<?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>191622</bug_id>
          
          <creation_ts>2018-11-13 20:33:41 -0800</creation_ts>
          <short_desc>Web Inspector: Remove unused DataGrid and TreeOutline code</short_desc>
          <delta_ts>2018-11-28 11:47:10 -0800</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>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Matt Baker">mattbaker</reporter>
          <assigned_to name="Matt Baker">mattbaker</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1478306</commentid>
    <comment_count>0</comment_count>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-13 20:33:41 -0800</bug_when>
    <thetext>- DOMTreeOutline property `_selectEnabled` duplicates `_selectable` in the base class
- TreeOutline methods `removeChildrenRecursive` and `reattachIfIndexChanged` are no longer used</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478307</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-13 20:33:56 -0800</bug_when>
    <thetext>&lt;rdar://problem/46052014&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478308</commentid>
    <comment_count>2</comment_count>
      <attachid>354761</attachid>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-13 20:35:27 -0800</bug_when>
    <thetext>Created attachment 354761
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478484</commentid>
    <comment_count>3</comment_count>
      <attachid>354761</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-14 09:46:39 -0800</bug_when>
    <thetext>Comment on attachment 354761
Patch

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

Looks good.  I&apos;d like to test this on my computer to make sure we aren&apos;t missing any edge-cases where `selectable` is `false` while `selectEnabled` is true (it looks like this may be the case when the &quot;Show All Nodes&quot; button is added).

&gt; Source/WebInspectorUI/UserInterface/Views/DOMTreeOutline.js:35
&gt; +        super(null, selectable);

I just looked around, and it seems that `WI.ErrorObjectView` is the only user of `WI.TreeOutline` that specifies an `element`.  Perhaps you could refactor that view and `WI.TreeOutline` as well to remove that parameter.

&gt; Source/WebInspectorUI/UserInterface/Views/TreeElement.js:-65
&gt; -    removeChildrenRecursive() { return WI.TreeOutline.prototype.removeChildrenRecursive.apply(this, arguments); }

It looks like `WI.DataGrid` has a similar function that isn&apos;t used :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1478650</commentid>
    <comment_count>4</comment_count>
      <attachid>354857</attachid>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-14 15:07:25 -0800</bug_when>
    <thetext>Created attachment 354857
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481581</commentid>
    <comment_count>5</comment_count>
      <attachid>354857</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2018-11-26 10:39:53 -0800</bug_when>
    <thetext>Comment on attachment 354857
Patch

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

r=me

&gt; Source/WebInspectorUI/UserInterface/Views/ErrorObjectView.css:61
&gt; +    -webkit-padding-start: 16px

Did you test this in RTL?  Is this the correct behavior?

&gt; Source/WebInspectorUI/UserInterface/Views/ErrorObjectView.js:2
&gt; + * Copyright (C) 2015-2018 Apple Inc. All rights reserved.

I&apos;m not sure what our &quot;style&quot; is on this, but I&apos;ve heard both that &quot;it should only be the most recent year&quot; and &quot;it should be every year it was significantly modified&quot;.  Maybe confirm which is preferred?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482541</commentid>
    <comment_count>6</comment_count>
      <attachid>354857</attachid>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-28 11:18:03 -0800</bug_when>
    <thetext>Comment on attachment 354857
Patch

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

&gt;&gt; Source/WebInspectorUI/UserInterface/Views/ErrorObjectView.js:2
&gt;&gt; + * Copyright (C) 2015-2018 Apple Inc. All rights reserved.
&gt; 
&gt; I&apos;m not sure what our &quot;style&quot; is on this, but I&apos;ve heard both that &quot;it should only be the most recent year&quot; and &quot;it should be every year it was significantly modified&quot;.  Maybe confirm which is preferred?

I&apos;ll use the more conservative &quot;2015, 2018&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482542</commentid>
    <comment_count>7</comment_count>
      <attachid>355894</attachid>
    <who name="Matt Baker">mattbaker</who>
    <bug_when>2018-11-28 11:18:32 -0800</bug_when>
    <thetext>Created attachment 355894
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482547</commentid>
    <comment_count>8</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2018-11-28 11:23:07 -0800</bug_when>
    <thetext>&gt; &gt; I&apos;m not sure what our &quot;style&quot; is on this, but I&apos;ve heard both that &quot;it should only be the most recent year&quot; and &quot;it should be every year it was significantly modified&quot;.  Maybe confirm which is preferred?
&gt; 
&gt; I&apos;ll use the more conservative &quot;2015, 2018&quot;.

I have seen us moving to ranges more and more: &quot;2015-2018&quot;.

The source repository has complete history of the edits of the file so exact years is cumbersome and ultimately unnecessary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482562</commentid>
    <comment_count>9</comment_count>
      <attachid>355894</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-28 11:47:09 -0800</bug_when>
    <thetext>Comment on attachment 355894
Patch for landing

Clearing flags on attachment: 355894

Committed r238626: &lt;https://trac.webkit.org/changeset/238626&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482563</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-28 11:47:10 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354761</attachid>
            <date>2018-11-13 20:35:27 -0800</date>
            <delta_ts>2018-11-14 15:07:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191622-20181113203527.patch</filename>
            <type>text/plain</type>
            <size>7181</size>
            <attacher name="Matt Baker">mattbaker</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCAy
YjAyZDVmYjI1M2EyZDA0ZWQzNTA2MTUwNTNmZmQ2YTQwZjlmYjIyLi4xYWJkN2Y1OTVkNDBlOTE1
OWQ4NmU0MTMxNGFiNWY1MWZjZmMyNTJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNiBAQAorMjAxOC0xMS0xMyAgTWF0dCBCYWtlciAgPG1hdHRiYWtlckBhcHBsZS5jb20+
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHVudXNlZCBUcmVlT3V0bGluZSBjb2Rl
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE2MjIK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ2MDUyMDE0PgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVl
RWxlbWVudC5qczoKKyAgICAgICAgKFdJLkRPTVRyZWVFbGVtZW50LnByb3RvdHlwZS5pbnNlcnRD
aGlsZEVsZW1lbnQpOgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0
bGluZS5qczoKKyAgICAgICAgKFdJLkRPTVRyZWVPdXRsaW5lKToKKyAgICAgICAgKFdJLkRPTVRy
ZWVPdXRsaW5lLnByb3RvdHlwZS51cGRhdGUpOgorCisgICAgICAgICogVXNlckludGVyZmFjZS9W
aWV3cy9UcmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdJLlRyZWVFbGVtZW50LnByb3RvdHlwZS5y
ZW1vdmVDaGlsZHJlbik6CisgICAgICAgIChXSS5UcmVlRWxlbWVudC5wcm90b3R5cGUucmVtb3Zl
Q2hpbGRyZW5SZWN1cnNpdmUpOiBEZWxldGVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9W
aWV3cy9UcmVlT3V0bGluZS5qczoKKyAgICAgICAgKFdJLlRyZWVPdXRsaW5lLnByb3RvdHlwZS5y
ZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSk6IERlbGV0ZWQuCisgICAgICAgIChXSS5UcmVlT3V0bGlu
ZS5wcm90b3R5cGUucmVhdHRhY2hJZkluZGV4Q2hhbmdlZCk6IERlbGV0ZWQuCisKIDIwMTgtMTEt
MTMgIE1hdHQgQmFrZXIgIDxtYXR0YmFrZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IFRhYmxlIHNob3VsZCBzdXBwb3J0IHNlbGVjdCBhbGwgKENtZC1BKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1l
bnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVl
RWxlbWVudC5qcwppbmRleCA3NWU3NzIxMzEwZTlkZWNhNTMxMWZmMTdmZjI1MzdlNTQ2YmM3OWVi
Li42NjY3YjRhOTMxZjg2MTQyYjU2YWIzNDI0OWVlY2YyZjJlMjVkMjMxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5q
cworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVl
RWxlbWVudC5qcwpAQCAtNDIzLDcgKzQyMyw3IEBAIFdJLkRPTVRyZWVFbGVtZW50ID0gY2xhc3Mg
RE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBXSS5UcmVlRWxlbWVudAogICAgIGluc2VydENoaWxkRWxl
bWVudChjaGlsZCwgaW5kZXgsIGNsb3NpbmdUYWcpCiAgICAgewogICAgICAgICB2YXIgbmV3RWxl
bWVudCA9IG5ldyBXSS5ET01UcmVlRWxlbWVudChjaGlsZCwgY2xvc2luZ1RhZyk7Ci0gICAgICAg
IG5ld0VsZW1lbnQuc2VsZWN0YWJsZSA9IHRoaXMudHJlZU91dGxpbmUuX3NlbGVjdEVuYWJsZWQ7
CisgICAgICAgIG5ld0VsZW1lbnQuc2VsZWN0YWJsZSA9IHRoaXMudHJlZU91dGxpbmUuc2VsZWN0
YWJsZTsKICAgICAgICAgdGhpcy5pbnNlcnRDaGlsZChuZXdFbGVtZW50LCBpbmRleCk7CiAgICAg
ICAgIHJldHVybiBuZXdFbGVtZW50OwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVPdXRsaW5lLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMKaW5kZXgg
NGFkNDMyZTA5ZjU3YzZlNmNhZTRlMmQ1N2QzNWJlZmI4YTc0MDdjZS4uNDk2NTA4NzA1MDU0Y2Vh
MGNmNzM3MTk4M2Q2OTExMWVjNDc0MzM0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMKQEAgLTMw
LDkgKzMwLDkgQEAKIAogV0kuRE9NVHJlZU91dGxpbmUgPSBjbGFzcyBET01UcmVlT3V0bGluZSBl
eHRlbmRzIFdJLlRyZWVPdXRsaW5lCiB7Ci0gICAgY29uc3RydWN0b3Iob21pdFJvb3RET01Ob2Rl
LCBzZWxlY3RFbmFibGVkLCBleGNsdWRlUmV2ZWFsRWxlbWVudENvbnRleHRNZW51KQorICAgIGNv
bnN0cnVjdG9yKG9taXRSb290RE9NTm9kZSwgc2VsZWN0YWJsZSwgZXhjbHVkZVJldmVhbEVsZW1l
bnRDb250ZXh0TWVudSkKICAgICB7Ci0gICAgICAgIHN1cGVyKCk7CisgICAgICAgIHN1cGVyKG51
bGwsIHNlbGVjdGFibGUpOwogCiAgICAgICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVy
KCJtb3VzZWRvd24iLCB0aGlzLl9vbm1vdXNlZG93bi5iaW5kKHRoaXMpLCBmYWxzZSk7CiAgICAg
ICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLCB0aGlzLl9vbm1v
dXNlbW92ZS5iaW5kKHRoaXMpLCBmYWxzZSk7CkBAIC00Niw3ICs0Niw2IEBAIFdJLkRPTVRyZWVP
dXRsaW5lID0gY2xhc3MgRE9NVHJlZU91dGxpbmUgZXh0ZW5kcyBXSS5UcmVlT3V0bGluZQogICAg
ICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiZG9tIiwgV0kuU3ludGF4SGlnaGxpZ2h0
ZWRTdHlsZUNsYXNzTmFtZSk7CiAKICAgICAgICAgdGhpcy5faW5jbHVkZVJvb3RET01Ob2RlID0g
IW9taXRSb290RE9NTm9kZTsKLSAgICAgICAgdGhpcy5fc2VsZWN0RW5hYmxlZCA9IHNlbGVjdEVu
YWJsZWQ7CiAgICAgICAgIHRoaXMuX2V4Y2x1ZGVSZXZlYWxFbGVtZW50Q29udGV4dE1lbnUgPSBl
eGNsdWRlUmV2ZWFsRWxlbWVudENvbnRleHRNZW51OwogICAgICAgICB0aGlzLl9yb290RE9NTm9k
ZSA9IG51bGw7CiAgICAgICAgIHRoaXMuX3NlbGVjdGVkRE9NTm9kZSA9IG51bGw7CkBAIC0xNjUs
MTQgKzE2NCwxNCBAQCBXSS5ET01UcmVlT3V0bGluZSA9IGNsYXNzIERPTVRyZWVPdXRsaW5lIGV4
dGVuZHMgV0kuVHJlZU91dGxpbmUKICAgICAgICAgdmFyIHRyZWVFbGVtZW50OwogICAgICAgICBp
ZiAodGhpcy5faW5jbHVkZVJvb3RET01Ob2RlKSB7CiAgICAgICAgICAgICB0cmVlRWxlbWVudCA9
IG5ldyBXSS5ET01UcmVlRWxlbWVudCh0aGlzLnJvb3RET01Ob2RlKTsKLSAgICAgICAgICAgIHRy
ZWVFbGVtZW50LnNlbGVjdGFibGUgPSB0aGlzLl9zZWxlY3RFbmFibGVkOworICAgICAgICAgICAg
dHJlZUVsZW1lbnQuc2VsZWN0YWJsZSA9IHRoaXMuc2VsZWN0YWJsZTsKICAgICAgICAgICAgIHRo
aXMuYXBwZW5kQ2hpbGQodHJlZUVsZW1lbnQpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAg
ICAgLy8gRklYTUU6IHRoaXMgY291bGQgdXNlIGZpbmRUcmVlRWxlbWVudCB0byByZXVzZSBhIHRy
ZWUgZWxlbWVudCBpZiBpdCBhbHJlYWR5IGV4aXN0cwogICAgICAgICAgICAgdmFyIG5vZGUgPSB0
aGlzLnJvb3RET01Ob2RlLmZpcnN0Q2hpbGQ7CiAgICAgICAgICAgICB3aGlsZSAobm9kZSkgewog
ICAgICAgICAgICAgICAgIHRyZWVFbGVtZW50ID0gbmV3IFdJLkRPTVRyZWVFbGVtZW50KG5vZGUp
OwotICAgICAgICAgICAgICAgIHRyZWVFbGVtZW50LnNlbGVjdGFibGUgPSB0aGlzLl9zZWxlY3RF
bmFibGVkOworICAgICAgICAgICAgICAgIHRyZWVFbGVtZW50LnNlbGVjdGFibGUgPSB0aGlzLnNl
bGVjdGFibGU7CiAgICAgICAgICAgICAgICAgdGhpcy5hcHBlbmRDaGlsZCh0cmVlRWxlbWVudCk7
CiAgICAgICAgICAgICAgICAgbm9kZSA9IG5vZGUubmV4dFNpYmxpbmc7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RyZWVFbGVtZW50Lmpz
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVHJlZUVsZW1lbnQu
anMKaW5kZXggZDQ4NzE0N2M5NTE1NzFhZWY1NTNhNzc4NjlkYTA1ZWY0N2EzNWIwYi4uYTdkZmVh
ZDYxMTMyZGJhYTU2MTNkYzJmMWZkYTg2ODNkNzQ2MjI1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVHJlZUVsZW1lbnQuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVHJlZUVsZW1lbnQuanMKQEAg
LTYyLDcgKzYyLDYgQEAgV0kuVHJlZUVsZW1lbnQgPSBjbGFzcyBUcmVlRWxlbWVudCBleHRlbmRz
IFdJLk9iamVjdAogICAgIHJlbW92ZUNoaWxkKCkgeyByZXR1cm4gV0kuVHJlZU91dGxpbmUucHJv
dG90eXBlLnJlbW92ZUNoaWxkLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IH0KICAgICByZW1vdmVD
aGlsZEF0SW5kZXgoKSB7IHJldHVybiBXSS5UcmVlT3V0bGluZS5wcm90b3R5cGUucmVtb3ZlQ2hp
bGRBdEluZGV4LmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IH0KICAgICByZW1vdmVDaGlsZHJlbigp
IHsgcmV0dXJuIFdJLlRyZWVPdXRsaW5lLnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlbi5hcHBseSh0
aGlzLCBhcmd1bWVudHMpOyB9Ci0gICAgcmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUoKSB7IHJldHVy
biBXSS5UcmVlT3V0bGluZS5wcm90b3R5cGUucmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUuYXBwbHko
dGhpcywgYXJndW1lbnRzKTsgfQogICAgIHNlbGZPckRlc2NlbmRhbnQoKSB7IHJldHVybiBXSS5U
cmVlT3V0bGluZS5wcm90b3R5cGUuc2VsZk9yRGVzY2VuZGFudC5hcHBseSh0aGlzLCBhcmd1bWVu
dHMpOyB9CiAKICAgICBnZXQgYXJyb3dUb2dnbGVXaWR0aCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9UcmVlT3V0bGluZS5qcyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RyZWVPdXRsaW5lLmpzCmluZGV4
IDhlYzNmOTllNzEzOGRkYzRlMTNjODdjOTI2NDI1NzQ2NTc2ZDE5YmIuLjAwNTUyNDg4ZTg5OTc5
MTc5YmE5MTg0MTMyYzYzOTA3MDVkZmNjOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RyZWVPdXRsaW5lLmpzCisrKyBiL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1RyZWVPdXRsaW5lLmpzCkBAIC0zMjgsNTQg
KzMyOCw2IEBAIFdJLlRyZWVPdXRsaW5lID0gY2xhc3MgVHJlZU91dGxpbmUgZXh0ZW5kcyBXSS5P
YmplY3QKICAgICAgICAgdGhpcy5jaGlsZHJlbiA9IFtdOwogICAgIH0KIAotICAgIHJlbW92ZUNo
aWxkcmVuUmVjdXJzaXZlKHN1cHByZXNzT25EZXNlbGVjdCkKLSAgICB7Ci0gICAgICAgIGxldCBj
aGlsZHJlblRvUmVtb3ZlID0gdGhpcy5jaGlsZHJlbjsKLSAgICAgICAgbGV0IGNoaWxkID0gdGhp
cy5jaGlsZHJlblswXTsKLSAgICAgICAgd2hpbGUgKGNoaWxkKSB7Ci0gICAgICAgICAgICBpZiAo
Y2hpbGQuY2hpbGRyZW4ubGVuZ3RoKQotICAgICAgICAgICAgICAgIGNoaWxkcmVuVG9SZW1vdmUg
PSBjaGlsZHJlblRvUmVtb3ZlLmNvbmNhdChjaGlsZC5jaGlsZHJlbik7Ci0gICAgICAgICAgICBj
aGlsZCA9IGNoaWxkLnRyYXZlcnNlTmV4dFRyZWVFbGVtZW50KGZhbHNlLCB0aGlzLCB0cnVlKTsK
LSAgICAgICAgfQotCi0gICAgICAgIGZvciAobGV0IGNoaWxkIG9mIGNoaWxkcmVuVG9SZW1vdmUp
IHsKLSAgICAgICAgICAgIGNoaWxkLmRlc2VsZWN0KHN1cHByZXNzT25EZXNlbGVjdCk7Ci0KLSAg
ICAgICAgICAgIGxldCB0cmVlT3V0bGluZSA9IGNoaWxkLnRyZWVPdXRsaW5lOwotICAgICAgICAg
ICAgaWYgKHRyZWVPdXRsaW5lKQotICAgICAgICAgICAgICAgIHRyZWVPdXRsaW5lLl9mb3JnZXRU
cmVlRWxlbWVudChjaGlsZCk7Ci0KLSAgICAgICAgICAgIGNoaWxkLl9kZXRhY2goKTsKLSAgICAg
ICAgICAgIGNoaWxkLmNoaWxkcmVuID0gW107Ci0gICAgICAgICAgICBjaGlsZC50cmVlT3V0bGlu
ZSA9IG51bGw7Ci0gICAgICAgICAgICBjaGlsZC5wYXJlbnQgPSBudWxsOwotICAgICAgICAgICAg
Y2hpbGQubmV4dFNpYmxpbmcgPSBudWxsOwotICAgICAgICAgICAgY2hpbGQucHJldmlvdXNTaWJs
aW5nID0gbnVsbDsKLQotICAgICAgICAgICAgaWYgKHRyZWVPdXRsaW5lKQotICAgICAgICAgICAg
ICAgIHRyZWVPdXRsaW5lLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXSS5UcmVlT3V0bGluZS5F
dmVudC5FbGVtZW50UmVtb3ZlZCwge2VsZW1lbnQ6IGNoaWxkfSk7Ci0gICAgICAgIH0KLQotICAg
ICAgICB0aGlzLmNoaWxkcmVuID0gW107Ci0gICAgfQotCi0gICAgcmVhdHRhY2hJZkluZGV4Q2hh
bmdlZCh0cmVlRWxlbWVudCwgaW5zZXJ0aW9uSW5kZXgpCi0gICAgewotICAgICAgICBpZiAodGhp
cy5jaGlsZHJlbltpbnNlcnRpb25JbmRleF0gPT09IHRyZWVFbGVtZW50KQotICAgICAgICAgICAg
cmV0dXJuOwotCi0gICAgICAgIGxldCB3YXNTZWxlY3RlZCA9IHRyZWVFbGVtZW50LnNlbGVjdGVk
OwotCi0gICAgICAgIGNvbnNvbGUuYXNzZXJ0KCF0cmVlRWxlbWVudC5wYXJlbnQgfHwgdHJlZUVs
ZW1lbnQucGFyZW50ID09PSB0aGlzKTsKLSAgICAgICAgaWYgKHRyZWVFbGVtZW50LnBhcmVudCA9
PT0gdGhpcykKLSAgICAgICAgICAgIHRoaXMucmVtb3ZlQ2hpbGQodHJlZUVsZW1lbnQpOwotCi0g
ICAgICAgIHRoaXMuaW5zZXJ0Q2hpbGQodHJlZUVsZW1lbnQsIGluc2VydGlvbkluZGV4KTsKLQot
ICAgICAgICBpZiAod2FzU2VsZWN0ZWQpCi0gICAgICAgICAgICB0cmVlRWxlbWVudC5zZWxlY3Qo
KTsKLSAgICB9Ci0KICAgICBfcmVtZW1iZXJUcmVlRWxlbWVudChlbGVtZW50KQogICAgIHsKICAg
ICAgICAgaWYgKCF0aGlzLl9rbm93blRyZWVFbGVtZW50c1tlbGVtZW50LmlkZW50aWZpZXJdKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>354857</attachid>
            <date>2018-11-14 15:07:25 -0800</date>
            <delta_ts>2018-11-28 11:18:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-191622-20181114150724.patch</filename>
            <type>text/plain</type>
            <size>15103</size>
            <attacher name="Matt Baker">mattbaker</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MTk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCAz
ZTM2MWI0OGI0OGEyNDE3NGY5OWE4ZTM5YjI5YjFkODY1ZWFlMGYyLi44MWVhNjgxMzI0ZGE4NzYz
ODAwYjJjNWQ0NDQ0MzZjODUwNGQ5YmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1MiBAQAorMjAxOC0xMS0xNCAgTWF0dCBCYWtlciAgPG1hdHRiYWtlckBhcHBsZS5jb20+
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHVudXNlZCBEYXRhR3JpZCBhbmQgVHJl
ZU91dGxpbmUgY29kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkxNjIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NjA1MjAxND4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVzZXJJbnRlcmZhY2Uv
Vmlld3MvQ2FudmFzRGV0YWlsc1NpZGViYXJQYW5lbC5qczoKKyAgICAgICAgKFdJLkNhbnZhc0Rl
dGFpbHNTaWRlYmFyUGFuZWwucHJvdG90eXBlLmluaXRpYWxMYXlvdXQpOgorCisgICAgICAgICog
VXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdJLkRPTVRy
ZWVFbGVtZW50LnByb3RvdHlwZS5pbnNlcnRDaGlsZEVsZW1lbnQpOgorCisgICAgICAgICogVXNl
ckludGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0bGluZS5qczoKKyAgICAgICAgKFdJLkRPTVRyZWVP
dXRsaW5lKToKKyAgICAgICAgKFdJLkRPTVRyZWVPdXRsaW5lLnByb3RvdHlwZS51cGRhdGUpOgor
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZC5qczoKKyAgICAgICAgKFdJ
LkRhdGFHcmlkLnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSk6IERlbGV0ZWQuCisg
ICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZE5vZGUuanM6CisgICAgICAgIChX
SS5EYXRhR3JpZE5vZGUucHJvdG90eXBlLnJlbW92ZUNoaWxkcmVuKToKKyAgICAgICAgKFdJLkRh
dGFHcmlkTm9kZS5wcm90b3R5cGUucmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUpOiBEZWxldGVkLgor
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9FcnJvck9iamVjdFZpZXcuY3NzOgorICAg
ICAgICAoLmVycm9yLW9iamVjdDpub3QoLmV4cGFuZGVkKSAuY29udGVudCk6CisgICAgICAgICgu
ZXJyb3Itb2JqZWN0IC5jb250ZW50KToKKyAgICAgICAgKC5lcnJvci1vYmplY3Q6bm90KC5leHBh
bmRlZCkgLnRyZWUtb3V0bGluZSk6IERlbGV0ZWQuCisgICAgICAgICguZXJyb3Itb2JqZWN0IC50
cmVlLW91dGxpbmUpOiBEZWxldGVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9F
cnJvck9iamVjdFZpZXcuanM6CisgICAgICAgIChXSS5FcnJvck9iamVjdFZpZXcpOgorICAgICAg
ICAoV0kuRXJyb3JPYmplY3RWaWV3LnByb3RvdHlwZS5nZXQgdHJlZU91dGxpbmUpOiBEZWxldGVk
LgorICAgICAgICBVc2UgYSBzaW1wbGUgY29udGFpbmVyIHNpbmNlIFRyZWVPdXRsaW5lIGZlYXR1
cmVzIGFyZW4ndCB1c2VkLAorICAgICAgICBhbmQgcmVtb3ZlIHVudXNlZCBwcm9wZXJ0eSBgdHJl
ZU91dGxpbmVgLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9SZWNvcmRpbmdUcmFj
ZURldGFpbHNTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5SZWNvcmRpbmdUcmFjZURldGFp
bHNTaWRlYmFyUGFuZWwpOgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9UcmVlRWxl
bWVudC5qczoKKyAgICAgICAgKFdJLlRyZWVFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVDaGlsZHJl
bik6CisgICAgICAgIChXSS5UcmVlRWxlbWVudC5wcm90b3R5cGUucmVtb3ZlQ2hpbGRyZW5SZWN1
cnNpdmUpOiBEZWxldGVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9UcmVlT3V0
bGluZS5qczoKKyAgICAgICAgKFdJLlRyZWVPdXRsaW5lKToKKyAgICAgICAgKFdJLlRyZWVPdXRs
aW5lLnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSk6IERlbGV0ZWQuCisgICAgICAg
IChXSS5UcmVlT3V0bGluZS5wcm90b3R5cGUucmVhdHRhY2hJZkluZGV4Q2hhbmdlZCk6IERlbGV0
ZWQuCisgICAgICAgIFJlbW92ZWQgYGVsZW1lbnRgIHBhcmFtZXRlciBub3cgdGhhdCB0aGUgb25s
eSB1c2UgY2FzZSBoYXMgYmVlbiByZW1vdmVkLgorCiAyMDE4LTExLTE0ICBKb3NlcGggUGVjb3Jh
cm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogSW5jbHVk
ZSB0YXJnZXQgaWRlbnRpZmllciBpbiBwcm90b2NvbCBsb2dnaW5nCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9DYW52YXNEZXRhaWxzU2lkZWJh
clBhbmVsLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ2Fu
dmFzRGV0YWlsc1NpZGViYXJQYW5lbC5qcwppbmRleCA4MGRiOWFjNGRiMjJlNDVmMzg0NDY1YTQx
NDNmZDIwYmQ1YzU2NWZjLi5kMTk4OGZmY2JmZWRiNGUyNjkzZGQ5NTk4ZmUzODk0MWYyZTgxNDA5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9D
YW52YXNEZXRhaWxzU2lkZWJhclBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0NhbnZhc0RldGFpbHNTaWRlYmFyUGFuZWwuanMKQEAgLTEzNiw3
ICsxMzYsNyBAQCBXSS5DYW52YXNEZXRhaWxzU2lkZWJhclBhbmVsID0gY2xhc3MgQ2FudmFzRGV0
YWlsc1NpZGViYXJQYW5lbCBleHRlbmRzIFdJLkRldGFpbAogICAgICAgICB0aGlzLl9zZWN0aW9u
cy5wdXNoKHRoaXMuX2Nzc0NhbnZhc1NlY3Rpb24pOwogCiAgICAgICAgIGNvbnN0IHNlbGVjdGFi
bGUgPSBmYWxzZTsKLSAgICAgICAgbGV0IGJhY2t0cmFjZVRyZWVPdXRsaW5lID0gbmV3IFdJLlRy
ZWVPdXRsaW5lKG51bGwsIHNlbGVjdGFibGUpOworICAgICAgICBsZXQgYmFja3RyYWNlVHJlZU91
dGxpbmUgPSBuZXcgV0kuVHJlZU91dGxpbmUoc2VsZWN0YWJsZSk7CiAgICAgICAgIGJhY2t0cmFj
ZVRyZWVPdXRsaW5lLmRpc2Nsb3N1cmVCdXR0b25zID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX2Jh
Y2t0cmFjZVRyZWVDb250cm9sbGVyID0gbmV3IFdJLkNhbGxGcmFtZVRyZWVDb250cm9sbGVyKGJh
Y2t0cmFjZVRyZWVPdXRsaW5lKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcwppbmRleCA3NWU3NzIx
MzEwZTlkZWNhNTMxMWZmMTdmZjI1MzdlNTQ2YmM3OWViLi42NjY3YjRhOTMxZjg2MTQyYjU2YWIz
NDI0OWVlY2YyZjJlMjVkMjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcwpAQCAtNDIzLDcgKzQy
Myw3IEBAIFdJLkRPTVRyZWVFbGVtZW50ID0gY2xhc3MgRE9NVHJlZUVsZW1lbnQgZXh0ZW5kcyBX
SS5UcmVlRWxlbWVudAogICAgIGluc2VydENoaWxkRWxlbWVudChjaGlsZCwgaW5kZXgsIGNsb3Np
bmdUYWcpCiAgICAgewogICAgICAgICB2YXIgbmV3RWxlbWVudCA9IG5ldyBXSS5ET01UcmVlRWxl
bWVudChjaGlsZCwgY2xvc2luZ1RhZyk7Ci0gICAgICAgIG5ld0VsZW1lbnQuc2VsZWN0YWJsZSA9
IHRoaXMudHJlZU91dGxpbmUuX3NlbGVjdEVuYWJsZWQ7CisgICAgICAgIG5ld0VsZW1lbnQuc2Vs
ZWN0YWJsZSA9IHRoaXMudHJlZU91dGxpbmUuc2VsZWN0YWJsZTsKICAgICAgICAgdGhpcy5pbnNl
cnRDaGlsZChuZXdFbGVtZW50LCBpbmRleCk7CiAgICAgICAgIHJldHVybiBuZXdFbGVtZW50Owog
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL0RPTVRyZWVPdXRsaW5lLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMKaW5kZXggNGFkNDMyZTA5ZjU3YzZlNmNhZTRlMmQ1
N2QzNWJlZmI4YTc0MDdjZS4uMzc4OTNhMjhjODMzNDczNDRiZTI2M2MxYjY1OGM3OTE4YTA3NTk2
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
RE9NVHJlZU91dGxpbmUuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMKQEAgLTMwLDkgKzMwLDkgQEAKIAogV0kuRE9NVHJl
ZU91dGxpbmUgPSBjbGFzcyBET01UcmVlT3V0bGluZSBleHRlbmRzIFdJLlRyZWVPdXRsaW5lCiB7
Ci0gICAgY29uc3RydWN0b3Iob21pdFJvb3RET01Ob2RlLCBzZWxlY3RFbmFibGVkLCBleGNsdWRl
UmV2ZWFsRWxlbWVudENvbnRleHRNZW51KQorICAgIGNvbnN0cnVjdG9yKG9taXRSb290RE9NTm9k
ZSwgc2VsZWN0YWJsZSwgZXhjbHVkZVJldmVhbEVsZW1lbnRDb250ZXh0TWVudSkKICAgICB7Ci0g
ICAgICAgIHN1cGVyKCk7CisgICAgICAgIHN1cGVyKHNlbGVjdGFibGUpOwogCiAgICAgICAgIHRo
aXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLCB0aGlzLl9vbm1vdXNlZG93
bi5iaW5kKHRoaXMpLCBmYWxzZSk7CiAgICAgICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3Rl
bmVyKCJtb3VzZW1vdmUiLCB0aGlzLl9vbm1vdXNlbW92ZS5iaW5kKHRoaXMpLCBmYWxzZSk7CkBA
IC00Niw3ICs0Niw2IEBAIFdJLkRPTVRyZWVPdXRsaW5lID0gY2xhc3MgRE9NVHJlZU91dGxpbmUg
ZXh0ZW5kcyBXSS5UcmVlT3V0bGluZQogICAgICAgICB0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LmFk
ZCgiZG9tIiwgV0kuU3ludGF4SGlnaGxpZ2h0ZWRTdHlsZUNsYXNzTmFtZSk7CiAKICAgICAgICAg
dGhpcy5faW5jbHVkZVJvb3RET01Ob2RlID0gIW9taXRSb290RE9NTm9kZTsKLSAgICAgICAgdGhp
cy5fc2VsZWN0RW5hYmxlZCA9IHNlbGVjdEVuYWJsZWQ7CiAgICAgICAgIHRoaXMuX2V4Y2x1ZGVS
ZXZlYWxFbGVtZW50Q29udGV4dE1lbnUgPSBleGNsdWRlUmV2ZWFsRWxlbWVudENvbnRleHRNZW51
OwogICAgICAgICB0aGlzLl9yb290RE9NTm9kZSA9IG51bGw7CiAgICAgICAgIHRoaXMuX3NlbGVj
dGVkRE9NTm9kZSA9IG51bGw7CkBAIC0xNjUsMTQgKzE2NCwxNCBAQCBXSS5ET01UcmVlT3V0bGlu
ZSA9IGNsYXNzIERPTVRyZWVPdXRsaW5lIGV4dGVuZHMgV0kuVHJlZU91dGxpbmUKICAgICAgICAg
dmFyIHRyZWVFbGVtZW50OwogICAgICAgICBpZiAodGhpcy5faW5jbHVkZVJvb3RET01Ob2RlKSB7
CiAgICAgICAgICAgICB0cmVlRWxlbWVudCA9IG5ldyBXSS5ET01UcmVlRWxlbWVudCh0aGlzLnJv
b3RET01Ob2RlKTsKLSAgICAgICAgICAgIHRyZWVFbGVtZW50LnNlbGVjdGFibGUgPSB0aGlzLl9z
ZWxlY3RFbmFibGVkOworICAgICAgICAgICAgdHJlZUVsZW1lbnQuc2VsZWN0YWJsZSA9IHRoaXMu
c2VsZWN0YWJsZTsKICAgICAgICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQodHJlZUVsZW1lbnQpOwog
ICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gRklYTUU6IHRoaXMgY291bGQgdXNlIGZp
bmRUcmVlRWxlbWVudCB0byByZXVzZSBhIHRyZWUgZWxlbWVudCBpZiBpdCBhbHJlYWR5IGV4aXN0
cwogICAgICAgICAgICAgdmFyIG5vZGUgPSB0aGlzLnJvb3RET01Ob2RlLmZpcnN0Q2hpbGQ7CiAg
ICAgICAgICAgICB3aGlsZSAobm9kZSkgewogICAgICAgICAgICAgICAgIHRyZWVFbGVtZW50ID0g
bmV3IFdJLkRPTVRyZWVFbGVtZW50KG5vZGUpOwotICAgICAgICAgICAgICAgIHRyZWVFbGVtZW50
LnNlbGVjdGFibGUgPSB0aGlzLl9zZWxlY3RFbmFibGVkOworICAgICAgICAgICAgICAgIHRyZWVF
bGVtZW50LnNlbGVjdGFibGUgPSB0aGlzLnNlbGVjdGFibGU7CiAgICAgICAgICAgICAgICAgdGhp
cy5hcHBlbmRDaGlsZCh0cmVlRWxlbWVudCk7CiAgICAgICAgICAgICAgICAgbm9kZSA9IG5vZGUu
bmV4dFNpYmxpbmc7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvRGF0YUdyaWQuanMKaW5kZXggOWZhMTU0NThhYWExOWNmNmIyYmYxOTc1MDJk
MmE4YWE4NWZjZTAxZS4uOWU1NmIwNDVmZWU1ZGY1NjQ1ZjZmZTIwZjQ3ZDdiODg2ZTQ3M2I0OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0
YUdyaWQuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
RGF0YUdyaWQuanMKQEAgLTEyMzksMzIgKzEyMzksNiBAQCBXSS5EYXRhR3JpZCA9IGNsYXNzIERh
dGFHcmlkIGV4dGVuZHMgV0kuVmlldwogICAgICAgICB0aGlzLmhhc0NoaWxkcmVuID0gZmFsc2U7
CiAgICAgfQogCi0gICAgcmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUoKQotICAgIHsKLSAgICAgICAg
dmFyIGNoaWxkcmVuVG9SZW1vdmUgPSB0aGlzLmNoaWxkcmVuOwotCi0gICAgICAgIHZhciBjaGls
ZCA9IHRoaXMuY2hpbGRyZW5bMF07Ci0gICAgICAgIHdoaWxlIChjaGlsZCkgewotICAgICAgICAg
ICAgaWYgKGNoaWxkLmNoaWxkcmVuLmxlbmd0aCkKLSAgICAgICAgICAgICAgICBjaGlsZHJlblRv
UmVtb3ZlID0gY2hpbGRyZW5Ub1JlbW92ZS5jb25jYXQoY2hpbGQuY2hpbGRyZW4pOwotICAgICAg
ICAgICAgY2hpbGQgPSBjaGlsZC50cmF2ZXJzZU5leHROb2RlKGZhbHNlLCB0aGlzLCB0cnVlKTsK
LSAgICAgICAgfQotCi0gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW5Ub1JlbW92
ZS5sZW5ndGg7ICsraSkgewotICAgICAgICAgICAgY2hpbGQgPSBjaGlsZHJlblRvUmVtb3ZlW2ld
OwotICAgICAgICAgICAgY2hpbGQuZGVzZWxlY3QoKTsKLSAgICAgICAgICAgIGNoaWxkLl9kZXRh
Y2goKTsKLQotICAgICAgICAgICAgY2hpbGQuY2hpbGRyZW4gPSBbXTsKLSAgICAgICAgICAgIGNo
aWxkLmRhdGFHcmlkID0gbnVsbDsKLSAgICAgICAgICAgIGNoaWxkLnBhcmVudCA9IG51bGw7Ci0g
ICAgICAgICAgICBjaGlsZC5uZXh0U2libGluZyA9IG51bGw7Ci0gICAgICAgICAgICBjaGlsZC5w
cmV2aW91c1NpYmxpbmcgPSBudWxsOwotICAgICAgICB9Ci0KLSAgICAgICAgdGhpcy5jaGlsZHJl
biA9IFtdOwotICAgIH0KLQogICAgIGZpbmROb2RlKGNvbXBhcmF0b3IsIHNraXBIaWRkZW4sIHN0
YXlXaXRoaW4sIGRvbnRQb3B1bGF0ZSkKICAgICB7CiAgICAgICAgIGNvbnNvbGUuYXNzZXJ0KHR5
cGVvZiBjb21wYXJhdG9yID09PSAiZnVuY3Rpb24iKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkTm9kZS5qcyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkTm9kZS5qcwppbmRleCA0
M2M4YjMzZDI1MDg5NGVlM2ViMjlmNzUzZjE0MzRiM2UyNDQwNGRjLi5lOTllZWQzODlkMWE2YjVj
MzRjMDA0YzMzZTFlYjlhM2NkZjA0ZTE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZE5vZGUuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWROb2RlLmpzCkBAIC00MDksNyAr
NDA5LDYgQEAgV0kuRGF0YUdyaWROb2RlID0gY2xhc3MgRGF0YUdyaWROb2RlIGV4dGVuZHMgV0ku
T2JqZWN0CiAgICAgaW5zZXJ0Q2hpbGQoKSB7IHJldHVybiBXSS5EYXRhR3JpZC5wcm90b3R5cGUu
aW5zZXJ0Q2hpbGQuYXBwbHkodGhpcywgYXJndW1lbnRzKTsgfQogICAgIHJlbW92ZUNoaWxkKCkg
eyByZXR1cm4gV0kuRGF0YUdyaWQucHJvdG90eXBlLnJlbW92ZUNoaWxkLmFwcGx5KHRoaXMsIGFy
Z3VtZW50cyk7IH0KICAgICByZW1vdmVDaGlsZHJlbigpIHsgcmV0dXJuIFdJLkRhdGFHcmlkLnBy
b3RvdHlwZS5yZW1vdmVDaGlsZHJlbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpOyB9Ci0gICAgcmVt
b3ZlQ2hpbGRyZW5SZWN1cnNpdmUoKSB7IHJldHVybiBXSS5EYXRhR3JpZC5wcm90b3R5cGUucmVt
b3ZlQ2hpbGRyZW5SZWN1cnNpdmUuYXBwbHkodGhpcywgYXJndW1lbnRzKTsgfQogCiAgICAgX3Jl
Y2FsY3VsYXRlU2libGluZ3MobXlJbmRleCkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9FcnJvck9iamVjdFZpZXcuY3NzIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRXJyb3JPYmplY3RWaWV3LmNz
cwppbmRleCA5OTE1OTVkMTkyNjcyMGY1M2Y3OTUwN2JjMmIzNDhhMWQxYTQ5NDEzLi42NTIwZmYx
M2E3MjExMzc3ZjhkNDU5OTRmNmQxZGI3MzA2N2YyMWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9FcnJvck9iamVjdFZpZXcuY3NzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Vycm9yT2JqZWN0Vmll
dy5jc3MKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE1IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNS0yMDE4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtNTMsMTAgKzUzLDEwIEBACiAgICAgZGlzcGxheTogbm9uZTsKIH0KIAotLmVycm9yLW9i
amVjdDpub3QoLmV4cGFuZGVkKSAudHJlZS1vdXRsaW5lIHsKKy5lcnJvci1vYmplY3Q6bm90KC5l
eHBhbmRlZCkgLmNvbnRlbnQgewogICAgIGRpc3BsYXk6IG5vbmU7CiB9CiAKLS5lcnJvci1vYmpl
Y3QgLnRyZWUtb3V0bGluZSB7Ci0gICAgcGFkZGluZy1sZWZ0OiAxNnB4CisuZXJyb3Itb2JqZWN0
IC5jb250ZW50IHsKKyAgICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDE2cHgKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Vycm9yT2JqZWN0
Vmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Vycm9y
T2JqZWN0Vmlldy5qcwppbmRleCAwYWNhMWY0ZDI2NDM1MDc0OGY4YzM1YTc5YTRiNGJmNTgxMDY2
ZmY2Li41MmY5ODVlYzAzYzU0NTE2YmQ5MTY3ZjhjM2M1MWM1NDE0YWUwMzdmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9FcnJvck9iamVjdFZp
ZXcuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRXJy
b3JPYmplY3RWaWV3LmpzCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
NSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUt
MjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKQEAgLTQzLDcgKzQzLDcgQEAgV0kuRXJyb3JPYmplY3RWaWV3ID0gY2xhc3Mg
RXJyb3JPYmplY3RWaWV3IGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgIHByZXZpZXdFbGVtZW50
LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5faGFuZGxlUHJldmlld09yVGl0bGVFbGVt
ZW50Q2xpY2suYmluZCh0aGlzKSk7CiAKICAgICAgICAgdGhpcy5fb3V0bGluZUVsZW1lbnQgPSB0
aGlzLl9lbGVtZW50LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKTsK
LSAgICAgICAgdGhpcy5fb3V0bGluZSA9IG5ldyBXSS5UcmVlT3V0bGluZSh0aGlzLl9vdXRsaW5l
RWxlbWVudCk7CisgICAgICAgIHRoaXMuX291dGxpbmVFbGVtZW50LmNsYXNzTmFtZSA9ICJjb250
ZW50IjsKICAgICB9CiAKICAgICAvLyBTdGF0aWMKQEAgLTgwLDExICs4MCw2IEBAIFdJLkVycm9y
T2JqZWN0VmlldyA9IGNsYXNzIEVycm9yT2JqZWN0VmlldyBleHRlbmRzIFdJLk9iamVjdAogICAg
ICAgICByZXR1cm4gdGhpcy5fZWxlbWVudDsKICAgICB9CiAKLSAgICBnZXQgdHJlZU91dGxpbmUo
KQotICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMuX291dGxpbmU7Ci0gICAgfQotCiAgICAgZ2V0
IGV4cGFuZGVkKCkKICAgICB7CiAgICAgICAgIHJldHVybiB0aGlzLl9leHBhbmRlZDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1JlY29yZGlu
Z1RyYWNlRGV0YWlsc1NpZGViYXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1JlY29yZGluZ1RyYWNlRGV0YWlsc1NpZGViYXJQYW5lbC5qcwppbmRl
eCA4Y2NmODI3N2NkNTlmN2M5OTZjYjRjNmU2NDQ4MTg3NWZhM2NiYzA2Li5hMzhjZDgzOTI4NTU4
MjkzMDE3NWNiNzg0Nzg2MmVlOWJjOTU1NGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9SZWNvcmRpbmdUcmFjZURldGFpbHNTaWRlYmFyUGFu
ZWwuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVj
b3JkaW5nVHJhY2VEZXRhaWxzU2lkZWJhclBhbmVsLmpzCkBAIC0zMCw3ICszMCw3IEBAIFdJLlJl
Y29yZGluZ1RyYWNlRGV0YWlsc1NpZGViYXJQYW5lbCA9IGNsYXNzIFJlY29yZGluZ1RyYWNlRGV0
YWlsc1NpZGViYXJQYW5lbCBlCiAgICAgICAgIHN1cGVyKCJyZWNvcmRpbmctdHJhY2UiLCBXSS5V
SVN0cmluZygiVHJhY2UiKSk7CiAKICAgICAgICAgY29uc3Qgc2VsZWN0YWJsZSA9IGZhbHNlOwot
ICAgICAgICB0aGlzLl9iYWNrdHJhY2VUcmVlT3V0bGluZSA9IG5ldyBXSS5UcmVlT3V0bGluZShu
dWxsLCBzZWxlY3RhYmxlKTsKKyAgICAgICAgdGhpcy5fYmFja3RyYWNlVHJlZU91dGxpbmUgPSBu
ZXcgV0kuVHJlZU91dGxpbmUoc2VsZWN0YWJsZSk7CiAgICAgICAgIHRoaXMuX2JhY2t0cmFjZVRy
ZWVPdXRsaW5lLmRpc2Nsb3N1cmVCdXR0b25zID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX2JhY2t0
cmFjZVRyZWVDb250cm9sbGVyID0gbmV3IFdJLkNhbGxGcmFtZVRyZWVDb250cm9sbGVyKHRoaXMu
X2JhY2t0cmFjZVRyZWVPdXRsaW5lKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9UcmVlRWxlbWVudC5qcwppbmRleCBkNDg3MTQ3Yzk1
MTU3MWFlZjU1M2E3Nzg2OWRhMDVlZjQ3YTM1YjBiLi5hN2RmZWFkNjExMzJkYmFhNTYxM2RjMmYx
ZmRhODY4M2Q3NDYyMjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9UcmVlRWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9UcmVlRWxlbWVudC5qcwpAQCAtNjIsNyArNjIsNiBAQCBXSS5U
cmVlRWxlbWVudCA9IGNsYXNzIFRyZWVFbGVtZW50IGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgcmVt
b3ZlQ2hpbGQoKSB7IHJldHVybiBXSS5UcmVlT3V0bGluZS5wcm90b3R5cGUucmVtb3ZlQ2hpbGQu
YXBwbHkodGhpcywgYXJndW1lbnRzKTsgfQogICAgIHJlbW92ZUNoaWxkQXRJbmRleCgpIHsgcmV0
dXJuIFdJLlRyZWVPdXRsaW5lLnByb3RvdHlwZS5yZW1vdmVDaGlsZEF0SW5kZXguYXBwbHkodGhp
cywgYXJndW1lbnRzKTsgfQogICAgIHJlbW92ZUNoaWxkcmVuKCkgeyByZXR1cm4gV0kuVHJlZU91
dGxpbmUucHJvdG90eXBlLnJlbW92ZUNoaWxkcmVuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IH0K
LSAgICByZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSgpIHsgcmV0dXJuIFdJLlRyZWVPdXRsaW5lLnBy
b3RvdHlwZS5yZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZS5hcHBseSh0aGlzLCBhcmd1bWVudHMpOyB9
CiAgICAgc2VsZk9yRGVzY2VuZGFudCgpIHsgcmV0dXJuIFdJLlRyZWVPdXRsaW5lLnByb3RvdHlw
ZS5zZWxmT3JEZXNjZW5kYW50LmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IH0KIAogICAgIGdldCBh
cnJvd1RvZ2dsZVdpZHRoKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1RyZWVPdXRsaW5lLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvVHJlZU91dGxpbmUuanMKaW5kZXggOGVjM2Y5OWU3MTM4ZGRjNGUx
M2M4N2M5MjY0MjU3NDY1NzZkMTliYi4uMDY1YTY1NjAzODZhNTA1ODg3M2RkMTUxNzVjYjk4M2Yz
Nzk0MjI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvVHJlZU91dGxpbmUuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRl
cmZhY2UvVmlld3MvVHJlZU91dGxpbmUuanMKQEAgLTI4LDExICsyOCwxMSBAQAogCiBXSS5UcmVl
T3V0bGluZSA9IGNsYXNzIFRyZWVPdXRsaW5lIGV4dGVuZHMgV0kuT2JqZWN0CiB7Ci0gICAgY29u
c3RydWN0b3IoZWxlbWVudCwgc2VsZWN0YWJsZSA9IHRydWUpCisgICAgY29uc3RydWN0b3Ioc2Vs
ZWN0YWJsZSA9IHRydWUpCiAgICAgewogICAgICAgICBzdXBlcigpOwogCi0gICAgICAgIHRoaXMu
ZWxlbWVudCA9IGVsZW1lbnQgfHwgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib2wiKTsKKyAgICAg
ICAgdGhpcy5lbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib2wiKTsKICAgICAgICAg
dGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoV0kuVHJlZU91dGxpbmUuRWxlbWVudFN0eWxlQ2xh
c3NOYW1lKTsKICAgICAgICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRt
ZW51IiwgdGhpcy5faGFuZGxlQ29udGV4dG1lbnUuYmluZCh0aGlzKSk7CiAKQEAgLTMyOCw1NCAr
MzI4LDYgQEAgV0kuVHJlZU91dGxpbmUgPSBjbGFzcyBUcmVlT3V0bGluZSBleHRlbmRzIFdJLk9i
amVjdAogICAgICAgICB0aGlzLmNoaWxkcmVuID0gW107CiAgICAgfQogCi0gICAgcmVtb3ZlQ2hp
bGRyZW5SZWN1cnNpdmUoc3VwcHJlc3NPbkRlc2VsZWN0KQotICAgIHsKLSAgICAgICAgbGV0IGNo
aWxkcmVuVG9SZW1vdmUgPSB0aGlzLmNoaWxkcmVuOwotICAgICAgICBsZXQgY2hpbGQgPSB0aGlz
LmNoaWxkcmVuWzBdOwotICAgICAgICB3aGlsZSAoY2hpbGQpIHsKLSAgICAgICAgICAgIGlmIChj
aGlsZC5jaGlsZHJlbi5sZW5ndGgpCi0gICAgICAgICAgICAgICAgY2hpbGRyZW5Ub1JlbW92ZSA9
IGNoaWxkcmVuVG9SZW1vdmUuY29uY2F0KGNoaWxkLmNoaWxkcmVuKTsKLSAgICAgICAgICAgIGNo
aWxkID0gY2hpbGQudHJhdmVyc2VOZXh0VHJlZUVsZW1lbnQoZmFsc2UsIHRoaXMsIHRydWUpOwot
ICAgICAgICB9Ci0KLSAgICAgICAgZm9yIChsZXQgY2hpbGQgb2YgY2hpbGRyZW5Ub1JlbW92ZSkg
ewotICAgICAgICAgICAgY2hpbGQuZGVzZWxlY3Qoc3VwcHJlc3NPbkRlc2VsZWN0KTsKLQotICAg
ICAgICAgICAgbGV0IHRyZWVPdXRsaW5lID0gY2hpbGQudHJlZU91dGxpbmU7Ci0gICAgICAgICAg
ICBpZiAodHJlZU91dGxpbmUpCi0gICAgICAgICAgICAgICAgdHJlZU91dGxpbmUuX2ZvcmdldFRy
ZWVFbGVtZW50KGNoaWxkKTsKLQotICAgICAgICAgICAgY2hpbGQuX2RldGFjaCgpOwotICAgICAg
ICAgICAgY2hpbGQuY2hpbGRyZW4gPSBbXTsKLSAgICAgICAgICAgIGNoaWxkLnRyZWVPdXRsaW5l
ID0gbnVsbDsKLSAgICAgICAgICAgIGNoaWxkLnBhcmVudCA9IG51bGw7Ci0gICAgICAgICAgICBj
aGlsZC5uZXh0U2libGluZyA9IG51bGw7Ci0gICAgICAgICAgICBjaGlsZC5wcmV2aW91c1NpYmxp
bmcgPSBudWxsOwotCi0gICAgICAgICAgICBpZiAodHJlZU91dGxpbmUpCi0gICAgICAgICAgICAg
ICAgdHJlZU91dGxpbmUuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdJLlRyZWVPdXRsaW5lLkV2
ZW50LkVsZW1lbnRSZW1vdmVkLCB7ZWxlbWVudDogY2hpbGR9KTsKLSAgICAgICAgfQotCi0gICAg
ICAgIHRoaXMuY2hpbGRyZW4gPSBbXTsKLSAgICB9Ci0KLSAgICByZWF0dGFjaElmSW5kZXhDaGFu
Z2VkKHRyZWVFbGVtZW50LCBpbnNlcnRpb25JbmRleCkKLSAgICB7Ci0gICAgICAgIGlmICh0aGlz
LmNoaWxkcmVuW2luc2VydGlvbkluZGV4XSA9PT0gdHJlZUVsZW1lbnQpCi0gICAgICAgICAgICBy
ZXR1cm47Ci0KLSAgICAgICAgbGV0IHdhc1NlbGVjdGVkID0gdHJlZUVsZW1lbnQuc2VsZWN0ZWQ7
Ci0KLSAgICAgICAgY29uc29sZS5hc3NlcnQoIXRyZWVFbGVtZW50LnBhcmVudCB8fCB0cmVlRWxl
bWVudC5wYXJlbnQgPT09IHRoaXMpOwotICAgICAgICBpZiAodHJlZUVsZW1lbnQucGFyZW50ID09
PSB0aGlzKQotICAgICAgICAgICAgdGhpcy5yZW1vdmVDaGlsZCh0cmVlRWxlbWVudCk7Ci0KLSAg
ICAgICAgdGhpcy5pbnNlcnRDaGlsZCh0cmVlRWxlbWVudCwgaW5zZXJ0aW9uSW5kZXgpOwotCi0g
ICAgICAgIGlmICh3YXNTZWxlY3RlZCkKLSAgICAgICAgICAgIHRyZWVFbGVtZW50LnNlbGVjdCgp
OwotICAgIH0KLQogICAgIF9yZW1lbWJlclRyZWVFbGVtZW50KGVsZW1lbnQpCiAgICAgewogICAg
ICAgICBpZiAoIXRoaXMuX2tub3duVHJlZUVsZW1lbnRzW2VsZW1lbnQuaWRlbnRpZmllcl0pCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355894</attachid>
            <date>2018-11-28 11:18:32 -0800</date>
            <delta_ts>2018-11-28 11:47:09 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191622-20181128111830.patch</filename>
            <type>text/plain</type>
            <size>15072</size>
            <attacher name="Matt Baker">mattbaker</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NjIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwppbmRleCBm
NmVlZDk5MGNlOTg4NGIzYTE1OTI2YjZjMDFlZTQ4ZmUwZmFkMDY5Li5lM2EwZjAxMWExZjU4Y2U4
Zjk2MjU5NDE2ZDg4YTZhMjhlMDFjZWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1MyBAQAorMjAxOC0xMS0yOCAgTWF0dCBCYWtlciAgPG1hdHRiYWtlckBhcHBsZS5jb20+
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHVudXNlZCBEYXRhR3JpZCBhbmQgVHJl
ZU91dGxpbmUgY29kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkxNjIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NjA1MjAxND4KKworICAgICAg
ICBSZXZpZXdlZCBieSBEZXZpbiBSb3Vzc28uCisKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Zp
ZXdzL0NhbnZhc0RldGFpbHNTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5DYW52YXNEZXRh
aWxzU2lkZWJhclBhbmVsLnByb3RvdHlwZS5pbml0aWFsTGF5b3V0KToKKworICAgICAgICAqIFVz
ZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZUVsZW1lbnQuanM6CisgICAgICAgIChXSS5ET01UcmVl
RWxlbWVudC5wcm90b3R5cGUuaW5zZXJ0Q2hpbGRFbGVtZW50KToKKworICAgICAgICAqIFVzZXJJ
bnRlcmZhY2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanM6CisgICAgICAgIChXSS5ET01UcmVlT3V0
bGluZSk6CisgICAgICAgIChXSS5ET01UcmVlT3V0bGluZS5wcm90b3R5cGUudXBkYXRlKToKKwor
ICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWQuanM6CisgICAgICAgIChXSS5E
YXRhR3JpZC5wcm90b3R5cGUucmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUpOiBEZWxldGVkLgorCisg
ICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZE5vZGUuanM6CisgICAgICAgIChX
SS5EYXRhR3JpZE5vZGUucHJvdG90eXBlLnJlbW92ZUNoaWxkcmVuKToKKyAgICAgICAgKFdJLkRh
dGFHcmlkTm9kZS5wcm90b3R5cGUucmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUpOiBEZWxldGVkLgor
CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9FcnJvck9iamVjdFZpZXcuY3NzOgorICAg
ICAgICAoLmVycm9yLW9iamVjdDpub3QoLmV4cGFuZGVkKSAuY29udGVudCk6CisgICAgICAgICgu
ZXJyb3Itb2JqZWN0IC5jb250ZW50KToKKyAgICAgICAgKC5lcnJvci1vYmplY3Q6bm90KC5leHBh
bmRlZCkgLnRyZWUtb3V0bGluZSk6IERlbGV0ZWQuCisgICAgICAgICguZXJyb3Itb2JqZWN0IC50
cmVlLW91dGxpbmUpOiBEZWxldGVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9F
cnJvck9iamVjdFZpZXcuanM6CisgICAgICAgIChXSS5FcnJvck9iamVjdFZpZXcpOgorICAgICAg
ICAoV0kuRXJyb3JPYmplY3RWaWV3LnByb3RvdHlwZS5nZXQgdHJlZU91dGxpbmUpOiBEZWxldGVk
LgorICAgICAgICBVc2UgYSBzaW1wbGUgY29udGFpbmVyIHNpbmNlIFRyZWVPdXRsaW5lIGZlYXR1
cmVzIGFyZW4ndCB1c2VkLAorICAgICAgICBhbmQgcmVtb3ZlIHVudXNlZCBwcm9wZXJ0eSBgdHJl
ZU91dGxpbmVgLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9SZWNvcmRpbmdUcmFj
ZURldGFpbHNTaWRlYmFyUGFuZWwuanM6CisgICAgICAgIChXSS5SZWNvcmRpbmdUcmFjZURldGFp
bHNTaWRlYmFyUGFuZWwpOgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9UcmVlRWxl
bWVudC5qczoKKyAgICAgICAgKFdJLlRyZWVFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVDaGlsZHJl
bik6CisgICAgICAgIChXSS5UcmVlRWxlbWVudC5wcm90b3R5cGUucmVtb3ZlQ2hpbGRyZW5SZWN1
cnNpdmUpOiBEZWxldGVkLgorCisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9UcmVlT3V0
bGluZS5qczoKKyAgICAgICAgKFdJLlRyZWVPdXRsaW5lKToKKyAgICAgICAgKFdJLlRyZWVPdXRs
aW5lLnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSk6IERlbGV0ZWQuCisgICAgICAg
IChXSS5UcmVlT3V0bGluZS5wcm90b3R5cGUucmVhdHRhY2hJZkluZGV4Q2hhbmdlZCk6IERlbGV0
ZWQuCisgICAgICAgIFJlbW92ZWQgYGVsZW1lbnRgIHBhcmFtZXRlciBub3cgdGhhdCB0aGUgb25s
eSB1c2UgY2FzZSBoYXMgYmVlbiByZW1vdmVkLgorCiAyMDE4LTExLTI3ICBNYXR0IEJha2VyICA8
bWF0dGJha2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBFbGVtZW50cyB0
YWIgc2hvdWxkIGFsbG93IHNlbGVjdGluZy9kZWxldGluZyBtdWx0aXBsZSBET00gbm9kZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NhbnZh
c0RldGFpbHNTaWRlYmFyUGFuZWwuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9DYW52YXNEZXRhaWxzU2lkZWJhclBhbmVsLmpzCmluZGV4IDgwZGI5YWM0ZGIy
MmU0NWYzODQ0NjVhNDE0M2ZkMjBiZDVjNTY1ZmMuLmQxOTg4ZmZjYmZlZGI0ZTI2OTNkZDk1OThm
ZTM4OTQxZjJlODE0MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL0NhbnZhc0RldGFpbHNTaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ2FudmFzRGV0YWlsc1NpZGViYXJQYW5l
bC5qcwpAQCAtMTM2LDcgKzEzNiw3IEBAIFdJLkNhbnZhc0RldGFpbHNTaWRlYmFyUGFuZWwgPSBj
bGFzcyBDYW52YXNEZXRhaWxzU2lkZWJhclBhbmVsIGV4dGVuZHMgV0kuRGV0YWlsCiAgICAgICAg
IHRoaXMuX3NlY3Rpb25zLnB1c2godGhpcy5fY3NzQ2FudmFzU2VjdGlvbik7CiAKICAgICAgICAg
Y29uc3Qgc2VsZWN0YWJsZSA9IGZhbHNlOwotICAgICAgICBsZXQgYmFja3RyYWNlVHJlZU91dGxp
bmUgPSBuZXcgV0kuVHJlZU91dGxpbmUobnVsbCwgc2VsZWN0YWJsZSk7CisgICAgICAgIGxldCBi
YWNrdHJhY2VUcmVlT3V0bGluZSA9IG5ldyBXSS5UcmVlT3V0bGluZShzZWxlY3RhYmxlKTsKICAg
ICAgICAgYmFja3RyYWNlVHJlZU91dGxpbmUuZGlzY2xvc3VyZUJ1dHRvbnMgPSBmYWxzZTsKICAg
ICAgICAgdGhpcy5fYmFja3RyYWNlVHJlZUNvbnRyb2xsZXIgPSBuZXcgV0kuQ2FsbEZyYW1lVHJl
ZUNvbnRyb2xsZXIoYmFja3RyYWNlVHJlZU91dGxpbmUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlRWxlbWVudC5qcyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50Lmpz
CmluZGV4IGVkYWI4YTc2YWY4OGIxNjNhZTk2ZWEwZjZlYmM3OTRkODRmNmJmMmUuLjdjNDNiMzQ3
ZTUxYTVjOGRmM2FhYmVhNzA2M2FjOWM5OGMzZmZjNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50LmpzCisrKyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RPTVRyZWVFbGVtZW50Lmpz
CkBAIC00MjMsNyArNDIzLDcgQEAgV0kuRE9NVHJlZUVsZW1lbnQgPSBjbGFzcyBET01UcmVlRWxl
bWVudCBleHRlbmRzIFdJLlRyZWVFbGVtZW50CiAgICAgaW5zZXJ0Q2hpbGRFbGVtZW50KGNoaWxk
LCBpbmRleCwgY2xvc2luZ1RhZykKICAgICB7CiAgICAgICAgIHZhciBuZXdFbGVtZW50ID0gbmV3
IFdJLkRPTVRyZWVFbGVtZW50KGNoaWxkLCBjbG9zaW5nVGFnKTsKLSAgICAgICAgbmV3RWxlbWVu
dC5zZWxlY3RhYmxlID0gdGhpcy50cmVlT3V0bGluZS5fc2VsZWN0RW5hYmxlZDsKKyAgICAgICAg
bmV3RWxlbWVudC5zZWxlY3RhYmxlID0gdGhpcy50cmVlT3V0bGluZS5zZWxlY3RhYmxlOwogICAg
ICAgICB0aGlzLmluc2VydENoaWxkKG5ld0VsZW1lbnQsIGluZGV4KTsKICAgICAgICAgcmV0dXJu
IG5ld0VsZW1lbnQ7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvVmlld3MvRE9NVHJlZU91dGxpbmUuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0bGluZS5qcwppbmRleCA1NDFlMmY5M2Uz
NGJlMGJjZGYxNTgyNjA0MGIyMzU4ZTQ5MTFlZjNjLi43NTZkMTA4NWRmOTNiYWI5YjE1OGQ0ODQ3
Y2E3MWVjNDQxODM3YjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0bGluZS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9WaWV3cy9ET01UcmVlT3V0bGluZS5qcwpAQCAtMzAsOSArMzAsOSBA
QAogCiBXSS5ET01UcmVlT3V0bGluZSA9IGNsYXNzIERPTVRyZWVPdXRsaW5lIGV4dGVuZHMgV0ku
VHJlZU91dGxpbmUKIHsKLSAgICBjb25zdHJ1Y3RvcihvbWl0Um9vdERPTU5vZGUsIHNlbGVjdEVu
YWJsZWQsIGV4Y2x1ZGVSZXZlYWxFbGVtZW50Q29udGV4dE1lbnUpCisgICAgY29uc3RydWN0b3Io
b21pdFJvb3RET01Ob2RlLCBzZWxlY3RhYmxlLCBleGNsdWRlUmV2ZWFsRWxlbWVudENvbnRleHRN
ZW51KQogICAgIHsKLSAgICAgICAgc3VwZXIoKTsKKyAgICAgICAgc3VwZXIoc2VsZWN0YWJsZSk7
CiAKICAgICAgICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsIHRo
aXMuX29ubW91c2Vkb3duLmJpbmQodGhpcyksIGZhbHNlKTsKICAgICAgICAgdGhpcy5lbGVtZW50
LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsIHRoaXMuX29ubW91c2Vtb3ZlLmJpbmQodGhp
cyksIGZhbHNlKTsKQEAgLTQ2LDcgKzQ2LDYgQEAgV0kuRE9NVHJlZU91dGxpbmUgPSBjbGFzcyBE
T01UcmVlT3V0bGluZSBleHRlbmRzIFdJLlRyZWVPdXRsaW5lCiAgICAgICAgIHRoaXMuZWxlbWVu
dC5jbGFzc0xpc3QuYWRkKCJkb20iLCBXSS5TeW50YXhIaWdobGlnaHRlZFN0eWxlQ2xhc3NOYW1l
KTsKIAogICAgICAgICB0aGlzLl9pbmNsdWRlUm9vdERPTU5vZGUgPSAhb21pdFJvb3RET01Ob2Rl
OwotICAgICAgICB0aGlzLl9zZWxlY3RFbmFibGVkID0gc2VsZWN0RW5hYmxlZDsKICAgICAgICAg
dGhpcy5fZXhjbHVkZVJldmVhbEVsZW1lbnRDb250ZXh0TWVudSA9IGV4Y2x1ZGVSZXZlYWxFbGVt
ZW50Q29udGV4dE1lbnU7CiAgICAgICAgIHRoaXMuX3Jvb3RET01Ob2RlID0gbnVsbDsKICAgICAg
ICAgdGhpcy5fc2VsZWN0ZWRET01Ob2RlID0gbnVsbDsKQEAgLTE2NSwxNCArMTY0LDE0IEBAIFdJ
LkRPTVRyZWVPdXRsaW5lID0gY2xhc3MgRE9NVHJlZU91dGxpbmUgZXh0ZW5kcyBXSS5UcmVlT3V0
bGluZQogICAgICAgICB2YXIgdHJlZUVsZW1lbnQ7CiAgICAgICAgIGlmICh0aGlzLl9pbmNsdWRl
Um9vdERPTU5vZGUpIHsKICAgICAgICAgICAgIHRyZWVFbGVtZW50ID0gbmV3IFdJLkRPTVRyZWVF
bGVtZW50KHRoaXMucm9vdERPTU5vZGUpOwotICAgICAgICAgICAgdHJlZUVsZW1lbnQuc2VsZWN0
YWJsZSA9IHRoaXMuX3NlbGVjdEVuYWJsZWQ7CisgICAgICAgICAgICB0cmVlRWxlbWVudC5zZWxl
Y3RhYmxlID0gdGhpcy5zZWxlY3RhYmxlOwogICAgICAgICAgICAgdGhpcy5hcHBlbmRDaGlsZCh0
cmVlRWxlbWVudCk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvLyBGSVhNRTogdGhp
cyBjb3VsZCB1c2UgZmluZFRyZWVFbGVtZW50IHRvIHJldXNlIGEgdHJlZSBlbGVtZW50IGlmIGl0
IGFscmVhZHkgZXhpc3RzCiAgICAgICAgICAgICB2YXIgbm9kZSA9IHRoaXMucm9vdERPTU5vZGUu
Zmlyc3RDaGlsZDsKICAgICAgICAgICAgIHdoaWxlIChub2RlKSB7CiAgICAgICAgICAgICAgICAg
dHJlZUVsZW1lbnQgPSBuZXcgV0kuRE9NVHJlZUVsZW1lbnQobm9kZSk7Ci0gICAgICAgICAgICAg
ICAgdHJlZUVsZW1lbnQuc2VsZWN0YWJsZSA9IHRoaXMuX3NlbGVjdEVuYWJsZWQ7CisgICAgICAg
ICAgICAgICAgdHJlZUVsZW1lbnQuc2VsZWN0YWJsZSA9IHRoaXMuc2VsZWN0YWJsZTsKICAgICAg
ICAgICAgICAgICB0aGlzLmFwcGVuZENoaWxkKHRyZWVFbGVtZW50KTsKICAgICAgICAgICAgICAg
ICBub2RlID0gbm9kZS5uZXh0U2libGluZzsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWQuanMgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZC5qcwppbmRleCA5ZmExNTQ1OGFhYTE5
Y2Y2YjJiZjE5NzUwMmQyYThhYTg1ZmNlMDFlLi45ZTU2YjA0NWZlZTVkZjU2NDVmNmZlMjBmNDdk
N2I4ODZlNDczYjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9EYXRhR3JpZC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9EYXRhR3JpZC5qcwpAQCAtMTIzOSwzMiArMTIzOSw2IEBAIFdJLkRhdGFH
cmlkID0gY2xhc3MgRGF0YUdyaWQgZXh0ZW5kcyBXSS5WaWV3CiAgICAgICAgIHRoaXMuaGFzQ2hp
bGRyZW4gPSBmYWxzZTsKICAgICB9CiAKLSAgICByZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSgpCi0g
ICAgewotICAgICAgICB2YXIgY2hpbGRyZW5Ub1JlbW92ZSA9IHRoaXMuY2hpbGRyZW47Ci0KLSAg
ICAgICAgdmFyIGNoaWxkID0gdGhpcy5jaGlsZHJlblswXTsKLSAgICAgICAgd2hpbGUgKGNoaWxk
KSB7Ci0gICAgICAgICAgICBpZiAoY2hpbGQuY2hpbGRyZW4ubGVuZ3RoKQotICAgICAgICAgICAg
ICAgIGNoaWxkcmVuVG9SZW1vdmUgPSBjaGlsZHJlblRvUmVtb3ZlLmNvbmNhdChjaGlsZC5jaGls
ZHJlbik7Ci0gICAgICAgICAgICBjaGlsZCA9IGNoaWxkLnRyYXZlcnNlTmV4dE5vZGUoZmFsc2Us
IHRoaXMsIHRydWUpOwotICAgICAgICB9Ci0KLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBj
aGlsZHJlblRvUmVtb3ZlLmxlbmd0aDsgKytpKSB7Ci0gICAgICAgICAgICBjaGlsZCA9IGNoaWxk
cmVuVG9SZW1vdmVbaV07Ci0gICAgICAgICAgICBjaGlsZC5kZXNlbGVjdCgpOwotICAgICAgICAg
ICAgY2hpbGQuX2RldGFjaCgpOwotCi0gICAgICAgICAgICBjaGlsZC5jaGlsZHJlbiA9IFtdOwot
ICAgICAgICAgICAgY2hpbGQuZGF0YUdyaWQgPSBudWxsOwotICAgICAgICAgICAgY2hpbGQucGFy
ZW50ID0gbnVsbDsKLSAgICAgICAgICAgIGNoaWxkLm5leHRTaWJsaW5nID0gbnVsbDsKLSAgICAg
ICAgICAgIGNoaWxkLnByZXZpb3VzU2libGluZyA9IG51bGw7Ci0gICAgICAgIH0KLQotICAgICAg
ICB0aGlzLmNoaWxkcmVuID0gW107Ci0gICAgfQotCiAgICAgZmluZE5vZGUoY29tcGFyYXRvciwg
c2tpcEhpZGRlbiwgc3RheVdpdGhpbiwgZG9udFBvcHVsYXRlKQogICAgIHsKICAgICAgICAgY29u
c29sZS5hc3NlcnQodHlwZW9mIGNvbXBhcmF0b3IgPT09ICJmdW5jdGlvbiIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWROb2Rl
LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRGF0YUdyaWRO
b2RlLmpzCmluZGV4IDQzYzhiMzNkMjUwODk0ZWUzZWIyOWY3NTNmMTQzNGIzZTI0NDA0ZGMuLmU5
OWVlZDM4OWQxYTZiNWMzNGMwMDRjMzNlMWViOWEzY2RmMDRlMTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0RhdGFHcmlkTm9kZS5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9EYXRhR3JpZE5vZGUu
anMKQEAgLTQwOSw3ICs0MDksNiBAQCBXSS5EYXRhR3JpZE5vZGUgPSBjbGFzcyBEYXRhR3JpZE5v
ZGUgZXh0ZW5kcyBXSS5PYmplY3QKICAgICBpbnNlcnRDaGlsZCgpIHsgcmV0dXJuIFdJLkRhdGFH
cmlkLnByb3RvdHlwZS5pbnNlcnRDaGlsZC5hcHBseSh0aGlzLCBhcmd1bWVudHMpOyB9CiAgICAg
cmVtb3ZlQ2hpbGQoKSB7IHJldHVybiBXSS5EYXRhR3JpZC5wcm90b3R5cGUucmVtb3ZlQ2hpbGQu
YXBwbHkodGhpcywgYXJndW1lbnRzKTsgfQogICAgIHJlbW92ZUNoaWxkcmVuKCkgeyByZXR1cm4g
V0kuRGF0YUdyaWQucHJvdG90eXBlLnJlbW92ZUNoaWxkcmVuLmFwcGx5KHRoaXMsIGFyZ3VtZW50
cyk7IH0KLSAgICByZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZSgpIHsgcmV0dXJuIFdJLkRhdGFHcmlk
LnByb3RvdHlwZS5yZW1vdmVDaGlsZHJlblJlY3Vyc2l2ZS5hcHBseSh0aGlzLCBhcmd1bWVudHMp
OyB9CiAKICAgICBfcmVjYWxjdWxhdGVTaWJsaW5ncyhteUluZGV4KQogICAgIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Vycm9yT2JqZWN0
Vmlldy5jc3MgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9FcnJv
ck9iamVjdFZpZXcuY3NzCmluZGV4IDk5MTU5NWQxOTI2NzIwZjUzZjc5NTA3YmMyYjM0OGExZDFh
NDk0MTMuLmJlYzkyMGYzNWJlZDM2NmNjM2ViYmNmMWRiM2RlNjlmMDA0MmQ2YzggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Vycm9yT2JqZWN0
Vmlldy5jc3MKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
RXJyb3JPYmplY3RWaWV3LmNzcwpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDE1LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCkBAIC01MywxMCArNTMsMTAgQEAKICAgICBkaXNwbGF5OiBub25lOwog
fQogCi0uZXJyb3Itb2JqZWN0Om5vdCguZXhwYW5kZWQpIC50cmVlLW91dGxpbmUgeworLmVycm9y
LW9iamVjdDpub3QoLmV4cGFuZGVkKSAuY29udGVudCB7CiAgICAgZGlzcGxheTogbm9uZTsKIH0K
IAotLmVycm9yLW9iamVjdCAudHJlZS1vdXRsaW5lIHsKKy5lcnJvci1vYmplY3QgLmNvbnRlbnQg
ewogICAgIHBhZGRpbmctbGVmdDogMTZweAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRXJyb3JPYmplY3RWaWV3LmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvRXJyb3JPYmplY3RWaWV3LmpzCmluZGV4
IDBhY2ExZjRkMjY0MzUwNzQ4ZjhjMzVhNzlhNGI0YmY1ODEwNjZmZjYuLmFjZGIwMzI0MzNmOWI3
NTZjMDk4MDQ0OWJjYjU4ZGU3YmY3YzExMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0Vycm9yT2JqZWN0Vmlldy5qcworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9FcnJvck9iamVjdFZpZXcuanMKQEAg
LTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE1IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNSwgMjAxOCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTQz
LDcgKzQzLDcgQEAgV0kuRXJyb3JPYmplY3RWaWV3ID0gY2xhc3MgRXJyb3JPYmplY3RWaWV3IGV4
dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgIHByZXZpZXdFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIo
ImNsaWNrIiwgdGhpcy5faGFuZGxlUHJldmlld09yVGl0bGVFbGVtZW50Q2xpY2suYmluZCh0aGlz
KSk7CiAKICAgICAgICAgdGhpcy5fb3V0bGluZUVsZW1lbnQgPSB0aGlzLl9lbGVtZW50LmFwcGVu
ZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKTsKLSAgICAgICAgdGhpcy5fb3V0
bGluZSA9IG5ldyBXSS5UcmVlT3V0bGluZSh0aGlzLl9vdXRsaW5lRWxlbWVudCk7CisgICAgICAg
IHRoaXMuX291dGxpbmVFbGVtZW50LmNsYXNzTmFtZSA9ICJjb250ZW50IjsKICAgICB9CiAKICAg
ICAvLyBTdGF0aWMKQEAgLTgwLDExICs4MCw2IEBAIFdJLkVycm9yT2JqZWN0VmlldyA9IGNsYXNz
IEVycm9yT2JqZWN0VmlldyBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICByZXR1cm4gdGhpcy5f
ZWxlbWVudDsKICAgICB9CiAKLSAgICBnZXQgdHJlZU91dGxpbmUoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIHRoaXMuX291dGxpbmU7Ci0gICAgfQotCiAgICAgZ2V0IGV4cGFuZGVkKCkKICAgICB7
CiAgICAgICAgIHJldHVybiB0aGlzLl9leHBhbmRlZDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1JlY29yZGluZ1RyYWNlRGV0YWlsc1NpZGVi
YXJQYW5lbC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Jl
Y29yZGluZ1RyYWNlRGV0YWlsc1NpZGViYXJQYW5lbC5qcwppbmRleCA4Y2NmODI3N2NkNTlmN2M5
OTZjYjRjNmU2NDQ4MTg3NWZhM2NiYzA2Li5hMzhjZDgzOTI4NTU4MjkzMDE3NWNiNzg0Nzg2MmVl
OWJjOTU1NGUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9SZWNvcmRpbmdUcmFjZURldGFpbHNTaWRlYmFyUGFuZWwuanMKKysrIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvUmVjb3JkaW5nVHJhY2VEZXRhaWxz
U2lkZWJhclBhbmVsLmpzCkBAIC0zMCw3ICszMCw3IEBAIFdJLlJlY29yZGluZ1RyYWNlRGV0YWls
c1NpZGViYXJQYW5lbCA9IGNsYXNzIFJlY29yZGluZ1RyYWNlRGV0YWlsc1NpZGViYXJQYW5lbCBl
CiAgICAgICAgIHN1cGVyKCJyZWNvcmRpbmctdHJhY2UiLCBXSS5VSVN0cmluZygiVHJhY2UiKSk7
CiAKICAgICAgICAgY29uc3Qgc2VsZWN0YWJsZSA9IGZhbHNlOwotICAgICAgICB0aGlzLl9iYWNr
dHJhY2VUcmVlT3V0bGluZSA9IG5ldyBXSS5UcmVlT3V0bGluZShudWxsLCBzZWxlY3RhYmxlKTsK
KyAgICAgICAgdGhpcy5fYmFja3RyYWNlVHJlZU91dGxpbmUgPSBuZXcgV0kuVHJlZU91dGxpbmUo
c2VsZWN0YWJsZSk7CiAgICAgICAgIHRoaXMuX2JhY2t0cmFjZVRyZWVPdXRsaW5lLmRpc2Nsb3N1
cmVCdXR0b25zID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX2JhY2t0cmFjZVRyZWVDb250cm9sbGVy
ID0gbmV3IFdJLkNhbGxGcmFtZVRyZWVDb250cm9sbGVyKHRoaXMuX2JhY2t0cmFjZVRyZWVPdXRs
aW5lKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Vmlld3MvVHJlZUVsZW1lbnQuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9UcmVlRWxlbWVudC5qcwppbmRleCA0ZTRjNzQ0ZDU0MjFjY2QzNTc3NGU5ZmFiMWRm
YjZlOTdmOGRkNjE3Li41NDVmYzcxZGIwMjdiMjE0ODRkOTViMjliYTgyOGE2OWZmN2I4MTJiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9UcmVl
RWxlbWVudC5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9UcmVlRWxlbWVudC5qcwpAQCAtNjIsNyArNjIsNiBAQCBXSS5UcmVlRWxlbWVudCA9IGNsYXNz
IFRyZWVFbGVtZW50IGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgcmVtb3ZlQ2hpbGQoKSB7IHJldHVy
biBXSS5UcmVlT3V0bGluZS5wcm90b3R5cGUucmVtb3ZlQ2hpbGQuYXBwbHkodGhpcywgYXJndW1l
bnRzKTsgfQogICAgIHJlbW92ZUNoaWxkQXRJbmRleCgpIHsgcmV0dXJuIFdJLlRyZWVPdXRsaW5l
LnByb3RvdHlwZS5yZW1vdmVDaGlsZEF0SW5kZXguYXBwbHkodGhpcywgYXJndW1lbnRzKTsgfQog
ICAgIHJlbW92ZUNoaWxkcmVuKCkgeyByZXR1cm4gV0kuVHJlZU91dGxpbmUucHJvdG90eXBlLnJl
bW92ZUNoaWxkcmVuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IH0KLSAgICByZW1vdmVDaGlsZHJl
blJlY3Vyc2l2ZSgpIHsgcmV0dXJuIFdJLlRyZWVPdXRsaW5lLnByb3RvdHlwZS5yZW1vdmVDaGls
ZHJlblJlY3Vyc2l2ZS5hcHBseSh0aGlzLCBhcmd1bWVudHMpOyB9CiAgICAgc2VsZk9yRGVzY2Vu
ZGFudCgpIHsgcmV0dXJuIFdJLlRyZWVPdXRsaW5lLnByb3RvdHlwZS5zZWxmT3JEZXNjZW5kYW50
LmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IH0KIAogICAgIGdldCBhcnJvd1RvZ2dsZVdpZHRoKCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Ry
ZWVPdXRsaW5lLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
VHJlZU91dGxpbmUuanMKaW5kZXggNWUxYjk5MGU3ZjNkM2U4NTNlZWE2ZjJmZTQ0YTc5NTk2YTEz
OGQxZC4uNGJkOTBkZjliODFkODM5MTAyMmNhYjRhNWI2YjJhMzQ1OTRkMTYzMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVHJlZU91dGxpbmUu
anMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVHJlZU91
dGxpbmUuanMKQEAgLTI4LDExICsyOCwxMSBAQAogCiBXSS5UcmVlT3V0bGluZSA9IGNsYXNzIFRy
ZWVPdXRsaW5lIGV4dGVuZHMgV0kuT2JqZWN0CiB7Ci0gICAgY29uc3RydWN0b3IoZWxlbWVudCwg
c2VsZWN0YWJsZSA9IHRydWUpCisgICAgY29uc3RydWN0b3Ioc2VsZWN0YWJsZSA9IHRydWUpCiAg
ICAgewogICAgICAgICBzdXBlcigpOwogCi0gICAgICAgIHRoaXMuZWxlbWVudCA9IGVsZW1lbnQg
fHwgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib2wiKTsKKyAgICAgICAgdGhpcy5lbGVtZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib2wiKTsKICAgICAgICAgdGhpcy5lbGVtZW50LmNsYXNz
TGlzdC5hZGQoV0kuVHJlZU91dGxpbmUuRWxlbWVudFN0eWxlQ2xhc3NOYW1lKTsKICAgICAgICAg
dGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51IiwgdGhpcy5faGFuZGxl
Q29udGV4dG1lbnUuYmluZCh0aGlzKSk7CiAKQEAgLTM5MSw1NCArMzkxLDYgQEAgV0kuVHJlZU91
dGxpbmUgPSBjbGFzcyBUcmVlT3V0bGluZSBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICB0aGlz
LmNoaWxkcmVuID0gW107CiAgICAgfQogCi0gICAgcmVtb3ZlQ2hpbGRyZW5SZWN1cnNpdmUoc3Vw
cHJlc3NPbkRlc2VsZWN0KQotICAgIHsKLSAgICAgICAgbGV0IGNoaWxkcmVuVG9SZW1vdmUgPSB0
aGlzLmNoaWxkcmVuOwotICAgICAgICBsZXQgY2hpbGQgPSB0aGlzLmNoaWxkcmVuWzBdOwotICAg
ICAgICB3aGlsZSAoY2hpbGQpIHsKLSAgICAgICAgICAgIGlmIChjaGlsZC5jaGlsZHJlbi5sZW5n
dGgpCi0gICAgICAgICAgICAgICAgY2hpbGRyZW5Ub1JlbW92ZSA9IGNoaWxkcmVuVG9SZW1vdmUu
Y29uY2F0KGNoaWxkLmNoaWxkcmVuKTsKLSAgICAgICAgICAgIGNoaWxkID0gY2hpbGQudHJhdmVy
c2VOZXh0VHJlZUVsZW1lbnQoZmFsc2UsIHRoaXMsIHRydWUpOwotICAgICAgICB9Ci0KLSAgICAg
ICAgZm9yIChsZXQgY2hpbGQgb2YgY2hpbGRyZW5Ub1JlbW92ZSkgewotICAgICAgICAgICAgY2hp
bGQuZGVzZWxlY3Qoc3VwcHJlc3NPbkRlc2VsZWN0KTsKLQotICAgICAgICAgICAgbGV0IHRyZWVP
dXRsaW5lID0gY2hpbGQudHJlZU91dGxpbmU7Ci0gICAgICAgICAgICBpZiAodHJlZU91dGxpbmUp
Ci0gICAgICAgICAgICAgICAgdHJlZU91dGxpbmUuX2ZvcmdldFRyZWVFbGVtZW50KGNoaWxkKTsK
LQotICAgICAgICAgICAgY2hpbGQuX2RldGFjaCgpOwotICAgICAgICAgICAgY2hpbGQuY2hpbGRy
ZW4gPSBbXTsKLSAgICAgICAgICAgIGNoaWxkLnRyZWVPdXRsaW5lID0gbnVsbDsKLSAgICAgICAg
ICAgIGNoaWxkLnBhcmVudCA9IG51bGw7Ci0gICAgICAgICAgICBjaGlsZC5uZXh0U2libGluZyA9
IG51bGw7Ci0gICAgICAgICAgICBjaGlsZC5wcmV2aW91c1NpYmxpbmcgPSBudWxsOwotCi0gICAg
ICAgICAgICBpZiAodHJlZU91dGxpbmUpCi0gICAgICAgICAgICAgICAgdHJlZU91dGxpbmUuZGlz
cGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdJLlRyZWVPdXRsaW5lLkV2ZW50LkVsZW1lbnRSZW1vdmVk
LCB7ZWxlbWVudDogY2hpbGR9KTsKLSAgICAgICAgfQotCi0gICAgICAgIHRoaXMuY2hpbGRyZW4g
PSBbXTsKLSAgICB9Ci0KLSAgICByZWF0dGFjaElmSW5kZXhDaGFuZ2VkKHRyZWVFbGVtZW50LCBp
bnNlcnRpb25JbmRleCkKLSAgICB7Ci0gICAgICAgIGlmICh0aGlzLmNoaWxkcmVuW2luc2VydGlv
bkluZGV4XSA9PT0gdHJlZUVsZW1lbnQpCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAg
bGV0IHdhc1NlbGVjdGVkID0gdHJlZUVsZW1lbnQuc2VsZWN0ZWQ7Ci0KLSAgICAgICAgY29uc29s
ZS5hc3NlcnQoIXRyZWVFbGVtZW50LnBhcmVudCB8fCB0cmVlRWxlbWVudC5wYXJlbnQgPT09IHRo
aXMpOwotICAgICAgICBpZiAodHJlZUVsZW1lbnQucGFyZW50ID09PSB0aGlzKQotICAgICAgICAg
ICAgdGhpcy5yZW1vdmVDaGlsZCh0cmVlRWxlbWVudCk7Ci0KLSAgICAgICAgdGhpcy5pbnNlcnRD
aGlsZCh0cmVlRWxlbWVudCwgaW5zZXJ0aW9uSW5kZXgpOwotCi0gICAgICAgIGlmICh3YXNTZWxl
Y3RlZCkKLSAgICAgICAgICAgIHRyZWVFbGVtZW50LnNlbGVjdCgpOwotICAgIH0KLQogICAgIF9y
ZW1lbWJlclRyZWVFbGVtZW50KGVsZW1lbnQpCiAgICAgewogICAgICAgICB0aGlzLl90cmVlRWxl
bWVudEluZGV4Q2FjaGUuY2xlYXIoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>