<?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>144301</bug_id>
          
          <creation_ts>2015-04-27 18:07:32 -0700</creation_ts>
          <short_desc>Break up select-text test into multiple tests</short_desc>
          <delta_ts>2015-04-27 20:06:45 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Doug Russell">d_russell</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>ap</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>mario</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1089315</commentid>
    <comment_count>0</comment_count>
    <who name="Doug Russell">d_russell</who>
    <bug_when>2015-04-27 18:07:32 -0700</bug_when>
    <thetext>Select text has been flaky on WK1 Debug builds. Breaking it up into multiple tests to narrow down the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1089317</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-04-27 18:08:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/20720687&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1089324</commentid>
    <comment_count>2</comment_count>
      <attachid>251802</attachid>
    <who name="Doug Russell">d_russell</who>
    <bug_when>2015-04-27 18:12:17 -0700</bug_when>
    <thetext>Created attachment 251802
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1089339</commentid>
    <comment_count>3</comment_count>
      <attachid>251802</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-27 19:14:53 -0700</bug_when>
    <thetext>Comment on attachment 251802
patch

Thank you! Let&apos;s see what happens.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1089353</commentid>
    <comment_count>4</comment_count>
      <attachid>251802</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-27 20:06:40 -0700</bug_when>
    <thetext>Comment on attachment 251802
patch

Clearing flags on attachment: 251802

Committed r183448: &lt;http://trac.webkit.org/changeset/183448&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1089354</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-27 20:06:45 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251802</attachid>
            <date>2015-04-27 18:12:17 -0700</date>
            <delta_ts>2015-04-27 20:06:40 -0700</delta_ts>
            <desc>patch</desc>
            <filename>select-text.patch</filename>
            <type>text/plain</type>
            <size>45252</size>
            <attacher name="Doug Russell">d_russell</attacher>
            
              <data encoding="base64">Y29tbWl0IGU4YzAyZTM3OGZmN2MzMDEwYjg4YzgwMjVjNmViMzdjNGNjYTg3MzkKQXV0aG9yOiBE
b3VnIFJ1c3NlbGwgPGRfcnVzc2VsbEBhcHBsZS5jb20+CkRhdGU6ICAgTW9uIEFwciAyNyAxNzo1
ODoyOCAyMDE1IC0wNzAwCgogICAgQnJlYWsgdXAgc2VsZWN0IHRleHQgaW50byBtdWx0aXBsZSB0
ZXN0cwoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCAzOGM5OWFmLi5jNDQ2ZjI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIw
MTUtMDQtMjcgIERvdWcgUnVzc2VsbCAgPGRfcnVzc2VsbEBhcHBsZS5jb20+CisKKyAgICAgICAg
QnJlYWsgdXAgc2VsZWN0IHRleHQgaW50byBtdWx0aXBsZSB0ZXN0cworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0MzAxCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVj
dGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4
dC1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2li
aWxpdHkvc2VsZWN0LXRleHQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
YWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2Vs
ZWN0LXRleHQtMS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xMzU1NDYtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3Qt
dGV4dC0xMzU1NDYuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2li
aWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtMTM1NTc1LWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0
LXRleHQtMTM1NTc1Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3Np
YmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4
dC0yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3Nl
bGVjdC10ZXh0L3NlbGVjdC10ZXh0LTMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0zLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0
L3NlbGVjdC10ZXh0LTQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC00Lmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10
ZXh0LTUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNz
aWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC01Lmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTYtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9z
ZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC02Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTctZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4
dC9zZWxlY3QtdGV4dC03Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nl
c3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTgtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3Qt
dGV4dC04Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5
L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC05Lmh0
bWw6IEFkZGVkLgorCiAyMDE1LTA0LTI3ICBKYXZpZXIgRmVybmFuZGV6ICA8amZlcm5hbmRlekBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFtDU1MgR3JpZCBMYXlvdXRdIFN1cHBvcnQgZm9yIHRoZSBq
dXN0aWZ5LXNlbGYgYW5kIGp1c3RpZnktaXRlbXMgaW4gZ3JpZCBsYXlvdXQKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYzNkYzI3OC4uNGZiMjkyMyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTEyNjMsNiArMTI2
MywzIEBAIHdlYmtpdC5vcmcvYi8xNzAyMiBbIE1vdW50YWluTGlvbiBNYXZlcmlja3MgXSBmYXN0
L2ltYWdlcy9hbmltYXRlZC1wbmcuaHRtbCBbIFNrCiAjIE9TIFggMTAuMTAuMysgaGFzIHRoZSBu
ZWNlc3NhcnkgZ2x5cGhzLgogd2Via2l0Lm9yZy9iLzE0MjU0OCBbIFlvc2VtaXRlKyBdIGVkaXRp
bmcvc2VsZWN0aW9uL2V4dGVuZC1ieS1jaGFyYWN0ZXItMDA3Lmh0bWwgWyBQYXNzIF0KIHdlYmtp
dC5vcmcvYi8xNDE2NjEgWyBZb3NlbWl0ZSsgXSBmYXN0L3RleHQvZW1vamkuaHRtbCBbIFBhc3Mg
XQotCi0jIFRpbWluZyBvdXQgb24gWW9zZW1pdGUgJiBNYXZlcmlja3MgV0sxIHJlbGVhc2Ugc29t
ZXRpbWVzCi13ZWJraXQub3JnL2IvMTQyNzE5IHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3Nl
bGVjdC10ZXh0Lmh0bWwgWyBQYXNzIFRpbWVvdXQgXQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3Nl
bGVjdC10ZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3Np
YmlsaXR5L3NlbGVjdC10ZXh0LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMTFlZGZjYS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNj
ZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0
NiArMCwwIEBACi1UaGXCoHNsb3fCoEJST1dOwqBjYXTCoGp1bXBzIG92ZXIgdGhlIGxhenkgZG9n
LgotCi1URVhUMjrCoFRIRcKgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9n
LiBUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgotCi1UaGlzIHRl
c3RzIHRoZSBhYmlsaXR5IHRvIHNlbGVjdCBhbmQgcmVwbGFjZSB0ZXh0IHdpdGggcmVzcGVjdCB0
byBzZWxlY3Rpb24uCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHJlc3Vs
dCBpcyAnbGF6eScKLVBBU1Mgc2VsZWN0aW9uIGlzICdsYXp5JwotUEFTUyByZXN1bHQgaXMgJ292
ZXInCi1QQVNTIHNlbGVjdGlvbiBpcyAnb3ZlcicKLVBBU1MgcmVzdWx0IGlzICdxdWljaycKLVBB
U1Mgc2VsZWN0aW9uIGlzICdxdWljaycKLVBBU1MgcmVzdWx0IGlzICdmb3gnCi1QQVNTIHNlbGVj
dGlvbiBpcyAnZm94JwotUEFTUyByZXN1bHQgaXMgJ2RvZycKLVBBU1Mgc2VsZWN0aW9uIGlzICdk
b2cnCi1QQVNTIHJlc3VsdCBpcyAnZm94JwotUEFTUyBzZWxlY3Rpb24gaXMgJ2ZveCcKLVBBU1Mg
cmVzdWx0IGlzICdzbG93JwotUEFTUyBzZWxlY3Rpb24gaXMgJ3Nsb3cnCi1QQVNTIHJlc3VsdCBp
cyAnY2F0JwotUEFTUyBzZWxlY3Rpb24gaXMgJ2NhdCcKLVBBU1MgcmVzdWx0IGlzICdCcm93bicK
LVBBU1Mgc2VsZWN0aW9uIGlzICdCcm93bicKLVBBU1MgcmVzdWx0IGlzICdicm93bicKLVBBU1Mg
c2VsZWN0aW9uIGlzICdicm93bicKLVBBU1MgcmVzdWx0IGlzICdCUk9XTicKLVBBU1Mgc2VsZWN0
aW9uIGlzICdCUk9XTicKLVBBU1MgcmVzdWx0IGlzICdxdWljaycKLVBBU1Mgd2luZG93U2VsZWN0
aW9uLmdldFJhbmdlQXQoMCkuc3RhcnRPZmZzZXQgaXMgMTEKLVBBU1Mgd2luZG93U2VsZWN0aW9u
LmdldFJhbmdlQXQoMCkuZW5kT2Zmc2V0IGlzIDE2Ci1QQVNTIHJlc3VsdCBpcyAncXVpY2snCi1Q
QVNTIHdpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0T2Zmc2V0IGlzIDU2Ci1QQVNT
IHdpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLmVuZE9mZnNldCBpcyA2MQotUEFTUyB3aW5k
b3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS50b1N0cmluZygpIGlzICdUaGUnCi1QQVNTIHJlc3Vs
dCBpcyAnVEhFJwotUEFTUyB3aW5kb3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS50b1N0cmluZygp
IGlzICdUSEUnCi1QQVNTIHdpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0T2Zmc2V0
IGlzIDcKLVBBU1Mgd2luZG93U2VsZWN0aW9uLmdldFJhbmdlQXQoMCkuZW5kT2Zmc2V0IGlzIDEw
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRl
eHQuaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10
ZXh0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY5ZDBhZjEuLjAwMDAwMDAK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQu
aHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDE2NyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxo
dG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KLTx0aXRsZT5TZWxlY3QgVGV4dDwvdGl0bGU+Ci08L2hlYWQ+Ci08Ym9k
eT4KLQotPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dCI+VGhlIHF1aWNrIGJyb3du
IGZveCA8c3BhbiBpZD0idGFyZ2V0Ij5qdW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSBkb2cuIDwv
cD4KLQotPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dDIiPlRFWFQyOiBUaGUgcXVp
Y2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sgYnJvd24gZm94
IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLjwvcD4KLQotPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+
Ci08ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KLQotPHNjcmlwdD4KLSAgICBkZXNjcmlwdGlvbigi
VGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJl
c3BlY3QgdG8gc2VsZWN0aW9uLiIpOwotICAgIAotICAgIGZ1bmN0aW9uIHNlbGVjdGVkVGV4dCgp
IHsKLSAgICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygpOwotICAg
IH0KLSAgICAKLSAgICBmdW5jdGlvbiBzZWxlY3RFbGVtZW50VGV4dChlbGVtZW50KSB7Ci0gICAg
ICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Ci0gICAgICAgIHJhbmdlLnNl
bGVjdE5vZGVDb250ZW50cyhlbGVtZW50KTsKLSAgICAgICAgCi0gICAgICAgIHZhciBzZWxlY3Rp
b24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7Ci0gICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxS
YW5nZXMoKTsKLSAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKLSAgICB9Ci0gICAg
Ci0gICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgewotICAgICAgICB2YXIg
dGV4dCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidGV4
dCIpOwotICAgICAgICB2YXIgcmVzdWx0ID0gMDsKLSAgICAgICAgdmFyIHNlbGVjdGlvbiA9IDA7
Ci0gICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7
Ci0gICAgICAgIAotICAgICAgICAvLyBTZWxlY3QgdGV4dCBhZnRlciBzZWxlY3Rpb24gKHNpbmds
ZSBzZWFyY2ggc3RyaW5nKS4KLSAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0KTsKLSAg
ICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVjdFRleHRB
bWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdEFmdGVyU2VsZWN0aW9uIiwgImxhenkiKTsKLSAgICAg
ICAgc2hvdWxkQmUoInJlc3VsdCIsICInbGF6eSciKTsKLSAgICAgICAgc2VsZWN0aW9uID0gc2Vs
ZWN0ZWRUZXh0KCk7Ci0gICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb24iLCAiJ2xhenknIik7Ci0g
ICAgICAgIAotICAgICAgICAvLyBTZWxlY3QgdGV4dCBhZnRlciBzZWxlY3Rpb24gKG11bHRpcGxl
IHNlYXJjaCBzdHJpbmdzKS4KLSAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0KTsKLSAg
ICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVjdFRleHRB
bWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdEFmdGVyU2VsZWN0aW9uIiwgWyJsYXp5IiwgIm92ZXIi
XSk7Ci0gICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ292ZXInIik7Ci0gICAgICAgIHNlbGVj
dGlvbiA9IHNlbGVjdGVkVGV4dCgpOwotICAgICAgICBzaG91bGRCZSgic2VsZWN0aW9uIiwgIidv
dmVyJyIpOwotICAgICAgICAKLSAgICAgICAgLy8gU2VsZWN0IHRleHQgYmVmb3JlIHNlbGVjdGlv
biAoc2luZ2xlIHNlYXJjaCBzdHJpbmcpLgotICAgICAgICBzZWxlY3RFbGVtZW50VGV4dCh0YXJn
ZXQpOwotICAgICAgICByZXN1bHQgPSB0ZXh0LnNlbGVjdFRleHRXaXRoQ3JpdGVyaWEoIkFYU2Vs
ZWN0VGV4dEFtYmlndWl0eVJlc29sdXRpb25DbG9zZXN0QmVmb3JlU2VsZWN0aW9uIiwgInF1aWNr
Iik7Ci0gICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ3F1aWNrJyIpOwotICAgICAgICBzZWxl
Y3Rpb24gPSBzZWxlY3RlZFRleHQoKTsKLSAgICAgICAgc2hvdWxkQmUoInNlbGVjdGlvbiIsICIn
cXVpY2snIik7Ci0gICAgICAgIAotICAgICAgICAvLyBTZWxlY3QgdGV4dCBiZWZvcmUgc2VsZWN0
aW9uIChtdWx0aXBsZSBzZWFyY2ggc3RyaW5ncykuCi0gICAgICAgIHNlbGVjdEVsZW1lbnRUZXh0
KHRhcmdldCk7Ci0gICAgICAgIHJlc3VsdCA9IHRleHQuc2VsZWN0VGV4dFdpdGhDcml0ZXJpYSgi
QVhTZWxlY3RUZXh0QW1iaWd1aXR5UmVzb2x1dGlvbkNsb3Nlc3RCZWZvcmVTZWxlY3Rpb24iLCBb
InF1aWNrIiwgImZveCJdKTsKLSAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICInZm94JyIpOwot
ICAgICAgICBzZWxlY3Rpb24gPSBzZWxlY3RlZFRleHQoKTsKLSAgICAgICAgc2hvdWxkQmUoInNl
bGVjdGlvbiIsICInZm94JyIpOwotICAgICAgICAKLSAgICAgICAgLy8gU2VsZWN0IHRleHQgY2xv
c2VzdCB0byBzZWxlY3Rpb24gKHNpbmdsZSBzZWFyY2ggc3RyaW5nKS4KLSAgICAgICAgc2VsZWN0
RWxlbWVudFRleHQodGFyZ2V0KTsKLSAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0
aENyaXRlcmlhKCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRvU2VsZWN0
aW9uIiwgImRvZyIpOwotICAgICAgICBzaG91bGRCZSgicmVzdWx0IiwgIidkb2cnIik7Ci0gICAg
ICAgIHNlbGVjdGlvbiA9IHNlbGVjdGVkVGV4dCgpOwotICAgICAgICBzaG91bGRCZSgic2VsZWN0
aW9uIiwgIidkb2cnIik7Ci0gICAgICAgIAotICAgICAgICAvLyBTZWxlY3QgdGV4dCBjbG9zZXN0
IHRvIHNlbGVjdGlvbiAobXVsdGlwbGUgc2VhcmNoIHN0cmluZ3MpLgotICAgICAgICBzZWxlY3RF
bGVtZW50VGV4dCh0YXJnZXQpOwotICAgICAgICByZXN1bHQgPSB0ZXh0LnNlbGVjdFRleHRXaXRo
Q3JpdGVyaWEoIkFYU2VsZWN0VGV4dEFtYmlndWl0eVJlc29sdXRpb25DbG9zZXN0VG9TZWxlY3Rp
b24iLCBbImRvZyIsICJmb3giXSk7Ci0gICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ2ZveCci
KTsKLSAgICAgICAgc2VsZWN0aW9uID0gc2VsZWN0ZWRUZXh0KCk7Ci0gICAgICAgIHNob3VsZEJl
KCJzZWxlY3Rpb24iLCAiJ2ZveCciKTsKLSAgICAgICAgCi0gICAgICAgIC8vIFNlbGVjdCBhbmQg
cmVwbGFjZSB0ZXh0IGNsb3Nlc3QgdG8gc2VsZWN0aW9uIChzaW5nbGUgc2VhcmNoIHN0cmluZyku
Ci0gICAgICAgIHNlbGVjdEVsZW1lbnRUZXh0KHRhcmdldCk7Ci0gICAgICAgIHJlc3VsdCA9IHRl
eHQuc2VsZWN0VGV4dFdpdGhDcml0ZXJpYSgiQVhTZWxlY3RUZXh0QW1iaWd1aXR5UmVzb2x1dGlv
bkNsb3Nlc3RUb1NlbGVjdGlvbiIsICJxdWljayIsICJzbG93Iik7Ci0gICAgICAgIHNob3VsZEJl
KCJyZXN1bHQiLCAiJ3Nsb3cnIik7Ci0gICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGVkVGV4dCgp
OwotICAgICAgICBzaG91bGRCZSgic2VsZWN0aW9uIiwgIidzbG93JyIpOwotICAgICAgICAKLSAg
ICAgICAgLy8gU2VsZWN0IGFuZCByZXBsYWNlIHRleHQgY2xvc2VzdCB0byBzZWxlY3Rpb24gKG11
bHRpcGxlIHNlYXJjaCBzdHJpbmdzKS4KLSAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0
KTsKLSAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVj
dFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRvU2VsZWN0aW9uIiwgWyJkb2ciLCAiZm94
Il0sICJjYXQiKTsKLSAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICInY2F0JyIpOwotICAgICAg
ICBzZWxlY3Rpb24gPSBzZWxlY3RlZFRleHQoKTsKLSAgICAgICAgc2hvdWxkQmUoInNlbGVjdGlv
biIsICInY2F0JyIpOwotCi0gICAgICAgIC8vIFNlbGVjdCBicm93biBhbmQgY2FwaXRhbGl6ZSBp
dC4KLSAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0KTsKLSAgICAgICAgcmVzdWx0ID0g
dGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0
aW9uQ2xvc2VzdFRvU2VsZWN0aW9uIiwgImJyb3duIiwgbnVsbCwgIkFYU2VsZWN0VGV4dEFjdGl2
aXR5RmluZEFuZENhcGl0YWxpemUiKTsKLSAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICInQnJv
d24nIik7Ci0gICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGVkVGV4dCgpOwotICAgICAgICBzaG91
bGRCZSgic2VsZWN0aW9uIiwgIidCcm93biciKTsKLQotICAgICAgICAvLyBTZWxlY3QgQnJvd24g
YW5kIGxvd2VyY2FzZSBpdC4KLSAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0KTsKLSAg
ICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVjdFRleHRB
bWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRvU2VsZWN0aW9uIiwgIkJyb3duIiwgbnVsbCwgIkFY
U2VsZWN0VGV4dEFjdGl2aXR5RmluZEFuZExvd2VyY2FzZSIpOwotICAgICAgICBzaG91bGRCZSgi
cmVzdWx0IiwgIidicm93biciKTsKLSAgICAgICAgc2VsZWN0aW9uID0gc2VsZWN0ZWRUZXh0KCk7
Ci0gICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb24iLCAiJ2Jyb3duJyIpOwotCi0gICAgICAgIC8v
IFNlbGVjdCBicm93biBhbmQgdXBwZXJjYXNlIGl0LgotICAgICAgICBzZWxlY3RFbGVtZW50VGV4
dCh0YXJnZXQpOwotICAgICAgICByZXN1bHQgPSB0ZXh0LnNlbGVjdFRleHRXaXRoQ3JpdGVyaWEo
IkFYU2VsZWN0VGV4dEFtYmlndWl0eVJlc29sdXRpb25DbG9zZXN0VG9TZWxlY3Rpb24iLCAiYnJv
d24iLCBudWxsLCAiQVhTZWxlY3RUZXh0QWN0aXZpdHlGaW5kQW5kVXBwZXJjYXNlIik7Ci0gICAg
ICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ0JST1dOJyIpOwotICAgICAgICBzZWxlY3Rpb24gPSBz
ZWxlY3RlZFRleHQoKTsKLSAgICAgICAgc2hvdWxkQmUoInNlbGVjdGlvbiIsICInQlJPV04nIik7
Ci0KLSAgICAgICAgLy8gW2h0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzU1NDZdIAotICAgICAgICAvLyBBIG1hdGNoaW5nIHJhbmdlIGJlZm9yZSB0aGUgc2VsZWN0aW9u
IHNob3VsZCBiZSBzZWxlY3RlZCB3aGVuIHNlYXJjaGluZyBmb3IgY2xvc2VzdCBtYXRjaC4KLSAg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHQyIikuZm9jdXMoKTsKLSAgICAgICAg
dmFyIHdpbmRvd1NlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKLSAgICAgICAgd2lu
ZG93U2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOwotCi0gICAgICAgIC8vIEZpcnN0IGZpbmQg
dGhlIHJhbmdlIGJlZm9yZSB0aGUgY3VycmVudCBzZWxlY3Rpb24uCi0gICAgICAgIHZhciByYW5n
ZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Ci0gICAgICAgIHJhbmdlLnNldFN0YXJ0KGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0MiIpLmZpcnN0Q2hpbGQsIDIwKTsKLSAgICAgICAgcmFu
Z2Uuc2V0RW5kKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0MiIpLmZpcnN0Q2hpbGQsIDIw
KTsKLSAgICAgICAgd2luZG93U2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKLSAgICAgIAotICAg
ICAgICB2YXIgdGV4dDIgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVu
dEJ5SWQoInRleHQyIik7Ci0gICAgICAgIHJlc3VsdCA9IHRleHQyLnNlbGVjdFRleHRXaXRoQ3Jp
dGVyaWEoIkFYU2VsZWN0VGV4dEFtYmlndWl0eVJlc29sdXRpb25DbG9zZXN0VG9TZWxlY3Rpb24i
LCAicXVpY2siKTsKLSAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICIncXVpY2snIik7Ci0gICAg
ICAgIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKLSAgICAgICAgc2hvdWxkQmUo
IndpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0T2Zmc2V0IiwgIjExIik7Ci0gICAg
ICAgIHNob3VsZEJlKCJ3aW5kb3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS5lbmRPZmZzZXQiLCAi
MTYiKTsKLQotICAgICAgICAvLyBNb3ZlIHRoZSBjdXJzb3IgY2xvc2VyIHRvIHRoZSBzZWNvbmQg
aW5zdGFuY2UgaW4gZnJvbnQgb2YgdGhlIHNlbGVjdGlvbi4KLSAgICAgICAgcmFuZ2UgPSBkb2N1
bWVudC5jcmVhdGVSYW5nZSgpOwotICAgICAgICByYW5nZS5zZXRTdGFydChkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgidGV4dDIiKS5maXJzdENoaWxkLCA0OCk7Ci0gICAgICAgIHJhbmdlLnNldEVu
ZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dDIiKS5maXJzdENoaWxkLCA0OCk7Ci0gICAg
ICAgIHdpbmRvd1NlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKLSAgICAgICAgd2luZG93U2Vs
ZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKLQotICAgICAgICByZXN1bHQgPSB0ZXh0Mi5zZWxlY3RU
ZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRv
U2VsZWN0aW9uIiwgInF1aWNrIik7Ci0gICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ3F1aWNr
JyIpOwotICAgICAgICBzaG91bGRCZSgid2luZG93U2VsZWN0aW9uLmdldFJhbmdlQXQoMCkuc3Rh
cnRPZmZzZXQiLCAiNTYiKTsKLSAgICAgICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRS
YW5nZUF0KDApLmVuZE9mZnNldCIsICI2MSIpOwotCi0gICAgICAgIC8vIFtodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1NTc1XQotICAgICAgICAvLyBXaGVuIGFuIGV4
aXN0aW5nIHJhbmdlIGlzIGFscmVhZHkgc2VsZWN0ZWQsIHdlIHNob3VsZCBub3QgaWdub3JlIHRo
YXQgd2hlbiBzZWFyY2hpbmcgZm9yIGZ1dHVyZSBhY3Rpdml0aWVzLgotICAgICAgICAvLyBGaXJz
dCBmaW5kIHRoZSByYW5nZSBiZWZvcmUgdGhlIGN1cnJlbnQgc2VsZWN0aW9uLgotICAgICAgICB2
YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOwotICAgICAgICByYW5nZS5zZXRTdGFy
dChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dDIiKS5maXJzdENoaWxkLCA3KTsKLSAgICAg
ICAgcmFuZ2Uuc2V0RW5kKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0MiIpLmZpcnN0Q2hp
bGQsIDEwKTsKLSAgICAgICAgd2luZG93U2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOwotICAg
ICAgICB3aW5kb3dTZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOwotICAgICAgICBzaG91bGRCZSgi
d2luZG93U2VsZWN0aW9uLmdldFJhbmdlQXQoMCkudG9TdHJpbmcoKSIsICInVGhlJyIpOwotICAg
ICAgCi0gICAgICAgIHZhciB0ZXh0MiA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2li
bGVFbGVtZW50QnlJZCgidGV4dDIiKTsKLSAgICAgICAgcmVzdWx0ID0gdGV4dDIuc2VsZWN0VGV4
dFdpdGhDcml0ZXJpYSgiQVhTZWxlY3RUZXh0QW1iaWd1aXR5UmVzb2x1dGlvbkNsb3Nlc3RUb1Nl
bGVjdGlvbiIsICJ0aGUiLCBudWxsLCAiQVhTZWxlY3RUZXh0QWN0aXZpdHlGaW5kQW5kVXBwZXJj
YXNlIik7Ci0gICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ1RIRSciKTsKLSAgICAgICAgc2hv
dWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnRvU3RyaW5nKCkiLCAiJ1RIRSci
KTsKLSAgICAgICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0
T2Zmc2V0IiwgIjciKTsKLSAgICAgICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRSYW5n
ZUF0KDApLmVuZE9mZnNldCIsICIxMCIpOwotICAgIH0KLTwvc2NyaXB0PgotCi08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTEtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUwNTQ0NGEKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9z
ZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitU
aGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitURVhUMjogVGhl
IHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3du
IGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0
byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9uLgorCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ2xhenknCitQQVNT
IHNlbGVjdGlvbiBpcyAnbGF6eScKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNj
ZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xLmh0bWwgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTlmYWU1ZgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0
L3NlbGVjdC10ZXh0LTEuaHRtbApAQCAtMCwwICsxLDQ5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzx0aXRsZT5TZWxlY3QgVGV4dDwvdGl0bGU+Cis8L2hlYWQ+Cis8
Ym9keT4KKworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dCI+VGhlIHF1aWNrIGJy
b3duIGZveCA8c3BhbiBpZD0idGFyZ2V0Ij5qdW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSBkb2cu
IDwvcD4KKworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dDIiPlRFWFQyOiBUaGUg
cXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sgYnJvd24g
Zm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLjwvcD4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlv
bigiVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRo
IHJlc3BlY3QgdG8gc2VsZWN0aW9uLiIpOworICAgIAorICAgIGZ1bmN0aW9uIHNlbGVjdGVkVGV4
dCgpIHsKKyAgICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygpOwor
ICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3RFbGVtZW50VGV4dChlbGVtZW50KSB7Cisg
ICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgIHJhbmdl
LnNlbGVjdE5vZGVDb250ZW50cyhlbGVtZW50KTsKKyAgICAgICAgCisgICAgICAgIHZhciBzZWxl
Y3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVB
bGxSYW5nZXMoKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKyAgICB9Cisg
ICAgCisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICB2
YXIgdGV4dCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgi
dGV4dCIpOworICAgICAgICB2YXIgcmVzdWx0ID0gMDsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9
IDA7CisgICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0
Iik7CisgICAgICAgIAorICAgICAgICAvLyBTZWxlY3QgdGV4dCBhZnRlciBzZWxlY3Rpb24gKHNp
bmdsZSBzZWFyY2ggc3RyaW5nKS4KKyAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0KTsK
KyAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVjdFRl
eHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdEFmdGVyU2VsZWN0aW9uIiwgImxhenkiKTsKKyAg
ICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICInbGF6eSciKTsKKyAgICAgICAgc2VsZWN0aW9uID0g
c2VsZWN0ZWRUZXh0KCk7CisgICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb24iLCAiJ2xhenknIik7
CisgICAgfQorPC9zY3JpcHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVj
dC10ZXh0LTEzNTU0Ni1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNj
ZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xMzU1NDYtZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMyYmQ4YTcKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9z
ZWxlY3QtdGV4dC0xMzU1NDYtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTkgQEAKK1RoZSBxdWlj
ayBicm93biBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBkb2cuCisKK1RFWFQyOiBUaGUgcXVpY2sg
YnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sgYnJvd24gZm94IGp1
bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitUaGlzIHRlc3RzIHRoZSBhYmlsaXR5IHRvIHNlbGVj
dCBhbmQgcmVwbGFjZSB0ZXh0IHdpdGggcmVzcGVjdCB0byBzZWxlY3Rpb24uCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJlc3VsdCBpcyAncXVpY2snCitQQVNTIHdpbmRv
d1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0T2Zmc2V0IGlzIDExCitQQVNTIHdpbmRvd1Nl
bGVjdGlvbi5nZXRSYW5nZUF0KDApLmVuZE9mZnNldCBpcyAxNgorUEFTUyByZXN1bHQgaXMgJ3F1
aWNrJworUEFTUyB3aW5kb3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS5zdGFydE9mZnNldCBpcyA1
NgorUEFTUyB3aW5kb3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS5lbmRPZmZzZXQgaXMgNjEKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9z
ZWxlY3QtdGV4dC0xMzU1NDYuaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3Np
YmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTEzNTU0Ni5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY5MGY1MWMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0x
MzU1NDYuaHRtbApAQCAtMCwwICsxLDczIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzx0aXRsZT5TZWxlY3QgVGV4dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKwor
PHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dCI+VGhlIHF1aWNrIGJyb3duIGZveCA8
c3BhbiBpZD0idGFyZ2V0Ij5qdW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSBkb2cuIDwvcD4KKwor
PHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dDIiPlRFWFQyOiBUaGUgcXVpY2sgYnJv
d24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBz
IG92ZXIgdGhlIGxhenkgZG9nLjwvcD4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGhpcyB0
ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3Qg
dG8gc2VsZWN0aW9uLiIpOworICAgIAorICAgIGZ1bmN0aW9uIHNlbGVjdGVkVGV4dCgpIHsKKyAg
ICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygpOworICAgIH0KKyAg
ICAKKyAgICBmdW5jdGlvbiBzZWxlY3RFbGVtZW50VGV4dChlbGVtZW50KSB7CisgICAgICAgIHZh
ciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgIHJhbmdlLnNlbGVjdE5v
ZGVDb250ZW50cyhlbGVtZW50KTsKKyAgICAgICAgCisgICAgICAgIHZhciBzZWxlY3Rpb24gPSB3
aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMo
KTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKyAgICB9CisgICAgCisgICAg
aWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICB2YXIgdGV4dCA9
IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidGV4dCIpOwor
ICAgICAgICB2YXIgcmVzdWx0ID0gMDsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IDA7CisgICAg
ICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisKKyAg
ICAgICAgLy8gW2h0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzU1NDZd
IAorICAgICAgICAvLyBBIG1hdGNoaW5nIHJhbmdlIGJlZm9yZSB0aGUgc2VsZWN0aW9uIHNob3Vs
ZCBiZSBzZWxlY3RlZCB3aGVuIHNlYXJjaGluZyBmb3IgY2xvc2VzdCBtYXRjaC4KKyAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHQyIikuZm9jdXMoKTsKKyAgICAgICAgdmFyIHdp
bmRvd1NlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKKyAgICAgICAgd2luZG93U2Vs
ZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOworCisgICAgICAgIC8vIEZpcnN0IGZpbmQgdGhlIHJh
bmdlIGJlZm9yZSB0aGUgY3VycmVudCBzZWxlY3Rpb24uCisgICAgICAgIHZhciByYW5nZSA9IGRv
Y3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgIHJhbmdlLnNldFN0YXJ0KGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXh0MiIpLmZpcnN0Q2hpbGQsIDIwKTsKKyAgICAgICAgcmFuZ2Uuc2V0
RW5kKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0MiIpLmZpcnN0Q2hpbGQsIDIwKTsKKyAg
ICAgICAgd2luZG93U2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKyAgICAgIAorICAgICAgICB2
YXIgdGV4dDIgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQo
InRleHQyIik7CisgICAgICAgIHJlc3VsdCA9IHRleHQyLnNlbGVjdFRleHRXaXRoQ3JpdGVyaWEo
IkFYU2VsZWN0VGV4dEFtYmlndWl0eVJlc29sdXRpb25DbG9zZXN0VG9TZWxlY3Rpb24iLCAicXVp
Y2siKTsKKyAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICIncXVpY2snIik7CisgICAgICAgIHNl
bGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKKyAgICAgICAgc2hvdWxkQmUoIndpbmRv
d1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnN0YXJ0T2Zmc2V0IiwgIjExIik7CisgICAgICAgIHNo
b3VsZEJlKCJ3aW5kb3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS5lbmRPZmZzZXQiLCAiMTYiKTsK
KworICAgICAgICAvLyBNb3ZlIHRoZSBjdXJzb3IgY2xvc2VyIHRvIHRoZSBzZWNvbmQgaW5zdGFu
Y2UgaW4gZnJvbnQgb2YgdGhlIHNlbGVjdGlvbi4KKyAgICAgICAgcmFuZ2UgPSBkb2N1bWVudC5j
cmVhdGVSYW5nZSgpOworICAgICAgICByYW5nZS5zZXRTdGFydChkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgidGV4dDIiKS5maXJzdENoaWxkLCA0OCk7CisgICAgICAgIHJhbmdlLnNldEVuZChkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dDIiKS5maXJzdENoaWxkLCA0OCk7CisgICAgICAgIHdp
bmRvd1NlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgICAgd2luZG93U2VsZWN0aW9u
LmFkZFJhbmdlKHJhbmdlKTsKKworICAgICAgICByZXN1bHQgPSB0ZXh0Mi5zZWxlY3RUZXh0V2l0
aENyaXRlcmlhKCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRvU2VsZWN0
aW9uIiwgInF1aWNrIik7CisgICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ3F1aWNrJyIpOwor
ICAgICAgICBzaG91bGRCZSgid2luZG93U2VsZWN0aW9uLmdldFJhbmdlQXQoMCkuc3RhcnRPZmZz
ZXQiLCAiNTYiKTsKKyAgICAgICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0
KDApLmVuZE9mZnNldCIsICI2MSIpOworICAgIH0KKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0xMzU1NzUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQt
MTM1NTc1LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5j
YThiMzU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vz
c2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtMTM1NTc1LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDE4IEBACitUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9n
LgorCitURVhUMjrCoFRIRcKgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9n
LiBUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitUaGlzIHRl
c3RzIHRoZSBhYmlsaXR5IHRvIHNlbGVjdCBhbmQgcmVwbGFjZSB0ZXh0IHdpdGggcmVzcGVjdCB0
byBzZWxlY3Rpb24uCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHdpbmRv
d1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnRvU3RyaW5nKCkgaXMgJ1RoZScKK1BBU1MgcmVzdWx0
IGlzICdUSEUnCitQQVNTIHdpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnRvU3RyaW5nKCkg
aXMgJ1RIRScKK1BBU1Mgd2luZG93U2VsZWN0aW9uLmdldFJhbmdlQXQoMCkuc3RhcnRPZmZzZXQg
aXMgNworUEFTUyB3aW5kb3dTZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKS5lbmRPZmZzZXQgaXMgMTAK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4
dC9zZWxlY3QtdGV4dC0xMzU1NzUuaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nl
c3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTEzNTU3NS5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2NmEzZTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4
dC0xMzU1NzUuaHRtbApAQCAtMCwwICsxLDYzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzx0aXRsZT5TZWxlY3QgVGV4dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keT4K
KworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dCI+VGhlIHF1aWNrIGJyb3duIGZv
eCA8c3BhbiBpZD0idGFyZ2V0Ij5qdW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSBkb2cuIDwvcD4K
KworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dDIiPlRFWFQyOiBUaGUgcXVpY2sg
YnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sgYnJvd24gZm94IGp1
bXBzIG92ZXIgdGhlIGxhenkgZG9nLjwvcD4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGhp
cyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3Bl
Y3QgdG8gc2VsZWN0aW9uLiIpOworICAgIAorICAgIGZ1bmN0aW9uIHNlbGVjdGVkVGV4dCgpIHsK
KyAgICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygpOworICAgIH0K
KyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3RFbGVtZW50VGV4dChlbGVtZW50KSB7CisgICAgICAg
IHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgIHJhbmdlLnNlbGVj
dE5vZGVDb250ZW50cyhlbGVtZW50KTsKKyAgICAgICAgCisgICAgICAgIHZhciBzZWxlY3Rpb24g
PSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5n
ZXMoKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKyAgICB9CisgICAgCisg
ICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICB2YXIgdGV4
dCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidGV4dCIp
OworICAgICAgICB2YXIgcmVzdWx0ID0gMDsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IDA7Cisg
ICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7CisK
KyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHQyIikuZm9jdXMoKTsKKyAgICAg
ICAgdmFyIHdpbmRvd1NlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKKyAgICAgICAg
d2luZG93U2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOworCisgICAgICAgIC8vIFtodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1NTc1XQorICAgICAgICAvLyBXaGVu
IGFuIGV4aXN0aW5nIHJhbmdlIGlzIGFscmVhZHkgc2VsZWN0ZWQsIHdlIHNob3VsZCBub3QgaWdu
b3JlIHRoYXQgd2hlbiBzZWFyY2hpbmcgZm9yIGZ1dHVyZSBhY3Rpdml0aWVzLgorICAgICAgICAv
LyBGaXJzdCBmaW5kIHRoZSByYW5nZSBiZWZvcmUgdGhlIGN1cnJlbnQgc2VsZWN0aW9uLgorICAg
ICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICByYW5nZS5z
ZXRTdGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dDIiKS5maXJzdENoaWxkLCA3KTsK
KyAgICAgICAgcmFuZ2Uuc2V0RW5kKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0MiIpLmZp
cnN0Q2hpbGQsIDEwKTsKKyAgICAgICAgd2luZG93U2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygp
OworICAgICAgICB3aW5kb3dTZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOworICAgICAgICBzaG91
bGRCZSgid2luZG93U2VsZWN0aW9uLmdldFJhbmdlQXQoMCkudG9TdHJpbmcoKSIsICInVGhlJyIp
OworICAgICAgCisgICAgICAgIHZhciB0ZXh0MiA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFj
Y2Vzc2libGVFbGVtZW50QnlJZCgidGV4dDIiKTsKKyAgICAgICAgcmVzdWx0ID0gdGV4dDIuc2Vs
ZWN0VGV4dFdpdGhDcml0ZXJpYSgiQVhTZWxlY3RUZXh0QW1iaWd1aXR5UmVzb2x1dGlvbkNsb3Nl
c3RUb1NlbGVjdGlvbiIsICJ0aGUiLCBudWxsLCAiQVhTZWxlY3RUZXh0QWN0aXZpdHlGaW5kQW5k
VXBwZXJjYXNlIik7CisgICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ1RIRSciKTsKKyAgICAg
ICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDApLnRvU3RyaW5nKCkiLCAi
J1RIRSciKTsKKyAgICAgICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5nZXRSYW5nZUF0KDAp
LnN0YXJ0T2Zmc2V0IiwgIjciKTsKKyAgICAgICAgc2hvdWxkQmUoIndpbmRvd1NlbGVjdGlvbi5n
ZXRSYW5nZUF0KDApLmVuZE9mZnNldCIsICIxMCIpOworICAgIH0KKzwvc2NyaXB0PgorCis8c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
YWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0yLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10
ZXh0LTItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdi
MWIxYWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNz
aWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0yLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDE1IEBACitUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitU
RVhUMjogVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1
aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUg
YWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0
aW9uLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ292
ZXInCitQQVNTIHNlbGVjdGlvbiBpcyAnb3ZlcicKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0yLmh0bWwgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4
dC0yLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzYwMjc1MwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3Nl
bGVjdC10ZXh0L3NlbGVjdC10ZXh0LTIuaHRtbApAQCAtMCwwICsxLDQ5IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzx0aXRsZT5TZWxlY3QgVGV4dDwvdGl0bGU+Cis8
L2hlYWQ+Cis8Ym9keT4KKworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dCI+VGhl
IHF1aWNrIGJyb3duIGZveCA8c3BhbiBpZD0idGFyZ2V0Ij5qdW1wczwvc3Bhbj4gb3ZlciB0aGUg
bGF6eSBkb2cuIDwvcD4KKworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dDIiPlRF
WFQyOiBUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVp
Y2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLjwvcD4KKworPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBk
ZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2Ug
dGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9uLiIpOworICAgIAorICAgIGZ1bmN0aW9uIHNl
bGVjdGVkVGV4dCgpIHsKKyAgICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0
cmluZygpOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3RFbGVtZW50VGV4dChlbGVt
ZW50KSB7CisgICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAg
ICAgIHJhbmdlLnNlbGVjdE5vZGVDb250ZW50cyhlbGVtZW50KTsKKyAgICAgICAgCisgICAgICAg
IHZhciBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHNlbGVjdGlv
bi5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsK
KyAgICB9CisgICAgCisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgewor
ICAgICAgICB2YXIgdGV4dCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVt
ZW50QnlJZCgidGV4dCIpOworICAgICAgICB2YXIgcmVzdWx0ID0gMDsKKyAgICAgICAgdmFyIHNl
bGVjdGlvbiA9IDA7CisgICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGFyZ2V0Iik7CisgICAgICAgIAorICAgICAgICAvLyBTZWxlY3QgdGV4dCBhZnRlciBzZWxl
Y3Rpb24gKG11bHRpcGxlIHNlYXJjaCBzdHJpbmdzKS4KKyAgICAgICAgc2VsZWN0RWxlbWVudFRl
eHQodGFyZ2V0KTsKKyAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlh
KCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdEFmdGVyU2VsZWN0aW9uIiwg
WyJsYXp5IiwgIm92ZXIiXSk7CisgICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ292ZXInIik7
CisgICAgICAgIHNlbGVjdGlvbiA9IHNlbGVjdGVkVGV4dCgpOworICAgICAgICBzaG91bGRCZSgi
c2VsZWN0aW9uIiwgIidvdmVyJyIpOworICAgIH0KKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTMtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlN2NiNmUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9z
ZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC0zLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitU
aGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitURVhUMjogVGhl
IHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3du
IGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0
byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9uLgorCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ3F1aWNrJworUEFT
UyBzZWxlY3Rpb24gaXMgJ3F1aWNrJworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9h
Y2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTMuaHRtbCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTMuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42OTNhZjgxCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRl
eHQvc2VsZWN0LXRleHQtMy5odG1sCkBAIC0wLDAgKzEsNDkgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPHRpdGxlPlNlbGVjdCBUZXh0PC90aXRsZT4KKzwvaGVhZD4K
Kzxib2R5PgorCis8cCBjb250ZW50ZWRpdGFibGU9InRydWUiIGlkPSJ0ZXh0Ij5UaGUgcXVpY2sg
YnJvd24gZm94IDxzcGFuIGlkPSJ0YXJnZXQiPmp1bXBzPC9zcGFuPiBvdmVyIHRoZSBsYXp5IGRv
Zy4gPC9wPgorCis8cCBjb250ZW50ZWRpdGFibGU9InRydWUiIGlkPSJ0ZXh0MiI+VEVYVDI6IFRo
ZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBkb2cuIFRoZSBxdWljayBicm93
biBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBkb2cuPC9wPgorCis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorICAgIGRlc2NyaXB0
aW9uKCJUaGlzIHRlc3RzIHRoZSBhYmlsaXR5IHRvIHNlbGVjdCBhbmQgcmVwbGFjZSB0ZXh0IHdp
dGggcmVzcGVjdCB0byBzZWxlY3Rpb24uIik7CisgICAgCisgICAgZnVuY3Rpb24gc2VsZWN0ZWRU
ZXh0KCkgeworICAgICAgICByZXR1cm4gd2luZG93LmdldFNlbGVjdGlvbigpLnRvU3RyaW5nKCk7
CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIHNlbGVjdEVsZW1lbnRUZXh0KGVsZW1lbnQpIHsK
KyAgICAgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAgICAgICAgcmFu
Z2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKGVsZW1lbnQpOworICAgICAgICAKKyAgICAgICAgdmFyIHNl
bGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKKyAgICAgICAgc2VsZWN0aW9uLnJlbW92
ZUFsbFJhbmdlcygpOworICAgICAgICBzZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOworICAgIH0K
KyAgICAKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7CisgICAgICAg
IHZhciB0ZXh0ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlk
KCJ0ZXh0Iik7CisgICAgICAgIHZhciByZXN1bHQgPSAwOworICAgICAgICB2YXIgc2VsZWN0aW9u
ID0gMDsKKyAgICAgICAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJn
ZXQiKTsKKyAgICAgICAgCisgICAgICAgIC8vIFNlbGVjdCB0ZXh0IGJlZm9yZSBzZWxlY3Rpb24g
KHNpbmdsZSBzZWFyY2ggc3RyaW5nKS4KKyAgICAgICAgc2VsZWN0RWxlbWVudFRleHQodGFyZ2V0
KTsKKyAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlhKCJBWFNlbGVj
dFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdEJlZm9yZVNlbGVjdGlvbiIsICJxdWljayIp
OworICAgICAgICBzaG91bGRCZSgicmVzdWx0IiwgIidxdWljayciKTsKKyAgICAgICAgc2VsZWN0
aW9uID0gc2VsZWN0ZWRUZXh0KCk7CisgICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb24iLCAiJ3F1
aWNrJyIpOworICAgIH0KKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4
dC9zZWxlY3QtdGV4dC00LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9h
Y2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTQtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwMmIyMzQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxl
Y3QtdGV4dC00LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitUaGUgcXVpY2sgYnJvd24g
Zm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitURVhUMjogVGhlIHF1aWNrIGJyb3duIGZv
eCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVy
IHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJl
cGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9uLgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ2ZveCcKK1BBU1Mgc2VsZWN0aW9uIGlzICdm
b3gnCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0
LXRleHQvc2VsZWN0LXRleHQtNC5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vz
c2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjYxYTQxODYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC00Lmh0
bWwKQEAgLTAsMCArMSw0OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8dGl0bGU+U2VsZWN0IFRleHQ8L3RpdGxlPgorPC9oZWFkPgorPGJvZHk+CisKKzxwIGNvbnRl
bnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQiPlRoZSBxdWljayBicm93biBmb3ggPHNwYW4gaWQ9
InRhcmdldCI+anVtcHM8L3NwYW4+IG92ZXIgdGhlIGxhenkgZG9nLiA8L3A+CisKKzxwIGNvbnRl
bnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQyIj5URVhUMjogVGhlIHF1aWNrIGJyb3duIGZveCBq
dW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRo
ZSBsYXp5IGRvZy48L3A+CisKKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oIlRoaXMgdGVzdHMgdGhl
IGFiaWxpdHkgdG8gc2VsZWN0IGFuZCByZXBsYWNlIHRleHQgd2l0aCByZXNwZWN0IHRvIHNlbGVj
dGlvbi4iKTsKKyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3RlZFRleHQoKSB7CisgICAgICAgIHJl
dHVybiB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkudG9TdHJpbmcoKTsKKyAgICB9CisgICAgCisgICAg
ZnVuY3Rpb24gc2VsZWN0RWxlbWVudFRleHQoZWxlbWVudCkgeworICAgICAgICB2YXIgcmFuZ2Ug
PSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICByYW5nZS5zZWxlY3ROb2RlQ29udGVu
dHMoZWxlbWVudCk7CisgICAgICAgIAorICAgICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93Lmdl
dFNlbGVjdGlvbigpOworICAgICAgICBzZWxlY3Rpb24ucmVtb3ZlQWxsUmFuZ2VzKCk7CisgICAg
ICAgIHNlbGVjdGlvbi5hZGRSYW5nZShyYW5nZSk7CisgICAgfQorICAgIAorICAgIGlmICh3aW5k
b3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAgICAgdmFyIHRleHQgPSBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoInRleHQiKTsKKyAgICAgICAg
dmFyIHJlc3VsdCA9IDA7CisgICAgICAgIHZhciBzZWxlY3Rpb24gPSAwOworICAgICAgICB2YXIg
dGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldCIpOworICAgICAgICAKKyAg
ICAgICAgLy8gU2VsZWN0IHRleHQgYmVmb3JlIHNlbGVjdGlvbiAobXVsdGlwbGUgc2VhcmNoIHN0
cmluZ3MpLgorICAgICAgICBzZWxlY3RFbGVtZW50VGV4dCh0YXJnZXQpOworICAgICAgICByZXN1
bHQgPSB0ZXh0LnNlbGVjdFRleHRXaXRoQ3JpdGVyaWEoIkFYU2VsZWN0VGV4dEFtYmlndWl0eVJl
c29sdXRpb25DbG9zZXN0QmVmb3JlU2VsZWN0aW9uIiwgWyJxdWljayIsICJmb3giXSk7CisgICAg
ICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ2ZveCciKTsKKyAgICAgICAgc2VsZWN0aW9uID0gc2Vs
ZWN0ZWRUZXh0KCk7CisgICAgICAgIHNob3VsZEJlKCJzZWxlY3Rpb24iLCAiJ2ZveCciKTsKKyAg
ICB9Cis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRl
eHQtNS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0
eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC01LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5iMGY4ZmQ0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtNS1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBv
dmVyIHRoZSBsYXp5IGRvZy4KKworVEVYVDI6IFRoZSBxdWljayBicm93biBmb3gganVtcHMgb3Zl
ciB0aGUgbGF6eSBkb2cuIFRoZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBk
b2cuCisKK1RoaXMgdGVzdHMgdGhlIGFiaWxpdHkgdG8gc2VsZWN0IGFuZCByZXBsYWNlIHRleHQg
d2l0aCByZXNwZWN0IHRvIHNlbGVjdGlvbi4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgcmVzdWx0IGlzICdkb2cnCitQQVNTIHNlbGVjdGlvbiBpcyAnZG9nJworUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVj
dC10ZXh0LTUuaHRtbCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3Nl
bGVjdC10ZXh0L3NlbGVjdC10ZXh0LTUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi42NGQwYzE1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtNS5odG1sCkBAIC0wLDAg
KzEsNDkgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHRpdGxlPlNl
bGVjdCBUZXh0PC90aXRsZT4KKzwvaGVhZD4KKzxib2R5PgorCis8cCBjb250ZW50ZWRpdGFibGU9
InRydWUiIGlkPSJ0ZXh0Ij5UaGUgcXVpY2sgYnJvd24gZm94IDxzcGFuIGlkPSJ0YXJnZXQiPmp1
bXBzPC9zcGFuPiBvdmVyIHRoZSBsYXp5IGRvZy4gPC9wPgorCis8cCBjb250ZW50ZWRpdGFibGU9
InRydWUiIGlkPSJ0ZXh0MiI+VEVYVDI6IFRoZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0
aGUgbGF6eSBkb2cuIFRoZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBkb2cu
PC9wPgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2
PgorCis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUaGlzIHRlc3RzIHRoZSBhYmlsaXR5IHRv
IHNlbGVjdCBhbmQgcmVwbGFjZSB0ZXh0IHdpdGggcmVzcGVjdCB0byBzZWxlY3Rpb24uIik7Cisg
ICAgCisgICAgZnVuY3Rpb24gc2VsZWN0ZWRUZXh0KCkgeworICAgICAgICByZXR1cm4gd2luZG93
LmdldFNlbGVjdGlvbigpLnRvU3RyaW5nKCk7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIHNl
bGVjdEVsZW1lbnRUZXh0KGVsZW1lbnQpIHsKKyAgICAgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQu
Y3JlYXRlUmFuZ2UoKTsKKyAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKGVsZW1lbnQp
OworICAgICAgICAKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24o
KTsKKyAgICAgICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOworICAgICAgICBzZWxlY3Rp
b24uYWRkUmFuZ2UocmFuZ2UpOworICAgIH0KKyAgICAKKyAgICBpZiAod2luZG93LmFjY2Vzc2li
aWxpdHlDb250cm9sbGVyKSB7CisgICAgICAgIHZhciB0ZXh0ID0gYWNjZXNzaWJpbGl0eUNvbnRy
b2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJ0ZXh0Iik7CisgICAgICAgIHZhciByZXN1bHQg
PSAwOworICAgICAgICB2YXIgc2VsZWN0aW9uID0gMDsKKyAgICAgICAgdmFyIHRhcmdldCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKKyAgICAgICAgCisgICAgICAgIC8vIFNl
bGVjdCB0ZXh0IGNsb3Nlc3QgdG8gc2VsZWN0aW9uIChzaW5nbGUgc2VhcmNoIHN0cmluZykuCisg
ICAgICAgIHNlbGVjdEVsZW1lbnRUZXh0KHRhcmdldCk7CisgICAgICAgIHJlc3VsdCA9IHRleHQu
c2VsZWN0VGV4dFdpdGhDcml0ZXJpYSgiQVhTZWxlY3RUZXh0QW1iaWd1aXR5UmVzb2x1dGlvbkNs
b3Nlc3RUb1NlbGVjdGlvbiIsICJkb2ciKTsKKyAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICIn
ZG9nJyIpOworICAgICAgICBzZWxlY3Rpb24gPSBzZWxlY3RlZFRleHQoKTsKKyAgICAgICAgc2hv
dWxkQmUoInNlbGVjdGlvbiIsICInZG9nJyIpOworICAgIH0KKzwvc2NyaXB0PgorCis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNj
ZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC02LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0
LTYtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwMmIy
MzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC02LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1
IEBACitUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitURVhU
MjogVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNr
IGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUgYWJp
bGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9u
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ2ZveCcK
K1BBU1Mgc2VsZWN0aW9uIGlzICdmb3gnCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtNi5odG1sIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtNi5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZjYTJlODEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3Qt
dGV4dC9zZWxlY3QtdGV4dC02Lmh0bWwKQEAgLTAsMCArMSw0OSBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8dGl0bGU+U2VsZWN0IFRleHQ8L3RpdGxlPgorPC9oZWFk
PgorPGJvZHk+CisKKzxwIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQiPlRoZSBxdWlj
ayBicm93biBmb3ggPHNwYW4gaWQ9InRhcmdldCI+anVtcHM8L3NwYW4+IG92ZXIgdGhlIGxhenkg
ZG9nLiA8L3A+CisKKzxwIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQyIj5URVhUMjog
VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJy
b3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy48L3A+CisKKzxwIGlkPSJkZXNjcmlwdGlv
biI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3Jp
cHRpb24oIlRoaXMgdGVzdHMgdGhlIGFiaWxpdHkgdG8gc2VsZWN0IGFuZCByZXBsYWNlIHRleHQg
d2l0aCByZXNwZWN0IHRvIHNlbGVjdGlvbi4iKTsKKyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3Rl
ZFRleHQoKSB7CisgICAgICAgIHJldHVybiB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkudG9TdHJpbmco
KTsKKyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gc2VsZWN0RWxlbWVudFRleHQoZWxlbWVudCkg
eworICAgICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICBy
YW5nZS5zZWxlY3ROb2RlQ29udGVudHMoZWxlbWVudCk7CisgICAgICAgIAorICAgICAgICB2YXIg
c2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOworICAgICAgICBzZWxlY3Rpb24ucmVt
b3ZlQWxsUmFuZ2VzKCk7CisgICAgICAgIHNlbGVjdGlvbi5hZGRSYW5nZShyYW5nZSk7CisgICAg
fQorICAgIAorICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAg
ICAgdmFyIHRleHQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5
SWQoInRleHQiKTsKKyAgICAgICAgdmFyIHJlc3VsdCA9IDA7CisgICAgICAgIHZhciBzZWxlY3Rp
b24gPSAwOworICAgICAgICB2YXIgdGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRh
cmdldCIpOworICAgICAgICAKKyAgICAgICAgLy8gU2VsZWN0IHRleHQgY2xvc2VzdCB0byBzZWxl
Y3Rpb24gKG11bHRpcGxlIHNlYXJjaCBzdHJpbmdzKS4KKyAgICAgICAgc2VsZWN0RWxlbWVudFRl
eHQodGFyZ2V0KTsKKyAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRlcmlh
KCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRvU2VsZWN0aW9uIiwgWyJk
b2ciLCAiZm94Il0pOworICAgICAgICBzaG91bGRCZSgicmVzdWx0IiwgIidmb3gnIik7CisgICAg
ICAgIHNlbGVjdGlvbiA9IHNlbGVjdGVkVGV4dCgpOworICAgICAgICBzaG91bGRCZSgic2VsZWN0
aW9uIiwgIidmb3gnIik7CisgICAgfQorPC9zY3JpcHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3Nl
bGVjdC10ZXh0L3NlbGVjdC10ZXh0LTctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtNy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTNhY2YyYgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10
ZXh0L3NlbGVjdC10ZXh0LTctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAKK1RoZcKgc2xv
d8KgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitURVhUMjogVGhlIHF1aWNr
IGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3duIGZveCBq
dW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxl
Y3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9uLgorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ3Nsb3cnCitQQVNTIHNlbGVj
dGlvbiBpcyAnc2xvdycKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJp
bGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC03Lmh0bWwgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC03Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2VlNzgxNAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVj
dC10ZXh0LTcuaHRtbApAQCAtMCwwICsxLDQ5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKzx0aXRsZT5TZWxlY3QgVGV4dDwvdGl0bGU+Cis8L2hlYWQ+Cis8Ym9keT4K
KworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dCI+VGhlIHF1aWNrIGJyb3duIGZv
eCA8c3BhbiBpZD0idGFyZ2V0Ij5qdW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSBkb2cuIDwvcD4K
KworPHAgY29udGVudGVkaXRhYmxlPSJ0cnVlIiBpZD0idGV4dDIiPlRFWFQyOiBUaGUgcXVpY2sg
YnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sgYnJvd24gZm94IGp1
bXBzIG92ZXIgdGhlIGxhenkgZG9nLjwvcD4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8
ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbigiVGhp
cyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBzZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3Bl
Y3QgdG8gc2VsZWN0aW9uLiIpOworICAgIAorICAgIGZ1bmN0aW9uIHNlbGVjdGVkVGV4dCgpIHsK
KyAgICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygpOworICAgIH0K
KyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3RFbGVtZW50VGV4dChlbGVtZW50KSB7CisgICAgICAg
IHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgIHJhbmdlLnNlbGVj
dE5vZGVDb250ZW50cyhlbGVtZW50KTsKKyAgICAgICAgCisgICAgICAgIHZhciBzZWxlY3Rpb24g
PSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5n
ZXMoKTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKyAgICB9CisgICAgCisg
ICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICB2YXIgdGV4
dCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgidGV4dCIp
OworICAgICAgICB2YXIgcmVzdWx0ID0gMDsKKyAgICAgICAgdmFyIHNlbGVjdGlvbiA9IDA7Cisg
ICAgICAgIHZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V0Iik7Cisg
ICAgICAgIAorICAgICAgICAvLyBTZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCBjbG9zZXN0IHRvIHNl
bGVjdGlvbiAoc2luZ2xlIHNlYXJjaCBzdHJpbmcpLgorICAgICAgICBzZWxlY3RFbGVtZW50VGV4
dCh0YXJnZXQpOworICAgICAgICByZXN1bHQgPSB0ZXh0LnNlbGVjdFRleHRXaXRoQ3JpdGVyaWEo
IkFYU2VsZWN0VGV4dEFtYmlndWl0eVJlc29sdXRpb25DbG9zZXN0VG9TZWxlY3Rpb24iLCAicXVp
Y2siLCAic2xvdyIpOworICAgICAgICBzaG91bGRCZSgicmVzdWx0IiwgIidzbG93JyIpOworICAg
ICAgICBzZWxlY3Rpb24gPSBzZWxlY3RlZFRleHQoKTsKKyAgICAgICAgc2hvdWxkQmUoInNlbGVj
dGlvbiIsICInc2xvdyciKTsKKyAgICB9Cis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkv
c2VsZWN0LXRleHQvc2VsZWN0LXRleHQtOC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC04LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZGI3OGY5Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0
LXRleHQvc2VsZWN0LXRleHQtOC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorVGhlIHF1
aWNrIGJyb3duwqBjYXTCoGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitURVhUMjogVGhlIHF1
aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3duIGZv
eCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4KKworVGhpcyB0ZXN0cyB0aGUgYWJpbGl0eSB0byBz
ZWxlY3QgYW5kIHJlcGxhY2UgdGV4dCB3aXRoIHJlc3BlY3QgdG8gc2VsZWN0aW9uLgorCitPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXN1bHQgaXMgJ2NhdCcKK1BBU1Mgc2Vs
ZWN0aW9uIGlzICdjYXQnCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2li
aWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtOC5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtOC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkZGRkMmMKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxl
Y3QtdGV4dC04Lmh0bWwKQEAgLTAsMCArMSw0OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8dGl0bGU+U2VsZWN0IFRleHQ8L3RpdGxlPgorPC9oZWFkPgorPGJvZHk+
CisKKzxwIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQiPlRoZSBxdWljayBicm93biBm
b3ggPHNwYW4gaWQ9InRhcmdldCI+anVtcHM8L3NwYW4+IG92ZXIgdGhlIGxhenkgZG9nLiA8L3A+
CisKKzxwIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQyIj5URVhUMjogVGhlIHF1aWNr
IGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNrIGJyb3duIGZveCBq
dW1wcyBvdmVyIHRoZSBsYXp5IGRvZy48L3A+CisKKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oIlRo
aXMgdGVzdHMgdGhlIGFiaWxpdHkgdG8gc2VsZWN0IGFuZCByZXBsYWNlIHRleHQgd2l0aCByZXNw
ZWN0IHRvIHNlbGVjdGlvbi4iKTsKKyAgICAKKyAgICBmdW5jdGlvbiBzZWxlY3RlZFRleHQoKSB7
CisgICAgICAgIHJldHVybiB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkudG9TdHJpbmcoKTsKKyAgICB9
CisgICAgCisgICAgZnVuY3Rpb24gc2VsZWN0RWxlbWVudFRleHQoZWxlbWVudCkgeworICAgICAg
ICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICByYW5nZS5zZWxl
Y3ROb2RlQ29udGVudHMoZWxlbWVudCk7CisgICAgICAgIAorICAgICAgICB2YXIgc2VsZWN0aW9u
ID0gd2luZG93LmdldFNlbGVjdGlvbigpOworICAgICAgICBzZWxlY3Rpb24ucmVtb3ZlQWxsUmFu
Z2VzKCk7CisgICAgICAgIHNlbGVjdGlvbi5hZGRSYW5nZShyYW5nZSk7CisgICAgfQorICAgIAor
ICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAgICAgdmFyIHRl
eHQgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5hY2Nlc3NpYmxlRWxlbWVudEJ5SWQoInRleHQi
KTsKKyAgICAgICAgdmFyIHJlc3VsdCA9IDA7CisgICAgICAgIHZhciBzZWxlY3Rpb24gPSAwOwor
ICAgICAgICB2YXIgdGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhcmdldCIpOwor
ICAgICAgICAKKyAgICAgICAgLy8gU2VsZWN0IGFuZCByZXBsYWNlIHRleHQgY2xvc2VzdCB0byBz
ZWxlY3Rpb24gKG11bHRpcGxlIHNlYXJjaCBzdHJpbmdzKS4KKyAgICAgICAgc2VsZWN0RWxlbWVu
dFRleHQodGFyZ2V0KTsKKyAgICAgICAgcmVzdWx0ID0gdGV4dC5zZWxlY3RUZXh0V2l0aENyaXRl
cmlhKCJBWFNlbGVjdFRleHRBbWJpZ3VpdHlSZXNvbHV0aW9uQ2xvc2VzdFRvU2VsZWN0aW9uIiwg
WyJkb2ciLCAiZm94Il0sICJjYXQiKTsKKyAgICAgICAgc2hvdWxkQmUoInJlc3VsdCIsICInY2F0
JyIpOworICAgICAgICBzZWxlY3Rpb24gPSBzZWxlY3RlZFRleHQoKTsKKyAgICAgICAgc2hvdWxk
QmUoInNlbGVjdGlvbiIsICInY2F0JyIpOworICAgIH0KKzwvc2NyaXB0PgorCis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNz
aWJpbGl0eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC05LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L3NlbGVjdC10ZXh0L3NlbGVjdC10ZXh0LTkt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlM2VhMGIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0
eS9zZWxlY3QtdGV4dC9zZWxlY3QtdGV4dC05LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBA
CitUaGUgcXVpY2vCoEJyb3duwqBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBkb2cuCisKK1RFWFQy
OiBUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLiBUaGUgcXVpY2sg
YnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkgZG9nLgorCitUaGlzIHRlc3RzIHRoZSBhYmls
aXR5IHRvIHNlbGVjdCBhbmQgcmVwbGFjZSB0ZXh0IHdpdGggcmVzcGVjdCB0byBzZWxlY3Rpb24u
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJlc3VsdCBpcyAnQnJvd24n
CitQQVNTIHNlbGVjdGlvbiBpcyAnQnJvd24nCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQtOS5odG1sIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvc2VsZWN0LXRleHQvc2VsZWN0LXRleHQt
OS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlNWVjZmUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvYWNjZXNzaWJpbGl0eS9zZWxl
Y3QtdGV4dC9zZWxlY3QtdGV4dC05Lmh0bWwKQEAgLTAsMCArMSw0OSBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8dGl0bGU+U2VsZWN0IFRleHQ8L3RpdGxlPgorPC9o
ZWFkPgorPGJvZHk+CisKKzxwIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQiPlRoZSBx
dWljayBicm93biBmb3ggPHNwYW4gaWQ9InRhcmdldCI+anVtcHM8L3NwYW4+IG92ZXIgdGhlIGxh
enkgZG9nLiA8L3A+CisKKzxwIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIgaWQ9InRleHQyIj5URVhU
MjogVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4gVGhlIHF1aWNr
IGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy48L3A+CisKKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisgICAgZGVz
Y3JpcHRpb24oIlRoaXMgdGVzdHMgdGhlIGFiaWxpdHkgdG8gc2VsZWN0IGFuZCByZXBsYWNlIHRl
eHQgd2l0aCByZXNwZWN0IHRvIHNlbGVjdGlvbi4iKTsKKworICAgIGZ1bmN0aW9uIHNlbGVjdGVk
VGV4dCgpIHsKKyAgICAgICAgcmV0dXJuIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS50b1N0cmluZygp
OworICAgIH0KKworICAgIGZ1bmN0aW9uIHNlbGVjdEVsZW1lbnRUZXh0KGVsZW1lbnQpIHsKKyAg
ICAgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAgICAgICAgcmFuZ2Uu
c2VsZWN0Tm9kZUNvbnRlbnRzKGVsZW1lbnQpOworCisgICAgICAgIHZhciBzZWxlY3Rpb24gPSB3
aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CisgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMo
KTsKKyAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTsKKyAgICB9CisKKyAgICBpZiAo
d2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7CisgICAgICAgIHZhciB0ZXh0ID0gYWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJ0ZXh0Iik7CisgICAg
ICAgIHZhciByZXN1bHQgPSAwOworICAgICAgICB2YXIgc2VsZWN0aW9uID0gMDsKKyAgICAgICAg
dmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0YXJnZXQiKTsKKworICAgICAg
ICAvLyBTZWxlY3QgYnJvd24gYW5kIGNhcGl0YWxpemUgaXQuCisgICAgICAgIHNlbGVjdEVsZW1l
bnRUZXh0KHRhcmdldCk7CisgICAgICAgIHJlc3VsdCA9IHRleHQuc2VsZWN0VGV4dFdpdGhDcml0
ZXJpYSgiQVhTZWxlY3RUZXh0QW1iaWd1aXR5UmVzb2x1dGlvbkNsb3Nlc3RUb1NlbGVjdGlvbiIs
ICJicm93biIsIG51bGwsICJBWFNlbGVjdFRleHRBY3Rpdml0eUZpbmRBbmRDYXBpdGFsaXplIik7
CisgICAgICAgIHNob3VsZEJlKCJyZXN1bHQiLCAiJ0Jyb3duJyIpOworICAgICAgICBzZWxlY3Rp
b24gPSBzZWxlY3RlZFRleHQoKTsKKyAgICAgICAgc2hvdWxkQmUoInNlbGVjdGlvbiIsICInQnJv
d24nIik7CisgICAgfQorPC9zY3JpcHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>