<?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>87140</bug_id>
          
          <creation_ts>2012-05-22 09:56:11 -0700</creation_ts>
          <short_desc>Web Inspector: Add clear cookies context menu item to Resources &gt; Cookies</short_desc>
          <delta_ts>2013-04-01 02:41:26 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Paul Irish">paulirish</reporter>
          <assigned_to name="Vsevolod Vlasov">vsevik</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>caseq</cc>
    
    <cc>eustas</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>phistuck</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>630472</commentid>
    <comment_count>0</comment_count>
    <who name="Paul Irish">paulirish</who>
    <bug_when>2012-05-22 09:56:11 -0700</bug_when>
    <thetext>In network tab, you can right click, and &quot;Clear browser cookies&quot;

1) Is this for all cookies in the browser or only the particular domain you&apos;re viewing? Wording would indicate the former, though that&apos;s much less desirable behavior than the latter.

2) If it is the latter, can we add &quot;Clear domain cookies&quot; to the context menu of Resources &gt; Cookies?

Thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862570</commentid>
    <comment_count>1</comment_count>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-25 02:07:54 -0700</bug_when>
    <thetext>Please, rename this bug to -
Web Inspector: Plumb and expose cookie clearing options throughout the Resources Cookies tree and views

I created a patch that adds the following -
- A clear button when viewing a non read only CookieItemsView (I re-used an existing glyph that means clear in other contexts).
- A &quot;Clear all from (domain)&quot; context menu option when right clicking on a cookie row that will only remove cookies that match the specific domain of the cookie row (.example.com, but not www.example.com).
- A &quot;Clear all&quot; context menu option when right clicking within a CookieItemsView and when right clicking on a cookie row.
- A &quot;Clear&quot; context menu option when right clicking on a cookie tree list item.

Also -
- The delete button now stays invisible until you select a cookie row.
- Some drive by JSDoc fixes.

The patch does not add -
- &quot;Clear session cookies&quot; (and &quot;Clear session cookies from (domain)&quot;).
- &quot;Clear persistent cookies&quot; (and &quot;Clear persistent cookies from (domain)&quot;).
- &quot;Clear all&quot; (or other wording) when right clicking on the &quot;Cookies&quot; tree title.

When I debug websites, sometimes cookies influence the issues I am seeing. Most of the time, only session cookies are interfering, or only persistent cookies are interfering. Removing only one of the kinds keeps me logged in (for example) while debugging, which helps me further debug the issue.
I do not feel strongly about it, of course, but I think it may be useful. Let me know if this is reasonable and I will add it to the patch.

The &quot;Clear all&quot; context menu on the &quot;Cookies&quot; tree title, if implemented, would clear all of the cookies these views show, not all of the browser cookies (though I can also add that there, if you want). Let me know if this is reasonable (and suggest better wording, I guess) and I will add it to the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862572</commentid>
    <comment_count>2</comment_count>
      <attachid>194804</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-25 02:08:44 -0700</bug_when>
    <thetext>Created attachment 194804
Plumb cookie clearing throughout the Resources Cookie tree and views</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862589</commentid>
    <comment_count>3</comment_count>
      <attachid>194804</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-25 02:42:16 -0700</bug_when>
    <thetext>Comment on attachment 194804
Plumb cookie clearing throughout the Resources Cookie tree and views

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

&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:109
&gt; +            if (this._cookiesTable.selectedCookie())

1) Braces are placed in the same line for conditional/loop operator
2) If block contains only one line - do not place it to braces.

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:58
&gt; +    {

Ditto

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:61
&gt; +    else

Ditto.

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:98
&gt; +        if (event.target.isSelfOrDescendant(this._dataGrid.headerTableBody)) {

Remove braces.

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:103
&gt; +        if (this._refreshCallback) {

Remove braces.

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:115
&gt; +        } else {

Ditto.

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:161
&gt; +            {

Move brace in previous line

&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:518
&gt; +     this._cookieViews[cookieDomain].clear();

Fix spacing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862602</commentid>
    <comment_count>4</comment_count>
      <attachid>194804</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-25 02:52:40 -0700</bug_when>
    <thetext>Comment on attachment 194804
Plumb cookie clearing throughout the Resources Cookie tree and views

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

Thank you very much for the review.
Embarrassing nits. I really thought I nailed it. I guess the first iteration was correct and I broke it when I added more code. :(/

&gt;&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:109
&gt;&gt; +            if (this._cookiesTable.selectedCookie())
&gt; 
&gt; 1) Braces are placed in the same line for conditional/loop operator
&gt; 2) If block contains only one line - do not place it to braces.

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:58
&gt;&gt; +    {
&gt; 
&gt; Ditto

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:61
&gt;&gt; +    else
&gt; 
&gt; Ditto.

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:98
&gt;&gt; +        if (event.target.isSelfOrDescendant(this._dataGrid.headerTableBody)) {
&gt; 
&gt; Remove braces.

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:103
&gt;&gt; +        if (this._refreshCallback) {
&gt; 
&gt; Remove braces.

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:115
&gt;&gt; +        } else {
&gt; 
&gt; Ditto.

Looks weird (if with braces, else without). But, done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:161
&gt;&gt; +            {
&gt; 
&gt; Move brace in previous line

Done.

&gt;&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:518
&gt;&gt; +     this._cookieViews[cookieDomain].clear();
&gt; 
&gt; Fix spacing.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862606</commentid>
    <comment_count>5</comment_count>
      <attachid>194814</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-25 02:55:37 -0700</bug_when>
    <thetext>Created attachment 194814
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>862611</commentid>
    <comment_count>6</comment_count>
      <attachid>194814</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-25 03:10:24 -0700</bug_when>
    <thetext>Comment on attachment 194814
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 1

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests.

Usually &quot;no new tests&quot; is removed from changelog entry.

This label is used to attract developers attention before commiting patch.

&gt; Source/WebCore/ChangeLog:17
&gt; +        (WebInspector.CookieItemsView):

IMHO member  items should be either commented, or removed (with adding comment to file entry)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863566</commentid>
    <comment_count>7</comment_count>
      <attachid>194814</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2013-03-26 04:56:41 -0700</bug_when>
    <thetext>Comment on attachment 194814
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 1

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

&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:150
&gt; +        this._cookiesTable.clear(&quot;&quot;);

Just this._cookiesTable.clear()?

&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:161
&gt; +        this._deleteButton.visible = true;

I wonder if we ever hide the button?

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:66
&gt; +    if (selectedCallback) {

Please drop redundant &apos;{&apos; &amp; &apos;}&apos;

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:95
&gt; +        if (event.target.isSelfOrDescendant(this._dataGrid.headerTableBody))

This looks a bit fragile. Can we check for the result of dataGridNodeFromNode() instead?

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:110
&gt; +            contextMenu.appendItem(String.sprintf(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all from \&quot;%s\&quot;&quot; : &quot;Clear All from \&quot;%s\&quot;&quot;), cookieDomain), this._clearAndRefresh.bind(this, cookieDomain));

String.sprintf is redundant here, WebInspector.UIString() would actually do formatting for you, i.e.:
...appendItem(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all from \&quot;%s\&quot;&quot; : &quot;Clear All from \&quot;%s\&quot;&quot;, cookieDomain))

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:114
&gt; +        contextMenu.appendItem(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all&quot; : &quot;Clear All&quot;), this._clearAndRefresh.bind(this, &quot;&quot;));

&quot;&quot; looks redundant here as well.

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:150
&gt; +        var cookies, j, cookieCount;

Please move the declarations to where the variables are initialized.

&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:516
&gt; +    clearCookies: function(treeElement, cookieDomain)

Please annotate.

&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:1946
&gt; +    onattach: function()

style: add one empty line above this.

&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:1952
&gt; +    _handleContextMenuEvent: function(event)

Please annotate.

&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:1959
&gt; +    _clearCookies: function(domain)

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863643</commentid>
    <comment_count>8</comment_count>
      <attachid>194814</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-26 07:16:38 -0700</bug_when>
    <thetext>Comment on attachment 194814
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 1

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

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        No new tests.
&gt; 
&gt; Usually &quot;no new tests&quot; is removed from changelog entry.
&gt; 
&gt; This label is used to attract developers attention before commiting patch.

Done.

&gt;&gt; Source/WebCore/ChangeLog:17
&gt;&gt; +        (WebInspector.CookieItemsView):
&gt; 
&gt; IMHO member  items should be either commented, or removed (with adding comment to file entry)

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:150
&gt;&gt; +        this._cookiesTable.clear(&quot;&quot;);
&gt; 
&gt; Just this._cookiesTable.clear()?

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:161
&gt;&gt; +        this._deleteButton.visible = true;
&gt; 
&gt; I wonder if we ever hide the button?

We do now, as part of this patch. Before, it would have always been visible, even when nothing is selected, which occasionally had weird consequences when actually clicking on it and it was a wrong behavior anyway.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:66
&gt;&gt; +    if (selectedCallback) {
&gt; 
&gt; Please drop redundant &apos;{&apos; &amp; &apos;}&apos;

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:95
&gt;&gt; +        if (event.target.isSelfOrDescendant(this._dataGrid.headerTableBody))
&gt; 
&gt; This looks a bit fragile. Can we check for the result of dataGridNodeFromNode() instead?

Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:110
&gt;&gt; +            contextMenu.appendItem(String.sprintf(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all from \&quot;%s\&quot;&quot; : &quot;Clear All from \&quot;%s\&quot;&quot;), cookieDomain), this._clearAndRefresh.bind(this, cookieDomain));
&gt; 
&gt; String.sprintf is redundant here, WebInspector.UIString() would actually do formatting for you, i.e.:
&gt; ...appendItem(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all from \&quot;%s\&quot;&quot; : &quot;Clear All from \&quot;%s\&quot;&quot;, cookieDomain))

I did not know UIString() can do that. Thank you! Done.

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:114
&gt;&gt; +        contextMenu.appendItem(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all&quot; : &quot;Clear All&quot;), this._clearAndRefresh.bind(this, &quot;&quot;));
&gt; 
&gt; &quot;&quot; looks redundant here as well.

Do you prefer null?
Do you prefer a typeof domain === &quot;string&quot; check within _clearAndRefresh?
I do not think it can be this._clearAndRefresh.bind(this), because then the first parameter would be the event or something context menu adds, right?

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:150
&gt;&gt; +        var cookies, j, cookieCount;
&gt; 
&gt; Please move the declarations to where the variables are initialized.

This was done on purpose - declaring variables within loops and such gives a false sense that it works, while it really does not (declarations are evaluated once, at the beginning of a function/global scope).

Do you insist?

&gt;&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:516
&gt;&gt; +    clearCookies: function(treeElement, cookieDomain)
&gt; 
&gt; Please annotate.

Done. And removed the seemingly redundant treeElement.

&gt;&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:1946
&gt;&gt; +    onattach: function()
&gt; 
&gt; style: add one empty line above this.

Done.

&gt;&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:1952
&gt;&gt; +    _handleContextMenuEvent: function(event)
&gt; 
&gt; Please annotate.

Done. I hope I got it right ({Event} event?).

&gt;&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:1959
&gt;&gt; +    _clearCookies: function(domain)
&gt; 
&gt; ditto.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863682</commentid>
    <comment_count>9</comment_count>
      <attachid>195091</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-26 08:12:24 -0700</bug_when>
    <thetext>Created attachment 195091
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863797</commentid>
    <comment_count>10</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2013-03-26 10:26:13 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; &gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:114
&gt; &gt;&gt; +        contextMenu.appendItem(WebInspector.UIString(WebInspector.useLowerCaseMenuTitles() ? &quot;Clear all&quot; : &quot;Clear All&quot;), this._clearAndRefresh.bind(this, &quot;&quot;));
&gt; &gt; 
&gt; &gt; &quot;&quot; looks redundant here as well.
&gt; 
&gt; Do you prefer null?
&gt; Do you prefer a typeof domain === &quot;string&quot; check within _clearAndRefresh?
&gt; I do not think it can be this._clearAndRefresh.bind(this), because then the first parameter would be the event or something context menu adds, right?

I think we do not pass any parameters to context menu callback, but you point is still good if we ever start passing additional parameters, so I guess just binding null to first argument makes sense.

&gt; &gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:150
&gt; &gt;&gt; +        var cookies, j, cookieCount;
&gt; &gt; 
&gt; &gt; Please move the declarations to where the variables are initialized.
&gt; 
&gt; This was done on purpose - declaring variables within loops and such gives a false sense that it works, while it really does not (declarations are evaluated once, at the beginning of a function/global scope).

We generally declare in the place of initialization through the rest of the code, and the consensus here is that whatever surprises could pop up due to JS promoting these variables to the function scope, would likely be caught by closure compiler.

&gt; Done. I hope I got it right ({Event} event?).

Yep :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863834</commentid>
    <comment_count>11</comment_count>
      <attachid>195118</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-26 10:52:22 -0700</bug_when>
    <thetext>Created attachment 195118
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864518</commentid>
    <comment_count>12</comment_count>
      <attachid>195118</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2013-03-27 07:18:37 -0700</bug_when>
    <thetext>Comment on attachment 195118
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 3

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

&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:110
&gt; +            if (this._cookiesTable.selectedCookie())
&gt; +                this._deleteButton.visible = true;

nit: perhaps, this._deleteButton.visible =  !!this._cookiesTable.selectedCookie() ?

&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:154
&gt; +    _clearButtonClicked: function()

mit: why not bind clear directly?

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:151
&gt; +        {

style: please keep block&apos;s opening { on previous line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864538</commentid>
    <comment_count>13</comment_count>
      <attachid>195118</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-27 07:37:23 -0700</bug_when>
    <thetext>Comment on attachment 195118
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 3

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

&gt;&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:110
&gt;&gt; +                this._deleteButton.visible = true;
&gt; 
&gt; nit: perhaps, this._deleteButton.visible =  !!this._cookiesTable.selectedCookie() ?

I like it. Done!

&gt;&gt; Source/WebCore/inspector/front-end/CookieItemsView.js:154
&gt;&gt; +    _clearButtonClicked: function()
&gt; 
&gt; mit: why not bind clear directly?

For the same reason _refreshButtonClicked is bound instead of this.update. I guess for private button action and public API separation.
I do not feel strongly about it, but we should be consistent. Should I change both of them or keep both of them as is?

&gt;&gt; Source/WebCore/inspector/front-end/CookiesTable.js:151
&gt;&gt; +        {
&gt; 
&gt; style: please keep block&apos;s opening { on previous line.

Damn that fixation of mine. Done!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864544</commentid>
    <comment_count>14</comment_count>
      <attachid>195322</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-27 07:44:15 -0700</bug_when>
    <thetext>Created attachment 195322
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864545</commentid>
    <comment_count>15</comment_count>
      <attachid>195322</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-03-27 07:51:55 -0700</bug_when>
    <thetext>Comment on attachment 195322
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 4

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

Thanks for fixing this!

&gt; Source/WebCore/inspector/front-end/ResourcesPanel.js:521
&gt; +        this._cookieViews[cookieDomain].clear();

I would prefer if we had some CookieModel and didn&apos;t need to rely on view to clear cookies, but it seems not that important.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865026</commentid>
    <comment_count>16</comment_count>
      <attachid>195322</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-27 17:14:21 -0700</bug_when>
    <thetext>Comment on attachment 195322
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 4

Clearing flags on attachment: 195322

Committed r147031: &lt;http://trac.webkit.org/changeset/147031&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865027</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-27 17:14:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865196</commentid>
    <comment_count>18</comment_count>
      <attachid>195322</attachid>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-03-27 23:33:10 -0700</bug_when>
    <thetext>Comment on attachment 195322
Plumb cookie clearing throughout the Resources Cookie tree and views - post review 4

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

&gt; Source/WebCore/inspector/front-end/CookiesTable.js:146
&gt; +     * @param {string=} domain

JS Compiler reports:

Source/WebCore/inspector/front-end/CookiesTable.js:82: WARNING - actual parameter 1 of WebInspector.CookiesTable.prototype.clear does not match formal parameter
found   : (null|string)
required: (string|undefined)
        this.clear(domain);
                   ^</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865257</commentid>
    <comment_count>19</comment_count>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-28 01:45:38 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; (From update of attachment 195322 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=195322&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/inspector/front-end/CookiesTable.js:146
&gt; &gt; +     * @param {string=} domain
&gt; 
&gt; JS Compiler reports:
&gt; 
&gt; Source/WebCore/inspector/front-end/CookiesTable.js:82: WARNING - actual parameter 1 of WebInspector.CookiesTable.prototype.clear does not match formal parameter
&gt; found   : (null|string)
&gt; required: (string|undefined)
&gt;         this.clear(domain);
&gt;                    ^

Oops.
I will upload a one-liner patch later today. Is a new bug required for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865262</commentid>
    <comment_count>20</comment_count>
      <attachid>195502</attachid>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-28 02:01:08 -0700</bug_when>
    <thetext>Created attachment 195502
A one-liner JS Compiler warning fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865361</commentid>
    <comment_count>21</comment_count>
      <attachid>195502</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-03-28 05:12:35 -0700</bug_when>
    <thetext>Comment on attachment 195502
A one-liner JS Compiler warning fix

We have a one patch per bug policy in WebKit. This one does not require a bug however, I have landed this fix for you: http://trac.webkit.org/changeset/147096</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>865366</commentid>
    <comment_count>22</comment_count>
    <who name="PhistucK">phistuck</who>
    <bug_when>2013-03-28 05:15:07 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; (From update of attachment 195502 [details])
&gt; We have a one patch per bug policy in WebKit. This one does not require a bug however, I have landed this fix for you: http://trac.webkit.org/changeset/147096

Thank you. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>867003</commentid>
    <comment_count>23</comment_count>
    <who name="Eugene Klyuchnikov">eustas</who>
    <bug_when>2013-04-01 02:41:26 -0700</bug_when>
    <thetext>*** Bug 109140 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194804</attachid>
            <date>2013-03-25 02:08:44 -0700</date>
            <delta_ts>2013-03-25 02:55:37 -0700</delta_ts>
            <desc>Plumb cookie clearing throughout the Resources Cookie tree and views</desc>
            <filename>clear-cookies-2013-3-25.patch</filename>
            <type>text/plain</type>
            <size>11800</size>
            <attacher name="PhistucK">phistuck</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZw0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ2NzUwKQ0KKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsNSArMSw0MSBAQA0KIDIwMTMtMDMtMjUgIFBo
aXN0dWNLICA8cGhpc3R1Y2tAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFBsdW1iIGFuZCBleHBvc2UgY29va2llIGNsZWFyaW5nIG9wdGlvbnMgdGhyb3VnaG91dCB0aGUg
UmVzb3VyY2VzIENvb2tpZXMgdHJlZSBhbmQgdmlld3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MTQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorICAgICAgICBBZGRlZCBjb29r
aWUgY2xlYXJpbmcgYnV0dG9ucyBhbmQgY29udGV4dCBtZW51IG9wdGlvbnMKKyAgICAgICAgdGhy
b3VnaG91dCB0aGUgdHJlZSBhbmQgdmlld3MuCisgICAgICAgIERyaXZlIGJ5IC0KKyAgICAgICAg
LSBNYWRlIHN1cmUgdGhlIGRlbGV0ZSBidXR0b24gaXMgb25seSB2aXNpYmxlCisgICAgICAgIHdo
ZW4gYSBjb29raWUgaXMgc2VsZWN0ZWQuCisgICAgICAgIC0gRml4ZWQgYSB3cm9uZyBKU0RvYyBj
b21tZW50LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcu
anM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3KToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLnN0YXR1c0Jhckl0ZW1zKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLl91cGRhdGVXaXRo
Q29va2llcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5jbGVhcik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5fY2xlYXJCdXR0b25DbGlja2VkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvQ29va2llc1RhYmxl
LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZSk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuQ29va2llc1RhYmxlLnByb3RvdHlwZS5fY2xlYXJBbmRSZWZyZXNoKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLl9oYW5kbGVDb250ZXh0TWVu
dUV2ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLmNs
ZWFyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLnNldENv
b2tpZXMpOgorICAgICAgICAgRml4ZWQgYSB3cm9uZyBKU0RvYyBjb21tZW50IHN0cnVjdHVyZS4K
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5jbGVhckNvb2tpZXMpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZVRyZWVFbGVtZW50LnByb3RvdHlwZS5vbmF0dGFj
aCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVsZW1lbnQucHJvdG90eXBlLl9o
YW5kbGVDb250ZXh0TWVudUV2ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVUcmVl
RWxlbWVudC5wcm90b3R5cGUuX2NsZWFyQ29va2llcyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zy
b250LWVuZC90cmVlb3V0bGluZS5qczoKKyAgICAgICAgKFRyZWVPdXRsaW5lKTogRml4ZWQgYSB3
cm9uZyBKU0RvYyBjb21tZW50LgorCisyMDEzLTAzLTI1ICBQaGlzdHVjSyAgPHBoaXN0dWNrQGNo
cm9taXVtLm9yZz4KKwogICAgICAgICBXZWIgSW5zcGVjdG9yOiBFeGNlcHRpb24gd2hlbiB0dXJu
aW5nIG9uIHByZXR0eSBwcmludCB3aXRob3V0IGFueSBkaXNwbGF5ZWQgc291cmNlIGluIHRoZSBl
ZGl0b3IKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MzEzNgogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmlu
Z3MuanMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0NCi0tLSBTb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2Fs
aXplZFN0cmluZ3MuanMJKHJldmlzaW9uIDE0Njc1MCkNCisrKyBTb3VyY2UvV2ViQ29yZS9Fbmds
aXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMJKHdvcmtpbmcgY29weSkNCkBAIC0xMDUsNiAr
MTA1LDEwIEBADQogbG9jYWxpemVkU3RyaW5nc1siQ2FsbCJdID0gIkNhbGwiOwogbG9jYWxpemVk
U3RyaW5nc1siQ2FsbHMiXSA9ICJDYWxscyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW5ub3QgZmlu
ZCBjb3JyZXNwb25kaW5nIGhlYXAgc25hcHNob3Qgbm9kZSJdID0gIkNhbm5vdCBmaW5kIGNvcnJl
c3BvbmRpbmcgaGVhcCBzbmFwc2hvdCBub2RlIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIEFs
bCJdID0gIkNsZWFyIEFsbCI7Citsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBhbGwiXSA9ICJDbGVh
ciBhbGwiOworbG9jYWxpemVkU3RyaW5nc1siQ2xlYXIgYWxsIGZyb20gXCIlc1wiIl0gPSAiQ2xl
YXIgYWxsIGZyb20gXCIlc1wiIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIEFsbCBmcm9tIFwi
JXNcIiJdID0gIkNsZWFyIEFsbCBmcm9tIFwiJXNcIiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDbGVh
ciBhbGwgcHJvZmlsZXMuIl0gPSAiQ2xlYXIgYWxsIHByb2ZpbGVzLiI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJDbGVhciBCcm93c2VyIENhY2hlIl0gPSAiQ2xlYXIgQnJvd3NlciBDYWNoZSI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJDbGVhciBicm93c2VyIGNhY2hlIl0gPSAiQ2xlYXIgYnJvd3NlciBjYWNo
ZSI7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZUl0ZW1z
Vmlldy5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvQ29va2llSXRlbXNWaWV3LmpzCShyZXZpc2lvbiAxNDY3NTApDQorKysgU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcuanMJKHdvcmtpbmcgY29weSkN
CkBAIC00MSw2ICs0MSwxMCBAQA0KICAgICB0aGlzLl9kZWxldGVCdXR0b24udmlzaWJsZSA9IGZh
bHNlOwogICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRo
aXMuX2RlbGV0ZUJ1dHRvbkNsaWNrZWQsIHRoaXMpOwogCisgICAgdGhpcy5fY2xlYXJCdXR0b24g
PSBuZXcgV2ViSW5zcGVjdG9yLlN0YXR1c0JhckJ1dHRvbihXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IkNsZWFyIiksICJjbGVhci1zdG9yYWdlLXN0YXR1cy1iYXItaXRlbSIpOworICAgIHRoaXMuX2Ns
ZWFyQnV0dG9uLnZpc2libGUgPSBmYWxzZTsKKyAgICB0aGlzLl9jbGVhckJ1dHRvbi5hZGRFdmVu
dExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2NsZWFyQnV0dG9uQ2xpY2tlZCwgdGhpcyk7CisKICAg
ICB0aGlzLl9yZWZyZXNoQnV0dG9uID0gbmV3IFdlYkluc3BlY3Rvci5TdGF0dXNCYXJCdXR0b24o
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZWZyZXNoIiksICJyZWZyZXNoLXN0b3JhZ2Utc3RhdHVz
LWJhci1pdGVtIik7CiAgICAgdGhpcy5fcmVmcmVzaEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJj
bGljayIsIHRoaXMuX3JlZnJlc2hCdXR0b25DbGlja2VkLCB0aGlzKTsKIApAQCAtNTYsNyArNjAs
NyBAQA0KIFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlID0gewogICAgIGdl
dCBzdGF0dXNCYXJJdGVtcygpCiAgICAgewotICAgICAgICByZXR1cm4gW3RoaXMuX3JlZnJlc2hC
dXR0b24uZWxlbWVudCwgdGhpcy5fZGVsZXRlQnV0dG9uLmVsZW1lbnRdOworICAgICAgICByZXR1
cm4gW3RoaXMuX3JlZnJlc2hCdXR0b24uZWxlbWVudCwgdGhpcy5fY2xlYXJCdXR0b24uZWxlbWVu
dCwgdGhpcy5fZGVsZXRlQnV0dG9uLmVsZW1lbnRdOwogICAgIH0sCiAKICAgICB3YXNTaG93bjog
ZnVuY3Rpb24oKQpAQCAtODUsNiArODksNyBAQA0KICAgICAgICAgaWYgKCF0aGlzLl9jb29raWVz
Lmxlbmd0aCkgewogICAgICAgICAgICAgLy8gTm90aGluZyB0byBzaG93LgogICAgICAgICAgICAg
dGhpcy5fZW1wdHlWaWV3LnNob3codGhpcy5lbGVtZW50KTsKKyAgICAgICAgICAgIHRoaXMuX2Ns
ZWFyQnV0dG9uLnZpc2libGUgPSBmYWxzZTsKICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUJ1dHRv
bi52aXNpYmxlID0gZmFsc2U7CiAgICAgICAgICAgICBpZiAodGhpcy5fY29va2llc1RhYmxlKQog
ICAgICAgICAgICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZS5kZXRhY2goKTsKQEAgLTkyLDcgKzk3
LDcgQEANCiAgICAgICAgIH0KIAogICAgICAgICBpZiAoIXRoaXMuX2Nvb2tpZXNUYWJsZSkKLSAg
ICAgICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZSA9IGlzQWR2YW5jZWQgPyBuZXcgV2ViSW5zcGVj
dG9yLkNvb2tpZXNUYWJsZShmYWxzZSwgdGhpcy5fdXBkYXRlLmJpbmQodGhpcykpIDogbmV3IFdl
Ykluc3BlY3Rvci5TaW1wbGVDb29raWVzVGFibGUoKTsKKyAgICAgICAgICAgIHRoaXMuX2Nvb2tp
ZXNUYWJsZSA9IGlzQWR2YW5jZWQgPyBuZXcgV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZShmYWxz
ZSwgdGhpcy5fdXBkYXRlLmJpbmQodGhpcyksIHRoaXMuX3Nob3dEZWxldGVCdXR0b24uYmluZCh0
aGlzKSkgOiBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZUNvb2tpZXNUYWJsZSgpOwogCiAgICAgICAg
IHRoaXMuX2Nvb2tpZXNUYWJsZS5zZXRDb29raWVzKHRoaXMuX2Nvb2tpZXMpOwogICAgICAgICB0
aGlzLl9lbXB0eVZpZXcuZGV0YWNoKCk7CkBAIC0xMDAsNyArMTA1LDExIEBADQogICAgICAgICBp
ZiAoaXNBZHZhbmNlZCkgewogICAgICAgICAgICAgdGhpcy5fdHJlZUVsZW1lbnQuc3VidGl0bGUg
PSBTdHJpbmcuc3ByaW50ZihXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIiVkIGNvb2tpZXMgKCVzKSIp
LCB0aGlzLl9jb29raWVzLmxlbmd0aCwKICAgICAgICAgICAgICAgICBOdW1iZXIuYnl0ZXNUb1N0
cmluZyh0aGlzLl90b3RhbFNpemUpKTsKLSAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi52
aXNpYmxlID0gdHJ1ZTsKKyAgICAgICAgICAgIHRoaXMuX2NsZWFyQnV0dG9uLnZpc2libGUgPSB0
cnVlOworICAgICAgICAgICAgaWYgKHRoaXMuX2Nvb2tpZXNUYWJsZS5zZWxlY3RlZENvb2tpZSgp
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi52aXNpYmxl
ID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0sCiAKQEAgLTEzOCw2ICsx
NDcsMjIgQEANCiAgICAgICAgIHJldHVybiBjb29raWVzOwogICAgIH0sCiAKKyAgICBjbGVhcjog
ZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fY29va2llc1RhYmxlLmNsZWFyKCIiKTsK
KyAgICAgICAgdGhpcy5fdXBkYXRlKCk7CisgICAgfSwKKworICAgIF9jbGVhckJ1dHRvbkNsaWNr
ZWQ6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHRoaXMuY2xlYXIoKTsKKyAgICB9LAorCisg
ICAgX3Nob3dEZWxldGVCdXR0b246IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHRoaXMuX2Rl
bGV0ZUJ1dHRvbi52aXNpYmxlID0gdHJ1ZTsKKyAgICB9LAorCiAgICAgX2RlbGV0ZUJ1dHRvbkNs
aWNrZWQ6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHZhciBzZWxlY3RlZENvb2tpZSA9IHRo
aXMuX2Nvb2tpZXNUYWJsZS5zZWxlY3RlZENvb2tpZSgpOwpJbmRleDogU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVzVGFibGUuanMNCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBTb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZXNUYWJsZS5qcwkocmV2aXNpb24g
MTQ2NzUwKQ0KKysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29va2llc1Rh
YmxlLmpzCSh3b3JraW5nIGNvcHkpDQpAQCAtMzMsOCArMzMsOSBAQA0KICAqIEBleHRlbmRzIHtX
ZWJJbnNwZWN0b3IuVmlld30KICAqIEBwYXJhbSB7Ym9vbGVhbn0gZXhwYW5kYWJsZQogICogQHBh
cmFtIHtmdW5jdGlvbigpPX0gcmVmcmVzaENhbGxiYWNrCisgKiBAcGFyYW0ge2Z1bmN0aW9uKCk9
fSBzZWxlY3RlZENhbGxiYWNrCiAgKi8KLVdlYkluc3BlY3Rvci5Db29raWVzVGFibGUgPSBmdW5j
dGlvbihleHBhbmRhYmxlLCByZWZyZXNoQ2FsbGJhY2spCitXZWJJbnNwZWN0b3IuQ29va2llc1Rh
YmxlID0gZnVuY3Rpb24oZXhwYW5kYWJsZSwgcmVmcmVzaENhbGxiYWNrLCBzZWxlY3RlZENhbGxi
YWNrKQogewogICAgIFdlYkluc3BlY3Rvci5WaWV3LmNhbGwodGhpcyk7CiAgICAgdGhpcy5lbGVt
ZW50LmNsYXNzTmFtZSA9ICJmaWxsIjsKQEAgLTUzLDkgKzU0LDIyIEBADQogICAgICAgICB7aWQ6
ICJzZWN1cmUiLCB0aXRsZTogV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTZWN1cmUiKSwgc29ydGFi
bGU6IHRydWUsIGFsaWduOiBXZWJJbnNwZWN0b3IuRGF0YUdyaWQuQWxpZ24uQ2VudGVyLCB3aWR0
aDogIjclIn0KICAgICBdOwogCi0gICAgdGhpcy5fZGF0YUdyaWQgPSBuZXcgV2ViSW5zcGVjdG9y
LkRhdGFHcmlkKGNvbHVtbnMsIG51bGwsIHJlYWRPbmx5ID8gbnVsbCA6IHRoaXMuX29uRGVsZXRl
Q29va2llLmJpbmQodGhpcyksIHJlZnJlc2hDYWxsYmFjayk7CisgICAgaWYgKHJlYWRPbmx5KQor
ICAgIHsKKyAgICAgICAgdGhpcy5fZGF0YUdyaWQgPSBuZXcgV2ViSW5zcGVjdG9yLkRhdGFHcmlk
KGNvbHVtbnMsIG51bGwsIG51bGwsIHJlZnJlc2hDYWxsYmFjayk7CisgICAgfQorICAgIGVsc2UK
KyAgICB7CisgICAgICAgIHRoaXMuX2RhdGFHcmlkID0gbmV3IFdlYkluc3BlY3Rvci5EYXRhR3Jp
ZChjb2x1bW5zKTsKKyAgICAgICAgdGhpcy5fZGF0YUdyaWQuZWxlbWVudC5hZGRFdmVudExpc3Rl
bmVyKCJjb250ZXh0bWVudSIsIHRoaXMuX2hhbmRsZUNvbnRleHRNZW51RXZlbnQuYmluZCh0aGlz
KSwgdHJ1ZSk7CisgICAgfQorCiAgICAgdGhpcy5fZGF0YUdyaWQuYWRkRXZlbnRMaXN0ZW5lcihX
ZWJJbnNwZWN0b3IuRGF0YUdyaWQuRXZlbnRzLlNvcnRpbmdDaGFuZ2VkLCB0aGlzLl9yZWJ1aWxk
VGFibGUsIHRoaXMpOwogCisgICAgaWYgKHNlbGVjdGVkQ2FsbGJhY2spIHsKKyAgICAgICAgdGhp
cy5fZGF0YUdyaWQuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGF0YUdyaWQuRXZlbnRz
LlNlbGVjdGVkTm9kZSwgc2VsZWN0ZWRDYWxsYmFjaywgdGhpcyk7CisgICAgfQorCiAgICAgdGhp
cy5fbmV4dFNlbGVjdGVkQ29va2llID0gLyoqIEB0eXBlIHs/V2ViSW5zcGVjdG9yLkNvb2tpZX0g
Ki8gKG51bGwpOwogCiAgICAgdGhpcy5fZGF0YUdyaWQuc2hvdyh0aGlzLmVsZW1lbnQpOwpAQCAt
NjksNyArODMsNDYgQEANCiAgICAgICAgICAgICB0aGlzLl9kYXRhR3JpZC51cGRhdGVXaWR0aHMo
KTsKICAgICB9LAogCi0gICAgLyoKKyAgICAvKioKKyAgICAgKiBAcGFyYW0gez9zdHJpbmd9IGRv
bWFpbgorICAgICAqLworICAgIF9jbGVhckFuZFJlZnJlc2g6IGZ1bmN0aW9uKGRvbWFpbikKKyAg
ICB7CisgICAgICAgIHRoaXMuY2xlYXIoZG9tYWluKTsKKyAgICAgICAgaWYgKHRoaXMuX3JlZnJl
c2hDYWxsYmFjaykKKyAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hDYWxsYmFjaygpOworICAgIH0s
CisKKyAgICBfaGFuZGxlQ29udGV4dE1lbnVFdmVudDogZnVuY3Rpb24oZXZlbnQpCisgICAgewor
ICAgICAgICBpZiAoZXZlbnQudGFyZ2V0LmlzU2VsZk9yRGVzY2VuZGFudCh0aGlzLl9kYXRhR3Jp
ZC5oZWFkZXJUYWJsZUJvZHkpKSB7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAg
ICAgICAgdmFyIGNvbnRleHRNZW51ID0gbmV3IFdlYkluc3BlY3Rvci5Db250ZXh0TWVudShldmVu
dCk7CisgICAgICAgIAorICAgICAgICBpZiAodGhpcy5fcmVmcmVzaENhbGxiYWNrKSB7CisgICAg
ICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVm
cmVzaCIpLCB0aGlzLl9yZWZyZXNoQ2FsbGJhY2spOworICAgICAgICB9CisgICAgICAgIAorICAg
ICAgICB2YXIgZ3JpZE5vZGUgPSB0aGlzLl9kYXRhR3JpZC5kYXRhR3JpZE5vZGVGcm9tTm9kZShl
dmVudC50YXJnZXQpOworICAgICAgICB2YXIgY29va2llID0gZ3JpZE5vZGUgJiYgZ3JpZE5vZGUu
Y29va2llOworCisgICAgICAgIGlmIChjb29raWUpIHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51
LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJEZWxldGUiKSwgdGhpcy5fb25EZWxl
dGVDb29raWUuYmluZCh0aGlzLCBncmlkTm9kZSkpOworICAgICAgICAgICAgY29udGV4dE1lbnUu
YXBwZW5kU2VwYXJhdG9yKCk7CisgICAgICAgICAgICB2YXIgY29va2llRG9tYWluID0gY29va2ll
LmRvbWFpbigpOworICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShTdHJpbmcuc3By
aW50ZihXZWJJbnNwZWN0b3IuVUlTdHJpbmcoV2ViSW5zcGVjdG9yLnVzZUxvd2VyQ2FzZU1lbnVU
aXRsZXMoKSA/ICJDbGVhciBhbGwgZnJvbSBcIiVzXCIiIDogIkNsZWFyIEFsbCBmcm9tIFwiJXNc
IiIpLCBjb29raWVEb21haW4pLCB0aGlzLl9jbGVhckFuZFJlZnJlc2guYmluZCh0aGlzLCBjb29r
aWVEb21haW4pKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFw
cGVuZFNlcGFyYXRvcigpOworICAgICAgICB9CisKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
SXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoV2ViSW5zcGVjdG9yLnVzZUxvd2VyQ2FzZU1lbnVU
aXRsZXMoKSA/ICJDbGVhciBhbGwiIDogIkNsZWFyIEFsbCIpLCB0aGlzLl9jbGVhckFuZFJlZnJl
c2guYmluZCh0aGlzLCAiIikpOworCisgICAgICAgIGNvbnRleHRNZW51LnNob3coKTsKKworICAg
IH0sCisKKyAgICAvKioKICAgICAgKiBAcGFyYW0geyFBcnJheS48IVdlYkluc3BlY3Rvci5Db29r
aWU+fSBjb29raWVzCiAgICAgICovCiAgICAgc2V0Q29va2llczogZnVuY3Rpb24oY29va2llcykK
QEAgLTk1LDYgKzE0OCwyMyBAQA0KICAgICAgICAgcmV0dXJuIG5vZGUgPyBub2RlLmNvb2tpZSA6
IG51bGw7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7P3N0cmluZ30gZG9tYWlu
CisgICAgICovCisgICAgY2xlYXI6IGZ1bmN0aW9uKGRvbWFpbikKKyAgICB7CisgICAgICAgIHZh
ciBjb29raWVzLCBqLCBjb29raWVDb3VudDsKKyAgICAgICAgZm9yICh2YXIgaSA9IDAsIGxlbmd0
aCA9IHRoaXMuX2RhdGEubGVuZ3RoOyBpIDwgbGVuZ3RoOyArK2kpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGNvb2tpZXMgPSB0aGlzLl9kYXRhW2ldLmNvb2tpZXM7CisgICAgICAgICAgICBmb3Ig
KGogPSAwLCBjb29raWVDb3VudCA9IGNvb2tpZXMubGVuZ3RoOyBqIDwgY29va2llQ291bnQ7ICsr
aikKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAoIWRvbWFpbiB8fCBjb29raWVz
W2pdLmRvbWFpbigpID09PSBkb21haW4pCisgICAgICAgICAgICAgICAgICAgIGNvb2tpZXNbal0u
cmVtb3ZlKCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9LAorCiAgICAgX3JlYnVp
bGRUYWJsZTogZnVuY3Rpb24oKQogICAgIHsKICAgICAgICAgdmFyIHNlbGVjdGVkQ29va2llID0g
dGhpcy5fbmV4dFNlbGVjdGVkQ29va2llIHx8IHRoaXMuc2VsZWN0ZWRDb29raWUoKTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanMNCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0NCi0tLSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNl
c1BhbmVsLmpzCShyZXZpc2lvbiAxNDY3NTApDQorKysgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qcwkod29ya2luZyBjb3B5KQ0KQEAgLTUxMyw2ICs1
MTMsMTEgQEANCiAgICAgICAgIHRoaXMuX2lubmVyU2hvd1ZpZXcodmlldyk7CiAgICAgfSwKIAor
ICAgIGNsZWFyQ29va2llczogZnVuY3Rpb24odHJlZUVsZW1lbnQsIGNvb2tpZURvbWFpbikKKyAg
ICB7CisgICAgIHRoaXMuX2Nvb2tpZVZpZXdzW2Nvb2tpZURvbWFpbl0uY2xlYXIoKTsKKyAgICB9
LAorCiAgICAgc2hvd0FwcGxpY2F0aW9uQ2FjaGU6IGZ1bmN0aW9uKGZyYW1lSWQpCiAgICAgewog
ICAgICAgICBpZiAoIXRoaXMuX2FwcGxpY2F0aW9uQ2FjaGVWaWV3c1tmcmFtZUlkXSkKQEAgLTE5
MzgsNyArMTk0MywyNCBAQA0KICAgICB7CiAgICAgICAgIHJldHVybiAiY29va2llczovLyIgKyB0
aGlzLl9jb29raWVEb21haW47CiAgICAgfSwKKyAgICBvbmF0dGFjaDogZnVuY3Rpb24oKQorICAg
IHsKKyAgICAgICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBl
Lm9uYXR0YWNoLmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMubGlzdEl0ZW1FbGVtZW50LmFkZEV2
ZW50TGlzdGVuZXIoImNvbnRleHRtZW51IiwgdGhpcy5faGFuZGxlQ29udGV4dE1lbnVFdmVudC5i
aW5kKHRoaXMpLCB0cnVlKTsKKyAgICB9LAogCisgICAgX2hhbmRsZUNvbnRleHRNZW51RXZlbnQ6
IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdmFyIGNvbnRleHRNZW51ID0gbmV3IFdl
Ykluc3BlY3Rvci5Db250ZXh0TWVudShldmVudCk7CisgICAgICAgIGNvbnRleHRNZW51LmFwcGVu
ZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDbGVhciIpLCB0aGlzLl9jbGVhckNvb2tpZXMu
YmluZCh0aGlzKSk7CisgICAgICAgIGNvbnRleHRNZW51LnNob3coKTsKKyAgICB9LAorCisgICAg
X2NsZWFyQ29va2llczogZnVuY3Rpb24oZG9tYWluKQorICAgIHsKKyAgICAgICAgdGhpcy5fc3Rv
cmFnZVBhbmVsLmNsZWFyQ29va2llcyh0aGlzLCB0aGlzLl9jb29raWVEb21haW4pOworICAgIH0s
CisKICAgICBvbnNlbGVjdDogZnVuY3Rpb24oc2VsZWN0ZWRCeVVzZXIpCiAgICAgewogICAgICAg
ICBXZWJJbnNwZWN0b3IuQmFzZVN0b3JhZ2VUcmVlRWxlbWVudC5wcm90b3R5cGUub25zZWxlY3Qu
Y2FsbCh0aGlzLCBzZWxlY3RlZEJ5VXNlcik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL3RyZWVvdXRsaW5lLmpzDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC90cmVlb3V0bGluZS5qcwkocmV2aXNpb24gMTQ2NzUwKQ0K
KysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvdHJlZW91dGxpbmUuanMJKHdv
cmtpbmcgY29weSkNCkBAIC0yOCw2ICsyOCw3IEBADQogCiAvKioKICAqIEBjb25zdHJ1Y3Rvcgor
ICogQHBhcmFtIHtFbGVtZW50fSBsaXN0Tm9kZQogICogQHBhcmFtIHtib29sZWFuPX0gbm9uRm9j
dXNhYmxlCiAgKi8KIGZ1bmN0aW9uIFRyZWVPdXRsaW5lKGxpc3ROb2RlLCBub25Gb2N1c2FibGUp
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194814</attachid>
            <date>2013-03-25 02:55:37 -0700</date>
            <delta_ts>2013-03-26 08:12:24 -0700</delta_ts>
            <desc>Plumb cookie clearing throughout the Resources Cookie tree and views - post review 1</desc>
            <filename>clear-cookies-2013-3-25-post-review-1.patch</filename>
            <type>text/plain</type>
            <size>11704</size>
            <attacher name="PhistucK">phistuck</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZw0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ2NzUwKQ0KKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsNSArMSw0MSBAQA0KIDIwMTMtMDMtMjUgIFBo
aXN0dWNLICA8cGhpc3R1Y2tAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFBsdW1iIGFuZCBleHBvc2UgY29va2llIGNsZWFyaW5nIG9wdGlvbnMgdGhyb3VnaG91dCB0aGUg
UmVzb3VyY2VzIENvb2tpZXMgdHJlZSBhbmQgdmlld3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MTQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorICAgICAgICBBZGRlZCBjb29r
aWUgY2xlYXJpbmcgYnV0dG9ucyBhbmQgY29udGV4dCBtZW51IG9wdGlvbnMKKyAgICAgICAgdGhy
b3VnaG91dCB0aGUgdHJlZSBhbmQgdmlld3MuCisgICAgICAgIERyaXZlIGJ5IC0KKyAgICAgICAg
LSBNYWRlIHN1cmUgdGhlIGRlbGV0ZSBidXR0b24gaXMgb25seSB2aXNpYmxlCisgICAgICAgIHdo
ZW4gYSBjb29raWUgaXMgc2VsZWN0ZWQuCisgICAgICAgIC0gRml4ZWQgYSB3cm9uZyBKU0RvYyBj
b21tZW50LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcu
anM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3KToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLnN0YXR1c0Jhckl0ZW1zKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLl91cGRhdGVXaXRo
Q29va2llcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5jbGVhcik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5fY2xlYXJCdXR0b25DbGlja2VkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvQ29va2llc1RhYmxl
LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZSk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuQ29va2llc1RhYmxlLnByb3RvdHlwZS5fY2xlYXJBbmRSZWZyZXNoKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLl9oYW5kbGVDb250ZXh0TWVu
dUV2ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLmNs
ZWFyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLnNldENv
b2tpZXMpOgorICAgICAgICAgRml4ZWQgYSB3cm9uZyBKU0RvYyBjb21tZW50IHN0cnVjdHVyZS4K
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5jbGVhckNvb2tpZXMpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZVRyZWVFbGVtZW50LnByb3RvdHlwZS5vbmF0dGFj
aCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVsZW1lbnQucHJvdG90eXBlLl9o
YW5kbGVDb250ZXh0TWVudUV2ZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVUcmVl
RWxlbWVudC5wcm90b3R5cGUuX2NsZWFyQ29va2llcyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zy
b250LWVuZC90cmVlb3V0bGluZS5qczoKKyAgICAgICAgKFRyZWVPdXRsaW5lKTogRml4ZWQgYSB3
cm9uZyBKU0RvYyBjb21tZW50LgorCisyMDEzLTAzLTI1ICBQaGlzdHVjSyAgPHBoaXN0dWNrQGNo
cm9taXVtLm9yZz4KKwogICAgICAgICBXZWIgSW5zcGVjdG9yOiBFeGNlcHRpb24gd2hlbiB0dXJu
aW5nIG9uIHByZXR0eSBwcmludCB3aXRob3V0IGFueSBkaXNwbGF5ZWQgc291cmNlIGluIHRoZSBl
ZGl0b3IKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MzEzNgogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmlu
Z3MuanMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0NCi0tLSBTb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2Fs
aXplZFN0cmluZ3MuanMJKHJldmlzaW9uIDE0Njc1MCkNCisrKyBTb3VyY2UvV2ViQ29yZS9Fbmds
aXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMJKHdvcmtpbmcgY29weSkNCkBAIC0xMDUsNiAr
MTA1LDEwIEBADQogbG9jYWxpemVkU3RyaW5nc1siQ2FsbCJdID0gIkNhbGwiOwogbG9jYWxpemVk
U3RyaW5nc1siQ2FsbHMiXSA9ICJDYWxscyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW5ub3QgZmlu
ZCBjb3JyZXNwb25kaW5nIGhlYXAgc25hcHNob3Qgbm9kZSJdID0gIkNhbm5vdCBmaW5kIGNvcnJl
c3BvbmRpbmcgaGVhcCBzbmFwc2hvdCBub2RlIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIEFs
bCJdID0gIkNsZWFyIEFsbCI7Citsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBhbGwiXSA9ICJDbGVh
ciBhbGwiOworbG9jYWxpemVkU3RyaW5nc1siQ2xlYXIgYWxsIGZyb20gXCIlc1wiIl0gPSAiQ2xl
YXIgYWxsIGZyb20gXCIlc1wiIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIEFsbCBmcm9tIFwi
JXNcIiJdID0gIkNsZWFyIEFsbCBmcm9tIFwiJXNcIiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDbGVh
ciBhbGwgcHJvZmlsZXMuIl0gPSAiQ2xlYXIgYWxsIHByb2ZpbGVzLiI7CiBsb2NhbGl6ZWRTdHJp
bmdzWyJDbGVhciBCcm93c2VyIENhY2hlIl0gPSAiQ2xlYXIgQnJvd3NlciBDYWNoZSI7CiBsb2Nh
bGl6ZWRTdHJpbmdzWyJDbGVhciBicm93c2VyIGNhY2hlIl0gPSAiQ2xlYXIgYnJvd3NlciBjYWNo
ZSI7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZUl0ZW1z
Vmlldy5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvQ29va2llSXRlbXNWaWV3LmpzCShyZXZpc2lvbiAxNDY3NTApDQorKysgU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcuanMJKHdvcmtpbmcgY29weSkN
CkBAIC00MSw2ICs0MSwxMCBAQA0KICAgICB0aGlzLl9kZWxldGVCdXR0b24udmlzaWJsZSA9IGZh
bHNlOwogICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRo
aXMuX2RlbGV0ZUJ1dHRvbkNsaWNrZWQsIHRoaXMpOwogCisgICAgdGhpcy5fY2xlYXJCdXR0b24g
PSBuZXcgV2ViSW5zcGVjdG9yLlN0YXR1c0JhckJ1dHRvbihXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IkNsZWFyIiksICJjbGVhci1zdG9yYWdlLXN0YXR1cy1iYXItaXRlbSIpOworICAgIHRoaXMuX2Ns
ZWFyQnV0dG9uLnZpc2libGUgPSBmYWxzZTsKKyAgICB0aGlzLl9jbGVhckJ1dHRvbi5hZGRFdmVu
dExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2NsZWFyQnV0dG9uQ2xpY2tlZCwgdGhpcyk7CisKICAg
ICB0aGlzLl9yZWZyZXNoQnV0dG9uID0gbmV3IFdlYkluc3BlY3Rvci5TdGF0dXNCYXJCdXR0b24o
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZWZyZXNoIiksICJyZWZyZXNoLXN0b3JhZ2Utc3RhdHVz
LWJhci1pdGVtIik7CiAgICAgdGhpcy5fcmVmcmVzaEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJj
bGljayIsIHRoaXMuX3JlZnJlc2hCdXR0b25DbGlja2VkLCB0aGlzKTsKIApAQCAtNTYsNyArNjAs
NyBAQA0KIFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlID0gewogICAgIGdl
dCBzdGF0dXNCYXJJdGVtcygpCiAgICAgewotICAgICAgICByZXR1cm4gW3RoaXMuX3JlZnJlc2hC
dXR0b24uZWxlbWVudCwgdGhpcy5fZGVsZXRlQnV0dG9uLmVsZW1lbnRdOworICAgICAgICByZXR1
cm4gW3RoaXMuX3JlZnJlc2hCdXR0b24uZWxlbWVudCwgdGhpcy5fY2xlYXJCdXR0b24uZWxlbWVu
dCwgdGhpcy5fZGVsZXRlQnV0dG9uLmVsZW1lbnRdOwogICAgIH0sCiAKICAgICB3YXNTaG93bjog
ZnVuY3Rpb24oKQpAQCAtODUsNiArODksNyBAQA0KICAgICAgICAgaWYgKCF0aGlzLl9jb29raWVz
Lmxlbmd0aCkgewogICAgICAgICAgICAgLy8gTm90aGluZyB0byBzaG93LgogICAgICAgICAgICAg
dGhpcy5fZW1wdHlWaWV3LnNob3codGhpcy5lbGVtZW50KTsKKyAgICAgICAgICAgIHRoaXMuX2Ns
ZWFyQnV0dG9uLnZpc2libGUgPSBmYWxzZTsKICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUJ1dHRv
bi52aXNpYmxlID0gZmFsc2U7CiAgICAgICAgICAgICBpZiAodGhpcy5fY29va2llc1RhYmxlKQog
ICAgICAgICAgICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZS5kZXRhY2goKTsKQEAgLTkyLDcgKzk3
LDcgQEANCiAgICAgICAgIH0KIAogICAgICAgICBpZiAoIXRoaXMuX2Nvb2tpZXNUYWJsZSkKLSAg
ICAgICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZSA9IGlzQWR2YW5jZWQgPyBuZXcgV2ViSW5zcGVj
dG9yLkNvb2tpZXNUYWJsZShmYWxzZSwgdGhpcy5fdXBkYXRlLmJpbmQodGhpcykpIDogbmV3IFdl
Ykluc3BlY3Rvci5TaW1wbGVDb29raWVzVGFibGUoKTsKKyAgICAgICAgICAgIHRoaXMuX2Nvb2tp
ZXNUYWJsZSA9IGlzQWR2YW5jZWQgPyBuZXcgV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZShmYWxz
ZSwgdGhpcy5fdXBkYXRlLmJpbmQodGhpcyksIHRoaXMuX3Nob3dEZWxldGVCdXR0b24uYmluZCh0
aGlzKSkgOiBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZUNvb2tpZXNUYWJsZSgpOwogCiAgICAgICAg
IHRoaXMuX2Nvb2tpZXNUYWJsZS5zZXRDb29raWVzKHRoaXMuX2Nvb2tpZXMpOwogICAgICAgICB0
aGlzLl9lbXB0eVZpZXcuZGV0YWNoKCk7CkBAIC0xMDAsNyArMTA1LDkgQEANCiAgICAgICAgIGlm
IChpc0FkdmFuY2VkKSB7CiAgICAgICAgICAgICB0aGlzLl90cmVlRWxlbWVudC5zdWJ0aXRsZSA9
IFN0cmluZy5zcHJpbnRmKFdlYkluc3BlY3Rvci5VSVN0cmluZygiJWQgY29va2llcyAoJXMpIiks
IHRoaXMuX2Nvb2tpZXMubGVuZ3RoLAogICAgICAgICAgICAgICAgIE51bWJlci5ieXRlc1RvU3Ry
aW5nKHRoaXMuX3RvdGFsU2l6ZSkpOwotICAgICAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZp
c2libGUgPSB0cnVlOworICAgICAgICAgICAgdGhpcy5fY2xlYXJCdXR0b24udmlzaWJsZSA9IHRy
dWU7CisgICAgICAgICAgICBpZiAodGhpcy5fY29va2llc1RhYmxlLnNlbGVjdGVkQ29va2llKCkp
CisgICAgICAgICAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZpc2libGUgPSB0cnVlOwogICAg
ICAgICB9CiAgICAgfSwKIApAQCAtMTM4LDYgKzE0NSwyMiBAQA0KICAgICAgICAgcmV0dXJuIGNv
b2tpZXM7CiAgICAgfSwKIAorICAgIGNsZWFyOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0
aGlzLl9jb29raWVzVGFibGUuY2xlYXIoIiIpOworICAgICAgICB0aGlzLl91cGRhdGUoKTsKKyAg
ICB9LAorCisgICAgX2NsZWFyQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAg
ICAgdGhpcy5jbGVhcigpOworICAgIH0sCisKKyAgICBfc2hvd0RlbGV0ZUJ1dHRvbjogZnVuY3Rp
b24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZpc2libGUgPSB0cnVlOwor
ICAgIH0sCisKICAgICBfZGVsZXRlQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQogICAgIHsKICAg
ICAgICAgdmFyIHNlbGVjdGVkQ29va2llID0gdGhpcy5fY29va2llc1RhYmxlLnNlbGVjdGVkQ29v
a2llKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZXNU
YWJsZS5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvQ29va2llc1RhYmxlLmpzCShyZXZpc2lvbiAxNDY3NTApDQorKysgU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVzVGFibGUuanMJKHdvcmtpbmcgY29weSkNCkBAIC0z
Myw4ICszMyw5IEBADQogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5WaWV3fQogICogQHBhcmFt
IHtib29sZWFufSBleHBhbmRhYmxlCiAgKiBAcGFyYW0ge2Z1bmN0aW9uKCk9fSByZWZyZXNoQ2Fs
bGJhY2sKKyAqIEBwYXJhbSB7ZnVuY3Rpb24oKT19IHNlbGVjdGVkQ2FsbGJhY2sKICAqLwotV2Vi
SW5zcGVjdG9yLkNvb2tpZXNUYWJsZSA9IGZ1bmN0aW9uKGV4cGFuZGFibGUsIHJlZnJlc2hDYWxs
YmFjaykKK1dlYkluc3BlY3Rvci5Db29raWVzVGFibGUgPSBmdW5jdGlvbihleHBhbmRhYmxlLCBy
ZWZyZXNoQ2FsbGJhY2ssIHNlbGVjdGVkQ2FsbGJhY2spCiB7CiAgICAgV2ViSW5zcGVjdG9yLlZp
ZXcuY2FsbCh0aGlzKTsKICAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gImZpbGwiOwpAQCAt
NTMsOSArNTQsMTkgQEANCiAgICAgICAgIHtpZDogInNlY3VyZSIsIHRpdGxlOiBXZWJJbnNwZWN0
b3IuVUlTdHJpbmcoIlNlY3VyZSIpLCBzb3J0YWJsZTogdHJ1ZSwgYWxpZ246IFdlYkluc3BlY3Rv
ci5EYXRhR3JpZC5BbGlnbi5DZW50ZXIsIHdpZHRoOiAiNyUifQogICAgIF07CiAKLSAgICB0aGlz
Ll9kYXRhR3JpZCA9IG5ldyBXZWJJbnNwZWN0b3IuRGF0YUdyaWQoY29sdW1ucywgbnVsbCwgcmVh
ZE9ubHkgPyBudWxsIDogdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0aGlzKSwgcmVmcmVzaENh
bGxiYWNrKTsKKyAgICBpZiAocmVhZE9ubHkpCisgICAgICAgIHRoaXMuX2RhdGFHcmlkID0gbmV3
IFdlYkluc3BlY3Rvci5EYXRhR3JpZChjb2x1bW5zLCBudWxsLCBudWxsLCByZWZyZXNoQ2FsbGJh
Y2spOworICAgIGVsc2UgeworICAgICAgICB0aGlzLl9kYXRhR3JpZCA9IG5ldyBXZWJJbnNwZWN0
b3IuRGF0YUdyaWQoY29sdW1ucyk7CisgICAgICAgIHRoaXMuX2RhdGFHcmlkLmVsZW1lbnQuYWRk
RXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLCB0aGlzLl9oYW5kbGVDb250ZXh0TWVudUV2ZW50
LmJpbmQodGhpcyksIHRydWUpOworICAgIH0KKwogICAgIHRoaXMuX2RhdGFHcmlkLmFkZEV2ZW50
TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLkV2ZW50cy5Tb3J0aW5nQ2hhbmdlZCwgdGhp
cy5fcmVidWlsZFRhYmxlLCB0aGlzKTsKIAorICAgIGlmIChzZWxlY3RlZENhbGxiYWNrKSB7Cisg
ICAgICAgIHRoaXMuX2RhdGFHcmlkLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRhdGFH
cmlkLkV2ZW50cy5TZWxlY3RlZE5vZGUsIHNlbGVjdGVkQ2FsbGJhY2ssIHRoaXMpOworICAgIH0K
KwogICAgIHRoaXMuX25leHRTZWxlY3RlZENvb2tpZSA9IC8qKiBAdHlwZSB7P1dlYkluc3BlY3Rv
ci5Db29raWV9ICovIChudWxsKTsKIAogICAgIHRoaXMuX2RhdGFHcmlkLnNob3codGhpcy5lbGVt
ZW50KTsKQEAgLTY5LDcgKzgwLDQzIEBADQogICAgICAgICAgICAgdGhpcy5fZGF0YUdyaWQudXBk
YXRlV2lkdGhzKCk7CiAgICAgfSwKIAotICAgIC8qCisgICAgLyoqCisgICAgICogQHBhcmFtIHs/
c3RyaW5nfSBkb21haW4KKyAgICAgKi8KKyAgICBfY2xlYXJBbmRSZWZyZXNoOiBmdW5jdGlvbihk
b21haW4pCisgICAgeworICAgICAgICB0aGlzLmNsZWFyKGRvbWFpbik7CisgICAgICAgIGlmICh0
aGlzLl9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAgICAgICB0aGlzLl9yZWZyZXNoQ2FsbGJhY2so
KTsKKyAgICB9LAorCisgICAgX2hhbmRsZUNvbnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50
KQorICAgIHsKKyAgICAgICAgaWYgKGV2ZW50LnRhcmdldC5pc1NlbGZPckRlc2NlbmRhbnQodGhp
cy5fZGF0YUdyaWQuaGVhZGVyVGFibGVCb2R5KSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAg
ICAgICB2YXIgY29udGV4dE1lbnUgPSBuZXcgV2ViSW5zcGVjdG9yLkNvbnRleHRNZW51KGV2ZW50
KTsKKyAgICAgICAgCisgICAgICAgIGlmICh0aGlzLl9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAg
ICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVmcmVz
aCIpLCB0aGlzLl9yZWZyZXNoQ2FsbGJhY2spOworICAgICAgICAKKyAgICAgICAgdmFyIGdyaWRO
b2RlID0gdGhpcy5fZGF0YUdyaWQuZGF0YUdyaWROb2RlRnJvbU5vZGUoZXZlbnQudGFyZ2V0KTsK
KyAgICAgICAgdmFyIGNvb2tpZSA9IGdyaWROb2RlICYmIGdyaWROb2RlLmNvb2tpZTsKKworICAg
ICAgICBpZiAoY29va2llKSB7CisgICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiRGVsZXRlIiksIHRoaXMuX29uRGVsZXRlQ29va2llLmJpbmQo
dGhpcywgZ3JpZE5vZGUpKTsKKyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZFNlcGFyYXRv
cigpOworICAgICAgICAgICAgdmFyIGNvb2tpZURvbWFpbiA9IGNvb2tpZS5kb21haW4oKTsKKyAg
ICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oU3RyaW5nLnNwcmludGYoV2ViSW5zcGVj
dG9yLlVJU3RyaW5nKFdlYkluc3BlY3Rvci51c2VMb3dlckNhc2VNZW51VGl0bGVzKCkgPyAiQ2xl
YXIgYWxsIGZyb20gXCIlc1wiIiA6ICJDbGVhciBBbGwgZnJvbSBcIiVzXCIiKSwgY29va2llRG9t
YWluKSwgdGhpcy5fY2xlYXJBbmRSZWZyZXNoLmJpbmQodGhpcywgY29va2llRG9tYWluKSk7Cisg
ICAgICAgIH0gZWxzZQorICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7
CisKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmco
V2ViSW5zcGVjdG9yLnVzZUxvd2VyQ2FzZU1lbnVUaXRsZXMoKSA/ICJDbGVhciBhbGwiIDogIkNs
ZWFyIEFsbCIpLCB0aGlzLl9jbGVhckFuZFJlZnJlc2guYmluZCh0aGlzLCAiIikpOworCisgICAg
ICAgIGNvbnRleHRNZW51LnNob3coKTsKKyAgICB9LAorCisgICAgLyoqCiAgICAgICogQHBhcmFt
IHshQXJyYXkuPCFXZWJJbnNwZWN0b3IuQ29va2llPn0gY29va2llcwogICAgICAqLwogICAgIHNl
dENvb2tpZXM6IGZ1bmN0aW9uKGNvb2tpZXMpCkBAIC05NSw2ICsxNDIsMjIgQEANCiAgICAgICAg
IHJldHVybiBub2RlID8gbm9kZS5jb29raWUgOiBudWxsOwogICAgIH0sCiAKKyAgICAvKioKKyAg
ICAgKiBAcGFyYW0gez9zdHJpbmd9IGRvbWFpbgorICAgICAqLworICAgIGNsZWFyOiBmdW5jdGlv
bihkb21haW4pCisgICAgeworICAgICAgICB2YXIgY29va2llcywgaiwgY29va2llQ291bnQ7Cisg
ICAgICAgIGZvciAodmFyIGkgPSAwLCBsZW5ndGggPSB0aGlzLl9kYXRhLmxlbmd0aDsgaSA8IGxl
bmd0aDsgKytpKQorICAgICAgICB7CisgICAgICAgICAgICBjb29raWVzID0gdGhpcy5fZGF0YVtp
XS5jb29raWVzOworICAgICAgICAgICAgZm9yIChqID0gMCwgY29va2llQ291bnQgPSBjb29raWVz
Lmxlbmd0aDsgaiA8IGNvb2tpZUNvdW50OyArK2opIHsKKyAgICAgICAgICAgICAgICBpZiAoIWRv
bWFpbiB8fCBjb29raWVzW2pdLmRvbWFpbigpID09PSBkb21haW4pCisgICAgICAgICAgICAgICAg
ICAgIGNvb2tpZXNbal0ucmVtb3ZlKCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9
LAorCiAgICAgX3JlYnVpbGRUYWJsZTogZnVuY3Rpb24oKQogICAgIHsKICAgICAgICAgdmFyIHNl
bGVjdGVkQ29va2llID0gdGhpcy5fbmV4dFNlbGVjdGVkQ29va2llIHx8IHRoaXMuc2VsZWN0ZWRD
b29raWUoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3Vy
Y2VzUGFuZWwuanMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzCShyZXZpc2lvbiAxNDY3NTApDQorKysgU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qcwkod29ya2luZyBjb3B5
KQ0KQEAgLTUxMyw2ICs1MTMsMTEgQEANCiAgICAgICAgIHRoaXMuX2lubmVyU2hvd1ZpZXcodmll
dyk7CiAgICAgfSwKIAorICAgIGNsZWFyQ29va2llczogZnVuY3Rpb24odHJlZUVsZW1lbnQsIGNv
b2tpZURvbWFpbikKKyAgICB7CisgICAgICAgIHRoaXMuX2Nvb2tpZVZpZXdzW2Nvb2tpZURvbWFp
bl0uY2xlYXIoKTsKKyAgICB9LAorCiAgICAgc2hvd0FwcGxpY2F0aW9uQ2FjaGU6IGZ1bmN0aW9u
KGZyYW1lSWQpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX2FwcGxpY2F0aW9uQ2FjaGVWaWV3
c1tmcmFtZUlkXSkKQEAgLTE5MzgsNyArMTk0MywyNCBAQA0KICAgICB7CiAgICAgICAgIHJldHVy
biAiY29va2llczovLyIgKyB0aGlzLl9jb29raWVEb21haW47CiAgICAgfSwKKyAgICBvbmF0dGFj
aDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJl
ZUVsZW1lbnQucHJvdG90eXBlLm9uYXR0YWNoLmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMubGlz
dEl0ZW1FbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51IiwgdGhpcy5faGFuZGxl
Q29udGV4dE1lbnVFdmVudC5iaW5kKHRoaXMpLCB0cnVlKTsKKyAgICB9LAogCisgICAgX2hhbmRs
ZUNvbnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdmFyIGNv
bnRleHRNZW51ID0gbmV3IFdlYkluc3BlY3Rvci5Db250ZXh0TWVudShldmVudCk7CisgICAgICAg
IGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDbGVhciIpLCB0
aGlzLl9jbGVhckNvb2tpZXMuYmluZCh0aGlzKSk7CisgICAgICAgIGNvbnRleHRNZW51LnNob3co
KTsKKyAgICB9LAorCisgICAgX2NsZWFyQ29va2llczogZnVuY3Rpb24oZG9tYWluKQorICAgIHsK
KyAgICAgICAgdGhpcy5fc3RvcmFnZVBhbmVsLmNsZWFyQ29va2llcyh0aGlzLCB0aGlzLl9jb29r
aWVEb21haW4pOworICAgIH0sCisKICAgICBvbnNlbGVjdDogZnVuY3Rpb24oc2VsZWN0ZWRCeVVz
ZXIpCiAgICAgewogICAgICAgICBXZWJJbnNwZWN0b3IuQmFzZVN0b3JhZ2VUcmVlRWxlbWVudC5w
cm90b3R5cGUub25zZWxlY3QuY2FsbCh0aGlzLCBzZWxlY3RlZEJ5VXNlcik7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3RyZWVvdXRsaW5lLmpzDQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
DQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC90cmVlb3V0bGluZS5qcwko
cmV2aXNpb24gMTQ2NzUwKQ0KKysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
dHJlZW91dGxpbmUuanMJKHdvcmtpbmcgY29weSkNCkBAIC0yOCw2ICsyOCw3IEBADQogCiAvKioK
ICAqIEBjb25zdHJ1Y3RvcgorICogQHBhcmFtIHtFbGVtZW50fSBsaXN0Tm9kZQogICogQHBhcmFt
IHtib29sZWFuPX0gbm9uRm9jdXNhYmxlCiAgKi8KIGZ1bmN0aW9uIFRyZWVPdXRsaW5lKGxpc3RO
b2RlLCBub25Gb2N1c2FibGUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195091</attachid>
            <date>2013-03-26 08:12:24 -0700</date>
            <delta_ts>2013-03-26 10:52:22 -0700</delta_ts>
            <desc>Plumb cookie clearing throughout the Resources Cookie tree and views - post review 2</desc>
            <filename>clear-cookies-2013-3-25-post-review-2.patch</filename>
            <type>text/plain</type>
            <size>12371</size>
            <attacher name="PhistucK">phistuck</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZw0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsMyArMSw1MyBAQA0KKzIwMTMtMDMtMjYgIFBo
aXN0dWNLICA8cGhpc3R1Y2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFBsdW1iIGFuZCBleHBvc2UgY29va2llIGNsZWFyaW5nIG9wdGlvbnMgdGhyb3VnaG91dCB0aGUg
UmVzb3VyY2VzIENvb2tpZXMgdHJlZSBhbmQgdmlld3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MTQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorICAgICAgICBBZGRlZCBjb29r
aWUgY2xlYXJpbmcgYnV0dG9ucyBhbmQgY29udGV4dCBtZW51IG9wdGlvbnMKKyAgICAgICAgdGhy
b3VnaG91dCB0aGUgdHJlZSBhbmQgdmlld3MuCisgICAgICAgIERyaXZlIGJ5IC0KKyAgICAgICAg
LSBNYWRlIHN1cmUgdGhlIGRlbGV0ZSBidXR0b24gaXMgb25seSB2aXNpYmxlCisgICAgICAgIHdo
ZW4gYSBjb29raWUgaXMgc2VsZWN0ZWQuCisgICAgICAgIC0gRml4ZWQgYSB3cm9uZyBKU0RvYyBj
b21tZW50LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcu
anM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3KToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLnN0YXR1c0Jhckl0ZW1zKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLl91cGRhdGVXaXRo
Q29va2llcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5jbGVhcik6CisgICAgICAgIEFkZGVkLiBDbGVhcnMgdGhlIGVudGlyZSBjb29raWUgdmlldy4K
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLl9jbGVhckJ1
dHRvbkNsaWNrZWQpOgorICAgICAgICBBZGRlZC4gRGl0dG8gKHdoZW4gY2xpY2tpbmcgb24gdGhl
IGJ1dHRvbikuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5fc2hvd0RlbGV0ZUJ1dHRvbik6CisgICAgICAgIEFkZGVkLiBTaG93cyB0aGUgZGVsZXRlIGJ1
dHRvbiB3aGVuIHNlbGVjdGluZyBhIGNvb2tpZSByb3cuCisgICAgICAgICogaW5zcGVjdG9yL0Nv
b2tpZXNUYWJsZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZS5wcm90b3R5cGUuX2NsZWFyQW5kUmVmcmVz
aCk6CisgICAgICAgIEFkZGVkLiBDbGVhcnMgdGhlIGNvb2tpZXMgb2YgdGhlIGN1cnJlbnQgdGFi
bGUgYW5kIHVwZGF0ZXMgaXQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlLnBy
b3RvdHlwZS5faGFuZGxlQ29udGV4dE1lbnVFdmVudCk6CisgICAgICAgIEFkZGVkLiBNYW5hZ2Vz
IHRoZSBjb250ZXh0IG1lbnUgd2l0aGluIHRoZSB0YWJsZS4KKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5Db29raWVzVGFibGUucHJvdG90eXBlLmNsZWFyKToKKyAgICAgICAgQWRkZWQuIENsZWFycyB0
aGUgY29va2llcyBvZiB0aGUgY3VycmVudCB0YWJsZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5D
b29raWVzVGFibGUucHJvdG90eXBlLnNldENvb2tpZXMpOgorICAgICAgICAgRml4ZWQgYSB3cm9u
ZyBKU0RvYyBjb21tZW50IHN0cnVjdHVyZS4KKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L1Jlc291cmNlc1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVs
LnByb3RvdHlwZS5jbGVhckNvb2tpZXMpOgorICAgICAgICBBZGRlZC4gQ2xlYXJzIHRoZSBjb29r
aWVzIG9mIHRoZSBnaXZlbiBkb21haW4gdmlldy4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29r
aWVUcmVlRWxlbWVudC5wcm90b3R5cGUub25hdHRhY2gpOgorICAgICAgICBBZGRlZC4gQWRkcyBh
IGNvbnRleHRtZW51IGhhbmRsZXIuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVs
ZW1lbnQucHJvdG90eXBlLl9oYW5kbGVDb250ZXh0TWVudUV2ZW50KToKKyAgICAgICAgQWRkZWQu
IE1hbmFnZXMgdGhlIGNvbnRleHQgbWVudSB3aXRoaW4gY29va2llIHRyZWUuCisgICAgICAgIChX
ZWJJbnNwZWN0b3IuQ29va2llVHJlZUVsZW1lbnQucHJvdG90eXBlLl9jbGVhckNvb2tpZXMpOgor
ICAgICAgICBBZGRlZC4gQ2xlYXJzIHRoZSBjb29raWVzIG9mIHRoZSB2aWV3IG9mIHRoZSB0cmVl
IGl0ZW0uCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC90cmVlb3V0bGluZS5qczoKKyAg
ICAgICAgKFRyZWVPdXRsaW5lKTogRml4ZWQgYSB3cm9uZyBKU0RvYyBjb21tZW50LgorCisgICAg
ICAgICogRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICBBZGRlZCBz
dHJpbmdzIGZvciB0aGUgY29udGV4dCBtZW51IG9wdGlvbnMuCisKIDIwMTMtMDMtMjYgIEFuZHJl
aSBCdWN1ciAgPGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgVXNlIERPTSBvcmRlcmluZyBm
b3IgbGlzdCBjb3VudHMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJD
b3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwkod29ya2luZyBjb3B5KQ0KQEAg
LTEwNSw2ICsxMDUsMTAgQEANCiBsb2NhbGl6ZWRTdHJpbmdzWyJDYWxsIl0gPSAiQ2FsbCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJDYWxscyJdID0gIkNhbGxzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNh
bm5vdCBmaW5kIGNvcnJlc3BvbmRpbmcgaGVhcCBzbmFwc2hvdCBub2RlIl0gPSAiQ2Fubm90IGZp
bmQgY29ycmVzcG9uZGluZyBoZWFwIHNuYXBzaG90IG5vZGUiOworbG9jYWxpemVkU3RyaW5nc1si
Q2xlYXIgQWxsIl0gPSAiQ2xlYXIgQWxsIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIGFsbCJd
ID0gIkNsZWFyIGFsbCI7Citsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBhbGwgZnJvbSBcIiVzXCIi
XSA9ICJDbGVhciBhbGwgZnJvbSBcIiVzXCIiOworbG9jYWxpemVkU3RyaW5nc1siQ2xlYXIgQWxs
IGZyb20gXCIlc1wiIl0gPSAiQ2xlYXIgQWxsIGZyb20gXCIlc1wiIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkNsZWFyIGFsbCBwcm9maWxlcy4iXSA9ICJDbGVhciBhbGwgcHJvZmlsZXMuIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkNsZWFyIEJyb3dzZXIgQ2FjaGUiXSA9ICJDbGVhciBCcm93c2VyIENhY2hl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNsZWFyIGJyb3dzZXIgY2FjaGUiXSA9ICJDbGVhciBicm93
c2VyIGNhY2hlIjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29v
a2llSXRlbXNWaWV3LmpzDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcuanMJKHJldmlzaW9uIDE0Njg3OSkNCisrKyBTb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZUl0ZW1zVmlldy5qcwkod29ya2lu
ZyBjb3B5KQ0KQEAgLTQxLDYgKzQxLDEwIEBADQogICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi52aXNp
YmxlID0gZmFsc2U7CiAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNs
aWNrIiwgdGhpcy5fZGVsZXRlQnV0dG9uQ2xpY2tlZCwgdGhpcyk7CiAKKyAgICB0aGlzLl9jbGVh
ckJ1dHRvbiA9IG5ldyBXZWJJbnNwZWN0b3IuU3RhdHVzQmFyQnV0dG9uKFdlYkluc3BlY3Rvci5V
SVN0cmluZygiQ2xlYXIiKSwgImNsZWFyLXN0b3JhZ2Utc3RhdHVzLWJhci1pdGVtIik7CisgICAg
dGhpcy5fY2xlYXJCdXR0b24udmlzaWJsZSA9IGZhbHNlOworICAgIHRoaXMuX2NsZWFyQnV0dG9u
LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXJCdXR0b25DbGlja2VkLCB0aGlz
KTsKKwogICAgIHRoaXMuX3JlZnJlc2hCdXR0b24gPSBuZXcgV2ViSW5zcGVjdG9yLlN0YXR1c0Jh
ckJ1dHRvbihXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlZnJlc2giKSwgInJlZnJlc2gtc3RvcmFn
ZS1zdGF0dXMtYmFyLWl0ZW0iKTsKICAgICB0aGlzLl9yZWZyZXNoQnV0dG9uLmFkZEV2ZW50TGlz
dGVuZXIoImNsaWNrIiwgdGhpcy5fcmVmcmVzaEJ1dHRvbkNsaWNrZWQsIHRoaXMpOwogCkBAIC01
Niw3ICs2MCw3IEBADQogV2ViSW5zcGVjdG9yLkNvb2tpZUl0ZW1zVmlldy5wcm90b3R5cGUgPSB7
CiAgICAgZ2V0IHN0YXR1c0Jhckl0ZW1zKCkKICAgICB7Ci0gICAgICAgIHJldHVybiBbdGhpcy5f
cmVmcmVzaEJ1dHRvbi5lbGVtZW50LCB0aGlzLl9kZWxldGVCdXR0b24uZWxlbWVudF07CisgICAg
ICAgIHJldHVybiBbdGhpcy5fcmVmcmVzaEJ1dHRvbi5lbGVtZW50LCB0aGlzLl9jbGVhckJ1dHRv
bi5lbGVtZW50LCB0aGlzLl9kZWxldGVCdXR0b24uZWxlbWVudF07CiAgICAgfSwKIAogICAgIHdh
c1Nob3duOiBmdW5jdGlvbigpCkBAIC04NSw2ICs4OSw3IEBADQogICAgICAgICBpZiAoIXRoaXMu
X2Nvb2tpZXMubGVuZ3RoKSB7CiAgICAgICAgICAgICAvLyBOb3RoaW5nIHRvIHNob3cuCiAgICAg
ICAgICAgICB0aGlzLl9lbXB0eVZpZXcuc2hvdyh0aGlzLmVsZW1lbnQpOworICAgICAgICAgICAg
dGhpcy5fY2xlYXJCdXR0b24udmlzaWJsZSA9IGZhbHNlOwogICAgICAgICAgICAgdGhpcy5fZGVs
ZXRlQnV0dG9uLnZpc2libGUgPSBmYWxzZTsKICAgICAgICAgICAgIGlmICh0aGlzLl9jb29raWVz
VGFibGUpCiAgICAgICAgICAgICAgICAgdGhpcy5fY29va2llc1RhYmxlLmRldGFjaCgpOwpAQCAt
OTIsNyArOTcsNyBAQA0KICAgICAgICAgfQogCiAgICAgICAgIGlmICghdGhpcy5fY29va2llc1Rh
YmxlKQotICAgICAgICAgICAgdGhpcy5fY29va2llc1RhYmxlID0gaXNBZHZhbmNlZCA/IG5ldyBX
ZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlKGZhbHNlLCB0aGlzLl91cGRhdGUuYmluZCh0aGlzKSkg
OiBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZUNvb2tpZXNUYWJsZSgpOworICAgICAgICAgICAgdGhp
cy5fY29va2llc1RhYmxlID0gaXNBZHZhbmNlZCA/IG5ldyBXZWJJbnNwZWN0b3IuQ29va2llc1Rh
YmxlKGZhbHNlLCB0aGlzLl91cGRhdGUuYmluZCh0aGlzKSwgdGhpcy5fc2hvd0RlbGV0ZUJ1dHRv
bi5iaW5kKHRoaXMpKSA6IG5ldyBXZWJJbnNwZWN0b3IuU2ltcGxlQ29va2llc1RhYmxlKCk7CiAK
ICAgICAgICAgdGhpcy5fY29va2llc1RhYmxlLnNldENvb2tpZXModGhpcy5fY29va2llcyk7CiAg
ICAgICAgIHRoaXMuX2VtcHR5Vmlldy5kZXRhY2goKTsKQEAgLTEwMCw3ICsxMDUsOSBAQA0KICAg
ICAgICAgaWYgKGlzQWR2YW5jZWQpIHsKICAgICAgICAgICAgIHRoaXMuX3RyZWVFbGVtZW50LnN1
YnRpdGxlID0gU3RyaW5nLnNwcmludGYoV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIlZCBjb29raWVz
ICglcykiKSwgdGhpcy5fY29va2llcy5sZW5ndGgsCiAgICAgICAgICAgICAgICAgTnVtYmVyLmJ5
dGVzVG9TdHJpbmcodGhpcy5fdG90YWxTaXplKSk7Ci0gICAgICAgICAgICB0aGlzLl9kZWxldGVC
dXR0b24udmlzaWJsZSA9IHRydWU7CisgICAgICAgICAgICB0aGlzLl9jbGVhckJ1dHRvbi52aXNp
YmxlID0gdHJ1ZTsKKyAgICAgICAgICAgIGlmICh0aGlzLl9jb29raWVzVGFibGUuc2VsZWN0ZWRD
b29raWUoKSkKKyAgICAgICAgICAgICAgICB0aGlzLl9kZWxldGVCdXR0b24udmlzaWJsZSA9IHRy
dWU7CiAgICAgICAgIH0KICAgICB9LAogCkBAIC0xMzgsNiArMTQ1LDIyIEBADQogICAgICAgICBy
ZXR1cm4gY29va2llczsKICAgICB9LAogCisgICAgY2xlYXI6IGZ1bmN0aW9uKCkKKyAgICB7Cisg
ICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZS5jbGVhcigpOworICAgICAgICB0aGlzLl91cGRhdGUo
KTsKKyAgICB9LAorCisgICAgX2NsZWFyQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgdGhpcy5jbGVhcigpOworICAgIH0sCisKKyAgICBfc2hvd0RlbGV0ZUJ1dHRvbjog
ZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZpc2libGUgPSB0
cnVlOworICAgIH0sCisKICAgICBfZGVsZXRlQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQogICAg
IHsKICAgICAgICAgdmFyIHNlbGVjdGVkQ29va2llID0gdGhpcy5fY29va2llc1RhYmxlLnNlbGVj
dGVkQ29va2llKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nv
b2tpZXNUYWJsZS5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvQ29va2llc1RhYmxlLmpzCShyZXZpc2lvbiAxNDY4NzkpDQorKysgU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVzVGFibGUuanMJKHdvcmtpbmcgY29weSkN
CkBAIC0zMyw4ICszMyw5IEBADQogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5WaWV3fQogICog
QHBhcmFtIHtib29sZWFufSBleHBhbmRhYmxlCiAgKiBAcGFyYW0ge2Z1bmN0aW9uKCk9fSByZWZy
ZXNoQ2FsbGJhY2sKKyAqIEBwYXJhbSB7ZnVuY3Rpb24oKT19IHNlbGVjdGVkQ2FsbGJhY2sKICAq
LwotV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZSA9IGZ1bmN0aW9uKGV4cGFuZGFibGUsIHJlZnJl
c2hDYWxsYmFjaykKK1dlYkluc3BlY3Rvci5Db29raWVzVGFibGUgPSBmdW5jdGlvbihleHBhbmRh
YmxlLCByZWZyZXNoQ2FsbGJhY2ssIHNlbGVjdGVkQ2FsbGJhY2spCiB7CiAgICAgV2ViSW5zcGVj
dG9yLlZpZXcuY2FsbCh0aGlzKTsKICAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gImZpbGwi
OwpAQCAtNTMsOSArNTQsMTggQEANCiAgICAgICAgIHtpZDogInNlY3VyZSIsIHRpdGxlOiBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIlNlY3VyZSIpLCBzb3J0YWJsZTogdHJ1ZSwgYWxpZ246IFdlYklu
c3BlY3Rvci5EYXRhR3JpZC5BbGlnbi5DZW50ZXIsIHdpZHRoOiAiNyUifQogICAgIF07CiAKLSAg
ICB0aGlzLl9kYXRhR3JpZCA9IG5ldyBXZWJJbnNwZWN0b3IuRGF0YUdyaWQoY29sdW1ucywgbnVs
bCwgcmVhZE9ubHkgPyBudWxsIDogdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0aGlzKSwgcmVm
cmVzaENhbGxiYWNrKTsKKyAgICBpZiAocmVhZE9ubHkpCisgICAgICAgIHRoaXMuX2RhdGFHcmlk
ID0gbmV3IFdlYkluc3BlY3Rvci5EYXRhR3JpZChjb2x1bW5zLCBudWxsLCBudWxsLCByZWZyZXNo
Q2FsbGJhY2spOworICAgIGVsc2UgeworICAgICAgICB0aGlzLl9kYXRhR3JpZCA9IG5ldyBXZWJJ
bnNwZWN0b3IuRGF0YUdyaWQoY29sdW1ucyk7CisgICAgICAgIHRoaXMuX2RhdGFHcmlkLmVsZW1l
bnQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLCB0aGlzLl9oYW5kbGVDb250ZXh0TWVu
dUV2ZW50LmJpbmQodGhpcyksIHRydWUpOworICAgIH0KKwogICAgIHRoaXMuX2RhdGFHcmlkLmFk
ZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLkV2ZW50cy5Tb3J0aW5nQ2hhbmdl
ZCwgdGhpcy5fcmVidWlsZFRhYmxlLCB0aGlzKTsKIAorICAgIGlmIChzZWxlY3RlZENhbGxiYWNr
KQorICAgICAgICB0aGlzLl9kYXRhR3JpZC5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5E
YXRhR3JpZC5FdmVudHMuU2VsZWN0ZWROb2RlLCBzZWxlY3RlZENhbGxiYWNrLCB0aGlzKTsKKwog
ICAgIHRoaXMuX25leHRTZWxlY3RlZENvb2tpZSA9IC8qKiBAdHlwZSB7P1dlYkluc3BlY3Rvci5D
b29raWV9ICovIChudWxsKTsKIAogICAgIHRoaXMuX2RhdGFHcmlkLnNob3codGhpcy5lbGVtZW50
KTsKQEAgLTY5LDcgKzc5LDQ0IEBADQogICAgICAgICAgICAgdGhpcy5fZGF0YUdyaWQudXBkYXRl
V2lkdGhzKCk7CiAgICAgfSwKIAotICAgIC8qCisgICAgLyoqCisgICAgICogQHBhcmFtIHs/c3Ry
aW5nfSBkb21haW4KKyAgICAgKi8KKyAgICBfY2xlYXJBbmRSZWZyZXNoOiBmdW5jdGlvbihkb21h
aW4pCisgICAgeworICAgICAgICB0aGlzLmNsZWFyKGRvbWFpbik7CisgICAgICAgIGlmICh0aGlz
Ll9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAgICAgICB0aGlzLl9yZWZyZXNoQ2FsbGJhY2soKTsK
KyAgICB9LAorCisgICAgX2hhbmRsZUNvbnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQor
ICAgIHsKKyAgICAgICAgdmFyIGdyaWROb2RlID0gdGhpcy5fZGF0YUdyaWQuZGF0YUdyaWROb2Rl
RnJvbU5vZGUoZXZlbnQudGFyZ2V0KTsKKworICAgICAgICBpZiAoIWdyaWROb2RlKQorICAgICAg
ICAgICAgcmV0dXJuOworCisgICAgICAgIHZhciBjb250ZXh0TWVudSA9IG5ldyBXZWJJbnNwZWN0
b3IuQ29udGV4dE1lbnUoZXZlbnQpOworICAgICAgICB2YXIgY29va2llID0gZ3JpZE5vZGUuY29v
a2llOworCisgICAgICAgIGlmICh0aGlzLl9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAgICAgICBj
b250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVmcmVzaCIpLCB0
aGlzLl9yZWZyZXNoQ2FsbGJhY2spOworCisgICAgICAgIGlmIChjb29raWUpIHsKKyAgICAgICAg
ICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJEZWxldGUi
KSwgdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0aGlzLCBncmlkTm9kZSkpOworICAgICAgICAg
ICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisgICAgICAgICAgICB2YXIgY29va2ll
RG9tYWluID0gY29va2llLmRvbWFpbigpOworICAgICAgICAgICAgCisgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZyhXZWJJbnNwZWN0b3IudXNl
TG93ZXJDYXNlTWVudVRpdGxlcygpID8gIkNsZWFyIGFsbCBmcm9tIFwiJXNcIiIgOiAiQ2xlYXIg
QWxsIGZyb20gXCIlc1wiIiwgY29va2llRG9tYWluKSwgdGhpcy5fY2xlYXJBbmRSZWZyZXNoLmJp
bmQodGhpcywgY29va2llRG9tYWluKSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
SXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoV2ViSW5zcGVjdG9yLnVzZUxvd2VyQ2FzZU1lbnVU
aXRsZXMoKSA/ICJDbGVhciBhbGwiIDogIkNsZWFyIEFsbCIpLCB0aGlzLl9jbGVhckFuZFJlZnJl
c2guYmluZCh0aGlzLCAiIikpOworCisgICAgICAgIGNvbnRleHRNZW51LnNob3coKTsKKyAgICB9
LAorCisgICAgLyoqCiAgICAgICogQHBhcmFtIHshQXJyYXkuPCFXZWJJbnNwZWN0b3IuQ29va2ll
Pn0gY29va2llcwogICAgICAqLwogICAgIHNldENvb2tpZXM6IGZ1bmN0aW9uKGNvb2tpZXMpCkBA
IC05NSw2ICsxNDIsMjIgQEANCiAgICAgICAgIHJldHVybiBub2RlID8gbm9kZS5jb29raWUgOiBu
dWxsOwogICAgIH0sCiAKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge3N0cmluZz19IGRvbWFpbgor
ICAgICAqLworICAgIGNsZWFyOiBmdW5jdGlvbihkb21haW4pCisgICAgeworICAgICAgICB2YXIg
Y29va2llcywgaiwgY29va2llQ291bnQ7CisgICAgICAgIGZvciAodmFyIGkgPSAwLCBsZW5ndGgg
PSB0aGlzLl9kYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgKytpKQorICAgICAgICB7CisgICAgICAg
ICAgICBjb29raWVzID0gdGhpcy5fZGF0YVtpXS5jb29raWVzOworICAgICAgICAgICAgZm9yIChq
ID0gMCwgY29va2llQ291bnQgPSBjb29raWVzLmxlbmd0aDsgaiA8IGNvb2tpZUNvdW50OyArK2op
IHsKKyAgICAgICAgICAgICAgICBpZiAoIWRvbWFpbiB8fCBjb29raWVzW2pdLmRvbWFpbigpID09
PSBkb21haW4pCisgICAgICAgICAgICAgICAgICAgIGNvb2tpZXNbal0ucmVtb3ZlKCk7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKyAgICB9LAorCiAgICAgX3JlYnVpbGRUYWJsZTogZnVuY3Rp
b24oKQogICAgIHsKICAgICAgICAgdmFyIHNlbGVjdGVkQ29va2llID0gdGhpcy5fbmV4dFNlbGVj
dGVkQ29va2llIHx8IHRoaXMuc2VsZWN0ZWRDb29raWUoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VzUGFuZWwuanMNCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBT
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzCShyZXZp
c2lvbiAxNDY4NzkpDQorKysgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNv
dXJjZXNQYW5lbC5qcwkod29ya2luZyBjb3B5KQ0KQEAgLTUxMyw2ICs1MTMsMTQgQEANCiAgICAg
ICAgIHRoaXMuX2lubmVyU2hvd1ZpZXcodmlldyk7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAq
IEBwYXJhbSB7c3RyaW5nfSBjb29raWVEb21haW4KKyAgICAgKi8KKyAgICBjbGVhckNvb2tpZXM6
IGZ1bmN0aW9uKGNvb2tpZURvbWFpbikKKyAgICB7CisgICAgICAgIHRoaXMuX2Nvb2tpZVZpZXdz
W2Nvb2tpZURvbWFpbl0uY2xlYXIoKTsKKyAgICB9LAorCiAgICAgc2hvd0FwcGxpY2F0aW9uQ2Fj
aGU6IGZ1bmN0aW9uKGZyYW1lSWQpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX2FwcGxpY2F0
aW9uQ2FjaGVWaWV3c1tmcmFtZUlkXSkKQEAgLTE5MzksNiArMTk0NywzMCBAQA0KICAgICAgICAg
cmV0dXJuICJjb29raWVzOi8vIiArIHRoaXMuX2Nvb2tpZURvbWFpbjsKICAgICB9LAogCisgICAg
b25hdHRhY2g6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIFdlYkluc3BlY3Rvci5CYXNlU3Rv
cmFnZVRyZWVFbGVtZW50LnByb3RvdHlwZS5vbmF0dGFjaC5jYWxsKHRoaXMpOworICAgICAgICB0
aGlzLmxpc3RJdGVtRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJjb250ZXh0bWVudSIsIHRoaXMu
X2hhbmRsZUNvbnRleHRNZW51RXZlbnQuYmluZCh0aGlzKSwgdHJ1ZSk7CisgICAgfSwKKworICAg
IC8qKgorICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50CisgICAgICovCisgICAgX2hhbmRsZUNv
bnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdmFyIGNvbnRl
eHRNZW51ID0gbmV3IFdlYkluc3BlY3Rvci5Db250ZXh0TWVudShldmVudCk7CisgICAgICAgIGNv
bnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDbGVhciIpLCB0aGlz
Ll9jbGVhckNvb2tpZXMuYmluZCh0aGlzKSk7CisgICAgICAgIGNvbnRleHRNZW51LnNob3coKTsK
KyAgICB9LAorCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGRvbWFpbgorICAgICAq
LworICAgIF9jbGVhckNvb2tpZXM6IGZ1bmN0aW9uKGRvbWFpbikKKyAgICB7CisgICAgICAgIHRo
aXMuX3N0b3JhZ2VQYW5lbC5jbGVhckNvb2tpZXModGhpcy5fY29va2llRG9tYWluKTsKKyAgICB9
LAorCiAgICAgb25zZWxlY3Q6IGZ1bmN0aW9uKHNlbGVjdGVkQnlVc2VyKQogICAgIHsKICAgICAg
ICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBlLm9uc2VsZWN0
LmNhbGwodGhpcywgc2VsZWN0ZWRCeVVzZXIpOwpJbmRleDogU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC90cmVlb3V0bGluZS5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvdHJlZW91dGxpbmUuanMJKHJldmlzaW9uIDE0Njg3OSkN
CisrKyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3RyZWVvdXRsaW5lLmpzCSh3
b3JraW5nIGNvcHkpDQpAQCAtMjgsNiArMjgsNyBAQA0KIAogLyoqCiAgKiBAY29uc3RydWN0b3IK
KyAqIEBwYXJhbSB7RWxlbWVudH0gbGlzdE5vZGUKICAqIEBwYXJhbSB7Ym9vbGVhbj19IG5vbkZv
Y3VzYWJsZQogICovCiBmdW5jdGlvbiBUcmVlT3V0bGluZShsaXN0Tm9kZSwgbm9uRm9jdXNhYmxl
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195118</attachid>
            <date>2013-03-26 10:52:22 -0700</date>
            <delta_ts>2013-03-27 07:44:15 -0700</delta_ts>
            <desc>Plumb cookie clearing throughout the Resources Cookie tree and views - post review 3</desc>
            <filename>clear-cookies-2013-3-25-post-review-3.patch</filename>
            <type>text/plain</type>
            <size>12343</size>
            <attacher name="PhistucK">phistuck</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZw0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsMyArMSw1MyBAQA0KKzIwMTMtMDMtMjYgIFBo
aXN0dWNLICA8cGhpc3R1Y2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFBsdW1iIGFuZCBleHBvc2UgY29va2llIGNsZWFyaW5nIG9wdGlvbnMgdGhyb3VnaG91dCB0aGUg
UmVzb3VyY2VzIENvb2tpZXMgdHJlZSBhbmQgdmlld3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MTQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorICAgICAgICBBZGRlZCBjb29r
aWUgY2xlYXJpbmcgYnV0dG9ucyBhbmQgY29udGV4dCBtZW51IG9wdGlvbnMKKyAgICAgICAgdGhy
b3VnaG91dCB0aGUgdHJlZSBhbmQgdmlld3MuCisgICAgICAgIERyaXZlIGJ5IC0KKyAgICAgICAg
LSBNYWRlIHN1cmUgdGhlIGRlbGV0ZSBidXR0b24gaXMgb25seSB2aXNpYmxlCisgICAgICAgIHdo
ZW4gYSBjb29raWUgaXMgc2VsZWN0ZWQuCisgICAgICAgIC0gRml4ZWQgYSB3cm9uZyBKU0RvYyBj
b21tZW50LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcu
anM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3KToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLnN0YXR1c0Jhckl0ZW1zKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLl91cGRhdGVXaXRo
Q29va2llcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5jbGVhcik6CisgICAgICAgIEFkZGVkLiBDbGVhcnMgdGhlIGVudGlyZSBjb29raWUgdmlldy4K
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlLl9jbGVhckJ1
dHRvbkNsaWNrZWQpOgorICAgICAgICBBZGRlZC4gRGl0dG8gKHdoZW4gY2xpY2tpbmcgb24gdGhl
IGJ1dHRvbikuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNWaWV3LnByb3RvdHlw
ZS5fc2hvd0RlbGV0ZUJ1dHRvbik6CisgICAgICAgIEFkZGVkLiBTaG93cyB0aGUgZGVsZXRlIGJ1
dHRvbiB3aGVuIHNlbGVjdGluZyBhIGNvb2tpZSByb3cuCisgICAgICAgICogaW5zcGVjdG9yL0Nv
b2tpZXNUYWJsZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZS5wcm90b3R5cGUuX2NsZWFyQW5kUmVmcmVz
aCk6CisgICAgICAgIEFkZGVkLiBDbGVhcnMgdGhlIGNvb2tpZXMgb2YgdGhlIGN1cnJlbnQgdGFi
bGUgYW5kIHVwZGF0ZXMgaXQuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlLnBy
b3RvdHlwZS5faGFuZGxlQ29udGV4dE1lbnVFdmVudCk6CisgICAgICAgIEFkZGVkLiBNYW5hZ2Vz
IHRoZSBjb250ZXh0IG1lbnUgd2l0aGluIHRoZSB0YWJsZS4KKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5Db29raWVzVGFibGUucHJvdG90eXBlLmNsZWFyKToKKyAgICAgICAgQWRkZWQuIENsZWFycyB0
aGUgY29va2llcyBvZiB0aGUgY3VycmVudCB0YWJsZS4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5D
b29raWVzVGFibGUucHJvdG90eXBlLnNldENvb2tpZXMpOgorICAgICAgICAgRml4ZWQgYSB3cm9u
ZyBKU0RvYyBjb21tZW50IHN0cnVjdHVyZS4KKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L1Jlc291cmNlc1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVs
LnByb3RvdHlwZS5jbGVhckNvb2tpZXMpOgorICAgICAgICBBZGRlZC4gQ2xlYXJzIHRoZSBjb29r
aWVzIG9mIHRoZSBnaXZlbiBkb21haW4gdmlldy4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29r
aWVUcmVlRWxlbWVudC5wcm90b3R5cGUub25hdHRhY2gpOgorICAgICAgICBBZGRlZC4gQWRkcyBh
IGNvbnRleHRtZW51IGhhbmRsZXIuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVs
ZW1lbnQucHJvdG90eXBlLl9oYW5kbGVDb250ZXh0TWVudUV2ZW50KToKKyAgICAgICAgQWRkZWQu
IE1hbmFnZXMgdGhlIGNvbnRleHQgbWVudSB3aXRoaW4gY29va2llIHRyZWUuCisgICAgICAgIChX
ZWJJbnNwZWN0b3IuQ29va2llVHJlZUVsZW1lbnQucHJvdG90eXBlLl9jbGVhckNvb2tpZXMpOgor
ICAgICAgICBBZGRlZC4gQ2xlYXJzIHRoZSBjb29raWVzIG9mIHRoZSB2aWV3IG9mIHRoZSB0cmVl
IGl0ZW0uCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC90cmVlb3V0bGluZS5qczoKKyAg
ICAgICAgKFRyZWVPdXRsaW5lKTogRml4ZWQgYSB3cm9uZyBKU0RvYyBjb21tZW50LgorCisgICAg
ICAgICogRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzOgorICAgICAgICBBZGRlZCBz
dHJpbmdzIGZvciB0aGUgY29udGV4dCBtZW51IG9wdGlvbnMuCisKIDIwMTMtMDMtMjYgIEFuZHJl
aSBCdWN1ciAgPGFidWN1ckBhZG9iZS5jb20+CiAKICAgICAgICAgVXNlIERPTSBvcmRlcmluZyBm
b3IgbGlzdCBjb3VudHMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHBy
b2ovbG9jYWxpemVkU3RyaW5ncy5qcwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJD
b3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwkod29ya2luZyBjb3B5KQ0KQEAg
LTEwNSw2ICsxMDUsMTAgQEANCiBsb2NhbGl6ZWRTdHJpbmdzWyJDYWxsIl0gPSAiQ2FsbCI7CiBs
b2NhbGl6ZWRTdHJpbmdzWyJDYWxscyJdID0gIkNhbGxzIjsKIGxvY2FsaXplZFN0cmluZ3NbIkNh
bm5vdCBmaW5kIGNvcnJlc3BvbmRpbmcgaGVhcCBzbmFwc2hvdCBub2RlIl0gPSAiQ2Fubm90IGZp
bmQgY29ycmVzcG9uZGluZyBoZWFwIHNuYXBzaG90IG5vZGUiOworbG9jYWxpemVkU3RyaW5nc1si
Q2xlYXIgQWxsIl0gPSAiQ2xlYXIgQWxsIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIGFsbCJd
ID0gIkNsZWFyIGFsbCI7Citsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBhbGwgZnJvbSBcIiVzXCIi
XSA9ICJDbGVhciBhbGwgZnJvbSBcIiVzXCIiOworbG9jYWxpemVkU3RyaW5nc1siQ2xlYXIgQWxs
IGZyb20gXCIlc1wiIl0gPSAiQ2xlYXIgQWxsIGZyb20gXCIlc1wiIjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkNsZWFyIGFsbCBwcm9maWxlcy4iXSA9ICJDbGVhciBhbGwgcHJvZmlsZXMuIjsKIGxvY2Fs
aXplZFN0cmluZ3NbIkNsZWFyIEJyb3dzZXIgQ2FjaGUiXSA9ICJDbGVhciBCcm93c2VyIENhY2hl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIkNsZWFyIGJyb3dzZXIgY2FjaGUiXSA9ICJDbGVhciBicm93
c2VyIGNhY2hlIjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29v
a2llSXRlbXNWaWV3LmpzDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9Db29raWVJdGVtc1ZpZXcuanMJKHJldmlzaW9uIDE0Njg3OSkNCisrKyBTb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZUl0ZW1zVmlldy5qcwkod29ya2lu
ZyBjb3B5KQ0KQEAgLTQxLDYgKzQxLDEwIEBADQogICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi52aXNp
YmxlID0gZmFsc2U7CiAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNs
aWNrIiwgdGhpcy5fZGVsZXRlQnV0dG9uQ2xpY2tlZCwgdGhpcyk7CiAKKyAgICB0aGlzLl9jbGVh
ckJ1dHRvbiA9IG5ldyBXZWJJbnNwZWN0b3IuU3RhdHVzQmFyQnV0dG9uKFdlYkluc3BlY3Rvci5V
SVN0cmluZygiQ2xlYXIiKSwgImNsZWFyLXN0b3JhZ2Utc3RhdHVzLWJhci1pdGVtIik7CisgICAg
dGhpcy5fY2xlYXJCdXR0b24udmlzaWJsZSA9IGZhbHNlOworICAgIHRoaXMuX2NsZWFyQnV0dG9u
LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgdGhpcy5fY2xlYXJCdXR0b25DbGlja2VkLCB0aGlz
KTsKKwogICAgIHRoaXMuX3JlZnJlc2hCdXR0b24gPSBuZXcgV2ViSW5zcGVjdG9yLlN0YXR1c0Jh
ckJ1dHRvbihXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlZnJlc2giKSwgInJlZnJlc2gtc3RvcmFn
ZS1zdGF0dXMtYmFyLWl0ZW0iKTsKICAgICB0aGlzLl9yZWZyZXNoQnV0dG9uLmFkZEV2ZW50TGlz
dGVuZXIoImNsaWNrIiwgdGhpcy5fcmVmcmVzaEJ1dHRvbkNsaWNrZWQsIHRoaXMpOwogCkBAIC01
Niw3ICs2MCw3IEBADQogV2ViSW5zcGVjdG9yLkNvb2tpZUl0ZW1zVmlldy5wcm90b3R5cGUgPSB7
CiAgICAgZ2V0IHN0YXR1c0Jhckl0ZW1zKCkKICAgICB7Ci0gICAgICAgIHJldHVybiBbdGhpcy5f
cmVmcmVzaEJ1dHRvbi5lbGVtZW50LCB0aGlzLl9kZWxldGVCdXR0b24uZWxlbWVudF07CisgICAg
ICAgIHJldHVybiBbdGhpcy5fcmVmcmVzaEJ1dHRvbi5lbGVtZW50LCB0aGlzLl9jbGVhckJ1dHRv
bi5lbGVtZW50LCB0aGlzLl9kZWxldGVCdXR0b24uZWxlbWVudF07CiAgICAgfSwKIAogICAgIHdh
c1Nob3duOiBmdW5jdGlvbigpCkBAIC04NSw2ICs4OSw3IEBADQogICAgICAgICBpZiAoIXRoaXMu
X2Nvb2tpZXMubGVuZ3RoKSB7CiAgICAgICAgICAgICAvLyBOb3RoaW5nIHRvIHNob3cuCiAgICAg
ICAgICAgICB0aGlzLl9lbXB0eVZpZXcuc2hvdyh0aGlzLmVsZW1lbnQpOworICAgICAgICAgICAg
dGhpcy5fY2xlYXJCdXR0b24udmlzaWJsZSA9IGZhbHNlOwogICAgICAgICAgICAgdGhpcy5fZGVs
ZXRlQnV0dG9uLnZpc2libGUgPSBmYWxzZTsKICAgICAgICAgICAgIGlmICh0aGlzLl9jb29raWVz
VGFibGUpCiAgICAgICAgICAgICAgICAgdGhpcy5fY29va2llc1RhYmxlLmRldGFjaCgpOwpAQCAt
OTIsNyArOTcsNyBAQA0KICAgICAgICAgfQogCiAgICAgICAgIGlmICghdGhpcy5fY29va2llc1Rh
YmxlKQotICAgICAgICAgICAgdGhpcy5fY29va2llc1RhYmxlID0gaXNBZHZhbmNlZCA/IG5ldyBX
ZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlKGZhbHNlLCB0aGlzLl91cGRhdGUuYmluZCh0aGlzKSkg
OiBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZUNvb2tpZXNUYWJsZSgpOworICAgICAgICAgICAgdGhp
cy5fY29va2llc1RhYmxlID0gaXNBZHZhbmNlZCA/IG5ldyBXZWJJbnNwZWN0b3IuQ29va2llc1Rh
YmxlKGZhbHNlLCB0aGlzLl91cGRhdGUuYmluZCh0aGlzKSwgdGhpcy5fc2hvd0RlbGV0ZUJ1dHRv
bi5iaW5kKHRoaXMpKSA6IG5ldyBXZWJJbnNwZWN0b3IuU2ltcGxlQ29va2llc1RhYmxlKCk7CiAK
ICAgICAgICAgdGhpcy5fY29va2llc1RhYmxlLnNldENvb2tpZXModGhpcy5fY29va2llcyk7CiAg
ICAgICAgIHRoaXMuX2VtcHR5Vmlldy5kZXRhY2goKTsKQEAgLTEwMCw3ICsxMDUsOSBAQA0KICAg
ICAgICAgaWYgKGlzQWR2YW5jZWQpIHsKICAgICAgICAgICAgIHRoaXMuX3RyZWVFbGVtZW50LnN1
YnRpdGxlID0gU3RyaW5nLnNwcmludGYoV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCIlZCBjb29raWVz
ICglcykiKSwgdGhpcy5fY29va2llcy5sZW5ndGgsCiAgICAgICAgICAgICAgICAgTnVtYmVyLmJ5
dGVzVG9TdHJpbmcodGhpcy5fdG90YWxTaXplKSk7Ci0gICAgICAgICAgICB0aGlzLl9kZWxldGVC
dXR0b24udmlzaWJsZSA9IHRydWU7CisgICAgICAgICAgICB0aGlzLl9jbGVhckJ1dHRvbi52aXNp
YmxlID0gdHJ1ZTsKKyAgICAgICAgICAgIGlmICh0aGlzLl9jb29raWVzVGFibGUuc2VsZWN0ZWRD
b29raWUoKSkKKyAgICAgICAgICAgICAgICB0aGlzLl9kZWxldGVCdXR0b24udmlzaWJsZSA9IHRy
dWU7CiAgICAgICAgIH0KICAgICB9LAogCkBAIC0xMzgsNiArMTQ1LDIyIEBADQogICAgICAgICBy
ZXR1cm4gY29va2llczsKICAgICB9LAogCisgICAgY2xlYXI6IGZ1bmN0aW9uKCkKKyAgICB7Cisg
ICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZS5jbGVhcigpOworICAgICAgICB0aGlzLl91cGRhdGUo
KTsKKyAgICB9LAorCisgICAgX2NsZWFyQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgdGhpcy5jbGVhcigpOworICAgIH0sCisKKyAgICBfc2hvd0RlbGV0ZUJ1dHRvbjog
ZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZpc2libGUgPSB0
cnVlOworICAgIH0sCisKICAgICBfZGVsZXRlQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oKQogICAg
IHsKICAgICAgICAgdmFyIHNlbGVjdGVkQ29va2llID0gdGhpcy5fY29va2llc1RhYmxlLnNlbGVj
dGVkQ29va2llKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nv
b2tpZXNUYWJsZS5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvQ29va2llc1RhYmxlLmpzCShyZXZpc2lvbiAxNDY4NzkpDQorKysgU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVzVGFibGUuanMJKHdvcmtpbmcgY29weSkN
CkBAIC0zMyw4ICszMyw5IEBADQogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5WaWV3fQogICog
QHBhcmFtIHtib29sZWFufSBleHBhbmRhYmxlCiAgKiBAcGFyYW0ge2Z1bmN0aW9uKCk9fSByZWZy
ZXNoQ2FsbGJhY2sKKyAqIEBwYXJhbSB7ZnVuY3Rpb24oKT19IHNlbGVjdGVkQ2FsbGJhY2sKICAq
LwotV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZSA9IGZ1bmN0aW9uKGV4cGFuZGFibGUsIHJlZnJl
c2hDYWxsYmFjaykKK1dlYkluc3BlY3Rvci5Db29raWVzVGFibGUgPSBmdW5jdGlvbihleHBhbmRh
YmxlLCByZWZyZXNoQ2FsbGJhY2ssIHNlbGVjdGVkQ2FsbGJhY2spCiB7CiAgICAgV2ViSW5zcGVj
dG9yLlZpZXcuY2FsbCh0aGlzKTsKICAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gImZpbGwi
OwpAQCAtNTMsOSArNTQsMTggQEANCiAgICAgICAgIHtpZDogInNlY3VyZSIsIHRpdGxlOiBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIlNlY3VyZSIpLCBzb3J0YWJsZTogdHJ1ZSwgYWxpZ246IFdlYklu
c3BlY3Rvci5EYXRhR3JpZC5BbGlnbi5DZW50ZXIsIHdpZHRoOiAiNyUifQogICAgIF07CiAKLSAg
ICB0aGlzLl9kYXRhR3JpZCA9IG5ldyBXZWJJbnNwZWN0b3IuRGF0YUdyaWQoY29sdW1ucywgbnVs
bCwgcmVhZE9ubHkgPyBudWxsIDogdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0aGlzKSwgcmVm
cmVzaENhbGxiYWNrKTsKKyAgICBpZiAocmVhZE9ubHkpCisgICAgICAgIHRoaXMuX2RhdGFHcmlk
ID0gbmV3IFdlYkluc3BlY3Rvci5EYXRhR3JpZChjb2x1bW5zLCBudWxsLCBudWxsLCByZWZyZXNo
Q2FsbGJhY2spOworICAgIGVsc2UgeworICAgICAgICB0aGlzLl9kYXRhR3JpZCA9IG5ldyBXZWJJ
bnNwZWN0b3IuRGF0YUdyaWQoY29sdW1ucyk7CisgICAgICAgIHRoaXMuX2RhdGFHcmlkLmVsZW1l
bnQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLCB0aGlzLl9oYW5kbGVDb250ZXh0TWVu
dUV2ZW50LmJpbmQodGhpcyksIHRydWUpOworICAgIH0KKwogICAgIHRoaXMuX2RhdGFHcmlkLmFk
ZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLkV2ZW50cy5Tb3J0aW5nQ2hhbmdl
ZCwgdGhpcy5fcmVidWlsZFRhYmxlLCB0aGlzKTsKIAorICAgIGlmIChzZWxlY3RlZENhbGxiYWNr
KQorICAgICAgICB0aGlzLl9kYXRhR3JpZC5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5E
YXRhR3JpZC5FdmVudHMuU2VsZWN0ZWROb2RlLCBzZWxlY3RlZENhbGxiYWNrLCB0aGlzKTsKKwog
ICAgIHRoaXMuX25leHRTZWxlY3RlZENvb2tpZSA9IC8qKiBAdHlwZSB7P1dlYkluc3BlY3Rvci5D
b29raWV9ICovIChudWxsKTsKIAogICAgIHRoaXMuX2RhdGFHcmlkLnNob3codGhpcy5lbGVtZW50
KTsKQEAgLTY5LDcgKzc5LDQ0IEBADQogICAgICAgICAgICAgdGhpcy5fZGF0YUdyaWQudXBkYXRl
V2lkdGhzKCk7CiAgICAgfSwKIAotICAgIC8qCisgICAgLyoqCisgICAgICogQHBhcmFtIHs/c3Ry
aW5nfSBkb21haW4KKyAgICAgKi8KKyAgICBfY2xlYXJBbmRSZWZyZXNoOiBmdW5jdGlvbihkb21h
aW4pCisgICAgeworICAgICAgICB0aGlzLmNsZWFyKGRvbWFpbik7CisgICAgICAgIGlmICh0aGlz
Ll9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAgICAgICB0aGlzLl9yZWZyZXNoQ2FsbGJhY2soKTsK
KyAgICB9LAorCisgICAgX2hhbmRsZUNvbnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQor
ICAgIHsKKyAgICAgICAgdmFyIGdyaWROb2RlID0gdGhpcy5fZGF0YUdyaWQuZGF0YUdyaWROb2Rl
RnJvbU5vZGUoZXZlbnQudGFyZ2V0KTsKKworICAgICAgICBpZiAoIWdyaWROb2RlKQorICAgICAg
ICAgICAgcmV0dXJuOworCisgICAgICAgIHZhciBjb250ZXh0TWVudSA9IG5ldyBXZWJJbnNwZWN0
b3IuQ29udGV4dE1lbnUoZXZlbnQpOworICAgICAgICB2YXIgY29va2llID0gZ3JpZE5vZGUuY29v
a2llOworCisgICAgICAgIGlmICh0aGlzLl9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAgICAgICBj
b250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVmcmVzaCIpLCB0
aGlzLl9yZWZyZXNoQ2FsbGJhY2spOworCisgICAgICAgIGlmIChjb29raWUpIHsKKyAgICAgICAg
ICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJEZWxldGUi
KSwgdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0aGlzLCBncmlkTm9kZSkpOworICAgICAgICAg
ICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisgICAgICAgICAgICB2YXIgY29va2ll
RG9tYWluID0gY29va2llLmRvbWFpbigpOworICAgICAgICAgICAgCisgICAgICAgICAgICBjb250
ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZyhXZWJJbnNwZWN0b3IudXNl
TG93ZXJDYXNlTWVudVRpdGxlcygpID8gIkNsZWFyIGFsbCBmcm9tIFwiJXNcIiIgOiAiQ2xlYXIg
QWxsIGZyb20gXCIlc1wiIiwgY29va2llRG9tYWluKSwgdGhpcy5fY2xlYXJBbmRSZWZyZXNoLmJp
bmQodGhpcywgY29va2llRG9tYWluKSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5k
SXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoV2ViSW5zcGVjdG9yLnVzZUxvd2VyQ2FzZU1lbnVU
aXRsZXMoKSA/ICJDbGVhciBhbGwiIDogIkNsZWFyIEFsbCIpLCB0aGlzLl9jbGVhckFuZFJlZnJl
c2guYmluZCh0aGlzLCBudWxsKSk7CisKKyAgICAgICAgY29udGV4dE1lbnUuc2hvdygpOworICAg
IH0sCisKKyAgICAvKioKICAgICAgKiBAcGFyYW0geyFBcnJheS48IVdlYkluc3BlY3Rvci5Db29r
aWU+fSBjb29raWVzCiAgICAgICovCiAgICAgc2V0Q29va2llczogZnVuY3Rpb24oY29va2llcykK
QEAgLTk1LDYgKzE0MiwyMSBAQA0KICAgICAgICAgcmV0dXJuIG5vZGUgPyBub2RlLmNvb2tpZSA6
IG51bGw7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gZG9tYWlu
CisgICAgICovCisgICAgY2xlYXI6IGZ1bmN0aW9uKGRvbWFpbikKKyAgICB7CisgICAgICAgIGZv
ciAodmFyIGkgPSAwLCBsZW5ndGggPSB0aGlzLl9kYXRhLmxlbmd0aDsgaSA8IGxlbmd0aDsgKytp
KQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgY29va2llcyA9IHRoaXMuX2RhdGFbaV0uY29v
a2llczsKKyAgICAgICAgICAgIGZvciAodmFyIGogPSAwLCBjb29raWVDb3VudCA9IGNvb2tpZXMu
bGVuZ3RoOyBqIDwgY29va2llQ291bnQ7ICsraikgeworICAgICAgICAgICAgICAgIGlmICghZG9t
YWluIHx8IGNvb2tpZXNbal0uZG9tYWluKCkgPT09IGRvbWFpbikKKyAgICAgICAgICAgICAgICAg
ICAgY29va2llc1tqXS5yZW1vdmUoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0s
CisKICAgICBfcmVidWlsZFRhYmxlOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICB2YXIgc2Vs
ZWN0ZWRDb29raWUgPSB0aGlzLl9uZXh0U2VsZWN0ZWRDb29raWUgfHwgdGhpcy5zZWxlY3RlZENv
b2tpZSgpOwpJbmRleDogU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJj
ZXNQYW5lbC5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvUmVzb3VyY2VzUGFuZWwuanMJKHJldmlzaW9uIDE0Njg3OSkNCisrKyBTb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzCSh3b3JraW5nIGNvcHkp
DQpAQCAtNTEzLDYgKzUxMywxNCBAQA0KICAgICAgICAgdGhpcy5faW5uZXJTaG93Vmlldyh2aWV3
KTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNvb2tpZURvbWFp
bgorICAgICAqLworICAgIGNsZWFyQ29va2llczogZnVuY3Rpb24oY29va2llRG9tYWluKQorICAg
IHsKKyAgICAgICAgdGhpcy5fY29va2llVmlld3NbY29va2llRG9tYWluXS5jbGVhcigpOworICAg
IH0sCisKICAgICBzaG93QXBwbGljYXRpb25DYWNoZTogZnVuY3Rpb24oZnJhbWVJZCkKICAgICB7
CiAgICAgICAgIGlmICghdGhpcy5fYXBwbGljYXRpb25DYWNoZVZpZXdzW2ZyYW1lSWRdKQpAQCAt
MTkzOSw2ICsxOTQ3LDMwIEBADQogICAgICAgICByZXR1cm4gImNvb2tpZXM6Ly8iICsgdGhpcy5f
Y29va2llRG9tYWluOwogICAgIH0sCiAKKyAgICBvbmF0dGFjaDogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBlLm9u
YXR0YWNoLmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMubGlzdEl0ZW1FbGVtZW50LmFkZEV2ZW50
TGlzdGVuZXIoImNvbnRleHRtZW51IiwgdGhpcy5faGFuZGxlQ29udGV4dE1lbnVFdmVudC5iaW5k
KHRoaXMpLCB0cnVlKTsKKyAgICB9LAorCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVudH0g
ZXZlbnQKKyAgICAgKi8KKyAgICBfaGFuZGxlQ29udGV4dE1lbnVFdmVudDogZnVuY3Rpb24oZXZl
bnQpCisgICAgeworICAgICAgICB2YXIgY29udGV4dE1lbnUgPSBuZXcgV2ViSW5zcGVjdG9yLkNv
bnRleHRNZW51KGV2ZW50KTsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIkNsZWFyIiksIHRoaXMuX2NsZWFyQ29va2llcy5iaW5kKHRoaXMpKTsK
KyAgICAgICAgY29udGV4dE1lbnUuc2hvdygpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBA
cGFyYW0ge3N0cmluZ30gZG9tYWluCisgICAgICovCisgICAgX2NsZWFyQ29va2llczogZnVuY3Rp
b24oZG9tYWluKQorICAgIHsKKyAgICAgICAgdGhpcy5fc3RvcmFnZVBhbmVsLmNsZWFyQ29va2ll
cyh0aGlzLl9jb29raWVEb21haW4pOworICAgIH0sCisKICAgICBvbnNlbGVjdDogZnVuY3Rpb24o
c2VsZWN0ZWRCeVVzZXIpCiAgICAgewogICAgICAgICBXZWJJbnNwZWN0b3IuQmFzZVN0b3JhZ2VU
cmVlRWxlbWVudC5wcm90b3R5cGUub25zZWxlY3QuY2FsbCh0aGlzLCBzZWxlY3RlZEJ5VXNlcik7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3RyZWVvdXRsaW5lLmpz
DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09DQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC90cmVl
b3V0bGluZS5qcwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvdHJlZW91dGxpbmUuanMJKHdvcmtpbmcgY29weSkNCkBAIC0yOCw2ICsyOCw3
IEBADQogCiAvKioKICAqIEBjb25zdHJ1Y3RvcgorICogQHBhcmFtIHtFbGVtZW50fSBsaXN0Tm9k
ZQogICogQHBhcmFtIHtib29sZWFuPX0gbm9uRm9jdXNhYmxlCiAgKi8KIGZ1bmN0aW9uIFRyZWVP
dXRsaW5lKGxpc3ROb2RlLCBub25Gb2N1c2FibGUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195322</attachid>
            <date>2013-03-27 07:44:15 -0700</date>
            <delta_ts>2013-03-27 23:33:10 -0700</delta_ts>
            <desc>Plumb cookie clearing throughout the Resources Cookie tree and views - post review 4</desc>
            <filename>clear-cookies-2013-3-25-post-review-4.patch</filename>
            <type>text/plain</type>
            <size>12286</size>
            <attacher name="PhistucK">phistuck</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZw0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsMyArMSw1MiBAQA0KKzIwMTMtMDMtMjYgIFBo
aXN0dWNLICA8cGhpc3R1Y2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFBsdW1iIGFuZCBleHBvc2UgY29va2llIGNsZWFyaW5nIG9wdGlvbnMgdGhyb3VnaG91dCB0aGUg
UmVzb3VyY2VzIENvb2tpZXMgdHJlZSBhbmQgdmlld3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MTQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgY29va2llIGNsZWFyaW5nIGJ1dHRvbnMgYW5k
IGNvbnRleHQgbWVudSBvcHRpb25zCisgICAgICAgIHRocm91Z2hvdXQgdGhlIHRyZWUgYW5kIHZp
ZXdzLgorICAgICAgICBEcml2ZSBieSAtCisgICAgICAgIC0gTWFkZSBzdXJlIHRoZSBkZWxldGUg
YnV0dG9uIGlzIG9ubHkgdmlzaWJsZQorICAgICAgICB3aGVuIGEgY29va2llIGlzIHNlbGVjdGVk
LgorICAgICAgICAtIEZpeGVkIGEgd3JvbmcgSlNEb2MgY29tbWVudC4KKworICAgICAgICAqIGlu
c3BlY3Rvci9mcm9udC1lbmQvQ29va2llSXRlbXNWaWV3LmpzOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkNvb2tpZUl0ZW1zVmlldyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llSXRlbXNW
aWV3LnByb3RvdHlwZS5zdGF0dXNCYXJJdGVtcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29v
a2llSXRlbXNWaWV3LnByb3RvdHlwZS5fdXBkYXRlV2l0aENvb2tpZXMpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLkNvb2tpZUl0ZW1zVmlldy5wcm90b3R5cGUuY2xlYXIpOgorICAgICAgICBBZGRl
ZC4gQ2xlYXJzIHRoZSBlbnRpcmUgY29va2llIHZpZXcuCisgICAgICAgIChXZWJJbnNwZWN0b3Iu
Q29va2llSXRlbXNWaWV3LnByb3RvdHlwZS5fY2xlYXJCdXR0b25DbGlja2VkKToKKyAgICAgICAg
QWRkZWQuIERpdHRvICh3aGVuIGNsaWNraW5nIG9uIHRoZSBidXR0b24pLgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLkNvb2tpZUl0ZW1zVmlldy5wcm90b3R5cGUuX3Nob3dEZWxldGVCdXR0b24pOgor
ICAgICAgICBBZGRlZC4gU2hvd3MgdGhlIGRlbGV0ZSBidXR0b24gd2hlbiBzZWxlY3RpbmcgYSBj
b29raWUgcm93LgorICAgICAgICAqIGluc3BlY3Rvci9Db29raWVzVGFibGUuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db29r
aWVzVGFibGUucHJvdG90eXBlLl9jbGVhckFuZFJlZnJlc2gpOgorICAgICAgICBBZGRlZC4gQ2xl
YXJzIHRoZSBjb29raWVzIG9mIHRoZSBjdXJyZW50IHRhYmxlIGFuZCB1cGRhdGVzIGl0LgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZS5wcm90b3R5cGUuX2hhbmRsZUNvbnRleHRN
ZW51RXZlbnQpOgorICAgICAgICBBZGRlZC4gTWFuYWdlcyB0aGUgY29udGV4dCBtZW51IHdpdGhp
biB0aGUgdGFibGUuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlLnByb3RvdHlw
ZS5jbGVhcik6CisgICAgICAgIEFkZGVkLiBDbGVhcnMgdGhlIGNvb2tpZXMgb2YgdGhlIGN1cnJl
bnQgdGFibGUuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llc1RhYmxlLnByb3RvdHlwZS5z
ZXRDb29raWVzKToKKyAgICAgICAgIEZpeGVkIGEgd3JvbmcgSlNEb2MgY29tbWVudCBzdHJ1Y3R1
cmUuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qczoKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQYW5lbC5wcm90b3R5cGUuY2xlYXJDb29raWVz
KToKKyAgICAgICAgQWRkZWQuIENsZWFycyB0aGUgY29va2llcyBvZiB0aGUgZ2l2ZW4gZG9tYWlu
IHZpZXcuCisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29va2llVHJlZUVsZW1lbnQucHJvdG90eXBl
Lm9uYXR0YWNoKToKKyAgICAgICAgQWRkZWQuIEFkZHMgYSBjb250ZXh0bWVudSBoYW5kbGVyLgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZVRyZWVFbGVtZW50LnByb3RvdHlwZS5faGFuZGxl
Q29udGV4dE1lbnVFdmVudCk6CisgICAgICAgIEFkZGVkLiBNYW5hZ2VzIHRoZSBjb250ZXh0IG1l
bnUgd2l0aGluIGNvb2tpZSB0cmVlLgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNvb2tpZVRyZWVF
bGVtZW50LnByb3RvdHlwZS5fY2xlYXJDb29raWVzKToKKyAgICAgICAgQWRkZWQuIENsZWFycyB0
aGUgY29va2llcyBvZiB0aGUgdmlldyBvZiB0aGUgdHJlZSBpdGVtLgorICAgICAgICAqIGluc3Bl
Y3Rvci9mcm9udC1lbmQvdHJlZW91dGxpbmUuanM6CisgICAgICAgIChUcmVlT3V0bGluZSk6IEZp
eGVkIGEgd3JvbmcgSlNEb2MgY29tbWVudC4KKworICAgICAgICAqIEVuZ2xpc2gubHByb2ovbG9j
YWxpemVkU3RyaW5ncy5qczoKKyAgICAgICAgQWRkZWQgc3RyaW5ncyBmb3IgdGhlIGNvbnRleHQg
bWVudSBvcHRpb25zLgorCiAyMDEzLTAzLTI2ICBBbmRyZWkgQnVjdXIgIDxhYnVjdXJAYWRvYmUu
Y29tPgogCiAgICAgICAgIFVzZSBET00gb3JkZXJpbmcgZm9yIGxpc3QgY291bnRzCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMNCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0NCi0tLSBTb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMJ
KHJldmlzaW9uIDE0Njg3OSkNCisrKyBTb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2Fs
aXplZFN0cmluZ3MuanMJKHdvcmtpbmcgY29weSkNCkBAIC0xMDUsNiArMTA1LDEwIEBADQogbG9j
YWxpemVkU3RyaW5nc1siQ2FsbCJdID0gIkNhbGwiOwogbG9jYWxpemVkU3RyaW5nc1siQ2FsbHMi
XSA9ICJDYWxscyI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW5ub3QgZmluZCBjb3JyZXNwb25kaW5n
IGhlYXAgc25hcHNob3Qgbm9kZSJdID0gIkNhbm5vdCBmaW5kIGNvcnJlc3BvbmRpbmcgaGVhcCBz
bmFwc2hvdCBub2RlIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIEFsbCJdID0gIkNsZWFyIEFs
bCI7Citsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBhbGwiXSA9ICJDbGVhciBhbGwiOworbG9jYWxp
emVkU3RyaW5nc1siQ2xlYXIgYWxsIGZyb20gXCIlc1wiIl0gPSAiQ2xlYXIgYWxsIGZyb20gXCIl
c1wiIjsKK2xvY2FsaXplZFN0cmluZ3NbIkNsZWFyIEFsbCBmcm9tIFwiJXNcIiJdID0gIkNsZWFy
IEFsbCBmcm9tIFwiJXNcIiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBhbGwgcHJvZmlsZXMu
Il0gPSAiQ2xlYXIgYWxsIHByb2ZpbGVzLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDbGVhciBCcm93
c2VyIENhY2hlIl0gPSAiQ2xlYXIgQnJvd3NlciBDYWNoZSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJD
bGVhciBicm93c2VyIGNhY2hlIl0gPSAiQ2xlYXIgYnJvd3NlciBjYWNoZSI7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nvb2tpZUl0ZW1zVmlldy5qcw0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29va2llSXRlbXNW
aWV3LmpzCShyZXZpc2lvbiAxNDY4NzkpDQorKysgU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9Db29raWVJdGVtc1ZpZXcuanMJKHdvcmtpbmcgY29weSkNCkBAIC00MSw2ICs0MSwx
MCBAQA0KICAgICB0aGlzLl9kZWxldGVCdXR0b24udmlzaWJsZSA9IGZhbHNlOwogICAgIHRoaXMu
X2RlbGV0ZUJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX2RlbGV0ZUJ1dHRv
bkNsaWNrZWQsIHRoaXMpOwogCisgICAgdGhpcy5fY2xlYXJCdXR0b24gPSBuZXcgV2ViSW5zcGVj
dG9yLlN0YXR1c0JhckJ1dHRvbihXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNsZWFyIiksICJjbGVh
ci1zdG9yYWdlLXN0YXR1cy1iYXItaXRlbSIpOworICAgIHRoaXMuX2NsZWFyQnV0dG9uLnZpc2li
bGUgPSBmYWxzZTsKKyAgICB0aGlzLl9jbGVhckJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGlj
ayIsIHRoaXMuX2NsZWFyQnV0dG9uQ2xpY2tlZCwgdGhpcyk7CisKICAgICB0aGlzLl9yZWZyZXNo
QnV0dG9uID0gbmV3IFdlYkluc3BlY3Rvci5TdGF0dXNCYXJCdXR0b24oV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJSZWZyZXNoIiksICJyZWZyZXNoLXN0b3JhZ2Utc3RhdHVzLWJhci1pdGVtIik7CiAg
ICAgdGhpcy5fcmVmcmVzaEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIHRoaXMuX3Jl
ZnJlc2hCdXR0b25DbGlja2VkLCB0aGlzKTsKIApAQCAtNTYsNyArNjAsNyBAQA0KIFdlYkluc3Bl
Y3Rvci5Db29raWVJdGVtc1ZpZXcucHJvdG90eXBlID0gewogICAgIGdldCBzdGF0dXNCYXJJdGVt
cygpCiAgICAgewotICAgICAgICByZXR1cm4gW3RoaXMuX3JlZnJlc2hCdXR0b24uZWxlbWVudCwg
dGhpcy5fZGVsZXRlQnV0dG9uLmVsZW1lbnRdOworICAgICAgICByZXR1cm4gW3RoaXMuX3JlZnJl
c2hCdXR0b24uZWxlbWVudCwgdGhpcy5fY2xlYXJCdXR0b24uZWxlbWVudCwgdGhpcy5fZGVsZXRl
QnV0dG9uLmVsZW1lbnRdOwogICAgIH0sCiAKICAgICB3YXNTaG93bjogZnVuY3Rpb24oKQpAQCAt
ODUsNiArODksNyBAQA0KICAgICAgICAgaWYgKCF0aGlzLl9jb29raWVzLmxlbmd0aCkgewogICAg
ICAgICAgICAgLy8gTm90aGluZyB0byBzaG93LgogICAgICAgICAgICAgdGhpcy5fZW1wdHlWaWV3
LnNob3codGhpcy5lbGVtZW50KTsKKyAgICAgICAgICAgIHRoaXMuX2NsZWFyQnV0dG9uLnZpc2li
bGUgPSBmYWxzZTsKICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUJ1dHRvbi52aXNpYmxlID0gZmFs
c2U7CiAgICAgICAgICAgICBpZiAodGhpcy5fY29va2llc1RhYmxlKQogICAgICAgICAgICAgICAg
IHRoaXMuX2Nvb2tpZXNUYWJsZS5kZXRhY2goKTsKQEAgLTkyLDcgKzk3LDcgQEANCiAgICAgICAg
IH0KIAogICAgICAgICBpZiAoIXRoaXMuX2Nvb2tpZXNUYWJsZSkKLSAgICAgICAgICAgIHRoaXMu
X2Nvb2tpZXNUYWJsZSA9IGlzQWR2YW5jZWQgPyBuZXcgV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJs
ZShmYWxzZSwgdGhpcy5fdXBkYXRlLmJpbmQodGhpcykpIDogbmV3IFdlYkluc3BlY3Rvci5TaW1w
bGVDb29raWVzVGFibGUoKTsKKyAgICAgICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZSA9IGlzQWR2
YW5jZWQgPyBuZXcgV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZShmYWxzZSwgdGhpcy5fdXBkYXRl
LmJpbmQodGhpcyksIHRoaXMuX3Nob3dEZWxldGVCdXR0b24uYmluZCh0aGlzKSkgOiBuZXcgV2Vi
SW5zcGVjdG9yLlNpbXBsZUNvb2tpZXNUYWJsZSgpOwogCiAgICAgICAgIHRoaXMuX2Nvb2tpZXNU
YWJsZS5zZXRDb29raWVzKHRoaXMuX2Nvb2tpZXMpOwogICAgICAgICB0aGlzLl9lbXB0eVZpZXcu
ZGV0YWNoKCk7CkBAIC0xMDAsNyArMTA1LDggQEANCiAgICAgICAgIGlmIChpc0FkdmFuY2VkKSB7
CiAgICAgICAgICAgICB0aGlzLl90cmVlRWxlbWVudC5zdWJ0aXRsZSA9IFN0cmluZy5zcHJpbnRm
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiJWQgY29va2llcyAoJXMpIiksIHRoaXMuX2Nvb2tpZXMu
bGVuZ3RoLAogICAgICAgICAgICAgICAgIE51bWJlci5ieXRlc1RvU3RyaW5nKHRoaXMuX3RvdGFs
U2l6ZSkpOwotICAgICAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZpc2libGUgPSB0cnVlOwor
ICAgICAgICAgICAgdGhpcy5fY2xlYXJCdXR0b24udmlzaWJsZSA9IHRydWU7CisgICAgICAgICAg
ICB0aGlzLl9kZWxldGVCdXR0b24udmlzaWJsZSA9ICEhdGhpcy5fY29va2llc1RhYmxlLnNlbGVj
dGVkQ29va2llKCk7CiAgICAgICAgIH0KICAgICB9LAogCkBAIC0xMzgsNiArMTQ0LDIyIEBADQog
ICAgICAgICByZXR1cm4gY29va2llczsKICAgICB9LAogCisgICAgY2xlYXI6IGZ1bmN0aW9uKCkK
KyAgICB7CisgICAgICAgIHRoaXMuX2Nvb2tpZXNUYWJsZS5jbGVhcigpOworICAgICAgICB0aGlz
Ll91cGRhdGUoKTsKKyAgICB9LAorCisgICAgX2NsZWFyQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24o
KQorICAgIHsKKyAgICAgICAgdGhpcy5jbGVhcigpOworICAgIH0sCisKKyAgICBfc2hvd0RlbGV0
ZUJ1dHRvbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fZGVsZXRlQnV0dG9uLnZp
c2libGUgPSB0cnVlOworICAgIH0sCisKICAgICBfZGVsZXRlQnV0dG9uQ2xpY2tlZDogZnVuY3Rp
b24oKQogICAgIHsKICAgICAgICAgdmFyIHNlbGVjdGVkQ29va2llID0gdGhpcy5fY29va2llc1Rh
YmxlLnNlbGVjdGVkQ29va2llKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0Nvb2tpZXNUYWJsZS5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvQ29va2llc1RhYmxlLmpzCShyZXZpc2lvbiAxNDY4NzkpDQorKysg
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db29raWVzVGFibGUuanMJKHdvcmtp
bmcgY29weSkNCkBAIC0zMyw4ICszMyw5IEBADQogICogQGV4dGVuZHMge1dlYkluc3BlY3Rvci5W
aWV3fQogICogQHBhcmFtIHtib29sZWFufSBleHBhbmRhYmxlCiAgKiBAcGFyYW0ge2Z1bmN0aW9u
KCk9fSByZWZyZXNoQ2FsbGJhY2sKKyAqIEBwYXJhbSB7ZnVuY3Rpb24oKT19IHNlbGVjdGVkQ2Fs
bGJhY2sKICAqLwotV2ViSW5zcGVjdG9yLkNvb2tpZXNUYWJsZSA9IGZ1bmN0aW9uKGV4cGFuZGFi
bGUsIHJlZnJlc2hDYWxsYmFjaykKK1dlYkluc3BlY3Rvci5Db29raWVzVGFibGUgPSBmdW5jdGlv
bihleHBhbmRhYmxlLCByZWZyZXNoQ2FsbGJhY2ssIHNlbGVjdGVkQ2FsbGJhY2spCiB7CiAgICAg
V2ViSW5zcGVjdG9yLlZpZXcuY2FsbCh0aGlzKTsKICAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1l
ID0gImZpbGwiOwpAQCAtNTMsOSArNTQsMTggQEANCiAgICAgICAgIHtpZDogInNlY3VyZSIsIHRp
dGxlOiBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNlY3VyZSIpLCBzb3J0YWJsZTogdHJ1ZSwgYWxp
Z246IFdlYkluc3BlY3Rvci5EYXRhR3JpZC5BbGlnbi5DZW50ZXIsIHdpZHRoOiAiNyUifQogICAg
IF07CiAKLSAgICB0aGlzLl9kYXRhR3JpZCA9IG5ldyBXZWJJbnNwZWN0b3IuRGF0YUdyaWQoY29s
dW1ucywgbnVsbCwgcmVhZE9ubHkgPyBudWxsIDogdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0
aGlzKSwgcmVmcmVzaENhbGxiYWNrKTsKKyAgICBpZiAocmVhZE9ubHkpCisgICAgICAgIHRoaXMu
X2RhdGFHcmlkID0gbmV3IFdlYkluc3BlY3Rvci5EYXRhR3JpZChjb2x1bW5zLCBudWxsLCBudWxs
LCByZWZyZXNoQ2FsbGJhY2spOworICAgIGVsc2UgeworICAgICAgICB0aGlzLl9kYXRhR3JpZCA9
IG5ldyBXZWJJbnNwZWN0b3IuRGF0YUdyaWQoY29sdW1ucyk7CisgICAgICAgIHRoaXMuX2RhdGFH
cmlkLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLCB0aGlzLl9oYW5kbGVD
b250ZXh0TWVudUV2ZW50LmJpbmQodGhpcyksIHRydWUpOworICAgIH0KKwogICAgIHRoaXMuX2Rh
dGFHcmlkLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRhdGFHcmlkLkV2ZW50cy5Tb3J0
aW5nQ2hhbmdlZCwgdGhpcy5fcmVidWlsZFRhYmxlLCB0aGlzKTsKIAorICAgIGlmIChzZWxlY3Rl
ZENhbGxiYWNrKQorICAgICAgICB0aGlzLl9kYXRhR3JpZC5hZGRFdmVudExpc3RlbmVyKFdlYklu
c3BlY3Rvci5EYXRhR3JpZC5FdmVudHMuU2VsZWN0ZWROb2RlLCBzZWxlY3RlZENhbGxiYWNrLCB0
aGlzKTsKKwogICAgIHRoaXMuX25leHRTZWxlY3RlZENvb2tpZSA9IC8qKiBAdHlwZSB7P1dlYklu
c3BlY3Rvci5Db29raWV9ICovIChudWxsKTsKIAogICAgIHRoaXMuX2RhdGFHcmlkLnNob3codGhp
cy5lbGVtZW50KTsKQEAgLTY5LDcgKzc5LDQ0IEBADQogICAgICAgICAgICAgdGhpcy5fZGF0YUdy
aWQudXBkYXRlV2lkdGhzKCk7CiAgICAgfSwKIAotICAgIC8qCisgICAgLyoqCisgICAgICogQHBh
cmFtIHs/c3RyaW5nfSBkb21haW4KKyAgICAgKi8KKyAgICBfY2xlYXJBbmRSZWZyZXNoOiBmdW5j
dGlvbihkb21haW4pCisgICAgeworICAgICAgICB0aGlzLmNsZWFyKGRvbWFpbik7CisgICAgICAg
IGlmICh0aGlzLl9yZWZyZXNoQ2FsbGJhY2spCisgICAgICAgICAgICB0aGlzLl9yZWZyZXNoQ2Fs
bGJhY2soKTsKKyAgICB9LAorCisgICAgX2hhbmRsZUNvbnRleHRNZW51RXZlbnQ6IGZ1bmN0aW9u
KGV2ZW50KQorICAgIHsKKyAgICAgICAgdmFyIGdyaWROb2RlID0gdGhpcy5fZGF0YUdyaWQuZGF0
YUdyaWROb2RlRnJvbU5vZGUoZXZlbnQudGFyZ2V0KTsKKworICAgICAgICBpZiAoIWdyaWROb2Rl
KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIHZhciBjb250ZXh0TWVudSA9IG5ldyBX
ZWJJbnNwZWN0b3IuQ29udGV4dE1lbnUoZXZlbnQpOworICAgICAgICB2YXIgY29va2llID0gZ3Jp
ZE5vZGUuY29va2llOworCisgICAgICAgIGlmICh0aGlzLl9yZWZyZXNoQ2FsbGJhY2spCisgICAg
ICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygiUmVm
cmVzaCIpLCB0aGlzLl9yZWZyZXNoQ2FsbGJhY2spOworCisgICAgICAgIGlmIChjb29raWUpIHsK
KyAgICAgICAgICAgIGNvbnRleHRNZW51LmFwcGVuZEl0ZW0oV2ViSW5zcGVjdG9yLlVJU3RyaW5n
KCJEZWxldGUiKSwgdGhpcy5fb25EZWxldGVDb29raWUuYmluZCh0aGlzLCBncmlkTm9kZSkpOwor
ICAgICAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisgICAgICAgICAgICB2
YXIgY29va2llRG9tYWluID0gY29va2llLmRvbWFpbigpOworICAgICAgICAgICAgCisgICAgICAg
ICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZyhXZWJJbnNw
ZWN0b3IudXNlTG93ZXJDYXNlTWVudVRpdGxlcygpID8gIkNsZWFyIGFsbCBmcm9tIFwiJXNcIiIg
OiAiQ2xlYXIgQWxsIGZyb20gXCIlc1wiIiwgY29va2llRG9tYWluKSwgdGhpcy5fY2xlYXJBbmRS
ZWZyZXNoLmJpbmQodGhpcywgY29va2llRG9tYWluKSk7CisgICAgICAgIH0gZWxzZQorICAgICAg
ICAgICAgY29udGV4dE1lbnUuYXBwZW5kU2VwYXJhdG9yKCk7CisKKyAgICAgICAgY29udGV4dE1l
bnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoV2ViSW5zcGVjdG9yLnVzZUxvd2Vy
Q2FzZU1lbnVUaXRsZXMoKSA/ICJDbGVhciBhbGwiIDogIkNsZWFyIEFsbCIpLCB0aGlzLl9jbGVh
ckFuZFJlZnJlc2guYmluZCh0aGlzLCBudWxsKSk7CisKKyAgICAgICAgY29udGV4dE1lbnUuc2hv
dygpOworICAgIH0sCisKKyAgICAvKioKICAgICAgKiBAcGFyYW0geyFBcnJheS48IVdlYkluc3Bl
Y3Rvci5Db29raWU+fSBjb29raWVzCiAgICAgICovCiAgICAgc2V0Q29va2llczogZnVuY3Rpb24o
Y29va2llcykKQEAgLTk1LDYgKzE0MiwyMCBAQA0KICAgICAgICAgcmV0dXJuIG5vZGUgPyBub2Rl
LmNvb2tpZSA6IG51bGw7CiAgICAgfSwKIAorICAgIC8qKgorICAgICAqIEBwYXJhbSB7c3RyaW5n
PX0gZG9tYWluCisgICAgICovCisgICAgY2xlYXI6IGZ1bmN0aW9uKGRvbWFpbikKKyAgICB7Cisg
ICAgICAgIGZvciAodmFyIGkgPSAwLCBsZW5ndGggPSB0aGlzLl9kYXRhLmxlbmd0aDsgaSA8IGxl
bmd0aDsgKytpKSB7CisgICAgICAgICAgICB2YXIgY29va2llcyA9IHRoaXMuX2RhdGFbaV0uY29v
a2llczsKKyAgICAgICAgICAgIGZvciAodmFyIGogPSAwLCBjb29raWVDb3VudCA9IGNvb2tpZXMu
bGVuZ3RoOyBqIDwgY29va2llQ291bnQ7ICsraikgeworICAgICAgICAgICAgICAgIGlmICghZG9t
YWluIHx8IGNvb2tpZXNbal0uZG9tYWluKCkgPT09IGRvbWFpbikKKyAgICAgICAgICAgICAgICAg
ICAgY29va2llc1tqXS5yZW1vdmUoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0s
CisKICAgICBfcmVidWlsZFRhYmxlOiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICB2YXIgc2Vs
ZWN0ZWRDb29raWUgPSB0aGlzLl9uZXh0U2VsZWN0ZWRDb29raWUgfHwgdGhpcy5zZWxlY3RlZENv
b2tpZSgpOwpJbmRleDogU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJj
ZXNQYW5lbC5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvUmVzb3VyY2VzUGFuZWwuanMJKHJldmlzaW9uIDE0Njg3OSkNCisrKyBTb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzCSh3b3JraW5nIGNvcHkp
DQpAQCAtNTEzLDYgKzUxMywxNCBAQA0KICAgICAgICAgdGhpcy5faW5uZXJTaG93Vmlldyh2aWV3
KTsKICAgICB9LAogCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9IGNvb2tpZURvbWFp
bgorICAgICAqLworICAgIGNsZWFyQ29va2llczogZnVuY3Rpb24oY29va2llRG9tYWluKQorICAg
IHsKKyAgICAgICAgdGhpcy5fY29va2llVmlld3NbY29va2llRG9tYWluXS5jbGVhcigpOworICAg
IH0sCisKICAgICBzaG93QXBwbGljYXRpb25DYWNoZTogZnVuY3Rpb24oZnJhbWVJZCkKICAgICB7
CiAgICAgICAgIGlmICghdGhpcy5fYXBwbGljYXRpb25DYWNoZVZpZXdzW2ZyYW1lSWRdKQpAQCAt
MTkzOSw2ICsxOTQ3LDMwIEBADQogICAgICAgICByZXR1cm4gImNvb2tpZXM6Ly8iICsgdGhpcy5f
Y29va2llRG9tYWluOwogICAgIH0sCiAKKyAgICBvbmF0dGFjaDogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgV2ViSW5zcGVjdG9yLkJhc2VTdG9yYWdlVHJlZUVsZW1lbnQucHJvdG90eXBlLm9u
YXR0YWNoLmNhbGwodGhpcyk7CisgICAgICAgIHRoaXMubGlzdEl0ZW1FbGVtZW50LmFkZEV2ZW50
TGlzdGVuZXIoImNvbnRleHRtZW51IiwgdGhpcy5faGFuZGxlQ29udGV4dE1lbnVFdmVudC5iaW5k
KHRoaXMpLCB0cnVlKTsKKyAgICB9LAorCisgICAgLyoqCisgICAgICogQHBhcmFtIHtFdmVudH0g
ZXZlbnQKKyAgICAgKi8KKyAgICBfaGFuZGxlQ29udGV4dE1lbnVFdmVudDogZnVuY3Rpb24oZXZl
bnQpCisgICAgeworICAgICAgICB2YXIgY29udGV4dE1lbnUgPSBuZXcgV2ViSW5zcGVjdG9yLkNv
bnRleHRNZW51KGV2ZW50KTsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIkNsZWFyIiksIHRoaXMuX2NsZWFyQ29va2llcy5iaW5kKHRoaXMpKTsK
KyAgICAgICAgY29udGV4dE1lbnUuc2hvdygpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBA
cGFyYW0ge3N0cmluZ30gZG9tYWluCisgICAgICovCisgICAgX2NsZWFyQ29va2llczogZnVuY3Rp
b24oZG9tYWluKQorICAgIHsKKyAgICAgICAgdGhpcy5fc3RvcmFnZVBhbmVsLmNsZWFyQ29va2ll
cyh0aGlzLl9jb29raWVEb21haW4pOworICAgIH0sCisKICAgICBvbnNlbGVjdDogZnVuY3Rpb24o
c2VsZWN0ZWRCeVVzZXIpCiAgICAgewogICAgICAgICBXZWJJbnNwZWN0b3IuQmFzZVN0b3JhZ2VU
cmVlRWxlbWVudC5wcm90b3R5cGUub25zZWxlY3QuY2FsbCh0aGlzLCBzZWxlY3RlZEJ5VXNlcik7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3RyZWVvdXRsaW5lLmpz
DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09DQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC90cmVl
b3V0bGluZS5qcwkocmV2aXNpb24gMTQ2ODc5KQ0KKysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvdHJlZW91dGxpbmUuanMJKHdvcmtpbmcgY29weSkNCkBAIC0yOCw2ICsyOCw3
IEBADQogCiAvKioKICAqIEBjb25zdHJ1Y3RvcgorICogQHBhcmFtIHtFbGVtZW50fSBsaXN0Tm9k
ZQogICogQHBhcmFtIHtib29sZWFuPX0gbm9uRm9jdXNhYmxlCiAgKi8KIGZ1bmN0aW9uIFRyZWVP
dXRsaW5lKGxpc3ROb2RlLCBub25Gb2N1c2FibGUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195502</attachid>
            <date>2013-03-28 02:01:08 -0700</date>
            <delta_ts>2013-03-28 05:12:35 -0700</delta_ts>
            <desc>A one-liner JS Compiler warning fix</desc>
            <filename>clear-cookies-fixed-js-compiler-warning.patch</filename>
            <type>text/plain</type>
            <size>1090</size>
            <attacher name="PhistucK">phistuck</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIENoYW5nZUxvZwkocmV2aXNpb24gMTQ3
MDg1KQ0KKysrIENoYW5nZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsMyArMSwxNiBAQA0KKzIw
MTMtMDMtMjggIFBoaXN0dWNLICA8cGhpc3R1Y2tAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdl
YiBJbnNwZWN0b3I6IFBsdW1iIGFuZCBleHBvc2UgY29va2llIGNsZWFyaW5nIG9wdGlvbnMgdGhy
b3VnaG91dCB0aGUgUmVzb3VyY2VzIENvb2tpZXMgdHJlZSBhbmQgdmlld3MKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg3MTQwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRml4ZWQgYSBKUyBDb21waWxlciB3
YXJuaW5nLgorCisgICAgICAgICogaW5zcGVjdG9yL0Nvb2tpZXNUYWJsZS5qczoKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5Db29raWVzVGFibGUucHJvdG90eXBlLmNsZWFyKToKKyAgICAgICAgRml4
ZWQgYSB3cm9uZyBKU0RvYyBjb21tZW50LgorCiAyMDEzLTAzLTI4ICBNaWhuZWEgT3ZpZGVuaWUg
IDxtaWhuZWFAYWRvYmUuY29tPgogCiAgICAgICAgIFtDU1NSZWdpb25zXSBDb25zb2xpZGF0ZSB1
c2Ugb2YgUmVuZGVyUmVnaW9uOjppc1ZhbGlkCkluZGV4OiBpbnNwZWN0b3IvZnJvbnQtZW5kL0Nv
b2tpZXNUYWJsZS5qcw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGluc3BlY3Rvci9mcm9udC1lbmQvQ29va2ll
c1RhYmxlLmpzCShyZXZpc2lvbiAxNDcwODUpDQorKysgaW5zcGVjdG9yL2Zyb250LWVuZC9Db29r
aWVzVGFibGUuanMJKHdvcmtpbmcgY29weSkNCkBAIC0xNDMsNyArMTQzLDcgQEANCiAgICAgfSwK
IAogICAgIC8qKgotICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gZG9tYWluCisgICAgICogQHBhcmFt
IHs/c3RyaW5nPX0gZG9tYWluCiAgICAgICovCiAgICAgY2xlYXI6IGZ1bmN0aW9uKGRvbWFpbikK
ICAgICB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>