<?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>257444</bug_id>
          
          <creation_ts>2023-05-28 18:16:23 -0700</creation_ts>
          <short_desc>aria-checked doesn&apos;t work for role=&quot;treeitem&quot; elements with display:contents</short_desc>
          <delta_ts>2023-06-22 14:06:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>239478</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tyler Wilcock">tyler_w</reporter>
          <assigned_to name="Tyler Wilcock">tyler_w</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1958555</commentid>
    <comment_count>0</comment_count>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-05-28 18:16:23 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1958556</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-05-28 18:16:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/109955788&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1958557</commentid>
    <comment_count>2</comment_count>
      <attachid>466527</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-05-28 18:23:53 -0700</bug_when>
    <thetext>Created attachment 466527
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1958562</commentid>
    <comment_count>3</comment_count>
      <attachid>466528</attachid>
    <who name="Tyler Wilcock">tyler_w</who>
    <bug_when>2023-05-28 19:36:58 -0700</bug_when>
    <thetext>Created attachment 466528
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1959185</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-05-31 16:05:55 -0700</bug_when>
    <thetext>Committed 264761@main (2860da7a0ce4): &lt;https://commits.webkit.org/264761@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 466528.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>466527</attachid>
            <date>2023-05-28 18:23:53 -0700</date>
            <delta_ts>2023-05-28 19:36:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-257444-20230528182353.patch</filename>
            <type>text/plain</type>
            <size>66236</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">RnJvbSA1ODM0ZWI5ZWUyYjU1NDgzN2QyNGExZGY3NzI5NzJhNmRmOTg1ZDUwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUeWxlciBXaWxjb2NrIDx0eWxlcl93QGFwcGxlLmNvbT4KRGF0
ZTogU3VuLCAyOCBNYXkgMjAyMyAxODoxNjo0NCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIGFyaWEt
Y2hlY2tlZCBkb2Vzbid0IHdvcmsgZm9yIHJvbGU9InRyZWVpdGVtIiBlbGVtZW50cyB3aXRoCiBk
aXNwbGF5OmNvbnRlbnRzIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
NTc0NDQKIHJkYXI6Ly9wcm9ibGVtLzEwOTk1NTc4OAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCgpBZnRlciB0aGlzIHBhdGNoLCB3ZSBwcm9wZXJseSBjcmVhdGUgcm9sZT0idHJlZSIgYW5k
IHJvbGU9InRyZWVpdGVtIgplbGVtZW50cyBhcyBBY2Nlc3NpYmlsaXR5VHJlZSBhbmQgQWNjZXNz
aWJpbGl0eVRyZWVJdGVtIHJhdGhlciB0aGFuIGEKZ2VuZXJpYyBBY2Nlc3NpYmlsaXR5Tm9kZU9i
amVjdCwgZml4aW5nIGFyaWEtY2hlY2tlZCBhbmQgb3RoZXIKZnVuY3Rpb25hbGl0eSBpbiB0aGVz
ZSBzdWJjbGFzc2VzLgoKVGVzdGNhc2UgYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Ry
ZWUtYW5kLXRyZWVpdGVtcy5odG1sIGFkZGVkLgoKVGhlIG90aGVyIG1ham9yIGNoYW5nZSBpbiB0
aGlzIHBhdGNoIGlzIHRoZSBjcmVhdGlvbiBvZiBhIG5ldwphY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMgc3ViZm9sZGVyIGFzIHJlcXVlc3RlZCBpbiBhIHJldmlldyBjb21tZW50CmZvciBh
IHByZXZpb3VzIHBhdGNoLiBBbGwgZGlzcGxheTpjb250ZW50cyByZWxhdGVkIHRlc3RzIGFyZSBt
b3ZlZCBpbnRvCnRoaXMgZm9sZGVyLgoKKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2FyaWEt
aGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sOiBSZW1vdmVkLgoqIExheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGls
ZHJlbi5odG1sOiBSZW1vdmVkLgoqIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLmh0bWw6IFJlbW92ZWQuCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4tZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4uaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2FyaWEtb3ducy1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtYXJp
YS1vd25zLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvYXJpYS1vd25zLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLmh0bWwuCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVtLWV4cGVjdGVk
LnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS1leHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVtLmh0bWw6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZGVz
Y2VuZGFudC1tZW51LWl0ZW0uaHRtbC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0OiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFt
aWNhbGx5LWFkZGVkLWNoaWxkcmVuLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4uaHRtbDog
QWRkZWQuCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2VsZW1l
bnQtcm9sZXMtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJp
bGl0eS9kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0LgoqIExheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVzLmh0bWw6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMt
ZWxlbWVudC1yb2xlcy5odG1sLgoqIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy9saXN0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1saXN0LWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvbGlzdC5odG1sOiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWxpc3QuaHRtbC4KKiBM
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5n
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlz
cGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0LgoqIExheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9vYmplY3Qtb3JkZXJpbmcuaHRtbDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1vYmpl
Y3Qtb3JkZXJpbmcuaHRtbC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMvc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBl
Y3RlZC50eHQuCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Nl
YXJjaC10cmF2ZXJzYWwuaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50
cy1lbGVtZW50LWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMvdGV4dC11bmRlci1lbGVtZW50Lmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90cmVlLWFuZC10cmVlaXRlbXMtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvdHJlZS1hbmQtdHJlZWl0ZW1zLmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvdGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQuaHRtbDogUmVtb3ZlZC4K
KiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnM6CiogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRk
ZW4tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9h
Y2Nlc3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC1leHBlY3Rl
ZC50eHQuCiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvYXJpYS1vd25zLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3Rz
L3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1l
eHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1l
bGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVz
dEV4cGVjdGF0aW9uczoKKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXkt
Y29udGVudHMtZWxlbWVudC1leHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9keW5hbWljYWxseS1hZGRlZC1jaGlsZHJl
bi1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLWV4
cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1lbGVt
ZW50LXJvbGVzLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5
LWNvbnRlbnRzLW9iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9zZWFyY2gtdHJhdmVyc2Fs
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQu
CiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy90ZXh0LXVuZGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvdGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRz
LWVsZW1lbnQtZXhwZWN0ZWQudHh0LgoqIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVz
dEV4cGVjdGF0aW9uczoKKiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2Fj
aGUuY3BwOgooV2ViQ29yZTo6aXNBY2Nlc3NpYmlsaXR5VHJlZSk6CihXZWJDb3JlOjppc0FjY2Vz
c2liaWxpdHlUcmVlSXRlbSk6CihXZWJDb3JlOjpBWE9iamVjdENhY2hlOjpjcmVhdGVPYmplY3RG
cm9tUmVuZGVyZXIpOgooV2ViQ29yZTo6Y3JlYXRlRnJvbU5vZGUpOgoqIFNvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHA6CihXZWJDb3JlOjpB
Y2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjpkZXRlcm1pbmVBY2Nlc3NpYmlsaXR5Um9sZSk6Ciog
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5jcHA6CihXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5VHJlZTo6QWNjZXNzaWJpbGl0eVRyZWUpOgooV2ViQ29yZTo6QWNj
ZXNzaWJpbGl0eVRyZWU6OmNyZWF0ZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5VHJlZS5oOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eVRyZWVJdGVtLmNwcDoKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6QWNj
ZXNzaWJpbGl0eVRyZWVJdGVtKToKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6Y3Jl
YXRlKToKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6ZGV0ZXJtaW5lQWNjZXNzaWJp
bGl0eVJvbGUpOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRy
ZWVJdGVtLmg6Ci0tLQogLi4uL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNw
cCAgIHwgIDE4ICsrLQogLi4uL0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwICAgICAgICAg
ICAgIHwgICAyICstCiAuLi4vYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5jcHAgICAg
ICAgfCAgMTQgKystCiAuLi4vV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlUcmVl
LmggfCAgIDIgKwogLi4uL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcCAg
IHwgIDEzICstCiAuLi4vYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZUl0ZW0uaCAgICAg
fCAgIDIgKwogLi4uL2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sIHwg
IDcxIC0tLS0tLS0tLS0tCiAuLi55LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVu
Lmh0bWwgfCAgNTkgLS0tLS0tLS0tCiAuLi4vZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVy
c2FsLmh0bWwgICAgfCAgNzYgLS0tLS0tLS0tLS0KIC4uLi9hcmlhLWhpZGRlbi1leHBlY3RlZC50
eHR9ICAgICAgICAgICAgICAgICB8ICAgMAogLi4uL2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRk
ZW4uaHRtbCAgICAgICAgIHwgIDcxICsrKysrKysrKysrCiAuLi4vYXJpYS1vd25zLWV4cGVjdGVk
LnR4dH0gICAgICAgICAgICAgICAgICAgfCAgIDAKIC4uLi9hcmlhLW93bnMuaHRtbH0gICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogLi4uL2Rlc2NlbmRhbnQtbWVudS1pdGVtLWV4
cGVjdGVkLnR4dH0gICAgICAgIHwgICAwCiAuLi4vZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbH0g
ICAgICAgICAgICAgICAgfCAgIDQgKy0KIC4uLi9keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi1l
eHBlY3RlZC50eHR9ICB8ICAgMAogLi4uL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwg
ICAgICAgICAgIHwgIDU5ICsrKysrKysrKwogLi4uL2VsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0
fSAgICAgICAgICAgICAgIHwgICAwCiAuLi4vZWxlbWVudC1yb2xlcy5odG1sfSAgICAgICAgICAg
ICAgICAgICAgICAgfCAgNjIgKysrKy0tLS0tCiAuLi4vbGlzdC1leHBlY3RlZC50eHR9ICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDAKIC4uLi9saXN0Lmh0bWx9ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgNCArLQogLi4uL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHR9
ICAgICAgICAgICAgIHwgICAwCiAuLi4vb2JqZWN0LW9yZGVyaW5nLmh0bWx9ICAgICAgICAgICAg
ICAgICAgICAgfCAgNTQgKysrKy0tLS0KIC4uLi9zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4
dH0gICAgICAgICAgICB8ICAgMAogLi4uL2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZlcnNh
bC5odG1sICAgIHwgIDc2ICsrKysrKysrKysrCiAuLi4vdGV4dC11bmRlci1lbGVtZW50LWV4cGVj
dGVkLnR4dH0gICAgICAgICAgfCAgIDAKIC4uLi9kaXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXIt
ZWxlbWVudC5odG1sICB8ICAzOSArKysrKysKIC4uLi90cmVlLWFuZC10cmVlaXRlbXMtZXhwZWN0
ZWQudHh0ICAgICAgICAgICB8ICA0NCArKysrKysrCiAuLi4vZGlzcGxheS1jb250ZW50cy90cmVl
LWFuZC10cmVlaXRlbXMuaHRtbCAgfCAxMTkgKysrKysrKysrKysrKysrKysrCiAuLi4vdGV4dC11
bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQuaHRtbCAgfCAgMzkgLS0tLS0tCiBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMgICAgfCAgIDYgKy0KIC4uLi9hcmlh
LWhpZGRlbi1leHBlY3RlZC50eHR9ICAgICAgICAgICAgICAgICB8ICAgMAogLi4uL2FyaWEtb3du
cy1leHBlY3RlZC50eHR9ICAgICAgICAgICAgICAgICAgIHwgICAwCiAuLi4vZWxlbWVudC1yb2xl
cy1leHBlY3RlZC50eHR9ICAgICAgICAgICAgICAgfCAgIDAKIExheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zICAgICB8ICAxMiArLQogLi4uL2FyaWEtaGlkZGVuLWV4cGVj
dGVkLnR4dH0gICAgICAgICAgICAgICAgIHwgICAwCiAuLi4vZHluYW1pY2FsbHktYWRkZWQtY2hp
bGRyZW4tZXhwZWN0ZWQudHh0fSAgfCAgIDAKIC4uLi9lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4
dH0gICAgICAgICAgICAgICB8ICAgMAogLi4uL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHR9
ICAgICAgICAgICAgIHwgICAwCiAuLi4vc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHR9ICAg
ICAgICAgICAgfCAgIDAKIC4uLi90ZXh0LXVuZGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0fSAgICAg
ICAgICB8ICAgMAogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25z
IHwgICA2ICstCiA0MiBmaWxlcyBjaGFuZ2VkLCA1MjggaW5zZXJ0aW9ucygrKSwgMzI4IGRlbGV0
aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvYXJp
YS1oaWRkZW4tZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwKIGRlbGV0ZSBtb2RlIDEwMDY0
NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZHluYW1pY2FsbHkt
YWRkZWQtY2hpbGRyZW4uaHRtbAogZGVsZXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLmh0bWwKIHJlbmFtZSBM
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3thcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQtZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0
ZWQudHh0fSAoMTAwJSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4uaHRtbAogcmVuYW1lIExheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLWV4cGVjdGVkLnR4dCA9
PiBkaXNwbGF5LWNvbnRlbnRzL2FyaWEtb3ducy1leHBlY3RlZC50eHR9ICgxMDAlKQogcmVuYW1l
IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLmh0
bWwgPT4gZGlzcGxheS1jb250ZW50cy9hcmlhLW93bnMuaHRtbH0gKDg5JSkKIHJlbmFtZSBMYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3tkaXNwbGF5LWNvbnRlbnRzLWRlc2NlbmRhbnQtbWVudS1p
dGVtLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVt
LWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS97
ZGlzcGxheS1jb250ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS5odG1sID0+IGRpc3BsYXktY29u
dGVudHMvZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbH0gKDg2JSkKIHJlbmFtZSBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L3tkaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVkLWNoaWxk
cmVuLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNo
aWxkcmVuLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxk
cmVuLmh0bWwKIHJlbmFtZSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3tkaXNwbGF5LWNvbnRl
bnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvZWxlbWVu
dC1yb2xlcy1leHBlY3RlZC50eHR9ICgxMDAlKQogcmVuYW1lIExheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkve2Rpc3BsYXktY29udGVudHMtZWxlbWVudC1yb2xlcy5odG1sID0+IGRpc3BsYXktY29u
dGVudHMvZWxlbWVudC1yb2xlcy5odG1sfSAoNjYlKQogcmVuYW1lIExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtbGlzdC1leHBlY3RlZC50eHQgPT4gZGlzcGxheS1j
b250ZW50cy9saXN0LWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1saXN0Lmh0bWwgPT4gZGlzcGxheS1jb250ZW50
cy9saXN0Lmh0bWx9ICg5MiUpCiByZW5hbWUgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS97ZGlz
cGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29u
dGVudHMvb2JqZWN0LW9yZGVyaW5nLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmcuaHRt
bCA9PiBkaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sfSAoNjYlKQogcmVuYW1l
IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZl
cnNhbC1leHBlY3RlZC50eHQgPT4gZGlzcGxheS1jb250ZW50cy9zZWFyY2gtdHJhdmVyc2FsLWV4
cGVjdGVkLnR4dH0gKDEwMCUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwuaHRtbAogcmVuYW1lIExh
eW91dFRlc3RzL2FjY2Vzc2liaWxpdHkve3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVt
ZW50LWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXItZWxlbWVudC1l
eHBlY3RlZC50eHR9ICgxMDAlKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90ZXh0LXVuZGVyLWVsZW1lbnQuaHRtbAogY3JlYXRl
IG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90
cmVlLWFuZC10cmVlaXRlbXMtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3RyZWUtYW5kLXRyZWVpdGVtcy5o
dG1sCiBkZWxldGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS90ZXh0LXVu
ZGVyLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sCiByZW5hbWUgTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L3thcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQtZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0
ZWQudHh0fSAoMTAwJSkKIHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2li
aWxpdHkve2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5
LWNvbnRlbnRzL2FyaWEtb3ducy1leHBlY3RlZC50eHR9ICgxMDAlKQogcmVuYW1lIExheW91dFRl
c3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1lbGVtZW50
LXJvbGVzLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMtZXhw
ZWN0ZWQudHh0fSAoMTAwJSkKIHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNz
aWJpbGl0eS97YXJpYS1oaWRkZW4tZGlzcGxheS1jb250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4
dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiBy
ZW5hbWUgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29u
dGVudHMtZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXkt
Y29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0fSAoMTAwJSkK
IHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2Vs
ZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0fSAoMTAwJSkKIHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmct
ZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5nLWV4cGVjdGVk
LnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxp
dHkve2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQgPT4gZGlz
cGxheS1jb250ZW50cy9zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5h
bWUgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkve3RleHQtdW5kZXItZGlz
cGxheS1jb250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL3Rl
eHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHR9ICgxMDAlKQoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwCmluZGV4IDU4ZjU1NjMxZTkwNi4uMjU5
MTRkYWZmNjZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2Jq
ZWN0Q2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RD
YWNoZS5jcHAKQEAgLTYwNSw2ICs2MDUsMTYgQEAgc3RhdGljIGJvb2wgaXNBY2Nlc3NpYmlsaXR5
TGlzdChOb2RlKiBub2RlKQogICAgICAgICB8fCAobm9kZUhhc1JvbGUobm9kZSwgbnVsbEF0b20o
KSkgJiYgKG5vZGUtPmhhc1RhZ05hbWUodWxUYWcpIHx8IG5vZGUtPmhhc1RhZ05hbWUob2xUYWcp
IHx8IG5vZGUtPmhhc1RhZ05hbWUoZGxUYWcpIHx8IG5vZGUtPmhhc1RhZ05hbWUobWVudVRhZykp
KSkpOwogfQogCitzdGF0aWMgYm9vbCBpc0FjY2Vzc2liaWxpdHlUcmVlKE5vZGUqIG5vZGUpCit7
CisgICAgcmV0dXJuIG5vZGVIYXNSb2xlKG5vZGUsICJ0cmVlIl9zKTsKK30KKworc3RhdGljIGJv
b2wgaXNBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0oTm9kZSogbm9kZSkKK3sKKyAgICByZXR1cm4gbm9k
ZUhhc1JvbGUobm9kZSwgInRyZWVpdGVtIl9zKTsKK30KKwogUmVmPEFjY2Vzc2liaWxpdHlPYmpl
Y3Q+IEFYT2JqZWN0Q2FjaGU6OmNyZWF0ZU9iamVjdEZyb21SZW5kZXJlcihSZW5kZXJPYmplY3Qq
IHJlbmRlcmVyKQogewogICAgIC8vIEZJWE1FOiBIb3cgY291bGQgcmVuZGVyZXItPm5vZGUoKSBl
dmVyIG5vdCBiZSBhbiBFbGVtZW50PwpAQCAtNjIyLDkgKzYzMiw5IEBAIFJlZjxBY2Nlc3NpYmls
aXR5T2JqZWN0PiBBWE9iamVjdENhY2hlOjpjcmVhdGVPYmplY3RGcm9tUmVuZGVyZXIoUmVuZGVy
T2JqZWN0KiByCiAgICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsOjpjcmVh
dGUocmVuZGVyZXIpOwogCiAgICAgLy8gYXJpYSB0cmVlCi0gICAgaWYgKG5vZGVIYXNSb2xlKG5v
ZGUsICJ0cmVlIl9zKSkKKyAgICBpZiAoaXNBY2Nlc3NpYmlsaXR5VHJlZShub2RlKSkKICAgICAg
ICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlUcmVlOjpjcmVhdGUocmVuZGVyZXIpOwotICAgIGlmIChu
b2RlSGFzUm9sZShub2RlLCAidHJlZWl0ZW0iX3MpKQorICAgIGlmIChpc0FjY2Vzc2liaWxpdHlU
cmVlSXRlbShub2RlKSkKICAgICAgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6Y3Jl
YXRlKHJlbmRlcmVyKTsKIAogICAgIGlmIChub2RlICYmIGlzPEhUTUxMYWJlbEVsZW1lbnQ+KG5v
ZGUpICYmIG5vZGVIYXNSb2xlKG5vZGUsIG51bGxBdG9tKCkpKQpAQCAtNjg5LDYgKzY5OSwxMCBA
QCBzdGF0aWMgUmVmPEFjY2Vzc2liaWxpdHlPYmplY3Q+IGNyZWF0ZUZyb21Ob2RlKE5vZGUmIG5v
ZGUpCiB7CiAgICAgaWYgKGlzQWNjZXNzaWJpbGl0eUxpc3QoJm5vZGUpKQogICAgICAgICByZXR1
cm4gQWNjZXNzaWJpbGl0eUxpc3Q6OmNyZWF0ZShub2RlKTsKKyAgICBpZiAoaXNBY2Nlc3NpYmls
aXR5VHJlZSgmbm9kZSkpCisgICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5VHJlZTo6Y3JlYXRl
KG5vZGUpOworICAgIGlmIChpc0FjY2Vzc2liaWxpdHlUcmVlSXRlbSgmbm9kZSkpCisgICAgICAg
IHJldHVybiBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW06OmNyZWF0ZShub2RlKTsKICAgICByZXR1cm4g
QWNjZXNzaWJpbGl0eU5vZGVPYmplY3Q6OmNyZWF0ZShub2RlKTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dC5jcHAKaW5kZXggMDg1MjIwNzQwNWYxLi5iY2ExOTA1N2VjNjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcApAQCAtMjE4MSw3ICsyMTgxLDcgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
OjpzaG91bGRJZ25vcmVBdHRyaWJ1dGVSb2xlKCkgY29uc3QKIEFjY2Vzc2liaWxpdHlSb2xlIEFj
Y2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmRldGVybWluZUFjY2Vzc2liaWxpdHlSb2xlKCkKIHsK
ICAgICBpZiAoIW1fcmVuZGVyZXIpCi0gICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5Um9sZTo6
VW5rbm93bjsKKyAgICAgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlOb2RlT2JqZWN0OjpkZXRlcm1p
bmVBY2Nlc3NpYmlsaXR5Um9sZSgpOwogCiAjaWYgRU5BQkxFKEFQUExFX1BBWSkKICAgICBpZiAo
aXNBcHBsZVBheUJ1dHRvbigpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlUcmVlLmNwcAppbmRleCBmYTE4OWRhMDUwZjQuLjNkM2EyZWI2MjFlYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJl
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJl
ZS5jcHAKQEAgLTQ0LDE0ICs0NCwyNCBAQCBBY2Nlc3NpYmlsaXR5VHJlZTo6QWNjZXNzaWJpbGl0
eVRyZWUoUmVuZGVyT2JqZWN0KiByZW5kZXJlcikKICAgICA6IEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QocmVuZGVyZXIpCiB7CiB9Ci0gICAgCisKK0FjY2Vzc2liaWxpdHlUcmVlOjpBY2Nlc3Np
YmlsaXR5VHJlZShOb2RlJiBub2RlKQorICAgIDogQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdChu
b2RlKQoreworfQorCiBBY2Nlc3NpYmlsaXR5VHJlZTo6fkFjY2Vzc2liaWxpdHlUcmVlKCkgPSBk
ZWZhdWx0OwogICAgIAogUmVmPEFjY2Vzc2liaWxpdHlUcmVlPiBBY2Nlc3NpYmlsaXR5VHJlZTo6
Y3JlYXRlKFJlbmRlck9iamVjdCogcmVuZGVyZXIpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgQWNjZXNzaWJpbGl0eVRyZWUocmVuZGVyZXIpKTsKIH0KLSAgICAKKworUmVmPEFjY2Vzc2li
aWxpdHlUcmVlPiBBY2Nlc3NpYmlsaXR5VHJlZTo6Y3JlYXRlKE5vZGUmIG5vZGUpCit7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgQWNjZXNzaWJpbGl0eVRyZWUobm9kZSkpOworfQorCiBib29s
IEFjY2Vzc2liaWxpdHlUcmVlOjpjb21wdXRlQWNjZXNzaWJpbGl0eUlzSWdub3JlZCgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIGFjY2Vzc2liaWxpdHlJc0lnbm9yZWRCeURlZmF1bHQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWUuaCBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWUuaAppbmRleCA4
MGVlM2FkMWRiYzkuLmY2NDMwNzY0OGE0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWUuaApAQCAtMzYsMTAgKzM2LDEyIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIGNsYXNzIEFjY2Vzc2liaWxpdHlUcmVlIGZpbmFsIDogcHVibGljIEFjY2Vz
c2liaWxpdHlSZW5kZXJPYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8QWNjZXNzaWJp
bGl0eVRyZWU+IGNyZWF0ZShSZW5kZXJPYmplY3QqKTsKKyAgICBzdGF0aWMgUmVmPEFjY2Vzc2li
aWxpdHlUcmVlPiBjcmVhdGUoTm9kZSYpOwogICAgIHZpcnR1YWwgfkFjY2Vzc2liaWxpdHlUcmVl
KCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgQWNjZXNzaWJpbGl0eVRyZWUoUmVuZGVyT2Jq
ZWN0Kik7CisgICAgZXhwbGljaXQgQWNjZXNzaWJpbGl0eVRyZWUoTm9kZSYpOwogICAgIGJvb2wg
Y29tcHV0ZUFjY2Vzc2liaWxpdHlJc0lnbm9yZWQoKSBjb25zdCBvdmVycmlkZTsKICAgICBBY2Nl
c3NpYmlsaXR5Um9sZSBkZXRlcm1pbmVBY2Nlc3NpYmlsaXR5Um9sZSgpIG92ZXJyaWRlOwogICAg
IGJvb2wgaXNUcmVlVmFsaWQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcAppbmRleCBmOWViYzVhZjY1MzYu
LmQxOTZjY2FiMTdiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5VHJlZUl0ZW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcApAQCAtNDAsNyArNDAsMTIgQEAgQWNjZXNzaWJp
bGl0eVRyZWVJdGVtOjpBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0oUmVuZGVyT2JqZWN0KiByZW5kZXJl
cikKICAgICA6IEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QocmVuZGVyZXIpCiB7CiB9Ci0gICAg
CisKK0FjY2Vzc2liaWxpdHlUcmVlSXRlbTo6QWNjZXNzaWJpbGl0eVRyZWVJdGVtKE5vZGUmIG5v
ZGUpCisgICAgOiBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0KG5vZGUpCit7Cit9CisKIEFjY2Vz
c2liaWxpdHlUcmVlSXRlbTo6fkFjY2Vzc2liaWxpdHlUcmVlSXRlbSgpID0gZGVmYXVsdDsKICAg
ICAKIFJlZjxBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0+IEFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6Y3Jl
YXRlKFJlbmRlck9iamVjdCogcmVuZGVyZXIpCkBAIC00OCw2ICs1MywxMSBAQCBSZWY8QWNjZXNz
aWJpbGl0eVRyZWVJdGVtPiBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW06OmNyZWF0ZShSZW5kZXJPYmpl
Y3QqIHJlbmRlcmVyKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEFjY2Vzc2liaWxpdHlUcmVl
SXRlbShyZW5kZXJlcikpOwogfQogCitSZWY8QWNjZXNzaWJpbGl0eVRyZWVJdGVtPiBBY2Nlc3Np
YmlsaXR5VHJlZUl0ZW06OmNyZWF0ZShOb2RlJiBub2RlKQoreworICAgIHJldHVybiBhZG9wdFJl
ZigqbmV3IEFjY2Vzc2liaWxpdHlUcmVlSXRlbShub2RlKSk7Cit9CisKIGJvb2wgQWNjZXNzaWJp
bGl0eVRyZWVJdGVtOjpzdXBwb3J0c0NoZWNrZWRTdGF0ZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IGhhc0F0dHJpYnV0ZShhcmlhX2NoZWNrZWRBdHRyKTsKQEAgLTU1LDcgKzY1LDYgQEAgYm9vbCBB
Y2Nlc3NpYmlsaXR5VHJlZUl0ZW06OnN1cHBvcnRzQ2hlY2tlZFN0YXRlKCkgY29uc3QKIAogQWNj
ZXNzaWJpbGl0eVJvbGUgQWNjZXNzaWJpbGl0eVRyZWVJdGVtOjpkZXRlcm1pbmVBY2Nlc3NpYmls
aXR5Um9sZSgpCiB7Ci0gICAgCiAgICAgLy8gV2FsayB0aGUgcGFyZW50IGNoYWluIGxvb2tpbmcg
Zm9yIGEgcGFyZW50IHRoYXQgaXMgYSB0cmVlLiBBIHRyZWVpdGVtIGlzCiAgICAgLy8gb25seSBj
b25zaWRlcmVkIHZhbGlkIGlmIGl0IGlzIGluIGEgdHJlZS4KICAgICBBY2Nlc3NpYmlsaXR5T2Jq
ZWN0KiBwYXJlbnQgPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZUl0ZW0uaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmgKaW5kZXggYzQ4NGZlZmQ1MTI5Li4wODRlMmYx
Y2Y2Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eVRyZWVJdGVtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5VHJlZUl0ZW0uaApAQCAtMzUsMTIgKzM1LDE0IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IGNsYXNzIEFjY2Vzc2liaWxpdHlUcmVlSXRlbSBmaW5hbCA6IHB1YmxpYyBBY2Nlc3NpYmlsaXR5
UmVuZGVyT2JqZWN0IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPEFjY2Vzc2liaWxpdHlUcmVl
SXRlbT4gY3JlYXRlKFJlbmRlck9iamVjdCopOworICAgIHN0YXRpYyBSZWY8QWNjZXNzaWJpbGl0
eVRyZWVJdGVtPiBjcmVhdGUoTm9kZSYpOwogICAgIHZpcnR1YWwgfkFjY2Vzc2liaWxpdHlUcmVl
SXRlbSgpOwogCiAgICAgYm9vbCBzdXBwb3J0c0NoZWNrZWRTdGF0ZSgpIGNvbnN0IG92ZXJyaWRl
OwogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEFjY2Vzc2liaWxpdHlUcmVlSXRlbShSZW5kZXJP
YmplY3QqKTsKKyAgICBleHBsaWNpdCBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0oTm9kZSYpOwogICAg
IGJvb2wgc2hvdWxkSWdub3JlQXR0cmlidXRlUm9sZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICFt
X2lzVHJlZUl0ZW1WYWxpZDsgfQogICAgIEFjY2Vzc2liaWxpdHlSb2xlIGRldGVybWluZUFjY2Vz
c2liaWxpdHlSb2xlKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBtX2lzVHJlZUl0ZW1WYWxpZDsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4tZGlzcGxheS1j
b250ZW50cy1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2FyaWEtaGlk
ZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBiNWE1ZTcwNmJmYmEuLjAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRG
Ly9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJj
ZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FjY2Vz
c2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IGlkPSJib2R5Ij4K
LQotPG1haW4gaWQ9Im1haW4iIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50cyI+Ci0gICAgPG9sIGlk
PSJsaXN0Ij4KLSAgICAgICAgPGxpPkxpc3QgaXRlbSBvbmU8L2xpPgotICAgICAgICA8bGk+TGlz
dCBpdGVtIHR3bzwvbGk+Ci0gICAgPC9vbD4KLSAgICA8cCBpZD0icGFyYWdyYXBoIj5Db250ZW50
IGluc2lkZSBtYWluID4gcCB0YWcuPHA+Ci08L21haW4+Ci0KLTxzY3JpcHQ+Ci0gICAgdmFyIHRl
c3RPdXRwdXQgPSAiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCBhbiBhcmlhLWhpZGRlbiBkaXNwbGF5
OmNvbnRlbnRzIGVsZW1lbnQgYmVoYXZlcyBhcyBleHBlY3RlZC4iOwotCi0gICAgZnVuY3Rpb24g
ZGVidWdFbGVtZW50KGlkKSB7Ci0gICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuXG5UZXN0aW5nIGVs
ZW1lbnQgIyR7aWR9XG5gOwotICAgICAgICBjb25zdCBheEVsZW1lbnQgPSBhY2Nlc3NpYmlsaXR5
Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoaWQpOwotICAgICAgICBpZiAoIWF4RWxl
bWVudCkgewotICAgICAgICAgICAgZGVidWcoYFxuRkFJTDogQ291bGRuJ3QgZ2V0IEFYIGVsZW1l
bnQgZm9yICMke2lkfS5gKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAg
ICAgIHRlc3RPdXRwdXQgKz0gYXhFbGVtZW50LnJvbGU7Ci0gICAgICAgIGNvbnN0IGNvbXB1dGVk
Um9sZVN0cmluZyA9IGF4RWxlbWVudC5jb21wdXRlZFJvbGVTdHJpbmc7Ci0gICAgICAgIGlmIChj
b21wdXRlZFJvbGVTdHJpbmcpCi0gICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbmNvbXB1dGVk
Um9sZVN0cmluZzogJHtjb21wdXRlZFJvbGVTdHJpbmd9YDsKLQotICAgICAgICBsZXQgc3Vicm9s
ZSA9IGF4RWxlbWVudC5zdWJyb2xlOwotICAgICAgICBpZiAoc3Vicm9sZS5yZXBsYWNlKCJBWFN1
YnJvbGU6ICIsICIiKSkKLSAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuJHtzdWJyb2xlfWA7
Ci0gICAgfQotCi0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgewotICAg
ICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLSAgICAgICAgZGVidWdFbGVtZW50
KCJtYWluIik7Ci0gICAgICAgIGRlYnVnRWxlbWVudCgibGlzdCIpOwotICAgICAgICBkZWJ1Z0Vs
ZW1lbnQoInBhcmFncmFwaCIpOwotCi0gICAgICAgIHRlc3RPdXRwdXQgKz0gIlxuXG5IaWRpbmcg
I21haW4gd2l0aCBhcmlhLWhpZGRlbj0ndHJ1ZScuIjsKLSAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoIm1haW4iKS5hcmlhSGlkZGVuID0gInRydWUiOwotICAgICAgICBzZXRUaW1lb3V0
KGFzeW5jIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgYXdhaXQgd2FpdEZvcigoKSA9PiB7Ci0g
ICAgICAgICAgICAgICAgLy8gV2FpdCBmb3IgdGhlIG1haW4gdG8gYmUgaGlkZGVuLgotICAgICAg
ICAgICAgICAgIHJldHVybiAhYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1l
bnRCeUlkKCJtYWluIik7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIGNvbnN0IGxpc3Qg
PSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImxpc3QiKTsK
LSAgICAgICAgICAgIGNvbnN0IHBhcmFncmFwaCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFj
Y2Vzc2libGVFbGVtZW50QnlJZCgicGFyYWdyYXBoIik7Ci0gICAgICAgICAgICBpZiAoIWxpc3Qg
JiYgIXBhcmFncmFwaCkKLSAgICAgICAgICAgICAgICB0ZXN0T3V0cHV0ICs9ICJcblBBU1M6IEFs
bCBlbGVtZW50cyBhcmUgbm93IGhpZGRlbi4iOwotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgaWYgKGxpc3QpCi0gICAgICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gIlxu
RkFJTDogPG9sPiB3YXMgbm90IGhpZGRlbiBieSBhcmlhLWhpZGRlbi4iOwotICAgICAgICAgICAg
ICAgIGlmIChwYXJhZ3JhcGgpCi0gICAgICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gIlxu
RkFJTDogPHA+IHdhcyBub3QgaGlkZGVuIGJ5IGFyaWEtaGlkZGVuLiI7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWluIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZGVidWcodGVzdE91dHB1dCk7Ci0gICAg
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgfSwgMCk7Ci0gICAgfQotPC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxp
dHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1sIGIvTGF5
b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVk
LWNoaWxkcmVuLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY3MDNiZGI1Mzkz
Ny4uMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNTkgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWNjZXNzaWJp
bGl0eS1oZWxwZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10
ZXN0LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotCi08ZGl2IGlkPSJkaXNwbGF5LWNv
bnRlbnRzLWRpdiIgYXJpYS1sYWJlbD0iRGl2IHdpdGggZGlzcGxheTpjb250ZW50cyIgc3R5bGU9
ImRpc3BsYXk6Y29udGVudHMiPgotICAgIDxkaXYgaWQ9ImRpdi10by1pbnNlcnQtaW50byI+Ci0g
ICAgPC9kaXY+Ci08L2Rpdj4KLQotPHNjcmlwdD4KLSAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlz
IHRlc3QgZW5zdXJlcyB0aGF0IHdlIGluY2x1ZGUgZHluYW1pY2FsbHkgYWRkZWQgY29udGVudCBp
biB0aGUgQVggdHJlZSB3aGVuIHNhaWQgY29udGVudCBpcyBhZGRlZCBhcyBhIHN1YnRyZWUgb2Yg
YSBkaXNwbGF5OmNvbnRlbnRzIGVsZW1lbnQuXG5cbiI7Ci0KLSAgICB2YXIgYXhSb290ID0gYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIucm9vdEVsZW1lbnQ7Ci0gICAgZnVuY3Rpb24gdHJhdmVyc2VQ
YWdlKCkgewotICAgICAgICBsZXQgc2VhcmNoUmVzdWx0ID0gbnVsbDsKLSAgICAgICAgd2hpbGUg
KHRydWUpIHsKLSAgICAgICAgICAgIHNlYXJjaFJlc3VsdCA9IGF4Um9vdC51aUVsZW1lbnRGb3JT
ZWFyY2hQcmVkaWNhdGUoc2VhcmNoUmVzdWx0LCB0cnVlLCAiQVhBbnlUeXBlU2VhcmNoS2V5Iiwg
IiIsIGZhbHNlKTsKLSAgICAgICAgICAgIGlmICghc2VhcmNoUmVzdWx0KQotICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgY29uc3Qgcm9sZSA9IHNlYXJjaFJlc3VsdC5yb2xlOwot
ICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3JvbGV9YDsKLSAgICAgICAgICAgIGlmIChy
b2xlLmluY2x1ZGVzKCJTdGF0aWNUZXh0IikpIHsKLSAgICAgICAgICAgICAgICBsZXQgdGV4dENv
bnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiID8g
c2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2VhcmNoUmVzdWx0LnN0cmluZ1ZhbHVlOwotICAg
ICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuJHt0ZXh0Q29udGVudH1gOwotICAgICAgICAg
ICAgfQotICAgICAgICAgICAgdGVzdE91dHB1dCArPSAiXG4iOwotICAgICAgICB9Ci0gICAgfQot
Ci0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgewotICAgICAgICB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLSAgICAgICAgdGVzdE91dHB1dCArPSAiVHJhdmVy
c2luZyBwYWdlIGJhc2VkIG9uIGluaXRpYWwgc3RhdGUuXG4iOwotICAgICAgICB0cmF2ZXJzZVBh
Z2UoKTsKLQotICAgICAgICB0ZXN0T3V0cHV0ICs9ICJcbkFkZGluZyBsaXN0IGVsZW1lbnRzIHRv
ICNkaXYtdG8taW5zZXJ0LWludG8gYW5kIHBlcmZvcm1pbmcgYW5vdGhlciBwYWdlIHRyYXZlcnNh
bC5cbiI7Ci0KLSAgICAgICAgY29uc3QgdWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ1bCIp
OwotICAgICAgICBjb25zdCBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7Ci0gICAg
ICAgIGxpLmlubmVySFRNTCA9ICJMaXN0IGl0ZW0gb25lIjsKLSAgICAgICAgdWwuYXBwZW5kQ2hp
bGQobGkpOwotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2LXRvLWluc2VydC1p
bnRvIikuYXBwZW5kQ2hpbGQodWwpOwotICAgICAgICBzZXRUaW1lb3V0KGFzeW5jIGZ1bmN0aW9u
KCkgewotICAgICAgICAgICAgYXdhaXQgd2FpdEZvcigoKSA9PiBheFJvb3QudWlFbGVtZW50Rm9y
U2VhcmNoUHJlZGljYXRlKGF4Um9vdCwgdHJ1ZSwgIkFYTGlzdFNlYXJjaEtleSIsICIiLCBmYWxz
ZSkpOwotICAgICAgICAgICAgdHJhdmVyc2VQYWdlKCk7Ci0KLSAgICAgICAgICAgIGRlYnVnKHRl
c3RPdXRwdXQpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgIH0sIDApOwot
ICAgIH0KLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgotCi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLmh0
bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRy
YXZlcnNhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZDdkMWVhZjQxN2Mu
LjAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMtc2VhcmNoLXRyYXZlcnNhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzYgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxwZXIu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3Nj
cmlwdD4KLTwvaGVhZD4KLTxib2R5PgotCi08ZGl2IGlkPSJjb250YWluZXIiIHJvbGU9Imdyb3Vw
Ij4KLSAgICA8cD5Db250ZW50IGJlZm9yZSBtYWluLjwvcD4KLQotICAgIDxtYWluPgotCi0gICAg
PGgxPk5vIHN0eWxlIGNoYW5nZXM8L2gxPgotICAgIDxkaXYgcm9sZT0idG9vbGJhciI+Ci0gICAg
ICAgIDxkaXY+Ci0gICAgICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgotICAgICAgICA8L2Rp
dj4KLSAgICA8L2Rpdj4KLQotICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24gdGhlIHRvb2xi
YXI8L2gxPgotICAgIDxkaXYgcm9sZT0idG9vbGJhciIgc3R5bGU9ImRpc3BsYXk6IGNvbnRlbnRz
OyI+Ci0gICAgICAgIDxkaXY+Ci0gICAgICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgotICAg
ICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLQotICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24g
dGhlIGdlbmVyaWMgZGl2PC9oMT4KLSAgICA8ZGl2IHJvbGU9InRvb2xiYXIiPgotICAgICAgICA8
ZGl2IHN0eWxlPSJkaXNwbGF5OiBjb250ZW50czsiPgotICAgICAgICAgICAgPGJ1dHRvbj5Gb288
L2J1dHRvbj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci0KLSAgICA8aDE+ZGlzcGxheTog
Y29udGVudHM7IG9uIHRoZSBidXR0b248L2gxPgotICAgIDxkaXYgcm9sZT0idG9vbGJhciI+Ci0g
ICAgICAgIDxkaXY+Ci0gICAgICAgICAgICA8YnV0dG9uIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50
czsiPkZvbzwvYnV0dG9uPgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLQotICAgIDwvbWFp
bj4KLQotICAgIDxwPkNvbnRlbnQgYWZ0ZXIgbWFpbi48L3A+Ci08L2Rpdj4KLQotPHNjcmlwdD4K
LSAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB3ZSBjYW4gdHJhdmVyc2Ug
dGhyb3VnaCBiYXNpYyB3ZWJwYWdlcyB3aXRoIG11bHRpcGxlIGRpc3BsYXk6IGNvbnRlbnRzIGVs
ZW1lbnRzIHZpYSBzZWFyY2guXG4iOwotCi0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29u
dHJvbGxlcikgewotICAgICAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gYWNjZXNzaWJpbGl0
eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJjb250YWluZXIiKTsKLQotICAgICAg
ICBsZXQgZWxlbWVudENvdW50ID0gMDsKLSAgICAgICAgbGV0IHNlYXJjaFJlc3VsdCA9IG51bGw7
Ci0gICAgICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgICAgICBzZWFyY2hSZXN1bHQgPSBjb250
YWluZXJFbGVtZW50LnVpRWxlbWVudEZvclNlYXJjaFByZWRpY2F0ZShzZWFyY2hSZXN1bHQsIHRy
dWUsICJBWEFueVR5cGVTZWFyY2hLZXkiLCAiIiwgZmFsc2UpOwotICAgICAgICAgICAgaWYgKCFz
ZWFyY2hSZXN1bHQpCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBjb25zdCBy
b2xlID0gc2VhcmNoUmVzdWx0LnJvbGU7Ci0gICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbiR7
cm9sZX1gOwotICAgICAgICAgICAgaWYgKHJvbGUuaW5jbHVkZXMoIlN0YXRpY1RleHQiKSkgewot
ICAgICAgICAgICAgICAgIGxldCB0ZXh0Q29udGVudCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVy
LnBsYXRmb3JtTmFtZSA9PT0gImlvcyIgPyBzZWFyY2hSZXN1bHQuZGVzY3JpcHRpb24gOiBzZWFy
Y2hSZXN1bHQuc3RyaW5nVmFsdWU7Ci0gICAgICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4k
e3RleHRDb250ZW50fWA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIHRlc3RPdXRwdXQg
Kz0gIlxuIjsKLSAgICAgICAgICAgIGVsZW1lbnRDb3VudCArPSAxOwotICAgICAgICB9Ci0gICAg
ICAgIHRlc3RPdXRwdXQgKz0gYFxuVHJhdmVyc2VkICR7ZWxlbWVudENvdW50fSBlbGVtZW50cy5g
OwotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKLSAgICB9Ci08
L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9hcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlk
ZGVuLWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9hcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQt
ZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4uaHRtbCBiL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLWhpZGRlbi5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNzcyNGZlNzk3ZGVmCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRz
L2FyaWEtaGlkZGVuLmh0bWwKQEAgLTAsMCArMSw3MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5IGlkPSJib2R5Ij4KKworPG1haW4gaWQ9Im1haW4iIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50
cyI+CisgICAgPG9sIGlkPSJsaXN0Ij4KKyAgICAgICAgPGxpPkxpc3QgaXRlbSBvbmU8L2xpPgor
ICAgICAgICA8bGk+TGlzdCBpdGVtIHR3bzwvbGk+CisgICAgPC9vbD4KKyAgICA8cCBpZD0icGFy
YWdyYXBoIj5Db250ZW50IGluc2lkZSBtYWluID4gcCB0YWcuPHA+Cis8L21haW4+CisKKzxzY3Jp
cHQ+Cit2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IGFuIGFyaWEtaGlk
ZGVuIGRpc3BsYXk6Y29udGVudHMgZWxlbWVudCBiZWhhdmVzIGFzIGV4cGVjdGVkLiI7CisKK2Z1
bmN0aW9uIGRlYnVnRWxlbWVudChpZCkgeworICAgIHRlc3RPdXRwdXQgKz0gYFxuXG5UZXN0aW5n
IGVsZW1lbnQgIyR7aWR9XG5gOworICAgIGNvbnN0IGF4RWxlbWVudCA9IGFjY2Vzc2liaWxpdHlD
b250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZChpZCk7CisgICAgaWYgKCFheEVsZW1lbnQp
IHsKKyAgICAgICAgZGVidWcoYFxuRkFJTDogQ291bGRuJ3QgZ2V0IEFYIGVsZW1lbnQgZm9yICMk
e2lkfS5gKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHRlc3RPdXRwdXQgKz0gYXhF
bGVtZW50LnJvbGU7CisgICAgY29uc3QgY29tcHV0ZWRSb2xlU3RyaW5nID0gYXhFbGVtZW50LmNv
bXB1dGVkUm9sZVN0cmluZzsKKyAgICBpZiAoY29tcHV0ZWRSb2xlU3RyaW5nKQorICAgICAgICB0
ZXN0T3V0cHV0ICs9IGBcbmNvbXB1dGVkUm9sZVN0cmluZzogJHtjb21wdXRlZFJvbGVTdHJpbmd9
YDsKKworICAgIGxldCBzdWJyb2xlID0gYXhFbGVtZW50LnN1YnJvbGU7CisgICAgaWYgKHN1YnJv
bGUucmVwbGFjZSgiQVhTdWJyb2xlOiAiLCAiIikpCisgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxu
JHtzdWJyb2xlfWA7Cit9CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsK
KyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKKyAgICBkZWJ1Z0VsZW1lbnQoIm1h
aW4iKTsKKyAgICBkZWJ1Z0VsZW1lbnQoImxpc3QiKTsKKyAgICBkZWJ1Z0VsZW1lbnQoInBhcmFn
cmFwaCIpOworCisgICAgdGVzdE91dHB1dCArPSAiXG5cbkhpZGluZyAjbWFpbiB3aXRoIGFyaWEt
aGlkZGVuPSd0cnVlJy4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWluIikuYXJp
YUhpZGRlbiA9ICJ0cnVlIjsKKyAgICBzZXRUaW1lb3V0KGFzeW5jIGZ1bmN0aW9uKCkgeworICAg
ICAgICBhd2FpdCB3YWl0Rm9yKCgpID0+IHsKKyAgICAgICAgICAgIC8vIFdhaXQgZm9yIHRoZSBt
YWluIHRvIGJlIGhpZGRlbi4KKyAgICAgICAgICAgIHJldHVybiAhYWNjZXNzaWJpbGl0eUNvbnRy
b2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJtYWluIik7CisgICAgICAgIH0pOworICAgICAg
ICBjb25zdCBsaXN0ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRC
eUlkKCJsaXN0Iik7CisgICAgICAgIGNvbnN0IHBhcmFncmFwaCA9IGFjY2Vzc2liaWxpdHlDb250
cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgicGFyYWdyYXBoIik7CisgICAgICAgIGlmICgh
bGlzdCAmJiAhcGFyYWdyYXBoKQorICAgICAgICAgICAgdGVzdE91dHB1dCArPSAiXG5QQVNTOiBB
bGwgZWxlbWVudHMgYXJlIG5vdyBoaWRkZW4uIjsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAg
ICBpZiAobGlzdCkKKyAgICAgICAgICAgICAgICB0ZXN0T3V0cHV0ICs9ICJcbkZBSUw6IDxvbD4g
d2FzIG5vdCBoaWRkZW4gYnkgYXJpYS1oaWRkZW4uIjsKKyAgICAgICAgICAgIGlmIChwYXJhZ3Jh
cGgpCisgICAgICAgICAgICAgICAgdGVzdE91dHB1dCArPSAiXG5GQUlMOiA8cD4gd2FzIG5vdCBo
aWRkZW4gYnkgYXJpYS1oaWRkZW4uIjsKKyAgICAgICAgfQorCisgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJtYWluIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAg
ICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgfSwgMCk7
Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1vd25zLWV4
cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1leHBlY3RlZC50eHQKcmVu
YW1lIHRvIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLW93
bnMtZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMtYXJpYS1vd25zLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvYXJpYS1vd25zLmh0bWwKc2ltaWxhcml0eSBpbmRleCA4OSUKcmVu
YW1lIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEt
b3ducy5odG1sCnJlbmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMvYXJpYS1vd25zLmh0bWwKaW5kZXggYzY2Y2ZmYWZmYTdhLi45YTE3ZWIyZTVmNjIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1hcmlh
LW93bnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvYXJpYS1vd25zLmh0bWwKQEAgLTEsOCArMSw4IEBACiA8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+CiA8aHRtbD4KIDxoZWFkPgotPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy1kZXNjZW5kYW50LW1lbnUtaXRlbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2VuZGFudC1tZW51LWl0ZW0tZXhwZWN0ZWQudHh0
CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMtZGVzY2VuZGFudC1tZW51LWl0ZW0tZXhwZWN0ZWQudHh0CnJl
bmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2Vu
ZGFudC1tZW51LWl0ZW0tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbCBiL0xh
eW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9kZXNjZW5kYW50LW1lbnUt
aXRlbS5odG1sCnNpbWlsYXJpdHkgaW5kZXggODYlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2Fj
Y2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS5odG1sCnJl
bmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2Vu
ZGFudC1tZW51LWl0ZW0uaHRtbAppbmRleCAwYzJiMzljYjcyMDkuLmRkMGQzMWY4MjYwMSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWRlc2Nl
bmRhbnQtbWVudS1pdGVtLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVtLmh0bWwKQEAgLTEsOCArMSw4IEBACiA8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+CiA8aHRtbD4KIDxo
ZWFkPgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2Ny
aXB0PgogPC9oZWFkPgogPGJvZHk+CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1p
Y2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpy
ZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZHlu
YW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRy
ZW4tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4uaHRtbCBiL0xheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9keW5hbWljYWxseS1hZGRlZC1jaGls
ZHJlbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uOGFmOGY4
MDZlMjE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwKQEAgLTAsMCArMSw1
OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1o
ZWxwZXIuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8ZGl2IGlkPSJkaXNwbGF5LWNvbnRl
bnRzLWRpdiIgYXJpYS1sYWJlbD0iRGl2IHdpdGggZGlzcGxheTpjb250ZW50cyIgc3R5bGU9ImRp
c3BsYXk6Y29udGVudHMiPgorICAgIDxkaXYgaWQ9ImRpdi10by1pbnNlcnQtaW50byI+CisgICAg
PC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KK3ZhciB0ZXN0T3V0cHV0ID0gIlRoaXMgdGVzdCBl
bnN1cmVzIHRoYXQgd2UgaW5jbHVkZSBkeW5hbWljYWxseSBhZGRlZCBjb250ZW50IGluIHRoZSBB
WCB0cmVlIHdoZW4gc2FpZCBjb250ZW50IGlzIGFkZGVkIGFzIGEgc3VidHJlZSBvZiBhIGRpc3Bs
YXk6Y29udGVudHMgZWxlbWVudC5cblxuIjsKKwordmFyIGF4Um9vdCA9IGFjY2Vzc2liaWxpdHlD
b250cm9sbGVyLnJvb3RFbGVtZW50OworZnVuY3Rpb24gdHJhdmVyc2VQYWdlKCkgeworICAgIGxl
dCBzZWFyY2hSZXN1bHQgPSBudWxsOworICAgIHdoaWxlICh0cnVlKSB7CisgICAgICAgIHNlYXJj
aFJlc3VsdCA9IGF4Um9vdC51aUVsZW1lbnRGb3JTZWFyY2hQcmVkaWNhdGUoc2VhcmNoUmVzdWx0
LCB0cnVlLCAiQVhBbnlUeXBlU2VhcmNoS2V5IiwgIiIsIGZhbHNlKTsKKyAgICAgICAgaWYgKCFz
ZWFyY2hSZXN1bHQpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY29uc3Qgcm9sZSA9IHNl
YXJjaFJlc3VsdC5yb2xlOworICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbiR7cm9sZX1gOworICAg
ICAgICBpZiAocm9sZS5pbmNsdWRlcygiU3RhdGljVGV4dCIpKSB7CisgICAgICAgICAgICBsZXQg
dGV4dENvbnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJp
b3MiID8gc2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2VhcmNoUmVzdWx0LnN0cmluZ1ZhbHVl
OworICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3RleHRDb250ZW50fWA7CisgICAgICAg
IH0KKyAgICAgICAgdGVzdE91dHB1dCArPSAiXG4iOworICAgIH0KK30KKworaWYgKHdpbmRvdy5h
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKKworICAgIHRlc3RPdXRwdXQgKz0gIlRyYXZlcnNpbmcgcGFnZSBiYXNlZCBvbiBpbml0aWFs
IHN0YXRlLlxuIjsKKyAgICB0cmF2ZXJzZVBhZ2UoKTsKKworICAgIHRlc3RPdXRwdXQgKz0gIlxu
QWRkaW5nIGxpc3QgZWxlbWVudHMgdG8gI2Rpdi10by1pbnNlcnQtaW50byBhbmQgcGVyZm9ybWlu
ZyBhbm90aGVyIHBhZ2UgdHJhdmVyc2FsLlxuIjsKKworICAgIGNvbnN0IHVsID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgidWwiKTsKKyAgICBjb25zdCBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImxpIik7CisgICAgbGkuaW5uZXJIVE1MID0gIkxpc3QgaXRlbSBvbmUiOworICAgIHVsLmFw
cGVuZENoaWxkKGxpKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2LXRvLWluc2Vy
dC1pbnRvIikuYXBwZW5kQ2hpbGQodWwpOworICAgIHNldFRpbWVvdXQoYXN5bmMgZnVuY3Rpb24o
KSB7CisgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4gYXhSb290LnVpRWxlbWVudEZvclNlYXJj
aFByZWRpY2F0ZShheFJvb3QsIHRydWUsICJBWExpc3RTZWFyY2hLZXkiLCAiIiwgZmFsc2UpKTsK
KyAgICAgICAgdHJhdmVyc2VQYWdlKCk7CisKKyAgICAgICAgZGVidWcodGVzdE91dHB1dCk7Cisg
ICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0sIDApOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0CnNp
bWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMtZWxlbWVudC1yb2xlcy1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExh
eW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVzLWV4
cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5
LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkv
ZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVzLmh0bWwKc2ltaWxhcml0eSBpbmRleCA2NiUK
cmVuYW1lIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQtcm9sZXMuaHRtbApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMuaHRtbAppbmRleCBiOTg0MGVlN2RhZWIuLjJiYjk1
YzI0YWRlZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNv
bnRlbnRzLWVsZW1lbnQtcm9sZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy5odG1sCkBAIC0xLDggKzEsOCBAQAogPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgogPGh0bWw+CiA8aGVh
ZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3Njcmlw
dD4KIDxzdHlsZT4KIC50ZXN0Y2FzZSB7IGRpc3BsYXk6IGNvbnRlbnRzIH07CiA8L3N0eWxlPgpA
QCAtOTgsMzcgKzk4LDM3IEBACiA8L2Rpdj4KIAogPHNjcmlwdD4KLSAgICAvLyBCdWZmZXIgdGVz
dCBvdXRwdXQgYW5kIGR1bXAgaXQgYXQgdGhlIGVuZCB0byBtYWtlIHRoZSB0ZXN0IHJ1biBmYXN0
ZXIgdnMuIGluZGl2aWR1YWwgYGRlYnVnYCBjYWxscy4KLSAgICB2YXIgdGVzdE91dHB1dCA9ICJU
aGlzIHRlc3QgZW5zdXJlcyBlbGVtZW50cyB3aXRoIENTUyBkaXNwbGF5OiBjb250ZW50cyBoYXZl
IHRoZSBjb3JyZWN0IHJvbGUuXG5cbiI7Ci0KLSAgICB2YXIgYXhFbGVtZW50OwotICAgIGZ1bmN0
aW9uIHZlcmlmeVJvbGVzKCkgewotICAgICAgICBjb25zdCB0ZXN0Y2FzZXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJ0ZXN0Y2FzZSIpOwotICAgICAgICBmb3IgKGNvbnN0IGRv
bUVsZW1lbnQgb2YgdGVzdGNhc2VzKSB7Ci0gICAgICAgICAgICBjb25zdCBvdXRlckhUTUwgPSBl
c2NhcGVIVE1MKGRvbUVsZW1lbnQuY2xvbmVOb2RlKCkub3V0ZXJIVE1MKTsKLSAgICAgICAgICAg
IGF4RWxlbWVudCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJ
ZChkb21FbGVtZW50LmlkKTsKLSAgICAgICAgICAgIGlmICghYXhFbGVtZW50KSB7Ci0gICAgICAg
ICAgICAgICAgdGVzdE91dHB1dCArPSBgRkFJTC4gQ291bGRuJ3QgZ2V0IEFYIGVsZW1lbnQgZm9y
ICMke2RvbUVsZW1lbnQuaWR9OiAke291dGVySFRNTH1cbmA7Ci0gICAgICAgICAgICAgICAgcmV0
dXJuOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgJHtvdXRlckhU
TUx9XG5gOwotICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgICAgICR7YXhFbGVtZW50LnJvbGV9
YDsKLQotICAgICAgICAgICAgbGV0IGNvbXB1dGVkUm9sZVN0cmluZyA9IGF4RWxlbWVudC5jb21w
dXRlZFJvbGVTdHJpbmc7Ci0gICAgICAgICAgICBpZiAoY29tcHV0ZWRSb2xlU3RyaW5nKQotICAg
ICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgIGNvbXB1dGVkUm9sZVN0cmluZzogJHtj
b21wdXRlZFJvbGVTdHJpbmd9YDsKLQotICAgICAgICAgICAgbGV0IHN1YnJvbGUgPSBheEVsZW1l
bnQuc3Vicm9sZTsKLSAgICAgICAgICAgIGlmIChzdWJyb2xlLnJlcGxhY2UoIkFYU3Vicm9sZTog
IiwgIiIpKQotICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgICR7c3Vicm9sZX1g
OwotICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG5cbmA7CisvLyBCdWZmZXIgdGVzdCBvdXRw
dXQgYW5kIGR1bXAgaXQgYXQgdGhlIGVuZCB0byBtYWtlIHRoZSB0ZXN0IHJ1biBmYXN0ZXIgdnMu
IGluZGl2aWR1YWwgYGRlYnVnYCBjYWxscy4KK3ZhciB0ZXN0T3V0cHV0ID0gIlRoaXMgdGVzdCBl
bnN1cmVzIGVsZW1lbnRzIHdpdGggQ1NTIGRpc3BsYXk6IGNvbnRlbnRzIGhhdmUgdGhlIGNvcnJl
Y3Qgcm9sZS5cblxuIjsKKwordmFyIGF4RWxlbWVudDsKK2Z1bmN0aW9uIHZlcmlmeVJvbGVzKCkg
eworICAgIGNvbnN0IHRlc3RjYXNlcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUo
InRlc3RjYXNlIik7CisgICAgZm9yIChjb25zdCBkb21FbGVtZW50IG9mIHRlc3RjYXNlcykgewor
ICAgICAgICBjb25zdCBvdXRlckhUTUwgPSBlc2NhcGVIVE1MKGRvbUVsZW1lbnQuY2xvbmVOb2Rl
KCkub3V0ZXJIVE1MKTsKKyAgICAgICAgYXhFbGVtZW50ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKGRvbUVsZW1lbnQuaWQpOworICAgICAgICBpZiAoIWF4
RWxlbWVudCkgeworICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgRkFJTC4gQ291bGRuJ3QgZ2V0
IEFYIGVsZW1lbnQgZm9yICMke2RvbUVsZW1lbnQuaWR9OiAke291dGVySFRNTH1cbmA7CisgICAg
ICAgICAgICByZXR1cm47CiAgICAgICAgIH0KLSAgICB9CisgICAgICAgIHRlc3RPdXRwdXQgKz0g
YCR7b3V0ZXJIVE1MfVxuYDsKKyAgICAgICAgdGVzdE91dHB1dCArPSBgICAgICR7YXhFbGVtZW50
LnJvbGV9YDsKKworICAgICAgICBsZXQgY29tcHV0ZWRSb2xlU3RyaW5nID0gYXhFbGVtZW50LmNv
bXB1dGVkUm9sZVN0cmluZzsKKyAgICAgICAgaWYgKGNvbXB1dGVkUm9sZVN0cmluZykKKyAgICAg
ICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgIGNvbXB1dGVkUm9sZVN0cmluZzogJHtjb21wdXRl
ZFJvbGVTdHJpbmd9YDsKIAotICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIp
IHsKLSAgICAgICAgdmVyaWZ5Um9sZXMoKTsKLSAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImNvbnRlbnQiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgIGRlYnVn
KHRlc3RPdXRwdXQpOworICAgICAgICBsZXQgc3Vicm9sZSA9IGF4RWxlbWVudC5zdWJyb2xlOwor
ICAgICAgICBpZiAoc3Vicm9sZS5yZXBsYWNlKCJBWFN1YnJvbGU6ICIsICIiKSkKKyAgICAgICAg
ICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgICR7c3Vicm9sZX1gOworICAgICAgICB0ZXN0T3V0cHV0
ICs9IGBcblxuYDsKICAgICB9Cit9CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIpIHsKKyAgICB2ZXJpZnlSb2xlcygpOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJj
b250ZW50Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRlYnVnKHRlc3RPdXRw
dXQpOworfQogPC9zY3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvbGlzdC1leHBlY3RlZC50eHQKc2ltaWxh
cml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlz
cGxheS1jb250ZW50cy1saXN0LWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2xpc3QtZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtbGlzdC5odG1sIGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2xpc3QuaHRtbApzaW1p
bGFyaXR5IGluZGV4IDkyJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMtbGlzdC5odG1sCnJlbmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMvbGlzdC5odG1sCmluZGV4IDUwYjRiMjBmOGMxYS4uMjRjZGRk
NzcxZjlhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMtbGlzdC5odG1sCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy9saXN0Lmh0bWwKQEAgLTEsOCArMSw4IEBACiA8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+CiA8aHRtbD4KIDxoZWFkPgotPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9kaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQKc2ltaWxhcml0
eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxh
eS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5nLWV4cGVj
dGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNv
bnRlbnRzLW9iamVjdC1vcmRlcmluZy5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sCnNpbWlsYXJpdHkgaW5kZXggNjYl
CnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1v
YmplY3Qtb3JkZXJpbmcuaHRtbApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sCmluZGV4IDNiN2M3ZGEwNDlmMS4u
ZTRmZTliOTllYjViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMtb2JqZWN0LW9yZGVyaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sCkBAIC0xLDggKzEs
OCBAQAogPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgogPGh0
bWw+CiA8aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxw
ZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxw
ZXIuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0Lmpz
Ij48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5PgogCkBAIC00NiwzNiArNDYsMzYgQEAKIDwvZGl2
PgogCiA8c2NyaXB0PgotICAgIHZhciB0ZXN0T3V0cHV0ID0gIlRoaXMgdGVzdCBlbnN1cmVzIHRo
YXQgZGlzcGxheTpjb250ZW50cyBlbGVtZW50cyBhcmUgaW5zZXJ0ZWQgaW4gdGhlIGNvcnJlY3Qg
cGxhY2UgaW4gdGhlIEFYIHRyZWUuXG5cbiI7Cit2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3Qg
ZW5zdXJlcyB0aGF0IGRpc3BsYXk6Y29udGVudHMgZWxlbWVudHMgYXJlIGluc2VydGVkIGluIHRo
ZSBjb3JyZWN0IHBsYWNlIGluIHRoZSBBWCB0cmVlLlxuXG4iOwogCi0gICAgZnVuY3Rpb24gdHJh
dmVyc2UoY29udGFpbmVySWQpIHsKLSAgICAgICAgdGVzdE91dHB1dCArPSBgXG5QZXJmb3JtaW5n
IHNlYXJjaCB0cmF2ZXJzYWwgb2YgIyR7Y29udGFpbmVySWR9LlxuYDsKLSAgICAgICAgY29uc3Qg
Y29udGFpbmVyID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlk
KGNvbnRhaW5lcklkKTsKLSAgICAgICAgbGV0IHNlYXJjaFJlc3VsdCA9IG51bGw7Ci0gICAgICAg
IHdoaWxlICh0cnVlKSB7Ci0gICAgICAgICAgICBzZWFyY2hSZXN1bHQgPSBjb250YWluZXIudWlF
bGVtZW50Rm9yU2VhcmNoUHJlZGljYXRlKHNlYXJjaFJlc3VsdCwgdHJ1ZSwgIkFYQW55VHlwZVNl
YXJjaEtleSIsICIiLCBmYWxzZSk7Ci0gICAgICAgICAgICBpZiAoIXNlYXJjaFJlc3VsdCkKLSAg
ICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNvbnN0IHJvbGUgPSBzZWFyY2hSZXN1
bHQucm9sZTsKLSAgICAgICAgICAgIGNvbnN0IGlkID0gc2VhcmNoUmVzdWx0LmRvbUlkZW50aWZp
ZXI7Ci0gICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbiR7aWQgPyBgIyR7aWR9IGAgOiAiIn0k
e3JvbGV9YDsKLSAgICAgICAgICAgIGlmIChyb2xlLmluY2x1ZGVzKCJTdGF0aWNUZXh0IikpIHsK
LSAgICAgICAgICAgICAgICBsZXQgdGV4dENvbnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxl
ci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiID8gc2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2Vh
cmNoUmVzdWx0LnN0cmluZ1ZhbHVlOwotICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxu
JHt0ZXh0Q29udGVudH1gOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgdGVzdE91dHB1dCAr
PSAiXG4iOworZnVuY3Rpb24gdHJhdmVyc2UoY29udGFpbmVySWQpIHsKKyAgICB0ZXN0T3V0cHV0
ICs9IGBcblBlcmZvcm1pbmcgc2VhcmNoIHRyYXZlcnNhbCBvZiAjJHtjb250YWluZXJJZH0uXG5g
OworICAgIGNvbnN0IGNvbnRhaW5lciA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2li
bGVFbGVtZW50QnlJZChjb250YWluZXJJZCk7CisgICAgbGV0IHNlYXJjaFJlc3VsdCA9IG51bGw7
CisgICAgd2hpbGUgKHRydWUpIHsKKyAgICAgICAgc2VhcmNoUmVzdWx0ID0gY29udGFpbmVyLnVp
RWxlbWVudEZvclNlYXJjaFByZWRpY2F0ZShzZWFyY2hSZXN1bHQsIHRydWUsICJBWEFueVR5cGVT
ZWFyY2hLZXkiLCAiIiwgZmFsc2UpOworICAgICAgICBpZiAoIXNlYXJjaFJlc3VsdCkKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjb25zdCByb2xlID0gc2VhcmNoUmVzdWx0LnJvbGU7Cisg
ICAgICAgIGNvbnN0IGlkID0gc2VhcmNoUmVzdWx0LmRvbUlkZW50aWZpZXI7CisgICAgICAgIHRl
c3RPdXRwdXQgKz0gYFxuJHtpZCA/IGAjJHtpZH0gYCA6ICIifSR7cm9sZX1gOworICAgICAgICBp
ZiAocm9sZS5pbmNsdWRlcygiU3RhdGljVGV4dCIpKSB7CisgICAgICAgICAgICBsZXQgdGV4dENv
bnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiID8g
c2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2VhcmNoUmVzdWx0LnN0cmluZ1ZhbHVlOworICAg
ICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3RleHRDb250ZW50fWA7CiAgICAgICAgIH0KKyAg
ICAgICAgdGVzdE91dHB1dCArPSAiXG4iOwogICAgIH0KK30KIAotICAgIGlmICh3aW5kb3cuYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKLSAgICAgICAgdHJhdmVyc2UoImJ1dHRvbi1jb250YWlu
ZXIiKTsKLSAgICAgICAgdHJhdmVyc2UoImhlYWRpbmctY29udGFpbmVyIik7Ci0gICAgICAgIHRy
YXZlcnNlKCJtaXhlZC1lbGVtZW50LWNvbnRhaW5lciIpOworaWYgKHdpbmRvdy5hY2Nlc3NpYmls
aXR5Q29udHJvbGxlcikgeworICAgIHRyYXZlcnNlKCJidXR0b24tY29udGFpbmVyIik7CisgICAg
dHJhdmVyc2UoImhlYWRpbmctY29udGFpbmVyIik7CisgICAgdHJhdmVyc2UoIm1peGVkLWVsZW1l
bnQtY29udGFpbmVyIik7CiAKLSAgICAgICAgZm9yIChjb25zdCBjb250YWluZXJJZCBvZiBbImJ1
dHRvbi1jb250YWluZXIiLCAiaGVhZGluZy1jb250YWluZXIiLCAibWl4ZWQtZWxlbWVudC1jb250
YWluZXIiXSkKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNvbnRhaW5lcklk
KS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgIGRlYnVnKHRlc3RPdXRwdXQp
OwotICAgIH0KKyAgICBmb3IgKGNvbnN0IGNvbnRhaW5lcklkIG9mIFsiYnV0dG9uLWNvbnRhaW5l
ciIsICJoZWFkaW5nLWNvbnRhaW5lciIsICJtaXhlZC1lbGVtZW50LWNvbnRhaW5lciJdKQorICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChjb250YWluZXJJZCkuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOworICAgIGRlYnVnKHRlc3RPdXRwdXQpOworfQogPC9zY3JpcHQ+CiA8L2Jv
ZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50
eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4dApyZW5h
bWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10
cmF2ZXJzYWwtZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZlcnNhbC5odG1sIGIvTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjg4M2Y1ZTZlMGIxMAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9z
ZWFyY2gtdHJhdmVyc2FsLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxwZXIuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorCis8ZGl2IGlkPSJjb250YWluZXIiIHJvbGU9Imdyb3VwIj4KKyAgICA8cD5Db250
ZW50IGJlZm9yZSBtYWluLjwvcD4KKworICAgIDxtYWluPgorCisgICAgPGgxPk5vIHN0eWxlIGNo
YW5nZXM8L2gxPgorICAgIDxkaXYgcm9sZT0idG9vbGJhciI+CisgICAgICAgIDxkaXY+CisgICAg
ICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4K
KworICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24gdGhlIHRvb2xiYXI8L2gxPgorICAgIDxk
aXYgcm9sZT0idG9vbGJhciIgc3R5bGU9ImRpc3BsYXk6IGNvbnRlbnRzOyI+CisgICAgICAgIDxk
aXY+CisgICAgICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgorICAgICAgICA8L2Rpdj4KKyAg
ICA8L2Rpdj4KKworICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24gdGhlIGdlbmVyaWMgZGl2
PC9oMT4KKyAgICA8ZGl2IHJvbGU9InRvb2xiYXIiPgorICAgICAgICA8ZGl2IHN0eWxlPSJkaXNw
bGF5OiBjb250ZW50czsiPgorICAgICAgICAgICAgPGJ1dHRvbj5Gb288L2J1dHRvbj4KKyAgICAg
ICAgPC9kaXY+CisgICAgPC9kaXY+CisKKyAgICA8aDE+ZGlzcGxheTogY29udGVudHM7IG9uIHRo
ZSBidXR0b248L2gxPgorICAgIDxkaXYgcm9sZT0idG9vbGJhciI+CisgICAgICAgIDxkaXY+Cisg
ICAgICAgICAgICA8YnV0dG9uIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50czsiPkZvbzwvYnV0dG9u
PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKworICAgIDwvbWFpbj4KKworICAgIDxwPkNv
bnRlbnQgYWZ0ZXIgbWFpbi48L3A+Cis8L2Rpdj4KKworPHNjcmlwdD4KK3ZhciB0ZXN0T3V0cHV0
ID0gIlRoaXMgdGVzdCBlbnN1cmVzIHdlIGNhbiB0cmF2ZXJzZSB0aHJvdWdoIGJhc2ljIHdlYnBh
Z2VzIHdpdGggbXVsdGlwbGUgZGlzcGxheTogY29udGVudHMgZWxlbWVudHMgdmlhIHNlYXJjaC5c
biI7CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICBjb25zdCBj
b250YWluZXJFbGVtZW50ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1l
bnRCeUlkKCJjb250YWluZXIiKTsKKworICAgIGxldCBlbGVtZW50Q291bnQgPSAwOworICAgIGxl
dCBzZWFyY2hSZXN1bHQgPSBudWxsOworICAgIHdoaWxlICh0cnVlKSB7CisgICAgICAgIHNlYXJj
aFJlc3VsdCA9IGNvbnRhaW5lckVsZW1lbnQudWlFbGVtZW50Rm9yU2VhcmNoUHJlZGljYXRlKHNl
YXJjaFJlc3VsdCwgdHJ1ZSwgIkFYQW55VHlwZVNlYXJjaEtleSIsICIiLCBmYWxzZSk7CisgICAg
ICAgIGlmICghc2VhcmNoUmVzdWx0KQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNvbnN0
IHJvbGUgPSBzZWFyY2hSZXN1bHQucm9sZTsKKyAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3Jv
bGV9YDsKKyAgICAgICAgaWYgKHJvbGUuaW5jbHVkZXMoIlN0YXRpY1RleHQiKSkgeworICAgICAg
ICAgICAgbGV0IHRleHRDb250ZW50ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1O
YW1lID09PSAiaW9zIiA/IHNlYXJjaFJlc3VsdC5kZXNjcmlwdGlvbiA6IHNlYXJjaFJlc3VsdC5z
dHJpbmdWYWx1ZTsKKyAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuJHt0ZXh0Q29udGVudH1g
OworICAgICAgICB9CisKKyAgICAgICAgdGVzdE91dHB1dCArPSAiXG4iOworICAgICAgICBlbGVt
ZW50Q291bnQgKz0gMTsKKyAgICB9CisgICAgdGVzdE91dHB1dCArPSBgXG5UcmF2ZXJzZWQgJHtl
bGVtZW50Q291bnR9IGVsZW1lbnRzLmA7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNv
bnRhaW5lciIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkZWJ1Zyh0ZXN0T3V0
cHV0KTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy90ZXh0LXVuZGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpy
ZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHQK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90
ZXh0LXVuZGVyLWVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxh
eS1jb250ZW50cy90ZXh0LXVuZGVyLWVsZW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAuLmY4MGExMjdmYjBiYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90ZXh0LXVuZGVyLWVsZW1lbnQu
aHRtbApAQCAtMCwwICsxLDM5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxidXR0
b24gaWQ9ImJ1dHRvbiIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMiPkNsaWNrIG1lPC9idXR0b24+
CisKKzxzY3JpcHQ+Cit2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHdl
IGNhbiBnZXQgdGhlIHRleHQgdW5kZXIgYSBkaXNwbGF5OmNvbnRlbnRzIGVsZW1lbnQgaW4gYWNj
ZXNzaWJpbGl0eSByZXF1ZXN0cy5cblxuIjsKKworZnVuY3Rpb24gdGV4dFVuZGVyRWxlbWVudChh
eEVsZW1lbnQpIHsKKyAgICBpZiAoYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1OYW1l
ID09PSAiaW9zIikKKyAgICAgICAgcmV0dXJuIGF4RWxlbWVudC5kZXNjcmlwdGlvbjsKKyAgICBy
ZXR1cm4gYXhFbGVtZW50LnRpdGxlOworfQorCitpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250
cm9sbGVyKSB7CisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisgICAgY29uc3Qg
YXhCdXR0b24gPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQo
ImJ1dHRvbiIpOworICAgIHRlc3RPdXRwdXQgKz0gYCR7dGV4dFVuZGVyRWxlbWVudChheEJ1dHRv
bil9XG5gOworCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ1dHRvbiIpLmlubmVySFRN
TCA9ICIiOworICAgIHRlc3RPdXRwdXQgKz0gIlxuQ2xlYXJpbmcgaW5uZXJIVE1MIG9mICNidXR0
b24uXG5cbiI7CisgICAgc2V0VGltZW91dChhc3luYyBmdW5jdGlvbigpIHsKKyAgICAgICAgYXdh
aXQgd2FpdEZvcigoKSA9PiAhdGV4dFVuZGVyRWxlbWVudChheEJ1dHRvbikuaW5jbHVkZXMoIkNs
aWNrIG1lIikpOworICAgICAgICB0ZXN0T3V0cHV0ICs9IGAke3RleHRVbmRlckVsZW1lbnQoYXhC
dXR0b24pfVxuYDsKKworICAgICAgICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKKyAgICAgICAgZmluaXNo
SlNUZXN0KCk7CisgICAgfSwgMCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Ry
ZWUtYW5kLXRyZWVpdGVtcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvdHJlZS1hbmQtdHJlZWl0ZW1zLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjMzNjNmNTQ1ODk5ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90cmVl
LWFuZC10cmVlaXRlbXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDQgQEAKK1RoaXMgdGVzdHMg
dGhhdCBhcmlhIHRyZWVzIGFuZCB0cmVlIGl0ZW1zIGFyZSBjb252ZXJ0ZWQgaW50byBBWE91dGxp
bmVzIGFuZCBBWFJvd3MsIHdpdGggYWxsIHRoZSByaWdodCBhdHRyaWJ1dGVzLgorCitQQVNTOiB0
cmVlLnJvbGUgPT09ICdBWFJvbGU6IEFYT3V0bGluZScKK1BBU1M6IGNhblNldFJvd3MgPT09IHRy
dWUKK1BBU1M6IHRyZWUuY2hpbGRyZW5Db3VudCA9PT0gOAorUEFTUzogdHJlZWl0ZW0xLnJvbGUg
PT09ICdBWFJvbGU6IEFYUm93JworUEFTUzogdHJlZWl0ZW0xLnN1YnJvbGUgPT09ICdBWFN1YnJv
bGU6IEFYT3V0bGluZVJvdycKK1BBU1M6IHRyZWVpdGVtMS5pc0V4cGFuZGVkID09PSB0cnVlCitQ
QVNTOiB0cmVlaXRlbTEuaGllcmFyY2hpY2FsTGV2ZWwgPT09IDAKK1BBU1M6IHRyZWVpdGVtMS5p
c0F0dHJpYnV0ZVN1cHBvcnRlZCgnQVhWYWx1ZScpID09PSB0cnVlCitQQVNTOiBjYW5TZXREaXNj
bG9zaW5nID09PSB0cnVlCitQQVNTOiB0cmVlaXRlbTIucm9sZSA9PT0gJ0FYUm9sZTogQVhSb3cn
CitQQVNTOiB0cmVlaXRlbTIuc3Vicm9sZSA9PT0gJ0FYU3Vicm9sZTogQVhPdXRsaW5lUm93Jwor
UEFTUzogdHJlZWl0ZW0yLmlzRXhwYW5kZWQgPT09IGZhbHNlCitQQVNTOiB0cmVlaXRlbTIuaGll
cmFyY2hpY2FsTGV2ZWwgPT09IDEKK1BBU1M6IHRyZWVpdGVtMi5kaXNjbG9zZWRCeVJvdygpLmlz
RXF1YWwodHJlZWl0ZW0xKSA9PT0gdHJ1ZQorUEFTUzogY2FuU2V0RGlzY2xvc2luZyA9PT0gZmFs
c2UKK1BBU1M6IHRyZWVpdGVtMy5zdHJpbmdWYWx1ZSA9PT0gJ0FYVmFsdWU6IEJpcmRzJworUEFT
UzogY2FuU2V0RGlzY2xvc2luZyA9PT0gZmFsc2UKK1BBU1M6IHRyZWVpdGVtMy5yb2xlID09PSAn
QVhSb2xlOiBBWFJvdycKK1BBU1M6IHRyZWVpdGVtMy5zdWJyb2xlID09PSAnQVhTdWJyb2xlOiBB
WE91dGxpbmVSb3cnCitQQVNTOiB0cmVlaXRlbTMuaXNFeHBhbmRlZCA9PT0gdHJ1ZQorUEFTUzog
dHJlZWl0ZW0zLmlzU2VsZWN0ZWQgPT09IGZhbHNlCitQQVNTOiB0cmVlaXRlbTMuaXNTZWxlY3Rl
ZCA9PT0gdHJ1ZQorUEFTUzogc2VsZWN0ZWRSb3cuaXNFcXVhbCh0cmVlaXRlbTMpID09PSB0cnVl
CitQQVNTOiB0cmVlaXRlbTQuaGllcmFyY2hpY2FsTGV2ZWwgPT09IDAKK1BBU1M6IHRyZWVpdGVt
NS5oaWVyYXJjaGljYWxMZXZlbCA9PT0gMQorUEFTUzogdHJlZWl0ZW02LmhpZXJhcmNoaWNhbExl
dmVsID09PSAxCisKK1VwZGF0aW5nIGFyaWEtbGV2ZWwgb2YgI3RyZWVpdGVtMiB0byAzLgorUEFT
UzogdHJlZWl0ZW0yLmhpZXJhcmNoaWNhbExldmVsID09PSAyCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorQW5pbWFscworQmlyZHMKKyBDYXRzCitT
aWFtZXNlCisgVGFiYnkKK1ZlZ2V0YWJsZXMKK0NhcnJvdHMKKyBCcm9jY29saQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvdHJlZS1hbmQt
dHJlZWl0ZW1zLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvdHJlZS1hbmQtdHJlZWl0ZW1zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwLi4yMTkyZTg5YzBlNWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvdHJlZS1hbmQtdHJlZWl0ZW1zLmh0bWwKQEAg
LTAsMCArMSwxMTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2FjY2Vz
c2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPHVsIGlkPSJ0cmVl
IiByb2xlPSJ0cmVlIiBzdHlsZT0iZGlzcGxheTpjb250ZW50cyIgYXJpYS1sYWJlbGxlZGJ5PSJ0
cmVlbGFiZWwiIGFyaWEtYWN0aXZlZGVzY2VuZGFudD0idHJlZTBfaXRlbTBfMl8wXzEiIHRhYmlu
ZGV4PSIwIj4KKyAgICA8bGkgaWQ9InRyZWVpdGVtMSIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMi
IHJvbGU9InRyZWVpdGVtIiBhcmlhLWxldmVsPSIxIiBhcmlhLWV4cGFuZGVkPSJ0cnVlIiBhcmlh
LWNoZWNrZWQ9InRydWUiPgorICAgICAgICA8c3Bhbj4KKyAgICAgICAgICAgIDxzcGFuIGNsYXNz
PSJleHBhbmRlciI+PC9zcGFuPgorICAgICAgICAgICAgQW5pbWFscworICAgICAgICAgICAgPC9z
cGFuPgorICAgICAgICAgICAgPHVsIHJvbGU9Imdyb3VwIj4KKyAgICAgICAgICAgICAgICA8ZGl2
IGlkPSJ0cmVlaXRlbTIiIHN0eWxlPSJkaXNwbGF5OmNvbnRlbnRzIiByb2xlPSJ0cmVlaXRlbSIg
YXJpYS1sZXZlbD0iMiI+PHNwYW4+QmlyZHM8L3NwYW4+PC9kaXY+CisgICAgICAgICAgICAgICAg
PGxpIGlkPSJ0cmVlaXRlbTMiIHN0eWxlPSJkaXNwbGF5OmNvbnRlbnRzIiByb2xlPSJ0cmVlaXRl
bSIgYXJpYS1sZXZlbD0iMiIgYXJpYS1leHBhbmRlZD0idHJ1ZSI+CisgICAgICAgICAgICAgICAg
ICAgIDxzcGFuPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZGVy
Ij48L3NwYW4+CisgICAgICAgICAgICAgICAgICAgICAgICBDYXRzCisgICAgICAgICAgICAgICAg
ICAgIDwvc3Bhbj4KKyAgICAgICAgICAgICAgICAgICAgPHVsIHJvbGU9Imdyb3VwIj4KKyAgICAg
ICAgICAgICAgICAgICAgICAgIDxsaSBpZD0idHJlZTBfaXRlbTBfMV8wIiByb2xlPSJ0cmVlaXRl
bSIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMiIGFyaWEtbGV2ZWw9IjMiPjxzcGFuPlNpYW1lc2U8
L3NwYW4+PC9saT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBpZD0idHJlZTBfaXRlbTBf
MV8xIiByb2xlPSJ0cmVlaXRlbSIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMiIGFyaWEtbGV2ZWw9
IjMiPjxzcGFuPlRhYmJ5PC9zcGFuPjwvbGk+CisgICAgICAgICAgICAgICAgICAgIDwvdWw+Cisg
ICAgICAgICAgICAgICAgPC9saT4KKyAgICAgICAgICAgIDwvdWw+CisgICAgICAgIDwvc3Bhbj4K
KyAgICA8L2xpPgorCisgICAgPGxpIGlkPSJ0cmVlaXRlbTQiIHJvbGU9InRyZWVpdGVtIiBzdHls
ZT0iZGlzcGxheTpjb250ZW50cyIgYXJpYS1leHBhbmRlZD0idHJ1ZSI+CisgICAgICAgIDxzcGFu
PgorICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZGVyIj48L3NwYW4+CisgICAgICAgICAg
ICBWZWdldGFibGVzCisgICAgICAgICAgICA8L3NwYW4+CisgICAgICAgICAgICA8dWwgcm9sZT0i
Z3JvdXAiPgorICAgICAgICAgICAgICAgIDxkaXYgaWQ9InRyZWVpdGVtNSIgc3R5bGU9ImRpc3Bs
YXk6Y29udGVudHMiIHJvbGU9InRyZWVpdGVtIj48c3Bhbj5DYXJyb3RzPC9zcGFuPjwvZGl2Pgor
ICAgICAgICAgICAgICAgIDxkaXYgaWQ9InRyZWVpdGVtNiIgc3R5bGU9ImRpc3BsYXk6Y29udGVu
dHMiIHJvbGU9InRyZWVpdGVtIj48c3Bhbj5Ccm9jY29saTwvc3Bhbj48L2Rpdj4KKyAgICAgICAg
ICAgIDwvdWw+CisgICAgICAgIDwvc3Bhbj4KKyAgICA8L2xpPgorPC91bD4KKworPHNjcmlwdD4K
K3ZhciBvdXRwdXQgPSAiVGhpcyB0ZXN0cyB0aGF0IGFyaWEgdHJlZXMgYW5kIHRyZWUgaXRlbXMg
YXJlIGNvbnZlcnRlZCBpbnRvIEFYT3V0bGluZXMgYW5kIEFYUm93cywgd2l0aCBhbGwgdGhlIHJp
Z2h0IGF0dHJpYnV0ZXMuXG5cbiI7CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIpIHsKKyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKKyAgICAvLyBUZXN0IHRy
ZWUgYXR0cmlidXRlcy4KKyAgICB2YXIgdHJlZSA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFj
Y2Vzc2libGVFbGVtZW50QnlJZCgidHJlZSIpOworICAgIG91dHB1dCArPSBleHBlY3QoInRyZWUu
cm9sZSIsICInQVhSb2xlOiBBWE91dGxpbmUnIik7CisgICAgdmFyIGNhblNldFJvd3MgPSB0cmVl
LmlzQXR0cmlidXRlU2V0dGFibGUoJ0FYU2VsZWN0ZWRSb3dzJyk7CisgICAgb3V0cHV0ICs9IGV4
cGVjdCgiY2FuU2V0Um93cyIsICJ0cnVlIik7CisgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZS5j
aGlsZHJlbkNvdW50IiwgIjgiKTsKKworICAgIC8vIFRlc3QgdHJlZSBpdGVtIGF0dHJpYnV0ZXMu
CisgICAgdmFyIHRyZWVpdGVtMSA9IHRyZWUuY2hpbGRBdEluZGV4KDApOworICAgIG91dHB1dCAr
PSBleHBlY3QoInRyZWVpdGVtMS5yb2xlIiwgIidBWFJvbGU6IEFYUm93JyIpOworICAgIG91dHB1
dCArPSBleHBlY3QoInRyZWVpdGVtMS5zdWJyb2xlIiwgIidBWFN1YnJvbGU6IEFYT3V0bGluZVJv
dyciKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTEuaXNFeHBhbmRlZCIsICJ0cnVl
Iik7CisgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZWl0ZW0xLmhpZXJhcmNoaWNhbExldmVsIiwg
IjAiKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTEuaXNBdHRyaWJ1dGVTdXBwb3J0
ZWQoJ0FYVmFsdWUnKSIsICJ0cnVlIik7CisgICAgdmFyIGNhblNldERpc2Nsb3NpbmcgPSB0cmVl
aXRlbTEuaXNBdHRyaWJ1dGVTZXR0YWJsZSgnQVhEaXNjbG9zaW5nJyk7CisgICAgb3V0cHV0ICs9
IGV4cGVjdCgiY2FuU2V0RGlzY2xvc2luZyIsICJ0cnVlIik7CisKKyAgICB2YXIgdHJlZWl0ZW0y
ID0gdHJlZWl0ZW0xLmRpc2Nsb3NlZFJvd0F0SW5kZXgoMCk7CisgICAgb3V0cHV0ICs9IGV4cGVj
dCgidHJlZWl0ZW0yLnJvbGUiLCAiJ0FYUm9sZTogQVhSb3cnIik7CisgICAgb3V0cHV0ICs9IGV4
cGVjdCgidHJlZWl0ZW0yLnN1YnJvbGUiLCAiJ0FYU3Vicm9sZTogQVhPdXRsaW5lUm93JyIpOwor
ICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMi5pc0V4cGFuZGVkIiwgImZhbHNlIik7Cisg
ICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZWl0ZW0yLmhpZXJhcmNoaWNhbExldmVsIiwgIjEiKTsK
KyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTIuZGlzY2xvc2VkQnlSb3coKS5pc0VxdWFs
KHRyZWVpdGVtMSkiLCAidHJ1ZSIpOworICAgIGNhblNldERpc2Nsb3NpbmcgPSB0cmVlaXRlbTIu
aXNBdHRyaWJ1dGVTZXR0YWJsZSgnQVhEaXNjbG9zaW5nJyk7CisgICAgb3V0cHV0ICs9IGV4cGVj
dCgiY2FuU2V0RGlzY2xvc2luZyIsICJmYWxzZSIpOworCisgICAgdmFyIHRyZWVpdGVtMyA9IHRy
ZWVpdGVtMi5jaGlsZEF0SW5kZXgoMCk7CisgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZWl0ZW0z
LnN0cmluZ1ZhbHVlIiwgIidBWFZhbHVlOiBCaXJkcyciKTsKKyAgICBjYW5TZXREaXNjbG9zaW5n
ID0gdHJlZWl0ZW0zLmlzQXR0cmlidXRlU2V0dGFibGUoJ0FYRGlzY2xvc2luZycpOworICAgIG91
dHB1dCArPSBleHBlY3QoImNhblNldERpc2Nsb3NpbmciLCAiZmFsc2UiKTsKKworICAgIC8vIFRl
c3QgbW9yZSBBWFJvdyBhdHRyaWJ1dGVzIGFuZCB2YWx1ZXMgYXMgd2UgZGl2ZSBmdXJ0aGVyIGlu
LgorICAgIHRyZWVpdGVtMyA9IHRyZWVpdGVtMS5kaXNjbG9zZWRSb3dBdEluZGV4KDEpOworICAg
IG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMy5yb2xlIiwgIidBWFJvbGU6IEFYUm93JyIpOwor
ICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMy5zdWJyb2xlIiwgIidBWFN1YnJvbGU6IEFY
T3V0bGluZVJvdyciKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTMuaXNFeHBhbmRl
ZCIsICJ0cnVlIik7CisKKyAgICAvLyBUZXN0IHRoYXQgdGhlIHJvdyBjYW4gYmUgc2VsZWN0ZWQg
Y29ycmVjdGx5LgorICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMy5pc1NlbGVjdGVkIiwg
ImZhbHNlIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRyZWVpdGVtMyIpLnNldEF0
dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsIHRydWUpOworICAgIG91dHB1dCArPSBleHBlY3QoInRy
ZWVpdGVtMy5pc1NlbGVjdGVkIiwgInRydWUiKTsKKworICAgIC8vIFRlc3QgdGhhdCB0aGUgdHJl
ZSByZXBvcnRzIHRoZSByaWdodCBzZWxlY3RlZCByb3cgKHRyZWVpdGVtMykKKyAgICB2YXIgc2Vs
ZWN0ZWRSb3cgPSB0cmVlLnNlbGVjdGVkUm93QXRJbmRleCgwKTsKKyAgICBvdXRwdXQgKz0gZXhw
ZWN0KCJzZWxlY3RlZFJvdy5pc0VxdWFsKHRyZWVpdGVtMykiLCAidHJ1ZSIpOworCisgICAgLy8g
VGVzdCB0aGF0IGhpZXJhcmNoaWNhbExldmVsIGNhbiBiZSBjb21wdXRlZCBhdXRvbWF0aWNhbGx5
LCBhbmQgdGhhdCBpdCdzIGNvbnNpc3RlbnQgd2l0aCB0aGUgQVJJQSBsZXZlbC4KKyAgICB2YXIg
dHJlZWl0ZW00ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlk
KCJ0cmVlaXRlbTQiKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTQuaGllcmFyY2hp
Y2FsTGV2ZWwiLCAiMCIpOworCisgICAgdmFyIHRyZWVpdGVtNSA9IGFjY2Vzc2liaWxpdHlDb250
cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidHJlZWl0ZW01Iik7CisgICAgb3V0cHV0ICs9
IGV4cGVjdCgidHJlZWl0ZW01LmhpZXJhcmNoaWNhbExldmVsIiwgIjEiKTsKKworICAgIHZhciB0
cmVlaXRlbTYgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQo
InRyZWVpdGVtNiIpOworICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtNi5oaWVyYXJjaGlj
YWxMZXZlbCIsICIxIik7CisKKyAgICBvdXRwdXQgKz0gIlxuVXBkYXRpbmcgYXJpYS1sZXZlbCBv
ZiAjdHJlZWl0ZW0yIHRvIDMuXG4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0cmVl
aXRlbTIiKS5zZXRBdHRyaWJ1dGUoImFyaWEtbGV2ZWwiLCAiMyIpOworICAgIHNldFRpbWVvdXQo
YXN5bmMgZnVuY3Rpb24oKSB7CisgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4gdHJlZWl0ZW0y
LmhpZXJhcmNoaWNhbExldmVsID09PSAyKTsKKyAgICAgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJl
ZWl0ZW0yLmhpZXJhcmNoaWNhbExldmVsIiwgIjIiKTsKKworICAgICAgICBkZWJ1ZyhvdXRwdXQp
OworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9LCAwKTsKK30KKzwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Rl
eHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1YjMwZGYyNTAyOS4uMDAwMDAwMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvdGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLQotPGJ1dHRvbiBpZD0iYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpjb250ZW50cyI+Q2xp
Y2sgbWU8L2J1dHRvbj4KLQotPHNjcmlwdD4KLSAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRl
c3QgZW5zdXJlcyB0aGF0IHdlIGNhbiBnZXQgdGhlIHRleHQgdW5kZXIgYSBkaXNwbGF5OmNvbnRl
bnRzIGVsZW1lbnQgaW4gYWNjZXNzaWJpbGl0eSByZXF1ZXN0cy5cblxuIjsKLQotICAgIGZ1bmN0
aW9uIHRleHRVbmRlckVsZW1lbnQoYXhFbGVtZW50KSB7Ci0gICAgICAgIGlmIChhY2Nlc3NpYmls
aXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiKQotICAgICAgICAgICAgcmV0dXJu
IGF4RWxlbWVudC5kZXNjcmlwdGlvbjsKLSAgICAgICAgcmV0dXJuIGF4RWxlbWVudC50aXRsZTsK
LSAgICB9Ci0KLSAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7Ci0gICAg
ICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLQotICAgICAgICBjb25zdCBheEJ1dHRv
biA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgiYnV0dG9u
Iik7Ci0gICAgICAgIHRlc3RPdXRwdXQgKz0gYCR7dGV4dFVuZGVyRWxlbWVudChheEJ1dHRvbil9
XG5gOwotCi0gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidXR0b24iKS5pbm5lckhU
TUwgPSAiIjsKLSAgICAgICAgdGVzdE91dHB1dCArPSAiXG5DbGVhcmluZyBpbm5lckhUTUwgb2Yg
I2J1dHRvbi5cblxuIjsKLSAgICAgICAgc2V0VGltZW91dChhc3luYyBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4gIXRleHRVbmRlckVsZW1lbnQoYXhCdXR0b24p
LmluY2x1ZGVzKCJDbGljayBtZSIpKTsKLSAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYCR7dGV4
dFVuZGVyRWxlbWVudChheEJ1dHRvbil9XG5gOwotCi0gICAgICAgICAgICBkZWJ1Zyh0ZXN0T3V0
cHV0KTsKLSAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgICAgICB9LCAwKTsKLSAgICB9
Ci08L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xp
Yi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDNmYjI2ZmU4MDQ2NS4uYjcyYTI4YTY1N2FjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCkBAIC00OTcsOSArNDk3
LDkgQEAgYWNjZXNzaWJpbGl0eS9iYXNpYy1mb2N1c2FiaWxpdHkuaHRtbCBbIFNraXAgXQogIyBN
aXNzaW5nIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEZvclNlYXJjaFByZWRpY2F0
ZSBpbXBsZW1lbnRhdGlvbi4KIGFjY2Vzc2liaWxpdHkvYXJpYS1tb2RhbC13aXRoLXRleHQtY3Jh
c2guaHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9idXR0b24taW5zaWRlLWxhYmVsLWF4LXRl
eHQuaHRtbCBbIFNraXAgXQotYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNh
bGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lwIF0KLWFjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1vYmplY3Qtb3JkZXJpbmcuaHRtbCBbIFNraXAgXQotYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzLXNlYXJjaC10cmF2ZXJzYWwuaHRtbCBbIFNraXAgXQorYWNjZXNzaWJpbGl0
eS9kaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lw
IF0KK2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9vYmplY3Qtb3JkZXJpbmcuaHRtbCBb
IFNraXAgXQorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwu
aHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9lbXB0eS10ZXh0LXVuZGVyLWVsZW1lbnQtY2Fj
aGVkLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvc2VhcmNoLXRyYXZlcnNhbC1hZnRlci1y
b2xlLWNoYW5nZS5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L3RhYmxlLXNlYXJjaC10cmF2
ZXJzYWwuaHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xp
Yi9hY2Nlc3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxh
eS1jb250ZW50cy9hcmlhLWhpZGRlbi1leHBlY3RlZC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAl
CnJlbmFtZSBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9hcmlh
LWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9h
cmlhLWhpZGRlbi1leHBlY3RlZC50eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2dsaWIvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy9hcmlhLW93bnMtZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUg
ZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy1hcmlhLW93bnMtZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLW93bnMtZXhwZWN0ZWQu
dHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkv
ZGlzcGxheS1jb250ZW50cy1lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9s
ZXMtZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1lbGVtZW50
LXJvbGVzLWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9h
Y2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy1leHBlY3RlZC50eHQK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOGY5MTA3MzMy
NDk4Li4zMDI0OWJhMTUwNTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9U
ZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0
YXRpb25zCkBAIC0yMTY2LDcgKzIxNjYsNyBAQCBhY2Nlc3NpYmlsaXR5L3RhYmxlLWV4cG9zdXJl
LXVwZGF0ZXMtZHluYW1pY2FsbHkuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9hY2Nlc3Np
YmlsaXR5LW5vZGUtcmVwYXJlbnQuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9hcmlhLWNo
ZWNrZWQtbWl4ZWQtdmFsdWUuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9hcmlhLWRlc2Ny
aWJlZGJ5LW9uLWlucHV0Lmh0bWwgWyBQYXNzIF0KLWFjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4t
ZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwgWyBQYXNzIF0KK2FjY2Vzc2liaWxpdHkvZGlz
cGxheS1jb250ZW50cy9hcmlhLWhpZGRlbi5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L2Fy
aWEtbXVsdGlsaW5lLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvYXJpYS1yZWFkb25seS11
cGRhdGVzLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkv
YXJpYS1yZXF1aXJlZC11cGRhdGVzLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwgWyBQYXNzIF0K
QEAgLTIxNzgsOSArMjE3OCw5IEBAIGFjY2Vzc2liaWxpdHkvYnV0dG9uLWluc2lkZS1sYWJlbC1h
eC10ZXh0Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvY2hhbmdpbmctYXJpYS1oaWRkZW4t
d2l0aC1kaXNwbGF5LW5vbmUtcGFyZW50Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvY2hl
Y2tib3gtbWl4ZWQtdmFsdWUuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9kaWFsb2ctc2xv
dHRlZC1jb250ZW50Lmh0bWwgWyBQYXNzIF0KLWFjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1sIFsgUGFzcyBdCi1hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMtZWxlbWVudC1yb2xlcy5odG1sIFsgUGFzcyBdCi1hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMtb2JqZWN0LW9yZGVyaW5nLmh0bWwgWyBQYXNzIF0KK2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1s
IFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy5o
dG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVy
aW5nLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvZHluYW1pY2FsbHktaWdub3JlZC1jYW52
YXMuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWhhc3BvcHVwLmh0bWwgWyBQ
YXNzIF0KIGFjY2Vzc2liaWxpdHkvZW1wdHktdGV4dC11bmRlci1lbGVtZW50LWNhY2hlZC5odG1s
IFsgUGFzcyBdCkBAIC0yMjAwLDcgKzIyMDAsNyBAQCBhY2Nlc3NpYmlsaXR5L3BsYWNlaG9sZGVy
Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvcHJvZ3Jlc3MtaW5kZXRlcm1pbmF0ZS12YWx1
ZS5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L3NsaWRlci13aXRoLWxvc3QtcmVuZGVyZXIu
aHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9zcGluYnV0dG9uLWluY3JlbWVudC1kZWNyZW1l
bnQuaHRtbCBbIFBhc3MgXQotYWNjZXNzaWJpbGl0eS90ZXh0LXVuZGVyLWRpc3BsYXktY29udGVu
dHMtZWxlbWVudC5odG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMv
dGV4dC11bmRlci1lbGVtZW50Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvdGV4dC11cGRh
dGVzLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvdXJs
LXRlc3QuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS92aWRlby1lbGVtZW50LXVybC1hdHRy
aWJ1dGUuaHRtbCBbIFBhc3MgXQpAQCAtMjIyMCw3ICsyMjIwLDcgQEAgd2Via2l0Lm9yZy9iLzE1
MDM2NiBhY2Nlc3NpYmlsaXR5L2FyaWEtdGFibGUtYXR0cmlidXRlcy5odG1sIFsgUGFzcyBdCiAK
IGFjY2Vzc2liaWxpdHkvYXJpYS1tb2RhbC13aXRoLXRleHQtY3Jhc2guaHRtbCBbIFBhc3MgXQog
YWNjZXNzaWJpbGl0eS9hcmlhLWxhYmVsbGVkYnktdGFyZ2V0aW5nLXNsb3QuaHRtbCBbIFBhc3Mg
XQotYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLXNlYXJjaC10cmF2ZXJzYWwuaHRtbCBb
IFBhc3MgXQorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwu
aHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9zZWFyY2gtdHJhdmVyc2FsLWFmdGVyLXJvbGUt
Y2hhbmdlLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvdGFibGUtc2VhcmNoLXRyYXZlcnNh
bC5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L2R5bmFtaWNhbGx5LWNoYW5naW5nLWlmcmFt
ZS1yZW1haW5zLWFjY2Vzc2libGUuaHRtbCBbIFBhc3MgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4tZGlzcGxheS1jb250ZW50
cy1lbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0ZWQudHh0CnNpbWlsYXJp
dHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNz
aWJpbGl0eS9hcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQudHh0
CnJlbmFtZSB0byBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5
LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxs
eS1hZGRlZC1jaGlsZHJlbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVu
LWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxs
eS1hZGRlZC1jaGlsZHJlbi1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQt
Y2hpbGRyZW4tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9p
b3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy9lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVu
YW1lIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVz
LWV4cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9v
YmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUg
ZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRl
bnRzLW9iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExheW91dFRlc3RzL3Bs
YXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5n
LWV4cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMv
c2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFt
ZSBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZl
cnNhbC1leHBlY3RlZC50eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9h
Y2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMvdGV4dC11bmRlci1lbGVtZW50LWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEw
MCUKcmVuYW1lIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvdGV4
dC11bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Rl
eHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azEvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA5Mzc3ZjNiMmY5NjUuLmRhYWU5ZDYyNmE2NyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25z
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucwpAQCAt
ODEyLDggKzgxMiw4IEBAIGFjY2Vzc2liaWxpdHkvcHJvZ3Jlc3MtaW5kZXRlcm1pbmF0ZS12YWx1
ZS5odG1sIFsgU2tpcCBdCiAjIHJvbGU9InNwaW5idXR0b24iIGVsZW1lbnRzIChtb250aCwgZGF5
LCB5ZWFyKS4gV0sxIHJlbmRlcnMgZGF0ZSBpbnB1dHMgdXNpbmcgYSBjb250ZW50ZWRpdGFibGUg
ZGl2LgogYWNjZXNzaWJpbGl0eS9tYWMvZGF0ZS1pbnB1dC1pbmNyZW1lbnQtZGVjcmVtZW50Lmh0
bWwgWyBTa2lwIF0KIAotYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5
LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lwIF0KLWFjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy1hcmlhLW93bnMuaHRtbCBbIFNraXAgXQorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRl
bnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lwIF0KK2FjY2Vzc2liaWxp
dHkvZGlzcGxheS1jb250ZW50cy9hcmlhLW93bnMuaHRtbCBbIFNraXAgXQogCiBhY2Nlc3NpYmls
aXR5L21hYy9sYXp5LXNwZWxsY2hlY2tpbmcuaHRtbCBbIFNraXAgXQogCkBAIC0xOTM1LDcgKzE5
MzUsNyBAQCBhY2Nlc3NpYmlsaXR5L2VsZW1lbnQtcmVmbGVjdGlvbi1hcmlhZXJyb3JtZXNzYWdl
Lmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvbWFjL3BzZXVkby1lbGVtZW50LXRleHQtbWFy
a2Vycy5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L25lc3RlZC10ZXh0YXJlYXMtdmFsdWUt
Y2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvc2VsZWN0
ZWQtc3RhdGUtY2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBTa2lwIF0KLWFjY2Vzc2liaWxp
dHkvZGlzcGxheS1jb250ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS5odG1sIFsgU2tpcCBdCith
Y2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbCBb
IFNraXAgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQuaHRtbCBb
IFNraXAgXQogYWNjZXNzaWJpbGl0eS9tYWMvbGluZS1pbmRleC1mb3ItdGV4dG1hcmtlci5odG1s
IFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L21hYy9tYXRobWwtZWxlbWVudHMuaHRtbCBbIFNraXAg
XQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>466528</attachid>
            <date>2023-05-28 19:36:58 -0700</date>
            <delta_ts>2023-05-31 16:05:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-257444-20230528193657.patch</filename>
            <type>text/plain</type>
            <size>66752</size>
            <attacher name="Tyler Wilcock">tyler_w</attacher>
            
              <data encoding="base64">RnJvbSBmOTI0ZDhlZjJjN2VmZGMxMzgzYzRiNGM4MzZjZDYxZWVhYjVlNjhjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUeWxlciBXaWxjb2NrIDx0eWxlcl93QGFwcGxlLmNvbT4KRGF0
ZTogU3VuLCAyOCBNYXkgMjAyMyAxODoxNjo0NCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIGFyaWEt
Y2hlY2tlZCBkb2Vzbid0IHdvcmsgZm9yIHJvbGU9InRyZWVpdGVtIiBlbGVtZW50cyB3aXRoCiBk
aXNwbGF5OmNvbnRlbnRzIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
NTc0NDQKIHJkYXI6Ly9wcm9ibGVtLzEwOTk1NTc4OAoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCgpBZnRlciB0aGlzIHBhdGNoLCB3ZSBwcm9wZXJseSBjcmVhdGUgcm9sZT0idHJlZSIgYW5k
IHJvbGU9InRyZWVpdGVtIgplbGVtZW50cyBhcyBBY2Nlc3NpYmlsaXR5VHJlZSBhbmQgQWNjZXNz
aWJpbGl0eVRyZWVJdGVtIHJhdGhlciB0aGFuIGEKZ2VuZXJpYyBBY2Nlc3NpYmlsaXR5Tm9kZU9i
amVjdCwgZml4aW5nIGFyaWEtY2hlY2tlZCBhbmQgb3RoZXIKZnVuY3Rpb25hbGl0eSBpbiB0aGVz
ZSBzdWJjbGFzc2VzLgoKVGVzdGNhc2UgYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Ry
ZWUtYW5kLXRyZWVpdGVtcy5odG1sIGFkZGVkLgoKVGhlIG90aGVyIG1ham9yIGNoYW5nZSBpbiB0
aGlzIHBhdGNoIGlzIHRoZSBjcmVhdGlvbiBvZiBhIG5ldwphY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMgc3ViZm9sZGVyIGFzIHJlcXVlc3RlZCBpbiBhIHJldmlldyBjb21tZW50CmZvciBh
IHByZXZpb3VzIHBhdGNoLiBBbGwgZGlzcGxheTpjb250ZW50cyByZWxhdGVkIHRlc3RzIGFyZSBt
b3ZlZCBpbnRvCnRoaXMgZm9sZGVyLgoKKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2FyaWEt
aGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sOiBSZW1vdmVkLgoqIExheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGls
ZHJlbi5odG1sOiBSZW1vdmVkLgoqIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLmh0bWw6IFJlbW92ZWQuCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4tZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4uaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2FyaWEtb3ducy1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtYXJp
YS1vd25zLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvYXJpYS1vd25zLmh0bWw6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLmh0bWwuCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVtLWV4cGVjdGVk
LnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS1leHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVtLmh0bWw6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZGVz
Y2VuZGFudC1tZW51LWl0ZW0uaHRtbC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0OiBSZW5h
bWVkIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFt
aWNhbGx5LWFkZGVkLWNoaWxkcmVuLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4uaHRtbDog
QWRkZWQuCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2VsZW1l
bnQtcm9sZXMtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJp
bGl0eS9kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0LgoqIExheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVzLmh0bWw6
IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMt
ZWxlbWVudC1yb2xlcy5odG1sLgoqIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy9saXN0LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1saXN0LWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvbGlzdC5odG1sOiBSZW5hbWVkIGZyb20g
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWxpc3QuaHRtbC4KKiBM
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5n
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlz
cGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0LgoqIExheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9vYmplY3Qtb3JkZXJpbmcuaHRtbDogUmVu
YW1lZCBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1vYmpl
Y3Qtb3JkZXJpbmcuaHRtbC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMvc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBl
Y3RlZC50eHQuCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Nl
YXJjaC10cmF2ZXJzYWwuaHRtbDogQWRkZWQuCiogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHQ6IFJlbmFtZWQg
ZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50
cy1lbGVtZW50LWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMvdGV4dC11bmRlci1lbGVtZW50Lmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90cmVlLWFuZC10cmVlaXRlbXMtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvdHJlZS1hbmQtdHJlZWl0ZW1zLmh0bWw6IEFkZGVkLgoqIExheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvdGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQuaHRtbDogUmVtb3ZlZC4K
KiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnM6CiogTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRk
ZW4tZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9h
Y2Nlc3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC1leHBlY3Rl
ZC50eHQuCiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvYXJpYS1vd25zLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3Rz
L3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1l
eHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1l
bGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVz
dEV4cGVjdGF0aW9uczoKKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExh
eW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXkt
Y29udGVudHMtZWxlbWVudC1leHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
L2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9keW5hbWljYWxseS1hZGRlZC1jaGlsZHJl
bi1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLWV4
cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1lbGVt
ZW50LXJvbGVzLWV4cGVjdGVkLnR4dC4KKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQ6IFJl
bmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5
LWNvbnRlbnRzLW9iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQuCiogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9zZWFyY2gtdHJhdmVyc2Fs
LWV4cGVjdGVkLnR4dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQu
CiogTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy90ZXh0LXVuZGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvdGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRz
LWVsZW1lbnQtZXhwZWN0ZWQudHh0LgoqIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVz
dEV4cGVjdGF0aW9uczoKKiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2Fj
aGUuY3BwOgooV2ViQ29yZTo6aXNBY2Nlc3NpYmlsaXR5VHJlZSk6CihXZWJDb3JlOjppc0FjY2Vz
c2liaWxpdHlUcmVlSXRlbSk6CihXZWJDb3JlOjpBWE9iamVjdENhY2hlOjpjcmVhdGVPYmplY3RG
cm9tUmVuZGVyZXIpOgooV2ViQ29yZTo6Y3JlYXRlRnJvbU5vZGUpOgoqIFNvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHA6CihXZWJDb3JlOjpB
Y2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjpkZXRlcm1pbmVBY2Nlc3NpYmlsaXR5Um9sZSk6Ciog
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5jcHA6CihXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5VHJlZTo6QWNjZXNzaWJpbGl0eVRyZWUpOgooV2ViQ29yZTo6QWNj
ZXNzaWJpbGl0eVRyZWU6OmNyZWF0ZSk6CiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5VHJlZS5oOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eVRyZWVJdGVtLmNwcDoKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6QWNj
ZXNzaWJpbGl0eVRyZWVJdGVtKToKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6Y3Jl
YXRlKToKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6ZGV0ZXJtaW5lQWNjZXNzaWJp
bGl0eVJvbGUpOgoqIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRy
ZWVJdGVtLmg6Ci0tLQogLi4uL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNw
cCAgIHwgIDE4ICsrLQogLi4uL0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwICAgICAgICAg
ICAgIHwgICAyICstCiAuLi4vYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5jcHAgICAg
ICAgfCAgMTQgKystCiAuLi4vV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlUcmVl
LmggfCAgIDIgKwogLi4uL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcCAg
IHwgIDEzICstCiAuLi4vYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZUl0ZW0uaCAgICAg
fCAgIDIgKwogLi4uL2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sIHwg
IDcxIC0tLS0tLS0tLS0tCiAuLi55LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVu
Lmh0bWwgfCAgNTkgLS0tLS0tLS0tCiAuLi4vZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVy
c2FsLmh0bWwgICAgfCAgNzYgLS0tLS0tLS0tLS0KIC4uLi9hcmlhLWhpZGRlbi1leHBlY3RlZC50
eHR9ICAgICAgICAgICAgICAgICB8ICAgMAogLi4uL2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRk
ZW4uaHRtbCAgICAgICAgIHwgIDcxICsrKysrKysrKysrCiAuLi4vYXJpYS1vd25zLWV4cGVjdGVk
LnR4dH0gICAgICAgICAgICAgICAgICAgfCAgIDAKIC4uLi9hcmlhLW93bnMuaHRtbH0gICAgICAg
ICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQogLi4uL2Rlc2NlbmRhbnQtbWVudS1pdGVtLWV4
cGVjdGVkLnR4dH0gICAgICAgIHwgICAwCiAuLi4vZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbH0g
ICAgICAgICAgICAgICAgfCAgIDQgKy0KIC4uLi9keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi1l
eHBlY3RlZC50eHR9ICB8ICAgMAogLi4uL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwg
ICAgICAgICAgIHwgIDU5ICsrKysrKysrKwogLi4uL2VsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0
fSAgICAgICAgICAgICAgIHwgICAwCiAuLi4vZWxlbWVudC1yb2xlcy5odG1sfSAgICAgICAgICAg
ICAgICAgICAgICAgfCAgNjIgKysrKy0tLS0tCiAuLi4vbGlzdC1leHBlY3RlZC50eHR9ICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDAKIC4uLi9saXN0Lmh0bWx9ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgNCArLQogLi4uL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHR9
ICAgICAgICAgICAgIHwgICAwCiAuLi4vb2JqZWN0LW9yZGVyaW5nLmh0bWx9ICAgICAgICAgICAg
ICAgICAgICAgfCAgNTQgKysrKy0tLS0KIC4uLi9zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4
dH0gICAgICAgICAgICB8ICAgMAogLi4uL2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZlcnNh
bC5odG1sICAgIHwgIDc2ICsrKysrKysrKysrCiAuLi4vdGV4dC11bmRlci1lbGVtZW50LWV4cGVj
dGVkLnR4dH0gICAgICAgICAgfCAgIDAKIC4uLi9kaXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXIt
ZWxlbWVudC5odG1sICB8ICAzOSArKysrKysKIC4uLi90cmVlLWFuZC10cmVlaXRlbXMtZXhwZWN0
ZWQudHh0ICAgICAgICAgICB8ICA0NCArKysrKysrCiAuLi4vZGlzcGxheS1jb250ZW50cy90cmVl
LWFuZC10cmVlaXRlbXMuaHRtbCAgfCAxMTkgKysrKysrKysrKysrKysrKysrCiAuLi4vdGV4dC11
bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQuaHRtbCAgfCAgMzkgLS0tLS0tCiBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMgICAgfCAgIDggKy0KIC4uLi9hcmlh
LWhpZGRlbi1leHBlY3RlZC50eHR9ICAgICAgICAgICAgICAgICB8ICAgMAogLi4uL2FyaWEtb3du
cy1leHBlY3RlZC50eHR9ICAgICAgICAgICAgICAgICAgIHwgICAwCiAuLi4vZWxlbWVudC1yb2xl
cy1leHBlY3RlZC50eHR9ICAgICAgICAgICAgICAgfCAgIDAKIExheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zICAgICB8ICAxMiArLQogLi4uL2FyaWEtaGlkZGVuLWV4cGVj
dGVkLnR4dH0gICAgICAgICAgICAgICAgIHwgICAwCiAuLi4vZHluYW1pY2FsbHktYWRkZWQtY2hp
bGRyZW4tZXhwZWN0ZWQudHh0fSAgfCAgIDAKIC4uLi9lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4
dH0gICAgICAgICAgICAgICB8ICAgMAogLi4uL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHR9
ICAgICAgICAgICAgIHwgICAwCiAuLi4vc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHR9ICAg
ICAgICAgICAgfCAgIDAKIC4uLi90ZXh0LXVuZGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0fSAgICAg
ICAgICB8ICAgMAogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25z
IHwgICA2ICstCiA0MiBmaWxlcyBjaGFuZ2VkLCA1MzAgaW5zZXJ0aW9ucygrKSwgMzI4IGRlbGV0
aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvYXJp
YS1oaWRkZW4tZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwKIGRlbGV0ZSBtb2RlIDEwMDY0
NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZHluYW1pY2FsbHkt
YWRkZWQtY2hpbGRyZW4uaHRtbAogZGVsZXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLmh0bWwKIHJlbmFtZSBM
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3thcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQtZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0
ZWQudHh0fSAoMTAwJSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4uaHRtbAogcmVuYW1lIExheW91dFRlc3Rz
L2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLWV4cGVjdGVkLnR4dCA9
PiBkaXNwbGF5LWNvbnRlbnRzL2FyaWEtb3ducy1leHBlY3RlZC50eHR9ICgxMDAlKQogcmVuYW1l
IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLmh0
bWwgPT4gZGlzcGxheS1jb250ZW50cy9hcmlhLW93bnMuaHRtbH0gKDg5JSkKIHJlbmFtZSBMYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3tkaXNwbGF5LWNvbnRlbnRzLWRlc2NlbmRhbnQtbWVudS1p
dGVtLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVt
LWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS97
ZGlzcGxheS1jb250ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS5odG1sID0+IGRpc3BsYXktY29u
dGVudHMvZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbH0gKDg2JSkKIHJlbmFtZSBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L3tkaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVkLWNoaWxk
cmVuLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNo
aWxkcmVuLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxk
cmVuLmh0bWwKIHJlbmFtZSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3tkaXNwbGF5LWNvbnRl
bnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvZWxlbWVu
dC1yb2xlcy1leHBlY3RlZC50eHR9ICgxMDAlKQogcmVuYW1lIExheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkve2Rpc3BsYXktY29udGVudHMtZWxlbWVudC1yb2xlcy5odG1sID0+IGRpc3BsYXktY29u
dGVudHMvZWxlbWVudC1yb2xlcy5odG1sfSAoNjYlKQogcmVuYW1lIExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtbGlzdC1leHBlY3RlZC50eHQgPT4gZGlzcGxheS1j
b250ZW50cy9saXN0LWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1saXN0Lmh0bWwgPT4gZGlzcGxheS1jb250ZW50
cy9saXN0Lmh0bWx9ICg5MiUpCiByZW5hbWUgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS97ZGlz
cGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29u
dGVudHMvb2JqZWN0LW9yZGVyaW5nLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmcuaHRt
bCA9PiBkaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sfSAoNjYlKQogcmVuYW1l
IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZl
cnNhbC1leHBlY3RlZC50eHQgPT4gZGlzcGxheS1jb250ZW50cy9zZWFyY2gtdHJhdmVyc2FsLWV4
cGVjdGVkLnR4dH0gKDEwMCUpCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwuaHRtbAogcmVuYW1lIExh
eW91dFRlc3RzL2FjY2Vzc2liaWxpdHkve3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVt
ZW50LWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXItZWxlbWVudC1l
eHBlY3RlZC50eHR9ICgxMDAlKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vz
c2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90ZXh0LXVuZGVyLWVsZW1lbnQuaHRtbAogY3JlYXRl
IG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90
cmVlLWFuZC10cmVlaXRlbXMtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3RyZWUtYW5kLXRyZWVpdGVtcy5o
dG1sCiBkZWxldGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS90ZXh0LXVu
ZGVyLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sCiByZW5hbWUgTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ2xpYi9hY2Nlc3NpYmlsaXR5L3thcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQtZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0
ZWQudHh0fSAoMTAwJSkKIHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2li
aWxpdHkve2Rpc3BsYXktY29udGVudHMtYXJpYS1vd25zLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5
LWNvbnRlbnRzL2FyaWEtb3ducy1leHBlY3RlZC50eHR9ICgxMDAlKQogcmVuYW1lIExheW91dFRl
c3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1lbGVtZW50
LXJvbGVzLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMtZXhw
ZWN0ZWQudHh0fSAoMTAwJSkKIHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNz
aWJpbGl0eS97YXJpYS1oaWRkZW4tZGlzcGxheS1jb250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4
dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiBy
ZW5hbWUgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkve2Rpc3BsYXktY29u
dGVudHMtZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXkt
Y29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0fSAoMTAwJSkK
IHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL2Vs
ZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0fSAoMTAwJSkKIHJlbmFtZSBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS97ZGlzcGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmct
ZXhwZWN0ZWQudHh0ID0+IGRpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5nLWV4cGVjdGVk
LnR4dH0gKDEwMCUpCiByZW5hbWUgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxp
dHkve2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQgPT4gZGlz
cGxheS1jb250ZW50cy9zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4dH0gKDEwMCUpCiByZW5h
bWUgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkve3RleHQtdW5kZXItZGlz
cGxheS1jb250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dCA9PiBkaXNwbGF5LWNvbnRlbnRzL3Rl
eHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHR9ICgxMDAlKQoKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwCmluZGV4IDU4ZjU1NjMxZTkwNi4uMjU5
MTRkYWZmNjZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2Jq
ZWN0Q2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RD
YWNoZS5jcHAKQEAgLTYwNSw2ICs2MDUsMTYgQEAgc3RhdGljIGJvb2wgaXNBY2Nlc3NpYmlsaXR5
TGlzdChOb2RlKiBub2RlKQogICAgICAgICB8fCAobm9kZUhhc1JvbGUobm9kZSwgbnVsbEF0b20o
KSkgJiYgKG5vZGUtPmhhc1RhZ05hbWUodWxUYWcpIHx8IG5vZGUtPmhhc1RhZ05hbWUob2xUYWcp
IHx8IG5vZGUtPmhhc1RhZ05hbWUoZGxUYWcpIHx8IG5vZGUtPmhhc1RhZ05hbWUobWVudVRhZykp
KSkpOwogfQogCitzdGF0aWMgYm9vbCBpc0FjY2Vzc2liaWxpdHlUcmVlKE5vZGUqIG5vZGUpCit7
CisgICAgcmV0dXJuIG5vZGVIYXNSb2xlKG5vZGUsICJ0cmVlIl9zKTsKK30KKworc3RhdGljIGJv
b2wgaXNBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0oTm9kZSogbm9kZSkKK3sKKyAgICByZXR1cm4gbm9k
ZUhhc1JvbGUobm9kZSwgInRyZWVpdGVtIl9zKTsKK30KKwogUmVmPEFjY2Vzc2liaWxpdHlPYmpl
Y3Q+IEFYT2JqZWN0Q2FjaGU6OmNyZWF0ZU9iamVjdEZyb21SZW5kZXJlcihSZW5kZXJPYmplY3Qq
IHJlbmRlcmVyKQogewogICAgIC8vIEZJWE1FOiBIb3cgY291bGQgcmVuZGVyZXItPm5vZGUoKSBl
dmVyIG5vdCBiZSBhbiBFbGVtZW50PwpAQCAtNjIyLDkgKzYzMiw5IEBAIFJlZjxBY2Nlc3NpYmls
aXR5T2JqZWN0PiBBWE9iamVjdENhY2hlOjpjcmVhdGVPYmplY3RGcm9tUmVuZGVyZXIoUmVuZGVy
T2JqZWN0KiByCiAgICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsOjpjcmVh
dGUocmVuZGVyZXIpOwogCiAgICAgLy8gYXJpYSB0cmVlCi0gICAgaWYgKG5vZGVIYXNSb2xlKG5v
ZGUsICJ0cmVlIl9zKSkKKyAgICBpZiAoaXNBY2Nlc3NpYmlsaXR5VHJlZShub2RlKSkKICAgICAg
ICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlUcmVlOjpjcmVhdGUocmVuZGVyZXIpOwotICAgIGlmIChu
b2RlSGFzUm9sZShub2RlLCAidHJlZWl0ZW0iX3MpKQorICAgIGlmIChpc0FjY2Vzc2liaWxpdHlU
cmVlSXRlbShub2RlKSkKICAgICAgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6Y3Jl
YXRlKHJlbmRlcmVyKTsKIAogICAgIGlmIChub2RlICYmIGlzPEhUTUxMYWJlbEVsZW1lbnQ+KG5v
ZGUpICYmIG5vZGVIYXNSb2xlKG5vZGUsIG51bGxBdG9tKCkpKQpAQCAtNjg5LDYgKzY5OSwxMCBA
QCBzdGF0aWMgUmVmPEFjY2Vzc2liaWxpdHlPYmplY3Q+IGNyZWF0ZUZyb21Ob2RlKE5vZGUmIG5v
ZGUpCiB7CiAgICAgaWYgKGlzQWNjZXNzaWJpbGl0eUxpc3QoJm5vZGUpKQogICAgICAgICByZXR1
cm4gQWNjZXNzaWJpbGl0eUxpc3Q6OmNyZWF0ZShub2RlKTsKKyAgICBpZiAoaXNBY2Nlc3NpYmls
aXR5VHJlZSgmbm9kZSkpCisgICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5VHJlZTo6Y3JlYXRl
KG5vZGUpOworICAgIGlmIChpc0FjY2Vzc2liaWxpdHlUcmVlSXRlbSgmbm9kZSkpCisgICAgICAg
IHJldHVybiBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW06OmNyZWF0ZShub2RlKTsKICAgICByZXR1cm4g
QWNjZXNzaWJpbGl0eU5vZGVPYmplY3Q6OmNyZWF0ZShub2RlKTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dC5jcHAKaW5kZXggMDg1MjIwNzQwNWYxLi5iY2ExOTA1N2VjNjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
LmNwcApAQCAtMjE4MSw3ICsyMTgxLDcgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0
OjpzaG91bGRJZ25vcmVBdHRyaWJ1dGVSb2xlKCkgY29uc3QKIEFjY2Vzc2liaWxpdHlSb2xlIEFj
Y2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmRldGVybWluZUFjY2Vzc2liaWxpdHlSb2xlKCkKIHsK
ICAgICBpZiAoIW1fcmVuZGVyZXIpCi0gICAgICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5Um9sZTo6
VW5rbm93bjsKKyAgICAgICAgcmV0dXJuIEFjY2Vzc2liaWxpdHlOb2RlT2JqZWN0OjpkZXRlcm1p
bmVBY2Nlc3NpYmlsaXR5Um9sZSgpOwogCiAjaWYgRU5BQkxFKEFQUExFX1BBWSkKICAgICBpZiAo
aXNBcHBsZVBheUJ1dHRvbigpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlUcmVlLmNwcAppbmRleCBmYTE4OWRhMDUwZjQuLjNkM2EyZWI2MjFlYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJl
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJl
ZS5jcHAKQEAgLTQ0LDE0ICs0NCwyNCBAQCBBY2Nlc3NpYmlsaXR5VHJlZTo6QWNjZXNzaWJpbGl0
eVRyZWUoUmVuZGVyT2JqZWN0KiByZW5kZXJlcikKICAgICA6IEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QocmVuZGVyZXIpCiB7CiB9Ci0gICAgCisKK0FjY2Vzc2liaWxpdHlUcmVlOjpBY2Nlc3Np
YmlsaXR5VHJlZShOb2RlJiBub2RlKQorICAgIDogQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdChu
b2RlKQoreworfQorCiBBY2Nlc3NpYmlsaXR5VHJlZTo6fkFjY2Vzc2liaWxpdHlUcmVlKCkgPSBk
ZWZhdWx0OwogICAgIAogUmVmPEFjY2Vzc2liaWxpdHlUcmVlPiBBY2Nlc3NpYmlsaXR5VHJlZTo6
Y3JlYXRlKFJlbmRlck9iamVjdCogcmVuZGVyZXIpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgQWNjZXNzaWJpbGl0eVRyZWUocmVuZGVyZXIpKTsKIH0KLSAgICAKKworUmVmPEFjY2Vzc2li
aWxpdHlUcmVlPiBBY2Nlc3NpYmlsaXR5VHJlZTo6Y3JlYXRlKE5vZGUmIG5vZGUpCit7CisgICAg
cmV0dXJuIGFkb3B0UmVmKCpuZXcgQWNjZXNzaWJpbGl0eVRyZWUobm9kZSkpOworfQorCiBib29s
IEFjY2Vzc2liaWxpdHlUcmVlOjpjb21wdXRlQWNjZXNzaWJpbGl0eUlzSWdub3JlZCgpIGNvbnN0
CiB7CiAgICAgcmV0dXJuIGFjY2Vzc2liaWxpdHlJc0lnbm9yZWRCeURlZmF1bHQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWUuaCBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWUuaAppbmRleCA4
MGVlM2FkMWRiYzkuLmY2NDMwNzY0OGE0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWUuaApAQCAtMzYsMTAgKzM2LDEyIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIGNsYXNzIEFjY2Vzc2liaWxpdHlUcmVlIGZpbmFsIDogcHVibGljIEFjY2Vz
c2liaWxpdHlSZW5kZXJPYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8QWNjZXNzaWJp
bGl0eVRyZWU+IGNyZWF0ZShSZW5kZXJPYmplY3QqKTsKKyAgICBzdGF0aWMgUmVmPEFjY2Vzc2li
aWxpdHlUcmVlPiBjcmVhdGUoTm9kZSYpOwogICAgIHZpcnR1YWwgfkFjY2Vzc2liaWxpdHlUcmVl
KCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgQWNjZXNzaWJpbGl0eVRyZWUoUmVuZGVyT2Jq
ZWN0Kik7CisgICAgZXhwbGljaXQgQWNjZXNzaWJpbGl0eVRyZWUoTm9kZSYpOwogICAgIGJvb2wg
Y29tcHV0ZUFjY2Vzc2liaWxpdHlJc0lnbm9yZWQoKSBjb25zdCBvdmVycmlkZTsKICAgICBBY2Nl
c3NpYmlsaXR5Um9sZSBkZXRlcm1pbmVBY2Nlc3NpYmlsaXR5Um9sZSgpIG92ZXJyaWRlOwogICAg
IGJvb2wgaXNUcmVlVmFsaWQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Fj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcAppbmRleCBmOWViYzVhZjY1MzYu
LmQxOTZjY2FiMTdiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5VHJlZUl0ZW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmNwcApAQCAtNDAsNyArNDAsMTIgQEAgQWNjZXNzaWJp
bGl0eVRyZWVJdGVtOjpBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0oUmVuZGVyT2JqZWN0KiByZW5kZXJl
cikKICAgICA6IEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QocmVuZGVyZXIpCiB7CiB9Ci0gICAg
CisKK0FjY2Vzc2liaWxpdHlUcmVlSXRlbTo6QWNjZXNzaWJpbGl0eVRyZWVJdGVtKE5vZGUmIG5v
ZGUpCisgICAgOiBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0KG5vZGUpCit7Cit9CisKIEFjY2Vz
c2liaWxpdHlUcmVlSXRlbTo6fkFjY2Vzc2liaWxpdHlUcmVlSXRlbSgpID0gZGVmYXVsdDsKICAg
ICAKIFJlZjxBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0+IEFjY2Vzc2liaWxpdHlUcmVlSXRlbTo6Y3Jl
YXRlKFJlbmRlck9iamVjdCogcmVuZGVyZXIpCkBAIC00OCw2ICs1MywxMSBAQCBSZWY8QWNjZXNz
aWJpbGl0eVRyZWVJdGVtPiBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW06OmNyZWF0ZShSZW5kZXJPYmpl
Y3QqIHJlbmRlcmVyKQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEFjY2Vzc2liaWxpdHlUcmVl
SXRlbShyZW5kZXJlcikpOwogfQogCitSZWY8QWNjZXNzaWJpbGl0eVRyZWVJdGVtPiBBY2Nlc3Np
YmlsaXR5VHJlZUl0ZW06OmNyZWF0ZShOb2RlJiBub2RlKQoreworICAgIHJldHVybiBhZG9wdFJl
ZigqbmV3IEFjY2Vzc2liaWxpdHlUcmVlSXRlbShub2RlKSk7Cit9CisKIGJvb2wgQWNjZXNzaWJp
bGl0eVRyZWVJdGVtOjpzdXBwb3J0c0NoZWNrZWRTdGF0ZSgpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IGhhc0F0dHJpYnV0ZShhcmlhX2NoZWNrZWRBdHRyKTsKQEAgLTU1LDcgKzY1LDYgQEAgYm9vbCBB
Y2Nlc3NpYmlsaXR5VHJlZUl0ZW06OnN1cHBvcnRzQ2hlY2tlZFN0YXRlKCkgY29uc3QKIAogQWNj
ZXNzaWJpbGl0eVJvbGUgQWNjZXNzaWJpbGl0eVRyZWVJdGVtOjpkZXRlcm1pbmVBY2Nlc3NpYmls
aXR5Um9sZSgpCiB7Ci0gICAgCiAgICAgLy8gV2FsayB0aGUgcGFyZW50IGNoYWluIGxvb2tpbmcg
Zm9yIGEgcGFyZW50IHRoYXQgaXMgYSB0cmVlLiBBIHRyZWVpdGVtIGlzCiAgICAgLy8gb25seSBj
b25zaWRlcmVkIHZhbGlkIGlmIGl0IGlzIGluIGEgdHJlZS4KICAgICBBY2Nlc3NpYmlsaXR5T2Jq
ZWN0KiBwYXJlbnQgPSBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5VHJlZUl0ZW0uaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmgKaW5kZXggYzQ4NGZlZmQ1MTI5Li4wODRlMmYx
Y2Y2Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eVRyZWVJdGVtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5VHJlZUl0ZW0uaApAQCAtMzUsMTIgKzM1LDE0IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IGNsYXNzIEFjY2Vzc2liaWxpdHlUcmVlSXRlbSBmaW5hbCA6IHB1YmxpYyBBY2Nlc3NpYmlsaXR5
UmVuZGVyT2JqZWN0IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPEFjY2Vzc2liaWxpdHlUcmVl
SXRlbT4gY3JlYXRlKFJlbmRlck9iamVjdCopOworICAgIHN0YXRpYyBSZWY8QWNjZXNzaWJpbGl0
eVRyZWVJdGVtPiBjcmVhdGUoTm9kZSYpOwogICAgIHZpcnR1YWwgfkFjY2Vzc2liaWxpdHlUcmVl
SXRlbSgpOwogCiAgICAgYm9vbCBzdXBwb3J0c0NoZWNrZWRTdGF0ZSgpIGNvbnN0IG92ZXJyaWRl
OwogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IEFjY2Vzc2liaWxpdHlUcmVlSXRlbShSZW5kZXJP
YmplY3QqKTsKKyAgICBleHBsaWNpdCBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0oTm9kZSYpOwogICAg
IGJvb2wgc2hvdWxkSWdub3JlQXR0cmlidXRlUm9sZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuICFt
X2lzVHJlZUl0ZW1WYWxpZDsgfQogICAgIEFjY2Vzc2liaWxpdHlSb2xlIGRldGVybWluZUFjY2Vz
c2liaWxpdHlSb2xlKCkgb3ZlcnJpZGU7CiAgICAgYm9vbCBtX2lzVHJlZUl0ZW1WYWxpZDsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4tZGlzcGxheS1j
b250ZW50cy1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2FyaWEtaGlk
ZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBiNWE1ZTcwNmJmYmEuLjAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC5odG1sCisrKyAv
ZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRG
Ly9EVEQgSFRNTC8vRU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJj
ZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FjY2Vz
c2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5IGlkPSJib2R5Ij4K
LQotPG1haW4gaWQ9Im1haW4iIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50cyI+Ci0gICAgPG9sIGlk
PSJsaXN0Ij4KLSAgICAgICAgPGxpPkxpc3QgaXRlbSBvbmU8L2xpPgotICAgICAgICA8bGk+TGlz
dCBpdGVtIHR3bzwvbGk+Ci0gICAgPC9vbD4KLSAgICA8cCBpZD0icGFyYWdyYXBoIj5Db250ZW50
IGluc2lkZSBtYWluID4gcCB0YWcuPHA+Ci08L21haW4+Ci0KLTxzY3JpcHQ+Ci0gICAgdmFyIHRl
c3RPdXRwdXQgPSAiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCBhbiBhcmlhLWhpZGRlbiBkaXNwbGF5
OmNvbnRlbnRzIGVsZW1lbnQgYmVoYXZlcyBhcyBleHBlY3RlZC4iOwotCi0gICAgZnVuY3Rpb24g
ZGVidWdFbGVtZW50KGlkKSB7Ci0gICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuXG5UZXN0aW5nIGVs
ZW1lbnQgIyR7aWR9XG5gOwotICAgICAgICBjb25zdCBheEVsZW1lbnQgPSBhY2Nlc3NpYmlsaXR5
Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoaWQpOwotICAgICAgICBpZiAoIWF4RWxl
bWVudCkgewotICAgICAgICAgICAgZGVidWcoYFxuRkFJTDogQ291bGRuJ3QgZ2V0IEFYIGVsZW1l
bnQgZm9yICMke2lkfS5gKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAg
ICAgIHRlc3RPdXRwdXQgKz0gYXhFbGVtZW50LnJvbGU7Ci0gICAgICAgIGNvbnN0IGNvbXB1dGVk
Um9sZVN0cmluZyA9IGF4RWxlbWVudC5jb21wdXRlZFJvbGVTdHJpbmc7Ci0gICAgICAgIGlmIChj
b21wdXRlZFJvbGVTdHJpbmcpCi0gICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbmNvbXB1dGVk
Um9sZVN0cmluZzogJHtjb21wdXRlZFJvbGVTdHJpbmd9YDsKLQotICAgICAgICBsZXQgc3Vicm9s
ZSA9IGF4RWxlbWVudC5zdWJyb2xlOwotICAgICAgICBpZiAoc3Vicm9sZS5yZXBsYWNlKCJBWFN1
YnJvbGU6ICIsICIiKSkKLSAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuJHtzdWJyb2xlfWA7
Ci0gICAgfQotCi0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgewotICAg
ICAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLSAgICAgICAgZGVidWdFbGVtZW50
KCJtYWluIik7Ci0gICAgICAgIGRlYnVnRWxlbWVudCgibGlzdCIpOwotICAgICAgICBkZWJ1Z0Vs
ZW1lbnQoInBhcmFncmFwaCIpOwotCi0gICAgICAgIHRlc3RPdXRwdXQgKz0gIlxuXG5IaWRpbmcg
I21haW4gd2l0aCBhcmlhLWhpZGRlbj0ndHJ1ZScuIjsKLSAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoIm1haW4iKS5hcmlhSGlkZGVuID0gInRydWUiOwotICAgICAgICBzZXRUaW1lb3V0
KGFzeW5jIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgYXdhaXQgd2FpdEZvcigoKSA9PiB7Ci0g
ICAgICAgICAgICAgICAgLy8gV2FpdCBmb3IgdGhlIG1haW4gdG8gYmUgaGlkZGVuLgotICAgICAg
ICAgICAgICAgIHJldHVybiAhYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1l
bnRCeUlkKCJtYWluIik7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIGNvbnN0IGxpc3Qg
PSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoImxpc3QiKTsK
LSAgICAgICAgICAgIGNvbnN0IHBhcmFncmFwaCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFj
Y2Vzc2libGVFbGVtZW50QnlJZCgicGFyYWdyYXBoIik7Ci0gICAgICAgICAgICBpZiAoIWxpc3Qg
JiYgIXBhcmFncmFwaCkKLSAgICAgICAgICAgICAgICB0ZXN0T3V0cHV0ICs9ICJcblBBU1M6IEFs
bCBlbGVtZW50cyBhcmUgbm93IGhpZGRlbi4iOwotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAg
ICAgICAgICAgaWYgKGxpc3QpCi0gICAgICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gIlxu
RkFJTDogPG9sPiB3YXMgbm90IGhpZGRlbiBieSBhcmlhLWhpZGRlbi4iOwotICAgICAgICAgICAg
ICAgIGlmIChwYXJhZ3JhcGgpCi0gICAgICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gIlxu
RkFJTDogPHA+IHdhcyBub3QgaGlkZGVuIGJ5IGFyaWEtaGlkZGVuLiI7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWluIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICAgICAgZGVidWcodGVzdE91dHB1dCk7Ci0gICAg
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKLSAgICAgICAgfSwgMCk7Ci0gICAgfQotPC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+Ci0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxp
dHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1sIGIvTGF5
b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNhbGx5LWFkZGVk
LWNoaWxkcmVuLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY3MDNiZGI1Mzkz
Ny4uMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1sCisrKyAvZGV2L251bGwKQEAg
LTEsNTkgKzAsMCBAQAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWNjZXNzaWJp
bGl0eS1oZWxwZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10
ZXN0LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotCi08ZGl2IGlkPSJkaXNwbGF5LWNv
bnRlbnRzLWRpdiIgYXJpYS1sYWJlbD0iRGl2IHdpdGggZGlzcGxheTpjb250ZW50cyIgc3R5bGU9
ImRpc3BsYXk6Y29udGVudHMiPgotICAgIDxkaXYgaWQ9ImRpdi10by1pbnNlcnQtaW50byI+Ci0g
ICAgPC9kaXY+Ci08L2Rpdj4KLQotPHNjcmlwdD4KLSAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlz
IHRlc3QgZW5zdXJlcyB0aGF0IHdlIGluY2x1ZGUgZHluYW1pY2FsbHkgYWRkZWQgY29udGVudCBp
biB0aGUgQVggdHJlZSB3aGVuIHNhaWQgY29udGVudCBpcyBhZGRlZCBhcyBhIHN1YnRyZWUgb2Yg
YSBkaXNwbGF5OmNvbnRlbnRzIGVsZW1lbnQuXG5cbiI7Ci0KLSAgICB2YXIgYXhSb290ID0gYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIucm9vdEVsZW1lbnQ7Ci0gICAgZnVuY3Rpb24gdHJhdmVyc2VQ
YWdlKCkgewotICAgICAgICBsZXQgc2VhcmNoUmVzdWx0ID0gbnVsbDsKLSAgICAgICAgd2hpbGUg
KHRydWUpIHsKLSAgICAgICAgICAgIHNlYXJjaFJlc3VsdCA9IGF4Um9vdC51aUVsZW1lbnRGb3JT
ZWFyY2hQcmVkaWNhdGUoc2VhcmNoUmVzdWx0LCB0cnVlLCAiQVhBbnlUeXBlU2VhcmNoS2V5Iiwg
IiIsIGZhbHNlKTsKLSAgICAgICAgICAgIGlmICghc2VhcmNoUmVzdWx0KQotICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgY29uc3Qgcm9sZSA9IHNlYXJjaFJlc3VsdC5yb2xlOwot
ICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3JvbGV9YDsKLSAgICAgICAgICAgIGlmIChy
b2xlLmluY2x1ZGVzKCJTdGF0aWNUZXh0IikpIHsKLSAgICAgICAgICAgICAgICBsZXQgdGV4dENv
bnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiID8g
c2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2VhcmNoUmVzdWx0LnN0cmluZ1ZhbHVlOwotICAg
ICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuJHt0ZXh0Q29udGVudH1gOwotICAgICAgICAg
ICAgfQotICAgICAgICAgICAgdGVzdE91dHB1dCArPSAiXG4iOwotICAgICAgICB9Ci0gICAgfQot
Ci0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgewotICAgICAgICB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLSAgICAgICAgdGVzdE91dHB1dCArPSAiVHJhdmVy
c2luZyBwYWdlIGJhc2VkIG9uIGluaXRpYWwgc3RhdGUuXG4iOwotICAgICAgICB0cmF2ZXJzZVBh
Z2UoKTsKLQotICAgICAgICB0ZXN0T3V0cHV0ICs9ICJcbkFkZGluZyBsaXN0IGVsZW1lbnRzIHRv
ICNkaXYtdG8taW5zZXJ0LWludG8gYW5kIHBlcmZvcm1pbmcgYW5vdGhlciBwYWdlIHRyYXZlcnNh
bC5cbiI7Ci0KLSAgICAgICAgY29uc3QgdWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ1bCIp
OwotICAgICAgICBjb25zdCBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpIik7Ci0gICAg
ICAgIGxpLmlubmVySFRNTCA9ICJMaXN0IGl0ZW0gb25lIjsKLSAgICAgICAgdWwuYXBwZW5kQ2hp
bGQobGkpOwotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2LXRvLWluc2VydC1p
bnRvIikuYXBwZW5kQ2hpbGQodWwpOwotICAgICAgICBzZXRUaW1lb3V0KGFzeW5jIGZ1bmN0aW9u
KCkgewotICAgICAgICAgICAgYXdhaXQgd2FpdEZvcigoKSA9PiBheFJvb3QudWlFbGVtZW50Rm9y
U2VhcmNoUHJlZGljYXRlKGF4Um9vdCwgdHJ1ZSwgIkFYTGlzdFNlYXJjaEtleSIsICIiLCBmYWxz
ZSkpOwotICAgICAgICAgICAgdHJhdmVyc2VQYWdlKCk7Ci0KLSAgICAgICAgICAgIGRlYnVnKHRl
c3RPdXRwdXQpOwotICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Ci0gICAgICAgIH0sIDApOwot
ICAgIH0KLTwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgotCi0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLmh0
bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtc2VhcmNoLXRy
YXZlcnNhbC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZDdkMWVhZjQxN2Mu
LjAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMtc2VhcmNoLXRyYXZlcnNhbC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzYgKzAsMCBA
QAotPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxwZXIu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3Nj
cmlwdD4KLTwvaGVhZD4KLTxib2R5PgotCi08ZGl2IGlkPSJjb250YWluZXIiIHJvbGU9Imdyb3Vw
Ij4KLSAgICA8cD5Db250ZW50IGJlZm9yZSBtYWluLjwvcD4KLQotICAgIDxtYWluPgotCi0gICAg
PGgxPk5vIHN0eWxlIGNoYW5nZXM8L2gxPgotICAgIDxkaXYgcm9sZT0idG9vbGJhciI+Ci0gICAg
ICAgIDxkaXY+Ci0gICAgICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgotICAgICAgICA8L2Rp
dj4KLSAgICA8L2Rpdj4KLQotICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24gdGhlIHRvb2xi
YXI8L2gxPgotICAgIDxkaXYgcm9sZT0idG9vbGJhciIgc3R5bGU9ImRpc3BsYXk6IGNvbnRlbnRz
OyI+Ci0gICAgICAgIDxkaXY+Ci0gICAgICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgotICAg
ICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLQotICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24g
dGhlIGdlbmVyaWMgZGl2PC9oMT4KLSAgICA8ZGl2IHJvbGU9InRvb2xiYXIiPgotICAgICAgICA8
ZGl2IHN0eWxlPSJkaXNwbGF5OiBjb250ZW50czsiPgotICAgICAgICAgICAgPGJ1dHRvbj5Gb288
L2J1dHRvbj4KLSAgICAgICAgPC9kaXY+Ci0gICAgPC9kaXY+Ci0KLSAgICA8aDE+ZGlzcGxheTog
Y29udGVudHM7IG9uIHRoZSBidXR0b248L2gxPgotICAgIDxkaXYgcm9sZT0idG9vbGJhciI+Ci0g
ICAgICAgIDxkaXY+Ci0gICAgICAgICAgICA8YnV0dG9uIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50
czsiPkZvbzwvYnV0dG9uPgotICAgICAgICA8L2Rpdj4KLSAgICA8L2Rpdj4KLQotICAgIDwvbWFp
bj4KLQotICAgIDxwPkNvbnRlbnQgYWZ0ZXIgbWFpbi48L3A+Ci08L2Rpdj4KLQotPHNjcmlwdD4K
LSAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB3ZSBjYW4gdHJhdmVyc2Ug
dGhyb3VnaCBiYXNpYyB3ZWJwYWdlcyB3aXRoIG11bHRpcGxlIGRpc3BsYXk6IGNvbnRlbnRzIGVs
ZW1lbnRzIHZpYSBzZWFyY2guXG4iOwotCi0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29u
dHJvbGxlcikgewotICAgICAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gYWNjZXNzaWJpbGl0
eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJjb250YWluZXIiKTsKLQotICAgICAg
ICBsZXQgZWxlbWVudENvdW50ID0gMDsKLSAgICAgICAgbGV0IHNlYXJjaFJlc3VsdCA9IG51bGw7
Ci0gICAgICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgICAgICBzZWFyY2hSZXN1bHQgPSBjb250
YWluZXJFbGVtZW50LnVpRWxlbWVudEZvclNlYXJjaFByZWRpY2F0ZShzZWFyY2hSZXN1bHQsIHRy
dWUsICJBWEFueVR5cGVTZWFyY2hLZXkiLCAiIiwgZmFsc2UpOwotICAgICAgICAgICAgaWYgKCFz
ZWFyY2hSZXN1bHQpCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBjb25zdCBy
b2xlID0gc2VhcmNoUmVzdWx0LnJvbGU7Ci0gICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbiR7
cm9sZX1gOwotICAgICAgICAgICAgaWYgKHJvbGUuaW5jbHVkZXMoIlN0YXRpY1RleHQiKSkgewot
ICAgICAgICAgICAgICAgIGxldCB0ZXh0Q29udGVudCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVy
LnBsYXRmb3JtTmFtZSA9PT0gImlvcyIgPyBzZWFyY2hSZXN1bHQuZGVzY3JpcHRpb24gOiBzZWFy
Y2hSZXN1bHQuc3RyaW5nVmFsdWU7Ci0gICAgICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4k
e3RleHRDb250ZW50fWA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIHRlc3RPdXRwdXQg
Kz0gIlxuIjsKLSAgICAgICAgICAgIGVsZW1lbnRDb3VudCArPSAxOwotICAgICAgICB9Ci0gICAg
ICAgIHRlc3RPdXRwdXQgKz0gYFxuVHJhdmVyc2VkICR7ZWxlbWVudENvdW50fSBlbGVtZW50cy5g
OwotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIikuc3R5bGUudmlz
aWJpbGl0eSA9ICJoaWRkZW4iOwotICAgICAgICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKLSAgICB9Ci08
L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9hcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2FyaWEtaGlk
ZGVuLWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0
VGVzdHMvYWNjZXNzaWJpbGl0eS9hcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQt
ZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4uaHRtbCBiL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLWhpZGRlbi5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNzcyNGZlNzk3ZGVmCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRz
L2FyaWEtaGlkZGVuLmh0bWwKQEAgLTAsMCArMSw3MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5IGlkPSJib2R5Ij4KKworPG1haW4gaWQ9Im1haW4iIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50
cyI+CisgICAgPG9sIGlkPSJsaXN0Ij4KKyAgICAgICAgPGxpPkxpc3QgaXRlbSBvbmU8L2xpPgor
ICAgICAgICA8bGk+TGlzdCBpdGVtIHR3bzwvbGk+CisgICAgPC9vbD4KKyAgICA8cCBpZD0icGFy
YWdyYXBoIj5Db250ZW50IGluc2lkZSBtYWluID4gcCB0YWcuPHA+Cis8L21haW4+CisKKzxzY3Jp
cHQ+Cit2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IGFuIGFyaWEtaGlk
ZGVuIGRpc3BsYXk6Y29udGVudHMgZWxlbWVudCBiZWhhdmVzIGFzIGV4cGVjdGVkLiI7CisKK2Z1
bmN0aW9uIGRlYnVnRWxlbWVudChpZCkgeworICAgIHRlc3RPdXRwdXQgKz0gYFxuXG5UZXN0aW5n
IGVsZW1lbnQgIyR7aWR9XG5gOworICAgIGNvbnN0IGF4RWxlbWVudCA9IGFjY2Vzc2liaWxpdHlD
b250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZChpZCk7CisgICAgaWYgKCFheEVsZW1lbnQp
IHsKKyAgICAgICAgZGVidWcoYFxuRkFJTDogQ291bGRuJ3QgZ2V0IEFYIGVsZW1lbnQgZm9yICMk
e2lkfS5gKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHRlc3RPdXRwdXQgKz0gYXhF
bGVtZW50LnJvbGU7CisgICAgY29uc3QgY29tcHV0ZWRSb2xlU3RyaW5nID0gYXhFbGVtZW50LmNv
bXB1dGVkUm9sZVN0cmluZzsKKyAgICBpZiAoY29tcHV0ZWRSb2xlU3RyaW5nKQorICAgICAgICB0
ZXN0T3V0cHV0ICs9IGBcbmNvbXB1dGVkUm9sZVN0cmluZzogJHtjb21wdXRlZFJvbGVTdHJpbmd9
YDsKKworICAgIGxldCBzdWJyb2xlID0gYXhFbGVtZW50LnN1YnJvbGU7CisgICAgaWYgKHN1YnJv
bGUucmVwbGFjZSgiQVhTdWJyb2xlOiAiLCAiIikpCisgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxu
JHtzdWJyb2xlfWA7Cit9CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsK
KyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKKyAgICBkZWJ1Z0VsZW1lbnQoIm1h
aW4iKTsKKyAgICBkZWJ1Z0VsZW1lbnQoImxpc3QiKTsKKyAgICBkZWJ1Z0VsZW1lbnQoInBhcmFn
cmFwaCIpOworCisgICAgdGVzdE91dHB1dCArPSAiXG5cbkhpZGluZyAjbWFpbiB3aXRoIGFyaWEt
aGlkZGVuPSd0cnVlJy4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWluIikuYXJp
YUhpZGRlbiA9ICJ0cnVlIjsKKyAgICBzZXRUaW1lb3V0KGFzeW5jIGZ1bmN0aW9uKCkgeworICAg
ICAgICBhd2FpdCB3YWl0Rm9yKCgpID0+IHsKKyAgICAgICAgICAgIC8vIFdhaXQgZm9yIHRoZSBt
YWluIHRvIGJlIGhpZGRlbi4KKyAgICAgICAgICAgIHJldHVybiAhYWNjZXNzaWJpbGl0eUNvbnRy
b2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJtYWluIik7CisgICAgICAgIH0pOworICAgICAg
ICBjb25zdCBsaXN0ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRC
eUlkKCJsaXN0Iik7CisgICAgICAgIGNvbnN0IHBhcmFncmFwaCA9IGFjY2Vzc2liaWxpdHlDb250
cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgicGFyYWdyYXBoIik7CisgICAgICAgIGlmICgh
bGlzdCAmJiAhcGFyYWdyYXBoKQorICAgICAgICAgICAgdGVzdE91dHB1dCArPSAiXG5QQVNTOiBB
bGwgZWxlbWVudHMgYXJlIG5vdyBoaWRkZW4uIjsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAg
ICBpZiAobGlzdCkKKyAgICAgICAgICAgICAgICB0ZXN0T3V0cHV0ICs9ICJcbkZBSUw6IDxvbD4g
d2FzIG5vdCBoaWRkZW4gYnkgYXJpYS1oaWRkZW4uIjsKKyAgICAgICAgICAgIGlmIChwYXJhZ3Jh
cGgpCisgICAgICAgICAgICAgICAgdGVzdE91dHB1dCArPSAiXG5GQUlMOiA8cD4gd2FzIG5vdCBo
aWRkZW4gYnkgYXJpYS1oaWRkZW4uIjsKKyAgICAgICAgfQorCisgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJtYWluIikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgICAg
ICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgfSwgMCk7
Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1vd25zLWV4
cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1leHBlY3RlZC50eHQKcmVu
YW1lIHRvIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLW93
bnMtZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMtYXJpYS1vd25zLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvYXJpYS1vd25zLmh0bWwKc2ltaWxhcml0eSBpbmRleCA4OSUKcmVu
YW1lIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEt
b3ducy5odG1sCnJlbmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMvYXJpYS1vd25zLmh0bWwKaW5kZXggYzY2Y2ZmYWZmYTdhLi45YTE3ZWIyZTVmNjIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1hcmlh
LW93bnMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvYXJpYS1vd25zLmh0bWwKQEAgLTEsOCArMSw4IEBACiA8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+CiA8aHRtbD4KIDxoZWFkPgotPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy1kZXNjZW5kYW50LW1lbnUtaXRlbS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2VuZGFudC1tZW51LWl0ZW0tZXhwZWN0ZWQudHh0
CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMtZGVzY2VuZGFudC1tZW51LWl0ZW0tZXhwZWN0ZWQudHh0CnJl
bmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2Vu
ZGFudC1tZW51LWl0ZW0tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRtbCBiL0xh
eW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9kZXNjZW5kYW50LW1lbnUt
aXRlbS5odG1sCnNpbWlsYXJpdHkgaW5kZXggODYlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2Fj
Y2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS5odG1sCnJl
bmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2Vu
ZGFudC1tZW51LWl0ZW0uaHRtbAppbmRleCAwYzJiMzljYjcyMDkuLmRkMGQzMWY4MjYwMSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWRlc2Nl
bmRhbnQtbWVudS1pdGVtLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2Rlc2NlbmRhbnQtbWVudS1pdGVtLmh0bWwKQEAgLTEsOCArMSw4IEBACiA8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+CiA8aHRtbD4KIDxo
ZWFkPgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2Ny
aXB0PgogPC9oZWFkPgogPGJvZHk+CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1p
Y2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpy
ZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtZHlu
YW1pY2FsbHktYWRkZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRy
ZW4tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRkZWQtY2hpbGRyZW4uaHRtbCBiL0xheW91dFRl
c3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9keW5hbWljYWxseS1hZGRlZC1jaGls
ZHJlbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uOGFmOGY4
MDZlMjE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwKQEAgLTAsMCArMSw1
OSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1o
ZWxwZXIuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCis8ZGl2IGlkPSJkaXNwbGF5LWNvbnRl
bnRzLWRpdiIgYXJpYS1sYWJlbD0iRGl2IHdpdGggZGlzcGxheTpjb250ZW50cyIgc3R5bGU9ImRp
c3BsYXk6Y29udGVudHMiPgorICAgIDxkaXYgaWQ9ImRpdi10by1pbnNlcnQtaW50byI+CisgICAg
PC9kaXY+Cis8L2Rpdj4KKworPHNjcmlwdD4KK3ZhciB0ZXN0T3V0cHV0ID0gIlRoaXMgdGVzdCBl
bnN1cmVzIHRoYXQgd2UgaW5jbHVkZSBkeW5hbWljYWxseSBhZGRlZCBjb250ZW50IGluIHRoZSBB
WCB0cmVlIHdoZW4gc2FpZCBjb250ZW50IGlzIGFkZGVkIGFzIGEgc3VidHJlZSBvZiBhIGRpc3Bs
YXk6Y29udGVudHMgZWxlbWVudC5cblxuIjsKKwordmFyIGF4Um9vdCA9IGFjY2Vzc2liaWxpdHlD
b250cm9sbGVyLnJvb3RFbGVtZW50OworZnVuY3Rpb24gdHJhdmVyc2VQYWdlKCkgeworICAgIGxl
dCBzZWFyY2hSZXN1bHQgPSBudWxsOworICAgIHdoaWxlICh0cnVlKSB7CisgICAgICAgIHNlYXJj
aFJlc3VsdCA9IGF4Um9vdC51aUVsZW1lbnRGb3JTZWFyY2hQcmVkaWNhdGUoc2VhcmNoUmVzdWx0
LCB0cnVlLCAiQVhBbnlUeXBlU2VhcmNoS2V5IiwgIiIsIGZhbHNlKTsKKyAgICAgICAgaWYgKCFz
ZWFyY2hSZXN1bHQpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY29uc3Qgcm9sZSA9IHNl
YXJjaFJlc3VsdC5yb2xlOworICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbiR7cm9sZX1gOworICAg
ICAgICBpZiAocm9sZS5pbmNsdWRlcygiU3RhdGljVGV4dCIpKSB7CisgICAgICAgICAgICBsZXQg
dGV4dENvbnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJp
b3MiID8gc2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2VhcmNoUmVzdWx0LnN0cmluZ1ZhbHVl
OworICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3RleHRDb250ZW50fWA7CisgICAgICAg
IH0KKyAgICAgICAgdGVzdE91dHB1dCArPSAiXG4iOworICAgIH0KK30KKworaWYgKHdpbmRvdy5h
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1
ZTsKKworICAgIHRlc3RPdXRwdXQgKz0gIlRyYXZlcnNpbmcgcGFnZSBiYXNlZCBvbiBpbml0aWFs
IHN0YXRlLlxuIjsKKyAgICB0cmF2ZXJzZVBhZ2UoKTsKKworICAgIHRlc3RPdXRwdXQgKz0gIlxu
QWRkaW5nIGxpc3QgZWxlbWVudHMgdG8gI2Rpdi10by1pbnNlcnQtaW50byBhbmQgcGVyZm9ybWlu
ZyBhbm90aGVyIHBhZ2UgdHJhdmVyc2FsLlxuIjsKKworICAgIGNvbnN0IHVsID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgidWwiKTsKKyAgICBjb25zdCBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImxpIik7CisgICAgbGkuaW5uZXJIVE1MID0gIkxpc3QgaXRlbSBvbmUiOworICAgIHVsLmFw
cGVuZENoaWxkKGxpKTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2LXRvLWluc2Vy
dC1pbnRvIikuYXBwZW5kQ2hpbGQodWwpOworICAgIHNldFRpbWVvdXQoYXN5bmMgZnVuY3Rpb24o
KSB7CisgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4gYXhSb290LnVpRWxlbWVudEZvclNlYXJj
aFByZWRpY2F0ZShheFJvb3QsIHRydWUsICJBWExpc3RTZWFyY2hLZXkiLCAiIiwgZmFsc2UpKTsK
KyAgICAgICAgdHJhdmVyc2VQYWdlKCk7CisKKyAgICAgICAgZGVidWcodGVzdE91dHB1dCk7Cisg
ICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0sIDApOworfQorPC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMtZXhwZWN0ZWQudHh0CnNp
bWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMtZWxlbWVudC1yb2xlcy1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExh
eW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVzLWV4
cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5
LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkv
ZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJvbGVzLmh0bWwKc2ltaWxhcml0eSBpbmRleCA2NiUK
cmVuYW1lIGZyb20gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQtcm9sZXMuaHRtbApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2VsZW1lbnQtcm9sZXMuaHRtbAppbmRleCBiOTg0MGVlN2RhZWIuLjJiYjk1
YzI0YWRlZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNv
bnRlbnRzLWVsZW1lbnQtcm9sZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy5odG1sCkBAIC0xLDggKzEsOCBAQAogPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgogPGh0bWw+CiA8aGVh
ZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3Njcmlw
dD4KIDxzdHlsZT4KIC50ZXN0Y2FzZSB7IGRpc3BsYXk6IGNvbnRlbnRzIH07CiA8L3N0eWxlPgpA
QCAtOTgsMzcgKzk4LDM3IEBACiA8L2Rpdj4KIAogPHNjcmlwdD4KLSAgICAvLyBCdWZmZXIgdGVz
dCBvdXRwdXQgYW5kIGR1bXAgaXQgYXQgdGhlIGVuZCB0byBtYWtlIHRoZSB0ZXN0IHJ1biBmYXN0
ZXIgdnMuIGluZGl2aWR1YWwgYGRlYnVnYCBjYWxscy4KLSAgICB2YXIgdGVzdE91dHB1dCA9ICJU
aGlzIHRlc3QgZW5zdXJlcyBlbGVtZW50cyB3aXRoIENTUyBkaXNwbGF5OiBjb250ZW50cyBoYXZl
IHRoZSBjb3JyZWN0IHJvbGUuXG5cbiI7Ci0KLSAgICB2YXIgYXhFbGVtZW50OwotICAgIGZ1bmN0
aW9uIHZlcmlmeVJvbGVzKCkgewotICAgICAgICBjb25zdCB0ZXN0Y2FzZXMgPSBkb2N1bWVudC5n
ZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJ0ZXN0Y2FzZSIpOwotICAgICAgICBmb3IgKGNvbnN0IGRv
bUVsZW1lbnQgb2YgdGVzdGNhc2VzKSB7Ci0gICAgICAgICAgICBjb25zdCBvdXRlckhUTUwgPSBl
c2NhcGVIVE1MKGRvbUVsZW1lbnQuY2xvbmVOb2RlKCkub3V0ZXJIVE1MKTsKLSAgICAgICAgICAg
IGF4RWxlbWVudCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJ
ZChkb21FbGVtZW50LmlkKTsKLSAgICAgICAgICAgIGlmICghYXhFbGVtZW50KSB7Ci0gICAgICAg
ICAgICAgICAgdGVzdE91dHB1dCArPSBgRkFJTC4gQ291bGRuJ3QgZ2V0IEFYIGVsZW1lbnQgZm9y
ICMke2RvbUVsZW1lbnQuaWR9OiAke291dGVySFRNTH1cbmA7Ci0gICAgICAgICAgICAgICAgcmV0
dXJuOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgJHtvdXRlckhU
TUx9XG5gOwotICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgICAgICR7YXhFbGVtZW50LnJvbGV9
YDsKLQotICAgICAgICAgICAgbGV0IGNvbXB1dGVkUm9sZVN0cmluZyA9IGF4RWxlbWVudC5jb21w
dXRlZFJvbGVTdHJpbmc7Ci0gICAgICAgICAgICBpZiAoY29tcHV0ZWRSb2xlU3RyaW5nKQotICAg
ICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgIGNvbXB1dGVkUm9sZVN0cmluZzogJHtj
b21wdXRlZFJvbGVTdHJpbmd9YDsKLQotICAgICAgICAgICAgbGV0IHN1YnJvbGUgPSBheEVsZW1l
bnQuc3Vicm9sZTsKLSAgICAgICAgICAgIGlmIChzdWJyb2xlLnJlcGxhY2UoIkFYU3Vicm9sZTog
IiwgIiIpKQotICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgICR7c3Vicm9sZX1g
OwotICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgXG5cbmA7CisvLyBCdWZmZXIgdGVzdCBvdXRw
dXQgYW5kIGR1bXAgaXQgYXQgdGhlIGVuZCB0byBtYWtlIHRoZSB0ZXN0IHJ1biBmYXN0ZXIgdnMu
IGluZGl2aWR1YWwgYGRlYnVnYCBjYWxscy4KK3ZhciB0ZXN0T3V0cHV0ID0gIlRoaXMgdGVzdCBl
bnN1cmVzIGVsZW1lbnRzIHdpdGggQ1NTIGRpc3BsYXk6IGNvbnRlbnRzIGhhdmUgdGhlIGNvcnJl
Y3Qgcm9sZS5cblxuIjsKKwordmFyIGF4RWxlbWVudDsKK2Z1bmN0aW9uIHZlcmlmeVJvbGVzKCkg
eworICAgIGNvbnN0IHRlc3RjYXNlcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUo
InRlc3RjYXNlIik7CisgICAgZm9yIChjb25zdCBkb21FbGVtZW50IG9mIHRlc3RjYXNlcykgewor
ICAgICAgICBjb25zdCBvdXRlckhUTUwgPSBlc2NhcGVIVE1MKGRvbUVsZW1lbnQuY2xvbmVOb2Rl
KCkub3V0ZXJIVE1MKTsKKyAgICAgICAgYXhFbGVtZW50ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKGRvbUVsZW1lbnQuaWQpOworICAgICAgICBpZiAoIWF4
RWxlbWVudCkgeworICAgICAgICAgICAgdGVzdE91dHB1dCArPSBgRkFJTC4gQ291bGRuJ3QgZ2V0
IEFYIGVsZW1lbnQgZm9yICMke2RvbUVsZW1lbnQuaWR9OiAke291dGVySFRNTH1cbmA7CisgICAg
ICAgICAgICByZXR1cm47CiAgICAgICAgIH0KLSAgICB9CisgICAgICAgIHRlc3RPdXRwdXQgKz0g
YCR7b3V0ZXJIVE1MfVxuYDsKKyAgICAgICAgdGVzdE91dHB1dCArPSBgICAgICR7YXhFbGVtZW50
LnJvbGV9YDsKKworICAgICAgICBsZXQgY29tcHV0ZWRSb2xlU3RyaW5nID0gYXhFbGVtZW50LmNv
bXB1dGVkUm9sZVN0cmluZzsKKyAgICAgICAgaWYgKGNvbXB1dGVkUm9sZVN0cmluZykKKyAgICAg
ICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgIGNvbXB1dGVkUm9sZVN0cmluZzogJHtjb21wdXRl
ZFJvbGVTdHJpbmd9YDsKIAotICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIp
IHsKLSAgICAgICAgdmVyaWZ5Um9sZXMoKTsKLSAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImNvbnRlbnQiKS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgIGRlYnVn
KHRlc3RPdXRwdXQpOworICAgICAgICBsZXQgc3Vicm9sZSA9IGF4RWxlbWVudC5zdWJyb2xlOwor
ICAgICAgICBpZiAoc3Vicm9sZS5yZXBsYWNlKCJBWFN1YnJvbGU6ICIsICIiKSkKKyAgICAgICAg
ICAgIHRlc3RPdXRwdXQgKz0gYFxuICAgICR7c3Vicm9sZX1gOworICAgICAgICB0ZXN0T3V0cHV0
ICs9IGBcblxuYDsKICAgICB9Cit9CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIpIHsKKyAgICB2ZXJpZnlSb2xlcygpOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJj
b250ZW50Iikuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworICAgIGRlYnVnKHRlc3RPdXRw
dXQpOworfQogPC9zY3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvbGlzdC1leHBlY3RlZC50eHQKc2ltaWxh
cml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlz
cGxheS1jb250ZW50cy1saXN0LWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNj
ZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2xpc3QtZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMtbGlzdC5odG1sIGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2xpc3QuaHRtbApzaW1p
bGFyaXR5IGluZGV4IDkyJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rp
c3BsYXktY29udGVudHMtbGlzdC5odG1sCnJlbmFtZSB0byBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMvbGlzdC5odG1sCmluZGV4IDUwYjRiMjBmOGMxYS4uMjRjZGRk
NzcxZjlhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29u
dGVudHMtbGlzdC5odG1sCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy9saXN0Lmh0bWwKQEAgLTEsOCArMSw4IEBACiA8IURPQ1RZUEUgSFRNTCBQVUJMSUMg
Ii0vL0lFVEYvL0RURCBIVE1MLy9FTiI+CiA8aHRtbD4KIDxoZWFkPgotPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0
eS9kaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQKc2ltaWxhcml0
eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxh
eS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRU
ZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVyaW5nLWV4cGVj
dGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNv
bnRlbnRzLW9iamVjdC1vcmRlcmluZy5odG1sIGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sCnNpbWlsYXJpdHkgaW5kZXggNjYl
CnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1v
YmplY3Qtb3JkZXJpbmcuaHRtbApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9k
aXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sCmluZGV4IDNiN2M3ZGEwNDlmMS4u
ZTRmZTliOTllYjViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMtb2JqZWN0LW9yZGVyaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL29iamVjdC1vcmRlcmluZy5odG1sCkBAIC0xLDggKzEs
OCBAQAogPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgogPGh0
bWw+CiA8aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxw
ZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxw
ZXIuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0Lmpz
Ij48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5PgogCkBAIC00NiwzNiArNDYsMzYgQEAKIDwvZGl2
PgogCiA8c2NyaXB0PgotICAgIHZhciB0ZXN0T3V0cHV0ID0gIlRoaXMgdGVzdCBlbnN1cmVzIHRo
YXQgZGlzcGxheTpjb250ZW50cyBlbGVtZW50cyBhcmUgaW5zZXJ0ZWQgaW4gdGhlIGNvcnJlY3Qg
cGxhY2UgaW4gdGhlIEFYIHRyZWUuXG5cbiI7Cit2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3Qg
ZW5zdXJlcyB0aGF0IGRpc3BsYXk6Y29udGVudHMgZWxlbWVudHMgYXJlIGluc2VydGVkIGluIHRo
ZSBjb3JyZWN0IHBsYWNlIGluIHRoZSBBWCB0cmVlLlxuXG4iOwogCi0gICAgZnVuY3Rpb24gdHJh
dmVyc2UoY29udGFpbmVySWQpIHsKLSAgICAgICAgdGVzdE91dHB1dCArPSBgXG5QZXJmb3JtaW5n
IHNlYXJjaCB0cmF2ZXJzYWwgb2YgIyR7Y29udGFpbmVySWR9LlxuYDsKLSAgICAgICAgY29uc3Qg
Y29udGFpbmVyID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlk
KGNvbnRhaW5lcklkKTsKLSAgICAgICAgbGV0IHNlYXJjaFJlc3VsdCA9IG51bGw7Ci0gICAgICAg
IHdoaWxlICh0cnVlKSB7Ci0gICAgICAgICAgICBzZWFyY2hSZXN1bHQgPSBjb250YWluZXIudWlF
bGVtZW50Rm9yU2VhcmNoUHJlZGljYXRlKHNlYXJjaFJlc3VsdCwgdHJ1ZSwgIkFYQW55VHlwZVNl
YXJjaEtleSIsICIiLCBmYWxzZSk7Ci0gICAgICAgICAgICBpZiAoIXNlYXJjaFJlc3VsdCkKLSAg
ICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNvbnN0IHJvbGUgPSBzZWFyY2hSZXN1
bHQucm9sZTsKLSAgICAgICAgICAgIGNvbnN0IGlkID0gc2VhcmNoUmVzdWx0LmRvbUlkZW50aWZp
ZXI7Ci0gICAgICAgICAgICB0ZXN0T3V0cHV0ICs9IGBcbiR7aWQgPyBgIyR7aWR9IGAgOiAiIn0k
e3JvbGV9YDsKLSAgICAgICAgICAgIGlmIChyb2xlLmluY2x1ZGVzKCJTdGF0aWNUZXh0IikpIHsK
LSAgICAgICAgICAgICAgICBsZXQgdGV4dENvbnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxl
ci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiID8gc2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2Vh
cmNoUmVzdWx0LnN0cmluZ1ZhbHVlOwotICAgICAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxu
JHt0ZXh0Q29udGVudH1gOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgdGVzdE91dHB1dCAr
PSAiXG4iOworZnVuY3Rpb24gdHJhdmVyc2UoY29udGFpbmVySWQpIHsKKyAgICB0ZXN0T3V0cHV0
ICs9IGBcblBlcmZvcm1pbmcgc2VhcmNoIHRyYXZlcnNhbCBvZiAjJHtjb250YWluZXJJZH0uXG5g
OworICAgIGNvbnN0IGNvbnRhaW5lciA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2li
bGVFbGVtZW50QnlJZChjb250YWluZXJJZCk7CisgICAgbGV0IHNlYXJjaFJlc3VsdCA9IG51bGw7
CisgICAgd2hpbGUgKHRydWUpIHsKKyAgICAgICAgc2VhcmNoUmVzdWx0ID0gY29udGFpbmVyLnVp
RWxlbWVudEZvclNlYXJjaFByZWRpY2F0ZShzZWFyY2hSZXN1bHQsIHRydWUsICJBWEFueVR5cGVT
ZWFyY2hLZXkiLCAiIiwgZmFsc2UpOworICAgICAgICBpZiAoIXNlYXJjaFJlc3VsdCkKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjb25zdCByb2xlID0gc2VhcmNoUmVzdWx0LnJvbGU7Cisg
ICAgICAgIGNvbnN0IGlkID0gc2VhcmNoUmVzdWx0LmRvbUlkZW50aWZpZXI7CisgICAgICAgIHRl
c3RPdXRwdXQgKz0gYFxuJHtpZCA/IGAjJHtpZH0gYCA6ICIifSR7cm9sZX1gOworICAgICAgICBp
ZiAocm9sZS5pbmNsdWRlcygiU3RhdGljVGV4dCIpKSB7CisgICAgICAgICAgICBsZXQgdGV4dENv
bnRlbnQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiID8g
c2VhcmNoUmVzdWx0LmRlc2NyaXB0aW9uIDogc2VhcmNoUmVzdWx0LnN0cmluZ1ZhbHVlOworICAg
ICAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3RleHRDb250ZW50fWA7CiAgICAgICAgIH0KKyAg
ICAgICAgdGVzdE91dHB1dCArPSAiXG4iOwogICAgIH0KK30KIAotICAgIGlmICh3aW5kb3cuYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKLSAgICAgICAgdHJhdmVyc2UoImJ1dHRvbi1jb250YWlu
ZXIiKTsKLSAgICAgICAgdHJhdmVyc2UoImhlYWRpbmctY29udGFpbmVyIik7Ci0gICAgICAgIHRy
YXZlcnNlKCJtaXhlZC1lbGVtZW50LWNvbnRhaW5lciIpOworaWYgKHdpbmRvdy5hY2Nlc3NpYmls
aXR5Q29udHJvbGxlcikgeworICAgIHRyYXZlcnNlKCJidXR0b24tY29udGFpbmVyIik7CisgICAg
dHJhdmVyc2UoImhlYWRpbmctY29udGFpbmVyIik7CisgICAgdHJhdmVyc2UoIm1peGVkLWVsZW1l
bnQtY29udGFpbmVyIik7CiAKLSAgICAgICAgZm9yIChjb25zdCBjb250YWluZXJJZCBvZiBbImJ1
dHRvbi1jb250YWluZXIiLCAiaGVhZGluZy1jb250YWluZXIiLCAibWl4ZWQtZWxlbWVudC1jb250
YWluZXIiXSkKLSAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNvbnRhaW5lcklk
KS5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7Ci0gICAgICAgIGRlYnVnKHRlc3RPdXRwdXQp
OwotICAgIH0KKyAgICBmb3IgKGNvbnN0IGNvbnRhaW5lcklkIG9mIFsiYnV0dG9uLWNvbnRhaW5l
ciIsICJoZWFkaW5nLWNvbnRhaW5lciIsICJtaXhlZC1lbGVtZW50LWNvbnRhaW5lciJdKQorICAg
ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChjb250YWluZXJJZCkuc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOworICAgIGRlYnVnKHRlc3RPdXRwdXQpOworfQogPC9zY3JpcHQ+CiA8L2Jv
ZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3Bs
YXktY29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50
eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2FjY2Vzc2li
aWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4dApyZW5h
bWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10
cmF2ZXJzYWwtZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRyYXZlcnNhbC5odG1sIGIvTGF5b3V0VGVzdHMv
YWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjg4M2Y1ZTZlMGIxMAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9z
ZWFyY2gtdHJhdmVyc2FsLmh0bWwKQEAgLTAsMCArMSw3NiBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvYWNjZXNzaWJpbGl0eS1oZWxwZXIuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorCis8ZGl2IGlkPSJjb250YWluZXIiIHJvbGU9Imdyb3VwIj4KKyAgICA8cD5Db250
ZW50IGJlZm9yZSBtYWluLjwvcD4KKworICAgIDxtYWluPgorCisgICAgPGgxPk5vIHN0eWxlIGNo
YW5nZXM8L2gxPgorICAgIDxkaXYgcm9sZT0idG9vbGJhciI+CisgICAgICAgIDxkaXY+CisgICAg
ICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4K
KworICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24gdGhlIHRvb2xiYXI8L2gxPgorICAgIDxk
aXYgcm9sZT0idG9vbGJhciIgc3R5bGU9ImRpc3BsYXk6IGNvbnRlbnRzOyI+CisgICAgICAgIDxk
aXY+CisgICAgICAgICAgICA8YnV0dG9uPkZvbzwvYnV0dG9uPgorICAgICAgICA8L2Rpdj4KKyAg
ICA8L2Rpdj4KKworICAgIDxoMT5kaXNwbGF5OiBjb250ZW50czsgb24gdGhlIGdlbmVyaWMgZGl2
PC9oMT4KKyAgICA8ZGl2IHJvbGU9InRvb2xiYXIiPgorICAgICAgICA8ZGl2IHN0eWxlPSJkaXNw
bGF5OiBjb250ZW50czsiPgorICAgICAgICAgICAgPGJ1dHRvbj5Gb288L2J1dHRvbj4KKyAgICAg
ICAgPC9kaXY+CisgICAgPC9kaXY+CisKKyAgICA8aDE+ZGlzcGxheTogY29udGVudHM7IG9uIHRo
ZSBidXR0b248L2gxPgorICAgIDxkaXYgcm9sZT0idG9vbGJhciI+CisgICAgICAgIDxkaXY+Cisg
ICAgICAgICAgICA8YnV0dG9uIHN0eWxlPSJkaXNwbGF5OiBjb250ZW50czsiPkZvbzwvYnV0dG9u
PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Rpdj4KKworICAgIDwvbWFpbj4KKworICAgIDxwPkNv
bnRlbnQgYWZ0ZXIgbWFpbi48L3A+Cis8L2Rpdj4KKworPHNjcmlwdD4KK3ZhciB0ZXN0T3V0cHV0
ID0gIlRoaXMgdGVzdCBlbnN1cmVzIHdlIGNhbiB0cmF2ZXJzZSB0aHJvdWdoIGJhc2ljIHdlYnBh
Z2VzIHdpdGggbXVsdGlwbGUgZGlzcGxheTogY29udGVudHMgZWxlbWVudHMgdmlhIHNlYXJjaC5c
biI7CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICBjb25zdCBj
b250YWluZXJFbGVtZW50ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1l
bnRCeUlkKCJjb250YWluZXIiKTsKKworICAgIGxldCBlbGVtZW50Q291bnQgPSAwOworICAgIGxl
dCBzZWFyY2hSZXN1bHQgPSBudWxsOworICAgIHdoaWxlICh0cnVlKSB7CisgICAgICAgIHNlYXJj
aFJlc3VsdCA9IGNvbnRhaW5lckVsZW1lbnQudWlFbGVtZW50Rm9yU2VhcmNoUHJlZGljYXRlKHNl
YXJjaFJlc3VsdCwgdHJ1ZSwgIkFYQW55VHlwZVNlYXJjaEtleSIsICIiLCBmYWxzZSk7CisgICAg
ICAgIGlmICghc2VhcmNoUmVzdWx0KQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNvbnN0
IHJvbGUgPSBzZWFyY2hSZXN1bHQucm9sZTsKKyAgICAgICAgdGVzdE91dHB1dCArPSBgXG4ke3Jv
bGV9YDsKKyAgICAgICAgaWYgKHJvbGUuaW5jbHVkZXMoIlN0YXRpY1RleHQiKSkgeworICAgICAg
ICAgICAgbGV0IHRleHRDb250ZW50ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1O
YW1lID09PSAiaW9zIiA/IHNlYXJjaFJlc3VsdC5kZXNjcmlwdGlvbiA6IHNlYXJjaFJlc3VsdC5z
dHJpbmdWYWx1ZTsKKyAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYFxuJHt0ZXh0Q29udGVudH1g
OworICAgICAgICB9CisKKyAgICAgICAgdGVzdE91dHB1dCArPSAiXG4iOworICAgICAgICBlbGVt
ZW50Q291bnQgKz0gMTsKKyAgICB9CisgICAgdGVzdE91dHB1dCArPSBgXG5UcmF2ZXJzZWQgJHtl
bGVtZW50Q291bnR9IGVsZW1lbnRzLmA7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNv
bnRhaW5lciIpLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVuIjsKKyAgICBkZWJ1Zyh0ZXN0T3V0
cHV0KTsKK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy90ZXh0LXVuZGVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpy
ZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1j
b250ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3RleHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHQK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90
ZXh0LXVuZGVyLWVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxh
eS1jb250ZW50cy90ZXh0LXVuZGVyLWVsZW1lbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAuLmY4MGExMjdmYjBiYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90ZXh0LXVuZGVyLWVsZW1lbnQu
aHRtbApAQCAtMCwwICsxLDM5IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9hY2Nlc3NpYmlsaXR5LWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxidXR0
b24gaWQ9ImJ1dHRvbiIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMiPkNsaWNrIG1lPC9idXR0b24+
CisKKzxzY3JpcHQ+Cit2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHdl
IGNhbiBnZXQgdGhlIHRleHQgdW5kZXIgYSBkaXNwbGF5OmNvbnRlbnRzIGVsZW1lbnQgaW4gYWNj
ZXNzaWJpbGl0eSByZXF1ZXN0cy5cblxuIjsKKworZnVuY3Rpb24gdGV4dFVuZGVyRWxlbWVudChh
eEVsZW1lbnQpIHsKKyAgICBpZiAoYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIucGxhdGZvcm1OYW1l
ID09PSAiaW9zIikKKyAgICAgICAgcmV0dXJuIGF4RWxlbWVudC5kZXNjcmlwdGlvbjsKKyAgICBy
ZXR1cm4gYXhFbGVtZW50LnRpdGxlOworfQorCitpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250
cm9sbGVyKSB7CisgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOworCisgICAgY29uc3Qg
YXhCdXR0b24gPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQo
ImJ1dHRvbiIpOworICAgIHRlc3RPdXRwdXQgKz0gYCR7dGV4dFVuZGVyRWxlbWVudChheEJ1dHRv
bil9XG5gOworCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ1dHRvbiIpLmlubmVySFRN
TCA9ICIiOworICAgIHRlc3RPdXRwdXQgKz0gIlxuQ2xlYXJpbmcgaW5uZXJIVE1MIG9mICNidXR0
b24uXG5cbiI7CisgICAgc2V0VGltZW91dChhc3luYyBmdW5jdGlvbigpIHsKKyAgICAgICAgYXdh
aXQgd2FpdEZvcigoKSA9PiAhdGV4dFVuZGVyRWxlbWVudChheEJ1dHRvbikuaW5jbHVkZXMoIkNs
aWNrIG1lIikpOworICAgICAgICB0ZXN0T3V0cHV0ICs9IGAke3RleHRVbmRlckVsZW1lbnQoYXhC
dXR0b24pfVxuYDsKKworICAgICAgICBkZWJ1Zyh0ZXN0T3V0cHV0KTsKKyAgICAgICAgZmluaXNo
SlNUZXN0KCk7CisgICAgfSwgMCk7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3Ry
ZWUtYW5kLXRyZWVpdGVtcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L2Rpc3BsYXktY29udGVudHMvdHJlZS1hbmQtdHJlZWl0ZW1zLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjMzNjNmNTQ1ODk5ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy90cmVl
LWFuZC10cmVlaXRlbXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDQgQEAKK1RoaXMgdGVzdHMg
dGhhdCBhcmlhIHRyZWVzIGFuZCB0cmVlIGl0ZW1zIGFyZSBjb252ZXJ0ZWQgaW50byBBWE91dGxp
bmVzIGFuZCBBWFJvd3MsIHdpdGggYWxsIHRoZSByaWdodCBhdHRyaWJ1dGVzLgorCitQQVNTOiB0
cmVlLnJvbGUgPT09ICdBWFJvbGU6IEFYT3V0bGluZScKK1BBU1M6IGNhblNldFJvd3MgPT09IHRy
dWUKK1BBU1M6IHRyZWUuY2hpbGRyZW5Db3VudCA9PT0gOAorUEFTUzogdHJlZWl0ZW0xLnJvbGUg
PT09ICdBWFJvbGU6IEFYUm93JworUEFTUzogdHJlZWl0ZW0xLnN1YnJvbGUgPT09ICdBWFN1YnJv
bGU6IEFYT3V0bGluZVJvdycKK1BBU1M6IHRyZWVpdGVtMS5pc0V4cGFuZGVkID09PSB0cnVlCitQ
QVNTOiB0cmVlaXRlbTEuaGllcmFyY2hpY2FsTGV2ZWwgPT09IDAKK1BBU1M6IHRyZWVpdGVtMS5p
c0F0dHJpYnV0ZVN1cHBvcnRlZCgnQVhWYWx1ZScpID09PSB0cnVlCitQQVNTOiBjYW5TZXREaXNj
bG9zaW5nID09PSB0cnVlCitQQVNTOiB0cmVlaXRlbTIucm9sZSA9PT0gJ0FYUm9sZTogQVhSb3cn
CitQQVNTOiB0cmVlaXRlbTIuc3Vicm9sZSA9PT0gJ0FYU3Vicm9sZTogQVhPdXRsaW5lUm93Jwor
UEFTUzogdHJlZWl0ZW0yLmlzRXhwYW5kZWQgPT09IGZhbHNlCitQQVNTOiB0cmVlaXRlbTIuaGll
cmFyY2hpY2FsTGV2ZWwgPT09IDEKK1BBU1M6IHRyZWVpdGVtMi5kaXNjbG9zZWRCeVJvdygpLmlz
RXF1YWwodHJlZWl0ZW0xKSA9PT0gdHJ1ZQorUEFTUzogY2FuU2V0RGlzY2xvc2luZyA9PT0gZmFs
c2UKK1BBU1M6IHRyZWVpdGVtMy5zdHJpbmdWYWx1ZSA9PT0gJ0FYVmFsdWU6IEJpcmRzJworUEFT
UzogY2FuU2V0RGlzY2xvc2luZyA9PT0gZmFsc2UKK1BBU1M6IHRyZWVpdGVtMy5yb2xlID09PSAn
QVhSb2xlOiBBWFJvdycKK1BBU1M6IHRyZWVpdGVtMy5zdWJyb2xlID09PSAnQVhTdWJyb2xlOiBB
WE91dGxpbmVSb3cnCitQQVNTOiB0cmVlaXRlbTMuaXNFeHBhbmRlZCA9PT0gdHJ1ZQorUEFTUzog
dHJlZWl0ZW0zLmlzU2VsZWN0ZWQgPT09IGZhbHNlCitQQVNTOiB0cmVlaXRlbTMuaXNTZWxlY3Rl
ZCA9PT0gdHJ1ZQorUEFTUzogc2VsZWN0ZWRSb3cuaXNFcXVhbCh0cmVlaXRlbTMpID09PSB0cnVl
CitQQVNTOiB0cmVlaXRlbTQuaGllcmFyY2hpY2FsTGV2ZWwgPT09IDAKK1BBU1M6IHRyZWVpdGVt
NS5oaWVyYXJjaGljYWxMZXZlbCA9PT0gMQorUEFTUzogdHJlZWl0ZW02LmhpZXJhcmNoaWNhbExl
dmVsID09PSAxCisKK1VwZGF0aW5nIGFyaWEtbGV2ZWwgb2YgI3RyZWVpdGVtMiB0byAzLgorUEFT
UzogdHJlZWl0ZW0yLmhpZXJhcmNoaWNhbExldmVsID09PSAyCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorQW5pbWFscworQmlyZHMKKyBDYXRzCitT
aWFtZXNlCisgVGFiYnkKK1ZlZ2V0YWJsZXMKK0NhcnJvdHMKKyBCcm9jY29saQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvdHJlZS1hbmQt
dHJlZWl0ZW1zLmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvdHJlZS1hbmQtdHJlZWl0ZW1zLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwLi4yMTkyZTg5YzBlNWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvdHJlZS1hbmQtdHJlZWl0ZW1zLmh0bWwKQEAg
LTAsMCArMSwxMTkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2FjY2Vz
c2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPHVsIGlkPSJ0cmVl
IiByb2xlPSJ0cmVlIiBzdHlsZT0iZGlzcGxheTpjb250ZW50cyIgYXJpYS1sYWJlbGxlZGJ5PSJ0
cmVlbGFiZWwiIGFyaWEtYWN0aXZlZGVzY2VuZGFudD0idHJlZTBfaXRlbTBfMl8wXzEiIHRhYmlu
ZGV4PSIwIj4KKyAgICA8bGkgaWQ9InRyZWVpdGVtMSIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMi
IHJvbGU9InRyZWVpdGVtIiBhcmlhLWxldmVsPSIxIiBhcmlhLWV4cGFuZGVkPSJ0cnVlIiBhcmlh
LWNoZWNrZWQ9InRydWUiPgorICAgICAgICA8c3Bhbj4KKyAgICAgICAgICAgIDxzcGFuIGNsYXNz
PSJleHBhbmRlciI+PC9zcGFuPgorICAgICAgICAgICAgQW5pbWFscworICAgICAgICAgICAgPC9z
cGFuPgorICAgICAgICAgICAgPHVsIHJvbGU9Imdyb3VwIj4KKyAgICAgICAgICAgICAgICA8ZGl2
IGlkPSJ0cmVlaXRlbTIiIHN0eWxlPSJkaXNwbGF5OmNvbnRlbnRzIiByb2xlPSJ0cmVlaXRlbSIg
YXJpYS1sZXZlbD0iMiI+PHNwYW4+QmlyZHM8L3NwYW4+PC9kaXY+CisgICAgICAgICAgICAgICAg
PGxpIGlkPSJ0cmVlaXRlbTMiIHN0eWxlPSJkaXNwbGF5OmNvbnRlbnRzIiByb2xlPSJ0cmVlaXRl
bSIgYXJpYS1sZXZlbD0iMiIgYXJpYS1leHBhbmRlZD0idHJ1ZSI+CisgICAgICAgICAgICAgICAg
ICAgIDxzcGFuPgorICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZGVy
Ij48L3NwYW4+CisgICAgICAgICAgICAgICAgICAgICAgICBDYXRzCisgICAgICAgICAgICAgICAg
ICAgIDwvc3Bhbj4KKyAgICAgICAgICAgICAgICAgICAgPHVsIHJvbGU9Imdyb3VwIj4KKyAgICAg
ICAgICAgICAgICAgICAgICAgIDxsaSBpZD0idHJlZTBfaXRlbTBfMV8wIiByb2xlPSJ0cmVlaXRl
bSIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMiIGFyaWEtbGV2ZWw9IjMiPjxzcGFuPlNpYW1lc2U8
L3NwYW4+PC9saT4KKyAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBpZD0idHJlZTBfaXRlbTBf
MV8xIiByb2xlPSJ0cmVlaXRlbSIgc3R5bGU9ImRpc3BsYXk6Y29udGVudHMiIGFyaWEtbGV2ZWw9
IjMiPjxzcGFuPlRhYmJ5PC9zcGFuPjwvbGk+CisgICAgICAgICAgICAgICAgICAgIDwvdWw+Cisg
ICAgICAgICAgICAgICAgPC9saT4KKyAgICAgICAgICAgIDwvdWw+CisgICAgICAgIDwvc3Bhbj4K
KyAgICA8L2xpPgorCisgICAgPGxpIGlkPSJ0cmVlaXRlbTQiIHJvbGU9InRyZWVpdGVtIiBzdHls
ZT0iZGlzcGxheTpjb250ZW50cyIgYXJpYS1leHBhbmRlZD0idHJ1ZSI+CisgICAgICAgIDxzcGFu
PgorICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZGVyIj48L3NwYW4+CisgICAgICAgICAg
ICBWZWdldGFibGVzCisgICAgICAgICAgICA8L3NwYW4+CisgICAgICAgICAgICA8dWwgcm9sZT0i
Z3JvdXAiPgorICAgICAgICAgICAgICAgIDxkaXYgaWQ9InRyZWVpdGVtNSIgc3R5bGU9ImRpc3Bs
YXk6Y29udGVudHMiIHJvbGU9InRyZWVpdGVtIj48c3Bhbj5DYXJyb3RzPC9zcGFuPjwvZGl2Pgor
ICAgICAgICAgICAgICAgIDxkaXYgaWQ9InRyZWVpdGVtNiIgc3R5bGU9ImRpc3BsYXk6Y29udGVu
dHMiIHJvbGU9InRyZWVpdGVtIj48c3Bhbj5Ccm9jY29saTwvc3Bhbj48L2Rpdj4KKyAgICAgICAg
ICAgIDwvdWw+CisgICAgICAgIDwvc3Bhbj4KKyAgICA8L2xpPgorPC91bD4KKworPHNjcmlwdD4K
K3ZhciBvdXRwdXQgPSAiVGhpcyB0ZXN0cyB0aGF0IGFyaWEgdHJlZXMgYW5kIHRyZWUgaXRlbXMg
YXJlIGNvbnZlcnRlZCBpbnRvIEFYT3V0bGluZXMgYW5kIEFYUm93cywgd2l0aCBhbGwgdGhlIHJp
Z2h0IGF0dHJpYnV0ZXMuXG5cbiI7CisKK2lmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIpIHsKKyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKKyAgICAvLyBUZXN0IHRy
ZWUgYXR0cmlidXRlcy4KKyAgICB2YXIgdHJlZSA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFj
Y2Vzc2libGVFbGVtZW50QnlJZCgidHJlZSIpOworICAgIG91dHB1dCArPSBleHBlY3QoInRyZWUu
cm9sZSIsICInQVhSb2xlOiBBWE91dGxpbmUnIik7CisgICAgdmFyIGNhblNldFJvd3MgPSB0cmVl
LmlzQXR0cmlidXRlU2V0dGFibGUoJ0FYU2VsZWN0ZWRSb3dzJyk7CisgICAgb3V0cHV0ICs9IGV4
cGVjdCgiY2FuU2V0Um93cyIsICJ0cnVlIik7CisgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZS5j
aGlsZHJlbkNvdW50IiwgIjgiKTsKKworICAgIC8vIFRlc3QgdHJlZSBpdGVtIGF0dHJpYnV0ZXMu
CisgICAgdmFyIHRyZWVpdGVtMSA9IHRyZWUuY2hpbGRBdEluZGV4KDApOworICAgIG91dHB1dCAr
PSBleHBlY3QoInRyZWVpdGVtMS5yb2xlIiwgIidBWFJvbGU6IEFYUm93JyIpOworICAgIG91dHB1
dCArPSBleHBlY3QoInRyZWVpdGVtMS5zdWJyb2xlIiwgIidBWFN1YnJvbGU6IEFYT3V0bGluZVJv
dyciKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTEuaXNFeHBhbmRlZCIsICJ0cnVl
Iik7CisgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZWl0ZW0xLmhpZXJhcmNoaWNhbExldmVsIiwg
IjAiKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTEuaXNBdHRyaWJ1dGVTdXBwb3J0
ZWQoJ0FYVmFsdWUnKSIsICJ0cnVlIik7CisgICAgdmFyIGNhblNldERpc2Nsb3NpbmcgPSB0cmVl
aXRlbTEuaXNBdHRyaWJ1dGVTZXR0YWJsZSgnQVhEaXNjbG9zaW5nJyk7CisgICAgb3V0cHV0ICs9
IGV4cGVjdCgiY2FuU2V0RGlzY2xvc2luZyIsICJ0cnVlIik7CisKKyAgICB2YXIgdHJlZWl0ZW0y
ID0gdHJlZWl0ZW0xLmRpc2Nsb3NlZFJvd0F0SW5kZXgoMCk7CisgICAgb3V0cHV0ICs9IGV4cGVj
dCgidHJlZWl0ZW0yLnJvbGUiLCAiJ0FYUm9sZTogQVhSb3cnIik7CisgICAgb3V0cHV0ICs9IGV4
cGVjdCgidHJlZWl0ZW0yLnN1YnJvbGUiLCAiJ0FYU3Vicm9sZTogQVhPdXRsaW5lUm93JyIpOwor
ICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMi5pc0V4cGFuZGVkIiwgImZhbHNlIik7Cisg
ICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZWl0ZW0yLmhpZXJhcmNoaWNhbExldmVsIiwgIjEiKTsK
KyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTIuZGlzY2xvc2VkQnlSb3coKS5pc0VxdWFs
KHRyZWVpdGVtMSkiLCAidHJ1ZSIpOworICAgIGNhblNldERpc2Nsb3NpbmcgPSB0cmVlaXRlbTIu
aXNBdHRyaWJ1dGVTZXR0YWJsZSgnQVhEaXNjbG9zaW5nJyk7CisgICAgb3V0cHV0ICs9IGV4cGVj
dCgiY2FuU2V0RGlzY2xvc2luZyIsICJmYWxzZSIpOworCisgICAgdmFyIHRyZWVpdGVtMyA9IHRy
ZWVpdGVtMi5jaGlsZEF0SW5kZXgoMCk7CisgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJlZWl0ZW0z
LnN0cmluZ1ZhbHVlIiwgIidBWFZhbHVlOiBCaXJkcyciKTsKKyAgICBjYW5TZXREaXNjbG9zaW5n
ID0gdHJlZWl0ZW0zLmlzQXR0cmlidXRlU2V0dGFibGUoJ0FYRGlzY2xvc2luZycpOworICAgIG91
dHB1dCArPSBleHBlY3QoImNhblNldERpc2Nsb3NpbmciLCAiZmFsc2UiKTsKKworICAgIC8vIFRl
c3QgbW9yZSBBWFJvdyBhdHRyaWJ1dGVzIGFuZCB2YWx1ZXMgYXMgd2UgZGl2ZSBmdXJ0aGVyIGlu
LgorICAgIHRyZWVpdGVtMyA9IHRyZWVpdGVtMS5kaXNjbG9zZWRSb3dBdEluZGV4KDEpOworICAg
IG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMy5yb2xlIiwgIidBWFJvbGU6IEFYUm93JyIpOwor
ICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMy5zdWJyb2xlIiwgIidBWFN1YnJvbGU6IEFY
T3V0bGluZVJvdyciKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTMuaXNFeHBhbmRl
ZCIsICJ0cnVlIik7CisKKyAgICAvLyBUZXN0IHRoYXQgdGhlIHJvdyBjYW4gYmUgc2VsZWN0ZWQg
Y29ycmVjdGx5LgorICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtMy5pc1NlbGVjdGVkIiwg
ImZhbHNlIik7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRyZWVpdGVtMyIpLnNldEF0
dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsIHRydWUpOworICAgIG91dHB1dCArPSBleHBlY3QoInRy
ZWVpdGVtMy5pc1NlbGVjdGVkIiwgInRydWUiKTsKKworICAgIC8vIFRlc3QgdGhhdCB0aGUgdHJl
ZSByZXBvcnRzIHRoZSByaWdodCBzZWxlY3RlZCByb3cgKHRyZWVpdGVtMykKKyAgICB2YXIgc2Vs
ZWN0ZWRSb3cgPSB0cmVlLnNlbGVjdGVkUm93QXRJbmRleCgwKTsKKyAgICBvdXRwdXQgKz0gZXhw
ZWN0KCJzZWxlY3RlZFJvdy5pc0VxdWFsKHRyZWVpdGVtMykiLCAidHJ1ZSIpOworCisgICAgLy8g
VGVzdCB0aGF0IGhpZXJhcmNoaWNhbExldmVsIGNhbiBiZSBjb21wdXRlZCBhdXRvbWF0aWNhbGx5
LCBhbmQgdGhhdCBpdCdzIGNvbnNpc3RlbnQgd2l0aCB0aGUgQVJJQSBsZXZlbC4KKyAgICB2YXIg
dHJlZWl0ZW00ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlk
KCJ0cmVlaXRlbTQiKTsKKyAgICBvdXRwdXQgKz0gZXhwZWN0KCJ0cmVlaXRlbTQuaGllcmFyY2hp
Y2FsTGV2ZWwiLCAiMCIpOworCisgICAgdmFyIHRyZWVpdGVtNSA9IGFjY2Vzc2liaWxpdHlDb250
cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidHJlZWl0ZW01Iik7CisgICAgb3V0cHV0ICs9
IGV4cGVjdCgidHJlZWl0ZW01LmhpZXJhcmNoaWNhbExldmVsIiwgIjEiKTsKKworICAgIHZhciB0
cmVlaXRlbTYgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQo
InRyZWVpdGVtNiIpOworICAgIG91dHB1dCArPSBleHBlY3QoInRyZWVpdGVtNi5oaWVyYXJjaGlj
YWxMZXZlbCIsICIxIik7CisKKyAgICBvdXRwdXQgKz0gIlxuVXBkYXRpbmcgYXJpYS1sZXZlbCBv
ZiAjdHJlZWl0ZW0yIHRvIDMuXG4iOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0cmVl
aXRlbTIiKS5zZXRBdHRyaWJ1dGUoImFyaWEtbGV2ZWwiLCAiMyIpOworICAgIHNldFRpbWVvdXQo
YXN5bmMgZnVuY3Rpb24oKSB7CisgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4gdHJlZWl0ZW0y
LmhpZXJhcmNoaWNhbExldmVsID09PSAyKTsKKyAgICAgICAgb3V0cHV0ICs9IGV4cGVjdCgidHJl
ZWl0ZW0yLmhpZXJhcmNoaWNhbExldmVsIiwgIjIiKTsKKworICAgICAgICBkZWJ1ZyhvdXRwdXQp
OworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9LCAwKTsKK30KKzwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3Rl
eHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ1YjMwZGYyNTAyOS4uMDAwMDAwMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvdGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVs
ZW1lbnQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLTwhRE9DVFlQRSBIVE1M
IFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0
IHNyYz0iLi4vcmVzb3VyY2VzL2FjY2Vzc2liaWxpdHktaGVscGVyLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLQotPGJ1dHRvbiBpZD0iYnV0dG9uIiBzdHlsZT0iZGlzcGxheTpjb250ZW50cyI+Q2xp
Y2sgbWU8L2J1dHRvbj4KLQotPHNjcmlwdD4KLSAgICB2YXIgdGVzdE91dHB1dCA9ICJUaGlzIHRl
c3QgZW5zdXJlcyB0aGF0IHdlIGNhbiBnZXQgdGhlIHRleHQgdW5kZXIgYSBkaXNwbGF5OmNvbnRl
bnRzIGVsZW1lbnQgaW4gYWNjZXNzaWJpbGl0eSByZXF1ZXN0cy5cblxuIjsKLQotICAgIGZ1bmN0
aW9uIHRleHRVbmRlckVsZW1lbnQoYXhFbGVtZW50KSB7Ci0gICAgICAgIGlmIChhY2Nlc3NpYmls
aXR5Q29udHJvbGxlci5wbGF0Zm9ybU5hbWUgPT09ICJpb3MiKQotICAgICAgICAgICAgcmV0dXJu
IGF4RWxlbWVudC5kZXNjcmlwdGlvbjsKLSAgICAgICAgcmV0dXJuIGF4RWxlbWVudC50aXRsZTsK
LSAgICB9Ci0KLSAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7Ci0gICAg
ICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKLQotICAgICAgICBjb25zdCBheEJ1dHRv
biA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgiYnV0dG9u
Iik7Ci0gICAgICAgIHRlc3RPdXRwdXQgKz0gYCR7dGV4dFVuZGVyRWxlbWVudChheEJ1dHRvbil9
XG5gOwotCi0gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJidXR0b24iKS5pbm5lckhU
TUwgPSAiIjsKLSAgICAgICAgdGVzdE91dHB1dCArPSAiXG5DbGVhcmluZyBpbm5lckhUTUwgb2Yg
I2J1dHRvbi5cblxuIjsKLSAgICAgICAgc2V0VGltZW91dChhc3luYyBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4gIXRleHRVbmRlckVsZW1lbnQoYXhCdXR0b24p
LmluY2x1ZGVzKCJDbGljayBtZSIpKTsKLSAgICAgICAgICAgIHRlc3RPdXRwdXQgKz0gYCR7dGV4
dFVuZGVyRWxlbWVudChheEJ1dHRvbil9XG5gOwotCi0gICAgICAgICAgICBkZWJ1Zyh0ZXN0T3V0
cHV0KTsKLSAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwotICAgICAgICB9LCAwKTsKLSAgICB9
Ci08L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xp
Yi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDNmYjI2ZmU4MDQ2NS4uOGMzMWIyNWYxNjhhIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xpYi9UZXN0RXhwZWN0YXRpb25zCkBAIC00OTcsOSArNDk3
LDkgQEAgYWNjZXNzaWJpbGl0eS9iYXNpYy1mb2N1c2FiaWxpdHkuaHRtbCBbIFNraXAgXQogIyBN
aXNzaW5nIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnVpRWxlbWVudEZvclNlYXJjaFByZWRpY2F0
ZSBpbXBsZW1lbnRhdGlvbi4KIGFjY2Vzc2liaWxpdHkvYXJpYS1tb2RhbC13aXRoLXRleHQtY3Jh
c2guaHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9idXR0b24taW5zaWRlLWxhYmVsLWF4LXRl
eHQuaHRtbCBbIFNraXAgXQotYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNh
bGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lwIF0KLWFjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1vYmplY3Qtb3JkZXJpbmcuaHRtbCBbIFNraXAgXQotYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzLXNlYXJjaC10cmF2ZXJzYWwuaHRtbCBbIFNraXAgXQorYWNjZXNzaWJpbGl0
eS9kaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lw
IF0KK2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9vYmplY3Qtb3JkZXJpbmcuaHRtbCBb
IFNraXAgXQorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJzYWwu
aHRtbCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9lbXB0eS10ZXh0LXVuZGVyLWVsZW1lbnQtY2Fj
aGVkLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvc2VhcmNoLXRyYXZlcnNhbC1hZnRlci1y
b2xlLWNoYW5nZS5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L3RhYmxlLXNlYXJjaC10cmF2
ZXJzYWwuaHRtbCBbIFNraXAgXQpAQCAtNTEyLDYgKzUxMiw4IEBAIGFjY2Vzc2liaWxpdHkvdmlz
aWJsZS1jaGFyYWN0ZXItcmFuZ2UtaGVpZ2h0LWNoYW5nZXMuaHRtbCBbIFNraXAgXQogYWNjZXNz
aWJpbGl0eS92aXNpYmxlLWNoYXJhY3Rlci1yYW5nZS1zY3JvbGxpbmcuaHRtbCBbIFNraXAgXQog
YWNjZXNzaWJpbGl0eS92aXNpYmxlLWNoYXJhY3Rlci1yYW5nZS13aWR0aC1jaGFuZ2VzLmh0bWwg
WyBTa2lwIF0KIAorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3RyZWUtYW5kLXRyZWVp
dGVtcy5odG1sIFsgU2tpcCBdCisKICMgU3RhcnRlZCBmYWlsaW5nIGFmdGVyIGl0IHdhcyByZXdy
aXR0ZW4gaW4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1MTE3NS4K
ICMgVGVzdCBtYXkgbmVlZCB0byBiZSBhbHRlcmVkIHRvIGFjY29tbW9kYXRlIGdsaWItc3BlY2lm
aWMgYmVoYXZpb3I/CiBhY2Nlc3NpYmlsaXR5L2VsZW1lbnQtcmVmbGVjdGlvbi1hcmlhZGVzY3Jp
YmVkYnkuaHRtbCBbIFRpbWVvdXQgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z2xpYi9hY2Nlc3NpYmlsaXR5L2FyaWEtaGlkZGVuLWRpc3BsYXktY29udGVudHMtZWxlbWVudC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlz
cGxheS1jb250ZW50cy9hcmlhLWhpZGRlbi1leHBlY3RlZC50eHQKc2ltaWxhcml0eSBpbmRleCAx
MDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9h
cmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CnJlbmFtZSB0
byBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy9hcmlhLWhpZGRlbi1leHBlY3RlZC50eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWFyaWEtb3ducy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy9hcmlhLW93bnMtZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5h
bWUgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1hcmlhLW93bnMtZXhwZWN0ZWQudHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLW93bnMtZXhwZWN0
ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxp
dHkvZGlzcGxheS1jb250ZW50cy1lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2dsaWIvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2VsZW1lbnQt
cm9sZXMtZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlv
dXRUZXN0cy9wbGF0Zm9ybS9nbGliL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1lbGVt
ZW50LXJvbGVzLWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ2xp
Yi9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZWxlbWVudC1yb2xlcy1leHBlY3RlZC50
eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggOGY5MTA3
MzMyNDk4Li4zMDI0OWJhMTUwNTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lv
cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhw
ZWN0YXRpb25zCkBAIC0yMTY2LDcgKzIxNjYsNyBAQCBhY2Nlc3NpYmlsaXR5L3RhYmxlLWV4cG9z
dXJlLXVwZGF0ZXMtZHluYW1pY2FsbHkuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9hY2Nl
c3NpYmlsaXR5LW5vZGUtcmVwYXJlbnQuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9hcmlh
LWNoZWNrZWQtbWl4ZWQtdmFsdWUuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9hcmlhLWRl
c2NyaWJlZGJ5LW9uLWlucHV0Lmh0bWwgWyBQYXNzIF0KLWFjY2Vzc2liaWxpdHkvYXJpYS1oaWRk
ZW4tZGlzcGxheS1jb250ZW50cy1lbGVtZW50Lmh0bWwgWyBQYXNzIF0KK2FjY2Vzc2liaWxpdHkv
ZGlzcGxheS1jb250ZW50cy9hcmlhLWhpZGRlbi5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5
L2FyaWEtbXVsdGlsaW5lLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvYXJpYS1yZWFkb25s
eS11cGRhdGVzLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxp
dHkvYXJpYS1yZXF1aXJlZC11cGRhdGVzLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwgWyBQYXNz
IF0KQEAgLTIxNzgsOSArMjE3OCw5IEBAIGFjY2Vzc2liaWxpdHkvYnV0dG9uLWluc2lkZS1sYWJl
bC1heC10ZXh0Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvY2hhbmdpbmctYXJpYS1oaWRk
ZW4td2l0aC1kaXNwbGF5LW5vbmUtcGFyZW50Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkv
Y2hlY2tib3gtbWl4ZWQtdmFsdWUuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9kaWFsb2ct
c2xvdHRlZC1jb250ZW50Lmh0bWwgWyBQYXNzIF0KLWFjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250
ZW50cy1keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5odG1sIFsgUGFzcyBdCi1hY2Nlc3NpYmls
aXR5L2Rpc3BsYXktY29udGVudHMtZWxlbWVudC1yb2xlcy5odG1sIFsgUGFzcyBdCi1hY2Nlc3Np
YmlsaXR5L2Rpc3BsYXktY29udGVudHMtb2JqZWN0LW9yZGVyaW5nLmh0bWwgWyBQYXNzIF0KK2Fj
Y2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9keW5hbWljYWxseS1hZGRlZC1jaGlsZHJlbi5o
dG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZWxlbWVudC1yb2xl
cy5odG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9y
ZGVyaW5nLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvZHluYW1pY2FsbHktaWdub3JlZC1j
YW52YXMuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWhhc3BvcHVwLmh0bWwg
WyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvZW1wdHktdGV4dC11bmRlci1lbGVtZW50LWNhY2hlZC5o
dG1sIFsgUGFzcyBdCkBAIC0yMjAwLDcgKzIyMDAsNyBAQCBhY2Nlc3NpYmlsaXR5L3BsYWNlaG9s
ZGVyLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvcHJvZ3Jlc3MtaW5kZXRlcm1pbmF0ZS12
YWx1ZS5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L3NsaWRlci13aXRoLWxvc3QtcmVuZGVy
ZXIuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9zcGluYnV0dG9uLWluY3JlbWVudC1kZWNy
ZW1lbnQuaHRtbCBbIFBhc3MgXQotYWNjZXNzaWJpbGl0eS90ZXh0LXVuZGVyLWRpc3BsYXktY29u
dGVudHMtZWxlbWVudC5odG1sIFsgUGFzcyBdCithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvdGV4dC11bmRlci1lbGVtZW50Lmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvdGV4dC11
cGRhdGVzLWFmdGVyLWR5bmFtaWMtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkv
dXJsLXRlc3QuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS92aWRlby1lbGVtZW50LXVybC1h
dHRyaWJ1dGUuaHRtbCBbIFBhc3MgXQpAQCAtMjIyMCw3ICsyMjIwLDcgQEAgd2Via2l0Lm9yZy9i
LzE1MDM2NiBhY2Nlc3NpYmlsaXR5L2FyaWEtdGFibGUtYXR0cmlidXRlcy5odG1sIFsgUGFzcyBd
CiAKIGFjY2Vzc2liaWxpdHkvYXJpYS1tb2RhbC13aXRoLXRleHQtY3Jhc2guaHRtbCBbIFBhc3Mg
XQogYWNjZXNzaWJpbGl0eS9hcmlhLWxhYmVsbGVkYnktdGFyZ2V0aW5nLXNsb3QuaHRtbCBbIFBh
c3MgXQotYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLXNlYXJjaC10cmF2ZXJzYWwuaHRt
bCBbIFBhc3MgXQorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL3NlYXJjaC10cmF2ZXJz
YWwuaHRtbCBbIFBhc3MgXQogYWNjZXNzaWJpbGl0eS9zZWFyY2gtdHJhdmVyc2FsLWFmdGVyLXJv
bGUtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIGFjY2Vzc2liaWxpdHkvdGFibGUtc2VhcmNoLXRyYXZl
cnNhbC5odG1sIFsgUGFzcyBdCiBhY2Nlc3NpYmlsaXR5L2R5bmFtaWNhbGx5LWNoYW5naW5nLWlm
cmFtZS1yZW1haW5zLWFjY2Vzc2libGUuaHRtbCBbIFBhc3MgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvYXJpYS1oaWRkZW4tZGlzcGxheS1jb250
ZW50cy1lbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nl
c3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvYXJpYS1oaWRkZW4tZXhwZWN0ZWQudHh0CnNpbWls
YXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNj
ZXNzaWJpbGl0eS9hcmlhLWhpZGRlbi1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQu
dHh0CnJlbmFtZSB0byBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNw
bGF5LWNvbnRlbnRzL2FyaWEtaGlkZGVuLWV4cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWlj
YWxseS1hZGRlZC1jaGlsZHJlbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9p
b3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxk
cmVuLWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0
VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1keW5hbWlj
YWxseS1hZGRlZC1jaGlsZHJlbi1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExheW91dFRlc3RzL3Bs
YXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZHluYW1pY2FsbHktYWRk
ZWQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtcm9sZXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy9lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUK
cmVuYW1lIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxh
eS1jb250ZW50cy1lbGVtZW50LXJvbGVzLWV4cGVjdGVkLnR4dApyZW5hbWUgdG8gTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy9lbGVtZW50LXJv
bGVzLWV4cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2Fj
Y2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50
cy9vYmplY3Qtb3JkZXJpbmctZXhwZWN0ZWQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5h
bWUgZnJvbSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNv
bnRlbnRzLW9iamVjdC1vcmRlcmluZy1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvb2JqZWN0LW9yZGVy
aW5nLWV4cGVjdGVkLnR4dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2Fj
Y2Vzc2liaWxpdHkvZGlzcGxheS1jb250ZW50cy1zZWFyY2gtdHJhdmVyc2FsLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVu
dHMvc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJl
bmFtZSBmcm9tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMtc2VhcmNoLXRyYXZlcnNhbC1leHBlY3RlZC50eHQKcmVuYW1lIHRvIExheW91dFRl
c3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvc2VhcmNoLXRy
YXZlcnNhbC1leHBlY3RlZC50eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lv
cy9hY2Nlc3NpYmlsaXR5L3RleHQtdW5kZXItZGlzcGxheS1jb250ZW50cy1lbGVtZW50LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9hY2Nlc3NpYmlsaXR5L2Rpc3BsYXkt
Y29udGVudHMvdGV4dC11bmRlci1lbGVtZW50LWV4cGVjdGVkLnR4dApzaW1pbGFyaXR5IGluZGV4
IDEwMCUKcmVuYW1lIGZyb20gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2FjY2Vzc2liaWxpdHkv
dGV4dC11bmRlci1kaXNwbGF5LWNvbnRlbnRzLWVsZW1lbnQtZXhwZWN0ZWQudHh0CnJlbmFtZSB0
byBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRz
L3RleHQtdW5kZXItZWxlbWVudC1leHBlY3RlZC50eHQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azEvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA5Mzc3ZjNiMmY5NjUuLmRhYWU5ZDYyNmE2
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRp
b25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucwpA
QCAtODEyLDggKzgxMiw4IEBAIGFjY2Vzc2liaWxpdHkvcHJvZ3Jlc3MtaW5kZXRlcm1pbmF0ZS12
YWx1ZS5odG1sIFsgU2tpcCBdCiAjIHJvbGU9InNwaW5idXR0b24iIGVsZW1lbnRzIChtb250aCwg
ZGF5LCB5ZWFyKS4gV0sxIHJlbmRlcnMgZGF0ZSBpbnB1dHMgdXNpbmcgYSBjb250ZW50ZWRpdGFi
bGUgZGl2LgogYWNjZXNzaWJpbGl0eS9tYWMvZGF0ZS1pbnB1dC1pbmNyZW1lbnQtZGVjcmVtZW50
Lmh0bWwgWyBTa2lwIF0KIAotYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNvbnRlbnRzLWR5bmFtaWNh
bGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lwIF0KLWFjY2Vzc2liaWxpdHkvZGlzcGxheS1j
b250ZW50cy1hcmlhLW93bnMuaHRtbCBbIFNraXAgXQorYWNjZXNzaWJpbGl0eS9kaXNwbGF5LWNv
bnRlbnRzL2R5bmFtaWNhbGx5LWFkZGVkLWNoaWxkcmVuLmh0bWwgWyBTa2lwIF0KK2FjY2Vzc2li
aWxpdHkvZGlzcGxheS1jb250ZW50cy9hcmlhLW93bnMuaHRtbCBbIFNraXAgXQogCiBhY2Nlc3Np
YmlsaXR5L21hYy9sYXp5LXNwZWxsY2hlY2tpbmcuaHRtbCBbIFNraXAgXQogCkBAIC0xOTM1LDcg
KzE5MzUsNyBAQCBhY2Nlc3NpYmlsaXR5L2VsZW1lbnQtcmVmbGVjdGlvbi1hcmlhZXJyb3JtZXNz
YWdlLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvbWFjL3BzZXVkby1lbGVtZW50LXRleHQt
bWFya2Vycy5odG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L25lc3RlZC10ZXh0YXJlYXMtdmFs
dWUtY2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBTa2lwIF0KIGFjY2Vzc2liaWxpdHkvc2Vs
ZWN0ZWQtc3RhdGUtY2hhbmdlZC1ub3RpZmljYXRpb25zLmh0bWwgWyBTa2lwIF0KLWFjY2Vzc2li
aWxpdHkvZGlzcGxheS1jb250ZW50cy1kZXNjZW5kYW50LW1lbnUtaXRlbS5odG1sIFsgU2tpcCBd
CithY2Nlc3NpYmlsaXR5L2Rpc3BsYXktY29udGVudHMvZGVzY2VuZGFudC1tZW51LWl0ZW0uaHRt
bCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9lbGVtZW50LWxpbmUtcmVjdHMtYW5kLXRleHQuaHRt
bCBbIFNraXAgXQogYWNjZXNzaWJpbGl0eS9tYWMvbGluZS1pbmRleC1mb3ItdGV4dG1hcmtlci5o
dG1sIFsgU2tpcCBdCiBhY2Nlc3NpYmlsaXR5L21hYy9tYXRobWwtZWxlbWVudHMuaHRtbCBbIFNr
aXAgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>