<?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>21755</bug_id>
          
          <creation_ts>2008-10-20 10:25:10 -0700</creation_ts>
          <short_desc>Resources panel flashes and resorts resources and graph refreshes when loading a page</short_desc>
          <delta_ts>2008-10-20 21:54:49 -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="Timothy Hatcher">timothy</reporter>
          <assigned_to name="Timothy Hatcher">timothy</assigned_to>
          <cc>aroben</cc>
    
    <cc>kmccullough</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>96016</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-10-20 10:25:10 -0700</bug_when>
    <thetext>The Resources panel is really flashy and does to many things visually when loading a page. The updates to the graph should be made atomically to keep it smooth and not distracting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96023</commentid>
    <comment_count>1</comment_count>
      <attachid>24526</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-10-20 10:53:36 -0700</bug_when>
    <thetext>Created attachment 24526
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>96061</commentid>
    <comment_count>2</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-10-20 21:54:49 -0700</bug_when>
    <thetext>Fixed in r37741.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>24526</attachid>
            <date>2008-10-20 10:53:36 -0700</date>
            <delta_ts>2008-10-20 11:59:09 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>0001--Make-the-Resource-panel-perform-graph-update.patch</filename>
            <type>text/plain</type>
            <size>28675</size>
            <attacher name="Timothy Hatcher">timothy</attacher>
            
              <data encoding="base64">RnJvbSBhZmJkOGFiNGY0NmQ4NDFiMDE1ZGIzMDI3MzFhMTQ4NTRkZjVhZWU1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUaW1vdGh5IEhhdGNoZXIgPHRpbW90aHlAYXBwbGUuY29tPgpE
YXRlOiBNb24sIDIwIE9jdCAyMDA4IDEwOjUzOjA1IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gICAg
ICAgICBNYWtlIHRoZSBSZXNvdXJjZSBwYW5lbCBwZXJmb3JtIGdyYXBoIHVwZGF0ZXMgYXRvbWlj
YWxseSwgc28gd2hlbiByZXNvdXJjZXMKICAgICAgICAgYXJlIGFkZGVkIHRoZSBncmFwaCBhbmQg
c3VtbWFyeSBncmFwaCB1cGRhdGUgYXQgdGhlIHNhbWUgdGltZS4KCiAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNzU1CgogICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2Uu
anM6CiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuZ2V0IHN0YXJ0VGlt
ZSk6IFJldHVybiAtMSBpZiB0aGUgX3N0YXJ0VGltZQogICAgICAgIHByb3BlcnR5IGlzIHVuZGVm
aW5lZCwgbnVsbCBvciAwLiBUaGlzIGFsbG93cyBjYWxsZXJzIHRvIGNoZWNrIGZvciAtMSBhbmQg
bm90CiAgICAgICAgdGhlIG90aGVyIHZhbHVlcyB3aGVuIHRoZXJlIGlzIG5vIHN0YXJ0VGltZSB5
ZXQuCiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuZ2V0IHJlc3BvbnNl
UmVjZWl2ZWRUaW1lKTogRGl0dG8uCiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90
b3R5cGUuZ2V0IGVuZFRpbWUpOiBEaXR0by4KICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNl
LnByb3RvdHlwZS5nZXQgZHVyYXRpb24pOiBSZW1vdmUgYW4gZXh0cmEgZW1wdHkgbGluZS4KICAg
ICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlLnByb3RvdHlwZS5nZXQgbGF0ZW5jeSk6IERpdHRv
LgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlLmdldCBjb250ZW50TGVu
Z3RoKTogUmV0dXJuIDAgaWYgdGhlIF9kdXJhdGlvbgogICAgICAgIHByb3BlcnR5IGlzIHVuZGVm
aW5lZCBvciBudWxsLiBUaGlzIGFsbG93cyBjYWxsZXJzIHRvIGFsd2F5cyBhc3N1bWUgYSBudW1i
ZXIuCiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuZ2V0IGV4cGVjdGVk
Q29udGVudExlbmd0aCk6IERpdHRvLgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJv
dG90eXBlLmdldCBlcnJvcnMpOiBTaW1wbGlmeSB0aGUgY2FzZSB3aGVyZSB0aGVyZSBpcwogICAg
ICAgIG5vIF9lcnJvcnMgcHJvcGVydHkgeWV0LgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2UucHJvdG90eXBlLnNldCBlcnJvcnMpOiBSZW1vdmUgdGhlIGNoZWNrIGlmIHRoZSBuZXcgdmFs
dWUKICAgICAgICBpZiB0aGUgc2FtZSBhcyB0aGUgcHJldmlvdXMgdmFsdWUsIHNpbmNlIHRoZXJl
IGlzIG5vIHdvcmsgdG8gZ3VhcmQuCiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90
b3R5cGUuZ2V0IHdhcm5pbmdzKTogU2ltcGxpZnkgdGhlIGNhc2Ugd2hlcmUgdGhlcmUgaXMKICAg
ICAgICBubyBfd2FybmluZ3MgcHJvcGVydHkgeWV0LgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVz
b3VyY2UucHJvdG90eXBlLnNldCB3YXJuaW5ncyk6IFJlbW92ZSB0aGUgY2hlY2sgaWYgdGhlIG5l
dyB2YWx1ZQogICAgICAgIGlmIHRoZSBzYW1lIGFzIHRoZSBwcmV2aW91cyB2YWx1ZSwgc2luY2Ug
dGhlcmUgaXMgbm8gd29yayB0byBndWFyZC4KICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNl
LkNvbXBhcmVCeVJlc3BvbnNlUmVjZWl2ZWRUaW1lKTogQWRkIGNhc2VzIGZvciB3aGVuIHRoZQog
ICAgICAgIHJlc3BvbnNlUmVjZWl2ZWRUaW1lIGlzIC0xLgogICAgICAgIChXZWJJbnNwZWN0b3Iu
UmVzb3VyY2UuQ29tcGFyZUJ5RW5kVGltZSk6IEFkZCBjYXNlcyBmb3Igd2hlbiB0aGUgZW5kVGlt
ZSBpcyAtMS4KICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanM6
CiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUuZ2V0IHNlYXJj
aGFibGVWaWV3cyk6IElmIGEgcmVzb3VyY2UgZG9lcyBub3QKICAgICAgICBoYXZlIGEgX3Jlc291
cmNlc1RyZWVFbGVtZW50IHlldCwgZXhjbHVkZSBpdCBmcm9tIHRoZSBzZWFyY2hhYmxlIHZpZXdz
LgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLnNldCBjYWxj
dWxhdG9yKTogU2V0IF9zdGFsZVJlc291cmNlIHRvIF9yZXNvdXJjZXMKICAgICAgICBhbmQgY2Fs
bCByZWZyZXNoIHRvIHJlZnJlc2ggdGhlIGVudGlyZSBncmFwaC4KICAgICAgICAoV2ViSW5zcGVj
dG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5zZXQgbmVlZHNSZWZyZXNoKTogU2V0IGEgdGlt
ZW91dCBpZiB0aGUgcGFuZWwKICAgICAgICBpcyB2aXNpYmxlIHRoYXQgY2FsbHMgcmVmcmVzaC4K
ICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5yZWZyZXNoKTog
Q3JlYXRlIHRoZSByZXNvdXJjZSB0cmVlIGVsZW1lbnQgYW5kCiAgICAgICAgZ3JhcGggZm9yIGEg
cmVzb3VyY2UgaWYgaXQgaGFzbid0IGJlZW4gY3JlYXRlZCB5ZXQuIElmIHRoZSBib3VuZGFyaWVz
IGNoYW5nZWQgZHVyaW5nCiAgICAgICAgdGhlIGZpcnN0IHN0YWxlIHJlc291cmNlIHBhc3MsIGRv
IGEgZnVsbCBwYXNzIG9mIGFsbCByZXNvdXJjZXMgd2hlbiB1cGRhdGluZyB0aGUgZ3JhcGhzLgog
ICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLnJlc2V0KTogUmVt
b3ZlIHRoZSBsZWdlbmQgaXRlbXMuCiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5l
bC5wcm90b3R5cGUuYWRkUmVzb3VyY2UpOiBEb24ndCBjcmVhdGUgdGhlIHRyZWUgZWxlbWVudCBh
bmQKICAgICAgICBncmFwaCwgdGhlc2UgYXJlIG5vdyBjcmVhdGVkIGR1cmluZyB0aGUgZmlyc3Qg
cmVmcmVzaC4KICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5y
ZW1vdmVSZXNvdXJjZSk6IE51bGwgY2hlY2sgX3Jlc291cmNlc1RyZWVFbGVtZW50LgogICAgICAg
IChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLmFkZE1lc3NhZ2VUb1Jlc291
cmNlKTogRGl0dG8uCiAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5
cGUuY2xlYXJNZXNzYWdlcyk6IERpdHRvLgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2Vz
UGFuZWwucHJvdG90eXBlLnJlZnJlc2hSZXNvdXJjZSk6IFJlbW92ZSBtb3N0IG9mIHRoZSB3b3Jr
LCBqdXN0CiAgICAgICAgYWRkIHRoZSByZXNvdXJjZSB0byB0aGUgX3N0YWxlUmVzb3VyY2VzIGFu
ZCBzZXQgbmVlZHNSZWZyZXNoLgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwu
cHJvdG90eXBlLnJlY3JlYXRlVmlld0ZvclJlc291cmNlSWZOZWVkZWQpOiBOdWxsIGNoZWNrCiAg
ICAgICAgX3Jlc291cmNlc1RyZWVFbGVtZW50LgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2VzUGFuZWwucHJvdG90eXBlLl9zb3J0UmVzb3VyY2VzSWZOZWVkZWQpOiBSZW1vdmUgY29kZSB0
byBjbGVhcgogICAgICAgIHRoZSB0aW1lb3V0IHVzZWQgYnkgdGhlIGRlbGV0ZWQgX3NvcnRSZXNv
dXJjZXNTb29uSWZOZWVkZWQuIFJlbW92ZSBjYWxsIHRvIHJlbW92ZUNoaWxkCiAgICAgICAgc2lu
Y2UgdGhlIGluc2VydEJlZm9yZSBjYWxsIHdpbGwgZG8gaXQgaWYgbmVlZGVkLgogICAgICAgIChX
ZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLl91cGRhdGVHcmFwaERpdmlkZXJz
SWZOZWVkZWQpOiBSZW1vdmUgY29kZSB0bwogICAgICAgIGNsZWFyIHRoZSB0aW1lb3V0IHVzZWQg
YnkgdGhlIGRlbGV0ZWQgX3VwZGF0ZUdyYXBoRGl2aWRlcnNTb29uSWZOZWVkZWQuCiAgICAgICAg
KFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUuX3VwZGF0ZVN1bW1hcnlHcmFw
aCk6IFJlbW92ZSBjb2RlIHRvIGNsZWFyIHRoZQogICAgICAgIHRpbWVvdXQgdXNlZCBieSB0aGUg
ZGVsZXRlZCBfdXBkYXRlU3VtbWFyeUdyYXBoU29vbi4gTm8gbmVlZCB0byByZW1vdmUgdGhlIHRv
dGFsTGVnZW5kTGFiZWwsCiAgICAgICAgc2luY2UgYWxsIHRoZSBsZWdlbmQgaXRlbXMgYXJlIHJl
bW92ZWQgaW4gb25lIHBhc3MgcmlnaHQgYmVmb3JlLgogICAgICAgIChXZWJJbnNwZWN0b3IuUmVz
b3VyY2VzUGFuZWwucHJvdG90eXBlLl9jaGFuZ2VTb3J0aW5nRnVuY3Rpb24pOiBTZXQgdGhlIHNv
cnRpbmdGdW5jdGlvbgogICAgICAgIGJlZm9yZSB0aGUgY2FsY3VsYXRvciBzbyB0aGUgY29ycmVj
dCBzb3J0aW5nRnVuY3Rpb24gaXMgdGhlcmUgd2hlbiBhIHJlZnJlc2ggaGFwcGVucy4KICAgICAg
ICAoV2ViSW5zcGVjdG9yLlJlc291cmNlVGltZUNhbGN1bGF0b3IucHJvdG90eXBlLmNvbXB1dGVC
YXJHcmFwaFBlcmNlbnRhZ2VzKTogU2V0IHN0YXJ0IHRvIDAKICAgICAgICB3aGVuIHRoZSBzdGFy
dFRpbWUgaXMgLTEsIHNpbmNlIHRoYXQgbG9va3MgYmVzdCB2aXN1YWxseS4gQWxzbyBzZXQgbWlk
ZGxlIGFuZCBlbmQKICAgICAgICB0byB0aGUgc3RhcnQgYW5kIG1pZGRsZSAocmVzcGVjdGZ1bGx5
KSB3aGVuIHN0YXJ0QXRaZXJvLiBUaGlzIGxvb2tzIGJlc3QgdmlzdWFsbHkuCiAgICAgICAgKFdl
Ykluc3BlY3Rvci5SZXNvdXJjZUdyYXBoKTogU3RhcnQgdGhlIGdyYXBoIGFzIGhpZGRlbiB1bnRp
bCB0aGUgZmlyc3QgcmVmcmVzaC4KICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlR3JhcGgu
cHJvdG90eXBlLnJlZnJlc2gpOiBSZW1vdmUgdGhlIGhpZGRlbiBjbGFzcy4KLS0tCiBXZWJDb3Jl
L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDY3ICsrKysrKysrCiBX
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2UuanMgICAgICAgfCAgIDM0ICsrLS0t
CiBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanMgfCAgMjE3ICsr
KysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMTUxIGluc2VydGlvbnMo
KyksIDE2NyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IDFlY2YxMTEuLjQ0MGFlMzMgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzAgQEAKKzIw
MDgtMTAtMjAgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgorCisgICAgICAg
IE1ha2UgdGhlIFJlc291cmNlIHBhbmVsIHBlcmZvcm0gZ3JhcGggdXBkYXRlcyBhdG9taWNhbGx5
LCBzbyB3aGVuIHJlc291cmNlcworICAgICAgICBhcmUgYWRkZWQgdGhlIGdyYXBoIGFuZCBzdW1t
YXJ5IGdyYXBoIHVwZGF0ZSBhdCB0aGUgc2FtZSB0aW1lLgorCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTc1NQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJj
ZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuZ2V0IHN0YXJ0
VGltZSk6IFJldHVybiAtMSBpZiB0aGUgX3N0YXJ0VGltZQorICAgICAgICBwcm9wZXJ0eSBpcyB1
bmRlZmluZWQsIG51bGwgb3IgMC4gVGhpcyBhbGxvd3MgY2FsbGVycyB0byBjaGVjayBmb3IgLTEg
YW5kIG5vdAorICAgICAgICB0aGUgb3RoZXIgdmFsdWVzIHdoZW4gdGhlcmUgaXMgbm8gc3RhcnRU
aW1lIHlldC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUuZ2V0IHJl
c3BvbnNlUmVjZWl2ZWRUaW1lKTogRGl0dG8uCisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2UucHJvdG90eXBlLmdldCBlbmRUaW1lKTogRGl0dG8uCisgICAgICAgIChXZWJJbnNwZWN0b3Iu
UmVzb3VyY2UucHJvdG90eXBlLmdldCBkdXJhdGlvbik6IFJlbW92ZSBhbiBleHRyYSBlbXB0eSBs
aW5lLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlLnByb3RvdHlwZS5nZXQgbGF0ZW5j
eSk6IERpdHRvLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlLnByb3RvdHlwZS5nZXQg
Y29udGVudExlbmd0aCk6IFJldHVybiAwIGlmIHRoZSBfZHVyYXRpb24KKyAgICAgICAgcHJvcGVy
dHkgaXMgdW5kZWZpbmVkIG9yIG51bGwuIFRoaXMgYWxsb3dzIGNhbGxlcnMgdG8gYWx3YXlzIGFz
c3VtZSBhIG51bWJlci4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUu
Z2V0IGV4cGVjdGVkQ29udGVudExlbmd0aCk6IERpdHRvLgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlJlc291cmNlLnByb3RvdHlwZS5nZXQgZXJyb3JzKTogU2ltcGxpZnkgdGhlIGNhc2Ugd2hlcmUg
dGhlcmUgaXMKKyAgICAgICAgbm8gX2Vycm9ycyBwcm9wZXJ0eSB5ZXQuCisgICAgICAgIChXZWJJ
bnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlLnNldCBlcnJvcnMpOiBSZW1vdmUgdGhlIGNoZWNr
IGlmIHRoZSBuZXcgdmFsdWUKKyAgICAgICAgaWYgdGhlIHNhbWUgYXMgdGhlIHByZXZpb3VzIHZh
bHVlLCBzaW5jZSB0aGVyZSBpcyBubyB3b3JrIHRvIGd1YXJkLgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlJlc291cmNlLnByb3RvdHlwZS5nZXQgd2FybmluZ3MpOiBTaW1wbGlmeSB0aGUgY2FzZSB3
aGVyZSB0aGVyZSBpcworICAgICAgICBubyBfd2FybmluZ3MgcHJvcGVydHkgeWV0LgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlJlc291cmNlLnByb3RvdHlwZS5zZXQgd2FybmluZ3MpOiBSZW1vdmUg
dGhlIGNoZWNrIGlmIHRoZSBuZXcgdmFsdWUKKyAgICAgICAgaWYgdGhlIHNhbWUgYXMgdGhlIHBy
ZXZpb3VzIHZhbHVlLCBzaW5jZSB0aGVyZSBpcyBubyB3b3JrIHRvIGd1YXJkLgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlJlc291cmNlLkNvbXBhcmVCeVJlc3BvbnNlUmVjZWl2ZWRUaW1lKTogQWRk
IGNhc2VzIGZvciB3aGVuIHRoZQorICAgICAgICByZXNwb25zZVJlY2VpdmVkVGltZSBpcyAtMS4K
KyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZS5Db21wYXJlQnlFbmRUaW1lKTogQWRkIGNh
c2VzIGZvciB3aGVuIHRoZSBlbmRUaW1lIGlzIC0xLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvUmVzb3VyY2VzUGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2Vz
UGFuZWwucHJvdG90eXBlLmdldCBzZWFyY2hhYmxlVmlld3MpOiBJZiBhIHJlc291cmNlIGRvZXMg
bm90CisgICAgICAgIGhhdmUgYSBfcmVzb3VyY2VzVHJlZUVsZW1lbnQgeWV0LCBleGNsdWRlIGl0
IGZyb20gdGhlIHNlYXJjaGFibGUgdmlld3MuCisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2VzUGFuZWwucHJvdG90eXBlLnNldCBjYWxjdWxhdG9yKTogU2V0IF9zdGFsZVJlc291cmNlIHRv
IF9yZXNvdXJjZXMKKyAgICAgICAgYW5kIGNhbGwgcmVmcmVzaCB0byByZWZyZXNoIHRoZSBlbnRp
cmUgZ3JhcGguCisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBl
LnNldCBuZWVkc1JlZnJlc2gpOiBTZXQgYSB0aW1lb3V0IGlmIHRoZSBwYW5lbAorICAgICAgICBp
cyB2aXNpYmxlIHRoYXQgY2FsbHMgcmVmcmVzaC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNv
dXJjZXNQYW5lbC5wcm90b3R5cGUucmVmcmVzaCk6IENyZWF0ZSB0aGUgcmVzb3VyY2UgdHJlZSBl
bGVtZW50IGFuZAorICAgICAgICBncmFwaCBmb3IgYSByZXNvdXJjZSBpZiBpdCBoYXNuJ3QgYmVl
biBjcmVhdGVkIHlldC4gSWYgdGhlIGJvdW5kYXJpZXMgY2hhbmdlZCBkdXJpbmcKKyAgICAgICAg
dGhlIGZpcnN0IHN0YWxlIHJlc291cmNlIHBhc3MsIGRvIGEgZnVsbCBwYXNzIG9mIGFsbCByZXNv
dXJjZXMgd2hlbiB1cGRhdGluZyB0aGUgZ3JhcGhzLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJl
c291cmNlc1BhbmVsLnByb3RvdHlwZS5yZXNldCk6IFJlbW92ZSB0aGUgbGVnZW5kIGl0ZW1zLgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5hZGRSZXNvdXJj
ZSk6IERvbid0IGNyZWF0ZSB0aGUgdHJlZSBlbGVtZW50IGFuZAorICAgICAgICBncmFwaCwgdGhl
c2UgYXJlIG5vdyBjcmVhdGVkIGR1cmluZyB0aGUgZmlyc3QgcmVmcmVzaC4KKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUucmVtb3ZlUmVzb3VyY2UpOiBOdWxs
IGNoZWNrIF9yZXNvdXJjZXNUcmVlRWxlbWVudC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNv
dXJjZXNQYW5lbC5wcm90b3R5cGUuYWRkTWVzc2FnZVRvUmVzb3VyY2UpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUuY2xlYXJNZXNzYWdlcyk6
IERpdHRvLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5y
ZWZyZXNoUmVzb3VyY2UpOiBSZW1vdmUgbW9zdCBvZiB0aGUgd29yaywganVzdAorICAgICAgICBh
ZGQgdGhlIHJlc291cmNlIHRvIHRoZSBfc3RhbGVSZXNvdXJjZXMgYW5kIHNldCBuZWVkc1JlZnJl
c2guCisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLnJlY3Jl
YXRlVmlld0ZvclJlc291cmNlSWZOZWVkZWQpOiBOdWxsIGNoZWNrCisgICAgICAgIF9yZXNvdXJj
ZXNUcmVlRWxlbWVudC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90
b3R5cGUuX3NvcnRSZXNvdXJjZXNJZk5lZWRlZCk6IFJlbW92ZSBjb2RlIHRvIGNsZWFyCisgICAg
ICAgIHRoZSB0aW1lb3V0IHVzZWQgYnkgdGhlIGRlbGV0ZWQgX3NvcnRSZXNvdXJjZXNTb29uSWZO
ZWVkZWQuIFJlbW92ZSBjYWxsIHRvIHJlbW92ZUNoaWxkCisgICAgICAgIHNpbmNlIHRoZSBpbnNl
cnRCZWZvcmUgY2FsbCB3aWxsIGRvIGl0IGlmIG5lZWRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUuX3VwZGF0ZUdyYXBoRGl2aWRlcnNJZk5lZWRlZCk6
IFJlbW92ZSBjb2RlIHRvCisgICAgICAgIGNsZWFyIHRoZSB0aW1lb3V0IHVzZWQgYnkgdGhlIGRl
bGV0ZWQgX3VwZGF0ZUdyYXBoRGl2aWRlcnNTb29uSWZOZWVkZWQuCisgICAgICAgIChXZWJJbnNw
ZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLl91cGRhdGVTdW1tYXJ5R3JhcGgpOiBSZW1v
dmUgY29kZSB0byBjbGVhciB0aGUKKyAgICAgICAgdGltZW91dCB1c2VkIGJ5IHRoZSBkZWxldGVk
IF91cGRhdGVTdW1tYXJ5R3JhcGhTb29uLiBObyBuZWVkIHRvIHJlbW92ZSB0aGUgdG90YWxMZWdl
bmRMYWJlbCwKKyAgICAgICAgc2luY2UgYWxsIHRoZSBsZWdlbmQgaXRlbXMgYXJlIHJlbW92ZWQg
aW4gb25lIHBhc3MgcmlnaHQgYmVmb3JlLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNl
c1BhbmVsLnByb3RvdHlwZS5fY2hhbmdlU29ydGluZ0Z1bmN0aW9uKTogU2V0IHRoZSBzb3J0aW5n
RnVuY3Rpb24KKyAgICAgICAgYmVmb3JlIHRoZSBjYWxjdWxhdG9yIHNvIHRoZSBjb3JyZWN0IHNv
cnRpbmdGdW5jdGlvbiBpcyB0aGVyZSB3aGVuIGEgcmVmcmVzaCBoYXBwZW5zLgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlJlc291cmNlVGltZUNhbGN1bGF0b3IucHJvdG90eXBlLmNvbXB1dGVCYXJH
cmFwaFBlcmNlbnRhZ2VzKTogU2V0IHN0YXJ0IHRvIDAKKyAgICAgICAgd2hlbiB0aGUgc3RhcnRU
aW1lIGlzIC0xLCBzaW5jZSB0aGF0IGxvb2tzIGJlc3QgdmlzdWFsbHkuIEFsc28gc2V0IG1pZGRs
ZSBhbmQgZW5kCisgICAgICAgIHRvIHRoZSBzdGFydCBhbmQgbWlkZGxlIChyZXNwZWN0ZnVsbHkp
IHdoZW4gc3RhcnRBdFplcm8uIFRoaXMgbG9va3MgYmVzdCB2aXN1YWxseS4KKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5SZXNvdXJjZUdyYXBoKTogU3RhcnQgdGhlIGdyYXBoIGFzIGhpZGRlbiB1bnRp
bCB0aGUgZmlyc3QgcmVmcmVzaC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZUdyYXBo
LnByb3RvdHlwZS5yZWZyZXNoKTogUmVtb3ZlIHRoZSBoaWRkZW4gY2xhc3MuCisKIDIwMDgtMTAt
MjAgIEFscCBUb2tlciAgPGFscEBudWFudGkuY29tPgogCiAgICAgICAgIFJlbW92ZSB1bnVzZWQg
aW5jbHVkZXMgb25seS4gUGFydGlhbCBHVEsrL1dpbiBidWlsZCBmaXguCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2UuanMgYi9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvUmVzb3VyY2UuanMKaW5kZXggODUyYzU3Yy4uMDU4ZjIzMiAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlLmpzCisrKyBiL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZS5qcwpAQCAtMTQ4LDcgKzE0OCw3IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZS5wcm90b3R5cGUgPSB7CiAKICAgICBnZXQgc3RhcnRUaW1lKCkKICAg
ICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9zdGFydFRpbWU7CisgICAgICAgIHJldHVybiB0aGlz
Ll9zdGFydFRpbWUgfHwgLTE7CiAgICAgfSwKIAogICAgIHNldCBzdGFydFRpbWUoeCkKQEAgLTE2
NCw3ICsxNjQsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlID0gewogCiAgICAg
Z2V0IHJlc3BvbnNlUmVjZWl2ZWRUaW1lKCkKICAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9y
ZXNwb25zZVJlY2VpdmVkVGltZTsKKyAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc3BvbnNlUmVjZWl2
ZWRUaW1lIHx8IC0xOwogICAgIH0sCiAKICAgICBzZXQgcmVzcG9uc2VSZWNlaXZlZFRpbWUoeCkK
QEAgLTE4MCw3ICsxODAsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlID0gewog
CiAgICAgZ2V0IGVuZFRpbWUoKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuX2VuZFRpbWU7
CisgICAgICAgIHJldHVybiB0aGlzLl9lbmRUaW1lIHx8IC0xOwogICAgIH0sCiAKICAgICBzZXQg
ZW5kVGltZSh4KQpAQCAtMTk4LDcgKzE5OCw2IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZS5wcm90
b3R5cGUgPSB7CiAgICAgewogICAgICAgICBpZiAodGhpcy5fZW5kVGltZSA9PT0gLTEgfHwgdGhp
cy5fc3RhcnRUaW1lID09PSAtMSkKICAgICAgICAgICAgIHJldHVybiAtMTsKLQogICAgICAgICBy
ZXR1cm4gdGhpcy5fZW5kVGltZSAtIHRoaXMuX3N0YXJ0VGltZTsKICAgICB9LAogCkBAIC0yMDYs
MTMgKzIwNSwxMiBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlID0gewogICAgIHsK
ICAgICAgICAgaWYgKHRoaXMuX3Jlc3BvbnNlUmVjZWl2ZWRUaW1lID09PSAtMSB8fCB0aGlzLl9z
dGFydFRpbWUgPT09IC0xKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotCiAgICAgICAgIHJldHVy
biB0aGlzLl9yZXNwb25zZVJlY2VpdmVkVGltZSAtIHRoaXMuX3N0YXJ0VGltZTsKICAgICB9LAog
CiAgICAgZ2V0IGNvbnRlbnRMZW5ndGgoKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuX2Nv
bnRlbnRMZW5ndGg7CisgICAgICAgIHJldHVybiB0aGlzLl9jb250ZW50TGVuZ3RoIHx8IDA7CiAg
ICAgfSwKIAogICAgIHNldCBjb250ZW50TGVuZ3RoKHgpCkBAIC0yMjgsNyArMjI2LDcgQEAgV2Vi
SW5zcGVjdG9yLlJlc291cmNlLnByb3RvdHlwZSA9IHsKIAogICAgIGdldCBleHBlY3RlZENvbnRl
bnRMZW5ndGgoKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuX2V4cGVjdGVkQ29udGVudExl
bmd0aDsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2V4cGVjdGVkQ29udGVudExlbmd0aCB8fCAwOwog
ICAgIH0sCiAKICAgICBzZXQgZXhwZWN0ZWRDb250ZW50TGVuZ3RoKHgpCkBAIC00NTUsMzEgKzQ1
MywyMSBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlID0gewogCiAgICAgZ2V0IGVy
cm9ycygpCiAgICAgewotICAgICAgICBpZiAoISgiX2Vycm9ycyIgaW4gdGhpcykpCi0gICAgICAg
ICAgICB0aGlzLl9lcnJvcnMgPSAwOwotICAgICAgICByZXR1cm4gdGhpcy5fZXJyb3JzOworICAg
ICAgICByZXR1cm4gdGhpcy5fZXJyb3JzIHx8IDA7CiAgICAgfSwKIAogICAgIHNldCBlcnJvcnMo
eCkKICAgICB7Ci0gICAgICAgIGlmICh0aGlzLl9lcnJvcnMgPT09IHgpCi0gICAgICAgICAgICBy
ZXR1cm47Ci0KICAgICAgICAgdGhpcy5fZXJyb3JzID0geDsKICAgICB9LAogCiAgICAgZ2V0IHdh
cm5pbmdzKCkKICAgICB7Ci0gICAgICAgIGlmICghKCJfd2FybmluZ3MiIGluIHRoaXMpKQotICAg
ICAgICAgICAgdGhpcy5fd2FybmluZ3MgPSAwOwotICAgICAgICByZXR1cm4gdGhpcy5fd2Fybmlu
Z3M7CisgICAgICAgIHJldHVybiB0aGlzLl93YXJuaW5ncyB8fCAwOwogICAgIH0sCiAKICAgICBz
ZXQgd2FybmluZ3MoeCkKICAgICB7Ci0gICAgICAgIGlmICh0aGlzLl93YXJuaW5ncyA9PT0geCkK
LSAgICAgICAgICAgIHJldHVybjsKLQogICAgICAgICB0aGlzLl93YXJuaW5ncyA9IHg7CiAgICAg
fSwKIApAQCAtNTg1LDYgKzU3MywxMCBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UuQ29tcGFyZUJ5
U3RhcnRUaW1lID0gZnVuY3Rpb24oYSwgYikKIAogV2ViSW5zcGVjdG9yLlJlc291cmNlLkNvbXBh
cmVCeVJlc3BvbnNlUmVjZWl2ZWRUaW1lID0gZnVuY3Rpb24oYSwgYikKIHsKKyAgICBpZiAoYS5y
ZXNwb25zZVJlY2VpdmVkVGltZSA9PT0gLTEgJiYgYi5yZXNwb25zZVJlY2VpdmVkVGltZSAhPT0g
LTEpCisgICAgICAgIHJldHVybiAxOworICAgIGlmIChhLnJlc3BvbnNlUmVjZWl2ZWRUaW1lICE9
PSAtMSAmJiBiLnJlc3BvbnNlUmVjZWl2ZWRUaW1lID09PSAtMSkKKyAgICAgICAgcmV0dXJuIC0x
OwogICAgIGlmIChhLnJlc3BvbnNlUmVjZWl2ZWRUaW1lIDwgYi5yZXNwb25zZVJlY2VpdmVkVGlt
ZSkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIGlmIChhLnJlc3BvbnNlUmVjZWl2ZWRUaW1lID4g
Yi5yZXNwb25zZVJlY2VpdmVkVGltZSkKQEAgLTU5NCw2ICs1ODYsMTAgQEAgV2ViSW5zcGVjdG9y
LlJlc291cmNlLkNvbXBhcmVCeVJlc3BvbnNlUmVjZWl2ZWRUaW1lID0gZnVuY3Rpb24oYSwgYikK
IAogV2ViSW5zcGVjdG9yLlJlc291cmNlLkNvbXBhcmVCeUVuZFRpbWUgPSBmdW5jdGlvbihhLCBi
KQogeworICAgIGlmIChhLmVuZFRpbWUgPT09IC0xICYmIGIuZW5kVGltZSAhPT0gLTEpCisgICAg
ICAgIHJldHVybiAxOworICAgIGlmIChhLmVuZFRpbWUgIT09IC0xICYmIGIuZW5kVGltZSA9PT0g
LTEpCisgICAgICAgIHJldHVybiAtMTsKICAgICBpZiAoYS5lbmRUaW1lIDwgYi5lbmRUaW1lKQog
ICAgICAgICByZXR1cm4gLTE7CiAgICAgaWYgKGEuZW5kVGltZSA+IGIuZW5kVGltZSkKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qcyBiL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qcwppbmRleCBlMjBlN2Vi
Li5iNDcwYmNjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3Vy
Y2VzUGFuZWwuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1Bh
bmVsLmpzCkBAIC0xNTcsNiArMTU3LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnBy
b3RvdHlwZSA9IHsKICAgICBzaG93OiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICBXZWJJbnNw
ZWN0b3IuUGFuZWwucHJvdG90eXBlLnNob3cuY2FsbCh0aGlzKTsKKwogICAgICAgICB0aGlzLl91
cGRhdGVEaXZpZGVyc0xhYmVsQmFyUG9zaXRpb24oKTsKICAgICAgICAgdGhpcy5fdXBkYXRlU2lk
ZWJhcldpZHRoKCk7CiAgICAgICAgIHRoaXMucmVmcmVzaElmTmVlZGVkKCk7CkBAIC0yMDAsNiAr
MjAxLDggQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAg
ICAgdmFyIHJlc291cmNlc0xlbmd0aCA9IHRoaXMuX3Jlc291cmNlcy5sZW5ndGg7CiAgICAgICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgcmVzb3VyY2VzTGVuZ3RoOyArK2kpIHsKICAgICAgICAgICAg
IHZhciByZXNvdXJjZSA9IHRoaXMuX3Jlc291cmNlc1tpXTsKKyAgICAgICAgICAgIGlmICghcmVz
b3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50KQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOwog
ICAgICAgICAgICAgdmFyIHJlc291cmNlVmlldyA9IHRoaXMucmVzb3VyY2VWaWV3Rm9yUmVzb3Vy
Y2UocmVzb3VyY2UpOwogICAgICAgICAgICAgaWYgKCFyZXNvdXJjZVZpZXcucGVyZm9ybVNlYXJj
aCB8fCByZXNvdXJjZVZpZXcgPT09IHZpc2libGVWaWV3KQogICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwpAQCAtMjY5LDkgKzI3Miw4IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX2NhbGN1bGF0b3IgPSB4OwogICAgICAgICB0aGlzLl9j
YWxjdWxhdG9yLnJlc2V0KCk7CiAKLSAgICAgICAgdGhpcy5fcmVmcmVzaEFsbFJlc291cmNlcyhm
YWxzZSwgdHJ1ZSk7Ci0gICAgICAgIHRoaXMuX3VwZGF0ZUdyYXBoRGl2aWRlcnNJZk5lZWRlZCh0
cnVlKTsKLSAgICAgICAgdGhpcy5fdXBkYXRlU3VtbWFyeUdyYXBoKCk7CisgICAgICAgIHRoaXMu
X3N0YWxlUmVzb3VyY2VzID0gdGhpcy5fcmVzb3VyY2VzOworICAgICAgICB0aGlzLnJlZnJlc2go
KTsKICAgICB9LAogCiAgICAgZ2V0IHNvcnRpbmdGdW5jdGlvbigpCkBAIC0yODUsMjQgKzI4Nywz
MyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0
aGlzLl9zb3J0UmVzb3VyY2VzSWZOZWVkZWQoKTsKICAgICB9LAogCi0gICAgZ2V0IG5lZWRzUmVm
cmVzaCgpIAorICAgIGdldCBuZWVkc1JlZnJlc2goKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHRo
aXMuX25lZWRzUmVmcmVzaDsgCisgICAgICAgIHJldHVybiB0aGlzLl9uZWVkc1JlZnJlc2g7CiAg
ICAgfSwKIAotICAgIHNldCBuZWVkc1JlZnJlc2goeCkgCisgICAgc2V0IG5lZWRzUmVmcmVzaCh4
KQogICAgIHsKLSAgICAgICAgaWYgKHRoaXMuX25lZWRzUmVmcmVzaCA9PT0geCkgCi0gICAgICAg
ICAgICByZXR1cm47IAotICAgICAgICB0aGlzLl9uZWVkc1JlZnJlc2ggPSB4OyAKLSAgICAgICAg
aWYgKHggJiYgdGhpcy52aXNpYmxlKSAKLSAgICAgICAgICAgIHRoaXMucmVmcmVzaCgpOyAKKyAg
ICAgICAgaWYgKHRoaXMuX25lZWRzUmVmcmVzaCA9PT0geCkKKyAgICAgICAgICAgIHJldHVybjsK
KworICAgICAgICB0aGlzLl9uZWVkc1JlZnJlc2ggPSB4OworCisgICAgICAgIGlmICh4KSB7Cisg
ICAgICAgICAgICBpZiAodGhpcy52aXNpYmxlICYmICEoIl9yZWZyZXNoVGltZW91dCIgaW4gdGhp
cykpCisgICAgICAgICAgICAgICAgdGhpcy5fcmVmcmVzaFRpbWVvdXQgPSBzZXRUaW1lb3V0KHRo
aXMucmVmcmVzaC5iaW5kKHRoaXMpLCA1MDApOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgaWYgKCJfcmVmcmVzaFRpbWVvdXQiIGluIHRoaXMpIHsKKyAgICAgICAgICAgICAgICBjbGVh
clRpbWVvdXQodGhpcy5fcmVmcmVzaFRpbWVvdXQpOworICAgICAgICAgICAgICAgIGRlbGV0ZSB0
aGlzLl9yZWZyZXNoVGltZW91dDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQogICAgIH0sCiAK
LSAgICByZWZyZXNoSWZOZWVkZWQ6IGZ1bmN0aW9uKCkgCisgICAgcmVmcmVzaElmTmVlZGVkOiBm
dW5jdGlvbigpCiAgICAgewotICAgICAgICBpZiAodGhpcy5uZWVkc1JlZnJlc2gpIAotICAgICAg
ICAgICAgdGhpcy5yZWZyZXNoKCk7IAorICAgICAgICBpZiAodGhpcy5uZWVkc1JlZnJlc2gpCisg
ICAgICAgICAgICB0aGlzLnJlZnJlc2goKTsKICAgICB9LAogCiAgICAgcmVmcmVzaDogZnVuY3Rp
b24oKQpAQCAtMzEwLDEyICszMjEsMzMgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5uZWVkc1JlZnJlc2ggPSBmYWxzZTsKIAogICAgICAg
ICB2YXIgc3RhbGVSZXNvdXJjZXNMZW5ndGggPSB0aGlzLl9zdGFsZVJlc291cmNlcy5sZW5ndGg7
CisgICAgICAgIHZhciBib3VuZGFyaWVzQ2hhbmdlZCA9IGZhbHNlOwogCi0gICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgc3RhbGVSZXNvdXJjZXNMZW5ndGg7ICsraSkKLSAgICAgICAgICAgIHRo
aXMuY2FsY3VsYXRvci51cGRhdGVCb3VuZGFyaWVzKHRoaXMuX3N0YWxlUmVzb3VyY2VzW2ldKTsK
KyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdGFsZVJlc291cmNlc0xlbmd0aDsgKytpKSB7
CisgICAgICAgICAgICB2YXIgcmVzb3VyY2UgPSB0aGlzLl9zdGFsZVJlc291cmNlc1tpXTsKKyAg
ICAgICAgICAgIGlmICghcmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50KSB7CisgICAgICAg
ICAgICAgICAgLy8gQ3JlYXRlIHRoZSByZXNvdXJjZSB0cmVlIGVsZW1lbnQgYW5kIGdyYXBoLgor
ICAgICAgICAgICAgICAgIHJlc291cmNlLl9yZXNvdXJjZXNUcmVlRWxlbWVudCA9IG5ldyBXZWJJ
bnNwZWN0b3IuUmVzb3VyY2VTaWRlYmFyVHJlZUVsZW1lbnQocmVzb3VyY2UpOworICAgICAgICAg
ICAgICAgIHJlc291cmNlLl9yZXNvdXJjZXNUcmVlRWxlbWVudC5fcmVzb3VyY2VHcmFwaCA9IG5l
dyBXZWJJbnNwZWN0b3IuUmVzb3VyY2VHcmFwaChyZXNvdXJjZSk7CisKKyAgICAgICAgICAgICAg
ICB0aGlzLnJlc291cmNlc1RyZWVFbGVtZW50LmFwcGVuZENoaWxkKHJlc291cmNlLl9yZXNvdXJj
ZXNUcmVlRWxlbWVudCk7CisgICAgICAgICAgICAgICAgdGhpcy5yZXNvdXJjZXNHcmFwaHNFbGVt
ZW50LmFwcGVuZENoaWxkKHJlc291cmNlLl9yZXNvdXJjZXNUcmVlRWxlbWVudC5fcmVzb3VyY2VH
cmFwaC5ncmFwaEVsZW1lbnQpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICByZXNvdXJj
ZS5fcmVzb3VyY2VzVHJlZUVsZW1lbnQucmVmcmVzaCgpOworCisgICAgICAgICAgICBpZiAodGhp
cy5jYWxjdWxhdG9yLnVwZGF0ZUJvdW5kYXJpZXMocmVzb3VyY2UpKQorICAgICAgICAgICAgICAg
IGJvdW5kYXJpZXNDaGFuZ2VkID0gdHJ1ZTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChib3Vu
ZGFyaWVzQ2hhbmdlZCkgeworICAgICAgICAgICAgLy8gVGhlIGJvdW5kYXJpZXMgY2hhbmdlZCwg
c28gYWxsIHJlc291cmNlIGdyYXBocyBhcmUgc3RhbGUuCisgICAgICAgICAgICB0aGlzLl9zdGFs
ZVJlc291cmNlcyA9IHRoaXMuX3Jlc291cmNlczsKKyAgICAgICAgICAgIHN0YWxlUmVzb3VyY2Vz
TGVuZ3RoID0gdGhpcy5fc3RhbGVSZXNvdXJjZXMubGVuZ3RoOworICAgICAgICB9CiAKICAgICAg
ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdGFsZVJlc291cmNlc0xlbmd0aDsgKytpKQotICAgICAg
ICAgICAgdGhpcy5yZWZyZXNoUmVzb3VyY2UodGhpcy5fc3RhbGVSZXNvdXJjZXNbaV0sIHRydWUs
IHRydWUsIHRydWUpOworICAgICAgICAgICAgdGhpcy5fc3RhbGVSZXNvdXJjZXNbaV0uX3Jlc291
cmNlc1RyZWVFbGVtZW50Ll9yZXNvdXJjZUdyYXBoLnJlZnJlc2godGhpcy5jYWxjdWxhdG9yKTsK
IAogICAgICAgICB0aGlzLl9zdGFsZVJlc291cmNlcyA9IFtdOwogCkBAIC0zNTUsNiArMzg3LDcg
QEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhp
cy5yZXNvdXJjZXNUcmVlRWxlbWVudC5yZW1vdmVDaGlsZHJlbigpOwogICAgICAgICB0aGlzLnZp
ZXdzQ29udGFpbmVyRWxlbWVudC5yZW1vdmVDaGlsZHJlbigpOwogICAgICAgICB0aGlzLnJlc291
cmNlc0dyYXBoc0VsZW1lbnQucmVtb3ZlQ2hpbGRyZW4oKTsKKyAgICAgICAgdGhpcy5sZWdlbmRF
bGVtZW50LnJlbW92ZUNoaWxkcmVuKCk7CiAKICAgICAgICAgdGhpcy5fdXBkYXRlR3JhcGhEaXZp
ZGVyc0lmTmVlZGVkKHRydWUpOwogCkBAIC0zNjQsMTcgKzM5Nyw2IEBAIFdlYkluc3BlY3Rvci5S
ZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgYWRkUmVzb3VyY2U6IGZ1bmN0aW9uKHJl
c291cmNlKQogICAgIHsKICAgICAgICAgdGhpcy5fcmVzb3VyY2VzLnB1c2gocmVzb3VyY2UpOwot
Ci0gICAgICAgIHZhciByZXNvdXJjZVRyZWVFbGVtZW50ID0gbmV3IFdlYkluc3BlY3Rvci5SZXNv
dXJjZVNpZGViYXJUcmVlRWxlbWVudChyZXNvdXJjZSk7Ci0gICAgICAgIHJlc291cmNlLl9yZXNv
dXJjZXNUcmVlRWxlbWVudCA9IHJlc291cmNlVHJlZUVsZW1lbnQ7Ci0KLSAgICAgICAgdmFyIHJl
c291cmNlR3JhcGggPSBuZXcgV2ViSW5zcGVjdG9yLlJlc291cmNlR3JhcGgocmVzb3VyY2UpOwot
ICAgICAgICByZXNvdXJjZS5fcmVzb3VyY2VzVHJlZUVsZW1lbnQuX3Jlc291cmNlR3JhcGggPSBy
ZXNvdXJjZUdyYXBoOwotCi0gICAgICAgIHRoaXMucmVzb3VyY2VzR3JhcGhzRWxlbWVudC5hcHBl
bmRDaGlsZChyZXNvdXJjZUdyYXBoLmdyYXBoRWxlbWVudCk7Ci0KLSAgICAgICAgdGhpcy5yZXNv
dXJjZXNUcmVlRWxlbWVudC5hcHBlbmRDaGlsZChyZXNvdXJjZVRyZWVFbGVtZW50KTsKLQogICAg
ICAgICB0aGlzLnJlZnJlc2hSZXNvdXJjZShyZXNvdXJjZSk7CiAgICAgfSwKIApAQCAtMzg1LDgg
KzQwNywxMCBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlID0gewogCiAg
ICAgICAgIHRoaXMuX3Jlc291cmNlcy5yZW1vdmUocmVzb3VyY2UsIHRydWUpOwogCi0gICAgICAg
IHRoaXMucmVzb3VyY2VzVHJlZUVsZW1lbnQucmVtb3ZlQ2hpbGQocmVzb3VyY2UuX3Jlc291cmNl
c1RyZWVFbGVtZW50KTsKLSAgICAgICAgdGhpcy5yZXNvdXJjZXNHcmFwaHNFbGVtZW50LnJlbW92
ZUNoaWxkKHJlc291cmNlLl9yZXNvdXJjZXNUcmVlRWxlbWVudC5fcmVzb3VyY2VHcmFwaC5ncmFw
aEVsZW1lbnQpOworICAgICAgICBpZiAocmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50KSB7
CisgICAgICAgICAgICB0aGlzLnJlc291cmNlc1RyZWVFbGVtZW50LnJlbW92ZUNoaWxkKHJlc291
cmNlLl9yZXNvdXJjZXNUcmVlRWxlbWVudCk7CisgICAgICAgICAgICB0aGlzLnJlc291cmNlc0dy
YXBoc0VsZW1lbnQucmVtb3ZlQ2hpbGQocmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50Ll9y
ZXNvdXJjZUdyYXBoLmdyYXBoRWxlbWVudCk7CisgICAgICAgIH0KIAogICAgICAgICByZXNvdXJj
ZS53YXJuaW5ncyA9IDA7CiAgICAgICAgIHJlc291cmNlLmVycm9ycyA9IDA7CkBAIC00MTEsNyAr
NDM1LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKCF0aGlzLmN1cnJlbnRRdWVy
eSkKKyAgICAgICAgaWYgKCF0aGlzLmN1cnJlbnRRdWVyeSAmJiByZXNvdXJjZS5fcmVzb3VyY2Vz
VHJlZUVsZW1lbnQpCiAgICAgICAgICAgICByZXNvdXJjZS5fcmVzb3VyY2VzVHJlZUVsZW1lbnQu
dXBkYXRlRXJyb3JzQW5kV2FybmluZ3MoKTsKIAogICAgICAgICB2YXIgdmlldyA9IHRoaXMucmVz
b3VyY2VWaWV3Rm9yUmVzb3VyY2UocmVzb3VyY2UpOwpAQCAtNDI3LDcgKzQ1MSw3IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXNvdXJj
ZS53YXJuaW5ncyA9IDA7CiAgICAgICAgICAgICByZXNvdXJjZS5lcnJvcnMgPSAwOwogCi0gICAg
ICAgICAgICBpZiAoIXRoaXMuY3VycmVudFF1ZXJ5KQorICAgICAgICAgICAgaWYgKCF0aGlzLmN1
cnJlbnRRdWVyeSAmJiByZXNvdXJjZS5fcmVzb3VyY2VzVHJlZUVsZW1lbnQpCiAgICAgICAgICAg
ICAgICAgcmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50LnVwZGF0ZUVycm9yc0FuZFdhcm5p
bmdzKCk7CiAKICAgICAgICAgICAgIHZhciB2aWV3ID0gcmVzb3VyY2UuX3Jlc291cmNlc1ZpZXc7
CkBAIC00MzcsMzMgKzQ2MSwxMCBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90
eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAotICAgIHJlZnJlc2hSZXNvdXJjZTogZnVuY3Rp
b24ocmVzb3VyY2UsIHNraXBCb3VuZGFyeVVwZGF0ZSwgc2tpcFNvcnQsIGltbWVkaWF0ZSkKKyAg
ICByZWZyZXNoUmVzb3VyY2U6IGZ1bmN0aW9uKHJlc291cmNlKQogICAgIHsKLSAgICAgICAgaWYg
KCF0aGlzLnZpc2libGUpIHsKLSAgICAgICAgICAgIHRoaXMuX3N0YWxlUmVzb3VyY2VzLnB1c2go
cmVzb3VyY2UpOwotICAgICAgICAgICAgdGhpcy5uZWVkc1JlZnJlc2ggPSB0cnVlOwotICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFza2lwQm91bmRhcnlVcGRh
dGUpIHsKLSAgICAgICAgICAgIGlmICh0aGlzLl91cGRhdGVHcmFwaEJvdW5kYXJpZXNJZk5lZWRl
ZChyZXNvdXJjZSwgaW1tZWRpYXRlKSkKLSAgICAgICAgICAgICAgICByZXR1cm47IC8vIF91cGRh
dGVHcmFwaEJvdW5kYXJpZXNJZk5lZWRlZCByZWZyZXNoZXMgYWxsIHJlc291cmNlcyBpZiBpdCBy
ZXR1cm5zIHRydWUsIHNvIGp1c3QgcmV0dXJuLgotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKCFz
a2lwU29ydCkgewotICAgICAgICAgICAgaWYgKGltbWVkaWF0ZSkKLSAgICAgICAgICAgICAgICB0
aGlzLl9zb3J0UmVzb3VyY2VzSWZOZWVkZWQoKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAg
ICAgICAgICB0aGlzLl9zb3J0UmVzb3VyY2VzU29vbklmTmVlZGVkKCk7Ci0gICAgICAgIH0KLQot
ICAgICAgICB0aGlzLl91cGRhdGVTdW1tYXJ5R3JhcGhTb29uKCk7Ci0KLSAgICAgICAgaWYgKCFy
ZXNvdXJjZS5fcmVzb3VyY2VzVHJlZUVsZW1lbnQpCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAg
ICAgICAgcmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50LnJlZnJlc2goKTsKLSAgICAgICAg
cmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50Ll9yZXNvdXJjZUdyYXBoLnJlZnJlc2godGhp
cy5jYWxjdWxhdG9yKTsKKyAgICAgICAgdGhpcy5fc3RhbGVSZXNvdXJjZXMucHVzaChyZXNvdXJj
ZSk7CisgICAgICAgIHRoaXMubmVlZHNSZWZyZXNoID0gdHJ1ZTsKICAgICB9LAogCiAgICAgcmVj
cmVhdGVWaWV3Rm9yUmVzb3VyY2VJZk5lZWRlZDogZnVuY3Rpb24ocmVzb3VyY2UpCkBAIC00Nzgs
NyArNDc5LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgcmVzb3VyY2Uud2FybmluZ3MgPSAwOwogICAgICAgICByZXNvdXJjZS5lcnJvcnMgPSAw
OwogCi0gICAgICAgIGlmICghdGhpcy5jdXJyZW50UXVlcnkpCisgICAgICAgIGlmICghdGhpcy5j
dXJyZW50UXVlcnkgJiYgcmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50KQogICAgICAgICAg
ICAgcmVzb3VyY2UuX3Jlc291cmNlc1RyZWVFbGVtZW50LnVwZGF0ZUVycm9yc0FuZFdhcm5pbmdz
KCk7CiAKICAgICAgICAgdmFyIG9sZFZpZXcgPSByZXNvdXJjZS5fcmVzb3VyY2VzVmlldzsKQEAg
LTYxMiwyMCArNjEzLDggQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9
IHsKICAgICAgICAgcmV0dXJuIGxlZ2VuZEVsZW1lbnQ7CiAgICAgfSwKIAotICAgIF9zb3J0UmVz
b3VyY2VzU29vbklmTmVlZGVkOiBmdW5jdGlvbigpCi0gICAgewotICAgICAgICBpZiAoIl9zb3J0
UmVzb3VyY2VzVGltZW91dCIgaW4gdGhpcykKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
dGhpcy5fc29ydFJlc291cmNlc1RpbWVvdXQgPSBzZXRUaW1lb3V0KHRoaXMuX3NvcnRSZXNvdXJj
ZXNJZk5lZWRlZC5iaW5kKHRoaXMpLCA1MDApOwotICAgIH0sCi0KICAgICBfc29ydFJlc291cmNl
c0lmTmVlZGVkOiBmdW5jdGlvbigpCiAgICAgewotICAgICAgICBpZiAoIl9zb3J0UmVzb3VyY2Vz
VGltZW91dCIgaW4gdGhpcykgewotICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3NvcnRS
ZXNvdXJjZXNUaW1lb3V0KTsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9zb3J0UmVzb3VyY2Vz
VGltZW91dDsKLSAgICAgICAgfQotCiAgICAgICAgIHZhciBzb3J0ZWRFbGVtZW50cyA9IFtdLmNv
bmNhdCh0aGlzLnJlc291cmNlc1RyZWVFbGVtZW50LmNoaWxkcmVuKTsKICAgICAgICAgc29ydGVk
RWxlbWVudHMuc29ydCh0aGlzLnNvcnRpbmdGdW5jdGlvbik7CiAKQEAgLTY0Miw0MiArNjMxLDEy
IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAg
ICAgICAgdHJlZUVsZW1lbnQuc2VsZWN0KHRydWUpOwogCiAgICAgICAgICAgICB2YXIgZ3JhcGhF
bGVtZW50ID0gdHJlZUVsZW1lbnQuX3Jlc291cmNlR3JhcGguZ3JhcGhFbGVtZW50OwotICAgICAg
ICAgICAgdGhpcy5yZXNvdXJjZXNHcmFwaHNFbGVtZW50LnJlbW92ZUNoaWxkKGdyYXBoRWxlbWVu
dCk7CiAgICAgICAgICAgICB0aGlzLnJlc291cmNlc0dyYXBoc0VsZW1lbnQuaW5zZXJ0QmVmb3Jl
KGdyYXBoRWxlbWVudCwgdGhpcy5yZXNvdXJjZXNHcmFwaHNFbGVtZW50LmNoaWxkcmVuW2ldKTsK
ICAgICAgICAgfQogICAgIH0sCiAKLSAgICBfdXBkYXRlR3JhcGhCb3VuZGFyaWVzSWZOZWVkZWQ6
IGZ1bmN0aW9uKHJlc291cmNlLCBpbW1lZGlhdGUpCi0gICAgewotICAgICAgICB2YXIgZGlkQ2hh
bmdlID0gdGhpcy5jYWxjdWxhdG9yLnVwZGF0ZUJvdW5kYXJpZXMocmVzb3VyY2UpOwotCi0gICAg
ICAgIGlmIChkaWRDaGFuZ2UpIHsKLSAgICAgICAgICAgIGlmIChpbW1lZGlhdGUpIHsKLSAgICAg
ICAgICAgICAgICB0aGlzLl9yZWZyZXNoQWxsUmVzb3VyY2VzKHRydWUsIGltbWVkaWF0ZSk7Ci0g
ICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlR3JhcGhEaXZpZGVyc0lmTmVlZGVkKCk7Ci0gICAg
ICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hBbGxSZXNvdXJj
ZXNTb29uKHRydWUsIGltbWVkaWF0ZSk7Ci0gICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlR3Jh
cGhEaXZpZGVyc1Nvb25JZk5lZWRlZCgpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAg
ICAgICAgcmV0dXJuIGRpZENoYW5nZTsKLSAgICB9LAotCi0gICAgX3VwZGF0ZUdyYXBoRGl2aWRl
cnNTb29uSWZOZWVkZWQ6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIGlmICgiX3VwZGF0ZUdy
YXBoRGl2aWRlcnNUaW1lb3V0IiBpbiB0aGlzKQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAg
ICB0aGlzLl91cGRhdGVHcmFwaERpdmlkZXJzVGltZW91dCA9IHNldFRpbWVvdXQodGhpcy5fdXBk
YXRlR3JhcGhEaXZpZGVyc0lmTmVlZGVkLmJpbmQodGhpcyksIDUwMCk7Ci0gICAgfSwKLQogICAg
IF91cGRhdGVHcmFwaERpdmlkZXJzSWZOZWVkZWQ6IGZ1bmN0aW9uKGZvcmNlKQogICAgIHsKLSAg
ICAgICAgaWYgKCJfdXBkYXRlR3JhcGhEaXZpZGVyc1RpbWVvdXQiIGluIHRoaXMpIHsKLSAgICAg
ICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl91cGRhdGVHcmFwaERpdmlkZXJzVGltZW91dCk7Ci0g
ICAgICAgICAgICBkZWxldGUgdGhpcy5fdXBkYXRlR3JhcGhEaXZpZGVyc1RpbWVvdXQ7Ci0gICAg
ICAgIH0KLQogICAgICAgICBpZiAoIXRoaXMudmlzaWJsZSkgewogICAgICAgICAgICAgdGhpcy5u
ZWVkc1JlZnJlc2ggPSB0cnVlOwogICAgICAgICAgICAgcmV0dXJuOwpAQCAtNzE4LDMxICs2Nzcs
NiBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB9
CiAgICAgfSwKIAotICAgIF9yZWZyZXNoQWxsUmVzb3VyY2VzU29vbjogZnVuY3Rpb24oc2tpcEJv
dW5kYXJ5VXBkYXRlLCBpbW1lZGlhdGUpCi0gICAgewotICAgICAgICBpZiAoIl9yZWZyZXNoQWxs
UmVzb3VyY2VzVGltZW91dCIgaW4gdGhpcykKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
dGhpcy5fcmVmcmVzaEFsbFJlc291cmNlc1RpbWVvdXQgPSBzZXRUaW1lb3V0KHRoaXMuX3JlZnJl
c2hBbGxSZXNvdXJjZXMuYmluZCh0aGlzKSwgNTAwLCBza2lwQm91bmRhcnlVcGRhdGUsIGltbWVk
aWF0ZSk7Ci0gICAgfSwKLQotICAgIF9yZWZyZXNoQWxsUmVzb3VyY2VzOiBmdW5jdGlvbihza2lw
Qm91bmRhcnlVcGRhdGUsIGltbWVkaWF0ZSkKLSAgICB7Ci0gICAgICAgIGlmICgiX3JlZnJlc2hB
bGxSZXNvdXJjZXNUaW1lb3V0IiBpbiB0aGlzKSB7Ci0gICAgICAgICAgICBjbGVhclRpbWVvdXQo
dGhpcy5fcmVmcmVzaEFsbFJlc291cmNlc1RpbWVvdXQpOwotICAgICAgICAgICAgZGVsZXRlIHRo
aXMuX3JlZnJlc2hBbGxSZXNvdXJjZXNUaW1lb3V0OwotICAgICAgICB9Ci0KLSAgICAgICAgdmFy
IHJlc291cmNlc0xlbmd0aCA9IHRoaXMuX3Jlc291cmNlcy5sZW5ndGg7Ci0KLSAgICAgICAgaWYg
KCFza2lwQm91bmRhcnlVcGRhdGUpIHsKLSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
cmVzb3VyY2VzTGVuZ3RoOyArK2kpCi0gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdG9yLnVw
ZGF0ZUJvdW5kYXJpZXModGhpcy5fcmVzb3VyY2VzW2ldKTsKLSAgICAgICAgfQotCi0gICAgICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgcmVzb3VyY2VzTGVuZ3RoOyArK2kpCi0gICAgICAgICAgICB0
aGlzLnJlZnJlc2hSZXNvdXJjZSh0aGlzLl9yZXNvdXJjZXNbaV0sIHRydWUsIHRydWUsIGltbWVk
aWF0ZSk7Ci0gICAgfSwKLQogICAgIF9mYWRlT3V0UmVjdDogZnVuY3Rpb24oY3R4LCB4LCB5LCB3
LCBoLCBhMSwgYTIpCiAgICAgewogICAgICAgICBjdHguc2F2ZSgpOwpAQCAtOTgwLDIwICs5MTQs
OCBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0
aGlzLl9mYWRlT3V0UmVjdChjdHgsIHgsIHkgKyBoICsgMSwgdywgaCwgMC41LCAwLjApOwogICAg
IH0sCiAKLSAgICBfdXBkYXRlU3VtbWFyeUdyYXBoU29vbjogZnVuY3Rpb24oKQotICAgIHsKLSAg
ICAgICAgaWYgKCJfdXBkYXRlU3VtbWFyeUdyYXBoVGltZW91dCIgaW4gdGhpcykKLSAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgdGhpcy5fdXBkYXRlU3VtbWFyeUdyYXBoVGltZW91dCA9IHNl
dFRpbWVvdXQodGhpcy5fdXBkYXRlU3VtbWFyeUdyYXBoLmJpbmQodGhpcyksICh0aGlzLl9zaG93
aW5nRW1wdHlTdW1tYXJ5R3JhcGggPyAwIDogNTAwKSk7Ci0gICAgfSwKLQogICAgIF91cGRhdGVT
dW1tYXJ5R3JhcGg6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIGlmICgiX3VwZGF0ZVN1bW1h
cnlHcmFwaFRpbWVvdXQiIGluIHRoaXMpIHsKLSAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlz
Ll91cGRhdGVTdW1tYXJ5R3JhcGhUaW1lb3V0KTsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl91
cGRhdGVTdW1tYXJ5R3JhcGhUaW1lb3V0OwotICAgICAgICB9Ci0KICAgICAgICAgdmFyIGdyYXBo
SW5mbyA9IHRoaXMuY2FsY3VsYXRvci5jb21wdXRlU3VtbWFyeVZhbHVlcyh0aGlzLl9yZXNvdXJj
ZXMpOwogCiAgICAgICAgIHZhciBjYXRlZ29yeU9yZGVyID0gWyJkb2N1bWVudHMiLCAic3R5bGVz
aGVldHMiLCAiaW1hZ2VzIiwgInNjcmlwdHMiLCAieGhyIiwgImZvbnRzIiwgIm90aGVyIl07CkBA
IC0xMDAyLDkgKzkyNCw2IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUg
PSB7CiAKICAgICAgICAgdGhpcy5sZWdlbmRFbGVtZW50LnJlbW92ZUNoaWxkcmVuKCk7CiAKLSAg
ICAgICAgaWYgKHRoaXMudG90YWxMZWdlbmRMYWJlbCkKLSAgICAgICAgICAgIHRoaXMudG90YWxM
ZWdlbmRMYWJlbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMudG90YWxMZWdlbmRMYWJlbCk7
Ci0KICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjYXRlZ29yeU9yZGVyLmxlbmd0aDsgKytp
KSB7CiAgICAgICAgICAgICB2YXIgY2F0ZWdvcnkgPSBjYXRlZ29yeU9yZGVyW2ldOwogICAgICAg
ICAgICAgdmFyIHNpemUgPSBncmFwaEluZm8uY2F0ZWdvcnlWYWx1ZXNbY2F0ZWdvcnldOwpAQCAt
MTA5MSw4ICsxMDEwLDggQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9
IHsKICAgICBfY2hhbmdlU29ydGluZ0Z1bmN0aW9uOiBmdW5jdGlvbigpCiAgICAgewogICAgICAg
ICB2YXIgc2VsZWN0ZWRPcHRpb24gPSB0aGlzLnNvcnRpbmdTZWxlY3RFbGVtZW50W3RoaXMuc29y
dGluZ1NlbGVjdEVsZW1lbnQuc2VsZWN0ZWRJbmRleF07Ci0gICAgICAgIHRoaXMuY2FsY3VsYXRv
ciA9IHNlbGVjdGVkT3B0aW9uLmNhbGN1bGF0b3I7CiAgICAgICAgIHRoaXMuc29ydGluZ0Z1bmN0
aW9uID0gc2VsZWN0ZWRPcHRpb24uc29ydGluZ0Z1bmN0aW9uOworICAgICAgICB0aGlzLmNhbGN1
bGF0b3IgPSBzZWxlY3RlZE9wdGlvbi5jYWxjdWxhdG9yOwogICAgIH0sCiAKICAgICBfY3JlYXRl
UmVzb3VyY2VWaWV3OiBmdW5jdGlvbihyZXNvdXJjZSkKQEAgLTEzMTAsMTcgKzEyMjksMTcgQEAg
V2ViSW5zcGVjdG9yLlJlc291cmNlVGltZUNhbGN1bGF0b3IucHJvdG90eXBlID0gewogICAgICAg
ICBpZiAocmVzb3VyY2Uuc3RhcnRUaW1lICE9PSAtMSkKICAgICAgICAgICAgIHZhciBzdGFydCA9
ICgocmVzb3VyY2Uuc3RhcnRUaW1lIC0gdGhpcy5taW5pbXVtQm91bmRhcnkpIC8gdGhpcy5ib3Vu
ZGFyeVNwYW4pICogMTAwOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICB2YXIgc3RhcnQgPSAx
MDA7CisgICAgICAgICAgICB2YXIgc3RhcnQgPSAwOwogCiAgICAgICAgIGlmIChyZXNvdXJjZS5y
ZXNwb25zZVJlY2VpdmVkVGltZSAhPT0gLTEpCiAgICAgICAgICAgICB2YXIgbWlkZGxlID0gKChy
ZXNvdXJjZS5yZXNwb25zZVJlY2VpdmVkVGltZSAtIHRoaXMubWluaW11bUJvdW5kYXJ5KSAvIHRo
aXMuYm91bmRhcnlTcGFuKSAqIDEwMDsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgdmFyIG1p
ZGRsZSA9IDEwMDsKKyAgICAgICAgICAgIHZhciBtaWRkbGUgPSAodGhpcy5zdGFydEF0WmVybyA/
IHN0YXJ0IDogMTAwKTsKIAogICAgICAgICBpZiAocmVzb3VyY2UuZW5kVGltZSAhPT0gLTEpCiAg
ICAgICAgICAgICB2YXIgZW5kID0gKChyZXNvdXJjZS5lbmRUaW1lIC0gdGhpcy5taW5pbXVtQm91
bmRhcnkpIC8gdGhpcy5ib3VuZGFyeVNwYW4pICogMTAwOwogICAgICAgICBlbHNlCi0gICAgICAg
ICAgICB2YXIgZW5kID0gMTAwOworICAgICAgICAgICAgdmFyIGVuZCA9ICh0aGlzLnN0YXJ0QXRa
ZXJvID8gbWlkZGxlIDogMTAwKTsKIAogICAgICAgICBpZiAodGhpcy5zdGFydEF0WmVybykgewog
ICAgICAgICAgICAgZW5kIC09IHN0YXJ0OwpAQCAtMTQxNiw3ICsxMzM1LDcgQEAgV2ViSW5zcGVj
dG9yLlJlc291cmNlVHJhbnNmZXJUaW1lQ2FsY3VsYXRvci5wcm90b3R5cGUgPSB7CiAgICAgX3Vw
cGVyQm91bmQ6IGZ1bmN0aW9uKHJlc291cmNlKQogICAgIHsKICAgICAgICAgcmV0dXJuIHJlc291
cmNlLmVuZFRpbWU7Ci0gICAgfSwKKyAgICB9CiB9CiAKIFdlYkluc3BlY3Rvci5SZXNvdXJjZVRy
YW5zZmVyVGltZUNhbGN1bGF0b3IucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5S
ZXNvdXJjZVRpbWVDYWxjdWxhdG9yLnByb3RvdHlwZTsKQEAgLTE0MzUsNyArMTM1NCw3IEBAIFdl
Ykluc3BlY3Rvci5SZXNvdXJjZVRyYW5zZmVyRHVyYXRpb25DYWxjdWxhdG9yLnByb3RvdHlwZSA9
IHsKICAgICBfdXBwZXJCb3VuZDogZnVuY3Rpb24ocmVzb3VyY2UpCiAgICAgewogICAgICAgICBy
ZXR1cm4gcmVzb3VyY2UuZHVyYXRpb247Ci0gICAgfSwKKyAgICB9CiB9CiAKIFdlYkluc3BlY3Rv
ci5SZXNvdXJjZVRyYW5zZmVyRHVyYXRpb25DYWxjdWxhdG9yLnByb3RvdHlwZS5fX3Byb3RvX18g
PSBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUaW1lQ2FsY3VsYXRvci5wcm90b3R5cGU7CkBAIC0xNjI4
LDcgKzE1NDcsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VHcmFwaCA9IGZ1bmN0aW9uKHJlc291
cmNlKQogICAgICAgICB0aGlzLl9ncmFwaEVsZW1lbnQuYWRkU3R5bGVDbGFzcygicmVzb3VyY2Ut
Y2FjaGVkIik7CiAKICAgICB0aGlzLl9iYXJBcmVhRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOwotICAgIHRoaXMuX2JhckFyZWFFbGVtZW50LmNsYXNzTmFtZSA9ICJyZXNv
dXJjZXMtZ3JhcGgtYmFyLWFyZWEiOworICAgIHRoaXMuX2JhckFyZWFFbGVtZW50LmNsYXNzTmFt
ZSA9ICJyZXNvdXJjZXMtZ3JhcGgtYmFyLWFyZWEgaGlkZGVuIjsKICAgICB0aGlzLl9ncmFwaEVs
ZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fYmFyQXJlYUVsZW1lbnQpOwogCiAgICAgdGhpcy5fYmFy
TGVmdEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKQEAgLTE3MDMsNiAr
MTYyMiw4IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZUdyYXBoLnByb3RvdHlwZSA9IHsKIAogICAg
ICAgICB0aGlzLl9wZXJjZW50YWdlcyA9IHBlcmNlbnRhZ2VzOwogCisgICAgICAgIHRoaXMuX2Jh
ckFyZWFFbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3MoImhpZGRlbiIpOworCiAgICAgICAgIGlmICgh
dGhpcy5fZ3JhcGhFbGVtZW50Lmhhc1N0eWxlQ2xhc3MoInJlc291cmNlcy1jYXRlZ29yeS0iICsg
dGhpcy5yZXNvdXJjZS5jYXRlZ29yeS5uYW1lKSkgewogICAgICAgICAgICAgdGhpcy5fZ3JhcGhF
bGVtZW50LnJlbW92ZU1hdGNoaW5nU3R5bGVDbGFzc2VzKCJyZXNvdXJjZXMtY2F0ZWdvcnktXFx3
KyIpOwogICAgICAgICAgICAgdGhpcy5fZ3JhcGhFbGVtZW50LmFkZFN0eWxlQ2xhc3MoInJlc291
cmNlcy1jYXRlZ29yeS0iICsgdGhpcy5yZXNvdXJjZS5jYXRlZ29yeS5uYW1lKTsKLS0gCjEuNi4w
LjIKCg==
</data>
<flag name="review"
          id="11171"
          type_id="1"
          status="+"
          setter="kmccullough"
    />
          </attachment>
      

    </bug>

</bugzilla>