<?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>95000</bug_id>
          
          <creation_ts>2012-08-25 03:49:53 -0700</creation_ts>
          <short_desc>Web Inspector: display cause for style recalculation and layout on Timeline</short_desc>
          <delta_ts>2012-08-27 06:53:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (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="Andrey Kosyakov">caseq</reporter>
          <assigned_to name="Andrey Kosyakov">caseq</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>704677</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2012-08-25 03:49:53 -0700</bug_when>
    <thetext>Improve traceability of style recalculation and layout by capturing stack of the first invalidation of either styles or layout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>704678</commentid>
    <comment_count>1</comment_count>
      <attachid>160560</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2012-08-25 04:01:58 -0700</bug_when>
    <thetext>Created attachment 160560
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705156</commentid>
    <comment_count>2</comment_count>
      <attachid>160560</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-08-27 04:37:33 -0700</bug_when>
    <thetext>Comment on attachment 160560
Patch

Your test might be flaky.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>705232</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2012-08-27 06:53:10 -0700</bug_when>
    <thetext>Committed r126754: &lt;http://trac.webkit.org/changeset/126754&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160560</attachid>
            <date>2012-08-25 04:01:58 -0700</date>
            <delta_ts>2012-08-27 04:37:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95000-20120825150152.patch</filename>
            <type>text/plain</type>
            <size>25948</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2NjgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTJlZmIwN2M3MWM2YjJk
ODBkZjU0MjMzOTBhNGQ2N2JhNGYyMjJjYS4uYTMyYjgzMTk2ZmZiNmFhZmUxYmYxYTc5NzNkZDUy
YjA5ZmM4YTU2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDEyLTA4LTI1ICBBbmRy
ZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogZGlzcGxheSBjYXVzZSBmb3Igc3R5bGUgcmVjYWxjdWxhdGlvbiBhbmQgbGF5b3V0IG9uIFRp
bWVsaW5lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
NTAwMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZGVkIGluc3RydW1lbnRhdGlvbiBmb3IgZGlkSW52YWxpZGF0ZUxheW91dCBhbmQgZGlkU2NoZWR1
bGVTdHlsZVJlY2FsY3VsYXRpb247CisgICAgICAgIERpc3BhbHkgc3RhY2tzIG9mIHRoZSBhYm92
ZSByZWNvcmRzIGluIExheW91dCBhbmQgUmVjYWxjdWxhdGUgU3R5bGUgYXMgImNhbGwgc2l0ZSIg
c3RhY2tzIChuZWVkIGEgYmV0dGVyIHdvcmRpbmc/KTsKKyAgICAgICAgRGlzcGxheSBzeW5jaHJv
bm91cyBMYXlvdXQgcmVjb3JkcyBpbiByZWQsIHByb3ZpZGUgYSB3YXJuaW5nIHRoYXQgdGhlc2Ug
bWF5IGFmZmVjdCBwZXJmb3JtYW5jZTsKKworICAgICAgICAqIEVuZ2xpc2gubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qczogKyJOb3RlIiBhbmQgYSB3YXJuaW5nIHRlc3QgZm9yIHN5bmMgbGF5b3V0
OworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwOiBQbHVt
YmluZyBuZXcgaW5zdHJ1bWVudGF0aW9uIG1ldGhvZHMgdGhyb3VnaCB0byB0aW1lbGluZTsKKyAg
ICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRJbnZhbGlkYXRlTGF5b3V0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZFNjaGVkdWxlU3R5bGVSZWNhbGN1bGF0aW9uSW1wbCk6Cisg
ICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOiBkaXR0by4KKyAg
ICAgICAgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEludmFsaWRhdGVMYXlvdXQpOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwOiBk
aXR0by4KKyAgICAgICAgKFRpbWVsaW5lUmVjb3JkVHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JUaW1lbGluZUFnZW50OjpkaWRJbnZhbGlkYXRlTGF5b3V0KToKKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6ZGlkU2No
ZWR1bGVTdHlsZVJlY2FsY3VsYXRpb24pOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JU
aW1lbGluZUFnZW50Lmg6IGRpdHRvLgorICAgICAgICAoSW5zcGVjdG9yVGltZWxpbmVBZ2VudCk6
CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZU1vZGVsLmpzOgorICAgICAg
ICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qczoKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5UaW1lbGluZVJlY29yZExpc3RSb3cucHJvdG90eXBlLnVwZGF0ZSk6IERpc3BsYXkg
cmVjb3JkcyB3aXRoIHdhcm5pbmdzIGluIHRoZWlyIG93biBzdHlsZTsKKyAgICAgICAgKiBpbnNw
ZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuanM6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5faW5pdFJlY29yZFN0eWxlcyk6
IFJlbmFtZWQsIGFkZGVkIG5ldyByZWNvcmRzOworICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVs
aW5lUHJlc2VudGF0aW9uTW9kZWwucmVjb3JkU3R5bGUpOiBBZGRlZCBuZXcgcmVjb3JkczsKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLnByb3RvdHlwZS5y
ZXNldCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5w
cm90b3R5cGUuX2lubmVyQWRkUmVjb3JkKTogQWRkIHN1cHBvcnQgZm9yIG5ldyByZWNvcmRzLCBt
YWtlICdlbSBoaWRkZW47CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRp
b25Nb2RlbC5SZWNvcmQpOiBBZGQgc3VwcG9ydCBmb3IgaGlkZGVuIHJlY29yZHM7CisgICAgICAg
IChXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5SZWNvcmQucHJvdG90eXBl
Ll9nZW5lcmF0ZVBvcHVwQ29udGVudFdpdGhJbWFnZVByZXZpZXcpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuUmVjb3JkLnByb3RvdHlwZS5fbGlua2lm
eVRvcENhbGxGcmFtZSk6IExpbmtpZnkgb3JpZ2luYXRvcidzIHRvcCBmcmFtZSBpZiBubyBvd24g
c3RhY2sgaXMgcHJlc2VudDsKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL3RpbWVsaW5l
UGFuZWwuY3NzOgorICAgICAgICAoLnRpbWVsaW5lLXRyZWUtaXRlbS53YXJuaW5nKTogUmVkZGlz
aCB0ZXh0IGZvciByZWNvcmRzIHdpdGggd2FybmluZ3M7CisgICAgICAgICogcGFnZS9GcmFtZVZp
ZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzY2hlZHVsZVJlbGF5b3V0KTog
QWRkZWQgY2FsbCB0byBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEludmFsaWRhdGVMYXlv
dXQoKQorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzY2hlZHVsZVJlbGF5b3V0T2ZTdWJ0
cmVlKTogRGl0dG8uCisKIDIwMTItMDgtMjUgIE1pY2hlbGFuZ2VsbyBEZSBTaW1vbmUgIDxtaWNo
ZWxhbmdlbG9Ad2Via2l0Lm9yZz4KIAogICAgICAgICBbQ3Jhc2hdIE51bGwgcG9pbnRlciBpbiBD
U1NQYXJzZXI6OnBhcnNlTWl4RnVuY3Rpb24oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
RW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkNvcmUvRW5nbGlz
aC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDc1MmNiOWU3MDBhYzQ2YWZlM2M2YTQz
ZDc3ZmVlMGY5MDFmYjhkMDIuLjkxNzljZjBhZGJmNGEzM2Y2MzljNDliNjJlOGRkYmUxNTQ2NmRh
MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3Ry
aW5ncy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmlu
Z3MuanMKQEAgLTczMiwzICs3MzIsNSBAQCBsb2NhbGl6ZWRTdHJpbmdzWyJFbXVsYXRlIHBvc2l0
aW9uIHVuYXZhaWxhYmxlIl0gPSAiRW11bGF0ZSBwb3NpdGlvbiB1bmF2YWlsYWJsZQogbG9jYWxp
emVkU3RyaW5nc1siT3ZlcnJpZGUgR2VvbG9jYXRpb24iXSA9ICJPdmVycmlkZSBHZW9sb2NhdGlv
biI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJHZW9sb2NhdGlvbiBQb3NpdGlvbiJdID0gIkdlb2xvY2F0
aW9uIFBvc2l0aW9uIjsKIGxvY2FsaXplZFN0cmluZ3NbIk92ZXJyaWRlIERldmljZSBPcmllbnRh
dGlvbiJdID0gIk92ZXJyaWRlIERldmljZSBPcmllbnRhdGlvbiI7Citsb2NhbGl6ZWRTdHJpbmdz
WyJOb3RlIl0gPSAiTm90ZSI7Citsb2NhbGl6ZWRTdHJpbmdzWyJGb3JjZWQgc3luY2hyb25vdXMg
bGF5b3V0IGlzIGEgcG9zc2libGUgcGVyZm9ybWFuY2UgYm90dGxlbmNrLiJdID0gIkZvcmNlZCBz
eW5jaHJvbm91cyBsYXlvdXQgaXMgYSBwb3NzaWJsZSBwZXJmb3JtYW5jZSBib3R0bGVuY2suIjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRh
dGlvbi5jcHAKaW5kZXggN2VhMzE0YzU2NDM2NjMyYTEzODJhOWJjODc5OGMwMmQ4NjJiZGQyNy4u
NTdiMjFjNTI4MjJmMDdlYTRlMTk1YjliOWM3YjkyMzJjYzFiNWVmOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKQEAg
LTQyOSw2ICs0MjksMTIgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZENhbmNl
bEZyYW1lSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW4KICAgICAgICAgdGltZWxp
bmVBZ2VudC0+ZGlkQ2FuY2VsRnJhbWUoKTsKIH0KIAordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmRpZEludmFsaWRhdGVMYXlvdXRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3Ry
dW1lbnRpbmdBZ2VudHMsIEZyYW1lKiBmcmFtZSkKK3sKKyAgICBpZiAoSW5zcGVjdG9yVGltZWxp
bmVBZ2VudCogdGltZWxpbmVBZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMtPmluc3BlY3RvclRp
bWVsaW5lQWdlbnQoKSkKKyAgICAgICAgdGltZWxpbmVBZ2VudC0+ZGlkSW52YWxpZGF0ZUxheW91
dChmcmFtZSk7Cit9CisKIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OndpbGxMYXlvdXRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3Ry
dW1lbnRpbmdBZ2VudHMsIEZyYW1lKiBmcmFtZSkKIHsKICAgICBpbnQgdGltZWxpbmVBZ2VudElk
ID0gMDsKQEAgLTUyNiw2ICs1MzIsOCBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkUmVjYWxjdWxhdGVTdHlsZUltcGwoY29uc3QgSW5zcGVjdG9ySW5zdHJ1bWVudAogCiB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkU2NoZWR1bGVTdHlsZVJlY2FsY3VsYXRpb25J
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIERvY3VtZW50KiBk
b2N1bWVudCkKIHsKKyAgICBpZiAoSW5zcGVjdG9yVGltZWxpbmVBZ2VudCogdGltZWxpbmVBZ2Vu
dCA9IGluc3RydW1lbnRpbmdBZ2VudHMtPmluc3BlY3RvclRpbWVsaW5lQWdlbnQoKSkKKyAgICAg
ICAgdGltZWxpbmVBZ2VudC0+ZGlkU2NoZWR1bGVTdHlsZVJlY2FsY3VsYXRpb24oZG9jdW1lbnQt
PmZyYW1lKCkpOwogICAgIGlmIChJbnNwZWN0b3JSZXNvdXJjZUFnZW50KiByZXNvdXJjZUFnZW50
ID0gaW5zdHJ1bWVudGluZ0FnZW50cy0+aW5zcGVjdG9yUmVzb3VyY2VBZ2VudCgpKQogICAgICAg
ICByZXNvdXJjZUFnZW50LT5kaWRTY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbihkb2N1bWVudCk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmgKaW5kZXggZTRhNzllZDM4Y2FhM2Y3M2FiZDdhNDQxZGMzMzYyNjcyOWYzZGI2Zi4u
ZGIzMzViZmFmNDUwY2MzMThjYmNlNGRmNjE4MTEyN2RkMjU0ZjVjOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaApAQCAtMTQy
LDYgKzE0Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBkaWRGaXJlVGltZXIoY29uc3Qg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llJik7CiAgICAgc3RhdGljIHZvaWQgZGlkQmVn
aW5GcmFtZShQYWdlKik7CiAgICAgc3RhdGljIHZvaWQgZGlkQ2FuY2VsRnJhbWUoUGFnZSopOwor
ICAgIHN0YXRpYyB2b2lkIGRpZEludmFsaWRhdGVMYXlvdXQoRnJhbWUqKTsKICAgICBzdGF0aWMg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIHdpbGxMYXlvdXQoRnJhbWUqKTsKICAgICBz
dGF0aWMgdm9pZCBkaWRMYXlvdXQoY29uc3QgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2ll
Jik7CiAgICAgc3RhdGljIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSB3aWxsTG9hZFhI
UihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgWE1MSHR0cFJlcXVlc3QqKTsKQEAgLTMxNyw2ICsz
MTgsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIGRpZEZpcmVUaW1lckltcGwoY29uc3Qg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llJik7CiAgICAgc3RhdGljIHZvaWQgZGlkQmVn
aW5GcmFtZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyopOwogICAgIHN0YXRpYyB2b2lkIGRpZENh
bmNlbEZyYW1lSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKik7CisgICAgc3RhdGljIHZvaWQgZGlk
SW52YWxpZGF0ZUxheW91dEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyosIEZyYW1lKik7CiAgICAg
c3RhdGljIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSB3aWxsTGF5b3V0SW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzKiwgRnJhbWUqKTsKICAgICBzdGF0aWMgdm9pZCBkaWRMYXlvdXRJbXBs
KGNvbnN0IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSYpOwogICAgIHN0YXRpYyBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgd2lsbExvYWRYSFJJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMqLCBYTUxIdHRwUmVxdWVzdCosIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKQEAgLTgx
MCw2ICs4MTIsMTUgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRD
YW5jZWxGcmFtZShQYWdlKiBwYWdlKQogI2VuZGlmCiB9CiAKK2lubGluZSB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkSW52YWxpZGF0ZUxheW91dChGcmFtZSogZnJhbWUpCit7Cisj
aWYgRU5BQkxFKElOU1BFQ1RPUikKKyAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9p
ZCgpKTsKKyAgICBpZiAoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cyA9
IGluc3RydW1lbnRpbmdBZ2VudHNGb3JGcmFtZShmcmFtZSkpCisgICAgICAgIGRpZEludmFsaWRh
dGVMYXlvdXRJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMsIGZyYW1lKTsKKyNlbmRpZgorfQorCiBp
bmxpbmUgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6d2lsbExheW91dChGcmFtZSogZnJhbWUpCiB7CiAjaWYgRU5BQkxFKElOU1BFQ1RPUikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFn
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50
LmNwcAppbmRleCA2OGZmNWU1ZWFiZjQ5NmQwZGY3NmIwNmQ1ZGFkYmNhOWVjOTkzY2RhLi45ZWYz
MmE1ZmRmMjBlOTFiN2NhMTljMTY3NWRiNWJmMjNhMTYxMDJmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwCkBAIC0zNiw2ICsz
Niw3IEBACiAKICNpbmNsdWRlICJFdmVudC5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVk
ZSAiRnJhbWVWaWV3LmgiCiAjaW5jbHVkZSAiSWRlbnRpZmllcnNGYWN0b3J5LmgiCiAjaW5jbHVk
ZSAiSW5zcGVjdG9yQ2xpZW50LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQ291bnRlcnMuaCIKQEAg
LTY1LDggKzY2LDEwIEBAIHN0YXRpYyBjb25zdCBjaGFyIFByb2dyYW1bXSA9ICJQcm9ncmFtIjsK
IAogc3RhdGljIGNvbnN0IGNoYXIgRXZlbnREaXNwYXRjaFtdID0gIkV2ZW50RGlzcGF0Y2giOwog
c3RhdGljIGNvbnN0IGNoYXIgQmVnaW5GcmFtZVtdID0gIkJlZ2luRnJhbWUiOwotc3RhdGljIGNv
bnN0IGNoYXIgTGF5b3V0W10gPSAiTGF5b3V0IjsKK3N0YXRpYyBjb25zdCBjaGFyIFNjaGVkdWxl
U3R5bGVSZWNhbGN1bGF0aW9uW10gPSAiU2NoZWR1bGVTdHlsZVJlY2FsY3VsYXRpb24iOwogc3Rh
dGljIGNvbnN0IGNoYXIgUmVjYWxjdWxhdGVTdHlsZXNbXSA9ICJSZWNhbGN1bGF0ZVN0eWxlcyI7
CitzdGF0aWMgY29uc3QgY2hhciBJbnZhbGlkYXRlTGF5b3V0W10gPSAiSW52YWxpZGF0ZUxheW91
dCI7CitzdGF0aWMgY29uc3QgY2hhciBMYXlvdXRbXSA9ICJMYXlvdXQiOwogc3RhdGljIGNvbnN0
IGNoYXIgUGFpbnRbXSA9ICJQYWludCI7CiBzdGF0aWMgY29uc3QgY2hhciBEZWNvZGVJbWFnZVtd
ID0gIkRlY29kZUltYWdlIjsKIHN0YXRpYyBjb25zdCBjaGFyIFJlc2l6ZUltYWdlW10gPSAiUmVz
aXplSW1hZ2UiOwpAQCAtMjI3LDYgKzIzMCwxMyBAQCB2b2lkIEluc3BlY3RvclRpbWVsaW5lQWdl
bnQ6OmRpZERpc3BhdGNoRXZlbnQoKQogICAgIGRpZENvbXBsZXRlQ3VycmVudFJlY29yZChUaW1l
bGluZVJlY29yZFR5cGU6OkV2ZW50RGlzcGF0Y2gpOwogfQogCit2b2lkIEluc3BlY3RvclRpbWVs
aW5lQWdlbnQ6OmRpZEludmFsaWRhdGVMYXlvdXQoRnJhbWUqIGZyYW1lKQoreworICAgIGlmIChm
cmFtZS0+dmlldygpLT5sYXlvdXRQZW5kaW5nKCkpCisgICAgICAgIHJldHVybjsKKyAgICBhcHBl
bmRSZWNvcmQoSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKSwgVGltZWxpbmVSZWNvcmRUeXBlOjpJ
bnZhbGlkYXRlTGF5b3V0LCB0cnVlLCBmcmFtZSk7Cit9CisKIHZvaWQgSW5zcGVjdG9yVGltZWxp
bmVBZ2VudDo6d2lsbExheW91dChGcmFtZSogZnJhbWUpCiB7CiAgICAgcHVzaEN1cnJlbnRSZWNv
cmQoSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKSwgVGltZWxpbmVSZWNvcmRUeXBlOjpMYXlvdXQs
IHRydWUsIGZyYW1lKTsKQEAgLTIzNyw2ICsyNDcsMTEgQEAgdm9pZCBJbnNwZWN0b3JUaW1lbGlu
ZUFnZW50OjpkaWRMYXlvdXQoKQogICAgIGRpZENvbXBsZXRlQ3VycmVudFJlY29yZChUaW1lbGlu
ZVJlY29yZFR5cGU6OkxheW91dCk7CiB9CiAKK3ZvaWQgSW5zcGVjdG9yVGltZWxpbmVBZ2VudDo6
ZGlkU2NoZWR1bGVTdHlsZVJlY2FsY3VsYXRpb24oRnJhbWUqIGZyYW1lKQoreworICAgIGFwcGVu
ZFJlY29yZChJbnNwZWN0b3JPYmplY3Q6OmNyZWF0ZSgpLCBUaW1lbGluZVJlY29yZFR5cGU6OlNj
aGVkdWxlU3R5bGVSZWNhbGN1bGF0aW9uLCB0cnVlLCBmcmFtZSk7Cit9CisKIHZvaWQgSW5zcGVj
dG9yVGltZWxpbmVBZ2VudDo6d2lsbFJlY2FsY3VsYXRlU3R5bGUoRnJhbWUqIGZyYW1lKQogewog
ICAgIHB1c2hDdXJyZW50UmVjb3JkKEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCksIFRpbWVsaW5l
UmVjb3JkVHlwZTo6UmVjYWxjdWxhdGVTdHlsZXMsIHRydWUsIGZyYW1lKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oCmluZGV4IDYxZThk
ZGMwMGUwNDg0NTRjMmMzYzJlNzIyZGE1OGY3NDlhY2NjYzcuLjU0Zjg3OTRmMjI1YzAyY2ZhOTli
OTczMTU2YmM4YjBkMzlkNGEwYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JUaW1lbGluZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclRpbWVsaW5lQWdlbnQuaApAQCAtOTYsOSArOTYsMTEgQEAgcHVibGljOgogICAg
IHZvaWQgZGlkQmVnaW5GcmFtZSgpOwogICAgIHZvaWQgZGlkQ2FuY2VsRnJhbWUoKTsKIAorICAg
IHZvaWQgZGlkSW52YWxpZGF0ZUxheW91dChGcmFtZSopOwogICAgIHZvaWQgd2lsbExheW91dChG
cmFtZSopOwogICAgIHZvaWQgZGlkTGF5b3V0KCk7CiAKKyAgICB2b2lkIGRpZFNjaGVkdWxlU3R5
bGVSZWNhbGN1bGF0aW9uKEZyYW1lKik7CiAgICAgdm9pZCB3aWxsUmVjYWxjdWxhdGVTdHlsZShG
cmFtZSopOwogICAgIHZvaWQgZGlkUmVjYWxjdWxhdGVTdHlsZSgpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lTW9kZWwuanMgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lTW9kZWwuanMKaW5kZXggZGZm
MzA0NGIyM2I1ZDYyYWM1NzgyNjJiMjBlMWY1YzkzZWE4MzU3Yi4uOWRiZmYzNzdmNzk0ZWM1ZGQw
MjRmNTc2MTExYjExOGNlMzMyY2E2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9UaW1lbGluZU1vZGVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvVGltZWxpbmVNb2RlbC5qcwpAQCAtNDksOCArNDksMTAgQEAgV2ViSW5z
cGVjdG9yLlRpbWVsaW5lTW9kZWwuUmVjb3JkVHlwZSA9IHsKICAgICBFdmVudERpc3BhdGNoOiAi
RXZlbnREaXNwYXRjaCIsCiAKICAgICBCZWdpbkZyYW1lOiAiQmVnaW5GcmFtZSIsCi0gICAgTGF5
b3V0OiAiTGF5b3V0IiwKKyAgICBTY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbjogIlNjaGVkdWxl
U3R5bGVSZWNhbGN1bGF0aW9uIiwKICAgICBSZWNhbGN1bGF0ZVN0eWxlczogIlJlY2FsY3VsYXRl
U3R5bGVzIiwKKyAgICBJbnZhbGlkYXRlTGF5b3V0OiAiSW52YWxpZGF0ZUxheW91dCIsCisgICAg
TGF5b3V0OiAiTGF5b3V0IiwKICAgICBQYWludDogIlBhaW50IiwKICAgICBEZWNvZGVJbWFnZTog
IkRlY29kZUltYWdlIiwKICAgICBSZXNpemVJbWFnZTogIlJlc2l6ZUltYWdlIiwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qcyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qcwppbmRl
eCBkYmZkOGE4YzBmZDYxOGM2ZWQ5ZDYyNGY4MWYwNzQ0NWQ2ZjE0YWM2Li5lMTc4Mjk5ZDhhMjFi
ODJlNzRiOTgyNjRhYmIzMWQyNWY2MGY0YWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzCkBAIC0xMTEyLDcgKzExMTIsMTIg
QEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUmVjb3JkTGlzdFJvdy5wcm90b3R5cGUgPSB7CiAgICAg
ICAgIHRoaXMuX3JlY29yZCA9IHJlY29yZDsKICAgICAgICAgdGhpcy5fb2Zmc2V0ID0gb2Zmc2V0
OwogCi0gICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc05hbWUgPSAidGltZWxpbmUtdHJlZS1pdGVt
IHRpbWVsaW5lLWNhdGVnb3J5LSIgKyByZWNvcmQuY2F0ZWdvcnkubmFtZSArIChpc0V2ZW4gPyAi
IGV2ZW4iIDogIiIpOworICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gInRpbWVsaW5l
LXRyZWUtaXRlbSB0aW1lbGluZS1jYXRlZ29yeS0iICsgcmVjb3JkLmNhdGVnb3J5Lm5hbWU7Cisg
ICAgICAgIGlmIChpc0V2ZW4pCisgICAgICAgICAgICB0aGlzLmVsZW1lbnQuYWRkU3R5bGVDbGFz
cygiZXZlbiIpOworICAgICAgICBpZiAocmVjb3JkLmhhc1dhcm5pbmcpCisgICAgICAgICAgICB0
aGlzLmVsZW1lbnQuYWRkU3R5bGVDbGFzcygid2FybmluZyIpOworCiAgICAgICAgIHRoaXMuX3R5
cGVFbGVtZW50LnRleHRDb250ZW50ID0gcmVjb3JkLnRpdGxlOwogCiAgICAgICAgIGlmICh0aGlz
Ll9kYXRhRWxlbWVudC5maXJzdENoaWxkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLmpzCmlu
ZGV4IDZiZDlhOThmMDcyYzA2ZjBmNDkwY2EwZTY5ZGNkMTQxY2UwZGUxZjEuLmQ2OTc4NjA2MDRh
ZWJiYWZiMDFjYWI4NDgxNzY3MTlhZWE0ZjJiZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5qcworKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUHJlc2VudGF0aW9uTW9k
ZWwuanMKQEAgLTU5LDcgKzU5LDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9u
TW9kZWwuY2F0ZWdvcmllcyA9IGZ1bmN0aW9uKCkKIC8qKgogICogQHJldHVybiB7IU9iamVjdC48
c3RyaW5nLCB7dGl0bGU6IHN0cmluZywgY2F0ZWdvcnl9Pn0KICAqLwotV2ViSW5zcGVjdG9yLlRp
bWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuaW5pdFJlY29yZFN0eWxlc18gPSBmdW5jdGlvbigpCitX
ZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5faW5pdFJlY29yZFN0eWxlcyA9
IGZ1bmN0aW9uKCkKIHsKICAgICBpZiAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9u
TW9kZWwuX3JlY29yZFN0eWxlc01hcCkKICAgICAgICAgcmV0dXJuIFdlYkluc3BlY3Rvci5UaW1l
bGluZVByZXNlbnRhdGlvbk1vZGVsLl9yZWNvcmRTdHlsZXNNYXA7CkBAIC03Miw4ICs3MiwxMCBA
QCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5pbml0UmVjb3JkU3R5bGVz
XyA9IGZ1bmN0aW9uKCkKICAgICByZWNvcmRTdHlsZXNbcmVjb3JkVHlwZXMuUHJvZ3JhbV0gPSB7
IHRpdGxlOiBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlByb2dyYW0iKSwgY2F0ZWdvcnk6IGNhdGVn
b3JpZXNbInByb2dyYW0iXSB9OwogICAgIHJlY29yZFN0eWxlc1tyZWNvcmRUeXBlcy5FdmVudERp
c3BhdGNoXSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0cmluZygiRXZlbnQiKSwgY2F0ZWdv
cnk6IGNhdGVnb3JpZXNbInNjcmlwdGluZyJdIH07CiAgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5
cGVzLkJlZ2luRnJhbWVdID0geyB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJGcmFtZSBT
dGFydCIpLCBjYXRlZ29yeTogY2F0ZWdvcmllc1sicmVuZGVyaW5nIl0gfTsKLSAgICByZWNvcmRT
dHlsZXNbcmVjb3JkVHlwZXMuTGF5b3V0XSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0cmlu
ZygiTGF5b3V0IiksIGNhdGVnb3J5OiBjYXRlZ29yaWVzWyJyZW5kZXJpbmciXSB9OworICAgIHJl
Y29yZFN0eWxlc1tyZWNvcmRUeXBlcy5TY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbl0gPSB7IHRp
dGxlOiBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNjaGVkdWxlIFN0eWxlIFJlY2FsY3VsYXRpb24i
KSwgY2F0ZWdvcnk6IGNhdGVnb3JpZXNbInJlbmRlcmluZyJdIH07CiAgICAgcmVjb3JkU3R5bGVz
W3JlY29yZFR5cGVzLlJlY2FsY3VsYXRlU3R5bGVzXSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5V
SVN0cmluZygiUmVjYWxjdWxhdGUgU3R5bGUiKSwgY2F0ZWdvcnk6IGNhdGVnb3JpZXNbInJlbmRl
cmluZyJdIH07CisgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5cGVzLkludmFsaWRhdGVMYXlvdXRd
ID0geyB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJJbnZhbGlkYXRlIExheW91dCIpLCBj
YXRlZ29yeTogY2F0ZWdvcmllc1sicmVuZGVyaW5nIl0gfTsKKyAgICByZWNvcmRTdHlsZXNbcmVj
b3JkVHlwZXMuTGF5b3V0XSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0cmluZygiTGF5b3V0
IiksIGNhdGVnb3J5OiBjYXRlZ29yaWVzWyJyZW5kZXJpbmciXSB9OwogICAgIHJlY29yZFN0eWxl
c1tyZWNvcmRUeXBlcy5QYWludF0gPSB7IHRpdGxlOiBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlBh
aW50IiksIGNhdGVnb3J5OiBjYXRlZ29yaWVzWyJwYWludGluZyJdIH07CiAgICAgcmVjb3JkU3R5
bGVzW3JlY29yZFR5cGVzLkRlY29kZUltYWdlXSA9IHsgdGl0bGU6IFdlYkluc3BlY3Rvci5VSVN0
cmluZygiSW1hZ2UgRGVjb2RlIiksIGNhdGVnb3J5OiBjYXRlZ29yaWVzWyJwYWludGluZyJdIH07
CiAgICAgcmVjb3JkU3R5bGVzW3JlY29yZFR5cGVzLlJlc2l6ZUltYWdlXSA9IHsgdGl0bGU6IFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiSW1hZ2UgUmVzaXplIiksIGNhdGVnb3J5OiBjYXRlZ29yaWVz
WyJwYWludGluZyJdIH07CkBAIC0xMTAsNyArMTEyLDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5l
UHJlc2VudGF0aW9uTW9kZWwuaW5pdFJlY29yZFN0eWxlc18gPSBmdW5jdGlvbigpCiAgKi8KIFdl
Ykluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLnJlY29yZFN0eWxlID0gZnVuY3Rp
b24ocmVjb3JkKQogewotICAgIHZhciByZWNvcmRTdHlsZXMgPSBXZWJJbnNwZWN0b3IuVGltZWxp
bmVQcmVzZW50YXRpb25Nb2RlbC5pbml0UmVjb3JkU3R5bGVzXygpOworICAgIHZhciByZWNvcmRT
dHlsZXMgPSBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5faW5pdFJlY29y
ZFN0eWxlcygpOwogICAgIHZhciByZXN1bHQgPSByZWNvcmRTdHlsZXNbcmVjb3JkLnR5cGVdOwog
ICAgIGlmICghcmVzdWx0KSB7CiAgICAgICAgIHJlc3VsdCA9IHsKQEAgLTIzOCw3ICsyNDAsNyBA
QCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUgPSB7CiAg
ICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMuX2xpbmtpZmllci5yZXNl
dCgpOwotICAgICAgICB0aGlzLl9yb290UmVjb3JkID0gbmV3IFdlYkluc3BlY3Rvci5UaW1lbGlu
ZVByZXNlbnRhdGlvbk1vZGVsLlJlY29yZCh0aGlzLCB7IHR5cGU6IFdlYkluc3BlY3Rvci5UaW1l
bGluZU1vZGVsLlJlY29yZFR5cGUuUm9vdCB9LCBudWxsLCBudWxsKTsKKyAgICAgICAgdGhpcy5f
cm9vdFJlY29yZCA9IG5ldyBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5S
ZWNvcmQodGhpcywgeyB0eXBlOiBXZWJJbnNwZWN0b3IuVGltZWxpbmVNb2RlbC5SZWNvcmRUeXBl
LlJvb3QgfSwgbnVsbCwgbnVsbCwgZmFsc2UpOwogICAgICAgICB0aGlzLl9zZW5kUmVxdWVzdFJl
Y29yZHMgPSB7fTsKICAgICAgICAgdGhpcy5fc2NoZWR1bGVkUmVzb3VyY2VSZXF1ZXN0cyA9IHt9
OwogICAgICAgICB0aGlzLl90aW1lclJlY29yZHMgPSB7fTsKQEAgLTI0Niw2ICsyNDgsOCBAQCBX
ZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUgPSB7CiAgICAg
ICAgIHRoaXMuX3RpbWVSZWNvcmRzID0ge307CiAgICAgICAgIHRoaXMuX2ZyYW1lcyA9IFtdOwog
ICAgICAgICB0aGlzLl9taW5pbXVtUmVjb3JkVGltZSA9IC0xOworICAgICAgICB0aGlzLl9sYXN0
SW52YWxpZGF0ZUxheW91dCA9IHt9OworICAgICAgICB0aGlzLl9sYXN0U2NoZWR1bGVTdHlsZVJl
Y2FsY3VsYXRpb24gPSB7fTsKICAgICB9LAogCiAgICAgYWRkRnJhbWU6IGZ1bmN0aW9uKGZyYW1l
KQpAQCAtMjczLDE5ICsyNzcsMTggQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9u
TW9kZWwucHJvdG90eXBlID0gewogCiAgICAgX2lubmVyQWRkUmVjb3JkOiBmdW5jdGlvbihyZWNv
cmQsIHBhcmVudFJlY29yZCkKICAgICB7CisgICAgICAgIGNvbnN0IHJlY29yZFR5cGVzID0gV2Vi
SW5zcGVjdG9yLlRpbWVsaW5lTW9kZWwuUmVjb3JkVHlwZTsKKyAgICAgICAgY29uc3QgaGlkZGVu
UmVjb3JkcyA9IFsKKyAgICAgICAgICAgIHJlY29yZFR5cGVzLk1hcmtET01Db250ZW50LAorICAg
ICAgICAgICAgcmVjb3JkVHlwZXMuTWFya0xvYWQsCisgICAgICAgICAgICByZWNvcmRUeXBlcy5T
Y2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbiwKKyAgICAgICAgICAgIHJlY29yZFR5cGVzLkludmFs
aWRhdGVMYXlvdXQKKyAgICAgICAgXTsKKyAgICAgICAgdmFyIGlzSGlkZGVuUmVjb3JkID0gaGlk
ZGVuUmVjb3Jkcy5pbmRleE9mKHJlY29yZC50eXBlKSA+PSAwOwogICAgICAgICB2YXIgY29ubmVj
dGVkVG9PbGRSZWNvcmQgPSBmYWxzZTsKLSAgICAgICAgdmFyIHJlY29yZFR5cGVzID0gV2ViSW5z
cGVjdG9yLlRpbWVsaW5lTW9kZWwuUmVjb3JkVHlwZTsKLQotICAgICAgICBzd2l0Y2ggKHJlY29y
ZC50eXBlKSB7Ci0gICAgICAgIC8vIE5vIGJhciBlbnRyeSBmb3IgbG9hZCBldmVudHMuCi0gICAg
ICAgIGNhc2UgcmVjb3JkVHlwZXMuTWFya0RPTUNvbnRlbnQ6Ci0gICAgICAgIGNhc2UgcmVjb3Jk
VHlwZXMuTWFya0xvYWQ6Ci0gICAgICAgICAgICBwYXJlbnRSZWNvcmQgPSBudWxsOwotICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgcmVjb3JkVHlwZXMuVGltZToKKyAgICAgICAgaWYg
KHJlY29yZC50eXBlID09PSByZWNvcmRUeXBlcy5UaW1lKQogICAgICAgICAgICAgcGFyZW50UmVj
b3JkID0gdGhpcy5fcm9vdFJlY29yZDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBkZWZh
dWx0OgorICAgICAgICBlbHNlIGlmICghaXNIaWRkZW5SZWNvcmQpIHsKICAgICAgICAgICAgIHZh
ciBuZXdQYXJlbnRSZWNvcmQgPSB0aGlzLl9maW5kUGFyZW50UmVjb3JkKHJlY29yZCk7CiAgICAg
ICAgICAgICBpZiAobmV3UGFyZW50UmVjb3JkKSB7CiAgICAgICAgICAgICAgICAgcGFyZW50UmVj
b3JkID0gbmV3UGFyZW50UmVjb3JkOwpAQCAtMzEzLDkgKzMxNiw5IEBAIFdlYkluc3BlY3Rvci5U
aW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIH0KICAg
ICAgICAgfQogCi0gICAgICAgIHZhciBmb3JtYXR0ZWRSZWNvcmQgPSBuZXcgV2ViSW5zcGVjdG9y
LlRpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuUmVjb3JkKHRoaXMsIHJlY29yZCwgcGFyZW50UmVj
b3JkLCBzY3JpcHREZXRhaWxzKTsKKyAgICAgICAgdmFyIGZvcm1hdHRlZFJlY29yZCA9IG5ldyBX
ZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5SZWNvcmQodGhpcywgcmVjb3Jk
LCBwYXJlbnRSZWNvcmQsIHNjcmlwdERldGFpbHMsIGlzSGlkZGVuUmVjb3JkKTsKIAotICAgICAg
ICBpZiAocmVjb3JkLnR5cGUgPT09IHJlY29yZFR5cGVzLk1hcmtET01Db250ZW50IHx8IHJlY29y
ZC50eXBlID09PSByZWNvcmRUeXBlcy5NYXJrTG9hZCkKKyAgICAgICAgaWYgKGlzSGlkZGVuUmVj
b3JkKQogICAgICAgICAgICAgcmV0dXJuIGZvcm1hdHRlZFJlY29yZDsKIAogICAgICAgICBmb3Jt
YXR0ZWRSZWNvcmQuY29sbGFwc2VkID0gKHBhcmVudFJlY29yZCA9PT0gdGhpcy5fcm9vdFJlY29y
ZCk7CkBAIC0zNzAsNiArMzczLDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9u
TW9kZWwucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAorICAgIAogICAgIHNldEds
dWVSZWNvcmRzOiBmdW5jdGlvbihnbHVlKQogICAgIHsKICAgICAgICAgdGhpcy5fZ2x1ZVJlY29y
ZHMgPSBnbHVlOwpAQCAtNDI0LDE2ICs0MjgsMjIgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJl
c2VudGF0aW9uTW9kZWwucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5PYmplY3QK
IAogLyoqCiAgKiBAY29uc3RydWN0b3IKKyAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLlRpbWVsaW5l
UHJlc2VudGF0aW9uTW9kZWx9IHByZXNlbnRhdGlvbk1vZGVsCisgKiBAcGFyYW0ge09iamVjdH0g
cmVjb3JkCisgKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVs
LlJlY29yZH0gcGFyZW50UmVjb3JkCisgKiBAcGFyYW0ge09iamVjdHx1bmRlZmluZWR9IHNjcmlw
dERldGFpbHMKKyAqIEBwYXJhbSB7Ym9vbGVhbn0gaGlkZGVuCiAgKi8KLVdlYkluc3BlY3Rvci5U
aW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLlJlY29yZCA9IGZ1bmN0aW9uKHByZXNlbnRhdGlvbk1v
ZGVsLCByZWNvcmQsIHBhcmVudFJlY29yZCwgc2NyaXB0RGV0YWlscykKK1dlYkluc3BlY3Rvci5U
aW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLlJlY29yZCA9IGZ1bmN0aW9uKHByZXNlbnRhdGlvbk1v
ZGVsLCByZWNvcmQsIHBhcmVudFJlY29yZCwgc2NyaXB0RGV0YWlscywgaGlkZGVuKQogewogICAg
IHRoaXMuX2xpbmtpZmllciA9IHByZXNlbnRhdGlvbk1vZGVsLl9saW5raWZpZXI7CiAgICAgdGhp
cy5fYWdncmVnYXRlZFN0YXRzID0gW107CiAgICAgdGhpcy5fcmVjb3JkID0gcmVjb3JkOwogICAg
IHRoaXMuX2NoaWxkcmVuID0gW107Ci0gICAgdGhpcy5wYXJlbnQgPSBwYXJlbnRSZWNvcmQ7Ci0g
ICAgaWYgKHBhcmVudFJlY29yZCkKKyAgICBpZiAoIWhpZGRlbiAmJiBwYXJlbnRSZWNvcmQpIHsK
KyAgICAgICAgdGhpcy5wYXJlbnQgPSBwYXJlbnRSZWNvcmQ7CiAgICAgICAgIHBhcmVudFJlY29y
ZC5jaGlsZHJlbi5wdXNoKHRoaXMpOworICAgIH0KIAogICAgIHRoaXMuX3NlbGZUaW1lID0gdGhp
cy5lbmRUaW1lIC0gdGhpcy5zdGFydFRpbWU7CiAgICAgdGhpcy5fbGFzdENoaWxkRW5kVGltZSA9
IHRoaXMuZW5kVGltZTsKQEAgLTQ0NSw2ICs0NTUsOCBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQ
cmVzZW50YXRpb25Nb2RlbC5SZWNvcmQgPSBmdW5jdGlvbihwcmVzZW50YXRpb25Nb2RlbCwgcmVj
bwogICAgICAgICB0aGlzLnNjcmlwdE5hbWUgPSBzY3JpcHREZXRhaWxzLnNjcmlwdE5hbWU7CiAg
ICAgICAgIHRoaXMuc2NyaXB0TGluZSA9IHNjcmlwdERldGFpbHMuc2NyaXB0TGluZTsKICAgICB9
CisgICAgaWYgKHBhcmVudFJlY29yZCAmJiBwYXJlbnRSZWNvcmQuY2FsbFNpdGVTdGFja1RyYWNl
KQorICAgICAgICB0aGlzLmNhbGxTaXRlU3RhY2tUcmFjZSA9IHBhcmVudFJlY29yZC5jYWxsU2l0
ZVN0YWNrVHJhY2U7CiAKICAgICB2YXIgcmVjb3JkVHlwZXMgPSBXZWJJbnNwZWN0b3IuVGltZWxp
bmVNb2RlbC5SZWNvcmRUeXBlOwogICAgIHN3aXRjaCAocmVjb3JkLnR5cGUpIHsKQEAgLTUxMiw3
ICs1MjQsMzEgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuUmVjb3Jk
ID0gZnVuY3Rpb24ocHJlc2VudGF0aW9uTW9kZWwsIHJlY28KICAgICAgICAgICAgIHRpbWVSZWNv
cmQuaW50ZXJ2YWxEdXJhdGlvbiA9IGludGVydmFsRHVyYXRpb247CiAgICAgICAgIH0KICAgICAg
ICAgYnJlYWs7Ci0gICAgfQorCisgICAgY2FzZSByZWNvcmRUeXBlcy5TY2hlZHVsZVN0eWxlUmVj
YWxjdWxhdGlvbjoKKyAgICAgICAgcHJlc2VudGF0aW9uTW9kZWwuX2xhc3RTY2hlZHVsZVN0eWxl
UmVjYWxjdWxhdGlvblt0aGlzLmZyYW1lSWRdID0gdGhpczsKKyAgICAgICAgYnJlYWs7CisKKyAg
ICBjYXNlIHJlY29yZFR5cGVzLlJlY2FsY3VsYXRlU3R5bGVzOgorICAgICAgICB2YXIgc2NoZWR1
bGVTdHlsZVJlY2FsY3VsYXRpb25SZWNvcmQgPSBwcmVzZW50YXRpb25Nb2RlbC5fbGFzdFNjaGVk
dWxlU3R5bGVSZWNhbGN1bGF0aW9uW3RoaXMuZnJhbWVJZF07CisgICAgICAgIGlmICghc2NoZWR1
bGVTdHlsZVJlY2FsY3VsYXRpb25SZWNvcmQpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
dGhpcy5jYWxsU2l0ZVN0YWNrVHJhY2UgPSBzY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvblJlY29y
ZC5zdGFja1RyYWNlOworICAgICAgICBicmVhazsKKworICAgIGNhc2UgcmVjb3JkVHlwZXMuSW52
YWxpZGF0ZUxheW91dDoKKyAgICAgICAgcHJlc2VudGF0aW9uTW9kZWwuX2xhc3RJbnZhbGlkYXRl
TGF5b3V0W3RoaXMuZnJhbWVJZF0gPSB0aGlzOworICAgICAgICBicmVhazsKKworICAgIGNhc2Ug
cmVjb3JkVHlwZXMuTGF5b3V0OgorICAgICAgICB2YXIgaW52YWxpZGF0ZUxheW91dFJlY29yZCA9
IHByZXNlbnRhdGlvbk1vZGVsLl9sYXN0SW52YWxpZGF0ZUxheW91dFt0aGlzLmZyYW1lSWRdOwor
ICAgICAgICBpZiAoaW52YWxpZGF0ZUxheW91dFJlY29yZCkKKyAgICAgICAgICAgIHRoaXMuY2Fs
bFNpdGVTdGFja1RyYWNlID0gaW52YWxpZGF0ZUxheW91dFJlY29yZC5zdGFja1RyYWNlIHx8IGlu
dmFsaWRhdGVMYXlvdXRSZWNvcmQuY2FsbFNpdGVTdGFja1RyYWNlOworICAgICAgICBpZiAodGhp
cy5zdGFja1RyYWNlKQorICAgICAgICAgICAgdGhpcy5oYXNXYXJuaW5nID0gdHJ1ZTsKKyAgICAg
ICAgcHJlc2VudGF0aW9uTW9kZWwuX2xhc3RJbnZhbGlkYXRlTGF5b3V0W3RoaXMuZnJhbWVJZF0g
PSBudWxsOworICAgICAgICBicmVhazsKKyAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgCiB9
CiAKIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVsLlJlY29yZC5wcm90b3R5
cGUgPSB7CkBAIC03MzQsNiArNzcwLDEwIEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVByZXNlbnRh
dGlvbk1vZGVsLlJlY29yZC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICBjYXNlIHJlY29yZFR5cGVzLlJlY2FsY3VsYXRlU3R5bGVzOiAvLyBXZSBkb24n
dCB3YW50IHRvIHNlZSBkZWZhdWx0IGRldGFpbHMuCiAgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICBjYXNlIHJlY29yZFR5cGVzLkxheW91dDoKKyAgICAgICAgICAgICAgICBpZiAo
dGhpcy5zdGFja1RyYWNlKQorICAgICAgICAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBl
bmRUZXh0Um93KFdlYkluc3BlY3Rvci5VSVN0cmluZygiTm90ZSIpLCBXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIkZvcmNlZCBzeW5jaHJvbm91cyBsYXlvdXQgaXMgYSBwb3NzaWJsZSBwZXJmb3JtYW5j
ZSBib3R0bGVuY2suIikpOworICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2Fz
ZSByZWNvcmRUeXBlcy5UaW1lOgogICAgICAgICAgICAgY2FzZSByZWNvcmRUeXBlcy5UaW1lRW5k
OgogICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbnRlcnZhbER1cmF0aW9uID09PSAi
bnVtYmVyIikKQEAgLTc1MSw3ICs3OTEsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVQcmVzZW50
YXRpb25Nb2RlbC5SZWNvcmQucHJvdG90eXBlID0gewogICAgICAgICBpZiAodGhpcy51c2VkSGVh
cFNpemUpCiAgICAgICAgICAgICBjb250ZW50SGVscGVyLl9hcHBlbmRUZXh0Um93KFdlYkluc3Bl
Y3Rvci5VSVN0cmluZygiVXNlZCBIZWFwIFNpemUiKSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIl
cyBvZiAlcyIsIE51bWJlci5ieXRlc1RvU3RyaW5nKHRoaXMudXNlZEhlYXBTaXplKSwgTnVtYmVy
LmJ5dGVzVG9TdHJpbmcodGhpcy50b3RhbEhlYXBTaXplKSkpOwogCi0gICAgICAgIGlmICh0aGlz
LmNhbGxTaXRlU3RhY2tUcmFjZSAmJiB0aGlzLmNhbGxTaXRlU3RhY2tUcmFjZS5sZW5ndGgpCisg
ICAgICAgIGlmICh0aGlzLmNhbGxTaXRlU3RhY2tUcmFjZSkKICAgICAgICAgICAgIGNvbnRlbnRI
ZWxwZXIuX2FwcGVuZFN0YWNrVHJhY2UoV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDYWxsIFNpdGUg
c3RhY2siKSwgdGhpcy5jYWxsU2l0ZVN0YWNrVHJhY2UsIHRoaXMuX2xpbmtpZnlDYWxsRnJhbWUu
YmluZCh0aGlzKSk7CiAKICAgICAgICAgaWYgKHRoaXMuc3RhY2tUcmFjZSkKQEAgLTg0Myw3ICs4
ODMsMTEgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuUmVjb3JkLnBy
b3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBfbGlua2lmeVRvcENhbGxGcmFtZTogZnVuY3Rpb24o
ZGVmYXVsdFZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuc3RhY2tUcmFjZSA/IHRo
aXMuX2xpbmtpZnlDYWxsRnJhbWUodGhpcy5zdGFja1RyYWNlWzBdKSA6IGRlZmF1bHRWYWx1ZTsK
KyAgICAgICAgaWYgKHRoaXMuc3RhY2tUcmFjZSkKKyAgICAgICAgICAgIHJldHVybiB0aGlzLl9s
aW5raWZ5Q2FsbEZyYW1lKHRoaXMuc3RhY2tUcmFjZVswXSk7CisgICAgICAgIGlmICh0aGlzLmNh
bGxTaXRlU3RhY2tUcmFjZSkKKyAgICAgICAgICAgIHJldHVybiB0aGlzLl9saW5raWZ5Q2FsbEZy
YW1lKHRoaXMuY2FsbFNpdGVTdGFja1RyYWNlWzBdKTsKKyAgICAgICAgcmV0dXJuIGRlZmF1bHRW
YWx1ZTsKICAgICB9LAogCiAgICAgLyoqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL3RpbWVsaW5lUGFuZWwuY3NzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC90aW1lbGluZVBhbmVsLmNzcwppbmRleCBmNTM4MWJjYzQ3YTQ3M2Q3ZWI5
MGYwMWY1ZTljMTIzYTZlZmM3ODI0Li4zYjdlZTZjMzRlYWE2NGQyZDMxYzdhMjliODQzZmIxNjQ1
MjQ2MzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3Rp
bWVsaW5lUGFuZWwuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
dGltZWxpbmVQYW5lbC5jc3MKQEAgLTI3MSw2ICsyNzEsMTAgQEAKICAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpOwogfQogCisudGltZWxpbmUtdHJlZS1pdGVtLndhcm5p
bmcgeworICAgIGNvbG9yOiByZ2IoMjIwLCAyMCwgMjApOworfQorCiAudGltZWxpbmUtdHJlZS1p
dGVtIC5kYXRhLmRpbW1lZCB7CiAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRleCA0YzQ5NWZkNWE1MzgxYzkxYzY0NDQyZDIxNzkx
YzRjMmQ1ZmFmNmIyLi5iZGIzZTg1ZjYzMTMwYWFhZjI5MDE4ODcwOGZlYmQ4NGUxNDI4NTljIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCkBAIC0yMDkwLDcgKzIwOTAsNyBAQCB2b2lkIEZy
YW1lVmlldzo6c2NoZWR1bGVSZWxheW91dCgpCiAgICAgICAgIHJldHVybjsKICAgICBpZiAoIW1f
ZnJhbWUtPmRvY3VtZW50KCktPnNob3VsZFNjaGVkdWxlTGF5b3V0KCkpCiAgICAgICAgIHJldHVy
bjsKLQorICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkSW52YWxpZGF0ZUxheW91dCht
X2ZyYW1lLmdldCgpKTsKICAgICAvLyBXaGVuIGZyYW1lIGZsYXR0ZW5pbmcgaXMgZW5hYmxlZCwg
dGhlIGNvbnRlbnRzIG9mIHRoZSBmcmFtZSBjb3VsZCBhZmZlY3QgdGhlIGxheW91dCBvZiB0aGUg
cGFyZW50IGZyYW1lcy4KICAgICAvLyBBbHNvIGludmFsaWRhdGUgcGFyZW50IGZyYW1lIHN0YXJ0
aW5nIGZyb20gdGhlIG93bmVyIGVsZW1lbnQgb2YgdGhpcyBmcmFtZS4KICAgICBpZiAobV9mcmFt
ZS0+b3duZXJSZW5kZXJlcigpICYmIGlzSW5DaGlsZEZyYW1lV2l0aEZyYW1lRmxhdHRlbmluZygp
KQpAQCAtMjE1Miw2ICsyMTUyLDcgQEAgdm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlUmVsYXlvdXRP
ZlN1YnRyZWUoUmVuZGVyT2JqZWN0KiByZWxheW91dFJvb3QpCiAgICAgICAgICAgICB9CiAgICAg
ICAgIH0KICAgICB9IGVsc2UgaWYgKG1fbGF5b3V0U2NoZWR1bGluZ0VuYWJsZWQpIHsKKyAgICAg
ICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRJbnZhbGlkYXRlTGF5b3V0KG1fZnJhbWUu
Z2V0KCkpOwogICAgICAgICBpbnQgZGVsYXkgPSBtX2ZyYW1lLT5kb2N1bWVudCgpLT5taW5pbXVt
TGF5b3V0RGVsYXkoKTsKICAgICAgICAgbV9sYXlvdXRSb290ID0gcmVsYXlvdXRSb290OwogICAg
ICAgICBBU1NFUlQoIW1fbGF5b3V0Um9vdC0+Y29udGFpbmVyKCkgfHwgIW1fbGF5b3V0Um9vdC0+
Y29udGFpbmVyKCktPm5lZWRzTGF5b3V0KCkpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDBkN2NlZjZjYzUyNGJiYWJhNGRk
MTc0ZGZmM2VhNGFjN2Y2NWIwNmEuLjNmYmJlNTczZDFjMjhjNDZjNDdjZWMyNmQ4OTFjYTMyNDQz
MWIyZmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wOC0yNSAgQW5kcmV5IEtvc3lha292
ICA8Y2FzZXFAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IGRpc3BsYXkg
Y2F1c2UgZm9yIHN0eWxlIHJlY2FsY3VsYXRpb24gYW5kIGxheW91dCBvbiBUaW1lbGluZQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTUwMDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAtIGFkZGVkIG5ldyBl
dmVudHMgKFNjaGVkdWxlU3R5bGVSZWNhbGN1bGF0aW9uIGFuZCBJbnZsaWRhdGVMYXlvdXQpCisg
ICAgICAgIC0gcmViYXNlbGluZWQgYSB0ZXN0IGR1ZSB0byBhIG5ldyBldmVudDsKKworICAgICAg
ICAqIGluc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1lbnVtLXN0YWJpbGl0eS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLXNjcmlwdC10YWctMS1l
eHBlY3RlZC50eHQ6CisKIDIwMTItMDgtMjUgIE1pY2hlbGFuZ2VsbyBEZSBTaW1vbmUgIDxtaWNo
ZWxhbmdlbG9Ad2Via2l0Lm9yZz4KIAogICAgICAgICBbQ3Jhc2hdIE51bGwgcG9pbnRlciBpbiBD
U1NQYXJzZXI6OnBhcnNlTWl4RnVuY3Rpb24oKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLWVudW0tc3RhYmlsaXR5LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci90aW1lbGluZS90aW1lbGluZS1lbnVtLXN0YWJpbGl0eS1leHBl
Y3RlZC50eHQKaW5kZXggNGIwZmI0ZjgxOGYzNGQwOTFlOTFmNzBjNmVmN2Y5Njk4YTMyOTAzMC4u
ZGIwYmFkZjBiNDIxYWMwZGRmZGE5ZTFmMjlhYWJkYTllMDRhMjU0NSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLWVudW0tc3RhYmlsaXR5LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtZW51
bS1zdGFiaWxpdHktZXhwZWN0ZWQudHh0CkBAIC03LDggKzcsMTAgQEAgQXBwbGljYXRpb25zIG91
dHNpZGUgb2YgV2ViS2l0IGRlcGVuZCBvbiB0aGUgc3RhYmlsaXR5IG9mIHRoZSBtYXBwaW5nIG9m
IHRoZXNlIHQKICAgICBQcm9ncmFtIDogIlByb2dyYW0iCiAgICAgRXZlbnREaXNwYXRjaCA6ICJF
dmVudERpc3BhdGNoIgogICAgIEJlZ2luRnJhbWUgOiAiQmVnaW5GcmFtZSIKLSAgICBMYXlvdXQg
OiAiTGF5b3V0IgorICAgIFNjaGVkdWxlU3R5bGVSZWNhbGN1bGF0aW9uIDogIlNjaGVkdWxlU3R5
bGVSZWNhbGN1bGF0aW9uIgogICAgIFJlY2FsY3VsYXRlU3R5bGVzIDogIlJlY2FsY3VsYXRlU3R5
bGVzIgorICAgIEludmFsaWRhdGVMYXlvdXQgOiAiSW52YWxpZGF0ZUxheW91dCIKKyAgICBMYXlv
dXQgOiAiTGF5b3V0IgogICAgIFBhaW50IDogIlBhaW50IgogICAgIERlY29kZUltYWdlIDogIkRl
Y29kZUltYWdlIgogICAgIFJlc2l6ZUltYWdlIDogIlJlc2l6ZUltYWdlIgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL3RpbWVsaW5lL3RpbWVsaW5lLXNjcmlwdC10YWctMS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtc2NyaXB0
LXRhZy0xLWV4cGVjdGVkLnR4dAppbmRleCBiZjE2NzRlNGQwMTcwZDM5YTNiYjFkZjgyZTRlNWU0
OGZlOTZjODRlLi5jODZiMzJhYzJjYWM3MjNkNTAyNDM2NDk3OWRmNzFlMjAwYWQyZTY4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGltZWxpbmUtc2NyaXB0LXRh
Zy0xLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdGltZWxpbmUvdGlt
ZWxpbmUtc2NyaXB0LXRhZy0xLWV4cGVjdGVkLnR4dApAQCAtMyw5ICszLDExIEBAIFRlc3RzIHRo
ZSBUaW1lbGluZSBBUEkgaW5zdHJ1bWVudGF0aW9uIG9mIGFuIEhUTUwgc2NyaXB0IHRhZy4KIAog
CiBQYXJzZUhUTUwKKy0tLS0+IEludmFsaWRhdGVMYXlvdXQKIFBhcnNlSFRNTAogLS0tLT4gRXZh
bHVhdGVTY3JpcHQKIC0tLS0tLS0tPiBUaW1lU3RhbXAgOiBTQ1JJUFQgVEFHCistLS0tPiBJbnZh
bGlkYXRlTGF5b3V0CiBFdmFsdWF0ZVNjcmlwdCBQcm9wZXJ0aWVzOgogewogICAgIHN0YXJ0VGlt
ZSA6IDxudW1iZXI+Cg==
</data>
<flag name="review"
          id="171146"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>