<?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>160321</bug_id>
          
          <creation_ts>2016-07-28 15:24:56 -0700</creation_ts>
          <short_desc>Web Inspector: Popover for Color Picker should update position when window resizes</short_desc>
          <delta_ts>2016-08-08 13:58:43 -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</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>bburg</cc>
    
    <cc>joepeck</cc>
    
    <cc>mattbaker</cc>
    
    <cc>nvasilyev</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1215417</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-07-28 15:24:56 -0700</bug_when>
    <thetext>Summary:
Popover for Color Picker should update position when window resizes.

Steps to Reproduce:
1. Inspect &lt;body&gt; on webkit.org
2. Show Elements Tab
3. Show Styles - Rules sidebar
4. Click on a Color swatch to show Color Picker Popover
5. Horizontally resize the inspector window
  =&gt; Popover does not update its position to track the element it is for

Notes:
- This is a common problem. We solved it for the LayerDetailsSidebarPanel. We should solve it here and more generally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215418</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-07-28 15:25:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/27598358&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215420</commentid>
    <comment_count>2</comment_count>
      <attachid>284824</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-07-28 15:41:31 -0700</bug_when>
    <thetext>Created attachment 284824
[PATCH] Proposed Fix

This fixes color swatch case, and moves all the older custom implementations over to the newer, simpler version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215422</commentid>
    <comment_count>3</comment_count>
      <attachid>284824</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-07-28 15:53:33 -0700</bug_when>
    <thetext>Comment on attachment 284824
[PATCH] Proposed Fix

I&apos;ll address a few other popovers that aren&apos;t updating for window resizes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215433</commentid>
    <comment_count>4</comment_count>
      <attachid>284828</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-07-28 16:07:41 -0700</bug_when>
    <thetext>Created attachment 284828
[PATCH] Proposed Fix

This updates popover repositioning on window resize for most popovers.

It removes custom code for:

  - layer details sidebar
  - timeline datagrid
  - watch expressions

Adds resize handling for:

  - color swatches
  - probe expressions
  - visual sidebar help text
  - heap snapshot popovers

Does not change: (Right now these do not need adjustments with window resize... The top+left is enough. But They may in the future though)

  - debugger popovers
  - breakpoint popovers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215586</commentid>
    <comment_count>5</comment_count>
      <attachid>284828</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2016-07-29 10:32:56 -0700</bug_when>
    <thetext>Comment on attachment 284828
[PATCH] Proposed Fix

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

r=me

&gt; Source/WebInspectorUI/ChangeLog:16
&gt; +        * UserInterface/Views/HeapSnapshotDataGridTree.js:

Nit: pls newline

&gt; Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js:75
&gt; +    set popoverNode(x) { this._popoverNode = x; }

Nit: popoverGridNode

&gt; Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js:83
&gt; +            this._popover.windowResizeHandler = () =&gt; {

If the popover is not visible when the resize handler is called, will this make it pop up?

&gt; Source/WebInspectorUI/UserInterface/Views/Popover.js:152
&gt; +        window.removeEventListener(&quot;resize&quot;, this, true);

I think it&apos;s worth mentioning in the change log that the resize handler is only called while the Popover is being presented.

&gt; Source/WebInspectorUI/UserInterface/Views/ProbeSetDetailsSection.js:135
&gt; +            let target = WebInspector.Rect.rectFromClientRect(event.target.element.getBoundingClientRect());

Nit: I would call this resizedTarget to emphasize we can&apos;t reuse `target` from above which is probably out of date.

&gt; Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.js:-373
&gt; -        window.addEventListener(&quot;resize&quot;, this._windowResizeListener);

Nice.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1218550</commentid>
    <comment_count>6</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-08-08 12:15:20 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 284828 [details]
&gt; [PATCH] Proposed Fix
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=284828&amp;action=review
&gt; 
&gt; &gt; Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js:83
&gt; &gt; +            this._popover.windowResizeHandler = () =&gt; {
&gt; 
&gt; If the popover is not visible when the resize handler is called, will this
&gt; make it pop up?

The resize handler can only be called when the popover is visible. Since now Popover.js handles adding/removing the listener when the popover is shown/hidden.

&gt; &gt; Source/WebInspectorUI/UserInterface/Views/Popover.js:152
&gt; &gt; +        window.removeEventListener(&quot;resize&quot;, this, true);
&gt; 
&gt; I think it&apos;s worth mentioning in the change log that the resize handler is
&gt; only called while the Popover is being presented.

Okay.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1218575</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-08-08 13:58:37 -0700</bug_when>
    <thetext>&lt;https://trac.webkit.org/changeset/204264&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284824</attachid>
            <date>2016-07-28 15:41:31 -0700</date>
            <delta_ts>2016-07-28 16:07:41 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>popover-1.patch</filename>
            <type>text/plain</type>
            <size>11043</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDA2MWIwZTkuLjg5ODRiZjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDE2LTA3LTI4ICBKb3NlcGggUGVjb3Jh
cm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUG9wb3Zl
ciBmb3IgQ29sb3IgUGlja2VyIHNob3VsZCB1cGRhdGUgcG9zaXRpb24gd2hlbiB3aW5kb3cgcmVz
aXplcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYw
MzIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBV
c2VySW50ZXJmYWNlL1ZpZXdzL1BvcG92ZXIuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUG9w
b3Zlcik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUG9wb3Zlci5wcm90b3R5cGUuc2V0IHdpbmRv
d1Jlc2l6ZUhhbmRsZXIpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlBvcG92ZXIucHJvdG90eXBl
LmRpc21pc3MpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlBvcG92ZXIucHJvdG90eXBlLmhhbmRs
ZUV2ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qb3BvdmVyLnByb3RvdHlwZS5fYWRkTGlz
dGVuZXJzSWZOZWVkZWQpOgorICAgICAgICBUaGUgcG9wb3ZlciBhbHJlYWR5IGhhcyBhIHNldCBv
ZiB3aW5kb3cgbGlzdGVuZXJzLCBhZGQgInJlc2l6ZSIgdG8KKyAgICAgICAgdGhlIGxpc3QuIElm
IHRoZXJlIGlzIGEgcmVzaXplLCBpbnZva2UgYSByZXNpemUgaGFuZGxlci4KKworICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvVmlld3MvSW5saW5lU3dhdGNoLmpzOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLklubGluZVN3YXRjaC5wcm90b3R5cGUuX3N3YXRjaEVsZW1lbnRDbGlja2VkKToKKyAgICAg
ICAgQWRkIGEgd2luZG93IHJlc2l6ZSBoYW5kbGVyIHRvIHJlcG9zaXRpb24gb3ZlciB0aGUgc3dh
dGNoIGVsZW1lbnQuCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURl
dGFpbHNTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuTGF5ZXJUcmVlRGV0
YWlsc1NpZGViYXJQYW5lbC5wcm90b3R5cGUuX3VwZGF0ZVBvcG92ZXJGb3JTZWxlY3RlZE5vZGUp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFu
ZWwucHJvdG90eXBlLl93aW5kb3dSZXNpemVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBVc2VySW50
ZXJmYWNlL1ZpZXdzL1RpbWVsaW5lRGF0YUdyaWQuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
VGltZWxpbmVEYXRhR3JpZC5wcm90b3R5cGUuX3Nob3dQb3BvdmVyRm9yU2VsZWN0ZWROb2RlU29v
bik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZCk6IERlbGV0ZWQuCisg
ICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZC5wcm90b3R5cGUuY2xvc2VkKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZURhdGFHcmlkLnByb3RvdHlw
ZS5oYW5kbGVFdmVudCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVE
YXRhR3JpZC5wcm90b3R5cGUuX3dpbmRvd1Jlc2l6ZWQpOiBEZWxldGVkLgorICAgICAgICAqIFVz
ZXJJbnRlcmZhY2UvVmlld3MvU2NvcGVDaGFpbkRldGFpbHNTaWRlYmFyUGFuZWwuanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuU2NvcGVDaGFpbkRldGFpbHNTaWRlYmFyUGFuZWwucHJvdG90eXBl
Ll9hZGRXYXRjaEV4cHJlc3Npb25CdXR0b25DbGlja2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5TY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5lbC5wcm90b3R5cGUud2lsbERpc21pc3NQb3Bv
dmVyKTogRGVsZXRlZC4KKyAgICAgICAgUmVwbGFjZSBjdXN0b20gcG9wb3ZlciByZXBvc2l0aW9u
aW5nIHdpdGggc3RhbmRhcmQgUG9wb3ZlciBoYW5kbGluZy4KKwogMjAxNi0wNy0yNyAgSm9zZXBo
IFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFdlYiBJbnNw
ZWN0b3I6IENvZGVNaXJyb3ItYmFzZWQgZWRpdG9yIGJpbmRpbmdzIGZvciBIb21lIGFuZCBFbmQg
ZG9uJ3QgbWF0Y2ggc3lzdGVtIGJlaGF2aW9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9JbmxpbmVTd2F0Y2guanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9JbmxpbmVTd2F0Y2guanMKaW5kZXggNDRiZmQ3
ZC4uZDZlMzY4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvSW5saW5lU3dhdGNoLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL0lubGluZVN3YXRjaC5qcwpAQCAtMTM0LDYgKzEzNCwxMSBAQCBXZWJJ
bnNwZWN0b3IuSW5saW5lU3dhdGNoID0gY2xhc3MgSW5saW5lU3dhdGNoIGV4dGVuZHMgV2ViSW5z
cGVjdG9yLk9iamVjdAogICAgICAgICBsZXQgYm91bmRzID0gV2ViSW5zcGVjdG9yLlJlY3QucmVj
dEZyb21DbGllbnRSZWN0KHRoaXMuX3N3YXRjaEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0
KCkpOwogICAgICAgICBsZXQgcG9wb3ZlciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9wb3Zlcih0aGlz
KTsKIAorICAgICAgICBwb3BvdmVyLndpbmRvd1Jlc2l6ZUhhbmRsZXIgPSAoKSA9PiB7CisgICAg
ICAgICAgICBsZXQgYm91bmRzID0gV2ViSW5zcGVjdG9yLlJlY3QucmVjdEZyb21DbGllbnRSZWN0
KHRoaXMuX3N3YXRjaEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpOworICAgICAgICAg
ICAgcG9wb3Zlci5wcmVzZW50KGJvdW5kcy5wYWQoMiksIFtXZWJJbnNwZWN0b3IuUmVjdEVkZ2Uu
TUlOX1hdKTsKKyAgICAgICAgfTsKKwogICAgICAgICB0aGlzLl92YWx1ZUVkaXRvciA9IG51bGw7
CiAgICAgICAgIGlmICh0aGlzLl90eXBlID09PSBXZWJJbnNwZWN0b3IuSW5saW5lU3dhdGNoLlR5
cGUuQmV6aWVyKSB7CiAgICAgICAgICAgICB0aGlzLl92YWx1ZUVkaXRvciA9IG5ldyBXZWJJbnNw
ZWN0b3IuQmV6aWVyRWRpdG9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRl
YmFyUGFuZWwuanMKaW5kZXggMzJlNjVjMC4uZmE1NjIyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQ
YW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9M
YXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0zNSw4ICszNSw2IEBAIFdlYkluc3Bl
Y3Rvci5MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsID0gY2xhc3MgTGF5ZXJUcmVlRGV0YWls
c1NpZGViYXJQYW5lbCBlCiAKICAgICAgICAgV2ViSW5zcGVjdG9yLnNob3dTaGFkb3dET01TZXR0
aW5nLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlNldHRpbmcuRXZlbnQuQ2hhbmdlZCwg
dGhpcy5fc2hvd1NoYWRvd0RPTVNldHRpbmdDaGFuZ2VkLCB0aGlzKTsKIAotICAgICAgICB3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwgdGhpcy5fd2luZG93UmVzaXplZC5iaW5kKHRo
aXMpKTsKLQogICAgICAgICB0aGlzLl9idWlsZExheWVySW5mb1NlY3Rpb24oKTsKICAgICAgICAg
dGhpcy5fYnVpbGREYXRhR3JpZFNlY3Rpb24oKTsKICAgICAgICAgdGhpcy5fYnVpbGRCb3R0b21C
YXIoKTsKQEAgLTkzLDEyICs5MSw2IEBAIFdlYkluc3BlY3Rvci5MYXllclRyZWVEZXRhaWxzU2lk
ZWJhclBhbmVsID0gY2xhc3MgTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCBlCiAgICAgICAg
ICAgICB0aGlzLl91cGRhdGVEaXNwbGF5V2l0aExheWVycyh0aGlzLl9sYXllckZvck5vZGUsIHRo
aXMuX3VuZmlsdGVyZWRDaGlsZExheWVycyk7CiAgICAgfQogCi0gICAgX3dpbmRvd1Jlc2l6ZWQo
ZXZlbnQpCi0gICAgewotICAgICAgICBpZiAodGhpcy5fcG9wb3ZlciAmJiB0aGlzLl9wb3BvdmVy
LnZpc2libGUpCi0gICAgICAgICAgICB0aGlzLl91cGRhdGVQb3BvdmVyRm9yU2VsZWN0ZWROb2Rl
KCk7Ci0gICAgfQotCiAgICAgX2J1aWxkTGF5ZXJJbmZvU2VjdGlvbigpCiAgICAgewogICAgICAg
ICB2YXIgcm93cyA9IHRoaXMuX2xheWVySW5mb1Jvd3MgPSB7fTsKQEAgLTMzMiw4ICszMjQsMTAg
QEAgV2ViSW5zcGVjdG9yLkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwgPSBjbGFzcyBMYXll
clRyZWVEZXRhaWxzU2lkZWJhclBhbmVsIGUKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAg
ICB2YXIgcG9wb3ZlciA9IHRoaXMuX3BvcG92ZXI7Ci0gICAgICAgIGlmICghcG9wb3ZlcikKKyAg
ICAgICAgaWYgKCFwb3BvdmVyKSB7CiAgICAgICAgICAgICBwb3BvdmVyID0gdGhpcy5fcG9wb3Zl
ciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9wb3ZlcjsKKyAgICAgICAgICAgIHBvcG92ZXIud2luZG93
UmVzaXplSGFuZGxlciA9ICgpID0+IHsgdGhpcy5fdXBkYXRlUG9wb3ZlckZvclNlbGVjdGVkTm9k
ZSgpOyB9OworICAgICAgICB9CiAKICAgICAgICAgdmFyIHRhcmdldEZyYW1lID0gV2ViSW5zcGVj
dG9yLlJlY3QucmVjdEZyb21DbGllbnRSZWN0KGRhdGFHcmlkTm9kZS5lbGVtZW50LmdldEJvdW5k
aW5nQ2xpZW50UmVjdCgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvUG9wb3Zlci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1BvcG92ZXIuanMKaW5kZXggYThhYTBmMy4uNjkxMWIwMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUG9wb3Zlci5q
cworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Qb3BvdmVy
LmpzCkBAIC0zNiw2ICszNiw3IEBAIFdlYkluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3MgUG9wb3Zl
ciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICAgICAgdGhpcy5fdGFyZ2V0RnJhbWUg
PSBuZXcgV2ViSW5zcGVjdG9yLlJlY3Q7CiAgICAgICAgIHRoaXMuX2FuY2hvclBvaW50ID0gbmV3
IFdlYkluc3BlY3Rvci5Qb2ludDsKICAgICAgICAgdGhpcy5fcHJlZmVycmVkRWRnZXMgPSBudWxs
OworICAgICAgICB0aGlzLl9yZXNpemVIYW5kbGVyID0gbnVsbDsKIAogICAgICAgICB0aGlzLl9j
b250ZW50TmVlZHNVcGRhdGUgPSBmYWxzZTsKICAgICAgICAgdGhpcy5fZGlzbWlzc2luZyA9IGZh
bHNlOwpAQCAtOTAsNiArOTEsMTIgQEAgV2ViSW5zcGVjdG9yLlBvcG92ZXIgPSBjbGFzcyBQb3Bv
dmVyIGV4dGVuZHMgV2ViSW5zcGVjdG9yLk9iamVjdAogICAgICAgICAgICAgdGhpcy5fdXBkYXRl
KHRydWUpOwogICAgIH0KIAorICAgIHNldCB3aW5kb3dSZXNpemVIYW5kbGVyKHJlc2l6ZUhhbmRs
ZXIpCisgICAgeworICAgICAgICBjb25zb2xlLmFzc2VydCh0eXBlb2YgcmVzaXplSGFuZGxlciA9
PT0gImZ1bmN0aW9uIik7CisgICAgICAgIHRoaXMuX3Jlc2l6ZUhhbmRsZXIgPSByZXNpemVIYW5k
bGVyOworICAgIH0KKwogICAgIHVwZGF0ZShzaG91bGRBbmltYXRlID0gdHJ1ZSkKICAgICB7CiAg
ICAgICAgIGlmICghdGhpcy52aXNpYmxlKQpAQCAtMTQyLDYgKzE0OSw3IEBAIFdlYkluc3BlY3Rv
ci5Qb3BvdmVyID0gY2xhc3MgUG9wb3ZlciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAg
ICAgICAgdGhpcy5faXNMaXN0ZW5pbmdGb3JQb3BvdmVyRXZlbnRzID0gZmFsc2U7CiAgICAgICAg
IHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLCB0aGlzLCB0cnVlKTsKICAg
ICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIHRoaXMsIHRydWUpOwor
ICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIiwgdGhpcywgdHJ1ZSk7
CiAKICAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKFdlYkluc3BlY3Rvci5Qb3Bv
dmVyLkZhZGVPdXRDbGFzc05hbWUpOwogCkBAIC0xNTcsNiArMTY1LDEwIEBAIFdlYkluc3BlY3Rv
ci5Qb3BvdmVyID0gY2xhc3MgUG9wb3ZlciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAg
ICAgICAgICAgIGlmICghdGhpcy5fZWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpICYmICFl
dmVudC50YXJnZXQuZW5jbG9zaW5nTm9kZU9yU2VsZldpdGhDbGFzcyhXZWJJbnNwZWN0b3IuUG9w
b3Zlci5JZ25vcmVBdXRvRGlzbWlzc0NsYXNzTmFtZSkpCiAgICAgICAgICAgICAgICAgdGhpcy5k
aXNtaXNzKCk7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAicmVzaXplIjoKKyAg
ICAgICAgICAgIGlmICh0aGlzLl9yZXNpemVIYW5kbGVyKQorICAgICAgICAgICAgICAgIHRoaXMu
X3Jlc2l6ZUhhbmRsZXIoKTsKKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlICJ0cmFu
c2l0aW9uZW5kIjoKICAgICAgICAgICAgIGlmIChldmVudC50YXJnZXQgPT09IHRoaXMuX2VsZW1l
bnQpIHsKICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMuX2Vs
ZW1lbnQpOwpAQCAtMTY4LDYgKzE4MCw3IEBAIFdlYkluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3Mg
UG9wb3ZlciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICAgICAgICAgICAgICB0aGlz
Ll9kaXNtaXNzaW5nID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAg
ICB9CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgIH0KIApAQCAtNTQ5LDYgKzU2
Miw3IEBAIFdlYkluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3MgUG9wb3ZlciBleHRlbmRzIFdlYklu
c3BlY3Rvci5PYmplY3QKICAgICAgICAgICAgIHRoaXMuX2lzTGlzdGVuaW5nRm9yUG9wb3ZlckV2
ZW50cyA9IHRydWU7CiAgICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vk
b3duIiwgdGhpcywgdHJ1ZSk7CiAgICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigi
c2Nyb2xsIiwgdGhpcywgdHJ1ZSk7CisgICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5l
cigicmVzaXplIiwgdGhpcywgdHJ1ZSk7CiAgICAgICAgIH0KICAgICB9CiB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2NvcGVDaGFpbkRl
dGFpbHNTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9TY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5lbC5qcwppbmRleCAyMTFhNjA4Li4y
Y2M3ZDc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9TY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5l
bC5qcwpAQCAtMzY4LDExICszNjgsOSBAQCBXZWJJbnNwZWN0b3IuU2NvcGVDaGFpbkRldGFpbHNT
aWRlYmFyUGFuZWwgPSBjbGFzcyBTY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5lbAogICAgICAg
ICAgICAgfQogICAgICAgICB9KTsKIAotICAgICAgICAvLyBSZXBvc2l0aW9uIHRoZSBwb3BvdmVy
IHdoZW4gdGhlIHdpbmRvdyByZXNpemVzLgotICAgICAgICB0aGlzLl93aW5kb3dSZXNpemVMaXN0
ZW5lciA9IHByZXNlbnRQb3BvdmVyT3ZlclRhcmdldEVsZW1lbnQ7Ci0gICAgICAgIHdpbmRvdy5h
ZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLCB0aGlzLl93aW5kb3dSZXNpemVMaXN0ZW5lcik7Ci0K
ICAgICAgICAgcG9wb3Zlci5jb250ZW50ID0gY29udGVudDsKKworICAgICAgICBwb3BvdmVyLndp
bmRvd1Jlc2l6ZUhhbmRsZXIgPSBwcmVzZW50UG9wb3Zlck92ZXJUYXJnZXRFbGVtZW50OwogICAg
ICAgICBwcmVzZW50UG9wb3Zlck92ZXJUYXJnZXRFbGVtZW50KCk7CiAKICAgICAgICAgLy8gQ29k
ZU1pcnJvciBuZWVkcyBhIHJlZnJlc2ggYWZ0ZXIgdGhlIHBvcG92ZXIgZGlzcGxheXMsIHRvIGxh
eW91dCwgb3RoZXJ3aXNlIGl0IGRvZXNuJ3QgYXBwZWFyLgpAQCAtMzkxLDggKzM4OSw2IEBAIFdl
Ykluc3BlY3Rvci5TY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIFNjb3BlQ2hh
aW5EZXRhaWxzU2lkZWJhclBhbmVsCiAgICAgICAgICAgICAgICAgdGhpcy5fYWRkV2F0Y2hFeHBy
ZXNzaW9uKGV4cHJlc3Npb24pOwogICAgICAgICB9CiAKLSAgICAgICAgd2luZG93LnJlbW92ZUV2
ZW50TGlzdGVuZXIoInJlc2l6ZSIsIHRoaXMuX3dpbmRvd1Jlc2l6ZUxpc3RlbmVyKTsKLSAgICAg
ICAgdGhpcy5fd2luZG93UmVzaXplTGlzdGVuZXIgPSBudWxsOwogICAgICAgICB0aGlzLl9jb2Rl
TWlycm9yID0gbnVsbDsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RpbWVsaW5lRGF0YUdyaWQuanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9UaW1lbGluZURhdGFHcmlkLmpzCmluZGV4IGNm
MTIyZDIuLjAxZjExMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL1RpbWVsaW5lRGF0YUdyaWQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVGltZWxpbmVEYXRhR3JpZC5qcwpAQCAtNTcsOCArNTcs
NiBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZCA9IGNsYXNzIFRpbWVsaW5lRGF0YUdy
aWQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuRGF0YQogICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVu
ZXIoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLkV2ZW50LlNlbGVjdGVkTm9kZUNoYW5nZWQsIHRoaXMu
X2RhdGFHcmlkU2VsZWN0ZWROb2RlQ2hhbmdlZCwgdGhpcyk7CiAgICAgICAgIHRoaXMuYWRkRXZl
bnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGF0YUdyaWQuRXZlbnQuU29ydENoYW5nZWQsIHRoaXMu
X3NvcnQsIHRoaXMpOwogCi0gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUi
LCB0aGlzKTsKLQogICAgICAgICB0aGlzLmNvbHVtbkNob29zZXJFbmFibGVkID0gdHJ1ZTsKICAg
ICB9CiAKQEAgLTEyNCwxMSArMTIyLDYgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lRGF0YUdyaWQg
PSBjbGFzcyBUaW1lbGluZURhdGFHcmlkIGV4dGVuZHMgV2ViSW5zcGVjdG9yLkRhdGEKICAgICAg
ICAgdGhpcy5faGlkZVBvcG92ZXIoKTsKICAgICB9CiAKLSAgICBjbG9zZWQoKQotICAgIHsKLSAg
ICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsIHRoaXMpOwotICAgIH0K
LQogICAgIHRyZWVFbGVtZW50Rm9yRGF0YUdyaWROb2RlKGRhdGFHcmlkTm9kZSkKICAgICB7CiAg
ICAgICAgIGlmICghdGhpcy5fdHJlZU91dGxpbmVEYXRhR3JpZFN5bmNocm9uaXplcikKQEAgLTE5
MywxMyArMTg2LDYgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lRGF0YUdyaWQgPSBjbGFzcyBUaW1l
bGluZURhdGFHcmlkIGV4dGVuZHMgV2ViSW5zcGVjdG9yLkRhdGEKIAogICAgIC8vIFByb3RlY3Rl
ZAogCi0gICAgaGFuZGxlRXZlbnQoZXZlbnQpCi0gICAgewotICAgICAgICBjb25zb2xlLmFzc2Vy
dChldmVudC50eXBlID09PSAicmVzaXplIik7Ci0KLSAgICAgICAgdGhpcy5fd2luZG93UmVzaXpl
ZChldmVudCk7Ci0gICAgfQotCiAgICAgZGF0YUdyaWROb2RlTmVlZHNSZWZyZXNoKGRhdGFHcmlk
Tm9kZSkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5fZGlydHlEYXRhR3JpZE5vZGVzKQpAQCAt
NDQxLDIwICs0MjcsMTYgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lRGF0YUdyaWQgPSBjbGFzcyBU
aW1lbGluZURhdGFHcmlkIGV4dGVuZHMgV2ViSW5zcGVjdG9yLkRhdGEKICAgICAgICAgdGhpcy5f
c2hvd1BvcG92ZXJGb3JTZWxlY3RlZE5vZGVTb29uKCk7CiAgICAgfQogCi0gICAgX3dpbmRvd1Jl
c2l6ZWQoZXZlbnQpCi0gICAgewotICAgICAgICBpZiAodGhpcy5fcG9wb3ZlciAmJiB0aGlzLl9w
b3BvdmVyLnZpc2libGUpCi0gICAgICAgICAgICB0aGlzLl91cGRhdGVQb3BvdmVyRm9yU2VsZWN0
ZWROb2RlKGZhbHNlKTsKLSAgICB9Ci0KICAgICBfc2hvd1BvcG92ZXJGb3JTZWxlY3RlZE5vZGVT
b29uKCkKICAgICB7CiAgICAgICAgIGlmICh0aGlzLl9zaG93UG9wb3ZlclRpbWVvdXQpCiAgICAg
ICAgICAgICByZXR1cm47CiAKICAgICAgICAgdGhpcy5fc2hvd1BvcG92ZXJUaW1lb3V0ID0gc2V0
VGltZW91dCgoKSA9PiB7Ci0gICAgICAgICAgICBpZiAoIXRoaXMuX3BvcG92ZXIpCisgICAgICAg
ICAgICBpZiAoIXRoaXMuX3BvcG92ZXIpIHsKICAgICAgICAgICAgICAgICB0aGlzLl9wb3BvdmVy
ID0gbmV3IFdlYkluc3BlY3Rvci5Qb3BvdmVyOworICAgICAgICAgICAgICAgIHRoaXMuX3BvcG92
ZXIud2luZG93UmVzaXplSGFuZGxlciA9ICgpID0+IHsgdGhpcy5fdXBkYXRlUG9wb3ZlckZvclNl
bGVjdGVkTm9kZShmYWxzZSk7IH07CisgICAgICAgICAgICB9CiAgICAgICAgICAgICB0aGlzLl91
cGRhdGVQb3BvdmVyRm9yU2VsZWN0ZWROb2RlKHRydWUpOwogICAgICAgICAgICAgdGhpcy5fc2hv
d1BvcG92ZXJUaW1lb3V0ID0gdW5kZWZpbmVkOwogICAgICAgICB9LCBXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVEYXRhR3JpZC5EZWxheWVkUG9wb3ZlclNob3dUaW1lb3V0KTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284828</attachid>
            <date>2016-07-28 16:07:41 -0700</date>
            <delta_ts>2016-08-08 13:58:43 -0700</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>popover-2.patch</filename>
            <type>text/plain</type>
            <size>17197</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDA2MWIwZTkuLjQzMmRkYTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU4IEBACisyMDE2LTA3LTI4ICBKb3NlcGggUGVjb3Jh
cm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUG9wb3Zl
ciBmb3IgQ29sb3IgUGlja2VyIHNob3VsZCB1cGRhdGUgcG9zaXRpb24gd2hlbiB3aW5kb3cgcmVz
aXplcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYw
MzIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBV
c2VySW50ZXJmYWNlL1ZpZXdzL1BvcG92ZXIuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUG9w
b3Zlcik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUG9wb3Zlci5wcm90b3R5cGUuc2V0IHdpbmRv
d1Jlc2l6ZUhhbmRsZXIpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlBvcG92ZXIucHJvdG90eXBl
LmRpc21pc3MpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlBvcG92ZXIucHJvdG90eXBlLmhhbmRs
ZUV2ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qb3BvdmVyLnByb3RvdHlwZS5fYWRkTGlz
dGVuZXJzSWZOZWVkZWQpOgorICAgICAgICBUaGUgcG9wb3ZlciBhbHJlYWR5IGhhcyBhIHNldCBv
ZiB3aW5kb3cgbGlzdGVuZXJzLCBhZGQgInJlc2l6ZSIgdG8KKyAgICAgICAgdGhlIGxpc3QuIElm
IHRoZXJlIGlzIGEgcmVzaXplLCBpbnZva2UgYSByZXNpemUgaGFuZGxlci4KKyAgICAgICAgKiBV
c2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5qczoKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZFRyZWUpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5wcm90b3R5cGUuZ2V0IHZpc2libGUpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5wcm90b3R5cGUu
Z2V0IHBvcG92ZXJOb2RlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRh
R3JpZFRyZWUucHJvdG90eXBlLnNldCBwb3BvdmVyTm9kZSk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlLnByb3RvdHlwZS5nZXQgcG9wb3ZlclRhcmdldEVs
ZW1lbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5w
cm90b3R5cGUuc2V0IHBvcG92ZXJUYXJnZXRFbGVtZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5IZWFwU25hcHNob3REYXRhR3JpZFRyZWUucHJvdG90eXBlLmdldCBwb3BvdmVyKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRhR3JpZFRyZWUucHJvdG90eXBlLndpbGxE
aXNtaXNzUG9wb3Zlcik6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9IZWFwU25hcHNo
b3RJbnN0YW5jZURhdGFHcmlkTm9kZS5qczoKKyAgICAgICAgVXBkYXRlIGhlYXAgc25hcHNob3Qg
cG9wb3ZlcnMgdG8gcmVwb3NpdGlvbiBvbiB3aW5kb3cgcmVzaXplLgorICAgICAgICBTZXQgYSB0
YXJnZXQgdG8gcmVwb3NpdGlvbiBhcm91bmQsIHNpbmNlIHRoZSBwb3BvdmVyIGlzIHNoYXJlZC4K
KworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvUHJvYmVTZXREZXRhaWxzU2VjdGlvbi5q
czoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9iZVNldERldGFpbHNTZWN0aW9uLnByb3RvdHlw
ZS5fYWRkUHJvYmVCdXR0b25DbGlja2VkKToKKyAgICAgICAgVXBkYXRlIHByb2JlIGV4cHJlc3Np
b24gcG9wb3ZlciB0byByZXNwZWN0IHdpbmRvdyByZXNpemVzLgorCisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9WaXN1YWxTdHlsZVByb3BlcnR5RWRpdG9yLmpzOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlZpc3VhbFN0eWxlUHJvcGVydHlFZGl0b3IucHJvdG90eXBlLl9zaG93UHJvcGVy
dHlJbmZvUG9wb3Zlcik6CisgICAgICAgIFRob3VnaCBub3QgeWV0IHZpc2libGUsIHVwZGF0ZSB0
aGlzIHRvIHJlc3BlY3Qgd2luZG93IHJlc2l6ZXMuCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNl
L1ZpZXdzL0lubGluZVN3YXRjaC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5JbmxpbmVTd2F0
Y2gucHJvdG90eXBlLl9zd2F0Y2hFbGVtZW50Q2xpY2tlZCk6CisgICAgICAgIEFkZCBhIHdpbmRv
dyByZXNpemUgaGFuZGxlciB0byByZXBvc2l0aW9uIG92ZXIgdGhlIHN3YXRjaCBlbGVtZW50Lgor
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBh
bmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkxheWVyVHJlZURldGFpbHNTaWRlYmFyUGFu
ZWwucHJvdG90eXBlLl91cGRhdGVQb3BvdmVyRm9yU2VsZWN0ZWROb2RlKToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsKTogRGVsZXRlZC4KKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsLnByb3RvdHlwZS5f
d2luZG93UmVzaXplZCk6IERlbGV0ZWQuCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9U
aW1lbGluZURhdGFHcmlkLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lRGF0YUdy
aWQucHJvdG90eXBlLl9zaG93UG9wb3ZlckZvclNlbGVjdGVkTm9kZVNvb24pOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlRpbWVsaW5lRGF0YUdyaWQpOiBEZWxldGVkLgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlRpbWVsaW5lRGF0YUdyaWQucHJvdG90eXBlLmNsb3NlZCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZC5wcm90b3R5cGUuaGFuZGxlRXZlbnQp
OiBEZWxldGVkLgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lRGF0YUdyaWQucHJvdG90
eXBlLl93aW5kb3dSZXNpemVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL1Njb3BlQ2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlNjb3BlQ2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsLnByb3RvdHlwZS5fYWRkV2F0Y2hFeHBy
ZXNzaW9uQnV0dG9uQ2xpY2tlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NvcGVDaGFpbkRl
dGFpbHNTaWRlYmFyUGFuZWwucHJvdG90eXBlLndpbGxEaXNtaXNzUG9wb3Zlcik6IERlbGV0ZWQu
CisgICAgICAgIFJlcGxhY2UgY3VzdG9tIHBvcG92ZXIgcmVwb3NpdGlvbmluZyB3aXRoIHN0YW5k
YXJkIFBvcG92ZXIgaGFuZGxpbmcuCisKIDIwMTYtMDctMjcgIEpvc2VwaCBQZWNvcmFybyAgPHBl
Y29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBXZWIgSW5zcGVjdG9yOiBDb2RlTWly
cm9yLWJhc2VkIGVkaXRvciBiaW5kaW5ncyBmb3IgSG9tZSBhbmQgRW5kIGRvbid0IG1hdGNoIHN5
c3RlbSBiZWhhdmlvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlLmpzIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlLmpzCmlu
ZGV4IGZhMWI2NWRlLi41ZGY2ZmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9IZWFwU25hcHNob3REYXRhR3JpZFRyZWUuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdy
aWRUcmVlLmpzCkBAIC00MCw2ICs0MCw3IEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3REYXRh
R3JpZFRyZWUgPSBjbGFzcyBIZWFwU25hcHNob3REYXRhR3JpZFRyZWUgZXh0ZW5kcyBXCiAgICAg
ICAgIHRoaXMuX3Zpc2libGUgPSBmYWxzZTsKICAgICAgICAgdGhpcy5fcG9wb3ZlciA9IG51bGw7
CiAgICAgICAgIHRoaXMuX3BvcG92ZXJOb2RlID0gbnVsbDsKKyAgICAgICAgdGhpcy5fcG9wb3Zl
clRhcmdldEVsZW1lbnQgPSBudWxsOwogCiAgICAgICAgIHRoaXMucG9wdWxhdGVUb3BMZXZlbCgp
OwogICAgIH0KQEAgLTY5LDI5ICs3MCwyNSBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90RGF0
YUdyaWRUcmVlID0gY2xhc3MgSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlIGV4dGVuZHMgVwogCiAg
ICAgZ2V0IGhlYXBTbmFwc2hvdCgpIHsgcmV0dXJuIHRoaXMuX2hlYXBTbmFwc2hvdDsgfQogCi0g
ICAgZ2V0IHZpc2libGUoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7Ci0g
ICAgfQorICAgIGdldCB2aXNpYmxlKCkgeyByZXR1cm4gdGhpcy5fdmlzaWJsZTsgfQorICAgIGdl
dCBwb3BvdmVyTm9kZSgpIHsgcmV0dXJuIHRoaXMuX3BvcG92ZXJOb2RlOyB9CisgICAgc2V0IHBv
cG92ZXJOb2RlKHgpIHsgdGhpcy5fcG9wb3Zlck5vZGUgPSB4OyB9CisgICAgZ2V0IHBvcG92ZXJU
YXJnZXRFbGVtZW50KCkgeyByZXR1cm4gdGhpcy5fcG9wb3ZlclRhcmdldEVsZW1lbnQ7IH0KKyAg
ICBzZXQgcG9wb3ZlclRhcmdldEVsZW1lbnQoeCkgeyB0aGlzLl9wb3BvdmVyVGFyZ2V0RWxlbWVu
dCA9IHg7IH0KIAogICAgIGdldCBwb3BvdmVyKCkKICAgICB7Ci0gICAgICAgIGlmICghdGhpcy5f
cG9wb3ZlcikKKyAgICAgICAgaWYgKCF0aGlzLl9wb3BvdmVyKSB7CiAgICAgICAgICAgICB0aGlz
Ll9wb3BvdmVyID0gbmV3IFdlYkluc3BlY3Rvci5Qb3BvdmVyKHRoaXMpOworICAgICAgICAgICAg
dGhpcy5fcG9wb3Zlci53aW5kb3dSZXNpemVIYW5kbGVyID0gKCkgPT4geworICAgICAgICAgICAg
ICAgIGxldCBib3VuZHMgPSBXZWJJbnNwZWN0b3IuUmVjdC5yZWN0RnJvbUNsaWVudFJlY3QodGhp
cy5fcG9wb3ZlclRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpOworICAgICAg
ICAgICAgICAgIHRoaXMuX3BvcG92ZXIucHJlc2VudChib3VuZHMucGFkKDIpLCBbV2ViSW5zcGVj
dG9yLlJlY3RFZGdlLk1BWF9ZLCBXZWJJbnNwZWN0b3IuUmVjdEVkZ2UuTUlOX1ksIFdlYkluc3Bl
Y3Rvci5SZWN0RWRnZS5NQVhfWF0pOworICAgICAgICAgICAgfTsKKyAgICAgICAgfQogCiAgICAg
ICAgIHJldHVybiB0aGlzLl9wb3BvdmVyOwogICAgIH0KIAotICAgIGdldCBwb3BvdmVyTm9kZSgp
Ci0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5fcG9wb3Zlck5vZGU7Ci0gICAgfQotCi0gICAg
c2V0IHBvcG92ZXJOb2RlKHgpCi0gICAgewotICAgICAgICB0aGlzLl9wb3BvdmVyTm9kZSA9IHg7
Ci0gICAgfQotCiAgICAgZ2V0IGNoaWxkcmVuKCkKICAgICB7CiAgICAgICAgIHJldHVybiB0aGlz
Ll9jaGlsZHJlbjsKQEAgLTE1Miw2ICsxNDksNyBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90
RGF0YUdyaWRUcmVlID0gY2xhc3MgSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlIGV4dGVuZHMgVwog
ICAgIHdpbGxEaXNtaXNzUG9wb3Zlcihwb3BvdmVyKQogICAgIHsKICAgICAgICAgdGhpcy5fcG9w
b3Zlck5vZGUgPSBudWxsOworICAgICAgICB0aGlzLl9wb3BvdmVyVGFyZ2V0RWxlbWVudCA9IG51
bGw7CiAgICAgfQogCiAgICAgLy8gUHJvdGVjdGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9IZWFwU25hcHNob3RJbnN0YW5jZURhdGFHcmlk
Tm9kZS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBT
bmFwc2hvdEluc3RhbmNlRGF0YUdyaWROb2RlLmpzCmluZGV4IDg3MWNkMWMuLmQyZjFhN2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBT
bmFwc2hvdEluc3RhbmNlRGF0YUdyaWROb2RlLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdEluc3RhbmNlRGF0YUdyaWROb2RlLmpz
CkBAIC0zMjIsNiArMzIyLDcgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEluc3RhbmNlRGF0
YUdyaWROb2RlID0gY2xhc3MgSGVhcFNuYXBzaG90SW5zdGFuY2VEYXRhR3IKICAgICAgICAgICAg
IHJldHVybjsKIAogICAgICAgICB0aGlzLl90cmVlLnBvcG92ZXJOb2RlID0gdGhpcy5fbm9kZTsK
KyAgICAgICAgdGhpcy5fdHJlZS5wb3BvdmVyVGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldDsK
IAogICAgICAgICBsZXQgcG9wb3ZlckNvbnRlbnRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7CiAgICAgICAgIHBvcG92ZXJDb250ZW50RWxlbWVudC5jbGFzc0xpc3QuYWRk
KCJoZWFwLXNuYXBzaG90IiwgImhlYXAtc25hcHNob3QtaW5zdGFuY2UtcG9wb3Zlci1jb250ZW50
Iik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9JbmxpbmVTd2F0Y2guanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9JbmxpbmVTd2F0Y2guanMKaW5kZXggNDRiZmQ3ZC4uZDZlMzY4YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvSW5saW5lU3dhdGNoLmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0lubGluZVN3
YXRjaC5qcwpAQCAtMTM0LDYgKzEzNCwxMSBAQCBXZWJJbnNwZWN0b3IuSW5saW5lU3dhdGNoID0g
Y2xhc3MgSW5saW5lU3dhdGNoIGV4dGVuZHMgV2ViSW5zcGVjdG9yLk9iamVjdAogICAgICAgICBs
ZXQgYm91bmRzID0gV2ViSW5zcGVjdG9yLlJlY3QucmVjdEZyb21DbGllbnRSZWN0KHRoaXMuX3N3
YXRjaEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpOwogICAgICAgICBsZXQgcG9wb3Zl
ciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9wb3Zlcih0aGlzKTsKIAorICAgICAgICBwb3BvdmVyLndp
bmRvd1Jlc2l6ZUhhbmRsZXIgPSAoKSA9PiB7CisgICAgICAgICAgICBsZXQgYm91bmRzID0gV2Vi
SW5zcGVjdG9yLlJlY3QucmVjdEZyb21DbGllbnRSZWN0KHRoaXMuX3N3YXRjaEVsZW1lbnQuZ2V0
Qm91bmRpbmdDbGllbnRSZWN0KCkpOworICAgICAgICAgICAgcG9wb3Zlci5wcmVzZW50KGJvdW5k
cy5wYWQoMiksIFtXZWJJbnNwZWN0b3IuUmVjdEVkZ2UuTUlOX1hdKTsKKyAgICAgICAgfTsKKwog
ICAgICAgICB0aGlzLl92YWx1ZUVkaXRvciA9IG51bGw7CiAgICAgICAgIGlmICh0aGlzLl90eXBl
ID09PSBXZWJJbnNwZWN0b3IuSW5saW5lU3dhdGNoLlR5cGUuQmV6aWVyKSB7CiAgICAgICAgICAg
ICB0aGlzLl92YWx1ZUVkaXRvciA9IG5ldyBXZWJJbnNwZWN0b3IuQmV6aWVyRWRpdG9yOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0xheWVyVHJlZURldGFpbHNTaWRlYmFyUGFuZWwuanMKaW5kZXggMzJlNjVj
MC4uZmE1NjIyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9MYXllclRyZWVEZXRhaWxzU2lkZWJhclBh
bmVsLmpzCkBAIC0zNSw4ICszNSw2IEBAIFdlYkluc3BlY3Rvci5MYXllclRyZWVEZXRhaWxzU2lk
ZWJhclBhbmVsID0gY2xhc3MgTGF5ZXJUcmVlRGV0YWlsc1NpZGViYXJQYW5lbCBlCiAKICAgICAg
ICAgV2ViSW5zcGVjdG9yLnNob3dTaGFkb3dET01TZXR0aW5nLmFkZEV2ZW50TGlzdGVuZXIoV2Vi
SW5zcGVjdG9yLlNldHRpbmcuRXZlbnQuQ2hhbmdlZCwgdGhpcy5fc2hvd1NoYWRvd0RPTVNldHRp
bmdDaGFuZ2VkLCB0aGlzKTsKIAotICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVz
aXplIiwgdGhpcy5fd2luZG93UmVzaXplZC5iaW5kKHRoaXMpKTsKLQogICAgICAgICB0aGlzLl9i
dWlsZExheWVySW5mb1NlY3Rpb24oKTsKICAgICAgICAgdGhpcy5fYnVpbGREYXRhR3JpZFNlY3Rp
b24oKTsKICAgICAgICAgdGhpcy5fYnVpbGRCb3R0b21CYXIoKTsKQEAgLTkzLDEyICs5MSw2IEBA
IFdlYkluc3BlY3Rvci5MYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVsID0gY2xhc3MgTGF5ZXJU
cmVlRGV0YWlsc1NpZGViYXJQYW5lbCBlCiAgICAgICAgICAgICB0aGlzLl91cGRhdGVEaXNwbGF5
V2l0aExheWVycyh0aGlzLl9sYXllckZvck5vZGUsIHRoaXMuX3VuZmlsdGVyZWRDaGlsZExheWVy
cyk7CiAgICAgfQogCi0gICAgX3dpbmRvd1Jlc2l6ZWQoZXZlbnQpCi0gICAgewotICAgICAgICBp
ZiAodGhpcy5fcG9wb3ZlciAmJiB0aGlzLl9wb3BvdmVyLnZpc2libGUpCi0gICAgICAgICAgICB0
aGlzLl91cGRhdGVQb3BvdmVyRm9yU2VsZWN0ZWROb2RlKCk7Ci0gICAgfQotCiAgICAgX2J1aWxk
TGF5ZXJJbmZvU2VjdGlvbigpCiAgICAgewogICAgICAgICB2YXIgcm93cyA9IHRoaXMuX2xheWVy
SW5mb1Jvd3MgPSB7fTsKQEAgLTMzMiw4ICszMjQsMTAgQEAgV2ViSW5zcGVjdG9yLkxheWVyVHJl
ZURldGFpbHNTaWRlYmFyUGFuZWwgPSBjbGFzcyBMYXllclRyZWVEZXRhaWxzU2lkZWJhclBhbmVs
IGUKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB2YXIgcG9wb3ZlciA9IHRoaXMuX3Bv
cG92ZXI7Ci0gICAgICAgIGlmICghcG9wb3ZlcikKKyAgICAgICAgaWYgKCFwb3BvdmVyKSB7CiAg
ICAgICAgICAgICBwb3BvdmVyID0gdGhpcy5fcG9wb3ZlciA9IG5ldyBXZWJJbnNwZWN0b3IuUG9w
b3ZlcjsKKyAgICAgICAgICAgIHBvcG92ZXIud2luZG93UmVzaXplSGFuZGxlciA9ICgpID0+IHsg
dGhpcy5fdXBkYXRlUG9wb3ZlckZvclNlbGVjdGVkTm9kZSgpOyB9OworICAgICAgICB9CiAKICAg
ICAgICAgdmFyIHRhcmdldEZyYW1lID0gV2ViSW5zcGVjdG9yLlJlY3QucmVjdEZyb21DbGllbnRS
ZWN0KGRhdGFHcmlkTm9kZS5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUG9wb3Zl
ci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1BvcG92ZXIu
anMKaW5kZXggYThhYTBmMy4uNjkxMWIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUG9wb3Zlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Qb3BvdmVyLmpzCkBAIC0zNiw2ICszNiw3IEBAIFdl
Ykluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3MgUG9wb3ZlciBleHRlbmRzIFdlYkluc3BlY3Rvci5P
YmplY3QKICAgICAgICAgdGhpcy5fdGFyZ2V0RnJhbWUgPSBuZXcgV2ViSW5zcGVjdG9yLlJlY3Q7
CiAgICAgICAgIHRoaXMuX2FuY2hvclBvaW50ID0gbmV3IFdlYkluc3BlY3Rvci5Qb2ludDsKICAg
ICAgICAgdGhpcy5fcHJlZmVycmVkRWRnZXMgPSBudWxsOworICAgICAgICB0aGlzLl9yZXNpemVI
YW5kbGVyID0gbnVsbDsKIAogICAgICAgICB0aGlzLl9jb250ZW50TmVlZHNVcGRhdGUgPSBmYWxz
ZTsKICAgICAgICAgdGhpcy5fZGlzbWlzc2luZyA9IGZhbHNlOwpAQCAtOTAsNiArOTEsMTIgQEAg
V2ViSW5zcGVjdG9yLlBvcG92ZXIgPSBjbGFzcyBQb3BvdmVyIGV4dGVuZHMgV2ViSW5zcGVjdG9y
Lk9iamVjdAogICAgICAgICAgICAgdGhpcy5fdXBkYXRlKHRydWUpOwogICAgIH0KIAorICAgIHNl
dCB3aW5kb3dSZXNpemVIYW5kbGVyKHJlc2l6ZUhhbmRsZXIpCisgICAgeworICAgICAgICBjb25z
b2xlLmFzc2VydCh0eXBlb2YgcmVzaXplSGFuZGxlciA9PT0gImZ1bmN0aW9uIik7CisgICAgICAg
IHRoaXMuX3Jlc2l6ZUhhbmRsZXIgPSByZXNpemVIYW5kbGVyOworICAgIH0KKwogICAgIHVwZGF0
ZShzaG91bGRBbmltYXRlID0gdHJ1ZSkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy52aXNpYmxl
KQpAQCAtMTQyLDYgKzE0OSw3IEBAIFdlYkluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3MgUG9wb3Zl
ciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICAgICAgdGhpcy5faXNMaXN0ZW5pbmdG
b3JQb3BvdmVyRXZlbnRzID0gZmFsc2U7CiAgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3Rl
bmVyKCJtb3VzZWRvd24iLCB0aGlzLCB0cnVlKTsKICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50
TGlzdGVuZXIoInNjcm9sbCIsIHRoaXMsIHRydWUpOworICAgICAgICB3aW5kb3cucmVtb3ZlRXZl
bnRMaXN0ZW5lcigicmVzaXplIiwgdGhpcywgdHJ1ZSk7CiAKICAgICAgICAgdGhpcy5fZWxlbWVu
dC5jbGFzc0xpc3QuYWRkKFdlYkluc3BlY3Rvci5Qb3BvdmVyLkZhZGVPdXRDbGFzc05hbWUpOwog
CkBAIC0xNTcsNiArMTY1LDEwIEBAIFdlYkluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3MgUG9wb3Zl
ciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICAgICAgICAgIGlmICghdGhpcy5fZWxl
bWVudC5jb250YWlucyhldmVudC50YXJnZXQpICYmICFldmVudC50YXJnZXQuZW5jbG9zaW5nTm9k
ZU9yU2VsZldpdGhDbGFzcyhXZWJJbnNwZWN0b3IuUG9wb3Zlci5JZ25vcmVBdXRvRGlzbWlzc0Ns
YXNzTmFtZSkpCiAgICAgICAgICAgICAgICAgdGhpcy5kaXNtaXNzKCk7CiAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSAicmVzaXplIjoKKyAgICAgICAgICAgIGlmICh0aGlzLl9yZXNp
emVIYW5kbGVyKQorICAgICAgICAgICAgICAgIHRoaXMuX3Jlc2l6ZUhhbmRsZXIoKTsKKyAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlICJ0cmFuc2l0aW9uZW5kIjoKICAgICAgICAgICAg
IGlmIChldmVudC50YXJnZXQgPT09IHRoaXMuX2VsZW1lbnQpIHsKICAgICAgICAgICAgICAgICBk
b2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMuX2VsZW1lbnQpOwpAQCAtMTY4LDYgKzE4MCw3
IEBAIFdlYkluc3BlY3Rvci5Qb3BvdmVyID0gY2xhc3MgUG9wb3ZlciBleHRlbmRzIFdlYkluc3Bl
Y3Rvci5PYmplY3QKICAgICAgICAgICAgICAgICB0aGlzLl9kaXNtaXNzaW5nID0gZmFsc2U7CiAg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgfQogICAgIH0KIApAQCAtNTQ5LDYgKzU2Miw3IEBAIFdlYkluc3BlY3Rvci5Qb3Bv
dmVyID0gY2xhc3MgUG9wb3ZlciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICAgICAg
ICAgIHRoaXMuX2lzTGlzdGVuaW5nRm9yUG9wb3ZlckV2ZW50cyA9IHRydWU7CiAgICAgICAgICAg
ICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIiwgdGhpcywgdHJ1ZSk7CiAgICAg
ICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIiwgdGhpcywgdHJ1ZSk7Cisg
ICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwgdGhpcywgdHJ1ZSk7
CiAgICAgICAgIH0KICAgICB9CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvUHJvYmVTZXREZXRhaWxzU2VjdGlvbi5qcyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Byb2JlU2V0RGV0YWlsc1NlY3Rpb24u
anMKaW5kZXggZDhiNzIyNC4uNWIyYmM3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUHJvYmVTZXREZXRhaWxzU2VjdGlvbi5qcworKysgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Qcm9iZVNldERldGFpbHNT
ZWN0aW9uLmpzCkBAIC0xMzEsNiArMTMxLDEwIEBAIFdlYkluc3BlY3Rvci5Qcm9iZVNldERldGFp
bHNTZWN0aW9uID0gY2xhc3MgUHJvYmVTZXREZXRhaWxzU2VjdGlvbiBleHRlbmRzIFdlYkluCiAg
ICAgICAgIHBvcG92ZXIuY29udGVudCA9IGNvbnRlbnQ7CiAgICAgICAgIGxldCB0YXJnZXQgPSBX
ZWJJbnNwZWN0b3IuUmVjdC5yZWN0RnJvbUNsaWVudFJlY3QoZXZlbnQudGFyZ2V0LmVsZW1lbnQu
Z2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpOwogICAgICAgICBwb3BvdmVyLnByZXNlbnQodGFyZ2V0
LCBbV2ViSW5zcGVjdG9yLlJlY3RFZGdlLk1BWF9ZLCBXZWJJbnNwZWN0b3IuUmVjdEVkZ2UuTUlO
X1ksIFdlYkluc3BlY3Rvci5SZWN0RWRnZS5NQVhfWF0pOworICAgICAgICBwb3BvdmVyLndpbmRv
d1Jlc2l6ZUhhbmRsZXIgPSAoKSA9PiB7CisgICAgICAgICAgICBsZXQgdGFyZ2V0ID0gV2ViSW5z
cGVjdG9yLlJlY3QucmVjdEZyb21DbGllbnRSZWN0KGV2ZW50LnRhcmdldC5lbGVtZW50LmdldEJv
dW5kaW5nQ2xpZW50UmVjdCgpKTsKKyAgICAgICAgICAgIHBvcG92ZXIucHJlc2VudCh0YXJnZXQs
IFtXZWJJbnNwZWN0b3IuUmVjdEVkZ2UuTUFYX1ksIFdlYkluc3BlY3Rvci5SZWN0RWRnZS5NSU5f
WSwgV2ViSW5zcGVjdG9yLlJlY3RFZGdlLk1BWF9YXSk7ICAgICAgICAgICAgCisgICAgICAgIH07
CiAgICAgICAgIHRleHRCb3guc2VsZWN0KCk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TY29wZUNoYWluRGV0YWlsc1NpZGVi
YXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Nj
b3BlQ2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDIxMWE2MDguLjJjYzdkNzYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Njb3Bl
Q2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL1Njb3BlQ2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0z
NjgsMTEgKzM2OCw5IEBAIFdlYkluc3BlY3Rvci5TY29wZUNoYWluRGV0YWlsc1NpZGViYXJQYW5l
bCA9IGNsYXNzIFNjb3BlQ2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsCiAgICAgICAgICAgICB9CiAg
ICAgICAgIH0pOwogCi0gICAgICAgIC8vIFJlcG9zaXRpb24gdGhlIHBvcG92ZXIgd2hlbiB0aGUg
d2luZG93IHJlc2l6ZXMuCi0gICAgICAgIHRoaXMuX3dpbmRvd1Jlc2l6ZUxpc3RlbmVyID0gcHJl
c2VudFBvcG92ZXJPdmVyVGFyZ2V0RWxlbWVudDsKLSAgICAgICAgd2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoInJlc2l6ZSIsIHRoaXMuX3dpbmRvd1Jlc2l6ZUxpc3RlbmVyKTsKLQogICAgICAgICBw
b3BvdmVyLmNvbnRlbnQgPSBjb250ZW50OworCisgICAgICAgIHBvcG92ZXIud2luZG93UmVzaXpl
SGFuZGxlciA9IHByZXNlbnRQb3BvdmVyT3ZlclRhcmdldEVsZW1lbnQ7CiAgICAgICAgIHByZXNl
bnRQb3BvdmVyT3ZlclRhcmdldEVsZW1lbnQoKTsKIAogICAgICAgICAvLyBDb2RlTWlycm9yIG5l
ZWRzIGEgcmVmcmVzaCBhZnRlciB0aGUgcG9wb3ZlciBkaXNwbGF5cywgdG8gbGF5b3V0LCBvdGhl
cndpc2UgaXQgZG9lc24ndCBhcHBlYXIuCkBAIC0zOTEsOCArMzg5LDYgQEAgV2ViSW5zcGVjdG9y
LlNjb3BlQ2hhaW5EZXRhaWxzU2lkZWJhclBhbmVsID0gY2xhc3MgU2NvcGVDaGFpbkRldGFpbHNT
aWRlYmFyUGFuZWwKICAgICAgICAgICAgICAgICB0aGlzLl9hZGRXYXRjaEV4cHJlc3Npb24oZXhw
cmVzc2lvbik7CiAgICAgICAgIH0KIAotICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5l
cigicmVzaXplIiwgdGhpcy5fd2luZG93UmVzaXplTGlzdGVuZXIpOwotICAgICAgICB0aGlzLl93
aW5kb3dSZXNpemVMaXN0ZW5lciA9IG51bGw7CiAgICAgICAgIHRoaXMuX2NvZGVNaXJyb3IgPSBu
dWxsOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvVGltZWxpbmVEYXRhR3JpZC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL1RpbWVsaW5lRGF0YUdyaWQuanMKaW5kZXggY2YxMjJkMi4uMDFm
MTEyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvVGltZWxpbmVEYXRhR3JpZC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9UaW1lbGluZURhdGFHcmlkLmpzCkBAIC01Nyw4ICs1Nyw2IEBAIFdlYklu
c3BlY3Rvci5UaW1lbGluZURhdGFHcmlkID0gY2xhc3MgVGltZWxpbmVEYXRhR3JpZCBleHRlbmRz
IFdlYkluc3BlY3Rvci5EYXRhCiAgICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNw
ZWN0b3IuRGF0YUdyaWQuRXZlbnQuU2VsZWN0ZWROb2RlQ2hhbmdlZCwgdGhpcy5fZGF0YUdyaWRT
ZWxlY3RlZE5vZGVDaGFuZ2VkLCB0aGlzKTsKICAgICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVy
KFdlYkluc3BlY3Rvci5EYXRhR3JpZC5FdmVudC5Tb3J0Q2hhbmdlZCwgdGhpcy5fc29ydCwgdGhp
cyk7CiAKLSAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsIHRoaXMpOwot
CiAgICAgICAgIHRoaXMuY29sdW1uQ2hvb3NlckVuYWJsZWQgPSB0cnVlOwogICAgIH0KIApAQCAt
MTI0LDExICsxMjIsNiBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZCA9IGNsYXNzIFRp
bWVsaW5lRGF0YUdyaWQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuRGF0YQogICAgICAgICB0aGlzLl9o
aWRlUG9wb3ZlcigpOwogICAgIH0KIAotICAgIGNsb3NlZCgpCi0gICAgewotICAgICAgICB3aW5k
b3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIiwgdGhpcyk7Ci0gICAgfQotCiAgICAgdHJl
ZUVsZW1lbnRGb3JEYXRhR3JpZE5vZGUoZGF0YUdyaWROb2RlKQogICAgIHsKICAgICAgICAgaWYg
KCF0aGlzLl90cmVlT3V0bGluZURhdGFHcmlkU3luY2hyb25pemVyKQpAQCAtMTkzLDEzICsxODYs
NiBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZCA9IGNsYXNzIFRpbWVsaW5lRGF0YUdy
aWQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuRGF0YQogCiAgICAgLy8gUHJvdGVjdGVkCiAKLSAgICBo
YW5kbGVFdmVudChldmVudCkKLSAgICB7Ci0gICAgICAgIGNvbnNvbGUuYXNzZXJ0KGV2ZW50LnR5
cGUgPT09ICJyZXNpemUiKTsKLQotICAgICAgICB0aGlzLl93aW5kb3dSZXNpemVkKGV2ZW50KTsK
LSAgICB9Ci0KICAgICBkYXRhR3JpZE5vZGVOZWVkc1JlZnJlc2goZGF0YUdyaWROb2RlKQogICAg
IHsKICAgICAgICAgaWYgKCF0aGlzLl9kaXJ0eURhdGFHcmlkTm9kZXMpCkBAIC00NDEsMjAgKzQy
NywxNiBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVEYXRhR3JpZCA9IGNsYXNzIFRpbWVsaW5lRGF0
YUdyaWQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuRGF0YQogICAgICAgICB0aGlzLl9zaG93UG9wb3Zl
ckZvclNlbGVjdGVkTm9kZVNvb24oKTsKICAgICB9CiAKLSAgICBfd2luZG93UmVzaXplZChldmVu
dCkKLSAgICB7Ci0gICAgICAgIGlmICh0aGlzLl9wb3BvdmVyICYmIHRoaXMuX3BvcG92ZXIudmlz
aWJsZSkKLSAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVBvcG92ZXJGb3JTZWxlY3RlZE5vZGUoZmFs
c2UpOwotICAgIH0KLQogICAgIF9zaG93UG9wb3ZlckZvclNlbGVjdGVkTm9kZVNvb24oKQogICAg
IHsKICAgICAgICAgaWYgKHRoaXMuX3Nob3dQb3BvdmVyVGltZW91dCkKICAgICAgICAgICAgIHJl
dHVybjsKIAogICAgICAgICB0aGlzLl9zaG93UG9wb3ZlclRpbWVvdXQgPSBzZXRUaW1lb3V0KCgp
ID0+IHsKLSAgICAgICAgICAgIGlmICghdGhpcy5fcG9wb3ZlcikKKyAgICAgICAgICAgIGlmICgh
dGhpcy5fcG9wb3ZlcikgewogICAgICAgICAgICAgICAgIHRoaXMuX3BvcG92ZXIgPSBuZXcgV2Vi
SW5zcGVjdG9yLlBvcG92ZXI7CisgICAgICAgICAgICAgICAgdGhpcy5fcG9wb3Zlci53aW5kb3dS
ZXNpemVIYW5kbGVyID0gKCkgPT4geyB0aGlzLl91cGRhdGVQb3BvdmVyRm9yU2VsZWN0ZWROb2Rl
KGZhbHNlKTsgfTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVBvcG92
ZXJGb3JTZWxlY3RlZE5vZGUodHJ1ZSk7CiAgICAgICAgICAgICB0aGlzLl9zaG93UG9wb3ZlclRp
bWVvdXQgPSB1bmRlZmluZWQ7CiAgICAgICAgIH0sIFdlYkluc3BlY3Rvci5UaW1lbGluZURhdGFH
cmlkLkRlbGF5ZWRQb3BvdmVyU2hvd1RpbWVvdXQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVQcm9wZXJ0eUVkaXRvci5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Zpc3VhbFN0eWxl
UHJvcGVydHlFZGl0b3IuanMKaW5kZXggMmM2Mzk4My4uZDM2MzE4ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlzdWFsU3R5bGVQcm9wZXJ0
eUVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9WaXN1YWxTdHlsZVByb3BlcnR5RWRpdG9yLmpzCkBAIC02MDEsNiArNjAxLDEwIEBAIFdlYklu
c3BlY3Rvci5WaXN1YWxTdHlsZVByb3BlcnR5RWRpdG9yID0gY2xhc3MgVmlzdWFsU3R5bGVQcm9w
ZXJ0eUVkaXRvciBleHRlbmRzCiAgICAgICAgIGxldCBwb3BvdmVyID0gbmV3IFdlYkluc3BlY3Rv
ci5Qb3BvdmVyKHRoaXMpOwogICAgICAgICBwb3BvdmVyLmNvbnRlbnQgPSBwcm9wZXJ0eUluZm9F
bGVtZW50OwogICAgICAgICBwb3BvdmVyLnByZXNlbnQoYm91bmRzLnBhZCgyKSwgW1dlYkluc3Bl
Y3Rvci5SZWN0RWRnZS5NSU5fWV0pOworICAgICAgICBwb3BvdmVyLndpbmRvd1Jlc2l6ZUhhbmRs
ZXIgPSAoKSA9PiB7CisgICAgICAgICAgICBsZXQgYm91bmRzID0gV2ViSW5zcGVjdG9yLlJlY3Qu
cmVjdEZyb21DbGllbnRSZWN0KHRoaXMuX3RpdGxlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJl
Y3QoKSk7CisgICAgICAgICAgICBwb3BvdmVyLnByZXNlbnQoYm91bmRzLnBhZCgyKSwgW1dlYklu
c3BlY3Rvci5SZWN0RWRnZS5NSU5fWV0pOworICAgICAgICB9OwogICAgIH0KIAogICAgIF90b2dn
bGVUYWJiaW5nT2ZTZWxlY3RhYmxlRWxlbWVudHMoZGlzYWJsZWQpCg==
</data>
<flag name="review"
          id="308487"
          type_id="1"
          status="+"
          setter="bburg"
    />
          </attachment>
      

    </bug>

</bugzilla>