<?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>138809</bug_id>
          
          <creation_ts>2014-11-17 15:57:17 -0800</creation_ts>
          <short_desc>Add initial layout testing coverage for timer throttling</short_desc>
          <delta_ts>2014-11-17 17:14:47 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>138292</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1049334</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-17 15:57:17 -0800</bug_when>
    <thetext>Add initial layout testing coverage for timer throttling.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1049338</commentid>
    <comment_count>1</comment_count>
      <attachid>241746</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-17 16:15:46 -0800</bug_when>
    <thetext>Created attachment 241746
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1049344</commentid>
    <comment_count>2</comment_count>
      <attachid>241746</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-17 16:27:21 -0800</bug_when>
    <thetext>Comment on attachment 241746
Patch

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

&gt; LayoutTests/fast/dom/repeating-timer-visible-element-throttling.html:22
&gt; +    // Do not use shouldBeTrue() here because it would cause a DOM tree mutable and

Arg, typo: &quot;mutable&quot;. I&apos;ll fix before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1049345</commentid>
    <comment_count>3</comment_count>
      <attachid>241747</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-17 16:30:05 -0800</bug_when>
    <thetext>Created attachment 241747
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1049364</commentid>
    <comment_count>4</comment_count>
      <attachid>241747</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-17 17:14:39 -0800</bug_when>
    <thetext>Comment on attachment 241747
Patch

Clearing flags on attachment: 241747

Committed r176239: &lt;http://trac.webkit.org/changeset/176239&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1049365</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-17 17:14:47 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241746</attachid>
            <date>2014-11-17 16:15:46 -0800</date>
            <delta_ts>2014-11-17 16:30:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138809-20141117161557.patch</filename>
            <type>text/plain</type>
            <size>18110</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2MjMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJiNGRkYjc3ZTQ3OTkw
ZGMyMTgwZjJlYTkyNzY3YTU3YmE2YjQyYS4uYjkyOTJmM2RmZGExOTg1YTg2YTkxOWM3NTM4M2Vk
ZWVkY2NlM2M3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE0LTExLTE3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgbGF5b3V0
IHRlc3RpbmcgY292ZXJhZ2UgZm9yIHRpbWVyIHRocm90dGxpbmcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODgwOQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBpc1RpbWVyVGhyb3R0bGVkKCkgQVBJ
IHRvIEludGVybmFscyBzbyB0aGF0IHdlIGNhbiBhZGQgbGF5b3V0IHRlc3QKKyAgICAgICAgY292
ZXJhZ2UgZm9yIHRpbWVyIHRocm90dGxpbmcuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvZG9tL25l
c3RlZC10aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwKKyAgICAgICAgICAg
ICAgIGZhc3QvZG9tL25lc3RlZC10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5odG1s
CisgICAgICAgICAgICAgICBmYXN0L2RvbS9yZXBlYXRpbmctdGltZXItaW52aXNpYmxlLWVsZW1l
bnQtdGhyb3R0bGluZy5odG1sCisgICAgICAgICAgICAgICBmYXN0L2RvbS9yZXBlYXRpbmctdGlt
ZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbAorCisgICAgICAgICogcGFnZS9ET01U
aW1lci5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkludGVybmFsczo6aXNUaW1lclRocm90dGxlZCk6CisgICAgICAgICogdGVzdGluZy9JbnRl
cm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5pZGw6CisKIDIwMTQtMTEtMTcg
IERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIExpYmRp
c3BhdGNoLCBEeWxkLCBJT0tpdCwgTWFjaCwgTlNQb2ludGVyRnVuY3Rpb25zLCBNb2JpbGVHZXN0
YWx0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVRpbWVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0RPTVRpbWVyLmgKaW5kZXggMWIxY2Y4N2JhYjllM2I3ZDJmMDM5ZGNlOTRm
NzRhNmU2MzRhMzI0ZC4uNjgzMzQ2YjBkOTk3OGE2NDhhOWZmODZkYWRiYzY3MTI4ZWFjMzVlNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRE9NVGltZXIuaApAQCAtNjEsNiArNjEsOCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKICAgICBwcml2YXRlOgogICAgICAgICBET01UaW1lcihTY3JpcHRFeGVjdXRpb25Db250
ZXh0Jiwgc3RkOjp1bmlxdWVfcHRyPFNjaGVkdWxlZEFjdGlvbj4sIGludCBpbnRlcnZhbCwgYm9v
bCBzaW5nbGVTaG90KTsKKyAgICAgICAgZnJpZW5kIGNsYXNzIEludGVybmFsczsKKwogICAgICAg
ICBkb3VibGUgaW50ZXJ2YWxDbGFtcGVkVG9NaW5pbXVtKCkgY29uc3Q7CiAKICAgICAgICAgYm9v
bCBpc0ludGVydmFsRGVwZW5kZW50T25WaWV3cG9ydCgpIGNvbnN0IHsgcmV0dXJuIG1fdGhyb3R0
bGVTdGF0ZSA9PSBTaG91bGRUaHJvdHRsZSAmJiAhbV9lbGVtZW50c0NhdXNpbmdUaHJvdHRsaW5n
LmlzRW1wdHkoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IGFjYTcx
YjVjNGYwN2FiYzNhOTU1ZDJlNWExM2Y1NDNiNDllN2M3ZmMuLmFkMjVhMzM5NjY5NmI0ZjBiNDEw
NjEzMWMyNDA0MGM1NTUwYTJkZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAK
QEAgLTYyNiw2ICs2MjYsMTYgQEAgdm9pZCBJbnRlcm5hbHM6OnNldFNoYWRvd1BzZXVkb0lkKEVs
ZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFN0cmluZyYgaWQsIEV4Y2VwdGlvbkMKICAgICByZXR1cm4g
ZWxlbWVudC0+c2V0UHNldWRvKGlkKTsKIH0KIAorYm9vbCBJbnRlcm5hbHM6OmlzVGltZXJUaHJv
dHRsZWQoaW50IHRpbWVvdXRJZCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgRE9NVGltZXIq
IHRpbWVyID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5maW5kVGltZW91dCh0aW1lb3V0SWQp
OworICAgIGlmICghdGltZXIpIHsKKyAgICAgICAgZWMgPSBOT1RfRk9VTkRfRVJSOworICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIHJldHVybiB0aW1lci0+bV90aHJvdHRsZVN0YXRl
ID09IERPTVRpbWVyOjpTaG91bGRUaHJvdHRsZTsKK30KKwogU3RyaW5nIEludGVybmFsczo6dmlz
aWJsZVBsYWNlaG9sZGVyKEVsZW1lbnQqIGVsZW1lbnQpCiB7CiAgICAgaWYgKGlzPEhUTUxUZXh0
Rm9ybUNvbnRyb2xFbGVtZW50PihlbGVtZW50KSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmgKaW5kZXggZjkxN2U1MzljNGVkMTI1ZWY2OWI4Y2IwZjZiMDMzNzJkMmI1ZmI3Zi4uN2U3NzQ0
YzhiNDdhOGFjZGE3NDNjNTUxZDllZjY4YWNlYjYyMmQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5oCkBAIC05Miw2ICs5Miw5IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgc2hhZG93UHNl
dWRvSWQoRWxlbWVudCosIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldFNoYWRvd1BzZXVk
b0lkKEVsZW1lbnQqLCBjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CiAKKyAgICAvLyBE
T01UaW1lcnMgdGhyb3R0bGluZyB0ZXN0aW5nLgorICAgIGJvb2wgaXNUaW1lclRocm90dGxlZChp
bnQgdGltZW91dElkLCBFeGNlcHRpb25Db2RlJik7CisKICAgICAvLyBTcGF0aWFsIE5hdmlnYXRp
b24gdGVzdGluZy4KICAgICB1bnNpZ25lZCBsYXN0U3BhdGlhbE5hdmlnYXRpb25DYW5kaWRhdGVD
b3VudChFeGNlcHRpb25Db2RlJikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmlkbAppbmRleCA2ZDUxMjAwZDgxMGEwZThhMjIyZWY4MWE0ZDZjNDJlMzhiOTRjNTk5Li5jNmQz
MzVlYTkwZDRiYWNlZjZmYzk4MjAxMmRhMWU5ODVlNmIwNDQzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCkBAIC0yMzgsNiArMjM4LDkgQEAgZW51bSBQYWdlT3ZlcmxheVR5cGUg
ewogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc3RhcnRUcmFja2luZ1JlcGFpbnRzKCk7CiAg
ICAgW1JhaXNlc0V4Y2VwdGlvbl0gdm9pZCBzdG9wVHJhY2tpbmdSZXBhaW50cygpOwogCisgICAg
Ly8gUXVlcnkgaWYgYSB0aW1lciBpcyBjdXJyZW50bHkgdGhyb3R0bGVkLCB0byBkZWJ1ZyB0aW1l
ciB0aHJvdHRsaW5nLgorICAgIFtSYWlzZXNFeGNlcHRpb25dIGJvb2xlYW4gaXNUaW1lclRocm90
dGxlZChsb25nIHRpbWVySGFuZGxlKTsKKwogICAgIC8vIHxub2RlfCBzaG91bGQgYmUgRG9jdW1l
bnQsIEhUTUxJRnJhbWVFbGVtZW50LCBvciB1bnNwZWNpZmllZC4KICAgICAvLyBJZiB8bm9kZXwg
aXMgYW4gSFRNTElGcmFtZUVsZW1lbnQsIGl0IGFzc3VtZXMgbm9kZS5jb250ZW50RG9jdW1lbnQg
aXMKICAgICAvLyBzcGVjaWZpZWQgd2l0aG91dCBzZWN1cml0eSBjaGVja3MuIFVuc3BlY2lmaWVk
IG1lYW5zIHRoaXMgZG9jdW1lbnQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWFlNTczZmI1M2YzZjcyNmViNjFiNzk3NzFj
OGM3NWNhZGJhNmFkOC4uYzE5YjcxNGIxYTAwODlmNzcyMjhiMzU3MWMwZDIwYWEzYjc5OTJjYyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE0LTExLTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgbGF5b3V0IHRlc3RpbmcgY292ZXJhZ2Ug
Zm9yIHRpbWVyIHRocm90dGxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEzODgwOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFkZCBpbml0aWFsIGxheW91dCB0ZXN0IGNvdmVyYWdlIGZvciB0aW1lciB0
aHJvdHRsaW5nLiBJdCBjdXJyZW50bHkKKyAgICAgICAgY292ZXJzIHRoZSBmb2xsb3dpbmcgY2Fz
ZXM6CisgICAgICAgIC0gUmVwZWF0aW5nIHRpbWVyIGNoYW5nZXMgdGhlIHN0eWxlIG9mIGFuIEVs
ZW1lbnQgdGhhdCBpcyB2aXNpYmxlCisgICAgICAgIC0gUmVwZWF0aW5nIHRpbWVyIGNoYW5nZXMg
dGhlIHN0eWxlIG9mIGFuIEVsZW1lbnQgdGhhdCBpcyBub3QgdmlzaWJsZQorICAgICAgICAgIChp
LmUuICJkaXNwbGF5OiBub25lIikuCisgICAgICAgIC0gUmVwZWF0aW5nIHRpbWVyIGRvaW5nIERP
TSBtdXRhdGlvbnMKKyAgICAgICAgLSBOZXN0ZWQgdGltZXIgY2hhbmdlcyB0aGUgc3R5bGUgb2Yg
YW4gRWxlbWVudCB0aGF0IGlzIHZpc2libGUKKyAgICAgICAgLSBOZXN0ZWQgdGltZXIgY2hhbmdl
cyB0aGUgc3R5bGUgb2YgYW4gRWxlbWVudCB0aGF0IGlzIG5vdCB2aXNpYmxlCisgICAgICAgICAg
KGkuZS4gImRpc3BsYXk6IG5vbmUiKS4KKyAgICAgICAgLSBOZXN0ZWQgdGltZXIgZG9pbmcgRE9N
IG11dGF0aW9ucworCisgICAgICAgIE1vcmUgbGF5b3V0IHRlc3RzIGFyZSBjb21pbmcuIEluIHBh
cnRpY3VsYXIsIHdlIHNob3VsZCBhZGQgY292ZXJhZ2UgZm9yCisgICAgICAgIGNoYW5naW5nIHRo
ZSBzdHlsZSBvZiBhbiBFbGVtZW50IG91dHNpZGUgdGhlIHZpZXdwb3J0LiBXZSBzaG91bGQgYWxz
bworICAgICAgICBUZXN0IHRoYXQgdGhlIHRpbWVyIGdldHMgdW50aHJvdHRsZWQgaWYgbmVjZXNz
YXJ5IG9uIHNjcm9sbGluZyAvIGxheW91dC4KKworICAgICAgICAqIGZhc3QvZG9tL25lc3RlZC10
aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9kb20vbmVzdGVkLXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90dGxp
bmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vbmVzdGVkLXRpbWVyLXZpc2libGUt
ZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9k
b20vbmVzdGVkLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZG9tL3JlcGVhdGluZy10aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJv
dHRsaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vcmVwZWF0aW5n
LXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLXZp
c2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWw6IEFkZGVkLgorCiAyMDE0LTExLTE3ICBBbGV4
ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIG1lZGlhL3RyYWNrL3Ry
YWNrLWluLWJhbmQtY3Vlcy1hZGRlZC1vbmNlLmh0bWwgZmFpbHMgc29tZXRpbWVzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9uZXN0ZWQtdGltZXItaW52aXNpYmxlLWVsZW1lbnQt
dGhyb3R0bGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9uZXN0ZWQtdGlt
ZXItaW52aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NjYxZWVmZGNhODY0Mjg0YTQzMDRkNGRiMDMyZDRjYzQ2OTNkZjdiZAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci1pbnZpc2libGUtZWxlbWVudC10
aHJvdHRsaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE4IEBACitUZXN0cyB0aGF0IGEgbmVz
dGVkIHRpbWVyIGNoYW5naW5nIHRoZSBzdHlsZSBvZiBhIG5vbi12aXNpYmxlIGVsZW1lbnQgZ2V0
cyB0aHJvdHRsZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitUaGUgdGltZXIg
c2hvdWxkIGluaXRpYWxseSBub3QgYmUgdGhyb3R0bGVkLgorUEFTUyBpbnRlcm5hbHMuaXNUaW1l
clRocm90dGxlZCh0aW1lb3V0SWQpIGlzIGZhbHNlCis1dGggaXRlcmF0aW9uLCB0aW1lciBzaG91
bGQgaGF2ZSBiZWVuIHRocm90dGxlZC4KK1BBU1Mgd2FzVGhyb3R0bGVkIGlzIHRydWUKKzZ0aCBp
dGVyYXRpb24sIHRpbWVyIHNob3VsZCBzdGlsbCBiZSB0aHJvdHRsZWQuCitQQVNTIGludGVybmFs
cy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkgaXMgdHJ1ZQorVGltZXIgbXV0YXRlZCB0aGUg
RE9NIHRyZWUuCis3dGggaXRlcmF0aW9uLCB0aW1lciBzaG91bGQgbm8gbG9uZ2VyIGJlIHRocm90
dGxlZC4KK1BBU1MgaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSBpcyBmYWxz
ZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci1pbnZpc2libGUtZWxl
bWVudC10aHJvdHRsaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9uZXN0ZWQtdGltZXIt
aW52aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQyMzFjNzBhMmNl
ZjRjYmM1MjA1Njk4MGZlNGY3ODk4ZjQ0ZDI2ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9uZXN0ZWQtdGltZXItaW52aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5o
dG1sCkBAIC0wLDAgKzEsNTggQEAKKzwhRE9DVFlQRSBodG1sPgorPGJvZHk+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxkaXYgaWQ9InRl
c3RFbGVtZW50IiBzdHlsZT0iZGlzcGxheTogbm9uZSI+VGVzdDwvZGl2PgorPHNjcmlwdD4KK2Rl
c2NyaXB0aW9uKCJUZXN0cyB0aGF0IGEgbmVzdGVkIHRpbWVyIGNoYW5naW5nIHRoZSBzdHlsZSBv
ZiBhIG5vbi12aXNpYmxlIGVsZW1lbnQgZ2V0cyB0aHJvdHRsZWQuIik7Citqc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKKwordmFyIGl0ZXJhdGlvbkNvdW50ID0gMDsKK3ZhciB0aW1lb3V0SWQ7Cit2YXIg
dGVzdEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdEVsZW1lbnQiKTsKK3Zh
ciB3YXNUaHJvdHRsZWQgPSBmYWxzZTsKKworZnVuY3Rpb24gY2hlY2tUaW1lclRocm90dGxlU3Rh
dGUoKQoreworICBpZiAoaXRlcmF0aW9uQ291bnQgPT0gNSkgeworICAgIC8vIERvIG5vdCB1c2Ug
c2hvdWxkQmVUcnVlKCkgaGVyZSBiZWNhdXNlIGl0IHdvdWxkIGNhdXNlIGEgRE9NIHRyZWUgbXV0
YWJsZSBhbmQKKyAgICAvLyB1bnRocm90dGxlIHRoZSBET00gVGltZXIuCisgICAgd2FzVGhyb3R0
bGVkID0gaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKTsKKyAgfSBlbHNlIGlm
IChpdGVyYXRpb25Db3VudCA9PSA2KSB7CisgICAgZGVidWcoIjV0aCBpdGVyYXRpb24sIHRpbWVy
IHNob3VsZCBoYXZlIGJlZW4gdGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlVHJ1ZSgid2FzVGhy
b3R0bGVkIik7CisgICAgZGVidWcoIjZ0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBzdGlsbCBi
ZSB0aHJvdHRsZWQuIik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaXNUaW1lclRocm90
dGxlZCh0aW1lb3V0SWQpIik7CisgIH0gZWxzZSBpZiAoaXRlcmF0aW9uQ291bnQgPj0gNikgewor
ICAgIC8vIFRpbWVyIHNob3VsZCBiZSB1bnRocm90dGxlZCBkdWUgdG8gdGhlIERPTSB0cmVlIG11
dGF0aW9uIGNhdXNlZCBieSBzaG91bGRCZVRydWUoKSBpbgorICAgIC8vIHRoZSBwcmV2aW91cyBp
dGVyYXRpb24uCisgICAgZGVidWcoIiIgKyBpdGVyYXRpb25Db3VudCArICJ0aCBpdGVyYXRpb24s
IHRpbWVyIHNob3VsZCBubyBsb25nZXIgYmUgdGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlRmFs
c2UoImludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBjbGVhclRp
bWVvdXQodGltZW91dElkKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgfQorfQorCitmdW5jdGlv
biB0aW1lckNhbGxiYWNrKCkKK3sKKyAgKytpdGVyYXRpb25Db3VudDsKKyAgLy8gSW50ZXJhY3Qg
d2l0aCB0aGUgc3R5bGUgb2YgdGhlIGVsZW1lbnQuCisgIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0
Il0gPSAiIiArIGl0ZXJhdGlvbkNvdW50ICsgInB4IjsKKworICAvLyA1IGl0ZXJhdGlvbnMgc2hv
dWxkIGJlIHN1ZmZpY2llbnQgdG8gdGhyb3R0bGUgdGhlIHRpbWVyLgorICBpZiAoaXRlcmF0aW9u
Q291bnQgPj0gNSkgeworICAgIHNldFRpbWVvdXQoY2hlY2tUaW1lclRocm90dGxlU3RhdGUsIDAp
OworICAgIGlmIChpdGVyYXRpb25Db3VudCA9PSA3KSB7CisgICAgICAvLyBUaGUgY2FsbCB0byBk
ZWJ1ZygpIG11dGF0ZXMgdGhlIERPTSB0cmVlLgorICAgICAgZGVidWcoIlRpbWVyIG11dGF0ZWQg
dGhlIERPTSB0cmVlLiIpOworICAgIH0KKyAgfQorCisgIHRpbWVvdXRJZCA9IHNldFRpbWVvdXQo
dGltZXJDYWxsYmFjaywgMCk7Cit9CisKK3RpbWVvdXRJZCA9IHNldFRpbWVvdXQodGltZXJDYWxs
YmFjaywgMCk7CitkZWJ1ZygiVGhlIHRpbWVyIHNob3VsZCBpbml0aWFsbHkgbm90IGJlIHRocm90
dGxlZC4iKTsKK3Nob3VsZEJlRmFsc2UoImludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVv
dXRJZCkiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vbmVzdGVkLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhy
b3R0bGluZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDk5OGE0YWFjMTY0YTdkMWY2NzZkMjQ0
NmEyODY1ZWFkMzEzMzZiZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L25lc3RlZC10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxNSBAQAorVGVzdHMgdGhhdCBhIG5lc3RlZCB0aW1lciBjaGFuZ2luZyB0aGUgc3R5
bGUgb2YgYSB2aXNpYmxlIGVsZW1lbnQgZG9lcyBub3QgZ2V0IHRocm90dGxlZC4KKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1RoZSB0aW1lciBzaG91bGQgaW5pdGlhbGx5IG5vdCBi
ZSB0aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkg
aXMgZmFsc2UKKzV0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBub3QgaGF2ZSBiZWVuIHRocm90
dGxlZC4KK1BBU1Mgd2FzVGhyb3R0bGVkIGlzIGZhbHNlCis2dGggaXRlcmF0aW9uLCB0aW1lciBz
aG91bGQgc3RpbGwgYmUgdW50aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0
bGVkKHRpbWVvdXRJZCkgaXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorVGVzdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
bmVzdGVkLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9uZXN0ZWQtdGltZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jM2M0MDJiMWU0NjVmZjk3MDQ1ZWEwZjg4NzAxZmY3NzAyZDA4MzIxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbmVzdGVkLXRpbWVyLXZpc2libGUt
ZWxlbWVudC10aHJvdHRsaW5nLmh0bWwKQEAgLTAsMCArMSw0NyBAQAorPCFET0NUWVBFIGh0bWw+
Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorPGRpdiBpZD0idGVzdEVsZW1lbnQiPlRlc3Q8L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbigiVGVzdHMgdGhhdCBhIG5lc3RlZCB0aW1lciBjaGFuZ2luZyB0aGUgc3R5bGUgb2Yg
YSB2aXNpYmxlIGVsZW1lbnQgZG9lcyBub3QgZ2V0IHRocm90dGxlZC4iKTsKK2pzVGVzdElzQXN5
bmMgPSB0cnVlOworCit2YXIgaXRlcmF0aW9uQ291bnQgPSAwOwordmFyIHRpbWVvdXRJZDsKK3Zh
ciB0ZXN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RWxlbWVudCIpOwor
dmFyIHdhc1Rocm90dGxlZCA9IGZhbHNlOworCitmdW5jdGlvbiBjaGVja1RpbWVyVGhyb3R0bGlu
Z1N0YXRlKCkgeworICBpZiAoaXRlcmF0aW9uQ291bnQgPT0gNSkgeworICAgIC8vIERvIG5vdCB1
c2Ugc2hvdWxkQmVUcnVlKCkgaGVyZSBiZWNhdXNlIGl0IHdvdWxkIGNhdXNlIGEgRE9NIHRyZWUg
bXV0YWJsZSBhbmQKKyAgICAvLyB1bnRocm90dGxlIHRoZSBET00gVGltZXIuCisgICAgd2FzVGhy
b3R0bGVkID0gaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKTsKKyAgfSBlbHNl
IGlmIChpdGVyYXRpb25Db3VudCA9PSA2KSB7CisgICAgZGVidWcoIjV0aCBpdGVyYXRpb24sIHRp
bWVyIHNob3VsZCBub3QgaGF2ZSBiZWVuIHRocm90dGxlZC4iKTsKKyAgICBzaG91bGRCZUZhbHNl
KCJ3YXNUaHJvdHRsZWQiKTsKKyAgICBkZWJ1ZygiNnRoIGl0ZXJhdGlvbiwgdGltZXIgc2hvdWxk
IHN0aWxsIGJlIHVudGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5p
c1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBjbGVhclRpbWVvdXQodGltZW91dElk
KTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgfQorfQorCitmdW5jdGlvbiB0aW1lckNhbGxiYWNr
KCkKK3sKKyAgKytpdGVyYXRpb25Db3VudDsKKyAgLy8gSW50ZXJhY3Qgd2l0aCB0aGUgc3R5bGUg
b2YgdGhlIGVsZW1lbnQuCisgIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0Il0gPSAiIiArIGl0ZXJh
dGlvbkNvdW50ICsgInB4IjsKKworICAvLyA1IGl0ZXJhdGlvbnMgc2hvdWxkIHN1ZmZpY2UgdG8g
dGhyb3R0bGUgdGhlIHRpbWVyLgorICBpZiAoaXRlcmF0aW9uQ291bnQgPj0gNSkKKyAgICBzZXRU
aW1lb3V0KGNoZWNrVGltZXJUaHJvdHRsaW5nU3RhdGUsIDApOworCisgIHRpbWVvdXRJZCA9IHNl
dFRpbWVvdXQodGltZXJDYWxsYmFjaywgMCk7Cit9CisKK3RpbWVvdXRJZCA9IHNldFRpbWVvdXQo
dGltZXJDYWxsYmFjaywgMCk7CitkZWJ1ZygiVGhlIHRpbWVyIHNob3VsZCBpbml0aWFsbHkgbm90
IGJlIHRocm90dGxlZC4iKTsKK3Nob3VsZEJlRmFsc2UoImludGVybmFscy5pc1RpbWVyVGhyb3R0
bGVkKHRpbWVvdXRJZCkiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90dGxp
bmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWlu
dmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM0ZDFm
MDZlMDBmNTZjNmFjNTE4ZmE4N2M2YTg0MmVlN2Q5OWQ3YzEKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9yZXBlYXRpbmctdGltZXItaW52aXNpYmxlLWVsZW1lbnQtdGhy
b3R0bGluZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOCBAQAorVGVzdHMgdGhhdCBhIHJlcGVh
dGluZyB0aW1lciBjaGFuZ2luZyB0aGUgc3R5bGUgb2YgYSBub24tdmlzaWJsZSBlbGVtZW50IGdl
dHMgdGhyb3R0bGVkLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworVGhlIHRpbWVy
IHNob3VsZCBpbml0aWFsbHkgbm90IGJlIHRocm90dGxlZC4KK1BBU1MgaW50ZXJuYWxzLmlzVGlt
ZXJUaHJvdHRsZWQodGltZW91dElkKSBpcyBmYWxzZQorNXRoIGl0ZXJhdGlvbiwgdGltZXIgc2hv
dWxkIGhhdmUgYmVlbiB0aHJvdHRsZWQuCitQQVNTIHdhc1Rocm90dGxlZCBpcyB0cnVlCis2dGgg
aXRlcmF0aW9uLCB0aW1lciBzaG91bGQgc3RpbGwgYmUgdGhyb3R0bGVkLgorUEFTUyBpbnRlcm5h
bHMuaXNUaW1lclRocm90dGxlZCh0aW1lb3V0SWQpIGlzIHRydWUKK1RpbWVyIG11dGF0ZWQgdGhl
IERPTSB0cmVlLgorN3RoIGl0ZXJhdGlvbiwgdGltZXIgc2hvdWxkIG5vIGxvbmdlciBiZSB0aHJv
dHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkgaXMgZmFs
c2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXBlYXRpbmctdGltZXItaW52aXNpYmxl
LWVsZW1lbnQtdGhyb3R0bGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5n
LXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NDk3
ZmFiNWQ3OThkNjMxZDYwM2ZmYzQzNzA5YmJjMzkyNDU5ZGFmCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRo
cm90dGxpbmcuaHRtbApAQCAtMCwwICsxLDQ2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxib2R5Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
ZGl2IGlkPSJ0ZXN0RWxlbWVudCIgc3R5bGU9ImRpc3BsYXk6IG5vbmUiPlRlc3Q8L2Rpdj4KKzxz
Y3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBhIHJlcGVhdGluZyB0aW1lciBjaGFuZ2lu
ZyB0aGUgc3R5bGUgb2YgYSBub24tdmlzaWJsZSBlbGVtZW50IGdldHMgdGhyb3R0bGVkLiIpOwor
anNUZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciBpdGVyYXRpb25Db3VudCA9IDA7Cit2YXIgdGlt
ZW91dElkOwordmFyIHRlc3RFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RF
bGVtZW50Iik7Cit2YXIgd2FzVGhyb3R0bGVkID0gZmFsc2U7CisKK2Z1bmN0aW9uIHRpbWVyQ2Fs
bGJhY2soKQoreworICArK2l0ZXJhdGlvbkNvdW50OworICAvLyBJbnRlcmFjdCB3aXRoIHRoZSBz
dHlsZSBvZiB0aGUgZWxlbWVudC4KKyAgdGVzdEVsZW1lbnQuc3R5bGVbImxlZnQiXSA9ICIiICsg
aXRlcmF0aW9uQ291bnQgKyAicHgiOworCisgIC8vIDUgaXRlcmF0aW9ucyBzaG91bGQgc3VmZmlj
ZSB0byB0aHJvdHRsZSB0aGUgdGltZXIuCisgIGlmIChpdGVyYXRpb25Db3VudCA9PSA1KSB7Cisg
ICAgLy8gRG8gbm90IHVzZSBzaG91bGRCZVRydWUoKSBoZXJlIGJlY2F1c2UgaXQgd291bGQgY2F1
c2UgYSBET00gdHJlZSBtdXRhYmxlIGFuZAorICAgIC8vIHVudGhyb3R0bGUgdGhlIERPTSBUaW1l
ci4KKyAgICB3YXNUaHJvdHRsZWQgPSBpbnRlcm5hbHMuaXNUaW1lclRocm90dGxlZCh0aW1lb3V0
SWQpOworICB9IGVsc2UgaWYgKGl0ZXJhdGlvbkNvdW50ID09IDYpIHsKKyAgICBkZWJ1ZygiNXRo
IGl0ZXJhdGlvbiwgdGltZXIgc2hvdWxkIGhhdmUgYmVlbiB0aHJvdHRsZWQuIik7CisgICAgc2hv
dWxkQmVUcnVlKCJ3YXNUaHJvdHRsZWQiKTsKKyAgICBkZWJ1ZygiNnRoIGl0ZXJhdGlvbiwgdGlt
ZXIgc2hvdWxkIHN0aWxsIGJlIHRocm90dGxlZC4iKTsKKyAgICBzaG91bGRCZVRydWUoImludGVy
bmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBkZWJ1ZygiVGltZXIgbXV0
YXRlZCB0aGUgRE9NIHRyZWUuIik7CisgIH0gZWxzZSBpZiAoaXRlcmF0aW9uQ291bnQgPj0gNikg
eworICAgIC8vIFRpbWVyIHNob3VsZCBiZSB1bnRocm90dGxlZCBkdWUgdG8gdGhlIERPTSB0cmVl
IG11dGF0aW9uIGNhdXNlZCBieSBzaG91bGRCZVRydWUoKSBpbgorICAgIC8vIHRoZSBwcmV2aW91
cyBpdGVyYXRpb24uCisgICAgZGVidWcoIiIgKyBpdGVyYXRpb25Db3VudCArICJ0aCBpdGVyYXRp
b24sIHRpbWVyIHNob3VsZCBubyBsb25nZXIgYmUgdGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJl
RmFsc2UoImludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBjbGVh
ckludGVydmFsKHRpbWVvdXRJZCk7CisgICAgZmluaXNoSlNUZXN0KCk7CisgIH0KK30KKwordGlt
ZW91dElkID0gc2V0SW50ZXJ2YWwodGltZXJDYWxsYmFjaywgMCk7CitkZWJ1ZygiVGhlIHRpbWVy
IHNob3VsZCBpbml0aWFsbHkgbm90IGJlIHRocm90dGxlZC4iKTsKK3Nob3VsZEJlRmFsc2UoImlu
dGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKzwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLXZpc2li
bGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L3JlcGVhdGluZy10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWIxYTc4YmRjM2NiNWI2YjY0NjY1OGQwZjBiZDg5OGMzZWQwODAxOQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3JlcGVhdGluZy10aW1lci12aXNp
YmxlLWVsZW1lbnQtdGhyb3R0bGluZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorVGVz
dHMgdGhhdCBhIHJlcGVhdGluZyB0aW1lciBjaGFuZ2luZyB0aGUgc3R5bGUgb2YgYSB2aXNpYmxl
IGVsZW1lbnQgZG9lcyBub3QgZ2V0IHRocm90dGxlZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKK1RoZSB0aW1lciBzaG91bGQgaW5pdGlhbGx5IG5vdCBiZSB0aHJvdHRsZWQuCitQ
QVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkgaXMgZmFsc2UKKzV0aCBp
dGVyYXRpb24sIHRpbWVyIHNob3VsZCBub3QgaGF2ZSBiZWVuIHRocm90dGxlZC4KK1BBU1Mgd2Fz
VGhyb3R0bGVkIGlzIGZhbHNlCis2dGggaXRlcmF0aW9uLCB0aW1lciBzaG91bGQgc3RpbGwgYmUg
dW50aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkg
aXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorVGVzdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVy
LXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9y
ZXBlYXRpbmctdGltZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5hYjE0NWFiNmJjOWJhMTUxOTQ1NzM0MGYwZmI2MWI3MTcxMTc1Y2MxCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLXZpc2libGUtZWxlbWVu
dC10aHJvdHRsaW5nLmh0bWwKQEAgLTAsMCArMSw0MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8Ym9k
eT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0
PgorPGRpdiBpZD0idGVzdEVsZW1lbnQiPlRlc3Q8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlv
bigiVGVzdHMgdGhhdCBhIHJlcGVhdGluZyB0aW1lciBjaGFuZ2luZyB0aGUgc3R5bGUgb2YgYSB2
aXNpYmxlIGVsZW1lbnQgZG9lcyBub3QgZ2V0IHRocm90dGxlZC4iKTsKK2pzVGVzdElzQXN5bmMg
PSB0cnVlOworCit2YXIgaXRlcmF0aW9uQ291bnQgPSAwOwordmFyIHRpbWVvdXRJZDsKK3ZhciB0
ZXN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RWxlbWVudCIpOwordmFy
IHdhc1Rocm90dGxlZCA9IGZhbHNlOworCitmdW5jdGlvbiB0aW1lckNhbGxiYWNrKCkKK3sKKyAg
KytpdGVyYXRpb25Db3VudDsKKyAgLy8gSW50ZXJhY3Qgd2l0aCB0aGUgc3R5bGUgb2YgdGhlIGVs
ZW1lbnQuCisgIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0Il0gPSAiIiArIGl0ZXJhdGlvbkNvdW50
ICsgInB4IjsKKworICAvLyA1IGl0ZXJhdGlvbnMgc2hvdWxkIHN1ZmZpY2UgdG8gdGhyb3R0bGUg
dGhlIHRpbWVyLgorICBpZiAoaXRlcmF0aW9uQ291bnQgPT0gNSkgeworICAgIC8vIERvIG5vdCB1
c2Ugc2hvdWxkQmVUcnVlKCkgaGVyZSBiZWNhdXNlIGl0IHdvdWxkIGNhdXNlIGEgRE9NIHRyZWUg
bXV0YWJsZSBhbmQKKyAgICAvLyB1bnRocm90dGxlIHRoZSBET00gVGltZXIuCisgICAgd2FzVGhy
b3R0bGVkID0gaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKTsKKyAgfSBlbHNl
IGlmIChpdGVyYXRpb25Db3VudCA9PSA2KSB7CisgICAgZGVidWcoIjV0aCBpdGVyYXRpb24sIHRp
bWVyIHNob3VsZCBub3QgaGF2ZSBiZWVuIHRocm90dGxlZC4iKTsKKyAgICBzaG91bGRCZUZhbHNl
KCJ3YXNUaHJvdHRsZWQiKTsKKyAgICBkZWJ1ZygiNnRoIGl0ZXJhdGlvbiwgdGltZXIgc2hvdWxk
IHN0aWxsIGJlIHVudGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5p
c1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBjbGVhckludGVydmFsKHRpbWVvdXRJ
ZCk7CisgICAgZmluaXNoSlNUZXN0KCk7CisgIH0KK30KKwordGltZW91dElkID0gc2V0SW50ZXJ2
YWwodGltZXJDYWxsYmFjaywgMCk7CitkZWJ1ZygiVGhlIHRpbWVyIHNob3VsZCBpbml0aWFsbHkg
bm90IGJlIHRocm90dGxlZC4iKTsKK3Nob3VsZEJlRmFsc2UoImludGVybmFscy5pc1RpbWVyVGhy
b3R0bGVkKHRpbWVvdXRJZCkiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241747</attachid>
            <date>2014-11-17 16:30:05 -0800</date>
            <delta_ts>2014-11-17 17:14:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138809-20141117163017.patch</filename>
            <type>text/plain</type>
            <size>18110</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc2MjMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzJiNGRkYjc3ZTQ3OTkw
ZGMyMTgwZjJlYTkyNzY3YTU3YmE2YjQyYS4uNWE0YWJiYzg1MzA0OGI0NGE4OGRiMTAzY2MwYmNl
NDU2MGMxYzRhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE0LTExLTE3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGluaXRpYWwgbGF5b3V0
IHRlc3RpbmcgY292ZXJhZ2UgZm9yIHRpbWVyIHRocm90dGxpbmcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODgwOQorCisgICAgICAgIFJldmlld2Vk
IGJ5IFNpbW9uIEZyYXNlci4KKworICAgICAgICBBZGQgaXNUaW1lclRocm90dGxlZCgpIEFQSSB0
byBJbnRlcm5hbHMgc28gdGhhdCB3ZSBjYW4gYWRkIGxheW91dCB0ZXN0CisgICAgICAgIGNvdmVy
YWdlIGZvciB0aW1lciB0aHJvdHRsaW5nLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9uZXN0
ZWQtdGltZXItaW52aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L2RvbS9uZXN0ZWQtdGltZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbAor
ICAgICAgICAgICAgICAgZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWludmlzaWJsZS1lbGVtZW50
LXRocm90dGxpbmcuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVy
LXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwKKworICAgICAgICAqIHBhZ2UvRE9NVGlt
ZXIuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJbnRlcm5hbHM6OmlzVGltZXJUaHJvdHRsZWQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJu
YWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDE0LTExLTE3ICBE
YW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBMaWJkaXNw
YXRjaCwgRHlsZCwgSU9LaXQsIE1hY2gsIE5TUG9pbnRlckZ1bmN0aW9ucywgTW9iaWxlR2VzdGFs
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01UaW1lci5oIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9ET01UaW1lci5oCmluZGV4IDFiMWNmODdiYWI5ZTNiN2QyZjAzOWRjZTk0Zjc0
YTZlNjM0YTMyNGQuLjY4MzM0NmIwZDk5NzhhNjQ4YTlmZjg2ZGFkYmM2NzEyOGVhYzM1ZTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NVGltZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0RPTVRpbWVyLmgKQEAgLTYxLDYgKzYxLDggQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiAgICAgcHJpdmF0ZToKICAgICAgICAgRE9NVGltZXIoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYsIHN0ZDo6dW5pcXVlX3B0cjxTY2hlZHVsZWRBY3Rpb24+LCBpbnQgaW50ZXJ2YWwsIGJvb2wg
c2luZ2xlU2hvdCk7CisgICAgICAgIGZyaWVuZCBjbGFzcyBJbnRlcm5hbHM7CisKICAgICAgICAg
ZG91YmxlIGludGVydmFsQ2xhbXBlZFRvTWluaW11bSgpIGNvbnN0OwogCiAgICAgICAgIGJvb2wg
aXNJbnRlcnZhbERlcGVuZGVudE9uVmlld3BvcnQoKSBjb25zdCB7IHJldHVybiBtX3Rocm90dGxl
U3RhdGUgPT0gU2hvdWxkVGhyb3R0bGUgJiYgIW1fZWxlbWVudHNDYXVzaW5nVGhyb3R0bGluZy5p
c0VtcHR5KCk7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRleCBhY2E3MWI1
YzRmMDdhYmMzYTk1NWQyZTVhMTNmNTQzYjQ5ZTdjN2ZjLi5hZDI1YTMzOTY2OTZiNGYwYjQxMDYx
MzFjMjQwNDBjNTU1MGEyZGVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0lu
dGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBA
IC02MjYsNiArNjI2LDE2IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRTaGFkb3dQc2V1ZG9JZChFbGVt
ZW50KiBlbGVtZW50LCBjb25zdCBTdHJpbmcmIGlkLCBFeGNlcHRpb25DCiAgICAgcmV0dXJuIGVs
ZW1lbnQtPnNldFBzZXVkbyhpZCk7CiB9CiAKK2Jvb2wgSW50ZXJuYWxzOjppc1RpbWVyVGhyb3R0
bGVkKGludCB0aW1lb3V0SWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIERPTVRpbWVyKiB0
aW1lciA9IHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKS0+ZmluZFRpbWVvdXQodGltZW91dElkKTsK
KyAgICBpZiAoIXRpbWVyKSB7CisgICAgICAgIGVjID0gTk9UX0ZPVU5EX0VSUjsKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgIH0KKyAgICByZXR1cm4gdGltZXItPm1fdGhyb3R0bGVTdGF0ZSA9
PSBET01UaW1lcjo6U2hvdWxkVGhyb3R0bGU7Cit9CisKIFN0cmluZyBJbnRlcm5hbHM6OnZpc2li
bGVQbGFjZWhvbGRlcihFbGVtZW50KiBlbGVtZW50KQogewogICAgIGlmIChpczxIVE1MVGV4dEZv
cm1Db250cm9sRWxlbWVudD4oZWxlbWVudCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
CmluZGV4IGY5MTdlNTM5YzRlZDEyNWVmNjliOGNiMGY2YjAzMzcyZDJiNWZiN2YuLjdlNzc0NGM4
YjQ3YThhY2RhNzQzYzU1MWQ5ZWY2OGFjZWI2MjJkODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaApAQCAtOTIsNiArOTIsOSBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIHNoYWRvd1BzZXVk
b0lkKEVsZW1lbnQqLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRTaGFkb3dQc2V1ZG9J
ZChFbGVtZW50KiwgY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYpOwogCisgICAgLy8gRE9N
VGltZXJzIHRocm90dGxpbmcgdGVzdGluZy4KKyAgICBib29sIGlzVGltZXJUaHJvdHRsZWQoaW50
IHRpbWVvdXRJZCwgRXhjZXB0aW9uQ29kZSYpOworCiAgICAgLy8gU3BhdGlhbCBOYXZpZ2F0aW9u
IHRlc3RpbmcuCiAgICAgdW5zaWduZWQgbGFzdFNwYXRpYWxOYXZpZ2F0aW9uQ2FuZGlkYXRlQ291
bnQoRXhjZXB0aW9uQ29kZSYpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKaW5kZXggNmQ1MTIwMGQ4MTBhMGU4YTIyMmVmODFhNGQ2YzQyZTM4Yjk0YzU5OS4uYzZkMzM1
ZWE5MGQ0YmFjZWY2ZmM5ODIwMTJkYTFlOTg1ZTZiMDQ0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmlkbApAQCAtMjM4LDYgKzIzOCw5IEBAIGVudW0gUGFnZU92ZXJsYXlUeXBlIHsK
ICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHN0YXJ0VHJhY2tpbmdSZXBhaW50cygpOwogICAg
IFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc3RvcFRyYWNraW5nUmVwYWludHMoKTsKIAorICAgIC8v
IFF1ZXJ5IGlmIGEgdGltZXIgaXMgY3VycmVudGx5IHRocm90dGxlZCwgdG8gZGVidWcgdGltZXIg
dGhyb3R0bGluZy4KKyAgICBbUmFpc2VzRXhjZXB0aW9uXSBib29sZWFuIGlzVGltZXJUaHJvdHRs
ZWQobG9uZyB0aW1lckhhbmRsZSk7CisKICAgICAvLyB8bm9kZXwgc2hvdWxkIGJlIERvY3VtZW50
LCBIVE1MSUZyYW1lRWxlbWVudCwgb3IgdW5zcGVjaWZpZWQuCiAgICAgLy8gSWYgfG5vZGV8IGlz
IGFuIEhUTUxJRnJhbWVFbGVtZW50LCBpdCBhc3N1bWVzIG5vZGUuY29udGVudERvY3VtZW50IGlz
CiAgICAgLy8gc3BlY2lmaWVkIHdpdGhvdXQgc2VjdXJpdHkgY2hlY2tzLiBVbnNwZWNpZmllZCBt
ZWFucyB0aGlzIGRvY3VtZW50LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDlhZTU3M2ZiNTNmM2Y3MjZlYjYxYjc5NzcxYzhj
NzVjYWRiYTZhZDguLjk5NzQ4YjBhMTNkNWFkMjdjMTVkZDhmYTAyN2ViMjEyNTFhNWZmZDEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwzNCBAQAorMjAxNC0xMS0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgorCisgICAgICAgIEFkZCBpbml0aWFsIGxheW91dCB0ZXN0aW5nIGNvdmVyYWdlIGZv
ciB0aW1lciB0aHJvdHRsaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMzg4MDkKKworICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisK
KyAgICAgICAgQWRkIGluaXRpYWwgbGF5b3V0IHRlc3QgY292ZXJhZ2UgZm9yIHRpbWVyIHRocm90
dGxpbmcuIEl0IGN1cnJlbnRseQorICAgICAgICBjb3ZlcnMgdGhlIGZvbGxvd2luZyBjYXNlczoK
KyAgICAgICAgLSBSZXBlYXRpbmcgdGltZXIgY2hhbmdlcyB0aGUgc3R5bGUgb2YgYW4gRWxlbWVu
dCB0aGF0IGlzIHZpc2libGUKKyAgICAgICAgLSBSZXBlYXRpbmcgdGltZXIgY2hhbmdlcyB0aGUg
c3R5bGUgb2YgYW4gRWxlbWVudCB0aGF0IGlzIG5vdCB2aXNpYmxlCisgICAgICAgICAgKGkuZS4g
ImRpc3BsYXk6IG5vbmUiKS4KKyAgICAgICAgLSBSZXBlYXRpbmcgdGltZXIgZG9pbmcgRE9NIG11
dGF0aW9ucworICAgICAgICAtIE5lc3RlZCB0aW1lciBjaGFuZ2VzIHRoZSBzdHlsZSBvZiBhbiBF
bGVtZW50IHRoYXQgaXMgdmlzaWJsZQorICAgICAgICAtIE5lc3RlZCB0aW1lciBjaGFuZ2VzIHRo
ZSBzdHlsZSBvZiBhbiBFbGVtZW50IHRoYXQgaXMgbm90IHZpc2libGUKKyAgICAgICAgICAoaS5l
LiAiZGlzcGxheTogbm9uZSIpLgorICAgICAgICAtIE5lc3RlZCB0aW1lciBkb2luZyBET00gbXV0
YXRpb25zCisKKyAgICAgICAgTW9yZSBsYXlvdXQgdGVzdHMgYXJlIGNvbWluZy4gSW4gcGFydGlj
dWxhciwgd2Ugc2hvdWxkIGFkZCBjb3ZlcmFnZSBmb3IKKyAgICAgICAgY2hhbmdpbmcgdGhlIHN0
eWxlIG9mIGFuIEVsZW1lbnQgb3V0c2lkZSB0aGUgdmlld3BvcnQuIFdlIHNob3VsZCBhbHNvCisg
ICAgICAgIFRlc3QgdGhhdCB0aGUgdGltZXIgZ2V0cyB1bnRocm90dGxlZCBpZiBuZWNlc3Nhcnkg
b24gc2Nyb2xsaW5nIC8gbGF5b3V0LgorCisgICAgICAgICogZmFzdC9kb20vbmVzdGVkLXRpbWVy
LWludmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2RvbS9uZXN0ZWQtdGltZXItaW52aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9uZXN0ZWQtdGltZXItdmlzaWJsZS1lbGVt
ZW50LXRocm90dGxpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9u
ZXN0ZWQtdGltZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90dGxp
bmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9yZXBlYXRpbmctdGlt
ZXItaW52aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L2RvbS9yZXBlYXRpbmctdGltZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmctZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9yZXBlYXRpbmctdGltZXItdmlzaWJs
ZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbDogQWRkZWQuCisKIDIwMTQtMTEtMTcgIEFsZXhleSBQ
cm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAgbWVkaWEvdHJhY2svdHJhY2st
aW4tYmFuZC1jdWVzLWFkZGVkLW9uY2UuaHRtbCBmYWlscyBzb21ldGltZXMKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJv
dHRsaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci1p
bnZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NjFl
ZWZkY2E4NjQyODRhNDMwNGQ0ZGIwMzJkNGNjNDY5M2RmN2JkCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vbmVzdGVkLXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90
dGxpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTggQEAKK1Rlc3RzIHRoYXQgYSBuZXN0ZWQg
dGltZXIgY2hhbmdpbmcgdGhlIHN0eWxlIG9mIGEgbm9uLXZpc2libGUgZWxlbWVudCBnZXRzIHRo
cm90dGxlZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1RoZSB0aW1lciBzaG91
bGQgaW5pdGlhbGx5IG5vdCBiZSB0aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhy
b3R0bGVkKHRpbWVvdXRJZCkgaXMgZmFsc2UKKzV0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBo
YXZlIGJlZW4gdGhyb3R0bGVkLgorUEFTUyB3YXNUaHJvdHRsZWQgaXMgdHJ1ZQorNnRoIGl0ZXJh
dGlvbiwgdGltZXIgc2hvdWxkIHN0aWxsIGJlIHRocm90dGxlZC4KK1BBU1MgaW50ZXJuYWxzLmlz
VGltZXJUaHJvdHRsZWQodGltZW91dElkKSBpcyB0cnVlCitUaW1lciBtdXRhdGVkIHRoZSBET00g
dHJlZS4KKzd0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBubyBsb25nZXIgYmUgdGhyb3R0bGVk
LgorUEFTUyBpbnRlcm5hbHMuaXNUaW1lclRocm90dGxlZCh0aW1lb3V0SWQpIGlzIGZhbHNlCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbmVzdGVkLXRpbWVyLWludmlzaWJsZS1lbGVtZW50
LXRocm90dGxpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci1pbnZp
c2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODk5OTI3YWQwNDI3YmNm
ZjRkMTgzNDIwZTM5NDhkYzhmMDk0ZDNhYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL25lc3RlZC10aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwK
QEAgLTAsMCArMSw1OCBAQAorPCFET0NUWVBFIGh0bWw+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPGRpdiBpZD0idGVzdEVs
ZW1lbnQiIHN0eWxlPSJkaXNwbGF5OiBub25lIj5UZXN0PC9kaXY+Cis8c2NyaXB0PgorZGVzY3Jp
cHRpb24oIlRlc3RzIHRoYXQgYSBuZXN0ZWQgdGltZXIgY2hhbmdpbmcgdGhlIHN0eWxlIG9mIGEg
bm9uLXZpc2libGUgZWxlbWVudCBnZXRzIHRocm90dGxlZC4iKTsKK2pzVGVzdElzQXN5bmMgPSB0
cnVlOworCit2YXIgaXRlcmF0aW9uQ291bnQgPSAwOwordmFyIHRpbWVvdXRJZDsKK3ZhciB0ZXN0
RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RWxlbWVudCIpOwordmFyIHdh
c1Rocm90dGxlZCA9IGZhbHNlOworCitmdW5jdGlvbiBjaGVja1RpbWVyVGhyb3R0bGVTdGF0ZSgp
Cit7CisgIGlmIChpdGVyYXRpb25Db3VudCA9PSA1KSB7CisgICAgLy8gRG8gbm90IHVzZSBzaG91
bGRCZVRydWUoKSBoZXJlIGJlY2F1c2UgaXQgd291bGQgY2F1c2UgYSBET00gdHJlZSBtdXRhdGlv
biBhbmQKKyAgICAvLyB1bnRocm90dGxlIHRoZSBET00gVGltZXIuCisgICAgd2FzVGhyb3R0bGVk
ID0gaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKTsKKyAgfSBlbHNlIGlmIChp
dGVyYXRpb25Db3VudCA9PSA2KSB7CisgICAgZGVidWcoIjV0aCBpdGVyYXRpb24sIHRpbWVyIHNo
b3VsZCBoYXZlIGJlZW4gdGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlVHJ1ZSgid2FzVGhyb3R0
bGVkIik7CisgICAgZGVidWcoIjZ0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBzdGlsbCBiZSB0
aHJvdHRsZWQuIik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaXNUaW1lclRocm90dGxl
ZCh0aW1lb3V0SWQpIik7CisgIH0gZWxzZSBpZiAoaXRlcmF0aW9uQ291bnQgPj0gNikgeworICAg
IC8vIFRpbWVyIHNob3VsZCBiZSB1bnRocm90dGxlZCBkdWUgdG8gdGhlIERPTSB0cmVlIG11dGF0
aW9uIGNhdXNlZCBieSBzaG91bGRCZVRydWUoKSBpbgorICAgIC8vIHRoZSBwcmV2aW91cyBpdGVy
YXRpb24uCisgICAgZGVidWcoIiIgKyBpdGVyYXRpb25Db3VudCArICJ0aCBpdGVyYXRpb24sIHRp
bWVyIHNob3VsZCBubyBsb25nZXIgYmUgdGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlRmFsc2Uo
ImludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBjbGVhclRpbWVv
dXQodGltZW91dElkKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgfQorfQorCitmdW5jdGlvbiB0
aW1lckNhbGxiYWNrKCkKK3sKKyAgKytpdGVyYXRpb25Db3VudDsKKyAgLy8gSW50ZXJhY3Qgd2l0
aCB0aGUgc3R5bGUgb2YgdGhlIGVsZW1lbnQuCisgIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0Il0g
PSAiIiArIGl0ZXJhdGlvbkNvdW50ICsgInB4IjsKKworICAvLyA1IGl0ZXJhdGlvbnMgc2hvdWxk
IGJlIHN1ZmZpY2llbnQgdG8gdGhyb3R0bGUgdGhlIHRpbWVyLgorICBpZiAoaXRlcmF0aW9uQ291
bnQgPj0gNSkgeworICAgIHNldFRpbWVvdXQoY2hlY2tUaW1lclRocm90dGxlU3RhdGUsIDApOwor
ICAgIGlmIChpdGVyYXRpb25Db3VudCA9PSA3KSB7CisgICAgICAvLyBUaGUgY2FsbCB0byBkZWJ1
ZygpIG11dGF0ZXMgdGhlIERPTSB0cmVlLgorICAgICAgZGVidWcoIlRpbWVyIG11dGF0ZWQgdGhl
IERPTSB0cmVlLiIpOworICAgIH0KKyAgfQorCisgIHRpbWVvdXRJZCA9IHNldFRpbWVvdXQodGlt
ZXJDYWxsYmFjaywgMCk7Cit9CisKK3RpbWVvdXRJZCA9IHNldFRpbWVvdXQodGltZXJDYWxsYmFj
aywgMCk7CitkZWJ1ZygiVGhlIHRpbWVyIHNob3VsZCBpbml0aWFsbHkgbm90IGJlIHRocm90dGxl
ZC4iKTsKK3Nob3VsZEJlRmFsc2UoImludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJ
ZCkiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vbmVzdGVkLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvZG9tL25lc3RlZC10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhyb3R0
bGluZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDk5OGE0YWFjMTY0YTdkMWY2NzZkMjQ0NmEy
ODY1ZWFkMzEzMzZiZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25l
c3RlZC10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxNSBAQAorVGVzdHMgdGhhdCBhIG5lc3RlZCB0aW1lciBjaGFuZ2luZyB0aGUgc3R5bGUg
b2YgYSB2aXNpYmxlIGVsZW1lbnQgZG9lcyBub3QgZ2V0IHRocm90dGxlZC4KKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKK1RoZSB0aW1lciBzaG91bGQgaW5pdGlhbGx5IG5vdCBiZSB0
aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkgaXMg
ZmFsc2UKKzV0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBub3QgaGF2ZSBiZWVuIHRocm90dGxl
ZC4KK1BBU1Mgd2FzVGhyb3R0bGVkIGlzIGZhbHNlCis2dGggaXRlcmF0aW9uLCB0aW1lciBzaG91
bGQgc3RpbGwgYmUgdW50aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVk
KHRpbWVvdXRJZCkgaXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorVGVzdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbmVz
dGVkLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9uZXN0ZWQtdGltZXItdmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45MGQ3OGQzYzQ5ZTExNTk3ZWNmNjBhNDZhOTYxZDg2NzY3MTE4ZWYxCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbmVzdGVkLXRpbWVyLXZpc2libGUtZWxl
bWVudC10aHJvdHRsaW5nLmh0bWwKQEAgLTAsMCArMSw0NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8
Ym9keT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPGRpdiBpZD0idGVzdEVsZW1lbnQiPlRlc3Q8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlw
dGlvbigiVGVzdHMgdGhhdCBhIG5lc3RlZCB0aW1lciBjaGFuZ2luZyB0aGUgc3R5bGUgb2YgYSB2
aXNpYmxlIGVsZW1lbnQgZG9lcyBub3QgZ2V0IHRocm90dGxlZC4iKTsKK2pzVGVzdElzQXN5bmMg
PSB0cnVlOworCit2YXIgaXRlcmF0aW9uQ291bnQgPSAwOwordmFyIHRpbWVvdXRJZDsKK3ZhciB0
ZXN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RWxlbWVudCIpOwordmFy
IHdhc1Rocm90dGxlZCA9IGZhbHNlOworCitmdW5jdGlvbiBjaGVja1RpbWVyVGhyb3R0bGluZ1N0
YXRlKCkgeworICBpZiAoaXRlcmF0aW9uQ291bnQgPT0gNSkgeworICAgIC8vIERvIG5vdCB1c2Ug
c2hvdWxkQmVUcnVlKCkgaGVyZSBiZWNhdXNlIGl0IHdvdWxkIGNhdXNlIGEgRE9NIHRyZWUgbXV0
YXRpb24gYW5kCisgICAgLy8gdW50aHJvdHRsZSB0aGUgRE9NIFRpbWVyLgorICAgIHdhc1Rocm90
dGxlZCA9IGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCk7CisgIH0gZWxzZSBp
ZiAoaXRlcmF0aW9uQ291bnQgPT0gNikgeworICAgIGRlYnVnKCI1dGggaXRlcmF0aW9uLCB0aW1l
ciBzaG91bGQgbm90IGhhdmUgYmVlbiB0aHJvdHRsZWQuIik7CisgICAgc2hvdWxkQmVGYWxzZSgi
d2FzVGhyb3R0bGVkIik7CisgICAgZGVidWcoIjZ0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBz
dGlsbCBiZSB1bnRocm90dGxlZC4iKTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaXNU
aW1lclRocm90dGxlZCh0aW1lb3V0SWQpIik7CisgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZCk7
CisgICAgZmluaXNoSlNUZXN0KCk7CisgIH0KK30KKworZnVuY3Rpb24gdGltZXJDYWxsYmFjaygp
Cit7CisgICsraXRlcmF0aW9uQ291bnQ7CisgIC8vIEludGVyYWN0IHdpdGggdGhlIHN0eWxlIG9m
IHRoZSBlbGVtZW50LgorICB0ZXN0RWxlbWVudC5zdHlsZVsibGVmdCJdID0gIiIgKyBpdGVyYXRp
b25Db3VudCArICJweCI7CisKKyAgLy8gNSBpdGVyYXRpb25zIHNob3VsZCBzdWZmaWNlIHRvIHRo
cm90dGxlIHRoZSB0aW1lci4KKyAgaWYgKGl0ZXJhdGlvbkNvdW50ID49IDUpCisgICAgc2V0VGlt
ZW91dChjaGVja1RpbWVyVGhyb3R0bGluZ1N0YXRlLCAwKTsKKworICB0aW1lb3V0SWQgPSBzZXRU
aW1lb3V0KHRpbWVyQ2FsbGJhY2ssIDApOworfQorCit0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KHRp
bWVyQ2FsbGJhY2ssIDApOworZGVidWcoIlRoZSB0aW1lciBzaG91bGQgaW5pdGlhbGx5IG5vdCBi
ZSB0aHJvdHRsZWQuIik7CitzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaXNUaW1lclRocm90dGxl
ZCh0aW1lb3V0SWQpIik7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL3JlcGVhdGluZy10aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJvdHRsaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3JlcGVhdGluZy10aW1lci1pbnZp
c2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNGQxZjA2
ZTAwZjU2YzZhYzUxOGZhODdjNmE4NDJlZTdkOTlkN2MxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWludmlzaWJsZS1lbGVtZW50LXRocm90
dGxpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTggQEAKK1Rlc3RzIHRoYXQgYSByZXBlYXRp
bmcgdGltZXIgY2hhbmdpbmcgdGhlIHN0eWxlIG9mIGEgbm9uLXZpc2libGUgZWxlbWVudCBnZXRz
IHRocm90dGxlZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1RoZSB0aW1lciBz
aG91bGQgaW5pdGlhbGx5IG5vdCBiZSB0aHJvdHRsZWQuCitQQVNTIGludGVybmFscy5pc1RpbWVy
VGhyb3R0bGVkKHRpbWVvdXRJZCkgaXMgZmFsc2UKKzV0aCBpdGVyYXRpb24sIHRpbWVyIHNob3Vs
ZCBoYXZlIGJlZW4gdGhyb3R0bGVkLgorUEFTUyB3YXNUaHJvdHRsZWQgaXMgdHJ1ZQorNnRoIGl0
ZXJhdGlvbiwgdGltZXIgc2hvdWxkIHN0aWxsIGJlIHRocm90dGxlZC4KK1BBU1MgaW50ZXJuYWxz
LmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSBpcyB0cnVlCitUaW1lciBtdXRhdGVkIHRoZSBE
T00gdHJlZS4KKzd0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBubyBsb25nZXIgYmUgdGhyb3R0
bGVkLgorUEFTUyBpbnRlcm5hbHMuaXNUaW1lclRocm90dGxlZCh0aW1lb3V0SWQpIGlzIGZhbHNl
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLWludmlzaWJsZS1l
bGVtZW50LXRocm90dGxpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3JlcGVhdGluZy10
aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmJlM2Vl
YzcxNjA3ODVjMTJlMjY3ZDQyNWEyN2JlYmYyZjQ2OWU0ZgotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL3JlcGVhdGluZy10aW1lci1pbnZpc2libGUtZWxlbWVudC10aHJv
dHRsaW5nLmh0bWwKQEAgLTAsMCArMSw0NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8Ym9keT4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPGRp
diBpZD0idGVzdEVsZW1lbnQiIHN0eWxlPSJkaXNwbGF5OiBub25lIj5UZXN0PC9kaXY+Cis8c2Ny
aXB0PgorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYSByZXBlYXRpbmcgdGltZXIgY2hhbmdpbmcg
dGhlIHN0eWxlIG9mIGEgbm9uLXZpc2libGUgZWxlbWVudCBnZXRzIHRocm90dGxlZC4iKTsKK2pz
VGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgaXRlcmF0aW9uQ291bnQgPSAwOwordmFyIHRpbWVv
dXRJZDsKK3ZhciB0ZXN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0RWxl
bWVudCIpOwordmFyIHdhc1Rocm90dGxlZCA9IGZhbHNlOworCitmdW5jdGlvbiB0aW1lckNhbGxi
YWNrKCkKK3sKKyAgKytpdGVyYXRpb25Db3VudDsKKyAgLy8gSW50ZXJhY3Qgd2l0aCB0aGUgc3R5
bGUgb2YgdGhlIGVsZW1lbnQuCisgIHRlc3RFbGVtZW50LnN0eWxlWyJsZWZ0Il0gPSAiIiArIGl0
ZXJhdGlvbkNvdW50ICsgInB4IjsKKworICAvLyA1IGl0ZXJhdGlvbnMgc2hvdWxkIHN1ZmZpY2Ug
dG8gdGhyb3R0bGUgdGhlIHRpbWVyLgorICBpZiAoaXRlcmF0aW9uQ291bnQgPT0gNSkgeworICAg
IC8vIERvIG5vdCB1c2Ugc2hvdWxkQmVUcnVlKCkgaGVyZSBiZWNhdXNlIGl0IHdvdWxkIGNhdXNl
IGEgRE9NIHRyZWUgbXV0YXRpb24gYW5kCisgICAgLy8gdW50aHJvdHRsZSB0aGUgRE9NIFRpbWVy
LgorICAgIHdhc1Rocm90dGxlZCA9IGludGVybmFscy5pc1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJ
ZCk7CisgIH0gZWxzZSBpZiAoaXRlcmF0aW9uQ291bnQgPT0gNikgeworICAgIGRlYnVnKCI1dGgg
aXRlcmF0aW9uLCB0aW1lciBzaG91bGQgaGF2ZSBiZWVuIHRocm90dGxlZC4iKTsKKyAgICBzaG91
bGRCZVRydWUoIndhc1Rocm90dGxlZCIpOworICAgIGRlYnVnKCI2dGggaXRlcmF0aW9uLCB0aW1l
ciBzaG91bGQgc3RpbGwgYmUgdGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJu
YWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSIpOworICAgIGRlYnVnKCJUaW1lciBtdXRh
dGVkIHRoZSBET00gdHJlZS4iKTsKKyAgfSBlbHNlIGlmIChpdGVyYXRpb25Db3VudCA+PSA2KSB7
CisgICAgLy8gVGltZXIgc2hvdWxkIGJlIHVudGhyb3R0bGVkIGR1ZSB0byB0aGUgRE9NIHRyZWUg
bXV0YXRpb24gY2F1c2VkIGJ5IHNob3VsZEJlVHJ1ZSgpIGluCisgICAgLy8gdGhlIHByZXZpb3Vz
IGl0ZXJhdGlvbi4KKyAgICBkZWJ1ZygiIiArIGl0ZXJhdGlvbkNvdW50ICsgInRoIGl0ZXJhdGlv
biwgdGltZXIgc2hvdWxkIG5vIGxvbmdlciBiZSB0aHJvdHRsZWQuIik7CisgICAgc2hvdWxkQmVG
YWxzZSgiaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSIpOworICAgIGNsZWFy
SW50ZXJ2YWwodGltZW91dElkKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgfQorfQorCit0aW1l
b3V0SWQgPSBzZXRJbnRlcnZhbCh0aW1lckNhbGxiYWNrLCAwKTsKK2RlYnVnKCJUaGUgdGltZXIg
c2hvdWxkIGluaXRpYWxseSBub3QgYmUgdGhyb3R0bGVkLiIpOworc2hvdWxkQmVGYWxzZSgiaW50
ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSIpOworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXBlYXRpbmctdGltZXItdmlzaWJs
ZS1lbGVtZW50LXRocm90dGxpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20v
cmVwZWF0aW5nLXRpbWVyLXZpc2libGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5lYjFhNzhiZGMzY2I1YjZiNjQ2NjU4ZDBmMGJkODk4YzNlZDA4MDE5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vcmVwZWF0aW5nLXRpbWVyLXZpc2li
bGUtZWxlbWVudC10aHJvdHRsaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitUZXN0
cyB0aGF0IGEgcmVwZWF0aW5nIHRpbWVyIGNoYW5naW5nIHRoZSBzdHlsZSBvZiBhIHZpc2libGUg
ZWxlbWVudCBkb2VzIG5vdCBnZXQgdGhyb3R0bGVkLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworVGhlIHRpbWVyIHNob3VsZCBpbml0aWFsbHkgbm90IGJlIHRocm90dGxlZC4KK1BB
U1MgaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSBpcyBmYWxzZQorNXRoIGl0
ZXJhdGlvbiwgdGltZXIgc2hvdWxkIG5vdCBoYXZlIGJlZW4gdGhyb3R0bGVkLgorUEFTUyB3YXNU
aHJvdHRsZWQgaXMgZmFsc2UKKzZ0aCBpdGVyYXRpb24sIHRpbWVyIHNob3VsZCBzdGlsbCBiZSB1
bnRocm90dGxlZC4KK1BBU1MgaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKSBp
cyBmYWxzZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CitUZXN0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXBlYXRpbmctdGltZXIt
dmlzaWJsZS1lbGVtZW50LXRocm90dGxpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3Jl
cGVhdGluZy10aW1lci12aXNpYmxlLWVsZW1lbnQtdGhyb3R0bGluZy5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmY1N2FmMmJlZmI5MTMwYWVmZmYwMjY3NjM3ZDgwYzYyMjlhMjU5NTgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9yZXBlYXRpbmctdGltZXItdmlzaWJsZS1lbGVtZW50
LXRocm90dGxpbmcuaHRtbApAQCAtMCwwICsxLDQwIEBACis8IURPQ1RZUEUgaHRtbD4KKzxib2R5
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8ZGl2IGlkPSJ0ZXN0RWxlbWVudCI+VGVzdDwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9u
KCJUZXN0cyB0aGF0IGEgcmVwZWF0aW5nIHRpbWVyIGNoYW5naW5nIHRoZSBzdHlsZSBvZiBhIHZp
c2libGUgZWxlbWVudCBkb2VzIG5vdCBnZXQgdGhyb3R0bGVkLiIpOworanNUZXN0SXNBc3luYyA9
IHRydWU7CisKK3ZhciBpdGVyYXRpb25Db3VudCA9IDA7Cit2YXIgdGltZW91dElkOwordmFyIHRl
c3RFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3RFbGVtZW50Iik7Cit2YXIg
d2FzVGhyb3R0bGVkID0gZmFsc2U7CisKK2Z1bmN0aW9uIHRpbWVyQ2FsbGJhY2soKQoreworICAr
K2l0ZXJhdGlvbkNvdW50OworICAvLyBJbnRlcmFjdCB3aXRoIHRoZSBzdHlsZSBvZiB0aGUgZWxl
bWVudC4KKyAgdGVzdEVsZW1lbnQuc3R5bGVbImxlZnQiXSA9ICIiICsgaXRlcmF0aW9uQ291bnQg
KyAicHgiOworCisgIC8vIDUgaXRlcmF0aW9ucyBzaG91bGQgc3VmZmljZSB0byB0aHJvdHRsZSB0
aGUgdGltZXIuCisgIGlmIChpdGVyYXRpb25Db3VudCA9PSA1KSB7CisgICAgLy8gRG8gbm90IHVz
ZSBzaG91bGRCZVRydWUoKSBoZXJlIGJlY2F1c2UgaXQgd291bGQgY2F1c2UgYSBET00gdHJlZSBt
dXRhdGlvbiBhbmQKKyAgICAvLyB1bnRocm90dGxlIHRoZSBET00gVGltZXIuCisgICAgd2FzVGhy
b3R0bGVkID0gaW50ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZW91dElkKTsKKyAgfSBlbHNl
IGlmIChpdGVyYXRpb25Db3VudCA9PSA2KSB7CisgICAgZGVidWcoIjV0aCBpdGVyYXRpb24sIHRp
bWVyIHNob3VsZCBub3QgaGF2ZSBiZWVuIHRocm90dGxlZC4iKTsKKyAgICBzaG91bGRCZUZhbHNl
KCJ3YXNUaHJvdHRsZWQiKTsKKyAgICBkZWJ1ZygiNnRoIGl0ZXJhdGlvbiwgdGltZXIgc2hvdWxk
IHN0aWxsIGJlIHVudGhyb3R0bGVkLiIpOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5p
c1RpbWVyVGhyb3R0bGVkKHRpbWVvdXRJZCkiKTsKKyAgICBjbGVhckludGVydmFsKHRpbWVvdXRJ
ZCk7CisgICAgZmluaXNoSlNUZXN0KCk7CisgIH0KK30KKwordGltZW91dElkID0gc2V0SW50ZXJ2
YWwodGltZXJDYWxsYmFjaywgMCk7CitkZWJ1ZygiVGhlIHRpbWVyIHNob3VsZCBpbml0aWFsbHkg
bm90IGJlIHRocm90dGxlZC4iKTsKK3Nob3VsZEJlRmFsc2UoImludGVybmFscy5pc1RpbWVyVGhy
b3R0bGVkKHRpbWVvdXRJZCkiKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>