<?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>168863</bug_id>
          
          <creation_ts>2017-02-24 20:54:16 -0800</creation_ts>
          <short_desc>REGRESSION(r212853): Comparisons to baseline no longer shows up</short_desc>
          <delta_ts>2017-02-25 00:03:51 -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>Perf Dashboard</component>
          <version>Other</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>168693</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>cdumez</cc>
    
    <cc>dewei_zhu</cc>
    
    <cc>joepeck</cc>
    
    <cc>rniwa</cc>
    
    <cc>slewis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1280988</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2017-02-24 20:54:16 -0800</bug_when>
    <thetext>After https://trac.webkit.org/changeset/212853, we no longer see comparisons to baseline/target.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1280989</commentid>
    <comment_count>1</comment_count>
      <attachid>302732</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2017-02-24 21:14:50 -0800</bug_when>
    <thetext>Created attachment 302732
Fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1280992</commentid>
    <comment_count>2</comment_count>
      <attachid>302732</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-02-24 21:23:38 -0800</bug_when>
    <thetext>Comment on attachment 302732
Fixes the bug

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

rs=me

&gt; Websites/perf.webkit.org/browser-tests/time-series-chart-tests.js:1
&gt; +(() =&gt; {

Is this scoping necessary?

&gt; Websites/perf.webkit.org/public/v3/components/chart-status-view.js:118
&gt;          }

Style: You normally use semicolons.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281036</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2017-02-25 00:01:42 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 302732 [details]
&gt; Fixes the bug
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=302732&amp;action=review
&gt; 
&gt; rs=me
&gt; 
&gt; &gt; Websites/perf.webkit.org/browser-tests/time-series-chart-tests.js:1
&gt; &gt; +(() =&gt; {
&gt; 
&gt; Is this scoping necessary?

Yeah, it was a bunch of functions &amp; variables to the global scope because it&apos;s loaded in the browser.

&gt; &gt; Websites/perf.webkit.org/public/v3/components/chart-status-view.js:118
&gt; &gt;          }
&gt; 
&gt; Style: You normally use semicolons.

Oops, fixed.

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1281037</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2017-02-25 00:03:51 -0800</bug_when>
    <thetext>Committed r212997: &lt;http://trac.webkit.org/changeset/212997&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>302732</attachid>
            <date>2017-02-24 21:14:50 -0800</date>
            <delta_ts>2017-02-24 21:23:38 -0800</delta_ts>
            <desc>Fixes the bug</desc>
            <filename>bug-168863-20170224211159.patch</filename>
            <type>text/plain</type>
            <size>38958</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwkocmV2aXNpb24gMjEyOTkyKQorKysg
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDQxIEBACisyMDE3LTAyLTI0ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIFJFR1JFU1NJT04ocjIxMjg1Myk6IENvbXBhcmlzb25zIHRvIGJhc2VsaW5lIG5v
IGxvbmdlciBzaG93cyB1cAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTY4ODYzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhlIGJ1ZyB3YXMgY2F1c2VkIGJ5IENoYXJ0U3RhdHVzVmlldydzIGNvZGUgbm90
IGJlaW5nIHVwZGF0ZWQgdG8gdXNlIFRpbWVTZXJpZXNWaWV3J3MuCisgICAgICAgIFVwZGF0ZWQg
dGhlIGNvZGUgdG8gdXNlIFRpbWVTZXJpZXNWaWV3J3MgbWV0aG9kcyB0byBmaXggdGhlIGJ1Zy4K
KworICAgICAgICBBbHNvIG1hZGUgSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hhcnQncyBjdXJyZW50
UG9pbnQgdG8gcmV0dXJuIGEgKFRpbWVTZXJpZXNWaWV3LCBwb2ludCwgaXNMb2NrZWQpIHR1cGxl
CisgICAgICAgIHRvIGNvbnNvbGlkYXRlIGl0IHdpdGggbG9ja2VkSW5kaWNhdG9yKCkgdG8gd29y
ayB0b3dhcmRzIG1ha2luZyB0aGUgYmFzZWxpbmUgZGF0YSBwb2ludHMgc2VsZWN0YWJsZS4KKwor
ICAgICAgICAqIGJyb3dzZXItdGVzdHMvdGltZS1zZXJpZXMtY2hhcnQtdGVzdHMuanM6IFVwZGF0
ZWQgdGhlIHRlc3QgY2FzZXMgdG8gdXNlIGN1cnJlbnRJbmRpY2F0b3IsIGFuZCBhZGRlZAorICAg
ICAgICB0ZXN0IGNhc2VzIGZvciBuZXdseSBhZGRlZCBsYXN0UG9pbnRJblRpbWVSYW5nZS4KKwor
ICAgICAgICAqIHB1YmxpYy92My9jb21wb25lbnRzL2NoYXJ0LXBhbmUuanM6CisgICAgICAgIChD
aGFydFBhbmUucHJvdG90eXBlLnNlcmlhbGl6ZVN0YXRlKTogVXBkYXRlZCB0byB1c2UgY3VycmVu
dEluZGljYXRvci4KKyAgICAgICAgKENoYXJ0UGFuZS5wcm90b3R5cGUuX3JlbmRlckZpbHRlcmlu
Z1BvcG92ZXIpOiBEaXR0by4KKworICAgICAgICAqIHB1YmxpYy92My9jb21wb25lbnRzL2NoYXJ0
LXN0YXR1cy12aWV3LmpzOgorICAgICAgICAoQ2hhcnRTdGF0dXNWaWV3LnByb3RvdHlwZS51cGRh
dGVTdGF0dXNJZk5lZWRlZCk6IFVzZSBjdXJyZW50SW5kaWNhdG9yIGZvciBhbiBpbnRlcmF0aXZl
IHRpbWUgc2VyaWVzLgorICAgICAgICBGaXhlZCB0aGUgbm9uLWludGVyYWN0aXZlIGNoYXJ0J3Mg
Y29kZSBwYXRoIGZvciBUaW1lU2VyaWVzVmlldy4KKyAgICAgICAgKENoYXJ0U3RhdHVzVmlldy5w
cm90b3R5cGUuX2NvbXB1dGVDaGFydFN0YXR1cyk6IE1vZGVybml6ZWQgdGhlIGNvZGUuCisgICAg
ICAgIChDaGFydFN0YXR1c1ZpZXcucHJvdG90eXBlLl9maW5kTGFzdFBvaW50UHJpb3JUb1RpbWUp
OiBEZWxldGVkLiBSZXBsYWNlZCBieSBUaW1lU2VyaWVzVmlldydzCisgICAgICAgIGxhc3RQb2lu
dEluVGltZVJhbmdlLgorCisgICAgICAgICogcHVibGljL3YzL2NvbXBvbmVudHMvaW50ZXJhY3Rp
dmUtdGltZS1zZXJpZXMtY2hhcnQuanM6CisgICAgICAgIChJbnRlcmFjdGl2ZVRpbWVTZXJpZXND
aGFydC5wcm90b3R5cGUuY3VycmVudEluZGljYXRvcik6CisgICAgICAgIChJbnRlcmFjdGl2ZVRp
bWVTZXJpZXNDaGFydC5wcm90b3R5cGUubW92ZUxvY2tlZEluZGljYXRvcldpdGhOb3RpZmljYXRp
b24pOgorICAgICAgICAoSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hhcnQucHJvdG90eXBlLl9yZW5k
ZXJDaGFydENvbnRlbnQpOgorICAgICAgICAoSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hhcnQpOgor
CisgICAgICAgICogcHVibGljL3YzL21vZGVscy90aW1lLXNlcmllcy5qczoKKyAgICAgICAgKFRp
bWVTZXJpZXNWaWV3LnByb3RvdHlwZS5sYXN0UG9pbnRJblRpbWVSYW5nZSk6IEFkZGVkLgorICAg
ICAgICAoVGltZVNlcmllc1ZpZXcucHJvdG90eXBlLl9yZXZlcnNlKTogQWRkZWQuIFRyYXZlcnNl
cyB0aGUgdmlldyBpbiB0aGUgcmV2ZXJzZSBvcmRlci4KKyAgICAgICAgKiB1bml0LXRlc3RzL3Rp
bWUtc2VyaWVzLXRlc3RzLmpzOgorCiAyMDE3LTAyLTIzICBEZXdlaSBaaHUgIDxkZXdlaV96aHVA
YXBwbGUuY29tPgogCiAgICAgICAgIFJlbmFtZSAnY29tbWl0X3BhcmVudCcgaW4gJ2NvbW1pdHMn
IHRhYmxlIHRvICdjb21taXRfcHJldmlvdXNfY29tbWl0Jy4KSW5kZXg6IFdlYnNpdGVzL3BlcmYu
d2Via2l0Lm9yZy9icm93c2VyLXRlc3RzL3RpbWUtc2VyaWVzLWNoYXJ0LXRlc3RzLmpzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9icm93c2VyLXRlc3RzL3RpbWUtc2Vy
aWVzLWNoYXJ0LXRlc3RzLmpzCShyZXZpc2lvbiAyMTI5OTApCisrKyBXZWJzaXRlcy9wZXJmLndl
YmtpdC5vcmcvYnJvd3Nlci10ZXN0cy90aW1lLXNlcmllcy1jaGFydC10ZXN0cy5qcwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDUgQEAKKygoKSA9PiB7CisKIGNvbnN0IHNjcmlwdHMgPSBbCiAg
ICAgJy4uL3NoYXJlZC9zdGF0aXN0aWNzLmpzJywKICAgICAnaW5zdHJ1bWVudGF0aW9uLmpzJywK
QEAgLTkyMyw3ICs5MjUsNyBAQCBkZXNjcmliZSgnVGltZVNlcmllc0NoYXJ0JywgKCkgPT4gewog
CiBkZXNjcmliZSgnSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hhcnQnLCAoKSA9PiB7CiAKLSAgICBp
dCgnc2hvdWxkIGNoYW5nZSB0aGUgaW5kaWNhdG9yIHRvIHRoZSBwb2ludCBjbG9zZXN0IHRvIHRo
ZSBsYXN0IG1vdXNlIG1vdmUgcG9zaXRpb24nLCAoKSA9PiB7CisgICAgaXQoJ3Nob3VsZCBjaGFu
Z2UgdGhlIHVubG9ja2VkIGluZGljYXRvciB0byB0aGUgcG9pbnQgY2xvc2VzdCB0byB0aGUgbGFz
dCBtb3VzZSBtb3ZlIHBvc2l0aW9uJywgKCkgPT4gewogICAgICAgICBjb25zdCBjb250ZXh0ID0g
bmV3IEJyb3dzaW5nQ29udGV4dCgpOwogICAgICAgICByZXR1cm4gY29udGV4dC5pbXBvcnRTY3Jp
cHRzKHNjcmlwdHMsICdDb21wb25lbnRCYXNlJywgJ1RpbWVTZXJpZXNDaGFydCcsICdJbnRlcmFj
dGl2ZVRpbWVTZXJpZXNDaGFydCcsICdNZWFzdXJlbWVudFNldCcsICdNb2NrUmVtb3RlQVBJJyku
dGhlbigoKSA9PiB7CiAgICAgICAgICAgICBjb25zdCBjaGFydCA9IGNyZWF0ZUNoYXJ0V2l0aFNh
bXBsZUNsdXN0ZXIoY29udGV4dCwge30sIHtpbnRlcmFjdGl2ZUNoYXJ0OiB0cnVlLCBpbnRlcmFj
dGl2ZTogdHJ1ZX0pOwpAQCAtOTQxLDggKzk0Myw3IEBAIGRlc2NyaWJlKCdJbnRlcmFjdGl2ZVRp
bWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgIGxldCBjYW52YXM7CiAgICAgICAgICAgICBy
ZXR1cm4gd2FpdEZvckNvbXBvbmVudHNUb1JlbmRlcihjb250ZXh0KS50aGVuKCgpID0+IHsKICAg
ICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFNlbGVjdGlvbigpKS50by5iZShudWxs
KTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50KCkpLnRvLmJlKG51
bGwpOwotICAgICAgICAgICAgICAgIGV4cGVjdChjaGFydC5sb2NrZWRJbmRpY2F0b3IoKSkudG8u
YmUobnVsbCk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRJbmRpY2F0b3Io
KSkudG8uYmUobnVsbCk7CiAgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvckNoYW5nZUNh
bGxzKS50by5iZS5lcWwoW10pOwogCiAgICAgICAgICAgICAgICAgY2FudmFzID0gY2hhcnQuY29u
dGVudCgpLnF1ZXJ5U2VsZWN0b3IoJ2NhbnZhcycpOwpAQCAtOTU1LDEwICs5NTYsMTMgQEAgZGVz
Y3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0JywgKAogICAgICAgICAgICAgICAgIGV4
cGVjdChDYW52YXNUZXN0Lmhhc0NhbnZhc0JlZW5SZWRyYXduKGNhbnZhcykpLnRvLmJlKHRydWUp
OwogCiAgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRTZWxlY3Rpb24oKSkudG8u
YmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRQb2ludCgpKS50
by5ub3QuYmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZEluZGlj
YXRvcigpKS50by5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBjb25zdCBsYXN0UG9pbnQgPSBj
aGFydC5zYW1wbGVkVGltZVNlcmllc0RhdGEoJ2N1cnJlbnQnKS5sYXN0UG9pbnQoKTsKLSAgICAg
ICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50KCkpLnRvLmJlKGxhc3RQb2ludCk7
CisgICAgICAgICAgICAgICAgY29uc3QgaW5kaWNhdG9yID0gY2hhcnQuY3VycmVudEluZGljYXRv
cigpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IpLnRvLm5vdC5iZShudWxsKTsK
KyAgICAgICAgICAgICAgICBjb25zdCBjdXJyZW50VmlldyA9IGNoYXJ0LnNhbXBsZWRUaW1lU2Vy
aWVzRGF0YSgnY3VycmVudCcpOworICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RQb2ludCA9IGN1
cnJlbnRWaWV3Lmxhc3RQb2ludCgpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3Iu
dmlldykudG8uYmUoY3VycmVudFZpZXcpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0
b3IucG9pbnQpLnRvLmJlKGxhc3RQb2ludCk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGluZGlj
YXRvci5pc0xvY2tlZCkudG8uYmUoZmFsc2UpOwogICAgICAgICAgICAgICAgIGV4cGVjdChpbmRp
Y2F0b3JDaGFuZ2VDYWxscykudG8uYmUuZXFsKFtbbGFzdFBvaW50LmlkLCBmYWxzZV1dKTsKIAog
ICAgICAgICAgICAgICAgIGV4cGVjdChzZWxlY3Rpb25DaGFuZ2VDb3VudCkudG8uYmUoMCk7CkBA
IC05ODQsOCArOTg4LDcgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0Jywg
KAogICAgICAgICAgICAgbGV0IGNhbnZhczsKICAgICAgICAgICAgIHJldHVybiB3YWl0Rm9yQ29t
cG9uZW50c1RvUmVuZGVyKGNvbnRleHQpLnRoZW4oKCkgPT4gewogICAgICAgICAgICAgICAgIGV4
cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAg
ICAgIGV4cGVjdChjaGFydC5jdXJyZW50UG9pbnQoKSkudG8uYmUobnVsbCk7Ci0gICAgICAgICAg
ICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZEluZGljYXRvcigpKS50by5iZShudWxsKTsKKyAgICAg
ICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudEluZGljYXRvcigpKS50by5iZShudWxsKTsK
ICAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yQ2hhbmdlQ2FsbHMpLnRvLmJlLmVxbChb
XSk7CiAgICAgICAgICAgICAgICAgY2FudmFzID0gY2hhcnQuY29udGVudCgpLnF1ZXJ5U2VsZWN0
b3IoJ2NhbnZhcycpOwogICAgICAgICAgICAgICAgIGNvbnN0IHJlY3QgPSBjYW52YXMuZ2V0Qm91
bmRpbmdDbGllbnRSZWN0KCk7CkBAIC0xMDAzLDEwICsxMDA2LDEzIEBAIGRlc2NyaWJlKCdJbnRl
cmFjdGl2ZVRpbWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4gewog
ICAgICAgICAgICAgICAgIGV4cGVjdChDYW52YXNUZXN0Lmhhc0NhbnZhc0JlZW5SZWRyYXduKGNh
bnZhcykpLnRvLmJlKHRydWUpOwogCi0gICAgICAgICAgICAgICAgY29uc3QgbGFzdFBvaW50ID0g
Y2hhcnQuc2FtcGxlZFRpbWVTZXJpZXNEYXRhKCdjdXJyZW50JykubGFzdFBvaW50KCk7CisgICAg
ICAgICAgICAgICAgY29uc3QgY3VycmVudFZpZXcgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0Rh
dGEoJ2N1cnJlbnQnKTsKKyAgICAgICAgICAgICAgICBjb25zdCBsYXN0UG9pbnQgPSBjdXJyZW50
Vmlldy5sYXN0UG9pbnQoKTsKICAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFNl
bGVjdGlvbigpKS50by5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3Vy
cmVudFBvaW50KCkpLnRvLmJlKGxhc3RQb2ludCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNo
YXJ0LmxvY2tlZEluZGljYXRvcigpKS50by5iZShsYXN0UG9pbnQpOworICAgICAgICAgICAgICAg
IGNvbnN0IGluZGljYXRvciA9IGNoYXJ0LmN1cnJlbnRJbmRpY2F0b3IoKTsKKyAgICAgICAgICAg
ICAgICBleHBlY3QoaW5kaWNhdG9yLnZpZXcpLnRvLmJlKGN1cnJlbnRWaWV3KTsKKyAgICAgICAg
ICAgICAgICBleHBlY3QoaW5kaWNhdG9yLnBvaW50KS50by5iZShsYXN0UG9pbnQpOworICAgICAg
ICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IuaXNMb2NrZWQpLnRvLmJlKHRydWUpOwogICAgICAg
ICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3JDaGFuZ2VDYWxscykudG8uYmUuZXFsKFtbbGFzdFBv
aW50LmlkLCBmYWxzZV0sIFtsYXN0UG9pbnQuaWQsIHRydWVdXSk7CiAKICAgICAgICAgICAgICAg
ICBleHBlY3Qoc2VsZWN0aW9uQ2hhbmdlQ291bnQpLnRvLmJlKDApOwpAQCAtMTAzNCw4ICsxMDQw
LDcgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0JywgKAogICAgICAgICAg
ICAgbGV0IGxhc3RQb2ludDsKICAgICAgICAgICAgIHJldHVybiB3YWl0Rm9yQ29tcG9uZW50c1Rv
UmVuZGVyKGNvbnRleHQpLnRoZW4oKCkgPT4gewogICAgICAgICAgICAgICAgIGV4cGVjdChjaGFy
dC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAgICAgIGV4cGVj
dChjaGFydC5jdXJyZW50UG9pbnQoKSkudG8uYmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhw
ZWN0KGNoYXJ0LmxvY2tlZEluZGljYXRvcigpKS50by5iZShudWxsKTsKKyAgICAgICAgICAgICAg
ICBleHBlY3QoY2hhcnQuY3VycmVudEluZGljYXRvcigpKS50by5iZShudWxsKTsKICAgICAgICAg
ICAgICAgICBleHBlY3QoaW5kaWNhdG9yQ2hhbmdlQ2FsbHMpLnRvLmJlLmVxbChbXSk7CiAKICAg
ICAgICAgICAgICAgICBjYW52YXMgPSBjaGFydC5jb250ZW50KCkucXVlcnlTZWxlY3RvcignY2Fu
dmFzJyk7CkBAIC0xMDQ3LDEwICsxMDUyLDEzIEBAIGRlc2NyaWJlKCdJbnRlcmFjdGl2ZVRpbWVT
ZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4gewogICAgICAgICAgICAg
ICAgIGV4cGVjdChDYW52YXNUZXN0Lmhhc0NhbnZhc0JlZW5SZWRyYXduKGNhbnZhcykpLnRvLmJl
KHRydWUpOwogCi0gICAgICAgICAgICAgICAgbGFzdFBvaW50ID0gY2hhcnQuc2FtcGxlZFRpbWVT
ZXJpZXNEYXRhKCdjdXJyZW50JykubGFzdFBvaW50KCk7CisgICAgICAgICAgICAgICAgY29uc3Qg
Y3VycmVudFZpZXcgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0RhdGEoJ2N1cnJlbnQnKTsKKyAg
ICAgICAgICAgICAgICBsYXN0UG9pbnQgPSBjdXJyZW50Vmlldy5sYXN0UG9pbnQoKTsKICAgICAg
ICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFNlbGVjdGlvbigpKS50by5iZShudWxsKTsK
LSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50KCkpLnRvLmJlKGxhc3RQ
b2ludCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZEluZGljYXRvcigpKS50
by5iZShudWxsKTsKKyAgICAgICAgICAgICAgICBjb25zdCBpbmRpY2F0b3IgPSBjaGFydC5jdXJy
ZW50SW5kaWNhdG9yKCk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvci52aWV3KS50
by5iZShjdXJyZW50Vmlldyk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvci5wb2lu
dCkudG8uYmUobGFzdFBvaW50KTsKKyAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yLmlz
TG9ja2VkKS50by5iZShmYWxzZSk7CiAgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvckNo
YW5nZUNhbGxzKS50by5iZS5lcWwoW1tsYXN0UG9pbnQuaWQsIGZhbHNlXV0pOwogCiAgICAgICAg
ICAgICAgICAgY2FudmFzLnBhcmVudE5vZGUuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgn
bW91c2Vtb3ZlJywge3RhcmdldDogY2FudmFzLCBjbGllbnRYOiByZWN0LnJpZ2h0ICsgNTAsIGNs
aWVudFk6IHJlY3QuYm90dG9tICsgNTAsIGNvbXBvc2VkOiB0cnVlLCBidWJibGVzOiB0cnVlfSkp
OwpAQCAtMTA2Miw4ICsxMDcwLDcgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0No
YXJ0JywgKAogICAgICAgICAgICAgICAgIGV4cGVjdChDYW52YXNUZXN0Lmhhc0NhbnZhc0JlZW5S
ZWRyYXduKGNhbnZhcykpLnRvLmJlKHRydWUpOwogCiAgICAgICAgICAgICAgICAgZXhwZWN0KGNo
YXJ0LmN1cnJlbnRTZWxlY3Rpb24oKSkudG8uYmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhw
ZWN0KGNoYXJ0LmN1cnJlbnRQb2ludCgpKS50by5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBl
eHBlY3QoY2hhcnQubG9ja2VkSW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOworICAgICAgICAgICAg
ICAgIGV4cGVjdChjaGFydC5jdXJyZW50SW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOwogICAgICAg
ICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3JDaGFuZ2VDYWxscykudG8uYmUuZXFsKFtbbGFzdFBv
aW50LmlkLCBmYWxzZV0sIFtudWxsLCBmYWxzZV1dKTsKIAogICAgICAgICAgICAgICAgIGV4cGVj
dChzZWxlY3Rpb25DaGFuZ2VDb3VudCkudG8uYmUoMCk7CkBAIC0xMDg4LDExICsxMDk1LDExIEBA
IGRlc2NyaWJlKCdJbnRlcmFjdGl2ZVRpbWVTZXJpZXNDaGFydCcsICgKIAogICAgICAgICAgICAg
bGV0IGNhbnZhczsKICAgICAgICAgICAgIGxldCByZWN0OworICAgICAgICAgICAgbGV0IGN1cnJl
bnRWaWV3OwogICAgICAgICAgICAgbGV0IGxhc3RQb2ludDsKICAgICAgICAgICAgIHJldHVybiB3
YWl0Rm9yQ29tcG9uZW50c1RvUmVuZGVyKGNvbnRleHQpLnRoZW4oKCkgPT4gewogICAgICAgICAg
ICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAg
ICAgICAgICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50UG9pbnQoKSkudG8uYmUobnVsbCk7Ci0g
ICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZEluZGljYXRvcigpKS50by5iZShudWxs
KTsKKyAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudEluZGljYXRvcigpKS50by5i
ZShudWxsKTsKICAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yQ2hhbmdlQ2FsbHMpLnRv
LmJlLmVxbChbXSk7CiAKICAgICAgICAgICAgICAgICBjYW52YXMgPSBjaGFydC5jb250ZW50KCku
cXVlcnlTZWxlY3RvcignY2FudmFzJyk7CkBAIC0xMTA0LDEwICsxMTExLDEzIEBAIGRlc2NyaWJl
KCdJbnRlcmFjdGl2ZVRpbWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgIH0pLnRoZW4oKCkg
PT4gewogICAgICAgICAgICAgICAgIGV4cGVjdChDYW52YXNUZXN0Lmhhc0NhbnZhc0JlZW5SZWRy
YXduKGNhbnZhcykpLnRvLmJlKHRydWUpOwogCi0gICAgICAgICAgICAgICAgbGFzdFBvaW50ID0g
Y2hhcnQuc2FtcGxlZFRpbWVTZXJpZXNEYXRhKCdjdXJyZW50JykubGFzdFBvaW50KCk7CisgICAg
ICAgICAgICAgICAgY3VycmVudFZpZXcgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0RhdGEoJ2N1
cnJlbnQnKTsKKyAgICAgICAgICAgICAgICBsYXN0UG9pbnQgPSBjdXJyZW50Vmlldy5sYXN0UG9p
bnQoKTsKICAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFNlbGVjdGlvbigpKS50
by5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50KCkp
LnRvLmJlKGxhc3RQb2ludCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZElu
ZGljYXRvcigpKS50by5iZShsYXN0UG9pbnQpOworICAgICAgICAgICAgICAgIGNvbnN0IGluZGlj
YXRvciA9IGNoYXJ0LmN1cnJlbnRJbmRpY2F0b3IoKTsKKyAgICAgICAgICAgICAgICBleHBlY3Qo
aW5kaWNhdG9yLnZpZXcpLnRvLmJlKGN1cnJlbnRWaWV3KTsKKyAgICAgICAgICAgICAgICBleHBl
Y3QoaW5kaWNhdG9yLnBvaW50KS50by5iZShsYXN0UG9pbnQpOworICAgICAgICAgICAgICAgIGV4
cGVjdChpbmRpY2F0b3IuaXNMb2NrZWQpLnRvLmJlKHRydWUpOwogICAgICAgICAgICAgICAgIGV4
cGVjdChpbmRpY2F0b3JDaGFuZ2VDYWxscykudG8uYmUuZXFsKFtbbGFzdFBvaW50LmlkLCB0cnVl
XV0pOwogCiAgICAgICAgICAgICAgICAgY2FudmFzLnBhcmVudE5vZGUuZGlzcGF0Y2hFdmVudChu
ZXcgTW91c2VFdmVudCgnbW91c2Vtb3ZlJywge3RhcmdldDogY2FudmFzLCBjbGllbnRYOiByZWN0
LnJpZ2h0ICsgNTAsIGNsaWVudFk6IHJlY3QuYm90dG9tICsgNTAsIGNvbXBvc2VkOiB0cnVlLCBi
dWJibGVzOiB0cnVlfSkpOwpAQCAtMTExOSw4ICsxMTI5LDEwIEBAIGRlc2NyaWJlKCdJbnRlcmFj
dGl2ZVRpbWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgICAgICBleHBlY3QoQ2FudmFzVGVz
dC5oYXNDYW52YXNCZWVuUmVkcmF3bihjYW52YXMpKS50by5iZShmYWxzZSk7CiAKICAgICAgICAg
ICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFNlbGVjdGlvbigpKS50by5iZShudWxsKTsKLSAg
ICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50KCkpLnRvLmJlKGxhc3RQb2lu
dCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZEluZGljYXRvcigpKS50by5i
ZShsYXN0UG9pbnQpOworICAgICAgICAgICAgICAgIGNvbnN0IGluZGljYXRvciA9IGNoYXJ0LmN1
cnJlbnRJbmRpY2F0b3IoKTsKKyAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yLnZpZXcp
LnRvLmJlKGN1cnJlbnRWaWV3KTsKKyAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yLnBv
aW50KS50by5iZShsYXN0UG9pbnQpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3Iu
aXNMb2NrZWQpLnRvLmJlKHRydWUpOwogICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3JD
aGFuZ2VDYWxscykudG8uYmUuZXFsKFtbbGFzdFBvaW50LmlkLCB0cnVlXV0pOwogCiAgICAgICAg
ICAgICAgICAgZXhwZWN0KHNlbGVjdGlvbkNoYW5nZUNvdW50KS50by5iZSgwKTsKQEAgLTExNDYs
MTEgKzExNTgsMTEgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0JywgKAog
ICAgICAgICAgICAgbGV0IGNhbnZhczsKICAgICAgICAgICAgIGxldCByZWN0OwogICAgICAgICAg
ICAgbGV0IHk7CisgICAgICAgICAgICBsZXQgY3VycmVudFZpZXc7CiAgICAgICAgICAgICBsZXQg
bGFzdFBvaW50OwogICAgICAgICAgICAgcmV0dXJuIHdhaXRGb3JDb21wb25lbnRzVG9SZW5kZXIo
Y29udGV4dCkudGhlbigoKSA9PiB7CiAgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJl
bnRTZWxlY3Rpb24oKSkudG8uYmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0
LmN1cnJlbnRQb2ludCgpKS50by5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hh
cnQubG9ja2VkSW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOworICAgICAgICAgICAgICAgIGV4cGVj
dChjaGFydC5jdXJyZW50SW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOwogICAgICAgICAgICAgICAg
IGV4cGVjdChpbmRpY2F0b3JDaGFuZ2VDYWxscykudG8uYmUuZXFsKFtdKTsKIAogICAgICAgICAg
ICAgICAgIGNhbnZhcyA9IGNoYXJ0LmNvbnRlbnQoKS5xdWVyeVNlbGVjdG9yKCdjYW52YXMnKTsK
QEAgLTExNjMsMTAgKzExNzUsMTMgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0No
YXJ0JywgKAogICAgICAgICAgICAgfSkudGhlbigoKSA9PiB7CiAgICAgICAgICAgICAgICAgZXhw
ZWN0KENhbnZhc1Rlc3QuaGFzQ2FudmFzQmVlblJlZHJhd24oY2FudmFzKSkudG8uYmUodHJ1ZSk7
CiAKLSAgICAgICAgICAgICAgICBsYXN0UG9pbnQgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0Rh
dGEoJ2N1cnJlbnQnKS5sYXN0UG9pbnQoKTsKKyAgICAgICAgICAgICAgICBjdXJyZW50VmlldyA9
IGNoYXJ0LnNhbXBsZWRUaW1lU2VyaWVzRGF0YSgnY3VycmVudCcpOworICAgICAgICAgICAgICAg
IGxhc3RQb2ludCA9IGN1cnJlbnRWaWV3Lmxhc3RQb2ludCgpOwogICAgICAgICAgICAgICAgIGV4
cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAg
ICAgIGV4cGVjdChjaGFydC5jdXJyZW50UG9pbnQoKSkudG8uYmUobGFzdFBvaW50KTsKLSAgICAg
ICAgICAgICAgICBleHBlY3QoY2hhcnQubG9ja2VkSW5kaWNhdG9yKCkpLnRvLmJlKGxhc3RQb2lu
dCk7CisgICAgICAgICAgICAgICAgY29uc3QgaW5kaWNhdG9yID0gY2hhcnQuY3VycmVudEluZGlj
YXRvcigpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IudmlldykudG8uYmUoY3Vy
cmVudFZpZXcpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IucG9pbnQpLnRvLmJl
KGxhc3RQb2ludCk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvci5pc0xvY2tlZCku
dG8uYmUodHJ1ZSk7CiAgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvckNoYW5nZUNhbGxz
KS50by5iZS5lcWwoW1tsYXN0UG9pbnQuaWQsIHRydWVdXSk7CiAKICAgICAgICAgICAgICAgICBj
YW52YXMuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgnY2xpY2snLCB7dGFyZ2V0OiBjYW52
YXMsIGNsaWVudFg6IHJlY3QubGVmdCArIDEsIGNsaWVudFk6IHksIGNvbXBvc2VkOiB0cnVlLCBi
dWJibGVzOiB0cnVlfSkpOwpAQCAtMTE3Nyw5ICsxMTkyLDExIEBAIGRlc2NyaWJlKCdJbnRlcmFj
dGl2ZVRpbWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgICAgICBleHBlY3QoQ2FudmFzVGVz
dC5oYXNDYW52YXNCZWVuUmVkcmF3bihjYW52YXMpKS50by5iZSh0cnVlKTsKIAogICAgICAgICAg
ICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAg
ICAgICAgICAgICAgIGNvbnN0IGZpcnN0UG9pbnQgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0Rh
dGEoJ2N1cnJlbnQnKS5maXJzdFBvaW50KCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0
LmN1cnJlbnRQb2ludCgpKS50by5iZShmaXJzdFBvaW50KTsKLSAgICAgICAgICAgICAgICBleHBl
Y3QoY2hhcnQubG9ja2VkSW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOworICAgICAgICAgICAgICAg
IGNvbnN0IGZpcnN0UG9pbnQgPSBjdXJyZW50Vmlldy5maXJzdFBvaW50KCk7CisgICAgICAgICAg
ICAgICAgY29uc3QgaW5kaWNhdG9yID0gY2hhcnQuY3VycmVudEluZGljYXRvcigpOworICAgICAg
ICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IudmlldykudG8uYmUoY3VycmVudFZpZXcpOworICAg
ICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IucG9pbnQpLnRvLmJlKGZpcnN0UG9pbnQpOwor
ICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IuaXNMb2NrZWQpLnRvLmJlKGZhbHNlKTsK
ICAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yQ2hhbmdlQ2FsbHMpLnRvLmJlLmVxbChb
W2xhc3RQb2ludC5pZCwgdHJ1ZV0sIFtmaXJzdFBvaW50LmlkLCBmYWxzZV1dKTsKIAogICAgICAg
ICAgICAgICAgIGV4cGVjdChzZWxlY3Rpb25DaGFuZ2VDb3VudCkudG8uYmUoMCk7CkBAIC0xMjA5
LDEzICsxMjI2LDEzIEBAIGRlc2NyaWJlKCdJbnRlcmFjdGl2ZVRpbWVTZXJpZXNDaGFydCcsICgK
ICAgICAgICAgICAgIGxldCBjYW52YXM7CiAgICAgICAgICAgICBsZXQgcmVjdDsKICAgICAgICAg
ICAgIGxldCB5OworICAgICAgICAgICAgbGV0IGN1cnJlbnRWaWV3OwogICAgICAgICAgICAgbGV0
IGZpcnN0UG9pbnQ7CiAgICAgICAgICAgICBsZXQgb2xkUmFuZ2U7CiAgICAgICAgICAgICBsZXQg
bmV3UmFuZ2U7CiAgICAgICAgICAgICByZXR1cm4gd2FpdEZvckNvbXBvbmVudHNUb1JlbmRlcihj
b250ZXh0KS50aGVuKCgpID0+IHsKICAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVu
dFNlbGVjdGlvbigpKS50by5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQu
Y3VycmVudFBvaW50KCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAgICAgIGV4cGVjdChjaGFy
dC5sb2NrZWRJbmRpY2F0b3IoKSkudG8uYmUobnVsbCk7CisgICAgICAgICAgICAgICAgZXhwZWN0
KGNoYXJ0LmN1cnJlbnRJbmRpY2F0b3IoKSkudG8uYmUobnVsbCk7CiAgICAgICAgICAgICAgICAg
ZXhwZWN0KHNlbGVjdGlvbkNoYW5nZUNhbGxzKS50by5iZS5lcWwoW10pOwogCiAgICAgICAgICAg
ICAgICAgY2FudmFzID0gY2hhcnQuY29udGVudCgpLnF1ZXJ5U2VsZWN0b3IoJ2NhbnZhcycpOwpA
QCAtMTIyOCwxMCArMTI0NSwxMyBAQCBkZXNjcmliZSgnSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hh
cnQnLCAoCiAgICAgICAgICAgICB9KS50aGVuKCgpID0+IHsKICAgICAgICAgICAgICAgICBleHBl
Y3QoQ2FudmFzVGVzdC5oYXNDYW52YXNCZWVuUmVkcmF3bihjYW52YXMpKS50by5iZSh0cnVlKTsK
IAotICAgICAgICAgICAgICAgIGZpcnN0UG9pbnQgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0Rh
dGEoJ2N1cnJlbnQnKS5maXJzdFBvaW50KCk7CisgICAgICAgICAgICAgICAgY3VycmVudFZpZXcg
PSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0RhdGEoJ2N1cnJlbnQnKTsKKyAgICAgICAgICAgICAg
ICBmaXJzdFBvaW50ID0gY3VycmVudFZpZXcuZmlyc3RQb2ludCgpOwogICAgICAgICAgICAgICAg
IGV4cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAgICAgICAg
ICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50UG9pbnQoKSkudG8uYmUoZmlyc3RQb2ludCk7Ci0g
ICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tlZEluZGljYXRvcigpKS50by5iZShudWxs
KTsKKyAgICAgICAgICAgICAgICBsZXQgaW5kaWNhdG9yID0gY2hhcnQuY3VycmVudEluZGljYXRv
cigpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IudmlldykudG8uYmUoY3VycmVu
dFZpZXcpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IucG9pbnQpLnRvLmJlKGZp
cnN0UG9pbnQpOworICAgICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IuaXNMb2NrZWQpLnRv
LmJlKGZhbHNlKTsKICAgICAgICAgICAgICAgICBleHBlY3QoaW5kaWNhdG9yQ2hhbmdlQ2FsbHMp
LnRvLmJlLmVxbChbW2ZpcnN0UG9pbnQuaWQsIGZhbHNlXV0pOwogICAgICAgICAgICAgICAgIGV4
cGVjdCh6b29tQnV0dG9uLm9mZnNldEhlaWdodCkudG8uYmUoMCk7CiAKQEAgLTEyNDMsOCArMTI2
MywxMCBAQCBkZXNjcmliZSgnSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hhcnQnLCAoCiAgICAgICAg
ICAgICAgICAgZXhwZWN0KENhbnZhc1Rlc3QuaGFzQ2FudmFzQmVlblJlZHJhd24oY2FudmFzKSku
dG8uYmUoZmFsc2UpOwogCiAgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRTZWxl
Y3Rpb24oKSkudG8uYmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJl
bnRQb2ludCgpKS50by5iZShmaXJzdFBvaW50KTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hh
cnQubG9ja2VkSW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOworICAgICAgICAgICAgICAgIGxldCBp
bmRpY2F0b3IgPSBjaGFydC5jdXJyZW50SW5kaWNhdG9yKCk7CisgICAgICAgICAgICAgICAgZXhw
ZWN0KGluZGljYXRvci52aWV3KS50by5iZShjdXJyZW50Vmlldyk7CisgICAgICAgICAgICAgICAg
ZXhwZWN0KGluZGljYXRvci5wb2ludCkudG8uYmUoZmlyc3RQb2ludCk7CisgICAgICAgICAgICAg
ICAgZXhwZWN0KGluZGljYXRvci5pc0xvY2tlZCkudG8uYmUoZmFsc2UpOwogICAgICAgICAgICAg
ICAgIGV4cGVjdChzZWxlY3Rpb25DaGFuZ2VDYWxscykudG8uYmUuZXFsKFtdKTsKICAgICAgICAg
ICAgICAgICBleHBlY3QoaW5kaWNhdG9yQ2hhbmdlQ2FsbHMpLnRvLmJlLmVxbChbW2ZpcnN0UG9p
bnQuaWQsIGZhbHNlXV0pOwogICAgICAgICAgICAgICAgIGV4cGVjdCh6b29tQnV0dG9uLm9mZnNl
dEhlaWdodCkudG8uYmUoMCk7CkBAIC0xMjU3LDggKzEyNzksNyBAQCBkZXNjcmliZSgnSW50ZXJh
Y3RpdmVUaW1lU2VyaWVzQ2hhcnQnLCAoCiAgICAgICAgICAgICAgICAgZXhwZWN0KENhbnZhc1Rl
c3QuaGFzQ2FudmFzQmVlblJlZHJhd24oY2FudmFzKSkudG8uYmUodHJ1ZSk7CiAKICAgICAgICAg
ICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFNlbGVjdGlvbigpKS50by5ub3QuYmUobnVsbCk7
Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRQb2ludCgpKS50by5iZShudWxs
KTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQubG9ja2VkSW5kaWNhdG9yKCkpLnRvLmJl
KG51bGwpOworICAgICAgICAgICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50SW5kaWNhdG9yKCkp
LnRvLmJlKG51bGwpOwogICAgICAgICAgICAgICAgIGV4cGVjdChzZWxlY3Rpb25DaGFuZ2VDYWxs
cy5sZW5ndGgpLnRvLmJlKDEpOwogICAgICAgICAgICAgICAgIG9sZFJhbmdlID0gc2VsZWN0aW9u
Q2hhbmdlQ2FsbHNbMF1bMF07CiAgICAgICAgICAgICAgICAgZXhwZWN0KG9sZFJhbmdlKS50by5i
ZS5lcWwoY2hhcnQuY3VycmVudFNlbGVjdGlvbigpKTsKQEAgLTEyNzQsOCArMTI5NSw3IEBAIGRl
c2NyaWJlKCdJbnRlcmFjdGl2ZVRpbWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgICAgICBl
eHBlY3QoQ2FudmFzVGVzdC5oYXNDYW52YXNCZWVuUmVkcmF3bihjYW52YXMpKS50by5iZSh0cnVl
KTsKIAogICAgICAgICAgICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRv
Lm5vdC5iZShudWxsKTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50
KCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAgICAgIGV4cGVjdChjaGFydC5sb2NrZWRJbmRp
Y2F0b3IoKSkudG8uYmUobnVsbCk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJl
bnRJbmRpY2F0b3IoKSkudG8uYmUobnVsbCk7CiAgICAgICAgICAgICAgICAgZXhwZWN0KHNlbGVj
dGlvbkNoYW5nZUNhbGxzLmxlbmd0aCkudG8uYmUoMik7CiAgICAgICAgICAgICAgICAgbmV3UmFu
Z2UgPSBzZWxlY3Rpb25DaGFuZ2VDYWxsc1sxXVswXTsKICAgICAgICAgICAgICAgICBleHBlY3Qo
bmV3UmFuZ2UpLnRvLmJlLmVxbChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpOwpAQCAtMTI5Myw4
ICsxMzEzLDcgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0JywgKAogICAg
ICAgICAgICAgICAgIGV4cGVjdChDYW52YXNUZXN0Lmhhc0NhbnZhc0JlZW5SZWRyYXduKGNhbnZh
cykpLnRvLmJlKHRydWUpOwogCiAgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRT
ZWxlY3Rpb24oKSkudG8uYmUuZXFsKG5ld1JhbmdlKTsKLSAgICAgICAgICAgICAgICBleHBlY3Qo
Y2hhcnQuY3VycmVudFBvaW50KCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAgICAgIGV4cGVj
dChjaGFydC5sb2NrZWRJbmRpY2F0b3IoKSkudG8uYmUobnVsbCk7CisgICAgICAgICAgICAgICAg
ZXhwZWN0KGNoYXJ0LmN1cnJlbnRJbmRpY2F0b3IoKSkudG8uYmUobnVsbCk7CiAgICAgICAgICAg
ICAgICAgZXhwZWN0KHNlbGVjdGlvbkNoYW5nZUNhbGxzLmxlbmd0aCkudG8uYmUoMyk7CiAgICAg
ICAgICAgICAgICAgZXhwZWN0KHNlbGVjdGlvbkNoYW5nZUNhbGxzWzJdWzBdKS50by5iZS5lcWwo
bmV3UmFuZ2UpOwogICAgICAgICAgICAgICAgIGV4cGVjdChzZWxlY3Rpb25DaGFuZ2VDYWxsc1sy
XVsxXSkudG8uYmUodHJ1ZSk7CkBAIC0xMzM3LDggKzEzNTYsNyBAQCBkZXNjcmliZSgnSW50ZXJh
Y3RpdmVUaW1lU2VyaWVzQ2hhcnQnLCAoCiAKICAgICAgICAgICAgICAgICBzZWxlY3Rpb24gPSBj
aGFydC5jdXJyZW50U2VsZWN0aW9uKCk7CiAgICAgICAgICAgICAgICAgZXhwZWN0KHNlbGVjdGlv
bikudG8ubm90LmJlKG51bGwpOwotICAgICAgICAgICAgICAgIGV4cGVjdChjaGFydC5jdXJyZW50
UG9pbnQoKSkudG8uYmUobnVsbCk7Ci0gICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmxvY2tl
ZEluZGljYXRvcigpKS50by5iZShudWxsKTsKKyAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQu
Y3VycmVudEluZGljYXRvcigpKS50by5iZShudWxsKTsKICAgICAgICAgICAgICAgICBleHBlY3Qo
em9vbUJ1dHRvbi5vZmZzZXRIZWlnaHQpLnRvLm5vdC5iZSgwKTsKICAgICAgICAgICAgICAgICBl
eHBlY3Qoem9vbUNhbGxzKS50by5iZS5lcWwoW10pOwogICAgICAgICAgICAgICAgIHpvb21CdXR0
b24uY2xpY2soKTsKQEAgLTEzODMsOCArMTQwMSw3IEBAIGRlc2NyaWJlKCdJbnRlcmFjdGl2ZVRp
bWVTZXJpZXNDaGFydCcsICgKICAgICAgICAgICAgICAgICBleHBlY3QoQ2FudmFzVGVzdC5oYXND
YW52YXNCZWVuUmVkcmF3bihjYW52YXMpKS50by5iZSh0cnVlKTsKIAogICAgICAgICAgICAgICAg
IGV4cGVjdChjaGFydC5jdXJyZW50U2VsZWN0aW9uKCkpLnRvLm5vdC5iZShudWxsKTsKLSAgICAg
ICAgICAgICAgICBleHBlY3QoY2hhcnQuY3VycmVudFBvaW50KCkpLnRvLmJlKG51bGwpOwotICAg
ICAgICAgICAgICAgIGV4cGVjdChjaGFydC5sb2NrZWRJbmRpY2F0b3IoKSkudG8uYmUobnVsbCk7
CisgICAgICAgICAgICAgICAgZXhwZWN0KGNoYXJ0LmN1cnJlbnRJbmRpY2F0b3IoKSkudG8uYmUo
bnVsbCk7CiAKICAgICAgICAgICAgICAgICBjYW52YXMuZGlzcGF0Y2hFdmVudChuZXcgTW91c2VF
dmVudCgnY2xpY2snLCB7dGFyZ2V0OiBjYW52YXMsIGNsaWVudFg6IHJlY3QubGVmdCArIDEsIGNs
aWVudFk6IHkgKyA1LCBjb21wb3NlZDogdHJ1ZSwgYnViYmxlczogdHJ1ZX0pKTsKIApAQCAtMTM5
NCw4ICsxNDExLDExIEBAIGRlc2NyaWJlKCdJbnRlcmFjdGl2ZVRpbWVTZXJpZXNDaGFydCcsICgK
ICAgICAgICAgICAgICAgICBleHBlY3QoQ2FudmFzVGVzdC5oYXNDYW52YXNCZWVuUmVkcmF3bihj
YW52YXMpKS50by5iZSh0cnVlKTsKIAogICAgICAgICAgICAgICAgIGV4cGVjdChjaGFydC5jdXJy
ZW50U2VsZWN0aW9uKCkpLnRvLmJlKG51bGwpOwotICAgICAgICAgICAgICAgIGV4cGVjdChjaGFy
dC5jdXJyZW50UG9pbnQoKSkudG8uYmUoY2hhcnQuc2FtcGxlZFRpbWVTZXJpZXNEYXRhKCdjdXJy
ZW50JykuZmlyc3RQb2ludCgpKTsKLSAgICAgICAgICAgICAgICBleHBlY3QoY2hhcnQubG9ja2Vk
SW5kaWNhdG9yKCkpLnRvLmJlKG51bGwpOworICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRW
aWV3ID0gY2hhcnQuc2FtcGxlZFRpbWVTZXJpZXNEYXRhKCdjdXJyZW50Jyk7CisgICAgICAgICAg
ICAgICAgY29uc3QgaW5kaWNhdG9yID0gY2hhcnQuY3VycmVudEluZGljYXRvcigpOworICAgICAg
ICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IudmlldykudG8uYmUoY3VycmVudFZpZXcpOworICAg
ICAgICAgICAgICAgIGV4cGVjdChpbmRpY2F0b3IucG9pbnQpLnRvLmJlKGN1cnJlbnRWaWV3LmZp
cnN0UG9pbnQoKSk7CisgICAgICAgICAgICAgICAgZXhwZWN0KGluZGljYXRvci5pc0xvY2tlZCku
dG8uYmUoZmFsc2UpOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0pOwogICAgIH0pOwpAQCAt
MTQ2MCwzICsxNDgwLDUgQEAgZGVzY3JpYmUoJ0ludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0Jywg
KAogICAgIH0pOwogCiB9KTsKKworfSkoKTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCklu
ZGV4OiBXZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGljL3YzL2NvbXBvbmVudHMvY2hhcnQt
c3RhdHVzLXZpZXcuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1
YmxpYy92My9jb21wb25lbnRzL2NoYXJ0LXN0YXR1cy12aWV3LmpzCShyZXZpc2lvbiAyMTI5OTAp
CisrKyBXZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGljL3YzL2NvbXBvbmVudHMvY2hhcnQt
c3RhdHVzLXZpZXcuanMJKHdvcmtpbmcgY29weSkKQEAgLTYwLDE1ICs2MCwxOCBAQCBjbGFzcyBD
aGFydFN0YXR1c1ZpZXcgZXh0ZW5kcyBDb21wb25lbnRCCiAgICAgICAgICAgICAgICAgICAgIHBy
ZXZpb3VzUG9pbnQgPSB2aWV3LmZpcnN0UG9pbnQoKTsKICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICB9IGVsc2UgIHsKLSAgICAgICAgICAgICAgICBjdXJyZW50UG9pbnQgPSB0aGlzLl9j
aGFydC5jdXJyZW50UG9pbnQoKTsKLSAgICAgICAgICAgICAgICBwcmV2aW91c1BvaW50ID0gdGhp
cy5fY2hhcnQuY3VycmVudFBvaW50KC0xKTsKKyAgICAgICAgICAgICAgICBjb25zdCBpbmRpY2F0
b3IgPSB0aGlzLl9jaGFydC5jdXJyZW50SW5kaWNhdG9yKCk7CisgICAgICAgICAgICAgICAgaWYg
KGluZGljYXRvcikgeworICAgICAgICAgICAgICAgICAgICBjdXJyZW50UG9pbnQgPSBpbmRpY2F0
b3IucG9pbnQ7CisgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzUG9pbnQgPSBpbmRpY2F0b3Iu
dmlldy5wcmV2aW91c1BvaW50KGN1cnJlbnRQb2ludCk7CisgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgdmFyIGRhdGEgPSB0aGlz
Ll9jaGFydC5zYW1wbGVkVGltZVNlcmllc0RhdGEoJ2N1cnJlbnQnKTsKICAgICAgICAgICAgIGlm
ICghZGF0YSkKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICBpZiAo
ZGF0YS5sZW5ndGgpCi0gICAgICAgICAgICAgICAgY3VycmVudFBvaW50ID0gZGF0YVtkYXRhLmxl
bmd0aCAtIDFdOworICAgICAgICAgICAgaWYgKGRhdGEubGVuZ3RoKCkpCisgICAgICAgICAgICAg
ICAgY3VycmVudFBvaW50ID0gZGF0YS5sYXN0UG9pbnQoKTsKICAgICAgICAgfQogCiAgICAgICAg
IGlmIChjdXJyZW50UG9pbnQgPT0gdGhpcy5fdXNlZEN1cnJlbnRQb2ludCAmJiBwcmV2aW91c1Bv
aW50ID09IHRoaXMuX3VzZWRQcmV2aW91c1BvaW50KQpAQCAtMTAwLDc3ICsxMDMsNTUgQEAgY2xh
c3MgQ2hhcnRTdGF0dXNWaWV3IGV4dGVuZHMgQ29tcG9uZW50QgogCiAgICAgX2NvbXB1dGVDaGFy
dFN0YXR1cyhtZXRyaWMsIGNoYXJ0LCBjdXJyZW50UG9pbnQsIHByZXZpb3VzUG9pbnQpCiAgICAg
ewotICAgICAgICB2YXIgY3VycmVudFRpbWVTZXJpZXNEYXRhID0gY2hhcnQuc2FtcGxlZFRpbWVT
ZXJpZXNEYXRhKCdjdXJyZW50Jyk7Ci0gICAgICAgIHZhciBiYXNlbGluZVRpbWVTZXJpZXNEYXRh
ID0gY2hhcnQuc2FtcGxlZFRpbWVTZXJpZXNEYXRhKCdiYXNlbGluZScpOwotICAgICAgICB2YXIg
dGFyZ2V0VGltZVNlcmllc0RhdGEgPSBjaGFydC5zYW1wbGVkVGltZVNlcmllc0RhdGEoJ3Rhcmdl
dCcpOwotICAgICAgICBpZiAoIWN1cnJlbnRUaW1lU2VyaWVzRGF0YSkKLSAgICAgICAgICAgIHJl
dHVybiBudWxsOwotCi0gICAgICAgIHZhciBmb3JtYXR0ZXIgPSBtZXRyaWMubWFrZUZvcm1hdHRl
cigzKTsKLSAgICAgICAgdmFyIGRlbHRhRm9ybWF0dGVyID0gbWV0cmljLm1ha2VGb3JtYXR0ZXIo
MiwgdHJ1ZSk7Ci0KLSAgICAgICAgaWYgKCFjdXJyZW50UG9pbnQpCi0gICAgICAgICAgICBjdXJy
ZW50UG9pbnQgPSBjdXJyZW50VGltZVNlcmllc0RhdGFbY3VycmVudFRpbWVTZXJpZXNEYXRhLmxl
bmd0aCAtIDFdOwotCi0gICAgICAgIHZhciBiYXNlbGluZVBvaW50ID0gdGhpcy5fZmluZExhc3RQ
b2ludFByaW9yVG9UaW1lKGN1cnJlbnRQb2ludCwgYmFzZWxpbmVUaW1lU2VyaWVzRGF0YSk7Ci0g
ICAgICAgIHZhciBkaWZmRnJvbUJhc2VsaW5lID0gYmFzZWxpbmVQb2ludCAhPT0gdW5kZWZpbmVk
ID8gKGN1cnJlbnRQb2ludC52YWx1ZSAtIGJhc2VsaW5lUG9pbnQudmFsdWUpIC8gYmFzZWxpbmVQ
b2ludC52YWx1ZSA6IHVuZGVmaW5lZDsKLQotICAgICAgICB2YXIgdGFyZ2V0UG9pbnQgPSB0aGlz
Ll9maW5kTGFzdFBvaW50UHJpb3JUb1RpbWUoY3VycmVudFBvaW50LCB0YXJnZXRUaW1lU2VyaWVz
RGF0YSk7Ci0gICAgICAgIHZhciBkaWZmRnJvbVRhcmdldCA9IHRhcmdldFBvaW50ICE9PSB1bmRl
ZmluZWQgPyAoY3VycmVudFBvaW50LnZhbHVlIC0gdGFyZ2V0UG9pbnQudmFsdWUpIC8gdGFyZ2V0
UG9pbnQudmFsdWUgOiB1bmRlZmluZWQ7Ci0KLSAgICAgICAgdmFyIGxhYmVsID0gJyc7Ci0gICAg
ICAgIHZhciBjbGFzc05hbWUgPSAnJzsKLQotICAgICAgICBmdW5jdGlvbiBsYWJlbEZvckRpZmYo
ZGlmZiwgcmVmZXJlbmNlUG9pbnQsIG5hbWUsIGNvbXBhcmlzb24pCi0gICAgICAgIHsKLSAgICAg
ICAgICAgIHZhciByZWxhdGl2ZURpZmYgPSBNYXRoLmFicyhkaWZmICogMTAwKS50b0ZpeGVkKDEp
OwotICAgICAgICAgICAgdmFyIHJlZmVyZW5jZVZhbHVlID0gcmVmZXJlbmNlUG9pbnQgPyBgICgk
e2Zvcm1hdHRlcihyZWZlcmVuY2VQb2ludC52YWx1ZSl9KWAgOiAnJzsKLSAgICAgICAgICAgIHJl
dHVybiBgJHtyZWxhdGl2ZURpZmZ9JSAke2NvbXBhcmlzb259ICR7bmFtZX0ke3JlZmVyZW5jZVZh
bHVlfWA7CisgICAgICAgIGNvbnNvbGUuYXNzZXJ0KGN1cnJlbnRQb2ludCk7CisgICAgICAgIGNv
bnN0IGJhc2VsaW5lVmlldyA9IGNoYXJ0LnNhbXBsZWRUaW1lU2VyaWVzRGF0YSgnYmFzZWxpbmUn
KTsKKyAgICAgICAgY29uc3QgdGFyZ2V0VmlldyA9IGNoYXJ0LnNhbXBsZWRUaW1lU2VyaWVzRGF0
YSgndGFyZ2V0Jyk7CisKKyAgICAgICAgY29uc3QgZm9ybWF0dGVyID0gbWV0cmljLm1ha2VGb3Jt
YXR0ZXIoMyk7CisgICAgICAgIGNvbnN0IGRlbHRhRm9ybWF0dGVyID0gbWV0cmljLm1ha2VGb3Jt
YXR0ZXIoMiwgdHJ1ZSk7CisgICAgICAgIGNvbnN0IHNtYWxsZXJJc0JldHRlciA9IG1ldHJpYy5p
c1NtYWxsZXJCZXR0ZXIoKTsKKworICAgICAgICBjb25zdCBsYWJlbEZvckRpZmYgPSAoZGlmZiwg
cmVmZXJlbmNlUG9pbnQsIG5hbWUsIGNvbXBhcmlzb24pID0+IHsKKyAgICAgICAgICAgIGNvbnN0
IHJlbGF0aXZlRGlmZiA9IE1hdGguYWJzKGRpZmYgKiAxMDApLnRvRml4ZWQoMSk7CisgICAgICAg
ICAgICBjb25zdCByZWZlcmVuY2VWYWx1ZSA9IHJlZmVyZW5jZVBvaW50ID8gYCAoJHtmb3JtYXR0
ZXIocmVmZXJlbmNlUG9pbnQudmFsdWUpfSlgIDogJyc7CisgICAgICAgICAgICByZXR1cm4gYCR7
cmVsYXRpdmVEaWZmfSUgJHtjb21wYXJpc29ufSB0aGFuICR7bmFtZX0ke3JlZmVyZW5jZVZhbHVl
fWA7CiAgICAgICAgIH0KIAotICAgICAgICB2YXIgc21hbGxlcklzQmV0dGVyID0gbWV0cmljLmlz
U21hbGxlckJldHRlcigpOworICAgICAgICBjb25zdCBiYXNlbGluZVBvaW50ID0gYmFzZWxpbmVW
aWV3ID8gYmFzZWxpbmVWaWV3Lmxhc3RQb2ludEluVGltZVJhbmdlKDAsIGN1cnJlbnRQb2ludC50
aW1lKSA6IG51bGw7CisgICAgICAgIGNvbnN0IHRhcmdldFBvaW50ID0gdGFyZ2V0VmlldyA/IHRh
cmdldFZpZXcubGFzdFBvaW50SW5UaW1lUmFuZ2UoMCwgY3VycmVudFBvaW50LnRpbWUpIDogbnVs
bDsKKworICAgICAgICBjb25zdCBkaWZmRnJvbUJhc2VsaW5lID0gYmFzZWxpbmVQb2ludCA/IChj
dXJyZW50UG9pbnQudmFsdWUgLSBiYXNlbGluZVBvaW50LnZhbHVlKSAvIGJhc2VsaW5lUG9pbnQu
dmFsdWUgOiB1bmRlZmluZWQ7CisgICAgICAgIGNvbnN0IGRpZmZGcm9tVGFyZ2V0ID0gdGFyZ2V0
UG9pbnQgPyAoY3VycmVudFBvaW50LnZhbHVlIC0gdGFyZ2V0UG9pbnQudmFsdWUpIC8gdGFyZ2V0
UG9pbnQudmFsdWUgOiB1bmRlZmluZWQ7CisKKyAgICAgICAgbGV0IGxhYmVsID0gbnVsbDsKKyAg
ICAgICAgbGV0IGNvbXBhcmlzb24gPSBudWxsOworCiAgICAgICAgIGlmIChkaWZmRnJvbUJhc2Vs
aW5lICE9PSB1bmRlZmluZWQgJiYgZGlmZkZyb21UYXJnZXQgIT09IHVuZGVmaW5lZCkgewogICAg
ICAgICAgICAgaWYgKGRpZmZGcm9tQmFzZWxpbmUgPiAwID09IHNtYWxsZXJJc0JldHRlcikgewot
ICAgICAgICAgICAgICAgIGxhYmVsID0gbGFiZWxGb3JEaWZmKGRpZmZGcm9tQmFzZWxpbmUsIGJh
c2VsaW5lUG9pbnQsICdiYXNlbGluZScsICd3b3JzZSB0aGFuJyk7Ci0gICAgICAgICAgICAgICAg
Y2xhc3NOYW1lID0gJ3dvcnNlJzsKKyAgICAgICAgICAgICAgICBjb21wYXJpc29uID0gJ3dvcnNl
JzsKKyAgICAgICAgICAgICAgICBsYWJlbCA9IGxhYmVsRm9yRGlmZihkaWZmRnJvbUJhc2VsaW5l
LCBiYXNlbGluZVBvaW50LCAnYmFzZWxpbmUnLCBjb21wYXJpc29uKTsKICAgICAgICAgICAgIH0g
ZWxzZSBpZiAoZGlmZkZyb21UYXJnZXQgPCAwID09IHNtYWxsZXJJc0JldHRlcikgewotICAgICAg
ICAgICAgICAgIGxhYmVsID0gbGFiZWxGb3JEaWZmKGRpZmZGcm9tVGFyZ2V0LCB0YXJnZXRQb2lu
dCwgJ3RhcmdldCcsICdiZXR0ZXIgdGhhbicpOwotICAgICAgICAgICAgICAgIGNsYXNzTmFtZSA9
ICdiZXR0ZXInOworICAgICAgICAgICAgICAgIGNvbXBhcmlzb24gPSAnYmV0dGVyJzsKKyAgICAg
ICAgICAgICAgICBsYWJlbCA9IGxhYmVsRm9yRGlmZihkaWZmRnJvbVRhcmdldCwgdGFyZ2V0UG9p
bnQsICd0YXJnZXQnLCBjb21wYXJpc29uKTsKICAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAg
ICAgICAgIGxhYmVsID0gbGFiZWxGb3JEaWZmKGRpZmZGcm9tVGFyZ2V0LCB0YXJnZXRQb2ludCwg
J3RhcmdldCcsICd1bnRpbCcpOwogICAgICAgICB9IGVsc2UgaWYgKGRpZmZGcm9tQmFzZWxpbmUg
IT09IHVuZGVmaW5lZCkgewotICAgICAgICAgICAgY2xhc3NOYW1lID0gZGlmZkZyb21CYXNlbGlu
ZSA+IDAgPT0gc21hbGxlcklzQmV0dGVyID8gJ3dvcnNlJyA6ICdiZXR0ZXInOwotICAgICAgICAg
ICAgbGFiZWwgPSBsYWJlbEZvckRpZmYoZGlmZkZyb21CYXNlbGluZSwgYmFzZWxpbmVQb2ludCwg
J2Jhc2VsaW5lJywgY2xhc3NOYW1lICsgJyB0aGFuJyk7CisgICAgICAgICAgICBjb21wYXJpc29u
ID0gZGlmZkZyb21CYXNlbGluZSA+IDAgPT0gc21hbGxlcklzQmV0dGVyID8gJ3dvcnNlJyA6ICdi
ZXR0ZXInOworICAgICAgICAgICAgbGFiZWwgPSBsYWJlbEZvckRpZmYoZGlmZkZyb21CYXNlbGlu
ZSwgYmFzZWxpbmVQb2ludCwgJ2Jhc2VsaW5lJywgY29tcGFyaXNvbik7CiAgICAgICAgIH0gZWxz
ZSBpZiAoZGlmZkZyb21UYXJnZXQgIT09IHVuZGVmaW5lZCkgewotICAgICAgICAgICAgY2xhc3NO
YW1lID0gZGlmZkZyb21UYXJnZXQgPCAwID09IHNtYWxsZXJJc0JldHRlciA/ICdiZXR0ZXInIDog
J3dvcnNlJzsKLSAgICAgICAgICAgIGxhYmVsID0gbGFiZWxGb3JEaWZmKGRpZmZGcm9tVGFyZ2V0
LCB0YXJnZXRQb2ludCwgJ3RhcmdldCcsIGNsYXNzTmFtZSArICcgdGhhbicpOworICAgICAgICAg
ICAgY29tcGFyaXNvbiA9IGRpZmZGcm9tVGFyZ2V0IDwgMCA9PSBzbWFsbGVySXNCZXR0ZXIgPyAn
YmV0dGVyJyA6ICd3b3JzZSc7CisgICAgICAgICAgICBsYWJlbCA9IGxhYmVsRm9yRGlmZihkaWZm
RnJvbVRhcmdldCwgdGFyZ2V0UG9pbnQsICd0YXJnZXQnLCBjb21wYXJpc29uKTsKICAgICAgICAg
fQogCi0gICAgICAgIHZhciB2YWx1ZURlbHRhID0gbnVsbDsKLSAgICAgICAgdmFyIHJlbGF0aXZl
RGVsdGEgPSBudWxsOworICAgICAgICBsZXQgdmFsdWVEZWx0YSA9IG51bGw7CisgICAgICAgIGxl
dCByZWxhdGl2ZURlbHRhID0gbnVsbDsKICAgICAgICAgaWYgKHByZXZpb3VzUG9pbnQpIHsKICAg
ICAgICAgICAgIHZhbHVlRGVsdGEgPSBkZWx0YUZvcm1hdHRlcihjdXJyZW50UG9pbnQudmFsdWUg
LSBwcmV2aW91c1BvaW50LnZhbHVlKTsKLSAgICAgICAgICAgIHZhciByZWxhdGl2ZURlbHRhID0g
KGN1cnJlbnRQb2ludC52YWx1ZSAtIHByZXZpb3VzUG9pbnQudmFsdWUpIC8gcHJldmlvdXNQb2lu
dC52YWx1ZTsKKyAgICAgICAgICAgIHJlbGF0aXZlRGVsdGEgPSAoY3VycmVudFBvaW50LnZhbHVl
IC0gcHJldmlvdXNQb2ludC52YWx1ZSkgLyBwcmV2aW91c1BvaW50LnZhbHVlOwogICAgICAgICAg
ICAgcmVsYXRpdmVEZWx0YSA9IChyZWxhdGl2ZURlbHRhICogMTAwKS50b0ZpeGVkKDApICsgJyUn
OwogICAgICAgICB9Ci0gICAgICAgIHJldHVybiB7Ci0gICAgICAgICAgICBjbGFzc05hbWU6IGNs
YXNzTmFtZSwKLSAgICAgICAgICAgIGxhYmVsOiBsYWJlbCwKLSAgICAgICAgICAgIGN1cnJlbnRW
YWx1ZTogZm9ybWF0dGVyKGN1cnJlbnRQb2ludC52YWx1ZSksCi0gICAgICAgICAgICB2YWx1ZURl
bHRhOiB2YWx1ZURlbHRhLAotICAgICAgICAgICAgcmVsYXRpdmVEZWx0YTogcmVsYXRpdmVEZWx0
YSwKLSAgICAgICAgfTsKLSAgICB9Ci0KLSAgICBfZmluZExhc3RQb2ludFByaW9yVG9UaW1lKGN1
cnJlbnRQb2ludCwgdGltZVNlcmllc0RhdGEpCi0gICAgewotICAgICAgICBpZiAoIWN1cnJlbnRQ
b2ludCB8fCAhdGltZVNlcmllc0RhdGEgfHwgIXRpbWVTZXJpZXNEYXRhLmxlbmd0aCkKLSAgICAg
ICAgICAgIHJldHVybiB1bmRlZmluZWQ7CiAKLSAgICAgICAgdmFyIGkgPSAwOwotICAgICAgICB3
aGlsZSAoaSA8IHRpbWVTZXJpZXNEYXRhLmxlbmd0aCAtIDEgJiYgdGltZVNlcmllc0RhdGFbaSAr
IDFdLnRpbWUgPCBjdXJyZW50UG9pbnQudGltZSkKLSAgICAgICAgICAgIGkrKzsKLSAgICAgICAg
cmV0dXJuIHRpbWVTZXJpZXNEYXRhW2ldOworICAgICAgICByZXR1cm4ge2NsYXNzTmFtZTogY29t
cGFyaXNvbiwgbGFiZWwsIGN1cnJlbnRWYWx1ZTogZm9ybWF0dGVyKGN1cnJlbnRQb2ludC52YWx1
ZSksIHZhbHVlRGVsdGEsIHJlbGF0aXZlRGVsdGF9OwogICAgIH0KIAogICAgIHN0YXRpYyBodG1s
VGVtcGxhdGUoKQpJbmRleDogV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy92My9jb21w
b25lbnRzL2ludGVyYWN0aXZlLXRpbWUtc2VyaWVzLWNoYXJ0LmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvdjMvY29tcG9uZW50cy9pbnRlcmFjdGl2ZS10
aW1lLXNlcmllcy1jaGFydC5qcwkocmV2aXNpb24gMjEyOTkwKQorKysgV2Vic2l0ZXMvcGVyZi53
ZWJraXQub3JnL3B1YmxpYy92My9jb21wb25lbnRzL2ludGVyYWN0aXZlLXRpbWUtc2VyaWVzLWNo
YXJ0LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xNiwyMiArMTYsMTQgQEAgY2xhc3MgSW50ZXJhY3Rp
dmVUaW1lU2VyaWVzQ2hhcnQgZXh0ZW5kcwogICAgICAgICB0aGlzLl9yZW5kZXJlZEFubm90YXRp
b24gPSBudWxsOwogICAgIH0KIAotICAgIGN1cnJlbnRQb2ludChkaWZmKQorICAgIGN1cnJlbnRJ
bmRpY2F0b3IoKQogICAgIHsKICAgICAgICAgdmFyIGlkID0gdGhpcy5faW5kaWNhdG9ySUQ7CiAg
ICAgICAgIGlmICghaWQpCiAgICAgICAgICAgICByZXR1cm4gbnVsbDsKIAotICAgICAgICBpZiAo
IXRoaXMuX3NhbXBsZWRUaW1lU2VyaWVzRGF0YSkgewotICAgICAgICAgICAgLy8gRklYTUU6IFdo
eSBhcmUgd2Ugbm90IHVzaW5nIGRpZmYgaW4gdGhpcyBjb2RlIHBhdGg/Ci0gICAgICAgICAgICB0
aGlzLl9lbnN1cmVGZXRjaGVkVGltZVNlcmllcygpOwotICAgICAgICAgICAgZm9yICh2YXIgc2Vy
aWVzIG9mIHRoaXMuX2ZldGNoZWRUaW1lU2VyaWVzKSB7Ci0gICAgICAgICAgICAgICAgdmFyIHBv
aW50ID0gc2VyaWVzLmZpbmRCeUlkKGlkKTsKLSAgICAgICAgICAgICAgICBpZiAocG9pbnQpCi0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiBwb2ludDsKLSAgICAgICAgICAgIH0KKyAgICAgICAg
aWYgKCF0aGlzLl9zYW1wbGVkVGltZVNlcmllc0RhdGEpCiAgICAgICAgICAgICByZXR1cm4gbnVs
bDsKLSAgICAgICAgfQogCiAgICAgICAgIGZvciAodmFyIHZpZXcgb2YgdGhpcy5fc2FtcGxlZFRp
bWVTZXJpZXNEYXRhKSB7CiAgICAgICAgICAgICBpZiAoIXZpZXcpCkBAIC0zOSw5ICszMSw3IEBA
IGNsYXNzIEludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0IGV4dGVuZHMKICAgICAgICAgICAgIGxl
dCBwb2ludCA9IHZpZXcuZmluZEJ5SWQoaWQpOwogICAgICAgICAgICAgaWYgKCFwb2ludCkKICAg
ICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlmICghZGlmZikKLSAgICAgICAg
ICAgICAgICByZXR1cm4gcG9pbnQ7Ci0gICAgICAgICAgICByZXR1cm4gKHBvaW50ICYmIGRpZmYg
PiAwID8gdmlldy5uZXh0UG9pbnQocG9pbnQpIDogdmlldy5wcmV2aW91c1BvaW50KHBvaW50KSkg
fHwgcG9pbnQ7CisgICAgICAgICAgICByZXR1cm4ge3ZpZXcsIHBvaW50LCBpc0xvY2tlZDogdGhp
cy5faW5kaWNhdG9ySXNMb2NrZWR9OwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBudWxsOwog
ICAgIH0KQEAgLTYyLDggKzUyLDYgQEAgY2xhc3MgSW50ZXJhY3RpdmVUaW1lU2VyaWVzQ2hhcnQg
ZXh0ZW5kcwogICAgICAgICByZXR1cm4gc2VsZWN0aW9uICYmIGRhdGEgPyBkYXRhLmZpcnN0UG9p
bnRJblRpbWVSYW5nZShzZWxlY3Rpb25bMF0sIHNlbGVjdGlvblsxXSkgOiBudWxsOwogICAgIH0K
IAotICAgIGxvY2tlZEluZGljYXRvcigpIHsgcmV0dXJuIHRoaXMuX2luZGljYXRvcklzTG9ja2Vk
ID8gdGhpcy5jdXJyZW50UG9pbnQoKSA6IG51bGw7IH0KLQogICAgIHNldEluZGljYXRvcihpZCwg
c2hvdWxkTG9jaykKICAgICB7CiAgICAgICAgIHZhciBzZWxlY3Rpb25EaWRDaGFuZ2UgPSAhIXRo
aXMuX3NhbXBsZWRUaW1lU2VyaWVzRGF0YTsKQEAgLTgxLDE2ICs2OSwxNiBAQCBjbGFzcyBJbnRl
cmFjdGl2ZVRpbWVTZXJpZXNDaGFydCBleHRlbmRzCiAKICAgICBtb3ZlTG9ja2VkSW5kaWNhdG9y
V2l0aE5vdGlmaWNhdGlvbihmb3J3YXJkKQogICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl9pbmRp
Y2F0b3JJRCB8fCAhdGhpcy5faW5kaWNhdG9ySXNMb2NrZWQpCisgICAgICAgIGNvbnN0IGluZGlj
YXRvciA9IHRoaXMuY3VycmVudEluZGljYXRvcigpOworICAgICAgICBpZiAoIWluZGljYXRvciB8
fCAhaW5kaWNhdG9yLmlzTG9ja2VkKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCiAgICAg
ICAgIGNvbnNvbGUuYXNzZXJ0KCF0aGlzLl9zZWxlY3Rpb25UaW1lUmFuZ2UpOwogCi0gICAgICAg
IHZhciBwb2ludCA9IHRoaXMuY3VycmVudFBvaW50KGZvcndhcmQgPyAxIDogLTEpOwotICAgICAg
ICBpZiAoIXBvaW50IHx8IHRoaXMuX2luZGljYXRvcklEID09IHBvaW50LmlkKQorICAgICAgICBj
b25zdCBuZXdQb2ludCA9IGZvcndhcmQgPyBpbmRpY2F0b3Iudmlldy5uZXh0UG9pbnQoaW5kaWNh
dG9yLnBvaW50KSA6IGluZGljYXRvci52aWV3LnByZXZpb3VzUG9pbnQoaW5kaWNhdG9yLnBvaW50
KTsKKyAgICAgICAgaWYgKCFuZXdQb2ludCkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAot
ICAgICAgICB0aGlzLl9pbmRpY2F0b3JJRCA9IHBvaW50LmlkOworICAgICAgICB0aGlzLl9pbmRp
Y2F0b3JJRCA9IG5ld1BvaW50LmlkOwogICAgICAgICB0aGlzLl9sYXN0TW91c2VEb3duTG9jYXRp
b24gPSBudWxsOwogICAgICAgICB0aGlzLl9mb3JjZVJlbmRlciA9IHRydWU7CiAKQEAgLTQyNSwy
NCArNDEzLDIyIEBAIGNsYXNzIEludGVyYWN0aXZlVGltZVNlcmllc0NoYXJ0IGV4dGVuZHMKICAg
ICAgICAgICAgICAgICB0aGlzLl9hbm5vdGF0aW9uTGFiZWwuc3R5bGUuZGlzcGxheSA9ICdub25l
JzsKICAgICAgICAgfQogCi0gICAgICAgIHZhciBpbmRpY2F0b3IgPSB0aGlzLl9vcHRpb25zLmlu
ZGljYXRvcjsKLSAgICAgICAgaWYgKHRoaXMuX2luZGljYXRvcklEICYmIGluZGljYXRvcikgewot
ICAgICAgICAgICAgY29udGV4dC5maWxsU3R5bGUgPSBpbmRpY2F0b3IubGluZVN0eWxlOwotICAg
ICAgICAgICAgY29udGV4dC5zdHJva2VTdHlsZSA9IGluZGljYXRvci5saW5lU3R5bGU7Ci0gICAg
ICAgICAgICBjb250ZXh0LmxpbmVXaWR0aCA9IGluZGljYXRvci5saW5lV2lkdGg7Ci0KLSAgICAg
ICAgICAgIHZhciBwb2ludCA9IHRoaXMuY3VycmVudFBvaW50KCk7Ci0gICAgICAgICAgICBpZiAo
cG9pbnQpIHsKLSAgICAgICAgICAgICAgICB2YXIgeCA9IG1ldHJpY3MudGltZVRvWChwb2ludC50
aW1lKTsKLSAgICAgICAgICAgICAgICB2YXIgeSA9IG1ldHJpY3MudmFsdWVUb1kocG9pbnQudmFs
dWUpOwotCi0gICAgICAgICAgICAgICAgY29udGV4dC5iZWdpblBhdGgoKTsKLSAgICAgICAgICAg
ICAgICBjb250ZXh0Lm1vdmVUbyh4LCBtZXRyaWNzLmNoYXJ0WSk7Ci0gICAgICAgICAgICAgICAg
Y29udGV4dC5saW5lVG8oeCwgbWV0cmljcy5jaGFydFkgKyBtZXRyaWNzLmNoYXJ0SGVpZ2h0KTsK
LSAgICAgICAgICAgICAgICBjb250ZXh0LnN0cm9rZSgpOworICAgICAgICBjb25zdCBpbmRpY2F0
b3JPcHRpb25zID0gdGhpcy5fb3B0aW9ucy5pbmRpY2F0b3I7CisgICAgICAgIGNvbnN0IGluZGlj
YXRvciA9IHRoaXMuY3VycmVudEluZGljYXRvcigpOworICAgICAgICBpZiAoaW5kaWNhdG9yICYm
IGluZGljYXRvck9wdGlvbnMpIHsKKyAgICAgICAgICAgIGNvbnRleHQuZmlsbFN0eWxlID0gaW5k
aWNhdG9yT3B0aW9ucy5saW5lU3R5bGU7CisgICAgICAgICAgICBjb250ZXh0LnN0cm9rZVN0eWxl
ID0gaW5kaWNhdG9yT3B0aW9ucy5saW5lU3R5bGU7CisgICAgICAgICAgICBjb250ZXh0LmxpbmVX
aWR0aCA9IGluZGljYXRvck9wdGlvbnMubGluZVdpZHRoOwogCi0gICAgICAgICAgICAgICAgdGhp
cy5fZmlsbENpcmNsZShjb250ZXh0LCB4LCB5LCBpbmRpY2F0b3IucG9pbnRSYWRpdXMpOwotICAg
ICAgICAgICAgfQorICAgICAgICAgICAgY29uc3QgeCA9IG1ldHJpY3MudGltZVRvWChpbmRpY2F0
b3IucG9pbnQudGltZSk7CisgICAgICAgICAgICBjb25zdCB5ID0gbWV0cmljcy52YWx1ZVRvWShp
bmRpY2F0b3IucG9pbnQudmFsdWUpOworCisgICAgICAgICAgICBjb250ZXh0LmJlZ2luUGF0aCgp
OworICAgICAgICAgICAgY29udGV4dC5tb3ZlVG8oeCwgbWV0cmljcy5jaGFydFkpOworICAgICAg
ICAgICAgY29udGV4dC5saW5lVG8oeCwgbWV0cmljcy5jaGFydFkgKyBtZXRyaWNzLmNoYXJ0SGVp
Z2h0KTsKKyAgICAgICAgICAgIGNvbnRleHQuc3Ryb2tlKCk7CisKKyAgICAgICAgICAgIHRoaXMu
X2ZpbGxDaXJjbGUoY29udGV4dCwgeCwgeSwgaW5kaWNhdG9yT3B0aW9ucy5wb2ludFJhZGl1cyk7
CiAgICAgICAgIH0KIAogICAgICAgICB2YXIgc2VsZWN0aW9uT3B0aW9ucyA9IHRoaXMuX29wdGlv
bnMuc2VsZWN0aW9uOwpJbmRleDogV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1YmxpYy92My9t
b2RlbHMvdGltZS1zZXJpZXMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vic2l0ZXMvcGVyZi53ZWJraXQu
b3JnL3B1YmxpYy92My9tb2RlbHMvdGltZS1zZXJpZXMuanMJKHJldmlzaW9uIDIxMjk5MCkKKysr
IFdlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvdjMvbW9kZWxzL3RpbWUtc2VyaWVzLmpz
CSh3b3JraW5nIGNvcHkpCkBAIC0yMDUsNiArMjA1LDE4IEBAIGNsYXNzIFRpbWVTZXJpZXNWaWV3
IHsKICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgfQogCisgICAgbGFzdFBvaW50SW5UaW1lUmFu
Z2Uoc3RhcnRUaW1lLCBlbmRUaW1lKQorICAgIHsKKyAgICAgICAgY29uc29sZS5hc3NlcnQoc3Rh
cnRUaW1lIDw9IGVuZFRpbWUpOworICAgICAgICBmb3IgKGxldCBwb2ludCBvZiB0aGlzLl9yZXZl
cnNlKCkpIHsKKyAgICAgICAgICAgIGlmIChwb2ludC50aW1lIDwgc3RhcnRUaW1lKQorICAgICAg
ICAgICAgICAgIHJldHVybiBudWxsOworICAgICAgICAgICAgaWYgKHBvaW50LnRpbWUgPD0gZW5k
VGltZSkKKyAgICAgICAgICAgICAgICByZXR1cm4gcG9pbnQ7CisgICAgICAgIH0KKyAgICAgICAg
cmV0dXJuIG51bGw7CisgICAgfQorCiAgICAgW1N5bWJvbC5pdGVyYXRvcl0oKQogICAgIHsKICAg
ICAgICAgY29uc3QgZGF0YSA9IHRoaXMuX2RhdGE7CkBAIC0yMTYsNiArMjI4LDIyIEBAIGNsYXNz
IFRpbWVTZXJpZXNWaWV3IHsKICAgICAgICAgICAgIH0KICAgICAgICAgfTsKICAgICB9CisKKyAg
ICBfcmV2ZXJzZSgpCisgICAgeworICAgICAgICByZXR1cm4geworICAgICAgICAgICAgW1N5bWJv
bC5pdGVyYXRvcl06ICgpID0+IHsKKyAgICAgICAgICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5f
ZGF0YTsKKyAgICAgICAgICAgICAgICBjb25zdCBlbmQgPSB0aGlzLl9zdGFydGluZ0luZGV4Owor
ICAgICAgICAgICAgICAgIGxldCBpID0gdGhpcy5fYWZ0ZXJFbmRpbmdJbmRleDsKKyAgICAgICAg
ICAgICAgICByZXR1cm4geworICAgICAgICAgICAgICAgICAgICBuZXh0KCkgeworICAgICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIHtkb25lOiBpLS0gPT0gZW5kLCB2YWx1ZTogZGF0YVtpXX07
CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAg
fQorICAgICAgICB9CisgICAgfQogfQogCiBpZiAodHlwZW9mIG1vZHVsZSAhPSAndW5kZWZpbmVk
JykKSW5kZXg6IFdlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvdjMvcGFnZXMvY2hhcnQt
cGFuZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGljL3Yz
L3BhZ2VzL2NoYXJ0LXBhbmUuanMJKHJldmlzaW9uIDIxMjk5MCkKKysrIFdlYnNpdGVzL3BlcmYu
d2Via2l0Lm9yZy9wdWJsaWMvdjMvcGFnZXMvY2hhcnQtcGFuZS5qcwkod29ya2luZyBjb3B5KQpA
QCAtOTIsMTEgKzkyLDExIEBAIGNsYXNzIENoYXJ0UGFuZSBleHRlbmRzIENoYXJ0UGFuZUJhc2Ug
ewogICAgICAgICB2YXIgc3RhdGUgPSBbdGhpcy5fcGxhdGZvcm1JZCwgdGhpcy5fbWV0cmljSWRd
OwogICAgICAgICBpZiAodGhpcy5fbWFpbkNoYXJ0KSB7CiAgICAgICAgICAgICB2YXIgc2VsZWN0
aW9uID0gdGhpcy5fbWFpbkNoYXJ0LmN1cnJlbnRTZWxlY3Rpb24oKTsKLSAgICAgICAgICAgIHZh
ciBjdXJyZW50UG9pbnQgPSB0aGlzLl9tYWluQ2hhcnQuY3VycmVudFBvaW50KCk7CisgICAgICAg
ICAgICBjb25zdCBpbmRpY2F0b3IgPSB0aGlzLl9tYWluQ2hhcnQuY3VycmVudEluZGljYXRvcigp
OwogICAgICAgICAgICAgaWYgKHNlbGVjdGlvbikKICAgICAgICAgICAgICAgICBzdGF0ZVsyXSA9
IHNlbGVjdGlvbjsKLSAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuX21haW5DaGFydEluZGljYXRv
cldhc0xvY2tlZCAmJiBjdXJyZW50UG9pbnQpCi0gICAgICAgICAgICAgICAgc3RhdGVbMl0gPSBj
dXJyZW50UG9pbnQuaWQ7CisgICAgICAgICAgICBlbHNlIGlmIChpbmRpY2F0b3IgJiYgaW5kaWNh
dG9yLmlzTG9ja2VkKQorICAgICAgICAgICAgICAgIHN0YXRlWzJdID0gaW5kaWNhdG9yLnBvaW50
LmlkOwogICAgICAgICB9CiAKICAgICAgICAgdmFyIGdyYXBoT3B0aW9ucyA9IG5ldyBTZXQ7CkBA
IC0zODcsNyArMzg3LDggQEAgY2xhc3MgQ2hhcnRQYW5lIGV4dGVuZHMgQ2hhcnRQYW5lQmFzZSB7
CiAgICAgICAgIH0KIAogICAgICAgICB2YXIgbWFya0FzT3V0bGllckJ1dHRvbiA9IHRoaXMuY29u
dGVudCgpLnF1ZXJ5U2VsZWN0b3IoJy5tYXJrLWFzLW91dGxpZXInKTsKLSAgICAgICAgdmFyIGZp
cnN0U2VsZWN0ZWRQb2ludCA9IHRoaXMuX21haW5DaGFydC5sb2NrZWRJbmRpY2F0b3IoKTsKKyAg
ICAgICAgY29uc3QgaW5kaWNhdG9yID0gdGhpcy5fbWFpbkNoYXJ0LmN1cnJlbnRJbmRpY2F0b3Io
KTsKKyAgICAgICAgbGV0IGZpcnN0U2VsZWN0ZWRQb2ludCA9IGluZGljYXRvciAmJiBpbmRpY2F0
b3IuaXNMb2NrZWQgPyBpbmRpY2F0b3IucG9pbnQgOiBudWxsOwogICAgICAgICBpZiAoIWZpcnN0
U2VsZWN0ZWRQb2ludCkKICAgICAgICAgICAgIGZpcnN0U2VsZWN0ZWRQb2ludCA9IHRoaXMuX21h
aW5DaGFydC5maXJzdFNlbGVjdGVkUG9pbnQoJ2N1cnJlbnQnKTsKICAgICAgICAgdmFyIGFscmVh
eU1hcmtlZEFzT3V0bGllciA9IGZpcnN0U2VsZWN0ZWRQb2ludCAmJiBmaXJzdFNlbGVjdGVkUG9p
bnQubWFya2VkT3V0bGllcjsKSW5kZXg6IFdlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy91bml0LXRl
c3RzL3RpbWUtc2VyaWVzLXRlc3RzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYnNpdGVzL3BlcmYud2Vi
a2l0Lm9yZy91bml0LXRlc3RzL3RpbWUtc2VyaWVzLXRlc3RzLmpzCShyZXZpc2lvbiAyMTI5OTAp
CisrKyBXZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvdW5pdC10ZXN0cy90aW1lLXNlcmllcy10ZXN0
cy5qcwkod29ya2luZyBjb3B5KQpAQCAtMzI2LDYgKzMyNiwxNCBAQCBkZXNjcmliZSgnVGltZVNl
cmllc1ZpZXcnLCAoKSA9PiB7CiAgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZpZXcuZmly
c3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbM10udGltZSAtIDAuMSwgZml2ZVBvaW50c1s0
XS50aW1lKSwgZml2ZVBvaW50c1szXSk7CiAgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZp
ZXcuZmlyc3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbNF0udGltZSwgZml2ZVBvaW50c1s0
XS50aW1lKSwgbnVsbCk7CiAKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwodmlldy5sYXN0
UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzBdLnRpbWUsIGZpdmVQb2ludHNbNF0udGltZSks
IGZpdmVQb2ludHNbM10pOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3Lmxhc3RQ
b2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbMV0udGltZSwgZml2ZVBvaW50c1s0XS50aW1lKSwg
Zml2ZVBvaW50c1szXSk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZpZXcubGFzdFBv
aW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1sxXS50aW1lLCBmaXZlUG9pbnRzWzFdLnRpbWUpLCBm
aXZlUG9pbnRzWzFdKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwodmlldy5sYXN0UG9p
bnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzBdLnRpbWUsIGZpdmVQb2ludHNbMF0udGltZSksIG51
bGwpOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3Lmxhc3RQb2ludEluVGltZVJh
bmdlKGZpdmVQb2ludHNbMV0udGltZSArIDAuMSwgZml2ZVBvaW50c1syXS50aW1lKSwgbnVsbCk7
CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZpZXcubGFzdFBvaW50SW5UaW1lUmFuZ2Uo
Zml2ZVBvaW50c1szXS50aW1lIC0gMC4xLCBmaXZlUG9pbnRzWzRdLnRpbWUpLCBmaXZlUG9pbnRz
WzNdKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwodmlldy5sYXN0UG9pbnRJblRpbWVS
YW5nZShmaXZlUG9pbnRzWzRdLnRpbWUsIGZpdmVQb2ludHNbNF0udGltZSksIG51bGwpOworCiAg
ICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKFsuLi52aWV3XSwgW2ZpdmVQb2ludHNbMV0sIGZp
dmVQb2ludHNbM11dKTsKICAgICAgICAgfSk7CiAgICAgfSk7CkBAIC0zNzAsNiArMzc4LDE0IEBA
IGRlc2NyaWJlKCdUaW1lU2VyaWVzVmlldycsICgpID0+IHsKICAgICAgICAgICAgIGFzc2VydC5k
ZWVwRXF1YWwodmlldy5maXJzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1szXS50aW1lIC0g
MC4xLCBmaXZlUG9pbnRzWzRdLnRpbWUpLCBmaXZlUG9pbnRzWzNdKTsKICAgICAgICAgICAgIGFz
c2VydC5kZWVwRXF1YWwodmlldy5maXJzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1s0XS50
aW1lLCBmaXZlUG9pbnRzWzRdLnRpbWUpLCBudWxsKTsKIAorICAgICAgICAgICAgYXNzZXJ0LmRl
ZXBFcXVhbCh2aWV3Lmxhc3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbMF0udGltZSwgZml2
ZVBvaW50c1s0XS50aW1lKSwgZml2ZVBvaW50c1szXSk7CisgICAgICAgICAgICBhc3NlcnQuZGVl
cEVxdWFsKHZpZXcubGFzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1sxXS50aW1lLCBmaXZl
UG9pbnRzWzRdLnRpbWUpLCBmaXZlUG9pbnRzWzNdKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVw
RXF1YWwodmlldy5sYXN0UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzFdLnRpbWUsIGZpdmVQ
b2ludHNbMV0udGltZSksIGZpdmVQb2ludHNbMV0pOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBF
cXVhbCh2aWV3Lmxhc3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbMF0udGltZSwgZml2ZVBv
aW50c1swXS50aW1lKSwgbnVsbCk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZpZXcu
bGFzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1sxXS50aW1lICsgMC4xLCBmaXZlUG9pbnRz
WzJdLnRpbWUpLCBmaXZlUG9pbnRzWzJdKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwo
dmlldy5sYXN0UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzNdLnRpbWUgLSAwLjEsIGZpdmVQ
b2ludHNbNF0udGltZSksIGZpdmVQb2ludHNbM10pOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBF
cXVhbCh2aWV3Lmxhc3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbNF0udGltZSwgZml2ZVBv
aW50c1s0XS50aW1lKSwgbnVsbCk7CisKICAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwoWy4u
LnZpZXddLCBmaXZlUG9pbnRzLnNsaWNlKDEsIDQpKTsKICAgICAgICAgfSk7CiAKQEAgLTQwNiw2
ICs0MjIsMTQgQEAgZGVzY3JpYmUoJ1RpbWVTZXJpZXNWaWV3JywgKCkgPT4gewogICAgICAgICAg
ICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3LmZpcnN0UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRz
WzNdLnRpbWUgLSAwLjEsIGZpdmVQb2ludHNbNF0udGltZSksIGZpdmVQb2ludHNbM10pOwogICAg
ICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3LmZpcnN0UG9pbnRJblRpbWVSYW5nZShmaXZl
UG9pbnRzWzRdLnRpbWUsIGZpdmVQb2ludHNbNF0udGltZSksIG51bGwpOwogCisgICAgICAgICAg
ICBhc3NlcnQuZGVlcEVxdWFsKHZpZXcubGFzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1sw
XS50aW1lLCBmaXZlUG9pbnRzWzRdLnRpbWUpLCBmaXZlUG9pbnRzWzNdKTsKKyAgICAgICAgICAg
IGFzc2VydC5kZWVwRXF1YWwodmlldy5sYXN0UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzFd
LnRpbWUsIGZpdmVQb2ludHNbNF0udGltZSksIGZpdmVQb2ludHNbM10pOworICAgICAgICAgICAg
YXNzZXJ0LmRlZXBFcXVhbCh2aWV3Lmxhc3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbMV0u
dGltZSwgZml2ZVBvaW50c1sxXS50aW1lKSwgbnVsbCk7CisgICAgICAgICAgICBhc3NlcnQuZGVl
cEVxdWFsKHZpZXcubGFzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1swXS50aW1lLCBmaXZl
UG9pbnRzWzBdLnRpbWUpLCBudWxsKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwodmll
dy5sYXN0UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzFdLnRpbWUgKyAwLjEsIGZpdmVQb2lu
dHNbMl0udGltZSksIG51bGwpOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3Lmxh
c3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbM10udGltZSAtIDAuMSwgZml2ZVBvaW50c1s0
XS50aW1lKSwgZml2ZVBvaW50c1szXSk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZp
ZXcubGFzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1s0XS50aW1lLCBmaXZlUG9pbnRzWzRd
LnRpbWUpLCBudWxsKTsKKwogICAgICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbChbLi4udmlld10s
IFtmaXZlUG9pbnRzWzNdXSk7CiAgICAgICAgIH0pOwogCkBAIC00NDIsNiArNDY2LDE0IEBAIGRl
c2NyaWJlKCdUaW1lU2VyaWVzVmlldycsICgpID0+IHsKICAgICAgICAgICAgIGFzc2VydC5kZWVw
RXF1YWwodmlldy5maXJzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1szXS50aW1lIC0gMC4x
LCBmaXZlUG9pbnRzWzRdLnRpbWUpLCBmaXZlUG9pbnRzWzNdKTsKICAgICAgICAgICAgIGFzc2Vy
dC5kZWVwRXF1YWwodmlldy5maXJzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1s0XS50aW1l
LCBmaXZlUG9pbnRzWzRdLnRpbWUpLCBudWxsKTsKIAorICAgICAgICAgICAgYXNzZXJ0LmRlZXBF
cXVhbCh2aWV3Lmxhc3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbMF0udGltZSwgZml2ZVBv
aW50c1s0XS50aW1lKSwgZml2ZVBvaW50c1szXSk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVx
dWFsKHZpZXcubGFzdFBvaW50SW5UaW1lUmFuZ2UoZml2ZVBvaW50c1sxXS50aW1lLCBmaXZlUG9p
bnRzWzRdLnRpbWUpLCBmaXZlUG9pbnRzWzNdKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1
YWwodmlldy5sYXN0UG9pbnRJblRpbWVSYW5nZShmaXZlUG9pbnRzWzFdLnRpbWUsIGZpdmVQb2lu
dHNbMV0udGltZSksIG51bGwpOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3Lmxh
c3RQb2ludEluVGltZVJhbmdlKGZpdmVQb2ludHNbMF0udGltZSwgZml2ZVBvaW50c1swXS50aW1l
KSwgbnVsbCk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHZpZXcubGFzdFBvaW50SW5U
aW1lUmFuZ2UoZml2ZVBvaW50c1sxXS50aW1lICsgMC4xLCBmaXZlUG9pbnRzWzJdLnRpbWUpLCBu
dWxsKTsKKyAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwodmlldy5sYXN0UG9pbnRJblRpbWVS
YW5nZShmaXZlUG9pbnRzWzNdLnRpbWUgLSAwLjEsIGZpdmVQb2ludHNbNF0udGltZSksIGZpdmVQ
b2ludHNbM10pOworICAgICAgICAgICAgYXNzZXJ0LmRlZXBFcXVhbCh2aWV3Lmxhc3RQb2ludElu
VGltZVJhbmdlKGZpdmVQb2ludHNbNF0udGltZSwgZml2ZVBvaW50c1s0XS50aW1lKSwgbnVsbCk7
CisKICAgICAgICAgICAgIGFzc2VydC5kZWVwRXF1YWwoWy4uLnZpZXddLCBbZml2ZVBvaW50c1sz
XV0pOwogICAgICAgICB9KTsKICAgICB9KTsK
</data>
<flag name="review"
          id="324431"
          type_id="1"
          status="+"
          setter="joepeck"
    />
          </attachment>
      

    </bug>

</bugzilla>