<?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>158050</bug_id>
          
          <creation_ts>2016-05-24 19:27:05 -0700</creation_ts>
          <short_desc>[JSC] Allow JSBench to use precise time</short_desc>
          <delta_ts>2016-05-26 17:39:04 -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="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rniwa</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1196116</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-05-24 19:27:05 -0700</bug_when>
    <thetext>[JSC] Allow JSBench to use precise time</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196117</commentid>
    <comment_count>1</comment_count>
      <attachid>279736</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-05-24 19:58:02 -0700</bug_when>
    <thetext>Created attachment 279736
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196366</commentid>
    <comment_count>2</comment_count>
      <attachid>279736</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2016-05-25 09:46:27 -0700</bug_when>
    <thetext>Comment on attachment 279736
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=279736&amp;action=review

&gt; Tools/Scripts/run-jsc-benchmarks:1034
&gt; +      doublePuts($stderr,file,&quot;function currentTimeInMS(msg)&quot;)

Perhaps I missed it, but I don&apos;t see an implementation of currentTimeInMS outside the run-jsc-benchmarks script. We&apos;d like these tests to support running in DRT or Safari as well. Can you add an implementation of currentTimeInMS to harness.html? performance.now() is probably the best thing to use in the browser.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196690</commentid>
    <comment_count>3</comment_count>
      <attachid>279736</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-05-26 03:29:56 -0700</bug_when>
    <thetext>Comment on attachment 279736
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=279736&amp;action=review

&gt;&gt; Tools/Scripts/run-jsc-benchmarks:1034
&gt;&gt; +      doublePuts($stderr,file,&quot;function currentTimeInMS(msg)&quot;)
&gt; 
&gt; Perhaps I missed it, but I don&apos;t see an implementation of currentTimeInMS outside the run-jsc-benchmarks script. We&apos;d like these tests to support running in DRT or Safari as well. Can you add an implementation of currentTimeInMS to harness.html? performance.now() is probably the best thing to use in the browser.

Oh, thanks! I thought these tests are only used from run-jsc-benchmark.
I&apos;ve added currentTimeInMS implementaiton in JSBench/harness.js and each html files.
HTML files implementation is required when it is not executed under the harness.
If it is executed in JSBench&apos;s harness, harness.js&apos;s implementation is required.
And run-jsc-benchmark&apos;s implementation is required when it is executed with run-jsc-benchmark.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196691</commentid>
    <comment_count>4</comment_count>
      <attachid>279875</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-05-26 03:34:17 -0700</bug_when>
    <thetext>Created attachment 279875
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196821</commentid>
    <comment_count>5</comment_count>
      <attachid>279875</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2016-05-26 12:28:18 -0700</bug_when>
    <thetext>Comment on attachment 279875
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196931</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-05-26 17:39:04 -0700</bug_when>
    <thetext>Committed r201442: &lt;http://trac.webkit.org/changeset/201442&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>279736</attachid>
            <date>2016-05-24 19:58:02 -0700</date>
            <delta_ts>2016-05-26 03:34:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158050-20160525115909.patch</filename>
            <type>text/plain</type>
            <size>26663</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxMzcwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYjlhYjM1OTM0MDFkYjhmZGRiNDRlNTQ0YWYyMGIzNzcz
YWIxNTYxMS4uM2IxMzg0MmRjZWMyOWQzYzRjMzVkNDM4ZGFhYzQxOGVjODY1NjM3OSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDE2LTA1LTI0ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgor
CisgICAgICAgIFtKU0NdIEFsbG93IEpTQmVuY2ggdG8gdXNlIHByZWNpc2UgdGltZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MDUwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSlNCZW5jaCB1c2UgYG5l
dyBEYXRlKCkuZ2V0VGltZSgpYCB3aXRob3V0IG9wdGlvbnMgYW5kIHRoZXJlIGlzIG5vIHdheSB0
byB1c2UgcHJlY2lzZSB0aW1lLgorICAgICAgICBUaGlzIHBhdGNoIG1vZGlmaWVzIHRoZSBKU0Jl
bmNoIGNvZGUgdG8gaW5qZWN0IHRoZSBjb2RlIHRha2luZyB0aGUgcHJlY2lzZSB0aW1lLgorICAg
ICAgICBgY3VycmVudFRpbWVJbk1TYCBpcyBnaXZlbiBieSB0aGUgYmVuY2htZXJrIGhhcm5lc3Mg
YW5kIEpTQmVuY2ggdXNlcyBpdC4KKyAgICAgICAgcnVuLWpzYy1iZW5jaG1hcmsgc3dpdGNoZXMg
dGhpcyBmdW5jdGlvbidzIGltcGxlbWVudGF0aW9uIGJldHdlZW4gYERhdGUubm93KClgIGFuZAor
ICAgICAgICB0ZXN0UnVubmVyJ3MgcHJlY2lzZSB0aW1lIG9uZS4KKworICAgICAgICBXaGlsZSB0
aGlzIHBhdGNoIG1vZGlmaWVzIHRoZSBjb2RlIG9mIEpTQmVuY2gsIHRoZSBsYXN0IHJlbGVhc2Ug
b2YgSlNCZW5jaCBpcyBKYW4gMjAxMyBhbmQKKyAgICAgICAgdGhlIGNvbnRlbnRzIGFyZSBub3Qg
Y2hhbmdlZCBmb3IgYSBsb25nIHRpbWUuIEFzIGRlc2NyaWJlZCBpbiB0aGUgb3JpZ2luYWwgcGFw
ZXJbMV0sIHRoZQorICAgICAgICB0ZXN0cyBjYW4gYmUgZ2VuZXJhdGVkIGJ5IHVzaW5nIEpTQmVu
Y2gncyByZWNvcmQgJiByZXBsYXkgc3lzdGVtLCBidXQgaW4gdGhhdCBjYXNlLCB3ZSBjYW4KKyAg
ICAgICAgYWRvcHQgdGhpcyBtb2RpZmljYXRpb24gYnkgY2hhbmdpbmcgdGhlIHRvb2wgc2lkZS4K
KworICAgICAgICBbMV06IGh0dHA6Ly9kbC5hY20ub3JnL2NpdGF0aW9uLmNmbT9pZD0yMDQ4MTE5
CisKKyAgICAgICAgKiBTY3JpcHRzL3J1bi1qc2MtYmVuY2htYXJrczoKKwogMjAxNi0wNS0yNCAg
QWFrYXNoIEphaW4gIDxhYWthc2hfamFpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVvcmdhbml6
ZSBkYXNoYm9hcmQgY29kZTogbW92ZSBjb2RlIGZyb20gX3RpbWVJbnRlcnZhbFN0cmluZyB0byBi
YXNlIGNsYXNzCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3J1bi1qc2MtYmVuY2htYXJrcyBi
L1Rvb2xzL1NjcmlwdHMvcnVuLWpzYy1iZW5jaG1hcmtzCmluZGV4IDAyMDQxY2Y2NTEzNDcxNmZj
YzFkYjNiNjliMjFjMDBiOTBlNDAzNTYuLmEwODAzZWQzM2ViMDFiN2FlY2FkN2VlMzZjZjY2MDQ3
YjI2NmZiMTAgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvcnVuLWpzYy1iZW5jaG1hcmtzCisr
KyBiL1Rvb2xzL1NjcmlwdHMvcnVuLWpzYy1iZW5jaG1hcmtzCkBAIC0xMDMwLDYgKzEwMzAsMTEg
QEAgZGVmIGVtaXRCZW5jaFJ1bkNvZGVGaWxlKG5hbWUsIHBsYW4sIGJlbmNoUGFyYW1zKQogICAg
ICAgZG91YmxlUHV0cygkc3RkZXJyLGZpbGUsImZ1bmN0aW9uIHJlcG9ydFJlc3VsdChyZXN1bHQp
IHsiKQogICAgICAgZG91YmxlUHV0cygkc3RkZXJyLGZpbGUsIiAgICBfX2JlbmNoZXJfY29udGlu
dWF0aW9uKHJlc3VsdCk7IikKICAgICAgIGRvdWJsZVB1dHMoJHN0ZGVycixmaWxlLCJ9IikKKyAg
ICAgIGRvdWJsZVB1dHMoJHN0ZGVycixmaWxlLCIiKQorICAgICAgZG91YmxlUHV0cygkc3RkZXJy
LGZpbGUsImZ1bmN0aW9uIGN1cnJlbnRUaW1lSW5NUyhtc2cpIikKKyAgICAgIGRvdWJsZVB1dHMo
JHN0ZGVycixmaWxlLCJ7IikKKyAgICAgIGRvdWJsZVB1dHMoJHN0ZGVycixmaWxlLCIgICAgcmV0
dXJuICN7Y3VyVGltZX07IikKKyAgICAgIGRvdWJsZVB1dHMoJHN0ZGVycixmaWxlLCJ9IikKICAg
ICAgIGlmIGJlbmNoUGFyYW1zLmtpbmQgPT0gOnNpbmdsZUZpbGVUaW1lZENhbGxiYWNrQmVuY2ht
YXJrCiAgICAgICAgIGRvdWJsZVB1dHMoJHN0ZGVycixmaWxlLCIiKQogICAgICAgICBkb3VibGVQ
dXRzKCRzdGRlcnIsZmlsZSxiZW5jaFBhcmFtcy5jYWxsYmFja0RlY2wpCmRpZmYgLS1naXQgYS9Q
ZXJmb3JtYW5jZVRlc3RzL0NoYW5nZUxvZyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDI1ZjA4YzNhMWYxMDBlNjI5ZGVkMDBjNjBlMjQzNzU5N2JlODQ3ZGYuLmIyMGQ4ZDZhZWI0
M2JlNTNiZmNiNmQwNWU2ODc2MDI5OWE1NzM3YzcgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVz
dHMvQ2hhbmdlTG9nCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
ODYgQEAKKzIwMTYtMDUtMjQgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+
CisKKyAgICAgICAgW0pTQ10gQWxsb3cgSlNCZW5jaCB0byB1c2UgcHJlY2lzZSB0aW1lCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgwNTAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEpTQmVuY2gvYW1h
em9uLWNocm9tZS13aW4vdXJlbS5qczoKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChv
bmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gvYW1hem9uLWNocm9tZS91cmVtLmpzOgorICAgICAg
ICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9hbWF6
b24tZmlyZWZveC13aW4vdXJtLmpzOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9u
bG9hZCk6CisgICAgICAgICogSlNCZW5jaC9hbWF6b24tZmlyZWZveC91cm0uanM6CisgICAgICAg
IChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL2FtYXpv
bi1zYWZhcmkvdXJlbS5qczoKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQp
OgorICAgICAgICAqIEpTQmVuY2gvZmFjZWJvb2stY2hyb21lLXdpbi91cmVtLmpzOgorICAgICAg
ICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9mYWNl
Ym9vay1jaHJvbWUvdXJlbS5qczoKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxv
YWQpOgorICAgICAgICAqIEpTQmVuY2gvZmFjZWJvb2stZmlyZWZveC13aW4vdXJlbS5qczoKKyAg
ICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gv
ZmFjZWJvb2stZmlyZWZveC91cmVtLmpzOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAg
KG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9mYWNlYm9vay1zYWZhcmkvdXJlbS5qczoKKyAg
ICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gv
Z29vZ2xlLWNocm9tZS13aW4vdXJlbS5qczoKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAg
IChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gvZ29vZ2xlLWNocm9tZS91cmVtLmpzOgorICAg
ICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9n
b29nbGUtZmlyZWZveC13aW4vdXJlbS5qczoKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAg
IChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gvZ29vZ2xlLWZpcmVmb3gvdWVtLmpzOgorICAg
ICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9n
b29nbGUtc2FmYXJpL3VyZW0uanM6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25s
b2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3R3aXR0ZXItY2hyb21lLXdpbi9yZW0uanM6CisgICAg
ICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3R3
aXR0ZXItY2hyb21lL3VyZW0uanM6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25s
b2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3R3aXR0ZXItZmlyZWZveC13aW4vdXJlbS5qczoKKyAg
ICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gv
dHdpdHRlci1maXJlZm94L3VyZW0uanM6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAo
b25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3R3aXR0ZXItc2FmYXJpL3VyZW0uanM6CisgICAg
ICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3lh
aG9vLWNocm9tZS13aW4vdXJlbS5qczoKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChv
bmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gveWFob28tY2hyb21lL3VyZW0uanM6CisgICAgICAg
IChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3lhaG9v
LWZpcmVmb3gtd2luL3VyZW0uanM6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25s
b2FkKToKKyAgICAgICAgKiBKU0JlbmNoL3lhaG9vLWZpcmVmb3gvdXJlbS5qczoKKyAgICAgICAg
KG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gveWFob28t
c2FmYXJpL3VyZW0uanM6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2FkKToK
KwogMjAxNi0wNS0xNyAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KICAg
ICAgICAgV2Ugc2hvdWxkIGhhdmUgSlNCZW5jaCBpbiBQZXJmb3JtYW5jZVRlc3RzCiAgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTc5NTIKZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tY2hyb21lLXdpbi91cmVtLmpzIGIv
UGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2FtYXpvbi1jaHJvbWUtd2luL3VyZW0uanMKaW5kZXgg
NTE1Y2U5ZTBjMDMzNmMwZjlmOWFmMGFjZWFlNDQ4YzkxZTQzNGVkNC4uZjBkMTcyYWE4MmYwMmI4
NjllNGMxMTQ5ZmIxMmUxZWQxOGMxZWEwZiAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9K
U0JlbmNoL2FtYXpvbi1jaHJvbWUtd2luL3VyZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9K
U0JlbmNoL2FtYXpvbi1jaHJvbWUtd2luL3VyZW0uanMKQEAgLTE5NCw3ICsxOTQsNyBAQCBmdW5j
dGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAg
ICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUo
KS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gd2luZG93LnBhcmVudC5jdXJyZW50
VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAg
dmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMjcsNyArMjI3LDcg
QEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8g
dGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAg
ICAgICB2YXIgc3QgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3
aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAg
ICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLWNocm9t
ZS91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2FtYXpvbi1jaHJvbWUvdXJlbS5q
cwppbmRleCBkYmM4ZDMxNmI0ZjNkODBlNDU3ZTZkZDA1NDVkYmJmYWMzYjlkYWJjLi4xYjQwYTA3
ZjRkM2M3NWQzMDlmZWM0NGI3NTk5YzgwZjA2NWNhMDdkIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5j
ZVRlc3RzL0pTQmVuY2gvYW1hem9uLWNocm9tZS91cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVz
dHMvSlNCZW5jaC9hbWF6b24tY2hyb21lL3VyZW0uanMKQEAgLTE5Nyw3ICsxOTcsNyBAQCBmdW5j
dGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAg
ICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUo
KS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gd2luZG93LnBhcmVudC5jdXJyZW50
VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAg
dmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMzAsNyArMjMwLDcg
QEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8g
dGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAg
ICAgICB2YXIgc3QgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3
aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAg
ICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLWZpcmVm
b3gtd2luL3VybS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tZmlyZWZveC13
aW4vdXJtLmpzCmluZGV4IDY3MzgxY2Y0Yjc2ODg1ZTZmNDIyZWQ0ZGE4MDEyOTM0ZGMxNDYzMWEu
Ljc2Mzk1MGVjYTA4ZmYwZDY0OWYzMTQwOWE0ZTRkODBkMWY1YWEwYTMgMTAwNjQ0Ci0tLSBhL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tZmlyZWZveC13aW4vdXJtLmpzCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tZmlyZWZveC13aW4vdXJtLmpzCkBAIC0xOTQs
NyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5H
X1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFy
IGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdpbmRv
dy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7
CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpA
QCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2Up
OwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgp
LmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUlu
TVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpy
KHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0Jl
bmNoL2FtYXpvbi1maXJlZm94L3VybS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6
b24tZmlyZWZveC91cm0uanMKaW5kZXggOTlmMjM0Y2RiZTgzYzliMzNmN2M2ZGIxNWE3NjUzMzZj
ZDRjNDExNy4uMGE1ODJjYTAwOTRmMmE5MTY3MjBmY2I1M2JjZjdhMWEwZTA5NTU3MSAxMDA2NDQK
LS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2FtYXpvbi1maXJlZm94L3VybS5qcworKysg
Yi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLWZpcmVmb3gvdXJtLmpzCkBAIC0xOTcs
NyArMTk3LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5H
X1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFy
IGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdpbmRv
dy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7
CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpA
QCAtMjMwLDcgKzIzMCw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2Up
OwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgp
LmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUlu
TVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpy
KHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0Jl
bmNoL2FtYXpvbi1zYWZhcmkvdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6
b24tc2FmYXJpL3VyZW0uanMKaW5kZXggYWY0ODRiYjM4N2UxODYyMjliNmZkZmVhZWM0NzllZTg5
ODlkYjU5NC4uZTcyNTBhZjRhNDk2MTE5MDNhNTA4NWY0N2RmNDY3YjA5MThlNmE1MSAxMDA2NDQK
LS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2FtYXpvbi1zYWZhcmkvdXJlbS5qcworKysg
Yi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLXNhZmFyaS91cmVtLmpzCkBAIC0xOTcs
NyArMTk3LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5H
X1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFy
IGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdpbmRv
dy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7
CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpA
QCAtMjMwLDcgKzIzMCw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2Up
OwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgp
LmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUlu
TVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpy
KHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0Jl
bmNoL2ZhY2Vib29rLWNocm9tZS13aW4vdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC9mYWNlYm9vay1jaHJvbWUtd2luL3VyZW0uanMKaW5kZXggMDljOWQyNjg4YThmYTMxY2VjNzlj
Mzc1MWQ0MzU4OGRkODI4NDEyMC4uYjMzMjYzNTg1ZTcxY2M3MjA5NjAxYzU3OWY1NWJmMjg1MDJj
ZGY3ZCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWNocm9t
ZS13aW4vdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZmFjZWJvb2stY2hy
b21lLXdpbi91cmVtLmpzCkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewog
CiAgICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0
aW9uKCkgewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAg
ICAgICAgICAgdmFyIGVuZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAg
ICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTog
IiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9h
ZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAg
ICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2lu
ZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxs
KSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0
IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWNocm9tZS91cmVtLmpzIGIvUGVy
Zm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWNocm9tZS91cmVtLmpzCmluZGV4IDA2ZDFm
MDEyNzQ4NmUyZGQ4MDExZDBhNTViNDM3YzhmODNhOGFjOTMuLjIyNTkyZDFmNTFiZmE5NTk1Zjg1
NTU0YmYxNDQ2OTFlMjdjNjdlYzQgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC9mYWNlYm9vay1jaHJvbWUvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gv
ZmFjZWJvb2stY2hyb21lL3VyZW0uanMKQEAgLTE5NCw3ICsxOTQsNyBAQCBmdW5jdGlvbiBvbmxv
YWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNi
ID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1l
KCk7CisgICAgICAgICAgICB2YXIgZW5kID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMo
KTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9
ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMjcsNyArMjI3LDcgQEAgZnVuY3Rp
b24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1l
IGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIg
c3QgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIg
IT09IG51bGwpIHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRp
ZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZmFjZWJvb2stZmlyZWZveC13aW4v
dXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1maXJlZm94LXdpbi91
cmVtLmpzCmluZGV4IDBlMWU3ODNlOWIwZmRhYjIyNjU5YTc4NWZhMDU0OWYzMGYzZGNlNWUuLjMx
YmY3YWVlMzhiNjEzMDNhY2QyNTIwODk5ZTI4M2MyNmJiOTM0NzYgMTAwNjQ0Ci0tLSBhL1BlcmZv
cm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1maXJlZm94LXdpbi91cmVtLmpzCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1maXJlZm94LXdpbi91cmVtLmpzCkBAIC0x
OTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpT
Qk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAg
dmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdp
bmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRy
dWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMi
OwpAQCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFs
c2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0
ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGlt
ZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9
IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9K
U0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gvdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC9mYWNlYm9vay1maXJlZm94L3VyZW0uanMKaW5kZXggZmFjZWI4YTI0NTRjMzE3ZTUwYTZlMzY5
OTc1MDAzNDhiYmQ2OWIxYS4uOGUyMjAwYTEwYjJmM2ZmMzNmZTU0MGMyMWI4MmFkYmY2OWEwNTlm
MCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gv
dXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZmFjZWJvb2stZmlyZWZveC91
cmVtLmpzCkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAg
IHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewot
ICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAg
dmFyIGVuZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBm
aW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQg
LSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAg
ICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIg
c3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVu
dC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAg
ICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9y
bWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLXNhZmFyaS91cmVtLmpzIGIvUGVyZm9ybWFuY2VU
ZXN0cy9KU0JlbmNoL2ZhY2Vib29rLXNhZmFyaS91cmVtLmpzCmluZGV4IGQ1NGVmZDlhOTU3MDIx
OGQ4NGU5MjE2YWNhMDY5ZWVmZjI1ODdjY2UuLmQwYWE4YTgzOTVjOGRmNzFlOTJmYmMxMmRiYmFl
NzZkYzIzNzAzYjcgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9v
ay1zYWZhcmkvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZmFjZWJvb2st
c2FmYXJpL3VyZW0uanMKQEAgLTE5NCw3ICsxOTQsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAK
ICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rp
b24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAg
ICAgICAgICB2YXIgZW5kID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAg
ICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAi
ICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMjcsNyArMjI3LDcgQEAgZnVuY3Rpb24gb25sb2Fk
KCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAg
ICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSB3aW5k
b3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwp
IHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQg
YS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29vZ2xlLWNocm9tZS13aW4vdXJlbS5qcyBiL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtY2hyb21lLXdpbi91cmVtLmpzCmluZGV4IGYz
NWZkN2Y3YWUzMGMxNGI0ZmIzODI2OWJkYzVmMTAxNzdmNWJhMGEuLmNkYjAxMzliNGI2NDk4OGU0
YzVkMDg5ZTM1OTVkMDQzYzg2NjRmNzggMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNC
ZW5jaC9nb29nbGUtY2hyb21lLXdpbi91cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNC
ZW5jaC9nb29nbGUtY2hyb21lLXdpbi91cmVtLmpzCkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rp
b24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAg
IHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCku
Z2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRp
bWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZh
ciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIyNyw3IEBA
IGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRo
ZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAg
ICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hp
bGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1jaHJvbWUv
dXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtY2hyb21lL3VyZW0uanMK
aW5kZXggOTlhY2Q5NTFiYzEzNmNjODM1MGI3OTQwNzlkMTQ5NzdlODJhNzM0OC4uNjVhZDY2NjA5
MDNkYjYyMzUyYTk3YzczODBjZjgxNTFiODMxN2M1YSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VU
ZXN0cy9KU0JlbmNoL2dvb2dsZS1jaHJvbWUvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3Rz
L0pTQmVuY2gvZ29vZ2xlLWNocm9tZS91cmVtLmpzCkBAIC0xOTcsNyArMTk3LDcgQEAgZnVuY3Rp
b24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAg
IHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCku
Z2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRp
bWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZh
ciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjMwLDcgKzIzMCw3IEBA
IGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRo
ZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAg
ICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hp
bGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1maXJlZm94
LXdpbi91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1maXJlZm94LXdp
bi91cmVtLmpzCmluZGV4IDgzYjUyYWY5MmRkNWNiYmM5YWZjMDhjMzJjMGIyOGViYWZlZTU1MjIu
LjU3MDBkYjUzYWIyMzUzNDBlNTFhMzZhNDBmYjBiMTMzNzMzNzI1NTYgMTAwNjQ0Ci0tLSBhL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtZmlyZWZveC13aW4vdXJlbS5qcworKysgYi9Q
ZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29vZ2xlLWZpcmVmb3gtd2luL3VyZW0uanMKQEAgLTE5
NCw3ICsxOTQsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNC
TkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2
YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gd2lu
ZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1
ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7
CkBAIC0yMjcsNyArMjI3LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxz
ZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRl
KCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1l
SW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAgICAgIGpyID0g
anIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pT
QmVuY2gvZ29vZ2xlLWZpcmVmb3gvdWVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dv
b2dsZS1maXJlZm94L3VlbS5qcwppbmRleCA5ODM3N2Y1YmJiMzI2YjM1NzI1MjFiMTBjMDA0YTI4
ODQ3NWUxYWRmLi4wZGMzOTRlYzkzNzM3YzFiYmJhNWZhMTczYTVkYzE2ZjBjNDFlOTEzIDEwMDY0
NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29vZ2xlLWZpcmVmb3gvdWVtLmpzCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtZmlyZWZveC91ZW0uanMKQEAgLTE5
Nyw3ICsxOTcsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNC
TkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2
YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gd2lu
ZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1
ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7
CkBAIC0yMzAsNyArMjMwLDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxz
ZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRl
KCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1l
SW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAgICAgIGpyID0g
anIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pT
QmVuY2gvZ29vZ2xlLXNhZmFyaS91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dv
b2dsZS1zYWZhcmkvdXJlbS5qcwppbmRleCAzNjgwNTMxZTU5MDZjZGFjMmIzNzBkMmJjMmRhZjBj
MmM3MGQ0MDFiLi5hNjZjYWFkOWNhMTQyMzUwYTE4ODU5ODg5MWZlNTQwNzMyOGFiZWJiIDEwMDY0
NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29vZ2xlLXNhZmFyaS91cmVtLmpzCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtc2FmYXJpL3VyZW0uanMKQEAgLTE5
Nyw3ICsxOTcsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNC
TkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2
YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gd2lu
ZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1
ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7
CkBAIC0yMzAsNyArMjMwLDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxz
ZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRl
KCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1l
SW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAgICAgIGpyID0g
anIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pT
QmVuY2gvdHdpdHRlci1jaHJvbWUtd2luL3JlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC90d2l0dGVyLWNocm9tZS13aW4vcmVtLmpzCmluZGV4IGE1MjE1ZWMxMGIxYjI4OTM3YmI1ZDNm
NjEyNDFmN2RmMWY1MzU0NjUuLjMxZGU4YjEyZDZiM2ZiNDM4NDdlNTk5YWUxYzI2MzU0YzEzN2E1
M2YgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVyLWNocm9tZS13
aW4vcmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVyLWNocm9tZS13
aW4vcmVtLmpzCkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAg
ICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkg
ewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAg
ICAgdmFyIGVuZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAg
ICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChl
bmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsK
ICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2
YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBh
cmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAg
ICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVy
Zm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3aXR0ZXItY2hyb21lL3VyZW0uanMgYi9QZXJmb3JtYW5j
ZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1jaHJvbWUvdXJlbS5qcwppbmRleCBlMjBhYjRjYTc4YzRj
NzRlNzFmYWIyNzM2OTk2N2RiNmIwNmUxNDZiLi42ZGY3NzZkYmU2OGMzNGFkOWQ2NWRmMWIxZWEy
MGY2ZTFhOWRhM2MzIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRl
ci1jaHJvbWUvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1j
aHJvbWUvdXJlbS5qcwpAQCAtMTk3LDcgKzE5Nyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAog
ICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlv
bigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAg
ICAgICAgIHZhciBlbmQgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAg
ICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6ICIg
KyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIzMCw3ICsyMzAsNyBAQCBmdW5jdGlvbiBvbmxvYWQo
KSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAgICAg
ICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IHdpbmRv
dy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkg
ewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBh
L1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVyLWZpcmVmb3gtd2luL3VyZW0uanMgYi9Q
ZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1maXJlZm94LXdpbi91cmVtLmpzCmluZGV4
IGNkYTVjNTc3M2ExY2EwZDhmYTA0MDYwOTgyMzEwYTBkMTdjZTZhNDguLjQ0NjRlNDZiZGI1ZDEx
MmZlZTEyMDE4ZDk2Mjc5ZDgzMTYyNzIzMDEgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMv
SlNCZW5jaC90d2l0dGVyLWZpcmVmb3gtd2luL3VyZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0
cy9KU0JlbmNoL3R3aXR0ZXItZmlyZWZveC13aW4vdXJlbS5qcwpAQCAtMTk0LDcgKzE5NCw3IEBA
IGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwog
ICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcg
RGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZhciBlbmQgPSB3aW5kb3cucGFyZW50LmN1
cnJlbnRUaW1lSW5NUygpOwogICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAg
ICAgICB2YXIgbXNnID0gIlRpbWU6ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIyNyw3ICsy
MjcsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAg
ICAvLyB0aGVuIHRpbWUgaXQKLSAgICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7
CisgICAgICAgIHZhciBzdCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAg
ICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7
CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVy
LWZpcmVmb3gvdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVyLWZpcmVm
b3gvdXJlbS5qcwppbmRleCBmMjE4NGE1MzU5NWJhNGU3NjJlYTQzMWNhODMxZDBhZmM4MzE0MDFl
Li4wNjViMjZjZmM4Y2ZjZjQ2ZDY0NWQ0NGVhYjUxMzBmYzkzYzAxNzA4IDEwMDY0NAotLS0gYS9Q
ZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1maXJlZm94L3VyZW0uanMKKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3aXR0ZXItZmlyZWZveC91cmVtLmpzCkBAIC0xOTcsNyAr
MTk3LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1Jl
cGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVu
ZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IHdpbmRvdy5w
YXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAK
ICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAt
MjMwLDcgKzIzMCw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwog
CiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdl
dFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVMo
KTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRy
dWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNo
L3R3aXR0ZXItc2FmYXJpL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRl
ci1zYWZhcmkvdXJlbS5qcwppbmRleCAxODQxZmNhN2E1MTMzMGJjODdkZDE2YjEwMGUwMDNiNjEy
NmY4NTdjLi4wOGVhNGVmMGQzMzMyNmU4Mzg4NTQxMzFlODVlNjBkZTM4YWRkZjlmIDEwMDY0NAot
LS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1zYWZhcmkvdXJlbS5qcworKysg
Yi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1zYWZhcmkvdXJlbS5qcwpAQCAtMTk3
LDcgKzE5Nyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2YXIganIgPSBKU0JO
R19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZh
ciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZhciBlbmQgPSB3aW5k
b3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVl
OwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsK
QEAgLTIzMCw3ICsyMzAsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIGpyKGZhbHNl
KTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAgICAgICAgdmFyIHN0ID0gbmV3IERhdGUo
KS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJ
bk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIgPSBq
cih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNC
ZW5jaC95YWhvby1jaHJvbWUtd2luL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gv
eWFob28tY2hyb21lLXdpbi91cmVtLmpzCmluZGV4IGY1NjU2ODI3MDA0MTVlY2E1NzkzOGNkMmRi
MzIxMTQyM2I2ZDQ5YWYuLjQ4YzMwMDEzMDhkZjA1NWY1ODA3NTU1YzZiMWMyNmE2MTY3OTc4YWEg
MTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC95YWhvby1jaHJvbWUtd2luL3Vy
ZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLWNocm9tZS13aW4vdXJl
bS5qcwpAQCAtMTk0LDcgKzE5NCw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2
YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZh
ciBlbmQgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICAgICAgZmlu
aXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6ICIgKyAoZW5kIC0g
c3QpICsgIm1zIjsKQEAgLTIyNyw3ICsyMjcsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAg
ICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAgICAgICAgdmFyIHN0
ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IHdpbmRvdy5wYXJlbnQu
Y3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAg
ICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1h
bmNlVGVzdHMvSlNCZW5jaC95YWhvby1jaHJvbWUvdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMv
SlNCZW5jaC95YWhvby1jaHJvbWUvdXJlbS5qcwppbmRleCBlNzc5Mjg3ODhmZWJkYzMwNzQwNDhm
NDJhZjUxZjgwYzlkZGE5NTBiLi5iYmM2YmI0MjU1ZjhkNGM4YTRmMjU3YmY3ODgwMTIyZjkyMDc1
ZDk3IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tY2hyb21lL3Vy
ZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLWNocm9tZS91cmVtLmpz
CkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBq
ciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAg
ICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVu
ZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hl
ZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkg
KyAibXMiOwpAQCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAg
anIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBu
ZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93LnBhcmVudC5jdXJy
ZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAg
ICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VU
ZXN0cy9KU0JlbmNoL3lhaG9vLWZpcmVmb3gtd2luL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3Rz
L0pTQmVuY2gveWFob28tZmlyZWZveC13aW4vdXJlbS5qcwppbmRleCA4YWQ5ZGFkNTVjYzdjMmRm
YjcwYzY0NDE5MmUzMjg0OWYyZGU2NTg1Li5mYmJlMmEwNmI2YzQxNDdiMmU4ZmRmNmE4NmYwMzcw
MTAxMjZhMGFmIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tZmly
ZWZveC13aW4vdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tZmly
ZWZveC13aW4vdXJlbS5qcwpAQCAtMTk0LDcgKzE5NCw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsK
IAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5j
dGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAg
ICAgICAgICAgIHZhciBlbmQgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAg
ICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6
ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIyNyw3ICsyMjcsNyBAQCBmdW5jdGlvbiBvbmxv
YWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAg
ICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IHdp
bmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVs
bCkgewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC95YWhvby1maXJlZm94L3VyZW0uanMgYi9QZXJm
b3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tZmlyZWZveC91cmVtLmpzCmluZGV4IDBiNGQ0Nzky
N2NiOWU5YTU4MTZiY2ZlZTYxNmFjYjZjZmVmNWU0MTcuLjJlMTVjMTBiZjUwYmJmMGQ3ZDk1MTBj
MGU0NWI2MGEwYWJhMzQwYzEgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC95
YWhvby1maXJlZm94L3VyZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9v
LWZpcmVmb3gvdXJlbS5qcwpAQCAtMTk0LDcgKzE5NCw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsK
IAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5j
dGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAg
ICAgICAgICAgIHZhciBlbmQgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUygpOwogICAg
ICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6
ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIyNyw3ICsyMjcsNyBAQCBmdW5jdGlvbiBvbmxv
YWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAg
ICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IHdp
bmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVs
bCkgewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC95YWhvby1zYWZhcmkvdXJlbS5qcyBiL1BlcmZv
cm1hbmNlVGVzdHMvSlNCZW5jaC95YWhvby1zYWZhcmkvdXJlbS5qcwppbmRleCBjYzkxMjgxNTNi
N2M0OTdmZThlN2NjNzk0YWU0OGVlNTkzNGExN2FhLi5hMWNlMmFiYjQ4ODVmMGI2ZjUwOGU2MjQ3
ZjhmYjU0NWZmYjFiMWFlIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFo
b28tc2FmYXJpL3VyZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLXNh
ZmFyaS91cmVtLmpzCkBAIC0xOTQsNyArMTk0LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAg
ICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9u
KCkgewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAg
ICAgICAgdmFyIGVuZCA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAg
ICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiAr
IChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIyNyw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgp
IHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAg
ICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gd2luZG93
LnBhcmVudC5jdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7
CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>279875</attachid>
            <date>2016-05-26 03:34:17 -0700</date>
            <delta_ts>2016-05-26 12:28:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158050-20160526193525.patch</filename>
            <type>text/plain</type>
            <size>47498</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxNDE4CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWI1ZjMwYTNmMzVmYjk1YjQxODM0MmIwN2QwNjA2NzRh
Yjg1MWI2My4uZmMxNThkZTgzYmEyNTlkMmQxMGQyMzZiNjNiNWJiMDRkZmFlZGUyZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMx
IEBACisyMDE2LTA1LTI2ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgor
CisgICAgICAgIFtKU0NdIEFsbG93IEpTQmVuY2ggdG8gdXNlIHByZWNpc2UgdGltZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MDUwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSlNCZW5jaCB1c2UgYG5l
dyBEYXRlKCkuZ2V0VGltZSgpYCB3aXRob3V0IG9wdGlvbnMgYW5kIHRoZXJlIGlzIG5vIHdheSB0
byB1c2UgcHJlY2lzZSB0aW1lLgorICAgICAgICBUaGlzIHBhdGNoIG1vZGlmaWVzIHRoZSBKU0Jl
bmNoIGNvZGUgdG8gaW5qZWN0IHRoZSBjb2RlIHRha2luZyB0aGUgcHJlY2lzZSB0aW1lLgorICAg
ICAgICBgY3VycmVudFRpbWVJbk1TYCBpcyBnaXZlbiBieSB0aGUgYmVuY2htZXJrIGhhcm5lc3Mg
YW5kIEpTQmVuY2ggdXNlcyBpdC4KKyAgICAgICAgcnVuLWpzYy1iZW5jaG1hcmsgc3dpdGNoZXMg
dGhpcyBmdW5jdGlvbidzIGltcGxlbWVudGF0aW9uIGJldHdlZW4gYERhdGUubm93KClgIGFuZAor
ICAgICAgICB0ZXN0UnVubmVyJ3MgcHJlY2lzZSB0aW1lIG9uZS4KKworICAgICAgICBXaGlsZSB0
aGlzIHBhdGNoIG1vZGlmaWVzIHRoZSBjb2RlIG9mIEpTQmVuY2gsIHRoZSBsYXN0IHJlbGVhc2Ug
b2YgSlNCZW5jaCBpcyBKYW4gMjAxMyBhbmQKKyAgICAgICAgdGhlIGNvbnRlbnRzIGFyZSBub3Qg
Y2hhbmdlZCBmb3IgYSBsb25nIHRpbWUuIEFzIGRlc2NyaWJlZCBpbiB0aGUgb3JpZ2luYWwgcGFw
ZXJbMV0sIHRoZQorICAgICAgICB0ZXN0cyBjYW4gYmUgZ2VuZXJhdGVkIGJ5IHVzaW5nIEpTQmVu
Y2gncyByZWNvcmQgJiByZXBsYXkgc3lzdGVtLCBidXQgaW4gdGhhdCBjYXNlLCB3ZSBjYW4KKyAg
ICAgICAgYWRvcHQgdGhpcyBtb2RpZmljYXRpb24gYnkgY2hhbmdpbmcgdGhlIHRvb2wgc2lkZS4K
KworICAgICAgICBXZSBhbHNvIGFkZCBjdXJyZW50VGltZUluTVMgaW1wbGVtZW50YXRpb24gaW4g
aGFybmVzcy5qcyBhbmQgdT9yZW0uanMgZGlyZWN0bHkuCisgICAgICAgIHU/cmVtLmpzIGltcGxl
bWVudGF0aW9uIGlzIHJlcXVpcmVkIHdoZW4gaXQgaXMgZXhlY3V0ZWQgaW4gdT9yZW0uaHRtbCB3
aXRob3V0IGhhcm5lc3MuCisgICAgICAgIEFuZCBoYXJuZXNzLmpzIGltcGxlbWVudGF0aW9uIGlz
IHJlcXVpcmVkIHdoZW4gaXQgaXMgZXhlY3V0ZWQgaW4gdGhlIEpTQmVuY2gncyBoYXJuZXNzLgor
ICAgICAgICBJbiB0aGVzZSBpbXBsZW1lbnRhdGlvbiwgd2UgZm9sbG93IHRoZSBKZXRTdHJlYW0n
cyB0aW1lIG1lYXN1cmluZyBmdW5jdGlvbjogcGVyZm9ybWFuY2Uubm93KCksCisgICAgICAgIHBy
ZWNpc2VUaW1lKCksIG9yIERhdGUubm93KCkuCisKKyAgICAgICAgWzFdOiBodHRwOi8vZGwuYWNt
Lm9yZy9jaXRhdGlvbi5jZm0/aWQ9MjA0ODExOQorCisgICAgICAgICogU2NyaXB0cy9ydW4tanNj
LWJlbmNobWFya3M6CisKIDIwMTYtMDUtMjUgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFw
cGxlLmNvbT4KIAogICAgICAgICBHZXQgcmlkIG9mIFdURi9GdW5jdGlvbmFsLmgKZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvcnVuLWpzYy1iZW5jaG1hcmtzIGIvVG9vbHMvU2NyaXB0cy9ydW4t
anNjLWJlbmNobWFya3MKaW5kZXggNDdmMTMwY2VhYzYzNDkxZmNhM2UwOTljMDY2ZTExNmNmYmQ4
YmRlOC4uNmM2NGEyNmE0ZWM1MDRjYWNhNGYwYTMxYTRjNjcyZGZmMWRmNzMzMyAxMDA3NTUKLS0t
IGEvVG9vbHMvU2NyaXB0cy9ydW4tanNjLWJlbmNobWFya3MKKysrIGIvVG9vbHMvU2NyaXB0cy9y
dW4tanNjLWJlbmNobWFya3MKQEAgLTEwMzIsNiArMTAzMiwxMSBAQCBkZWYgZW1pdEJlbmNoUnVu
Q29kZUZpbGUobmFtZSwgcGxhbiwgYmVuY2hQYXJhbXMpCiAgICAgICBkb3VibGVQdXRzKCRzdGRl
cnIsZmlsZSwiZnVuY3Rpb24gcmVwb3J0UmVzdWx0KHJlc3VsdCkgeyIpCiAgICAgICBkb3VibGVQ
dXRzKCRzdGRlcnIsZmlsZSwiICAgIF9fYmVuY2hlcl9jb250aW51YXRpb24ocmVzdWx0KTsiKQog
ICAgICAgZG91YmxlUHV0cygkc3RkZXJyLGZpbGUsIn0iKQorICAgICAgZG91YmxlUHV0cygkc3Rk
ZXJyLGZpbGUsIiIpCisgICAgICBkb3VibGVQdXRzKCRzdGRlcnIsZmlsZSwiZnVuY3Rpb24gY3Vy
cmVudFRpbWVJbk1TKG1zZykiKQorICAgICAgZG91YmxlUHV0cygkc3RkZXJyLGZpbGUsInsiKQor
ICAgICAgZG91YmxlUHV0cygkc3RkZXJyLGZpbGUsIiAgICByZXR1cm4gI3tjdXJUaW1lfTsiKQor
ICAgICAgZG91YmxlUHV0cygkc3RkZXJyLGZpbGUsIn0iKQogICAgICAgaWYgYmVuY2hQYXJhbXMu
a2luZCA9PSA6c2luZ2xlRmlsZVRpbWVkQ2FsbGJhY2tCZW5jaG1hcmsKICAgICAgICAgZG91Ymxl
UHV0cygkc3RkZXJyLGZpbGUsIiIpCiAgICAgICAgIGRvdWJsZVB1dHMoJHN0ZGVycixmaWxlLGJl
bmNoUGFyYW1zLmNhbGxiYWNrRGVjbCkKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hh
bmdlTG9nIGIvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMTRjZDJkYzY1OGQyOTg3
YTVhZWQ4MDkzODMzNDZiYTZlNTc5MzM2ZC4uNDM1YTI5YWYxNDAzNTBkNGYxZjY1Zjc3MGNhYjU0
ZDk5MGE5MTZjNyAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNjQgQEAKKzIwMTYtMDUtMjYg
IFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CisKKyAgICAgICAgW0pTQ10g
QWxsb3cgSlNCZW5jaCB0byB1c2UgcHJlY2lzZSB0aW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgwNTAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEpTQmVuY2gvYW1hem9uLWNocm9tZS13aW4vdXJl
bS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5j
ZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lz
ZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVs
c2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAg
KG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9hbWF6b24tY2hyb21lL3VyZW0uanM6CisgICAg
ICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJl
bnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmlu
Z19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3Vy
cmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgor
ICAgICAgICAqIEpTQmVuY2gvYW1hem9uLWZpcmVmb3gtd2luL3VybS5qczoKKyAgICAgICAgKGVs
c2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5jZS5ub3cuY3VycmVudFRpbWVJ
bk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lzZVRpbWUuc3RyaW5nX2FwcGVh
cmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS5jdXJyZW50VGlt
ZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAg
ICogSlNCZW5jaC9hbWF6b24tZmlyZWZveC91cm0uanM6CisgICAgICAgIChlbHNlLndpbmRvdy5w
ZXJmb3JtYW5jZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJlbnRUaW1lSW5NUyk6CisgICAg
ICAgIChlbHNlLmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJlZF9oZXJlLmN1
cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3VycmVudFRpbWVJbk1TKToKKyAg
ICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gv
YW1hem9uLXNhZmFyaS91cmVtLmpzOgorICAgICAgICAoZWxzZS53aW5kb3cucGVyZm9ybWFuY2Uu
d2luZG93LnBlcmZvcm1hbmNlLm5vdy5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAoZWxzZS5l
bHNlLnR5cGVvZi5wcmVjaXNlVGltZS5zdHJpbmdfYXBwZWFyZWRfaGVyZS5jdXJyZW50VGltZUlu
TVMpOgorICAgICAgICAoZWxzZS5lbHNlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChvbmxv
YWQuY2IpOgorICAgICAgICAob25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL2ZhY2Vib29rLWNo
cm9tZS13aW4vdXJlbS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRv
dy5wZXJmb3JtYW5jZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50
eXBlb2YucHJlY2lzZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToK
KyAgICAgICAgKGVsc2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2FkLmNi
KToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9mYWNlYm9vay1jaHJvbWUv
dXJlbS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3Jt
YW5jZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJl
Y2lzZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAg
KGVsc2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAg
ICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9mYWNlYm9vay1maXJlZm94LXdpbi91cmVt
LmpzOgorICAgICAgICAoZWxzZS53aW5kb3cucGVyZm9ybWFuY2Uud2luZG93LnBlcmZvcm1hbmNl
Lm5vdy5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAoZWxzZS5lbHNlLnR5cGVvZi5wcmVjaXNl
VGltZS5zdHJpbmdfYXBwZWFyZWRfaGVyZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAoZWxz
ZS5lbHNlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAo
b25sb2FkKToKKyAgICAgICAgKiBKU0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gvdXJlbS5qczoKKyAg
ICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5jZS5ub3cuY3Vy
cmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lzZVRpbWUuc3Ry
aW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS5j
dXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6
CisgICAgICAgICogSlNCZW5jaC9mYWNlYm9vay1zYWZhcmkvdXJlbS5qczoKKyAgICAgICAgKGVs
c2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5jZS5ub3cuY3VycmVudFRpbWVJ
bk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lzZVRpbWUuc3RyaW5nX2FwcGVh
cmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS5jdXJyZW50VGlt
ZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAg
ICogSlNCZW5jaC9nb29nbGUtY2hyb21lLXdpbi91cmVtLmpzOgorICAgICAgICAoZWxzZS53aW5k
b3cucGVyZm9ybWFuY2Uud2luZG93LnBlcmZvcm1hbmNlLm5vdy5jdXJyZW50VGltZUluTVMpOgor
ICAgICAgICAoZWxzZS5lbHNlLnR5cGVvZi5wcmVjaXNlVGltZS5zdHJpbmdfYXBwZWFyZWRfaGVy
ZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAoZWxzZS5lbHNlLmN1cnJlbnRUaW1lSW5NUyk6
CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2FkKToKKyAgICAgICAgKiBKU0Jl
bmNoL2dvb2dsZS1jaHJvbWUvdXJlbS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1h
bmNlLndpbmRvdy5wZXJmb3JtYW5jZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVs
c2UuZWxzZS50eXBlb2YucHJlY2lzZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRp
bWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAo
b25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9nb29nbGUt
ZmlyZWZveC13aW4vdXJlbS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndp
bmRvdy5wZXJmb3JtYW5jZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxz
ZS50eXBlb2YucHJlY2lzZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1T
KToKKyAgICAgICAgKGVsc2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2Fk
LmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC9nb29nbGUtZmlyZWZv
eC91ZW0uanM6CisgICAgICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9y
bWFuY2Uubm93LmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnBy
ZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAg
IChlbHNlLmVsc2UuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAg
ICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gvZ29vZ2xlLXNhZmFyaS91cmVtLmpzOgor
ICAgICAgICAoZWxzZS53aW5kb3cucGVyZm9ybWFuY2Uud2luZG93LnBlcmZvcm1hbmNlLm5vdy5j
dXJyZW50VGltZUluTVMpOgorICAgICAgICAoZWxzZS5lbHNlLnR5cGVvZi5wcmVjaXNlVGltZS5z
dHJpbmdfYXBwZWFyZWRfaGVyZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAoZWxzZS5lbHNl
LmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChvbmxvYWQuY2IpOgorICAgICAgICAob25sb2Fk
KToKKyAgICAgICAgKiBKU0JlbmNoL2hhcm5lc3MuanM6CisgICAgICAgIChydW5CZW5jaG1hcmsu
d2luZG93LmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChydW5CZW5jaG1hcmsuZWxzZS53aW5k
b3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKiBKU0JlbmNoL3R3aXR0ZXItY2hyb21lLXdp
bi9yZW0uanM6CisgICAgICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9y
bWFuY2Uubm93LmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnBy
ZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAg
IChlbHNlLmVsc2UuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAg
ICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gvdHdpdHRlci1jaHJvbWUvdXJlbS5qczoK
KyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5jZS5ub3cu
Y3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lzZVRpbWUu
c3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxz
ZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9h
ZCk6CisgICAgICAgICogSlNCZW5jaC90d2l0dGVyLWZpcmVmb3gtd2luL3VyZW0uanM6CisgICAg
ICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJl
bnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmlu
Z19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3Vy
cmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgor
ICAgICAgICAqIEpTQmVuY2gvdHdpdHRlci1maXJlZm94L3VyZW0uanM6CisgICAgICAgIChlbHNl
LndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJlbnRUaW1lSW5N
Uyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJl
ZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3VycmVudFRpbWVJ
bk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAq
IEpTQmVuY2gvdHdpdHRlci1zYWZhcmkvdXJlbS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBl
cmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5jZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAg
ICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lzZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3Vy
cmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAg
ICAgICAob25sb2FkLmNiKToKKyAgICAgICAgKG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC95
YWhvby1jaHJvbWUtd2luL3VyZW0uanM6CisgICAgICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5j
ZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNl
LmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1l
SW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9u
bG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gveWFob28tY2hy
b21lL3VyZW0uanM6CisgICAgICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVy
Zm9ybWFuY2Uubm93LmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9m
LnByZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAg
ICAgIChlbHNlLmVsc2UuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6Cisg
ICAgICAgIChvbmxvYWQpOgorICAgICAgICAqIEpTQmVuY2gveWFob28tZmlyZWZveC13aW4vdXJl
bS5qczoKKyAgICAgICAgKGVsc2Uud2luZG93LnBlcmZvcm1hbmNlLndpbmRvdy5wZXJmb3JtYW5j
ZS5ub3cuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVsc2UuZWxzZS50eXBlb2YucHJlY2lz
ZVRpbWUuc3RyaW5nX2FwcGVhcmVkX2hlcmUuY3VycmVudFRpbWVJbk1TKToKKyAgICAgICAgKGVs
c2UuZWxzZS5jdXJyZW50VGltZUluTVMpOgorICAgICAgICAob25sb2FkLmNiKToKKyAgICAgICAg
KG9ubG9hZCk6CisgICAgICAgICogSlNCZW5jaC95YWhvby1maXJlZm94L3VyZW0uanM6CisgICAg
ICAgIChlbHNlLndpbmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJl
bnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmlu
Z19hcHBlYXJlZF9oZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3Vy
cmVudFRpbWVJbk1TKToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgor
ICAgICAgICAqIEpTQmVuY2gveWFob28tc2FmYXJpL3VyZW0uanM6CisgICAgICAgIChlbHNlLndp
bmRvdy5wZXJmb3JtYW5jZS53aW5kb3cucGVyZm9ybWFuY2Uubm93LmN1cnJlbnRUaW1lSW5NUyk6
CisgICAgICAgIChlbHNlLmVsc2UudHlwZW9mLnByZWNpc2VUaW1lLnN0cmluZ19hcHBlYXJlZF9o
ZXJlLmN1cnJlbnRUaW1lSW5NUyk6CisgICAgICAgIChlbHNlLmVsc2UuY3VycmVudFRpbWVJbk1T
KToKKyAgICAgICAgKG9ubG9hZC5jYik6CisgICAgICAgIChvbmxvYWQpOgorCiAyMDE2LTA1LTI1
ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2
aWV3ZWQsIGFkZCBKU0JlbmNoIHRvIHRoZSBza2lwcGVkIGxpc3QgZm9yIG5vdyBzaW5jZSBpdCBk
b2Vzbid0CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLWNocm9t
ZS13aW4vdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tY2hyb21lLXdp
bi91cmVtLmpzCmluZGV4IDUxNWNlOWUwYzAzMzZjMGY5ZjlhZjBhY2VhZTQ0OGM5MWU0MzRlZDQu
LmE5NWZkOWNhOTg2NTJkMWMxMmJlNTFmNjQzMjRmNWJmNGI5YWQxMzAgMTAwNjQ0Ci0tLSBhL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tY2hyb21lLXdpbi91cmVtLmpzCisrKyBiL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tY2hyb21lLXdpbi91cmVtLmpzCkBAIC0xODYs
NiArMTg2LDE4IEBAIGVsc2UgaWYgKHJpIDwgZSkgewogICAgICAgICB9CiAgICAgfTsKIAorICAg
IHZhciBjdXJyZW50VGltZUluTVM7CisgICAgaWYgKGluaGFybmVzcykgeworICAgICAgICBjdXJy
ZW50VGltZUluTVMgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUzsKKyAgICB9IGVsc2Ug
eworICAgICAgICBpZiAod2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS5u
b3cpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHdp
bmRvdy5wZXJmb3JtYW5jZS5ub3coKSB9OworICAgICAgICBlbHNlIGlmICh0eXBlb2YgcHJlY2lz
ZVRpbWUgIT09ICd1bmRlZmluZWQnKQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVu
Y3Rpb24oKSB7IHJldHVybiBwcmVjaXNlVGltZSgpICogMTAwMDsgfTsKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlLm5v
dygpOyB9OworICAgIH0KKwogICAgIC8vIHRoZSBhY3R1YWwgcmVwbGF5IHJ1bm5lcgogICAgIGZ1
bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAgdHJ5IHsKQEAgLTE5NCw3ICsyMDYsNyBAQCBmdW5j
dGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAg
ICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUo
KS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gY3VycmVudFRpbWVJbk1TKCk7CiAg
ICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGlt
ZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIzOSw3IEBAIGZ1bmN0aW9uIG9u
bG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAot
ICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0g
Y3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAg
ICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1h
bmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tY2hyb21lL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3Rz
L0pTQmVuY2gvYW1hem9uLWNocm9tZS91cmVtLmpzCmluZGV4IGRiYzhkMzE2YjRmM2Q4MGU0NTdl
NmRkMDU0NWRiYmZhYzNiOWRhYmMuLjdmMzRmZDVmYTE2ZGU5NGQxZjAwYjU1NWYzMWJjNjM1MWJm
ZDVlNjEgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tY2hyb21l
L3VyZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2FtYXpvbi1jaHJvbWUvdXJl
bS5qcwpAQCAtMTg5LDYgKzE4OSwxOCBAQCBlbHNlIGlmIChyaSA8IGUpIHsKICAgICAgICAgfQog
ICAgIH07CiAKKyAgICB2YXIgY3VycmVudFRpbWVJbk1TOworICAgIGlmIChpbmhhcm5lc3MpIHsK
KyAgICAgICAgY3VycmVudFRpbWVJbk1TID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVM7
CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5kb3cu
cGVyZm9ybWFuY2Uubm93KQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24o
KSB7IHJldHVybiB3aW5kb3cucGVyZm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBpZiAo
dHlwZW9mIHByZWNpc2VUaW1lICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIGN1cnJlbnRU
aW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gcHJlY2lzZVRpbWUoKSAqIDEwMDA7IH07Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyBy
ZXR1cm4gRGF0ZS5ub3coKTsgfTsKKyAgICB9CisKICAgICAvLyB0aGUgYWN0dWFsIHJlcGxheSBy
dW5uZXIKICAgICBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIHRyeSB7CkBAIC0xOTcsNyAr
MjA5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1Jl
cGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVu
ZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IGN1cnJlbnRU
aW1lSW5NUygpOwogICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2
YXIgbXNnID0gIlRpbWU6ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIzMCw3ICsyNDIsNyBA
QCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0
aGVuIHRpbWUgaXQKLSAgICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAg
ICAgIHZhciBzdCA9IGN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51
bGwpIHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1n
aXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLWZpcmVmb3gtd2luL3VybS5qcyBi
L1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tZmlyZWZveC13aW4vdXJtLmpzCmluZGV4
IDY3MzgxY2Y0Yjc2ODg1ZTZmNDIyZWQ0ZGE4MDEyOTM0ZGMxNDYzMWEuLjdhZTdmOWUyZWI0ZDU3
NmI4YTdiZTlkYWJiM2VmOTFiZGVjNDhkMjMgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMv
SlNCZW5jaC9hbWF6b24tZmlyZWZveC13aW4vdXJtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMv
SlNCZW5jaC9hbWF6b24tZmlyZWZveC13aW4vdXJtLmpzCkBAIC0xODYsNiArMTg2LDE4IEBAIGVs
c2UgaWYgKHJpIDwgZSkgewogICAgICAgICB9CiAgICAgfTsKIAorICAgIHZhciBjdXJyZW50VGlt
ZUluTVM7CisgICAgaWYgKGluaGFybmVzcykgeworICAgICAgICBjdXJyZW50VGltZUluTVMgPSB3
aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUzsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAo
d2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpCisgICAgICAgICAg
ICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5j
ZS5ub3coKSB9OworICAgICAgICBlbHNlIGlmICh0eXBlb2YgcHJlY2lzZVRpbWUgIT09ICd1bmRl
ZmluZWQnKQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVy
biBwcmVjaXNlVGltZSgpICogMTAwMDsgfTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY3Vy
cmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlLm5vdygpOyB9OworICAgIH0K
KwogICAgIC8vIHRoZSBhY3R1YWwgcmVwbGF5IHJ1bm5lcgogICAgIGZ1bmN0aW9uIG9ubG9hZCgp
IHsKICAgICAgICAgdHJ5IHsKQEAgLTE5NCw3ICsyMDYsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7
CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVu
Y3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7Cisg
ICAgICAgICAgICB2YXIgZW5kID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5p
c2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBz
dCkgKyAibXMiOwpAQCAtMjI3LDcgKzIzOSw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAg
ICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3Qg
PSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gY3VycmVudFRpbWVJbk1T
KCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIgPSBqcih0
cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC9hbWF6b24tZmlyZWZveC91cm0uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9u
LWZpcmVmb3gvdXJtLmpzCmluZGV4IDk5ZjIzNGNkYmU4M2M5YjMzZjdjNmRiMTVhNzY1MzM2Y2Q0
YzQxMTcuLmM5Mjc1ZTQxMjk0NGRlNjhhZWY3NmZjY2EyZWIxZDJkNGRiNWE3YTYgMTAwNjQ0Ci0t
LSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tZmlyZWZveC91cm0uanMKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2FtYXpvbi1maXJlZm94L3VybS5qcwpAQCAtMTg5LDYg
KzE4OSwxOCBAQCBlbHNlIGlmIChyaSA8IGUpIHsKICAgICAgICAgfQogICAgIH07CiAKKyAgICB2
YXIgY3VycmVudFRpbWVJbk1TOworICAgIGlmIChpbmhhcm5lc3MpIHsKKyAgICAgICAgY3VycmVu
dFRpbWVJbk1TID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVM7CisgICAgfSBlbHNlIHsK
KyAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5kb3cucGVyZm9ybWFuY2Uubm93
KQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiB3aW5k
b3cucGVyZm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBpZiAodHlwZW9mIHByZWNpc2VU
aW1lICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0
aW9uKCkgeyByZXR1cm4gcHJlY2lzZVRpbWUoKSAqIDEwMDA7IH07CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gRGF0ZS5ub3co
KTsgfTsKKyAgICB9CisKICAgICAvLyB0aGUgYWN0dWFsIHJlcGxheSBydW5uZXIKICAgICBmdW5j
dGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIHRyeSB7CkBAIC0xOTcsNyArMjA5LDcgQEAgZnVuY3Rp
b24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAg
IHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCku
Z2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IGN1cnJlbnRUaW1lSW5NUygpOwogICAg
ICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6
ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIzMCw3ICsyNDIsNyBAQCBmdW5jdGlvbiBvbmxv
YWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAg
ICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IGN1
cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAg
ICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5j
ZVRlc3RzL0pTQmVuY2gvYW1hem9uLXNhZmFyaS91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9K
U0JlbmNoL2FtYXpvbi1zYWZhcmkvdXJlbS5qcwppbmRleCBhZjQ4NGJiMzg3ZTE4NjIyOWI2ZmRm
ZWFlYzQ3OWVlODk4OWRiNTk0Li45MzIzMjc2NmVkOGVhOGU1ZjNjZDc2ODliNjQ3OTMwZjgzYzli
ODQ0IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvYW1hem9uLXNhZmFyaS91
cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9hbWF6b24tc2FmYXJpL3VyZW0u
anMKQEAgLTE4OSw2ICsxODksMTggQEAgZWxzZSBpZiAocmkgPCBlKSB7CiAgICAgICAgIH0KICAg
ICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsKKyAgICBpZiAoaW5oYXJuZXNzKSB7Cisg
ICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TOwor
ICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cucGVyZm9ybWFuY2UgJiYgd2luZG93LnBl
cmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkg
eyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygpIH07CisgICAgICAgIGVsc2UgaWYgKHR5
cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpCisgICAgICAgICAgICBjdXJyZW50VGlt
ZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VUaW1lKCkgKiAxMDAwOyB9OworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0
dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAgLy8gdGhlIGFjdHVhbCByZXBsYXkgcnVu
bmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICB0cnkgewpAQCAtMTk3LDcgKzIw
OSw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBs
YXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQg
PSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZhciBlbmQgPSBjdXJyZW50VGlt
ZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFy
IG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMzAsNyArMjQyLDcgQEAg
ZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhl
biB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAg
ICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxs
KSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0
IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWNocm9tZS13aW4vdXJlbS5qcyBi
L1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1jaHJvbWUtd2luL3VyZW0uanMKaW5k
ZXggMDljOWQyNjg4YThmYTMxY2VjNzljMzc1MWQ0MzU4OGRkODI4NDEyMC4uMDQxNmE4NDFhMDg0
YzYxYTU5OGU1ZTA3MGUwZDU3ZjkwMjdmZjA5NyAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0
cy9KU0JlbmNoL2ZhY2Vib29rLWNocm9tZS13aW4vdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRl
c3RzL0pTQmVuY2gvZmFjZWJvb2stY2hyb21lLXdpbi91cmVtLmpzCkBAIC0xODYsNiArMTg2LDE4
IEBAIGVsc2UgaWYgKHJpIDwgZSkgewogICAgICAgICB9CiAgICAgfTsKIAorICAgIHZhciBjdXJy
ZW50VGltZUluTVM7CisgICAgaWYgKGluaGFybmVzcykgeworICAgICAgICBjdXJyZW50VGltZUlu
TVMgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUzsKKyAgICB9IGVsc2UgeworICAgICAg
ICBpZiAod2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpCisgICAg
ICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHdpbmRvdy5wZXJm
b3JtYW5jZS5ub3coKSB9OworICAgICAgICBlbHNlIGlmICh0eXBlb2YgcHJlY2lzZVRpbWUgIT09
ICd1bmRlZmluZWQnKQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7
IHJldHVybiBwcmVjaXNlVGltZSgpICogMTAwMDsgfTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlLm5vdygpOyB9Owor
ICAgIH0KKwogICAgIC8vIHRoZSBhY3R1YWwgcmVwbGF5IHJ1bm5lcgogICAgIGZ1bmN0aW9uIG9u
bG9hZCgpIHsKICAgICAgICAgdHJ5IHsKQEAgLTE5NCw3ICsyMDYsNyBAQCBmdW5jdGlvbiBvbmxv
YWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNi
ID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1l
KCk7CisgICAgICAgICAgICB2YXIgZW5kID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAg
ICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChl
bmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIzOSw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsK
ICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2
YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gY3VycmVudFRp
bWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIg
PSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMv
SlNCZW5jaC9mYWNlYm9vay1jaHJvbWUvdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC9mYWNlYm9vay1jaHJvbWUvdXJlbS5qcwppbmRleCAwNmQxZjAxMjc0ODZlMmRkODAxMWQwYTU1
YjQzN2M4ZjgzYThhYzkzLi5lZWFkMjU5MzBjNWNkODFhMTlhMDMxYjc3MWRkM2MyYzE0ZmYyZjNj
IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZmFjZWJvb2stY2hyb21lL3Vy
ZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWNocm9tZS91cmVt
LmpzCkBAIC0xODYsNiArMTg2LDE4IEBAIGVsc2UgaWYgKHJpIDwgZSkgewogICAgICAgICB9CiAg
ICAgfTsKIAorICAgIHZhciBjdXJyZW50VGltZUluTVM7CisgICAgaWYgKGluaGFybmVzcykgewor
ICAgICAgICBjdXJyZW50VGltZUluTVMgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUzsK
KyAgICB9IGVsc2UgeworICAgICAgICBpZiAod2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5w
ZXJmb3JtYW5jZS5ub3cpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigp
IHsgcmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3coKSB9OworICAgICAgICBlbHNlIGlmICh0
eXBlb2YgcHJlY2lzZVRpbWUgIT09ICd1bmRlZmluZWQnKQorICAgICAgICAgICAgY3VycmVudFRp
bWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBwcmVjaXNlVGltZSgpICogMTAwMDsgfTsKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJl
dHVybiBEYXRlLm5vdygpOyB9OworICAgIH0KKwogICAgIC8vIHRoZSBhY3R1YWwgcmVwbGF5IHJ1
bm5lcgogICAgIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAgdHJ5IHsKQEAgLTE5NCw3ICsy
MDYsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVw
bGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5k
ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gY3VycmVudFRp
bWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZh
ciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIzOSw3IEBA
IGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRo
ZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAg
ICAgdmFyIHN0ID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVs
bCkgewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1maXJlZm94LXdpbi91cmVtLmpz
IGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gtd2luL3VyZW0uanMK
aW5kZXggMGUxZTc4M2U5YjBmZGFiMjI2NTlhNzg1ZmEwNTQ5ZjMwZjNkY2U1ZS4uNzM0ZTM4ODE3
ZmM3NmQ3OWJmNWUyMDY5MzhmN2RlNTdhYjQzMjVmNCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VU
ZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gtd2luL3VyZW0uanMKKysrIGIvUGVyZm9ybWFu
Y2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gtd2luL3VyZW0uanMKQEAgLTE4Niw2ICsx
ODYsMTggQEAgZWxzZSBpZiAocmkgPCBlKSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFy
IGN1cnJlbnRUaW1lSW5NUzsKKyAgICBpZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRU
aW1lSW5NUyA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7Cisg
ICAgICAgIGlmICh3aW5kb3cucGVyZm9ybWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykK
KyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93
LnBlcmZvcm1hbmNlLm5vdygpIH07CisgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGlt
ZSAhPT0gJ3VuZGVmaW5lZCcpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlv
bigpIHsgcmV0dXJuIHByZWNpc2VUaW1lKCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAg
ICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7
IH07CisgICAgfQorCiAgICAgLy8gdGhlIGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rp
b24gb25sb2FkKCkgewogICAgICAgICB0cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9u
IG9ubG9hZCgpIHsKIAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2
YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdl
dFRpbWUoKTsKKyAgICAgICAgICAgIHZhciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAg
ICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAi
ICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2Fk
KCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAg
ICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJy
ZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAg
ICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VU
ZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWZpcmVmb3gvdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMv
SlNCZW5jaC9mYWNlYm9vay1maXJlZm94L3VyZW0uanMKaW5kZXggZmFjZWI4YTI0NTRjMzE3ZTUw
YTZlMzY5OTc1MDAzNDhiYmQ2OWIxYS4uZDUzYjUyZjg4N2RkNzNhMmNlM2RkYTc1YTkyNjcyMzQ0
NzBkMGQ2OCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2ZhY2Vib29rLWZp
cmVmb3gvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZmFjZWJvb2stZmly
ZWZveC91cmVtLmpzCkBAIC0xODYsNiArMTg2LDE4IEBAIGVsc2UgaWYgKHJpIDwgZSkgewogICAg
ICAgICB9CiAgICAgfTsKIAorICAgIHZhciBjdXJyZW50VGltZUluTVM7CisgICAgaWYgKGluaGFy
bmVzcykgeworICAgICAgICBjdXJyZW50VGltZUluTVMgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRU
aW1lSW5NUzsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAod2luZG93LnBlcmZvcm1hbmNlICYm
IHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBm
dW5jdGlvbigpIHsgcmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3coKSB9OworICAgICAgICBl
bHNlIGlmICh0eXBlb2YgcHJlY2lzZVRpbWUgIT09ICd1bmRlZmluZWQnKQorICAgICAgICAgICAg
Y3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBwcmVjaXNlVGltZSgpICogMTAw
MDsgfTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rp
b24oKSB7IHJldHVybiBEYXRlLm5vdygpOyB9OworICAgIH0KKwogICAgIC8vIHRoZSBhY3R1YWwg
cmVwbGF5IHJ1bm5lcgogICAgIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAgdHJ5IHsKQEAg
LTE5NCw3ICsyMDYsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0g
SlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAg
ICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0g
Y3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAg
ICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcg
KzIzOSw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAg
ICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUo
KTsKKyAgICAgICAgdmFyIHN0ID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChq
ciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0K
ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1zYWZhcmkvdXJl
bS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9mYWNlYm9vay1zYWZhcmkvdXJlbS5qcwpp
bmRleCBkNTRlZmQ5YTk1NzAyMThkODRlOTIxNmFjYTA2OWVlZmYyNTg3Y2NlLi4xNzhjNTYzNmVl
ZmE3ZmQzODVjYzVmOGRiZjU2MTQ1MWY1M2I5OTE1IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRl
c3RzL0pTQmVuY2gvZmFjZWJvb2stc2FmYXJpL3VyZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0
cy9KU0JlbmNoL2ZhY2Vib29rLXNhZmFyaS91cmVtLmpzCkBAIC0xODYsNiArMTg2LDE4IEBAIGVs
c2UgaWYgKHJpIDwgZSkgewogICAgICAgICB9CiAgICAgfTsKIAorICAgIHZhciBjdXJyZW50VGlt
ZUluTVM7CisgICAgaWYgKGluaGFybmVzcykgeworICAgICAgICBjdXJyZW50VGltZUluTVMgPSB3
aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUzsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAo
d2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpCisgICAgICAgICAg
ICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5j
ZS5ub3coKSB9OworICAgICAgICBlbHNlIGlmICh0eXBlb2YgcHJlY2lzZVRpbWUgIT09ICd1bmRl
ZmluZWQnKQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVy
biBwcmVjaXNlVGltZSgpICogMTAwMDsgfTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY3Vy
cmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlLm5vdygpOyB9OworICAgIH0K
KwogICAgIC8vIHRoZSBhY3R1YWwgcmVwbGF5IHJ1bm5lcgogICAgIGZ1bmN0aW9uIG9ubG9hZCgp
IHsKICAgICAgICAgdHJ5IHsKQEAgLTE5NCw3ICsyMDYsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7
CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVu
Y3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7Cisg
ICAgICAgICAgICB2YXIgZW5kID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5p
c2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBz
dCkgKyAibXMiOwpAQCAtMjI3LDcgKzIzOSw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAg
ICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3Qg
PSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gY3VycmVudFRpbWVJbk1T
KCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIgPSBqcih0
cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC9nb29nbGUtY2hyb21lLXdpbi91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dv
b2dsZS1jaHJvbWUtd2luL3VyZW0uanMKaW5kZXggZjM1ZmQ3ZjdhZTMwYzE0YjRmYjM4MjY5YmRj
NWYxMDE3N2Y1YmEwYS4uYTAxNjE4NjM5MzJjM2I1YzE3YTA1ZmY5Zjk5MDM0YWZhOTc4Yjc2ZSAx
MDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1jaHJvbWUtd2luL3Vy
ZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1jaHJvbWUtd2luL3Vy
ZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAgZWxzZSBpZiAocmkgPCBlKSB7CiAgICAgICAgIH0K
ICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsKKyAgICBpZiAoaW5oYXJuZXNzKSB7
CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1T
OworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cucGVyZm9ybWFuY2UgJiYgd2luZG93
LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9u
KCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygpIH07CisgICAgICAgIGVsc2UgaWYg
KHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpCisgICAgICAgICAgICBjdXJyZW50
VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VUaW1lKCkgKiAxMDAwOyB9Owor
ICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsg
cmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAgLy8gdGhlIGFjdHVhbCByZXBsYXkg
cnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICB0cnkgewpAQCAtMTk0LDcg
KzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2YXIganIgPSBKU0JOR19S
ZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZhciBl
bmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZhciBlbmQgPSBjdXJyZW50
VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAg
dmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMjcsNyArMjM5LDcg
QEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8g
dGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAg
ICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBu
dWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1jaHJvbWUvdXJlbS5qcyBiL1Bl
cmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtY2hyb21lL3VyZW0uanMKaW5kZXggOTlhY2Q5
NTFiYzEzNmNjODM1MGI3OTQwNzlkMTQ5NzdlODJhNzM0OC4uZTZiN2ZmZDRkYjZiNmM4MzFhZGJh
NGY0YmRjOWIyMDM0YjQ4YzZjYyAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNo
L2dvb2dsZS1jaHJvbWUvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29v
Z2xlLWNocm9tZS91cmVtLmpzCkBAIC0xODksNiArMTg5LDE4IEBAIGVsc2UgaWYgKHJpIDwgZSkg
ewogICAgICAgICB9CiAgICAgfTsKIAorICAgIHZhciBjdXJyZW50VGltZUluTVM7CisgICAgaWYg
KGluaGFybmVzcykgeworICAgICAgICBjdXJyZW50VGltZUluTVMgPSB3aW5kb3cucGFyZW50LmN1
cnJlbnRUaW1lSW5NUzsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAod2luZG93LnBlcmZvcm1h
bmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpCisgICAgICAgICAgICBjdXJyZW50VGltZUlu
TVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3coKSB9OworICAg
ICAgICBlbHNlIGlmICh0eXBlb2YgcHJlY2lzZVRpbWUgIT09ICd1bmRlZmluZWQnKQorICAgICAg
ICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBwcmVjaXNlVGltZSgp
ICogMTAwMDsgfTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0g
ZnVuY3Rpb24oKSB7IHJldHVybiBEYXRlLm5vdygpOyB9OworICAgIH0KKwogICAgIC8vIHRoZSBh
Y3R1YWwgcmVwbGF5IHJ1bm5lcgogICAgIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAgdHJ5
IHsKQEAgLTE5Nyw3ICsyMDksNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFy
IGpyID0gSlNCTkdfUmVwbGF5JDsKICAgICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAg
ICAgICAgICB2YXIgZW5kID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIg
ZW5kID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAK
ICAgICAgICAgICAgIHZhciBtc2cgPSAiVGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAt
MjMwLDcgKzI0Miw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwog
CiAgICAgICAgIC8vIHRoZW4gdGltZSBpdAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdl
dFRpbWUoKTsKKyAgICAgICAgdmFyIHN0ID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdo
aWxlIChqciAhPT0gbnVsbCkgewogICAgICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAg
ICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtZmlyZWZv
eC13aW4vdXJlbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtZmlyZWZveC13
aW4vdXJlbS5qcwppbmRleCA4M2I1MmFmOTJkZDVjYmJjOWFmYzA4YzMyYzBiMjhlYmFmZWU1NTIy
Li43ZDY2NzA2ZmJiOGI1Y2VmYTAzMjZiNWNmODM1OWQxNDg4MTFlMjM0IDEwMDY0NAotLS0gYS9Q
ZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29vZ2xlLWZpcmVmb3gtd2luL3VyZW0uanMKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1maXJlZm94LXdpbi91cmVtLmpzCkBAIC0x
ODYsNiArMTg2LDE4IEBAIGVsc2UgaWYgKHJpIDwgZSkgewogICAgICAgICB9CiAgICAgfTsKIAor
ICAgIHZhciBjdXJyZW50VGltZUluTVM7CisgICAgaWYgKGluaGFybmVzcykgeworICAgICAgICBj
dXJyZW50VGltZUluTVMgPSB3aW5kb3cucGFyZW50LmN1cnJlbnRUaW1lSW5NUzsKKyAgICB9IGVs
c2UgeworICAgICAgICBpZiAod2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5j
ZS5ub3cpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJu
IHdpbmRvdy5wZXJmb3JtYW5jZS5ub3coKSB9OworICAgICAgICBlbHNlIGlmICh0eXBlb2YgcHJl
Y2lzZVRpbWUgIT09ICd1bmRlZmluZWQnKQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0g
ZnVuY3Rpb24oKSB7IHJldHVybiBwcmVjaXNlVGltZSgpICogMTAwMDsgfTsKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiBEYXRl
Lm5vdygpOyB9OworICAgIH0KKwogICAgIC8vIHRoZSBhY3R1YWwgcmVwbGF5IHJ1bm5lcgogICAg
IGZ1bmN0aW9uIG9ubG9hZCgpIHsKICAgICAgICAgdHJ5IHsKQEAgLTE5NCw3ICsyMDYsNyBAQCBm
dW5jdGlvbiBvbmxvYWQoKSB7CiAKICAgICAgICAgdmFyIGpyID0gSlNCTkdfUmVwbGF5JDsKICAg
ICAgICAgdmFyIGNiID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICB2YXIgZW5kID0gbmV3IERh
dGUoKS5nZXRUaW1lKCk7CisgICAgICAgICAgICB2YXIgZW5kID0gY3VycmVudFRpbWVJbk1TKCk7
CiAgICAgICAgICAgICBmaW5pc2hlZCA9IHRydWU7CiAKICAgICAgICAgICAgIHZhciBtc2cgPSAi
VGltZTogIiArIChlbmQgLSBzdCkgKyAibXMiOwpAQCAtMjI3LDcgKzIzOSw3IEBAIGZ1bmN0aW9u
IG9ubG9hZCgpIHsKICAgICAgICAganIoZmFsc2UpOwogCiAgICAgICAgIC8vIHRoZW4gdGltZSBp
dAotICAgICAgICB2YXIgc3QgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgdmFyIHN0
ID0gY3VycmVudFRpbWVJbk1TKCk7CiAgICAgICAgIHdoaWxlIChqciAhPT0gbnVsbCkgewogICAg
ICAgICAgICAganIgPSBqcih0cnVlLCBjYik7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1BlcmZv
cm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtZmlyZWZveC91ZW0uanMgYi9QZXJmb3JtYW5jZVRl
c3RzL0pTQmVuY2gvZ29vZ2xlLWZpcmVmb3gvdWVtLmpzCmluZGV4IDk4Mzc3ZjViYmIzMjZiMzU3
MjUyMWIxMGMwMDRhMjg4NDc1ZTFhZGYuLjczZWJjMDE1ZTZiNmZjYjY5Yjc1NWRlNmEwMGJlZGMz
ZTMwNDMzZTkgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9nb29nbGUtZmly
ZWZveC91ZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1maXJlZm94
L3VlbS5qcwpAQCAtMTg5LDYgKzE4OSwxOCBAQCBlbHNlIGlmIChyaSA8IGUpIHsKICAgICAgICAg
fQogICAgIH07CiAKKyAgICB2YXIgY3VycmVudFRpbWVJbk1TOworICAgIGlmIChpbmhhcm5lc3Mp
IHsKKyAgICAgICAgY3VycmVudFRpbWVJbk1TID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUlu
TVM7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5k
b3cucGVyZm9ybWFuY2Uubm93KQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rp
b24oKSB7IHJldHVybiB3aW5kb3cucGVyZm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBp
ZiAodHlwZW9mIHByZWNpc2VUaW1lICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIGN1cnJl
bnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gcHJlY2lzZVRpbWUoKSAqIDEwMDA7IH07
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkg
eyByZXR1cm4gRGF0ZS5ub3coKTsgfTsKKyAgICB9CisKICAgICAvLyB0aGUgYWN0dWFsIHJlcGxh
eSBydW5uZXIKICAgICBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIHRyeSB7CkBAIC0xOTcs
NyArMjA5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5H
X1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFy
IGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IGN1cnJl
bnRUaW1lSW5NUygpOwogICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAg
ICB2YXIgbXNnID0gIlRpbWU6ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIzMCw3ICsyNDIs
NyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAv
LyB0aGVuIHRpbWUgaXQKLSAgICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7Cisg
ICAgICAgIHZhciBzdCA9IGN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09
IG51bGwpIHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYg
LS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvZ29vZ2xlLXNhZmFyaS91cmVtLmpzIGIv
UGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2dvb2dsZS1zYWZhcmkvdXJlbS5qcwppbmRleCAzNjgw
NTMxZTU5MDZjZGFjMmIzNzBkMmJjMmRhZjBjMmM3MGQ0MDFiLi40Njk5ZmI3NjA0YjA3MDYzMzBl
MmZhYTYwMzgyYmFiNDc0NjZjZTgzIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVu
Y2gvZ29vZ2xlLXNhZmFyaS91cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC9n
b29nbGUtc2FmYXJpL3VyZW0uanMKQEAgLTE4OSw2ICsxODksMTggQEAgZWxzZSBpZiAocmkgPCBl
KSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsKKyAgICBp
ZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5wYXJlbnQu
Y3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cucGVyZm9y
bWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1l
SW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygpIH07Cisg
ICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpCisgICAg
ICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VUaW1l
KCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMg
PSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAgLy8gdGhl
IGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICB0
cnkgewpAQCAtMTk3LDcgKzIwOSw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2
YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZh
ciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsK
IAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBA
IC0yMzAsNyArMjQyLDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7
CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCku
Z2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAg
d2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL2hhcm5lc3MuanMg
Yi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvaGFybmVzcy5qcwppbmRleCA4M2ZhYTQ3ZTc1ZDg2
YjVhMWZhZTYxZGFkMDJhMzA2OGY1NmJjZjA5Li5jYWMxZTU4MDQ4NWQyNmMwYTFkNzJhNmRiZGJm
YmMyYTBjZjYwZTkxIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvaGFybmVz
cy5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvaGFybmVzcy5qcwpAQCAtMTUxLDYg
KzE1MSwxNCBAQCBmdW5jdGlvbiBydW5CZW5jaG1hcmsoKSB7CiAgICAgICAgIGlmICghKGJlbmNo
bWFyayBpbiByZXN1bHRzKSkgcmVzdWx0c1tiZW5jaG1hcmtdID0ge307CiAgICAgICAgIGlmICgh
KG1vZGUgaW4gcmVzdWx0c1tiZW5jaG1hcmtdKSkgcmVzdWx0c1tiZW5jaG1hcmtdW21vZGVdID0g
W107CiAKKyAgICAgICAgLy8gRXhwb3NlIHRpbWUgbWVhc3VyaW5nIGZ1bmN0aW9uLgorICAgICAg
ICBpZiAod2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpCisgICAg
ICAgICAgICB3aW5kb3cuY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiB3aW5k
b3cucGVyZm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBpZiAodHlwZW9mIHByZWNpc2VU
aW1lICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIHdpbmRvdy5jdXJyZW50VGltZUluTVMg
PSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VUaW1lKCkgKiAxMDAwOyB9OworICAgICAgICBl
bHNlCisgICAgICAgICAgICB3aW5kb3cuY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJl
dHVybiBEYXRlLm5vdygpOyB9OworCiAgICAgICAgIC8vIHNldCB1cCB0aGUgcmVjZWl2ZXIKICAg
ICAgICAgaWYgKC92Ly50ZXN0KG1vZGUpKSB7CiAgICAgICAgICAgICAvLyB2ZXJpZmljYXRpb24g
bW9kZSwgd2Ugb25seSBjYXJlIGlmIHRoZXJlJ3MgYW4gZXJyb3IKZGlmZiAtLWdpdCBhL1BlcmZv
cm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVyLWNocm9tZS13aW4vcmVtLmpzIGIvUGVyZm9ybWFu
Y2VUZXN0cy9KU0JlbmNoL3R3aXR0ZXItY2hyb21lLXdpbi9yZW0uanMKaW5kZXggYTUyMTVlYzEw
YjFiMjg5MzdiYjVkM2Y2MTI0MWY3ZGYxZjUzNTQ2NS4uODc5YjE0Mjg2NGQyZTM5Y2IzMTg0ODQx
YWJlMjY4MzBjOGI2ZGNmOSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3
aXR0ZXItY2hyb21lLXdpbi9yZW0uanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3
aXR0ZXItY2hyb21lLXdpbi9yZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAgZWxzZSBpZiAocmkg
PCBlKSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsKKyAg
ICBpZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5wYXJl
bnQuY3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cucGVy
Zm9ybWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJlbnRU
aW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygpIH07
CisgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpCisg
ICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VU
aW1lKCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGltZUlu
TVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAgLy8g
dGhlIGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAg
ICB0cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAg
ICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsK
LSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAg
IHZhciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1
ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7
CkBAIC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxz
ZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRl
KCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAg
ICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsK
ICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3aXR0ZXIt
Y2hyb21lL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1jaHJvbWUv
dXJlbS5qcwppbmRleCBlMjBhYjRjYTc4YzRjNzRlNzFmYWIyNzM2OTk2N2RiNmIwNmUxNDZiLi5l
M2YzNjQzYjcxNjgwOTE0YWZhMjk4ZGVlNTZiMTEwNDY0MDhmNjhjIDEwMDY0NAotLS0gYS9QZXJm
b3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1jaHJvbWUvdXJlbS5qcworKysgYi9QZXJmb3Jt
YW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1jaHJvbWUvdXJlbS5qcwpAQCAtMTg5LDYgKzE4OSwx
OCBAQCBlbHNlIGlmIChyaSA8IGUpIHsKICAgICAgICAgfQogICAgIH07CiAKKyAgICB2YXIgY3Vy
cmVudFRpbWVJbk1TOworICAgIGlmIChpbmhhcm5lc3MpIHsKKyAgICAgICAgY3VycmVudFRpbWVJ
bk1TID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVM7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5kb3cucGVyZm9ybWFuY2Uubm93KQorICAg
ICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7IHJldHVybiB3aW5kb3cucGVy
Zm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBpZiAodHlwZW9mIHByZWNpc2VUaW1lICE9
PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkg
eyByZXR1cm4gcHJlY2lzZVRpbWUoKSAqIDEwMDA7IH07CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gRGF0ZS5ub3coKTsgfTsK
KyAgICB9CisKICAgICAvLyB0aGUgYWN0dWFsIHJlcGxheSBydW5uZXIKICAgICBmdW5jdGlvbiBv
bmxvYWQoKSB7CiAgICAgICAgIHRyeSB7CkBAIC0xOTcsNyArMjA5LDcgQEAgZnVuY3Rpb24gb25s
b2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxheSQ7CiAgICAgICAgIHZhciBj
YiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGlt
ZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IGN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICAg
ICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIgbXNnID0gIlRpbWU6ICIgKyAo
ZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIzMCw3ICsyNDIsNyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7
CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVuIHRpbWUgaXQKLSAgICAgICAg
dmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAgIHZhciBzdCA9IGN1cnJlbnRU
aW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwpIHsKICAgICAgICAgICAgIGpy
ID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0pTQmVuY2gvdHdpdHRlci1maXJlZm94LXdpbi91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9K
U0JlbmNoL3R3aXR0ZXItZmlyZWZveC13aW4vdXJlbS5qcwppbmRleCBjZGE1YzU3NzNhMWNhMGQ4
ZmEwNDA2MDk4MjMxMGEwZDE3Y2U2YTQ4Li42YTZmZmMzZjQ3MzE4M2U2ZDZiZGE0YmI2MTZkZDEw
ZmU2OGM2Y2I4IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1m
aXJlZm94LXdpbi91cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVy
LWZpcmVmb3gtd2luL3VyZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAgZWxzZSBpZiAocmkgPCBl
KSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsKKyAgICBp
ZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5wYXJlbnQu
Y3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cucGVyZm9y
bWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1l
SW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygpIH07Cisg
ICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpCisgICAg
ICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VUaW1l
KCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMg
PSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAgLy8gdGhl
IGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICB0
cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2
YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZh
ciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsK
IAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBA
IC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7
CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCku
Z2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAg
d2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3aXR0ZXItZmly
ZWZveC91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3R3aXR0ZXItZmlyZWZveC91
cmVtLmpzCmluZGV4IGYyMTg0YTUzNTk1YmE0ZTc2MmVhNDMxY2E4MzFkMGFmYzgzMTQwMWUuLjg3
MzExYmZhOWI3YWM5NDhmOGRjYTMyNDAxYTYxMzBhYzQ0MWE3ZjMgMTAwNjQ0Ci0tLSBhL1BlcmZv
cm1hbmNlVGVzdHMvSlNCZW5jaC90d2l0dGVyLWZpcmVmb3gvdXJlbS5qcworKysgYi9QZXJmb3Jt
YW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1maXJlZm94L3VyZW0uanMKQEAgLTE4OSw2ICsxODks
MTggQEAgZWxzZSBpZiAocmkgPCBlKSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1
cnJlbnRUaW1lSW5NUzsKKyAgICBpZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1l
SW5NUyA9IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAg
ICAgIGlmICh3aW5kb3cucGVyZm9ybWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAg
ICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBl
cmZvcm1hbmNlLm5vdygpIH07CisgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAh
PT0gJ3VuZGVmaW5lZCcpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigp
IHsgcmV0dXJuIHByZWNpc2VUaW1lKCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAg
ICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07
CisgICAgfQorCiAgICAgLy8gdGhlIGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24g
b25sb2FkKCkgewogICAgICAgICB0cnkgewpAQCAtMTk3LDcgKzIwOSw3IEBAIGZ1bmN0aW9uIG9u
bG9hZCgpIHsKIAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIg
Y2IgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRp
bWUoKTsKKyAgICAgICAgICAgIHZhciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAg
ICAgIGZpbmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsg
KGVuZCAtIHN0KSArICJtcyI7CkBAIC0yMzAsNyArMjQyLDcgQEAgZnVuY3Rpb24gb25sb2FkKCkg
ewogICAgICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAg
IHZhciBzdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50
VGltZUluTVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBq
ciA9IGpyKHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0
cy9KU0JlbmNoL3R3aXR0ZXItc2FmYXJpL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVu
Y2gvdHdpdHRlci1zYWZhcmkvdXJlbS5qcwppbmRleCAxODQxZmNhN2E1MTMzMGJjODdkZDE2YjEw
MGUwMDNiNjEyNmY4NTdjLi43MGNjYTllYzE0ZGVhN2MxMWMxNDk3ZTM2NGJiNjYwZWNlZjM1M2Iy
IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1zYWZhcmkvdXJl
bS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gvdHdpdHRlci1zYWZhcmkvdXJlbS5q
cwpAQCAtMTg5LDYgKzE4OSwxOCBAQCBlbHNlIGlmIChyaSA8IGUpIHsKICAgICAgICAgfQogICAg
IH07CiAKKyAgICB2YXIgY3VycmVudFRpbWVJbk1TOworICAgIGlmIChpbmhhcm5lc3MpIHsKKyAg
ICAgICAgY3VycmVudFRpbWVJbk1TID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUluTVM7Cisg
ICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5kb3cucGVy
Zm9ybWFuY2Uubm93KQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rpb24oKSB7
IHJldHVybiB3aW5kb3cucGVyZm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBpZiAodHlw
ZW9mIHByZWNpc2VUaW1lICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1l
SW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gcHJlY2lzZVRpbWUoKSAqIDEwMDA7IH07CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1
cm4gRGF0ZS5ub3coKTsgfTsKKyAgICB9CisKICAgICAvLyB0aGUgYWN0dWFsIHJlcGxheSBydW5u
ZXIKICAgICBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIHRyeSB7CkBAIC0xOTcsNyArMjA5
LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5HX1JlcGxh
eSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFyIGVuZCA9
IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IGN1cnJlbnRUaW1l
SW5NUygpOwogICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAgICB2YXIg
bXNnID0gIlRpbWU6ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIzMCw3ICsyNDIsNyBAQCBm
dW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAvLyB0aGVu
IHRpbWUgaXQKLSAgICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CisgICAgICAg
IHZhciBzdCA9IGN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09IG51bGwp
IHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYgLS1naXQg
YS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tY2hyb21lLXdpbi91cmVtLmpzIGIvUGVy
Zm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLWNocm9tZS13aW4vdXJlbS5qcwppbmRleCBmNTY1
NjgyNzAwNDE1ZWNhNTc5MzhjZDJkYjMyMTE0MjNiNmQ0OWFmLi4wZGE1YzVmNDM2NmIwYmRhNTVm
YWNmOTBhZjhkOGEzYmFhOTBkNmNhIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVu
Y2gveWFob28tY2hyb21lLXdpbi91cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5j
aC95YWhvby1jaHJvbWUtd2luL3VyZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAgZWxzZSBpZiAo
cmkgPCBlKSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsK
KyAgICBpZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5w
YXJlbnQuY3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cu
cGVyZm9ybWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJl
bnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygp
IH07CisgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcp
CisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNp
c2VUaW1lKCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGlt
ZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAg
Ly8gdGhlIGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAg
ICAgICB0cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAg
ICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigp
IHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAg
ICAgIHZhciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0g
dHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJt
cyI7CkBAIC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihm
YWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBE
YXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAg
ICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNi
KTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9v
LWNocm9tZS91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLWNocm9tZS91
cmVtLmpzCmluZGV4IGU3NzkyODc4OGZlYmRjMzA3NDA0OGY0MmFmNTFmODBjOWRkYTk1MGIuLmE0
ZGZiYjU2MjNlZGExMjBjY2VjMGY5ODcwNWFhZDM0ZDRjNzNlMDcgMTAwNjQ0Ci0tLSBhL1BlcmZv
cm1hbmNlVGVzdHMvSlNCZW5jaC95YWhvby1jaHJvbWUvdXJlbS5qcworKysgYi9QZXJmb3JtYW5j
ZVRlc3RzL0pTQmVuY2gveWFob28tY2hyb21lL3VyZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAg
ZWxzZSBpZiAocmkgPCBlKSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRU
aW1lSW5NUzsKKyAgICBpZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9
IHdpbmRvdy5wYXJlbnQuY3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlm
ICh3aW5kb3cucGVyZm9ybWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAg
ICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1h
bmNlLm5vdygpIH07CisgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3Vu
ZGVmaW5lZCcpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0
dXJuIHByZWNpc2VUaW1lKCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBj
dXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAg
fQorCiAgICAgLy8gdGhlIGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2Fk
KCkgewogICAgICAgICB0cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgp
IHsKIAogICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsK
KyAgICAgICAgICAgIHZhciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZp
bmlzaGVkID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAt
IHN0KSArICJtcyI7CkBAIC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAg
ICAgICBqcihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBz
dCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUlu
TVMoKTsKICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpy
KHRydWUsIGNiKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0Jl
bmNoL3lhaG9vLWZpcmVmb3gtd2luL3VyZW0uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gv
eWFob28tZmlyZWZveC13aW4vdXJlbS5qcwppbmRleCA4YWQ5ZGFkNTVjYzdjMmRmYjcwYzY0NDE5
MmUzMjg0OWYyZGU2NTg1Li41MzcxN2RjNGFjY2MyZjZlNzUyY2UzYjgzZGJkNzRmZjA1M2Y4M2Iz
IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tZmlyZWZveC13aW4v
dXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tZmlyZWZveC13aW4v
dXJlbS5qcwpAQCAtMTg2LDYgKzE4NiwxOCBAQCBlbHNlIGlmIChyaSA8IGUpIHsKICAgICAgICAg
fQogICAgIH07CiAKKyAgICB2YXIgY3VycmVudFRpbWVJbk1TOworICAgIGlmIChpbmhhcm5lc3Mp
IHsKKyAgICAgICAgY3VycmVudFRpbWVJbk1TID0gd2luZG93LnBhcmVudC5jdXJyZW50VGltZUlu
TVM7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKHdpbmRvdy5wZXJmb3JtYW5jZSAmJiB3aW5k
b3cucGVyZm9ybWFuY2Uubm93KQorICAgICAgICAgICAgY3VycmVudFRpbWVJbk1TID0gZnVuY3Rp
b24oKSB7IHJldHVybiB3aW5kb3cucGVyZm9ybWFuY2Uubm93KCkgfTsKKyAgICAgICAgZWxzZSBp
ZiAodHlwZW9mIHByZWNpc2VUaW1lICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIGN1cnJl
bnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gcHJlY2lzZVRpbWUoKSAqIDEwMDA7IH07
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkg
eyByZXR1cm4gRGF0ZS5ub3coKTsgfTsKKyAgICB9CisKICAgICAvLyB0aGUgYWN0dWFsIHJlcGxh
eSBydW5uZXIKICAgICBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIHRyeSB7CkBAIC0xOTQs
NyArMjA2LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogCiAgICAgICAgIHZhciBqciA9IEpTQk5H
X1JlcGxheSQ7CiAgICAgICAgIHZhciBjYiA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgdmFy
IGVuZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICAgICAgdmFyIGVuZCA9IGN1cnJl
bnRUaW1lSW5NUygpOwogICAgICAgICAgICAgZmluaXNoZWQgPSB0cnVlOwogCiAgICAgICAgICAg
ICB2YXIgbXNnID0gIlRpbWU6ICIgKyAoZW5kIC0gc3QpICsgIm1zIjsKQEAgLTIyNyw3ICsyMzks
NyBAQCBmdW5jdGlvbiBvbmxvYWQoKSB7CiAgICAgICAgIGpyKGZhbHNlKTsKIAogICAgICAgICAv
LyB0aGVuIHRpbWUgaXQKLSAgICAgICAgdmFyIHN0ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7Cisg
ICAgICAgIHZhciBzdCA9IGN1cnJlbnRUaW1lSW5NUygpOwogICAgICAgICB3aGlsZSAoanIgIT09
IG51bGwpIHsKICAgICAgICAgICAgIGpyID0ganIodHJ1ZSwgY2IpOwogICAgICAgICB9CmRpZmYg
LS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVuY2gveWFob28tZmlyZWZveC91cmVtLmpzIGIv
UGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLWZpcmVmb3gvdXJlbS5qcwppbmRleCAwYjRk
NDc5MjdjYjllOWE1ODE2YmNmZWU2MTZhY2I2Y2ZlZjVlNDE3Li40NTdlNjZjMzJlM2RkMGY3M2Zh
OTE2NjU0NWRjM2I0N2Y3NjliNzM2IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL0pTQmVu
Y2gveWFob28tZmlyZWZveC91cmVtLmpzCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvSlNCZW5jaC95
YWhvby1maXJlZm94L3VyZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAgZWxzZSBpZiAocmkgPCBl
KSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5NUzsKKyAgICBp
ZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRvdy5wYXJlbnQu
Y3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5kb3cucGVyZm9y
bWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1cnJlbnRUaW1l
SW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5vdygpIH07Cisg
ICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5lZCcpCisgICAg
ICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHByZWNpc2VUaW1l
KCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMg
PSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAgICAgLy8gdGhl
IGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICB0
cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAogICAgICAgICB2
YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAgICAgICAgIHZh
ciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVkID0gdHJ1ZTsK
IAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSArICJtcyI7CkBA
IC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBqcihmYWxzZSk7
CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5ldyBEYXRlKCku
Z2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAg
d2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUsIGNiKTsKICAg
ICAgICAgfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLXNhZmFy
aS91cmVtLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9KU0JlbmNoL3lhaG9vLXNhZmFyaS91cmVtLmpz
CmluZGV4IGNjOTEyODE1M2I3YzQ5N2ZlOGU3Y2M3OTRhZTQ4ZWU1OTM0YTE3YWEuLmVlNWM3ODU1
OGM4NDg3YTFhNDhjNDI5YWRjNjE4MDQ3YjY5MmViYjYgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNl
VGVzdHMvSlNCZW5jaC95YWhvby1zYWZhcmkvdXJlbS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3Rz
L0pTQmVuY2gveWFob28tc2FmYXJpL3VyZW0uanMKQEAgLTE4Niw2ICsxODYsMTggQEAgZWxzZSBp
ZiAocmkgPCBlKSB7CiAgICAgICAgIH0KICAgICB9OwogCisgICAgdmFyIGN1cnJlbnRUaW1lSW5N
UzsKKyAgICBpZiAoaW5oYXJuZXNzKSB7CisgICAgICAgIGN1cnJlbnRUaW1lSW5NUyA9IHdpbmRv
dy5wYXJlbnQuY3VycmVudFRpbWVJbk1TOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh3aW5k
b3cucGVyZm9ybWFuY2UgJiYgd2luZG93LnBlcmZvcm1hbmNlLm5vdykKKyAgICAgICAgICAgIGN1
cnJlbnRUaW1lSW5NUyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gd2luZG93LnBlcmZvcm1hbmNlLm5v
dygpIH07CisgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBwcmVjaXNlVGltZSAhPT0gJ3VuZGVmaW5l
ZCcpCisgICAgICAgICAgICBjdXJyZW50VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHBy
ZWNpc2VUaW1lKCkgKiAxMDAwOyB9OworICAgICAgICBlbHNlCisgICAgICAgICAgICBjdXJyZW50
VGltZUluTVMgPSBmdW5jdGlvbigpIHsgcmV0dXJuIERhdGUubm93KCk7IH07CisgICAgfQorCiAg
ICAgLy8gdGhlIGFjdHVhbCByZXBsYXkgcnVubmVyCiAgICAgZnVuY3Rpb24gb25sb2FkKCkgewog
ICAgICAgICB0cnkgewpAQCAtMTk0LDcgKzIwNiw3IEBAIGZ1bmN0aW9uIG9ubG9hZCgpIHsKIAog
ICAgICAgICB2YXIganIgPSBKU0JOR19SZXBsYXkkOwogICAgICAgICB2YXIgY2IgPSBmdW5jdGlv
bigpIHsKLSAgICAgICAgICAgIHZhciBlbmQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKKyAgICAg
ICAgICAgIHZhciBlbmQgPSBjdXJyZW50VGltZUluTVMoKTsKICAgICAgICAgICAgIGZpbmlzaGVk
ID0gdHJ1ZTsKIAogICAgICAgICAgICAgdmFyIG1zZyA9ICJUaW1lOiAiICsgKGVuZCAtIHN0KSAr
ICJtcyI7CkBAIC0yMjcsNyArMjM5LDcgQEAgZnVuY3Rpb24gb25sb2FkKCkgewogICAgICAgICBq
cihmYWxzZSk7CiAKICAgICAgICAgLy8gdGhlbiB0aW1lIGl0Ci0gICAgICAgIHZhciBzdCA9IG5l
dyBEYXRlKCkuZ2V0VGltZSgpOworICAgICAgICB2YXIgc3QgPSBjdXJyZW50VGltZUluTVMoKTsK
ICAgICAgICAgd2hpbGUgKGpyICE9PSBudWxsKSB7CiAgICAgICAgICAgICBqciA9IGpyKHRydWUs
IGNiKTsKICAgICAgICAgfQo=
</data>
<flag name="review"
          id="303901"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>