<?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>111431</bug_id>
          
          <creation_ts>2013-03-05 06:18:59 -0800</creation_ts>
          <short_desc>Web Inspector: move PopoverContentHelper from TimelinePresentationModel.js to Popover.js</short_desc>
          <delta_ts>2013-03-05 07:31:25 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ilya Tikhonovsky">loislo</reporter>
          <assigned_to name="Ilya Tikhonovsky">loislo</assigned_to>
          <cc>apavlov</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>847610</commentid>
    <comment_count>0</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2013-03-05 06:18:59 -0800</bug_when>
    <thetext>I&apos;d like to reuse PopoverContentHelper in FlameChart.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847617</commentid>
    <comment_count>1</comment_count>
      <attachid>191483</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2013-03-05 06:31:33 -0800</bug_when>
    <thetext>Created attachment 191483
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847618</commentid>
    <comment_count>2</comment_count>
      <attachid>191483</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2013-03-05 06:32:51 -0800</bug_when>
    <thetext>Comment on attachment 191483
Patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847628</commentid>
    <comment_count>3</comment_count>
      <attachid>191483</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2013-03-05 06:43:31 -0800</bug_when>
    <thetext>Comment on attachment 191483
Patch

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

&gt; Source/WebCore/inspector/front-end/Popover.js:374
&gt; +WebInspector.PopupContentHelper = function(title)

Consider renaming to PopoverTableHelper ?

&gt; Source/WebCore/inspector/front-end/Popover.js:430
&gt; +    appendStackTrace: function(title, stackTrace, callFrameLinkifier)

Now Popover.js depends on the stack trace, can we avoid this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847670</commentid>
    <comment_count>4</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2013-03-05 07:31:25 -0800</bug_when>
    <thetext>Committed r144759: &lt;http://trac.webkit.org/changeset/144759&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191483</attachid>
            <date>2013-03-05 06:31:33 -0800</date>
            <delta_ts>2013-03-05 06:43:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-111431-20130305182739.patch</filename>
            <type>text/plain</type>
            <size>27366</size>
            <attacher name="Ilya Tikhonovsky">loislo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0NzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODRhYmRmMDMwOWVkYTcy
MjExNzhjYTc4YTMyMTI0MzJiYjMxMGYyNC4uNGJmMmU4NGFjNzAyMTg3NjViMzQwYjc4OTI1NDcz
MmZjNzQ1ZDA1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTAzLTA1ICBJbHlh
IFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5zcGVj
dG9yOiBtb3ZlIFBvcG92ZXJDb250ZW50SGVscGVyIGZyb20gVGltZWxpbmVQcmVzZW50YXRpb25N
b2RlbC5qcyB0byBQb3BvdmVyLmpzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTExNDMxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgY2xhc3MgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9uTW9k
ZWwuUG9wb3ZlckNvbnRlbnRIZWxwZXIgd2FzIHJlbmFtZWQgdG8gV2ViSW5zcGVjdG9yLlBvcG92
ZXJDb250ZW50SGVscGVyLgorICAgICAgICBTdHlsZSBuYW1lcyB3ZXJlIGNoYW5nZWQgYWNjb3Jk
aW5nbHkuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1BvcG92ZXIuanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuUG9wdXBDb250ZW50SGVscGVyKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Qb3B1cENvbnRlbnRIZWxwZXIucHJvdG90eXBlLl9jcmVhdGVDZWxsKToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5Qb3B1cENvbnRlbnRIZWxwZXIucHJvdG90eXBlLl9hcHBlbmRUZXh0Um93
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qb3B1cENvbnRlbnRIZWxwZXIucHJvdG90eXBlLl9h
cHBlbmRFbGVtZW50Um93KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qb3B1cENvbnRlbnRIZWxw
ZXIucHJvdG90eXBlLl9hcHBlbmRTdGFja1RyYWNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL1RpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUuZ2VuZXJhdGVNYWluVGhyZWFk
QmFyUG9wdXBDb250ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRh
dGlvbk1vZGVsLlJlY29yZC5wcm90b3R5cGUuX2dlbmVyYXRlUG9wdXBDb250ZW50V2l0aEltYWdl
UHJldmlldyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2Rl
bC5nZW5lcmF0ZVBvcHVwQ29udGVudEZvckZyYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5U
aW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLmdlbmVyYXRlUG9wdXBDb250ZW50Rm9yRnJhbWVTdGF0
aXN0aWNzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL3BvcG92ZXIuY3NzOgorICAg
ICAgICAoLnBvcG92ZXItZGV0YWlscyk6CisgICAgICAgICgucG9wb3Zlci1mdW5jdGlvbi1uYW1l
KToKKyAgICAgICAgKC5wb3BvdmVyLXN0YWNrdHJhY2UtdGl0bGUpOgorICAgICAgICAoLnBvcG92
ZXItZGV0YWlscy1yb3ctdGl0bGUpOgorICAgICAgICAoLnBvcG92ZXItZGV0YWlscy1yb3ctZGF0
YSk6CisgICAgICAgICgucG9wb3Zlci1kZXRhaWxzLXRpdGxlKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL3RpbWVsaW5lUGFuZWwuY3NzOgorCiAyMDEzLTAzLTA0ICBBbmRyZXkgS29z
eWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogdXNl
IHRpbWVzdGFtcHMgY29uc2lzdGVudCB3aXRoIHJlc3Qgb2YgVGltZWxpbmUgaW4gV2ViU29ja2V0
IGV2ZW50cy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
UG9wb3Zlci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUG9wb3Zlci5q
cwppbmRleCA1YzgxZDI5MTA1MGU0NGFkNjJjZDQ2OGRlMGY5YmYyNjk5OTFlNjkzLi44ZTc0ZjUx
ZjQwZDg0YjMwOGI0ZWU3ODNlNDExNzk0NzEwNWE4OWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1BvcG92ZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9Qb3BvdmVyLmpzCkBAIC0zNjQsNCArMzY0LDg0IEBAIFdlYklu
c3BlY3Rvci5Qb3BvdmVySGVscGVyLnByb3RvdHlwZSA9IHsKIFdlYkluc3BlY3Rvci5Qb3BvdmVy
Lk9yaWVudGF0aW9uID0gewogICAgIFRvcDogInRvcCIsCiAgICAgQm90dG9tOiAiYm90dG9tIgot
fQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK30KKworLyoqCisgKiBAY29uc3RydWN0b3IK
KyAqIEBwYXJhbSB7c3RyaW5nfSB0aXRsZQorICovCitXZWJJbnNwZWN0b3IuUG9wdXBDb250ZW50
SGVscGVyID0gZnVuY3Rpb24odGl0bGUpCit7CisgICAgdGhpcy5fY29udGVudFRhYmxlID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgidGFibGUiKTsKKyAgICB2YXIgdGl0bGVDZWxsID0gdGhpcy5f
Y3JlYXRlQ2VsbChXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIiVzIC0gRGV0YWlscyIsIHRpdGxlKSwg
InBvcG92ZXItZGV0YWlscy10aXRsZSIpOworICAgIHRpdGxlQ2VsbC5jb2xTcGFuID0gMjsKKyAg
ICB2YXIgdGl0bGVSb3cgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ciIpOworICAgIHRpdGxl
Um93LmFwcGVuZENoaWxkKHRpdGxlQ2VsbCk7CisgICAgdGhpcy5fY29udGVudFRhYmxlLmFwcGVu
ZENoaWxkKHRpdGxlUm93KTsKK30KKworV2ViSW5zcGVjdG9yLlBvcHVwQ29udGVudEhlbHBlci5w
cm90b3R5cGUgPSB7CisgICAgY29udGVudFRhYmxlOiBmdW5jdGlvbigpCisgICAgeworICAgICAg
ICByZXR1cm4gdGhpcy5fY29udGVudFRhYmxlOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBA
cGFyYW0ge3N0cmluZz19IHN0eWxlTmFtZQorICAgICAqLworICAgIF9jcmVhdGVDZWxsOiBmdW5j
dGlvbihjb250ZW50LCBzdHlsZU5hbWUpCisgICAgeworICAgICAgICB2YXIgdGV4dCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImxhYmVsIik7CisgICAgICAgIHRleHQuYXBwZW5kQ2hpbGQoZG9j
dW1lbnQuY3JlYXRlVGV4dE5vZGUoY29udGVudCkpOworICAgICAgICB2YXIgY2VsbCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7CisgICAgICAgIGNlbGwuY2xhc3NOYW1lID0gInBvcG92
ZXItZGV0YWlscyI7CisgICAgICAgIGlmIChzdHlsZU5hbWUpCisgICAgICAgICAgICBjZWxsLmNs
YXNzTmFtZSArPSAiICIgKyBzdHlsZU5hbWU7CisgICAgICAgIGNlbGwudGV4dENvbnRlbnQgPSBj
b250ZW50OworICAgICAgICByZXR1cm4gY2VsbDsKKyAgICB9LAorCisgICAgYXBwZW5kVGV4dFJv
dzogZnVuY3Rpb24odGl0bGUsIGNvbnRlbnQpCisgICAgeworICAgICAgICB2YXIgcm93ID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgidHIiKTsKKyAgICAgICAgcm93LmFwcGVuZENoaWxkKHRoaXMu
X2NyZWF0ZUNlbGwodGl0bGUsICJwb3BvdmVyLWRldGFpbHMtcm93LXRpdGxlIikpOworICAgICAg
ICByb3cuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlQ2VsbChjb250ZW50LCAicG9wb3Zlci1kZXRh
aWxzLXJvdy1kYXRhIikpOworICAgICAgICB0aGlzLl9jb250ZW50VGFibGUuYXBwZW5kQ2hpbGQo
cm93KTsKKyAgICB9LAorCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmc9fSB0aXRsZVN0
eWxlCisgICAgICovCisgICAgYXBwZW5kRWxlbWVudFJvdzogZnVuY3Rpb24odGl0bGUsIGNvbnRl
bnQsIHRpdGxlU3R5bGUpCisgICAgeworICAgICAgICB2YXIgcm93ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgidHIiKTsKKyAgICAgICAgdmFyIHRpdGxlQ2VsbCA9IHRoaXMuX2NyZWF0ZUNlbGwo
dGl0bGUsICJwb3BvdmVyLWRldGFpbHMtcm93LXRpdGxlIik7CisgICAgICAgIGlmICh0aXRsZVN0
eWxlKQorICAgICAgICAgICAgdGl0bGVDZWxsLmFkZFN0eWxlQ2xhc3ModGl0bGVTdHlsZSk7Cisg
ICAgICAgIHJvdy5hcHBlbmRDaGlsZCh0aXRsZUNlbGwpOworICAgICAgICB2YXIgY2VsbCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7CisgICAgICAgIGNlbGwuY2xhc3NOYW1lID0gImRl
dGFpbHMiOworICAgICAgICBjZWxsLmFwcGVuZENoaWxkKGNvbnRlbnQpOworICAgICAgICByb3cu
YXBwZW5kQ2hpbGQoY2VsbCk7CisgICAgICAgIHRoaXMuX2NvbnRlbnRUYWJsZS5hcHBlbmRDaGls
ZChyb3cpOworICAgIH0sCisKKyAgICBhcHBlbmRTdGFja1RyYWNlOiBmdW5jdGlvbih0aXRsZSwg
c3RhY2tUcmFjZSwgY2FsbEZyYW1lTGlua2lmaWVyKQorICAgIHsKKyAgICAgICAgdGhpcy5hcHBl
bmRUZXh0Um93KCIiLCAiIik7CisgICAgICAgIHZhciBmcmFtZXNUYWJsZSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoInRhYmxlIik7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc3RhY2tU
cmFjZS5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgdmFyIHN0YWNrRnJhbWUgPSBzdGFja1Ry
YWNlW2ldOworICAgICAgICAgICAgdmFyIHJvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRy
Iik7CisgICAgICAgICAgICByb3cuY2xhc3NOYW1lID0gImRldGFpbHMiOworICAgICAgICAgICAg
cm93LmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUNlbGwoc3RhY2tGcmFtZS5mdW5jdGlvbk5hbWUg
PyBzdGFja0ZyYW1lLmZ1bmN0aW9uTmFtZSA6IFdlYkluc3BlY3Rvci5VSVN0cmluZygiKGFub255
bW91cyBmdW5jdGlvbikiKSwgImZ1bmN0aW9uLW5hbWUiKSk7CisgICAgICAgICAgICByb3cuYXBw
ZW5kQ2hpbGQodGhpcy5fY3JlYXRlQ2VsbCgiIEAgIikpOworICAgICAgICAgICAgdmFyIGxpbmtD
ZWxsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsKKyAgICAgICAgICAgIHZhciB1cmxF
bGVtZW50ID0gY2FsbEZyYW1lTGlua2lmaWVyKHN0YWNrRnJhbWUpOworICAgICAgICAgICAgbGlu
a0NlbGwuYXBwZW5kQ2hpbGQodXJsRWxlbWVudCk7CisgICAgICAgICAgICByb3cuYXBwZW5kQ2hp
bGQobGlua0NlbGwpOworICAgICAgICAgICAgZnJhbWVzVGFibGUuYXBwZW5kQ2hpbGQocm93KTsK
KyAgICAgICAgfQorICAgICAgICB0aGlzLmFwcGVuZEVsZW1lbnRSb3codGl0bGUsIGZyYW1lc1Rh
YmxlLCAicG9wb3Zlci1zdGFja3RyYWNlLXRpdGxlIik7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVByZXNlbnRhdGlvbk1v
ZGVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVByZXNl
bnRhdGlvbk1vZGVsLmpzCmluZGV4IDRkOWJkOTA3MmE1YTQyODUzNjE1M2ZlNjhhZDhjYTFlYjdj
OTc2OTMuLmVkYThkMmIzZTFkZmQ3OWI4ZDIzOTdhZjlkNzc0OTkyZWUwMzAxYTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQcmVzZW50YXRp
b25Nb2RlbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVs
aW5lUHJlc2VudGF0aW9uTW9kZWwuanMKQEAgLTQ4OSwxMyArNDg5LDEzIEBAIFdlYkluc3BlY3Rv
ci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGR1
cmF0aW9uID0gZW5kVGltZSAtIHN0YXJ0VGltZTsKICAgICAgICAgdmFyIG9mZnNldCA9IHRoaXMu
X21pbmltdW1SZWNvcmRUaW1lOwogCi0gICAgICAgIHZhciBjb250ZW50SGVscGVyID0gbmV3IFdl
Ykluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLlBvcHVwQ29udGVudEhlbHBlcihX
ZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNQVSIpKTsKKyAgICAgICAgdmFyIGNvbnRlbnRIZWxwZXIg
PSBuZXcgV2ViSW5zcGVjdG9yLlBvcHVwQ29udGVudEhlbHBlcihXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIkNQVSIpKTsKICAgICAgICAgdmFyIGR1cmF0aW9uVGV4dCA9IFdlYkluc3BlY3Rvci5VSVN0
cmluZygiJXMgKGF0ICVzKSIsIE51bWJlci5zZWNvbmRzVG9TdHJpbmcoZHVyYXRpb24sIHRydWUp
LAogICAgICAgICAgICAgTnVtYmVyLnNlY29uZHNUb1N0cmluZyhzdGFydFRpbWUgLSBvZmZzZXQs
IHRydWUpKTsKLSAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0
b3IuVUlTdHJpbmcoIkR1cmF0aW9uIiksIGR1cmF0aW9uVGV4dCk7Ci0gICAgICAgIGNvbnRlbnRI
ZWxwZXIuX2FwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDUFUgdGltZSIpLCBO
dW1iZXIuc2Vjb25kc1RvU3RyaW5nKGNwdVRpbWUsIHRydWUpKTsKLSAgICAgICAgY29udGVudEhl
bHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk1lc3NhZ2UgQ291bnQi
KSwgbWVzc2FnZUNvdW50KTsKLSAgICAgICAgcmV0dXJuIGNvbnRlbnRIZWxwZXIuX2NvbnRlbnRU
YWJsZTsKKyAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5V
SVN0cmluZygiRHVyYXRpb24iKSwgZHVyYXRpb25UZXh0KTsKKyAgICAgICAgY29udGVudEhlbHBl
ci5hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ1BVIHRpbWUiKSwgTnVtYmVy
LnNlY29uZHNUb1N0cmluZyhjcHVUaW1lLCB0cnVlKSk7CisgICAgICAgIGNvbnRlbnRIZWxwZXIu
YXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk1lc3NhZ2UgQ291bnQiKSwgbWVz
c2FnZUNvdW50KTsKKyAgICAgICAgcmV0dXJuIGNvbnRlbnRIZWxwZXIuY29udGVudFRhYmxlKCk7
CiAgICAgfSwKIAogICAgIF9fcHJvdG9fXzogV2ViSW5zcGVjdG9yLk9iamVjdC5wcm90b3R5cGUK
QEAgLTg3MiwxNSArODcyLDE1IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1v
ZGVsLlJlY29yZC5wcm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgX2dlbmVyYXRlUG9wdXBDb250
ZW50V2l0aEltYWdlUHJldmlldzogZnVuY3Rpb24oY2FsbGJhY2ssIHByZXZpZXdFbGVtZW50KQog
ICAgIHsKLSAgICAgICAgdmFyIGNvbnRlbnRIZWxwZXIgPSBuZXcgV2ViSW5zcGVjdG9yLlRpbWVs
aW5lUHJlc2VudGF0aW9uTW9kZWwuUG9wdXBDb250ZW50SGVscGVyKHRoaXMudGl0bGUpOworICAg
ICAgICB2YXIgY29udGVudEhlbHBlciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9wdXBDb250ZW50SGVs
cGVyKHRoaXMudGl0bGUpOwogICAgICAgICB2YXIgdGV4dCA9IFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiJXMgKGF0ICVzKSIsIE51bWJlci5zZWNvbmRzVG9TdHJpbmcodGhpcy5fbGFzdENoaWxkRW5k
VGltZSAtIHRoaXMuc3RhcnRUaW1lLCB0cnVlKSwKICAgICAgICAgICAgIE51bWJlci5zZWNvbmRz
VG9TdHJpbmcodGhpcy5fc3RhcnRUaW1lT2Zmc2V0KSk7Ci0gICAgICAgIGNvbnRlbnRIZWxwZXIu
X2FwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJEdXJhdGlvbiIpLCB0ZXh0KTsK
KyAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiRHVyYXRpb24iKSwgdGV4dCk7CiAKICAgICAgICAgaWYgKHRoaXMuX2NoaWxkcmVuLmxlbmd0
aCkgewotICAgICAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0
b3IuVUlTdHJpbmcoIlNlbGYgVGltZSIpLCBOdW1iZXIuc2Vjb25kc1RvU3RyaW5nKHRoaXMuX3Nl
bGZUaW1lLCB0cnVlKSk7Ci0gICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ1BVIFRpbWUiKSwgTnVtYmVyLnNlY29uZHNUb1N0cmlu
Zyh0aGlzLl9jcHVUaW1lLCB0cnVlKSk7Ci0gICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBl
bmRFbGVtZW50Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiQWdncmVnYXRlZCBUaW1lIiksCisg
ICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3Ry
aW5nKCJTZWxmIFRpbWUiKSwgTnVtYmVyLnNlY29uZHNUb1N0cmluZyh0aGlzLl9zZWxmVGltZSwg
dHJ1ZSkpOworICAgICAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRUZXh0Um93KFdlYkluc3Bl
Y3Rvci5VSVN0cmluZygiQ1BVIFRpbWUiKSwgTnVtYmVyLnNlY29uZHNUb1N0cmluZyh0aGlzLl9j
cHVUaW1lLCB0cnVlKSk7CisgICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZEVsZW1lbnRS
b3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJBZ2dyZWdhdGVkIFRpbWUiKSwKICAgICAgICAgICAg
ICAgICBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5fZ2VuZXJhdGVBZ2dy
ZWdhdGVkSW5mbyh0aGlzLl9hZ2dyZWdhdGVkU3RhdHMpKTsKICAgICAgICAgfQogICAgICAgICBj
b25zdCByZWNvcmRUeXBlcyA9IFdlYkluc3BlY3Rvci5UaW1lbGluZU1vZGVsLlJlY29yZFR5cGU7
CkBAIC04OTEsNDcgKzg5MSw0NyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25N
b2RlbC5SZWNvcmQucHJvdG90eXBlID0gewogCiAgICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7
CiAgICAgICAgICAgICBjYXNlIHJlY29yZFR5cGVzLkdDRXZlbnQ6Ci0gICAgICAgICAgICAgICAg
Y29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNvbGxl
Y3RlZCIpLCBOdW1iZXIuYnl0ZXNUb1N0cmluZyh0aGlzLmRhdGFbInVzZWRIZWFwU2l6ZURlbHRh
Il0pKTsKKyAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRSb3coV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJDb2xsZWN0ZWQiKSwgTnVtYmVyLmJ5dGVzVG9TdHJpbmcodGhpcy5k
YXRhWyJ1c2VkSGVhcFNpemVEZWx0YSJdKSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICBjYXNlIHJlY29yZFR5cGVzLlRpbWVySW5zdGFsbDoKICAgICAgICAgICAgIGNhc2Ug
cmVjb3JkVHlwZXMuVGltZXJGaXJlOgogICAgICAgICAgICAgY2FzZSByZWNvcmRUeXBlcy5UaW1l
clJlbW92ZToKLSAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiVGltZXIgSUQiKSwgdGhpcy5kYXRhWyJ0aW1lcklkIl0pOwor
ICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcoIlRpbWVyIElEIiksIHRoaXMuZGF0YVsidGltZXJJZCJdKTsKICAgICAgICAgICAg
ICAgICBpZiAodHlwZW9mIHRoaXMudGltZW91dCA9PT0gIm51bWJlciIpIHsKLSAgICAgICAgICAg
ICAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIlRpbWVvdXQiKSwgTnVtYmVyLnNlY29uZHNUb1N0cmluZyh0aGlzLnRpbWVvdXQgLyAxMDAw
KSk7Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuX2FwcGVuZFRleHRSb3coV2Vi
SW5zcGVjdG9yLlVJU3RyaW5nKCJSZXBlYXRzIiksICF0aGlzLnNpbmdsZVNob3QpOworICAgICAg
ICAgICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJUaW1lb3V0IiksIE51bWJlci5zZWNvbmRzVG9TdHJpbmcodGhpcy50aW1lb3V0IC8g
MTAwMCkpOworICAgICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRSb3co
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZXBlYXRzIiksICF0aGlzLnNpbmdsZVNob3QpOwogICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2Ug
cmVjb3JkVHlwZXMuRmlyZUFuaW1hdGlvbkZyYW1lOgotICAgICAgICAgICAgICAgIGNvbnRlbnRI
ZWxwZXIuX2FwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDYWxsYmFjayBJRCIp
LCB0aGlzLmRhdGFbImlkIl0pOworICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5k
VGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNhbGxiYWNrIElEIiksIHRoaXMuZGF0YVsi
aWQiXSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIHJlY29yZFR5
cGVzLkZ1bmN0aW9uQ2FsbDoKLSAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRF
bGVtZW50Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiTG9jYXRpb24iKSwgdGhpcy5fbGlua2lm
eVNjcmlwdExvY2F0aW9uKCkpOworICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5k
RWxlbWVudFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxvY2F0aW9uIiksIHRoaXMuX2xpbmtp
ZnlTY3JpcHRMb2NhdGlvbigpKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IGNhc2UgcmVjb3JkVHlwZXMuU2NoZWR1bGVSZXNvdXJjZVJlcXVlc3Q6CiAgICAgICAgICAgICBj
YXNlIHJlY29yZFR5cGVzLlJlc291cmNlU2VuZFJlcXVlc3Q6CiAgICAgICAgICAgICBjYXNlIHJl
Y29yZFR5cGVzLlJlc291cmNlUmVjZWl2ZVJlc3BvbnNlOgogICAgICAgICAgICAgY2FzZSByZWNv
cmRUeXBlcy5SZXNvdXJjZVJlY2VpdmVkRGF0YToKICAgICAgICAgICAgIGNhc2UgcmVjb3JkVHlw
ZXMuUmVzb3VyY2VGaW5pc2g6Ci0gICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5k
RWxlbWVudFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlc291cmNlIiksIFdlYkluc3BlY3Rv
ci5saW5raWZ5UmVzb3VyY2VBc05vZGUodGhpcy51cmwpKTsKKyAgICAgICAgICAgICAgICBjb250
ZW50SGVscGVyLmFwcGVuZEVsZW1lbnRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZXNvdXJj
ZSIpLCBXZWJJbnNwZWN0b3IubGlua2lmeVJlc291cmNlQXNOb2RlKHRoaXMudXJsKSk7CiAgICAg
ICAgICAgICAgICAgaWYgKHByZXZpZXdFbGVtZW50KQotICAgICAgICAgICAgICAgICAgICBjb250
ZW50SGVscGVyLl9hcHBlbmRFbGVtZW50Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiUHJldmll
dyIpLCBwcmV2aWV3RWxlbWVudCk7CisgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIu
YXBwZW5kRWxlbWVudFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlByZXZpZXciKSwgcHJldmll
d0VsZW1lbnQpOwogICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGFbInJlcXVlc3RNZXRob2Qi
XSkKLSAgICAgICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIlJlcXVlc3QgTWV0aG9kIiksIHRoaXMuZGF0YVsicmVxdWVzdE1l
dGhvZCJdKTsKKyAgICAgICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRUZXh0Um93
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVxdWVzdCBNZXRob2QiKSwgdGhpcy5kYXRhWyJyZXF1
ZXN0TWV0aG9kIl0pOwogICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5kYXRhWyJzdGF0
dXNDb2RlIl0gPT09ICJudW1iZXIiKQotICAgICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVy
Ll9hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiU3RhdHVzIENvZGUiKSwgdGhp
cy5kYXRhWyJzdGF0dXNDb2RlIl0pOworICAgICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVy
LmFwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTdGF0dXMgQ29kZSIpLCB0aGlz
LmRhdGFbInN0YXR1c0NvZGUiXSk7CiAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZGF0YVsibWlt
ZVR5cGUiXSkKLSAgICAgICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJv
dyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk1JTUUgVHlwZSIpLCB0aGlzLmRhdGFbIm1pbWVUeXBl
Il0pOworICAgICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRSb3coV2Vi
SW5zcGVjdG9yLlVJU3RyaW5nKCJNSU1FIFR5cGUiKSwgdGhpcy5kYXRhWyJtaW1lVHlwZSJdKTsK
ICAgICAgICAgICAgICAgICBpZiAodGhpcy5kYXRhWyJlbmNvZGVkRGF0YUxlbmd0aCJdKQotICAg
ICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rv
ci5VSVN0cmluZygiRW5jb2RlZCBEYXRhIExlbmd0aCIpLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IiVkIEJ5dGVzIiwgdGhpcy5kYXRhWyJlbmNvZGVkRGF0YUxlbmd0aCJdKSk7CisgICAgICAgICAg
ICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIkVuY29kZWQgRGF0YSBMZW5ndGgiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIlZCBCeXRl
cyIsIHRoaXMuZGF0YVsiZW5jb2RlZERhdGFMZW5ndGgiXSkpOwogICAgICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICAgICAgY2FzZSByZWNvcmRUeXBlcy5FdmFsdWF0ZVNjcmlwdDoKICAgICAg
ICAgICAgICAgICBpZiAodGhpcy5kYXRhICYmIHRoaXMudXJsKQotICAgICAgICAgICAgICAgICAg
ICBjb250ZW50SGVscGVyLl9hcHBlbmRFbGVtZW50Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygi
U2NyaXB0IiksIHRoaXMuX2xpbmtpZnlMb2NhdGlvbih0aGlzLnVybCwgdGhpcy5kYXRhWyJsaW5l
TnVtYmVyIl0pKTsKKyAgICAgICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRFbGVt
ZW50Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiU2NyaXB0IiksIHRoaXMuX2xpbmtpZnlMb2Nh
dGlvbih0aGlzLnVybCwgdGhpcy5kYXRhWyJsaW5lTnVtYmVyIl0pKTsKICAgICAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgICAgIGNhc2UgcmVjb3JkVHlwZXMuUGFpbnQ6Ci0gICAgICAgICAg
ICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IkxvY2F0aW9uIiksIFdlYkluc3BlY3Rvci5VSVN0cmluZygiKCVkLCAlZCkiLCB0aGlzLmRhdGFb
IngiXSwgdGhpcy5kYXRhWyJ5Il0pKTsKLSAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9h
cHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiRGltZW5zaW9ucyIpLCBXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIiVkIMOXICVkIiwgdGhpcy5kYXRhWyJ3aWR0aCJdLCB0aGlzLmRhdGFb
ImhlaWdodCJdKSk7CisgICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRUZXh0Um93
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiTG9jYXRpb24iKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCIoJWQsICVkKSIsIHRoaXMuZGF0YVsieCJdLCB0aGlzLmRhdGFbInkiXSkpOworICAgICAgICAg
ICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IkRpbWVuc2lvbnMiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIlZCDDlyAlZCIsIHRoaXMuZGF0
YVsid2lkdGgiXSwgdGhpcy5kYXRhWyJoZWlnaHQiXSkpOwogICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICAgICAgY2FzZSByZWNvcmRUeXBlcy5SZWNhbGN1bGF0ZVN0eWxlczogLy8gV2Ug
ZG9uJ3Qgd2FudCB0byBzZWUgZGVmYXVsdCBkZXRhaWxzLgogICAgICAgICAgICAgICAgIGNhbGxT
aXRlU3RhY2tUcmFjZUxhYmVsID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTdHlsZXMgaW52YWxp
ZGF0ZWQiKTsKQEAgLTk0MSw1MSArOTQxLDUxIEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNl
bnRhdGlvbk1vZGVsLlJlY29yZC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICAgICAgY2FsbFNp
dGVTdGFja1RyYWNlTGFiZWwgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxheW91dCBpbnZhbGlk
YXRlZCIpOwogICAgICAgICAgICAgICAgIGlmICh0aGlzLnN0YWNrVHJhY2UpIHsKICAgICAgICAg
ICAgICAgICAgICAgY2FsbFN0YWNrTGFiZWwgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkxheW91
dCBmb3JjZWQiKTsKLSAgICAgICAgICAgICAgICAgICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4
dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk5vdGUiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCJGb3JjZWQgc3luY2hyb25vdXMgbGF5b3V0IGlzIGEgcG9zc2libGUgcGVyZm9ybWFuY2UgYm90
dGxlbmVjay4iKSk7CisgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4
dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk5vdGUiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCJGb3JjZWQgc3luY2hyb25vdXMgbGF5b3V0IGlzIGEgcG9zc2libGUgcGVyZm9ybWFuY2UgYm90
dGxlbmVjay4iKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICAgICAgY2FzZSByZWNvcmRUeXBlcy5UaW1lOgogICAgICAgICAgICAgY2FzZSByZWNv
cmRUeXBlcy5UaW1lRW5kOgotICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuX2FwcGVuZFRl
eHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJNZXNzYWdlIiksIHRoaXMuZGF0YVsibWVzc2Fn
ZSJdKTsKKyAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRSb3coV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJNZXNzYWdlIiksIHRoaXMuZGF0YVsibWVzc2FnZSJdKTsKICAgICAg
ICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuaW50ZXJ2YWxEdXJhdGlvbiA9PT0gIm51bWJlciIp
Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuX2FwcGVuZFRleHRSb3coV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJJbnRlcnZhbCBEdXJhdGlvbiIpLCBOdW1iZXIuc2Vjb25kc1RvU3Ry
aW5nKHRoaXMuaW50ZXJ2YWxEdXJhdGlvbiwgdHJ1ZSkpOworICAgICAgICAgICAgICAgICAgICBj
b250ZW50SGVscGVyLmFwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJJbnRlcnZh
bCBEdXJhdGlvbiIpLCBOdW1iZXIuc2Vjb25kc1RvU3RyaW5nKHRoaXMuaW50ZXJ2YWxEdXJhdGlv
biwgdHJ1ZSkpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSByZWNv
cmRUeXBlcy5XZWJTb2NrZXRDcmVhdGU6CiAgICAgICAgICAgICBjYXNlIHJlY29yZFR5cGVzLldl
YlNvY2tldFNlbmRIYW5kc2hha2VSZXF1ZXN0OgogICAgICAgICAgICAgY2FzZSByZWNvcmRUeXBl
cy5XZWJTb2NrZXRSZWNlaXZlSGFuZHNoYWtlUmVzcG9uc2U6CiAgICAgICAgICAgICBjYXNlIHJl
Y29yZFR5cGVzLldlYlNvY2tldERlc3Ryb3k6CiAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB0
aGlzLndlYlNvY2tldFVSTCAhPT0gInVuZGVmaW5lZCIpCi0gICAgICAgICAgICAgICAgICAgIGNv
bnRlbnRIZWxwZXIuX2FwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJVUkwiKSwg
dGhpcy53ZWJTb2NrZXRVUkwpOworICAgICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLmFw
cGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJVUkwiKSwgdGhpcy53ZWJTb2NrZXRV
UkwpOwogICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy53ZWJTb2NrZXRQcm90b2NvbCAh
PT0gInVuZGVmaW5lZCIpCi0gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuX2FwcGVu
ZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJXZWJTb2NrZXQgUHJvdG9jb2wiKSwgdGhp
cy53ZWJTb2NrZXRQcm90b2NvbCk7CisgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIu
YXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIldlYlNvY2tldCBQcm90b2NvbCIp
LCB0aGlzLndlYlNvY2tldFByb3RvY29sKTsKICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRo
aXMuZGF0YVsibWVzc2FnZSJdICE9PSAidW5kZWZpbmVkIikKLSAgICAgICAgICAgICAgICAgICAg
Y29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk1lc3Nh
Z2UiKSwgdGhpcy5kYXRhWyJtZXNzYWdlIl0pCisgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRI
ZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk1lc3NhZ2UiKSwgdGhp
cy5kYXRhWyJtZXNzYWdlIl0pCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICBpZiAodGhpcy5kZXRhaWxzTm9kZSgpKQotICAg
ICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRFbGVtZW50Um93KFdlYkluc3Bl
Y3Rvci5VSVN0cmluZygiRGV0YWlscyIpLCB0aGlzLmRldGFpbHNOb2RlKCkuY2hpbGROb2Rlc1sx
XS5jbG9uZU5vZGUoKSk7CisgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5k
RWxlbWVudFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkRldGFpbHMiKSwgdGhpcy5kZXRhaWxz
Tm9kZSgpLmNoaWxkTm9kZXNbMV0uY2xvbmVOb2RlKCkpOwogICAgICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICB9CiAKICAgICAgICAgaWYgKHRoaXMuc2NyaXB0TmFtZSAmJiB0aGlzLnR5cGUg
IT09IHJlY29yZFR5cGVzLkZ1bmN0aW9uQ2FsbCkKLSAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIu
X2FwcGVuZEVsZW1lbnRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJGdW5jdGlvbiBDYWxsIiks
IHRoaXMuX2xpbmtpZnlTY3JpcHRMb2NhdGlvbigpKTsKKyAgICAgICAgICAgIGNvbnRlbnRIZWxw
ZXIuYXBwZW5kRWxlbWVudFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkZ1bmN0aW9uIENhbGwi
KSwgdGhpcy5fbGlua2lmeVNjcmlwdExvY2F0aW9uKCkpOwogCiAgICAgICAgIGlmICh0aGlzLnVz
ZWRIZWFwU2l6ZSkgewogICAgICAgICAgICAgaWYgKHRoaXMudXNlZEhlYXBTaXplRGVsdGEpIHsK
ICAgICAgICAgICAgICAgICB2YXIgc2lnbiA9IHRoaXMudXNlZEhlYXBTaXplRGVsdGEgPiAwID8g
IisiIDogIi0iOwotICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuX2FwcGVuZFRleHRSb3co
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJVc2VkIEhlYXAgU2l6ZSIpLAorICAgICAgICAgICAgICAg
IGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlVzZWQg
SGVhcCBTaXplIiksCiAgICAgICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5VSVN0cmluZygi
JXMgKCVzJXMpIiwgTnVtYmVyLmJ5dGVzVG9TdHJpbmcodGhpcy51c2VkSGVhcFNpemUpLCBzaWdu
LCBOdW1iZXIuYnl0ZXNUb1N0cmluZyh0aGlzLnVzZWRIZWFwU2l6ZURlbHRhKSkpOwogICAgICAg
ICAgICAgfSBlbHNlIGlmICh0aGlzLmNhdGVnb3J5ID09PSBXZWJJbnNwZWN0b3IuVGltZWxpbmVQ
cmVzZW50YXRpb25Nb2RlbC5jYXRlZ29yaWVzKCkuc2NyaXB0aW5nKQotICAgICAgICAgICAgICAg
IGNvbnRlbnRIZWxwZXIuX2FwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJVc2Vk
IEhlYXAgU2l6ZSIpLCBOdW1iZXIuYnl0ZXNUb1N0cmluZyh0aGlzLnVzZWRIZWFwU2l6ZSkpOwor
ICAgICAgICAgICAgICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcoIlVzZWQgSGVhcCBTaXplIiksIE51bWJlci5ieXRlc1RvU3RyaW5nKHRoaXMudXNl
ZEhlYXBTaXplKSk7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAodGhpcy5jYWxsU2l0ZVN0YWNr
VHJhY2UpCi0gICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRTdGFja1RyYWNlKGNhbGxT
aXRlU3RhY2tUcmFjZUxhYmVsIHx8IFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2FsbCBTaXRlIHN0
YWNrIiksIHRoaXMuY2FsbFNpdGVTdGFja1RyYWNlLCB0aGlzLl9saW5raWZ5Q2FsbEZyYW1lLmJp
bmQodGhpcykpOworICAgICAgICAgICAgY29udGVudEhlbHBlci5hcHBlbmRTdGFja1RyYWNlKGNh
bGxTaXRlU3RhY2tUcmFjZUxhYmVsIHx8IFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2FsbCBTaXRl
IHN0YWNrIiksIHRoaXMuY2FsbFNpdGVTdGFja1RyYWNlLCB0aGlzLl9saW5raWZ5Q2FsbEZyYW1l
LmJpbmQodGhpcykpOwogCiAgICAgICAgIGlmICh0aGlzLnN0YWNrVHJhY2UpCi0gICAgICAgICAg
ICBjb250ZW50SGVscGVyLl9hcHBlbmRTdGFja1RyYWNlKGNhbGxTdGFja0xhYmVsIHx8IFdlYklu
c3BlY3Rvci5VSVN0cmluZygiQ2FsbCBTdGFjayIpLCB0aGlzLnN0YWNrVHJhY2UsIHRoaXMuX2xp
bmtpZnlDYWxsRnJhbWUuYmluZCh0aGlzKSk7CisgICAgICAgICAgICBjb250ZW50SGVscGVyLmFw
cGVuZFN0YWNrVHJhY2UoY2FsbFN0YWNrTGFiZWwgfHwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJD
YWxsIFN0YWNrIiksIHRoaXMuc3RhY2tUcmFjZSwgdGhpcy5fbGlua2lmeUNhbGxGcmFtZS5iaW5k
KHRoaXMpKTsKIAotICAgICAgICBjYWxsYmFjayhjb250ZW50SGVscGVyLl9jb250ZW50VGFibGUp
OworICAgICAgICBjYWxsYmFjayhjb250ZW50SGVscGVyLmNvbnRlbnRUYWJsZSgpKTsKICAgICB9
LAogCiAgICAgX3JlZnJlc2hEZXRhaWxzOiBmdW5jdGlvbigpCkBAIC0xMTc2LDk0ICsxMTc2LDE5
IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLl9nZW5lcmF0ZUFnZ3Jl
Z2F0ZWRJbmZvID0gZnVuY3Rpb24oYWdncmVnCiAgICAgcmV0dXJuIGNlbGw7CiB9CiAKLS8qKgot
ICogQGNvbnN0cnVjdG9yCi0gKiBAcGFyYW0ge3N0cmluZ30gdGl0bGUKLSAqLwotV2ViSW5zcGVj
dG9yLlRpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuUG9wdXBDb250ZW50SGVscGVyID0gZnVuY3Rp
b24odGl0bGUpCi17Ci0gICAgdGhpcy5fY29udGVudFRhYmxlID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgidGFibGUiKTsKLSAgICB2YXIgdGl0bGVDZWxsID0gdGhpcy5fY3JlYXRlQ2VsbChXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIiVzIC0gRGV0YWlscyIsIHRpdGxlKSwgInRpbWVsaW5lLWRldGFp
bHMtdGl0bGUiKTsKLSAgICB0aXRsZUNlbGwuY29sU3BhbiA9IDI7Ci0gICAgdmFyIHRpdGxlUm93
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidHIiKTsKLSAgICB0aXRsZVJvdy5hcHBlbmRDaGls
ZCh0aXRsZUNlbGwpOwotICAgIHRoaXMuX2NvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZCh0aXRsZVJv
dyk7Ci19Ci0KLVdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLlBvcHVwQ29u
dGVudEhlbHBlci5wcm90b3R5cGUgPSB7Ci0gICAgLyoqCi0gICAgICogQHBhcmFtIHtzdHJpbmc9
fSBzdHlsZU5hbWUKLSAgICAgKi8KLSAgICBfY3JlYXRlQ2VsbDogZnVuY3Rpb24oY29udGVudCwg
c3R5bGVOYW1lKQotICAgIHsKLSAgICAgICAgdmFyIHRleHQgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJsYWJlbCIpOwotICAgICAgICB0ZXh0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRl
eHROb2RlKGNvbnRlbnQpKTsKLSAgICAgICAgdmFyIGNlbGwgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJ0ZCIpOwotICAgICAgICBjZWxsLmNsYXNzTmFtZSA9ICJ0aW1lbGluZS1kZXRhaWxzIjsK
LSAgICAgICAgaWYgKHN0eWxlTmFtZSkKLSAgICAgICAgICAgIGNlbGwuY2xhc3NOYW1lICs9ICIg
IiArIHN0eWxlTmFtZTsKLSAgICAgICAgY2VsbC50ZXh0Q29udGVudCA9IGNvbnRlbnQ7Ci0gICAg
ICAgIHJldHVybiBjZWxsOwotICAgIH0sCi0KLSAgICBfYXBwZW5kVGV4dFJvdzogZnVuY3Rpb24o
dGl0bGUsIGNvbnRlbnQpCi0gICAgewotICAgICAgICB2YXIgcm93ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgidHIiKTsKLSAgICAgICAgcm93LmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUNlbGwo
dGl0bGUsICJ0aW1lbGluZS1kZXRhaWxzLXJvdy10aXRsZSIpKTsKLSAgICAgICAgcm93LmFwcGVu
ZENoaWxkKHRoaXMuX2NyZWF0ZUNlbGwoY29udGVudCwgInRpbWVsaW5lLWRldGFpbHMtcm93LWRh
dGEiKSk7Ci0gICAgICAgIHRoaXMuX2NvbnRlbnRUYWJsZS5hcHBlbmRDaGlsZChyb3cpOwotICAg
IH0sCi0KLSAgICAvKioKLSAgICAgKiBAcGFyYW0ge3N0cmluZz19IHRpdGxlU3R5bGUKLSAgICAg
Ki8KLSAgICBfYXBwZW5kRWxlbWVudFJvdzogZnVuY3Rpb24odGl0bGUsIGNvbnRlbnQsIHRpdGxl
U3R5bGUpCi0gICAgewotICAgICAgICB2YXIgcm93ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
dHIiKTsKLSAgICAgICAgdmFyIHRpdGxlQ2VsbCA9IHRoaXMuX2NyZWF0ZUNlbGwodGl0bGUsICJ0
aW1lbGluZS1kZXRhaWxzLXJvdy10aXRsZSIpOwotICAgICAgICBpZiAodGl0bGVTdHlsZSkKLSAg
ICAgICAgICAgIHRpdGxlQ2VsbC5hZGRTdHlsZUNsYXNzKHRpdGxlU3R5bGUpOwotICAgICAgICBy
b3cuYXBwZW5kQ2hpbGQodGl0bGVDZWxsKTsKLSAgICAgICAgdmFyIGNlbGwgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJ0ZCIpOwotICAgICAgICBjZWxsLmNsYXNzTmFtZSA9ICJ0aW1lbGluZS1k
ZXRhaWxzIjsKLSAgICAgICAgY2VsbC5hcHBlbmRDaGlsZChjb250ZW50KTsKLSAgICAgICAgcm93
LmFwcGVuZENoaWxkKGNlbGwpOwotICAgICAgICB0aGlzLl9jb250ZW50VGFibGUuYXBwZW5kQ2hp
bGQocm93KTsKLSAgICB9LAotCi0gICAgX2FwcGVuZFN0YWNrVHJhY2U6IGZ1bmN0aW9uKHRpdGxl
LCBzdGFja1RyYWNlLCBjYWxsRnJhbWVMaW5raWZpZXIpCi0gICAgewotICAgICAgICB0aGlzLl9h
cHBlbmRUZXh0Um93KCIiLCAiIik7Ci0gICAgICAgIHZhciBmcmFtZXNUYWJsZSA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoInRhYmxlIik7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc3Rh
Y2tUcmFjZS5sZW5ndGg7ICsraSkgewotICAgICAgICAgICAgdmFyIHN0YWNrRnJhbWUgPSBzdGFj
a1RyYWNlW2ldOwotICAgICAgICAgICAgdmFyIHJvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
InRyIik7Ci0gICAgICAgICAgICByb3cuY2xhc3NOYW1lID0gInRpbWVsaW5lLWRldGFpbHMiOwot
ICAgICAgICAgICAgcm93LmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUNlbGwoc3RhY2tGcmFtZS5m
dW5jdGlvbk5hbWUgPyBzdGFja0ZyYW1lLmZ1bmN0aW9uTmFtZSA6IFdlYkluc3BlY3Rvci5VSVN0
cmluZygiKGFub255bW91cyBmdW5jdGlvbikiKSwgInRpbWVsaW5lLWZ1bmN0aW9uLW5hbWUiKSk7
Ci0gICAgICAgICAgICByb3cuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlQ2VsbCgiIEAgIikpOwot
ICAgICAgICAgICAgdmFyIGxpbmtDZWxsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGQiKTsK
LSAgICAgICAgICAgIHZhciB1cmxFbGVtZW50ID0gY2FsbEZyYW1lTGlua2lmaWVyKHN0YWNrRnJh
bWUpOwotICAgICAgICAgICAgbGlua0NlbGwuYXBwZW5kQ2hpbGQodXJsRWxlbWVudCk7Ci0gICAg
ICAgICAgICByb3cuYXBwZW5kQ2hpbGQobGlua0NlbGwpOwotICAgICAgICAgICAgZnJhbWVzVGFi
bGUuYXBwZW5kQ2hpbGQocm93KTsKLSAgICAgICAgfQotICAgICAgICB0aGlzLl9hcHBlbmRFbGVt
ZW50Um93KHRpdGxlLCBmcmFtZXNUYWJsZSwgInRpbWVsaW5lLXN0YWNrdHJhY2UtdGl0bGUiKTsK
LSAgICB9Ci19Ci0KIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLmdlbmVy
YXRlUG9wdXBDb250ZW50Rm9yRnJhbWUgPSBmdW5jdGlvbihmcmFtZSkKIHsKLSAgICB2YXIgY29u
dGVudEhlbHBlciA9IG5ldyBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5Q
b3B1cENvbnRlbnRIZWxwZXIoV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJGcmFtZSIpKTsKKyAgICB2
YXIgY29udGVudEhlbHBlciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9wdXBDb250ZW50SGVscGVyKFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiRnJhbWUiKSk7CiAgICAgdmFyIGR1cmF0aW9uSW5TZWNvbmRz
ID0gZnJhbWUuZW5kVGltZSAtIGZyYW1lLnN0YXJ0VGltZTsKICAgICB2YXIgZHVyYXRpb25UZXh0
ID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIlcyAoYXQgJXMpIiwgTnVtYmVyLnNlY29uZHNUb1N0
cmluZyhmcmFtZS5lbmRUaW1lIC0gZnJhbWUuc3RhcnRUaW1lLCB0cnVlKSwKICAgICAgICAgTnVt
YmVyLnNlY29uZHNUb1N0cmluZyhmcmFtZS5zdGFydFRpbWVPZmZzZXQsIHRydWUpKTsKLSAgICBj
b250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiRHVyYXRp
b24iKSwgZHVyYXRpb25UZXh0KTsKLSAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiRlBTIiksIE1hdGguZmxvb3IoMSAvIGR1cmF0aW9uSW5TZWNv
bmRzKSk7Ci0gICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIkNQVSB0aW1lIiksIE51bWJlci5zZWNvbmRzVG9TdHJpbmcoZnJhbWUuY3B1VGltZSwg
dHJ1ZSkpOwotICAgIGNvbnRlbnRIZWxwZXIuX2FwcGVuZEVsZW1lbnRSb3coV2ViSW5zcGVjdG9y
LlVJU3RyaW5nKCJBZ2dyZWdhdGVkIFRpbWUiKSwKKyAgICBjb250ZW50SGVscGVyLmFwcGVuZFRl
eHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJEdXJhdGlvbiIpLCBkdXJhdGlvblRleHQpOwor
ICAgIGNvbnRlbnRIZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkZQ
UyIpLCBNYXRoLmZsb29yKDEgLyBkdXJhdGlvbkluU2Vjb25kcykpOworICAgIGNvbnRlbnRIZWxw
ZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNQVSB0aW1lIiksIE51bWJl
ci5zZWNvbmRzVG9TdHJpbmcoZnJhbWUuY3B1VGltZSwgdHJ1ZSkpOworICAgIGNvbnRlbnRIZWxw
ZXIuYXBwZW5kRWxlbWVudFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkFnZ3JlZ2F0ZWQgVGlt
ZSIpLAogICAgICAgICBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5fZ2Vu
ZXJhdGVBZ2dyZWdhdGVkSW5mbyhmcmFtZS50aW1lQnlDYXRlZ29yeSkpOwogCi0gICAgcmV0dXJu
IGNvbnRlbnRIZWxwZXIuX2NvbnRlbnRUYWJsZTsKKyAgICByZXR1cm4gY29udGVudEhlbHBlci5j
b250ZW50VGFibGUoKTsKIH0KIAogLyoqCkBAIC0xMjc5LDE4ICsxMjA0LDE4IEBAIFdlYkluc3Bl
Y3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLmdlbmVyYXRlUG9wdXBDb250ZW50Rm9yRnJh
bWVTdGF0aXN0aWNzID0KICAgICAgICAgcmV0dXJuIFdlYkluc3BlY3Rvci5VSVN0cmluZygiJXMg
KCUuMGYgRlBTKSIsIE51bWJlci5zZWNvbmRzVG9TdHJpbmcodGltZSwgdHJ1ZSksIDEgLyB0aW1l
KTsKICAgICB9CiAKLSAgICB2YXIgY29udGVudEhlbHBlciA9IG5ldyBXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5Qb3B1cENvbnRlbnRIZWxwZXIoV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJTZWxlY3RlZCBSYW5nZSIpKTsKKyAgICB2YXIgY29udGVudEhlbHBlciA9IG5ldyBX
ZWJJbnNwZWN0b3IuUG9wdXBDb250ZW50SGVscGVyKFdlYkluc3BlY3Rvci5VSVN0cmluZygiU2Vs
ZWN0ZWQgUmFuZ2UiKSk7CiAKLSAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdlYklu
c3BlY3Rvci5VSVN0cmluZygiU2VsZWN0ZWQgcmFuZ2UiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCIlc1x1MjAxMyVzICglZCBmcmFtZXMpIiwKKyAgICBjb250ZW50SGVscGVyLmFwcGVuZFRleHRS
b3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTZWxlY3RlZCByYW5nZSIpLCBXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcoIiVzXHUyMDEzJXMgKCVkIGZyYW1lcykiLAogICAgICAgICBOdW1iZXIuc2Vjb25k
c1RvU3RyaW5nKHN0YXRpc3RpY3Muc3RhcnRPZmZzZXQsIHRydWUpLCBOdW1iZXIuc2Vjb25kc1Rv
U3RyaW5nKHN0YXRpc3RpY3MuZW5kT2Zmc2V0LCB0cnVlKSwgc3RhdGlzdGljcy5mcmFtZUNvdW50
KSk7Ci0gICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIk1pbmltdW0gVGltZSIpLCBmb3JtYXRUaW1lQW5kRlBTKHN0YXRpc3RpY3MubWluRHVyYXRp
b24pKTsKLSAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0
cmluZygiQXZlcmFnZSBUaW1lIiksIGZvcm1hdFRpbWVBbmRGUFMoc3RhdGlzdGljcy5hdmVyYWdl
KSk7Ci0gICAgY29udGVudEhlbHBlci5fYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJp
bmcoIk1heGltdW0gVGltZSIpLCBmb3JtYXRUaW1lQW5kRlBTKHN0YXRpc3RpY3MubWF4RHVyYXRp
b24pKTsKLSAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0
cmluZygiU3RhbmRhcmQgRGV2aWF0aW9uIiksIE51bWJlci5zZWNvbmRzVG9TdHJpbmcoc3RhdGlz
dGljcy5zdGRkZXYsIHRydWUpKTsKLSAgICBjb250ZW50SGVscGVyLl9hcHBlbmRFbGVtZW50Um93
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiVGltZSBieSBjYXRlZ29yeSIpLAorICAgIGNvbnRlbnRI
ZWxwZXIuYXBwZW5kVGV4dFJvdyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk1pbmltdW0gVGltZSIp
LCBmb3JtYXRUaW1lQW5kRlBTKHN0YXRpc3RpY3MubWluRHVyYXRpb24pKTsKKyAgICBjb250ZW50
SGVscGVyLmFwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJBdmVyYWdlIFRpbWUi
KSwgZm9ybWF0VGltZUFuZEZQUyhzdGF0aXN0aWNzLmF2ZXJhZ2UpKTsKKyAgICBjb250ZW50SGVs
cGVyLmFwcGVuZFRleHRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJNYXhpbXVtIFRpbWUiKSwg
Zm9ybWF0VGltZUFuZEZQUyhzdGF0aXN0aWNzLm1heER1cmF0aW9uKSk7CisgICAgY29udGVudEhl
bHBlci5hcHBlbmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiU3RhbmRhcmQgRGV2aWF0
aW9uIiksIE51bWJlci5zZWNvbmRzVG9TdHJpbmcoc3RhdGlzdGljcy5zdGRkZXYsIHRydWUpKTsK
KyAgICBjb250ZW50SGVscGVyLmFwcGVuZEVsZW1lbnRSb3coV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCJUaW1lIGJ5IGNhdGVnb3J5IiksCiAgICAgICAgIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNl
bnRhdGlvbk1vZGVsLl9nZW5lcmF0ZUFnZ3JlZ2F0ZWRJbmZvKHN0YXRpc3RpY3MudGltZUJ5Q2F0
ZWdvcnkpKTsKIAotICAgIHJldHVybiBjb250ZW50SGVscGVyLl9jb250ZW50VGFibGU7CisgICAg
cmV0dXJuIGNvbnRlbnRIZWxwZXIuY29udGVudFRhYmxlKCk7CiB9CiAKIC8qKgpAQCAtMTM5NSwz
ICsxMzIwLDUgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2F0ZWdvcnkucHJvdG90eXBlID0gewog
CiAgICAgX19wcm90b19fOiBXZWJJbnNwZWN0b3IuT2JqZWN0LnByb3RvdHlwZQogfQorCisvL0Ag
c291cmNlVVJMPWh0dHA6Ly9sb2NhbGhvc3QvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBy
ZXNlbnRhdGlvbk1vZGVsLmpzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL3BvcG92ZXIuY3NzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9wb3BvdmVyLmNzcwppbmRleCBlNmU5NWY1OWM3NDU2YmNmNjg1NGFjYWFjYzdjOWQ0OTQ4MzZl
YzY5Li5mNjBkNjUzZTI1OGZlYTc3MzRmNDQ2Y2YzOTEwZGU4NGRhZDlmNjkzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3BvcG92ZXIuY3NzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvcG9wb3Zlci5jc3MKQEAgLTkyLDMgKzky
LDM1IEBACiAgICAgbWFyZ2luLXJpZ2h0OiAtMjVweDsKICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9u
OiAwIC01N3B4OwogfQorCisucG9wb3Zlci1kZXRhaWxzIHsKKyAgICAtd2Via2l0LXVzZXItc2Vs
ZWN0OiB0ZXh0OworICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7Cit9CisKKy5wb3BvdmVyLWZ1bmN0
aW9uLW5hbWUgeworICAgIHRleHQtYWxpZ246IHJpZ2h0OworfQorCisucG9wb3Zlci1zdGFja3Ry
YWNlLXRpdGxlIHsKKyAgICBwYWRkaW5nLXRvcDogNHB4OworfQorCisucG9wb3Zlci1kZXRhaWxz
LXJvdy10aXRsZSB7CisgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgdGV4dC1hbGlnbjogcmln
aHQ7CisgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKK30KKworLnBvcG92ZXItZGV0YWlscy1yb3ct
ZGF0YSB7CisgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKK30KKworLnBvcG92ZXItZGV0YWlscy10
aXRsZSB7CisgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNCOEI4Qjg7CisgICAgZm9udC1z
aXplOiAxMXB4OworICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgIHBhZGRpbmctYm90dG9tOiA1
cHg7CisgICAgcGFkZGluZy10b3A6IDBweDsKKyAgICB3aGl0ZS1zcGFjZTogbm93cmFwOworfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC90aW1lbGluZVBh
bmVsLmNzcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvdGltZWxpbmVQYW5l
bC5jc3MKaW5kZXggYWYwMDk4YmI0YTI0NGYyYTczMmVkNGU4N2I3NDM1NTAwMjJlNGU4OC4uYWY5
MmY2MzhjYzQ1NjkwOTNjODhmNDhkZjg5YmJjN2ZmYjhiZGU0OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC90aW1lbGluZVBhbmVsLmNzcworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3RpbWVsaW5lUGFuZWwuY3NzCkBAIC0zODYs
MzggKzM4Niw2IEBACiAgICAgbWFyZ2luLWxlZnQ6IDBweDsKIH0KIAotLnRpbWVsaW5lLWRldGFp
bHMgewotICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7Ci0gICAgdmVydGljYWwtYWxpZ246
IHRvcDsKLX0KLQotLnRpbWVsaW5lLWZ1bmN0aW9uLW5hbWUgewotICAgIHRleHQtYWxpZ246IHJp
Z2h0OwotfQotCi0udGltZWxpbmUtc3RhY2t0cmFjZS10aXRsZSB7Ci0gICAgcGFkZGluZy10b3A6
IDRweDsKLX0KLQotLnRpbWVsaW5lLWRldGFpbHMtcm93LXRpdGxlIHsKLSAgICBmb250LXdlaWdo
dDogYm9sZDsKLSAgICB0ZXh0LWFsaWduOiByaWdodDsKLSAgICB3aGl0ZS1zcGFjZTogbm93cmFw
OwotfQotCi0udGltZWxpbmUtZGV0YWlscy1yb3ctZGF0YSB7Ci0gICAgd2hpdGUtc3BhY2U6IG5v
d3JhcDsKLX0KLQotLnRpbWVsaW5lLWRldGFpbHMtdGl0bGUgewotICAgIGJvcmRlci1ib3R0b206
IDFweCBzb2xpZCAjQjhCOEI4OwotICAgIGZvbnQtc2l6ZTogMTFweDsKLSAgICBmb250LXdlaWdo
dDogYm9sZDsKLSAgICBwYWRkaW5nLWJvdHRvbTogNXB4OwotICAgIHBhZGRpbmctdG9wOiAwcHg7
Ci0gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKLX0KLQogLmdhcmJhZ2UtY29sbGVjdC1zdGF0dXMt
YmFyLWl0ZW0gLmdseXBoIHsKICAgICAtd2Via2l0LW1hc2stcG9zaXRpb246IC0xMjhweCAtMjRw
eDsKIH0K
</data>
<flag name="review"
          id="212459"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>