<?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>17224</bug_id>
          
          <creation_ts>2008-02-08 13:45:41 -0800</creation_ts>
          <short_desc>DOM nodes/attributes should be editable</short_desc>
          <delta_ts>2008-03-12 23:13:49 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Adam Roben (:aroben)">aroben</assigned_to>
          <cc>dev+webkit</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>69794</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-02-08 13:45:41 -0800</bug_when>
    <thetext>It should be possible to edit DOM nodes/attributes right in the Inspector&apos;s DOM tree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69826</commentid>
    <comment_count>1</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-02-08 14:16:50 -0800</bug_when>
    <thetext>&lt;rdar://problem/5732825&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73144</commentid>
    <comment_count>2</comment_count>
      <attachid>19623</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-09 15:55:07 -0700</bug_when>
    <thetext>Created attachment 19623
Refactor CSS editing code so it can be shared with DOM editing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73148</commentid>
    <comment_count>3</comment_count>
      <attachid>19623</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-09 16:28:57 -0700</bug_when>
    <thetext>Comment on attachment 19623
Refactor CSS editing code so it can be shared with DOM editing

@@ -320,7 +320,7 @@ WebInspector.changeFocus = function(event)
     }
 
     if (!nextFocusElement)
-        nextFocusElement = event.target.firstParentWithClass(&quot;focusable&quot;);
+        nextFocusElement = event.target.firstParentOrSelfWithClass(&quot;focusable&quot;);
 
     this.currentFocusElement = nextFocusElement;
 }

I forgot to mention this change in the ChangeLog. I&apos;m actually not entirely sure why it wasn&apos;t needed before this. If the receiver of the mousedown event that triggered the call to changeFocus was itself focusable (rather than having a focusable parent), changeFocus would move focus to the next focusable element. This was causing the CSS property being edited to lose focus as soon as you clicked on it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73203</commentid>
    <comment_count>4</comment_count>
      <attachid>19623</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-10 09:19:02 -0700</bug_when>
    <thetext>Comment on attachment 19623
Refactor CSS editing code so it can be shared with DOM editing

Landed as r30931</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73255</commentid>
    <comment_count>5</comment_count>
      <attachid>19645</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-10 17:08:48 -0700</bug_when>
    <thetext>Created attachment 19645
Make attributes editable

This patch makes attributes editable. A future patch will make text nodes editable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73258</commentid>
    <comment_count>6</comment_count>
      <attachid>19645</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-10 17:15:53 -0700</bug_when>
    <thetext>Comment on attachment 19645
Make attributes editable

Landed as r30947</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73262</commentid>
    <comment_count>7</comment_count>
      <attachid>19648</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-10 17:41:15 -0700</bug_when>
    <thetext>Created attachment 19648
Make text nodes editable

Final part of the fix. Makes text nodes editable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73263</commentid>
    <comment_count>8</comment_count>
      <attachid>19648</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-10 17:45:59 -0700</bug_when>
    <thetext>Comment on attachment 19648
Make text nodes editable

The change in nodeTitleInfo in utilities.js makes it so we wrap text node contents in a new webkit-html-text-node span. I&apos;ve added this to the ChangeLog locally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73277</commentid>
    <comment_count>9</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-03-10 19:42:16 -0700</bug_when>
    <thetext>We should make element tag names editable too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73288</commentid>
    <comment_count>10</comment_count>
    <who name="Matt Lilek">dev+webkit</who>
    <bug_when>2008-03-10 22:13:58 -0700</bug_when>
    <thetext>Don&apos;t forget about the need to update various parts of the UI when we do this.  What&apos;s currently in the tree doesn&apos;t update the breadcrumb bar if you change an ID/class, nor does the sidebar update.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73310</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 07:46:20 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; We should make element tag names editable too.

I thought about doing this, but wasn&apos;t sure how useful it is. Firebug doesn&apos;t let you do it. But I guess we could do it in the name of consistency.

(In reply to comment #10)
&gt; Don&apos;t forget about the need to update various parts of the UI when we do this. 
&gt; What&apos;s currently in the tree doesn&apos;t update the breadcrumb bar if you change an
&gt; ID/class, nor does the sidebar update.

Good point! I&apos;ll make up a followup patch to fix these issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73314</commentid>
    <comment_count>12</comment_count>
    <who name="Matt Lilek">dev+webkit</who>
    <bug_when>2008-03-11 07:57:13 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #9)
&gt; &gt; We should make element tag names editable too.
&gt; 
&gt; I thought about doing this, but wasn&apos;t sure how useful it is. Firebug doesn&apos;t
&gt; let you do it. But I guess we could do it in the name of consistency.
&gt; 

If we&apos;re not going to make those editable, we perhaps we should make double clicking the tag name add a new attribute.  That should definitely be the case for nodes without any attributes and I don&apos;t see how that behavior could hurt even for ones that do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73322</commentid>
    <comment_count>13</comment_count>
      <attachid>19648</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 08:56:17 -0700</bug_when>
    <thetext>Comment on attachment 19648
Make text nodes editable

Committed as r30962</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73323</commentid>
    <comment_count>14</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 08:59:23 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; (In reply to comment #9)
&gt; &gt; &gt; We should make element tag names editable too.
&gt; &gt; 
&gt; &gt; I thought about doing this, but wasn&apos;t sure how useful it is. Firebug doesn&apos;t
&gt; &gt; let you do it. But I guess we could do it in the name of consistency.
&gt; &gt; 
&gt; 
&gt; If we&apos;re not going to make those editable, we perhaps we should make double
&gt; clicking the tag name add a new attribute.  That should definitely be the case
&gt; for nodes without any attributes and I don&apos;t see how that behavior could hurt
&gt; even for ones that do.

I think having some easy way of adding an attribute is a good idea (i.e., something more than just typing a second attribute in when editing an attribute). I also think having some easy way of adding a CSS property is a good idea.

We&apos;re running into conflicting behaviors for double-click here. Before any of my patches landed, if you double-clicked anywhere on a row in the DOM tree that row would become the root of the tree. Now this only happens if you double-click on a part of the row that&apos;s not an attribute or a text node.

We need to figure out how we want to fix this. Firebug uses single-click to edit -- maybe we should as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73324</commentid>
    <comment_count>15</comment_count>
    <who name="Matt Lilek">dev+webkit</who>
    <bug_when>2008-03-11 09:13:36 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; We&apos;re running into conflicting behaviors for double-click here. Before any of
&gt; my patches landed, if you double-clicked anywhere on a row in the DOM tree that
&gt; row would become the root of the tree. Now this only happens if you
&gt; double-click on a part of the row that&apos;s not an attribute or a text node.
&gt; 
&gt; We need to figure out how we want to fix this. Firebug uses single-click to
&gt; edit -- maybe we should as well?
&gt; 

Duh, I totally forgot about double clicking to drill down.  In theory, I like the idea of using single click to edit, but I think too often it would result in unwanted editing when people are just looking to focus the node and become annoying.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73348</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 11:04:45 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; In theory, I like
&gt; the idea of using single click to edit, but I think too often it would result
&gt; in unwanted editing when people are just looking to focus the node and become
&gt; annoying.

How about this?

If the node is not focused and you click on any part of it, we focus the node.
If the node is focused and you click on an editable part of it, we start editing that part.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73349</commentid>
    <comment_count>17</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 11:12:08 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; If the node is not focused and you click on any part of it, we focus the node.
&gt; If the node is focused and you click on an editable part of it, we start
&gt; editing that part.

Of course, if we do this then your first click of a double-click will start editing and the second click will re-root the tree, which might be strange.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73354</commentid>
    <comment_count>18</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-03-11 11:39:08 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; 
&gt; How about this?
&gt; 
&gt; If the node is not focused and you click on any part of it, we focus the node.
&gt; If the node is focused and you click on an editable part of it, we start
&gt; editing that part.

I like that plan.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73370</commentid>
    <comment_count>19</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 13:03:44 -0700</bug_when>
    <thetext>Hm, single-click-to-edit breaks our linkified URLs. Do we still care about linkified URLs in the DOM view? If we do, how do we handle this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73376</commentid>
    <comment_count>20</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-03-11 14:10:08 -0700</bug_when>
    <thetext>I think a click on the URL should take you to the resource. You can always click on the attr name to edit. Also we should make sure when editing URLs, that we hide the underline and the cursor does not change to a hand. (I am not sure we hide those things currently.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73377</commentid>
    <comment_count>21</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 14:17:10 -0700</bug_when>
    <thetext>(In reply to comment #20)
&gt; I think a click on the URL should take you to the resource. You can always
&gt; click on the attr name to edit. Also we should make sure when editing URLs,
&gt; that we hide the underline and the cursor does not change to a hand. (I am not
&gt; sure we hide those things currently.)

I worry that the URL behavior will be surprising, especially for URLs that we don&apos;t underline (i.e., URLs to external resources). In most cases, clicking an attribute value will start editing that value. If the value happens to be a URL, you&apos;ll be taken away from the DOM view altogether.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73413</commentid>
    <comment_count>22</comment_count>
      <attachid>19689</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 17:15:41 -0700</bug_when>
    <thetext>Created attachment 19689
Change to single-click-to-edit

This patch makes us edit on single-click, if the element is already selected (as discussed above). We now follow URLs on Alt/Option-click.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73414</commentid>
    <comment_count>23</comment_count>
      <attachid>19690</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-11 17:16:10 -0700</bug_when>
    <thetext>Created attachment 19690
Make URLs not be underlined while editing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73495</commentid>
    <comment_count>24</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-12 13:06:47 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; We should make element tag names editable too.

After thinking about this some more, I&apos;m not so sure there&apos;s a clear way forward with this. AFAICT, there&apos;s no way to change the an element&apos;s tag name -- you have to create a new element with the correct tag name, migrate all attributes/descendants to it, and replace the original element in the tree with the new one. But there are some things you can&apos;t migrate, such as event listeners, so it&apos;ll be an imperfect copy. And given all the copying/replacement going on behind the scenes, presenting this to the user as an &quot;edit&quot; of the tag name seems disingenuous.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73498</commentid>
    <comment_count>25</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2008-03-12 13:18:14 -0700</bug_when>
    <thetext>(In reply to comment #24)
&gt; (In reply to comment #9)
&gt; &gt; We should make element tag names editable too.
&gt; 
&gt; After thinking about this some more, I&apos;m not so sure there&apos;s a clear way
&gt; forward with this. AFAICT, there&apos;s no way to change the an element&apos;s tag name
&gt; -- you have to create a new element with the correct tag name, migrate all
&gt; attributes/descendants to it, and replace the original element in the tree with
&gt; the new one. But there are some things you can&apos;t migrate, such as event
&gt; listeners, so it&apos;ll be an imperfect copy. And given all the copying/replacement
&gt; going on behind the scenes, presenting this to the user as an &quot;edit&quot; of the tag
&gt; name seems disingenuous.
&gt; 

It is fine to not do tag name editing then. And since Firebug doesn&apos;t allow it, we are good. Might be nice someday when those issues can be addressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73528</commentid>
    <comment_count>26</comment_count>
      <attachid>19689</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-12 16:01:25 -0700</bug_when>
    <thetext>Comment on attachment 19689
Change to single-click-to-edit

Committed as r31009</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73529</commentid>
    <comment_count>27</comment_count>
      <attachid>19690</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-12 16:01:57 -0700</bug_when>
    <thetext>Comment on attachment 19690
Make URLs not be underlined while editing

Committed as r31010</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73539</commentid>
    <comment_count>28</comment_count>
      <attachid>19720</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-12 20:37:38 -0700</bug_when>
    <thetext>Created attachment 19720
Update styles/metrics/breadcrumb after editing

I think this is the final patch needed to close this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73547</commentid>
    <comment_count>29</comment_count>
      <attachid>19720</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-03-12 23:13:38 -0700</bug_when>
    <thetext>Comment on attachment 19720
Update styles/metrics/breadcrumb after editing

Committed as r31024</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19623</attachid>
            <date>2008-03-09 15:55:07 -0700</date>
            <delta_ts>2008-03-10 09:19:02 -0700</delta_ts>
            <desc>Refactor CSS editing code so it can be shared with DOM editing</desc>
            <filename>0001-Refactor-CSS-editing-code-so-we-can-share-it.patch</filename>
            <type>text/plain</type>
            <size>9410</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSBiMzhjOTFjYmQ1MzI0NWNmZmJjOTUzOTc0ZjRmOWVlNjQyNzk3ZmYwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBT
dW4sIDkgTWFyIDIwMDggMTg6NTQ6NDUgLTA0MDAKU3ViamVjdDogW1BGUl0gICAgICAgICBSZWZh
Y3RvciBDU1MgZWRpdGluZyBjb2RlIHNvIHdlIGNhbiBzaGFyZSBpdCB3aXRoIERPTSBlZGl0aW5n
CgogICAgICAgIEFkZCBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5nLCB3aGljaCB0YWtlcyB0aGUg
ZWxlbWVudCB0byBiZSBlZGl0ZWQsIGEKICAgICAgICBjb21taXR0ZWRDYWxsYmFjaywgYSBjYW5j
ZWxsZWRDYWxsYmFjaywgYW5kIGEgY29udGV4dCBwYXJhbWV0ZXIuIFRoaXMKICAgICAgICBmdW5j
dGlvbiB0YWtlcyBjYXJlIG9mIHNldHRpbmcgdXAgdGhlIGVsZW1lbnQgZm9yIGVkaXRpbmcsIGFu
ZCBjYWxscwogICAgICAgIGVpdGhlciB0aGUgY2FuY2VsbGVkQ2FsbGJhY2sgb3IgY29tbWl0dGVk
Q2FsbGJhY2sgd2hlbiBlZGl0aW5nIGVuZHMuCgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgoKICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL1N0eWxlc1NpZGViYXJQYW5lLmpzOgog
ICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnN0YXJ0RWRpdGlu
Zyk6CiAgICAgICAgICAtIENhbGwgV2ViSW5zcGVjdG9yLmlzQmVpbmdFZGl0ZWQgYW5kIFdlYklu
c3BlY3Rvci5zdGFydEVkaXRpbmcKICAgICAgICAgIC0gUmVtb3ZlZCBjb2RlIG5vdyBoYW5kbGVk
IGJ5IFdlYkluc3BlY3Rvci5zdGFydEVkaXRpbmcKICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxl
UHJvcGVydHlUcmVlRWxlbWVudC5lZGl0aW5nRW5kZWQpOgogICAgICAgICAgLSBSZW5hbWVkIGZy
b20gZW5kRWRpdGluZwogICAgICAgICAgLSBSZW1vdmVkIGNvZGUgbm93IGhhbmRsZWQgYnkgV2Vi
SW5zcGVjdG9yLnN0YXJ0RWRpdGluZwogICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0
eVRyZWVFbGVtZW50LmVkaXRpbmdDYW5jZWxsZWQpOgogICAgICAgICAgLSBSZW5hbWVkIGZyb20g
Y2FuY2VsRWRpdGluZwogICAgICAgICAgLSBDaGFuZ2VkIHBhcmFtZXRlcnMgdG8gbWF0Y2ggV2Vi
SW5zcGVjdG9yLnN0YXJ0RWRpdGluZydzCiAgICAgICAgICAgIGNhbmNlbGxlZENhbGxiYWNrCiAg
ICAgICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQuZWRpdGluZ0NvbW1p
dHRlZCk6CiAgICAgICAgICAtIFJlbmFtZWQgZnJvbSBjb21taXRFZGl0aW5nCiAgICAgICAgICAt
IENoYW5nZWQgcGFyYW1ldGVycyB0byBtYXRjaCBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5nJ3MK
ICAgICAgICAgICAgY29tbWl0dGVkQ2FsbGJhY2sKICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL2lu
c3BlY3Rvci5qczoKICAgICAgICAoV2ViSW5zcGVjdG9yLmlzQmVpbmdFZGl0ZWQpOiBBZGRlZC4K
ICAgICAgICAoV2ViSW5zcGVjdG9yLnN0YXJ0RWRpdGluZyk6IEFkZGVkLgotLS0KIFdlYkNvcmUv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDMwICsrKysrKysrKysrKysK
IFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvU3R5bGVzU2lkZWJhclBhbmUuanMgfCAgIDUzICsrKyst
LS0tLS0tLS0tLS0tLS0tLS0tCiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qcyAg
ICAgICAgIHwgICA2MyArKysrKysrKysrKysrKysrKysrKysrKysrKy0KIDMgZmlsZXMgY2hhbmdl
ZCwgMTAxIGluc2VydGlvbnMoKyksIDQ1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTE3OTMzZS4uNDQ0ZTc5MSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAg
LTEsNSArMSwzNSBAQAogMjAwOC0wMy0wOSAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+
CiAKKyAgICAgICAgUmVmYWN0b3IgQ1NTIGVkaXRpbmcgY29kZSBzbyB3ZSBjYW4gc2hhcmUgaXQg
d2l0aCBET00gZWRpdGluZworCisgICAgICAgIEFkZCBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5n
LCB3aGljaCB0YWtlcyB0aGUgZWxlbWVudCB0byBiZSBlZGl0ZWQsIGEKKyAgICAgICAgY29tbWl0
dGVkQ2FsbGJhY2ssIGEgY2FuY2VsbGVkQ2FsbGJhY2ssIGFuZCBhIGNvbnRleHQgcGFyYW1ldGVy
LiBUaGlzCisgICAgICAgIGZ1bmN0aW9uIHRha2VzIGNhcmUgb2Ygc2V0dGluZyB1cCB0aGUgZWxl
bWVudCBmb3IgZWRpdGluZywgYW5kIGNhbGxzCisgICAgICAgIGVpdGhlciB0aGUgY2FuY2VsbGVk
Q2FsbGJhY2sgb3IgY29tbWl0dGVkQ2FsbGJhY2sgd2hlbiBlZGl0aW5nIGVuZHMuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rv
ci9TdHlsZXNTaWRlYmFyUGFuZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3Bl
cnR5VHJlZUVsZW1lbnQuc3RhcnRFZGl0aW5nKToKKyAgICAgICAgICAtIENhbGwgV2ViSW5zcGVj
dG9yLmlzQmVpbmdFZGl0ZWQgYW5kIFdlYkluc3BlY3Rvci5zdGFydEVkaXRpbmcKKyAgICAgICAg
ICAtIFJlbW92ZWQgY29kZSBub3cgaGFuZGxlZCBieSBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5n
CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LmVkaXRpbmdF
bmRlZCk6CisgICAgICAgICAgLSBSZW5hbWVkIGZyb20gZW5kRWRpdGluZworICAgICAgICAgIC0g
UmVtb3ZlZCBjb2RlIG5vdyBoYW5kbGVkIGJ5IFdlYkluc3BlY3Rvci5zdGFydEVkaXRpbmcKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQuZWRpdGluZ0NhbmNl
bGxlZCk6CisgICAgICAgICAgLSBSZW5hbWVkIGZyb20gY2FuY2VsRWRpdGluZworICAgICAgICAg
IC0gQ2hhbmdlZCBwYXJhbWV0ZXJzIHRvIG1hdGNoIFdlYkluc3BlY3Rvci5zdGFydEVkaXRpbmcn
cworICAgICAgICAgICAgY2FuY2VsbGVkQ2FsbGJhY2sKKyAgICAgICAgKFdlYkluc3BlY3Rvci5T
dHlsZVByb3BlcnR5VHJlZUVsZW1lbnQuZWRpdGluZ0NvbW1pdHRlZCk6CisgICAgICAgICAgLSBS
ZW5hbWVkIGZyb20gY29tbWl0RWRpdGluZworICAgICAgICAgIC0gQ2hhbmdlZCBwYXJhbWV0ZXJz
IHRvIG1hdGNoIFdlYkluc3BlY3Rvci5zdGFydEVkaXRpbmcncworICAgICAgICAgICAgY29tbWl0
dGVkQ2FsbGJhY2sKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuaXNCZWluZ0VkaXRlZCk6IEFkZGVkLgorICAgICAgICAoV2ViSW5z
cGVjdG9yLnN0YXJ0RWRpdGluZyk6IEFkZGVkLgorCisyMDA4LTAzLTA5ICBBZGFtIFJvYmVuICA8
YXJvYmVuQGFwcGxlLmNvbT4KKwogICAgICAgICBXaW5kb3dzIGJ1aWxkIGZpeAogCiAgICAgICAg
ICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6IE1ha2Ugc3VyZSBhbGwgQ2Fpcm8gZmls
ZXMgYXJlCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL1N0eWxlc1NpZGViYXJQ
YW5lLmpzIGIvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9TdHlsZXNTaWRlYmFyUGFuZS5qcwppbmRl
eCBhNzAxYTM1Li5jOTczYWNhIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL1N0
eWxlc1NpZGViYXJQYW5lLmpzCisrKyBiL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvU3R5bGVzU2lk
ZWJhclBhbmUuanMKQEAgLTU0MSwxNSArNTQxLDEwIEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3Bl
cnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICBpZiAodGhpcy5wYXJlbnQuc2hv
cnRoYW5kKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIGlmICh0aGlzLmVkaXRpbmcg
fHwgKHRoaXMudHJlZU91dGxpbmUuc2VjdGlvbiAmJiAhdGhpcy50cmVlT3V0bGluZS5zZWN0aW9u
LmVkaXRhYmxlKSkKKyAgICAgICAgaWYgKFdlYkluc3BlY3Rvci5pc0JlaW5nRWRpdGVkKHRoaXMu
bGlzdEl0ZW1FbGVtZW50KSB8fCAodGhpcy50cmVlT3V0bGluZS5zZWN0aW9uICYmICF0aGlzLnRy
ZWVPdXRsaW5lLnNlY3Rpb24uZWRpdGFibGUpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAg
ICAgIHRoaXMuZWRpdGluZyA9IHRydWU7Ci0gICAgICAgIHRoaXMucHJldmlvdXNUZXh0Q29udGVu
dCA9IHRoaXMubGlzdEl0ZW1FbGVtZW50LnRleHRDb250ZW50OwotCi0gICAgICAgIHRoaXMubGlz
dEl0ZW1FbGVtZW50LmFkZFN0eWxlQ2xhc3MoImZvY3VzYWJsZSIpOwotICAgICAgICB0aGlzLmxp
c3RJdGVtRWxlbWVudC5hZGRTdHlsZUNsYXNzKCJlZGl0aW5nIik7Ci0gICAgICAgIHRoaXMud2Fz
RXhwYW5kZWQgPSB0aGlzLmV4cGFuZGVkOworICAgICAgICB2YXIgd2FzRXhwYW5kZWQgPSB0aGlz
LmV4cGFuZGVkOwogICAgICAgICB0aGlzLmNvbGxhcHNlKCk7CiAgICAgICAgIC8vIExpZSBhYm91
dCBvdXQgY2hpbGRyZW4gdG8gcHJldmVudCB0b2dnbGluZyBvbiBjbGljay4KICAgICAgICAgdGhp
cy5oYXNDaGlsZHJlbiA9IGZhbHNlOwpAQCAtNTU5LDU2ICs1NTQsMjYgQEAgV2ViSW5zcGVjdG9y
LlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgd2luZG93
LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoc2VsZWN0RWxlbWVudCwgMCwgc2VsZWN0
RWxlbWVudCwgMSk7CiAKLSAgICAgICAgdmFyIHRyZWVFbGVtZW50ID0gdGhpczsKLSAgICAgICAg
dGhpcy5saXN0SXRlbUVsZW1lbnQuYmx1cnJlZCA9IGZ1bmN0aW9uKCkgeyB0cmVlRWxlbWVudC5j
b21taXRFZGl0aW5nKCkgfTsKLSAgICAgICAgdGhpcy5saXN0SXRlbUVsZW1lbnQuaGFuZGxlS2V5
RXZlbnQgPSBmdW5jdGlvbihldmVudCkgewotICAgICAgICAgICAgaWYgKGV2ZW50LmtleUlkZW50
aWZpZXIgPT09ICJFbnRlciIpIHsKLSAgICAgICAgICAgICAgICB0cmVlRWxlbWVudC5jb21taXRF
ZGl0aW5nKCk7Ci0gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKLSAgICAg
ICAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5Q29kZSA9PT0gMjcpIHsgLy8gRXNjYXBlIGtleQot
ICAgICAgICAgICAgICAgIHRyZWVFbGVtZW50LmNhbmNlbEVkaXRpbmcoKTsKLSAgICAgICAgICAg
ICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwotICAgICAgICAgICAgfQotICAgICAgICB9Owot
Ci0gICAgICAgIHRoaXMucHJldmlvdXNGb2N1c0VsZW1lbnQgPSBXZWJJbnNwZWN0b3IuY3VycmVu
dEZvY3VzRWxlbWVudDsKLSAgICAgICAgV2ViSW5zcGVjdG9yLmN1cnJlbnRGb2N1c0VsZW1lbnQg
PSB0aGlzLmxpc3RJdGVtRWxlbWVudDsKKyAgICAgICAgV2ViSW5zcGVjdG9yLnN0YXJ0RWRpdGlu
Zyh0aGlzLmxpc3RJdGVtRWxlbWVudCwgdGhpcy5lZGl0aW5nQ29tbWl0dGVkLmJpbmQodGhpcyks
IHRoaXMuZWRpdGluZ0NhbmNlbGxlZC5iaW5kKHRoaXMpLCB3YXNFeHBhbmRlZCk7CiAgICAgfSwK
IAotICAgIGVuZEVkaXRpbmc6IGZ1bmN0aW9uKCkKKyAgICBlZGl0aW5nRW5kZWQ6IGZ1bmN0aW9u
KHdhc0V4cGFuZGVkKQogICAgIHsKLSAgICAgICAgLy8gUmV2ZXJ0IHRoZSBjaGFuZ2VzIGRvbmUg
aW4gc3RhcnRFZGl0aW5nKCkuCi0gICAgICAgIGRlbGV0ZSB0aGlzLmxpc3RJdGVtRWxlbWVudC5i
bHVycmVkOwotICAgICAgICBkZWxldGUgdGhpcy5saXN0SXRlbUVsZW1lbnQuaGFuZGxlS2V5RXZl
bnQ7Ci0KLSAgICAgICAgV2ViSW5zcGVjdG9yLmN1cnJlbnRGb2N1c0VsZW1lbnQgPSB0aGlzLnBy
ZXZpb3VzRm9jdXNFbGVtZW50OwotICAgICAgICBkZWxldGUgdGhpcy5wcmV2aW91c0ZvY3VzRWxl
bWVudDsKLQotICAgICAgICBkZWxldGUgdGhpcy5wcmV2aW91c1RleHRDb250ZW50OwotICAgICAg
ICBkZWxldGUgdGhpcy5lZGl0aW5nOwotCi0gICAgICAgIHRoaXMubGlzdEl0ZW1FbGVtZW50LnJl
bW92ZVN0eWxlQ2xhc3MoImZvY3VzYWJsZSIpOwotICAgICAgICB0aGlzLmxpc3RJdGVtRWxlbWVu
dC5yZW1vdmVTdHlsZUNsYXNzKCJlZGl0aW5nIik7CiAgICAgICAgIHRoaXMuaGFzQ2hpbGRyZW4g
PSAodGhpcy5jaGlsZHJlbi5sZW5ndGggPyB0cnVlIDogZmFsc2UpOwotICAgICAgICBpZiAodGhp
cy53YXNFeHBhbmRlZCkgewotICAgICAgICAgICAgZGVsZXRlIHRoaXMud2FzRXhwYW5kZWQ7Cisg
ICAgICAgIGlmICh3YXNFeHBhbmRlZCkKICAgICAgICAgICAgIHRoaXMuZXhwYW5kKCk7Ci0gICAg
ICAgIH0KICAgICB9LAogCi0gICAgY2FuY2VsRWRpdGluZzogZnVuY3Rpb24oKQorICAgIGVkaXRp
bmdDYW5jZWxsZWQ6IGZ1bmN0aW9uKGUsIHdhc0V4cGFuZGVkKQogICAgIHsKLSAgICAgICAgdGhp
cy5lbmRFZGl0aW5nKCk7CisgICAgICAgIHRoaXMuZWRpdGluZ0VuZGVkKHdhc0V4cGFuZGVkKTsK
ICAgICAgICAgdGhpcy51cGRhdGVUaXRsZSgpOwogICAgIH0sCiAKLSAgICBjb21taXRFZGl0aW5n
OiBmdW5jdGlvbigpCisgICAgZWRpdGluZ0NvbW1pdHRlZDogZnVuY3Rpb24oZSwgdXNlcklucHV0
LCBwcmV2aW91c0NvbnRlbnQsIHdhc0V4cGFuZGVkKQogICAgIHsKLSAgICAgICAgdmFyIHByZXZp
b3VzQ29udGVudCA9IHRoaXMucHJldmlvdXNUZXh0Q29udGVudDsKLQotICAgICAgICB0aGlzLmVu
ZEVkaXRpbmcoKTsKKyAgICAgICAgdGhpcy5lZGl0aW5nRW5kZWQoKTsKIAotICAgICAgICB2YXIg
dXNlcklucHV0ID0gdGhpcy5saXN0SXRlbUVsZW1lbnQudGV4dENvbnRlbnQ7CiAgICAgICAgIGlm
ICh1c2VySW5wdXQgPT09IHByZXZpb3VzQ29udGVudCkKICAgICAgICAgICAgIHJldHVybjsgLy8g
bm90aGluZyBjaGFuZ2VkLCBzbyBkbyBub3RoaW5nIGVsc2UKIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuanMgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2lu
c3BlY3Rvci5qcwppbmRleCBhOWY1ZmNmLi4xMTBhNmMwIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qcworKysgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2lu
c3BlY3Rvci5qcwpAQCAtMzIwLDcgKzMyMCw3IEBAIFdlYkluc3BlY3Rvci5jaGFuZ2VGb2N1cyA9
IGZ1bmN0aW9uKGV2ZW50KQogICAgIH0KIAogICAgIGlmICghbmV4dEZvY3VzRWxlbWVudCkKLSAg
ICAgICAgbmV4dEZvY3VzRWxlbWVudCA9IGV2ZW50LnRhcmdldC5maXJzdFBhcmVudFdpdGhDbGFz
cygiZm9jdXNhYmxlIik7CisgICAgICAgIG5leHRGb2N1c0VsZW1lbnQgPSBldmVudC50YXJnZXQu
Zmlyc3RQYXJlbnRPclNlbGZXaXRoQ2xhc3MoImZvY3VzYWJsZSIpOwogCiAgICAgdGhpcy5jdXJy
ZW50Rm9jdXNFbGVtZW50ID0gbmV4dEZvY3VzRWxlbWVudDsKIH0KQEAgLTEwNTMsNiArMTA1Myw2
NyBAQCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcgPSBmdW5jdGlvbihzdHJpbmcpCiAgICAgcmV0dXJu
IFN0cmluZy52c3ByaW50ZihzdHJpbmcsIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3Vt
ZW50cywgMSkpOwogfQogCitXZWJJbnNwZWN0b3IuaXNCZWluZ0VkaXRlZCA9IGZ1bmN0aW9uKGVs
ZW1lbnQpCit7CisgICAgcmV0dXJuIGVsZW1lbnQuX19lZGl0aW5nOworfQorCitXZWJJbnNwZWN0
b3Iuc3RhcnRFZGl0aW5nID0gZnVuY3Rpb24oZWxlbWVudCwgY29tbWl0dGVkQ2FsbGJhY2ssIGNh
bmNlbGxlZENhbGxiYWNrLCBjb250ZXh0KQoreworICAgIGlmIChlbGVtZW50Ll9fZWRpdGluZykK
KyAgICAgICAgcmV0dXJuOworICAgIGVsZW1lbnQuX19lZGl0aW5nID0gdHJ1ZTsKKworICAgIHZh
ciBvbGRUZXh0ID0gZWxlbWVudC50ZXh0Q29udGVudDsKKyAgICB2YXIgaGFuZGxlS2V5RXZlbnQg
PSBlbGVtZW50LmhhbmRsZUtleUV2ZW50OworICAgIHZhciBibHVycmVkID0gZWxlbWVudC5ibHVy
cmVkOworCisgICAgZWxlbWVudC5hZGRTdHlsZUNsYXNzKCJlZGl0aW5nIik7CisgICAgZWxlbWVu
dC5hZGRTdHlsZUNsYXNzKCJmb2N1c2FibGUiKTsKKworICAgIHZhciBwcmV2aW91c0ZvY3VzRWxl
bWVudCA9IFdlYkluc3BlY3Rvci5jdXJyZW50Rm9jdXNFbGVtZW50OworCisgICAgZnVuY3Rpb24g
Y2xlYW5VcEFmdGVyRWRpdGluZygpIHsKKyAgICAgICAgZGVsZXRlIHRoaXMuX19lZGl0aW5nOwor
CisgICAgICAgIHRoaXMucmVtb3ZlU3R5bGVDbGFzcygiZWRpdGluZyIpOworICAgICAgICB0aGlz
LnJlbW92ZVN0eWxlQ2xhc3MoImZvY3VzYWJsZSIpOworCisgICAgICAgIHRoaXMuaGFuZGxlS2V5
RXZlbnQgPSBoYW5kbGVLZXlFdmVudDsKKyAgICAgICAgdGhpcy5ibHVycmVkID0gYmx1cnJlZDsK
KworICAgICAgICBXZWJJbnNwZWN0b3IuY3VycmVudEZvY3VzRWxlbWVudCA9IHByZXZpb3VzRm9j
dXNFbGVtZW50OworICAgIH0KKworICAgIGZ1bmN0aW9uIGVkaXRpbmdDYW5jZWxsZWQoKSB7Cisg
ICAgICAgIHRoaXMuaW5uZXJUZXh0ID0gb2xkVGV4dDsKKworICAgICAgICBjbGVhblVwQWZ0ZXJF
ZGl0aW5nLmNhbGwodGhpcyk7CisKKyAgICAgICAgY2FuY2VsbGVkQ2FsbGJhY2sodGhpcywgY29u
dGV4dCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gZWRpdGluZ0NvbW1pdHRlZCgpIHsKKyAgICAg
ICAgY2xlYW5VcEFmdGVyRWRpdGluZy5jYWxsKHRoaXMpOworCisgICAgICAgIGNvbW1pdHRlZENh
bGxiYWNrKHRoaXMsIHRoaXMudGV4dENvbnRlbnQsIG9sZFRleHQsIGNvbnRleHQpOworICAgIH0K
KworICAgIGVsZW1lbnQuaGFuZGxlS2V5RXZlbnQgPSBmdW5jdGlvbihldmVudCkgeworICAgICAg
ICBpZiAoZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIkVudGVyIikgeworICAgICAgICAgICAgZWRp
dGluZ0NvbW1pdHRlZC5jYWxsKGVsZW1lbnQpOworICAgICAgICAgICAgZXZlbnQucHJldmVudERl
ZmF1bHQoKTsKKyAgICAgICAgfSBlbHNlIGlmIChldmVudC5rZXlDb2RlID09PSAyNykgeyAvLyBF
c2NhcGUga2V5CisgICAgICAgICAgICBlZGl0aW5nQ2FuY2VsbGVkLmNhbGwoZWxlbWVudCk7Cisg
ICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOworICAgICAgICB9CisgICAgfQorCisg
ICAgZWxlbWVudC5ibHVycmVkID0gZnVuY3Rpb24oKSB7IGVkaXRpbmdDYW5jZWxsZWQuY2FsbChl
bGVtZW50KTsgfQorCisgICAgV2ViSW5zcGVjdG9yLmN1cnJlbnRGb2N1c0VsZW1lbnQgPSBlbGVt
ZW50OworfQorCiBXZWJJbnNwZWN0b3IuU3RhdHVzVHJlZUVsZW1lbnQgPSBmdW5jdGlvbih0aXRs
ZSwgaWNvbkNsYXNzLCBwYW5lbCkKIHsKICAgICBUcmVlRWxlbWVudC5jYWxsKHRoaXMsICI8c3Bh
biBjbGFzcz1cInRpdGxlIG9ubHlcIj4iICsgdGl0bGUgKyAiPC9zcGFuPjxzcGFuIGNsYXNzPVwi
aWNvbiAiICsgaWNvbkNsYXNzICsgIlwiPjwvc3Bhbj4iLCBudWxsLCBmYWxzZSk7Ci0tIAoxLjUu
NC4zCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19645</attachid>
            <date>2008-03-10 17:08:48 -0700</date>
            <delta_ts>2008-03-10 17:15:53 -0700</delta_ts>
            <desc>Make attributes editable</desc>
            <filename>0001-Part-of-Bug-17224-DOM-nodes-attributes-shou.patch</filename>
            <type>text/plain</type>
            <size>10312</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSBkMzhhYjkzNWQwOTFkYzYwOGZlYmFmYTkyZmViNjRiYTUyOWZiYjFmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBN
b24sIDEwIE1hciAyMDA4IDIwOjA4OjAxIC0wNDAwClN1YmplY3Q6IFtQRlJdICAgICAgICAgUGFy
dCBvZiBCdWcgMTcyMjQ6IERPTSBub2Rlcy9hdHRyaWJ1dGVzIHNob3VsZCBiZSBlZGl0YWJsZQoK
ICAgICAgICA8aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcyMjQ+CiAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzI4MjU+CgogICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMg
RE9NIGF0dHJpYnV0ZXMgZWRpdGFibGUgdmlhIGRvdWJsZS1jbGljay4KCiAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgICogcGFnZS9pbnNwZWN0b3IvRG9jdW1lbnRQ
YW5lbC5qczoKICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5vbm1vdXNl
ZG93bik6IERvbid0IGRvIGFueXRoaW5nIGlmCiAgICAgICAgd2UncmUgYmVpbmcgZWRpdGVkLCBz
aW5jZSB3ZSB3YW50IGRlZmF1bHQgZWRpdGluZyBiZWhhdmlvcnMgdG8gd29yay4KICAgICAgICAo
V2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5vbmRibGNsaWNrKTogVHJ5IHRvIHN0YXJ0
IGVkaXRpbmcKICAgICAgICBiZWZvcmUgZG9pbmcgYW55dGhpbmcgZWxzZS4KICAgICAgICAoV2Vi
SW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5nKTogQWRkZWQuIEN1cnJl
bnRseSBvbmx5CiAgICAgICAgbGV0cyB5b3UgZWRpdCBhdHRyaWJ1dGVzLgogICAgICAgIChXZWJJ
bnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50Ll9hdHRyaWJ1dGVFZGl0aW5nQ29tbWl0dGVkKTog
QWRkZWQuCiAgICAgICAgVXNlcyBhIHNjcmF0Y2ggZWxlbWVudCB0byBnZXQgdGhlIG5ldyBhdHRy
aWJ1dGUocykgcGFyc2VkLCB0aGVuIHNldHMKICAgICAgICB0aGUgYXR0cmlidXRlKHMpIG9uIHRo
ZSBub2RlIGluIHRoZSBpbnNwZWN0ZWQgZG9jdW1lbnQuCiAgICAgICAgKFdlYkluc3BlY3Rvci5E
T01Ob2RlVHJlZUVsZW1lbnQuX2F0dHJpYnV0ZUVkaXRpbmdDYW5jZWxsZWQpOiBBZGRlZC4KICAg
ICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fdXBkYXRlVGl0bGUpOiBBZGRl
ZC4gUmVmcmVzaGVzIHRoZQogICAgICAgIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBub2RlIGluIHRo
ZSBJbnNwZWN0b3IncyBET00gdHJlZSB0byByZWZsZWN0CiAgICAgICAgdGhlIG5vZGUncyBjdXJy
ZW50IHN0YXRlLgogICAgICAgICogcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzczogTWFkZSB0
aGUgLmVkaXRpbmcgY2xhc3MgYXBwbHkKICAgICAgICBldmVyeXdoZXJlLgogICAgICAgICogcGFn
ZS9pbnNwZWN0b3IvdXRpbGl0aWVzLmpzOgogICAgICAgIChub2RlVGl0bGVJbmZvKTogQ2hhbmdl
ZCB0byBzdXJyb3VuZCBhdHRyaWJ1dGUgbmFtZS92YWx1ZSBwYWlycyBpbiBhCiAgICAgICAgd2Vi
a2l0LWh0bWwtYXR0cmlidXRlIHNwYW4gc28gdGhhdCB3ZSBjYW4gZWFzaWx5IGVkaXQgdGhlIHBh
aXIgYXMgYQogICAgICAgIHdob2xlLgotLS0KIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAg
ICAgICAgICAgICB8ICAgMzIgKysrKysrKysrKwogV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Eb2N1
bWVudFBhbmVsLmpzIHwgICA5NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiBXZWJD
b3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MgICAgfCAgIDE4ICsrKystLQogV2ViQ29y
ZS9wYWdlL2luc3BlY3Rvci91dGlsaXRpZXMuanMgICAgIHwgICAgMyArLQogNCBmaWxlcyBjaGFu
Z2VkLCAxNDAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3ZjY0NWU0Li4wYmVkNTky
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDM1IEBACisyMDA4LTAzLTEwICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNv
bT4KKworICAgICAgICBQYXJ0IG9mIEJ1ZyAxNzIyNDogRE9NIG5vZGVzL2F0dHJpYnV0ZXMgc2hv
dWxkIGJlIGVkaXRhYmxlCisKKyAgICAgICAgPGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3MjI0PgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTczMjgyNT4KKworICAg
ICAgICBUaGlzIHBhdGNoIG1ha2VzIERPTSBhdHRyaWJ1dGVzIGVkaXRhYmxlIHZpYSBkb3VibGUt
Y2xpY2suCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBwYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkRPTU5vZGVUcmVlRWxlbWVudC5vbm1vdXNlZG93bik6IERvbid0IGRvIGFueXRoaW5nIGlmCisg
ICAgICAgIHdlJ3JlIGJlaW5nIGVkaXRlZCwgc2luY2Ugd2Ugd2FudCBkZWZhdWx0IGVkaXRpbmcg
YmVoYXZpb3JzIHRvIHdvcmsuCisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVt
ZW50Lm9uZGJsY2xpY2spOiBUcnkgdG8gc3RhcnQgZWRpdGluZworICAgICAgICBiZWZvcmUgZG9p
bmcgYW55dGhpbmcgZWxzZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1l
bnQuX3N0YXJ0RWRpdGluZyk6IEFkZGVkLiBDdXJyZW50bHkgb25seQorICAgICAgICBsZXRzIHlv
dSBlZGl0IGF0dHJpYnV0ZXMuCisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVt
ZW50Ll9hdHRyaWJ1dGVFZGl0aW5nQ29tbWl0dGVkKTogQWRkZWQuCisgICAgICAgIFVzZXMgYSBz
Y3JhdGNoIGVsZW1lbnQgdG8gZ2V0IHRoZSBuZXcgYXR0cmlidXRlKHMpIHBhcnNlZCwgdGhlbiBz
ZXRzCisgICAgICAgIHRoZSBhdHRyaWJ1dGUocykgb24gdGhlIG5vZGUgaW4gdGhlIGluc3BlY3Rl
ZCBkb2N1bWVudC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQuX2F0
dHJpYnV0ZUVkaXRpbmdDYW5jZWxsZWQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5E
T01Ob2RlVHJlZUVsZW1lbnQuX3VwZGF0ZVRpdGxlKTogQWRkZWQuIFJlZnJlc2hlcyB0aGUKKyAg
ICAgICAgcmVwcmVzZW50YXRpb24gb2YgdGhlIG5vZGUgaW4gdGhlIEluc3BlY3RvcidzIERPTSB0
cmVlIHRvIHJlZmxlY3QKKyAgICAgICAgdGhlIG5vZGUncyBjdXJyZW50IHN0YXRlLgorICAgICAg
ICAqIHBhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3M6IE1hZGUgdGhlIC5lZGl0aW5nIGNsYXNz
IGFwcGx5CisgICAgICAgIGV2ZXJ5d2hlcmUuCisgICAgICAgICogcGFnZS9pbnNwZWN0b3IvdXRp
bGl0aWVzLmpzOgorICAgICAgICAobm9kZVRpdGxlSW5mbyk6IENoYW5nZWQgdG8gc3Vycm91bmQg
YXR0cmlidXRlIG5hbWUvdmFsdWUgcGFpcnMgaW4gYQorICAgICAgICB3ZWJraXQtaHRtbC1hdHRy
aWJ1dGUgc3BhbiBzbyB0aGF0IHdlIGNhbiBlYXNpbHkgZWRpdCB0aGUgcGFpciBhcyBhCisgICAg
ICAgIHdob2xlLgorCiAyMDA4LTAzLTEwICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5j
b20+CiAKICAgICAgICAgRml4IDY0LWJpdCBidWlsZHMuCmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwuanMgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0Rv
Y3VtZW50UGFuZWwuanMKaW5kZXggODUyODE5Ni4uMDQyMTVmZCAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBhbmVsLmpzCisrKyBiL1dlYkNvcmUvcGFnZS9pbnNw
ZWN0b3IvRG9jdW1lbnRQYW5lbC5qcwpAQCAtODE3LDIwICs4MTcsMTEzIEBAIFdlYkluc3BlY3Rv
ci5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogCiAgICAgb25tb3VzZWRvd246IGZ1
bmN0aW9uKGV2ZW50KQogICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX2VkaXRpbmcpCisgICAgICAg
ICAgICByZXR1cm47CisKICAgICAgICAgLy8gUHJldmVudCBzZWxlY3RpbmcgdGhlIG5lYXJlc3Qg
d29yZCBvbiBkb3VibGUgY2xpY2suCiAgICAgICAgIGlmIChldmVudC5kZXRhaWwgPj0gMikKICAg
ICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAgICAgfSwKIAotICAgIG9uZGJsY2xp
Y2s6IGZ1bmN0aW9uKCkKKyAgICBvbmRibGNsaWNrOiBmdW5jdGlvbih0cmVlRWxlbWVudCwgZXZl
bnQpCiAgICAgeworICAgICAgICBpZiAodGhpcy5fc3RhcnRFZGl0aW5nKGV2ZW50KSkKKyAgICAg
ICAgICAgIHJldHVybjsKKwogICAgICAgICB2YXIgcGFuZWwgPSB0aGlzLnRyZWVPdXRsaW5lLnBh
bmVsOwogICAgICAgICBwYW5lbC5yb290RE9NTm9kZSA9IHRoaXMucmVwcmVzZW50ZWRPYmplY3Qu
cGFyZW50Tm9kZTsKICAgICAgICAgcGFuZWwuZm9jdXNlZERPTU5vZGUgPSB0aGlzLnJlcHJlc2Vu
dGVkT2JqZWN0OwogCiAgICAgICAgIGlmICh0aGlzLmhhc0NoaWxkcmVuICYmICF0aGlzLmV4cGFu
ZGVkKQogICAgICAgICAgICAgdGhpcy5leHBhbmQoKTsKLSAgICB9CisgICAgfSwKKworICAgIF9z
dGFydEVkaXRpbmc6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgaWYgKHRoaXMucmVw
cmVzZW50ZWRPYmplY3Qubm9kZVR5cGUgIT0gTm9kZS5FTEVNRU5UX05PREUpCisgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgdmFyIGF0dHJpYnV0ZSA9IGV2ZW50LnRhcmdldC5m
aXJzdFBhcmVudE9yU2VsZldpdGhDbGFzcygid2Via2l0LWh0bWwtYXR0cmlidXRlIik7CisgICAg
ICAgIGlmICghYXR0cmlidXRlKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAg
IGlmIChXZWJJbnNwZWN0b3IuaXNCZWluZ0VkaXRlZChhdHRyaWJ1dGUpKQorICAgICAgICAgICAg
cmV0dXJuIHRydWU7CisKKyAgICAgICAgdmFyIGF0dHJpYnV0ZU5hbWVFbGVtZW50ID0gYXR0cmli
dXRlLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoIndlYmtpdC1odG1sLWF0dHJpYnV0ZS1uYW1lIilb
MF07CisgICAgICAgIGlmICghYXR0cmlidXRlTmFtZUVsZW1lbnQpCisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICAgICAgdmFyIGF0dHJpYnV0ZU5hbWUgPSBhdHRyaWJ1dGVOYW1lRWxl
bWVudC5pbm5lclRleHQ7CisKKyAgICAgICAgZnVuY3Rpb24gcmVtb3ZlWmVyb1dpZHRoU3BhY2VS
ZWN1cnNpdmUobm9kZSkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKG5vZGUubm9kZVR5cGUg
PT09IE5vZGUuVEVYVF9OT0RFKSB7CisgICAgICAgICAgICAgICAgbm9kZS5ub2RlVmFsdWUgPSBu
b2RlLm5vZGVWYWx1ZS5yZXBsYWNlKC9cdTIwMEIvZywgIiIpOworICAgICAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKG5vZGUubm9kZVR5cGUgIT09
IE5vZGUuRUxFTUVOVF9OT0RFKQorICAgICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAg
ICAgZm9yICh2YXIgY2hpbGQgPSBub2RlLmZpcnN0Q2hpbGQ7IGNoaWxkOyBjaGlsZCA9IGNoaWxk
Lm5leHRTaWJsaW5nKQorICAgICAgICAgICAgICAgIHJlbW92ZVplcm9XaWR0aFNwYWNlUmVjdXJz
aXZlKGNoaWxkKTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIFJlbW92ZSB6ZXJvLXdpZHRoIHNw
YWNlcyB0aGF0IHdlcmUgYWRkZWQgYnkgbm9kZVRpdGxlSW5mby4KKyAgICAgICAgcmVtb3ZlWmVy
b1dpZHRoU3BhY2VSZWN1cnNpdmUoYXR0cmlidXRlKTsKKworICAgICAgICB0aGlzLl9lZGl0aW5n
ID0gdHJ1ZTsKKworICAgICAgICBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5nKGF0dHJpYnV0ZSwg
dGhpcy5fYXR0cmlidXRlRWRpdGluZ0NvbW1pdHRlZC5iaW5kKHRoaXMpLCB0aGlzLl9hdHRyaWJ1
dGVFZGl0aW5nQ2FuY2VsbGVkLmJpbmQodGhpcyksIGF0dHJpYnV0ZU5hbWUpOworICAgICAgICBp
ZiAoZXZlbnQudGFyZ2V0Lmhhc1N0eWxlQ2xhc3MoIndlYmtpdC1odG1sLWF0dHJpYnV0ZS12YWx1
ZSIpKSB7CisgICAgICAgICAgICAvLyBTZWxlY3QganVzdCBpbnNpZGUgdGhlIHF1b3Rlcy4KKyAg
ICAgICAgICAgIHZhciB0ZXh0Q2hpbGQgPSBldmVudC50YXJnZXQuZmlyc3RDaGlsZDsKKyAgICAg
ICAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KHRleHRDaGlsZCwg
MSwgdGV4dENoaWxkLCB0ZXh0Q2hpbGQubGVuZ3RoIC0gMSk7CisgICAgICAgIH0gZWxzZQorICAg
ICAgICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoZXZlbnQudGFy
Z2V0LCAwLCBldmVudC50YXJnZXQsIDEpOworCisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0s
CisKKyAgICBfYXR0cmlidXRlRWRpdGluZ0NvbW1pdHRlZDogZnVuY3Rpb24oZWxlbWVudCwgbmV3
VGV4dCwgb2xkVGV4dCwgYXR0cmlidXRlTmFtZSkKKyAgICB7CisgICAgICAgIGRlbGV0ZSB0aGlz
Ll9lZGl0aW5nOworCisgICAgICAgIHZhciBwYXJzZUNvbnRhaW5lckVsZW1lbnQgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJzcGFuIik7CisgICAgICAgIHBhcnNlQ29udGFpbmVyRWxlbWVudC5p
bm5lckhUTUwgPSAiPHNwYW4gIiArIG5ld1RleHQgKyAiPjwvc3Bhbj4iOworICAgICAgICB2YXIg
cGFyc2VFbGVtZW50ID0gcGFyc2VDb250YWluZXJFbGVtZW50LmZpcnN0Q2hpbGQ7CisgICAgICAg
IGlmICghcGFyc2VFbGVtZW50IHx8ICFwYXJzZUVsZW1lbnQuaGFzQXR0cmlidXRlcygpKSB7Cisg
ICAgICAgICAgICBlZGl0aW5nQ2FuY2VsbGVkKGVsZW1lbnQsIGNvbnRleHQpOworICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgdmFyIGZvdW5kT3JpZ2luYWxBdHRyaWJ1
dGUgPSBmYWxzZTsKKyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwYXJzZUVsZW1lbnQuYXR0
cmlidXRlcy5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgdmFyIGF0dHIgPSBwYXJzZUVsZW1l
bnQuYXR0cmlidXRlc1tpXTsKKyAgICAgICAgICAgIGZvdW5kT3JpZ2luYWxBdHRyaWJ1dGUgPSBm
b3VuZE9yaWdpbmFsQXR0cmlidXRlIHx8IGF0dHIubmFtZSA9PT0gYXR0cmlidXRlTmFtZTsKKyAg
ICAgICAgICAgIEVsZW1lbnQucHJvdG90eXBlLnNldEF0dHJpYnV0ZS5jYWxsKHRoaXMucmVwcmVz
ZW50ZWRPYmplY3QsIGF0dHIubmFtZSwgYXR0ci52YWx1ZSk7CisgICAgICAgIH0KKworICAgICAg
ICBpZiAoIWZvdW5kT3JpZ2luYWxBdHRyaWJ1dGUpCisgICAgICAgICAgICBFbGVtZW50LnByb3Rv
dHlwZS5yZW1vdmVBdHRyaWJ1dGUuY2FsbCh0aGlzLnJlcHJlc2VudGVkT2JqZWN0LCBhdHRyaWJ1
dGVOYW1lKTsKKworICAgICAgICB0aGlzLl91cGRhdGVUaXRsZSgpOworICAgIH0sCisKKyAgICBf
YXR0cmlidXRlRWRpdGluZ0NhbmNlbGxlZDogZnVuY3Rpb24oZWxlbWVudCwgY29udGV4dCkKKyAg
ICB7CisgICAgICAgIGRlbGV0ZSB0aGlzLl9lZGl0aW5nOworCisgICAgICAgIHRoaXMuX3VwZGF0
ZVRpdGxlKCk7CisgICAgfSwKKworICAgIF91cGRhdGVUaXRsZTogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgdGhpcy50aXRsZSA9IG5vZGVUaXRsZUluZm8uY2FsbCh0aGlzLnJlcHJlc2VudGVk
T2JqZWN0LCB0aGlzLmhhc0NoaWxkcmVuLCBXZWJJbnNwZWN0b3IubGlua2lmeVVSTCkudGl0bGU7
CisgICAgICAgIGRlbGV0ZSB0aGlzLnNlbGVjdGlvbkVsZW1lbnQ7CisgICAgICAgIHRoaXMudXBk
YXRlU2VsZWN0aW9uKCk7CisgICAgfSwKIH0KIAogV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxl
bWVudC5wcm90b3R5cGUuX19wcm90b19fID0gVHJlZUVsZW1lbnQucHJvdG90eXBlOwpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzIGIvV2ViQ29yZS9wYWdl
L2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCmluZGV4IDJiYTMyMDguLmYwYmUzYjkgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmNzcworKysgYi9XZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MKQEAgLTEyOTEsMTMgKzEyOTEsMTMgQEAgYm9keTpu
b3QoLmluYWN0aXZlKSAuZm9jdXNlZCAub3V0bGluZS1kaXNjbG9zdXJlIGxpLnNlbGVjdGVkICog
ewogICAgIG1hcmdpbi10b3A6IDFweDsKIH0KIAotLnNlY3Rpb24gLnByb3BlcnRpZXMgbGkuZWRp
dGluZyB7CisuZWRpdGluZyB7CisgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDsKICAgICAt
d2Via2l0LWJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgLjUpIDNweCAzcHggNHB4OwotICAgIG91
dGxpbmU6IDFweCBzb2xpZCByZ2IoNjYlLCA2NiUsIDY2JSk7CisgICAgb3V0bGluZTogMXB4IHNv
bGlkIHJnYig2NiUsIDY2JSwgNjYlKSAhaW1wb3J0YW50OwogICAgIGJhY2tncm91bmQtY29sb3I6
IHdoaXRlOwogICAgIC13ZWJraXQtdXNlci1tb2RpZnk6IHJlYWQtd3JpdGUtcGxhaW50ZXh0LW9u
bHk7CiAgICAgdGV4dC1vdmVyZmxvdzogY2xpcDsKLSAgICBtYXJnaW4tbGVmdDogOHB4OwogICAg
IHBhZGRpbmctbGVmdDogMnB4OwogICAgIG1hcmdpbi1ib3R0b206IC0xcHg7CiAgICAgcGFkZGlu
Zy1ib3R0b206IDFweDsKQEAgLTEzMDUsMTIgKzEzMDUsMTYgQEAgYm9keTpub3QoLmluYWN0aXZl
KSAuZm9jdXNlZCAub3V0bGluZS1kaXNjbG9zdXJlIGxpLnNlbGVjdGVkICogewogICAgIG9wYWNp
dHk6IDEuMCAhaW1wb3J0YW50OwogfQogCi0uc2VjdGlvbiAucHJvcGVydGllcyBsaS5lZGl0aW5n
LnBhcmVudDo6YmVmb3JlIHsKLSAgICBkaXNwbGF5OiBub25lOworLmVkaXRpbmcsIC5lZGl0aW5n
ICogeworICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OwogfQogCi0uc2VjdGlvbiAucHJvcGVy
dGllcyBsaS5lZGl0aW5nICogewotICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OworLnNlY3Rp
b24gLnByb3BlcnRpZXMgbGkuZWRpdGluZyB7CisgICAgbWFyZ2luLWxlZnQ6IDhweDsKK30KKwor
LnNlY3Rpb24gLnByb3BlcnRpZXMgbGkuZWRpdGluZy5wYXJlbnQ6OmJlZm9yZSB7CisgICAgZGlz
cGxheTogbm9uZTsKIH0KIAogLnNlY3Rpb24gLnByb3BlcnRpZXMgLm92ZXJsb2FkZWQgewpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci91dGlsaXRpZXMuanMgYi9XZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL3V0aWxpdGllcy5qcwppbmRleCA0N2Q3MjFmLi5lOGM1ZGJjIDEwMDY0NAot
LS0gYS9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL3V0aWxpdGllcy5qcworKysgYi9XZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL3V0aWxpdGllcy5qcwpAQCAtNjAzLDEyICs2MDMsMTMgQEAgZnVuY3Rpb24g
bm9kZVRpdGxlSW5mbyhoYXNDaGlsZHJlbiwgbGlua2lmeSkKICAgICAgICAgICAgICAgICAgICAg
dmFyIHZhbHVlID0gYXR0ci52YWx1ZS5lc2NhcGVIVE1MKCk7CiAgICAgICAgICAgICAgICAgICAg
IHZhbHVlID0gdmFsdWUucmVwbGFjZSgvKFtcLzs6XClcXVx9XSkvZywgIiQxJiM4MjAzOyIpOwog
Ci0gICAgICAgICAgICAgICAgICAgIGluZm8udGl0bGUgKz0gIiA8c3BhbiBjbGFzcz1cIndlYmtp
dC1odG1sLWF0dHJpYnV0ZS1uYW1lXCI+IiArIGF0dHIubmFtZS5lc2NhcGVIVE1MKCkgKyAiPC9z
cGFuPj0mIzgyMDM7IjsKKyAgICAgICAgICAgICAgICAgICAgaW5mby50aXRsZSArPSAiIDxzcGFu
IGNsYXNzPVwid2Via2l0LWh0bWwtYXR0cmlidXRlXCI+PHNwYW4gY2xhc3M9XCJ3ZWJraXQtaHRt
bC1hdHRyaWJ1dGUtbmFtZVwiPiIgKyBhdHRyLm5hbWUuZXNjYXBlSFRNTCgpICsgIjwvc3Bhbj49
JiM4MjAzOyI7CiAKICAgICAgICAgICAgICAgICAgICAgaWYgKGxpbmtpZnkgJiYgKGF0dHIubmFt
ZSA9PT0gInNyYyIgfHwgYXR0ci5uYW1lID09PSAiaHJlZiIpKQogICAgICAgICAgICAgICAgICAg
ICAgICAgaW5mby50aXRsZSArPSBsaW5raWZ5KGF0dHIudmFsdWUsIHZhbHVlLCAid2Via2l0LWh0
bWwtYXR0cmlidXRlLXZhbHVlIiwgdGhpcy5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09ICJhIik7
CiAgICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgIGluZm8u
dGl0bGUgKz0gIjxzcGFuIGNsYXNzPVwid2Via2l0LWh0bWwtYXR0cmlidXRlLXZhbHVlXCI+XCIi
ICsgdmFsdWUgKyAiXCI8L3NwYW4+IjsKKyAgICAgICAgICAgICAgICAgICAgaW5mby50aXRsZSAr
PSAiPC9zcGFuPiI7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgaW5mby50aXRsZSArPSAiJmd0Ozwvc3Bhbj4mIzgyMDM7IjsKLS0gCjEuNS40LjMKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19648</attachid>
            <date>2008-03-10 17:41:15 -0700</date>
            <delta_ts>2008-03-11 08:56:17 -0700</delta_ts>
            <desc>Make text nodes editable</desc>
            <filename>0001-Fix-Bug-17224-DOM-nodes-attributes-should-b.patch</filename>
            <type>text/plain</type>
            <size>7117</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSBmZWUzY2IwZjM2N2MxMWQ3YmU3ZTk3M2VlYjhiZGU1ZjM0NjgyZWNkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBN
b24sIDEwIE1hciAyMDA4IDIwOjQwOjM2IC0wNDAwClN1YmplY3Q6IFtQRlJdICAgICAgICAgRml4
IEJ1ZyAxNzIyNDogRE9NIG5vZGVzL2F0dHJpYnV0ZXMgc2hvdWxkIGJlIGVkaXRhYmxlCgogICAg
ICAgIDxodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzIyND4KICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNTczMjgyNT4KCiAgICAgICAgVGhpcyBwYXRjaCBtYWtlcyB0ZXh0
IG5vZGVzIGVkaXRhYmxlIHZpYSBkb3VibGUtY2xpY2suCgogICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgoKICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwuanM6
CiAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQuX3N0YXJ0RWRpdGluZyk6
CiAgICAgICAgICAtIE1vdmVkIG1vc3Qgb2YgdGhpcyBjb2RlIHRvIF9zdGFydEVkaXRpbmdBdHRy
aWJ1dGUKICAgICAgICAgIC0gQ2FsbHMgX3N0YXJ0RWRpdGluZ1RleHROb2RlIG9yIF9zdGFydEVk
aXRpbmdBdHRyaWJ1dGUgYXMKICAgICAgICAgICAgYXBwcm9wcmlhdGUKICAgICAgICAoV2ViSW5z
cGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5nQXR0cmlidXRlKTogQWRkZWQu
IENvZGUKICAgICAgICBjYW1lIGZyb20gX3N0YXJ0RWRpdGluZy4KICAgICAgICAoV2ViSW5zcGVj
dG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5nVGV4dE5vZGUpOiBBZGRlZC4KICAg
ICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fdGV4dE5vZGVFZGl0aW5nQ29t
bWl0dGVkKTogQWRkZWQuCiAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQu
X2VkaXRpbmdDYW5jZWxsZWQpOiBSZW5hbWVkIGZyb20KICAgICAgICBfYXR0cmlidXRlRWRpdGlu
Z0NhbmNlbGxlZC4KICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL3V0aWxpdGllcy5qczoKLS0tCiBX
ZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDI0ICsrKysrKysrKysr
KysrKwogV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBhbmVsLmpzIHwgICA0OSArKysr
KysrKysrKysrKysrKysrKysrKysrKystLS0KIFdlYkNvcmUvcGFnZS9pbnNwZWN0b3IvdXRpbGl0
aWVzLmpzICAgICB8ICAgIDQgKy0KIDMgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwg
NyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCmluZGV4IGNhNWY1MDMuLmRmZDQ3YjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hh
bmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjkgQEAKIDIwMDgtMDMt
MTAgIEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgogCisgICAgICAgIEZpeCBCdWcgMTcy
MjQ6IERPTSBub2Rlcy9hdHRyaWJ1dGVzIHNob3VsZCBiZSBlZGl0YWJsZQorCisgICAgICAgIDxo
dHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzIyND4KKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzU3MzI4MjU+CisKKyAgICAgICAgVGhpcyBwYXRjaCBtYWtlcyB0ZXh0IG5v
ZGVzIGVkaXRhYmxlIHZpYSBkb3VibGUtY2xpY2suCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBhbmVsLmpz
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5n
KToKKyAgICAgICAgICAtIE1vdmVkIG1vc3Qgb2YgdGhpcyBjb2RlIHRvIF9zdGFydEVkaXRpbmdB
dHRyaWJ1dGUKKyAgICAgICAgICAtIENhbGxzIF9zdGFydEVkaXRpbmdUZXh0Tm9kZSBvciBfc3Rh
cnRFZGl0aW5nQXR0cmlidXRlIGFzCisgICAgICAgICAgICBhcHByb3ByaWF0ZQorICAgICAgICAo
V2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5nQXR0cmlidXRlKTog
QWRkZWQuIENvZGUKKyAgICAgICAgY2FtZSBmcm9tIF9zdGFydEVkaXRpbmcuCisgICAgICAgIChX
ZWJJbnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50Ll9zdGFydEVkaXRpbmdUZXh0Tm9kZSk6IEFk
ZGVkLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fdGV4dE5vZGVF
ZGl0aW5nQ29tbWl0dGVkKTogQWRkZWQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NTm9kZVRy
ZWVFbGVtZW50Ll9lZGl0aW5nQ2FuY2VsbGVkKTogUmVuYW1lZCBmcm9tCisgICAgICAgIF9hdHRy
aWJ1dGVFZGl0aW5nQ2FuY2VsbGVkLgorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL3V0aWxpdGll
cy5qczoKKworMjAwOC0wMy0xMCAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisKICAg
ICAgICAgUGFydCBvZiBCdWcgMTcyMjQ6IERPTSBub2Rlcy9hdHRyaWJ1dGVzIHNob3VsZCBiZSBl
ZGl0YWJsZQogCiAgICAgICAgIDxodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNzIyND4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvRG9jdW1lbnRQYW5l
bC5qcyBiL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvRG9jdW1lbnRQYW5lbC5qcwppbmRleCAwNDIx
NWZkLi5mNWEyOTI0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0RvY3VtZW50
UGFuZWwuanMKKysrIGIvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBhbmVsLmpzCkBA
IC04NDAsMTMgKzg0MCwyMiBAQCBXZWJJbnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50LnByb3Rv
dHlwZSA9IHsKIAogICAgIF9zdGFydEVkaXRpbmc6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKLSAg
ICAgICAgaWYgKHRoaXMucmVwcmVzZW50ZWRPYmplY3Qubm9kZVR5cGUgIT0gTm9kZS5FTEVNRU5U
X05PREUpCisgICAgICAgIGlmICh0aGlzLnJlcHJlc2VudGVkT2JqZWN0Lm5vZGVUeXBlICE9IE5v
ZGUuRUxFTUVOVF9OT0RFICYmIHRoaXMucmVwcmVzZW50ZWRPYmplY3Qubm9kZVR5cGUgIT0gTm9k
ZS5URVhUX05PREUpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICAgICAgdmFyIHRl
eHROb2RlID0gZXZlbnQudGFyZ2V0LmZpcnN0UGFyZW50T3JTZWxmV2l0aENsYXNzKCJ3ZWJraXQt
aHRtbC10ZXh0LW5vZGUiKTsKKyAgICAgICAgaWYgKHRleHROb2RlKQorICAgICAgICAgICAgcmV0
dXJuIHRoaXMuX3N0YXJ0RWRpdGluZ1RleHROb2RlKHRleHROb2RlKTsKKwogICAgICAgICB2YXIg
YXR0cmlidXRlID0gZXZlbnQudGFyZ2V0LmZpcnN0UGFyZW50T3JTZWxmV2l0aENsYXNzKCJ3ZWJr
aXQtaHRtbC1hdHRyaWJ1dGUiKTsKLSAgICAgICAgaWYgKCFhdHRyaWJ1dGUpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgICAgIGlmIChhdHRyaWJ1dGUpCisgICAgICAgICAgICByZXR1
cm4gdGhpcy5fc3RhcnRFZGl0aW5nQXR0cmlidXRlKGF0dHJpYnV0ZSk7CisKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIH0sCiAKKyAgICBfc3RhcnRFZGl0aW5nQXR0cmlidXRlOiBmdW5jdGlv
bihhdHRyaWJ1dGUpCisgICAgewogICAgICAgICBpZiAoV2ViSW5zcGVjdG9yLmlzQmVpbmdFZGl0
ZWQoYXR0cmlidXRlKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogCkBAIC04NzUsNyArODg0
LDcgQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAKICAg
ICAgICAgdGhpcy5fZWRpdGluZyA9IHRydWU7CiAKLSAgICAgICAgV2ViSW5zcGVjdG9yLnN0YXJ0
RWRpdGluZyhhdHRyaWJ1dGUsIHRoaXMuX2F0dHJpYnV0ZUVkaXRpbmdDb21taXR0ZWQuYmluZCh0
aGlzKSwgdGhpcy5fYXR0cmlidXRlRWRpdGluZ0NhbmNlbGxlZC5iaW5kKHRoaXMpLCBhdHRyaWJ1
dGVOYW1lKTsKKyAgICAgICAgV2ViSW5zcGVjdG9yLnN0YXJ0RWRpdGluZyhhdHRyaWJ1dGUsIHRo
aXMuX2F0dHJpYnV0ZUVkaXRpbmdDb21taXR0ZWQuYmluZCh0aGlzKSwgdGhpcy5fZWRpdGluZ0Nh
bmNlbGxlZC5iaW5kKHRoaXMpLCBhdHRyaWJ1dGVOYW1lKTsKICAgICAgICAgaWYgKGV2ZW50LnRh
cmdldC5oYXNTdHlsZUNsYXNzKCJ3ZWJraXQtaHRtbC1hdHRyaWJ1dGUtdmFsdWUiKSkgewogICAg
ICAgICAgICAgLy8gU2VsZWN0IGp1c3QgaW5zaWRlIHRoZSBxdW90ZXMuCiAgICAgICAgICAgICB2
YXIgdGV4dENoaWxkID0gZXZlbnQudGFyZ2V0LmZpcnN0Q2hpbGQ7CkBAIC04ODYsNiArODk1LDE5
IEBAIFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCisgICAgX3N0YXJ0RWRpdGluZ1RleHROb2RlOiBmdW5j
dGlvbih0ZXh0Tm9kZSkKKyAgICB7CisgICAgICAgIGlmIChXZWJJbnNwZWN0b3IuaXNCZWluZ0Vk
aXRlZCh0ZXh0Tm9kZSkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICB0aGlz
Ll9lZGl0aW5nID0gdHJ1ZTsKKworICAgICAgICBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5nKHRl
eHROb2RlLCB0aGlzLl90ZXh0Tm9kZUVkaXRpbmdDb21taXR0ZWQuYmluZCh0aGlzKSwgdGhpcy5f
ZWRpdGluZ0NhbmNlbGxlZC5iaW5kKHRoaXMpKTsKKyAgICAgICAgd2luZG93LmdldFNlbGVjdGlv
bigpLnNldEJhc2VBbmRFeHRlbnQodGV4dE5vZGUsIDAsIHRleHROb2RlLCAxKTsKKworICAgICAg
ICByZXR1cm4gdHJ1ZTsKKyAgICB9LAorCiAgICAgX2F0dHJpYnV0ZUVkaXRpbmdDb21taXR0ZWQ6
IGZ1bmN0aW9uKGVsZW1lbnQsIG5ld1RleHQsIG9sZFRleHQsIGF0dHJpYnV0ZU5hbWUpCiAgICAg
ewogICAgICAgICBkZWxldGUgdGhpcy5fZWRpdGluZzsKQEAgLTkxMSw3ICs5MzMsMjQgQEAgV2Vi
SW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMu
X3VwZGF0ZVRpdGxlKCk7CiAgICAgfSwKIAotICAgIF9hdHRyaWJ1dGVFZGl0aW5nQ2FuY2VsbGVk
OiBmdW5jdGlvbihlbGVtZW50LCBjb250ZXh0KQorICAgIF90ZXh0Tm9kZUVkaXRpbmdDb21taXR0
ZWQ6IGZ1bmN0aW9uKGVsZW1lbnQsIG5ld1RleHQpCisgICAgeworICAgICAgICBkZWxldGUgdGhp
cy5fZWRpdGluZzsKKworICAgICAgICB2YXIgdGV4dE5vZGU7CisgICAgICAgIGlmICh0aGlzLnJl
cHJlc2VudGVkT2JqZWN0Lm5vZGVUeXBlID09IE5vZGUuRUxFTUVOVF9OT0RFKSB7CisgICAgICAg
ICAgICAvLyBXZSBvbmx5IHNob3cgdGV4dCBub2RlcyBpbmxpbmUgaW4gZWxlbWVudHMgaWYgdGhl
IGVsZW1lbnQgb25seQorICAgICAgICAgICAgLy8gaGFzIGEgc2luZ2xlIGNoaWxkLCBhbmQgdGhh
dCBjaGlsZCBpcyBhIHRleHQgbm9kZS4KKyAgICAgICAgICAgIHRleHROb2RlID0gdGhpcy5yZXBy
ZXNlbnRlZE9iamVjdC5maXJzdENoaWxkOworICAgICAgICB9IGVsc2UgaWYgKHRoaXMucmVwcmVz
ZW50ZWRPYmplY3Qubm9kZVR5cGUgPT0gTm9kZS5URVhUX05PREUpCisgICAgICAgICAgICB0ZXh0
Tm9kZSA9IHRoaXMucmVwcmVzZW50ZWRPYmplY3Q7CisKKyAgICAgICAgdGV4dE5vZGUubm9kZVZh
bHVlID0gbmV3VGV4dDsKKyAgICAgICAgdGhpcy5fdXBkYXRlVGl0bGUoKTsKKyAgICB9LAorCisK
KyAgICBfZWRpdGluZ0NhbmNlbGxlZDogZnVuY3Rpb24oZWxlbWVudCwgY29udGV4dCkKICAgICB7
CiAgICAgICAgIGRlbGV0ZSB0aGlzLl9lZGl0aW5nOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bh
Z2UvaW5zcGVjdG9yL3V0aWxpdGllcy5qcyBiL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvdXRpbGl0
aWVzLmpzCmluZGV4IGU4YzVkYmMuLmM2NDdlNGQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9p
bnNwZWN0b3IvdXRpbGl0aWVzLmpzCisrKyBiL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvdXRpbGl0
aWVzLmpzCkBAIC02MjIsNyArNjIyLDcgQEAgZnVuY3Rpb24gbm9kZVRpdGxlSW5mbyhoYXNDaGls
ZHJlbiwgbGlua2lmeSkKICAgICAgICAgICAgIHZhciBzaG93SW5saW5lVGV4dCA9IHRleHRDaGls
ZCAmJiB0ZXh0Q2hpbGQudGV4dENvbnRlbnQubGVuZ3RoIDwgUHJlZmVyZW5jZXMubWF4SW5saW5l
VGV4dENoaWxkTGVuZ3RoOwogCiAgICAgICAgICAgICBpZiAoc2hvd0lubGluZVRleHQpIHsKLSAg
ICAgICAgICAgICAgICBpbmZvLnRpdGxlICs9IHRleHRDaGlsZC5ub2RlVmFsdWUuZXNjYXBlSFRN
TCgpICsgIiYjODIwMzs8c3BhbiBjbGFzcz1cIndlYmtpdC1odG1sLXRhZ1wiPiZsdDsvIiArIHRo
aXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKS5lc2NhcGVIVE1MKCkgKyAiJmd0Ozwvc3Bhbj4iOwor
ICAgICAgICAgICAgICAgIGluZm8udGl0bGUgKz0gIjxzcGFuIGNsYXNzPVwid2Via2l0LWh0bWwt
dGV4dC1ub2RlXCI+IiArIHRleHRDaGlsZC5ub2RlVmFsdWUuZXNjYXBlSFRNTCgpICsgIjwvc3Bh
bj4mIzgyMDM7PHNwYW4gY2xhc3M9XCJ3ZWJraXQtaHRtbC10YWdcIj4mbHQ7LyIgKyB0aGlzLm5v
ZGVOYW1lLnRvTG93ZXJDYXNlKCkuZXNjYXBlSFRNTCgpICsgIiZndDs8L3NwYW4+IjsKICAgICAg
ICAgICAgICAgICBpbmZvLmhhc0NoaWxkcmVuID0gZmFsc2U7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBicmVhazsKQEAgLTYzMSw3ICs2MzEsNyBAQCBmdW5jdGlvbiBub2RlVGl0bGVJbmZv
KGhhc0NoaWxkcmVuLCBsaW5raWZ5KQogICAgICAgICAgICAgaWYgKGlzTm9kZVdoaXRlc3BhY2Uu
Y2FsbCh0aGlzKSkKICAgICAgICAgICAgICAgICBpbmZvLnRpdGxlID0gIih3aGl0ZXNwYWNlKSI7
CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgaW5mby50aXRsZSA9ICJcIiIgKyB0
aGlzLm5vZGVWYWx1ZS5lc2NhcGVIVE1MKCkgKyAiXCIiOworICAgICAgICAgICAgICAgIGluZm8u
dGl0bGUgPSAiXCI8c3BhbiBjbGFzcz1cIndlYmtpdC1odG1sLXRleHQtbm9kZVwiPiIgKyB0aGlz
Lm5vZGVWYWx1ZS5lc2NhcGVIVE1MKCkgKyAiPC9zcGFuPlwiIjsKICAgICAgICAgICAgIGJyZWFr
CiAKICAgICAgICAgY2FzZSBOb2RlLkNPTU1FTlRfTk9ERToKLS0gCjEuNS40LjMKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19689</attachid>
            <date>2008-03-11 17:15:41 -0700</date>
            <delta_ts>2008-03-12 16:01:25 -0700</delta_ts>
            <desc>Change to single-click-to-edit</desc>
            <filename>0001-Part-of-Bug-17224-DOM-nodes-attributes-shou.patch</filename>
            <type>text/plain</type>
            <size>10918</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSAxNjQ1MjY2YzRhMWFjMDBhYzUyOGYyNTc5MGRmOTc2MGM4OTc1YjVmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBU
dWUsIDExIE1hciAyMDA4IDIwOjE0OjExIC0wNDAwClN1YmplY3Q6IFtQRlJdICAgICAgICAgUGFy
dCBvZiBCdWcgMTcyMjQ6IERPTSBub2Rlcy9hdHRyaWJ1dGVzIHNob3VsZCBiZSBlZGl0YWJsZQoK
ICAgICAgICA8aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcyMjQ+CiAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU3MzI4MjU+CgogICAgICAgIFdlIG5vdyBzdGFydCBlZGl0
aW5nIGlmIHRoZSB1c2VyIHNpbmdsZS1jbGlja3Mgb24gYW4gYXR0cmlidXRlLAogICAgICAgIGF0
dHJpYnV0ZSB2YWx1ZSwgb3IgdGV4dCBub2RlIHdoaWxlIHRoZSBwYXJlbnQgZWxlbWVudCBpcyBz
ZWxlY3RlZC4KICAgICAgICBQcmV2aW91c2x5LCB3ZSBzdGFydGVkIGVkaXRpbmcgb24gZG91Ymxl
LWNsaWNrIHJlZ2FyZGxlc3Mgb2YgdGhlCiAgICAgICAgc2VsZWN0aW9uIHN0YXRlIG9mIHRoZSBl
bGVtZW50LgoKICAgICAgICBVUkxzIGluIHRoZSBET00gdHJlZSBhcmUgbm93IGZvbGxvd2VkIG9u
IEFsdC9PcHRpb24tY2xpY2ssIHJhdGhlciB0aGFuCiAgICAgICAgb24ganVzdCBjbGljay4KCiAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgICogRW5nbGlzaC5scHJv
ai9JbnNwZWN0b3JMb2NhbGl6ZWRTdHJpbmdzLmpzOiBBZGRlZCBmb3VyIG5ldyBsb2NhbGl6ZWQK
ICAgICAgICBzdHJpbmdzLgogICAgICAgICogcGFnZS9pbnNwZWN0b3IvRG9jdW1lbnRQYW5lbC5q
czoKICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5vbmF0dGFjaCk6IENh
bGwgbmV3CiAgICAgICAgX21ha2VVUkxTQWN0aXZhdGVPbk1vZGlmaWVkQ2xpY2suCiAgICAgICAg
KFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQuX21ha2VVUkxzQWN0aXZhdGVPbk1vZGlm
aWVkQ2xpY2spOgogICAgICAgIEFkZGVkLiBDaGFuZ2VzIHRoZSB0b29sdGlwIG9mIGVhY2ggbGlu
ayBpbiB0aGlzIGVsZW1lbnQgdG8gaW5kaWNhdGUKICAgICAgICB0aGF0IEFsdC9PcHRpb24tY2xp
Y2sgd2lsbCBmb2xsb3cgdGhlIFVSTCwgYW5kIHNldHMgdGhlCiAgICAgICAgZm9sbG93T25BbHRD
bGljayBwcm9wZXJ0eSBvbiBlYWNoIGxpbmsuCiAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2Rl
VHJlZUVsZW1lbnQub25zZWxlY3QpOiBNYXJrIHRoYXQgd2UncmUgYmVpbmcKICAgICAgICBzZWxl
Y3RlZC4KICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5vbm1vdXNlZG93
bik6IElmIHdlJ3JlIG5vdCBjdXJyZW50bHkKICAgICAgICBiZWluZyBzZWxlY3RlZCwgc3RhcnQg
ZWRpdGluZy4KICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5vbmRibGNs
aWNrKTogV2Ugbm8gbG9uZ2VyIHN0YXJ0CiAgICAgICAgZWRpdGluZyBoZXJlLiBXZSBibG9jayBy
ZS1yb290aW5nIG9mIHRoZSB0cmVlIGlmIHdlJ3JlIGN1cnJlbnRseQogICAgICAgIGVkaXRpbmcu
CiAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQuX3N0YXJ0RWRpdGluZyk6
CiAgICAgICAgICAtIERvbid0IGRvIGFueXRoaW5nIGlmIHdlJ3JlIG5vdCBmb2N1c2VkCiAgICAg
ICAgICAtIFBhc3MgdGhlIGV2ZW50IGRvd24gdG8gX3N0YXJ0RWRpdGluZ0F0dHJpYnV0ZS4KICAg
ICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5nQXR0cmli
dXRlKTogRG9uJ3QgZG8KICAgICAgICBhbnl0aGluZyBpZiB0aGUgZXZlbnQgdGFyZ2V0IGlzIGEg
VVJMIGFuZCB0aGUgQWx0L09wdGlvbiBrZXkgaXMKICAgICAgICBwcmVzc2VkIC0tIGluIHRoaXMg
Y2FzZSB3ZSB3YW50IHRvIGZvbGxvdyB0aGUgbGluay4KICAgICAgICAoV2ViSW5zcGVjdG9yLkRP
TU5vZGVUcmVlRWxlbWVudC5fdXBkYXRlVGl0bGUpOiBDYWxsCiAgICAgICAgX21ha2VVUkxzQWN0
aXZhdGVPbkNsaWNrIGFnYWluIHNpbmNlIHRoZSBhbmNob3IgZWxlbWVudHMgaGF2ZSBhbGwgYmVl
bgogICAgICAgIHJlY3JlYXRlZC4KICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5q
czoKICAgICAgICAoV2ViSW5zcGVjdG9yLmRvY3VtZW50Q2xpY2spOiBJZiB0aGUgYW5jaG9yIGFz
IGEgZm9sbG93T25BbHRDbGljawogICAgICAgIHByb3BlcnR5IGFuZCB0aGUgQWx0L09wdGlvbiBr
ZXkgaXMgbm90IHByZXNzZWQsIGRvIG5vdGhpbmcuCi0tLQogV2ViQ29yZS9DaGFuZ2VMb2cgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ2ICsrKysrKysrKysrKysrKysrCiBX
ZWJDb3JlL0VuZ2xpc2gubHByb2ovSW5zcGVjdG9yTG9jYWxpemVkU3RyaW5ncy5qcyB8ICBCaW4g
NDM5MiAtPiA0ODU2IGJ5dGVzCiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwu
anMgICAgICAgICAgICB8ICAgNTMgKysrKysrKysrKysrKysrKysrLQogV2ViQ29yZS9wYWdlL2lu
c3BlY3Rvci9pbnNwZWN0b3IuanMgICAgICAgICAgICAgICAgfCAgIDEwICsrKy0KIDQgZmlsZXMg
Y2hhbmdlZCwgMTA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxODhmYmExLi5mOWY5
ZDA3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxv
ZwpAQCAtMSw1ICsxLDUxIEBACiAyMDA4LTAzLTExICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxl
LmNvbT4KIAorICAgICAgICBQYXJ0IG9mIEJ1ZyAxNzIyNDogRE9NIG5vZGVzL2F0dHJpYnV0ZXMg
c2hvdWxkIGJlIGVkaXRhYmxlCisKKyAgICAgICAgPGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MjI0PgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTczMjgyNT4KKwor
ICAgICAgICBXZSBub3cgc3RhcnQgZWRpdGluZyBpZiB0aGUgdXNlciBzaW5nbGUtY2xpY2tzIG9u
IGFuIGF0dHJpYnV0ZSwKKyAgICAgICAgYXR0cmlidXRlIHZhbHVlLCBvciB0ZXh0IG5vZGUgd2hp
bGUgdGhlIHBhcmVudCBlbGVtZW50IGlzIHNlbGVjdGVkLgorICAgICAgICBQcmV2aW91c2x5LCB3
ZSBzdGFydGVkIGVkaXRpbmcgb24gZG91YmxlLWNsaWNrIHJlZ2FyZGxlc3Mgb2YgdGhlCisgICAg
ICAgIHNlbGVjdGlvbiBzdGF0ZSBvZiB0aGUgZWxlbWVudC4KKworICAgICAgICBVUkxzIGluIHRo
ZSBET00gdHJlZSBhcmUgbm93IGZvbGxvd2VkIG9uIEFsdC9PcHRpb24tY2xpY2ssIHJhdGhlciB0
aGFuCisgICAgICAgIG9uIGp1c3QgY2xpY2suCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBFbmdsaXNoLmxwcm9qL0luc3BlY3RvckxvY2FsaXplZFN0
cmluZ3MuanM6IEFkZGVkIGZvdXIgbmV3IGxvY2FsaXplZAorICAgICAgICBzdHJpbmdzLgorICAg
ICAgICAqIHBhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwuanM6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50Lm9uYXR0YWNoKTogQ2FsbCBuZXcKKyAgICAgICAgX21h
a2VVUkxTQWN0aXZhdGVPbk1vZGlmaWVkQ2xpY2suCisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9N
Tm9kZVRyZWVFbGVtZW50Ll9tYWtlVVJMc0FjdGl2YXRlT25Nb2RpZmllZENsaWNrKToKKyAgICAg
ICAgQWRkZWQuIENoYW5nZXMgdGhlIHRvb2x0aXAgb2YgZWFjaCBsaW5rIGluIHRoaXMgZWxlbWVu
dCB0byBpbmRpY2F0ZQorICAgICAgICB0aGF0IEFsdC9PcHRpb24tY2xpY2sgd2lsbCBmb2xsb3cg
dGhlIFVSTCwgYW5kIHNldHMgdGhlCisgICAgICAgIGZvbGxvd09uQWx0Q2xpY2sgcHJvcGVydHkg
b24gZWFjaCBsaW5rLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5v
bnNlbGVjdCk6IE1hcmsgdGhhdCB3ZSdyZSBiZWluZworICAgICAgICBzZWxlY3RlZC4KKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQub25tb3VzZWRvd24pOiBJZiB3ZSdy
ZSBub3QgY3VycmVudGx5CisgICAgICAgIGJlaW5nIHNlbGVjdGVkLCBzdGFydCBlZGl0aW5nLgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5vbmRibGNsaWNrKTogV2Ug
bm8gbG9uZ2VyIHN0YXJ0CisgICAgICAgIGVkaXRpbmcgaGVyZS4gV2UgYmxvY2sgcmUtcm9vdGlu
ZyBvZiB0aGUgdHJlZSBpZiB3ZSdyZSBjdXJyZW50bHkKKyAgICAgICAgZWRpdGluZy4KKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQuX3N0YXJ0RWRpdGluZyk6CisgICAg
ICAgICAgLSBEb24ndCBkbyBhbnl0aGluZyBpZiB3ZSdyZSBub3QgZm9jdXNlZAorICAgICAgICAg
IC0gUGFzcyB0aGUgZXZlbnQgZG93biB0byBfc3RhcnRFZGl0aW5nQXR0cmlidXRlLgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fc3RhcnRFZGl0aW5nQXR0cmlidXRl
KTogRG9uJ3QgZG8KKyAgICAgICAgYW55dGhpbmcgaWYgdGhlIGV2ZW50IHRhcmdldCBpcyBhIFVS
TCBhbmQgdGhlIEFsdC9PcHRpb24ga2V5IGlzCisgICAgICAgIHByZXNzZWQgLS0gaW4gdGhpcyBj
YXNlIHdlIHdhbnQgdG8gZm9sbG93IHRoZSBsaW5rLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRP
TU5vZGVUcmVlRWxlbWVudC5fdXBkYXRlVGl0bGUpOiBDYWxsCisgICAgICAgIF9tYWtlVVJMc0Fj
dGl2YXRlT25DbGljayBhZ2FpbiBzaW5jZSB0aGUgYW5jaG9yIGVsZW1lbnRzIGhhdmUgYWxsIGJl
ZW4KKyAgICAgICAgcmVjcmVhdGVkLgorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL2luc3BlY3Rv
ci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5kb2N1bWVudENsaWNrKTogSWYgdGhlIGFuY2hv
ciBhcyBhIGZvbGxvd09uQWx0Q2xpY2sKKyAgICAgICAgcHJvcGVydHkgYW5kIHRoZSBBbHQvT3B0
aW9uIGtleSBpcyBub3QgcHJlc3NlZCwgZG8gbm90aGluZy4KKworMjAwOC0wMy0xMSAgQWRhbSBS
b2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisKICAgICAgICAgTWFrZSBhdHRyaWJ1dGUgcXVvdGlu
ZyBpbiBET00gdmlldyBtb3JlIGNvbnNpc3RlbnQgd2l0aCBzb3VyY2UgdmlldwogCiAgICAgICAg
IFR3byBjaGFuZ2VzIHdoaWNoIG1ha2UgdGhlIERPTSB2aWV3IG1vcmUgY29uc2lzdGVudCB3aXRo
IHNvdXJjZSB2aWV3OgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL0luc3BlY3Rv
ckxvY2FsaXplZFN0cmluZ3MuanMgYi9XZWJDb3JlL0VuZ2xpc2gubHByb2ovSW5zcGVjdG9yTG9j
YWxpemVkU3RyaW5ncy5qcwppbmRleCBhNjc4MzgyNjJlYjE4ZDBjNTVkMDY4MGM0Mzc4ZjEzYjRl
ZGFmODEyLi40MjhiYzMwN2ZkZmUwMGRiMTVlMzI3MmEwMDBkYjcwYTk5NzI2ZjhiIDEwMDY0NApH
SVQgYmluYXJ5IHBhdGNoCmRlbHRhIDQyMwp6Y21aM1heaDAkKzliPEczTGtXV31MbyExU0xuZV5T
Vz41Z35eTVBhO2tZNWJNQnx4PytrZnEwPCM5IyR2RD18MCUKeillQHk9YXdEZzNCeVFFazM+aVMx
JTFKT0VNRitfQSV7N2RCU1RnKz8zVjtzRTFSOW57cUV8QE4zOT5Ta2tSQjlBClFBX1dec2BvTnlF
VkVlIVkwRUhffnk4citICgpkZWx0YSAxNwpaY21leU54PFk5fjlwbU9HcmQ9JFhJWEZJVzBSVGRH
MkI4MXwKCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwu
anMgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwuanMKaW5kZXggYWJhM2Y1
MS4uYTU4OThmNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBh
bmVsLmpzCisrKyBiL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvRG9jdW1lbnRQYW5lbC5qcwpAQCAt
NzY5LDYgKzc2OSwzNyBAQCBXZWJJbnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50LnByb3RvdHlw
ZSA9IHsKICAgICBvbmF0dGFjaDogZnVuY3Rpb24oKQogICAgIHsKICAgICAgICAgdGhpcy5saXN0
SXRlbUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIiwgdGhpcy5vbm1vdXNlZG93
bi5iaW5kKHRoaXMpLCBmYWxzZSk7CisKKyAgICAgICAgdGhpcy5fbWFrZVVSTHNBY3RpdmF0ZU9u
TW9kaWZpZWRDbGljaygpOworICAgIH0sCisKKyAgICBfbWFrZVVSTHNBY3RpdmF0ZU9uTW9kaWZp
ZWRDbGljazogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdmFyIGxpbmtzID0gdGhpcy5saXN0
SXRlbUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgibGkgPiAud2Via2l0LWh0bWwtdGFnID4gLndl
YmtpdC1odG1sLWF0dHJpYnV0ZSA+IC53ZWJraXQtaHRtbC1leHRlcm5hbC1saW5rLCBsaSA+IC53
ZWJraXQtaHRtbC10YWcgPiAud2Via2l0LWh0bWwtYXR0cmlidXRlID4gLndlYmtpdC1odG1sLXJl
c291cmNlLWxpbmsiKTsKKyAgICAgICAgaWYgKCFsaW5rcykKKyAgICAgICAgICAgIHJldHVybjsK
KworICAgICAgICB2YXIgaXNNYWMgPSBJbnNwZWN0b3JDb250cm9sbGVyLnBsYXRmb3JtKCkuaW5k
ZXhPZigibWFjIikgPT0gMDsKKworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpbmtzLmxl
bmd0aDsgKytpKSB7CisgICAgICAgICAgICB2YXIgbGluayA9IGxpbmtzW2ldOworICAgICAgICAg
ICAgdmFyIGlzRXh0ZXJuYWwgPSBsaW5rLmhhc1N0eWxlQ2xhc3MoIndlYmtpdC1odG1sLWV4dGVy
bmFsLWxpbmsiKTsKKyAgICAgICAgICAgIHZhciBocmVmID0gbGluay5nZXRBdHRyaWJ1dGUoImhy
ZWYiKTsKKyAgICAgICAgICAgIHZhciB0aXRsZTsKKyAgICAgICAgICAgIGlmIChpc01hYykgewor
ICAgICAgICAgICAgICAgIGlmIChpc0V4dGVybmFsKQorICAgICAgICAgICAgICAgICAgICB0aXRs
ZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiT3B0aW9uLWNsaWNrIHRvIHZpc2l0ICVzLiIsIGhy
ZWYpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSBX
ZWJJbnNwZWN0b3IuVUlTdHJpbmcoIk9wdGlvbi1jbGljayB0byBzaG93ICVzLiIsIGhyZWYpOwor
ICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBpZiAoaXNFeHRlcm5hbCkKKyAg
ICAgICAgICAgICAgICAgICAgdGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkFsdC1jbGlj
ayB0byB2aXNpdCAlcy4iLCBocmVmKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgICAgIHRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJBbHQtY2xpY2sgdG8gc2hv
dyAlcy4iLCBocmVmKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGxpbmsuc2V0QXR0cmli
dXRlKCJ0aXRsZSIsIHRpdGxlKTsKKyAgICAgICAgICAgIGxpbmsuZm9sbG93T25BbHRDbGljayA9
IHRydWU7CisgICAgICAgIH0KICAgICB9LAogCiAgICAgb25wb3B1bGF0ZTogZnVuY3Rpb24oKQpA
QCAtODExLDYgKzg0Miw3IEBAIFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90
eXBlID0gewogCiAgICAgb25zZWxlY3Q6IGZ1bmN0aW9uKCkKICAgICB7CisgICAgICAgIHRoaXMu
X3NlbGVjdGVkQnlDdXJyZW50TW91c2VEb3duID0gdHJ1ZTsKICAgICAgICAgdGhpcy50cmVlT3V0
bGluZS5wYW5lbC5mb2N1c2VkRE9NTm9kZSA9IHRoaXMucmVwcmVzZW50ZWRPYmplY3Q7CiAgICAg
ICAgIHRoaXMudXBkYXRlU2VsZWN0aW9uKCk7CiAgICAgfSwKQEAgLTgyMCw2ICs4NTIsMTMgQEAg
V2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgIGlm
ICh0aGlzLl9lZGl0aW5nKQogICAgICAgICAgICAgcmV0dXJuOwogCisgICAgICAgIGlmICh0aGlz
Ll9zZWxlY3RlZEJ5Q3VycmVudE1vdXNlRG93bikKKyAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9z
ZWxlY3RlZEJ5Q3VycmVudE1vdXNlRG93bjsKKyAgICAgICAgZWxzZSBpZiAodGhpcy5fc3RhcnRF
ZGl0aW5nKGV2ZW50KSkgeworICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKKyAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCiAgICAgICAgIC8vIFByZXZlbnQgc2VsZWN0
aW5nIHRoZSBuZWFyZXN0IHdvcmQgb24gZG91YmxlIGNsaWNrLgogICAgICAgICBpZiAoZXZlbnQu
ZGV0YWlsID49IDIpCiAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwpAQCAtODI3
LDcgKzg2Niw3IEBAIFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQucHJvdG90eXBlID0g
ewogCiAgICAgb25kYmxjbGljazogZnVuY3Rpb24odHJlZUVsZW1lbnQsIGV2ZW50KQogICAgIHsK
LSAgICAgICAgaWYgKHRoaXMuX3N0YXJ0RWRpdGluZyhldmVudCkpCisgICAgICAgIGlmICh0aGlz
Ll9lZGl0aW5nKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHZhciBwYW5lbCA9IHRo
aXMudHJlZU91dGxpbmUucGFuZWw7CkBAIC04NDAsNiArODc5LDkgQEAgV2ViSW5zcGVjdG9yLkRP
TU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAKICAgICBfc3RhcnRFZGl0aW5nOiBmdW5j
dGlvbihldmVudCkKICAgICB7CisgICAgICAgIGlmICh0aGlzLnRyZWVPdXRsaW5lLnBhbmVsLmZv
Y3VzZWRET01Ob2RlICE9IHRoaXMucmVwcmVzZW50ZWRPYmplY3QpCisgICAgICAgICAgICByZXR1
cm47CisKICAgICAgICAgaWYgKHRoaXMucmVwcmVzZW50ZWRPYmplY3Qubm9kZVR5cGUgIT0gTm9k
ZS5FTEVNRU5UX05PREUgJiYgdGhpcy5yZXByZXNlbnRlZE9iamVjdC5ub2RlVHlwZSAhPSBOb2Rl
LlRFWFRfTk9ERSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIApAQCAtODQ5LDEyICs4OTEs
MTIgQEAgV2ViSW5zcGVjdG9yLkRPTU5vZGVUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAKICAg
ICAgICAgdmFyIGF0dHJpYnV0ZSA9IGV2ZW50LnRhcmdldC5maXJzdFBhcmVudE9yU2VsZldpdGhD
bGFzcygid2Via2l0LWh0bWwtYXR0cmlidXRlIik7CiAgICAgICAgIGlmIChhdHRyaWJ1dGUpCi0g
ICAgICAgICAgICByZXR1cm4gdGhpcy5fc3RhcnRFZGl0aW5nQXR0cmlidXRlKGF0dHJpYnV0ZSk7
CisgICAgICAgICAgICByZXR1cm4gdGhpcy5fc3RhcnRFZGl0aW5nQXR0cmlidXRlKGF0dHJpYnV0
ZSwgZXZlbnQpOwogCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9LAogCi0gICAgX3N0YXJ0
RWRpdGluZ0F0dHJpYnV0ZTogZnVuY3Rpb24oYXR0cmlidXRlKQorICAgIF9zdGFydEVkaXRpbmdB
dHRyaWJ1dGU6IGZ1bmN0aW9uKGF0dHJpYnV0ZSwgZXZlbnQpCiAgICAgewogICAgICAgICBpZiAo
V2ViSW5zcGVjdG9yLmlzQmVpbmdFZGl0ZWQoYXR0cmlidXRlKSkKICAgICAgICAgICAgIHJldHVy
biB0cnVlOwpAQCAtODYzLDYgKzkwNSwxMCBAQCBXZWJJbnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVt
ZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgaWYgKCFhdHRyaWJ1dGVOYW1lRWxlbWVudCkKICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgICAgICB2YXIgaXNVUkwgPSBldmVudC50YXJn
ZXQuZmlyc3RQYXJlbnRPclNlbGZXaXRoQ2xhc3MoIndlYmtpdC1odG1sLWV4dGVybmFsLWxpbmsi
KSB8fCBldmVudC50YXJnZXQuZmlyc3RQYXJlbnRPclNlbGZXaXRoQ2xhc3MoIndlYmtpdC1odG1s
LXJlc291cmNlLWxpbmsiKTsKKyAgICAgICAgaWYgKGlzVVJMICYmIGV2ZW50LmFsdEtleSkKKyAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgICAgICB2YXIgYXR0cmlidXRlTmFtZSA9IGF0
dHJpYnV0ZU5hbWVFbGVtZW50LmlubmVyVGV4dDsKIAogICAgICAgICBmdW5jdGlvbiByZW1vdmVa
ZXJvV2lkdGhTcGFjZVJlY3Vyc2l2ZShub2RlKQpAQCAtOTU3LDYgKzEwMDMsNyBAQCBXZWJJbnNw
ZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy50aXRs
ZSA9IG5vZGVUaXRsZUluZm8uY2FsbCh0aGlzLnJlcHJlc2VudGVkT2JqZWN0LCB0aGlzLmhhc0No
aWxkcmVuLCBXZWJJbnNwZWN0b3IubGlua2lmeVVSTCkudGl0bGU7CiAgICAgICAgIGRlbGV0ZSB0
aGlzLnNlbGVjdGlvbkVsZW1lbnQ7CiAgICAgICAgIHRoaXMudXBkYXRlU2VsZWN0aW9uKCk7Cisg
ICAgICAgIHRoaXMuX21ha2VVUkxzQWN0aXZhdGVPbk1vZGlmaWVkQ2xpY2soKTsKICAgICB9LAog
fQogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5qcyBiL1dl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCmluZGV4IDExMGE2YzAuLjVkNzE4NjIg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCisrKyBiL1dl
YkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5zcGVjdG9yLmpzCkBAIC0zMjgsNyArMzI4LDE1IEBAIFdl
Ykluc3BlY3Rvci5jaGFuZ2VGb2N1cyA9IGZ1bmN0aW9uKGV2ZW50KQogV2ViSW5zcGVjdG9yLmRv
Y3VtZW50Q2xpY2sgPSBmdW5jdGlvbihldmVudCkKIHsKICAgICB2YXIgYW5jaG9yID0gZXZlbnQu
dGFyZ2V0LmZpcnN0UGFyZW50T3JTZWxmV2l0aE5vZGVOYW1lKCJhIik7Ci0gICAgaWYgKCFhbmNo
b3IgfHwgIWFuY2hvci5oYXNTdHlsZUNsYXNzKCJ3ZWJraXQtaHRtbC1yZXNvdXJjZS1saW5rIikp
CisgICAgaWYgKCFhbmNob3IpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChhbmNob3IuZm9s
bG93T25BbHRDbGljayAmJiAhZXZlbnQuYWx0S2V5KSB7CisgICAgICAgIGV2ZW50LnByZXZlbnRE
ZWZhdWx0KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIWFuY2hvci5oYXNT
dHlsZUNsYXNzKCJ3ZWJraXQtaHRtbC1yZXNvdXJjZS1saW5rIikpCiAgICAgICAgIHJldHVybjsK
IAogICAgIGlmIChXZWJJbnNwZWN0b3Iuc2hvd1Jlc291cmNlRm9yVVJMKGFuY2hvci5nZXRBdHRy
aWJ1dGUoImhyZWYiKSkpIHsKLS0gCjEuNS40LjMKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19690</attachid>
            <date>2008-03-11 17:16:10 -0700</date>
            <delta_ts>2008-03-12 16:01:57 -0700</delta_ts>
            <desc>Make URLs not be underlined while editing</desc>
            <filename>0002-Make-URLs-not-be-underlined-while-editing-th.patch</filename>
            <type>text/plain</type>
            <size>1500</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSAxNTI5ZjI0MDIwNGJmOWFjOWE3NTNmMTdhZjhiNjk4ODUwMGQ0YTFhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBU
dWUsIDExIE1hciAyMDA4IDIwOjE0OjQ3IC0wNDAwClN1YmplY3Q6IFtQRlJdICAgICAgICAgTWFr
ZSBVUkxzIG5vdCBiZSB1bmRlcmxpbmVkIHdoaWxlIGVkaXRpbmcgdGhlbSBpbiB0aGUgRE9NIHZp
ZXcKCiAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgICogcGFnZS9p
bnNwZWN0b3IvaW5zcGVjdG9yLmNzczoKLS0tCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAg
ICAgICAgICAgfCAgICA4ICsrKysrKysrCiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rv
ci5jc3MgfCAgICA0ICsrKysKIDIgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMCBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGY5ZjlkMDcuLjc0ZTNlNzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTMgQEAKIDIwMDgtMDMtMTEg
IEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgogCisgICAgICAgIE1ha2UgVVJMcyBub3Qg
YmUgdW5kZXJsaW5lZCB3aGlsZSBlZGl0aW5nIHRoZW0gaW4gdGhlIERPTSB2aWV3CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWdlL2luc3BlY3Rv
ci9pbnNwZWN0b3IuY3NzOgorCisyMDA4LTAzLTExICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxl
LmNvbT4KKwogICAgICAgICBQYXJ0IG9mIEJ1ZyAxNzIyNDogRE9NIG5vZGVzL2F0dHJpYnV0ZXMg
c2hvdWxkIGJlIGVkaXRhYmxlCiAKICAgICAgICAgPGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MjI0PgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9p
bnNwZWN0b3IuY3NzIGIvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9pbnNwZWN0b3IuY3NzCmluZGV4
IGYwYmUzYjkuLmVkNTYwZmMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvaW5z
cGVjdG9yLmNzcworKysgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL2luc3BlY3Rvci5jc3MKQEAg
LTEzMDksNiArMTMwOSwxMCBAQCBib2R5Om5vdCguaW5hY3RpdmUpIC5mb2N1c2VkIC5vdXRsaW5l
LWRpc2Nsb3N1cmUgbGkuc2VsZWN0ZWQgKiB7CiAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7
CiB9CiAKKy5lZGl0aW5nIC53ZWJraXQtaHRtbC1leHRlcm5hbC1saW5rLCAuZWRpdGluZyAud2Vi
a2l0LWh0bWwtcmVzb3VyY2UtbGluayB7CisgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOworfQor
CiAuc2VjdGlvbiAucHJvcGVydGllcyBsaS5lZGl0aW5nIHsKICAgICBtYXJnaW4tbGVmdDogOHB4
OwogfQotLSAKMS41LjQuMwoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19720</attachid>
            <date>2008-03-12 20:37:38 -0700</date>
            <delta_ts>2008-03-12 23:13:38 -0700</delta_ts>
            <desc>Update styles/metrics/breadcrumb after editing</desc>
            <filename>0001-Update-the-styles-metrics-panes-and-breadcru.patch</filename>
            <type>text/plain</type>
            <size>6935</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSBiYTJlMWUxNGYwOTQyOGZmODA3OTc3MTI4NmMxNjQ0ZTRiZTE1NDMwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBX
ZWQsIDEyIE1hciAyMDA4IDIyOjEzOjEwIC0wNDAwClN1YmplY3Q6IFtQRlJdICAgICAgICAgVXBk
YXRlIHRoZSBzdHlsZXMvbWV0cmljcyBwYW5lcyBhbmQgYnJlYWRjcnVtYiBhZnRlciBlZGl0aW5n
IERPTSBhdHRyaWJ1dGVzCgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAg
ICAgICAqIHBhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwuanM6CiAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Eb2N1bWVudFBhbmVsLnNldCBmb2N1c2VkRE9NTm9kZSk6IE1vdmVkIGNvZGUgdG8gdXBk
YXRlCiAgICAgICAgdGhlIHBhcnRzIG9mIHRoZSBEb2N1bWVudFBhbmVsIG90aGVyIHRoYW4gdGhl
IERPTSB0cmVlIGludG8gYSBuZXcKICAgICAgICBmdW5jdGlvbiwgX2ZvY3VzZWROb2RlQ2hhbmdl
ZC4KICAgICAgICAoV2ViSW5zcGVjdG9yLkRvY3VtZW50UGFuZWwuX2ZvY3VzZWROb2RlQ2hhbmdl
ZCk6IEFkZGVkLiBUaGUKICAgICAgICBmb3JjZVVwZGF0ZSBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdo
ZXRoZXIgdGhlIHVwZGF0ZSBzaG91bGQgb2NjdXIgZXZlbgogICAgICAgIGlmIHRoZSBmb2N1c2Vk
IG5vZGUgaGFzbid0IGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgdXBkYXRlLgogICAgICAgIChXZWJJ
bnNwZWN0b3IuRG9jdW1lbnRQYW5lbC51cGRhdGVCcmVhZGNydW1iKTogQWRkZWQgYSBmb3JjZVVw
ZGF0ZQogICAgICAgIHBhcmFtZXRlci4gSWYgZm9yY2VVcGRhdGUgaXMgdHJ1ZSwgd2UgYWx3YXlz
IHJlYnVpbGQgdGhlIGJyZWFkY3J1bWJzLgogICAgICAgIChXZWJJbnNwZWN0b3IuRG9jdW1lbnRQ
YW5lbC51cGRhdGVTdHlsZXMpOiBBZGRlZCBhIGZvcmNlVXBkYXRlCiAgICAgICAgcGFyYW1ldGVy
LiBJZiBmb3JjZVVwZGF0ZSBpcyB0cnVlLCB3ZSBhbHdheXMgcmVidWlsZCB0aGUgc3R5bGVzIHBh
bmUuCiAgICAgICAgKFdlYkluc3BlY3Rvci5ET01Ob2RlVHJlZUVsZW1lbnQuX2F0dHJpYnV0ZUVk
aXRpbmdDb21taXR0ZWQpOiBBZGRlZCBhCiAgICAgICAgY2FsbCB0byBEb2N1bWVudFBhbmVsLl9m
b2N1c2VkTm9kZUNoYW5nZWQuIFdlIGhhdmUgdG8gZm9yY2UgdGhlIHVwZGF0ZQogICAgICAgIGJl
Y2F1c2Ugd2UgaGF2ZW4ndCBjaGFuZ2VkIHRoZSBmb2N1c2VkIG5vZGUgKHRoZSBhdHRyaWJ1dGVz
IG9mIHRoZQogICAgICAgIG5vZGUgaGF2ZSBjaGFuZ2VkKS4KICAgICAgICAqIHBhZ2UvaW5zcGVj
dG9yL1N0eWxlc1NpZGViYXJQYW5lLmpzOgogICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVzU2lk
ZWJhclBhbmUudXBkYXRlKTogQWRkZWQgYSBmb3JjZVVwZGF0ZQogICAgICAgIHBhcmFtZXRlci4g
SWYgZm9yY2VVcGRhdGUgaXMgdHJ1ZSB3ZSBhbHdheXMgcmVidWlsZCB0aGUgc3R5bGVzLgotLS0K
IFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDI2ICsrKysr
KysrKysrKysrKysrKysrKysrCiBXZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwu
anMgICAgIHwgICAzMCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogV2ViQ29yZS9wYWdlL2lu
c3BlY3Rvci9TdHlsZXNTaWRlYmFyUGFuZS5qcyB8ICAgIDQgKy0KIDMgZmlsZXMgY2hhbmdlZCwg
NDYgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiZWE2NzFjLi44N2NhZDZhIDEwMDY0
NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1
ICsxLDMxIEBACiAyMDA4LTAzLTEyICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KIAor
ICAgICAgICBVcGRhdGUgdGhlIHN0eWxlcy9tZXRyaWNzIHBhbmVzIGFuZCBicmVhZGNydW1iIGFm
dGVyIGVkaXRpbmcgRE9NCisgICAgICAgIGF0dHJpYnV0ZXMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFu
ZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRG9jdW1lbnRQYW5lbC5zZXQgZm9jdXNlZERP
TU5vZGUpOiBNb3ZlZCBjb2RlIHRvIHVwZGF0ZQorICAgICAgICB0aGUgcGFydHMgb2YgdGhlIERv
Y3VtZW50UGFuZWwgb3RoZXIgdGhhbiB0aGUgRE9NIHRyZWUgaW50byBhIG5ldworICAgICAgICBm
dW5jdGlvbiwgX2ZvY3VzZWROb2RlQ2hhbmdlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Eb2N1
bWVudFBhbmVsLl9mb2N1c2VkTm9kZUNoYW5nZWQpOiBBZGRlZC4gVGhlCisgICAgICAgIGZvcmNl
VXBkYXRlIHBhcmFtZXRlciBzcGVjaWZpZXMgd2hldGhlciB0aGUgdXBkYXRlIHNob3VsZCBvY2N1
ciBldmVuCisgICAgICAgIGlmIHRoZSBmb2N1c2VkIG5vZGUgaGFzbid0IGNoYW5nZWQgc2luY2Ug
dGhlIGxhc3QgdXBkYXRlLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRvY3VtZW50UGFuZWwudXBk
YXRlQnJlYWRjcnVtYik6IEFkZGVkIGEgZm9yY2VVcGRhdGUKKyAgICAgICAgcGFyYW1ldGVyLiBJ
ZiBmb3JjZVVwZGF0ZSBpcyB0cnVlLCB3ZSBhbHdheXMgcmVidWlsZCB0aGUgYnJlYWRjcnVtYnMu
CisgICAgICAgIChXZWJJbnNwZWN0b3IuRG9jdW1lbnRQYW5lbC51cGRhdGVTdHlsZXMpOiBBZGRl
ZCBhIGZvcmNlVXBkYXRlCisgICAgICAgIHBhcmFtZXRlci4gSWYgZm9yY2VVcGRhdGUgaXMgdHJ1
ZSwgd2UgYWx3YXlzIHJlYnVpbGQgdGhlIHN0eWxlcyBwYW5lLgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkRPTU5vZGVUcmVlRWxlbWVudC5fYXR0cmlidXRlRWRpdGluZ0NvbW1pdHRlZCk6IEFkZGVk
IGEKKyAgICAgICAgY2FsbCB0byBEb2N1bWVudFBhbmVsLl9mb2N1c2VkTm9kZUNoYW5nZWQuIFdl
IGhhdmUgdG8gZm9yY2UgdGhlIHVwZGF0ZQorICAgICAgICBiZWNhdXNlIHdlIGhhdmVuJ3QgY2hh
bmdlZCB0aGUgZm9jdXNlZCBub2RlICh0aGUgYXR0cmlidXRlcyBvZiB0aGUKKyAgICAgICAgbm9k
ZSBoYXZlIGNoYW5nZWQpLgorICAgICAgICAqIHBhZ2UvaW5zcGVjdG9yL1N0eWxlc1NpZGViYXJQ
YW5lLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLnVwZGF0ZSk6
IEFkZGVkIGEgZm9yY2VVcGRhdGUKKyAgICAgICAgcGFyYW1ldGVyLiBJZiBmb3JjZVVwZGF0ZSBp
cyB0cnVlIHdlIGFsd2F5cyByZWJ1aWxkIHRoZSBzdHlsZXMuCisKKzIwMDgtMDMtMTIgIEFkYW0g
Um9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgorCiAgICAgICAgIE1ha2UgVVJMcyBub3QgYmUgdW5k
ZXJsaW5lZCB3aGlsZSBlZGl0aW5nIHRoZW0gaW4gdGhlIERPTSB2aWV3CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgVGltLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Eb2N1bWVu
dFBhbmVsLmpzIGIvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9Eb2N1bWVudFBhbmVsLmpzCmluZGV4
IGE1ODk4ZjUuLmE5NDBhYjYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvRG9j
dW1lbnRQYW5lbC5qcworKysgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL0RvY3VtZW50UGFuZWwu
anMKQEAgLTEzOSwxNCArMTM5LDcgQEAgV2ViSW5zcGVjdG9yLkRvY3VtZW50UGFuZWwucHJvdG90
eXBlID0gewogCiAgICAgICAgIHRoaXMuX2ZvY3VzZWRET01Ob2RlID0geDsKIAotICAgICAgICB0
aGlzLnVwZGF0ZUJyZWFkY3J1bWIoKTsKLQotICAgICAgICBmb3IgKHZhciBwYW5lIGluIHRoaXMu
dmlld3MuZG9tLnNpZGViYXJQYW5lcykKLSAgICAgICAgICAgIHRoaXMudmlld3MuZG9tLnNpZGVi
YXJQYW5lc1twYW5lXS5uZWVkc1VwZGF0ZSA9IHRydWU7Ci0KLSAgICAgICAgdGhpcy51cGRhdGVT
dHlsZXMoKTsKLSAgICAgICAgdGhpcy51cGRhdGVNZXRyaWNzKCk7Ci0gICAgICAgIHRoaXMudXBk
YXRlUHJvcGVydGllcygpOworICAgICAgICB0aGlzLl9mb2N1c2VkTm9kZUNoYW5nZWQoKTsKIAog
ICAgICAgICBJbnNwZWN0b3JDb250cm9sbGVyLmhpZ2hsaWdodERPTU5vZGUoeCk7CiAKQEAgLTE1
NSw2ICsxNDgsMTggQEAgV2ViSW5zcGVjdG9yLkRvY3VtZW50UGFuZWwucHJvdG90eXBlID0gewog
ICAgICAgICAgICAgbm9kZUl0ZW0uc2VsZWN0KCk7CiAgICAgfSwKIAorICAgIF9mb2N1c2VkTm9k
ZUNoYW5nZWQ6IGZ1bmN0aW9uKGZvcmNlVXBkYXRlKQorICAgIHsKKyAgICAgICAgdGhpcy51cGRh
dGVCcmVhZGNydW1iKGZvcmNlVXBkYXRlKTsKKworICAgICAgICBmb3IgKHZhciBwYW5lIGluIHRo
aXMudmlld3MuZG9tLnNpZGViYXJQYW5lcykKKyAgICAgICAgICAgIHRoaXMudmlld3MuZG9tLnNp
ZGViYXJQYW5lc1twYW5lXS5uZWVkc1VwZGF0ZSA9IHRydWU7CisKKyAgICAgICAgdGhpcy51cGRh
dGVTdHlsZXMoZm9yY2VVcGRhdGUpOworICAgICAgICB0aGlzLnVwZGF0ZU1ldHJpY3MoKTsKKyAg
ICAgICAgdGhpcy51cGRhdGVQcm9wZXJ0aWVzKCk7CisgICAgfSwKKwogICAgIHJldmVhbE5vZGU6
IGZ1bmN0aW9uKG5vZGUpCiAgICAgewogICAgICAgICB2YXIgbm9kZUl0ZW0gPSB0aGlzLnZpZXdz
LmRvbS50cmVlT3V0bGluZS5maW5kVHJlZUVsZW1lbnQobm9kZSwgZnVuY3Rpb24oYSwgYikgeyBy
ZXR1cm4gaXNBbmNlc3Rvck5vZGUuY2FsbChhLCBiKTsgfSwgZnVuY3Rpb24oYSkgeyByZXR1cm4g
YS5wYXJlbnROb2RlOyB9KTsKQEAgLTE4Miw3ICsxODcsNyBAQCBXZWJJbnNwZWN0b3IuRG9jdW1l
bnRQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMudXBkYXRlVHJlZVNlbGVjdGlvbigp
OwogICAgIH0sCiAKLSAgICB1cGRhdGVCcmVhZGNydW1iOiBmdW5jdGlvbigpCisgICAgdXBkYXRl
QnJlYWRjcnVtYjogZnVuY3Rpb24oZm9yY2VVcGRhdGUpCiAgICAgewogICAgICAgICBpZiAoIXRo
aXMudmlzaWJsZSkKICAgICAgICAgICAgIHJldHVybjsKQEAgLTIxMSw3ICsyMTYsNyBAQCBXZWJJ
bnNwZWN0b3IuRG9jdW1lbnRQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICBjcnVtYiA9
IGNydW1iLm5leHRTaWJsaW5nOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKGhhbmRsZWQpIHsK
KyAgICAgICAgaWYgKGhhbmRsZWQgJiYgIWZvcmNlVXBkYXRlKSB7CiAgICAgICAgICAgICAvLyBX
ZSBkb24ndCBuZWVkIHRvIHJlYnVpbGQgdGhlIGNydW1icywgYnV0IHdlIG5lZWQgdG8gYWRqdXN0
IHNpemVzCiAgICAgICAgICAgICAvLyB0byByZWZsZWN0IHRoZSBuZXcgZm9jdXNlZCBvciByb290
IG5vZGUuCiAgICAgICAgICAgICB0aGlzLnVwZGF0ZUJyZWFkY3J1bWJTaXplcygpOwpAQCAtNjMw
LDEzICs2MzUsMTMgQEAgV2ViSW5zcGVjdG9yLkRvY3VtZW50UGFuZWwucHJvdG90eXBlID0gewog
ICAgICAgICBjb2xsYXBzZShzZWxlY3RlZENydW1iLCB0cnVlKTsKICAgICB9LAogCi0gICAgdXBk
YXRlU3R5bGVzOiBmdW5jdGlvbigpCisgICAgdXBkYXRlU3R5bGVzOiBmdW5jdGlvbihmb3JjZVVw
ZGF0ZSkKICAgICB7CiAgICAgICAgIHZhciBzdHlsZXNTaWRlYmFyUGFuZSA9IHRoaXMudmlld3Mu
ZG9tLnNpZGViYXJQYW5lcy5zdHlsZXM7CiAgICAgICAgIGlmICghc3R5bGVzU2lkZWJhclBhbmUu
ZXhwYW5kZWQgfHwgIXN0eWxlc1NpZGViYXJQYW5lLm5lZWRzVXBkYXRlKQogICAgICAgICAgICAg
cmV0dXJuOwogCi0gICAgICAgIHN0eWxlc1NpZGViYXJQYW5lLnVwZGF0ZSh0aGlzLmZvY3VzZWRE
T01Ob2RlKTsKKyAgICAgICAgc3R5bGVzU2lkZWJhclBhbmUudXBkYXRlKHRoaXMuZm9jdXNlZERP
TU5vZGUsIHVuZGVmaW5lZCwgZm9yY2VVcGRhdGUpOwogICAgICAgICBzdHlsZXNTaWRlYmFyUGFu
ZS5uZWVkc1VwZGF0ZSA9IGZhbHNlOwogICAgIH0sCiAKQEAgLTk3Miw2ICs5NzcsNyBAQCBXZWJJ
bnNwZWN0b3IuRE9NTm9kZVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIEVs
ZW1lbnQucHJvdG90eXBlLnJlbW92ZUF0dHJpYnV0ZS5jYWxsKHRoaXMucmVwcmVzZW50ZWRPYmpl
Y3QsIGF0dHJpYnV0ZU5hbWUpOwogCiAgICAgICAgIHRoaXMuX3VwZGF0ZVRpdGxlKCk7CisgICAg
ICAgIHRoaXMudHJlZU91dGxpbmUucGFuZWwuX2ZvY3VzZWROb2RlQ2hhbmdlZCh0cnVlKTsKICAg
ICB9LAogCiAgICAgX3RleHROb2RlRWRpdGluZ0NvbW1pdHRlZDogZnVuY3Rpb24oZWxlbWVudCwg
bmV3VGV4dCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3IvU3R5bGVzU2lkZWJh
clBhbmUuanMgYi9XZWJDb3JlL3BhZ2UvaW5zcGVjdG9yL1N0eWxlc1NpZGViYXJQYW5lLmpzCmlu
ZGV4IGM5NzNhY2EuLjQ0OGU0NDEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9pbnNwZWN0b3Iv
U3R5bGVzU2lkZWJhclBhbmUuanMKKysrIGIvV2ViQ29yZS9wYWdlL2luc3BlY3Rvci9TdHlsZXNT
aWRlYmFyUGFuZS5qcwpAQCAtMzIsMTEgKzMyLDExIEBAIFdlYkluc3BlY3Rvci5TdHlsZXNTaWRl
YmFyUGFuZSA9IGZ1bmN0aW9uKCkKIH0KIAogV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5l
LnByb3RvdHlwZSA9IHsKLSAgICB1cGRhdGU6IGZ1bmN0aW9uKG5vZGUsIGVkaXRlZFNlY3Rpb24p
CisgICAgdXBkYXRlOiBmdW5jdGlvbihub2RlLCBlZGl0ZWRTZWN0aW9uLCBmb3JjZVVwZGF0ZSkK
ICAgICB7CiAgICAgICAgIHZhciByZWZyZXNoID0gZmFsc2U7CiAKLSAgICAgICAgaWYgKCFub2Rl
IHx8IG5vZGUgPT09IHRoaXMubm9kZSkKKyAgICAgICAgaWYgKCFmb3JjZVVwZGF0ZSAmJiAoIW5v
ZGUgfHwgbm9kZSA9PT0gdGhpcy5ub2RlKSkKICAgICAgICAgICAgIHJlZnJlc2ggPSB0cnVlOwog
CiAgICAgICAgIGlmIChub2RlICYmIG5vZGUubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFICYm
IG5vZGUucGFyZW50Tm9kZSkKLS0gCjEuNS40LjE4LmdkMGI4Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>