<?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>123705</bug_id>
          
          <creation_ts>2013-11-03 09:11:11 -0800</creation_ts>
          <short_desc>[CSS Regions] Move cssom related tests into fast/regions/cssom</short_desc>
          <delta_ts>2013-11-05 07:28:19 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>AdobeTracked</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mihnea Ovidenie">mihnea</reporter>
          <assigned_to name="Mihnea Ovidenie">mihnea</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>946443</commentid>
    <comment_count>0</comment_count>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-11-03 09:11:11 -0800</bug_when>
    <thetext>Move tests related to http://dev.w3.org/csswg/css-regions/#cssom_view_and_css_regions into their own folder: fast/regions/cssom.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>946444</commentid>
    <comment_count>1</comment_count>
      <attachid>215869</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-11-03 09:15:16 -0800</bug_when>
    <thetext>Created attachment 215869
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>947147</commentid>
    <comment_count>2</comment_count>
      <attachid>216034</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-11-05 06:52:43 -0800</bug_when>
    <thetext>Created attachment 216034
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>947157</commentid>
    <comment_count>3</comment_count>
      <attachid>216034</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-05 07:28:18 -0800</bug_when>
    <thetext>Comment on attachment 216034
Patch for landing

Clearing flags on attachment: 216034

Committed r158668: &lt;http://trac.webkit.org/changeset/158668&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>947158</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-05 07:28:19 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215869</attachid>
            <date>2013-11-03 09:15:16 -0800</date>
            <delta_ts>2013-11-05 06:52:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>123705.patch</filename>
            <type>text/plain</type>
            <size>580074</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0Mjc5YzdjLi44ODc1OWUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTU0IEBACisyMDEzLTEx
LTAzICBNaWhuZWEgT3ZpZGVuaWUgIDxtaWhuZWFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1Mg
UmVnaW9uc10gTW92ZSBjc3NvbSByZWxhdGVkIHRlc3RzIGludG8gZmFzdC9yZWdpb25zL2Nzc29t
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjM3MDUK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNb3ZlIHRl
c3RzIHJlbGF0ZWQgdG8gaHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzLXJlZ2lvbnMvI2Nzc29t
X3ZpZXdfYW5kX2Nzc19yZWdpb25zIGludG8gdGhlaXIgb3duIGZvbGRlciBhbmQgYWRqdXN0IHBh
dGhzIGZvciByZXNvdXJjZXMgdXNlZCBpbiB0ZXN0cy4KKyAgICAgICAgVGhleSB0ZXN0IHRoZSBz
YW1lIGZ1bmN0aW9uYWxpdHk6IENTU1JlZ2lvbnMgYW5kIENTU09NLXZpZXcuCisKKyAgICAgICAg
KiBmYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1leHBlY3Rl
ZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdp
b24tb3ZlcnNldC1zdGF0ZS1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmct
ZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1l
bnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQu
dHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0
LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2ZS1s
ZXR0ZXItc3BhY2luZy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50
LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRl
LXZlcnRpY2FsLXJsLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20v
ZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXIt
c3BhY2luZy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0
ZXItc3BhY2luZy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Vs
ZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNw
YWNpbmcuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50
LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5n
Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJz
ZXQtc3RhdGUtdmVydGljYWwtcmwuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLmh0bWwuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUu
aHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lv
bi1vdmVyc2V0LXN0YXRlLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dl
ZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9t
IExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1j
b250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQtZXhwZWN0ZWQudHh0OiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5k
aW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZh
c3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1ob3Jp
em9udGFsLWJ0Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxv
d2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC5odG1sLgorICAg
ICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC12ZXJ0aWNhbC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtZXhw
ZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1i
b3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1ybC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50
LXJlY3QtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9j
c3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1ybC5odG1s
OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJv
dW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLXJsLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdp
b25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLmh0
bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQt
Ym91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lv
bnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1j
bGllbnQtcmVjdC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29u
dGVudC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0OiBSZW5hbWVk
IGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1i
b3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1s
OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LXRy
YW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9u
cy9jc3NvbS9mbG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0
ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1pbmxp
bmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1p
bmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sLgorICAgICAgICAqIGZhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFic29sdXRlLXBvcy1leHBlY3Rl
ZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1hYnNvbHV0ZS1wb3MtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFic29sdXRlLXBvcy5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
YWJzb2x1dGUtcG9zLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rlcy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5v
ZGVzLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVzLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVzLmh0bWwu
CisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlz
cGxheS1ub25lLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWRpc3BsYXktbm9uZS1leHBlY3RlZC50eHQuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxh
eS1ub25lLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5LW5vbmUuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lv
bnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1lbXB0eS1yZWdpb25zLWV4cGVjdGVkLnR4
dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLWVtcHR5LXJlZ2lvbnMtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9u
cy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMuaHRtbDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVt
cHR5LXJlZ2lvbnMuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1leHBlY3RlZC50eHQuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLWV4cGVj
dGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9u
LWZsb3ctcmFuZ2VzLWZpeGVkLXBvcy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdp
b25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhl
ZC1wb3MuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy1ob3Jpei1idC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC1leHBlY3RlZC50eHQu
CisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaG9y
aXotYnQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLWhvcml6LWJ0Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLW9ubHktZXhwZWN0ZWQudHh0OiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
aW5saW5lLW9ubHktZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS5o
dG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2Vz
LWlubGluZS1zdmctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy1leHBlY3RlZC50eHQuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5l
LXN2Zy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZy
b20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtdGV4dC12ZXJ0LWxyLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci1leHBl
Y3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtdGV4dC12ZXJ0LWxyLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0LXZlcnQtbHIuaHRtbC4KKyAgICAgICAg
KiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWw6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy10ZXh0Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtdmVydC1sci1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVjdGVkLnR4dC4K
KyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0
LWxyLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy12ZXJ0LWxyLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1ybC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJs
LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy12ZXJ0LXJsLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLmh0bWwuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy1ybC1y
Yi1sci1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13
cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0
bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
d3JpdGluZy1tb2Rlcy10Yi1ybC1sci1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRi
LXJsLWxyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLmh0bWw6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5n
LW1vZGVzLXRiLXJsLWxyLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtZXhwZWN0ZWQu
dHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50
LWhvcml6LWJ0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0LWV4cGVjdGVkLnR4dC4KKyAgICAg
ICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1idC5o
dG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5
LWNvbnRlbnQtaG9yaXotYnQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0
LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5
LWNvbnRlbnQtaG9yaXotdGIuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LXRiLmh0bWwuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLWV4cGVjdGVkLnR4
dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1j
b250ZW50LXBzZXVkby1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1wc2V1ZG8uaHRtbC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxy
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQt
cmVnaW9ucy1ieS1jb250ZW50LXZlcnQtbHItZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtbHIuaHRtbDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZl
cnQtbHIuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnkt
Y29udGVudC12ZXJ0LXJsLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0Lgor
ICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQt
cmwuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9u
cy1ieS1jb250ZW50LXZlcnQtcmwuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbnMtYnktY29udGVudC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3Jl
Z2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudDItZXhwZWN0ZWQudHh0OiBSZW5hbWVk
IGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQyLWV4
cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnkt
Y29udGVudDIuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQt
cmVnaW9ucy1ieS1jb250ZW50Mi5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9v
ZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25zLWV4cGVjdGVkLnR4dDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1p
bi1tdWx0aXBsZS1yZWdpb25zLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
Y3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWlu
LW11bHRpcGxlLXJlZ2lvbnMuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zm
c2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWFic29sdXRlLXN0aWNreS1maXhlZC1leHBlY3Rl
ZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1v
ZmZzZXRUb3AtaW4tcmVnaW9uLWFic29sdXRlLXN0aWNreS1maXhlZC1leHBlY3RlZC50eHQuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5
LWZpeGVkLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zm
c2V0VG9wLWluLXJlZ2lvbi1mbG9hdC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LWV4
cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZz
ZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1m
bG9hdC12ZXJ0LXJsLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20v
b2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwuaHRtbDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1y
ZWdpb24tZmxvYXQtdmVydC1ybC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9v
ZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQuaHRtbDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxv
YXQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRU
b3AtaW5saW5lcy1yZWdpb24taW4tZWxlbWVudC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdp
b24taW4tZWxlbWVudC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29t
L29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMtcmVnaW9uLWluLWVsZW1lbnQuaHRtbDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1p
bmxpbmVzLXJlZ2lvbi1pbi1lbGVtZW50Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL29mZnNldFBhcmVudC1ib2R5LWluLWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93
LXRocmVhZC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL29mZnNl
dFBhcmVudC1ib2R5LWluLWZsb3ctdGhyZWFkLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0UGFyZW50LWJvZHktaW4tZmxvdy10aHJlYWQuaHRtbC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0UGFyZW50LWluLWZsb3ctdGhyZWFkLWV4
cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQ
YXJlbnQtaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9u
cy9jc3NvbS9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQuaHRtbDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQuaHRtbC4K
KyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay1leHBlY3RlZC50eHQ6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay1leHBl
Y3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWstbmVz
dGVkLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9v
dmVyc2V0LWJyZWFrLW5lc3RlZC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL292ZXJzZXQtYnJlYWstbmVzdGVkLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay1uZXN0ZWQuaHRtbC4KKyAgICAgICAgKiBmYXN0
L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0OiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1z
aWJsaW5nLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNl
dC1icmVhay13aXRoLXNpYmxpbmcuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGluZy5odG1sLgorICAgICAgICAqIGZhc3Qv
cmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9u
cy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFzaC1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcmVnaW9uLXJhbmdlLWZvci1ib3gtY3Jhc2gt
ZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9yZWdpb24tcmFuZ2Ut
Zm9yLWJveC1jcmFzaC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3JlZ2lvbi1yYW5nZS1mb3ItYm94LWNyYXNoLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2gtZXhwZWN0ZWQudHh0OiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNv
bGxlY3Rpb24tY3Jhc2gtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLmh0bWw6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1jcmFz
aC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1j
b2xsZWN0aW9uLWVtcHR5LWdldHRlcnMtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0
dGVycy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1sOiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHkt
Z2V0dGVycy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi5o
dG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1m
bG93LWNvbGxlY3Rpb24uaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3ctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWFkZC10by1m
bG93LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3cuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy5odG1sLgor
ICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRv
LWhlaWdodC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0LgorICAg
ICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRvLWhl
aWdodC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LWF1dG8taGVpZ2h0Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNoLWV4cGVjdGVkLnR4dDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1j
cmFzaC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LWNyYXNoLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtY3Jhc2guaHRtbC4KKyAgICAgICAgKiBm
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtZXhwZWN0ZWQudHh0OiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9ucy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9ucy1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LW5vLXJlZ2lvbnMuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLmh0bWwuCisgICAgICAg
ICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1m
bGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxl
eGJveC1uby1vdmVyc2V0LWNoYW5nZS1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdp
b25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92
ZXJzZXQtY2hhbmdlLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtbm8tb3ZlcnNldC1jaGFu
Z2UuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
ZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0OiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4dC4KKyAgICAgICAg
KiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZs
ZXhib3gtb3ZlcnNldC1jaGFuZ2UuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1vdmVyc2V0
LWNoYW5nZS5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9t
LWRvbS1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWRv
bS5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1l
dmVudC1yZW1vdmUtZnJvbS1mbG93LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93
LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cu
aHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZl
bnQtdGFyZ2V0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC10YXJnZXQtZXhwZWN0ZWQudHh0LgorICAgICAg
ICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC10YXJnZXQuaHRt
bDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC10YXJnZXQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBl
Y3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LXRvLW51bGwuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC10by1udWxsLmh0bWwuCisgICAgICAgICogZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50Lmh0bWw6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQuaHRtbC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxv
dy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV4aXN0aW5nLWZsb3cuaHRtbDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1leGlz
dGluZy1mbG93Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1l
ZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHkt
cmVnaW9uLWluZGV4LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4Lmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1w
dHktcmVnaW9uLWluZGV4Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtp
dC1uYW1lZC1mbG93LWZsb3ctYWRkZWQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZsb3ctYWRkZWQtZXhwZWN0ZWQu
dHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93
LWFkZGVkLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1nZXQtY29udGVudC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQt
ZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1nZXQtY29udGVudC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LWdldC1jb250ZW50Lmh0bWwuCisgICAgICAgICogZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLWV4cGVjdGVkLnR4dDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1n
ZXQtcmVnaW9ucy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dl
YmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lv
bnMtcHNldWRvLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRv
Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdl
dC1yZWdpb25zLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
Y3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctaW52YWxpZC1uYW1lLWV4cGVjdGVkLnR4dDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlk
LW5hbWUtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUuaHRtbC4KKyAgICAgICAg
KiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBl
Y3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdp
b25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW1vZGlmaWVkLWZsb3cuaHRtbDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1m
bG93Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LW5hbWUtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LW5hbWUtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1uYW1lLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbmFtZS5odG1sLgorICAgICAg
ICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxv
dy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctbm9uLWV4aXN0aW5nLWZsb3ctZXhwZWN0ZWQudHh0LgorICAgICAgICAq
IGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxvdy5o
dG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1m
bG93LW5vbi1leGlzdGluZy1mbG93Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29t
L3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQtZXhwZWN0ZWQu
dHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1vdmVy
c2V0Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctb3ZlcnNldC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJr
aXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3ctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy1leHBl
Y3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LXJlbW92ZWQtZmxvdy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy5odG1sLgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1zYW1lLW9iamVjdC1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctc2Ft
ZS1vYmplY3QtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJr
aXQtbmFtZWQtZmxvdy1zYW1lLW9iamVjdC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUtb2JqZWN0Lmh0bWwuCisKIDIwMTMt
MTEtMDIgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIE9wdGlt
aXplIGJhc2VsaW5lczogY3NzMi4xCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzE2Y2I1ZAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50
LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDI4IEBACitUZXN0
cyBFbGVtZW50LndlYmtpdFJlZ2lvbk92ZXJzZXQgYXR0cmlidXRlCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworICAKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZW1w
dHkiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImVtcHR5IgorUEFTUyByZWdp
b25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJlbXB0eSIKK0Zsb3cgY29udGVudAorUEFTUyByZWdp
b25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lv
bl8yJykgaXMgImZpdCIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHki
CitBZGQgbW9yZSBjb250ZW50CitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImZp
dCIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZml0IgorUEFTUyByZWdpb25P
dmVyc2V0KCdyZWdpb25fMycpIGlzICJmaXQiCitBZGQgdmlzdWFsIG92ZXJmbG93CitQQVNTIHJl
Z2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImZpdCIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVn
aW9uXzInKSBpcyAiZml0IgorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJvdmVy
c2V0IgorRW1wdHkgY29udGVudAorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJl
bXB0eSIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZW1wdHkiCitQQVNTIHJl
Z2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgImVtcHR5IgorUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxl
dHRlci1zcGFjaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MmY1ZWQzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQt
cmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTEgQEAKK1Rlc3RzIEVsZW1lbnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRy
aWJ1dGUKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmVnaW9uXzEud2Vi
a2l0UmVnaW9uT3ZlcnNldCBpcyAiZml0IgorUEFTUyByZWdpb25fMi53ZWJraXRSZWdpb25PdmVy
c2V0IGlzICJlbXB0eSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxl
bWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3Rh
dGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44MDU5MjZiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVy
LXNwYWNpbmcuaHRtbApAQCAtMCwwICsxLDQ1IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+
CisjY29udGVudCB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7CisgICAgbGV0dGVy
LXNwYWNpbmc6IC0xcHg7CisgICAgZGlyZWN0aW9uOiBydGw7Cit9CisjcmVnaW9uXzEsICNyZWdp
b25fMnsKKyAgICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsKKyAgICBvdmVyc2V0OnZpc2li
bGU7CisgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgdmVydGljYWwtYWxpZ246dG9wOwor
ICAgIG1hcmdpbjoxMHB4OworfQorCisjcmVnaW9uXzEgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIw
MHB4OyB9CisjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyB9CisKKzwvc3R5
bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxoMSBpZD0iY29udGVudCI+TG9yZW0gaXBzdW08L2gxPgor
PGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorCis8
c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lvbk92ZXJz
ZXQgYXR0cmlidXRlIikKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgfQorICAgIHZhciByZWdpb25fMSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgIHZhciByZWdpb25fMiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgIHZhciBjb250ZW50ID0gIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJjb250ZW50Iik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25fMS53ZWJraXRSZWdpb25PdmVyc2V0IiwgImZpdCIpOworICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uXzIud2Via2l0UmVnaW9uT3ZlcnNldCIsICJlbXB0eSIpOworICAgIGRv
Y3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocmVnaW9uXzEpOworICAgIGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQocmVnaW9uXzIpOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoY29udGVu
dCk7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVy
dGljYWwtcmwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Vs
ZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcxNmNiNWQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1z
dGF0ZS12ZXJ0aWNhbC1ybC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyOCBAQAorVGVzdHMgRWxl
bWVudC53ZWJraXRSZWdpb25PdmVyc2V0IGF0dHJpYnV0ZQorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKyAgCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImVtcHR5Igor
UEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJlbXB0eSIKK1BBU1MgcmVnaW9uT3Zl
cnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHkiCitGbG93IGNvbnRlbnQKK1BBU1MgcmVnaW9uT3Zl
cnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicp
IGlzICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgImVtcHR5IgorQWRk
IG1vcmUgY29udGVudAorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJmaXQiCitQ
QVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImZpdCIKK1BBU1MgcmVnaW9uT3ZlcnNl
dCgncmVnaW9uXzMnKSBpcyAiZml0IgorQWRkIHZpc3VhbCBvdmVyZmxvdworUEFTUyByZWdpb25P
dmVyc2V0KCdyZWdpb25fMScpIGlzICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8y
JykgaXMgImZpdCIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAib3ZlcnNldCIK
K0VtcHR5IGNvbnRlbnQKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZW1wdHki
CitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImVtcHR5IgorUEFTUyByZWdpb25P
dmVyc2V0KCdyZWdpb25fMycpIGlzICJlbXB0eSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdh
dGl2ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2
ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYjFkMTRiNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLW5lZ2F0
aXZlLWxldHRlci1zcGFjaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUZXN0cyBF
bGVtZW50LndlYmtpdFJlZ2lvbm92ZXJzZXQgYXR0cmlidXRlCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIHJlZ2lvbl8xLndlYmtpdFJlZ2lvbk92ZXJzZXQgaXMgImZpdCIK
K1BBU1MgcmVnaW9uXzIud2Via2l0UmVnaW9uT3ZlcnNldCBpcyAiZW1wdHkiCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUt
dmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJs
LW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYTNhZTZjOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLW5lZ2F0
aXZlLWxldHRlci1zcGFjaW5nLmh0bWwKQEAgLTAsMCArMSw1MCBAQAorPGh0bWw+Cis8aGVhZD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPHN0eWxlPgoraHRtbCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJs
OworfQorI2NvbnRlbnQgeworICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgIGxl
dHRlci1zcGFjaW5nOiAtMXB4OworICAgIGRpcmVjdGlvbjogcnRsOworfQorI3JlZ2lvbl8xLCAj
cmVnaW9uXzJ7CisgICAgLXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7CisgICAgb3ZlcnNldDp2
aXNpYmxlOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRpY2FsLWFsaWduOnRv
cDsKKyAgICBtYXJnaW46MTBweDsKK30KKworI3JlZ2lvbl8xIHsgaGVpZ2h0OjExMHB4OyB3aWR0
aDoyMDBweDsgfQorI3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgfQorCis8
L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8aDEgaWQ9ImNvbnRlbnQiPkxvcmVtIGlwc3VtPC9o
MT4KKworPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2
PgorCis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lv
bm92ZXJzZXQgYXR0cmlidXRlIikKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgfQorICAgIHZhciByZWdpb25fMSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgIHZhciByZWdpb25fMiA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uXzEud2Via2l0UmVnaW9uT3ZlcnNldCIsICJmaXQiKTsKKyAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbl8yLndlYmtpdFJlZ2lvbk92ZXJzZXQiLCAiZW1wdHkiKTsK
KyAgICB2YXIgY29udGVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250ZW50Iik7Cisg
ICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb25fMSk7CisgICAgZG9jdW1lbnQuYm9k
eS5yZW1vdmVDaGlsZChyZWdpb25fMik7CisgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChj
b250ZW50KTsKKyAgIAorCis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0
LXN0YXRlLXZlcnRpY2FsLXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
ZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzOTk1YjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12
ZXJ0aWNhbC1ybC5odG1sCkBAIC0wLDAgKzEsMTA5IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c3R5
bGU+CitodG1sIHstd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7fQorYm9keSB7IGZv
bnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KKworI2FydGljbGUgeworICAgIC13ZWJraXQtZmxvdy1p
bnRvOiBhcnRpY2xlOworICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOworfQorCisjcmVnaW9u
XzEsICNyZWdpb25fMiwgI3JlZ2lvbl8zIHsKKyAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0
aWNsZTsKKyAgICBvdmVyZmxvdzp2aXNpYmxlOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwor
ICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKKyAgICBtYXJnaW46MTBweDsKK30KKworLmJsb2NrIHsK
KyAgIGRpc3BsYXk6YmxvY2s7Cit9CisKKyNyZWdpb25fMSB7IGhlaWdodDoxMTBweDsgd2lkdGg6
MjAwcHg7IGJvcmRlcjoxcHggc29saWQgI2EwYTBhMDsgfQorI3JlZ2lvbl8yIHsgaGVpZ2h0OjEx
MHB4OyB3aWR0aDoyMDBweDsgYm9yZGVyOjFweCBzb2xpZCBibGFjayB9CisjcmVnaW9uXzMgeyBo
ZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBib3JkZXI6MXB4IHNvbGlkICNhMGEwYTA7IH0KKwor
PC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3JpcHRpb24iIGNsYXNzPSJi
bG9jayI+PC9kaXY+Cis8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICA8ZGl2PgorICAgICAgICA8ZGl2
IGlkPSJjb250ZW50IiBzdHlsZT0id2lkdGg6IDM5NnB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVl
bjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rp
dj4KKzxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbl8zIj48L2Rpdj4K
KworPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KKworPHNjcmlwdD4KKyAg
ICBkZXNjcmlwdGlvbigiVGVzdHMgRWxlbWVudC53ZWJraXRSZWdpb25PdmVyc2V0IGF0dHJpYnV0
ZSIpCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworICAgIH0KKyAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0KGlkKSB7CisgICAg
ICAgIHZhciBlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpOworICAgICAgICByZXR1cm4g
ZS53ZWJraXRSZWdpb25PdmVyc2V0OworICAgIH0KKyAgICBmdW5jdGlvbiBmbG93Q29udGVudChm
bG93TmFtZSkgeworICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b25fMSIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAg
ICAgIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgci5z
dHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICByID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbl8zIik7CisgICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20g
PSBmbG93TmFtZTsKKyAgICB9CisgICAgZnVuY3Rpb24gYWRkVmlzdWFsT3ZlcmZsb3coKSB7Cisg
ICAgICAgIHZhciBjID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKyAgICAg
ICAgYy5zdHlsZS53ZWJraXRCb3hTaGFkb3c9Ii0zMHB4IDBweCBsaW1lIjsKKyAgICB9CisgICAg
ZnVuY3Rpb24gYWRkTW9yZUNvbnRlbnQoKSB7CisgICAgICAgIHZhciBjID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNvbnRlbnQiKTsKKyAgICAgICAgYy5zdHlsZS53aWR0aCA9IDU5NjsKKyAg
ICB9CisKKyAgICBmdW5jdGlvbiB0ZXN0KCkgeworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZW1wdHkiKTsKKyAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImVtcHR5Iik7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIs
ICJlbXB0eSIpOworCisgICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAgZmxv
d0NvbnRlbnQoImFydGljbGUiKTsKKworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZml0Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJmaXQiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgImVtcHR5Iik7
CisKKyAgICAgICAgZGVidWcoIkFkZCBtb3JlIGNvbnRlbnQiKTsKKyAgICAgICAgYWRkTW9yZUNv
bnRlbnQoKTsKKworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQo
J3JlZ2lvbl8xJykiLCAiZml0Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVn
aW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJmaXQiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgImZpdCIpOworCisgICAgICAgIGRl
YnVnKCJBZGQgdmlzdWFsIG92ZXJmbG93Iik7CisgICAgICAgIGFkZFZpc3VhbE92ZXJmbG93KCk7
CisKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25f
MScpIiwgImZpdCIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJvdmVyc2V0Iik7CisKKyAgICAgICAgZGVidWco
IkVtcHR5IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQoIm5vX2FydGljbGUiKTsKKwor
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJyki
LCAiZW1wdHkiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0
KCdyZWdpb25fMicpIiwgImVtcHR5Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJlbXB0eSIpOworICAgIH0KKworICAgIHRlc3Qo
KTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0
YXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTBiZDY4NgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJl
Z2lvbi1vdmVyc2V0LXN0YXRlLmh0bWwKQEAgLTAsMCArMSwxMDEgQEAKKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzxzdHlsZT4KKyNhcnRpY2xlIHsKKyAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsK
KyAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yLCAj
cmVnaW9uXzMgeworICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOworICAgIG92ZXJm
bG93OnZpc2libGU7CisgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgdmVydGljYWwtYWxp
Z246dG9wOworICAgIG1hcmdpbjoxMHB4OworfQorLmJsb2NrIHsKKyAgIGRpc3BsYXk6YmxvY2s7
Cit9CisjcmVnaW9uXzEgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyB9CisjcmVnaW9uXzIg
eyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyB9CisjcmVnaW9uXzMgeyBoZWlnaHQ6MTEwcHg7
IHdpZHRoOjIwMHB4OyB9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNj
cmlwdGlvbiIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KKzxkaXYgaWQ9ImFydGljbGUiPgorICAgIDxk
aXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIxNnB4OyBiYWNr
Z3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxkaXYg
aWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KKzxkaXYgaWQ9
InJlZ2lvbl8zIj48L2Rpdj4KKworPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rp
dj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGVzdHMgRWxlbWVudC53ZWJraXRSZWdp
b25PdmVyc2V0IGF0dHJpYnV0ZSIpCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIH0KKyAgICBmdW5jdGlvbiByZWdpb25P
dmVyc2V0KGlkKSB7CisgICAgICAgIHZhciBlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQp
OworICAgICAgICByZXR1cm4gZS53ZWJraXRSZWdpb25PdmVyc2V0OworICAgIH0KKyAgICBmdW5j
dGlvbiBmbG93Q29udGVudChmbG93TmFtZSkgeworICAgICAgICB2YXIgciA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9t
ID0gZmxvd05hbWU7CisgICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
XzIiKTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAg
ICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8zIik7CisgICAgICAgIHIuc3R5
bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICB9CisgICAgZnVuY3Rpb24gYWRkVmlz
dWFsT3ZlcmZsb3coKSB7CisgICAgICAgIHZhciBjID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUiKTsKKyAgICAgICAgYy5zdHlsZS53ZWJraXRCb3hTaGFkb3c9IjBweCAzMHB4IGxp
bWUiOworICAgIH0KKyAgICBmdW5jdGlvbiBhZGRNb3JlQ29udGVudCgpIHsKKyAgICAgICAgdmFy
IGMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgICAgICBjLnN0eWxl
LmhlaWdodCA9IDMyNjsKKyAgICB9CisKKyAgICBmdW5jdGlvbiB0ZXN0KCkgeworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZW1wdHki
KTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25f
MicpIiwgImVtcHR5Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3Zl
cnNldCgncmVnaW9uXzMnKSIsICJlbXB0eSIpOworCisgICAgICAgIGRlYnVnKCJGbG93IGNvbnRl
bnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKKworICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZml0Iik7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJm
aXQiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdp
b25fMycpIiwgImVtcHR5Iik7CisKKyAgICAgICAgZGVidWcoIkFkZCBtb3JlIGNvbnRlbnQiKTsK
KyAgICAgICAgYWRkTW9yZUNvbnRlbnQoKTsKKworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZml0Iik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJmaXQiKTsKKyAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgImZp
dCIpOworCisgICAgICAgIGRlYnVnKCJBZGQgdmlzdWFsIG92ZXJmbG93Iik7CisgICAgICAgIGFk
ZFZpc3VhbE92ZXJmbG93KCk7CisKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25PdmVyc2V0KCdyZWdpb25fMScpIiwgImZpdCIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7CisgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJvdmVyc2V0Iik7
CisKKyAgICAgICAgZGVidWcoIkVtcHR5IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQo
Im5vX2FydGljbGUiKTsKKworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92
ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZW1wdHkiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImVtcHR5Iik7CisgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJlbXB0eSIpOwor
ICAgIH0KKyAgICB0ZXN0KCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3Vu
ZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlZjIyZTkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRp
bmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1BBU1MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGlu
Zy1jbGllbnQtcmVjdC1ob3Jpem9udGFsLWJ0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1ob3Jp
em9udGFsLWJ0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li43ZWYyMmU5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1ob3Jp
em9udGFsLWJ0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNv
bnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3NWM3YTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50
LXJlY3QtaG9yaXpvbnRhbC1idC5odG1sCkBAIC0wLDAgKzEsNTUgQEAKKzwhRE9DVFlQRSBodG1s
PgorCis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Jlc291cmNlcy9yZWdpb24tc3R5
bGUuY3NzIj48L2xpbms+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0i
dXRmLTgiIHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisKKzxzdHlsZT4K
KyAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7IH0KKworICAg
IGJvZHkgeyBtYXJnaW46IDEwcHg7IH0KKworICAgICNyZWdpb24xIHsKKyAgICAgICAgcG9zaXRp
b246IGFic29sdXRlOworICAgICAgICBsZWZ0OiAxMDBweDsKKyAgICAgICAgdG9wOiAxMHB4Owor
ICAgICAgICB3aWR0aDogNTBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICB9CisKKyAg
ICAjcmVnaW9uMiB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgdG9wOiAx
MHB4OworICAgICAgICBsZWZ0OiAyMDBweDsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAg
IGhlaWdodDogNTBweDsKKyAgICAgICAgcGFkZGluZzogMTBweCAyMHB4IDMwcHggNDBweDsKKyAg
ICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgfQorICAgIAorICAgIC5maW5pc2hl
ZCAjcmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24yIHsKKyAgICAgICAgZGlzcGxheTogbm9uZTsK
KyAgICB9Cis8L3N0eWxlPgorCis8ZGl2IGlkPSJmbG93IiBjbGFzcz0iZmxvd0FydGljbGUiPgor
ICAgIDxkaXYgaWQ9ImdyZWVuIiBjbGFzcz0iZ3JlZW5Cb3giPjwvZGl2PgorICAgIDxkaXYgaWQ9
ImJsdWUiIGNsYXNzPSJibHVlQm94Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJvcmFuZ2UiIGNsYXNz
PSJvcmFuZ2VCb3giPjwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJy
ZWdpb25BcnRpY2xlIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdpb25BcnRp
Y2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgdmFyIGV4cGVjdGVkQm91bmRpbmdS
ZWN0cyA9IHsKKyAgICAgICAgZ3JlZW46IFs2MCwgMTAwLCAxMTAsIDE1MCwgNTAsIDUwXSwKKyAg
ICAgICAgYmx1ZTogWzEwLCAxMDAsIDYwLCAxNTAsIDUwLCA1MF0sCisgICAgICAgIG9yYW5nZTog
WzIxLCAyNDEsIDcxLCAyOTEsIDUwLCA1MF0KKyAgICB9OworICAgIAorICAgIGlmICh0ZXN0Qm91
bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMpKQorICAgICAgICBkb2N1bWVudC5ib2R5
LmNsYXNzTmFtZSA9ICJmaW5pc2hlZCI7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVj
dC12ZXJ0aWNhbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Zmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlZjIyZTkKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91
bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1BB
U1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29u
dGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1ybC1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50
LXJlY3QtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjdlZjIyZTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwt
cmwtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVj
dC12ZXJ0aWNhbC1ybC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dl
ZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLXJsLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjkxZGY2MgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGll
bnQtcmVjdC12ZXJ0aWNhbC1ybC5odG1sCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRSBodG1s
PgorCis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Jlc291cmNlcy9yZWdpb24tc3R5
bGUuY3NzIj48L2xpbms+Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0i
dXRmLTgiIHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisKKzxzdHlsZT4K
KyAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyB9CisKKyAgICBi
b2R5IHsgbWFyZ2luOiAxMHB4OyB9CisKKyAgICAjcmVnaW9uMSB7CisgICAgICAgIHBvc2l0aW9u
OiBhYnNvbHV0ZTsKKyAgICAgICAgbGVmdDogMTAwcHg7CisgICAgICAgIHdpZHRoOiAxMDBweDsK
KyAgICAgICAgaGVpZ2h0OiA1MHB4OworICAgIH0KKworICAgICNyZWdpb24yIHsKKyAgICAgICAg
cG9zaXRpb246IGFic29sdXRlOworICAgICAgICBsZWZ0OiAyMDBweDsKKyAgICAgICAgd2lkdGg6
IDUwcHg7CisgICAgICAgIGhlaWdodDogNTBweDsKKyAgICB9CisgICAgCisgICAgLmZpbmlzaGVk
ICNyZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIgeworICAgICAgICBkaXNwbGF5OiBub25lOwor
ICAgIH0KKzwvc3R5bGU+CisKKzxkaXYgaWQ9ImZsb3ciIGNsYXNzPSJmbG93QXJ0aWNsZSI+Cisg
ICAgPGRpdiBpZD0iZ3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+CisgICAgPGRpdiBpZD0i
Ymx1ZSIgY2xhc3M9ImJsdWVCb3giPjwvZGl2PgorICAgIDxkaXYgaWQ9Im9yYW5nZSIgY2xhc3M9
Im9yYW5nZUJveCI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJl
Z2lvbkFydGljbGUiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkFydGlj
bGUiPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICB2YXIgZXhwZWN0ZWRCb3VuZGluZ1Jl
Y3RzID0geworICAgICAgICBncmVlbjogWzEwLCAxNTAsIDYwLCAyMDAsIDUwLCA1MF0sCisgICAg
ICAgIGJsdWU6IFsxMCwgMTAwLCA2MCwgMTUwLCA1MCwgNTBdLAorICAgICAgICBvcmFuZ2U6IFsx
MCwgMjAwLCA2MCwgMjUwLCA1MCwgNTBdCisgICAgfTsKKyAgICAKKyAgICBpZiAodGVzdEJvdW5k
aW5nUmVjdHMoZXhwZWN0ZWRCb3VuZGluZ1JlY3RzKSkKKyAgICAgICAgZG9jdW1lbnQuYm9keS5j
bGFzc05hbWUgPSAiZmluaXNoZWQiOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3Qt
dmVydGljYWwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29u
dGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjhmNDFlZTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3Qt
dmVydGljYWwuaHRtbApAQCAtMCwwICsxLDUzIEBACis8IURPQ1RZUEUgaHRtbD4KKworPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9yZXNvdXJjZXMvcmVnaW9uLXN0eWxlLmNzcyI+PC9s
aW5rPgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04IiBzcmM9
Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgaHRtbCB7
IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgfQorCisgICAgYm9keSB7IG1hcmdp
bjogMTBweDsgfQorCisgICAgI3JlZ2lvbjEgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7
CisgICAgICAgIGxlZnQ6IDEwMHB4OworICAgICAgICB3aWR0aDogMTAwcHg7CisgICAgICAgIGhl
aWdodDogNTBweDsKKyAgICB9CisKKyAgICAjcmVnaW9uMiB7CisgICAgICAgIHBvc2l0aW9uOiBh
YnNvbHV0ZTsKKyAgICAgICAgbGVmdDogMjQwcHg7CisgICAgICAgIHdpZHRoOiA2MHB4OworICAg
ICAgICBoZWlnaHQ6IDcwcHg7CisgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAzMHB4IDQwcHg7
CisgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgICAKKyAgICAuZmlu
aXNoZWQgI3JlZ2lvbjEsIC5maW5pc2hlZCAjcmVnaW9uMiB7CisgICAgICAgIGRpc3BsYXk6IG5v
bmU7CisgICAgfQorPC9zdHlsZT4KKworPGRpdiBpZD0iZmxvdyIgY2xhc3M9ImZsb3dBcnRpY2xl
Ij4KKyAgICA8ZGl2IGlkPSJncmVlbiIgY2xhc3M9ImdyZWVuQm94Ij48L2Rpdj4KKyAgICA8ZGl2
IGlkPSJibHVlIiBjbGFzcz0iYmx1ZUJveCI+PC9kaXY+CisgICAgPGRpdiBpZD0ib3JhbmdlIiBj
bGFzcz0ib3JhbmdlQm94Ij48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGlkPSJyZWdpb24xIiBjbGFz
cz0icmVnaW9uQXJ0aWNsZSI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0icmVnaW9u
QXJ0aWNsZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIHZhciBleHBlY3RlZEJvdW5k
aW5nUmVjdHMgPSB7CisgICAgICAgIGdyZWVuOiBbMTAsIDEwMCwgNjAsIDE1MCwgNTAsIDUwXSwK
KyAgICAgICAgYmx1ZTogWzEwLCAxNTAsIDYwLCAyMDAsIDUwLCA1MF0sCisgICAgICAgIG9yYW5n
ZTogWzIxLCAyODEsIDcxLCAzMzEsIDUwLCA1MF0KKyAgICB9OworICAgIAorICAgIGlmICh0ZXN0
Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMpKQorICAgICAgICBkb2N1bWVudC5i
b2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hlZCI7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50
LWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uMzIxNjM4ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sCkBAIC0wLDAg
KzEsNjAgQEAKKzwhRE9DVFlQRSBodG1sPgorCis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL3Jlc291cmNlcy9yZWdpb24tc3R5bGUuY3NzIj48L2xpbms+Cis8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiIHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5q
cyI+PC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAgICBib2R5IHsgbWFyZ2luOiAxMHB4OyB9CisKKyAg
ICAuYm94IHsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgIGhlaWdodDogNTBweDsKKyAg
ICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgfQorCisgICAgI3JlZ2lvbjEgeworICAgICAgICBwb3Np
dGlvbjogYWJzb2x1dGU7CisgICAgICAgIHBhZGRpbmc6IDEwcHg7CisgICAgfQorCisgICAgI3Jl
Z2lvbjIgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDEwMHB4
OworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgfQorCisgICAgI3JlZ2lv
bjMgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDIwMHB4Owor
ICAgICAgICBwYWRkaW5nOiAxMHB4OworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7
CisgICAgfQorICAgIAorICAgIC5maW5pc2hlZCAjcmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24y
LCAuZmluaXNoZWQgI3JlZ2lvbjMgeworICAgICAgICBkaXNwbGF5OiBub25lOworICAgIH0KKzwv
c3R5bGU+CisKKzxkaXYgY2xhc3M9ImZsb3dBcnRpY2xlIj4KKyAgICA8ZGl2IGlkPSJncmVlbiIg
Y2xhc3M9ImdyZWVuQm94Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJibHVlIiBjbGFzcz0iYmx1ZUJv
eCI+PC9kaXY+CisgICAgPGRpdiBpZD0ib3JhbmdlIiBjbGFzcz0ib3JhbmdlQm94Ij48L2Rpdj4K
KzwvZGl2PgorCis8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSBib3giPjwv
ZGl2PgorPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkFydGljbGUgYm94Ij48L2Rpdj4K
KzxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJyZWdpb25BcnRpY2xlIGJveCI+PC9kaXY+CisKKzxz
Y3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKKyAgICAKKyAgICB2YXIgZXhwZWN0ZWRCb3VuZGluZ1JlY3RzID0geworICAg
ICAgICBncmVlbjogWzIwLCAyMCwgNzAsIDcwLCA1MCwgNTBdLAorICAgICAgICBibHVlOiBbMjAs
IDExMCwgNzAsIDE2MCwgNTAsIDUwXSwKKyAgICAgICAgb3JhbmdlOiBbMzAsIDIyMCwgODAsIDI3
MCwgNTAsIDUwXQorICAgIH07CisgICAgCisgICAgaWYgKHRlc3RCb3VuZGluZ1JlY3RzKGV4cGVj
dGVkQm91bmRpbmdSZWN0cykpCisgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lID0gImZp
bmlzaGVkIjsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQt
dHJhbnNmb3JtLWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZWYyMmU5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGlu
Zy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9y
bS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUwZThmYmEKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtdHJhbnNm
b3JtLWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwKQEAgLTAsMCArMSw0NSBAQAorPCFET0NUWVBF
IGh0bWw+CisKKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vcmVzb3VyY2VzL3JlZ2lv
bi1zdHlsZS5jc3MiPjwvbGluaz4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFy
c2V0PSJ1dGYtOCIgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKworPHN0
eWxlPgorICAgIGJvZHkgeyBtYXJnaW46IDEwcHg7IH0KKworICAgIC5ib3ggeworICAgICAgICB3
aWR0aDogNTBweDsKKyAgICAgICAgaGVpZ2h0OiA1MHB4OworICAgICAgICBmbG9hdDogbGVmdDsK
KyAgICB9CisKKyAgICAjcmVnaW9uMSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBw
eCwgMTBweCk7IH0KKyAgICAjcmVnaW9uMiB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUo
MzBweCwgMjBweCkgcm90YXRlKDQ1ZGVnKTsgfQorICAgICNyZWdpb24zIHsgLXdlYmtpdC10cmFu
c2Zvcm06IHRyYW5zbGF0ZSg3MHB4LCAzMHB4KSBzY2FsZSgyLDIpOyB9CisgICAgCisgICAgLmZp
bmlzaGVkICNyZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIsIC5maW5pc2hlZCAjcmVnaW9uMyB7
CisgICAgICAgIGRpc3BsYXk6IG5vbmU7CisgICAgfQorPC9zdHlsZT4KKworPGRpdiBjbGFzcz0i
Zmxvd0FydGljbGUiPgorICAgIDxkaXYgaWQ9ImdyZWVuIiBjbGFzcz0iZ3JlZW5Cb3giPjwvZGl2
PgorICAgIDxkaXYgaWQ9ImJsdWUiIGNsYXNzPSJibHVlQm94Ij48L2Rpdj4KKyAgICA8ZGl2IGlk
PSJvcmFuZ2UiIGNsYXNzPSJvcmFuZ2VCb3giPjwvZGl2PgorPC9kaXY+Cis8ZGl2IGlkPSJyZWdp
b24xIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSBib3giPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uMiIg
Y2xhc3M9InJlZ2lvbkFydGljbGUgYm94Ij48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNz
PSJyZWdpb25BcnRpY2xlIGJveCI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgCisgICAgdmFyIGV4cGVjdGVkQm91bmRpbmdSZWN0cyA9
IHsKKyAgICAgICAgZ3JlZW46IFsyMCwgMjAsIDcwLCA3MCwgNTAsIDUwXSwKKyAgICAgICAgYmx1
ZTogWzIwLCA4MCwgOTAsIDE1MCwgNzAsIDcwXSwKKyAgICAgICAgb3JhbmdlOiBbMTUsIDE1NSwg
MTE1LCAyNTUsIDEwMCwgMTAwXQorICAgIH07CisgICAgCisgICAgaWYgKHRlc3RCb3VuZGluZ1Jl
Y3RzKGV4cGVjdGVkQm91bmRpbmdSZWN0cywgMSkpCisgICAgICAgIGRvY3VtZW50LmJvZHkuY2xh
c3NOYW1lID0gImZpbmlzaGVkIjsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2Vk
LWlubGluZS1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMTdiNjQ0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3Vu
ZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUZXN0IGZvciBX
ZWJLaXQgQnVnIDExNzI5MCBbQ1NTUmVnaW9uc10gZ2V0Qm91bmRpbmdDbGllbnRSZWN0IHdyb25n
IGZvciBpbmxpbmUgY29udGVudCBub2RlcworCitPbiBzdWNjZXNzIHlvdSBzaG91bGQgc2VlIFBB
U1MgYmVsb3cuCisKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9mbG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRp
bmctY2xpZW50LXJlY3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5h
OTU2Yzk1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sCkBAIC0wLDAg
KzEsNjggQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCIgc3JjPSIuLi9yZXNv
dXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAg
Ym9keSB7IG1hcmdpbjogMTBweDsgfQorCisgICAgICAgICAgICAjZmxvdzEgeworICAgICAgICAg
ICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworICAgICAgICAgICAgICAgIGZvbnQ6IDIw
cHgvMSBBaGVtOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAjcmVnaW9uMSB7CisgICAg
ICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7CisgICAgICAgICAgICAgICAgYm9y
ZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDsKKyAg
ICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgICAgICAgICAgICAgcG9zaXRpb246IGFi
c29sdXRlOworICAgICAgICAgICAgICAgIHRvcDogMTUwcHg7CisgICAgICAgICAgICAgICAgbGVm
dDogMTAwcHg7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICNmbG93MiB7CisgICAgICAg
ICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3cyOworICAgICAgICAgICAgICAgIGZvbnQ6
IDIwcHgvMSBBaGVtOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAjcmVnaW9uMiB7Cisg
ICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOworICAgICAgICAgICAgICAg
IGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKKyAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7
CisgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4OworICAgICAgICAgICAgICAgIHBvc2l0aW9u
OiBhYnNvbHV0ZTsKKyAgICAgICAgICAgICAgICB0b3A6IDI1MHB4OworICAgICAgICAgICAgICAg
IGxlZnQ6IDEwMHB4OworICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xh
dGUoMTBweCwgMTBweCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5maW5pc2hlZCAj
cmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24yLCAuZmluaXNoZWQgI2Zsb3cxLCAuZmluaXNoZWQg
I2Zsb3cyIHsKKyAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOworICAgICAgICAgICAgfQor
ICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPHA+VGVz
dCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
NzI5MCI+V2ViS2l0IEJ1ZyAxMTcyOTA8L2E+IFtDU1NSZWdpb25zXSBnZXRCb3VuZGluZ0NsaWVu
dFJlY3Qgd3JvbmcgZm9yIGlubGluZSBjb250ZW50IG5vZGVzPC9wPgorICAgICAgICA8cD5PbiBz
dWNjZXNzIHlvdSBzaG91bGQgc2VlIFBBU1MgIGJlbG93LjwvcD4KKworICAgICAgICA8c3BhbiBp
ZD0iZmxvdzEiPmFhYWFhPC9zcGFuPgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24xIj48L2Rpdj4K
KworICAgICAgICA8c3BhbiBpZD0iZmxvdzIiPmFhYWFhPC9zcGFuPgorICAgICAgICA8ZGl2IGlk
PSJyZWdpb24yIj48L2Rpdj4KKworICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgICAvLyBbdG9wLCBsZWZ0LCBib3R0b20sIHJpZ2h0LCB3aWR0aCwgaGVp
Z2h0XQorICAgICAgICAgICAgdmFyIGV4cGVjdGVkQm91bmRpbmdSZWN0cyA9IHsKKyAgICAgICAg
ICAgICAgICBmbG93MTogWzE2MCwgMTEwLCAxODAsIDIxMCwgMTAwLCAyMF0sCisgICAgICAgICAg
ICAgICAgZmxvdzI6IFsyNzAsIDEyMCwgMjkwLCAyMjAsIDEwMCwgMjBdCisgICAgICAgICAgICB9
OworCisgICAgICAgICAgICBpZiAodGVzdEJvdW5kaW5nUmVjdHMoZXhwZWN0ZWRCb3VuZGluZ1Jl
Y3RzKSkKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hl
ZCI7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFi
c29sdXRlLXBvcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNvbHV0ZS1wb3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNlOGNhYTQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNv
bHV0ZS1wb3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorW0NTU1JlZ2lvbnNdIFRlc3Qg
Zm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgYWJzb2x1dGUgcG9zaXRpb25lZCBl
bGVtZW50cworUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCx3
cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsd3JhcHBlciwxXQorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFic29sdXRl
LXBvcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtYWJzb2x1dGUtcG9zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uYTNjMGRkMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFic29sdXRlLXBvcy5odG1sCkBAIC0wLDAg
KzEsMzQgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAgIC5ib3JkZXIg
eyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAjYm94MSB7IC13ZWJraXQtZmxvdy1pbnRv
OiBmbG93OyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDUwcHg7IGJh
Y2tncm91bmQtY29sb3I6IGdyZWVuOyB0b3A6IDI1cHg7IGxlZnQ6IDI1cHg7IH0KKyAgICAjcmVn
aW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAw
cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBweDsgbGVmdDogNTBweDsgfQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAg
ICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gxIj48L2Rpdj48L2Rpdj4KKyAgICA8ZGl2
IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgZGVidWcoIltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246
OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGFic29sdXRlIHBvc2l0aW9uZWQgZWxlbWVudHMiKTsK
KyAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7Cisg
ICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hv
dWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0
UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAid3JhcHBlciIsIDFdKTsKKworZnVu
Y3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKK30KKworICAgIGhpZGVS
ZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtY29udGVudC1ub2Rlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVzLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMGE2NzllCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtY29udGVudC1ub2Rlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorW0NTU1JlZ2lv
bnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgd2l0aCBtdWx0aXBsZSBj
b250ZW50IG5vZGVzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworVGV4dCBub2RlLgor
RmxvdyB0ZXN0CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3JhcHBlciww
LCN0ZXh0LDRdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsI3RleHQsNF0KK1BBU1MgcmFuZ2UyLmxl
bmd0aCBpcyAyCitQQVNTIEFycmF5IFsjdGV4dCw1LHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gWyN0
ZXh0LDUsd3JhcHBlciwxXQorUEFTUyBBcnJheSBbd3JhcHBlcjIsMCx3cmFwcGVyMiwxXSBpcyBl
cXVhbCB0byBbd3JhcHBlcjIsMCx3cmFwcGVyMiwxXQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWNvbnRlbnQtbm9kZXMuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWNv
bnRlbnQtbm9kZXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYzQy
NzQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dl
dC1yZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rlcy5odG1sCkBAIC0wLDAgKzEsNTIgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxl
PgorICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgI3dyYXBwZXIgeyBm
b250LXNpemU6IDUwcHg7IH0KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9
CisgICAgLmZsb3cgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7fQorICAgIC5ibHVlIHtiYWNr
Z3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDUwcHg7fQorICAg
ICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdo
dDogNzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9CisgICAgI3JlZ2lvbjIgeyAtd2Via2l0
LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiAxMjBweDsgbGVmdDogMjBw
eDsgdG9wOiAzMDBweDt9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgIDxkaXYgaWQ9ImRl
c2NyaXB0aW9uIj48L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBjbGFzcz0iZmxvdyI+
VGV4dCBub2RlLjwvZGl2PjwvZGl2PgorICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVy
Ij48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxk
aXYgaWQ9IndyYXBwZXIyIj48ZGl2IGNsYXNzPSJmbG93IGJsdWUiPjwvZGl2PjwvZGl2PgorICA8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRS
ZWdpb25GbG93UmFuZ2VzIHdpdGggbXVsdGlwbGUgY29udGVudCBub2RlcyIpOworICAgIHZhciBy
ZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKKyAgICB2YXIgcmVn
aW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7CisKKworICAgIGRlYnVn
KCJGbG93IHRlc3QiKTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dS
YW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7CisgICAg
Y29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICIjdGV4
dCIsIDRdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMo
KTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMik7CisgICAgY29tcGFy
ZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAid3JhcHBlciIsIDFd
KTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAxKSwgWyJ3cmFwcGVyMiIs
IDAsICJ3cmFwcGVyMiIsIDFdKTsKKworCitmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkg
eworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworfQorCisgICAgaGlkZVJlZ2lvbnNBbmRGbG93cygp
OworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5LW5vbmUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jZjMxYmM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitbQ1NTUmVnaW9uc10gSW1wbGVtZW50IFJlZ2lv
bjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgZWxlbWVudHMgd2l0aCBkaXNwbGF5Om5vbmUgKFJh
bmdlIHNob3VsZCBub3QgYnJlYWsgcmFuZ2VzIGF0IGRpc3BsYXk6bm9uZSkKKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisxCiszCis1CitGbG93IHRlc3QKK1BBU1MgcmFuZ2UxLmxlbmd0
aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbd3Jh
cHBlciwwLHdyYXBwZXIsMV0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5LW5vbmUuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWRpc3BsYXktbm9uZS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1Nzg4YjgKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy1kaXNwbGF5LW5vbmUuaHRtbApAQCAtMCwwICsxLDQyIEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBib2R5IHsgZm9u
dC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAyMHB4OyB9
CisgICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgIC5mbG93IHsgLXdl
YmtpdC1mbG93LWludG86IGZsb3cxO30KKyAgICAjd3JhcHBlciBwIHttYXJnaW46IDA7IHBhZGRp
bmc6IDA7fQorICAgIC5ub25lIHtkaXNwbGF5OiBub25lO30KKyAgICAjcmVnaW9uMSB7IC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDcwcHg7IGxlZnQ6IDIw
cHg7IHRvcDogMjUwcHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJk
ZXNjcmlwdGlvbiI+PC9kaXY+CisgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgY2xhc3M9ImZsb3ci
PjxwPjE8L3A+PHAgY2xhc3M9Im5vbmUiPjI8L3A+PHA+MzwvcD48cCBjbGFzcz0ibm9uZSI+NDwv
cD48cD41PC9wPjwvZGl2PjwvZGl2PgorICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVy
Ij48L2Rpdj4KKyAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKworICAgIGRlc2NyaXB0aW9uKCJbQ1NTUmVnaW9uc10gSW1wbGVtZW50
IFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgZWxlbWVudHMgd2l0aCBkaXNwbGF5Om5v
bmUgKFJhbmdlIHNob3VsZCBub3QgYnJlYWsgcmFuZ2VzIGF0IGRpc3BsYXk6bm9uZSkiKTsKKyAg
ICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7CisKKyAg
ICBkZWJ1ZygiRmxvdyB0ZXN0Iik7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdp
b25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEp
OworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAw
LCAid3JhcHBlciIsIDFdKTsKKworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKK30KKworICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHktcmVnaW9ucy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1lbXB0
eS1yZWdpb25zLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4yNGFjNDQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHktcmVnaW9ucy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMyBAQAorW0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZs
b3dSYW5nZXMgZm9yIGVtcHR5IHJlZ2lvbnMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CitGbG93IHRlc3QKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAwCitQQVNTIHJhbmdlMi5sZW5ndGgg
aXMgMQorUEFTUyBBcnJheSBbd3JhcHBlciwwLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gW3dyYXBw
ZXIsMCx3cmFwcGVyLDFdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMAorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lv
bnMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLWVtcHR5LXJlZ2lvbnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi4zZjUxY2IxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHktcmVnaW9ucy5odG1sCkBAIC0wLDAg
KzEsNTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0
PgorPHN0eWxlPgorICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgI3dy
YXBwZXIgeyBmb250LXNpemU6IDUwcHg7IH0KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29s
aWQgcmVkOyB9CisgICAgI2JveCB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTsgaGVpZ2h0OiA1
MHB4OyBtYXJnaW4tdG9wOiA0MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlfQorICAgICNyZWdp
b24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogMzBw
eDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9CisgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6
IDMwMHB4O30KKyAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6
IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorPC9zdHlsZT4K
KzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+CisgIDxkaXYg
aWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveCI+PC9kaXY+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lv
bjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9y
ZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Cisg
IDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisKKyAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246Omdl
dFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGVtcHR5IHJlZ2lvbnMiKTsKKyAgICB2YXIgcmVnaW9uMSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7CisgICAgdmFyIHJlZ2lvbjIgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOworICAgIHZhciByZWdpb24zID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKTsKKworICAgIGRlYnVnKCJGbG93IHRlc3Qi
KTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7CisgICAgcmFuZ2UyID0gcmVn
aW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIs
IDApLCBbIndyYXBwZXIiLCAwLCAid3JhcHBlciIsIDFdKTsKKyAgICByYW5nZTMgPSByZWdpb24z
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTMubGVuZ3RoIiwgMCk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNp
YmlsaXR5ID0gImhpZGRlbiI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMi
KS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cit9CisKKyAgaGlkZVJlZ2lvbnNBbmRGbG93
cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQwMmIw
NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQyIEBACitbQ1NTUmVn
aW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzLgorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKK1RleHQgbm9kZS4KK0VtcHR5IHJlZ2lvbnMKK1BBU1MgcmFuZ2Ux
Lmxlbmd0aCBpcyAwCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMAorUEFTUyByYW5nZTMubGVuZ3Ro
IGlzIDAKK0Zsb3cgYXJ0aWNsZQorUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkg
W3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQorUEFTUyBy
YW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSxib3gxLDFdIGlzIGVxdWFsIHRv
IFtib3gxLDEsYm94MSwxXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2Jv
eDEsMSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFtib3gxLDEsd3JhcHBlciwxXQorQWRkIHRleHQg
bm9kZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91cyBibG9jaykKK1BBU1MgcmFuZ2UxLmxl
bmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3Jh
cHBlciwwLGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gx
LDEsYm94MSwyXSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0
aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDIsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwy
LHdyYXBwZXIsMV0KK0luY3JlYXNlIGZvbnQgc2l6ZQorUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEK
K1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94
MSwxXQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0
XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0ZXh0LDRdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQor
UEFTUyBBcnJheSBbI3RleHQsNSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBw
ZXIsMV0KK01ha2UgY2hpbGQgYSBjb250ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJl
Z2lvbjEgdG8gcmVnaW9uMworUEFTUyByYW5nZTEubGVuZ3RoIGlzIDIKK1BBU1MgQXJyYXkgW3dy
YXBwZXIsMCxib3gxLDBdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwwXQorUEFTUyBBcnJh
eSBbYm94MSwxLCN0ZXh0LDRdIGlzIGVxdWFsIHRvIFtib3gxLDEsI3RleHQsNF0KK1BBU1MgcmFu
Z2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFsjdGV4dCw1LGJveDEsMl0gaXMgZXF1YWwgdG8g
WyN0ZXh0LDUsYm94MSwyXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2Jv
eDEsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFtib3gxLDAsYm94MSwxXQorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWZpeGVkLXBvcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1maXhlZC1wb3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjg3ZWFlY2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhlZC1wb3MtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNyBAQAorW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVn
aW9uRmxvd1JhbmdlcyBmb3IgZml4ZWQgcG9zaXRpb25lZCBlbGVtZW50cworUEFTUyByYW5nZTEu
bGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCx3cmFwcGVyLDFdIGlzIGVxdWFsIHRv
IFt3cmFwcGVyLDAsd3JhcHBlciwxXQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWZpeGVkLXBvcy5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2FiOGJiMQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLWZpeGVkLXBvcy5odG1sCkBAIC0wLDAgKzEsMzMgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2Ny
aXB0PgorPHN0eWxlPgorICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAg
ICAjYm94MSB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OyBwb3NpdGlvbjogZml4ZWQ7IHdpZHRo
OiA1MHB4OyBoZWlnaHQ6IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyB0b3A6IDI1cHg7
IGxlZnQ6IDI1cHg7IH0KKyAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3
aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBw
eDsgbGVmdDogNTBweDsgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgaWQ9
ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gx
Ij48L2Rpdj48L2Rpdj4KKyAgICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rp
dj4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVidWcoIltDU1NS
ZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGZpeGVkIHBv
c2l0aW9uZWQgZWxlbWVudHMiKTsKKyAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24xIik7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25G
bG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwor
ICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAi
d3JhcHBlciIsIDFdKTsKKworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlk
ZGVuIjsKK30KKyAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWhvcml6LWJ0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWhvcml6LWJ0LWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MWRhOGVkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtaG9yaXotYnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDIgQEAKK1tDU1NS
ZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGhvcml6b250
YWwtYnQgbW9kZQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1RleHQgbm9kZS4KK0Vt
cHR5IHJlZ2lvbnMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAwCitQQVNTIHJhbmdlMi5sZW5ndGgg
aXMgMAorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDAKK0Zsb3cgYXJ0aWNsZQorUEFTUyByYW5nZTEu
bGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3
cmFwcGVyLDAsYm94MSwxXQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2Jv
eDEsMSxib3gxLDFdIGlzIGVxdWFsIHRvIFtib3gxLDEsYm94MSwxXQorUEFTUyByYW5nZTMubGVu
Z3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFtib3gx
LDEsd3JhcHBlciwxXQorQWRkIHRleHQgbm9kZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91
cyBibG9jaykKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAs
Ym94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0
aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDEsYm94MSwyXSBpcyBlcXVhbCB0byBbYm94MSwxLGJv
eDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDIsd3JhcHBl
ciwxXSBpcyBlcXVhbCB0byBbYm94MSwyLHdyYXBwZXIsMV0KK0luY3JlYXNlIGZvbnQgc2l6ZQor
UEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlz
IGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BB
U1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0ZXh0LDRdCitQ
QVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbI3RleHQsNSx3cmFwcGVyLDFdIGlz
IGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBwZXIsMV0KK01ha2UgY2hpbGQgYSBjb250ZW50IG5vZGUs
IHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMworUEFTUyByYW5nZTEubGVu
Z3RoIGlzIDIKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDBdIGlzIGVxdWFsIHRvIFt3cmFw
cGVyLDAsYm94MSwwXQorUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0LDRdIGlzIGVxdWFsIHRvIFti
b3gxLDEsI3RleHQsNF0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFsjdGV4
dCw1LGJveDEsMl0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsYm94MSwyXQorUEFTUyByYW5nZTMubGVu
Z3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFtib3gxLDAs
Ym94MSwxXQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9u
LWZsb3ctcmFuZ2VzLWhvcml6LWJ0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmExODU5ZGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC5odG1s
CkBAIC0wLDAgKzEsMTA3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpz
Ij48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhv
cml6b250YWwtYnQ7IH0KKyAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAg
ICN3cmFwcGVyIHsgZm9udC1zaXplOiAzMHB4OyB9CisgICAgLmJvcmRlciB7IGJvcmRlcjogMXB4
IHNvbGlkIHJlZDsgfQorICAgICNhcnRpY2xlIHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVl
OyBoZWlnaHQ6IDEzNXB4OyBwYWRkaW5nOiAxMHB4O30KKyAgICAjYm94MSB7IGJhY2tncm91bmQt
Y29sb3I6IGxpZ2h0Z3JlZW47IGhlaWdodDogMTEwcHg7IHBhZGRpbmc6IDEwcHg7fQorICAgICNi
b3gyIHsgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOyBoZWlnaHQ6IDEwcHg7IHBhZGRpbmc6IDVw
eDt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBw
eDsgaGVpZ2h0OiA3MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4O30KKyAgICAjcmVnaW9uMiB7
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxl
ZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorICAgICNyZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsgbGVmdDogMjBweDsgdG9wOiAzNTBw
eDt9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48
L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYXJ0aWNsZSI+PGRpdiBpZD0iYm94
MSI+PGRpdiBpZD0iYm94MiI+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+CisgIDxkaXYgaWQ9InJl
Z2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0i
Ym9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+
CisgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisKKyAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6
Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgaG9yaXpvbnRhbC1idCBtb2RlIik7CisgICAgdmFyIHJl
Z2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworICAgIHZhciByZWdp
b24yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKyAgICB2YXIgcmVnaW9u
MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIik7CisKKyAgICBkZWJ1ZygiRW1w
dHkgcmVnaW9ucyIpOworICAgIHZhciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7Cisg
ICAgdmFyIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAwKTsKKyAgICB2YXIgcmFuZ2UzID0g
cmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UzLmxlbmd0aCIsIDApOworCisgICAgZGVidWcoIkZsb3cgYXJ0aWNsZSIpOworICAg
IHZhciBhcnRpY2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKyAgICBh
cnRpY2xlLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3cxIjsKKyAgICByYW5nZTEgPSByZWdp
b24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
YW5nZTEubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwg
MCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Vi
a2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5s
ZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJi
b3gxIiwgMSwgImJveDEiLCAxXSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdp
b25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEp
OworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAxLCAi
d3JhcHBlciIsIDFdKTsKKworICAgIGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIgKGNy
ZWF0ZXMgYW5vbnltb3VzIGJsb2NrKSIpOworICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNy
ZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUuIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImJveDEiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZSk7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJr
aXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxl
bmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndy
YXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwg
MSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEs
ICJib3gxIiwgMl0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIsICJ3cmFwcGVy
IiwgMV0pOworCisgICAgZGVidWcoIkluY3JlYXNlIGZvbnQgc2l6ZSIpOworICAgIHZhciB3cmFw
cGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndyYXBwZXIiKTsKKyAgICB3cmFwcGVyLnN0
eWxlLmZvbnRTaXplID0gIjQwcHgiOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVn
aW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAx
KTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwg
MCwgImJveDEiLCAxXSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOworICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiI3RleHQi
LCA0XSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVB
cnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7
CisKKyAgICBkZWJ1ZygiTWFrZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3Zl
IGZyb20gcmVnaW9uMSB0byByZWdpb24zIik7CisgICAgdmFyIGJveDIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnYm94MicpOworICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxv
dzEiOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwor
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKKyAgICBjb21wYXJlQXJy
YXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAwXSk7Cisg
ICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIsIDEsICIjdGV4
dCIsIDRdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMo
KTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFy
ZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94MSIsIDJdKTsK
KyAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhn
ZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiYm94MSIsIDAsICJib3gxIiwgMV0pOworCitmdW5jdGlv
biBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgeworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRk
ZW4iOworfQorCisgICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25s
eS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWNhMzRj
NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEy
IEBACitbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZv
ciBpbmxpbmUgZWxlbWVudHMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitGbG93IHRl
c3QKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsd3JhcHBl
ciwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLHdyYXBwZXIsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0
aCBpcyAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtaW5saW5lLW9ubHkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5Lmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjE1YzM0ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1v
bmx5Lmh0bWwKQEAgLTAsMCArMSw0NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hl
bHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25v
c3BhY2U7IH0KKyAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMjBweDsgfQorICAgIC5ib3JkZXIg
eyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAjaW5saW5lT25seSB7IC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93MTsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlOyBoZWlnaHQ6IDEzNXB4
OyBwYWRkaW5nOiAxMHB4O30KKyAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93
MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDcwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQor
ICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhl
aWdodDogNjBweDsgbGVmdDogMjBweDsgdG9wOiAzMDBweDt9Cis8L3N0eWxlPgorPC9oZWFkPgor
PGJvZHk+CisgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBl
ciI+PHNwYW4gaWQ9ImlubGluZU9ubHkiPjwvc3Bhbj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9u
MSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3Jk
ZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZv
ciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGlubGluZSBlbGVtZW50cyIpOworICAg
IHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKKyAgICB2
YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7CisKKworICAg
IGRlYnVnKCJGbG93IHRlc3QiKTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7
CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAs
ICJ3cmFwcGVyIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAwKTsKKwor
ZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsK
K30KKworICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtc3ZnLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NWVjYjg2Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtaW5saW5lLXN2Zy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitUZXN0
IHRoYXQgZ2V0dGluZyB0aGUgcmVnaW9uIHJhbmdlcyB3aGVuIHRoZSBmbG93aW5nIGNvbnRlbnQg
aGFzIGlubGluZSBzdmcgZG9lcyBub3QgY3Jhc2guCisKK09uIHN1Y2Nlc3MgeW91IHNob3VsZCBz
ZWUgUEFTUyBiZWxvdy4KKworUEFTUworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmcuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGlu
ZS1zdmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lODRhMTljCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy5odG1sCkBAIC0wLDAgKzEsMjggQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAg
ICNhcnRpY2xlIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KKyAgICAgICAgICAgICNyZWdp
b24geyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4
OyB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAg
PHA+VGVzdCB0aGF0IGdldHRpbmcgdGhlIHJlZ2lvbiByYW5nZXMgd2hlbiB0aGUgZmxvd2luZyBj
b250ZW50IGhhcyBpbmxpbmUgc3ZnIGRvZXMgbm90IGNyYXNoLjwvcD4KKyAgICAgICAgPHA+T24g
c3VjY2VzcyB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LjwvcD4KKyAgICAgICAgPHAgaWQ9Im91
dHB1dCI+PC9wPgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICAgICAgICAgIDxzdmcg
eG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiPgorICAgICAg
ICAgICAgICAgIDxyZWN0IHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBzdHlsZT0iZmlsbDpyZ2Io
MCwyNTUsMCkiLz4KKyAgICAgICAgICAgIDwvc3ZnPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAg
PGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHZh
ciByYW5nZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS53ZWJraXRHZXRSZWdp
b25GbG93UmFuZ2VzKCk7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0
cHV0IikuaW5uZXJIVE1MID0gIlBBU1MiOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljMDU5M2UKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy10ZXh0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitbQ1NTUmVnaW9uc10gVGVzdCBm
b3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzLiBUZXh0IGJyZWFrcyBpbiB0d28gcmVnaW9u
cworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1RleHQgbm9kZS4KK0Zsb3cgdGVzdAor
UEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCwjdGV4dCw0XSBp
cyBlcXVhbCB0byBbd3JhcHBlciwwLCN0ZXh0LDRdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQor
UEFTUyBBcnJheSBbI3RleHQsNSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBw
ZXIsMV0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy10ZXh0LXZlcnQtbHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0LWxyLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjEzYjhjCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtdGV4dC12ZXJ0LWxyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitbQ1NT
UmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGluIHZlcnRpY2Fs
LXJsIG1vZGUuIFRleHQgYnJlYWtzIGludG8gdHdvIHJlZ2lvbnMKKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCitUZXh0IG5vZGUuCitGbG93IHRlc3QKK1BBU1MgcmFuZ2UxLmxlbmd0aCBp
cyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsI3RleHQsNF0gaXMgZXF1YWwgdG8gW3dyYXBwZXIs
MCwjdGV4dCw0XQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgWyN0ZXh0LDUs
d3JhcHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3cmFwcGVyLDFdCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0
LWxyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy10ZXh0LXZlcnQtbHIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi4zZDQ0N2E0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0LWxyLmh0bWwKQEAgLTAsMCAr
MSw0OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8c3R5bGU+CisgICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsg
fQorICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgI3dyYXBwZXIgeyBm
b250LXNpemU6IDUwcHg7IH0KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9
CisgICAgI2JveCB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTt9CisgICAgI3JlZ2lvbjEgeyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0
OiAyMHB4OyB0b3A6IDI1MHB4O30KKyAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBm
bG93MTsgd2lkdGg6IDYwcHg7IGhlaWdodDogMjUwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7
fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+CisgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveCI+VGV4dCBub2RlLjwvZGl2Pjwv
ZGl2PgorICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBp
ZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBkZXNjcmlwdGlv
bigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBpbiB2
ZXJ0aWNhbC1ybCBtb2RlLiBUZXh0IGJyZWFrcyBpbnRvIHR3byByZWdpb25zIik7CisgICAgdmFy
IHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworICAgIHZhciBy
ZWdpb24yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKworCisgICAgZGVi
dWcoIkZsb3cgdGVzdCIpOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIiN0
ZXh0IiwgNF0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwg
MV0pOworCitmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgeworICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJo
aWRkZW4iOworfQorCisgICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODlhMTU2MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQuaHRt
bApAQCAtMCwwICsxLDQ3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpz
Ij48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsg
fQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiA1MHB4OyB9CisgICAgLmJvcmRlciB7IGJvcmRl
cjogMXB4IHNvbGlkIHJlZDsgfQorICAgICNib3ggeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7
fQorICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7
IGhlaWdodDogNzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9CisgICAgI3JlZ2lvbjIgeyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4OyBsZWZ0
OiAyMHB4OyB0b3A6IDMwMHB4O30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPGRpdiBp
ZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gi
PlRleHQgbm9kZS48L2Rpdj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRl
ciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJl
Z2lvbkZsb3dSYW5nZXMuIFRleHQgYnJlYWtzIGluIHR3byByZWdpb25zIik7CisgICAgdmFyIHJl
Z2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworICAgIHZhciByZWdp
b24yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKworICAgIGRlYnVnKCJG
bG93IHRlc3QiKTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5n
ZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7CisgICAgY29t
cGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICIjdGV4dCIs
IDRdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsK
KyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFy
cmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAid3JhcHBlciIsIDFdKTsK
KworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsKK30KKworICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtbHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1sci1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTUzNjk2YgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLXZlcnQtbHItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDIgQEAKK1tDU1NSZWdpb25z
XSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIHZlcnRpY2FsLWxyIG1v
ZGUKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitUZXh0IG5vZGUuCitFbXB0eSByZWdp
b25zCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMAorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDAKK1BB
U1MgcmFuZ2UzLmxlbmd0aCBpcyAwCitGbG93IGFydGljbGUKK1BBU1MgcmFuZ2UxLmxlbmd0aCBp
cyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciww
LGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDEsYm94
MSwxXSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMV0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
CitQQVNTIEFycmF5IFtib3gxLDEsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwxLHdyYXBw
ZXIsMV0KK0FkZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2sp
CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0g
aXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQor
UEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJdCitQ
QVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwyLHdyYXBwZXIsMV0gaXMg
ZXF1YWwgdG8gW2JveDEsMix3cmFwcGVyLDFdCitJbmNyZWFzZSBmb250IHNpemUKK1BBU1MgcmFu
Z2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0
byBbd3JhcHBlciwwLGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5
IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQorUEFTUyByYW5n
ZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0
byBbI3RleHQsNSx3cmFwcGVyLDFdCitNYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3
aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAy
CitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwwXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJv
eDEsMF0KK1BBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0
ZXh0LDRdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbI3RleHQsNSxib3gx
LDJdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LGJveDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
CitQQVNTIEFycmF5IFtib3gxLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwwLGJveDEsMV0K
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy12ZXJ0LWxyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uMjk0ZjYwNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtbHIuaHRtbApAQCAtMCwwICsx
LDEwNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8c3R5bGU+CisgICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsg
fQorICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgI3dyYXBwZXIgeyBm
b250LXNpemU6IDMwcHg7IH0KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9
CisgICAgI2FydGljbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IHdpZHRoOiAxMzVw
eDsgcGFkZGluZzogMTBweDt9CisgICAgI2JveDEgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdy
ZWVuOyB3aWR0aDogMTEwcHg7IHBhZGRpbmc6IDEwcHg7fQorICAgICNib3gyIHsgYmFja2dyb3Vu
ZC1jb2xvcjogb3JhbmdlOyB3aWR0aDogMTBweDsgcGFkZGluZzogNXB4O30KKyAgICAjcmVnaW9u
MSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDcwcHg7IGhlaWdodDogMjUwcHg7
IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQorICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZy
b206IGZsb3cxOyB3aWR0aDogNjBweDsgaGVpZ2h0OiAyNTBweDsgbGVmdDogMjBweDsgdG9wOiAz
MDBweDt9CisgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA2
MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KKzwvc3R5bGU+Cis8
L2hlYWQ+Cis8Ym9keT4KKyAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorICA8ZGl2IGlk
PSJ3cmFwcGVyIj48ZGl2IGlkPSJhcnRpY2xlIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJib3gy
Ij48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJv
cmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2Pgor
ICA8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRl
c2NyaXB0aW9uKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFu
Z2VzIGZvciB2ZXJ0aWNhbC1sciBtb2RlIik7CisgICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworICAgIHZhciByZWdpb24yID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKyAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24zIik7CisKKyAgICBkZWJ1ZygiRW1wdHkgcmVnaW9ucyIpOworICAg
IHZhciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7CisgICAgdmFyIHJhbmdlMiA9IHJl
Z2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMi5sZW5ndGgiLCAwKTsKKyAgICB2YXIgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIs
IDApOworCisgICAgZGVidWcoIkZsb3cgYXJ0aWNsZSIpOworICAgIHZhciBhcnRpY2xlID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKyAgICBhcnRpY2xlLnN0eWxlLndlYmtp
dEZsb3dJbnRvID0gImZsb3cxIjsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7
CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAs
ICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAx
XSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Cisg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJh
eXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAxLCAid3JhcHBlciIsIDFdKTsKKwor
ICAgIGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJs
b2NrKSIpOworICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0
IG5vZGUuIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJveDEiKS5hcHBlbmRDaGls
ZCh0ZXh0Tm9kZSk7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFu
Z2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNv
bXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIs
IDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsK
KyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFy
cmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMl0pOworICAg
IHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJh
bmdlQXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIsICJ3cmFwcGVyIiwgMV0pOworCisgICAgZGVi
dWcoIkluY3JlYXNlIGZvbnQgc2l6ZSIpOworICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIndyYXBwZXIiKTsKKyAgICB3cmFwcGVyLnN0eWxlLmZvbnRTaXplID0gIjQw
cHgiOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwor
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJy
YXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Cisg
ICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hv
dWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0
UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7CisgICAgcmFuZ2Uz
ID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVh
dGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChy
YW5nZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1ZygiTWFr
ZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byBy
ZWdpb24zIik7CisgICAgdmFyIGJveDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYm94Micp
OworICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOworICAgIHJhbmdlMSA9
IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFu
Z2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAwXSk7CisgICAgY29tcGFyZUFycmF5cyhn
ZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIsIDEsICIjdGV4dCIsIDRdKTsKKyAgICByYW5n
ZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94MSIsIDJdKTsKKyAgICByYW5nZTMgPSByZWdp
b24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
YW5nZTMubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywg
MCksIFsiYm94MSIsIDAsICJib3gxIiwgMV0pOworCitmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZs
b3dzKCkgeworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24y
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworfQorCisgICAgaGlk
ZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy12ZXJ0LXJsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtcmwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1MmM4YTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJs
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQyIEBACitbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVn
aW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciB2ZXJ0aWNhbC1ybCBtb2RlCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworVGV4dCBub2RlLgorRW1wdHkgcmVnaW9ucworUEFTUyByYW5n
ZTEubGVuZ3RoIGlzIDAKK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAwCitQQVNTIHJhbmdlMy5sZW5n
dGggaXMgMAorRmxvdyBhcnRpY2xlCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJh
eSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNT
IHJhbmdlMi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMV0gaXMgZXF1YWwg
dG8gW2JveDEsMSxib3gxLDFdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBb
Ym94MSwxLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gW2JveDEsMSx3cmFwcGVyLDFdCitBZGQgdGV4
dCBub2RlIHRvIHJlZ2lvbjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJsb2NrKQorUEFTUyByYW5nZTEu
bGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3
cmFwcGVyLDAsYm94MSwxXQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2Jv
eDEsMSxib3gxLDJdIGlzIGVxdWFsIHRvIFtib3gxLDEsYm94MSwyXQorUEFTUyByYW5nZTMubGVu
Z3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMix3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFtib3gx
LDIsd3JhcHBlciwxXQorSW5jcmVhc2UgZm9udCBzaXplCitQQVNTIHJhbmdlMS5sZW5ndGggaXMg
MQorUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxi
b3gxLDFdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0
LDRdIGlzIGVxdWFsIHRvIFtib3gxLDEsI3RleHQsNF0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
CitQQVNTIEFycmF5IFsjdGV4dCw1LHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsd3Jh
cHBlciwxXQorTWFrZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20g
cmVnaW9uMSB0byByZWdpb24zCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMgorUEFTUyBBcnJheSBb
d3JhcHBlciwwLGJveDEsMF0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDBdCitQQVNTIEFy
cmF5IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQorUEFTUyBy
YW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgWyN0ZXh0LDUsYm94MSwyXSBpcyBlcXVhbCB0
byBbI3RleHQsNSxib3gxLDJdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBb
Ym94MSwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW2JveDEsMCxib3gxLDFdCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1ybC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtdmVydC1ybC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkxOGRi
N2QKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLmh0bWwKQEAgLTAsMCArMSwxMDggQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAg
IGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7IH0KKyAgICBib2R5IHsg
Zm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAzMHB4
OyB9CisgICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgICNhcnRpY2xl
IHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlOyB3aWR0aDogMTM1cHg7IHBhZGRpbmc6IDEw
cHg7fQorICAgICNib3gxIHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmVlbjsgd2lkdGg6IDEx
MHB4OyBwYWRkaW5nOiAxMHB4O30KKyAgICAjYm94MiB7IGJhY2tncm91bmQtY29sb3I6IG9yYW5n
ZTsgd2lkdGg6IDEwcHg7IHBhZGRpbmc6IDVweDt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZs
b3ctZnJvbTogZmxvdzE7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0
b3A6IDI1MHB4O30KKyAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lk
dGg6IDYwcHg7IGhlaWdodDogMjUwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorICAgICNy
ZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogNjBweDsgaGVpZ2h0OiAy
NTBweDsgbGVmdDogMjBweDsgdG9wOiAzNTBweDt9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+
CisgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBlciI+PGRp
diBpZD0iYXJ0aWNsZSI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MiI+PC9kaXY+PC9kaXY+
PC9kaXY+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2Pgor
ICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVn
aW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgor
PHNjcmlwdD4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBkZXNjcmlwdGlvbigiW0NT
U1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgdmVydGlj
YWwtcmwgbW9kZSIpOworICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbjEiKTsKKyAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb24yIik7CisgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVn
aW9uMyIpOworCisgICAgZGVidWcoIkVtcHR5IHJlZ2lvbnMiKTsKKyAgICB2YXIgcmFuZ2UxID0g
cmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UxLmxlbmd0aCIsIDApOworICAgIHZhciByYW5nZTIgPSByZWdpb24yLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3Ro
IiwgMCk7CisgICAgdmFyIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAwKTsKKworICAgIGRl
YnVnKCJGbG93IGFydGljbGUiKTsKKyAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJhcnRpY2xlIik7CisgICAgYXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9ICJm
bG93MSI7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVB
cnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsK
KyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhn
ZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMV0pOworICAgIHJhbmdl
MyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQo
cmFuZ2UzLCAwKSwgWyJib3gxIiwgMSwgIndyYXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1ZygiQWRk
IHRleHQgbm9kZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91cyBibG9jaykiKTsKKyAgICB2
YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiIpOworICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJib3gxIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOwor
ICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdl
dFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7CisgICAgcmFu
Z2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZh
bHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VB
dChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsKKyAgICByYW5nZTMgPSByZWdp
b24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
YW5nZTMubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywg
MCksICBbImJveDEiLCAyLCAid3JhcHBlciIsIDFdKTsKKworICAgIGRlYnVnKCJJbmNyZWFzZSBm
b250IHNpemUiKTsKKyAgICB2YXIgd3JhcHBlciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3
cmFwcGVyIik7CisgICAgd3JhcHBlci5zdHlsZS5mb250U2l6ZSA9ICI0MHB4IjsKKyAgICByYW5n
ZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJl
Z2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2Uy
LCAwKSwgWyJib3gxIiwgMSwgIiN0ZXh0IiwgNF0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Vi
a2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5s
ZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyIj
dGV4dCIsIDUsICJ3cmFwcGVyIiwgMV0pOworCisgICAgZGVidWcoIk1ha2UgY2hpbGQgYSBjb250
ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMyIpOworICAg
IHZhciBib3gyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JveDInKTsKKyAgICBib3gyLnN0
eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3cxIjsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtp
dEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVu
Z3RoIiwgMik7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3Jh
cHBlciIsIDAsICJib3gxIiwgMF0pOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTEsIDEpLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53
ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2Uy
Lmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBb
IiN0ZXh0IiwgNSwgImJveDEiLCAyXSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIs
IDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAw
LCAiYm94MSIsIDFdKTsKKworCitmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgeworICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJo
aWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24z
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworfQorCitoaWRlUmVnaW9uc0FuZEZsb3dz
KCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9k
ZXMtcmwtcmItbHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy1ybC1yYi1sci1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQwNjlmOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLXdyaXRpbmctbW9kZXMtcmwtcmItbHItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUg
QEAKK1tDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9y
IG1peGVkIHZlcnRpY2FsIG1vZGVzCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMgorUEFTUyBBcnJh
eSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNT
IEFycmF5IFtib3gzLDEsYm94MywyXSBpcyBlcXVhbCB0byBbYm94MywxLGJveDMsMl0KK1BBU1Mg
cmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDEsYm94MSwyXSBpcyBlcXVhbCB0
byBbYm94MSwxLGJveDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFti
b3gxLDIsYm94MywxXSBpcyBlcXVhbCB0byBbYm94MSwyLGJveDMsMV0KK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorSG9yaXpvbnRhbCBUQgorWAorVmVy
dGljYWwgTFJIb3Jpem9udGFsIEJUCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMtcmwtcmItbHIu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLXdyaXRpbmctbW9kZXMtcmwtcmItbHIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi5jNGE4NTE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy1ybC1yYi1s
ci5odG1sCkBAIC0wLDAgKzEsNTggQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxl
PgorICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmwgO30KKyAgICBi
b2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXpl
OiAzMHB4OyB9CisgICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgICNi
b3gxIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyB9
CisgICAgI2JveDExIHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmVlbjsgd2lkdGg6IDMwcHg7
IG1hcmdpbi1yaWdodDogNzBweDt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTog
Zmxvdzsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDQwMHB4OyAgfQorICAgICNyZWdpb24yIHsgLXdl
YmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiA0MDBweDsgIH0KKyAg
ICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjAwcHg7IGhlaWdo
dDogNDAwcHg7ICB9CisgICAgI2JveDIgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRh
bC10YjsgYmFja2dyb3VuZC1jb2xvcjogZ3JleTsgd2lkdGg6IDE1MHB4OyBoZWlnaHQ6IDQwMHB4
O30KKyAgICAjYm94MjIgeyBoZWlnaHQ6IDMwcHg7IHdpZHRoOiAzMHB4OyBiYWNrZ3JvdW5kLWNv
bG9yOiB3aGl0ZTsgfQorICAgICNib3gzIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2Fs
LWxyOyAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlOyB3aWR0aDogMTUwcHg7IGhlaWdodDog
NDAwcHg7fQorICAgICNib3g0IHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7
IGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsgaGVpZ2h0OiA2MHB4OyB3aWR0aDogMjAwcHg7IHBv
c2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBweDsgbGVmdDogMjBweDt9Cis8L3N0eWxlPgorPC9o
ZWFkPgorPGJvZHk+CisgICAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgorICAgIDwhLS1k
aXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveDEiPjxkaXYgaWQ9ImJveDExIj48L2Rpdj48ZGl2
IGlkPSJib3gyIj5WZXJ0IFJMPC9kaXY+PGRpdiBpZD0iYm94MyI+VmVydCBMUjwvZGl2PjxkaXYg
aWQ9ImJveDQiPkhvcml6b250YWwgQlQ8L2Rpdj48L2Rpdi0tPgorCisgICAgPGRpdiBpZD0id3Jh
cHBlciI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MTEiPjwvZGl2PjxkaXYgaWQ9ImJveDIi
Pkhvcml6b250YWwgVEI8ZGl2IGlkPSJib3gyMiI+WDwvZGl2PjwvZGl2PjxkaXYgaWQ9ImJveDMi
PlZlcnRpY2FsIExSPGRpdiBpZD0iYm94NCI+SG9yaXpvbnRhbCBCVDwvZGl2PjwvZGl2PjwvZGl2
PjwvZGl2PgorICAgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICAg
IDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICAgIDxkaXYgaWQ9InJl
Z2lvbjMiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisKKyAgICBkZWJ1ZygiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVn
aW9uRmxvd1JhbmdlcyBmb3IgbWl4ZWQgdmVydGljYWwgbW9kZXMiKTsKKyAgICByZWdpb24xID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKKyAgICByZWdpb24yID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKyAgICByZWdpb24zID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbjMiKTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwg
Mik7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIs
IDAsICJib3gxIiwgMV0pOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDEp
LCBbImJveDMiLCAxLCAiYm94MyIsIDJdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3Ro
IiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIs
IDEsICJib3gxIiwgMl0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMiwgImJveDMi
LCAxXSk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cisg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0g
ImhpZGRlbiI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52
aXNpYmlsaXR5ID0gImhpZGRlbiI7Cit9CisgICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJs
LWxyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMtdGItcmwtbHItZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIzZTU5ZTIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13
cml0aW5nLW1vZGVzLXRiLXJsLWxyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitbQ1NT
UmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBtaXhlZCB2
ZXJ0aWNhbCBtb2RlcworUEFTUyByYW5nZTEubGVuZ3RoIGlzIDIKK1BBU1MgQXJyYXkgW3dyYXBw
ZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQorUEFTUyBBcnJheSBb
Ym94MywxLGJveDMsMl0gaXMgZXF1YWwgdG8gW2JveDMsMSxib3gzLDJdCitQQVNTIHJhbmdlMi5s
ZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEs
MSxib3gxLDJdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwyLGJv
eDMsMV0gaXMgZXF1YWwgdG8gW2JveDEsMixib3gzLDFdCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK1ZlcnRpY2FsIFJMCitYCitWZXJ0aWNhbCBMUlkK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1y
bC1sci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ0YTgzNzQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLmh0bWwKQEAgLTAsMCArMSw1NyBA
QAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgYm9keSB7IGZvbnQtZmFt
aWx5OiBtb25vc3BhY2U7IH0KKyAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQorICAg
IC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAjYm94MSB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgfQorICAgICNib3gxMSB7
IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47IGhlaWdodDogMzBweDsgbWFyZ2luLXRvcDog
NzBweDt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDQw
MHB4OyBoZWlnaHQ6IDIwMHB4OyAgfQorICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3c7IHdpZHRoOiA0MDBweDsgaGVpZ2h0OiAyMDBweDsgIH0KKyAgICAjcmVnaW9uMyB7IC13
ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogNDAwcHg7IGhlaWdodDogMjAwcHg7ICB9Cisg
ICAgI2JveDIgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7IGJhY2tncm91bmQt
Y29sb3I6IGdyZXk7IGhlaWdodDogMTUwcHg7IHdpZHRoOiA0MDBweDt9CisgICAgI2JveDIyIHsg
aGVpZ2h0OiAzMHB4OyB3aWR0aDogMzBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH0KKyAg
ICAjYm94MyB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgYmFja2dyb3VuZC1j
b2xvcjogbGlnaHRibHVlOyB3aWR0aDogNDAwcHg7IGhlaWdodDogMTUwcHg7fQorICAgICNib3g0
IHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7IGJhY2tncm91bmQtY29sb3I6
IHllbGxvdzsgaGVpZ2h0OiA2MHB4OyB3aWR0aDogNjBweDsgcG9zaXRpb246IGFic29sdXRlOyB0
b3A6IDIwcHg7IGxlZnQ6IDIwcHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxk
aXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgICA8IS0tZGl2IGlkPSJ3cmFwcGVyIj48ZGl2
IGlkPSJib3gxIj48ZGl2IGlkPSJib3gxMSI+PC9kaXY+PGRpdiBpZD0iYm94MiI+VmVydCBSTDwv
ZGl2PjxkaXYgaWQ9ImJveDMiPlZlcnQgTFI8L2Rpdj48ZGl2IGlkPSJib3g0Ij5Ib3Jpem9udGFs
IEJUPC9kaXY+PC9kaXYtLT4KKworICAgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveDEi
PjxkaXYgaWQ9ImJveDExIj48L2Rpdj48ZGl2IGlkPSJib3gyIj5WZXJ0aWNhbCBSTDxkaXYgaWQ9
ImJveDIyIj5YPC9kaXY+PC9kaXY+PGRpdiBpZD0iYm94MyI+VmVydGljYWwgTFI8ZGl2IGlkPSJi
b3g0Ij5ZPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+CisgICAgPGRpdiBpZD0icmVnaW9uMSIgY2xh
c3M9ImJvcmRlciI+PC9kaXY+CisgICAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+
PC9kaXY+CisgICAgPGRpdiBpZD0icmVnaW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Cis8c2Ny
aXB0PgorICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10g
VGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBtaXhlZCB2ZXJ0aWNhbCBt
b2RlcyIpOworICAgIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIp
OworICAgIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOworICAg
IHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpOworICAgIHJhbmdl
MSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQo
cmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7CisgICAgY29tcGFyZUFycmF5
cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MyIsIDEsICJib3gzIiwgMl0pOworICAgIHJh
bmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAyXSk7CisgICAgcmFuZ2UzID0gcmVn
aW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMs
IDApLCBbImJveDEiLCAyLCAiYm94MyIsIDFdKTsKKworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRG
bG93cygpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
MiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKK30KKyAgICBoaWRl
UmVnaW9uc0FuZEZsb3dzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlN2Q3ZGMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy5odG1sCkBAIC0wLDAgKzEsMTA2IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBib2R5IHsgZm9u
dC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAzMHB4OyB9
CisgICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgICNhcnRpY2xlIHsg
YmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlOyBoZWlnaHQ6IDEzNXB4OyBwYWRkaW5nOiAxMHB4
O30KKyAgICAjYm94MSB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47IGhlaWdodDogMTEw
cHg7IHBhZGRpbmc6IDEwcHg7fQorICAgICNib3gyIHsgYmFja2dyb3VuZC1jb2xvcjogb3Jhbmdl
OyBoZWlnaHQ6IDEwcHg7IHBhZGRpbmc6IDVweDt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZs
b3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA3MHB4OyBsZWZ0OiAyMHB4OyB0
b3A6IDI1MHB4O30KKyAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lk
dGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorICAgICNy
ZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDog
NjBweDsgbGVmdDogMjBweDsgdG9wOiAzNTBweDt9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+
CisgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBlciI+PGRp
diBpZD0iYXJ0aWNsZSI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MiI+PC9kaXY+PC9kaXY+
PC9kaXY+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2Pgor
ICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVn
aW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgor
PHNjcmlwdD4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBkZXNjcmlwdGlvbigiW0NT
U1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1Jhbmdlcy4iKTsKKyAgICB2
YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7CisgICAgdmFy
IHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOworICAgIHZhciBy
ZWdpb24zID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKTsKKworICAgIGRlYnVn
KCJFbXB0eSByZWdpb25zIik7CisgICAgdmFyIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVn
aW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAw
KTsKKyAgICB2YXIgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDApOworICAgIHZhciByYW5n
ZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMCk7CisKKyAgICBkZWJ1ZygiRmxvdyBhcnRpY2xlIik7
CisgICAgdmFyIGFydGljbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwor
ICAgIGFydGljbGUuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOworICAgIHJhbmdlMSA9
IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFu
Z2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7CisgICAgcmFuZ2UyID0gcmVnaW9u
Mi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFu
Z2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDAp
LCBbImJveDEiLCAxLCAiYm94MSIsIDFdKTsKKyAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3Ro
IiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiYm94MSIs
IDEsICJ3cmFwcGVyIiwgMV0pOworCisgICAgZGVidWcoIkFkZCB0ZXh0IG5vZGUgdG8gcmVnaW9u
MiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2spIik7CisgICAgdmFyIHRleHROb2RlID0gZG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4iKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiYm94MSIpLmFwcGVuZENoaWxkKHRleHROb2RlKTsKKyAgICByYW5nZTEgPSByZWdpb24x
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTEubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCks
IFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0
R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5n
dGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gx
IiwgMSwgImJveDEiLCAyXSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25G
bG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwor
ICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCAgWyJib3gxIiwgMiwgIndy
YXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1ZygiSW5jcmVhc2UgZm9udCBzaXplIik7CisgICAgdmFy
IHdyYXBwZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid3JhcHBlciIpOworICAgIHdyYXBw
ZXIuc3R5bGUuZm9udFNpemUgPSAiNDBweCI7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRH
ZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0
aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBw
ZXIiLCAwLCAiYm94MSIsIDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7
CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICIj
dGV4dCIsIDRdKTsKKyAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5n
ZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7CisgICAgY29t
cGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiI3RleHQiLCA1LCAid3JhcHBlciIs
IDFdKTsKKworICAgIGRlYnVnKCJNYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3aWxs
IG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMiKTsKKyAgICB2YXIgYm94MiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdib3gyJyk7CisgICAgYm94Mi5zdHlsZS53ZWJraXRGbG93SW50byA9
ICJmbG93MSI7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2Vz
KCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDIpOworICAgIGNvbXBh
cmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDBd
KTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAxKSwgWyJib3gxIiwgMSwg
IiN0ZXh0IiwgNF0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4dCIsIDUsICJib3gxIiwg
Ml0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwor
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJy
YXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMCwgImJveDEiLCAxXSk7CisKK2Z1
bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cisg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0g
ImhpZGRlbiI7Cit9CisKKyAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Cis8L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNDZjMjYwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTcgQEAKK1Rlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9u
c10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93
OjpnZXRSZWdpb25zQnlDb250ZW50LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKwor
UEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3QuaXRlbSgwKS5pZCBp
cyAicmVnaW9uIgorUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAyCitQQVNTIHJlZ2lvbkxpc3Qu
aXRlbSgwKS5pZCBpcyAicmVnaW9uMjEiCitQQVNTIHJlZ2lvbkxpc3QuaXRlbSgxKS5pZCBpcyAi
cmVnaW9uMjIiCitQQVNTIHJlZ2lvbkxpc3QubGVuZ3RoIGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotYnQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25z
LWJ5LWNvbnRlbnQtaG9yaXotYnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmQ4NzMzZDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1idC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw0OSBAQAorVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUg
TmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lv
bnNCeUNvbnRlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmVnaW9u
TGlzdEFydGljbGUgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCBp
cyAyCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKK1BBU1Mg
cmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlz
dFNwYW4gaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuLmxlbmd0aCBpcyAxCitQQVNT
IHJlZ2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKK1BBU1MgcmVnaW9uTGlzdFNw
YW4yIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0U3BhbjIubGVuZ3RoIGlzIDIKK1BBU1Mg
cmVnaW9uTGlzdFNwYW4zIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0U3BhbjMubGVuZ3Ro
IGlzIDEKK1BBU1MgcmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNT
IHJlZ2lvbkxpc3RUZXh0Tm9kZSBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFRleHROb2Rl
Lmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIGlzICJyZWdp
b24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25M
aXN0VGV4dE5vZGUyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgw
KS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMyBpcyBub24tbnVsbC4K
K1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUzLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIu
bGVuZ3RoIGlzIDIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlzICJyZWdp
b24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjMiCitQ
QVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0
Tm9kZTMyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjMiCitQQVNTIHJlZ2lvbkxpc3RQMSBpcyBub24t
bnVsbC4KK1BBU1MgcmVnaW9uTGlzdFAxLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMS5p
dGVtKDApLmlkIGlzICJyZWdpb240IgorUEFTUyByZWdpb25MaXN0UDIgaXMgbm9uLW51bGwuCitQ
QVNTIHJlZ2lvbkxpc3RQMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDIuaXRlbSgwKS5p
ZCBpcyAicmVnaW9uNCIKK1BBU1MgcmVnaW9uTGlzdFAzIGlzIG5vbi1udWxsLgorUEFTUyByZWdp
b25MaXN0UDMubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQgaXMgInJl
Z2lvbjQiCitQQVNTIHJlZ2lvbkxpc3RQMjIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAy
Mi5pdGVtKDApLmlkIGlzICJyZWdpb241IgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQorCitURVNUIENPTVBMRVRFCisKKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0Lmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1i
dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE4MjliMzkKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMt
YnktY29udGVudC1ob3Jpei1idC5odG1sCkBAIC0wLDAgKzEsMTUyIEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c3R5bGU+CisgICAgICAg
ICAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7IH0KKyAgICAg
ICAgICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgICAgICAgICAjYXJ0
aWNsZSB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAjcmVnaW9uIHsg
LXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Cisg
ICAgICAgICAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUw
cHg7IGhlaWdodDogNTBweDsgfQorICAgICAgICAgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdzsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKworICAgICAgICAgICAg
I2FydGljbGUyIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3cyOyB9CisgICAgICAgICAgICAjcmVn
aW9uNCB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUw
cHg7IH0KKyAgICAgICAgICAgICNyZWdpb241IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB3
aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgfQorCisgICAgICAgICAgICAubm9SZWdpb24geyAt
d2Via2l0LWZsb3ctZnJvbTogbm9uZTsgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGggaW5saW5lIGVsZW1lbnRz
IC0tPgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJz
cGFuTm9kZSI+VGV4dCBpbnNpZGUgc3Bhbi48L3NwYW4+CisgICAgICAgICAgICBUZXh0IG91dHNp
ZGUgc3Bhbi4gVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLgorICAgICAgICAg
ICAgPHNwYW4gaWQ9InNwYW5Ob2RlMiI+VGV4dCBpbnNpZGUgc3BhbjIuPC9zcGFuPgorICAgICAg
ICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlMyI+VGV4dCBpbnNpZGUgc3BhbjM8L3NwYW4+CisgICAg
ICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24iPjwvZGl2PgorICAgICAgICA8ZGl2
IGlkPSJyZWdpb24yIj48L2Rpdj4KKworICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBibG9j
ayBlbGVtZW50cyAtLT4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgorICAgICAgICAgICAg
PHAgaWQ9InAxIj5UZXh0IGluc2lkZSBwYXJhZ3JhcGggcDEuPC9wPgorICAgICAgICA8L2Rpdj4K
KyAgICAgICAgPGRpdiBpZD0icmVnaW9uNCI+PC9yZWdpb24+CisgICAgICAgIDxzY3JpcHQ+Cisg
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3Qg
Zm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29u
dGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Iik7CisgICAgICAgICAg
ICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworCisgICAgICAgICAgICBm
dW5jdGlvbiBoaWRlUmVnaW9ucygpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRl
biI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIiku
c3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNp
YmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjQiKS5zdHlsZS52aXNpYmlsaXR5ID0g
ImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bjUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIHZhciByZWdpb25MaXN0QXJ0aWNsZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250
ZW50KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikpOworICAgICAgICAgICAgc2hv
dWxkQmVOb25OdWxsKCJyZWdpb25MaXN0QXJ0aWNsZSIpOworICAgICAgICAgICAgc2hvdWxkRXZh
bHVhdGVUbygicmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIiwgMik7CisgICAgICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQiLCAicmVnaW9u
Iik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RBcnRpY2xl
Lml0ZW0oMSkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICB2YXIgc3Bhbk5vZGUgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUiKTsKKyAgICAgICAgICAgIHZhciByZWdp
b25MaXN0U3BhbiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2RlKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4iKTsKKyAgICAgICAgICAg
IHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuLmxlbmd0aCIsIDEpOworICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0U3Bhbi5pdGVtKDApLmlkIiwgInJl
Z2lvbiIpOworCisgICAgICAgICAgICB2YXIgc3Bhbk5vZGUyID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInNwYW5Ob2RlMiIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuMiA9IG5h
bWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2RlMik7CisgICAgICAgICAgICBzaG91
bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuMiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygicmVnaW9uTGlzdFNwYW4yLmxlbmd0aCIsIDIpOworCisgICAgICAgICAgICB2YXIgc3Bh
bk5vZGUzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlMyIpOworICAgICAgICAg
ICAgdmFyIHJlZ2lvbkxpc3RTcGFuMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNw
YW5Ob2RlMyk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuMyIp
OworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4zLmxlbmd0aCIs
IDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0U3BhbjMu
aXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAgICAgICAgIHZhciB0ZXh0Tm9kZSA9IGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBU
ZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuICIpOworICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9k
ZSk7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlID0gbmFtZWRGbG93LmdldFJl
Z2lvbnNCeUNvbnRlbnQodGV4dE5vZGUpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJy
ZWdpb25MaXN0VGV4dE5vZGUiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lv
bkxpc3RUZXh0Tm9kZS5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworCisgICAg
ICAgICAgICAvLyBBZGQgYW5vdGhlciB0ZXh0IG5vZGUgdGhhdCB3aWxsIG92ZXJmbG93IHRoZSBy
ZWdpb24yLgorICAgICAgICAgICAgdmFyIHRleHROb2RlMiA9IGRvY3VtZW50LmNyZWF0ZVRleHRO
b2RlKCJUZXh0IG5vZGUyLiIpOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTIpOworICAgICAgICAgICAgdmFyIHJlZ2lv
bkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTIp
OworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUyIik7Cisg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIs
IDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5v
ZGUyLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICAvLyBBZGQgYW5vdGhl
ciB0ZXh0IG5vZGUgdGhhdCBpcyBpbiB0aGUgb3ZlcmZsb3cgb2YgdGhlIGxhc3QgcmVnaW9uLgor
ICAgICAgICAgICAgdmFyIHRleHROb2RlMyA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0
IG5vZGUzLiIpOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUi
KS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTMpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0
Tm9kZTMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTMpOworICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUzIik7CisgICAgICAgICAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUzLmxlbmd0aCIsIDEpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzLml0ZW0o
MCkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICAvLyBBZGQgYW5vdGhlciByZWdpb24g
dG8gdGFrZSB0aGUgb3ZlcmZsb3dpbmcgZWxlbWVudHMgZnJvbSBzZWNvbmQgcmVnaW9uLgorICAg
ICAgICAgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAg
ICAgICAgICAgIHJlZ2lvbjMuaWQgPSAicmVnaW9uMyI7CisgICAgICAgICAgICBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKHJlZ2lvbjMpOworCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRl
eHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlKTsKKyAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIiwgMik7
CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIu
aXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCIsICJyZWdpb24zIik7CisKKyAgICAg
ICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlD
b250ZW50KHRleHROb2RlMyk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25M
aXN0VGV4dE5vZGUzMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFRleHROb2RlMzIuaXRlbSgwKS5pZCIsICJyZWdpb24zIik7CisKKyAg
ICAgICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKTsKKyAgICAg
ICAgICAgIHZhciByZWdpb25MaXN0UDEgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikpOworICAgICAgICAgICAgc2hvdWxkQmVOb25O
dWxsKCJyZWdpb25MaXN0UDEiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lv
bkxpc3RQMS5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uTGlzdFAxLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOworCisgICAgICAgICAgICB2YXIg
cDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgICAgICBwMi5pZCA9ICJw
MiI7CisgICAgICAgICAgICBwMi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgi
VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAyLiIpKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAyKTsKKyAgICAgICAgICAgIHZhciBy
ZWdpb25MaXN0UDIgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOworICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDIiKTsKKyAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwor
IAorICAgICAgICAgICAgLy8gYWRkIGFub3RoZXIgZWxlbWVudCBwLCBpbiB0aGUgb3ZlcmZsb3cg
cGFydCBvZiB0aGUgcmVnaW9uNAorICAgICAgICAgICAgdmFyIHAzID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgicCIpOworICAgICAgICAgICAgcDMuaWQgPSAicDMiOworICAgICAgICAgICAgcDMu
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgaW5zaWRlIHBhcmFncmFw
aCBwMy4iKSk7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIi
KS5hcHBlbmRDaGlsZChwMyk7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAzID0gbmFtZWRG
bG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAzKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVs
bCgicmVnaW9uTGlzdFAzIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25M
aXN0UDMubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RQMy5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKKworICAgICAgICAgICAgLy8gYWRk
IGFub3RoZXIgcmVnaW9uIHRvIGZsb3cyLCBwMiBhbmQgcDMgZ28gdG8gcmVnaW9uNQorICAgICAg
ICAgICAgdmFyIHJlZ2lvbjUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICAg
ICAgICAgIHJlZ2lvbjUuaWQgPSAicmVnaW9uNSI7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKHJlZ2lvbjUpOworCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAyMiA9
IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMik7CisgICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyZWdpb25MaXN0UDIyLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIyLml0ZW0oMCkuaWQiLCAicmVnaW9uNSIpOwor
CisgICAgICAgICAgICBoaWRlUmVnaW9ucygpOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LXRiLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhv
cml6LXRiLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5j
MWFjN2I3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NDkgQEAKK1Rlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0
UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlICBp
cyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIGlzIDIKK1BBU1MgcmVn
aW9uTGlzdEFydGljbGUuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgorUEFTUyByZWdpb25MaXN0QXJ0
aWNsZS5pdGVtKDEpLmlkIGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0U3BhbiBpcyBub24t
bnVsbC4KK1BBU1MgcmVnaW9uTGlzdFNwYW4ubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFNw
YW4uaXRlbSgwKS5pZCBpcyAicmVnaW9uIgorUEFTUyByZWdpb25MaXN0U3BhbjIgaXMgbm9uLW51
bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuMi5sZW5ndGggaXMgMgorUEFTUyByZWdpb25MaXN0U3Bh
bjMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuMy5sZW5ndGggaXMgMQorUEFTUyBy
ZWdpb25MaXN0U3BhbjMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRl
eHROb2RlIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUubGVuZ3RoIGlzIDEK
K1BBU1MgcmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJl
Z2lvbkxpc3RUZXh0Tm9kZTIgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIu
bGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlzICJyZWdp
b24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25M
aXN0VGV4dE5vZGUzLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMuaXRlbSgw
KS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGggaXMgMgor
UEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJl
Z2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCBpcyAicmVnaW9uMyIKK1BBU1MgcmVnaW9uTGlz
dFRleHROb2RlMzIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMzIuaXRlbSgw
KS5pZCBpcyAicmVnaW9uMyIKK1BBU1MgcmVnaW9uTGlzdFAxIGlzIG5vbi1udWxsLgorUEFTUyBy
ZWdpb25MaXN0UDEubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAxLml0ZW0oMCkuaWQgaXMg
InJlZ2lvbjQiCitQQVNTIHJlZ2lvbkxpc3RQMiBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlz
dFAyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIGlzICJyZWdpb240
IgorUEFTUyByZWdpb25MaXN0UDMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RQMy5sZW5n
dGggaXMgMQorUEFTUyByZWdpb25MaXN0UDMuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKK1BBU1Mg
cmVnaW9uTGlzdFAyMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDIyLml0ZW0oMCkuaWQg
aXMgInJlZ2lvbjUiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKworCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LXRiLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzY5ZTBmNAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhv
cml6LXRiLmh0bWwKQEAgLTAsMCArMSwxNTQgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cisg
ICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hl
bHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIGJvZHkgeyBm
b250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgICAgICAgICAjYXJ0aWNsZSB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93LWZy
b206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9CisgICAgICAgICAgICAjcmVn
aW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBw
eDsgfQorICAgICAgICAgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lk
dGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKworICAgICAgICAgICAgI2FydGljbGUyIHsgLXdl
YmtpdC1mbG93LWludG86IGZsb3cyOyB9CisgICAgICAgICAgICAjcmVnaW9uNCB7IC13ZWJraXQt
Zmxvdy1mcm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKyAgICAgICAg
ICAgICNyZWdpb241IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB3aWR0aDogMjUwcHg7IGhl
aWdodDogNTBweDsgfQorCisgICAgICAgICAgICAubm9SZWdpb24geyAtd2Via2l0LWZsb3ctZnJv
bTogbm9uZTsgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAg
ICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGggaW5saW5lIGVsZW1lbnRzIC0tPgorICAgICAgICA8
ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZSI+VGV4dCBp
bnNpZGUgc3Bhbi48L3NwYW4+CisgICAgICAgICAgICBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4dCBv
dXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLgorICAgICAgICAgICAgPHNwYW4gaWQ9InNw
YW5Ob2RlMiI+VGV4dCBpbnNpZGUgc3BhbjIuPC9zcGFuPgorICAgICAgICAgICAgPHNwYW4gaWQ9
InNwYW5Ob2RlMyI+VGV4dCBpbnNpZGUgc3BhbjM8L3NwYW4+CisgICAgICAgIDwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJyZWdpb24iPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIj48
L2Rpdj4KKworICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBibG9jayBlbGVtZW50cyAtLT4K
KyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgorICAgICAgICAgICAgPHAgaWQ9InAxIj5UZXh0
IGluc2lkZSBwYXJhZ3JhcGggcDEuPC9wPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBp
ZD0icmVnaW9uNCI+PC9yZWdpb24+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDc1OTog
W0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRv
IE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudCIpOworCisgICAgICAgICAgICBmdW5jdGlv
biBoaWRlUmVnaW9ucygpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cisg
ICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5
ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjQiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRl
biI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjUiKS5z
dHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7CisKKyAgICAgICAgICAgIHZh
ciByZWdpb25MaXN0QXJ0aWNsZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikpOworICAgICAgICAgICAgc2hvdWxkQmVOb25O
dWxsKCJyZWdpb25MaXN0QXJ0aWNsZSAiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8o
InJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCIsIDIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDEp
LmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlIik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNw
YW4gPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZSk7CisgICAgICAgICAg
ICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuIik7CisgICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyZWdpb25MaXN0U3Bhbi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4uaXRlbSgwKS5pZCIsICJyZWdpb24iKTsK
KworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJz
cGFuTm9kZTIiKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbjIgPSBuYW1lZEZsb3cu
Z2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTIpOworICAgICAgICAgICAgc2hvdWxkQmVOb25O
dWxsKCJyZWdpb25MaXN0U3BhbjIiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJl
Z2lvbkxpc3RTcGFuMi5sZW5ndGgiLCAyKTsKKworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTMiKTsKKyAgICAgICAgICAgIHZhciBy
ZWdpb25MaXN0U3BhbjMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTMp
OworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbjMiKTsKKyAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuMy5sZW5ndGgiLCAxKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4zLml0ZW0oMCku
aWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5j
cmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2Rl
LiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiAiKTsKKyAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOworICAg
ICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlD
b250ZW50KHRleHROb2RlKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlz
dFRleHROb2RlIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4
dE5vZGUubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAg
Ly8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQgd2lsbCBvdmVyZmxvdyB0aGUgcmVnaW9uMi4K
KyAgICAgICAgICAgIHZhciB0ZXh0Tm9kZTIgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4
dCBub2RlMi4iKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xl
IikuYXBwZW5kQ2hpbGQodGV4dE5vZGUyKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4
dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUyKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMiIpOworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGgiLCAxKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVt
KDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4dCBu
b2RlIHRoYXQgaXMgaW4gdGhlIG92ZXJmbG93IG9mIHRoZSBsYXN0IHJlZ2lvbi4KKyAgICAgICAg
ICAgIHZhciB0ZXh0Tm9kZTMgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMy4i
KTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5k
Q2hpbGQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzID0g
bmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMyIpOworICAgICAgICAgICAgc2hvdWxk
RXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlkIiwg
InJlZ2lvbjIiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgcmVnaW9uIHRvIHRha2Ug
dGhlIG92ZXJmbG93aW5nIGVsZW1lbnRzIGZyb20gc2Vjb25kIHJlZ2lvbi4KKyAgICAgICAgICAg
IHZhciByZWdpb24zID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAg
ICByZWdpb24zLmlkID0gInJlZ2lvbjMiOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBl
bmRDaGlsZChyZWdpb24zKTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTIg
PSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7CisgICAgICAgICAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIsIDIpOworICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCku
aWQiLCAicmVnaW9uMiIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIpOworCisgICAgICAgICAgICB2
YXIgcmVnaW9uTGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0
ZXh0Tm9kZTMpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHRO
b2RlMzIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9uMyIpOworCisgICAgICAgICAg
ICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cyIik7CisgICAgICAgICAgICB2
YXIgcmVnaW9uTGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwMSIpKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVn
aW9uTGlzdFAxIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDEu
bGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxp
c3RQMS5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKKworICAgICAgICAgICAgdmFyIHAyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOworICAgICAgICAgICAgcDIuaWQgPSAicDIiOworICAg
ICAgICAgICAgcDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgaW5z
aWRlIHBhcmFncmFwaCBwMi4iKSk7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlz
dFAyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAyIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0UDIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKKyAKKyAgICAg
ICAgICAgIC8vIGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhlIG92ZXJmbG93IHBhcnQgb2Yg
dGhlIHJlZ2lvbjQKKyAgICAgICAgICAgIHZhciBwMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InAiKTsKKyAgICAgICAgICAgIHAzLmlkID0gInAzIjsKKyAgICAgICAgICAgIHAzLmFwcGVuZENo
aWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDMuIikp
OworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5k
Q2hpbGQocDMpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMyA9IG5hbWVkRmxvdzIuZ2V0
UmVnaW9uc0J5Q29udGVudChwMyk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3RQMyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAzLmxl
bmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0
UDMuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7CisKKyAgICAgICAgICAgIC8vIGFkZCBhbm90aGVy
IHJlZ2lvbiB0byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lvbjUKKyAgICAgICAgICAgIHZh
ciByZWdpb241ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICBy
ZWdpb241LmlkID0gInJlZ2lvbjUiOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRD
aGlsZChyZWdpb241KTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMjIgPSBuYW1lZEZs
b3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdFAyMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJlZ2lvbjUiKTsKKworICAgICAg
ICAgICAgaGlkZVJlZ2lvbnMoKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKyAgICA8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1wc2V1ZG8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOGViODAxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25z
LWJ5LWNvbnRlbnQtcHNldWRvLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUZXN0cyBX
ZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCgpIGFuZCBwc2V1ZG8tZWxlbWVudHMg
YXMgcmVnaW9ucworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZWdpb25M
aXN0Lmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3QuaXRlbSgwKS5pZCBpcyAicmVnaW9uXzIi
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNv
bnRlbnQtcHNldWRvLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJl
Z2lvbnMtYnktY29udGVudC1wc2V1ZG8uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi4xM2YwY2RiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLmh0bWwKQEAgLTAsMCArMSw3
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAg
ICAgPHN0eWxlPgorICAgICAgICAgICAgI2FydGljbGUgeworICAgICAgICAgICAgICAgIC13ZWJr
aXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgICAgICAgICAgICAgIGhlaWdodDogMTUwcHg7Cisg
ICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogZ3JlZW47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICNyZWdpb25fMSB7Cisg
ICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICAgICAgICAgIHRvcDoy
MDBweDsKKyAgICAgICAgICAgICAgICBsZWZ0OiAxMDBweDsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgI3JlZ2lvbl8xOjpiZWZvcmUgeworICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJs
b2NrOworICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4OworICAgICAgICAgICAgICAgIGhlaWdo
dDogNTBweDsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKyAgICAg
ICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsKKyAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgI3JlZ2lvbl8xOjphZnRlciB7CisgICAgICAgICAgICAgICAgZGlzcGxheTog
YmxvY2s7CisgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgICAgICAgICAgaGVp
Z2h0OiA1MHB4OworICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOworICAg
ICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBhcnRpY2xlOyAgICAKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgI3JlZ2lvbl8yIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZs
b3ctZnJvbTogYXJ0aWNsZTsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6NTBweDsKKyAgICAgICAg
ICAgICAgICB3aWR0aDo1MHB4OworICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsK
KyAgICAgICAgICAgICAgICB0b3A6IDIwMHB4OworICAgICAgICAgICAgICAgIGxlZnQ6IDIwMHB4
OworICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOworICAgICAgICAgICAg
fQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPCEt
LQorICAgICAgICBUZXN0IHRoYXQgdGhlIHBzZXVkby1lbGVtZW50cyByZWdpb25zIGFyZSBub3Qg
ZXhwb3NlZCB0byBKUy4KKyAgICAgICAgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPjwv
ZGl2PgorCisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKyAgICAgICAgPGRpdiBp
ZD0icmVnaW9uXzIiPjwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3RzIFdlYktpdE5hbWVkRmxvdy5nZXRSZWdp
b25zQnlDb250ZW50KCkgYW5kIHBzZXVkby1lbGVtZW50cyBhcyByZWdpb25zIikKKworICAgICAg
ICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKKyAgICAgICAg
ICAgIHZhciB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsK
KyAgICAgICAgICAgIHZhciByZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRl
bnQodGFyZ2V0Tm9kZSk7CisKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3QubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bkxpc3QuaXRlbSgwKS5pZCIsICJyZWdpb25fMiIpOworCisgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpLnN0eWxlLnZpc2li
aWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb25fMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1j
b250ZW50LXZlcnQtbHItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmQ4NzMzZDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQ5IEBACitUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1lZEZs
b3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29u
dGVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZWdpb25MaXN0QXJ0
aWNsZSBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIGlzIDIKK1BB
U1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgorUEFTUyByZWdpb25M
aXN0QXJ0aWNsZS5pdGVtKDEpLmlkIGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0U3BhbiBp
cyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFNwYW4ubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9u
TGlzdFNwYW4uaXRlbSgwKS5pZCBpcyAicmVnaW9uIgorUEFTUyByZWdpb25MaXN0U3BhbjIgaXMg
bm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuMi5sZW5ndGggaXMgMgorUEFTUyByZWdpb25M
aXN0U3BhbjMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuMy5sZW5ndGggaXMgMQor
UEFTUyByZWdpb25MaXN0U3BhbjMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9u
TGlzdFRleHROb2RlIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUubGVuZ3Ro
IGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQ
QVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RUZXh0
Tm9kZTIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlz
ICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzIGlzIG5vbi1udWxsLgorUEFTUyBy
ZWdpb25MaXN0VGV4dE5vZGUzLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMu
aXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGgg
aXMgMgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQ
QVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCBpcyAicmVnaW9uMyIKK1BBU1MgcmVn
aW9uTGlzdFRleHROb2RlMzIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMzIu
aXRlbSgwKS5pZCBpcyAicmVnaW9uMyIKK1BBU1MgcmVnaW9uTGlzdFAxIGlzIG5vbi1udWxsLgor
UEFTUyByZWdpb25MaXN0UDEubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAxLml0ZW0oMCku
aWQgaXMgInJlZ2lvbjQiCitQQVNTIHJlZ2lvbkxpc3RQMiBpcyBub24tbnVsbC4KK1BBU1MgcmVn
aW9uTGlzdFAyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIGlzICJy
ZWdpb240IgorUEFTUyByZWdpb25MaXN0UDMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RQ
My5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDMuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIK
K1BBU1MgcmVnaW9uTGlzdFAyMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDIyLml0ZW0o
MCkuaWQgaXMgInJlZ2lvbjUiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKworCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2NGRlNjYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVu
dC12ZXJ0LWxyLmh0bWwKQEAgLTAsMCArMSwxNTUgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+
CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2Vz
L2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIGh0bWwg
eyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7IH0KKyAgICAgICAgICAgIGJvZHkg
eyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgICAgICAgICAjYXJ0aWNsZSB7IC13ZWJr
aXQtZmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAucmVnaW9uQm94IHsgIGhlaWdodDog
MjUwcHg7IHdpZHRoOiA1MHB4OyB9CisgICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93
LWZyb206IGZsb3c7IH0KKyAgICAgICAgICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3c7IH0KKyAgICAgICAgICAgICNyZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7
IH0KKworICAgICAgICAgICAgI2FydGljbGUyIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3cyOyB9
CisgICAgICAgICAgICAjcmVnaW9uNCB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MjsgfQorICAg
ICAgICAgICAgI3JlZ2lvbjUgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IH0KKworICAgICAg
ICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IG5vbmU7IH0KKyAgICAgICAgPC9z
dHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDwhLS0gc29tZSB0ZXN0cyB3
aXRoIGlubGluZSBlbGVtZW50cyAtLT4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAg
ICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUiPlRleHQgaW5zaWRlIHNwYW4uPC9zcGFuPgorICAg
ICAgICAgICAgVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91dHNp
ZGUgc3Bhbi4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTIiPlRleHQgaW5zaWRlIHNw
YW4yLiBUZXh0Ljwvc3Bhbj4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTMiPlRleHQg
aW5zaWRlIHNwYW4zPC9zcGFuPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVn
aW9uIiBjbGFzcz0icmVnaW9uQm94Ij48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uMiIg
Y2xhc3M9InJlZ2lvbkJveCI+PC9kaXY+CisKKyAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGgg
YmxvY2sgZWxlbWVudHMgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUyIj4KKyAgICAgICAg
ICAgIDxwIGlkPSJwMSI+VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAxLjwvcD4KKyAgICAgICAgPC9k
aXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjQiIGNsYXNzPSJyZWdpb25Cb3giPjwvcmVnaW9u
PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAg
ICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1l
ZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5
Q29udGVudCIpOworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZs
b3ciKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gaGlkZVJlZ2lvbnMoKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJo
aWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb240
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb241Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdEFydGljbGUgPSBuYW1l
ZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNs
ZSIpKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdEFydGljbGUiKTsK
KyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCIs
IDIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNs
ZS5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDEpLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAg
ICAgICAgdmFyIHNwYW5Ob2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlIik7
CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4gPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5
Q29udGVudChzcGFuTm9kZSk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxp
c3RTcGFuIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3Bhbi5s
ZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlz
dFNwYW4uaXRlbSgwKS5pZCIsICJyZWdpb24iKTsKKworICAgICAgICAgICAgdmFyIHNwYW5Ob2Rl
MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTIiKTsKKyAgICAgICAgICAgIHZh
ciByZWdpb25MaXN0U3BhbjIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9k
ZTIpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbjIiKTsKKyAg
ICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuMi5sZW5ndGgiLCAyKTsK
KworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJz
cGFuTm9kZTMiKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbjMgPSBuYW1lZEZsb3cu
Z2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTMpOworICAgICAgICAgICAgc2hvdWxkQmVOb25O
dWxsKCJyZWdpb25MaXN0U3BhbjMiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJl
Z2lvbkxpc3RTcGFuMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAg
ICAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiBU
ZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4
dCBub2RlLiAiKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xl
IikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0
Tm9kZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlIik7CisgICAgICAgICAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUubGVuZ3RoIiwgMSk7CisgICAgICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlk
IiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRo
YXQgd2lsbCBvdmVyZmxvdyB0aGUgcmVnaW9uMi4KKyAgICAgICAgICAgIHZhciB0ZXh0Tm9kZTIg
PSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMi4iKTsKKyAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUyKTsK
KyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lv
bnNCeUNvbnRlbnQodGV4dE5vZGUyKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVn
aW9uTGlzdFRleHROb2RlMiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFRleHROb2RlMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAg
ICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQgaXMgaW4gdGhlIG92ZXJmbG93
IG9mIHRoZSBsYXN0IHJlZ2lvbi4KKyAgICAgICAgICAgIHZhciB0ZXh0Tm9kZTMgPSBkb2N1bWVu
dC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMy4iKTsKKyAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUzKTsKKyAgICAgICAg
ICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRl
bnQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRl
eHROb2RlMyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHRO
b2RlMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVn
aW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAg
Ly8gQWRkIGFub3RoZXIgcmVnaW9uIHRvIHRha2UgdGhlIG92ZXJmbG93aW5nIGVsZW1lbnRzIGZy
b20gc2Vjb25kIHJlZ2lvbi4KKyAgICAgICAgICAgIHZhciByZWdpb24zID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICByZWdpb24zLmlkID0gInJlZ2lvbjMiOwor
ICAgICAgICAgICAgcmVnaW9uMy5jbGFzc05hbWUgPSAicmVnaW9uQm94IjsKKyAgICAgICAgICAg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7CisKKyAgICAgICAgICAgIHZhciBy
ZWdpb25MaXN0VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5v
ZGUpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMi5s
ZW5ndGgiLCAyKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlz
dFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKyAgICAgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIiwgInJlZ2lvbjMi
KTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyID0gbmFtZWRGbG93Lmdl
dFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRl
VG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5pdGVtKDApLmlkIiwgInJlZ2lv
bjMiKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93
MiIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMSA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9u
c0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKSk7CisgICAgICAgICAgICBz
aG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMSIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygicmVnaW9uTGlzdFAxLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJyZWdpb25MaXN0UDEuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7CisKKyAgICAg
ICAgICAgIHZhciBwMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKKyAgICAgICAgICAg
IHAyLmlkID0gInAyIjsKKyAgICAgICAgICAgIHAyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0
ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDIuIikpOworICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDIpOworICAgICAg
ICAgICAgdmFyIHJlZ2lvbkxpc3RQMiA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChw
Mik7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMiIpOworICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAyLmxlbmd0aCIsIDEpOworICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIuaXRlbSgwKS5pZCIsICJy
ZWdpb240Iik7CisgCisgICAgICAgICAgICAvLyBhZGQgYW5vdGhlciBlbGVtZW50IHAsIGluIHRo
ZSBvdmVyZmxvdyBwYXJ0IG9mIHRoZSByZWdpb240CisgICAgICAgICAgICB2YXIgcDMgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgICAgICBwMy5pZCA9ICJwMyI7CisgICAg
ICAgICAgICBwMy5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBpbnNp
ZGUgcGFyYWdyYXBoIHAzLiIpKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAzKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0
UDMgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDMpOworICAgICAgICAgICAgc2hv
dWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDMiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRl
VG8oInJlZ2lvbkxpc3RQMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOworCisgICAgICAg
ICAgICAvLyBhZGQgYW5vdGhlciByZWdpb24gdG8gZmxvdzIsIHAyIGFuZCBwMyBnbyB0byByZWdp
b241CisgICAgICAgICAgICB2YXIgcmVnaW9uNSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRp
diIpOworICAgICAgICAgICAgcmVnaW9uNS5pZCA9ICJyZWdpb241IjsKKyAgICAgICAgICAgIHJl
Z2lvbjUuY2xhc3NOYW1lID0gInJlZ2lvbkJveCI7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKHJlZ2lvbjUpOworCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAyMiA9
IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMik7CisgICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyZWdpb25MaXN0UDIyLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIyLml0ZW0oMCkuaWQiLCAicmVnaW9uNSIpOwor
CisgICAgICAgICAgICBoaWRlUmVnaW9ucygpOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVy
dC1ybC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDg3
MzNkMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9n
ZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDkg
QEAKK1Rlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVn
aW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50CisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlIGlzIG5v
bi1udWxsLgorUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGggaXMgMgorUEFTUyByZWdpb25M
aXN0QXJ0aWNsZS5pdGVtKDApLmlkIGlzICJyZWdpb24iCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xl
Lml0ZW0oMSkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxpc3RTcGFuIGlzIG5vbi1udWxs
LgorUEFTUyByZWdpb25MaXN0U3Bhbi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0U3Bhbi5p
dGVtKDApLmlkIGlzICJyZWdpb24iCitQQVNTIHJlZ2lvbkxpc3RTcGFuMiBpcyBub24tbnVsbC4K
K1BBU1MgcmVnaW9uTGlzdFNwYW4yLmxlbmd0aCBpcyAyCitQQVNTIHJlZ2lvbkxpc3RTcGFuMyBp
cyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFNwYW4zLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lv
bkxpc3RTcGFuMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5v
ZGUgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZS5sZW5ndGggaXMgMQorUEFT
UyByZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9u
TGlzdFRleHROb2RlMiBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5sZW5n
dGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIi
CitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RU
ZXh0Tm9kZTMubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlk
IGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCBpcyAyCitQQVNT
IHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9u
TGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIGlzICJyZWdpb24zIgorUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUzMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzMi5pdGVtKDApLmlk
IGlzICJyZWdpb24zIgorUEFTUyByZWdpb25MaXN0UDEgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lv
bkxpc3RQMS5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDEuaXRlbSgwKS5pZCBpcyAicmVn
aW9uNCIKK1BBU1MgcmVnaW9uTGlzdFAyIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0UDIu
bGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCitQ
QVNTIHJlZ2lvbkxpc3RQMyBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFAzLmxlbmd0aCBp
cyAxCitQQVNTIHJlZ2lvbkxpc3RQMy5pdGVtKDApLmlkIGlzICJyZWdpb240IgorUEFTUyByZWdp
b25MaXN0UDIyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMjIuaXRlbSgwKS5pZCBpcyAi
cmVnaW9uNSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCisKKworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0
LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBkZjM3OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwu
aHRtbApAQCAtMCwwICsxLDE1NSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVh
ZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAgaHRtbCB7IC13ZWJraXQt
d3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsgfQorICAgICAgICAgICAgYm9keSB7IGZvbnQtZmFt
aWx5OiBtb25vc3BhY2U7IH0KKyAgICAgICAgICAgICNhcnRpY2xlIHsgLXdlYmtpdC1mbG93LWlu
dG86IGZsb3c7IH0KKyAgICAgICAgICAgIC5yZWdpb25Cb3ggeyAgaGVpZ2h0OiAyNTBweDsgd2lk
dGg6IDUwcHg7IH0KKyAgICAgICAgICAgICNyZWdpb24geyAtd2Via2l0LWZsb3ctZnJvbTogZmxv
dzsgfQorICAgICAgICAgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgfQor
ICAgICAgICAgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgfQorCisgICAg
ICAgICAgICAjYXJ0aWNsZTIgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7IH0KKyAgICAgICAg
ICAgICNyZWdpb240IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB9CisgICAgICAgICAgICAj
cmVnaW9uNSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MjsgfQorCisgICAgICAgICAgICAubm9S
ZWdpb24geyAtd2Via2l0LWZsb3ctZnJvbTogbm9uZTsgfQorICAgICAgICA8L3N0eWxlPgorICAg
IDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGggaW5saW5l
IGVsZW1lbnRzIC0tPgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICAgICAgICAgIDxz
cGFuIGlkPSJzcGFuTm9kZSI+VGV4dCBpbnNpZGUgc3Bhbi48L3NwYW4+CisgICAgICAgICAgICBU
ZXh0IG91dHNpZGUgc3Bhbi4gVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLgor
ICAgICAgICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlMiI+VGV4dCBpbnNpZGUgc3BhbjIuIFRleHQu
PC9zcGFuPgorICAgICAgICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlMyI+VGV4dCBpbnNpZGUgc3Bh
bjM8L3NwYW4+CisgICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24iIGNsYXNz
PSJyZWdpb25Cb3giPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0icmVn
aW9uQm94Ij48L2Rpdj4KKworICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBibG9jayBlbGVt
ZW50cyAtLT4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgorICAgICAgICAgICAgPHAgaWQ9
InAxIj5UZXh0IGluc2lkZSBwYXJhZ3JhcGggcDEuPC9wPgorICAgICAgICA8L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0icmVnaW9uNCIgY2xhc3M9InJlZ2lvbkJveCI+PC9yZWdpb24+CisgICAgICAg
IDxzY3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAg
ICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgZGVzY3Jp
cHRpb24oIlRlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0
UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Iik7
CisgICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworCisg
ICAgICAgICAgICBmdW5jdGlvbiBoaWRlUmVnaW9ucygpCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmls
aXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUyIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIi
KS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cisg
ICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjQiKS5zdHlsZS52
aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInJlZ2lvbjUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0QXJ0aWNsZSA9IG5hbWVkRmxvdy5nZXRS
ZWdpb25zQnlDb250ZW50KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikpOworICAg
ICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0QXJ0aWNsZSIpOworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIiwgMik7CisgICAg
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCku
aWQiLCAicmVnaW9uIik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bkxpc3RBcnRpY2xlLml0ZW0oMSkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICB2YXIg
c3Bhbk5vZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUiKTsKKyAgICAgICAg
ICAgIHZhciByZWdpb25MaXN0U3BhbiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNw
YW5Ob2RlKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4iKTsK
KyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuLmxlbmd0aCIsIDEp
OworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0U3Bhbi5pdGVt
KDApLmlkIiwgInJlZ2lvbiIpOworCisgICAgICAgICAgICB2YXIgc3Bhbk5vZGUyID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlMiIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxp
c3RTcGFuMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2RlMik7CisgICAg
ICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuMiIpOworICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4yLmxlbmd0aCIsIDIpOworCisgICAgICAg
ICAgICB2YXIgc3Bhbk5vZGUzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlMyIp
OworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHNwYW5Ob2RlMyk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3RTcGFuMyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNw
YW4zLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25MaXN0U3BhbjMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAgICAgICAgIHZhciB0
ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUuIFRleHQgbm9kZS4g
VGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuICIp
OworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRD
aGlsZCh0ZXh0Tm9kZSk7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUpOworICAgICAgICAgICAgc2hvdWxk
QmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1
YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZS5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQiLCAicmVnaW9u
MiIpOworCisgICAgICAgICAgICAvLyBBZGQgYW5vdGhlciB0ZXh0IG5vZGUgdGhhdCB3aWxsIG92
ZXJmbG93IHRoZSByZWdpb24yLgorICAgICAgICAgICAgdmFyIHRleHROb2RlMiA9IGRvY3VtZW50
LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUyLiIpOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTIpOworICAgICAgICAg
ICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVu
dCh0ZXh0Tm9kZTIpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4
dE5vZGUyIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5v
ZGUyLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICAv
LyBBZGQgYW5vdGhlciB0ZXh0IG5vZGUgdGhhdCBpcyBpbiB0aGUgb3ZlcmZsb3cgb2YgdGhlIGxh
c3QgcmVnaW9uLgorICAgICAgICAgICAgdmFyIHRleHROb2RlMyA9IGRvY3VtZW50LmNyZWF0ZVRl
eHROb2RlKCJUZXh0IG5vZGUzLiIpOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTMpOworICAgICAgICAgICAgdmFyIHJl
Z2lvbkxpc3RUZXh0Tm9kZTMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9k
ZTMpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUzIik7
CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUzLmxlbmd0
aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4
dE5vZGUzLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICAvLyBBZGQgYW5v
dGhlciByZWdpb24gdG8gdGFrZSB0aGUgb3ZlcmZsb3dpbmcgZWxlbWVudHMgZnJvbSBzZWNvbmQg
cmVnaW9uLgorICAgICAgICAgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKKyAgICAgICAgICAgIHJlZ2lvbjMuaWQgPSAicmVnaW9uMyI7CisgICAgICAgICAg
ICByZWdpb24zLmNsYXNzTmFtZSA9ICJyZWdpb25Cb3giOworICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5hcHBlbmRDaGlsZChyZWdpb24zKTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RU
ZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7CisgICAg
ICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIsIDIp
OworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUy
Lml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIpOworCisgICAg
ICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5
Q29udGVudCh0ZXh0Tm9kZTMpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFRleHROb2RlMzIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9uMyIpOworCisg
ICAgICAgICAgICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cyIik7CisgICAg
ICAgICAgICB2YXIgcmVnaW9uTGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9u
TnVsbCgicmVnaW9uTGlzdFAxIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdp
b25MaXN0UDEubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3RQMS5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKKworICAgICAgICAgICAgdmFy
IHAyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOworICAgICAgICAgICAgcDIuaWQgPSAi
cDIiOworICAgICAgICAgICAgcDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUo
IlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMi4iKSk7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMik7CisgICAgICAgICAgICB2YXIg
cmVnaW9uTGlzdFAyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAyIik7CisgICAgICAgICAgICBzaG91
bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsK
KyAKKyAgICAgICAgICAgIC8vIGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhlIG92ZXJmbG93
IHBhcnQgb2YgdGhlIHJlZ2lvbjQKKyAgICAgICAgICAgIHZhciBwMyA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoInAiKTsKKyAgICAgICAgICAgIHAzLmlkID0gInAzIjsKKyAgICAgICAgICAgIHAz
LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3Jh
cGggcDMuIikpOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUy
IikuYXBwZW5kQ2hpbGQocDMpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMyA9IG5hbWVk
RmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMyk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51
bGwoInJlZ2lvbkxpc3RQMyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFAzLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25MaXN0UDMuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7CisKKyAgICAgICAgICAgIC8vIGFk
ZCBhbm90aGVyIHJlZ2lvbiB0byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lvbjUKKyAgICAg
ICAgICAgIHZhciByZWdpb241ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAg
ICAgICAgICByZWdpb241LmlkID0gInJlZ2lvbjUiOworICAgICAgICAgICAgcmVnaW9uNS5jbGFz
c05hbWUgPSAicmVnaW9uQm94IjsKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQocmVnaW9uNSk7CisKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDIyID0gbmFtZWRGbG93
Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8o
InJlZ2lvbkxpc3RQMjIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbkxpc3RQMjIuaXRlbSgwKS5pZCIsICJyZWdpb241Iik7CisKKyAgICAgICAg
ICAgIGhpZGVSZWdpb25zKCk7CisgICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CisgICAgPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uOTAxMDJkOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50Lmh0bWwKQEAgLTAsMCArMSw2NyBA
QAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHN0eWxlPgorICAgICAgICAgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KKyAg
ICAgICAgICAgICNhcnRpY2xlIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KKyAgICAgICAg
ICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAgICAgICAgICNyZWdp
b24geyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7
IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMTBweDsgdG9wOiAyMDBweDsgfQorCisgICAgICAg
ICAgICAjYXJ0aWNsZTIgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7IH0KKyAgICAgICAgICAg
ICNyZWdpb24yMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWln
aHQ6IDUwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMjBweDsgdG9wOiAzMDBweDt9Cisg
ICAgICAgICAgICAjcmVnaW9uMjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IHdpZHRoOiAy
NTBweDsgaGVpZ2h0OiA1MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDIwcHg7IHRvcDog
MzUwcHg7fQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAg
ICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgICAgICA8cCBpZD0icDEiPlRleHQgZmxvd24g
aW50byByZWdpb24uPC9wPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9u
IiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKworICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlMiI+Cisg
ICAgICAgICAgICA8cCBpZD0icDIiPlRleHQgZmxvd24gaW4gdHdvIHJlZ2lvbnMuIFRleHQgZmxv
d24gaW4gdHdvIHJlZ2lvbnMuIFRleHQgZmxvd24gaW4gdHdvIHJlZ2lvbnMuPC9wPgorICAgICAg
ICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uMjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2
PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24yMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgIGRlc2NyaXB0
aW9uKCJUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJl
Z2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudC4iKTsK
KworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKKyAg
ICAgICAgICAgIHZhciB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIik7
CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdCA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250
ZW50KHRhcmdldE5vZGUpOworCisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25M
aXN0Lmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25MaXN0Lml0ZW0oMCkuaWQiLCAicmVnaW9uIik7CisKKyAgICAgICAgICAgIG5hbWVkRmxvdyA9
IGdldEZsb3dCeU5hbWUoImZsb3cyIik7CisgICAgICAgICAgICAvLyBUZXN0IHRoYXQgdGhlIHAy
IGVsZW1lbnQgaXMgZmxvd24gaW50byAyIHJlZ2lvbnMKKyAgICAgICAgICAgIHRhcmdldE5vZGUg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKTsKKyAgICAgICAgICAgIHJlZ2lvbkxpc3Qg
PSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0YXJnZXROb2RlKTsKKworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdC5sZW5ndGgiLCAyKTsKKyAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdC5pdGVtKDApLmlkIiwgInJlZ2lvbjIx
Iik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3QuaXRlbSgx
KS5pZCIsICJyZWdpb24yMiIpOworCisgICAgICAgICAgICAvLyBUZXN0IHRoYXQgcDEgZWxlbWVu
dCBpcyBub3QgaW4gZmxvdzIKKyAgICAgICAgICAgIHRhcmdldE5vZGUgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicDEiKTsKKyAgICAgICAgICAgIHJlZ2lvbkxpc3QgPSBuYW1lZEZsb3cuZ2V0
UmVnaW9uc0J5Q29udGVudCh0YXJnZXROb2RlKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRl
VG8oInJlZ2lvbkxpc3QubGVuZ3RoIiwgMCk7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGhpZGVS
ZWdpb25zQW5kRmxvd3MoKSB7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuc3R5bGUudmlzaWJpbGl0eSA9
ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIxIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yMiIpLnN0
eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
aGlkZVJlZ2lvbnNBbmRGbG93cygpOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorICAg
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50Mi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudDItZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmMzNmYzgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVu
dDItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMzAgQEAKK1Rlc3QgZm9yIDkwNzU5OiBbQ1NTUmVn
aW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRG
bG93OjpnZXRSZWdpb25zQnlDb250ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTIHJlZ2lvbkxpc3QgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3QubGVuZ3RoIGlz
IDAKK1BBU1MgcmVnaW9uTGlzdDIgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3QyLmxlbmd0
aCBpcyAwCitQQVNTIHJlZ2lvbkxpc3QgIT0gcmVnaW9uTGlzdDIgaXMgdHJ1ZQorUEFTUyByZWdp
b25MaXN0MyBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdDMubGVuZ3RoIGlzIDAKK1BBU1Mg
cmVnaW9uTGlzdDQgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3Q0Lmxlbmd0aCBpcyAxCitQ
QVNTIHJlZ2lvbkxpc3Q0Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKK1BBU1MgcmVnaW9uTGlzdDUg
aXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3Q1Lmxlbmd0aCBpcyAwCitQQVNTIHJlZ2lvbkxp
c3Q2IGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0Ni5sZW5ndGggaXMgMQorUEFTUyByZWdp
b25MaXN0Ni5pdGVtKDApLmlkIGlzICJyZWdpb24iCitQQVNTIHJlZ2lvbkxpc3Q3IGlzIG5vbi1u
dWxsLgorUEFTUyByZWdpb25MaXN0Ny5sZW5ndGggaXMgMAorUEFTUyByZWdpb25MaXN0OCBpcyBu
b24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdDgubGVuZ3RoIGlzIDAKK1BBU1MgcmVnaW9uTGlzdDkg
aXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3Q5Lmxlbmd0aCBpcyAxCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQyLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudDIuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjkxNzU3Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNv
bnRlbnQyLmh0bWwKQEAgLTAsMCArMSw5MSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAg
ICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVs
cGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAgYm9keSB7IGZv
bnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KKyAgICAgICAgICAgICNyZWdpb24sICNyZWdpb24yIHsg
d2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKyAgICAgICAgICAgIC5hcnRpY2xlIHsgLXdl
YmtpdC1mbG93LWludG86IGZsb3c7IH0KKyAgICAgICAgICAgIC5hcnRpY2xlMiB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93MjsgfQorICAgICAgICAgICAgLnJlZ2lvbiB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93OyB9CisgICAgICAgICAgICAucmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBm
bG93MjsgfQorICAgICAgICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IG5vbmU7
IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIiBjbGFzcz0i
YXJ0aWNsZSI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9InJlZ2lvbiI+
PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIiPjwvZGl2PgorICAgICAgICA8c2NyaXB0
PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3QgZm9y
IDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVu
dE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Iik7CisKKyAgICAgICAgICAg
IHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7CisKKyAgICAgICAgICAgIC8v
IEdldHRpbmcgdGhlIHJlZ2lvbnMgZm9yIGEgbm9uIGV4aXN0YW50IG5vZGUgc2hvdWxkIHJldHVy
biBudWxsLgorICAgICAgICAgICAgdmFyIHBFbGVtZW50OworICAgICAgICAgICAgdmFyIHJlZ2lv
bkxpc3QgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChwRWxlbWVudCk7CisgICAgICAg
ICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3QiKTsKKyAgICAgICAgICAgIHNob3VsZEJl
WmVybygicmVnaW9uTGlzdC5sZW5ndGgiKTsKKworICAgICAgICAgICAgLy8gR2V0dGluZyB0aGUg
cmVnaW9ucyBmb3IgYW4gZWxlbWVudCB0aGF0IHdhcyBub3QgYWRkZWQgdG8gdGhlIGRvbSBzaG91
bGQgcmV0dXJuIGFuIGVtcHR5IGxpc3QuCisgICAgICAgICAgICBwRWxlbWVudCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoInAiKTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QyID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOworICAgICAgICAgICAgc2hvdWxk
QmVOb25OdWxsKCJyZWdpb25MaXN0MiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmVnaW9uTGlzdDIubGVuZ3RoIiwgMCk7CisgICAgICAgICAgICBzaG91bGRCZVRydWUoInJlZ2lv
bkxpc3QgIT0gcmVnaW9uTGlzdDIiKTsKKworICAgICAgICAgICAgLy8gQWRkIHRoZSBlbGVtZW50
IHRvIHRoZSBkb20gYnV0IG5vdCBpbiB0aGUgZmxvdy4gVGhlIHJlZ2lvbiBsaXN0IHNob3VsZCBi
ZSBlbXB0eS4KKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocEVsZW1lbnQp
OworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QzID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNv
bnRlbnQocEVsZW1lbnQpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0
MyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDMubGVuZ3RoIiwg
MCk7CisKKyAgICAgICAgICAgIC8vIEFkZCB0aGUgc2FtZSBlbGVtZW50IHRvIHRoZSBmbG93LiBU
aGUgcmVnaW9uIGxpc3Qgc2hvdWxkIGNvbnRhaW4gb25lIHJlZ2lvbi4KKyAgICAgICAgICAgIGRv
Y3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocEVsZW1lbnQpOworICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZChwRWxlbWVudCk7CisgICAgICAg
ICAgICB2YXIgcmVnaW9uTGlzdDQgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChwRWxl
bWVudCk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3Q0Iik7CisgICAg
ICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0NC5sZW5ndGgiLCAxKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdDQuaXRlbSgwKS5pZCIsICJy
ZWdpb24iKTsKKworICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSByZWdpb24gbm9kZSBhbmQgZ2V0
IHRoZSByZWdpb24gbGlzdC4gVGhlIGxpc3Qgc2hvdWxkIGJlIGVtcHR5LgorICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpLmNsYXNzTmFtZSA9ICJub1JlZ2lvbiI7
CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29u
dGVudChwRWxlbWVudCk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3Q1
Iik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0NS5sZW5ndGgiLCAw
KTsKKworICAgICAgICAgICAgLy8gQnJpbmcgYmFjayB0aGUgcmVnaW9uIGFuZCBnZXQgdGhlIHJl
Z2lvbiBsaXN0LiBUaGUgbGlzdCBzaG91bGQgaGF2ZSBvbmUgZWxlbWVudC4KKyAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5jbGFzc05hbWUgPSAicmVnaW9uIjsK
KyAgICAgICAgICAgIHZhciByZWdpb25MaXN0NiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250
ZW50KHBFbGVtZW50KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdDYi
KTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q2Lmxlbmd0aCIsIDEp
OworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Ni5pdGVtKDAp
LmlkIiwgInJlZ2lvbiIpOworCisgICAgICAgICAgICAvLyBSZW1vdmUgdGhlIG5hbWVkIGZsb3cs
IHRoZSByZWdpb24gbGlzdCBzaG91bGQgYmUgZW1wdHkuCisgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOworICAgICAgICAgICAgdmFy
IHJlZ2lvbkxpc3Q3ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOwor
ICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0NyIpOworICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDcubGVuZ3RoIiwgMCk7CisKKyAgICAgICAgICAg
IC8vIE1vdmUgdGhlIGFydGljbGUgdG8gYW5vdGhlciBuYW1lZCBmbG93LCB0aGUgcmVnaW9uIGxp
c3Qgc2hvdWxkIGJlIGVtcHR5LgorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUiKS5jbGFzc05hbWUgPSAiYXJ0aWNsZTIiOworICAgICAgICAgICAgdmFyIG5hbWVk
RmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxp
c3Q4ID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHBFbGVtZW50KTsKKyAgICAgICAg
ICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdDgiKTsKKyAgICAgICAgICAgIHNob3VsZEV2
YWx1YXRlVG8oInJlZ2lvbkxpc3Q4Lmxlbmd0aCIsIDApOworCisgICAgICAgICAgICAvLyBBZGQg
YSByZWdpb24gdG8gdGhlIHNlY29uZCBuYW1lZCBmbG93LCB0aGUgcmVnaW9uIGxpc3Qgc2hvdWxk
IGNvbnRhaW4gb25lIGVsZW1lbnQKKyAgICAgICAgICAgIC8vIHNpbmNlIHRoZSBwIGVsZW1lbnQg
aXMgYSBjaGlsZCBvZiBhcnRpY2xlIHRoYXQgaXMgY29sbGVjdGVkIGJ5IGZsb3cyLgorICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5jbGFzc05hbWUgPSAicmVn
aW9uMiI7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDkgPSBuYW1lZEZsb3cyLmdldFJlZ2lv
bnNCeUNvbnRlbnQocEVsZW1lbnQpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdp
b25MaXN0OSIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDkubGVu
Z3RoIiwgMSk7CisgICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExl
ZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJl
Z2lvbnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIz
Y2IwMWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
b2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwyMyBAQAorVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgaW4gYSBuYW1lZCBm
bG93LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1MgZGl2VGV4dDEub2Zmc2V0
UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDEub2Zmc2V0TGVmdCBpcyAxMDAK
K1BBU1MgZGl2VGV4dDEub2Zmc2V0VG9wIGlzIDQ1MAorUEFTUyBkaXZUZXh0Ml8xLm9mZnNldFBh
cmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQyXzEub2Zmc2V0TGVmdCBpcyA1MDAK
K1BBU1MgZGl2VGV4dDJfMS5vZmZzZXRUb3AgaXMgMTUwCitQQVNTIGRpdlRleHQyXzIub2Zmc2V0
UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDJfMi5vZmZzZXRMZWZ0IGlzIDQ1
MAorUEFTUyBkaXZUZXh0Ml8yLm9mZnNldFRvcCBpcyAzNTAKK1BBU1MgZGl2VGV4dDJfMy5vZmZz
ZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBkaXZUZXh0Ml8zLm9mZnNldExlZnQgaXMg
NjAwCitQQVNTIGRpdlRleHQyXzMub2Zmc2V0VG9wIGlzIDUwMAorUEFTUyBpbWFnZS5vZmZzZXRQ
YXJlbnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBpbWFnZS5vZmZzZXRMZWZ0IGlzIDY1MAorUEFT
UyBpbWFnZS5vZmZzZXRUb3AgaXMgNjIwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0
aXBsZS1yZWdpb25zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2I5
NmMxNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9v
ZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25zLmh0bWwKQEAgLTAsMCArMSwy
ODIgQEAKKzxodG1sPgorPGhlYWQ+CisJPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKwkJLyogTWFr
ZSBzdXJlIHRoZSBjb25zb2xlIGFuZCB0aGUgZGVzY3JpcHRpb24gZG9uJ3QgaW50ZXJmZXJlIHdp
dGggdGhlIHJlc3Qgb2YgdGhlIGxheW91dC4gKi8KKwkJI2Rlc2NyaXB0aW9uIHsKKwkJCXBvc2l0
aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogMHB4OworCQl9CisKKwkJI2NvbnNvbGUgeworCQkJcG9z
aXRpb246IGFic29sdXRlOworCQkJdG9wOiAxMDBweDsKKwkJfQorCisJCSNkaXZNYWluMSB7CisJ
CQlib3JkZXI6IDJweCBzb2xpZCBibHVlOworCQkJd2lkdGg6IDMwMHB4OworCQkJaGVpZ2h0OiAy
MjZweDsKKwkJCS13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTsKKwkJfQorCisJCSNkaXZNYWluMiB7
CisJCQlib3JkZXI6IDJweCBzb2xpZCBibHVlOworCQkJd2lkdGg6IDIxMXB4OworCQkJaGVpZ2h0
OiA0NzBweDsKKwkJCXBhZGRpbmctbGVmdDogNXB4OworCQkJbWFyZ2luOiA1cHg7CisJCQltYXJn
aW4tbGVmdDogMTBweDsKKwkJCWxlZnQ6IDQwcHg7CisJCQktd2Via2l0LWZsb3ctaW50bzogZmxv
dzI7CisJCX0KKworCQkuZGl2VGV4dCB7CisJCQlib3JkZXI6IDFweCBzb2xpZCBncmVlbjsKKwkJ
CWNvbG9yOiBncmVlbjsKKwkJfQorCisJCSNkaXZUZXh0MSB7CisJCQl3aWR0aDogMjAwcHg7CisJ
CQloZWlnaHQ6IDE1MHB4OworCQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJbGVmdDogMzBweDsK
KwkJCXRvcDogMTBweDsKKwkJfQorCisJCSNkaXZUZXh0Ml8xIHsKKwkJCWJvcmRlci1jb2xvcjog
IzAwOTk5OTsKKwkJCWNvbG9yOiAjMDA5OTk5OworCQkJbWFyZ2luOiAxMHB4OworCQkJd2lkdGg6
IDE4MHB4OworCQkJaGVpZ2h0OiAxNDBweDsKKwkJfQorCisJCSNkaXZUZXh0Ml8yIHsKKwkJCXdp
ZHRoOiAyMDNweDsKKwkJCWhlaWdodDogMjcwcHg7CisJCX0KKworCQkjZGl2VGV4dDJfMyB7CisJ
CQltYXJnaW46IDRweDsKKwkJCXdpZHRoOiAxOTJweDsKKwkJCWhlaWdodDogMTA1cHg7CisJCQlw
b3NpdGlvbjogcmVsYXRpdmU7CisJCQl0b3A6IDExNXB4OworCQkJY29sb3I6ICM3Nzc3MDA7CisJ
CQlib3JkZXItY29sb3I6ICM3Nzc3MDA7CisJCX0KKworCQkjYWJzb2x1dGVTcGFuIHsKKwkJCXBv
c2l0aW9uOiBhYnNvbHV0ZTsKKwkJfQorCisJCSNzcGFuIHsKKwkJCXBvc2l0aW9uOiByZWxhdGl2
ZTsKKwkJCXRvcDogMTE1cHg7CisJCQlsZWZ0OiAyNDsKKwkJCWNvbG9yOiBibGFjazsKKwkJCWZv
bnQtc2l6ZTogMTJweDsKKwkJCW1hcmdpbi1sZWZ0OiA0cHg7CisJCQlwYWRkaW5nOiAxcHg7CisJ
CQlib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKwkJfQorCisJCSNpbWFnZSB7CisJCQlib3JkZXI6
IDFweCBkYXNoZWQgcmVkOworCQkJd2lkdGg6IDE1cHg7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7
CisJCQl0b3A6IDEyNHB4OworCQkJbWFyZ2luLWxlZnQ6IDU0cHg7CisJCX0KKworCQkjZHVtbXkx
IHsKKwkJCXdpZHRoOiAxMDBweDsKKwkJCWhlaWdodDogMjVweDsKKwkJCWJvcmRlcjogMXB4IHNv
bGlkIGJsYWNrOworCQkJbWFyZ2luOiA1cHg7CisJCQltYXJnaW4tbGVmdDogMjBweDsKKwkJfQor
CisJCS5yZWdpb24xIHsKKwkJCS13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsKKwkJCWJvcmRlcjog
MXB4IHNvbGlkIHJlZDsKKwkJCXBvc2l0aW9uOiByZWxhdGl2ZTsKKwkJCWxlZnQ6IDU5cHg7CisJ
CQl0b3A6IDQyOXB4OworCQkJd2lkdGg6IDMwNHB4OworCQkJaGVpZ2h0OiAyMzBweDsKKwkJfQor
CisJCS5yZWdpb24yIHsKKwkJCS13ZWJraXQtZmxvdy1mcm9tOiBmbG93MjsKKwkJCWJvcmRlcjog
MXB4IHNvbGlkIHJlZDsKKwkJfQorCisJCSNmaXJzdF9yZWdpb24yIHsKKwkJCXBvc2l0aW9uOiBy
ZWxhdGl2ZTsKKwkJCWxlZnQ6IDQ2NHB4OworCQkJdG9wOiAtMTQwcHg7CisJCQl3aWR0aDogNTAw
cHg7CisJCQloZWlnaHQ6IDE2MHB4OworCQl9CisKKwkJI3NlY29uZF9yZWdpb24yIHsKKwkJCXBv
c2l0aW9uOiByZWxhdGl2ZTsKKwkJCWxlZnQ6IDQyNHB4OworCQkJdG9wOiAtOTRweDsKKwkJCXdp
ZHRoOiAzMzBweDsKKwkJCWhlaWdodDogMTUwcHg7CisJCX0KKworCQkjdGhpcmRfcmVnaW9uMiB7
CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA1NjlweDsKKwkJCXRvcDogLTY2cHg7
CisJCQl3aWR0aDogMjgycHg7CisJCQloZWlnaHQ6IDE5NXB4OworCQl9CisKKwkJLmdyaWQgewor
CQkJcG9zaXRpb246IGFic29sdXRlOworCQkJdG9wOiA3MDBweDsKKwkJCXdpZHRoOiAxMDBweDsK
KwkJCWhlaWdodDogMTAwcHg7CisJCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibHVlOworCQkJ
dGV4dC1hbGlnbjogcmlnaHQ7CisJCQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjogYmx1ZTsK
KwkJfQorCisJCS52Z3JpZCB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0OiA5MDBw
eDsKKwkJCXdpZHRoOiAxMDBweDsKKwkJCWhlaWdodDogMTAwcHg7CisJCQlib3JkZXItYm90dG9t
OiAxcHggc29saWQgYmx1ZTsKKwkJCXRleHQtYWxpZ246IGJvdHRvbTsKKwkJCWZvbnQtc2l6ZTog
MTRweDsKKwkJCWNvbG9yOiBibHVlOworCQl9CisKKwkJI2dyaWQxIHsKKwkJCWxlZnQ6IDBweDsK
KwkJfQorCQkjZ3JpZDIgeworCQkJbGVmdDogMTAwcHg7CisJCX0KKwkJI2dyaWQzIHsKKwkJCWxl
ZnQ6IDIwMHB4OworCQl9CisJCSNncmlkNCB7CisJCQlsZWZ0OiAzMDBweDsKKwkJfQorCQkjZ3Jp
ZDUgeworCQkJbGVmdDogNDAwcHg7CisJCX0KKwkJI2dyaWQ2IHsKKwkJCWxlZnQ6IDUwMHB4Owor
CQl9CisJCSNncmlkNyB7CisJCQlsZWZ0OiA2MDBweDsKKwkJfQorCisJCSN2Z3JpZDEgeworCQkJ
dG9wOiAwcHg7CisJCX0KKwkJI3ZncmlkMiB7CisJCQl0b3A6IDEwMHB4OworCQl9CisJCSN2Z3Jp
ZDMgeworCQkJdG9wOiAyMDBweDsKKwkJfQorCQkjdmdyaWQ0IHsKKwkJCXRvcDogMzAwcHg7CisJ
CX0KKwkJI3ZncmlkNSB7CisJCQl0b3A6IDQwMHB4OworCQl9CisJCSN2Z3JpZDYgeworCQkJdG9w
OiA1MDBweDsKKwkJfQorCQkjdmdyaWQ3IHsKKwkJCXRvcDogNjAwcHg7CisJCX0KKwkJI3Zncmlk
OCB7CisJCQl0b3A6IDcwMHB4OworCQkJYm9yZGVyOiBub25lOworCQl9CisJPC9zdHlsZT4KKwor
CTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorCis8Ym9keSBpZD0iYm9keSI+CisJPGRpdiBpZD0iZGl2TWFpbjEiPgorCQk8
ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDEiPjwvZGl2PgorCTwvZGl2PgorCisJPGRp
diBpZD0iZGl2TWFpbjIiPgorCQk8ZGl2IGNsYXNzPSJkdW1teSIgaWQ9ImR1bW15MSI+PC9kaXY+
CisJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0Ml8xIj48L2Rpdj4KKwkJPGRpdiBj
bGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQyXzIiPgorCQkJPGRpdiBjbGFzcz0iZGl2VGV4dCIg
aWQ9ImRpdlRleHQyXzMiPjwvZGl2PgorCQkJPGltZyBpZD0iaW1hZ2UiIHNyYz0icmVzb3VyY2Vz
L3RyYW5zcGFyZW50LnBuZyI+PC9pbnB1dD4KKwkJPC9kaXY+CQkKKwk8L2Rpdj4KKworCTxkaXYg
Y2xhc3M9InJlZ2lvbjEiPjwvZGl2PgorCisJPGRpdiBjbGFzcz0icmVnaW9uMiIgaWQ9ImZpcnN0
X3JlZ2lvbjIiPjwvZGl2PgorCTxkaXYgY2xhc3M9InJlZ2lvbjIiIGlkPSJzZWNvbmRfcmVnaW9u
MiI+PC9kaXY+CisJPGRpdiBjbGFzcz0icmVnaW9uMiIgaWQ9InRoaXJkX3JlZ2lvbjIiPjwvZGl2
PgorCisJPGRpdiBpZD0iZ3JpZDEiIGNsYXNzPSJncmlkIj4xMDBweDwvZGl2PgorCTxkaXYgaWQ9
ImdyaWQyIiBjbGFzcz0iZ3JpZCI+MjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkMyIgY2xhc3M9
ImdyaWQiPjMwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDQiIGNsYXNzPSJncmlkIj40MDBweDwv
ZGl2PgorCTxkaXYgaWQ9ImdyaWQ1IiBjbGFzcz0iZ3JpZCI+NTAwcHg8L2Rpdj4KKwk8ZGl2IGlk
PSJncmlkNiIgY2xhc3M9ImdyaWQiPjYwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDciIGNsYXNz
PSJncmlkIj43MDBweDwvZGl2PgorCisJPGRpdiBpZD0idmdyaWQxIiBjbGFzcz0idmdyaWQiPjwv
ZGl2PgorCTxkaXYgaWQ9InZncmlkMiIgY2xhc3M9InZncmlkIj4xMDBweDwvZGl2PgorCTxkaXYg
aWQ9InZncmlkMyIgY2xhc3M9InZncmlkIj4yMDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNCIg
Y2xhc3M9InZncmlkIj4zMDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNSIgY2xhc3M9InZncmlk
Ij40MDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNiIgY2xhc3M9InZncmlkIj41MDBweDwvZGl2
PgorCTxkaXYgaWQ9InZncmlkNyIgY2xhc3M9InZncmlkIj42MDBweDwvZGl2PgorCTxkaXYgaWQ9
InZncmlkOCIgY2xhc3M9InZncmlkIj43MDBweDwvZGl2PgorCisJPHNjcmlwdD4KKwkJZGVzY3Jp
cHRpb24oIlRlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdy4iKQor
CisJCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOwor
CQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0TGVmdCIsICIxMDAiKTsKKwkJc2hvdWxkQmUoImRp
dlRleHQxLm9mZnNldFRvcCIsICI0NTAiKTsKKworCQlzaG91bGRCZSgiZGl2VGV4dDJfMS5vZmZz
ZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOworCQlzaG91bGRCZSgiZGl2VGV4dDJfMS5vZmZz
ZXRMZWZ0IiwgIjUwMCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDJfMS5vZmZzZXRUb3AiLCAiMTUw
Iik7CisKKwkJc2hvdWxkQmUoImRpdlRleHQyXzIub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJv
ZHkiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQyXzIub2Zmc2V0TGVmdCIsICI0NTAiKTsKKwkJc2hv
dWxkQmUoImRpdlRleHQyXzIub2Zmc2V0VG9wIiwgIjM1MCIpOworCisJCXNob3VsZEJlKCJkaXZU
ZXh0Ml8zLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJlKCJkaXZU
ZXh0Ml8zLm9mZnNldExlZnQiLCAiNjAwIik7CisJCXNob3VsZEJlKCJkaXZUZXh0Ml8zLm9mZnNl
dFRvcCIsICI1MDAiKTsKKworCQlzaG91bGRCZSgiaW1hZ2Uub2Zmc2V0UGFyZW50IiwgImRvY3Vt
ZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImltYWdlLm9mZnNldExlZnQiLCAiNjUwIik7CisJCXNo
b3VsZEJlKCJpbWFnZS5vZmZzZXRUb3AiLCAiNjIwIik7CisKKwkJaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CisJCQl2YXIgYWxsR3JhcGhpY0VsZW1lbnRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rv
ckFsbCgiLnJlZ2lvbjEsIC5yZWdpb24yLCAuZGl2VGV4dCwgLmdyaWQsIC52Z3JpZCwgLmR1bW15
LCAjc3BhbiwgI2ltYWdlIik7CisJCQlmb3IgKHZhciBpPTA7IGk8YWxsR3JhcGhpY0VsZW1lbnRz
Lmxlbmd0aDsgaSsrKQorCQkJCWFsbEdyYXBoaWNFbGVtZW50c1tpXS5zdHlsZS5kaXNwbGF5ID0g
Im5vbmUiOworCQl9CisJCQorCTwvc2NyaXB0PgorCTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRv
cC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tYWJz
b2x1dGUtc3RpY2t5LWZpeGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi42YjJhYTI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1hYnNvbHV0ZS1zdGlj
a3ktZml4ZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAKK1Rlc3Qgb2Zmc2V0TGVmdCBh
bmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGFic29sdXRlLCBzdGlja3kgYW5kIGZp
eGVkIHBvc2l0aW9uaW5nLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1MgZGl2
VGV4dDEub2Zmc2V0UGFyZW50IGlzIGRpdk1haW4xCitQQVNTIGRpdlRleHQxLm9mZnNldExlZnQg
aXMgMTAKK1BBU1MgZGl2VGV4dDEub2Zmc2V0VG9wIGlzIDEwCitQQVNTIGRpdlRleHQyLm9mZnNl
dFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQyLm9mZnNldExlZnQgaXMgMTAw
CitQQVNTIGRpdlRleHQyLm9mZnNldFRvcCBpcyA1MDAKK1BBU1MgZGl2VGV4dDMub2Zmc2V0UGFy
ZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDMub2Zmc2V0TGVmdCBpcyA2MDAKK1BB
U1MgZGl2VGV4dDMub2Zmc2V0VG9wIGlzIDQwMAorUEFTUyBkaXZUZXh0NC5vZmZzZXRQYXJlbnQg
aXMgbnVsbAorUEFTUyBkaXZUZXh0NC5vZmZzZXRMZWZ0IGlzIDUwCitQQVNTIGRpdlRleHQ0Lm9m
ZnNldFRvcCBpcyAyMAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZz
ZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVn
aW9uLWFic29sdXRlLXN0aWNreS1maXhlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjI1Njk1YmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWFic29sdXRlLXN0aWNr
eS1maXhlZC5odG1sCkBAIC0wLDAgKzEsMzA1IEBACis8aHRtbD4KKzxoZWFkPgorCTxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+CisJCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2Ny
aXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCisJ
CSNkZXNjcmlwdGlvbiB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDBweDsKKwkJ
fQorCisJCSNjb25zb2xlIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogMTAwcHg7
CisJCX0KKworCQkjZGl2TWFpbjEgeworCQkJYm9yZGVyOiAycHggc29saWQgYmx1ZTsKKwkJCWhl
aWdodDogMTA1cHg7CisJCQltYXJnaW46IDEwcHg7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJ
CQktd2Via2l0LWZsb3ctaW50bzogZmxvdzE7CisJCX0KKworCQkjZGl2TWFpbjIgeworCQkJYm9y
ZGVyOiAycHggc29saWQgYmx1ZTsKKwkJCWhlaWdodDogMTIwcHg7CisJCQltYXJnaW46IDEwcHg7
CisJCQktd2Via2l0LWZsb3ctaW50bzogZmxvdzI7CisJCX0KKworCQkjZGl2TWFpbjMgeworCQkJ
Ym9yZGVyOiAycHggc29saWQgYmx1ZTsKKwkJCXdpZHRoOiAyMTFweDsKKwkJCWhlaWdodDogMTQ2
cHg7CisJCQlwYWRkaW5nLWxlZnQ6IDVweDsKKwkJCW1hcmdpbjogNXB4OworCQkJbWFyZ2luLWxl
ZnQ6IDEwcHg7CisJCQlsZWZ0OiA0MHB4OworCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3czOwor
CQl9CisKKwkJI2Rpdk1haW40IHsKKwkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7CisJCQl3aWR0
aDogMjI1cHg7CisJCQloZWlnaHQ6IDEyMHB4OworCQkJcGFkZGluZy1sZWZ0OiA1cHg7CisJCQlw
YWRkaW5nLXRvcDogNXB4OworCQkJbWFyZ2luOiA4cHg7CisJCQktd2Via2l0LWZsb3ctaW50bzog
ZmxvdzQ7CisJCX0KKworCQkuZGl2VGV4dCB7CisJCQlib3JkZXI6IDFweCBzb2xpZCBncmVlbjsK
KwkJCWNvbG9yOiBncmVlbjsKKwkJCWZvbnQtc2l6ZTogMTRweDsKKwkJfQorCisJCSNkaXZUZXh0
MSB7CisJCQl3aWR0aDogMjUwcHg7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0OiAx
MHB4OworCQkJdG9wOiAxMHB4OworCQl9CisKKwkJI2RpdlRleHQyIHsKKwkJCXdpZHRoOiAyMDBw
eDsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCWxlZnQ6IDIwcHg7CisJCQl0b3A6IDIwcHg7
CisJCX0KKworCQkjZGl2VGV4dDMgeworCQkJYm9yZGVyLWNvbG9yOiAjMDA5OTk5OworCQkJY29s
b3I6ICMwMDk5OTk7CisJCQltYXJnaW46IDEwcHg7CisJCQl3aWR0aDogMTgwcHg7CisJCQloZWln
aHQ6IDkwcHg7CisJCQlwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7CisJCQl0b3A6IDUwcHg7CisJ
CX0KKworCQkjZGl2VGV4dDQgeworCQkJYm9yZGVyLWNvbG9yOiAjMDA5OTk5OworCQkJY29sb3I6
ICMwMDk5OTk7CisJCQl3aWR0aDogMTgwcHg7CisJCQloZWlnaHQ6IDEwMHB4OworCQkJcG9zaXRp
b246IGZpeGVkOworCQkJbGVmdDogNTBweDsKKwkJCXRvcDogMjBweDsKKwkJfQorCisJCSNkdW1t
eSB7CisJCQl3aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDI1cHg7CisJCQlib3JkZXI6IDFweCBz
b2xpZCBibGFjazsKKwkJCW1hcmdpbjogNXB4OworCQkJbWFyZ2luLWxlZnQ6IDIwcHg7CisJCX0K
KworCQkjcmVnaW9uMSB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7CisJCQlib3JkZXI6
IDFweCBzb2xpZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA1OXB4Owor
CQkJdG9wOiAzMzVweDsKKwkJCXdpZHRoOiAzMDRweDsKKwkJCWhlaWdodDogMTI1cHg7CisJCX0K
KworCQkjcmVnaW9uMiB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7CisJCQlib3JkZXI6
IDFweCBzb2xpZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA3MXB4Owor
CQkJdG9wOiAzNDRweDsKKwkJCXdpZHRoOiAzMDRweDsKKwkJCWhlaWdodDogMTQwcHg7CisJCX0K
KworCQkjcmVnaW9uMyB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzM7CisJCQlib3JkZXI6
IDFweCBzb2xpZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQltYXJnaW4tdG9wOiAy
MHB4OworCQkJbGVmdDogNTY0cHg7CisJCQl0b3A6IDUzcHg7CisJCQl3aWR0aDogMjUwcHg7CisJ
CQloZWlnaHQ6IDE2MHB4OworCQkJb3ZlcmZsb3c6IGhpZGRlbjsKKwkJfQorCisJCSNyZWdpb240
IHsKKwkJCS13ZWJraXQtZmxvdy1mcm9tOiBmbG93NDsKKwkJCWJvcmRlcjogMXB4IHNvbGlkIHJl
ZDsKKwkJCXBvc2l0aW9uOiByZWxhdGl2ZTsKKwkJCW1hcmdpbi10b3A6IDIwcHg7CisJCQlsZWZ0
OiA0NTBweDsKKwkJCXRvcDogNTNweDsKKwkJCXdpZHRoOiAyNTBweDsKKwkJCWhlaWdodDogMTQw
cHg7CisJCX0KKworCQkuZ3JpZCB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDc1
MHB4OworCQkJd2lkdGg6IDEwMHB4OworCQkJaGVpZ2h0OiAxMDBweDsKKwkJCWJvcmRlci1yaWdo
dDogMXB4IHNvbGlkIGJsdWU7CisJCQl0ZXh0LWFsaWduOiByaWdodDsKKwkJCWZvbnQtc2l6ZTog
MTRweDsKKwkJCWNvbG9yOiBibHVlOworCQl9CisKKwkJLnZncmlkIHsKKwkJCXBvc2l0aW9uOiBh
YnNvbHV0ZTsKKwkJCWxlZnQ6IDkwMHB4OworCQkJd2lkdGg6IDEwMHB4OworCQkJaGVpZ2h0OiAx
MDBweDsKKwkJCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibHVlOworCQkJdGV4dC1hbGlnbjog
Ym90dG9tOworCQkJZm9udC1zaXplOiAxNHB4OworCQkJY29sb3I6IGJsdWU7CisJCX0KKworCQkj
Z3JpZDEgeworCQkJbGVmdDogMHB4OworCQl9CisJCSNncmlkMiB7CisJCQlsZWZ0OiAxMDBweDsK
KwkJfQorCQkjZ3JpZDMgeworCQkJbGVmdDogMjAwcHg7CisJCX0KKwkJI2dyaWQ0IHsKKwkJCWxl
ZnQ6IDMwMHB4OworCQl9CisJCSNncmlkNSB7CisJCQlsZWZ0OiA0MDBweDsKKwkJfQorCQkjZ3Jp
ZDYgeworCQkJbGVmdDogNTAwcHg7CisJCX0KKwkJI2dyaWQ3IHsKKwkJCWxlZnQ6IDYwMHB4Owor
CQl9CisKKwkJI3ZncmlkMSB7CisJCQl0b3A6IDBweDsKKwkJfQorCQkjdmdyaWQyIHsKKwkJCXRv
cDogMTAwcHg7CisJCX0KKwkJI3ZncmlkMyB7CisJCQl0b3A6IDIwMHB4OworCQl9CisJCSN2Z3Jp
ZDQgeworCQkJdG9wOiAzMDBweDsKKwkJfQorCQkjdmdyaWQ1IHsKKwkJCXRvcDogNDAwcHg7CisJ
CX0KKwkJI3ZncmlkNiB7CisJCQl0b3A6IDUwMHB4OworCQl9CisJCSN2Z3JpZDcgeworCQkJdG9w
OiA2MDBweDsKKwkJfQorCQkjdmdyaWQ4IHsKKwkJCXRvcDogNzAwcHg7CisJCQlib3JkZXI6IG5v
bmU7CisJCX0KKwk8L3N0eWxlPgorCisJPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisKKwk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlw
dCI+CisJCWZ1bmN0aW9uIHdyaXRlT2Zmc2V0SW5mbyhzZWxlY3RvcikgeworCQkJdmFyIGRpdkl0
ZW1zID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3Rvcik7CisJCQkJCisJCQlmb3Ig
KHZhciBpPTA7IGk8ZGl2SXRlbXMubGVuZ3RoOyBpKyspIHsKKwkJCQl2YXIgZGl2SXRlbSA9IGRp
dkl0ZW1zW2ldOworCQkJCXZhciBleGlzdGluZ0hUTUwgPSBkaXZJdGVtLmlubmVySFRNTDsKKwkJ
CQl2YXIgbmV3SFRNTCA9IGV4aXN0aW5nSFRNTC5yZXBsYWNlKCIjb2ZmVG9wIyIsIGRpdkl0ZW0u
b2Zmc2V0VG9wKTsKKwkJCQluZXdIVE1MID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmTGVmdCMiLCBk
aXZJdGVtLm9mZnNldExlZnQpOworCQkJCWlmIChkaXZJdGVtLm9mZnNldFBhcmVudCkKKwkJCQkJ
bmV3SFRNTCA9IG5ld0hUTUwucmVwbGFjZSgiI29mZlBhcmVudCMiLCBkaXZJdGVtLm9mZnNldFBh
cmVudC50YWdOYW1lICsgIigiICsgZGl2SXRlbS5vZmZzZXRQYXJlbnQuaWQgKyAiKSIpOworCQkJ
CWVsc2UKKwkJCQkJbmV3SFRNTCA9IG5ld0hUTUwucmVwbGFjZSgiI29mZlBhcmVudCMiLCAibnVs
bCIpOworCQkJCWRpdkl0ZW0uaW5uZXJIVE1MID0gbmV3SFRNTDsKKwkJCX0KKwkJfQorCQlmdW5j
dGlvbiBteU9uTG9hZCgpIHsKKwkJCXdyaXRlT2Zmc2V0SW5mbygiLmRpdlRleHQiKTsKKwkJfQor
CTwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBpZD0iYm9keSIgb25sb2FkID0gIm15T25Mb2Fk
KCk7Ij4KKwk8ZGl2IGlkPSJkaXZNYWluMSI+CisJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJk
aXZUZXh0MSI+VGhpcyBpcyA8Yj5kaXZUZXh0MTwvYj4gKGFic29sdXRlKTo8YnIvPi0gb2Zmc2V0
UGFyZW50IGlzIDxiPiNvZmZQYXJlbnQjPC9iPjxici8+LSBvZmZzZXRMZWZ0IGlzIDxiPiNvZmZM
ZWZ0IzwvYj48YnIvPi0gb2Zmc2V0VG9wIGlzIDxiPiNvZmZUb3AjPC9iPjwvZGl2PgorCTwvZGl2
PgorCisJPGRpdiBpZD0iZGl2TWFpbjIiPgorCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2
VGV4dDIiPlRoaXMgaXMgPGI+ZGl2VGV4dDI8L2I+IChhYnNvbHV0ZSk6PGJyLz4tIG9mZnNldFBh
cmVudCBpcyA8Yj4jb2ZmUGFyZW50IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVm
dCM8L2I+PGJyLz4tIG9mZnNldFRvcCBpcyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KKwk8L2Rpdj4K
KworCTxkaXYgaWQ9ImRpdk1haW4zIj4KKwkJPGRpdiBjbGFzcz0iZHVtbXkiIGlkPSJkdW1teSI+
ZHVtbXk8L2Rpdj4KKwkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQzIj48c3BhbiBj
bGFzcz0ib2Zmc2V0SW5mbyI+VGhpcyBpcyA8Yj5kaXZUZXh0MzwvYj4gKHN0aWNreSk6PGJyLz4t
IG9mZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8
Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRvcCBpcyA8Yj4jb2ZmVG9wIzwvYj48L3NwYW4+
PC9kaXY+CisJPC9kaXY+CisKKwk8ZGl2IGlkPSJkaXZNYWluNCI+CisJCTxkaXYgY2xhc3M9ImRp
dlRleHQiIGlkPSJkaXZUZXh0NCI+VGhpcyBpcyA8Yj5kaXZUZXh0NDwvYj4gKGZpeGVkKTo8YnIv
Pi0gb2Zmc2V0UGFyZW50IGlzIDxiPiNvZmZQYXJlbnQjPC9iPjxici8+LSBvZmZzZXRMZWZ0IGlz
IDxiPiNvZmZMZWZ0IzwvYj48YnIvPi0gb2Zmc2V0VG9wIGlzIDxiPiNvZmZUb3AjPC9iPjwvZGl2
PgorCTwvZGl2PgorCisJPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMSI+PC9kaXY+CisJ
PGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMiI+PC9kaXY+CisJPGRpdiBjbGFzcz0icmVn
aW9uIiBpZD0icmVnaW9uMyI+PC9kaXY+CisJPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9u
NCI+PC9kaXY+CisKKwk8ZGl2IGlkPSJncmlkMSIgY2xhc3M9ImdyaWQiPjEwMHB4PC9kaXY+CisJ
PGRpdiBpZD0iZ3JpZDIiIGNsYXNzPSJncmlkIj4yMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQz
IiBjbGFzcz0iZ3JpZCI+MzAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNCIgY2xhc3M9ImdyaWQi
PjQwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDUiIGNsYXNzPSJncmlkIj41MDBweDwvZGl2Pgor
CTxkaXYgaWQ9ImdyaWQ2IiBjbGFzcz0iZ3JpZCI+NjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlk
NyIgY2xhc3M9ImdyaWQiPjcwMHB4PC9kaXY+CisKKwk8ZGl2IGlkPSJ2Z3JpZDEiIGNsYXNzPSJ2
Z3JpZCI+PC9kaXY+CisJPGRpdiBpZD0idmdyaWQyIiBjbGFzcz0idmdyaWQiPjEwMHB4PC9kaXY+
CisJPGRpdiBpZD0idmdyaWQzIiBjbGFzcz0idmdyaWQiPjIwMHB4PC9kaXY+CisJPGRpdiBpZD0i
dmdyaWQ0IiBjbGFzcz0idmdyaWQiPjMwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ1IiBjbGFz
cz0idmdyaWQiPjQwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ2IiBjbGFzcz0idmdyaWQiPjUw
MHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ3IiBjbGFzcz0idmdyaWQiPjYwMHB4PC9kaXY+CisJ
PGRpdiBpZD0idmdyaWQ4IiBjbGFzcz0idmdyaWQiPjcwMHB4PC9kaXY+CisKKwk8c2NyaXB0Pgor
CQlkZXNjcmlwdGlvbigiVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgaW4gYSBuYW1lZCBm
bG93IHdpdGggYWJzb2x1dGUsIHN0aWNreSBhbmQgZml4ZWQgcG9zaXRpb25pbmcuIikKKworCQlz
aG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0UGFyZW50IiwgImRpdk1haW4xIik7CisJCXNob3VsZEJl
KCJkaXZUZXh0MS5vZmZzZXRMZWZ0IiwgIjEwIik7CisJCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZz
ZXRUb3AiLCAiMTAiKTsKKworCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0UGFyZW50IiwgImRv
Y3VtZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldExlZnQiLCAiMTAwIik7
CisJCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRUb3AiLCAiNTAwIik7CisKKwkJc2hvdWxkQmUo
ImRpdlRleHQzLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJlKCJk
aXZUZXh0My5vZmZzZXRMZWZ0IiwgIjYwMCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDMub2Zmc2V0
VG9wIiwgIjQwMCIpOworCisJCXNob3VsZEJlTnVsbCgiZGl2VGV4dDQub2Zmc2V0UGFyZW50Iik7
CisJCXNob3VsZEJlKCJkaXZUZXh0NC5vZmZzZXRMZWZ0IiwgIjUwIik7CisJCXNob3VsZEJlKCJk
aXZUZXh0NC5vZmZzZXRUb3AiLCAiMjAiKTsKKworCQlpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
KwkJCXZhciBhbGxHcmFwaGljRWxlbWVudHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIu
cmVnaW9uLCAuZGl2VGV4dCwgLmdyaWQsIC52Z3JpZCwgI2R1bW15Iik7CisJCQlmb3IgKHZhciBp
PTA7IGk8YWxsR3JhcGhpY0VsZW1lbnRzLmxlbmd0aDsgaSsrKQorCQkJCWFsbEdyYXBoaWNFbGVt
ZW50c1tpXS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOworCQl9CisJCQorCTwvc2NyaXB0PgorCTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJl
Z2lvbi1mbG9hdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uYzJlZGZiNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTQgQEAKK1Rlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQg
ZmxvdyB3aXRoIGZsb2F0cy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIGRp
dlRleHQxLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQxLm9mZnNl
dExlZnQgaXMgMjAwCitQQVNTIGRpdlRleHQxLm9mZnNldFRvcCBpcyAzMDAKK1BBU1MgZGl2VGV4
dDIub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDIub2Zmc2V0TGVm
dCBpcyAzMDAKK1BBU1MgZGl2VGV4dDIub2Zmc2V0VG9wIGlzIDUwMAorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxv
YXQtdmVydC1ybC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
b2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyYWI0M2QKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRU
b3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTQgQEAK
K1Rlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGZsb2F0
cyBpbiB2ZXJ0aWNhbC1ybCBtb2RlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BB
U1MgZGl2VGV4dDEub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDEu
b2Zmc2V0TGVmdCBpcyA3MDAKK1BBU1MgZGl2VGV4dDEub2Zmc2V0VG9wIGlzIDIwMAorUEFTUyBk
aXZUZXh0Mi5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBkaXZUZXh0Mi5vZmZz
ZXRMZWZ0IGlzIDQwMAorUEFTUyBkaXZUZXh0Mi5vZmZzZXRUb3AgaXMgMjAwCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1mbG9hdC12ZXJ0LXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zm
c2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWE3YTJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1mbG9hdC12ZXJ0LXJsLmh0bWwKQEAgLTAsMCArMSwxOTggQEAKKzxodG1sIHN0eWxlPSItd2Vi
a2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7Ij4KKzxoZWFkPgorCTxzdHlsZSB0eXBlPSJ0
ZXh0L2NzcyI+CisJCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2NyaXB0aW9u
IGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCisJCSNkZXNj
cmlwdGlvbiB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0OiAwcHg7CisJCX0KKwor
CQkjY29uc29sZSB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0OiAxMDBweDsKKwkJ
fQorCisJCSNkaXZNYWluMSB7CisJCQktd2Via2l0LWZsb3ctaW50bzogZmxvdzE7CisJCQlib3Jk
ZXI6IDJweCBzb2xpZCBibHVlOworCQkJd2lkdGg6IDE2MHB4OworCQkJbWFyZ2luOiAxMHB4Owor
CQkJcGFkZGluZzogNXB4OworCQl9CisKKwkJI2Rpdk1haW4yIHsKKwkJCWJvcmRlcjogMnB4IHNv
bGlkIGJsdWU7CisJCQl3aWR0aDogMTM1cHg7CisJCQltYXJnaW46IDVweDsKKwkJCS13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93MjsKKwkJfQorCisJCS5kaXZUZXh0IHsKKwkJCWJvcmRlcjogMXB4IHNv
bGlkIGdyZWVuOworCQkJY29sb3I6IGdyZWVuOworCQkJZm9udC1zaXplOiAxNHB4OworCQkJcGFk
ZGluZzogNXB4OworCQl9CisKKwkJI2RpdlRleHQxIHsKKwkJCXdpZHRoOiA2MHB4OworCQkJaGVp
Z2h0OiAyNDBweDsKKwkJCW1hcmdpbjogMTBweDsKKwkJCXBhZGRpbmctbGVmdDogNXB4OworCQkJ
ZmxvYXQ6IHJpZ2h0OworCQl9CisKKwkJI2RpdlRleHQyIHsKKwkJCXdpZHRoOiA2MHB4OworCQkJ
aGVpZ2h0OiAxOTBweDsKKwkJCWZsb2F0OiBsZWZ0OworCQkJbWFyZ2luOiAxMHB4OworCQl9CisK
KwkJI3JlZ2lvbjEgeworCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOworCQkJYm9yZGVyOiAx
cHggc29saWQgcmVkOworCQkJcG9zaXRpb246IGFic29sdXRlOworCQkJdG9wOiA3OHB4OworCQkJ
bGVmdDogNjA4cHg7CisJCQloZWlnaHQ6IDQwMHB4OworCQkJd2lkdGg6IDE5MHB4OworCQl9CisK
KwkJI3JlZ2lvbjIgeworCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOworCQkJYm9yZGVyOiAx
cHggc29saWQgcmVkOworCQkJcG9zaXRpb246IGFic29sdXRlOworCQkJbGVmdDogMzM4cHg7CisJ
CQl0b3A6IDE4MnB4OworCQkJd2lkdGg6IDE1MHB4OworCQkJaGVpZ2h0OiA0MDBweDsKKwkJfQor
CisJCS5ncmlkIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogNjUwcHg7CisJCQl3
aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDEwMHB4OworCQkJYm9yZGVyLXJpZ2h0OiAxcHggc29s
aWQgYmx1ZTsKKwkJCXRleHQtYWxpZ246IHJpZ2h0OworCQkJZm9udC1zaXplOiAxNHB4OworCQkJ
Y29sb3I6IGJsdWU7CisJCX0KKworCQkudmdyaWQgeworCQkJcG9zaXRpb246IGFic29sdXRlOwor
CQkJbGVmdDogOTAwcHg7CisJCQl3aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDEwMHB4OworCQkJ
Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsdWU7CisJCQl0ZXh0LWFsaWduOiBib3R0b207CisJ
CQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjogYmx1ZTsKKwkJfQorCisJCSNncmlkMSB7CisJ
CQlsZWZ0OiAwcHg7CisJCX0KKwkJI2dyaWQyIHsKKwkJCWxlZnQ6IDEwMHB4OworCQl9CisJCSNn
cmlkMyB7CisJCQlsZWZ0OiAyMDBweDsKKwkJfQorCQkjZ3JpZDQgeworCQkJbGVmdDogMzAwcHg7
CisJCX0KKwkJI2dyaWQ1IHsKKwkJCWxlZnQ6IDQwMHB4OworCQl9CisJCSNncmlkNiB7CisJCQls
ZWZ0OiA1MDBweDsKKwkJfQorCQkjZ3JpZDcgeworCQkJbGVmdDogNjAwcHg7CisJCX0KKworCQkj
dmdyaWQxIHsKKwkJCXRvcDogMHB4OworCQl9CisJCSN2Z3JpZDIgeworCQkJdG9wOiAxMDBweDsK
KwkJfQorCQkjdmdyaWQzIHsKKwkJCXRvcDogMjAwcHg7CisJCX0KKwkJI3ZncmlkNCB7CisJCQl0
b3A6IDMwMHB4OworCQl9CisJCSN2Z3JpZDUgeworCQkJdG9wOiA0MDBweDsKKwkJfQorCQkjdmdy
aWQ2IHsKKwkJCXRvcDogNTAwcHg7CisJCX0KKwkJI3ZncmlkNyB7CisJCQl0b3A6IDYwMHB4Owor
CQl9CisJCSN2Z3JpZDggeworCQkJdG9wOiA3MDBweDsKKwkJCWJvcmRlcjogbm9uZTsKKwkJfQor
CTwvc3R5bGU+CisKKwk8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHkgaWQ9ImJvZHkiPgorCQorCTxkaXYgaWQ9
ImRpdk1haW4xIj4KKwkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQxIj48Yj5kaXZU
ZXh0MTwvYj48L2Rpdj4KKwkJPHNwYW4gY2xhc3M9Im15U3BhbiIgc3R5bGU9ImNvbG9yOiBibHVl
OyI+VGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQg
c2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBh
cm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3Jl
ZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuPC9zcGFu
PgorCTwvZGl2PgorCQorCTxkaXYgaWQ9ImRpdk1haW4yIj4KKwkJPGRpdiBjbGFzcz0iZGl2VGV4
dCIgaWQ9ImRpdlRleHQyIj48Yj5kaXZUZXh0MjwvYj48L2Rpdj4KKwkJPHNwYW4gY2xhc3M9Im15
U3BhbiIgc3R5bGU9ImNvbG9yOiBibHVlOyI+VGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0
aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYu
IFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNo
b3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KKwk8L2Rpdj4KKworCTxkaXYg
Y2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjEiPjwvZGl2PgorCTxkaXYgY2xhc3M9InJlZ2lvbiIg
aWQ9InJlZ2lvbjIiPjwvZGl2PgorCQorCTxkaXYgaWQ9ImdyaWQxIiBjbGFzcz0iZ3JpZCI+MTAw
cHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4PC9kaXY+CisJPGRp
diBpZD0iZ3JpZDMiIGNsYXNzPSJncmlkIj4zMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQ0IiBj
bGFzcz0iZ3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNSIgY2xhc3M9ImdyaWQiPjUw
MHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBweDwvZGl2PgorCTxk
aXYgaWQ9ImdyaWQ3IiBjbGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KKworCTxkaXYgaWQ9InZncmlk
MSIgY2xhc3M9InZncmlkIj48L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDIiIGNsYXNzPSJ2Z3JpZCI+
MTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+MjAwcHg8L2Rpdj4K
Kwk8ZGl2IGlkPSJ2Z3JpZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2
Z3JpZDUiIGNsYXNzPSJ2Z3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDYiIGNsYXNz
PSJ2Z3JpZCI+NTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNzPSJ2Z3JpZCI+NjAw
cHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAwcHg8L2Rpdj4KKwor
CTxzY3JpcHQ+CisJCWRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBp
biBhIG5hbWVkIGZsb3cgd2l0aCBmbG9hdHMgaW4gdmVydGljYWwtcmwgbW9kZS4iKQorCisJCXNo
b3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOworCQlzaG91
bGRCZSgiZGl2VGV4dDEub2Zmc2V0TGVmdCIsICI3MDAiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQx
Lm9mZnNldFRvcCIsICIyMDAiKTsKKworCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0UGFyZW50
IiwgImRvY3VtZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldExlZnQiLCAi
NDAwIik7CisJCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRUb3AiLCAiMjAwIik7CisKKwkJaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisJCQl2YXIgYWxsR3JhcGhpY0VsZW1lbnRzID0gZG9jdW1l
bnQucXVlcnlTZWxlY3RvckFsbCgiLnJlZ2lvbiwgLmRpdlRleHQsIC5ncmlkLCAudmdyaWQsIC5t
eVNwYW4iKTsKKwkJCWZvciAodmFyIGk9MDsgaTxhbGxHcmFwaGljRWxlbWVudHMubGVuZ3RoOyBp
KyspCisJCQkJYWxsR3JhcGhpY0VsZW1lbnRzW2ldLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CisJ
CX0KKwkJCisJPC9zY3JpcHQ+CisJPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1mbG9hdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQt
b2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjMxNTRjMzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0Lmh0bWwKQEAg
LTAsMCArMSwyMTYgQEAKKzxodG1sPgorPGhlYWQ+CisJPHN0eWxlIHR5cGU9InRleHQvY3NzIj4K
KwkJLyogTWFrZSBzdXJlIHRoZSBjb25zb2xlIGFuZCB0aGUgZGVzY3JpcHRpb24gZG9uJ3QgaW50
ZXJmZXJlIHdpdGggdGhlIHJlc3Qgb2YgdGhlIGxheW91dC4gKi8KKwkJI2Rlc2NyaXB0aW9uIHsK
KwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogMHB4OworCQl9CisKKwkJI2NvbnNvbGUg
eworCQkJcG9zaXRpb246IGFic29sdXRlOworCQkJdG9wOiAxMDBweDsKKwkJfQorCisJCSNkaXZN
YWluMSB7CisJCQktd2Via2l0LWZsb3ctaW50bzogZmxvdzE7CisJCQlib3JkZXI6IDJweCBzb2xp
ZCBibHVlOworCQkJaGVpZ2h0OiAxNTBweDsKKwkJCW1hcmdpbjogMTBweDsKKwkJCXBhZGRpbmc6
IDVweDsKKwkJfQorCisJCSNkaXZNYWluMiB7CisJCQlib3JkZXI6IDJweCBzb2xpZCBibHVlOwor
CQkJaGVpZ2h0OiAxMzVweDsKKwkJCW1hcmdpbjogNXB4OworCQkJLXdlYmtpdC1mbG93LWludG86
IGZsb3cyOworCQl9CisKKwkJLmRpdlRleHQgeworCQkJYm9yZGVyOiAxcHggc29saWQgZ3JlZW47
CisJCQljb2xvcjogZ3JlZW47CisJCQlmb250LXNpemU6IDE0cHg7CisJCX0KKworCQkjZGl2VGV4
dDEgeworCQkJd2lkdGg6IDI1MHB4OworCQkJbWFyZ2luOiAxMHB4OworCQkJcGFkZGluZy1sZWZ0
OiA1cHg7CisJCQlmbG9hdDogcmlnaHQ7CisJCX0KKworCQkjZGl2VGV4dDIgeworCQkJd2lkdGg6
IDIwMHB4OworCQkJZmxvYXQ6IGxlZnQ7CisJCQltYXJnaW46IDEwcHg7CisJCX0KKworCQkjcmVn
aW9uMSB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7CisJCQlib3JkZXI6IDFweCBzb2xp
ZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA3NXB4OworCQkJdG9wOiAy
NjRweDsKKwkJCXdpZHRoOiA0MDBweDsKKwkJCWhlaWdodDogMTgwcHg7CisJCX0KKworCQkjcmVn
aW9uMiB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7CisJCQlib3JkZXI6IDFweCBzb2xp
ZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiAyNzRweDsKKwkJCXRvcDog
MjkycHg7CisJCQl3aWR0aDogNDAwcHg7CisJCQloZWlnaHQ6IDE1MHB4OworCQl9CisKKwkJLmdy
aWQgeworCQkJcG9zaXRpb246IGFic29sdXRlOworCQkJdG9wOiA3NTBweDsKKwkJCXdpZHRoOiAx
MDBweDsKKwkJCWhlaWdodDogMTAwcHg7CisJCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibHVl
OworCQkJdGV4dC1hbGlnbjogcmlnaHQ7CisJCQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjog
Ymx1ZTsKKwkJfQorCisJCS52Z3JpZCB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0
OiA5MDBweDsKKwkJCXdpZHRoOiAxMDBweDsKKwkJCWhlaWdodDogMTAwcHg7CisJCQlib3JkZXIt
Ym90dG9tOiAxcHggc29saWQgYmx1ZTsKKwkJCXRleHQtYWxpZ246IGJvdHRvbTsKKwkJCWZvbnQt
c2l6ZTogMTRweDsKKwkJCWNvbG9yOiBibHVlOworCQl9CisKKwkJI2dyaWQxIHsKKwkJCWxlZnQ6
IDBweDsKKwkJfQorCQkjZ3JpZDIgeworCQkJbGVmdDogMTAwcHg7CisJCX0KKwkJI2dyaWQzIHsK
KwkJCWxlZnQ6IDIwMHB4OworCQl9CisJCSNncmlkNCB7CisJCQlsZWZ0OiAzMDBweDsKKwkJfQor
CQkjZ3JpZDUgeworCQkJbGVmdDogNDAwcHg7CisJCX0KKwkJI2dyaWQ2IHsKKwkJCWxlZnQ6IDUw
MHB4OworCQl9CisJCSNncmlkNyB7CisJCQlsZWZ0OiA2MDBweDsKKwkJfQorCisJCSN2Z3JpZDEg
eworCQkJdG9wOiAwcHg7CisJCX0KKwkJI3ZncmlkMiB7CisJCQl0b3A6IDEwMHB4OworCQl9CisJ
CSN2Z3JpZDMgeworCQkJdG9wOiAyMDBweDsKKwkJfQorCQkjdmdyaWQ0IHsKKwkJCXRvcDogMzAw
cHg7CisJCX0KKwkJI3ZncmlkNSB7CisJCQl0b3A6IDQwMHB4OworCQl9CisJCSN2Z3JpZDYgewor
CQkJdG9wOiA1MDBweDsKKwkJfQorCQkjdmdyaWQ3IHsKKwkJCXRvcDogNjAwcHg7CisJCX0KKwkJ
I3ZncmlkOCB7CisJCQl0b3A6IDcwMHB4OworCQkJYm9yZGVyOiBub25lOworCQl9CisJPC9zdHls
ZT4KKworCTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorCisJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorCQlmdW5jdGlvbiB3
cml0ZU9mZnNldEluZm8oc2VsZWN0b3IpIHsKKwkJCXZhciBkaXZJdGVtcyA9IGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpOworCQkJCQorCQkJZm9yICh2YXIgaT0wOyBpPGRpdkl0
ZW1zLmxlbmd0aDsgaSsrKSB7CisJCQkJdmFyIGRpdkl0ZW0gPSBkaXZJdGVtc1tpXTsKKwkJCQl2
YXIgZXhpc3RpbmdIVE1MID0gZGl2SXRlbS5pbm5lckhUTUw7CisJCQkJdmFyIG5ld0hUTUwgPSBl
eGlzdGluZ0hUTUwucmVwbGFjZSgiI29mZlRvcCMiLCBkaXZJdGVtLm9mZnNldFRvcCk7CisJCQkJ
bmV3SFRNTCA9IG5ld0hUTUwucmVwbGFjZSgiI29mZkxlZnQjIiwgZGl2SXRlbS5vZmZzZXRMZWZ0
KTsKKwkJCQlpZiAoZGl2SXRlbS5vZmZzZXRQYXJlbnQpCisJCQkJCW5ld0hUTUwgPSBuZXdIVE1M
LnJlcGxhY2UoIiNvZmZQYXJlbnQjIiwgZGl2SXRlbS5vZmZzZXRQYXJlbnQudGFnTmFtZSArICIo
IiArIGRpdkl0ZW0ub2Zmc2V0UGFyZW50LmlkICsgIikiKTsKKwkJCQllbHNlCisJCQkJCW5ld0hU
TUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNvZmZQYXJlbnQjIiwgIm51bGwiKTsKKwkJCQlkaXZJdGVt
LmlubmVySFRNTCA9IG5ld0hUTUw7CisJCQl9CisJCX0KKwkJZnVuY3Rpb24gbXlPbkxvYWQoKSB7
CisJCQl3cml0ZU9mZnNldEluZm8oIi5kaXZUZXh0Iik7CisJCX0KKwk8L3NjcmlwdD4KKzwvaGVh
ZD4KKworPGJvZHkgaWQ9ImJvZHkiIG9ubG9hZCA9ICJteU9uTG9hZCgpOyI+CisJCisJPGRpdiBp
ZD0iZGl2TWFpbjEiPgorCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDEiPlRoaXMg
aXMgPGI+ZGl2VGV4dDE8L2I+IChmbG9hdCByaWdodCk6PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8
Yj4jb2ZmUGFyZW50IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJy
Lz4tIG9mZnNldFRvcCBpcyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KKwkJPHNwYW4gY2xhc3M9Im15
U3BhbiIgc3R5bGU9ImNvbG9yOiBibHVlOyI+VGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0
aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYu
IFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNo
b3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJv
dW5kIHRoZSBncmVlbiBkaXYuPC9zcGFuPgorCTwvZGl2PgorCQorCTxkaXYgaWQ9ImRpdk1haW4y
Ij4KKwkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQyIj5UaGlzIGlzIDxiPmRpdlRl
eHQyPC9iPiAoZmxvYXQgbGVmdCk6PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50
IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRv
cCBpcyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KKwkJPHNwYW4gY2xhc3M9Im15U3BhbiIgc3R5bGU9
ImNvbG9yOiBibHVlOyI+VGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2
LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBz
aG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFy
b3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVl
biBkaXYuPC9zcGFuPgorCTwvZGl2PgorCisJPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9u
MSI+PC9kaXY+CisJPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMiI+PC9kaXY+CisJCisJ
PGRpdiBpZD0iZ3JpZDEiIGNsYXNzPSJncmlkIj4xMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQy
IiBjbGFzcz0iZ3JpZCI+MjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkMyIgY2xhc3M9ImdyaWQi
PjMwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDQiIGNsYXNzPSJncmlkIj40MDBweDwvZGl2Pgor
CTxkaXYgaWQ9ImdyaWQ1IiBjbGFzcz0iZ3JpZCI+NTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlk
NiIgY2xhc3M9ImdyaWQiPjYwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDciIGNsYXNzPSJncmlk
Ij43MDBweDwvZGl2PgorCisJPGRpdiBpZD0idmdyaWQxIiBjbGFzcz0idmdyaWQiPjwvZGl2Pgor
CTxkaXYgaWQ9InZncmlkMiIgY2xhc3M9InZncmlkIj4xMDBweDwvZGl2PgorCTxkaXYgaWQ9InZn
cmlkMyIgY2xhc3M9InZncmlkIj4yMDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNCIgY2xhc3M9
InZncmlkIj4zMDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNSIgY2xhc3M9InZncmlkIj40MDBw
eDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNiIgY2xhc3M9InZncmlkIj41MDBweDwvZGl2PgorCTxk
aXYgaWQ9InZncmlkNyIgY2xhc3M9InZncmlkIj42MDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlk
OCIgY2xhc3M9InZncmlkIj43MDBweDwvZGl2PgorCisJPHNjcmlwdD4KKwkJZGVzY3JpcHRpb24o
IlRlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGZsb2F0
cy4iKQorCisJCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9k
eSIpOworCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0TGVmdCIsICIyMDAiKTsKKwkJc2hvdWxk
QmUoImRpdlRleHQxLm9mZnNldFRvcCIsICIzMDAiKTsKKworCQlzaG91bGRCZSgiZGl2VGV4dDIu
b2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQyLm9m
ZnNldExlZnQiLCAiMzAwIik7CisJCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRUb3AiLCAiNTAw
Iik7CisKKwkJaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisJCQl2YXIgYWxsR3JhcGhpY0VsZW1l
bnRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnJlZ2lvbiwgLmRpdlRleHQsIC5ncmlk
LCAudmdyaWQsIC5teVNwYW4iKTsKKwkJCWZvciAodmFyIGk9MDsgaTxhbGxHcmFwaGljRWxlbWVu
dHMubGVuZ3RoOyBpKyspCisJCQkJYWxsR3JhcGhpY0VsZW1lbnRzW2ldLnN0eWxlLmRpc3BsYXkg
PSAibm9uZSI7CisJCX0KKwkJCisJPC9zY3JpcHQ+CisJPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0
VG9wLWlubGluZXMtcmVnaW9uLWluLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMtcmVnaW9uLWlu
LWVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmE0ZTExZDMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4tZWxlbWVudC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxOSBAQAorVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgZm9y
IGJsb2NrcyBhbmQgaW5saW5lcyBpbiBhIG5hbWVkIGZsb3cgd2hlbiB0aGUgcmVnaW9uJ3Mgb2Zm
c2V0UGFyZW50IGlzIE5PVCB0aGUgYm9keS4KK1RoaXMgdGVzdCBhbHNvIGNvdmVycyBib3JkZXJz
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKK1BBU1MgZGl2VGV4dC5vZmZzZXRQYXJl
bnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBkaXZUZXh0Lm9mZnNldExlZnQgaXMgMzAwCitQQVNT
IGRpdlRleHQub2Zmc2V0VG9wIGlzIDM1MAorUEFTUyByZWdpb25QYXJlbnQub2Zmc2V0TGVmdCBp
cyAyMDAKK1BBU1MgcmVnaW9uLm9mZnNldFBhcmVudCBpcyByZWdpb25QYXJlbnQKK1BBU1MgcmVn
aW9uLm9mZnNldExlZnQgaXMgMzAKK1BBU1MgcmVnaW9uLm9mZnNldFRvcCBpcyAyMAorUEFTUyBp
bmxpbmVFbGVtZW50Lm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGlubGluZUVs
ZW1lbnQub2Zmc2V0TGVmdCBpcyAzMDAKK1BBU1MgaW5saW5lRWxlbWVudC5vZmZzZXRUb3AgaXMg
NTUwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zm
c2V0VG9wLWlubGluZXMtcmVnaW9uLWluLWVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbmxpbmVzLXJlZ2lvbi1pbi1lbGVt
ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjNiOGViOQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0
LW9mZnNldFRvcC1pbmxpbmVzLXJlZ2lvbi1pbi1lbGVtZW50Lmh0bWwKQEAgLTAsMCArMSwxODYg
QEAKKzxodG1sPgorPGhlYWQ+CisJPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKwkJLyogTWFrZSBz
dXJlIHRoZSBjb25zb2xlIGFuZCB0aGUgZGVzY3JpcHRpb24gZG9uJ3QgaW50ZXJmZXJlIHdpdGgg
dGhlIHJlc3Qgb2YgdGhlIGxheW91dC4gKi8KKwkJI2Rlc2NyaXB0aW9uIHsKKwkJCXBvc2l0aW9u
OiBhYnNvbHV0ZTsKKwkJCXRvcDogMHB4OworCQl9CisKKwkJYm9keSB7CisJCQlib3JkZXI6IDEw
cHggZG90dGVkIGdyYXk7CisJCQlwYWRkaW5nOiAxMHB4OworCQl9CisKKwkJI2NvbnNvbGUgewor
CQkJcG9zaXRpb246IGFic29sdXRlOworCQkJdG9wOiAxMTBweDsKKwkJfQorCisJCSNyZWdpb25Q
YXJlbnQgeworCQkJYm9yZGVyOiAxcHggc29saWQgYmx1ZTsKKwkJCWJvcmRlci1sZWZ0OiAxMHB4
IGRvdHRlZCBibHVlOworCQkJYm9yZGVyLXRvcDogMTBweCBkb3R0ZWQgYmx1ZTsKKwkJCXdpZHRo
OiA2MDBweDsKKwkJCWhlaWdodDogMzcwcHg7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQls
ZWZ0OiAxNDdweDsKKwkJCXRvcDogMjYwcHg7CisJCQltYXJnaW4tbGVmdDogMjVweDsKKwkJfQor
CisJCS5yZWdpb24xIHsKKwkJCS13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsKKwkJCWJvcmRlcjog
MTBweCBkb3R0ZWQgcmVkOworCQkJbWFyZ2luOiAyMHB4OworCQkJbWFyZ2luLWxlZnQ6IDMwcHg7
CisJCQl3aWR0aDogNDA0cHg7CisJCQloZWlnaHQ6IDMyMHB4OworCQl9CisKKwkJI2Rpdk1haW4g
eworCQkJbWFyZ2luOiA1cHg7CisJCQlib3JkZXI6IDVweCBzb2xpZCBibHVlOworCQkJaGVpZ2h0
OiAzMDVweDsKKwkJCS13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTsKKwkJfQorCisJCSNkaXZUZXh0
IHsKKwkJCWJvcmRlcjogMXB4IHNvbGlkIGdyZWVuOworCQkJY29sb3I6IGdyZWVuOworCQkJZm9u
dC1zaXplOiAxNHB4OworCQkJd2lkdGg6IDMwMHB4OworCQkJaGVpZ2h0OiAxODBweDsKKwkJCXBv
c2l0aW9uOiByZWxhdGl2ZTsKKwkJCWxlZnQ6IDQwcHg7CisJCQl0b3A6IDEycHg7CisJCX0KKwor
CQkuZ3JpZCB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDY4MHB4OworCQkJd2lk
dGg6IDEwMHB4OworCQkJaGVpZ2h0OiAxMDBweDsKKwkJCWJvcmRlci1yaWdodDogMXB4IHNvbGlk
IGJsdWU7CisJCQl0ZXh0LWFsaWduOiByaWdodDsKKwkJCWZvbnQtc2l6ZTogMTRweDsKKwkJCWNv
bG9yOiBibHVlOworCQl9CisKKwkJLnZncmlkIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJ
CWxlZnQ6IDkwMHB4OworCQkJd2lkdGg6IDEwMHB4OworCQkJaGVpZ2h0OiAxMDBweDsKKwkJCWJv
cmRlci1ib3R0b206IDFweCBzb2xpZCBibHVlOworCQkJdGV4dC1hbGlnbjogYm90dG9tOworCQkJ
Zm9udC1zaXplOiAxNHB4OworCQkJY29sb3I6IGJsdWU7CisJCX0KKworCQkjZ3JpZDEgeworCQkJ
bGVmdDogMHB4OworCQl9CisJCSNncmlkMiB7CisJCQlsZWZ0OiAxMDBweDsKKwkJfQorCQkjZ3Jp
ZDMgeworCQkJbGVmdDogMjAwcHg7CisJCX0KKwkJI2dyaWQ0IHsKKwkJCWxlZnQ6IDMwMHB4Owor
CQl9CisJCSNncmlkNSB7CisJCQlsZWZ0OiA0MDBweDsKKwkJfQorCQkjZ3JpZDYgeworCQkJbGVm
dDogNTAwcHg7CisJCX0KKwkJI2dyaWQ3IHsKKwkJCWxlZnQ6IDYwMHB4OworCQl9CisKKwkJI3Zn
cmlkMSB7CisJCQl0b3A6IDBweDsKKwkJfQorCQkjdmdyaWQyIHsKKwkJCXRvcDogMTAwcHg7CisJ
CX0KKwkJI3ZncmlkMyB7CisJCQl0b3A6IDIwMHB4OworCQl9CisJCSN2Z3JpZDQgeworCQkJdG9w
OiAzMDBweDsKKwkJfQorCQkjdmdyaWQ1IHsKKwkJCXRvcDogNDAwcHg7CisJCX0KKwkJI3Zncmlk
NiB7CisJCQl0b3A6IDUwMHB4OworCQl9CisJCSN2Z3JpZDcgeworCQkJdG9wOiA2MDBweDsKKwkJ
fQorCQkjdmdyaWQ4IHsKKwkJCXRvcDogNzAwcHg7CisJCQlib3JkZXI6IG5vbmU7CisJCX0KKwk8
L3N0eWxlPgorCisJPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+CisKKzxib2R5IGlkPSJib2R5Ij4KKwk8ZGl2IGlkPSJkaXZN
YWluIj4KKwkJPGRpdiBpZD0iZGl2VGV4dCI+PGI+ZGl2VGV4dDwvYj48YnIvPjwvZGl2PgorCQk8
c3BhbiBjbGFzcz0iaW5saW5lRWxlbWVudHMiIGlkPSJpbmxpbmVFbGVtZW50IiBzdHlsZT0iY29s
b3I6ICMwMDAwOTk7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiAzMHB4OyBsZWZ0OiA0MHB4OyI+
SW5saW5lIGVsZW1lbnQgaW4gZGl2TWFpbjwvc3Bhbj4KKwk8L2Rpdj4KKworCTxkaXYgaWQ9InJl
Z2lvblBhcmVudCI+PHNwYW4gc3R5bGU9ImZsb2F0OiByaWdodDsgbWFyZ2luOiAxMHB4OyBjb2xv
cjogYmx1ZTsiPlRoaXMgaXMgcmVnaW9uUGFyZW50PC9zcGFuPgorCQk8ZGl2IGNsYXNzPSJyZWdp
b24xIiBpZD0icmVnaW9uIj48L2Rpdj4KKwk8L2Rpdj4KKworCTxkaXYgaWQ9ImdyaWQxIiBjbGFz
cz0iZ3JpZCI+MTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4
PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDMiIGNsYXNzPSJncmlkIj4zMDBweDwvZGl2PgorCTxkaXYg
aWQ9ImdyaWQ0IiBjbGFzcz0iZ3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNSIgY2xh
c3M9ImdyaWQiPjUwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBw
eDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQ3IiBjbGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KKworCTxk
aXYgaWQ9InZncmlkMSIgY2xhc3M9InZncmlkIj48L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDIiIGNs
YXNzPSJ2Z3JpZCI+MTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+
MjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4K
Kwk8ZGl2IGlkPSJ2Z3JpZDUiIGNsYXNzPSJ2Z3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2
Z3JpZDYiIGNsYXNzPSJ2Z3JpZCI+NTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNz
PSJ2Z3JpZCI+NjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAw
cHg8L2Rpdj4KKworCTxzY3JpcHQ+CisJCWRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5k
IG9mZnNldFRvcCBmb3IgYmxvY2tzIGFuZCBpbmxpbmVzIGluIGEgbmFtZWQgZmxvdyB3aGVuIHRo
ZSByZWdpb24ncyBvZmZzZXRQYXJlbnQgaXMgTk9UIHRoZSBib2R5Ljxici8+VGhpcyB0ZXN0IGFs
c28gY292ZXJzIGJvcmRlcnMuIikKKworCQlzaG91bGRCZSgiZGl2VGV4dC5vZmZzZXRQYXJlbnQi
LCAiZG9jdW1lbnQuYm9keSIpOworCQlzaG91bGRCZSgiZGl2VGV4dC5vZmZzZXRMZWZ0IiwgIjMw
MCIpOworCQlzaG91bGRCZSgiZGl2VGV4dC5vZmZzZXRUb3AiLCAiMzUwIik7CisKKwkJc2hvdWxk
QmUoInJlZ2lvblBhcmVudC5vZmZzZXRMZWZ0IiwgIjIwMCIpOworCisJCXNob3VsZEJlKCJyZWdp
b24ub2Zmc2V0UGFyZW50IiwgInJlZ2lvblBhcmVudCIpOworCQlzaG91bGRCZSgicmVnaW9uLm9m
ZnNldExlZnQiLCAiMzAiKTsKKwkJc2hvdWxkQmUoInJlZ2lvbi5vZmZzZXRUb3AiLCAiMjAiKTsK
KworCQlzaG91bGRCZSgiaW5saW5lRWxlbWVudC5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9k
eSIpOworCQlzaG91bGRCZSgiaW5saW5lRWxlbWVudC5vZmZzZXRMZWZ0IiwgIjMwMCIpOworCQlz
aG91bGRCZSgiaW5saW5lRWxlbWVudC5vZmZzZXRUb3AiLCAiNTUwIik7CisKKwkJaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7CisJCQl2YXIgYWxsR3JhcGhpY0VsZW1lbnRzID0gZG9jdW1lbnQucXVl
cnlTZWxlY3RvckFsbCgiLnJlZ2lvbjEsICNkaXZNYWluLCAjZGl2VGV4dCwgLmdyaWQsIC52Z3Jp
ZCwgI3JlZ2lvblBhcmVudCwgLmlubGluZUVsZW1lbnRzLCAjcmVnaW9uSW5mbyIpOworCQkJZm9y
ICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5sZW5ndGg7IGkrKykKKwkJCQlhbGxHcmFw
aGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKKwkJfQorCQkKKwk8L3Njcmlw
dD4KKwk8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vb2Zmc2V0UGFyZW50LWJvZHktaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1ib2R5LWluLWZs
b3ctdGhyZWFkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5hMWZmM2FlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL29mZnNldFBhcmVudC1ib2R5LWluLWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDE1IEBACitUZXN0IG9mZnNldFBhcmVudCBmb3IgYm9keSBpbiBhIG5hbWVkIGZsb3cuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGFydGljbGUub2Zmc2V0UGFyZW50
IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgY2hhcHRlci5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQu
Ym9keQorUEFTUyBjaGFwdGVyLm9mZnNldFBhcmVudCBpcyBhcnRpY2xlCitQQVNTIHRkQ2hpbGQu
b2Zmc2V0UGFyZW50IGlzIHRkCitQQVNTIHRkQ2hpbGQub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50
LmJvZHkKK1BBU1MgZG9jdW1lbnQuYm9keS5vZmZzZXRQYXJlbnQgaXMgbnVsbAorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRo
cmVhZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1i
b2R5LWluLWZsb3ctdGhyZWFkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uN2U1OTRiMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC5odG1sCkBAIC0wLDAgKzEsNTMg
QEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgIDwv
aGVhZD4KKworICAgIDxzdHlsZT4KKworICAgICAgICAjcmVnaW9uIHsKKyAgICAgICAgICAgIC13
ZWJraXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICB9CisKKyAgICA8L3N0eWxlPgorCisgICAg
PGJvZHk+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBv
ZmZzZXRQYXJlbnQgZm9yIGJvZHkgaW4gYSBuYW1lZCBmbG93LiIpCisKKyAgICAgICAgICAgIGRv
Y3VtZW50LmJvZHkuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdyI7CisgICAgICAgICAgICAK
KyAgICAgICAgICAgIHZhciBhcnRpY2xlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7
CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFydGljbGUpOworICAgICAg
ICAgICAgc2hvdWxkQmUoImFydGljbGUub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsK
KworICAgICAgICAgICAgdmFyIGNoYXB0ZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKKyAgICAgICAgICAgIGFydGljbGUuYXBwZW5kQ2hpbGQoY2hhcHRlcik7CisgICAgICAgICAg
ICBzaG91bGRCZSgiY2hhcHRlci5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOworCisg
ICAgICAgICAgICBhcnRpY2xlLnN0eWxlLnBvc2l0aW9uID0gInJlbGF0aXZlIjsKKyAgICAgICAg
ICAgIHNob3VsZEJlKCJjaGFwdGVyLm9mZnNldFBhcmVudCIsICJhcnRpY2xlIik7CisKKyAgICAg
ICAgICAgIHZhciB0YWJsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRhYmxlIik7CisgICAg
ICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRhYmxlKTsKKworICAgICAgICAgICAg
dmFyIHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsKKyAgICAgICAgICAgIHRhYmxl
LmFwcGVuZENoaWxkKHRkKTsKKworICAgICAgICAgICAgdmFyIHRkQ2hpbGQgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICAgICAgICAgIHRkLmFwcGVuZENoaWxkKHRkQ2hpbGQp
OworICAgICAgICAgICAgc2hvdWxkQmUoInRkQ2hpbGQub2Zmc2V0UGFyZW50IiwgInRkIik7CisK
KyAgICAgICAgICAgIHRkQ2hpbGQuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdyI7CisgICAg
ICAgICAgICBzaG91bGRCZSgidGRDaGlsZC5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIp
OworCisgICAgICAgICAgICBzaG91bGRCZU51bGwoImRvY3VtZW50LmJvZHkub2Zmc2V0UGFyZW50
Iik7CisKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUud2Via2l0Rmxvd0ludG8gPSBu
dWxsOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorCisgICAgICAgIDxkaXYgaWQ9InJl
Z2lvbiIvPgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1pbi1mbG93LXRo
cmVhZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmYz
OWQwYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9v
ZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAK
K1Rlc3Qgb2Zmc2V0UGFyZW50IGZvciBlbGVtZW50cyBpbnNpZGUgYSBuYW1lZCBmbG93LgorCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBhcnRpY2xlLm9mZnNldFBhcmVudCBp
cyBkb2N1bWVudC5ib2R5CitQQVNTIGNoYXB0ZXIub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJv
ZHkKK1BBU1MgY2hhcHRlci5vZmZzZXRQYXJlbnQgaXMgYXJ0aWNsZQorUEFTUyB0ZENoaWxkLm9m
ZnNldFBhcmVudCBpcyB0ZAorUEFTUyB0ZENoaWxkLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5i
b2R5CitQQVNTIGRvY3VtZW50LmJvZHkub2Zmc2V0UGFyZW50IGlzIG51bGwKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0UGFyZW50LWluLWZsb3ctdGhyZWFkLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0UGFyZW50LWluLWZsb3ct
dGhyZWFkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDE5OWI0Mgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQ
YXJlbnQtaW4tZmxvdy10aHJlYWQuaHRtbApAQCAtMCwwICsxLDM5IEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+
CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBvZmZzZXRQ
YXJlbnQgZm9yIGVsZW1lbnRzIGluc2lkZSBhIG5hbWVkIGZsb3cuIikKKworICAgICAgICAgICAg
dmFyIGFydGljbGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICAgICAgICAg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYXJ0aWNsZSk7CisgICAgICAgICAgICBhcnRpY2xl
LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOworICAgICAgICAgICAgc2hvdWxkQmUoImFy
dGljbGUub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKworICAgICAgICAgICAgdmFy
IGNoYXB0ZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICAgICAgICAgIGFy
dGljbGUuYXBwZW5kQ2hpbGQoY2hhcHRlcik7CisgICAgICAgICAgICBzaG91bGRCZSgiY2hhcHRl
ci5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOworCisgICAgICAgICAgICBhcnRpY2xl
LnN0eWxlLnBvc2l0aW9uID0gInJlbGF0aXZlIjsKKyAgICAgICAgICAgIHNob3VsZEJlKCJjaGFw
dGVyLm9mZnNldFBhcmVudCIsICJhcnRpY2xlIik7CisKKyAgICAgICAgICAgIHZhciB0YWJsZSA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRhYmxlIik7CisgICAgICAgICAgICBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKHRhYmxlKTsKKworICAgICAgICAgICAgdmFyIHRkID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgidGQiKTsKKyAgICAgICAgICAgIHRhYmxlLmFwcGVuZENoaWxkKHRkKTsK
KworICAgICAgICAgICAgdmFyIHRkQ2hpbGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKKyAgICAgICAgICAgIHRkLmFwcGVuZENoaWxkKHRkQ2hpbGQpOworICAgICAgICAgICAgc2hv
dWxkQmUoInRkQ2hpbGQub2Zmc2V0UGFyZW50IiwgInRkIik7CisKKyAgICAgICAgICAgIHRkQ2hp
bGQuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdyI7CisgICAgICAgICAgICBzaG91bGRCZSgi
dGRDaGlsZC5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOworCisgICAgICAgICAgICBz
aG91bGRCZU51bGwoImRvY3VtZW50LmJvZHkub2Zmc2V0UGFyZW50Iik7CisgICAgICAgIDwvc2Ny
aXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWstZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWstZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRiODI4N2QKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSw3IEBACitjb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czsK
KworZml0IHZzIGZpdAorZW1wdHkgdnMgZW1wdHkKK2VtcHR5IHZzIGVtcHR5CitQQVNTCitCdWcg
OTI0OTcgLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9w
ZXJseSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay1uZXN0ZWQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWstbmVz
dGVkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40Yjgy
ODdkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292
ZXJzZXQtYnJlYWstbmVzdGVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK2NvbnRlbnQg
d2l0aCBicmVhay1hZnRlcjogYWx3YXlzOworCitmaXQgdnMgZml0CitlbXB0eSB2cyBlbXB0eQor
ZW1wdHkgdnMgZW1wdHkKK1BBU1MKK0J1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92
ZXJzZXQgcHJvcGVydHkgaXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSBy
ZWdpb24gYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9v
dmVyc2V0LWJyZWFrLW5lc3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L292ZXJzZXQtYnJlYWstbmVzdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uZDk4NjVmZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS9vdmVyc2V0LWJyZWFrLW5lc3RlZC5odG1sCkBAIC0wLDAgKzEsNTMgQEAKKworPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5CdWcgOTI0OTcgLSBbQ1NTIFJlZ2lvbnNd
IFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJseSBjb21wdXRlZCB3aGVuIHRo
ZXJlIGlzIGEgcmVnaW9uIGJyZWFrPC90aXRsZT4KKyAgICAgICAgPHN0eWxlIHR5cGU9InRleHQv
Y3NzIj4KKyAgICAgICAgICAgIC5jb250ZW50IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZs
b3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOwor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuY29udGVudCBwOmZpcnN0LWNoaWxkIHsKKyAg
ICAgICAgICAgICAgICAtd2Via2l0LXJlZ2lvbi1icmVhay1hZnRlcjogYWx3YXlzOworICAgICAg
ICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRlbTsgLypzaG91bGRuJ3Qgc3BpbGwgb3ZlciB0aGUg
Zm9yY2VkIGJyZWFrKi8KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmNvbnRhaW5lciB7
CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7CisgICAgICAgICAgICAg
ICAgd2lkdGg6MjUwcHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OjEyMHB4OworICAgICAgICAg
ICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ7CisgICAgICAgICAgICAgICAgbWFyZ2luLXRv
cDogMWVtOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmFpbCAjcGFzcywgLnBhc3Mg
I2ZhaWwgeyBkaXNwbGF5OiBub25lOyB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgor
CisgICAgPGJvZHk+CisgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPjxkaXY+PGRpdj48cD5j
b250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czs8L3A+PC9kaXY+PC9kaXY+PC9kaXY+CisK
KyAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjEiPjwvZGl2PiA8ZGl2IGlkPSJv
dmVyc2V0MSI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9
ImNvbnRhaW5lciIgaWQ9InIyIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDIiPmV4cGxhbmF0aW9u
IGdvZXMgaGVyZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMyI+
PC9kaXY+IDxkaXYgaWQ9Im92ZXJzZXQzIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KKwor
ICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBpZih3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKyAgICAgICAgICAgIHZhciByMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMSIpLndl
YmtpdFJlZ2lvbk92ZXJzZXQ7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
b3ZlcnNldDEiKS5pbm5lckhUTUwgPSByMSArICIgdnMgZml0IjsKKyAgICAgICAgICAgIHZhciBy
MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMiIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7Cisg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDIiKS5pbm5lckhUTUwg
PSByMiArICIgdnMgZW1wdHkiOworICAgICAgICAgICAgdmFyIHIzID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInIzIikud2Via2l0UmVnaW9uT3ZlcnNldDsKKyAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJvdmVyc2V0MyIpLmlubmVySFRNTCA9IHIzICsgIiB2cyBlbXB0eSI7
CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9IChyMSA9PSAiZml0IiAmJiBy
MiA9PSAiZW1wdHkiICYmIHIzID09ICJlbXB0eSIpID8gInBhc3MiIDogImZhaWwiOworICAgICAg
ICA8L3NjcmlwdD4KKworICAgICAgICA8ZGl2IGlkPSJwYXNzIj5QQVNTPC9kaXY+CisgICAgICAg
IDxkaXYgaWQ9ImZhaWwiPkZBSUw8L2Rpdj4KKworICAgICAgICA8cD48YSBocmVmPSJodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTI0OTciPkJ1ZyA5MjQ5NzwvYT4gLSBb
Q1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJseSBjb21w
dXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrPC9wPgorCisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQt
YnJlYWstd2l0aC1zaWJsaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGluZy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTU4ZjBlMwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGluZy1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitjb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFs
d2F5czsKKworMm5kIHAKKworZml0IHZzIGZpdAorZml0IHZzIGZpdAorZW1wdHkgdnMgZW1wdHkK
K1BBU1MKK0J1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJzZXQgcHJvcGVydHkg
aXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdpb24gYnJlYWsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLXdp
dGgtc2libGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQt
YnJlYWstd2l0aC1zaWJsaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uOGRmMzhhOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGluZy5odG1sCkBAIC0wLDAgKzEsNTIgQEAKKzwh
ZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDx0aXRsZT5CdWcgOTI0
OTcgLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJs
eSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrPC90aXRsZT4KKyAgICAgICAg
PHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKyAgICAgICAgICAgIC5jb250ZW50IHsKKyAgICAgICAg
ICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiAjZGRkOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuY29udGVudCBw
IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXJlZ2lvbi1icmVhay1hZnRlcjogYWx3YXlzOwor
ICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRlbTsgLypzaG91bGRuJ3Qgc3BpbGwgb3Zl
ciB0aGUgZm9yY2VkIGJyZWFrKi8KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmNvbnRh
aW5lciB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7CisgICAgICAg
ICAgICAgICAgd2lkdGg6MjUwcHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OjEyMHB4OworICAg
ICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ7CisgICAgICAgICAgICAgICAgbWFy
Z2luLXRvcDogMWVtOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmFpbCAjcGFzcywg
LnBhc3MgI2ZhaWwgeyBkaXNwbGF5OiBub25lOyB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9o
ZWFkPgorICAgIDxib2R5PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij48cD5jb250ZW50
IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czs8L3A+PHA+Mm5kIHA8L3A+PC9kaXY+CisKKyAgICAg
ICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjEiPjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0
MSI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRh
aW5lciIgaWQ9InIyIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDIiPmV4cGxhbmF0aW9uIGdvZXMg
aGVyZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMyI+PC9kaXY+
IDxkaXYgaWQ9Im92ZXJzZXQzIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KKworICAgICAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBpZih3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAg
ICAgICAgICAgIHZhciByMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMSIpLndlYmtpdFJl
Z2lvbk92ZXJzZXQ7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNl
dDEiKS5pbm5lckhUTUwgPSByMSArICIgdnMgZml0IjsKKyAgICAgICAgICAgIHZhciByMiA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMiIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7CisgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDIiKS5pbm5lckhUTUwgPSByMiAr
ICIgdnMgZml0IjsKKyAgICAgICAgICAgIHZhciByMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyMyIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgib3ZlcnNldDMiKS5pbm5lckhUTUwgPSByMyArICIgdnMgZW1wdHkiOworICAgICAg
ICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSAocjEgPT0gImZpdCIgJiYgcjIgPT0gImZp
dCIgJiYgcjMgPT0gImVtcHR5IikgPyAicGFzcyIgOiAiZmFpbCI7CisgICAgICAgIDwvc2NyaXB0
PgorCisgICAgICAgIDxkaXYgaWQ9InBhc3MiPlBBU1M8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0i
ZmFpbCI+RkFJTDwvZGl2PgorCisgICAgICAgIDxwPjxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MjQ5NyI+QnVnIDkyNDk3PC9hPiAtIFtDU1MgUmVnaW9u
c10gUmVnaW9uIG92ZXJzZXQgcHJvcGVydHkgaXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4g
dGhlcmUgaXMgYSByZWdpb24gYnJlYWs8L3A+CisKKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWsuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDQxMGMwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWsuaHRtbApAQCAt
MCwwICsxLDUzIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0
eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwv
dGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAgICAuY29u
dGVudCB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgLmNvbnRlbnQgcDpmaXJzdC1jaGlsZCB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1y
ZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKKyAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9t
OiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVhayovCisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIC5jb250YWluZXIgeworICAgICAgICAgICAgICAgIC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgICAgIHdpZHRoOjI1MHB4OworICAgICAg
ICAgICAgICAgIGhlaWdodDoxMjBweDsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xp
ZCAjNDQ0OworICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKKyAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlzcGxheTogbm9uZTsg
fQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAgICA8
ZGl2IGNsYXNzPSJjb250ZW50Ij48cD5jb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czs8
L3A+PC9kaXY+CisKKyAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjEiPjwvZGl2
PiA8ZGl2IGlkPSJvdmVyc2V0MSI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+CisgICAgICAg
IDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9InIyIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDIi
PmV4cGxhbmF0aW9uIGdvZXMgaGVyZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWlu
ZXIiIGlkPSJyMyI+PC9kaXY+IDxkaXYgaWQ9Im92ZXJzZXQzIj5leHBsYW5hdGlvbiBnb2VzIGhl
cmU8L2Rpdj4KKworICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgICAgICBpZih3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgIHZhciByMSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyMSIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgib3ZlcnNldDEiKS5pbm5lckhUTUwgPSByMSArICIgdnMgZml0IjsKKyAgICAg
ICAgICAgIHZhciByMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMiIpLndlYmtpdFJlZ2lv
bk92ZXJzZXQ7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDIi
KS5pbm5lckhUTUwgPSByMiArICIgdnMgZW1wdHkiOworICAgICAgICAgICAgdmFyIHIzID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInIzIikud2Via2l0UmVnaW9uT3ZlcnNldDsKKyAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyc2V0MyIpLmlubmVySFRNTCA9IHIzICsg
IiB2cyBlbXB0eSI7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9IChyMSA9
PSAiZml0IiAmJiByMiA9PSAiZW1wdHkiICYmIHIzID09ICJlbXB0eSIpID8gInBhc3MiIDogImZh
aWwiOworICAgICAgICA8L3NjcmlwdD4KKworICAgICAgICA8ZGl2IGlkPSJwYXNzIj5QQVNTPC9k
aXY+CisgICAgICAgIDxkaXYgaWQ9ImZhaWwiPkZBSUw8L2Rpdj4KKworICAgICAgICA8cD48YSBo
cmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTI0OTciPkJ1ZyA5
MjQ5NzwvYT4gLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBw
cm9wZXJseSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrPC9wPgorCisgICAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL3JlZ2lvbi1yYW5nZS1mb3ItYm94LWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFzaC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU2NzIxOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9y
LWJveC1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitCdWcgNzQ3ODE6IENyYXNo
IGluIFJlbmRlckZsb3dUaHJlYWQ6OmdldFJlZ2lvblJhbmdlRm9yQm94CisKK1RoaXMgdGVzdCBQ
QVNTRVMgaWYgaXQgZG9lcyBub3QgQ1JBU0ggb3IgQVNTRVJULgorCitBCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vcmVnaW9uLXJhbmdlLWZvci1ib3gtY3Jhc2gu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9yLWJv
eC1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2ZTQ0YmQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vcmVnaW9u
LXJhbmdlLWZvci1ib3gtY3Jhc2guaHRtbApAQCAtMCwwICsxLDQyIEBACis8IWRvY3R5cGUgaHRt
bD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAgICAjZWww
IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogYTsKKyAgICAgICAgICAgICAg
ICBjb250ZW50OiBjb3VudGVyKGMpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgI2VsMiB7
CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGE7CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisK
KyAgICAgICAgICAgIGZ1bmN0aW9uIGNyYXNoKCkgeworICAgICAgICAgICAgICAgIGVsMCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAgICAgICAgIGVsMC5zZXRBdHRy
aWJ1dGUoJ2lkJywgJ2VsMCcpOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoZWwwKTsKKyAgICAgICAgICAgICAgICBlbDEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdkaXYnKTsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsMSk7
CisgICAgICAgICAgICAgICAgZWwyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cisg
ICAgICAgICAgICAgICAgZWwyLnNldEF0dHJpYnV0ZSgnaWQnLCAnZWwyJyk7CisgICAgICAgICAg
ICAgICAgZWwxLmFwcGVuZENoaWxkKGVsMik7CisgICAgICAgICAgICAgICAgZWwyLmFwcGVuZENo
aWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCdBJykpOworICAgICAgICAgICAgICAgIGVsMyA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7CisgICAgICAgICAgICAgICAgZWwzLnNl
dEF0dHJpYnV0ZSgnaWQnLCAnZWwzJyk7CisgICAgICAgICAgICAgICAgZWwyLmFwcGVuZENoaWxk
KGVsMyk7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS56b29tPTI7CisgICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ3NlbGVjdGFsbCcpOworICAgICAgICAg
ICAgICAgIGVsMi5zdHlsZS5kaXNwbGF5PSd0YWJsZS1oZWFkZXItZ3JvdXAnOworICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUuem9vbT0xOworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgd2luZG93Lm9ubG9hZD1jcmFzaAorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+
CisgICAgPGJvZHk+CisgICAgICAgIDxwPiBCdWcgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NzgxIj43NDc4MTwvYT46IENyYXNoIGluIFJlbmRlckZs
b3dUaHJlYWQ6OmdldFJlZ2lvblJhbmdlRm9yQm94PC9wPgorICAgICAgICA8cD4gVGhpcyB0ZXN0
IFBBU1NFUyBpZiBpdCBkb2VzIG5vdCBDUkFTSCBvciBBU1NFUlQuPC9wPgorICAgIDwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJr
aXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iM2YxYTYzCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitQQVNTCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctY29sbGVjdGlvbi1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi45ZTBlNzVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2gu
aHRtbApAQCAtMCwwICsxLDMxIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFk
PgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAgICAjY29udGVudCB7IC13ZWJraXQtZmxvdy1p
bnRvOiBmbG93OyB9CisgICAgICAgICAgICAjY29udGFpbmVyIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3c7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDt9CisgICAgICAgIDwvc3R5bGU+Cisg
ICAgPC9oZWFkPgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorICAgIDxib2R5PgorICAgICAgICA8ZGl2IGlkPSJjb250ZW50Ij48
L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iY29udGFpbmVyIj48L2Rpdj4KKyAgICAgICAgPHNjcmlw
dD4KKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHZhciBuYW1lZEZsb3dDb2xsZWN0aW9uID0gZG9jdW1l
bnQud2Via2l0R2V0TmFtZWRGbG93cygpOworICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNo
aWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250ZW50IikpOworICAgICAgICBkb2N1bWVu
dC5ib2R5LnJlbW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXIiKSk7
CisgICAgICAgIAorICAgICAgICAvLyBGb3JjZSBhIHJlLWxheW91dCBldmVudCwgd2hpY2ggZm9y
Y2VzIHRoZSBkZWxldGlvbiBvZiB0aGUgdW5kZXJseWluZyBOYW1lZEZsb3cuCisgICAgICAgIGRv
Y3VtZW50LmJvZHkub2Zmc2V0VG9wOworICAgICAgICAKKyAgICAgICAgdmFyIG5hbWVkRmxvdyA9
IG5hbWVkRmxvd0NvbGxlY3Rpb24uZmxvdzsKKyAgICAgICAgaWYgKG5hbWVkRmxvdy5uYW1lID09
ICJmbG93IikKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0ID0gIlBBU1MiOwor
ICAgICAgICBlbHNlCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmlubmVyVGV4dCA9ICJGQUlM
IjsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PiAKKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
Y29sbGVjdGlvbi1lbXB0eS1nZXR0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5LWdldHRlcnMt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3NWExNGIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1lbXB0eS1nZXR0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEzIEBACitUZXN0IGZvciBbMTE4NTYxXSBOYW1lZEZsb3dDb2xsZWN0aW9uIGdldHRlcnMg
c2hvdWxkIGZvbGxvdyB0aGUgc2FtZSBwYXR0ZXJuIGFzIEhUTUxDb2xsZWN0aW9uCisKK09uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIG5hbWVkRmxvd0NvbGxlY3Rpb25bMF0gaXMg
dW5kZWZpbmVkLgorUEFTUyBuYW1lZEZsb3dDb2xsZWN0aW9uWydmbG93J10gaXMgdW5kZWZpbmVk
LgorUEFTUyBuYW1lZEZsb3dDb2xsZWN0aW9uLml0ZW0oMCkgaXMgbnVsbAorUEFTUyBuYW1lZEZs
b3dDb2xsZWN0aW9uLm5hbWVkSXRlbSgnZmxvdycpIGlzIG51bGwKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1lbXB0eS1n
ZXR0ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctY29sbGVjdGlvbi1lbXB0eS1nZXR0ZXJzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZmJjYTdmYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5LWdldHRl
cnMuaHRtbApAQCAtMCwwICsxLDE2IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxi
b2R5PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGRlc2NyaXB0aW9u
KCJUZXN0IGZvciA8YSBocmVmPSdodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTE4NTYxJz5bMTE4NTYxXSBOYW1lZEZsb3dDb2xsZWN0aW9uIGdldHRlcnMgc2hvdWxkIGZv
bGxvdyB0aGUgc2FtZSBwYXR0ZXJuIGFzIEhUTUxDb2xsZWN0aW9uPC9hPiIpOworCisgICAgICAg
ICAgICB2YXIgbmFtZWRGbG93Q29sbGVjdGlvbiA9IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxv
d3MoKTsKKyAgICAgICAgICAgIHNob3VsZEJlVW5kZWZpbmVkKCJuYW1lZEZsb3dDb2xsZWN0aW9u
WzBdIik7CisgICAgICAgICAgICBzaG91bGRCZVVuZGVmaW5lZCgibmFtZWRGbG93Q29sbGVjdGlv
blsnZmxvdyddIik7CisgICAgICAgICAgICBzaG91bGRCZU51bGwoIm5hbWVkRmxvd0NvbGxlY3Rp
b24uaXRlbSgwKSIpOworICAgICAgICAgICAgc2hvdWxkQmVOdWxsKCJuYW1lZEZsb3dDb2xsZWN0
aW9uLm5hbWVkSXRlbSgnZmxvdycpIik7CisgICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+IAor
ICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45Y2U0NTYwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWNvbGxlY3Rpb24tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjAgQEAKK1Rlc3Rz
IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gaW50ZXJmYWNlCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitUZXN0IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gbGVuZ3RoIHByb3Bl
cnR5CitQQVNTIGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGggaXMgMAorUEFT
UyByZWdpb24xLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cxJzsgZG9jdW1lbnQud2Via2l0
R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbjIuc3R5bGUud2Via2l0Rmxv
d0Zyb20gPSAnZmxvdzInOyBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIGlz
IDIKK1BBU1MgcmVnaW9uMS5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICcnOyBkb2N1bWVudC53ZWJr
aXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uMi5zdHlsZS53ZWJraXRG
bG93RnJvbSA9ICcnOyBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIGlzIDAK
K1Rlc3QgV2ViS2l0TmFtZWRGbG93Q29sbGVjdGlvbiBpbmRleCBnZXR0ZXIKK1BBU1MgKGRvY3Vt
ZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVswXS5uYW1lID09ICdmbG93MScgJiYgZG9jdW1lbnQu
d2Via2l0R2V0TmFtZWRGbG93cygpWzFdLm5hbWUgPT0gJ2Zsb3cyJykgICAgICAgICB8fCAoZG9j
dW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpWzBdLm5hbWUgPT0gJ2Zsb3cyJyAmJiBkb2N1bWVu
dC53ZWJraXRHZXROYW1lZEZsb3dzKClbMV0ubmFtZSA9PSAnZmxvdzEnKSBpcyB0cnVlCitUZXN0
IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gbmFtZSBnZXR0ZXIKK1BBU1MgZG9jdW1lbnQud2Vi
a2l0R2V0TmFtZWRGbG93cygpLmZsb3cxLm5hbWUgaXMgImZsb3cxIgorUEFTUyBkb2N1bWVudC53
ZWJraXRHZXROYW1lZEZsb3dzKCkuZmxvdzIubmFtZSBpcyAiZmxvdzIiCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24uaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xs
ZWN0aW9uLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzNhMGU2YQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1jb2xsZWN0aW9uLmh0bWwKQEAgLTAsMCArMSw0NyBAQAorPCFkb2N0eXBlIGh0
bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBX
ZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGludGVyZmFjZSIpCisgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIHZhciByZWdp
b24xID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgdmFyIHJlZ2lvbjIgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKworICAgIGRlYnVnKCJUZXN0IFdlYktpdE5h
bWVkRmxvd0NvbGxlY3Rpb24gbGVuZ3RoIHByb3BlcnR5Iik7CisKKyAgICBzaG91bGRCZSgiZG9j
dW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCIsICIwIik7CisKKyAgICBkb2N1bWVu
dC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjEpOworICAgIHNob3VsZEJlKCJyZWdpb24xLnN0eWxl
LndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cxJzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygp
Lmxlbmd0aCIsICIxIik7CisKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjIp
OworICAgIHNob3VsZEJlKCJyZWdpb24yLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cyJzsg
ZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCIsICIyIik7CisKKyAgICBkb2N1
bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbjEpOworICAgIHNob3VsZEJlKCJyZWdpb24xLnN0
eWxlLndlYmtpdEZsb3dGcm9tID0gJyc7IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5s
ZW5ndGgiLCAiMSIpOworCisgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb24yKTsK
KyAgICBzaG91bGRCZSgicmVnaW9uMi5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICcnOyBkb2N1bWVu
dC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIiwgIjAiKTsKKworICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQocmVnaW9uMSk7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChy
ZWdpb24yKTsKKyAgICByZWdpb24xLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cxJzsKKyAg
ICByZWdpb24yLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cyJzsKKworICAgIGRlYnVnKCJU
ZXN0IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gaW5kZXggZ2V0dGVyIik7CisgICAgc2hvdWxk
QmVUcnVlKCIoZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpWzBdLm5hbWUgPT0gJ2Zsb3cx
JyAmJiBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKClbMV0ubmFtZSA9PSAnZmxvdzInKSBc
CisgICAgICAgIHx8IChkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKClbMF0ubmFtZSA9PSAn
ZmxvdzInICYmIGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVsxXS5uYW1lID09ICdmbG93
MScpIik7CisKKyAgICBkZWJ1ZygiVGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIG5hbWUg
Z2V0dGVyIik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC53ZWJraXRHZXRO
YW1lZEZsb3dzKCkuZmxvdzEubmFtZSIsICJmbG93MSIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygiZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmZsb3cyLm5hbWUiLCAiZmxvdzIi
KTsKKworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocmVnaW9uMSk7CisgICAgZG9jdW1l
bnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb24yKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LWFkZC10by1mbG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGIwMWQzZgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFt
ZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMiBAQAor
VGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKyBGbG93IGNvbnRlbnQKK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUi
CitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUEFTUyBldmVudENvdW50IGlz
IDIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtYWRkLXRvLWZsb3cuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc4NDI0MzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZs
b3cuaHRtbApAQCAtMCwwICsxLDc3IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisjYXJ0aWNsZSB7Cisg
ICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7CisgICAgYm9yZGVyOiAycHggc29saWQgYmxh
Y2s7Cit9CisjcmVnaW9uXzEgeworICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOwor
ICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKKyAgICB2ZXJ0
aWNhbC1hbGlnbjp0b3A7CisgICAgbWFyZ2luOjEwcHg7Cit9CisuYmxvY2sgeworICAgZGlzcGxh
eTpibG9jazsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoy
MDBweDsgbWFyZ2luOiA1cHg7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDt9Cis8L3N0eWxlPgorPC9o
ZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJkZXNjcmlwdGlvbiIgY2xhc3M9ImJsb2NrIj48L2Rpdj4K
KzxkaXYgaWQ9ImFydGljbGUiPgorICAgIDxkaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQi
IHN0eWxlPSJoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2Pgor
ICAgIDwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9
InJlZ2lvbl8yIj48L2Rpdj4KKworPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rp
dj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5n
ZSBldmVudCIpCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAg
ICB9CisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGZ1bmN0aW9uIGZsb3dD
b250ZW50KHJlZ2lvbiwgZmxvd05hbWUpIHsKKyAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZChyZWdpb24pOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxv
d05hbWU7CisgICAgfQorCisgICAgdmFyIGV2ZW50Q291bnQgPSAwOworICAgIGZ1bmN0aW9uIGZp
bmlzaFRlc3QoKSB7CisgICAgICAgIHNob3VsZEJlKCJldmVudENvdW50IiwgIjIiKTsKKyAgICAg
ICAgZmluaXNoSlNUZXN0KCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENo
YW5nZWQoZXZlbnQpIHsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJn
ZXQubmFtZSIsICJhcnRpY2xlIik7CisgICAgICAgIAorICAgICAgICBpZiAoKytldmVudENvdW50
ID4gMSkgeworICAgICAgICAgICAgLy8gdGhpcyBzaG91bGQgYmUgcmVhY2hlZCBhZnRlciByZWdp
b25fMiBpcyBhZGRlZCB0byBmbG93CisgICAgICAgICAgICBmaW5pc2hUZXN0KCk7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGZsb3dDb250ZW50KCJy
ZWdpb25fMiIsICJhcnRpY2xlIik7IC8vIHRoaXMgd2lsbCB0cmlnZ2VyIGEgbmV3IHJvdW5kIG9m
IGV2ZW50cyBkdWUgdG8gbGF5b3V0CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkg
eworICAgICAgICB2YXIgZmxvdyA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKKyAgICAgICAg
Zmxvdy5hZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9u
T3ZlcnNldENoYW5nZWQpOworICAgICAgICAKKyAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIp
OworICAgICAgICBmbG93Q29udGVudCgicmVnaW9uXzEiLCAiYXJ0aWNsZSIpOworICAgIH0KKyAg
ICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7Cis8L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRvLWhlaWdodC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQt
YXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjU1Zjc1OTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTIgQEAKK1Rlc3RzIHRoZSByZWdpb25PdmVyc2V0Q2hhbmdlIGV2ZW50IGZvciBy
ZWdpb25zIHdpdGggaGVpZ2h0OmF1dG8KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K0Zsb3dpbmcgY29udGVudCBpbnRvIHJlZ2lvbnMuLi4KK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUg
aXMgImFydGljbGUiCitQQVNTIGV2ZW50RmlyZWRDb3VudCBpcyAxCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKyAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRvLWhlaWdo
dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LWF1dG8taGVpZ2h0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uMTJlNjI5NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRvLWhlaWdodC5odG1sCkBAIC0wLDAgKzEs
ODkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0Pgor
PHN0eWxlPgorICAgICNhcnRpY2xlIHsKKyAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGFydGlj
bGU7CisgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKKyAgICB9CisgICAgI3JlZ2lv
bl8xLCAjcmVnaW9uXzIgeworICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsK
KyAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsK
KyAgICAgICAgdmVydGljYWwtYWxpZ246dG9wOworICAgICAgICBtYXJnaW46MTBweDsKKyAgICAg
ICAgaGVpZ2h0OmF1dG87CisgICAgICAgIHdpZHRoOjIwMHB4OworICAgICAgICBib3JkZXI6IDFw
eCBzb2xpZCByZWQ7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICB9CisgICAgLmNvbnRlbnQg
eworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICAgICAgYm9yZGVyOiAzcHgg
ZGFzaGVkIGJsdWU7CisgICAgfQorICAgICNwYXJ0MSB7CisgICAgICAgIGhlaWdodDogMTgwcHg7
CisgICAgfQorICAgICNwYXJ0MiB7CisgICAgICAgIC13ZWJraXQtcmVnaW9uLWJyZWFrLWJlZm9y
ZTogYWx3YXlzOworICAgICAgICBoZWlnaHQ6IDE2MHB4OworICAgIH0KKzwvc3R5bGU+Cis8L2hl
YWQ+Cis8Ym9keT4KKyAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICAgICAgPGRpdj4KKyAgICAg
ICAgICAgIDxkaXYgaWQ9InBhcnQxIiBjbGFzcz0iY29udGVudCI+PC9kaXY+CisgICAgICAgICAg
ICA8ZGl2IGlkPSJwYXJ0MiIgY2xhc3M9ImNvbnRlbnQiPjwvZGl2PgorICAgICAgICA8L2Rpdj4K
KyAgICA8L2Rpdj4KKworICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKyAgICA8ZGl2IGlk
PSJyZWdpb25fMiI+PC9kaXY+CisKKyAgICA8c2NyaXB0PgorCisgICAgICAgIGRlc2NyaXB0aW9u
KCJUZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBmb3IgcmVnaW9ucyB3aXRoIGhl
aWdodDphdXRvIik7CisKKyAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOworICAgICAgICB9CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0g
dHJ1ZTsKKyAgICAgICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKKyAgICAgICAg
ICAgIHZhciByZWdpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAg
ICAgICAgICAgIHJlZ2lvbi5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAg
ICAgICAgcmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAg
ICAgICAgICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAg
fQorCisgICAgICAgIHZhciBldmVudEZpcmVkQ291bnQgPSAwOworICAgICAgICBmdW5jdGlvbiBm
aW5pc2hUZXN0KCkgeworICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50RmlyZWRDb3VudCIsICIx
Iik7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1
bmN0aW9uIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7CisgICAgICAgIAkrK2V2ZW50Rmly
ZWRDb3VudDsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0
Lm5hbWUiLCAiYXJ0aWNsZSIpOworICAgICAgICAgICAgCisgICAgICAgICAgICAvLyB3YWl0IGFu
ZCBtYWtlIHN1cmUgbm8gb3RoZXIgZXZlbnRzIGFycml2ZQorICAgICAgICAgICAgc2V0VGltZW91
dCgiZmluaXNoVGVzdCgpIiwgMjAwKTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIHN0
YXJ0VGVzdCgpIHsgICAgCisgICAgICAgICAgICB2YXIgZmxvd1RocmVhZCA9IGdldEZsb3dCeU5h
bWUoImFydGljbGUiKTsKKyAgICAgICAgICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigi
d2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAgICAg
ICAgICAgIAorICAgICAgICAgICAgZGVidWcoIkZsb3dpbmcgY29udGVudCBpbnRvIHJlZ2lvbnMu
Li4iKTsKKyAgICAgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7CisgICAgICAgIH0KKwor
ICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7CisgICAg
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNoLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uNjRkOTQ5YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw5IEBACitUaGUgdGVzdCBwYXNzZXMgaWYgdGhlcmUgaXMgbm8gY3Jhc2ggb3IgYXNzZXJ0
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNo
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTUyYjhmNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1jcmFzaC5odG1sCkBAIC0wLDAgKzEsNjMgQEAKKzwhZG9jdHlwZSBodG1sPgor
PGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICAg
ICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgYm9keSwgaHRtbCB7CisgICAgICAgICAgICB3
aWR0aDogNTAwcHg7CisgICAgICAgICAgICBoZWlnaHQ6IDUwMHB4OworICAgICAgICB9CisgICAg
ICAgICNjb250ZW50IHsKKyAgICAgICAgICAgIHdpZHRoOiAxMDAlOworICAgICAgICAgICAgaGVp
Z2h0OiAxMDAlOworICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAg
IH0KKyAgICAgICAgI3JlZ2lvbiB7CisgICAgICAgICAgICB3aWR0aDogMTAwJTsKKyAgICAgICAg
ICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93Owor
ICAgICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAg
ICAgICA8ZGl2IGlkPSJjb250ZW50Ij4KKyAgICAgICAgICAgIEhlbGxvIGNyYXNoIQorICAgICAg
ICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uIj4KKyAgICAgICAgPC9kaXY+CisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgIGRlc2NyaXB0aW9uKCJUaGUgdGVzdCBwYXNzZXMgaWYgdGhl
cmUgaXMgbm8gY3Jhc2ggb3IgYXNzZXJ0LiIpOworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlv
biBkdW1teUhhbmRsZXIgKGV2dCkgeworICAgICAgICAgICAgZXZ0LnRhcmdldC5yZW1vdmVFdmVu
dExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgZHVtbXlIYW5kbGVyKTsKKyAg
ICAgICAgICAgIGRlYnVnKCJUaGlzIGxpbmUgc2hvdWxkIG5vdCBhcHBlYXIhIik7CisgICAgICAg
IH0KKworICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgdmFyIG5h
bWVkRmxvd3MgPSBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCk7CisgICAgICAgICAgICBu
YW1lZEZsb3dzWyJmbG93Il0uYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNo
YW5nZSIsIGR1bW15SGFuZGxlcik7CisgICAgICAgICAgICB2YXIgY29udGVudCA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJjb250ZW50Iik7CisgICAgICAgICAgICB2YXIgcmVnaW9uID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpOworICAgICAgICAgICAgY29udGVudC5zdHls
ZS5oZWlnaHQgPSAiNjAwcHgiOworCisgICAgICAgICAgICAvLyBTY2hlZHVsZSBhIHJlZ2lvbm92
ZXJzZXRjaGFuZ2UgZXZlbnQuCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNldFRvcDsK
KworICAgICAgICAgICAgLy8gVHJhbnNpdGlvbiB0aGUgZmxvdyB0byB0aGUgIk5VTEwiIHN0YXRl
LgorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChjb250ZW50KTsKKyAgICAg
ICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocmVnaW9uKTsKKworICAgICAgICAgICAg
c2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAg
ICAgICAgICAgfSwwKQorICAgICAgICB9LCAwKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43Yzc5MzM5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUZXN0cyByZWdpb25PdmVy
c2V0Q2hhbmdlIGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworIAorRmxvdyBj
b250ZW50CitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdp
b25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44MjBiZDk1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK1Rlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2Ug
YmVpbmcgZGlzcGF0Y2hlZCB3aGVuIHRoZSByZWdpb24gY2hhaW4gaXMgcmVtb3ZlZAorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworRmxvdyBjb250ZW50CitQQVNTIGV2ZW50LnRhcmdl
dC5uYW1lIGlzICJhcnRpY2xlIgorUmVtb3ZpbmcgcmVnaW9uIDEKK1JlbW92aW5nIHJlZ2lvbiAy
CitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUEFTUyBldmVudENvdW50IGlz
IDIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtbm8tcmVnaW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5lMzU5NmZhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMu
aHRtbApAQCAtMCwwICsxLDg2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVy
LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyNhcnRpY2xlIHsKKyAgICAtd2Via2l0LWZsb3ctaW50
bzogYXJ0aWNsZTsKKyAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKK30KKyNyZWdpb25fMSwg
I3JlZ2lvbl8yeworICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOworICAgIG92ZXJm
bG93OmhpZGRlbjsKKyAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKKyAgICB2ZXJ0aWNhbC1hbGln
bjp0b3A7CisgICAgbWFyZ2luOjEwcHg7Cit9CisuYmxvY2sgeworICAgZGlzcGxheTpibG9jazsK
K30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgbWFy
Z2luOiA1cHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iYXJ0aWNsZSI+
CisgICAgPGRpdj4KKyAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjAw
cHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4K
KworPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgorPGRpdiBpZD0iY29udGFpbmVyMiI+CisgICAg
PGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorPC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3Jp
cHRpb24oIlRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgYmVpbmcgZGlzcGF0Y2hlZCB3aGVuIHRo
ZSByZWdpb24gY2hhaW4gaXMgcmVtb3ZlZCIpOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1bm5lci53
YWl0VW50aWxEb25lKCk7CisgICAgfQorCisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OworICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7CisgICAgICAgIHZhciByID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7CisgICAgICAgIHIuc3R5bGUud2Vi
a2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb25fMiIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05h
bWU7CisgICAgfQorCisgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKKyAgICAgICAgc2hvdWxk
QmUoImV2ZW50Q291bnQiLCAiMiIpOworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9CisK
KyAgICB2YXIgZXZlbnRDb3VudCA9IDA7CisgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5n
ZWQoZXZlbnQpIHsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQu
bmFtZSIsICJhcnRpY2xlIik7CisgICAgICAgIGlmICgrK2V2ZW50Q291bnQgPiAxKSB7CisgICAg
ICAgICAgIGV2ZW50LnRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVy
c2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5nZWQpOworICAgICAgICAgICBmaW5pc2hUZXN0
KCk7CisgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIGRlYnVnKCJSZW1v
dmluZyByZWdpb24gMSIpOworICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb25fMSIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vLWFydGlj
bGUiOworICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uIDIiKTsKKyAgICAgICAgciA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgICAgICByLnN0eWxlLndlYmtp
dEZsb3dGcm9tID0gIm5vLWFydGljbGUiOworICAgIH0KKworICAgIGZ1bmN0aW9uIHN0YXJ0VGVz
dCgpIHsKKyAgICAgICAgdmFyIGZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisgICAg
ICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJl
Z2lvbk92ZXJzZXRDaGFuZ2VkKTsKKworICAgICAgICBkZWJ1ZygiRmxvdyBjb250ZW50Iik7Cisg
ICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7CisgICAgfQorICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKKworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtbm8tb3ZlcnNldC1jaGFuZ2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YjI5NDY4Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDEzIEBACitUZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBmb3Ig
cmVnaW9ucyBpbnNpZGUgZmxleGJveGVzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitGbG93aW5nIGNvbnRlbnQgaW50byByZWdpb25zLi4uCitQQVNTIGV2ZW50LnRhcmdldC5uYW1l
IGlzICJhcnRpY2xlIgorRW5nYWdpbmcgZmxleGJveC4uLgorUEFTUyBldmVudEZpcmVkQ291bnQg
aXMgMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lv
bi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uMTU5NDA0MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJv
eC1uby1vdmVyc2V0LWNoYW5nZS5odG1sCkBAIC0wLDAgKzEsMTE1IEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICAjYXJ0aWNs
ZSB7CisgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgICAgICBib3JkZXI6
IDEwcHggc29saWQgYmxhY2s7CisgICAgfQorICAgICNyZWdpb25fMSwgI3JlZ2lvbl8yIHsKKyAg
ICAgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7CisgICAgICAgIG92ZXJmbG93Omhp
ZGRlbjsKKyAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgICAgIHZlcnRpY2FsLWFs
aWduOnRvcDsKKyAgICAgICAgbWFyZ2luOjEwcHg7CisgICAgICAgIGhlaWdodDoxOTBweDsKKyAg
ICAgICAgd2lkdGg6MjAwcHg7CisgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJlZDsKKyAgICAg
ICAgcGFkZGluZzogNXB4OworICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTsKKyAgICAgICAg
LXdlYmtpdC1mbGV4LWJhc2lzOiAxMDAlOworICAgIH0KKyAgICAjcmVnaW9uXzIgeworICAgICAg
ICAtd2Via2l0LWZsZXgtYmFzaXM6IDMwJTsKKyAgICB9CisgICAgLmNvbnRlbnQgeworICAgICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICAgICAgYm9yZGVyOiAzcHggZGFzaGVkIGJs
dWU7CisgICAgICAgIG1hcmdpbjogNXB4OworICAgIH0KKyAgICAjcGFydDEgeworICAgICAgICBo
ZWlnaHQ6IDE0MHB4OworICAgIH0KKyAgICAjcGFydDIgeworICAgICAgICBoZWlnaHQ6IDE2MHB4
OworICAgIH0KKyAgICAjZmxleGJveCB7CisgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGdyZWVu
OworICAgICAgICBtYXJnaW46IDVweDsKKyAgICB9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+
CisgICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgIDxkaXY+CisgICAgICAgICAgICA8ZGl2
IGlkPSJwYXJ0MSIgY2xhc3M9ImNvbnRlbnQiPjwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0i
cGFydDIiIGNsYXNzPSJjb250ZW50Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgPC9kaXY+
CisKKyAgICA8ZGl2IGlkPSJmbGV4Ym94Ij4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uXzEiPjwv
ZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+CisgICAgPC9kaXY+CisKKyAg
ICA8c2NyaXB0PgorCisgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0cyB0aGUgcmVnaW9uT3ZlcnNl
dENoYW5nZSBldmVudCBmb3IgcmVnaW9ucyBpbnNpZGUgZmxleGJveGVzIik7CisKKyAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB9
CisgICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICAgICAgZnVuY3Rpb24g
Zmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKKyAgICAgICAgICAgIHZhciByZWdpb24gPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICAgICAgICAgIHJlZ2lvbi5zdHlsZS53
ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICAgICAgcmVnaW9uID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAgICAgICAgICByZWdpb24uc3R5bGUud2Vi
a2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAgfQorCisgICAgICAgIHZhciBldmVudEZp
cmVkQ291bnQgPSAwOworICAgICAgICBmdW5jdGlvbiBmaW5pc2hUZXN0KCkgeworICAgICAgICAg
ICAgc2hvdWxkQmUoImV2ZW50RmlyZWRDb3VudCIsICIxIik7CisgICAgICAgICAgICBmaW5pc2hK
U1Rlc3QoKTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIEVuYWJsZUZsZXhib3goKSB7
CisgICAgICAgICAgICBkZWJ1ZygiRW5nYWdpbmcgZmxleGJveC4uLiIpCisgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmxleGJveCIpLnN0eWxlLmRpc3BsYXkgPSAiLXdlYmtp
dC1mbGV4IjsKKworICAgICAgICAgICAgLy8gd2FpdCBhbmQgbWFrZSBzdXJlIG5vIG90aGVyIGV2
ZW50cyBhcnJpdmUKKyAgICAgICAgICAgIHNldFRpbWVvdXQoImZpbmlzaFRlc3QoKSIsIDIwMCk7
CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChldmVu
dCkgeworICAgICAgICAJKytldmVudEZpcmVkQ291bnQ7CisgICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKKworICAgICAgICAg
ICAgLy8gYWN0aXZhdGUgdGhlIGZsZXhib3gKKyAgICAgICAgICAgIGlmIChldmVudEZpcmVkQ291
bnQgPT0gMSkgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAg
ICAgICAgICAgICAgICAgRW5hYmxlRmxleGJveCgpOworICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgiRW5hYmxlRmxleGJveCgpIiwgMTAwMCk7CisK
KyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAg
ICAgICBmdW5jdGlvbiBzdGFydFRlc3QoKSB7ICAgIAorICAgICAgICAgICAgdmFyIGZsb3dUaHJl
YWQgPSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisgICAgICAgICAgICBmbG93VGhyZWFkLmFk
ZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0
Q2hhbmdlZCk7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGRlYnVnKCJGbG93aW5nIGNvbnRl
bnQgaW50byByZWdpb25zLi4uIik7CisgICAgICAgICAgICBmbG93Q29udGVudCgiYXJ0aWNsZSIp
OworICAgICAgICB9CisKKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBz
dGFydFRlc3QpOworICAgIDwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1l
dmVudC1yZWdpb24taW4tZmxleGJveC1vdmVyc2V0LWNoYW5nZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9u
LWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjg4MThkZTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZs
ZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTQgQEAKK1Rlc3Rz
IHRoZSByZWdpb25PdmVyc2V0Q2hhbmdlIGV2ZW50IGZvciByZWdpb25zIGluc2lkZSBmbGV4Ym94
ZXMKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0Zsb3dpbmcgY29udGVudCBpbnRv
IHJlZ2lvbnMuLi4KK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCitFbmdhZ2lu
ZyBmbGV4Ym94Li4uCitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUEFTUyBl
dmVudEZpcmVkQ291bnQgaXMgMgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1vdmVyc2V0LWNoYW5n
ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQtY2hhbmdlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDMxMmE1OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24t
aW4tZmxleGJveC1vdmVyc2V0LWNoYW5nZS5odG1sCkBAIC0wLDAgKzEsMTE4IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICAj
YXJ0aWNsZSB7CisgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgICAgICBi
b3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgfQorICAgICNyZWdpb25fMSwgI3JlZ2lvbl8y
IHsKKyAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7CisgICAgICAgIG92ZXJm
bG93OmhpZGRlbjsKKyAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgICAgIHZlcnRp
Y2FsLWFsaWduOnRvcDsKKyAgICAgICAgbWFyZ2luOjEwcHg7CisgICAgICAgIGhlaWdodDphdXRv
OworICAgICAgICB3aWR0aDoyMDBweDsKKyAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmVkOwor
ICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAxOworICAg
ICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDEwMCU7CisgICAgfQorICAgICNyZWdpb25fMiB7Cisg
ICAgICAgIC13ZWJraXQtZmxleC1iYXNpczogNzAlOworICAgIH0KKyAgICAuY29udGVudCB7Cisg
ICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOworICAgICAgICBib3JkZXI6IDNweCBkYXNo
ZWQgYmx1ZTsKKyAgICAgICAgbWFyZ2luOiA1cHg7CisgICAgfQorICAgICNwYXJ0MSB7CisgICAg
ICAgIGhlaWdodDogNzBweDsKKyAgICB9CisgICAgI3BhcnQyIHsKKyAgICAgICAgaGVpZ2h0OiA4
MHB4OworICAgIH0KKyAgICAjZmxleGJveCB7CisgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGdy
ZWVuOworICAgICAgICBtYXJnaW46IDVweDsKKyAgICAgICAgd2lkdGg6IDI0MHB4OworICAgICAg
ICBoZWlnaHQ6IDMwMHB4OworICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47
CisgICAgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgaWQ9ImFydGljbGUi
PgorICAgICAgICA8ZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0icGFydDEiIGNsYXNzPSJjb250
ZW50Ij48L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9InBhcnQyIiBjbGFzcz0iY29udGVudCI+
PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvZGl2PgorCisgICAgPGRpdiBpZD0iZmxleGJv
eCI+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0i
cmVnaW9uXzIiPjwvZGl2PgorICAgIDwvZGl2PgorCisgICAgPHNjcmlwdD4KKworICAgICAgICBk
ZXNjcmlwdGlvbigiVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQgZm9yIHJlZ2lv
bnMgaW5zaWRlIGZsZXhib3hlcyIpOworCisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICB0ZXN0
UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgfQorICAgICAgICB3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7CisgICAgICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7
CisgICAgICAgICAgICB2YXIgcmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bl8xIik7CisgICAgICAgICAgICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFt
ZTsKKyAgICAgICAgICAgIHJlZ2lvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25f
MiIpOworICAgICAgICAgICAgcmVnaW9uLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7
CisgICAgICAgIH0KKworICAgICAgICB2YXIgZXZlbnRGaXJlZENvdW50ID0gMDsKKyAgICAgICAg
ZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKKyAgICAgICAgICAgIHNob3VsZEJlKCJldmVudEZpcmVk
Q291bnQiLCAiMiIpOworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKwor
ICAgICAgICBmdW5jdGlvbiBFbmFibGVGbGV4Ym94KCkgeworICAgICAgICAgICAgZGVidWcoIkVu
Z2FnaW5nIGZsZXhib3guLi4iKQorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImZsZXhib3giKS5zdHlsZS5kaXNwbGF5ID0gIi13ZWJraXQtZmxleCI7CisgICAgICAgIH0KKwor
ICAgICAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChldmVudCkgeworICAgICAgICAJ
KytldmVudEZpcmVkQ291bnQ7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2
ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKKworICAgICAgICAgICAgLy8gYWN0aXZhdGUg
dGhlIGZsZXhib3gKKyAgICAgICAgICAgIGlmIChldmVudEZpcmVkQ291bnQgPT0gMSkgeworICAg
ICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAg
RW5hYmxlRmxleGJveCgpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAg
ICAgc2V0VGltZW91dCgiRW5hYmxlRmxleGJveCgpIiwgMTAwMCk7CisKKyAgICAgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGVsc2UgCisgICAgICAgICAg
ICAgICAgc2V0VGltZW91dCgiZmluaXNoVGVzdCgpIiwgMjAwKTsKKyAgICAgICAgfQorCisgICAg
ICAgIGZ1bmN0aW9uIHN0YXJ0VGVzdCgpIHsgICAgCisgICAgICAgICAgICB2YXIgZmxvd1RocmVh
ZCA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKKyAgICAgICAgICAgIGZsb3dUaHJlYWQuYWRk
RXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRD
aGFuZ2VkKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgZGVidWcoIkZsb3dpbmcgY29udGVu
dCBpbnRvIHJlZ2lvbnMuLi4iKTsKKyAgICAgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7
CisgICAgICAgIH0KKworICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0
YXJ0VGVzdCk7CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50LXJlbW92ZS1mcm9tLWRvbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZG9tLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNzU5NGY5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBAQAor
VGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKyBGbG93IGNvbnRlbnQKK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUi
CitSZW1vdmluZyByZWdpb25fMiBmcm9tIERPTQorUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAi
YXJ0aWNsZSIKK1BBU1MgZXZlbnRDb3VudCBpcyAyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
LXJlbW92ZS1mcm9tLWRvbS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjExNDAwZWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZG9tLmh0bWwKQEAgLTAsMCAr
MSw4NCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxw
ZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorI2FydGljbGUgeworICAgIC13ZWJraXQtZmxvdy1p
bnRvOiBhcnRpY2xlOworICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOworfQorI3JlZ2lvbl8x
LCAjcmVnaW9uXzJ7CisgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7CisgICAgb3Zl
cmZsb3c6aGlkZGVuOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRpY2FsLWFs
aWduOnRvcDsKKyAgICBtYXJnaW46MTBweDsKK30KKy5ibG9jayB7CisgICBkaXNwbGF5OmJsb2Nr
OworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBt
YXJnaW46IDVweDsgYm9yZGVyOiAxcHggc29saWQgcmVkO30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIiBjbGFzcz0iYmxvY2siPjwvZGl2PgorPGRpdiBp
ZD0iYXJ0aWNsZSI+CisgICAgPGRpdj4KKyAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9
ImhlaWdodDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9k
aXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgorPGRpdiBpZD0iY29udGFp
bmVyMiI+CisgICAgPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9
ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRp
b24oIlRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQiKQorICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIAorICAgIHdpbmRvdy5qc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKKyAgICBmdW5jdGlvbiBmbG93Q29udGVudChmbG93TmFtZSkgeworICAg
ICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgICAg
ICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAgIHIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93
RnJvbSA9IGZsb3dOYW1lOworICAgIH0KKworICAgIHZhciBldmVudENvdW50ID0gMDsKKyAgICBm
dW5jdGlvbiBmaW5pc2hUZXN0KCkgeworICAgICAgICBzaG91bGRCZSgiZXZlbnRDb3VudCIsICIy
Iik7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KKworICAgIGZ1bmN0aW9uIHJlZ2lv
bk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
ZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOworICAgICAgICBpZiAoKytldmVudENvdW50
ID4gMSkgeworICAgICAgICAgICBldmVudC50YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2Vi
a2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAgICAgICAg
ICAgLy8gdGhpcyBzaG91bGQgYmUgcmVhY2hlZCBhZnRlciByZWdpb25fMiBpcyByZW1vdmVkIGZy
b20gRE9NCisgICAgICAgICAgIGZpbmlzaFRlc3QoKTsKKyAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICB9CisgICAgICAgIAorICAgICAgICB2YXIgYzIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY29udGFpbmVyMiIpOworICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBE
T00iKTsKKyAgICAgICAgYzIuaW5uZXJIVE1MID0gIiI7IC8vIHRoaXMgd2lsbCB0cmlnZ2VyIGEg
bmV3IHJvdW5kIG9mIGV2ZW50cyBkdWUgdG8gbGF5b3V0CisgICAgfQorICAgIAorICAgIGZ1bmN0
aW9uIHN0YXJ0VGVzdCgpIHsKKyAgICAgICAgdmFyIGZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRp
Y2xlIik7CisgICAgICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNl
dGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAgICAgICAgCisgICAgICAgIGRlYnVn
KCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKKyAgICB9
CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uOWU2ZTRjOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1m
bG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitUZXN0cyByZWdpb25PdmVyc2V0Q2hh
bmdlIGV2ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworIAorRmxvdyBjb250ZW50
CitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUmVtb3ZpbmcgcmVnaW9uXzIg
ZnJvbSBmbG93CitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUEFTUyBldmVu
dENvdW50IGlzIDIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYzA2ZDFmCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cuaHRtbApAQCAtMCwwICsxLDgxIEBACis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8c3R5bGU+CisjYXJ0aWNsZSB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Cisg
ICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Cit9CisjcmVnaW9uXzEsICNyZWdpb25fMnsKKyAg
ICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKKyAgICBvdmVyZmxvdzpoaWRkZW47Cisg
ICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgdmVydGljYWwtYWxpZ246dG9wOworICAgIG1h
cmdpbjoxMHB4OworfQorLmJsb2NrIHsKKyAgIGRpc3BsYXk6YmxvY2s7Cit9CisjcmVnaW9uXzEs
ICNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4OyBib3Jk
ZXI6IDFweCBzb2xpZCByZWQ7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0i
ZGVzY3JpcHRpb24iIGNsYXNzPSJibG9jayI+PC9kaXY+Cis8ZGl2IGlkPSJhcnRpY2xlIj4KKyAg
ICA8ZGl2PgorICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsg
YmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8
ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+CisKKzxk
aXYgaWQ9ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVz
Y3JpcHRpb24oIlRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQiKQorICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAg
ICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIAorICAgIHdpbmRvdy5q
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICBmdW5jdGlvbiBmbG93Q29udGVudChmbG93TmFtZSkg
eworICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwor
ICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAgIHIgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgci5zdHlsZS53ZWJr
aXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgIH0KKworICAgIHZhciBldmVudENvdW50ID0gMDsK
KyAgICBmdW5jdGlvbiBmaW5pc2hUZXN0KCkgeworICAgICAgICBzaG91bGRCZSgiZXZlbnRDb3Vu
dCIsICIyIik7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KKworICAgIGZ1bmN0aW9u
IHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOworICAgICAgICBpZiAoKytldmVu
dENvdW50ID4gMSkgeworICAgICAgICAgICAgLy8gdGhpcyBzaG91bGQgYmUgcmVhY2hlZCBhZnRl
ciByZWdpb25fMiBpcyByZW1vdmVkIGZyb20gRE9NCisgICAgICAgICAgIHNldFRpbWVvdXQoImZp
bmlzaFRlc3QoKSIsIDIwMCk7CisgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAg
ICAKKyAgICAgICAgdmFyIHIyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7
CisgICAgICAgIGRlYnVnKCJSZW1vdmluZyByZWdpb25fMiBmcm9tIGZsb3ciKTsKKyAgICAgICAg
cjIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAibm9uZSI7IC8vIHRoaXMgd2lsbCB0cmlnZ2VyIGEg
bmV3IHJvdW5kIG9mIGV2ZW50cyBkdWUgdG8gbGF5b3V0CisgICAgfQorICAgIAorICAgIGZ1bmN0
aW9uIHN0YXJ0VGVzdCgpIHsKKyAgICAgICAgdmFyIGZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRp
Y2xlIik7CisgICAgICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNl
dGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAgICAgICAgCisgICAgICAgIGRlYnVn
KCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKKyAgICB9
CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC10
YXJnZXQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNk
MTY0ODQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE4
IEBACitUZXN0cyB0aGUgdGhlIE5hbWVkRmxvdyBvYmplY3QgYmVoYXZpb3IgYXMgYW4gRXZlbnRU
YXJnZXQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0Zsb3cgY29udGVudAorUEFT
UyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKK1BBU1MgZ2V0Rmxvd0J5TmFtZSgiYXJ0
aWNsZSIpIGlzIG5vbi1udWxsLgorUEFTUyByZWNyZWF0ZWQgaXMgZmFsc2UKK1BBU1MgZ2V0Rmxv
d0J5TmFtZSgiYXJ0aWNsZSIpIGlzIG51bGwKK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFy
dGljbGUiCitQQVNTIHJlY3JlYXRlZCBpcyB0cnVlCitQQVNTIGdldEZsb3dCeU5hbWUoImFydGlj
bGUiKSBpcyBub24tbnVsbC4KK1BBU1MgdXBkYXRlZENvdW50IGlzIDIKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50LXRhcmdldC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2MDU0
OTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0Lmh0bWwKQEAgLTAsMCArMSwxMTQgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorI2Fy
dGljbGUgeworICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgIGJvcmRlcjogMnB4
IHNvbGlkIGJsYWNrOworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7CisgICAgLXdlYmtpdC1mbG93
LWZyb206IG5vX2FydGljbGU7CisgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgIGRpc3BsYXk6aW5s
aW5lLWJsb2NrOworICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKKyAgICBtYXJnaW46MTBweDsKK30K
Ky5ibG9jayB7CisgICBkaXNwbGF5OmJsb2NrOworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzIgeyBo
ZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBib3JkZXI6IDFweCBzb2xpZCByZWQ7fQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgPGRpdj4KKyAgICAg
ICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjAwcHg7IGJhY2tncm91bmQtY29s
b3I6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVnaW9u
XzEiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorCis8c2NyaXB0PgorCitkZXNj
cmlwdGlvbigiVGVzdHMgdGhlIHRoZSBOYW1lZEZsb3cgb2JqZWN0IGJlaGF2aW9yIGFzIGFuIEV2
ZW50VGFyZ2V0Iik7CisKK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworfQord2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOworZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsK
KyAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgIHIu
c3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICByID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dO
YW1lOworfQorCitmdW5jdGlvbiBtYWtlRmxvd051bGwoKSB7CisJc2hvdWxkQmVOb25OdWxsKCdn
ZXRGbG93QnlOYW1lKCJhcnRpY2xlIiknKTsKKworICAgIHZhciBlbCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgIGVsLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5v
X2FydGljbGUiOworICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7
CisgICAgZWwuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAibm9fYXJ0aWNsZSI7CisgICAgZWwgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOworICAgIGVsLnN0eWxlLndlYmtpdEZs
b3dJbnRvID0gIm5vX2FydGljbGUiOworfQorCit2YXIgcmVjcmVhdGVkID0gZmFsc2U7CitmdW5j
dGlvbiBtYWtlRmxvd0NyZWF0ZWQoKSB7CisJc2hvdWxkQmVOdWxsKCdnZXRGbG93QnlOYW1lKCJh
cnRpY2xlIiknKTsKKwlnYygpOworCisgICAgdmFyIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlZ2lvbl8xIik7CisgICAgZWwuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAiYXJ0aWNsZSI7
CisgICAgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICBlbC5z
dHlsZS53ZWJraXRGbG93RnJvbSA9ICJhcnRpY2xlIjsKKyAgICBlbCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIik7CisgICAgZWwuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiYXJ0
aWNsZSI7CisKKyAgICByZWNyZWF0ZWQgPSB0cnVlOworfQorCit2YXIgdXBkYXRlZENvdW50ID0g
MDsKK2Z1bmN0aW9uIGZpbmlzaFRlc3QoKSB7CisgICAgc2hvdWxkQmUoInVwZGF0ZWRDb3VudCIs
ICIyIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9CisKK2Z1bmN0aW9uIGZsb3dUaHJlYWRVcGRh
dGVkKGV2ZW50KSB7CisJKyt1cGRhdGVkQ291bnQ7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7CisKKyAgICBpZiAodXBkYXRlZENvdW50
ID09IDIpIHsKKyAgICAJc2hvdWxkQmVUcnVlKCJyZWNyZWF0ZWQiKTsKKyAgICAJZXZlbnQudGFy
Z2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBmbG93
VGhyZWFkVXBkYXRlZCk7CisgICAgCW1ha2VGbG93TnVsbCgpOworICAgIAlzZXRUaW1lb3V0KCJm
aW5pc2hUZXN0KCkiLCAyMDApOworICAgIAlyZXR1cm47CisgICAgfQorCisgICAgbWFrZUZsb3dO
dWxsKCk7CisgICAgc2hvdWxkQmVGYWxzZSgicmVjcmVhdGVkIik7CisKKyAgICAvLyBTZXQgYSB0
aW1lb3V0IHNvIHRoZSBldmVudCByZWZlcmVuY2UgdG8gdGhlIHRhcmdldCBpcyBkaXNjYXJkZWQK
KyAgICBzZXRUaW1lb3V0KG1ha2VGbG93Q3JlYXRlZCwgMTApOworfQorCitmdW5jdGlvbiBzdGFy
dFRlc3QoKSB7ICAgIAorICAgIHZhciBmbG93VGhyZWFkID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNs
ZSIpOworICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNl
dGNoYW5nZSIsIGZsb3dUaHJlYWRVcGRhdGVkKTsKKyAgICAKKyAgICBkZWJ1ZygiRmxvdyBjb250
ZW50Iik7CisgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKK30KKword2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjk0MGMzNgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1l
dmVudC10by1udWxsLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitUZXN0cyByZWdpb25P
dmVyc2V0Q2hhbmdlIGV2ZW50IGJlaW5nIGRpc3BhdGNoZWQgd2hlbiB0aGUgY29udGVudCBpcyBy
ZW1vdmVkCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitGbG93IGNvbnRlbnQKK1BB
U1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCitSZW1vdmluZyByZWdpb25fMiBmcm9t
IGZsb3cKK1JlbW92aW5nIHJlZ2lvbl8xIGZyb20gZmxvdworUmVtb3ZpbmcgYXJ0aWNsZSBmcm9t
IGZsb3cKK1BBU1MgcmVnaW9uT3ZlcnNldERpc3BhdGNoZWRGb3JOdWxsRmxvdyBpcyBmYWxzZQor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1l
dmVudC10by1udWxsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmNkZTg2NTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC5odG1sCkBAIC0wLDAg
KzEsOTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0
PgorPHN0eWxlPgorI2FydGljbGUgeworICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwor
ICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Cisg
ICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7CisgICAgb3ZlcmZsb3c6aGlkZGVuOwor
ICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKKyAgICBt
YXJnaW46MTBweDsKK30KKy5ibG9jayB7CisgICBkaXNwbGF5OmJsb2NrOworfQorI3JlZ2lvbl8x
LCAjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBtYXJnaW46IDVweDt9Cis8
L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICA8ZGl2Pgor
ICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3Vu
ZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGlkPSJy
ZWdpb25fMSI+PC9kaXY+Cis8ZGl2IGlkPSJjb250YWluZXIyIj4KKyAgICA8ZGl2IGlkPSJyZWdp
b25fMiI+PC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KKworZGVzY3JpcHRpb24oIlRlc3RzIHJl
Z2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQgYmVpbmcgZGlzcGF0Y2hlZCB3aGVuIHRoZSBjb250ZW50
IGlzIHJlbW92ZWQiKTsKKworaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
KyAgICB9CisgICAgCisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgIGZ1bmN0
aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7CisgICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7CisgICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20g
PSBmbG93TmFtZTsKKyAgICAgICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25f
MiIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgfQor
ICAgIAorICAgIHZhciBjb3VudCA9IDA7CisgICAgdmFyIHJlZ2lvbk92ZXJzZXREaXNwYXRjaGVk
Rm9yTnVsbEZsb3cgPSBmYWxzZTsKKyAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChl
dmVudCkgeworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnRhcmdldC5uYW1l
IiwgImFydGljbGUiKTsKKyAgICAgICAgaWYgKCsrY291bnQgPiAxKSB7CisgICAgICAgICAgIGV2
ZW50LnRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdl
IiwgcmVnaW9uT3ZlcnNldENoYW5nZWQpOworICAgICAgICAgICByZWdpb25PdmVyc2V0RGlzcGF0
Y2hlZEZvck51bGxGbG93ID0gdHJ1ZTsKKyAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9Cisg
ICAgICAgIAorICAgICAgICB2YXIgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
XzIiKTsKKyAgICAgICAgZGVidWcoIlJlbW92aW5nIHJlZ2lvbl8yIGZyb20gZmxvdyIpOworICAg
ICAgICBlbC5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICJub25lIjsKKyAgICAgICAgZWwgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICAgICAgZGVidWcoIlJlbW92aW5n
IHJlZ2lvbl8xIGZyb20gZmxvdyIpOworICAgICAgICBlbC5zdHlsZS53ZWJraXRGbG93RnJvbSA9
ICJub25lIjsKKyAgICAgICAgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIp
OworICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgYXJ0aWNsZSBmcm9tIGZsb3ciKTsKKyAgICAgICAg
ZWwuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAibm9uZSI7CisKKyAgICAgICAgc2V0VGltZW91dChj
aGVja0lmRXZlbnREaXNwYXRjaGVkLCAyMDApOworICAgIH0KKworICAgIGZ1bmN0aW9uIGNoZWNr
SWZFdmVudERpc3BhdGNoZWQoKSB7CisgICAgICAgIHNob3VsZEJlRmFsc2UoInJlZ2lvbk92ZXJz
ZXREaXNwYXRjaGVkRm9yTnVsbEZsb3ciKTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAg
fQorICAgIAorICAgIGZ1bmN0aW9uIHN0YXJ0VGVzdCgpIHsKKyAgICAgICAgdmFyIGZsb3cgPSBn
ZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisgICAgICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5lcigi
d2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAgICAg
ICAgCisgICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQo
ImFydGljbGUiKTsKKyAgICB9CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBz
dGFydFRlc3QpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM4NzliMDUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctZXZlbnQuaHRtbApAQCAtMCwwICsxLDY4IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisjYXJ0
aWNsZSB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7CisgICAgYm9yZGVyOiAycHgg
c29saWQgYmxhY2s7Cit9CisjcmVnaW9uXzEsICNyZWdpb25fMnsKKyAgICAtd2Via2l0LWZsb3ct
ZnJvbTogbm9fYXJ0aWNsZTsKKyAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgZGlzcGxheTppbmxp
bmUtYmxvY2s7CisgICAgdmVydGljYWwtYWxpZ246dG9wOworICAgIG1hcmdpbjoxMHB4OworfQor
LmJsb2NrIHsKKyAgIGRpc3BsYXk6YmxvY2s7Cit9CisjcmVnaW9uXzEsICNyZWdpb25fMiB7IGhl
aWdodDoxMTBweDsgd2lkdGg6MjAwcHh9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2
IGlkPSJkZXNjcmlwdGlvbiIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KKzxkaXYgaWQ9ImFydGljbGUi
PgorICAgIDxkaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIw
MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+
CisKKzxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4K
KworPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KKworPHNjcmlwdD4KKyAg
ICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCIpCisgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
ICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB9CisgICAgd2luZG93Lmpz
VGVzdElzQXN5bmMgPSB0cnVlOworICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7
CisgICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Cisg
ICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAgciA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgICAgICByLnN0eWxlLndlYmtp
dEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIGZsb3dUaHJl
YWRVcGRhdGVkKGV2ZW50KSB7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQu
dGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOworICAgICAgICBldmVudC50YXJnZXQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIGZsb3dUaHJlYWRVcGRhdGVk
KTsKKyAgICAgICAgCisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KKyAgICAKKyAgICBm
dW5jdGlvbiBzdGFydFRlc3QoKSB7ICAgIAorICAgICAgICB2YXIgZmxvd1RocmVhZCA9IGdldEZs
b3dCeU5hbWUoImFydGljbGUiKTsKKyAgICAgICAgZmxvd1RocmVhZC5hZGRFdmVudExpc3RlbmVy
KCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgZmxvd1RocmVhZFVwZGF0ZWQpOworICAgICAg
ICAKKyAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOworICAgICAgICBmbG93Q29udGVudCgi
YXJ0aWNsZSIpOworICAgIH0KKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0
YXJ0VGVzdCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1leGlzdGluZy1m
bG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1leGlzdGluZy1mbG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi5jNzEzMWVjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV4aXN0aW5nLWZsb3ctZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorVGVzdCBmb3IgNjY2NDI6IFtDU1NSZWdpb25zXUltcGxl
bWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlCisKK0dldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgb2Jq
ZWN0IGZvciBhbiBleGlzdGluZyBmbG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3Qu
CisKK09uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCisKK1BBU1MKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1l
eGlzdGluZy1mbG93Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjA0NGE1NjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy5odG1sCkBAIC0wLDAg
KzEsNDMgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPCEtLQorICAgIFRlc3QgZm9y
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiAoW0NTU1JlZ2lv
bnNdW0NTU09NXSBJbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZSkuCisgICAgVGVzdCB0aGF0
IGdldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgZm9yIGFuIGV4aXN0aW5nIGZsb3cgcmV0dXJucyBh
IG5vbi1udWxsIG9iamVjdC4KKyAgICBPbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBhIFBBU1Mg
YmVsb3cuCisgICAgLS0+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNv
dXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAg
LnBhc3MgeworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICAgICAg
ICAgIGNvbG9yOiBncmVlbjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmZhaWwgewor
ICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICAgICAgICAgIGNvbG9y
OiByZWQ7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5mbG93IHsKKyAgICAgICAgICAg
ICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9z
dHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxwPlRlc3QgZm9yIDxhIGhy
ZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiI+NjY2NDI6
IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlPC9hPjwvcD4KKyAgICAg
ICAgPHA+R2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3QgZm9yIGFuIGV4aXN0aW5nIGZs
b3cgc2hvdWxkIHJldHVybiBhIG5vbi1udWxsIG9iamVjdC48L3A+CisgICAgICAgIDxwPk9uIHN1
Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSJh
cnRpY2xlIiBjbGFzcz0iZmxvdyI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlc3VsdCIgY2xh
c3M9ImZhaWwiPkZBSUw8L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsK
KyAgICAgICAgICAgIGlmIChuYW1lZEZsb3cpIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gIlBBU1MiOworICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5jbGFzc05hbWUgPSAicGFzcyI7
CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1maXJzdC1lbXB0eS1yZWdpb24taW5kZXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1p
bmRleC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDEw
MWY2NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1maXJzdC1lbXB0eS1yZWdpb24taW5kZXgtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTYgQEAKK1Rlc3QgZm9yIDkwNjA4OiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFt
ZWRGbG93OjpmaXJzdEVtcHR5UmVnaW9uSW5kZXggYXR0cmlidXRlLgorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IGlz
IC0xCitQQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgLTEKK1BBU1MgbmFt
ZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCBpcyAxCitQQVNTIG5hbWVkRmxvdy5maXJzdEVt
cHR5UmVnaW9uSW5kZXggaXMgMgorUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4
IGlzIC0xCitQQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMAorUEFTUyBu
YW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IGlzIC0xCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1p
bmRleC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjFhZGUyMWEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4
Lmh0bWwKQEAgLTAsMCArMSw4OCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBl
ci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3Bh
Y2UgfQorICAgIC5jb250ZW50IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3cgfQorICAgIC5yZWdp
b24geyAgLXdlYmtpdC1mbG93LWZyb206IGZsb3d9CisgICAgI3JlZ2lvbiwgI3JlZ2lvbjIsICNy
ZWdpb24zIHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJjb250ZW50Ij4KKzxwPkNvbnRlbnQg
aW5zaWRlIGFydGljbGU8L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oIlRl
c3QgZm9yIDkwNjA4OiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93OjpmaXJzdEVtcHR5
UmVnaW9uSW5kZXggYXR0cmlidXRlLiIpOworCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIC8vIE5hbWVkIGZsb3cgZG9l
cyBub3QgaGF2ZSBhbnkgcmVnaW9ucyB5ZXQKKyAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5
TmFtZSgiZmxvdyIpOworCisgICAgLy8gRmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAt
MSBmb3IgYW4gZW1wdHkgbmFtZWQgZmxvdworICAgIHNob3VsZEJlKCJuYW1lZEZsb3cuZmlyc3RF
bXB0eVJlZ2lvbkluZGV4IiwgIi0xIik7CisKKyAgICAvLyBBZGQgYSByZWdpb24gdG8gdGFrZSB0
aGUgY29udGVudCwgZmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBzdGlsbCBiZSAtMS4KKyAg
ICB2YXIgcmVnaW9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgZG9jdW1l
bnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24pOworICAgIHJlZ2lvbi5pZCA9ICJyZWdpb24iOwor
ICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAicmVnaW9uIjsKKworICAgIC8vIEZpcnN0RW1wdHlSZWdp
b25zIHNob3VsZCBiZSAtMSwgc2luY2UgdGhlcmUgYXJlIG5vIGVtcHR5IHJlZ2lvbnMKKyAgICBz
aG91bGRCZSgibmFtZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICItMSIpOworCisgICAg
Ly8gQWRkIGFub3RoZXIgcmVnaW9uLCBmaXJzdEVtcHR5UmVnaW9uSW5kZXggc2hvdWxkIGJlIDEg
c2luY2UgY29udGVudCBvbmx5IGZsb3dzIHdpdGhpbiB0aGUgZmlyc3QgcmVnaW9uLgorICAgIHZh
ciByZWdpb24yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgZG9jdW1lbnQu
Ym9keS5hcHBlbmRDaGlsZChyZWdpb24yKTsKKyAgICByZWdpb24yLmlkID0gInJlZ2lvbjIiOwor
ICAgIHJlZ2lvbjIuY2xhc3NOYW1lID0gInJlZ2lvbiI7CisKKyAgICAvLyBGaXJzdEVtcHR5UmVn
aW9uSW5kZXggc2hvdWxkIGJlIDEKKyAgICBzaG91bGRCZSgibmFtZWRGbG93LmZpcnN0RW1wdHlS
ZWdpb25JbmRleCIsICIxIik7CisKKyAgICAvLyBBZGQgY29udGVudCB1bnRpbCBzb21lIGlzIGZs
b3dlZCBpbnNpZGUgc2Vjb25kIHJlZ2lvbgorICAgIHdoaWxlIChyZWdpb24yLndlYmtpdFJlZ2lv
bk92ZXJzZXQgPT0gImVtcHR5IikgeworICAgICAgICB2YXIgcCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoInAiKTsKKyAgICAgICAgcC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9k
ZSgiQ29udGVudCBpbnNpZGUgYXJ0aWNsZSIpKTsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZChwKTsKKyAgICB9CisgICAgLy8gQWRkIHRoZSB0
aGlyZCByZWdpb24sIGZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgMi4KKyAgICB2YXIg
cmVnaW9uMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7CisgICAgcmVnaW9uMy5pZCA9ICJyZWdpb24zIjsKKyAg
ICByZWdpb24zLmNsYXNzTmFtZSA9ICJyZWdpb24iOworCisgICAgLy8gRmlyc3RFbXB0eVJlZ2lv
bkluZGV4IHNob3VsZCBiZSAyIHNpbmNlIHRoZSBjb250ZW50IGZpdHMgaW4gdGhlIGZpcnN0IHR3
byByZWdpb25zLgorICAgIHNob3VsZEJlKCJuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4
IiwgIjIiKTsKKworICAgIC8vIFJlbW92ZSB0aGUgZmlyc3QgcmVnaW9uIGZyb20gdGhlIGZsb3cs
IGZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgLTEuCisgICAgcmVnaW9uLmNsYXNzTmFt
ZSA9ICIiOworCisgICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgdHJ1ZSBzaW5jZSB0aGUgY29udGVu
dCBkb2VzIG5vdCBmaXQgdGhlIHJlZ2lvbnMKKyAgICBzaG91bGRCZSgibmFtZWRGbG93LmZpcnN0
RW1wdHlSZWdpb25JbmRleCIsICItMSIpOworCisgICAgLy8gUmVtb3ZlIHRoZSBjb250ZW50IGZy
b20gdGhlIGZsb3csIGZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgMC4KKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOworCisgICAgLy8g
Rmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAwLCBzaW5jZSB0aGVyZSBpcyBubyBtb3Jl
IGNvbnRlbnQuCisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgi
LCAiMCIpOworCisgICAgLy8gUmVtb3ZlIGFsbCB0aGUgcmVnaW9ucyBmcm9tIHRoZSBmbG93Cisg
ICAgcmVnaW9uMi5jbGFzc05hbWUgPSByZWdpb24zLmNsYXNzTmFtZSA9ICIiOworCisgICAgLy8g
Rmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAtMSwgc2luY2UgdGhlcmUgYXJlIG5vIG1v
cmUgcmVnaW9ucyBpbiB0aGUgbmFtZWQgZmxvdy4KKyAgICBzaG91bGRCZSgibmFtZWRGbG93LmZp
cnN0RW1wdHlSZWdpb25JbmRleCIsICItMSIpOworCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImFydGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOworICAgIHJlZ2lvbi5zdHlsZS5k
aXNwbGF5ID0gIm5vbmUiOworICAgIHJlZ2lvbjIuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKKyAg
ICByZWdpb24zLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJr
aXQtbmFtZWQtZmxvdy1mbG93LWFkZGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93LWFkZGVkLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTBhMTUyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWZs
b3ctYWRkZWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorVGVzdCBmb3IgNjY2NDI6IFtD
U1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlCisKK0dldHRpbmcgYSBXZWJL
aXROYW1lZEZsb3cgb2JqZWN0IGZvciBhIGZsb3cgdGhhdCB3YXMgYWRkZWQgc2hvdWxkIHJldHVy
biBhIG5vbi1udWxsIG9iamVjdC4KKworT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBi
ZWxvdy4KKworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L3dlYmtpdC1uYW1lZC1mbG93LWZsb3ctYWRkZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93LWFkZGVkLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGY3MzFhMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93LWFkZGVkLmh0
bWwKQEAgLTAsMCArMSw1NiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8IS0tCisg
ICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2NjQy
IChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlKS4KKyAg
ICBUZXN0IHRoYXQgZ2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBmb3IgYSBmbG93IHRoYXQgd2Fz
IGFkZGVkIHJldHVybnMgYSBub24tbnVsbCBvYmplY3QuCisgICAgT24gc3VjY2VzcywgeW91IHNo
b3VsZCBzZWUgYSBQQVNTIGJlbG93LgorICAgIC0tPgorICAgIDxoZWFkPgorICAgICAgICA8c2Ny
aXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHls
ZT4KKyAgICAgICAgICAgIC5wYXNzIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9s
ZDsKKyAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIC5mYWlsIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAgICAg
ICAgICAgICAgICBjb2xvcjogcmVkOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmxv
dyB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIC5ub0Zsb3cgeworICAgICAgICAgICAgICAgIC13ZWJraXQtZmxv
dy1pbnRvOiBub25lOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVh
ZD4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+CisgICAgICAgIDxwPlRlc3QgZm9yIDxhIGhy
ZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiI+NjY2NDI6
IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlPC9hPjwvcD4KKyAgICAg
ICAgPHA+R2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3QgZm9yIGEgZmxvdyB0aGF0IHdh
cyBhZGRlZCBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KKyAgICAgICAgPHA+
T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYg
aWQ9ImFydGljbGUiIGNsYXNzPSJub0Zsb3ciPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZXN1
bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisKKyAgICAgICAgICAgIC8vIEdldCB0aGUgbmFtZWQgZmxvdyBvYmplY3QgYmVm
b3JlIGFkZGluZyB0aGUgZmxvdyB0aHJlYWQuCisgICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0g
Z2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdzI7CisKKyAg
ICAgICAgICAgIGZ1bmN0aW9uIHRlc3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7CisgICAgICAgICAgICAgICAgaWYg
KCFuYW1lZEZsb3cgJiYgbmFtZWRGbG93MikgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gIlBBU1MiOworICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuY2xhc3NOYW1lID0g
InBhc3MiOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAiZmxvdyI7Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQtY29udGVudC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctZ2V0LWNvbnRlbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmE0OTM2NDYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMzYgQEAKK1Rlc3QgZm9yIDkwMTYzOiBbQ1NTUmVnaW9uc11SZW5hbWUgTmFtZWRG
bG93Ojpjb250ZW50Tm9kZXMgdG8gTmFtZWRGbG93OjpnZXRDb250ZW50KCkKKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpIGlzIG51bGwK
K1BBU1MgbmFtZWRGbG93Q29udGVudDMubGVuZ3RoIGlzIDEKK1BBU1MgbmFtZWRGbG93Q29udGVu
dDMuaXRlbSgwKS5pZCBpcyAiYXJ0aWNsZSIKK1BBU1MgbmFtZWRGbG93Q29udGVudDQubGVuZ3Ro
IGlzIDEKK1BBU1MgbmFtZWRGbG93Q29udGVudDQuaXRlbSgwKS5pZCBpcyAiYXJ0aWNsZSIKK1BB
U1MgbmFtZWRGbG93Q29udGVudDUubGVuZ3RoIGlzIDIKK1BBU1MgbmFtZWRGbG93Q29udGVudDUu
aXRlbSgwKS5pZCBpcyAiYXJ0aWNsZTIiCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ1Lml0ZW0oMSku
aWQgaXMgImFydGljbGUiCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ2Lmxlbmd0aCBpcyAyCitQQVNT
IG5hbWVkRmxvd0NvbnRlbnQ3Lmxlbmd0aCBpcyAyCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ4Lmxl
bmd0aCBpcyAzCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ5Lmxlbmd0aCBpcyAzCitQQVNTIG5hbWVk
Rmxvd0NvbnRlbnQ5Lml0ZW0oMCkuaWQgaXMgImFydGljbGUyIgorUEFTUyBuYW1lZEZsb3dDb250
ZW50OS5pdGVtKDEpLmlkIGlzICJzcGFuMSIKK1BBU1MgbmFtZWRGbG93Q29udGVudDkuaXRlbSgy
KS5pZCBpcyAiYXJ0aWNsZSIKK1BBU1MgbmFtZWRGbG93Q29udGVudDEwLmxlbmd0aCBpcyAzCitQ
QVNTIG5hbWVkRmxvd0NvbnRlbnQxMC5pdGVtKDApLmlkIGlzICJhcnRpY2xlIgorUEFTUyBuYW1l
ZEZsb3dDb250ZW50MTEubGVuZ3RoIGlzIDUKK1BBU1MgbmFtZWRGbG93Q29udGVudDEyLmxlbmd0
aCBpcyAxCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQxMi5pdGVtKDApLmlkIGlzICJhcnRpY2xlIgor
UEFTUyBuYW1lZEZsb3dDb250ZW50MTEubGVuZ3RoIGlzIDAKK1BBU1MgbmFtZWRGbG93Q29udGVu
dDEyLmxlbmd0aCBpcyAxCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQxMi5pdGVtKDApLmlkIGlzICJh
cnRpY2xlIgorUEFTUyBnZXRGbG93QnlOYW1lKCJmbG93MiIpIGlzIG51bGwKK1BBU1MgbmFtZWRG
bG93Q29udGVudDEzLmxlbmd0aCBpcyAwCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQxNC5sZW5ndGgg
aXMgMAorUEFTUyBuYW1lZEZsb3dDb250ZW50MTUubGVuZ3RoIGlzIDEKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQt
Y29udGVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyODkwZGQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQuaHRtbApAQCAtMCwwICsxLDEzNiBAQAorPCFkb2N0eXBl
IGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3Jj
PSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgorICAg
ICAgICAgICAgI3JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUwcHg7
IGhlaWdodDogMTUwcHg7IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJv
ZHk+CisgICAgICAgIDwhLS0KKyAgICAgICAgMS4gVGhlIGNvbnRlbnQgbm9kZXMgY29sbGVjdGlv
biBmb3IgYSBuYW1lZCBmbG93ICdmbG93JyBjb250YWlucyBvbmx5IHRob3NlIGVsZW1lbnRzIHRo
YXQgaGF2ZQorICAgICAgICB0aGUgc3R5bGUgcHJvcGVydHkgLXdlYmtpdC1mbG93LWludG8gc2V0
IHRvICdmbG93Jy4KKyAgICAgICAgMi4gSWYgYW4gZWxlbWVudCBoYXMgYW4gYW5jZXN0b3Igd2l0
aCAtd2Via2l0LWZsb3ctaW50byA9ICdmbG93JyBidXQgZG9lcyBub3QgaGF2ZSBpdHMgJy13ZWJr
aXQtZmxvdy1pbnRvJworICAgICAgICBzZXQgdG8gJ2Zsb3cnIHdpbGwgbm90IGJlIGxpc3RlZCBh
bW9uZyB0aGUgY29udGVudCBub2RlcyBmb3IgbmFtZWQgZmxvdyAnZmxvdycuCisgICAgICAgIDMu
IEVsZW1lbnRzIHdpdGggJy13ZWJraXQtZmxvdy1pbnRvJyBzZXQgdG8gJ2Zsb3cnIGFuZCAnZGlz
cGxheTpub25lJyBzaG91bGQgYmUgbGlzdGVkIGFtb25nIHRoZSBjb250ZW50IG5vZGVzCisgICAg
ICAgIGZvciBuYW1lZCBmbG93IG9iamVjdCAnZmxvdycuCisgICAgICAgIDQuIFRoZSBjb2xsZWN0
aW9uIG9mIG5vZGVzIGlzIHJldHVybmVkIGluIGRvY3VtZW50IG9yZGVyLgorICAgICAgICAtLT4K
KyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAg
ICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgOTAxNjM6IFtDU1NSZWdpb25zXVJlbmFtZSBOYW1lZEZs
b3c6OmNvbnRlbnROb2RlcyB0byBOYW1lZEZsb3c6OmdldENvbnRlbnQoKSIpOworCisgICAgICAg
ICAgICAvLyBBZGQgYW4gZWxlbWVudCB0aGF0IHdvdWxkIGJlIGNvbGxlY3RlZCBieSB0aGUgbmFt
ZWQgZmxvdyBidXQgZG8gbm90IGFkZCBpdCB0byB0aGUgRE9NLCB0aGUgY29udGVudE5vZGVzIHNo
b3VsZCBiZSBlbXB0eS4KKyAgICAgICAgICAgIHZhciBhcnRpY2xlID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICBhcnRpY2xlLmlkID0gImFydGljbGUiOworICAg
ICAgICAgICAgYXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9ICJmbG93IjsKKworICAgICAg
ICAgICAgc2hvdWxkQmVOdWxsKCdnZXRGbG93QnlOYW1lKCJmbG93IiknKTsKKworICAgICAgICAg
ICAgLy8gQXBwZW5kIHRoZSBhYm92ZSBlbGVtZW50IHRvIHRoZSBET00uIEl0IHdpbGwgYmUgY29s
bGVjdGVkIGJ5IHRoZSBmbG93LCB0aGVyZWZvcmUgdGhlIGNvbnRlbnROb2RlcyBzaG91bGQgaGF2
ZSAxIGVsZW1lbnQuCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFydGlj
bGUpOworICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQzID0gZ2V0Rmxvd0J5TmFtZSgi
ZmxvdyIpLmdldENvbnRlbnQoKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVk
Rmxvd0NvbnRlbnQzLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJuYW1lZEZsb3dDb250ZW50My5pdGVtKDApLmlkIiwgImFydGljbGUiKTsKKworICAgICAg
ICAgICAgLy8gQXBwZW5kIGEgY2hpbGQgZWxlbWVudCB0byB0aGUgYXJ0aWNsZSBhYm92ZSBidXQg
ZG8gbm90IHNldCBpdHMgc3R5bGUgdG8gZmxvdyBpbnRvICdmbG93Jy4KKyAgICAgICAgICAgIC8v
IFRoZSBjb250ZW50Tm9kZXMgc2hvdWxkIHN0aWxsIGhhdmUgMSBlbGVtZW50LgorICAgICAgICAg
ICAgdmFyIHBOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOworICAgICAgICAgICAg
cE5vZGUuaWQgPSAicDEiOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFy
dGljbGUiKS5hcHBlbmRDaGlsZChwTm9kZSk7CisgICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29u
dGVudDQgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOworICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDQubGVuZ3RoIiwgMSk7CisgICAgICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQ0Lml0ZW0oMCkuaWQi
LCAiYXJ0aWNsZSIpOworCisgICAgICAgICAgICAvLyBBZGQgYW5vdGhlciBlbGVtZW50IGRpcmVj
dGx5IHRvIHRoZSBmbG93IGFuZCBzZXQgaXRzICdkaXNwbGF5JyBwcm9wZXJ0eSB0byAnbm9uZScs
IGl0IHNob3VsZCBiZSBwYXJ0IG9mIHRoZSBmbG93LgorICAgICAgICAgICAgdmFyIGFydGljbGUy
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICBhcnRpY2xlMi5p
ZCA9ICJhcnRpY2xlMiI7CisgICAgICAgICAgICBhcnRpY2xlMi5zdHlsZS53ZWJraXRGbG93SW50
byA9ICJmbG93IjsKKyAgICAgICAgICAgIGFydGljbGUyLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7
CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lmluc2VydEJlZm9yZShhcnRpY2xlMiwgYXJ0aWNs
ZSk7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50NSA9IGdldEZsb3dCeU5hbWUo
ImZsb3ciKS5nZXRDb250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1l
ZEZsb3dDb250ZW50NS5sZW5ndGgiLCAyKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygibmFtZWRGbG93Q29udGVudDUuaXRlbSgwKS5pZCIsICJhcnRpY2xlMiIpOworICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50NS5pdGVtKDEpLmlk
IiwgImFydGljbGUiKTsKKworICAgICAgICAgICAgLy8gQWRkaW5nIGEgcmVnaW9uIGVsZW1lbnQg
dG8gZmxvdyBjb250ZW50IGludG8gc2hvdWxkIG5vdCBpbmZsdWVuY2UgdGhlIGNvbnRlbnQgbm9k
ZXMgY29sbGVjdGlvbi4KKyAgICAgICAgICAgIHZhciByZWdpb25Ob2RlID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICByZWdpb25Ob2RlLmlkID0gInJlZ2lvbiI7
CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbk5vZGUpOworICAg
ICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQ2ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdl
dENvbnRlbnQoKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRl
bnQ2Lmxlbmd0aCIsIDIpOworCisgICAgICAgICAgICAvLyBDaGFuZ2UgZGlzcGxheTpub25lIGZv
ciB0aGUgJ2FydGljbGUyJyBlbGVtZW50LCB0aGUgbGlzdCBvZiBjb250ZW50Tm9kZXMgc2hvdWxk
IHN0YXkgdGhlIHNhbWUKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRp
Y2xlMiIpLnN0eWxlLmRpc3BsYXkgPSAiYmxvY2siOworICAgICAgICAgICAgdmFyIG5hbWVkRmxv
d0NvbnRlbnQ3ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKKyAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQ3Lmxlbmd0aCIsIDIpOworCisg
ICAgICAgICAgICAvLyBBZGQgYSBwIGFuZCBhIHNwYW4gdW5kZXIgcC4gTWFrZSB0aGUgc3BhbiBk
aXJlY3RseSBjb2xsZWN0ZWQgYnkgdGhlIGZsb3cuIFRoZSBjb250ZW50Tm9kZXMgY29sbGVjdGlv
biBzaG91bGQgaGF2ZSAzIGVsZW1lbnRzLgorICAgICAgICAgICAgcE5vZGUgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgICAgICBwTm9kZS5pZCA9ICJwMiI7CisgICAgICAg
ICAgICB2YXIgc3Bhbk5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisgICAg
ICAgICAgICBzcGFuTm9kZS5pZCA9ICJzcGFuMSI7CisgICAgICAgICAgICBzcGFuTm9kZS5zdHls
ZS53ZWJraXRGbG93SW50byA9ICJmbG93IjsKKyAgICAgICAgICAgIHBOb2RlLmFwcGVuZENoaWxk
KHNwYW5Ob2RlKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xl
MiIpLmFwcGVuZENoaWxkKHBOb2RlKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRl
bnQ4ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKKyAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQ4Lmxlbmd0aCIsIDMpOworCisgICAgICAg
ICAgICAvLyBDaGFuZ2UgZGlzcGxheSBvZiBhcnRpY2xlIG5vZGUgdG8gbm9uZSwgdGhlIGNvbGxl
Y3Rpb24gc2hvdWxkIHN0aWxsIGhhdmUgMyBlbGVtZW50cy4KKyAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKKyAgICAg
ICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50OSA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRD
b250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50
OS5sZW5ndGgiLCAzKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRG
bG93Q29udGVudDkuaXRlbSgwKS5pZCIsICJhcnRpY2xlMiIpOworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50OS5pdGVtKDEpLmlkIiwgInNwYW4xIik7
CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQ5Lml0
ZW0oMikuaWQiLCAiYXJ0aWNsZSIpOworCisgICAgICAgICAgICAvLyBUYWtlICdhcnRpY2xlJyBu
b2RlIGZyb20gbGFzdCBwb3NpdGlvbiBhbmQgaW5zZXJ0IGl0IGJlZm9yZSAnYXJ0aWNsZTInCisg
ICAgICAgICAgICBhcnRpY2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsK
KyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQoYXJ0aWNsZSksIGFydGljbGUyKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dD
b250ZW50MTAgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDEwLmxlbmd0aCIsIDMpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50MTAuaXRlbSgw
KS5pZCIsICJhcnRpY2xlIik7CisKKyAgICAgICAgICAgIC8vIENsb25lICdhcnRpY2xlMicgaW5j
bHVkaW5nIGl0cyBjaGlsZHJlbi4KKyAgICAgICAgICAgIHZhciBhcnRpY2xlMkNsb25lID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuY2xvbmVOb2RlKHRydWUpOworICAgICAg
ICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhcnRpY2xlMkNsb25lKTsKKyAgICAgICAg
ICAgIHZhciBuYW1lZEZsb3dDb250ZW50MTEgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29u
dGVudCgpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDEx
Lmxlbmd0aCIsIDUpOworICAgICAgICAgICAgLy8gUmVtb3ZlIGFydGljbGUyIG5vZGVzIGZyb20g
ZG9jdW1lbnQsIHRoZXkgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBmbG93LgorICAgICAgICAgICAg
ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhcnRpY2xlMik7CisgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LnJlbW92ZUNoaWxkKGFydGljbGUyQ2xvbmUpOworICAgICAgICAgICAgdmFyIG5hbWVk
Rmxvd0NvbnRlbnQxMiA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7CisgICAg
ICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50MTIubGVuZ3RoIiwgMSk7
CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQxMi5p
dGVtKDApLmlkIiwgImFydGljbGUiKTsKKworICAgICAgICAgICAgLy8gTW92ZSB0aGUgY29udGVu
dCBub2RlICdhcnRpY2xlJyBmcm9tIG5hbWVkIGZsb3cgJ2Zsb3cnIHRvIG5hbWVkIGZsb3cgJ2Zs
b3cyJworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHls
ZS53ZWJraXRGbG93SW50byA9ICJmbG93MiI7CisgICAgICAgICAgICB2YXIgZmxvdzIgPSBnZXRG
bG93QnlOYW1lKCJmbG93MiIpOworICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQxMSA9
IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7CisgICAgICAgICAgICB2YXIgbmFt
ZWRGbG93Q29udGVudDEyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKS5nZXRDb250ZW50KCk7Cisg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50MTEubGVuZ3RoIiwg
IjAiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMi5s
ZW5ndGgiLCAiMSIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZs
b3dDb250ZW50MTIuaXRlbSgwKS5pZCIsICJhcnRpY2xlIik7CisKKyAgICAgICAgICAgIC8vIFJl
bW92ZSB0aGUgY29udGVudCBub2RlIGZyb20gZG9tLCBjb250ZW50IG5vZGVzIGZvciBib3RoICdm
bG93JyBhbmQgJ2Zsb3cyJyBzaG91bGQgYmUgZW1wdHkKKyAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKSk7CisgICAg
ICAgICAgICBzaG91bGRCZU51bGwoJ2dldEZsb3dCeU5hbWUoImZsb3cyIiknKTsKKworICAgICAg
ICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQxMyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRD
b250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50
MTMubGVuZ3RoIiwgIjAiKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQxNCA9
IGZsb3cyLmdldENvbnRlbnQoKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVk
Rmxvd0NvbnRlbnQxNC5sZW5ndGgiLCAiMCIpOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChhcnRpY2xlKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50MTUg
PSBmbG93Mi5nZXRDb250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1l
ZEZsb3dDb250ZW50MTUubGVuZ3RoIiwgIjEiKTsKKworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAg
ICAgPC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJl
Z2lvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtp
dC1uYW1lZC1mbG93LWdldC1yZWdpb25zLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi40Yzk4MGQwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDE0IEBACitUZXN0cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9ucygp
IGFuZCB0aGUgRE9NIG9yZGVyIG9mIHRoZSBsaXN0CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitGbG93IGNvbnRlbnQKK1Rlc3QgaWYgdGhlIHJlZ2lvbnMgYXJlIGluIERPTSBvcmRl
cgorUEFTUyBnZXRSZWdpb25BdCgwKS5pZCBpcyAicmVnaW9uXzEiCitQQVNTIGdldFJlZ2lvbkF0
KDEpLmlkIGlzICJyZWdpb25fMiIKK0VtcHR5IGNvbnRlbnQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi4wZDRhOTc4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBAQAorVGVzdHMgV2ViS2l0TmFtZWRGbG93LmdldFJl
Z2lvbnMoKSBhbmQgcHNldWRvLWVsZW1lbnRzIGFzIHJlZ2lvbnMuCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTIHJlZ2lvbkxpc3QubGVuZ3RoIGlzIDEKK1BBU1MgbmFtZWRG
bG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCBpcyAwCitQQVNTIHJlZ2lvbkxpc3QuaXRlbSgwKS5p
ZCBpcyAicmVnaW9uXzIiCitQQVNTIHJlZ2lvbkxpc3QuaXRlbSgwKS53ZWJraXRSZWdpb25PdmVy
c2V0IGlzICJlbXB0eSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmQ5MmE5ZQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1n
ZXQtcmVnaW9ucy1wc2V1ZG8uaHRtbApAQCAtMCwwICsxLDc4IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48
L3NjcmlwdD4KKzxzdHlsZT4KKyAgICAjYXJ0aWNsZSB7CisgICAgICAgIC13ZWJraXQtZmxvdy1p
bnRvOiBhcnRpY2xlOworICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgICAgIHdpZHRoOiA1MHB4
OworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICB9CisKKyAgICAjcmVnaW9u
XzEgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIHRvcDoyMDBweDsKKyAg
ICAgICAgbGVmdDogMTAwcHg7CisgICAgfQorCisgICAgI3JlZ2lvbl8xOjpiZWZvcmUgeworICAg
ICAgICBkaXNwbGF5OiBibG9jazsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgIGhlaWdo
dDogNTBweDsKKyAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAgIC13ZWJr
aXQtZmxvdy1mcm9tOiBhcnRpY2xlOworICAgIH0KKworICAgICNyZWdpb25fMTo6YWZ0ZXIgewor
ICAgICAgICBkaXNwbGF5OiBibG9jazsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgIGhl
aWdodDogNTBweDsKKyAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAgIC13
ZWJraXQtZmxvdy1mcm9tOiBhcnRpY2xlOyAgICAKKyAgICB9CisKKyAgICAjcmVnaW9uXzIgewor
ICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsKKyAgICAgICAgaGVpZ2h0OjUwcHg7
CisgICAgICAgIHdpZHRoOjUwcHg7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAg
ICAgdG9wOiAyMDBweDsKKyAgICAgICAgbGVmdDogMjAwcHg7CisgICAgICAgIGJvcmRlcjogMXB4
IHNvbGlkIGJsYWNrOworICAgIH0KKworPC9zdHlsZT4KKzwvaGVhZD4KKyAgICA8Ym9keT4KKyAg
ICAgICAgPCEtLQorICAgICAgICBUZXN0IHRoYXQgZ2V0UmVnaW9ucygpIGZ1bmN0aW9uIGZyb20g
TmFtZWRGbG93IGludGVyZmFjZSBkb2VzIG5vdCBleHBvc2UgdGhlIHBzZXVkby1lbGVtZW50cyBh
cworICAgICAgICByZWdpb25zLgorICAgICAgICAtLT4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNs
ZSI+PC9kaXY+CisKKyAgICAgICAgPGRpdiBpZD0icmVnaW9uXzEiIGNsYXNzPSJyZWdpb25fMSI+
PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8yIiBjbGFzcz0icmVnaW9uXzIiPjwvZGl2
PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdHMgV2Vi
S2l0TmFtZWRGbG93LmdldFJlZ2lvbnMoKSBhbmQgcHNldWRvLWVsZW1lbnRzIGFzIHJlZ2lvbnMu
IikKKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdl
dEZsb3dCeU5hbWUoImFydGljbGUiKTsKKworICAgICAgICAgICAgLy8gVGhlIHBzZXVkby1lbGVt
ZW50cyBhcmUgbm90IHlldCByZXR1cm5lZCBieSBnZXRSZWdpb25zKCkKKyAgICAgICAgICAgIHZh
ciByZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnMoKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlKCJyZWdpb25MaXN0Lmxlbmd0aCIsICIxIik7CisgICAgICAgICAgICBzaG91bGRCZSgibmFt
ZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICIwIik7CisgICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3QuaXRlbSgwKS5pZCIsICJyZWdpb25fMiIpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Lml0ZW0oMCkud2Via2l0
UmVnaW9uT3ZlcnNldCIsICJlbXB0eSIpOworCisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpLnN0eWxlLnZpc2liaWxpdHkg
PSAiaGlkZGVuIjsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25f
MiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
ICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk2YjI5NTAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctZ2V0LXJlZ2lvbnMuaHRtbApAQCAtMCwwICsxLDY3IEBACis8aHRtbD4KKzxoZWFkPgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Cisj
YXJ0aWNsZSB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7CisgICAgYm9yZGVyOiAy
cHggc29saWQgYmxhY2s7Cit9CisjcmVnaW9uXzEsICNyZWdpb25fMnsKKyAgICBvdmVyZmxvdzp2
aXNpYmxlOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRpY2FsLWFsaWduOnRv
cDsKKyAgICBtYXJnaW46MTBweDsKK30KKyNyZWdpb25fMSB7IGhlaWdodDo1MDBweDsgd2lkdGg6
MjAwcHg7IH0KKyNyZWdpb25fMiB7IGhlaWdodDo1MHB4OyB3aWR0aDoyMDBweDsgfQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgPGRpdj4KKyAgICAg
ICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMzAwcHg7IGJhY2tncm91bmQtY29s
b3I6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVnaW9u
XzEiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGRl
c2NyaXB0aW9uKCJUZXN0cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9ucygpIGFuZCB0aGUgRE9N
IG9yZGVyIG9mIHRoZSBsaXN0IikKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gZ2V0UmVn
aW9uQXQoaW5kZXgpIHsKKyAgICAgICAgdmFyIGZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRpY2xl
Iik7CisgICAgICAgIHZhciByZWdpb25zID0gZmxvdy5nZXRSZWdpb25zKCk7CisgICAgICAgIGlm
IChyZWdpb25zLmxlbmd0aCA8PSBpbmRleCkKKyAgICAgICAgICAgIHJldHVybiBudWxsOworCisg
ICAgICAgIHJldHVybiByZWdpb25zW2luZGV4XTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBmbG93
Q29udGVudChmbG93TmFtZSkgeworICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb25fMSIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05h
bWU7CisgICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAg
ICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgIH0KKworICAgIGZ1
bmN0aW9uIHRlc3QoKSB7CisgICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAg
Zmxvd0NvbnRlbnQoImFydGljbGUiKTsKKworICAgICAgICBkZWJ1ZygiVGVzdCBpZiB0aGUgcmVn
aW9ucyBhcmUgaW4gRE9NIG9yZGVyIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
Z2V0UmVnaW9uQXQoMCkuaWQiLCAicmVnaW9uXzEiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJnZXRSZWdpb25BdCgxKS5pZCIsICJyZWdpb25fMiIpOworCisgICAgICAgIGRlYnVn
KCJFbXB0eSBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250ZW50KG51bGwpOworICAgIH0KKyAg
ICB0ZXN0KCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5h
bWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWludmFsaWQtbmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uZTg2NmYxZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMTMgQEAKK1Rlc3QgZm9yIDc5Njg1OiBbQ1NTUmVnaW9uc11bQ1NTT01d
UHJldmVudCBjcmVhdGlvbiBvZiBOYW1lZEZsb3cgb2JqZWN0IGZvciBpbnZhbGlkIGZsb3cgbmFt
ZQorCitPbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBhIHNlcmllcyBvZiBQQVNTIGJlbG93Lgor
CitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctaW52YWxpZC1uYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctaW52YWxpZC1uYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uYTMyNmQ4NQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUuaHRtbApAQCAtMCww
ICsxLDMwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8
bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Jlc291cmNlcy9yZWdpb24tc3R5bGUuY3Nz
Ij4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0
PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0i
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc5Njg1Ij43OTY4NTogW0NT
U1JlZ2lvbnNdW0NTU09NXVByZXZlbnQgY3JlYXRpb24gb2YgTmFtZWRGbG93IG9iamVjdCBmb3Ig
aW52YWxpZCBmbG93IG5hbWU8L2E+PC9wPgorICAgICAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugc2hv
dWxkIHNlZSBhIHNlcmllcyBvZiBQQVNTIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisgICAgICAgICAgICAvLyBUcnkgc29tZSBpbnZhbGlkIG5hbWVzLiBhdXRvL2RlZmF1bHQv
aW5oZXJpdC9pbml0aWFsL25vbmUgdmFsdWVzIGFyZSBub3QgYWxsb3dlZAorICAgICAgICAgICAg
Ly8gRW1wdHkgc3RyaW5nIGFuZCAtMTJweCBhcmUgbm90IGlkZW50aWZpZXJzLCBzbyB0aGV5IGNh
bm5vdCByZXByZXNlbnQgdmFsaWQgZmxvdyBuYW1lcy4KKyAgICAgICAgICAgIC8vIFZhbGlkIGZs
b3cgbmFtZXMgZm9sbG93ZWQgYnkgYW5vdGhlciBjc3MgcHJvcGVydHkgZG8gbm90IGZvcm0gYSB2
YWxpZCBmbG93IG5hbWUuCisgICAgICAgICAgICB2YXIgYXJyRmxvd0ludmFsaWROYW1lcyA9IFsi
YXV0byIsICJkZWZhdWx0IiwgImluaGVyaXQiLCAiaW5pdGlhbCIsICJub25lIiwgIiIsICItMTJw
eCIsICJmbG93OyBjb2xvcjogcmVkOyJdOworICAgICAgICAgICAgdmFyIGFyckxlbiA9IGFyckZs
b3dJbnZhbGlkTmFtZXMubGVuZ3RoOworICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBh
cnJMZW47ICsraSkgeworICAgICAgICAgICAgICAgIHZhciBudWxsTmFtZWRGbG93ID0gZ2V0Rmxv
d0J5TmFtZShhcnJGbG93SW52YWxpZE5hbWVzW2ldKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQo
bnVsbE5hbWVkRmxvdyA9PSBudWxsLCAiTmFtZWQgZmxvdyBmb3IgIiArIGFyckZsb3dJbnZhbGlk
TmFtZXNbaV0gKyAiIHNob3VsZCBiZSBudWxsIik7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIC8vIEl0IHNob3VsZCBub3QgYmUgcG9zc2libGUgdG8gZ2V0IHRoZSBOYW1lZEZsb3cgb2Jq
ZWN0IGZvciBhIG1pc3NpbmcgZmxvdy4KKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRG
bG93QnlOYW1lKCJmbG93Iik7CisgICAgICAgICAgICBhc3NlcnQobmFtZWRGbG93ID09IG51bGws
ICJOYW1lZCBmbG93IGZvciBmbG93IHNob3VsZCBiZSBudWxsIik7CisgICAgICAgIDwvc2NyaXB0
PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmll
ZC1mbG93LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4y
MWU1ZmU0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L3dlYmtpdC1uYW1lZC1mbG93LW1vZGlmaWVkLWZsb3ctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
OSBAQAorVGVzdCBmb3IgNjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50
ZXJmYWNlCisKK0dldHRpbmcgdGhlIHdlYmtpdCBmbG93IG5hbWUgZm9yIHRoZSBwcmV2aW91cyBm
bG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3QuCisKK0dldHRpbmcgdGhlIHdlYmtp
dCBmbG93IG5hbWUgZm9yIHRoZSBuZXcgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2Jq
ZWN0LgorCitPbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgorCitQQVNTCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctbW9kaWZpZWQtZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dl
YmtpdC1uYW1lZC1mbG93LW1vZGlmaWVkLWZsb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi43Zjg4M2NlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW1vZGlmaWVkLWZsb3cuaHRtbApAQCAt
MCwwICsxLDYwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDwhLS0KKyAgICBUZXN0
IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIgKFtDU1NS
ZWdpb25zXVtDU1NPTV0gSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgorICAgIE1vZGlm
eSB0aGUgZmxvdyBuYW1lIGZvciBhbiBleGlzdGluZyBmbG93IHRocmVhZC4gCisgICAgR2V0dGlu
ZyB0aGUgd2Via2l0IGZsb3cgbmFtZSBmb3IgdGhlIHByZXZpb3VzIGZsb3cgcmV0dXJucyBhIHZh
bGlkIG9iamVjdC4KKyAgICBHZXR0aW5nIHRoZSB3ZWJraXQgZmxvdyBuYW1lIGZvciB0aGUgbmV3
IGZsb3cgcmV0dXJucyBhIHZhbGlkIG9iamVjdC4KKyAgICBPbiBzdWNjZXNzLCB5b3Ugc2hvdWxk
IHNlZSBhIFBBU1MgYmVsb3cuCisgICAgLS0+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQg
c3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgor
ICAgICAgICAgICAgLnBhc3MgeworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwor
ICAgICAgICAgICAgICAgIGNvbG9yOiBncmVlbjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgLmZhaWwgeworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICAg
ICAgICAgIGNvbG9yOiByZWQ7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5mbG93IHsK
KyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgLmZsb3cyIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50
bzogZmxvdzI7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5ub0Zsb3cgeworICAgICAg
ICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBub25lOworICAgICAgICAgICAgfQorICAgICAg
ICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+CisgICAg
ICAgIDxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD02NjY0MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50
ZXJmYWNlPC9hPjwvcD4KKyAgICAgICAgPHA+R2V0dGluZyB0aGUgd2Via2l0IGZsb3cgbmFtZSBm
b3IgdGhlIHByZXZpb3VzIGZsb3cgc2hvdWxkIHJldHVybiBhIG5vbi1udWxsIG9iamVjdC48L3A+
CisgICAgICAgIDxwPkdldHRpbmcgdGhlIHdlYmtpdCBmbG93IG5hbWUgZm9yIHRoZSBuZXcgZmxv
dyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KKyAgICAgICAgPHA+T24gc3Vj
Y2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9ImFy
dGljbGUiIGNsYXNzPSJmbG93Ij48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVzdWx0IiBjbGFz
cz0iZmFpbCI+RkFJTDwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworCisgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworICAgICAgICAg
ICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKTsKKyAgICAgICAg
ICAgICAgICBpZiAoIW5hbWVkRmxvdyAmJiBuYW1lZEZsb3cyKSB7CisgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lclRleHQgPSAiUEFTUyI7
CisgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5j
bGFzc05hbWUgPSAicGFzcyI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9
ICJmbG93MiI7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1u
YW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1uYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi40OGVmNjU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTIgQEAKK1RoaXMgdGVzdHMgdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSAnbmFtZScgYXR0cmli
dXRlIG9uIHRoZSBOYW1lZEZsb3cgb2JqZWN0IGF0dGFjaGVkIHRvIGEgZmxvdyB0aHJlYWQuIEZv
ciBtb3JlIGRldGFpbHMgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvV0QtY3NzMy1yZWdp
b25zLTIwMTIwNTAzLyNkb20tbmFtZWQtZmxvdworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworUEFTUyBuYW1lZEZsb3cubmFtZSBpcyAnZmxvdy1uYW1lJworUEFTUyBuYW1lZEZsb3cu
bmFtZSBpcyAnZmxvdy1uYW1lJworUEFTUyBuYW1lZEZsb3cubmFtZSBpcyAnZmxvdy1uYW1lJwor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1u
YW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctbmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiNWY5MjgK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctbmFtZS5odG1sCkBAIC0wLDAgKzEsNTEgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAgIC5mbG93IHsgLXdl
YmtpdC1mbG93LWludG86IGZsb3ctbmFtZTsgfQorICAgIC5yZWdpb24geyAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdy1uYW1lOyB9CisgICAgI3JlZ2lvbiB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1
MHB4OyB9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgICAgPHAgaWQ9ImFydGljbGUiIGNs
YXNzPSJmbG93Ij5UaGUgY29udGVudCBmbG93PC9wPgorPHNjcmlwdD4KKworZGVzY3JpcHRpb24o
IlRoaXMgdGVzdHMgdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSAnbmFtZScgYXR0cmlidXRlIG9u
IHRoZSBOYW1lZEZsb3cgb2JqZWN0IGF0dGFjaGVkIHRvIGEgZmxvdyB0aHJlYWQuIFwKKyAgICAg
ICAgICAgIEZvciBtb3JlIGRldGFpbHMgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvV0Qt
Y3NzMy1yZWdpb25zLTIwMTIwNTAzLyNkb20tbmFtZWQtZmxvdyIpOworCitpZiAod2luZG93LnRl
c3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKy8vIEZsb3cgYXJ0aWNs
ZSBkb2VzIG5vdCBoYXZlIGFueSByZWdpb25zIHlldAordmFyIG5hbWVkRmxvdyA9IGdldEZsb3dC
eU5hbWUoImZsb3ctbmFtZSIpOworCisvLyBUaGUgbmFtZSBzaG91bGQgYmUgJ2Zsb3ctbmFtZScg
d2hlbiB0aGVyZSBhcmUgbm8gcmVnaW9ucyB0byBmbG93IGludG8KK3Nob3VsZEJlKCJuYW1lZEZs
b3cubmFtZSIsICInZmxvdy1uYW1lJyIpOworCisvLyBBZGQgYSByZWdpb24gdG8gdGFrZSB0aGUg
Y29udGVudCwgdGhlIG5hbWUgc2hvdWxkIGJlIHRoZSBzYW1lCit2YXIgcmVnaW9uID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Citkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lv
bik7CityZWdpb24uaWQgPSAicmVnaW9uIjsKK3JlZ2lvbi5jbGFzc05hbWUgPSAicmVnaW9uIjsK
KworLy8gVGhlIG5hbWUgc2hvdWxkIGJlICdmbG93LW5hbWUnIHdoZW4gdGhlcmUgYXJlIHJlZ2lv
bnMgdG8gZmxvdyBpbnRvCitzaG91bGRCZSgibmFtZWRGbG93Lm5hbWUiLCAiJ2Zsb3ctbmFtZSci
KTsKKwordmFyIGFydGljbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwor
CisvLyBSZW1vdmUgdGhlIGZsb3cgYW5kIHRoZSByZWdpb24gZWxlbWVudCwgbW92ZSB0aGUgTmFt
ZWRGbG93IG9iamVjdCBpbiB0aGUgTlVMTCBzdGF0ZQorcmVnaW9uLmNsYXNzTmFtZSA9ICIiOwor
YXJ0aWNsZS5jbGFzc05hbWUgPSAiIjsKK3JlZ2lvbi5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwor
YXJ0aWNsZS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOworCisvLyBUaGUgbmFtZSBzaG91bGQgYmUg
J2Zsb3ctbmFtZScgd2hlbiB0aGUgbmFtZWQgZmxvdyBpcyBpbiB0aGUgTlVMTCBzdGF0ZQorc2hv
dWxkQmUoIm5hbWVkRmxvdy5uYW1lIiwgIidmbG93LW5hbWUnIik7Cis8L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbm9uLWV4aXN0aW5n
LWZsb3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVh
MzIxZjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctbm9uLWV4aXN0aW5nLWZsb3ctZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNyBAQAorVGVzdCBmb3IgNjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cg
aW50ZXJmYWNlCisKK0dldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgb2JqZWN0IGZvciBhIG5vbi1l
eGlzdGFudCBmbG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3QuCisKK09uIHN1Y2Nl
c3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCisKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhpc3Rpbmct
Zmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LW5vbi1leGlzdGluZy1mbG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uNjU2Y2I2YQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxvdy5odG1sCkBAIC0wLDAg
KzEsNDAgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPCEtLQorICAgIFRlc3QgZm9y
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiAoW0NTU1JlZ2lv
bnNdW0NTU09NXSBJbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZSkuCisgICAgVGVzdCB0aGF0
IGdldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgZm9yIGEgbm9uLWV4aXN0YW50IGZsb3cgcmV0dXJu
cyBhIG5vbi1udWxsIG9iamVjdC4KKyAgICBPbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBhIFBB
U1MgYmVsb3cuCisgICAgLS0+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAg
ICAgLnBhc3MgeworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICAg
ICAgICAgIGNvbG9yOiBncmVlbjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmZhaWwg
eworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICAgICAgICAgIGNv
bG9yOiByZWQ7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgor
ICAgIDxib2R5PgorICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1l
bnQgTmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+CisgICAgICAgIDxwPkdldHRpbmcgYSBXZWJL
aXROYW1lZEZsb3cgb2JqZWN0IGZvciBhIG5vbi1leGlzdGFudCBmbG93IHNob3VsZCByZXR1cm4g
YSBub24tbnVsbCBvYmplY3QuPC9wPgorICAgICAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxk
IHNlZSBQQVNTIGJlbG93LjwvcD4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSI+PC9kaXY+Cisg
ICAgICAgIDxkaXYgaWQ9InJlc3VsdCIgY2xhc3M9ImZhaWwiPkZBSUw8L2Rpdj4KKyAgICAgICAg
PHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxv
dyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKKyAgICAgICAgICAgIGlmICghbmFtZWRGbG93KSB7
CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVy
VGV4dCA9ICJQQVNTIjsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVzdWx0IikuY2xhc3NOYW1lID0gInBhc3MiOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUi
OworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctb3ZlcnNldC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctb3ZlcnNldC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uMDVlYTU3MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1vdmVyc2V0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDE4IEBACitUZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODc0OTEgW0NTUyBSZWdpb25zXVJlbmFtZSBOYW1lZEZsb3c6Om92ZXJmbG93IHRvIE5hbWVkRmxv
dzo6b3ZlcnNldC4gRm9yIG1vcmUgZGV0YWlscyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAx
Mi9XRC1jc3MzLXJlZ2lvbnMtMjAxMjA1MDMvCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIG5hbWVkRmxvdy5vdmVyc2V0IGlzIHRydWUKK1BBU1MgbmFtZWRGbG93Lm92ZXJz
ZXQgaXMgZmFsc2UKK1BBU1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMgdHJ1ZQorUEFTUyBuYW1lZEZs
b3cub3ZlcnNldCBpcyBmYWxzZQorUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyB0cnVlCitQQVNT
IG5hbWVkRmxvdy5vdmVyc2V0IGlzIGZhbHNlCitQQVNTIG5hbWVkRmxvdy5vdmVyc2V0IGlzIHRy
dWUKK1BBU1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMgZmFsc2UKK1BBU1MgbmFtZWRGbG93Lm92ZXJz
ZXQgaXMgdHJ1ZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1vdmVyc2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctb3ZlcnNldC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLmI0ZjY5NDMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctb3ZlcnNldC5odG1sCkBAIC0wLDAgKzEsOTkg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0
eWxlPgorICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgLmZsb3cgeyAt
d2Via2l0LWZsb3ctaW50bzogZmxvdyB9CisgICAgLnJlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93OyB9CisgICAgI3JlZ2lvbiB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Cisg
ICAgI3JlZ2lvbjIgeyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgfQorICAgICNyZWdpb24z
IHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJmbG93Ij4KKyAgICA8cD5Db250ZW50IGluc2lk
ZSBhcnRpY2xlPC9wPgorPC9kaXY+Cis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZv
ciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODc0OTEgW0NTUyBSZWdp
b25zXVJlbmFtZSBOYW1lZEZsb3c6Om92ZXJmbG93IHRvIE5hbWVkRmxvdzo6b3ZlcnNldC4gXAor
ICAgICAgICAgICAgICAgIEZvciBtb3JlIGRldGFpbHMgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RS
LzIwMTIvV0QtY3NzMy1yZWdpb25zLTIwMTIwNTAzLyIpOworCisgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAv
LyBGbG93IGFydGljbGUgZG9lcyBub3QgaGF2ZSBhbnkgcmVnaW9ucyB5ZXQKKyAgICB2YXIgbmFt
ZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworCisgICAgLy8gT3ZlcnNldCBzaG91bGQg
YmUgZmFsc2UgZm9yIGEgZmxvdyB3aXRob3V0IHJlZ2lvbnMKKyAgICBzaG91bGRCZSgibmFtZWRG
bG93Lm92ZXJzZXQiLCAidHJ1ZSIpOworCisgICAgLy8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhl
IGNvbnRlbnQsIG92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRoZSBjb250ZW50IGZpcnN0
IHRoZSByZWdpb25zLgorICAgIHZhciByZWdpb24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJk
aXYiKTsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbik7CisgICAgcmVnaW9u
LmlkID0gInJlZ2lvbiI7CisgICAgcmVnaW9uLmNsYXNzTmFtZSA9ICJyZWdpb24iOworCisgICAg
Ly8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ugc2luY2UgdGhlIGNvbnRlbnQgZml0cyB0aGUgcmVn
aW9ucworICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJmYWxzZSIpOworCisgICAg
Ly8gQWRkIG1vcmUgY29udGVudCB0byB0aGUgZmxvdywgb3ZlcnNldCBzaG91bGQgYmUgdHJ1ZS4K
KyAgICB2YXIgcCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKKyAgICBwLmFwcGVuZENo
aWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJDb250ZW50IGluc2lkZSBhcnRpY2xlIikpOwor
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocCk7CisK
KyAgICAvLyBPdmVyc2V0IHNob3VsZCBiZSB0cnVlIHNpbmNlIHRoZSBjb250ZW50IGRvZXMgbm90
IGZpdCB0aGUgcmVnaW9ucworICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJ0cnVl
Iik7CisKKyAgICAvLyBBZGQgYW5vdGhlciByZWdpb24sIG92ZXJzZXQgc2hvdWxkIGJlIGZhbHNl
CisgICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjIpOworICAgIHJlZ2lvbjIuaWQgPSAicmVn
aW9uMiI7CisgICAgcmVnaW9uMi5jbGFzc05hbWUgPSAicmVnaW9uIjsKKworICAgIC8vIE92ZXJz
ZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRoZSBjb250ZW50IGZpdHMgaW4gdGhlIHJlZ2lvbnMK
KyAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJzZXQiLCAiZmFsc2UiKTsKKworICAgIC8vIEFk
ZCB2aXN1YWwgb3ZlcnNldCwgb3ZlcnNldCBzaG91bGQgYmUgdHJ1ZS4KKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLndlYmtpdEJveFNoYWRvdz0iMHB4IDUwcHgg
bGltZSI7CisKKyAgICAvLyBPdmVyc2V0IHNob3VsZCBiZSB0cnVlIHNpbmNlIHRoZSBjb250ZW50
IGRvZXMgbm90IGZpdCBpbiByZWdpb25zCisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0
IiwgInRydWUiKTsKKworICAgIC8vIEFkZCB0aGUgdGhpcmQgcmVnaW9uLCBvdmVyc2V0IHNob3Vs
ZCBiZSBmYWxzZS4KKyAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRp
diIpOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7CisgICAgcmVnaW9u
My5pZCA9ICJyZWdpb24zIjsKKyAgICByZWdpb24zLmNsYXNzTmFtZSA9ICJyZWdpb24iOworCisg
ICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ugc2luY2UgdGhlIGNvbnRlbnQgZml0cyBpbiBy
ZWdpb25zCisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgImZhbHNlIik7CisKKyAg
ICAvLyBSZW1vdmUgdGhlIGZpcnN0IHJlZ2lvbiBmcm9tIHRoZSBmbG93LCBvdmVyc2V0IHNob3Vs
ZCBiZSB0cnVlLgorICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAiIjsKKworICAgIC8vIE92ZXJzZXQg
c2hvdWxkIGJlIHRydWUgc2luY2UgdGhlIGNvbnRlbnQgZG9lcyBub3QgZml0IHRoZSByZWdpb25z
CisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgInRydWUiKTsKKworICAgIC8vIFJl
bW92ZSB0aGUgY29udGVudCBmcm9tIHRoZSBmbG93LCBvdmVyc2V0IHNob3VsZCBiZSBmYWxzZS4K
KyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOwor
CisgICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ugc2luY2UgdGhlIGZsb3cgZG9lcyBub3Qg
aGF2ZSBhbnkgY29udGVudAorICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJmYWxz
ZSIpOworCisgICAgLy8gUmVtb3ZlIGFsbCB0aGUgcmVnaW9ucyBmcm9tIHRoZSBmbG93CisgICAg
cmVnaW9uMi5jbGFzc05hbWUgPSByZWdpb24zLmNsYXNzTmFtZSA9ICIiOworCisgICAgLy8gT3Zl
cnNldCBzaG91bGQgYmUgdHJ1ZSBzaW5jZSB0aGUgZmxvdyBkb2VzIG5vdCBoYXZlIGFueSByZWdp
b24gY2hhaW4KKyAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJzZXQiLCAidHJ1ZSIpOworCisg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5v
bmUiOworICAgIHJlZ2lvbi5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOworICAgIHJlZ2lvbjIuc3R5
bGUuZGlzcGxheSA9ICJub25lIjsKKyAgICByZWdpb24zLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3ctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LXJlbW92ZWQtZmxvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uM2E0YzIyOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3ctZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNyBAQAorVGVzdCBmb3IgNjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZs
b3cgaW50ZXJmYWNlCisKK0dldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgb2JqZWN0IGZvciBhIGZs
b3cgdGhhdCB3YXMgcmVtb3ZlZCByZXR1cm5zIGEgbm9uLW51bGwgb2JqZWN0LgorCitPbiBzdWNj
ZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgorCitQQVNTCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctcmVtb3ZlZC1mbG93
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
cmVtb3ZlZC1mbG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjRk
OTFkZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3cuaHRtbApAQCAtMCwwICsxLDU2IEBACis8IWRv
Y3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDwhLS0KKyAgICBUZXN0IGZvciBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIgKFtDU1NSZWdpb25zXVtDU1NPTV0gSW1w
bGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgorICAgIFRlc3QgdGhhdCBnZXR0aW5nIGEgV2Vi
S2l0TmFtZWRGbG93IGZvciBhIGZsb3cgdGhhdCB3YXMgcmVtb3ZlZCByZXR1cm5zIGEgdmFsaWQg
bm9uLW51bGwgb2JqZWN0LgorICAgIE9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIGEgUEFTUyBi
ZWxvdy4KKyAgICAtLT4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291
cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAgICAu
cGFzcyB7CisgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgICAgICAgICAg
ICAgY29sb3I6IGdyZWVuOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmFpbCB7Cisg
ICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgICAgICAgICAgICAgY29sb3I6
IHJlZDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmZsb3cgeworICAgICAgICAgICAg
ICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAubm9GbG93IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogbm9uZTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25s
b2FkPSJ0ZXN0KCkiPgorICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBs
ZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+CisgICAgICAgIDxwPkdldHRpbmcgYSBX
ZWJLaXROYW1lZEZsb3cgb2JqZWN0IGZvciBhIGZsb3cgdGhhdCB3YXMgcmVtb3ZlZCByZXR1cm5z
IGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KKyAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3Vs
ZCBzZWUgUEFTUyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJm
bG93Ij48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVzdWx0IiBjbGFzcz0iZmFpbCI+RkFJTDwv
ZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAg
ICAvLyBHZXQgdGhlIG5hbWVkIGZsb3cgb2JqZWN0IGJlZm9yZSByZW1vdmluZyB0aGUgZmxvdyB0
aHJlYWQuCisgICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIp
OworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdzI7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIHRl
c3QoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIG5hbWVkRmxvdzIgPSBnZXRGbG93
QnlOYW1lKCJmbG93Iik7CisgICAgICAgICAgICAgICAgaWYgKG5hbWVkRmxvdyAmJiAhbmFtZWRG
bG93MikgeworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVz
dWx0IikuaW5uZXJUZXh0ID0gIlBBU1MiOworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVzdWx0IikuY2xhc3NOYW1lID0gInBhc3MiOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAibm9GbG93IjsKKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUtb2JqZWN0LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1zYW1lLW9iamVjdC1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGRmMGVhNgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1zYW1lLW9iamVjdC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3IEBACitUZXN0
IGZvciA2NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UKKwor
QXNraW5nIGZvciB0aGUgc2FtZSB3ZWJraXQgbmFtZWQgZmxvdyB0d2ljZSBzaG91bGQgcmV0dXJu
IHRoZSBzYW1lIG5vbi1udWxsIG9iamVjdC4KKworT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUg
UEFTUyBiZWxvdy4KKworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUtb2JqZWN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1vYmplY3QuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMjIwZmNlCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUt
b2JqZWN0Lmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAg
ICA8IS0tCisgICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJm
YWNlKS4KKyAgICBUZXN0IHRoYXQgYXNraW5nIGZvciB0aGUgc2FtZSB3ZWJraXQgbmFtZWQgZmxv
dyB0d2ljZSByZXR1cm5zIHRoZSBzYW1lIG9iamVjdC4KKyAgICBPbiBzdWNjZXNzLCB5b3Ugc2hv
dWxkIHNlZSBhIFBBU1MgYmVsb3cuCisgICAgLS0+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxl
PgorICAgICAgICAgICAgLnBhc3MgeworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xk
OworICAgICAgICAgICAgICAgIGNvbG9yOiBncmVlbjsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgLmZhaWwgeworICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAg
ICAgICAgICAgIGNvbG9yOiByZWQ7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5mbG93
IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxw
PlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02NjY0MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNl
PC9hPjwvcD4KKyAgICAgICAgPHA+QXNraW5nIGZvciB0aGUgc2FtZSB3ZWJraXQgbmFtZWQgZmxv
dyB0d2ljZSBzaG91bGQgcmV0dXJuIHRoZSBzYW1lIG5vbi1udWxsIG9iamVjdC48L3A+CisgICAg
ICAgIDxwPk9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuPC9wPgorICAgICAg
ICA8ZGl2IGlkPSJhcnRpY2xlIiBjbGFzcz0iZmxvdyI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9
InJlc3VsdCIgY2xhc3M9ImZhaWwiPkZBSUw8L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAg
ICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5h
bWUoImZsb3ciKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgi
ZmxvdyIpOworICAgICAgICAgICAgaWYgKG5hbWVkRmxvdyA9PT0gbmFtZWRGbG93MikgeworICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lclRleHQg
PSAiUEFTUyI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3Vs
dCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtZXhwZWN0ZWQudHh0
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3MTZjYjVkLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLWV4cGVj
dGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAKLVRlc3RzIEVsZW1lbnQud2Vi
a2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1dGUKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgot
Ci0gIAotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJlbXB0eSIKLVBBU1MgcmVn
aW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZW1wdHkiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3Jl
Z2lvbl8zJykgaXMgImVtcHR5IgotRmxvdyBjb250ZW50Ci1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3Jl
Z2lvbl8xJykgaXMgImZpdCIKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZml0
IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJlbXB0eSIKLUFkZCBtb3JlIGNv
bnRlbnQKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgotUEFTUyByZWdp
b25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJmaXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lv
bl8zJykgaXMgImZpdCIKLUFkZCB2aXN1YWwgb3ZlcmZsb3cKLVBBU1MgcmVnaW9uT3ZlcnNldCgn
cmVnaW9uXzEnKSBpcyAiZml0IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJm
aXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgIm92ZXJzZXQiCi1FbXB0eSBj
b250ZW50Ci1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImVtcHR5IgotUEFTUyBy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJlbXB0eSIKLVBBU1MgcmVnaW9uT3ZlcnNldCgn
cmVnaW9uXzMnKSBpcyAiZW1wdHkiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0K
LVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Vs
ZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQt
c3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA1MmY1ZWQzLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFj
aW5nLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLVRlc3RzIEVs
ZW1lbnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1dGUKLQotT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgotCi0KLVBBU1MgcmVnaW9uXzEud2Via2l0UmVnaW9uT3ZlcnNldCBpcyAiZml0Igot
UEFTUyByZWdpb25fMi53ZWJraXRSZWdpb25PdmVyc2V0IGlzICJlbXB0eSIKLVBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2
ZS1sZXR0ZXItc3BhY2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQt
cmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzIyMTA4Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2ZS1sZXR0
ZXItc3BhY2luZy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotPGh0bWw+Ci08
aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgotPHN0eWxlPgotI2NvbnRlbnQgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xl
OwotICAgIGxldHRlci1zcGFjaW5nOiAtMXB4OwotICAgIGRpcmVjdGlvbjogcnRsOwotfQotI3Jl
Z2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7Ci0gICAg
b3ZlcnNldDp2aXNpYmxlOwotICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwotICAgIHZlcnRpY2Fs
LWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsKLX0KLQotI3JlZ2lvbl8xIHsgaGVpZ2h0OjEx
MHB4OyB3aWR0aDoyMDBweDsgfQotI3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBw
eDsgfQotCi08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci08aDEgaWQ9ImNvbnRlbnQiPkxvcmVt
IGlwc3VtPC9oMT4KLTxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbl8y
Ij48L2Rpdj4KLQotPHNjcmlwdD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdHMgRWxlbWVudC53ZWJr
aXRSZWdpb25PdmVyc2V0IGF0dHJpYnV0ZSIpCi0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7
Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIH0KLSAgICB2YXIgcmVnaW9u
XzEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICB2YXIgcmVnaW9u
XzIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKLSAgICB2YXIgY29udGVu
dCA9ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOwotICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uXzEud2Via2l0UmVnaW9uT3ZlcnNldCIsICJmaXQiKTsKLSAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbl8yLndlYmtpdFJlZ2lvbk92ZXJzZXQiLCAiZW1w
dHkiKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbl8xKTsKLSAgICBkb2N1
bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbl8yKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92
ZUNoaWxkKGNvbnRlbnQpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
ZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0
aWNhbC1ybC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcxNmNi
NWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9u
LW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMjggKzAsMCBAQAotVGVzdHMgRWxlbWVudC53ZWJraXRSZWdpb25PdmVyc2V0IGF0dHJpYnV0
ZQotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLSAgCi1QQVNTIHJlZ2lvbk92ZXJzZXQo
J3JlZ2lvbl8xJykgaXMgImVtcHR5IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlz
ICJlbXB0eSIKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHkiCi1GbG93
IGNvbnRlbnQKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgotUEFTUyBy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJmaXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3Jl
Z2lvbl8zJykgaXMgImVtcHR5IgotQWRkIG1vcmUgY29udGVudAotUEFTUyByZWdpb25PdmVyc2V0
KCdyZWdpb25fMScpIGlzICJmaXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMg
ImZpdCIKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAiZml0IgotQWRkIHZpc3Vh
bCBvdmVyZmxvdwotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJmaXQiCi1QQVNT
IHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImZpdCIKLVBBU1MgcmVnaW9uT3ZlcnNldCgn
cmVnaW9uXzMnKSBpcyAib3ZlcnNldCIKLUVtcHR5IGNvbnRlbnQKLVBBU1MgcmVnaW9uT3ZlcnNl
dCgncmVnaW9uXzEnKSBpcyAiZW1wdHkiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykg
aXMgImVtcHR5IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJlbXB0eSIKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0
ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNh
bC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGIxZDE0YjYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUt
bGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBA
QAotVGVzdHMgRWxlbWVudC53ZWJraXRSZWdpb25vdmVyc2V0IGF0dHJpYnV0ZQotCi1PbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyByZWdpb25fMS53ZWJraXRSZWdpb25PdmVyc2V0
IGlzICJmaXQiCi1QQVNTIHJlZ2lvbl8yLndlYmtpdFJlZ2lvbk92ZXJzZXQgaXMgImVtcHR5Igot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0
YXRlLXZlcnRpY2FsLXJsLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1u
ZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBkYWMyMWQxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50
LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5n
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1MCArMCwwIEBACi08aHRtbD4KLTxoZWFkPgotPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c3R5
bGU+Ci1odG1sIHsKLSAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7Ci19Ci0j
Y29udGVudCB7Ci0gICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgbGV0dGVyLXNw
YWNpbmc6IC0xcHg7Ci0gICAgZGlyZWN0aW9uOiBydGw7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25f
MnsKLSAgICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsKLSAgICBvdmVyc2V0OnZpc2libGU7
Ci0gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAg
IG1hcmdpbjoxMHB4OwotfQotCi0jcmVnaW9uXzEgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4
OyB9Ci0jcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyB9Ci0KLTwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLTxoMSBpZD0iY29udGVudCI+TG9yZW0gaXBzdW08L2gxPgotCi08
ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Ci08ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci0KLTxz
Y3JpcHQ+Ci0gICAgZGVzY3JpcHRpb24oIlRlc3RzIEVsZW1lbnQud2Via2l0UmVnaW9ub3ZlcnNl
dCBhdHRyaWJ1dGUiKQotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICB9Ci0gICAgdmFyIHJlZ2lvbl8xID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgdmFyIHJlZ2lvbl8yID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25fMS53ZWJraXRSZWdpb25PdmVyc2V0IiwgImZpdCIpOwotICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uXzIud2Via2l0UmVnaW9uT3ZlcnNldCIsICJlbXB0eSIpOwotICAgIHZh
ciBjb250ZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQiKTsKLSAgICBkb2N1
bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbl8xKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92
ZUNoaWxkKHJlZ2lvbl8yKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGNvbnRlbnQp
OwotICAgCi0KLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJl
Z2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmOTBiNDdkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJs
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMDkgKzAsMCBAQAotPGh0bWw+Ci08aGVhZD4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHN0
eWxlPgotaHRtbCB7LXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO30KLWJvZHkgeyBm
b250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0KLSNhcnRpY2xlIHsKLSAgICAtd2Via2l0LWZsb3ct
aW50bzogYXJ0aWNsZTsKLSAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKLX0KLQotI3JlZ2lv
bl8xLCAjcmVnaW9uXzIsICNyZWdpb25fMyB7Ci0gICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2Fy
dGljbGU7Ci0gICAgb3ZlcmZsb3c6dmlzaWJsZTsKLSAgICBkaXNwbGF5OmlubGluZS1ibG9jazsK
LSAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7Ci0gICAgbWFyZ2luOjEwcHg7Ci19Ci0KLS5ibG9jayB7
Ci0gICBkaXNwbGF5OmJsb2NrOwotfQotCi0jcmVnaW9uXzEgeyBoZWlnaHQ6MTEwcHg7IHdpZHRo
OjIwMHB4OyBib3JkZXI6MXB4IHNvbGlkICNhMGEwYTA7IH0KLSNyZWdpb25fMiB7IGhlaWdodDox
MTBweDsgd2lkdGg6MjAwcHg7IGJvcmRlcjoxcHggc29saWQgYmxhY2sgfQotI3JlZ2lvbl8zIHsg
aGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgYm9yZGVyOjFweCBzb2xpZCAjYTBhMGEwOyB9Ci0K
LTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIiBjbGFzcz0i
YmxvY2siPjwvZGl2PgotPGRpdiBpZD0iYXJ0aWNsZSI+Ci0gICAgPGRpdj4KLSAgICAgICAgPGRp
diBpZD0iY29udGVudCIgc3R5bGU9IndpZHRoOiAzOTZweDsgYmFja2dyb3VuZC1jb2xvcjogZ3Jl
ZW47Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb25fMSI+PC9k
aXY+Ci08ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci08ZGl2IGlkPSJyZWdpb25fMyI+PC9kaXY+
Ci0KLTxkaXYgaWQ9ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0g
ICAgZGVzY3JpcHRpb24oIlRlc3RzIEVsZW1lbnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1
dGUiKQotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICB0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKLSAgICB9Ci0gICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldChpZCkgewotICAg
ICAgICB2YXIgZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKLSAgICAgICAgcmV0dXJu
IGUud2Via2l0UmVnaW9uT3ZlcnNldDsKLSAgICB9Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQo
Zmxvd05hbWUpIHsKLSAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVn
aW9uXzEiKTsKLSAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAg
ICAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIu
c3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAgciA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb25fMyIpOwotICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9t
ID0gZmxvd05hbWU7Ci0gICAgfQotICAgIGZ1bmN0aW9uIGFkZFZpc3VhbE92ZXJmbG93KCkgewot
ICAgICAgICB2YXIgYyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0gICAg
ICAgIGMuc3R5bGUud2Via2l0Qm94U2hhZG93PSItMzBweCAwcHggbGltZSI7Ci0gICAgfQotICAg
IGZ1bmN0aW9uIGFkZE1vcmVDb250ZW50KCkgewotICAgICAgICB2YXIgYyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJjb250ZW50Iik7Ci0gICAgICAgIGMuc3R5bGUud2lkdGggPSA1OTY7Ci0g
ICAgfQotCi0gICAgZnVuY3Rpb24gdGVzdCgpIHsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImVtcHR5Iik7Ci0gICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJlbXB0eSIpOwot
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJyki
LCAiZW1wdHkiKTsKLQotICAgICAgICBkZWJ1ZygiRmxvdyBjb250ZW50Iik7Ci0gICAgICAgIGZs
b3dDb250ZW50KCJhcnRpY2xlIik7Ci0KLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImZpdCIpOwotICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7Ci0gICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJlbXB0eSIp
OwotCi0gICAgICAgIGRlYnVnKCJBZGQgbW9yZSBjb250ZW50Iik7Ci0gICAgICAgIGFkZE1vcmVD
b250ZW50KCk7Ci0KLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0
KCdyZWdpb25fMScpIiwgImZpdCIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJmaXQiKTsKLQotICAgICAgICBk
ZWJ1ZygiQWRkIHZpc3VhbCBvdmVyZmxvdyIpOwotICAgICAgICBhZGRWaXN1YWxPdmVyZmxvdygp
OwotCi0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9u
XzEnKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVy
c2V0KCdyZWdpb25fMicpIiwgImZpdCIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAib3ZlcnNldCIpOwotCi0gICAgICAgIGRlYnVn
KCJFbXB0eSBjb250ZW50Iik7Ci0gICAgICAgIGZsb3dDb250ZW50KCJub19hcnRpY2xlIik7Ci0K
LSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMScp
IiwgImVtcHR5Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNl
dCgncmVnaW9uXzInKSIsICJlbXB0eSIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1wdHkiKTsKLSAgICB9Ci0KLSAgICB0ZXN0
KCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiNzI5ZmUwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMDEgKzAsMCBAQAotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotI2FydGlj
bGUgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJvcmRlcjogMnB4IHNv
bGlkIGJsYWNrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzIsICNyZWdpb25fMyB7Ci0gICAgLXdl
YmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7Ci0gICAgb3ZlcmZsb3c6dmlzaWJsZTsKLSAgICBk
aXNwbGF5OmlubGluZS1ibG9jazsKLSAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7Ci0gICAgbWFyZ2lu
OjEwcHg7Ci19Ci0uYmxvY2sgewotICAgZGlzcGxheTpibG9jazsKLX0KLSNyZWdpb25fMSB7IGhl
aWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IH0KLSNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lk
dGg6MjAwcHg7IH0KLSNyZWdpb25fMyB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IH0KLTwv
c3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9uIiBjbGFzcz0iYmxv
Y2siPjwvZGl2PgotPGRpdiBpZD0iYXJ0aWNsZSI+Ci0gICAgPGRpdj4KLSAgICAgICAgPGRpdiBp
ZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjE2cHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVu
OyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2
PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzMiPjwvZGl2Pgot
Ci08ZGl2IGlkPSJjb25zb2xlIiBjbGFzcz0iYmxvY2siPjwvZGl2PgotCi08c2NyaXB0PgotICAg
IGRlc2NyaXB0aW9uKCJUZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lvbk92ZXJzZXQgYXR0cmlidXRl
IikKLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7Ci0gICAgfQotICAgIGZ1bmN0aW9uIHJlZ2lvbk92ZXJzZXQoaWQpIHsKLSAgICAg
ICAgdmFyIGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7Ci0gICAgICAgIHJldHVybiBl
LndlYmtpdFJlZ2lvbk92ZXJzZXQ7Ci0gICAgfQotICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZs
b3dOYW1lKSB7Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bl8xIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAg
ICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICByLnN0
eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgICAgIHIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uXzMiKTsKLSAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9
IGZsb3dOYW1lOwotICAgIH0KLSAgICBmdW5jdGlvbiBhZGRWaXN1YWxPdmVyZmxvdygpIHsKLSAg
ICAgICAgdmFyIGMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwotICAgICAg
ICBjLnN0eWxlLndlYmtpdEJveFNoYWRvdz0iMHB4IDMwcHggbGltZSI7Ci0gICAgfQotICAgIGZ1
bmN0aW9uIGFkZE1vcmVDb250ZW50KCkgewotICAgICAgICB2YXIgYyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJjb250ZW50Iik7Ci0gICAgICAgIGMuc3R5bGUuaGVpZ2h0ID0gMzI2OwotICAg
IH0KLQotICAgIGZ1bmN0aW9uIHRlc3QoKSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSIsICJlbXB0eSIpOwotICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZW1wdHkiKTsKLSAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwg
ImVtcHR5Iik7Ci0KLSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAgICBmbG93
Q29udGVudCgiYXJ0aWNsZSIpOwotCi0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVn
aW9uT3ZlcnNldCgncmVnaW9uXzEnKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImZpdCIpOwotICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1wdHkiKTsK
LQotICAgICAgICBkZWJ1ZygiQWRkIG1vcmUgY29udGVudCIpOwotICAgICAgICBhZGRNb3JlQ29u
dGVudCgpOwotCi0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgn
cmVnaW9uXzEnKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25PdmVyc2V0KCdyZWdpb25fMicpIiwgImZpdCIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZml0Iik7Ci0KLSAgICAgICAgZGVi
dWcoIkFkZCB2aXN1YWwgb3ZlcmZsb3ciKTsKLSAgICAgICAgYWRkVmlzdWFsT3ZlcmZsb3coKTsK
LQotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8x
JykiLCAiZml0Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNl
dCgncmVnaW9uXzInKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgIm92ZXJzZXQiKTsKLQotICAgICAgICBkZWJ1Zygi
RW1wdHkgY29udGVudCIpOwotICAgICAgICBmbG93Q29udGVudCgibm9fYXJ0aWNsZSIpOwotCi0g
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSIs
ICJlbXB0eSIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQo
J3JlZ2lvbl8yJykiLCAiZW1wdHkiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgImVtcHR5Iik7Ci0gICAgfQotICAgIHRlc3QoKTsK
LTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGll
bnQtcmVjdC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlZjIy
ZTkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50
LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xICsw
LDAgQEAKLVBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQt
Y29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1ob3Jpem9udGFsLWJ0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC1ob3Jpem9udGFsLWJ0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggN2VmMjJlOS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxv
d2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1QQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9y
aXpvbnRhbC1idC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50
LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMGI1MGFkZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3JlZ2lvbi1zdHlsZS5jc3MiPjwv
bGluaz4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCIgc3Jj
PSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLQotPHN0eWxlPgotICAgIGh0bWwgeyAt
d2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC1idDsgfQotCi0gICAgYm9keSB7IG1hcmdp
bjogMTBweDsgfQotCi0gICAgI3JlZ2lvbjEgewotICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7
Ci0gICAgICAgIGxlZnQ6IDEwMHB4OwotICAgICAgICB0b3A6IDEwcHg7Ci0gICAgICAgIHdpZHRo
OiA1MHB4OwotICAgICAgICBoZWlnaHQ6IDEwMHB4OwotICAgIH0KLQotICAgICNyZWdpb24yIHsK
LSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAgICB0b3A6IDEwcHg7Ci0gICAgICAg
IGxlZnQ6IDIwMHB4OwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4
OwotICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMzBweCA0MHB4OwotICAgICAgICBib3JkZXI6
IDFweCBzb2xpZCBibGFjazsKLSAgICB9Ci0gICAgCi0gICAgLmZpbmlzaGVkICNyZWdpb24xLCAu
ZmluaXNoZWQgI3JlZ2lvbjIgewotICAgICAgICBkaXNwbGF5OiBub25lOwotICAgIH0KLTwvc3R5
bGU+Ci0KLTxkaXYgaWQ9ImZsb3ciIGNsYXNzPSJmbG93QXJ0aWNsZSI+Ci0gICAgPGRpdiBpZD0i
Z3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYmx1ZSIgY2xhc3M9
ImJsdWVCb3giPjwvZGl2PgotICAgIDxkaXYgaWQ9Im9yYW5nZSIgY2xhc3M9Im9yYW5nZUJveCI+
PC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJlZ2lvbkFydGljbGUi
PjwvZGl2PgotPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkFydGljbGUiPjwvZGl2Pgot
Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7Ci0KLSAgICB2YXIgZXhwZWN0ZWRCb3VuZGluZ1JlY3RzID0gewotICAg
ICAgICBncmVlbjogWzYwLCAxMDAsIDExMCwgMTUwLCA1MCwgNTBdLAotICAgICAgICBibHVlOiBb
MTAsIDEwMCwgNjAsIDE1MCwgNTAsIDUwXSwKLSAgICAgICAgb3JhbmdlOiBbMjEsIDI0MSwgNzEs
IDI5MSwgNTAsIDUwXQotICAgIH07Ci0gICAgCi0gICAgaWYgKHRlc3RCb3VuZGluZ1JlY3RzKGV4
cGVjdGVkQm91bmRpbmdSZWN0cykpCi0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lID0g
ImZpbmlzaGVkIjsKLTwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1j
bGllbnQtcmVjdC12ZXJ0aWNhbC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDdlZjIyZTkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zs
b3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLVBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNh
bC1ybC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRl
bnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZWYyMmU5Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNh
bC1ybC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1QQVNTCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmct
Y2xpZW50LXJlY3QtdmVydGljYWwtcmwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9m
bG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1ybC5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMzFhY2QwLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0
aWNhbC1ybC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0
bWw+Ci0KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3JlZ2lvbi1zdHls
ZS5jc3MiPjwvbGluaz4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1
dGYtOCIgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLQotPHN0eWxlPgotICAg
IGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7IH0KLQotICAgIGJvZHkg
eyBtYXJnaW46IDEwcHg7IH0KLQotICAgICNyZWdpb24xIHsKLSAgICAgICAgcG9zaXRpb246IGFi
c29sdXRlOwotICAgICAgICBsZWZ0OiAxMDBweDsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAg
ICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgfQotCi0gICAgI3JlZ2lvbjIgewotICAgICAgICBwb3Np
dGlvbjogYWJzb2x1dGU7Ci0gICAgICAgIGxlZnQ6IDIwMHB4OwotICAgICAgICB3aWR0aDogNTBw
eDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgIH0KLSAgICAKLSAgICAuZmluaXNoZWQgI3Jl
Z2lvbjEsIC5maW5pc2hlZCAjcmVnaW9uMiB7Ci0gICAgICAgIGRpc3BsYXk6IG5vbmU7Ci0gICAg
fQotPC9zdHlsZT4KLQotPGRpdiBpZD0iZmxvdyIgY2xhc3M9ImZsb3dBcnRpY2xlIj4KLSAgICA8
ZGl2IGlkPSJncmVlbiIgY2xhc3M9ImdyZWVuQm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJibHVl
IiBjbGFzcz0iYmx1ZUJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ib3JhbmdlIiBjbGFzcz0ib3Jh
bmdlQm94Ij48L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0icmVnaW9u
QXJ0aWNsZSI+PC9kaXY+Ci08ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSI+
PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLQotICAgIHZhciBleHBlY3RlZEJvdW5kaW5nUmVjdHMg
PSB7Ci0gICAgICAgIGdyZWVuOiBbMTAsIDE1MCwgNjAsIDIwMCwgNTAsIDUwXSwKLSAgICAgICAg
Ymx1ZTogWzEwLCAxMDAsIDYwLCAxNTAsIDUwLCA1MF0sCi0gICAgICAgIG9yYW5nZTogWzEwLCAy
MDAsIDYwLCAyNTAsIDUwLCA1MF0KLSAgICB9OwotICAgIAotICAgIGlmICh0ZXN0Qm91bmRpbmdS
ZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMpKQotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNz
TmFtZSA9ICJmaW5pc2hlZCI7Ci08L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNs
aWVudC1yZWN0LXZlcnRpY2FsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc5
ODI2ZjIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250
ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSw1MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLQotPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSJyZXNvdXJjZXMvcmVnaW9uLXN0eWxlLmNzcyI+PC9saW5rPgotPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04IiBzcmM9InJlc291cmNlcy9oZWxwZXIuanMi
Pjwvc2NyaXB0PgotCi08c3R5bGU+Ci0gICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2
ZXJ0aWNhbC1scjsgfQotCi0gICAgYm9keSB7IG1hcmdpbjogMTBweDsgfQotCi0gICAgI3JlZ2lv
bjEgewotICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7Ci0gICAgICAgIGxlZnQ6IDEwMHB4Owot
ICAgICAgICB3aWR0aDogMTAwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICB9Ci0KLSAg
ICAjcmVnaW9uMiB7Ci0gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgbGVmdDog
MjQwcHg7Ci0gICAgICAgIHdpZHRoOiA2MHB4OwotICAgICAgICBoZWlnaHQ6IDcwcHg7Ci0gICAg
ICAgIHBhZGRpbmc6IDEwcHggMjBweCAzMHB4IDQwcHg7Ci0gICAgICAgIGJvcmRlcjogMXB4IHNv
bGlkIGJsYWNrOwotICAgIH0KLSAgICAKLSAgICAuZmluaXNoZWQgI3JlZ2lvbjEsIC5maW5pc2hl
ZCAjcmVnaW9uMiB7Ci0gICAgICAgIGRpc3BsYXk6IG5vbmU7Ci0gICAgfQotPC9zdHlsZT4KLQot
PGRpdiBpZD0iZmxvdyIgY2xhc3M9ImZsb3dBcnRpY2xlIj4KLSAgICA8ZGl2IGlkPSJncmVlbiIg
Y2xhc3M9ImdyZWVuQm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJibHVlIiBjbGFzcz0iYmx1ZUJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ib3JhbmdlIiBjbGFzcz0ib3JhbmdlQm94Ij48L2Rpdj4K
LTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSI+PC9kaXY+
Ci08ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSI+PC9kaXY+Ci0KLTxzY3Jp
cHQ+Ci0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICB0ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKLQotICAgIHZhciBleHBlY3RlZEJvdW5kaW5nUmVjdHMgPSB7Ci0gICAgICAgIGdy
ZWVuOiBbMTAsIDEwMCwgNjAsIDE1MCwgNTAsIDUwXSwKLSAgICAgICAgYmx1ZTogWzEwLCAxNTAs
IDYwLCAyMDAsIDUwLCA1MF0sCi0gICAgICAgIG9yYW5nZTogWzIxLCAyODEsIDcxLCAzMzEsIDUw
LCA1MF0KLSAgICB9OwotICAgIAotICAgIGlmICh0ZXN0Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJv
dW5kaW5nUmVjdHMpKQotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hl
ZCI7Ci08L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93
ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE1OTQxODcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw2MCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLQotPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSJyZXNvdXJjZXMvcmVnaW9uLXN0eWxlLmNzcyI+PC9saW5rPgot
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04IiBzcmM9InJlc291
cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotCi08c3R5bGU+Ci0gICAgYm9keSB7IG1hcmdpbjog
MTBweDsgfQotCi0gICAgLmJveCB7Ci0gICAgICAgIHdpZHRoOiA1MHB4OwotICAgICAgICBoZWln
aHQ6IDUwcHg7Ci0gICAgICAgIGZsb2F0OiBsZWZ0OwotICAgIH0KLQotICAgICNyZWdpb24xIHsK
LSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAgICBwYWRkaW5nOiAxMHB4OwotICAg
IH0KLQotICAgICNyZWdpb24yIHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAg
ICBsZWZ0OiAxMDBweDsKLSAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOwotICAgIH0K
LQotICAgICNyZWdpb24zIHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAgICBs
ZWZ0OiAyMDBweDsKLSAgICAgICAgcGFkZGluZzogMTBweDsKLSAgICAgICAgYm9yZGVyOiAxMHB4
IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAKLSAgICAuZmluaXNoZWQgI3JlZ2lvbjEsIC5maW5p
c2hlZCAjcmVnaW9uMiwgLmZpbmlzaGVkICNyZWdpb24zIHsKLSAgICAgICAgZGlzcGxheTogbm9u
ZTsKLSAgICB9Ci08L3N0eWxlPgotCi08ZGl2IGNsYXNzPSJmbG93QXJ0aWNsZSI+Ci0gICAgPGRp
diBpZD0iZ3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYmx1ZSIg
Y2xhc3M9ImJsdWVCb3giPjwvZGl2PgotICAgIDxkaXYgaWQ9Im9yYW5nZSIgY2xhc3M9Im9yYW5n
ZUJveCI+PC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJlZ2lvbkFy
dGljbGUgYm94Ij48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdpb25BcnRpY2xl
IGJveCI+PC9kaXY+Ci08ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSBib3gi
PjwvZGl2PgotCi08c2NyaXB0PgotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgCi0gICAgdmFyIGV4cGVjdGVkQm91bmRpbmdS
ZWN0cyA9IHsKLSAgICAgICAgZ3JlZW46IFsyMCwgMjAsIDcwLCA3MCwgNTAsIDUwXSwKLSAgICAg
ICAgYmx1ZTogWzIwLCAxMTAsIDcwLCAxNjAsIDUwLCA1MF0sCi0gICAgICAgIG9yYW5nZTogWzMw
LCAyMjAsIDgwLCAyNzAsIDUwLCA1MF0KLSAgICB9OwotICAgIAotICAgIGlmICh0ZXN0Qm91bmRp
bmdSZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMpKQotICAgICAgICBkb2N1bWVudC5ib2R5LmNs
YXNzTmFtZSA9ICJmaW5pc2hlZCI7Ci08L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJl
Y3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50
LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDdlZjIyZTkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1QQVNTCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtdHJhbnNmb3JtLWJvdW5k
aW5nLWNsaWVudC1yZWN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNv
bnRlbnQtdHJhbnNmb3JtLWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGZiYzg5YzMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3JlZ2lvbi1zdHlsZS5jc3MiPjwvbGlu
az4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCIgc3JjPSJy
ZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLQotPHN0eWxlPgotICAgIGJvZHkgeyBtYXJn
aW46IDEwcHg7IH0KLQotICAgIC5ib3ggewotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAg
aGVpZ2h0OiA1MHB4OwotICAgICAgICBmbG9hdDogbGVmdDsKLSAgICB9Ci0KLSAgICAjcmVnaW9u
MSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgMTBweCk7IH0KLSAgICAjcmVn
aW9uMiB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzBweCwgMjBweCkgcm90YXRlKDQ1
ZGVnKTsgfQotICAgICNyZWdpb24zIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg3MHB4
LCAzMHB4KSBzY2FsZSgyLDIpOyB9Ci0gICAgCi0gICAgLmZpbmlzaGVkICNyZWdpb24xLCAuZmlu
aXNoZWQgI3JlZ2lvbjIsIC5maW5pc2hlZCAjcmVnaW9uMyB7Ci0gICAgICAgIGRpc3BsYXk6IG5v
bmU7Ci0gICAgfQotPC9zdHlsZT4KLQotPGRpdiBjbGFzcz0iZmxvd0FydGljbGUiPgotICAgIDxk
aXYgaWQ9ImdyZWVuIiBjbGFzcz0iZ3JlZW5Cb3giPjwvZGl2PgotICAgIDxkaXYgaWQ9ImJsdWUi
IGNsYXNzPSJibHVlQm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJvcmFuZ2UiIGNsYXNzPSJvcmFu
Z2VCb3giPjwvZGl2PgotPC9kaXY+Ci08ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0icmVnaW9uQXJ0
aWNsZSBib3giPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkFydGljbGUg
Ym94Ij48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJyZWdpb25BcnRpY2xlIGJveCI+
PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgCi0gICAgdmFyIGV4cGVjdGVkQm91bmRpbmdSZWN0cyA9IHsKLSAgICAgICAgZ3JlZW46IFsy
MCwgMjAsIDcwLCA3MCwgNTAsIDUwXSwKLSAgICAgICAgYmx1ZTogWzIwLCA4MCwgOTAsIDE1MCwg
NzAsIDcwXSwKLSAgICAgICAgb3JhbmdlOiBbMTUsIDE1NSwgMTE1LCAyNTUsIDEwMCwgMTAwXQot
ICAgIH07Ci0gICAgCi0gICAgaWYgKHRlc3RCb3VuZGluZ1JlY3RzKGV4cGVjdGVkQm91bmRpbmdS
ZWN0cywgMSkpCi0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lID0gImZpbmlzaGVkIjsK
LTwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1p
bmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWlubGluZS1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1y
ZWN0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTE3YjY0NC4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWlubGluZS1jb250
ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDUgKzAsMCBAQAotVGVzdCBmb3IgV2ViS2l0IEJ1ZyAxMTcyOTAgW0NTU1JlZ2lvbnNdIGdldEJv
dW5kaW5nQ2xpZW50UmVjdCB3cm9uZyBmb3IgaW5saW5lIGNvbnRlbnQgbm9kZXMKLQotT24gc3Vj
Y2VzcyB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgotCi1QQVNTCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWlubGluZS1jb250ZW50LWJvdW5kaW5nLWNsaWVu
dC1yZWN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWlubGluZS1jb250
ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDk5YjM5ZjIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dl
ZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsNjkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAg
ICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04IiBzcmM9
InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAg
ICAgICBib2R5IHsgbWFyZ2luOiAxMHB4OyB9Ci0KLSAgICAgICAgICAgICNmbG93MSB7Ci0gICAg
ICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Ci0gICAgICAgICAgICAgICAgZm9u
dDogMjBweC8xIEFoZW07Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICNyZWdpb24xIHsK
LSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsKLSAgICAgICAgICAgICAg
ICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4
OwotICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgICAgICAgICBwb3NpdGlv
bjogYWJzb2x1dGU7Ci0gICAgICAgICAgICAgICAgdG9wOiAxNTBweDsKLSAgICAgICAgICAgICAg
ICBsZWZ0OiAxMDBweDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgI2Zsb3cyIHsKLSAg
ICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7Ci0gICAgICAgICAgICAgICAg
Zm9udDogMjBweC8xIEFoZW07Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICNyZWdpb24y
IHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7Ci0gICAgICAgICAg
ICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOwotICAgICAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICAgICAgcG9z
aXRpb246IGFic29sdXRlOwotICAgICAgICAgICAgICAgIHRvcDogMjUwcHg7Ci0gICAgICAgICAg
ICAgICAgbGVmdDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRy
YW5zbGF0ZSgxMHB4LCAxMHB4KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmZpbmlz
aGVkICNyZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIsIC5maW5pc2hlZCAjZmxvdzEsIC5maW5p
c2hlZCAjZmxvdzIgewotICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8
cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTE3MjkwIj5XZWJLaXQgQnVnIDExNzI5MDwvYT4gW0NTU1JlZ2lvbnNdIGdldEJvdW5kaW5n
Q2xpZW50UmVjdCB3cm9uZyBmb3IgaW5saW5lIGNvbnRlbnQgbm9kZXM8L3A+Ci0gICAgICAgIDxw
Pk9uIHN1Y2Nlc3MgeW91IHNob3VsZCBzZWUgUEFTUyAgYmVsb3cuPC9wPgotCi0gICAgICAgIDxz
cGFuIGlkPSJmbG93MSI+YWFhYWE8L3NwYW4+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbjEiPjwv
ZGl2PgotCi0gICAgICAgIDxzcGFuIGlkPSJmbG93MiI+YWFhYWE8L3NwYW4+Ci0gICAgICAgIDxk
aXYgaWQ9InJlZ2lvbjIiPjwvZGl2PgotCi0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNU
ZXh0KCk7Ci0KLSAgICAgICAgICAgIC8vIFt0b3AsIGxlZnQsIGJvdHRvbSwgcmlnaHQsIHdpZHRo
LCBoZWlnaHRdCi0gICAgICAgICAgICB2YXIgZXhwZWN0ZWRCb3VuZGluZ1JlY3RzID0gewotICAg
ICAgICAgICAgICAgIGZsb3cxOiBbMTYwLCAxMTAsIDE4MCwgMjEwLCAxMDAsIDIwXSwKLSAgICAg
ICAgICAgICAgICBmbG93MjogWzI3MCwgMTIwLCAyOTAsIDIyMCwgMTAwLCAyMF0KLSAgICAgICAg
ICAgIH07Ci0KLSAgICAgICAgICAgIGlmICh0ZXN0Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5k
aW5nUmVjdHMpKQotICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lID0gImZp
bmlzaGVkIjsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1h
YnNvbHV0ZS1wb3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtYWJzb2x1dGUtcG9zLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggY2U4Y2FhNC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNvbHV0ZS1wb3MtZXhwZWN0ZWQudHh0
CisrKyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1bQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVn
aW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBhYnNvbHV0ZSBwb3NpdGlvbmVkIGVsZW1lbnRz
Ci1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLHdyYXBwZXIs
MV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCx3cmFwcGVyLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtYWJzb2x1dGUtcG9zLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNvbHV0ZS1w
b3MuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGUzNjIwNS4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNv
bHV0ZS1wb3MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM0ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwv
c2NyaXB0PgotPHN0eWxlPgotICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0K
LSAgICAjYm94MSB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OyBwb3NpdGlvbjogYWJzb2x1dGU7
IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyB0b3A6
IDI1cHg7IGxlZnQ6IDI1cHg7IH0KLSAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBm
bG93OyB3aWR0aDogMTAwcHg7IGhlaWdodDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9w
OiAxMDBweDsgbGVmdDogNTBweDsgfQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxk
aXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlk
PSJib3gxIj48L2Rpdj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVy
Ij48L2Rpdj4KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
LSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgZGVidWco
IltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGFi
c29sdXRlIHBvc2l0aW9uZWQgZWxlbWVudHMiKTsKLSAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRH
ZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0
aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBw
ZXIiLCAwLCAid3JhcHBlciIsIDFdKTsKLQotZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygp
IHsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxp
dHkgPSAiaGlkZGVuIjsKLX0KLQotICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKLTwvc2NyaXB0
PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2dldC1yZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rlcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVz
LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjBhNjc5ZS4uMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy1jb250ZW50LW5vZGVzLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAg
QEAKLVtDU1NSZWdpb25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIHdp
dGggbXVsdGlwbGUgY29udGVudCBub2RlcwotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LVRleHQgbm9kZS4KLUZsb3cgdGVzdAotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJy
YXkgW3dyYXBwZXIsMCwjdGV4dCw0XSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLCN0ZXh0LDRdCi1Q
QVNTIHJhbmdlMi5sZW5ndGggaXMgMgotUEFTUyBBcnJheSBbI3RleHQsNSx3cmFwcGVyLDFdIGlz
IGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBwZXIsMV0KLVBBU1MgQXJyYXkgW3dyYXBwZXIyLDAsd3Jh
cHBlcjIsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIyLDAsd3JhcHBlcjIsMV0KLVBBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1j
b250ZW50LW5vZGVzLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlZDA0OWEu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtY29udGVudC1ub2Rlcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTIgKzAsMCBAQAot
PCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgiPgot
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0gICAg
Ym9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAjd3JhcHBlciB7IGZvbnQtc2l6
ZTogNTBweDsgfQotICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KLSAgICAu
ZmxvdyB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTt9Ci0gICAgLmJsdWUge2JhY2tncm91bmQt
Y29sb3I6IGxpZ2h0Ymx1ZTsgd2lkdGg6IDUwcHg7IGhlaWdodDogNTBweDt9Ci0gICAgI3JlZ2lv
bjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA3MHB4
OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4O30KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDEyMHB4OyBsZWZ0OiAyMHB4OyB0b3A6
IDMwMHB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVzY3JpcHRp
b24iPjwvZGl2PgotICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGNsYXNzPSJmbG93Ij5UZXh0IG5v
ZGUuPC9kaXY+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2
PgotICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0i
d3JhcHBlcjIiPjxkaXYgY2xhc3M9ImZsb3cgYmx1ZSI+PC9kaXY+PC9kaXY+Ci0gIDxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAg
ICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZs
b3dSYW5nZXMgd2l0aCBtdWx0aXBsZSBjb250ZW50IG5vZGVzIik7Ci0gICAgdmFyIHJlZ2lvbjEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciByZWdpb24yID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLQotCi0gICAgZGVidWcoIkZsb3cg
dGVzdCIpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdlcygp
OwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJl
QXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIiN0ZXh0IiwgNF0p
OwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAyKTsKLSAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwgMV0pOwotICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDEpLCBbIndyYXBwZXIyIiwgMCwgIndy
YXBwZXIyIiwgMV0pOwotCi0KLWZ1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0gICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNp
YmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0KLSAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Ci08L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWRpc3BsYXktbm9uZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5LW5v
bmUtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZjMxYmM0Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLWRpc3BsYXktbm9uZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCww
IEBACi1bQ1NTUmVnaW9uc10gSW1wbGVtZW50IFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBm
b3IgZWxlbWVudHMgd2l0aCBkaXNwbGF5Om5vbmUgKFJhbmdlIHNob3VsZCBub3QgYnJlYWsgcmFu
Z2VzIGF0IGRpc3BsYXk6bm9uZSkKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0xCi0z
Ci01Ci1GbG93IHRlc3QKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFw
cGVyLDAsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLHdyYXBwZXIsMV0KLVBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5
LW5vbmUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLWRpc3BsYXktbm9uZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMmU1
YTBlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZs
b3ctcmFuZ2VzLWRpc3BsYXktbm9uZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDIgKzAsMCBA
QAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgi
PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0g
ICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAjd3JhcHBlciB7IGZvbnQt
c2l6ZTogMjBweDsgfQotICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KLSAg
ICAuZmxvdyB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTt9Ci0gICAgI3dyYXBwZXIgcCB7bWFy
Z2luOiAwOyBwYWRkaW5nOiAwO30KLSAgICAubm9uZSB7ZGlzcGxheTogbm9uZTt9Ci0gICAgI3Jl
Z2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA3
MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2
IGNsYXNzPSJmbG93Ij48cD4xPC9wPjxwIGNsYXNzPSJub25lIj4yPC9wPjxwPjM8L3A+PHAgY2xh
c3M9Im5vbmUiPjQ8L3A+PHA+NTwvcD48L2Rpdj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMSIg
Y2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlw
dD4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQotICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lv
bnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGVsZW1lbnRzIHdp
dGggZGlzcGxheTpub25lIChSYW5nZSBzaG91bGQgbm90IGJyZWFrIHJhbmdlcyBhdCBkaXNwbGF5
Om5vbmUpIik7Ci0gICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVn
aW9uMSIpOwotCi0gICAgZGVidWcoIkZsb3cgdGVzdCIpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEu
d2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdl
MS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwg
WyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIiLCAxXSk7Ci0KLWZ1bmN0aW9uIGhpZGVSZWdpb25zQW5k
Rmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52
aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0KLSAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Ci08
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHkt
cmVnaW9ucy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI0YWM0
NDEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtZW1wdHktcmVnaW9ucy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwx
MyArMCwwIEBACi1bQ1NTUmVnaW9uc10gSW1wbGVtZW50IFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1Jh
bmdlcyBmb3IgZW1wdHkgcmVnaW9ucwotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLUZs
b3cgdGVzdAotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDAKLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAx
Ci1QQVNTIEFycmF5IFt3cmFwcGVyLDAsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciww
LHdyYXBwZXIsMV0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAwCi1QQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHktcmVnaW9ucy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHktcmVn
aW9ucy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZDQ0ZmQ4Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVt
cHR5LXJlZ2lvbnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUyICswLDAgQEAKLTwhRE9DVFlQ
RSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJvZHkgeyBm
b250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBmb250LXNpemU6IDUwcHg7
IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgI2JveCB7IC13
ZWJraXQtZmxvdy1pbnRvOiBmbG93MTsgaGVpZ2h0OiA1MHB4OyBtYXJnaW4tdG9wOiA0MHB4OyBi
YWNrZ3JvdW5kLWNvbG9yOiBibHVlfQotICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogMzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBw
eDt9Ci0gICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBw
eDsgaGVpZ2h0OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KLSAgICAjcmVnaW9uMyB7
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxl
ZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICA8ZGl2
IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci0gIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJv
eCI+PC9kaXY+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2
PgotICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0i
cmVnaW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQotICAgICAg
ICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAgICBkZXNjcmlwdGlvbigi
W0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGVt
cHR5IHJlZ2lvbnMiKTsKLSAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb24xIik7Ci0gICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVnaW9uMiIpOwotICAgIHZhciByZWdpb24zID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjMiKTsKLQotICAgIGRlYnVnKCJGbG93IHRlc3QiKTsKLSAgICByYW5nZTEgPSByZWdpb24x
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTEubGVuZ3RoIiwgMCk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbIndyYXBwZXIiLCAwLCAid3Jh
cHBlciIsIDFdKTsKLSAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5n
ZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMCk7Ci0KLWZ1bmN0
aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7Ci19Ci0KLSAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGQ0MDJiMDUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dl
dC1yZWdpb24tZmxvdy1yYW5nZXMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDIg
KzAsMCBAQAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1Jhbmdl
cy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1UZXh0IG5vZGUuCi1FbXB0eSByZWdp
b25zCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMAotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDAKLVBB
U1MgcmFuZ2UzLmxlbmd0aCBpcyAwCi1GbG93IGFydGljbGUKLVBBU1MgcmFuZ2UxLmxlbmd0aCBp
cyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciww
LGJveDEsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94
MSwxXSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMV0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
Ci1QQVNTIEFycmF5IFtib3gxLDEsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwxLHdyYXBw
ZXIsMV0KLUFkZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2sp
Ci1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0g
aXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQot
UEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJdCi1Q
QVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwyLHdyYXBwZXIsMV0gaXMg
ZXF1YWwgdG8gW2JveDEsMix3cmFwcGVyLDFdCi1JbmNyZWFzZSBmb250IHNpemUKLVBBU1MgcmFu
Z2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0
byBbd3JhcHBlciwwLGJveDEsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5
IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQotUEFTUyByYW5n
ZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0
byBbI3RleHQsNSx3cmFwcGVyLDFdCi1NYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3
aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAy
Ci1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwwXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJv
eDEsMF0KLVBBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0
ZXh0LDRdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbI3RleHQsNSxib3gx
LDJdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LGJveDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
Ci1QQVNTIEFycmF5IFtib3gxLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwwLGJveDEsMV0K
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1m
aXhlZC1wb3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggODdlYWVjYi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhlZC1wb3MtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsNyArMCwwIEBACi1bQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRS
ZWdpb25GbG93UmFuZ2VzIGZvciBmaXhlZCBwb3NpdGlvbmVkIGVsZW1lbnRzCi1QQVNTIHJhbmdl
MS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLHdyYXBwZXIsMV0gaXMgZXF1YWwg
dG8gW3dyYXBwZXIsMCx3cmFwcGVyLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
Ci0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhlZC1wb3MuaHRtbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYmJiOTFlMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhlZC1wb3MuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDMzICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4K
LTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAg
IC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KLSAgICAjYm94MSB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OyBwb3NpdGlvbjogZml4ZWQ7IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDUw
cHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyB0b3A6IDI1cHg7IGxlZnQ6IDI1cHg7IH0KLSAg
ICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMTAwcHg7IGhlaWdo
dDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAxMDBweDsgbGVmdDogNTBweDsgfQot
PC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rp
dj4KLSAgICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gxIj48L2Rpdj48L2Rpdj4KLSAg
ICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLTxzY3JpcHQ+Ci0gICAg
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgZGVidWcoIltDU1NSZWdpb25zXSBUZXN0IGZvciBS
ZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGZpeGVkIHBvc2l0aW9uZWQgZWxlbWVudHMi
KTsKLSAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7
Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAg
c2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMo
Z2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAid3JhcHBlciIsIDFdKTsKLQot
ZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLX0KLSAgICBoaWRl
UmVnaW9uc0FuZEZsb3dzKCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWhvcml6
LWJ0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZs
b3ctcmFuZ2VzLWhvcml6LWJ0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggODFkYThlZC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw0MiArMCwwIEBACi1bQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25G
bG93UmFuZ2VzIGZvciBob3Jpem9udGFsLWJ0IG1vZGUKLQotT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgotCi1UZXh0IG5vZGUuCi1FbXB0eSByZWdpb25zCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMg
MAotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDAKLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAwCi1GbG93
IGFydGljbGUKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAs
Ym94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0
aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwxLGJv
eDEsMV0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsd3JhcHBl
ciwxXSBpcyBlcXVhbCB0byBbYm94MSwxLHdyYXBwZXIsMV0KLUFkZCB0ZXh0IG5vZGUgdG8gcmVn
aW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2spCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQot
UEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gx
LDFdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0g
aXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFT
UyBBcnJheSBbYm94MSwyLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gW2JveDEsMix3cmFwcGVyLDFd
Ci1JbmNyZWFzZSBmb250IHNpemUKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5
IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KLVBBU1Mg
cmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwg
dG8gW2JveDEsMSwjdGV4dCw0XQotUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkg
WyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3cmFwcGVyLDFdCi1NYWtl
IGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJl
Z2lvbjMKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAyCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94
MSwwXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMF0KLVBBU1MgQXJyYXkgW2JveDEsMSwj
dGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0ZXh0LDRdCi1QQVNTIHJhbmdlMi5sZW5ndGgg
aXMgMQotUEFTUyBBcnJheSBbI3RleHQsNSxib3gxLDJdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LGJv
eDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDAsYm94MSwx
XSBpcyBlcXVhbCB0byBbYm94MSwwLGJveDEsMV0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDExNWI3YS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsMTA3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVh
ZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIu
anMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTog
aG9yaXpvbnRhbC1idDsgfQotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0g
ICAgI3dyYXBwZXIgeyBmb250LXNpemU6IDMwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAx
cHggc29saWQgcmVkOyB9Ci0gICAgI2FydGljbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJs
dWU7IGhlaWdodDogMTM1cHg7IHBhZGRpbmc6IDEwcHg7fQotICAgICNib3gxIHsgYmFja2dyb3Vu
ZC1jb2xvcjogbGlnaHRncmVlbjsgaGVpZ2h0OiAxMTBweDsgcGFkZGluZzogMTBweDt9Ci0gICAg
I2JveDIgeyBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7IGhlaWdodDogMTBweDsgcGFkZGluZzog
NXB4O30KLSAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1
MHB4OyBoZWlnaHQ6IDcwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQotICAgICNyZWdpb24y
IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsg
bGVmdDogMjBweDsgdG9wOiAzMDBweDt9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJv
bTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDM1
MHB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVzY3JpcHRpb24i
PjwvZGl2PgotICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJhcnRpY2xlIj48ZGl2IGlkPSJi
b3gxIj48ZGl2IGlkPSJib3gyIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KLSAgPGRpdiBpZD0i
cmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNz
PSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVyIj48L2Rp
dj4KLSAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKLQotICAgIGRlc2NyaXB0aW9uKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9u
OjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBob3Jpem9udGFsLWJ0IG1vZGUiKTsKLSAgICB2YXIg
cmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7Ci0gICAgdmFyIHJl
Z2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOwotICAgIHZhciByZWdp
b24zID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKTsKLQotICAgIGRlYnVnKCJF
bXB0eSByZWdpb25zIik7Ci0gICAgdmFyIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9u
Rmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAwKTsK
LSAgICB2YXIgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0g
ICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDApOwotICAgIHZhciByYW5nZTMg
PSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMCk7Ci0KLSAgICBkZWJ1ZygiRmxvdyBhcnRpY2xlIik7Ci0g
ICAgdmFyIGFydGljbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwotICAg
IGFydGljbGUuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOwotICAgIHJhbmdlMSA9IHJl
Z2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2Ux
LCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53
ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2Uy
Lmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBb
ImJveDEiLCAxLCAiYm94MSIsIDFdKTsKLSAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwg
MSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiYm94MSIsIDEs
ICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVidWcoIkFkZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAo
Y3JlYXRlcyBhbm9ueW1vdXMgYmxvY2spIik7Ci0gICAgdmFyIHRleHROb2RlID0gZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4iKTsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYm94MSIpLmFwcGVuZENoaWxkKHRleHROb2RlKTsKLSAgICByYW5nZTEgPSByZWdpb24xLndl
YmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEu
bGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsi
d3JhcHBlciIsIDAsICJib3gxIiwgMV0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0
UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgi
LCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwg
MSwgImJveDEiLCAyXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCAgWyJib3gxIiwgMiwgIndyYXBw
ZXIiLCAxXSk7Ci0KLSAgICBkZWJ1ZygiSW5jcmVhc2UgZm9udCBzaXplIik7Ci0gICAgdmFyIHdy
YXBwZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid3JhcHBlciIpOwotICAgIHdyYXBwZXIu
c3R5bGUuZm9udFNpemUgPSAiNDBweCI7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIs
IDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIi
LCAwLCAiYm94MSIsIDFdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0g
ICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICIjdGV4
dCIsIDRdKTsKLSAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMo
KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFy
ZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiI3RleHQiLCA1LCAid3JhcHBlciIsIDFd
KTsKLQotICAgIGRlYnVnKCJNYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3aWxsIG1v
dmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMiKTsKLSAgICB2YXIgYm94MiA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdib3gyJyk7Ci0gICAgYm94Mi5zdHlsZS53ZWJraXRGbG93SW50byA9ICJm
bG93MSI7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDIpOwotICAgIGNvbXBhcmVB
cnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDBdKTsK
LSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAxKSwgWyJib3gxIiwgMSwgIiN0
ZXh0IiwgNF0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4dCIsIDUsICJib3gxIiwgMl0p
OwotICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMCwgImJveDEiLCAxXSk7Ci0KLWZ1bmN0
aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7Ci19Ci0KLSAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Ci08L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5LWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWNhMzRjNC4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25s
eS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1bQ1NTUmVnaW9u
c10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBpbmxpbmUgZWxlbWVu
dHMKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1GbG93IHRlc3QKLVBBU1MgcmFuZ2Ux
Lmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsd3JhcHBlciwxXSBpcyBlcXVhbCB0
byBbd3JhcHBlciwwLHdyYXBwZXIsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAwCi1QQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLW9u
bHkuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2Vz
LWlubGluZS1vbmx5Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZhZjAyNjMu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtaW5saW5lLW9ubHkuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ3ICswLDAgQEAKLTwh
RE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJv
ZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBmb250LXNpemU6
IDIwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgI2lu
bGluZU9ubHkgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7IGJhY2tncm91bmQtY29sb3I6IGxp
Z2h0Ymx1ZTsgaGVpZ2h0OiAxMzVweDsgcGFkZGluZzogMTBweDt9Ci0gICAgI3JlZ2lvbjEgeyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA3MHB4OyBsZWZ0
OiAyMHB4OyB0b3A6IDI1MHB4O30KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBm
bG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7
fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+Ci0gIDxkaXYgaWQ9IndyYXBwZXIiPjxzcGFuIGlkPSJpbmxpbmVPbmx5Ij48L3NwYW4+PC9k
aXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlk
PSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAg
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLQotICAgIGRlc2NyaXB0aW9u
KCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBp
bmxpbmUgZWxlbWVudHMiKTsKLSAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb24xIik7Ci0gICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uMiIpOwotCi0KLSAgICBkZWJ1ZygiRmxvdyB0ZXN0Iik7Ci0gICAgcmFuZ2UxID0g
cmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTEsIDApLCBbIndyYXBwZXIiLCAwLCAid3JhcHBlciIsIDFdKTsKLSAgICByYW5nZTIgPSByZWdp
b24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
YW5nZTIubGVuZ3RoIiwgMCk7Ci0KLWZ1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0g
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0g
ImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52
aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0KLSAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Ci08
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2
Zy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk1ZWNiODYuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtaW5saW5lLXN2Zy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAK
LVRlc3QgdGhhdCBnZXR0aW5nIHRoZSByZWdpb24gcmFuZ2VzIHdoZW4gdGhlIGZsb3dpbmcgY29u
dGVudCBoYXMgaW5saW5lIHN2ZyBkb2VzIG5vdCBjcmFzaC4KLQotT24gc3VjY2VzcyB5b3Ugc2hv
dWxkIHNlZSBQQVNTIGJlbG93LgotCi1QQVNTCi0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlODRhMTljLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1z
dmcuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgot
PGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNhcnRpY2xl
IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgICNyZWdpb24geyAtd2Vi
a2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyB9Ci0gICAg
ICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8c2NyaXB0Pgot
ICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHA+VGVzdCB0
aGF0IGdldHRpbmcgdGhlIHJlZ2lvbiByYW5nZXMgd2hlbiB0aGUgZmxvd2luZyBjb250ZW50IGhh
cyBpbmxpbmUgc3ZnIGRvZXMgbm90IGNyYXNoLjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcyB5
b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LjwvcD4KLSAgICAgICAgPHAgaWQ9Im91dHB1dCI+PC9w
PgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICAgICAgICAgIDxzdmcgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiPgotICAgICAgICAgICAgICAg
IDxyZWN0IHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBzdHlsZT0iZmlsbDpyZ2IoMCwyNTUsMCki
Lz4KLSAgICAgICAgICAgIDwvc3ZnPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0i
cmVnaW9uIj48L2Rpdj4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIHZhciByYW5nZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS53ZWJraXRHZXRSZWdpb25GbG93UmFu
Z2VzKCk7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0IikuaW5u
ZXJIVE1MID0gIlBBU1MiOwotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy10ZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLXRleHQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA5YzA1OTNlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMTQgKzAsMCBAQAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxv
d1Jhbmdlcy4gVGV4dCBicmVha3MgaW4gdHdvIHJlZ2lvbnMKLQotT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgotCi1UZXh0IG5vZGUuCi1GbG93IHRlc3QKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAx
Ci1QQVNTIEFycmF5IFt3cmFwcGVyLDAsI3RleHQsNF0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCwj
dGV4dCw0XQotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsd3Jh
cHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3cmFwcGVyLDFdCi1QQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0LWxyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2Vz
LXRleHQtdmVydC1sci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVmMTNiOGMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0LWxyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDE0ICswLDAgQEAKLVtDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZs
b3dSYW5nZXMgaW4gdmVydGljYWwtcmwgbW9kZS4gVGV4dCBicmVha3MgaW50byB0d28gcmVnaW9u
cwotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVRleHQgbm9kZS4KLUZsb3cgdGVzdAot
UEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCwjdGV4dCw0XSBp
cyBlcXVhbCB0byBbd3JhcHBlciwwLCN0ZXh0LDRdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQot
UEFTUyBBcnJheSBbI3RleHQsNSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBw
ZXIsMV0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy10ZXh0LXZlcnQtbHIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCA4ZmEzNzc4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNDkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hh
cnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Ci08c3R5bGU+Ci0gICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsg
fQotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBm
b250LXNpemU6IDUwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9
Ci0gICAgI2JveCB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTt9Ci0gICAgI3JlZ2lvbjEgeyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0
OiAyMHB4OyB0b3A6IDI1MHB4O30KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBm
bG93MTsgd2lkdGg6IDYwcHg7IGhlaWdodDogMjUwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7
fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+Ci0gIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveCI+VGV4dCBub2RlLjwvZGl2Pjwv
ZGl2PgotICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBp
ZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9ImNvbnNvbGUiPjwv
ZGl2PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQotICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAgICBkZXNjcmlwdGlv
bigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBpbiB2
ZXJ0aWNhbC1ybCBtb2RlLiBUZXh0IGJyZWFrcyBpbnRvIHR3byByZWdpb25zIik7Ci0gICAgdmFy
IHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciBy
ZWdpb24yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLQotCi0gICAgZGVi
dWcoIkZsb3cgdGVzdCIpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIiN0
ZXh0IiwgNF0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwg
MV0pOwotCi1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJo
aWRkZW4iOwotfQotCi0gICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDZkOGJiMWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtdGV4dC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAsMCBA
QAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgi
PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0g
ICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAjd3JhcHBlciB7IGZvbnQt
c2l6ZTogNTBweDsgfQotICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KLSAg
ICAjYm94IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3cxO30KLSAgICAjcmVnaW9uMSB7IC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDcwcHg7IGxlZnQ6IDIw
cHg7IHRvcDogMjUwcHg7fQotICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cx
OyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsgbGVmdDogMjBweDsgdG9wOiAzMDBweDt9Ci08
L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4K
LSAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94Ij5UZXh0IG5vZGUuPC9kaXY+PC9kaXY+
Ci0gIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlkPSJy
ZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLQotICAgIGRlc2NyaXB0aW9uKCJb
Q1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzLiBUZXh0IGJy
ZWFrcyBpbiB0d28gcmVnaW9ucyIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJlZ2lvbjEiKTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24yIik7Ci0KLSAgICBkZWJ1ZygiRmxvdyB0ZXN0Iik7Ci0gICAgcmFuZ2Ux
ID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVh
dGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChy
YW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiI3RleHQiLCA0XSk7Ci0gICAgcmFuZ2UyID0gcmVn
aW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIs
IDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7Ci0KLWZ1bmN0aW9uIGhpZGVSZWdpb25z
QW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHls
ZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0KLSAgaGlkZVJlZ2lvbnNB
bmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2Vz
LXZlcnQtbHItZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNTM2
OTZiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZs
b3ctcmFuZ2VzLXZlcnQtbHItZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDIgKzAs
MCBAQAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBm
b3IgdmVydGljYWwtbHIgbW9kZQotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVRleHQg
bm9kZS4KLUVtcHR5IHJlZ2lvbnMKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAwCi1QQVNTIHJhbmdl
Mi5sZW5ndGggaXMgMAotUEFTUyByYW5nZTMubGVuZ3RoIGlzIDAKLUZsb3cgYXJ0aWNsZQotUEFT
UyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVx
dWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKLVBBU1Mg
QXJyYXkgW2JveDEsMSxib3gxLDFdIGlzIGVxdWFsIHRvIFtib3gxLDEsYm94MSwxXQotUEFTUyBy
YW5nZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMSx3cmFwcGVyLDFdIGlzIGVxdWFs
IHRvIFtib3gxLDEsd3JhcHBlciwxXQotQWRkIHRleHQgbm9kZSB0byByZWdpb24yIChjcmVhdGVz
IGFub255bW91cyBibG9jaykKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3
cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KLVBBU1MgcmFu
Z2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94MSwyXSBpcyBlcXVhbCB0byBb
Ym94MSwxLGJveDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gx
LDIsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwyLHdyYXBwZXIsMV0KLUluY3JlYXNlIGZv
bnQgc2l6ZQotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxi
b3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQotUEFTUyByYW5nZTIubGVuZ3Ro
IGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0
ZXh0LDRdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbI3RleHQsNSx3cmFw
cGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBwZXIsMV0KLU1ha2UgY2hpbGQgYSBjb250
ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMwotUEFTUyBy
YW5nZTEubGVuZ3RoIGlzIDIKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDBdIGlzIGVxdWFs
IHRvIFt3cmFwcGVyLDAsYm94MSwwXQotUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0LDRdIGlzIGVx
dWFsIHRvIFtib3gxLDEsI3RleHQsNF0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFy
cmF5IFsjdGV4dCw1LGJveDEsMl0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsYm94MSwyXQotUEFTUyBy
YW5nZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMCxib3gxLDFdIGlzIGVxdWFsIHRv
IFtib3gxLDAsYm94MSwxXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLXZlcnQtbHIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtbHIuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggY2M4MzY0Ny4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwx
MDcgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNl
dD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08
c3R5bGU+Ci0gICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgfQot
ICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBmb250
LXNpemU6IDMwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0g
ICAgI2FydGljbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IHdpZHRoOiAxMzVweDsg
cGFkZGluZzogMTBweDt9Ci0gICAgI2JveDEgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZWVu
OyB3aWR0aDogMTEwcHg7IHBhZGRpbmc6IDEwcHg7fQotICAgICNib3gyIHsgYmFja2dyb3VuZC1j
b2xvcjogb3JhbmdlOyB3aWR0aDogMTBweDsgcGFkZGluZzogNXB4O30KLSAgICAjcmVnaW9uMSB7
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDcwcHg7IGhlaWdodDogMjUwcHg7IGxl
ZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQotICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3cxOyB3aWR0aDogNjBweDsgaGVpZ2h0OiAyNTBweDsgbGVmdDogMjBweDsgdG9wOiAzMDBw
eDt9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA2MHB4
OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KLTwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotICA8ZGl2IGlkPSJ3
cmFwcGVyIj48ZGl2IGlkPSJhcnRpY2xlIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJib3gyIj48
L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRl
ciI+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8
ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0iY29uc29s
ZSI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
Ci0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLQotICAgIGRlc2Ny
aXB0aW9uKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2Vz
IGZvciB2ZXJ0aWNhbC1sciBtb2RlIik7Ci0gICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciByZWdpb24yID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJlZ2lvbjIiKTsKLSAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24zIik7Ci0KLSAgICBkZWJ1ZygiRW1wdHkgcmVnaW9ucyIpOwotICAgIHZh
ciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91
bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7Ci0gICAgdmFyIHJhbmdlMiA9IHJlZ2lv
bjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJh
bmdlMi5sZW5ndGgiLCAwKTsKLSAgICB2YXIgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdp
b25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDAp
OwotCi0gICAgZGVidWcoIkZsb3cgYXJ0aWNsZSIpOwotICAgIHZhciBhcnRpY2xlID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKLSAgICBhcnRpY2xlLnN0eWxlLndlYmtpdEZs
b3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7Ci0g
ICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJi
b3gxIiwgMV0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAxXSk7
Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAg
c2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMo
Z2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAxLCAid3JhcHBlciIsIDFdKTsKLQotICAg
IGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJsb2Nr
KSIpOwotICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5v
ZGUuIik7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJveDEiKS5hcHBlbmRDaGlsZCh0
ZXh0Tm9kZSk7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2Vz
KCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBh
cmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFd
KTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5
cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMl0pOwotICAgIHJh
bmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIsICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVidWco
IkluY3JlYXNlIGZvbnQgc2l6ZSIpOwotICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoIndyYXBwZXIiKTsKLSAgICB3cmFwcGVyLnN0eWxlLmZvbnRTaXplID0gIjQwcHgi
OwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0gICAg
cmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxk
RXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFu
Z2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7Ci0gICAgcmFuZ2UzID0g
cmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7Ci0KLSAgICBkZWJ1ZygiTWFrZSBj
aGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byByZWdp
b24zIik7Ci0gICAgdmFyIGJveDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYm94MicpOwot
ICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOwotICAgIHJhbmdlMSA9IHJl
Z2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMS5sZW5ndGgiLCAyKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2Ux
LCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAwXSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRS
YW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIsIDEsICIjdGV4dCIsIDRdKTsKLSAgICByYW5nZTIg
PSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJh
bmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94MSIsIDJdKTsKLSAgICByYW5nZTMgPSByZWdpb24z
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCks
IFsiYm94MSIsIDAsICJib3gxIiwgMV0pOwotCi1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dz
KCkgewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIiku
c3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotfQotCi0gICAgaGlkZVJl
Z2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJs
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLXZlcnQtcmwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBlNTJjOGEyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLXZlcnQtcmwtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEs
NDIgKzAsMCBAQAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1Jh
bmdlcyBmb3IgdmVydGljYWwtcmwgbW9kZQotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LVRleHQgbm9kZS4KLUVtcHR5IHJlZ2lvbnMKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAwCi1QQVNT
IHJhbmdlMi5sZW5ndGggaXMgMAotUEFTUyByYW5nZTMubGVuZ3RoIGlzIDAKLUZsb3cgYXJ0aWNs
ZQotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFd
IGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEK
LVBBU1MgQXJyYXkgW2JveDEsMSxib3gxLDFdIGlzIGVxdWFsIHRvIFtib3gxLDEsYm94MSwxXQot
UEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMSx3cmFwcGVyLDFdIGlz
IGVxdWFsIHRvIFtib3gxLDEsd3JhcHBlciwxXQotQWRkIHRleHQgbm9kZSB0byByZWdpb24yIChj
cmVhdGVzIGFub255bW91cyBibG9jaykKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFy
cmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KLVBB
U1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94MSwyXSBpcyBlcXVh
bCB0byBbYm94MSwxLGJveDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5
IFtib3gxLDIsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwyLHdyYXBwZXIsMV0KLUluY3Jl
YXNlIGZvbnQgc2l6ZQotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW3dyYXBw
ZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQotUEFTUyByYW5nZTIu
bGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94
MSwxLCN0ZXh0LDRdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbI3RleHQs
NSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBwZXIsMV0KLU1ha2UgY2hpbGQg
YSBjb250ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMwot
UEFTUyByYW5nZTEubGVuZ3RoIGlzIDIKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDBdIGlz
IGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwwXQotUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0LDRd
IGlzIGVxdWFsIHRvIFtib3gxLDEsI3RleHQsNF0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1Q
QVNTIEFycmF5IFsjdGV4dCw1LGJveDEsMl0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsYm94MSwyXQot
UEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMCxib3gxLDFdIGlzIGVx
dWFsIHRvIFtib3gxLDAsYm94MSwxXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQot
Ci1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtcmwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtcmwuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZDU0NWE0YS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSwxMDggKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEg
Y2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3Jp
cHQ+Ci08c3R5bGU+Ci0gICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1y
bDsgfQotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIg
eyBmb250LXNpemU6IDMwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVk
OyB9Ci0gICAgI2FydGljbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IHdpZHRoOiAx
MzVweDsgcGFkZGluZzogMTBweDt9Ci0gICAgI2JveDEgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdo
dGdyZWVuOyB3aWR0aDogMTEwcHg7IHBhZGRpbmc6IDEwcHg7fQotICAgICNib3gyIHsgYmFja2dy
b3VuZC1jb2xvcjogb3JhbmdlOyB3aWR0aDogMTBweDsgcGFkZGluZzogNXB4O30KLSAgICAjcmVn
aW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDcwcHg7IGhlaWdodDogMjUw
cHg7IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQotICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93
LWZyb206IGZsb3cxOyB3aWR0aDogNjBweDsgaGVpZ2h0OiAyNTBweDsgbGVmdDogMjBweDsgdG9w
OiAzMDBweDt9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRo
OiA2MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KLTwvc3R5bGU+
Ci08L2hlYWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotICA8ZGl2
IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJhcnRpY2xlIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJi
b3gyIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9
ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2
PgotICA8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0i
Y29uc29sZSI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLQotICAg
IGRlc2NyaXB0aW9uKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93
UmFuZ2VzIGZvciB2ZXJ0aWNhbC1ybCBtb2RlIik7Ci0gICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciByZWdpb24yID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLSAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb24zIik7Ci0KLSAgICBkZWJ1ZygiRW1wdHkgcmVnaW9ucyIpOwot
ICAgIHZhciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7Ci0gICAgdmFyIHJhbmdlMiA9
IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMi5sZW5ndGgiLCAwKTsKLSAgICB2YXIgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRH
ZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0
aCIsIDApOwotCi0gICAgZGVidWcoIkZsb3cgYXJ0aWNsZSIpOwotICAgIHZhciBhcnRpY2xlID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKLSAgICBhcnRpY2xlLnN0eWxlLndl
YmtpdEZsb3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwg
MSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIs
IDAsICJib3gxIiwgMV0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEi
LCAxXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVB
cnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAxLCAid3JhcHBlciIsIDFdKTsK
LQotICAgIGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIgKGNyZWF0ZXMgYW5vbnltb3Vz
IGJsb2NrKSIpOwotICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJU
ZXh0IG5vZGUuIik7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJveDEiKS5hcHBlbmRD
aGlsZCh0ZXh0Tm9kZSk7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94
MSIsIDFdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMo
KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFy
ZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMl0pOwot
ICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdl
dFJhbmdlQXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIsICJ3cmFwcGVyIiwgMV0pOwotCi0gICAg
ZGVidWcoIkluY3JlYXNlIGZvbnQgc2l6ZSIpOwotICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoIndyYXBwZXIiKTsKLSAgICB3cmFwcGVyLnN0eWxlLmZvbnRTaXplID0g
IjQwcHgiOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdlcygp
OwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJl
QXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7
Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAg
c2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMo
Z2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7Ci0gICAgcmFu
Z2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZh
bHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VB
dChyYW5nZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7Ci0KLSAgICBkZWJ1Zygi
TWFrZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0
byByZWdpb24zIik7Ci0gICAgdmFyIGJveDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYm94
MicpOwotICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOwotICAgIHJhbmdl
MSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQo
cmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAwXSk7Ci0gICAgY29tcGFyZUFycmF5
cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIsIDEsICIjdGV4dCIsIDRdKTsKLSAgICBy
YW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5n
ZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94MSIsIDJdKTsKLSAgICByYW5nZTMgPSBy
ZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRv
KCJyYW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdl
MywgMCksIFsiYm94MSIsIDAsICJib3gxIiwgMV0pOwotCi0KLWZ1bmN0aW9uIGhpZGVSZWdpb25z
QW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHls
ZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0KLWhp
ZGVSZWdpb25zQW5kRmxvd3MoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3Jp
dGluZy1tb2Rlcy1ybC1yYi1sci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDQwNjlmOS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5n
LW1vZGVzLXJsLXJiLWxyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAg
QEAKLVtDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9y
IG1peGVkIHZlcnRpY2FsIG1vZGVzCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMgotUEFTUyBBcnJh
eSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNT
IEFycmF5IFtib3gzLDEsYm94MywyXSBpcyBlcXVhbCB0byBbYm94MywxLGJveDMsMl0KLVBBU1Mg
cmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94MSwyXSBpcyBlcXVhbCB0
byBbYm94MSwxLGJveDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFti
b3gxLDIsYm94MywxXSBpcyBlcXVhbCB0byBbYm94MSwyLGJveDMsMV0KLVBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotSG9yaXpvbnRhbCBUQgotWAotVmVy
dGljYWwgTFJIb3Jpem9udGFsIEJUCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMtcmwtcmItbHIuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmct
bW9kZXMtcmwtcmItbHIuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTY5Yjcz
ZS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1
OCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4KLSAgICBodG1sIHsgLXdlYmtp
dC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsIDt9Ci0gICAgYm9keSB7IGZvbnQtZmFtaWx5OiBt
b25vc3BhY2U7IH0KLSAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQotICAgIC5ib3Jk
ZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KLSAgICAjYm94MSB7IC13ZWJraXQtZmxvdy1p
bnRvOiBmbG93OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgfQotICAgICNib3gxMSB7IGJhY2tn
cm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47IHdpZHRoOiAzMHB4OyBtYXJnaW4tcmlnaHQ6IDcwcHg7
fQotICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyMDBweDsg
aGVpZ2h0OiA0MDBweDsgIH0KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93
OyB3aWR0aDogMjAwcHg7IGhlaWdodDogNDAwcHg7ICB9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0
LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDQwMHB4OyAgfQotICAgICNi
b3gyIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtdGI7IGJhY2tncm91bmQtY29s
b3I6IGdyZXk7IHdpZHRoOiAxNTBweDsgaGVpZ2h0OiA0MDBweDt9Ci0gICAgI2JveDIyIHsgaGVp
Z2h0OiAzMHB4OyB3aWR0aDogMzBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH0KLSAgICAj
Ym94MyB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgIGJhY2tncm91bmQtY29s
b3I6IGxpZ2h0Ymx1ZTsgd2lkdGg6IDE1MHB4OyBoZWlnaHQ6IDQwMHB4O30KLSAgICAjYm94NCB7
IC13ZWJraXQtd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLWJ0OyBiYWNrZ3JvdW5kLWNvbG9yOiB5
ZWxsb3c7IGhlaWdodDogNjBweDsgd2lkdGg6IDIwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRv
cDogMTAwcHg7IGxlZnQ6IDIwcHg7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxk
aXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgICA8IS0tZGl2IGlkPSJ3cmFwcGVyIj48ZGl2
IGlkPSJib3gxIj48ZGl2IGlkPSJib3gxMSI+PC9kaXY+PGRpdiBpZD0iYm94MiI+VmVydCBSTDwv
ZGl2PjxkaXYgaWQ9ImJveDMiPlZlcnQgTFI8L2Rpdj48ZGl2IGlkPSJib3g0Ij5Ib3Jpem9udGFs
IEJUPC9kaXY+PC9kaXYtLT4KLQotICAgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveDEi
PjxkaXYgaWQ9ImJveDExIj48L2Rpdj48ZGl2IGlkPSJib3gyIj5Ib3Jpem9udGFsIFRCPGRpdiBp
ZD0iYm94MjIiPlg8L2Rpdj48L2Rpdj48ZGl2IGlkPSJib3gzIj5WZXJ0aWNhbCBMUjxkaXYgaWQ9
ImJveDQiPkhvcml6b250YWwgQlQ8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KLSAgICA8ZGl2IGlk
PSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZWdpb24yIiBj
bGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVy
Ij48L2Rpdj4KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
LSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgZGVidWco
IltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIG1p
eGVkIHZlcnRpY2FsIG1vZGVzIik7Ci0gICAgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb24xIik7Ci0gICAgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb24yIik7Ci0gICAgcmVnaW9uMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24z
Iik7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0g
ICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDIpOwotICAgIGNvbXBhcmVBcnJh
eXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKLSAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAxKSwgWyJib3gzIiwgMSwgImJveDMi
LCAyXSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVB
cnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsKLSAg
ICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91
bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRS
YW5nZUF0KHJhbmdlMywgMCksIFsiYm94MSIsIDIsICJib3gzIiwgMV0pOwotCi1mdW5jdGlvbiBo
aWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotfQotICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJs
LWxyLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjNlNTllMi4u
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDE1ICswLDAgQEAKLVtDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZs
b3dSYW5nZXMgZm9yIG1peGVkIHZlcnRpY2FsIG1vZGVzCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMg
MgotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxi
b3gxLDFdCi1QQVNTIEFycmF5IFtib3gzLDEsYm94MywyXSBpcyBlcXVhbCB0byBbYm94MywxLGJv
eDMsMl0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94MSwy
XSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1Q
QVNTIEFycmF5IFtib3gxLDIsYm94MywxXSBpcyBlcXVhbCB0byBbYm94MSwyLGJveDMsMV0KLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotVmVydGljYWwg
UkwKLVgKLVZlcnRpY2FsIExSWQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1v
ZGVzLXRiLXJsLWxyLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU5N2Q0NGQu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTcg
KzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVz
b3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0gICAgYm9keSB7IGZvbnQtZmFt
aWx5OiBtb25vc3BhY2U7IH0KLSAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQotICAg
IC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KLSAgICAjYm94MSB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgfQotICAgICNib3gxMSB7
IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47IGhlaWdodDogMzBweDsgbWFyZ2luLXRvcDog
NzBweDt9Ci0gICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDQw
MHB4OyBoZWlnaHQ6IDIwMHB4OyAgfQotICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3c7IHdpZHRoOiA0MDBweDsgaGVpZ2h0OiAyMDBweDsgIH0KLSAgICAjcmVnaW9uMyB7IC13
ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogNDAwcHg7IGhlaWdodDogMjAwcHg7ICB9Ci0g
ICAgI2JveDIgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7IGJhY2tncm91bmQt
Y29sb3I6IGdyZXk7IGhlaWdodDogMTUwcHg7IHdpZHRoOiA0MDBweDt9Ci0gICAgI2JveDIyIHsg
aGVpZ2h0OiAzMHB4OyB3aWR0aDogMzBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH0KLSAg
ICAjYm94MyB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgYmFja2dyb3VuZC1j
b2xvcjogbGlnaHRibHVlOyB3aWR0aDogNDAwcHg7IGhlaWdodDogMTUwcHg7fQotICAgICNib3g0
IHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7IGJhY2tncm91bmQtY29sb3I6
IHllbGxvdzsgaGVpZ2h0OiA2MHB4OyB3aWR0aDogNjBweDsgcG9zaXRpb246IGFic29sdXRlOyB0
b3A6IDIwcHg7IGxlZnQ6IDIwcHg7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxk
aXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgICA8IS0tZGl2IGlkPSJ3cmFwcGVyIj48ZGl2
IGlkPSJib3gxIj48ZGl2IGlkPSJib3gxMSI+PC9kaXY+PGRpdiBpZD0iYm94MiI+VmVydCBSTDwv
ZGl2PjxkaXYgaWQ9ImJveDMiPlZlcnQgTFI8L2Rpdj48ZGl2IGlkPSJib3g0Ij5Ib3Jpem9udGFs
IEJUPC9kaXY+PC9kaXYtLT4KLQotICAgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveDEi
PjxkaXYgaWQ9ImJveDExIj48L2Rpdj48ZGl2IGlkPSJib3gyIj5WZXJ0aWNhbCBSTDxkaXYgaWQ9
ImJveDIyIj5YPC9kaXY+PC9kaXY+PGRpdiBpZD0iYm94MyI+VmVydGljYWwgTFI8ZGl2IGlkPSJi
b3g0Ij5ZPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVnaW9uMSIgY2xh
c3M9ImJvcmRlciI+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+
PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVnaW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci08c2Ny
aXB0PgotICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLQotICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10g
VGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBtaXhlZCB2ZXJ0aWNhbCBt
b2RlcyIpOwotICAgIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIp
OwotICAgIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOwotICAg
IHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpOwotICAgIHJhbmdl
MSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQo
cmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0gICAgY29tcGFyZUFycmF5
cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MyIsIDEsICJib3gzIiwgMl0pOwotICAgIHJh
bmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAyXSk7Ci0gICAgcmFuZ2UzID0gcmVn
aW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMs
IDApLCBbImJveDEiLCAyLCAiYm94MyIsIDFdKTsKLQotZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRG
bG93cygpIHsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
MiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLX0KLSAgICBoaWRl
UmVnaW9uc0FuZEZsb3dzKCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4ODM5ZGNlLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSwxMDYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgot
PG1ldGEgY2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+
PC9zY3JpcHQ+Ci08c3R5bGU+Ci0gICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0K
LSAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQotICAgIC5ib3JkZXIgeyBib3JkZXI6
IDFweCBzb2xpZCByZWQ7IH0KLSAgICAjYXJ0aWNsZSB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0
Ymx1ZTsgaGVpZ2h0OiAxMzVweDsgcGFkZGluZzogMTBweDt9Ci0gICAgI2JveDEgeyBiYWNrZ3Jv
dW5kLWNvbG9yOiBsaWdodGdyZWVuOyBoZWlnaHQ6IDExMHB4OyBwYWRkaW5nOiAxMHB4O30KLSAg
ICAjYm94MiB7IGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsgaGVpZ2h0OiAxMHB4OyBwYWRkaW5n
OiA1cHg7fQotICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDog
MjUwcHg7IGhlaWdodDogNzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9Ci0gICAgI3JlZ2lv
bjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4
OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KLSAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDog
MzUwcHg7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICA8ZGl2IGlkPSJkZXNjcmlwdGlv
biI+PC9kaXY+Ci0gIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImFydGljbGUiPjxkaXYgaWQ9
ImJveDEiPjxkaXYgaWQ9ImJveDIiPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PgotICA8ZGl2IGlk
PSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMiIgY2xh
c3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJib3JkZXIiPjwv
ZGl2PgotICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRv
dy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCgpOwotCi0gICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdp
b246OmdldFJlZ2lvbkZsb3dSYW5nZXMuIik7Ci0gICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciByZWdpb24yID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLSAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24zIik7Ci0KLSAgICBkZWJ1ZygiRW1wdHkgcmVnaW9ucyIpOwotICAg
IHZhciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7Ci0gICAgdmFyIHJhbmdlMiA9IHJl
Z2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMi5sZW5ndGgiLCAwKTsKLSAgICB2YXIgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIs
IDApOwotCi0gICAgZGVidWcoIkZsb3cgYXJ0aWNsZSIpOwotICAgIHZhciBhcnRpY2xlID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKLSAgICBhcnRpY2xlLnN0eWxlLndlYmtp
dEZsb3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7
Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAs
ICJib3gxIiwgMV0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAx
XSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0g
ICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJh
eXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAxLCAid3JhcHBlciIsIDFdKTsKLQot
ICAgIGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJs
b2NrKSIpOwotICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0
IG5vZGUuIik7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJveDEiKS5hcHBlbmRDaGls
ZCh0ZXh0Tm9kZSk7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFu
Z2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNv
bXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIs
IDFdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsK
LSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFy
cmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMl0pOwotICAg
IHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJh
bmdlQXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIsICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVi
dWcoIkluY3JlYXNlIGZvbnQgc2l6ZSIpOwotICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIndyYXBwZXIiKTsKLSAgICB3cmFwcGVyLnN0eWxlLmZvbnRTaXplID0gIjQw
cHgiOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwot
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJy
YXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0g
ICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hv
dWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0
UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7Ci0gICAgcmFuZ2Uz
ID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVh
dGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChy
YW5nZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7Ci0KLSAgICBkZWJ1ZygiTWFr
ZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byBy
ZWdpb24zIik7Ci0gICAgdmFyIGJveDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYm94Micp
OwotICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOwotICAgIHJhbmdlMSA9
IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFu
Z2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAwXSk7Ci0gICAgY29tcGFyZUFycmF5cyhn
ZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIsIDEsICIjdGV4dCIsIDRdKTsKLSAgICByYW5n
ZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94MSIsIDJdKTsKLSAgICByYW5nZTMgPSByZWdp
b24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
YW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywg
MCksIFsiYm94MSIsIDAsICJib3gxIiwgMV0pOwotCi1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZs
b3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24y
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotfQotCi0gICAgaGlk
ZVJlZ2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVu
dC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGI0NmMyNjAuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRl
bnQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotVGVzdCBmb3Ig
OTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50
Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQuCi0KLU9uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KLQotCi1QQVNTIHJlZ2lvbkxpc3QubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9u
TGlzdC5pdGVtKDApLmlkIGlzICJyZWdpb24iCi1QQVNTIHJlZ2lvbkxpc3QubGVuZ3RoIGlzIDIK
LVBBU1MgcmVnaW9uTGlzdC5pdGVtKDApLmlkIGlzICJyZWdpb24yMSIKLVBBU1MgcmVnaW9uTGlz
dC5pdGVtKDEpLmlkIGlzICJyZWdpb24yMiIKLVBBU1MgcmVnaW9uTGlzdC5sZW5ndGggaXMgMAot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KLQotCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVu
dC1ob3Jpei1idC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbnMtYnktY29udGVudC1ob3Jpei1idC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGQ4NzMzZDEuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotYnQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsNDkgKzAsMCBAQAotVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5h
bWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJl
Z2lvbnNCeUNvbnRlbnQKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgcmVn
aW9uTGlzdEFydGljbGUgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0
aCBpcyAyCi1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKLVBB
U1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9u
TGlzdFNwYW4gaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RTcGFuLmxlbmd0aCBpcyAxCi1Q
QVNTIHJlZ2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKLVBBU1MgcmVnaW9uTGlz
dFNwYW4yIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0U3BhbjIubGVuZ3RoIGlzIDIKLVBB
U1MgcmVnaW9uTGlzdFNwYW4zIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0U3BhbjMubGVu
Z3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1Q
QVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFRleHRO
b2RlLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIGlzICJy
ZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyIGlzIG5vbi1udWxsLgotUEFTUyByZWdp
b25MaXN0VGV4dE5vZGUyLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRl
bSgwKS5pZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMyBpcyBub24tbnVs
bC4KLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0
VGV4dE5vZGUzLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9k
ZTIubGVuZ3RoIGlzIDIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlzICJy
ZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjMi
Ci1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RU
ZXh0Tm9kZTMyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjMiCi1QQVNTIHJlZ2lvbkxpc3RQMSBpcyBu
b24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFAxLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQ
MS5pdGVtKDApLmlkIGlzICJyZWdpb240IgotUEFTUyByZWdpb25MaXN0UDIgaXMgbm9uLW51bGwu
Ci1QQVNTIHJlZ2lvbkxpc3RQMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0UDIuaXRlbSgw
KS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlzdFAzIGlzIG5vbi1udWxsLgotUEFTUyBy
ZWdpb25MaXN0UDMubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQgaXMg
InJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQMjIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlz
dFAyMi5pdGVtKDApLmlkIGlzICJyZWdpb241IgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KLQotCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1idC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MDY0NjFiLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0Lmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSwxNTIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LSAgICA8aGVhZD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVy
LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgaHRtbCB7IC13ZWJr
aXQtd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLWJ0OyB9Ci0gICAgICAgICAgICBib2R5IHsgZm9u
dC1mYW1pbHk6IG1vbm9zcGFjZTsgfQotICAgICAgICAgICAgI2FydGljbGUgeyAtd2Via2l0LWZs
b3ctaW50bzogZmxvdzsgfQotICAgICAgICAgICAgI3JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93OyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgfQotICAgICAgICAgICAgI3JlZ2lv
bjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7
IH0KLSAgICAgICAgICAgICNyZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRo
OiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0KLSAgICAgICAgICAgICNhcnRpY2xlMiB7IC13ZWJr
aXQtZmxvdy1pbnRvOiBmbG93MjsgfQotICAgICAgICAgICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZs
b3ctZnJvbTogZmxvdzI7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0gICAgICAgICAg
ICAjcmVnaW9uNSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWln
aHQ6IDUwcHg7IH0KLQotICAgICAgICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206
IG5vbmU7IH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAg
ICAgIDwhLS0gc29tZSB0ZXN0cyB3aXRoIGlubGluZSBlbGVtZW50cyAtLT4KLSAgICAgICAgPGRp
diBpZD0iYXJ0aWNsZSI+Ci0gICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUiPlRleHQgaW5z
aWRlIHNwYW4uPC9zcGFuPgotICAgICAgICAgICAgVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0
c2lkZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4KLSAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFu
Tm9kZTIiPlRleHQgaW5zaWRlIHNwYW4yLjwvc3Bhbj4KLSAgICAgICAgICAgIDxzcGFuIGlkPSJz
cGFuTm9kZTMiPlRleHQgaW5zaWRlIHNwYW4zPC9zcGFuPgotICAgICAgICA8L2Rpdj4KLSAgICAg
ICAgPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9uMiI+PC9k
aXY+Ci0KLSAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGggYmxvY2sgZWxlbWVudHMgLS0+Ci0g
ICAgICAgIDxkaXYgaWQ9ImFydGljbGUyIj4KLSAgICAgICAgICAgIDxwIGlkPSJwMSI+VGV4dCBp
bnNpZGUgcGFyYWdyYXBoIHAxLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9
InJlZ2lvbjQiPjwvcmVnaW9uPgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKLSAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDc1OTogW0NTU1Jl
Z2lvbnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVk
Rmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudCIpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9
IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gaGlkZVJlZ2lv
bnMoKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJhcnRpY2xlIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkg
PSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVn
aW9uIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb240Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb241Iikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdEFydGljbGUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYXJ0aWNsZSIpKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVn
aW9uTGlzdEFydGljbGUiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3RBcnRpY2xlLmxlbmd0aCIsIDIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOwotICAgICAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDEpLmlkIiwgInJl
Z2lvbjIiKTsKLQotICAgICAgICAgICAgdmFyIHNwYW5Ob2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInNwYW5Ob2RlIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4gPSBuYW1l
ZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZSk7Ci0gICAgICAgICAgICBzaG91bGRC
ZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRv
KCJyZWdpb25MaXN0U3Bhbi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uTGlzdFNwYW4uaXRlbSgwKS5pZCIsICJyZWdpb24iKTsKLQotICAgICAg
ICAgICAgdmFyIHNwYW5Ob2RlMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTIi
KTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbjIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9u
c0J5Q29udGVudChzcGFuTm9kZTIpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdp
b25MaXN0U3BhbjIiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RT
cGFuMi5sZW5ndGgiLCAyKTsKLQotICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTMiKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0
U3BhbjMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTMpOwotICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbjMiKTsKLSAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuMy5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQiLCAicmVn
aW9uMiIpOwotCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgiVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5v
ZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiAiKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOwotICAgICAgICAgICAg
dmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRl
eHROb2RlKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2Rl
Iik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUubGVu
Z3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RU
ZXh0Tm9kZS5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgLy8gQWRkIGFu
b3RoZXIgdGV4dCBub2RlIHRoYXQgd2lsbCBvdmVyZmxvdyB0aGUgcmVnaW9uMi4KLSAgICAgICAg
ICAgIHZhciB0ZXh0Tm9kZTIgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMi4i
KTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5k
Q2hpbGQodGV4dE5vZGUyKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0g
bmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUyKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMiIpOwotICAgICAgICAgICAgc2hvdWxk
RXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwg
InJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQg
aXMgaW4gdGhlIG92ZXJmbG93IG9mIHRoZSBsYXN0IHJlZ2lvbi4KLSAgICAgICAgICAgIHZhciB0
ZXh0Tm9kZTMgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMy4iKTsKLSAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4
dE5vZGUzKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzID0gbmFtZWRGbG93
LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9u
TnVsbCgicmVnaW9uTGlzdFRleHROb2RlMyIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIi
KTsKLQotICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgcmVnaW9uIHRvIHRha2UgdGhlIG92ZXJm
bG93aW5nIGVsZW1lbnRzIGZyb20gc2Vjb25kIHJlZ2lvbi4KLSAgICAgICAgICAgIHZhciByZWdp
b24zID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgICAgICByZWdpb24z
LmlkID0gInJlZ2lvbjMiOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChy
ZWdpb24zKTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0gICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIsIDIpOwotICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQiLCAicmVn
aW9uMiIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4
dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIpOwotCi0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTMp
OwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMzIubGVu
Z3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RU
ZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9uMyIpOwotCi0gICAgICAgICAgICB2YXIgbmFt
ZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cyIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwMSIpKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAx
Iik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDEubGVuZ3RoIiwg
MSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMS5pdGVt
KDApLmlkIiwgInJlZ2lvbjQiKTsKLQotICAgICAgICAgICAgdmFyIHAyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgicCIpOwotICAgICAgICAgICAgcDIuaWQgPSAicDIiOwotICAgICAgICAgICAg
cDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgaW5zaWRlIHBhcmFn
cmFwaCBwMi4iKSk7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNs
ZTIiKS5hcHBlbmRDaGlsZChwMik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAyID0gbmFt
ZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9u
TnVsbCgicmVnaW9uTGlzdFAyIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdp
b25MaXN0UDIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLSAKLSAgICAgICAgICAgIC8v
IGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhlIG92ZXJmbG93IHBhcnQgb2YgdGhlIHJlZ2lv
bjQKLSAgICAgICAgICAgIHZhciBwMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLSAg
ICAgICAgICAgIHAzLmlkID0gInAzIjsKLSAgICAgICAgICAgIHAzLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDMuIikpOwotICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDMp
OwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMyA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5
Q29udGVudChwMyk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMyIp
OwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAzLmxlbmd0aCIsIDEp
OwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDMuaXRlbSgw
KS5pZCIsICJyZWdpb240Iik7Ci0KLSAgICAgICAgICAgIC8vIGFkZCBhbm90aGVyIHJlZ2lvbiB0
byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lvbjUKLSAgICAgICAgICAgIHZhciByZWdpb241
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgICAgICByZWdpb241Lmlk
ID0gInJlZ2lvbjUiOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdp
b241KTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMjIgPSBuYW1lZEZsb3cyLmdldFJl
Z2lvbnNCeUNvbnRlbnQocDIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFAyMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJlZ2lvbjUiKTsKLQotICAgICAgICAgICAgaGlk
ZVJlZ2lvbnMoKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnkt
Y29udGVudC1ob3Jpei10Yi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGMxYWM3YjcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGItZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25z
XSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6
OmdldFJlZ2lvbnNCeUNvbnRlbnQKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBB
U1MgcmVnaW9uTGlzdEFydGljbGUgIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0QXJ0aWNs
ZS5sZW5ndGggaXMgMgotUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIGlzICJyZWdp
b24iCi1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjIiCi1QQVNT
IHJlZ2lvbkxpc3RTcGFuIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0U3Bhbi5sZW5ndGgg
aXMgMQotUEFTUyByZWdpb25MaXN0U3Bhbi5pdGVtKDApLmlkIGlzICJyZWdpb24iCi1QQVNTIHJl
Z2lvbkxpc3RTcGFuMiBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNwYW4yLmxlbmd0aCBp
cyAyCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMyBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNw
YW4zLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIGlzICJyZWdp
b24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZS5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5p
ZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMiBpcyBub24tbnVsbC4KLVBB
U1MgcmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5v
ZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMgaXMg
bm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMubGVuZ3RoIGlzIDEKLVBBU1MgcmVn
aW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0
VGV4dE5vZGUyLmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5p
ZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIGlzICJy
ZWdpb24zIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzMi5sZW5ndGggaXMgMQotUEFTUyByZWdp
b25MaXN0VGV4dE5vZGUzMi5pdGVtKDApLmlkIGlzICJyZWdpb24zIgotUEFTUyByZWdpb25MaXN0
UDEgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RQMS5sZW5ndGggaXMgMQotUEFTUyByZWdp
b25MaXN0UDEuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlzdFAyIGlzIG5v
bi1udWxsLgotUEFTUyByZWdpb25MaXN0UDIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAy
Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQMyBpcyBub24tbnVsbC4K
LVBBU1MgcmVnaW9uTGlzdFAzLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQMy5pdGVtKDAp
LmlkIGlzICJyZWdpb240IgotUEFTUyByZWdpb25MaXN0UDIyLmxlbmd0aCBpcyAxCi1QQVNTIHJl
Z2lvbkxpc3RQMjIuaXRlbSgwKS5pZCBpcyAicmVnaW9uNSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCi0KLQotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGIu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTUwYjcwZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10
Yi5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTU1ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgot
PGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIGJvZHkg
eyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgICAgICAgICAjYXJ0aWNsZSB7IC13ZWJr
aXQtZmxvdy1pbnRvOiBmbG93OyB9Ci0gICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93
LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0gICAgICAgICAgICAj
cmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUwcHg7IGhlaWdodDog
NTBweDsgfQotICAgICAgICAgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsg
d2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLQotICAgICAgICAgICAgI2FydGljbGUyIHsg
LXdlYmtpdC1mbG93LWludG86IGZsb3cyOyB9Ci0gICAgICAgICAgICAjcmVnaW9uNCB7IC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLSAgICAg
ICAgICAgICNyZWdpb241IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB3aWR0aDogMjUwcHg7
IGhlaWdodDogNTBweDsgfQotCi0gICAgICAgICAgICAubm9SZWdpb24geyAtd2Via2l0LWZsb3ct
ZnJvbTogbm9uZTsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4K
LSAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGggaW5saW5lIGVsZW1lbnRzIC0tPgotICAgICAg
ICA8ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZSI+VGV4
dCBpbnNpZGUgc3Bhbi48L3NwYW4+Ci0gICAgICAgICAgICBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4
dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLgotICAgICAgICAgICAgPHNwYW4gaWQ9
InNwYW5Ob2RlMiI+VGV4dCBpbnNpZGUgc3BhbjIuPC9zcGFuPgotICAgICAgICAgICAgPHNwYW4g
aWQ9InNwYW5Ob2RlMyI+VGV4dCBpbnNpZGUgc3BhbjM8L3NwYW4+Ci0gICAgICAgIDwvZGl2Pgot
ICAgICAgICA8ZGl2IGlkPSJyZWdpb24iPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb24y
Ij48L2Rpdj4KLQotICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBibG9jayBlbGVtZW50cyAt
LT4KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgotICAgICAgICAgICAgPHAgaWQ9InAxIj5U
ZXh0IGluc2lkZSBwYXJhZ3JhcGggcDEuPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRp
diBpZD0icmVnaW9uNCI+PC9yZWdpb24+Ci0KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDc1
OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2Rl
IHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudCIpOwotCi0gICAgICAgICAgICBmdW5j
dGlvbiBoaWRlUmVnaW9ucygpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7
Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmls
aXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjQiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjUi
KS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAg
ICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0KLSAgICAgICAgICAg
IHZhciByZWdpb25MaXN0QXJ0aWNsZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikpOwotICAgICAgICAgICAgc2hvdWxkQmVO
b25OdWxsKCJyZWdpb25MaXN0QXJ0aWNsZSAiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRl
VG8oInJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCIsIDIpOwotICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOwot
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVt
KDEpLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgdmFyIHNwYW5Ob2RlID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlz
dFNwYW4gPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZSk7Ci0gICAgICAg
ICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuIik7Ci0gICAgICAgICAgICBzaG91
bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3Bhbi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4uaXRlbSgwKS5pZCIsICJyZWdpb24i
KTsKLQotICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJzcGFuTm9kZTIiKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbjIgPSBuYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTIpOwotICAgICAgICAgICAgc2hvdWxkQmVO
b25OdWxsKCJyZWdpb25MaXN0U3BhbjIiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8o
InJlZ2lvbkxpc3RTcGFuMi5sZW5ndGgiLCAyKTsKLQotICAgICAgICAgICAgdmFyIHNwYW5Ob2Rl
MyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTMiKTsKLSAgICAgICAgICAgIHZh
ciByZWdpb25MaXN0U3BhbjMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9k
ZTMpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbjMiKTsKLSAg
ICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuMy5sZW5ndGgiLCAxKTsK
LSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4zLml0ZW0o
MCkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVu
dC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBu
b2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiAiKTsKLSAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOwot
ICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHRleHROb2RlKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9u
TGlzdFRleHROb2RlIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0
VGV4dE5vZGUubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAg
ICAgLy8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQgd2lsbCBvdmVyZmxvdyB0aGUgcmVnaW9u
Mi4KLSAgICAgICAgICAgIHZhciB0ZXh0Tm9kZTIgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgi
VGV4dCBub2RlMi4iKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRp
Y2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUyKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0
VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUyKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMiIpOwotICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGgiLCAxKTsK
LSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5p
dGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4
dCBub2RlIHRoYXQgaXMgaW4gdGhlIG92ZXJmbG93IG9mIHRoZSBsYXN0IHJlZ2lvbi4KLSAgICAg
ICAgICAgIHZhciB0ZXh0Tm9kZTMgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2Rl
My4iKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBw
ZW5kQ2hpbGQodGV4dE5vZGUzKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUz
ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKLSAgICAgICAgICAg
IHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMyIpOwotICAgICAgICAgICAgc2hv
dWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGgiLCAxKTsKLSAgICAgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlk
IiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgcmVnaW9uIHRvIHRh
a2UgdGhlIG92ZXJmbG93aW5nIGVsZW1lbnRzIGZyb20gc2Vjb25kIHJlZ2lvbi4KLSAgICAgICAg
ICAgIHZhciByZWdpb24zID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAg
ICAgICByZWdpb24zLmlkID0gInJlZ2lvbjMiOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChyZWdpb24zKTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9k
ZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0gICAgICAgICAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIsIDIpOwotICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0o
MCkuaWQiLCAicmVnaW9uMiIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIpOwotCi0gICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVu
dCh0ZXh0Tm9kZTMpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRl
eHROb2RlMzIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9uMyIpOwotCi0gICAgICAg
ICAgICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cyIik7Ci0gICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgi
cmVnaW9uTGlzdFAxIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0
UDEubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bkxpc3RQMS5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLQotICAgICAgICAgICAgdmFyIHAyID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOwotICAgICAgICAgICAgcDIuaWQgPSAicDIiOwot
ICAgICAgICAgICAgcDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQg
aW5zaWRlIHBhcmFncmFwaCBwMi4iKSk7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdFAyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKLSAgICAgICAgICAg
IHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAyIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyZWdpb25MaXN0UDIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLSAKLSAg
ICAgICAgICAgIC8vIGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhlIG92ZXJmbG93IHBhcnQg
b2YgdGhlIHJlZ2lvbjQKLSAgICAgICAgICAgIHZhciBwMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoInAiKTsKLSAgICAgICAgICAgIHAzLmlkID0gInAzIjsKLSAgICAgICAgICAgIHAzLmFwcGVu
ZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDMu
IikpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBw
ZW5kQ2hpbGQocDMpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMyA9IG5hbWVkRmxvdzIu
Z2V0UmVnaW9uc0J5Q29udGVudChwMyk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJl
Z2lvbkxpc3RQMyIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAz
Lmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25M
aXN0UDMuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7Ci0KLSAgICAgICAgICAgIC8vIGFkZCBhbm90
aGVyIHJlZ2lvbiB0byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lvbjUKLSAgICAgICAgICAg
IHZhciByZWdpb241ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgICAg
ICByZWdpb241LmlkID0gInJlZ2lvbjUiOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBl
bmRDaGlsZChyZWdpb241KTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMjIgPSBuYW1l
ZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygicmVnaW9uTGlzdFAyMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJlZ2lvbjUiKTsKLQotICAg
ICAgICAgICAgaGlkZVJlZ2lvbnMoKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLSAgICA8
L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1wc2V1ZG8tZXhwZWN0ZWQudHh0CmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyOGViODAxLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby1leHBlY3Rl
ZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi1UZXN0cyBXZWJLaXROYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudCgpIGFuZCBwc2V1ZG8tZWxlbWVudHMgYXMgcmVnaW9ucwot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBp
cyAxCi1QQVNTIHJlZ2lvbkxpc3QuaXRlbSgwKS5pZCBpcyAicmVnaW9uXzIiCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1wc2V1ZG8u
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggN2QyMmJkMS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1wc2V1ZG8u
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDczICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hl
bHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNhcnRpY2xl
IHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKLSAgICAgICAg
ICAgICAgICBoZWlnaHQ6IDE1MHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4OwotICAg
ICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICAjcmVnaW9uXzEgewotICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0
ZTsKLSAgICAgICAgICAgICAgICB0b3A6MjAwcHg7Ci0gICAgICAgICAgICAgICAgbGVmdDogMTAw
cHg7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICNyZWdpb25fMTo6YmVmb3JlIHsKLSAg
ICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKLSAgICAgICAgICAgICAgICB3aWR0aDogNTBw
eDsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICAgICAgYm9yZGVy
OiAxcHggc29saWQgYmxhY2s7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGFy
dGljbGU7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICNyZWdpb25fMTo6YWZ0ZXIgewot
ICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwotICAgICAgICAgICAgICAgIHdpZHRoOiA1
MHB4OwotICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgICAgICAgICBib3Jk
ZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTog
YXJ0aWNsZTsgICAgCi0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICNyZWdpb25fMiB7Ci0g
ICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7Ci0gICAgICAgICAgICAg
ICAgaGVpZ2h0OjUwcHg7Ci0gICAgICAgICAgICAgICAgd2lkdGg6NTBweDsKLSAgICAgICAgICAg
ICAgICBwb3NpdGlvbjogYWJzb2x1dGU7Ci0gICAgICAgICAgICAgICAgdG9wOiAyMDBweDsKLSAg
ICAgICAgICAgICAgICBsZWZ0OiAyMDBweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBz
b2xpZCBibGFjazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+
Ci0gICAgPGJvZHk+Ci0gICAgICAgIDwhLS0KLSAgICAgICAgVGVzdCB0aGF0IHRoZSBwc2V1ZG8t
ZWxlbWVudHMgcmVnaW9ucyBhcmUgbm90IGV4cG9zZWQgdG8gSlMuCi0gICAgICAgIC0tPgotICAg
ICAgICA8ZGl2IGlkPSJhcnRpY2xlIj48L2Rpdj4KLQotICAgICAgICA8ZGl2IGlkPSJyZWdpb25f
MSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KLSAgICAgICAgPHNj
cmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0
cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCgpIGFuZCBwc2V1ZG8tZWxlbWVu
dHMgYXMgcmVnaW9ucyIpCi0KLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlO
YW1lKCJhcnRpY2xlIik7Ci0gICAgICAgICAgICB2YXIgdGFyZ2V0Tm9kZSA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdCA9IG5h
bWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRhcmdldE5vZGUpOwotCi0gICAgICAgICAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0Lmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Lml0ZW0oMCkuaWQiLCAicmVnaW9uXzIiKTsK
LQotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52
aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uXzEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRl
bnQtdmVydC1sci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbnMtYnktY29udGVudC12ZXJ0LWxyLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZDg3MzNkMS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxyLWV4cGVjdGVkLnR4dAorKysgL2Rldi9u
dWxsCkBAIC0xLDQ5ICswLDAgQEAKLVRlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1l
IE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdp
b25zQnlDb250ZW50Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHJlZ2lv
bkxpc3RBcnRpY2xlIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGgg
aXMgMgotUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIGlzICJyZWdpb24iCi1QQVNT
IHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxp
c3RTcGFuIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0U3Bhbi5sZW5ndGggaXMgMQotUEFT
UyByZWdpb25MaXN0U3Bhbi5pdGVtKDApLmlkIGlzICJyZWdpb24iCi1QQVNTIHJlZ2lvbkxpc3RT
cGFuMiBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNwYW4yLmxlbmd0aCBpcyAyCi1QQVNT
IHJlZ2lvbkxpc3RTcGFuMyBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNwYW4zLmxlbmd0
aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFT
UyByZWdpb25MaXN0VGV4dE5vZGUgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9k
ZS5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5pZCBpcyAicmVn
aW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMiBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9u
TGlzdFRleHROb2RlMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0o
MCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMgaXMgbm9uLW51bGwu
Ci1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFRl
eHROb2RlMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUy
Lmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCBpcyAicmVn
aW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIGlzICJyZWdpb24zIgot
UEFTUyByZWdpb25MaXN0VGV4dE5vZGUzMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUzMi5pdGVtKDApLmlkIGlzICJyZWdpb24zIgotUEFTUyByZWdpb25MaXN0UDEgaXMgbm9u
LW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RQMS5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0UDEu
aXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlzdFAyIGlzIG5vbi1udWxsLgot
UEFTUyByZWdpb25MaXN0UDIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAyLml0ZW0oMCku
aWQgaXMgInJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQMyBpcyBub24tbnVsbC4KLVBBU1MgcmVn
aW9uTGlzdFAzLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQMy5pdGVtKDApLmlkIGlzICJy
ZWdpb240IgotUEFTUyByZWdpb25MaXN0UDIyLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQ
MjIuaXRlbSgwKS5pZCBpcyAicmVnaW9uNSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKLQotVEVTVCBDT01QTEVURQotCi0KLQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxyLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxyLmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU1ZGY2YzU4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtbHIuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDE1NSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAg
IDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMi
Pjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICBodG1sIHsgLXdlYmtpdC13
cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyOyB9Ci0gICAgICAgICAgICBib2R5IHsgZm9udC1mYW1p
bHk6IG1vbm9zcGFjZTsgfQotICAgICAgICAgICAgI2FydGljbGUgeyAtd2Via2l0LWZsb3ctaW50
bzogZmxvdzsgfQotICAgICAgICAgICAgLnJlZ2lvbkJveCB7ICBoZWlnaHQ6IDI1MHB4OyB3aWR0
aDogNTBweDsgfQotICAgICAgICAgICAgI3JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93
OyB9Ci0gICAgICAgICAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB9Ci0g
ICAgICAgICAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB9Ci0KLSAgICAg
ICAgICAgICNhcnRpY2xlMiB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsgfQotICAgICAgICAg
ICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IH0KLSAgICAgICAgICAgICNy
ZWdpb241IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB9Ci0KLSAgICAgICAgICAgIC5ub1Jl
Z2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBub25lOyB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAg
PC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBpbmxpbmUg
ZWxlbWVudHMgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPgotICAgICAgICAgICAgPHNw
YW4gaWQ9InNwYW5Ob2RlIj5UZXh0IGluc2lkZSBzcGFuLjwvc3Bhbj4KLSAgICAgICAgICAgIFRl
eHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4dCBvdXRzaWRlIHNwYW4uCi0g
ICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUyIj5UZXh0IGluc2lkZSBzcGFuMi4gVGV4dC48
L3NwYW4+Ci0gICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUzIj5UZXh0IGluc2lkZSBzcGFu
Mzwvc3Bhbj4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9
InJlZ2lvbkJveCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdp
b25Cb3giPjwvZGl2PgotCi0gICAgICAgIDwhLS0gc29tZSB0ZXN0cyB3aXRoIGJsb2NrIGVsZW1l
bnRzIC0tPgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlMiI+Ci0gICAgICAgICAgICA8cCBpZD0i
cDEiPlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMS48L3A+Ci0gICAgICAgIDwvZGl2PgotICAgICAg
ICA8ZGl2IGlkPSJyZWdpb240IiBjbGFzcz0icmVnaW9uQm94Ij48L3JlZ2lvbj4KLSAgICAgICAg
PHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICBkZXNjcmlw
dGlvbigiVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRS
ZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQiKTsK
LSAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0KLSAg
ICAgICAgICAgIGZ1bmN0aW9uIGhpZGVSZWdpb25zKCkKLSAgICAgICAgICAgIHsKLSAgICAgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLnZpc2liaWxp
dHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZTIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlk
ZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIp
LnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uNCIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVnaW9uNSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RBcnRpY2xlID0gbmFtZWRGbG93LmdldFJl
Z2lvbnNCeUNvbnRlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKSk7Ci0gICAg
ICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RBcnRpY2xlIik7Ci0gICAgICAgICAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGgiLCAyKTsKLSAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGljbGUuaXRlbSgwKS5p
ZCIsICJyZWdpb24iKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9u
TGlzdEFydGljbGUuaXRlbSgxKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIHZhciBz
cGFuTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZSIpOwotICAgICAgICAg
ICAgdmFyIHJlZ2lvbkxpc3RTcGFuID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bh
bk5vZGUpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbiIpOwot
ICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4ubGVuZ3RoIiwgMSk7
Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RTcGFuLml0ZW0o
MCkuaWQiLCAicmVnaW9uIik7Ci0KLSAgICAgICAgICAgIHZhciBzcGFuTm9kZTIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUyIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlz
dFNwYW4yID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUyKTsKLSAgICAg
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4yIik7Ci0gICAgICAgICAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3BhbjIubGVuZ3RoIiwgMik7Ci0KLSAgICAgICAg
ICAgIHZhciBzcGFuTm9kZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUzIik7
Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4zID0gbmFtZWRGbG93LmdldFJlZ2lvbnNC
eUNvbnRlbnQoc3Bhbk5vZGUzKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9u
TGlzdFNwYW4zIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3Bh
bjMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bkxpc3RTcGFuMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgdmFyIHRl
eHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4gVGV4dCBub2RlLiBU
ZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gIik7
Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENo
aWxkKHRleHROb2RlKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUgPSBuYW1l
ZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0gICAgICAgICAgICBzaG91bGRC
ZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZSIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygicmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5pZCIsICJyZWdpb24y
Iik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IHdpbGwgb3Zl
cmZsb3cgdGhlIHJlZ2lvbjIuCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUyID0gZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTIuIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMik7Ci0gICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50
KHRleHROb2RlMik7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0
Tm9kZTIiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9k
ZTIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIC8v
IEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IGlzIGluIHRoZSBvdmVyZmxvdyBvZiB0aGUgbGFz
dCByZWdpb24uCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUzID0gZG9jdW1lbnQuY3JlYXRlVGV4
dE5vZGUoIlRleHQgbm9kZTMuIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMyk7Ci0gICAgICAgICAgICB2YXIgcmVn
aW9uTGlzdFRleHROb2RlMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2Rl
Myk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZTMiKTsK
LSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTMubGVuZ3Ro
IiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0
Tm9kZTMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90
aGVyIHJlZ2lvbiB0byB0YWtlIHRoZSBvdmVyZmxvd2luZyBlbGVtZW50cyBmcm9tIHNlY29uZCBy
ZWdpb24uCi0gICAgICAgICAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImRpdiIpOwotICAgICAgICAgICAgcmVnaW9uMy5pZCA9ICJyZWdpb24zIjsKLSAgICAgICAgICAg
IHJlZ2lvbjMuY2xhc3NOYW1lID0gInJlZ2lvbkJveCI7Ci0gICAgICAgICAgICBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKHJlZ2lvbjMpOwotCi0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRl
eHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlKTsKLSAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIiwgMik7
Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIu
aXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCIsICJyZWdpb24zIik7Ci0KLSAgICAg
ICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlD
b250ZW50KHRleHROb2RlMyk7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25M
aXN0VGV4dE5vZGUzMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFRleHROb2RlMzIuaXRlbSgwKS5pZCIsICJyZWdpb24zIik7Ci0KLSAg
ICAgICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKTsKLSAgICAg
ICAgICAgIHZhciByZWdpb25MaXN0UDEgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25O
dWxsKCJyZWdpb25MaXN0UDEiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lv
bkxpc3RQMS5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uTGlzdFAxLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwotCi0gICAgICAgICAgICB2YXIg
cDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7Ci0gICAgICAgICAgICBwMi5pZCA9ICJw
MiI7Ci0gICAgICAgICAgICBwMi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgi
VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAyLiIpKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAyKTsKLSAgICAgICAgICAgIHZhciBy
ZWdpb25MaXN0UDIgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOwotICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDIiKTsKLSAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwot
IAotICAgICAgICAgICAgLy8gYWRkIGFub3RoZXIgZWxlbWVudCBwLCBpbiB0aGUgb3ZlcmZsb3cg
cGFydCBvZiB0aGUgcmVnaW9uNAotICAgICAgICAgICAgdmFyIHAzID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgicCIpOwotICAgICAgICAgICAgcDMuaWQgPSAicDMiOwotICAgICAgICAgICAgcDMu
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgaW5zaWRlIHBhcmFncmFw
aCBwMy4iKSk7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIi
KS5hcHBlbmRDaGlsZChwMyk7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAzID0gbmFtZWRG
bG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAzKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVs
bCgicmVnaW9uTGlzdFAzIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25M
aXN0UDMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RQMy5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLQotICAgICAgICAgICAgLy8gYWRk
IGFub3RoZXIgcmVnaW9uIHRvIGZsb3cyLCBwMiBhbmQgcDMgZ28gdG8gcmVnaW9uNQotICAgICAg
ICAgICAgdmFyIHJlZ2lvbjUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAg
ICAgICAgIHJlZ2lvbjUuaWQgPSAicmVnaW9uNSI7Ci0gICAgICAgICAgICByZWdpb241LmNsYXNz
TmFtZSA9ICJyZWdpb25Cb3giOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChyZWdpb241KTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMjIgPSBuYW1lZEZsb3cy
LmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmVnaW9uTGlzdFAyMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJlZ2lvbjUiKTsKLQotICAgICAgICAg
ICAgaGlkZVJlZ2lvbnMoKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLSAgICA8L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lv
bnMtYnktY29udGVudC12ZXJ0LXJsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkODczM2QxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0
CisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdp
b25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZs
b3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0K
LVBBU1MgcmVnaW9uTGlzdEFydGljbGUgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RBcnRp
Y2xlLmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQgaXMgInJl
Z2lvbiIKLVBBU1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCBpcyAicmVnaW9uMiIKLVBB
U1MgcmVnaW9uTGlzdFNwYW4gaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RTcGFuLmxlbmd0
aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKLVBBU1Mg
cmVnaW9uTGlzdFNwYW4yIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0U3BhbjIubGVuZ3Ro
IGlzIDIKLVBBU1MgcmVnaW9uTGlzdFNwYW4zIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0
U3BhbjMubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQgaXMgInJl
Z2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9u
TGlzdFRleHROb2RlLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDAp
LmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyIGlzIG5vbi1udWxsLgot
UEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RUZXh0
Tm9kZTIuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMyBp
cyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGggaXMgMQotUEFTUyBy
ZWdpb25MaXN0VGV4dE5vZGUzLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZTIubGVuZ3RoIGlzIDIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDAp
LmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQgaXMg
InJlZ2lvbjMiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCBpcyAxCi1QQVNTIHJl
Z2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjMiCi1QQVNTIHJlZ2lvbkxp
c3RQMSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFAxLmxlbmd0aCBpcyAxCi1QQVNTIHJl
Z2lvbkxpc3RQMS5pdGVtKDApLmlkIGlzICJyZWdpb240IgotUEFTUyByZWdpb25MaXN0UDIgaXMg
bm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RQMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0
UDIuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlzdFAzIGlzIG5vbi1udWxs
LgotUEFTUyByZWdpb25MaXN0UDMubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAzLml0ZW0o
MCkuaWQgaXMgInJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQMjIubGVuZ3RoIGlzIDEKLVBBU1Mg
cmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIGlzICJyZWdpb241IgotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KLQotCi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjhkNTZjOS4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJs
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxNTUgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08
aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
aGVscGVyLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgaHRtbCB7
IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsgfQotICAgICAgICAgICAgYm9keSB7
IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAgICAgICAgICNhcnRpY2xlIHsgLXdlYmtp
dC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgIC5yZWdpb25Cb3ggeyAgaGVpZ2h0OiAy
NTBweDsgd2lkdGg6IDUwcHg7IH0KLSAgICAgICAgICAgICNyZWdpb24geyAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdzsgfQotICAgICAgICAgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTog
ZmxvdzsgfQotICAgICAgICAgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsg
fQotCi0gICAgICAgICAgICAjYXJ0aWNsZTIgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7IH0K
LSAgICAgICAgICAgICNyZWdpb240IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB9Ci0gICAg
ICAgICAgICAjcmVnaW9uNSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MjsgfQotCi0gICAgICAg
ICAgICAubm9SZWdpb24geyAtd2Via2l0LWZsb3ctZnJvbTogbm9uZTsgfQotICAgICAgICA8L3N0
eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdp
dGggaW5saW5lIGVsZW1lbnRzIC0tPgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICAg
ICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZSI+VGV4dCBpbnNpZGUgc3Bhbi48L3NwYW4+Ci0gICAg
ICAgICAgICBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lk
ZSBzcGFuLgotICAgICAgICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlMiI+VGV4dCBpbnNpZGUgc3Bh
bjIuIFRleHQuPC9zcGFuPgotICAgICAgICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlMyI+VGV4dCBp
bnNpZGUgc3BhbjM8L3NwYW4+Ci0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdp
b24iIGNsYXNzPSJyZWdpb25Cb3giPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIiBj
bGFzcz0icmVnaW9uQm94Ij48L2Rpdj4KLQotICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBi
bG9jayBlbGVtZW50cyAtLT4KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgotICAgICAgICAg
ICAgPHAgaWQ9InAxIj5UZXh0IGluc2lkZSBwYXJhZ3JhcGggcDEuPC9wPgotICAgICAgICA8L2Rp
dj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9uNCIgY2xhc3M9InJlZ2lvbkJveCI+PC9yZWdpb24+
Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0g
ICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAg
ICAgZGVzY3JpcHRpb24oIlRlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVk
Rmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlD
b250ZW50Iik7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxv
dyIpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBoaWRlUmVnaW9ucygpCi0gICAgICAgICAgICB7
Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHls
ZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImFydGljbGUyIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmls
aXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjQi
KS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0g
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0QXJ0aWNsZSA9IG5hbWVk
Rmxvdy5nZXRSZWdpb25zQnlDb250ZW50KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xl
IikpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0QXJ0aWNsZSIpOwot
ICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIiwg
Mik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RBcnRpY2xl
Lml0ZW0oMCkuaWQiLCAicmVnaW9uIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMSkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAgICAg
ICAgICB2YXIgc3Bhbk5vZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUiKTsK
LSAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlD
b250ZW50KHNwYW5Ob2RlKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlz
dFNwYW4iKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuLmxl
bmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0
U3Bhbi5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOwotCi0gICAgICAgICAgICB2YXIgc3Bhbk5vZGUy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlMiIpOwotICAgICAgICAgICAgdmFy
IHJlZ2lvbkxpc3RTcGFuMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2Rl
Mik7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuMiIpOwotICAg
ICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4yLmxlbmd0aCIsIDIpOwot
Ci0gICAgICAgICAgICB2YXIgc3Bhbk5vZGUzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNw
YW5Ob2RlMyIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuMyA9IG5hbWVkRmxvdy5n
ZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2RlMyk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51
bGwoInJlZ2lvbkxpc3RTcGFuMyIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVn
aW9uTGlzdFNwYW4zLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25MaXN0U3BhbjMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAg
ICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUuIFRl
eHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0
IG5vZGUuICIpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUi
KS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZSk7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHRO
b2RlID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUpOwotICAgICAgICAg
ICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUiKTsKLSAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZS5sZW5ndGgiLCAxKTsKLSAgICAgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQi
LCAicmVnaW9uMiIpOwotCi0gICAgICAgICAgICAvLyBBZGQgYW5vdGhlciB0ZXh0IG5vZGUgdGhh
dCB3aWxsIG92ZXJmbG93IHRoZSByZWdpb24yLgotICAgICAgICAgICAgdmFyIHRleHROb2RlMiA9
IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUyLiIpOwotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTIpOwot
ICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9u
c0J5Q29udGVudCh0ZXh0Tm9kZTIpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdp
b25MaXN0VGV4dE5vZGUyIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25M
aXN0VGV4dE5vZGUyLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAg
ICAgICAgICAvLyBBZGQgYW5vdGhlciB0ZXh0IG5vZGUgdGhhdCBpcyBpbiB0aGUgb3ZlcmZsb3cg
b2YgdGhlIGxhc3QgcmVnaW9uLgotICAgICAgICAgICAgdmFyIHRleHROb2RlMyA9IGRvY3VtZW50
LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUzLiIpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTMpOwotICAgICAgICAg
ICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVu
dCh0ZXh0Tm9kZTMpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4
dE5vZGUzIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5v
ZGUzLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25MaXN0VGV4dE5vZGUzLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAgICAgICAgICAv
LyBBZGQgYW5vdGhlciByZWdpb24gdG8gdGFrZSB0aGUgb3ZlcmZsb3dpbmcgZWxlbWVudHMgZnJv
bSBzZWNvbmQgcmVnaW9uLgotICAgICAgICAgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAgICAgIHJlZ2lvbjMuaWQgPSAicmVnaW9uMyI7Ci0g
ICAgICAgICAgICByZWdpb24zLmNsYXNzTmFtZSA9ICJyZWdpb25Cb3giOwotICAgICAgICAgICAg
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24zKTsKLQotICAgICAgICAgICAgdmFyIHJl
Z2lvbkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9k
ZSk7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxl
bmd0aCIsIDIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0
VGV4dE5vZGUyLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOwotICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIp
OwotCi0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0
UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTMpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdFRleHROb2RlMzIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9u
MyIpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cy
Iik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25z
QnlDb250ZW50KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAxIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0UDEubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbkxpc3RQMS5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLQotICAgICAg
ICAgICAgdmFyIHAyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOwotICAgICAgICAgICAg
cDIuaWQgPSAicDIiOwotICAgICAgICAgICAgcDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRl
VGV4dE5vZGUoIlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMi4iKSk7Ci0gICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMik7Ci0gICAgICAg
ICAgICB2YXIgcmVnaW9uTGlzdFAyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAy
KTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAyIik7Ci0gICAgICAg
ICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDIubGVuZ3RoIiwgMSk7Ci0gICAgICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJl
Z2lvbjQiKTsKLSAKLSAgICAgICAgICAgIC8vIGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhl
IG92ZXJmbG93IHBhcnQgb2YgdGhlIHJlZ2lvbjQKLSAgICAgICAgICAgIHZhciBwMyA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLSAgICAgICAgICAgIHAzLmlkID0gInAzIjsKLSAgICAg
ICAgICAgIHAzLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lk
ZSBwYXJhZ3JhcGggcDMuIikpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDMpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQ
MyA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMyk7Ci0gICAgICAgICAgICBzaG91
bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMyIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdFAzLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJyZWdpb25MaXN0UDMuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7Ci0KLSAgICAgICAg
ICAgIC8vIGFkZCBhbm90aGVyIHJlZ2lvbiB0byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lv
bjUKLSAgICAgICAgICAgIHZhciByZWdpb241ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2
Iik7Ci0gICAgICAgICAgICByZWdpb241LmlkID0gInJlZ2lvbjUiOwotICAgICAgICAgICAgcmVn
aW9uNS5jbGFzc05hbWUgPSAicmVnaW9uQm94IjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHku
YXBwZW5kQ2hpbGQocmVnaW9uNSk7Ci0KLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDIyID0g
bmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKLSAgICAgICAgICAgIHNob3VsZEV2
YWx1YXRlVG8oInJlZ2lvbkxpc3RQMjIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMjIuaXRlbSgwKS5pZCIsICJyZWdpb241Iik7Ci0K
LSAgICAgICAgICAgIGhpZGVSZWdpb25zKCk7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0g
ICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9ucy1ieS1jb250ZW50Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGJjYThmZDcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdp
b25zLWJ5LWNvbnRlbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLTwhZG9j
dHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAg
ICAgICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgICAgICAgICAjYXJ0
aWNsZSB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OyB9Ci0gICAgICAgICAgICAuYm9yZGVyIHsg
Ym9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1m
bG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyBwb3NpdGlvbjogYWJz
b2x1dGU7IGxlZnQ6IDEwcHg7IHRvcDogMjAwcHg7IH0KLQotICAgICAgICAgICAgI2FydGljbGUy
IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3cyOyB9Ci0gICAgICAgICAgICAjcmVnaW9uMjEgeyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyBwb3Np
dGlvbjogYWJzb2x1dGU7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQotICAgICAgICAgICAgI3Jl
Z2lvbjIyIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB3aWR0aDogMjUwcHg7IGhlaWdodDog
NTBweDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KLSAgICAg
ICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxkaXYgaWQ9ImFy
dGljbGUiPgotICAgICAgICAgICAgPHAgaWQ9InAxIj5UZXh0IGZsb3duIGludG8gcmVnaW9uLjwv
cD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9ImJvcmRl
ciI+PC9kaXY+Ci0KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgotICAgICAgICAgICAgPHAg
aWQ9InAyIj5UZXh0IGZsb3duIGluIHR3byByZWdpb25zLiBUZXh0IGZsb3duIGluIHR3byByZWdp
b25zLiBUZXh0IGZsb3duIGluIHR3byByZWdpb25zLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAg
ICAgIDxkaXYgaWQ9InJlZ2lvbjIxIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgICAgICAgPGRp
diBpZD0icmVnaW9uMjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICAgICAgICA8c2NyaXB0Pgot
ICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3Ig
OTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50
Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQuIik7Ci0KLSAgICAgICAgICAg
IHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICB2YXIg
dGFyZ2V0Tm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOwotICAgICAgICAgICAg
dmFyIHJlZ2lvbkxpc3QgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0YXJnZXROb2Rl
KTsKLQotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdC5sZW5ndGgiLCAx
KTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdC5pdGVtKDAp
LmlkIiwgInJlZ2lvbiIpOwotCi0gICAgICAgICAgICBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1l
KCJmbG93MiIpOwotICAgICAgICAgICAgLy8gVGVzdCB0aGF0IHRoZSBwMiBlbGVtZW50IGlzIGZs
b3duIGludG8gMiByZWdpb25zCi0gICAgICAgICAgICB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInAyIik7Ci0gICAgICAgICAgICByZWdpb25MaXN0ID0gbmFtZWRGbG93Lmdl
dFJlZ2lvbnNCeUNvbnRlbnQodGFyZ2V0Tm9kZSk7Ci0KLSAgICAgICAgICAgIHNob3VsZEV2YWx1
YXRlVG8oInJlZ2lvbkxpc3QubGVuZ3RoIiwgMik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbkxpc3QuaXRlbSgwKS5pZCIsICJyZWdpb24yMSIpOwotICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Lml0ZW0oMSkuaWQiLCAicmVnaW9u
MjIiKTsKLQotICAgICAgICAgICAgLy8gVGVzdCB0aGF0IHAxIGVsZW1lbnQgaXMgbm90IGluIGZs
b3cyCi0gICAgICAgICAgICB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAx
Iik7Ci0gICAgICAgICAgICByZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRl
bnQodGFyZ2V0Tm9kZSk7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0
Lmxlbmd0aCIsIDApOwotCi0gICAgICAgICAgICBmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dz
KCkgewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIiku
c3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAg
ICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb24yMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMjIiKS5zdHlsZS52aXNpYmlsaXR5
ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGhpZGVSZWdpb25zQW5k
Rmxvd3MoKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29u
dGVudDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25z
LWJ5LWNvbnRlbnQyLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MGYzM2ZjOC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lv
bnMtYnktY29udGVudDItZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMzAgKzAsMCBA
QAotVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdp
b25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQKLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgcmVnaW9uTGlzdCBpcyBub24tbnVsbC4K
LVBBU1MgcmVnaW9uTGlzdC5sZW5ndGggaXMgMAotUEFTUyByZWdpb25MaXN0MiBpcyBub24tbnVs
bC4KLVBBU1MgcmVnaW9uTGlzdDIubGVuZ3RoIGlzIDAKLVBBU1MgcmVnaW9uTGlzdCAhPSByZWdp
b25MaXN0MiBpcyB0cnVlCi1QQVNTIHJlZ2lvbkxpc3QzIGlzIG5vbi1udWxsLgotUEFTUyByZWdp
b25MaXN0My5sZW5ndGggaXMgMAotUEFTUyByZWdpb25MaXN0NCBpcyBub24tbnVsbC4KLVBBU1Mg
cmVnaW9uTGlzdDQubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdDQuaXRlbSgwKS5pZCBpcyAi
cmVnaW9uIgotUEFTUyByZWdpb25MaXN0NSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdDUu
bGVuZ3RoIGlzIDAKLVBBU1MgcmVnaW9uTGlzdDYgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxp
c3Q2Lmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3Q2Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIK
LVBBU1MgcmVnaW9uTGlzdDcgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3Q3Lmxlbmd0aCBp
cyAwCi1QQVNTIHJlZ2lvbkxpc3Q4IGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0OC5sZW5n
dGggaXMgMAotUEFTUyByZWdpb25MaXN0OSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdDku
bGVuZ3RoIGlzIDEKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMt
YnktY29udGVudDIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1i
eS1jb250ZW50Mi5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5YmQzYTI4Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250
ZW50Mi5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJj
ZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgYm9k
eSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAgICAgICAgICNyZWdpb24sICNyZWdp
b24yIHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLSAgICAgICAgICAgIC5hcnRpY2xl
IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgIC5hcnRpY2xlMiB7IC13
ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsgfQotICAgICAgICAgICAgLnJlZ2lvbiB7IC13ZWJraXQt
Zmxvdy1mcm9tOiBmbG93OyB9Ci0gICAgICAgICAgICAucmVnaW9uMiB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93MjsgfQotICAgICAgICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206
IG5vbmU7IH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAg
ICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIiBj
bGFzcz0iYXJ0aWNsZSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9InJl
Z2lvbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIiPjwvZGl2PgotICAgICAgICA8
c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRl
c3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5
Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Iik7Ci0KLSAgICAg
ICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0KLSAgICAgICAg
ICAgIC8vIEdldHRpbmcgdGhlIHJlZ2lvbnMgZm9yIGEgbm9uIGV4aXN0YW50IG5vZGUgc2hvdWxk
IHJldHVybiBudWxsLgotICAgICAgICAgICAgdmFyIHBFbGVtZW50OwotICAgICAgICAgICAgdmFy
IHJlZ2lvbkxpc3QgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChwRWxlbWVudCk7Ci0g
ICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3QiKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlWmVybygicmVnaW9uTGlzdC5sZW5ndGgiKTsKLQotICAgICAgICAgICAgLy8gR2V0dGlu
ZyB0aGUgcmVnaW9ucyBmb3IgYW4gZWxlbWVudCB0aGF0IHdhcyBub3QgYWRkZWQgdG8gdGhlIGRv
bSBzaG91bGQgcmV0dXJuIGFuIGVtcHR5IGxpc3QuCi0gICAgICAgICAgICBwRWxlbWVudCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3Qy
ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOwotICAgICAgICAgICAg
c2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0MiIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygicmVnaW9uTGlzdDIubGVuZ3RoIiwgMCk7Ci0gICAgICAgICAgICBzaG91bGRCZVRydWUo
InJlZ2lvbkxpc3QgIT0gcmVnaW9uTGlzdDIiKTsKLQotICAgICAgICAgICAgLy8gQWRkIHRoZSBl
bGVtZW50IHRvIHRoZSBkb20gYnV0IG5vdCBpbiB0aGUgZmxvdy4gVGhlIHJlZ2lvbiBsaXN0IHNo
b3VsZCBiZSBlbXB0eS4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocEVs
ZW1lbnQpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QzID0gbmFtZWRGbG93LmdldFJlZ2lv
bnNCeUNvbnRlbnQocEVsZW1lbnQpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdp
b25MaXN0MyIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDMubGVu
Z3RoIiwgMCk7Ci0KLSAgICAgICAgICAgIC8vIEFkZCB0aGUgc2FtZSBlbGVtZW50IHRvIHRoZSBm
bG93LiBUaGUgcmVnaW9uIGxpc3Qgc2hvdWxkIGNvbnRhaW4gb25lIHJlZ2lvbi4KLSAgICAgICAg
ICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocEVsZW1lbnQpOwotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZChwRWxlbWVudCk7Ci0g
ICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDQgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVu
dChwRWxlbWVudCk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3Q0Iik7
Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0NC5sZW5ndGgiLCAxKTsK
LSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdDQuaXRlbSgwKS5p
ZCIsICJyZWdpb24iKTsKLQotICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSByZWdpb24gbm9kZSBh
bmQgZ2V0IHRoZSByZWdpb24gbGlzdC4gVGhlIGxpc3Qgc2hvdWxkIGJlIGVtcHR5LgotICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpLmNsYXNzTmFtZSA9ICJub1Jl
Z2lvbiI7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9u
c0J5Q29udGVudChwRWxlbWVudCk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3Q1Iik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0NS5sZW5n
dGgiLCAwKTsKLQotICAgICAgICAgICAgLy8gQnJpbmcgYmFjayB0aGUgcmVnaW9uIGFuZCBnZXQg
dGhlIHJlZ2lvbiBsaXN0LiBUaGUgbGlzdCBzaG91bGQgaGF2ZSBvbmUgZWxlbWVudC4KLSAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5jbGFzc05hbWUgPSAicmVn
aW9uIjsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0NiA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHBFbGVtZW50KTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9u
TGlzdDYiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q2Lmxlbmd0
aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Ni5p
dGVtKDApLmlkIiwgInJlZ2lvbiIpOwotCi0gICAgICAgICAgICAvLyBSZW1vdmUgdGhlIG5hbWVk
IGZsb3csIHRoZSByZWdpb24gbGlzdCBzaG91bGQgYmUgZW1wdHkuCi0gICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOwotICAgICAgICAg
ICAgdmFyIHJlZ2lvbkxpc3Q3ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1l
bnQpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0NyIpOwotICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDcubGVuZ3RoIiwgMCk7Ci0KLSAgICAg
ICAgICAgIC8vIE1vdmUgdGhlIGFydGljbGUgdG8gYW5vdGhlciBuYW1lZCBmbG93LCB0aGUgcmVn
aW9uIGxpc3Qgc2hvdWxkIGJlIGVtcHR5LgotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAiYXJ0aWNsZTIiOwotICAgICAgICAgICAgdmFy
IG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIpOwotICAgICAgICAgICAgdmFyIHJl
Z2lvbkxpc3Q4ID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHBFbGVtZW50KTsKLSAg
ICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdDgiKTsKLSAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q4Lmxlbmd0aCIsIDApOwotCi0gICAgICAgICAgICAv
LyBBZGQgYSByZWdpb24gdG8gdGhlIHNlY29uZCBuYW1lZCBmbG93LCB0aGUgcmVnaW9uIGxpc3Qg
c2hvdWxkIGNvbnRhaW4gb25lIGVsZW1lbnQKLSAgICAgICAgICAgIC8vIHNpbmNlIHRoZSBwIGVs
ZW1lbnQgaXMgYSBjaGlsZCBvZiBhcnRpY2xlIHRoYXQgaXMgY29sbGVjdGVkIGJ5IGZsb3cyLgot
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5jbGFzc05hbWUg
PSAicmVnaW9uMiI7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDkgPSBuYW1lZEZsb3cyLmdl
dFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxs
KCJyZWdpb25MaXN0OSIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlz
dDkubGVuZ3RoIiwgMSk7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVm
dC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIzY2IwMWEuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWlu
LW11bHRpcGxlLXJlZ2lvbnMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMjMgKzAs
MCBAQAotVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgaW4gYSBuYW1lZCBmbG93LgotCi1P
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1MgZGl2VGV4dDEub2Zmc2V0UGFyZW50IGlz
IGRvY3VtZW50LmJvZHkKLVBBU1MgZGl2VGV4dDEub2Zmc2V0TGVmdCBpcyAxMDAKLVBBU1MgZGl2
VGV4dDEub2Zmc2V0VG9wIGlzIDQ1MAotUEFTUyBkaXZUZXh0Ml8xLm9mZnNldFBhcmVudCBpcyBk
b2N1bWVudC5ib2R5Ci1QQVNTIGRpdlRleHQyXzEub2Zmc2V0TGVmdCBpcyA1MDAKLVBBU1MgZGl2
VGV4dDJfMS5vZmZzZXRUb3AgaXMgMTUwCi1QQVNTIGRpdlRleHQyXzIub2Zmc2V0UGFyZW50IGlz
IGRvY3VtZW50LmJvZHkKLVBBU1MgZGl2VGV4dDJfMi5vZmZzZXRMZWZ0IGlzIDQ1MAotUEFTUyBk
aXZUZXh0Ml8yLm9mZnNldFRvcCBpcyAzNTAKLVBBU1MgZGl2VGV4dDJfMy5vZmZzZXRQYXJlbnQg
aXMgZG9jdW1lbnQuYm9keQotUEFTUyBkaXZUZXh0Ml8zLm9mZnNldExlZnQgaXMgNjAwCi1QQVNT
IGRpdlRleHQyXzMub2Zmc2V0VG9wIGlzIDUwMAotUEFTUyBpbWFnZS5vZmZzZXRQYXJlbnQgaXMg
ZG9jdW1lbnQuYm9keQotUEFTUyBpbWFnZS5vZmZzZXRMZWZ0IGlzIDY1MAotUEFTUyBpbWFnZS5v
ZmZzZXRUb3AgaXMgNjIwCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExl
ZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25zLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlMjZjN2MuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lv
bnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI4MiArMCwwIEBACi08aHRtbD4KLTxoZWFkPgot
CTxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0JCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQg
dGhlIGRlc2NyaXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlv
dXQuICovCi0JCSNkZXNjcmlwdGlvbiB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQl0b3A6
IDBweDsKLQkJfQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCXRv
cDogMTAwcHg7Ci0JCX0KLQotCQkjZGl2TWFpbjEgewotCQkJYm9yZGVyOiAycHggc29saWQgYmx1
ZTsKLQkJCXdpZHRoOiAzMDBweDsKLQkJCWhlaWdodDogMjI2cHg7Ci0JCQktd2Via2l0LWZsb3ct
aW50bzogZmxvdzE7Ci0JCX0KLQotCQkjZGl2TWFpbjIgewotCQkJYm9yZGVyOiAycHggc29saWQg
Ymx1ZTsKLQkJCXdpZHRoOiAyMTFweDsKLQkJCWhlaWdodDogNDcwcHg7Ci0JCQlwYWRkaW5nLWxl
ZnQ6IDVweDsKLQkJCW1hcmdpbjogNXB4OwotCQkJbWFyZ2luLWxlZnQ6IDEwcHg7Ci0JCQlsZWZ0
OiA0MHB4OwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cyOwotCQl9Ci0KLQkJLmRpdlRleHQg
ewotCQkJYm9yZGVyOiAxcHggc29saWQgZ3JlZW47Ci0JCQljb2xvcjogZ3JlZW47Ci0JCX0KLQot
CQkjZGl2VGV4dDEgewotCQkJd2lkdGg6IDIwMHB4OwotCQkJaGVpZ2h0OiAxNTBweDsKLQkJCXBv
c2l0aW9uOiByZWxhdGl2ZTsKLQkJCWxlZnQ6IDMwcHg7Ci0JCQl0b3A6IDEwcHg7Ci0JCX0KLQot
CQkjZGl2VGV4dDJfMSB7Ci0JCQlib3JkZXItY29sb3I6ICMwMDk5OTk7Ci0JCQljb2xvcjogIzAw
OTk5OTsKLQkJCW1hcmdpbjogMTBweDsKLQkJCXdpZHRoOiAxODBweDsKLQkJCWhlaWdodDogMTQw
cHg7Ci0JCX0KLQotCQkjZGl2VGV4dDJfMiB7Ci0JCQl3aWR0aDogMjAzcHg7Ci0JCQloZWlnaHQ6
IDI3MHB4OwotCQl9Ci0KLQkJI2RpdlRleHQyXzMgewotCQkJbWFyZ2luOiA0cHg7Ci0JCQl3aWR0
aDogMTkycHg7Ci0JCQloZWlnaHQ6IDEwNXB4OwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJ
dG9wOiAxMTVweDsKLQkJCWNvbG9yOiAjNzc3NzAwOwotCQkJYm9yZGVyLWNvbG9yOiAjNzc3NzAw
OwotCQl9Ci0KLQkJI2Fic29sdXRlU3BhbiB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCX0K
LQotCQkjc3BhbiB7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0JCQl0b3A6IDExNXB4OwotCQkJ
bGVmdDogMjQ7Ci0JCQljb2xvcjogYmxhY2s7Ci0JCQlmb250LXNpemU6IDEycHg7Ci0JCQltYXJn
aW4tbGVmdDogNHB4OwotCQkJcGFkZGluZzogMXB4OwotCQkJYm9yZGVyOiAxcHggc29saWQgYmxh
Y2s7Ci0JCX0KLQotCQkjaW1hZ2UgewotCQkJYm9yZGVyOiAxcHggZGFzaGVkIHJlZDsKLQkJCXdp
ZHRoOiAxNXB4OwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJdG9wOiAxMjRweDsKLQkJCW1h
cmdpbi1sZWZ0OiA1NHB4OwotCQl9Ci0KLQkJI2R1bW15MSB7Ci0JCQl3aWR0aDogMTAwcHg7Ci0J
CQloZWlnaHQ6IDI1cHg7Ci0JCQlib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLQkJCW1hcmdpbjog
NXB4OwotCQkJbWFyZ2luLWxlZnQ6IDIwcHg7Ci0JCX0KLQotCQkucmVnaW9uMSB7Ci0JCQktd2Vi
a2l0LWZsb3ctZnJvbTogZmxvdzE7Ci0JCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCQlwb3Np
dGlvbjogcmVsYXRpdmU7Ci0JCQlsZWZ0OiA1OXB4OwotCQkJdG9wOiA0MjlweDsKLQkJCXdpZHRo
OiAzMDRweDsKLQkJCWhlaWdodDogMjMwcHg7Ci0JCX0KLQotCQkucmVnaW9uMiB7Ci0JCQktd2Vi
a2l0LWZsb3ctZnJvbTogZmxvdzI7Ci0JCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCX0KLQot
CQkjZmlyc3RfcmVnaW9uMiB7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0JCQlsZWZ0OiA0NjRw
eDsKLQkJCXRvcDogLTE0MHB4OwotCQkJd2lkdGg6IDUwMHB4OwotCQkJaGVpZ2h0OiAxNjBweDsK
LQkJfQotCi0JCSNzZWNvbmRfcmVnaW9uMiB7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0JCQls
ZWZ0OiA0MjRweDsKLQkJCXRvcDogLTk0cHg7Ci0JCQl3aWR0aDogMzMwcHg7Ci0JCQloZWlnaHQ6
IDE1MHB4OwotCQl9Ci0KLQkJI3RoaXJkX3JlZ2lvbjIgewotCQkJcG9zaXRpb246IHJlbGF0aXZl
OwotCQkJbGVmdDogNTY5cHg7Ci0JCQl0b3A6IC02NnB4OwotCQkJd2lkdGg6IDI4MnB4OwotCQkJ
aGVpZ2h0OiAxOTVweDsKLQkJfQotCi0JCS5ncmlkIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsK
LQkJCXRvcDogNzAwcHg7Ci0JCQl3aWR0aDogMTAwcHg7Ci0JCQloZWlnaHQ6IDEwMHB4OwotCQkJ
Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IHJpZ2h0OwotCQkJ
Zm9udC1zaXplOiAxNHB4OwotCQkJY29sb3I6IGJsdWU7Ci0JCX0KLQotCQkudmdyaWQgewotCQkJ
cG9zaXRpb246IGFic29sdXRlOwotCQkJbGVmdDogOTAwcHg7Ci0JCQl3aWR0aDogMTAwcHg7Ci0J
CQloZWlnaHQ6IDEwMHB4OwotCQkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsdWU7Ci0JCQl0
ZXh0LWFsaWduOiBib3R0b207Ci0JCQlmb250LXNpemU6IDE0cHg7Ci0JCQljb2xvcjogYmx1ZTsK
LQkJfQotCi0JCSNncmlkMSB7Ci0JCQlsZWZ0OiAwcHg7Ci0JCX0KLQkJI2dyaWQyIHsKLQkJCWxl
ZnQ6IDEwMHB4OwotCQl9Ci0JCSNncmlkMyB7Ci0JCQlsZWZ0OiAyMDBweDsKLQkJfQotCQkjZ3Jp
ZDQgewotCQkJbGVmdDogMzAwcHg7Ci0JCX0KLQkJI2dyaWQ1IHsKLQkJCWxlZnQ6IDQwMHB4Owot
CQl9Ci0JCSNncmlkNiB7Ci0JCQlsZWZ0OiA1MDBweDsKLQkJfQotCQkjZ3JpZDcgewotCQkJbGVm
dDogNjAwcHg7Ci0JCX0KLQotCQkjdmdyaWQxIHsKLQkJCXRvcDogMHB4OwotCQl9Ci0JCSN2Z3Jp
ZDIgewotCQkJdG9wOiAxMDBweDsKLQkJfQotCQkjdmdyaWQzIHsKLQkJCXRvcDogMjAwcHg7Ci0J
CX0KLQkJI3ZncmlkNCB7Ci0JCQl0b3A6IDMwMHB4OwotCQl9Ci0JCSN2Z3JpZDUgewotCQkJdG9w
OiA0MDBweDsKLQkJfQotCQkjdmdyaWQ2IHsKLQkJCXRvcDogNTAwcHg7Ci0JCX0KLQkJI3Zncmlk
NyB7Ci0JCQl0b3A6IDYwMHB4OwotCQl9Ci0JCSN2Z3JpZDggewotCQkJdG9wOiA3MDBweDsKLQkJ
CWJvcmRlcjogbm9uZTsKLQkJfQotCTwvc3R5bGU+Ci0KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLQotPGJvZHkgaWQ9ImJv
ZHkiPgotCTxkaXYgaWQ9ImRpdk1haW4xIj4KLQkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRp
dlRleHQxIj48L2Rpdj4KLQk8L2Rpdj4KLQotCTxkaXYgaWQ9ImRpdk1haW4yIj4KLQkJPGRpdiBj
bGFzcz0iZHVtbXkiIGlkPSJkdW1teTEiPjwvZGl2PgotCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBp
ZD0iZGl2VGV4dDJfMSI+PC9kaXY+Ci0JCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0
Ml8yIj4KLQkJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0Ml8zIj48L2Rpdj4KLQkJ
CTxpbWcgaWQ9ImltYWdlIiBzcmM9InJlc291cmNlcy90cmFuc3BhcmVudC5wbmciPjwvaW5wdXQ+
Ci0JCTwvZGl2PgkJCi0JPC9kaXY+Ci0KLQk8ZGl2IGNsYXNzPSJyZWdpb24xIj48L2Rpdj4KLQot
CTxkaXYgY2xhc3M9InJlZ2lvbjIiIGlkPSJmaXJzdF9yZWdpb24yIj48L2Rpdj4KLQk8ZGl2IGNs
YXNzPSJyZWdpb24yIiBpZD0ic2Vjb25kX3JlZ2lvbjIiPjwvZGl2PgotCTxkaXYgY2xhc3M9InJl
Z2lvbjIiIGlkPSJ0aGlyZF9yZWdpb24yIj48L2Rpdj4KLQotCTxkaXYgaWQ9ImdyaWQxIiBjbGFz
cz0iZ3JpZCI+MTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4
PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDMiIGNsYXNzPSJncmlkIj4zMDBweDwvZGl2PgotCTxkaXYg
aWQ9ImdyaWQ0IiBjbGFzcz0iZ3JpZCI+NDAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNSIgY2xh
c3M9ImdyaWQiPjUwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBw
eDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ3IiBjbGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KLQotCTxk
aXYgaWQ9InZncmlkMSIgY2xhc3M9InZncmlkIj48L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDIiIGNs
YXNzPSJ2Z3JpZCI+MTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+
MjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4K
LQk8ZGl2IGlkPSJ2Z3JpZDUiIGNsYXNzPSJ2Z3JpZCI+NDAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2
Z3JpZDYiIGNsYXNzPSJ2Z3JpZCI+NTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNz
PSJ2Z3JpZCI+NjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAw
cHg8L2Rpdj4KLQotCTxzY3JpcHQ+Ci0JCWRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5k
IG9mZnNldFRvcCBpbiBhIG5hbWVkIGZsb3cuIikKLQotCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zm
c2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNl
dExlZnQiLCAiMTAwIik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRUb3AiLCAiNDUwIik7
Ci0KLQkJc2hvdWxkQmUoImRpdlRleHQyXzEub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHki
KTsKLQkJc2hvdWxkQmUoImRpdlRleHQyXzEub2Zmc2V0TGVmdCIsICI1MDAiKTsKLQkJc2hvdWxk
QmUoImRpdlRleHQyXzEub2Zmc2V0VG9wIiwgIjE1MCIpOwotCi0JCXNob3VsZEJlKCJkaXZUZXh0
Ml8yLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0
Ml8yLm9mZnNldExlZnQiLCAiNDUwIik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0Ml8yLm9mZnNldFRv
cCIsICIzNTAiKTsKLQotCQlzaG91bGRCZSgiZGl2VGV4dDJfMy5vZmZzZXRQYXJlbnQiLCAiZG9j
dW1lbnQuYm9keSIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDJfMy5vZmZzZXRMZWZ0IiwgIjYwMCIp
OwotCQlzaG91bGRCZSgiZGl2VGV4dDJfMy5vZmZzZXRUb3AiLCAiNTAwIik7Ci0KLQkJc2hvdWxk
QmUoImltYWdlLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0JCXNob3VsZEJlKCJp
bWFnZS5vZmZzZXRMZWZ0IiwgIjY1MCIpOwotCQlzaG91bGRCZSgiaW1hZ2Uub2Zmc2V0VG9wIiwg
IjYyMCIpOwotCi0JCWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotCQkJdmFyIGFsbEdyYXBoaWNF
bGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24xLCAucmVnaW9uMiwg
LmRpdlRleHQsIC5ncmlkLCAudmdyaWQsIC5kdW1teSwgI3NwYW4sICNpbWFnZSIpOwotCQkJZm9y
ICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5sZW5ndGg7IGkrKykKLQkJCQlhbGxHcmFw
aGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLQkJfQotCQkKLQk8L3Njcmlw
dD4KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Ci08L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJl
Z2lvbi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1hYnNvbHV0ZS1zdGlja3kt
Zml4ZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YjJhYTI5
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNl
dFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLWV4cGVjdGVkLnR4dAorKysgL2Rl
di9udWxsCkBAIC0xLDIwICswLDAgQEAKLVRlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGlu
IGEgbmFtZWQgZmxvdyB3aXRoIGFic29sdXRlLCBzdGlja3kgYW5kIGZpeGVkIHBvc2l0aW9uaW5n
LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1MgZGl2VGV4dDEub2Zmc2V0UGFy
ZW50IGlzIGRpdk1haW4xCi1QQVNTIGRpdlRleHQxLm9mZnNldExlZnQgaXMgMTAKLVBBU1MgZGl2
VGV4dDEub2Zmc2V0VG9wIGlzIDEwCi1QQVNTIGRpdlRleHQyLm9mZnNldFBhcmVudCBpcyBkb2N1
bWVudC5ib2R5Ci1QQVNTIGRpdlRleHQyLm9mZnNldExlZnQgaXMgMTAwCi1QQVNTIGRpdlRleHQy
Lm9mZnNldFRvcCBpcyA1MDAKLVBBU1MgZGl2VGV4dDMub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50
LmJvZHkKLVBBU1MgZGl2VGV4dDMub2Zmc2V0TGVmdCBpcyA2MDAKLVBBU1MgZGl2VGV4dDMub2Zm
c2V0VG9wIGlzIDQwMAotUEFTUyBkaXZUZXh0NC5vZmZzZXRQYXJlbnQgaXMgbnVsbAotUEFTUyBk
aXZUZXh0NC5vZmZzZXRMZWZ0IGlzIDUwCi1QQVNTIGRpdlRleHQ0Lm9mZnNldFRvcCBpcyAyMAot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1y
ZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWFic29sdXRlLXN0aWNreS1maXhlZC5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3YjkwODFlLi4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24t
YWJzb2x1dGUtc3RpY2t5LWZpeGVkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzMDUgKzAsMCBA
QAotPGh0bWw+Ci08aGVhZD4KLQk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotCQkvKiBNYWtlIHN1
cmUgdGhlIGNvbnNvbGUgYW5kIHRoZSBkZXNjcmlwdGlvbiBkb24ndCBpbnRlcmZlcmUgd2l0aCB0
aGUgcmVzdCBvZiB0aGUgbGF5b3V0LiAqLwotCQkjZGVzY3JpcHRpb24gewotCQkJcG9zaXRpb246
IGFic29sdXRlOwotCQkJdG9wOiAwcHg7Ci0JCX0KLQotCQkjY29uc29sZSB7Ci0JCQlwb3NpdGlv
bjogYWJzb2x1dGU7Ci0JCQl0b3A6IDEwMHB4OwotCQl9Ci0KLQkJI2Rpdk1haW4xIHsKLQkJCWJv
cmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQloZWlnaHQ6IDEwNXB4OwotCQkJbWFyZ2luOiAxMHB4
OwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cxOwot
CQl9Ci0KLQkJI2Rpdk1haW4yIHsKLQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQloZWln
aHQ6IDEyMHB4OwotCQkJbWFyZ2luOiAxMHB4OwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cy
OwotCQl9Ci0KLQkJI2Rpdk1haW4zIHsKLQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQl3
aWR0aDogMjExcHg7Ci0JCQloZWlnaHQ6IDE0NnB4OwotCQkJcGFkZGluZy1sZWZ0OiA1cHg7Ci0J
CQltYXJnaW46IDVweDsKLQkJCW1hcmdpbi1sZWZ0OiAxMHB4OwotCQkJbGVmdDogNDBweDsKLQkJ
CS13ZWJraXQtZmxvdy1pbnRvOiBmbG93MzsKLQkJfQotCi0JCSNkaXZNYWluNCB7Ci0JCQlib3Jk
ZXI6IDJweCBzb2xpZCBibHVlOwotCQkJd2lkdGg6IDIyNXB4OwotCQkJaGVpZ2h0OiAxMjBweDsK
LQkJCXBhZGRpbmctbGVmdDogNXB4OwotCQkJcGFkZGluZy10b3A6IDVweDsKLQkJCW1hcmdpbjog
OHB4OwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3c0OwotCQl9Ci0KLQkJLmRpdlRleHQgewot
CQkJYm9yZGVyOiAxcHggc29saWQgZ3JlZW47Ci0JCQljb2xvcjogZ3JlZW47Ci0JCQlmb250LXNp
emU6IDE0cHg7Ci0JCX0KLQotCQkjZGl2VGV4dDEgewotCQkJd2lkdGg6IDI1MHB4OwotCQkJcG9z
aXRpb246IGFic29sdXRlOwotCQkJbGVmdDogMTBweDsKLQkJCXRvcDogMTBweDsKLQkJfQotCi0J
CSNkaXZUZXh0MiB7Ci0JCQl3aWR0aDogMjAwcHg7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0J
CQlsZWZ0OiAyMHB4OwotCQkJdG9wOiAyMHB4OwotCQl9Ci0KLQkJI2RpdlRleHQzIHsKLQkJCWJv
cmRlci1jb2xvcjogIzAwOTk5OTsKLQkJCWNvbG9yOiAjMDA5OTk5OwotCQkJbWFyZ2luOiAxMHB4
OwotCQkJd2lkdGg6IDE4MHB4OwotCQkJaGVpZ2h0OiA5MHB4OwotCQkJcG9zaXRpb246IC13ZWJr
aXQtc3RpY2t5OwotCQkJdG9wOiA1MHB4OwotCQl9Ci0KLQkJI2RpdlRleHQ0IHsKLQkJCWJvcmRl
ci1jb2xvcjogIzAwOTk5OTsKLQkJCWNvbG9yOiAjMDA5OTk5OwotCQkJd2lkdGg6IDE4MHB4Owot
CQkJaGVpZ2h0OiAxMDBweDsKLQkJCXBvc2l0aW9uOiBmaXhlZDsKLQkJCWxlZnQ6IDUwcHg7Ci0J
CQl0b3A6IDIwcHg7Ci0JCX0KLQotCQkjZHVtbXkgewotCQkJd2lkdGg6IDEwMHB4OwotCQkJaGVp
Z2h0OiAyNXB4OwotCQkJYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0JCQltYXJnaW46IDVweDsK
LQkJCW1hcmdpbi1sZWZ0OiAyMHB4OwotCQl9Ci0KLQkJI3JlZ2lvbjEgewotCQkJLXdlYmtpdC1m
bG93LWZyb206IGZsb3cxOwotCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246
IHJlbGF0aXZlOwotCQkJbGVmdDogNTlweDsKLQkJCXRvcDogMzM1cHg7Ci0JCQl3aWR0aDogMzA0
cHg7Ci0JCQloZWlnaHQ6IDEyNXB4OwotCQl9Ci0KLQkJI3JlZ2lvbjIgewotCQkJLXdlYmtpdC1m
bG93LWZyb206IGZsb3cyOwotCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246
IHJlbGF0aXZlOwotCQkJbGVmdDogNzFweDsKLQkJCXRvcDogMzQ0cHg7Ci0JCQl3aWR0aDogMzA0
cHg7Ci0JCQloZWlnaHQ6IDE0MHB4OwotCQl9Ci0KLQkJI3JlZ2lvbjMgewotCQkJLXdlYmtpdC1m
bG93LWZyb206IGZsb3czOwotCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246
IHJlbGF0aXZlOwotCQkJbWFyZ2luLXRvcDogMjBweDsKLQkJCWxlZnQ6IDU2NHB4OwotCQkJdG9w
OiA1M3B4OwotCQkJd2lkdGg6IDI1MHB4OwotCQkJaGVpZ2h0OiAxNjBweDsKLQkJCW92ZXJmbG93
OiBoaWRkZW47Ci0JCX0KLQotCQkjcmVnaW9uNCB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxv
dzQ7Ci0JCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0J
CQltYXJnaW4tdG9wOiAyMHB4OwotCQkJbGVmdDogNDUwcHg7Ci0JCQl0b3A6IDUzcHg7Ci0JCQl3
aWR0aDogMjUwcHg7Ci0JCQloZWlnaHQ6IDE0MHB4OwotCQl9Ci0KLQkJLmdyaWQgewotCQkJcG9z
aXRpb246IGFic29sdXRlOwotCQkJdG9wOiA3NTBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhl
aWdodDogMTAwcHg7Ci0JCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibHVlOwotCQkJdGV4dC1h
bGlnbjogcmlnaHQ7Ci0JCQlmb250LXNpemU6IDE0cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQot
Ci0JCS52Z3JpZCB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQlsZWZ0OiA5MDBweDsKLQkJ
CXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAwcHg7Ci0JCQlib3JkZXItYm90dG9tOiAxcHgg
c29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IGJvdHRvbTsKLQkJCWZvbnQtc2l6ZTogMTRweDsK
LQkJCWNvbG9yOiBibHVlOwotCQl9Ci0KLQkJI2dyaWQxIHsKLQkJCWxlZnQ6IDBweDsKLQkJfQot
CQkjZ3JpZDIgewotCQkJbGVmdDogMTAwcHg7Ci0JCX0KLQkJI2dyaWQzIHsKLQkJCWxlZnQ6IDIw
MHB4OwotCQl9Ci0JCSNncmlkNCB7Ci0JCQlsZWZ0OiAzMDBweDsKLQkJfQotCQkjZ3JpZDUgewot
CQkJbGVmdDogNDAwcHg7Ci0JCX0KLQkJI2dyaWQ2IHsKLQkJCWxlZnQ6IDUwMHB4OwotCQl9Ci0J
CSNncmlkNyB7Ci0JCQlsZWZ0OiA2MDBweDsKLQkJfQotCi0JCSN2Z3JpZDEgewotCQkJdG9wOiAw
cHg7Ci0JCX0KLQkJI3ZncmlkMiB7Ci0JCQl0b3A6IDEwMHB4OwotCQl9Ci0JCSN2Z3JpZDMgewot
CQkJdG9wOiAyMDBweDsKLQkJfQotCQkjdmdyaWQ0IHsKLQkJCXRvcDogMzAwcHg7Ci0JCX0KLQkJ
I3ZncmlkNSB7Ci0JCQl0b3A6IDQwMHB4OwotCQl9Ci0JCSN2Z3JpZDYgewotCQkJdG9wOiA1MDBw
eDsKLQkJfQotCQkjdmdyaWQ3IHsKLQkJCXRvcDogNjAwcHg7Ci0JCX0KLQkJI3ZncmlkOCB7Ci0J
CQl0b3A6IDcwMHB4OwotCQkJYm9yZGVyOiBub25lOwotCQl9Ci0JPC9zdHlsZT4KLQotCTxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotCi0JPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotCQlmdW5jdGlvbiB3cml0ZU9mZnNldEluZm8o
c2VsZWN0b3IpIHsKLQkJCXZhciBkaXZJdGVtcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwo
c2VsZWN0b3IpOwotCQkJCQotCQkJZm9yICh2YXIgaT0wOyBpPGRpdkl0ZW1zLmxlbmd0aDsgaSsr
KSB7Ci0JCQkJdmFyIGRpdkl0ZW0gPSBkaXZJdGVtc1tpXTsKLQkJCQl2YXIgZXhpc3RpbmdIVE1M
ID0gZGl2SXRlbS5pbm5lckhUTUw7Ci0JCQkJdmFyIG5ld0hUTUwgPSBleGlzdGluZ0hUTUwucmVw
bGFjZSgiI29mZlRvcCMiLCBkaXZJdGVtLm9mZnNldFRvcCk7Ci0JCQkJbmV3SFRNTCA9IG5ld0hU
TUwucmVwbGFjZSgiI29mZkxlZnQjIiwgZGl2SXRlbS5vZmZzZXRMZWZ0KTsKLQkJCQlpZiAoZGl2
SXRlbS5vZmZzZXRQYXJlbnQpCi0JCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNvZmZQ
YXJlbnQjIiwgZGl2SXRlbS5vZmZzZXRQYXJlbnQudGFnTmFtZSArICIoIiArIGRpdkl0ZW0ub2Zm
c2V0UGFyZW50LmlkICsgIikiKTsKLQkJCQllbHNlCi0JCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJl
cGxhY2UoIiNvZmZQYXJlbnQjIiwgIm51bGwiKTsKLQkJCQlkaXZJdGVtLmlubmVySFRNTCA9IG5l
d0hUTUw7Ci0JCQl9Ci0JCX0KLQkJZnVuY3Rpb24gbXlPbkxvYWQoKSB7Ci0JCQl3cml0ZU9mZnNl
dEluZm8oIi5kaXZUZXh0Iik7Ci0JCX0KLQk8L3NjcmlwdD4KLTwvaGVhZD4KLQotPGJvZHkgaWQ9
ImJvZHkiIG9ubG9hZCA9ICJteU9uTG9hZCgpOyI+Ci0JPGRpdiBpZD0iZGl2TWFpbjEiPgotCQk8
ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDEiPlRoaXMgaXMgPGI+ZGl2VGV4dDE8L2I+
IChhYnNvbHV0ZSk6PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50IzwvYj48YnIv
Pi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRvcCBpcyA8Yj4j
b2ZmVG9wIzwvYj48L2Rpdj4KLQk8L2Rpdj4KLQotCTxkaXYgaWQ9ImRpdk1haW4yIj4KLQkJPGRp
diBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQyIj5UaGlzIGlzIDxiPmRpdlRleHQyPC9iPiAo
YWJzb2x1dGUpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4t
IG9mZnNldExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29m
ZlRvcCM8L2I+PC9kaXY+Ci0JPC9kaXY+Ci0KLQk8ZGl2IGlkPSJkaXZNYWluMyI+Ci0JCTxkaXYg
Y2xhc3M9ImR1bW15IiBpZD0iZHVtbXkiPmR1bW15PC9kaXY+Ci0JCTxkaXYgY2xhc3M9ImRpdlRl
eHQiIGlkPSJkaXZUZXh0MyI+PHNwYW4gY2xhc3M9Im9mZnNldEluZm8iPlRoaXMgaXMgPGI+ZGl2
VGV4dDM8L2I+IChzdGlja3kpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8
L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3Ag
aXMgPGI+I29mZlRvcCM8L2I+PC9zcGFuPjwvZGl2PgotCTwvZGl2PgotCi0JPGRpdiBpZD0iZGl2
TWFpbjQiPgotCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDQiPlRoaXMgaXMgPGI+
ZGl2VGV4dDQ8L2I+IChmaXhlZCk6PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50
IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRv
cCBpcyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KLQk8L2Rpdj4KLQotCTxkaXYgY2xhc3M9InJlZ2lv
biIgaWQ9InJlZ2lvbjEiPjwvZGl2PgotCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjIi
PjwvZGl2PgotCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjMiPjwvZGl2PgotCTxkaXYg
Y2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjQiPjwvZGl2PgotCi0JPGRpdiBpZD0iZ3JpZDEiIGNs
YXNzPSJncmlkIj4xMDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQyIiBjbGFzcz0iZ3JpZCI+MjAw
cHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkMyIgY2xhc3M9ImdyaWQiPjMwMHB4PC9kaXY+Ci0JPGRp
diBpZD0iZ3JpZDQiIGNsYXNzPSJncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ1IiBj
bGFzcz0iZ3JpZCI+NTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNiIgY2xhc3M9ImdyaWQiPjYw
MHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDciIGNsYXNzPSJncmlkIj43MDBweDwvZGl2PgotCi0J
PGRpdiBpZD0idmdyaWQxIiBjbGFzcz0idmdyaWQiPjwvZGl2PgotCTxkaXYgaWQ9InZncmlkMiIg
Y2xhc3M9InZncmlkIj4xMDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkMyIgY2xhc3M9InZncmlk
Ij4yMDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNCIgY2xhc3M9InZncmlkIj4zMDBweDwvZGl2
PgotCTxkaXYgaWQ9InZncmlkNSIgY2xhc3M9InZncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9
InZncmlkNiIgY2xhc3M9InZncmlkIj41MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNyIgY2xh
c3M9InZncmlkIj42MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkOCIgY2xhc3M9InZncmlkIj43
MDBweDwvZGl2PgotCi0JPHNjcmlwdD4KLQkJZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0TGVmdCBh
bmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGFic29sdXRlLCBzdGlja3kgYW5kIGZp
eGVkIHBvc2l0aW9uaW5nLiIpCi0KLQkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldFBhcmVudCIs
ICJkaXZNYWluMSIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0TGVmdCIsICIxMCIpOwot
CQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0VG9wIiwgIjEwIik7Ci0KLQkJc2hvdWxkQmUoImRp
dlRleHQyLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0JCXNob3VsZEJlKCJkaXZU
ZXh0Mi5vZmZzZXRMZWZ0IiwgIjEwMCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0VG9w
IiwgIjUwMCIpOwotCi0JCXNob3VsZEJlKCJkaXZUZXh0My5vZmZzZXRQYXJlbnQiLCAiZG9jdW1l
bnQuYm9keSIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDMub2Zmc2V0TGVmdCIsICI2MDAiKTsKLQkJ
c2hvdWxkQmUoImRpdlRleHQzLm9mZnNldFRvcCIsICI0MDAiKTsKLQotCQlzaG91bGRCZU51bGwo
ImRpdlRleHQ0Lm9mZnNldFBhcmVudCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDQub2Zmc2V0TGVm
dCIsICI1MCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDQub2Zmc2V0VG9wIiwgIjIwIik7Ci0KLQkJ
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0JCQl2YXIgYWxsR3JhcGhpY0VsZW1lbnRzID0gZG9j
dW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnJlZ2lvbiwgLmRpdlRleHQsIC5ncmlkLCAudmdyaWQs
ICNkdW1teSIpOwotCQkJZm9yICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5sZW5ndGg7
IGkrKykKLQkJCQlhbGxHcmFwaGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsK
LQkJfQotCQkKLQk8L3NjcmlwdD4KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExl
ZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzJlZGZiNy4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9u
LWZsb2F0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLVRlc3Qg
b2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGZsb2F0cy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1QQVNTIGRpdlRleHQxLm9mZnNldFBhcmVudCBp
cyBkb2N1bWVudC5ib2R5Ci1QQVNTIGRpdlRleHQxLm9mZnNldExlZnQgaXMgMjAwCi1QQVNTIGRp
dlRleHQxLm9mZnNldFRvcCBpcyAzMDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0UGFyZW50IGlzIGRv
Y3VtZW50LmJvZHkKLVBBU1MgZGl2VGV4dDIub2Zmc2V0TGVmdCBpcyAzMDAKLVBBU1MgZGl2VGV4
dDIub2Zmc2V0VG9wIGlzIDUwMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1U
RVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZz
ZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZs
b2F0LXZlcnQtcmwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MmFiNDNkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0
LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSwxNCArMCwwIEBACi1UZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBh
IG5hbWVkIGZsb3cgd2l0aCBmbG9hdHMgaW4gdmVydGljYWwtcmwgbW9kZS4KLQotT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgotCi1QQVNTIGRpdlRleHQxLm9mZnNldFBhcmVudCBpcyBkb2N1bWVu
dC5ib2R5Ci1QQVNTIGRpdlRleHQxLm9mZnNldExlZnQgaXMgNzAwCi1QQVNTIGRpdlRleHQxLm9m
ZnNldFRvcCBpcyAyMDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJv
ZHkKLVBBU1MgZGl2VGV4dDIub2Zmc2V0TGVmdCBpcyA0MDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0
VG9wIGlzIDIwMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBM
RVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9m
ZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC12ZXJ0LXJsLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIxODA2OTUuLjAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9h
dC12ZXJ0LXJsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOTggKzAsMCBAQAotPGh0bWwgc3R5
bGU9Ii13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsiPgotPGhlYWQ+Ci0JPHN0eWxl
IHR5cGU9InRleHQvY3NzIj4KLQkJLyogTWFrZSBzdXJlIHRoZSBjb25zb2xlIGFuZCB0aGUgZGVz
Y3JpcHRpb24gZG9uJ3QgaW50ZXJmZXJlIHdpdGggdGhlIHJlc3Qgb2YgdGhlIGxheW91dC4gKi8K
LQkJI2Rlc2NyaXB0aW9uIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCWxlZnQ6IDBweDsK
LQkJfQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCWxlZnQ6IDEw
MHB4OwotCQl9Ci0KLQkJI2Rpdk1haW4xIHsKLQkJCS13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTsK
LQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQl3aWR0aDogMTYwcHg7Ci0JCQltYXJnaW46
IDEwcHg7Ci0JCQlwYWRkaW5nOiA1cHg7Ci0JCX0KLQotCQkjZGl2TWFpbjIgewotCQkJYm9yZGVy
OiAycHggc29saWQgYmx1ZTsKLQkJCXdpZHRoOiAxMzVweDsKLQkJCW1hcmdpbjogNXB4OwotCQkJ
LXdlYmtpdC1mbG93LWludG86IGZsb3cyOwotCQl9Ci0KLQkJLmRpdlRleHQgewotCQkJYm9yZGVy
OiAxcHggc29saWQgZ3JlZW47Ci0JCQljb2xvcjogZ3JlZW47Ci0JCQlmb250LXNpemU6IDE0cHg7
Ci0JCQlwYWRkaW5nOiA1cHg7Ci0JCX0KLQotCQkjZGl2VGV4dDEgewotCQkJd2lkdGg6IDYwcHg7
Ci0JCQloZWlnaHQ6IDI0MHB4OwotCQkJbWFyZ2luOiAxMHB4OwotCQkJcGFkZGluZy1sZWZ0OiA1
cHg7Ci0JCQlmbG9hdDogcmlnaHQ7Ci0JCX0KLQotCQkjZGl2VGV4dDIgewotCQkJd2lkdGg6IDYw
cHg7Ci0JCQloZWlnaHQ6IDE5MHB4OwotCQkJZmxvYXQ6IGxlZnQ7Ci0JCQltYXJnaW46IDEwcHg7
Ci0JCX0KLQotCQkjcmVnaW9uMSB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7Ci0JCQli
b3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQl0b3A6IDc4
cHg7Ci0JCQlsZWZ0OiA2MDhweDsKLQkJCWhlaWdodDogNDAwcHg7Ci0JCQl3aWR0aDogMTkwcHg7
Ci0JCX0KLQotCQkjcmVnaW9uMiB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7Ci0JCQli
b3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQlsZWZ0OiAz
MzhweDsKLQkJCXRvcDogMTgycHg7Ci0JCQl3aWR0aDogMTUwcHg7Ci0JCQloZWlnaHQ6IDQwMHB4
OwotCQl9Ci0KLQkJLmdyaWQgewotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJdG9wOiA2NTBw
eDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAwcHg7Ci0JCQlib3JkZXItcmlnaHQ6
IDFweCBzb2xpZCBibHVlOwotCQkJdGV4dC1hbGlnbjogcmlnaHQ7Ci0JCQlmb250LXNpemU6IDE0
cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQotCi0JCS52Z3JpZCB7Ci0JCQlwb3NpdGlvbjogYWJz
b2x1dGU7Ci0JCQlsZWZ0OiA5MDBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAw
cHg7Ci0JCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IGJv
dHRvbTsKLQkJCWZvbnQtc2l6ZTogMTRweDsKLQkJCWNvbG9yOiBibHVlOwotCQl9Ci0KLQkJI2dy
aWQxIHsKLQkJCWxlZnQ6IDBweDsKLQkJfQotCQkjZ3JpZDIgewotCQkJbGVmdDogMTAwcHg7Ci0J
CX0KLQkJI2dyaWQzIHsKLQkJCWxlZnQ6IDIwMHB4OwotCQl9Ci0JCSNncmlkNCB7Ci0JCQlsZWZ0
OiAzMDBweDsKLQkJfQotCQkjZ3JpZDUgewotCQkJbGVmdDogNDAwcHg7Ci0JCX0KLQkJI2dyaWQ2
IHsKLQkJCWxlZnQ6IDUwMHB4OwotCQl9Ci0JCSNncmlkNyB7Ci0JCQlsZWZ0OiA2MDBweDsKLQkJ
fQotCi0JCSN2Z3JpZDEgewotCQkJdG9wOiAwcHg7Ci0JCX0KLQkJI3ZncmlkMiB7Ci0JCQl0b3A6
IDEwMHB4OwotCQl9Ci0JCSN2Z3JpZDMgewotCQkJdG9wOiAyMDBweDsKLQkJfQotCQkjdmdyaWQ0
IHsKLQkJCXRvcDogMzAwcHg7Ci0JCX0KLQkJI3ZncmlkNSB7Ci0JCQl0b3A6IDQwMHB4OwotCQl9
Ci0JCSN2Z3JpZDYgewotCQkJdG9wOiA1MDBweDsKLQkJfQotCQkjdmdyaWQ3IHsKLQkJCXRvcDog
NjAwcHg7Ci0JCX0KLQkJI3ZncmlkOCB7Ci0JCQl0b3A6IDcwMHB4OwotCQkJYm9yZGVyOiBub25l
OwotCQl9Ci0JPC9zdHlsZT4KLQotCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBpZD0iYm9keSI+Ci0JCi0JPGRp
diBpZD0iZGl2TWFpbjEiPgotCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDEiPjxi
PmRpdlRleHQxPC9iPjwvZGl2PgotCQk8c3BhbiBjbGFzcz0ibXlTcGFuIiBzdHlsZT0iY29sb3I6
IGJsdWU7Ij5UaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMg
dGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBm
bG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRo
ZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi48
L3NwYW4+Ci0JPC9kaXY+Ci0JCi0JPGRpdiBpZD0iZGl2TWFpbjIiPgotCQk8ZGl2IGNsYXNzPSJk
aXZUZXh0IiBpZD0iZGl2VGV4dDIiPjxiPmRpdlRleHQyPC9iPjwvZGl2PgotCQk8c3BhbiBjbGFz
cz0ibXlTcGFuIiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5UaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJv
dW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVu
IGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRl
eHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuPC9zcGFuPgotCTwvZGl2PgotCi0J
PGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMSI+PC9kaXY+Ci0JPGRpdiBjbGFzcz0icmVn
aW9uIiBpZD0icmVnaW9uMiI+PC9kaXY+Ci0JCi0JPGRpdiBpZD0iZ3JpZDEiIGNsYXNzPSJncmlk
Ij4xMDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQyIiBjbGFzcz0iZ3JpZCI+MjAwcHg8L2Rpdj4K
LQk8ZGl2IGlkPSJncmlkMyIgY2xhc3M9ImdyaWQiPjMwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3Jp
ZDQiIGNsYXNzPSJncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ1IiBjbGFzcz0iZ3Jp
ZCI+NTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNiIgY2xhc3M9ImdyaWQiPjYwMHB4PC9kaXY+
Ci0JPGRpdiBpZD0iZ3JpZDciIGNsYXNzPSJncmlkIj43MDBweDwvZGl2PgotCi0JPGRpdiBpZD0i
dmdyaWQxIiBjbGFzcz0idmdyaWQiPjwvZGl2PgotCTxkaXYgaWQ9InZncmlkMiIgY2xhc3M9InZn
cmlkIj4xMDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkMyIgY2xhc3M9InZncmlkIj4yMDBweDwv
ZGl2PgotCTxkaXYgaWQ9InZncmlkNCIgY2xhc3M9InZncmlkIj4zMDBweDwvZGl2PgotCTxkaXYg
aWQ9InZncmlkNSIgY2xhc3M9InZncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNiIg
Y2xhc3M9InZncmlkIj41MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNyIgY2xhc3M9InZncmlk
Ij42MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkOCIgY2xhc3M9InZncmlkIj43MDBweDwvZGl2
PgotCi0JPHNjcmlwdD4KLQkJZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0
VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGZsb2F0cyBpbiB2ZXJ0aWNhbC1ybCBtb2RlLiIpCi0K
LQkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0J
CXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRMZWZ0IiwgIjcwMCIpOwotCQlzaG91bGRCZSgiZGl2
VGV4dDEub2Zmc2V0VG9wIiwgIjIwMCIpOwotCi0JCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRQ
YXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0TGVm
dCIsICI0MDAiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldFRvcCIsICIyMDAiKTsKLQot
CQlpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLQkJCXZhciBhbGxHcmFwaGljRWxlbWVudHMgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucmVnaW9uLCAuZGl2VGV4dCwgLmdyaWQsIC52Z3Jp
ZCwgLm15U3BhbiIpOwotCQkJZm9yICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5sZW5n
dGg7IGkrKykKLQkJCQlhbGxHcmFwaGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25l
IjsKLQkJfQotCQkKLQk8L3NjcmlwdD4KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNl
dExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC5odG1sCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MjUzZTk3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDIxNiArMCwwIEBACi08aHRtbD4KLTxoZWFkPgotCTxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+Ci0JCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2Ny
aXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCi0J
CSNkZXNjcmlwdGlvbiB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQl0b3A6IDBweDsKLQkJ
fQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCXRvcDogMTAwcHg7
Ci0JCX0KLQotCQkjZGl2TWFpbjEgewotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cxOwotCQkJ
Ym9yZGVyOiAycHggc29saWQgYmx1ZTsKLQkJCWhlaWdodDogMTUwcHg7Ci0JCQltYXJnaW46IDEw
cHg7Ci0JCQlwYWRkaW5nOiA1cHg7Ci0JCX0KLQotCQkjZGl2TWFpbjIgewotCQkJYm9yZGVyOiAy
cHggc29saWQgYmx1ZTsKLQkJCWhlaWdodDogMTM1cHg7Ci0JCQltYXJnaW46IDVweDsKLQkJCS13
ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsKLQkJfQotCi0JCS5kaXZUZXh0IHsKLQkJCWJvcmRlcjog
MXB4IHNvbGlkIGdyZWVuOwotCQkJY29sb3I6IGdyZWVuOwotCQkJZm9udC1zaXplOiAxNHB4Owot
CQl9Ci0KLQkJI2RpdlRleHQxIHsKLQkJCXdpZHRoOiAyNTBweDsKLQkJCW1hcmdpbjogMTBweDsK
LQkJCXBhZGRpbmctbGVmdDogNXB4OwotCQkJZmxvYXQ6IHJpZ2h0OwotCQl9Ci0KLQkJI2RpdlRl
eHQyIHsKLQkJCXdpZHRoOiAyMDBweDsKLQkJCWZsb2F0OiBsZWZ0OwotCQkJbWFyZ2luOiAxMHB4
OwotCQl9Ci0KLQkJI3JlZ2lvbjEgewotCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOwotCQkJ
Ym9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJbGVmdDog
NzVweDsKLQkJCXRvcDogMjY0cHg7Ci0JCQl3aWR0aDogNDAwcHg7Ci0JCQloZWlnaHQ6IDE4MHB4
OwotCQl9Ci0KLQkJI3JlZ2lvbjIgewotCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOwotCQkJ
Ym9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJbGVmdDog
Mjc0cHg7Ci0JCQl0b3A6IDI5MnB4OwotCQkJd2lkdGg6IDQwMHB4OwotCQkJaGVpZ2h0OiAxNTBw
eDsKLQkJfQotCi0JCS5ncmlkIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCXRvcDogNzUw
cHg7Ci0JCQl3aWR0aDogMTAwcHg7Ci0JCQloZWlnaHQ6IDEwMHB4OwotCQkJYm9yZGVyLXJpZ2h0
OiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IHJpZ2h0OwotCQkJZm9udC1zaXplOiAx
NHB4OwotCQkJY29sb3I6IGJsdWU7Ci0JCX0KLQotCQkudmdyaWQgewotCQkJcG9zaXRpb246IGFi
c29sdXRlOwotCQkJbGVmdDogOTAwcHg7Ci0JCQl3aWR0aDogMTAwcHg7Ci0JCQloZWlnaHQ6IDEw
MHB4OwotCQkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsdWU7Ci0JCQl0ZXh0LWFsaWduOiBi
b3R0b207Ci0JCQlmb250LXNpemU6IDE0cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQotCi0JCSNn
cmlkMSB7Ci0JCQlsZWZ0OiAwcHg7Ci0JCX0KLQkJI2dyaWQyIHsKLQkJCWxlZnQ6IDEwMHB4Owot
CQl9Ci0JCSNncmlkMyB7Ci0JCQlsZWZ0OiAyMDBweDsKLQkJfQotCQkjZ3JpZDQgewotCQkJbGVm
dDogMzAwcHg7Ci0JCX0KLQkJI2dyaWQ1IHsKLQkJCWxlZnQ6IDQwMHB4OwotCQl9Ci0JCSNncmlk
NiB7Ci0JCQlsZWZ0OiA1MDBweDsKLQkJfQotCQkjZ3JpZDcgewotCQkJbGVmdDogNjAwcHg7Ci0J
CX0KLQotCQkjdmdyaWQxIHsKLQkJCXRvcDogMHB4OwotCQl9Ci0JCSN2Z3JpZDIgewotCQkJdG9w
OiAxMDBweDsKLQkJfQotCQkjdmdyaWQzIHsKLQkJCXRvcDogMjAwcHg7Ci0JCX0KLQkJI3Zncmlk
NCB7Ci0JCQl0b3A6IDMwMHB4OwotCQl9Ci0JCSN2Z3JpZDUgewotCQkJdG9wOiA0MDBweDsKLQkJ
fQotCQkjdmdyaWQ2IHsKLQkJCXRvcDogNTAwcHg7Ci0JCX0KLQkJI3ZncmlkNyB7Ci0JCQl0b3A6
IDYwMHB4OwotCQl9Ci0JCSN2Z3JpZDggewotCQkJdG9wOiA3MDBweDsKLQkJCWJvcmRlcjogbm9u
ZTsKLQkJfQotCTwvc3R5bGU+Ci0KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLQotCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4K
LQkJZnVuY3Rpb24gd3JpdGVPZmZzZXRJbmZvKHNlbGVjdG9yKSB7Ci0JCQl2YXIgZGl2SXRlbXMg
PSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTsKLQkJCQkKLQkJCWZvciAodmFy
IGk9MDsgaTxkaXZJdGVtcy5sZW5ndGg7IGkrKykgewotCQkJCXZhciBkaXZJdGVtID0gZGl2SXRl
bXNbaV07Ci0JCQkJdmFyIGV4aXN0aW5nSFRNTCA9IGRpdkl0ZW0uaW5uZXJIVE1MOwotCQkJCXZh
ciBuZXdIVE1MID0gZXhpc3RpbmdIVE1MLnJlcGxhY2UoIiNvZmZUb3AjIiwgZGl2SXRlbS5vZmZz
ZXRUb3ApOwotCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNvZmZMZWZ0IyIsIGRpdkl0
ZW0ub2Zmc2V0TGVmdCk7Ci0JCQkJaWYgKGRpdkl0ZW0ub2Zmc2V0UGFyZW50KQotCQkJCQluZXdI
VE1MID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmUGFyZW50IyIsIGRpdkl0ZW0ub2Zmc2V0UGFyZW50
LnRhZ05hbWUgKyAiKCIgKyBkaXZJdGVtLm9mZnNldFBhcmVudC5pZCArICIpIik7Ci0JCQkJZWxz
ZQotCQkJCQluZXdIVE1MID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmUGFyZW50IyIsICJudWxsIik7
Ci0JCQkJZGl2SXRlbS5pbm5lckhUTUwgPSBuZXdIVE1MOwotCQkJfQotCQl9Ci0JCWZ1bmN0aW9u
IG15T25Mb2FkKCkgewotCQkJd3JpdGVPZmZzZXRJbmZvKCIuZGl2VGV4dCIpOwotCQl9Ci0JPC9z
Y3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5IGlkPSJib2R5IiBvbmxvYWQgPSAibXlPbkxvYWQoKTsi
PgotCQotCTxkaXYgaWQ9ImRpdk1haW4xIj4KLQkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRp
dlRleHQxIj5UaGlzIGlzIDxiPmRpdlRleHQxPC9iPiAoZmxvYXQgcmlnaHQpOjxici8+LSBvZmZz
ZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29m
ZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9kaXY+Ci0JCTxz
cGFuIGNsYXNzPSJteVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRoaXMgdGV4dCBzaG91bGQg
ZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0
aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYu
IFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNo
b3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KLQk8L2Rpdj4KLQkKLQk8ZGl2
IGlkPSJkaXZNYWluMiI+Ci0JCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0MiI+VGhp
cyBpcyA8Yj5kaXZUZXh0MjwvYj4gKGZsb2F0IGxlZnQpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMg
PGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxi
ci8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9kaXY+Ci0JCTxzcGFuIGNsYXNzPSJt
eVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQg
dGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2
LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBz
aG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFy
b3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KLQk8L2Rpdj4KLQotCTxkaXYgY2xhc3M9InJlZ2lv
biIgaWQ9InJlZ2lvbjEiPjwvZGl2PgotCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjIi
PjwvZGl2PgotCQotCTxkaXYgaWQ9ImdyaWQxIiBjbGFzcz0iZ3JpZCI+MTAwcHg8L2Rpdj4KLQk8
ZGl2IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDMi
IGNsYXNzPSJncmlkIj4zMDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ0IiBjbGFzcz0iZ3JpZCI+
NDAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNSIgY2xhc3M9ImdyaWQiPjUwMHB4PC9kaXY+Ci0J
PGRpdiBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ3
IiBjbGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KLQotCTxkaXYgaWQ9InZncmlkMSIgY2xhc3M9InZn
cmlkIj48L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDIiIGNsYXNzPSJ2Z3JpZCI+MTAwcHg8L2Rpdj4K
LQk8ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+MjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2
Z3JpZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDUiIGNsYXNz
PSJ2Z3JpZCI+NDAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDYiIGNsYXNzPSJ2Z3JpZCI+NTAw
cHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNzPSJ2Z3JpZCI+NjAwcHg8L2Rpdj4KLQk8
ZGl2IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAwcHg8L2Rpdj4KLQotCTxzY3JpcHQ+Ci0J
CWRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5hbWVkIGZs
b3cgd2l0aCBmbG9hdHMuIikKLQotCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0UGFyZW50Iiwg
ImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldExlZnQiLCAiMjAw
Iik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRUb3AiLCAiMzAwIik7Ci0KLQkJc2hvdWxk
QmUoImRpdlRleHQyLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0JCXNob3VsZEJl
KCJkaXZUZXh0Mi5vZmZzZXRMZWZ0IiwgIjMwMCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zm
c2V0VG9wIiwgIjUwMCIpOwotCi0JCWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotCQkJdmFyIGFs
bEdyYXBoaWNFbGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24sIC5k
aXZUZXh0LCAuZ3JpZCwgLnZncmlkLCAubXlTcGFuIik7Ci0JCQlmb3IgKHZhciBpPTA7IGk8YWxs
R3JhcGhpY0VsZW1lbnRzLmxlbmd0aDsgaSsrKQotCQkJCWFsbEdyYXBoaWNFbGVtZW50c1tpXS5z
dHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotCQl9Ci0JCQotCTwvc2NyaXB0PgotCTxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4tZWxl
bWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1v
ZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4tZWxlbWVudC1leHBlY3RlZC50eHQKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE0ZTExZDMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMtcmVnaW9uLWluLWVsZW1l
bnQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotVGVzdCBvZmZz
ZXRMZWZ0IGFuZCBvZmZzZXRUb3AgZm9yIGJsb2NrcyBhbmQgaW5saW5lcyBpbiBhIG5hbWVkIGZs
b3cgd2hlbiB0aGUgcmVnaW9uJ3Mgb2Zmc2V0UGFyZW50IGlzIE5PVCB0aGUgYm9keS4KLVRoaXMg
dGVzdCBhbHNvIGNvdmVycyBib3JkZXJzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LVBBU1MgZGl2VGV4dC5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQotUEFTUyBkaXZUZXh0
Lm9mZnNldExlZnQgaXMgMzAwCi1QQVNTIGRpdlRleHQub2Zmc2V0VG9wIGlzIDM1MAotUEFTUyBy
ZWdpb25QYXJlbnQub2Zmc2V0TGVmdCBpcyAyMDAKLVBBU1MgcmVnaW9uLm9mZnNldFBhcmVudCBp
cyByZWdpb25QYXJlbnQKLVBBU1MgcmVnaW9uLm9mZnNldExlZnQgaXMgMzAKLVBBU1MgcmVnaW9u
Lm9mZnNldFRvcCBpcyAyMAotUEFTUyBpbmxpbmVFbGVtZW50Lm9mZnNldFBhcmVudCBpcyBkb2N1
bWVudC5ib2R5Ci1QQVNTIGlubGluZUVsZW1lbnQub2Zmc2V0TGVmdCBpcyAzMDAKLVBBU1MgaW5s
aW5lRWxlbWVudC5vZmZzZXRUb3AgaXMgNTUwCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMtcmVnaW9uLWluLWVsZW1lbnQuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbmxpbmVzLXJl
Z2lvbi1pbi1lbGVtZW50Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDViMDlm
MmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zm
c2V0VG9wLWlubGluZXMtcmVnaW9uLWluLWVsZW1lbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDE4NiArMCwwIEBACi08aHRtbD4KLTxoZWFkPgotCTxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0J
CS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2NyaXB0aW9uIGRvbid0IGludGVy
ZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCi0JCSNkZXNjcmlwdGlvbiB7Ci0J
CQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQl0b3A6IDBweDsKLQkJfQotCi0JCWJvZHkgewotCQkJ
Ym9yZGVyOiAxMHB4IGRvdHRlZCBncmF5OwotCQkJcGFkZGluZzogMTBweDsKLQkJfQotCi0JCSNj
b25zb2xlIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCXRvcDogMTEwcHg7Ci0JCX0KLQot
CQkjcmVnaW9uUGFyZW50IHsKLQkJCWJvcmRlcjogMXB4IHNvbGlkIGJsdWU7Ci0JCQlib3JkZXIt
bGVmdDogMTBweCBkb3R0ZWQgYmx1ZTsKLQkJCWJvcmRlci10b3A6IDEwcHggZG90dGVkIGJsdWU7
Ci0JCQl3aWR0aDogNjAwcHg7Ci0JCQloZWlnaHQ6IDM3MHB4OwotCQkJcG9zaXRpb246IHJlbGF0
aXZlOwotCQkJbGVmdDogMTQ3cHg7Ci0JCQl0b3A6IDI2MHB4OwotCQkJbWFyZ2luLWxlZnQ6IDI1
cHg7Ci0JCX0KLQotCQkucmVnaW9uMSB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7Ci0J
CQlib3JkZXI6IDEwcHggZG90dGVkIHJlZDsKLQkJCW1hcmdpbjogMjBweDsKLQkJCW1hcmdpbi1s
ZWZ0OiAzMHB4OwotCQkJd2lkdGg6IDQwNHB4OwotCQkJaGVpZ2h0OiAzMjBweDsKLQkJfQotCi0J
CSNkaXZNYWluIHsKLQkJCW1hcmdpbjogNXB4OwotCQkJYm9yZGVyOiA1cHggc29saWQgYmx1ZTsK
LQkJCWhlaWdodDogMzA1cHg7Ci0JCQktd2Via2l0LWZsb3ctaW50bzogZmxvdzE7Ci0JCX0KLQot
CQkjZGl2VGV4dCB7Ci0JCQlib3JkZXI6IDFweCBzb2xpZCBncmVlbjsKLQkJCWNvbG9yOiBncmVl
bjsKLQkJCWZvbnQtc2l6ZTogMTRweDsKLQkJCXdpZHRoOiAzMDBweDsKLQkJCWhlaWdodDogMTgw
cHg7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0JCQlsZWZ0OiA0MHB4OwotCQkJdG9wOiAxMnB4
OwotCQl9Ci0KLQkJLmdyaWQgewotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJdG9wOiA2ODBw
eDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAwcHg7Ci0JCQlib3JkZXItcmlnaHQ6
IDFweCBzb2xpZCBibHVlOwotCQkJdGV4dC1hbGlnbjogcmlnaHQ7Ci0JCQlmb250LXNpemU6IDE0
cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQotCi0JCS52Z3JpZCB7Ci0JCQlwb3NpdGlvbjogYWJz
b2x1dGU7Ci0JCQlsZWZ0OiA5MDBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAw
cHg7Ci0JCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IGJv
dHRvbTsKLQkJCWZvbnQtc2l6ZTogMTRweDsKLQkJCWNvbG9yOiBibHVlOwotCQl9Ci0KLQkJI2dy
aWQxIHsKLQkJCWxlZnQ6IDBweDsKLQkJfQotCQkjZ3JpZDIgewotCQkJbGVmdDogMTAwcHg7Ci0J
CX0KLQkJI2dyaWQzIHsKLQkJCWxlZnQ6IDIwMHB4OwotCQl9Ci0JCSNncmlkNCB7Ci0JCQlsZWZ0
OiAzMDBweDsKLQkJfQotCQkjZ3JpZDUgewotCQkJbGVmdDogNDAwcHg7Ci0JCX0KLQkJI2dyaWQ2
IHsKLQkJCWxlZnQ6IDUwMHB4OwotCQl9Ci0JCSNncmlkNyB7Ci0JCQlsZWZ0OiA2MDBweDsKLQkJ
fQotCi0JCSN2Z3JpZDEgewotCQkJdG9wOiAwcHg7Ci0JCX0KLQkJI3ZncmlkMiB7Ci0JCQl0b3A6
IDEwMHB4OwotCQl9Ci0JCSN2Z3JpZDMgewotCQkJdG9wOiAyMDBweDsKLQkJfQotCQkjdmdyaWQ0
IHsKLQkJCXRvcDogMzAwcHg7Ci0JCX0KLQkJI3ZncmlkNSB7Ci0JCQl0b3A6IDQwMHB4OwotCQl9
Ci0JCSN2Z3JpZDYgewotCQkJdG9wOiA1MDBweDsKLQkJfQotCQkjdmdyaWQ3IHsKLQkJCXRvcDog
NjAwcHg7Ci0JCX0KLQkJI3ZncmlkOCB7Ci0JCQl0b3A6IDcwMHB4OwotCQkJYm9yZGVyOiBub25l
OwotCQl9Ci0JPC9zdHlsZT4KLQotCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBpZD0iYm9keSI+Ci0JPGRpdiBp
ZD0iZGl2TWFpbiI+Ci0JCTxkaXYgaWQ9ImRpdlRleHQiPjxiPmRpdlRleHQ8L2I+PGJyLz48L2Rp
dj4KLQkJPHNwYW4gY2xhc3M9ImlubGluZUVsZW1lbnRzIiBpZD0iaW5saW5lRWxlbWVudCIgc3R5
bGU9ImNvbG9yOiAjMDAwMDk5OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRvcDogMzBweDsgbGVmdDog
NDBweDsiPklubGluZSBlbGVtZW50IGluIGRpdk1haW48L3NwYW4+Ci0JPC9kaXY+Ci0KLQk8ZGl2
IGlkPSJyZWdpb25QYXJlbnQiPjxzcGFuIHN0eWxlPSJmbG9hdDogcmlnaHQ7IG1hcmdpbjogMTBw
eDsgY29sb3I6IGJsdWU7Ij5UaGlzIGlzIHJlZ2lvblBhcmVudDwvc3Bhbj4KLQkJPGRpdiBjbGFz
cz0icmVnaW9uMSIgaWQ9InJlZ2lvbiI+PC9kaXY+Ci0JPC9kaXY+Ci0KLQk8ZGl2IGlkPSJncmlk
MSIgY2xhc3M9ImdyaWQiPjEwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDIiIGNsYXNzPSJncmlk
Ij4yMDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQzIiBjbGFzcz0iZ3JpZCI+MzAwcHg8L2Rpdj4K
LQk8ZGl2IGlkPSJncmlkNCIgY2xhc3M9ImdyaWQiPjQwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3Jp
ZDUiIGNsYXNzPSJncmlkIj41MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ2IiBjbGFzcz0iZ3Jp
ZCI+NjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNyIgY2xhc3M9ImdyaWQiPjcwMHB4PC9kaXY+
Ci0KLQk8ZGl2IGlkPSJ2Z3JpZDEiIGNsYXNzPSJ2Z3JpZCI+PC9kaXY+Ci0JPGRpdiBpZD0idmdy
aWQyIiBjbGFzcz0idmdyaWQiPjEwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQzIiBjbGFzcz0i
dmdyaWQiPjIwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ0IiBjbGFzcz0idmdyaWQiPjMwMHB4
PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ1IiBjbGFzcz0idmdyaWQiPjQwMHB4PC9kaXY+Ci0JPGRp
diBpZD0idmdyaWQ2IiBjbGFzcz0idmdyaWQiPjUwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ3
IiBjbGFzcz0idmdyaWQiPjYwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ4IiBjbGFzcz0idmdy
aWQiPjcwMHB4PC9kaXY+Ci0KLQk8c2NyaXB0PgotCQlkZXNjcmlwdGlvbigiVGVzdCBvZmZzZXRM
ZWZ0IGFuZCBvZmZzZXRUb3AgZm9yIGJsb2NrcyBhbmQgaW5saW5lcyBpbiBhIG5hbWVkIGZsb3cg
d2hlbiB0aGUgcmVnaW9uJ3Mgb2Zmc2V0UGFyZW50IGlzIE5PVCB0aGUgYm9keS48YnIvPlRoaXMg
dGVzdCBhbHNvIGNvdmVycyBib3JkZXJzLiIpCi0KLQkJc2hvdWxkQmUoImRpdlRleHQub2Zmc2V0
UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQub2Zmc2V0TGVm
dCIsICIzMDAiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQub2Zmc2V0VG9wIiwgIjM1MCIpOwotCi0J
CXNob3VsZEJlKCJyZWdpb25QYXJlbnQub2Zmc2V0TGVmdCIsICIyMDAiKTsKLQotCQlzaG91bGRC
ZSgicmVnaW9uLm9mZnNldFBhcmVudCIsICJyZWdpb25QYXJlbnQiKTsKLQkJc2hvdWxkQmUoInJl
Z2lvbi5vZmZzZXRMZWZ0IiwgIjMwIik7Ci0JCXNob3VsZEJlKCJyZWdpb24ub2Zmc2V0VG9wIiwg
IjIwIik7Ci0KLQkJc2hvdWxkQmUoImlubGluZUVsZW1lbnQub2Zmc2V0UGFyZW50IiwgImRvY3Vt
ZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUoImlubGluZUVsZW1lbnQub2Zmc2V0TGVmdCIsICIzMDAi
KTsKLQkJc2hvdWxkQmUoImlubGluZUVsZW1lbnQub2Zmc2V0VG9wIiwgIjU1MCIpOwotCi0JCWlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewotCQkJdmFyIGFsbEdyYXBoaWNFbGVtZW50cyA9IGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24xLCAjZGl2TWFpbiwgI2RpdlRleHQsIC5ncmlk
LCAudmdyaWQsICNyZWdpb25QYXJlbnQsIC5pbmxpbmVFbGVtZW50cywgI3JlZ2lvbkluZm8iKTsK
LQkJCWZvciAodmFyIGk9MDsgaTxhbGxHcmFwaGljRWxlbWVudHMubGVuZ3RoOyBpKyspCi0JCQkJ
YWxsR3JhcGhpY0VsZW1lbnRzW2ldLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci0JCX0KLQkJCi0J
PC9zY3JpcHQ+Ci0JPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9keS1p
bi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zm
c2V0UGFyZW50LWJvZHktaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhMWZmM2FlLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1UZXN0IG9mZnNldFBhcmVudCBmb3IgYm9keSBp
biBhIG5hbWVkIGZsb3cuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGFy
dGljbGUub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKLVBBU1MgY2hhcHRlci5vZmZzZXRQ
YXJlbnQgaXMgZG9jdW1lbnQuYm9keQotUEFTUyBjaGFwdGVyLm9mZnNldFBhcmVudCBpcyBhcnRp
Y2xlCi1QQVNTIHRkQ2hpbGQub2Zmc2V0UGFyZW50IGlzIHRkCi1QQVNTIHRkQ2hpbGQub2Zmc2V0
UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKLVBBU1MgZG9jdW1lbnQuYm9keS5vZmZzZXRQYXJlbnQg
aXMgbnVsbAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9k
eS1pbi1mbG93LXRocmVhZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldFBh
cmVudC1ib2R5LWluLWZsb3ctdGhyZWFkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGJkMWFkM2IuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNl
dFBhcmVudC1ib2R5LWluLWZsb3ctdGhyZWFkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCAr
MCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICA8
L2hlYWQ+Ci0KLSAgICA8c3R5bGU+Ci0KLSAgICAgICAgI3JlZ2lvbiB7Ci0gICAgICAgICAgICAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzsKLSAgICAgICAgfQotCi0gICAgPC9zdHlsZT4KLQotICAg
IDxib2R5PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3Qg
b2Zmc2V0UGFyZW50IGZvciBib2R5IGluIGEgbmFtZWQgZmxvdy4iKQotCi0gICAgICAgICAgICBk
b2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotICAgICAgICAgICAg
Ci0gICAgICAgICAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIp
OwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhcnRpY2xlKTsKLSAgICAg
ICAgICAgIHNob3VsZEJlKCJhcnRpY2xlLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7
Ci0KLSAgICAgICAgICAgIHZhciBjaGFwdGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2
Iik7Ci0gICAgICAgICAgICBhcnRpY2xlLmFwcGVuZENoaWxkKGNoYXB0ZXIpOwotICAgICAgICAg
ICAgc2hvdWxkQmUoImNoYXB0ZXIub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQot
ICAgICAgICAgICAgYXJ0aWNsZS5zdHlsZS5wb3NpdGlvbiA9ICJyZWxhdGl2ZSI7Ci0gICAgICAg
ICAgICBzaG91bGRCZSgiY2hhcHRlci5vZmZzZXRQYXJlbnQiLCAiYXJ0aWNsZSIpOwotCi0gICAg
ICAgICAgICB2YXIgdGFibGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpOwotICAg
ICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0YWJsZSk7Ci0KLSAgICAgICAgICAg
IHZhciB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7Ci0gICAgICAgICAgICB0YWJs
ZS5hcHBlbmRDaGlsZCh0ZCk7Ci0KLSAgICAgICAgICAgIHZhciB0ZENoaWxkID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgICAgICB0ZC5hcHBlbmRDaGlsZCh0ZENoaWxk
KTsKLSAgICAgICAgICAgIHNob3VsZEJlKCJ0ZENoaWxkLm9mZnNldFBhcmVudCIsICJ0ZCIpOwot
Ci0gICAgICAgICAgICB0ZENoaWxkLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotICAg
ICAgICAgICAgc2hvdWxkQmUoInRkQ2hpbGQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHki
KTsKLQotICAgICAgICAgICAgc2hvdWxkQmVOdWxsKCJkb2N1bWVudC5ib2R5Lm9mZnNldFBhcmVu
dCIpOwotCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdEZsb3dJbnRvID0g
bnVsbDsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLQotICAgICAgICA8ZGl2IGlkPSJyZWdp
b24iLz4KLSAgICA8L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC1leHBlY3Rl
ZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZmMzlkMGEuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1UZXN0IG9mZnNldFBh
cmVudCBmb3IgZWxlbWVudHMgaW5zaWRlIGEgbmFtZWQgZmxvdy4KLQotT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgotCi0KLVBBU1MgYXJ0aWNsZS5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9k
eQotUEFTUyBjaGFwdGVyLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5Ci1QQVNTIGNoYXB0
ZXIub2Zmc2V0UGFyZW50IGlzIGFydGljbGUKLVBBU1MgdGRDaGlsZC5vZmZzZXRQYXJlbnQgaXMg
dGQKLVBBU1MgdGRDaGlsZC5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQotUEFTUyBkb2N1
bWVudC5ib2R5Lm9mZnNldFBhcmVudCBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBhZjdhM2YyLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDQwICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAg
ICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAg
IGRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldFBhcmVudCBmb3IgZWxlbWVudHMgaW5zaWRlIGEgbmFt
ZWQgZmxvdy4iKQotCi0gICAgICAgICAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhcnRp
Y2xlKTsKLSAgICAgICAgICAgIGFydGljbGUuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdyI7
Ci0gICAgICAgICAgICBzaG91bGRCZSgiYXJ0aWNsZS5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQu
Ym9keSIpOwotCi0gICAgICAgICAgICB2YXIgY2hhcHRlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpOwotICAgICAgICAgICAgYXJ0aWNsZS5hcHBlbmRDaGlsZChjaGFwdGVyKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlKCJjaGFwdGVyLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5
Iik7Ci0KLSAgICAgICAgICAgIGFydGljbGUuc3R5bGUucG9zaXRpb24gPSAicmVsYXRpdmUiOwot
ICAgICAgICAgICAgc2hvdWxkQmUoImNoYXB0ZXIub2Zmc2V0UGFyZW50IiwgImFydGljbGUiKTsK
LQotICAgICAgICAgICAgdmFyIHRhYmxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGFibGUi
KTsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGFibGUpOwotCi0gICAg
ICAgICAgICB2YXIgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZCIpOwotICAgICAgICAg
ICAgdGFibGUuYXBwZW5kQ2hpbGQodGQpOwotCi0gICAgICAgICAgICB2YXIgdGRDaGlsZCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgdGQuYXBwZW5kQ2hpbGQo
dGRDaGlsZCk7Ci0gICAgICAgICAgICBzaG91bGRCZSgidGRDaGlsZC5vZmZzZXRQYXJlbnQiLCAi
dGQiKTsKLQotICAgICAgICAgICAgdGRDaGlsZC5zdHlsZS53ZWJraXRGbG93SW50byA9ICJmbG93
IjsKLSAgICAgICAgICAgIHNob3VsZEJlKCJ0ZENoaWxkLm9mZnNldFBhcmVudCIsICJkb2N1bWVu
dC5ib2R5Iik7Ci0KLSAgICAgICAgICAgIHNob3VsZEJlTnVsbCgiZG9jdW1lbnQuYm9keS5vZmZz
ZXRQYXJlbnQiKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0
bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFr
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLWV4
cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGI4Mjg3ZC4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLWNvbnRlbnQgd2l0aCBicmVhay1hZnRl
cjogYWx3YXlzOwotCi1maXQgdnMgZml0Ci1lbXB0eSB2cyBlbXB0eQotZW1wdHkgdnMgZW1wdHkK
LVBBU1MKLUJ1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJzZXQgcHJvcGVydHkg
aXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdpb24gYnJlYWsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLW5lc3RlZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay1uZXN0
ZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0YjgyODdkLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLW5lc3Rl
ZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLWNvbnRlbnQgd2l0
aCBicmVhay1hZnRlcjogYWx3YXlzOwotCi1maXQgdnMgZml0Ci1lbXB0eSB2cyBlbXB0eQotZW1w
dHkgdnMgZW1wdHkKLVBBU1MKLUJ1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJz
ZXQgcHJvcGVydHkgaXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdp
b24gYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJy
ZWFrLW5lc3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWst
bmVzdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk5Y2IyNDUuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstbmVzdGVkLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi0KLTxodG1sPgotICAgIDxoZWFkPgot
ICAgICAgICA8dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBw
cm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBi
cmVhazwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICAg
ICAuY29udGVudCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Ci0g
ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsKLSAgICAgICAgICAgIH0KLQot
ICAgICAgICAgICAgLmNvbnRlbnQgcDpmaXJzdC1jaGlsZCB7Ci0gICAgICAgICAgICAgICAgLXdl
YmtpdC1yZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKLSAgICAgICAgICAgICAgICBtYXJnaW4t
Ym90dG9tOiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVhayovCi0g
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5jb250YWluZXIgewotICAgICAgICAgICAgICAg
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OwotICAgICAgICAgICAgICAgIHdpZHRoOjI1MHB4Owot
ICAgICAgICAgICAgICAgIGhlaWdodDoxMjBweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFw
eCBzb2xpZCAjNDQ0OwotICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKLSAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlzcGxheTog
bm9uZTsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLQotICAgIDxib2R5PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij48ZGl2PjxkaXY+PHA+Y29udGVudCB3aXRoIGJyZWFr
LWFmdGVyOiBhbHdheXM7PC9wPjwvZGl2PjwvZGl2PjwvZGl2PgotCi0gICAgICAgIDxkaXYgY2xh
c3M9ImNvbnRhaW5lciIgaWQ9InIxIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4cGxhbmF0
aW9uIGdvZXMgaGVyZTwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJy
MiI+PC9kaXY+IDxkaXYgaWQ9Im92ZXJzZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4K
LSAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2IGlkPSJv
dmVyc2V0MyI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+Ci0KLSAgICAgICAgPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICAgICAgaWYod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB2
YXIgcjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25PdmVyc2V0
OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIikuaW5uZXJI
VE1MID0gcjEgKyAiIHZzIGZpdCI7Ci0gICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicjIiKS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZzIGVtcHR5
IjsKLSAgICAgICAgICAgIHZhciByMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMyIpLndl
YmtpdFJlZ2lvbk92ZXJzZXQ7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
b3ZlcnNldDMiKS5pbm5lckhUTUwgPSByMyArICIgdnMgZW1wdHkiOwotICAgICAgICAgICAgZG9j
dW1lbnQuYm9keS5jbGFzc05hbWUgPSAocjEgPT0gImZpdCIgJiYgcjIgPT0gImVtcHR5IiAmJiBy
MyA9PSAiZW1wdHkiKSA/ICJwYXNzIiA6ICJmYWlsIjsKLSAgICAgICAgPC9zY3JpcHQ+Ci0KLSAg
ICAgICAgPGRpdiBpZD0icGFzcyI+UEFTUzwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJmYWlsIj5G
QUlMPC9kaXY+Ci0KLSAgICAgICAgPHA+PGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTkyNDk3Ij5CdWcgOTI0OTc8L2E+IC0gW0NTUyBSZWdpb25zXSBSZWdp
b24gb3ZlcnNldCBwcm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBp
cyBhIHJlZ2lvbiBicmVhazwvcD4KLQotICAgIDwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3Zl
cnNldC1icmVhay13aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1zaWJsaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYTU4ZjBlMy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0CisrKyAv
ZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1jb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5
czsKLQotMm5kIHAKLQotZml0IHZzIGZpdAotZml0IHZzIGZpdAotZW1wdHkgdnMgZW1wdHkKLVBB
U1MKLUJ1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJzZXQgcHJvcGVydHkgaXMg
bm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdpb24gYnJlYWsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGlu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1zaWJs
aW5nLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc3MzBmZTAuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1zaWJsaW5n
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxo
dG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25z
XSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0
aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0
L2NzcyI+Ci0gICAgICAgICAgICAuY29udGVudCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1m
bG93LWludG86IGZsb3c7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmNvbnRlbnQgcCB7Ci0gICAgICAgICAgICAg
ICAgLXdlYmtpdC1yZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKLSAgICAgICAgICAgICAgICBt
YXJnaW4tYm90dG9tOiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVh
ayovCi0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5jb250YWluZXIgewotICAgICAgICAg
ICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OwotICAgICAgICAgICAgICAgIHdpZHRoOjI1
MHB4OwotICAgICAgICAgICAgICAgIGhlaWdodDoxMjBweDsKLSAgICAgICAgICAgICAgICBib3Jk
ZXI6IDFweCBzb2xpZCAjNDQ0OwotICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKLSAg
ICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlz
cGxheTogbm9uZTsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4K
LSAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+PHA+Y29udGVudCB3aXRoIGJyZWFrLWFmdGVy
OiBhbHdheXM7PC9wPjxwPjJuZCBwPC9wPjwvZGl2PgotCi0gICAgICAgIDxkaXYgY2xhc3M9ImNv
bnRhaW5lciIgaWQ9InIxIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4cGxhbmF0aW9uIGdv
ZXMgaGVyZTwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMiI+PC9k
aXY+IDxkaXYgaWQ9Im92ZXJzZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0
MyI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+Ci0KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICAgICAgaWYod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB2YXIgcjEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIikuaW5uZXJIVE1MID0g
cjEgKyAiIHZzIGZpdCI7Ci0gICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicjIiKS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIm92ZXJzZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZzIGZpdCI7Ci0gICAg
ICAgICAgICB2YXIgcjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjMiKS53ZWJraXRSZWdp
b25PdmVyc2V0OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQz
IikuaW5uZXJIVE1MID0gcjMgKyAiIHZzIGVtcHR5IjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuY2xhc3NOYW1lID0gKHIxID09ICJmaXQiICYmIHIyID09ICJmaXQiICYmIHIzID09ICJlbXB0
eSIpID8gInBhc3MiIDogImZhaWwiOwotICAgICAgICA8L3NjcmlwdD4KLQotICAgICAgICA8ZGl2
IGlkPSJwYXNzIj5QQVNTPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImZhaWwiPkZBSUw8L2Rpdj4K
LQotICAgICAgICA8cD48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9OTI0OTciPkJ1ZyA5MjQ5NzwvYT4gLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0
IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJseSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9u
IGJyZWFrPC9wPgotCi0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFr
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMDQ2NTFkLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1
MyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8
dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0eSBp
cyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwvdGl0
bGU+Ci0gICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICAgICAuY29udGVu
dCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Ci0gICAgICAgICAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAg
ICAgLmNvbnRlbnQgcDpmaXJzdC1jaGlsZCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1yZWdp
b24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKLSAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0
ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVhayovCi0gICAgICAgICAg
ICB9Ci0KLSAgICAgICAgICAgIC5jb250YWluZXIgewotICAgICAgICAgICAgICAgIC13ZWJraXQt
Zmxvdy1mcm9tOiBmbG93OwotICAgICAgICAgICAgICAgIHdpZHRoOjI1MHB4OwotICAgICAgICAg
ICAgICAgIGhlaWdodDoxMjBweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAj
NDQ0OwotICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKLSAgICAgICAgICAgIH0KLQot
ICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlzcGxheTogbm9uZTsgfQot
ICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLQotICAgIDxib2R5PgotICAgICAgICA8ZGl2
IGNsYXNzPSJjb250ZW50Ij48cD5jb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czs8L3A+
PC9kaXY+Ci0KLSAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjEiPjwvZGl2PiA8
ZGl2IGlkPSJvdmVyc2V0MSI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+Ci0gICAgICAgIDxk
aXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9InIyIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDIiPmV4
cGxhbmF0aW9uIGdvZXMgaGVyZTwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIi
IGlkPSJyMyI+PC9kaXY+IDxkaXYgaWQ9Im92ZXJzZXQzIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8
L2Rpdj4KLQotICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci0gICAgICAg
ICAgICBpZih3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKLSAgICAgICAgICAgIHZhciByMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyMSIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgib3ZlcnNldDEiKS5pbm5lckhUTUwgPSByMSArICIgdnMgZml0IjsKLSAgICAgICAg
ICAgIHZhciByMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMiIpLndlYmtpdFJlZ2lvbk92
ZXJzZXQ7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDIiKS5p
bm5lckhUTUwgPSByMiArICIgdnMgZW1wdHkiOwotICAgICAgICAgICAgdmFyIHIzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInIzIikud2Via2l0UmVnaW9uT3ZlcnNldDsKLSAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyc2V0MyIpLmlubmVySFRNTCA9IHIzICsgIiB2
cyBlbXB0eSI7Ci0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9IChyMSA9PSAi
Zml0IiAmJiByMiA9PSAiZW1wdHkiICYmIHIzID09ICJlbXB0eSIpID8gInBhc3MiIDogImZhaWwi
OwotICAgICAgICA8L3NjcmlwdD4KLQotICAgICAgICA8ZGl2IGlkPSJwYXNzIj5QQVNTPC9kaXY+
Ci0gICAgICAgIDxkaXYgaWQ9ImZhaWwiPkZBSUw8L2Rpdj4KLQotICAgICAgICA8cD48YSBocmVm
PSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTI0OTciPkJ1ZyA5MjQ5
NzwvYT4gLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9w
ZXJseSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrPC9wPgotCi0gICAgPC9i
b2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9yZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFzaC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcmVnaW9uLXJhbmdlLWZvci1ib3gtY3Jh
c2gtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZTY3MjE5Li4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9yZWdpb24tcmFuZ2UtZm9yLWJv
eC1jcmFzaC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw1ICswLDAgQEAKLUJ1ZyA3
NDc4MTogQ3Jhc2ggaW4gUmVuZGVyRmxvd1RocmVhZDo6Z2V0UmVnaW9uUmFuZ2VGb3JCb3gKLQot
VGhpcyB0ZXN0IFBBU1NFUyBpZiBpdCBkb2VzIG5vdCBDUkFTSCBvciBBU1NFUlQuCi0KLUEKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9yZWdpb24tcmFuZ2UtZm9yLWJveC1j
cmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3JlZ2lvbi1yYW5nZS1mb3ItYm94
LWNyYXNoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI2ZTQ0YmQuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3JlZ2lvbi1yYW5nZS1mb3ItYm94LWNy
YXNoLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4K
LTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjZWwwIHsK
LSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogYTsKLSAgICAgICAgICAgICAgICBj
b250ZW50OiBjb3VudGVyKGMpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgI2VsMiB7Ci0g
ICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGE7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIDwvc3R5bGU+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAg
ICAgICAgICAgIGZ1bmN0aW9uIGNyYXNoKCkgewotICAgICAgICAgICAgICAgIGVsMCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwotICAgICAgICAgICAgICAgIGVsMC5zZXRBdHRyaWJ1
dGUoJ2lkJywgJ2VsMCcpOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQoZWwwKTsKLSAgICAgICAgICAgICAgICBlbDEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdk
aXYnKTsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsMSk7Ci0g
ICAgICAgICAgICAgICAgZWwyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Ci0gICAg
ICAgICAgICAgICAgZWwyLnNldEF0dHJpYnV0ZSgnaWQnLCAnZWwyJyk7Ci0gICAgICAgICAgICAg
ICAgZWwxLmFwcGVuZENoaWxkKGVsMik7Ci0gICAgICAgICAgICAgICAgZWwyLmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCdBJykpOwotICAgICAgICAgICAgICAgIGVsMyA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7Ci0gICAgICAgICAgICAgICAgZWwzLnNldEF0
dHJpYnV0ZSgnaWQnLCAnZWwzJyk7Ci0gICAgICAgICAgICAgICAgZWwyLmFwcGVuZENoaWxkKGVs
Myk7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS56b29tPTI7Ci0gICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ3NlbGVjdGFsbCcpOwotICAgICAgICAgICAg
ICAgIGVsMi5zdHlsZS5kaXNwbGF5PSd0YWJsZS1oZWFkZXItZ3JvdXAnOwotICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmJvZHkuc3R5bGUuem9vbT0xOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgd2luZG93Lm9ubG9hZD1jcmFzaAotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0g
ICAgPGJvZHk+Ci0gICAgICAgIDxwPiBCdWcgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc0NzgxIj43NDc4MTwvYT46IENyYXNoIGluIFJlbmRlckZsb3dU
aHJlYWQ6OmdldFJlZ2lvblJhbmdlRm9yQm94PC9wPgotICAgICAgICA8cD4gVGhpcyB0ZXN0IFBB
U1NFUyBpZiBpdCBkb2VzIG5vdCBDUkFTSCBvciBBU1NFUlQuPC9wPgotICAgIDwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1jb2xsZWN0aW9uLWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLWV4cGVjdGVkLnR4dApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjNmMWE2My4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1jcmFzaC1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0ICswLDAgQEAKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2guaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9u
LWNyYXNoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmMTI2NzYuLjAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxl
Y3Rpb24tY3Jhc2guaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLTwhZG9jdHlw
ZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAg
ICNjb250ZW50IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgICNjb250
YWluZXIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEw
MHB4O30KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPGJvZHk+Ci0gICAg
ICAgIDxkaXYgaWQ9ImNvbnRlbnQiPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb250YWluZXIi
PjwvZGl2PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgdmFyIG5hbWVk
Rmxvd0NvbGxlY3Rpb24gPSBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCk7Ci0gICAgICAg
IGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRl
bnQiKSk7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNvbnRhaW5lciIpKTsKLSAgICAgICAgCi0gICAgICAgIC8vIEZvcmNlIGEgcmUt
bGF5b3V0IGV2ZW50LCB3aGljaCBmb3JjZXMgdGhlIGRlbGV0aW9uIG9mIHRoZSB1bmRlcmx5aW5n
IE5hbWVkRmxvdy4KLSAgICAgICAgZG9jdW1lbnQuYm9keS5vZmZzZXRUb3A7Ci0gICAgICAgIAot
ICAgICAgICB2YXIgbmFtZWRGbG93ID0gbmFtZWRGbG93Q29sbGVjdGlvbi5mbG93OwotICAgICAg
ICBpZiAobmFtZWRGbG93Lm5hbWUgPT0gImZsb3ciKQotICAgICAgICAgICAgZG9jdW1lbnQuYm9k
eS5pbm5lclRleHQgPSAiUEFTUyI7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIGRvY3VtZW50
LmJvZHkuaW5uZXJUZXh0ID0gIkZBSUwiOwotICAgICAgICA8L3NjcmlwdD4KLSAgICA8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+IAotICAgIDwv
Ym9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1lbXB0
eS1nZXR0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5LWdldHRlcnMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NzVhMTRiLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5LWdldHRlcnMt
ZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotVGVzdCBmb3IgWzEx
ODU2MV0gTmFtZWRGbG93Q29sbGVjdGlvbiBnZXR0ZXJzIHNob3VsZCBmb2xsb3cgdGhlIHNhbWUg
cGF0dGVybiBhcyBIVE1MQ29sbGVjdGlvbgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LQotUEFTUyBuYW1lZEZsb3dDb2xsZWN0aW9uWzBdIGlzIHVuZGVmaW5lZC4KLVBBU1MgbmFtZWRG
bG93Q29sbGVjdGlvblsnZmxvdyddIGlzIHVuZGVmaW5lZC4KLVBBU1MgbmFtZWRGbG93Q29sbGVj
dGlvbi5pdGVtKDApIGlzIG51bGwKLVBBU1MgbmFtZWRGbG93Q29sbGVjdGlvbi5uYW1lZEl0ZW0o
J2Zsb3cnKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZTZjMjIzLi4wMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5
LWdldHRlcnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0PgotICAgICAg
ICAgICAgZGVzY3JpcHRpb24oIlRlc3QgZm9yIDxhIGhyZWY9J2h0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg1NjEnPlsxMTg1NjFdIE5hbWVkRmxvd0NvbGxlY3Rpb24g
Z2V0dGVycyBzaG91bGQgZm9sbG93IHRoZSBzYW1lIHBhdHRlcm4gYXMgSFRNTENvbGxlY3Rpb248
L2E+Iik7Ci0KLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb2xsZWN0aW9uID0gZG9jdW1lbnQu
d2Via2l0R2V0TmFtZWRGbG93cygpOwotICAgICAgICAgICAgc2hvdWxkQmVVbmRlZmluZWQoIm5h
bWVkRmxvd0NvbGxlY3Rpb25bMF0iKTsKLSAgICAgICAgICAgIHNob3VsZEJlVW5kZWZpbmVkKCJu
YW1lZEZsb3dDb2xsZWN0aW9uWydmbG93J10iKTsKLSAgICAgICAgICAgIHNob3VsZEJlTnVsbCgi
bmFtZWRGbG93Q29sbGVjdGlvbi5pdGVtKDApIik7Ci0gICAgICAgICAgICBzaG91bGRCZU51bGwo
Im5hbWVkRmxvd0NvbGxlY3Rpb24ubmFtZWRJdGVtKCdmbG93JykiKTsKLSAgICAgICAgPC9zY3Jp
cHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4gCi0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93
ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggOWNlNDU2MC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSwyMCArMCwwIEBACi1UZXN0cyBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGlu
dGVyZmFjZQotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotVGVzdCBXZWJLaXROYW1l
ZEZsb3dDb2xsZWN0aW9uIGxlbmd0aCBwcm9wZXJ0eQotUEFTUyBkb2N1bWVudC53ZWJraXRHZXRO
YW1lZEZsb3dzKCkubGVuZ3RoIGlzIDAKLVBBU1MgcmVnaW9uMS5zdHlsZS53ZWJraXRGbG93RnJv
bSA9ICdmbG93MSc7IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGggaXMgMQot
UEFTUyByZWdpb24yLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cyJzsgZG9jdW1lbnQud2Vi
a2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lvbjEuc3R5bGUud2Via2l0
Rmxvd0Zyb20gPSAnJzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlZ2lvbjIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnJzsgZG9jdW1lbnQud2Via2l0
R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAwCi1UZXN0IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rp
b24gaW5kZXggZ2V0dGVyCi1QQVNTIChkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKClbMF0u
bmFtZSA9PSAnZmxvdzEnICYmIGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVsxXS5uYW1l
ID09ICdmbG93MicpICAgICAgICAgfHwgKGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVsw
XS5uYW1lID09ICdmbG93MicgJiYgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpWzFdLm5h
bWUgPT0gJ2Zsb3cxJykgaXMgdHJ1ZQotVGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIG5h
bWUgZ2V0dGVyCi1QQVNTIGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5mbG93MS5uYW1l
IGlzICJmbG93MSIKLVBBU1MgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmZsb3cyLm5h
bWUgaXMgImZsb3cyIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENP
TVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1jb2xsZWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctY29sbGVjdGlvbi5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA5MmMwMzk2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1jb2xsZWN0aW9uLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0NyArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGJvZHk+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+Ci0gICAgZGVzY3JpcHRp
b24oIlRlc3RzIFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gaW50ZXJmYWNlIikKLSAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0g
ICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICB2YXIg
cmVnaW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotCi0gICAgZGVidWcoIlRl
c3QgV2ViS2l0TmFtZWRGbG93Q29sbGVjdGlvbiBsZW5ndGggcHJvcGVydHkiKTsKLQotICAgIHNo
b3VsZEJlKCJkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIiwgIjAiKTsKLQot
ICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMSk7Ci0gICAgc2hvdWxkQmUoInJl
Z2lvbjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnZmxvdzEnOyBkb2N1bWVudC53ZWJraXRHZXRO
YW1lZEZsb3dzKCkubGVuZ3RoIiwgIjEiKTsKLQotICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hp
bGQocmVnaW9uMik7Ci0gICAgc2hvdWxkQmUoInJlZ2lvbjIuc3R5bGUud2Via2l0Rmxvd0Zyb20g
PSAnZmxvdzInOyBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIiwgIjIiKTsK
LQotICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocmVnaW9uMSk7Ci0gICAgc2hvdWxkQmUo
InJlZ2lvbjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnJzsgZG9jdW1lbnQud2Via2l0R2V0TmFt
ZWRGbG93cygpLmxlbmd0aCIsICIxIik7Ci0KLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxk
KHJlZ2lvbjIpOwotICAgIHNob3VsZEJlKCJyZWdpb24yLnN0eWxlLndlYmtpdEZsb3dGcm9tID0g
Jyc7IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGgiLCAiMCIpOwotCi0gICAg
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24xKTsKLSAgICBkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKHJlZ2lvbjIpOwotICAgIHJlZ2lvbjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAn
ZmxvdzEnOwotICAgIHJlZ2lvbjIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnZmxvdzInOwotCi0g
ICAgZGVidWcoIlRlc3QgV2ViS2l0TmFtZWRGbG93Q29sbGVjdGlvbiBpbmRleCBnZXR0ZXIiKTsK
LSAgICBzaG91bGRCZVRydWUoIihkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKClbMF0ubmFt
ZSA9PSAnZmxvdzEnICYmIGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVsxXS5uYW1lID09
ICdmbG93MicpIFwKLSAgICAgICAgfHwgKGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVsw
XS5uYW1lID09ICdmbG93MicgJiYgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpWzFdLm5h
bWUgPT0gJ2Zsb3cxJykiKTsKLQotICAgIGRlYnVnKCJUZXN0IFdlYktpdE5hbWVkRmxvd0NvbGxl
Y3Rpb24gbmFtZSBnZXR0ZXIiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50
LndlYmtpdEdldE5hbWVkRmxvd3MoKS5mbG93MS5uYW1lIiwgImZsb3cxIik7Ci0gICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkuZmxvdzIubmFt
ZSIsICJmbG93MiIpOwotCi0gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb24xKTsK
LSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbjIpOwotPC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWFkZC10by1mbG93LWV4cGVjdGVk
LnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGIwMWQzZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRv
LWZsb3ctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotVGVzdHMg
cmVnaW9uT3ZlcnNldENoYW5nZSBldmVudAotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LSBGbG93IGNvbnRlbnQKLVBBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCi1QQVNT
IGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUEFTUyBldmVudENvdW50IGlzIDIKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRk
LXRvLWZsb3cuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1hZGQtdG8tZmxvdy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3
MTA0MjY3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAs
MCBAQAotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwv
c2NyaXB0PgotPHN0eWxlPgotI2FydGljbGUgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRp
Y2xlOwotICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOwotfQotI3JlZ2lvbl8xIHsKLSAgICAt
d2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAg
ZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdp
bjoxMHB4OwotfQotLmJsb2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNy
ZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4OyBib3JkZXI6
IDFweCBzb2xpZCByZWQ7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVz
Y3JpcHRpb24iIGNsYXNzPSJibG9jayI+PC9kaXY+Ci08ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICA8
ZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLTwvZGl2PgotCi08ZGl2
IGlkPSJyZWdpb25fMSI+PC9kaXY+Ci08ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci0KLTxkaXYg
aWQ9ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0gICAgZGVzY3Jp
cHRpb24oIlRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQiKQotICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgewotICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7Ci0gICAgfQotICAgIHdpbmRvdy5qc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKLSAgICBmdW5jdGlvbiBmbG93Q29udGVudChyZWdpb24sIGZsb3dOYW1lKSB7
Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocmVnaW9uKTsKLSAgICAg
ICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgIH0KLQotICAgIHZhciBl
dmVudENvdW50ID0gMDsKLSAgICBmdW5jdGlvbiBmaW5pc2hUZXN0KCkgewotICAgICAgICBzaG91
bGRCZSgiZXZlbnRDb3VudCIsICIyIik7Ci0gICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgIH0K
LQotICAgIGZ1bmN0aW9uIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Ci0gICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOwotICAg
ICAgICAKLSAgICAgICAgaWYgKCsrZXZlbnRDb3VudCA+IDEpIHsKLSAgICAgICAgICAgIC8vIHRo
aXMgc2hvdWxkIGJlIHJlYWNoZWQgYWZ0ZXIgcmVnaW9uXzIgaXMgYWRkZWQgdG8gZmxvdwotICAg
ICAgICAgICAgZmluaXNoVGVzdCgpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0g
ICAgICAgIAotICAgICAgICBmbG93Q29udGVudCgicmVnaW9uXzIiLCAiYXJ0aWNsZSIpOyAvLyB0
aGlzIHdpbGwgdHJpZ2dlciBhIG5ldyByb3VuZCBvZiBldmVudHMgZHVlIHRvIGxheW91dAotICAg
IH0KLQotICAgIGZ1bmN0aW9uIHN0YXJ0VGVzdCgpIHsKLSAgICAgICAgdmFyIGZsb3cgPSBnZXRG
bG93QnlOYW1lKCJhcnRpY2xlIik7Ci0gICAgICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5lcigid2Vi
a2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKLSAgICAgICAg
Ci0gICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKLSAgICAgICAgZmxvd0NvbnRlbnQoInJl
Z2lvbl8xIiwgImFydGljbGUiKTsKLSAgICB9Ci0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIo
ImxvYWQiLCBzdGFydFRlc3QpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0
by1oZWlnaHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LWF1dG8taGVpZ2h0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggNTVmNzU5My4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0Cisr
KyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFu
Z2UgZXZlbnQgZm9yIHJlZ2lvbnMgd2l0aCBoZWlnaHQ6YXV0bwotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLQotRmxvd2luZyBjb250ZW50IGludG8gcmVnaW9ucy4uLgotUEFTUyBldmVu
dC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKLVBBU1MgZXZlbnRGaXJlZENvdW50IGlzIDEKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWF1
dG8taGVpZ2h0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtYXV0by1oZWlnaHQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MTc3M2YyMC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg5ICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0
Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxl
PgotICAgICNhcnRpY2xlIHsKLSAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0g
ICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKLSAgICB9Ci0gICAgI3JlZ2lvbl8xLCAj
cmVnaW9uXzIgewotICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKLSAgICAg
ICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKLSAgICAg
ICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgICAgICBtYXJnaW46MTBweDsKLSAgICAgICAgaGVp
Z2h0OmF1dG87Ci0gICAgICAgIHdpZHRoOjIwMHB4OwotICAgICAgICBib3JkZXI6IDFweCBzb2xp
ZCByZWQ7Ci0gICAgICAgIHBhZGRpbmc6IDVweDsKLSAgICB9Ci0gICAgLmNvbnRlbnQgewotICAg
ICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgYm9yZGVyOiAzcHggZGFzaGVk
IGJsdWU7Ci0gICAgfQotICAgICNwYXJ0MSB7Ci0gICAgICAgIGhlaWdodDogMTgwcHg7Ci0gICAg
fQotICAgICNwYXJ0MiB7Ci0gICAgICAgIC13ZWJraXQtcmVnaW9uLWJyZWFrLWJlZm9yZTogYWx3
YXlzOwotICAgICAgICBoZWlnaHQ6IDE2MHB4OwotICAgIH0KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08
Ym9keT4KLSAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICAgICAgPGRpdj4KLSAgICAgICAgICAg
IDxkaXYgaWQ9InBhcnQxIiBjbGFzcz0iY29udGVudCI+PC9kaXY+Ci0gICAgICAgICAgICA8ZGl2
IGlkPSJwYXJ0MiIgY2xhc3M9ImNvbnRlbnQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAgICA8
L2Rpdj4KLQotICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJyZWdp
b25fMiI+PC9kaXY+Ci0KLSAgICA8c2NyaXB0PgotCi0gICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0
cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBmb3IgcmVnaW9ucyB3aXRoIGhlaWdodDph
dXRvIik7Ci0KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGls
RG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
LSAgICAgICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAgICAgICAgICAgIHZh
ciByZWdpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICAgICAg
ICAgIHJlZ2lvbi5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICAgICAg
cmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgICAg
ICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAgfQotCi0g
ICAgICAgIHZhciBldmVudEZpcmVkQ291bnQgPSAwOwotICAgICAgICBmdW5jdGlvbiBmaW5pc2hU
ZXN0KCkgewotICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50RmlyZWRDb3VudCIsICIxIik7Ci0g
ICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9u
IHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Ci0gICAgICAgIAkrK2V2ZW50RmlyZWRDb3Vu
dDsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUi
LCAiYXJ0aWNsZSIpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICAvLyB3YWl0IGFuZCBtYWtl
IHN1cmUgbm8gb3RoZXIgZXZlbnRzIGFycml2ZQotICAgICAgICAgICAgc2V0VGltZW91dCgiZmlu
aXNoVGVzdCgpIiwgMjAwKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHN0YXJ0VGVz
dCgpIHsgICAgCi0gICAgICAgICAgICB2YXIgZmxvd1RocmVhZCA9IGdldEZsb3dCeU5hbWUoImFy
dGljbGUiKTsKLSAgICAgICAgICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0
cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKLSAgICAgICAgICAg
IAotICAgICAgICAgICAgZGVidWcoIkZsb3dpbmcgY29udGVudCBpbnRvIHJlZ2lvbnMuLi4iKTsK
LSAgICAgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7Ci0gICAgICAgIH0KLQotICAgICAg
ICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7Ci0gICAgPC9zY3Jp
cHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC1leHBlY3Rl
ZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0ZDk0OWEuLjAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNo
LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDkgKzAsMCBAQAotVGhlIHRlc3QgcGFz
c2VzIGlmIHRoZXJlIGlzIG5vIGNyYXNoIG9yIGFzc2VydC4KLQotT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgotCi0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVk
LWZsb3ctZXZlbnQtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1ldmVudC1jcmFzaC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAyY2E4ZGY3Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1ldmVudC1jcmFzaC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBA
QAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPG1ldGEgY2hh
cnNldD0idXRmLTgiPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICBib2R5LCBodG1s
IHsKLSAgICAgICAgICAgIHdpZHRoOiA1MDBweDsKLSAgICAgICAgICAgIGhlaWdodDogNTAwcHg7
Ci0gICAgICAgIH0KLSAgICAgICAgI2NvbnRlbnQgewotICAgICAgICAgICAgd2lkdGg6IDEwMCU7
Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7Ci0gICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50
bzogZmxvdzsKLSAgICAgICAgfQotICAgICAgICAjcmVnaW9uIHsKLSAgICAgICAgICAgIHdpZHRo
OiAxMDAlOwotICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOwotICAgICAgICAgICAgLXdlYmtpdC1m
bG93LWZyb206IGZsb3c7Ci0gICAgICAgIH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+
Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiPgotICAgICAgICAgICAgSGVs
bG8gY3Jhc2ghCi0gICAgICAgIDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb24iPgotICAg
ICAgICA8L2Rpdj4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgZGVzY3JpcHRpb24oIlRoZSB0
ZXN0IHBhc3NlcyBpZiB0aGVyZSBpcyBubyBjcmFzaCBvciBhc3NlcnQuIik7Ci0gICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGZ1bmN0aW9uIGR1bW15SGFuZGxlciAoZXZ0KSB7Ci0gICAgICAgICAgICBldnQu
dGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBk
dW1teUhhbmRsZXIpOwotICAgICAgICAgICAgZGVidWcoIlRoaXMgbGluZSBzaG91bGQgbm90IGFw
cGVhciEiKTsKLSAgICAgICAgfQotCi0gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7Ci0g
ICAgICAgICAgICB2YXIgbmFtZWRGbG93cyA9IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3Mo
KTsKLSAgICAgICAgICAgIG5hbWVkRmxvd3NbImZsb3ciXS5hZGRFdmVudExpc3RlbmVyKCJ3ZWJr
aXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgZHVtbXlIYW5kbGVyKTsKLSAgICAgICAgICAgIHZhciBj
b250ZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQiKTsKLSAgICAgICAgICAg
IHZhciByZWdpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIik7Ci0gICAgICAg
ICAgICBjb250ZW50LnN0eWxlLmhlaWdodCA9ICI2MDBweCI7Ci0KLSAgICAgICAgICAgIC8vIFNj
aGVkdWxlIGEgcmVnaW9ub3ZlcnNldGNoYW5nZSBldmVudC4KLSAgICAgICAgICAgIGRvY3VtZW50
LmJvZHkub2Zmc2V0VG9wOwotCi0gICAgICAgICAgICAvLyBUcmFuc2l0aW9uIHRoZSBmbG93IHRv
IHRoZSAiTlVMTCIgc3RhdGUuCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxk
KGNvbnRlbnQpOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb24p
OwotCi0gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9LDApCi0gICAgICAgIH0sIDApOwotICAgICAgICA8
L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3Yzc5MzM5Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCwwIEBACi1UZXN0cyByZWdpb25PdmVy
c2V0Q2hhbmdlIGV2ZW50Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotIAotRmxvdyBj
b250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1l
dmVudC1uby1yZWdpb25zLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggODIwYmQ5NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9ucy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSwxNSArMCwwIEBACi1UZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGJlaW5nIGRpc3BhdGNo
ZWQgd2hlbiB0aGUgcmVnaW9uIGNoYWluIGlzIHJlbW92ZWQKLQotT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgotCi0KLUZsb3cgY29udGVudAotUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0
aWNsZSIKLVJlbW92aW5nIHJlZ2lvbiAxCi1SZW1vdmluZyByZWdpb24gMgotUEFTUyBldmVudC50
YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKLVBBU1MgZXZlbnRDb3VudCBpcyAyCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1u
by1yZWdpb25zLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRiMWIwMmMuLjAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50LW5vLXJlZ2lvbnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg2ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotI2FydGljbGUg
ewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJvcmRlcjogMnB4IHNvbGlk
IGJsYWNrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdlYmtpdC1mbG93LWZyb206
IG5vX2FydGljbGU7Ci0gICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgIGRpc3BsYXk6aW5saW5lLWJs
b2NrOwotICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsKLX0KLS5ibG9j
ayB7Ci0gICBkaXNwbGF5OmJsb2NrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzIgeyBoZWlnaHQ6
MTEwcHg7IHdpZHRoOjIwMHB4OyBtYXJnaW46IDVweDt9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJv
ZHk+Ci08ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICA8ZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb250
ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rp
dj4KLSAgICA8L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Ci08ZGl2
IGlkPSJjb250YWluZXIyIj4KLSAgICA8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci08L2Rpdj4K
LQotPHNjcmlwdD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBi
ZWluZyBkaXNwYXRjaGVkIHdoZW4gdGhlIHJlZ2lvbiBjaGFpbiBpcyByZW1vdmVkIik7Ci0gICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwotICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICB9Ci0KLSAgICB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05h
bWUpIHsKLSAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEi
KTsKLSAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICBy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIuc3R5bGUu
d2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiBmaW5pc2hU
ZXN0KCkgewotICAgICAgICBzaG91bGRCZSgiZXZlbnRDb3VudCIsICIyIik7Ci0gICAgICAgIGZp
bmlzaEpTVGVzdCgpOwotICAgIH0KLQotICAgIHZhciBldmVudENvdW50ID0gMDsKLSAgICBmdW5j
dGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChldmVudCkgewotICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKLSAgICAgICAgaWYgKCsr
ZXZlbnRDb3VudCA+IDEpIHsKLSAgICAgICAgICAgZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlz
dGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7
Ci0gICAgICAgICAgIGZpbmlzaFRlc3QoKTsKLSAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9
Ci0KLSAgICAgICAgZGVidWcoIlJlbW92aW5nIHJlZ2lvbiAxIik7Ci0gICAgICAgIHZhciByID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgICAgIHIuc3R5bGUud2Vi
a2l0Rmxvd0Zyb20gPSAibm8tYXJ0aWNsZSI7Ci0gICAgICAgIGRlYnVnKCJSZW1vdmluZyByZWdp
b24gMiIpOwotICAgICAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7
Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAibm8tYXJ0aWNsZSI7Ci0gICAgfQot
Ci0gICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewotICAgICAgICB2YXIgZmxvdyA9IGdldEZsb3dC
eU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgZmxvdy5hZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRy
ZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5nZWQpOwotCi0gICAgICAgIGRl
YnVnKCJGbG93IGNvbnRlbnQiKTsKLSAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLSAg
ICB9Ci0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOwotCi08
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1uby1vdmVy
c2V0LWNoYW5nZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtbm8tb3ZlcnNldC1jaGFuZ2UtZXhw
ZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YjI5NDY4Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1y
ZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSwxMyArMCwwIEBACi1UZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVu
dCBmb3IgcmVnaW9ucyBpbnNpZGUgZmxleGJveGVzCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi1GbG93aW5nIGNvbnRlbnQgaW50byByZWdpb25zLi4uCi1QQVNTIGV2ZW50LnRhcmdl
dC5uYW1lIGlzICJhcnRpY2xlIgotRW5nYWdpbmcgZmxleGJveC4uLgotUEFTUyBldmVudEZpcmVk
Q291bnQgaXMgMQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBM
RVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1m
bGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDhiZjViY2YuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLmh0
bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRt
bD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0gICAgI2FydGljbGUgewotICAgICAgICAt
d2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKLSAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJs
YWNrOwotICAgIH0KLSAgICAjcmVnaW9uXzEsICNyZWdpb25fMiB7Ci0gICAgICAgIC13ZWJraXQt
Zmxvdy1mcm9tOiBub19hcnRpY2xlOwotICAgICAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgICAg
IGRpc3BsYXk6aW5saW5lLWJsb2NrOwotICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7Ci0gICAg
ICAgIG1hcmdpbjoxMHB4OwotICAgICAgICBoZWlnaHQ6MTkwcHg7Ci0gICAgICAgIHdpZHRoOjIw
MHB4OwotICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0gICAgICAgIHBhZGRpbmc6IDVw
eDsKLSAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7Ci0gICAgICAgIC13ZWJraXQtZmxleC1i
YXNpczogMTAwJTsKLSAgICB9Ci0gICAgI3JlZ2lvbl8yIHsKLSAgICAgICAgLXdlYmtpdC1mbGV4
LWJhc2lzOiAzMCU7Ci0gICAgfQotICAgIC5jb250ZW50IHsKLSAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogZ3JlZW47Ci0gICAgICAgIGJvcmRlcjogM3B4IGRhc2hlZCBibHVlOwotICAgICAgICBt
YXJnaW46IDVweDsKLSAgICB9Ci0gICAgI3BhcnQxIHsKLSAgICAgICAgaGVpZ2h0OiAxNDBweDsK
LSAgICB9Ci0gICAgI3BhcnQyIHsKLSAgICAgICAgaGVpZ2h0OiAxNjBweDsKLSAgICB9Ci0gICAg
I2ZsZXhib3ggewotICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBncmVlbjsKLSAgICAgICAgbWFy
Z2luOiA1cHg7Ci0gICAgfQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9
ImFydGljbGUiPgotICAgICAgICA8ZGl2PgotICAgICAgICAgICAgPGRpdiBpZD0icGFydDEiIGNs
YXNzPSJjb250ZW50Ij48L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgaWQ9InBhcnQyIiBjbGFzcz0i
Y29udGVudCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotCi0gICAgPGRpdiBp
ZD0iZmxleGJveCI+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLSAgICAgICAg
PGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotICAgIDwvZGl2PgotCi0gICAgPHNjcmlwdD4KLQot
ICAgICAgICBkZXNjcmlwdGlvbigiVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQg
Zm9yIHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcyIpOwotCi0gICAgICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAg
ICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAgICAgICB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0gICAgICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZs
b3dOYW1lKSB7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlZ2lvbl8xIik7Ci0gICAgICAgICAgICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20g
PSBmbG93TmFtZTsKLSAgICAgICAgICAgIHJlZ2lvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb25fMiIpOwotICAgICAgICAgICAgcmVnaW9uLnN0eWxlLndlYmtpdEZsb3dGcm9tID0g
Zmxvd05hbWU7Ci0gICAgICAgIH0KLQotICAgICAgICB2YXIgZXZlbnRGaXJlZENvdW50ID0gMDsK
LSAgICAgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKLSAgICAgICAgICAgIHNob3VsZEJlKCJl
dmVudEZpcmVkQ291bnQiLCAiMSIpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAg
ICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBFbmFibGVGbGV4Ym94KCkgewotICAgICAgICAgICAg
ZGVidWcoIkVuZ2FnaW5nIGZsZXhib3guLi4iKQotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImZsZXhib3giKS5zdHlsZS5kaXNwbGF5ID0gIi13ZWJraXQtZmxleCI7Ci0KLSAg
ICAgICAgICAgIC8vIHdhaXQgYW5kIG1ha2Ugc3VyZSBubyBvdGhlciBldmVudHMgYXJyaXZlCi0g
ICAgICAgICAgICBzZXRUaW1lb3V0KCJmaW5pc2hUZXN0KCkiLCAyMDApOwotICAgICAgICB9Ci0K
LSAgICAgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5nZWQoZXZlbnQpIHsKLSAgICAgICAg
CSsrZXZlbnRGaXJlZENvdW50OwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJl
dmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7Ci0KLSAgICAgICAgICAgIC8vIGFjdGl2YXRl
IHRoZSBmbGV4Ym94Ci0gICAgICAgICAgICBpZiAoZXZlbnRGaXJlZENvdW50ID09IDEpIHsKLSAg
ICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgICAg
IEVuYWJsZUZsZXhib3goKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAg
ICAgIHNldFRpbWVvdXQoIkVuYWJsZUZsZXhib3goKSIsIDEwMDApOwotCi0gICAgICAgICAgICAg
ICAgcmV0dXJuOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgZnVuY3Rpb24g
c3RhcnRUZXN0KCkgeyAgICAKLSAgICAgICAgICAgIHZhciBmbG93VGhyZWFkID0gZ2V0Rmxvd0J5
TmFtZSgiYXJ0aWNsZSIpOwotICAgICAgICAgICAgZmxvd1RocmVhZC5hZGRFdmVudExpc3RlbmVy
KCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5nZWQpOwotICAg
ICAgICAgICAgCi0gICAgICAgICAgICBkZWJ1ZygiRmxvd2luZyBjb250ZW50IGludG8gcmVnaW9u
cy4uLiIpOwotICAgICAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKLSAg
ICA8L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gt
b3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQtY2hhbmdlLWV4
cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODgxOGRlOS4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQt
cmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTQgKzAsMCBAQAotVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQg
Zm9yIHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcwotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Ci0KLQotRmxvd2luZyBjb250ZW50IGludG8gcmVnaW9ucy4uLgotUEFTUyBldmVudC50YXJnZXQu
bmFtZSBpcyAiYXJ0aWNsZSIKLUVuZ2FnaW5nIGZsZXhib3guLi4KLVBBU1MgZXZlbnQudGFyZ2V0
Lm5hbWUgaXMgImFydGljbGUiCi1QQVNTIGV2ZW50RmlyZWRDb3VudCBpcyAyCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1m
bGV4Ym94LW92ZXJzZXQtY2hhbmdlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGEwYzY4Zi4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWlu
LWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExOCArMCww
IEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08bWV0YSBjaGFyc2V0PSJ1dGYt
OCI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4K
LSAgICAjYXJ0aWNsZSB7Ci0gICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAg
ICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7Ci0gICAgfQotICAgICNyZWdpb25fMSwgI3Jl
Z2lvbl8yIHsKLSAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7Ci0gICAgICAg
IG92ZXJmbG93OmhpZGRlbjsKLSAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0gICAgICAg
IHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICAgICAgbWFyZ2luOjEwcHg7Ci0gICAgICAgIGhlaWdo
dDphdXRvOwotICAgICAgICB3aWR0aDoyMDBweDsKLSAgICAgICAgYm9yZGVyOiAxcHggc29saWQg
cmVkOwotICAgICAgICBwYWRkaW5nOiA1cHg7Ci0gICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAx
OwotICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDEwMCU7Ci0gICAgfQotICAgICNyZWdpb25f
MiB7Ci0gICAgICAgIC13ZWJraXQtZmxleC1iYXNpczogNzAlOwotICAgIH0KLSAgICAuY29udGVu
dCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAgICAgICBib3JkZXI6IDNw
eCBkYXNoZWQgYmx1ZTsKLSAgICAgICAgbWFyZ2luOiA1cHg7Ci0gICAgfQotICAgICNwYXJ0MSB7
Ci0gICAgICAgIGhlaWdodDogNzBweDsKLSAgICB9Ci0gICAgI3BhcnQyIHsKLSAgICAgICAgaGVp
Z2h0OiA4MHB4OwotICAgIH0KLSAgICAjZmxleGJveCB7Ci0gICAgICAgIGJvcmRlcjogMnB4IHNv
bGlkIGdyZWVuOwotICAgICAgICBtYXJnaW46IDVweDsKLSAgICAgICAgd2lkdGg6IDI0MHB4Owot
ICAgICAgICBoZWlnaHQ6IDMwMHB4OwotICAgICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBj
b2x1bW47Ci0gICAgfQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImFy
dGljbGUiPgotICAgICAgICA8ZGl2PgotICAgICAgICAgICAgPGRpdiBpZD0icGFydDEiIGNsYXNz
PSJjb250ZW50Ij48L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgaWQ9InBhcnQyIiBjbGFzcz0iY29u
dGVudCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotCi0gICAgPGRpdiBpZD0i
ZmxleGJveCI+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLSAgICAgICAgPGRp
diBpZD0icmVnaW9uXzIiPjwvZGl2PgotICAgIDwvZGl2PgotCi0gICAgPHNjcmlwdD4KLQotICAg
ICAgICBkZXNjcmlwdGlvbigiVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQgZm9y
IHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcyIpOwotCi0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAg
ICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAgICAgICB3aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7Ci0gICAgICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dO
YW1lKSB7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbl8xIik7Ci0gICAgICAgICAgICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBm
bG93TmFtZTsKLSAgICAgICAgICAgIHJlZ2lvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb25fMiIpOwotICAgICAgICAgICAgcmVnaW9uLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxv
d05hbWU7Ci0gICAgICAgIH0KLQotICAgICAgICB2YXIgZXZlbnRGaXJlZENvdW50ID0gMDsKLSAg
ICAgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKLSAgICAgICAgICAgIHNob3VsZEJlKCJldmVu
dEZpcmVkQ291bnQiLCAiMiIpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAg
IH0KLQotICAgICAgICBmdW5jdGlvbiBFbmFibGVGbGV4Ym94KCkgewotICAgICAgICAgICAgZGVi
dWcoIkVuZ2FnaW5nIGZsZXhib3guLi4iKQotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImZsZXhib3giKS5zdHlsZS5kaXNwbGF5ID0gIi13ZWJraXQtZmxleCI7Ci0gICAgICAg
IH0KLQotICAgICAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChldmVudCkgewotICAg
ICAgICAJKytldmVudEZpcmVkQ291bnQ7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKLQotICAgICAgICAgICAgLy8gYWN0
aXZhdGUgdGhlIGZsZXhib3gKLSAgICAgICAgICAgIGlmIChldmVudEZpcmVkQ291bnQgPT0gMSkg
ewotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAg
ICAgICAgRW5hYmxlRmxleGJveCgpOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICAgICAgc2V0VGltZW91dCgiRW5hYmxlRmxleGJveCgpIiwgMTAwMCk7Ci0KLSAgICAgICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGVsc2UgCi0gICAg
ICAgICAgICAgICAgc2V0VGltZW91dCgiZmluaXNoVGVzdCgpIiwgMjAwKTsKLSAgICAgICAgfQot
Ci0gICAgICAgIGZ1bmN0aW9uIHN0YXJ0VGVzdCgpIHsgICAgCi0gICAgICAgICAgICB2YXIgZmxv
d1RocmVhZCA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgICAgIGZsb3dUaHJl
YWQuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92
ZXJzZXRDaGFuZ2VkKTsKLSAgICAgICAgICAgIAotICAgICAgICAgICAgZGVidWcoIkZsb3dpbmcg
Y29udGVudCBpbnRvIHJlZ2lvbnMuLi4iKTsKLSAgICAgICAgICAgIGZsb3dDb250ZW50KCJhcnRp
Y2xlIik7Ci0gICAgICAgIH0KLQotICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIHN0YXJ0VGVzdCk7Ci0gICAgPC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
LXJlbW92ZS1mcm9tLWRvbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZG9tLWV4cGVjdGVkLnR4dApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjc1OTRmOS4uMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZG9t
LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLVRlc3RzIHJlZ2lv
bk92ZXJzZXRDaGFuZ2UgZXZlbnQKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0gRmxv
dyBjb250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUmVtb3Zpbmcg
cmVnaW9uXzIgZnJvbSBET00KLVBBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCi1Q
QVNTIGV2ZW50Q291bnQgaXMgMgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1U
RVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJr
aXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20uaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20uaHRtbApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjU0NjZlYi4uMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20t
ZG9tLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4NCArMCwwIEBACi08aHRtbD4KLTxoZWFkPgot
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0jYXJ0
aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHgg
c29saWQgYmxhY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMnsKLSAgICAtd2Via2l0LWZsb3ct
ZnJvbTogbm9fYXJ0aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxheTppbmxp
bmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQot
LmJsb2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMiB7IGhl
aWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4OyBib3JkZXI6IDFweCBzb2xpZCBy
ZWQ7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iIGNs
YXNzPSJibG9jayI+PC9kaXY+Ci08ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICA8ZGl2PgotICAgICAg
ICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZC1jb2xv
cjogZ3JlZW47Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb25f
MSI+PC9kaXY+Ci08ZGl2IGlkPSJjb250YWluZXIyIj4KLSAgICA8ZGl2IGlkPSJyZWdpb25fMiI+
PC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4K
LQotPHNjcmlwdD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBl
dmVudCIpCi0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOwotICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICB9
Ci0gICAgCi0gICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotICAgIGZ1bmN0aW9uIGZs
b3dDb250ZW50KGZsb3dOYW1lKSB7Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93
TmFtZTsKLSAgICAgICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwot
ICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgfQotCi0gICAg
dmFyIGV2ZW50Q291bnQgPSAwOwotICAgIGZ1bmN0aW9uIGZpbmlzaFRlc3QoKSB7Ci0gICAgICAg
IHNob3VsZEJlKCJldmVudENvdW50IiwgIjIiKTsKLSAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0g
ICAgfQotCi0gICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5nZWQoZXZlbnQpIHsKLSAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7
Ci0gICAgICAgIGlmICgrK2V2ZW50Q291bnQgPiAxKSB7Ci0gICAgICAgICAgIGV2ZW50LnRhcmdl
dC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9u
T3ZlcnNldENoYW5nZWQpOwotICAgICAgICAgICAvLyB0aGlzIHNob3VsZCBiZSByZWFjaGVkIGFm
dGVyIHJlZ2lvbl8yIGlzIHJlbW92ZWQgZnJvbSBET00KLSAgICAgICAgICAgZmluaXNoVGVzdCgp
OwotICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHZhciBj
MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXIyIik7Ci0gICAgICAgIGRlYnVn
KCJSZW1vdmluZyByZWdpb25fMiBmcm9tIERPTSIpOwotICAgICAgICBjMi5pbm5lckhUTUwgPSAi
IjsgLy8gdGhpcyB3aWxsIHRyaWdnZXIgYSBuZXcgcm91bmQgb2YgZXZlbnRzIGR1ZSB0byBsYXlv
dXQKLSAgICB9Ci0gICAgCi0gICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewotICAgICAgICB2YXIg
ZmxvdyA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgZmxvdy5hZGRFdmVudExp
c3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5nZWQp
OwotICAgICAgICAKLSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAgICBmbG93
Q29udGVudCgiYXJ0aWNsZSIpOwotICAgIH0KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigi
bG9hZCIsIHN0YXJ0VGVzdCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1v
dmUtZnJvbS1mbG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJr
aXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWU2ZTRjOC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1UZXN0cyByZWdpb25P
dmVyc2V0Q2hhbmdlIGV2ZW50Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotIAotRmxv
dyBjb250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUmVtb3Zpbmcg
cmVnaW9uXzIgZnJvbSBmbG93Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgot
UEFTUyBldmVudENvdW50IGlzIDIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzMzZWVhNC4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZy
b20tZmxvdy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsODEgKzAsMCBAQAotPGh0bWw+Ci08aGVh
ZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgot
I2FydGljbGUgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJvcmRlcjog
MnB4IHNvbGlkIGJsYWNrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdlYmtpdC1m
bG93LWZyb206IG5vX2FydGljbGU7Ci0gICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgIGRpc3BsYXk6
aW5saW5lLWJsb2NrOwotICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsK
LX0KLS5ibG9jayB7Ci0gICBkaXNwbGF5OmJsb2NrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzIg
eyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBtYXJnaW46IDVweDsgYm9yZGVyOiAxcHggc29s
aWQgcmVkO30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2NyaXB0aW9u
IiBjbGFzcz0iYmxvY2siPjwvZGl2PgotPGRpdiBpZD0iYXJ0aWNsZSI+Ci0gICAgPGRpdj4KLSAg
ICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjAwcHg7IGJhY2tncm91bmQt
Y29sb3I6IGdyZWVuOyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVn
aW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotCi08ZGl2IGlkPSJjb25z
b2xlIiBjbGFzcz0iYmxvY2siPjwvZGl2PgotCi08c2NyaXB0PgotICAgIGRlc2NyaXB0aW9uKCJU
ZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGV2ZW50IikKLSAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOwotICAgIH0KLSAgICAKLSAgICB3aW5kb3cuanNUZXN0SXNBc3lu
YyA9IHRydWU7Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAgICAgICAg
dmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICAgICAgci5z
dHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICByID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20g
PSBmbG93TmFtZTsKLSAgICB9Ci0KLSAgICB2YXIgZXZlbnRDb3VudCA9IDA7Ci0gICAgZnVuY3Rp
b24gZmluaXNoVGVzdCgpIHsKLSAgICAgICAgc2hvdWxkQmUoImV2ZW50Q291bnQiLCAiMiIpOwot
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiByZWdpb25PdmVy
c2V0Q2hhbmdlZChldmVudCkgewotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50
LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKLSAgICAgICAgaWYgKCsrZXZlbnRDb3VudCA+IDEp
IHsKLSAgICAgICAgICAgIC8vIHRoaXMgc2hvdWxkIGJlIHJlYWNoZWQgYWZ0ZXIgcmVnaW9uXzIg
aXMgcmVtb3ZlZCBmcm9tIERPTQotICAgICAgICAgICBzZXRUaW1lb3V0KCJmaW5pc2hUZXN0KCki
LCAyMDApOwotICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAg
IHZhciByMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICBk
ZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBmbG93Iik7Ci0gICAgICAgIHIyLnN0eWxlLndl
YmtpdEZsb3dGcm9tID0gIm5vbmUiOyAvLyB0aGlzIHdpbGwgdHJpZ2dlciBhIG5ldyByb3VuZCBv
ZiBldmVudHMgZHVlIHRvIGxheW91dAotICAgIH0KLSAgICAKLSAgICBmdW5jdGlvbiBzdGFydFRl
c3QoKSB7Ci0gICAgICAgIHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOwotICAg
ICAgICBmbG93LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBy
ZWdpb25PdmVyc2V0Q2hhbmdlZCk7Ci0gICAgICAgIAotICAgICAgICBkZWJ1ZygiRmxvdyBjb250
ZW50Iik7Ci0gICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7Ci0gICAgfQotICAgIHdpbmRv
dy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKLTwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5
PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LXRhcmdldC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2QxNjQ4NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4
dAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLVRlc3RzIHRoZSB0aGUgTmFtZWRGbG93
IG9iamVjdCBiZWhhdmlvciBhcyBhbiBFdmVudFRhcmdldAotCi1PbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCi0KLQotRmxvdyBjb250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRp
Y2xlIgotUEFTUyBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIikgaXMgbm9uLW51bGwuCi1QQVNTIHJl
Y3JlYXRlZCBpcyBmYWxzZQotUEFTUyBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIikgaXMgbnVsbAot
UEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKLVBBU1MgcmVjcmVhdGVkIGlzIHRy
dWUKLVBBU1MgZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpIGlzIG5vbi1udWxsLgotUEFTUyB1cGRh
dGVkQ291bnQgaXMgMgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENP
TVBMRVRFCi0gCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtdGFyZ2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDZmMGExNmIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTE0
ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0
eWxlPgotI2FydGljbGUgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJv
cmRlcjogMnB4IHNvbGlkIGJsYWNrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdl
YmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7Ci0gICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgIGRp
c3BsYXk6aW5saW5lLWJsb2NrOwotICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46
MTBweDsKLX0KLS5ibG9jayB7Ci0gICBkaXNwbGF5OmJsb2NrOwotfQotI3JlZ2lvbl8xLCAjcmVn
aW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBib3JkZXI6IDFweCBzb2xpZCByZWQ7
fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iYXJ0aWNsZSI+Ci0gICAgPGRp
dj4KLSAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjAwcHg7IGJhY2tn
cm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBp
ZD0icmVnaW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotCi08c2NyaXB0
PgotCi1kZXNjcmlwdGlvbigiVGVzdHMgdGhlIHRoZSBOYW1lZEZsb3cgb2JqZWN0IGJlaGF2aW9y
IGFzIGFuIEV2ZW50VGFyZ2V0Iik7Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwot
fQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxv
d05hbWUpIHsKLSAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIp
OwotICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICByID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgci5zdHlsZS53ZWJraXRGbG93RnJv
bSA9IGZsb3dOYW1lOwotfQotCi1mdW5jdGlvbiBtYWtlRmxvd051bGwoKSB7Ci0Jc2hvdWxkQmVO
b25OdWxsKCdnZXRGbG93QnlOYW1lKCJhcnRpY2xlIiknKTsKLQotICAgIHZhciBlbCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwotICAgIGVsLnN0eWxlLndlYmtpdEZsb3dG
cm9tID0gIm5vX2FydGljbGUiOwotICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbl8yIik7Ci0gICAgZWwuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAibm9fYXJ0aWNsZSI7Ci0g
ICAgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwotICAgIGVsLnN0eWxl
LndlYmtpdEZsb3dJbnRvID0gIm5vX2FydGljbGUiOwotfQotCi12YXIgcmVjcmVhdGVkID0gZmFs
c2U7Ci1mdW5jdGlvbiBtYWtlRmxvd0NyZWF0ZWQoKSB7Ci0Jc2hvdWxkQmVOdWxsKCdnZXRGbG93
QnlOYW1lKCJhcnRpY2xlIiknKTsKLQlnYygpOwotCi0gICAgdmFyIGVsID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgZWwuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAi
YXJ0aWNsZSI7Ci0gICAgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsK
LSAgICBlbC5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICJhcnRpY2xlIjsKLSAgICBlbCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0gICAgZWwuc3R5bGUud2Via2l0Rmxvd0lu
dG8gPSAiYXJ0aWNsZSI7Ci0KLSAgICByZWNyZWF0ZWQgPSB0cnVlOwotfQotCi12YXIgdXBkYXRl
ZENvdW50ID0gMDsKLWZ1bmN0aW9uIGZpbmlzaFRlc3QoKSB7Ci0gICAgc2hvdWxkQmUoInVwZGF0
ZWRDb3VudCIsICIyIik7Ci0gICAgZmluaXNoSlNUZXN0KCk7Ci19Ci0KLWZ1bmN0aW9uIGZsb3dU
aHJlYWRVcGRhdGVkKGV2ZW50KSB7Ci0JKyt1cGRhdGVkQ291bnQ7Ci0gICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7Ci0KLSAgICBpZiAodXBk
YXRlZENvdW50ID09IDIpIHsKLSAgICAJc2hvdWxkQmVUcnVlKCJyZWNyZWF0ZWQiKTsKLSAgICAJ
ZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFu
Z2UiLCBmbG93VGhyZWFkVXBkYXRlZCk7Ci0gICAgCW1ha2VGbG93TnVsbCgpOwotICAgIAlzZXRU
aW1lb3V0KCJmaW5pc2hUZXN0KCkiLCAyMDApOwotICAgIAlyZXR1cm47Ci0gICAgfQotCi0gICAg
bWFrZUZsb3dOdWxsKCk7Ci0gICAgc2hvdWxkQmVGYWxzZSgicmVjcmVhdGVkIik7Ci0KLSAgICAv
LyBTZXQgYSB0aW1lb3V0IHNvIHRoZSBldmVudCByZWZlcmVuY2UgdG8gdGhlIHRhcmdldCBpcyBk
aXNjYXJkZWQKLSAgICBzZXRUaW1lb3V0KG1ha2VGbG93Q3JlYXRlZCwgMTApOwotfQotCi1mdW5j
dGlvbiBzdGFydFRlc3QoKSB7ICAgIAotICAgIHZhciBmbG93VGhyZWFkID0gZ2V0Rmxvd0J5TmFt
ZSgiYXJ0aWNsZSIpOwotICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVn
aW9ub3ZlcnNldGNoYW5nZSIsIGZsb3dUaHJlYWRVcGRhdGVkKTsKLSAgICAKLSAgICBkZWJ1Zygi
RmxvdyBjb250ZW50Iik7Ci0gICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLX0KLQotd2luZG93
LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOwotPC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY5NDBjMzYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRvLW51bGwtZXhwZWN0ZWQu
dHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotVGVzdHMgcmVnaW9uT3ZlcnNldENo
YW5nZSBldmVudCBiZWluZyBkaXNwYXRjaGVkIHdoZW4gdGhlIGNvbnRlbnQgaXMgcmVtb3ZlZAot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotRmxvdyBjb250ZW50Ci1QQVNTIGV2ZW50
LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBmbG93Ci1S
ZW1vdmluZyByZWdpb25fMSBmcm9tIGZsb3cKLVJlbW92aW5nIGFydGljbGUgZnJvbSBmbG93Ci1Q
QVNTIHJlZ2lvbk92ZXJzZXREaXNwYXRjaGVkRm9yTnVsbEZsb3cgaXMgZmFsc2UKLVBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRv
LW51bGwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmYwMGY3Mi4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQt
dG8tbnVsbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTMgKzAsMCBAQAotPCFET0NUWVBFIGh0
bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0jYXJ0aWNsZSB7Ci0gICAg
LXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7
Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMnsKLSAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0
aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0g
ICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQotLmJsb2NrIHsKLSAg
IGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsg
d2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxk
aXYgaWQ9ImFydGljbGUiPgotICAgIDxkaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0
eWxlPSJoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgotICAg
IDwvZGl2PgotPC9kaXY+Ci0KLTxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLTxkaXYgaWQ9ImNv
bnRhaW5lcjIiPgotICAgIDxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KLTwvZGl2PgotCi08c2Ny
aXB0PgotCi1kZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBiZWlu
ZyBkaXNwYXRjaGVkIHdoZW4gdGhlIGNvbnRlbnQgaXMgcmVtb3ZlZCIpOwotCi1pZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAg
IHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgIH0KLSAgICAKLSAgICB3aW5kb3cuanNU
ZXN0SXNBc3luYyA9IHRydWU7Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsK
LSAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAg
ICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICByID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0
Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICB9Ci0gICAgCi0gICAgdmFyIGNvdW50ID0gMDsKLSAg
ICB2YXIgcmVnaW9uT3ZlcnNldERpc3BhdGNoZWRGb3JOdWxsRmxvdyA9IGZhbHNlOwotICAgIGZ1
bmN0aW9uIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Ci0gICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOwotICAgICAgICBpZiAo
Kytjb3VudCA+IDEpIHsKLSAgICAgICAgICAgZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVu
ZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7Ci0g
ICAgICAgICAgIHJlZ2lvbk92ZXJzZXREaXNwYXRjaGVkRm9yTnVsbEZsb3cgPSB0cnVlOwotICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHZhciBlbCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICBkZWJ1ZygiUmVtb3Zp
bmcgcmVnaW9uXzIgZnJvbSBmbG93Iik7Ci0gICAgICAgIGVsLnN0eWxlLndlYmtpdEZsb3dGcm9t
ID0gIm5vbmUiOwotICAgICAgICBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25f
MSIpOwotICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzEgZnJvbSBmbG93Iik7Ci0gICAg
ICAgIGVsLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vbmUiOwotICAgICAgICBlbCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0gICAgICAgIGRlYnVnKCJSZW1vdmluZyBh
cnRpY2xlIGZyb20gZmxvdyIpOwotICAgICAgICBlbC5zdHlsZS53ZWJraXRGbG93SW50byA9ICJu
b25lIjsKLQotICAgICAgICBzZXRUaW1lb3V0KGNoZWNrSWZFdmVudERpc3BhdGNoZWQsIDIwMCk7
Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gY2hlY2tJZkV2ZW50RGlzcGF0Y2hlZCgpIHsKLSAgICAg
ICAgc2hvdWxkQmVGYWxzZSgicmVnaW9uT3ZlcnNldERpc3BhdGNoZWRGb3JOdWxsRmxvdyIpOwot
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICB9Ci0gICAgCi0gICAgZnVuY3Rpb24gc3RhcnRU
ZXN0KCkgewotICAgICAgICB2YXIgZmxvdyA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKLSAg
ICAgICAgZmxvdy5hZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwg
cmVnaW9uT3ZlcnNldENoYW5nZWQpOwotICAgICAgICAKLSAgICAgICAgZGVidWcoIkZsb3cgY29u
dGVudCIpOwotICAgICAgICBmbG93Q29udGVudCgiYXJ0aWNsZSIpOwotICAgIH0KLSAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7Ci08L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9k
eT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1ldmVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA0NDhl
NDMuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2OCArMCwwIEBACi08aHRtbD4KLTxo
ZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+
Ci0jYXJ0aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgYm9yZGVy
OiAycHggc29saWQgYmxhY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMnsKLSAgICAtd2Via2l0
LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxh
eTppbmxpbmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4
OwotfQotLmJsb2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25f
MiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHh9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+
Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KLTxkaXYgaWQ9ImFy
dGljbGUiPgotICAgIDxkaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWln
aHQ6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgotICAgIDwvZGl2Pgot
PC9kaXY+Ci0KLTxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbl8yIj48
L2Rpdj4KLQotPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KLQotPHNjcmlw
dD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCIpCi0g
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOwotICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICB9Ci0gICAgd2lu
ZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dO
YW1lKSB7Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8x
Iik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAg
ciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICByLnN0eWxl
LndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgfQotICAgIAotICAgIGZ1bmN0aW9uIGZs
b3dUaHJlYWRVcGRhdGVkKGV2ZW50KSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
ZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOwotICAgICAgICBldmVudC50YXJnZXQucmVt
b3ZlRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIGZsb3dUaHJlYWRV
cGRhdGVkKTsKLSAgICAgICAgCi0gICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgIH0KLSAgICAK
LSAgICBmdW5jdGlvbiBzdGFydFRlc3QoKSB7ICAgIAotICAgICAgICB2YXIgZmxvd1RocmVhZCA9
IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgZmxvd1RocmVhZC5hZGRFdmVudExp
c3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgZmxvd1RocmVhZFVwZGF0ZWQpOwot
ICAgICAgICAKLSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAgICBmbG93Q29u
dGVudCgiYXJ0aWNsZSIpOwotICAgIH0KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIHN0YXJ0VGVzdCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1leGlzdGluZy1mbG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1leGlzdGluZy1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggYzcxMzFlYy4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSw3ICswLDAgQEAKLVRlc3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRG
bG93IGludGVyZmFjZQotCi1HZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3IgYW4g
ZXhpc3RpbmcgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LgotCi1PbiBzdWNj
ZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgotCi1QQVNTCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV4aXN0aW5nLWZs
b3cuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjgwMTEzYy4uMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXhpc3Rpbmct
Zmxvdy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLSAgICA8IS0tCi0gICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1l
ZEZsb3cgaW50ZXJmYWNlKS4KLSAgICBUZXN0IHRoYXQgZ2V0dGluZyBhIFdlYktpdE5hbWVkRmxv
dyBmb3IgYW4gZXhpc3RpbmcgZmxvdyByZXR1cm5zIGEgbm9uLW51bGwgb2JqZWN0LgotICAgIE9u
IHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIGEgUEFTUyBiZWxvdy4KLSAgICAtLT4KLSAgICA8aGVh
ZD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAucGFzcyB7Ci0gICAgICAgICAgICAgICAgZm9u
dC13ZWlnaHQ6IGJvbGQ7Ci0gICAgICAgICAgICAgICAgY29sb3I6IGdyZWVuOwotICAgICAgICAg
ICAgfQotCi0gICAgICAgICAgICAuZmFpbCB7Ci0gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6
IGJvbGQ7Ci0gICAgICAgICAgICAgICAgY29sb3I6IHJlZDsKLSAgICAgICAgICAgIH0KLQotICAg
ICAgICAgICAgLmZsb3cgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93
OwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9k
eT4KLSAgICAgICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTY2NjQyIj42NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVk
RmxvdyBpbnRlcmZhY2U8L2E+PC9wPgotICAgICAgICA8cD5HZXR0aW5nIGEgV2ViS2l0TmFtZWRG
bG93IG9iamVjdCBmb3IgYW4gZXhpc3RpbmcgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwg
b2JqZWN0LjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBi
ZWxvdy48L3A+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJmbG93Ij48L2Rpdj4K
LSAgICAgICAgPGRpdiBpZD0icmVzdWx0IiBjbGFzcz0iZmFpbCI+RkFJTDwvZGl2PgotICAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAg
ICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRG
bG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotICAgICAgICAgICAgaWYgKG5hbWVkRmxvdykg
ewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5l
clRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlc3VsdCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgPC9z
Y3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmly
c3QtZW1wdHktcmVnaW9uLWluZGV4LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNDEwMWY2Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLVRlc3QgZm9yIDkwNjA4OiBbQ1NTUmVnaW9u
c11JbXBsZW1lbnQgTmFtZWRGbG93OjpmaXJzdEVtcHR5UmVnaW9uSW5kZXggYXR0cmlidXRlLgot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0
eVJlZ2lvbkluZGV4IGlzIC0xCi1QQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgg
aXMgLTEKLVBBU1MgbmFtZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCBpcyAxCi1QQVNTIG5h
bWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMgotUEFTUyBuYW1lZEZsb3cuZmlyc3RF
bXB0eVJlZ2lvbkluZGV4IGlzIC0xCi1QQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5k
ZXggaXMgMAotUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IGlzIC0xCi1QQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5
LXJlZ2lvbi1pbmRleC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkMjIxMmIxLi4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy93ZWJraXQtbmFtZWQtZmxvdy1maXJzdC1lbXB0eS1yZWdpb24taW5kZXguaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDg4ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4K
LTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMi
Pjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlIH0K
LSAgICAuY29udGVudCB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93IH0KLSAgICAucmVnaW9uIHsg
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93fQotICAgICNyZWdpb24sICNyZWdpb24yLCAjcmVnaW9u
MyB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJv
ZHk+Ci08ZGl2IGlkPSJhcnRpY2xlIiBjbGFzcz0iY29udGVudCI+Ci08cD5Db250ZW50IGluc2lk
ZSBhcnRpY2xlPC9wPgotPC9kaXY+Ci08c2NyaXB0PgotICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZv
ciA5MDYwODogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVkRmxvdzo6Zmlyc3RFbXB0eVJlZ2lv
bkluZGV4IGF0dHJpYnV0ZS4iKTsKLQotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAvLyBOYW1lZCBmbG93IGRvZXMgbm90
IGhhdmUgYW55IHJlZ2lvbnMgeWV0Ci0gICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUo
ImZsb3ciKTsKLQotICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgLTEgZm9y
IGFuIGVtcHR5IG5hbWVkIGZsb3cKLSAgICBzaG91bGRCZSgibmFtZWRGbG93LmZpcnN0RW1wdHlS
ZWdpb25JbmRleCIsICItMSIpOwotCi0gICAgLy8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhlIGNv
bnRlbnQsIGZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgc3RpbGwgYmUgLTEuCi0gICAgdmFy
IHJlZ2lvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQocmVnaW9uKTsKLSAgICByZWdpb24uaWQgPSAicmVnaW9uIjsKLSAgICBy
ZWdpb24uY2xhc3NOYW1lID0gInJlZ2lvbiI7Ci0KLSAgICAvLyBGaXJzdEVtcHR5UmVnaW9ucyBz
aG91bGQgYmUgLTEsIHNpbmNlIHRoZXJlIGFyZSBubyBlbXB0eSByZWdpb25zCi0gICAgc2hvdWxk
QmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiLTEiKTsKLQotICAgIC8vIEFk
ZCBhbm90aGVyIHJlZ2lvbiwgZmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAxIHNpbmNl
IGNvbnRlbnQgb25seSBmbG93cyB3aXRoaW4gdGhlIGZpcnN0IHJlZ2lvbi4KLSAgICB2YXIgcmVn
aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGRvY3VtZW50LmJvZHku
YXBwZW5kQ2hpbGQocmVnaW9uMik7Ci0gICAgcmVnaW9uMi5pZCA9ICJyZWdpb24yIjsKLSAgICBy
ZWdpb24yLmNsYXNzTmFtZSA9ICJyZWdpb24iOwotCi0gICAgLy8gRmlyc3RFbXB0eVJlZ2lvbklu
ZGV4IHNob3VsZCBiZSAxCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9u
SW5kZXgiLCAiMSIpOwotCi0gICAgLy8gQWRkIGNvbnRlbnQgdW50aWwgc29tZSBpcyBmbG93ZWQg
aW5zaWRlIHNlY29uZCByZWdpb24KLSAgICB3aGlsZSAocmVnaW9uMi53ZWJraXRSZWdpb25PdmVy
c2V0ID09ICJlbXB0eSIpIHsKLSAgICAgICAgdmFyIHAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJwIik7Ci0gICAgICAgIHAuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkNv
bnRlbnQgaW5zaWRlIGFydGljbGUiKSk7Ci0gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocCk7Ci0gICAgfQotICAgIC8vIEFkZCB0aGUgdGhpcmQg
cmVnaW9uLCBmaXJzdEVtcHR5UmVnaW9uSW5kZXggc2hvdWxkIGJlIDIuCi0gICAgdmFyIHJlZ2lv
bjMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKHJlZ2lvbjMpOwotICAgIHJlZ2lvbjMuaWQgPSAicmVnaW9uMyI7Ci0gICAgcmVn
aW9uMy5jbGFzc05hbWUgPSAicmVnaW9uIjsKLQotICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRl
eCBzaG91bGQgYmUgMiBzaW5jZSB0aGUgY29udGVudCBmaXRzIGluIHRoZSBmaXJzdCB0d28gcmVn
aW9ucy4KLSAgICBzaG91bGRCZSgibmFtZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICIy
Iik7Ci0KLSAgICAvLyBSZW1vdmUgdGhlIGZpcnN0IHJlZ2lvbiBmcm9tIHRoZSBmbG93LCBmaXJz
dEVtcHR5UmVnaW9uSW5kZXggc2hvdWxkIGJlIC0xLgotICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAi
IjsKLQotICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIHRydWUgc2luY2UgdGhlIGNvbnRlbnQgZG9l
cyBub3QgZml0IHRoZSByZWdpb25zCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5
UmVnaW9uSW5kZXgiLCAiLTEiKTsKLQotICAgIC8vIFJlbW92ZSB0aGUgY29udGVudCBmcm9tIHRo
ZSBmbG93LCBmaXJzdEVtcHR5UmVnaW9uSW5kZXggc2hvdWxkIGJlIDAuCi0gICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAiIjsKLQotICAgIC8vIEZpcnN0
RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgMCwgc2luY2UgdGhlcmUgaXMgbm8gbW9yZSBjb250
ZW50LgotICAgIHNob3VsZEJlKCJuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IiwgIjAi
KTsKLQotICAgIC8vIFJlbW92ZSBhbGwgdGhlIHJlZ2lvbnMgZnJvbSB0aGUgZmxvdwotICAgIHJl
Z2lvbjIuY2xhc3NOYW1lID0gcmVnaW9uMy5jbGFzc05hbWUgPSAiIjsKLQotICAgIC8vIEZpcnN0
RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgLTEsIHNpbmNlIHRoZXJlIGFyZSBubyBtb3JlIHJl
Z2lvbnMgaW4gdGhlIG5hbWVkIGZsb3cuCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVt
cHR5UmVnaW9uSW5kZXgiLCAiLTEiKTsKLQotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
cnRpY2xlIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICByZWdpb24uc3R5bGUuZGlzcGxh
eSA9ICJub25lIjsKLSAgICByZWdpb24yLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci0gICAgcmVn
aW9uMy5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ct
Zmxvdy1hZGRlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDBlMGExNTIuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LWZsb3ctYWRkZWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwK
QEAgLTEsNyArMCwwIEBACi1UZXN0IGZvciA2NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5h
bWVkRmxvdyBpbnRlcmZhY2UKLQotR2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3QgZm9y
IGEgZmxvdyB0aGF0IHdhcyBhZGRlZCBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0Lgot
Ci1PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgotCi1QQVNTCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRl
ZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZsb3ct
YWRkZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODFjZWZjNS4uMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1h
ZGRlZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLSAgICA8IS0tCi0gICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1l
ZEZsb3cgaW50ZXJmYWNlKS4KLSAgICBUZXN0IHRoYXQgZ2V0dGluZyBhIFdlYktpdE5hbWVkRmxv
dyBmb3IgYSBmbG93IHRoYXQgd2FzIGFkZGVkIHJldHVybnMgYSBub24tbnVsbCBvYmplY3QuCi0g
ICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAg
IDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAg
ICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5mYWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdl
aWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICAuZmxvdyB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86
IGZsb3c7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ub0Zsb3cgewotICAgICAgICAg
ICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBub25lOwotICAgICAgICAgICAgfQotICAgICAgICA8
L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gICAgICAg
IDxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NjY0MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJm
YWNlPC9hPjwvcD4KLSAgICAgICAgPHA+R2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3Qg
Zm9yIGEgZmxvdyB0aGF0IHdhcyBhZGRlZCBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0
LjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy48
L3A+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJub0Zsb3ciPjwvZGl2PgotICAg
ICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0gICAgICAgIDxz
Y3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIC8vIEdldCB0aGUgbmFt
ZWQgZmxvdyBvYmplY3QgYmVmb3JlIGFkZGluZyB0aGUgZmxvdyB0aHJlYWQuCi0gICAgICAgICAg
ICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotICAgICAgICAgICAgdmFy
IG5hbWVkRmxvdzI7Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3QoKQotICAgICAgICAgICAg
ewotICAgICAgICAgICAgICAgIG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0g
ICAgICAgICAgICAgICAgaWYgKCFuYW1lZEZsb3cgJiYgbmFtZWRGbG93MikgewotICAgICAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0g
IlBBU1MiOwotICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVz
dWx0IikuY2xhc3NOYW1lID0gInBhc3MiOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5jbGFz
c05hbWUgPSAiZmxvdyI7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1n
ZXQtY29udGVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBhNDkzNjQ2Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtY29udGVudC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSwzNiArMCwwIEBACi1UZXN0IGZvciA5MDE2MzogW0NTU1JlZ2lvbnNdUmVuYW1lIE5h
bWVkRmxvdzo6Y29udGVudE5vZGVzIHRvIE5hbWVkRmxvdzo6Z2V0Q29udGVudCgpCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGdldEZsb3dCeU5hbWUoImZsb3ciKSBpcyBu
dWxsCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQzLmxlbmd0aCBpcyAxCi1QQVNTIG5hbWVkRmxvd0Nv
bnRlbnQzLml0ZW0oMCkuaWQgaXMgImFydGljbGUiCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ0Lmxl
bmd0aCBpcyAxCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ0Lml0ZW0oMCkuaWQgaXMgImFydGljbGUi
Ci1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ1Lmxlbmd0aCBpcyAyCi1QQVNTIG5hbWVkRmxvd0NvbnRl
bnQ1Lml0ZW0oMCkuaWQgaXMgImFydGljbGUyIgotUEFTUyBuYW1lZEZsb3dDb250ZW50NS5pdGVt
KDEpLmlkIGlzICJhcnRpY2xlIgotUEFTUyBuYW1lZEZsb3dDb250ZW50Ni5sZW5ndGggaXMgMgot
UEFTUyBuYW1lZEZsb3dDb250ZW50Ny5sZW5ndGggaXMgMgotUEFTUyBuYW1lZEZsb3dDb250ZW50
OC5sZW5ndGggaXMgMwotUEFTUyBuYW1lZEZsb3dDb250ZW50OS5sZW5ndGggaXMgMwotUEFTUyBu
YW1lZEZsb3dDb250ZW50OS5pdGVtKDApLmlkIGlzICJhcnRpY2xlMiIKLVBBU1MgbmFtZWRGbG93
Q29udGVudDkuaXRlbSgxKS5pZCBpcyAic3BhbjEiCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ5Lml0
ZW0oMikuaWQgaXMgImFydGljbGUiCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQxMC5sZW5ndGggaXMg
MwotUEFTUyBuYW1lZEZsb3dDb250ZW50MTAuaXRlbSgwKS5pZCBpcyAiYXJ0aWNsZSIKLVBBU1Mg
bmFtZWRGbG93Q29udGVudDExLmxlbmd0aCBpcyA1Ci1QQVNTIG5hbWVkRmxvd0NvbnRlbnQxMi5s
ZW5ndGggaXMgMQotUEFTUyBuYW1lZEZsb3dDb250ZW50MTIuaXRlbSgwKS5pZCBpcyAiYXJ0aWNs
ZSIKLVBBU1MgbmFtZWRGbG93Q29udGVudDExLmxlbmd0aCBpcyAwCi1QQVNTIG5hbWVkRmxvd0Nv
bnRlbnQxMi5sZW5ndGggaXMgMQotUEFTUyBuYW1lZEZsb3dDb250ZW50MTIuaXRlbSgwKS5pZCBp
cyAiYXJ0aWNsZSIKLVBBU1MgZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKSBpcyBudWxsCi1QQVNTIG5h
bWVkRmxvd0NvbnRlbnQxMy5sZW5ndGggaXMgMAotUEFTUyBuYW1lZEZsb3dDb250ZW50MTQubGVu
Z3RoIGlzIDAKLVBBU1MgbmFtZWRGbG93Q29udGVudDE1Lmxlbmd0aCBpcyAxCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdldC1jb250ZW50Lmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjM2ZDIxZi4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzNiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxo
dG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9o
ZWxwZXIuanMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjcmVnaW9u
IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiAxNTBweDsg
fQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPCEt
LQotICAgICAgICAxLiBUaGUgY29udGVudCBub2RlcyBjb2xsZWN0aW9uIGZvciBhIG5hbWVkIGZs
b3cgJ2Zsb3cnIGNvbnRhaW5zIG9ubHkgdGhvc2UgZWxlbWVudHMgdGhhdCBoYXZlCi0gICAgICAg
IHRoZSBzdHlsZSBwcm9wZXJ0eSAtd2Via2l0LWZsb3ctaW50byBzZXQgdG8gJ2Zsb3cnLgotICAg
ICAgICAyLiBJZiBhbiBlbGVtZW50IGhhcyBhbiBhbmNlc3RvciB3aXRoIC13ZWJraXQtZmxvdy1p
bnRvID0gJ2Zsb3cnIGJ1dCBkb2VzIG5vdCBoYXZlIGl0cyAnLXdlYmtpdC1mbG93LWludG8nCi0g
ICAgICAgIHNldCB0byAnZmxvdycgd2lsbCBub3QgYmUgbGlzdGVkIGFtb25nIHRoZSBjb250ZW50
IG5vZGVzIGZvciBuYW1lZCBmbG93ICdmbG93Jy4KLSAgICAgICAgMy4gRWxlbWVudHMgd2l0aCAn
LXdlYmtpdC1mbG93LWludG8nIHNldCB0byAnZmxvdycgYW5kICdkaXNwbGF5Om5vbmUnIHNob3Vs
ZCBiZSBsaXN0ZWQgYW1vbmcgdGhlIGNvbnRlbnQgbm9kZXMKLSAgICAgICAgZm9yIG5hbWVkIGZs
b3cgb2JqZWN0ICdmbG93Jy4KLSAgICAgICAgNC4gVGhlIGNvbGxlY3Rpb24gb2Ygbm9kZXMgaXMg
cmV0dXJuZWQgaW4gZG9jdW1lbnQgb3JkZXIuCi0gICAgICAgIC0tPgotICAgICAgICA8c2NyaXB0
PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHdp
bmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJU
ZXN0IGZvciA5MDE2MzogW0NTU1JlZ2lvbnNdUmVuYW1lIE5hbWVkRmxvdzo6Y29udGVudE5vZGVz
IHRvIE5hbWVkRmxvdzo6Z2V0Q29udGVudCgpIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbiBl
bGVtZW50IHRoYXQgd291bGQgYmUgY29sbGVjdGVkIGJ5IHRoZSBuYW1lZCBmbG93IGJ1dCBkbyBu
b3QgYWRkIGl0IHRvIHRoZSBET00sIHRoZSBjb250ZW50Tm9kZXMgc2hvdWxkIGJlIGVtcHR5Lgot
ICAgICAgICAgICAgdmFyIGFydGljbGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsK
LSAgICAgICAgICAgIGFydGljbGUuaWQgPSAiYXJ0aWNsZSI7Ci0gICAgICAgICAgICBhcnRpY2xl
LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotCi0gICAgICAgICAgICBzaG91bGRCZU51
bGwoJ2dldEZsb3dCeU5hbWUoImZsb3ciKScpOwotCi0gICAgICAgICAgICAvLyBBcHBlbmQgdGhl
IGFib3ZlIGVsZW1lbnQgdG8gdGhlIERPTS4gSXQgd2lsbCBiZSBjb2xsZWN0ZWQgYnkgdGhlIGZs
b3csIHRoZXJlZm9yZSB0aGUgY29udGVudE5vZGVzIHNob3VsZCBoYXZlIDEgZWxlbWVudC4KLSAg
ICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYXJ0aWNsZSk7Ci0gICAgICAgICAg
ICB2YXIgbmFtZWRGbG93Q29udGVudDMgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVu
dCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDMubGVu
Z3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0Nv
bnRlbnQzLml0ZW0oMCkuaWQiLCAiYXJ0aWNsZSIpOwotCi0gICAgICAgICAgICAvLyBBcHBlbmQg
YSBjaGlsZCBlbGVtZW50IHRvIHRoZSBhcnRpY2xlIGFib3ZlIGJ1dCBkbyBub3Qgc2V0IGl0cyBz
dHlsZSB0byBmbG93IGludG8gJ2Zsb3cnLgotICAgICAgICAgICAgLy8gVGhlIGNvbnRlbnROb2Rl
cyBzaG91bGQgc3RpbGwgaGF2ZSAxIGVsZW1lbnQuCi0gICAgICAgICAgICB2YXIgcE5vZGUgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7Ci0gICAgICAgICAgICBwTm9kZS5pZCA9ICJwMSI7
Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENo
aWxkKHBOb2RlKTsKLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50NCA9IGdldEZsb3dC
eU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRv
KCJuYW1lZEZsb3dDb250ZW50NC5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDQuaXRlbSgwKS5pZCIsICJhcnRpY2xlIik7Ci0K
LSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIGVsZW1lbnQgZGlyZWN0bHkgdG8gdGhlIGZsb3cg
YW5kIHNldCBpdHMgJ2Rpc3BsYXknIHByb3BlcnR5IHRvICdub25lJywgaXQgc2hvdWxkIGJlIHBh
cnQgb2YgdGhlIGZsb3cuCi0gICAgICAgICAgICB2YXIgYXJ0aWNsZTIgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAgICAgIGFydGljbGUyLmlkID0gImFydGljbGUyIjsK
LSAgICAgICAgICAgIGFydGljbGUyLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotICAg
ICAgICAgICAgYXJ0aWNsZTIuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICAgICAgICAgIGRv
Y3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKGFydGljbGUyLCBhcnRpY2xlKTsKLQotICAgICAgICAg
ICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQ1ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRl
bnQoKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQ1Lmxl
bmd0aCIsIDIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dD
b250ZW50NS5pdGVtKDApLmlkIiwgImFydGljbGUyIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQ1Lml0ZW0oMSkuaWQiLCAiYXJ0aWNsZSIpOwot
Ci0gICAgICAgICAgICAvLyBBZGRpbmcgYSByZWdpb24gZWxlbWVudCB0byBmbG93IGNvbnRlbnQg
aW50byBzaG91bGQgbm90IGluZmx1ZW5jZSB0aGUgY29udGVudCBub2RlcyBjb2xsZWN0aW9uLgot
ICAgICAgICAgICAgdmFyIHJlZ2lvbk5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKLSAgICAgICAgICAgIHJlZ2lvbk5vZGUuaWQgPSAicmVnaW9uIjsKLSAgICAgICAgICAgIGRv
Y3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uTm9kZSk7Ci0gICAgICAgICAgICB2YXIgbmFt
ZWRGbG93Q29udGVudDYgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOwotICAg
ICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDYubGVuZ3RoIiwgMik7
Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSBkaXNwbGF5Om5vbmUgZm9yIHRoZSAnYXJ0aWNsZTIn
IGVsZW1lbnQsIHRoZSBsaXN0IG9mIGNvbnRlbnROb2RlcyBzaG91bGQgc3RheSB0aGUgc2FtZQot
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuc3R5bGUuZGlz
cGxheSA9ICJibG9jayI7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDcgPSBnZXRG
bG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygibmFtZWRGbG93Q29udGVudDcubGVuZ3RoIiwgMik7Ci0KLSAgICAgICAgICAgIC8vIEFk
ZCBhIHAgYW5kIGEgc3BhbiB1bmRlciBwLiBNYWtlIHRoZSBzcGFuIGRpcmVjdGx5IGNvbGxlY3Rl
ZCBieSB0aGUgZmxvdy4gVGhlIGNvbnRlbnROb2RlcyBjb2xsZWN0aW9uIHNob3VsZCBoYXZlIDMg
ZWxlbWVudHMuCi0gICAgICAgICAgICBwTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAi
KTsKLSAgICAgICAgICAgIHBOb2RlLmlkID0gInAyIjsKLSAgICAgICAgICAgIHZhciBzcGFuTm9k
ZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKLSAgICAgICAgICAgIHNwYW5Ob2Rl
LmlkID0gInNwYW4xIjsKLSAgICAgICAgICAgIHNwYW5Ob2RlLnN0eWxlLndlYmtpdEZsb3dJbnRv
ID0gImZsb3ciOwotICAgICAgICAgICAgcE5vZGUuYXBwZW5kQ2hpbGQoc3Bhbk5vZGUpOwotICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hpbGQo
cE5vZGUpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDggPSBnZXRGbG93QnlO
YW1lKCJmbG93IikuZ2V0Q29udGVudCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
bmFtZWRGbG93Q29udGVudDgubGVuZ3RoIiwgMyk7Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSBk
aXNwbGF5IG9mIGFydGljbGUgbm9kZSB0byBub25lLCB0aGUgY29sbGVjdGlvbiBzaG91bGQgc3Rp
bGwgaGF2ZSAzIGVsZW1lbnRzLgotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotICAgICAgICAgICAgdmFyIG5hbWVk
Rmxvd0NvbnRlbnQ5ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKLSAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQ5Lmxlbmd0aCIsIDMpOwot
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50OS5pdGVt
KDApLmlkIiwgImFydGljbGUyIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
Im5hbWVkRmxvd0NvbnRlbnQ5Lml0ZW0oMSkuaWQiLCAic3BhbjEiKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDkuaXRlbSgyKS5pZCIsICJhcnRp
Y2xlIik7Ci0KLSAgICAgICAgICAgIC8vIFRha2UgJ2FydGljbGUnIG5vZGUgZnJvbSBsYXN0IHBv
c2l0aW9uIGFuZCBpbnNlcnQgaXQgYmVmb3JlICdhcnRpY2xlMicKLSAgICAgICAgICAgIGFydGlj
bGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwotICAgICAgICAgICAgZG9j
dW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhcnRpY2xl
KSwgYXJ0aWNsZTIpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQxMCA9IGdldEZs
b3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJuYW1lZEZsb3dDb250ZW50MTAubGVuZ3RoIiwgMyk7Ci0gICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQxMC5pdGVtKDApLmlkIiwgImFydGljbGUi
KTsKLQotICAgICAgICAgICAgLy8gQ2xvbmUgJ2FydGljbGUyJyBpbmNsdWRpbmcgaXRzIGNoaWxk
cmVuLgotICAgICAgICAgICAgdmFyIGFydGljbGUyQ2xvbmUgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiYXJ0aWNsZTIiKS5jbG9uZU5vZGUodHJ1ZSk7Ci0gICAgICAgICAgICBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKGFydGljbGUyQ2xvbmUpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxv
d0NvbnRlbnQxMSA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7Ci0gICAgICAg
ICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50MTEubGVuZ3RoIiwgNSk7Ci0g
ICAgICAgICAgICAvLyBSZW1vdmUgYXJ0aWNsZTIgbm9kZXMgZnJvbSBkb2N1bWVudCwgdGhleSBz
aG91bGQgYmUgcmVtb3ZlZCBmcm9tIGZsb3cuCi0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJl
bW92ZUNoaWxkKGFydGljbGUyKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hp
bGQoYXJ0aWNsZTJDbG9uZSk7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDEyID0g
Z2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKLSAgICAgICAgICAgIHNob3VsZEV2
YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDEyLml0ZW0oMCkuaWQiLCAiYXJ0
aWNsZSIpOwotCi0gICAgICAgICAgICAvLyBNb3ZlIHRoZSBjb250ZW50IG5vZGUgJ2FydGljbGUn
IGZyb20gbmFtZWQgZmxvdyAnZmxvdycgdG8gbmFtZWQgZmxvdyAnZmxvdzInCi0gICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLndlYmtpdEZsb3dJbnRv
ID0gImZsb3cyIjsKLSAgICAgICAgICAgIHZhciBmbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cy
Iik7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDExID0gZ2V0Rmxvd0J5TmFtZSgi
ZmxvdyIpLmdldENvbnRlbnQoKTsKLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50MTIg
PSBnZXRGbG93QnlOYW1lKCJmbG93MiIpLmdldENvbnRlbnQoKTsKLSAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMS5sZW5ndGgiLCAiMCIpOwotICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDEyLmxlbmd0aCIsICIxIik7Ci0g
ICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQxMi5pdGVt
KDApLmlkIiwgImFydGljbGUiKTsKLQotICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBjb250ZW50
IG5vZGUgZnJvbSBkb20sIGNvbnRlbnQgbm9kZXMgZm9yIGJvdGggJ2Zsb3cnIGFuZCAnZmxvdzIn
IHNob3VsZCBiZSBlbXB0eQotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpKTsKLSAgICAgICAgICAgIHNob3VsZEJl
TnVsbCgnZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKScpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRG
bG93Q29udGVudDEzID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKLSAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMy5sZW5ndGgiLCAiMCIp
OwotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDE0ID0gZmxvdzIuZ2V0Q29udGVu
dCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDE0Lmxl
bmd0aCIsICIwIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFydGlj
bGUpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQxNSA9IGZsb3cyLmdldENvbnRl
bnQoKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxNS5s
ZW5ndGgiLCAiMSIpOwotCi0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVn
aW9uIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICA8L3NjcmlwdD4KLSAg
ICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0Yzk4MGQwLi4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9u
cy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1UZXN0cyBXZWJL
aXROYW1lZEZsb3cuZ2V0UmVnaW9ucygpIGFuZCB0aGUgRE9NIG9yZGVyIG9mIHRoZSBsaXN0Ci0K
LU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1GbG93IGNvbnRlbnQKLVRlc3QgaWYgdGhl
IHJlZ2lvbnMgYXJlIGluIERPTSBvcmRlcgotUEFTUyBnZXRSZWdpb25BdCgwKS5pZCBpcyAicmVn
aW9uXzEiCi1QQVNTIGdldFJlZ2lvbkF0KDEpLmlkIGlzICJyZWdpb25fMiIKLUVtcHR5IGNvbnRl
bnQKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdl
dC1yZWdpb25zLXBzZXVkby1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGQ0YTk3OC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLWV4cGVj
dGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLVRlc3RzIFdlYktpdE5hbWVk
Rmxvdy5nZXRSZWdpb25zKCkgYW5kIHBzZXVkby1lbGVtZW50cyBhcyByZWdpb25zLgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAxCi1Q
QVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMAotUEFTUyByZWdpb25MaXN0
Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbl8yIgotUEFTUyByZWdpb25MaXN0Lml0ZW0oMCkud2Via2l0
UmVnaW9uT3ZlcnNldCBpcyAiZW1wdHkiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
Ci0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3Y2M1MjBmLi4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy1wc2V1ZG8u
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDc4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0Pgot
PHN0eWxlPgotICAgICNhcnRpY2xlIHsKLSAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGFydGlj
bGU7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAg
IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwotICAgIH0KLQotICAgICNyZWdpb25fMSB7Ci0gICAg
ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgdG9wOjIwMHB4OwotICAgICAgICBsZWZ0
OiAxMDBweDsKLSAgICB9Ci0KLSAgICAjcmVnaW9uXzE6OmJlZm9yZSB7Ci0gICAgICAgIGRpc3Bs
YXk6IGJsb2NrOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4Owot
ICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgLXdlYmtpdC1mbG93LWZy
b206IGFydGljbGU7Ci0gICAgfQotCi0gICAgI3JlZ2lvbl8xOjphZnRlciB7Ci0gICAgICAgIGRp
c3BsYXk6IGJsb2NrOwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4
OwotICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgLXdlYmtpdC1mbG93
LWZyb206IGFydGljbGU7ICAgIAotICAgIH0KLQotICAgICNyZWdpb25fMiB7Ci0gICAgICAgIC13
ZWJraXQtZmxvdy1mcm9tOiBhcnRpY2xlOwotICAgICAgICBoZWlnaHQ6NTBweDsKLSAgICAgICAg
d2lkdGg6NTBweDsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAgICB0b3A6IDIw
MHB4OwotICAgICAgICBsZWZ0OiAyMDBweDsKLSAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxh
Y2s7Ci0gICAgfQotCi08L3N0eWxlPgotPC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8IS0t
Ci0gICAgICAgIFRlc3QgdGhhdCBnZXRSZWdpb25zKCkgZnVuY3Rpb24gZnJvbSBOYW1lZEZsb3cg
aW50ZXJmYWNlIGRvZXMgbm90IGV4cG9zZSB0aGUgcHNldWRvLWVsZW1lbnRzIGFzCi0gICAgICAg
IHJlZ2lvbnMuCi0gICAgICAgIC0tPgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj48L2Rpdj4K
LQotICAgICAgICA8ZGl2IGlkPSJyZWdpb25fMSIgY2xhc3M9InJlZ2lvbl8xIj48L2Rpdj4KLSAg
ICAgICAgPGRpdiBpZD0icmVnaW9uXzIiIGNsYXNzPSJyZWdpb25fMiI+PC9kaXY+Ci0KLSAgICAg
ICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBXZWJLaXROYW1lZEZs
b3cuZ2V0UmVnaW9ucygpIGFuZCBwc2V1ZG8tZWxlbWVudHMgYXMgcmVnaW9ucy4iKQotICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFt
ZSgiYXJ0aWNsZSIpOwotCi0gICAgICAgICAgICAvLyBUaGUgcHNldWRvLWVsZW1lbnRzIGFyZSBu
b3QgeWV0IHJldHVybmVkIGJ5IGdldFJlZ2lvbnMoKQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxp
c3QgPSBuYW1lZEZsb3cuZ2V0UmVnaW9ucygpOwotICAgICAgICAgICAgc2hvdWxkQmUoInJlZ2lv
bkxpc3QubGVuZ3RoIiwgIjEiKTsKLSAgICAgICAgICAgIHNob3VsZEJlKCJuYW1lZEZsb3cuZmly
c3RFbXB0eVJlZ2lvbkluZGV4IiwgIjAiKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdC5pdGVtKDApLmlkIiwgInJlZ2lvbl8yIik7Ci0gICAgICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3QuaXRlbSgwKS53ZWJraXRSZWdpb25PdmVy
c2V0IiwgImVtcHR5Iik7Ci0KLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
cnRpY2xlIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIikuc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHNjcmlw
dCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotICAgIDwv
Ym9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJr
aXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGEwYzA5YTkuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2
NyArMCwwIEBACi08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5q
cyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0jYXJ0aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93LWludG86
IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Ci19Ci0jcmVnaW9uXzEsICNy
ZWdpb25fMnsKLSAgICBvdmVyZmxvdzp2aXNpYmxlOwotICAgIGRpc3BsYXk6aW5saW5lLWJsb2Nr
OwotICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsKLX0KLSNyZWdpb25f
MSB7IGhlaWdodDo1MDBweDsgd2lkdGg6MjAwcHg7IH0KLSNyZWdpb25fMiB7IGhlaWdodDo1MHB4
OyB3aWR0aDoyMDBweDsgfQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iYXJ0
aWNsZSI+Ci0gICAgPGRpdj4KLSAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdo
dDogMzAwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08
L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwv
ZGl2PgotCi08c2NyaXB0PgotICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBXZWJLaXROYW1lZEZsb3cu
Z2V0UmVnaW9ucygpIGFuZCB0aGUgRE9NIG9yZGVyIG9mIHRoZSBsaXN0IikKLSAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAg
fQotCi0gICAgZnVuY3Rpb24gZ2V0UmVnaW9uQXQoaW5kZXgpIHsKLSAgICAgICAgdmFyIGZsb3cg
PSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7Ci0gICAgICAgIHZhciByZWdpb25zID0gZmxvdy5n
ZXRSZWdpb25zKCk7Ci0gICAgICAgIGlmIChyZWdpb25zLmxlbmd0aCA8PSBpbmRleCkKLSAgICAg
ICAgICAgIHJldHVybiBudWxsOwotCi0gICAgICAgIHJldHVybiByZWdpb25zW2luZGV4XTsKLSAg
ICB9Ci0KLSAgICBmdW5jdGlvbiBmbG93Q29udGVudChmbG93TmFtZSkgewotICAgICAgICB2YXIg
ciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwotICAgICAgICByLnN0eWxl
LndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uXzIiKTsKLSAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZs
b3dOYW1lOwotICAgIH0KLQotICAgIGZ1bmN0aW9uIHRlc3QoKSB7Ci0gICAgICAgIGRlYnVnKCJG
bG93IGNvbnRlbnQiKTsKLSAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLQotICAgICAg
ICBkZWJ1ZygiVGVzdCBpZiB0aGUgcmVnaW9ucyBhcmUgaW4gRE9NIG9yZGVyIik7Ci0gICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygiZ2V0UmVnaW9uQXQoMCkuaWQiLCAicmVnaW9uXzEiKTsK
LSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJnZXRSZWdpb25BdCgxKS5pZCIsICJyZWdp
b25fMiIpOwotCi0gICAgICAgIGRlYnVnKCJFbXB0eSBjb250ZW50Iik7Ci0gICAgICAgIGZsb3dD
b250ZW50KG51bGwpOwotICAgIH0KLSAgICB0ZXN0KCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1pbnZhbGlkLW5hbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LWludmFsaWQtbmFtZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IGU4NjZmMWQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWludmFsaWQtbmFtZS1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi1UZXN0IGZvciA3OTY4NTogW0NTU1JlZ2lvbnNd
W0NTU09NXVByZXZlbnQgY3JlYXRpb24gb2YgTmFtZWRGbG93IG9iamVjdCBmb3IgaW52YWxpZCBm
bG93IG5hbWUKLQotT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBzZXJpZXMgb2YgUEFTUyBi
ZWxvdy4KLQotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwot
UEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1m
bG93LWludmFsaWQtbmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWludmFsaWQtbmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwZThmODc4Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAg
QEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3JlZ2lvbi1zdHlsZS5jc3MiPgotICAgICAg
ICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9oZWFk
PgotICAgIDxib2R5PgotICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzk2ODUiPjc5Njg1OiBbQ1NTUmVnaW9uc11bQ1NT
T01dUHJldmVudCBjcmVhdGlvbiBvZiBOYW1lZEZsb3cgb2JqZWN0IGZvciBpbnZhbGlkIGZsb3cg
bmFtZTwvYT48L3A+Ci0gICAgICAgIDxwPk9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIGEgc2Vy
aWVzIG9mIFBBU1MgYmVsb3cuPC9wPgotICAgICAgICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
LQotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAg
ICAgIC8vIFRyeSBzb21lIGludmFsaWQgbmFtZXMuIGF1dG8vZGVmYXVsdC9pbmhlcml0L2luaXRp
YWwvbm9uZSB2YWx1ZXMgYXJlIG5vdCBhbGxvd2VkCi0gICAgICAgICAgICAvLyBFbXB0eSBzdHJp
bmcgYW5kIC0xMnB4IGFyZSBub3QgaWRlbnRpZmllcnMsIHNvIHRoZXkgY2Fubm90IHJlcHJlc2Vu
dCB2YWxpZCBmbG93IG5hbWVzLgotICAgICAgICAgICAgLy8gVmFsaWQgZmxvdyBuYW1lcyBmb2xs
b3dlZCBieSBhbm90aGVyIGNzcyBwcm9wZXJ0eSBkbyBub3QgZm9ybSBhIHZhbGlkIGZsb3cgbmFt
ZS4KLSAgICAgICAgICAgIHZhciBhcnJGbG93SW52YWxpZE5hbWVzID0gWyJhdXRvIiwgImRlZmF1
bHQiLCAiaW5oZXJpdCIsICJpbml0aWFsIiwgIm5vbmUiLCAiIiwgIi0xMnB4IiwgImZsb3c7IGNv
bG9yOiByZWQ7Il07Ci0gICAgICAgICAgICB2YXIgYXJyTGVuID0gYXJyRmxvd0ludmFsaWROYW1l
cy5sZW5ndGg7Ci0gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyckxlbjsgKytpKSB7
Ci0gICAgICAgICAgICAgICAgdmFyIG51bGxOYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKGFyckZs
b3dJbnZhbGlkTmFtZXNbaV0pOwotICAgICAgICAgICAgICAgIGFzc2VydChudWxsTmFtZWRGbG93
ID09IG51bGwsICJOYW1lZCBmbG93IGZvciAiICsgYXJyRmxvd0ludmFsaWROYW1lc1tpXSArICIg
c2hvdWxkIGJlIG51bGwiKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLy8gSXQgc2hv
dWxkIG5vdCBiZSBwb3NzaWJsZSB0byBnZXQgdGhlIE5hbWVkRmxvdyBvYmplY3QgZm9yIGEgbWlz
c2luZyBmbG93LgotICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZs
b3ciKTsKLSAgICAgICAgICAgIGFzc2VydChuYW1lZEZsb3cgPT0gbnVsbCwgIk5hbWVkIGZsb3cg
Zm9yIGZsb3cgc2hvdWxkIGJlIG51bGwiKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5
PgotPC9odG1sPgotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIxZTVmZTQuLjAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW1vZGlmaWVkLWZsb3ctZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1UZXN0IGZvciA2NjY0MjogW0NT
U1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UKLQotR2V0dGluZyB0aGUgd2Vi
a2l0IGZsb3cgbmFtZSBmb3IgdGhlIHByZXZpb3VzIGZsb3cgc2hvdWxkIHJldHVybiBhIG5vbi1u
dWxsIG9iamVjdC4KLQotR2V0dGluZyB0aGUgd2Via2l0IGZsb3cgbmFtZSBmb3IgdGhlIG5ldyBm
bG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3QuCi0KLU9uIHN1Y2Nlc3MsIHlvdSBz
aG91bGQgc2VlIFBBU1MgYmVsb3cuCi0KLVBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZjNmYmQ2Li4wMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93Lmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSw2MCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgot
ICAgIDwhLS0KLSAgICBUZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjY2NDIgKFtDU1NSZWdpb25zXVtDU1NPTV0gSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRl
cmZhY2UpLgotICAgIE1vZGlmeSB0aGUgZmxvdyBuYW1lIGZvciBhbiBleGlzdGluZyBmbG93IHRo
cmVhZC4gCi0gICAgR2V0dGluZyB0aGUgd2Via2l0IGZsb3cgbmFtZSBmb3IgdGhlIHByZXZpb3Vz
IGZsb3cgcmV0dXJucyBhIHZhbGlkIG9iamVjdC4KLSAgICBHZXR0aW5nIHRoZSB3ZWJraXQgZmxv
dyBuYW1lIGZvciB0aGUgbmV3IGZsb3cgcmV0dXJucyBhIHZhbGlkIG9iamVjdC4KLSAgICBPbiBz
dWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBhIFBBU1MgYmVsb3cuCi0gICAgLS0+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLSAg
ICAgICAgPHN0eWxlPgotICAgICAgICAgICAgLnBhc3MgewotICAgICAgICAgICAgICAgIGZvbnQt
d2VpZ2h0OiBib2xkOwotICAgICAgICAgICAgICAgIGNvbG9yOiBncmVlbjsKLSAgICAgICAgICAg
IH0KLQotICAgICAgICAgICAgLmZhaWwgewotICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBi
b2xkOwotICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7Ci0gICAgICAgICAgICB9Ci0KLSAgICAg
ICAgICAgIC5mbG93IHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmZsb3cyIHsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZsb3ctaW50bzogZmxvdzI7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5u
b0Zsb3cgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBub25lOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9
InRlc3QoKSI+Ci0gICAgICAgIDxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVu
dCBOYW1lZEZsb3cgaW50ZXJmYWNlPC9hPjwvcD4KLSAgICAgICAgPHA+R2V0dGluZyB0aGUgd2Vi
a2l0IGZsb3cgbmFtZSBmb3IgdGhlIHByZXZpb3VzIGZsb3cgc2hvdWxkIHJldHVybiBhIG5vbi1u
dWxsIG9iamVjdC48L3A+Ci0gICAgICAgIDxwPkdldHRpbmcgdGhlIHdlYmtpdCBmbG93IG5hbWUg
Zm9yIHRoZSBuZXcgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KLSAg
ICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy48L3A+Ci0gICAg
ICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJmbG93Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBp
ZD0icmVzdWx0IiBjbGFzcz0iZmFpbCI+RkFJTDwvZGl2PgotICAgICAgICA8c2NyaXB0PgotICAg
ICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgICAgICAgICBmdW5jdGlvbiB0ZXN0KCkKLSAgICAgICAg
ICAgIHsKLSAgICAgICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxv
dyIpOwotICAgICAgICAgICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxv
dzIiKTsKLSAgICAgICAgICAgICAgICBpZiAoIW5hbWVkRmxvdyAmJiBuYW1lZEZsb3cyKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5l
clRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZXN1bHQiKS5jbGFzc05hbWUgPSAicGFzcyI7Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgfQotCi0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNs
ZSIpLmNsYXNzTmFtZSA9ICJmbG93MiI7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvYm9keT4K
LTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1uYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJr
aXQtbmFtZWQtZmxvdy1uYW1lLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNDhlZjY1Ni4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctbmFtZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiAr
MCwwIEBACi1UaGlzIHRlc3RzIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgJ25hbWUnIGF0dHJp
YnV0ZSBvbiB0aGUgTmFtZWRGbG93IG9iamVjdCBhdHRhY2hlZCB0byBhIGZsb3cgdGhyZWFkLiBG
b3IgbW9yZSBkZXRhaWxzIHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEyL1dELWNzczMtcmVn
aW9ucy0yMDEyMDUwMy8jZG9tLW5hbWVkLWZsb3cKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgotCi0KLVBBU1MgbmFtZWRGbG93Lm5hbWUgaXMgJ2Zsb3ctbmFtZScKLVBBU1MgbmFtZWRGbG93
Lm5hbWUgaXMgJ2Zsb3ctbmFtZScKLVBBU1MgbmFtZWRGbG93Lm5hbWUgaXMgJ2Zsb3ctbmFtZScK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbmFtZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUuaHRt
bApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWJiNTdlYS4uMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbmFtZS5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotPG1ldGEgY2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5q
cyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0gICAgLmZsb3cgeyAtd2Via2l0LWZsb3ctaW50bzogZmxv
dy1uYW1lOyB9Ci0gICAgLnJlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93LW5hbWU7IH0K
LSAgICAjcmVnaW9uIHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLTwvc3R5bGU+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8cCBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPlRoZSBjb250
ZW50IGZsb3c8L3A+Ci08c2NyaXB0PgotCi1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGUgaW1w
bGVtZW50YXRpb24gb2YgdGhlICduYW1lJyBhdHRyaWJ1dGUgb24gdGhlIE5hbWVkRmxvdyBvYmpl
Y3QgYXR0YWNoZWQgdG8gYSBmbG93IHRocmVhZC4gXAotICAgICAgICAgICAgRm9yIG1vcmUgZGV0
YWlscyBzZWUgaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMi9XRC1jc3MzLXJlZ2lvbnMtMjAxMjA1
MDMvI2RvbS1uYW1lZC1mbG93Iik7Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKLQotLy8gRmxvdyBhcnRpY2xlIGRvZXMgbm90IGhhdmUgYW55
IHJlZ2lvbnMgeWV0Ci12YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdy1uYW1lIik7
Ci0KLS8vIFRoZSBuYW1lIHNob3VsZCBiZSAnZmxvdy1uYW1lJyB3aGVuIHRoZXJlIGFyZSBubyBy
ZWdpb25zIHRvIGZsb3cgaW50bwotc2hvdWxkQmUoIm5hbWVkRmxvdy5uYW1lIiwgIidmbG93LW5h
bWUnIik7Ci0KLS8vIEFkZCBhIHJlZ2lvbiB0byB0YWtlIHRoZSBjb250ZW50LCB0aGUgbmFtZSBz
aG91bGQgYmUgdGhlIHNhbWUKLXZhciByZWdpb24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJk
aXYiKTsKLWRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uKTsKLXJlZ2lvbi5pZCA9ICJy
ZWdpb24iOwotcmVnaW9uLmNsYXNzTmFtZSA9ICJyZWdpb24iOwotCi0vLyBUaGUgbmFtZSBzaG91
bGQgYmUgJ2Zsb3ctbmFtZScgd2hlbiB0aGVyZSBhcmUgcmVnaW9ucyB0byBmbG93IGludG8KLXNo
b3VsZEJlKCJuYW1lZEZsb3cubmFtZSIsICInZmxvdy1uYW1lJyIpOwotCi12YXIgYXJ0aWNsZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0KLS8vIFJlbW92ZSB0aGUgZmxv
dyBhbmQgdGhlIHJlZ2lvbiBlbGVtZW50LCBtb3ZlIHRoZSBOYW1lZEZsb3cgb2JqZWN0IGluIHRo
ZSBOVUxMIHN0YXRlCi1yZWdpb24uY2xhc3NOYW1lID0gIiI7Ci1hcnRpY2xlLmNsYXNzTmFtZSA9
ICIiOwotcmVnaW9uLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci1hcnRpY2xlLnN0eWxlLmRpc3Bs
YXkgPSAibm9uZSI7Ci0KLS8vIFRoZSBuYW1lIHNob3VsZCBiZSAnZmxvdy1uYW1lJyB3aGVuIHRo
ZSBuYW1lZCBmbG93IGlzIGluIHRoZSBOVUxMIHN0YXRlCi1zaG91bGRCZSgibmFtZWRGbG93Lm5h
bWUiLCAiJ2Zsb3ctbmFtZSciKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlz
dGluZy1mbG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IGVhMzIxZjcuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotVGVzdCBmb3IgNjY2NDI6IFtDU1NSZWdpb25z
XUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlCi0KLUdldHRpbmcgYSBXZWJLaXROYW1lZEZs
b3cgb2JqZWN0IGZvciBhIG5vbi1leGlzdGFudCBmbG93IHNob3VsZCByZXR1cm4gYSBub24tbnVs
bCBvYmplY3QuCi0KLU9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCi0KLVBB
U1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ub24tZXhpc3RpbmctZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGYxMDQ4MGUuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93Lmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw0MCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDwhLS0KLSAgICBU
ZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIgKFtD
U1NSZWdpb25zXVtDU1NPTV0gSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgotICAgIFRl
c3QgdGhhdCBnZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IGZvciBhIG5vbi1leGlzdGFudCBmbG93
IHJldHVybnMgYSBub24tbnVsbCBvYmplY3QuCi0gICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBz
ZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAg
ICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKLSAgICAg
ICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5m
YWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAg
ICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2NjQyIj42NjY0MjogW0NTU1JlZ2lvbnNdSW1w
bGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2U8L2E+PC9wPgotICAgICAgICA8cD5HZXR0aW5nIGEg
V2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3IgYSBub24tZXhpc3RhbnQgZmxvdyBzaG91bGQgcmV0
dXJuIGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNo
b3VsZCBzZWUgUEFTUyBiZWxvdy48L3A+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPjwvZGl2
PgotICAgICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIHZhciBuYW1l
ZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICBpZiAoIW5hbWVkRmxv
dykgewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5p
bm5lclRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlc3VsdCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUuZGlzcGxheSA9ICJu
b25lIjsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW92
ZXJzZXQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNWVhNTcw
Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1vdmVyc2V0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLVRl
c3QgZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NzQ5MSBbQ1NT
IFJlZ2lvbnNdUmVuYW1lIE5hbWVkRmxvdzo6b3ZlcmZsb3cgdG8gTmFtZWRGbG93OjpvdmVyc2V0
LiBGb3IgbW9yZSBkZXRhaWxzIHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEyL1dELWNzczMt
cmVnaW9ucy0yMDEyMDUwMy8KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mg
bmFtZWRGbG93Lm92ZXJzZXQgaXMgdHJ1ZQotUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyBmYWxz
ZQotUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyB0cnVlCi1QQVNTIG5hbWVkRmxvdy5vdmVyc2V0
IGlzIGZhbHNlCi1QQVNTIG5hbWVkRmxvdy5vdmVyc2V0IGlzIHRydWUKLVBBU1MgbmFtZWRGbG93
Lm92ZXJzZXQgaXMgZmFsc2UKLVBBU1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMgdHJ1ZQotUEFTUyBu
YW1lZEZsb3cub3ZlcnNldCBpcyBmYWxzZQotUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyB0cnVl
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJz
ZXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1vdmVy
c2V0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUwOTdhNmIuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNl
cy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJvZHkgeyBmb250LWZhbWlseTog
bW9ub3NwYWNlOyB9Ci0gICAgLmZsb3cgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdyB9Ci0gICAg
LnJlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB9Ci0gICAgI3JlZ2lvbiB7IHdpZHRo
OiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0gICAgI3JlZ2lvbjIgeyB3aWR0aDogMjUwcHg7IGhl
aWdodDogNTBweDsgfQotICAgICNyZWdpb24zIHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7
IH0KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJm
bG93Ij4KLSAgICA8cD5Db250ZW50IGluc2lkZSBhcnRpY2xlPC9wPgotPC9kaXY+Ci08c2NyaXB0
PgotICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9ODc0OTEgW0NTUyBSZWdpb25zXVJlbmFtZSBOYW1lZEZsb3c6Om92ZXJmbG93
IHRvIE5hbWVkRmxvdzo6b3ZlcnNldC4gXAotICAgICAgICAgICAgICAgIEZvciBtb3JlIGRldGFp
bHMgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvV0QtY3NzMy1yZWdpb25zLTIwMTIwNTAz
LyIpOwotCi0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICB3aW5kb3cudGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAvLyBGbG93IGFydGljbGUgZG9lcyBub3QgaGF2ZSBh
bnkgcmVnaW9ucyB5ZXQKLSAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIp
OwotCi0gICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2UgZm9yIGEgZmxvdyB3aXRob3V0IHJl
Z2lvbnMKLSAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJzZXQiLCAidHJ1ZSIpOwotCi0gICAg
Ly8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhlIGNvbnRlbnQsIG92ZXJzZXQgc2hvdWxkIGJlIGZh
bHNlIHNpbmNlIHRoZSBjb250ZW50IGZpcnN0IHRoZSByZWdpb25zLgotICAgIHZhciByZWdpb24g
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBkb2N1bWVudC5ib2R5LmFwcGVu
ZENoaWxkKHJlZ2lvbik7Ci0gICAgcmVnaW9uLmlkID0gInJlZ2lvbiI7Ci0gICAgcmVnaW9uLmNs
YXNzTmFtZSA9ICJyZWdpb24iOwotCi0gICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ugc2lu
Y2UgdGhlIGNvbnRlbnQgZml0cyB0aGUgcmVnaW9ucwotICAgIHNob3VsZEJlKCJuYW1lZEZsb3cu
b3ZlcnNldCIsICJmYWxzZSIpOwotCi0gICAgLy8gQWRkIG1vcmUgY29udGVudCB0byB0aGUgZmxv
dywgb3ZlcnNldCBzaG91bGQgYmUgdHJ1ZS4KLSAgICB2YXIgcCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoInAiKTsKLSAgICBwLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJD
b250ZW50IGluc2lkZSBhcnRpY2xlIikpOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
cnRpY2xlIikuYXBwZW5kQ2hpbGQocCk7Ci0KLSAgICAvLyBPdmVyc2V0IHNob3VsZCBiZSB0cnVl
IHNpbmNlIHRoZSBjb250ZW50IGRvZXMgbm90IGZpdCB0aGUgcmVnaW9ucwotICAgIHNob3VsZEJl
KCJuYW1lZEZsb3cub3ZlcnNldCIsICJ0cnVlIik7Ci0KLSAgICAvLyBBZGQgYW5vdGhlciByZWdp
b24sIG92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlCi0gICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lv
bjIpOwotICAgIHJlZ2lvbjIuaWQgPSAicmVnaW9uMiI7Ci0gICAgcmVnaW9uMi5jbGFzc05hbWUg
PSAicmVnaW9uIjsKLQotICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRoZSBj
b250ZW50IGZpdHMgaW4gdGhlIHJlZ2lvbnMKLSAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJz
ZXQiLCAiZmFsc2UiKTsKLQotICAgIC8vIEFkZCB2aXN1YWwgb3ZlcnNldCwgb3ZlcnNldCBzaG91
bGQgYmUgdHJ1ZS4KLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxl
LndlYmtpdEJveFNoYWRvdz0iMHB4IDUwcHggbGltZSI7Ci0KLSAgICAvLyBPdmVyc2V0IHNob3Vs
ZCBiZSB0cnVlIHNpbmNlIHRoZSBjb250ZW50IGRvZXMgbm90IGZpdCBpbiByZWdpb25zCi0gICAg
c2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgInRydWUiKTsKLQotICAgIC8vIEFkZCB0aGUg
dGhpcmQgcmVnaW9uLCBvdmVyc2V0IHNob3VsZCBiZSBmYWxzZS4KLSAgICB2YXIgcmVnaW9uMyA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQocmVnaW9uMyk7Ci0gICAgcmVnaW9uMy5pZCA9ICJyZWdpb24zIjsKLSAgICByZWdpb24z
LmNsYXNzTmFtZSA9ICJyZWdpb24iOwotCi0gICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ug
c2luY2UgdGhlIGNvbnRlbnQgZml0cyBpbiByZWdpb25zCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxv
dy5vdmVyc2V0IiwgImZhbHNlIik7Ci0KLSAgICAvLyBSZW1vdmUgdGhlIGZpcnN0IHJlZ2lvbiBm
cm9tIHRoZSBmbG93LCBvdmVyc2V0IHNob3VsZCBiZSB0cnVlLgotICAgIHJlZ2lvbi5jbGFzc05h
bWUgPSAiIjsKLQotICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIHRydWUgc2luY2UgdGhlIGNvbnRl
bnQgZG9lcyBub3QgZml0IHRoZSByZWdpb25zCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVy
c2V0IiwgInRydWUiKTsKLQotICAgIC8vIFJlbW92ZSB0aGUgY29udGVudCBmcm9tIHRoZSBmbG93
LCBvdmVyc2V0IHNob3VsZCBiZSBmYWxzZS4KLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOwotCi0gICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFs
c2Ugc2luY2UgdGhlIGZsb3cgZG9lcyBub3QgaGF2ZSBhbnkgY29udGVudAotICAgIHNob3VsZEJl
KCJuYW1lZEZsb3cub3ZlcnNldCIsICJmYWxzZSIpOwotCi0gICAgLy8gUmVtb3ZlIGFsbCB0aGUg
cmVnaW9ucyBmcm9tIHRoZSBmbG93Ci0gICAgcmVnaW9uMi5jbGFzc05hbWUgPSByZWdpb24zLmNs
YXNzTmFtZSA9ICIiOwotCi0gICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgdHJ1ZSBzaW5jZSB0aGUg
ZmxvdyBkb2VzIG5vdCBoYXZlIGFueSByZWdpb24gY2hhaW4KLSAgICBzaG91bGRCZSgibmFtZWRG
bG93Lm92ZXJzZXQiLCAidHJ1ZSIpOwotCi0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFy
dGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotICAgIHJlZ2lvbi5zdHlsZS5kaXNwbGF5
ID0gIm5vbmUiOwotICAgIHJlZ2lvbjIuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICByZWdp
b24zLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1y
ZW1vdmVkLWZsb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDNhNGMyMjguLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSw3ICswLDAgQEAKLVRlc3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1l
bnQgTmFtZWRGbG93IGludGVyZmFjZQotCi1HZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVj
dCBmb3IgYSBmbG93IHRoYXQgd2FzIHJlbW92ZWQgcmV0dXJucyBhIG5vbi1udWxsIG9iamVjdC4K
LQotT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4KLQotUEFTUwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQt
Zmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJl
bW92ZWQtZmxvdy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNDQxMmRlLi4w
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1y
ZW1vdmVkLWZsb3cuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAgQEAKLTwhZG9jdHlw
ZSBodG1sPgotPGh0bWw+Ci0gICAgPCEtLQotICAgIFRlc3QgZm9yIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiAoW0NTU1JlZ2lvbnNdW0NTU09NXSBJbXBsZW1l
bnQgTmFtZWRGbG93IGludGVyZmFjZSkuCi0gICAgVGVzdCB0aGF0IGdldHRpbmcgYSBXZWJLaXRO
YW1lZEZsb3cgZm9yIGEgZmxvdyB0aGF0IHdhcyByZW1vdmVkIHJldHVybnMgYSB2YWxpZCBub24t
bnVsbCBvYmplY3QuCi0gICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93
LgotICAgIC0tPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hl
bHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5wYXNzIHsK
LSAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xv
cjogZ3JlZW47Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5mYWlsIHsKLSAgICAgICAg
ICAgICAgICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogcmVkOwot
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAuZmxvdyB7Ci0gICAgICAgICAgICAgICAgLXdl
YmtpdC1mbG93LWludG86IGZsb3c7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ub0Zs
b3cgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBub25lOwotICAgICAgICAg
ICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRl
c3QoKSI+Ci0gICAgICAgIDxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBO
YW1lZEZsb3cgaW50ZXJmYWNlPC9hPjwvcD4KLSAgICAgICAgPHA+R2V0dGluZyBhIFdlYktpdE5h
bWVkRmxvdyBvYmplY3QgZm9yIGEgZmxvdyB0aGF0IHdhcyByZW1vdmVkIHJldHVybnMgYSBub24t
bnVsbCBvYmplY3QuPC9wPgotICAgICAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQ
QVNTIGJlbG93LjwvcD4KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPjwv
ZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0g
ICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIC8vIEdl
dCB0aGUgbmFtZWQgZmxvdyBvYmplY3QgYmVmb3JlIHJlbW92aW5nIHRoZSBmbG93IHRocmVhZC4K
LSAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAg
ICAgICAgICB2YXIgbmFtZWRGbG93MjsKLQotICAgICAgICAgICAgZnVuY3Rpb24gdGVzdCgpCi0g
ICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUo
ImZsb3ciKTsKLSAgICAgICAgICAgICAgICBpZiAobmFtZWRGbG93ICYmICFuYW1lZEZsb3cyKSB7
Ci0gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5p
bm5lclRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZXN1bHQiKS5jbGFzc05hbWUgPSAicGFzcyI7Ci0gICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0
aWNsZSIpLmNsYXNzTmFtZSA9ICJub0Zsb3ciOwotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2Jv
ZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctc2FtZS1vYmplY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUtb2JqZWN0LWV4cGVjdGVkLnR4dApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGRmMGVhNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1vYmplY3QtZXhwZWN0ZWQudHh0
CisrKyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1UZXN0IGZvciA2NjY0MjogW0NTU1JlZ2lv
bnNdSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UKLQotQXNraW5nIGZvciB0aGUgc2FtZSB3
ZWJraXQgbmFtZWQgZmxvdyB0d2ljZSBzaG91bGQgcmV0dXJuIHRoZSBzYW1lIG5vbi1udWxsIG9i
amVjdC4KLQotT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4KLQotUEFTUwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXNh
bWUtb2JqZWN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctc2FtZS1vYmplY3QuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjQyZTEw
NC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctc2FtZS1vYmplY3QuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ0ICswLDAgQEAKLTwhZG9j
dHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPCEtLQotICAgIFRlc3QgZm9yIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiAoW0NTU1JlZ2lvbnNdW0NTU09NXSBJbXBs
ZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZSkuCi0gICAgVGVzdCB0aGF0IGFza2luZyBmb3IgdGhl
IHNhbWUgd2Via2l0IG5hbWVkIGZsb3cgdHdpY2UgcmV0dXJucyB0aGUgc2FtZSBvYmplY3QuCi0g
ICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAg
IDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAg
ICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5mYWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdl
aWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICAuZmxvdyB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86
IGZsb3c7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5PgotICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQg
TmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+Ci0gICAgICAgIDxwPkFza2luZyBmb3IgdGhlIHNh
bWUgd2Via2l0IG5hbWVkIGZsb3cgdHdpY2Ugc2hvdWxkIHJldHVybiB0aGUgc2FtZSBub24tbnVs
bCBvYmplY3QuPC9wPgotICAgICAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNT
IGJlbG93LjwvcD4KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPjwvZGl2
PgotICAgICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIHZhciBuYW1l
ZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93
MiA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKLSAgICAgICAgICAgIGlmIChuYW1lZEZsb3cgPT09
IG5hbWVkRmxvdzIpIHsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVzdWx0IikuaW5uZXJUZXh0ID0gIlBBU1MiOwotICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5jbGFzc05hbWUgPSAicGFzcyI7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216034</attachid>
            <date>2013-11-05 06:52:43 -0800</date>
            <delta_ts>2013-11-05 07:28:18 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-123705-20131105165302.patch</filename>
            <type>text/plain</type>
            <size>598656</size>
            <attacher name="Mihnea Ovidenie">mihnea</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU4NjYxCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzQ1NWYzYzdjM2ZkYzY0Mjg1ZTcz
MzZhMGFhYzM3YTViYWQxNmViMi4uOTU4N2YzMGVmNTk2YjgyMzdhZTkzMjBiZWY1ZjM3MDM1MTI1
NTBmNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1NCBAQAorMjAxMy0xMS0wNSAgTWlobmVhIE92aWRlbmll
ICA8bWlobmVhQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNdIE1vdmUgY3Nzb20g
cmVsYXRlZCB0ZXN0cyBpbnRvIGZhc3QvcmVnaW9ucy9jc3NvbQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzNzA1CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgU2FtIFdlaW5pZy4KKworICAgICAgICBNb3ZlIHRlc3RzIHJlbGF0ZWQgdG8gaHR0cDovL2Rl
di53My5vcmcvY3Nzd2cvY3NzLXJlZ2lvbnMvI2Nzc29tX3ZpZXdfYW5kX2Nzc19yZWdpb25zIGlu
dG8gdGhlaXIgb3duIGZvbGRlciBhbmQgYWRqdXN0IHBhdGhzIGZvciByZXNvdXJjZXMgdXNlZCBp
biB0ZXN0cy4KKyAgICAgICAgVGhleSB0ZXN0IHRoZSBzYW1lIGZ1bmN0aW9uYWxpdHk6IENTU1Jl
Z2lvbnMgYW5kIENTU09NLXZpZXcuCisKKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZWxl
bWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1leHBlY3Rl
ZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJz
ZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZy
b20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUt
bmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1z
cGFjaW5nLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVu
dC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy5odG1sLgorICAg
ICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZl
cnRpY2FsLXJsLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1z
dGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNl
dC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQu
CisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3Rh
dGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcuaHRtbDogUmVuYW1lZCBmcm9t
IExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZl
cnRpY2FsLXJsLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLmh0bWwuCisgICAgICAgICogZmFzdC9y
ZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwuaHRt
bDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1v
dmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUuaHRtbDogUmVuYW1lZCBmcm9tIExheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLmh0bWwuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVu
dC1yZWN0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQuCisgICAg
ICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1y
ZWN0LWhvcml6b250YWwtYnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250
YWwtYnQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQt
Y29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1ob3Jpem9udGFsLWJ0Lmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xp
ZW50LXJlY3QtaG9yaXpvbnRhbC1idC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3Nv
bS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1leHBlY3RlZC50
eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQt
Ym91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZh
c3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0
aWNhbC1ybC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtcmwtZXhwZWN0
ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3Vu
ZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1ybC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRp
Y2FsLXJsLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50
LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVy
dGljYWwuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQt
Ym91bmRpbmctY2xpZW50LXJlY3QuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sLgorICAgICAg
ICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC10cmFuc2Zvcm0tYm91bmRpbmct
Y2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBl
Y3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LXRy
YW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQt
cmVjdC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtaW5saW5lLWNv
bnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGll
bnQtcmVjdC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dl
ZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sOiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1j
bGllbnQtcmVjdC5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9u
LWZsb3ctcmFuZ2VzLWFic29sdXRlLXBvcy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNvbHV0ZS1wb3Mt
ZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZs
b3ctcmFuZ2VzLWFic29sdXRlLXBvcy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtYWJzb2x1dGUtcG9zLmh0bWwuCisgICAg
ICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1u
b2Rlcy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVzLWV4cGVjdGVkLnR4dC4KKyAgICAg
ICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5v
ZGVzLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVzLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLWV4cGVjdGVkLnR4dDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLWRpc3BsYXktbm9uZS1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLmh0bWw6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5
LW5vbmUuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy1lbXB0eS1yZWdpb25zLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMtZXhw
ZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLWVtcHR5LXJlZ2lvbnMuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMuaHRtbC4KKyAgICAg
ICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1leHBlY3RlZC50
eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWZpeGVkLXBvcy1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtZml4ZWQtcG9zLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhlZC1wb3MuaHRtbC4KKyAgICAgICAgKiBm
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC1leHBlY3Rl
ZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1ob3Jpei1idC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQuaHRtbDogUmVuYW1lZCBmcm9t
IExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWhvcml6LWJ0
Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtaW5saW5lLW9ubHktZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLW9ubHktZXhwZWN0ZWQudHh0
LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlu
bGluZS1vbmx5Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS5odG1sLgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmctZXhwZWN0ZWQudHh0
OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtaW5saW5lLXN2Zy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2Zy5odG1sOiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLXN2
Zy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLXRleHQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC1leHBlY3RlZC50eHQuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0LWxyLWV4
cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC12ZXJ0LWxyLmh0bWw6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy10ZXh0LXZlcnQtbHIuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0Lmh0bWwuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1sci1leHBlY3Rl
ZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
Y3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLmh0bWw6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLmh0
bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
dmVydC1ybC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLWV4cGVjdGVkLnR4dC4KKyAgICAgICAg
KiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLmh0bWw6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy12ZXJ0LXJsLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy1ybC1yYi1sci1leHBlY3RlZC50eHQ6IFJlbmFt
ZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13
cml0aW5nLW1vZGVzLXJsLXJiLWxyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lv
bnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0
bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdp
b25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci1l
eHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLWV4cGVjdGVkLnR4dC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5n
LW1vZGVzLXRiLXJsLWxyLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLmh0bWwuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMuaHRtbDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNv
bnRlbnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0LWV4cGVjdGVkLnR4dDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250
ZW50LWhvcml6LWJ0LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1idC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotYnQuaHRtbC4K
KyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jp
ei10Yi1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi1leHBlY3RlZC50eHQuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGIuaHRtbDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250
ZW50LWhvcml6LXRiLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdp
b25zLWJ5LWNvbnRlbnQtcHNldWRvLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby1leHBlY3RlZC50
eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQt
cHNldWRvLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbnMtYnktY29udGVudC1wc2V1ZG8uaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LWxyLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQt
bHItZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9u
cy1ieS1jb250ZW50LXZlcnQtbHIuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtbHIuaHRtbC4KKyAgICAgICAgKiBm
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLWV4cGVjdGVk
LnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1i
eS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwuaHRtbDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwuaHRt
bC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC5o
dG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5
LWNvbnRlbnQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMt
YnktY29udGVudDItZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQyLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBm
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudDIuaHRtbDogUmVuYW1lZCBm
cm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50Mi5odG1s
LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1t
dWx0aXBsZS1yZWdpb25zLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25zLWV4cGVj
dGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRU
b3AtaW4tbXVsdGlwbGUtcmVnaW9ucy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMuaHRtbC4K
KyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVn
aW9uLWFic29sdXRlLXN0aWNreS1maXhlZC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWFic29s
dXRlLXN0aWNreS1maXhlZC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nz
c29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQu
aHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9m
ZnNldFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLmh0bWwuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC1l
eHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0
TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBm
YXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZl
cnQtcmwtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC12ZXJ0LXJsLWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4t
cmVnaW9uLWZsb2F0LXZlcnQtcmwuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC5odG1s
LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1y
ZWdpb24tZmxvYXQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9v
ZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQuaHRtbC4KKyAgICAgICAgKiBmYXN0
L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4tZWxl
bWVudC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
b2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4tZWxlbWVudC1leHBlY3RlZC50
eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWlu
bGluZXMtcmVnaW9uLWluLWVsZW1lbnQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbmxpbmVzLXJlZ2lvbi1pbi1lbGVtZW50
Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1ib2R5LWlu
LWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1ib2R5LWluLWZsb3ctdGhy
ZWFkLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0UGFy
ZW50LWJvZHktaW4tZmxvdy10aHJlYWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nz
b20vb2Zmc2V0UGFyZW50LWluLWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9t
IExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQtZXhw
ZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQYXJlbnQtaW4t
Zmxvdy10aHJlYWQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9v
ZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
Y3Nzb20vb3ZlcnNldC1icmVhay1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWstbmVzdGVkLWV4cGVjdGVkLnR4dDogUmVuYW1l
ZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLW5lc3RlZC1leHBl
Y3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWstbmVz
dGVkLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1i
cmVhay1uZXN0ZWQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1i
cmVhay13aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1zaWJsaW5nLWV4cGVjdGVkLnR4dC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmcuaHRt
bDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLXdp
dGgtc2libGluZy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJy
ZWFrLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1i
cmVhay5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9y
LWJveC1jcmFzaC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvcmVnaW9uLXJhbmdlLWZvci1ib3gtY3Jhc2gtZXhwZWN0ZWQudHh0LgorICAgICAgICAq
IGZhc3QvcmVnaW9ucy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFzaC5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3JlZ2lvbi1yYW5nZS1mb3ItYm94LWNy
YXNoLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWNvbGxlY3Rpb24tY3Jhc2gtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2gtZXhwZWN0ZWQu
dHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xs
ZWN0aW9uLWNyYXNoLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1jcmFzaC5odG1sLgorICAgICAgICAqIGZhc3Qv
cmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5LWdldHRlcnMt
ZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy1leHBlY3RlZC50eHQuCisgICAg
ICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1w
dHktZ2V0dGVycy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1sLgorICAgICAgICAq
IGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVk
LnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nz
b20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24uaHRtbC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRv
LWZsb3ctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWFkZC10by1mbG93LWV4cGVjdGVkLnR4dC4KKyAgICAg
ICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZs
b3cuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9j
c3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRvLWhlaWdodC1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZl
bnQtYXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRvLWhlaWdodC5odG1sOiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWF1dG8taGVp
Z2h0Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LWNyYXNoLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC1leHBlY3RlZC50eHQuCisgICAg
ICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNoLmh0
bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtY3Jhc2guaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWV4cGVjdGVkLnR4dC4KKyAgICAg
ICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9u
cy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9ucy1leHBlY3RlZC50eHQuCisgICAgICAgICog
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMuaHRt
bDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1uby1yZWdpb25zLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dl
YmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdl
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJr
aXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLmh0bWw6IFJlbmFt
ZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQt
cmVnaW9uLWluLWZsZXhib3gtbm8tb3ZlcnNldC1jaGFuZ2UuaHRtbC4KKyAgICAgICAgKiBmYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gt
b3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJz
ZXQtY2hhbmdlLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UuaHRt
bDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1yZWdpb24taW4tZmxleGJveC1vdmVyc2V0LWNoYW5nZS5odG1sLgorICAgICAgICAq
IGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1k
b20tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS1leHBlY3RlZC50eHQuCisgICAg
ICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1m
cm9tLWRvbS5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS5odG1sLgorICAgICAgICAqIGZhc3Qv
cmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93LWV4
cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93LWV4cGVjdGVkLnR4dC4KKyAgICAgICAg
KiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20t
Zmxvdy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cuaHRtbC4KKyAgICAgICAgKiBmYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dDog
UmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1l
dmVudC10YXJnZXQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1ldmVudC10YXJnZXQuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC10YXJnZXQuaHRtbC4KKyAg
ICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVs
bC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRvLW51bGwuaHRtbDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC10by1udWxsLmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1l
ZC1mbG93LWV2ZW50Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nz
b20vd2Via2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXhpc3Rpbmct
Zmxvdy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWV4aXN0aW5nLWZsb3cuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1leGlzdGluZy1mbG93Lmh0bWwuCisgICAgICAg
ICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lv
bi1pbmRleC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4LWV4cGVjdGVkLnR4
dC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZmlyc3Qt
ZW1wdHktcmVnaW9uLWluZGV4Lmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4Lmh0bWwuCisg
ICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWZsb3ctYWRkZWQt
ZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LWZsb3ctYWRkZWQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93LWFkZGVkLmh0bWw6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC5o
dG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQt
Y29udGVudC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQtZXhwZWN0ZWQudHh0LgorICAgICAgICAq
IGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQtY29udGVudC5odG1sOiBS
ZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdl
dC1jb250ZW50Lmh0bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1l
ZC1mbG93LWdldC1yZWdpb25zLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy1leHBlY3RlZC50eHQu
CisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdp
b25zLXBzZXVkby1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLWV4cGVjdGVkLnR4dC4K
KyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lv
bnMtcHNldWRvLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLmh0bWwuCisgICAgICAgICogZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLmh0bWw6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lv
bnMuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
aW52YWxpZC1uYW1lLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUtZXhwZWN0ZWQudHh0LgorICAg
ICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUu
aHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1pbnZhbGlkLW5hbWUuaHRtbC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1l
eHBlY3RlZC50eHQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LW1vZGlmaWVkLWZsb3cuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93Lmh0bWwuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUtZXhwZWN0ZWQudHh0OiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUt
ZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1uYW1lLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctbmFtZS5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbm9uLWV4aXN0
aW5nLWZsb3ctZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJr
aXQtbmFtZWQtZmxvdy1ub24tZXhpc3RpbmctZmxvdy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93Lmh0
bWwuCisgICAgICAgICogZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJz
ZXQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LW92ZXJzZXQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGZhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1vdmVyc2V0Lmh0bWw6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctb3ZlcnNldC5odG1sLgor
ICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZs
b3ctZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy1leHBlY3RlZC50eHQuCisgICAgICAgICogZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy5odG1sOiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92
ZWQtZmxvdy5odG1sLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1zYW1lLW9iamVjdC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1vYmplY3QtZXhwZWN0ZWQudHh0Lgor
ICAgICAgICAqIGZhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1zYW1lLW9iamVj
dC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LXNhbWUtb2JqZWN0Lmh0bWwuCisKIDIwMTMtMTEtMDUgIFN1bi13b28gTmFtICA8c3Vu
bnkubmFtQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIFVwZGF0ZSBhIHRlc3QgZXhwZWN0
ZWQgcmVzdWx0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Vs
ZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjcxNmNiNWRmYzY2ZGFkMDNhYjE5ZTM1MGE2MjMwN2U4OWZlM2UwOWIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1y
ZWdpb24tb3ZlcnNldC1zdGF0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyOCBAQAorVGVzdHMg
RWxlbWVudC53ZWJraXRSZWdpb25PdmVyc2V0IGF0dHJpYnV0ZQorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKyAgCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImVtcHR5
IgorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJlbXB0eSIKK1BBU1MgcmVnaW9u
T3ZlcnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHkiCitGbG93IGNvbnRlbnQKK1BBU1MgcmVnaW9u
T3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25f
MicpIGlzICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgImVtcHR5Igor
QWRkIG1vcmUgY29udGVudAorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJmaXQi
CitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImZpdCIKK1BBU1MgcmVnaW9uT3Zl
cnNldCgncmVnaW9uXzMnKSBpcyAiZml0IgorQWRkIHZpc3VhbCBvdmVyZmxvdworUEFTUyByZWdp
b25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lv
bl8yJykgaXMgImZpdCIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAib3ZlcnNl
dCIKK0VtcHR5IGNvbnRlbnQKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZW1w
dHkiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImVtcHR5IgorUEFTUyByZWdp
b25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJlbXB0eSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2ZS1sZXR0
ZXItc3BhY2luZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
ZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNTJmNWVkM2JlM2RjMDhlMmEwMWJmOTUwOGIyZGE5YjQwZTg0
NzY0MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9l
bGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDExIEBACitUZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lvbk92ZXJz
ZXQgYXR0cmlidXRlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJlZ2lv
bl8xLndlYmtpdFJlZ2lvbk92ZXJzZXQgaXMgImZpdCIKK1BBU1MgcmVnaW9uXzIud2Via2l0UmVn
aW9uT3ZlcnNldCBpcyAiZW1wdHkiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVy
c2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODA1OTI2
YjZhYTlhNGQ4NjEwNTQ3ZjEzNDRjNzhjOGY2Y2IyNmE5YgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRl
LW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLmh0bWwKQEAgLTAsMCArMSw0NSBAQAorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPHN0eWxlPgorI2NvbnRlbnQgeworICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRp
Y2xlOworICAgIGxldHRlci1zcGFjaW5nOiAtMXB4OworICAgIGRpcmVjdGlvbjogcnRsOworfQor
I3JlZ2lvbl8xLCAjcmVnaW9uXzJ7CisgICAgLXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7Cisg
ICAgb3ZlcnNldDp2aXNpYmxlOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRp
Y2FsLWFsaWduOnRvcDsKKyAgICBtYXJnaW46MTBweDsKK30KKworI3JlZ2lvbl8xIHsgaGVpZ2h0
OjExMHB4OyB3aWR0aDoyMDBweDsgfQorI3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoy
MDBweDsgfQorCis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8aDEgaWQ9ImNvbnRlbnQiPkxv
cmVtIGlwc3VtPC9oMT4KKzxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lv
bl8yIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGVzdHMgRWxlbWVudC53
ZWJraXRSZWdpb25PdmVyc2V0IGF0dHJpYnV0ZSIpCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgIH0KKyAgICB2YXIgcmVn
aW9uXzEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICB2YXIgcmVn
aW9uXzIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICB2YXIgY29u
dGVudCA9ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicmVnaW9uXzEud2Via2l0UmVnaW9uT3ZlcnNldCIsICJmaXQiKTsKKyAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbl8yLndlYmtpdFJlZ2lvbk92ZXJzZXQiLCAi
ZW1wdHkiKTsKKyAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbl8xKTsKKyAgICBk
b2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbl8yKTsKKyAgICBkb2N1bWVudC5ib2R5LnJl
bW92ZUNoaWxkKGNvbnRlbnQpOworCis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1v
dmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MTZjYjVkZmM2NmRhZDAzYWIxOWUzNTBhNjIzMDdlODlm
ZTNlMDliCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMjggQEAKK1Rlc3RzIEVsZW1lbnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1
dGUKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisgIAorUEFTUyByZWdpb25PdmVyc2V0
KCdyZWdpb25fMScpIGlzICJlbXB0eSIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBp
cyAiZW1wdHkiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgImVtcHR5IgorRmxv
dyBjb250ZW50CitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImZpdCIKK1BBU1Mg
cmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZml0IgorUEFTUyByZWdpb25PdmVyc2V0KCdy
ZWdpb25fMycpIGlzICJlbXB0eSIKK0FkZCBtb3JlIGNvbnRlbnQKK1BBU1MgcmVnaW9uT3ZlcnNl
dCgncmVnaW9uXzEnKSBpcyAiZml0IgorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlz
ICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgImZpdCIKK0FkZCB2aXN1
YWwgb3ZlcmZsb3cKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgorUEFT
UyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJmaXQiCitQQVNTIHJlZ2lvbk92ZXJzZXQo
J3JlZ2lvbl8zJykgaXMgIm92ZXJzZXQiCitFbXB0eSBjb250ZW50CitQQVNTIHJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8xJykgaXMgImVtcHR5IgorUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicp
IGlzICJlbXB0eSIKK1BBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHkiCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJz
ZXQtc3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQt
c3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmIxZDE0YjYxMzY4NTE4M2JmMWYwN2JkNDkxNGVjY2I2ZWM4ZTgwNjkKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdp
b24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGVzdHMgRWxlbWVudC53ZWJraXRSZWdpb25vdmVy
c2V0IGF0dHJpYnV0ZQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZWdp
b25fMS53ZWJraXRSZWdpb25PdmVyc2V0IGlzICJmaXQiCitQQVNTIHJlZ2lvbl8yLndlYmtpdFJl
Z2lvbk92ZXJzZXQgaXMgImVtcHR5IgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLW5lZ2F0aXZlLWxl
dHRlci1zcGFjaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVu
dC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2lu
Zy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmEzYWU2Yzk5MmMzMGE2ZDc1ZGU1ZTM1ZTQzZGI3MWNhMDhjNTJl
ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxl
bWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3Bh
Y2luZy5odG1sCkBAIC0wLDAgKzEsNTAgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2h0
bWwgeworICAgIC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsKK30KKyNjb250ZW50
IHsKKyAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKKyAgICBsZXR0ZXItc3BhY2luZzog
LTFweDsKKyAgICBkaXJlY3Rpb246IHJ0bDsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yeworICAg
IC13ZWJraXQtZmxvdy1mcm9tOiBhcnRpY2xlOworICAgIG92ZXJzZXQ6dmlzaWJsZTsKKyAgICBk
aXNwbGF5OmlubGluZS1ibG9jazsKKyAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7CisgICAgbWFyZ2lu
OjEwcHg7Cit9CisKKyNyZWdpb25fMSB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IH0KKyNy
ZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IH0KKworPC9zdHlsZT4KKzwvaGVh
ZD4KKzxib2R5PgorPGgxIGlkPSJjb250ZW50Ij5Mb3JlbSBpcHN1bTwvaDE+CisKKzxkaXYgaWQ9
InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KKworPHNjcmlwdD4K
KyAgICBkZXNjcmlwdGlvbigiVGVzdHMgRWxlbWVudC53ZWJraXRSZWdpb25vdmVyc2V0IGF0dHJp
YnV0ZSIpCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworICAgIH0KKyAgICB2YXIgcmVnaW9uXzEgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICB2YXIgcmVnaW9uXzIgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbl8x
LndlYmtpdFJlZ2lvbk92ZXJzZXQiLCAiZml0Iik7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJyZWdpb25fMi53ZWJraXRSZWdpb25PdmVyc2V0IiwgImVtcHR5Iik7CisgICAgdmFyIGNvbnRl
bnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgIGRvY3VtZW50LmJv
ZHkucmVtb3ZlQ2hpbGQocmVnaW9uXzEpOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQo
cmVnaW9uXzIpOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoY29udGVudCk7CisgICAK
KworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNh
bC1ybC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9u
LW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMzk5NWIxMTY5ZTQ1
ZjJiZGY1ODRiNjYzNWIzMWFlNGEzODg3NzljCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGlj
YWwtcmwuaHRtbApAQCAtMCwwICsxLDEwOSBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHN0eWxlPgor
aHRtbCB7LXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO30KK2JvZHkgeyBmb250LWZh
bWlseTogbW9ub3NwYWNlOyB9CisKKyNhcnRpY2xlIHsKKyAgICAtd2Via2l0LWZsb3ctaW50bzog
YXJ0aWNsZTsKKyAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKK30KKworI3JlZ2lvbl8xLCAj
cmVnaW9uXzIsICNyZWdpb25fMyB7CisgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7
CisgICAgb3ZlcmZsb3c6dmlzaWJsZTsKKyAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKKyAgICB2
ZXJ0aWNhbC1hbGlnbjp0b3A7CisgICAgbWFyZ2luOjEwcHg7Cit9CisKKy5ibG9jayB7CisgICBk
aXNwbGF5OmJsb2NrOworfQorCisjcmVnaW9uXzEgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4
OyBib3JkZXI6MXB4IHNvbGlkICNhMGEwYTA7IH0KKyNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsg
d2lkdGg6MjAwcHg7IGJvcmRlcjoxcHggc29saWQgYmxhY2sgfQorI3JlZ2lvbl8zIHsgaGVpZ2h0
OjExMHB4OyB3aWR0aDoyMDBweDsgYm9yZGVyOjFweCBzb2xpZCAjYTBhMGEwOyB9CisKKzwvc3R5
bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImRlc2NyaXB0aW9uIiBjbGFzcz0iYmxvY2si
PjwvZGl2PgorPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgPGRpdj4KKyAgICAgICAgPGRpdiBpZD0i
Y29udGVudCIgc3R5bGU9IndpZHRoOiAzOTZweDsgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48
L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Cis8
ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb25fMyI+PC9kaXY+CisKKzxk
aXYgaWQ9ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVz
Y3JpcHRpb24oIlRlc3RzIEVsZW1lbnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1dGUiKQor
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKyAgICB9CisgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldChpZCkgeworICAgICAgICB2
YXIgZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKKyAgICAgICAgcmV0dXJuIGUud2Vi
a2l0UmVnaW9uT3ZlcnNldDsKKyAgICB9CisgICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05h
bWUpIHsKKyAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEi
KTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICBy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAgICAgIHIuc3R5bGUu
d2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAgciA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb25fMyIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxv
d05hbWU7CisgICAgfQorICAgIGZ1bmN0aW9uIGFkZFZpc3VhbE92ZXJmbG93KCkgeworICAgICAg
ICB2YXIgYyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7CisgICAgICAgIGMu
c3R5bGUud2Via2l0Qm94U2hhZG93PSItMzBweCAwcHggbGltZSI7CisgICAgfQorICAgIGZ1bmN0
aW9uIGFkZE1vcmVDb250ZW50KCkgeworICAgICAgICB2YXIgYyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjb250ZW50Iik7CisgICAgICAgIGMuc3R5bGUud2lkdGggPSA1OTY7CisgICAgfQor
CisgICAgZnVuY3Rpb24gdGVzdCgpIHsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImVtcHR5Iik7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJlbXB0eSIpOworICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1w
dHkiKTsKKworICAgICAgICBkZWJ1ZygiRmxvdyBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250
ZW50KCJhcnRpY2xlIik7CisKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25P
dmVyc2V0KCdyZWdpb25fMScpIiwgImZpdCIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJlbXB0eSIpOworCisg
ICAgICAgIGRlYnVnKCJBZGQgbW9yZSBjb250ZW50Iik7CisgICAgICAgIGFkZE1vcmVDb250ZW50
KCk7CisKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdp
b25fMScpIiwgImZpdCIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92
ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJmaXQiKTsKKworICAgICAgICBkZWJ1Zygi
QWRkIHZpc3VhbCBvdmVyZmxvdyIpOworICAgICAgICBhZGRWaXN1YWxPdmVyZmxvdygpOworCisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSIs
ICJmaXQiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdy
ZWdpb25fMicpIiwgImZpdCIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAib3ZlcnNldCIpOworCisgICAgICAgIGRlYnVnKCJFbXB0
eSBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250ZW50KCJub19hcnRpY2xlIik7CisKKyAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImVt
cHR5Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVn
aW9uXzInKSIsICJlbXB0eSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1wdHkiKTsKKyAgICB9CisKKyAgICB0ZXN0KCk7Cis8
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjkwYmQ2ODY0YzQ1ZTU4MWE4YTZhYTdiMDBiY2Y4OTU4NDMxNDg1ZjIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZWxlbWVu
dC1yZWdpb24tb3ZlcnNldC1zdGF0ZS5odG1sCkBAIC0wLDAgKzEsMTAxIEBACis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+Cis8c3R5bGU+CisjYXJ0aWNsZSB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGFydGlj
bGU7CisgICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Cit9CisjcmVnaW9uXzEsICNyZWdpb25f
MiwgI3JlZ2lvbl8zIHsKKyAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKKyAgICBv
dmVyZmxvdzp2aXNpYmxlOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRpY2Fs
LWFsaWduOnRvcDsKKyAgICBtYXJnaW46MTBweDsKK30KKy5ibG9jayB7CisgICBkaXNwbGF5OmJs
b2NrOworfQorI3JlZ2lvbl8xIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgfQorI3JlZ2lv
bl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgfQorI3JlZ2lvbl8zIHsgaGVpZ2h0OjEx
MHB4OyB3aWR0aDoyMDBweDsgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0i
ZGVzY3JpcHRpb24iIGNsYXNzPSJibG9jayI+PC9kaXY+Cis8ZGl2IGlkPSJhcnRpY2xlIj4KKyAg
ICA8ZGl2PgorICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMTZweDsg
YmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8
ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Cis8ZGl2
IGlkPSJyZWdpb25fMyI+PC9kaXY+CisKKzxkaXYgaWQ9ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+
PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oIlRlc3RzIEVsZW1lbnQud2Via2l0
UmVnaW9uT3ZlcnNldCBhdHRyaWJ1dGUiKQorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewor
ICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB9CisgICAgZnVuY3Rpb24gcmVn
aW9uT3ZlcnNldChpZCkgeworICAgICAgICB2YXIgZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KGlkKTsKKyAgICAgICAgcmV0dXJuIGUud2Via2l0UmVnaW9uT3ZlcnNldDsKKyAgICB9CisgICAg
ZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKKyAgICAgICAgdmFyIHIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93
RnJvbSA9IGZsb3dOYW1lOworICAgICAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbl8yIik7CisgICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAg
ICAgICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMyIpOworICAgICAgICBy
LnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgfQorICAgIGZ1bmN0aW9uIGFk
ZFZpc3VhbE92ZXJmbG93KCkgeworICAgICAgICB2YXIgYyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJhcnRpY2xlIik7CisgICAgICAgIGMuc3R5bGUud2Via2l0Qm94U2hhZG93PSIwcHggMzBw
eCBsaW1lIjsKKyAgICB9CisgICAgZnVuY3Rpb24gYWRkTW9yZUNvbnRlbnQoKSB7CisgICAgICAg
IHZhciBjID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQiKTsKKyAgICAgICAgYy5z
dHlsZS5oZWlnaHQgPSAzMjY7CisgICAgfQorCisgICAgZnVuY3Rpb24gdGVzdCgpIHsKKyAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImVt
cHR5Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVn
aW9uXzInKSIsICJlbXB0eSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1wdHkiKTsKKworICAgICAgICBkZWJ1ZygiRmxvdyBj
b250ZW50Iik7CisgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7CisKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImZpdCIpOwor
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJyki
LCAiZml0Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgn
cmVnaW9uXzMnKSIsICJlbXB0eSIpOworCisgICAgICAgIGRlYnVnKCJBZGQgbW9yZSBjb250ZW50
Iik7CisgICAgICAgIGFkZE1vcmVDb250ZW50KCk7CisKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIiwgImZpdCIpOworICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIs
ICJmaXQiKTsKKworICAgICAgICBkZWJ1ZygiQWRkIHZpc3VhbCBvdmVyZmxvdyIpOworICAgICAg
ICBhZGRWaXN1YWxPdmVyZmxvdygpOworCisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSIsICJmaXQiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImZpdCIpOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAib3ZlcnNl
dCIpOworCisgICAgICAgIGRlYnVnKCJFbXB0eSBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250
ZW50KCJub19hcnRpY2xlIik7CisKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25PdmVyc2V0KCdyZWdpb25fMScpIiwgImVtcHR5Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJlbXB0eSIpOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1wdHki
KTsKKyAgICB9CisgICAgdGVzdCgpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQt
Ym91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43ZWYyMmU5YTQzMWFkMDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1j
b250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQ
QVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNv
bnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xp
ZW50LXJlY3QtaG9yaXpvbnRhbC1idC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2VmMjJlOWE0
MzFhZDAyNzI3MTNiNzFmZGM4Nzk0MDE2YzhlZjEyZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQt
cmVjdC1ob3Jpem9udGFsLWJ0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQQVNTCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91
bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250
YWwtYnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNzVjN2EzNWFjYjRmOTYwN2I1M2QwZWM0OTc5OGFkNjQw
OWZkNWE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQuaHRtbApA
QCAtMCwwICsxLDU1IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSIuLi9yZXNvdXJjZXMvcmVnaW9uLXN0eWxlLmNzcyI+PC9saW5rPgorPHNjcmlwdCB0
eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04IiBzcmM9Ii4uL3Jlc291cmNlcy9o
ZWxwZXIuanMiPjwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgaHRtbCB7IC13ZWJraXQtd3JpdGlu
Zy1tb2RlOiBob3Jpem9udGFsLWJ0OyB9CisKKyAgICBib2R5IHsgbWFyZ2luOiAxMHB4OyB9CisK
KyAgICAjcmVnaW9uMSB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgbGVm
dDogMTAwcHg7CisgICAgICAgIHRvcDogMTBweDsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAg
ICAgIGhlaWdodDogMTAwcHg7CisgICAgfQorCisgICAgI3JlZ2lvbjIgeworICAgICAgICBwb3Np
dGlvbjogYWJzb2x1dGU7CisgICAgICAgIHRvcDogMTBweDsKKyAgICAgICAgbGVmdDogMjAwcHg7
CisgICAgICAgIHdpZHRoOiA1MHB4OworICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgICAgIHBh
ZGRpbmc6IDEwcHggMjBweCAzMHB4IDQwcHg7CisgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGJs
YWNrOworICAgIH0KKyAgICAKKyAgICAuZmluaXNoZWQgI3JlZ2lvbjEsIC5maW5pc2hlZCAjcmVn
aW9uMiB7CisgICAgICAgIGRpc3BsYXk6IG5vbmU7CisgICAgfQorPC9zdHlsZT4KKworPGRpdiBp
ZD0iZmxvdyIgY2xhc3M9ImZsb3dBcnRpY2xlIj4KKyAgICA8ZGl2IGlkPSJncmVlbiIgY2xhc3M9
ImdyZWVuQm94Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJibHVlIiBjbGFzcz0iYmx1ZUJveCI+PC9k
aXY+CisgICAgPGRpdiBpZD0ib3JhbmdlIiBjbGFzcz0ib3JhbmdlQm94Ij48L2Rpdj4KKzwvZGl2
PgorCis8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSI+PC9kaXY+Cis8ZGl2
IGlkPSJyZWdpb24yIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSI+PC9kaXY+CisKKzxzY3JpcHQ+Cisg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKworICAgIHZhciBleHBlY3RlZEJvdW5kaW5nUmVjdHMgPSB7CisgICAgICAgIGdyZWVuOiBb
NjAsIDEwMCwgMTEwLCAxNTAsIDUwLCA1MF0sCisgICAgICAgIGJsdWU6IFsxMCwgMTAwLCA2MCwg
MTUwLCA1MCwgNTBdLAorICAgICAgICBvcmFuZ2U6IFsyMSwgMjQxLCA3MSwgMjkxLCA1MCwgNTBd
CisgICAgfTsKKyAgICAKKyAgICBpZiAodGVzdEJvdW5kaW5nUmVjdHMoZXhwZWN0ZWRCb3VuZGlu
Z1JlY3RzKSkKKyAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSAiZmluaXNoZWQiOwor
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxv
d2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNs
aWVudC1yZWN0LXZlcnRpY2FsLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZWYyMmU5YTQzMWFk
MDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0
LXZlcnRpY2FsLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitQQVNTCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xp
ZW50LXJlY3QtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLXJs
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZWYyMmU5YTQzMWFkMDI3MjcxM2I3MWZkYzg3OTQw
MTZjOGVmMTJmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LXZlcnRpY2FsLXJsLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxIEBACitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGlj
YWwtcmwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVu
dC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1ybC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5MWRm
NjJhNDhiZWYzNzZkNjc2Y2FlZjJmOWRmY2I2NTY5ZDU4YzIKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xp
ZW50LXJlY3QtdmVydGljYWwtcmwuaHRtbApAQCAtMCwwICsxLDUxIEBACis8IURPQ1RZUEUgaHRt
bD4KKworPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9yZXNvdXJjZXMvcmVnaW9uLXN0
eWxlLmNzcyI+PC9saW5rPgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9
InV0Zi04IiBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorCis8c3R5bGU+
CisgICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsgfQorCisgICAg
Ym9keSB7IG1hcmdpbjogMTBweDsgfQorCisgICAgI3JlZ2lvbjEgeworICAgICAgICBwb3NpdGlv
bjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDEwMHB4OworICAgICAgICB3aWR0aDogMTAwcHg7
CisgICAgICAgIGhlaWdodDogNTBweDsKKyAgICB9CisKKyAgICAjcmVnaW9uMiB7CisgICAgICAg
IHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgbGVmdDogMjAwcHg7CisgICAgICAgIHdpZHRo
OiA1MHB4OworICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgfQorICAgIAorICAgIC5maW5pc2hl
ZCAjcmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24yIHsKKyAgICAgICAgZGlzcGxheTogbm9uZTsK
KyAgICB9Cis8L3N0eWxlPgorCis8ZGl2IGlkPSJmbG93IiBjbGFzcz0iZmxvd0FydGljbGUiPgor
ICAgIDxkaXYgaWQ9ImdyZWVuIiBjbGFzcz0iZ3JlZW5Cb3giPjwvZGl2PgorICAgIDxkaXYgaWQ9
ImJsdWUiIGNsYXNzPSJibHVlQm94Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJvcmFuZ2UiIGNsYXNz
PSJvcmFuZ2VCb3giPjwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJy
ZWdpb25BcnRpY2xlIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdpb25BcnRp
Y2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgdmFyIGV4cGVjdGVkQm91bmRpbmdS
ZWN0cyA9IHsKKyAgICAgICAgZ3JlZW46IFsxMCwgMTUwLCA2MCwgMjAwLCA1MCwgNTBdLAorICAg
ICAgICBibHVlOiBbMTAsIDEwMCwgNjAsIDE1MCwgNTAsIDUwXSwKKyAgICAgICAgb3JhbmdlOiBb
MTAsIDIwMCwgNjAsIDI1MCwgNTAsIDUwXQorICAgIH07CisgICAgCisgICAgaWYgKHRlc3RCb3Vu
ZGluZ1JlY3RzKGV4cGVjdGVkQm91bmRpbmdSZWN0cykpCisgICAgICAgIGRvY3VtZW50LmJvZHku
Y2xhc3NOYW1lID0gImZpbmlzaGVkIjsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0
LXZlcnRpY2FsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNv
bnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZjQx
ZWU5YzhlNTIzNGQ1MjYyOWViYjMxZjAwNGNhOGQ4ZDJjYWUzCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNs
aWVudC1yZWN0LXZlcnRpY2FsLmh0bWwKQEAgLTAsMCArMSw1MyBAQAorPCFET0NUWVBFIGh0bWw+
CisKKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vcmVzb3VyY2VzL3JlZ2lvbi1zdHls
ZS5jc3MiPjwvbGluaz4KKzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1
dGYtOCIgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKworPHN0eWxlPgor
ICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7IH0KKworICAgIGJv
ZHkgeyBtYXJnaW46IDEwcHg7IH0KKworICAgICNyZWdpb24xIHsKKyAgICAgICAgcG9zaXRpb246
IGFic29sdXRlOworICAgICAgICBsZWZ0OiAxMDBweDsKKyAgICAgICAgd2lkdGg6IDEwMHB4Owor
ICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgfQorCisgICAgI3JlZ2lvbjIgeworICAgICAgICBw
b3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDI0MHB4OworICAgICAgICB3aWR0aDog
NjBweDsKKyAgICAgICAgaGVpZ2h0OiA3MHB4OworICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHgg
MzBweCA0MHB4OworICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKyAgICB9CisgICAg
CisgICAgLmZpbmlzaGVkICNyZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIgeworICAgICAgICBk
aXNwbGF5OiBub25lOworICAgIH0KKzwvc3R5bGU+CisKKzxkaXYgaWQ9ImZsb3ciIGNsYXNzPSJm
bG93QXJ0aWNsZSI+CisgICAgPGRpdiBpZD0iZ3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+
CisgICAgPGRpdiBpZD0iYmx1ZSIgY2xhc3M9ImJsdWVCb3giPjwvZGl2PgorICAgIDxkaXYgaWQ9
Im9yYW5nZSIgY2xhc3M9Im9yYW5nZUJveCI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVn
aW9uMSIgY2xhc3M9InJlZ2lvbkFydGljbGUiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uMiIgY2xh
c3M9InJlZ2lvbkFydGljbGUiPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICB2YXIgZXhw
ZWN0ZWRCb3VuZGluZ1JlY3RzID0geworICAgICAgICBncmVlbjogWzEwLCAxMDAsIDYwLCAxNTAs
IDUwLCA1MF0sCisgICAgICAgIGJsdWU6IFsxMCwgMTUwLCA2MCwgMjAwLCA1MCwgNTBdLAorICAg
ICAgICBvcmFuZ2U6IFsyMSwgMjgxLCA3MSwgMzMxLCA1MCwgNTBdCisgICAgfTsKKyAgICAKKyAg
ICBpZiAodGVzdEJvdW5kaW5nUmVjdHMoZXhwZWN0ZWRCb3VuZGluZ1JlY3RzKSkKKyAgICAgICAg
ZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSAiZmluaXNoZWQiOworPC9zY3JpcHQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRp
bmctY2xpZW50LXJlY3QuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93
ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMyMTYzOGYx
OTdhNTYzMTQ1OGFlMzVhZTYzYWIxOTY4ZDA1NDM0ZTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50
LXJlY3QuaHRtbApAQCAtMCwwICsxLDYwIEBACis8IURPQ1RZUEUgaHRtbD4KKworPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSIuLi9yZXNvdXJjZXMvcmVnaW9uLXN0eWxlLmNzcyI+PC9saW5r
PgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04IiBzcmM9Ii4u
L3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorCis8c3R5bGU+CisgICAgYm9keSB7IG1h
cmdpbjogMTBweDsgfQorCisgICAgLmJveCB7CisgICAgICAgIHdpZHRoOiA1MHB4OworICAgICAg
ICBoZWlnaHQ6IDUwcHg7CisgICAgICAgIGZsb2F0OiBsZWZ0OworICAgIH0KKworICAgICNyZWdp
b24xIHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICBwYWRkaW5nOiAxMHB4
OworICAgIH0KKworICAgICNyZWdpb24yIHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwor
ICAgICAgICBsZWZ0OiAxMDBweDsKKyAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOwor
ICAgIH0KKworICAgICNyZWdpb24zIHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAg
ICAgICBsZWZ0OiAyMDBweDsKKyAgICAgICAgcGFkZGluZzogMTBweDsKKyAgICAgICAgYm9yZGVy
OiAxMHB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgICAKKyAgICAuZmluaXNoZWQgI3JlZ2lvbjEs
IC5maW5pc2hlZCAjcmVnaW9uMiwgLmZpbmlzaGVkICNyZWdpb24zIHsKKyAgICAgICAgZGlzcGxh
eTogbm9uZTsKKyAgICB9Cis8L3N0eWxlPgorCis8ZGl2IGNsYXNzPSJmbG93QXJ0aWNsZSI+Cisg
ICAgPGRpdiBpZD0iZ3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+CisgICAgPGRpdiBpZD0i
Ymx1ZSIgY2xhc3M9ImJsdWVCb3giPjwvZGl2PgorICAgIDxkaXYgaWQ9Im9yYW5nZSIgY2xhc3M9
Im9yYW5nZUJveCI+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJl
Z2lvbkFydGljbGUgYm94Ij48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdpb25B
cnRpY2xlIGJveCI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0icmVnaW9uQXJ0aWNs
ZSBib3giPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgCisgICAgdmFyIGV4cGVjdGVkQm91
bmRpbmdSZWN0cyA9IHsKKyAgICAgICAgZ3JlZW46IFsyMCwgMjAsIDcwLCA3MCwgNTAsIDUwXSwK
KyAgICAgICAgYmx1ZTogWzIwLCAxMTAsIDcwLCAxNjAsIDUwLCA1MF0sCisgICAgICAgIG9yYW5n
ZTogWzMwLCAyMjAsIDgwLCAyNzAsIDUwLCA1MF0KKyAgICB9OworICAgIAorICAgIGlmICh0ZXN0
Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMpKQorICAgICAgICBkb2N1bWVudC5i
b2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hlZCI7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC10cmFuc2Zvcm0tYm91bmRp
bmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uN2VmMjJlOWE0MzFhZDAyNzI3MTNiNzFmZGM4Nzk0MDE2YzhlZjEy
ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93
ZWQtY29udGVudC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEgQEAKK1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9mbG93ZWQtY29udGVudC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtY29udGVudC10cmFuc2Zvcm0t
Ym91bmRpbmctY2xpZW50LXJlY3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MGU4ZmJhNTQ4OGJlN2U3ODhl
YWExNTg3NzQ1NjhkYTM3NjZmN2QzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQt
cmVjdC5odG1sCkBAIC0wLDAgKzEsNDUgQEAKKzwhRE9DVFlQRSBodG1sPgorCis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3Jlc291cmNlcy9yZWdpb24tc3R5bGUuY3NzIj48L2xpbms+
Cis8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiIHNyYz0iLi4v
cmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisKKzxzdHlsZT4KKyAgICBib2R5IHsgbWFy
Z2luOiAxMHB4OyB9CisKKyAgICAuYm94IHsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAg
IGhlaWdodDogNTBweDsKKyAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgfQorCisgICAgI3JlZ2lv
bjEgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgsIDEwcHgpOyB9CisgICAgI3Jl
Z2lvbjIgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDMwcHgsIDIwcHgpIHJvdGF0ZSg0
NWRlZyk7IH0KKyAgICAjcmVnaW9uMyB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNzBw
eCwgMzBweCkgc2NhbGUoMiwyKTsgfQorICAgIAorICAgIC5maW5pc2hlZCAjcmVnaW9uMSwgLmZp
bmlzaGVkICNyZWdpb24yLCAuZmluaXNoZWQgI3JlZ2lvbjMgeworICAgICAgICBkaXNwbGF5OiBu
b25lOworICAgIH0KKzwvc3R5bGU+CisKKzxkaXYgY2xhc3M9ImZsb3dBcnRpY2xlIj4KKyAgICA8
ZGl2IGlkPSJncmVlbiIgY2xhc3M9ImdyZWVuQm94Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJibHVl
IiBjbGFzcz0iYmx1ZUJveCI+PC9kaXY+CisgICAgPGRpdiBpZD0ib3JhbmdlIiBjbGFzcz0ib3Jh
bmdlQm94Ij48L2Rpdj4KKzwvZGl2PgorPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJlZ2lvbkFy
dGljbGUgYm94Ij48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdpb25BcnRpY2xl
IGJveCI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSBib3gi
PjwvZGl2PgorCis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIAorICAgIHZhciBleHBlY3RlZEJvdW5kaW5nUmVjdHMgPSB7CisgICAgICAgIGdyZWVuOiBb
MjAsIDIwLCA3MCwgNzAsIDUwLCA1MF0sCisgICAgICAgIGJsdWU6IFsyMCwgODAsIDkwLCAxNTAs
IDcwLCA3MF0sCisgICAgICAgIG9yYW5nZTogWzE1LCAxNTUsIDExNSwgMjU1LCAxMDAsIDEwMF0K
KyAgICB9OworICAgIAorICAgIGlmICh0ZXN0Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5kaW5n
UmVjdHMsIDEpKQorICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hlZCI7
Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9m
bG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3Vu
ZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTE3YjY0NDkxODhkNTEz
YTRmZDEyOGFjMTk2NGNlMjBjZWIxYThmZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9mbG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRpbmctY2xpZW50
LXJlY3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGVzdCBmb3IgV2ViS2l0IEJ1ZyAx
MTcyOTAgW0NTU1JlZ2lvbnNdIGdldEJvdW5kaW5nQ2xpZW50UmVjdCB3cm9uZyBmb3IgaW5saW5l
IGNvbnRlbnQgbm9kZXMKKworT24gc3VjY2VzcyB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93Lgor
CitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2Vk
LWlubGluZS1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vZmxvd2VkLWlubGluZS1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1y
ZWN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYTk1NmM5NTg3NzE1ZWUzZTA3MTNkZGJmNDYwOWUyMDZjMDhi
NmE5OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9m
bG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbApAQCAtMCwwICsx
LDY4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiIHNyYz0iLi4vcmVzb3Vy
Y2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIGJv
ZHkgeyBtYXJnaW46IDEwcHg7IH0KKworICAgICAgICAgICAgI2Zsb3cxIHsKKyAgICAgICAgICAg
ICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgICAgICBmb250OiAyMHB4
LzEgQWhlbTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgI3JlZ2lvbjEgeworICAgICAg
ICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgICAgIGJvcmRl
cjogMTBweCBzb2xpZCBibGFjazsKKyAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7CisgICAg
ICAgICAgICAgICAgaGVpZ2h0OiA1MHB4OworICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNv
bHV0ZTsKKyAgICAgICAgICAgICAgICB0b3A6IDE1MHB4OworICAgICAgICAgICAgICAgIGxlZnQ6
IDEwMHB4OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAjZmxvdzIgeworICAgICAgICAg
ICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsKKyAgICAgICAgICAgICAgICBmb250OiAy
MHB4LzEgQWhlbTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgI3JlZ2lvbjIgeworICAg
ICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MjsKKyAgICAgICAgICAgICAgICBi
b3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4Owor
ICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDsKKyAgICAgICAgICAgICAgICBwb3NpdGlvbjog
YWJzb2x1dGU7CisgICAgICAgICAgICAgICAgdG9wOiAyNTBweDsKKyAgICAgICAgICAgICAgICBs
ZWZ0OiAxMDBweDsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRl
KDEwcHgsIDEwcHgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmluaXNoZWQgI3Jl
Z2lvbjEsIC5maW5pc2hlZCAjcmVnaW9uMiwgLmZpbmlzaGVkICNmbG93MSwgLmZpbmlzaGVkICNm
bG93MiB7CisgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxwPlRlc3Qg
Zm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTcy
OTAiPldlYktpdCBCdWcgMTE3MjkwPC9hPiBbQ1NTUmVnaW9uc10gZ2V0Qm91bmRpbmdDbGllbnRS
ZWN0IHdyb25nIGZvciBpbmxpbmUgY29udGVudCBub2RlczwvcD4KKyAgICAgICAgPHA+T24gc3Vj
Y2VzcyB5b3Ugc2hvdWxkIHNlZSBQQVNTICBiZWxvdy48L3A+CisKKyAgICAgICAgPHNwYW4gaWQ9
ImZsb3cxIj5hYWFhYTwvc3Bhbj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uMSI+PC9kaXY+CisK
KyAgICAgICAgPHNwYW4gaWQ9ImZsb3cyIj5hYWFhYTwvc3Bhbj4KKyAgICAgICAgPGRpdiBpZD0i
cmVnaW9uMiI+PC9kaXY+CisKKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KworICAgICAgICAgICAgLy8gW3RvcCwgbGVmdCwgYm90dG9tLCByaWdodCwgd2lkdGgsIGhlaWdo
dF0KKyAgICAgICAgICAgIHZhciBleHBlY3RlZEJvdW5kaW5nUmVjdHMgPSB7CisgICAgICAgICAg
ICAgICAgZmxvdzE6IFsxNjAsIDExMCwgMTgwLCAyMTAsIDEwMCwgMjBdLAorICAgICAgICAgICAg
ICAgIGZsb3cyOiBbMjcwLCAxMjAsIDI5MCwgMjIwLCAxMDAsIDIwXQorICAgICAgICAgICAgfTsK
KworICAgICAgICAgICAgaWYgKHRlc3RCb3VuZGluZ1JlY3RzKGV4cGVjdGVkQm91bmRpbmdSZWN0
cykpCisgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSAiZmluaXNoZWQi
OworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNv
bHV0ZS1wb3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dl
dC1yZWdpb24tZmxvdy1yYW5nZXMtYWJzb2x1dGUtcG9zLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jZThjYWE0MDlhYjFiMzY0NGM2ZjBmYWQyOTIzZTVlYmRlYmZlY2RiCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtYWJzb2x1dGUtcG9zLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1tDU1NSZWdpb25z
XSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGFic29sdXRlIHBvc2l0
aW9uZWQgZWxlbWVudHMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFw
cGVyLDAsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLHdyYXBwZXIsMV0KK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1h
YnNvbHV0ZS1wb3MuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLWFic29sdXRlLXBvcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzYzBkZDI0N2Ux
NmZlYWU4ZmM4NGFkYzRhZDMwOTU5ZGUyOTI4OGMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1hYnNvbHV0ZS1w
b3MuaHRtbApAQCAtMCwwICsxLDM0IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHls
ZT4KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9CisgICAgI2JveDEgeyAt
d2Via2l0LWZsb3ctaW50bzogZmxvdzsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogNTBweDsg
aGVpZ2h0OiA1MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgdG9wOiAyNXB4OyBsZWZ0OiAy
NXB4OyB9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEw
MHB4OyBoZWlnaHQ6IDEwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwcHg7IGxlZnQ6
IDUwcHg7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2IGlkPSJkZXNjcmlw
dGlvbiI+PC9kaXY+CisgICAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PC9kaXY+
PC9kaXY+CisgICAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Cis8c2Ny
aXB0PgorICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10g
VGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBhYnNvbHV0ZSBwb3NpdGlv
bmVkIGVsZW1lbnRzIik7CisgICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uMSIpOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndyYXBw
ZXIiLCAxXSk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7
Cit9CisKKyAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLWNvbnRlbnQtbm9kZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rl
cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjBhNjc5ZTUwNWY3MWZkMTU5N2JlMWZmMTM4NDkz
OTRkMjU1Mzk4NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWNvbnRlbnQtbm9kZXMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTUgQEAKK1tDU1NSZWdpb25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRSZWdpb25G
bG93UmFuZ2VzIHdpdGggbXVsdGlwbGUgY29udGVudCBub2RlcworCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKK1RleHQgbm9kZS4KK0Zsb3cgdGVzdAorUEFTUyByYW5nZTEubGVuZ3RoIGlz
IDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCwjdGV4dCw0XSBpcyBlcXVhbCB0byBbd3JhcHBlciww
LCN0ZXh0LDRdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMgorUEFTUyBBcnJheSBbI3RleHQsNSx3
cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBwZXIsMV0KK1BBU1MgQXJyYXkgW3dy
YXBwZXIyLDAsd3JhcHBlcjIsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIyLDAsd3JhcHBlcjIsMV0K
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy1jb250ZW50LW5vZGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1jb250ZW50LW5vZGVzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2M0
Mjc0NTRkZjE2ZGZhOWY4NmE0NjAzOTI1YzgwNGIxZGRmMjZmOQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWNv
bnRlbnQtbm9kZXMuaHRtbApAQCAtMCwwICsxLDUyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNv
dXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBib2R5IHsgZm9udC1mYW1p
bHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiA1MHB4OyB9CisgICAg
LmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgIC5mbG93IHsgLXdlYmtpdC1m
bG93LWludG86IGZsb3cxO30KKyAgICAuYmx1ZSB7YmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVl
OyB3aWR0aDogNTBweDsgaGVpZ2h0OiA1MHB4O30KKyAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxv
dy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDcwcHg7IGxlZnQ6IDIwcHg7IHRv
cDogMjUwcHg7fQorICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0
aDogMjUwcHg7IGhlaWdodDogMTIwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorPC9zdHls
ZT4KKzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+CisgIDxk
aXYgaWQ9IndyYXBwZXIiPjxkaXYgY2xhc3M9ImZsb3ciPlRleHQgbm9kZS48L2Rpdj48L2Rpdj4K
KyAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJl
Z2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJ3cmFwcGVyMiI+PGRpdiBj
bGFzcz0iZmxvdyBibHVlIj48L2Rpdj48L2Rpdj4KKyAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRlc2NyaXB0aW9uKCJb
Q1NTUmVnaW9uc10gSW1wbGVtZW50IFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyB3aXRoIG11
bHRpcGxlIGNvbnRlbnQgbm9kZXMiKTsKKyAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24xIik7CisgICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uMiIpOworCisKKyAgICBkZWJ1ZygiRmxvdyB0ZXN0Iik7CisgICAgcmFu
Z2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZh
bHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VB
dChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiI3RleHQiLCA0XSk7CisgICAgcmFuZ2UyID0g
cmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UyLmxlbmd0aCIsIDIpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTIsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7CisgICAgY29tcGFyZUFycmF5cyhn
ZXRSYW5nZUF0KHJhbmdlMiwgMSksIFsid3JhcHBlcjIiLCAwLCAid3JhcHBlcjIiLCAxXSk7CisK
KworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsKK30KKworICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dl
dC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWRpc3BsYXktbm9u
ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2YzMWJjNGQyZGZiNGU0YTA0MGI5NWE2ZjJlOWI0
NzRmOTQ4NDQ4ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWRpc3BsYXktbm9uZS1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxNCBAQAorW0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZs
b3dSYW5nZXMgZm9yIGVsZW1lbnRzIHdpdGggZGlzcGxheTpub25lIChSYW5nZSBzaG91bGQgbm90
IGJyZWFrIHJhbmdlcyBhdCBkaXNwbGF5Om5vbmUpCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworMQorMworNQorRmxvdyB0ZXN0CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBB
cnJheSBbd3JhcHBlciwwLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCx3cmFwcGVy
LDFdCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtZGlzcGxheS1ub25lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNwbGF5LW5vbmUuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4x
NTc4OGI4ZjBlYjI4ZThjOTQ0OTg4MWRlOTc1N2MyOWYzMGJhZWYxCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
ZGlzcGxheS1ub25lLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgYm9keSB7IGZvbnQtZmFt
aWx5OiBtb25vc3BhY2U7IH0KKyAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMjBweDsgfQorICAg
IC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAuZmxvdyB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93MTt9CisgICAgI3dyYXBwZXIgcCB7bWFyZ2luOiAwOyBwYWRkaW5nOiAw
O30KKyAgICAubm9uZSB7ZGlzcGxheTogbm9uZTt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZs
b3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA3MHB4OyBsZWZ0OiAyMHB4OyB0
b3A6IDI1MHB4O30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPGRpdiBpZD0iZGVzY3Jp
cHRpb24iPjwvZGl2PgorICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGNsYXNzPSJmbG93Ij48cD4x
PC9wPjxwIGNsYXNzPSJub25lIj4yPC9wPjxwPjM8L3A+PHAgY2xhc3M9Im5vbmUiPjQ8L3A+PHA+
NTwvcD48L2Rpdj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9k
aXY+CisgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7CisKKyAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdp
b246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGVsZW1lbnRzIHdpdGggZGlzcGxheTpub25lIChS
YW5nZSBzaG91bGQgbm90IGJyZWFrIHJhbmdlcyBhdCBkaXNwbGF5Om5vbmUpIik7CisgICAgdmFy
IHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworCisgICAgZGVi
dWcoIkZsb3cgdGVzdCIpOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndy
YXBwZXIiLCAxXSk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRl
biI7Cit9CisKKyAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZW1wdHktcmVn
aW9ucy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjRhYzQ0MWY0MDVmZGRmOGRiMTgyNTNlYWIz
NmJjYTYyYzdmZGFhMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMTMgQEAKK1tDU1NSZWdpb25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRSZWdp
b25GbG93UmFuZ2VzIGZvciBlbXB0eSByZWdpb25zCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworRmxvdyB0ZXN0CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMAorUEFTUyByYW5nZTIubGVu
Z3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFt3
cmFwcGVyLDAsd3JhcHBlciwxXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDAKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1lbXB0eS1y
ZWdpb25zLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1lbXB0eS1yZWdpb25zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2Y1MWNiMWE5M2I1ZTNh
NWY3ODBmNDU0YzU0MjkwOWUxMDA1ZTRiMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMu
aHRtbApAQCAtMCwwICsxLDUyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVy
LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFj
ZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiA1MHB4OyB9CisgICAgLmJvcmRlciB7IGJv
cmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgICNib3ggeyAtd2Via2l0LWZsb3ctaW50bzogZmxv
dzE7IGhlaWdodDogNTBweDsgbWFyZ2luLXRvcDogNDBweDsgYmFja2dyb3VuZC1jb2xvcjogYmx1
ZX0KKyAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4
OyBoZWlnaHQ6IDMwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQorICAgICNyZWdpb24yIHsg
LXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsgbGVm
dDogMjBweDsgdG9wOiAzMDBweDt9CisgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTog
ZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4
O30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwv
ZGl2PgorICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3giPjwvZGl2PjwvZGl2PgorICA8
ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9u
MiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJib3Jk
ZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBJbXBsZW1l
bnQgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBlbXB0eSByZWdpb25zIik7CisgICAg
dmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworICAgIHZh
ciByZWdpb24yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKyAgICB2YXIg
cmVnaW9uMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIik7CisKKyAgICBkZWJ1
ZygiRmxvdyB0ZXN0Iik7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDApOworICAg
IHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJh
bmdlQXQocmFuZ2UyLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIiLCAxXSk7CisgICAgcmFu
Z2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZh
bHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDApOworCitmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZs
b3dzKCkgeworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24y
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworfQorCisgIGhpZGVS
ZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ0MDJiMDU5N2MwMDJlY2Ew
MDVlOTM3ZjFlYjZkMDQ3MmYyOGM3MTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw0MiBAQAorW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxv
d1Jhbmdlcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitUZXh0IG5vZGUuCitFbXB0
eSByZWdpb25zCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMAorUEFTUyByYW5nZTIubGVuZ3RoIGlz
IDAKK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAwCitGbG93IGFydGljbGUKK1BBU1MgcmFuZ2UxLmxl
bmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3Jh
cHBlciwwLGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gx
LDEsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMV0KK1BBU1MgcmFuZ2UzLmxlbmd0
aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDEsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwx
LHdyYXBwZXIsMV0KK0FkZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMg
YmxvY2spCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3JhcHBlciwwLGJv
eDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNTIHJhbmdlMi5sZW5ndGgg
aXMgMQorUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gx
LDJdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwyLHdyYXBwZXIs
MV0gaXMgZXF1YWwgdG8gW2JveDEsMix3cmFwcGVyLDFdCitJbmNyZWFzZSBmb250IHNpemUKK1BB
U1MgcmFuZ2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBl
cXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNT
IEFycmF5IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQorUEFT
UyByYW5nZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBl
cXVhbCB0byBbI3RleHQsNSx3cmFwcGVyLDFdCitNYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBz
byBpdCB3aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMKK1BBU1MgcmFuZ2UxLmxlbmd0
aCBpcyAyCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwwXSBpcyBlcXVhbCB0byBbd3JhcHBl
ciwwLGJveDEsMF0KK1BBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94
MSwxLCN0ZXh0LDRdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbI3RleHQs
NSxib3gxLDJdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LGJveDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0
aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwwLGJv
eDEsMV0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1maXhlZC1wb3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44N2VhZWNiMjRkYzVmMjljNDU5YTljMTliYTQwZTk2YmU3YTllYzQxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtZml4ZWQtcG9zLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1tDU1NS
ZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGZpeGVkIHBv
c2l0aW9uZWQgZWxlbWVudHMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3
cmFwcGVyLDAsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLHdyYXBwZXIsMV0KK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy1maXhlZC1wb3MuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLWZpeGVkLXBvcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNhYjhiYjE3YmQwYWJi
YjRhYmY5OWU2OWJmMTNkZDNmY2I4NDM2ZWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1maXhlZC1wb3MuaHRt
bApAQCAtMCwwICsxLDMzIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAg
ICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9CisgICAgI2JveDEgeyAtd2Via2l0
LWZsb3ctaW50bzogZmxvdzsgcG9zaXRpb246IGZpeGVkOyB3aWR0aDogNTBweDsgaGVpZ2h0OiA1
MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsgdG9wOiAyNXB4OyBsZWZ0OiAyNXB4OyB9Cisg
ICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWln
aHQ6IDEwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwcHg7IGxlZnQ6IDUwcHg7IH0K
Kzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9k
aXY+CisgICAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PC9kaXY+PC9kaXY+Cisg
ICAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Cis8c2NyaXB0PgorICAg
IGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3Ig
UmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBmaXhlZCBwb3NpdGlvbmVkIGVsZW1lbnRz
Iik7CisgICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIp
OworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIiLCAxXSk7CisK
K2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cit9CisgICAgaGlk
ZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy1ob3Jpei1idC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uODFkYThlZGJkZjhkZjJlZmJmYWRiN2Y0YjliMjFjMTc3MzY1NWI2OAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLWhvcml6LWJ0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQyIEBACitbQ1NTUmVnaW9uc10g
VGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBob3Jpem9udGFsLWJ0IG1v
ZGUKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitUZXh0IG5vZGUuCitFbXB0eSByZWdp
b25zCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMAorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDAKK1BB
U1MgcmFuZ2UzLmxlbmd0aCBpcyAwCitGbG93IGFydGljbGUKK1BBU1MgcmFuZ2UxLmxlbmd0aCBp
cyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciww
LGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDEsYm94
MSwxXSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMV0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
CitQQVNTIEFycmF5IFtib3gxLDEsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwxLHdyYXBw
ZXIsMV0KK0FkZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2sp
CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0g
aXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQor
UEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJdCitQ
QVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwyLHdyYXBwZXIsMV0gaXMg
ZXF1YWwgdG8gW2JveDEsMix3cmFwcGVyLDFdCitJbmNyZWFzZSBmb250IHNpemUKK1BBU1MgcmFu
Z2UxLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0
byBbd3JhcHBlciwwLGJveDEsMV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5
IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQorUEFTUyByYW5n
ZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0
byBbI3RleHQsNSx3cmFwcGVyLDFdCitNYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3
aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAy
CitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwwXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJv
eDEsMF0KK1BBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0
ZXh0LDRdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbI3RleHQsNSxib3gx
LDJdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LGJveDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAx
CitQQVNTIEFycmF5IFtib3gxLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwwLGJveDEsMV0K
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJh
bmdlcy1ob3Jpei1idC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMTg1OWRjNWRkYTBl
ZjIyYmQyYmViMjFhY2EwYzRlNDdlN2NmMDM2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQuaHRt
bApAQCAtMCwwICsxLDEwNyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1l
dGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5q
cyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiBo
b3Jpem9udGFsLWJ0OyB9CisgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KKyAg
ICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQorICAgIC5ib3JkZXIgeyBib3JkZXI6IDFw
eCBzb2xpZCByZWQ7IH0KKyAgICAjYXJ0aWNsZSB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1
ZTsgaGVpZ2h0OiAxMzVweDsgcGFkZGluZzogMTBweDt9CisgICAgI2JveDEgeyBiYWNrZ3JvdW5k
LWNvbG9yOiBsaWdodGdyZWVuOyBoZWlnaHQ6IDExMHB4OyBwYWRkaW5nOiAxMHB4O30KKyAgICAj
Ym94MiB7IGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsgaGVpZ2h0OiAxMHB4OyBwYWRkaW5nOiA1
cHg7fQorICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUw
cHg7IGhlaWdodDogNzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9CisgICAgI3JlZ2lvbjIg
eyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4OyBs
ZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KKyAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzUw
cHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+
PC9kaXY+CisgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImFydGljbGUiPjxkaXYgaWQ9ImJv
eDEiPjxkaXYgaWQ9ImJveDIiPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PgorICA8ZGl2IGlkPSJy
ZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9
ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJib3JkZXIiPjwvZGl2
PgorICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFz
VGV4dCgpOworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246
OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGhvcml6b250YWwtYnQgbW9kZSIpOworICAgIHZhciBy
ZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKKyAgICB2YXIgcmVn
aW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7CisgICAgdmFyIHJlZ2lv
bjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpOworCisgICAgZGVidWcoIkVt
cHR5IHJlZ2lvbnMiKTsKKyAgICB2YXIgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25G
bG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDApOwor
ICAgIHZhciByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMCk7CisgICAgdmFyIHJhbmdlMyA9
IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMy5sZW5ndGgiLCAwKTsKKworICAgIGRlYnVnKCJGbG93IGFydGljbGUiKTsKKyAg
ICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7CisgICAg
YXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9ICJmbG93MSI7CisgICAgcmFuZ2UxID0gcmVn
aW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEs
IDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndl
YmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIu
bGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsi
Ym94MSIsIDEsICJib3gxIiwgMV0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVn
aW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAx
KTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMSwg
IndyYXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1ZygiQWRkIHRleHQgbm9kZSB0byByZWdpb24yIChj
cmVhdGVzIGFub255bW91cyBibG9jaykiKTsKKyAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5j
cmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiIpOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJib3gxIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Vi
a2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5s
ZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3
cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIs
IDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAx
LCAiYm94MSIsIDJdKTsKKyAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dS
YW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7CisgICAg
Y29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksICBbImJveDEiLCAyLCAid3JhcHBl
ciIsIDFdKTsKKworICAgIGRlYnVnKCJJbmNyZWFzZSBmb250IHNpemUiKTsKKyAgICB2YXIgd3Jh
cHBlciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3cmFwcGVyIik7CisgICAgd3JhcHBlci5z
dHlsZS5mb250U2l6ZSA9ICI0MHB4IjsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwg
MSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIs
IDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgIiN0ZXh0
IiwgNF0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdlcygp
OworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJl
QXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwgMV0p
OworCisgICAgZGVidWcoIk1ha2UgY2hpbGQgYSBjb250ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92
ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMyIpOworICAgIHZhciBib3gyID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2JveDInKTsKKyAgICBib3gyLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZs
b3cxIjsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsK
KyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMik7CisgICAgY29tcGFyZUFy
cmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMF0pOwor
ICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDEpLCBbImJveDEiLCAxLCAiI3Rl
eHQiLCA0XSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2Vz
KCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBh
cmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbIiN0ZXh0IiwgNSwgImJveDEiLCAyXSk7
CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAg
c2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMo
Z2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAwLCAiYm94MSIsIDFdKTsKKworZnVuY3Rp
b24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlk
ZGVuIjsKK30KKworICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLW9ubHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaW5saW5lLW9u
bHktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFjYTM0YzQ0OWM5NGM5M2U3MjdiNzQ3MDAyNmU2
YTAwYWQ2NTIyMDgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMiBAQAorW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxv
d1JhbmdlcyBmb3IgaW5saW5lIGVsZW1lbnRzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworRmxvdyB0ZXN0CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3JhcHBl
ciwwLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCx3cmFwcGVyLDFdCitQQVNTIHJh
bmdlMi5sZW5ndGggaXMgMAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjYxNWMzNGU1YjVlZGE5ZjA5Zjc0ODE0ZjM0YjNjZDNiN2NjNmYyNGQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1pbmxpbmUtb25seS5odG1sCkBAIC0wLDAgKzEsNDcgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAgIGJvZHkg
eyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgI3dyYXBwZXIgeyBmb250LXNpemU6IDIw
cHg7IH0KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9CisgICAgI2lubGlu
ZU9ubHkgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0
Ymx1ZTsgaGVpZ2h0OiAxMzVweDsgcGFkZGluZzogMTBweDt9CisgICAgI3JlZ2lvbjEgeyAtd2Vi
a2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA3MHB4OyBsZWZ0OiAy
MHB4OyB0b3A6IDI1MHB4O30KKyAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93
MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQor
PC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+
CisgIDxkaXYgaWQ9IndyYXBwZXIiPjxzcGFuIGlkPSJpbmxpbmVPbmx5Ij48L3NwYW4+PC9kaXY+
CisgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJy
ZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRlc2NyaXB0aW9uKCJb
Q1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBpbmxp
bmUgZWxlbWVudHMiKTsKKyAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb24xIik7CisgICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVnaW9uMiIpOworCisKKyAgICBkZWJ1ZygiRmxvdyB0ZXN0Iik7CisgICAgcmFuZ2UxID0gcmVn
aW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEs
IDApLCBbIndyYXBwZXIiLCAwLCAid3JhcHBlciIsIDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24y
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTIubGVuZ3RoIiwgMCk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNp
YmlsaXR5ID0gImhpZGRlbiI7Cit9CisKKyAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Cis8L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtaW5saW5lLXN2Zy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTVlY2I4NmY5MDgwMGViZmU0
MGEwMzgyMTQxN2E1MDQ3YzVmN2UwNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmctZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorVGVzdCB0aGF0IGdldHRpbmcgdGhlIHJlZ2lvbiByYW5n
ZXMgd2hlbiB0aGUgZmxvd2luZyBjb250ZW50IGhhcyBpbmxpbmUgc3ZnIGRvZXMgbm90IGNyYXNo
LgorCitPbiBzdWNjZXNzIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCisKK1BBU1MKKworCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy1pbmxpbmUtc3ZnLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtc3ZnLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTg0YTE5
YzlkNjM4ZmZjZGNiYWVhZGE2M2QxNzZjNmQ1YzIyZDA0YgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGlu
ZS1zdmcuaHRtbApAQCAtMCwwICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAgICAjYXJ0aWNsZSB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93LWZy
b206IGZsb3c7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfQorICAgICAgICA8L3N0eWxl
PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keT4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBB
c1RleHQoKTsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgICAgIDxwPlRlc3QgdGhhdCBnZXR0aW5n
IHRoZSByZWdpb24gcmFuZ2VzIHdoZW4gdGhlIGZsb3dpbmcgY29udGVudCBoYXMgaW5saW5lIHN2
ZyBkb2VzIG5vdCBjcmFzaC48L3A+CisgICAgICAgIDxwPk9uIHN1Y2Nlc3MgeW91IHNob3VsZCBz
ZWUgUEFTUyBiZWxvdy48L3A+CisgICAgICAgIDxwIGlkPSJvdXRwdXQiPjwvcD4KKyAgICAgICAg
PGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgICAgICA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIj4KKyAgICAgICAgICAgICAgICA8cmVjdCB3aWR0
aD0iMTAwIiBoZWlnaHQ9IjEwMCIgc3R5bGU9ImZpbGw6cmdiKDAsMjU1LDApIi8+CisgICAgICAg
ICAgICA8L3N2Zz4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbiI+PC9k
aXY+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uIikud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLmlubmVySFRNTCA9ICJQ
QVNTIjsKKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
dGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy10ZXh0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YzA1OTNlY2Q5
MTU5OWM3ZjlhZjU0N2NjNmM1Y2Y1ODQ4NjFiZWE1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6
Z2V0UmVnaW9uRmxvd1Jhbmdlcy4gVGV4dCBicmVha3MgaW4gdHdvIHJlZ2lvbnMKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCitUZXh0IG5vZGUuCitGbG93IHRlc3QKK1BBU1MgcmFuZ2Ux
Lmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsI3RleHQsNF0gaXMgZXF1YWwgdG8g
W3dyYXBwZXIsMCwjdGV4dCw0XQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkg
WyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3cmFwcGVyLDFdCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
dGV4dC12ZXJ0LWxyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZWYxM2I4Yzg4M2YzMzMzNzJiMjI4YmJiODMwZjZhN2YyYTEyNWRjYQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLXRleHQtdmVydC1sci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorW0NTU1Jl
Z2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBpbiB2ZXJ0aWNhbC1y
bCBtb2RlLiBUZXh0IGJyZWFrcyBpbnRvIHR3byByZWdpb25zCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworVGV4dCBub2RlLgorRmxvdyB0ZXN0CitQQVNTIHJhbmdlMS5sZW5ndGggaXMg
MQorUEFTUyBBcnJheSBbd3JhcHBlciwwLCN0ZXh0LDRdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAs
I3RleHQsNF0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFsjdGV4dCw1LHdy
YXBwZXIsMV0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsd3JhcHBlciwxXQorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1s
ci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtdGV4dC12ZXJ0LWxyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2Q0NDdhNGVkZGQ0NDBmZjA2NjM2
YjM3MWM5NTljYTBiY2ZhNGVkMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci5odG1sCkBA
IC0wLDAgKzEsNDkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNo
YXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwv
c2NyaXB0PgorPHN0eWxlPgorICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGlj
YWwtcmw7IH0KKyAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFw
cGVyIHsgZm9udC1zaXplOiA1MHB4OyB9CisgICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlk
IHJlZDsgfQorICAgICNib3ggeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7fQorICAgICNyZWdp
b24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogNzBweDsgaGVpZ2h0OiAyNTBw
eDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9CisgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdzE7IHdpZHRoOiA2MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6
IDMwMHB4O30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPGRpdiBpZD0iZGVzY3JpcHRp
b24iPjwvZGl2PgorICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3giPlRleHQgbm9kZS48
L2Rpdj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Cisg
IDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVz
Y3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5n
ZXMgaW4gdmVydGljYWwtcmwgbW9kZS4gVGV4dCBicmVha3MgaW50byB0d28gcmVnaW9ucyIpOwor
ICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKKyAg
ICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7CisKKwor
ICAgIGRlYnVnKCJGbG93IHRlc3QiKTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwg
MSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIs
IDAsICIjdGV4dCIsIDRdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Cisg
ICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAid3Jh
cHBlciIsIDFdKTsKKworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxp
dHkgPSAiaGlkZGVuIjsKK30KKworICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjg5YTE1NjE2ZTkyMzRlZTRiMTk5ZjEwZTA5MDEzMGM1YTA2NWFiNzIKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy10ZXh0Lmh0bWwKQEAgLTAsMCArMSw0NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgYm9keSB7IGZvbnQtZmFt
aWx5OiBtb25vc3BhY2U7IH0KKyAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogNTBweDsgfQorICAg
IC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAjYm94IHsgLXdlYmtpdC1m
bG93LWludG86IGZsb3cxO30KKyAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93
MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDcwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQor
ICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhl
aWdodDogNjBweDsgbGVmdDogMjBweDsgdG9wOiAzMDBweDt9Cis8L3N0eWxlPgorPC9oZWFkPgor
PGJvZHk+CisgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBl
ciI+PGRpdiBpZD0iYm94Ij5UZXh0IG5vZGUuPC9kaXY+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lv
bjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9y
ZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRlc2NyaXB0aW9uKCJbQ1NTUmVnaW9uc10gVGVzdCBm
b3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzLiBUZXh0IGJyZWFrcyBpbiB0d28gcmVnaW9u
cyIpOworICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEi
KTsKKyAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7
CisKKyAgICBkZWJ1ZygiRmxvdyB0ZXN0Iik7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRH
ZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0
aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBw
ZXIiLCAwLCAiI3RleHQiLCA0XSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdp
b25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEp
OworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbIiN0ZXh0IiwgNSwg
IndyYXBwZXIiLCAxXSk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNp
YmlsaXR5ID0gImhpZGRlbiI7Cit9CisKKyAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZl
cnQtbHItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1MzY5NmJkMDI5ZTUyZmYyY2Q1MmQxYWFi
MGMwMjQwNjEwZDRkNTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDQyIEBACitbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93
UmFuZ2VzIGZvciB2ZXJ0aWNhbC1sciBtb2RlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworVGV4dCBub2RlLgorRW1wdHkgcmVnaW9ucworUEFTUyByYW5nZTEubGVuZ3RoIGlzIDAKK1BB
U1MgcmFuZ2UyLmxlbmd0aCBpcyAwCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMAorRmxvdyBhcnRp
Y2xlCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEs
MV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNTIHJhbmdlMi5sZW5ndGggaXMg
MQorUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMV0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDFd
CitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwxLHdyYXBwZXIsMV0g
aXMgZXF1YWwgdG8gW2JveDEsMSx3cmFwcGVyLDFdCitBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIg
KGNyZWF0ZXMgYW5vbnltb3VzIGJsb2NrKQorUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1Mg
QXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQor
UEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSxib3gxLDJdIGlzIGVx
dWFsIHRvIFtib3gxLDEsYm94MSwyXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJy
YXkgW2JveDEsMix3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFtib3gxLDIsd3JhcHBlciwxXQorSW5j
cmVhc2UgZm9udCBzaXplCitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbd3Jh
cHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCitQQVNTIHJhbmdl
Mi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0LDRdIGlzIGVxdWFsIHRvIFti
b3gxLDEsI3RleHQsNF0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFsjdGV4
dCw1LHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsd3JhcHBlciwxXQorTWFrZSBjaGls
ZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byByZWdpb24z
CitQQVNTIHJhbmdlMS5sZW5ndGggaXMgMgorUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMF0g
aXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDBdCitQQVNTIEFycmF5IFtib3gxLDEsI3RleHQs
NF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEK
K1BBU1MgQXJyYXkgWyN0ZXh0LDUsYm94MSwyXSBpcyBlcXVhbCB0byBbI3RleHQsNSxib3gxLDJd
CitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwwLGJveDEsMV0gaXMg
ZXF1YWwgdG8gW2JveDEsMCxib3gxLDFdCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1sci5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1sci5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjI5NGY2MDRmY2E2ZmM5NTQxYmRmZGY2YzA1MmIxZWJkMWQ2YzlkYTYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy12ZXJ0LWxyLmh0bWwKQEAgLTAsMCArMSwxMDcgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAgIGh0bWwgeyAt
d2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7IH0KKyAgICBib2R5IHsgZm9udC1mYW1p
bHk6IG1vbm9zcGFjZTsgfQorICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAzMHB4OyB9CisgICAg
LmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQorICAgICNhcnRpY2xlIHsgYmFja2dy
b3VuZC1jb2xvcjogbGlnaHRibHVlOyB3aWR0aDogMTM1cHg7IHBhZGRpbmc6IDEwcHg7fQorICAg
ICNib3gxIHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmVlbjsgd2lkdGg6IDExMHB4OyBwYWRk
aW5nOiAxMHB4O30KKyAgICAjYm94MiB7IGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsgd2lkdGg6
IDEwcHg7IHBhZGRpbmc6IDVweDt9CisgICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTog
ZmxvdzE7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4
O30KKyAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDYwcHg7
IGhlaWdodDogMjUwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorICAgICNyZWdpb24zIHsg
LXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogNjBweDsgaGVpZ2h0OiAyNTBweDsgbGVm
dDogMjBweDsgdG9wOiAzNTBweDt9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CisgIDxkaXYg
aWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KKyAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYXJ0
aWNsZSI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MiI+PC9kaXY+PC9kaXY+PC9kaXY+PC9k
aXY+CisgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlk
PSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9uMyIgY2xh
c3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4K
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0
Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNd
IFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgdmVydGljYWwtbHIgbW9k
ZSIpOworICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEi
KTsKKyAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7
CisgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpOwor
CisgICAgZGVidWcoIkVtcHR5IHJlZ2lvbnMiKTsKKyAgICB2YXIgcmFuZ2UxID0gcmVnaW9uMS53
ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2Ux
Lmxlbmd0aCIsIDApOworICAgIHZhciByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMCk7Cisg
ICAgdmFyIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAwKTsKKworICAgIGRlYnVnKCJGbG93
IGFydGljbGUiKTsKKyAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
cnRpY2xlIik7CisgICAgYXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9ICJmbG93MSI7Cisg
ICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hv
dWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0
UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKKyAgICByYW5n
ZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMV0pOworICAgIHJhbmdlMyA9IHJlZ2lv
bjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJh
bmdlMy5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAw
KSwgWyJib3gxIiwgMSwgIndyYXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1ZygiQWRkIHRleHQgbm9k
ZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91cyBibG9jaykiKTsKKyAgICB2YXIgdGV4dE5v
ZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiIpOworICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJib3gxIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOworICAgIHJhbmdl
MSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQo
cmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7CisgICAgcmFuZ2UyID0gcmVn
aW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIs
IDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsKKyAgICByYW5nZTMgPSByZWdpb24zLndlYmtp
dEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVu
Z3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksICBbImJv
eDEiLCAyLCAid3JhcHBlciIsIDFdKTsKKworICAgIGRlYnVnKCJJbmNyZWFzZSBmb250IHNpemUi
KTsKKyAgICB2YXIgd3JhcHBlciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3cmFwcGVyIik7
CisgICAgd3JhcHBlci5zdHlsZS5mb250U2l6ZSA9ICI0MHB4IjsKKyAgICByYW5nZTEgPSByZWdp
b24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
YW5nZTEubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwg
MCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Vi
a2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5s
ZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJi
b3gxIiwgMSwgIiN0ZXh0IiwgNF0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVn
aW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAx
KTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyIjdGV4dCIsIDUs
ICJ3cmFwcGVyIiwgMV0pOworCisgICAgZGVidWcoIk1ha2UgY2hpbGQgYSBjb250ZW50IG5vZGUs
IHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMyIpOworICAgIHZhciBib3gy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JveDInKTsKKyAgICBib3gyLnN0eWxlLndlYmtp
dEZsb3dJbnRvID0gImZsb3cxIjsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMik7
CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAs
ICJib3gxIiwgMF0pOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDEpLCBb
ImJveDEiLCAxLCAiI3RleHQiLCA0XSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIs
IDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbIiN0ZXh0Iiwg
NSwgImJveDEiLCAyXSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAwLCAiYm94MSIs
IDFdKTsKKworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKK30KKworICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKKzwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1ybC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy12ZXJ0LXJsLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNTJjOGEyOWYzNjAxNTA0NDlhOTRk
NzM2MGIzNGJlYTM1NmNkMDQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1ybC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw0MiBAQAorW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9u
Rmxvd1JhbmdlcyBmb3IgdmVydGljYWwtcmwgbW9kZQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKK1RleHQgbm9kZS4KK0VtcHR5IHJlZ2lvbnMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAw
CitQQVNTIHJhbmdlMi5sZW5ndGggaXMgMAorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDAKK0Zsb3cg
YXJ0aWNsZQorUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxi
b3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQorUEFTUyByYW5nZTIubGVuZ3Ro
IGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSxib3gxLDFdIGlzIGVxdWFsIHRvIFtib3gxLDEsYm94
MSwxXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSx3cmFwcGVy
LDFdIGlzIGVxdWFsIHRvIFtib3gxLDEsd3JhcHBlciwxXQorQWRkIHRleHQgbm9kZSB0byByZWdp
b24yIChjcmVhdGVzIGFub255bW91cyBibG9jaykKK1BBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCitQ
QVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEs
MV0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCitQQVNTIEFycmF5IFtib3gxLDEsYm94MSwyXSBp
cyBlcXVhbCB0byBbYm94MSwxLGJveDEsMl0KK1BBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCitQQVNT
IEFycmF5IFtib3gxLDIsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwyLHdyYXBwZXIsMV0K
K0luY3JlYXNlIGZvbnQgc2l6ZQorUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkg
W3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQorUEFTUyBy
YW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0
byBbYm94MSwxLCN0ZXh0LDRdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBb
I3RleHQsNSx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LHdyYXBwZXIsMV0KK01ha2Ug
Y2hpbGQgYSBjb250ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVn
aW9uMworUEFTUyByYW5nZTEubGVuZ3RoIGlzIDIKK1BBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gx
LDBdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwwXQorUEFTUyBBcnJheSBbYm94MSwxLCN0
ZXh0LDRdIGlzIGVxdWFsIHRvIFtib3gxLDEsI3RleHQsNF0KK1BBU1MgcmFuZ2UyLmxlbmd0aCBp
cyAxCitQQVNTIEFycmF5IFsjdGV4dCw1LGJveDEsMl0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsYm94
MSwyXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMCxib3gxLDFd
IGlzIGVxdWFsIHRvIFtib3gxLDAsYm94MSwxXQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtcmwuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXZlcnQtcmwuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi45MThkYjdkMGJjN2JlMWFhOTZmZDU1ODI0MDYxZGE5YTVlZjYzMDEyCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdp
b24tZmxvdy1yYW5nZXMtdmVydC1ybC5odG1sCkBAIC0wLDAgKzEsMTA4IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBodG1s
IHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyB9CisgICAgYm9keSB7IGZvbnQt
ZmFtaWx5OiBtb25vc3BhY2U7IH0KKyAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQor
ICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAjYXJ0aWNsZSB7IGJh
Y2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTsgd2lkdGg6IDEzNXB4OyBwYWRkaW5nOiAxMHB4O30K
KyAgICAjYm94MSB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47IHdpZHRoOiAxMTBweDsg
cGFkZGluZzogMTBweDt9CisgICAgI2JveDIgeyBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7IHdp
ZHRoOiAxMHB4OyBwYWRkaW5nOiA1cHg7fQorICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZy
b206IGZsb3cxOyB3aWR0aDogNzBweDsgaGVpZ2h0OiAyNTBweDsgbGVmdDogMjBweDsgdG9wOiAy
NTBweDt9CisgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA2
MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KKyAgICAjcmVnaW9u
MyB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDYwcHg7IGhlaWdodDogMjUwcHg7
IGxlZnQ6IDIwcHg7IHRvcDogMzUwcHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8
ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+CisgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9
ImFydGljbGUiPjxkaXYgaWQ9ImJveDEiPjxkaXYgaWQ9ImJveDIiPjwvZGl2PjwvZGl2PjwvZGl2
PjwvZGl2PgorICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRp
diBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjMi
IGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQ+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdp
b25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIHZlcnRpY2FsLXJs
IG1vZGUiKTsKKyAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b24xIik7CisgICAgdmFyIHJlZ2lvbjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
MiIpOworICAgIHZhciByZWdpb24zID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMi
KTsKKworICAgIGRlYnVnKCJFbXB0eSByZWdpb25zIik7CisgICAgdmFyIHJhbmdlMSA9IHJlZ2lv
bjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJh
bmdlMS5sZW5ndGgiLCAwKTsKKyAgICB2YXIgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdp
b25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDAp
OworICAgIHZhciByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsK
KyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMCk7CisKKyAgICBkZWJ1Zygi
RmxvdyBhcnRpY2xlIik7CisgICAgdmFyIGFydGljbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYXJ0aWNsZSIpOworICAgIGFydGljbGUuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEi
OworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7CisgICAg
cmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxk
RXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFu
Z2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiYm94MSIsIDFdKTsKKyAgICByYW5nZTMgPSBy
ZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRv
KCJyYW5nZTMubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdl
MywgMCksIFsiYm94MSIsIDEsICJ3cmFwcGVyIiwgMV0pOworCisgICAgZGVidWcoIkFkZCB0ZXh0
IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2spIik7CisgICAgdmFyIHRl
eHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4iKTsKKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYm94MSIpLmFwcGVuZENoaWxkKHRleHROb2RlKTsKKyAgICBy
YW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5n
ZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9
IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFu
Z2UyLCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAyXSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53
ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2Uz
Lmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCAg
WyJib3gxIiwgMiwgIndyYXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1ZygiSW5jcmVhc2UgZm9udCBz
aXplIik7CisgICAgdmFyIHdyYXBwZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid3JhcHBl
ciIpOworICAgIHdyYXBwZXIuc3R5bGUuZm9udFNpemUgPSAiNDBweCI7CisgICAgcmFuZ2UxID0g
cmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UxLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24y
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCks
IFsiYm94MSIsIDEsICIjdGV4dCIsIDRdKTsKKyAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3Ro
IiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiI3RleHQi
LCA1LCAid3JhcHBlciIsIDFdKTsKKworICAgIGRlYnVnKCJNYWtlIGNoaWxkIGEgY29udGVudCBu
b2RlLCBzbyBpdCB3aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMiKTsKKyAgICB2YXIg
Ym94MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdib3gyJyk7CisgICAgYm94Mi5zdHlsZS53
ZWJraXRGbG93SW50byA9ICJmbG93MSI7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIs
IDIpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIi
LCAwLCAiYm94MSIsIDBdKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAx
KSwgWyJib3gxIiwgMSwgIiN0ZXh0IiwgNF0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0
R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5n
dGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4
dCIsIDUsICJib3gxIiwgMl0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9u
Rmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsK
KyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMCwgImJv
eDEiLCAxXSk7CisKKworZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxp
dHkgPSAiaGlkZGVuIjsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0
eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKK30KKworaGlkZVJlZ2lvbnNBbmRGbG93cygpOwor
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJs
LXJiLWxyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMtcmwtcmItbHItZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmQ0MDY5ZjllNGNkNTVmOWYzMmQxYmQ0M2Y4MWEwMjUwYTAzZjQ1MjEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDE1IEBACitbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2Vz
IGZvciBtaXhlZCB2ZXJ0aWNhbCBtb2RlcworUEFTUyByYW5nZTEubGVuZ3RoIGlzIDIKK1BBU1Mg
QXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQor
UEFTUyBBcnJheSBbYm94MywxLGJveDMsMl0gaXMgZXF1YWwgdG8gW2JveDMsMSxib3gzLDJdCitQ
QVNTIHJhbmdlMi5sZW5ndGggaXMgMQorUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1
YWwgdG8gW2JveDEsMSxib3gxLDJdCitQQVNTIHJhbmdlMy5sZW5ndGggaXMgMQorUEFTUyBBcnJh
eSBbYm94MSwyLGJveDMsMV0gaXMgZXF1YWwgdG8gW2JveDEsMixib3gzLDFdCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK0hvcml6b250YWwgVEIKK1gK
K1ZlcnRpY2FsIExSSG9yaXpvbnRhbCBCVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJi
LWxyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzRhODUxNGMw
M2MzZDYzODE3MDE2YTY4ZGM4MGRmZTQxMGI1NjQzZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmct
bW9kZXMtcmwtcmItbHIuaHRtbApAQCAtMCwwICsxLDU4IEBACis8IWRvY3R5cGUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3Nj
cmlwdD4KKzxzdHlsZT4KKyAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2Fs
LXJsIDt9CisgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KKyAgICAjd3JhcHBl
ciB7IGZvbnQtc2l6ZTogMzBweDsgfQorICAgIC5ib3JkZXIgeyBib3JkZXI6IDFweCBzb2xpZCBy
ZWQ7IH0KKyAgICAjYm94MSB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OyBiYWNrZ3JvdW5kLWNv
bG9yOiBncmVlbjsgfQorICAgICNib3gxMSB7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47
IHdpZHRoOiAzMHB4OyBtYXJnaW4tcmlnaHQ6IDcwcHg7fQorICAgICNyZWdpb24xIHsgLXdlYmtp
dC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiA0MDBweDsgIH0KKyAgICAj
cmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjAwcHg7IGhlaWdodDog
NDAwcHg7ICB9CisgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6
IDIwMHB4OyBoZWlnaHQ6IDQwMHB4OyAgfQorICAgICNib3gyIHsgLXdlYmtpdC13cml0aW5nLW1v
ZGU6IGhvcml6b250YWwtdGI7IGJhY2tncm91bmQtY29sb3I6IGdyZXk7IHdpZHRoOiAxNTBweDsg
aGVpZ2h0OiA0MDBweDt9CisgICAgI2JveDIyIHsgaGVpZ2h0OiAzMHB4OyB3aWR0aDogMzBweDsg
YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH0KKyAgICAjYm94MyB7IC13ZWJraXQtd3JpdGluZy1t
b2RlOiB2ZXJ0aWNhbC1scjsgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTsgd2lkdGg6IDE1
MHB4OyBoZWlnaHQ6IDQwMHB4O30KKyAgICAjYm94NCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiBo
b3Jpem9udGFsLWJ0OyBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7IGhlaWdodDogNjBweDsgd2lk
dGg6IDIwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwcHg7IGxlZnQ6IDIwcHg7fQor
PC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rp
dj4KKyAgICA8IS0tZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJib3gx
MSI+PC9kaXY+PGRpdiBpZD0iYm94MiI+VmVydCBSTDwvZGl2PjxkaXYgaWQ9ImJveDMiPlZlcnQg
TFI8L2Rpdj48ZGl2IGlkPSJib3g0Ij5Ib3Jpem9udGFsIEJUPC9kaXY+PC9kaXYtLT4KKworICAg
IDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveDEiPjxkaXYgaWQ9ImJveDExIj48L2Rpdj48
ZGl2IGlkPSJib3gyIj5Ib3Jpem9udGFsIFRCPGRpdiBpZD0iYm94MjIiPlg8L2Rpdj48L2Rpdj48
ZGl2IGlkPSJib3gzIj5WZXJ0aWNhbCBMUjxkaXYgaWQ9ImJveDQiPkhvcml6b250YWwgQlQ8L2Rp
dj48L2Rpdj48L2Rpdj48L2Rpdj4KKyAgICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVy
Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAg
ICA8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAg
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVidWcoIltDU1NSZWdpb25zXSBUZXN0IGZvciBS
ZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIG1peGVkIHZlcnRpY2FsIG1vZGVzIik7Cisg
ICAgcmVnaW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7CisgICAgcmVn
aW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7CisgICAgcmVnaW9uMyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIik7CisgICAgcmFuZ2UxID0gcmVnaW9u
MS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFu
Z2UxLmxlbmd0aCIsIDIpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDAp
LCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UxLCAxKSwgWyJib3gzIiwgMSwgImJveDMiLCAyXSk7CisgICAgcmFuZ2UyID0gcmVn
aW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIs
IDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsKKyAgICByYW5nZTMgPSByZWdpb24zLndlYmtp
dEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVu
Z3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiYm94
MSIsIDIsICJib3gzIiwgMV0pOworCitmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewor
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9
ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworfQorICAgIGhpZGVSZWdpb25zQW5k
Rmxvd3MoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGlu
Zy1tb2Rlcy10Yi1ybC1sci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXRiLXJsLWxyLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iM2U1OWUyNTA2MzU2M2ZlMGMwOTVhZTc5ZDAwZTFhOWIxMTJj
NjAxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dl
dC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxNSBAQAorW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9u
Rmxvd1JhbmdlcyBmb3IgbWl4ZWQgdmVydGljYWwgbW9kZXMKK1BBU1MgcmFuZ2UxLmxlbmd0aCBp
cyAyCitQQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciww
LGJveDEsMV0KK1BBU1MgQXJyYXkgW2JveDMsMSxib3gzLDJdIGlzIGVxdWFsIHRvIFtib3gzLDEs
Ym94MywyXQorUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKK1BBU1MgQXJyYXkgW2JveDEsMSxib3gx
LDJdIGlzIGVxdWFsIHRvIFtib3gxLDEsYm94MSwyXQorUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEK
K1BBU1MgQXJyYXkgW2JveDEsMixib3gzLDFdIGlzIGVxdWFsIHRvIFtib3gxLDIsYm94MywxXQor
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitWZXJ0aWNh
bCBSTAorWAorVmVydGljYWwgTFJZCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMtdGItcmwtbHIu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLXdyaXRpbmctbW9kZXMtdGItcmwtbHIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NGE4Mzc0ZDlhOGMx
NWU0ZjI5OWQyNzhiMGY0MDI0NWZhNzIxNTk3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rl
cy10Yi1ybC1sci5odG1sCkBAIC0wLDAgKzEsNTcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0
PgorPHN0eWxlPgorICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgI3dy
YXBwZXIgeyBmb250LXNpemU6IDMwcHg7IH0KKyAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29s
aWQgcmVkOyB9CisgICAgI2JveDEgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgYmFja2dyb3Vu
ZC1jb2xvcjogZ3JlZW47IH0KKyAgICAjYm94MTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdy
ZWVuOyBoZWlnaHQ6IDMwcHg7IG1hcmdpbi10b3A6IDcwcHg7fQorICAgICNyZWdpb24xIHsgLXdl
YmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiA0MDBweDsgaGVpZ2h0OiAyMDBweDsgIH0KKyAg
ICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogNDAwcHg7IGhlaWdo
dDogMjAwcHg7ICB9CisgICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lk
dGg6IDQwMHB4OyBoZWlnaHQ6IDIwMHB4OyAgfQorICAgICNib3gyIHsgLXdlYmtpdC13cml0aW5n
LW1vZGU6IHZlcnRpY2FsLXJsOyBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5OyBoZWlnaHQ6IDE1MHB4
OyB3aWR0aDogNDAwcHg7fQorICAgICNib3gyMiB7IGhlaWdodDogMzBweDsgd2lkdGg6IDMwcHg7
IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9CisgICAgI2JveDMgeyAtd2Via2l0LXdyaXRpbmct
bW9kZTogdmVydGljYWwtbHI7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTsgd2lkdGg6IDQw
MHB4OyBoZWlnaHQ6IDE1MHB4O30KKyAgICAjYm94NCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiBo
b3Jpem9udGFsLWJ0OyBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7IGhlaWdodDogNjBweDsgd2lk
dGg6IDYwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAyMHB4OyBsZWZ0OiAyMHB4O30KKzwv
c3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+
CisgICAgPCEtLWRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MTEi
PjwvZGl2PjxkaXYgaWQ9ImJveDIiPlZlcnQgUkw8L2Rpdj48ZGl2IGlkPSJib3gzIj5WZXJ0IExS
PC9kaXY+PGRpdiBpZD0iYm94NCI+SG9yaXpvbnRhbCBCVDwvZGl2PjwvZGl2LS0+CisKKyAgICA8
ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJib3gxMSI+PC9kaXY+PGRp
diBpZD0iYm94MiI+VmVydGljYWwgUkw8ZGl2IGlkPSJib3gyMiI+WDwvZGl2PjwvZGl2PjxkaXYg
aWQ9ImJveDMiPlZlcnRpY2FsIExSPGRpdiBpZD0iYm94NCI+WTwvZGl2PjwvZGl2PjwvZGl2Pjwv
ZGl2PgorICAgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICAgIDxk
aXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICAgIDxkaXYgaWQ9InJlZ2lv
bjMiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisKKyAgICBkZWJ1ZygiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9u
Rmxvd1JhbmdlcyBmb3IgbWl4ZWQgdmVydGljYWwgbW9kZXMiKTsKKyAgICByZWdpb24xID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKKyAgICByZWdpb24yID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKyAgICByZWdpb24zID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJlZ2lvbjMiKTsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMik7
CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAs
ICJib3gxIiwgMV0pOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDEpLCBb
ImJveDMiLCAxLCAiYm94MyIsIDJdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwg
MSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEs
ICJib3gxIiwgMl0pOworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMiwgImJveDMiLCAx
XSk7CisKK2Z1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7CisgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHlsZS52aXNp
YmlsaXR5ID0gImhpZGRlbiI7Cit9CisgICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41
ZTdkN2RjNWNiY2VmYzE3OGMzMmRjZmYyMmI1MTBhMmFiZmEwYTkzCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb24tZmxvdy1yYW5nZXMu
aHRtbApAQCAtMCwwICsxLDEwNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBl
ci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3Bh
Y2U7IH0KKyAgICAjd3JhcHBlciB7IGZvbnQtc2l6ZTogMzBweDsgfQorICAgIC5ib3JkZXIgeyBi
b3JkZXI6IDFweCBzb2xpZCByZWQ7IH0KKyAgICAjYXJ0aWNsZSB7IGJhY2tncm91bmQtY29sb3I6
IGxpZ2h0Ymx1ZTsgaGVpZ2h0OiAxMzVweDsgcGFkZGluZzogMTBweDt9CisgICAgI2JveDEgeyBi
YWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZWVuOyBoZWlnaHQ6IDExMHB4OyBwYWRkaW5nOiAxMHB4
O30KKyAgICAjYm94MiB7IGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsgaGVpZ2h0OiAxMHB4OyBw
YWRkaW5nOiA1cHg7fQorICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3
aWR0aDogMjUwcHg7IGhlaWdodDogNzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9CisgICAg
I3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0
OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KKyAgICAjcmVnaW9uMyB7IC13ZWJraXQt
Zmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6IDIwcHg7
IHRvcDogMzUwcHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICA8ZGl2IGlkPSJkZXNj
cmlwdGlvbiI+PC9kaXY+CisgIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImFydGljbGUiPjxk
aXYgaWQ9ImJveDEiPjxkaXYgaWQ9ImJveDIiPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PgorICA8
ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgPGRpdiBpZD0icmVnaW9u
MiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+CisgIDxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJib3Jk
ZXIiPjwvZGl2PgorICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZv
ciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMuIik7CisgICAgdmFyIHJlZ2lvbjEgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOworICAgIHZhciByZWdpb24yID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKKyAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIik7CisKKyAgICBkZWJ1ZygiRW1wdHkgcmVnaW9ucyIp
OworICAgIHZhciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsK
KyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMCk7CisgICAgdmFyIHJhbmdl
MiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAwKTsKKyAgICB2YXIgcmFuZ2UzID0gcmVnaW9uMy53ZWJr
aXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxl
bmd0aCIsIDApOworCisgICAgZGVidWcoIkZsb3cgYXJ0aWNsZSIpOworICAgIHZhciBhcnRpY2xl
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKyAgICBhcnRpY2xlLnN0eWxl
LndlYmtpdEZsb3dJbnRvID0gImZsb3cxIjsKKyAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3Ro
IiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBl
ciIsIDAsICJib3gxIiwgMV0pOworICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9u
Rmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsK
KyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgImJv
eDEiLCAxXSk7CisgICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2Vz
KCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBh
cmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAxLCAid3JhcHBlciIsIDFd
KTsKKworICAgIGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJlZ2lvbjIgKGNyZWF0ZXMgYW5vbnlt
b3VzIGJsb2NrKSIpOworICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2Rl
KCJUZXh0IG5vZGUuIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJveDEiKS5hcHBl
bmRDaGlsZCh0ZXh0Tm9kZSk7CisgICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25G
bG93UmFuZ2VzKCk7CisgICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwor
ICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAi
Ym94MSIsIDFdKTsKKyAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5n
ZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29t
cGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMl0p
OworICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKKyAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIsICJ3cmFwcGVyIiwgMV0pOworCisg
ICAgZGVidWcoIkluY3JlYXNlIGZvbnQgc2l6ZSIpOworICAgIHZhciB3cmFwcGVyID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoIndyYXBwZXIiKTsKKyAgICB3cmFwcGVyLnN0eWxlLmZvbnRTaXpl
ID0gIjQwcHgiOworICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOworICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKKyAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAx
XSk7CisgICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Cisg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJh
eXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7CisgICAg
cmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7CisgICAgc2hvdWxk
RXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOworICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFu
Z2VBdChyYW5nZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBwZXIiLCAxXSk7CisKKyAgICBkZWJ1
ZygiTWFrZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9u
MSB0byByZWdpb24zIik7CisgICAgdmFyIGJveDIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
Ym94MicpOworICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzEiOworICAgIHJh
bmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOworICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKKyAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAwXSk7CisgICAgY29tcGFyZUFy
cmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIsIDEsICIjdGV4dCIsIDRdKTsKKyAg
ICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91
bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRS
YW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94MSIsIDJdKTsKKyAgICByYW5nZTMg
PSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKKyAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7CisgICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJh
bmdlMywgMCksIFsiYm94MSIsIDAsICJib3gxIiwgMV0pOworCitmdW5jdGlvbiBoaWRlUmVnaW9u
c0FuZEZsb3dzKCkgeworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworfQorCisg
ICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMt
YnktY29udGVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
Z2V0LXJlZ2lvbnMtYnktY29udGVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjQ2YzI2MGVk
M2VlYjBiNDc2OWJkZWU5NmY0MTZmYjMxZTY2M2I0OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDE3IEBACitUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFt
ZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVn
aW9uc0J5Q29udGVudC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmVn
aW9uTGlzdC5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0Lml0ZW0oMCkuaWQgaXMgInJlZ2lv
biIKK1BBU1MgcmVnaW9uTGlzdC5sZW5ndGggaXMgMgorUEFTUyByZWdpb25MaXN0Lml0ZW0oMCku
aWQgaXMgInJlZ2lvbjIxIgorUEFTUyByZWdpb25MaXN0Lml0ZW0oMSkuaWQgaXMgInJlZ2lvbjIy
IgorUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAwCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250
ZW50LWhvcml6LWJ0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kODczM2QxODdkMDUxZWIxYzc4
M2ZhYWRmMzVkNThmMzg3YTIwNWNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotYnQtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNDkgQEAKK1Rlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1l
IE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdp
b25zQnlDb250ZW50CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJlZ2lv
bkxpc3RBcnRpY2xlIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGgg
aXMgMgorUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIGlzICJyZWdpb24iCitQQVNT
IHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxp
c3RTcGFuIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0U3Bhbi5sZW5ndGggaXMgMQorUEFT
UyByZWdpb25MaXN0U3Bhbi5pdGVtKDApLmlkIGlzICJyZWdpb24iCitQQVNTIHJlZ2lvbkxpc3RT
cGFuMiBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFNwYW4yLmxlbmd0aCBpcyAyCitQQVNT
IHJlZ2lvbkxpc3RTcGFuMyBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFNwYW4zLmxlbmd0
aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgorUEFT
UyByZWdpb25MaXN0VGV4dE5vZGUgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9k
ZS5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5pZCBpcyAicmVn
aW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMiBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9u
TGlzdFRleHROb2RlMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0o
MCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMgaXMgbm9uLW51bGwu
CitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRl
eHROb2RlMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUy
Lmxlbmd0aCBpcyAyCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCBpcyAicmVn
aW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIGlzICJyZWdpb24zIgor
UEFTUyByZWdpb25MaXN0VGV4dE5vZGUzMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUzMi5pdGVtKDApLmlkIGlzICJyZWdpb24zIgorUEFTUyByZWdpb25MaXN0UDEgaXMgbm9u
LW51bGwuCitQQVNTIHJlZ2lvbkxpc3RQMS5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDEu
aXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKK1BBU1MgcmVnaW9uTGlzdFAyIGlzIG5vbi1udWxsLgor
UEFTUyByZWdpb25MaXN0UDIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAyLml0ZW0oMCku
aWQgaXMgInJlZ2lvbjQiCitQQVNTIHJlZ2lvbkxpc3RQMyBpcyBub24tbnVsbC4KK1BBU1MgcmVn
aW9uTGlzdFAzLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMy5pdGVtKDApLmlkIGlzICJy
ZWdpb240IgorUEFTUyByZWdpb25MaXN0UDIyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQ
MjIuaXRlbSgwKS5pZCBpcyAicmVnaW9uNSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCisKKworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1idC5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXot
YnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xODI5YjM5MmZjODMxYjI3NmVmMjIyZDgyZGNmZWYxY2EzYjg5
ZDM3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dl
dC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotYnQuaHRtbApAQCAtMCwwICsxLDE1MiBAQAorPCFk
b2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHN0eWxl
PgorICAgICAgICAgICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLWJ0
OyB9CisgICAgICAgICAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICAg
ICAgICAgI2FydGljbGUgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgfQorICAgICAgICAgICAg
I3JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUwcHg7IGhlaWdodDog
NTBweDsgfQorICAgICAgICAgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsg
d2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKyAgICAgICAgICAgICNyZWdpb24zIHsgLXdl
YmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9CisKKyAg
ICAgICAgICAgICNhcnRpY2xlMiB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsgfQorICAgICAg
ICAgICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IHdpZHRoOiAyNTBweDsg
aGVpZ2h0OiA1MHB4OyB9CisgICAgICAgICAgICAjcmVnaW9uNSB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKworICAgICAgICAgICAgLm5v
UmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IG5vbmU7IH0KKyAgICAgICAgPC9zdHlsZT4KKyAg
ICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDwhLS0gc29tZSB0ZXN0cyB3aXRoIGlubGlu
ZSBlbGVtZW50cyAtLT4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgICAgICA8
c3BhbiBpZD0ic3Bhbk5vZGUiPlRleHQgaW5zaWRlIHNwYW4uPC9zcGFuPgorICAgICAgICAgICAg
VGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4K
KyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTIiPlRleHQgaW5zaWRlIHNwYW4yLjwvc3Bh
bj4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTMiPlRleHQgaW5zaWRlIHNwYW4zPC9z
cGFuPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KKyAg
ICAgICAgPGRpdiBpZD0icmVnaW9uMiI+PC9kaXY+CisKKyAgICAgICAgPCEtLSBzb21lIHRlc3Rz
IHdpdGggYmxvY2sgZWxlbWVudHMgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUyIj4KKyAg
ICAgICAgICAgIDxwIGlkPSJwMSI+VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAxLjwvcD4KKyAgICAg
ICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjQiPjwvcmVnaW9uPgorICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAg
ICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgIGRlc2NyaXB0
aW9uKCJUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJl
Z2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudCIpOwor
ICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKKworICAg
ICAgICAgICAgZnVuY3Rpb24gaGlkZVJlZ2lvbnMoKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJh
cnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRk
ZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIiku
c3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb240Iikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb241Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdEFydGljbGUgPSBuYW1lZEZsb3cuZ2V0UmVn
aW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdEFydGljbGUiKTsKKyAgICAgICAgICAg
IHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCIsIDIpOworICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlk
IiwgInJlZ2lvbiIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25M
aXN0QXJ0aWNsZS5pdGVtKDEpLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgdmFyIHNw
YW5Ob2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlIik7CisgICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFNwYW4gPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFu
Tm9kZSk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuIik7Cisg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3Bhbi5sZW5ndGgiLCAxKTsK
KyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4uaXRlbSgw
KS5pZCIsICJyZWdpb24iKTsKKworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTIiKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0
U3BhbjIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTIpOworICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbjIiKTsKKyAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuMi5sZW5ndGgiLCAyKTsKKworICAgICAgICAg
ICAgdmFyIHNwYW5Ob2RlMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTMiKTsK
KyAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbjMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5
Q29udGVudChzcGFuTm9kZTMpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25M
aXN0U3BhbjMiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFu
My5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9u
TGlzdFNwYW4zLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworCisgICAgICAgICAgICB2YXIgdGV4
dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRl
eHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiAiKTsK
KyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hp
bGQodGV4dE5vZGUpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZSA9IG5hbWVk
Rmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlKTsKKyAgICAgICAgICAgIHNob3VsZEJl
Tm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIiwgInJlZ2lvbjIi
KTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQgd2lsbCBvdmVy
ZmxvdyB0aGUgcmVnaW9uMi4KKyAgICAgICAgICAgIHZhciB0ZXh0Tm9kZTIgPSBkb2N1bWVudC5j
cmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMi4iKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUyKTsKKyAgICAgICAgICAg
IHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQo
dGV4dE5vZGUyKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHRO
b2RlMiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2Rl
Mi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9u
TGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgLy8g
QWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQgaXMgaW4gdGhlIG92ZXJmbG93IG9mIHRoZSBsYXN0
IHJlZ2lvbi4KKyAgICAgICAgICAgIHZhciB0ZXh0Tm9kZTMgPSBkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgiVGV4dCBub2RlMy4iKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHZhciByZWdp
b25MaXN0VGV4dE5vZGUzID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUz
KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMyIpOwor
ICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGgi
LCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHRO
b2RlMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3Ro
ZXIgcmVnaW9uIHRvIHRha2UgdGhlIG92ZXJmbG93aW5nIGVsZW1lbnRzIGZyb20gc2Vjb25kIHJl
Z2lvbi4KKyAgICAgICAgICAgIHZhciByZWdpb24zID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
ZGl2Iik7CisgICAgICAgICAgICByZWdpb24zLmlkID0gInJlZ2lvbjMiOworICAgICAgICAgICAg
ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24zKTsKKworICAgICAgICAgICAgdmFyIHJl
Z2lvbkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9k
ZSk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxl
bmd0aCIsIDIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0
VGV4dE5vZGUyLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOworICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIp
OworCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0
UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTMpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdFRleHROb2RlMzIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9u
MyIpOworCisgICAgICAgICAgICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cy
Iik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25z
QnlDb250ZW50KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAxIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0UDEubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbkxpc3RQMS5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKKworICAgICAg
ICAgICAgdmFyIHAyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOworICAgICAgICAgICAg
cDIuaWQgPSAicDIiOworICAgICAgICAgICAgcDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRl
VGV4dE5vZGUoIlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMi4iKSk7CisgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMik7CisgICAgICAg
ICAgICB2YXIgcmVnaW9uTGlzdFAyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAy
KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAyIik7CisgICAgICAg
ICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDIubGVuZ3RoIiwgMSk7CisgICAgICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJl
Z2lvbjQiKTsKKyAKKyAgICAgICAgICAgIC8vIGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhl
IG92ZXJmbG93IHBhcnQgb2YgdGhlIHJlZ2lvbjQKKyAgICAgICAgICAgIHZhciBwMyA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKKyAgICAgICAgICAgIHAzLmlkID0gInAzIjsKKyAgICAg
ICAgICAgIHAzLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lk
ZSBwYXJhZ3JhcGggcDMuIikpOworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDMpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQ
MyA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMyk7CisgICAgICAgICAgICBzaG91
bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdFAzLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJyZWdpb25MaXN0UDMuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7CisKKyAgICAgICAg
ICAgIC8vIGFkZCBhbm90aGVyIHJlZ2lvbiB0byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lv
bjUKKyAgICAgICAgICAgIHZhciByZWdpb241ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2
Iik7CisgICAgICAgICAgICByZWdpb241LmlkID0gInJlZ2lvbjUiOworICAgICAgICAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb241KTsKKworICAgICAgICAgICAgdmFyIHJlZ2lv
bkxpc3RQMjIgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAyMi5sZW5ndGgiLCAxKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJl
Z2lvbjUiKTsKKworICAgICAgICAgICAgaGlkZVJlZ2lvbnMoKTsKKyAgICAgICAgPC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnkt
Y29udGVudC1ob3Jpei10Yi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzFhYzdiN2VkN2MzMGEw
ZThkYWRiNTgxMjVkZjcwNjM2M2JiMDcxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LXRiLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDQ5IEBACitUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJl
bmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0
UmVnaW9uc0J5Q29udGVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBy
ZWdpb25MaXN0QXJ0aWNsZSAgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLmxl
bmd0aCBpcyAyCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIK
K1BBU1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVn
aW9uTGlzdFNwYW4gaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuLmxlbmd0aCBpcyAx
CitQQVNTIHJlZ2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKK1BBU1MgcmVnaW9u
TGlzdFNwYW4yIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0U3BhbjIubGVuZ3RoIGlzIDIK
K1BBU1MgcmVnaW9uTGlzdFNwYW4zIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0U3BhbjMu
bGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIi
CitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZSBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFRl
eHROb2RlLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIGlz
ICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyIGlzIG5vbi1udWxsLgorUEFTUyBy
ZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIu
aXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMyBpcyBub24t
bnVsbC4KK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGggaXMgMQorUEFTUyByZWdpb25M
aXN0VGV4dE5vZGUzLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxpc3RUZXh0
Tm9kZTIubGVuZ3RoIGlzIDIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlz
ICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQgaXMgInJlZ2lv
bjMiCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjMiCitQQVNTIHJlZ2lvbkxpc3RQMSBp
cyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFAxLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxp
c3RQMS5pdGVtKDApLmlkIGlzICJyZWdpb240IgorUEFTUyByZWdpb25MaXN0UDIgaXMgbm9uLW51
bGwuCitQQVNTIHJlZ2lvbkxpc3RQMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDIuaXRl
bSgwKS5pZCBpcyAicmVnaW9uNCIKK1BBU1MgcmVnaW9uTGlzdFAzIGlzIG5vbi1udWxsLgorUEFT
UyByZWdpb25MaXN0UDMubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQg
aXMgInJlZ2lvbjQiCitQQVNTIHJlZ2lvbkxpc3RQMjIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9u
TGlzdFAyMi5pdGVtKDApLmlkIGlzICJyZWdpb241IgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LXRiLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1o
b3Jpei10Yi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2OWUwZjRjOWZjNDgxZWI0MmU5ODk3ZGNkZTg0OWU0
MzdlM2Y1ZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei10Yi5odG1sCkBAIC0wLDAgKzEsMTU0IEBA
Cis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8
c3R5bGU+CisgICAgICAgICAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAg
ICAgICAgICAgI2FydGljbGUgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgfQorICAgICAgICAg
ICAgI3JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUwcHg7IGhlaWdo
dDogNTBweDsgfQorICAgICAgICAgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxv
dzsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKyAgICAgICAgICAgICNyZWdpb24zIHsg
LXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9CisK
KyAgICAgICAgICAgICNhcnRpY2xlMiB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsgfQorICAg
ICAgICAgICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IHdpZHRoOiAyNTBw
eDsgaGVpZ2h0OiA1MHB4OyB9CisgICAgICAgICAgICAjcmVnaW9uNSB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KKworICAgICAgICAgICAg
Lm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IG5vbmU7IH0KKyAgICAgICAgPC9zdHlsZT4K
KyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDwhLS0gc29tZSB0ZXN0cyB3aXRoIGlu
bGluZSBlbGVtZW50cyAtLT4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgICAg
ICA8c3BhbiBpZD0ic3Bhbk5vZGUiPlRleHQgaW5zaWRlIHNwYW4uPC9zcGFuPgorICAgICAgICAg
ICAgVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bh
bi4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTIiPlRleHQgaW5zaWRlIHNwYW4yLjwv
c3Bhbj4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTMiPlRleHQgaW5zaWRlIHNwYW4z
PC9zcGFuPgorICAgICAgICA8L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4K
KyAgICAgICAgPGRpdiBpZD0icmVnaW9uMiI+PC9kaXY+CisKKyAgICAgICAgPCEtLSBzb21lIHRl
c3RzIHdpdGggYmxvY2sgZWxlbWVudHMgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUyIj4K
KyAgICAgICAgICAgIDxwIGlkPSJwMSI+VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAxLjwvcD4KKyAg
ICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjQiPjwvcmVnaW9uPgorCisgICAg
ICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAg
ICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICBk
ZXNjcmlwdGlvbigiVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93
OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRl
bnQiKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gaGlkZVJlZ2lvbnMoKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJo
aWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb240
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb241Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFt
ZSgiZmxvdyIpOworCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdEFydGljbGUgPSBuYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIp
KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdEFydGljbGUgIik7Cisg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGgiLCAy
KTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGljbGUu
aXRlbSgwKS5pZCIsICJyZWdpb24iKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygicmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAgICAg
ICAgIHZhciBzcGFuTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZSIpOwor
ICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNv
bnRlbnQoc3Bhbk5vZGUpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0
U3BhbiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4ubGVu
Z3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RT
cGFuLml0ZW0oMCkuaWQiLCAicmVnaW9uIik7CisKKyAgICAgICAgICAgIHZhciBzcGFuTm9kZTIg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUyIik7CisgICAgICAgICAgICB2YXIg
cmVnaW9uTGlzdFNwYW4yID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUy
KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4yIik7CisgICAg
ICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3BhbjIubGVuZ3RoIiwgMik7CisK
KyAgICAgICAgICAgIHZhciBzcGFuTm9kZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bh
bk5vZGUzIik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4zID0gbmFtZWRGbG93Lmdl
dFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUzKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVs
bCgicmVnaW9uTGlzdFNwYW4zIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdp
b25MaXN0U3BhbjMubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAg
ICAgdmFyIHRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4gVGV4
dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQg
bm9kZS4gIik7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIp
LmFwcGVuZENoaWxkKHRleHROb2RlKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5v
ZGUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7CisgICAgICAgICAg
ICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZSIpOworICAgICAgICAgICAgc2hv
dWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCIsIDEpOworICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5pZCIs
ICJyZWdpb24yIik7CisKKyAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0
IHdpbGwgb3ZlcmZsb3cgdGhlIHJlZ2lvbjIuCisgICAgICAgICAgICB2YXIgdGV4dE5vZGUyID0g
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTIuIik7CisgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMik7Cisg
ICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHRleHROb2RlMik7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3RUZXh0Tm9kZTIiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3RUZXh0Tm9kZTIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAg
ICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IGlzIGluIHRoZSBvdmVyZmxvdyBv
ZiB0aGUgbGFzdCByZWdpb24uCisgICAgICAgICAgICB2YXIgdGV4dE5vZGUzID0gZG9jdW1lbnQu
Y3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTMuIik7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMyk7CisgICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50
KHRleHROb2RlMyk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0
Tm9kZTMiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9k
ZTMubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bkxpc3RUZXh0Tm9kZTMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAgICAgICAgIC8v
IEFkZCBhbm90aGVyIHJlZ2lvbiB0byB0YWtlIHRoZSBvdmVyZmxvd2luZyBlbGVtZW50cyBmcm9t
IHNlY29uZCByZWdpb24uCisgICAgICAgICAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgcmVnaW9uMy5pZCA9ICJyZWdpb24zIjsKKyAg
ICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7CisKKyAgICAgICAg
ICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRl
bnQodGV4dE5vZGUpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRl
eHROb2RlMi5sZW5ndGgiLCAyKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKyAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIiwg
InJlZ2lvbjMiKTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCIsIDEpOworICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5pdGVtKDApLmlk
IiwgInJlZ2lvbjMiKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdzIgPSBnZXRGbG93QnlO
YW1lKCJmbG93MiIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMSA9IG5hbWVkRmxvdzIu
Z2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKSk7CisgICAg
ICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMSIpOworICAgICAgICAgICAgc2hv
dWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAxLmxlbmd0aCIsIDEpOworICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDEuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7
CisKKyAgICAgICAgICAgIHZhciBwMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKKyAg
ICAgICAgICAgIHAyLmlkID0gInAyIjsKKyAgICAgICAgICAgIHAyLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDIuIikpOworICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDIp
OworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMiA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5
Q29udGVudChwMik7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMiIp
OworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAyLmxlbmd0aCIsIDEp
OworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIuaXRlbSgw
KS5pZCIsICJyZWdpb240Iik7CisgCisgICAgICAgICAgICAvLyBhZGQgYW5vdGhlciBlbGVtZW50
IHAsIGluIHRoZSBvdmVyZmxvdyBwYXJ0IG9mIHRoZSByZWdpb240CisgICAgICAgICAgICB2YXIg
cDMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgICAgICBwMy5pZCA9ICJw
MyI7CisgICAgICAgICAgICBwMy5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgi
VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAzLiIpKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAzKTsKKyAgICAgICAgICAgIHZhciBy
ZWdpb25MaXN0UDMgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDMpOworICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDMiKTsKKyAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwor
CisgICAgICAgICAgICAvLyBhZGQgYW5vdGhlciByZWdpb24gdG8gZmxvdzIsIHAyIGFuZCBwMyBn
byB0byByZWdpb241CisgICAgICAgICAgICB2YXIgcmVnaW9uNSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOworICAgICAgICAgICAgcmVnaW9uNS5pZCA9ICJyZWdpb241IjsKKyAgICAg
ICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uNSk7CisKKyAgICAgICAgICAg
IHZhciByZWdpb25MaXN0UDIyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsK
KyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMjIubGVuZ3RoIiwgMSk7
CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMjIuaXRlbSgw
KS5pZCIsICJyZWdpb241Iik7CisKKyAgICAgICAgICAgIGhpZGVSZWdpb25zKCk7CisgICAgICAg
IDwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNl
dWRvLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVn
aW9ucy1ieS1jb250ZW50LXBzZXVkby1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjhlYjgwMWJj
OWVkOGI0ZWU1ZTQyMzZlMTViNjhiZmNlNjA0MGMwMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBAQAorVGVzdHMgV2ViS2l0TmFtZWRGbG93LmdldFJl
Z2lvbnNCeUNvbnRlbnQoKSBhbmQgcHNldWRvLWVsZW1lbnRzIGFzIHJlZ2lvbnMKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmVnaW9uTGlzdC5sZW5ndGggaXMgMQorUEFT
UyByZWdpb25MaXN0Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbl8yIgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNl
dWRvLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTNmMGNkYjQyMmViZmQ4ZThhMjQwM2ZiMzAzOWU0ZmQxZTdm
OGFiMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9n
ZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby5odG1sCkBAIC0wLDAgKzEsNzMgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4K
KyAgICAgICAgICAgICNhcnRpY2xlIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50
bzogYXJ0aWNsZTsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4OworICAgICAgICAgICAg
ICAgIHdpZHRoOiA1MHB4OworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVu
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAjcmVnaW9uXzEgeworICAgICAgICAgICAg
ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgICAgICAgICB0b3A6MjAwcHg7CisgICAg
ICAgICAgICAgICAgbGVmdDogMTAwcHg7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICNy
ZWdpb25fMTo6YmVmb3JlIHsKKyAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKKyAgICAg
ICAgICAgICAgICB3aWR0aDogNTBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Cisg
ICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICAgICAg
LXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
ICNyZWdpb25fMTo6YWZ0ZXIgeworICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOworICAg
ICAgICAgICAgICAgIHdpZHRoOiA1MHB4OworICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDsK
KyAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKyAgICAgICAgICAgICAg
ICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsgICAgCisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgICNyZWdpb25fMiB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGFy
dGljbGU7CisgICAgICAgICAgICAgICAgaGVpZ2h0OjUwcHg7CisgICAgICAgICAgICAgICAgd2lk
dGg6NTBweDsKKyAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgICAg
ICAgICAgdG9wOiAyMDBweDsKKyAgICAgICAgICAgICAgICBsZWZ0OiAyMDBweDsKKyAgICAgICAg
ICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
PC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDwhLS0KKyAgICAgICAg
VGVzdCB0aGF0IHRoZSBwc2V1ZG8tZWxlbWVudHMgcmVnaW9ucyBhcmUgbm90IGV4cG9zZWQgdG8g
SlMuCisgICAgICAgIC0tPgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj48L2Rpdj4KKworICAg
ICAgICA8ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8y
Ij48L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAg
ICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVu
dCgpIGFuZCBwc2V1ZG8tZWxlbWVudHMgYXMgcmVnaW9ucyIpCisKKyAgICAgICAgICAgIHZhciBu
YW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisgICAgICAgICAgICB2YXIgdGFy
Z2V0Tm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7CisgICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdCA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRhcmdldE5v
ZGUpOworCisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0Lmxlbmd0aCIs
IDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Lml0ZW0o
MCkuaWQiLCAicmVnaW9uXzIiKTsKKworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKS5z
dHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0
LWxyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kODczM2QxODdkMDUxZWIxYzc4M2ZhYWRmMzVk
NThmMzg3YTIwNWNhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw0OSBAQAorVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93
OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRl
bnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmVnaW9uTGlzdEFydGlj
bGUgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCBpcyAyCitQQVNT
IHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKK1BBU1MgcmVnaW9uTGlz
dEFydGljbGUuaXRlbSgxKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFNwYW4gaXMg
bm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxp
c3RTcGFuLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKK1BBU1MgcmVnaW9uTGlzdFNwYW4yIGlzIG5v
bi1udWxsLgorUEFTUyByZWdpb25MaXN0U3BhbjIubGVuZ3RoIGlzIDIKK1BBU1MgcmVnaW9uTGlz
dFNwYW4zIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0U3BhbjMubGVuZ3RoIGlzIDEKK1BB
U1MgcmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZSBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCBp
cyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIGlzICJyZWdpb24yIgorUEFT
UyByZWdpb25MaXN0VGV4dE5vZGUyIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0VGV4dE5v
ZGUyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCBpcyAi
cmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMyBpcyBub24tbnVsbC4KK1BBU1MgcmVn
aW9uTGlzdFRleHROb2RlMy5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzLml0
ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIGlz
IDIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlzICJyZWdpb24yIgorUEFT
UyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjMiCitQQVNTIHJlZ2lv
bkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyLml0
ZW0oMCkuaWQgaXMgInJlZ2lvbjMiCitQQVNTIHJlZ2lvbkxpc3RQMSBpcyBub24tbnVsbC4KK1BB
U1MgcmVnaW9uTGlzdFAxLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMS5pdGVtKDApLmlk
IGlzICJyZWdpb240IgorUEFTUyByZWdpb25MaXN0UDIgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lv
bkxpc3RQMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDIuaXRlbSgwKS5pZCBpcyAicmVn
aW9uNCIKK1BBU1MgcmVnaW9uTGlzdFAzIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0UDMu
bGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCitQ
QVNTIHJlZ2lvbkxpc3RQMjIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAyMi5pdGVtKDAp
LmlkIGlzICJyZWdpb241IgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKKworCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtbHIuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtbHIuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40NjRkZTY2MjMwNDMyYmMyMmM4OWM1MjY3Y2U0ZmQ2MmI2NWI2M2MwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5
LWNvbnRlbnQtdmVydC1sci5odG1sCkBAIC0wLDAgKzEsMTU1IEBACis8IWRvY3R5cGUgaHRtbD4K
KzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAg
ICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyOyB9CisgICAgICAgICAg
ICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQorICAgICAgICAgICAgI2FydGljbGUg
eyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgfQorICAgICAgICAgICAgLnJlZ2lvbkJveCB7ICBo
ZWlnaHQ6IDI1MHB4OyB3aWR0aDogNTBweDsgfQorICAgICAgICAgICAgI3JlZ2lvbiB7IC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93OyB9CisgICAgICAgICAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxv
dy1mcm9tOiBmbG93OyB9CisgICAgICAgICAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93OyB9CisKKyAgICAgICAgICAgICNhcnRpY2xlMiB7IC13ZWJraXQtZmxvdy1pbnRvOiBm
bG93MjsgfQorICAgICAgICAgICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7
IH0KKyAgICAgICAgICAgICNyZWdpb241IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB9CisK
KyAgICAgICAgICAgIC5ub1JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBub25lOyB9CisgICAg
ICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8IS0tIHNvbWUg
dGVzdHMgd2l0aCBpbmxpbmUgZWxlbWVudHMgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUi
PgorICAgICAgICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlIj5UZXh0IGluc2lkZSBzcGFuLjwvc3Bh
bj4KKyAgICAgICAgICAgIFRleHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4
dCBvdXRzaWRlIHNwYW4uCisgICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUyIj5UZXh0IGlu
c2lkZSBzcGFuMi4gVGV4dC48L3NwYW4+CisgICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUz
Ij5UZXh0IGluc2lkZSBzcGFuMzwvc3Bhbj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9InJlZ2lvbiIgY2xhc3M9InJlZ2lvbkJveCI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJl
Z2lvbjIiIGNsYXNzPSJyZWdpb25Cb3giPjwvZGl2PgorCisgICAgICAgIDwhLS0gc29tZSB0ZXN0
cyB3aXRoIGJsb2NrIGVsZW1lbnRzIC0tPgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlMiI+Cisg
ICAgICAgICAgICA8cCBpZD0icDEiPlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMS48L3A+CisgICAg
ICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb240IiBjbGFzcz0icmVnaW9uQm94Ij48
L3JlZ2lvbj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cisg
ICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5h
bWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJl
Z2lvbnNCeUNvbnRlbnQiKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlO
YW1lKCJmbG93Iik7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGhpZGVSZWdpb25zKCkKKyAgICAg
ICAgICAgIHsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNs
ZSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7
CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpLnN0eWxl
LnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxp
dHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVnaW9uNCIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uNSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlk
ZGVuIjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RBcnRpY2xl
ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImFydGljbGUiKSk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RBcnRp
Y2xlIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0QXJ0aWNsZS5s
ZW5ndGgiLCAyKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlz
dEFydGljbGUuaXRlbSgwKS5pZCIsICJyZWdpb24iKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCIsICJyZWdpb24yIik7CisK
KyAgICAgICAgICAgIHZhciBzcGFuTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFu
Tm9kZSIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuID0gbmFtZWRGbG93LmdldFJl
Z2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJy
ZWdpb25MaXN0U3BhbiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlz
dFNwYW4ubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQiLCAicmVnaW9uIik7CisKKyAgICAgICAgICAgIHZhciBz
cGFuTm9kZTIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUyIik7CisgICAgICAg
ICAgICB2YXIgcmVnaW9uTGlzdFNwYW4yID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQo
c3Bhbk5vZGUyKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4y
Iik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3BhbjIubGVuZ3Ro
IiwgMik7CisKKyAgICAgICAgICAgIHZhciBzcGFuTm9kZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgic3Bhbk5vZGUzIik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4zID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUzKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4zIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0U3BhbjMubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKwor
ICAgICAgICAgICAgdmFyIHRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQg
bm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5v
ZGUuIFRleHQgbm9kZS4gIik7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlKTsKKyAgICAgICAgICAgIHZhciByZWdpb25M
aXN0VGV4dE5vZGUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Cisg
ICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZSIpOworICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCIsIDEpOwor
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUuaXRl
bSgwKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQg
bm9kZSB0aGF0IHdpbGwgb3ZlcmZsb3cgdGhlIHJlZ2lvbjIuCisgICAgICAgICAgICB2YXIgdGV4
dE5vZGUyID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTIuIik7CisgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHRO
b2RlMik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5n
ZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlMik7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51
bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZTIiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8o
InJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7
CisKKyAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IGlzIGluIHRoZSBv
dmVyZmxvdyBvZiB0aGUgbGFzdCByZWdpb24uCisgICAgICAgICAgICB2YXIgdGV4dE5vZGUzID0g
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTMuIik7CisgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMyk7Cisg
ICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHRleHROb2RlMyk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3RUZXh0Tm9kZTMiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3RUZXh0Tm9kZTMubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisKKyAgICAg
ICAgICAgIC8vIEFkZCBhbm90aGVyIHJlZ2lvbiB0byB0YWtlIHRoZSBvdmVyZmxvd2luZyBlbGVt
ZW50cyBmcm9tIHNlY29uZCByZWdpb24uCisgICAgICAgICAgICB2YXIgcmVnaW9uMyA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgcmVnaW9uMy5pZCA9ICJyZWdp
b24zIjsKKyAgICAgICAgICAgIHJlZ2lvbjMuY2xhc3NOYW1lID0gInJlZ2lvbkJveCI7CisgICAg
ICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjMpOworCisgICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50
KHRleHROb2RlKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0
Tm9kZTIubGVuZ3RoIiwgMik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7CisgICAgICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCIsICJy
ZWdpb24zIik7CisKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzMiA9IG5hbWVk
Rmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlMyk7CisgICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMzIuaXRlbSgwKS5pZCIs
ICJyZWdpb24zIik7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFt
ZSgiZmxvdzIiKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDEgPSBuYW1lZEZsb3cyLmdl
dFJlZ2lvbnNCeUNvbnRlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikpOworICAgICAg
ICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDEiKTsKKyAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMS5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAxLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwor
CisgICAgICAgICAgICB2YXIgcDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAg
ICAgICAgICBwMi5pZCA9ICJwMiI7CisgICAgICAgICAgICBwMi5hcHBlbmRDaGlsZChkb2N1bWVu
dC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAyLiIpKTsKKyAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAyKTsK
KyAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDIgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNv
bnRlbnQocDIpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDIiKTsK
KyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMi5sZW5ndGgiLCAxKTsK
KyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyLml0ZW0oMCku
aWQiLCAicmVnaW9uNCIpOworIAorICAgICAgICAgICAgLy8gYWRkIGFub3RoZXIgZWxlbWVudCBw
LCBpbiB0aGUgb3ZlcmZsb3cgcGFydCBvZiB0aGUgcmVnaW9uNAorICAgICAgICAgICAgdmFyIHAz
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOworICAgICAgICAgICAgcDMuaWQgPSAicDMi
OworICAgICAgICAgICAgcDMuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRl
eHQgaW5zaWRlIHBhcmFncmFwaCBwMy4iKSk7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMyk7CisgICAgICAgICAgICB2YXIgcmVn
aW9uTGlzdFAzID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAzKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAzIik7CisgICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyZWdpb25MaXN0UDMubGVuZ3RoIiwgMSk7CisgICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMy5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKKwor
ICAgICAgICAgICAgLy8gYWRkIGFub3RoZXIgcmVnaW9uIHRvIGZsb3cyLCBwMiBhbmQgcDMgZ28g
dG8gcmVnaW9uNQorICAgICAgICAgICAgdmFyIHJlZ2lvbjUgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJkaXYiKTsKKyAgICAgICAgICAgIHJlZ2lvbjUuaWQgPSAicmVnaW9uNSI7CisgICAgICAg
ICAgICByZWdpb241LmNsYXNzTmFtZSA9ICJyZWdpb25Cb3giOworICAgICAgICAgICAgZG9jdW1l
bnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb241KTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxp
c3RQMjIgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOworICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAyMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJlZ2lv
bjUiKTsKKworICAgICAgICAgICAgaGlkZVJlZ2lvbnMoKTsKKyAgICAgICAgPC9zY3JpcHQ+Cisg
ICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250
ZW50LXZlcnQtcmwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ4NzMzZDE4N2QwNTFlYjFjNzgz
ZmFhZGYzNWQ1OGYzODdhMjA1Y2EKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDQ5IEBACitUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBO
YW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9u
c0J5Q29udGVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZWdpb25M
aXN0QXJ0aWNsZSBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIGlz
IDIKK1BBU1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgorUEFTUyBy
ZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDEpLmlkIGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0
U3BhbiBpcyBub24tbnVsbC4KK1BBU1MgcmVnaW9uTGlzdFNwYW4ubGVuZ3RoIGlzIDEKK1BBU1Mg
cmVnaW9uTGlzdFNwYW4uaXRlbSgwKS5pZCBpcyAicmVnaW9uIgorUEFTUyByZWdpb25MaXN0U3Bh
bjIgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuMi5sZW5ndGggaXMgMgorUEFTUyBy
ZWdpb25MaXN0U3BhbjMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxpc3RTcGFuMy5sZW5ndGgg
aXMgMQorUEFTUyByZWdpb25MaXN0U3BhbjMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1Mg
cmVnaW9uTGlzdFRleHROb2RlIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUu
bGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQgaXMgInJlZ2lv
bjIiCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZTIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDAp
LmlkIGlzICJyZWdpb24yIgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzIGlzIG5vbi1udWxsLgor
UEFTUyByZWdpb25MaXN0VGV4dE5vZGUzLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RUZXh0
Tm9kZTMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKK1BBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5s
ZW5ndGggaXMgMgorUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lv
bjIiCitQQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCBpcyAicmVnaW9uMyIKK1BB
U1MgcmVnaW9uTGlzdFRleHROb2RlMzIubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFRleHRO
b2RlMzIuaXRlbSgwKS5pZCBpcyAicmVnaW9uMyIKK1BBU1MgcmVnaW9uTGlzdFAxIGlzIG5vbi1u
dWxsLgorUEFTUyByZWdpb25MaXN0UDEubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdFAxLml0
ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCitQQVNTIHJlZ2lvbkxpc3RQMiBpcyBub24tbnVsbC4KK1BB
U1MgcmVnaW9uTGlzdFAyLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbkxpc3RQMi5pdGVtKDApLmlk
IGlzICJyZWdpb240IgorUEFTUyByZWdpb25MaXN0UDMgaXMgbm9uLW51bGwuCitQQVNTIHJlZ2lv
bkxpc3RQMy5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDMuaXRlbSgwKS5pZCBpcyAicmVn
aW9uNCIKK1BBU1MgcmVnaW9uTGlzdFAyMi5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0UDIy
Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbjUiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKworCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1ybC5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1ybC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjIwZGYzNzhlMWMyMjkxYzcwYjJjNmRmYmE3ZGU4Y2ExY2U3ZTE4ZjMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJl
Z2lvbnMtYnktY29udGVudC12ZXJ0LXJsLmh0bWwKQEAgLTAsMCArMSwxNTUgQEAKKzwhZG9jdHlw
ZSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAg
ICAgICAgICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7IH0KKyAg
ICAgICAgICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgICAgICAgICAj
YXJ0aWNsZSB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAucmVnaW9u
Qm94IHsgIGhlaWdodDogMjUwcHg7IHdpZHRoOiA1MHB4OyB9CisgICAgICAgICAgICAjcmVnaW9u
IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IH0KKyAgICAgICAgICAgICNyZWdpb24yIHsgLXdl
YmtpdC1mbG93LWZyb206IGZsb3c7IH0KKyAgICAgICAgICAgICNyZWdpb24zIHsgLXdlYmtpdC1m
bG93LWZyb206IGZsb3c7IH0KKworICAgICAgICAgICAgI2FydGljbGUyIHsgLXdlYmtpdC1mbG93
LWludG86IGZsb3cyOyB9CisgICAgICAgICAgICAjcmVnaW9uNCB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93MjsgfQorICAgICAgICAgICAgI3JlZ2lvbjUgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxv
dzI7IH0KKworICAgICAgICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IG5vbmU7
IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDwh
LS0gc29tZSB0ZXN0cyB3aXRoIGlubGluZSBlbGVtZW50cyAtLT4KKyAgICAgICAgPGRpdiBpZD0i
YXJ0aWNsZSI+CisgICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUiPlRleHQgaW5zaWRlIHNw
YW4uPC9zcGFuPgorICAgICAgICAgICAgVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBz
cGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTIi
PlRleHQgaW5zaWRlIHNwYW4yLiBUZXh0Ljwvc3Bhbj4KKyAgICAgICAgICAgIDxzcGFuIGlkPSJz
cGFuTm9kZTMiPlRleHQgaW5zaWRlIHNwYW4zPC9zcGFuPgorICAgICAgICA8L2Rpdj4KKyAgICAg
ICAgPGRpdiBpZD0icmVnaW9uIiBjbGFzcz0icmVnaW9uQm94Ij48L2Rpdj4KKyAgICAgICAgPGRp
diBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkJveCI+PC9kaXY+CisKKyAgICAgICAgPCEtLSBz
b21lIHRlc3RzIHdpdGggYmxvY2sgZWxlbWVudHMgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGlj
bGUyIj4KKyAgICAgICAgICAgIDxwIGlkPSJwMSI+VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAxLjwv
cD4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbjQiIGNsYXNzPSJyZWdp
b25Cb3giPjwvcmVnaW9uPgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lv
bnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxv
dzo6Z2V0UmVnaW9uc0J5Q29udGVudCIpOworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdl
dEZsb3dCeU5hbWUoImZsb3ciKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gaGlkZVJlZ2lvbnMo
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJhcnRpY2xlIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwor
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb240Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb241Iikuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlz
dEFydGljbGUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiYXJ0aWNsZSIpKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9u
TGlzdEFydGljbGUiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RB
cnRpY2xlLmxlbmd0aCIsIDIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOworICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDEpLmlkIiwgInJlZ2lv
bjIiKTsKKworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInNwYW5Ob2RlIik7CisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4gPSBuYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZSk7CisgICAgICAgICAgICBzaG91bGRCZU5v
bk51bGwoInJlZ2lvbkxpc3RTcGFuIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
ZWdpb25MaXN0U3Bhbi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFNwYW4uaXRlbSgwKS5pZCIsICJyZWdpb24iKTsKKworICAgICAgICAg
ICAgdmFyIHNwYW5Ob2RlMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZTIiKTsK
KyAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3BhbjIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5
Q29udGVudChzcGFuTm9kZTIpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25M
aXN0U3BhbjIiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFu
Mi5sZW5ndGgiLCAyKTsKKworICAgICAgICAgICAgdmFyIHNwYW5Ob2RlMyA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJzcGFuTm9kZTMiKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0U3Bh
bjMgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChzcGFuTm9kZTMpOworICAgICAgICAg
ICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbjMiKTsKKyAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFNwYW4zLml0ZW0oMCkuaWQiLCAicmVnaW9u
MiIpOworCisgICAgICAgICAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9k
ZSgiVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUu
IFRleHQgbm9kZS4gVGV4dCBub2RlLiAiKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOworICAgICAgICAgICAgdmFy
IHJlZ2lvbkxpc3RUZXh0Tm9kZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHRO
b2RlKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlIik7
CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUubGVuZ3Ro
IiwgMSk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0
Tm9kZS5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3Ro
ZXIgdGV4dCBub2RlIHRoYXQgd2lsbCBvdmVyZmxvdyB0aGUgcmVnaW9uMi4KKyAgICAgICAgICAg
IHZhciB0ZXh0Tm9kZTIgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMi4iKTsK
KyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hp
bGQodGV4dE5vZGUyKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUyKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlTm9uTnVsbCgicmVnaW9uTGlzdFRleHROb2RlMiIpOworICAgICAgICAgICAgc2hvdWxkRXZh
bHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJl
Z2lvbjIiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgdGV4dCBub2RlIHRoYXQgaXMg
aW4gdGhlIG92ZXJmbG93IG9mIHRoZSBsYXN0IHJlZ2lvbi4KKyAgICAgICAgICAgIHZhciB0ZXh0
Tm9kZTMgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlMy4iKTsKKyAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQodGV4dE5v
ZGUzKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzID0gbmFtZWRGbG93Lmdl
dFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVs
bCgicmVnaW9uTGlzdFRleHROb2RlMyIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmVnaW9uTGlzdFRleHROb2RlMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsK
KworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgcmVnaW9uIHRvIHRha2UgdGhlIG92ZXJmbG93
aW5nIGVsZW1lbnRzIGZyb20gc2Vjb25kIHJlZ2lvbi4KKyAgICAgICAgICAgIHZhciByZWdpb24z
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAgICAgICByZWdpb24zLmlk
ID0gInJlZ2lvbjMiOworICAgICAgICAgICAgcmVnaW9uMy5jbGFzc05hbWUgPSAicmVnaW9uQm94
IjsKKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7CisKKyAg
ICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNC
eUNvbnRlbnQodGV4dE5vZGUpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFRleHROb2RlMi5sZW5ndGgiLCAyKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEp
LmlkIiwgInJlZ2lvbjMiKTsKKworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTMy
ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKKyAgICAgICAgICAg
IHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCIsIDEpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5pdGVt
KDApLmlkIiwgInJlZ2lvbjMiKTsKKworICAgICAgICAgICAgdmFyIG5hbWVkRmxvdzIgPSBnZXRG
bG93QnlOYW1lKCJmbG93MiIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMSA9IG5hbWVk
RmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKSk7
CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMSIpOworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAxLmxlbmd0aCIsIDEpOworICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDEuaXRlbSgwKS5pZCIsICJyZWdp
b240Iik7CisKKyAgICAgICAgICAgIHZhciBwMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAi
KTsKKyAgICAgICAgICAgIHAyLmlkID0gInAyIjsKKyAgICAgICAgICAgIHAyLmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDIuIikpOwor
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hp
bGQocDIpOworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMiA9IG5hbWVkRmxvdzIuZ2V0UmVn
aW9uc0J5Q29udGVudChwMik7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxp
c3RQMiIpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAyLmxlbmd0
aCIsIDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIu
aXRlbSgwKS5pZCIsICJyZWdpb240Iik7CisgCisgICAgICAgICAgICAvLyBhZGQgYW5vdGhlciBl
bGVtZW50IHAsIGluIHRoZSBvdmVyZmxvdyBwYXJ0IG9mIHRoZSByZWdpb240CisgICAgICAgICAg
ICB2YXIgcDMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgICAgICBwMy5p
ZCA9ICJwMyI7CisgICAgICAgICAgICBwMy5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgiVGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAzLiIpKTsKKyAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAzKTsKKyAgICAgICAgICAg
IHZhciByZWdpb25MaXN0UDMgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDMpOwor
ICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDMiKTsKKyAgICAgICAgICAg
IHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMy5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQiLCAicmVnaW9u
NCIpOworCisgICAgICAgICAgICAvLyBhZGQgYW5vdGhlciByZWdpb24gdG8gZmxvdzIsIHAyIGFu
ZCBwMyBnbyB0byByZWdpb241CisgICAgICAgICAgICB2YXIgcmVnaW9uNSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgcmVnaW9uNS5pZCA9ICJyZWdpb241IjsK
KyAgICAgICAgICAgIHJlZ2lvbjUuY2xhc3NOYW1lID0gInJlZ2lvbkJveCI7CisgICAgICAgICAg
ICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjUpOworCisgICAgICAgICAgICB2YXIg
cmVnaW9uTGlzdFAyMiA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMik7CisgICAg
ICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDIyLmxlbmd0aCIsIDEpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIyLml0ZW0oMCkuaWQi
LCAicmVnaW9uNSIpOworCisgICAgICAgICAgICBoaWRlUmVnaW9ucygpOworICAgICAgICA8L3Nj
cmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50Lmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29udGVudC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjkwMTAyZDhjYWY5MzM5MzhhZWNkZWZmYmJjOGExNjE0YmVmMjA2ODgKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lv
bnMtYnktY29udGVudC5odG1sCkBAIC0wLDAgKzEsNjcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0
bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3Vy
Y2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIGJv
ZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9CisgICAgICAgICAgICAjYXJ0aWNsZSB7IC13
ZWJraXQtZmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAuYm9yZGVyIHsgYm9yZGVyOiAx
cHggc29saWQgcmVkOyB9CisgICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGxl
ZnQ6IDEwcHg7IHRvcDogMjAwcHg7IH0KKworICAgICAgICAgICAgI2FydGljbGUyIHsgLXdlYmtp
dC1mbG93LWludG86IGZsb3cyOyB9CisgICAgICAgICAgICAjcmVnaW9uMjEgeyAtd2Via2l0LWZs
b3ctZnJvbTogZmxvdzI7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyBwb3NpdGlvbjogYWJz
b2x1dGU7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQorICAgICAgICAgICAgI3JlZ2lvbjIyIHsg
LXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgcG9z
aXRpb246IGFic29sdXRlOyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KKyAgICAgICAgPC9zdHls
ZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPgor
ICAgICAgICAgICAgPHAgaWQ9InAxIj5UZXh0IGZsb3duIGludG8gcmVnaW9uLjwvcD4KKyAgICAg
ICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+
CisKKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgorICAgICAgICAgICAgPHAgaWQ9InAyIj5U
ZXh0IGZsb3duIGluIHR3byByZWdpb25zLiBUZXh0IGZsb3duIGluIHR3byByZWdpb25zLiBUZXh0
IGZsb3duIGluIHR3byByZWdpb25zLjwvcD4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYg
aWQ9InJlZ2lvbjIxIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVn
aW9uMjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworCisgICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgOTA3NTk6IFtD
U1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBO
YW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQuIik7CisKKyAgICAgICAgICAgIHZhciBuYW1l
ZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7CisgICAgICAgICAgICB2YXIgdGFyZ2V0Tm9k
ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOworICAgICAgICAgICAgdmFyIHJlZ2lv
bkxpc3QgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0YXJnZXROb2RlKTsKKworICAg
ICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdC5sZW5ndGgiLCAxKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdC5pdGVtKDApLmlkIiwgInJl
Z2lvbiIpOworCisgICAgICAgICAgICBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIp
OworICAgICAgICAgICAgLy8gVGVzdCB0aGF0IHRoZSBwMiBlbGVtZW50IGlzIGZsb3duIGludG8g
MiByZWdpb25zCisgICAgICAgICAgICB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAyIik7CisgICAgICAgICAgICByZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNC
eUNvbnRlbnQodGFyZ2V0Tm9kZSk7CisKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJl
Z2lvbkxpc3QubGVuZ3RoIiwgMik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3QuaXRlbSgwKS5pZCIsICJyZWdpb24yMSIpOworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Lml0ZW0oMSkuaWQiLCAicmVnaW9uMjIiKTsKKwor
ICAgICAgICAgICAgLy8gVGVzdCB0aGF0IHAxIGVsZW1lbnQgaXMgbm90IGluIGZsb3cyCisgICAg
ICAgICAgICB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIik7CisgICAg
ICAgICAgICByZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGFyZ2V0
Tm9kZSk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0Lmxlbmd0aCIs
IDApOworCisgICAgICAgICAgICBmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgeworICAg
ICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5bGUudmlzaWJpbGl0eSA9
ICJoaWRkZW4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b24yMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRl
biI7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsK
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vZ2V0LXJlZ2lvbnMtYnktY29u
dGVudDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1y
ZWdpb25zLWJ5LWNvbnRlbnQyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZjMzZmM4ZmVlYjU4
NWJjOWQxYWNmNWY2ODViZWQ2NjYxNGYxNjYwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQyLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDMwIEBACitUZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBO
YW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9u
c0J5Q29udGVudAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZWdpb25M
aXN0IGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAwCitQQVNTIHJlZ2lv
bkxpc3QyIGlzIG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0Mi5sZW5ndGggaXMgMAorUEFTUyBy
ZWdpb25MaXN0ICE9IHJlZ2lvbkxpc3QyIGlzIHRydWUKK1BBU1MgcmVnaW9uTGlzdDMgaXMgbm9u
LW51bGwuCitQQVNTIHJlZ2lvbkxpc3QzLmxlbmd0aCBpcyAwCitQQVNTIHJlZ2lvbkxpc3Q0IGlz
IG5vbi1udWxsLgorUEFTUyByZWdpb25MaXN0NC5sZW5ndGggaXMgMQorUEFTUyByZWdpb25MaXN0
NC5pdGVtKDApLmlkIGlzICJyZWdpb24iCitQQVNTIHJlZ2lvbkxpc3Q1IGlzIG5vbi1udWxsLgor
UEFTUyByZWdpb25MaXN0NS5sZW5ndGggaXMgMAorUEFTUyByZWdpb25MaXN0NiBpcyBub24tbnVs
bC4KK1BBU1MgcmVnaW9uTGlzdDYubGVuZ3RoIGlzIDEKK1BBU1MgcmVnaW9uTGlzdDYuaXRlbSgw
KS5pZCBpcyAicmVnaW9uIgorUEFTUyByZWdpb25MaXN0NyBpcyBub24tbnVsbC4KK1BBU1MgcmVn
aW9uTGlzdDcubGVuZ3RoIGlzIDAKK1BBU1MgcmVnaW9uTGlzdDggaXMgbm9uLW51bGwuCitQQVNT
IHJlZ2lvbkxpc3Q4Lmxlbmd0aCBpcyAwCitQQVNTIHJlZ2lvbkxpc3Q5IGlzIG5vbi1udWxsLgor
UEFTUyByZWdpb25MaXN0OS5sZW5ndGggaXMgMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50Mi5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQyLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTY5MTc1NzhlZmY3YWIxYzdkZjg1OTEzMTVjZWRkYTA1YmMxMjRiOAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9nZXQtcmVnaW9ucy1ieS1jb250ZW50
Mi5odG1sCkBAIC0wLDAgKzEsOTEgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPGhl
YWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5q
cyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIGJvZHkgeyBmb250LWZh
bWlseTogbW9ub3NwYWNlOyB9CisgICAgICAgICAgICAjcmVnaW9uLCAjcmVnaW9uMiB7IHdpZHRo
OiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9CisgICAgICAgICAgICAuYXJ0aWNsZSB7IC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OyB9CisgICAgICAgICAgICAuYXJ0aWNsZTIgeyAtd2Via2l0LWZsb3ct
aW50bzogZmxvdzI7IH0KKyAgICAgICAgICAgIC5yZWdpb24geyAtd2Via2l0LWZsb3ctZnJvbTog
ZmxvdzsgfQorICAgICAgICAgICAgLnJlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7
IH0KKyAgICAgICAgICAgIC5ub1JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBub25lOyB9Cisg
ICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSIgY2xhc3M9ImFydGlj
bGUiPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24iIGNsYXNzPSJyZWdpb24iPjwvZGl2
PgorICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIj48L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDc1
OTogW0NTU1JlZ2lvbnNdIFJlbmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2Rl
IHRvIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudCIpOworCisgICAgICAgICAgICB2YXIg
bmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworCisgICAgICAgICAgICAvLyBHZXR0
aW5nIHRoZSByZWdpb25zIGZvciBhIG5vbiBleGlzdGFudCBub2RlIHNob3VsZCByZXR1cm4gbnVs
bC4KKyAgICAgICAgICAgIHZhciBwRWxlbWVudDsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0
ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOworICAgICAgICAgICAg
c2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0Iik7CisgICAgICAgICAgICBzaG91bGRCZVplcm8o
InJlZ2lvbkxpc3QubGVuZ3RoIik7CisKKyAgICAgICAgICAgIC8vIEdldHRpbmcgdGhlIHJlZ2lv
bnMgZm9yIGFuIGVsZW1lbnQgdGhhdCB3YXMgbm90IGFkZGVkIHRvIHRoZSBkb20gc2hvdWxkIHJl
dHVybiBhbiBlbXB0eSBsaXN0LgorICAgICAgICAgICAgcEVsZW1lbnQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJwIik7CisKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0MiA9IG5hbWVkRmxv
dy5nZXRSZWdpb25zQnlDb250ZW50KHBFbGVtZW50KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9u
TnVsbCgicmVnaW9uTGlzdDIiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lv
bkxpc3QyLmxlbmd0aCIsIDApOworICAgICAgICAgICAgc2hvdWxkQmVUcnVlKCJyZWdpb25MaXN0
ICE9IHJlZ2lvbkxpc3QyIik7CisKKyAgICAgICAgICAgIC8vIEFkZCB0aGUgZWxlbWVudCB0byB0
aGUgZG9tIGJ1dCBub3QgaW4gdGhlIGZsb3cuIFRoZSByZWdpb24gbGlzdCBzaG91bGQgYmUgZW1w
dHkuCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHBFbGVtZW50KTsKKyAg
ICAgICAgICAgIHZhciByZWdpb25MaXN0MyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50
KHBFbGVtZW50KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdDMiKTsK
KyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3QzLmxlbmd0aCIsIDApOwor
CisgICAgICAgICAgICAvLyBBZGQgdGhlIHNhbWUgZWxlbWVudCB0byB0aGUgZmxvdy4gVGhlIHJl
Z2lvbiBsaXN0IHNob3VsZCBjb250YWluIG9uZSByZWdpb24uCisgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LnJlbW92ZUNoaWxkKHBFbGVtZW50KTsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocEVsZW1lbnQpOworICAgICAgICAgICAg
dmFyIHJlZ2lvbkxpc3Q0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQp
OworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0NCIpOworICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDQubGVuZ3RoIiwgMSk7CisgICAgICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3Q0Lml0ZW0oMCkuaWQiLCAicmVnaW9u
Iik7CisKKyAgICAgICAgICAgIC8vIFJlbW92ZSB0aGUgcmVnaW9uIG5vZGUgYW5kIGdldCB0aGUg
cmVnaW9uIGxpc3QuIFRoZSBsaXN0IHNob3VsZCBiZSBlbXB0eS4KKyAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5jbGFzc05hbWUgPSAibm9SZWdpb24iOworICAg
ICAgICAgICAgdmFyIHJlZ2lvbkxpc3Q1ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQo
cEVsZW1lbnQpOworICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0NSIpOwor
ICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDUubGVuZ3RoIiwgMCk7CisK
KyAgICAgICAgICAgIC8vIEJyaW5nIGJhY2sgdGhlIHJlZ2lvbiBhbmQgZ2V0IHRoZSByZWdpb24g
bGlzdC4gVGhlIGxpc3Qgc2hvdWxkIGhhdmUgb25lIGVsZW1lbnQuCisgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuY2xhc3NOYW1lID0gInJlZ2lvbiI7CisgICAg
ICAgICAgICB2YXIgcmVnaW9uTGlzdDYgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChw
RWxlbWVudCk7CisgICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3Q2Iik7Cisg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0Ni5sZW5ndGgiLCAxKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdDYuaXRlbSgwKS5pZCIs
ICJyZWdpb24iKTsKKworICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBuYW1lZCBmbG93LCB0aGUg
cmVnaW9uIGxpc3Qgc2hvdWxkIGJlIGVtcHR5LgorICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAiIjsKKyAgICAgICAgICAgIHZhciByZWdp
b25MaXN0NyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHBFbGVtZW50KTsKKyAgICAg
ICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdDciKTsKKyAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q3Lmxlbmd0aCIsIDApOworCisgICAgICAgICAgICAvLyBN
b3ZlIHRoZSBhcnRpY2xlIHRvIGFub3RoZXIgbmFtZWQgZmxvdywgdGhlIHJlZ2lvbiBsaXN0IHNo
b3VsZCBiZSBlbXB0eS4KKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRp
Y2xlIikuY2xhc3NOYW1lID0gImFydGljbGUyIjsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cy
ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKTsKKyAgICAgICAgICAgIHZhciByZWdpb25MaXN0OCA9
IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwRWxlbWVudCk7CisgICAgICAgICAgICBz
aG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3Q4Iik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0OC5sZW5ndGgiLCAwKTsKKworICAgICAgICAgICAgLy8gQWRkIGEgcmVn
aW9uIHRvIHRoZSBzZWNvbmQgbmFtZWQgZmxvdywgdGhlIHJlZ2lvbiBsaXN0IHNob3VsZCBjb250
YWluIG9uZSBlbGVtZW50CisgICAgICAgICAgICAvLyBzaW5jZSB0aGUgcCBlbGVtZW50IGlzIGEg
Y2hpbGQgb2YgYXJ0aWNsZSB0aGF0IGlzIGNvbGxlY3RlZCBieSBmbG93Mi4KKyAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuY2xhc3NOYW1lID0gInJlZ2lvbjIi
OworICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3Q5ID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlD
b250ZW50KHBFbGVtZW50KTsKKyAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlz
dDkiKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q5Lmxlbmd0aCIs
IDEpOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9m
ZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25z
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yM2NiMDFhYmZiNzQxYzUwMjJhMjU1OTE4M2VhMGY3
YTA4NmM1YWU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMjMgQEAKK1Rlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFt
ZWQgZmxvdy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIGRpdlRleHQxLm9m
ZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQxLm9mZnNldExlZnQgaXMg
MTAwCitQQVNTIGRpdlRleHQxLm9mZnNldFRvcCBpcyA0NTAKK1BBU1MgZGl2VGV4dDJfMS5vZmZz
ZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBkaXZUZXh0Ml8xLm9mZnNldExlZnQgaXMg
NTAwCitQQVNTIGRpdlRleHQyXzEub2Zmc2V0VG9wIGlzIDE1MAorUEFTUyBkaXZUZXh0Ml8yLm9m
ZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQyXzIub2Zmc2V0TGVmdCBp
cyA0NTAKK1BBU1MgZGl2VGV4dDJfMi5vZmZzZXRUb3AgaXMgMzUwCitQQVNTIGRpdlRleHQyXzMu
b2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDJfMy5vZmZzZXRMZWZ0
IGlzIDYwMAorUEFTUyBkaXZUZXh0Ml8zLm9mZnNldFRvcCBpcyA1MDAKK1BBU1MgaW1hZ2Uub2Zm
c2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgaW1hZ2Uub2Zmc2V0TGVmdCBpcyA2NTAK
K1BBU1MgaW1hZ2Uub2Zmc2V0VG9wIGlzIDYyMAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25zLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4t
bXVsdGlwbGUtcmVnaW9ucy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNiOTZjMTQ0MmVmYWRiNmJmYjBiYjdl
ZjNlZDgxZDdjZmZlZDgxMmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy5odG1s
CkBAIC0wLDAgKzEsMjgyIEBACis8aHRtbD4KKzxoZWFkPgorCTxzdHlsZSB0eXBlPSJ0ZXh0L2Nz
cyI+CisJCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2NyaXB0aW9uIGRvbid0
IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCisJCSNkZXNjcmlwdGlv
biB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDBweDsKKwkJfQorCisJCSNjb25z
b2xlIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogMTAwcHg7CisJCX0KKworCQkj
ZGl2TWFpbjEgeworCQkJYm9yZGVyOiAycHggc29saWQgYmx1ZTsKKwkJCXdpZHRoOiAzMDBweDsK
KwkJCWhlaWdodDogMjI2cHg7CisJCQktd2Via2l0LWZsb3ctaW50bzogZmxvdzE7CisJCX0KKwor
CQkjZGl2TWFpbjIgeworCQkJYm9yZGVyOiAycHggc29saWQgYmx1ZTsKKwkJCXdpZHRoOiAyMTFw
eDsKKwkJCWhlaWdodDogNDcwcHg7CisJCQlwYWRkaW5nLWxlZnQ6IDVweDsKKwkJCW1hcmdpbjog
NXB4OworCQkJbWFyZ2luLWxlZnQ6IDEwcHg7CisJCQlsZWZ0OiA0MHB4OworCQkJLXdlYmtpdC1m
bG93LWludG86IGZsb3cyOworCQl9CisKKwkJLmRpdlRleHQgeworCQkJYm9yZGVyOiAxcHggc29s
aWQgZ3JlZW47CisJCQljb2xvcjogZ3JlZW47CisJCX0KKworCQkjZGl2VGV4dDEgeworCQkJd2lk
dGg6IDIwMHB4OworCQkJaGVpZ2h0OiAxNTBweDsKKwkJCXBvc2l0aW9uOiByZWxhdGl2ZTsKKwkJ
CWxlZnQ6IDMwcHg7CisJCQl0b3A6IDEwcHg7CisJCX0KKworCQkjZGl2VGV4dDJfMSB7CisJCQli
b3JkZXItY29sb3I6ICMwMDk5OTk7CisJCQljb2xvcjogIzAwOTk5OTsKKwkJCW1hcmdpbjogMTBw
eDsKKwkJCXdpZHRoOiAxODBweDsKKwkJCWhlaWdodDogMTQwcHg7CisJCX0KKworCQkjZGl2VGV4
dDJfMiB7CisJCQl3aWR0aDogMjAzcHg7CisJCQloZWlnaHQ6IDI3MHB4OworCQl9CisKKwkJI2Rp
dlRleHQyXzMgeworCQkJbWFyZ2luOiA0cHg7CisJCQl3aWR0aDogMTkycHg7CisJCQloZWlnaHQ6
IDEwNXB4OworCQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJdG9wOiAxMTVweDsKKwkJCWNvbG9y
OiAjNzc3NzAwOworCQkJYm9yZGVyLWNvbG9yOiAjNzc3NzAwOworCQl9CisKKwkJI2Fic29sdXRl
U3BhbiB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCX0KKworCQkjc3BhbiB7CisJCQlwb3Np
dGlvbjogcmVsYXRpdmU7CisJCQl0b3A6IDExNXB4OworCQkJbGVmdDogMjQ7CisJCQljb2xvcjog
YmxhY2s7CisJCQlmb250LXNpemU6IDEycHg7CisJCQltYXJnaW4tbGVmdDogNHB4OworCQkJcGFk
ZGluZzogMXB4OworCQkJYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisJCX0KKworCQkjaW1hZ2Ug
eworCQkJYm9yZGVyOiAxcHggZGFzaGVkIHJlZDsKKwkJCXdpZHRoOiAxNXB4OworCQkJcG9zaXRp
b246IHJlbGF0aXZlOworCQkJdG9wOiAxMjRweDsKKwkJCW1hcmdpbi1sZWZ0OiA1NHB4OworCQl9
CisKKwkJI2R1bW15MSB7CisJCQl3aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDI1cHg7CisJCQli
b3JkZXI6IDFweCBzb2xpZCBibGFjazsKKwkJCW1hcmdpbjogNXB4OworCQkJbWFyZ2luLWxlZnQ6
IDIwcHg7CisJCX0KKworCQkucmVnaW9uMSB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7
CisJCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQls
ZWZ0OiA1OXB4OworCQkJdG9wOiA0MjlweDsKKwkJCXdpZHRoOiAzMDRweDsKKwkJCWhlaWdodDog
MjMwcHg7CisJCX0KKworCQkucmVnaW9uMiB7CisJCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7
CisJCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7CisJCX0KKworCQkjZmlyc3RfcmVnaW9uMiB7CisJ
CQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA0NjRweDsKKwkJCXRvcDogLTE0MHB4Owor
CQkJd2lkdGg6IDUwMHB4OworCQkJaGVpZ2h0OiAxNjBweDsKKwkJfQorCisJCSNzZWNvbmRfcmVn
aW9uMiB7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA0MjRweDsKKwkJCXRvcDog
LTk0cHg7CisJCQl3aWR0aDogMzMwcHg7CisJCQloZWlnaHQ6IDE1MHB4OworCQl9CisKKwkJI3Ro
aXJkX3JlZ2lvbjIgeworCQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJbGVmdDogNTY5cHg7CisJ
CQl0b3A6IC02NnB4OworCQkJd2lkdGg6IDI4MnB4OworCQkJaGVpZ2h0OiAxOTVweDsKKwkJfQor
CisJCS5ncmlkIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogNzAwcHg7CisJCQl3
aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDEwMHB4OworCQkJYm9yZGVyLXJpZ2h0OiAxcHggc29s
aWQgYmx1ZTsKKwkJCXRleHQtYWxpZ246IHJpZ2h0OworCQkJZm9udC1zaXplOiAxNHB4OworCQkJ
Y29sb3I6IGJsdWU7CisJCX0KKworCQkudmdyaWQgeworCQkJcG9zaXRpb246IGFic29sdXRlOwor
CQkJbGVmdDogOTAwcHg7CisJCQl3aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDEwMHB4OworCQkJ
Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsdWU7CisJCQl0ZXh0LWFsaWduOiBib3R0b207CisJ
CQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjogYmx1ZTsKKwkJfQorCisJCSNncmlkMSB7CisJ
CQlsZWZ0OiAwcHg7CisJCX0KKwkJI2dyaWQyIHsKKwkJCWxlZnQ6IDEwMHB4OworCQl9CisJCSNn
cmlkMyB7CisJCQlsZWZ0OiAyMDBweDsKKwkJfQorCQkjZ3JpZDQgeworCQkJbGVmdDogMzAwcHg7
CisJCX0KKwkJI2dyaWQ1IHsKKwkJCWxlZnQ6IDQwMHB4OworCQl9CisJCSNncmlkNiB7CisJCQls
ZWZ0OiA1MDBweDsKKwkJfQorCQkjZ3JpZDcgeworCQkJbGVmdDogNjAwcHg7CisJCX0KKworCQkj
dmdyaWQxIHsKKwkJCXRvcDogMHB4OworCQl9CisJCSN2Z3JpZDIgeworCQkJdG9wOiAxMDBweDsK
KwkJfQorCQkjdmdyaWQzIHsKKwkJCXRvcDogMjAwcHg7CisJCX0KKwkJI3ZncmlkNCB7CisJCQl0
b3A6IDMwMHB4OworCQl9CisJCSN2Z3JpZDUgeworCQkJdG9wOiA0MDBweDsKKwkJfQorCQkjdmdy
aWQ2IHsKKwkJCXRvcDogNTAwcHg7CisJCX0KKwkJI3ZncmlkNyB7CisJCQl0b3A6IDYwMHB4Owor
CQl9CisJCSN2Z3JpZDggeworCQkJdG9wOiA3MDBweDsKKwkJCWJvcmRlcjogbm9uZTsKKwkJfQor
CTwvc3R5bGU+CisKKwk8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHkgaWQ9ImJvZHkiPgorCTxkaXYgaWQ9ImRp
dk1haW4xIj4KKwkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQxIj48L2Rpdj4KKwk8
L2Rpdj4KKworCTxkaXYgaWQ9ImRpdk1haW4yIj4KKwkJPGRpdiBjbGFzcz0iZHVtbXkiIGlkPSJk
dW1teTEiPjwvZGl2PgorCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDJfMSI+PC9k
aXY+CisJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0Ml8yIj4KKwkJCTxkaXYgY2xh
c3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0Ml8zIj48L2Rpdj4KKwkJCTxpbWcgaWQ9ImltYWdlIiBz
cmM9InJlc291cmNlcy90cmFuc3BhcmVudC5wbmciPjwvaW5wdXQ+CisJCTwvZGl2PgkJCisJPC9k
aXY+CisKKwk8ZGl2IGNsYXNzPSJyZWdpb24xIj48L2Rpdj4KKworCTxkaXYgY2xhc3M9InJlZ2lv
bjIiIGlkPSJmaXJzdF9yZWdpb24yIj48L2Rpdj4KKwk8ZGl2IGNsYXNzPSJyZWdpb24yIiBpZD0i
c2Vjb25kX3JlZ2lvbjIiPjwvZGl2PgorCTxkaXYgY2xhc3M9InJlZ2lvbjIiIGlkPSJ0aGlyZF9y
ZWdpb24yIj48L2Rpdj4KKworCTxkaXYgaWQ9ImdyaWQxIiBjbGFzcz0iZ3JpZCI+MTAwcHg8L2Rp
dj4KKwk8ZGl2IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4PC9kaXY+CisJPGRpdiBpZD0i
Z3JpZDMiIGNsYXNzPSJncmlkIj4zMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQ0IiBjbGFzcz0i
Z3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNSIgY2xhc3M9ImdyaWQiPjUwMHB4PC9k
aXY+CisJPGRpdiBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBweDwvZGl2PgorCTxkaXYgaWQ9
ImdyaWQ3IiBjbGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KKworCTxkaXYgaWQ9InZncmlkMSIgY2xh
c3M9InZncmlkIj48L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDIiIGNsYXNzPSJ2Z3JpZCI+MTAwcHg8
L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+MjAwcHg8L2Rpdj4KKwk8ZGl2
IGlkPSJ2Z3JpZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDUi
IGNsYXNzPSJ2Z3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDYiIGNsYXNzPSJ2Z3Jp
ZCI+NTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNzPSJ2Z3JpZCI+NjAwcHg8L2Rp
dj4KKwk8ZGl2IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAwcHg8L2Rpdj4KKworCTxzY3Jp
cHQ+CisJCWRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5h
bWVkIGZsb3cuIikKKworCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0UGFyZW50IiwgImRvY3Vt
ZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldExlZnQiLCAiMTAwIik7CisJ
CXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRUb3AiLCAiNDUwIik7CisKKwkJc2hvdWxkQmUoImRp
dlRleHQyXzEub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImRp
dlRleHQyXzEub2Zmc2V0TGVmdCIsICI1MDAiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQyXzEub2Zm
c2V0VG9wIiwgIjE1MCIpOworCisJCXNob3VsZEJlKCJkaXZUZXh0Ml8yLm9mZnNldFBhcmVudCIs
ICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJlKCJkaXZUZXh0Ml8yLm9mZnNldExlZnQiLCAi
NDUwIik7CisJCXNob3VsZEJlKCJkaXZUZXh0Ml8yLm9mZnNldFRvcCIsICIzNTAiKTsKKworCQlz
aG91bGRCZSgiZGl2VGV4dDJfMy5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOworCQlz
aG91bGRCZSgiZGl2VGV4dDJfMy5vZmZzZXRMZWZ0IiwgIjYwMCIpOworCQlzaG91bGRCZSgiZGl2
VGV4dDJfMy5vZmZzZXRUb3AiLCAiNTAwIik7CisKKwkJc2hvdWxkQmUoImltYWdlLm9mZnNldFBh
cmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJlKCJpbWFnZS5vZmZzZXRMZWZ0Iiwg
IjY1MCIpOworCQlzaG91bGRCZSgiaW1hZ2Uub2Zmc2V0VG9wIiwgIjYyMCIpOworCisJCWlmICh3
aW5kb3cudGVzdFJ1bm5lcikgeworCQkJdmFyIGFsbEdyYXBoaWNFbGVtZW50cyA9IGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24xLCAucmVnaW9uMiwgLmRpdlRleHQsIC5ncmlkLCAu
dmdyaWQsIC5kdW1teSwgI3NwYW4sICNpbWFnZSIpOworCQkJZm9yICh2YXIgaT0wOyBpPGFsbEdy
YXBoaWNFbGVtZW50cy5sZW5ndGg7IGkrKykKKwkJCQlhbGxHcmFwaGljRWxlbWVudHNbaV0uc3R5
bGUuZGlzcGxheSA9ICJub25lIjsKKwkJfQorCQkKKwk8L3NjcmlwdD4KKwk8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0
TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWFic29sdXRlLXN0aWNreS1maXhlZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3At
aW4tcmVnaW9uLWFic29sdXRlLXN0aWNreS1maXhlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NmIyYWEyOTgxMzllNDE2NzRlNzQ5MTNlZDdkMWUwMTE1MTFjYzFjZQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1p
bi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIw
IEBACitUZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5hbWVkIGZsb3cgd2l0aCBh
YnNvbHV0ZSwgc3RpY2t5IGFuZCBmaXhlZCBwb3NpdGlvbmluZy4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCitQQVNTIGRpdlRleHQxLm9mZnNldFBhcmVudCBpcyBkaXZNYWluMQorUEFT
UyBkaXZUZXh0MS5vZmZzZXRMZWZ0IGlzIDEwCitQQVNTIGRpdlRleHQxLm9mZnNldFRvcCBpcyAx
MAorUEFTUyBkaXZUZXh0Mi5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBkaXZU
ZXh0Mi5vZmZzZXRMZWZ0IGlzIDEwMAorUEFTUyBkaXZUZXh0Mi5vZmZzZXRUb3AgaXMgNTAwCitQ
QVNTIGRpdlRleHQzLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQz
Lm9mZnNldExlZnQgaXMgNjAwCitQQVNTIGRpdlRleHQzLm9mZnNldFRvcCBpcyA0MDAKK1BBU1Mg
ZGl2VGV4dDQub2Zmc2V0UGFyZW50IGlzIG51bGwKK1BBU1MgZGl2VGV4dDQub2Zmc2V0TGVmdCBp
cyA1MAorUEFTUyBkaXZUZXh0NC5vZmZzZXRUb3AgaXMgMjAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWFic29sdXRl
LXN0aWNreS1maXhlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNl
dExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yNTY5NWJkYTgwNDNhYWNmZDE2YzQ2ZjhlOTVmNjU3ZTAwYWI3OWRjCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zm
c2V0VG9wLWluLXJlZ2lvbi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQuaHRtbApAQCAtMCwwICsxLDMw
NSBAQAorPGh0bWw+Cis8aGVhZD4KKwk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorCQkvKiBNYWtl
IHN1cmUgdGhlIGNvbnNvbGUgYW5kIHRoZSBkZXNjcmlwdGlvbiBkb24ndCBpbnRlcmZlcmUgd2l0
aCB0aGUgcmVzdCBvZiB0aGUgbGF5b3V0LiAqLworCQkjZGVzY3JpcHRpb24geworCQkJcG9zaXRp
b246IGFic29sdXRlOworCQkJdG9wOiAwcHg7CisJCX0KKworCQkjY29uc29sZSB7CisJCQlwb3Np
dGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDEwMHB4OworCQl9CisKKwkJI2Rpdk1haW4xIHsKKwkJ
CWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7CisJCQloZWlnaHQ6IDEwNXB4OworCQkJbWFyZ2luOiAx
MHB4OworCQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cx
OworCQl9CisKKwkJI2Rpdk1haW4yIHsKKwkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7CisJCQlo
ZWlnaHQ6IDEyMHB4OworCQkJbWFyZ2luOiAxMHB4OworCQkJLXdlYmtpdC1mbG93LWludG86IGZs
b3cyOworCQl9CisKKwkJI2Rpdk1haW4zIHsKKwkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7CisJ
CQl3aWR0aDogMjExcHg7CisJCQloZWlnaHQ6IDE0NnB4OworCQkJcGFkZGluZy1sZWZ0OiA1cHg7
CisJCQltYXJnaW46IDVweDsKKwkJCW1hcmdpbi1sZWZ0OiAxMHB4OworCQkJbGVmdDogNDBweDsK
KwkJCS13ZWJraXQtZmxvdy1pbnRvOiBmbG93MzsKKwkJfQorCisJCSNkaXZNYWluNCB7CisJCQli
b3JkZXI6IDJweCBzb2xpZCBibHVlOworCQkJd2lkdGg6IDIyNXB4OworCQkJaGVpZ2h0OiAxMjBw
eDsKKwkJCXBhZGRpbmctbGVmdDogNXB4OworCQkJcGFkZGluZy10b3A6IDVweDsKKwkJCW1hcmdp
bjogOHB4OworCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3c0OworCQl9CisKKwkJLmRpdlRleHQg
eworCQkJYm9yZGVyOiAxcHggc29saWQgZ3JlZW47CisJCQljb2xvcjogZ3JlZW47CisJCQlmb250
LXNpemU6IDE0cHg7CisJCX0KKworCQkjZGl2VGV4dDEgeworCQkJd2lkdGg6IDI1MHB4OworCQkJ
cG9zaXRpb246IGFic29sdXRlOworCQkJbGVmdDogMTBweDsKKwkJCXRvcDogMTBweDsKKwkJfQor
CisJCSNkaXZUZXh0MiB7CisJCQl3aWR0aDogMjAwcHg7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7
CisJCQlsZWZ0OiAyMHB4OworCQkJdG9wOiAyMHB4OworCQl9CisKKwkJI2RpdlRleHQzIHsKKwkJ
CWJvcmRlci1jb2xvcjogIzAwOTk5OTsKKwkJCWNvbG9yOiAjMDA5OTk5OworCQkJbWFyZ2luOiAx
MHB4OworCQkJd2lkdGg6IDE4MHB4OworCQkJaGVpZ2h0OiA5MHB4OworCQkJcG9zaXRpb246IC13
ZWJraXQtc3RpY2t5OworCQkJdG9wOiA1MHB4OworCQl9CisKKwkJI2RpdlRleHQ0IHsKKwkJCWJv
cmRlci1jb2xvcjogIzAwOTk5OTsKKwkJCWNvbG9yOiAjMDA5OTk5OworCQkJd2lkdGg6IDE4MHB4
OworCQkJaGVpZ2h0OiAxMDBweDsKKwkJCXBvc2l0aW9uOiBmaXhlZDsKKwkJCWxlZnQ6IDUwcHg7
CisJCQl0b3A6IDIwcHg7CisJCX0KKworCQkjZHVtbXkgeworCQkJd2lkdGg6IDEwMHB4OworCQkJ
aGVpZ2h0OiAyNXB4OworCQkJYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisJCQltYXJnaW46IDVw
eDsKKwkJCW1hcmdpbi1sZWZ0OiAyMHB4OworCQl9CisKKwkJI3JlZ2lvbjEgeworCQkJLXdlYmtp
dC1mbG93LWZyb206IGZsb3cxOworCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOworCQkJcG9zaXRp
b246IHJlbGF0aXZlOworCQkJbGVmdDogNTlweDsKKwkJCXRvcDogMzM1cHg7CisJCQl3aWR0aDog
MzA0cHg7CisJCQloZWlnaHQ6IDEyNXB4OworCQl9CisKKwkJI3JlZ2lvbjIgeworCQkJLXdlYmtp
dC1mbG93LWZyb206IGZsb3cyOworCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOworCQkJcG9zaXRp
b246IHJlbGF0aXZlOworCQkJbGVmdDogNzFweDsKKwkJCXRvcDogMzQ0cHg7CisJCQl3aWR0aDog
MzA0cHg7CisJCQloZWlnaHQ6IDE0MHB4OworCQl9CisKKwkJI3JlZ2lvbjMgeworCQkJLXdlYmtp
dC1mbG93LWZyb206IGZsb3czOworCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOworCQkJcG9zaXRp
b246IHJlbGF0aXZlOworCQkJbWFyZ2luLXRvcDogMjBweDsKKwkJCWxlZnQ6IDU2NHB4OworCQkJ
dG9wOiA1M3B4OworCQkJd2lkdGg6IDI1MHB4OworCQkJaGVpZ2h0OiAxNjBweDsKKwkJCW92ZXJm
bG93OiBoaWRkZW47CisJCX0KKworCQkjcmVnaW9uNCB7CisJCQktd2Via2l0LWZsb3ctZnJvbTog
ZmxvdzQ7CisJCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7
CisJCQltYXJnaW4tdG9wOiAyMHB4OworCQkJbGVmdDogNDUwcHg7CisJCQl0b3A6IDUzcHg7CisJ
CQl3aWR0aDogMjUwcHg7CisJCQloZWlnaHQ6IDE0MHB4OworCQl9CisKKwkJLmdyaWQgeworCQkJ
cG9zaXRpb246IGFic29sdXRlOworCQkJdG9wOiA3NTBweDsKKwkJCXdpZHRoOiAxMDBweDsKKwkJ
CWhlaWdodDogMTAwcHg7CisJCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibHVlOworCQkJdGV4
dC1hbGlnbjogcmlnaHQ7CisJCQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjogYmx1ZTsKKwkJ
fQorCisJCS52Z3JpZCB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0OiA5MDBweDsK
KwkJCXdpZHRoOiAxMDBweDsKKwkJCWhlaWdodDogMTAwcHg7CisJCQlib3JkZXItYm90dG9tOiAx
cHggc29saWQgYmx1ZTsKKwkJCXRleHQtYWxpZ246IGJvdHRvbTsKKwkJCWZvbnQtc2l6ZTogMTRw
eDsKKwkJCWNvbG9yOiBibHVlOworCQl9CisKKwkJI2dyaWQxIHsKKwkJCWxlZnQ6IDBweDsKKwkJ
fQorCQkjZ3JpZDIgeworCQkJbGVmdDogMTAwcHg7CisJCX0KKwkJI2dyaWQzIHsKKwkJCWxlZnQ6
IDIwMHB4OworCQl9CisJCSNncmlkNCB7CisJCQlsZWZ0OiAzMDBweDsKKwkJfQorCQkjZ3JpZDUg
eworCQkJbGVmdDogNDAwcHg7CisJCX0KKwkJI2dyaWQ2IHsKKwkJCWxlZnQ6IDUwMHB4OworCQl9
CisJCSNncmlkNyB7CisJCQlsZWZ0OiA2MDBweDsKKwkJfQorCisJCSN2Z3JpZDEgeworCQkJdG9w
OiAwcHg7CisJCX0KKwkJI3ZncmlkMiB7CisJCQl0b3A6IDEwMHB4OworCQl9CisJCSN2Z3JpZDMg
eworCQkJdG9wOiAyMDBweDsKKwkJfQorCQkjdmdyaWQ0IHsKKwkJCXRvcDogMzAwcHg7CisJCX0K
KwkJI3ZncmlkNSB7CisJCQl0b3A6IDQwMHB4OworCQl9CisJCSN2Z3JpZDYgeworCQkJdG9wOiA1
MDBweDsKKwkJfQorCQkjdmdyaWQ3IHsKKwkJCXRvcDogNjAwcHg7CisJCX0KKwkJI3ZncmlkOCB7
CisJCQl0b3A6IDcwMHB4OworCQkJYm9yZGVyOiBub25lOworCQl9CisJPC9zdHlsZT4KKworCTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
CisJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorCQlmdW5jdGlvbiB3cml0ZU9mZnNl
dEluZm8oc2VsZWN0b3IpIHsKKwkJCXZhciBkaXZJdGVtcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0
b3JBbGwoc2VsZWN0b3IpOworCQkJCQorCQkJZm9yICh2YXIgaT0wOyBpPGRpdkl0ZW1zLmxlbmd0
aDsgaSsrKSB7CisJCQkJdmFyIGRpdkl0ZW0gPSBkaXZJdGVtc1tpXTsKKwkJCQl2YXIgZXhpc3Rp
bmdIVE1MID0gZGl2SXRlbS5pbm5lckhUTUw7CisJCQkJdmFyIG5ld0hUTUwgPSBleGlzdGluZ0hU
TUwucmVwbGFjZSgiI29mZlRvcCMiLCBkaXZJdGVtLm9mZnNldFRvcCk7CisJCQkJbmV3SFRNTCA9
IG5ld0hUTUwucmVwbGFjZSgiI29mZkxlZnQjIiwgZGl2SXRlbS5vZmZzZXRMZWZ0KTsKKwkJCQlp
ZiAoZGl2SXRlbS5vZmZzZXRQYXJlbnQpCisJCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2Uo
IiNvZmZQYXJlbnQjIiwgZGl2SXRlbS5vZmZzZXRQYXJlbnQudGFnTmFtZSArICIoIiArIGRpdkl0
ZW0ub2Zmc2V0UGFyZW50LmlkICsgIikiKTsKKwkJCQllbHNlCisJCQkJCW5ld0hUTUwgPSBuZXdI
VE1MLnJlcGxhY2UoIiNvZmZQYXJlbnQjIiwgIm51bGwiKTsKKwkJCQlkaXZJdGVtLmlubmVySFRN
TCA9IG5ld0hUTUw7CisJCQl9CisJCX0KKwkJZnVuY3Rpb24gbXlPbkxvYWQoKSB7CisJCQl3cml0
ZU9mZnNldEluZm8oIi5kaXZUZXh0Iik7CisJCX0KKwk8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJv
ZHkgaWQ9ImJvZHkiIG9ubG9hZCA9ICJteU9uTG9hZCgpOyI+CisJPGRpdiBpZD0iZGl2TWFpbjEi
PgorCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDEiPlRoaXMgaXMgPGI+ZGl2VGV4
dDE8L2I+IChhYnNvbHV0ZSk6PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50Izwv
Yj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRvcCBp
cyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KKwk8L2Rpdj4KKworCTxkaXYgaWQ9ImRpdk1haW4yIj4K
KwkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQyIj5UaGlzIGlzIDxiPmRpdlRleHQy
PC9iPiAoYWJzb2x1dGUpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+
PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMg
PGI+I29mZlRvcCM8L2I+PC9kaXY+CisJPC9kaXY+CisKKwk8ZGl2IGlkPSJkaXZNYWluMyI+CisJ
CTxkaXYgY2xhc3M9ImR1bW15IiBpZD0iZHVtbXkiPmR1bW15PC9kaXY+CisJCTxkaXYgY2xhc3M9
ImRpdlRleHQiIGlkPSJkaXZUZXh0MyI+PHNwYW4gY2xhc3M9Im9mZnNldEluZm8iPlRoaXMgaXMg
PGI+ZGl2VGV4dDM8L2I+IChzdGlja3kpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBh
cmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxici8+LSBvZmZz
ZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9zcGFuPjwvZGl2PgorCTwvZGl2PgorCisJPGRpdiBp
ZD0iZGl2TWFpbjQiPgorCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDQiPlRoaXMg
aXMgPGI+ZGl2VGV4dDQ8L2I+IChmaXhlZCk6PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8Yj4jb2Zm
UGFyZW50IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9m
ZnNldFRvcCBpcyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KKwk8L2Rpdj4KKworCTxkaXYgY2xhc3M9
InJlZ2lvbiIgaWQ9InJlZ2lvbjEiPjwvZGl2PgorCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJl
Z2lvbjIiPjwvZGl2PgorCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjMiPjwvZGl2Pgor
CTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjQiPjwvZGl2PgorCisJPGRpdiBpZD0iZ3Jp
ZDEiIGNsYXNzPSJncmlkIj4xMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQyIiBjbGFzcz0iZ3Jp
ZCI+MjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkMyIgY2xhc3M9ImdyaWQiPjMwMHB4PC9kaXY+
CisJPGRpdiBpZD0iZ3JpZDQiIGNsYXNzPSJncmlkIj40MDBweDwvZGl2PgorCTxkaXYgaWQ9Imdy
aWQ1IiBjbGFzcz0iZ3JpZCI+NTAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNiIgY2xhc3M9Imdy
aWQiPjYwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDciIGNsYXNzPSJncmlkIj43MDBweDwvZGl2
PgorCisJPGRpdiBpZD0idmdyaWQxIiBjbGFzcz0idmdyaWQiPjwvZGl2PgorCTxkaXYgaWQ9InZn
cmlkMiIgY2xhc3M9InZncmlkIj4xMDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkMyIgY2xhc3M9
InZncmlkIj4yMDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNCIgY2xhc3M9InZncmlkIj4zMDBw
eDwvZGl2PgorCTxkaXYgaWQ9InZncmlkNSIgY2xhc3M9InZncmlkIj40MDBweDwvZGl2PgorCTxk
aXYgaWQ9InZncmlkNiIgY2xhc3M9InZncmlkIj41MDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlk
NyIgY2xhc3M9InZncmlkIj42MDBweDwvZGl2PgorCTxkaXYgaWQ9InZncmlkOCIgY2xhc3M9InZn
cmlkIj43MDBweDwvZGl2PgorCisJPHNjcmlwdD4KKwkJZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0
TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGFic29sdXRlLCBzdGlja3kg
YW5kIGZpeGVkIHBvc2l0aW9uaW5nLiIpCisKKwkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldFBh
cmVudCIsICJkaXZNYWluMSIpOworCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0TGVmdCIsICIx
MCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0VG9wIiwgIjEwIik7CisKKwkJc2hvdWxk
QmUoImRpdlRleHQyLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJl
KCJkaXZUZXh0Mi5vZmZzZXRMZWZ0IiwgIjEwMCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zm
c2V0VG9wIiwgIjUwMCIpOworCisJCXNob3VsZEJlKCJkaXZUZXh0My5vZmZzZXRQYXJlbnQiLCAi
ZG9jdW1lbnQuYm9keSIpOworCQlzaG91bGRCZSgiZGl2VGV4dDMub2Zmc2V0TGVmdCIsICI2MDAi
KTsKKwkJc2hvdWxkQmUoImRpdlRleHQzLm9mZnNldFRvcCIsICI0MDAiKTsKKworCQlzaG91bGRC
ZU51bGwoImRpdlRleHQ0Lm9mZnNldFBhcmVudCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDQub2Zm
c2V0TGVmdCIsICI1MCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDQub2Zmc2V0VG9wIiwgIjIwIik7
CisKKwkJaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisJCQl2YXIgYWxsR3JhcGhpY0VsZW1lbnRz
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnJlZ2lvbiwgLmRpdlRleHQsIC5ncmlkLCAu
dmdyaWQsICNkdW1teSIpOworCQkJZm9yICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5s
ZW5ndGg7IGkrKykKKwkJCQlhbGxHcmFwaGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJu
b25lIjsKKwkJfQorCQkKKwk8L3NjcmlwdD4KKwk8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3At
aW4tcmVnaW9uLWZsb2F0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmMyZWRmYjc1NjVmZjc3MzZiNDg4YTQwZmI5NWY5ODdjMzY4MDI2NzgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1v
ZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitU
ZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5hbWVkIGZsb3cgd2l0aCBmbG9hdHMu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworUEFTUyBkaXZUZXh0MS5vZmZzZXRQYXJl
bnQgaXMgZG9jdW1lbnQuYm9keQorUEFTUyBkaXZUZXh0MS5vZmZzZXRMZWZ0IGlzIDIwMAorUEFT
UyBkaXZUZXh0MS5vZmZzZXRUb3AgaXMgMzAwCitQQVNTIGRpdlRleHQyLm9mZnNldFBhcmVudCBp
cyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQyLm9mZnNldExlZnQgaXMgMzAwCitQQVNTIGRp
dlRleHQyLm9mZnNldFRvcCBpcyA1MDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0
VG9wLWluLXJlZ2lvbi1mbG9hdC12ZXJ0LXJsLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMmFi
NDNkZjk1NDU0NzMyMjVlYzgwYzUyYThiN2JiYzRhZGQ5YWRjCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJl
Z2lvbi1mbG9hdC12ZXJ0LXJsLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitUZXN0IG9m
ZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5hbWVkIGZsb3cgd2l0aCBmbG9hdHMgaW4gdmVy
dGljYWwtcmwgbW9kZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNTIGRpdlRl
eHQxLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRpdlRleHQxLm9mZnNldExl
ZnQgaXMgNzAwCitQQVNTIGRpdlRleHQxLm9mZnNldFRvcCBpcyAyMDAKK1BBU1MgZGl2VGV4dDIu
b2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dDIub2Zmc2V0TGVmdCBp
cyA0MDAKK1BBU1MgZGl2VGV4dDIub2Zmc2V0VG9wIGlzIDIwMAorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQt
dmVydC1ybC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQt
b2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC12ZXJ0LXJsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzlhN2Ey
YTRkMTEwMDE5YjRkNTg5OThkZmQyNGJhMTY5MWU2ODM1YgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdp
b24tZmxvYXQtdmVydC1ybC5odG1sCkBAIC0wLDAgKzEsMTk4IEBACis8aHRtbCBzdHlsZT0iLXdl
YmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyI+Cis8aGVhZD4KKwk8c3R5bGUgdHlwZT0i
dGV4dC9jc3MiPgorCQkvKiBNYWtlIHN1cmUgdGhlIGNvbnNvbGUgYW5kIHRoZSBkZXNjcmlwdGlv
biBkb24ndCBpbnRlcmZlcmUgd2l0aCB0aGUgcmVzdCBvZiB0aGUgbGF5b3V0LiAqLworCQkjZGVz
Y3JpcHRpb24geworCQkJcG9zaXRpb246IGFic29sdXRlOworCQkJbGVmdDogMHB4OworCQl9CisK
KwkJI2NvbnNvbGUgeworCQkJcG9zaXRpb246IGFic29sdXRlOworCQkJbGVmdDogMTAwcHg7CisJ
CX0KKworCQkjZGl2TWFpbjEgeworCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cxOworCQkJYm9y
ZGVyOiAycHggc29saWQgYmx1ZTsKKwkJCXdpZHRoOiAxNjBweDsKKwkJCW1hcmdpbjogMTBweDsK
KwkJCXBhZGRpbmc6IDVweDsKKwkJfQorCisJCSNkaXZNYWluMiB7CisJCQlib3JkZXI6IDJweCBz
b2xpZCBibHVlOworCQkJd2lkdGg6IDEzNXB4OworCQkJbWFyZ2luOiA1cHg7CisJCQktd2Via2l0
LWZsb3ctaW50bzogZmxvdzI7CisJCX0KKworCQkuZGl2VGV4dCB7CisJCQlib3JkZXI6IDFweCBz
b2xpZCBncmVlbjsKKwkJCWNvbG9yOiBncmVlbjsKKwkJCWZvbnQtc2l6ZTogMTRweDsKKwkJCXBh
ZGRpbmc6IDVweDsKKwkJfQorCisJCSNkaXZUZXh0MSB7CisJCQl3aWR0aDogNjBweDsKKwkJCWhl
aWdodDogMjQwcHg7CisJCQltYXJnaW46IDEwcHg7CisJCQlwYWRkaW5nLWxlZnQ6IDVweDsKKwkJ
CWZsb2F0OiByaWdodDsKKwkJfQorCisJCSNkaXZUZXh0MiB7CisJCQl3aWR0aDogNjBweDsKKwkJ
CWhlaWdodDogMTkwcHg7CisJCQlmbG9hdDogbGVmdDsKKwkJCW1hcmdpbjogMTBweDsKKwkJfQor
CisJCSNyZWdpb24xIHsKKwkJCS13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsKKwkJCWJvcmRlcjog
MXB4IHNvbGlkIHJlZDsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogNzhweDsKKwkJ
CWxlZnQ6IDYwOHB4OworCQkJaGVpZ2h0OiA0MDBweDsKKwkJCXdpZHRoOiAxOTBweDsKKwkJfQor
CisJCSNyZWdpb24yIHsKKwkJCS13ZWJraXQtZmxvdy1mcm9tOiBmbG93MjsKKwkJCWJvcmRlcjog
MXB4IHNvbGlkIHJlZDsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCWxlZnQ6IDMzOHB4Owor
CQkJdG9wOiAxODJweDsKKwkJCXdpZHRoOiAxNTBweDsKKwkJCWhlaWdodDogNDAwcHg7CisJCX0K
KworCQkuZ3JpZCB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDY1MHB4OworCQkJ
d2lkdGg6IDEwMHB4OworCQkJaGVpZ2h0OiAxMDBweDsKKwkJCWJvcmRlci1yaWdodDogMXB4IHNv
bGlkIGJsdWU7CisJCQl0ZXh0LWFsaWduOiByaWdodDsKKwkJCWZvbnQtc2l6ZTogMTRweDsKKwkJ
CWNvbG9yOiBibHVlOworCQl9CisKKwkJLnZncmlkIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsK
KwkJCWxlZnQ6IDkwMHB4OworCQkJd2lkdGg6IDEwMHB4OworCQkJaGVpZ2h0OiAxMDBweDsKKwkJ
CWJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibHVlOworCQkJdGV4dC1hbGlnbjogYm90dG9tOwor
CQkJZm9udC1zaXplOiAxNHB4OworCQkJY29sb3I6IGJsdWU7CisJCX0KKworCQkjZ3JpZDEgewor
CQkJbGVmdDogMHB4OworCQl9CisJCSNncmlkMiB7CisJCQlsZWZ0OiAxMDBweDsKKwkJfQorCQkj
Z3JpZDMgeworCQkJbGVmdDogMjAwcHg7CisJCX0KKwkJI2dyaWQ0IHsKKwkJCWxlZnQ6IDMwMHB4
OworCQl9CisJCSNncmlkNSB7CisJCQlsZWZ0OiA0MDBweDsKKwkJfQorCQkjZ3JpZDYgeworCQkJ
bGVmdDogNTAwcHg7CisJCX0KKwkJI2dyaWQ3IHsKKwkJCWxlZnQ6IDYwMHB4OworCQl9CisKKwkJ
I3ZncmlkMSB7CisJCQl0b3A6IDBweDsKKwkJfQorCQkjdmdyaWQyIHsKKwkJCXRvcDogMTAwcHg7
CisJCX0KKwkJI3ZncmlkMyB7CisJCQl0b3A6IDIwMHB4OworCQl9CisJCSN2Z3JpZDQgeworCQkJ
dG9wOiAzMDBweDsKKwkJfQorCQkjdmdyaWQ1IHsKKwkJCXRvcDogNDAwcHg7CisJCX0KKwkJI3Zn
cmlkNiB7CisJCQl0b3A6IDUwMHB4OworCQl9CisJCSN2Z3JpZDcgeworCQkJdG9wOiA2MDBweDsK
KwkJfQorCQkjdmdyaWQ4IHsKKwkJCXRvcDogNzAwcHg7CisJCQlib3JkZXI6IG5vbmU7CisJCX0K
Kwk8L3N0eWxlPgorCisJPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+CisKKzxib2R5IGlkPSJib2R5Ij4KKwkKKwk8ZGl2IGlk
PSJkaXZNYWluMSI+CisJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0MSI+PGI+ZGl2
VGV4dDE8L2I+PC9kaXY+CisJCTxzcGFuIGNsYXNzPSJteVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1
ZTsiPlRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0
IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cg
YXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdy
ZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bh
bj4KKwk8L2Rpdj4KKwkKKwk8ZGl2IGlkPSJkaXZNYWluMiI+CisJCTxkaXYgY2xhc3M9ImRpdlRl
eHQiIGlkPSJkaXZUZXh0MiI+PGI+ZGl2VGV4dDI8L2I+PC9kaXY+CisJCTxzcGFuIGNsYXNzPSJt
eVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQg
dGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2
LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBz
aG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi48L3NwYW4+CisJPC9kaXY+CisKKwk8ZGl2
IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdpb24xIj48L2Rpdj4KKwk8ZGl2IGNsYXNzPSJyZWdpb24i
IGlkPSJyZWdpb24yIj48L2Rpdj4KKwkKKwk8ZGl2IGlkPSJncmlkMSIgY2xhc3M9ImdyaWQiPjEw
MHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDIiIGNsYXNzPSJncmlkIj4yMDBweDwvZGl2PgorCTxk
aXYgaWQ9ImdyaWQzIiBjbGFzcz0iZ3JpZCI+MzAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNCIg
Y2xhc3M9ImdyaWQiPjQwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDUiIGNsYXNzPSJncmlkIj41
MDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQ2IiBjbGFzcz0iZ3JpZCI+NjAwcHg8L2Rpdj4KKwk8
ZGl2IGlkPSJncmlkNyIgY2xhc3M9ImdyaWQiPjcwMHB4PC9kaXY+CisKKwk8ZGl2IGlkPSJ2Z3Jp
ZDEiIGNsYXNzPSJ2Z3JpZCI+PC9kaXY+CisJPGRpdiBpZD0idmdyaWQyIiBjbGFzcz0idmdyaWQi
PjEwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQzIiBjbGFzcz0idmdyaWQiPjIwMHB4PC9kaXY+
CisJPGRpdiBpZD0idmdyaWQ0IiBjbGFzcz0idmdyaWQiPjMwMHB4PC9kaXY+CisJPGRpdiBpZD0i
dmdyaWQ1IiBjbGFzcz0idmdyaWQiPjQwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ2IiBjbGFz
cz0idmdyaWQiPjUwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ3IiBjbGFzcz0idmdyaWQiPjYw
MHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ4IiBjbGFzcz0idmdyaWQiPjcwMHB4PC9kaXY+CisK
Kwk8c2NyaXB0PgorCQlkZXNjcmlwdGlvbigiVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3Ag
aW4gYSBuYW1lZCBmbG93IHdpdGggZmxvYXRzIGluIHZlcnRpY2FsLXJsIG1vZGUuIikKKworCQlz
aG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKwkJc2hv
dWxkQmUoImRpdlRleHQxLm9mZnNldExlZnQiLCAiNzAwIik7CisJCXNob3VsZEJlKCJkaXZUZXh0
MS5vZmZzZXRUb3AiLCAiMjAwIik7CisKKwkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldFBhcmVu
dCIsICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRMZWZ0Iiwg
IjQwMCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0VG9wIiwgIjIwMCIpOworCisJCWlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgeworCQkJdmFyIGFsbEdyYXBoaWNFbGVtZW50cyA9IGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24sIC5kaXZUZXh0LCAuZ3JpZCwgLnZncmlkLCAu
bXlTcGFuIik7CisJCQlmb3IgKHZhciBpPTA7IGk8YWxsR3JhcGhpY0VsZW1lbnRzLmxlbmd0aDsg
aSsrKQorCQkJCWFsbEdyYXBoaWNFbGVtZW50c1tpXS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwor
CQl9CisJCQorCTwvc2NyaXB0PgorCTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdp
b24tZmxvYXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0
LW9mZnNldFRvcC1pbi1yZWdpb24tZmxvYXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMTU0YzM5ZWNlYjMz
MGU0ODlmZmRhMDE3NTcyZTMxODNlMmU3ZmJiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9h
dC5odG1sCkBAIC0wLDAgKzEsMjE2IEBACis8aHRtbD4KKzxoZWFkPgorCTxzdHlsZSB0eXBlPSJ0
ZXh0L2NzcyI+CisJCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2NyaXB0aW9u
IGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCisJCSNkZXNj
cmlwdGlvbiB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDBweDsKKwkJfQorCisJ
CSNjb25zb2xlIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogMTAwcHg7CisJCX0K
KworCQkjZGl2TWFpbjEgeworCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cxOworCQkJYm9yZGVy
OiAycHggc29saWQgYmx1ZTsKKwkJCWhlaWdodDogMTUwcHg7CisJCQltYXJnaW46IDEwcHg7CisJ
CQlwYWRkaW5nOiA1cHg7CisJCX0KKworCQkjZGl2TWFpbjIgeworCQkJYm9yZGVyOiAycHggc29s
aWQgYmx1ZTsKKwkJCWhlaWdodDogMTM1cHg7CisJCQltYXJnaW46IDVweDsKKwkJCS13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93MjsKKwkJfQorCisJCS5kaXZUZXh0IHsKKwkJCWJvcmRlcjogMXB4IHNv
bGlkIGdyZWVuOworCQkJY29sb3I6IGdyZWVuOworCQkJZm9udC1zaXplOiAxNHB4OworCQl9CisK
KwkJI2RpdlRleHQxIHsKKwkJCXdpZHRoOiAyNTBweDsKKwkJCW1hcmdpbjogMTBweDsKKwkJCXBh
ZGRpbmctbGVmdDogNXB4OworCQkJZmxvYXQ6IHJpZ2h0OworCQl9CisKKwkJI2RpdlRleHQyIHsK
KwkJCXdpZHRoOiAyMDBweDsKKwkJCWZsb2F0OiBsZWZ0OworCQkJbWFyZ2luOiAxMHB4OworCQl9
CisKKwkJI3JlZ2lvbjEgeworCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOworCQkJYm9yZGVy
OiAxcHggc29saWQgcmVkOworCQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJbGVmdDogNzVweDsK
KwkJCXRvcDogMjY0cHg7CisJCQl3aWR0aDogNDAwcHg7CisJCQloZWlnaHQ6IDE4MHB4OworCQl9
CisKKwkJI3JlZ2lvbjIgeworCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOworCQkJYm9yZGVy
OiAxcHggc29saWQgcmVkOworCQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJbGVmdDogMjc0cHg7
CisJCQl0b3A6IDI5MnB4OworCQkJd2lkdGg6IDQwMHB4OworCQkJaGVpZ2h0OiAxNTBweDsKKwkJ
fQorCisJCS5ncmlkIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRvcDogNzUwcHg7CisJ
CQl3aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDEwMHB4OworCQkJYm9yZGVyLXJpZ2h0OiAxcHgg
c29saWQgYmx1ZTsKKwkJCXRleHQtYWxpZ246IHJpZ2h0OworCQkJZm9udC1zaXplOiAxNHB4Owor
CQkJY29sb3I6IGJsdWU7CisJCX0KKworCQkudmdyaWQgeworCQkJcG9zaXRpb246IGFic29sdXRl
OworCQkJbGVmdDogOTAwcHg7CisJCQl3aWR0aDogMTAwcHg7CisJCQloZWlnaHQ6IDEwMHB4Owor
CQkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsdWU7CisJCQl0ZXh0LWFsaWduOiBib3R0b207
CisJCQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjogYmx1ZTsKKwkJfQorCisJCSNncmlkMSB7
CisJCQlsZWZ0OiAwcHg7CisJCX0KKwkJI2dyaWQyIHsKKwkJCWxlZnQ6IDEwMHB4OworCQl9CisJ
CSNncmlkMyB7CisJCQlsZWZ0OiAyMDBweDsKKwkJfQorCQkjZ3JpZDQgeworCQkJbGVmdDogMzAw
cHg7CisJCX0KKwkJI2dyaWQ1IHsKKwkJCWxlZnQ6IDQwMHB4OworCQl9CisJCSNncmlkNiB7CisJ
CQlsZWZ0OiA1MDBweDsKKwkJfQorCQkjZ3JpZDcgeworCQkJbGVmdDogNjAwcHg7CisJCX0KKwor
CQkjdmdyaWQxIHsKKwkJCXRvcDogMHB4OworCQl9CisJCSN2Z3JpZDIgeworCQkJdG9wOiAxMDBw
eDsKKwkJfQorCQkjdmdyaWQzIHsKKwkJCXRvcDogMjAwcHg7CisJCX0KKwkJI3ZncmlkNCB7CisJ
CQl0b3A6IDMwMHB4OworCQl9CisJCSN2Z3JpZDUgeworCQkJdG9wOiA0MDBweDsKKwkJfQorCQkj
dmdyaWQ2IHsKKwkJCXRvcDogNTAwcHg7CisJCX0KKwkJI3ZncmlkNyB7CisJCQl0b3A6IDYwMHB4
OworCQl9CisJCSN2Z3JpZDggeworCQkJdG9wOiA3MDBweDsKKwkJCWJvcmRlcjogbm9uZTsKKwkJ
fQorCTwvc3R5bGU+CisKKwk8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKworCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKwkJ
ZnVuY3Rpb24gd3JpdGVPZmZzZXRJbmZvKHNlbGVjdG9yKSB7CisJCQl2YXIgZGl2SXRlbXMgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTsKKwkJCQkKKwkJCWZvciAodmFyIGk9
MDsgaTxkaXZJdGVtcy5sZW5ndGg7IGkrKykgeworCQkJCXZhciBkaXZJdGVtID0gZGl2SXRlbXNb
aV07CisJCQkJdmFyIGV4aXN0aW5nSFRNTCA9IGRpdkl0ZW0uaW5uZXJIVE1MOworCQkJCXZhciBu
ZXdIVE1MID0gZXhpc3RpbmdIVE1MLnJlcGxhY2UoIiNvZmZUb3AjIiwgZGl2SXRlbS5vZmZzZXRU
b3ApOworCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNvZmZMZWZ0IyIsIGRpdkl0ZW0u
b2Zmc2V0TGVmdCk7CisJCQkJaWYgKGRpdkl0ZW0ub2Zmc2V0UGFyZW50KQorCQkJCQluZXdIVE1M
ID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmUGFyZW50IyIsIGRpdkl0ZW0ub2Zmc2V0UGFyZW50LnRh
Z05hbWUgKyAiKCIgKyBkaXZJdGVtLm9mZnNldFBhcmVudC5pZCArICIpIik7CisJCQkJZWxzZQor
CQkJCQluZXdIVE1MID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmUGFyZW50IyIsICJudWxsIik7CisJ
CQkJZGl2SXRlbS5pbm5lckhUTUwgPSBuZXdIVE1MOworCQkJfQorCQl9CisJCWZ1bmN0aW9uIG15
T25Mb2FkKCkgeworCQkJd3JpdGVPZmZzZXRJbmZvKCIuZGl2VGV4dCIpOworCQl9CisJPC9zY3Jp
cHQ+Cis8L2hlYWQ+CisKKzxib2R5IGlkPSJib2R5IiBvbmxvYWQgPSAibXlPbkxvYWQoKTsiPgor
CQorCTxkaXYgaWQ9ImRpdk1haW4xIj4KKwkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9ImRpdlRl
eHQxIj5UaGlzIGlzIDxiPmRpdlRleHQxPC9iPiAoZmxvYXQgcmlnaHQpOjxici8+LSBvZmZzZXRQ
YXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29mZkxl
ZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9kaXY+CisJCTxzcGFu
IGNsYXNzPSJteVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRoaXMgdGV4dCBzaG91bGQgZmxv
dyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUg
Z3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRo
aXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3Vs
ZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KKwk8L2Rpdj4KKwkKKwk8ZGl2IGlk
PSJkaXZNYWluMiI+CisJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0MiI+VGhpcyBp
cyA8Yj5kaXZUZXh0MjwvYj4gKGZsb2F0IGxlZnQpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+
I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxici8+
LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9kaXY+CisJCTxzcGFuIGNsYXNzPSJteVNw
YW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhl
IGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBU
aGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91
bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3Vu
ZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KKwk8L2Rpdj4KKworCTxkaXYgY2xhc3M9InJlZ2lvbiIg
aWQ9InJlZ2lvbjEiPjwvZGl2PgorCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjIiPjwv
ZGl2PgorCQorCTxkaXYgaWQ9ImdyaWQxIiBjbGFzcz0iZ3JpZCI+MTAwcHg8L2Rpdj4KKwk8ZGl2
IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDMiIGNs
YXNzPSJncmlkIj4zMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQ0IiBjbGFzcz0iZ3JpZCI+NDAw
cHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNSIgY2xhc3M9ImdyaWQiPjUwMHB4PC9kaXY+CisJPGRp
diBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQ3IiBj
bGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KKworCTxkaXYgaWQ9InZncmlkMSIgY2xhc3M9InZncmlk
Ij48L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDIiIGNsYXNzPSJ2Z3JpZCI+MTAwcHg8L2Rpdj4KKwk8
ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+MjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3Jp
ZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDUiIGNsYXNzPSJ2
Z3JpZCI+NDAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDYiIGNsYXNzPSJ2Z3JpZCI+NTAwcHg8
L2Rpdj4KKwk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNzPSJ2Z3JpZCI+NjAwcHg8L2Rpdj4KKwk8ZGl2
IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAwcHg8L2Rpdj4KKworCTxzY3JpcHQ+CisJCWRl
c2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5hbWVkIGZsb3cg
d2l0aCBmbG9hdHMuIikKKworCQlzaG91bGRCZSgiZGl2VGV4dDEub2Zmc2V0UGFyZW50IiwgImRv
Y3VtZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldExlZnQiLCAiMjAwIik7
CisJCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRUb3AiLCAiMzAwIik7CisKKwkJc2hvdWxkQmUo
ImRpdlRleHQyLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisJCXNob3VsZEJlKCJk
aXZUZXh0Mi5vZmZzZXRMZWZ0IiwgIjMwMCIpOworCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0
VG9wIiwgIjUwMCIpOworCisJCWlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworCQkJdmFyIGFsbEdy
YXBoaWNFbGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24sIC5kaXZU
ZXh0LCAuZ3JpZCwgLnZncmlkLCAubXlTcGFuIik7CisJCQlmb3IgKHZhciBpPTA7IGk8YWxsR3Jh
cGhpY0VsZW1lbnRzLmxlbmd0aDsgaSsrKQorCQkJCWFsbEdyYXBoaWNFbGVtZW50c1tpXS5zdHls
ZS5kaXNwbGF5ID0gIm5vbmUiOworCQl9CisJCQorCTwvc2NyaXB0PgorCTxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRM
ZWZ0LW9mZnNldFRvcC1pbmxpbmVzLXJlZ2lvbi1pbi1lbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbmxpbmVz
LXJlZ2lvbi1pbi1lbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNGUxMWQzODVmNDI3
YmI0YWM2MTVhYmIzMzgyZjI0NmY3Nzk1MjM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMtcmVnaW9u
LWluLWVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTkgQEAKK1Rlc3Qgb2Zmc2V0TGVm
dCBhbmQgb2Zmc2V0VG9wIGZvciBibG9ja3MgYW5kIGlubGluZXMgaW4gYSBuYW1lZCBmbG93IHdo
ZW4gdGhlIHJlZ2lvbidzIG9mZnNldFBhcmVudCBpcyBOT1QgdGhlIGJvZHkuCitUaGlzIHRlc3Qg
YWxzbyBjb3ZlcnMgYm9yZGVycy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCitQQVNT
IGRpdlRleHQub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgZGl2VGV4dC5vZmZz
ZXRMZWZ0IGlzIDMwMAorUEFTUyBkaXZUZXh0Lm9mZnNldFRvcCBpcyAzNTAKK1BBU1MgcmVnaW9u
UGFyZW50Lm9mZnNldExlZnQgaXMgMjAwCitQQVNTIHJlZ2lvbi5vZmZzZXRQYXJlbnQgaXMgcmVn
aW9uUGFyZW50CitQQVNTIHJlZ2lvbi5vZmZzZXRMZWZ0IGlzIDMwCitQQVNTIHJlZ2lvbi5vZmZz
ZXRUb3AgaXMgMjAKK1BBU1MgaW5saW5lRWxlbWVudC5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQu
Ym9keQorUEFTUyBpbmxpbmVFbGVtZW50Lm9mZnNldExlZnQgaXMgMzAwCitQQVNTIGlubGluZUVs
ZW1lbnQub2Zmc2V0VG9wIGlzIDU1MAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbmxpbmVzLXJlZ2lvbi1pbi1lbGVtZW50Lmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5s
aW5lcy1yZWdpb24taW4tZWxlbWVudC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYzYjhlYjk1NDBhNjYyNWYw
ZTYyYjZiZmUxYjU3MzdjNWQ2ZTY3YzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4t
ZWxlbWVudC5odG1sCkBAIC0wLDAgKzEsMTg2IEBACis8aHRtbD4KKzxoZWFkPgorCTxzdHlsZSB0
eXBlPSJ0ZXh0L2NzcyI+CisJCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2Ny
aXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCisJ
CSNkZXNjcmlwdGlvbiB7CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQl0b3A6IDBweDsKKwkJ
fQorCisJCWJvZHkgeworCQkJYm9yZGVyOiAxMHB4IGRvdHRlZCBncmF5OworCQkJcGFkZGluZzog
MTBweDsKKwkJfQorCisJCSNjb25zb2xlIHsKKwkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwkJCXRv
cDogMTEwcHg7CisJCX0KKworCQkjcmVnaW9uUGFyZW50IHsKKwkJCWJvcmRlcjogMXB4IHNvbGlk
IGJsdWU7CisJCQlib3JkZXItbGVmdDogMTBweCBkb3R0ZWQgYmx1ZTsKKwkJCWJvcmRlci10b3A6
IDEwcHggZG90dGVkIGJsdWU7CisJCQl3aWR0aDogNjAwcHg7CisJCQloZWlnaHQ6IDM3MHB4Owor
CQkJcG9zaXRpb246IHJlbGF0aXZlOworCQkJbGVmdDogMTQ3cHg7CisJCQl0b3A6IDI2MHB4Owor
CQkJbWFyZ2luLWxlZnQ6IDI1cHg7CisJCX0KKworCQkucmVnaW9uMSB7CisJCQktd2Via2l0LWZs
b3ctZnJvbTogZmxvdzE7CisJCQlib3JkZXI6IDEwcHggZG90dGVkIHJlZDsKKwkJCW1hcmdpbjog
MjBweDsKKwkJCW1hcmdpbi1sZWZ0OiAzMHB4OworCQkJd2lkdGg6IDQwNHB4OworCQkJaGVpZ2h0
OiAzMjBweDsKKwkJfQorCisJCSNkaXZNYWluIHsKKwkJCW1hcmdpbjogNXB4OworCQkJYm9yZGVy
OiA1cHggc29saWQgYmx1ZTsKKwkJCWhlaWdodDogMzA1cHg7CisJCQktd2Via2l0LWZsb3ctaW50
bzogZmxvdzE7CisJCX0KKworCQkjZGl2VGV4dCB7CisJCQlib3JkZXI6IDFweCBzb2xpZCBncmVl
bjsKKwkJCWNvbG9yOiBncmVlbjsKKwkJCWZvbnQtc2l6ZTogMTRweDsKKwkJCXdpZHRoOiAzMDBw
eDsKKwkJCWhlaWdodDogMTgwcHg7CisJCQlwb3NpdGlvbjogcmVsYXRpdmU7CisJCQlsZWZ0OiA0
MHB4OworCQkJdG9wOiAxMnB4OworCQl9CisKKwkJLmdyaWQgeworCQkJcG9zaXRpb246IGFic29s
dXRlOworCQkJdG9wOiA2ODBweDsKKwkJCXdpZHRoOiAxMDBweDsKKwkJCWhlaWdodDogMTAwcHg7
CisJCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibHVlOworCQkJdGV4dC1hbGlnbjogcmlnaHQ7
CisJCQlmb250LXNpemU6IDE0cHg7CisJCQljb2xvcjogYmx1ZTsKKwkJfQorCisJCS52Z3JpZCB7
CisJCQlwb3NpdGlvbjogYWJzb2x1dGU7CisJCQlsZWZ0OiA5MDBweDsKKwkJCXdpZHRoOiAxMDBw
eDsKKwkJCWhlaWdodDogMTAwcHg7CisJCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgYmx1ZTsK
KwkJCXRleHQtYWxpZ246IGJvdHRvbTsKKwkJCWZvbnQtc2l6ZTogMTRweDsKKwkJCWNvbG9yOiBi
bHVlOworCQl9CisKKwkJI2dyaWQxIHsKKwkJCWxlZnQ6IDBweDsKKwkJfQorCQkjZ3JpZDIgewor
CQkJbGVmdDogMTAwcHg7CisJCX0KKwkJI2dyaWQzIHsKKwkJCWxlZnQ6IDIwMHB4OworCQl9CisJ
CSNncmlkNCB7CisJCQlsZWZ0OiAzMDBweDsKKwkJfQorCQkjZ3JpZDUgeworCQkJbGVmdDogNDAw
cHg7CisJCX0KKwkJI2dyaWQ2IHsKKwkJCWxlZnQ6IDUwMHB4OworCQl9CisJCSNncmlkNyB7CisJ
CQlsZWZ0OiA2MDBweDsKKwkJfQorCisJCSN2Z3JpZDEgeworCQkJdG9wOiAwcHg7CisJCX0KKwkJ
I3ZncmlkMiB7CisJCQl0b3A6IDEwMHB4OworCQl9CisJCSN2Z3JpZDMgeworCQkJdG9wOiAyMDBw
eDsKKwkJfQorCQkjdmdyaWQ0IHsKKwkJCXRvcDogMzAwcHg7CisJCX0KKwkJI3ZncmlkNSB7CisJ
CQl0b3A6IDQwMHB4OworCQl9CisJCSN2Z3JpZDYgeworCQkJdG9wOiA1MDBweDsKKwkJfQorCQkj
dmdyaWQ3IHsKKwkJCXRvcDogNjAwcHg7CisJCX0KKwkJI3ZncmlkOCB7CisJCQl0b3A6IDcwMHB4
OworCQkJYm9yZGVyOiBub25lOworCQl9CisJPC9zdHlsZT4KKworCTxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9k
eSBpZD0iYm9keSI+CisJPGRpdiBpZD0iZGl2TWFpbiI+CisJCTxkaXYgaWQ9ImRpdlRleHQiPjxi
PmRpdlRleHQ8L2I+PGJyLz48L2Rpdj4KKwkJPHNwYW4gY2xhc3M9ImlubGluZUVsZW1lbnRzIiBp
ZD0iaW5saW5lRWxlbWVudCIgc3R5bGU9ImNvbG9yOiAjMDAwMDk5OyBwb3NpdGlvbjogcmVsYXRp
dmU7IHRvcDogMzBweDsgbGVmdDogNDBweDsiPklubGluZSBlbGVtZW50IGluIGRpdk1haW48L3Nw
YW4+CisJPC9kaXY+CisKKwk8ZGl2IGlkPSJyZWdpb25QYXJlbnQiPjxzcGFuIHN0eWxlPSJmbG9h
dDogcmlnaHQ7IG1hcmdpbjogMTBweDsgY29sb3I6IGJsdWU7Ij5UaGlzIGlzIHJlZ2lvblBhcmVu
dDwvc3Bhbj4KKwkJPGRpdiBjbGFzcz0icmVnaW9uMSIgaWQ9InJlZ2lvbiI+PC9kaXY+CisJPC9k
aXY+CisKKwk8ZGl2IGlkPSJncmlkMSIgY2xhc3M9ImdyaWQiPjEwMHB4PC9kaXY+CisJPGRpdiBp
ZD0iZ3JpZDIiIGNsYXNzPSJncmlkIj4yMDBweDwvZGl2PgorCTxkaXYgaWQ9ImdyaWQzIiBjbGFz
cz0iZ3JpZCI+MzAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNCIgY2xhc3M9ImdyaWQiPjQwMHB4
PC9kaXY+CisJPGRpdiBpZD0iZ3JpZDUiIGNsYXNzPSJncmlkIj41MDBweDwvZGl2PgorCTxkaXYg
aWQ9ImdyaWQ2IiBjbGFzcz0iZ3JpZCI+NjAwcHg8L2Rpdj4KKwk8ZGl2IGlkPSJncmlkNyIgY2xh
c3M9ImdyaWQiPjcwMHB4PC9kaXY+CisKKwk8ZGl2IGlkPSJ2Z3JpZDEiIGNsYXNzPSJ2Z3JpZCI+
PC9kaXY+CisJPGRpdiBpZD0idmdyaWQyIiBjbGFzcz0idmdyaWQiPjEwMHB4PC9kaXY+CisJPGRp
diBpZD0idmdyaWQzIiBjbGFzcz0idmdyaWQiPjIwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ0
IiBjbGFzcz0idmdyaWQiPjMwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ1IiBjbGFzcz0idmdy
aWQiPjQwMHB4PC9kaXY+CisJPGRpdiBpZD0idmdyaWQ2IiBjbGFzcz0idmdyaWQiPjUwMHB4PC9k
aXY+CisJPGRpdiBpZD0idmdyaWQ3IiBjbGFzcz0idmdyaWQiPjYwMHB4PC9kaXY+CisJPGRpdiBp
ZD0idmdyaWQ4IiBjbGFzcz0idmdyaWQiPjcwMHB4PC9kaXY+CisKKwk8c2NyaXB0PgorCQlkZXNj
cmlwdGlvbigiVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgZm9yIGJsb2NrcyBhbmQgaW5s
aW5lcyBpbiBhIG5hbWVkIGZsb3cgd2hlbiB0aGUgcmVnaW9uJ3Mgb2Zmc2V0UGFyZW50IGlzIE5P
VCB0aGUgYm9keS48YnIvPlRoaXMgdGVzdCBhbHNvIGNvdmVycyBib3JkZXJzLiIpCisKKwkJc2hv
dWxkQmUoImRpdlRleHQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKwkJc2hvdWxk
QmUoImRpdlRleHQub2Zmc2V0TGVmdCIsICIzMDAiKTsKKwkJc2hvdWxkQmUoImRpdlRleHQub2Zm
c2V0VG9wIiwgIjM1MCIpOworCisJCXNob3VsZEJlKCJyZWdpb25QYXJlbnQub2Zmc2V0TGVmdCIs
ICIyMDAiKTsKKworCQlzaG91bGRCZSgicmVnaW9uLm9mZnNldFBhcmVudCIsICJyZWdpb25QYXJl
bnQiKTsKKwkJc2hvdWxkQmUoInJlZ2lvbi5vZmZzZXRMZWZ0IiwgIjMwIik7CisJCXNob3VsZEJl
KCJyZWdpb24ub2Zmc2V0VG9wIiwgIjIwIik7CisKKwkJc2hvdWxkQmUoImlubGluZUVsZW1lbnQu
b2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKwkJc2hvdWxkQmUoImlubGluZUVsZW1l
bnQub2Zmc2V0TGVmdCIsICIzMDAiKTsKKwkJc2hvdWxkQmUoImlubGluZUVsZW1lbnQub2Zmc2V0
VG9wIiwgIjU1MCIpOworCisJCWlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworCQkJdmFyIGFsbEdy
YXBoaWNFbGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5yZWdpb24xLCAjZGl2
TWFpbiwgI2RpdlRleHQsIC5ncmlkLCAudmdyaWQsICNyZWdpb25QYXJlbnQsIC5pbmxpbmVFbGVt
ZW50cywgI3JlZ2lvbkluZm8iKTsKKwkJCWZvciAodmFyIGk9MDsgaTxhbGxHcmFwaGljRWxlbWVu
dHMubGVuZ3RoOyBpKyspCisJCQkJYWxsR3JhcGhpY0VsZW1lbnRzW2ldLnN0eWxlLmRpc3BsYXkg
PSAibm9uZSI7CisJCX0KKwkJCisJPC9zY3JpcHQ+CisJPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1ib2R5
LWluLWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYTFmZjNhZTkwZjNhZWMzYmRiN2RjMzBmMTM2ZTg3ODc1YmFmMDgyNwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQYXJlbnQtYm9k
eS1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorVGVzdCBvZmZz
ZXRQYXJlbnQgZm9yIGJvZHkgaW4gYSBuYW1lZCBmbG93LgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyBhcnRpY2xlLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQ
QVNTIGNoYXB0ZXIub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKK1BBU1MgY2hhcHRlci5v
ZmZzZXRQYXJlbnQgaXMgYXJ0aWNsZQorUEFTUyB0ZENoaWxkLm9mZnNldFBhcmVudCBpcyB0ZAor
UEFTUyB0ZENoaWxkLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5CitQQVNTIGRvY3VtZW50
LmJvZHkub2Zmc2V0UGFyZW50IGlzIG51bGwKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vb2Zmc2V0UGFyZW50LWJvZHktaW4tZmxvdy10aHJlYWQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjdlNTk0YjM3YjI5MDRjZjgzYzYyMTY0OTRmYTcwZGIyYzczMGYwMWIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zmc2V0
UGFyZW50LWJvZHktaW4tZmxvdy10aHJlYWQuaHRtbApAQCAtMCwwICsxLDUzIEBACis8IWRvY3R5
cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAg
ICA8c3R5bGU+CisKKyAgICAgICAgI3JlZ2lvbiB7CisgICAgICAgICAgICAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdzsKKyAgICAgICAgfQorCisgICAgPC9zdHlsZT4KKworICAgIDxib2R5PgorICAg
ICAgICA8c2NyaXB0PgorICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0UGFyZW50
IGZvciBib2R5IGluIGEgbmFtZWQgZmxvdy4iKQorCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5
LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOworICAgICAgICAgICAgCisgICAgICAgICAg
ICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhcnRpY2xlKTsKKyAgICAgICAgICAgIHNob3Vs
ZEJlKCJhcnRpY2xlLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisKKyAgICAgICAg
ICAgIHZhciBjaGFwdGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAg
ICAgICBhcnRpY2xlLmFwcGVuZENoaWxkKGNoYXB0ZXIpOworICAgICAgICAgICAgc2hvdWxkQmUo
ImNoYXB0ZXIub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKworICAgICAgICAgICAg
YXJ0aWNsZS5zdHlsZS5wb3NpdGlvbiA9ICJyZWxhdGl2ZSI7CisgICAgICAgICAgICBzaG91bGRC
ZSgiY2hhcHRlci5vZmZzZXRQYXJlbnQiLCAiYXJ0aWNsZSIpOworCisgICAgICAgICAgICB2YXIg
dGFibGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpOworICAgICAgICAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0YWJsZSk7CisKKyAgICAgICAgICAgIHZhciB0ZCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7CisgICAgICAgICAgICB0YWJsZS5hcHBlbmRDaGls
ZCh0ZCk7CisKKyAgICAgICAgICAgIHZhciB0ZENoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CisgICAgICAgICAgICB0ZC5hcHBlbmRDaGlsZCh0ZENoaWxkKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlKCJ0ZENoaWxkLm9mZnNldFBhcmVudCIsICJ0ZCIpOworCisgICAgICAgICAg
ICB0ZENoaWxkLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOworICAgICAgICAgICAgc2hv
dWxkQmUoInRkQ2hpbGQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKworICAgICAg
ICAgICAgc2hvdWxkQmVOdWxsKCJkb2N1bWVudC5ib2R5Lm9mZnNldFBhcmVudCIpOworCisgICAg
ICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gbnVsbDsKKyAgICAg
ICAgPC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKworICAgICAgICA8ZGl2IGlkPSJyZWdpb24iLz4KKyAg
ICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vb2Zmc2V0UGFyZW50LWluLWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjZmMzlkMGE1MGVjZGQ3NDE1NzNmYjJjNDRkZmFlMzk5ZjBlZmRk
YmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb2Zm
c2V0UGFyZW50LWluLWZsb3ctdGhyZWFkLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitU
ZXN0IG9mZnNldFBhcmVudCBmb3IgZWxlbWVudHMgaW5zaWRlIGEgbmFtZWQgZmxvdy4KKworT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYXJ0aWNsZS5vZmZzZXRQYXJlbnQgaXMg
ZG9jdW1lbnQuYm9keQorUEFTUyBjaGFwdGVyLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5
CitQQVNTIGNoYXB0ZXIub2Zmc2V0UGFyZW50IGlzIGFydGljbGUKK1BBU1MgdGRDaGlsZC5vZmZz
ZXRQYXJlbnQgaXMgdGQKK1BBU1MgdGRDaGlsZC5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9k
eQorUEFTUyBkb2N1bWVudC5ib2R5Lm9mZnNldFBhcmVudCBpcyBudWxsCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL29mZnNldFBhcmVudC1pbi1mbG93LXRo
cmVhZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxOTliNDI2YjY1ODFmZWFlZmUwZTgwMGM3NDg4ODU1MmIx
NDRiYjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
b2Zmc2V0UGFyZW50LWluLWZsb3ctdGhyZWFkLmh0bWwKQEAgLTAsMCArMSwzOSBAQAorPCFkb2N0
eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAg
IDxib2R5PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3Qg
b2Zmc2V0UGFyZW50IGZvciBlbGVtZW50cyBpbnNpZGUgYSBuYW1lZCBmbG93LiIpCisKKyAgICAg
ICAgICAgIHZhciBhcnRpY2xlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAg
ICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFydGljbGUpOworICAgICAgICAgICAg
YXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9ICJmbG93IjsKKyAgICAgICAgICAgIHNob3Vs
ZEJlKCJhcnRpY2xlLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7CisKKyAgICAgICAg
ICAgIHZhciBjaGFwdGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAg
ICAgICBhcnRpY2xlLmFwcGVuZENoaWxkKGNoYXB0ZXIpOworICAgICAgICAgICAgc2hvdWxkQmUo
ImNoYXB0ZXIub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKworICAgICAgICAgICAg
YXJ0aWNsZS5zdHlsZS5wb3NpdGlvbiA9ICJyZWxhdGl2ZSI7CisgICAgICAgICAgICBzaG91bGRC
ZSgiY2hhcHRlci5vZmZzZXRQYXJlbnQiLCAiYXJ0aWNsZSIpOworCisgICAgICAgICAgICB2YXIg
dGFibGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpOworICAgICAgICAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0YWJsZSk7CisKKyAgICAgICAgICAgIHZhciB0ZCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7CisgICAgICAgICAgICB0YWJsZS5hcHBlbmRDaGls
ZCh0ZCk7CisKKyAgICAgICAgICAgIHZhciB0ZENoaWxkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CisgICAgICAgICAgICB0ZC5hcHBlbmRDaGlsZCh0ZENoaWxkKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlKCJ0ZENoaWxkLm9mZnNldFBhcmVudCIsICJ0ZCIpOworCisgICAgICAgICAg
ICB0ZENoaWxkLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOworICAgICAgICAgICAgc2hv
dWxkQmUoInRkQ2hpbGQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKKworICAgICAg
ICAgICAgc2hvdWxkQmVOdWxsKCJkb2N1bWVudC5ib2R5Lm9mZnNldFBhcmVudCIpOworICAgICAg
ICA8L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40YjgyODdkMmRhNGRjZDdlOWRlZWM5MDE5NzlkYzhlY2EyNWI0OWM1
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJz
ZXQtYnJlYWstZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorY29udGVudCB3aXRoIGJyZWFr
LWFmdGVyOiBhbHdheXM7CisKK2ZpdCB2cyBmaXQKK2VtcHR5IHZzIGVtcHR5CitlbXB0eSB2cyBl
bXB0eQorUEFTUworQnVnIDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9w
ZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVh
awpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJl
YWstbmVzdGVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9v
dmVyc2V0LWJyZWFrLW5lc3RlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGI4Mjg3ZDJkYTRk
Y2Q3ZTlkZWVjOTAxOTc5ZGM4ZWNhMjViNDljNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLW5lc3RlZC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw3IEBACitjb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czsKKworZml0
IHZzIGZpdAorZW1wdHkgdnMgZW1wdHkKK2VtcHR5IHZzIGVtcHR5CitQQVNTCitCdWcgOTI0OTcg
LSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJseSBj
b21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay1uZXN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLW5lc3RlZC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmQ5ODY1ZmQwYzFlMzM3ZDJhOTc1MTVkMWQwMWRkNDQ1NmQ4ZGVkY2QKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay1u
ZXN0ZWQuaHRtbApAQCAtMCwwICsxLDUzIEBACisKKzxodG1sPgorICAgIDxoZWFkPgorICAgICAg
ICA8dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0
eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwv
dGl0bGU+CisgICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAgICAuY29u
dGVudCB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgLmNvbnRlbnQgcDpmaXJzdC1jaGlsZCB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1y
ZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKKyAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9t
OiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVhayovCisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIC5jb250YWluZXIgeworICAgICAgICAgICAgICAgIC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgICAgIHdpZHRoOjI1MHB4OworICAgICAg
ICAgICAgICAgIGhlaWdodDoxMjBweDsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xp
ZCAjNDQ0OworICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKKyAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlzcGxheTogbm9uZTsg
fQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAgICA8
ZGl2IGNsYXNzPSJjb250ZW50Ij48ZGl2PjxkaXY+PHA+Y29udGVudCB3aXRoIGJyZWFrLWFmdGVy
OiBhbHdheXM7PC9wPjwvZGl2PjwvZGl2PjwvZGl2PgorCisgICAgICAgIDxkaXYgY2xhc3M9ImNv
bnRhaW5lciIgaWQ9InIxIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4cGxhbmF0aW9uIGdv
ZXMgaGVyZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMiI+PC9k
aXY+IDxkaXYgaWQ9Im92ZXJzZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KKyAgICAg
ICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0
MyI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+CisKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgaWYod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICB2YXIgcjEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25PdmVyc2V0OworICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIikuaW5uZXJIVE1MID0g
cjEgKyAiIHZzIGZpdCI7CisgICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicjIiKS53ZWJraXRSZWdpb25PdmVyc2V0OworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIm92ZXJzZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZzIGVtcHR5IjsKKyAg
ICAgICAgICAgIHZhciByMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMyIpLndlYmtpdFJl
Z2lvbk92ZXJzZXQ7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNl
dDMiKS5pbm5lckhUTUwgPSByMyArICIgdnMgZW1wdHkiOworICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5jbGFzc05hbWUgPSAocjEgPT0gImZpdCIgJiYgcjIgPT0gImVtcHR5IiAmJiByMyA9PSAi
ZW1wdHkiKSA/ICJwYXNzIiA6ICJmYWlsIjsKKyAgICAgICAgPC9zY3JpcHQ+CisKKyAgICAgICAg
PGRpdiBpZD0icGFzcyI+UEFTUzwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJmYWlsIj5GQUlMPC9k
aXY+CisKKyAgICAgICAgPHA+PGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTkyNDk3Ij5CdWcgOTI0OTc8L2E+IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3Zl
cnNldCBwcm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJl
Z2lvbiBicmVhazwvcD4KKworICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGluZy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay13
aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE1OGYwZTM5YzQxNjUwZTNlY2Nm
ODM1NDU2N2U3MGMzODkxNDI1MDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsOSBAQAorY29udGVudCB3aXRoIGJyZWFrLWFmdGVyOiBhbHdheXM7CisKKzJuZCBw
CisKK2ZpdCB2cyBmaXQKK2ZpdCB2cyBmaXQKK2VtcHR5IHZzIGVtcHR5CitQQVNTCitCdWcgOTI0
OTcgLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJs
eSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vb3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmcuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLXdpdGgtc2li
bGluZy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhkZjM4YTkxNjUyODAwYWNkOWY2Yzk4ZDI1ZjY4YjBiMzRk
YmNiNTkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
b3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmcuaHRtbApAQCAtMCwwICsxLDUyIEBACis8IWRvY3R5
cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8dGl0bGU+QnVnIDkyNDk3IC0g
W0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29t
cHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwvdGl0bGU+CisgICAgICAgIDxzdHls
ZSB0eXBlPSJ0ZXh0L2NzcyI+CisgICAgICAgICAgICAuY29udGVudCB7CisgICAgICAgICAgICAg
ICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1j
b2xvcjogI2RkZDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmNvbnRlbnQgcCB7Cisg
ICAgICAgICAgICAgICAgLXdlYmtpdC1yZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKKyAgICAg
ICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhl
IGZvcmNlZCBicmVhayovCisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5jb250YWluZXIg
eworICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAg
ICAgIHdpZHRoOjI1MHB4OworICAgICAgICAgICAgICAgIGhlaWdodDoxMjBweDsKKyAgICAgICAg
ICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDQ0OworICAgICAgICAgICAgICAgIG1hcmdpbi10
b3A6IDFlbTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNz
ICNmYWlsIHsgZGlzcGxheTogbm9uZTsgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+PHA+Y29udGVudCB3aXRo
IGJyZWFrLWFmdGVyOiBhbHdheXM7PC9wPjxwPjJuZCBwPC9wPjwvZGl2PgorCisgICAgICAgIDxk
aXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9InIxIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4
cGxhbmF0aW9uIGdvZXMgaGVyZTwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIi
IGlkPSJyMiI+PC9kaXY+IDxkaXYgaWQ9Im92ZXJzZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8
L2Rpdj4KKyAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2
IGlkPSJvdmVyc2V0MyI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+CisKKyAgICAgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgorICAgICAgICAgICAgaWYod2luZG93LnRlc3RS
dW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAg
ICAgICB2YXIgcjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25P
dmVyc2V0OworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIiku
aW5uZXJIVE1MID0gcjEgKyAiIHZzIGZpdCI7CisgICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicjIiKS53ZWJraXRSZWdpb25PdmVyc2V0OworICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZz
IGZpdCI7CisgICAgICAgICAgICB2YXIgcjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjMi
KS53ZWJraXRSZWdpb25PdmVyc2V0OworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoIm92ZXJzZXQzIikuaW5uZXJIVE1MID0gcjMgKyAiIHZzIGVtcHR5IjsKKyAgICAgICAgICAg
IGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lID0gKHIxID09ICJmaXQiICYmIHIyID09ICJmaXQiICYm
IHIzID09ICJlbXB0eSIpID8gInBhc3MiIDogImZhaWwiOworICAgICAgICA8L3NjcmlwdD4KKwor
ICAgICAgICA8ZGl2IGlkPSJwYXNzIj5QQVNTPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9ImZhaWwi
PkZBSUw8L2Rpdj4KKworICAgICAgICA8cD48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTI0OTciPkJ1ZyA5MjQ5NzwvYT4gLSBbQ1NTIFJlZ2lvbnNdIFJl
Z2lvbiBvdmVyc2V0IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJseSBjb21wdXRlZCB3aGVuIHRoZXJl
IGlzIGEgcmVnaW9uIGJyZWFrPC9wPgorCisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL292ZXJzZXQtYnJlYWsuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uN2Q0MTBjMGE2ZjJkMzZhYzIwM2U3NDNlMGQwODY2ZjVmNDU4MzcwNQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS9vdmVyc2V0LWJyZWFrLmh0bWwK
QEAgLTAsMCArMSw1MyBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPHRpdGxlPkJ1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJzZXQgcHJv
cGVydHkgaXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdpb24gYnJl
YWs8L3RpdGxlPgorICAgICAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorICAgICAgICAgICAg
LmNvbnRlbnQgeworICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworICAg
ICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIC5jb250ZW50IHA6Zmlyc3QtY2hpbGQgeworICAgICAgICAgICAgICAgIC13ZWJr
aXQtcmVnaW9uLWJyZWFrLWFmdGVyOiBhbHdheXM7CisgICAgICAgICAgICAgICAgbWFyZ2luLWJv
dHRvbTogNGVtOyAvKnNob3VsZG4ndCBzcGlsbCBvdmVyIHRoZSBmb3JjZWQgYnJlYWsqLworICAg
ICAgICAgICAgfQorCisgICAgICAgICAgICAuY29udGFpbmVyIHsKKyAgICAgICAgICAgICAgICAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzsKKyAgICAgICAgICAgICAgICB3aWR0aDoyNTBweDsKKyAg
ICAgICAgICAgICAgICBoZWlnaHQ6MTIwcHg7CisgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHgg
c29saWQgIzQ0NDsKKyAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIC5mYWlsICNwYXNzLCAucGFzcyAjZmFpbCB7IGRpc3BsYXk6IG5v
bmU7IH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keT4KKyAgICAg
ICAgPGRpdiBjbGFzcz0iY29udGVudCI+PHA+Y29udGVudCB3aXRoIGJyZWFrLWFmdGVyOiBhbHdh
eXM7PC9wPjwvZGl2PgorCisgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9InIxIj48
L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4cGxhbmF0aW9uIGdvZXMgaGVyZTwvZGl2PgorICAg
ICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMiI+PC9kaXY+IDxkaXYgaWQ9Im92ZXJz
ZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KKyAgICAgICAgPGRpdiBjbGFzcz0iY29u
dGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0MyI+ZXhwbGFuYXRpb24gZ29l
cyBoZXJlPC9kaXY+CisKKyAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgor
ICAgICAgICAgICAgaWYod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICB2YXIgcjEgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25PdmVyc2V0OworICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIikuaW5uZXJIVE1MID0gcjEgKyAiIHZzIGZpdCI7Cisg
ICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjIiKS53ZWJraXRS
ZWdpb25PdmVyc2V0OworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJz
ZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZzIGVtcHR5IjsKKyAgICAgICAgICAgIHZhciByMyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMyIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7CisgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDMiKS5pbm5lckhUTUwgPSBy
MyArICIgdnMgZW1wdHkiOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSAo
cjEgPT0gImZpdCIgJiYgcjIgPT0gImVtcHR5IiAmJiByMyA9PSAiZW1wdHkiKSA/ICJwYXNzIiA6
ICJmYWlsIjsKKyAgICAgICAgPC9zY3JpcHQ+CisKKyAgICAgICAgPGRpdiBpZD0icGFzcyI+UEFT
UzwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJmYWlsIj5GQUlMPC9kaXY+CisKKyAgICAgICAgPHA+
PGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkyNDk3Ij5C
dWcgOTI0OTc8L2E+IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0eSBpcyBu
b3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwvcD4KKwor
ICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS9yZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFzaC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vcmVnaW9uLXJhbmdlLWZvci1ib3gtY3Jhc2gtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmZlNjcyMTlmNzVkMWQ4MzYyZDg3OWVkNDM0MjhjMzg0YmQyNzU3
MjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vcmVn
aW9uLXJhbmdlLWZvci1ib3gtY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorQnVn
IDc0NzgxOiBDcmFzaCBpbiBSZW5kZXJGbG93VGhyZWFkOjpnZXRSZWdpb25SYW5nZUZvckJveAor
CitUaGlzIHRlc3QgUEFTU0VTIGlmIGl0IGRvZXMgbm90IENSQVNIIG9yIEFTU0VSVC4KKworQQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3JlZ2lvbi1yYW5nZS1m
b3ItYm94LWNyYXNoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vcmVnaW9u
LXJhbmdlLWZvci1ib3gtY3Jhc2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNmU0NGJkODlhYTQ4ZDZmMmUx
NGY4Zjc5ZjVjZTkzMTcwY2Y1NDIzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL3JlZ2lvbi1yYW5nZS1mb3ItYm94LWNyYXNoLmh0bWwKQEAgLTAsMCAr
MSw0MiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHN0
eWxlPgorICAgICAgICAgICAgI2VsMCB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZy
b206IGE7CisgICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihjKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICNlbDIgeworICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRv
OiBhOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgICAgICA8c2NyaXB0Pgor
ICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworCisgICAgICAgICAgICBmdW5jdGlvbiBjcmFzaCgpIHsKKyAg
ICAgICAgICAgICAgICBlbDAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAg
ICAgICAgICAgICBlbDAuc2V0QXR0cmlidXRlKCdpZCcsICdlbDAnKTsKKyAgICAgICAgICAgICAg
ICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsMCk7CisgICAgICAgICAgICAgICAgZWwxID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5hcHBlbmRDaGlsZChlbDEpOworICAgICAgICAgICAgICAgIGVsMiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAgICAgICAgIGVsMi5zZXRBdHRyaWJ1dGUoJ2lk
JywgJ2VsMicpOworICAgICAgICAgICAgICAgIGVsMS5hcHBlbmRDaGlsZChlbDIpOworICAgICAg
ICAgICAgICAgIGVsMi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnQScpKTsK
KyAgICAgICAgICAgICAgICBlbDMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpOwor
ICAgICAgICAgICAgICAgIGVsMy5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2VsMycpOworICAgICAgICAg
ICAgICAgIGVsMi5hcHBlbmRDaGlsZChlbDMpOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuc3R5bGUuem9vbT0yOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdz
ZWxlY3RhbGwnKTsKKyAgICAgICAgICAgICAgICBlbDIuc3R5bGUuZGlzcGxheT0ndGFibGUtaGVh
ZGVyLWdyb3VwJzsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnpvb209MTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHdpbmRvdy5vbmxvYWQ9Y3Jhc2gKKyAgICAgICAg
PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8cD4gQnVnIDxhIGhy
ZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDc4MSI+NzQ3ODE8
L2E+OiBDcmFzaCBpbiBSZW5kZXJGbG93VGhyZWFkOjpnZXRSZWdpb25SYW5nZUZvckJveDwvcD4K
KyAgICAgICAgPHA+IFRoaXMgdGVzdCBQQVNTRVMgaWYgaXQgZG9lcyBub3QgQ1JBU0ggb3IgQVNT
RVJULjwvcD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1jcmFzaC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctY29sbGVjdGlvbi1jcmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjNmMWE2M2M3ZTgw
Yzk3NjBkOGU4MWJiM2NhZGNjMzNmMTcxYzMwMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNo
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2guaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0
aW9uLWNyYXNoLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWUwZTc1ZWI5OGNhZGRiMmU5MzY1NTJmMjhiZTNk
YzcxYWY5NzgxZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9j
c3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLmh0bWwKQEAgLTAsMCArMSwz
MSBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHN0eWxl
PgorICAgICAgICAgICAgI2NvbnRlbnQgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgfQorICAg
ICAgICAgICAgI2NvbnRhaW5lciB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMTAw
cHg7IGhlaWdodDogMTAwcHg7fQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAgICA8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPGRpdiBpZD0iY29udGVudCI+PC9kaXY+CisgICAgICAgIDxk
aXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
ICAgICAgICB2YXIgbmFtZWRGbG93Q29sbGVjdGlvbiA9IGRvY3VtZW50LndlYmtpdEdldE5hbWVk
Rmxvd3MoKTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiY29udGVudCIpKTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGls
ZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIikpOworICAgICAgICAKKyAgICAg
ICAgLy8gRm9yY2UgYSByZS1sYXlvdXQgZXZlbnQsIHdoaWNoIGZvcmNlcyB0aGUgZGVsZXRpb24g
b2YgdGhlIHVuZGVybHlpbmcgTmFtZWRGbG93LgorICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNl
dFRvcDsKKyAgICAgICAgCisgICAgICAgIHZhciBuYW1lZEZsb3cgPSBuYW1lZEZsb3dDb2xsZWN0
aW9uLmZsb3c7CisgICAgICAgIGlmIChuYW1lZEZsb3cubmFtZSA9PSAiZmxvdyIpCisgICAgICAg
ICAgICBkb2N1bWVudC5ib2R5LmlubmVyVGV4dCA9ICJQQVNTIjsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSAiRkFJTCI7CisgICAgICAgIDwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4gCisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHkt
Z2V0dGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Vi
a2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1lbXB0eS1nZXR0ZXJzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41NzVhMTRiYmJkYjg0MjQ0ODI5MTM1OWI1MzA0YTFiNzY5NjlmOTRiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBA
QAorVGVzdCBmb3IgWzExODU2MV0gTmFtZWRGbG93Q29sbGVjdGlvbiBnZXR0ZXJzIHNob3VsZCBm
b2xsb3cgdGhlIHNhbWUgcGF0dGVybiBhcyBIVE1MQ29sbGVjdGlvbgorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworUEFTUyBuYW1lZEZsb3dDb2xsZWN0aW9uWzBdIGlzIHVuZGVmaW5l
ZC4KK1BBU1MgbmFtZWRGbG93Q29sbGVjdGlvblsnZmxvdyddIGlzIHVuZGVmaW5lZC4KK1BBU1Mg
bmFtZWRGbG93Q29sbGVjdGlvbi5pdGVtKDApIGlzIG51bGwKK1BBU1MgbmFtZWRGbG93Q29sbGVj
dGlvbi5uYW1lZEl0ZW0oJ2Zsb3cnKSBpcyBudWxsCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWNv
bGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZiY2E3ZmMwZGEyYWUyOWI2
MjdlNWI2MzY2OTAxNzMxZTY2ZDIxYjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1lbXB0eS1nZXR0
ZXJzLmh0bWwKQEAgLTAsMCArMSwxNiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8
Ym9keT4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBkZXNjcmlwdGlv
bigiVGVzdCBmb3IgPGEgaHJlZj0naHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTExODU2MSc+WzExODU2MV0gTmFtZWRGbG93Q29sbGVjdGlvbiBnZXR0ZXJzIHNob3VsZCBm
b2xsb3cgdGhlIHNhbWUgcGF0dGVybiBhcyBIVE1MQ29sbGVjdGlvbjwvYT4iKTsKKworICAgICAg
ICAgICAgdmFyIG5hbWVkRmxvd0NvbGxlY3Rpb24gPSBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZs
b3dzKCk7CisgICAgICAgICAgICBzaG91bGRCZVVuZGVmaW5lZCgibmFtZWRGbG93Q29sbGVjdGlv
blswXSIpOworICAgICAgICAgICAgc2hvdWxkQmVVbmRlZmluZWQoIm5hbWVkRmxvd0NvbGxlY3Rp
b25bJ2Zsb3cnXSIpOworICAgICAgICAgICAgc2hvdWxkQmVOdWxsKCJuYW1lZEZsb3dDb2xsZWN0
aW9uLml0ZW0oMCkiKTsKKyAgICAgICAgICAgIHNob3VsZEJlTnVsbCgibmFtZWRGbG93Q29sbGVj
dGlvbi5uYW1lZEl0ZW0oJ2Zsb3cnKSIpOworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PiAK
KyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWNlNDU2MGU2MTYwM2I3ZWRmYzQ4ZWViMDI1YmE2ZjVh
Mjk1ZGNjYgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIw
IEBACitUZXN0cyBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGludGVyZmFjZQorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworVGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGxl
bmd0aCBwcm9wZXJ0eQorUEFTUyBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3Ro
IGlzIDAKK1BBU1MgcmVnaW9uMS5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICdmbG93MSc7IGRvY3Vt
ZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGggaXMgMQorUEFTUyByZWdpb24yLnN0eWxl
LndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cyJzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygp
Lmxlbmd0aCBpcyAyCitQQVNTIHJlZ2lvbjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnJzsgZG9j
dW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAxCitQQVNTIHJlZ2lvbjIuc3R5
bGUud2Via2l0Rmxvd0Zyb20gPSAnJzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxl
bmd0aCBpcyAwCitUZXN0IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gaW5kZXggZ2V0dGVyCitQ
QVNTIChkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKClbMF0ubmFtZSA9PSAnZmxvdzEnICYm
IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVsxXS5uYW1lID09ICdmbG93MicpICAgICAg
ICAgfHwgKGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKVswXS5uYW1lID09ICdmbG93Micg
JiYgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpWzFdLm5hbWUgPT0gJ2Zsb3cxJykgaXMg
dHJ1ZQorVGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIG5hbWUgZ2V0dGVyCitQQVNTIGRv
Y3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5mbG93MS5uYW1lIGlzICJmbG93MSIKK1BBU1Mg
ZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmZsb3cyLm5hbWUgaXMgImZsb3cyIgorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1jb2xs
ZWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctY29sbGVjdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMzYTBlNmEyNjVkODhmM2QxZGM2YTJh
ODhhY2E5NjVlNzg2ZjNhOTEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi5odG1sCkBAIC0wLDAgKzEs
NDcgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgICBk
ZXNjcmlwdGlvbigiVGVzdHMgV2ViS2l0TmFtZWRGbG93Q29sbGVjdGlvbiBpbnRlcmZhY2UiKQor
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisKKyAgICB2YXIgcmVnaW9uMSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwor
ICAgIHZhciByZWdpb24yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisKKyAgICBk
ZWJ1ZygiVGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGxlbmd0aCBwcm9wZXJ0eSIpOwor
CisgICAgc2hvdWxkQmUoImRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGgiLCAi
MCIpOworCisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24xKTsKKyAgICBzaG91
bGRCZSgicmVnaW9uMS5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICdmbG93MSc7IGRvY3VtZW50Lndl
YmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGgiLCAiMSIpOworCisgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChyZWdpb24yKTsKKyAgICBzaG91bGRCZSgicmVnaW9uMi5zdHlsZS53ZWJraXRG
bG93RnJvbSA9ICdmbG93Mic7IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5sZW5ndGgi
LCAiMiIpOworCisgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb24xKTsKKyAgICBz
aG91bGRCZSgicmVnaW9uMS5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICcnOyBkb2N1bWVudC53ZWJr
aXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIiwgIjEiKTsKKworICAgIGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQocmVnaW9uMik7CisgICAgc2hvdWxkQmUoInJlZ2lvbjIuc3R5bGUud2Via2l0Rmxv
d0Zyb20gPSAnJzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCIsICIwIik7
CisKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjEpOworICAgIGRvY3VtZW50
LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMik7CisgICAgcmVnaW9uMS5zdHlsZS53ZWJraXRGbG93
RnJvbSA9ICdmbG93MSc7CisgICAgcmVnaW9uMi5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICdmbG93
Mic7CisKKyAgICBkZWJ1ZygiVGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGluZGV4IGdl
dHRlciIpOworICAgIHNob3VsZEJlVHJ1ZSgiKGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3Mo
KVswXS5uYW1lID09ICdmbG93MScgJiYgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpWzFd
Lm5hbWUgPT0gJ2Zsb3cyJykgXAorICAgICAgICB8fCAoZG9jdW1lbnQud2Via2l0R2V0TmFtZWRG
bG93cygpWzBdLm5hbWUgPT0gJ2Zsb3cyJyAmJiBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dz
KClbMV0ubmFtZSA9PSAnZmxvdzEnKSIpOworCisgICAgZGVidWcoIlRlc3QgV2ViS2l0TmFtZWRG
bG93Q29sbGVjdGlvbiBuYW1lIGdldHRlciIpOworICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
ZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmZsb3cxLm5hbWUiLCAiZmxvdzEiKTsKKyAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5m
bG93Mi5uYW1lIiwgImZsb3cyIik7CisKKyAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJl
Z2lvbjEpOworICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocmVnaW9uMik7Cis8L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZl
bnQtYWRkLXRvLWZsb3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRiMDFkM2ZjOTQ0NThmMjFm
Mzk0NWJmMDRiYTY0MTI5OWE2MjgwMzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3ctZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKK1Rlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZl
bnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisgRmxvdyBjb250ZW50CitQQVNTIGV2
ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAi
YXJ0aWNsZSIKK1BBU1MgZXZlbnRDb3VudCBpcyAyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWFkZC10by1mbG93Lmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRk
LXRvLWZsb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ODQyNDMzMDdlODFkY2FkZmY1MTFjMjU4NzEwMzc0
ZWY5NTk3NjVmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWFkZC10by1mbG93Lmh0bWwKQEAgLTAsMCArMSw3
NyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIu
anMiPjwvc2NyaXB0PgorPHN0eWxlPgorI2FydGljbGUgeworICAgIC13ZWJraXQtZmxvdy1pbnRv
OiBhcnRpY2xlOworICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOworfQorI3JlZ2lvbl8xIHsK
KyAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKKyAgICBvdmVyZmxvdzpoaWRkZW47
CisgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgdmVydGljYWwtYWxpZ246dG9wOworICAg
IG1hcmdpbjoxMHB4OworfQorLmJsb2NrIHsKKyAgIGRpc3BsYXk6YmxvY2s7Cit9CisjcmVnaW9u
XzEsICNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4OyBi
b3JkZXI6IDFweCBzb2xpZCByZWQ7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBp
ZD0iZGVzY3JpcHRpb24iIGNsYXNzPSJibG9jayI+PC9kaXY+Cis8ZGl2IGlkPSJhcnRpY2xlIj4K
KyAgICA8ZGl2PgorICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBw
eDsgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2Pgor
Cis8ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+CisK
KzxkaXYgaWQ9ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAg
ZGVzY3JpcHRpb24oIlRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQiKQorICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAg
ICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIHdpbmRvdy5qc1Rl
c3RJc0FzeW5jID0gdHJ1ZTsKKyAgICBmdW5jdGlvbiBmbG93Q29udGVudChyZWdpb24sIGZsb3dO
YW1lKSB7CisgICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocmVnaW9uKTsK
KyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgIH0KKworICAg
IHZhciBldmVudENvdW50ID0gMDsKKyAgICBmdW5jdGlvbiBmaW5pc2hUZXN0KCkgeworICAgICAg
ICBzaG91bGRCZSgiZXZlbnRDb3VudCIsICIyIik7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIp
OworICAgICAgICAKKyAgICAgICAgaWYgKCsrZXZlbnRDb3VudCA+IDEpIHsKKyAgICAgICAgICAg
IC8vIHRoaXMgc2hvdWxkIGJlIHJlYWNoZWQgYWZ0ZXIgcmVnaW9uXzIgaXMgYWRkZWQgdG8gZmxv
dworICAgICAgICAgICAgZmluaXNoVGVzdCgpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICB9CisgICAgICAgIAorICAgICAgICBmbG93Q29udGVudCgicmVnaW9uXzIiLCAiYXJ0aWNsZSIp
OyAvLyB0aGlzIHdpbGwgdHJpZ2dlciBhIG5ldyByb3VuZCBvZiBldmVudHMgZHVlIHRvIGxheW91
dAorICAgIH0KKworICAgIGZ1bmN0aW9uIHN0YXJ0VGVzdCgpIHsKKyAgICAgICAgdmFyIGZsb3cg
PSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisgICAgICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5l
cigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAg
ICAgICAgCisgICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRl
bnQoInJlZ2lvbl8xIiwgImFydGljbGUiKTsKKyAgICB9CisgICAgd2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctZXZlbnQtYXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWF1dG8taGVpZ2h0LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi41NWY3NTkzY2ZmYjFkODI2ZjQ3ZDZkOGNmZDYwY2I1NGE2M2RjYjM5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtp
dC1uYW1lZC1mbG93LWV2ZW50LWF1dG8taGVpZ2h0LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEy
IEBACitUZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBmb3IgcmVnaW9ucyB3aXRo
IGhlaWdodDphdXRvCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitGbG93aW5nIGNv
bnRlbnQgaW50byByZWdpb25zLi4uCitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xl
IgorUEFTUyBldmVudEZpcmVkQ291bnQgaXMgMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hdXRv
LWhlaWdodC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyZTYyOTdmODM0MzI0Nzg1MTViM2RiMDM2MGRmZDJl
N2I0MGMxNDYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQuaHRtbApAQCAtMCwwICsxLDg5
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYt
OCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxz
dHlsZT4KKyAgICAjYXJ0aWNsZSB7CisgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xl
OworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgfQorICAgICNyZWdpb25f
MSwgI3JlZ2lvbl8yIHsKKyAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7Cisg
ICAgICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Cisg
ICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKKyAgICAgICAgbWFyZ2luOjEwcHg7CisgICAgICAg
IGhlaWdodDphdXRvOworICAgICAgICB3aWR0aDoyMDBweDsKKyAgICAgICAgYm9yZGVyOiAxcHgg
c29saWQgcmVkOworICAgICAgICBwYWRkaW5nOiA1cHg7CisgICAgfQorICAgIC5jb250ZW50IHsK
KyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47CisgICAgICAgIGJvcmRlcjogM3B4IGRh
c2hlZCBibHVlOworICAgIH0KKyAgICAjcGFydDEgeworICAgICAgICBoZWlnaHQ6IDE4MHB4Owor
ICAgIH0KKyAgICAjcGFydDIgeworICAgICAgICAtd2Via2l0LXJlZ2lvbi1icmVhay1iZWZvcmU6
IGFsd2F5czsKKyAgICAgICAgaGVpZ2h0OiAxNjBweDsKKyAgICB9Cis8L3N0eWxlPgorPC9oZWFk
PgorPGJvZHk+CisgICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgIDxkaXY+CisgICAgICAg
ICAgICA8ZGl2IGlkPSJwYXJ0MSIgY2xhc3M9ImNvbnRlbnQiPjwvZGl2PgorICAgICAgICAgICAg
PGRpdiBpZD0icGFydDIiIGNsYXNzPSJjb250ZW50Ij48L2Rpdj4KKyAgICAgICAgPC9kaXY+Cisg
ICAgPC9kaXY+CisKKyAgICA8ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+CisgICAgPGRpdiBpZD0i
cmVnaW9uXzIiPjwvZGl2PgorCisgICAgPHNjcmlwdD4KKworICAgICAgICBkZXNjcmlwdGlvbigi
VGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQgZm9yIHJlZ2lvbnMgd2l0aCBoZWln
aHQ6YXV0byIpOworCisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRV
bnRpbERvbmUoKTsKKyAgICAgICAgfQorICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7CisgICAgICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7CisgICAgICAgICAg
ICB2YXIgcmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7CisgICAg
ICAgICAgICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAg
ICAgIHJlZ2lvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgICAg
ICAgICAgcmVnaW9uLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAgIH0K
KworICAgICAgICB2YXIgZXZlbnRGaXJlZENvdW50ID0gMDsKKyAgICAgICAgZnVuY3Rpb24gZmlu
aXNoVGVzdCgpIHsKKyAgICAgICAgICAgIHNob3VsZEJlKCJldmVudEZpcmVkQ291bnQiLCAiMSIp
OworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKworICAgICAgICBmdW5j
dGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChldmVudCkgeworICAgICAgICAJKytldmVudEZpcmVk
Q291bnQ7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnRhcmdldC5u
YW1lIiwgImFydGljbGUiKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgLy8gd2FpdCBhbmQg
bWFrZSBzdXJlIG5vIG90aGVyIGV2ZW50cyBhcnJpdmUKKyAgICAgICAgICAgIHNldFRpbWVvdXQo
ImZpbmlzaFRlc3QoKSIsIDIwMCk7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBzdGFy
dFRlc3QoKSB7ICAgIAorICAgICAgICAgICAgdmFyIGZsb3dUaHJlYWQgPSBnZXRGbG93QnlOYW1l
KCJhcnRpY2xlIik7CisgICAgICAgICAgICBmbG93VGhyZWFkLmFkZEV2ZW50TGlzdGVuZXIoIndl
YmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7CisgICAgICAg
ICAgICAKKyAgICAgICAgICAgIGRlYnVnKCJGbG93aW5nIGNvbnRlbnQgaW50byByZWdpb25zLi4u
Iik7CisgICAgICAgICAgICBmbG93Q29udGVudCgiYXJ0aWNsZSIpOworICAgICAgICB9CisKKyAg
ICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOworICAgIDwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
ZXZlbnQtY3Jhc2gtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY0ZDk0OWEzMzQ4YWRmNjY1ZjBk
YWYzODAzY2E1YjM5ZTEyOTljMWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtY3Jhc2gtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsOSBAQAorVGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGlzIG5vIGNyYXNoIG9y
IGFzc2VydC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtY3Jhc2guaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC1jcmFzaC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1MmI4ZjVhMWQxYzZkOWFmZGI2NzgwZDFlZWJlNzYx
ZWI1NmYwOWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtY3Jhc2guaHRtbApAQCAtMCwwICsxLDYzIEBACis8
IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0
PSJ1dGYtOCI+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c3R5bGU+CisgICAgICAgIGJvZHksIGh0bWwg
eworICAgICAgICAgICAgd2lkdGg6IDUwMHB4OworICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDsK
KyAgICAgICAgfQorICAgICAgICAjY29udGVudCB7CisgICAgICAgICAgICB3aWR0aDogMTAwJTsK
KyAgICAgICAgICAgIGhlaWdodDogMTAwJTsKKyAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRv
OiBmbG93OworICAgICAgICB9CisgICAgICAgICNyZWdpb24geworICAgICAgICAgICAgd2lkdGg6
IDEwMCU7CisgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7CisgICAgICAgICAgICAtd2Via2l0LWZs
b3ctZnJvbTogZmxvdzsKKyAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4K
KyAgICA8Ym9keT4KKyAgICAgICAgPGRpdiBpZD0iY29udGVudCI+CisgICAgICAgICAgICBIZWxs
byBjcmFzaCEKKyAgICAgICAgPC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbiI+CisgICAg
ICAgIDwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICBkZXNjcmlwdGlvbigiVGhlIHRl
c3QgcGFzc2VzIGlmIHRoZXJlIGlzIG5vIGNyYXNoIG9yIGFzc2VydC4iKTsKKyAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICB9CisK
KyAgICAgICAgZnVuY3Rpb24gZHVtbXlIYW5kbGVyIChldnQpIHsKKyAgICAgICAgICAgIGV2dC50
YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIGR1
bW15SGFuZGxlcik7CisgICAgICAgICAgICBkZWJ1ZygiVGhpcyBsaW5lIHNob3VsZCBub3QgYXBw
ZWFyISIpOworICAgICAgICB9CisKKyAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgIHZhciBuYW1lZEZsb3dzID0gZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygp
OworICAgICAgICAgICAgbmFtZWRGbG93c1siZmxvdyJdLmFkZEV2ZW50TGlzdGVuZXIoIndlYmtp
dHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBkdW1teUhhbmRsZXIpOworICAgICAgICAgICAgdmFyIGNv
bnRlbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOworICAgICAgICAgICAg
dmFyIHJlZ2lvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKTsKKyAgICAgICAg
ICAgIGNvbnRlbnQuc3R5bGUuaGVpZ2h0ID0gIjYwMHB4IjsKKworICAgICAgICAgICAgLy8gU2No
ZWR1bGUgYSByZWdpb25vdmVyc2V0Y2hhbmdlIGV2ZW50LgorICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5vZmZzZXRUb3A7CisKKyAgICAgICAgICAgIC8vIFRyYW5zaXRpb24gdGhlIGZsb3cgdG8g
dGhlICJOVUxMIiBzdGF0ZS4KKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQo
Y29udGVudCk7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbik7
CisKKyAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5v
dGlmeURvbmUoKTsKKyAgICAgICAgICAgIH0sMCkKKyAgICAgICAgfSwgMCk7CisgICAgICAgIDwv
c2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2M3OTMzOWJhOGNiNTk2NjBmMmIyNmM1
YWI2ZGZjMjBlYjU2M2ViMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwxMSBAQAorVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudAorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKyAKK0Zsb3cgY29udGVudAorUEFTUyBldmVudC50YXJnZXQubmFtZSBp
cyAiYXJ0aWNsZSIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9ucy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtbm8tcmVnaW9ucy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uODIwYmQ5NWE2NzI1NWIwN2U1ZDU4NDgxYjQ1NWQxNmYyOWRh
ZDk2YgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDE1IEBACitUZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGJlaW5nIGRpc3BhdGNoZWQgd2hlbiB0
aGUgcmVnaW9uIGNoYWluIGlzIHJlbW92ZWQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK0Zsb3cgY29udGVudAorUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKK1Jl
bW92aW5nIHJlZ2lvbiAxCitSZW1vdmluZyByZWdpb24gMgorUEFTUyBldmVudC50YXJnZXQubmFt
ZSBpcyAiYXJ0aWNsZSIKK1BBU1MgZXZlbnRDb3VudCBpcyAyCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC1uby1yZWdpb25zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTM1OTZmYTVlY2ZlOWE5OTEyZTFmZDZkMTEx
MWY3ZjRjYjBlNDYxNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLmh0bWwKQEAgLTAsMCAr
MSw4NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8c3R5bGU+CisjYXJ0aWNsZSB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Cisg
ICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Cit9CisjcmVnaW9uXzEsICNyZWdpb25fMnsKKyAg
ICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKKyAgICBvdmVyZmxvdzpoaWRkZW47Cisg
ICAgZGlzcGxheTppbmxpbmUtYmxvY2s7CisgICAgdmVydGljYWwtYWxpZ246dG9wOworICAgIG1h
cmdpbjoxMHB4OworfQorLmJsb2NrIHsKKyAgIGRpc3BsYXk6YmxvY2s7Cit9CisjcmVnaW9uXzEs
ICNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4O30KKzwv
c3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImFydGljbGUiPgorICAgIDxkaXY+Cisg
ICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIwMHB4OyBiYWNrZ3JvdW5k
LWNvbG9yOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9InJl
Z2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnRhaW5lcjIiPgorICAgIDxkaXYgaWQ9InJlZ2lv
bl8yIj48L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBy
ZWdpb25PdmVyc2V0Q2hhbmdlIGJlaW5nIGRpc3BhdGNoZWQgd2hlbiB0aGUgcmVnaW9uIGNoYWlu
IGlzIHJlbW92ZWQiKTsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgp
OworICAgIH0KKworICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICBmdW5jdGlv
biBmbG93Q29udGVudChmbG93TmFtZSkgeworICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0g
Zmxvd05hbWU7CisgICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIi
KTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgIH0KKwor
ICAgIGZ1bmN0aW9uIGZpbmlzaFRlc3QoKSB7CisgICAgICAgIHNob3VsZEJlKCJldmVudENvdW50
IiwgIjIiKTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgfQorCisgICAgdmFyIGV2ZW50
Q291bnQgPSAwOworICAgIGZ1bmN0aW9uIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNs
ZSIpOworICAgICAgICBpZiAoKytldmVudENvdW50ID4gMSkgeworICAgICAgICAgICBldmVudC50
YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJl
Z2lvbk92ZXJzZXRDaGFuZ2VkKTsKKyAgICAgICAgICAgZmluaXNoVGVzdCgpOworICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uIDEi
KTsKKyAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsK
KyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICJuby1hcnRpY2xlIjsKKyAgICAgICAg
ZGVidWcoIlJlbW92aW5nIHJlZ2lvbiAyIik7CisgICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICJu
by1hcnRpY2xlIjsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzdGFydFRlc3QoKSB7CisgICAgICAg
IHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOworICAgICAgICBmbG93LmFkZEV2
ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hh
bmdlZCk7CisKKyAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOworICAgICAgICBmbG93Q29u
dGVudCgiYXJ0aWNsZSIpOworICAgIH0KKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIHN0YXJ0VGVzdCk7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdp
b24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OGIyOTQ2OGU1NmI1OGZlYmJmMGM4MDU2ZDVjMmM5YzYzZGU4MDY3NAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC1yZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMyBAQAorVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQgZm9yIHJlZ2lv
bnMgaW5zaWRlIGZsZXhib3hlcworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworRmxv
d2luZyBjb250ZW50IGludG8gcmVnaW9ucy4uLgorUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAi
YXJ0aWNsZSIKK0VuZ2FnaW5nIGZsZXhib3guLi4KK1BBU1MgZXZlbnRGaXJlZENvdW50IGlzIDEK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
ZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtbm8tb3ZlcnNldC1jaGFuZ2UuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4t
ZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE1OTQwNDM5NTQ5ZGJi
OTM0ZDI1YjY5YTE5MzUyNTM3ZGNhNDk5NzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZs
ZXhib3gtbm8tb3ZlcnNldC1jaGFuZ2UuaHRtbApAQCAtMCwwICsxLDExNSBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgI2Fy
dGljbGUgeworICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKKyAgICAgICAgYm9y
ZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAgICAjcmVnaW9uXzEsICNyZWdpb25fMiB7
CisgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOworICAgICAgICBvdmVyZmxv
dzpoaWRkZW47CisgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgICAgICB2ZXJ0aWNh
bC1hbGlnbjp0b3A7CisgICAgICAgIG1hcmdpbjoxMHB4OworICAgICAgICBoZWlnaHQ6MTkwcHg7
CisgICAgICAgIHdpZHRoOjIwMHB4OworICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7Cisg
ICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7CisgICAg
ICAgIC13ZWJraXQtZmxleC1iYXNpczogMTAwJTsKKyAgICB9CisgICAgI3JlZ2lvbl8yIHsKKyAg
ICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAzMCU7CisgICAgfQorICAgIC5jb250ZW50IHsKKyAg
ICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47CisgICAgICAgIGJvcmRlcjogM3B4IGRhc2hl
ZCBibHVlOworICAgICAgICBtYXJnaW46IDVweDsKKyAgICB9CisgICAgI3BhcnQxIHsKKyAgICAg
ICAgaGVpZ2h0OiAxNDBweDsKKyAgICB9CisgICAgI3BhcnQyIHsKKyAgICAgICAgaGVpZ2h0OiAx
NjBweDsKKyAgICB9CisgICAgI2ZsZXhib3ggeworICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBn
cmVlbjsKKyAgICAgICAgbWFyZ2luOiA1cHg7CisgICAgfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxi
b2R5PgorICAgIDxkaXYgaWQ9ImFydGljbGUiPgorICAgICAgICA8ZGl2PgorICAgICAgICAgICAg
PGRpdiBpZD0icGFydDEiIGNsYXNzPSJjb250ZW50Ij48L2Rpdj4KKyAgICAgICAgICAgIDxkaXYg
aWQ9InBhcnQyIiBjbGFzcz0iY29udGVudCI+PC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwv
ZGl2PgorCisgICAgPGRpdiBpZD0iZmxleGJveCI+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8x
Ij48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorICAgIDwvZGl2Pgor
CisgICAgPHNjcmlwdD4KKworICAgICAgICBkZXNjcmlwdGlvbigiVGVzdHMgdGhlIHJlZ2lvbk92
ZXJzZXRDaGFuZ2UgZXZlbnQgZm9yIHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcyIpOworCisgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAg
ICAgfQorICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgICAgIGZ1bmN0
aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7CisgICAgICAgICAgICB2YXIgcmVnaW9uID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7CisgICAgICAgICAgICByZWdpb24uc3R5
bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICAgICAgICAgIHJlZ2lvbiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgICAgICAgICAgcmVnaW9uLnN0eWxl
LndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAgIH0KKworICAgICAgICB2YXIgZXZl
bnRGaXJlZENvdW50ID0gMDsKKyAgICAgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKKyAgICAg
ICAgICAgIHNob3VsZEJlKCJldmVudEZpcmVkQ291bnQiLCAiMSIpOworICAgICAgICAgICAgZmlu
aXNoSlNUZXN0KCk7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBFbmFibGVGbGV4Ym94
KCkgeworICAgICAgICAgICAgZGVidWcoIkVuZ2FnaW5nIGZsZXhib3guLi4iKQorICAgICAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZsZXhib3giKS5zdHlsZS5kaXNwbGF5ID0gIi13
ZWJraXQtZmxleCI7CisKKyAgICAgICAgICAgIC8vIHdhaXQgYW5kIG1ha2Ugc3VyZSBubyBvdGhl
ciBldmVudHMgYXJyaXZlCisgICAgICAgICAgICBzZXRUaW1lb3V0KCJmaW5pc2hUZXN0KCkiLCAy
MDApOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5nZWQo
ZXZlbnQpIHsKKyAgICAgICAgCSsrZXZlbnRGaXJlZENvdW50OworICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7CisKKyAgICAg
ICAgICAgIC8vIGFjdGl2YXRlIHRoZSBmbGV4Ym94CisgICAgICAgICAgICBpZiAoZXZlbnRGaXJl
ZENvdW50ID09IDEpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgICAgICAgICAgICAgIEVuYWJsZUZsZXhib3goKTsKKyAgICAgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoIkVuYWJsZUZsZXhib3goKSIsIDEwMDAp
OworCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICB9CisK
KyAgICAgICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgeyAgICAKKyAgICAgICAgICAgIHZhciBmbG93
VGhyZWFkID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOworICAgICAgICAgICAgZmxvd1RocmVh
ZC5hZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3Zl
cnNldENoYW5nZWQpOworICAgICAgICAgICAgCisgICAgICAgICAgICBkZWJ1ZygiRmxvd2luZyBj
b250ZW50IGludG8gcmVnaW9ucy4uLiIpOworICAgICAgICAgICAgZmxvd0NvbnRlbnQoImFydGlj
bGUiKTsKKyAgICAgICAgfQorCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2Fk
Iiwgc3RhcnRUZXN0KTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJl
Z2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
ODE4ZGU5ZjQyNmNiNTgwZDliNGU5ZDM2ZTQwMWJkMDVkYTUxYmYzCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQtY2hhbmdlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDE0IEBACitUZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBmb3IgcmVnaW9ucyBp
bnNpZGUgZmxleGJveGVzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitGbG93aW5n
IGNvbnRlbnQgaW50byByZWdpb25zLi4uCitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRp
Y2xlIgorRW5nYWdpbmcgZmxleGJveC4uLgorUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0
aWNsZSIKK1BBU1MgZXZlbnRGaXJlZENvdW50IGlzIDIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gt
b3ZlcnNldC1jaGFuZ2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJr
aXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1vdmVyc2V0LWNoYW5nZS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjQzMTJhNTk1MjU3ZGE5Mzk2ODdjYjY5MjZjY2U5MWU2ZjA3YTE2YmEKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UuaHRtbApAQCAt
MCwwICsxLDExOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgY2hh
cnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9z
Y3JpcHQ+Cis8c3R5bGU+CisgICAgI2FydGljbGUgeworICAgICAgICAtd2Via2l0LWZsb3ctaW50
bzogYXJ0aWNsZTsKKyAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgIH0KKyAg
ICAjcmVnaW9uXzEsICNyZWdpb25fMiB7CisgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19h
cnRpY2xlOworICAgICAgICBvdmVyZmxvdzpoaWRkZW47CisgICAgICAgIGRpc3BsYXk6aW5saW5l
LWJsb2NrOworICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7CisgICAgICAgIG1hcmdpbjoxMHB4
OworICAgICAgICBoZWlnaHQ6YXV0bzsKKyAgICAgICAgd2lkdGg6MjAwcHg7CisgICAgICAgIGJv
cmRlcjogMXB4IHNvbGlkIHJlZDsKKyAgICAgICAgcGFkZGluZzogNXB4OworICAgICAgICAtd2Vi
a2l0LWZsZXgtZ3JvdzogMTsKKyAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAxMDAlOworICAg
IH0KKyAgICAjcmVnaW9uXzIgeworICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDcwJTsKKyAg
ICB9CisgICAgLmNvbnRlbnQgeworICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAg
ICAgICAgYm9yZGVyOiAzcHggZGFzaGVkIGJsdWU7CisgICAgICAgIG1hcmdpbjogNXB4OworICAg
IH0KKyAgICAjcGFydDEgeworICAgICAgICBoZWlnaHQ6IDcwcHg7CisgICAgfQorICAgICNwYXJ0
MiB7CisgICAgICAgIGhlaWdodDogODBweDsKKyAgICB9CisgICAgI2ZsZXhib3ggeworICAgICAg
ICBib3JkZXI6IDJweCBzb2xpZCBncmVlbjsKKyAgICAgICAgbWFyZ2luOiA1cHg7CisgICAgICAg
IHdpZHRoOiAyNDBweDsKKyAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgLXdlYmtpdC1m
bGV4LWRpcmVjdGlvbjogY29sdW1uOworICAgIH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4K
KyAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICAgICAgPGRpdj4KKyAgICAgICAgICAgIDxkaXYg
aWQ9InBhcnQxIiBjbGFzcz0iY29udGVudCI+PC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJw
YXJ0MiIgY2xhc3M9ImNvbnRlbnQiPjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4K
KworICAgIDxkaXYgaWQ9ImZsZXhib3giPgorICAgICAgICA8ZGl2IGlkPSJyZWdpb25fMSI+PC9k
aXY+CisgICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KKyAgICA8L2Rpdj4KKworICAg
IDxzY3JpcHQ+CisKKyAgICAgICAgZGVzY3JpcHRpb24oIlRlc3RzIHRoZSByZWdpb25PdmVyc2V0
Q2hhbmdlIGV2ZW50IGZvciByZWdpb25zIGluc2lkZSBmbGV4Ym94ZXMiKTsKKworICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIH0K
KyAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworICAgICAgICBmdW5jdGlvbiBm
bG93Q29udGVudChmbG93TmFtZSkgeworICAgICAgICAgICAgdmFyIHJlZ2lvbiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgICAgICAgICAgcmVnaW9uLnN0eWxlLndl
YmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAgICAgICByZWdpb24gPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgICAgIHJlZ2lvbi5zdHlsZS53ZWJr
aXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICB9CisKKyAgICAgICAgdmFyIGV2ZW50Rmly
ZWRDb3VudCA9IDA7CisgICAgICAgIGZ1bmN0aW9uIGZpbmlzaFRlc3QoKSB7CisgICAgICAgICAg
ICBzaG91bGRCZSgiZXZlbnRGaXJlZENvdW50IiwgIjIiKTsKKyAgICAgICAgICAgIGZpbmlzaEpT
VGVzdCgpOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gRW5hYmxlRmxleGJveCgpIHsK
KyAgICAgICAgICAgIGRlYnVnKCJFbmdhZ2luZyBmbGV4Ym94Li4uIikKKyAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbGV4Ym94Iikuc3R5bGUuZGlzcGxheSA9ICItd2Via2l0
LWZsZXgiOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5n
ZWQoZXZlbnQpIHsKKyAgICAgICAgCSsrZXZlbnRGaXJlZENvdW50OworICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7CisKKyAg
ICAgICAgICAgIC8vIGFjdGl2YXRlIHRoZSBmbGV4Ym94CisgICAgICAgICAgICBpZiAoZXZlbnRG
aXJlZENvdW50ID09IDEpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
CisgICAgICAgICAgICAgICAgICAgIEVuYWJsZUZsZXhib3goKTsKKyAgICAgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoIkVuYWJsZUZsZXhib3goKSIsIDEw
MDApOworCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICBlbHNlIAorICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoImZpbmlzaFRlc3QoKSIsIDIw
MCk7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBzdGFydFRlc3QoKSB7ICAgIAorICAg
ICAgICAgICAgdmFyIGZsb3dUaHJlYWQgPSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisgICAg
ICAgICAgICBmbG93VGhyZWFkLmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRj
aGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGRlYnVnKCJGbG93aW5nIGNvbnRlbnQgaW50byByZWdpb25zLi4uIik7CisgICAgICAgICAgICBm
bG93Q29udGVudCgiYXJ0aWNsZSIpOworICAgICAgICB9CisKKyAgICAgICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOworICAgIDwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20tZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJl
bW92ZS1mcm9tLWRvbS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjc1OTRmOTY1NmIxNDgxOGIz
MWY4N2QxNmE1ZWVlMWYzZjMzMDg0MAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20t
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTMgQEAKK1Rlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2Ug
ZXZlbnQKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisgRmxvdyBjb250ZW50CitQQVNT
IGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgorUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBE
T00KK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCitQQVNTIGV2ZW50Q291bnQg
aXMgMgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20uaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xMTQwMGVjYTkwMWY0ZDhkMmMyNDI3ODliMDBhYTE3ZTQ2Mjk2MDNiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS5odG1sCkBAIC0wLDAgKzEsODQgQEAKKzxodG1sPgor
PGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4K
KzxzdHlsZT4KKyNhcnRpY2xlIHsKKyAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKKyAg
ICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yeworICAg
IC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOworICAgIG92ZXJmbG93OmhpZGRlbjsKKyAg
ICBkaXNwbGF5OmlubGluZS1ibG9jazsKKyAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7CisgICAgbWFy
Z2luOjEwcHg7Cit9CisuYmxvY2sgeworICAgZGlzcGxheTpibG9jazsKK30KKyNyZWdpb25fMSwg
I3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgbWFyZ2luOiA1cHg7IGJvcmRl
cjogMXB4IHNvbGlkIHJlZDt9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJk
ZXNjcmlwdGlvbiIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KKzxkaXYgaWQ9ImFydGljbGUiPgorICAg
IDxkaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIwMHB4OyBi
YWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9ImNvbnRhaW5lcjIiPgorICAgIDxkaXYg
aWQ9InJlZ2lvbl8yIj48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGlkPSJjb25zb2xlIiBjbGFzcz0i
YmxvY2siPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0cyByZWdpb25P
dmVyc2V0Q2hhbmdlIGV2ZW50IikKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGls
RG9uZSgpOworICAgIH0KKyAgICAKKyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cisg
ICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKKyAgICAgICAgdmFyIHIgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRG
bG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbl8yIik7CisgICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsK
KyAgICB9CisKKyAgICB2YXIgZXZlbnRDb3VudCA9IDA7CisgICAgZnVuY3Rpb24gZmluaXNoVGVz
dCgpIHsKKyAgICAgICAgc2hvdWxkQmUoImV2ZW50Q291bnQiLCAiMiIpOworICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0Q2hhbmdlZChl
dmVudCkgeworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnRhcmdldC5uYW1l
IiwgImFydGljbGUiKTsKKyAgICAgICAgaWYgKCsrZXZlbnRDb3VudCA+IDEpIHsKKyAgICAgICAg
ICAgZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRj
aGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7CisgICAgICAgICAgIC8vIHRoaXMgc2hvdWxk
IGJlIHJlYWNoZWQgYWZ0ZXIgcmVnaW9uXzIgaXMgcmVtb3ZlZCBmcm9tIERPTQorICAgICAgICAg
ICBmaW5pc2hUZXN0KCk7CisgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAK
KyAgICAgICAgdmFyIGMyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lcjIiKTsK
KyAgICAgICAgZGVidWcoIlJlbW92aW5nIHJlZ2lvbl8yIGZyb20gRE9NIik7CisgICAgICAgIGMy
LmlubmVySFRNTCA9ICIiOyAvLyB0aGlzIHdpbGwgdHJpZ2dlciBhIG5ldyByb3VuZCBvZiBldmVu
dHMgZHVlIHRvIGxheW91dAorICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBzdGFydFRlc3QoKSB7
CisgICAgICAgIHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOworICAgICAgICBm
bG93LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25P
dmVyc2V0Q2hhbmdlZCk7CisgICAgICAgIAorICAgICAgICBkZWJ1ZygiRmxvdyBjb250ZW50Iik7
CisgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7CisgICAgfQorICAgIHdpbmRvdy5hZGRF
dmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtp
dC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1m
cm9tLWZsb3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjllNmU0YzhlZjZkYjE4YWY1ZjRjNmZh
NzZlZWQ0YjI4NzAxZGUzOGUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVu
dAorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKyAKK0Zsb3cgY29udGVudAorUEFTUyBl
dmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKK1JlbW92aW5nIHJlZ2lvbl8yIGZyb20gZmxv
dworUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKK1BBU1MgZXZlbnRDb3VudCBp
cyAyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93Lmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMWMwNmQxZjM5ZTM5YmE3NDUxZTNkNWVlZTM4Y2VlN2QzODE0ZDJmNgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93Lmh0bWwKQEAgLTAsMCArMSw4MSBAQAorPGh0bWw+
Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0
PgorPHN0eWxlPgorI2FydGljbGUgeworICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwor
ICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Cisg
ICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7CisgICAgb3ZlcmZsb3c6aGlkZGVuOwor
ICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOworICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKKyAgICBt
YXJnaW46MTBweDsKK30KKy5ibG9jayB7CisgICBkaXNwbGF5OmJsb2NrOworfQorI3JlZ2lvbl8x
LCAjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBtYXJnaW46IDVweDsgYm9y
ZGVyOiAxcHggc29saWQgcmVkO30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9
ImRlc2NyaXB0aW9uIiBjbGFzcz0iYmxvY2siPjwvZGl2PgorPGRpdiBpZD0iYXJ0aWNsZSI+Cisg
ICAgPGRpdj4KKyAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjAwcHg7
IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKwor
PGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgorPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorCis8
ZGl2IGlkPSJjb25zb2xlIiBjbGFzcz0iYmxvY2siPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGRl
c2NyaXB0aW9uKCJUZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGV2ZW50IikKKyAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAg
ICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKyAgICAKKyAgICB3aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7CisgICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUp
IHsKKyAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsK
KyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICByID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAgICAgIHIuc3R5bGUud2Vi
a2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICB9CisKKyAgICB2YXIgZXZlbnRDb3VudCA9IDA7
CisgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKKyAgICAgICAgc2hvdWxkQmUoImV2ZW50Q291
bnQiLCAiMiIpOworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9CisKKyAgICBmdW5jdGlv
biByZWdpb25PdmVyc2V0Q2hhbmdlZChldmVudCkgeworICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKKyAgICAgICAgaWYgKCsrZXZl
bnRDb3VudCA+IDEpIHsKKyAgICAgICAgICAgIC8vIHRoaXMgc2hvdWxkIGJlIHJlYWNoZWQgYWZ0
ZXIgcmVnaW9uXzIgaXMgcmVtb3ZlZCBmcm9tIERPTQorICAgICAgICAgICBzZXRUaW1lb3V0KCJm
aW5pc2hUZXN0KCkiLCAyMDApOworICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAg
ICAgCisgICAgICAgIHZhciByMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIp
OworICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBmbG93Iik7CisgICAgICAg
IHIyLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vbmUiOyAvLyB0aGlzIHdpbGwgdHJpZ2dlciBh
IG5ldyByb3VuZCBvZiBldmVudHMgZHVlIHRvIGxheW91dAorICAgIH0KKyAgICAKKyAgICBmdW5j
dGlvbiBzdGFydFRlc3QoKSB7CisgICAgICAgIHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0
aWNsZSIpOworICAgICAgICBmbG93LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJz
ZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7CisgICAgICAgIAorICAgICAgICBkZWJ1
ZygiRmxvdyBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7CisgICAg
fQorICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKKzwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQt
dGFyZ2V0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZDE2NDg0NWM0YzZkNGVhNzQ4ZGVmMTJi
NzgyODUzNmMxYzk5NDQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxOCBAQAorVGVzdHMgdGhlIHRoZSBOYW1lZEZsb3cgb2JqZWN0IGJlaGF2aW9yIGFz
IGFuIEV2ZW50VGFyZ2V0CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitGbG93IGNv
bnRlbnQKK1BBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCitQQVNTIGdldEZsb3dC
eU5hbWUoImFydGljbGUiKSBpcyBub24tbnVsbC4KK1BBU1MgcmVjcmVhdGVkIGlzIGZhbHNlCitQ
QVNTIGdldEZsb3dCeU5hbWUoImFydGljbGUiKSBpcyBudWxsCitQQVNTIGV2ZW50LnRhcmdldC5u
YW1lIGlzICJhcnRpY2xlIgorUEFTUyByZWNyZWF0ZWQgaXMgdHJ1ZQorUEFTUyBnZXRGbG93QnlO
YW1lKCJhcnRpY2xlIikgaXMgbm9uLW51bGwuCitQQVNTIHVwZGF0ZWRDb3VudCBpcyAyCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKyAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC10YXJnZXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFt
ZWQtZmxvdy1ldmVudC10YXJnZXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NjA1NDk5YjU2Yjk1ZmZlOWNl
NDQ1YjlhMDM1MzEzODU0ZmEzZWY5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC5odG1sCkBAIC0w
LDAgKzEsMTE0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFy
c2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3Nj
cmlwdD4KKzxzdHlsZT4KKyNhcnRpY2xlIHsKKyAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNs
ZTsKKyAgICBib3JkZXI6IDJweCBzb2xpZCBibGFjazsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8y
eworICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOworICAgIG92ZXJmbG93OmhpZGRl
bjsKKyAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKKyAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7Cisg
ICAgbWFyZ2luOjEwcHg7Cit9CisuYmxvY2sgeworICAgZGlzcGxheTpibG9jazsKK30KKyNyZWdp
b25fMSwgI3JlZ2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgYm9yZGVyOiAxcHgg
c29saWQgcmVkO30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImFydGljbGUi
PgorICAgIDxkaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIw
MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+
CisKKzxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4K
KworPHNjcmlwdD4KKworZGVzY3JpcHRpb24oIlRlc3RzIHRoZSB0aGUgTmFtZWRGbG93IG9iamVj
dCBiZWhhdmlvciBhcyBhbiBFdmVudFRhcmdldCIpOworCitpZiAod2luZG93LnRlc3RSdW5uZXIp
IHsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKK30KK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK2Z1bmN0aW9uIGZsb3dD
b250ZW50KGZsb3dOYW1lKSB7CisgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVnaW9uXzEiKTsKKyAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAg
ciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOworICAgIHIuc3R5bGUud2Vi
a2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKK30KKworZnVuY3Rpb24gbWFrZUZsb3dOdWxsKCkgewor
CXNob3VsZEJlTm9uTnVsbCgnZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpJyk7CisKKyAgICB2YXIg
ZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKKyAgICBlbC5zdHlsZS53
ZWJraXRGbG93RnJvbSA9ICJub19hcnRpY2xlIjsKKyAgICBlbCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb25fMiIpOworICAgIGVsLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vX2Fy
dGljbGUiOworICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKyAg
ICBlbC5zdHlsZS53ZWJraXRGbG93SW50byA9ICJub19hcnRpY2xlIjsKK30KKwordmFyIHJlY3Jl
YXRlZCA9IGZhbHNlOworZnVuY3Rpb24gbWFrZUZsb3dDcmVhdGVkKCkgeworCXNob3VsZEJlTnVs
bCgnZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpJyk7CisJZ2MoKTsKKworICAgIHZhciBlbCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgIGVsLnN0eWxlLndlYmtpdEZs
b3dGcm9tID0gImFydGljbGUiOworICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbl8yIik7CisgICAgZWwuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAiYXJ0aWNsZSI7CisgICAg
ZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOworICAgIGVsLnN0eWxlLndl
YmtpdEZsb3dJbnRvID0gImFydGljbGUiOworCisgICAgcmVjcmVhdGVkID0gdHJ1ZTsKK30KKwor
dmFyIHVwZGF0ZWRDb3VudCA9IDA7CitmdW5jdGlvbiBmaW5pc2hUZXN0KCkgeworICAgIHNob3Vs
ZEJlKCJ1cGRhdGVkQ291bnQiLCAiMiIpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCitmdW5j
dGlvbiBmbG93VGhyZWFkVXBkYXRlZChldmVudCkgeworCSsrdXBkYXRlZENvdW50OworICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOworCisg
ICAgaWYgKHVwZGF0ZWRDb3VudCA9PSAyKSB7CisgICAgCXNob3VsZEJlVHJ1ZSgicmVjcmVhdGVk
Iik7CisgICAgCWV2ZW50LnRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25v
dmVyc2V0Y2hhbmdlIiwgZmxvd1RocmVhZFVwZGF0ZWQpOworICAgIAltYWtlRmxvd051bGwoKTsK
KyAgICAJc2V0VGltZW91dCgiZmluaXNoVGVzdCgpIiwgMjAwKTsKKyAgICAJcmV0dXJuOworICAg
IH0KKworICAgIG1ha2VGbG93TnVsbCgpOworICAgIHNob3VsZEJlRmFsc2UoInJlY3JlYXRlZCIp
OworCisgICAgLy8gU2V0IGEgdGltZW91dCBzbyB0aGUgZXZlbnQgcmVmZXJlbmNlIHRvIHRoZSB0
YXJnZXQgaXMgZGlzY2FyZGVkCisgICAgc2V0VGltZW91dChtYWtlRmxvd0NyZWF0ZWQsIDEwKTsK
K30KKworZnVuY3Rpb24gc3RhcnRUZXN0KCkgeyAgICAKKyAgICB2YXIgZmxvd1RocmVhZCA9IGdl
dEZsb3dCeU5hbWUoImFydGljbGUiKTsKKyAgICBmbG93VGhyZWFkLmFkZEV2ZW50TGlzdGVuZXIo
IndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBmbG93VGhyZWFkVXBkYXRlZCk7CisgICAgCisg
ICAgZGVidWcoIkZsb3cgY29udGVudCIpOworICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7Cit9
CisKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRvLW51bGwtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRv
LW51bGwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5NDBjMzZkMTQyZTczZThhNzZlZDYwZjNl
OWE4NzE2YTQ3MDAyZDcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxNSBAQAorVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBiZWluZyBkaXNw
YXRjaGVkIHdoZW4gdGhlIGNvbnRlbnQgaXMgcmVtb3ZlZAorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworRmxvdyBjb250ZW50CitQQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRp
Y2xlIgorUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBmbG93CitSZW1vdmluZyByZWdpb25fMSBmcm9t
IGZsb3cKK1JlbW92aW5nIGFydGljbGUgZnJvbSBmbG93CitQQVNTIHJlZ2lvbk92ZXJzZXREaXNw
YXRjaGVkRm9yTnVsbEZsb3cgaXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRvLW51bGwuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5jZGU4NjU0MmZiYWM5NjQ1YjQ2MTk2ZmUxNmFhOWRhNmNkYmE5OWJhCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LXRvLW51bGwuaHRtbApAQCAtMCwwICsxLDkzIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyNhcnRpY2xl
IHsKKyAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKKyAgICBib3JkZXI6IDJweCBzb2xp
ZCBibGFjazsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yeworICAgIC13ZWJraXQtZmxvdy1mcm9t
OiBub19hcnRpY2xlOworICAgIG92ZXJmbG93OmhpZGRlbjsKKyAgICBkaXNwbGF5OmlubGluZS1i
bG9jazsKKyAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7CisgICAgbWFyZ2luOjEwcHg7Cit9CisuYmxv
Y2sgeworICAgZGlzcGxheTpibG9jazsKK30KKyNyZWdpb25fMSwgI3JlZ2lvbl8yIHsgaGVpZ2h0
OjExMHB4OyB3aWR0aDoyMDBweDsgbWFyZ2luOiA1cHg7fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxi
b2R5PgorPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgPGRpdj4KKyAgICAgICAgPGRpdiBpZD0iY29u
dGVudCIgc3R5bGU9ImhlaWdodDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9k
aXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgorPGRp
diBpZD0iY29udGFpbmVyMiI+CisgICAgPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgorPC9kaXY+
CisKKzxzY3JpcHQ+CisKK2Rlc2NyaXB0aW9uKCJUZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGV2
ZW50IGJlaW5nIGRpc3BhdGNoZWQgd2hlbiB0aGUgY29udGVudCBpcyByZW1vdmVkIik7CisKK2lm
ICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
KyAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIAorICAgIHdp
bmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKyAgICBmdW5jdGlvbiBmbG93Q29udGVudChmbG93
TmFtZSkgeworICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25f
MSIpOworICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAg
IHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgci5zdHls
ZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgIH0KKyAgICAKKyAgICB2YXIgY291bnQg
PSAwOworICAgIHZhciByZWdpb25PdmVyc2V0RGlzcGF0Y2hlZEZvck51bGxGbG93ID0gZmFsc2U7
CisgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5nZWQoZXZlbnQpIHsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7CisgICAg
ICAgIGlmICgrK2NvdW50ID4gMSkgeworICAgICAgICAgICBldmVudC50YXJnZXQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFu
Z2VkKTsKKyAgICAgICAgICAgcmVnaW9uT3ZlcnNldERpc3BhdGNoZWRGb3JOdWxsRmxvdyA9IHRy
dWU7CisgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgdmFy
IGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAgICAgIGRlYnVn
KCJSZW1vdmluZyByZWdpb25fMiBmcm9tIGZsb3ciKTsKKyAgICAgICAgZWwuc3R5bGUud2Via2l0
Rmxvd0Zyb20gPSAibm9uZSI7CisgICAgICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InJlZ2lvbl8xIik7CisgICAgICAgIGRlYnVnKCJSZW1vdmluZyByZWdpb25fMSBmcm9tIGZsb3ci
KTsKKyAgICAgICAgZWwuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAibm9uZSI7CisgICAgICAgIGVs
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKyAgICAgICAgZGVidWcoIlJl
bW92aW5nIGFydGljbGUgZnJvbSBmbG93Iik7CisgICAgICAgIGVsLnN0eWxlLndlYmtpdEZsb3dJ
bnRvID0gIm5vbmUiOworCisgICAgICAgIHNldFRpbWVvdXQoY2hlY2tJZkV2ZW50RGlzcGF0Y2hl
ZCwgMjAwKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBjaGVja0lmRXZlbnREaXNwYXRjaGVkKCkg
eworICAgICAgICBzaG91bGRCZUZhbHNlKCJyZWdpb25PdmVyc2V0RGlzcGF0Y2hlZEZvck51bGxG
bG93Iik7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlv
biBzdGFydFRlc3QoKSB7CisgICAgICAgIHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNs
ZSIpOworICAgICAgICBmbG93LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRj
aGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7CisgICAgICAgIAorICAgICAgICBkZWJ1Zygi
RmxvdyBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7CisgICAgfQor
ICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
ODc5YjA1MDMzYmZkMzBmYjM1OWU4YWZmMGY1NjEwZGM1NzFjNDI0Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
Lmh0bWwKQEAgLTAsMCArMSw2OCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorI2FydGljbGUgeworICAg
IC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNr
OworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7CisgICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2Fy
dGljbGU7CisgICAgb3ZlcmZsb3c6aGlkZGVuOworICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwor
ICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKKyAgICBtYXJnaW46MTBweDsKK30KKy5ibG9jayB7Cisg
ICBkaXNwbGF5OmJsb2NrOworfQorI3JlZ2lvbl8xLCAjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7
IHdpZHRoOjIwMHB4fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iZGVzY3Jp
cHRpb24iIGNsYXNzPSJibG9jayI+PC9kaXY+Cis8ZGl2IGlkPSJhcnRpY2xlIj4KKyAgICA8ZGl2
PgorICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dy
b3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGlk
PSJyZWdpb25fMSI+PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+CisKKzxkaXYgaWQ9
ImNvbnNvbGUiIGNsYXNzPSJibG9jayI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRp
b24oIlRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQiKQorICAgIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKKyAgICBmdW5jdGlvbiBmbG93Q29udGVudChmbG93TmFtZSkgeworICAgICAgICB2
YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOworICAgICAgICByLnN0
eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7CisgICAgICAgIHIgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uXzIiKTsKKyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9
IGZsb3dOYW1lOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBmbG93VGhyZWFkVXBkYXRlZChl
dmVudCkgeworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnRhcmdldC5uYW1l
IiwgImFydGljbGUiKTsKKyAgICAgICAgZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIo
IndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBmbG93VGhyZWFkVXBkYXRlZCk7CisgICAgICAg
IAorICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gc3Rh
cnRUZXN0KCkgeyAgICAKKyAgICAgICAgdmFyIGZsb3dUaHJlYWQgPSBnZXRGbG93QnlOYW1lKCJh
cnRpY2xlIik7CisgICAgICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVn
aW9ub3ZlcnNldGNoYW5nZSIsIGZsb3dUaHJlYWRVcGRhdGVkKTsKKyAgICAgICAgCisgICAgICAg
IGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKKyAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsK
KyAgICB9CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOwor
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
ZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzcxMzFlY2NhNTYzYTI4OWJl
YmNiNWI1NTJiMWNmZGViODQyYWZkZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1leGlzdGluZy1mbG93LWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDcgQEAKK1Rlc3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1l
bnQgTmFtZWRGbG93IGludGVyZmFjZQorCitHZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVj
dCBmb3IgYW4gZXhpc3RpbmcgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0Lgor
CitPbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgorCitQQVNTCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZXhp
c3RpbmctZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1u
YW1lZC1mbG93LWV4aXN0aW5nLWZsb3cuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNDRhNTY3YjdlZjliNTkz
ODRlNDEyMzQ1MWNkMTA5YjQwZDA1Njk3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWV4aXN0aW5nLWZsb3cuaHRtbApA
QCAtMCwwICsxLDQzIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDwhLS0KKyAgICBU
ZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIgKFtD
U1NSZWdpb25zXVtDU1NPTV0gSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgorICAgIFRl
c3QgdGhhdCBnZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IGZvciBhbiBleGlzdGluZyBmbG93IHJl
dHVybnMgYSBub24tbnVsbCBvYmplY3QuCisgICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUg
YSBQQVNTIGJlbG93LgorICAgIC0tPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0i
Li4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAg
ICAgICAgIC5wYXNzIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAgICAg
ICAgICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5m
YWlsIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAgICAgICAgICAgICAg
ICBjb2xvcjogcmVkOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmxvdyB7CisgICAg
ICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAgICAgICB9CisgICAg
ICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8cD5UZXN0IGZv
ciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIi
PjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+
CisgICAgICAgIDxwPkdldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgb2JqZWN0IGZvciBhbiBleGlz
dGluZyBmbG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3QuPC9wPgorICAgICAgICA8
cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LjwvcD4KKyAgICAgICAgPGRp
diBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZXN1
bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJm
bG93Iik7CisgICAgICAgICAgICBpZiAobmFtZWRGbG93KSB7CisgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVyVGV4dCA9ICJQQVNTIjsKKyAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuY2xhc3NOYW1lID0g
InBhc3MiOworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0
LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1maXJzdC1lbXB0eS1y
ZWdpb24taW5kZXgtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxMDFmNjY4NjRmMTczNWU4NmU4
YjFiYzk0Nzc0NDI0YzFmMmIzZDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2IEBACitUZXN0IGZvciA5MDYwODogW0NTU1JlZ2lv
bnNdSW1wbGVtZW50IE5hbWVkRmxvdzo6Zmlyc3RFbXB0eVJlZ2lvbkluZGV4IGF0dHJpYnV0ZS4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgbmFtZWRGbG93LmZpcnN0RW1w
dHlSZWdpb25JbmRleCBpcyAtMQorUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4
IGlzIC0xCitQQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMQorUEFTUyBu
YW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IGlzIDIKK1BBU1MgbmFtZWRGbG93LmZpcnN0
RW1wdHlSZWdpb25JbmRleCBpcyAtMQorUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbklu
ZGV4IGlzIDAKK1BBU1MgbmFtZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCBpcyAtMQorUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1maXJz
dC1lbXB0eS1yZWdpb24taW5kZXguaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3Nv
bS93ZWJraXQtbmFtZWQtZmxvdy1maXJzdC1lbXB0eS1yZWdpb24taW5kZXguaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xYWRlMjFhYzc4Zjg3ZGU0NDUwMzc2OTM5MjMwNTA3ZDA4MWI4MDY3Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93
LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC5odG1sCkBAIC0wLDAgKzEsODggQEAKKzwhZG9jdHlw
ZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uL3Jlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorICAgIGJv
ZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlIH0KKyAgICAuY29udGVudCB7IC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93IH0KKyAgICAucmVnaW9uIHsgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93fQor
ICAgICNyZWdpb24sICNyZWdpb24yLCAjcmVnaW9uMyB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1
MHB4OyB9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJhcnRpY2xlIiBjbGFz
cz0iY29udGVudCI+Cis8cD5Db250ZW50IGluc2lkZSBhcnRpY2xlPC9wPgorPC9kaXY+Cis8c2Ny
aXB0PgorICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDYwODogW0NTU1JlZ2lvbnNdSW1wbGVt
ZW50IE5hbWVkRmxvdzo6Zmlyc3RFbXB0eVJlZ2lvbkluZGV4IGF0dHJpYnV0ZS4iKTsKKworICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisKKyAgICAvLyBOYW1lZCBmbG93IGRvZXMgbm90IGhhdmUgYW55IHJlZ2lvbnMgeWV0CisgICAg
dmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKKworICAgIC8vIEZpcnN0RW1w
dHlSZWdpb25JbmRleCBzaG91bGQgYmUgLTEgZm9yIGFuIGVtcHR5IG5hbWVkIGZsb3cKKyAgICBz
aG91bGRCZSgibmFtZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICItMSIpOworCisgICAg
Ly8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhlIGNvbnRlbnQsIGZpcnN0RW1wdHlSZWdpb25JbmRl
eCBzaG91bGQgc3RpbGwgYmUgLTEuCisgICAgdmFyIHJlZ2lvbiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uKTsKKyAg
ICByZWdpb24uaWQgPSAicmVnaW9uIjsKKyAgICByZWdpb24uY2xhc3NOYW1lID0gInJlZ2lvbiI7
CisKKyAgICAvLyBGaXJzdEVtcHR5UmVnaW9ucyBzaG91bGQgYmUgLTEsIHNpbmNlIHRoZXJlIGFy
ZSBubyBlbXB0eSByZWdpb25zCisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVn
aW9uSW5kZXgiLCAiLTEiKTsKKworICAgIC8vIEFkZCBhbm90aGVyIHJlZ2lvbiwgZmlyc3RFbXB0
eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAxIHNpbmNlIGNvbnRlbnQgb25seSBmbG93cyB3aXRoaW4g
dGhlIGZpcnN0IHJlZ2lvbi4KKyAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpOworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMik7CisgICAg
cmVnaW9uMi5pZCA9ICJyZWdpb24yIjsKKyAgICByZWdpb24yLmNsYXNzTmFtZSA9ICJyZWdpb24i
OworCisgICAgLy8gRmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAxCisgICAgc2hvdWxk
QmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiMSIpOworCisgICAgLy8gQWRk
IGNvbnRlbnQgdW50aWwgc29tZSBpcyBmbG93ZWQgaW5zaWRlIHNlY29uZCByZWdpb24KKyAgICB3
aGlsZSAocmVnaW9uMi53ZWJraXRSZWdpb25PdmVyc2V0ID09ICJlbXB0eSIpIHsKKyAgICAgICAg
dmFyIHAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7CisgICAgICAgIHAuYXBwZW5kQ2hp
bGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkNvbnRlbnQgaW5zaWRlIGFydGljbGUiKSk7Cisg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocCk7
CisgICAgfQorICAgIC8vIEFkZCB0aGUgdGhpcmQgcmVnaW9uLCBmaXJzdEVtcHR5UmVnaW9uSW5k
ZXggc2hvdWxkIGJlIDIuCisgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjMpOworICAgIHJl
Z2lvbjMuaWQgPSAicmVnaW9uMyI7CisgICAgcmVnaW9uMy5jbGFzc05hbWUgPSAicmVnaW9uIjsK
KworICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgMiBzaW5jZSB0aGUgY29u
dGVudCBmaXRzIGluIHRoZSBmaXJzdCB0d28gcmVnaW9ucy4KKyAgICBzaG91bGRCZSgibmFtZWRG
bG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICIyIik7CisKKyAgICAvLyBSZW1vdmUgdGhlIGZp
cnN0IHJlZ2lvbiBmcm9tIHRoZSBmbG93LCBmaXJzdEVtcHR5UmVnaW9uSW5kZXggc2hvdWxkIGJl
IC0xLgorICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAiIjsKKworICAgIC8vIE92ZXJzZXQgc2hvdWxk
IGJlIHRydWUgc2luY2UgdGhlIGNvbnRlbnQgZG9lcyBub3QgZml0IHRoZSByZWdpb25zCisgICAg
c2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiLTEiKTsKKworICAg
IC8vIFJlbW92ZSB0aGUgY29udGVudCBmcm9tIHRoZSBmbG93LCBmaXJzdEVtcHR5UmVnaW9uSW5k
ZXggc2hvdWxkIGJlIDAuCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5j
bGFzc05hbWUgPSAiIjsKKworICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUg
MCwgc2luY2UgdGhlcmUgaXMgbm8gbW9yZSBjb250ZW50LgorICAgIHNob3VsZEJlKCJuYW1lZEZs
b3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IiwgIjAiKTsKKworICAgIC8vIFJlbW92ZSBhbGwgdGhl
IHJlZ2lvbnMgZnJvbSB0aGUgZmxvdworICAgIHJlZ2lvbjIuY2xhc3NOYW1lID0gcmVnaW9uMy5j
bGFzc05hbWUgPSAiIjsKKworICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUg
LTEsIHNpbmNlIHRoZXJlIGFyZSBubyBtb3JlIHJlZ2lvbnMgaW4gdGhlIG5hbWVkIGZsb3cuCisg
ICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiLTEiKTsKKwor
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUuZGlzcGxheSA9ICJu
b25lIjsKKyAgICByZWdpb24uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKKyAgICByZWdpb24yLnN0
eWxlLmRpc3BsYXkgPSAibm9uZSI7CisgICAgcmVnaW9uMy5zdHlsZS5kaXNwbGF5ID0gIm5vbmUi
OworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
Zmxvdy1hZGRlZC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGUwYTE1MjhiNWNjODM2ZmYyZTJl
MTZjNmFhYjQ4NjM5MDViMDRlMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93LWFkZGVkLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDcgQEAKK1Rlc3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFt
ZWRGbG93IGludGVyZmFjZQorCitHZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3Ig
YSBmbG93IHRoYXQgd2FzIGFkZGVkIHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3QuCisK
K09uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCisKK1BBU1MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1mbG93
LWFkZGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVk
LWZsb3ctZmxvdy1hZGRlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmNzMxYTM0OTQ2MmU0MjZjMGFjMmQ0
OTU4NWM1NTI2MjQyMTZmN2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC5odG1sCkBAIC0wLDAgKzEs
NTYgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPCEtLQorICAgIFRlc3QgZm9yIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiAoW0NTU1JlZ2lvbnNd
W0NTU09NXSBJbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZSkuCisgICAgVGVzdCB0aGF0IGdl
dHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgZm9yIGEgZmxvdyB0aGF0IHdhcyBhZGRlZCByZXR1cm5z
IGEgbm9uLW51bGwgb2JqZWN0LgorICAgIE9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIGEgUEFT
UyBiZWxvdy4KKyAgICAtLT4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAg
ICAucGFzcyB7CisgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgICAgICAg
ICAgICAgY29sb3I6IGdyZWVuOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmFpbCB7
CisgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgICAgICAgICAgICAgY29s
b3I6IHJlZDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLmZsb3cgeworICAgICAgICAg
ICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAubm9GbG93IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogbm9uZTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkg
b25sb2FkPSJ0ZXN0KCkiPgorICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11J
bXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+CisgICAgICAgIDxwPkdldHRpbmcg
YSBXZWJLaXROYW1lZEZsb3cgb2JqZWN0IGZvciBhIGZsb3cgdGhhdCB3YXMgYWRkZWQgc2hvdWxk
IHJldHVybiBhIG5vbi1udWxsIG9iamVjdC48L3A+CisgICAgICAgIDxwPk9uIHN1Y2Nlc3MsIHlv
dSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuPC9wPgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIiBj
bGFzcz0ibm9GbG93Ij48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0icmVzdWx0IiBjbGFzcz0iZmFp
bCI+RkFJTDwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworCisg
ICAgICAgICAgICAvLyBHZXQgdGhlIG5hbWVkIGZsb3cgb2JqZWN0IGJlZm9yZSBhZGRpbmcgdGhl
IGZsb3cgdGhyZWFkLgorICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUo
ImZsb3ciKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cyOworCisgICAgICAgICAgICBmdW5j
dGlvbiB0ZXN0KCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBuYW1lZEZsb3cyID0g
Z2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworICAgICAgICAgICAgICAgIGlmICghbmFtZWRGbG93ICYm
IG5hbWVkRmxvdzIpIHsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlc3VsdCIpLmlubmVyVGV4dCA9ICJQQVNTIjsKKyAgICAgICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIikuY2xhc3NOYW1lID0gImZsb3ciOworICAgICAgICA8L3Njcmlw
dD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1jb250
ZW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hNDkzNjQ2MDcyOWJkM2Y1YzcxYTFmM2JmOTll
MzIzM2E1ZWNkYzBlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1jb250ZW50LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDM2IEBACitUZXN0IGZvciA5MDE2MzogW0NTU1JlZ2lvbnNdUmVuYW1lIE5hbWVkRmxvdzo6
Y29udGVudE5vZGVzIHRvIE5hbWVkRmxvdzo6Z2V0Q29udGVudCgpCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitQQVNTIGdldEZsb3dCeU5hbWUoImZsb3ciKSBpcyBudWxsCitQQVNT
IG5hbWVkRmxvd0NvbnRlbnQzLmxlbmd0aCBpcyAxCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQzLml0
ZW0oMCkuaWQgaXMgImFydGljbGUiCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ0Lmxlbmd0aCBpcyAx
CitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ0Lml0ZW0oMCkuaWQgaXMgImFydGljbGUiCitQQVNTIG5h
bWVkRmxvd0NvbnRlbnQ1Lmxlbmd0aCBpcyAyCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ1Lml0ZW0o
MCkuaWQgaXMgImFydGljbGUyIgorUEFTUyBuYW1lZEZsb3dDb250ZW50NS5pdGVtKDEpLmlkIGlz
ICJhcnRpY2xlIgorUEFTUyBuYW1lZEZsb3dDb250ZW50Ni5sZW5ndGggaXMgMgorUEFTUyBuYW1l
ZEZsb3dDb250ZW50Ny5sZW5ndGggaXMgMgorUEFTUyBuYW1lZEZsb3dDb250ZW50OC5sZW5ndGgg
aXMgMworUEFTUyBuYW1lZEZsb3dDb250ZW50OS5sZW5ndGggaXMgMworUEFTUyBuYW1lZEZsb3dD
b250ZW50OS5pdGVtKDApLmlkIGlzICJhcnRpY2xlMiIKK1BBU1MgbmFtZWRGbG93Q29udGVudDku
aXRlbSgxKS5pZCBpcyAic3BhbjEiCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQ5Lml0ZW0oMikuaWQg
aXMgImFydGljbGUiCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQxMC5sZW5ndGggaXMgMworUEFTUyBu
YW1lZEZsb3dDb250ZW50MTAuaXRlbSgwKS5pZCBpcyAiYXJ0aWNsZSIKK1BBU1MgbmFtZWRGbG93
Q29udGVudDExLmxlbmd0aCBpcyA1CitQQVNTIG5hbWVkRmxvd0NvbnRlbnQxMi5sZW5ndGggaXMg
MQorUEFTUyBuYW1lZEZsb3dDb250ZW50MTIuaXRlbSgwKS5pZCBpcyAiYXJ0aWNsZSIKK1BBU1Mg
bmFtZWRGbG93Q29udGVudDExLmxlbmd0aCBpcyAwCitQQVNTIG5hbWVkRmxvd0NvbnRlbnQxMi5s
ZW5ndGggaXMgMQorUEFTUyBuYW1lZEZsb3dDb250ZW50MTIuaXRlbSgwKS5pZCBpcyAiYXJ0aWNs
ZSIKK1BBU1MgZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKSBpcyBudWxsCitQQVNTIG5hbWVkRmxvd0Nv
bnRlbnQxMy5sZW5ndGggaXMgMAorUEFTUyBuYW1lZEZsb3dDb250ZW50MTQubGVuZ3RoIGlzIDAK
K1BBU1MgbmFtZWRGbG93Q29udGVudDE1Lmxlbmd0aCBpcyAxCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1jb250ZW50Lmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRl
bnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5iMjg5MGRkY2JhYmU0OGY4MmRjYjEyZmE0YjkxZWVlYjliYmI1
YWZiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dl
YmtpdC1uYW1lZC1mbG93LWdldC1jb250ZW50Lmh0bWwKQEAgLTAsMCArMSwxMzYgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4K
KyAgICAgICAgICAgICNyZWdpb24geyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDI1
MHB4OyBoZWlnaHQ6IDE1MHB4OyB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAg
IDxib2R5PgorICAgICAgICA8IS0tCisgICAgICAgIDEuIFRoZSBjb250ZW50IG5vZGVzIGNvbGxl
Y3Rpb24gZm9yIGEgbmFtZWQgZmxvdyAnZmxvdycgY29udGFpbnMgb25seSB0aG9zZSBlbGVtZW50
cyB0aGF0IGhhdmUKKyAgICAgICAgdGhlIHN0eWxlIHByb3BlcnR5IC13ZWJraXQtZmxvdy1pbnRv
IHNldCB0byAnZmxvdycuCisgICAgICAgIDIuIElmIGFuIGVsZW1lbnQgaGFzIGFuIGFuY2VzdG9y
IHdpdGggLXdlYmtpdC1mbG93LWludG8gPSAnZmxvdycgYnV0IGRvZXMgbm90IGhhdmUgaXRzICct
d2Via2l0LWZsb3ctaW50bycKKyAgICAgICAgc2V0IHRvICdmbG93JyB3aWxsIG5vdCBiZSBsaXN0
ZWQgYW1vbmcgdGhlIGNvbnRlbnQgbm9kZXMgZm9yIG5hbWVkIGZsb3cgJ2Zsb3cnLgorICAgICAg
ICAzLiBFbGVtZW50cyB3aXRoICctd2Via2l0LWZsb3ctaW50bycgc2V0IHRvICdmbG93JyBhbmQg
J2Rpc3BsYXk6bm9uZScgc2hvdWxkIGJlIGxpc3RlZCBhbW9uZyB0aGUgY29udGVudCBub2Rlcwor
ICAgICAgICBmb3IgbmFtZWQgZmxvdyBvYmplY3QgJ2Zsb3cnLgorICAgICAgICA0LiBUaGUgY29s
bGVjdGlvbiBvZiBub2RlcyBpcyByZXR1cm5lZCBpbiBkb2N1bWVudCBvcmRlci4KKyAgICAgICAg
LS0+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
CisgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAg
ICAgICAgZGVzY3JpcHRpb24oIlRlc3QgZm9yIDkwMTYzOiBbQ1NTUmVnaW9uc11SZW5hbWUgTmFt
ZWRGbG93Ojpjb250ZW50Tm9kZXMgdG8gTmFtZWRGbG93OjpnZXRDb250ZW50KCkiKTsKKworICAg
ICAgICAgICAgLy8gQWRkIGFuIGVsZW1lbnQgdGhhdCB3b3VsZCBiZSBjb2xsZWN0ZWQgYnkgdGhl
IG5hbWVkIGZsb3cgYnV0IGRvIG5vdCBhZGQgaXQgdG8gdGhlIERPTSwgdGhlIGNvbnRlbnROb2Rl
cyBzaG91bGQgYmUgZW1wdHkuCisgICAgICAgICAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgYXJ0aWNsZS5pZCA9ICJhcnRpY2xlIjsK
KyAgICAgICAgICAgIGFydGljbGUuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdyI7CisKKyAg
ICAgICAgICAgIHNob3VsZEJlTnVsbCgnZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpJyk7CisKKyAgICAg
ICAgICAgIC8vIEFwcGVuZCB0aGUgYWJvdmUgZWxlbWVudCB0byB0aGUgRE9NLiBJdCB3aWxsIGJl
IGNvbGxlY3RlZCBieSB0aGUgZmxvdywgdGhlcmVmb3JlIHRoZSBjb250ZW50Tm9kZXMgc2hvdWxk
IGhhdmUgMSBlbGVtZW50LgorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChh
cnRpY2xlKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50MyA9IGdldEZsb3dCeU5h
bWUoImZsb3ciKS5nZXRDb250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJu
YW1lZEZsb3dDb250ZW50My5sZW5ndGgiLCAxKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygibmFtZWRGbG93Q29udGVudDMuaXRlbSgwKS5pZCIsICJhcnRpY2xlIik7CisKKyAg
ICAgICAgICAgIC8vIEFwcGVuZCBhIGNoaWxkIGVsZW1lbnQgdG8gdGhlIGFydGljbGUgYWJvdmUg
YnV0IGRvIG5vdCBzZXQgaXRzIHN0eWxlIHRvIGZsb3cgaW50byAnZmxvdycuCisgICAgICAgICAg
ICAvLyBUaGUgY29udGVudE5vZGVzIHNob3VsZCBzdGlsbCBoYXZlIDEgZWxlbWVudC4KKyAgICAg
ICAgICAgIHZhciBwTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKKyAgICAgICAg
ICAgIHBOb2RlLmlkID0gInAxIjsKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocE5vZGUpOworICAgICAgICAgICAgdmFyIG5hbWVkRmxv
d0NvbnRlbnQ0ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKKyAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQ0Lmxlbmd0aCIsIDEpOworICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50NC5pdGVtKDAp
LmlkIiwgImFydGljbGUiKTsKKworICAgICAgICAgICAgLy8gQWRkIGFub3RoZXIgZWxlbWVudCBk
aXJlY3RseSB0byB0aGUgZmxvdyBhbmQgc2V0IGl0cyAnZGlzcGxheScgcHJvcGVydHkgdG8gJ25v
bmUnLCBpdCBzaG91bGQgYmUgcGFydCBvZiB0aGUgZmxvdy4KKyAgICAgICAgICAgIHZhciBhcnRp
Y2xlMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgYXJ0aWNs
ZTIuaWQgPSAiYXJ0aWNsZTIiOworICAgICAgICAgICAgYXJ0aWNsZTIuc3R5bGUud2Via2l0Rmxv
d0ludG8gPSAiZmxvdyI7CisgICAgICAgICAgICBhcnRpY2xlMi5zdHlsZS5kaXNwbGF5ID0gIm5v
bmUiOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoYXJ0aWNsZTIsIGFy
dGljbGUpOworCisgICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDUgPSBnZXRGbG93QnlO
YW1lKCJmbG93IikuZ2V0Q29udGVudCgpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
bmFtZWRGbG93Q29udGVudDUubGVuZ3RoIiwgMik7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQ1Lml0ZW0oMCkuaWQiLCAiYXJ0aWNsZTIiKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDUuaXRlbSgx
KS5pZCIsICJhcnRpY2xlIik7CisKKyAgICAgICAgICAgIC8vIEFkZGluZyBhIHJlZ2lvbiBlbGVt
ZW50IHRvIGZsb3cgY29udGVudCBpbnRvIHNob3VsZCBub3QgaW5mbHVlbmNlIHRoZSBjb250ZW50
IG5vZGVzIGNvbGxlY3Rpb24uCisgICAgICAgICAgICB2YXIgcmVnaW9uTm9kZSA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgICAgICAgICAgcmVnaW9uTm9kZS5pZCA9ICJyZWdp
b24iOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb25Ob2RlKTsK
KyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50NiA9IGdldEZsb3dCeU5hbWUoImZsb3ci
KS5nZXRDb250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dD
b250ZW50Ni5sZW5ndGgiLCAyKTsKKworICAgICAgICAgICAgLy8gQ2hhbmdlIGRpc3BsYXk6bm9u
ZSBmb3IgdGhlICdhcnRpY2xlMicgZWxlbWVudCwgdGhlIGxpc3Qgb2YgY29udGVudE5vZGVzIHNo
b3VsZCBzdGF5IHRoZSBzYW1lCisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZTIiKS5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsKKyAgICAgICAgICAgIHZhciBuYW1l
ZEZsb3dDb250ZW50NyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7CisgICAg
ICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50Ny5sZW5ndGgiLCAyKTsK
KworICAgICAgICAgICAgLy8gQWRkIGEgcCBhbmQgYSBzcGFuIHVuZGVyIHAuIE1ha2UgdGhlIHNw
YW4gZGlyZWN0bHkgY29sbGVjdGVkIGJ5IHRoZSBmbG93LiBUaGUgY29udGVudE5vZGVzIGNvbGxl
Y3Rpb24gc2hvdWxkIGhhdmUgMyBlbGVtZW50cy4KKyAgICAgICAgICAgIHBOb2RlID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgicCIpOworICAgICAgICAgICAgcE5vZGUuaWQgPSAicDIiOworICAg
ICAgICAgICAgdmFyIHNwYW5Ob2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpOwor
ICAgICAgICAgICAgc3Bhbk5vZGUuaWQgPSAic3BhbjEiOworICAgICAgICAgICAgc3Bhbk5vZGUu
c3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdyI7CisgICAgICAgICAgICBwTm9kZS5hcHBlbmRD
aGlsZChzcGFuTm9kZSk7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0
aWNsZTIiKS5hcHBlbmRDaGlsZChwTm9kZSk7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dD
b250ZW50OCA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7CisgICAgICAgICAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50OC5sZW5ndGgiLCAzKTsKKworICAg
ICAgICAgICAgLy8gQ2hhbmdlIGRpc3BsYXkgb2YgYXJ0aWNsZSBub2RlIHRvIG5vbmUsIHRoZSBj
b2xsZWN0aW9uIHNob3VsZCBzdGlsbCBoYXZlIDMgZWxlbWVudHMuCisgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Cisg
ICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDkgPSBnZXRGbG93QnlOYW1lKCJmbG93Iiku
Z2V0Q29udGVudCgpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29u
dGVudDkubGVuZ3RoIiwgMyk7CisgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5h
bWVkRmxvd0NvbnRlbnQ5Lml0ZW0oMCkuaWQiLCAiYXJ0aWNsZTIiKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDkuaXRlbSgxKS5pZCIsICJzcGFu
MSIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50
OS5pdGVtKDIpLmlkIiwgImFydGljbGUiKTsKKworICAgICAgICAgICAgLy8gVGFrZSAnYXJ0aWNs
ZScgbm9kZSBmcm9tIGxhc3QgcG9zaXRpb24gYW5kIGluc2VydCBpdCBiZWZvcmUgJ2FydGljbGUy
JworICAgICAgICAgICAgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xl
Iik7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lmluc2VydEJlZm9yZShkb2N1bWVudC5ib2R5
LnJlbW92ZUNoaWxkKGFydGljbGUpLCBhcnRpY2xlMik7CisgICAgICAgICAgICB2YXIgbmFtZWRG
bG93Q29udGVudDEwID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKKyAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMC5sZW5ndGgiLCAzKTsK
KyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDEwLml0
ZW0oMCkuaWQiLCAiYXJ0aWNsZSIpOworCisgICAgICAgICAgICAvLyBDbG9uZSAnYXJ0aWNsZTIn
IGluY2x1ZGluZyBpdHMgY2hpbGRyZW4uCisgICAgICAgICAgICB2YXIgYXJ0aWNsZTJDbG9uZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmNsb25lTm9kZSh0cnVlKTsKKyAg
ICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYXJ0aWNsZTJDbG9uZSk7CisgICAg
ICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDExID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdl
dENvbnRlbnQoKTsKKyAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRl
bnQxMS5sZW5ndGgiLCA1KTsKKyAgICAgICAgICAgIC8vIFJlbW92ZSBhcnRpY2xlMiBub2RlcyBm
cm9tIGRvY3VtZW50LCB0aGV5IHNob3VsZCBiZSByZW1vdmVkIGZyb20gZmxvdy4KKyAgICAgICAg
ICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYXJ0aWNsZTIpOworICAgICAgICAgICAgZG9j
dW1lbnQuYm9keS5yZW1vdmVDaGlsZChhcnRpY2xlMkNsb25lKTsKKyAgICAgICAgICAgIHZhciBu
YW1lZEZsb3dDb250ZW50MTIgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOwor
ICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDEyLmxlbmd0aCIs
IDEpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250ZW50
MTIuaXRlbSgwKS5pZCIsICJhcnRpY2xlIik7CisKKyAgICAgICAgICAgIC8vIE1vdmUgdGhlIGNv
bnRlbnQgbm9kZSAnYXJ0aWNsZScgZnJvbSBuYW1lZCBmbG93ICdmbG93JyB0byBuYW1lZCBmbG93
ICdmbG93MicKKyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIiku
c3R5bGUud2Via2l0Rmxvd0ludG8gPSAiZmxvdzIiOworICAgICAgICAgICAgdmFyIGZsb3cyID0g
Z2V0Rmxvd0J5TmFtZSgiZmxvdzIiKTsKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50
MTEgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOworICAgICAgICAgICAgdmFy
IG5hbWVkRmxvd0NvbnRlbnQxMiA9IGdldEZsb3dCeU5hbWUoImZsb3cyIikuZ2V0Q29udGVudCgp
OworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDExLmxlbmd0
aCIsICIwIik7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50
MTIubGVuZ3RoIiwgIjEiKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygibmFt
ZWRGbG93Q29udGVudDEyLml0ZW0oMCkuaWQiLCAiYXJ0aWNsZSIpOworCisgICAgICAgICAgICAv
LyBSZW1vdmUgdGhlIGNvbnRlbnQgbm9kZSBmcm9tIGRvbSwgY29udGVudCBub2RlcyBmb3IgYm90
aCAnZmxvdycgYW5kICdmbG93Micgc2hvdWxkIGJlIGVtcHR5CisgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LnJlbW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikpOwor
ICAgICAgICAgICAgc2hvdWxkQmVOdWxsKCdnZXRGbG93QnlOYW1lKCJmbG93MiIpJyk7CisKKyAg
ICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50MTMgPSBnZXRGbG93QnlOYW1lKCJmbG93Iiku
Z2V0Q29udGVudCgpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29u
dGVudDEzLmxlbmd0aCIsICIwIik7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50
MTQgPSBmbG93Mi5nZXRDb250ZW50KCk7CisgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJu
YW1lZEZsb3dDb250ZW50MTQubGVuZ3RoIiwgIjAiKTsKKyAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQoYXJ0aWNsZSk7CisgICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVu
dDE1ID0gZmxvdzIuZ2V0Q29udGVudCgpOworICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
bmFtZWRGbG93Q29udGVudDE1Lmxlbmd0aCIsICIxIik7CisKKyAgICAgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Cisg
ICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdl
dC1yZWdpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGM5
ODBkMGI3NWY5MjNmOWNiN2Y3NmQ3YWFhOGFhOGUwZjg4YTFiYwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVn
aW9ucy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorVGVzdHMgV2ViS2l0TmFtZWRGbG93
LmdldFJlZ2lvbnMoKSBhbmQgdGhlIERPTSBvcmRlciBvZiB0aGUgbGlzdAorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKKworRmxvdyBjb250ZW50CitUZXN0IGlmIHRoZSByZWdpb25zIGFy
ZSBpbiBET00gb3JkZXIKK1BBU1MgZ2V0UmVnaW9uQXQoMCkuaWQgaXMgInJlZ2lvbl8xIgorUEFT
UyBnZXRSZWdpb25BdCgxKS5pZCBpcyAicmVnaW9uXzIiCitFbXB0eSBjb250ZW50CitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKyAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVn
aW9ucy1wc2V1ZG8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29t
L3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMGQ0YTk3ODIyMzNkOTVjNzk1N2QxMjU2YzFlYWQ5ODllNmExMTFmYQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxv
dy1nZXQtcmVnaW9ucy1wc2V1ZG8tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTMgQEAKK1Rlc3Rz
IFdlYktpdE5hbWVkRmxvdy5nZXRSZWdpb25zKCkgYW5kIHBzZXVkby1lbGVtZW50cyBhcyByZWdp
b25zLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZWdpb25MaXN0Lmxl
bmd0aCBpcyAxCitQQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMAorUEFT
UyByZWdpb25MaXN0Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbl8yIgorUEFTUyByZWdpb25MaXN0Lml0
ZW0oMCkud2Via2l0UmVnaW9uT3ZlcnNldCBpcyAiZW1wdHkiCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdl
dC1yZWdpb25zLXBzZXVkby5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkOTJhOWVkYzFiNDg0YzFlYmMyODZk
YzQzOTE2ZDc3NDU1MDEyYjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLmh0bWwKQEAg
LTAsMCArMSw3OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+CisgICAgI2Fy
dGljbGUgeworICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKKyAgICAgICAgaGVp
Z2h0OiA1MHB4OworICAgICAgICB3aWR0aDogNTBweDsKKyAgICAgICAgYmFja2dyb3VuZC1jb2xv
cjogZ3JlZW47CisgICAgfQorCisgICAgI3JlZ2lvbl8xIHsKKyAgICAgICAgcG9zaXRpb246IGFi
c29sdXRlOworICAgICAgICB0b3A6MjAwcHg7CisgICAgICAgIGxlZnQ6IDEwMHB4OworICAgIH0K
KworICAgICNyZWdpb25fMTo6YmVmb3JlIHsKKyAgICAgICAgZGlzcGxheTogYmxvY2s7CisgICAg
ICAgIHdpZHRoOiA1MHB4OworICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOworICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsKKyAg
ICB9CisKKyAgICAjcmVnaW9uXzE6OmFmdGVyIHsKKyAgICAgICAgZGlzcGxheTogYmxvY2s7Cisg
ICAgICAgIHdpZHRoOiA1MHB4OworICAgICAgICBoZWlnaHQ6IDUwcHg7CisgICAgICAgIGJvcmRl
cjogMXB4IHNvbGlkIGJsYWNrOworICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogYXJ0aWNsZTsg
ICAgCisgICAgfQorCisgICAgI3JlZ2lvbl8yIHsKKyAgICAgICAgLXdlYmtpdC1mbG93LWZyb206
IGFydGljbGU7CisgICAgICAgIGhlaWdodDo1MHB4OworICAgICAgICB3aWR0aDo1MHB4OworICAg
ICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIHRvcDogMjAwcHg7CisgICAgICAgIGxl
ZnQ6IDIwMHB4OworICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKKyAgICB9CisKKzwv
c3R5bGU+Cis8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDwhLS0KKyAgICAgICAgVGVzdCB0
aGF0IGdldFJlZ2lvbnMoKSBmdW5jdGlvbiBmcm9tIE5hbWVkRmxvdyBpbnRlcmZhY2UgZG9lcyBu
b3QgZXhwb3NlIHRoZSBwc2V1ZG8tZWxlbWVudHMgYXMKKyAgICAgICAgcmVnaW9ucy4KKyAgICAg
ICAgLS0+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPjwvZGl2PgorCisgICAgICAgIDxkaXYg
aWQ9InJlZ2lvbl8xIiBjbGFzcz0icmVnaW9uXzEiPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJy
ZWdpb25fMiIgY2xhc3M9InJlZ2lvbl8yIj48L2Rpdj4KKworICAgICAgICA8c2NyaXB0PgorICAg
ICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3RzIFdlYktpdE5hbWVkRmxvdy5nZXRSZWdpb25zKCkg
YW5kIHBzZXVkby1lbGVtZW50cyBhcyByZWdpb25zLiIpCisgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisK
KyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIik7CisK
KyAgICAgICAgICAgIC8vIFRoZSBwc2V1ZG8tZWxlbWVudHMgYXJlIG5vdCB5ZXQgcmV0dXJuZWQg
YnkgZ2V0UmVnaW9ucygpCisgICAgICAgICAgICB2YXIgcmVnaW9uTGlzdCA9IG5hbWVkRmxvdy5n
ZXRSZWdpb25zKCk7CisgICAgICAgICAgICBzaG91bGRCZSgicmVnaW9uTGlzdC5sZW5ndGgiLCAi
MSIpOworICAgICAgICAgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5k
ZXgiLCAiMCIpOworICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0
Lml0ZW0oMCkuaWQiLCAicmVnaW9uXzIiKTsKKyAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdC5pdGVtKDApLndlYmtpdFJlZ2lvbk92ZXJzZXQiLCAiZW1wdHkiKTsK
KworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52
aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uXzEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CisgICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhp
ZGRlbiI7CisgICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1l
ZC1mbG93LWdldC1yZWdpb25zLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NmIyOTUwMjc3
MjA2YWU3ZjRjYjBjNTlkZjVmOGZkYjlkNWYyMGYyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLmh0
bWwKQEAgLTAsMCArMSw2NyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorI2FydGljbGUgeworICAgIC13
ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOworICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOwor
fQorI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7CisgICAgb3ZlcmZsb3c6dmlzaWJsZTsKKyAgICBkaXNw
bGF5OmlubGluZS1ibG9jazsKKyAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7CisgICAgbWFyZ2luOjEw
cHg7Cit9CisjcmVnaW9uXzEgeyBoZWlnaHQ6NTAwcHg7IHdpZHRoOjIwMHB4OyB9CisjcmVnaW9u
XzIgeyBoZWlnaHQ6NTBweDsgd2lkdGg6MjAwcHg7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXYgaWQ9ImFydGljbGUiPgorICAgIDxkaXY+CisgICAgICAgIDxkaXYgaWQ9ImNvbnRl
bnQiIHN0eWxlPSJoZWlnaHQ6IDMwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2
PgorICAgIDwvZGl2PgorPC9kaXY+CisKKzxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KKzxkaXYg
aWQ9InJlZ2lvbl8yIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGVzdHMg
V2ViS2l0TmFtZWRGbG93LmdldFJlZ2lvbnMoKSBhbmQgdGhlIERPTSBvcmRlciBvZiB0aGUgbGlz
dCIpCisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworICAgIH0KKworICAgIGZ1bmN0aW9uIGdldFJlZ2lvbkF0KGluZGV4KSB7Cisg
ICAgICAgIHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOworICAgICAgICB2YXIg
cmVnaW9ucyA9IGZsb3cuZ2V0UmVnaW9ucygpOworICAgICAgICBpZiAocmVnaW9ucy5sZW5ndGgg
PD0gaW5kZXgpCisgICAgICAgICAgICByZXR1cm4gbnVsbDsKKworICAgICAgICByZXR1cm4gcmVn
aW9uc1tpbmRleF07CisgICAgfQorCisgICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUp
IHsKKyAgICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsK
KyAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOworICAgICAgICByID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7CisgICAgICAgIHIuc3R5bGUud2Vi
a2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiB0ZXN0KCkgewor
ICAgICAgICBkZWJ1ZygiRmxvdyBjb250ZW50Iik7CisgICAgICAgIGZsb3dDb250ZW50KCJhcnRp
Y2xlIik7CisKKyAgICAgICAgZGVidWcoIlRlc3QgaWYgdGhlIHJlZ2lvbnMgYXJlIGluIERPTSBv
cmRlciIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImdldFJlZ2lvbkF0KDApLmlk
IiwgInJlZ2lvbl8xIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZ2V0UmVnaW9u
QXQoMSkuaWQiLCAicmVnaW9uXzIiKTsKKworICAgICAgICBkZWJ1ZygiRW1wdHkgY29udGVudCIp
OworICAgICAgICBmbG93Q29udGVudChudWxsKTsKKyAgICB9CisgICAgdGVzdCgpOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctaW52YWxpZC1uYW1lLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlk
LW5hbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4NjZmMWQ4Y2YwMmIwYTE0MDA2YzMwNzNh
MDEyZWI4MGUyZGY4NzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctaW52YWxpZC1uYW1lLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEzIEBACitUZXN0IGZvciA3OTY4NTogW0NTU1JlZ2lvbnNdW0NTU09NXVByZXZlbnQg
Y3JlYXRpb24gb2YgTmFtZWRGbG93IG9iamVjdCBmb3IgaW52YWxpZCBmbG93IG5hbWUKKworT24g
c3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBzZXJpZXMgb2YgUEFTUyBiZWxvdy4KKworUEFTUwor
UEFTUworUEFTUworUEFTUworUEFTUworUEFTUworUEFTUworUEFTUworUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LWludmFs
aWQtbmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1l
ZC1mbG93LWludmFsaWQtbmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzMjZkODU4NTQzNGIwZjI5MjUy
YTkzNDBmZTEzMjk5ZDQ0MTQxNTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctaW52YWxpZC1uYW1lLmh0bWwKQEAgLTAs
MCArMSwzMCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAg
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9yZXNvdXJjZXMvcmVnaW9uLXN0eWxlLmNz
cyI+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3Njcmlw
dD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxwPlRlc3QgZm9yIDxhIGhyZWY9
Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTY4NSI+Nzk2ODU6IFtD
U1NSZWdpb25zXVtDU1NPTV1QcmV2ZW50IGNyZWF0aW9uIG9mIE5hbWVkRmxvdyBvYmplY3QgZm9y
IGludmFsaWQgZmxvdyBuYW1lPC9hPjwvcD4KKyAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNo
b3VsZCBzZWUgYSBzZXJpZXMgb2YgUEFTUyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9ImNv
bnNvbGUiPjwvZGl2PgorCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICAgICAgLy8gVHJ5IHNvbWUgaW52YWxpZCBuYW1lcy4gYXV0by9kZWZhdWx0
L2luaGVyaXQvaW5pdGlhbC9ub25lIHZhbHVlcyBhcmUgbm90IGFsbG93ZWQKKyAgICAgICAgICAg
IC8vIEVtcHR5IHN0cmluZyBhbmQgLTEycHggYXJlIG5vdCBpZGVudGlmaWVycywgc28gdGhleSBj
YW5ub3QgcmVwcmVzZW50IHZhbGlkIGZsb3cgbmFtZXMuCisgICAgICAgICAgICAvLyBWYWxpZCBm
bG93IG5hbWVzIGZvbGxvd2VkIGJ5IGFub3RoZXIgY3NzIHByb3BlcnR5IGRvIG5vdCBmb3JtIGEg
dmFsaWQgZmxvdyBuYW1lLgorICAgICAgICAgICAgdmFyIGFyckZsb3dJbnZhbGlkTmFtZXMgPSBb
ImF1dG8iLCAiZGVmYXVsdCIsICJpbmhlcml0IiwgImluaXRpYWwiLCAibm9uZSIsICIiLCAiLTEy
cHgiLCAiZmxvdzsgY29sb3I6IHJlZDsiXTsKKyAgICAgICAgICAgIHZhciBhcnJMZW4gPSBhcnJG
bG93SW52YWxpZE5hbWVzLmxlbmd0aDsKKyAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
YXJyTGVuOyArK2kpIHsKKyAgICAgICAgICAgICAgICB2YXIgbnVsbE5hbWVkRmxvdyA9IGdldEZs
b3dCeU5hbWUoYXJyRmxvd0ludmFsaWROYW1lc1tpXSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0
KG51bGxOYW1lZEZsb3cgPT0gbnVsbCwgIk5hbWVkIGZsb3cgZm9yICIgKyBhcnJGbG93SW52YWxp
ZE5hbWVzW2ldICsgIiBzaG91bGQgYmUgbnVsbCIpOworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAvLyBJdCBzaG91bGQgbm90IGJlIHBvc3NpYmxlIHRvIGdldCB0aGUgTmFtZWRGbG93IG9i
amVjdCBmb3IgYSBtaXNzaW5nIGZsb3cuCisgICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0
Rmxvd0J5TmFtZSgiZmxvdyIpOworICAgICAgICAgICAgYXNzZXJ0KG5hbWVkRmxvdyA9PSBudWxs
LCAiTmFtZWQgZmxvdyBmb3IgZmxvdyBzaG91bGQgYmUgbnVsbCIpOworICAgICAgICA8L3Njcmlw
dD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZp
ZWQtZmxvdy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjFlNWZlNGEzMTgzNWJhZWIyMmQxMjY0
ODY3MzIxZTlmMTk4ZjU3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93LWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDkgQEAKK1Rlc3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFt
ZWRGbG93IGludGVyZmFjZQorCitHZXR0aW5nIHRoZSB3ZWJraXQgZmxvdyBuYW1lIGZvciB0aGUg
cHJldmlvdXMgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LgorCitHZXR0aW5n
IHRoZSB3ZWJraXQgZmxvdyBuYW1lIGZvciB0aGUgbmV3IGZsb3cgc2hvdWxkIHJldHVybiBhIG5v
bi1udWxsIG9iamVjdC4KKworT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4K
KworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtp
dC1uYW1lZC1mbG93LW1vZGlmaWVkLWZsb3cuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93Lmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
N2Y4ODNjZWMzOWMxYjM2MTU3NmRiYTkwZjhkNWZlMzUyODgyNzc0YgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1tb2Rp
ZmllZC1mbG93Lmh0bWwKQEAgLTAsMCArMSw2MCBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4K
KyAgICA8IS0tCisgICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1lZEZsb3cgaW50
ZXJmYWNlKS4KKyAgICBNb2RpZnkgdGhlIGZsb3cgbmFtZSBmb3IgYW4gZXhpc3RpbmcgZmxvdyB0
aHJlYWQuIAorICAgIEdldHRpbmcgdGhlIHdlYmtpdCBmbG93IG5hbWUgZm9yIHRoZSBwcmV2aW91
cyBmbG93IHJldHVybnMgYSB2YWxpZCBvYmplY3QuCisgICAgR2V0dGluZyB0aGUgd2Via2l0IGZs
b3cgbmFtZSBmb3IgdGhlIG5ldyBmbG93IHJldHVybnMgYSB2YWxpZCBvYmplY3QuCisgICAgT24g
c3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93LgorICAgIC0tPgorICAgIDxoZWFk
PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIC5wYXNzIHsKKyAgICAgICAgICAgICAgICBm
b250LXdlaWdodDogYm9sZDsKKyAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIC5mYWlsIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdo
dDogYm9sZDsKKyAgICAgICAgICAgICAgICBjb2xvcjogcmVkOworICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICAuZmxvdyB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZs
b3c7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5mbG93MiB7CisgICAgICAgICAgICAg
ICAgLXdlYmtpdC1mbG93LWludG86IGZsb3cyOworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICAubm9GbG93IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogbm9uZTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHkgb25s
b2FkPSJ0ZXN0KCkiPgorICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBs
ZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+CisgICAgICAgIDxwPkdldHRpbmcgdGhl
IHdlYmtpdCBmbG93IG5hbWUgZm9yIHRoZSBwcmV2aW91cyBmbG93IHNob3VsZCByZXR1cm4gYSBu
b24tbnVsbCBvYmplY3QuPC9wPgorICAgICAgICA8cD5HZXR0aW5nIHRoZSB3ZWJraXQgZmxvdyBu
YW1lIGZvciB0aGUgbmV3IGZsb3cgc2hvdWxkIHJldHVybiBhIG5vbi1udWxsIG9iamVjdC48L3A+
CisgICAgICAgIDxwPk9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuPC9wPgor
ICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIiBjbGFzcz0iZmxvdyI+PC9kaXY+CisgICAgICAgIDxk
aXYgaWQ9InJlc3VsdCIgY2xhc3M9ImZhaWwiPkZBSUw8L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4K
KyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgZnVuY3Rpb24gdGVzdCgpCisgICAg
ICAgICAgICB7CisgICAgICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUo
ImZsb3ciKTsKKyAgICAgICAgICAgICAgICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUo
ImZsb3cyIik7CisgICAgICAgICAgICAgICAgaWYgKCFuYW1lZEZsb3cgJiYgbmFtZWRGbG93Mikg
eworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0Iiku
aW5uZXJUZXh0ID0gIlBBU1MiOworICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicmVzdWx0IikuY2xhc3NOYW1lID0gInBhc3MiOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFy
dGljbGUiKS5jbGFzc05hbWUgPSAiZmxvdzIiOworICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctbmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNDhlZjY1Njk1Nzk4ZTZmMTEwYzRiNzc0OGM4YzdkMWY2ZWQ2NTcyMAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1u
YW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEyIEBACitUaGlzIHRlc3RzIHRoZSBpbXBsZW1l
bnRhdGlvbiBvZiB0aGUgJ25hbWUnIGF0dHJpYnV0ZSBvbiB0aGUgTmFtZWRGbG93IG9iamVjdCBh
dHRhY2hlZCB0byBhIGZsb3cgdGhyZWFkLiBGb3IgbW9yZSBkZXRhaWxzIHNlZSBodHRwOi8vd3d3
LnczLm9yZy9UUi8yMDEyL1dELWNzczMtcmVnaW9ucy0yMDEyMDUwMy8jZG9tLW5hbWVkLWZsb3cK
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgbmFtZWRGbG93Lm5hbWUgaXMg
J2Zsb3ctbmFtZScKK1BBU1MgbmFtZWRGbG93Lm5hbWUgaXMgJ2Zsb3ctbmFtZScKK1BBU1MgbmFt
ZWRGbG93Lm5hbWUgaXMgJ2Zsb3ctbmFtZScKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYjVm
OTI4NDk5NTA1ZDg4Y2M0M2FhMDY3ZDY5NWVlMTY1ZWVhN2FjCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUuaHRt
bApAQCAtMCwwICsxLDUxIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpz
Ij48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICAuZmxvdyB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93
LW5hbWU7IH0KKyAgICAucmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3ctbmFtZTsgfQor
ICAgICNyZWdpb24geyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgfQorPC9zdHlsZT4KKzwv
aGVhZD4KKzxib2R5PgorICAgIDxwIGlkPSJhcnRpY2xlIiBjbGFzcz0iZmxvdyI+VGhlIGNvbnRl
bnQgZmxvdzwvcD4KKzxzY3JpcHQ+CisKK2Rlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoZSBpbXBs
ZW1lbnRhdGlvbiBvZiB0aGUgJ25hbWUnIGF0dHJpYnV0ZSBvbiB0aGUgTmFtZWRGbG93IG9iamVj
dCBhdHRhY2hlZCB0byBhIGZsb3cgdGhyZWFkLiBcCisgICAgICAgICAgICBGb3IgbW9yZSBkZXRh
aWxzIHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEyL1dELWNzczMtcmVnaW9ucy0yMDEyMDUw
My8jZG9tLW5hbWVkLWZsb3ciKTsKKworaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOworCisvLyBGbG93IGFydGljbGUgZG9lcyBub3QgaGF2ZSBhbnkg
cmVnaW9ucyB5ZXQKK3ZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93LW5hbWUiKTsK
KworLy8gVGhlIG5hbWUgc2hvdWxkIGJlICdmbG93LW5hbWUnIHdoZW4gdGhlcmUgYXJlIG5vIHJl
Z2lvbnMgdG8gZmxvdyBpbnRvCitzaG91bGRCZSgibmFtZWRGbG93Lm5hbWUiLCAiJ2Zsb3ctbmFt
ZSciKTsKKworLy8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhlIGNvbnRlbnQsIHRoZSBuYW1lIHNo
b3VsZCBiZSB0aGUgc2FtZQordmFyIHJlZ2lvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRp
diIpOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24pOworcmVnaW9uLmlkID0gInJl
Z2lvbiI7CityZWdpb24uY2xhc3NOYW1lID0gInJlZ2lvbiI7CisKKy8vIFRoZSBuYW1lIHNob3Vs
ZCBiZSAnZmxvdy1uYW1lJyB3aGVuIHRoZXJlIGFyZSByZWdpb25zIHRvIGZsb3cgaW50bworc2hv
dWxkQmUoIm5hbWVkRmxvdy5uYW1lIiwgIidmbG93LW5hbWUnIik7CisKK3ZhciBhcnRpY2xlID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKTsKKworLy8gUmVtb3ZlIHRoZSBmbG93
IGFuZCB0aGUgcmVnaW9uIGVsZW1lbnQsIG1vdmUgdGhlIE5hbWVkRmxvdyBvYmplY3QgaW4gdGhl
IE5VTEwgc3RhdGUKK3JlZ2lvbi5jbGFzc05hbWUgPSAiIjsKK2FydGljbGUuY2xhc3NOYW1lID0g
IiI7CityZWdpb24uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKK2FydGljbGUuc3R5bGUuZGlzcGxh
eSA9ICJub25lIjsKKworLy8gVGhlIG5hbWUgc2hvdWxkIGJlICdmbG93LW5hbWUnIHdoZW4gdGhl
IG5hbWVkIGZsb3cgaXMgaW4gdGhlIE5VTEwgc3RhdGUKK3Nob3VsZEJlKCJuYW1lZEZsb3cubmFt
ZSIsICInZmxvdy1uYW1lJyIpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ct
bm9uLWV4aXN0aW5nLWZsb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5lYTMyMWY3NGYzMGYyOWEyMWUwM2I4YTE1OThkNTZmZTdmYWY4Y2EzCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1l
ZC1mbG93LW5vbi1leGlzdGluZy1mbG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1Rl
c3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZQor
CitHZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3IgYSBub24tZXhpc3RhbnQgZmxv
dyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LgorCitPbiBzdWNjZXNzLCB5b3Ugc2hv
dWxkIHNlZSBQQVNTIGJlbG93LgorCitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbm9uLWV4aXN0aW5nLWZsb3cuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1ub24tZXhp
c3RpbmctZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1NmNiNmE5N2E1Mjc3ZDM5NGY0Mjc1NWI5NDM0
NTViMTljYjZkYzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Y3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctbm9uLWV4aXN0aW5nLWZsb3cuaHRtbApAQCAtMCwwICsx
LDQwIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorICAgIDwhLS0KKyAgICBUZXN0IGZvciBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIgKFtDU1NSZWdpb25z
XVtDU1NPTV0gSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgorICAgIFRlc3QgdGhhdCBn
ZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IGZvciBhIG5vbi1leGlzdGFudCBmbG93IHJldHVybnMg
YSBub24tbnVsbCBvYmplY3QuCisgICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNT
IGJlbG93LgorICAgIC0tPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAg
IC5wYXNzIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAgICAgICAgICAg
ICAgICBjb2xvcjogZ3JlZW47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC5mYWlsIHsK
KyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAgICAgICAgICAgICAgICBjb2xv
cjogcmVkOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKyAg
ICA8Ym9keT4KKyAgICAgICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTY2NjQyIj42NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50
IE5hbWVkRmxvdyBpbnRlcmZhY2U8L2E+PC9wPgorICAgICAgICA8cD5HZXR0aW5nIGEgV2ViS2l0
TmFtZWRGbG93IG9iamVjdCBmb3IgYSBub24tZXhpc3RhbnQgZmxvdyBzaG91bGQgcmV0dXJuIGEg
bm9uLW51bGwgb2JqZWN0LjwvcD4KKyAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3VsZCBz
ZWUgUEFTUyBiZWxvdy48L3A+CisgICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPjwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+CisgICAgICAgIDxz
Y3JpcHQ+CisgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cg
PSBnZXRGbG93QnlOYW1lKCJmbG93Iik7CisgICAgICAgICAgICBpZiAoIW5hbWVkRmxvdykgewor
ICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lclRl
eHQgPSAiUEFTUyI7CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
c3VsdCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsK
KyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1m
bG93LW92ZXJzZXQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA1ZWE1NzBlNGVjYmY1YTY2YzMy
ZTY3OTUxMDYyN2M0NzlmMmZmZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctb3ZlcnNldC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxOCBAQAorVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg3NDkxIFtDU1MgUmVnaW9uc11SZW5hbWUgTmFtZWRGbG93OjpvdmVyZmxvdyB0byBO
YW1lZEZsb3c6Om92ZXJzZXQuIEZvciBtb3JlIGRldGFpbHMgc2VlIGh0dHA6Ly93d3cudzMub3Jn
L1RSLzIwMTIvV0QtY3NzMy1yZWdpb25zLTIwMTIwNTAzLworCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyB0cnVlCitQQVNTIG5hbWVkRmxv
dy5vdmVyc2V0IGlzIGZhbHNlCitQQVNTIG5hbWVkRmxvdy5vdmVyc2V0IGlzIHRydWUKK1BBU1Mg
bmFtZWRGbG93Lm92ZXJzZXQgaXMgZmFsc2UKK1BBU1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMgdHJ1
ZQorUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyBmYWxzZQorUEFTUyBuYW1lZEZsb3cub3ZlcnNl
dCBpcyB0cnVlCitQQVNTIG5hbWVkRmxvdy5vdmVyc2V0IGlzIGZhbHNlCitQQVNTIG5hbWVkRmxv
dy5vdmVyc2V0IGlzIHRydWUKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20v
d2Via2l0LW5hbWVkLWZsb3ctb3ZlcnNldC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNGY2OTQz
YmE4NzE3OGY2MTIxNmQ0MGQ3MWJiYWFlODAzZTJhNjlhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQuaHRt
bApAQCAtMCwwICsxLDk5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBjaGFyc2V0PSJ1dGYtOCI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpz
Ij48L3NjcmlwdD4KKzxzdHlsZT4KKyAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsg
fQorICAgIC5mbG93IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3cgfQorICAgIC5yZWdpb24geyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzsgfQorICAgICNyZWdpb24geyB3aWR0aDogMjUwcHg7IGhl
aWdodDogNTBweDsgfQorICAgICNyZWdpb24yIHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7
IH0KKyAgICAjcmVnaW9uMyB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Cis8L3N0eWxl
PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJhcnRpY2xlIiBjbGFzcz0iZmxvdyI+CisgICAg
PHA+Q29udGVudCBpbnNpZGUgYXJ0aWNsZTwvcD4KKzwvZGl2PgorPHNjcmlwdD4KKyAgICBkZXNj
cmlwdGlvbigiVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTg3NDkxIFtDU1MgUmVnaW9uc11SZW5hbWUgTmFtZWRGbG93OjpvdmVyZmxvdyB0byBOYW1lZEZs
b3c6Om92ZXJzZXQuIFwKKyAgICAgICAgICAgICAgICBGb3IgbW9yZSBkZXRhaWxzIHNlZSBodHRw
Oi8vd3d3LnczLm9yZy9UUi8yMDEyL1dELWNzczMtcmVnaW9ucy0yMDEyMDUwMy8iKTsKKworICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFz
VGV4dCgpOworCisgICAgLy8gRmxvdyBhcnRpY2xlIGRvZXMgbm90IGhhdmUgYW55IHJlZ2lvbnMg
eWV0CisgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKKworICAgIC8v
IE92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIGZvciBhIGZsb3cgd2l0aG91dCByZWdpb25zCisgICAg
c2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgInRydWUiKTsKKworICAgIC8vIEFkZCBhIHJl
Z2lvbiB0byB0YWtlIHRoZSBjb250ZW50LCBvdmVyc2V0IHNob3VsZCBiZSBmYWxzZSBzaW5jZSB0
aGUgY29udGVudCBmaXJzdCB0aGUgcmVnaW9ucy4KKyAgICB2YXIgcmVnaW9uID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdp
b24pOworICAgIHJlZ2lvbi5pZCA9ICJyZWdpb24iOworICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAi
cmVnaW9uIjsKKworICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRoZSBjb250
ZW50IGZpdHMgdGhlIHJlZ2lvbnMKKyAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJzZXQiLCAi
ZmFsc2UiKTsKKworICAgIC8vIEFkZCBtb3JlIGNvbnRlbnQgdG8gdGhlIGZsb3csIG92ZXJzZXQg
c2hvdWxkIGJlIHRydWUuCisgICAgdmFyIHAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7
CisgICAgcC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiQ29udGVudCBpbnNp
ZGUgYXJ0aWNsZSIpKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFw
cGVuZENoaWxkKHApOworCisgICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgdHJ1ZSBzaW5jZSB0aGUg
Y29udGVudCBkb2VzIG5vdCBmaXQgdGhlIHJlZ2lvbnMKKyAgICBzaG91bGRCZSgibmFtZWRGbG93
Lm92ZXJzZXQiLCAidHJ1ZSIpOworCisgICAgLy8gQWRkIGFub3RoZXIgcmVnaW9uLCBvdmVyc2V0
IHNob3VsZCBiZSBmYWxzZQorICAgIHZhciByZWdpb24yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24yKTsKKyAgICBy
ZWdpb24yLmlkID0gInJlZ2lvbjIiOworICAgIHJlZ2lvbjIuY2xhc3NOYW1lID0gInJlZ2lvbiI7
CisKKyAgICAvLyBPdmVyc2V0IHNob3VsZCBiZSBmYWxzZSBzaW5jZSB0aGUgY29udGVudCBmaXRz
IGluIHRoZSByZWdpb25zCisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgImZhbHNl
Iik7CisKKyAgICAvLyBBZGQgdmlzdWFsIG92ZXJzZXQsIG92ZXJzZXQgc2hvdWxkIGJlIHRydWUu
CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS53ZWJraXRCb3hT
aGFkb3c9IjBweCA1MHB4IGxpbWUiOworCisgICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgdHJ1ZSBz
aW5jZSB0aGUgY29udGVudCBkb2VzIG5vdCBmaXQgaW4gcmVnaW9ucworICAgIHNob3VsZEJlKCJu
YW1lZEZsb3cub3ZlcnNldCIsICJ0cnVlIik7CisKKyAgICAvLyBBZGQgdGhlIHRoaXJkIHJlZ2lv
biwgb3ZlcnNldCBzaG91bGQgYmUgZmFsc2UuCisgICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lv
bjMpOworICAgIHJlZ2lvbjMuaWQgPSAicmVnaW9uMyI7CisgICAgcmVnaW9uMy5jbGFzc05hbWUg
PSAicmVnaW9uIjsKKworICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRoZSBj
b250ZW50IGZpdHMgaW4gcmVnaW9ucworICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIs
ICJmYWxzZSIpOworCisgICAgLy8gUmVtb3ZlIHRoZSBmaXJzdCByZWdpb24gZnJvbSB0aGUgZmxv
dywgb3ZlcnNldCBzaG91bGQgYmUgdHJ1ZS4KKyAgICByZWdpb24uY2xhc3NOYW1lID0gIiI7CisK
KyAgICAvLyBPdmVyc2V0IHNob3VsZCBiZSB0cnVlIHNpbmNlIHRoZSBjb250ZW50IGRvZXMgbm90
IGZpdCB0aGUgcmVnaW9ucworICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJ0cnVl
Iik7CisKKyAgICAvLyBSZW1vdmUgdGhlIGNvbnRlbnQgZnJvbSB0aGUgZmxvdywgb3ZlcnNldCBz
aG91bGQgYmUgZmFsc2UuCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5j
bGFzc05hbWUgPSAiIjsKKworICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRo
ZSBmbG93IGRvZXMgbm90IGhhdmUgYW55IGNvbnRlbnQKKyAgICBzaG91bGRCZSgibmFtZWRGbG93
Lm92ZXJzZXQiLCAiZmFsc2UiKTsKKworICAgIC8vIFJlbW92ZSBhbGwgdGhlIHJlZ2lvbnMgZnJv
bSB0aGUgZmxvdworICAgIHJlZ2lvbjIuY2xhc3NOYW1lID0gcmVnaW9uMy5jbGFzc05hbWUgPSAi
IjsKKworICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJlIHRydWUgc2luY2UgdGhlIGZsb3cgZG9lcyBu
b3QgaGF2ZSBhbnkgcmVnaW9uIGNoYWluCisgICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0
IiwgInRydWUiKTsKKworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5
bGUuZGlzcGxheSA9ICJub25lIjsKKyAgICByZWdpb24uc3R5bGUuZGlzcGxheSA9ICJub25lIjsK
KyAgICByZWdpb24yLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CisgICAgcmVnaW9uMy5zdHlsZS5k
aXNwbGF5ID0gIm5vbmUiOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctcmVt
b3ZlZC1mbG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93
ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3ctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNh
NGMyMjgwOTZmYjVjMjJmMjM1YTYwOWJlMGY1Y2Q2ZGE1ZTQxZDIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctcmVtb3Zl
ZC1mbG93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAKK1Rlc3QgZm9yIDY2NjQyOiBbQ1NT
UmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZQorCitHZXR0aW5nIGEgV2ViS2l0
TmFtZWRGbG93IG9iamVjdCBmb3IgYSBmbG93IHRoYXQgd2FzIHJlbW92ZWQgcmV0dXJucyBhIG5v
bi1udWxsIG9iamVjdC4KKworT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4K
KworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nzc29tL3dlYmtp
dC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2Nzc29tL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY0
ZDkxZGQwNDc2M2ZiYTQ0MTYzNDA1OTdlZTdmNTk3MTg1OGNiZDIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctcmVtb3Zl
ZC1mbG93Lmh0bWwKQEAgLTAsMCArMSw1NiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKyAg
ICA8IS0tCisgICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJm
YWNlKS4KKyAgICBUZXN0IHRoYXQgZ2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBmb3IgYSBmbG93
IHRoYXQgd2FzIHJlbW92ZWQgcmV0dXJucyBhIHZhbGlkIG5vbi1udWxsIG9iamVjdC4KKyAgICBP
biBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBhIFBBU1MgYmVsb3cuCisgICAgLS0+CisgICAgPGhl
YWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvaGVscGVyLmpzIj48L3Njcmlw
dD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAgLnBhc3MgeworICAgICAgICAgICAgICAg
IGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICAgICAgICAgIGNvbG9yOiBncmVlbjsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgLmZhaWwgeworICAgICAgICAgICAgICAgIGZvbnQtd2Vp
Z2h0OiBib2xkOworICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIC5mbG93IHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzog
ZmxvdzsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLm5vRmxvdyB7CisgICAgICAgICAg
ICAgICAgLXdlYmtpdC1mbG93LWludG86IG5vbmU7CisgICAgICAgICAgICB9CisgICAgICAgIDwv
c3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5IG9ubG9hZD0idGVzdCgpIj4KKyAgICAgICAg
PHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY2NjQyIj42NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZh
Y2U8L2E+PC9wPgorICAgICAgICA8cD5HZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBm
b3IgYSBmbG93IHRoYXQgd2FzIHJlbW92ZWQgcmV0dXJucyBhIG5vbi1udWxsIG9iamVjdC48L3A+
CisgICAgICAgIDxwPk9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuPC9wPgor
ICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIiBjbGFzcz0iZmxvdyI+PC9kaXY+CisgICAgICAgIDxk
aXYgaWQ9InJlc3VsdCIgY2xhc3M9ImZhaWwiPkZBSUw8L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4K
KyAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgICAgICAgICAgLy8gR2V0IHRoZSBuYW1lZCBmbG93
IG9iamVjdCBiZWZvcmUgcmVtb3ZpbmcgdGhlIGZsb3cgdGhyZWFkLgorICAgICAgICAgICAgdmFy
IG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKKyAgICAgICAgICAgIHZhciBuYW1l
ZEZsb3cyOworCisgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0KCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOworICAgICAg
ICAgICAgICAgIGlmIChuYW1lZEZsb3cgJiYgIW5hbWVkRmxvdzIpIHsKKyAgICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVyVGV4dCA9ICJQQVNT
IjsKKyAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIp
LmNsYXNzTmFtZSA9ICJwYXNzIjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisK
KyAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuY2xhc3NOYW1l
ID0gIm5vRmxvdyI7CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxv
dy1zYW1lLW9iamVjdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nz
b20vd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1vYmplY3QtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjhkZjBlYTYwZjgyZmQ4NzI5NGQ0Njk4MDgyMDI5ZjczYWZlY2E2ZTcKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvY3Nzb20vd2Via2l0LW5hbWVkLWZsb3ctc2Ft
ZS1vYmplY3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorVGVzdCBmb3IgNjY2NDI6IFtD
U1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlCisKK0Fza2luZyBmb3IgdGhl
IHNhbWUgd2Via2l0IG5hbWVkIGZsb3cgdHdpY2Ugc2hvdWxkIHJldHVybiB0aGUgc2FtZSBub24t
bnVsbCBvYmplY3QuCisKK09uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCisK
K1BBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQt
bmFtZWQtZmxvdy1zYW1lLW9iamVjdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Nz
c29tL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUtb2JqZWN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjIyMGZj
ZWUxZGIxNjQyOTg3NzhiZjkwZTc3YTgyY2Q4NDM2MzNmNQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9jc3NvbS93ZWJraXQtbmFtZWQtZmxvdy1zYW1lLW9iamVj
dC5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+CisgICAgPCEt
LQorICAgIFRlc3QgZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
NjY0MiAoW0NTU1JlZ2lvbnNdW0NTU09NXSBJbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZSku
CisgICAgVGVzdCB0aGF0IGFza2luZyBmb3IgdGhlIHNhbWUgd2Via2l0IG5hbWVkIGZsb3cgdHdp
Y2UgcmV0dXJucyB0aGUgc2FtZSBvYmplY3QuCisgICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBz
ZWUgYSBQQVNTIGJlbG93LgorICAgIC0tPgorICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzdHlsZT4KKyAg
ICAgICAgICAgIC5wYXNzIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAg
ICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IC5mYWlsIHsKKyAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKKyAgICAgICAgICAg
ICAgICBjb2xvcjogcmVkOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuZmxvdyB7Cisg
ICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorICAgIDxib2R5PgorICAgICAgICA8cD5UZXN0
IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2
NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZTwvYT48
L3A+CisgICAgICAgIDxwPkFza2luZyBmb3IgdGhlIHNhbWUgd2Via2l0IG5hbWVkIGZsb3cgdHdp
Y2Ugc2hvdWxkIHJldHVybiB0aGUgc2FtZSBub24tbnVsbCBvYmplY3QuPC9wPgorICAgICAgICA8
cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LjwvcD4KKyAgICAgICAgPGRp
diBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJyZXN1
bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CisKKyAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJm
bG93Iik7CisgICAgICAgICAgICB2YXIgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3ci
KTsKKyAgICAgICAgICAgIGlmIChuYW1lZEZsb3cgPT09IG5hbWVkRmxvdzIpIHsKKyAgICAgICAg
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gIlBB
U1MiOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5j
bGFzc05hbWUgPSAicGFzcyI7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAg
IDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9l
bGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLWV4cGVjdGVkLnR4dApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzE2Y2I1ZGZjNjZkYWQwM2FiMTllMzUwYTYyMzA3
ZTg5ZmUzZTA5Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi1UZXN0cyBFbGVtZW50
LndlYmtpdFJlZ2lvbk92ZXJzZXQgYXR0cmlidXRlCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotICAKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZW1wdHkiCi1QQVNT
IHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMgImVtcHR5IgotUEFTUyByZWdpb25PdmVyc2V0
KCdyZWdpb25fMycpIGlzICJlbXB0eSIKLUZsb3cgY29udGVudAotUEFTUyByZWdpb25PdmVyc2V0
KCdyZWdpb25fMScpIGlzICJmaXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykgaXMg
ImZpdCIKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHkiCi1BZGQgbW9y
ZSBjb250ZW50Ci1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImZpdCIKLVBBU1Mg
cmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZml0IgotUEFTUyByZWdpb25PdmVyc2V0KCdy
ZWdpb25fMycpIGlzICJmaXQiCi1BZGQgdmlzdWFsIG92ZXJmbG93Ci1QQVNTIHJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8xJykgaXMgImZpdCIKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBp
cyAiZml0IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJvdmVyc2V0IgotRW1w
dHkgY29udGVudAotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJlbXB0eSIKLVBB
U1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZW1wdHkiCi1QQVNTIHJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8zJykgaXMgImVtcHR5IgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVy
c2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNTJmNWVkM2JlM2RjMDhlMmEwMWJmOTUwOGIyZGE5YjQwZTg0
NzY0Mi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS1uZWdhdGl2
ZS1sZXR0ZXItc3BhY2luZy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMSArMCww
IEBACi1UZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lvbk92ZXJzZXQgYXR0cmlidXRlCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHJlZ2lvbl8xLndlYmtpdFJlZ2lvbk92ZXJz
ZXQgaXMgImZpdCIKLVBBU1MgcmVnaW9uXzIud2Via2l0UmVnaW9uT3ZlcnNldCBpcyAiZW1wdHki
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQt
c3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5n
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMyMjEwODdiNzUxM2MzOTBkNmM5
OGI4MGZjZTg0OWZmODQxYmYyZDguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJz
ZXQtc3RhdGUtbmVnYXRpdmUtbGV0dGVyLXNwYWNpbmcuaHRtbAorKysgL2Rldi9udWxsCkBAIC0x
LDQ1ICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4KLSNjb250ZW50IHsKLSAgICAtd2Vi
a2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKLSAgICBsZXR0ZXItc3BhY2luZzogLTFweDsKLSAgICBk
aXJlY3Rpb246IHJ0bDsKLX0KLSNyZWdpb25fMSwgI3JlZ2lvbl8yewotICAgIC13ZWJraXQtZmxv
dy1mcm9tOiBhcnRpY2xlOwotICAgIG92ZXJzZXQ6dmlzaWJsZTsKLSAgICBkaXNwbGF5OmlubGlu
ZS1ibG9jazsKLSAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7Ci0gICAgbWFyZ2luOjEwcHg7Ci19Ci0K
LSNyZWdpb25fMSB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IH0KLSNyZWdpb25fMiB7IGhl
aWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IH0KLQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5Pgot
PGgxIGlkPSJjb250ZW50Ij5Mb3JlbSBpcHN1bTwvaDE+Ci08ZGl2IGlkPSJyZWdpb25fMSI+PC9k
aXY+Ci08ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0gICAgZGVzY3JpcHRp
b24oIlRlc3RzIEVsZW1lbnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1dGUiKQotICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
LSAgICB9Ci0gICAgdmFyIHJlZ2lvbl8xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bl8xIik7Ci0gICAgdmFyIHJlZ2lvbl8yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bl8yIik7Ci0gICAgdmFyIGNvbnRlbnQgPSAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRl
bnQiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbl8xLndlYmtpdFJlZ2lvbk92
ZXJzZXQiLCAiZml0Iik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25fMi53ZWJr
aXRSZWdpb25PdmVyc2V0IiwgImVtcHR5Iik7Ci0gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGls
ZChyZWdpb25fMSk7Ci0gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyZWdpb25fMik7Ci0g
ICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChjb250ZW50KTsKLQotPC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGlj
YWwtcmwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVn
aW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA3MTZjYjVkZmM2NmRhZDAzYWIxOWUzNTBhNjIzMDdlODlmZTNlMDli
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJlZ2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJs
LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAKLVRlc3RzIEVsZW1l
bnQud2Via2l0UmVnaW9uT3ZlcnNldCBhdHRyaWJ1dGUKLQotT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgotCi0gIAotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMScpIGlzICJlbXB0eSIKLVBB
U1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBpcyAiZW1wdHkiCi1QQVNTIHJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8zJykgaXMgImVtcHR5IgotRmxvdyBjb250ZW50Ci1QQVNTIHJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8xJykgaXMgImZpdCIKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSBp
cyAiZml0IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIGlzICJlbXB0eSIKLUFkZCBt
b3JlIGNvbnRlbnQKLVBBU1MgcmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgotUEFT
UyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJmaXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQo
J3JlZ2lvbl8zJykgaXMgImZpdCIKLUFkZCB2aXN1YWwgb3ZlcmZsb3cKLVBBU1MgcmVnaW9uT3Zl
cnNldCgncmVnaW9uXzEnKSBpcyAiZml0IgotUEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicp
IGlzICJmaXQiCi1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykgaXMgIm92ZXJzZXQiCi1F
bXB0eSBjb250ZW50Ci1QQVNTIHJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykgaXMgImVtcHR5Igot
UEFTUyByZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIGlzICJlbXB0eSIKLVBBU1MgcmVnaW9uT3Zl
cnNldCgncmVnaW9uXzMnKSBpcyAiZW1wdHkiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0
dGVyLXNwYWNpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1l
bnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNwYWNp
bmctZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMWQxNGI2MTM2
ODUxODNiZjFmMDdiZDQ5MTRlY2NiNmVjOGU4MDY5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9lbGVtZW50LXJl
Z2lvbi1vdmVyc2V0LXN0YXRlLXZlcnRpY2FsLXJsLW5lZ2F0aXZlLWxldHRlci1zcGFjaW5nLWV4
cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLVRlc3RzIEVsZW1lbnQu
d2Via2l0UmVnaW9ub3ZlcnNldCBhdHRyaWJ1dGUKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgotCi0KLVBBU1MgcmVnaW9uXzEud2Via2l0UmVnaW9uT3ZlcnNldCBpcyAiZml0IgotUEFTUyBy
ZWdpb25fMi53ZWJraXRSZWdpb25PdmVyc2V0IGlzICJlbXB0eSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1u
ZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Vs
ZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwtbmVnYXRpdmUtbGV0dGVyLXNw
YWNpbmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGFjMjFkMTk3NDQ3MTA5
N2U2MGIxOWM5NzlkNzFiYmJhYzU4MjczZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24t
b3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC1uZWdhdGl2ZS1sZXR0ZXItc3BhY2luZy5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsNTAgKzAsMCBAQAotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotaHRt
bCB7Ci0gICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOwotfQotI2NvbnRlbnQg
ewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGxldHRlci1zcGFjaW5nOiAt
MXB4OwotICAgIGRpcmVjdGlvbjogcnRsOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAg
LXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7Ci0gICAgb3ZlcnNldDp2aXNpYmxlOwotICAgIGRp
c3BsYXk6aW5saW5lLWJsb2NrOwotICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46
MTBweDsKLX0KLQotI3JlZ2lvbl8xIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgfQotI3Jl
Z2lvbl8yIHsgaGVpZ2h0OjExMHB4OyB3aWR0aDoyMDBweDsgfQotCi08L3N0eWxlPgotPC9oZWFk
PgotPGJvZHk+Ci08aDEgaWQ9ImNvbnRlbnQiPkxvcmVtIGlwc3VtPC9oMT4KLQotPGRpdiBpZD0i
cmVnaW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotCi08c2NyaXB0Pgot
ICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lvbm92ZXJzZXQgYXR0cmli
dXRlIikKLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7Ci0gICAgfQotICAgIHZhciByZWdpb25fMSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb25fMSIpOwotICAgIHZhciByZWdpb25fMiA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb25fMiIpOwotICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uXzEu
d2Via2l0UmVnaW9uT3ZlcnNldCIsICJmaXQiKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbl8yLndlYmtpdFJlZ2lvbk92ZXJzZXQiLCAiZW1wdHkiKTsKLSAgICB2YXIgY29udGVu
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250ZW50Iik7Ci0gICAgZG9jdW1lbnQuYm9k
eS5yZW1vdmVDaGlsZChyZWdpb25fMSk7Ci0gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChy
ZWdpb25fMik7Ci0gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChjb250ZW50KTsKLSAgIAot
Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3Zl
cnNldC1zdGF0ZS12ZXJ0aWNhbC1ybC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Vs
ZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUtdmVydGljYWwtcmwuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZjkwYjQ3ZDY0NGE4NDc4MDRkYjFmMmNiZmU0ZjE0NjdkNDE3ODlh
My4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS12ZXJ0aWNhbC1y
bC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTA5ICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxz
dHlsZT4KLWh0bWwgey13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDt9Ci1ib2R5IHsg
Zm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQotCi0jYXJ0aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93
LWludG86IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Ci19Ci0KLSNyZWdp
b25fMSwgI3JlZ2lvbl8yLCAjcmVnaW9uXzMgewotICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19h
cnRpY2xlOwotICAgIG92ZXJmbG93OnZpc2libGU7Ci0gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7
Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQotCi0uYmxvY2sg
ewotICAgZGlzcGxheTpibG9jazsKLX0KLQotI3JlZ2lvbl8xIHsgaGVpZ2h0OjExMHB4OyB3aWR0
aDoyMDBweDsgYm9yZGVyOjFweCBzb2xpZCAjYTBhMGEwOyB9Ci0jcmVnaW9uXzIgeyBoZWlnaHQ6
MTEwcHg7IHdpZHRoOjIwMHB4OyBib3JkZXI6MXB4IHNvbGlkIGJsYWNrIH0KLSNyZWdpb25fMyB7
IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IGJvcmRlcjoxcHggc29saWQgI2EwYTBhMDsgfQot
Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiIgY2xhc3M9
ImJsb2NrIj48L2Rpdj4KLTxkaXYgaWQ9ImFydGljbGUiPgotICAgIDxkaXY+Ci0gICAgICAgIDxk
aXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJ3aWR0aDogMzk2cHg7IGJhY2tncm91bmQtY29sb3I6IGdy
ZWVuOyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uXzEiPjwv
ZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzMiPjwvZGl2
PgotCi08ZGl2IGlkPSJjb25zb2xlIiBjbGFzcz0iYmxvY2siPjwvZGl2PgotCi08c2NyaXB0Pgot
ICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBFbGVtZW50LndlYmtpdFJlZ2lvbk92ZXJzZXQgYXR0cmli
dXRlIikKLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7Ci0gICAgfQotICAgIGZ1bmN0aW9uIHJlZ2lvbk92ZXJzZXQoaWQpIHsKLSAg
ICAgICAgdmFyIGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7Ci0gICAgICAgIHJldHVy
biBlLndlYmtpdFJlZ2lvbk92ZXJzZXQ7Ci0gICAgfQotICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50
KGZsb3dOYW1lKSB7Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbl8xIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAg
ICAgICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICBy
LnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgICAgIHIgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uXzMiKTsKLSAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJv
bSA9IGZsb3dOYW1lOwotICAgIH0KLSAgICBmdW5jdGlvbiBhZGRWaXN1YWxPdmVyZmxvdygpIHsK
LSAgICAgICAgdmFyIGMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwotICAg
ICAgICBjLnN0eWxlLndlYmtpdEJveFNoYWRvdz0iLTMwcHggMHB4IGxpbWUiOwotICAgIH0KLSAg
ICBmdW5jdGlvbiBhZGRNb3JlQ29udGVudCgpIHsKLSAgICAgICAgdmFyIGMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiY29udGVudCIpOwotICAgICAgICBjLnN0eWxlLndpZHRoID0gNTk2Owot
ICAgIH0KLQotICAgIGZ1bmN0aW9uIHRlc3QoKSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSIsICJlbXB0eSIpOwotICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZW1wdHkiKTsK
LSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycp
IiwgImVtcHR5Iik7Ci0KLSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAgICBm
bG93Q29udGVudCgiYXJ0aWNsZSIpOwotCi0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uT3ZlcnNldCgncmVnaW9uXzEnKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImZpdCIpOwotICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZW1wdHki
KTsKLQotICAgICAgICBkZWJ1ZygiQWRkIG1vcmUgY29udGVudCIpOwotICAgICAgICBhZGRNb3Jl
Q29udGVudCgpOwotCi0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNl
dCgncmVnaW9uXzEnKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImZpdCIpOwotICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8zJykiLCAiZml0Iik7Ci0KLSAgICAgICAg
ZGVidWcoIkFkZCB2aXN1YWwgb3ZlcmZsb3ciKTsKLSAgICAgICAgYWRkVmlzdWFsT3ZlcmZsb3co
KTsKLQotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lv
bl8xJykiLCAiZml0Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3Zl
cnNldCgncmVnaW9uXzInKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgIm92ZXJzZXQiKTsKLQotICAgICAgICBkZWJ1
ZygiRW1wdHkgY29udGVudCIpOwotICAgICAgICBmbG93Q29udGVudCgibm9fYXJ0aWNsZSIpOwot
Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzEn
KSIsICJlbXB0eSIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJz
ZXQoJ3JlZ2lvbl8yJykiLCAiZW1wdHkiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgImVtcHR5Iik7Ci0gICAgfQotCi0gICAgdGVz
dCgpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2VsZW1lbnQtcmVnaW9uLW92ZXJzZXQtc3RhdGUuaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjcyOWZlMGQ1M2ZiYjJmZGVjNjlhM2MwZmU4ZmY1
NzJlOTQ2MTczMC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZWxlbWVudC1yZWdpb24tb3ZlcnNldC1zdGF0ZS5o
dG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTAxICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzdHls
ZT4KLSNhcnRpY2xlIHsKLSAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKLSAgICBib3Jk
ZXI6IDJweCBzb2xpZCBibGFjazsKLX0KLSNyZWdpb25fMSwgI3JlZ2lvbl8yLCAjcmVnaW9uXzMg
ewotICAgIC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOwotICAgIG92ZXJmbG93OnZpc2li
bGU7Ci0gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwot
ICAgIG1hcmdpbjoxMHB4OwotfQotLmJsb2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVn
aW9uXzEgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyB9Ci0jcmVnaW9uXzIgeyBoZWlnaHQ6
MTEwcHg7IHdpZHRoOjIwMHB4OyB9Ci0jcmVnaW9uXzMgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIw
MHB4OyB9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJkZXNjcmlwdGlvbiIg
Y2xhc3M9ImJsb2NrIj48L2Rpdj4KLTxkaXYgaWQ9ImFydGljbGUiPgotICAgIDxkaXY+Ci0gICAg
ICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIxNnB4OyBiYWNrZ3JvdW5kLWNv
bG9yOiBncmVlbjsiPjwvZGl2PgotICAgIDwvZGl2PgotPC9kaXY+Ci0KLTxkaXYgaWQ9InJlZ2lv
bl8xIj48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbl8z
Ij48L2Rpdj4KLQotPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KLQotPHNj
cmlwdD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdHMgRWxlbWVudC53ZWJraXRSZWdpb25PdmVyc2V0
IGF0dHJpYnV0ZSIpCi0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIH0KLSAgICBmdW5jdGlvbiByZWdpb25PdmVyc2V0KGlk
KSB7Ci0gICAgICAgIHZhciBlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpOwotICAgICAg
ICByZXR1cm4gZS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAgIH0KLSAgICBmdW5jdGlvbiBmbG93
Q29udGVudChmbG93TmFtZSkgewotICAgICAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJyZWdpb25fMSIpOwotICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05h
bWU7Ci0gICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzIiKTsKLSAg
ICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICByID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8zIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0
Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICB9Ci0gICAgZnVuY3Rpb24gYWRkVmlzdWFsT3ZlcmZs
b3coKSB7Ci0gICAgICAgIHZhciBjID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUi
KTsKLSAgICAgICAgYy5zdHlsZS53ZWJraXRCb3hTaGFkb3c9IjBweCAzMHB4IGxpbWUiOwotICAg
IH0KLSAgICBmdW5jdGlvbiBhZGRNb3JlQ29udGVudCgpIHsKLSAgICAgICAgdmFyIGMgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudCIpOwotICAgICAgICBjLnN0eWxlLmhlaWdodCA9
IDMyNjsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiB0ZXN0KCkgewotICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZW1wdHkiKTsKLSAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMicpIiwgImVt
cHR5Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVn
aW9uXzMnKSIsICJlbXB0eSIpOwotCi0gICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQiKTsKLSAg
ICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLQotICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZml0Iik7Ci0gICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJmaXQiKTsKLSAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwg
ImVtcHR5Iik7Ci0KLSAgICAgICAgZGVidWcoIkFkZCBtb3JlIGNvbnRlbnQiKTsKLSAgICAgICAg
YWRkTW9yZUNvbnRlbnQoKTsKLQotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lv
bk92ZXJzZXQoJ3JlZ2lvbl8xJykiLCAiZml0Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzInKSIsICJmaXQiKTsKLSAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0KCdyZWdpb25fMycpIiwgImZpdCIpOwotCi0g
ICAgICAgIGRlYnVnKCJBZGQgdmlzdWFsIG92ZXJmbG93Iik7Ci0gICAgICAgIGFkZFZpc3VhbE92
ZXJmbG93KCk7Ci0KLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25PdmVyc2V0
KCdyZWdpb25fMScpIiwgImZpdCIpOwotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbk92ZXJzZXQoJ3JlZ2lvbl8yJykiLCAiZml0Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJvdmVyc2V0Iik7Ci0KLSAgICAg
ICAgZGVidWcoIkVtcHR5IGNvbnRlbnQiKTsKLSAgICAgICAgZmxvd0NvbnRlbnQoIm5vX2FydGlj
bGUiKTsKLQotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbk92ZXJzZXQoJ3Jl
Z2lvbl8xJykiLCAiZW1wdHkiKTsKLSAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdp
b25PdmVyc2V0KCdyZWdpb25fMicpIiwgImVtcHR5Iik7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uT3ZlcnNldCgncmVnaW9uXzMnKSIsICJlbXB0eSIpOwotICAgIH0KLSAg
ICB0ZXN0KCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91
bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3ZWYyMmU5YTQzMWFkMDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQKKysr
IC9kZXYvbnVsbApAQCAtMSArMCwwIEBACi1QQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRh
bC1idC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRl
bnQtYm91bmRpbmctY2xpZW50LXJlY3QtaG9yaXpvbnRhbC1idC1leHBlY3RlZC50eHQKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlZjIyZTlhNDMxYWQwMjcyNzEzYjcxZmRjODc5NDAx
NmM4ZWYxMmYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNsaWVudC1y
ZWN0LWhvcml6b250YWwtYnQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBA
QAotUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250
ZW50LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1ob3Jpem9u
dGFsLWJ0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBiNTBhZGQxNGZhZmRj
MjJmZGExMDM1M2ExMjFlNzk4MDg2ZTY5MzIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50
LWJvdW5kaW5nLWNsaWVudC1yZWN0LWhvcml6b250YWwtYnQuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDU1ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotCi08bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9InJlc291cmNlcy9yZWdpb24tc3R5bGUuY3NzIj48L2xpbms+Ci08c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiIHNyYz0icmVzb3VyY2VzL2hlbHBlci5q
cyI+PC9zY3JpcHQ+Ci0KLTxzdHlsZT4KLSAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6
IGhvcml6b250YWwtYnQ7IH0KLQotICAgIGJvZHkgeyBtYXJnaW46IDEwcHg7IH0KLQotICAgICNy
ZWdpb24xIHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAgICBsZWZ0OiAxMDBw
eDsKLSAgICAgICAgdG9wOiAxMHB4OwotICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVp
Z2h0OiAxMDBweDsKLSAgICB9Ci0KLSAgICAjcmVnaW9uMiB7Ci0gICAgICAgIHBvc2l0aW9uOiBh
YnNvbHV0ZTsKLSAgICAgICAgdG9wOiAxMHB4OwotICAgICAgICBsZWZ0OiAyMDBweDsKLSAgICAg
ICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICAgICAgcGFkZGluZzog
MTBweCAyMHB4IDMwcHggNDBweDsKLSAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0g
ICAgfQotICAgIAotICAgIC5maW5pc2hlZCAjcmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24yIHsK
LSAgICAgICAgZGlzcGxheTogbm9uZTsKLSAgICB9Ci08L3N0eWxlPgotCi08ZGl2IGlkPSJmbG93
IiBjbGFzcz0iZmxvd0FydGljbGUiPgotICAgIDxkaXYgaWQ9ImdyZWVuIiBjbGFzcz0iZ3JlZW5C
b3giPjwvZGl2PgotICAgIDxkaXYgaWQ9ImJsdWUiIGNsYXNzPSJibHVlQm94Ij48L2Rpdj4KLSAg
ICA8ZGl2IGlkPSJvcmFuZ2UiIGNsYXNzPSJvcmFuZ2VCb3giPjwvZGl2PgotPC9kaXY+Ci0KLTxk
aXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJyZWdpb25BcnRpY2xlIj48L2Rpdj4KLTxkaXYgaWQ9InJl
Z2lvbjIiIGNsYXNzPSJyZWdpb25BcnRpY2xlIj48L2Rpdj4KLQotPHNjcmlwdD4KLSAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0g
ICAgdmFyIGV4cGVjdGVkQm91bmRpbmdSZWN0cyA9IHsKLSAgICAgICAgZ3JlZW46IFs2MCwgMTAw
LCAxMTAsIDE1MCwgNTAsIDUwXSwKLSAgICAgICAgYmx1ZTogWzEwLCAxMDAsIDYwLCAxNTAsIDUw
LCA1MF0sCi0gICAgICAgIG9yYW5nZTogWzIxLCAyNDEsIDcxLCAyOTEsIDUwLCA1MF0KLSAgICB9
OwotICAgIAotICAgIGlmICh0ZXN0Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMp
KQotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hlZCI7Ci08L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1i
b3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZWYyMmU5YTQzMWFk
MDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVu
dC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSArMCwwIEBACi1QQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtcmwtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5n
LWNsaWVudC1yZWN0LXZlcnRpY2FsLXJsLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggN2VmMjJlOWE0MzFhZDAyNzI3MTNiNzFmZGM4Nzk0MDE2YzhlZjEyZi4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwt
cmwtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotUEFTUwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LWJvdW5kaW5nLWNs
aWVudC1yZWN0LXZlcnRpY2FsLXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxv
d2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVydGljYWwtcmwuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTMxYWNkMDE1YjcxYWQ5Y2JhMjg1MzBkNjEwZTNmY2Qw
M2M1OGIyYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJl
Y3QtdmVydGljYWwtcmwuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUxICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotCi08bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9yZWdp
b24tc3R5bGUuY3NzIj48L2xpbms+Ci08c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hh
cnNldD0idXRmLTgiIHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0KLTxzdHls
ZT4KLSAgICBodG1sIHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyB9Ci0KLSAg
ICBib2R5IHsgbWFyZ2luOiAxMHB4OyB9Ci0KLSAgICAjcmVnaW9uMSB7Ci0gICAgICAgIHBvc2l0
aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgbGVmdDogMTAwcHg7Ci0gICAgICAgIHdpZHRoOiAxMDBw
eDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgIH0KLQotICAgICNyZWdpb24yIHsKLSAgICAg
ICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAgICBsZWZ0OiAyMDBweDsKLSAgICAgICAgd2lk
dGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsKLSAgICB9Ci0gICAgCi0gICAgLmZpbmlz
aGVkICNyZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIgewotICAgICAgICBkaXNwbGF5OiBub25l
OwotICAgIH0KLTwvc3R5bGU+Ci0KLTxkaXYgaWQ9ImZsb3ciIGNsYXNzPSJmbG93QXJ0aWNsZSI+
Ci0gICAgPGRpdiBpZD0iZ3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+Ci0gICAgPGRpdiBp
ZD0iYmx1ZSIgY2xhc3M9ImJsdWVCb3giPjwvZGl2PgotICAgIDxkaXYgaWQ9Im9yYW5nZSIgY2xh
c3M9Im9yYW5nZUJveCI+PC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9
InJlZ2lvbkFydGljbGUiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkFy
dGljbGUiPjwvZGl2PgotCi08c2NyaXB0PgotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICB2YXIgZXhwZWN0ZWRCb3VuZGlu
Z1JlY3RzID0gewotICAgICAgICBncmVlbjogWzEwLCAxNTAsIDYwLCAyMDAsIDUwLCA1MF0sCi0g
ICAgICAgIGJsdWU6IFsxMCwgMTAwLCA2MCwgMTUwLCA1MCwgNTBdLAotICAgICAgICBvcmFuZ2U6
IFsxMCwgMjAwLCA2MCwgMjUwLCA1MCwgNTBdCi0gICAgfTsKLSAgICAKLSAgICBpZiAodGVzdEJv
dW5kaW5nUmVjdHMoZXhwZWN0ZWRCb3VuZGluZ1JlY3RzKSkKLSAgICAgICAgZG9jdW1lbnQuYm9k
eS5jbGFzc05hbWUgPSAiZmluaXNoZWQiOwotPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QtdmVy
dGljYWwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3Vu
ZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3OTgyNmYyMWE4MTg0ZmNmMzQ5NjQ1MDBmYjVhYzcxY2Q4MTc2ZmQ5Li4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC12ZXJ0aWNhbC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci0KLTxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3JlZ2lvbi1zdHlsZS5jc3MiPjwvbGluaz4K
LTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCIgc3JjPSJyZXNv
dXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLQotPHN0eWxlPgotICAgIGh0bWwgeyAtd2Via2l0
LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7IH0KLQotICAgIGJvZHkgeyBtYXJnaW46IDEwcHg7
IH0KLQotICAgICNyZWdpb24xIHsKLSAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwotICAgICAg
ICBsZWZ0OiAxMDBweDsKLSAgICAgICAgd2lkdGg6IDEwMHB4OwotICAgICAgICBoZWlnaHQ6IDUw
cHg7Ci0gICAgfQotCi0gICAgI3JlZ2lvbjIgewotICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7
Ci0gICAgICAgIGxlZnQ6IDI0MHB4OwotICAgICAgICB3aWR0aDogNjBweDsKLSAgICAgICAgaGVp
Z2h0OiA3MHB4OwotICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMzBweCA0MHB4OwotICAgICAg
ICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICB9Ci0gICAgCi0gICAgLmZpbmlzaGVkICNy
ZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIgewotICAgICAgICBkaXNwbGF5OiBub25lOwotICAg
IH0KLTwvc3R5bGU+Ci0KLTxkaXYgaWQ9ImZsb3ciIGNsYXNzPSJmbG93QXJ0aWNsZSI+Ci0gICAg
PGRpdiBpZD0iZ3JlZW4iIGNsYXNzPSJncmVlbkJveCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0iYmx1
ZSIgY2xhc3M9ImJsdWVCb3giPjwvZGl2PgotICAgIDxkaXYgaWQ9Im9yYW5nZSIgY2xhc3M9Im9y
YW5nZUJveCI+PC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJlZ2lv
bkFydGljbGUiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9InJlZ2lvbkFydGljbGUi
PjwvZGl2PgotCi08c2NyaXB0PgotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICB2YXIgZXhwZWN0ZWRCb3VuZGluZ1JlY3Rz
ID0gewotICAgICAgICBncmVlbjogWzEwLCAxMDAsIDYwLCAxNTAsIDUwLCA1MF0sCi0gICAgICAg
IGJsdWU6IFsxMCwgMTUwLCA2MCwgMjAwLCA1MCwgNTBdLAotICAgICAgICBvcmFuZ2U6IFsyMSwg
MjgxLCA3MSwgMzMxLCA1MCwgNTBdCi0gICAgfTsKLSAgICAKLSAgICBpZiAodGVzdEJvdW5kaW5n
UmVjdHMoZXhwZWN0ZWRCb3VuZGluZ1JlY3RzKSkKLSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFz
c05hbWUgPSAiZmluaXNoZWQiOwotPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVj
dC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNTk0MTg3MzY4ZTYwYWQ3NzVj
NWI4MDM0NzA4MWM2OTdiN2IyMTVjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC1ib3Vu
ZGluZy1jbGllbnQtcmVjdC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNjAgKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+Ci0KLTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3Jl
Z2lvbi1zdHlsZS5jc3MiPjwvbGluaz4KLTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBj
aGFyc2V0PSJ1dGYtOCIgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLQotPHN0
eWxlPgotICAgIGJvZHkgeyBtYXJnaW46IDEwcHg7IH0KLQotICAgIC5ib3ggewotICAgICAgICB3
aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBmbG9hdDogbGVmdDsK
LSAgICB9Ci0KLSAgICAjcmVnaW9uMSB7Ci0gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAg
ICAgICAgcGFkZGluZzogMTBweDsKLSAgICB9Ci0KLSAgICAjcmVnaW9uMiB7Ci0gICAgICAgIHBv
c2l0aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgbGVmdDogMTAwcHg7Ci0gICAgICAgIGJvcmRlcjog
MTBweCBzb2xpZCBibGFjazsKLSAgICB9Ci0KLSAgICAjcmVnaW9uMyB7Ci0gICAgICAgIHBvc2l0
aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgbGVmdDogMjAwcHg7Ci0gICAgICAgIHBhZGRpbmc6IDEw
cHg7Ci0gICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKLSAgICB9Ci0gICAgCi0gICAg
LmZpbmlzaGVkICNyZWdpb24xLCAuZmluaXNoZWQgI3JlZ2lvbjIsIC5maW5pc2hlZCAjcmVnaW9u
MyB7Ci0gICAgICAgIGRpc3BsYXk6IG5vbmU7Ci0gICAgfQotPC9zdHlsZT4KLQotPGRpdiBjbGFz
cz0iZmxvd0FydGljbGUiPgotICAgIDxkaXYgaWQ9ImdyZWVuIiBjbGFzcz0iZ3JlZW5Cb3giPjwv
ZGl2PgotICAgIDxkaXYgaWQ9ImJsdWUiIGNsYXNzPSJibHVlQm94Ij48L2Rpdj4KLSAgICA8ZGl2
IGlkPSJvcmFuZ2UiIGNsYXNzPSJvcmFuZ2VCb3giPjwvZGl2PgotPC9kaXY+Ci0KLTxkaXYgaWQ9
InJlZ2lvbjEiIGNsYXNzPSJyZWdpb25BcnRpY2xlIGJveCI+PC9kaXY+Ci08ZGl2IGlkPSJyZWdp
b24yIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSBib3giPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uMyIg
Y2xhc3M9InJlZ2lvbkFydGljbGUgYm94Ij48L2Rpdj4KLQotPHNjcmlwdD4KLSAgICBpZiAod2lu
ZG93LnRlc3RSdW5uZXIpCi0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIAot
ICAgIHZhciBleHBlY3RlZEJvdW5kaW5nUmVjdHMgPSB7Ci0gICAgICAgIGdyZWVuOiBbMjAsIDIw
LCA3MCwgNzAsIDUwLCA1MF0sCi0gICAgICAgIGJsdWU6IFsyMCwgMTEwLCA3MCwgMTYwLCA1MCwg
NTBdLAotICAgICAgICBvcmFuZ2U6IFszMCwgMjIwLCA4MCwgMjcwLCA1MCwgNTBdCi0gICAgfTsK
LSAgICAKLSAgICBpZiAodGVzdEJvdW5kaW5nUmVjdHMoZXhwZWN0ZWRCb3VuZGluZ1JlY3RzKSkK
LSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05hbWUgPSAiZmluaXNoZWQiOwotPC9zY3JpcHQ+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZmxvd2VkLWNvbnRlbnQtdHJh
bnNmb3JtLWJvdW5kaW5nLWNsaWVudC1yZWN0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9mbG93ZWQtY29udGVudC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJlY3Qt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZWYyMmU5YTQzMWFk
MDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtY29udGVu
dC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEgKzAsMCBAQAotUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGluZy1jbGllbnQtcmVjdC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1jb250ZW50LXRyYW5zZm9ybS1ib3VuZGlu
Zy1jbGllbnQtcmVjdC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmYmM4OWMz
YjUyZjNlY2NmODIxNmZhYWYwMmQ3ZmVjODAxYTRlMzg5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQt
Y29udGVudC10cmFuc2Zvcm0tYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbAorKysgL2Rldi9udWxs
CkBAIC0xLDQ1ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotCi08bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9InJlc291cmNlcy9yZWdpb24tc3R5bGUuY3NzIj48L2xpbms+Ci08c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiIHNyYz0icmVzb3VyY2VzL2hlbHBl
ci5qcyI+PC9zY3JpcHQ+Ci0KLTxzdHlsZT4KLSAgICBib2R5IHsgbWFyZ2luOiAxMHB4OyB9Ci0K
LSAgICAuYm94IHsKLSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGhlaWdodDogNTBweDsK
LSAgICAgICAgZmxvYXQ6IGxlZnQ7Ci0gICAgfQotCi0gICAgI3JlZ2lvbjEgeyAtd2Via2l0LXRy
YW5zZm9ybTogdHJhbnNsYXRlKDEwcHgsIDEwcHgpOyB9Ci0gICAgI3JlZ2lvbjIgeyAtd2Via2l0
LXRyYW5zZm9ybTogdHJhbnNsYXRlKDMwcHgsIDIwcHgpIHJvdGF0ZSg0NWRlZyk7IH0KLSAgICAj
cmVnaW9uMyB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNzBweCwgMzBweCkgc2NhbGUo
MiwyKTsgfQotICAgIAotICAgIC5maW5pc2hlZCAjcmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24y
LCAuZmluaXNoZWQgI3JlZ2lvbjMgewotICAgICAgICBkaXNwbGF5OiBub25lOwotICAgIH0KLTwv
c3R5bGU+Ci0KLTxkaXYgY2xhc3M9ImZsb3dBcnRpY2xlIj4KLSAgICA8ZGl2IGlkPSJncmVlbiIg
Y2xhc3M9ImdyZWVuQm94Ij48L2Rpdj4KLSAgICA8ZGl2IGlkPSJibHVlIiBjbGFzcz0iYmx1ZUJv
eCI+PC9kaXY+Ci0gICAgPGRpdiBpZD0ib3JhbmdlIiBjbGFzcz0ib3JhbmdlQm94Ij48L2Rpdj4K
LTwvZGl2PgotPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9InJlZ2lvbkFydGljbGUgYm94Ij48L2Rp
dj4KLTxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJyZWdpb25BcnRpY2xlIGJveCI+PC9kaXY+Ci08
ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0icmVnaW9uQXJ0aWNsZSBib3giPjwvZGl2PgotCi08c2Ny
aXB0PgotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotICAgIHZhciBl
eHBlY3RlZEJvdW5kaW5nUmVjdHMgPSB7Ci0gICAgICAgIGdyZWVuOiBbMjAsIDIwLCA3MCwgNzAs
IDUwLCA1MF0sCi0gICAgICAgIGJsdWU6IFsyMCwgODAsIDkwLCAxNTAsIDcwLCA3MF0sCi0gICAg
ICAgIG9yYW5nZTogWzE1LCAxNTUsIDExNSwgMjU1LCAxMDAsIDEwMF0KLSAgICB9OwotICAgIAot
ICAgIGlmICh0ZXN0Qm91bmRpbmdSZWN0cyhleHBlY3RlZEJvdW5kaW5nUmVjdHMsIDEpKQotICAg
ICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9ICJmaW5pc2hlZCI7Ci08L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9mbG93ZWQtaW5saW5lLWNvbnRlbnQt
Ym91bmRpbmctY2xpZW50LXJlY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDExN2I2NDQ5MTg4ZDUxM2E0ZmQxMjhh
YzE5NjRjZTIwY2ViMWE4ZmUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1pbmxpbmUtY29udGVudC1i
b3VuZGluZy1jbGllbnQtcmVjdC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw1ICsw
LDAgQEAKLVRlc3QgZm9yIFdlYktpdCBCdWcgMTE3MjkwIFtDU1NSZWdpb25zXSBnZXRCb3VuZGlu
Z0NsaWVudFJlY3Qgd3JvbmcgZm9yIGlubGluZSBjb250ZW50IG5vZGVzCi0KLU9uIHN1Y2Nlc3Mg
eW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4KLQotUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1pbmxpbmUtY29udGVudC1ib3VuZGluZy1jbGllbnQtcmVj
dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2Zsb3dlZC1pbmxpbmUtY29udGVudC1i
b3VuZGluZy1jbGllbnQtcmVjdC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5
OWIzOWYyMzM4YTkyYTc1MmFkYmFkNmNhMTFmYTk0YWRhZDUzN2E4Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9m
bG93ZWQtaW5saW5lLWNvbnRlbnQtYm91bmRpbmctY2xpZW50LXJlY3QuaHRtbAorKysgL2Rldi9u
dWxsCkBAIC0xLDY5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+
Ci0gICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCIg
c3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAg
ICAgICAgICAgYm9keSB7IG1hcmdpbjogMTBweDsgfQotCi0gICAgICAgICAgICAjZmxvdzEgewot
ICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OwotICAgICAgICAgICAgICAg
IGZvbnQ6IDIwcHgvMSBBaGVtOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjcmVnaW9u
MSB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7Ci0gICAgICAgICAg
ICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOwotICAgICAgICAgICAgICAgIHdpZHRoOiAx
MDBweDsKLSAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICAgICAgcG9z
aXRpb246IGFic29sdXRlOwotICAgICAgICAgICAgICAgIHRvcDogMTUwcHg7Ci0gICAgICAgICAg
ICAgICAgbGVmdDogMTAwcHg7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICNmbG93MiB7
Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3cyOwotICAgICAgICAgICAg
ICAgIGZvbnQ6IDIwcHgvMSBBaGVtOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjcmVn
aW9uMiB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOwotICAgICAg
ICAgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKLSAgICAgICAgICAgICAgICB3aWR0
aDogMTAwcHg7Ci0gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICAgICAgICAg
IHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICAgICAgICAgICAgICB0b3A6IDI1MHB4OwotICAgICAg
ICAgICAgICAgIGxlZnQ6IDEwMHB4OwotICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3Jt
OiB0cmFuc2xhdGUoMTBweCwgMTBweCk7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5m
aW5pc2hlZCAjcmVnaW9uMSwgLmZpbmlzaGVkICNyZWdpb24yLCAuZmluaXNoZWQgI2Zsb3cxLCAu
ZmluaXNoZWQgI2Zsb3cyIHsKLSAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOwotICAgICAg
ICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAg
ICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTExNzI5MCI+V2ViS2l0IEJ1ZyAxMTcyOTA8L2E+IFtDU1NSZWdpb25zXSBnZXRCb3Vu
ZGluZ0NsaWVudFJlY3Qgd3JvbmcgZm9yIGlubGluZSBjb250ZW50IG5vZGVzPC9wPgotICAgICAg
ICA8cD5PbiBzdWNjZXNzIHlvdSBzaG91bGQgc2VlIFBBU1MgIGJlbG93LjwvcD4KLQotICAgICAg
ICA8c3BhbiBpZD0iZmxvdzEiPmFhYWFhPC9zcGFuPgotICAgICAgICA8ZGl2IGlkPSJyZWdpb24x
Ij48L2Rpdj4KLQotICAgICAgICA8c3BhbiBpZD0iZmxvdzIiPmFhYWFhPC9zcGFuPgotICAgICAg
ICA8ZGl2IGlkPSJyZWdpb24yIj48L2Rpdj4KLQotICAgICAgICA8c2NyaXB0PgotICAgICAgICAg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOwotCi0gICAgICAgICAgICAvLyBbdG9wLCBsZWZ0LCBib3R0b20sIHJpZ2h0LCB3
aWR0aCwgaGVpZ2h0XQotICAgICAgICAgICAgdmFyIGV4cGVjdGVkQm91bmRpbmdSZWN0cyA9IHsK
LSAgICAgICAgICAgICAgICBmbG93MTogWzE2MCwgMTEwLCAxODAsIDIxMCwgMTAwLCAyMF0sCi0g
ICAgICAgICAgICAgICAgZmxvdzI6IFsyNzAsIDEyMCwgMjkwLCAyMjAsIDEwMCwgMjBdCi0gICAg
ICAgICAgICB9OwotCi0gICAgICAgICAgICBpZiAodGVzdEJvdW5kaW5nUmVjdHMoZXhwZWN0ZWRC
b3VuZGluZ1JlY3RzKSkKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9
ICJmaW5pc2hlZCI7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KLQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtYWJzb2x1dGUtcG9zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFic29sdXRlLXBvcy1leHBlY3RlZC50eHQKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlOGNhYTQwOWFiMWIzNjQ0YzZmMGZhZDI5MjNlNWViZGVi
ZmVjZGIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtYWJzb2x1dGUtcG9z
LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDcgKzAsMCBAQAotW0NTU1JlZ2lvbnNd
IFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgYWJzb2x1dGUgcG9zaXRp
b25lZCBlbGVtZW50cwotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW3dyYXBw
ZXIsMCx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsd3JhcHBlciwxXQotUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWFic29sdXRl
LXBvcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtYWJzb2x1dGUtcG9zLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhlMzYy
MDViMTQwNWZiMTdmMzkzOGQ4YzNmNzYwNzY2MDhjNWRjYzYuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtYWJzb2x1dGUtcG9zLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwz
NCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJy
ZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4KLSAgICAuYm9yZGVyIHsgYm9y
ZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgI2JveDEgeyAtd2Via2l0LWZsb3ctaW50bzogZmxv
dzsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogNTBweDsgaGVpZ2h0OiA1MHB4OyBiYWNrZ3Jv
dW5kLWNvbG9yOiBncmVlbjsgdG9wOiAyNXB4OyBsZWZ0OiAyNXB4OyB9Ci0gICAgI3JlZ2lvbjEg
eyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBw
b3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwcHg7IGxlZnQ6IDUwcHg7IH0KLTwvc3R5bGU+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci0gICAgPGRp
diBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PC9kaXY+PC9kaXY+Ci0gICAgPGRpdiBpZD0i
cmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKLQotICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRS
ZWdpb25GbG93UmFuZ2VzIGZvciBhYnNvbHV0ZSBwb3NpdGlvbmVkIGVsZW1lbnRzIik7Ci0gICAg
dmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHJh
bmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIiLCAxXSk7Ci0KLWZ1bmN0aW9u
IGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0KLSAgICBoaWRlUmVnaW9u
c0FuZEZsb3dzKCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWNvbnRlbnQtbm9k
ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtY29udGVudC1ub2Rlcy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGYwYTY3OWU1MDVmNzFmZDE1OTdiZTFmZjEzODQ5Mzk0ZDI1NTM5ODcuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rlcy1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1bQ1NTUmVnaW9uc10gSW1wbGVtZW50
IFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyB3aXRoIG11bHRpcGxlIGNvbnRlbnQgbm9kZXMK
LQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1UZXh0IG5vZGUuCi1GbG93IHRlc3QKLVBB
U1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsI3RleHQsNF0gaXMg
ZXF1YWwgdG8gW3dyYXBwZXIsMCwjdGV4dCw0XQotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDIKLVBB
U1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3cmFwcGVy
LDFdCi1QQVNTIEFycmF5IFt3cmFwcGVyMiwwLHdyYXBwZXIyLDFdIGlzIGVxdWFsIHRvIFt3cmFw
cGVyMiwwLHdyYXBwZXIyLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRF
U1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rlcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtY29udGVudC1ub2Rlcy5odG1sCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZWQwNDlhYmIwOWI1MWZiMDI5ZTRiYzRmOWQ4NjI3NzI4
NWZmZTBlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWNvbnRlbnQtbm9k
ZXMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDUyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgot
PGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291
cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJvZHkgeyBmb250LWZhbWls
eTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBmb250LXNpemU6IDUwcHg7IH0KLSAgICAu
Ym9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgLmZsb3cgeyAtd2Via2l0LWZs
b3ctaW50bzogZmxvdzE7fQotICAgIC5ibHVlIHtiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7
IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDUwcHg7fQotICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93
LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNzBweDsgbGVmdDogMjBweDsgdG9w
OiAyNTBweDt9Ci0gICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRo
OiAyNTBweDsgaGVpZ2h0OiAxMjBweDsgbGVmdDogMjBweDsgdG9wOiAzMDBweDt9Ci08L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgPGRp
diBpZD0id3JhcHBlciI+PGRpdiBjbGFzcz0iZmxvdyI+VGV4dCBub2RlLjwvZGl2PjwvZGl2Pgot
ICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0icmVn
aW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9IndyYXBwZXIyIj48ZGl2IGNs
YXNzPSJmbG93IGJsdWUiPjwvZGl2PjwvZGl2PgotICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
LTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgZGVzY3JpcHRpb24oIltD
U1NSZWdpb25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIHdpdGggbXVs
dGlwbGUgY29udGVudCBub2RlcyIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInJlZ2lvbjEiKTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24yIik7Ci0KLQotICAgIGRlYnVnKCJGbG93IHRlc3QiKTsKLSAgICByYW5n
ZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICIjdGV4dCIsIDRdKTsKLSAgICByYW5nZTIgPSBy
ZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRv
KCJyYW5nZTIubGVuZ3RoIiwgMik7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdl
MiwgMCksIFsiI3RleHQiLCA1LCAid3JhcHBlciIsIDFdKTsKLSAgICBjb21wYXJlQXJyYXlzKGdl
dFJhbmdlQXQocmFuZ2UyLCAxKSwgWyJ3cmFwcGVyMiIsIDAsICJ3cmFwcGVyMiIsIDFdKTsKLQot
Ci1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotfQotCi0gICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1kaXNwbGF5LW5vbmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLWV4cGVjdGVkLnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2YzMWJjNGQyZGZiNGU0YTA0MGI5NWE2ZjJl
OWI0NzRmOTQ4NDQ4ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNw
bGF5LW5vbmUtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotW0NT
U1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIGVsZW1l
bnRzIHdpdGggZGlzcGxheTpub25lIChSYW5nZSBzaG91bGQgbm90IGJyZWFrIHJhbmdlcyBhdCBk
aXNwbGF5Om5vbmUpCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotMQotMwotNQotRmxv
dyB0ZXN0Ci1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLHdy
YXBwZXIsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCx3cmFwcGVyLDFdCi1QQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZGlzcGxheS1ub25lLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1kaXNw
bGF5LW5vbmUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTJlNWEwZTc4ZDE1
YTFiN2FhYmEyYzc3MGZlMjliYTY5MDUyNzhlMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1m
bG93LXJhbmdlcy1kaXNwbGF5LW5vbmUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQyICswLDAg
QEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04
Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgot
ICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBmb250
LXNpemU6IDIwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0g
ICAgLmZsb3cgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7fQotICAgICN3cmFwcGVyIHAge21h
cmdpbjogMDsgcGFkZGluZzogMDt9Ci0gICAgLm5vbmUge2Rpc3BsYXk6IG5vbmU7fQotICAgICNy
ZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDog
NzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+
Ci0gIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgPGRpdiBpZD0id3JhcHBlciI+PGRp
diBjbGFzcz0iZmxvdyI+PHA+MTwvcD48cCBjbGFzcz0ibm9uZSI+MjwvcD48cD4zPC9wPjxwIGNs
YXNzPSJub25lIj40PC9wPjxwPjU8L3A+PC9kaXY+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjEi
IGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3Jp
cHQ+Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgZGVzY3JpcHRpb24oIltDU1NSZWdp
b25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBlbGVtZW50cyB3
aXRoIGRpc3BsYXk6bm9uZSAoUmFuZ2Ugc2hvdWxkIG5vdCBicmVhayByYW5nZXMgYXQgZGlzcGxh
eTpub25lKSIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjEiKTsKLQotICAgIGRlYnVnKCJGbG93IHRlc3QiKTsKLSAgICByYW5nZTEgPSByZWdpb24x
LndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5n
ZTEubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCks
IFsid3JhcHBlciIsIDAsICJ3cmFwcGVyIiwgMV0pOwotCi1mdW5jdGlvbiBoaWRlUmVnaW9uc0Fu
ZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotfQotCi0gICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOwot
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1lbXB0eS1yZWdpb25zLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5
LXJlZ2lvbnMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyNGFj
NDQxZjQwNWZkZGY4ZGIxODI1M2VhYjM2YmNhNjJjN2ZkYWEyLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lvbnMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251
bGwKQEAgLTEsMTMgKzAsMCBAQAotW0NTU1JlZ2lvbnNdIEltcGxlbWVudCBSZWdpb246OmdldFJl
Z2lvbkZsb3dSYW5nZXMgZm9yIGVtcHR5IHJlZ2lvbnMKLQotT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgotCi1GbG93IHRlc3QKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAwCi1QQVNTIHJhbmdlMi5s
ZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8g
W3dyYXBwZXIsMCx3cmFwcGVyLDFdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMAotUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWVtcHR5LXJlZ2lv
bnMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2Vz
LWVtcHR5LXJlZ2lvbnMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmQ0NGZk
ODAwMzQ5NGY1ZjJmNzgwZDkxOWEwNGQyMTM4NmU0MjNlZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy1lbXB0eS1yZWdpb25zLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1
MiArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08bWV0YSBjaGFyc2V0
PSJ1dGYtOCI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLTxz
dHlsZT4KLSAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQotICAgICN3cmFwcGVy
IHsgZm9udC1zaXplOiA1MHB4OyB9Ci0gICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJl
ZDsgfQotICAgICNib3ggeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7IGhlaWdodDogNTBweDsg
bWFyZ2luLXRvcDogNDBweDsgYmFja2dyb3VuZC1jb2xvcjogYmx1ZX0KLSAgICAjcmVnaW9uMSB7
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDMwcHg7IGxl
ZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQotICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsgbGVmdDogMjBweDsgdG9wOiAzMDBw
eDt9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBw
eDsgaGVpZ2h0OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KLTwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotICA8ZGl2IGlkPSJ3
cmFwcGVyIj48ZGl2IGlkPSJib3giPjwvZGl2PjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24xIiBj
bGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+
PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjMiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwot
Ci0gICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBJbXBsZW1lbnQgUmVnaW9uOjpnZXRSZWdp
b25GbG93UmFuZ2VzIGZvciBlbXB0eSByZWdpb25zIik7Ci0gICAgdmFyIHJlZ2lvbjEgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciByZWdpb24yID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLSAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIik7Ci0KLSAgICBkZWJ1ZygiRmxvdyB0ZXN0Iik7Ci0g
ICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hv
dWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDApOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIu
d2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdl
Mi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwg
WyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIiLCAxXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJr
aXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxl
bmd0aCIsIDApOwotCi1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotfQotCi0gIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsK
LTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNDAyYjA1OTdjMDAyZWNhMDA1ZTkzN2YxZWI2ZDA0
NzJmMjhjNzEyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWV4cGVjdGVk
LnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQyICswLDAgQEAKLVtDU1NSZWdpb25zXSBUZXN0IGZv
ciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotVGV4dCBub2RlLgotRW1wdHkgcmVnaW9ucwotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDAK
LVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAwCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMAotRmxvdyBh
cnRpY2xlCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJv
eDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJhbmdlMi5sZW5ndGgg
aXMgMQotUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMV0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gx
LDFdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLHdyYXBwZXIs
MV0gaXMgZXF1YWwgdG8gW2JveDEsMSx3cmFwcGVyLDFdCi1BZGQgdGV4dCBub2RlIHRvIHJlZ2lv
bjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJsb2NrKQotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBB
U1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwx
XQotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMSxib3gxLDJdIGlz
IGVxdWFsIHRvIFtib3gxLDEsYm94MSwyXQotUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKLVBBU1Mg
QXJyYXkgW2JveDEsMix3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFtib3gxLDIsd3JhcHBlciwxXQot
SW5jcmVhc2UgZm9udCBzaXplCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBb
d3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJh
bmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0LDRdIGlzIGVxdWFsIHRv
IFtib3gxLDEsI3RleHQsNF0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFsj
dGV4dCw1LHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsd3JhcHBlciwxXQotTWFrZSBj
aGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byByZWdp
b24zCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMgotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEs
MF0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDBdCi1QQVNTIEFycmF5IFtib3gxLDEsI3Rl
eHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQotUEFTUyByYW5nZTIubGVuZ3RoIGlz
IDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsYm94MSwyXSBpcyBlcXVhbCB0byBbI3RleHQsNSxib3gx
LDJdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwwLGJveDEsMV0g
aXMgZXF1YWwgdG8gW2JveDEsMCxib3gxLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWZpeGVkLXBvcy1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg3ZWFlY2IyNGRjNWYyOWM0
NTlhOWMxOWJhNDBlOTZiZTdhOWVjNDEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtZml4ZWQtcG9zLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDcgKzAsMCBA
QAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3Ig
Zml4ZWQgcG9zaXRpb25lZCBlbGVtZW50cwotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBBU1Mg
QXJyYXkgW3dyYXBwZXIsMCx3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsd3JhcHBl
ciwxXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFu
Z2VzLWZpeGVkLXBvcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24t
Zmxvdy1yYW5nZXMtZml4ZWQtcG9zLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGJiYjkxZTBkOGU2ZGU3NWRlNTljODMwY2E4MzEzZTljMGIxMWY4MzkuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2dldC1yZWdpb24tZmxvdy1yYW5nZXMtZml4ZWQtcG9zLmh0bWwKKysrIC9kZXYvbnVsbApAQCAt
MSwzMyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3Jj
PSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4KLSAgICAuYm9yZGVyIHsg
Ym9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgI2JveDEgeyAtd2Via2l0LWZsb3ctaW50bzog
ZmxvdzsgcG9zaXRpb246IGZpeGVkOyB3aWR0aDogNTBweDsgaGVpZ2h0OiA1MHB4OyBiYWNrZ3Jv
dW5kLWNvbG9yOiBncmVlbjsgdG9wOiAyNXB4OyBsZWZ0OiAyNXB4OyB9Ci0gICAgI3JlZ2lvbjEg
eyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4OyBw
b3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMTAwcHg7IGxlZnQ6IDUwcHg7IH0KLTwvc3R5bGU+Ci08
L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci0gICAgPGRp
diBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PC9kaXY+PC9kaXY+Ci0gICAgPGRpdiBpZD0i
cmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKLQotICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRS
ZWdpb25GbG93UmFuZ2VzIGZvciBmaXhlZCBwb3NpdGlvbmVkIGVsZW1lbnRzIik7Ci0gICAgdmFy
IHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHJhbmdl
MSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1
YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQo
cmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIiLCAxXSk7Ci0KLWZ1bmN0aW9uIGhp
ZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0gICAgaGlkZVJlZ2lvbnNBbmRG
bG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1ob3Jpei1idC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1o
b3Jpei1idC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgxZGE4
ZWRiZGY4ZGYyZWZiZmFkYjdmNGI5YjIxYzE3NzM2NTViNjguLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsNDIgKzAsMCBAQAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxv
d1JhbmdlcyBmb3IgaG9yaXpvbnRhbC1idCBtb2RlCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotVGV4dCBub2RlLgotRW1wdHkgcmVnaW9ucwotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDAK
LVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAwCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMAotRmxvdyBh
cnRpY2xlCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJv
eDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJhbmdlMi5sZW5ndGgg
aXMgMQotUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMV0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gx
LDFdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLHdyYXBwZXIs
MV0gaXMgZXF1YWwgdG8gW2JveDEsMSx3cmFwcGVyLDFdCi1BZGQgdGV4dCBub2RlIHRvIHJlZ2lv
bjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJsb2NrKQotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDEKLVBB
U1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwx
XQotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgW2JveDEsMSxib3gxLDJdIGlz
IGVxdWFsIHRvIFtib3gxLDEsYm94MSwyXQotUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKLVBBU1Mg
QXJyYXkgW2JveDEsMix3cmFwcGVyLDFdIGlzIGVxdWFsIHRvIFtib3gxLDIsd3JhcHBlciwxXQot
SW5jcmVhc2UgZm9udCBzaXplCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBb
d3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJh
bmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLCN0ZXh0LDRdIGlzIGVxdWFsIHRv
IFtib3gxLDEsI3RleHQsNF0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFsj
dGV4dCw1LHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsd3JhcHBlciwxXQotTWFrZSBj
aGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQgd2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byByZWdp
b24zCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMgotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEs
MF0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDBdCi1QQVNTIEFycmF5IFtib3gxLDEsI3Rl
eHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQotUEFTUyByYW5nZTIubGVuZ3RoIGlz
IDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsYm94MSwyXSBpcyBlcXVhbCB0byBbI3RleHQsNSxib3gx
LDJdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwwLGJveDEsMV0g
aXMgZXF1YWwgdG8gW2JveDEsMCxib3gxLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWhvcml6LWJ0Lmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAxMTViN2EzNjFhNDllZTU4NTQwYTc1OTA4YmUxMGNiNTlj
NDIxZmMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtaG9yaXotYnQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDEwNyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci08bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
aGVscGVyLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4KLSAgICBodG1sIHsgLXdlYmtpdC13cml0aW5n
LW1vZGU6IGhvcml6b250YWwtYnQ7IH0KLSAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFj
ZTsgfQotICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAzMHB4OyB9Ci0gICAgLmJvcmRlciB7IGJv
cmRlcjogMXB4IHNvbGlkIHJlZDsgfQotICAgICNhcnRpY2xlIHsgYmFja2dyb3VuZC1jb2xvcjog
bGlnaHRibHVlOyBoZWlnaHQ6IDEzNXB4OyBwYWRkaW5nOiAxMHB4O30KLSAgICAjYm94MSB7IGJh
Y2tncm91bmQtY29sb3I6IGxpZ2h0Z3JlZW47IGhlaWdodDogMTEwcHg7IHBhZGRpbmc6IDEwcHg7
fQotICAgICNib3gyIHsgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOyBoZWlnaHQ6IDEwcHg7IHBh
ZGRpbmc6IDVweDt9Ci0gICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdp
ZHRoOiAyNTBweDsgaGVpZ2h0OiA3MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4O30KLSAgICAj
cmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6
IDYwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQotICAgICNyZWdpb24zIHsgLXdlYmtpdC1m
bG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsgbGVmdDogMjBweDsg
dG9wOiAzNTBweDt9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gIDxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIj48L2Rpdj4KLSAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYXJ0aWNsZSI+PGRp
diBpZD0iYm94MSI+PGRpdiBpZD0iYm94MiI+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+Ci0gIDxk
aXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24y
IiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMyIgY2xhc3M9ImJvcmRl
ciI+PC9kaXY+Ci0gIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdD4KLSAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wQXNUZXh0KCk7Ci0KLSAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9y
IFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgaG9yaXpvbnRhbC1idCBtb2RlIik7Ci0g
ICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAg
IHZhciByZWdpb24yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLSAgICB2
YXIgcmVnaW9uMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIik7Ci0KLSAgICBk
ZWJ1ZygiRW1wdHkgcmVnaW9ucyIpOwotICAgIHZhciByYW5nZTEgPSByZWdpb24xLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3Ro
IiwgMCk7Ci0gICAgdmFyIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAwKTsKLSAgICB2YXIg
cmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxk
RXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDApOwotCi0gICAgZGVidWcoIkZsb3cgYXJ0aWNs
ZSIpOwotICAgIHZhciBhcnRpY2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUi
KTsKLSAgICBhcnRpY2xlLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5n
ZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOwotICAgIHJhbmdlMiA9IHJl
Z2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2Uy
LCAwKSwgWyJib3gxIiwgMSwgImJveDEiLCAxXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJr
aXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxl
bmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJv
eDEiLCAxLCAid3JhcHBlciIsIDFdKTsKLQotICAgIGRlYnVnKCJBZGQgdGV4dCBub2RlIHRvIHJl
Z2lvbjIgKGNyZWF0ZXMgYW5vbnltb3VzIGJsb2NrKSIpOwotICAgIHZhciB0ZXh0Tm9kZSA9IGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUuIik7Ci0gICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImJveDEiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZSk7Ci0gICAgcmFuZ2UxID0gcmVn
aW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygi
cmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEs
IDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndl
YmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIu
bGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsi
Ym94MSIsIDEsICJib3gxIiwgMl0pOwotICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVn
aW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAx
KTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgIFsiYm94MSIsIDIs
ICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVidWcoIkluY3JlYXNlIGZvbnQgc2l6ZSIpOwotICAg
IHZhciB3cmFwcGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndyYXBwZXIiKTsKLSAgICB3
cmFwcGVyLnN0eWxlLmZvbnRTaXplID0gIjQwcHgiOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Vi
a2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5s
ZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3
cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIs
IDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAx
LCAiI3RleHQiLCA0XSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbIiN0ZXh0IiwgNSwgIndyYXBw
ZXIiLCAxXSk7Ci0KLSAgICBkZWJ1ZygiTWFrZSBjaGlsZCBhIGNvbnRlbnQgbm9kZSwgc28gaXQg
d2lsbCBtb3ZlIGZyb20gcmVnaW9uMSB0byByZWdpb24zIik7Ci0gICAgdmFyIGJveDIgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnYm94MicpOwotICAgIGJveDIuc3R5bGUud2Via2l0Rmxvd0lu
dG8gPSAiZmxvdzEiOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAyKTsKLSAgICBj
b21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEi
LCAwXSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSksIFsiYm94MSIs
IDEsICIjdGV4dCIsIDRdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0g
ICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1LCAiYm94
MSIsIDJdKTsKLSAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMo
KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFy
ZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksIFsiYm94MSIsIDAsICJib3gxIiwgMV0pOwot
Ci1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOwotfQotCi0gICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFjYTM0YzQ0OWM5NGM5M2U3
MjdiNzQ3MDAyNmU2YTAwYWQ2NTIyMDguLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtaW5saW5lLW9ubHktZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAs
MCBAQAotW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBm
b3IgaW5saW5lIGVsZW1lbnRzCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotRmxvdyB0
ZXN0Ci1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLHdyYXBw
ZXIsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCx3cmFwcGVyLDFdCi1QQVNTIHJhbmdlMi5sZW5n
dGggaXMgMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ct
cmFuZ2VzLWlubGluZS1vbmx5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtb25seS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBmYWYwMjYzMTgzNTk1YTI1OGQ2MTUyZDg2MThhMTcyN2ZjOWE0NzRjLi4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1vbmx5Lmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw0NyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08
bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48
L3NjcmlwdD4KLTxzdHlsZT4KLSAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQot
ICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAyMHB4OyB9Ci0gICAgLmJvcmRlciB7IGJvcmRlcjog
MXB4IHNvbGlkIHJlZDsgfQotICAgICNpbmxpbmVPbmx5IHsgLXdlYmtpdC1mbG93LWludG86IGZs
b3cxOyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IGhlaWdodDogMTM1cHg7IHBhZGRpbmc6
IDEwcHg7fQotICAgICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDog
MjUwcHg7IGhlaWdodDogNzBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9Ci0gICAgI3JlZ2lv
bjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4
OyBsZWZ0OiAyMHB4OyB0b3A6IDMwMHB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAg
PGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2PgotICA8ZGl2IGlkPSJ3cmFwcGVyIj48c3BhbiBp
ZD0iaW5saW5lT25seSI+PC9zcGFuPjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0i
Ym9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+
Ci0gIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7Ci0KLSAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6
Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgaW5saW5lIGVsZW1lbnRzIik7Ci0gICAgdmFyIHJlZ2lv
bjEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHZhciByZWdpb24y
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLQotCi0gICAgZGVidWcoIkZs
b3cgdGVzdCIpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIndyYXBwZXIi
LCAxXSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7
Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDApOwotCi1mdW5jdGlvbiBo
aWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdp
b24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotfQotCi0gICAg
aGlkZVJlZ2lvbnNBbmRGbG93cygpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1p
bmxpbmUtc3ZnLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmctZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA5NWVjYjg2ZjkwODAwZWJmZTQwYTAzODIxNDE3YTUwNDdjNWY3ZTA3Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmctZXhwZWN0ZWQu
dHh0CisrKyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1UZXN0IHRoYXQgZ2V0dGluZyB0aGUg
cmVnaW9uIHJhbmdlcyB3aGVuIHRoZSBmbG93aW5nIGNvbnRlbnQgaGFzIGlubGluZSBzdmcgZG9l
cyBub3QgY3Jhc2guCi0KLU9uIHN1Y2Nlc3MgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4KLQot
UEFTUwotCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9u
LWZsb3ctcmFuZ2VzLWlubGluZS1zdmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9n
ZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLWlubGluZS1zdmcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZTg0YTE5YzlkNjM4ZmZjZGNiYWVhZGE2M2QxNzZjNmQ1YzIyZDA0Yi4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy1pbmxpbmUtc3ZnLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotICAgIDxo
ZWFkPgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjYXJ0aWNsZSB7IC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93OyB9Ci0gICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206
IGZsb3c7IHdpZHRoOiAxMDBweDsgaGVpZ2h0OiAxMDBweDsgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxwPlRlc3QgdGhhdCBnZXR0aW5nIHRo
ZSByZWdpb24gcmFuZ2VzIHdoZW4gdGhlIGZsb3dpbmcgY29udGVudCBoYXMgaW5saW5lIHN2ZyBk
b2VzIG5vdCBjcmFzaC48L3A+Ci0gICAgICAgIDxwPk9uIHN1Y2Nlc3MgeW91IHNob3VsZCBzZWUg
UEFTUyBiZWxvdy48L3A+Ci0gICAgICAgIDxwIGlkPSJvdXRwdXQiPjwvcD4KLSAgICAgICAgPGRp
diBpZD0iYXJ0aWNsZSI+Ci0gICAgICAgICAgICA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIj4KLSAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD0i
MTAwIiBoZWlnaHQ9IjEwMCIgc3R5bGU9ImZpbGw6cmdiKDAsMjU1LDApIi8+Ci0gICAgICAgICAg
ICA8L3N2Zz4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiI+PC9kaXY+
Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uIikud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLmlubmVySFRNTCA9ICJQQVNT
IjsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy10ZXh0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWMwNTkz
ZWNkOTE1OTljN2Y5YWY1NDdjYzZjNWNmNTg0ODYxYmVhNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJl
Z2lvbi1mbG93LXJhbmdlcy10ZXh0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE0
ICswLDAgQEAKLVtDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5n
ZXMuIFRleHQgYnJlYWtzIGluIHR3byByZWdpb25zCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotVGV4dCBub2RlLgotRmxvdyB0ZXN0Ci1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFT
UyBBcnJheSBbd3JhcHBlciwwLCN0ZXh0LDRdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsI3RleHQs
NF0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFsjdGV4dCw1LHdyYXBwZXIs
MV0gaXMgZXF1YWwgdG8gWyN0ZXh0LDUsd3JhcHBlciwxXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0
LXZlcnQtbHItZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlZjEz
YjhjODgzZjMzMzM3MmIyMjhiYmI4MzBmNmE3ZjJhMTI1ZGNhLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQt
cmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQtdmVydC1sci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSwxNCArMCwwIEBACi1bQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdp
b25GbG93UmFuZ2VzIGluIHZlcnRpY2FsLXJsIG1vZGUuIFRleHQgYnJlYWtzIGludG8gdHdvIHJl
Z2lvbnMKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1UZXh0IG5vZGUuCi1GbG93IHRl
c3QKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsI3RleHQs
NF0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCwjdGV4dCw0XQotUEFTUyByYW5nZTIubGVuZ3RoIGlz
IDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3
cmFwcGVyLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExF
VEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtdGV4dC12ZXJ0LWxyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0LXZlcnQtbHIuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggOGZhMzc3OGMwZDBmMjMwNjllMDc3MTUzZTA2YzE5ZGJiYzdkNjJkYi4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy10ZXh0LXZlcnQtbHIuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVh
ZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIu
anMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTog
dmVydGljYWwtcmw7IH0KLSAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQotICAg
ICN3cmFwcGVyIHsgZm9udC1zaXplOiA1MHB4OyB9Ci0gICAgLmJvcmRlciB7IGJvcmRlcjogMXB4
IHNvbGlkIHJlZDsgfQotICAgICNib3ggeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzE7fQotICAg
ICNyZWdpb24xIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogNzBweDsgaGVpZ2h0
OiAyNTBweDsgbGVmdDogMjBweDsgdG9wOiAyNTBweDt9Ci0gICAgI3JlZ2lvbjIgeyAtd2Via2l0
LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA2MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4
OyB0b3A6IDMwMHB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVz
Y3JpcHRpb24iPjwvZGl2PgotICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3giPlRleHQg
bm9kZS48L2Rpdj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9k
aXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlk
PSJjb25zb2xlIj48L2Rpdj4KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikKLSAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotCi0g
ICAgZGVzY3JpcHRpb24oIltDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZs
b3dSYW5nZXMgaW4gdmVydGljYWwtcmwgbW9kZS4gVGV4dCBicmVha3MgaW50byB0d28gcmVnaW9u
cyIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEi
KTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7
Ci0KLQotICAgIGRlYnVnKCJGbG93IHRlc3QiKTsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtp
dEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVu
Z3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3Jh
cHBlciIsIDAsICIjdGV4dCIsIDRdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwg
MSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiI3RleHQiLCA1
LCAid3JhcHBlciIsIDFdKTsKLQotZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKLSAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKLX0KLQotICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKLTwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdGV4dC5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA2ZDhiYjFmNDhjOTNlYWIyM2FmMWU3ZjJmOGUxMWE1NzgxOWJhNGY3
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXRleHQuaHRtbAorKysgL2Rl
di9udWxsCkBAIC0xLDQ3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4K
LTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMi
Pjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9
Ci0gICAgI3dyYXBwZXIgeyBmb250LXNpemU6IDUwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVy
OiAxcHggc29saWQgcmVkOyB9Ci0gICAgI2JveCB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93MTt9
Ci0gICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiAyNTBweDsg
aGVpZ2h0OiA3MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4O30KLSAgICAjcmVnaW9uMiB7IC13
ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDYwcHg7IGxlZnQ6
IDIwcHg7IHRvcDogMzAwcHg7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICA8ZGl2IGlk
PSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci0gIDxkaXYgaWQ9IndyYXBwZXIiPjxkaXYgaWQ9ImJveCI+
VGV4dCBub2RlLjwvZGl2PjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24xIiBjbGFzcz0iYm9yZGVy
Ij48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxk
aXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7
Ci0KLSAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVn
aW9uRmxvd1Jhbmdlcy4gVGV4dCBicmVha3MgaW4gdHdvIHJlZ2lvbnMiKTsKLSAgICB2YXIgcmVn
aW9uMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIik7Ci0gICAgdmFyIHJlZ2lv
bjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOwotCi0gICAgZGVidWcoIkZs
b3cgdGVzdCIpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdl
cygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21w
YXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgIiN0ZXh0Iiwg
NF0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwot
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJy
YXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwgMV0pOwot
Ci1mdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotfQotCi0gIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxv
dy1yYW5nZXMtdmVydC1sci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMTUzNjk2YmQwMjllNTJmZjJjZDUyZDFhYWIwYzAyNDA2MTBkNGQ1
Ni4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLWV4cGVjdGVk
LnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQyICswLDAgQEAKLVtDU1NSZWdpb25zXSBUZXN0IGZv
ciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9yIHZlcnRpY2FsLWxyIG1vZGUKLQotT24g
c3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93
ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1UZXh0IG5vZGUuCi1FbXB0eSByZWdpb25zCi1QQVNT
IHJhbmdlMS5sZW5ndGggaXMgMAotUEFTUyByYW5nZTIubGVuZ3RoIGlzIDAKLVBBU1MgcmFuZ2Uz
Lmxlbmd0aCBpcyAwCi1GbG93IGFydGljbGUKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNT
IEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0K
LVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsYm94MSwxXSBpcyBl
cXVhbCB0byBbYm94MSwxLGJveDEsMV0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFy
cmF5IFtib3gxLDEsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbYm94MSwxLHdyYXBwZXIsMV0KLUFk
ZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBhbm9ueW1vdXMgYmxvY2spCi1QQVNTIHJh
bmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3JhcHBlciwwLGJveDEsMV0gaXMgZXF1YWwg
dG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJh
eSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJdCi1QQVNTIHJhbmdl
My5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwyLHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8g
W2JveDEsMix3cmFwcGVyLDFdCi1JbmNyZWFzZSBmb250IHNpemUKLVBBU1MgcmFuZ2UxLmxlbmd0
aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBl
ciwwLGJveDEsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEs
I3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4dCw0XQotUEFTUyByYW5nZTMubGVuZ3Ro
IGlzIDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBlciwxXSBpcyBlcXVhbCB0byBbI3RleHQs
NSx3cmFwcGVyLDFdCi1NYWtlIGNoaWxkIGEgY29udGVudCBub2RlLCBzbyBpdCB3aWxsIG1vdmUg
ZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAyCi1QQVNTIEFy
cmF5IFt3cmFwcGVyLDAsYm94MSwwXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMF0KLVBB
U1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVhbCB0byBbYm94MSwxLCN0ZXh0LDRdCi1Q
QVNTIHJhbmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbI3RleHQsNSxib3gxLDJdIGlzIGVx
dWFsIHRvIFsjdGV4dCw1LGJveDEsMl0KLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFy
cmF5IFtib3gxLDAsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwwLGJveDEsMV0KLVBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LWxyLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0
LWxyLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNjODM2NDc0YzQwNDkxZDVj
ZTI2ZDY4OGFlYzdjMjBmMDE4YTBkYjYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1y
YW5nZXMtdmVydC1sci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTA3ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGh0bWwg
eyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7IH0KLSAgICBib2R5IHsgZm9udC1m
YW1pbHk6IG1vbm9zcGFjZTsgfQotICAgICN3cmFwcGVyIHsgZm9udC1zaXplOiAzMHB4OyB9Ci0g
ICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJlZDsgfQotICAgICNhcnRpY2xlIHsgYmFj
a2dyb3VuZC1jb2xvcjogbGlnaHRibHVlOyB3aWR0aDogMTM1cHg7IHBhZGRpbmc6IDEwcHg7fQot
ICAgICNib3gxIHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmVlbjsgd2lkdGg6IDExMHB4OyBw
YWRkaW5nOiAxMHB4O30KLSAgICAjYm94MiB7IGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsgd2lk
dGg6IDEwcHg7IHBhZGRpbmc6IDVweDt9Ci0gICAgI3JlZ2lvbjEgeyAtd2Via2l0LWZsb3ctZnJv
bTogZmxvdzE7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDI1MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1
MHB4O30KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDYw
cHg7IGhlaWdodDogMjUwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQotICAgICNyZWdpb24z
IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogNjBweDsgaGVpZ2h0OiAyNTBweDsg
bGVmdDogMjBweDsgdG9wOiAzNTBweDt9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci0gIDxk
aXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgPGRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0i
YXJ0aWNsZSI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MiI+PC9kaXY+PC9kaXY+PC9kaXY+
PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICA8ZGl2
IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMyIg
Y2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlw
dD4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQotICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAgICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lv
bnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxvd1JhbmdlcyBmb3IgdmVydGljYWwtbHIg
bW9kZSIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bjEiKTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24y
Iik7Ci0gICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIp
OwotCi0gICAgZGVidWcoIkVtcHR5IHJlZ2lvbnMiKTsKLSAgICB2YXIgcmFuZ2UxID0gcmVnaW9u
MS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFu
Z2UxLmxlbmd0aCIsIDApOwotICAgIHZhciByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lv
bkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMCk7
Ci0gICAgdmFyIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwot
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAwKTsKLQotICAgIGRlYnVnKCJG
bG93IGFydGljbGUiKTsKLSAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJhcnRpY2xlIik7Ci0gICAgYXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9ICJmbG93MSI7
Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAg
c2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMo
Z2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFdKTsKLSAgICBy
YW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5n
ZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMV0pOwotICAgIHJhbmdlMyA9IHJl
Z2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8o
InJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2Uz
LCAwKSwgWyJib3gxIiwgMSwgIndyYXBwZXIiLCAxXSk7Ci0KLSAgICBkZWJ1ZygiQWRkIHRleHQg
bm9kZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91cyBibG9jaykiKTsKLSAgICB2YXIgdGV4
dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiIpOwotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJib3gxIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUpOwotICAgIHJh
bmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0gICAgcmFuZ2UyID0g
cmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTIsIDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsKLSAgICByYW5nZTMgPSByZWdpb24zLndl
YmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMu
bGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMywgMCksICBb
ImJveDEiLCAyLCAid3JhcHBlciIsIDFdKTsKLQotICAgIGRlYnVnKCJJbmNyZWFzZSBmb250IHNp
emUiKTsKLSAgICB2YXIgd3JhcHBlciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3cmFwcGVy
Iik7Ci0gICAgd3JhcHBlci5zdHlsZS5mb250U2l6ZSA9ICI0MHB4IjsKLSAgICByYW5nZTEgPSBy
ZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRv
KCJyYW5nZTEubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdl
MSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIu
d2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdl
Mi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwg
WyJib3gxIiwgMSwgIiN0ZXh0IiwgNF0pOwotICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0
UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgi
LCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyIjdGV4dCIs
IDUsICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVidWcoIk1ha2UgY2hpbGQgYSBjb250ZW50IG5v
ZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMyIpOwotICAgIHZhciBi
b3gyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JveDInKTsKLSAgICBib3gyLnN0eWxlLndl
YmtpdEZsb3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJl
Z2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwg
Mik7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIs
IDAsICJib3gxIiwgMF0pOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDEp
LCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRH
ZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0
aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbIiN0ZXh0
IiwgNSwgImJveDEiLCAyXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25G
bG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwot
ICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAwLCAiYm94
MSIsIDFdKTsKLQotZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKLSAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsK
LSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkg
PSAiaGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxl
LnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLX0KLQotICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsK
LTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1ybC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLWV4
cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTUyYzhhMjlmMzYwMTUw
NDQ5YTk0ZDczNjBiMzRiZWEzNTZjZDA0OS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93
LXJhbmdlcy12ZXJ0LXJsLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQyICswLDAg
QEAKLVtDU1NSZWdpb25zXSBUZXN0IGZvciBSZWdpb246OmdldFJlZ2lvbkZsb3dSYW5nZXMgZm9y
IHZlcnRpY2FsLXJsIG1vZGUKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi1UZXh0IG5v
ZGUuCi1FbXB0eSByZWdpb25zCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMAotUEFTUyByYW5nZTIu
bGVuZ3RoIGlzIDAKLVBBU1MgcmFuZ2UzLmxlbmd0aCBpcyAwCi1GbG93IGFydGljbGUKLVBBU1Mg
cmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwxXSBpcyBlcXVh
bCB0byBbd3JhcHBlciwwLGJveDEsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBpcyAxCi1QQVNTIEFy
cmF5IFtib3gxLDEsYm94MSwxXSBpcyBlcXVhbCB0byBbYm94MSwxLGJveDEsMV0KLVBBU1MgcmFu
Z2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDEsd3JhcHBlciwxXSBpcyBlcXVhbCB0
byBbYm94MSwxLHdyYXBwZXIsMV0KLUFkZCB0ZXh0IG5vZGUgdG8gcmVnaW9uMiAoY3JlYXRlcyBh
bm9ueW1vdXMgYmxvY2spCi1QQVNTIHJhbmdlMS5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbd3Jh
cHBlciwwLGJveDEsMV0gaXMgZXF1YWwgdG8gW3dyYXBwZXIsMCxib3gxLDFdCi1QQVNTIHJhbmdl
Mi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2Jv
eDEsMSxib3gxLDJdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwy
LHdyYXBwZXIsMV0gaXMgZXF1YWwgdG8gW2JveDEsMix3cmFwcGVyLDFdCi1JbmNyZWFzZSBmb250
IHNpemUKLVBBU1MgcmFuZ2UxLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94
MSwxXSBpcyBlcXVhbCB0byBbd3JhcHBlciwwLGJveDEsMV0KLVBBU1MgcmFuZ2UyLmxlbmd0aCBp
cyAxCi1QQVNTIEFycmF5IFtib3gxLDEsI3RleHQsNF0gaXMgZXF1YWwgdG8gW2JveDEsMSwjdGV4
dCw0XQotUEFTUyByYW5nZTMubGVuZ3RoIGlzIDEKLVBBU1MgQXJyYXkgWyN0ZXh0LDUsd3JhcHBl
ciwxXSBpcyBlcXVhbCB0byBbI3RleHQsNSx3cmFwcGVyLDFdCi1NYWtlIGNoaWxkIGEgY29udGVu
dCBub2RlLCBzbyBpdCB3aWxsIG1vdmUgZnJvbSByZWdpb24xIHRvIHJlZ2lvbjMKLVBBU1MgcmFu
Z2UxLmxlbmd0aCBpcyAyCi1QQVNTIEFycmF5IFt3cmFwcGVyLDAsYm94MSwwXSBpcyBlcXVhbCB0
byBbd3JhcHBlciwwLGJveDEsMF0KLVBBU1MgQXJyYXkgW2JveDEsMSwjdGV4dCw0XSBpcyBlcXVh
bCB0byBbYm94MSwxLCN0ZXh0LDRdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJh
eSBbI3RleHQsNSxib3gxLDJdIGlzIGVxdWFsIHRvIFsjdGV4dCw1LGJveDEsMl0KLVBBU1MgcmFu
Z2UzLmxlbmd0aCBpcyAxCi1QQVNTIEFycmF5IFtib3gxLDAsYm94MSwxXSBpcyBlcXVhbCB0byBb
Ym94MSwwLGJveDEsMV0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBD
T01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lv
bi1mbG93LXJhbmdlcy12ZXJ0LXJsLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0
LXJlZ2lvbi1mbG93LXJhbmdlcy12ZXJ0LXJsLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGQ1NDVhNGE5Y2NjNjk5M2UxZjVhZmMyYzZhZTVjNzE5NGRhZmI3ZjEuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtdmVydC1ybC5odG1sCisrKyAvZGV2L251bGwK
QEAgLTEsMTA4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRh
IGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2Ny
aXB0PgotPHN0eWxlPgotICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwt
cmw7IH0KLSAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQotICAgICN3cmFwcGVy
IHsgZm9udC1zaXplOiAzMHB4OyB9Ci0gICAgLmJvcmRlciB7IGJvcmRlcjogMXB4IHNvbGlkIHJl
ZDsgfQotICAgICNhcnRpY2xlIHsgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRibHVlOyB3aWR0aDog
MTM1cHg7IHBhZGRpbmc6IDEwcHg7fQotICAgICNib3gxIHsgYmFja2dyb3VuZC1jb2xvcjogbGln
aHRncmVlbjsgd2lkdGg6IDExMHB4OyBwYWRkaW5nOiAxMHB4O30KLSAgICAjYm94MiB7IGJhY2tn
cm91bmQtY29sb3I6IG9yYW5nZTsgd2lkdGg6IDEwcHg7IHBhZGRpbmc6IDVweDt9Ci0gICAgI3Jl
Z2lvbjEgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDI1
MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDI1MHB4O30KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxv
dy1mcm9tOiBmbG93MTsgd2lkdGg6IDYwcHg7IGhlaWdodDogMjUwcHg7IGxlZnQ6IDIwcHg7IHRv
cDogMzAwcHg7fQotICAgICNyZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOyB3aWR0
aDogNjBweDsgaGVpZ2h0OiAyNTBweDsgbGVmdDogMjBweDsgdG9wOiAzNTBweDt9Ci08L3N0eWxl
PgotPC9oZWFkPgotPGJvZHk+Ci0gIDxkaXYgaWQ9ImRlc2NyaXB0aW9uIj48L2Rpdj4KLSAgPGRp
diBpZD0id3JhcHBlciI+PGRpdiBpZD0iYXJ0aWNsZSI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0i
Ym94MiI+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNz
PSJib3JkZXIiPjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0iYm9yZGVyIj48L2Rp
dj4KLSAgPGRpdiBpZD0icmVnaW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0KLSAg
ICBkZXNjcmlwdGlvbigiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0UmVnaW9uRmxv
d1JhbmdlcyBmb3IgdmVydGljYWwtcmwgbW9kZSIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yIik7Ci0gICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpOwotCi0gICAgZGVidWcoIkVtcHR5IHJlZ2lvbnMiKTsK
LSAgICB2YXIgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0g
ICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDApOwotICAgIHZhciByYW5nZTIg
PSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMCk7Ci0gICAgdmFyIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0
R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5n
dGgiLCAwKTsKLQotICAgIGRlYnVnKCJGbG93IGFydGljbGUiKTsKLSAgICB2YXIgYXJ0aWNsZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0gICAgYXJ0aWNsZS5zdHlsZS53
ZWJraXRGbG93SW50byA9ICJmbG93MSI7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRS
ZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIs
IDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIi
LCAwLCAiYm94MSIsIDFdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZs
b3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0g
ICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gx
IiwgMV0pOwotICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1Jhbmdlcygp
OwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJl
QXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMSwgIndyYXBwZXIiLCAxXSk7
Ci0KLSAgICBkZWJ1ZygiQWRkIHRleHQgbm9kZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91
cyBibG9jaykiKTsKLSAgICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgi
VGV4dCBub2RlLiIpOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJib3gxIikuYXBwZW5k
Q2hpbGQodGV4dE5vZGUpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxv
d1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAg
ICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJv
eDEiLCAxXSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2Vz
KCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBh
cmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsK
LSAgICByYW5nZTMgPSByZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBz
aG91bGRFdmFsdWF0ZVRvKCJyYW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhn
ZXRSYW5nZUF0KHJhbmdlMywgMCksICBbImJveDEiLCAyLCAid3JhcHBlciIsIDFdKTsKLQotICAg
IGRlYnVnKCJJbmNyZWFzZSBmb250IHNpemUiKTsKLSAgICB2YXIgd3JhcHBlciA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ3cmFwcGVyIik7Ci0gICAgd3JhcHBlci5zdHlsZS5mb250U2l6ZSA9
ICI0MHB4IjsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMo
KTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFy
ZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0p
OwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwgMSwgIiN0ZXh0IiwgNF0pOwotICAgIHJh
bmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UzLCAwKSwgWyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVidWco
Ik1ha2UgY2hpbGQgYSBjb250ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEg
dG8gcmVnaW9uMyIpOwotICAgIHZhciBib3gyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Jv
eDInKTsKLSAgICBib3gyLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5n
ZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMik7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0
KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMF0pOwotICAgIGNvbXBhcmVBcnJh
eXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDEpLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7Ci0gICAg
cmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxk
RXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFu
Z2VBdChyYW5nZTIsIDApLCBbIiN0ZXh0IiwgNSwgImJveDEiLCAyXSk7Ci0gICAgcmFuZ2UzID0g
cmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVU
bygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5n
ZTMsIDApLCBbImJveDEiLCAwLCAiYm94MSIsIDFdKTsKLQotCi1mdW5jdGlvbiBoaWRlUmVnaW9u
c0FuZEZsb3dzKCkgewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24xIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotfQotCi1o
aWRlUmVnaW9uc0FuZEZsb3dzKCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdy
aXRpbmctbW9kZXMtcmwtcmItbHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy1ybC1yYi1sci1leHBlY3Rl
ZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ0MDY5ZjllNGNkNTVmOWYzMmQx
YmQ0M2Y4MWEwMjUwYTAzZjQ1MjEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5n
ZXMtd3JpdGluZy1tb2Rlcy1ybC1yYi1sci1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSwxNSArMCwwIEBACi1bQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93
UmFuZ2VzIGZvciBtaXhlZCB2ZXJ0aWNhbCBtb2RlcwotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDIK
LVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gxLDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94
MSwxXQotUEFTUyBBcnJheSBbYm94MywxLGJveDMsMl0gaXMgZXF1YWwgdG8gW2JveDMsMSxib3gz
LDJdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0g
aXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJdCi1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFT
UyBBcnJheSBbYm94MSwyLGJveDMsMV0gaXMgZXF1YWwgdG8gW2JveDEsMixib3gzLDFdCi1QQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLUhvcml6b250YWwg
VEIKLVgKLVZlcnRpY2FsIExSSG9yaXpvbnRhbCBCVAotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy13cml0aW5nLW1vZGVzLXJsLXJi
LWxyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdl
cy13cml0aW5nLW1vZGVzLXJsLXJiLWxyLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDk2OWI3M2UyNzRmMzI1ZWFkOGU4ZDM3MGE3ZGRhMDVjZGQyMzUzMjYuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy1ybC1yYi1sci5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsNTggKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+
Ci0gICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybCA7fQotICAgIGJv
ZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBwZXIgeyBmb250LXNpemU6
IDMwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQgcmVkOyB9Ci0gICAgI2Jv
eDEgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47IH0K
LSAgICAjYm94MTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyZWVuOyB3aWR0aDogMzBweDsg
bWFyZ2luLXJpZ2h0OiA3MHB4O30KLSAgICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBm
bG93OyB3aWR0aDogMjAwcHg7IGhlaWdodDogNDAwcHg7ICB9Ci0gICAgI3JlZ2lvbjIgeyAtd2Vi
a2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDIwMHB4OyBoZWlnaHQ6IDQwMHB4OyAgfQotICAg
ICNyZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyMDBweDsgaGVpZ2h0
OiA0MDBweDsgIH0KLSAgICAjYm94MiB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiBob3Jpem9udGFs
LXRiOyBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5OyB3aWR0aDogMTUwcHg7IGhlaWdodDogNDAwcHg7
fQotICAgICNib3gyMiB7IGhlaWdodDogMzBweDsgd2lkdGg6IDMwcHg7IGJhY2tncm91bmQtY29s
b3I6IHdoaXRlOyB9Ci0gICAgI2JveDMgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwt
bHI7ICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IHdpZHRoOiAxNTBweDsgaGVpZ2h0OiA0
MDBweDt9Ci0gICAgI2JveDQgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC1idDsg
YmFja2dyb3VuZC1jb2xvcjogeWVsbG93OyBoZWlnaHQ6IDYwcHg7IHdpZHRoOiAyMDBweDsgcG9z
aXRpb246IGFic29sdXRlOyB0b3A6IDEwMHB4OyBsZWZ0OiAyMHB4O30KLTwvc3R5bGU+Ci08L2hl
YWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+Ci0gICAgPCEtLWRp
diBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0iYm94MTEiPjwvZGl2PjxkaXYg
aWQ9ImJveDIiPlZlcnQgUkw8L2Rpdj48ZGl2IGlkPSJib3gzIj5WZXJ0IExSPC9kaXY+PGRpdiBp
ZD0iYm94NCI+SG9yaXpvbnRhbCBCVDwvZGl2PjwvZGl2LS0+Ci0KLSAgICA8ZGl2IGlkPSJ3cmFw
cGVyIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJib3gxMSI+PC9kaXY+PGRpdiBpZD0iYm94MiI+
SG9yaXpvbnRhbCBUQjxkaXYgaWQ9ImJveDIyIj5YPC9kaXY+PC9kaXY+PGRpdiBpZD0iYm94MyI+
VmVydGljYWwgTFI8ZGl2IGlkPSJib3g0Ij5Ib3Jpem9udGFsIEJUPC9kaXY+PC9kaXY+PC9kaXY+
PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVnaW9uMSIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gICAg
PGRpdiBpZD0icmVnaW9uMiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gICAgPGRpdiBpZD0icmVn
aW9uMyIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1Rl
eHQoKTsKLQotICAgIGRlYnVnKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdp
b25GbG93UmFuZ2VzIGZvciBtaXhlZCB2ZXJ0aWNhbCBtb2RlcyIpOwotICAgIHJlZ2lvbjEgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpOwotICAgIHJlZ2lvbjIgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpOwotICAgIHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uMyIpOwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVn
aW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAy
KTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwg
MCwgImJveDEiLCAxXSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMSks
IFsiYm94MyIsIDEsICJib3gzIiwgMl0pOwotICAgIHJhbmdlMiA9IHJlZ2lvbjIud2Via2l0R2V0
UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMi5sZW5ndGgi
LCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UyLCAwKSwgWyJib3gxIiwg
MSwgImJveDEiLCAyXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRHZXRSZWdpb25GbG93
UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0aCIsIDEpOwotICAg
IGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEiLCAyLCAiYm94MyIs
IDFdKTsKLQotZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKLSAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKLX0KLSAgICBoaWRlUmVnaW9uc0FuZEZsb3dzKCk7Ci08L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMtdGItcmwtbHItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMt
d3JpdGluZy1tb2Rlcy10Yi1ybC1sci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGIzZTU5ZTI1MDYzNTYzZmUwYzA5NWFlNzlkMDBlMWE5YjExMmM2MDEuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1bQ1NTUmVnaW9uc10g
VGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdpb25GbG93UmFuZ2VzIGZvciBtaXhlZCB2ZXJ0aWNhbCBt
b2RlcwotUEFTUyByYW5nZTEubGVuZ3RoIGlzIDIKLVBBU1MgQXJyYXkgW3dyYXBwZXIsMCxib3gx
LDFdIGlzIGVxdWFsIHRvIFt3cmFwcGVyLDAsYm94MSwxXQotUEFTUyBBcnJheSBbYm94MywxLGJv
eDMsMl0gaXMgZXF1YWwgdG8gW2JveDMsMSxib3gzLDJdCi1QQVNTIHJhbmdlMi5sZW5ndGggaXMg
MQotUEFTUyBBcnJheSBbYm94MSwxLGJveDEsMl0gaXMgZXF1YWwgdG8gW2JveDEsMSxib3gxLDJd
Ci1QQVNTIHJhbmdlMy5sZW5ndGggaXMgMQotUEFTUyBBcnJheSBbYm94MSwyLGJveDMsMV0gaXMg
ZXF1YWwgdG8gW2JveDEsMixib3gzLDFdCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
Ci0KLVRFU1QgQ09NUExFVEUKLVZlcnRpY2FsIFJMCi1YCi1WZXJ0aWNhbCBMUlkKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMtd3Jp
dGluZy1tb2Rlcy10Yi1ybC1sci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1y
ZWdpb24tZmxvdy1yYW5nZXMtd3JpdGluZy1tb2Rlcy10Yi1ybC1sci5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBlOTdkNDRkNjdkYWIzNGI5ZmUyYjJjNGY5YzM5MjJmMDA3MmQ0
ZDg1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9uLWZsb3ctcmFuZ2VzLXdyaXRpbmctbW9kZXMt
dGItcmwtbHIuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDU3ICswLDAgQEAKLTwhZG9jdHlwZSBo
dG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwv
c2NyaXB0PgotPHN0eWxlPgotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0g
ICAgI3dyYXBwZXIgeyBmb250LXNpemU6IDMwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAx
cHggc29saWQgcmVkOyB9Ci0gICAgI2JveDEgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47IH0KLSAgICAjYm94MTEgeyBiYWNrZ3JvdW5kLWNvbG9yOiBs
aWdodGdyZWVuOyBoZWlnaHQ6IDMwcHg7IG1hcmdpbi10b3A6IDcwcHg7fQotICAgICNyZWdpb24x
IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiA0MDBweDsgaGVpZ2h0OiAyMDBweDsg
IH0KLSAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogNDAwcHg7
IGhlaWdodDogMjAwcHg7ICB9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxv
dzsgd2lkdGg6IDQwMHB4OyBoZWlnaHQ6IDIwMHB4OyAgfQotICAgICNib3gyIHsgLXdlYmtpdC13
cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOyBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5OyBoZWlnaHQ6
IDE1MHB4OyB3aWR0aDogNDAwcHg7fQotICAgICNib3gyMiB7IGhlaWdodDogMzBweDsgd2lkdGg6
IDMwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9Ci0gICAgI2JveDMgeyAtd2Via2l0LXdy
aXRpbmctbW9kZTogdmVydGljYWwtbHI7IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTsgd2lk
dGg6IDQwMHB4OyBoZWlnaHQ6IDE1MHB4O30KLSAgICAjYm94NCB7IC13ZWJraXQtd3JpdGluZy1t
b2RlOiBob3Jpem9udGFsLWJ0OyBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7IGhlaWdodDogNjBw
eDsgd2lkdGg6IDYwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAyMHB4OyBsZWZ0OiAyMHB4
O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJkZXNjcmlwdGlvbiI+
PC9kaXY+Ci0gICAgPCEtLWRpdiBpZD0id3JhcHBlciI+PGRpdiBpZD0iYm94MSI+PGRpdiBpZD0i
Ym94MTEiPjwvZGl2PjxkaXYgaWQ9ImJveDIiPlZlcnQgUkw8L2Rpdj48ZGl2IGlkPSJib3gzIj5W
ZXJ0IExSPC9kaXY+PGRpdiBpZD0iYm94NCI+SG9yaXpvbnRhbCBCVDwvZGl2PjwvZGl2LS0+Ci0K
LSAgICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJib3gxIj48ZGl2IGlkPSJib3gxMSI+PC9k
aXY+PGRpdiBpZD0iYm94MiI+VmVydGljYWwgUkw8ZGl2IGlkPSJib3gyMiI+WDwvZGl2PjwvZGl2
PjxkaXYgaWQ9ImJveDMiPlZlcnRpY2FsIExSPGRpdiBpZD0iYm94NCI+WTwvZGl2PjwvZGl2Pjwv
ZGl2PjwvZGl2PgotICAgIDxkaXYgaWQ9InJlZ2lvbjEiIGNsYXNzPSJib3JkZXIiPjwvZGl2Pgot
ICAgIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotICAgIDxkaXYgaWQ9
InJlZ2lvbjMiIGNsYXNzPSJib3JkZXIiPjwvZGl2PgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQotICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7Ci0KLSAgICBkZWJ1ZygiW0NTU1JlZ2lvbnNdIFRlc3QgZm9yIFJlZ2lvbjo6Z2V0
UmVnaW9uRmxvd1JhbmdlcyBmb3IgbWl4ZWQgdmVydGljYWwgbW9kZXMiKTsKLSAgICByZWdpb24x
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKTsKLSAgICByZWdpb24yID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKTsKLSAgICByZWdpb24zID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKTsKLSAgICByYW5nZTEgPSByZWdpb24xLndlYmtpdEdl
dFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3Ro
IiwgMik7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsid3JhcHBl
ciIsIDAsICJib3gxIiwgMV0pOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEs
IDEpLCBbImJveDMiLCAxLCAiYm94MyIsIDJdKTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtp
dEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVu
Z3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94
MSIsIDEsICJib3gxIiwgMl0pOwotICAgIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9u
Rmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsK
LSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMiwgImJv
eDMiLCAxXSk7Ci0KLWZ1bmN0aW9uIGhpZGVSZWdpb25zQW5kRmxvd3MoKSB7Ci0gICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjEiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7
Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5
ID0gImhpZGRlbiI7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjMiKS5zdHls
ZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci19Ci0gICAgaGlkZVJlZ2lvbnNBbmRGbG93cygpOwot
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb24tZmxvdy1yYW5nZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggODgzOWRjZThmZTZiZWU3MjRhMmE4ZjUzMjIzNjQzYmFkNTE0ZTUxZS4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvZ2V0LXJlZ2lvbi1mbG93LXJhbmdlcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
MTA2ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJz
ZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0Pgot
PHN0eWxlPgotICAgIGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgI3dyYXBw
ZXIgeyBmb250LXNpemU6IDMwcHg7IH0KLSAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQg
cmVkOyB9Ci0gICAgI2FydGljbGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7IGhlaWdo
dDogMTM1cHg7IHBhZGRpbmc6IDEwcHg7fQotICAgICNib3gxIHsgYmFja2dyb3VuZC1jb2xvcjog
bGlnaHRncmVlbjsgaGVpZ2h0OiAxMTBweDsgcGFkZGluZzogMTBweDt9Ci0gICAgI2JveDIgeyBi
YWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7IGhlaWdodDogMTBweDsgcGFkZGluZzogNXB4O30KLSAg
ICAjcmVnaW9uMSB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93MTsgd2lkdGg6IDI1MHB4OyBoZWln
aHQ6IDcwcHg7IGxlZnQ6IDIwcHg7IHRvcDogMjUwcHg7fQotICAgICNyZWdpb24yIHsgLXdlYmtp
dC1mbG93LWZyb206IGZsb3cxOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNjBweDsgbGVmdDogMjBw
eDsgdG9wOiAzMDBweDt9Ci0gICAgI3JlZ2lvbjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7
IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA2MHB4OyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KLTwv
c3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLSAgPGRpdiBpZD0iZGVzY3JpcHRpb24iPjwvZGl2Pgot
ICA8ZGl2IGlkPSJ3cmFwcGVyIj48ZGl2IGlkPSJhcnRpY2xlIj48ZGl2IGlkPSJib3gxIj48ZGl2
IGlkPSJib3gyIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KLSAgPGRpdiBpZD0icmVnaW9uMSIg
Y2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0gIDxkaXYgaWQ9InJlZ2lvbjIiIGNsYXNzPSJib3JkZXIi
PjwvZGl2PgotICA8ZGl2IGlkPSJyZWdpb24zIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgPGRp
diBpZD0iY29uc29sZSI+PC9kaXY+Ci08c2NyaXB0PgotICAgIGlmICh3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIpCi0gICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsK
LQotICAgIGRlc2NyaXB0aW9uKCJbQ1NTUmVnaW9uc10gVGVzdCBmb3IgUmVnaW9uOjpnZXRSZWdp
b25GbG93UmFuZ2VzLiIpOwotICAgIHZhciByZWdpb24xID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlZ2lvbjEiKTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb24yIik7Ci0gICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVnaW9uMyIpOwotCi0gICAgZGVidWcoIkVtcHR5IHJlZ2lvbnMiKTsKLSAgICB2YXIgcmFuZ2Ux
ID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVh
dGVUbygicmFuZ2UxLmxlbmd0aCIsIDApOwotICAgIHZhciByYW5nZTIgPSByZWdpb24yLndlYmtp
dEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVu
Z3RoIiwgMCk7Ci0gICAgdmFyIHJhbmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1Jh
bmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAwKTsKLQotICAg
IGRlYnVnKCJGbG93IGFydGljbGUiKTsKLSAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0gICAgYXJ0aWNsZS5zdHlsZS53ZWJraXRGbG93SW50byA9
ICJmbG93MSI7Ci0gICAgcmFuZ2UxID0gcmVnaW9uMS53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2Vz
KCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UxLmxlbmd0aCIsIDEpOwotICAgIGNvbXBh
cmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTEsIDApLCBbIndyYXBwZXIiLCAwLCAiYm94MSIsIDFd
KTsKLSAgICByYW5nZTIgPSByZWdpb24yLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAg
ICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTIubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5
cyhnZXRSYW5nZUF0KHJhbmdlMiwgMCksIFsiYm94MSIsIDEsICJib3gxIiwgMV0pOwotICAgIHJh
bmdlMyA9IHJlZ2lvbjMud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2
YWx1YXRlVG8oInJhbmdlMy5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdl
QXQocmFuZ2UzLCAwKSwgWyJib3gxIiwgMSwgIndyYXBwZXIiLCAxXSk7Ci0KLSAgICBkZWJ1Zygi
QWRkIHRleHQgbm9kZSB0byByZWdpb24yIChjcmVhdGVzIGFub255bW91cyBibG9jaykiKTsKLSAg
ICB2YXIgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBub2RlLiIpOwot
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJib3gxIikuYXBwZW5kQ2hpbGQodGV4dE5vZGUp
OwotICAgIHJhbmdlMSA9IHJlZ2lvbjEud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAg
IHNob3VsZEV2YWx1YXRlVG8oInJhbmdlMS5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlz
KGdldFJhbmdlQXQocmFuZ2UxLCAwKSwgWyJ3cmFwcGVyIiwgMCwgImJveDEiLCAxXSk7Ci0gICAg
cmFuZ2UyID0gcmVnaW9uMi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxk
RXZhbHVhdGVUbygicmFuZ2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFu
Z2VBdChyYW5nZTIsIDApLCBbImJveDEiLCAxLCAiYm94MSIsIDJdKTsKLSAgICByYW5nZTMgPSBy
ZWdpb24zLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRv
KCJyYW5nZTMubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdl
MywgMCksICBbImJveDEiLCAyLCAid3JhcHBlciIsIDFdKTsKLQotICAgIGRlYnVnKCJJbmNyZWFz
ZSBmb250IHNpemUiKTsKLSAgICB2YXIgd3JhcHBlciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ3cmFwcGVyIik7Ci0gICAgd3JhcHBlci5zdHlsZS5mb250U2l6ZSA9ICI0MHB4IjsKLSAgICBy
YW5nZTEgPSByZWdpb24xLndlYmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRF
dmFsdWF0ZVRvKCJyYW5nZTEubGVuZ3RoIiwgMSk7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5n
ZUF0KHJhbmdlMSwgMCksIFsid3JhcHBlciIsIDAsICJib3gxIiwgMV0pOwotICAgIHJhbmdlMiA9
IHJlZ2lvbjIud2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRl
VG8oInJhbmdlMi5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFu
Z2UyLCAwKSwgWyJib3gxIiwgMSwgIiN0ZXh0IiwgNF0pOwotICAgIHJhbmdlMyA9IHJlZ2lvbjMu
d2Via2l0R2V0UmVnaW9uRmxvd1JhbmdlcygpOwotICAgIHNob3VsZEV2YWx1YXRlVG8oInJhbmdl
My5sZW5ndGgiLCAxKTsKLSAgICBjb21wYXJlQXJyYXlzKGdldFJhbmdlQXQocmFuZ2UzLCAwKSwg
WyIjdGV4dCIsIDUsICJ3cmFwcGVyIiwgMV0pOwotCi0gICAgZGVidWcoIk1ha2UgY2hpbGQgYSBj
b250ZW50IG5vZGUsIHNvIGl0IHdpbGwgbW92ZSBmcm9tIHJlZ2lvbjEgdG8gcmVnaW9uMyIpOwot
ICAgIHZhciBib3gyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JveDInKTsKLSAgICBib3gy
LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3cxIjsKLSAgICByYW5nZTEgPSByZWdpb24xLndl
YmtpdEdldFJlZ2lvbkZsb3dSYW5nZXMoKTsKLSAgICBzaG91bGRFdmFsdWF0ZVRvKCJyYW5nZTEu
bGVuZ3RoIiwgMik7Ci0gICAgY29tcGFyZUFycmF5cyhnZXRSYW5nZUF0KHJhbmdlMSwgMCksIFsi
d3JhcHBlciIsIDAsICJib3gxIiwgMF0pOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChy
YW5nZTEsIDEpLCBbImJveDEiLCAxLCAiI3RleHQiLCA0XSk7Ci0gICAgcmFuZ2UyID0gcmVnaW9u
Mi53ZWJraXRHZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFu
Z2UyLmxlbmd0aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTIsIDAp
LCBbIiN0ZXh0IiwgNSwgImJveDEiLCAyXSk7Ci0gICAgcmFuZ2UzID0gcmVnaW9uMy53ZWJraXRH
ZXRSZWdpb25GbG93UmFuZ2VzKCk7Ci0gICAgc2hvdWxkRXZhbHVhdGVUbygicmFuZ2UzLmxlbmd0
aCIsIDEpOwotICAgIGNvbXBhcmVBcnJheXMoZ2V0UmFuZ2VBdChyYW5nZTMsIDApLCBbImJveDEi
LCAwLCAiYm94MSIsIDFdKTsKLQotZnVuY3Rpb24gaGlkZVJlZ2lvbnNBbmRGbG93cygpIHsKLSAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMSIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZp
c2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
MyIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLX0KLQotICAgIGhpZGVSZWdpb25zQW5k
Rmxvd3MoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtZXhwZWN0ZWQu
dHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiNDZjMjYwZWQzZWViMGI0NzY5YmRl
ZTk2ZjQxNmZiMzFlNjYzYjQ4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50
LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLVRlc3QgZm9yIDkw
NzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5v
ZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50LgotCi1PbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCi0KLQotUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxp
c3QuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgotUEFTUyByZWdpb25MaXN0Lmxlbmd0aCBpcyAyCi1Q
QVNTIHJlZ2lvbkxpc3QuaXRlbSgwKS5pZCBpcyAicmVnaW9uMjEiCi1QQVNTIHJlZ2lvbkxpc3Qu
aXRlbSgxKS5pZCBpcyAicmVnaW9uMjIiCi1QQVNTIHJlZ2lvbkxpc3QubGVuZ3RoIGlzIDAKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCi0KLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQt
aG9yaXotYnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdp
b25zLWJ5LWNvbnRlbnQtaG9yaXotYnQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBkODczM2QxODdkMDUxZWIxYzc4M2ZhYWRmMzVkNThmMzg3YTIwNWNhLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LWhvcml6LWJ0LWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLVRlc3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9u
c10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5vZGUgdG8gTmFtZWRGbG93
OjpnZXRSZWdpb25zQnlDb250ZW50Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1Q
QVNTIHJlZ2lvbkxpc3RBcnRpY2xlIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0QXJ0aWNs
ZS5sZW5ndGggaXMgMgotUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDApLmlkIGlzICJyZWdp
b24iCi1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjIiCi1QQVNT
IHJlZ2lvbkxpc3RTcGFuIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0U3Bhbi5sZW5ndGgg
aXMgMQotUEFTUyByZWdpb25MaXN0U3Bhbi5pdGVtKDApLmlkIGlzICJyZWdpb24iCi1QQVNTIHJl
Z2lvbkxpc3RTcGFuMiBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNwYW4yLmxlbmd0aCBp
cyAyCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMyBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNw
YW4zLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIGlzICJyZWdp
b24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZS5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5p
ZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMiBpcyBub24tbnVsbC4KLVBB
U1MgcmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5v
ZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMgaXMg
bm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMubGVuZ3RoIGlzIDEKLVBBU1MgcmVn
aW9uTGlzdFRleHROb2RlMy5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0
VGV4dE5vZGUyLmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5p
ZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIGlzICJy
ZWdpb24zIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzMi5sZW5ndGggaXMgMQotUEFTUyByZWdp
b25MaXN0VGV4dE5vZGUzMi5pdGVtKDApLmlkIGlzICJyZWdpb24zIgotUEFTUyByZWdpb25MaXN0
UDEgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RQMS5sZW5ndGggaXMgMQotUEFTUyByZWdp
b25MaXN0UDEuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlzdFAyIGlzIG5v
bi1udWxsLgotUEFTUyByZWdpb25MaXN0UDIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAy
Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQMyBpcyBub24tbnVsbC4K
LVBBU1MgcmVnaW9uTGlzdFAzLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQMy5pdGVtKDAp
LmlkIGlzICJyZWdpb240IgotUEFTUyByZWdpb25MaXN0UDIyLmxlbmd0aCBpcyAxCi1QQVNTIHJl
Z2lvbkxpc3RQMjIuaXRlbSgwKS5pZCBpcyAicmVnaW9uNSIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCi0KLQotCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1ob3Jpei1idC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotYnQu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTA2NDYxYjk2YTViYWE0YzI2MDEw
OTczZjcwOTg2MmYxNjAyNTEwZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVu
dC1ob3Jpei1idC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTUyICswLDAgQEAKLTwhZG9jdHlw
ZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAg
ICAgIGh0bWwgeyAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC1idDsgfQotICAgICAg
ICAgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAgICAgICAgICNhcnRp
Y2xlIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgICNyZWdpb24geyAt
d2Via2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLSAg
ICAgICAgICAgICNyZWdpb24yIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBw
eDsgaGVpZ2h0OiA1MHB4OyB9Ci0gICAgICAgICAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93OyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgfQotCi0gICAgICAgICAgICAj
YXJ0aWNsZTIgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7IH0KLSAgICAgICAgICAgICNyZWdp
b240IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBw
eDsgfQotICAgICAgICAgICAgI3JlZ2lvbjUgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IHdp
ZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0KLSAgICAgICAgICAgIC5ub1JlZ2lvbiB7IC13
ZWJraXQtZmxvdy1mcm9tOiBub25lOyB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgot
ICAgIDxib2R5PgotICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBpbmxpbmUgZWxlbWVudHMg
LS0+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPgotICAgICAgICAgICAgPHNwYW4gaWQ9InNw
YW5Ob2RlIj5UZXh0IGluc2lkZSBzcGFuLjwvc3Bhbj4KLSAgICAgICAgICAgIFRleHQgb3V0c2lk
ZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4dCBvdXRzaWRlIHNwYW4uCi0gICAgICAgICAg
ICA8c3BhbiBpZD0ic3Bhbk5vZGUyIj5UZXh0IGluc2lkZSBzcGFuMi48L3NwYW4+Ci0gICAgICAg
ICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUzIj5UZXh0IGluc2lkZSBzcGFuMzwvc3Bhbj4KLSAgICAg
ICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYg
aWQ9InJlZ2lvbjIiPjwvZGl2PgotCi0gICAgICAgIDwhLS0gc29tZSB0ZXN0cyB3aXRoIGJsb2Nr
IGVsZW1lbnRzIC0tPgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlMiI+Ci0gICAgICAgICAgICA8
cCBpZD0icDEiPlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMS48L3A+Ci0gICAgICAgIDwvZGl2Pgot
ICAgICAgICA8ZGl2IGlkPSJyZWdpb240Ij48L3JlZ2lvbj4KLSAgICAgICAgPHNjcmlwdD4KLSAg
ICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB3aW5kb3cu
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBm
b3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250
ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQiKTsKLSAgICAgICAgICAg
IHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0KLSAgICAgICAgICAgIGZ1
bmN0aW9uIGhpZGVSZWdpb25zKCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5z
dHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMiIpLnN0eWxlLnZpc2li
aWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uNCIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
NSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgIH0KLQotICAgICAg
ICAgICAgdmFyIHJlZ2lvbkxpc3RBcnRpY2xlID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRl
bnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKSk7Ci0gICAgICAgICAgICBzaG91
bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RBcnRpY2xlIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGgiLCAyKTsKLSAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGljbGUuaXRlbSgwKS5pZCIsICJyZWdpb24i
KTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGljbGUu
aXRlbSgxKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIHZhciBzcGFuTm9kZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZSIpOwotICAgICAgICAgICAgdmFyIHJlZ2lv
bkxpc3RTcGFuID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUpOwotICAg
ICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0U3BhbiIpOwotICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4ubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQiLCAicmVn
aW9uIik7Ci0KLSAgICAgICAgICAgIHZhciBzcGFuTm9kZTIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgic3Bhbk5vZGUyIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4yID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUyKTsKLSAgICAgICAgICAgIHNob3Vs
ZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4yIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0U3BhbjIubGVuZ3RoIiwgMik7Ci0KLSAgICAgICAgICAgIHZhciBzcGFu
Tm9kZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUzIik7Ci0gICAgICAgICAg
ICB2YXIgcmVnaW9uTGlzdFNwYW4zID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bh
bk5vZGUzKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4zIik7
Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3BhbjMubGVuZ3RoIiwg
MSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RTcGFuMy5p
dGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAgICAgICAgdmFyIHRleHROb2RlID0gZG9j
dW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRl
eHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gIik7Ci0gICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2Rl
KTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUgPSBuYW1lZEZsb3cuZ2V0UmVn
aW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJl
Z2lvbkxpc3RUZXh0Tm9kZSIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFRleHROb2RlLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAg
ICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IHdpbGwgb3ZlcmZsb3cgdGhlIHJl
Z2lvbjIuCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUyID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5v
ZGUoIlRleHQgbm9kZTIuIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlMik7
Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZTIiKTsKLSAg
ICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIiwg
MSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9k
ZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVy
IHRleHQgbm9kZSB0aGF0IGlzIGluIHRoZSBvdmVyZmxvdyBvZiB0aGUgbGFzdCByZWdpb24uCi0g
ICAgICAgICAgICB2YXIgdGV4dE5vZGUzID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQg
bm9kZTMuIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIp
LmFwcGVuZENoaWxkKHRleHROb2RlMyk7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHRO
b2RlMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlMyk7Ci0gICAgICAg
ICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZTMiKTsKLSAgICAgICAgICAg
IHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTMubGVuZ3RoIiwgMSk7Ci0gICAg
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTMuaXRlbSgw
KS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHJlZ2lvbiB0
byB0YWtlIHRoZSBvdmVyZmxvd2luZyBlbGVtZW50cyBmcm9tIHNlY29uZCByZWdpb24uCi0gICAg
ICAgICAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAg
ICAgICAgICAgcmVnaW9uMy5pZCA9ICJyZWdpb24zIjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7Ci0KLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4
dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUpOwotICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGgiLCAyKTsK
LSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5p
dGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDEpLmlkIiwgInJlZ2lvbjMiKTsKLQotICAgICAg
ICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNv
bnRlbnQodGV4dE5vZGUzKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3RUZXh0Tm9kZTMyLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5pdGVtKDApLmlkIiwgInJlZ2lvbjMiKTsKLQotICAg
ICAgICAgICAgdmFyIG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIpOwotICAgICAg
ICAgICAgdmFyIHJlZ2lvbkxpc3RQMSA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKSk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51
bGwoInJlZ2lvbkxpc3RQMSIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9u
TGlzdFAxLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJy
ZWdpb25MaXN0UDEuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7Ci0KLSAgICAgICAgICAgIHZhciBw
MiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLSAgICAgICAgICAgIHAyLmlkID0gInAy
IjsKLSAgICAgICAgICAgIHAyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJU
ZXh0IGluc2lkZSBwYXJhZ3JhcGggcDIuIikpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDIpOwotICAgICAgICAgICAgdmFyIHJl
Z2lvbkxpc3RQMiA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChwMik7Ci0gICAgICAg
ICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMiIpOwotICAgICAgICAgICAgc2hvdWxk
RXZhbHVhdGVUbygicmVnaW9uTGlzdFAyLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDIuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7Ci0g
Ci0gICAgICAgICAgICAvLyBhZGQgYW5vdGhlciBlbGVtZW50IHAsIGluIHRoZSBvdmVyZmxvdyBw
YXJ0IG9mIHRoZSByZWdpb240Ci0gICAgICAgICAgICB2YXIgcDMgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJwIik7Ci0gICAgICAgICAgICBwMy5pZCA9ICJwMyI7Ci0gICAgICAgICAgICBwMy5h
cHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiVGV4dCBpbnNpZGUgcGFyYWdyYXBo
IHAzLiIpKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIp
LmFwcGVuZENoaWxkKHAzKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDMgPSBuYW1lZEZs
b3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDMpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxs
KCJyZWdpb25MaXN0UDMiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3RQMy5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVn
aW9uTGlzdFAzLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwotCi0gICAgICAgICAgICAvLyBhZGQg
YW5vdGhlciByZWdpb24gdG8gZmxvdzIsIHAyIGFuZCBwMyBnbyB0byByZWdpb241Ci0gICAgICAg
ICAgICB2YXIgcmVnaW9uNSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAg
ICAgICAgcmVnaW9uNS5pZCA9ICJyZWdpb241IjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHku
YXBwZW5kQ2hpbGQocmVnaW9uNSk7Ci0KLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDIyID0g
bmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKLSAgICAgICAgICAgIHNob3VsZEV2
YWx1YXRlVG8oInJlZ2lvbkxpc3RQMjIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMjIuaXRlbSgwKS5pZCIsICJyZWdpb241Iik7Ci0K
LSAgICAgICAgICAgIGhpZGVSZWdpb25zKCk7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0g
ICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGItZXhwZWN0ZWQu
dHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMWFjN2I3ZWQ3YzMwYTBlOGRhZGI1
ODEyNWRmNzA2MzYzYmIwNzE1Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50
LWhvcml6LXRiLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLVRl
c3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5
Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Ci0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlICBpcyBub24tbnVs
bC4KLVBBU1MgcmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIGlzIDIKLVBBU1MgcmVnaW9uTGlzdEFy
dGljbGUuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgotUEFTUyByZWdpb25MaXN0QXJ0aWNsZS5pdGVt
KDEpLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0U3BhbiBpcyBub24tbnVsbC4KLVBB
U1MgcmVnaW9uTGlzdFNwYW4ubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFNwYW4uaXRlbSgw
KS5pZCBpcyAicmVnaW9uIgotUEFTUyByZWdpb25MaXN0U3BhbjIgaXMgbm9uLW51bGwuCi1QQVNT
IHJlZ2lvbkxpc3RTcGFuMi5sZW5ndGggaXMgMgotUEFTUyByZWdpb25MaXN0U3BhbjMgaXMgbm9u
LW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMy5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0
U3BhbjMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlIGlz
IG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUubGVuZ3RoIGlzIDEKLVBBU1MgcmVn
aW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RU
ZXh0Tm9kZTIgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIGlz
IDEKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFT
UyByZWdpb25MaXN0VGV4dE5vZGUzIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0VGV4dE5v
ZGUzLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMuaXRlbSgwKS5pZCBpcyAi
cmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5sZW5ndGggaXMgMgotUEFTUyByZWdp
b25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RU
ZXh0Tm9kZTIuaXRlbSgxKS5pZCBpcyAicmVnaW9uMyIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2Rl
MzIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMzIuaXRlbSgwKS5pZCBpcyAi
cmVnaW9uMyIKLVBBU1MgcmVnaW9uTGlzdFAxIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0
UDEubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAxLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQi
Ci1QQVNTIHJlZ2lvbkxpc3RQMiBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFAyLmxlbmd0
aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIGlzICJyZWdpb240IgotUEFTUyBy
ZWdpb25MaXN0UDMgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RQMy5sZW5ndGggaXMgMQot
UEFTUyByZWdpb25MaXN0UDMuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlz
dFAyMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0UDIyLml0ZW0oMCkuaWQgaXMgInJlZ2lv
bjUiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQot
Ci0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5
LWNvbnRlbnQtaG9yaXotdGIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVn
aW9ucy1ieS1jb250ZW50LWhvcml6LXRiLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDE1MGI3MGY2Y2QwN2Q5NGMxNjJlMzJiNTNjMDg0MmU1NjAzNWVlNDAuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtaG9yaXotdGIuaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDE1NSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAg
ICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0Pgot
ICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICBib2R5IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFj
ZTsgfQotICAgICAgICAgICAgI2FydGljbGUgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsgfQot
ICAgICAgICAgICAgI3JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB3aWR0aDogMjUw
cHg7IGhlaWdodDogNTBweDsgfQotICAgICAgICAgICAgI3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ct
ZnJvbTogZmxvdzsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLSAgICAgICAgICAgICNy
ZWdpb24zIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1
MHB4OyB9Ci0KLSAgICAgICAgICAgICNhcnRpY2xlMiB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93
MjsgfQotICAgICAgICAgICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IHdp
ZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0gICAgICAgICAgICAjcmVnaW9uNSB7IC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93Mjsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLQotICAg
ICAgICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IG5vbmU7IH0KLSAgICAgICAg
PC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDwhLS0gc29tZSB0ZXN0
cyB3aXRoIGlubGluZSBlbGVtZW50cyAtLT4KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSI+Ci0g
ICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUiPlRleHQgaW5zaWRlIHNwYW4uPC9zcGFuPgot
ICAgICAgICAgICAgVGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91
dHNpZGUgc3Bhbi4KLSAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTIiPlRleHQgaW5zaWRl
IHNwYW4yLjwvc3Bhbj4KLSAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZTMiPlRleHQgaW5z
aWRlIHNwYW4zPC9zcGFuPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9u
Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9uMiI+PC9kaXY+Ci0KLSAgICAgICAgPCEt
LSBzb21lIHRlc3RzIHdpdGggYmxvY2sgZWxlbWVudHMgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImFy
dGljbGUyIj4KLSAgICAgICAgICAgIDxwIGlkPSJwMSI+VGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAx
LjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbjQiPjwvcmVnaW9u
PgotCi0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAg
ICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUg
TmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lv
bnNCeUNvbnRlbnQiKTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gaGlkZVJlZ2lvbnMoKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRp
Y2xlIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb24yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24zIikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZWdpb240Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb241Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJo
aWRkZW4iOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0
Rmxvd0J5TmFtZSgiZmxvdyIpOwotCi0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdEFydGljbGUg
PSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZSIpKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdEFydGlj
bGUgIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0QXJ0aWNsZS5s
ZW5ndGgiLCAyKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlz
dEFydGljbGUuaXRlbSgwKS5pZCIsICJyZWdpb24iKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCIsICJyZWdpb24yIik7Ci0K
LSAgICAgICAgICAgIHZhciBzcGFuTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFu
Tm9kZSIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuID0gbmFtZWRGbG93LmdldFJl
Z2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJy
ZWdpb25MaXN0U3BhbiIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlz
dFNwYW4ubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RTcGFuLml0ZW0oMCkuaWQiLCAicmVnaW9uIik7Ci0KLSAgICAgICAgICAgIHZhciBz
cGFuTm9kZTIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUyIik7Ci0gICAgICAg
ICAgICB2YXIgcmVnaW9uTGlzdFNwYW4yID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQo
c3Bhbk5vZGUyKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4y
Iik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3BhbjIubGVuZ3Ro
IiwgMik7Ci0KLSAgICAgICAgICAgIHZhciBzcGFuTm9kZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgic3Bhbk5vZGUzIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4zID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUzKTsKLSAgICAgICAgICAgIHNob3Vs
ZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4zIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0U3BhbjMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQot
ICAgICAgICAgICAgdmFyIHRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQg
bm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5v
ZGUuIFRleHQgbm9kZS4gIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlKTsKLSAgICAgICAgICAgIHZhciByZWdpb25M
aXN0VGV4dE5vZGUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0g
ICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZSIpOwotICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCIsIDEpOwot
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUuaXRl
bSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQg
bm9kZSB0aGF0IHdpbGwgb3ZlcmZsb3cgdGhlIHJlZ2lvbjIuCi0gICAgICAgICAgICB2YXIgdGV4
dE5vZGUyID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTIuIik7Ci0gICAgICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHRO
b2RlMik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5n
ZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlMik7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51
bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZTIiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8o
InJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7
Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IGlzIGluIHRoZSBv
dmVyZmxvdyBvZiB0aGUgbGFzdCByZWdpb24uCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUzID0g
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTMuIik7Ci0gICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMyk7Ci0g
ICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHRleHROb2RlMyk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3RUZXh0Tm9kZTMiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxp
c3RUZXh0Tm9kZTMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAg
ICAgICAgIC8vIEFkZCBhbm90aGVyIHJlZ2lvbiB0byB0YWtlIHRoZSBvdmVyZmxvd2luZyBlbGVt
ZW50cyBmcm9tIHNlY29uZCByZWdpb24uCi0gICAgICAgICAgICB2YXIgcmVnaW9uMyA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgcmVnaW9uMy5pZCA9ICJyZWdp
b24zIjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7Ci0K
LSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUyID0gbmFtZWRGbG93LmdldFJlZ2lv
bnNCeUNvbnRlbnQodGV4dE5vZGUpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVn
aW9uTGlzdFRleHROb2RlMi5sZW5ndGgiLCAyKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxU
b1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMi5pdGVt
KDEpLmlkIiwgInJlZ2lvbjMiKTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9k
ZTMyID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGV4dE5vZGUzKTsKLSAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTMyLmxlbmd0aCIsIDEpOwot
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5p
dGVtKDApLmlkIiwgInJlZ2lvbjMiKTsKLQotICAgICAgICAgICAgdmFyIG5hbWVkRmxvdzIgPSBn
ZXRGbG93QnlOYW1lKCJmbG93MiIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMSA9IG5h
bWVkRmxvdzIuZ2V0UmVnaW9uc0J5Q29udGVudChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEi
KSk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMSIpOwotICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAxLmxlbmd0aCIsIDEpOwotICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDEuaXRlbSgwKS5pZCIsICJy
ZWdpb240Iik7Ci0KLSAgICAgICAgICAgIHZhciBwMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InAiKTsKLSAgICAgICAgICAgIHAyLmlkID0gInAyIjsKLSAgICAgICAgICAgIHAyLmFwcGVuZENo
aWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDIuIikp
OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5k
Q2hpbGQocDIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMiA9IG5hbWVkRmxvdzIuZ2V0
UmVnaW9uc0J5Q29udGVudChwMik7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3RQMiIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAyLmxl
bmd0aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0
UDIuaXRlbSgwKS5pZCIsICJyZWdpb240Iik7Ci0gCi0gICAgICAgICAgICAvLyBhZGQgYW5vdGhl
ciBlbGVtZW50IHAsIGluIHRoZSBvdmVyZmxvdyBwYXJ0IG9mIHRoZSByZWdpb240Ci0gICAgICAg
ICAgICB2YXIgcDMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7Ci0gICAgICAgICAgICBw
My5pZCA9ICJwMyI7Ci0gICAgICAgICAgICBwMy5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVU
ZXh0Tm9kZSgiVGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAzLiIpKTsKLSAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAzKTsKLSAgICAgICAg
ICAgIHZhciByZWdpb25MaXN0UDMgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDMp
OwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDMiKTsKLSAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMy5sZW5ndGgiLCAxKTsKLSAgICAgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQiLCAicmVn
aW9uNCIpOwotCi0gICAgICAgICAgICAvLyBhZGQgYW5vdGhlciByZWdpb24gdG8gZmxvdzIsIHAy
IGFuZCBwMyBnbyB0byByZWdpb241Ci0gICAgICAgICAgICB2YXIgcmVnaW9uNSA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgcmVnaW9uNS5pZCA9ICJyZWdpb241
IjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uNSk7Ci0KLSAg
ICAgICAgICAgIHZhciByZWdpb25MaXN0UDIyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250
ZW50KHAyKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMjIubGVu
Z3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQ
MjIuaXRlbSgwKS5pZCIsICJyZWdpb241Iik7Ci0KLSAgICAgICAgICAgIGhpZGVSZWdpb25zKCk7
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1w
c2V1ZG8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25z
LWJ5LWNvbnRlbnQtcHNldWRvLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMjhlYjgwMWJjOWVkOGI0ZWU1ZTQyMzZlMTViNjhiZmNlNjA0MGMwMi4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC1wc2V1ZG8tZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTEgKzAsMCBAQAotVGVzdHMgV2ViS2l0TmFtZWRGbG93LmdldFJlZ2lvbnNC
eUNvbnRlbnQoKSBhbmQgcHNldWRvLWVsZW1lbnRzIGFzIHJlZ2lvbnMKLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi0KLVBBU1MgcmVnaW9uTGlzdC5sZW5ndGggaXMgMQotUEFTUyByZWdp
b25MaXN0Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbl8yIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXBzZXVkby5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdkMjJiZDEwMTYzYjliNmU3MTdhMWQ4YmRmZTEzZDIxODhh
NjY5YTUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtcHNldWRvLmh0bWwK
KysrIC9kZXYvbnVsbApAQCAtMSw3MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgot
ICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIu
anMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAjYXJ0aWNsZSB7Ci0g
ICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgICAgICAgICAg
ICAgaGVpZ2h0OiAxNTBweDsKLSAgICAgICAgICAgICAgICB3aWR0aDogNTBweDsKLSAgICAgICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgICAgIH0KLQotICAgICAg
ICAgICAgI3JlZ2lvbl8xIHsKLSAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7Ci0g
ICAgICAgICAgICAgICAgdG9wOjIwMHB4OwotICAgICAgICAgICAgICAgIGxlZnQ6IDEwMHB4Owot
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjcmVnaW9uXzE6OmJlZm9yZSB7Ci0gICAgICAg
ICAgICAgICAgZGlzcGxheTogYmxvY2s7Ci0gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7Ci0g
ICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4
IHNvbGlkIGJsYWNrOwotICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBhcnRpY2xl
OwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjcmVnaW9uXzE6OmFmdGVyIHsKLSAgICAg
ICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKLSAgICAgICAgICAgICAgICB3aWR0aDogNTBweDsK
LSAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7Ci0gICAgICAgICAgICAgICAgYm9yZGVyOiAx
cHggc29saWQgYmxhY2s7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGFydGlj
bGU7ICAgIAotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAjcmVnaW9uXzIgewotICAgICAg
ICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBhcnRpY2xlOwotICAgICAgICAgICAgICAgIGhl
aWdodDo1MHB4OwotICAgICAgICAgICAgICAgIHdpZHRoOjUwcHg7Ci0gICAgICAgICAgICAgICAg
cG9zaXRpb246IGFic29sdXRlOwotICAgICAgICAgICAgICAgIHRvcDogMjAwcHg7Ci0gICAgICAg
ICAgICAgICAgbGVmdDogMjAwcHg7Ci0gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQg
YmxhY2s7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5PgotICAgICAgICA8IS0tCi0gICAgICAgIFRlc3QgdGhhdCB0aGUgcHNldWRvLWVsZW1l
bnRzIHJlZ2lvbnMgYXJlIG5vdCBleHBvc2VkIHRvIEpTLgotICAgICAgICAtLT4KLSAgICAgICAg
PGRpdiBpZD0iYXJ0aWNsZSI+PC9kaXY+Ci0KLSAgICAgICAgPGRpdiBpZD0icmVnaW9uXzEiPjwv
ZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci0gICAgICAgIDxzY3JpcHQ+
Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdHMgV2Vi
S2l0TmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoKSBhbmQgcHNldWRvLWVsZW1lbnRzIGFz
IHJlZ2lvbnMiKQotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgi
YXJ0aWNsZSIpOwotICAgICAgICAgICAgdmFyIHRhcmdldE5vZGUgPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiYXJ0aWNsZSIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QgPSBuYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0YXJnZXROb2RlKTsKLQotICAgICAgICAgICAgc2hvdWxk
RXZhbHVhdGVUbygicmVnaW9uTGlzdC5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygicmVnaW9uTGlzdC5pdGVtKDApLmlkIiwgInJlZ2lvbl8yIik7Ci0KLSAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbl8xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZl
cnQtbHItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25z
LWJ5LWNvbnRlbnQtdmVydC1sci1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGQ4NzMzZDE4N2QwNTFlYjFjNzgzZmFhZGYzNWQ1OGYzODdhMjA1Y2EuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci1leHBlY3RlZC50eHQKKysrIC9k
ZXYvbnVsbApAQCAtMSw0OSArMCwwIEBACi1UZXN0IGZvciA5MDc1OTogW0NTU1JlZ2lvbnNdIFJl
bmFtZSBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnROb2RlIHRvIE5hbWVkRmxvdzo6Z2V0
UmVnaW9uc0J5Q29udGVudAotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyBy
ZWdpb25MaXN0QXJ0aWNsZSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdEFydGljbGUubGVu
Z3RoIGlzIDIKLVBBU1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgot
UEFTUyByZWdpb25MaXN0QXJ0aWNsZS5pdGVtKDEpLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdp
b25MaXN0U3BhbiBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFNwYW4ubGVuZ3RoIGlzIDEK
LVBBU1MgcmVnaW9uTGlzdFNwYW4uaXRlbSgwKS5pZCBpcyAicmVnaW9uIgotUEFTUyByZWdpb25M
aXN0U3BhbjIgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMi5sZW5ndGggaXMgMgot
UEFTUyByZWdpb25MaXN0U3BhbjMgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RTcGFuMy5s
ZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0U3BhbjMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIK
LVBBU1MgcmVnaW9uTGlzdFRleHROb2RlIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQgaXMg
InJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgaXMgbm9uLW51bGwuCi1QQVNTIHJl
Z2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMi5p
dGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzIGlzIG5vbi1u
dWxsLgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxp
c3RUZXh0Tm9kZTMuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFRleHRO
b2RlMi5sZW5ndGggaXMgMgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQgaXMg
InJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCBpcyAicmVnaW9u
MyIKLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlMzIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlz
dFRleHROb2RlMzIuaXRlbSgwKS5pZCBpcyAicmVnaW9uMyIKLVBBU1MgcmVnaW9uTGlzdFAxIGlz
IG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0UDEubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlz
dFAxLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQMiBpcyBub24tbnVs
bC4KLVBBU1MgcmVnaW9uTGlzdFAyLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQMi5pdGVt
KDApLmlkIGlzICJyZWdpb240IgotUEFTUyByZWdpb25MaXN0UDMgaXMgbm9uLW51bGwuCi1QQVNT
IHJlZ2lvbkxpc3RQMy5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0UDMuaXRlbSgwKS5pZCBp
cyAicmVnaW9uNCIKLVBBU1MgcmVnaW9uTGlzdFAyMi5sZW5ndGggaXMgMQotUEFTUyByZWdpb25M
aXN0UDIyLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjUiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQotCi0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQtdmVydC1sci5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NWRmNmM1OGQxMWMzZTc1ODVhOTc2NDg0YmNi
MjNmNzFjN2FiYWFjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQt
bHIuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE1NSArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4K
LTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNl
cy9oZWxwZXIuanMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICBodG1s
IHsgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxyOyB9Ci0gICAgICAgICAgICBib2R5
IHsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsgfQotICAgICAgICAgICAgI2FydGljbGUgeyAtd2Vi
a2l0LWZsb3ctaW50bzogZmxvdzsgfQotICAgICAgICAgICAgLnJlZ2lvbkJveCB7ICBoZWlnaHQ6
IDI1MHB4OyB3aWR0aDogNTBweDsgfQotICAgICAgICAgICAgI3JlZ2lvbiB7IC13ZWJraXQtZmxv
dy1mcm9tOiBmbG93OyB9Ci0gICAgICAgICAgICAjcmVnaW9uMiB7IC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93OyB9Ci0gICAgICAgICAgICAjcmVnaW9uMyB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93
OyB9Ci0KLSAgICAgICAgICAgICNhcnRpY2xlMiB7IC13ZWJraXQtZmxvdy1pbnRvOiBmbG93Mjsg
fQotICAgICAgICAgICAgI3JlZ2lvbjQgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7IH0KLSAg
ICAgICAgICAgICNyZWdpb241IHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOyB9Ci0KLSAgICAg
ICAgICAgIC5ub1JlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBub25lOyB9Ci0gICAgICAgIDwv
c3R5bGU+Ci0gICAgPC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8IS0tIHNvbWUgdGVzdHMg
d2l0aCBpbmxpbmUgZWxlbWVudHMgLS0+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPgotICAg
ICAgICAgICAgPHNwYW4gaWQ9InNwYW5Ob2RlIj5UZXh0IGluc2lkZSBzcGFuLjwvc3Bhbj4KLSAg
ICAgICAgICAgIFRleHQgb3V0c2lkZSBzcGFuLiBUZXh0IG91dHNpZGUgc3Bhbi4gVGV4dCBvdXRz
aWRlIHNwYW4uCi0gICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUyIj5UZXh0IGluc2lkZSBz
cGFuMi4gVGV4dC48L3NwYW4+Ci0gICAgICAgICAgICA8c3BhbiBpZD0ic3Bhbk5vZGUzIj5UZXh0
IGluc2lkZSBzcGFuMzwvc3Bhbj4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJl
Z2lvbiIgY2xhc3M9InJlZ2lvbkJveCI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIi
IGNsYXNzPSJyZWdpb25Cb3giPjwvZGl2PgotCi0gICAgICAgIDwhLS0gc29tZSB0ZXN0cyB3aXRo
IGJsb2NrIGVsZW1lbnRzIC0tPgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlMiI+Ci0gICAgICAg
ICAgICA8cCBpZD0icDEiPlRleHQgaW5zaWRlIHBhcmFncmFwaCBwMS48L3A+Ci0gICAgICAgIDwv
ZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb240IiBjbGFzcz0icmVnaW9uQm94Ij48L3JlZ2lv
bj4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikK
LSAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAg
ICAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFt
ZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNC
eUNvbnRlbnQiKTsKLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJm
bG93Iik7Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGhpZGVSZWdpb25zKCkKLSAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0
eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAg
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpLnN0eWxlLnZpc2li
aWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uMyIpLnN0eWxlLnZpc2liaWxpdHkgPSAi
aGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9u
NCIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVnaW9uNSIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RBcnRpY2xlID0gbmFt
ZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGlj
bGUiKSk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RBcnRpY2xlIik7
Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0QXJ0aWNsZS5sZW5ndGgi
LCAyKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdEFydGlj
bGUuaXRlbSgwKS5pZCIsICJyZWdpb24iKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygicmVnaW9uTGlzdEFydGljbGUuaXRlbSgxKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAg
ICAgICAgIHZhciBzcGFuTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzcGFuTm9kZSIp
OwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuID0gbmFtZWRGbG93LmdldFJlZ2lvbnNC
eUNvbnRlbnQoc3Bhbk5vZGUpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25M
aXN0U3BhbiIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4u
bGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxp
c3RTcGFuLml0ZW0oMCkuaWQiLCAicmVnaW9uIik7Ci0KLSAgICAgICAgICAgIHZhciBzcGFuTm9k
ZTIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUyIik7Ci0gICAgICAgICAgICB2
YXIgcmVnaW9uTGlzdFNwYW4yID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5v
ZGUyKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4yIik7Ci0g
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0U3BhbjIubGVuZ3RoIiwgMik7
Ci0KLSAgICAgICAgICAgIHZhciBzcGFuTm9kZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
c3Bhbk5vZGUzIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFNwYW4zID0gbmFtZWRGbG93
LmdldFJlZ2lvbnNCeUNvbnRlbnQoc3Bhbk5vZGUzKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9u
TnVsbCgicmVnaW9uTGlzdFNwYW4zIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJy
ZWdpb25MaXN0U3BhbjMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbkxpc3RTcGFuMy5pdGVtKDApLmlkIiwgInJlZ2lvbjIiKTsKLQotICAgICAg
ICAgICAgdmFyIHRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZS4g
VGV4dCBub2RlLiBUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuIFRl
eHQgbm9kZS4gIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNs
ZSIpLmFwcGVuZENoaWxkKHRleHROb2RlKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4
dE5vZGUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0gICAgICAg
ICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RUZXh0Tm9kZSIpOwotICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCIsIDEpOwotICAgICAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUuaXRlbSgwKS5p
ZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0
aGF0IHdpbGwgb3ZlcmZsb3cgdGhlIHJlZ2lvbjIuCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUy
ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTIuIik7Ci0gICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMik7
Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdp
b25zQnlDb250ZW50KHRleHROb2RlMik7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJl
Z2lvbkxpc3RUZXh0Tm9kZTIiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lv
bkxpc3RUZXh0Tm9kZTIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9T
dHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAg
ICAgICAgICAgIC8vIEFkZCBhbm90aGVyIHRleHQgbm9kZSB0aGF0IGlzIGluIHRoZSBvdmVyZmxv
dyBvZiB0aGUgbGFzdCByZWdpb24uCi0gICAgICAgICAgICB2YXIgdGV4dE5vZGUzID0gZG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgbm9kZTMuIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmFwcGVuZENoaWxkKHRleHROb2RlMyk7Ci0gICAgICAg
ICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250
ZW50KHRleHROb2RlMyk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RU
ZXh0Tm9kZTMiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0
Tm9kZTMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJl
Z2lvbkxpc3RUZXh0Tm9kZTMuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAg
IC8vIEFkZCBhbm90aGVyIHJlZ2lvbiB0byB0YWtlIHRoZSBvdmVyZmxvd2luZyBlbGVtZW50cyBm
cm9tIHNlY29uZCByZWdpb24uCi0gICAgICAgICAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgcmVnaW9uMy5pZCA9ICJyZWdpb24zIjsK
LSAgICAgICAgICAgIHJlZ2lvbjMuY2xhc3NOYW1lID0gInJlZ2lvbkJveCI7Ci0gICAgICAgICAg
ICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjMpOwotCi0gICAgICAgICAgICB2YXIg
cmVnaW9uTGlzdFRleHROb2RlMiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHRleHRO
b2RlKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RUZXh0Tm9kZTIu
bGVuZ3RoIiwgMik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxp
c3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCIsICJyZWdpb24yIik7Ci0gICAgICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgxKS5pZCIsICJyZWdpb24z
Iik7Ci0KLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0VGV4dE5vZGUzMiA9IG5hbWVkRmxvdy5n
ZXRSZWdpb25zQnlDb250ZW50KHRleHROb2RlMyk7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUzMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFRleHROb2RlMzIuaXRlbSgwKS5pZCIsICJyZWdp
b24zIik7Ci0KLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxv
dzIiKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0UDEgPSBuYW1lZEZsb3cyLmdldFJlZ2lv
bnNCeUNvbnRlbnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikpOwotICAgICAgICAgICAg
c2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDEiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1
YXRlVG8oInJlZ2lvbkxpc3RQMS5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygicmVnaW9uTGlzdFAxLml0ZW0oMCkuaWQiLCAicmVnaW9uNCIpOwotCi0gICAg
ICAgICAgICB2YXIgcDIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7Ci0gICAgICAgICAg
ICBwMi5pZCA9ICJwMiI7Ci0gICAgICAgICAgICBwMi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZSgiVGV4dCBpbnNpZGUgcGFyYWdyYXBoIHAyLiIpKTsKLSAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlMiIpLmFwcGVuZENoaWxkKHAyKTsKLSAgICAg
ICAgICAgIHZhciByZWdpb25MaXN0UDIgPSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQo
cDIpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0UDIiKTsKLSAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMi5sZW5ndGgiLCAxKTsKLSAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyLml0ZW0oMCkuaWQiLCAi
cmVnaW9uNCIpOwotIAotICAgICAgICAgICAgLy8gYWRkIGFub3RoZXIgZWxlbWVudCBwLCBpbiB0
aGUgb3ZlcmZsb3cgcGFydCBvZiB0aGUgcmVnaW9uNAotICAgICAgICAgICAgdmFyIHAzID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgicCIpOwotICAgICAgICAgICAgcDMuaWQgPSAicDMiOwotICAg
ICAgICAgICAgcDMuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgaW5z
aWRlIHBhcmFncmFwaCBwMy4iKSk7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYXJ0aWNsZTIiKS5hcHBlbmRDaGlsZChwMyk7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlz
dFAzID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAzKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAzIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0
ZVRvKCJyZWdpb25MaXN0UDMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInJlZ2lvbkxpc3RQMy5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLQotICAgICAg
ICAgICAgLy8gYWRkIGFub3RoZXIgcmVnaW9uIHRvIGZsb3cyLCBwMiBhbmQgcDMgZ28gdG8gcmVn
aW9uNQotICAgICAgICAgICAgdmFyIHJlZ2lvbjUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJk
aXYiKTsKLSAgICAgICAgICAgIHJlZ2lvbjUuaWQgPSAicmVnaW9uNSI7Ci0gICAgICAgICAgICBy
ZWdpb241LmNsYXNzTmFtZSA9ICJyZWdpb25Cb3giOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChyZWdpb241KTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMjIg
PSBuYW1lZEZsb3cyLmdldFJlZ2lvbnNCeUNvbnRlbnQocDIpOwotICAgICAgICAgICAgc2hvdWxk
RXZhbHVhdGVUbygicmVnaW9uTGlzdFAyMi5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIiwgInJlZ2lvbjUiKTsK
LQotICAgICAgICAgICAgaGlkZVJlZ2lvbnMoKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAg
IDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50LXZlcnQtcmwtZXhwZWN0ZWQu
dHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkODczM2QxODdkMDUxZWIxYzc4M2Zh
YWRmMzVkNThmMzg3YTIwNWNhLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50
LXZlcnQtcmwtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotVGVz
dCBmb3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlD
b250ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQKLQotT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgcmVnaW9uTGlzdEFydGljbGUgaXMgbm9uLW51bGwu
Ci1QQVNTIHJlZ2lvbkxpc3RBcnRpY2xlLmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lvbkxpc3RBcnRp
Y2xlLml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKLVBBU1MgcmVnaW9uTGlzdEFydGljbGUuaXRlbSgx
KS5pZCBpcyAicmVnaW9uMiIKLVBBU1MgcmVnaW9uTGlzdFNwYW4gaXMgbm9uLW51bGwuCi1QQVNT
IHJlZ2lvbkxpc3RTcGFuLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RTcGFuLml0ZW0oMCku
aWQgaXMgInJlZ2lvbiIKLVBBU1MgcmVnaW9uTGlzdFNwYW4yIGlzIG5vbi1udWxsLgotUEFTUyBy
ZWdpb25MaXN0U3BhbjIubGVuZ3RoIGlzIDIKLVBBU1MgcmVnaW9uTGlzdFNwYW4zIGlzIG5vbi1u
dWxsLgotUEFTUyByZWdpb25MaXN0U3BhbjMubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFNw
YW4zLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZSBpcyBu
b24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFRleHROb2RlLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lv
bkxpc3RUZXh0Tm9kZS5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUyIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCBpcyAx
Ci1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIuaXRlbSgwKS5pZCBpcyAicmVnaW9uMiIKLVBBU1Mg
cmVnaW9uTGlzdFRleHROb2RlMyBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFRleHROb2Rl
My5sZW5ndGggaXMgMQotUEFTUyByZWdpb25MaXN0VGV4dE5vZGUzLml0ZW0oMCkuaWQgaXMgInJl
Z2lvbjIiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTIubGVuZ3RoIGlzIDIKLVBBU1MgcmVnaW9u
TGlzdFRleHROb2RlMi5pdGVtKDApLmlkIGlzICJyZWdpb24yIgotUEFTUyByZWdpb25MaXN0VGV4
dE5vZGUyLml0ZW0oMSkuaWQgaXMgInJlZ2lvbjMiCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMy
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RUZXh0Tm9kZTMyLml0ZW0oMCkuaWQgaXMgInJl
Z2lvbjMiCi1QQVNTIHJlZ2lvbkxpc3RQMSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdFAx
Lmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3RQMS5pdGVtKDApLmlkIGlzICJyZWdpb240Igot
UEFTUyByZWdpb25MaXN0UDIgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3RQMi5sZW5ndGgg
aXMgMQotUEFTUyByZWdpb25MaXN0UDIuaXRlbSgwKS5pZCBpcyAicmVnaW9uNCIKLVBBU1MgcmVn
aW9uTGlzdFAzIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0UDMubGVuZ3RoIGlzIDEKLVBB
U1MgcmVnaW9uTGlzdFAzLml0ZW0oMCkuaWQgaXMgInJlZ2lvbjQiCi1QQVNTIHJlZ2lvbkxpc3RQ
MjIubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdFAyMi5pdGVtKDApLmlkIGlzICJyZWdpb241
IgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KLQot
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1j
b250ZW50LXZlcnQtcmwuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9u
cy1ieS1jb250ZW50LXZlcnQtcmwuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NjhkNTZjOTA2ZjA2NGViYWZiMjFmMmFiMjJhNDVjNWFhYjU4YzE1Ny4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
Z2V0LXJlZ2lvbnMtYnktY29udGVudC12ZXJ0LXJsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwx
NTUgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAg
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0g
ICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLSAgICAg
ICAgPHN0eWxlPgotICAgICAgICAgICAgaHRtbCB7IC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0
aWNhbC1ybDsgfQotICAgICAgICAgICAgYm9keSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0K
LSAgICAgICAgICAgICNhcnRpY2xlIHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAg
ICAgICAgIC5yZWdpb25Cb3ggeyAgaGVpZ2h0OiAyNTBweDsgd2lkdGg6IDUwcHg7IH0KLSAgICAg
ICAgICAgICNyZWdpb24geyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgfQotICAgICAgICAgICAg
I3JlZ2lvbjIgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgfQotICAgICAgICAgICAgI3JlZ2lv
bjMgeyAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsgfQotCi0gICAgICAgICAgICAjYXJ0aWNsZTIg
eyAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7IH0KLSAgICAgICAgICAgICNyZWdpb240IHsgLXdl
YmtpdC1mbG93LWZyb206IGZsb3cyOyB9Ci0gICAgICAgICAgICAjcmVnaW9uNSB7IC13ZWJraXQt
Zmxvdy1mcm9tOiBmbG93MjsgfQotCi0gICAgICAgICAgICAubm9SZWdpb24geyAtd2Via2l0LWZs
b3ctZnJvbTogbm9uZTsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9k
eT4KLSAgICAgICAgPCEtLSBzb21lIHRlc3RzIHdpdGggaW5saW5lIGVsZW1lbnRzIC0tPgotICAg
ICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuTm9kZSI+
VGV4dCBpbnNpZGUgc3Bhbi48L3NwYW4+Ci0gICAgICAgICAgICBUZXh0IG91dHNpZGUgc3Bhbi4g
VGV4dCBvdXRzaWRlIHNwYW4uIFRleHQgb3V0c2lkZSBzcGFuLgotICAgICAgICAgICAgPHNwYW4g
aWQ9InNwYW5Ob2RlMiI+VGV4dCBpbnNpZGUgc3BhbjIuIFRleHQuPC9zcGFuPgotICAgICAgICAg
ICAgPHNwYW4gaWQ9InNwYW5Ob2RlMyI+VGV4dCBpbnNpZGUgc3BhbjM8L3NwYW4+Ci0gICAgICAg
IDwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb24iIGNsYXNzPSJyZWdpb25Cb3giPjwvZGl2
PgotICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIiBjbGFzcz0icmVnaW9uQm94Ij48L2Rpdj4KLQot
ICAgICAgICA8IS0tIHNvbWUgdGVzdHMgd2l0aCBibG9jayBlbGVtZW50cyAtLT4KLSAgICAgICAg
PGRpdiBpZD0iYXJ0aWNsZTIiPgotICAgICAgICAgICAgPHAgaWQ9InAxIj5UZXh0IGluc2lkZSBw
YXJhZ3JhcGggcDEuPC9wPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9u
NCIgY2xhc3M9InJlZ2lvbkJveCI+PC9yZWdpb24+Ci0gICAgICAgIDxzY3JpcHQ+Ci0gICAgICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgd2luZG93LnRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3QgZm9yIDkw
NzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5Q29udGVudE5v
ZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Iik7Ci0gICAgICAgICAgICB2YXIg
bmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotCi0gICAgICAgICAgICBmdW5jdGlv
biBoaWRlUmVnaW9ucygpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0g
ICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb24iKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5zdHlsZS52aXNpYmlsaXR5
ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbjMiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjQiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRl
biI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjUiKS5z
dHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAg
IHZhciByZWdpb25MaXN0QXJ0aWNsZSA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikpOwotICAgICAgICAgICAgc2hvdWxkQmVO
b25OdWxsKCJyZWdpb25MaXN0QXJ0aWNsZSIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygicmVnaW9uTGlzdEFydGljbGUubGVuZ3RoIiwgMik7Ci0gICAgICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0oMCkuaWQiLCAicmVnaW9uIik7Ci0g
ICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RBcnRpY2xlLml0ZW0o
MSkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAgICAgICAgICB2YXIgc3Bhbk5vZGUgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgic3Bhbk5vZGUiKTsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0
U3BhbiA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2RlKTsKLSAgICAgICAg
ICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFNwYW4iKTsKLSAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RTcGFuLmxlbmd0aCIsIDEpOwotICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0U3Bhbi5pdGVtKDApLmlkIiwgInJlZ2lvbiIp
OwotCi0gICAgICAgICAgICB2YXIgc3Bhbk5vZGUyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InNwYW5Ob2RlMiIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RTcGFuMiA9IG5hbWVkRmxv
dy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2RlMik7Ci0gICAgICAgICAgICBzaG91bGRCZU5v
bk51bGwoInJlZ2lvbkxpc3RTcGFuMiIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygi
cmVnaW9uTGlzdFNwYW4yLmxlbmd0aCIsIDIpOwotCi0gICAgICAgICAgICB2YXIgc3Bhbk5vZGUz
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNwYW5Ob2RlMyIpOwotICAgICAgICAgICAgdmFy
IHJlZ2lvbkxpc3RTcGFuMyA9IG5hbWVkRmxvdy5nZXRSZWdpb25zQnlDb250ZW50KHNwYW5Ob2Rl
Myk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RTcGFuMyIpOwotICAg
ICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFNwYW4zLmxlbmd0aCIsIDEpOwot
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0U3BhbjMuaXRlbSgw
KS5pZCIsICJyZWdpb24yIik7Ci0KLSAgICAgICAgICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50
LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5v
ZGUuIFRleHQgbm9kZS4gVGV4dCBub2RlLiBUZXh0IG5vZGUuICIpOwotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZSk7Ci0g
ICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFRleHROb2RlID0gbmFtZWRGbG93LmdldFJlZ2lvbnNC
eUNvbnRlbnQodGV4dE5vZGUpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25M
aXN0VGV4dE5vZGUiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RU
ZXh0Tm9kZS5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygi
cmVnaW9uTGlzdFRleHROb2RlLml0ZW0oMCkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAgICAgICAg
ICAvLyBBZGQgYW5vdGhlciB0ZXh0IG5vZGUgdGhhdCB3aWxsIG92ZXJmbG93IHRoZSByZWdpb24y
LgotICAgICAgICAgICAgdmFyIHRleHROb2RlMiA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJU
ZXh0IG5vZGUyLiIpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGlj
bGUiKS5hcHBlbmRDaGlsZCh0ZXh0Tm9kZTIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RU
ZXh0Tm9kZTIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTIpOwotICAg
ICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUyIik7Ci0gICAgICAg
ICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIsIDEpOwot
ICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0
ZW0oMCkuaWQiLCAicmVnaW9uMiIpOwotCi0gICAgICAgICAgICAvLyBBZGQgYW5vdGhlciB0ZXh0
IG5vZGUgdGhhdCBpcyBpbiB0aGUgb3ZlcmZsb3cgb2YgdGhlIGxhc3QgcmVnaW9uLgotICAgICAg
ICAgICAgdmFyIHRleHROb2RlMyA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IG5vZGUz
LiIpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBl
bmRDaGlsZCh0ZXh0Tm9kZTMpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTMg
PSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTMpOwotICAgICAgICAgICAg
c2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0VGV4dE5vZGUzIik7Ci0gICAgICAgICAgICBzaG91
bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUzLmxlbmd0aCIsIDEpOwotICAgICAgICAg
ICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUzLml0ZW0oMCkuaWQi
LCAicmVnaW9uMiIpOwotCi0gICAgICAgICAgICAvLyBBZGQgYW5vdGhlciByZWdpb24gdG8gdGFr
ZSB0aGUgb3ZlcmZsb3dpbmcgZWxlbWVudHMgZnJvbSBzZWNvbmQgcmVnaW9uLgotICAgICAgICAg
ICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAg
ICAgIHJlZ2lvbjMuaWQgPSAicmVnaW9uMyI7Ci0gICAgICAgICAgICByZWdpb24zLmNsYXNzTmFt
ZSA9ICJyZWdpb25Cb3giOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChy
ZWdpb24zKTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RUZXh0Tm9kZTIgPSBuYW1lZEZs
b3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZSk7Ci0gICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJyZWdpb25MaXN0VGV4dE5vZGUyLmxlbmd0aCIsIDIpOwotICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4dE5vZGUyLml0ZW0oMCkuaWQiLCAicmVn
aW9uMiIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0VGV4
dE5vZGUyLml0ZW0oMSkuaWQiLCAicmVnaW9uMyIpOwotCi0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdFRleHROb2RlMzIgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0ZXh0Tm9kZTMp
OwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFRleHROb2RlMzIubGVu
Z3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RU
ZXh0Tm9kZTMyLml0ZW0oMCkuaWQiLCAicmVnaW9uMyIpOwotCi0gICAgICAgICAgICB2YXIgbmFt
ZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3cyIik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9u
TGlzdFAxID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwMSIpKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdFAx
Iik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0UDEubGVuZ3RoIiwg
MSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQMS5pdGVt
KDApLmlkIiwgInJlZ2lvbjQiKTsKLQotICAgICAgICAgICAgdmFyIHAyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgicCIpOwotICAgICAgICAgICAgcDIuaWQgPSAicDIiOwotICAgICAgICAgICAg
cDIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlRleHQgaW5zaWRlIHBhcmFn
cmFwaCBwMi4iKSk7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNs
ZTIiKS5hcHBlbmRDaGlsZChwMik7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdFAyID0gbmFt
ZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHAyKTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9u
TnVsbCgicmVnaW9uTGlzdFAyIik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdp
b25MaXN0UDIubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3RQMi5pdGVtKDApLmlkIiwgInJlZ2lvbjQiKTsKLSAKLSAgICAgICAgICAgIC8v
IGFkZCBhbm90aGVyIGVsZW1lbnQgcCwgaW4gdGhlIG92ZXJmbG93IHBhcnQgb2YgdGhlIHJlZ2lv
bjQKLSAgICAgICAgICAgIHZhciBwMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLSAg
ICAgICAgICAgIHAzLmlkID0gInAzIjsKLSAgICAgICAgICAgIHAzLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKCJUZXh0IGluc2lkZSBwYXJhZ3JhcGggcDMuIikpOwotICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBwZW5kQ2hpbGQocDMp
OwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3RQMyA9IG5hbWVkRmxvdzIuZ2V0UmVnaW9uc0J5
Q29udGVudChwMyk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3RQMyIp
OwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdFAzLmxlbmd0aCIsIDEp
OwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0UDMuaXRlbSgw
KS5pZCIsICJyZWdpb240Iik7Ci0KLSAgICAgICAgICAgIC8vIGFkZCBhbm90aGVyIHJlZ2lvbiB0
byBmbG93MiwgcDIgYW5kIHAzIGdvIHRvIHJlZ2lvbjUKLSAgICAgICAgICAgIHZhciByZWdpb241
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgICAgICByZWdpb241Lmlk
ID0gInJlZ2lvbjUiOwotICAgICAgICAgICAgcmVnaW9uNS5jbGFzc05hbWUgPSAicmVnaW9uQm94
IjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uNSk7Ci0KLSAg
ICAgICAgICAgIHZhciByZWdpb25MaXN0UDIyID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250
ZW50KHAyKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3RQMjIubGVu
Z3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxpc3RQ
MjIuaXRlbSgwKS5pZCIsICJyZWdpb241Iik7Ci0KLSAgICAgICAgICAgIGhpZGVSZWdpb25zKCk7
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50Lmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJjYThmZDc0MGNiYjE3MTBhN2M2ZDcxMzAy
ZWJlYTY4ZDhkMTU0NjkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQuaHRt
bAorKysgL2Rldi9udWxsCkBAIC0xLDY3ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+
Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBl
ci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIGJvZHkgeyBmb250
LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgICAgICAgICAjYXJ0aWNsZSB7IC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93OyB9Ci0gICAgICAgICAgICAuYm9yZGVyIHsgYm9yZGVyOiAxcHggc29saWQg
cmVkOyB9Ci0gICAgICAgICAgICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdp
ZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDEwcHg7
IHRvcDogMjAwcHg7IH0KLQotICAgICAgICAgICAgI2FydGljbGUyIHsgLXdlYmtpdC1mbG93LWlu
dG86IGZsb3cyOyB9Ci0gICAgICAgICAgICAjcmVnaW9uMjEgeyAtd2Via2l0LWZsb3ctZnJvbTog
ZmxvdzI7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGxl
ZnQ6IDIwcHg7IHRvcDogMzAwcHg7fQotICAgICAgICAgICAgI3JlZ2lvbjIyIHsgLXdlYmtpdC1m
bG93LWZyb206IGZsb3cyOyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgcG9zaXRpb246IGFi
c29sdXRlOyBsZWZ0OiAyMHB4OyB0b3A6IDM1MHB4O30KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8
L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPgotICAgICAgICAg
ICAgPHAgaWQ9InAxIj5UZXh0IGZsb3duIGludG8gcmVnaW9uLjwvcD4KLSAgICAgICAgPC9kaXY+
Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9ImJvcmRlciI+PC9kaXY+Ci0KLSAgICAg
ICAgPGRpdiBpZD0iYXJ0aWNsZTIiPgotICAgICAgICAgICAgPHAgaWQ9InAyIj5UZXh0IGZsb3du
IGluIHR3byByZWdpb25zLiBUZXh0IGZsb3duIGluIHR3byByZWdpb25zLiBUZXh0IGZsb3duIGlu
IHR3byByZWdpb25zLjwvcD4KLSAgICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lv
bjIxIiBjbGFzcz0iYm9yZGVyIj48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9uMjIiIGNs
YXNzPSJib3JkZXIiPjwvZGl2PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwotCi0gICAgICAgICAgICBkZXNjcmlwdGlvbigiVGVzdCBmb3IgOTA3NTk6IFtDU1NSZWdpb25z
XSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Tm9kZSB0byBOYW1lZEZsb3c6
OmdldFJlZ2lvbnNCeUNvbnRlbnQuIik7Ci0KLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3cgPSBn
ZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICB2YXIgdGFyZ2V0Tm9kZSA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QgPSBu
YW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudCh0YXJnZXROb2RlKTsKLQotICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdC5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdC5pdGVtKDApLmlkIiwgInJlZ2lvbiIpOwot
Ci0gICAgICAgICAgICBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIpOwotICAgICAg
ICAgICAgLy8gVGVzdCB0aGF0IHRoZSBwMiBlbGVtZW50IGlzIGZsb3duIGludG8gMiByZWdpb25z
Ci0gICAgICAgICAgICB0YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIik7
Ci0gICAgICAgICAgICByZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQo
dGFyZ2V0Tm9kZSk7Ci0KLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Qu
bGVuZ3RoIiwgMik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlZ2lvbkxp
c3QuaXRlbSgwKS5pZCIsICJyZWdpb24yMSIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJyZWdpb25MaXN0Lml0ZW0oMSkuaWQiLCAicmVnaW9uMjIiKTsKLQotICAgICAgICAg
ICAgLy8gVGVzdCB0aGF0IHAxIGVsZW1lbnQgaXMgbm90IGluIGZsb3cyCi0gICAgICAgICAgICB0
YXJnZXROb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIik7Ci0gICAgICAgICAgICBy
ZWdpb25MaXN0ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQodGFyZ2V0Tm9kZSk7Ci0g
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0Lmxlbmd0aCIsIDApOwotCi0g
ICAgICAgICAgICBmdW5jdGlvbiBoaWRlUmVnaW9uc0FuZEZsb3dzKCkgewotICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUudmlzaWJpbGl0eSA9
ICJoaWRkZW4iOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRp
Y2xlMiIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24yMSIpLnN0
eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uMjIiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIGhpZGVSZWdpb25zQW5kRmxvd3MoKTsKLSAgICAgICAg
PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVudDItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2dldC1yZWdpb25zLWJ5LWNvbnRlbnQyLWV4cGVj
dGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGYzM2ZjOGZlZWI1ODViYzlk
MWFjZjVmNjg1YmVkNjY2MTRmMTY2MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29u
dGVudDItZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMzAgKzAsMCBAQAotVGVzdCBm
b3IgOTA3NTk6IFtDU1NSZWdpb25zXSBSZW5hbWUgTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250
ZW50Tm9kZSB0byBOYW1lZEZsb3c6OmdldFJlZ2lvbnNCeUNvbnRlbnQKLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi0KLVBBU1MgcmVnaW9uTGlzdCBpcyBub24tbnVsbC4KLVBBU1MgcmVn
aW9uTGlzdC5sZW5ndGggaXMgMAotUEFTUyByZWdpb25MaXN0MiBpcyBub24tbnVsbC4KLVBBU1Mg
cmVnaW9uTGlzdDIubGVuZ3RoIGlzIDAKLVBBU1MgcmVnaW9uTGlzdCAhPSByZWdpb25MaXN0MiBp
cyB0cnVlCi1QQVNTIHJlZ2lvbkxpc3QzIGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0My5s
ZW5ndGggaXMgMAotUEFTUyByZWdpb25MaXN0NCBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlz
dDQubGVuZ3RoIGlzIDEKLVBBU1MgcmVnaW9uTGlzdDQuaXRlbSgwKS5pZCBpcyAicmVnaW9uIgot
UEFTUyByZWdpb25MaXN0NSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdDUubGVuZ3RoIGlz
IDAKLVBBU1MgcmVnaW9uTGlzdDYgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3Q2Lmxlbmd0
aCBpcyAxCi1QQVNTIHJlZ2lvbkxpc3Q2Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbiIKLVBBU1MgcmVn
aW9uTGlzdDcgaXMgbm9uLW51bGwuCi1QQVNTIHJlZ2lvbkxpc3Q3Lmxlbmd0aCBpcyAwCi1QQVNT
IHJlZ2lvbkxpc3Q4IGlzIG5vbi1udWxsLgotUEFTUyByZWdpb25MaXN0OC5sZW5ndGggaXMgMAot
UEFTUyByZWdpb25MaXN0OSBpcyBub24tbnVsbC4KLVBBU1MgcmVnaW9uTGlzdDkubGVuZ3RoIGlz
IDEKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvZ2V0LXJlZ2lvbnMtYnktY29udGVu
dDIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250ZW50
Mi5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5YmQzYTI4ODExZjEyZGIzMzE4
ODA2MzE2NzcwYjZjZGVjNGJjZmNiLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9nZXQtcmVnaW9ucy1ieS1jb250
ZW50Mi5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTIgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+
Ci08aHRtbD4KLSAgICA8aGVhZD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJj
ZXMvaGVscGVyLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgYm9k
eSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH0KLSAgICAgICAgICAgICNyZWdpb24sICNyZWdp
b24yIHsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLSAgICAgICAgICAgIC5hcnRpY2xl
IHsgLXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgIC5hcnRpY2xlMiB7IC13
ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsgfQotICAgICAgICAgICAgLnJlZ2lvbiB7IC13ZWJraXQt
Zmxvdy1mcm9tOiBmbG93OyB9Ci0gICAgICAgICAgICAucmVnaW9uMiB7IC13ZWJraXQtZmxvdy1m
cm9tOiBmbG93MjsgfQotICAgICAgICAgICAgLm5vUmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206
IG5vbmU7IH0KLSAgICAgICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAg
ICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIiBj
bGFzcz0iYXJ0aWNsZSI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbiIgY2xhc3M9InJl
Z2lvbiI+PC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbjIiPjwvZGl2PgotICAgICAgICA8
c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRl
c3QgZm9yIDkwNzU5OiBbQ1NTUmVnaW9uc10gUmVuYW1lIE5hbWVkRmxvdzo6Z2V0UmVnaW9uc0J5
Q29udGVudE5vZGUgdG8gTmFtZWRGbG93OjpnZXRSZWdpb25zQnlDb250ZW50Iik7Ci0KLSAgICAg
ICAgICAgIHZhciBuYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0KLSAgICAgICAg
ICAgIC8vIEdldHRpbmcgdGhlIHJlZ2lvbnMgZm9yIGEgbm9uIGV4aXN0YW50IG5vZGUgc2hvdWxk
IHJldHVybiBudWxsLgotICAgICAgICAgICAgdmFyIHBFbGVtZW50OwotICAgICAgICAgICAgdmFy
IHJlZ2lvbkxpc3QgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVudChwRWxlbWVudCk7Ci0g
ICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3QiKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlWmVybygicmVnaW9uTGlzdC5sZW5ndGgiKTsKLQotICAgICAgICAgICAgLy8gR2V0dGlu
ZyB0aGUgcmVnaW9ucyBmb3IgYW4gZWxlbWVudCB0aGF0IHdhcyBub3QgYWRkZWQgdG8gdGhlIGRv
bSBzaG91bGQgcmV0dXJuIGFuIGVtcHR5IGxpc3QuCi0gICAgICAgICAgICBwRWxlbWVudCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3Qy
ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOwotICAgICAgICAgICAg
c2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0MiIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygicmVnaW9uTGlzdDIubGVuZ3RoIiwgMCk7Ci0gICAgICAgICAgICBzaG91bGRCZVRydWUo
InJlZ2lvbkxpc3QgIT0gcmVnaW9uTGlzdDIiKTsKLQotICAgICAgICAgICAgLy8gQWRkIHRoZSBl
bGVtZW50IHRvIHRoZSBkb20gYnV0IG5vdCBpbiB0aGUgZmxvdy4gVGhlIHJlZ2lvbiBsaXN0IHNo
b3VsZCBiZSBlbXB0eS4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocEVs
ZW1lbnQpOwotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QzID0gbmFtZWRGbG93LmdldFJlZ2lv
bnNCeUNvbnRlbnQocEVsZW1lbnQpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdp
b25MaXN0MyIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDMubGVu
Z3RoIiwgMCk7Ci0KLSAgICAgICAgICAgIC8vIEFkZCB0aGUgc2FtZSBlbGVtZW50IHRvIHRoZSBm
bG93LiBUaGUgcmVnaW9uIGxpc3Qgc2hvdWxkIGNvbnRhaW4gb25lIHJlZ2lvbi4KLSAgICAgICAg
ICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQocEVsZW1lbnQpOwotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5hcHBlbmRDaGlsZChwRWxlbWVudCk7Ci0g
ICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDQgPSBuYW1lZEZsb3cuZ2V0UmVnaW9uc0J5Q29udGVu
dChwRWxlbWVudCk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lvbkxpc3Q0Iik7
Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0NC5sZW5ndGgiLCAxKTsK
LSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdDQuaXRlbSgwKS5p
ZCIsICJyZWdpb24iKTsKLQotICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSByZWdpb24gbm9kZSBh
bmQgZ2V0IHRoZSByZWdpb24gbGlzdC4gVGhlIGxpc3Qgc2hvdWxkIGJlIGVtcHR5LgotICAgICAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbiIpLmNsYXNzTmFtZSA9ICJub1Jl
Z2lvbiI7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDUgPSBuYW1lZEZsb3cuZ2V0UmVnaW9u
c0J5Q29udGVudChwRWxlbWVudCk7Ci0gICAgICAgICAgICBzaG91bGRCZU5vbk51bGwoInJlZ2lv
bkxpc3Q1Iik7Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJyZWdpb25MaXN0NS5sZW5n
dGgiLCAwKTsKLQotICAgICAgICAgICAgLy8gQnJpbmcgYmFjayB0aGUgcmVnaW9uIGFuZCBnZXQg
dGhlIHJlZ2lvbiBsaXN0LiBUaGUgbGlzdCBzaG91bGQgaGF2ZSBvbmUgZWxlbWVudC4KLSAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb24iKS5jbGFzc05hbWUgPSAicmVn
aW9uIjsKLSAgICAgICAgICAgIHZhciByZWdpb25MaXN0NiA9IG5hbWVkRmxvdy5nZXRSZWdpb25z
QnlDb250ZW50KHBFbGVtZW50KTsKLSAgICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9u
TGlzdDYiKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q2Lmxlbmd0
aCIsIDEpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZWdpb25MaXN0Ni5p
dGVtKDApLmlkIiwgInJlZ2lvbiIpOwotCi0gICAgICAgICAgICAvLyBSZW1vdmUgdGhlIG5hbWVk
IGZsb3csIHRoZSByZWdpb24gbGlzdCBzaG91bGQgYmUgZW1wdHkuCi0gICAgICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOwotICAgICAgICAg
ICAgdmFyIHJlZ2lvbkxpc3Q3ID0gbmFtZWRGbG93LmdldFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1l
bnQpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxsKCJyZWdpb25MaXN0NyIpOwotICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlzdDcubGVuZ3RoIiwgMCk7Ci0KLSAgICAg
ICAgICAgIC8vIE1vdmUgdGhlIGFydGljbGUgdG8gYW5vdGhlciBuYW1lZCBmbG93LCB0aGUgcmVn
aW9uIGxpc3Qgc2hvdWxkIGJlIGVtcHR5LgotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAiYXJ0aWNsZTIiOwotICAgICAgICAgICAgdmFy
IG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIpOwotICAgICAgICAgICAgdmFyIHJl
Z2lvbkxpc3Q4ID0gbmFtZWRGbG93Mi5nZXRSZWdpb25zQnlDb250ZW50KHBFbGVtZW50KTsKLSAg
ICAgICAgICAgIHNob3VsZEJlTm9uTnVsbCgicmVnaW9uTGlzdDgiKTsKLSAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oInJlZ2lvbkxpc3Q4Lmxlbmd0aCIsIDApOwotCi0gICAgICAgICAgICAv
LyBBZGQgYSByZWdpb24gdG8gdGhlIHNlY29uZCBuYW1lZCBmbG93LCB0aGUgcmVnaW9uIGxpc3Qg
c2hvdWxkIGNvbnRhaW4gb25lIGVsZW1lbnQKLSAgICAgICAgICAgIC8vIHNpbmNlIHRoZSBwIGVs
ZW1lbnQgaXMgYSBjaGlsZCBvZiBhcnRpY2xlIHRoYXQgaXMgY29sbGVjdGVkIGJ5IGZsb3cyLgot
ICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbjIiKS5jbGFzc05hbWUg
PSAicmVnaW9uMiI7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uTGlzdDkgPSBuYW1lZEZsb3cyLmdl
dFJlZ2lvbnNCeUNvbnRlbnQocEVsZW1lbnQpOwotICAgICAgICAgICAgc2hvdWxkQmVOb25OdWxs
KCJyZWdpb25MaXN0OSIpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygicmVnaW9uTGlz
dDkubGVuZ3RoIiwgMSk7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci0gICAgPC9ib2R5Pgot
PC9odG1sPgotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVm
dC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tbXVsdGlwbGUtcmVnaW9ucy1l
eHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIzY2IwMWFiZmI3NDFj
NTAyMmEyNTU5MTgzZWEwZjdhMDg2YzVhZTYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zm
c2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMjMgKzAsMCBAQAotVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgaW4gYSBuYW1lZCBm
bG93LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1MgZGl2VGV4dDEub2Zmc2V0
UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKLVBBU1MgZGl2VGV4dDEub2Zmc2V0TGVmdCBpcyAxMDAK
LVBBU1MgZGl2VGV4dDEub2Zmc2V0VG9wIGlzIDQ1MAotUEFTUyBkaXZUZXh0Ml8xLm9mZnNldFBh
cmVudCBpcyBkb2N1bWVudC5ib2R5Ci1QQVNTIGRpdlRleHQyXzEub2Zmc2V0TGVmdCBpcyA1MDAK
LVBBU1MgZGl2VGV4dDJfMS5vZmZzZXRUb3AgaXMgMTUwCi1QQVNTIGRpdlRleHQyXzIub2Zmc2V0
UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKLVBBU1MgZGl2VGV4dDJfMi5vZmZzZXRMZWZ0IGlzIDQ1
MAotUEFTUyBkaXZUZXh0Ml8yLm9mZnNldFRvcCBpcyAzNTAKLVBBU1MgZGl2VGV4dDJfMy5vZmZz
ZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQotUEFTUyBkaXZUZXh0Ml8zLm9mZnNldExlZnQgaXMg
NjAwCi1QQVNTIGRpdlRleHQyXzMub2Zmc2V0VG9wIGlzIDUwMAotUEFTUyBpbWFnZS5vZmZzZXRQ
YXJlbnQgaXMgZG9jdW1lbnQuYm9keQotUEFTUyBpbWFnZS5vZmZzZXRMZWZ0IGlzIDY1MAotUEFT
UyBpbWFnZS5vZmZzZXRUb3AgaXMgNjIwCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
Ci0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L29mZnNldExlZnQtb2Zmc2V0VG9wLWluLW11bHRpcGxlLXJlZ2lvbnMuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1tdWx0aXBsZS1yZWdpb25z
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdlMjZjN2NmYjkzYWI0YmYyZmU2
ZjVhMmIyOTMwY2M5YThiMjYzZmMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9w
LWluLW11bHRpcGxlLXJlZ2lvbnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDI4MiArMCwwIEBA
Ci08aHRtbD4KLTxoZWFkPgotCTxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0JCS8qIE1ha2Ugc3Vy
ZSB0aGUgY29uc29sZSBhbmQgdGhlIGRlc2NyaXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRo
ZSByZXN0IG9mIHRoZSBsYXlvdXQuICovCi0JCSNkZXNjcmlwdGlvbiB7Ci0JCQlwb3NpdGlvbjog
YWJzb2x1dGU7Ci0JCQl0b3A6IDBweDsKLQkJfQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9u
OiBhYnNvbHV0ZTsKLQkJCXRvcDogMTAwcHg7Ci0JCX0KLQotCQkjZGl2TWFpbjEgewotCQkJYm9y
ZGVyOiAycHggc29saWQgYmx1ZTsKLQkJCXdpZHRoOiAzMDBweDsKLQkJCWhlaWdodDogMjI2cHg7
Ci0JCQktd2Via2l0LWZsb3ctaW50bzogZmxvdzE7Ci0JCX0KLQotCQkjZGl2TWFpbjIgewotCQkJ
Ym9yZGVyOiAycHggc29saWQgYmx1ZTsKLQkJCXdpZHRoOiAyMTFweDsKLQkJCWhlaWdodDogNDcw
cHg7Ci0JCQlwYWRkaW5nLWxlZnQ6IDVweDsKLQkJCW1hcmdpbjogNXB4OwotCQkJbWFyZ2luLWxl
ZnQ6IDEwcHg7Ci0JCQlsZWZ0OiA0MHB4OwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cyOwot
CQl9Ci0KLQkJLmRpdlRleHQgewotCQkJYm9yZGVyOiAxcHggc29saWQgZ3JlZW47Ci0JCQljb2xv
cjogZ3JlZW47Ci0JCX0KLQotCQkjZGl2VGV4dDEgewotCQkJd2lkdGg6IDIwMHB4OwotCQkJaGVp
Z2h0OiAxNTBweDsKLQkJCXBvc2l0aW9uOiByZWxhdGl2ZTsKLQkJCWxlZnQ6IDMwcHg7Ci0JCQl0
b3A6IDEwcHg7Ci0JCX0KLQotCQkjZGl2VGV4dDJfMSB7Ci0JCQlib3JkZXItY29sb3I6ICMwMDk5
OTk7Ci0JCQljb2xvcjogIzAwOTk5OTsKLQkJCW1hcmdpbjogMTBweDsKLQkJCXdpZHRoOiAxODBw
eDsKLQkJCWhlaWdodDogMTQwcHg7Ci0JCX0KLQotCQkjZGl2VGV4dDJfMiB7Ci0JCQl3aWR0aDog
MjAzcHg7Ci0JCQloZWlnaHQ6IDI3MHB4OwotCQl9Ci0KLQkJI2RpdlRleHQyXzMgewotCQkJbWFy
Z2luOiA0cHg7Ci0JCQl3aWR0aDogMTkycHg7Ci0JCQloZWlnaHQ6IDEwNXB4OwotCQkJcG9zaXRp
b246IHJlbGF0aXZlOwotCQkJdG9wOiAxMTVweDsKLQkJCWNvbG9yOiAjNzc3NzAwOwotCQkJYm9y
ZGVyLWNvbG9yOiAjNzc3NzAwOwotCQl9Ci0KLQkJI2Fic29sdXRlU3BhbiB7Ci0JCQlwb3NpdGlv
bjogYWJzb2x1dGU7Ci0JCX0KLQotCQkjc3BhbiB7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0J
CQl0b3A6IDExNXB4OwotCQkJbGVmdDogMjQ7Ci0JCQljb2xvcjogYmxhY2s7Ci0JCQlmb250LXNp
emU6IDEycHg7Ci0JCQltYXJnaW4tbGVmdDogNHB4OwotCQkJcGFkZGluZzogMXB4OwotCQkJYm9y
ZGVyOiAxcHggc29saWQgYmxhY2s7Ci0JCX0KLQotCQkjaW1hZ2UgewotCQkJYm9yZGVyOiAxcHgg
ZGFzaGVkIHJlZDsKLQkJCXdpZHRoOiAxNXB4OwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJ
dG9wOiAxMjRweDsKLQkJCW1hcmdpbi1sZWZ0OiA1NHB4OwotCQl9Ci0KLQkJI2R1bW15MSB7Ci0J
CQl3aWR0aDogMTAwcHg7Ci0JCQloZWlnaHQ6IDI1cHg7Ci0JCQlib3JkZXI6IDFweCBzb2xpZCBi
bGFjazsKLQkJCW1hcmdpbjogNXB4OwotCQkJbWFyZ2luLWxlZnQ6IDIwcHg7Ci0JCX0KLQotCQku
cmVnaW9uMSB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7Ci0JCQlib3JkZXI6IDFweCBz
b2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0JCQlsZWZ0OiA1OXB4OwotCQkJdG9w
OiA0MjlweDsKLQkJCXdpZHRoOiAzMDRweDsKLQkJCWhlaWdodDogMjMwcHg7Ci0JCX0KLQotCQku
cmVnaW9uMiB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7Ci0JCQlib3JkZXI6IDFweCBz
b2xpZCByZWQ7Ci0JCX0KLQotCQkjZmlyc3RfcmVnaW9uMiB7Ci0JCQlwb3NpdGlvbjogcmVsYXRp
dmU7Ci0JCQlsZWZ0OiA0NjRweDsKLQkJCXRvcDogLTE0MHB4OwotCQkJd2lkdGg6IDUwMHB4Owot
CQkJaGVpZ2h0OiAxNjBweDsKLQkJfQotCi0JCSNzZWNvbmRfcmVnaW9uMiB7Ci0JCQlwb3NpdGlv
bjogcmVsYXRpdmU7Ci0JCQlsZWZ0OiA0MjRweDsKLQkJCXRvcDogLTk0cHg7Ci0JCQl3aWR0aDog
MzMwcHg7Ci0JCQloZWlnaHQ6IDE1MHB4OwotCQl9Ci0KLQkJI3RoaXJkX3JlZ2lvbjIgewotCQkJ
cG9zaXRpb246IHJlbGF0aXZlOwotCQkJbGVmdDogNTY5cHg7Ci0JCQl0b3A6IC02NnB4OwotCQkJ
d2lkdGg6IDI4MnB4OwotCQkJaGVpZ2h0OiAxOTVweDsKLQkJfQotCi0JCS5ncmlkIHsKLQkJCXBv
c2l0aW9uOiBhYnNvbHV0ZTsKLQkJCXRvcDogNzAwcHg7Ci0JCQl3aWR0aDogMTAwcHg7Ci0JCQlo
ZWlnaHQ6IDEwMHB4OwotCQkJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQt
YWxpZ246IHJpZ2h0OwotCQkJZm9udC1zaXplOiAxNHB4OwotCQkJY29sb3I6IGJsdWU7Ci0JCX0K
LQotCQkudmdyaWQgewotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJbGVmdDogOTAwcHg7Ci0J
CQl3aWR0aDogMTAwcHg7Ci0JCQloZWlnaHQ6IDEwMHB4OwotCQkJYm9yZGVyLWJvdHRvbTogMXB4
IHNvbGlkIGJsdWU7Ci0JCQl0ZXh0LWFsaWduOiBib3R0b207Ci0JCQlmb250LXNpemU6IDE0cHg7
Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQotCi0JCSNncmlkMSB7Ci0JCQlsZWZ0OiAwcHg7Ci0JCX0K
LQkJI2dyaWQyIHsKLQkJCWxlZnQ6IDEwMHB4OwotCQl9Ci0JCSNncmlkMyB7Ci0JCQlsZWZ0OiAy
MDBweDsKLQkJfQotCQkjZ3JpZDQgewotCQkJbGVmdDogMzAwcHg7Ci0JCX0KLQkJI2dyaWQ1IHsK
LQkJCWxlZnQ6IDQwMHB4OwotCQl9Ci0JCSNncmlkNiB7Ci0JCQlsZWZ0OiA1MDBweDsKLQkJfQot
CQkjZ3JpZDcgewotCQkJbGVmdDogNjAwcHg7Ci0JCX0KLQotCQkjdmdyaWQxIHsKLQkJCXRvcDog
MHB4OwotCQl9Ci0JCSN2Z3JpZDIgewotCQkJdG9wOiAxMDBweDsKLQkJfQotCQkjdmdyaWQzIHsK
LQkJCXRvcDogMjAwcHg7Ci0JCX0KLQkJI3ZncmlkNCB7Ci0JCQl0b3A6IDMwMHB4OwotCQl9Ci0J
CSN2Z3JpZDUgewotCQkJdG9wOiA0MDBweDsKLQkJfQotCQkjdmdyaWQ2IHsKLQkJCXRvcDogNTAw
cHg7Ci0JCX0KLQkJI3ZncmlkNyB7Ci0JCQl0b3A6IDYwMHB4OwotCQl9Ci0JCSN2Z3JpZDggewot
CQkJdG9wOiA3MDBweDsKLQkJCWJvcmRlcjogbm9uZTsKLQkJfQotCTwvc3R5bGU+Ci0KLQk8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVh
ZD4KLQotPGJvZHkgaWQ9ImJvZHkiPgotCTxkaXYgaWQ9ImRpdk1haW4xIj4KLQkJPGRpdiBjbGFz
cz0iZGl2VGV4dCIgaWQ9ImRpdlRleHQxIj48L2Rpdj4KLQk8L2Rpdj4KLQotCTxkaXYgaWQ9ImRp
dk1haW4yIj4KLQkJPGRpdiBjbGFzcz0iZHVtbXkiIGlkPSJkdW1teTEiPjwvZGl2PgotCQk8ZGl2
IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDJfMSI+PC9kaXY+Ci0JCTxkaXYgY2xhc3M9ImRp
dlRleHQiIGlkPSJkaXZUZXh0Ml8yIj4KLQkJCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZU
ZXh0Ml8zIj48L2Rpdj4KLQkJCTxpbWcgaWQ9ImltYWdlIiBzcmM9InJlc291cmNlcy90cmFuc3Bh
cmVudC5wbmciPjwvaW5wdXQ+Ci0JCTwvZGl2PgkJCi0JPC9kaXY+Ci0KLQk8ZGl2IGNsYXNzPSJy
ZWdpb24xIj48L2Rpdj4KLQotCTxkaXYgY2xhc3M9InJlZ2lvbjIiIGlkPSJmaXJzdF9yZWdpb24y
Ij48L2Rpdj4KLQk8ZGl2IGNsYXNzPSJyZWdpb24yIiBpZD0ic2Vjb25kX3JlZ2lvbjIiPjwvZGl2
PgotCTxkaXYgY2xhc3M9InJlZ2lvbjIiIGlkPSJ0aGlyZF9yZWdpb24yIj48L2Rpdj4KLQotCTxk
aXYgaWQ9ImdyaWQxIiBjbGFzcz0iZ3JpZCI+MTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkMiIg
Y2xhc3M9ImdyaWQiPjIwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDMiIGNsYXNzPSJncmlkIj4z
MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ0IiBjbGFzcz0iZ3JpZCI+NDAwcHg8L2Rpdj4KLQk8
ZGl2IGlkPSJncmlkNSIgY2xhc3M9ImdyaWQiPjUwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDYi
IGNsYXNzPSJncmlkIj42MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ3IiBjbGFzcz0iZ3JpZCI+
NzAwcHg8L2Rpdj4KLQotCTxkaXYgaWQ9InZncmlkMSIgY2xhc3M9InZncmlkIj48L2Rpdj4KLQk8
ZGl2IGlkPSJ2Z3JpZDIiIGNsYXNzPSJ2Z3JpZCI+MTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3Jp
ZDMiIGNsYXNzPSJ2Z3JpZCI+MjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDQiIGNsYXNzPSJ2
Z3JpZCI+MzAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDUiIGNsYXNzPSJ2Z3JpZCI+NDAwcHg8
L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDYiIGNsYXNzPSJ2Z3JpZCI+NTAwcHg8L2Rpdj4KLQk8ZGl2
IGlkPSJ2Z3JpZDciIGNsYXNzPSJ2Z3JpZCI+NjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDgi
IGNsYXNzPSJ2Z3JpZCI+NzAwcHg8L2Rpdj4KLQotCTxzY3JpcHQ+Ci0JCWRlc2NyaXB0aW9uKCJU
ZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5hbWVkIGZsb3cuIikKLQotCQlzaG91
bGRCZSgiZGl2VGV4dDEub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxk
QmUoImRpdlRleHQxLm9mZnNldExlZnQiLCAiMTAwIik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0MS5v
ZmZzZXRUb3AiLCAiNDUwIik7Ci0KLQkJc2hvdWxkQmUoImRpdlRleHQyXzEub2Zmc2V0UGFyZW50
IiwgImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQyXzEub2Zmc2V0TGVmdCIs
ICI1MDAiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQyXzEub2Zmc2V0VG9wIiwgIjE1MCIpOwotCi0J
CXNob3VsZEJlKCJkaXZUZXh0Ml8yLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0J
CXNob3VsZEJlKCJkaXZUZXh0Ml8yLm9mZnNldExlZnQiLCAiNDUwIik7Ci0JCXNob3VsZEJlKCJk
aXZUZXh0Ml8yLm9mZnNldFRvcCIsICIzNTAiKTsKLQotCQlzaG91bGRCZSgiZGl2VGV4dDJfMy5v
ZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDJfMy5v
ZmZzZXRMZWZ0IiwgIjYwMCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDJfMy5vZmZzZXRUb3AiLCAi
NTAwIik7Ci0KLQkJc2hvdWxkQmUoImltYWdlLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5
Iik7Ci0JCXNob3VsZEJlKCJpbWFnZS5vZmZzZXRMZWZ0IiwgIjY1MCIpOwotCQlzaG91bGRCZSgi
aW1hZ2Uub2Zmc2V0VG9wIiwgIjYyMCIpOwotCi0JCWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
CQkJdmFyIGFsbEdyYXBoaWNFbGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5y
ZWdpb24xLCAucmVnaW9uMiwgLmRpdlRleHQsIC5ncmlkLCAudmdyaWQsIC5kdW1teSwgI3NwYW4s
ICNpbWFnZSIpOwotCQkJZm9yICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5sZW5ndGg7
IGkrKykKLQkJCQlhbGxHcmFwaGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsK
LQkJfQotCQkKLQk8L3NjcmlwdD4KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBl
bmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExl
ZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1hYnNvbHV0ZS1zdGlja3ktZml4ZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA2YjJhYTI5ODEzOWU0MTY3NGU3NDkxM2VkN2QxZTAxMTUxMWNjMWNlLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5
LWZpeGVkLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDIwICswLDAgQEAKLVRlc3Qg
b2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGFic29sdXRlLCBz
dGlja3kgYW5kIGZpeGVkIHBvc2l0aW9uaW5nLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Ci0KLVBBU1MgZGl2VGV4dDEub2Zmc2V0UGFyZW50IGlzIGRpdk1haW4xCi1QQVNTIGRpdlRleHQx
Lm9mZnNldExlZnQgaXMgMTAKLVBBU1MgZGl2VGV4dDEub2Zmc2V0VG9wIGlzIDEwCi1QQVNTIGRp
dlRleHQyLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5Ci1QQVNTIGRpdlRleHQyLm9mZnNl
dExlZnQgaXMgMTAwCi1QQVNTIGRpdlRleHQyLm9mZnNldFRvcCBpcyA1MDAKLVBBU1MgZGl2VGV4
dDMub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkKLVBBU1MgZGl2VGV4dDMub2Zmc2V0TGVm
dCBpcyA2MDAKLVBBU1MgZGl2VGV4dDMub2Zmc2V0VG9wIGlzIDQwMAotUEFTUyBkaXZUZXh0NC5v
ZmZzZXRQYXJlbnQgaXMgbnVsbAotUEFTUyBkaXZUZXh0NC5vZmZzZXRMZWZ0IGlzIDUwCi1QQVNT
IGRpdlRleHQ0Lm9mZnNldFRvcCBpcyAyMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVkLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVn
aW9uLWFic29sdXRlLXN0aWNreS1maXhlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3YjkwODFlZTcxODMyNzQyZDY4MTg1YmNlNTNhYTFhNWVhMDhmM2QxLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdpb24tYWJzb2x1dGUtc3RpY2t5LWZpeGVk
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzMDUgKzAsMCBAQAotPGh0bWw+Ci08aGVhZD4KLQk8
c3R5bGUgdHlwZT0idGV4dC9jc3MiPgotCQkvKiBNYWtlIHN1cmUgdGhlIGNvbnNvbGUgYW5kIHRo
ZSBkZXNjcmlwdGlvbiBkb24ndCBpbnRlcmZlcmUgd2l0aCB0aGUgcmVzdCBvZiB0aGUgbGF5b3V0
LiAqLwotCQkjZGVzY3JpcHRpb24gewotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJdG9wOiAw
cHg7Ci0JCX0KLQotCQkjY29uc29sZSB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQl0b3A6
IDEwMHB4OwotCQl9Ci0KLQkJI2Rpdk1haW4xIHsKLQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7
Ci0JCQloZWlnaHQ6IDEwNXB4OwotCQkJbWFyZ2luOiAxMHB4OwotCQkJcG9zaXRpb246IHJlbGF0
aXZlOwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cxOwotCQl9Ci0KLQkJI2Rpdk1haW4yIHsK
LQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQloZWlnaHQ6IDEyMHB4OwotCQkJbWFyZ2lu
OiAxMHB4OwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cyOwotCQl9Ci0KLQkJI2Rpdk1haW4z
IHsKLQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQl3aWR0aDogMjExcHg7Ci0JCQloZWln
aHQ6IDE0NnB4OwotCQkJcGFkZGluZy1sZWZ0OiA1cHg7Ci0JCQltYXJnaW46IDVweDsKLQkJCW1h
cmdpbi1sZWZ0OiAxMHB4OwotCQkJbGVmdDogNDBweDsKLQkJCS13ZWJraXQtZmxvdy1pbnRvOiBm
bG93MzsKLQkJfQotCi0JCSNkaXZNYWluNCB7Ci0JCQlib3JkZXI6IDJweCBzb2xpZCBibHVlOwot
CQkJd2lkdGg6IDIyNXB4OwotCQkJaGVpZ2h0OiAxMjBweDsKLQkJCXBhZGRpbmctbGVmdDogNXB4
OwotCQkJcGFkZGluZy10b3A6IDVweDsKLQkJCW1hcmdpbjogOHB4OwotCQkJLXdlYmtpdC1mbG93
LWludG86IGZsb3c0OwotCQl9Ci0KLQkJLmRpdlRleHQgewotCQkJYm9yZGVyOiAxcHggc29saWQg
Z3JlZW47Ci0JCQljb2xvcjogZ3JlZW47Ci0JCQlmb250LXNpemU6IDE0cHg7Ci0JCX0KLQotCQkj
ZGl2VGV4dDEgewotCQkJd2lkdGg6IDI1MHB4OwotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJ
bGVmdDogMTBweDsKLQkJCXRvcDogMTBweDsKLQkJfQotCi0JCSNkaXZUZXh0MiB7Ci0JCQl3aWR0
aDogMjAwcHg7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQlsZWZ0OiAyMHB4OwotCQkJdG9w
OiAyMHB4OwotCQl9Ci0KLQkJI2RpdlRleHQzIHsKLQkJCWJvcmRlci1jb2xvcjogIzAwOTk5OTsK
LQkJCWNvbG9yOiAjMDA5OTk5OwotCQkJbWFyZ2luOiAxMHB4OwotCQkJd2lkdGg6IDE4MHB4Owot
CQkJaGVpZ2h0OiA5MHB4OwotCQkJcG9zaXRpb246IC13ZWJraXQtc3RpY2t5OwotCQkJdG9wOiA1
MHB4OwotCQl9Ci0KLQkJI2RpdlRleHQ0IHsKLQkJCWJvcmRlci1jb2xvcjogIzAwOTk5OTsKLQkJ
CWNvbG9yOiAjMDA5OTk5OwotCQkJd2lkdGg6IDE4MHB4OwotCQkJaGVpZ2h0OiAxMDBweDsKLQkJ
CXBvc2l0aW9uOiBmaXhlZDsKLQkJCWxlZnQ6IDUwcHg7Ci0JCQl0b3A6IDIwcHg7Ci0JCX0KLQot
CQkjZHVtbXkgewotCQkJd2lkdGg6IDEwMHB4OwotCQkJaGVpZ2h0OiAyNXB4OwotCQkJYm9yZGVy
OiAxcHggc29saWQgYmxhY2s7Ci0JCQltYXJnaW46IDVweDsKLQkJCW1hcmdpbi1sZWZ0OiAyMHB4
OwotCQl9Ci0KLQkJI3JlZ2lvbjEgewotCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cxOwotCQkJ
Ym9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJbGVmdDog
NTlweDsKLQkJCXRvcDogMzM1cHg7Ci0JCQl3aWR0aDogMzA0cHg7Ci0JCQloZWlnaHQ6IDEyNXB4
OwotCQl9Ci0KLQkJI3JlZ2lvbjIgewotCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3cyOwotCQkJ
Ym9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJbGVmdDog
NzFweDsKLQkJCXRvcDogMzQ0cHg7Ci0JCQl3aWR0aDogMzA0cHg7Ci0JCQloZWlnaHQ6IDE0MHB4
OwotCQl9Ci0KLQkJI3JlZ2lvbjMgewotCQkJLXdlYmtpdC1mbG93LWZyb206IGZsb3czOwotCQkJ
Ym9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJbWFyZ2lu
LXRvcDogMjBweDsKLQkJCWxlZnQ6IDU2NHB4OwotCQkJdG9wOiA1M3B4OwotCQkJd2lkdGg6IDI1
MHB4OwotCQkJaGVpZ2h0OiAxNjBweDsKLQkJCW92ZXJmbG93OiBoaWRkZW47Ci0JCX0KLQotCQkj
cmVnaW9uNCB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzQ7Ci0JCQlib3JkZXI6IDFweCBz
b2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogcmVsYXRpdmU7Ci0JCQltYXJnaW4tdG9wOiAyMHB4Owot
CQkJbGVmdDogNDUwcHg7Ci0JCQl0b3A6IDUzcHg7Ci0JCQl3aWR0aDogMjUwcHg7Ci0JCQloZWln
aHQ6IDE0MHB4OwotCQl9Ci0KLQkJLmdyaWQgewotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJ
dG9wOiA3NTBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAwcHg7Ci0JCQlib3Jk
ZXItcmlnaHQ6IDFweCBzb2xpZCBibHVlOwotCQkJdGV4dC1hbGlnbjogcmlnaHQ7Ci0JCQlmb250
LXNpemU6IDE0cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQotCi0JCS52Z3JpZCB7Ci0JCQlwb3Np
dGlvbjogYWJzb2x1dGU7Ci0JCQlsZWZ0OiA5MDBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhl
aWdodDogMTAwcHg7Ci0JCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQt
YWxpZ246IGJvdHRvbTsKLQkJCWZvbnQtc2l6ZTogMTRweDsKLQkJCWNvbG9yOiBibHVlOwotCQl9
Ci0KLQkJI2dyaWQxIHsKLQkJCWxlZnQ6IDBweDsKLQkJfQotCQkjZ3JpZDIgewotCQkJbGVmdDog
MTAwcHg7Ci0JCX0KLQkJI2dyaWQzIHsKLQkJCWxlZnQ6IDIwMHB4OwotCQl9Ci0JCSNncmlkNCB7
Ci0JCQlsZWZ0OiAzMDBweDsKLQkJfQotCQkjZ3JpZDUgewotCQkJbGVmdDogNDAwcHg7Ci0JCX0K
LQkJI2dyaWQ2IHsKLQkJCWxlZnQ6IDUwMHB4OwotCQl9Ci0JCSNncmlkNyB7Ci0JCQlsZWZ0OiA2
MDBweDsKLQkJfQotCi0JCSN2Z3JpZDEgewotCQkJdG9wOiAwcHg7Ci0JCX0KLQkJI3ZncmlkMiB7
Ci0JCQl0b3A6IDEwMHB4OwotCQl9Ci0JCSN2Z3JpZDMgewotCQkJdG9wOiAyMDBweDsKLQkJfQot
CQkjdmdyaWQ0IHsKLQkJCXRvcDogMzAwcHg7Ci0JCX0KLQkJI3ZncmlkNSB7Ci0JCQl0b3A6IDQw
MHB4OwotCQl9Ci0JCSN2Z3JpZDYgewotCQkJdG9wOiA1MDBweDsKLQkJfQotCQkjdmdyaWQ3IHsK
LQkJCXRvcDogNjAwcHg7Ci0JCX0KLQkJI3ZncmlkOCB7Ci0JCQl0b3A6IDcwMHB4OwotCQkJYm9y
ZGVyOiBub25lOwotCQl9Ci0JPC9zdHlsZT4KLQotCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotCi0JPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiPgotCQlmdW5jdGlvbiB3cml0ZU9mZnNldEluZm8oc2VsZWN0b3IpIHsKLQkJCXZhciBk
aXZJdGVtcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpOwotCQkJCQotCQkJ
Zm9yICh2YXIgaT0wOyBpPGRpdkl0ZW1zLmxlbmd0aDsgaSsrKSB7Ci0JCQkJdmFyIGRpdkl0ZW0g
PSBkaXZJdGVtc1tpXTsKLQkJCQl2YXIgZXhpc3RpbmdIVE1MID0gZGl2SXRlbS5pbm5lckhUTUw7
Ci0JCQkJdmFyIG5ld0hUTUwgPSBleGlzdGluZ0hUTUwucmVwbGFjZSgiI29mZlRvcCMiLCBkaXZJ
dGVtLm9mZnNldFRvcCk7Ci0JCQkJbmV3SFRNTCA9IG5ld0hUTUwucmVwbGFjZSgiI29mZkxlZnQj
IiwgZGl2SXRlbS5vZmZzZXRMZWZ0KTsKLQkJCQlpZiAoZGl2SXRlbS5vZmZzZXRQYXJlbnQpCi0J
CQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNvZmZQYXJlbnQjIiwgZGl2SXRlbS5vZmZz
ZXRQYXJlbnQudGFnTmFtZSArICIoIiArIGRpdkl0ZW0ub2Zmc2V0UGFyZW50LmlkICsgIikiKTsK
LQkJCQllbHNlCi0JCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNvZmZQYXJlbnQjIiwg
Im51bGwiKTsKLQkJCQlkaXZJdGVtLmlubmVySFRNTCA9IG5ld0hUTUw7Ci0JCQl9Ci0JCX0KLQkJ
ZnVuY3Rpb24gbXlPbkxvYWQoKSB7Ci0JCQl3cml0ZU9mZnNldEluZm8oIi5kaXZUZXh0Iik7Ci0J
CX0KLQk8L3NjcmlwdD4KLTwvaGVhZD4KLQotPGJvZHkgaWQ9ImJvZHkiIG9ubG9hZCA9ICJteU9u
TG9hZCgpOyI+Ci0JPGRpdiBpZD0iZGl2TWFpbjEiPgotCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBp
ZD0iZGl2VGV4dDEiPlRoaXMgaXMgPGI+ZGl2VGV4dDE8L2I+IChhYnNvbHV0ZSk6PGJyLz4tIG9m
ZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50IzwvYj48YnIvPi0gb2Zmc2V0TGVmdCBpcyA8Yj4j
b2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRvcCBpcyA8Yj4jb2ZmVG9wIzwvYj48L2Rpdj4KLQk8
L2Rpdj4KLQotCTxkaXYgaWQ9ImRpdk1haW4yIj4KLQkJPGRpdiBjbGFzcz0iZGl2VGV4dCIgaWQ9
ImRpdlRleHQyIj5UaGlzIGlzIDxiPmRpdlRleHQyPC9iPiAoYWJzb2x1dGUpOjxici8+LSBvZmZz
ZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+I29m
ZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9kaXY+Ci0JPC9k
aXY+Ci0KLQk8ZGl2IGlkPSJkaXZNYWluMyI+Ci0JCTxkaXYgY2xhc3M9ImR1bW15IiBpZD0iZHVt
bXkiPmR1bW15PC9kaXY+Ci0JCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlkPSJkaXZUZXh0MyI+PHNw
YW4gY2xhc3M9Im9mZnNldEluZm8iPlRoaXMgaXMgPGI+ZGl2VGV4dDM8L2I+IChzdGlja3kpOjxi
ci8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQg
aXMgPGI+I29mZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9z
cGFuPjwvZGl2PgotCTwvZGl2PgotCi0JPGRpdiBpZD0iZGl2TWFpbjQiPgotCQk8ZGl2IGNsYXNz
PSJkaXZUZXh0IiBpZD0iZGl2VGV4dDQiPlRoaXMgaXMgPGI+ZGl2VGV4dDQ8L2I+IChmaXhlZCk6
PGJyLz4tIG9mZnNldFBhcmVudCBpcyA8Yj4jb2ZmUGFyZW50IzwvYj48YnIvPi0gb2Zmc2V0TGVm
dCBpcyA8Yj4jb2ZmTGVmdCM8L2I+PGJyLz4tIG9mZnNldFRvcCBpcyA8Yj4jb2ZmVG9wIzwvYj48
L2Rpdj4KLQk8L2Rpdj4KLQotCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjEiPjwvZGl2
PgotCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjIiPjwvZGl2PgotCTxkaXYgY2xhc3M9
InJlZ2lvbiIgaWQ9InJlZ2lvbjMiPjwvZGl2PgotCTxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJl
Z2lvbjQiPjwvZGl2PgotCi0JPGRpdiBpZD0iZ3JpZDEiIGNsYXNzPSJncmlkIj4xMDBweDwvZGl2
PgotCTxkaXYgaWQ9ImdyaWQyIiBjbGFzcz0iZ3JpZCI+MjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJn
cmlkMyIgY2xhc3M9ImdyaWQiPjMwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDQiIGNsYXNzPSJn
cmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ1IiBjbGFzcz0iZ3JpZCI+NTAwcHg8L2Rp
dj4KLQk8ZGl2IGlkPSJncmlkNiIgY2xhc3M9ImdyaWQiPjYwMHB4PC9kaXY+Ci0JPGRpdiBpZD0i
Z3JpZDciIGNsYXNzPSJncmlkIj43MDBweDwvZGl2PgotCi0JPGRpdiBpZD0idmdyaWQxIiBjbGFz
cz0idmdyaWQiPjwvZGl2PgotCTxkaXYgaWQ9InZncmlkMiIgY2xhc3M9InZncmlkIj4xMDBweDwv
ZGl2PgotCTxkaXYgaWQ9InZncmlkMyIgY2xhc3M9InZncmlkIj4yMDBweDwvZGl2PgotCTxkaXYg
aWQ9InZncmlkNCIgY2xhc3M9InZncmlkIj4zMDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNSIg
Y2xhc3M9InZncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNiIgY2xhc3M9InZncmlk
Ij41MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNyIgY2xhc3M9InZncmlkIj42MDBweDwvZGl2
PgotCTxkaXYgaWQ9InZncmlkOCIgY2xhc3M9InZncmlkIj43MDBweDwvZGl2PgotCi0JPHNjcmlw
dD4KLQkJZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0TGVmdCBhbmQgb2Zmc2V0VG9wIGluIGEgbmFt
ZWQgZmxvdyB3aXRoIGFic29sdXRlLCBzdGlja3kgYW5kIGZpeGVkIHBvc2l0aW9uaW5nLiIpCi0K
LQkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldFBhcmVudCIsICJkaXZNYWluMSIpOwotCQlzaG91
bGRCZSgiZGl2VGV4dDEub2Zmc2V0TGVmdCIsICIxMCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDEu
b2Zmc2V0VG9wIiwgIjEwIik7Ci0KLQkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldFBhcmVudCIs
ICJkb2N1bWVudC5ib2R5Iik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRMZWZ0IiwgIjEw
MCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zmc2V0VG9wIiwgIjUwMCIpOwotCi0JCXNob3Vs
ZEJlKCJkaXZUZXh0My5vZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOwotCQlzaG91bGRC
ZSgiZGl2VGV4dDMub2Zmc2V0TGVmdCIsICI2MDAiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQzLm9m
ZnNldFRvcCIsICI0MDAiKTsKLQotCQlzaG91bGRCZU51bGwoImRpdlRleHQ0Lm9mZnNldFBhcmVu
dCIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDQub2Zmc2V0TGVmdCIsICI1MCIpOwotCQlzaG91bGRC
ZSgiZGl2VGV4dDQub2Zmc2V0VG9wIiwgIjIwIik7Ci0KLQkJaWYgKHdpbmRvdy50ZXN0UnVubmVy
KSB7Ci0JCQl2YXIgYWxsR3JhcGhpY0VsZW1lbnRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFs
bCgiLnJlZ2lvbiwgLmRpdlRleHQsIC5ncmlkLCAudmdyaWQsICNkdW1teSIpOwotCQkJZm9yICh2
YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50cy5sZW5ndGg7IGkrKykKLQkJCQlhbGxHcmFwaGlj
RWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLQkJfQotCQkKLQk8L3NjcmlwdD4K
LQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1mbG9hdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVm
dC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggYzJlZGZiNzU2NWZmNzczNmI0ODhhNDBmYjk1Zjk4N2MzNjgwMjY3OC4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LWV4cGVj
dGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLVRlc3Qgb2Zmc2V0TGVmdCBh
bmQgb2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGZsb2F0cy4KLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi1QQVNTIGRpdlRleHQxLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5i
b2R5Ci1QQVNTIGRpdlRleHQxLm9mZnNldExlZnQgaXMgMjAwCi1QQVNTIGRpdlRleHQxLm9mZnNl
dFRvcCBpcyAzMDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkK
LVBBU1MgZGl2VGV4dDIub2Zmc2V0TGVmdCBpcyAzMDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0VG9w
IGlzIDUwMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNl
dFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW4tcmVnaW9uLWZsb2F0LXZlcnQtcmwt
ZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMmFiNDNkZjk1NDU0
NzMyMjVlYzgwYzUyYThiN2JiYzRhZGQ5YWRjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9m
ZnNldFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSwxNCArMCwwIEBACi1UZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRvcCBpbiBhIG5h
bWVkIGZsb3cgd2l0aCBmbG9hdHMgaW4gdmVydGljYWwtcmwgbW9kZS4KLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi1QQVNTIGRpdlRleHQxLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5i
b2R5Ci1QQVNTIGRpdlRleHQxLm9mZnNldExlZnQgaXMgNzAwCi1QQVNTIGRpdlRleHQxLm9mZnNl
dFRvcCBpcyAyMDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0UGFyZW50IGlzIGRvY3VtZW50LmJvZHkK
LVBBU1MgZGl2VGV4dDIub2Zmc2V0TGVmdCBpcyA0MDAKLVBBU1MgZGl2VGV4dDIub2Zmc2V0VG9w
IGlzIDIwMAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNl
dFRvcC1pbi1yZWdpb24tZmxvYXQtdmVydC1ybC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC12ZXJ0LXJsLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIxODA2OTViMzFjZDFmZDc0ODc1ZDZhZGViOWUz
OWQ0MTRiMzIwMzUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lv
bi1mbG9hdC12ZXJ0LXJsLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOTggKzAsMCBAQAotPGh0
bWwgc3R5bGU9Ii13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsiPgotPGhlYWQ+Ci0J
PHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLQkJLyogTWFrZSBzdXJlIHRoZSBjb25zb2xlIGFuZCB0
aGUgZGVzY3JpcHRpb24gZG9uJ3QgaW50ZXJmZXJlIHdpdGggdGhlIHJlc3Qgb2YgdGhlIGxheW91
dC4gKi8KLQkJI2Rlc2NyaXB0aW9uIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCWxlZnQ6
IDBweDsKLQkJfQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsKLQkJCWxl
ZnQ6IDEwMHB4OwotCQl9Ci0KLQkJI2Rpdk1haW4xIHsKLQkJCS13ZWJraXQtZmxvdy1pbnRvOiBm
bG93MTsKLQkJCWJvcmRlcjogMnB4IHNvbGlkIGJsdWU7Ci0JCQl3aWR0aDogMTYwcHg7Ci0JCQlt
YXJnaW46IDEwcHg7Ci0JCQlwYWRkaW5nOiA1cHg7Ci0JCX0KLQotCQkjZGl2TWFpbjIgewotCQkJ
Ym9yZGVyOiAycHggc29saWQgYmx1ZTsKLQkJCXdpZHRoOiAxMzVweDsKLQkJCW1hcmdpbjogNXB4
OwotCQkJLXdlYmtpdC1mbG93LWludG86IGZsb3cyOwotCQl9Ci0KLQkJLmRpdlRleHQgewotCQkJ
Ym9yZGVyOiAxcHggc29saWQgZ3JlZW47Ci0JCQljb2xvcjogZ3JlZW47Ci0JCQlmb250LXNpemU6
IDE0cHg7Ci0JCQlwYWRkaW5nOiA1cHg7Ci0JCX0KLQotCQkjZGl2VGV4dDEgewotCQkJd2lkdGg6
IDYwcHg7Ci0JCQloZWlnaHQ6IDI0MHB4OwotCQkJbWFyZ2luOiAxMHB4OwotCQkJcGFkZGluZy1s
ZWZ0OiA1cHg7Ci0JCQlmbG9hdDogcmlnaHQ7Ci0JCX0KLQotCQkjZGl2VGV4dDIgewotCQkJd2lk
dGg6IDYwcHg7Ci0JCQloZWlnaHQ6IDE5MHB4OwotCQkJZmxvYXQ6IGxlZnQ7Ci0JCQltYXJnaW46
IDEwcHg7Ci0JCX0KLQotCQkjcmVnaW9uMSB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7
Ci0JCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQl0
b3A6IDc4cHg7Ci0JCQlsZWZ0OiA2MDhweDsKLQkJCWhlaWdodDogNDAwcHg7Ci0JCQl3aWR0aDog
MTkwcHg7Ci0JCX0KLQotCQkjcmVnaW9uMiB7Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzI7
Ci0JCQlib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQls
ZWZ0OiAzMzhweDsKLQkJCXRvcDogMTgycHg7Ci0JCQl3aWR0aDogMTUwcHg7Ci0JCQloZWlnaHQ6
IDQwMHB4OwotCQl9Ci0KLQkJLmdyaWQgewotCQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJdG9w
OiA2NTBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAwcHg7Ci0JCQlib3JkZXIt
cmlnaHQ6IDFweCBzb2xpZCBibHVlOwotCQkJdGV4dC1hbGlnbjogcmlnaHQ7Ci0JCQlmb250LXNp
emU6IDE0cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJfQotCi0JCS52Z3JpZCB7Ci0JCQlwb3NpdGlv
bjogYWJzb2x1dGU7Ci0JCQlsZWZ0OiA5MDBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdo
dDogMTAwcHg7Ci0JCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxp
Z246IGJvdHRvbTsKLQkJCWZvbnQtc2l6ZTogMTRweDsKLQkJCWNvbG9yOiBibHVlOwotCQl9Ci0K
LQkJI2dyaWQxIHsKLQkJCWxlZnQ6IDBweDsKLQkJfQotCQkjZ3JpZDIgewotCQkJbGVmdDogMTAw
cHg7Ci0JCX0KLQkJI2dyaWQzIHsKLQkJCWxlZnQ6IDIwMHB4OwotCQl9Ci0JCSNncmlkNCB7Ci0J
CQlsZWZ0OiAzMDBweDsKLQkJfQotCQkjZ3JpZDUgewotCQkJbGVmdDogNDAwcHg7Ci0JCX0KLQkJ
I2dyaWQ2IHsKLQkJCWxlZnQ6IDUwMHB4OwotCQl9Ci0JCSNncmlkNyB7Ci0JCQlsZWZ0OiA2MDBw
eDsKLQkJfQotCi0JCSN2Z3JpZDEgewotCQkJdG9wOiAwcHg7Ci0JCX0KLQkJI3ZncmlkMiB7Ci0J
CQl0b3A6IDEwMHB4OwotCQl9Ci0JCSN2Z3JpZDMgewotCQkJdG9wOiAyMDBweDsKLQkJfQotCQkj
dmdyaWQ0IHsKLQkJCXRvcDogMzAwcHg7Ci0JCX0KLQkJI3ZncmlkNSB7Ci0JCQl0b3A6IDQwMHB4
OwotCQl9Ci0JCSN2Z3JpZDYgewotCQkJdG9wOiA1MDBweDsKLQkJfQotCQkjdmdyaWQ3IHsKLQkJ
CXRvcDogNjAwcHg7Ci0JCX0KLQkJI3ZncmlkOCB7Ci0JCQl0b3A6IDcwMHB4OwotCQkJYm9yZGVy
OiBub25lOwotCQl9Ci0JPC9zdHlsZT4KLQotCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotCi08Ym9keSBpZD0iYm9keSI+Ci0J
Ci0JPGRpdiBpZD0iZGl2TWFpbjEiPgotCQk8ZGl2IGNsYXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4
dDEiPjxiPmRpdlRleHQxPC9iPjwvZGl2PgotCQk8c3BhbiBjbGFzcz0ibXlTcGFuIiBzdHlsZT0i
Y29sb3I6IGJsdWU7Ij5UaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYu
IFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNo
b3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJv
dW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVu
IGRpdi48L3NwYW4+Ci0JPC9kaXY+Ci0JCi0JPGRpdiBpZD0iZGl2TWFpbjIiPgotCQk8ZGl2IGNs
YXNzPSJkaXZUZXh0IiBpZD0iZGl2VGV4dDIiPjxiPmRpdlRleHQyPC9iPjwvZGl2PgotCQk8c3Bh
biBjbGFzcz0ibXlTcGFuIiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5UaGlzIHRleHQgc2hvdWxkIGZs
b3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhl
IGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBU
aGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBkaXYuPC9zcGFuPgotCTwvZGl2
PgotCi0JPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMSI+PC9kaXY+Ci0JPGRpdiBjbGFz
cz0icmVnaW9uIiBpZD0icmVnaW9uMiI+PC9kaXY+Ci0JCi0JPGRpdiBpZD0iZ3JpZDEiIGNsYXNz
PSJncmlkIj4xMDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQyIiBjbGFzcz0iZ3JpZCI+MjAwcHg8
L2Rpdj4KLQk8ZGl2IGlkPSJncmlkMyIgY2xhc3M9ImdyaWQiPjMwMHB4PC9kaXY+Ci0JPGRpdiBp
ZD0iZ3JpZDQiIGNsYXNzPSJncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ1IiBjbGFz
cz0iZ3JpZCI+NTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNiIgY2xhc3M9ImdyaWQiPjYwMHB4
PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDciIGNsYXNzPSJncmlkIj43MDBweDwvZGl2PgotCi0JPGRp
diBpZD0idmdyaWQxIiBjbGFzcz0idmdyaWQiPjwvZGl2PgotCTxkaXYgaWQ9InZncmlkMiIgY2xh
c3M9InZncmlkIj4xMDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkMyIgY2xhc3M9InZncmlkIj4y
MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNCIgY2xhc3M9InZncmlkIj4zMDBweDwvZGl2Pgot
CTxkaXYgaWQ9InZncmlkNSIgY2xhc3M9InZncmlkIj40MDBweDwvZGl2PgotCTxkaXYgaWQ9InZn
cmlkNiIgY2xhc3M9InZncmlkIj41MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkNyIgY2xhc3M9
InZncmlkIj42MDBweDwvZGl2PgotCTxkaXYgaWQ9InZncmlkOCIgY2xhc3M9InZncmlkIj43MDBw
eDwvZGl2PgotCi0JPHNjcmlwdD4KLQkJZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0TGVmdCBhbmQg
b2Zmc2V0VG9wIGluIGEgbmFtZWQgZmxvdyB3aXRoIGZsb2F0cyBpbiB2ZXJ0aWNhbC1ybCBtb2Rl
LiIpCi0KLQkJc2hvdWxkQmUoImRpdlRleHQxLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5
Iik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRMZWZ0IiwgIjcwMCIpOwotCQlzaG91bGRC
ZSgiZGl2VGV4dDEub2Zmc2V0VG9wIiwgIjIwMCIpOwotCi0JCXNob3VsZEJlKCJkaXZUZXh0Mi5v
ZmZzZXRQYXJlbnQiLCAiZG9jdW1lbnQuYm9keSIpOwotCQlzaG91bGRCZSgiZGl2VGV4dDIub2Zm
c2V0TGVmdCIsICI0MDAiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldFRvcCIsICIyMDAi
KTsKLQotCQlpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLQkJCXZhciBhbGxHcmFwaGljRWxlbWVu
dHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucmVnaW9uLCAuZGl2VGV4dCwgLmdyaWQs
IC52Z3JpZCwgLm15U3BhbiIpOwotCQkJZm9yICh2YXIgaT0wOyBpPGFsbEdyYXBoaWNFbGVtZW50
cy5sZW5ndGg7IGkrKykKLQkJCQlhbGxHcmFwaGljRWxlbWVudHNbaV0uc3R5bGUuZGlzcGxheSA9
ICJub25lIjsKLQkJfQotCQkKLQk8L3NjcmlwdD4KLQk8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWluLXJlZ2lvbi1mbG9hdC5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1MjUzZTk3NTNlM2YwMGE2NzAyYWZiOTE4MWZm
MDU4MDc4Y2Q0NjRkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRMZWZ0LW9mZnNldFRvcC1pbi1yZWdp
b24tZmxvYXQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDIxNiArMCwwIEBACi08aHRtbD4KLTxo
ZWFkPgotCTxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0JCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29s
ZSBhbmQgdGhlIGRlc2NyaXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRo
ZSBsYXlvdXQuICovCi0JCSNkZXNjcmlwdGlvbiB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0J
CQl0b3A6IDBweDsKLQkJfQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsK
LQkJCXRvcDogMTAwcHg7Ci0JCX0KLQotCQkjZGl2TWFpbjEgewotCQkJLXdlYmtpdC1mbG93LWlu
dG86IGZsb3cxOwotCQkJYm9yZGVyOiAycHggc29saWQgYmx1ZTsKLQkJCWhlaWdodDogMTUwcHg7
Ci0JCQltYXJnaW46IDEwcHg7Ci0JCQlwYWRkaW5nOiA1cHg7Ci0JCX0KLQotCQkjZGl2TWFpbjIg
ewotCQkJYm9yZGVyOiAycHggc29saWQgYmx1ZTsKLQkJCWhlaWdodDogMTM1cHg7Ci0JCQltYXJn
aW46IDVweDsKLQkJCS13ZWJraXQtZmxvdy1pbnRvOiBmbG93MjsKLQkJfQotCi0JCS5kaXZUZXh0
IHsKLQkJCWJvcmRlcjogMXB4IHNvbGlkIGdyZWVuOwotCQkJY29sb3I6IGdyZWVuOwotCQkJZm9u
dC1zaXplOiAxNHB4OwotCQl9Ci0KLQkJI2RpdlRleHQxIHsKLQkJCXdpZHRoOiAyNTBweDsKLQkJ
CW1hcmdpbjogMTBweDsKLQkJCXBhZGRpbmctbGVmdDogNXB4OwotCQkJZmxvYXQ6IHJpZ2h0Owot
CQl9Ci0KLQkJI2RpdlRleHQyIHsKLQkJCXdpZHRoOiAyMDBweDsKLQkJCWZsb2F0OiBsZWZ0Owot
CQkJbWFyZ2luOiAxMHB4OwotCQl9Ci0KLQkJI3JlZ2lvbjEgewotCQkJLXdlYmtpdC1mbG93LWZy
b206IGZsb3cxOwotCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0
aXZlOwotCQkJbGVmdDogNzVweDsKLQkJCXRvcDogMjY0cHg7Ci0JCQl3aWR0aDogNDAwcHg7Ci0J
CQloZWlnaHQ6IDE4MHB4OwotCQl9Ci0KLQkJI3JlZ2lvbjIgewotCQkJLXdlYmtpdC1mbG93LWZy
b206IGZsb3cyOwotCQkJYm9yZGVyOiAxcHggc29saWQgcmVkOwotCQkJcG9zaXRpb246IHJlbGF0
aXZlOwotCQkJbGVmdDogMjc0cHg7Ci0JCQl0b3A6IDI5MnB4OwotCQkJd2lkdGg6IDQwMHB4Owot
CQkJaGVpZ2h0OiAxNTBweDsKLQkJfQotCi0JCS5ncmlkIHsKLQkJCXBvc2l0aW9uOiBhYnNvbHV0
ZTsKLQkJCXRvcDogNzUwcHg7Ci0JCQl3aWR0aDogMTAwcHg7Ci0JCQloZWlnaHQ6IDEwMHB4Owot
CQkJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IHJpZ2h0Owot
CQkJZm9udC1zaXplOiAxNHB4OwotCQkJY29sb3I6IGJsdWU7Ci0JCX0KLQotCQkudmdyaWQgewot
CQkJcG9zaXRpb246IGFic29sdXRlOwotCQkJbGVmdDogOTAwcHg7Ci0JCQl3aWR0aDogMTAwcHg7
Ci0JCQloZWlnaHQ6IDEwMHB4OwotCQkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsdWU7Ci0J
CQl0ZXh0LWFsaWduOiBib3R0b207Ci0JCQlmb250LXNpemU6IDE0cHg7Ci0JCQljb2xvcjogYmx1
ZTsKLQkJfQotCi0JCSNncmlkMSB7Ci0JCQlsZWZ0OiAwcHg7Ci0JCX0KLQkJI2dyaWQyIHsKLQkJ
CWxlZnQ6IDEwMHB4OwotCQl9Ci0JCSNncmlkMyB7Ci0JCQlsZWZ0OiAyMDBweDsKLQkJfQotCQkj
Z3JpZDQgewotCQkJbGVmdDogMzAwcHg7Ci0JCX0KLQkJI2dyaWQ1IHsKLQkJCWxlZnQ6IDQwMHB4
OwotCQl9Ci0JCSNncmlkNiB7Ci0JCQlsZWZ0OiA1MDBweDsKLQkJfQotCQkjZ3JpZDcgewotCQkJ
bGVmdDogNjAwcHg7Ci0JCX0KLQotCQkjdmdyaWQxIHsKLQkJCXRvcDogMHB4OwotCQl9Ci0JCSN2
Z3JpZDIgewotCQkJdG9wOiAxMDBweDsKLQkJfQotCQkjdmdyaWQzIHsKLQkJCXRvcDogMjAwcHg7
Ci0JCX0KLQkJI3ZncmlkNCB7Ci0JCQl0b3A6IDMwMHB4OwotCQl9Ci0JCSN2Z3JpZDUgewotCQkJ
dG9wOiA0MDBweDsKLQkJfQotCQkjdmdyaWQ2IHsKLQkJCXRvcDogNTAwcHg7Ci0JCX0KLQkJI3Zn
cmlkNyB7Ci0JCQl0b3A6IDYwMHB4OwotCQl9Ci0JCSN2Z3JpZDggewotCQkJdG9wOiA3MDBweDsK
LQkJCWJvcmRlcjogbm9uZTsKLQkJfQotCTwvc3R5bGU+Ci0KLQk8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLQotCTxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0Ij4KLQkJZnVuY3Rpb24gd3JpdGVPZmZzZXRJbmZvKHNlbGVjdG9yKSB7Ci0J
CQl2YXIgZGl2SXRlbXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTsKLQkJ
CQkKLQkJCWZvciAodmFyIGk9MDsgaTxkaXZJdGVtcy5sZW5ndGg7IGkrKykgewotCQkJCXZhciBk
aXZJdGVtID0gZGl2SXRlbXNbaV07Ci0JCQkJdmFyIGV4aXN0aW5nSFRNTCA9IGRpdkl0ZW0uaW5u
ZXJIVE1MOwotCQkJCXZhciBuZXdIVE1MID0gZXhpc3RpbmdIVE1MLnJlcGxhY2UoIiNvZmZUb3Aj
IiwgZGl2SXRlbS5vZmZzZXRUb3ApOwotCQkJCW5ld0hUTUwgPSBuZXdIVE1MLnJlcGxhY2UoIiNv
ZmZMZWZ0IyIsIGRpdkl0ZW0ub2Zmc2V0TGVmdCk7Ci0JCQkJaWYgKGRpdkl0ZW0ub2Zmc2V0UGFy
ZW50KQotCQkJCQluZXdIVE1MID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmUGFyZW50IyIsIGRpdkl0
ZW0ub2Zmc2V0UGFyZW50LnRhZ05hbWUgKyAiKCIgKyBkaXZJdGVtLm9mZnNldFBhcmVudC5pZCAr
ICIpIik7Ci0JCQkJZWxzZQotCQkJCQluZXdIVE1MID0gbmV3SFRNTC5yZXBsYWNlKCIjb2ZmUGFy
ZW50IyIsICJudWxsIik7Ci0JCQkJZGl2SXRlbS5pbm5lckhUTUwgPSBuZXdIVE1MOwotCQkJfQot
CQl9Ci0JCWZ1bmN0aW9uIG15T25Mb2FkKCkgewotCQkJd3JpdGVPZmZzZXRJbmZvKCIuZGl2VGV4
dCIpOwotCQl9Ci0JPC9zY3JpcHQ+Ci08L2hlYWQ+Ci0KLTxib2R5IGlkPSJib2R5IiBvbmxvYWQg
PSAibXlPbkxvYWQoKTsiPgotCQotCTxkaXYgaWQ9ImRpdk1haW4xIj4KLQkJPGRpdiBjbGFzcz0i
ZGl2VGV4dCIgaWQ9ImRpdlRleHQxIj5UaGlzIGlzIDxiPmRpdlRleHQxPC9iPiAoZmxvYXQgcmln
aHQpOjxici8+LSBvZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNl
dExlZnQgaXMgPGI+I29mZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8
L2I+PC9kaXY+Ci0JCTxzcGFuIGNsYXNzPSJteVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRo
aXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3Vs
ZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5k
IHRoZSBncmVlbiBkaXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRp
di4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KLQk8
L2Rpdj4KLQkKLQk8ZGl2IGlkPSJkaXZNYWluMiI+Ci0JCTxkaXYgY2xhc3M9ImRpdlRleHQiIGlk
PSJkaXZUZXh0MiI+VGhpcyBpcyA8Yj5kaXZUZXh0MjwvYj4gKGZsb2F0IGxlZnQpOjxici8+LSBv
ZmZzZXRQYXJlbnQgaXMgPGI+I29mZlBhcmVudCM8L2I+PGJyLz4tIG9mZnNldExlZnQgaXMgPGI+
I29mZkxlZnQjPC9iPjxici8+LSBvZmZzZXRUb3AgaXMgPGI+I29mZlRvcCM8L2I+PC9kaXY+Ci0J
CTxzcGFuIGNsYXNzPSJteVNwYW4iIHN0eWxlPSJjb2xvcjogYmx1ZTsiPlRoaXMgdGV4dCBzaG91
bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0IHNob3VsZCBmbG93IGFyb3Vu
ZCB0aGUgZ3JlZW4gZGl2LiBUaGlzIHRleHQgc2hvdWxkIGZsb3cgYXJvdW5kIHRoZSBncmVlbiBk
aXYuIFRoaXMgdGV4dCBzaG91bGQgZmxvdyBhcm91bmQgdGhlIGdyZWVuIGRpdi4gVGhpcyB0ZXh0
IHNob3VsZCBmbG93IGFyb3VuZCB0aGUgZ3JlZW4gZGl2Ljwvc3Bhbj4KLQk8L2Rpdj4KLQotCTxk
aXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjEiPjwvZGl2PgotCTxkaXYgY2xhc3M9InJlZ2lv
biIgaWQ9InJlZ2lvbjIiPjwvZGl2PgotCQotCTxkaXYgaWQ9ImdyaWQxIiBjbGFzcz0iZ3JpZCI+
MTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkMiIgY2xhc3M9ImdyaWQiPjIwMHB4PC9kaXY+Ci0J
PGRpdiBpZD0iZ3JpZDMiIGNsYXNzPSJncmlkIj4zMDBweDwvZGl2PgotCTxkaXYgaWQ9ImdyaWQ0
IiBjbGFzcz0iZ3JpZCI+NDAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNSIgY2xhc3M9ImdyaWQi
PjUwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDYiIGNsYXNzPSJncmlkIj42MDBweDwvZGl2Pgot
CTxkaXYgaWQ9ImdyaWQ3IiBjbGFzcz0iZ3JpZCI+NzAwcHg8L2Rpdj4KLQotCTxkaXYgaWQ9InZn
cmlkMSIgY2xhc3M9InZncmlkIj48L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDIiIGNsYXNzPSJ2Z3Jp
ZCI+MTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDMiIGNsYXNzPSJ2Z3JpZCI+MjAwcHg8L2Rp
dj4KLQk8ZGl2IGlkPSJ2Z3JpZDQiIGNsYXNzPSJ2Z3JpZCI+MzAwcHg8L2Rpdj4KLQk8ZGl2IGlk
PSJ2Z3JpZDUiIGNsYXNzPSJ2Z3JpZCI+NDAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDYiIGNs
YXNzPSJ2Z3JpZCI+NTAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDciIGNsYXNzPSJ2Z3JpZCI+
NjAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJ2Z3JpZDgiIGNsYXNzPSJ2Z3JpZCI+NzAwcHg8L2Rpdj4K
LQotCTxzY3JpcHQ+Ci0JCWRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldExlZnQgYW5kIG9mZnNldFRv
cCBpbiBhIG5hbWVkIGZsb3cgd2l0aCBmbG9hdHMuIikKLQotCQlzaG91bGRCZSgiZGl2VGV4dDEu
b2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUoImRpdlRleHQxLm9m
ZnNldExlZnQiLCAiMjAwIik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0MS5vZmZzZXRUb3AiLCAiMzAw
Iik7Ci0KLQkJc2hvdWxkQmUoImRpdlRleHQyLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5
Iik7Ci0JCXNob3VsZEJlKCJkaXZUZXh0Mi5vZmZzZXRMZWZ0IiwgIjMwMCIpOwotCQlzaG91bGRC
ZSgiZGl2VGV4dDIub2Zmc2V0VG9wIiwgIjUwMCIpOwotCi0JCWlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotCQkJdmFyIGFsbEdyYXBoaWNFbGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JB
bGwoIi5yZWdpb24sIC5kaXZUZXh0LCAuZ3JpZCwgLnZncmlkLCAubXlTcGFuIik7Ci0JCQlmb3Ig
KHZhciBpPTA7IGk8YWxsR3JhcGhpY0VsZW1lbnRzLmxlbmd0aDsgaSsrKQotCQkJCWFsbEdyYXBo
aWNFbGVtZW50c1tpXS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotCQl9Ci0JCQotCTwvc2NyaXB0
PgotCTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5l
cy1yZWdpb24taW4tZWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvb2Zmc2V0TGVmdC1vZmZzZXRUb3AtaW5saW5lcy1yZWdpb24taW4tZWxlbWVudC1leHBlY3Rl
ZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE0ZTExZDM4NWY0MjdiYjRhYzYx
NWFiYjMzODJmMjQ2Zjc3OTUyMzQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9w
LWlubGluZXMtcmVnaW9uLWluLWVsZW1lbnQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMTkgKzAsMCBAQAotVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgZm9yIGJsb2NrcyBh
bmQgaW5saW5lcyBpbiBhIG5hbWVkIGZsb3cgd2hlbiB0aGUgcmVnaW9uJ3Mgb2Zmc2V0UGFyZW50
IGlzIE5PVCB0aGUgYm9keS4KLVRoaXMgdGVzdCBhbHNvIGNvdmVycyBib3JkZXJzLgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLVBBU1MgZGl2VGV4dC5vZmZzZXRQYXJlbnQgaXMgZG9j
dW1lbnQuYm9keQotUEFTUyBkaXZUZXh0Lm9mZnNldExlZnQgaXMgMzAwCi1QQVNTIGRpdlRleHQu
b2Zmc2V0VG9wIGlzIDM1MAotUEFTUyByZWdpb25QYXJlbnQub2Zmc2V0TGVmdCBpcyAyMDAKLVBB
U1MgcmVnaW9uLm9mZnNldFBhcmVudCBpcyByZWdpb25QYXJlbnQKLVBBU1MgcmVnaW9uLm9mZnNl
dExlZnQgaXMgMzAKLVBBU1MgcmVnaW9uLm9mZnNldFRvcCBpcyAyMAotUEFTUyBpbmxpbmVFbGVt
ZW50Lm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5Ci1QQVNTIGlubGluZUVsZW1lbnQub2Zm
c2V0TGVmdCBpcyAzMDAKLVBBU1MgaW5saW5lRWxlbWVudC5vZmZzZXRUb3AgaXMgNTUwCi1QQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMt
cmVnaW9uLWluLWVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRM
ZWZ0LW9mZnNldFRvcC1pbmxpbmVzLXJlZ2lvbi1pbi1lbGVtZW50Lmh0bWwKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDViMDlmMmI4NDY5YjAyNWRmMmE0YWZmMWUyNTYxZWZjNDJlOWYx
MDcuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldExlZnQtb2Zmc2V0VG9wLWlubGluZXMtcmVnaW9uLWlu
LWVsZW1lbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE4NiArMCwwIEBACi08aHRtbD4KLTxo
ZWFkPgotCTxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0JCS8qIE1ha2Ugc3VyZSB0aGUgY29uc29s
ZSBhbmQgdGhlIGRlc2NyaXB0aW9uIGRvbid0IGludGVyZmVyZSB3aXRoIHRoZSByZXN0IG9mIHRo
ZSBsYXlvdXQuICovCi0JCSNkZXNjcmlwdGlvbiB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0J
CQl0b3A6IDBweDsKLQkJfQotCi0JCWJvZHkgewotCQkJYm9yZGVyOiAxMHB4IGRvdHRlZCBncmF5
OwotCQkJcGFkZGluZzogMTBweDsKLQkJfQotCi0JCSNjb25zb2xlIHsKLQkJCXBvc2l0aW9uOiBh
YnNvbHV0ZTsKLQkJCXRvcDogMTEwcHg7Ci0JCX0KLQotCQkjcmVnaW9uUGFyZW50IHsKLQkJCWJv
cmRlcjogMXB4IHNvbGlkIGJsdWU7Ci0JCQlib3JkZXItbGVmdDogMTBweCBkb3R0ZWQgYmx1ZTsK
LQkJCWJvcmRlci10b3A6IDEwcHggZG90dGVkIGJsdWU7Ci0JCQl3aWR0aDogNjAwcHg7Ci0JCQlo
ZWlnaHQ6IDM3MHB4OwotCQkJcG9zaXRpb246IHJlbGF0aXZlOwotCQkJbGVmdDogMTQ3cHg7Ci0J
CQl0b3A6IDI2MHB4OwotCQkJbWFyZ2luLWxlZnQ6IDI1cHg7Ci0JCX0KLQotCQkucmVnaW9uMSB7
Ci0JCQktd2Via2l0LWZsb3ctZnJvbTogZmxvdzE7Ci0JCQlib3JkZXI6IDEwcHggZG90dGVkIHJl
ZDsKLQkJCW1hcmdpbjogMjBweDsKLQkJCW1hcmdpbi1sZWZ0OiAzMHB4OwotCQkJd2lkdGg6IDQw
NHB4OwotCQkJaGVpZ2h0OiAzMjBweDsKLQkJfQotCi0JCSNkaXZNYWluIHsKLQkJCW1hcmdpbjog
NXB4OwotCQkJYm9yZGVyOiA1cHggc29saWQgYmx1ZTsKLQkJCWhlaWdodDogMzA1cHg7Ci0JCQkt
d2Via2l0LWZsb3ctaW50bzogZmxvdzE7Ci0JCX0KLQotCQkjZGl2VGV4dCB7Ci0JCQlib3JkZXI6
IDFweCBzb2xpZCBncmVlbjsKLQkJCWNvbG9yOiBncmVlbjsKLQkJCWZvbnQtc2l6ZTogMTRweDsK
LQkJCXdpZHRoOiAzMDBweDsKLQkJCWhlaWdodDogMTgwcHg7Ci0JCQlwb3NpdGlvbjogcmVsYXRp
dmU7Ci0JCQlsZWZ0OiA0MHB4OwotCQkJdG9wOiAxMnB4OwotCQl9Ci0KLQkJLmdyaWQgewotCQkJ
cG9zaXRpb246IGFic29sdXRlOwotCQkJdG9wOiA2ODBweDsKLQkJCXdpZHRoOiAxMDBweDsKLQkJ
CWhlaWdodDogMTAwcHg7Ci0JCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBibHVlOwotCQkJdGV4
dC1hbGlnbjogcmlnaHQ7Ci0JCQlmb250LXNpemU6IDE0cHg7Ci0JCQljb2xvcjogYmx1ZTsKLQkJ
fQotCi0JCS52Z3JpZCB7Ci0JCQlwb3NpdGlvbjogYWJzb2x1dGU7Ci0JCQlsZWZ0OiA5MDBweDsK
LQkJCXdpZHRoOiAxMDBweDsKLQkJCWhlaWdodDogMTAwcHg7Ci0JCQlib3JkZXItYm90dG9tOiAx
cHggc29saWQgYmx1ZTsKLQkJCXRleHQtYWxpZ246IGJvdHRvbTsKLQkJCWZvbnQtc2l6ZTogMTRw
eDsKLQkJCWNvbG9yOiBibHVlOwotCQl9Ci0KLQkJI2dyaWQxIHsKLQkJCWxlZnQ6IDBweDsKLQkJ
fQotCQkjZ3JpZDIgewotCQkJbGVmdDogMTAwcHg7Ci0JCX0KLQkJI2dyaWQzIHsKLQkJCWxlZnQ6
IDIwMHB4OwotCQl9Ci0JCSNncmlkNCB7Ci0JCQlsZWZ0OiAzMDBweDsKLQkJfQotCQkjZ3JpZDUg
ewotCQkJbGVmdDogNDAwcHg7Ci0JCX0KLQkJI2dyaWQ2IHsKLQkJCWxlZnQ6IDUwMHB4OwotCQl9
Ci0JCSNncmlkNyB7Ci0JCQlsZWZ0OiA2MDBweDsKLQkJfQotCi0JCSN2Z3JpZDEgewotCQkJdG9w
OiAwcHg7Ci0JCX0KLQkJI3ZncmlkMiB7Ci0JCQl0b3A6IDEwMHB4OwotCQl9Ci0JCSN2Z3JpZDMg
ewotCQkJdG9wOiAyMDBweDsKLQkJfQotCQkjdmdyaWQ0IHsKLQkJCXRvcDogMzAwcHg7Ci0JCX0K
LQkJI3ZncmlkNSB7Ci0JCQl0b3A6IDQwMHB4OwotCQl9Ci0JCSN2Z3JpZDYgewotCQkJdG9wOiA1
MDBweDsKLQkJfQotCQkjdmdyaWQ3IHsKLQkJCXRvcDogNjAwcHg7Ci0JCX0KLQkJI3ZncmlkOCB7
Ci0JCQl0b3A6IDcwMHB4OwotCQkJYm9yZGVyOiBub25lOwotCQl9Ci0JPC9zdHlsZT4KLQotCTxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9o
ZWFkPgotCi08Ym9keSBpZD0iYm9keSI+Ci0JPGRpdiBpZD0iZGl2TWFpbiI+Ci0JCTxkaXYgaWQ9
ImRpdlRleHQiPjxiPmRpdlRleHQ8L2I+PGJyLz48L2Rpdj4KLQkJPHNwYW4gY2xhc3M9ImlubGlu
ZUVsZW1lbnRzIiBpZD0iaW5saW5lRWxlbWVudCIgc3R5bGU9ImNvbG9yOiAjMDAwMDk5OyBwb3Np
dGlvbjogcmVsYXRpdmU7IHRvcDogMzBweDsgbGVmdDogNDBweDsiPklubGluZSBlbGVtZW50IGlu
IGRpdk1haW48L3NwYW4+Ci0JPC9kaXY+Ci0KLQk8ZGl2IGlkPSJyZWdpb25QYXJlbnQiPjxzcGFu
IHN0eWxlPSJmbG9hdDogcmlnaHQ7IG1hcmdpbjogMTBweDsgY29sb3I6IGJsdWU7Ij5UaGlzIGlz
IHJlZ2lvblBhcmVudDwvc3Bhbj4KLQkJPGRpdiBjbGFzcz0icmVnaW9uMSIgaWQ9InJlZ2lvbiI+
PC9kaXY+Ci0JPC9kaXY+Ci0KLQk8ZGl2IGlkPSJncmlkMSIgY2xhc3M9ImdyaWQiPjEwMHB4PC9k
aXY+Ci0JPGRpdiBpZD0iZ3JpZDIiIGNsYXNzPSJncmlkIj4yMDBweDwvZGl2PgotCTxkaXYgaWQ9
ImdyaWQzIiBjbGFzcz0iZ3JpZCI+MzAwcHg8L2Rpdj4KLQk8ZGl2IGlkPSJncmlkNCIgY2xhc3M9
ImdyaWQiPjQwMHB4PC9kaXY+Ci0JPGRpdiBpZD0iZ3JpZDUiIGNsYXNzPSJncmlkIj41MDBweDwv
ZGl2PgotCTxkaXYgaWQ9ImdyaWQ2IiBjbGFzcz0iZ3JpZCI+NjAwcHg8L2Rpdj4KLQk8ZGl2IGlk
PSJncmlkNyIgY2xhc3M9ImdyaWQiPjcwMHB4PC9kaXY+Ci0KLQk8ZGl2IGlkPSJ2Z3JpZDEiIGNs
YXNzPSJ2Z3JpZCI+PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQyIiBjbGFzcz0idmdyaWQiPjEwMHB4
PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQzIiBjbGFzcz0idmdyaWQiPjIwMHB4PC9kaXY+Ci0JPGRp
diBpZD0idmdyaWQ0IiBjbGFzcz0idmdyaWQiPjMwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ1
IiBjbGFzcz0idmdyaWQiPjQwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ2IiBjbGFzcz0idmdy
aWQiPjUwMHB4PC9kaXY+Ci0JPGRpdiBpZD0idmdyaWQ3IiBjbGFzcz0idmdyaWQiPjYwMHB4PC9k
aXY+Ci0JPGRpdiBpZD0idmdyaWQ4IiBjbGFzcz0idmdyaWQiPjcwMHB4PC9kaXY+Ci0KLQk8c2Ny
aXB0PgotCQlkZXNjcmlwdGlvbigiVGVzdCBvZmZzZXRMZWZ0IGFuZCBvZmZzZXRUb3AgZm9yIGJs
b2NrcyBhbmQgaW5saW5lcyBpbiBhIG5hbWVkIGZsb3cgd2hlbiB0aGUgcmVnaW9uJ3Mgb2Zmc2V0
UGFyZW50IGlzIE5PVCB0aGUgYm9keS48YnIvPlRoaXMgdGVzdCBhbHNvIGNvdmVycyBib3JkZXJz
LiIpCi0KLQkJc2hvdWxkQmUoImRpdlRleHQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHki
KTsKLQkJc2hvdWxkQmUoImRpdlRleHQub2Zmc2V0TGVmdCIsICIzMDAiKTsKLQkJc2hvdWxkQmUo
ImRpdlRleHQub2Zmc2V0VG9wIiwgIjM1MCIpOwotCi0JCXNob3VsZEJlKCJyZWdpb25QYXJlbnQu
b2Zmc2V0TGVmdCIsICIyMDAiKTsKLQotCQlzaG91bGRCZSgicmVnaW9uLm9mZnNldFBhcmVudCIs
ICJyZWdpb25QYXJlbnQiKTsKLQkJc2hvdWxkQmUoInJlZ2lvbi5vZmZzZXRMZWZ0IiwgIjMwIik7
Ci0JCXNob3VsZEJlKCJyZWdpb24ub2Zmc2V0VG9wIiwgIjIwIik7Ci0KLQkJc2hvdWxkQmUoImlu
bGluZUVsZW1lbnQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQkJc2hvdWxkQmUo
ImlubGluZUVsZW1lbnQub2Zmc2V0TGVmdCIsICIzMDAiKTsKLQkJc2hvdWxkQmUoImlubGluZUVs
ZW1lbnQub2Zmc2V0VG9wIiwgIjU1MCIpOwotCi0JCWlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
CQkJdmFyIGFsbEdyYXBoaWNFbGVtZW50cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5y
ZWdpb24xLCAjZGl2TWFpbiwgI2RpdlRleHQsIC5ncmlkLCAudmdyaWQsICNyZWdpb25QYXJlbnQs
IC5pbmxpbmVFbGVtZW50cywgI3JlZ2lvbkluZm8iKTsKLQkJCWZvciAodmFyIGk9MDsgaTxhbGxH
cmFwaGljRWxlbWVudHMubGVuZ3RoOyBpKyspCi0JCQkJYWxsR3JhcGhpY0VsZW1lbnRzW2ldLnN0
eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci0JCX0KLQkJCi0JPC9zY3JpcHQ+Ci0JPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb2Zmc2V0UGFyZW50LWJvZHktaW4tZmxvdy10
aHJlYWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMWZmM2Fl
OTBmM2FlYzNiZGI3ZGMzMGYxMzZlODc4NzViYWYwODI3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQ
YXJlbnQtYm9keS1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSwxNSArMCwwIEBACi1UZXN0IG9mZnNldFBhcmVudCBmb3IgYm9keSBpbiBhIG5hbWVkIGZsb3cu
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGFydGljbGUub2Zmc2V0UGFy
ZW50IGlzIGRvY3VtZW50LmJvZHkKLVBBU1MgY2hhcHRlci5vZmZzZXRQYXJlbnQgaXMgZG9jdW1l
bnQuYm9keQotUEFTUyBjaGFwdGVyLm9mZnNldFBhcmVudCBpcyBhcnRpY2xlCi1QQVNTIHRkQ2hp
bGQub2Zmc2V0UGFyZW50IGlzIHRkCi1QQVNTIHRkQ2hpbGQub2Zmc2V0UGFyZW50IGlzIGRvY3Vt
ZW50LmJvZHkKLVBBU1MgZG9jdW1lbnQuYm9keS5vZmZzZXRQYXJlbnQgaXMgbnVsbAotUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtYm9keS1pbi1mbG93LXRocmVh
ZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldFBhcmVudC1ib2R5LWluLWZs
b3ctdGhyZWFkLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJkMWFkM2IxYzRm
ZmVhZGJiZTYwZDIwNDUyYjc1ZDVkYTA4MzllNjEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldFBhcmVu
dC1ib2R5LWluLWZsb3ctdGhyZWFkLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBA
Ci08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICA8L2hlYWQ+
Ci0KLSAgICA8c3R5bGU+Ci0KLSAgICAgICAgI3JlZ2lvbiB7Ci0gICAgICAgICAgICAtd2Via2l0
LWZsb3ctZnJvbTogZmxvdzsKLSAgICAgICAgfQotCi0gICAgPC9zdHlsZT4KLQotICAgIDxib2R5
PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3Qgb2Zmc2V0
UGFyZW50IGZvciBib2R5IGluIGEgbmFtZWQgZmxvdy4iKQotCi0gICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotICAgICAgICAgICAgCi0gICAg
ICAgICAgICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAg
ICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhcnRpY2xlKTsKLSAgICAgICAgICAg
IHNob3VsZEJlKCJhcnRpY2xlLm9mZnNldFBhcmVudCIsICJkb2N1bWVudC5ib2R5Iik7Ci0KLSAg
ICAgICAgICAgIHZhciBjaGFwdGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0g
ICAgICAgICAgICBhcnRpY2xlLmFwcGVuZENoaWxkKGNoYXB0ZXIpOwotICAgICAgICAgICAgc2hv
dWxkQmUoImNoYXB0ZXIub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQotICAgICAg
ICAgICAgYXJ0aWNsZS5zdHlsZS5wb3NpdGlvbiA9ICJyZWxhdGl2ZSI7Ci0gICAgICAgICAgICBz
aG91bGRCZSgiY2hhcHRlci5vZmZzZXRQYXJlbnQiLCAiYXJ0aWNsZSIpOwotCi0gICAgICAgICAg
ICB2YXIgdGFibGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpOwotICAgICAgICAg
ICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0YWJsZSk7Ci0KLSAgICAgICAgICAgIHZhciB0
ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7Ci0gICAgICAgICAgICB0YWJsZS5hcHBl
bmRDaGlsZCh0ZCk7Ci0KLSAgICAgICAgICAgIHZhciB0ZENoaWxkID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7Ci0gICAgICAgICAgICB0ZC5hcHBlbmRDaGlsZCh0ZENoaWxkKTsKLSAg
ICAgICAgICAgIHNob3VsZEJlKCJ0ZENoaWxkLm9mZnNldFBhcmVudCIsICJ0ZCIpOwotCi0gICAg
ICAgICAgICB0ZENoaWxkLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotICAgICAgICAg
ICAgc2hvdWxkQmUoInRkQ2hpbGQub2Zmc2V0UGFyZW50IiwgImRvY3VtZW50LmJvZHkiKTsKLQot
ICAgICAgICAgICAgc2hvdWxkQmVOdWxsKCJkb2N1bWVudC5ib2R5Lm9mZnNldFBhcmVudCIpOwot
Ci0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLndlYmtpdEZsb3dJbnRvID0gbnVsbDsK
LSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLQotICAgICAgICA8ZGl2IGlkPSJyZWdpb24iLz4K
LSAgICA8L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC1leHBlY3RlZC50eHQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZmMzlkMGE1MGVjZGQ3NDE1NzNmYjJjNDRk
ZmFlMzk5ZjBlZmRkYmIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVh
ZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1UZXN0IG9mZnNl
dFBhcmVudCBmb3IgZWxlbWVudHMgaW5zaWRlIGEgbmFtZWQgZmxvdy4KLQotT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgotCi0KLVBBU1MgYXJ0aWNsZS5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQu
Ym9keQotUEFTUyBjaGFwdGVyLm9mZnNldFBhcmVudCBpcyBkb2N1bWVudC5ib2R5Ci1QQVNTIGNo
YXB0ZXIub2Zmc2V0UGFyZW50IGlzIGFydGljbGUKLVBBU1MgdGRDaGlsZC5vZmZzZXRQYXJlbnQg
aXMgdGQKLVBBU1MgdGRDaGlsZC5vZmZzZXRQYXJlbnQgaXMgZG9jdW1lbnQuYm9keQotUEFTUyBk
b2N1bWVudC5ib2R5Lm9mZnNldFBhcmVudCBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9yZWdpb25zL29mZnNldFBhcmVudC1pbi1mbG93LXRocmVhZC5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBhZjdhM2YyMGZhN2EzMzVkYTdmMTNiYmM2MTc5OTc5ZTI1ODdk
ODEwLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9vZmZzZXRQYXJlbnQtaW4tZmxvdy10aHJlYWQuaHRtbAorKysg
L2Rldi9udWxsCkBAIC0xLDQwICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAg
PGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPHNjcmlwdD4K
LSAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IG9mZnNldFBhcmVudCBmb3IgZWxlbWVudHMg
aW5zaWRlIGEgbmFtZWQgZmxvdy4iKQotCi0gICAgICAgICAgICB2YXIgYXJ0aWNsZSA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBl
bmRDaGlsZChhcnRpY2xlKTsKLSAgICAgICAgICAgIGFydGljbGUuc3R5bGUud2Via2l0Rmxvd0lu
dG8gPSAiZmxvdyI7Ci0gICAgICAgICAgICBzaG91bGRCZSgiYXJ0aWNsZS5vZmZzZXRQYXJlbnQi
LCAiZG9jdW1lbnQuYm9keSIpOwotCi0gICAgICAgICAgICB2YXIgY2hhcHRlciA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgYXJ0aWNsZS5hcHBlbmRDaGlsZChj
aGFwdGVyKTsKLSAgICAgICAgICAgIHNob3VsZEJlKCJjaGFwdGVyLm9mZnNldFBhcmVudCIsICJk
b2N1bWVudC5ib2R5Iik7Ci0KLSAgICAgICAgICAgIGFydGljbGUuc3R5bGUucG9zaXRpb24gPSAi
cmVsYXRpdmUiOwotICAgICAgICAgICAgc2hvdWxkQmUoImNoYXB0ZXIub2Zmc2V0UGFyZW50Iiwg
ImFydGljbGUiKTsKLQotICAgICAgICAgICAgdmFyIHRhYmxlID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgidGFibGUiKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGFi
bGUpOwotCi0gICAgICAgICAgICB2YXIgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZCIp
OwotICAgICAgICAgICAgdGFibGUuYXBwZW5kQ2hpbGQodGQpOwotCi0gICAgICAgICAgICB2YXIg
dGRDaGlsZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICAgICAgdGQu
YXBwZW5kQ2hpbGQodGRDaGlsZCk7Ci0gICAgICAgICAgICBzaG91bGRCZSgidGRDaGlsZC5vZmZz
ZXRQYXJlbnQiLCAidGQiKTsKLQotICAgICAgICAgICAgdGRDaGlsZC5zdHlsZS53ZWJraXRGbG93
SW50byA9ICJmbG93IjsKLSAgICAgICAgICAgIHNob3VsZEJlKCJ0ZENoaWxkLm9mZnNldFBhcmVu
dCIsICJkb2N1bWVudC5ib2R5Iik7Ci0KLSAgICAgICAgICAgIHNob3VsZEJlTnVsbCgiZG9jdW1l
bnQuYm9keS5vZmZzZXRQYXJlbnQiKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgICAgIDxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLSAgICA8
L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9v
dmVyc2V0LWJyZWFrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVy
c2V0LWJyZWFrLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGI4
Mjg3ZDJkYTRkY2Q3ZTlkZWVjOTAxOTc5ZGM4ZWNhMjViNDljNS4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3Zl
cnNldC1icmVhay1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLWNv
bnRlbnQgd2l0aCBicmVhay1hZnRlcjogYWx3YXlzOwotCi1maXQgdnMgZml0Ci1lbXB0eSB2cyBl
bXB0eQotZW1wdHkgdnMgZW1wdHkKLVBBU1MKLUJ1ZyA5MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVn
aW9uIG92ZXJzZXQgcHJvcGVydHkgaXMgbm90IHByb3Blcmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUg
aXMgYSByZWdpb24gYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9v
dmVyc2V0LWJyZWFrLW5lc3RlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvb3ZlcnNldC1icmVhay1uZXN0ZWQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA0YjgyODdkMmRhNGRjZDdlOWRlZWM5MDE5NzlkYzhlY2EyNWI0OWM1Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLW5lc3RlZC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw3ICswLDAgQEAKLWNvbnRlbnQgd2l0aCBicmVhay1hZnRlcjogYWx3YXlzOwotCi1m
aXQgdnMgZml0Ci1lbXB0eSB2cyBlbXB0eQotZW1wdHkgdnMgZW1wdHkKLVBBU1MKLUJ1ZyA5MjQ5
NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJzZXQgcHJvcGVydHkgaXMgbm90IHByb3Blcmx5
IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdpb24gYnJlYWsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLW5lc3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstbmVzdGVkLmh0bWwKZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDk5Y2IyNDVhNWM3YWQwMTVhNDkwZGZlYjk4OGJhYTFhNjc4YjczMjQu
LjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstbmVzdGVkLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw1MyArMCwwIEBACi0KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+QnVn
IDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0eSBpcyBub3QgcHJv
cGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwvdGl0bGU+Ci0gICAg
ICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICAgICAuY29udGVudCB7Ci0gICAg
ICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Ci0gICAgICAgICAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogI2RkZDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmNvbnRl
bnQgcDpmaXJzdC1jaGlsZCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1yZWdpb24tYnJlYWst
YWZ0ZXI6IGFsd2F5czsKLSAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0ZW07IC8qc2hv
dWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVhayovCi0gICAgICAgICAgICB9Ci0KLSAg
ICAgICAgICAgIC5jb250YWluZXIgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9t
OiBmbG93OwotICAgICAgICAgICAgICAgIHdpZHRoOjI1MHB4OwotICAgICAgICAgICAgICAgIGhl
aWdodDoxMjBweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDQ0OwotICAg
ICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAg
ICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlzcGxheTogbm9uZTsgfQotICAgICAgICA8
L3N0eWxlPgotICAgIDwvaGVhZD4KLQotICAgIDxib2R5PgotICAgICAgICA8ZGl2IGNsYXNzPSJj
b250ZW50Ij48ZGl2PjxkaXY+PHA+Y29udGVudCB3aXRoIGJyZWFrLWFmdGVyOiBhbHdheXM7PC9w
PjwvZGl2PjwvZGl2PjwvZGl2PgotCi0gICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9
InIxIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4cGxhbmF0aW9uIGdvZXMgaGVyZTwvZGl2
PgotICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMiI+PC9kaXY+IDxkaXYgaWQ9
Im92ZXJzZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KLSAgICAgICAgPGRpdiBjbGFz
cz0iY29udGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0MyI+ZXhwbGFuYXRp
b24gZ29lcyBoZXJlPC9kaXY+Ci0KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiPgotICAgICAgICAgICAgaWYod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB2YXIgcjEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIikuaW5uZXJIVE1MID0gcjEgKyAiIHZzIGZp
dCI7Ci0gICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjIiKS53
ZWJraXRSZWdpb25PdmVyc2V0OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Im92ZXJzZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZzIGVtcHR5IjsKLSAgICAgICAgICAgIHZh
ciByMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMyIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7
Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDMiKS5pbm5lckhU
TUwgPSByMyArICIgdnMgZW1wdHkiOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc05h
bWUgPSAocjEgPT0gImZpdCIgJiYgcjIgPT0gImVtcHR5IiAmJiByMyA9PSAiZW1wdHkiKSA/ICJw
YXNzIiA6ICJmYWlsIjsKLSAgICAgICAgPC9zY3JpcHQ+Ci0KLSAgICAgICAgPGRpdiBpZD0icGFz
cyI+UEFTUzwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJmYWlsIj5GQUlMPC9kaXY+Ci0KLSAgICAg
ICAgPHA+PGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTky
NDk3Ij5CdWcgOTI0OTc8L2E+IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0
eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwv
cD4KLQotICAgIDwvYm9keT4KLTwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay13aXRoLXNp
YmxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJl
YWstd2l0aC1zaWJsaW5nLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggYTU4ZjBlMzljNDE2NTBlM2VjY2Y4MzU0NTY3ZTcwYzM4OTE0MjUwMS4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvb3ZlcnNldC1icmVhay13aXRoLXNpYmxpbmctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwK
QEAgLTEsOSArMCwwIEBACi1jb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFsd2F5czsKLQotMm5k
IHAKLQotZml0IHZzIGZpdAotZml0IHZzIGZpdAotZW1wdHkgdnMgZW1wdHkKLVBBU1MKLUJ1ZyA5
MjQ5NyAtIFtDU1MgUmVnaW9uc10gUmVnaW9uIG92ZXJzZXQgcHJvcGVydHkgaXMgbm90IHByb3Bl
cmx5IGNvbXB1dGVkIHdoZW4gdGhlcmUgaXMgYSByZWdpb24gYnJlYWsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLXdpdGgtc2libGluZy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1zaWJsaW5nLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc3MzBmZTAwNmJmMjYzYWRmMWVmMmFmMWVm
NTkzNDc5YWMxOWU5NmYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL292ZXJzZXQtYnJlYWstd2l0aC1zaWJsaW5n
Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxo
dG1sPgotICAgIDxoZWFkPgotICAgICAgICA8dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25z
XSBSZWdpb24gb3ZlcnNldCBwcm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0
aGVyZSBpcyBhIHJlZ2lvbiBicmVhazwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0
L2NzcyI+Ci0gICAgICAgICAgICAuY29udGVudCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1m
bG93LWludG86IGZsb3c7Ci0gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmNvbnRlbnQgcCB7Ci0gICAgICAgICAgICAg
ICAgLXdlYmtpdC1yZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKLSAgICAgICAgICAgICAgICBt
YXJnaW4tYm90dG9tOiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVh
ayovCi0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5jb250YWluZXIgewotICAgICAgICAg
ICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OwotICAgICAgICAgICAgICAgIHdpZHRoOjI1
MHB4OwotICAgICAgICAgICAgICAgIGhlaWdodDoxMjBweDsKLSAgICAgICAgICAgICAgICBib3Jk
ZXI6IDFweCBzb2xpZCAjNDQ0OwotICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKLSAg
ICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlz
cGxheTogbm9uZTsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4K
LSAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+PHA+Y29udGVudCB3aXRoIGJyZWFrLWFmdGVy
OiBhbHdheXM7PC9wPjxwPjJuZCBwPC9wPjwvZGl2PgotCi0gICAgICAgIDxkaXYgY2xhc3M9ImNv
bnRhaW5lciIgaWQ9InIxIj48L2Rpdj4gPGRpdiBpZD0ib3ZlcnNldDEiPmV4cGxhbmF0aW9uIGdv
ZXMgaGVyZTwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJyMiI+PC9k
aXY+IDxkaXYgaWQ9Im92ZXJzZXQyIj5leHBsYW5hdGlvbiBnb2VzIGhlcmU8L2Rpdj4KLSAgICAg
ICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjMiPjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0
MyI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+Ci0KLSAgICAgICAgPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgotICAgICAgICAgICAgaWYod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB2YXIgcjEg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjEiKS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQxIikuaW5uZXJIVE1MID0g
cjEgKyAiIHZzIGZpdCI7Ci0gICAgICAgICAgICB2YXIgcjIgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicjIiKS53ZWJraXRSZWdpb25PdmVyc2V0OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIm92ZXJzZXQyIikuaW5uZXJIVE1MID0gcjIgKyAiIHZzIGZpdCI7Ci0gICAg
ICAgICAgICB2YXIgcjMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicjMiKS53ZWJraXRSZWdp
b25PdmVyc2V0OwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm92ZXJzZXQz
IikuaW5uZXJIVE1MID0gcjMgKyAiIHZzIGVtcHR5IjsKLSAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuY2xhc3NOYW1lID0gKHIxID09ICJmaXQiICYmIHIyID09ICJmaXQiICYmIHIzID09ICJlbXB0
eSIpID8gInBhc3MiIDogImZhaWwiOwotICAgICAgICA8L3NjcmlwdD4KLQotICAgICAgICA8ZGl2
IGlkPSJwYXNzIj5QQVNTPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImZhaWwiPkZBSUw8L2Rpdj4K
LQotICAgICAgICA8cD48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9OTI0OTciPkJ1ZyA5MjQ5NzwvYT4gLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0
IHByb3BlcnR5IGlzIG5vdCBwcm9wZXJseSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9u
IGJyZWFrPC9wPgotCi0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFr
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvb3ZlcnNldC1icmVhay5odG1sCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzMDQ2NTFkYTRhMzBjMmMzNGYxN2JjMDA4ODVmYjA1
ODY5YjIyZGNhLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9vdmVyc2V0LWJyZWFrLmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw1MyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgot
ICAgICAgICA8dGl0bGU+QnVnIDkyNDk3IC0gW0NTUyBSZWdpb25zXSBSZWdpb24gb3ZlcnNldCBw
cm9wZXJ0eSBpcyBub3QgcHJvcGVybHkgY29tcHV0ZWQgd2hlbiB0aGVyZSBpcyBhIHJlZ2lvbiBi
cmVhazwvdGl0bGU+Ci0gICAgICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Ci0gICAgICAgICAg
ICAuY29udGVudCB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Ci0g
ICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsKLSAgICAgICAgICAgIH0KLQot
ICAgICAgICAgICAgLmNvbnRlbnQgcDpmaXJzdC1jaGlsZCB7Ci0gICAgICAgICAgICAgICAgLXdl
YmtpdC1yZWdpb24tYnJlYWstYWZ0ZXI6IGFsd2F5czsKLSAgICAgICAgICAgICAgICBtYXJnaW4t
Ym90dG9tOiA0ZW07IC8qc2hvdWxkbid0IHNwaWxsIG92ZXIgdGhlIGZvcmNlZCBicmVhayovCi0g
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5jb250YWluZXIgewotICAgICAgICAgICAgICAg
IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OwotICAgICAgICAgICAgICAgIHdpZHRoOjI1MHB4Owot
ICAgICAgICAgICAgICAgIGhlaWdodDoxMjBweDsKLSAgICAgICAgICAgICAgICBib3JkZXI6IDFw
eCBzb2xpZCAjNDQ0OwotICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTsKLSAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgLmZhaWwgI3Bhc3MsIC5wYXNzICNmYWlsIHsgZGlzcGxheTog
bm9uZTsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLQotICAgIDxib2R5PgotICAg
ICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij48cD5jb250ZW50IHdpdGggYnJlYWstYWZ0ZXI6IGFs
d2F5czs8L3A+PC9kaXY+Ci0KLSAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0icjEi
PjwvZGl2PiA8ZGl2IGlkPSJvdmVyc2V0MSI+ZXhwbGFuYXRpb24gZ29lcyBoZXJlPC9kaXY+Ci0g
ICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9InIyIj48L2Rpdj4gPGRpdiBpZD0ib3Zl
cnNldDIiPmV4cGxhbmF0aW9uIGdvZXMgaGVyZTwvZGl2PgotICAgICAgICA8ZGl2IGNsYXNzPSJj
b250YWluZXIiIGlkPSJyMyI+PC9kaXY+IDxkaXYgaWQ9Im92ZXJzZXQzIj5leHBsYW5hdGlvbiBn
b2VzIGhlcmU8L2Rpdj4KLQotICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+
Ci0gICAgICAgICAgICBpZih3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIHZhciByMSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyMSIpLndlYmtpdFJlZ2lvbk92ZXJzZXQ7Ci0gICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgib3ZlcnNldDEiKS5pbm5lckhUTUwgPSByMSArICIgdnMgZml0IjsK
LSAgICAgICAgICAgIHZhciByMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyMiIpLndlYmtp
dFJlZ2lvbk92ZXJzZXQ7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3Zl
cnNldDIiKS5pbm5lckhUTUwgPSByMiArICIgdnMgZW1wdHkiOwotICAgICAgICAgICAgdmFyIHIz
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInIzIikud2Via2l0UmVnaW9uT3ZlcnNldDsKLSAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdmVyc2V0MyIpLmlubmVySFRNTCA9
IHIzICsgIiB2cyBlbXB0eSI7Ci0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9
IChyMSA9PSAiZml0IiAmJiByMiA9PSAiZW1wdHkiICYmIHIzID09ICJlbXB0eSIpID8gInBhc3Mi
IDogImZhaWwiOwotICAgICAgICA8L3NjcmlwdD4KLQotICAgICAgICA8ZGl2IGlkPSJwYXNzIj5Q
QVNTPC9kaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImZhaWwiPkZBSUw8L2Rpdj4KLQotICAgICAgICA8
cD48YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTI0OTci
PkJ1ZyA5MjQ5NzwvYT4gLSBbQ1NTIFJlZ2lvbnNdIFJlZ2lvbiBvdmVyc2V0IHByb3BlcnR5IGlz
IG5vdCBwcm9wZXJseSBjb21wdXRlZCB3aGVuIHRoZXJlIGlzIGEgcmVnaW9uIGJyZWFrPC9wPgot
Ci0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9yZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFz
aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcmVnaW9uLXJhbmdlLWZv
ci1ib3gtY3Jhc2gtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
ZTY3MjE5Zjc1ZDFkODM2MmQ4NzllZDQzNDI4YzM4NGJkMjc1NzIyLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9y
ZWdpb24tcmFuZ2UtZm9yLWJveC1jcmFzaC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSw1ICswLDAgQEAKLUJ1ZyA3NDc4MTogQ3Jhc2ggaW4gUmVuZGVyRmxvd1RocmVhZDo6Z2V0UmVn
aW9uUmFuZ2VGb3JCb3gKLQotVGhpcyB0ZXN0IFBBU1NFUyBpZiBpdCBkb2VzIG5vdCBDUkFTSCBv
ciBBU1NFUlQuCi0KLUEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9yZWdp
b24tcmFuZ2UtZm9yLWJveC1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3Jl
Z2lvbi1yYW5nZS1mb3ItYm94LWNyYXNoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDI2ZTQ0YmQ4OWFhNDhkNmYyZTE0ZjhmNzlmNWNlOTMxNzBjZjU0MjMuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3JlZ2lvbi1yYW5nZS1mb3ItYm94LWNyYXNoLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0
MiArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8
c3R5bGU+Ci0gICAgICAgICAgICAjZWwwIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ct
ZnJvbTogYTsKLSAgICAgICAgICAgICAgICBjb250ZW50OiBjb3VudGVyKGMpOwotICAgICAgICAg
ICAgfQotICAgICAgICAgICAgI2VsMiB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWlu
dG86IGE7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgICAgIDxzY3JpcHQ+
Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgdGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIGNyYXNoKCkgewot
ICAgICAgICAgICAgICAgIGVsMCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwotICAg
ICAgICAgICAgICAgIGVsMC5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2VsMCcpOwotICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZWwwKTsKLSAgICAgICAgICAgICAgICBlbDEg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKLSAgICAgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LmFwcGVuZENoaWxkKGVsMSk7Ci0gICAgICAgICAgICAgICAgZWwyID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgnZGl2Jyk7Ci0gICAgICAgICAgICAgICAgZWwyLnNldEF0dHJpYnV0ZSgn
aWQnLCAnZWwyJyk7Ci0gICAgICAgICAgICAgICAgZWwxLmFwcGVuZENoaWxkKGVsMik7Ci0gICAg
ICAgICAgICAgICAgZWwyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCdBJykp
OwotICAgICAgICAgICAgICAgIGVsMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7
Ci0gICAgICAgICAgICAgICAgZWwzLnNldEF0dHJpYnV0ZSgnaWQnLCAnZWwzJyk7Ci0gICAgICAg
ICAgICAgICAgZWwyLmFwcGVuZENoaWxkKGVsMyk7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5zdHlsZS56b29tPTI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQo
J3NlbGVjdGFsbCcpOwotICAgICAgICAgICAgICAgIGVsMi5zdHlsZS5kaXNwbGF5PSd0YWJsZS1o
ZWFkZXItZ3JvdXAnOwotICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUuem9vbT0x
OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgd2luZG93Lm9ubG9hZD1jcmFzaAotICAgICAg
ICA8L3NjcmlwdD4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxwPiBCdWcgPGEg
aHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0NzgxIj43NDc4
MTwvYT46IENyYXNoIGluIFJlbmRlckZsb3dUaHJlYWQ6OmdldFJlZ2lvblJhbmdlRm9yQm94PC9w
PgotICAgICAgICA8cD4gVGhpcyB0ZXN0IFBBU1NFUyBpZiBpdCBkb2VzIG5vdCBDUkFTSCBvciBB
U1NFUlQuPC9wPgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0
aW9uLWNyYXNoLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjNm
MWE2M2M3ZTgwYzk3NjBkOGU4MWJiM2NhZGNjMzNmMTcxYzMwMy4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1jcmFzaC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw0ICswLDAgQEAKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVT
VCBDT01QTEVURQotUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWNyYXNoLmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmMTI2NzZhYzRkNjQ0YmY3ZjBmYzNmZDQzNjc4NzQ0ZDA3
ZDk0MTQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tY3Jhc2gu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0
bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgICNjb250ZW50IHsg
LXdlYmtpdC1mbG93LWludG86IGZsb3c7IH0KLSAgICAgICAgICAgICNjb250YWluZXIgeyAtd2Vi
a2l0LWZsb3ctZnJvbTogZmxvdzsgd2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4O30KLSAgICAg
ICAgPC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxkaXYgaWQ9
ImNvbnRlbnQiPjwvZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb250YWluZXIiPjwvZGl2PgotICAg
ICAgICA8c2NyaXB0PgotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgdmFyIG5hbWVkRmxvd0NvbGxlY3Rp
b24gPSBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCk7Ci0gICAgICAgIGRvY3VtZW50LmJv
ZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQiKSk7Ci0gICAg
ICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNv
bnRhaW5lciIpKTsKLSAgICAgICAgCi0gICAgICAgIC8vIEZvcmNlIGEgcmUtbGF5b3V0IGV2ZW50
LCB3aGljaCBmb3JjZXMgdGhlIGRlbGV0aW9uIG9mIHRoZSB1bmRlcmx5aW5nIE5hbWVkRmxvdy4K
LSAgICAgICAgZG9jdW1lbnQuYm9keS5vZmZzZXRUb3A7Ci0gICAgICAgIAotICAgICAgICB2YXIg
bmFtZWRGbG93ID0gbmFtZWRGbG93Q29sbGVjdGlvbi5mbG93OwotICAgICAgICBpZiAobmFtZWRG
bG93Lm5hbWUgPT0gImZsb3ciKQotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQg
PSAiUEFTUyI7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuaW5uZXJU
ZXh0ID0gIkZBSUwiOwotICAgICAgICA8L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+IAotICAgIDwvYm9keT4KLTwvaHRt
bD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1lbXB0eS1nZXR0ZXJzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1j
b2xsZWN0aW9uLWVtcHR5LWdldHRlcnMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA1NzVhMTRiYmJkYjg0MjQ0ODI5MTM1OWI1MzA0YTFiNzY5NjlmOTRiLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWVtcHR5LWdldHRlcnMtZXhw
ZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotVGVzdCBmb3IgWzExODU2
MV0gTmFtZWRGbG93Q29sbGVjdGlvbiBnZXR0ZXJzIHNob3VsZCBmb2xsb3cgdGhlIHNhbWUgcGF0
dGVybiBhcyBIVE1MQ29sbGVjdGlvbgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQot
UEFTUyBuYW1lZEZsb3dDb2xsZWN0aW9uWzBdIGlzIHVuZGVmaW5lZC4KLVBBU1MgbmFtZWRGbG93
Q29sbGVjdGlvblsnZmxvdyddIGlzIHVuZGVmaW5lZC4KLVBBU1MgbmFtZWRGbG93Q29sbGVjdGlv
bi5pdGVtKDApIGlzIG51bGwKLVBBU1MgbmFtZWRGbG93Q29sbGVjdGlvbi5uYW1lZEl0ZW0oJ2Zs
b3cnKSBpcyBudWxsCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09N
UExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWNvbGxlY3Rpb24tZW1wdHktZ2V0dGVycy5odG1sCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZTZjMjIzNDlkNmRhMzZmY2E0Y2U0MTIyMzNk
MDQzYTBiODU5NWRjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9u
LWVtcHR5LWdldHRlcnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLTwhZG9j
dHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0Pgot
ICAgICAgICAgICAgZGVzY3JpcHRpb24oIlRlc3QgZm9yIDxhIGhyZWY9J2h0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg1NjEnPlsxMTg1NjFdIE5hbWVkRmxvd0NvbGxl
Y3Rpb24gZ2V0dGVycyBzaG91bGQgZm9sbG93IHRoZSBzYW1lIHBhdHRlcm4gYXMgSFRNTENvbGxl
Y3Rpb248L2E+Iik7Ci0KLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb2xsZWN0aW9uID0gZG9j
dW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpOwotICAgICAgICAgICAgc2hvdWxkQmVVbmRlZmlu
ZWQoIm5hbWVkRmxvd0NvbGxlY3Rpb25bMF0iKTsKLSAgICAgICAgICAgIHNob3VsZEJlVW5kZWZp
bmVkKCJuYW1lZEZsb3dDb2xsZWN0aW9uWydmbG93J10iKTsKLSAgICAgICAgICAgIHNob3VsZEJl
TnVsbCgibmFtZWRGbG93Q29sbGVjdGlvbi5pdGVtKDApIik7Ci0gICAgICAgICAgICBzaG91bGRC
ZU51bGwoIm5hbWVkRmxvd0NvbGxlY3Rpb24ubmFtZWRJdGVtKCdmbG93JykiKTsKLSAgICAgICAg
PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4gCi0gICAgPC9ib2R5PgotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLWV4cGVjdGVkLnR4dApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggOWNlNDU2MGU2MTYwM2I3ZWRmYzQ4ZWViMDI1YmE2ZjVhMjk1
ZGNjYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi1leHBlY3Rl
ZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyMCArMCwwIEBACi1UZXN0cyBXZWJLaXROYW1lZEZs
b3dDb2xsZWN0aW9uIGludGVyZmFjZQotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQot
VGVzdCBXZWJLaXROYW1lZEZsb3dDb2xsZWN0aW9uIGxlbmd0aCBwcm9wZXJ0eQotUEFTUyBkb2N1
bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIGlzIDAKLVBBU1MgcmVnaW9uMS5zdHls
ZS53ZWJraXRGbG93RnJvbSA9ICdmbG93MSc7IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3Mo
KS5sZW5ndGggaXMgMQotUEFTUyByZWdpb24yLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJ2Zsb3cy
JzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAyCi1QQVNTIHJlZ2lv
bjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnJzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93
cygpLmxlbmd0aCBpcyAxCi1QQVNTIHJlZ2lvbjIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnJzsg
ZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCBpcyAwCi1UZXN0IFdlYktpdE5h
bWVkRmxvd0NvbGxlY3Rpb24gaW5kZXggZ2V0dGVyCi1QQVNTIChkb2N1bWVudC53ZWJraXRHZXRO
YW1lZEZsb3dzKClbMF0ubmFtZSA9PSAnZmxvdzEnICYmIGRvY3VtZW50LndlYmtpdEdldE5hbWVk
Rmxvd3MoKVsxXS5uYW1lID09ICdmbG93MicpICAgICAgICAgfHwgKGRvY3VtZW50LndlYmtpdEdl
dE5hbWVkRmxvd3MoKVswXS5uYW1lID09ICdmbG93MicgJiYgZG9jdW1lbnQud2Via2l0R2V0TmFt
ZWRGbG93cygpWzFdLm5hbWUgPT0gJ2Zsb3cxJykgaXMgdHJ1ZQotVGVzdCBXZWJLaXROYW1lZEZs
b3dDb2xsZWN0aW9uIG5hbWUgZ2V0dGVyCi1QQVNTIGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxv
d3MoKS5mbG93MS5uYW1lIGlzICJmbG93MSIKLVBBU1MgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRG
bG93cygpLmZsb3cyLm5hbWUgaXMgImZsb3cyIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctY29sbGVjdGlvbi5odG1sCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCA5MmMwMzk2MjNlZThhNTg0MGE3MDdjMTVkNjg4MDY3OTUzMzU4N2Zm
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1jb2xsZWN0aW9uLmh0bWwKKysrIC9k
ZXYvbnVsbApAQCAtMSw0NyArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotPGJvZHk+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
LTxzY3JpcHQ+Ci0gICAgZGVzY3JpcHRpb24oIlRlc3RzIFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rp
b24gaW50ZXJmYWNlIikKLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgdmFyIHJlZ2lvbjEgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJkaXYiKTsKLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImRpdiIpOwotCi0gICAgZGVidWcoIlRlc3QgV2ViS2l0TmFtZWRGbG93Q29sbGVjdGlvbiBsZW5n
dGggcHJvcGVydHkiKTsKLQotICAgIHNob3VsZEJlKCJkb2N1bWVudC53ZWJraXRHZXROYW1lZEZs
b3dzKCkubGVuZ3RoIiwgIjAiKTsKLQotICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVn
aW9uMSk7Ci0gICAgc2hvdWxkQmUoInJlZ2lvbjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnZmxv
dzEnOyBkb2N1bWVudC53ZWJraXRHZXROYW1lZEZsb3dzKCkubGVuZ3RoIiwgIjEiKTsKLQotICAg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMik7Ci0gICAgc2hvdWxkQmUoInJlZ2lv
bjIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnZmxvdzInOyBkb2N1bWVudC53ZWJraXRHZXROYW1l
ZEZsb3dzKCkubGVuZ3RoIiwgIjIiKTsKLQotICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQo
cmVnaW9uMSk7Ci0gICAgc2hvdWxkQmUoInJlZ2lvbjEuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAn
JzsgZG9jdW1lbnQud2Via2l0R2V0TmFtZWRGbG93cygpLmxlbmd0aCIsICIxIik7Ci0KLSAgICBk
b2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJlZ2lvbjIpOwotICAgIHNob3VsZEJlKCJyZWdpb24y
LnN0eWxlLndlYmtpdEZsb3dGcm9tID0gJyc7IGRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3Mo
KS5sZW5ndGgiLCAiMCIpOwotCi0gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWdpb24x
KTsKLSAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjIpOwotICAgIHJlZ2lvbjEu
c3R5bGUud2Via2l0Rmxvd0Zyb20gPSAnZmxvdzEnOwotICAgIHJlZ2lvbjIuc3R5bGUud2Via2l0
Rmxvd0Zyb20gPSAnZmxvdzInOwotCi0gICAgZGVidWcoIlRlc3QgV2ViS2l0TmFtZWRGbG93Q29s
bGVjdGlvbiBpbmRleCBnZXR0ZXIiKTsKLSAgICBzaG91bGRCZVRydWUoIihkb2N1bWVudC53ZWJr
aXRHZXROYW1lZEZsb3dzKClbMF0ubmFtZSA9PSAnZmxvdzEnICYmIGRvY3VtZW50LndlYmtpdEdl
dE5hbWVkRmxvd3MoKVsxXS5uYW1lID09ICdmbG93MicpIFwKLSAgICAgICAgfHwgKGRvY3VtZW50
LndlYmtpdEdldE5hbWVkRmxvd3MoKVswXS5uYW1lID09ICdmbG93MicgJiYgZG9jdW1lbnQud2Vi
a2l0R2V0TmFtZWRGbG93cygpWzFdLm5hbWUgPT0gJ2Zsb3cxJykiKTsKLQotICAgIGRlYnVnKCJU
ZXN0IFdlYktpdE5hbWVkRmxvd0NvbGxlY3Rpb24gbmFtZSBnZXR0ZXIiKTsKLSAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImRvY3VtZW50LndlYmtpdEdldE5hbWVkRmxvd3MoKS5mbG93MS5uYW1l
IiwgImZsb3cxIik7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJkb2N1bWVudC53ZWJraXRH
ZXROYW1lZEZsb3dzKCkuZmxvdzIubmFtZSIsICJmbG93MiIpOwotCi0gICAgZG9jdW1lbnQuYm9k
eS5yZW1vdmVDaGlsZChyZWdpb24xKTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHJl
Z2lvbjIpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3ctZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50LWFkZC10by1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggZGIwMWQzZmM5NDQ1OGYyMWYzOTQ1YmYwNGJhNjQxMjk5YTYyODAzMS4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3ctZXhwZWN0ZWQudHh0CisrKyAv
ZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVu
dAotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLSBGbG93IGNvbnRlbnQKLVBBU1MgZXZl
bnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCi1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJh
cnRpY2xlIgotUEFTUyBldmVudENvdW50IGlzIDIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYWRkLXRvLWZsb3cuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1hZGQtdG8tZmxvdy5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3MTA0MjY3OGIzNjFiYTIxYzQ5ZGM2OGUw
M2ZhMTYxZTE3NjdkYWFiLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1h
ZGQtdG8tZmxvdy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzcgKzAsMCBAQAotPGh0bWw+Ci08
aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxl
PgotI2FydGljbGUgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJvcmRl
cjogMnB4IHNvbGlkIGJsYWNrOwotfQotI3JlZ2lvbl8xIHsKLSAgICAtd2Via2l0LWZsb3ctZnJv
bTogbm9fYXJ0aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxheTppbmxpbmUt
YmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQotLmJs
b2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMiB7IGhlaWdo
dDoxMTBweDsgd2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4OyBib3JkZXI6IDFweCBzb2xpZCByZWQ7
fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iIGNsYXNz
PSJibG9jayI+PC9kaXY+Ci08ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICA8ZGl2PgotICAgICAgICA8
ZGl2IGlkPSJjb250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjog
Z3JlZW47Ij48L2Rpdj4KLSAgICA8L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb25fMSI+
PC9kaXY+Ci08ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci0KLTxkaXYgaWQ9ImNvbnNvbGUiIGNs
YXNzPSJibG9jayI+PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0gICAgZGVzY3JpcHRpb24oIlRlc3RzIHJl
Z2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQiKQotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewot
ICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7Ci0gICAgfQotICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLSAg
ICBmdW5jdGlvbiBmbG93Q29udGVudChyZWdpb24sIGZsb3dOYW1lKSB7Ci0gICAgICAgIHZhciBy
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocmVnaW9uKTsKLSAgICAgICAgci5zdHlsZS53ZWJr
aXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgIH0KLQotICAgIHZhciBldmVudENvdW50ID0gMDsK
LSAgICBmdW5jdGlvbiBmaW5pc2hUZXN0KCkgewotICAgICAgICBzaG91bGRCZSgiZXZlbnRDb3Vu
dCIsICIyIik7Ci0gICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgIH0KLQotICAgIGZ1bmN0aW9u
IHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygiZXZlbnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOwotICAgICAgICAKLSAgICAgICAg
aWYgKCsrZXZlbnRDb3VudCA+IDEpIHsKLSAgICAgICAgICAgIC8vIHRoaXMgc2hvdWxkIGJlIHJl
YWNoZWQgYWZ0ZXIgcmVnaW9uXzIgaXMgYWRkZWQgdG8gZmxvdwotICAgICAgICAgICAgZmluaXNo
VGVzdCgpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0gICAgICAgIAotICAgICAg
ICBmbG93Q29udGVudCgicmVnaW9uXzIiLCAiYXJ0aWNsZSIpOyAvLyB0aGlzIHdpbGwgdHJpZ2dl
ciBhIG5ldyByb3VuZCBvZiBldmVudHMgZHVlIHRvIGxheW91dAotICAgIH0KLQotICAgIGZ1bmN0
aW9uIHN0YXJ0VGVzdCgpIHsKLSAgICAgICAgdmFyIGZsb3cgPSBnZXRGbG93QnlOYW1lKCJhcnRp
Y2xlIik7Ci0gICAgICAgIGZsb3cuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNl
dGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKLSAgICAgICAgCi0gICAgICAgIGRlYnVn
KCJGbG93IGNvbnRlbnQiKTsKLSAgICAgICAgZmxvd0NvbnRlbnQoInJlZ2lvbl8xIiwgImFydGlj
bGUiKTsKLSAgICB9Ci0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRl
c3QpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
LWF1dG8taGVpZ2h0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NTVmNzU5M2NmZmIxZDgyNmY0N2Q2ZDhjZmQ2MGNiNTRhNjNkY2IzOS4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsMTIgKzAsMCBAQAotVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZl
bnQgZm9yIHJlZ2lvbnMgd2l0aCBoZWlnaHQ6YXV0bwotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCi0KLQotRmxvd2luZyBjb250ZW50IGludG8gcmVnaW9ucy4uLgotUEFTUyBldmVudC50YXJn
ZXQubmFtZSBpcyAiYXJ0aWNsZSIKLVBBU1MgZXZlbnRGaXJlZENvdW50IGlzIDEKLVBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWF1dG8taGVp
Z2h0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZl
bnQtYXV0by1oZWlnaHQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTc3M2Yy
MDBjM2RiOGMyMTU4ZWI3NGE1NDhmMGU5NzFiY2M5MjVkMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtYXV0by1oZWlnaHQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg5
ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0
eWxlPgotICAgICNhcnRpY2xlIHsKLSAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7
Ci0gICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCBibGFjazsKLSAgICB9Ci0gICAgI3JlZ2lvbl8x
LCAjcmVnaW9uXzIgewotICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKLSAg
ICAgICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsKLSAg
ICAgICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgICAgICBtYXJnaW46MTBweDsKLSAgICAgICAg
aGVpZ2h0OmF1dG87Ci0gICAgICAgIHdpZHRoOjIwMHB4OwotICAgICAgICBib3JkZXI6IDFweCBz
b2xpZCByZWQ7Ci0gICAgICAgIHBhZGRpbmc6IDVweDsKLSAgICB9Ci0gICAgLmNvbnRlbnQgewot
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKLSAgICAgICAgYm9yZGVyOiAzcHggZGFz
aGVkIGJsdWU7Ci0gICAgfQotICAgICNwYXJ0MSB7Ci0gICAgICAgIGhlaWdodDogMTgwcHg7Ci0g
ICAgfQotICAgICNwYXJ0MiB7Ci0gICAgICAgIC13ZWJraXQtcmVnaW9uLWJyZWFrLWJlZm9yZTog
YWx3YXlzOwotICAgICAgICBoZWlnaHQ6IDE2MHB4OwotICAgIH0KLTwvc3R5bGU+Ci08L2hlYWQ+
Ci08Ym9keT4KLSAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICAgICAgPGRpdj4KLSAgICAgICAg
ICAgIDxkaXYgaWQ9InBhcnQxIiBjbGFzcz0iY29udGVudCI+PC9kaXY+Ci0gICAgICAgICAgICA8
ZGl2IGlkPSJwYXJ0MiIgY2xhc3M9ImNvbnRlbnQiPjwvZGl2PgotICAgICAgICA8L2Rpdj4KLSAg
ICA8L2Rpdj4KLQotICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLSAgICA8ZGl2IGlkPSJy
ZWdpb25fMiI+PC9kaXY+Ci0KLSAgICA8c2NyaXB0PgotCi0gICAgICAgIGRlc2NyaXB0aW9uKCJU
ZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBmb3IgcmVnaW9ucyB3aXRoIGhlaWdo
dDphdXRvIik7Ci0KLSAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVu
dGlsRG9uZSgpOwotICAgICAgICB9Ci0gICAgICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKLSAgICAgICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAgICAgICAgICAg
IHZhciByZWdpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICAg
ICAgICAgIHJlZ2lvbi5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICAg
ICAgcmVnaW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAg
ICAgICByZWdpb24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAgfQot
Ci0gICAgICAgIHZhciBldmVudEZpcmVkQ291bnQgPSAwOwotICAgICAgICBmdW5jdGlvbiBmaW5p
c2hUZXN0KCkgewotICAgICAgICAgICAgc2hvdWxkQmUoImV2ZW50RmlyZWRDb3VudCIsICIxIik7
Ci0gICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0
aW9uIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Ci0gICAgICAgIAkrK2V2ZW50RmlyZWRD
b3VudDsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQudGFyZ2V0Lm5h
bWUiLCAiYXJ0aWNsZSIpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICAvLyB3YWl0IGFuZCBt
YWtlIHN1cmUgbm8gb3RoZXIgZXZlbnRzIGFycml2ZQotICAgICAgICAgICAgc2V0VGltZW91dCgi
ZmluaXNoVGVzdCgpIiwgMjAwKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHN0YXJ0
VGVzdCgpIHsgICAgCi0gICAgICAgICAgICB2YXIgZmxvd1RocmVhZCA9IGdldEZsb3dCeU5hbWUo
ImFydGljbGUiKTsKLSAgICAgICAgICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigid2Vi
a2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKLSAgICAgICAg
ICAgIAotICAgICAgICAgICAgZGVidWcoIkZsb3dpbmcgY29udGVudCBpbnRvIHJlZ2lvbnMuLi4i
KTsKLSAgICAgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7Ci0gICAgICAgIH0KLQotICAg
ICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7Ci0gICAgPC9z
Y3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LWNyYXNoLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY0ZDk0OWEzMzQ4YWRmNjY1
ZjBkYWYzODAzY2E1YjM5ZTEyOTljMWIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LWNyYXNoLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDkgKzAsMCBAQAot
VGhlIHRlc3QgcGFzc2VzIGlmIHRoZXJlIGlzIG5vIGNyYXNoIG9yIGFzc2VydC4KLQotT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
LQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC5odG1sCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAyY2E4ZGY3OWE1MTNmNDA3YmRhZmM3YWE5ZGQ5ZTZmNGNjYjNkMzk4Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1jcmFzaC5odG1sCisrKyAvZGV2
L251bGwKQEAgLTEsNjMgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8aGVh
ZD4KLSAgICAgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgotICAgICAgICA8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxl
PgotICAgICAgICBib2R5LCBodG1sIHsKLSAgICAgICAgICAgIHdpZHRoOiA1MDBweDsKLSAgICAg
ICAgICAgIGhlaWdodDogNTAwcHg7Ci0gICAgICAgIH0KLSAgICAgICAgI2NvbnRlbnQgewotICAg
ICAgICAgICAgd2lkdGg6IDEwMCU7Ci0gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7Ci0gICAgICAg
ICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKLSAgICAgICAgfQotICAgICAgICAjcmVnaW9u
IHsKLSAgICAgICAgICAgIHdpZHRoOiAxMDAlOwotICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOwot
ICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7Ci0gICAgICAgIH0KLSAgICAgICAg
PC9zdHlsZT4KLSAgICA8L2hlYWQ+Ci0gICAgPGJvZHk+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbnRl
bnQiPgotICAgICAgICAgICAgSGVsbG8gY3Jhc2ghCi0gICAgICAgIDwvZGl2PgotICAgICAgICA8
ZGl2IGlkPSJyZWdpb24iPgotICAgICAgICA8L2Rpdj4KLSAgICAgICAgPHNjcmlwdD4KLSAgICAg
ICAgZGVzY3JpcHRpb24oIlRoZSB0ZXN0IHBhc3NlcyBpZiB0aGVyZSBpcyBubyBjcmFzaCBvciBh
c3NlcnQuIik7Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRp
bERvbmUoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIGR1bW15SGFuZGxlciAoZXZ0
KSB7Ci0gICAgICAgICAgICBldnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndlYmtpdHJl
Z2lvbm92ZXJzZXRjaGFuZ2UiLCBkdW1teUhhbmRsZXIpOwotICAgICAgICAgICAgZGVidWcoIlRo
aXMgbGluZSBzaG91bGQgbm90IGFwcGVhciEiKTsKLSAgICAgICAgfQotCi0gICAgICAgIHNldFRp
bWVvdXQoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93cyA9IGRvY3VtZW50
LndlYmtpdEdldE5hbWVkRmxvd3MoKTsKLSAgICAgICAgICAgIG5hbWVkRmxvd3NbImZsb3ciXS5h
ZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgZHVtbXlIYW5kbGVy
KTsKLSAgICAgICAgICAgIHZhciBjb250ZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNv
bnRlbnQiKTsKLSAgICAgICAgICAgIHZhciByZWdpb24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicmVnaW9uIik7Ci0gICAgICAgICAgICBjb250ZW50LnN0eWxlLmhlaWdodCA9ICI2MDBweCI7
Ci0KLSAgICAgICAgICAgIC8vIFNjaGVkdWxlIGEgcmVnaW9ub3ZlcnNldGNoYW5nZSBldmVudC4K
LSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOwotCi0gICAgICAgICAgICAvLyBU
cmFuc2l0aW9uIHRoZSBmbG93IHRvIHRoZSAiTlVMTCIgc3RhdGUuCi0gICAgICAgICAgICBkb2N1
bWVudC5ib2R5LnJlbW92ZUNoaWxkKGNvbnRlbnQpOwotICAgICAgICAgICAgZG9jdW1lbnQuYm9k
eS5yZW1vdmVDaGlsZChyZWdpb24pOwotCi0gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9u
KCkgewotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Ci0gICAgICAgICAgICB9LDApCi0gICAg
ICAgIH0sIDApOwotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctZXZlbnQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA3Yzc5MzM5YmE4Y2I1OTY2MGYyYjI2YzVhYjZkZmMyMGViNTYzZWIzLi4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSwxMSArMCwwIEBACi1UZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGV2ZW50Ci0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotIAotRmxvdyBjb250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5u
YW1lIGlzICJhcnRpY2xlIgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQt
bmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLWV4cGVjdGVkLnR4
dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODIwYmQ5NWE2NzI1NWIwN2U1ZDU4NDgx
YjQ1NWQxNmYyOWRhZDk2Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQt
bm8tcmVnaW9ucy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNSArMCwwIEBACi1U
ZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGJlaW5nIGRpc3BhdGNoZWQgd2hlbiB0aGUgcmVnaW9u
IGNoYWluIGlzIHJlbW92ZWQKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUZsb3cg
Y29udGVudAotUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKLVJlbW92aW5nIHJl
Z2lvbiAxCi1SZW1vdmluZyByZWdpb24gMgotUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0
aWNsZSIKLVBBU1MgZXZlbnRDb3VudCBpcyAyCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJlZ2lvbnMuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1uby1yZWdpb25zLmh0bWwKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRiMWIwMmMwM2FiM2RmYTk4ZjA1M2ExZDg2MWNi
NzY4OTljZmE4ZmMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LW5vLXJl
Z2lvbnMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg2ICswLDAgQEAKLTwhRE9DVFlQRSBodG1s
PgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJl
c291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotI2FydGljbGUgewotICAgIC13
ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOwot
fQotI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGlj
bGU7Ci0gICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwotICAg
IHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsKLX0KLS5ibG9jayB7Ci0gICBk
aXNwbGF5OmJsb2NrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdp
ZHRoOjIwMHB4OyBtYXJnaW46IDVweDt9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2
IGlkPSJhcnRpY2xlIj4KLSAgICA8ZGl2PgotICAgICAgICA8ZGl2IGlkPSJjb250ZW50IiBzdHls
ZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48L2Rpdj4KLSAgICA8
L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Ci08ZGl2IGlkPSJjb250
YWluZXIyIj4KLSAgICA8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci08L2Rpdj4KLQotPHNjcmlw
dD4KLSAgICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBiZWluZyBkaXNw
YXRjaGVkIHdoZW4gdGhlIHJlZ2lvbiBjaGFpbiBpcyByZW1vdmVkIik7Ci0gICAgaWYgKHdpbmRv
dy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAg
ICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICB9Ci0KLSAgICB3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAg
ICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICAg
ICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICByID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxv
d0Zyb20gPSBmbG93TmFtZTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiBmaW5pc2hUZXN0KCkgewot
ICAgICAgICBzaG91bGRCZSgiZXZlbnRDb3VudCIsICIyIik7Ci0gICAgICAgIGZpbmlzaEpTVGVz
dCgpOwotICAgIH0KLQotICAgIHZhciBldmVudENvdW50ID0gMDsKLSAgICBmdW5jdGlvbiByZWdp
b25PdmVyc2V0Q2hhbmdlZChldmVudCkgewotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKLSAgICAgICAgaWYgKCsrZXZlbnRDb3Vu
dCA+IDEpIHsKLSAgICAgICAgICAgZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndl
YmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7Ci0gICAgICAg
ICAgIGZpbmlzaFRlc3QoKTsKLSAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0KLSAgICAg
ICAgZGVidWcoIlJlbW92aW5nIHJlZ2lvbiAxIik7Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zy
b20gPSAibm8tYXJ0aWNsZSI7Ci0gICAgICAgIGRlYnVnKCJSZW1vdmluZyByZWdpb24gMiIpOwot
ICAgICAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAg
IHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSAibm8tYXJ0aWNsZSI7Ci0gICAgfQotCi0gICAgZnVu
Y3Rpb24gc3RhcnRUZXN0KCkgewotICAgICAgICB2YXIgZmxvdyA9IGdldEZsb3dCeU5hbWUoImFy
dGljbGUiKTsKLSAgICAgICAgZmxvdy5hZGRFdmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVy
c2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5nZWQpOwotCi0gICAgICAgIGRlYnVnKCJGbG93
IGNvbnRlbnQiKTsKLSAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLSAgICB9Ci0gICAg
d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRlc3QpOwotCi08L3NjcmlwdD4K
LTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93
ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5n
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtbm8tb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YjI5NDY4ZTU2YjU4ZmViYmYwYzgwNTZk
NWMyYzljNjNkZTgwNjc0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1y
ZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS1leHBlY3RlZC50eHQKKysrIC9kZXYv
bnVsbApAQCAtMSwxMyArMCwwIEBACi1UZXN0cyB0aGUgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVu
dCBmb3IgcmVnaW9ucyBpbnNpZGUgZmxleGJveGVzCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi1GbG93aW5nIGNvbnRlbnQgaW50byByZWdpb25zLi4uCi1QQVNTIGV2ZW50LnRhcmdl
dC5uYW1lIGlzICJhcnRpY2xlIgotRW5nYWdpbmcgZmxleGJveC4uLgotUEFTUyBldmVudEZpcmVk
Q291bnQgaXMgMQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBM
RVRFCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1ldmVudC1yZWdpb24taW4tZmxleGJveC1uby1vdmVyc2V0LWNoYW5nZS5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1m
bGV4Ym94LW5vLW92ZXJzZXQtY2hhbmdlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDhiZjViY2ZmYzgwMjM4MmFlMmY3N2U4YjE1OTczYTM2NjUzODExNDEuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW5vLW92ZXJzZXQt
Y2hhbmdlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMTUgKzAsMCBAQAotPCFET0NUWVBFIGh0
bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0gICAgI2FydGljbGUgewot
ICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogYXJ0aWNsZTsKLSAgICAgICAgYm9yZGVyOiAxMHB4
IHNvbGlkIGJsYWNrOwotICAgIH0KLSAgICAjcmVnaW9uXzEsICNyZWdpb25fMiB7Ci0gICAgICAg
IC13ZWJraXQtZmxvdy1mcm9tOiBub19hcnRpY2xlOwotICAgICAgICBvdmVyZmxvdzpoaWRkZW47
Ci0gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwotICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0
b3A7Ci0gICAgICAgIG1hcmdpbjoxMHB4OwotICAgICAgICBoZWlnaHQ6MTkwcHg7Ci0gICAgICAg
IHdpZHRoOjIwMHB4OwotICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7Ci0gICAgICAgIHBh
ZGRpbmc6IDVweDsKLSAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7Ci0gICAgICAgIC13ZWJr
aXQtZmxleC1iYXNpczogMTAwJTsKLSAgICB9Ci0gICAgI3JlZ2lvbl8yIHsKLSAgICAgICAgLXdl
YmtpdC1mbGV4LWJhc2lzOiAzMCU7Ci0gICAgfQotICAgIC5jb250ZW50IHsKLSAgICAgICAgYmFj
a2dyb3VuZC1jb2xvcjogZ3JlZW47Ci0gICAgICAgIGJvcmRlcjogM3B4IGRhc2hlZCBibHVlOwot
ICAgICAgICBtYXJnaW46IDVweDsKLSAgICB9Ci0gICAgI3BhcnQxIHsKLSAgICAgICAgaGVpZ2h0
OiAxNDBweDsKLSAgICB9Ci0gICAgI3BhcnQyIHsKLSAgICAgICAgaGVpZ2h0OiAxNjBweDsKLSAg
ICB9Ci0gICAgI2ZsZXhib3ggewotICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBncmVlbjsKLSAg
ICAgICAgbWFyZ2luOiA1cHg7Ci0gICAgfQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotICAg
IDxkaXYgaWQ9ImFydGljbGUiPgotICAgICAgICA8ZGl2PgotICAgICAgICAgICAgPGRpdiBpZD0i
cGFydDEiIGNsYXNzPSJjb250ZW50Ij48L2Rpdj4KLSAgICAgICAgICAgIDxkaXYgaWQ9InBhcnQy
IiBjbGFzcz0iY29udGVudCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2PgotICAgIDwvZGl2PgotCi0g
ICAgPGRpdiBpZD0iZmxleGJveCI+Ci0gICAgICAgIDxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4K
LSAgICAgICAgPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotICAgIDwvZGl2PgotCi0gICAgPHNj
cmlwdD4KLQotICAgICAgICBkZXNjcmlwdGlvbigiVGVzdHMgdGhlIHJlZ2lvbk92ZXJzZXRDaGFu
Z2UgZXZlbnQgZm9yIHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcyIpOwotCi0gICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgfQotICAg
ICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0gICAgICAgIGZ1bmN0aW9uIGZsb3dD
b250ZW50KGZsb3dOYW1lKSB7Ci0gICAgICAgICAgICB2YXIgcmVnaW9uID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgICAgICAgICByZWdpb24uc3R5bGUud2Via2l0
Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAgICAgIHJlZ2lvbiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICAgICAgcmVnaW9uLnN0eWxlLndlYmtpdEZs
b3dGcm9tID0gZmxvd05hbWU7Ci0gICAgICAgIH0KLQotICAgICAgICB2YXIgZXZlbnRGaXJlZENv
dW50ID0gMDsKLSAgICAgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKLSAgICAgICAgICAgIHNo
b3VsZEJlKCJldmVudEZpcmVkQ291bnQiLCAiMSIpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0
KCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBFbmFibGVGbGV4Ym94KCkgewotICAg
ICAgICAgICAgZGVidWcoIkVuZ2FnaW5nIGZsZXhib3guLi4iKQotICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImZsZXhib3giKS5zdHlsZS5kaXNwbGF5ID0gIi13ZWJraXQtZmxl
eCI7Ci0KLSAgICAgICAgICAgIC8vIHdhaXQgYW5kIG1ha2Ugc3VyZSBubyBvdGhlciBldmVudHMg
YXJyaXZlCi0gICAgICAgICAgICBzZXRUaW1lb3V0KCJmaW5pc2hUZXN0KCkiLCAyMDApOwotICAg
ICAgICB9Ci0KLSAgICAgICAgZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5nZWQoZXZlbnQpIHsK
LSAgICAgICAgCSsrZXZlbnRGaXJlZENvdW50OwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7Ci0KLSAgICAgICAgICAgIC8v
IGFjdGl2YXRlIHRoZSBmbGV4Ym94Ci0gICAgICAgICAgICBpZiAoZXZlbnRGaXJlZENvdW50ID09
IDEpIHsKLSAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAg
ICAgICAgICAgIEVuYWJsZUZsZXhib3goKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgICAgIHNldFRpbWVvdXQoIkVuYWJsZUZsZXhib3goKSIsIDEwMDApOwotCi0gICAg
ICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAg
ZnVuY3Rpb24gc3RhcnRUZXN0KCkgeyAgICAKLSAgICAgICAgICAgIHZhciBmbG93VGhyZWFkID0g
Z2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOwotICAgICAgICAgICAgZmxvd1RocmVhZC5hZGRFdmVu
dExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5n
ZWQpOwotICAgICAgICAgICAgCi0gICAgICAgICAgICBkZWJ1ZygiRmxvd2luZyBjb250ZW50IGlu
dG8gcmVnaW9ucy4uLiIpOwotICAgICAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRU
ZXN0KTsKLSAgICA8L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWlu
LWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQt
Y2hhbmdlLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODgxOGRl
OWY0MjZjYjU4MGQ5YjRlOWQzNmU0MDFiZDA1ZGE1MWJmMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UtZXhwZWN0
ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotVGVzdHMgdGhlIHJlZ2lvbk92
ZXJzZXRDaGFuZ2UgZXZlbnQgZm9yIHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcwotCi1PbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCi0KLQotRmxvd2luZyBjb250ZW50IGludG8gcmVnaW9ucy4uLgot
UEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKLUVuZ2FnaW5nIGZsZXhib3guLi4K
LVBBU1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCi1QQVNTIGV2ZW50RmlyZWRDb3Vu
dCBpcyAyCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUK
LQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93
LWV2ZW50LXJlZ2lvbi1pbi1mbGV4Ym94LW92ZXJzZXQtY2hhbmdlLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gt
b3ZlcnNldC1jaGFuZ2UuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGEwYzY4
ZmRhMGRjMDUwNGU4YTEwZjhkNzFiZjc4MDA3MzI5ZWE2MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtcmVnaW9uLWluLWZsZXhib3gtb3ZlcnNldC1jaGFuZ2UuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDExOCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgot
PGhlYWQ+Ci08bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvaGVs
cGVyLmpzIj48L3NjcmlwdD4KLTxzdHlsZT4KLSAgICAjYXJ0aWNsZSB7Ci0gICAgICAgIC13ZWJr
aXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7
Ci0gICAgfQotICAgICNyZWdpb25fMSwgI3JlZ2lvbl8yIHsKLSAgICAgICAgLXdlYmtpdC1mbG93
LWZyb206IG5vX2FydGljbGU7Ci0gICAgICAgIG92ZXJmbG93OmhpZGRlbjsKLSAgICAgICAgZGlz
cGxheTppbmxpbmUtYmxvY2s7Ci0gICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICAgICAg
bWFyZ2luOjEwcHg7Ci0gICAgICAgIGhlaWdodDphdXRvOwotICAgICAgICB3aWR0aDoyMDBweDsK
LSAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmVkOwotICAgICAgICBwYWRkaW5nOiA1cHg7Ci0g
ICAgICAgIC13ZWJraXQtZmxleC1ncm93OiAxOwotICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6
IDEwMCU7Ci0gICAgfQotICAgICNyZWdpb25fMiB7Ci0gICAgICAgIC13ZWJraXQtZmxleC1iYXNp
czogNzAlOwotICAgIH0KLSAgICAuY29udGVudCB7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6
IGdyZWVuOwotICAgICAgICBib3JkZXI6IDNweCBkYXNoZWQgYmx1ZTsKLSAgICAgICAgbWFyZ2lu
OiA1cHg7Ci0gICAgfQotICAgICNwYXJ0MSB7Ci0gICAgICAgIGhlaWdodDogNzBweDsKLSAgICB9
Ci0gICAgI3BhcnQyIHsKLSAgICAgICAgaGVpZ2h0OiA4MHB4OwotICAgIH0KLSAgICAjZmxleGJv
eCB7Ci0gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGdyZWVuOwotICAgICAgICBtYXJnaW46IDVw
eDsKLSAgICAgICAgd2lkdGg6IDI0MHB4OwotICAgICAgICBoZWlnaHQ6IDMwMHB4OwotICAgICAg
ICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Ci0gICAgfQotPC9zdHlsZT4KLTwvaGVh
ZD4KLTxib2R5PgotICAgIDxkaXYgaWQ9ImFydGljbGUiPgotICAgICAgICA8ZGl2PgotICAgICAg
ICAgICAgPGRpdiBpZD0icGFydDEiIGNsYXNzPSJjb250ZW50Ij48L2Rpdj4KLSAgICAgICAgICAg
IDxkaXYgaWQ9InBhcnQyIiBjbGFzcz0iY29udGVudCI+PC9kaXY+Ci0gICAgICAgIDwvZGl2Pgot
ICAgIDwvZGl2PgotCi0gICAgPGRpdiBpZD0iZmxleGJveCI+Ci0gICAgICAgIDxkaXYgaWQ9InJl
Z2lvbl8xIj48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotICAgIDwv
ZGl2PgotCi0gICAgPHNjcmlwdD4KLQotICAgICAgICBkZXNjcmlwdGlvbigiVGVzdHMgdGhlIHJl
Z2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQgZm9yIHJlZ2lvbnMgaW5zaWRlIGZsZXhib3hlcyIpOwot
Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgICAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
LSAgICAgICAgfQotICAgICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0gICAgICAg
IGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7Ci0gICAgICAgICAgICB2YXIgcmVnaW9u
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgICAgICAgICByZWdp
b24uc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAgICAgIHJlZ2lvbiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICAgICAgcmVnaW9u
LnN0eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgICAgIH0KLQotICAgICAgICB2
YXIgZXZlbnRGaXJlZENvdW50ID0gMDsKLSAgICAgICAgZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsK
LSAgICAgICAgICAgIHNob3VsZEJlKCJldmVudEZpcmVkQ291bnQiLCAiMiIpOwotICAgICAgICAg
ICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBFbmFibGVG
bGV4Ym94KCkgewotICAgICAgICAgICAgZGVidWcoIkVuZ2FnaW5nIGZsZXhib3guLi4iKQotICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZsZXhib3giKS5zdHlsZS5kaXNwbGF5
ID0gIi13ZWJraXQtZmxleCI7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiByZWdpb25P
dmVyc2V0Q2hhbmdlZChldmVudCkgewotICAgICAgICAJKytldmVudEZpcmVkQ291bnQ7Ci0gICAg
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGlj
bGUiKTsKLQotICAgICAgICAgICAgLy8gYWN0aXZhdGUgdGhlIGZsZXhib3gKLSAgICAgICAgICAg
IGlmIChldmVudEZpcmVkQ291bnQgPT0gMSkgewotICAgICAgICAgICAgICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKLSAgICAgICAgICAgICAgICAgICAgRW5hYmxlRmxleGJveCgpOwotICAgICAg
ICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgiRW5hYmxlRmxl
eGJveCgpIiwgMTAwMCk7Ci0KLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGVsc2UgCi0gICAgICAgICAgICAgICAgc2V0VGltZW91dCgiZmluaXNo
VGVzdCgpIiwgMjAwKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0aW9uIHN0YXJ0VGVzdCgp
IHsgICAgCi0gICAgICAgICAgICB2YXIgZmxvd1RocmVhZCA9IGdldEZsb3dCeU5hbWUoImFydGlj
bGUiKTsKLSAgICAgICAgICAgIGZsb3dUaHJlYWQuYWRkRXZlbnRMaXN0ZW5lcigid2Via2l0cmVn
aW9ub3ZlcnNldGNoYW5nZSIsIHJlZ2lvbk92ZXJzZXRDaGFuZ2VkKTsKLSAgICAgICAgICAgIAot
ICAgICAgICAgICAgZGVidWcoIkZsb3dpbmcgY29udGVudCBpbnRvIHJlZ2lvbnMuLi4iKTsKLSAg
ICAgICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7Ci0gICAgICAgIH0KLQotICAgICAgICB3
aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7Ci0gICAgPC9zY3JpcHQ+
Ci0gICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWRvbS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3Zl
LWZyb20tZG9tLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjc1
OTRmOTY1NmIxNDgxOGIzMWY4N2QxNmE1ZWVlMWYzZjMzMDg0MC4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZG9tLWV4cGVjdGVkLnR4dAorKysgL2Rl
di9udWxsCkBAIC0xLDEzICswLDAgQEAKLVRlc3RzIHJlZ2lvbk92ZXJzZXRDaGFuZ2UgZXZlbnQK
LQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0gRmxvdyBjb250ZW50Ci1QQVNTIGV2ZW50
LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBET00KLVBB
U1MgZXZlbnQudGFyZ2V0Lm5hbWUgaXMgImFydGljbGUiCi1QQVNTIGV2ZW50Q291bnQgaXMgMgot
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1y
ZW1vdmUtZnJvbS1kb20uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1kb20uaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNjU0NjZlYjhmMWI0NGVkMWRhY2JhZWU0MTkwMmE0MmVlOTAzMzkyZC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZG9tLmh0bWwKKysr
IC9kZXYvbnVsbApAQCAtMSw4NCArMCwwIEBACi08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0jYXJ0aWNsZSB7Ci0gICAg
LXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7
Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMnsKLSAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0
aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0g
ICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQotLmJsb2NrIHsKLSAg
IGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsg
d2lkdGg6MjAwcHg7IG1hcmdpbjogNXB4OyBib3JkZXI6IDFweCBzb2xpZCByZWQ7fQotPC9zdHls
ZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iZGVzY3JpcHRpb24iIGNsYXNzPSJibG9jayI+
PC9kaXY+Ci08ZGl2IGlkPSJhcnRpY2xlIj4KLSAgICA8ZGl2PgotICAgICAgICA8ZGl2IGlkPSJj
b250ZW50IiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Ij48
L2Rpdj4KLSAgICA8L2Rpdj4KLTwvZGl2PgotCi08ZGl2IGlkPSJyZWdpb25fMSI+PC9kaXY+Ci08
ZGl2IGlkPSJjb250YWluZXIyIj4KLSAgICA8ZGl2IGlkPSJyZWdpb25fMiI+PC9kaXY+Ci08L2Rp
dj4KLQotPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KLQotPHNjcmlwdD4K
LSAgICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCIpCi0gICAg
aWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwotICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICB9Ci0gICAgCi0gICAg
d2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwotICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZs
b3dOYW1lKSB7Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lv
bl8xIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAg
ICAgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICByLnN0
eWxlLndlYmtpdEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgfQotCi0gICAgdmFyIGV2ZW50Q291
bnQgPSAwOwotICAgIGZ1bmN0aW9uIGZpbmlzaFRlc3QoKSB7Ci0gICAgICAgIHNob3VsZEJlKCJl
dmVudENvdW50IiwgIjIiKTsKLSAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgfQotCi0gICAg
ZnVuY3Rpb24gcmVnaW9uT3ZlcnNldENoYW5nZWQoZXZlbnQpIHsKLSAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJhcnRpY2xlIik7Ci0gICAgICAgIGlm
ICgrK2V2ZW50Q291bnQgPiAxKSB7Ci0gICAgICAgICAgIGV2ZW50LnRhcmdldC5yZW1vdmVFdmVu
dExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5n
ZWQpOwotICAgICAgICAgICAvLyB0aGlzIHNob3VsZCBiZSByZWFjaGVkIGFmdGVyIHJlZ2lvbl8y
IGlzIHJlbW92ZWQgZnJvbSBET00KLSAgICAgICAgICAgZmluaXNoVGVzdCgpOwotICAgICAgICAg
ICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHZhciBjMiA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXIyIik7Ci0gICAgICAgIGRlYnVnKCJSZW1vdmluZyBy
ZWdpb25fMiBmcm9tIERPTSIpOwotICAgICAgICBjMi5pbm5lckhUTUwgPSAiIjsgLy8gdGhpcyB3
aWxsIHRyaWdnZXIgYSBuZXcgcm91bmQgb2YgZXZlbnRzIGR1ZSB0byBsYXlvdXQKLSAgICB9Ci0g
ICAgCi0gICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewotICAgICAgICB2YXIgZmxvdyA9IGdldEZs
b3dCeU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgZmxvdy5hZGRFdmVudExpc3RlbmVyKCJ3ZWJr
aXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENoYW5nZWQpOwotICAgICAgICAK
LSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAgICBmbG93Q29udGVudCgiYXJ0
aWNsZSIpOwotICAgIH0KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0YXJ0
VGVzdCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVudC1yZW1vdmUtZnJvbS1mbG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxv
dy1ldmVudC1yZW1vdmUtZnJvbS1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggOWU2ZTRjOGVmNmRiMThhZjVmNGM2ZmE3NmVlZDRiMjg3MDFkZTM4ZS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1UZXN0cyByZWdpb25PdmVy
c2V0Q2hhbmdlIGV2ZW50Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotIAotRmxvdyBj
b250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUmVtb3ZpbmcgcmVn
aW9uXzIgZnJvbSBmbG93Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xlIgotUEFT
UyBldmVudENvdW50IGlzIDIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVT
VCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0
LW5hbWVkLWZsb3ctZXZlbnQtcmVtb3ZlLWZyb20tZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXJlbW92ZS1mcm9tLWZsb3cuaHRtbApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzMzZWVhNDg5NDMyZTg0Mzk5NDMyM2JmMTVh
ZGNiNzQ0Y2JiYWVkMS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtcmVt
b3ZlLWZyb20tZmxvdy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsODEgKzAsMCBAQAotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0
eWxlPgotI2FydGljbGUgewotICAgIC13ZWJraXQtZmxvdy1pbnRvOiBhcnRpY2xlOwotICAgIGJv
cmRlcjogMnB4IHNvbGlkIGJsYWNrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdl
YmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7Ci0gICAgb3ZlcmZsb3c6aGlkZGVuOwotICAgIGRp
c3BsYXk6aW5saW5lLWJsb2NrOwotICAgIHZlcnRpY2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46
MTBweDsKLX0KLS5ibG9jayB7Ci0gICBkaXNwbGF5OmJsb2NrOwotfQotI3JlZ2lvbl8xLCAjcmVn
aW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4OyBtYXJnaW46IDVweDsgYm9yZGVyOiAx
cHggc29saWQgcmVkO30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImRlc2Ny
aXB0aW9uIiBjbGFzcz0iYmxvY2siPjwvZGl2PgotPGRpdiBpZD0iYXJ0aWNsZSI+Ci0gICAgPGRp
dj4KLSAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMjAwcHg7IGJhY2tn
cm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBp
ZD0icmVnaW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotCi08ZGl2IGlk
PSJjb25zb2xlIiBjbGFzcz0iYmxvY2siPjwvZGl2PgotCi08c2NyaXB0PgotICAgIGRlc2NyaXB0
aW9uKCJUZXN0cyByZWdpb25PdmVyc2V0Q2hhbmdlIGV2ZW50IikKLSAgICBpZiAod2luZG93LnRl
c3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgIHRl
c3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgIH0KLSAgICAKLSAgICB3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAg
ICAgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICAg
ICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICByID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxv
d0Zyb20gPSBmbG93TmFtZTsKLSAgICB9Ci0KLSAgICB2YXIgZXZlbnRDb3VudCA9IDA7Ci0gICAg
ZnVuY3Rpb24gZmluaXNoVGVzdCgpIHsKLSAgICAgICAgc2hvdWxkQmUoImV2ZW50Q291bnQiLCAi
MiIpOwotICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiByZWdp
b25PdmVyc2V0Q2hhbmdlZChldmVudCkgewotICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
ImV2ZW50LnRhcmdldC5uYW1lIiwgImFydGljbGUiKTsKLSAgICAgICAgaWYgKCsrZXZlbnRDb3Vu
dCA+IDEpIHsKLSAgICAgICAgICAgIC8vIHRoaXMgc2hvdWxkIGJlIHJlYWNoZWQgYWZ0ZXIgcmVn
aW9uXzIgaXMgcmVtb3ZlZCBmcm9tIERPTQotICAgICAgICAgICBzZXRUaW1lb3V0KCJmaW5pc2hU
ZXN0KCkiLCAyMDApOwotICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgCi0g
ICAgICAgIHZhciByMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAg
ICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBmbG93Iik7Ci0gICAgICAgIHIyLnN0
eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vbmUiOyAvLyB0aGlzIHdpbGwgdHJpZ2dlciBhIG5ldyBy
b3VuZCBvZiBldmVudHMgZHVlIHRvIGxheW91dAotICAgIH0KLSAgICAKLSAgICBmdW5jdGlvbiBz
dGFydFRlc3QoKSB7Ci0gICAgICAgIHZhciBmbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIp
OwotICAgICAgICBmbG93LmFkZEV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFu
Z2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7Ci0gICAgICAgIAotICAgICAgICBkZWJ1ZygiRmxv
dyBjb250ZW50Iik7Ci0gICAgICAgIGZsb3dDb250ZW50KCJhcnRpY2xlIik7Ci0gICAgfQotICAg
IHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgc3RhcnRUZXN0KTsKLTwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0LWV4cGVjdGVkLnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2QxNjQ4NDVjNGM2ZDRlYTc0OGRlZjEyYjc4
Mjg1MzZjMWM5OTQ0MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFy
Z2V0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLVRlc3RzIHRo
ZSB0aGUgTmFtZWRGbG93IG9iamVjdCBiZWhhdmlvciBhcyBhbiBFdmVudFRhcmdldAotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotRmxvdyBjb250ZW50Ci1QQVNTIGV2ZW50LnRhcmdl
dC5uYW1lIGlzICJhcnRpY2xlIgotUEFTUyBnZXRGbG93QnlOYW1lKCJhcnRpY2xlIikgaXMgbm9u
LW51bGwuCi1QQVNTIHJlY3JlYXRlZCBpcyBmYWxzZQotUEFTUyBnZXRGbG93QnlOYW1lKCJhcnRp
Y2xlIikgaXMgbnVsbAotUEFTUyBldmVudC50YXJnZXQubmFtZSBpcyAiYXJ0aWNsZSIKLVBBU1Mg
cmVjcmVhdGVkIGlzIHRydWUKLVBBU1MgZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpIGlzIG5vbi1u
dWxsLgotUEFTUyB1cGRhdGVkQ291bnQgaXMgMgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0gCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdGFyZ2V0Lmh0bWwKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZmMGExNmI5OWM2NTgwYjYzZGNjNzJmNzQ0MmVlZDQwNmZj
YTViM2EuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRhcmdldC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMTE0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+
Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InJlc291cmNlcy9o
ZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotI2FydGljbGUgewotICAgIC13ZWJraXQtZmxv
dy1pbnRvOiBhcnRpY2xlOwotICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrOwotfQotI3JlZ2lv
bl8xLCAjcmVnaW9uXzJ7Ci0gICAgLXdlYmtpdC1mbG93LWZyb206IG5vX2FydGljbGU7Ci0gICAg
b3ZlcmZsb3c6aGlkZGVuOwotICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwotICAgIHZlcnRpY2Fs
LWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsKLX0KLS5ibG9jayB7Ci0gICBkaXNwbGF5OmJs
b2NrOwotfQotI3JlZ2lvbl8xLCAjcmVnaW9uXzIgeyBoZWlnaHQ6MTEwcHg7IHdpZHRoOjIwMHB4
OyBib3JkZXI6IDFweCBzb2xpZCByZWQ7fQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRp
diBpZD0iYXJ0aWNsZSI+Ci0gICAgPGRpdj4KLSAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5
bGU9ImhlaWdodDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+Ci0gICAg
PC9kaXY+Ci08L2Rpdj4KLQotPGRpdiBpZD0icmVnaW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVn
aW9uXzIiPjwvZGl2PgotCi08c2NyaXB0PgotCi1kZXNjcmlwdGlvbigiVGVzdHMgdGhlIHRoZSBO
YW1lZEZsb3cgb2JqZWN0IGJlaGF2aW9yIGFzIGFuIEV2ZW50VGFyZ2V0Iik7Ci0KLWlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewotICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RS
dW5uZXIud2FpdFVudGlsRG9uZSgpOwotfQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwot
ZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAgICB2YXIgciA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwotICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBm
bG93TmFtZTsKLSAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0g
ICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotfQotCi1mdW5jdGlvbiBtYWtl
Rmxvd051bGwoKSB7Ci0Jc2hvdWxkQmVOb25OdWxsKCdnZXRGbG93QnlOYW1lKCJhcnRpY2xlIikn
KTsKLQotICAgIHZhciBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwot
ICAgIGVsLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vX2FydGljbGUiOwotICAgIGVsID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgZWwuc3R5bGUud2Via2l0Rmxv
d0Zyb20gPSAibm9fYXJ0aWNsZSI7Ci0gICAgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
YXJ0aWNsZSIpOwotICAgIGVsLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gIm5vX2FydGljbGUiOwot
fQotCi12YXIgcmVjcmVhdGVkID0gZmFsc2U7Ci1mdW5jdGlvbiBtYWtlRmxvd0NyZWF0ZWQoKSB7
Ci0Jc2hvdWxkQmVOdWxsKCdnZXRGbG93QnlOYW1lKCJhcnRpY2xlIiknKTsKLQlnYygpOwotCi0g
ICAgdmFyIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0gICAgZWwu
c3R5bGUud2Via2l0Rmxvd0Zyb20gPSAiYXJ0aWNsZSI7Ci0gICAgZWwgPSBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicmVnaW9uXzIiKTsKLSAgICBlbC5zdHlsZS53ZWJraXRGbG93RnJvbSA9ICJh
cnRpY2xlIjsKLSAgICBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0g
ICAgZWwuc3R5bGUud2Via2l0Rmxvd0ludG8gPSAiYXJ0aWNsZSI7Ci0KLSAgICByZWNyZWF0ZWQg
PSB0cnVlOwotfQotCi12YXIgdXBkYXRlZENvdW50ID0gMDsKLWZ1bmN0aW9uIGZpbmlzaFRlc3Qo
KSB7Ci0gICAgc2hvdWxkQmUoInVwZGF0ZWRDb3VudCIsICIyIik7Ci0gICAgZmluaXNoSlNUZXN0
KCk7Ci19Ci0KLWZ1bmN0aW9uIGZsb3dUaHJlYWRVcGRhdGVkKGV2ZW50KSB7Ci0JKyt1cGRhdGVk
Q291bnQ7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC50YXJnZXQubmFtZSIsICJh
cnRpY2xlIik7Ci0KLSAgICBpZiAodXBkYXRlZENvdW50ID09IDIpIHsKLSAgICAJc2hvdWxkQmVU
cnVlKCJyZWNyZWF0ZWQiKTsKLSAgICAJZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIo
IndlYmtpdHJlZ2lvbm92ZXJzZXRjaGFuZ2UiLCBmbG93VGhyZWFkVXBkYXRlZCk7Ci0gICAgCW1h
a2VGbG93TnVsbCgpOwotICAgIAlzZXRUaW1lb3V0KCJmaW5pc2hUZXN0KCkiLCAyMDApOwotICAg
IAlyZXR1cm47Ci0gICAgfQotCi0gICAgbWFrZUZsb3dOdWxsKCk7Ci0gICAgc2hvdWxkQmVGYWxz
ZSgicmVjcmVhdGVkIik7Ci0KLSAgICAvLyBTZXQgYSB0aW1lb3V0IHNvIHRoZSBldmVudCByZWZl
cmVuY2UgdG8gdGhlIHRhcmdldCBpcyBkaXNjYXJkZWQKLSAgICBzZXRUaW1lb3V0KG1ha2VGbG93
Q3JlYXRlZCwgMTApOwotfQotCi1mdW5jdGlvbiBzdGFydFRlc3QoKSB7ICAgIAotICAgIHZhciBm
bG93VGhyZWFkID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOwotICAgIGZsb3dUaHJlYWQuYWRk
RXZlbnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIGZsb3dUaHJlYWRVcGRh
dGVkKTsKLSAgICAKLSAgICBkZWJ1ZygiRmxvdyBjb250ZW50Iik7Ci0gICAgZmxvd0NvbnRlbnQo
ImFydGljbGUiKTsKLX0KLQotd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBzdGFydFRl
c3QpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8t
bnVsbC1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY5NDBjMzZk
MTQyZTczZThhNzZlZDYwZjNlOWE4NzE2YTQ3MDAyZDcuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWV2ZW50LXRvLW51bGwtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEs
MTUgKzAsMCBAQAotVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBiZWluZyBkaXNwYXRj
aGVkIHdoZW4gdGhlIGNvbnRlbnQgaXMgcmVtb3ZlZAotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCi0KLQotRmxvdyBjb250ZW50Ci1QQVNTIGV2ZW50LnRhcmdldC5uYW1lIGlzICJhcnRpY2xl
IgotUmVtb3ZpbmcgcmVnaW9uXzIgZnJvbSBmbG93Ci1SZW1vdmluZyByZWdpb25fMSBmcm9tIGZs
b3cKLVJlbW92aW5nIGFydGljbGUgZnJvbSBmbG93Ci1QQVNTIHJlZ2lvbk92ZXJzZXREaXNwYXRj
aGVkRm9yTnVsbEZsb3cgaXMgZmFsc2UKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
LQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50LXRvLW51bGwuaHRtbApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMmYwMGY3MmM1ZTAxZTA5MjMzOWRkNWE2OTc4OGNiZDdlMWQyOTNl
Zi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXZlbnQtdG8tbnVsbC5odG1sCisr
KyAvZGV2L251bGwKQEAgLTEsOTMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxo
ZWFkPgotPG1ldGEgY2hhcnNldD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBl
ci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0jYXJ0aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93LWlu
dG86IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Ci19Ci0jcmVnaW9uXzEs
ICNyZWdpb25fMnsKLSAgICAtd2Via2l0LWZsb3ctZnJvbTogbm9fYXJ0aWNsZTsKLSAgICBvdmVy
ZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxp
Z246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQotLmJsb2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7
Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMiB7IGhlaWdodDoxMTBweDsgd2lkdGg6MjAwcHg7IG1h
cmdpbjogNXB4O30KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImFydGljbGUi
PgotICAgIDxkaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIw
MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgotICAgIDwvZGl2PgotPC9kaXY+
Ci0KLTxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLTxkaXYgaWQ9ImNvbnRhaW5lcjIiPgotICAg
IDxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4KLTwvZGl2PgotCi08c2NyaXB0PgotCi1kZXNjcmlw
dGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCBiZWluZyBkaXNwYXRjaGVkIHdo
ZW4gdGhlIGNvbnRlbnQgaXMgcmVtb3ZlZCIpOwotCi1pZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
LSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgIHRlc3RSdW5uZXIud2Fp
dFVudGlsRG9uZSgpOwotICAgIH0KLSAgICAKLSAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRy
dWU7Ci0gICAgZnVuY3Rpb24gZmxvd0NvbnRlbnQoZmxvd05hbWUpIHsKLSAgICAgICAgdmFyIHIg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVnaW9uXzEiKTsKLSAgICAgICAgci5zdHlsZS53
ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAgICAgICByID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInJlZ2lvbl8yIik7Ci0gICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93
TmFtZTsKLSAgICB9Ci0gICAgCi0gICAgdmFyIGNvdW50ID0gMDsKLSAgICB2YXIgcmVnaW9uT3Zl
cnNldERpc3BhdGNoZWRGb3JOdWxsRmxvdyA9IGZhbHNlOwotICAgIGZ1bmN0aW9uIHJlZ2lvbk92
ZXJzZXRDaGFuZ2VkKGV2ZW50KSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZl
bnQudGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOwotICAgICAgICBpZiAoKytjb3VudCA+IDEpIHsK
LSAgICAgICAgICAgZXZlbnQudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndlYmtpdHJlZ2lv
bm92ZXJzZXRjaGFuZ2UiLCByZWdpb25PdmVyc2V0Q2hhbmdlZCk7Ci0gICAgICAgICAgIHJlZ2lv
bk92ZXJzZXREaXNwYXRjaGVkRm9yTnVsbEZsb3cgPSB0cnVlOwotICAgICAgICAgICByZXR1cm47
Ci0gICAgICAgIH0KLSAgICAgICAgCi0gICAgICAgIHZhciBlbCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICBkZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzIgZnJv
bSBmbG93Iik7Ci0gICAgICAgIGVsLnN0eWxlLndlYmtpdEZsb3dGcm9tID0gIm5vbmUiOwotICAg
ICAgICBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwotICAgICAgICBk
ZWJ1ZygiUmVtb3ZpbmcgcmVnaW9uXzEgZnJvbSBmbG93Iik7Ci0gICAgICAgIGVsLnN0eWxlLndl
YmtpdEZsb3dGcm9tID0gIm5vbmUiOwotICAgICAgICBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJhcnRpY2xlIik7Ci0gICAgICAgIGRlYnVnKCJSZW1vdmluZyBhcnRpY2xlIGZyb20gZmxv
dyIpOwotICAgICAgICBlbC5zdHlsZS53ZWJraXRGbG93SW50byA9ICJub25lIjsKLQotICAgICAg
ICBzZXRUaW1lb3V0KGNoZWNrSWZFdmVudERpc3BhdGNoZWQsIDIwMCk7Ci0gICAgfQotCi0gICAg
ZnVuY3Rpb24gY2hlY2tJZkV2ZW50RGlzcGF0Y2hlZCgpIHsKLSAgICAgICAgc2hvdWxkQmVGYWxz
ZSgicmVnaW9uT3ZlcnNldERpc3BhdGNoZWRGb3JOdWxsRmxvdyIpOwotICAgICAgICBmaW5pc2hK
U1Rlc3QoKTsKLSAgICB9Ci0gICAgCi0gICAgZnVuY3Rpb24gc3RhcnRUZXN0KCkgewotICAgICAg
ICB2YXIgZmxvdyA9IGdldEZsb3dCeU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgZmxvdy5hZGRF
dmVudExpc3RlbmVyKCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgcmVnaW9uT3ZlcnNldENo
YW5nZWQpOwotICAgICAgICAKLSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAg
ICBmbG93Q29udGVudCgiYXJ0aWNsZSIpOwotICAgIH0KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0
ZW5lcigibG9hZCIsIHN0YXJ0VGVzdCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ldmVu
dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2ZW50
Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA0NDhlNDM4OTViNTljYjgzMzU4
ZGE5MzgxNjZlYjJmNjQzNTRjZDQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV2
ZW50Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2OCArMCwwIEBACi08aHRtbD4KLTxoZWFkPgot
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c3R5bGU+Ci0jYXJ0
aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgYm9yZGVyOiAycHgg
c29saWQgYmxhY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMnsKLSAgICAtd2Via2l0LWZsb3ct
ZnJvbTogbm9fYXJ0aWNsZTsKLSAgICBvdmVyZmxvdzpoaWRkZW47Ci0gICAgZGlzcGxheTppbmxp
bmUtYmxvY2s7Ci0gICAgdmVydGljYWwtYWxpZ246dG9wOwotICAgIG1hcmdpbjoxMHB4OwotfQot
LmJsb2NrIHsKLSAgIGRpc3BsYXk6YmxvY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMiB7IGhl
aWdodDoxMTBweDsgd2lkdGg6MjAwcHh9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2
IGlkPSJkZXNjcmlwdGlvbiIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KLTxkaXYgaWQ9ImFydGljbGUi
PgotICAgIDxkaXY+Ci0gICAgICAgIDxkaXYgaWQ9ImNvbnRlbnQiIHN0eWxlPSJoZWlnaHQ6IDIw
MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsiPjwvZGl2PgotICAgIDwvZGl2PgotPC9kaXY+
Ci0KLTxkaXYgaWQ9InJlZ2lvbl8xIj48L2Rpdj4KLTxkaXYgaWQ9InJlZ2lvbl8yIj48L2Rpdj4K
LQotPGRpdiBpZD0iY29uc29sZSIgY2xhc3M9ImJsb2NrIj48L2Rpdj4KLQotPHNjcmlwdD4KLSAg
ICBkZXNjcmlwdGlvbigiVGVzdHMgcmVnaW9uT3ZlcnNldENoYW5nZSBldmVudCIpCi0gICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwot
ICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKLSAgICB9Ci0gICAgd2luZG93Lmpz
VGVzdElzQXN5bmMgPSB0cnVlOwotICAgIGZ1bmN0aW9uIGZsb3dDb250ZW50KGZsb3dOYW1lKSB7
Ci0gICAgICAgIHZhciByID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8xIik7Ci0g
ICAgICAgIHIuc3R5bGUud2Via2l0Rmxvd0Zyb20gPSBmbG93TmFtZTsKLSAgICAgICAgciA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMiIpOwotICAgICAgICByLnN0eWxlLndlYmtp
dEZsb3dGcm9tID0gZmxvd05hbWU7Ci0gICAgfQotICAgIAotICAgIGZ1bmN0aW9uIGZsb3dUaHJl
YWRVcGRhdGVkKGV2ZW50KSB7Ci0gICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZXZlbnQu
dGFyZ2V0Lm5hbWUiLCAiYXJ0aWNsZSIpOwotICAgICAgICBldmVudC50YXJnZXQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigid2Via2l0cmVnaW9ub3ZlcnNldGNoYW5nZSIsIGZsb3dUaHJlYWRVcGRhdGVk
KTsKLSAgICAgICAgCi0gICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgIH0KLSAgICAKLSAgICBm
dW5jdGlvbiBzdGFydFRlc3QoKSB7ICAgIAotICAgICAgICB2YXIgZmxvd1RocmVhZCA9IGdldEZs
b3dCeU5hbWUoImFydGljbGUiKTsKLSAgICAgICAgZmxvd1RocmVhZC5hZGRFdmVudExpc3RlbmVy
KCJ3ZWJraXRyZWdpb25vdmVyc2V0Y2hhbmdlIiwgZmxvd1RocmVhZFVwZGF0ZWQpOwotICAgICAg
ICAKLSAgICAgICAgZGVidWcoIkZsb3cgY29udGVudCIpOwotICAgICAgICBmbG93Q29udGVudCgi
YXJ0aWNsZSIpOwotICAgIH0KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHN0
YXJ0VGVzdCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1leGlzdGluZy1mbG93LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1leGlz
dGluZy1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzcx
MzFlY2NhNTYzYTI4OWJlYmNiNWI1NTJiMWNmZGViODQyYWZkZS4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Vi
a2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApA
QCAtMSw3ICswLDAgQEAKLVRlc3QgZm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFt
ZWRGbG93IGludGVyZmFjZQotCi1HZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3Ig
YW4gZXhpc3RpbmcgZmxvdyBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LgotCi1PbiBz
dWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LgotCi1QQVNTCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZXhpc3RpbmctZmxvdy5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWV4aXN0aW5n
LWZsb3cuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjgwMTEzYzcwZTJjZjQw
YWU2MWMwYzcxMGJjMDY1MTAzOWFlNjc5MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctZXhpc3RpbmctZmxvdy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDMgKzAsMCBAQAotPCFk
b2N0eXBlIGh0bWw+Ci08aHRtbD4KLSAgICA8IS0tCi0gICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIElt
cGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlKS4KLSAgICBUZXN0IHRoYXQgZ2V0dGluZyBhIFdl
YktpdE5hbWVkRmxvdyBmb3IgYW4gZXhpc3RpbmcgZmxvdyByZXR1cm5zIGEgbm9uLW51bGwgb2Jq
ZWN0LgotICAgIE9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIGEgUEFTUyBiZWxvdy4KLSAgICAt
LT4KLSAgICA8aGVhZD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMi
Pjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAgICAucGFzcyB7Ci0gICAgICAg
ICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7Ci0gICAgICAgICAgICAgICAgY29sb3I6IGdyZWVu
OwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAuZmFpbCB7Ci0gICAgICAgICAgICAgICAg
Zm9udC13ZWlnaHQ6IGJvbGQ7Ci0gICAgICAgICAgICAgICAgY29sb3I6IHJlZDsKLSAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgLmZsb3cgewotICAgICAgICAgICAgICAgIC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93OwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVh
ZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2NjQyIj42NjY0MjogW0NTU1JlZ2lvbnNdSW1w
bGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2U8L2E+PC9wPgotICAgICAgICA8cD5HZXR0aW5nIGEg
V2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3IgYW4gZXhpc3RpbmcgZmxvdyBzaG91bGQgcmV0dXJu
IGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3Vs
ZCBzZWUgUEFTUyBiZWxvdy48L3A+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJm
bG93Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVzdWx0IiBjbGFzcz0iZmFpbCI+RkFJTDwv
ZGl2PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgICAgICAg
ICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotICAgICAgICAgICAgaWYg
KG5hbWVkRmxvdykgewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZXN1bHQiKS5pbm5lclRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInJlc3VsdCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lv
bi1pbmRleC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5h
bWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9uLWluZGV4LWV4cGVjdGVkLnR4dApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNDEwMWY2Njg2NGYxNzM1ZTg2ZThiMWJjOTQ3NzQ0MjRjMWYy
YjNkMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmlyc3QtZW1wdHktcmVnaW9u
LWluZGV4LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE2ICswLDAgQEAKLVRlc3Qg
Zm9yIDkwNjA4OiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93OjpmaXJzdEVtcHR5UmVn
aW9uSW5kZXggYXR0cmlidXRlLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFT
UyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IGlzIC0xCi1QQVNTIG5hbWVkRmxvdy5m
aXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgLTEKLVBBU1MgbmFtZWRGbG93LmZpcnN0RW1wdHlSZWdp
b25JbmRleCBpcyAxCi1QQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMgot
UEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IGlzIC0xCi1QQVNTIG5hbWVkRmxv
dy5maXJzdEVtcHR5UmVnaW9uSW5kZXggaXMgMAotUEFTUyBuYW1lZEZsb3cuZmlyc3RFbXB0eVJl
Z2lvbkluZGV4IGlzIC0xCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1Qg
Q09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1u
YW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZpcnN0LWVtcHR5LXJlZ2lvbi1pbmRleC5odG1s
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMjIxMmIxYTMxZDNiYmMzMmI4OWIwMGVm
NTc3NDFhNGU4OTUzZGE4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1maXJzdC1l
bXB0eS1yZWdpb24taW5kZXguaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg4ICswLDAgQEAKLTwh
ZG9jdHlwZSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgIGJv
ZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlIH0KLSAgICAuY29udGVudCB7IC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93IH0KLSAgICAucmVnaW9uIHsgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93fQot
ICAgICNyZWdpb24sICNyZWdpb24yLCAjcmVnaW9uMyB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1
MHB4OyB9Ci08L3N0eWxlPgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJhcnRpY2xlIiBjbGFz
cz0iY29udGVudCI+Ci08cD5Db250ZW50IGluc2lkZSBhcnRpY2xlPC9wPgotPC9kaXY+Ci08c2Ny
aXB0PgotICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciA5MDYwODogW0NTU1JlZ2lvbnNdSW1wbGVt
ZW50IE5hbWVkRmxvdzo6Zmlyc3RFbXB0eVJlZ2lvbkluZGV4IGF0dHJpYnV0ZS4iKTsKLQotICAg
IGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
Ci0KLSAgICAvLyBOYW1lZCBmbG93IGRvZXMgbm90IGhhdmUgYW55IHJlZ2lvbnMgeWV0Ci0gICAg
dmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKLQotICAgIC8vIEZpcnN0RW1w
dHlSZWdpb25JbmRleCBzaG91bGQgYmUgLTEgZm9yIGFuIGVtcHR5IG5hbWVkIGZsb3cKLSAgICBz
aG91bGRCZSgibmFtZWRGbG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICItMSIpOwotCi0gICAg
Ly8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhlIGNvbnRlbnQsIGZpcnN0RW1wdHlSZWdpb25JbmRl
eCBzaG91bGQgc3RpbGwgYmUgLTEuCi0gICAgdmFyIHJlZ2lvbiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOwotICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uKTsKLSAg
ICByZWdpb24uaWQgPSAicmVnaW9uIjsKLSAgICByZWdpb24uY2xhc3NOYW1lID0gInJlZ2lvbiI7
Ci0KLSAgICAvLyBGaXJzdEVtcHR5UmVnaW9ucyBzaG91bGQgYmUgLTEsIHNpbmNlIHRoZXJlIGFy
ZSBubyBlbXB0eSByZWdpb25zCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVn
aW9uSW5kZXgiLCAiLTEiKTsKLQotICAgIC8vIEFkZCBhbm90aGVyIHJlZ2lvbiwgZmlyc3RFbXB0
eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAxIHNpbmNlIGNvbnRlbnQgb25seSBmbG93cyB3aXRoaW4g
dGhlIGZpcnN0IHJlZ2lvbi4KLSAgICB2YXIgcmVnaW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpOwotICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMik7Ci0gICAg
cmVnaW9uMi5pZCA9ICJyZWdpb24yIjsKLSAgICByZWdpb24yLmNsYXNzTmFtZSA9ICJyZWdpb24i
OwotCi0gICAgLy8gRmlyc3RFbXB0eVJlZ2lvbkluZGV4IHNob3VsZCBiZSAxCi0gICAgc2hvdWxk
QmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiMSIpOwotCi0gICAgLy8gQWRk
IGNvbnRlbnQgdW50aWwgc29tZSBpcyBmbG93ZWQgaW5zaWRlIHNlY29uZCByZWdpb24KLSAgICB3
aGlsZSAocmVnaW9uMi53ZWJraXRSZWdpb25PdmVyc2V0ID09ICJlbXB0eSIpIHsKLSAgICAgICAg
dmFyIHAgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7Ci0gICAgICAgIHAuYXBwZW5kQ2hp
bGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkNvbnRlbnQgaW5zaWRlIGFydGljbGUiKSk7Ci0g
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocCk7
Ci0gICAgfQotICAgIC8vIEFkZCB0aGUgdGhpcmQgcmVnaW9uLCBmaXJzdEVtcHR5UmVnaW9uSW5k
ZXggc2hvdWxkIGJlIDIuCi0gICAgdmFyIHJlZ2lvbjMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKLSAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbjMpOwotICAgIHJl
Z2lvbjMuaWQgPSAicmVnaW9uMyI7Ci0gICAgcmVnaW9uMy5jbGFzc05hbWUgPSAicmVnaW9uIjsK
LQotICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUgMiBzaW5jZSB0aGUgY29u
dGVudCBmaXRzIGluIHRoZSBmaXJzdCB0d28gcmVnaW9ucy4KLSAgICBzaG91bGRCZSgibmFtZWRG
bG93LmZpcnN0RW1wdHlSZWdpb25JbmRleCIsICIyIik7Ci0KLSAgICAvLyBSZW1vdmUgdGhlIGZp
cnN0IHJlZ2lvbiBmcm9tIHRoZSBmbG93LCBmaXJzdEVtcHR5UmVnaW9uSW5kZXggc2hvdWxkIGJl
IC0xLgotICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAiIjsKLQotICAgIC8vIE92ZXJzZXQgc2hvdWxk
IGJlIHRydWUgc2luY2UgdGhlIGNvbnRlbnQgZG9lcyBub3QgZml0IHRoZSByZWdpb25zCi0gICAg
c2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiLTEiKTsKLQotICAg
IC8vIFJlbW92ZSB0aGUgY29udGVudCBmcm9tIHRoZSBmbG93LCBmaXJzdEVtcHR5UmVnaW9uSW5k
ZXggc2hvdWxkIGJlIDAuCi0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5j
bGFzc05hbWUgPSAiIjsKLQotICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUg
MCwgc2luY2UgdGhlcmUgaXMgbm8gbW9yZSBjb250ZW50LgotICAgIHNob3VsZEJlKCJuYW1lZEZs
b3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4IiwgIjAiKTsKLQotICAgIC8vIFJlbW92ZSBhbGwgdGhl
IHJlZ2lvbnMgZnJvbSB0aGUgZmxvdwotICAgIHJlZ2lvbjIuY2xhc3NOYW1lID0gcmVnaW9uMy5j
bGFzc05hbWUgPSAiIjsKLQotICAgIC8vIEZpcnN0RW1wdHlSZWdpb25JbmRleCBzaG91bGQgYmUg
LTEsIHNpbmNlIHRoZXJlIGFyZSBubyBtb3JlIHJlZ2lvbnMgaW4gdGhlIG5hbWVkIGZsb3cuCi0g
ICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9uSW5kZXgiLCAiLTEiKTsKLQot
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUuZGlzcGxheSA9ICJu
b25lIjsKLSAgICByZWdpb24uc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICByZWdpb24yLnN0
eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci0gICAgcmVnaW9uMy5zdHlsZS5kaXNwbGF5ID0gIm5vbmUi
OwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBlMGExNTI4YjVjYzgzNmZm
MmUyZTE2YzZhYWI0ODYzOTA1YjA0ZTMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93
LWZsb3ctYWRkZWQtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1U
ZXN0IGZvciA2NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UK
LQotR2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3QgZm9yIGEgZmxvdyB0aGF0IHdhcyBh
ZGRlZCBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LgotCi1PbiBzdWNjZXNzLCB5b3Ug
c2hvdWxkIHNlZSBQQVNTIGJlbG93LgotCi1QQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWZsb3ctYWRkZWQuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODFjZWZjNWNhZjVmOGVkY2I3MTQwMGE4OTkxMjMxY2I3
ODQ3N2I4MC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZmxvdy1hZGRlZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsNTYgKzAsMCBAQAotPCFkb2N0eXBlIGh0bWw+Ci08aHRtbD4K
LSAgICA8IS0tCi0gICAgVGVzdCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTY2NjQyIChbQ1NTUmVnaW9uc11bQ1NTT01dIEltcGxlbWVudCBOYW1lZEZsb3cgaW50
ZXJmYWNlKS4KLSAgICBUZXN0IHRoYXQgZ2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBmb3IgYSBm
bG93IHRoYXQgd2FzIGFkZGVkIHJldHVybnMgYSBub24tbnVsbCBvYmplY3QuCi0gICAgT24gc3Vj
Y2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAgIDxoZWFkPgot
ICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAg
ICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAgICBmb250LXdl
aWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIC5mYWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9s
ZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICAuZmxvdyB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Ci0g
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ub0Zsb3cgewotICAgICAgICAgICAgICAgIC13
ZWJraXQtZmxvdy1pbnRvOiBub25lOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgot
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gICAgICAgIDxwPlRlc3Qg
Zm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0
MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlPC9hPjwv
cD4KLSAgICAgICAgPHA+R2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3QgZm9yIGEgZmxv
dyB0aGF0IHdhcyBhZGRlZCBzaG91bGQgcmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KLSAg
ICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy48L3A+Ci0gICAg
ICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJub0Zsb3ciPjwvZGl2PgotICAgICAgICA8ZGl2
IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0gICAgICAgIDxzY3JpcHQ+Ci0g
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIC8vIEdldCB0aGUgbmFtZWQgZmxvdyBv
YmplY3QgYmVmb3JlIGFkZGluZyB0aGUgZmxvdyB0aHJlYWQuCi0gICAgICAgICAgICB2YXIgbmFt
ZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxv
dzI7Ci0KLSAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3QoKQotICAgICAgICAgICAgewotICAgICAg
ICAgICAgICAgIG5hbWVkRmxvdzIgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAg
ICAgICAgaWYgKCFuYW1lZEZsb3cgJiYgbmFtZWRGbG93MikgewotICAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuaW5uZXJUZXh0ID0gIlBBU1MiOwot
ICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuY2xh
c3NOYW1lID0gInBhc3MiOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLQotICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5jbGFzc05hbWUgPSAi
ZmxvdyI7Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtY29udGVu
dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctZ2V0LWNvbnRlbnQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBhNDkzNjQ2MDcyOWJkM2Y1YzcxYTFmM2JmOTllMzIzM2E1ZWNkYzBlLi4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtY29udGVudC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSwzNiArMCwwIEBACi1UZXN0IGZvciA5MDE2MzogW0NTU1JlZ2lvbnNdUmVuYW1lIE5h
bWVkRmxvdzo6Y29udGVudE5vZGVzIHRvIE5hbWVkRmxvdzo6Z2V0Q29udGVudCgpCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGdldEZsb3dCeU5hbWUoImZsb3ciKSBpcyBu
dWxsCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQzLmxlbmd0aCBpcyAxCi1QQVNTIG5hbWVkRmxvd0Nv
bnRlbnQzLml0ZW0oMCkuaWQgaXMgImFydGljbGUiCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ0Lmxl
bmd0aCBpcyAxCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ0Lml0ZW0oMCkuaWQgaXMgImFydGljbGUi
Ci1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ1Lmxlbmd0aCBpcyAyCi1QQVNTIG5hbWVkRmxvd0NvbnRl
bnQ1Lml0ZW0oMCkuaWQgaXMgImFydGljbGUyIgotUEFTUyBuYW1lZEZsb3dDb250ZW50NS5pdGVt
KDEpLmlkIGlzICJhcnRpY2xlIgotUEFTUyBuYW1lZEZsb3dDb250ZW50Ni5sZW5ndGggaXMgMgot
UEFTUyBuYW1lZEZsb3dDb250ZW50Ny5sZW5ndGggaXMgMgotUEFTUyBuYW1lZEZsb3dDb250ZW50
OC5sZW5ndGggaXMgMwotUEFTUyBuYW1lZEZsb3dDb250ZW50OS5sZW5ndGggaXMgMwotUEFTUyBu
YW1lZEZsb3dDb250ZW50OS5pdGVtKDApLmlkIGlzICJhcnRpY2xlMiIKLVBBU1MgbmFtZWRGbG93
Q29udGVudDkuaXRlbSgxKS5pZCBpcyAic3BhbjEiCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQ5Lml0
ZW0oMikuaWQgaXMgImFydGljbGUiCi1QQVNTIG5hbWVkRmxvd0NvbnRlbnQxMC5sZW5ndGggaXMg
MwotUEFTUyBuYW1lZEZsb3dDb250ZW50MTAuaXRlbSgwKS5pZCBpcyAiYXJ0aWNsZSIKLVBBU1Mg
bmFtZWRGbG93Q29udGVudDExLmxlbmd0aCBpcyA1Ci1QQVNTIG5hbWVkRmxvd0NvbnRlbnQxMi5s
ZW5ndGggaXMgMQotUEFTUyBuYW1lZEZsb3dDb250ZW50MTIuaXRlbSgwKS5pZCBpcyAiYXJ0aWNs
ZSIKLVBBU1MgbmFtZWRGbG93Q29udGVudDExLmxlbmd0aCBpcyAwCi1QQVNTIG5hbWVkRmxvd0Nv
bnRlbnQxMi5sZW5ndGggaXMgMQotUEFTUyBuYW1lZEZsb3dDb250ZW50MTIuaXRlbSgwKS5pZCBp
cyAiYXJ0aWNsZSIKLVBBU1MgZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKSBpcyBudWxsCi1QQVNTIG5h
bWVkRmxvd0NvbnRlbnQxMy5sZW5ndGggaXMgMAotUEFTUyBuYW1lZEZsb3dDb250ZW50MTQubGVu
Z3RoIGlzIDAKLVBBU1MgbmFtZWRGbG93Q29udGVudDE1Lmxlbmd0aCBpcyAxCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdldC1jb250ZW50Lmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LWNvbnRlbnQu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjM2ZDIxZjI0ZTVmYzVkZGM0ZmVi
NDI3NjMyNTA1NDRlMzk2ZjdmYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0
LWNvbnRlbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEzNiArMCwwIEBACi08IWRvY3R5cGUg
aHRtbD4KLTxodG1sPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9InJl
c291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotICAgICAgICA8c3R5bGU+Ci0gICAgICAgICAg
ICAjcmVnaW9uIHsgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7IHdpZHRoOiAyNTBweDsgaGVpZ2h0
OiAxNTBweDsgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keT4KLSAg
ICAgICAgPCEtLQotICAgICAgICAxLiBUaGUgY29udGVudCBub2RlcyBjb2xsZWN0aW9uIGZvciBh
IG5hbWVkIGZsb3cgJ2Zsb3cnIGNvbnRhaW5zIG9ubHkgdGhvc2UgZWxlbWVudHMgdGhhdCBoYXZl
Ci0gICAgICAgIHRoZSBzdHlsZSBwcm9wZXJ0eSAtd2Via2l0LWZsb3ctaW50byBzZXQgdG8gJ2Zs
b3cnLgotICAgICAgICAyLiBJZiBhbiBlbGVtZW50IGhhcyBhbiBhbmNlc3RvciB3aXRoIC13ZWJr
aXQtZmxvdy1pbnRvID0gJ2Zsb3cnIGJ1dCBkb2VzIG5vdCBoYXZlIGl0cyAnLXdlYmtpdC1mbG93
LWludG8nCi0gICAgICAgIHNldCB0byAnZmxvdycgd2lsbCBub3QgYmUgbGlzdGVkIGFtb25nIHRo
ZSBjb250ZW50IG5vZGVzIGZvciBuYW1lZCBmbG93ICdmbG93Jy4KLSAgICAgICAgMy4gRWxlbWVu
dHMgd2l0aCAnLXdlYmtpdC1mbG93LWludG8nIHNldCB0byAnZmxvdycgYW5kICdkaXNwbGF5Om5v
bmUnIHNob3VsZCBiZSBsaXN0ZWQgYW1vbmcgdGhlIGNvbnRlbnQgbm9kZXMKLSAgICAgICAgZm9y
IG5hbWVkIGZsb3cgb2JqZWN0ICdmbG93Jy4KLSAgICAgICAgNC4gVGhlIGNvbGxlY3Rpb24gb2Yg
bm9kZXMgaXMgcmV0dXJuZWQgaW4gZG9jdW1lbnQgb3JkZXIuCi0gICAgICAgIC0tPgotICAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgICAgICAg
ICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgIGRlc2Ny
aXB0aW9uKCJUZXN0IGZvciA5MDE2MzogW0NTU1JlZ2lvbnNdUmVuYW1lIE5hbWVkRmxvdzo6Y29u
dGVudE5vZGVzIHRvIE5hbWVkRmxvdzo6Z2V0Q29udGVudCgpIik7Ci0KLSAgICAgICAgICAgIC8v
IEFkZCBhbiBlbGVtZW50IHRoYXQgd291bGQgYmUgY29sbGVjdGVkIGJ5IHRoZSBuYW1lZCBmbG93
IGJ1dCBkbyBub3QgYWRkIGl0IHRvIHRoZSBET00sIHRoZSBjb250ZW50Tm9kZXMgc2hvdWxkIGJl
IGVtcHR5LgotICAgICAgICAgICAgdmFyIGFydGljbGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKLSAgICAgICAgICAgIGFydGljbGUuaWQgPSAiYXJ0aWNsZSI7Ci0gICAgICAgICAg
ICBhcnRpY2xlLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZsb3ciOwotCi0gICAgICAgICAgICBz
aG91bGRCZU51bGwoJ2dldEZsb3dCeU5hbWUoImZsb3ciKScpOwotCi0gICAgICAgICAgICAvLyBB
cHBlbmQgdGhlIGFib3ZlIGVsZW1lbnQgdG8gdGhlIERPTS4gSXQgd2lsbCBiZSBjb2xsZWN0ZWQg
YnkgdGhlIGZsb3csIHRoZXJlZm9yZSB0aGUgY29udGVudE5vZGVzIHNob3VsZCBoYXZlIDEgZWxl
bWVudC4KLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYXJ0aWNsZSk7Ci0g
ICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDMgPSBnZXRGbG93QnlOYW1lKCJmbG93Iiku
Z2V0Q29udGVudCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29u
dGVudDMubGVuZ3RoIiwgMSk7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5h
bWVkRmxvd0NvbnRlbnQzLml0ZW0oMCkuaWQiLCAiYXJ0aWNsZSIpOwotCi0gICAgICAgICAgICAv
LyBBcHBlbmQgYSBjaGlsZCBlbGVtZW50IHRvIHRoZSBhcnRpY2xlIGFib3ZlIGJ1dCBkbyBub3Qg
c2V0IGl0cyBzdHlsZSB0byBmbG93IGludG8gJ2Zsb3cnLgotICAgICAgICAgICAgLy8gVGhlIGNv
bnRlbnROb2RlcyBzaG91bGQgc3RpbGwgaGF2ZSAxIGVsZW1lbnQuCi0gICAgICAgICAgICB2YXIg
cE5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJwIik7Ci0gICAgICAgICAgICBwTm9kZS5p
ZCA9ICJwMSI7Ci0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIp
LmFwcGVuZENoaWxkKHBOb2RlKTsKLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3dDb250ZW50NCA9
IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7Ci0gICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50NC5sZW5ndGgiLCAxKTsKLSAgICAgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDQuaXRlbSgwKS5pZCIsICJhcnRp
Y2xlIik7Ci0KLSAgICAgICAgICAgIC8vIEFkZCBhbm90aGVyIGVsZW1lbnQgZGlyZWN0bHkgdG8g
dGhlIGZsb3cgYW5kIHNldCBpdHMgJ2Rpc3BsYXknIHByb3BlcnR5IHRvICdub25lJywgaXQgc2hv
dWxkIGJlIHBhcnQgb2YgdGhlIGZsb3cuCi0gICAgICAgICAgICB2YXIgYXJ0aWNsZTIgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAgICAgIGFydGljbGUyLmlkID0gImFy
dGljbGUyIjsKLSAgICAgICAgICAgIGFydGljbGUyLnN0eWxlLndlYmtpdEZsb3dJbnRvID0gImZs
b3ciOwotICAgICAgICAgICAgYXJ0aWNsZTIuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLSAgICAg
ICAgICAgIGRvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKGFydGljbGUyLCBhcnRpY2xlKTsKLQot
ICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQ1ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIp
LmdldENvbnRlbnQoKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0Nv
bnRlbnQ1Lmxlbmd0aCIsIDIpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJu
YW1lZEZsb3dDb250ZW50NS5pdGVtKDApLmlkIiwgImFydGljbGUyIik7Ci0gICAgICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQ1Lml0ZW0oMSkuaWQiLCAiYXJ0
aWNsZSIpOwotCi0gICAgICAgICAgICAvLyBBZGRpbmcgYSByZWdpb24gZWxlbWVudCB0byBmbG93
IGNvbnRlbnQgaW50byBzaG91bGQgbm90IGluZmx1ZW5jZSB0aGUgY29udGVudCBub2RlcyBjb2xs
ZWN0aW9uLgotICAgICAgICAgICAgdmFyIHJlZ2lvbk5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJkaXYiKTsKLSAgICAgICAgICAgIHJlZ2lvbk5vZGUuaWQgPSAicmVnaW9uIjsKLSAgICAg
ICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uTm9kZSk7Ci0gICAgICAgICAg
ICB2YXIgbmFtZWRGbG93Q29udGVudDYgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVu
dCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDYubGVu
Z3RoIiwgMik7Ci0KLSAgICAgICAgICAgIC8vIENoYW5nZSBkaXNwbGF5Om5vbmUgZm9yIHRoZSAn
YXJ0aWNsZTInIGVsZW1lbnQsIHRoZSBsaXN0IG9mIGNvbnRlbnROb2RlcyBzaG91bGQgc3RheSB0
aGUgc2FtZQotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIiku
c3R5bGUuZGlzcGxheSA9ICJibG9jayI7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVu
dDcgPSBnZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOwotICAgICAgICAgICAgc2hv
dWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDcubGVuZ3RoIiwgMik7Ci0KLSAgICAgICAg
ICAgIC8vIEFkZCBhIHAgYW5kIGEgc3BhbiB1bmRlciBwLiBNYWtlIHRoZSBzcGFuIGRpcmVjdGx5
IGNvbGxlY3RlZCBieSB0aGUgZmxvdy4gVGhlIGNvbnRlbnROb2RlcyBjb2xsZWN0aW9uIHNob3Vs
ZCBoYXZlIDMgZWxlbWVudHMuCi0gICAgICAgICAgICBwTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoInAiKTsKLSAgICAgICAgICAgIHBOb2RlLmlkID0gInAyIjsKLSAgICAgICAgICAgIHZh
ciBzcGFuTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKLSAgICAgICAgICAg
IHNwYW5Ob2RlLmlkID0gInNwYW4xIjsKLSAgICAgICAgICAgIHNwYW5Ob2RlLnN0eWxlLndlYmtp
dEZsb3dJbnRvID0gImZsb3ciOwotICAgICAgICAgICAgcE5vZGUuYXBwZW5kQ2hpbGQoc3Bhbk5v
ZGUpOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUyIikuYXBw
ZW5kQ2hpbGQocE5vZGUpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDggPSBn
ZXRGbG93QnlOYW1lKCJmbG93IikuZ2V0Q29udGVudCgpOwotICAgICAgICAgICAgc2hvdWxkRXZh
bHVhdGVUbygibmFtZWRGbG93Q29udGVudDgubGVuZ3RoIiwgMyk7Ci0KLSAgICAgICAgICAgIC8v
IENoYW5nZSBkaXNwbGF5IG9mIGFydGljbGUgbm9kZSB0byBub25lLCB0aGUgY29sbGVjdGlvbiBz
aG91bGQgc3RpbGwgaGF2ZSAzIGVsZW1lbnRzLgotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotICAgICAgICAgICAg
dmFyIG5hbWVkRmxvd0NvbnRlbnQ5ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQo
KTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQ5Lmxlbmd0
aCIsIDMpOwotICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJuYW1lZEZsb3dDb250
ZW50OS5pdGVtKDApLmlkIiwgImFydGljbGUyIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQ5Lml0ZW0oMSkuaWQiLCAic3BhbjEiKTsKLSAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDkuaXRlbSgyKS5p
ZCIsICJhcnRpY2xlIik7Ci0KLSAgICAgICAgICAgIC8vIFRha2UgJ2FydGljbGUnIG5vZGUgZnJv
bSBsYXN0IHBvc2l0aW9uIGFuZCBpbnNlcnQgaXQgYmVmb3JlICdhcnRpY2xlMicKLSAgICAgICAg
ICAgIGFydGljbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpOwotICAgICAg
ICAgICAgZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoZG9jdW1lbnQuYm9keS5yZW1vdmVDaGls
ZChhcnRpY2xlKSwgYXJ0aWNsZTIpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQx
MCA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7Ci0gICAgICAgICAgICBzaG91
bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50MTAubGVuZ3RoIiwgMyk7Ci0gICAgICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRlbnQxMC5pdGVtKDApLmlkIiwg
ImFydGljbGUiKTsKLQotICAgICAgICAgICAgLy8gQ2xvbmUgJ2FydGljbGUyJyBpbmNsdWRpbmcg
aXRzIGNoaWxkcmVuLgotICAgICAgICAgICAgdmFyIGFydGljbGUyQ2xvbmUgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiYXJ0aWNsZTIiKS5jbG9uZU5vZGUodHJ1ZSk7Ci0gICAgICAgICAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFydGljbGUyQ2xvbmUpOwotICAgICAgICAgICAgdmFy
IG5hbWVkRmxvd0NvbnRlbnQxMSA9IGdldEZsb3dCeU5hbWUoImZsb3ciKS5nZXRDb250ZW50KCk7
Ci0gICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJuYW1lZEZsb3dDb250ZW50MTEubGVuZ3Ro
IiwgNSk7Ci0gICAgICAgICAgICAvLyBSZW1vdmUgYXJ0aWNsZTIgbm9kZXMgZnJvbSBkb2N1bWVu
dCwgdGhleSBzaG91bGQgYmUgcmVtb3ZlZCBmcm9tIGZsb3cuCi0gICAgICAgICAgICBkb2N1bWVu
dC5ib2R5LnJlbW92ZUNoaWxkKGFydGljbGUyKTsKLSAgICAgICAgICAgIGRvY3VtZW50LmJvZHku
cmVtb3ZlQ2hpbGQoYXJ0aWNsZTJDbG9uZSk7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29u
dGVudDEyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKLSAgICAgICAgICAg
IHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMi5sZW5ndGgiLCAxKTsKLSAgICAg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygibmFtZWRGbG93Q29udGVudDEyLml0ZW0oMCku
aWQiLCAiYXJ0aWNsZSIpOwotCi0gICAgICAgICAgICAvLyBNb3ZlIHRoZSBjb250ZW50IG5vZGUg
J2FydGljbGUnIGZyb20gbmFtZWQgZmxvdyAnZmxvdycgdG8gbmFtZWQgZmxvdyAnZmxvdzInCi0g
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLndlYmtp
dEZsb3dJbnRvID0gImZsb3cyIjsKLSAgICAgICAgICAgIHZhciBmbG93MiA9IGdldEZsb3dCeU5h
bWUoImZsb3cyIik7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDExID0gZ2V0Rmxv
d0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQoKTsKLSAgICAgICAgICAgIHZhciBuYW1lZEZsb3dD
b250ZW50MTIgPSBnZXRGbG93QnlOYW1lKCJmbG93MiIpLmdldENvbnRlbnQoKTsKLSAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMS5sZW5ndGgiLCAiMCIpOwot
ICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29udGVudDEyLmxlbmd0aCIs
ICIxIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIm5hbWVkRmxvd0NvbnRl
bnQxMi5pdGVtKDApLmlkIiwgImFydGljbGUiKTsKLQotICAgICAgICAgICAgLy8gUmVtb3ZlIHRo
ZSBjb250ZW50IG5vZGUgZnJvbSBkb20sIGNvbnRlbnQgbm9kZXMgZm9yIGJvdGggJ2Zsb3cnIGFu
ZCAnZmxvdzInIHNob3VsZCBiZSBlbXB0eQotICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1v
dmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpKTsKLSAgICAgICAgICAg
IHNob3VsZEJlTnVsbCgnZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKScpOwotCi0gICAgICAgICAgICB2
YXIgbmFtZWRGbG93Q29udGVudDEzID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpLmdldENvbnRlbnQo
KTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0NvbnRlbnQxMy5sZW5n
dGgiLCAiMCIpOwotCi0gICAgICAgICAgICB2YXIgbmFtZWRGbG93Q29udGVudDE0ID0gZmxvdzIu
Z2V0Q29udGVudCgpOwotICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygibmFtZWRGbG93Q29u
dGVudDE0Lmxlbmd0aCIsICIwIik7Ci0gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENo
aWxkKGFydGljbGUpOwotICAgICAgICAgICAgdmFyIG5hbWVkRmxvd0NvbnRlbnQxNSA9IGZsb3cy
LmdldENvbnRlbnQoKTsKLSAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oIm5hbWVkRmxvd0Nv
bnRlbnQxNS5sZW5ndGgiLCAiMSIpOwotCi0gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicmVnaW9uIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICA8L3Nj
cmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lv
bnMtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0Yzk4MGQwYjc1
ZjkyM2Y5Y2I3Zjc2ZDdhYWE4YWE4ZTBmODhhMWJjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1nZXQtcmVnaW9ucy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxNCAr
MCwwIEBACi1UZXN0cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9ucygpIGFuZCB0aGUgRE9NIG9y
ZGVyIG9mIHRoZSBsaXN0Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1GbG93IGNv
bnRlbnQKLVRlc3QgaWYgdGhlIHJlZ2lvbnMgYXJlIGluIERPTSBvcmRlcgotUEFTUyBnZXRSZWdp
b25BdCgwKS5pZCBpcyAicmVnaW9uXzEiCi1QQVNTIGdldFJlZ2lvbkF0KDEpLmlkIGlzICJyZWdp
b25fMiIKLUVtcHR5IGNvbnRlbnQKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dl
YmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25zLXBzZXVkby1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctZ2V0LXJlZ2lvbnMtcHNldWRvLWV4
cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGQ0YTk3ODIyMzNkOTVj
Nzk1N2QxMjU2YzFlYWQ5ODllNmExMTFmYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctZ2V0LXJlZ2lvbnMtcHNldWRvLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDEz
ICswLDAgQEAKLVRlc3RzIFdlYktpdE5hbWVkRmxvdy5nZXRSZWdpb25zKCkgYW5kIHBzZXVkby1l
bGVtZW50cyBhcyByZWdpb25zLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFT
UyByZWdpb25MaXN0Lmxlbmd0aCBpcyAxCi1QQVNTIG5hbWVkRmxvdy5maXJzdEVtcHR5UmVnaW9u
SW5kZXggaXMgMAotUEFTUyByZWdpb25MaXN0Lml0ZW0oMCkuaWQgaXMgInJlZ2lvbl8yIgotUEFT
UyByZWdpb25MaXN0Lml0ZW0oMCkud2Via2l0UmVnaW9uT3ZlcnNldCBpcyAiZW1wdHkiCi1QQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdldC1yZWdpb25z
LXBzZXVkby5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93
LWdldC1yZWdpb25zLXBzZXVkby5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3
Y2M1MjBmZTRhNmZiYmJmM2VhMjE4M2Q0MTliMjAyNDAyYzc0YTZiLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93
ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVnaW9ucy1wc2V1ZG8uaHRtbAorKysgL2Rldi9udWxsCkBA
IC0xLDc4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAgICNhcnRpY2xl
IHsKLSAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0gICAgICAgIGhlaWdodDog
NTBweDsKLSAgICAgICAgd2lkdGg6IDUwcHg7Ci0gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdy
ZWVuOwotICAgIH0KLQotICAgICNyZWdpb25fMSB7Ci0gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0
ZTsKLSAgICAgICAgdG9wOjIwMHB4OwotICAgICAgICBsZWZ0OiAxMDBweDsKLSAgICB9Ci0KLSAg
ICAjcmVnaW9uXzE6OmJlZm9yZSB7Ci0gICAgICAgIGRpc3BsYXk6IGJsb2NrOwotICAgICAgICB3
aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBib3JkZXI6IDFweCBz
b2xpZCBibGFjazsKLSAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7Ci0gICAgfQot
Ci0gICAgI3JlZ2lvbl8xOjphZnRlciB7Ci0gICAgICAgIGRpc3BsYXk6IGJsb2NrOwotICAgICAg
ICB3aWR0aDogNTBweDsKLSAgICAgICAgaGVpZ2h0OiA1MHB4OwotICAgICAgICBib3JkZXI6IDFw
eCBzb2xpZCBibGFjazsKLSAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGFydGljbGU7ICAgIAot
ICAgIH0KLQotICAgICNyZWdpb25fMiB7Ci0gICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBhcnRp
Y2xlOwotICAgICAgICBoZWlnaHQ6NTBweDsKLSAgICAgICAgd2lkdGg6NTBweDsKLSAgICAgICAg
cG9zaXRpb246IGFic29sdXRlOwotICAgICAgICB0b3A6IDIwMHB4OwotICAgICAgICBsZWZ0OiAy
MDBweDsKLSAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAgfQotCi08L3N0eWxl
PgotPC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8IS0tCi0gICAgICAgIFRlc3QgdGhhdCBn
ZXRSZWdpb25zKCkgZnVuY3Rpb24gZnJvbSBOYW1lZEZsb3cgaW50ZXJmYWNlIGRvZXMgbm90IGV4
cG9zZSB0aGUgcHNldWRvLWVsZW1lbnRzIGFzCi0gICAgICAgIHJlZ2lvbnMuCi0gICAgICAgIC0t
PgotICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj48L2Rpdj4KLQotICAgICAgICA8ZGl2IGlkPSJy
ZWdpb25fMSIgY2xhc3M9InJlZ2lvbl8xIj48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVnaW9u
XzIiIGNsYXNzPSJyZWdpb25fMiI+PC9kaXY+Ci0KLSAgICAgICAgPHNjcmlwdD4KLSAgICAgICAg
ICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9ucygpIGFuZCBw
c2V1ZG8tZWxlbWVudHMgYXMgcmVnaW9ucy4iKQotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQotICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAg
ICAgICAgICB2YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiYXJ0aWNsZSIpOwotCi0gICAg
ICAgICAgICAvLyBUaGUgcHNldWRvLWVsZW1lbnRzIGFyZSBub3QgeWV0IHJldHVybmVkIGJ5IGdl
dFJlZ2lvbnMoKQotICAgICAgICAgICAgdmFyIHJlZ2lvbkxpc3QgPSBuYW1lZEZsb3cuZ2V0UmVn
aW9ucygpOwotICAgICAgICAgICAgc2hvdWxkQmUoInJlZ2lvbkxpc3QubGVuZ3RoIiwgIjEiKTsK
LSAgICAgICAgICAgIHNob3VsZEJlKCJuYW1lZEZsb3cuZmlyc3RFbXB0eVJlZ2lvbkluZGV4Iiwg
IjAiKTsKLSAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVnaW9uTGlzdC5pdGVt
KDApLmlkIiwgInJlZ2lvbl8yIik7Ci0gICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InJlZ2lvbkxpc3QuaXRlbSgwKS53ZWJraXRSZWdpb25PdmVyc2V0IiwgImVtcHR5Iik7Ci0KLSAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUudmlzaWJp
bGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJl
Z2lvbl8xIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlZ2lvbl8yIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4i
OwotICAgICAgICA8L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1nZXQtcmVn
aW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWdl
dC1yZWdpb25zLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGEwYzA5YTk3ZjBk
ZGQ1MmE2NWZmNjMyMTc3MDg0ODY1MGIwN2I2MmEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LWdldC1yZWdpb25zLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2NyArMCwwIEBACi08
aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Ci08c3R5bGU+Ci0jYXJ0aWNsZSB7Ci0gICAgLXdlYmtpdC1mbG93LWludG86IGFydGljbGU7Ci0g
ICAgYm9yZGVyOiAycHggc29saWQgYmxhY2s7Ci19Ci0jcmVnaW9uXzEsICNyZWdpb25fMnsKLSAg
ICBvdmVyZmxvdzp2aXNpYmxlOwotICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwotICAgIHZlcnRp
Y2FsLWFsaWduOnRvcDsKLSAgICBtYXJnaW46MTBweDsKLX0KLSNyZWdpb25fMSB7IGhlaWdodDo1
MDBweDsgd2lkdGg6MjAwcHg7IH0KLSNyZWdpb25fMiB7IGhlaWdodDo1MHB4OyB3aWR0aDoyMDBw
eDsgfQotPC9zdHlsZT4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iYXJ0aWNsZSI+Ci0gICAg
PGRpdj4KLSAgICAgICAgPGRpdiBpZD0iY29udGVudCIgc3R5bGU9ImhlaWdodDogMzAwcHg7IGJh
Y2tncm91bmQtY29sb3I6IGdyZWVuOyI+PC9kaXY+Ci0gICAgPC9kaXY+Ci08L2Rpdj4KLQotPGRp
diBpZD0icmVnaW9uXzEiPjwvZGl2PgotPGRpdiBpZD0icmVnaW9uXzIiPjwvZGl2PgotCi08c2Ny
aXB0PgotICAgIGRlc2NyaXB0aW9uKCJUZXN0cyBXZWJLaXROYW1lZEZsb3cuZ2V0UmVnaW9ucygp
IGFuZCB0aGUgRE9NIG9yZGVyIG9mIHRoZSBsaXN0IikKLSAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgfQotCi0gICAgZnVu
Y3Rpb24gZ2V0UmVnaW9uQXQoaW5kZXgpIHsKLSAgICAgICAgdmFyIGZsb3cgPSBnZXRGbG93QnlO
YW1lKCJhcnRpY2xlIik7Ci0gICAgICAgIHZhciByZWdpb25zID0gZmxvdy5nZXRSZWdpb25zKCk7
Ci0gICAgICAgIGlmIChyZWdpb25zLmxlbmd0aCA8PSBpbmRleCkKLSAgICAgICAgICAgIHJldHVy
biBudWxsOwotCi0gICAgICAgIHJldHVybiByZWdpb25zW2luZGV4XTsKLSAgICB9Ci0KLSAgICBm
dW5jdGlvbiBmbG93Q29udGVudChmbG93TmFtZSkgewotICAgICAgICB2YXIgciA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJyZWdpb25fMSIpOwotICAgICAgICByLnN0eWxlLndlYmtpdEZsb3dG
cm9tID0gZmxvd05hbWU7Ci0gICAgICAgIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVn
aW9uXzIiKTsKLSAgICAgICAgci5zdHlsZS53ZWJraXRGbG93RnJvbSA9IGZsb3dOYW1lOwotICAg
IH0KLQotICAgIGZ1bmN0aW9uIHRlc3QoKSB7Ci0gICAgICAgIGRlYnVnKCJGbG93IGNvbnRlbnQi
KTsKLSAgICAgICAgZmxvd0NvbnRlbnQoImFydGljbGUiKTsKLQotICAgICAgICBkZWJ1ZygiVGVz
dCBpZiB0aGUgcmVnaW9ucyBhcmUgaW4gRE9NIG9yZGVyIik7Ci0gICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZ2V0UmVnaW9uQXQoMCkuaWQiLCAicmVnaW9uXzEiKTsKLSAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJnZXRSZWdpb25BdCgxKS5pZCIsICJyZWdpb25fMiIpOwotCi0g
ICAgICAgIGRlYnVnKCJFbXB0eSBjb250ZW50Iik7Ci0gICAgICAgIGZsb3dDb250ZW50KG51bGwp
OwotICAgIH0KLSAgICB0ZXN0KCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlk
LW5hbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LWludmFsaWQtbmFtZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGU4NjZmMWQ4Y2YwMmIwYTE0MDA2YzMwNzNhMDEyZWI4MGUyZGY4NzMuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LWludmFsaWQtbmFtZS1leHBlY3RlZC50eHQKKysrIC9k
ZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi1UZXN0IGZvciA3OTY4NTogW0NTU1JlZ2lvbnNdW0NT
U09NXVByZXZlbnQgY3JlYXRpb24gb2YgTmFtZWRGbG93IG9iamVjdCBmb3IgaW52YWxpZCBmbG93
IG5hbWUKLQotT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBzZXJpZXMgb2YgUEFTUyBiZWxv
dy4KLQotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFTUwotUEFT
UwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93
LWludmFsaWQtbmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LWludmFsaWQtbmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
ZThmODc4NGExYjdhMGFjYzRjMDZiOWZhZmRjYzJjNWE0NTgwYjc4Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93
ZWJraXQtbmFtZWQtZmxvdy1pbnZhbGlkLW5hbWUuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMx
ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL3JlZ2lvbi1zdHlsZS5jc3MiPgot
ICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAg
PC9oZWFkPgotICAgIDxib2R5PgotICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzk2ODUiPjc5Njg1OiBbQ1NTUmVnaW9u
c11bQ1NTT01dUHJldmVudCBjcmVhdGlvbiBvZiBOYW1lZEZsb3cgb2JqZWN0IGZvciBpbnZhbGlk
IGZsb3cgbmFtZTwvYT48L3A+Ci0gICAgICAgIDxwPk9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2Vl
IGEgc2VyaWVzIG9mIFBBU1MgYmVsb3cuPC9wPgotICAgICAgICA8ZGl2IGlkPSJjb25zb2xlIj48
L2Rpdj4KLQotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQotICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAg
ICAgICAgICAgIC8vIFRyeSBzb21lIGludmFsaWQgbmFtZXMuIGF1dG8vZGVmYXVsdC9pbmhlcml0
L2luaXRpYWwvbm9uZSB2YWx1ZXMgYXJlIG5vdCBhbGxvd2VkCi0gICAgICAgICAgICAvLyBFbXB0
eSBzdHJpbmcgYW5kIC0xMnB4IGFyZSBub3QgaWRlbnRpZmllcnMsIHNvIHRoZXkgY2Fubm90IHJl
cHJlc2VudCB2YWxpZCBmbG93IG5hbWVzLgotICAgICAgICAgICAgLy8gVmFsaWQgZmxvdyBuYW1l
cyBmb2xsb3dlZCBieSBhbm90aGVyIGNzcyBwcm9wZXJ0eSBkbyBub3QgZm9ybSBhIHZhbGlkIGZs
b3cgbmFtZS4KLSAgICAgICAgICAgIHZhciBhcnJGbG93SW52YWxpZE5hbWVzID0gWyJhdXRvIiwg
ImRlZmF1bHQiLCAiaW5oZXJpdCIsICJpbml0aWFsIiwgIm5vbmUiLCAiIiwgIi0xMnB4IiwgImZs
b3c7IGNvbG9yOiByZWQ7Il07Ci0gICAgICAgICAgICB2YXIgYXJyTGVuID0gYXJyRmxvd0ludmFs
aWROYW1lcy5sZW5ndGg7Ci0gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyckxlbjsg
KytpKSB7Ci0gICAgICAgICAgICAgICAgdmFyIG51bGxOYW1lZEZsb3cgPSBnZXRGbG93QnlOYW1l
KGFyckZsb3dJbnZhbGlkTmFtZXNbaV0pOwotICAgICAgICAgICAgICAgIGFzc2VydChudWxsTmFt
ZWRGbG93ID09IG51bGwsICJOYW1lZCBmbG93IGZvciAiICsgYXJyRmxvd0ludmFsaWROYW1lc1tp
XSArICIgc2hvdWxkIGJlIG51bGwiKTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLy8g
SXQgc2hvdWxkIG5vdCBiZSBwb3NzaWJsZSB0byBnZXQgdGhlIE5hbWVkRmxvdyBvYmplY3QgZm9y
IGEgbWlzc2luZyBmbG93LgotICAgICAgICAgICAgdmFyIG5hbWVkRmxvdyA9IGdldEZsb3dCeU5h
bWUoImZsb3ciKTsKLSAgICAgICAgICAgIGFzc2VydChuYW1lZEZsb3cgPT0gbnVsbCwgIk5hbWVk
IGZsb3cgZm9yIGZsb3cgc2hvdWxkIGJlIG51bGwiKTsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAg
PC9ib2R5PgotPC9odG1sPgotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMv
d2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZpZWQtZmxvdy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIxZTVmZTRhMzE4MzViYWViMjJkMTI2
NDg2NzMyMWU5ZjE5OGY1NzEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW1vZGlm
aWVkLWZsb3ctZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsOSArMCwwIEBACi1UZXN0
IGZvciA2NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UKLQot
R2V0dGluZyB0aGUgd2Via2l0IGZsb3cgbmFtZSBmb3IgdGhlIHByZXZpb3VzIGZsb3cgc2hvdWxk
IHJldHVybiBhIG5vbi1udWxsIG9iamVjdC4KLQotR2V0dGluZyB0aGUgd2Via2l0IGZsb3cgbmFt
ZSBmb3IgdGhlIG5ldyBmbG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmplY3QuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCi0KLVBBU1MKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1tb2RpZmllZC1mbG93
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbW9kaWZp
ZWQtZmxvdy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZjNmYmQ2YWU3NGFl
Zjk5ZDNlMGM1YzU4YWM1ZjcxNGI5YmM4NDk5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQt
Zmxvdy1tb2RpZmllZC1mbG93Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw2MCArMCwwIEBACi08
IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDwhLS0KLSAgICBUZXN0IGZvciBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIgKFtDU1NSZWdpb25zXVtDU1NPTV0g
SW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgotICAgIE1vZGlmeSB0aGUgZmxvdyBuYW1l
IGZvciBhbiBleGlzdGluZyBmbG93IHRocmVhZC4gCi0gICAgR2V0dGluZyB0aGUgd2Via2l0IGZs
b3cgbmFtZSBmb3IgdGhlIHByZXZpb3VzIGZsb3cgcmV0dXJucyBhIHZhbGlkIG9iamVjdC4KLSAg
ICBHZXR0aW5nIHRoZSB3ZWJraXQgZmxvdyBuYW1lIGZvciB0aGUgbmV3IGZsb3cgcmV0dXJucyBh
IHZhbGlkIG9iamVjdC4KLSAgICBPbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBhIFBBU1MgYmVs
b3cuCi0gICAgLS0+Ci0gICAgPGhlYWQ+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
aGVscGVyLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHN0eWxlPgotICAgICAgICAgICAgLnBhc3Mg
ewotICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwotICAgICAgICAgICAgICAgIGNv
bG9yOiBncmVlbjsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmZhaWwgewotICAgICAg
ICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwotICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7
Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5mbG93IHsKLSAgICAgICAgICAgICAgICAt
d2Via2l0LWZsb3ctaW50bzogZmxvdzsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgLmZs
b3cyIHsKLSAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzI7Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIC5ub0Zsb3cgewotICAgICAgICAgICAgICAgIC13ZWJraXQt
Zmxvdy1pbnRvOiBub25lOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwv
aGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gICAgICAgIDxwPlRlc3QgZm9yIDxh
IGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiI+NjY2
NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlPC9hPjwvcD4KLSAg
ICAgICAgPHA+R2V0dGluZyB0aGUgd2Via2l0IGZsb3cgbmFtZSBmb3IgdGhlIHByZXZpb3VzIGZs
b3cgc2hvdWxkIHJldHVybiBhIG5vbi1udWxsIG9iamVjdC48L3A+Ci0gICAgICAgIDxwPkdldHRp
bmcgdGhlIHdlYmtpdCBmbG93IG5hbWUgZm9yIHRoZSBuZXcgZmxvdyBzaG91bGQgcmV0dXJuIGEg
bm9uLW51bGwgb2JqZWN0LjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcywgeW91IHNob3VsZCBz
ZWUgUEFTUyBiZWxvdy48L3A+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiIGNsYXNzPSJmbG93
Ij48L2Rpdj4KLSAgICAgICAgPGRpdiBpZD0icmVzdWx0IiBjbGFzcz0iZmFpbCI+RkFJTDwvZGl2
PgotICAgICAgICA8c2NyaXB0PgotICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotCi0gICAgICAgICAgICBm
dW5jdGlvbiB0ZXN0KCkKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICB2YXIgbmFtZWRG
bG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotICAgICAgICAgICAgICAgIHZhciBuYW1lZEZs
b3cyID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdzIiKTsKLSAgICAgICAgICAgICAgICBpZiAoIW5hbWVk
RmxvdyAmJiBuYW1lZEZsb3cyKSB7Ci0gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lclRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5jbGFzc05hbWUgPSAicGFzcyI7
Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICJmbG93MiI7Ci0gICAgICAg
IDwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1uYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1uYW1lLWV4cGVjdGVkLnR4dApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDhlZjY1Njk1Nzk4ZTZmMTEwYzRiNzc0OGM4
YzdkMWY2ZWQ2NTcyMC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbmFtZS1leHBl
Y3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1UaGlzIHRlc3RzIHRoZSBp
bXBsZW1lbnRhdGlvbiBvZiB0aGUgJ25hbWUnIGF0dHJpYnV0ZSBvbiB0aGUgTmFtZWRGbG93IG9i
amVjdCBhdHRhY2hlZCB0byBhIGZsb3cgdGhyZWFkLiBGb3IgbW9yZSBkZXRhaWxzIHNlZSBodHRw
Oi8vd3d3LnczLm9yZy9UUi8yMDEyL1dELWNzczMtcmVnaW9ucy0yMDEyMDUwMy8jZG9tLW5hbWVk
LWZsb3cKLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgbmFtZWRGbG93Lm5h
bWUgaXMgJ2Zsb3ctbmFtZScKLVBBU1MgbmFtZWRGbG93Lm5hbWUgaXMgJ2Zsb3ctbmFtZScKLVBB
U1MgbmFtZWRGbG93Lm5hbWUgaXMgJ2Zsb3ctbmFtZScKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9y
ZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5hbWUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNWJiNTdlYTgzYWZlYTgyOWNlNzkxOTExOGRlOGNhNWFlOGRiMTY0NC4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0
L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctbmFtZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEs
NTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNl
dD0idXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci08
c3R5bGU+Ci0gICAgLmZsb3cgeyAtd2Via2l0LWZsb3ctaW50bzogZmxvdy1uYW1lOyB9Ci0gICAg
LnJlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93LW5hbWU7IH0KLSAgICAjcmVnaW9uIHsg
d2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4K
LSAgICA8cCBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPlRoZSBjb250ZW50IGZsb3c8L3A+Ci08
c2NyaXB0PgotCi1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGUgaW1wbGVtZW50YXRpb24gb2Yg
dGhlICduYW1lJyBhdHRyaWJ1dGUgb24gdGhlIE5hbWVkRmxvdyBvYmplY3QgYXR0YWNoZWQgdG8g
YSBmbG93IHRocmVhZC4gXAotICAgICAgICAgICAgRm9yIG1vcmUgZGV0YWlscyBzZWUgaHR0cDov
L3d3dy53My5vcmcvVFIvMjAxMi9XRC1jc3MzLXJlZ2lvbnMtMjAxMjA1MDMvI2RvbS1uYW1lZC1m
bG93Iik7Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKLQotLy8gRmxvdyBhcnRpY2xlIGRvZXMgbm90IGhhdmUgYW55IHJlZ2lvbnMgeWV0Ci12
YXIgbmFtZWRGbG93ID0gZ2V0Rmxvd0J5TmFtZSgiZmxvdy1uYW1lIik7Ci0KLS8vIFRoZSBuYW1l
IHNob3VsZCBiZSAnZmxvdy1uYW1lJyB3aGVuIHRoZXJlIGFyZSBubyByZWdpb25zIHRvIGZsb3cg
aW50bwotc2hvdWxkQmUoIm5hbWVkRmxvdy5uYW1lIiwgIidmbG93LW5hbWUnIik7Ci0KLS8vIEFk
ZCBhIHJlZ2lvbiB0byB0YWtlIHRoZSBjb250ZW50LCB0aGUgbmFtZSBzaG91bGQgYmUgdGhlIHNh
bWUKLXZhciByZWdpb24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLWRvY3VtZW50
LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uKTsKLXJlZ2lvbi5pZCA9ICJyZWdpb24iOwotcmVnaW9u
LmNsYXNzTmFtZSA9ICJyZWdpb24iOwotCi0vLyBUaGUgbmFtZSBzaG91bGQgYmUgJ2Zsb3ctbmFt
ZScgd2hlbiB0aGVyZSBhcmUgcmVnaW9ucyB0byBmbG93IGludG8KLXNob3VsZEJlKCJuYW1lZEZs
b3cubmFtZSIsICInZmxvdy1uYW1lJyIpOwotCi12YXIgYXJ0aWNsZSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJhcnRpY2xlIik7Ci0KLS8vIFJlbW92ZSB0aGUgZmxvdyBhbmQgdGhlIHJlZ2lv
biBlbGVtZW50LCBtb3ZlIHRoZSBOYW1lZEZsb3cgb2JqZWN0IGluIHRoZSBOVUxMIHN0YXRlCi1y
ZWdpb24uY2xhc3NOYW1lID0gIiI7Ci1hcnRpY2xlLmNsYXNzTmFtZSA9ICIiOwotcmVnaW9uLnN0
eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci1hcnRpY2xlLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci0K
LS8vIFRoZSBuYW1lIHNob3VsZCBiZSAnZmxvdy1uYW1lJyB3aGVuIHRoZSBuYW1lZCBmbG93IGlz
IGluIHRoZSBOVUxMIHN0YXRlCi1zaG91bGRCZSgibmFtZWRGbG93Lm5hbWUiLCAiJ2Zsb3ctbmFt
ZSciKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ub24t
ZXhpc3RpbmctZmxvdy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IGVhMzIxZjc0ZjMwZjI5YTIxZTAzYjhhMTU5OGQ1NmZlN2ZhZjhjYTMuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93LWV4cGVjdGVkLnR4dAorKysgL2Rl
di9udWxsCkBAIC0xLDcgKzAsMCBAQAotVGVzdCBmb3IgNjY2NDI6IFtDU1NSZWdpb25zXUltcGxl
bWVudCBOYW1lZEZsb3cgaW50ZXJmYWNlCi0KLUdldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgb2Jq
ZWN0IGZvciBhIG5vbi1leGlzdGFudCBmbG93IHNob3VsZCByZXR1cm4gYSBub24tbnVsbCBvYmpl
Y3QuCi0KLU9uIHN1Y2Nlc3MsIHlvdSBzaG91bGQgc2VlIFBBU1MgYmVsb3cuCi0KLVBBU1MKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1ub24t
ZXhpc3RpbmctZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LW5vbi1leGlzdGluZy1mbG93Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGYxMDQ4MGU4NDAzYTljNDY5NjY3MzNlNmViMzQ5YmQyNGNjNjNhNmUuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LW5vbi1leGlzdGluZy1mbG93Lmh0bWwKKysrIC9kZXYvbnVs
bApAQCAtMSw0MCArMCwwIEBACi08IWRvY3R5cGUgaHRtbD4KLTxodG1sPgotICAgIDwhLS0KLSAg
ICBUZXN0IGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIg
KFtDU1NSZWdpb25zXVtDU1NPTV0gSW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UpLgotICAg
IFRlc3QgdGhhdCBnZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IGZvciBhIG5vbi1leGlzdGFudCBm
bG93IHJldHVybnMgYSBub24tbnVsbCBvYmplY3QuCi0gICAgT24gc3VjY2VzcywgeW91IHNob3Vs
ZCBzZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAgIDxoZWFkPgotICAgICAgICA8c2NyaXB0
IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAg
ICAgICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKLSAg
ICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAg
IC5mYWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAg
ICAgICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0eWxlPgotICAgIDwv
aGVhZD4KLSAgICA8Ym9keT4KLSAgICAgICAgPHA+VGVzdCBmb3IgPGEgaHJlZj0iaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY2NjQyIj42NjY0MjogW0NTU1JlZ2lvbnNd
SW1wbGVtZW50IE5hbWVkRmxvdyBpbnRlcmZhY2U8L2E+PC9wPgotICAgICAgICA8cD5HZXR0aW5n
IGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3IgYSBub24tZXhpc3RhbnQgZmxvdyBzaG91bGQg
cmV0dXJuIGEgbm9uLW51bGwgb2JqZWN0LjwvcD4KLSAgICAgICAgPHA+T24gc3VjY2VzcywgeW91
IHNob3VsZCBzZWUgUEFTUyBiZWxvdy48L3A+Ci0gICAgICAgIDxkaXYgaWQ9ImFydGljbGUiPjwv
ZGl2PgotICAgICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0g
ICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAg
ICAgICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIHZhciBu
YW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICBpZiAoIW5hbWVk
RmxvdykgewotICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQi
KS5pbm5lclRleHQgPSAiUEFTUyI7Ci0gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInJlc3VsdCIpLmNsYXNzTmFtZSA9ICJwYXNzIjsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuc3R5bGUuZGlzcGxheSA9
ICJub25lIjsKLSAgICAgICAgPC9zY3JpcHQ+Ci0gICAgPC9ib2R5PgotPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LW92ZXJzZXQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93
LW92ZXJzZXQtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNWVh
NTcwZTRlY2JmNWE2NmMzMmU2Nzk1MTA2MjdjNDc5ZjJmZmY4Li4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJr
aXQtbmFtZWQtZmxvdy1vdmVyc2V0LWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE4
ICswLDAgQEAKLVRlc3QgZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NzQ5MSBbQ1NTIFJlZ2lvbnNdUmVuYW1lIE5hbWVkRmxvdzo6b3ZlcmZsb3cgdG8gTmFtZWRG
bG93OjpvdmVyc2V0LiBGb3IgbW9yZSBkZXRhaWxzIHNlZSBodHRwOi8vd3d3LnczLm9yZy9UUi8y
MDEyL1dELWNzczMtcmVnaW9ucy0yMDEyMDUwMy8KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgotCi0KLVBBU1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMgdHJ1ZQotUEFTUyBuYW1lZEZsb3cub3Zl
cnNldCBpcyBmYWxzZQotUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyB0cnVlCi1QQVNTIG5hbWVk
Rmxvdy5vdmVyc2V0IGlzIGZhbHNlCi1QQVNTIG5hbWVkRmxvdy5vdmVyc2V0IGlzIHRydWUKLVBB
U1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMgZmFsc2UKLVBBU1MgbmFtZWRGbG93Lm92ZXJzZXQgaXMg
dHJ1ZQotUEFTUyBuYW1lZEZsb3cub3ZlcnNldCBpcyBmYWxzZQotUEFTUyBuYW1lZEZsb3cub3Zl
cnNldCBpcyB0cnVlCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09N
UExFVEUKLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LW92ZXJzZXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFt
ZWQtZmxvdy1vdmVyc2V0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUwOTdh
NmIwZjk2NzYxOGQ0MWY1NTE3Nzc2YWU0YTk4NmVhODBjZGEuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtp
dC1uYW1lZC1mbG93LW92ZXJzZXQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAgQEAK
LTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4K
LTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9InJlc291cmNlcy9oZWxwZXIuanMiPjwvc2NyaXB0PgotPHN0eWxlPgotICAg
IGJvZHkgeyBmb250LWZhbWlseTogbW9ub3NwYWNlOyB9Ci0gICAgLmZsb3cgeyAtd2Via2l0LWZs
b3ctaW50bzogZmxvdyB9Ci0gICAgLnJlZ2lvbiB7IC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OyB9
Ci0gICAgI3JlZ2lvbiB7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OiA1MHB4OyB9Ci0gICAgI3JlZ2lv
bjIgeyB3aWR0aDogMjUwcHg7IGhlaWdodDogNTBweDsgfQotICAgICNyZWdpb24zIHsgd2lkdGg6
IDI1MHB4OyBoZWlnaHQ6IDUwcHg7IH0KLTwvc3R5bGU+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYg
aWQ9ImFydGljbGUiIGNsYXNzPSJmbG93Ij4KLSAgICA8cD5Db250ZW50IGluc2lkZSBhcnRpY2xl
PC9wPgotPC9kaXY+Ci08c2NyaXB0PgotICAgIGRlc2NyaXB0aW9uKCJUZXN0IGZvciBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODc0OTEgW0NTUyBSZWdpb25zXVJlbmFt
ZSBOYW1lZEZsb3c6Om92ZXJmbG93IHRvIE5hbWVkRmxvdzo6b3ZlcnNldC4gXAotICAgICAgICAg
ICAgICAgIEZvciBtb3JlIGRldGFpbHMgc2VlIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTIvV0Qt
Y3NzMy1yZWdpb25zLTIwMTIwNTAzLyIpOwotCi0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQot
ICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAvLyBGbG93IGFy
dGljbGUgZG9lcyBub3QgaGF2ZSBhbnkgcmVnaW9ucyB5ZXQKLSAgICB2YXIgbmFtZWRGbG93ID0g
Z2V0Rmxvd0J5TmFtZSgiZmxvdyIpOwotCi0gICAgLy8gT3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ug
Zm9yIGEgZmxvdyB3aXRob3V0IHJlZ2lvbnMKLSAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJz
ZXQiLCAidHJ1ZSIpOwotCi0gICAgLy8gQWRkIGEgcmVnaW9uIHRvIHRha2UgdGhlIGNvbnRlbnQs
IG92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlIHNpbmNlIHRoZSBjb250ZW50IGZpcnN0IHRoZSByZWdp
b25zLgotICAgIHZhciByZWdpb24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAg
ICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHJlZ2lvbik7Ci0gICAgcmVnaW9uLmlkID0gInJl
Z2lvbiI7Ci0gICAgcmVnaW9uLmNsYXNzTmFtZSA9ICJyZWdpb24iOwotCi0gICAgLy8gT3ZlcnNl
dCBzaG91bGQgYmUgZmFsc2Ugc2luY2UgdGhlIGNvbnRlbnQgZml0cyB0aGUgcmVnaW9ucwotICAg
IHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJmYWxzZSIpOwotCi0gICAgLy8gQWRkIG1v
cmUgY29udGVudCB0byB0aGUgZmxvdywgb3ZlcnNldCBzaG91bGQgYmUgdHJ1ZS4KLSAgICB2YXIg
cCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInAiKTsKLSAgICBwLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKCJDb250ZW50IGluc2lkZSBhcnRpY2xlIikpOwotICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJhcnRpY2xlIikuYXBwZW5kQ2hpbGQocCk7Ci0KLSAgICAvLyBP
dmVyc2V0IHNob3VsZCBiZSB0cnVlIHNpbmNlIHRoZSBjb250ZW50IGRvZXMgbm90IGZpdCB0aGUg
cmVnaW9ucwotICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJ0cnVlIik7Ci0KLSAg
ICAvLyBBZGQgYW5vdGhlciByZWdpb24sIG92ZXJzZXQgc2hvdWxkIGJlIGZhbHNlCi0gICAgdmFy
IHJlZ2lvbjIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBkb2N1bWVudC5i
b2R5LmFwcGVuZENoaWxkKHJlZ2lvbjIpOwotICAgIHJlZ2lvbjIuaWQgPSAicmVnaW9uMiI7Ci0g
ICAgcmVnaW9uMi5jbGFzc05hbWUgPSAicmVnaW9uIjsKLQotICAgIC8vIE92ZXJzZXQgc2hvdWxk
IGJlIGZhbHNlIHNpbmNlIHRoZSBjb250ZW50IGZpdHMgaW4gdGhlIHJlZ2lvbnMKLSAgICBzaG91
bGRCZSgibmFtZWRGbG93Lm92ZXJzZXQiLCAiZmFsc2UiKTsKLQotICAgIC8vIEFkZCB2aXN1YWwg
b3ZlcnNldCwgb3ZlcnNldCBzaG91bGQgYmUgdHJ1ZS4KLSAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiYXJ0aWNsZSIpLnN0eWxlLndlYmtpdEJveFNoYWRvdz0iMHB4IDUwcHggbGltZSI7Ci0K
LSAgICAvLyBPdmVyc2V0IHNob3VsZCBiZSB0cnVlIHNpbmNlIHRoZSBjb250ZW50IGRvZXMgbm90
IGZpdCBpbiByZWdpb25zCi0gICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgInRydWUi
KTsKLQotICAgIC8vIEFkZCB0aGUgdGhpcmQgcmVnaW9uLCBvdmVyc2V0IHNob3VsZCBiZSBmYWxz
ZS4KLSAgICB2YXIgcmVnaW9uMyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVnaW9uMyk7Ci0gICAgcmVnaW9uMy5pZCA9ICJy
ZWdpb24zIjsKLSAgICByZWdpb24zLmNsYXNzTmFtZSA9ICJyZWdpb24iOwotCi0gICAgLy8gT3Zl
cnNldCBzaG91bGQgYmUgZmFsc2Ugc2luY2UgdGhlIGNvbnRlbnQgZml0cyBpbiByZWdpb25zCi0g
ICAgc2hvdWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgImZhbHNlIik7Ci0KLSAgICAvLyBSZW1v
dmUgdGhlIGZpcnN0IHJlZ2lvbiBmcm9tIHRoZSBmbG93LCBvdmVyc2V0IHNob3VsZCBiZSB0cnVl
LgotICAgIHJlZ2lvbi5jbGFzc05hbWUgPSAiIjsKLQotICAgIC8vIE92ZXJzZXQgc2hvdWxkIGJl
IHRydWUgc2luY2UgdGhlIGNvbnRlbnQgZG9lcyBub3QgZml0IHRoZSByZWdpb25zCi0gICAgc2hv
dWxkQmUoIm5hbWVkRmxvdy5vdmVyc2V0IiwgInRydWUiKTsKLQotICAgIC8vIFJlbW92ZSB0aGUg
Y29udGVudCBmcm9tIHRoZSBmbG93LCBvdmVyc2V0IHNob3VsZCBiZSBmYWxzZS4KLSAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9ICIiOwotCi0gICAgLy8g
T3ZlcnNldCBzaG91bGQgYmUgZmFsc2Ugc2luY2UgdGhlIGZsb3cgZG9lcyBub3QgaGF2ZSBhbnkg
Y29udGVudAotICAgIHNob3VsZEJlKCJuYW1lZEZsb3cub3ZlcnNldCIsICJmYWxzZSIpOwotCi0g
ICAgLy8gUmVtb3ZlIGFsbCB0aGUgcmVnaW9ucyBmcm9tIHRoZSBmbG93Ci0gICAgcmVnaW9uMi5j
bGFzc05hbWUgPSByZWdpb24zLmNsYXNzTmFtZSA9ICIiOwotCi0gICAgLy8gT3ZlcnNldCBzaG91
bGQgYmUgdHJ1ZSBzaW5jZSB0aGUgZmxvdyBkb2VzIG5vdCBoYXZlIGFueSByZWdpb24gY2hhaW4K
LSAgICBzaG91bGRCZSgibmFtZWRGbG93Lm92ZXJzZXQiLCAidHJ1ZSIpOwotCi0gICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImFydGljbGUiKS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotICAg
IHJlZ2lvbi5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwotICAgIHJlZ2lvbjIuc3R5bGUuZGlzcGxh
eSA9ICJub25lIjsKLSAgICByZWdpb24zLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci08L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy93ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy1leHBlY3RlZC50
eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNhNGMyMjgwOTZmYjVjMjJmMjM1YTYw
OWJlMGY1Y2Q2ZGE1ZTQxZDIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92
ZWQtZmxvdy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLVRlc3Qg
Zm9yIDY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZQotCi1H
ZXR0aW5nIGEgV2ViS2l0TmFtZWRGbG93IG9iamVjdCBmb3IgYSBmbG93IHRoYXQgd2FzIHJlbW92
ZWQgcmV0dXJucyBhIG5vbi1udWxsIG9iamVjdC4KLQotT24gc3VjY2VzcywgeW91IHNob3VsZCBz
ZWUgUEFTUyBiZWxvdy4KLQotUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXJlbW92ZWQtZmxvdy5odG1sCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCBmNDQxMmRlODYzNGYyOGYyOWM4ZGRmYzJkMDRkMTFkMGI2N2Vj
NGU2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy93ZWJraXQtbmFtZWQtZmxvdy1yZW1vdmVkLWZsb3cuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAgQEAKLTwhZG9jdHlwZSBodG1sPgotPGh0bWw+Ci0g
ICAgPCEtLQotICAgIFRlc3QgZm9yIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NjY0MiAoW0NTU1JlZ2lvbnNdW0NTU09NXSBJbXBsZW1lbnQgTmFtZWRGbG93IGludGVy
ZmFjZSkuCi0gICAgVGVzdCB0aGF0IGdldHRpbmcgYSBXZWJLaXROYW1lZEZsb3cgZm9yIGEgZmxv
dyB0aGF0IHdhcyByZW1vdmVkIHJldHVybnMgYSB2YWxpZCBub24tbnVsbCBvYmplY3QuCi0gICAg
T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAgIDxo
ZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3JpcHQ+
Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAgICBm
b250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIC5mYWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdlaWdo
dDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICAuZmxvdyB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZs
b3c7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5ub0Zsb3cgewotICAgICAgICAgICAg
ICAgIC13ZWJraXQtZmxvdy1pbnRvOiBub25lOwotICAgICAgICAgICAgfQotICAgICAgICA8L3N0
eWxlPgotICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gICAgICAgIDxw
PlRlc3QgZm9yIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02NjY0MiI+NjY2NDI6IFtDU1NSZWdpb25zXUltcGxlbWVudCBOYW1lZEZsb3cgaW50ZXJmYWNl
PC9hPjwvcD4KLSAgICAgICAgPHA+R2V0dGluZyBhIFdlYktpdE5hbWVkRmxvdyBvYmplY3QgZm9y
IGEgZmxvdyB0aGF0IHdhcyByZW1vdmVkIHJldHVybnMgYSBub24tbnVsbCBvYmplY3QuPC9wPgot
ICAgICAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNTIGJlbG93LjwvcD4KLSAg
ICAgICAgPGRpdiBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPjwvZGl2PgotICAgICAgICA8ZGl2
IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0gICAgICAgIDxzY3JpcHQ+Ci0g
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIC8vIEdldCB0aGUgbmFtZWQgZmxvdyBv
YmplY3QgYmVmb3JlIHJlbW92aW5nIHRoZSBmbG93IHRocmVhZC4KLSAgICAgICAgICAgIHZhciBu
YW1lZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICB2YXIgbmFtZWRG
bG93MjsKLQotICAgICAgICAgICAgZnVuY3Rpb24gdGVzdCgpCi0gICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgbmFtZWRGbG93MiA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKLSAgICAgICAg
ICAgICAgICBpZiAobmFtZWRGbG93ICYmICFuYW1lZEZsb3cyKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lclRleHQgPSAiUEFTUyI7
Ci0gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5j
bGFzc05hbWUgPSAicGFzcyI7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0g
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXJ0aWNsZSIpLmNsYXNzTmFtZSA9
ICJub0Zsb3ciOwotICAgICAgICA8L3NjcmlwdD4KLSAgICA8L2JvZHk+Ci08L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1v
YmplY3QtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1l
ZC1mbG93LXNhbWUtb2JqZWN0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggOGRmMGVhNjBmODJmZDg3Mjk0ZDQ2OTgwODIwMjlmNzNhZmVjYTZlNy4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1vYmplY3QtZXhwZWN0ZWQudHh0CisrKyAvZGV2
L251bGwKQEAgLTEsNyArMCwwIEBACi1UZXN0IGZvciA2NjY0MjogW0NTU1JlZ2lvbnNdSW1wbGVt
ZW50IE5hbWVkRmxvdyBpbnRlcmZhY2UKLQotQXNraW5nIGZvciB0aGUgc2FtZSB3ZWJraXQgbmFt
ZWQgZmxvdyB0d2ljZSBzaG91bGQgcmV0dXJuIHRoZSBzYW1lIG5vbi1udWxsIG9iamVjdC4KLQot
T24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgUEFTUyBiZWxvdy4KLQotUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3dlYmtpdC1uYW1lZC1mbG93LXNhbWUtb2JqZWN0
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZsb3ctc2FtZS1v
YmplY3QuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjQyZTEwNDk0ZjdhZjM3
YzRlNjIwY2FmMmQ0MzMyNDQwMTQwY2YzYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvd2Via2l0LW5hbWVkLWZs
b3ctc2FtZS1vYmplY3QuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ0ICswLDAgQEAKLTwhZG9j
dHlwZSBodG1sPgotPGh0bWw+Ci0gICAgPCEtLQotICAgIFRlc3QgZm9yIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NjY0MiAoW0NTU1JlZ2lvbnNdW0NTU09NXSBJbXBs
ZW1lbnQgTmFtZWRGbG93IGludGVyZmFjZSkuCi0gICAgVGVzdCB0aGF0IGFza2luZyBmb3IgdGhl
IHNhbWUgd2Via2l0IG5hbWVkIGZsb3cgdHdpY2UgcmV0dXJucyB0aGUgc2FtZSBvYmplY3QuCi0g
ICAgT24gc3VjY2VzcywgeW91IHNob3VsZCBzZWUgYSBQQVNTIGJlbG93LgotICAgIC0tPgotICAg
IDxoZWFkPgotICAgICAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2hlbHBlci5qcyI+PC9zY3Jp
cHQ+Ci0gICAgICAgIDxzdHlsZT4KLSAgICAgICAgICAgIC5wYXNzIHsKLSAgICAgICAgICAgICAg
ICBmb250LXdlaWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogZ3JlZW47Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIC5mYWlsIHsKLSAgICAgICAgICAgICAgICBmb250LXdl
aWdodDogYm9sZDsKLSAgICAgICAgICAgICAgICBjb2xvcjogcmVkOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICAuZmxvdyB7Ci0gICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86
IGZsb3c7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIDwvc3R5bGU+Ci0gICAgPC9oZWFkPgotICAg
IDxib2R5PgotICAgICAgICA8cD5UZXN0IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjY2NDIiPjY2NjQyOiBbQ1NTUmVnaW9uc11JbXBsZW1lbnQg
TmFtZWRGbG93IGludGVyZmFjZTwvYT48L3A+Ci0gICAgICAgIDxwPkFza2luZyBmb3IgdGhlIHNh
bWUgd2Via2l0IG5hbWVkIGZsb3cgdHdpY2Ugc2hvdWxkIHJldHVybiB0aGUgc2FtZSBub24tbnVs
bCBvYmplY3QuPC9wPgotICAgICAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugc2hvdWxkIHNlZSBQQVNT
IGJlbG93LjwvcD4KLSAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSIgY2xhc3M9ImZsb3ciPjwvZGl2
PgotICAgICAgICA8ZGl2IGlkPSJyZXN1bHQiIGNsYXNzPSJmYWlsIj5GQUlMPC9kaXY+Ci0gICAg
ICAgIDxzY3JpcHQ+Ci0gICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAg
ICAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0KLSAgICAgICAgICAgIHZhciBuYW1l
ZEZsb3cgPSBnZXRGbG93QnlOYW1lKCJmbG93Iik7Ci0gICAgICAgICAgICB2YXIgbmFtZWRGbG93
MiA9IGdldEZsb3dCeU5hbWUoImZsb3ciKTsKLSAgICAgICAgICAgIGlmIChuYW1lZEZsb3cgPT09
IG5hbWVkRmxvdzIpIHsKLSAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cmVzdWx0IikuaW5uZXJUZXh0ID0gIlBBU1MiOwotICAgICAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5jbGFzc05hbWUgPSAicGFzcyI7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIDwvc2NyaXB0PgotICAgIDwvYm9keT4KLTwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>