<?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>143914</bug_id>
          
          <creation_ts>2015-04-17 22:17:35 -0700</creation_ts>
          <short_desc>Web Inspector: Pass multiple arguments to classList.add and classList.remove</short_desc>
          <delta_ts>2015-04-18 21:21:56 -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>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>DoNotImportToRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikita Vasilyev">nvasilyev</reporter>
          <assigned_to name="Nikita Vasilyev">nvasilyev</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>jonowells</cc>
    
    <cc>mattbaker</cc>
    
    <cc>nvasilyev</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1086523</commentid>
    <comment_count>0</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2015-04-17 22:17:35 -0700</bug_when>
    <thetext>To make code more brief, instead of:

    for (var i = 0; i &lt; this._classNames.length; ++i)
        this._listItemNode.classList.add(this._classNames[i]);

We should use:

    this._listItemNode.classList.add(...this._classNames);

And instead of:

    document.body.classList.remove(&quot;docked&quot;);
    document.body.classList.remove(&quot;right&quot;);
    document.body.classList.remove(&quot;bottom&quot;);

We should use:

    document.body.classList.remove(&quot;docked&quot;, &quot;right&quot;, &quot;bottom&quot;);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086524</commentid>
    <comment_count>1</comment_count>
      <attachid>251083</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2015-04-17 22:22:19 -0700</bug_when>
    <thetext>Created attachment 251083
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086542</commentid>
    <comment_count>2</comment_count>
      <attachid>251083</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2015-04-18 04:53:08 -0700</bug_when>
    <thetext>Comment on attachment 251083
Patch

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

&gt; Source/WebInspectorUI/UserInterface/Views/DetailsSection.js:35
&gt; +        this._element.classList.add(identifier, WebInspector.DetailsSection.StyleClassName);

You could inline and remove the StyleClassName constant. We have started doing that in new code.

&gt; Source/WebInspectorUI/UserInterface/Views/GeneralTreeElement.js:80
&gt; +            this._listItemNode.classList.remove(...this._classNames);

Nice!

&gt; Source/WebInspectorUI/UserInterface/Views/ResourceContentView.js:35
&gt; +    this.element.classList.add(styleClassName, WebInspector.ResourceContentView.StyleClassName);

Ditto about StyleClassName.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086607</commentid>
    <comment_count>3</comment_count>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2015-04-18 19:23:39 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 251083 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=251083&amp;action=review
&gt; 
&gt; &gt; Source/WebInspectorUI/UserInterface/Views/DetailsSection.js:35
&gt; &gt; +        this._element.classList.add(identifier, WebInspector.DetailsSection.StyleClassName);
&gt; 
&gt; You could inline and remove the StyleClassName constant. We have started
&gt; doing that in new code.
&gt; 
&gt; &gt; Source/WebInspectorUI/UserInterface/Views/GeneralTreeElement.js:80
&gt; &gt; +            this._listItemNode.classList.remove(...this._classNames);
&gt; 
&gt; Nice!
&gt; 
&gt; &gt; Source/WebInspectorUI/UserInterface/Views/ResourceContentView.js:35
&gt; &gt; +    this.element.classList.add(styleClassName, WebInspector.ResourceContentView.StyleClassName);
&gt; 
&gt; Ditto about StyleClassName.

Besides these two, there are dozens of constants that are used only for CSS classes. They should probably be inlined in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086608</commentid>
    <comment_count>4</comment_count>
      <attachid>251107</attachid>
    <who name="Nikita Vasilyev">nvasilyev</who>
    <bug_when>2015-04-18 19:25:32 -0700</bug_when>
    <thetext>Created attachment 251107
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086616</commentid>
    <comment_count>5</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2015-04-18 20:29:20 -0700</bug_when>
    <thetext>You don&apos;t/can&apos;t set r+ if you put the reviewers name in the ChangeLog. You can also set cq+ yourself since you are a commiter of you got a r+ on a previous version and there were only minor tweaks needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086625</commentid>
    <comment_count>6</comment_count>
      <attachid>251107</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-18 21:21:51 -0700</bug_when>
    <thetext>Comment on attachment 251107
Patch

Clearing flags on attachment: 251107

Committed r182990: &lt;http://trac.webkit.org/changeset/182990&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086626</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-18 21:21:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251083</attachid>
            <date>2015-04-17 22:22:19 -0700</date>
            <delta_ts>2015-04-18 19:25:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>16656</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDk5M2U3YzcuLmExNjQzOTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE1LTA0LTE3ICBOaWtpdGEgVmFzaWx5
ZXYgIDxudmFzaWx5ZXZAYXBwbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFBhc3Mg
bXVsdGlwbGUgYXJndW1lbnRzIHRvIGNsYXNzTGlzdC5hZGQgYW5kIGNsYXNzTGlzdC5yZW1vdmUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzkxNAor
CisgICAgICAgIGNsYXNzTGlzdC5hZGQgYW5kIGNsYXNzTGlzdC5yZW1vdmUgY2FuIGFjY2VwdCBt
dWx0aXBsZSBhcmd1bWVudHMsIHVzZSB0aGF0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9CYXNlL01haW4uanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IudXBkYXRlRG9ja2VkU3RhdGUpOgorICAgICAgICAqIFVzZXJJbnRl
cmZhY2UvVmlld3MvRE9NVHJlZURhdGFHcmlkLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRP
TVRyZWVEYXRhR3JpZCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0
bGluZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01UcmVlT3V0bGluZSk6CisgICAgICAg
ICogVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5EYXRhR3JpZE5vZGUucHJvdG90eXBlLnNldCBoYXNDaGlsZHJlbik6CisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9EYXRhYmFzZUNvbnRlbnRWaWV3LmpzOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkRhdGFiYXNlQ29udGVudFZpZXcpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmll
d3MvRGV0YWlsc1NlY3Rpb24uanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rp
b24pOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRGV0YWlsc1NlY3Rpb25Qcm9wZXJ0
aWVzUm93LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRldGFpbHNTZWN0aW9uUHJvcGVydGll
c1Jvdyk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9HZW5lcmFsVHJlZUVsZW1lbnQu
anM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuR2VuZXJhbFRyZWVFbGVtZW50LnByb3RvdHlwZS5z
ZXQgY2xhc3NOYW1lcyk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9u
SXRlbS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OYXZpZ2F0aW9uSXRlbSk6CisgICAgICAg
ICogVXNlckludGVyZmFjZS9WaWV3cy9SZXNvdXJjZUNvbnRlbnRWaWV3LmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlJlc291cmNlQ29udGVudFZpZXcpOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvVmlld3MvUmVzb3VyY2VUaW1lbGluZURhdGFHcmlkTm9kZS5qczoKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5SZXNvdXJjZVRpbWVsaW5lRGF0YUdyaWROb2RlLnByb3RvdHlwZS5jcmVhdGVDZWxs
Q29udGVudCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9TaWRlYmFyLmpzOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlNpZGViYXIpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmll
d3MvU2lkZWJhclBhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNpZGViYXJQYW5lbCk6
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVGV4dEVkaXRvci5qczoK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1RleHRFZGl0b3IuanM6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuVGV4dEVkaXRvcik6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9U
aW1lbGluZVJ1bGVyLmpzOgorCiAyMDE1LTA0LTE3ICBKb25vIFdlbGxzICA8am9ub3dlbGxzQGFw
cGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBBbGwgc2Fucy1zZXJpZiBmb250IGZh
bWlseSBydWxlcyBzaG91bGQgYmUgc2V0IHRoZSBzYW1lIHdheS4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qcyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qcwppbmRleCAxNWE3ZjI2Li42OTFl
YzA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNl
L01haW4uanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9N
YWluLmpzCkBAIC00NTcsMjcgKzQ1NywxOSBAQCBXZWJJbnNwZWN0b3IudXBkYXRlRG9ja2VkU3Rh
dGUgPSBmdW5jdGlvbihzaWRlKQogICAgIHRoaXMuX2lnbm9yZVRvb2xiYXJNb2RlRGlkQ2hhbmdl
RXZlbnRzID0gdHJ1ZTsKIAogICAgIGlmIChzaWRlID09PSAiYm90dG9tIikgewotICAgICAgICBk
b2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoImRvY2tlZCIpOwotICAgICAgICBkb2N1bWVudC5i
b2R5LmNsYXNzTGlzdC5hZGQoImJvdHRvbSIpOwotCi0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xh
c3NMaXN0LnJlbW92ZSgid2luZG93LWluYWN0aXZlIik7Ci0gICAgICAgIGRvY3VtZW50LmJvZHku
Y2xhc3NMaXN0LnJlbW92ZSgicmlnaHQiKTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xp
c3QuYWRkKCJkb2NrZWQiLCAiYm90dG9tIik7CisgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NM
aXN0LnJlbW92ZSgid2luZG93LWluYWN0aXZlIiwgInJpZ2h0Iik7CiAKICAgICAgICAgdGhpcy50
b29sYmFyLmRpc3BsYXlNb2RlID0gdGhpcy5fdG9vbGJhckRvY2tlZEJvdHRvbURpc3BsYXlNb2Rl
U2V0dGluZy52YWx1ZTsKICAgICAgICAgdGhpcy50b29sYmFyLnNpemVNb2RlID0gdGhpcy5fdG9v
bGJhckRvY2tlZEJvdHRvbVNpemVNb2RlU2V0dGluZy52YWx1ZTsKICAgICB9IGVsc2UgaWYgKHNp
ZGUgPT09ICJyaWdodCIpIHsKLSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCJk
b2NrZWQiKTsKLSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCJyaWdodCIpOwot
Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgid2luZG93LWluYWN0aXZl
Iik7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgiYm90dG9tIik7Cisg
ICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgiZG9ja2VkIiwgInJpZ2h0Iik7Cisg
ICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgid2luZG93LWluYWN0aXZlIiwg
ImJvdHRvbSIpOwogCiAgICAgICAgIHRoaXMudG9vbGJhci5kaXNwbGF5TW9kZSA9IHRoaXMuX3Rv
b2xiYXJEb2NrZWRSaWdodERpc3BsYXlNb2RlU2V0dGluZy52YWx1ZTsKICAgICAgICAgdGhpcy50
b29sYmFyLnNpemVNb2RlID0gdGhpcy5fdG9vbGJhckRvY2tlZFJpZ2h0U2l6ZU1vZGVTZXR0aW5n
LnZhbHVlOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJl
bW92ZSgiZG9ja2VkIik7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgi
cmlnaHQiKTsKLSAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCJib3R0b20i
KTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCJkb2NrZWQiLCAicmln
aHQiLCAiYm90dG9tIik7CiAKICAgICAgICAgdGhpcy50b29sYmFyLmRpc3BsYXlNb2RlID0gdGhp
cy5fdG9vbGJhclVuZG9ja2VkRGlzcGxheU1vZGVTZXR0aW5nLnZhbHVlOwogICAgICAgICB0aGlz
LnRvb2xiYXIuc2l6ZU1vZGUgPSB0aGlzLl90b29sYmFyVW5kb2NrZWRTaXplTW9kZVNldHRpbmcu
dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01UcmVlRGF0YUdyaWQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9ET01UcmVlRGF0YUdyaWQuanMKaW5kZXggYzkwMzFkMi4uYzQ0YzRiZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJl
ZURhdGFHcmlkLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0RPTVRyZWVEYXRhR3JpZC5qcwpAQCAtMzAsOCArMzAsNyBAQCBXZWJJbnNwZWN0b3IuRE9N
VHJlZURhdGFHcmlkID0gZnVuY3Rpb24oKSB7CiAKICAgICB0aGlzLl9wcmV2aW91c0hvdmVyZWRF
bGVtZW50ID0gbnVsbDsKIAotICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJkb20tdHJl
ZS1kYXRhLWdyaWQiKTsKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaW5saW5lIik7
CisgICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoImlubGluZSIsICJkb20tdHJlZS1kYXRh
LWdyaWQiKTsKIAogICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUi
LCB0aGlzLl9vbm1vdXNlbW92ZS5iaW5kKHRoaXMpLCBmYWxzZSk7CiAgICAgdGhpcy5lbGVtZW50
LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3V0IiwgdGhpcy5fb25tb3VzZW91dC5iaW5kKHRoaXMp
LCBmYWxzZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9ET01UcmVlT3V0bGluZS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RPTVRyZWVPdXRsaW5lLmpzCmluZGV4IGYxNjZjMmEuLjQ1MmIyNmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRy
ZWVPdXRsaW5lLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0RPTVRyZWVPdXRsaW5lLmpzCkBAIC00NSw4ICs0NSw3IEBAIFdlYkluc3BlY3Rvci5ET01U
cmVlT3V0bGluZSA9IGNsYXNzIERPTVRyZWVPdXRsaW5lIGV4dGVuZHMgV2ViSW5zcGVjdG9yLlRy
ZWVPdXRsCiAgICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsIHRoaXMuX29u
ZHJvcC5iaW5kKHRoaXMpLCBmYWxzZSk7CiAgICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5l
cigiZHJhZ2VuZCIsIHRoaXMuX29uZHJhZ2VuZC5iaW5kKHRoaXMpLCBmYWxzZSk7CiAKLSAgICAg
ICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJkb20tdHJlZS1vdXRsaW5lIik7Ci0gICAgICAgIGVs
ZW1lbnQuY2xhc3NMaXN0LmFkZChXZWJJbnNwZWN0b3IuU3ludGF4SGlnaGxpZ2h0ZWRTdHlsZUNs
YXNzTmFtZSk7CisgICAgICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiZG9tLXRyZWUtb3V0bGlu
ZSIsIFdlYkluc3BlY3Rvci5TeW50YXhIaWdobGlnaHRlZFN0eWxlQ2xhc3NOYW1lKTsKIAogICAg
ICAgICB0aGlzLl9pbmNsdWRlUm9vdERPTU5vZGUgPSAhb21pdFJvb3RET01Ob2RlOwogICAgICAg
ICB0aGlzLl9zZWxlY3RFbmFibGVkID0gc2VsZWN0RW5hYmxlZDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkLmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWQuanMKaW5kZXggOTkw
MDgwNi4uYzU3ZTZmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvRGF0YUdyaWQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvRGF0YUdyaWQuanMKQEAgLTE0NTQsOCArMTQ1NCw3IEBAIFdlYkluc3Bl
Y3Rvci5EYXRhR3JpZE5vZGUucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgICAgIGVsc2UK
ICAgICAgICAgewotICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJw
YXJlbnQiKTsKLSAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgiZXhw
YW5kZWQiKTsKKyAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgicGFy
ZW50IiwgImV4cGFuZGVkIik7CiAgICAgICAgIH0KICAgICB9LAogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhYmFzZUNvbnRlbnRWaWV3
LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YWJhc2VD
b250ZW50Vmlldy5qcwppbmRleCAyN2VhMGQ5Li5hNzg5MmJkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhYmFzZUNvbnRlbnRWaWV3Lmpz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFiYXNl
Q29udGVudFZpZXcuanMKQEAgLTI5LDkgKzI5LDcgQEAgV2ViSW5zcGVjdG9yLkRhdGFiYXNlQ29u
dGVudFZpZXcgPSBmdW5jdGlvbihyZXByZXNlbnRlZE9iamVjdCkKIAogICAgIHRoaXMuZGF0YWJh
c2UgPSByZXByZXNlbnRlZE9iamVjdDsKIAotICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRk
KCJzdG9yYWdlLXZpZXciKTsKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgicXVlcnki
KTsKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgibW9ub3NwYWNlIik7CisgICAgdGhp
cy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoInN0b3JhZ2UtdmlldyIsICJxdWVyeSIsICJtb25vc3Bh
Y2UiKTsKIAogICAgIHRoaXMuX3Byb21wdEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKICAgICB0aGlzLl9wcm9tcHRFbGVtZW50LmNsYXNzTmFtZSA9ICJkYXRhYmFzZS1x
dWVyeS1wcm9tcHQiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvRGV0YWlsc1NlY3Rpb24uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9EZXRhaWxzU2VjdGlvbi5qcwppbmRleCA5ZWNkYzdjLi5hNzY0MTk2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9E
ZXRhaWxzU2VjdGlvbi5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9EZXRhaWxzU2VjdGlvbi5qcwpAQCAtMzIsOCArMzIsNyBAQCBXZWJJbnNwZWN0b3Iu
RGV0YWlsc1NlY3Rpb24gPSBjbGFzcyBEZXRhaWxzU2VjdGlvbiBleHRlbmRzIFdlYkluc3BlY3Rv
ci5PYmplY3QKICAgICAgICAgY29uc29sZS5hc3NlcnQoaWRlbnRpZmllcik7CiAKICAgICAgICAg
dGhpcy5fZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICB0
aGlzLl9lbGVtZW50LmNsYXNzTmFtZSA9IFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvbi5TdHls
ZUNsYXNzTmFtZTsKLSAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGlkZW50aWZp
ZXIpOworICAgICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoaWRlbnRpZmllciwgV2Vi
SW5zcGVjdG9yLkRldGFpbHNTZWN0aW9uLlN0eWxlQ2xhc3NOYW1lKTsKIAogICAgICAgICB0aGlz
Ll9oZWFkZXJFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CiAgICAgICAg
IHRoaXMuX2hlYWRlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCB0aGlzLl9oZWFk
ZXJFbGVtZW50Q2xpY2tlZC5iaW5kKHRoaXMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RldGFpbHNTZWN0aW9uUHJvcGVydGllc1Jvdy5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RldGFpbHNTZWN0
aW9uUHJvcGVydGllc1Jvdy5qcwppbmRleCBhNGJkNGVjLi42YzI4MDA4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EZXRhaWxzU2VjdGlvblBy
b3BlcnRpZXNSb3cuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvRGV0YWlsc1NlY3Rpb25Qcm9wZXJ0aWVzUm93LmpzCkBAIC0yOSw4ICsyOSw3IEBAIFdl
Ykluc3BlY3Rvci5EZXRhaWxzU2VjdGlvblByb3BlcnRpZXNSb3cgPSBjbGFzcyBEZXRhaWxzU2Vj
dGlvblByb3BlcnRpZXNSb3cgZXh0CiAgICAgewogICAgICAgICBzdXBlcihlbXB0eU1lc3NhZ2Up
OwogCi0gICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJwcm9wZXJ0aWVzIik7Ci0g
ICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKFdlYkluc3BlY3Rvci5TeW50YXhIaWdo
bGlnaHRlZFN0eWxlQ2xhc3NOYW1lKTsKKyAgICAgICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5h
ZGQoInByb3BlcnRpZXMiLCBXZWJJbnNwZWN0b3IuU3ludGF4SGlnaGxpZ2h0ZWRTdHlsZUNsYXNz
TmFtZSk7CiAKICAgICAgICAgdGhpcy5wcm9wZXJ0aWVzU2VjdGlvbiA9IHByb3BlcnRpZXNTZWN0
aW9uOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0dlbmVyYWxUcmVlRWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0dlbmVyYWxUcmVlRWxlbWVudC5qcwppbmRleCA3YTE1ZjZkLi41
OGMyNDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9HZW5lcmFsVHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvR2VuZXJhbFRyZWVFbGVtZW50LmpzCkBAIC03Nyw4ICs3Nyw3IEBA
IFdlYkluc3BlY3Rvci5HZW5lcmFsVHJlZUVsZW1lbnQgPSBjbGFzcyBHZW5lcmFsVHJlZUVsZW1l
bnQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuCiAgICAgc2V0IGNsYXNzTmFtZXMoeCkKICAgICB7CiAg
ICAgICAgIGlmICh0aGlzLl9saXN0SXRlbU5vZGUgJiYgdGhpcy5fY2xhc3NOYW1lcykgewotICAg
ICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9jbGFzc05hbWVzLmxlbmd0aDsgKytp
KQotICAgICAgICAgICAgICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5jbGFzc0xpc3QucmVtb3ZlKHRo
aXMuX2NsYXNzTmFtZXNbaV0pOworICAgICAgICAgICAgdGhpcy5fbGlzdEl0ZW1Ob2RlLmNsYXNz
TGlzdC5yZW1vdmUoLi4udGhpcy5fY2xhc3NOYW1lcyk7CiAgICAgICAgIH0KIAogICAgICAgICBp
ZiAodHlwZW9mIHggPT09ICJzdHJpbmciKQpAQCAtODcsOCArODYsNyBAQCBXZWJJbnNwZWN0b3Iu
R2VuZXJhbFRyZWVFbGVtZW50ID0gY2xhc3MgR2VuZXJhbFRyZWVFbGVtZW50IGV4dGVuZHMgV2Vi
SW5zcGVjdG9yLgogICAgICAgICB0aGlzLl9jbGFzc05hbWVzID0geCB8fCBbXTsKIAogICAgICAg
ICBpZiAodGhpcy5fbGlzdEl0ZW1Ob2RlKSB7Ci0gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsg
aSA8IHRoaXMuX2NsYXNzTmFtZXMubGVuZ3RoOyArK2kpCi0gICAgICAgICAgICAgICAgdGhpcy5f
bGlzdEl0ZW1Ob2RlLmNsYXNzTGlzdC5hZGQodGhpcy5fY2xhc3NOYW1lc1tpXSk7CisgICAgICAg
ICAgICB0aGlzLl9saXN0SXRlbU5vZGUuY2xhc3NMaXN0LmFkZCguLi50aGlzLl9jbGFzc05hbWVz
KTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMjIyLDggKzIyMCw3IEBAIFdlYkluc3BlY3Rvci5H
ZW5lcmFsVHJlZUVsZW1lbnQgPSBjbGFzcyBHZW5lcmFsVHJlZUVsZW1lbnQgZXh0ZW5kcyBXZWJJ
bnNwZWN0b3IuCiAgICAgICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5jbGFzc0xpc3QuYWRkKCJpdGVt
Iik7CiAKICAgICAgICAgaWYgKHRoaXMuX2NsYXNzTmFtZXMpIHsKLSAgICAgICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgdGhpcy5fY2xhc3NOYW1lcy5sZW5ndGg7ICsraSkKLSAgICAgICAgICAg
ICAgICB0aGlzLl9saXN0SXRlbU5vZGUuY2xhc3NMaXN0LmFkZCh0aGlzLl9jbGFzc05hbWVzW2ld
KTsKKyAgICAgICAgICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5jbGFzc0xpc3QuYWRkKC4uLnRoaXMu
X2NsYXNzTmFtZXMpOwogICAgICAgICB9CiAKICAgICAgICAgaWYgKHRoaXMuX3NtYWxsKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvTmF2aWdh
dGlvbkl0ZW0uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9O
YXZpZ2F0aW9uSXRlbS5qcwppbmRleCBhMzEyNTY5Li4zOTg4Y2FmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9uSXRlbS5qcwor
KysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9u
SXRlbS5qcwpAQCAtMzcsMTAgKzM3LDcgQEAgV2ViSW5zcGVjdG9yLk5hdmlnYXRpb25JdGVtID0g
ZnVuY3Rpb24oaWRlbnRpZmllciwgcm9sZSwgbGFiZWwpIHsKICAgICBpZiAobGFiZWwpCiAgICAg
ICAgIHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIiwgbGFiZWwpOwogCi0g
ICAgdmFyIGNsYXNzTmFtZXMgPSB0aGlzLl9jbGFzc05hbWVzOwotICAgIGZvciAodmFyIGkgPSAw
OyBpIDwgY2xhc3NOYW1lcy5sZW5ndGg7ICsraSkKLSAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFz
c0xpc3QuYWRkKGNsYXNzTmFtZXNbaV0pOwotCisgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3Qu
YWRkKC4uLnRoaXMuX2NsYXNzTmFtZXMpOwogICAgIHRoaXMuX2VsZW1lbnQubmF2aWdhdGlvbkl0
ZW0gPSB0aGlzOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvUmVzb3VyY2VDb250ZW50Vmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Jlc291cmNlQ29udGVudFZpZXcuanMKaW5kZXggNThm
NzQxNC4uNzg1ZTJiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvUmVzb3VyY2VDb250ZW50Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXNvdXJjZUNvbnRlbnRWaWV3LmpzCkBAIC0zMiw4
ICszMiw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRWaWV3ID0gZnVuY3Rpb24ocmVz
b3VyY2UsIHN0eWxlQ2xhc3NOYW1lKQogCiAgICAgdGhpcy5fcmVzb3VyY2UgPSByZXNvdXJjZTsK
IAotICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKFdlYkluc3BlY3Rvci5SZXNvdXJjZUNv
bnRlbnRWaWV3LlN0eWxlQ2xhc3NOYW1lKTsKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFk
ZChzdHlsZUNsYXNzTmFtZSk7CisgICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoc3R5bGVD
bGFzc05hbWUsIFdlYkluc3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRWaWV3LlN0eWxlQ2xhc3NOYW1l
KTsKIAogICAgIC8vIEFwcGVuZCBhIHNwaW5uZXIgd2hpbGUgd2FpdGluZyBmb3IgY29udGVudEF2
YWlsYWJsZS4gVGhlIHN1YmNsYXNzZXMgYXJlIHJlc3BvbnNpYmxlIGZvciByZW1vdmluZwogICAg
IC8vIHRoZSBzcGlubmVyIGJlZm9yZSBzaG93aW5nIHRoZSByZXNvdXJjZSBjb250ZW50LgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVzb3Vy
Y2VUaW1lbGluZURhdGFHcmlkTm9kZS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL1Jlc291cmNlVGltZWxpbmVEYXRhR3JpZE5vZGUuanMKaW5kZXggODM5MzM1
Ny4uOWY1ODU5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvUmVzb3VyY2VUaW1lbGluZURhdGFHcmlkTm9kZS5qcworKysgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXNvdXJjZVRpbWVsaW5lRGF0YUdyaWRO
b2RlLmpzCkBAIC0xMDcsOCArMTA3LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlVGltZWxpbmVE
YXRhR3JpZE5vZGUucHJvdG90eXBlID0gewogCiAgICAgICAgIHN3aXRjaCAoY29sdW1uSWRlbnRp
ZmllcikgewogICAgICAgICBjYXNlICJuYW1lIjoKLSAgICAgICAgICAgIGNlbGwuY2xhc3NMaXN0
LmFkZChXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRWxlbWVudC5SZXNvdXJjZUljb25TdHlsZUNs
YXNzTmFtZSk7Ci0gICAgICAgICAgICBjZWxsLmNsYXNzTGlzdC5hZGQocmVzb3VyY2UudHlwZSk7
CisgICAgICAgICAgICBjZWxsLmNsYXNzTGlzdC5hZGQocmVzb3VyY2UudHlwZSwgV2ViSW5zcGVj
dG9yLlJlc291cmNlVHJlZUVsZW1lbnQuUmVzb3VyY2VJY29uU3R5bGVDbGFzc05hbWUpOwogCiAg
ICAgICAgICAgICB2YXIgZnJhZ21lbnQgPSBkb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL1NpZGViYXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9TaWRlYmFyLmpzCmluZGV4IDAyZmQ1OTEuLjQ2Mjc0MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NpZGViYXIuanMKKysrIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2lkZWJhci5qcwpAQCAtMzMsOSAr
MzMsNyBAQCBXZWJJbnNwZWN0b3IuU2lkZWJhciA9IGNsYXNzIFNpZGViYXIgZXh0ZW5kcyBXZWJJ
bnNwZWN0b3IuT2JqZWN0CiAgICAgICAgIHRoaXMuX3NpZGUgPSBzaWRlIHx8IFdlYkluc3BlY3Rv
ci5TaWRlYmFyLlNpZGVzLkxlZnQ7CiAKICAgICAgICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnQg
fHwgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgIHRoaXMuX2VsZW1lbnQu
Y2xhc3NMaXN0LmFkZCgic2lkZWJhciIpOwotICAgICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlz
dC5hZGQoV2ViSW5zcGVjdG9yLlNpZGViYXIuQ29sbGFwc2VkU3R5bGVDbGFzc05hbWUpOwotICAg
ICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQodGhpcy5fc2lkZSk7CisgICAgICAgIHRo
aXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgic2lkZWJhciIsIHRoaXMuX3NpZGUsIFdlYkluc3Bl
Y3Rvci5TaWRlYmFyLkNvbGxhcHNlZFN0eWxlQ2xhc3NOYW1lKTsKIAogICAgICAgICB0aGlzLl9l
bGVtZW50LnNldEF0dHJpYnV0ZSgicm9sZSIsIHJvbGUgfHwgImdyb3VwIik7CiAgICAgICAgIGlm
IChsYWJlbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL1NpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NpZGViYXJQYW5lbC5qcwppbmRleCA3Y2UwMmEyLi42NmY0YzMzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TaWRlYmFyUGFu
ZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2lk
ZWJhclBhbmVsLmpzCkBAIC0zNiw4ICszNiw3IEBAIFdlYkluc3BlY3Rvci5TaWRlYmFyUGFuZWwg
PSBjbGFzcyBTaWRlYmFyUGFuZWwgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuT2JqZWN0CiAgICAgICAg
IHRoaXMuX3Rvb2xiYXJJdGVtLmVuYWJsZWQgPSBmYWxzZTsKIAogICAgICAgICB0aGlzLl9lbGVt
ZW50ID0gZWxlbWVudCB8fCBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAg
dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJwYW5lbCIpOwotICAgICAgICB0aGlzLl9lbGVt
ZW50LmNsYXNzTGlzdC5hZGQoaWRlbnRpZmllcik7CisgICAgICAgIHRoaXMuX2VsZW1lbnQuY2xh
c3NMaXN0LmFkZCgicGFuZWwiLCBpZGVudGlmaWVyKTsKIAogICAgICAgICB0aGlzLl9lbGVtZW50
LnNldEF0dHJpYnV0ZSgicm9sZSIsIHJvbGUgfHwgImdyb3VwIik7CiAgICAgICAgIHRoaXMuX2Vs
ZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIiwgbGFiZWwgfHwgZGlzcGxheU5hbWUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291
cmNlQ29kZVRleHRFZGl0b3IuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9Tb3VyY2VDb2RlVGV4dEVkaXRvci5qcwppbmRleCBmYmY2NjRkLi4yYzk1NDgzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3Vy
Y2VDb2RlVGV4dEVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVGV4dEVkaXRvci5qcwpAQCAtODQwLDggKzg0MCw3IEBAIFdl
Ykluc3BlY3Rvci5Tb3VyY2VDb2RlVGV4dEVkaXRvciA9IGNsYXNzIFNvdXJjZUNvZGVUZXh0RWRp
dG9yIGV4dGVuZHMgV2ViSW5zcGVjCiAgICAgICAgICAgICByZXR1cm4gbnVsbDsKIAogICAgICAg
ICB2YXIgd2lkZ2V0RWxlbWVudCA9IHdpZGdldC53aWRnZXRFbGVtZW50OwotICAgICAgICB3aWRn
ZXRFbGVtZW50LmNsYXNzTGlzdC5hZGQoImlzc3VlLXdpZGdldCIpOwotICAgICAgICB3aWRnZXRF
bGVtZW50LmNsYXNzTGlzdC5hZGQoImlubGluZSIpOworICAgICAgICB3aWRnZXRFbGVtZW50LmNs
YXNzTGlzdC5hZGQoImlzc3VlLXdpZGdldCIsICJpbmxpbmUiKTsKICAgICAgICAgd2lkZ2V0RWxl
bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2hhbmRsZVdpZGdldENsaWNrLmJp
bmQodGhpcywgd2lkZ2V0LCBsaW5lTnVtYmVyKSk7CiAKICAgICAgICAgdGhpcy5fd2lkZ2V0TWFw
LnNldChsaW5lTnVtYmVyLCB3aWRnZXQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVGV4dEVkaXRvci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RleHRFZGl0b3IuanMKaW5kZXggMjZlZTUzNS4uMTk2
NTQxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmll
d3MvVGV4dEVkaXRvci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9UZXh0RWRpdG9yLmpzCkBAIC0zMCw4ICszMCw3IEBAIFdlYkluc3BlY3Rvci5UZXh0
RWRpdG9yID0gY2xhc3MgVGV4dEVkaXRvciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAg
ICAgICAgc3VwZXIoKTsKIAogICAgICAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudCB8fCBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xp
c3QuYWRkKCJ0ZXh0LWVkaXRvciIpOwotICAgICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5h
ZGQoV2ViSW5zcGVjdG9yLlN5bnRheEhpZ2hsaWdodGVkU3R5bGVDbGFzc05hbWUpOworICAgICAg
ICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoInRleHQtZWRpdG9yIiwgV2ViSW5zcGVjdG9y
LlN5bnRheEhpZ2hsaWdodGVkU3R5bGVDbGFzc05hbWUpOwogCiAgICAgICAgIHRoaXMuX2NvZGVN
aXJyb3IgPSBDb2RlTWlycm9yKHRoaXMuZWxlbWVudCwgewogICAgICAgICAgICAgcmVhZE9ubHk6
IHRydWUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9UaW1lbGluZVJ1bGVyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvVGltZWxpbmVSdWxlci5qcwppbmRleCBhMzNlYzM1Li5jODkwYTYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9UaW1lbGluZVJ1
bGVyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Rp
bWVsaW5lUnVsZXIuanMKQEAgLTI5MSw4ICsyOTEsNyBAQCBXZWJJbnNwZWN0b3IuVGltZWxpbmVS
dWxlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIG1hcmtlci5hZGRFdmVudExpc3RlbmVyKFdlYklu
c3BlY3Rvci5UaW1lbGluZU1hcmtlci5FdmVudC5UaW1lQ2hhbmdlZCwgdGhpcy5fdGltZWxpbmVN
YXJrZXJUaW1lQ2hhbmdlZCwgdGhpcyk7CiAKICAgICAgICAgdmFyIG1hcmtlckVsZW1lbnQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAgbWFya2VyRWxlbWVudC5jbGFz
c0xpc3QuYWRkKFdlYkluc3BlY3Rvci5UaW1lbGluZVJ1bGVyLkJhc2VNYXJrZXJFbGVtZW50U3R5
bGVDbGFzc05hbWUpOwotICAgICAgICBtYXJrZXJFbGVtZW50LmNsYXNzTGlzdC5hZGQobWFya2Vy
LnR5cGUpOworICAgICAgICBtYXJrZXJFbGVtZW50LmNsYXNzTGlzdC5hZGQobWFya2VyLnR5cGUs
IFdlYkluc3BlY3Rvci5UaW1lbGluZVJ1bGVyLkJhc2VNYXJrZXJFbGVtZW50U3R5bGVDbGFzc05h
bWUpOwogCiAgICAgICAgIHRoaXMuX21hcmtlckVsZW1lbnRNYXAuc2V0KG1hcmtlciwgbWFya2Vy
RWxlbWVudCk7CiAK
</data>
<flag name="review"
          id="275879"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251107</attachid>
            <date>2015-04-18 19:25:32 -0700</date>
            <delta_ts>2015-04-18 21:21:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>17297</size>
            <attacher name="Nikita Vasilyev">nvasilyev</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDk5M2U3YzcuLmEwYWVmY2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDE1LTA0LTE4ICBOaWtpdGEgVmFzaWx5
ZXYgIDxudmFzaWx5ZXZAYXBwbGUuY29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFBhc3Mg
bXVsdGlwbGUgYXJndW1lbnRzIHRvIGNsYXNzTGlzdC5hZGQgYW5kIGNsYXNzTGlzdC5yZW1vdmUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzkxNAor
CisgICAgICAgIGNsYXNzTGlzdC5hZGQgYW5kIGNsYXNzTGlzdC5yZW1vdmUgY2FuIGFjY2VwdCBt
dWx0aXBsZSBhcmd1bWVudHMsIHVzZSB0aGF0LgorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbW90
aHkgSGF0Y2hlci4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9NYWluLmpzOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLnVwZGF0ZURvY2tlZFN0YXRlKToKKyAgICAgICAgKiBVc2VySW50
ZXJmYWNlL1ZpZXdzL0RPTVRyZWVEYXRhR3JpZC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5E
T01UcmVlRGF0YUdyaWQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZU91
dGxpbmUuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NVHJlZU91dGxpbmUpOgorICAgICAg
ICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWQuanM6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuRGF0YUdyaWROb2RlLnByb3RvdHlwZS5zZXQgaGFzQ2hpbGRyZW4pOgorICAgICAgICAqIFVz
ZXJJbnRlcmZhY2UvVmlld3MvRGF0YWJhc2VDb250ZW50Vmlldy5qczoKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5EYXRhYmFzZUNvbnRlbnRWaWV3KToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL0RldGFpbHNTZWN0aW9uLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRldGFpbHNTZWN0
aW9uKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0RldGFpbHNTZWN0aW9uUHJvcGVy
dGllc1Jvdy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvblByb3BlcnRp
ZXNSb3cpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvR2VuZXJhbFRyZWVFbGVtZW50
LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkdlbmVyYWxUcmVlRWxlbWVudC5wcm90b3R5cGUu
c2V0IGNsYXNzTmFtZXMpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvTmF2aWdhdGlv
bkl0ZW0uanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuTmF2aWdhdGlvbkl0ZW0pOgorICAgICAg
ICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvUmVzb3VyY2VDb250ZW50Vmlldy5qczoKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRWaWV3KToKKyAgICAgICAgKiBVc2VySW50ZXJm
YWNlL1ZpZXdzL1Jlc291cmNlVGltZWxpbmVEYXRhR3JpZE5vZGUuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuUmVzb3VyY2VUaW1lbGluZURhdGFHcmlkTm9kZS5wcm90b3R5cGUuY3JlYXRlQ2Vs
bENvbnRlbnQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU2lkZWJhci5qczoKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5TaWRlYmFyKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL1NpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TaWRlYmFyUGFuZWwp
OgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRleHRFZGl0b3IuanM6
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9UZXh0RWRpdG9yLmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLlRleHRFZGl0b3IpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3Mv
VGltZWxpbmVSdWxlci5qczoKKwogMjAxNS0wNC0xNyAgSm9ubyBXZWxscyAgPGpvbm93ZWxsc0Bh
cHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQWxsIHNhbnMtc2VyaWYgZm9udCBm
YW1pbHkgcnVsZXMgc2hvdWxkIGJlIHNldCB0aGUgc2FtZSB3YXkuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL01haW4uanMgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL01haW4uanMKaW5kZXggMTVhN2YyNi4uNjkx
ZWMwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFz
ZS9NYWluLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2Uv
TWFpbi5qcwpAQCAtNDU3LDI3ICs0NTcsMTkgQEAgV2ViSW5zcGVjdG9yLnVwZGF0ZURvY2tlZFN0
YXRlID0gZnVuY3Rpb24oc2lkZSkKICAgICB0aGlzLl9pZ25vcmVUb29sYmFyTW9kZURpZENoYW5n
ZUV2ZW50cyA9IHRydWU7CiAKICAgICBpZiAoc2lkZSA9PT0gImJvdHRvbSIpIHsKLSAgICAgICAg
ZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCJkb2NrZWQiKTsKLSAgICAgICAgZG9jdW1lbnQu
Ym9keS5jbGFzc0xpc3QuYWRkKCJib3R0b20iKTsKLQotICAgICAgICBkb2N1bWVudC5ib2R5LmNs
YXNzTGlzdC5yZW1vdmUoIndpbmRvdy1pbmFjdGl2ZSIpOwotICAgICAgICBkb2N1bWVudC5ib2R5
LmNsYXNzTGlzdC5yZW1vdmUoInJpZ2h0Iik7CisgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NM
aXN0LmFkZCgiZG9ja2VkIiwgImJvdHRvbSIpOworICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNz
TGlzdC5yZW1vdmUoIndpbmRvdy1pbmFjdGl2ZSIsICJyaWdodCIpOwogCiAgICAgICAgIHRoaXMu
dG9vbGJhci5kaXNwbGF5TW9kZSA9IHRoaXMuX3Rvb2xiYXJEb2NrZWRCb3R0b21EaXNwbGF5TW9k
ZVNldHRpbmcudmFsdWU7CiAgICAgICAgIHRoaXMudG9vbGJhci5zaXplTW9kZSA9IHRoaXMuX3Rv
b2xiYXJEb2NrZWRCb3R0b21TaXplTW9kZVNldHRpbmcudmFsdWU7CiAgICAgfSBlbHNlIGlmIChz
aWRlID09PSAicmlnaHQiKSB7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgi
ZG9ja2VkIik7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgicmlnaHQiKTsK
LQotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoIndpbmRvdy1pbmFjdGl2
ZSIpOwotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoImJvdHRvbSIpOwor
ICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoImRvY2tlZCIsICJyaWdodCIpOwor
ICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoIndpbmRvdy1pbmFjdGl2ZSIs
ICJib3R0b20iKTsKIAogICAgICAgICB0aGlzLnRvb2xiYXIuZGlzcGxheU1vZGUgPSB0aGlzLl90
b29sYmFyRG9ja2VkUmlnaHREaXNwbGF5TW9kZVNldHRpbmcudmFsdWU7CiAgICAgICAgIHRoaXMu
dG9vbGJhci5zaXplTW9kZSA9IHRoaXMuX3Rvb2xiYXJEb2NrZWRSaWdodFNpemVNb2RlU2V0dGlu
Zy52YWx1ZTsKICAgICB9IGVsc2UgewotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5y
ZW1vdmUoImRvY2tlZCIpOwotICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUo
InJpZ2h0Iik7Ci0gICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgiYm90dG9t
Iik7CisgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgiZG9ja2VkIiwgInJp
Z2h0IiwgImJvdHRvbSIpOwogCiAgICAgICAgIHRoaXMudG9vbGJhci5kaXNwbGF5TW9kZSA9IHRo
aXMuX3Rvb2xiYXJVbmRvY2tlZERpc3BsYXlNb2RlU2V0dGluZy52YWx1ZTsKICAgICAgICAgdGhp
cy50b29sYmFyLnNpemVNb2RlID0gdGhpcy5fdG9vbGJhclVuZG9ja2VkU2l6ZU1vZGVTZXR0aW5n
LnZhbHVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvRE9NVHJlZURhdGFHcmlkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvRE9NVHJlZURhdGFHcmlkLmpzCmluZGV4IGM5MDMxZDIuLmM0NGM0YmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRy
ZWVEYXRhR3JpZC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01UcmVlRGF0YUdyaWQuanMKQEAgLTMwLDggKzMwLDcgQEAgV2ViSW5zcGVjdG9yLkRP
TVRyZWVEYXRhR3JpZCA9IGZ1bmN0aW9uKCkgewogCiAgICAgdGhpcy5fcHJldmlvdXNIb3ZlcmVk
RWxlbWVudCA9IG51bGw7CiAKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiZG9tLXRy
ZWUtZGF0YS1ncmlkIik7Ci0gICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoImlubGluZSIp
OworICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpbmxpbmUiLCAiZG9tLXRyZWUtZGF0
YS1ncmlkIik7CiAKICAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3Zl
IiwgdGhpcy5fb25tb3VzZW1vdmUuYmluZCh0aGlzKSwgZmFsc2UpOwogICAgIHRoaXMuZWxlbWVu
dC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW91dCIsIHRoaXMuX29ubW91c2VvdXQuYmluZCh0aGlz
KSwgZmFsc2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0bGluZS5qcwppbmRleCBmMTY2YzJhLi40NTJiMjZjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01U
cmVlT3V0bGluZS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9ET01UcmVlT3V0bGluZS5qcwpAQCAtNDUsOCArNDUsNyBAQCBXZWJJbnNwZWN0b3IuRE9N
VHJlZU91dGxpbmUgPSBjbGFzcyBET01UcmVlT3V0bGluZSBleHRlbmRzIFdlYkluc3BlY3Rvci5U
cmVlT3V0bAogICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImRyb3AiLCB0aGlzLl9v
bmRyb3AuYmluZCh0aGlzKSwgZmFsc2UpOwogICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVu
ZXIoImRyYWdlbmQiLCB0aGlzLl9vbmRyYWdlbmQuYmluZCh0aGlzKSwgZmFsc2UpOwogCi0gICAg
ICAgIGVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiZG9tLXRyZWUtb3V0bGluZSIpOwotICAgICAgICBl
bGVtZW50LmNsYXNzTGlzdC5hZGQoV2ViSW5zcGVjdG9yLlN5bnRheEhpZ2hsaWdodGVkU3R5bGVD
bGFzc05hbWUpOworICAgICAgICBlbGVtZW50LmNsYXNzTGlzdC5hZGQoImRvbS10cmVlLW91dGxp
bmUiLCBXZWJJbnNwZWN0b3IuU3ludGF4SGlnaGxpZ2h0ZWRTdHlsZUNsYXNzTmFtZSk7CiAKICAg
ICAgICAgdGhpcy5faW5jbHVkZVJvb3RET01Ob2RlID0gIW9taXRSb290RE9NTm9kZTsKICAgICAg
ICAgdGhpcy5fc2VsZWN0RW5hYmxlZCA9IHNlbGVjdEVuYWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZC5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkLmpzCmluZGV4IDk5
MDA4MDYuLmM1N2U2ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkLmpzCkBAIC0xNDU0LDggKzE0NTQsNyBAQCBXZWJJbnNw
ZWN0b3IuRGF0YUdyaWROb2RlLnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogICAgICAgICBlbHNl
CiAgICAgICAgIHsKLSAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgi
cGFyZW50Iik7Ci0gICAgICAgICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoImV4
cGFuZGVkIik7CisgICAgICAgICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoInBh
cmVudCIsICJleHBhbmRlZCIpOwogICAgICAgICB9CiAgICAgfSwKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YWJhc2VDb250ZW50Vmll
dy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFiYXNl
Q29udGVudFZpZXcuanMKaW5kZXggMjdlYTBkOS4uYTc4OTJiZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YWJhc2VDb250ZW50Vmlldy5q
cworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhYmFz
ZUNvbnRlbnRWaWV3LmpzCkBAIC0yOSw5ICsyOSw3IEBAIFdlYkluc3BlY3Rvci5EYXRhYmFzZUNv
bnRlbnRWaWV3ID0gZnVuY3Rpb24ocmVwcmVzZW50ZWRPYmplY3QpCiAKICAgICB0aGlzLmRhdGFi
YXNlID0gcmVwcmVzZW50ZWRPYmplY3Q7CiAKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFk
ZCgic3RvcmFnZS12aWV3Iik7Ci0gICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoInF1ZXJ5
Iik7Ci0gICAgdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoIm1vbm9zcGFjZSIpOworICAgIHRo
aXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJzdG9yYWdlLXZpZXciLCAicXVlcnkiLCAibW9ub3Nw
YWNlIik7CiAKICAgICB0aGlzLl9wcm9tcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CiAgICAgdGhpcy5fcHJvbXB0RWxlbWVudC5jbGFzc05hbWUgPSAiZGF0YWJhc2Ut
cXVlcnktcHJvbXB0IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RldGFpbHNTZWN0aW9uLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvRGV0YWlsc1NlY3Rpb24uanMKaW5kZXggOWVjZGM3Yy4uMzY4Y2Q3
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
RGV0YWlsc1NlY3Rpb24uanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvRGV0YWlsc1NlY3Rpb24uanMKQEAgLTMyLDggKzMyLDcgQEAgV2ViSW5zcGVjdG9y
LkRldGFpbHNTZWN0aW9uID0gY2xhc3MgRGV0YWlsc1NlY3Rpb24gZXh0ZW5kcyBXZWJJbnNwZWN0
b3IuT2JqZWN0CiAgICAgICAgIGNvbnNvbGUuYXNzZXJ0KGlkZW50aWZpZXIpOwogCiAgICAgICAg
IHRoaXMuX2VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAg
dGhpcy5fZWxlbWVudC5jbGFzc05hbWUgPSBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb24uU3R5
bGVDbGFzc05hbWU7Ci0gICAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChpZGVudGlm
aWVyKTsKKyAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGlkZW50aWZpZXIsICJk
ZXRhaWxzLXNlY3Rpb24iKTsKIAogICAgICAgICB0aGlzLl9oZWFkZXJFbGVtZW50ID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CiAgICAgICAgIHRoaXMuX2hlYWRlckVsZW1lbnQuYWRk
RXZlbnRMaXN0ZW5lcigiY2xpY2siLCB0aGlzLl9oZWFkZXJFbGVtZW50Q2xpY2tlZC5iaW5kKHRo
aXMpKTsKQEAgLTE2MSw3ICsxNjAsNiBAQCBXZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb24gPSBj
bGFzcyBEZXRhaWxzU2VjdGlvbiBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICB9CiB9
OwogCi1XZWJJbnNwZWN0b3IuRGV0YWlsc1NlY3Rpb24uU3R5bGVDbGFzc05hbWUgPSAiZGV0YWls
cy1zZWN0aW9uIjsKIFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvbi5IZWFkZXJFbGVtZW50U3R5
bGVDbGFzc05hbWUgPSAiaGVhZGVyIjsKIFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvbi5UaXRs
ZUVsZW1lbnRTdHlsZUNsYXNzTmFtZSA9ICJ0aXRsZSI7CiBXZWJJbnNwZWN0b3IuRGV0YWlsc1Nl
Y3Rpb24uQ29udGVudEVsZW1lbnRTdHlsZUNsYXNzTmFtZSA9ICJjb250ZW50IjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RldGFpbHNTZWN0
aW9uUHJvcGVydGllc1Jvdy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL0RldGFpbHNTZWN0aW9uUHJvcGVydGllc1Jvdy5qcwppbmRleCBhNGJkNGVjLi42YzI4
MDA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9EZXRhaWxzU2VjdGlvblByb3BlcnRpZXNSb3cuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGV0YWlsc1NlY3Rpb25Qcm9wZXJ0aWVzUm93LmpzCkBA
IC0yOSw4ICsyOSw3IEBAIFdlYkluc3BlY3Rvci5EZXRhaWxzU2VjdGlvblByb3BlcnRpZXNSb3cg
PSBjbGFzcyBEZXRhaWxzU2VjdGlvblByb3BlcnRpZXNSb3cgZXh0CiAgICAgewogICAgICAgICBz
dXBlcihlbXB0eU1lc3NhZ2UpOwogCi0gICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRk
KCJwcm9wZXJ0aWVzIik7Ci0gICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKFdlYklu
c3BlY3Rvci5TeW50YXhIaWdobGlnaHRlZFN0eWxlQ2xhc3NOYW1lKTsKKyAgICAgICAgdGhpcy5l
bGVtZW50LmNsYXNzTGlzdC5hZGQoInByb3BlcnRpZXMiLCBXZWJJbnNwZWN0b3IuU3ludGF4SGln
aGxpZ2h0ZWRTdHlsZUNsYXNzTmFtZSk7CiAKICAgICAgICAgdGhpcy5wcm9wZXJ0aWVzU2VjdGlv
biA9IHByb3BlcnRpZXNTZWN0aW9uOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0dlbmVyYWxUcmVlRWxlbWVudC5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0dlbmVyYWxUcmVlRWxlbWVudC5q
cwppbmRleCA3YTE1ZjZkLi41OGMyNDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9HZW5lcmFsVHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvR2VuZXJhbFRyZWVFbGVtZW50Lmpz
CkBAIC03Nyw4ICs3Nyw3IEBAIFdlYkluc3BlY3Rvci5HZW5lcmFsVHJlZUVsZW1lbnQgPSBjbGFz
cyBHZW5lcmFsVHJlZUVsZW1lbnQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuCiAgICAgc2V0IGNsYXNz
TmFtZXMoeCkKICAgICB7CiAgICAgICAgIGlmICh0aGlzLl9saXN0SXRlbU5vZGUgJiYgdGhpcy5f
Y2xhc3NOYW1lcykgewotICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9jbGFz
c05hbWVzLmxlbmd0aDsgKytpKQotICAgICAgICAgICAgICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5j
bGFzc0xpc3QucmVtb3ZlKHRoaXMuX2NsYXNzTmFtZXNbaV0pOworICAgICAgICAgICAgdGhpcy5f
bGlzdEl0ZW1Ob2RlLmNsYXNzTGlzdC5yZW1vdmUoLi4udGhpcy5fY2xhc3NOYW1lcyk7CiAgICAg
ICAgIH0KIAogICAgICAgICBpZiAodHlwZW9mIHggPT09ICJzdHJpbmciKQpAQCAtODcsOCArODYs
NyBAQCBXZWJJbnNwZWN0b3IuR2VuZXJhbFRyZWVFbGVtZW50ID0gY2xhc3MgR2VuZXJhbFRyZWVF
bGVtZW50IGV4dGVuZHMgV2ViSW5zcGVjdG9yLgogICAgICAgICB0aGlzLl9jbGFzc05hbWVzID0g
eCB8fCBbXTsKIAogICAgICAgICBpZiAodGhpcy5fbGlzdEl0ZW1Ob2RlKSB7Ci0gICAgICAgICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX2NsYXNzTmFtZXMubGVuZ3RoOyArK2kpCi0gICAg
ICAgICAgICAgICAgdGhpcy5fbGlzdEl0ZW1Ob2RlLmNsYXNzTGlzdC5hZGQodGhpcy5fY2xhc3NO
YW1lc1tpXSk7CisgICAgICAgICAgICB0aGlzLl9saXN0SXRlbU5vZGUuY2xhc3NMaXN0LmFkZCgu
Li50aGlzLl9jbGFzc05hbWVzKTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMjIyLDggKzIyMCw3
IEBAIFdlYkluc3BlY3Rvci5HZW5lcmFsVHJlZUVsZW1lbnQgPSBjbGFzcyBHZW5lcmFsVHJlZUVs
ZW1lbnQgZXh0ZW5kcyBXZWJJbnNwZWN0b3IuCiAgICAgICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5j
bGFzc0xpc3QuYWRkKCJpdGVtIik7CiAKICAgICAgICAgaWYgKHRoaXMuX2NsYXNzTmFtZXMpIHsK
LSAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fY2xhc3NOYW1lcy5sZW5ndGg7
ICsraSkKLSAgICAgICAgICAgICAgICB0aGlzLl9saXN0SXRlbU5vZGUuY2xhc3NMaXN0LmFkZCh0
aGlzLl9jbGFzc05hbWVzW2ldKTsKKyAgICAgICAgICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5jbGFz
c0xpc3QuYWRkKC4uLnRoaXMuX2NsYXNzTmFtZXMpOwogICAgICAgICB9CiAKICAgICAgICAgaWYg
KHRoaXMuX3NtYWxsKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvTmF2aWdhdGlvbkl0ZW0uanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9OYXZpZ2F0aW9uSXRlbS5qcwppbmRleCBhMzEyNTY5Li4zOTg4Y2Fm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9O
YXZpZ2F0aW9uSXRlbS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9OYXZpZ2F0aW9uSXRlbS5qcwpAQCAtMzcsMTAgKzM3LDcgQEAgV2ViSW5zcGVjdG9y
Lk5hdmlnYXRpb25JdGVtID0gZnVuY3Rpb24oaWRlbnRpZmllciwgcm9sZSwgbGFiZWwpIHsKICAg
ICBpZiAobGFiZWwpCiAgICAgICAgIHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWxh
YmVsIiwgbGFiZWwpOwogCi0gICAgdmFyIGNsYXNzTmFtZXMgPSB0aGlzLl9jbGFzc05hbWVzOwot
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2xhc3NOYW1lcy5sZW5ndGg7ICsraSkKLSAgICAgICAg
dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZXNbaV0pOwotCisgICAgdGhpcy5f
ZWxlbWVudC5jbGFzc0xpc3QuYWRkKC4uLnRoaXMuX2NsYXNzTmFtZXMpOwogICAgIHRoaXMuX2Vs
ZW1lbnQubmF2aWdhdGlvbkl0ZW0gPSB0aGlzOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVzb3VyY2VDb250ZW50Vmlldy5qcyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Jlc291cmNlQ29udGVu
dFZpZXcuanMKaW5kZXggNThmNzQxNC4uNGE0ZjYwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVzb3VyY2VDb250ZW50Vmlldy5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXNvdXJjZUNvbnRl
bnRWaWV3LmpzCkBAIC0zMiw4ICszMiw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRW
aWV3ID0gZnVuY3Rpb24ocmVzb3VyY2UsIHN0eWxlQ2xhc3NOYW1lKQogCiAgICAgdGhpcy5fcmVz
b3VyY2UgPSByZXNvdXJjZTsKIAotICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKFdlYklu
c3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRWaWV3LlN0eWxlQ2xhc3NOYW1lKTsKLSAgICB0aGlzLmVs
ZW1lbnQuY2xhc3NMaXN0LmFkZChzdHlsZUNsYXNzTmFtZSk7CisgICAgdGhpcy5lbGVtZW50LmNs
YXNzTGlzdC5hZGQoc3R5bGVDbGFzc05hbWUsICJyZXNvdXJjZSIpOwogCiAgICAgLy8gQXBwZW5k
IGEgc3Bpbm5lciB3aGlsZSB3YWl0aW5nIGZvciBjb250ZW50QXZhaWxhYmxlLiBUaGUgc3ViY2xh
c3NlcyBhcmUgcmVzcG9uc2libGUgZm9yIHJlbW92aW5nCiAgICAgLy8gdGhlIHNwaW5uZXIgYmVm
b3JlIHNob3dpbmcgdGhlIHJlc291cmNlIGNvbnRlbnQuCkBAIC01NCw4ICs1Myw2IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRWaWV3ID0gZnVuY3Rpb24ocmVzb3VyY2UsIHN0eWxlQ2xh
c3NOYW1lKQogICAgIH0KIH07CiAKLVdlYkluc3BlY3Rvci5SZXNvdXJjZUNvbnRlbnRWaWV3LlN0
eWxlQ2xhc3NOYW1lID0gInJlc291cmNlIjsKLQogV2ViSW5zcGVjdG9yLlJlc291cmNlQ29udGVu
dFZpZXcucHJvdG90eXBlID0gewogICAgIGNvbnN0cnVjdG9yOiBXZWJJbnNwZWN0b3IuUmVzb3Vy
Y2VDb250ZW50VmlldywKICAgICBfX3Byb3RvX186IFdlYkluc3BlY3Rvci5Db250ZW50Vmlldy5w
cm90b3R5cGUsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9SZXNvdXJjZVRpbWVsaW5lRGF0YUdyaWROb2RlLmpzIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVzb3VyY2VUaW1lbGluZURhdGFHcmlkTm9kZS5q
cwppbmRleCA4MzkzMzU3Li45ZjU4NTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9SZXNvdXJjZVRpbWVsaW5lRGF0YUdyaWROb2RlLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Jlc291cmNlVGlt
ZWxpbmVEYXRhR3JpZE5vZGUuanMKQEAgLTEwNyw4ICsxMDcsNyBAQCBXZWJJbnNwZWN0b3IuUmVz
b3VyY2VUaW1lbGluZURhdGFHcmlkTm9kZS5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgc3dpdGNo
IChjb2x1bW5JZGVudGlmaWVyKSB7CiAgICAgICAgIGNhc2UgIm5hbWUiOgotICAgICAgICAgICAg
Y2VsbC5jbGFzc0xpc3QuYWRkKFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVFbGVtZW50LlJlc291
cmNlSWNvblN0eWxlQ2xhc3NOYW1lKTsKLSAgICAgICAgICAgIGNlbGwuY2xhc3NMaXN0LmFkZChy
ZXNvdXJjZS50eXBlKTsKKyAgICAgICAgICAgIGNlbGwuY2xhc3NMaXN0LmFkZChyZXNvdXJjZS50
eXBlLCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRWxlbWVudC5SZXNvdXJjZUljb25TdHlsZUNs
YXNzTmFtZSk7CiAKICAgICAgICAgICAgIHZhciBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURv
Y3VtZW50RnJhZ21lbnQoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvU2lkZWJhci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1NpZGViYXIuanMKaW5kZXggMDJmZDU5MS4uNDYyNzQxMSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2lkZWJhci5q
cworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TaWRlYmFy
LmpzCkBAIC0zMyw5ICszMyw3IEBAIFdlYkluc3BlY3Rvci5TaWRlYmFyID0gY2xhc3MgU2lkZWJh
ciBleHRlbmRzIFdlYkluc3BlY3Rvci5PYmplY3QKICAgICAgICAgdGhpcy5fc2lkZSA9IHNpZGUg
fHwgV2ViSW5zcGVjdG9yLlNpZGViYXIuU2lkZXMuTGVmdDsKIAogICAgICAgICB0aGlzLl9lbGVt
ZW50ID0gZWxlbWVudCB8fCBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICAgICAg
dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJzaWRlYmFyIik7Ci0gICAgICAgIHRoaXMuX2Vs
ZW1lbnQuY2xhc3NMaXN0LmFkZChXZWJJbnNwZWN0b3IuU2lkZWJhci5Db2xsYXBzZWRTdHlsZUNs
YXNzTmFtZSk7Ci0gICAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCh0aGlzLl9zaWRl
KTsKKyAgICAgICAgdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJzaWRlYmFyIiwgdGhpcy5f
c2lkZSwgV2ViSW5zcGVjdG9yLlNpZGViYXIuQ29sbGFwc2VkU3R5bGVDbGFzc05hbWUpOwogCiAg
ICAgICAgIHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJyb2xlIiwgcm9sZSB8fCAiZ3JvdXAi
KTsKICAgICAgICAgaWYgKGxhYmVsKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvU2lkZWJhclBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2lkZWJhclBhbmVsLmpzCmluZGV4IDdjZTAyYTIuLjY2
ZjRjMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL1NpZGViYXJQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9TaWRlYmFyUGFuZWwuanMKQEAgLTM2LDggKzM2LDcgQEAgV2ViSW5zcGVjdG9y
LlNpZGViYXJQYW5lbCA9IGNsYXNzIFNpZGViYXJQYW5lbCBleHRlbmRzIFdlYkluc3BlY3Rvci5P
YmplY3QKICAgICAgICAgdGhpcy5fdG9vbGJhckl0ZW0uZW5hYmxlZCA9IGZhbHNlOwogCiAgICAg
ICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50IHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRp
diIpOwotICAgICAgICB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoInBhbmVsIik7Ci0gICAg
ICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZChpZGVudGlmaWVyKTsKKyAgICAgICAgdGhp
cy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJwYW5lbCIsIGlkZW50aWZpZXIpOwogCiAgICAgICAg
IHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJyb2xlIiwgcm9sZSB8fCAiZ3JvdXAiKTsKICAg
ICAgICAgdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLCBsYWJlbCB8fCBk
aXNwbGF5TmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVGV4dEVkaXRvci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUZXh0RWRpdG9yLmpzCmluZGV4IGZiZjY2
NGQuLjJjOTU0ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NvdXJjZUNvZGVUZXh0RWRpdG9yLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUZXh0RWRpdG9yLmpzCkBAIC04NDAs
OCArODQwLDcgQEAgV2ViSW5zcGVjdG9yLlNvdXJjZUNvZGVUZXh0RWRpdG9yID0gY2xhc3MgU291
cmNlQ29kZVRleHRFZGl0b3IgZXh0ZW5kcyBXZWJJbnNwZWMKICAgICAgICAgICAgIHJldHVybiBu
dWxsOwogCiAgICAgICAgIHZhciB3aWRnZXRFbGVtZW50ID0gd2lkZ2V0LndpZGdldEVsZW1lbnQ7
Ci0gICAgICAgIHdpZGdldEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXNzdWUtd2lkZ2V0Iik7Ci0g
ICAgICAgIHdpZGdldEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaW5saW5lIik7CisgICAgICAgIHdp
ZGdldEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXNzdWUtd2lkZ2V0IiwgImlubGluZSIpOwogICAg
ICAgICB3aWRnZXRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5faGFuZGxl
V2lkZ2V0Q2xpY2suYmluZCh0aGlzLCB3aWRnZXQsIGxpbmVOdW1iZXIpKTsKIAogICAgICAgICB0
aGlzLl93aWRnZXRNYXAuc2V0KGxpbmVOdW1iZXIsIHdpZGdldCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9UZXh0RWRpdG9yLmpzIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVGV4dEVkaXRvci5qcwppbmRl
eCAyNmVlNTM1Li4xOTY1NDEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9UZXh0RWRpdG9yLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RleHRFZGl0b3IuanMKQEAgLTMwLDggKzMwLDcgQEAgV2Vi
SW5zcGVjdG9yLlRleHRFZGl0b3IgPSBjbGFzcyBUZXh0RWRpdG9yIGV4dGVuZHMgV2ViSW5zcGVj
dG9yLk9iamVjdAogICAgICAgICBzdXBlcigpOwogCiAgICAgICAgIHRoaXMuX2VsZW1lbnQgPSBl
bGVtZW50IHx8IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICB0aGlzLl9l
bGVtZW50LmNsYXNzTGlzdC5hZGQoInRleHQtZWRpdG9yIik7Ci0gICAgICAgIHRoaXMuX2VsZW1l
bnQuY2xhc3NMaXN0LmFkZChXZWJJbnNwZWN0b3IuU3ludGF4SGlnaGxpZ2h0ZWRTdHlsZUNsYXNz
TmFtZSk7CisgICAgICAgIHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgidGV4dC1lZGl0b3Ii
LCBXZWJJbnNwZWN0b3IuU3ludGF4SGlnaGxpZ2h0ZWRTdHlsZUNsYXNzTmFtZSk7CiAKICAgICAg
ICAgdGhpcy5fY29kZU1pcnJvciA9IENvZGVNaXJyb3IodGhpcy5lbGVtZW50LCB7CiAgICAgICAg
ICAgICByZWFkT25seTogdHJ1ZSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL1RpbWVsaW5lUnVsZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9UaW1lbGluZVJ1bGVyLmpzCmluZGV4IGEzM2VjMzUuLmM4
OTBhNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL1RpbWVsaW5lUnVsZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvVGltZWxpbmVSdWxlci5qcwpAQCAtMjkxLDggKzI5MSw3IEBAIFdlYkluc3Bl
Y3Rvci5UaW1lbGluZVJ1bGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgbWFya2VyLmFkZEV2ZW50
TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlRpbWVsaW5lTWFya2VyLkV2ZW50LlRpbWVDaGFuZ2VkLCB0
aGlzLl90aW1lbGluZU1hcmtlclRpbWVDaGFuZ2VkLCB0aGlzKTsKIAogICAgICAgICB2YXIgbWFy
a2VyRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgICAgICBtYXJr
ZXJFbGVtZW50LmNsYXNzTGlzdC5hZGQoV2ViSW5zcGVjdG9yLlRpbWVsaW5lUnVsZXIuQmFzZU1h
cmtlckVsZW1lbnRTdHlsZUNsYXNzTmFtZSk7Ci0gICAgICAgIG1hcmtlckVsZW1lbnQuY2xhc3NM
aXN0LmFkZChtYXJrZXIudHlwZSk7CisgICAgICAgIG1hcmtlckVsZW1lbnQuY2xhc3NMaXN0LmFk
ZChtYXJrZXIudHlwZSwgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUnVsZXIuQmFzZU1hcmtlckVsZW1l
bnRTdHlsZUNsYXNzTmFtZSk7CiAKICAgICAgICAgdGhpcy5fbWFya2VyRWxlbWVudE1hcC5zZXQo
bWFya2VyLCBtYXJrZXJFbGVtZW50KTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>