<?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>149668</bug_id>
          
          <creation_ts>2015-09-30 08:34:35 -0700</creation_ts>
          <short_desc>[Streams API] Update readable-stream tests against latest reference</short_desc>
          <delta_ts>2015-10-01 00:44:41 -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>New Bugs</component>
          <version>WebKit 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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Xabier Rodríguez Calvar">calvaris</reporter>
          <assigned_to name="Xabier Rodríguez Calvar">calvaris</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1129578</commentid>
    <comment_count>0</comment_count>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2015-09-30 08:34:35 -0700</bug_when>
    <thetext>[Streams API] Update readable-stream tests against latest reference</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129580</commentid>
    <comment_count>1</comment_count>
      <attachid>262163</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2015-09-30 08:35:39 -0700</bug_when>
    <thetext>Created attachment 262163
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129869</commentid>
    <comment_count>2</comment_count>
      <attachid>262163</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-01 00:44:37 -0700</bug_when>
    <thetext>Comment on attachment 262163
Patch

Clearing flags on attachment: 262163

Committed r190396: &lt;http://trac.webkit.org/changeset/190396&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129870</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-01 00:44:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262163</attachid>
            <date>2015-09-30 08:35:39 -0700</date>
            <delta_ts>2015-10-01 00:44:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-149668-20150930173513.patch</filename>
            <type>text/plain</type>
            <size>22294</size>
            <attacher name="Xabier Rodríguez Calvar">calvaris</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwMzQzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZTMyODAyZWYwODVjZDFjMjMxYzY4
ZGJlZTg2YjlmMjdjOWI1YTFjMy4uM2I3MzAyOGY5ZjMyMGY3ZGFkOWM2ZGQ0YzgxYWI2ZGZmNzVj
MDdiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE1LTA5LTMwICBYYWJpZXIgUm9kcmlndWV6
IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgW1N0cmVhbXMgQVBJXSBV
cGRhdGUgcmVhZGFibGUtc3RyZWFtIHRlc3RzIGFnYWluc3QgbGF0ZXN0IHJlZmVyZW5jZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ5NjY4CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlYW1zL3Jl
ZmVyZW5jZS1pbXBsZW1lbnRhdGlvbi9yZWFkYWJsZS1zdHJlYW0tZXhwZWN0ZWQudHh0OiBVcGRh
dGVkIGV4cGVjdGF0aW9ucy4KKyAgICAgICAgKiBzdHJlYW1zL3JlZmVyZW5jZS1pbXBsZW1lbnRh
dGlvbi9yZWFkYWJsZS1zdHJlYW0uaHRtbDogVXBkYXRlZCB0ZXN0cy4KKwogMjAxNS0wOS0yOSAg
UnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBVcGRhdGUgaU9T
LXNpbXVsYXRvciByZXN1bHRzIGZvciBmYXN0L3RleHQvbWFyay1tYXRjaGVzLW92ZXJmbG93LWNs
aXAuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RyZWFtcy9yZWZlcmVuY2UtaW1wbGVt
ZW50YXRpb24vcmVhZGFibGUtc3RyZWFtLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0cmVh
bXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3JlYWRhYmxlLXN0cmVhbS1leHBlY3RlZC50eHQK
aW5kZXggZTYxZjdkNmY1ODU5NDEzOWFmYWM3ODZmYTNiNWYzNTRmZDVlMDhiMy4uNWJmYmQ4OGQ4
YjcxMmNkZjYxYmMwMjVlNzM3MTk4YzRhOWM4YmU1ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
c3RyZWFtcy9yZWZlcmVuY2UtaW1wbGVtZW50YXRpb24vcmVhZGFibGUtc3RyZWFtLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdHJlYW1zL3JlZmVyZW5jZS1pbXBsZW1lbnRhdGlvbi9y
ZWFkYWJsZS1zdHJlYW0tZXhwZWN0ZWQudHh0CkBAIC0xNiw2ICsxNiw3IEBAIFBBU1MgUmVhZGFi
bGVTdHJlYW06IHNob3VsZCBvbmx5IGNhbGwgcHVsbCBvbmNlIHVwb24gc3RhcnRpbmcgdGhlIHN0
cmVhbQogUEFTUyBSZWFkYWJsZVN0cmVhbTogc2hvdWxkIGNhbGwgcHVsbCB3aGVuIHRyeWluZyB0
byByZWFkIGZyb20gYSBzdGFydGVkLCBlbXB0eSBzdHJlYW0gCiBQQVNTIFJlYWRhYmxlU3RyZWFt
OiBzaG91bGQgb25seSBjYWxsIHB1bGwgb25jZSBvbiBhIG5vbi1lbXB0eSBzdHJlYW0gcmVhZCBm
cm9tIGJlZm9yZSBzdGFydCBmdWxmaWxscyAKIFBBU1MgUmVhZGFibGVTdHJlYW06IHNob3VsZCBv
bmx5IGNhbGwgcHVsbCBvbmNlIG9uIGEgbm9uLWVtcHR5IHN0cmVhbSByZWFkIGZyb20gYWZ0ZXIg
c3RhcnQgZnVsZmlsbHMgCitQQVNTIFJlYWRhYmxlU3RyZWFtOiBzaG91bGQgY2FsbCBwdWxsIGlu
IHJlYWN0aW9uIHRvIHJlYWQoKWluZyB0aGUgbGFzdCBjaHVuaywgaWYgbm90IGRyYWluaW5nIAog
UEFTUyBSZWFkYWJsZVN0cmVhbTogc2hvdWxkIG5vdCBjYWxsIHB1bGwoKSBpbiByZWFjdGlvbiB0
byByZWFkKClpbmcgdGhlIGxhc3QgY2h1bmssIGlmIGRyYWluaW5nIAogUEFTUyBSZWFkYWJsZVN0
cmVhbTogc2hvdWxkIG5vdCBjYWxsIHB1bGwgdW50aWwgdGhlIHByZXZpb3VzIHB1bGwgY2FsbCdz
IHByb21pc2UgZnVsZmlsbHMgCiBQQVNTIFJlYWRhYmxlU3RyZWFtOiBzaG91bGQgcHVsbCBhZnRl
ciBzdGFydCwgYW5kIGFmdGVyIGV2ZXJ5IHJlYWQgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9z
dHJlYW1zL3JlZmVyZW5jZS1pbXBsZW1lbnRhdGlvbi9yZWFkYWJsZS1zdHJlYW0uaHRtbCBiL0xh
eW91dFRlc3RzL3N0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3JlYWRhYmxlLXN0cmVh
bS5odG1sCmluZGV4IGM0ZTYwMTM3MzlkOGFlNDM1ZjRiMjIxNGFhMDJhOWI1MGUyZjA0MjYuLjdj
OGQ2Mzg1YmI3Njk0YjIzZTQzZmI5NDUwOGQ1ZGY1ZWI3MDIwMDcgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3N0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3JlYWRhYmxlLXN0cmVhbS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3N0cmVhbXMvcmVmZXJlbmNlLWltcGxlbWVudGF0aW9uL3Jl
YWRhYmxlLXN0cmVhbS5odG1sCkBAIC00LDYgKzQsOCBAQAogPHNjcmlwdCBzcmM9J3Jlc291cmNl
cy9zdHJlYW1zLXV0aWxzLmpzJz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPScuLi8uLi9yZXNvdXJj
ZXMvZ2MuanMnPjwvc2NyaXB0PgogPHNjcmlwdD4KKy8vIFRoaXMgaXMgdXBkYXRlZCB0aWxsIGh0
dHBzOi8vZ2l0aHViLmNvbS93aGF0d2cvc3RyZWFtcy9jb21taXQvZWM1ZmZhMDM2MzA4ZDlmNjM1
MGQyOTQ2NTYwZDQ4Y2RiZjA5MDkzOQorCiB0ZXN0KGZ1bmN0aW9uKCkgewogICAgIG5ldyBSZWFk
YWJsZVN0cmVhbSgpOyAvLyBSZWFkYWJsZVN0cmVhbSBjb25zdHJ1Y3RlZCB3aXRoIG5vIHBhcmFt
ZXRlcnMuCiAgICAgbmV3IFJlYWRhYmxlU3RyZWFtKHsgfSk7IC8vIFJlYWRhYmxlU3RyZWFtIGNv
bnN0cnVjdGVkIHdpdGggYW4gZW1wdHkgb2JqZWN0IGFzIHBhcmFtZXRlci4KQEAgLTM2OSwxMSAr
MzcxLDQ1IEBAIHRlc3Q5LnN0ZXAoZnVuY3Rpb24oKSB7CiAgICAgfSkpOwogfSk7CiAKLXZhciB0
ZXN0MTAgPSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbTogc2hvdWxkIG5vdCBjYWxsIHB1bGwo
KSBpbiByZWFjdGlvbiB0byByZWFkKClpbmcgdGhlIGxhc3QgY2h1bmssIGlmIGRyYWluaW5nJyk7
Cit2YXIgdGVzdDEwID0gYXN5bmNfdGVzdCgnUmVhZGFibGVTdHJlYW06IHNob3VsZCBjYWxsIHB1
bGwgaW4gcmVhY3Rpb24gdG8gcmVhZCgpaW5nIHRoZSBsYXN0IGNodW5rLCBpZiBub3QgZHJhaW5p
bmcnKTsKIHRlc3QxMC5zdGVwKGZ1bmN0aW9uKCkgewogICAgIHZhciBwdWxsQ291bnQgPSAwOwog
ICAgIHZhciBjb250cm9sbGVyOwogICAgIHZhciBzdGFydFByb21pc2UgPSBQcm9taXNlLnJlc29s
dmUoKTsKKyAgICB2YXIgcnMgPSBuZXcgUmVhZGFibGVTdHJlYW0oeworICAgICAgICBzdGFydDog
ZnVuY3Rpb24oYykgeworICAgICAgICAgICAgY29udHJvbGxlciA9IGM7CisgICAgICAgICAgICBy
ZXR1cm4gc3RhcnRQcm9taXNlOworICAgICAgICB9LAorICAgICAgICBwdWxsOiBmdW5jdGlvbigp
IHsKKyAgICAgICAgICAgICsrcHVsbENvdW50OworICAgICAgICB9CisgICAgfSk7CisKKyAgICB2
YXIgcmVhZGVyID0gcnMuZ2V0UmVhZGVyKCk7CisKKyAgICBzdGFydFByb21pc2UudGhlbih0ZXN0
MTAuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgeworICAgICAgICBhc3NlcnRfZXF1YWxzKHB1bGxDb3Vu
dCwgMSwgJ3B1bGwgc2hvdWxkIGhhdmUgYmVlbiBjYWxsZWQgb25jZSBieSB0aGUgdGltZSB0aGUg
c3RyZWFtIHN0YXJ0cycpOworCisgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZSgnYScpOworICAg
ICAgICBhc3NlcnRfZXF1YWxzKHB1bGxDb3VudCwgMSwgJ3B1bGwgc2hvdWxkIG5vdCBoYXZlIGJl
ZW4gY2FsbGVkIGFnYWluIGFmdGVyIGVucXVldWUnKTsKKworICAgICAgICByZXR1cm4gcmVhZGVy
LnJlYWQoKS50aGVuKHRlc3QxMC5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBh
c3NlcnRfZXF1YWxzKHB1bGxDb3VudCwgMiwgJ3B1bGwgc2hvdWxkIGhhdmUgYmVlbiBjYWxsZWQg
YWdhaW4gYWZ0ZXIgcmVhZCcpOworCisgICAgICAgICAgICBzZXRUaW1lb3V0KHRlc3QxMC5zdGVw
X2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhwdWxsQ291
bnQsIDIsICdwdWxsIHNob3VsZCBiZSBjYWxsZWQgZXhhY3RseSB0d2ljZScpOworICAgICAgICAg
ICAgICAgIHRlc3QxMC5kb25lKCk7CisgICAgICAgICAgICB9KSwgNTAwKTsKKyAgICAgICAgfSkp
OworICAgIH0pKS5jYXRjaCh0ZXN0MTAuc3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsgYXNzZXJ0X3Vu
cmVhY2hlZChlKTsgfSkpOworfSk7CisKK3ZhciB0ZXN0MTEgPSBhc3luY190ZXN0KCdSZWFkYWJs
ZVN0cmVhbTogc2hvdWxkIG5vdCBjYWxsIHB1bGwoKSBpbiByZWFjdGlvbiB0byByZWFkKClpbmcg
dGhlIGxhc3QgY2h1bmssIGlmIGRyYWluaW5nJyk7Cit0ZXN0MTEuc3RlcChmdW5jdGlvbigpIHsK
KyAgICB2YXIgcHVsbENvdW50ID0gMDsKKyAgICB2YXIgY29udHJvbGxlcjsKKyAgICB2YXIgc3Rh
cnRQcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKCk7CiAgICAgdmFyIHB1bGxQcm9taXNlID0gUHJv
bWlzZS5yZXNvbHZlKCk7CiAgICAgdmFyIHJzID0gbmV3IFJlYWRhYmxlU3RyZWFtKHsKICAgICAg
ICAgc3RhcnQ6IGZ1bmN0aW9uKGMpIHsKQEAgLTM4OCw3ICs0MjQsNyBAQCB0ZXN0MTAuc3RlcChm
dW5jdGlvbigpIHsKIAogICAgIHZhciByZWFkZXIgPSBycy5nZXRSZWFkZXIoKTsKIAotICAgIHN0
YXJ0UHJvbWlzZS50aGVuKHRlc3QxMC5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgc3RhcnRQ
cm9taXNlLnRoZW4odGVzdDExLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKICAgICAgICAgYXNzZXJ0
X2VxdWFscyhwdWxsQ291bnQsIDEsICdwdWxsIHNob3VsZCBoYXZlIGJlZW4gY2FsbGVkIG9uY2Ug
YnkgdGhlIHRpbWUgdGhlIHN0cmVhbSBzdGFydHMnKTsKIAogICAgICAgICBjb250cm9sbGVyLmVu
cXVldWUoJ2EnKTsKQEAgLTM5NiwxOSArNDMyLDE5IEBAIHRlc3QxMC5zdGVwKGZ1bmN0aW9uKCkg
ewogCiAgICAgICAgIGNvbnRyb2xsZXIuY2xvc2UoKTsKIAotICAgICAgICByZXR1cm4gcmVhZGVy
LnJlYWQoKS50aGVuKHRlc3QxMC5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgIHJldHVy
biByZWFkZXIucmVhZCgpLnRoZW4odGVzdDExLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKICAgICAg
ICAgICAgIGFzc2VydF9lcXVhbHMocHVsbENvdW50LCAxLCAncHVsbCBzaG91bGQgbm90IGhhdmUg
YmVlbiBjYWxsZWQgYSBzZWNvbmQgdGltZSBhZnRlciByZWFkJyk7CiAKLSAgICAgICAgICAgIHNl
dFRpbWVvdXQodGVzdDEwLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHNldFRp
bWVvdXQodGVzdDExLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICBhc3Nl
cnRfZXF1YWxzKHB1bGxDb3VudCwgMSwgJ3B1bGwgc2hvdWxkIGJlIGNhbGxlZCBleGFjdGx5IG9u
Y2UnKTsKLSAgICAgICAgICAgICAgICB0ZXN0MTAuZG9uZSgpOworICAgICAgICAgICAgICAgIHRl
c3QxMS5kb25lKCk7CiAgICAgICAgICAgICB9KSwgMTAwMCk7CiAgICAgICAgIH0pKTsKLSAgICB9
KSkuY2F0Y2godGVzdDEwLnN0ZXBfZnVuYyhmdW5jdGlvbihlKSB7IGFzc2VydF91bnJlYWNoZWQo
ZSk7IH0pKTsKKyAgICB9KSkuY2F0Y2godGVzdDExLnN0ZXBfZnVuYyhmdW5jdGlvbihlKSB7IGFz
c2VydF91bnJlYWNoZWQoZSk7IH0pKTsKIH0pOwogCi12YXIgdGVzdDExID0gYXN5bmNfdGVzdCgn
UmVhZGFibGVTdHJlYW06IHNob3VsZCBub3QgY2FsbCBwdWxsIHVudGlsIHRoZSBwcmV2aW91cyBw
dWxsIGNhbGxcJ3MgcHJvbWlzZSBmdWxmaWxscycpOwotdGVzdDExLnN0ZXAoZnVuY3Rpb24oKSB7
Cit2YXIgdGVzdDEyID0gYXN5bmNfdGVzdCgnUmVhZGFibGVTdHJlYW06IHNob3VsZCBub3QgY2Fs
bCBwdWxsIHVudGlsIHRoZSBwcmV2aW91cyBwdWxsIGNhbGxcJ3MgcHJvbWlzZSBmdWxmaWxscycp
OwordGVzdDEyLnN0ZXAoZnVuY3Rpb24oKSB7CiAgICAgdmFyIHJlc29sdmU7CiAgICAgdmFyIHJl
dHVybmVkUHJvbWlzZTsKICAgICB2YXIgdGltZXNDYWxsZWQgPSAwOwpAQCAtNDE5LDM1ICs0NTUs
MzUgQEAgdGVzdDExLnN0ZXAoZnVuY3Rpb24oKSB7CiAgICAgICAgIH0sCiAgICAgICAgIHB1bGw6
IGZ1bmN0aW9uKGMpIHsKICAgICAgICAgICAgIGMuZW5xdWV1ZSgrK3RpbWVzQ2FsbGVkKTsKLSAg
ICAgICAgICAgIHJldHVybmVkUHJvbWlzZSA9IG5ldyBQcm9taXNlKHRlc3QxMS5zdGVwX2Z1bmMo
ZnVuY3Rpb24ocikgeyByZXNvbHZlID0gcjsgfSkpOworICAgICAgICAgICAgcmV0dXJuZWRQcm9t
aXNlID0gbmV3IFByb21pc2UodGVzdDEyLnN0ZXBfZnVuYyhmdW5jdGlvbihyKSB7IHJlc29sdmUg
PSByOyB9KSk7CiAgICAgICAgICAgICByZXR1cm4gcmV0dXJuZWRQcm9taXNlOwogICAgICAgICB9
CiAgICAgfSk7CiAgICAgdmFyIHJlYWRlciA9IHJzLmdldFJlYWRlcigpOwogCi0gICAgc3RhcnRQ
cm9taXNlLnRoZW4odGVzdDExLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKLSAgICAgICAgcmV0dXJu
IHJlYWRlci5yZWFkKCkudGhlbih0ZXN0MTEuc3RlcF9mdW5jKGZ1bmN0aW9uKHJlc3VsdDEpIHsK
KyAgICBzdGFydFByb21pc2UudGhlbih0ZXN0MTIuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgeworICAg
ICAgICByZXR1cm4gcmVhZGVyLnJlYWQoKS50aGVuKHRlc3QxMi5zdGVwX2Z1bmMoZnVuY3Rpb24o
cmVzdWx0MSkgewogICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0aW1lc0NhbGxlZCwgMSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJ3B1bGwgc2hvdWxkIGhhdmUgYmVlbiBjYWxsZWQgb25j
ZSBhZnRlciBzdGFydCwgYnV0IG5vdCB5ZXQgaGF2ZSBiZWVuIGNhbGxlZCBhIHNlY29uZCB0aW1l
Jyk7CiAgICAgICAgICAgICBhc3NlcnRfb2JqZWN0X2VxdWFscyhyZXN1bHQxLCB7IHZhbHVlOiAx
LCBkb25lOiBmYWxzZSB9LCAncmVhZCgpIHNob3VsZCBmdWxmaWxsIHdpdGggdGhlIGVucXVldWVk
IHZhbHVlJyk7CiAKLSAgICAgICAgICAgIHNldFRpbWVvdXQodGVzdDExLnN0ZXBfZnVuYyhmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIHNldFRpbWVvdXQodGVzdDEyLnN0ZXBfZnVuYyhmdW5jdGlv
bigpIHsKICAgICAgICAgICAgICAgICBhc3NlcnRfZXF1YWxzKHRpbWVzQ2FsbGVkLCAxLCAnYWZ0
ZXIgMzAgbXMsIHB1bGwgc2hvdWxkIHN0aWxsIG9ubHkgaGF2ZSBiZWVuIGNhbGxlZCBvbmNlJyk7
CiAKICAgICAgICAgICAgICAgICByZXNvbHZlKCk7CiAKLSAgICAgICAgICAgICAgICByZXR1cm5l
ZFByb21pc2UudGhlbih0ZXN0MTEuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAg
ICAgIHJldHVybmVkUHJvbWlzZS50aGVuKHRlc3QxMi5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CiAg
ICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGltZXNDYWxsZWQsIDIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FmdGVyIHRoZSBwcm9taXNlIHJldHVybmVkIGJ5
IHB1bGwgaXMgZnVsZmlsbGVkLCBwdWxsIHNob3VsZCBiZSBjYWxsZWQgYSBzZWNvbmQgdGltZScp
OwotICAgICAgICAgICAgICAgICAgICB0ZXN0MTEuZG9uZSgpOworICAgICAgICAgICAgICAgICAg
ICB0ZXN0MTIuZG9uZSgpOwogICAgICAgICAgICAgICAgIH0pKTsKICAgICAgICAgICAgIH0pLCA1
MDApOwogICAgICAgICB9KSk7Ci0gICAgfSkpLmNhdGNoKHRlc3QxMS5zdGVwX2Z1bmMoZnVuY3Rp
b24oZSkgeyBhc3NlcnRfdW5yZWFjaGVkKGUpOyB9KSk7CisgICAgfSkpLmNhdGNoKHRlc3QxMi5z
dGVwX2Z1bmMoZnVuY3Rpb24oZSkgeyBhc3NlcnRfdW5yZWFjaGVkKGUpOyB9KSk7CiB9KTsKIAot
dmFyIHRlc3QxMiA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtOiBzaG91bGQgcHVsbCBhZnRl
ciBzdGFydCwgYW5kIGFmdGVyIGV2ZXJ5IHJlYWQnKTsKLXRlc3QxMi5zdGVwKGZ1bmN0aW9uKCkg
ewordmFyIHRlc3QxMyA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtOiBzaG91bGQgcHVsbCBh
ZnRlciBzdGFydCwgYW5kIGFmdGVyIGV2ZXJ5IHJlYWQnKTsKK3Rlc3QxMy5zdGVwKGZ1bmN0aW9u
KCkgewogICAgIHZhciB0aW1lc0NhbGxlZCA9IDA7CiAgICAgdmFyIHN0YXJ0UHJvbWlzZSA9IFBy
b21pc2UucmVzb2x2ZSgpOwogICAgIHZhciBycyA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7CkBAIC00
NjksMjkgKzUwNSwyOSBAQCB0ZXN0MTIuc3RlcChmdW5jdGlvbigpIHsKICAgICB9KTsKICAgICB2
YXIgcmVhZGVyID0gcnMuZ2V0UmVhZGVyKCk7CiAKLSAgICBzdGFydFByb21pc2UudGhlbih0ZXN0
MTIuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgewotICAgICAgICByZXR1cm4gcmVhZGVyLnJlYWQoKS50
aGVuKHRlc3QxMi5zdGVwX2Z1bmMoZnVuY3Rpb24ocmVzdWx0MSkgeworICAgIHN0YXJ0UHJvbWlz
ZS50aGVuKHRlc3QxMy5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgIHJldHVybiByZWFk
ZXIucmVhZCgpLnRoZW4odGVzdDEzLnN0ZXBfZnVuYyhmdW5jdGlvbihyZXN1bHQxKSB7CiAgICAg
ICAgICAgICBhc3NlcnRfb2JqZWN0X2VxdWFscyhyZXN1bHQxLCB7IHZhbHVlOiAnYScsIGRvbmU6
IGZhbHNlIH0sICdmaXJzdCBjaHVuayBzaG91bGQgYmUgYXMgZXhwZWN0ZWQnKTsKIAotICAgICAg
ICAgICAgcmV0dXJuIHJlYWRlci5yZWFkKCkudGhlbih0ZXN0MTIuc3RlcF9mdW5jKGZ1bmN0aW9u
KHJlc3VsdDIpIHsKKyAgICAgICAgICAgIHJldHVybiByZWFkZXIucmVhZCgpLnRoZW4odGVzdDEz
LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXN1bHQyKSB7CiAgICAgICAgICAgICAgICAgYXNzZXJ0X29i
amVjdF9lcXVhbHMocmVzdWx0MiwgeyB2YWx1ZTogJ2InLCBkb25lOiBmYWxzZSB9LCAnc2Vjb25k
IGNodW5rIHNob3VsZCBiZSBhcyBleHBlY3RlZCcpOwogCi0gICAgICAgICAgICAgICAgcmV0dXJu
IHJlYWRlci5yZWFkKCkudGhlbih0ZXN0MTIuc3RlcF9mdW5jKGZ1bmN0aW9uKHJlc3VsdDMpIHsK
KyAgICAgICAgICAgICAgICByZXR1cm4gcmVhZGVyLnJlYWQoKS50aGVuKHRlc3QxMy5zdGVwX2Z1
bmMoZnVuY3Rpb24ocmVzdWx0MykgewogICAgICAgICAgICAgICAgICAgICBhc3NlcnRfb2JqZWN0
X2VxdWFscyhyZXN1bHQzLCB7IHZhbHVlOiAnYycsIGRvbmU6IGZhbHNlIH0sICd0aGlyZCBjaHVu
ayBzaG91bGQgYmUgYXMgZXhwZWN0ZWQnKTsKIAotICAgICAgICAgICAgICAgICAgICBzZXRUaW1l
b3V0KHRlc3QxMi5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgIHNl
dFRpbWVvdXQodGVzdDEzLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vIE9uY2UgZm9yIGFmdGVyIHN0YXJ0LCBhbmQgb25jZSBmb3IgZXZlcnkgcmVhZC4K
ICAgICAgICAgICAgICAgICAgICAgICAgIGFzc2VydF9lcXVhbHModGltZXNDYWxsZWQsIDQsICdw
dWxsKCkgc2hvdWxkIGJlIGNhbGxlZCBleGFjdGx5IGZvdXIgdGltZXMnKTsKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3QxMi5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0
MTMuZG9uZSgpOwogICAgICAgICAgICAgICAgICAgICB9KSwgMTAwMCk7CiAgICAgICAgICAgICAg
ICAgfSkpOwogICAgICAgICAgICAgfSkpOwogICAgICAgICB9KSk7Ci0gICAgfSkpLmNhdGNoKHRl
c3QxMi5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgeyBhc3NlcnRfdW5yZWFjaGVkKGUpOyB9KSk7Cisg
ICAgfSkpLmNhdGNoKHRlc3QxMy5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgeyBhc3NlcnRfdW5yZWFj
aGVkKGUpOyB9KSk7CiB9KTsKIAotdmFyIHRlc3QxMyA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3Ry
ZWFtOiBzaG91bGQgbm90IGNhbGwgcHVsbCBhZnRlciBzdGFydCBpZiB0aGUgc3RyZWFtIGlzIG5v
dyBjbG9zZWQnKTsKLXRlc3QxMy5zdGVwKGZ1bmN0aW9uKCkgewordmFyIHRlc3QxNCA9IGFzeW5j
X3Rlc3QoJ1JlYWRhYmxlU3RyZWFtOiBzaG91bGQgbm90IGNhbGwgcHVsbCBhZnRlciBzdGFydCBp
ZiB0aGUgc3RyZWFtIGlzIG5vdyBjbG9zZWQnKTsKK3Rlc3QxNC5zdGVwKGZ1bmN0aW9uKCkgewog
ICAgIHZhciB0aW1lc0NhbGxlZCA9IDA7CiAgICAgdmFyIHN0YXJ0UHJvbWlzZSA9IFByb21pc2Uu
cmVzb2x2ZSgpOwogICAgIHZhciBycyA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7CkBAIC01MDUsMjMg
KzU0MSwyMyBAQCB0ZXN0MTMuc3RlcChmdW5jdGlvbigpIHsKICAgICAgICAgfQogICAgIH0pOwog
Ci0gICAgc3RhcnRQcm9taXNlLnRoZW4odGVzdDEzLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAg
ICBzdGFydFByb21pc2UudGhlbih0ZXN0MTQuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgewogICAgICAg
ICBhc3NlcnRfZXF1YWxzKHRpbWVzQ2FsbGVkLCAwLCAnYWZ0ZXIgc3RhcnQgZmluaXNoZXMsIHB1
bGwgc2hvdWxkIG5vdCBoYXZlIGJlZW4gY2FsbGVkJyk7CiAKICAgICAgICAgdmFyIHJlYWRlciA9
IHJzLmdldFJlYWRlcigpOwotICAgICAgICByZXR1cm4gcmVhZGVyLnJlYWQoKS50aGVuKHRlc3Qx
My5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgIHJldHVybiByZWFkZXIucmVhZCgpLnRo
ZW4odGVzdDE0LnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHModGltZXNDYWxsZWQsIDAsICdyZWFkaW5nIHNob3VsZCBub3QgaGF2ZSB0cmlnZ2VyZWQgYSBw
dWxsIGNhbGwnKTsKIAotICAgICAgICAgICAgcmV0dXJuIHJlYWRlci5jbG9zZWQudGhlbih0ZXN0
MTMuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgcmV0dXJuIHJlYWRlci5jbG9z
ZWQudGhlbih0ZXN0MTQuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgIGFz
c2VydF9lcXVhbHModGltZXNDYWxsZWQsIDAsICdzdHJlYW0gc2hvdWxkIGhhdmUgY2xvc2VkIHdp
dGggc3RpbGwgbm8gY2FsbHMgdG8gcHVsbCcpOwotICAgICAgICAgICAgICAgIHRlc3QxMy5kb25l
KCk7CisgICAgICAgICAgICAgICAgdGVzdDE0LmRvbmUoKTsKICAgICAgICAgICAgIH0pKTsKICAg
ICAgICAgfSkpOwotICAgIH0pKS5jYXRjaCh0ZXN0MTMuc3RlcF9mdW5jKGZ1bmN0aW9uKGUpIHsg
YXNzZXJ0X3VucmVhY2hlZChlKTsgfSkpOworICAgIH0pKS5jYXRjaCh0ZXN0MTQuc3RlcF9mdW5j
KGZ1bmN0aW9uKGUpIHsgYXNzZXJ0X3VucmVhY2hlZChlKTsgfSkpOwogfSk7CiAKLXZhciB0ZXN0
MTQgPSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbTogc2hvdWxkIGNhbGwgcHVsbCBhZnRlciBl
bnF1ZXVlaW5nIGZyb20gaW5zaWRlIHB1bGwgKHdpdGggbm8gcmVhZCByZXF1ZXN0cyksIGlmIHN0
cmF0ZWd5IGFsbG93cycpOwotdGVzdDE0LnN0ZXAoZnVuY3Rpb24oKSB7Cit2YXIgdGVzdDE1ID0g
YXN5bmNfdGVzdCgnUmVhZGFibGVTdHJlYW06IHNob3VsZCBjYWxsIHB1bGwgYWZ0ZXIgZW5xdWV1
ZWluZyBmcm9tIGluc2lkZSBwdWxsICh3aXRoIG5vIHJlYWQgcmVxdWVzdHMpLCBpZiBzdHJhdGVn
eSBhbGxvd3MnKTsKK3Rlc3QxNS5zdGVwKGZ1bmN0aW9uKCkgewogICAgIHZhciB0aW1lc0NhbGxl
ZCA9IDA7CiAgICAgdmFyIHN0YXJ0UHJvbWlzZSA9IFByb21pc2UucmVzb2x2ZSgpOwogICAgIHZh
ciBycyA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7CkBAIC01MzIsMTQgKzU2OCwxNCBAQCB0ZXN0MTQu
c3RlcChmdW5jdGlvbigpIHsKICAgICAgICAgICAgIGMuZW5xdWV1ZSgrK3RpbWVzQ2FsbGVkKTsK
IAogICAgICAgICAgICAgaWYgKHRpbWVzQ2FsbGVkID09IDQpIHsKLSAgICAgICAgICAgICAgICBz
ZXRUaW1lb3V0KHRlc3QxNC5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAg
c2V0VGltZW91dCh0ZXN0MTUuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAg
ICAgICAvLyBhZnRlciBzdGFydDogc2l6ZSA9IDAsIHB1bGwoKQogICAgICAgICAgICAgICAgICAg
ICAvLyBhZnRlciBlbnF1ZXVlKDEpOiBzaXplID0gMSwgcHVsbCgpCiAgICAgICAgICAgICAgICAg
ICAgIC8vIGFmdGVyIGVucXVldWUoMik6IHNpemUgPSAyLCBwdWxsKCkKICAgICAgICAgICAgICAg
ICAgICAgLy8gYWZ0ZXIgZW5xdWV1ZSgzKTogc2l6ZSA9IDMsIHB1bGwoKQogICAgICAgICAgICAg
ICAgICAgICAvLyBhZnRlciBlbnF1ZXVlKDQpOiBzaXplID0gNCwgZG8gbm90IHB1bGwKICAgICAg
ICAgICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0aW1lc0NhbGxlZCwgNCwgJ3B1bGwoKSBzaG91
bGQgaGF2ZSBiZWVuIGNhbGxlZCBmb3VyIHRpbWVzJyk7Ci0gICAgICAgICAgICAgICAgICAgIHRl
c3QxNC5kb25lKCk7CisgICAgICAgICAgICAgICAgICAgIHRlc3QxNS5kb25lKCk7CiAgICAgICAg
ICAgICAgICAgfSksIDEwMDApOwogICAgICAgICAgICAgfQogICAgICAgICB9CkBAIC01NTIsOCAr
NTg4LDggQEAgdGVzdDE0LnN0ZXAoZnVuY3Rpb24oKSB7CiAgICAgfSk7CiB9KTsKIAotdmFyIHRl
c3QxNSA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtIHB1bGwgc2hvdWxkIGJlIGFibGUgdG8g
Y2xvc2UgYSBzdHJlYW0uJyk7Ci10ZXN0MTUuc3RlcChmdW5jdGlvbigpIHsKK3ZhciB0ZXN0MTYg
PSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbSBwdWxsIHNob3VsZCBiZSBhYmxlIHRvIGNsb3Nl
IGEgc3RyZWFtLicpOwordGVzdDE2LnN0ZXAoZnVuY3Rpb24oKSB7CiAgICAgdmFyIHB1bGxDYWxs
ZWQgPSBmYWxzZTsKICAgICB2YXIgcnMgPSBuZXcgUmVhZGFibGVTdHJlYW0oewogICAgICAgICBw
dWxsOiBmdW5jdGlvbihjKSB7CkBAIC01NjMsOSArNTk5LDkgQEAgdGVzdDE1LnN0ZXAoZnVuY3Rp
b24oKSB7CiAgICAgfSk7CiAKICAgICB2YXIgcmVhZGVyID0gcnMuZ2V0UmVhZGVyKCk7Ci0gICAg
cmVhZGVyLmNsb3NlZC50aGVuKHRlc3QxNS5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgcmVh
ZGVyLmNsb3NlZC50aGVuKHRlc3QxNi5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CiAgICAgICAgIGFz
c2VydF90cnVlKHB1bGxDYWxsZWQpOwotICAgICAgICB0ZXN0MTUuZG9uZSgnc3RyZWFtIHdhcyBj
bG9zZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgICAgICAgIHRlc3QxNi5kb25lKCdzdHJlYW0gd2FzIGNs
b3NlZCBzdWNjZXNzZnVsbHknKTsKICAgICB9KSk7CiB9KTsKIApAQCAtNjEwLDggKzY0Niw4IEBA
IHRlc3QoZnVuY3Rpb24oKSB7CiAgICAgYXNzZXJ0X3RydWUoc3RhcnRDYWxsZWQpOwogfSwgJ1Jl
YWRhYmxlU3RyZWFtOiBlbnF1ZXVlIHNob3VsZCB0aHJvdyB0aGUgc3RvcmVkIGVycm9yIHdoZW4g
dGhlIHN0cmVhbSBpcyBlcnJvcmVkJyk7CiAKLXZhciB0ZXN0MTYgPSBhc3luY190ZXN0KCdSZWFk
YWJsZVN0cmVhbTogc2hvdWxkIGNhbGwgdW5kZXJseWluZyBzb3VyY2UgbWV0aG9kcyBhcyBtZXRo
b2RzJyk7Ci10ZXN0MTYuc3RlcChmdW5jdGlvbigpIHsKK3ZhciB0ZXN0MTcgPSBhc3luY190ZXN0
KCdSZWFkYWJsZVN0cmVhbTogc2hvdWxkIGNhbGwgdW5kZXJseWluZyBzb3VyY2UgbWV0aG9kcyBh
cyBtZXRob2RzJyk7Cit0ZXN0MTcuc3RlcChmdW5jdGlvbigpIHsKICAgICB2YXIgc3RhcnRDYWxs
ZWQgPSAwOwogICAgIHZhciBwdWxsQ2FsbGVkID0gMDsKICAgICB2YXIgY2FuY2VsQ2FsbGVkID0g
MDsKQEAgLTY0MiwxNCArNjc4LDE0IEBAIHRlc3QxNi5zdGVwKGZ1bmN0aW9uKCkgewogICAgIHZh
ciBycyA9IG5ldyBSZWFkYWJsZVN0cmVhbSh0aGVTb3VyY2UpOwogCiAgICAgdmFyIHJlYWRlciA9
IHJzLmdldFJlYWRlcigpOwotICAgIHJlYWRlci5yZWFkKCkudGhlbih0ZXN0MTYuc3RlcF9mdW5j
KGZ1bmN0aW9uKCkgeworICAgIHJlYWRlci5yZWFkKCkudGhlbih0ZXN0MTcuc3RlcF9mdW5jKGZ1
bmN0aW9uKCkgewogICAgICAgICByZWFkZXIucmVsZWFzZUxvY2soKTsKICAgICAgICAgcnMuY2Fu
Y2VsKCk7CiAgICAgICAgIGFzc2VydF9lcXVhbHMoc3RhcnRDYWxsZWQsIDEpOwogICAgICAgICBh
c3NlcnRfZXF1YWxzKHB1bGxDYWxsZWQsIDEpOwogICAgICAgICBhc3NlcnRfZXF1YWxzKGNhbmNl
bENhbGxlZCwgMSk7Ci0gICAgICAgIHRlc3QxNi5kb25lKCk7Ci0gICAgfSkpLmNhdGNoKHRlc3Qx
Ni5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgeyBhc3NlcnRfdW5yZWFjaGVkKGUpOyB9ICkpOworICAg
ICAgICB0ZXN0MTcuZG9uZSgpOworICAgIH0pKS5jYXRjaCh0ZXN0MTcuc3RlcF9mdW5jKGZ1bmN0
aW9uKGUpIHsgYXNzZXJ0X3VucmVhY2hlZChlKTsgfSApKTsKIH0pOwogCiB0ZXN0KGZ1bmN0aW9u
KCkgewpAQCAtNjcyLDggKzcwOCw4IEBAIHRlc3QoZnVuY3Rpb24oKSB7CiAgICAgYXNzZXJ0X3Ry
dWUoc3RhcnRDYWxsZWQpOwogfSwgJ1JlYWRhYmxlU3RyZWFtIHN0cmF0ZWdpZXM6IHRoZSBkZWZh
dWx0IHN0cmF0ZWd5IHNob3VsZCBnaXZlIGRlc2lyZWRTaXplIG9mIDEgdG8gc3RhcnQsIGRlY3Jl
YXNpbmcgYnkgMSBwZXIgZW5xdWV1ZScpOwogCi12YXIgdGVzdDE3ID0gYXN5bmNfdGVzdCgnUmVh
ZGFibGVTdHJlYW0gc3RyYXRlZ2llczogdGhlIGRlZmF1bHQgc3RyYXRlZ3kgc2hvdWxkIGNvbnRp
bnVlIGdpdmluZyBkZXNpcmVkU2l6ZSBvZiAxIGlmIHRoZSBjaHVua3MgYXJlIHJlYWQgaW1tZWRp
YXRlbHknKTsKLXRlc3QxNy5zdGVwKGZ1bmN0aW9uKCkgewordmFyIHRlc3QxOCA9IGFzeW5jX3Rl
c3QoJ1JlYWRhYmxlU3RyZWFtIHN0cmF0ZWdpZXM6IHRoZSBkZWZhdWx0IHN0cmF0ZWd5IHNob3Vs
ZCBjb250aW51ZSBnaXZpbmcgZGVzaXJlZFNpemUgb2YgMSBpZiB0aGUgY2h1bmtzIGFyZSByZWFk
IGltbWVkaWF0ZWx5Jyk7Cit0ZXN0MTguc3RlcChmdW5jdGlvbigpIHsKICAgICB2YXIgY29udHJv
bGxlcjsKICAgICB2YXIgcnMgPSBuZXcgUmVhZGFibGVTdHJlYW0oewogICAgICAgICBzdGFydDog
ZnVuY3Rpb24oYykgewpAQCAtNjg2LDcgKzcyMiw3IEBAIHRlc3QxNy5zdGVwKGZ1bmN0aW9uKCkg
ewogICAgIGNvbnRyb2xsZXIuZW5xdWV1ZSgnYScpOwogICAgIGFzc2VydF9lcXVhbHMoY29udHJv
bGxlci5kZXNpcmVkU2l6ZSwgMCwgJ2Rlc2lyZWRTaXplIHNob3VsZCBkZWNyZWFzZSB0byAwIGFm
dGVyIGZpcnN0IGVucXVldWUnKTsKIAotICAgIHJlYWRlci5yZWFkKCkudGhlbih0ZXN0MTcuc3Rl
cF9mdW5jKGZ1bmN0aW9uKHJlc3VsdDEpIHsKKyAgICByZWFkZXIucmVhZCgpLnRoZW4odGVzdDE4
LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXN1bHQxKSB7CiAgICAgICAgIGFzc2VydF9vYmplY3RfZXF1
YWxzKHJlc3VsdDEsIHsgdmFsdWU6ICdhJywgZG9uZTogZmFsc2UgfSwgJ2ZpcnN0IGNodW5rIHJl
YWQgc2hvdWxkIGJlIGNvcnJlY3QnKTsKIAogICAgICAgICBhc3NlcnRfZXF1YWxzKGNvbnRyb2xs
ZXIuZGVzaXJlZFNpemUsIDEsICdkZXNpcmVkU2l6ZSBzaG91bGQgZ28gdXAgdG8gMSBhZnRlciB0
aGUgZmlyc3QgcmVhZCcpOwpAQCAtNjk0LDcgKzczMCw3IEBAIHRlc3QxNy5zdGVwKGZ1bmN0aW9u
KCkgewogICAgICAgICBhc3NlcnRfZXF1YWxzKGNvbnRyb2xsZXIuZGVzaXJlZFNpemUsIDAsICdk
ZXNpcmVkU2l6ZSBzaG91bGQgZ28gZG93biB0byAwIGFmdGVyIHRoZSBzZWNvbmQgZW5xdWV1ZScp
OwogCiAgICAgICAgIHJldHVybiByZWFkZXIucmVhZCgpOwotICAgIH0pKS50aGVuKHRlc3QxNy5z
dGVwX2Z1bmMoZnVuY3Rpb24ocmVzdWx0MikgeworICAgIH0pKS50aGVuKHRlc3QxOC5zdGVwX2Z1
bmMoZnVuY3Rpb24ocmVzdWx0MikgewogICAgICAgICAgICAgYXNzZXJ0X29iamVjdF9lcXVhbHMo
cmVzdWx0MiwgeyB2YWx1ZTogJ2InLCBkb25lOiBmYWxzZSB9LCAnc2Vjb25kIGNodW5rIHJlYWQg
c2hvdWxkIGJlIGNvcnJlY3QnKTsKIAogICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyhjb250cm9s
bGVyLmRlc2lyZWRTaXplLCAxLCAnZGVzaXJlZFNpemUgc2hvdWxkIGdvIHVwIHRvIDEgYWZ0ZXIg
dGhlIHNlY29uZCByZWFkJyk7CkBAIC03MDIsMTkgKzczOCwxOSBAQCB0ZXN0MTcuc3RlcChmdW5j
dGlvbigpIHsKICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoY29udHJvbGxlci5kZXNpcmVkU2l6
ZSwgMCwgJ2Rlc2lyZWRTaXplIHNob3VsZCBnbyBkb3duIHRvIDAgYWZ0ZXIgdGhlIHRoaXJkIGVu
cXVldWUnKTsKIAogICAgICAgICAgICAgcmV0dXJuIHJlYWRlci5yZWFkKCk7Ci0gICAgfSkpLnRo
ZW4odGVzdDE3LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXN1bHQzKSB7CisgICAgfSkpLnRoZW4odGVz
dDE4LnN0ZXBfZnVuYyhmdW5jdGlvbihyZXN1bHQzKSB7CiAgICAgICAgICAgICBhc3NlcnRfb2Jq
ZWN0X2VxdWFscyhyZXN1bHQzLCB7IHZhbHVlOiAnYycsIGRvbmU6IGZhbHNlIH0sICd0aGlyZCBj
aHVuayByZWFkIHNob3VsZCBiZSBjb3JyZWN0Jyk7CiAKICAgICAgICAgICAgIGFzc2VydF9lcXVh
bHMoY29udHJvbGxlci5kZXNpcmVkU2l6ZSwgMSwgJ2Rlc2lyZWRTaXplIHNob3VsZCBnbyB1cCB0
byAxIGFmdGVyIHRoZSB0aGlyZCByZWFkJyk7CiAgICAgICAgICAgICBjb250cm9sbGVyLmVucXVl
dWUoJ2QnKTsKICAgICAgICAgICAgIGFzc2VydF9lcXVhbHMoY29udHJvbGxlci5kZXNpcmVkU2l6
ZSwgMCwgJ2Rlc2lyZWRTaXplIHNob3VsZCBnbyBkb3duIHRvIDAgYWZ0ZXIgdGhlIGZvdXJ0aCBl
bnF1ZXVlJyk7CiAKLSAgICAgICAgICAgIHRlc3QxNy5kb25lKCk7Ci0gICAgfSkpLmNhdGNoKHRl
c3QxNy5zdGVwX2Z1bmMoZnVuY3Rpb24oZSkgeyBhc3NlcnRfdW5yZWFjaGVkKGUpOyB9KSk7Cisg
ICAgICAgICAgICB0ZXN0MTguZG9uZSgpOworICAgIH0pKS5jYXRjaCh0ZXN0MTguc3RlcF9mdW5j
KGZ1bmN0aW9uKGUpIHsgYXNzZXJ0X3VucmVhY2hlZChlKTsgfSkpOwogfSk7CiAKLXZhciB0ZXN0
MTggPSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbSBpbnRlZ3JhdGlvbiB0ZXN0OiBhZGFwdGlu
ZyBhIHJhbmRvbSBwdXNoIHNvdXJjZScpOwotdGVzdDE4LnN0ZXAoZnVuY3Rpb24oKSB7Cit2YXIg
dGVzdDE5ID0gYXN5bmNfdGVzdCgnUmVhZGFibGVTdHJlYW0gaW50ZWdyYXRpb24gdGVzdDogYWRh
cHRpbmcgYSByYW5kb20gcHVzaCBzb3VyY2UnKTsKK3Rlc3QxOS5zdGVwKGZ1bmN0aW9uKCkgewog
ICAgIHZhciBwdWxsQ2hlY2tlZCA9IGZhbHNlOwogICAgIHZhciByYW5kb21Tb3VyY2UgPSBuZXcg
UmFuZG9tUHVzaFNvdXJjZSg4KTsKIApAQCAtNzI1LDggKzc2MSw4IEBAIHRlc3QxOC5zdGVwKGZ1
bmN0aW9uKCkgewogICAgICAgICAgICAgYXNzZXJ0X2VxdWFscyh0eXBlb2YgYy5jbG9zZSwgJ2Z1
bmN0aW9uJywgJ2Nsb3NlIHNob3VsZCBiZSBhIGZ1bmN0aW9uIGluIHN0YXJ0Jyk7CiAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKHR5cGVvZiBjLmVycm9yLCAnZnVuY3Rpb24nLCAnZXJyb3Igc2hv
dWxkIGJlIGEgZnVuY3Rpb24gaW4gc3RhcnQnKTsKIAotICAgICAgICAgICAgcmFuZG9tU291cmNl
Lm9uZGF0YSA9IHRlc3QxOC5zdGVwX2Z1bmMoZnVuY3Rpb24oY2h1bmspIHsKLSAgICAgICAgICAg
ICAgICBpZiAoIWMuZW5xdWV1ZShjaHVuaykpIHsKKyAgICAgICAgICAgIHJhbmRvbVNvdXJjZS5v
bmRhdGEgPSB0ZXN0MTkuc3RlcF9mdW5jKGZ1bmN0aW9uKGNodW5rKSB7CisgICAgICAgICAgICAg
ICAgaWYgKCFjLmVucXVldWUoY2h1bmspIDw9IDApIHsKICAgICAgICAgICAgICAgICAgICAgcmFu
ZG9tU291cmNlLnJlYWRTdG9wKCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfSk7
CkBAIC03NDcsMzcgKzc4MywzNyBAQCB0ZXN0MTguc3RlcChmdW5jdGlvbigpIHsKICAgICAgICAg
fQogICAgIH0pOwogCi0gICAgcmVhZGFibGVTdHJlYW1Ub0FycmF5KHJzKS50aGVuKHRlc3QxOC5z
dGVwX2Z1bmMoZnVuY3Rpb24oY2h1bmtzKSB7CisgICAgcmVhZGFibGVTdHJlYW1Ub0FycmF5KHJz
KS50aGVuKHRlc3QxOS5zdGVwX2Z1bmMoZnVuY3Rpb24oY2h1bmtzKSB7CiAgICAgICAgIGFzc2Vy
dF9lcXVhbHMoY2h1bmtzLmxlbmd0aCwgOCwgJzggY2h1bmtzIHNob3VsZCBiZSByZWFkJyk7CiAg
ICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2h1bmtzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAg
ICAgICBhc3NlcnRfZXF1YWxzKGNodW5rc1tpXS5sZW5ndGgsIDEyOCwgJ2NodW5rIHNob3VsZCBo
YXZlIDEyOCBieXRlcycpOwogICAgICAgICB9CiAKLSAgICAgICAgdGVzdDE4LmRvbmUoKTsKLSAg
ICB9KSwgdGVzdDE4LnN0ZXBfZnVuYyhmdW5jdGlvbihlKSB7IGFzc2VydF91bnJlYWNoZWQoZSk7
IH0pKTsKKyAgICAgICAgdGVzdDE5LmRvbmUoKTsKKyAgICB9KSwgdGVzdDE5LnN0ZXBfZnVuYyhm
dW5jdGlvbihlKSB7IGFzc2VydF91bnJlYWNoZWQoZSk7IH0pKTsKIH0pOwogCi12YXIgdGVzdDE5
ID0gYXN5bmNfdGVzdCgnUmVhZGFibGVTdHJlYW0gaW50ZWdyYXRpb24gdGVzdDogYWRhcHRpbmcg
YSBzeW5jIHB1bGwgc291cmNlJyk7Ci10ZXN0MTkuc3RlcChmdW5jdGlvbigpIHsKK3ZhciB0ZXN0
MjAgPSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbSBpbnRlZ3JhdGlvbiB0ZXN0OiBhZGFwdGlu
ZyBhIHN5bmMgcHVsbCBzb3VyY2UnKTsKK3Rlc3QyMC5zdGVwKGZ1bmN0aW9uKCkgewogICAgIHZh
ciBycyA9IHNlcXVlbnRpYWxSZWFkYWJsZVN0cmVhbSgxMCk7CiAKLSAgICByZWFkYWJsZVN0cmVh
bVRvQXJyYXkocnMpLnRoZW4odGVzdDE5LnN0ZXBfZnVuYyhmdW5jdGlvbihjaHVua3MpIHsKKyAg
ICByZWFkYWJsZVN0cmVhbVRvQXJyYXkocnMpLnRoZW4odGVzdDIwLnN0ZXBfZnVuYyhmdW5jdGlv
bihjaHVua3MpIHsKICAgICAgICAgYXNzZXJ0X3RydWUocnMuc291cmNlLmNsb3NlZCwgJ3NvdXJj
ZSBzaG91bGQgYmUgY2xvc2VkIGFmdGVyIGFsbCBjaHVua3MgYXJlIHJlYWQnKTsKICAgICAgICAg
YXNzZXJ0X2FycmF5X2VxdWFscyhjaHVua3MsIFsxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAx
MF0sICd0aGUgZXhwZWN0ZWQgMTAgY2h1bmtzIHNob3VsZCBiZSByZWFkJyk7CiAKLSAgICAgICAg
dGVzdDE5LmRvbmUoKTsKKyAgICAgICAgdGVzdDIwLmRvbmUoKTsKICAgICB9KSk7CiB9KTsKIAot
dmFyIHRlc3QyMCA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtIGludGVncmF0aW9uIHRlc3Q6
IGFkYXB0aW5nIGFuIGFzeW5jIHB1bGwgc291cmNlJyk7Ci10ZXN0MjAuc3RlcChmdW5jdGlvbigp
IHsKK3ZhciB0ZXN0MjEgPSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbSBpbnRlZ3JhdGlvbiB0
ZXN0OiBhZGFwdGluZyBhbiBhc3luYyBwdWxsIHNvdXJjZScpOwordGVzdDIxLnN0ZXAoZnVuY3Rp
b24oKSB7CiAgICAgdmFyIHJzID0gc2VxdWVudGlhbFJlYWRhYmxlU3RyZWFtKDEwLCB7IGFzeW5j
OiB0cnVlIH0pOwogCi0gICAgcmVhZGFibGVTdHJlYW1Ub0FycmF5KHJzKS50aGVuKHRlc3QyMC5z
dGVwX2Z1bmMoZnVuY3Rpb24oY2h1bmtzKSB7CisgICAgcmVhZGFibGVTdHJlYW1Ub0FycmF5KHJz
KS50aGVuKHRlc3QyMS5zdGVwX2Z1bmMoZnVuY3Rpb24oY2h1bmtzKSB7CiAgICAgICAgIGFzc2Vy
dF90cnVlKHJzLnNvdXJjZS5jbG9zZWQsICdzb3VyY2Ugc2hvdWxkIGJlIGNsb3NlZCBhZnRlciBh
bGwgY2h1bmtzIGFyZSByZWFkJyk7CiAgICAgICAgIGFzc2VydF9hcnJheV9lcXVhbHMoY2h1bmtz
LCBbMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdLCAndGhlIGV4cGVjdGVkIDEwIGNodW5r
cyBzaG91bGQgYmUgcmVhZCcpOwogCi0gICAgICAgIHRlc3QyMC5kb25lKCk7CisgICAgICAgIHRl
c3QyMS5kb25lKCk7CiAgICAgfSkpOwogfSk7CiAKQEAgLTc5Myw4ICs4MjksOCBAQCBmdW5jdGlv
biBnYXJiYWdlQ29sbGVjdEFuZERvKHRhc2spCiAgICAgc2V0VGltZW91dCh0YXNrLCB0aW1lb3V0
KTsKIH0KIAotdmFyIHRlc3QyMSA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtQ29udHJvbGxl
ciBtZXRob2RzIHNob3VsZCBjb250aW51ZSB3b3JraW5nIHByb3Blcmx5IHdoZW4gc2NyaXB0cyBs
b3NlIHRoZWlyIHJlZmVyZW5jZSB0byB0aGUgcmVhZGFibGUgc3RyZWFtJyk7Ci10ZXN0MjEuc3Rl
cChmdW5jdGlvbigpIHsKK3ZhciB0ZXN0MjIgPSBhc3luY190ZXN0KCdSZWFkYWJsZVN0cmVhbUNv
bnRyb2xsZXIgbWV0aG9kcyBzaG91bGQgY29udGludWUgd29ya2luZyBwcm9wZXJseSB3aGVuIHNj
cmlwdHMgbG9zZSB0aGVpciByZWZlcmVuY2UgdG8gdGhlIHJlYWRhYmxlIHN0cmVhbScpOwordGVz
dDIyLnN0ZXAoZnVuY3Rpb24oKSB7CiAgICAgdmFyIGNvbnRyb2xsZXI7CiAgICAgbmV3IFJlYWRh
YmxlU3RyZWFtKHsKICAgICAgICAgc3RhcnQ6IGZ1bmN0aW9uKGMpIHsKQEAgLTgwMiw0MiArODM4
LDQyIEBAIHRlc3QyMS5zdGVwKGZ1bmN0aW9uKCkgewogICAgICAgICB9CiAgICAgfSk7CiAKLSAg
ICBnYXJiYWdlQ29sbGVjdEFuZERvKHRlc3QyMS5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAg
Z2FyYmFnZUNvbGxlY3RBbmREbyh0ZXN0MjIuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgewogICAgICAg
ICBjb250cm9sbGVyLmNsb3NlKCk7CiAgICAgICAgIGFzc2VydF90aHJvd3MobmV3IFR5cGVFcnJv
cigpLCBmdW5jdGlvbigpIHsgY29udHJvbGxlci5jbG9zZSgpOyB9LCAnY2xvc2Ugc2hvdWxkIHRo
cm93IGEgVHlwZUVycm9yIHRoZSBzZWNvbmQgdGltZScpOwogICAgICAgICBhc3NlcnRfdGhyb3dz
KG5ldyBUeXBlRXJyb3IoKSwgZnVuY3Rpb24oKSB7IGNvbnRyb2xsZXIuZXJyb3IoKTsgfSksICdl
cnJvciBzaG91bGQgdGhyb3cgYSBUeXBlRXJyb3Igb24gYSBjbG9zZWQgc3RyZWFtJzsKLSAgICAg
ICAgdGVzdDIxLmRvbmUoKTsKKyAgICAgICAgdGVzdDIyLmRvbmUoKTsKICAgICB9KSk7CiB9KTsK
IAotdmFyIHRlc3QyMiA9IGFzeW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtIGNsb3NlZCBwcm9taXNl
IHNob3VsZCBmdWxmaWxsIGV2ZW4gaWYgdGhlIHN0cmVhbSBhbmQgcmVhZGVyIEpTIHJlZmVyZW5j
ZXMgYXJlIGxvc3QnKTsKLXRlc3QyMi5zdGVwKGZ1bmN0aW9uKCkgewordmFyIHRlc3QyMyA9IGFz
eW5jX3Rlc3QoJ1JlYWRhYmxlU3RyZWFtIGNsb3NlZCBwcm9taXNlIHNob3VsZCBmdWxmaWxsIGV2
ZW4gaWYgdGhlIHN0cmVhbSBhbmQgcmVhZGVyIEpTIHJlZmVyZW5jZXMgYXJlIGxvc3QnKTsKK3Rl
c3QyMy5zdGVwKGZ1bmN0aW9uKCkgewogICAgIHZhciBjb250cm9sbGVyOwogICAgIG5ldyBSZWFk
YWJsZVN0cmVhbSh7CiAgICAgICAgIHN0YXJ0OiBmdW5jdGlvbihjKSB7CiAgICAgICAgICAgICBj
b250cm9sbGVyID0gYzsKICAgICAgICAgfQotICAgIH0pLmdldFJlYWRlcigpLmNsb3NlZC50aGVu
KHRlc3QyMi5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7Ci0gICAgICAgIHRlc3QyMi5kb25lKCdjbG9z
ZWQgcHJvbWlzZSBzaG91bGQgYmUgZnVsZmlsbGVkJyk7CisgICAgfSkuZ2V0UmVhZGVyKCkuY2xv
c2VkLnRoZW4odGVzdDIzLnN0ZXBfZnVuYyhmdW5jdGlvbigpIHsKKyAgICAgICAgdGVzdDIzLmRv
bmUoJ2Nsb3NlZCBwcm9taXNlIHNob3VsZCBiZSBmdWxmaWxsZWQnKTsKICAgICB9KSk7CiAKLSAg
ICBnYXJiYWdlQ29sbGVjdEFuZERvKHRlc3QyMi5zdGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAg
Z2FyYmFnZUNvbGxlY3RBbmREbyh0ZXN0MjMuc3RlcF9mdW5jKGZ1bmN0aW9uKCkgewogICAgICAg
ICBjb250cm9sbGVyLmNsb3NlKCk7CiAgICAgfSkpOwogfSk7CiAKLXZhciB0ZXN0MjMgPSBhc3lu
Y190ZXN0KCdSZWFkYWJsZVN0cmVhbSBjbG9zZWQgcHJvbWlzZSBzaG91bGQgcmVqZWN0IGV2ZW4g
aWYgc3RyZWFtIGFuZCByZWFkZXIgSlMgcmVmZXJlbmNlcyBhcmUgbG9zdCcpOwotdGVzdDIzLnN0
ZXAoZnVuY3Rpb24oKSB7Cit2YXIgdGVzdDI0ID0gYXN5bmNfdGVzdCgnUmVhZGFibGVTdHJlYW0g
Y2xvc2VkIHByb21pc2Ugc2hvdWxkIHJlamVjdCBldmVuIGlmIHN0cmVhbSBhbmQgcmVhZGVyIEpT
IHJlZmVyZW5jZXMgYXJlIGxvc3QnKTsKK3Rlc3QyNC5zdGVwKGZ1bmN0aW9uKCkgewogICAgIHZh
ciBjb250cm9sbGVyOwogICAgIG5ldyBSZWFkYWJsZVN0cmVhbSh7CiAgICAgICAgIHN0YXJ0OiBm
dW5jdGlvbihjKSB7CiAgICAgICAgICAgICBjb250cm9sbGVyID0gYzsKICAgICAgICAgfQotICAg
IH0pLmdldFJlYWRlcigpLmNsb3NlZC5jYXRjaCh0ZXN0MjMuc3RlcF9mdW5jKGZ1bmN0aW9uKCkg
ewotICAgICAgICB0ZXN0MjMuZG9uZSgnY2xvc2VkIHByb21pc2Ugc2hvdWxkIGJlIHJlamVjdGVk
Jyk7CisgICAgfSkuZ2V0UmVhZGVyKCkuY2xvc2VkLmNhdGNoKHRlc3QyNC5zdGVwX2Z1bmMoZnVu
Y3Rpb24oKSB7CisgICAgICAgIHRlc3QyNC5kb25lKCdjbG9zZWQgcHJvbWlzZSBzaG91bGQgYmUg
cmVqZWN0ZWQnKTsKICAgICB9KSk7CiAKLSAgICBnYXJiYWdlQ29sbGVjdEFuZERvKHRlc3QyMy5z
dGVwX2Z1bmMoZnVuY3Rpb24oKSB7CisgICAgZ2FyYmFnZUNvbGxlY3RBbmREbyh0ZXN0MjQuc3Rl
cF9mdW5jKGZ1bmN0aW9uKCkgewogICAgICAgICBjb250cm9sbGVyLmVycm9yKCk7CiAgICAgfSkp
OwogfSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>