<?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>176923</bug_id>
          
          <creation_ts>2017-09-14 10:56:15 -0700</creation_ts>
          <short_desc>Web Inspector: Add tests for different Timeline events</short_desc>
          <delta_ts>2017-09-14 10:56:15 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=176824</see_also>
          <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="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>inspector-bugzilla-changes</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1348862</commentid>
    <comment_count>0</comment_count>
      <attachid>320792</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-09-14 10:56:15 -0700</bug_when>
    <thetext>Created attachment 320792
[PATCH] Work in Progress - Timer tests

Add tests for different Timeline events.

I tried to add a bunch for timers, and the last timer events (fire / clear) were sometimes not included in the recording. See attached WIP patch:
https://bugs.webkit.org/show_bug.cgi?id=176824#c14

&gt; {
&gt;     &quot;id&quot;: &quot;EventType&quot;,
&gt;     &quot;type&quot;: &quot;string&quot;,
&gt;     &quot;description&quot;: &quot;Timeline record type.&quot;,
&gt;     &quot;enum&quot;: [
&gt;         &quot;EventDispatch&quot;,
&gt;         &quot;ScheduleStyleRecalculation&quot;,
&gt;         &quot;RecalculateStyles&quot;,
&gt;         &quot;InvalidateLayout&quot;,
&gt;         &quot;Layout&quot;,
&gt;         &quot;Paint&quot;,
&gt;         &quot;Composite&quot;,
&gt;         &quot;RenderingFrame&quot;,
&gt;         &quot;TimerInstall&quot;,
&gt;         &quot;TimerRemove&quot;,
&gt;         &quot;TimerFire&quot;,
&gt;         &quot;EvaluateScript&quot;,
&gt;         &quot;TimeStamp&quot;,
&gt;         &quot;Time&quot;,
&gt;         &quot;TimeEnd&quot;,
&gt;         &quot;FunctionCall&quot;,
&gt;         &quot;ProbeSample&quot;,
&gt;         &quot;ConsoleProfile&quot;,
&gt;         &quot;RequestAnimationFrame&quot;,
&gt;         &quot;CancelAnimationFrame&quot;,
&gt;         &quot;FireAnimationFrame&quot;
&gt;     ]
&gt; },</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320792</attachid>
            <date>2017-09-14 10:56:15 -0700</date>
            <delta_ts>2017-09-14 10:56:15 -0700</delta_ts>
            <desc>[PATCH] Work in Progress - Timer tests</desc>
            <filename>timer-tests-1.patch</filename>
            <type>text/plain</type>
            <size>24444</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVu
dC1DYW5jZWxBbmltYXRpb25GcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtQ2FuY2VsQW5pbWF0aW9uRnJhbWUtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi40YTczNDcxYzAwYQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGlu
ZS1ldmVudC1DYW5jZWxBbmltYXRpb25GcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMSBA
QAorVGVzdHMgJ0NhbmNlbEFuaW1hdGlvbkZyYW1lJyBUaW1lbGluZSBldmVudCByZWNvcmRzLgor
CisKKz09IFJ1bm5pbmcgdGVzdCBzdWl0ZTogVGltZWxpbmVFdmVudC5DYW5jZWxBbmltYXRpb25G
cmFtZQorLS0gUnVubmluZyB0ZXN0IGNhc2U6IFRpbWVsaW5lRXZlbnQuQ2FuY2VsQW5pbWF0aW9u
RnJhbWUucmVxdWVzdEFuaW1hdGlvbkZyYW1lCitTdGFydGluZyBDYXB0dXJlLi4uCitTdG9wcGlu
ZyBDYXB0dXJlLi4uCitQQVNTOiBTaG91bGQgYmUgMSBBbmltYXRpb25GcmFtZUNhbmNlbGVkIHJl
Y29yZC4KK0RFVEFJTFM6IG51bWJlcgorUEFTUzogU2NyaXB0VGltZWxpbmVSZWNvcmQgZGV0YWls
cyBzaG91bGQgYmUgdGhlIHJlcXVlc3RBbmltYXRpb25GcmFtZSBpZGVudGlmaWVyLgorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtQ2Fu
Y2VsQW5pbWF0aW9uRnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90
aW1lbGluZS1ldmVudC1DYW5jZWxBbmltYXRpb25GcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5lZjYxMzBmNTNiOAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1DYW5jZWxBbmltYXRp
b25GcmFtZS5odG1sCkBAIC0wLDAgKzEsNDIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9yZXNvdXJjZXMv
aW5zcGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4vcmVzb3VyY2VzL3Rp
bWVsaW5lLWV2ZW50LXV0aWxpdGllcy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorZnVuY3Rpb24g
dGVzdFJlcXVlc3RBbmltYXRpb25GcmFtZSgpIHsKKyAgICBsZXQgcmVxdWVzdEFuaW1hdGlvbkZy
YW1lSWRlbnRpZmllciA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7IFRlc3RQYWdlLmFk
ZFJlc3VsdCgiRkFJTDogcmVxdWVzdEFuaW1hdGlvbkZyYW1lIGZpcmVkIik7IH0pOworICAgIGNh
bmNlbEFuaW1hdGlvbkZyYW1lKHJlcXVlc3RBbmltYXRpb25GcmFtZUlkZW50aWZpZXIpOworICAg
IHNldFRpbWVvdXQoKCkgPT4geyBmaW5pc2hSZWNvcmRpbmcoe3JlcXVlc3RBbmltYXRpb25GcmFt
ZUlkZW50aWZpZXJ9KTsgfSk7IC8vIERlbGF5IGEgYml0IHRvIGVuc3VyZSB3ZSBnZXQgdGhlIGNs
ZWFyIGFuaW1hdGlvbiBmcmFtZS4KK30KKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgbGV0IHN1
aXRlID0gSW5zcGVjdG9yVGVzdC5jcmVhdGVBc3luY1N1aXRlKCJUaW1lbGluZUV2ZW50LkNhbmNl
bEFuaW1hdGlvbkZyYW1lIik7CisKKyAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CisgICAgICAgIG5h
bWU6ICJUaW1lbGluZUV2ZW50LkNhbmNlbEFuaW1hdGlvbkZyYW1lLnJlcXVlc3RBbmltYXRpb25G
cmFtZSIsCisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBjYXB0
dXJlVGltZWxpbmVXaXRoU2NyaXB0KGB0ZXN0UmVxdWVzdEFuaW1hdGlvbkZyYW1lKClgKS50aGVu
KCgpID0+IHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydCh0eXBlb2YgcGFn
ZVJlY29yZGluZ0RhdGEucmVxdWVzdEFuaW1hdGlvbkZyYW1lSWRlbnRpZmllciA9PT0gIm51bWJl
ciIpOworCisgICAgICAgICAgICAgICAgbGV0IHJlY29yZGluZyA9IFdJLnRpbWVsaW5lTWFuYWdl
ci5hY3RpdmVSZWNvcmRpbmc7CisgICAgICAgICAgICAgICAgbGV0IHNjcmlwdFRpbWVsaW5lID0g
cmVjb3JkaW5nLnRpbWVsaW5lcy5nZXQoV0kuVGltZWxpbmVSZWNvcmQuVHlwZS5TY3JpcHQpOwor
ICAgICAgICAgICAgICAgIGxldCByZWNvcmRzID0gc2NyaXB0VGltZWxpbmUucmVjb3Jkcy5maWx0
ZXIoKHgpID0+IHguZXZlbnRUeXBlID09PSBXSS5TY3JpcHRUaW1lbGluZVJlY29yZC5FdmVudFR5
cGUuQW5pbWF0aW9uRnJhbWVDYW5jZWxlZCk7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5leHBlY3RFcXVhbChyZWNvcmRzLmxlbmd0aCwgMSwgIlNob3VsZCBiZSAxIEFuaW1hdGlvbkZy
YW1lQ2FuY2VsZWQgcmVjb3JkLiIpOworICAgICAgICAgICAgICAgIGZvciAobGV0IHJlY29yZCBv
ZiByZWNvcmRzKSB7CisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKCJERVRB
SUxTOiAiICsgdHlwZW9mIHJlY29yZC5kZXRhaWxzKTsKKyAgICAgICAgICAgICAgICAgICAgSW5z
cGVjdG9yVGVzdC5leHBlY3RFcXVhbChyZWNvcmQuZGV0YWlscywgcGFnZVJlY29yZGluZ0RhdGEu
cmVxdWVzdEFuaW1hdGlvbkZyYW1lSWRlbnRpZmllciwgIlNjcmlwdFRpbWVsaW5lUmVjb3JkIGRl
dGFpbHMgc2hvdWxkIGJlIHRoZSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgaWRlbnRpZmllci4iKTsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9KS50aGVuKHJlc29sdmUsIHJlamVjdCk7
CisgICAgICAgIH0KKyAgICB9KTsKKworICAgIHN1aXRlLnJ1blRlc3RDYXNlc0FuZEZpbmlzaCgp
OworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8cD5U
ZXN0cyAnQ2FuY2VsQW5pbWF0aW9uRnJhbWUnIFRpbWVsaW5lIGV2ZW50IHJlY29yZHMuPC9wPgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVs
aW5lL3RpbWVsaW5lLWV2ZW50LUZpcmVBbmltYXRpb25GcmFtZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtRmlyZUFuaW1hdGlvbkZy
YW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4u
YjI2NGE1ZGE3NzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGlt
ZWxpbmUvdGltZWxpbmUtZXZlbnQtRmlyZUFuaW1hdGlvbkZyYW1lLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDEyIEBACitUZXN0cyAnRmlyZUFuaW1hdGlvbkZyYW1lJyBUaW1lbGluZSBldmVudCBy
ZWNvcmRzLgorCisKKz09IFJ1bm5pbmcgdGVzdCBzdWl0ZTogVGltZWxpbmVFdmVudC5GaXJlQW5p
bWF0aW9uRnJhbWUKKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBUaW1lbGluZUV2ZW50LkZpcmVBbmlt
YXRpb25GcmFtZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUKK1N0YXJ0aW5nIENhcHR1cmUuLi4KK3Jl
cXVlc3RBbmltYXRpb25GcmFtZSBmaXJlZAorU3RvcHBpbmcgQ2FwdHVyZS4uLgorUEFTUzogU2hv
dWxkIGJlIDEgQW5pbWF0aW9uRnJhbWVGaXJlZCByZWNvcmQuCitERVRBSUxTOiBudW1iZXIKK1BB
U1M6IFNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxkIGJlIHRoZSByZXF1ZXN0QW5p
bWF0aW9uRnJhbWUgaWRlbnRpZmllci4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL3RpbWVsaW5lL3RpbWVsaW5lLWV2ZW50LUZpcmVBbmltYXRpb25GcmFtZS5odG1sIGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLWV2ZW50LUZpcmVBbmltYXRpb25G
cmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi42ZWIyMWYw
NjQxMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90
aW1lbGluZS1ldmVudC1GaXJlQW5pbWF0aW9uRnJhbWUuaHRtbApAQCAtMCwwICsxLDQzIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vaHR0cC90
ZXN0cy9pbnNwZWN0b3IvcmVzb3VyY2VzL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuL3Jlc291cmNlcy90aW1lbGluZS1ldmVudC11dGlsaXRpZXMuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdD4KK2Z1bmN0aW9uIHRlc3RSZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKSB7Cisg
ICAgbGV0IHJlcXVlc3RBbmltYXRpb25GcmFtZUlkZW50aWZpZXIgPSByZXF1ZXN0QW5pbWF0aW9u
RnJhbWUoKCkgPT4geworICAgICAgICBUZXN0UGFnZS5hZGRSZXN1bHQoInJlcXVlc3RBbmltYXRp
b25GcmFtZSBmaXJlZCIpOworICAgICAgICBmaW5pc2hSZWNvcmRpbmcoe3JlcXVlc3RBbmltYXRp
b25GcmFtZUlkZW50aWZpZXJ9KTsKKyAgICB9KTsKK30KKworZnVuY3Rpb24gdGVzdCgpCit7Cisg
ICAgbGV0IHN1aXRlID0gSW5zcGVjdG9yVGVzdC5jcmVhdGVBc3luY1N1aXRlKCJUaW1lbGluZUV2
ZW50LkZpcmVBbmltYXRpb25GcmFtZSIpOworCisgICAgc3VpdGUuYWRkVGVzdENhc2UoeworICAg
ICAgICBuYW1lOiAiVGltZWxpbmVFdmVudC5GaXJlQW5pbWF0aW9uRnJhbWUucmVxdWVzdEFuaW1h
dGlvbkZyYW1lIiwKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAg
IGNhcHR1cmVUaW1lbGluZVdpdGhTY3JpcHQoYHRlc3RSZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKWAp
LnRoZW4oKCkgPT4geworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KHR5cGVv
ZiBwYWdlUmVjb3JkaW5nRGF0YS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVJZGVudGlmaWVyID09PSAi
bnVtYmVyIik7CisKKyAgICAgICAgICAgICAgICBsZXQgcmVjb3JkaW5nID0gV0kudGltZWxpbmVN
YW5hZ2VyLmFjdGl2ZVJlY29yZGluZzsKKyAgICAgICAgICAgICAgICBsZXQgc2NyaXB0VGltZWxp
bmUgPSByZWNvcmRpbmcudGltZWxpbmVzLmdldChXSS5UaW1lbGluZVJlY29yZC5UeXBlLlNjcmlw
dCk7CisgICAgICAgICAgICAgICAgbGV0IHJlY29yZHMgPSBzY3JpcHRUaW1lbGluZS5yZWNvcmRz
LmZpbHRlcigoeCkgPT4geC5ldmVudFR5cGUgPT09IFdJLlNjcmlwdFRpbWVsaW5lUmVjb3JkLkV2
ZW50VHlwZS5BbmltYXRpb25GcmFtZUZpcmVkKTsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LmV4cGVjdEVxdWFsKHJlY29yZHMubGVuZ3RoLCAxLCAiU2hvdWxkIGJlIDEgQW5pbWF0aW9u
RnJhbWVGaXJlZCByZWNvcmQuIik7CisgICAgICAgICAgICAgICAgZm9yIChsZXQgcmVjb3JkIG9m
IHJlY29yZHMpIHsKKyAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5sb2coIkRFVEFJ
TFM6ICIgKyB0eXBlb2YgcmVjb3JkLmRldGFpbHMpOworICAgICAgICAgICAgICAgICAgICBJbnNw
ZWN0b3JUZXN0LmV4cGVjdEVxdWFsKHJlY29yZC5kZXRhaWxzLCBwYWdlUmVjb3JkaW5nRGF0YS5y
ZXF1ZXN0QW5pbWF0aW9uRnJhbWVJZGVudGlmaWVyLCAiU2NyaXB0VGltZWxpbmVSZWNvcmQgZGV0
YWlscyBzaG91bGQgYmUgdGhlIHJlcXVlc3RBbmltYXRpb25GcmFtZSBpZGVudGlmaWVyLiIpOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0pLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsK
KyAgICAgICAgfQorICAgIH0pOworCisgICAgc3VpdGUucnVuVGVzdENhc2VzQW5kRmluaXNoKCk7
Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKzxwPlRl
c3RzICdGaXJlQW5pbWF0aW9uRnJhbWUnIFRpbWVsaW5lIGV2ZW50IHJlY29yZHMuPC9wPgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5l
L3RpbWVsaW5lLWV2ZW50LVJlcXVlc3RBbmltYXRpb25GcmFtZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtUmVxdWVzdEFuaW1hdGlv
bkZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MC4uMDEyZmQzM2U4NDQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
dGltZWxpbmUvdGltZWxpbmUtZXZlbnQtUmVxdWVzdEFuaW1hdGlvbkZyYW1lLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDEyIEBACitUZXN0cyAnUmVxdWVzdEFuaW1hdGlvbkZyYW1lJyBUaW1lbGlu
ZSBldmVudCByZWNvcmRzLgorCisKKz09IFJ1bm5pbmcgdGVzdCBzdWl0ZTogVGltZWxpbmVFdmVu
dC5SZXF1ZXN0QW5pbWF0aW9uRnJhbWUKKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBUaW1lbGluZUV2
ZW50LlJlcXVlc3RBbmltYXRpb25GcmFtZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUKK1N0YXJ0aW5n
IENhcHR1cmUuLi4KK3JlcXVlc3RBbmltYXRpb25GcmFtZSBmaXJlZAorU3RvcHBpbmcgQ2FwdHVy
ZS4uLgorUEFTUzogU2hvdWxkIGJlIDEgQW5pbWF0aW9uRnJhbWVSZXF1ZXN0ZWQgcmVjb3JkLgor
REVUQUlMUzogbnVtYmVyCitQQVNTOiBTY3JpcHRUaW1lbGluZVJlY29yZCBkZXRhaWxzIHNob3Vs
ZCBiZSB0aGUgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIGlkZW50aWZpZXIuCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1SZXF1ZXN0QW5p
bWF0aW9uRnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGlu
ZS1ldmVudC1SZXF1ZXN0QW5pbWF0aW9uRnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMC4uNjRiNmJhNmY4OTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtUmVxdWVzdEFuaW1hdGlvbkZy
YW1lLmh0bWwKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlcy9pbnNw
ZWN0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvdGltZWxp
bmUtZXZlbnQtdXRpbGl0aWVzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitmdW5jdGlvbiB0ZXN0
UmVxdWVzdEFuaW1hdGlvbkZyYW1lKCkgeworICAgIGxldCByZXF1ZXN0QW5pbWF0aW9uRnJhbWVJ
ZGVudGlmaWVyID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHsKKyAgICAgICAgVGVzdFBh
Z2UuYWRkUmVzdWx0KCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUgZmlyZWQiKTsKKyAgICAgICAgZmlu
aXNoUmVjb3JkaW5nKHtyZXF1ZXN0QW5pbWF0aW9uRnJhbWVJZGVudGlmaWVyfSk7CisgICAgfSk7
Cit9CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIGxldCBzdWl0ZSA9IEluc3BlY3RvclRlc3Qu
Y3JlYXRlQXN5bmNTdWl0ZSgiVGltZWxpbmVFdmVudC5SZXF1ZXN0QW5pbWF0aW9uRnJhbWUiKTsK
KworICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKKyAgICAgICAgbmFtZTogIlRpbWVsaW5lRXZlbnQu
UmVxdWVzdEFuaW1hdGlvbkZyYW1lLnJlcXVlc3RBbmltYXRpb25GcmFtZSIsCisgICAgICAgIHRl
c3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBjYXB0dXJlVGltZWxpbmVXaXRoU2Ny
aXB0KGB0ZXN0UmVxdWVzdEFuaW1hdGlvbkZyYW1lKClgKS50aGVuKCgpID0+IHsKKyAgICAgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydCh0eXBlb2YgcGFnZVJlY29yZGluZ0RhdGEucmVx
dWVzdEFuaW1hdGlvbkZyYW1lSWRlbnRpZmllciA9PT0gIm51bWJlciIpOworCisgICAgICAgICAg
ICAgICAgbGV0IHJlY29yZGluZyA9IFdJLnRpbWVsaW5lTWFuYWdlci5hY3RpdmVSZWNvcmRpbmc7
CisgICAgICAgICAgICAgICAgbGV0IHNjcmlwdFRpbWVsaW5lID0gcmVjb3JkaW5nLnRpbWVsaW5l
cy5nZXQoV0kuVGltZWxpbmVSZWNvcmQuVHlwZS5TY3JpcHQpOworICAgICAgICAgICAgICAgIGxl
dCByZWNvcmRzID0gc2NyaXB0VGltZWxpbmUucmVjb3Jkcy5maWx0ZXIoKHgpID0+IHguZXZlbnRU
eXBlID09PSBXSS5TY3JpcHRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuQW5pbWF0aW9uRnJhbWVS
ZXF1ZXN0ZWQpOworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0RXF1YWwocmVj
b3Jkcy5sZW5ndGgsIDEsICJTaG91bGQgYmUgMSBBbmltYXRpb25GcmFtZVJlcXVlc3RlZCByZWNv
cmQuIik7CisgICAgICAgICAgICAgICAgZm9yIChsZXQgcmVjb3JkIG9mIHJlY29yZHMpIHsKKyAg
ICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5sb2coIkRFVEFJTFM6ICIgKyB0eXBlb2Yg
cmVjb3JkLmRldGFpbHMpOworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVj
dEVxdWFsKHJlY29yZC5kZXRhaWxzLCBwYWdlUmVjb3JkaW5nRGF0YS5yZXF1ZXN0QW5pbWF0aW9u
RnJhbWVJZGVudGlmaWVyLCAiU2NyaXB0VGltZWxpbmVSZWNvcmQgZGV0YWlscyBzaG91bGQgYmUg
dGhlIHJlcXVlc3RBbmltYXRpb25GcmFtZSBpZGVudGlmaWVyLiIpOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0pLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKyAgICAgICAgfQorICAg
IH0pOworCisgICAgc3VpdGUucnVuVGVzdENhc2VzQW5kRmluaXNoKCk7Cit9Cis8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKzxwPlRlc3RzICdSZXF1ZXN0QW5p
bWF0aW9uRnJhbWUnIFRpbWVsaW5lIGV2ZW50IHJlY29yZHMuPC9wPgorPC9ib2R5PgorPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLWV2
ZW50LVRpbWVyRmlyZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxp
bmUvdGltZWxpbmUtZXZlbnQtVGltZXJGaXJlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZTQ3MjBhOGMwYTcKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtVGltZXJGaXJlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDI5IEBACitUZXN0cyAnVGltZXJGaXJlJyBUaW1lbGluZSBl
dmVudCByZWNvcmRzLgorCisKKz09IFJ1bm5pbmcgdGVzdCBzdWl0ZTogVGltZWxpbmVFdmVudC5U
aW1lckZpcmUKKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBUaW1lbGluZUV2ZW50LlRpbWVyRmlyZS5z
ZXRUaW1lb3V0CitTdGFydGluZyBDYXB0dXJlLi4uCitzZXRUaW1lb3V0IGZpcmVkCitTdG9wcGlu
ZyBDYXB0dXJlLi4uCitQQVNTOiBTaG91bGQgYmUgMSBUaW1lckZpcmVkIHJlY29yZC4KK0RFVEFJ
TFM6IG51bWJlcgorUEFTUzogU2NyaXB0VGltZWxpbmVSZWNvcmQgZGV0YWlscyBzaG91bGQgYmUg
dGhlIHNldFRpbWVvdXQgaWRlbnRpZmllci4KKworLS0gUnVubmluZyB0ZXN0IGNhc2U6IFRpbWVs
aW5lRXZlbnQuVGltZXJGaXJlLnNldEludGVydmFsCitTdGFydGluZyBDYXB0dXJlLi4uCitzZXRJ
bnRlcnZhbCBmaXJlZDogMQorc2V0SW50ZXJ2YWwgZmlyZWQ6IDIKK3NldEludGVydmFsIGZpcmVk
OiAzCitTdG9wcGluZyBDYXB0dXJlLi4uCitQQVNTOiBTaG91bGQgYmUgMyBUaW1lckZpcmVkIHJl
Y29yZHMuCitERVRBSUxTOiBudW1iZXIKK1BBU1M6IFNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFp
bHMgc2hvdWxkIGJlIHRoZSBzZXRJbnRlcnZhbCBpZGVudGlmaWVyLgorREVUQUlMUzogbnVtYmVy
CitQQVNTOiBTY3JpcHRUaW1lbGluZVJlY29yZCBkZXRhaWxzIHNob3VsZCBiZSB0aGUgc2V0SW50
ZXJ2YWwgaWRlbnRpZmllci4KK0RFVEFJTFM6IG51bWJlcgorUEFTUzogU2NyaXB0VGltZWxpbmVS
ZWNvcmQgZGV0YWlscyBzaG91bGQgYmUgdGhlIHNldEludGVydmFsIGlkZW50aWZpZXIuCisKKy0t
IFJ1bm5pbmcgdGVzdCBjYXNlOiBTYW5pdHlDaGVjaworUEFTUzogVGhlIHNldFRpbWVvdXQgaWRl
bnRpZmllciBhbmQgc2V0SW50ZXJ2YWwgaWRlbnRpZmllcnMgc2hvdWxkIGJlIGRpZmZlcmVudC4K
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLWV2
ZW50LVRpbWVyRmlyZS5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVs
aW5lLWV2ZW50LVRpbWVyRmlyZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwLi44OTcwZGU2OTRjZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1UaW1lckZpcmUuaHRtbApAQCAtMCwwICsxLDg2
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
aHR0cC90ZXN0cy9pbnNwZWN0b3IvcmVzb3VyY2VzL2luc3BlY3Rvci10ZXN0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuL3Jlc291cmNlcy90aW1lbGluZS1ldmVudC11dGlsaXRpZXMuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdD4KK2Z1bmN0aW9uIHRlc3RTZXRUaW1lb3V0KCkgeworICAgIGxl
dCBzZXRUaW1lb3V0SWRlbnRpZmllciA9IHNldFRpbWVvdXQoKCkgPT4geworICAgICAgICBUZXN0
UGFnZS5hZGRSZXN1bHQoInNldFRpbWVvdXQgZmlyZWQiKTsKKyAgICAgICAgZmluaXNoUmVjb3Jk
aW5nKHtzZXRUaW1lb3V0SWRlbnRpZmllcn0pOworICAgIH0pOworfQorCitmdW5jdGlvbiB0ZXN0
U2V0SW50ZXJ2YWwoKSB7CisgICAgbGV0IGNvdW50ID0gMDsKKyAgICBsZXQgc2V0SW50ZXJ2YWxJ
ZGVudGlmaWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4geworICAgICAgICBjb3VudCsrOworICAgICAg
ICBUZXN0UGFnZS5hZGRSZXN1bHQoInNldEludGVydmFsIGZpcmVkOiAiICsgY291bnQpOworICAg
ICAgICBpZiAoY291bnQgPT09IDMpIHsKKyAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoc2V0SW50
ZXJ2YWxJZGVudGlmaWVyKTsKKyAgICAgICAgICAgIGZpbmlzaFJlY29yZGluZyh7c2V0SW50ZXJ2
YWxJZGVudGlmaWVyfSk7CisgICAgICAgIH0KKyAgICB9KTsKK30KKworZnVuY3Rpb24gdGVzdCgp
Cit7CisgICAgbGV0IHN1aXRlID0gSW5zcGVjdG9yVGVzdC5jcmVhdGVBc3luY1N1aXRlKCJUaW1l
bGluZUV2ZW50LlRpbWVyRmlyZSIpOworCisgICAgbGV0IHRpbWVvdXRJZGVudGlmaWVyOworICAg
IGxldCBpbnRlcnZhbElkZW50aWZpZXI7CisKKyAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CisgICAg
ICAgIG5hbWU6ICJUaW1lbGluZUV2ZW50LlRpbWVyRmlyZS5zZXRUaW1lb3V0IiwKKyAgICAgICAg
dGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIGNhcHR1cmVUaW1lbGluZVdpdGhT
Y3JpcHQoYHRlc3RTZXRUaW1lb3V0KClgKS50aGVuKCgpID0+IHsKKyAgICAgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmFzc2VydCh0eXBlb2YgcGFnZVJlY29yZGluZ0RhdGEuc2V0VGltZW91dElk
ZW50aWZpZXIgPT09ICJudW1iZXIiKTsKKyAgICAgICAgICAgICAgICB0aW1lb3V0SWRlbnRpZmll
ciA9IHBhZ2VSZWNvcmRpbmdEYXRhLnNldFRpbWVvdXRJZGVudGlmaWVyOworCisgICAgICAgICAg
ICAgICAgbGV0IHJlY29yZGluZyA9IFdJLnRpbWVsaW5lTWFuYWdlci5hY3RpdmVSZWNvcmRpbmc7
CisgICAgICAgICAgICAgICAgbGV0IHNjcmlwdFRpbWVsaW5lID0gcmVjb3JkaW5nLnRpbWVsaW5l
cy5nZXQoV0kuVGltZWxpbmVSZWNvcmQuVHlwZS5TY3JpcHQpOworICAgICAgICAgICAgICAgIGxl
dCByZWNvcmRzID0gc2NyaXB0VGltZWxpbmUucmVjb3Jkcy5maWx0ZXIoKHgpID0+IHguZXZlbnRU
eXBlID09PSBXSS5TY3JpcHRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuVGltZXJGaXJlZCk7Cisg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RFcXVhbChyZWNvcmRzLmxlbmd0aCwg
MSwgIlNob3VsZCBiZSAxIFRpbWVyRmlyZWQgcmVjb3JkLiIpOworICAgICAgICAgICAgICAgIGZv
ciAobGV0IHJlY29yZCBvZiByZWNvcmRzKSB7CisgICAgICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QubG9nKCJERVRBSUxTOiAiICsgdHlwZW9mIHJlY29yZC5kZXRhaWxzKTsKKyAgICAgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RFcXVhbChyZWNvcmQuZGV0YWlscywgdGlt
ZW91dElkZW50aWZpZXIsICJTY3JpcHRUaW1lbGluZVJlY29yZCBkZXRhaWxzIHNob3VsZCBiZSB0
aGUgc2V0VGltZW91dCBpZGVudGlmaWVyLiIpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0pLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKyAgICAgICAgfQorICAgIH0pOworCisgICAg
c3VpdGUuYWRkVGVzdENhc2UoeworICAgICAgICBuYW1lOiAiVGltZWxpbmVFdmVudC5UaW1lckZp
cmUuc2V0SW50ZXJ2YWwiLAorICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAg
ICAgICAgY2FwdHVyZVRpbWVsaW5lV2l0aFNjcmlwdChgdGVzdFNldEludGVydmFsKClgKS50aGVu
KCgpID0+IHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydCh0eXBlb2YgcGFn
ZVJlY29yZGluZ0RhdGEuc2V0SW50ZXJ2YWxJZGVudGlmaWVyID09PSAibnVtYmVyIik7CisgICAg
ICAgICAgICAgICAgaW50ZXJ2YWxJZGVudGlmaWVyID0gcGFnZVJlY29yZGluZ0RhdGEuc2V0SW50
ZXJ2YWxJZGVudGlmaWVyOworCisgICAgICAgICAgICAgICAgbGV0IHJlY29yZGluZyA9IFdJLnRp
bWVsaW5lTWFuYWdlci5hY3RpdmVSZWNvcmRpbmc7CisgICAgICAgICAgICAgICAgbGV0IHNjcmlw
dFRpbWVsaW5lID0gcmVjb3JkaW5nLnRpbWVsaW5lcy5nZXQoV0kuVGltZWxpbmVSZWNvcmQuVHlw
ZS5TY3JpcHQpOworICAgICAgICAgICAgICAgIGxldCByZWNvcmRzID0gc2NyaXB0VGltZWxpbmUu
cmVjb3Jkcy5maWx0ZXIoKHgpID0+IHguZXZlbnRUeXBlID09PSBXSS5TY3JpcHRUaW1lbGluZVJl
Y29yZC5FdmVudFR5cGUuVGltZXJGaXJlZCk7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5leHBlY3RFcXVhbChyZWNvcmRzLmxlbmd0aCwgMywgIlNob3VsZCBiZSAzIFRpbWVyRmlyZWQg
cmVjb3Jkcy4iKTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCByZWNvcmQgb2YgcmVjb3Jkcykg
eworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmxvZygiREVUQUlMUzogIiArIHR5
cGVvZiByZWNvcmQuZGV0YWlscyk7CisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3Qu
ZXhwZWN0RXF1YWwocmVjb3JkLmRldGFpbHMsIHBhZ2VSZWNvcmRpbmdEYXRhLnNldEludGVydmFs
SWRlbnRpZmllciwgIlNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxkIGJlIHRoZSBz
ZXRJbnRlcnZhbCBpZGVudGlmaWVyLiIpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IH0pLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKyAgICAgICAgfQorICAgIH0pOworCisgICAgc3Vp
dGUuYWRkVGVzdENhc2UoeworICAgICAgICBuYW1lOiAiU2FuaXR5Q2hlY2siLAorICAgICAgICB0
ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RU
aGF0KHRpbWVvdXRJZGVudGlmaWVyICE9PSBpbnRlcnZhbElkZW50aWZpZXIsICJUaGUgc2V0VGlt
ZW91dCBpZGVudGlmaWVyIGFuZCBzZXRJbnRlcnZhbCBpZGVudGlmaWVycyBzaG91bGQgYmUgZGlm
ZmVyZW50LiIpOworICAgICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICB9CisgICAgfSk7CisK
KyAgICBzdWl0ZS5ydW5UZXN0Q2FzZXNBbmRGaW5pc2goKTsKK30KKzwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPHA+VGVzdHMgJ1RpbWVyRmlyZScgVGltZWxp
bmUgZXZlbnQgcmVjb3Jkcy48L3A+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtVGltZXJJbnN0YWxsLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVu
dC1UaW1lckluc3RhbGwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwLi5kZGEzOWNlZDllMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1UaW1lckluc3RhbGwtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMjUgQEAKK1Rlc3RzICdUaW1lckluc3RhbGwnIFRpbWVsaW5lIGV2ZW50IHJl
Y29yZHMuCisKKworPT0gUnVubmluZyB0ZXN0IHN1aXRlOiBUaW1lbGluZUV2ZW50LlRpbWVySW5z
dGFsbAorLS0gUnVubmluZyB0ZXN0IGNhc2U6IFRpbWVsaW5lRXZlbnQuVGltZXJJbnN0YWxsLnNl
dFRpbWVvdXQKK1N0YXJ0aW5nIENhcHR1cmUuLi4KK3NldFRpbWVvdXQgZmlyZWQKK1N0b3BwaW5n
IENhcHR1cmUuLi4KK1BBU1M6IFNob3VsZCBiZSAxIFRpbWVySW5zdGFsbGVkIHJlY29yZC4KK0RF
VEFJTFM6IHsidGltZXJJZCI6IjxmaWx0ZXJlZD4iLCJ0aW1lb3V0IjoxMCwicmVwZWF0aW5nIjpm
YWxzZX0KK1BBU1M6IFNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxkIGJlIHRoZSBz
ZXRUaW1lb3V0IGlkZW50aWZpZXIuCisKKy0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBUaW1lbGluZUV2
ZW50LlRpbWVySW5zdGFsbC5zZXRJbnRlcnZhbAorU3RhcnRpbmcgQ2FwdHVyZS4uLgorc2V0SW50
ZXJ2YWwgZmlyZWQ6IDEKK3NldEludGVydmFsIGZpcmVkOiAyCitzZXRJbnRlcnZhbCBmaXJlZDog
MworU3RvcHBpbmcgQ2FwdHVyZS4uLgorUEFTUzogU2hvdWxkIGJlIDEgVGltZXJJbnN0YWxsZWQg
cmVjb3JkLgorREVUQUlMUzogeyJ0aW1lcklkIjoiPGZpbHRlcmVkPiIsInRpbWVvdXQiOjUsInJl
cGVhdGluZyI6dHJ1ZX0KK1BBU1M6IFNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxk
IGJlIHRoZSBzZXRJbnRlcnZhbCBpZGVudGlmaWVyLgorCistLSBSdW5uaW5nIHRlc3QgY2FzZTog
U2FuaXR5Q2hlY2sKK1BBU1M6IFRoZSBzZXRUaW1lb3V0IGlkZW50aWZpZXIgYW5kIHNldEludGVy
dmFsIGlkZW50aWZpZXJzIHNob3VsZCBiZSBkaWZmZXJlbnQuCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1UaW1lckluc3RhbGwuaHRt
bCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1UaW1lcklu
c3RhbGwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNGNiMmMy
MzNiN2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUv
dGltZWxpbmUtZXZlbnQtVGltZXJJbnN0YWxsLmh0bWwKQEAgLTAsMCArMSw5MiBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMv
aW5zcGVjdG9yL3Jlc291cmNlcy9pbnNwZWN0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi9yZXNvdXJjZXMvdGltZWxpbmUtZXZlbnQtdXRpbGl0aWVzLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQ+CitmdW5jdGlvbiB0ZXN0U2V0VGltZW91dCgpIHsKKyAgICBsZXQgc2V0VGltZW91
dElkZW50aWZpZXIgPSBzZXRUaW1lb3V0KCgpID0+IHsKKyAgICAgICAgVGVzdFBhZ2UuYWRkUmVz
dWx0KCJzZXRUaW1lb3V0IGZpcmVkIik7CisgICAgICAgIGZpbmlzaFJlY29yZGluZyh7c2V0VGlt
ZW91dElkZW50aWZpZXJ9KTsKKyAgICB9LCAxMCk7Cit9CisKK2Z1bmN0aW9uIHRlc3RTZXRJbnRl
cnZhbCgpIHsKKyAgICBsZXQgY291bnQgPSAwOworICAgIGxldCBzZXRJbnRlcnZhbElkZW50aWZp
ZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7CisgICAgICAgIGNvdW50Kys7CisgICAgICAgIFRlc3RQ
YWdlLmFkZFJlc3VsdCgic2V0SW50ZXJ2YWwgZmlyZWQ6ICIgKyBjb3VudCk7CisgICAgICAgIGlm
IChjb3VudCA9PT0gMykgeworICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChzZXRJbnRlcnZhbElk
ZW50aWZpZXIpOworICAgICAgICAgICAgZmluaXNoUmVjb3JkaW5nKHtzZXRJbnRlcnZhbElkZW50
aWZpZXJ9KTsKKyAgICAgICAgfQorICAgIH0sIDUpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sK
KyAgICBsZXQgc3VpdGUgPSBJbnNwZWN0b3JUZXN0LmNyZWF0ZUFzeW5jU3VpdGUoIlRpbWVsaW5l
RXZlbnQuVGltZXJJbnN0YWxsIik7CisKKyAgICBsZXQgdGltZW91dElkZW50aWZpZXI7CisgICAg
bGV0IGludGVydmFsSWRlbnRpZmllcjsKKworICAgIGZ1bmN0aW9uIGpzb25GaWx0ZXIoa2V5LCB2
YWx1ZSkgeworICAgICAgICBpZiAoa2V5ID09PSAidGltZXJJZCIpCisgICAgICAgICAgICByZXR1
cm4gIjxmaWx0ZXJlZD4iOworICAgICAgICByZXR1cm4gdmFsdWU7CisgICAgfQorCisgICAgc3Vp
dGUuYWRkVGVzdENhc2UoeworICAgICAgICBuYW1lOiAiVGltZWxpbmVFdmVudC5UaW1lckluc3Rh
bGwuc2V0VGltZW91dCIsCisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAg
ICAgICBjYXB0dXJlVGltZWxpbmVXaXRoU2NyaXB0KGB0ZXN0U2V0VGltZW91dCgpYCkudGhlbigo
KSA9PiB7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnQodHlwZW9mIHBhZ2VS
ZWNvcmRpbmdEYXRhLnNldFRpbWVvdXRJZGVudGlmaWVyID09PSAibnVtYmVyIik7CisgICAgICAg
ICAgICAgICAgdGltZW91dElkZW50aWZpZXIgPSBwYWdlUmVjb3JkaW5nRGF0YS5zZXRUaW1lb3V0
SWRlbnRpZmllcjsKKworICAgICAgICAgICAgICAgIGxldCByZWNvcmRpbmcgPSBXSS50aW1lbGlu
ZU1hbmFnZXIuYWN0aXZlUmVjb3JkaW5nOworICAgICAgICAgICAgICAgIGxldCBzY3JpcHRUaW1l
bGluZSA9IHJlY29yZGluZy50aW1lbGluZXMuZ2V0KFdJLlRpbWVsaW5lUmVjb3JkLlR5cGUuU2Ny
aXB0KTsKKyAgICAgICAgICAgICAgICBsZXQgcmVjb3JkcyA9IHNjcmlwdFRpbWVsaW5lLnJlY29y
ZHMuZmlsdGVyKCh4KSA9PiB4LmV2ZW50VHlwZSA9PT0gV0kuU2NyaXB0VGltZWxpbmVSZWNvcmQu
RXZlbnRUeXBlLlRpbWVySW5zdGFsbGVkKTsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0
LmV4cGVjdEVxdWFsKHJlY29yZHMubGVuZ3RoLCAxLCAiU2hvdWxkIGJlIDEgVGltZXJJbnN0YWxs
ZWQgcmVjb3JkLiIpOworICAgICAgICAgICAgICAgIGZvciAobGV0IHJlY29yZCBvZiByZWNvcmRz
KSB7CisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKCJERVRBSUxTOiAiICsg
SlNPTi5zdHJpbmdpZnkocmVjb3JkLmRldGFpbHMsIGpzb25GaWx0ZXIpKTsKKyAgICAgICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RFcXVhbChyZWNvcmQuZGV0YWlscy50aW1lcklk
LCB0aW1lb3V0SWRlbnRpZmllciwgIlNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxk
IGJlIHRoZSBzZXRUaW1lb3V0IGlkZW50aWZpZXIuIik7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfSkudGhlbihyZXNvbHZlLCByZWplY3QpOworICAgICAgICB9CisgICAgfSk7CisK
KyAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CisgICAgICAgIG5hbWU6ICJUaW1lbGluZUV2ZW50LlRp
bWVySW5zdGFsbC5zZXRJbnRlcnZhbCIsCisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7
CisgICAgICAgICAgICBjYXB0dXJlVGltZWxpbmVXaXRoU2NyaXB0KGB0ZXN0U2V0SW50ZXJ2YWwo
KWApLnRoZW4oKCkgPT4geworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KHR5
cGVvZiBwYWdlUmVjb3JkaW5nRGF0YS5zZXRJbnRlcnZhbElkZW50aWZpZXIgPT09ICJudW1iZXIi
KTsKKyAgICAgICAgICAgICAgICBpbnRlcnZhbElkZW50aWZpZXIgPSBwYWdlUmVjb3JkaW5nRGF0
YS5zZXRJbnRlcnZhbElkZW50aWZpZXI7CisKKyAgICAgICAgICAgICAgICBsZXQgcmVjb3JkaW5n
ID0gV0kudGltZWxpbmVNYW5hZ2VyLmFjdGl2ZVJlY29yZGluZzsKKyAgICAgICAgICAgICAgICBs
ZXQgc2NyaXB0VGltZWxpbmUgPSByZWNvcmRpbmcudGltZWxpbmVzLmdldChXSS5UaW1lbGluZVJl
Y29yZC5UeXBlLlNjcmlwdCk7CisgICAgICAgICAgICAgICAgbGV0IHJlY29yZHMgPSBzY3JpcHRU
aW1lbGluZS5yZWNvcmRzLmZpbHRlcigoeCkgPT4geC5ldmVudFR5cGUgPT09IFdJLlNjcmlwdFRp
bWVsaW5lUmVjb3JkLkV2ZW50VHlwZS5UaW1lckluc3RhbGxlZCk7CisgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5leHBlY3RFcXVhbChyZWNvcmRzLmxlbmd0aCwgMSwgIlNob3VsZCBiZSAx
IFRpbWVySW5zdGFsbGVkIHJlY29yZC4iKTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCByZWNv
cmQgb2YgcmVjb3JkcykgeworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmxvZygi
REVUQUlMUzogIiArIEpTT04uc3RyaW5naWZ5KHJlY29yZC5kZXRhaWxzLCBqc29uRmlsdGVyKSk7
CisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0RXF1YWwocmVjb3JkLmRl
dGFpbHMudGltZXJJZCwgcGFnZVJlY29yZGluZ0RhdGEuc2V0SW50ZXJ2YWxJZGVudGlmaWVyLCAi
U2NyaXB0VGltZWxpbmVSZWNvcmQgZGV0YWlscyBzaG91bGQgYmUgdGhlIHNldEludGVydmFsIGlk
ZW50aWZpZXIuIik7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSkudGhlbihyZXNv
bHZlLCByZWplY3QpOworICAgICAgICB9CisgICAgfSk7CisKKyAgICBzdWl0ZS5hZGRUZXN0Q2Fz
ZSh7CisgICAgICAgIG5hbWU6ICJTYW5pdHlDaGVjayIsCisgICAgICAgIHRlc3QocmVzb2x2ZSwg
cmVqZWN0KSB7CisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQodGltZW91dElk
ZW50aWZpZXIgIT09IGludGVydmFsSWRlbnRpZmllciwgIlRoZSBzZXRUaW1lb3V0IGlkZW50aWZp
ZXIgYW5kIHNldEludGVydmFsIGlkZW50aWZpZXJzIHNob3VsZCBiZSBkaWZmZXJlbnQuIik7Cisg
ICAgICAgICAgICByZXNvbHZlKCk7CisgICAgICAgIH0KKyAgICB9KTsKKworICAgIHN1aXRlLnJ1
blRlc3RDYXNlc0FuZEZpbmlzaCgpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxv
YWQ9InJ1blRlc3QoKSI+Cis8cD5UZXN0cyAnVGltZXJJbnN0YWxsJyBUaW1lbGluZSBldmVudCBy
ZWNvcmRzLjwvcD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1ldmVudC1UaW1lclJlbW92ZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZXZlbnQtVGltZXJSZW1v
dmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi40
MzE0MzdiNWMxYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1l
bGluZS90aW1lbGluZS1ldmVudC1UaW1lclJlbW92ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwy
NCBAQAorVGVzdHMgJ1RpbWVyUmVtb3ZlJyBUaW1lbGluZSBldmVudCByZWNvcmRzLgorCisKKz09
IFJ1bm5pbmcgdGVzdCBzdWl0ZTogVGltZWxpbmVFdmVudC5UaW1lclJlbW92ZQorLS0gUnVubmlu
ZyB0ZXN0IGNhc2U6IFRpbWVsaW5lRXZlbnQuVGltZXJSZW1vdmUuc2V0VGltZW91dAorU3RhcnRp
bmcgQ2FwdHVyZS4uLgorU3RvcHBpbmcgQ2FwdHVyZS4uLgorUEFTUzogU2hvdWxkIGJlIDEgVGlt
ZXJSZW1vdmVkIHJlY29yZC4KK0RFVEFJTFM6IG51bWJlcgorUEFTUzogU2NyaXB0VGltZWxpbmVS
ZWNvcmQgZGV0YWlscyBzaG91bGQgYmUgdGhlIHNldFRpbWVvdXQgaWRlbnRpZmllci4KKworLS0g
UnVubmluZyB0ZXN0IGNhc2U6IFRpbWVsaW5lRXZlbnQuVGltZXJSZW1vdmUuc2V0SW50ZXJ2YWwK
K1N0YXJ0aW5nIENhcHR1cmUuLi4KK3NldEludGVydmFsIGZpcmVkOiAxCitzZXRJbnRlcnZhbCBm
aXJlZDogMgorc2V0SW50ZXJ2YWwgZmlyZWQ6IDMKK1N0b3BwaW5nIENhcHR1cmUuLi4KK1BBU1M6
IFNob3VsZCBiZSAxIFRpbWVyUmVtb3ZlZCByZWNvcmQuCitERVRBSUxTOiBudW1iZXIKK1BBU1M6
IFNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxkIGJlIHRoZSBzZXRJbnRlcnZhbCBp
ZGVudGlmaWVyLgorCistLSBSdW5uaW5nIHRlc3QgY2FzZTogU2FuaXR5Q2hlY2sKK1BBU1M6IFRo
ZSBzZXRUaW1lb3V0IGlkZW50aWZpZXIgYW5kIHNldEludGVydmFsIGlkZW50aWZpZXJzIHNob3Vs
ZCBiZSBkaWZmZXJlbnQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci90aW1l
bGluZS90aW1lbGluZS1ldmVudC1UaW1lclJlbW92ZS5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL3RpbWVsaW5lL3RpbWVsaW5lLWV2ZW50LVRpbWVyUmVtb3ZlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjFjYmRlNmZjMWIzCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLWV2ZW50LVRpbWVyUmVt
b3ZlLmh0bWwKQEAgLTAsMCArMSw4NSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3Jlc291cmNlcy9pbnNw
ZWN0b3ItdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvdGltZWxp
bmUtZXZlbnQtdXRpbGl0aWVzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitmdW5jdGlvbiB0ZXN0
U2V0VGltZW91dCgpIHsKKyAgICBsZXQgc2V0VGltZW91dElkZW50aWZpZXIgPSBzZXRUaW1lb3V0
KCgpID0+IHsgVGVzdFBhZ2UuYWRkUmVzdWx0KCJGQUlMOiBzZXRUaW1lb3V0IGZpcmVkIik7IH0p
OworICAgIGNsZWFyVGltZW91dChzZXRUaW1lb3V0SWRlbnRpZmllcik7CisgICAgcmVxdWVzdEFu
aW1hdGlvbkZyYW1lKCgpID0+IHsgZmluaXNoUmVjb3JkaW5nKHtzZXRUaW1lb3V0SWRlbnRpZmll
cn0pOyB9KTsgLy8gRGVsYXkgYSBiaXQgdG8gZW5zdXJlIHdlIGdldCB0aGUgY2xlYXIgdGltZW91
dC4KK30KKworZnVuY3Rpb24gdGVzdFNldEludGVydmFsKCkgeworICAgIGxldCBjb3VudCA9IDA7
CisgICAgbGV0IHNldEludGVydmFsSWRlbnRpZmllciA9IHNldEludGVydmFsKCgpID0+IHsKKyAg
ICAgICAgY291bnQrKzsKKyAgICAgICAgVGVzdFBhZ2UuYWRkUmVzdWx0KCJzZXRJbnRlcnZhbCBm
aXJlZDogIiArIGNvdW50KTsKKyAgICAgICAgaWYgKGNvdW50ID09PSAzKSB7CisgICAgICAgICAg
ICBjbGVhckludGVydmFsKHNldEludGVydmFsSWRlbnRpZmllcik7CisgICAgICAgICAgICByZXF1
ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4geyBmaW5pc2hSZWNvcmRpbmcoe3NldEludGVydmFsSWRl
bnRpZmllcn0pOyB9KTsgLy8gRGVsYXkgYSBiaXQgdG8gZW5zdXJlIHdlIGdldCB0aGUgY2xlYXIg
dGltZW91dC4KKyAgICAgICAgfQorICAgIH0pOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAg
ICBsZXQgc3VpdGUgPSBJbnNwZWN0b3JUZXN0LmNyZWF0ZUFzeW5jU3VpdGUoIlRpbWVsaW5lRXZl
bnQuVGltZXJSZW1vdmUiKTsKKworICAgIGxldCB0aW1lb3V0SWRlbnRpZmllcjsKKyAgICBsZXQg
aW50ZXJ2YWxJZGVudGlmaWVyOworCisgICAgc3VpdGUuYWRkVGVzdENhc2UoeworICAgICAgICBu
YW1lOiAiVGltZWxpbmVFdmVudC5UaW1lclJlbW92ZS5zZXRUaW1lb3V0IiwKKyAgICAgICAgdGVz
dChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIGNhcHR1cmVUaW1lbGluZVdpdGhTY3Jp
cHQoYHRlc3RTZXRUaW1lb3V0KClgKS50aGVuKCgpID0+IHsKKyAgICAgICAgICAgICAgICBJbnNw
ZWN0b3JUZXN0LmFzc2VydCh0eXBlb2YgcGFnZVJlY29yZGluZ0RhdGEuc2V0VGltZW91dElkZW50
aWZpZXIgPT09ICJudW1iZXIiKTsKKyAgICAgICAgICAgICAgICB0aW1lb3V0SWRlbnRpZmllciA9
IHBhZ2VSZWNvcmRpbmdEYXRhLnNldFRpbWVvdXRJZGVudGlmaWVyOworCisgICAgICAgICAgICAg
ICAgbGV0IHJlY29yZGluZyA9IFdJLnRpbWVsaW5lTWFuYWdlci5hY3RpdmVSZWNvcmRpbmc7Cisg
ICAgICAgICAgICAgICAgbGV0IHNjcmlwdFRpbWVsaW5lID0gcmVjb3JkaW5nLnRpbWVsaW5lcy5n
ZXQoV0kuVGltZWxpbmVSZWNvcmQuVHlwZS5TY3JpcHQpOworICAgICAgICAgICAgICAgIGxldCBy
ZWNvcmRzID0gc2NyaXB0VGltZWxpbmUucmVjb3Jkcy5maWx0ZXIoKHgpID0+IHguZXZlbnRUeXBl
ID09PSBXSS5TY3JpcHRUaW1lbGluZVJlY29yZC5FdmVudFR5cGUuVGltZXJSZW1vdmVkKTsKKyAg
ICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdEVxdWFsKHJlY29yZHMubGVuZ3RoLCAx
LCAiU2hvdWxkIGJlIDEgVGltZXJSZW1vdmVkIHJlY29yZC4iKTsKKyAgICAgICAgICAgICAgICBm
b3IgKGxldCByZWNvcmQgb2YgcmVjb3JkcykgeworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmxvZygiREVUQUlMUzogIiArIHR5cGVvZiByZWNvcmQuZGV0YWlscyk7CisgICAgICAg
ICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0RXF1YWwocmVjb3JkLmRldGFpbHMsIHRp
bWVvdXRJZGVudGlmaWVyLCAiU2NyaXB0VGltZWxpbmVSZWNvcmQgZGV0YWlscyBzaG91bGQgYmUg
dGhlIHNldFRpbWVvdXQgaWRlbnRpZmllci4iKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9KS50aGVuKHJlc29sdmUsIHJlamVjdCk7CisgICAgICAgIH0KKyAgICB9KTsKKworICAg
IHN1aXRlLmFkZFRlc3RDYXNlKHsKKyAgICAgICAgbmFtZTogIlRpbWVsaW5lRXZlbnQuVGltZXJS
ZW1vdmUuc2V0SW50ZXJ2YWwiLAorICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAg
ICAgICAgICAgY2FwdHVyZVRpbWVsaW5lV2l0aFNjcmlwdChgdGVzdFNldEludGVydmFsKClgKS50
aGVuKCgpID0+IHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydCh0eXBlb2Yg
cGFnZVJlY29yZGluZ0RhdGEuc2V0SW50ZXJ2YWxJZGVudGlmaWVyID09PSAibnVtYmVyIik7Cisg
ICAgICAgICAgICAgICAgaW50ZXJ2YWxJZGVudGlmaWVyID0gcGFnZVJlY29yZGluZ0RhdGEuc2V0
SW50ZXJ2YWxJZGVudGlmaWVyOworCisgICAgICAgICAgICAgICAgbGV0IHJlY29yZGluZyA9IFdJ
LnRpbWVsaW5lTWFuYWdlci5hY3RpdmVSZWNvcmRpbmc7CisgICAgICAgICAgICAgICAgbGV0IHNj
cmlwdFRpbWVsaW5lID0gcmVjb3JkaW5nLnRpbWVsaW5lcy5nZXQoV0kuVGltZWxpbmVSZWNvcmQu
VHlwZS5TY3JpcHQpOworICAgICAgICAgICAgICAgIGxldCByZWNvcmRzID0gc2NyaXB0VGltZWxp
bmUucmVjb3Jkcy5maWx0ZXIoKHgpID0+IHguZXZlbnRUeXBlID09PSBXSS5TY3JpcHRUaW1lbGlu
ZVJlY29yZC5FdmVudFR5cGUuVGltZXJSZW1vdmVkKTsKKyAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGVjdEVxdWFsKHJlY29yZHMubGVuZ3RoLCAxLCAiU2hvdWxkIGJlIDEgVGltZXJS
ZW1vdmVkIHJlY29yZC4iKTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCByZWNvcmQgb2YgcmVj
b3JkcykgeworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmxvZygiREVUQUlMUzog
IiArIHR5cGVvZiByZWNvcmQuZGV0YWlscyk7CisgICAgICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuZXhwZWN0RXF1YWwocmVjb3JkLmRldGFpbHMsIHBhZ2VSZWNvcmRpbmdEYXRhLnNldElu
dGVydmFsSWRlbnRpZmllciwgIlNjcmlwdFRpbWVsaW5lUmVjb3JkIGRldGFpbHMgc2hvdWxkIGJl
IHRoZSBzZXRJbnRlcnZhbCBpZGVudGlmaWVyLiIpOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIH0pLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKyAgICAgICAgfQorICAgIH0pOworCisg
ICAgc3VpdGUuYWRkVGVzdENhc2UoeworICAgICAgICBuYW1lOiAiU2FuaXR5Q2hlY2siLAorICAg
ICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5l
eHBlY3RUaGF0KHRpbWVvdXRJZGVudGlmaWVyICE9PSBpbnRlcnZhbElkZW50aWZpZXIsICJUaGUg
c2V0VGltZW91dCBpZGVudGlmaWVyIGFuZCBzZXRJbnRlcnZhbCBpZGVudGlmaWVycyBzaG91bGQg
YmUgZGlmZmVyZW50LiIpOworICAgICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICB9CisgICAg
fSk7CisKKyAgICBzdWl0ZS5ydW5UZXN0Q2FzZXNBbmRGaW5pc2goKTsKK30KKzwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPHA+VGVzdHMgJ1RpbWVyUmVtb3Zl
JyBUaW1lbGluZSBldmVudCByZWNvcmRzLjwvcD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>