<?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>201470</bug_id>
          
          <creation_ts>2019-09-04 13:17:06 -0700</creation_ts>
          <short_desc>Web Inspector: unify the interaction of show/hide status icons in Sources and Canvas</short_desc>
          <delta_ts>2019-09-04 19:16:18 -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="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1567845</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-09-04 13:17:06 -0700</bug_when>
    <thetext>Rather than &quot;fading&quot; the tree element&apos;s text when the underlying represented object is disabled/blackboxed, we should just &quot;fade&quot; the icon.  The &quot;fade&quot; shouldn&apos;t change when the tree element is selected, unless the user is hovering directly over the status eye (this helps convey the idea that clicking the status eye is like a checkbox).  The image of the status eye also shouldn&apos;t change depending on whether the underlying represented object is disabled/blackboxed, as it being visible/&quot;faded&quot; is already enough of an indicator.

It should also be possible to toggle the disabled/blackboxed state via the context menu.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567846</commentid>
    <comment_count>1</comment_count>
      <attachid>378006</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-09-04 13:17:59 -0700</bug_when>
    <thetext>Created attachment 378006
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567920</commentid>
    <comment_count>2</comment_count>
      <attachid>378006</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-09-04 17:16:05 -0700</bug_when>
    <thetext>Comment on attachment 378006
Patch

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

&gt; Source/WebInspectorUI/UserInterface/Models/ShaderProgram.js:61
&gt; +        CanvasAgent.setShaderProgramDisabled(this._identifier, disabled, (error) =&gt; {

We should set `this._disabled` immediately.

Currently if someone set the state rapidly before a response was received:

    shaderProgram.disabled = true;
    shaderProgram.disabled = false; // Wouldn&apos;t do anything.

Then the 2nd setting would potentially be missed and the frontend would leave the program in a disabled state, which would not be what we actually want.

&gt; Source/WebInspectorUI/UserInterface/Views/ShaderProgramTreeElement.js:57
&gt; +        super.detach();

This should be `super.ondetach()`

&gt; Source/WebInspectorUI/UserInterface/Views/ShaderProgramTreeElement.js:63
&gt;      canSelectOnMouseDown(event)
&gt;      {
&gt; -        return !this._statusElement.contains(event.target);
&gt; +        return !this._disabledImageElement.contains(event.target);
&gt; +    }

Given the superclass implementation is TreeElement, maybe this should call the super class if the specific case here is not true.

&gt; Source/WebInspectorUI/UserInterface/Views/SourceCodeTreeElement.js:141
&gt; +    populateContextMenu(contextMenu, event)
&gt; +    {
&gt; +        if (this._sourceCode.supportsScriptBlackboxing) {
&gt; +            let isBlackboxed = WI.debuggerManager.isScriptBlackboxed(this._sourceCode);

Does this show up very high in the context menu or rather low?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567934</commentid>
    <comment_count>3</comment_count>
      <attachid>378006</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-09-04 18:26:04 -0700</bug_when>
    <thetext>Comment on attachment 378006
Patch

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

&gt;&gt; Source/WebInspectorUI/UserInterface/Models/ShaderProgram.js:61
&gt;&gt; +        CanvasAgent.setShaderProgramDisabled(this._identifier, disabled, (error) =&gt; {
&gt; 
&gt; We should set `this._disabled` immediately.
&gt; 
&gt; Currently if someone set the state rapidly before a response was received:
&gt; 
&gt;     shaderProgram.disabled = true;
&gt;     shaderProgram.disabled = false; // Wouldn&apos;t do anything.
&gt; 
&gt; Then the 2nd setting would potentially be missed and the frontend would leave the program in a disabled state, which would not be what we actually want.

That&apos;s true.  I really wish we had a more &quot;concrete&quot; way of ensuring that frontend state is in sync with backend state, and only updating the frontend in response to changes from the backend (like how Timelines/Audit/Canvas all have this idea of &quot;starting&quot;/&quot;stopping&quot; when the UI has requested something and hasn&apos;t yet received confirmation from the backend).

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/ShaderProgramTreeElement.js:57
&gt;&gt; +        super.detach();
&gt; 
&gt; This should be `super.ondetach()`

Oops.

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/ShaderProgramTreeElement.js:63
&gt;&gt; +    }
&gt; 
&gt; Given the superclass implementation is TreeElement, maybe this should call the super class if the specific case here is not true.

Good call!

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/SourceCodeTreeElement.js:141
&gt;&gt; +            let isBlackboxed = WI.debuggerManager.isScriptBlackboxed(this._sourceCode);
&gt; 
&gt; Does this show up very high in the context menu or rather low?

It&apos;s basically at the very bottom, right above where the &quot;Expand All&quot;/&quot;Collapse All&quot; would be.  I&apos;ll move this to `WI.appendContextMenuItemsForSourceCode` instead, right under &quot;Create Local Override:.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567936</commentid>
    <comment_count>4</comment_count>
      <attachid>378033</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-09-04 18:30:35 -0700</bug_when>
    <thetext>Created attachment 378033
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567948</commentid>
    <comment_count>5</comment_count>
      <attachid>378033</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-04 19:15:55 -0700</bug_when>
    <thetext>Comment on attachment 378033
Patch

Clearing flags on attachment: 378033

Committed r249513: &lt;https://trac.webkit.org/changeset/249513&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567949</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-04 19:15:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1567950</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-09-04 19:16:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/55050913&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>378006</attachid>
            <date>2019-09-04 13:17:59 -0700</date>
            <delta_ts>2019-09-04 18:30:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201470-20190904131758.patch</filename>
            <type>text/plain</type>
            <size>11743</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDcyYTIyMjhkZjg1MGY0Nzc2NTliYTI1MzlhOGE2
MDkxMjg5NTBkODYuLjNhYjQ4OTFjMmQ3OWU3MDc3NmFlNzgxYjRlZjYxYTk1MDg0MmQ4YjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDE5LTA5LTA0ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiB1
bmlmeSB0aGUgaW50ZXJhY3Rpb24gb2Ygc2hvdy9oaWRlIHN0YXR1cyBpY29ucyBpbiBTb3VyY2Vz
IGFuZCBDYW52YXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwMTQ3MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFJhdGhlciB0aGFuICJmYWRpbmciIHRoZSB0cmVlIGVsZW1lbnQncyB0ZXh0IHdoZW4gdGhl
IHVuZGVybHlpbmcgcmVwcmVzZW50ZWQgb2JqZWN0IGlzCisgICAgICAgIGRpc2FibGVkL2JsYWNr
Ym94ZWQsIHdlIHNob3VsZCBqdXN0ICJmYWRlIiB0aGUgaWNvbi4gVGhlICJmYWRlIiBzaG91bGRu
J3QgY2hhbmdlIHdoZW4gdGhlCisgICAgICAgIHRyZWUgZWxlbWVudCBpcyBzZWxlY3RlZCwgdW5s
ZXNzIHRoZSB1c2VyIGlzIGhvdmVyaW5nIGRpcmVjdGx5IG92ZXIgdGhlIHN0YXR1cyBleWUgKHRo
aXMKKyAgICAgICAgaGVscHMgY29udmV5IHRoZSBpZGVhIHRoYXQgY2xpY2tpbmcgdGhlIHN0YXR1
cyBleWUgaXMgbGlrZSBhIGNoZWNrYm94KS4gVGhlIGltYWdlIG9mIHRoZQorICAgICAgICBzdGF0
dXMgZXllIGFsc28gc2hvdWxkbid0IGNoYW5nZSBkZXBlbmRpbmcgb24gd2hldGhlciB0aGUgdW5k
ZXJseWluZyByZXByZXNlbnRlZCBvYmplY3QgaXMKKyAgICAgICAgZGlzYWJsZWQvYmxhY2tib3hl
ZCwgYXMgaXQgYmVpbmcgdmlzaWJsZS8iZmFkZWQiIGlzIGFscmVhZHkgZW5vdWdoIG9mIGFuIGlu
ZGljYXRvci4KKworICAgICAgICBJdCBzaG91bGQgYWxzbyBiZSBwb3NzaWJsZSB0byB0b2dnbGUg
dGhlIGRpc2FibGVkL2JsYWNrYm94ZWQgc3RhdGUgdmlhIHRoZSBjb250ZXh0IG1lbnUuCisKKyAg
ICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUcmVlRWxlbWVudC5qczoKKyAg
ICAgICAgKFdJLlNvdXJjZUNvZGVUcmVlRWxlbWVudC5wcm90b3R5cGUucG9wdWxhdGVDb250ZXh0
TWVudSk6IEFkZGVkLgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRy
ZWVFbGVtZW50LmNzczoKKyAgICAgICAgKC50cmVlLW91dGxpbmU6bm90KC5uYXZpZ2F0aW9uLXNp
ZGViYXItcGFuZWwtY29udGVudC10cmVlLW91dGxpbmUpIC5pdGVtIC5zdGF0dXMgPiAudG9nZ2xl
LXNjcmlwdC1ibGFja2JveGVkLCAudHJlZS1vdXRsaW5lIC5pdGVtOm5vdCg6aG92ZXIpIC5zdGF0
dXMgPiAudG9nZ2xlLXNjcmlwdC1ibGFja2JveGVkOm5vdCguYmxhY2tib3hlZCkpOiBBZGRlZC4K
KyAgICAgICAgKC50cmVlLW91dGxpbmU6bm90KC5uYXZpZ2F0aW9uLXNpZGViYXItcGFuZWwtY29u
dGVudC10cmVlLW91dGxpbmUpIC5pdGVtIC5zdGF0dXMgPiAudG9nZ2xlLXNjcmlwdC1ibGFja2Jv
eGVkLCAudHJlZS1vdXRsaW5lIC5pdGVtOm5vdCg6aG92ZXIsIC5zZWxlY3RlZCkgLnN0YXR1cyA+
IC50b2dnbGUtc2NyaXB0LWJsYWNrYm94ZWQ6bm90KC5ibGFja2JveGVkKSk6IERlbGV0ZWQuCisK
KyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9ncmFtLmpzOgorICAgICAg
ICAoV0kuU2hhZGVyUHJvZ3JhbSk6CisgICAgICAgIChXSS5TaGFkZXJQcm9ncmFtLnByb3RvdHlw
ZS5nZXQgZGlzYWJsZWQpOiBBZGRlZC4KKyAgICAgICAgKFdJLlNoYWRlclByb2dyYW0ucHJvdG90
eXBlLnNldCBkaXNhYmxlZCk6IEFkZGVkLgorICAgICAgICAoV0kuU2hhZGVyUHJvZ3JhbS5wcm90
b3R5cGUudG9nZ2xlRGlzYWJsZWQpOiBEZWxldGVkLgorICAgICAgICAqIFVzZXJJbnRlcmZhY2Uv
Vmlld3MvU2hhZGVyUHJvZ3JhbVRyZWVFbGVtZW50LmpzOgorICAgICAgICAoV0kuU2hhZGVyUHJv
Z3JhbVRyZWVFbGVtZW50LnByb3RvdHlwZS5vbmF0dGFjaCk6CisgICAgICAgIChXSS5TaGFkZXJQ
cm9ncmFtVHJlZUVsZW1lbnQucHJvdG90eXBlLm9uZGV0YWNoKTogQWRkZWQuCisgICAgICAgIChX
SS5TaGFkZXJQcm9ncmFtVHJlZUVsZW1lbnQucHJvdG90eXBlLmNhblNlbGVjdE9uTW91c2VEb3du
KToKKyAgICAgICAgKFdJLlNoYWRlclByb2dyYW1UcmVlRWxlbWVudC5wcm90b3R5cGUucG9wdWxh
dGVDb250ZXh0TWVudSk6IEFkZGVkLgorICAgICAgICAoV0kuU2hhZGVyUHJvZ3JhbVRyZWVFbGVt
ZW50LnByb3RvdHlwZS5fZGlzYWJsZWRJbWFnZUVsZW1lbnRDbGlja2VkKToKKyAgICAgICAgKFdJ
LlNoYWRlclByb2dyYW1UcmVlRWxlbWVudC5wcm90b3R5cGUuX2hhbmRsZVNoYWRlclByb2dyYW1E
aXNhYmxlZENoYW5nZWQpOiBBZGRlZC4KKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1No
YWRlclByb2dyYW1UcmVlRWxlbWVudC5jc3M6CisgICAgICAgICgudHJlZS1vdXRsaW5lIC5pdGVt
LnNoYWRlci1wcm9ncmFtIC5zdGF0dXMgPiBpbWcpOiBBZGRlZC4KKyAgICAgICAgKC50cmVlLW91
dGxpbmUgLml0ZW0uc2hhZGVyLXByb2dyYW06bm90KDpob3ZlciwgLnNlbGVjdGVkLCAuZGlzYWJs
ZWQpIC5zdGF0dXMgPiBpbWcpOiBBZGRlZC4KKyAgICAgICAgKC50cmVlLW91dGxpbmUgLml0ZW0u
c2hhZGVyLXByb2dyYW0uZGlzYWJsZWQgLnN0YXR1cyA+IGltZyk6IEFkZGVkLgorICAgICAgICAo
QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgLnRyZWUtb3V0bGluZSAuaXRlbS5z
aGFkZXItcHJvZ3JhbSAuc3RhdHVzID4gaW1nKTogQWRkZWQuCisgICAgICAgICguaXRlbS5zaGFk
ZXItcHJvZ3JhbSAuc3RhdHVzID4gaW1nKTogRGVsZXRlZC4KKyAgICAgICAgKC5pdGVtLnNoYWRl
ci1wcm9ncmFtLmRpc2FibGVkOmhvdmVyIC5zdGF0dXMgPiBpbWcpOiBEZWxldGVkLgorICAgICAg
ICAoLml0ZW0uc2hhZGVyLXByb2dyYW06bm90KDpob3ZlciwgLnNlbGVjdGVkLCAuZGlzYWJsZWQp
IC5zdGF0dXMgPiBpbWcpOiBEZWxldGVkLgorICAgICAgICAoLml0ZW0uc2hhZGVyLXByb2dyYW0u
ZGlzYWJsZWQgPiA6bm90KC5zdGF0dXMpKTogRGVsZXRlZC4KKyAgICAgICAgKEBtZWRpYSAocHJl
ZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIC5pdGVtLnNoYWRlci1wcm9ncmFtIC5zdGF0dXMgPiBp
bWcpOiBEZWxldGVkLgorCiAyMDE5LTA5LTAzICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxl
LmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBwcm92aWRlIGEgd2F5IHRvIHZpZXcgWE1M
L0hUTUwvU1ZHIHJlc291cmNlIHJlc3BvbnNlcyBhcyBhIERPTSB0cmVlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvU2hhZGVyUHJvZ3JhbS5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9n
cmFtLmpzCmluZGV4IGY0MTkxZjQyNTgxMGNhNjIyMjcwOThjZDE3ZmE4OWE4ZGRiYmZhMzIuLjhm
YTgwYzQxMGEzNThhMzhkYzBlYWI2YTk5ZmI3MWJiNzZiMWNhZWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9ncmFtLmpzCisr
KyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9n
cmFtLmpzCkBAIC0yMywxMyArMjMsMTUgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi1XSS5TaGFkZXJQcm9ncmFtID0gY2xhc3MgU2hhZGVyUHJvZ3JhbQorV0ku
U2hhZGVyUHJvZ3JhbSA9IGNsYXNzIFNoYWRlclByb2dyYW0gZXh0ZW5kcyBXSS5PYmplY3QKIHsK
ICAgICBjb25zdHJ1Y3RvcihpZGVudGlmaWVyLCBjYW52YXMpCiAgICAgewogICAgICAgICBjb25z
b2xlLmFzc2VydChpZGVudGlmaWVyKTsKICAgICAgICAgY29uc29sZS5hc3NlcnQoY2FudmFzIGlu
c3RhbmNlb2YgV0kuQ2FudmFzKTsKIAorICAgICAgICBzdXBlcigpOworCiAgICAgICAgIHRoaXMu
X2lkZW50aWZpZXIgPSBpZGVudGlmaWVyOwogICAgICAgICB0aGlzLl9jYW52YXMgPSBjYW52YXM7
CiAgICAgICAgIHRoaXMuX3VuaXF1ZURpc3BsYXlOdW1iZXIgPSBjYW52YXMubmV4dFNoYWRlclBy
b2dyYW1EaXNwbGF5TnVtYmVyKCk7CkBAIC00MCwxMyArNDIsMzMgQEAgV0kuU2hhZGVyUHJvZ3Jh
bSA9IGNsYXNzIFNoYWRlclByb2dyYW0KIAogICAgIGdldCBpZGVudGlmaWVyKCkgeyByZXR1cm4g
dGhpcy5faWRlbnRpZmllcjsgfQogICAgIGdldCBjYW52YXMoKSB7IHJldHVybiB0aGlzLl9jYW52
YXM7IH0KLSAgICBnZXQgZGlzYWJsZWQoKSB7IHJldHVybiB0aGlzLl9kaXNhYmxlZDsgfQogCiAg
ICAgZ2V0IGRpc3BsYXlOYW1lKCkKICAgICB7CiAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygi
UHJvZ3JhbSAlZCIpLmZvcm1hdCh0aGlzLl91bmlxdWVEaXNwbGF5TnVtYmVyKTsKICAgICB9CiAK
KyAgICBnZXQgZGlzYWJsZWQoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVk
OworICAgIH0KKworICAgIHNldCBkaXNhYmxlZChkaXNhYmxlZCkKKyAgICB7CisgICAgICAgIGlm
ICh0aGlzLl9kaXNhYmxlZCA9PT0gZGlzYWJsZWQpCisgICAgICAgICAgICByZXR1cm47CisKKyAg
ICAgICAgQ2FudmFzQWdlbnQuc2V0U2hhZGVyUHJvZ3JhbURpc2FibGVkKHRoaXMuX2lkZW50aWZp
ZXIsIGRpc2FibGVkLCAoZXJyb3IpID0+IHsKKyAgICAgICAgICAgIGlmIChlcnJvcikgeworICAg
ICAgICAgICAgICAgIFdJLnJlcG9ydEludGVybmFsRXJyb3IoZXJyb3IpOworICAgICAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQg
PSBkaXNhYmxlZDsKKyAgICAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFNo
YWRlclByb2dyYW0uRXZlbnQuRGlzYWJsZWRDaGFuZ2VkKTsKKyAgICAgICAgfSk7CisgICAgfQor
CiAgICAgcmVxdWVzdFZlcnRleFNoYWRlclNvdXJjZShjYWxsYmFjaykKICAgICB7CiAgICAgICAg
IHRoaXMuX3JlcXVlc3RTaGFkZXJTb3VyY2UoQ2FudmFzQWdlbnQuU2hhZGVyVHlwZS5WZXJ0ZXgs
IGNhbGxiYWNrKTsKQEAgLTY3LDE4ICs4OSw2IEBAIFdJLlNoYWRlclByb2dyYW0gPSBjbGFzcyBT
aGFkZXJQcm9ncmFtCiAgICAgICAgIHRoaXMuX3VwZGF0ZVNoYWRlcihDYW52YXNBZ2VudC5TaGFk
ZXJUeXBlLkZyYWdtZW50LCBzb3VyY2UpOwogICAgIH0KIAotICAgIHRvZ2dsZURpc2FibGVkKGNh
bGxiYWNrKQotICAgIHsKLSAgICAgICAgQ2FudmFzQWdlbnQuc2V0U2hhZGVyUHJvZ3JhbURpc2Fi
bGVkKHRoaXMuX2lkZW50aWZpZXIsICF0aGlzLl9kaXNhYmxlZCwgKGVycm9yKSA9PiB7Ci0gICAg
ICAgICAgICBjb25zb2xlLmFzc2VydCghZXJyb3IsIGVycm9yKTsKLSAgICAgICAgICAgIGlmIChl
cnJvcikKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgICAgIHRoaXMuX2Rpc2Fi
bGVkID0gIXRoaXMuX2Rpc2FibGVkOwotICAgICAgICAgICAgY2FsbGJhY2soKTsKLSAgICAgICAg
fSk7Ci0gICAgfQotCiAgICAgc2hvd0hpZ2hsaWdodCgpCiAgICAgewogICAgICAgICBjb25zdCBo
aWdobGlnaHRlZCA9IHRydWU7CkBAIC0xMjEsMyArMTMxLDcgQEAgV0kuU2hhZGVyUHJvZ3JhbS5T
aGFkZXJUeXBlID0gewogICAgIEZyYWdtZW50OiAic2hhZGVyLXR5cGUtZnJhZ21lbnQiLAogICAg
IFZlcnRleDogInNoYWRlci10eXBlLXZlcnRleCIsCiB9OworCitXSS5TaGFkZXJQcm9ncmFtLkV2
ZW50ID0geworICAgIERpc2FibGVkQ2hhbmdlZDogInNoYWRlci1wcm9ncmFtLWRpc2FibGVkLWNo
YW5nZWQiLAorfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL1NoYWRlclByb2dyYW1UcmVlRWxlbWVudC5jc3MgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TaGFkZXJQcm9ncmFtVHJlZUVsZW1lbnQuY3NzCmlu
ZGV4IDU2ODk1OTE3NjVjYWU5NmMwMWEzMzk4YmIwZDkxZWM1YTdiY2NlNDkuLjhkMjNlYTk3NTk1
OTM0M2ZjM2RiMzVkMGNjZGM3ZDFhMGUxZjk5ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NoYWRlclByb2dyYW1UcmVlRWxlbWVudC5jc3MK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2hhZGVyUHJv
Z3JhbVRyZWVFbGVtZW50LmNzcwpAQCAtMjMsMTcgKzIzLDEzIEBACiAgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotLml0ZW0uc2hhZGVyLXByb2dyYW0gLnN0YXR1cyA+
IGltZyB7CisgLnRyZWUtb3V0bGluZSAuaXRlbS5zaGFkZXItcHJvZ3JhbSAuc3RhdHVzID4gaW1n
IHsKICAgICB3aWR0aDogMThweDsKICAgICBtYXJnaW4tdG9wOiAycHg7CiAgICAgY29udGVudDog
dXJsKC4uL0ltYWdlcy9IaWRlLnN2Zyk7CiB9CiAKLS5pdGVtLnNoYWRlci1wcm9ncmFtLmRpc2Fi
bGVkOmhvdmVyIC5zdGF0dXMgPiBpbWcgewotICAgIGNvbnRlbnQ6IHVybCguLi9JbWFnZXMvU2hv
dy5zdmcpOwotfQotCi0uaXRlbS5zaGFkZXItcHJvZ3JhbTpub3QoOmhvdmVyLCAuc2VsZWN0ZWQs
IC5kaXNhYmxlZCkgLnN0YXR1cyA+IGltZyB7CisudHJlZS1vdXRsaW5lIC5pdGVtLnNoYWRlci1w
cm9ncmFtOm5vdCg6aG92ZXIsIC5zZWxlY3RlZCwgLmRpc2FibGVkKSAuc3RhdHVzID4gaW1nIHsK
ICAgICBkaXNwbGF5OiBub25lOwogfQogCkBAIC00MSwxMiArMzcsMTIgQEAKICAgICBmaWx0ZXI6
IGludmVydCgpOwogfQogCi0uaXRlbS5zaGFkZXItcHJvZ3JhbS5kaXNhYmxlZCA+IDpub3QoLnN0
YXR1cykgeworLnRyZWUtb3V0bGluZSAuaXRlbS5zaGFkZXItcHJvZ3JhbS5kaXNhYmxlZCAuc3Rh
dHVzID4gaW1nIHsKICAgICBvcGFjaXR5OiAwLjU7CiB9CiAKIEBtZWRpYSAocHJlZmVycy1jb2xv
ci1zY2hlbWU6IGRhcmspIHsKLSAgICAuaXRlbS5zaGFkZXItcHJvZ3JhbSAuc3RhdHVzID4gaW1n
IHsKKyAgICAudHJlZS1vdXRsaW5lIC5pdGVtLnNoYWRlci1wcm9ncmFtIC5zdGF0dXMgPiBpbWcg
ewogICAgICAgICBmaWx0ZXI6IGludmVydCgpOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NoYWRlclByb2dyYW1UcmVlRWxl
bWVudC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NoYWRl
clByb2dyYW1UcmVlRWxlbWVudC5qcwppbmRleCBmZWY2OTE3MzE2NWJlZTBkY2FlZjAzODYyODk0
ZDk2OGQ1MGIxN2JhLi44NDdhM2IyMzA2ZTQ5YTY5OTBlMjI3ZDBkODQzZGQ0ZDYyOWVhNWY5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TaGFk
ZXJQcm9ncmFtVHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvVmlld3MvU2hhZGVyUHJvZ3JhbVRyZWVFbGVtZW50LmpzCkBAIC00NCwyMyArNDQs
NDcgQEAgV0kuU2hhZGVyUHJvZ3JhbVRyZWVFbGVtZW50ID0gY2xhc3MgU2hhZGVyUHJvZ3JhbVRy
ZWVFbGVtZW50IGV4dGVuZHMgV0kuR2VuZXJhbFQKICAgICB7CiAgICAgICAgIHN1cGVyLm9uYXR0
YWNoKCk7CiAKKyAgICAgICAgdGhpcy5yZXByZXNlbnRlZE9iamVjdC5hZGRFdmVudExpc3RlbmVy
KFdJLlNoYWRlclByb2dyYW0uRXZlbnQuRGlzYWJsZWRDaGFuZ2VkLCB0aGlzLl9oYW5kbGVTaGFk
ZXJQcm9ncmFtRGlzYWJsZWRDaGFuZ2VkLCB0aGlzKTsKKwogICAgICAgICB0aGlzLmVsZW1lbnQu
YWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIiwgdGhpcy5faGFuZGxlTW91c2VPdmVyLmJpbmQo
dGhpcykpOwogICAgICAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdXQi
LCB0aGlzLl9oYW5kbGVNb3VzZU91dC5iaW5kKHRoaXMpKTsKICAgICB9CiAKKyAgICBvbmRldGFj
aCgpCisgICAgeworICAgICAgICB0aGlzLnJlcHJlc2VudGVkT2JqZWN0LnJlbW92ZUV2ZW50TGlz
dGVuZXIoV0kuU2hhZGVyUHJvZ3JhbS5FdmVudC5EaXNhYmxlZENoYW5nZWQsIHRoaXMuX2hhbmRs
ZVNoYWRlclByb2dyYW1EaXNhYmxlZENoYW5nZWQsIHRoaXMpOworCisgICAgICAgIHN1cGVyLmRl
dGFjaCgpOworICAgIH0KKwogICAgIGNhblNlbGVjdE9uTW91c2VEb3duKGV2ZW50KQogICAgIHsK
LSAgICAgICAgcmV0dXJuICF0aGlzLl9zdGF0dXNFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdl
dCk7CisgICAgICAgIHJldHVybiAhdGhpcy5fZGlzYWJsZWRJbWFnZUVsZW1lbnQuY29udGFpbnMo
ZXZlbnQudGFyZ2V0KTsKKyAgICB9CisKKyAgICBwb3B1bGF0ZUNvbnRleHRNZW51KGNvbnRleHRN
ZW51LCBldmVudCkKKyAgICB7CisgICAgICAgIGxldCBkaXNhYmxlZCA9IHRoaXMucmVwcmVzZW50
ZWRPYmplY3QuZGlzYWJsZWQ7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oZGlzYWJs
ZWQgPyBXSS5VSVN0cmluZygiRW5hYmxlIFByb2dyYW0iKSA6IFdJLlVJU3RyaW5nKCJEaXNhYmxl
IFByb2dyYW0iKSwgKCkgPT4geworICAgICAgICAgICAgdGhpcy5yZXByZXNlbnRlZE9iamVjdC5k
aXNhYmxlZCA9ICFkaXNhYmxlZDsKKyAgICAgICAgfSk7CisKKyAgICAgICAgY29udGV4dE1lbnUu
YXBwZW5kU2VwYXJhdG9yKCk7CisKKyAgICAgICAgc3VwZXIucG9wdWxhdGVDb250ZXh0TWVudShj
b250ZXh0TWVudSwgZXZlbnQpOwogICAgIH0KIAogICAgIC8vIFByaXZhdGUKIAogICAgIF9kaXNh
YmxlZEltYWdlRWxlbWVudENsaWNrZWQoZXZlbnQpCiAgICAgewotICAgICAgICB0aGlzLnJlcHJl
c2VudGVkT2JqZWN0LnRvZ2dsZURpc2FibGVkKCgpID0+IHsKLSAgICAgICAgICAgIHRoaXMuX2xp
c3RJdGVtTm9kZS5jbGFzc0xpc3QudG9nZ2xlKCJkaXNhYmxlZCIsICEhdGhpcy5yZXByZXNlbnRl
ZE9iamVjdC5kaXNhYmxlZCk7Ci0gICAgICAgICAgICB0aGlzLl9kaXNhYmxlZEltYWdlRWxlbWVu
dC50aXRsZSA9IHRoaXMucmVwcmVzZW50ZWRPYmplY3QuZGlzYWJsZWQgPyBXSS5VSVN0cmluZygi
RW5hYmxlIFByb2dyYW0iKSA6IFdJLlVJU3RyaW5nKCJEaXNhYmxlIFByb2dyYW0iKTsKLSAgICAg
ICAgfSk7CisgICAgICAgIHRoaXMucmVwcmVzZW50ZWRPYmplY3QuZGlzYWJsZWQgPSAhdGhpcy5y
ZXByZXNlbnRlZE9iamVjdC5kaXNhYmxlZDsKKyAgICB9CisKKyAgICBfaGFuZGxlU2hhZGVyUHJv
Z3JhbURpc2FibGVkQ2hhbmdlZChldmVudCkKKyAgICB7CisgICAgICAgIHRoaXMuX2xpc3RJdGVt
Tm9kZS5jbGFzc0xpc3QudG9nZ2xlKCJkaXNhYmxlZCIsICEhdGhpcy5yZXByZXNlbnRlZE9iamVj
dC5kaXNhYmxlZCk7CisgICAgICAgIHRoaXMuX2Rpc2FibGVkSW1hZ2VFbGVtZW50LnRpdGxlID0g
dGhpcy5yZXByZXNlbnRlZE9iamVjdC5kaXNhYmxlZCA/IFdJLlVJU3RyaW5nKCJFbmFibGUgUHJv
Z3JhbSIpIDogV0kuVUlTdHJpbmcoIkRpc2FibGUgUHJvZ3JhbSIpOwogICAgIH0KIAogICAgIF9o
YW5kbGVNb3VzZU92ZXIoZXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVHJlZUVsZW1lbnQuY3NzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRyZWVFbGVtZW50LmNz
cwppbmRleCA3NmQ4OGEzNjYxOTk2ZjRmNzg1N2RhMGY5OTViZWZmMTZiNTIyYmE5Li44NDJkOTg3
NTM0MTdmOThkNDhlYjMzY2I3N2FhZDM3OGQ5YTYzNGIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVHJlZUVsZW1lbnQuY3Nz
CisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNv
ZGVUcmVlRWxlbWVudC5jc3MKQEAgLTMwLDcgKzMwLDcgQEAKIH0KIAogLnRyZWUtb3V0bGluZTpu
b3QoLm5hdmlnYXRpb24tc2lkZWJhci1wYW5lbC1jb250ZW50LXRyZWUtb3V0bGluZSkgLml0ZW0g
LnN0YXR1cyA+IC50b2dnbGUtc2NyaXB0LWJsYWNrYm94ZWQsCi0udHJlZS1vdXRsaW5lIC5pdGVt
Om5vdCg6aG92ZXIsIC5zZWxlY3RlZCkgLnN0YXR1cyA+IC50b2dnbGUtc2NyaXB0LWJsYWNrYm94
ZWQ6bm90KC5ibGFja2JveGVkKSB7CisudHJlZS1vdXRsaW5lIC5pdGVtOm5vdCg6aG92ZXIpIC5z
dGF0dXMgPiAudG9nZ2xlLXNjcmlwdC1ibGFja2JveGVkOm5vdCguYmxhY2tib3hlZCkgewogICAg
IGRpc3BsYXk6IG5vbmU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUcmVlRWxlbWVudC5qcyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUcmVlRWxlbWVudC5qcwpp
bmRleCA0YzI4OGFhMWUyYzgzNjE5ODFkMWQxMzQzNjA0NTMwYTRjOGVmNTQ4Li4xZGRhNWYzOTlh
MTEzMDc3OWJhMjY3YWEyZDQ4YWNjMGFjNzI0MDcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVHJlZUVsZW1lbnQuanMKKysr
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291cmNlQ29kZVRy
ZWVFbGVtZW50LmpzCkBAIC0xMzUsNiArMTM1LDIwIEBAIFdJLlNvdXJjZUNvZGVUcmVlRWxlbWVu
dCA9IGNsYXNzIFNvdXJjZUNvZGVUcmVlRWxlbWVudCBleHRlbmRzIFdJLkZvbGRlcml6ZWRUcmVl
CiAgICAgICAgIHJldHVybiBzdXBlci5jYW5TZWxlY3RPbk1vdXNlRG93bihldmVudCk7CiAgICAg
fQogCisgICAgcG9wdWxhdGVDb250ZXh0TWVudShjb250ZXh0TWVudSwgZXZlbnQpCisgICAgewor
ICAgICAgICBpZiAodGhpcy5fc291cmNlQ29kZS5zdXBwb3J0c1NjcmlwdEJsYWNrYm94aW5nKSB7
CisgICAgICAgICAgICBsZXQgaXNCbGFja2JveGVkID0gV0kuZGVidWdnZXJNYW5hZ2VyLmlzU2Ny
aXB0QmxhY2tib3hlZCh0aGlzLl9zb3VyY2VDb2RlKTsKKyAgICAgICAgICAgIGNvbnRleHRNZW51
LmFwcGVuZEl0ZW0oaXNCbGFja2JveGVkID8gV0kuVUlTdHJpbmcoIkluY2x1ZGUgc2NyaXB0IHdo
ZW4gZGVidWdnaW5nIikgOiBXSS5VSVN0cmluZygiSWdub3JlIHNjcmlwdCB3aGVuIGRlYnVnZ2lu
ZyIpLCAoKSA9PiB7CisgICAgICAgICAgICAgICAgV0kuZGVidWdnZXJNYW5hZ2VyLnNldFNob3Vs
ZEJsYWNrYm94U2NyaXB0KHRoaXMuX3NvdXJjZUNvZGUsICFpc0JsYWNrYm94ZWQpOworICAgICAg
ICAgICAgfSk7CisKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwor
ICAgICAgICB9CisKKyAgICAgICAgc3VwZXIucG9wdWxhdGVDb250ZXh0TWVudShjb250ZXh0TWVu
dSwgZXZlbnQpOworICAgIH0KKwogICAgIC8vIFByb3RlY3RlZAogCiAgICAgZGVzY2VuZGFudFJl
c291cmNlVHJlZUVsZW1lbnRUeXBlRGlkQ2hhbmdlKGNoaWxkVHJlZUVsZW1lbnQsIG9sZFR5cGUp
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>378033</attachid>
            <date>2019-09-04 18:30:35 -0700</date>
            <delta_ts>2019-09-04 19:15:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201470-20190904183034.patch</filename>
            <type>text/plain</type>
            <size>11426</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDdjOTBkMDExY2Y3N2U0YmMzNjQ3NTgyZWJhMGQw
Zjc0MDAwMTI1ZTAuLjUzZDJiYjg0YzgyMzY0YjA3NzFjZDZlOTJlZGY4ZmE3NWVkZTQxYTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE5LTA5LTA0ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiB1
bmlmeSB0aGUgaW50ZXJhY3Rpb24gb2Ygc2hvdy9oaWRlIHN0YXR1cyBpY29ucyBpbiBTb3VyY2Vz
IGFuZCBDYW52YXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIwMTQ3MAorCisgICAgICAgIFJldmlld2VkIGJ5IEpvc2VwaCBQZWNvcmFyby4KKworICAg
ICAgICBSYXRoZXIgdGhhbiAiZmFkaW5nIiB0aGUgdHJlZSBlbGVtZW50J3MgdGV4dCB3aGVuIHRo
ZSB1bmRlcmx5aW5nIHJlcHJlc2VudGVkIG9iamVjdCBpcworICAgICAgICBkaXNhYmxlZC9ibGFj
a2JveGVkLCB3ZSBzaG91bGQganVzdCAiZmFkZSIgdGhlIGljb24uIFRoZSAiZmFkZSIgc2hvdWxk
bid0IGNoYW5nZSB3aGVuIHRoZQorICAgICAgICB0cmVlIGVsZW1lbnQgaXMgc2VsZWN0ZWQuIFRo
ZSBpbWFnZSBvZiB0aGUgc3RhdHVzIGV5ZSBhbHNvIHNob3VsZG4ndCBjaGFuZ2UgZGVwZW5kaW5n
IG9uCisgICAgICAgIHdoZXRoZXIgdGhlIHVuZGVybHlpbmcgcmVwcmVzZW50ZWQgb2JqZWN0IGlz
IGRpc2FibGVkL2JsYWNrYm94ZWQsIGFzIGl0IGJlaW5nIHZpc2libGUgKGV2ZW4KKyAgICAgICAg
aWYgaXQncyAiZmFkZWQiKSBpcyBhbHJlYWR5IGVub3VnaCBvZiBhbiBpbmRpY2F0b3IuCisKKyAg
ICAgICAgSXQgc2hvdWxkIGFsc28gYmUgcG9zc2libGUgdG8gdG9nZ2xlIHRoZSBkaXNhYmxlZC9i
bGFja2JveGVkIHN0YXRlIHZpYSB0aGUgY29udGV4dCBtZW51LgorCisgICAgICAgICogVXNlcklu
dGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qczoKKyAgICAgICAgKFdJLmFwcGVu
ZENvbnRleHRNZW51SXRlbXNGb3JTb3VyY2VDb2RlKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNl
L1ZpZXdzL1NvdXJjZUNvZGVUcmVlRWxlbWVudC5jc3M6CisgICAgICAgICgudHJlZS1vdXRsaW5l
Om5vdCgubmF2aWdhdGlvbi1zaWRlYmFyLXBhbmVsLWNvbnRlbnQtdHJlZS1vdXRsaW5lKSAuaXRl
bSAuc3RhdHVzID4gLnRvZ2dsZS1zY3JpcHQtYmxhY2tib3hlZCwgLnRyZWUtb3V0bGluZSAuaXRl
bTpub3QoOmhvdmVyKSAuc3RhdHVzID4gLnRvZ2dsZS1zY3JpcHQtYmxhY2tib3hlZDpub3QoLmJs
YWNrYm94ZWQpKTogQWRkZWQuCisgICAgICAgICgudHJlZS1vdXRsaW5lOm5vdCgubmF2aWdhdGlv
bi1zaWRlYmFyLXBhbmVsLWNvbnRlbnQtdHJlZS1vdXRsaW5lKSAuaXRlbSAuc3RhdHVzID4gLnRv
Z2dsZS1zY3JpcHQtYmxhY2tib3hlZCwgLnRyZWUtb3V0bGluZSAuaXRlbTpub3QoOmhvdmVyLCAu
c2VsZWN0ZWQpIC5zdGF0dXMgPiAudG9nZ2xlLXNjcmlwdC1ibGFja2JveGVkOm5vdCguYmxhY2ti
b3hlZCkpOiBEZWxldGVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvU2hhZGVy
UHJvZ3JhbS5qczoKKyAgICAgICAgKFdJLlNoYWRlclByb2dyYW0pOgorICAgICAgICAoV0kuU2hh
ZGVyUHJvZ3JhbS5wcm90b3R5cGUuZ2V0IGRpc2FibGVkKTogQWRkZWQuCisgICAgICAgIChXSS5T
aGFkZXJQcm9ncmFtLnByb3RvdHlwZS5zZXQgZGlzYWJsZWQpOiBBZGRlZC4KKyAgICAgICAgKFdJ
LlNoYWRlclByb2dyYW0ucHJvdG90eXBlLnRvZ2dsZURpc2FibGVkKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1NoYWRlclByb2dyYW1UcmVlRWxlbWVudC5qczoKKyAg
ICAgICAgKFdJLlNoYWRlclByb2dyYW1UcmVlRWxlbWVudC5wcm90b3R5cGUub25hdHRhY2gpOgor
ICAgICAgICAoV0kuU2hhZGVyUHJvZ3JhbVRyZWVFbGVtZW50LnByb3RvdHlwZS5vbmRldGFjaCk6
IEFkZGVkLgorICAgICAgICAoV0kuU2hhZGVyUHJvZ3JhbVRyZWVFbGVtZW50LnByb3RvdHlwZS5j
YW5TZWxlY3RPbk1vdXNlRG93bik6CisgICAgICAgIChXSS5TaGFkZXJQcm9ncmFtVHJlZUVsZW1l
bnQucHJvdG90eXBlLnBvcHVsYXRlQ29udGV4dE1lbnUpOiBBZGRlZC4KKyAgICAgICAgKFdJLlNo
YWRlclByb2dyYW1UcmVlRWxlbWVudC5wcm90b3R5cGUuX2Rpc2FibGVkSW1hZ2VFbGVtZW50Q2xp
Y2tlZCk6CisgICAgICAgIChXSS5TaGFkZXJQcm9ncmFtVHJlZUVsZW1lbnQucHJvdG90eXBlLl9o
YW5kbGVTaGFkZXJQcm9ncmFtRGlzYWJsZWRDaGFuZ2VkKTogQWRkZWQuCisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9TaGFkZXJQcm9ncmFtVHJlZUVsZW1lbnQuY3NzOgorICAgICAgICAo
LnRyZWUtb3V0bGluZSAuaXRlbS5zaGFkZXItcHJvZ3JhbSAuc3RhdHVzID4gaW1nKTogQWRkZWQu
CisgICAgICAgICgudHJlZS1vdXRsaW5lIC5pdGVtLnNoYWRlci1wcm9ncmFtOm5vdCg6aG92ZXIs
IC5zZWxlY3RlZCwgLmRpc2FibGVkKSAuc3RhdHVzID4gaW1nKTogQWRkZWQuCisgICAgICAgICgu
dHJlZS1vdXRsaW5lIC5pdGVtLnNoYWRlci1wcm9ncmFtLmRpc2FibGVkIC5zdGF0dXMgPiBpbWcp
OiBBZGRlZC4KKyAgICAgICAgKEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIC50
cmVlLW91dGxpbmUgLml0ZW0uc2hhZGVyLXByb2dyYW0gLnN0YXR1cyA+IGltZyk6IEFkZGVkLgor
ICAgICAgICAoLml0ZW0uc2hhZGVyLXByb2dyYW0gLnN0YXR1cyA+IGltZyk6IERlbGV0ZWQuCisg
ICAgICAgICguaXRlbS5zaGFkZXItcHJvZ3JhbS5kaXNhYmxlZDpob3ZlciAuc3RhdHVzID4gaW1n
KTogRGVsZXRlZC4KKyAgICAgICAgKC5pdGVtLnNoYWRlci1wcm9ncmFtOm5vdCg6aG92ZXIsIC5z
ZWxlY3RlZCwgLmRpc2FibGVkKSAuc3RhdHVzID4gaW1nKTogRGVsZXRlZC4KKyAgICAgICAgKC5p
dGVtLnNoYWRlci1wcm9ncmFtLmRpc2FibGVkID4gOm5vdCguc3RhdHVzKSk6IERlbGV0ZWQuCisg
ICAgICAgIChAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSAuaXRlbS5zaGFkZXIt
cHJvZ3JhbSAuc3RhdHVzID4gaW1nKTogRGVsZXRlZC4KKwogMjAxOS0wOS0wNCAgSm9zZXBoIFBl
Y29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IExv
Y2FsIE92ZXJyaWRlcyAtIFByb3ZpZGUgc3Vic3RpdHV0aW9uIGNvbnRlbnQgZm9yIHJlc291cmNl
IGxvYWRzIChVUkwgYmFzZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9Nb2RlbHMvU2hhZGVyUHJvZ3JhbS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9ncmFtLmpzCmluZGV4IGY0MTkxZjQyNTgx
MGNhNjIyMjcwOThjZDE3ZmE4OWE4ZGRiYmZhMzIuLmMxZWQ5YzhhYzdmYzQyMDdlN2I4MGZkNzBj
MjBmNzY4ZjA4MWQxNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9ncmFtLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL01vZGVscy9TaGFkZXJQcm9ncmFtLmpzCkBAIC0yMywxMyArMjMsMTUg
QEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi1XSS5TaGFkZXJQ
cm9ncmFtID0gY2xhc3MgU2hhZGVyUHJvZ3JhbQorV0kuU2hhZGVyUHJvZ3JhbSA9IGNsYXNzIFNo
YWRlclByb2dyYW0gZXh0ZW5kcyBXSS5PYmplY3QKIHsKICAgICBjb25zdHJ1Y3RvcihpZGVudGlm
aWVyLCBjYW52YXMpCiAgICAgewogICAgICAgICBjb25zb2xlLmFzc2VydChpZGVudGlmaWVyKTsK
ICAgICAgICAgY29uc29sZS5hc3NlcnQoY2FudmFzIGluc3RhbmNlb2YgV0kuQ2FudmFzKTsKIAor
ICAgICAgICBzdXBlcigpOworCiAgICAgICAgIHRoaXMuX2lkZW50aWZpZXIgPSBpZGVudGlmaWVy
OwogICAgICAgICB0aGlzLl9jYW52YXMgPSBjYW52YXM7CiAgICAgICAgIHRoaXMuX3VuaXF1ZURp
c3BsYXlOdW1iZXIgPSBjYW52YXMubmV4dFNoYWRlclByb2dyYW1EaXNwbGF5TnVtYmVyKCk7CkBA
IC00MCwxMyArNDIsMjkgQEAgV0kuU2hhZGVyUHJvZ3JhbSA9IGNsYXNzIFNoYWRlclByb2dyYW0K
IAogICAgIGdldCBpZGVudGlmaWVyKCkgeyByZXR1cm4gdGhpcy5faWRlbnRpZmllcjsgfQogICAg
IGdldCBjYW52YXMoKSB7IHJldHVybiB0aGlzLl9jYW52YXM7IH0KLSAgICBnZXQgZGlzYWJsZWQo
KSB7IHJldHVybiB0aGlzLl9kaXNhYmxlZDsgfQogCiAgICAgZ2V0IGRpc3BsYXlOYW1lKCkKICAg
ICB7CiAgICAgICAgIHJldHVybiBXSS5VSVN0cmluZygiUHJvZ3JhbSAlZCIpLmZvcm1hdCh0aGlz
Ll91bmlxdWVEaXNwbGF5TnVtYmVyKTsKICAgICB9CiAKKyAgICBnZXQgZGlzYWJsZWQoKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkOworICAgIH0KKworICAgIHNldCBkaXNh
YmxlZChkaXNhYmxlZCkKKyAgICB7CisgICAgICAgIGlmICh0aGlzLl9kaXNhYmxlZCA9PT0gZGlz
YWJsZWQpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBk
aXNhYmxlZDsKKworICAgICAgICBDYW52YXNBZ2VudC5zZXRTaGFkZXJQcm9ncmFtRGlzYWJsZWQo
dGhpcy5faWRlbnRpZmllciwgZGlzYWJsZWQpOworCisgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVu
dFRvTGlzdGVuZXJzKFNoYWRlclByb2dyYW0uRXZlbnQuRGlzYWJsZWRDaGFuZ2VkKTsKKyAgICB9
CisKICAgICByZXF1ZXN0VmVydGV4U2hhZGVyU291cmNlKGNhbGxiYWNrKQogICAgIHsKICAgICAg
ICAgdGhpcy5fcmVxdWVzdFNoYWRlclNvdXJjZShDYW52YXNBZ2VudC5TaGFkZXJUeXBlLlZlcnRl
eCwgY2FsbGJhY2spOwpAQCAtNjcsMTggKzg1LDYgQEAgV0kuU2hhZGVyUHJvZ3JhbSA9IGNsYXNz
IFNoYWRlclByb2dyYW0KICAgICAgICAgdGhpcy5fdXBkYXRlU2hhZGVyKENhbnZhc0FnZW50LlNo
YWRlclR5cGUuRnJhZ21lbnQsIHNvdXJjZSk7CiAgICAgfQogCi0gICAgdG9nZ2xlRGlzYWJsZWQo
Y2FsbGJhY2spCi0gICAgewotICAgICAgICBDYW52YXNBZ2VudC5zZXRTaGFkZXJQcm9ncmFtRGlz
YWJsZWQodGhpcy5faWRlbnRpZmllciwgIXRoaXMuX2Rpc2FibGVkLCAoZXJyb3IpID0+IHsKLSAg
ICAgICAgICAgIGNvbnNvbGUuYXNzZXJ0KCFlcnJvciwgZXJyb3IpOwotICAgICAgICAgICAgaWYg
KGVycm9yKQotICAgICAgICAgICAgICAgIHJldHVybjsKLQotICAgICAgICAgICAgdGhpcy5fZGlz
YWJsZWQgPSAhdGhpcy5fZGlzYWJsZWQ7Ci0gICAgICAgICAgICBjYWxsYmFjaygpOwotICAgICAg
ICB9KTsKLSAgICB9Ci0KICAgICBzaG93SGlnaGxpZ2h0KCkKICAgICB7CiAgICAgICAgIGNvbnN0
IGhpZ2hsaWdodGVkID0gdHJ1ZTsKQEAgLTEyMSwzICsxMjcsNyBAQCBXSS5TaGFkZXJQcm9ncmFt
LlNoYWRlclR5cGUgPSB7CiAgICAgRnJhZ21lbnQ6ICJzaGFkZXItdHlwZS1mcmFnbWVudCIsCiAg
ICAgVmVydGV4OiAic2hhZGVyLXR5cGUtdmVydGV4IiwKIH07CisKK1dJLlNoYWRlclByb2dyYW0u
RXZlbnQgPSB7CisgICAgRGlzYWJsZWRDaGFuZ2VkOiAic2hhZGVyLXByb2dyYW0tZGlzYWJsZWQt
Y2hhbmdlZCIsCit9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvQ29udGV4dE1lbnVVdGlsaXRpZXMuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcwppbmRleCA0MDE1
Y2Q4OWI5YzNmOTg1YmVlODk3ZDk5MTVhNzYxNGVhOTFhMjU4Li44MGY5ZDFiNWMxMTljZjJmOGU0
OTM3NDgyZGJkNWUyMjBkYmM4YzkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5qcworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Db250ZXh0TWVudVV0aWxpdGllcy5q
cwpAQCAtODQsNiArODQsMTUgQEAgV0kuYXBwZW5kQ29udGV4dE1lbnVJdGVtc0ZvclNvdXJjZUNv
ZGUgPSBmdW5jdGlvbihjb250ZXh0TWVudSwgc291cmNlQ29kZU9yTG9jYXQKIAogICAgIGNvbnRl
eHRNZW51LmFwcGVuZFNlcGFyYXRvcigpOwogCisgICAgaWYgKHNvdXJjZUNvZGUuc3VwcG9ydHNT
Y3JpcHRCbGFja2JveGluZykgeworICAgICAgICBsZXQgaXNCbGFja2JveGVkID0gV0kuZGVidWdn
ZXJNYW5hZ2VyLmlzU2NyaXB0QmxhY2tib3hlZChzb3VyY2VDb2RlKTsKKyAgICAgICAgY29udGV4
dE1lbnUuYXBwZW5kSXRlbShpc0JsYWNrYm94ZWQgPyBXSS5VSVN0cmluZygiSW5jbHVkZSBzY3Jp
cHQgd2hlbiBkZWJ1Z2dpbmciKSA6IFdJLlVJU3RyaW5nKCJJZ25vcmUgc2NyaXB0IHdoZW4gZGVi
dWdnaW5nIiksICgpID0+IHsKKyAgICAgICAgICAgIFdJLmRlYnVnZ2VyTWFuYWdlci5zZXRTaG91
bGRCbGFja2JveFNjcmlwdChzb3VyY2VDb2RlLCAhaXNCbGFja2JveGVkKTsKKyAgICAgICAgfSk7
CisgICAgfQorCisgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisKICAgICBXSS5h
cHBlbmRDb250ZXh0TWVudUl0ZW1zRm9yVVJMKGNvbnRleHRNZW51LCBzb3VyY2VDb2RlLnVybCwg
e3NvdXJjZUNvZGUsIGxvY2F0aW9ufSk7CiAKICAgICBpZiAoc291cmNlQ29kZSBpbnN0YW5jZW9m
IFdJLlJlc291cmNlICYmICFzb3VyY2VDb2RlLmlzTG9jYWxSZXNvdXJjZU92ZXJyaWRlKSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TaGFk
ZXJQcm9ncmFtVHJlZUVsZW1lbnQuY3NzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvU2hhZGVyUHJvZ3JhbVRyZWVFbGVtZW50LmNzcwppbmRleCA1Njg5NTkxNzY1
Y2FlOTZjMDFhMzM5OGJiMGQ5MWVjNWE3YmNjZTQ5Li44ZDIzZWE5NzU5NTkzNDNmYzNkYjM1ZDBj
Y2RjN2QxYTBlMWY5OWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9TaGFkZXJQcm9ncmFtVHJlZUVsZW1lbnQuY3NzCisrKyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NoYWRlclByb2dyYW1UcmVlRWxlbWVu
dC5jc3MKQEAgLTIzLDE3ICsyMywxMyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogICovCiAKLS5pdGVtLnNoYWRlci1wcm9ncmFtIC5zdGF0dXMgPiBpbWcgeworIC50cmVl
LW91dGxpbmUgLml0ZW0uc2hhZGVyLXByb2dyYW0gLnN0YXR1cyA+IGltZyB7CiAgICAgd2lkdGg6
IDE4cHg7CiAgICAgbWFyZ2luLXRvcDogMnB4OwogICAgIGNvbnRlbnQ6IHVybCguLi9JbWFnZXMv
SGlkZS5zdmcpOwogfQogCi0uaXRlbS5zaGFkZXItcHJvZ3JhbS5kaXNhYmxlZDpob3ZlciAuc3Rh
dHVzID4gaW1nIHsKLSAgICBjb250ZW50OiB1cmwoLi4vSW1hZ2VzL1Nob3cuc3ZnKTsKLX0KLQot
Lml0ZW0uc2hhZGVyLXByb2dyYW06bm90KDpob3ZlciwgLnNlbGVjdGVkLCAuZGlzYWJsZWQpIC5z
dGF0dXMgPiBpbWcgeworLnRyZWUtb3V0bGluZSAuaXRlbS5zaGFkZXItcHJvZ3JhbTpub3QoOmhv
dmVyLCAuc2VsZWN0ZWQsIC5kaXNhYmxlZCkgLnN0YXR1cyA+IGltZyB7CiAgICAgZGlzcGxheTog
bm9uZTsKIH0KIApAQCAtNDEsMTIgKzM3LDEyIEBACiAgICAgZmlsdGVyOiBpbnZlcnQoKTsKIH0K
IAotLml0ZW0uc2hhZGVyLXByb2dyYW0uZGlzYWJsZWQgPiA6bm90KC5zdGF0dXMpIHsKKy50cmVl
LW91dGxpbmUgLml0ZW0uc2hhZGVyLXByb2dyYW0uZGlzYWJsZWQgLnN0YXR1cyA+IGltZyB7CiAg
ICAgb3BhY2l0eTogMC41OwogfQogCiBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJr
KSB7Ci0gICAgLml0ZW0uc2hhZGVyLXByb2dyYW0gLnN0YXR1cyA+IGltZyB7CisgICAgLnRyZWUt
b3V0bGluZSAuaXRlbS5zaGFkZXItcHJvZ3JhbSAuc3RhdHVzID4gaW1nIHsKICAgICAgICAgZmls
dGVyOiBpbnZlcnQoKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9TaGFkZXJQcm9ncmFtVHJlZUVsZW1lbnQuanMgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TaGFkZXJQcm9ncmFtVHJlZUVs
ZW1lbnQuanMKaW5kZXggZmVmNjkxNzMxNjViZWUwZGNhZWYwMzg2Mjg5NGQ5NjhkNTBiMTdiYS4u
Y2RhNzViNDE1MjQwNGRiY2NiMDk5OTQxZDNkYjViNzczOWQ1MjEzMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU2hhZGVyUHJvZ3JhbVRyZWVF
bGVtZW50LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L1NoYWRlclByb2dyYW1UcmVlRWxlbWVudC5qcwpAQCAtNDQsMjMgKzQ0LDQ5IEBAIFdJLlNoYWRl
clByb2dyYW1UcmVlRWxlbWVudCA9IGNsYXNzIFNoYWRlclByb2dyYW1UcmVlRWxlbWVudCBleHRl
bmRzIFdJLkdlbmVyYWxUCiAgICAgewogICAgICAgICBzdXBlci5vbmF0dGFjaCgpOwogCisgICAg
ICAgIHRoaXMucmVwcmVzZW50ZWRPYmplY3QuYWRkRXZlbnRMaXN0ZW5lcihXSS5TaGFkZXJQcm9n
cmFtLkV2ZW50LkRpc2FibGVkQ2hhbmdlZCwgdGhpcy5faGFuZGxlU2hhZGVyUHJvZ3JhbURpc2Fi
bGVkQ2hhbmdlZCwgdGhpcyk7CisKICAgICAgICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVu
ZXIoIm1vdXNlb3ZlciIsIHRoaXMuX2hhbmRsZU1vdXNlT3Zlci5iaW5kKHRoaXMpKTsKICAgICAg
ICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3V0IiwgdGhpcy5faGFuZGxl
TW91c2VPdXQuYmluZCh0aGlzKSk7CiAgICAgfQogCisgICAgb25kZXRhY2goKQorICAgIHsKKyAg
ICAgICAgdGhpcy5yZXByZXNlbnRlZE9iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKFdJLlNoYWRl
clByb2dyYW0uRXZlbnQuRGlzYWJsZWRDaGFuZ2VkLCB0aGlzLl9oYW5kbGVTaGFkZXJQcm9ncmFt
RGlzYWJsZWRDaGFuZ2VkLCB0aGlzKTsKKworICAgICAgICBzdXBlci5vbmRldGFjaCgpOworICAg
IH0KKwogICAgIGNhblNlbGVjdE9uTW91c2VEb3duKGV2ZW50KQogICAgIHsKLSAgICAgICAgcmV0
dXJuICF0aGlzLl9zdGF0dXNFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCk7CisgICAgICAg
IGlmICh0aGlzLl9kaXNhYmxlZEltYWdlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpKQor
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICByZXR1cm4gc3VwZXIuY2FuU2VsZWN0
T25Nb3VzZURvd24oZXZlbnQpOworICAgIH0KKworICAgIHBvcHVsYXRlQ29udGV4dE1lbnUoY29u
dGV4dE1lbnUsIGV2ZW50KQorICAgIHsKKyAgICAgICAgbGV0IGRpc2FibGVkID0gdGhpcy5yZXBy
ZXNlbnRlZE9iamVjdC5kaXNhYmxlZDsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShk
aXNhYmxlZCA/IFdJLlVJU3RyaW5nKCJFbmFibGUgUHJvZ3JhbSIpIDogV0kuVUlTdHJpbmcoIkRp
c2FibGUgUHJvZ3JhbSIpLCAoKSA9PiB7CisgICAgICAgICAgICB0aGlzLnJlcHJlc2VudGVkT2Jq
ZWN0LmRpc2FibGVkID0gIWRpc2FibGVkOworICAgICAgICB9KTsKKworICAgICAgICBjb250ZXh0
TWVudS5hcHBlbmRTZXBhcmF0b3IoKTsKKworICAgICAgICBzdXBlci5wb3B1bGF0ZUNvbnRleHRN
ZW51KGNvbnRleHRNZW51LCBldmVudCk7CiAgICAgfQogCiAgICAgLy8gUHJpdmF0ZQogCiAgICAg
X2Rpc2FibGVkSW1hZ2VFbGVtZW50Q2xpY2tlZChldmVudCkKICAgICB7Ci0gICAgICAgIHRoaXMu
cmVwcmVzZW50ZWRPYmplY3QudG9nZ2xlRGlzYWJsZWQoKCkgPT4gewotICAgICAgICAgICAgdGhp
cy5fbGlzdEl0ZW1Ob2RlLmNsYXNzTGlzdC50b2dnbGUoImRpc2FibGVkIiwgISF0aGlzLnJlcHJl
c2VudGVkT2JqZWN0LmRpc2FibGVkKTsKLSAgICAgICAgICAgIHRoaXMuX2Rpc2FibGVkSW1hZ2VF
bGVtZW50LnRpdGxlID0gdGhpcy5yZXByZXNlbnRlZE9iamVjdC5kaXNhYmxlZCA/IFdJLlVJU3Ry
aW5nKCJFbmFibGUgUHJvZ3JhbSIpIDogV0kuVUlTdHJpbmcoIkRpc2FibGUgUHJvZ3JhbSIpOwot
ICAgICAgICB9KTsKKyAgICAgICAgdGhpcy5yZXByZXNlbnRlZE9iamVjdC5kaXNhYmxlZCA9ICF0
aGlzLnJlcHJlc2VudGVkT2JqZWN0LmRpc2FibGVkOworICAgIH0KKworICAgIF9oYW5kbGVTaGFk
ZXJQcm9ncmFtRGlzYWJsZWRDaGFuZ2VkKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5fbGlz
dEl0ZW1Ob2RlLmNsYXNzTGlzdC50b2dnbGUoImRpc2FibGVkIiwgISF0aGlzLnJlcHJlc2VudGVk
T2JqZWN0LmRpc2FibGVkKTsKKyAgICAgICAgdGhpcy5fZGlzYWJsZWRJbWFnZUVsZW1lbnQudGl0
bGUgPSB0aGlzLnJlcHJlc2VudGVkT2JqZWN0LmRpc2FibGVkID8gV0kuVUlTdHJpbmcoIkVuYWJs
ZSBQcm9ncmFtIikgOiBXSS5VSVN0cmluZygiRGlzYWJsZSBQcm9ncmFtIik7CiAgICAgfQogCiAg
ICAgX2hhbmRsZU1vdXNlT3ZlcihldmVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUcmVlRWxlbWVudC5jc3MgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9Tb3VyY2VDb2RlVHJlZUVsZW1l
bnQuY3NzCmluZGV4IDc2ZDg4YTM2NjE5OTZmNGY3ODU3ZGEwZjk5NWJlZmYxNmI1MjJiYTkuLjg0
MmQ5ODc1MzQxN2Y5OGQ0OGViMzNjYjc3YWFkMzc4ZDlhNjM0YjMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NvdXJjZUNvZGVUcmVlRWxlbWVu
dC5jc3MKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU291
cmNlQ29kZVRyZWVFbGVtZW50LmNzcwpAQCAtMzAsNyArMzAsNyBAQAogfQogCiAudHJlZS1vdXRs
aW5lOm5vdCgubmF2aWdhdGlvbi1zaWRlYmFyLXBhbmVsLWNvbnRlbnQtdHJlZS1vdXRsaW5lKSAu
aXRlbSAuc3RhdHVzID4gLnRvZ2dsZS1zY3JpcHQtYmxhY2tib3hlZCwKLS50cmVlLW91dGxpbmUg
Lml0ZW06bm90KDpob3ZlciwgLnNlbGVjdGVkKSAuc3RhdHVzID4gLnRvZ2dsZS1zY3JpcHQtYmxh
Y2tib3hlZDpub3QoLmJsYWNrYm94ZWQpIHsKKy50cmVlLW91dGxpbmUgLml0ZW06bm90KDpob3Zl
cikgLnN0YXR1cyA+IC50b2dnbGUtc2NyaXB0LWJsYWNrYm94ZWQ6bm90KC5ibGFja2JveGVkKSB7
CiAgICAgZGlzcGxheTogbm9uZTsKIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>