<?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>52056</bug_id>
          
          <creation_ts>2011-01-07 06:38:10 -0800</creation_ts>
          <short_desc>contentEditable attribute should be &quot;inherit&quot; if missing</short_desc>
          <delta_ts>2011-01-24 14:05:37 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          <dependson>51957</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chang Shu">cshu</reporter>
          <assigned_to name="Chang Shu">cshu</assigned_to>
          <cc>ademar</cc>
    
    <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>rniwa</cc>
    
    <cc>suresh.voruganti</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>330750</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-07 06:38:10 -0800</bug_when>
    <thetext>When contentEditable attribute is missing, the getter should return &quot;inherit&quot;.
Layout tests include:
attr-missing-ancestor-false.html
attr-missing-parent-ancestor-missing.html
attr-missing-parent-true.html
attr-missing-ancestor-true.html
attr-missing-parent-false.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330855</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-01-07 10:34:13 -0800</bug_when>
    <thetext>&gt; attr-missing-ancestor-false.html
&gt; attr-missing-parent-ancestor-missing.html
&gt; attr-missing-parent-true.html
&gt; attr-missing-ancestor-true.html
&gt; attr-missing-parent-false.html

Where can one find these layout tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335987</commentid>
    <comment_count>2</comment_count>
      <attachid>79306</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-18 12:20:25 -0800</bug_when>
    <thetext>Created attachment 79306
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335991</commentid>
    <comment_count>3</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-18 12:22:32 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; &gt; attr-missing-ancestor-false.html
&gt; &gt; attr-missing-parent-ancestor-missing.html
&gt; &gt; attr-missing-parent-true.html
&gt; &gt; attr-missing-ancestor-true.html
&gt; &gt; attr-missing-parent-false.html
&gt; 
&gt; Where can one find these layout tests?

The test cases were committed after this bug was fired. They can now be found under LayoutTests/editing/editability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335993</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-01-18 12:23:36 -0800</bug_when>
    <thetext>Attachment 79306 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/edit...&quot; exit_code: 1

Source/WebCore/html/HTMLElement.cpp:692:  An else if statement should be written as an if statement when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Total errors found: 1 in 33 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336004</commentid>
    <comment_count>5</comment_count>
      <attachid>79306</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-18 12:32:12 -0800</bug_when>
    <thetext>Comment on attachment 79306
fix patch

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

Please make a new patch that includes only the necessary changes to the tests. I’m not sure the changes are all correct, in fact. Some of the tests have been changed to have incorrect expectations.

&gt; Source/WebCore/html/HTMLElement.cpp:691
&gt; +    if (!hasAttribute(contenteditableAttr))
&gt; +        return &quot;inherit&quot;;
&gt; +
&gt; +    const AtomicString&amp; value = getAttribute(contenteditableAttr);

Better to not separately call hasAttribute and getAttribute. Both getAttribute and fastGetAttribute return a null string if there is no attribute, and that’s more efficient than a separate call. We can check that with isNull(). And since &quot;inherit&quot; is the default, you’ll just have to check that this doesn’t accidentally give us &quot;true&quot; instead of &quot;inherit&quot; since null returns true for isEmpty.

Also, we can call fastGetAttribute here.

&gt; Source/WebCore/html/HTMLElement.cpp:699
&gt; +    if (value.isEmpty() || equalIgnoringCase(value, &quot;true&quot;))
&gt; +        return &quot;true&quot;;
&gt; +    else if (equalIgnoringCase(value, &quot;false&quot;))
&gt; +         return &quot;false&quot;;
&gt; +    else if (equalIgnoringCase(value, &quot;plaintext-only&quot;))
&gt; +        return &quot;plaintext-only&quot;;
&gt; +    else
&gt; +        return &quot;inherit&quot;;

WebKit coding style prohibits else after return.

&gt; LayoutTests/editing/editability/attr-empty-string.html:14
&gt; -&lt;div id=&quot;div&quot; contentEditable=&quot;&quot;&gt;&lt;/div&gt;
&gt; +&lt;div id=&quot;div&quot; contenteditable=&quot;&quot;&gt;&lt;/div&gt;
&gt;  &lt;script&gt;
&gt;  description(&apos;When contentEditable attribute is empty string, element.contentEditable returns &quot;true&quot; and the element is editable.&apos;)
&gt;  
&gt; -shouldBe(&apos;document.getElementById(&quot;div&quot;).getAttribute(&quot;contentEditable&quot;)&apos;,&apos;&quot;&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;div&quot;).getAttribute(&quot;contenteditable&quot;)&apos;,&apos;&quot;&quot;&apos;);

Why are you making these changes? HTML attributes are not case sensitive, and the test should be OK as is. There’s no reason to combine this change with this patch. If you want to change the tests, that’s OK, but should be decided on its own merits.

&gt; LayoutTests/editing/editability/attr-false-string.html:14
&gt; -&lt;div id=&quot;div&quot; contentEditable=&quot;false&quot;&gt;&lt;/div&gt;
&gt; +&lt;div id=&quot;div&quot; contenteditable=&quot;false&quot;&gt;&lt;/div&gt;
&gt;  &lt;script&gt;
&gt;  description(&apos;When contentEditable attribute is &quot;false&quot; string, element.contentEditable returns &quot;false&quot; and the element is NOT editable.&apos;)
&gt;  
&gt; -shouldBe(&apos;document.getElementById(&quot;div&quot;).getAttribute(&quot;contentEditable&quot;)&apos;,&apos;&quot;false&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;div&quot;).getAttribute(&quot;contenteditable&quot;)&apos;,&apos;&quot;false&quot;&apos;);

Same comment here.

&gt; LayoutTests/editing/editability/attr-invalid-string.html:14
&gt; -&lt;div id=&quot;div&quot; contentEditable=&quot;abc&quot;&gt;&lt;/div&gt;
&gt; +&lt;div id=&quot;div&quot; contenteditable=&quot;abc&quot;&gt;&lt;/div&gt;
&gt;  &lt;script&gt;
&gt;  description(&apos;When contentEditable attribute is invalid string, element.contentEditable returns &quot;inherit&quot;.&apos;)
&gt;  
&gt; -shouldBe(&apos;document.getElementById(&quot;div&quot;).getAttribute(&quot;contentEditable&quot;)&apos;,&apos;&quot;abc&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;div&quot;).getAttribute(&quot;contenteditable&quot;)&apos;,&apos;&quot;abc&quot;&apos;);

And here.

&gt; LayoutTests/editing/editability/attr-missing-ancestor-false.html:10
&gt; -&lt;div id=&quot;div&quot; contentEditable=&quot;false&quot;&gt;
&gt; +&lt;div id=&quot;div&quot; contenteditable=&quot;false&quot;&gt;

Same here.

&gt; LayoutTests/editing/editability/attr-missing-ancestor-false.html:20
&gt; -shouldBe(&apos;document.getElementById(&quot;p&quot;).hasAttribute(&quot;contentEditable&quot;)&apos;, &apos;false&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;p&quot;).hasAttribute(&quot;contenteditable&quot;)&apos;, &apos;false&apos;);

Same here and in lots more places below. Lets not make this change; it’s not tied to this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336066</commentid>
    <comment_count>6</comment_count>
      <attachid>79321</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-18 13:46:39 -0800</bug_when>
    <thetext>Created attachment 79321
fix patch 2

Thanks for the review, Darin. I removed all unnecessary changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336366</commentid>
    <comment_count>7</comment_count>
      <attachid>79321</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-19 00:09:53 -0800</bug_when>
    <thetext>Comment on attachment 79321
fix patch 2

Rejecting attachment 79321 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=eseidel-sf-cq&apos;, &apos;bu...&quot; exit_code: 2

Last 500 characters of output:
...................
fast/css/getComputedStyle ........................
fast/css/namespaces ...........
fast/doctypes ............
fast/dom .............................................................................................................................
fast/dom/element-attribute-js-null.html -&gt; failed

Exiting early after 1 failures. 6936 tests run.
151.36s total testing time

6935 test cases (99%) succeeded
1 test case (&lt;1%) had incorrect layout
3 test cases (&lt;1%) had stderr output

Full output: http://queues.webkit.org/results/7534213</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336516</commentid>
    <comment_count>8</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 07:35:27 -0800</bug_when>
    <thetext>&gt; fast/dom/element-attribute-js-null.html -&gt; failed

The above test failed because it sets contentEditable to null and expects to get &quot;false&quot;. It happened to work that way because the code checked if renderer() exists and returned &quot;false&quot;.
With the new implementation, it shouldn&apos;t work that way. However, the spec doesn&apos;t explicitly define the behavior for setting contentEditable to null. Shall we consider it as the same as &quot;inherit&quot; so we remove the attribute? Or shall we consider it an invalid value so we ignore it and raise exception? Or shall we treat null as empty? I prefer the 1st approach. Any inputs? Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336549</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-01-19 08:36:51 -0800</bug_when>
    <thetext>Did you check what happens in IE?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336557</commentid>
    <comment_count>10</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 08:50:52 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Did you check what happens in IE?

Good question and issue resolved!
I checked all major browsers: IE8, Firefox and Opera, no output was printed out after the execution of &quot;element[attr] = null&quot;. I added the exception handling in the js code and found &quot;syntax_err&quot; was thrown. So I will follow this behavior. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336559</commentid>
    <comment_count>11</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 08:56:05 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #9)
&gt; &gt; Did you check what happens in IE?
&gt; 
&gt; Good question and issue resolved!
&gt; I checked all major browsers: IE8, Firefox and Opera, no output was printed out after the execution of &quot;element[attr] = null&quot;. I added the exception handling in the js code and found &quot;syntax_err&quot; was thrown. So I will follow this behavior. Thanks!

Btw, since we don&apos;t support throwing exception for setContentEditable yet (I will do it in a separate patch right away), I will just update the expected result for fast/dom/element-attribute-js-null.html and add comments about the expected behavior. Sounds good?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336571</commentid>
    <comment_count>12</comment_count>
      <attachid>79433</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 09:16:24 -0800</bug_when>
    <thetext>Created attachment 79433
fix patch 3

I actually changed setContentEditable() code to make fast/dom/element-attribute-js-null.html happy. The right fix should come with a future patch that throws exception on invalid string.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336572</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-01-19 09:19:18 -0800</bug_when>
    <thetext>Attachment 79433 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/edit...&quot; exit_code: 1

Source/WebCore/html/HTMLElement.cpp:738:  An else should appear on the same line as the preceding }  [whitespace/newline] [4]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336586</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-19 09:52:44 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #9)
&gt; &gt; Did you check what happens in IE?
&gt; 
&gt; Good question and issue resolved!
&gt; I checked all major browsers: IE8, Firefox and Opera, no output was printed out after the execution of &quot;element[attr] = null&quot;. I added the exception handling in the js code and found &quot;syntax_err&quot; was thrown. So I will follow this behavior. Thanks!

It seems highly likely there was something wrong with the test code. I wouldn&apos;t expect a syntax error exception for the null value. Could you post the test you used somewhere so I can try it in those other browsers?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336597</commentid>
    <comment_count>15</comment_count>
      <attachid>79433</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-19 10:00:25 -0800</bug_when>
    <thetext>Comment on attachment 79433
fix patch 3

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

&gt; Source/WebCore/html/HTMLElement.cpp:739
&gt; +    else if (enabled.isNull()) // FIXME: null should be treated as invalid string and throw exception
&gt; +        setAttribute(contenteditableAttr, &quot;false&quot;);

Seems non-helpful to change the behavior here without making the behavior correct. Can we hold off on this and do it in a separate patch? I suggest we just change the expected results on that test instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336610</commentid>
    <comment_count>16</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 10:19:16 -0800</bug_when>
    <thetext>(In reply to comment #14)
&gt; (In reply to comment #10)
&gt; &gt; (In reply to comment #9)
&gt; &gt; &gt; Did you check what happens in IE?
&gt; &gt; 
&gt; &gt; Good question and issue resolved!
&gt; &gt; I checked all major browsers: IE8, Firefox and Opera, no output was printed out after the execution of &quot;element[attr] = null&quot;. I added the exception handling in the js code and found &quot;syntax_err&quot; was thrown. So I will follow this behavior. Thanks!
&gt; 
&gt; It seems highly likely there was something wrong with the test code. I wouldn&apos;t expect a syntax error exception for the null value. Could you post the test you used somewhere so I can try it in those other browsers?

http://waplabdc.nokia-boston.com/browser/users/cshu/element-attribute-js-null-simplified.html
Darin, please find the test I used in the above link. It&apos;s just a simplified version of layout test fast/dom/element-attribute-js-null.html.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336618</commentid>
    <comment_count>17</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-19 10:32:48 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; Darin, please find the test I used in the above link. It&apos;s just a simplified version of layout test fast/dom/element-attribute-js-null.html.

Thanks. Looks like null does indeed give a syntax error. But so does the string &quot;null&quot; and the string &quot;x&quot; and the empty string. So this should not be a special case for null.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336621</commentid>
    <comment_count>18</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 10:36:20 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; (In reply to comment #16)
&gt; &gt; Darin, please find the test I used in the above link. It&apos;s just a simplified version of layout test fast/dom/element-attribute-js-null.html.
&gt; 
&gt; Thanks. Looks like null does indeed give a syntax error. But so does the string &quot;null&quot; and the string &quot;x&quot; and the empty string. So this should not be a special case for null.

Right. The code change I made in patch #3 wasn&apos;t complete at all. But anyway, I am throwing it away as you suggested to update expected result.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336631</commentid>
    <comment_count>19</comment_count>
      <attachid>79449</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 10:45:35 -0800</bug_when>
    <thetext>Created attachment 79449
fix patch 4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336641</commentid>
    <comment_count>20</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-19 10:55:21 -0800</bug_when>
    <thetext>I still think there is something wrong here. Setting the JavaScript contentEditable property to the empty string should probably not set the HTML contenteditable attribute to the string &quot;inherit&quot; even though reading the contentEditable property will give &quot;inherit&quot;; unless that’s really what the other browsers do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336647</commentid>
    <comment_count>21</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 10:59:52 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; I still think there is something wrong here. Setting the JavaScript contentEditable property to the empty string should probably not set the HTML contenteditable attribute to the string &quot;inherit&quot; even though reading the contentEditable property will give &quot;inherit&quot;; unless that’s really what the other browsers do.

I agree. Setting contentEditable to empty string(&quot;&quot;) should be equivalent to setting it to &quot;true&quot;. This is explicitly said by the specification.
http://www.w3.org/TR/html5/editing.html#contenteditable
The contenteditable  attribute is an enumerated attribute whose keywords are the empty string, true, and false. The empty string and the true keyword map to the true state. The false keyword maps to the false state. In addition, there is a third state, the inherit state, which is the missing value default (and the invalid value default).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336659</commentid>
    <comment_count>22</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-19 11:12:59 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; I agree. Setting contentEditable to empty string(&quot;&quot;) should be equivalent to setting it to &quot;true&quot;. This is explicitly said by the specification.
&gt; http://www.w3.org/TR/html5/editing.html#contenteditable

I see now what the rule actually is. The rule is that setting to &quot;true&quot; sets the HTML attribute to &quot;true&quot;, setting to &quot;false&quot; sets the HTML attribute to &quot;false&quot;, setting it to &quot;inherit&quot; removes the HTML attribute. And if you set it to any other string, including the empty string, you throw a syntax error.

That makes total sense. That&apos;s what we need to implement. It will be straightforward to do it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336661</commentid>
    <comment_count>23</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 11:22:41 -0800</bug_when>
    <thetext>(In reply to comment #22)
&gt; (In reply to comment #21)
&gt; &gt; I agree. Setting contentEditable to empty string(&quot;&quot;) should be equivalent to setting it to &quot;true&quot;. This is explicitly said by the specification.
&gt; &gt; http://www.w3.org/TR/html5/editing.html#contenteditable
&gt; 
&gt; I see now what the rule actually is. The rule is that setting to &quot;true&quot; sets the HTML attribute to &quot;true&quot;, setting to &quot;false&quot; sets the HTML attribute to &quot;false&quot;, setting it to &quot;inherit&quot; removes the HTML attribute. And if you set it to any other string, including the empty string, you throw a syntax error.
&gt; 
&gt; That makes total sense. That&apos;s what we need to implement. It will be straightforward to do it.

Right, right. I was confused for a second. Setting contentEditable in js is slightly different from defining the attribute itself.
&lt;div id=&quot;div&quot; contentEditable=&quot;&quot;&gt;&lt;/div&gt; should result in true state;
div.contentEditable=&quot;&quot; should throw exception.
The 2nd case is not captured in the tests and I will do that for bug 52057.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336670</commentid>
    <comment_count>24</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-19 11:30:56 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 79449:

http/tests/xmlhttprequest/basic-auth.html bug 51613 (author: ap@webkit.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336671</commentid>
    <comment_count>25</comment_count>
      <attachid>79449</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-19 11:31:45 -0800</bug_when>
    <thetext>Comment on attachment 79449
fix patch 4

Clearing flags on attachment: 79449

Committed r76145: &lt;http://trac.webkit.org/changeset/76145&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336672</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-19 11:31:52 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>339251</commentid>
    <comment_count>27</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-01-24 14:03:19 -0800</bug_when>
    <thetext>Revision r76145 cherry-picked into qtwebkit-2.2 with commit 402b427 &lt;http://gitorious.org/webkit/qtwebkit/commit/402b427&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79306</attachid>
            <date>2011-01-18 12:20:25 -0800</date>
            <delta_ts>2011-01-18 13:46:39 -0800</delta_ts>
            <desc>fix patch</desc>
            <filename>52056_1.patch</filename>
            <type>text/plain</type>
            <size>36486</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MDQxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDEtMTggIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhlIHJldHVybiB2YWx1ZSBvZiBjb250ZW50RWRpdGFibGUoKSBm
dW5jdGlvbiBzaG91bGQgZGVwZW5kIG9uIHRoZSBET00gYXR0cmlidXRlCisgICAgICAgIGluc3Rl
YWQgb2YgcmVuZGVyIHN0eWxlIHVzZXJNb2RpZnkuIFRoZSBjb2RlIGNoYW5nZSBmaXhlZCB0ZXN0
IGNhc2VzIGluIHRoZSBidWcKKyAgICAgICAgYW5kIHBhcnRpYWxseSBmaXhlZCB0ZXN0IGNhc2Vz
IGluIG90aGVyIGNvbnRlbnRFZGl0YWJsZSBidWdzOworCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorCisgICAgICAgICogaHRtbC9IVE1MRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6Y29udGVudEVkaXRhYmxl
KToKKwogMjAxMS0wMS0xOCAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgQ2FsbCBhbHRlcm5hdGUgQ0ZIVFRQQ29va2llIGZ1bmN0aW9ucyBpZiBhdmFpbGFibGUKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCShyZXZpc2lvbiA3NjAyNikKKysrIFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02ODUs
MTkgKzY4NSwxOCBAQCBib29sIEhUTUxFbGVtZW50Ojppc0NvbnRlbnRSaWNobHlFZGl0YWJsCiAK
IFN0cmluZyBIVE1MRWxlbWVudDo6Y29udGVudEVkaXRhYmxlKCkgY29uc3QgCiB7Ci0gICAgaWYg
KCFyZW5kZXJlcigpKQotICAgICAgICByZXR1cm4gImZhbHNlIjsKLSAgICAKLSAgICBzd2l0Y2gg
KHJlbmRlcmVyKCktPnN0eWxlKCktPnVzZXJNb2RpZnkoKSkgewotICAgICAgICBjYXNlIFJFQURf
V1JJVEU6Ci0gICAgICAgICAgICByZXR1cm4gInRydWUiOwotICAgICAgICBjYXNlIFJFQURfT05M
WToKLSAgICAgICAgICAgIHJldHVybiAiZmFsc2UiOwotICAgICAgICBjYXNlIFJFQURfV1JJVEVf
UExBSU5URVhUX09OTFk6Ci0gICAgICAgICAgICByZXR1cm4gInBsYWludGV4dC1vbmx5IjsKLSAg
ICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIHJldHVybiAiaW5oZXJpdCI7Ci0gICAgfQorICAg
IGlmICghaGFzQXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIpKQorICAgICAgICByZXR1cm4g
ImluaGVyaXQiOworCisgICAgY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSA9IGdldEF0dHJpYnV0
ZShjb250ZW50ZWRpdGFibGVBdHRyKTsKKyAgICBpZiAodmFsdWUuaXNFbXB0eSgpIHx8IGVxdWFs
SWdub3JpbmdDYXNlKHZhbHVlLCAidHJ1ZSIpKQorICAgICAgICByZXR1cm4gInRydWUiOworICAg
IGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHZhbHVlLCAiZmFsc2UiKSkKKyAgICAgICAgIHJl
dHVybiAiZmFsc2UiOworICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHZhbHVlLCAicGxh
aW50ZXh0LW9ubHkiKSkKKyAgICAgICAgcmV0dXJuICJwbGFpbnRleHQtb25seSI7CisgICAgZWxz
ZQorICAgICAgICByZXR1cm4gImluaGVyaXQiOwogfQogCiB2b2lkIEhUTUxFbGVtZW50OjpzZXRD
b250ZW50RWRpdGFibGUoQXR0cmlidXRlKiBhdHRyKSAKSW5kZXg6IExheW91dFRlc3RzL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MDQx
KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDQg
QEAKKzIwMTEtMDEtMTggIENoYW5nIFNodSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2CisgICAgICAgIDEuIEZpeGVkIHRlc3QgY2Fz
ZXMgaW4gdGhlIGFib3ZlIGJ1ZzsKKyAgICAgICAgMi4gUGFydGlhbGx5IGZpeGVkIHRlc3QgY2Fz
ZXMgaW4gb3RoZXIgY29udGVudEVkaXRhYmxlIGJ1Z3M7CisgICAgICAgIDMuIEZpeGVkIGNvbnRl
bnRFZGl0YWJsZSBuYW1lIGlzc3VlIHNvIHRoYXQgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZQor
ICAgICAgICB1c2VzIGFsbCBsb3dlciBjYXNlIGFuZCBqYXZhc2NyaXB0IHVzZXMgY29udGVudEVk
aXRhYmxlIHdpdGggY2FwaXRhbCAnRScuCisKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItZW1wdHktc3RyaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItZW1wdHktc3RyaW5nLmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJp
bGl0eS9hdHRyLWZhbHNlLXN0cmluZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLWZhbHNlLXN0cmluZy5odG1sOgorICAgICAgICAqIGVkaXRpbmcvZWRp
dGFiaWxpdHkvYXR0ci1pbnZhbGlkLXN0cmluZy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRp
dGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWw6CisgICAgICAgICogZWRp
dGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZh
bHNlLmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5j
ZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS5odG1sOgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0
b3ItbWlzc2luZy5odG1sOgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNz
aW5nLXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJp
bGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLmh0bWw6CisgICAgICAgICogZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLmh0bWw6Cisg
ICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLXRydWUtc3RyaW5nLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJpbmcuaHRtbDoK
KyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UuaHRtbDoKKyAgICAgICAgKiBl
ZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2Uu
aHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10
cnVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhl
cml0LXBhcmVudC10cnVlLmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQt
aW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0
eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sOgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LXRydWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0
LXRydWUuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNl
aW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sOgorCiAyMDExLTAxLTE4ICBNYXJ0aW4gUm9i
aW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmlj
IFNlaWRlbC4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0
eS1zdHJpbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAy
NikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJpbmct
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC02LDcgKzYsNyBAQCBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1QQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICIiCitQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRlZGl0
YWJsZSIpIGlzICIiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50
RWRpdGFibGUgaXMgInRydWUiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5p
c0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRp
diwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13
cml0ZSIKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1z
dHJpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItZW1wdHktc3RyaW5nLmh0bWwJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWVtcHR5LXN0cmluZy5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC03LDExICs3LDExIEBACiA8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KIDxkaXYgaWQ9ImNv
bnNvbGUiPjwvcD4KIDxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Ci08ZGl2IGlkPSJkaXYiIGNvbnRl
bnRFZGl0YWJsZT0iIj48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVudGVkaXRhYmxlPSIiPjwv
ZGl2PgogPHNjcmlwdD4KIGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1
dGUgaXMgZW1wdHkgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJ0cnVl
IiBhbmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUuJykKIAotc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnIiIn
KTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRl
KCJjb250ZW50ZWRpdGFibGUiKScsJyIiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwog
c2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFs
dWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1mYWxzZS1zdHJpbmctZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1mYWxz
ZS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1mYWxzZS1zdHJpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC02LDcgKzYsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBCiAKIAogCi1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYWxzZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIikgaXMgImZhbHNl
IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlIGlz
ICJmYWxzZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVk
aXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdl
dFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgpJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWZhbHNlLXN0cmluZy5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1mYWxz
ZS1zdHJpbmcuaHRtbAkocmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L2F0dHItZmFsc2Utc3RyaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsMTEg
KzcsMTEgQEAKIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9w
PgogPGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KLTxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxl
PSJmYWxzZSI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRlZGl0YWJsZT0iZmFsc2UiPjwv
ZGl2PgogPHNjcmlwdD4KIGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1
dGUgaXMgImZhbHNlIiBzdHJpbmcsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMgImZh
bHNlIiBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlLicpCiAKLXNob3VsZEJlKCdkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KScsJyJmYWxzZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iiku
Z2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKScsJyJmYWxzZSInKTsKIHNob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlJywgJyJmYWxzZSIn
KTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRp
dGFibGUnLCAnZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYs
ICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25s
eSInKTsKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlk
LXN0cmluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYw
MjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJp
bmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC02LDkgKzYsOCBAQCBPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1QQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJhYmMi
Ci1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgc2hv
dWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KLUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmli
dXRlIGZhaWxzIHRvIHRha2UgaW52YWxpZCB2YWx1ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUwNjM2CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYi
KS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpIGlzICJhYmMiCitQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBmYWxz
ZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKIApJbmRleDogTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5n
Lmh0bWwJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsMTMgKzcsMTIg
QEAKIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9wPgogPGRp
diBpZD0icmVzdWx0Ij48L2Rpdj4KLTxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSJhYmMi
PjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50ZWRpdGFibGU9ImFiYyI+PC9kaXY+CiA8c2Ny
aXB0PgogZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbnZh
bGlkIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAiaW5oZXJpdCIuJykK
IAotc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUo
ImNvbnRlbnRFZGl0YWJsZSIpJywnImFiYyInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKScsJyJhYmMiJyk7
CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJs
ZScsICciaW5oZXJpdCInKTsKLWRlYnVnKCJGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0
ZSBmYWlscyB0byB0YWtlIGludmFsaWQgdmFsdWUuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD01MDYzNiIpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1t
b2RpZnkiKScsICcicmVhZC1vbmx5IicpOwogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5j
ZXN0b3ItZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiw5ICs2LDggQEAgT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIAotUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQu
IFdhcyBmYWxzZS4KLUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBp
bmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01MjA1NgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgi
Y29udGVudGVkaXRhYmxlIikgaXMgZmFsc2UKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKIFBBU1Mgd2luZG93LmdldENv
bXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnki
KSBpcyAicmVhZC1vbmx5IgogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLmh0bWwJ
KHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRy
LW1pc3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcg
QEAKIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9wPgogPGRp
diBpZD0icmVzdWx0Ij48L2Rpdj4KLTxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSJmYWxz
ZSI+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRlZGl0YWJsZT0iZmFsc2UiPgogICA8ZGl2PgogICAg
IDxkaXY+CiAgICAgICA8cCBpZD0icCI+PC9wPgpAQCAtMTcsOSArMTcsOCBAQAogPHNjcmlwdD4K
IGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBtaXNzaW5nLCBpdCBtYXBzIHRv
ICJpbmhlcml0IiBzdGF0ZSBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlIGlmIGl0cyBu
ZWFyZXN0IGFuY2VzdG9yIGlzIE5PVC4nKQogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywgJ2ZhbHNlJyk7Citz
aG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRl
bnRlZGl0YWJsZSIpJywgJ2ZhbHNlJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNv
bnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScp
Owogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKIApJbmRleDogTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2
KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0
b3ItdHJ1ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYsOSArNiw4IEBAIE9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiAKLVBBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZh
bHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIHNo
b3VsZCBiZSBpbmhlcml0LiBXYXMgdHJ1ZS4KLUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmli
dXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD01MjA1NgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIp
Lmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIikgaXMgZmFsc2UKK1BBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQogUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtp
dC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Np
bmctYW5jZXN0b3ItdHJ1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbAkocmV2aXNpb24gNzYw
MjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNl
c3Rvci10cnVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBACiA8cCBpZD0iZGVz
Y3JpcHRpb24iPjwvcD4KIDxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KIDxkaXYgaWQ9InJlc3VsdCI+
PC9kaXY+Ci08ZGl2IGlkPSJkaXYiIGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+Cis8ZGl2IGlkPSJk
aXYiIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSI+CiAgIDxkaXY+CiAgICAgPGRpdj4KICAgICAgIDxw
IGlkPSJwIj48L3A+CkBAIC0xOCw5ICsxOCw4IEBACiA8c2NyaXB0PgogZGVzY3JpcHRpb24oJ1do
ZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRl
IGFuZCB0aGUgZWxlbWVudCBpcyBlZGl0YWJsZSBpZiBpdHMgbmVhcmVzdCBhbmNlc3RvciBpcy4n
KQogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUo
ImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiknLCdmYWxzZScpOwog
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlJywg
JyJpbmhlcml0IicpOwotZGVidWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNo
b3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01MjA1NiIpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJw
IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikn
LCAnInJlYWQtd3JpdGUiJyk7CiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1w
YXJlbnQtYW5jZXN0b3ItbWlzc2luZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysg
TGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2Vz
dG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC02LDkgKzYsOCBAQCBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1QQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBp
cyBmYWxzZQotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJs
ZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgotRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBh
dHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKSBpcyBmYWxzZQorUEFTUyBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIKIFBB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBmYWxz
ZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgi
LXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCiAKSW5kZXg6IExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5n
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRy
LW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmcuaHRtbAkocmV2aXNpb24gNzYwMjYpCisr
KyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5j
ZXN0b3ItbWlzc2luZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNyw5ICsxNyw4IEBACiA8c2Ny
aXB0PgogZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1h
cHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUgaWYg
aXRzIHBhcmVudC9hbmNlc3RvclwncyBjb250ZW50RWRpdGFibGUgaXMgYWxzbyBtaXNzaW5nLicp
CiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgi
Y29udGVudEVkaXRhYmxlIiknLCdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKScsJ2ZhbHNlJyk7CiBz
aG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAn
ImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hv
dWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAi
KS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikn
LCAnInJlYWQtb25seSInKTsKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2Ut
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRp
dGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTYsOSArNiw4IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEEKIAogCiAKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1
dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCi1G
SVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNz
aW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJs
ZSIpIGlzIGZhbHNlCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVk
aXRhYmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlz
Q29udGVudEVkaXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAs
ICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25s
eSIKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Npbmct
cGFyZW50LWZhbHNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLmh0bWwJKHJldmlzaW9uIDc2MDI2KQor
KysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZh
bHNlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsMTUgKzcsMTQgQEAKIDxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9wPgogPGRpdiBpZD0icmVzdWx0Ij48L2Rp
dj4KLTxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSJmYWxzZSI+Cis8ZGl2IGlkPSJkaXYi
IGNvbnRlbnRlZGl0YWJsZT0iZmFsc2UiPgogICAgIDxwIGlkPSJwIj48L3A+CiA8L2Rpdj4KIDxz
Y3JpcHQ+CiBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQg
bWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIE5PVCBlZGl0YWJsZSBp
ZiBpdHMgcGFyZW50IGlzIE5PVC4nKQogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3Nob3Vs
ZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudGVk
aXRhYmxlIiknLCdmYWxzZScpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJw
IikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOwotZGVidWcoIkZJWE1FOiBjb250ZW50
RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NiIpOwogc2hvdWxkQmUoJ2RvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKIHNo
b3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgi
LXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CiAKSW5kZXg6IExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
bWlzc2luZy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC02LDkgKzYsOCBAQCBPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQotRkFJTCBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5o
ZXJpdC4gV2FzIHRydWUuCi1GSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQg
YmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTIwNTYKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1
dGUoImNvbnRlbnRlZGl0YWJsZSIpIGlzIGZhbHNlCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwIikuY29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKIFBBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2Rp
ZnkiKSBpcyAicmVhZC13cml0ZSIKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS5odG1sCShy
ZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1t
aXNzaW5nLXBhcmVudC10cnVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTcsMTUgKzcsMTQgQEAK
IDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9wPgogPGRpdiBp
ZD0icmVzdWx0Ij48L2Rpdj4KLTxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSJ0cnVlIj4K
KzxkaXYgaWQ9ImRpdiIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj4KICAgICA8cCBpZD0icCI+PC9w
PgogPC9kaXY+CiA8c2NyaXB0PgogZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlz
IG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBl
ZGl0YWJsZSBpZiBpdHMgcGFyZW50IGlzLicpCiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCdmYWxzZScpOwor
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250
ZW50ZWRpdGFibGUiKScsJ2ZhbHNlJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNv
bnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7
CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFs
dWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIApJbmRleDogTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLXRydWUtc3RyaW5nLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1
ZS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvYXR0ci10cnVlLXN0cmluZy1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTYsNyArNiw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEEKIAogCiAKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJp
YnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpIGlzICJ0cnVlIgog
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlIGlzICJ0
cnVlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFi
bGUgaXMgdHJ1ZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJpbmcuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJp
bmcuaHRtbAkocmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmls
aXR5L2F0dHItdHJ1ZS1zdHJpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtNywxMSArNywxMSBA
QAogPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+CiA8ZGl2IGlkPSJjb25zb2xlIj48L3A+CiA8ZGl2
IGlkPSJyZXN1bHQiPjwvZGl2PgotPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFibGU9InRydWUi
PjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50ZWRpdGFibGU9InRydWUiPjwvZGl2PgogPHNj
cmlwdD4KIGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgaXMgInRy
dWUiIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAidHJ1ZSIgYW5kIHRo
ZSBlbGVtZW50IGlzIGVkaXRhYmxlLicpCiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJ0cnVlIicpOwor
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNv
bnRlbnRlZGl0YWJsZSIpJywnInRydWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwog
c2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFs
dWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDggKzcsOCBAQCBP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1QQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KSBpcyAiZmFsc2UiCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVu
dEVkaXRhYmxlIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCitQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKSBpcyAiZmFs
c2UiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxl
IGlzICJmYWxzZSIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRl
bnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgogRklYTUU6IHNldENvbnRlbnRF
ZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtpbmcgcHJv
cGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OAogUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWZhbHNlLmh0bWwJKHJldmlzaW9uIDc2MDI2KQorKysg
TGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMTcsNyArMTcsNyBAQCBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUg
aXMgc2V0CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSA9
ICJmYWxzZSI7CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUg
PSAiZmFsc2UiOwogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5n
ZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZhbHNlIicpOworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFi
bGUiKScsJyJmYWxzZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
MSIpLmNvbnRlbnRFZGl0YWJsZScsICciZmFsc2UiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOwogZGVidWco
IkZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCB0cnVlL2ZhbHNlL2luaGVyaXQgc3RyaW5n
IGlzIG5vdCB3b3JraW5nIHByb3Blcmx5LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTIwNTgiKTsKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC02LDggKzYsOCBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
CiAKIAogCi1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJj
b250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIHRydWUuCitQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUi
KSBpcyBmYWxzZQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0
YWJsZSBpcyAiaW5oZXJpdCIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0Nv
bnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgogRklYTUU6IHNldENvbnRl
bnRFZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtpbmcg
cHJvcGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OAog
UEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZh
bHNlLmh0bWwJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTUs
NyArMTUsNyBAQCBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0CiAKIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlID0gImluaGVyaXQiOwog
Ci1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNv
bnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiknLCdmYWxzZScpOwogc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlJywgJyJp
bmhlcml0IicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250
ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKIGRlYnVnKCJGSVhNRTogc2V0Q29udGVudEVkaXRhYmxl
IHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4Iik7CkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbmhlcml0LXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYwMjYpCisr
KyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVl
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiw4ICs2LDggQEAgT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIAotUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZB
SUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJl
IGluaGVyaXQuIFdhcyBmYWxzZS4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5o
YXNBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpIGlzIGZhbHNlCitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogRkFJTCBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVl
LiBXYXMgZmFsc2UuCiBGSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9p
bmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4CiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQt
d3JpdGUiCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0
LXBhcmVudC10cnVlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtdHJ1ZS5odG1sCShyZXZpc2lvbiA3NjAyNikKKysr
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTUsNyArMTUsNyBAQCBkZXNjcmlwdGlvbignV2hlbiBj
b250ZW50RWRpdGFibGUgaXMgc2V0CiAKIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29u
dGVudEVkaXRhYmxlID0gImluaGVyaXQiOwogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVu
dGVkaXRhYmxlIiknLCdmYWxzZScpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwIikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOwogc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwogZGVidWco
IkZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCB0cnVlL2ZhbHNlL2luaGVyaXQgc3RyaW5n
IGlzIG5vdCB3b3JraW5nIHByb3Blcmx5LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTIwNTgiKTsKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFs
aWQtdmFsdWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC04LDggKzgsOCBAQCBPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIEZBSUwgZXhjZXB0aW9uVGhy
b3duIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBGSVhNRTogc2V0Q29udGVudEVkaXRhYmxl
IHdpdGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU3Ci1QQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJhYmMiCi1Q
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgInRy
dWUiCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNv
bnRlbnRlZGl0YWJsZSIpIHNob3VsZCBiZSB0cnVlLiBXYXMgYWJjLgorRkFJTCBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMg
aW5oZXJpdC4KIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVk
aXRhYmxlIGlzIHRydWUKIEZBSUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0
UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIHNob3VsZCBiZSByZWFkLXdyaXRl
LiBXYXMgcmVhZC1vbmx5LgogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbnZhbGlkLXZhbHVlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sCShyZXZpc2lvbiA3NjAyNikKKysr
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMjIsNyArMjIsNyBAQCB0cnkgewogCiBzaG91bGRCZSgnZXhjZXB0
aW9uVGhyb3duJywgJ3RydWUnKTsKIGRlYnVnKCJGSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdp
dGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU3Iik7Ci1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciYWJj
IicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1
dGUoImNvbnRlbnRlZGl0YWJsZSIpJywnInRydWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1
ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKSW5kZXg6
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDEyICs3LDEy
IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiAKLVBBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0
YWJsZSIpIGlzICJ0cnVlIgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNv
bnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIikgaXMg
InRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRh
YmxlIGlzICJ0cnVlIgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29u
dGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBGSVhNRTogc2V0Q29udGVu
dEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2luZyBw
cm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4CiBQ
QVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCIt
d2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCi1QQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwMiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUi
CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmdldEF0dHJpYnV0ZSgiY29udGVu
dGVkaXRhYmxlIikgaXMgInRydWUiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIp
LmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAyIikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAi
cmVhZC13cml0ZSIKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRy
dWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3Nl
dC10cnVlLmh0bWwJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtdHJ1ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNywxMyArMTcsMTMgQEAg
ZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIHNldAogZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgPSAidHJ1ZSI7CiBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgPSAidHJ1ZSI7CiAKLXNob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRh
YmxlIiknLCcidHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiknLCcidHJ1ZSInKTsKIHNob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1
ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29udGVu
dEVkaXRhYmxlJywgJ3RydWUnKTsKIGRlYnVnKCJGSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdp
dGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4gaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4Iik7CiBzaG91bGRCZSgn
d2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJr
aXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIAotc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwMiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCci
dHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpJywnInRydWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOwogc2hvdWxk
QmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3Ry
dWUnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKSW5kZXg6
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYw
MjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5z
ZW5zaXRpdmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC04LDE2ICs4LDE2IEBAIE9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiAKLVBBU1MgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIp
IGlzICJUUnVlIgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIikgc2hvdWxkIGJl
IHRydWUuIFdhcyBUUnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNv
bnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRp
djEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgogUEFTUyB3
aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtp
dC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgotUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYUxTRSIKK0ZB
SUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50ZWRp
dGFibGUiKSBzaG91bGQgYmUgZmFsc2UuIFdhcyBmYUxTRS4KIFBBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAxIikuY29udGVudEVkaXRhYmxlIGlzICJmYWxzZSIKIFBBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKIFBBU1Mgd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVz
ZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBzaG91bGQgYmUgZmFsc2UuIFdh
cyB0cnVlLgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFi
bGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKSBzaG91bGQgYmUgZmFs
c2UuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50
RWRpdGFibGUgaXMgImluaGVyaXQiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIp
LmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBGQUlMIHdpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKHAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2Vy
LW1vZGlmeSIpIHNob3VsZCBiZSByZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5LgogRklYTUU6IHNl
dENvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgY2FzZSBpbnNlbnNpdGl2ZS4gaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU5CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5z
aXRpdmUuaHRtbAkocmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MTksMTcgKzE5LDE3IEBAIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEUK
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZSA9ICJmYUxTRSI7
CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgPSAiaW5IRVJJ
VCI7CiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJp
YnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciVFJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiknLCci
dHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRl
bnRFZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2MSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKIHNob3VsZEJlKCd3aW5kb3cu
Z2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2Vy
LW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJmYUxTRSIn
KTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUo
ImNvbnRlbnRlZGl0YWJsZSIpJywnImZhbHNlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZScsICciZmFsc2UiJyk7CiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2Un
KTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwgIiIpLmdldFByb3BlcnR5
VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5IicpOwogCi1zaG91bGRC
ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRp
dGFibGUiKScsJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAy
IikuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKScsJ2ZhbHNlJyk7CiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0
IicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVk
aXRhYmxlJywgJ3RydWUnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwg
IiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0
ZSInKTsK
</data>
<flag name="review"
          id="70719"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79321</attachid>
            <date>2011-01-18 13:46:39 -0800</date>
            <delta_ts>2011-01-19 09:16:24 -0800</delta_ts>
            <desc>fix patch 2</desc>
            <filename>52056_2.patch</filename>
            <type>text/plain</type>
            <size>20020</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MDUzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDEtMTggIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhlIHJldHVybiB2YWx1ZSBvZiBjb250ZW50RWRpdGFibGUoKSBm
dW5jdGlvbiBzaG91bGQgZGVwZW5kIG9uIHRoZSBET00gYXR0cmlidXRlCisgICAgICAgIGluc3Rl
YWQgb2YgcmVuZGVyIHN0eWxlIHVzZXJNb2RpZnkuIFRoZSBjb2RlIGNoYW5nZSBmaXhlZCB0ZXN0
IGNhc2VzIGluIHRoZSBidWcKKyAgICAgICAgYW5kIHBhcnRpYWxseSBmaXhlZCB0ZXN0IGNhc2Vz
IGluIG90aGVyIGNvbnRlbnRFZGl0YWJsZSBidWdzOworCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorCisgICAgICAgICogaHRtbC9IVE1MRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6Y29udGVudEVkaXRhYmxl
KToKKwogMjAxMS0wMS0xOCAgQmVuamFtaW4gS2FsbWFuICA8a2FsbWFuQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmNwcAkocmV2aXNpb24gNzYwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjg1LDE5ICs2ODUsMTggQEAgYm9v
bCBIVE1MRWxlbWVudDo6aXNDb250ZW50UmljaGx5RWRpdGFibAogCiBTdHJpbmcgSFRNTEVsZW1l
bnQ6OmNvbnRlbnRFZGl0YWJsZSgpIGNvbnN0IAogewotICAgIGlmICghcmVuZGVyZXIoKSkKLSAg
ICAgICAgcmV0dXJuICJmYWxzZSI7Ci0gICAgCi0gICAgc3dpdGNoIChyZW5kZXJlcigpLT5zdHls
ZSgpLT51c2VyTW9kaWZ5KCkpIHsKLSAgICAgICAgY2FzZSBSRUFEX1dSSVRFOgotICAgICAgICAg
ICAgcmV0dXJuICJ0cnVlIjsKLSAgICAgICAgY2FzZSBSRUFEX09OTFk6Ci0gICAgICAgICAgICBy
ZXR1cm4gImZhbHNlIjsKLSAgICAgICAgY2FzZSBSRUFEX1dSSVRFX1BMQUlOVEVYVF9PTkxZOgot
ICAgICAgICAgICAgcmV0dXJuICJwbGFpbnRleHQtb25seSI7Ci0gICAgICAgIGRlZmF1bHQ6Ci0g
ICAgICAgICAgICByZXR1cm4gImluaGVyaXQiOwotICAgIH0KKyAgICBjb25zdCBBdG9taWNTdHJp
bmcmIHZhbHVlID0gZmFzdEdldEF0dHJpYnV0ZShjb250ZW50ZWRpdGFibGVBdHRyKTsKKworICAg
IGlmICh2YWx1ZS5pc051bGwoKSkKKyAgICAgICAgcmV0dXJuICJpbmhlcml0IjsKKyAgICBpZiAo
dmFsdWUuaXNFbXB0eSgpIHx8IGVxdWFsSWdub3JpbmdDYXNlKHZhbHVlLCAidHJ1ZSIpKQorICAg
ICAgICByZXR1cm4gInRydWUiOworICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZSwgImZh
bHNlIikpCisgICAgICAgICByZXR1cm4gImZhbHNlIjsKKyAgICBpZiAoZXF1YWxJZ25vcmluZ0Nh
c2UodmFsdWUsICJwbGFpbnRleHQtb25seSIpKQorICAgICAgICByZXR1cm4gInBsYWludGV4dC1v
bmx5IjsKKworICAgIHJldHVybiAiaW5oZXJpdCI7CiB9CiAKIHZvaWQgSFRNTEVsZW1lbnQ6OnNl
dENvbnRlbnRFZGl0YWJsZShBdHRyaWJ1dGUqIGF0dHIpIApJbmRleDogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNzYw
NTMpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwz
MCBAQAorMjAxMS0wMS0xOCAgQ2hhbmcgU2h1ICA8Y2hhbmcuc2h1QG5va2lhLmNvbT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKKyAgICAgICAgMS4gRml4ZWQgdGVzdCBj
YXNlcyBpbiB0aGUgYWJvdmUgYnVnOworICAgICAgICAyLiBQYXJ0aWFsbHkgZml4ZWQgdGVzdCBj
YXNlcyBpbiBvdGhlciBjb250ZW50RWRpdGFibGUgYnVnczsKKworICAgICAgICAqIGVkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlkLXN0cmluZy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWw6CisgICAgICAgICog
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9y
LWZhbHNlLmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Npbmct
YW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS5odG1sOgorICAgICAgICAqIGVkaXRpbmcvZWRp
dGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5j
ZXN0b3ItbWlzc2luZy5odG1sOgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1t
aXNzaW5nLXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0
YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLmh0bWw6CisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLmh0bWw6
CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBh
cmVudC10cnVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3Nl
dC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmls
aXR5L3NldC10cnVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0OgorCiAyMDExLTAxLTE4ICBE
bWl0cnkgVGl0b3YgIDxkaW1pY2hAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1bV0g
Tm90IHJldmlld2VkLCB0ZXN0IGV4cGVjdGF0aW9ucyB1cGRhdGUuCkluZGV4OiBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmctZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlk
LXN0cmluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRp
dGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtNyw4ICs3LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJp
YnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImFiYyIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNl
LgotRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgZmFpbHMgdG8gdGFrZSBpbnZhbGlk
IHZhbHVlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTA2MzYKK1BB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5o
ZXJpdCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRh
YmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFBy
b3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgogCkluZGV4
OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmcuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52
YWxpZC1zdHJpbmcuaHRtbAkocmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MTMsNyArMTMsNiBAQCBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgYXR0cmliCiAK
IHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJj
b250ZW50RWRpdGFibGUiKScsJyJhYmMiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKLWRlYnVnKCJGSVhN
RTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBmYWlscyB0byB0YWtlIGludmFsaWQgdmFsdWUu
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDYzNiIpOwogc2hvdWxk
QmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdm
YWxzZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFBy
b3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5IicpOwogCklu
ZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rv
ci1mYWxzZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNz
aW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNyw4ICs3
LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFBBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJs
ZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVk
aXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCi1GSVhNRTogY29udGVudEVkaXRh
YmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKIFBBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1t
b2RpZnkiKSBpcyAicmVhZC1vbmx5IgogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNl
Lmh0bWwJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTks
NyArMTksNiBAQCBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzCiAKIHNo
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVu
dEVkaXRhYmxlIiknLCAnZmFsc2UnKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKLWRlYnVnKCJGSVhNRTogY29u
dGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYiKTsKIHNob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7
CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFs
dWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5IicpOwogCkluZGV4OiBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYwMjYp
CisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rv
ci10cnVlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNyw4ICs3LDcgQEAgT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNl
Ci1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIHNob3Vs
ZCBiZSBpbmhlcml0LiBXYXMgdHJ1ZS4KLUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRl
IHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD01MjA1NgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNv
bnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJl
YWQtd3JpdGUiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCkluZGV4OiBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Np
bmctYW5jZXN0b3ItdHJ1ZS5odG1sCShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMjAsNyArMjAsNiBAQCBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFi
bGUgaXMgbWlzCiAKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0
dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCdmYWxzZScpOwogc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOwotZGVi
dWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlm
IG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NiIp
Owogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFi
bGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5n
ZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7
CiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBh
cmVudC1hbmNlc3Rvci1taXNzaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlz
c2luZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDggKzcsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQu
IFdhcyBmYWxzZS4KLUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBp
bmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01MjA1NgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJs
ZSBpcyAiaW5oZXJpdCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRl
bnRFZGl0YWJsZSBpcyBmYWxzZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIiku
Z2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCiAK
SW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVu
dC1hbmNlc3Rvci1taXNzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmcuaHRtbAko
cmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
bWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlzc2luZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0x
OSw3ICsxOSw2IEBAIGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBtaXMKIAog
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250
ZW50RWRpdGFibGUiKScsJ2ZhbHNlJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNv
bnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScp
Owogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKIApJbmRleDogTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikK
KysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1m
YWxzZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsOCArNyw3IEBAIE9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQot
RkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQg
YmUgaW5oZXJpdC4gV2FzIGZhbHNlLgotRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUg
c2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUyMDU2CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29u
dGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJl
YWQtb25seSIKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1p
c3NpbmctcGFyZW50LWZhbHNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLmh0bWwJKHJldmlzaW9uIDc2
MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFy
ZW50LWZhbHNlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDYgQEAgZGVzY3JpcHRp
b24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pcwogCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2Un
KTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJs
ZScsICciaW5oZXJpdCInKTsKLWRlYnVnKCJGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0
ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTIwNTYiKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CiBzaG91bGRCZSgnd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2Rp
ZnkiKScsICcicmVhZC1vbmx5IicpOwogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRy
dWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtNyw4ICs3LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1
dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgdHJ1ZS4KLUZJ
WE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3Np
bmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorUEFTUyBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIK
IFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0
cnVlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCiAKSW5kZXg6IExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Npbmct
cGFyZW50LXRydWUuaHRtbAkocmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0xNSw3ICsxNSw2IEBAIGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBt
aXMKIAogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKScsJ2ZhbHNlJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklY
TUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2lu
Zy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91
bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0
cnVlJyk7CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIApJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWZhbHNl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYwMjYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTgsNyAr
OCw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRp
dGFibGUiKSBpcyAiZmFsc2UiCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIiku
Y29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCitQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlIGlzICJmYWxzZSIKIEZBSUwg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQg
YmUgZmFsc2UuIFdhcyB0cnVlLgogRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIHRydWUv
ZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OAogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIp
IGlzICJyZWFkLW9ubHkiCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3Nl
dC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA3NjAyNikKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtNyw3ICs3LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQog
CiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRl
bnRFZGl0YWJsZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
Y29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgdHJ1ZS4KK1BBU1MgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBGQUlM
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJl
IGZhbHNlLiBXYXMgdHJ1ZS4KIEZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCB0cnVlL2Zh
bHNlL2luaGVyaXQgc3RyaW5nIGlzIG5vdCB3b3JraW5nIHByb3Blcmx5LiBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgKIFBBU1Mgd2luZG93LmdldENvbXB1dGVk
U3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAi
cmVhZC1vbmx5IgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5o
ZXJpdC1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDc2MDI2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQt
aW5oZXJpdC1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsNyAr
Nyw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKSBpcyBmYWxzZQotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIKIEZBSUwgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4g
V2FzIGZhbHNlLgogRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5o
ZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OAogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShw
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdy
aXRlIgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12
YWx1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQor
KysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTksNyArOSw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIEZBSUwgZXhjZXB0aW9uVGhyb3duIHNob3VsZCBiZSB0
cnVlLiBXYXMgZmFsc2UuCiBGSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBz
dHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUyMDU3CiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5n
ZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJhYmMiCi1QQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgInRydWUiCitGQUlMIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUu
IFdhcyBpbmhlcml0LgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250
ZW50RWRpdGFibGUgaXMgdHJ1ZQogRkFJTCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIi
KS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikgc2hvdWxkIGJlIHJlYWQt
d3JpdGUuIFdhcyByZWFkLW9ubHkuCiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjAyNikK
KysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC04LDcgKzgsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIp
LmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUiCi1GQUlMIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBX
YXMgZmFsc2UuCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVk
aXRhYmxlIGlzICJ0cnVlIgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlz
Q29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBGSVhNRTogc2V0Q29u
dGVudEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2lu
ZyBwcm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4
CiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCkluZGV4OiBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZh
bHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MDI2KQorKysgTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4
cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5LDcgQEAgT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJUUnVlIgotRkFJ
TCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQg
YmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIp
LmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgogUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYUxTRSIK
QEAgLTE3LDcgKzE3LDcgQEAgUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5jb250
ZQogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5pc0NvbnRlbnRFZGl0YWJsZSBp
cyBmYWxzZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwgIiIpLmdldFByb3BlcnR5
VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgogRkFJTCBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIHNo
b3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJw
MiIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgorUEFTUyBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQi
CiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxlIHNo
b3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBGQUlMIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAy
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIHNob3VsZCBiZSBy
ZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5LgogRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSBzaG91
bGQgYmUgY2FzZSBpbnNlbnNpdGl2ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTUyMDU5Cg==
</data>
<flag name="review"
          id="70732"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="70756"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79433</attachid>
            <date>2011-01-19 09:16:24 -0800</date>
            <delta_ts>2011-01-19 10:45:35 -0800</delta_ts>
            <desc>fix patch 3</desc>
            <filename>52056_3.patch</filename>
            <type>text/plain</type>
            <size>20562</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MTI5KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMDEtMTkgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhlIHJldHVybiB2YWx1ZSBvZiBjb250ZW50RWRpdGFibGUoKSBm
dW5jdGlvbiBzaG91bGQgZGVwZW5kIG9uIHRoZSBET00gYXR0cmlidXRlCisgICAgICAgIGluc3Rl
YWQgb2YgcmVuZGVyIHN0eWxlIHVzZXJNb2RpZnkuIFRoZSBjb2RlIGNoYW5nZSBmaXhlZCB0ZXN0
IGNhc2VzIGluIHRoZSBidWcKKyAgICAgICAgYW5kIHBhcnRpYWxseSBmaXhlZCB0ZXN0IGNhc2Vz
IGluIG90aGVyIGNvbnRlbnRFZGl0YWJsZSBidWdzOworCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorCisgICAgICAgICogaHRtbC9IVE1MRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6Y29udGVudEVkaXRhYmxl
KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRpdGFibGUpOiBU
cmVhdGVkIG51bGwgYXMgImZhbHNlIiB0byBwYXNzCisgICAgICAgIGZhc3QvZG9tL2VsZW1lbnQt
YXR0cmlidXRlLWpzLW51bGwuaHRtbC4gU2hvdWxkIGZpeCBsYXRlci4KKwogMjAxMS0wMS0xOSAg
UGF2ZWwgUG9kaXZpbG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBZdXJ5IFNlbWlraGF0c2t5LgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVu
dC5jcHAJKHJldmlzaW9uIDc2MTI5KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVu
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY4OSwxOSArNjg5LDE4IEBAIGJvb2wgSFRNTEVsZW1l
bnQ6OmlzQ29udGVudFJpY2hseUVkaXRhYmwKIAogU3RyaW5nIEhUTUxFbGVtZW50Ojpjb250ZW50
RWRpdGFibGUoKSBjb25zdCAKIHsKLSAgICBpZiAoIXJlbmRlcmVyKCkpCi0gICAgICAgIHJldHVy
biAiZmFsc2UiOwotICAgIAotICAgIHN3aXRjaCAocmVuZGVyZXIoKS0+c3R5bGUoKS0+dXNlck1v
ZGlmeSgpKSB7Ci0gICAgICAgIGNhc2UgUkVBRF9XUklURToKLSAgICAgICAgICAgIHJldHVybiAi
dHJ1ZSI7Ci0gICAgICAgIGNhc2UgUkVBRF9PTkxZOgotICAgICAgICAgICAgcmV0dXJuICJmYWxz
ZSI7Ci0gICAgICAgIGNhc2UgUkVBRF9XUklURV9QTEFJTlRFWFRfT05MWToKLSAgICAgICAgICAg
IHJldHVybiAicGxhaW50ZXh0LW9ubHkiOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAg
cmV0dXJuICJpbmhlcml0IjsKLSAgICB9CisgICAgY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1ZSA9
IGZhc3RHZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0cik7CisKKyAgICBpZiAodmFsdWUu
aXNOdWxsKCkpCisgICAgICAgIHJldHVybiAiaW5oZXJpdCI7CisgICAgaWYgKHZhbHVlLmlzRW1w
dHkoKSB8fCBlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZSwgInRydWUiKSkKKyAgICAgICAgcmV0dXJu
ICJ0cnVlIjsKKyAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUsICJmYWxzZSIpKQorICAg
ICAgICAgcmV0dXJuICJmYWxzZSI7CisgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHZhbHVlLCAi
cGxhaW50ZXh0LW9ubHkiKSkKKyAgICAgICAgcmV0dXJuICJwbGFpbnRleHQtb25seSI7CisKKyAg
ICByZXR1cm4gImluaGVyaXQiOwogfQogCiB2b2lkIEhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRp
dGFibGUoQXR0cmlidXRlKiBhdHRyKSAKQEAgLTczNiw2ICs3MzUsOCBAQCB2b2lkIEhUTUxFbGVt
ZW50OjpzZXRDb250ZW50RWRpdGFibGUoY29uCiAgICAgICAgIEV4Y2VwdGlvbkNvZGUgZWM7CiAg
ICAgICAgIHJlbW92ZUF0dHJpYnV0ZShjb250ZW50ZWRpdGFibGVBdHRyLCBlYyk7CiAgICAgfQor
ICAgIGVsc2UgaWYgKGVuYWJsZWQuaXNOdWxsKCkpIC8vIEZJWE1FOiBudWxsIHNob3VsZCBiZSB0
cmVhdGVkIGFzIGludmFsaWQgc3RyaW5nIGFuZCB0aHJvdyBleGNlcHRpb24KKyAgICAgICAgc2V0
QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsICJmYWxzZSIpOwogICAgIGVsc2UKICAgICAg
ICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsIGVuYWJsZWQuaXNFbXB0eSgpID8g
InRydWUiIDogZW5hYmxlZCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA3NjEyOSkKKysrIExheW91
dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMwIEBACisyMDExLTAx
LTE5ICBDaGFuZyBTaHUgIDxjaGFuZy5zaHVAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD01MjA1NgorICAgICAgICAxLiBGaXhlZCB0ZXN0IGNhc2VzIGluIHRoZSBh
Ym92ZSBidWc7CisgICAgICAgIDIuIFBhcnRpYWxseSBmaXhlZCB0ZXN0IGNhc2VzIGluIG90aGVy
IGNvbnRlbnRFZGl0YWJsZSBidWdzOworCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmcuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbDoK
KyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVl
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2lu
Zy1hbmNlc3Rvci10cnVlLmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRy
LW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5n
Lmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50
LWZhbHNlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
bWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUuaHRtbDoKKyAgICAgICAgKiBl
ZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRp
dGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFs
dWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNh
c2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQ6CisKIDIwMTEtMDEtMTkgIFBhdmVsIFBvZGl2aWxv
diAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgWXVyeSBT
ZW1pa2hhdHNreS4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1p
bnZhbGlkLXN0cmluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRp
dGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gNzYxMjkpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxp
ZC1zdHJpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDggKzcsNyBAQCBPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAi
YWJjIgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxl
IHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCi1GSVhNRTogY29udGVudEVkaXRhYmxlIGF0
dHJpYnV0ZSBmYWlscyB0byB0YWtlIGludmFsaWQgdmFsdWUuIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MDYzNgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2IikuY29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKIFBBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1v
ZGlmeSIpIGlzICJyZWFkLW9ubHkiCiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1pbnZhbGlkLXN0cmluZy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlkLXN0cmluZy5odG1sCShyZXZpc2lvbiA3
NjEyOSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlkLXN0
cmluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw3ICsxMyw2IEBAIGRlc2NyaXB0aW9uKCdX
aGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWIKIAogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImFiYyInKTsK
IHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxl
JywgJyJpbmhlcml0IicpOwotZGVidWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRl
IGZhaWxzIHRvIHRha2UgaW52YWxpZCB2YWx1ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUwNjM2Iik7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CiBzaG91bGRCZSgnd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1v
ZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRp
dGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNl
c3Rvci1mYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MTI5KQorKysgTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UtZXhwZWN0ZWQu
dHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDggKzcsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIp
Lmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdh
cyBmYWxzZS4KLUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhl
cml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MjA1NgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBp
cyAiaW5oZXJpdCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRF
ZGl0YWJsZSBpcyBmYWxzZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0
UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCiAKSW5k
ZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9y
LWZhbHNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbAkocmV2aXNpb24gNzYxMjkpCisrKyBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxz
ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw3ICsxOSw2IEBAIGRlc2NyaXB0aW9uKCdXaGVu
IGNvbnRlbnRFZGl0YWJsZSBpcyBtaXMKIAogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsICdmYWxzZScpOwogc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlJywgJyJp
bmhlcml0IicpOwotZGVidWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3Vs
ZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01MjA1NiIpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
aXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywg
JyJyZWFkLW9ubHkiJyk7CiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkv
YXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjEyOSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRp
dGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUtZXhwZWN0ZWQudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC03LDggKzcsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0
ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyB0cnVlLgotRklY
TUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2lu
Zy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2CitQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0Igog
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRy
dWUKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIKIFBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0
ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLmh0bWwJKHJldmlz
aW9uIDc2MTI5KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Np
bmctYW5jZXN0b3ItdHJ1ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw3ICsyMCw2IEBAIGRl
c2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBtaXMKIAogc2hvdWxkQmUoJ2RvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScs
J2ZhbHNlJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50
RWRpdGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBh
dHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CiBzaG91bGRCZSgnd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0
ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
NzYxMjkpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1w
YXJlbnQtYW5jZXN0b3ItbWlzc2luZy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcs
OCArNyw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRp
dGFibGUiKSBpcyBmYWxzZQotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRl
bnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgotRklYTUU6IGNvbnRlbnRF
ZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2CitQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVz
ZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmcuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1w
YXJlbnQtYW5jZXN0b3ItbWlzc2luZy5odG1sCShyZXZpc2lvbiA3NjEyOSkKKysrIExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNz
aW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDYgQEAgZGVzY3JpcHRpb24oJ1do
ZW4gY29udGVudEVkaXRhYmxlIGlzIG1pcwogCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKIHNo
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICci
aW5oZXJpdCInKTsKLWRlYnVnKCJGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91
bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTIwNTYiKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIp
LmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1
dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScs
ICcicmVhZC1vbmx5IicpOwogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MTI5KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAkod29ya2luZyBj
b3B5KQpAQCAtNyw4ICs3LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUo
ImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCi1GSVhN
RTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5n
LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFs
c2UKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgogCkluZGV4OiBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1w
YXJlbnQtZmFsc2UuaHRtbAkocmV2aXNpb24gNzYxMjkpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbAkod29ya2luZyBjb3B5
KQpAQCAtMTUsNyArMTUsNiBAQCBkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMg
bWlzCiAKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0
ZSgiY29udGVudEVkaXRhYmxlIiknLCdmYWxzZScpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOwotZGVidWcoIkZJ
WE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3Np
bmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NiIpOwogc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAn
ZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJv
cGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CiAKSW5k
ZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10
cnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2
MTI5KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFy
ZW50LXRydWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDggKzcsNyBAQCBPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFs
c2UKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hv
dWxkIGJlIGluaGVyaXQuIFdhcyB0cnVlLgotRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1
dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU2CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
Y29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKIFBBU1Mgd2luZG93LmdldENvbXB1dGVk
U3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAi
cmVhZC13cml0ZSIKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRy
LW1pc3NpbmctcGFyZW50LXRydWUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS5odG1sCShyZXZpc2lvbiA3
NjEyOSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBh
cmVudC10cnVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDYgQEAgZGVzY3JpcHRp
b24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pcwogCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2Un
KTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJs
ZScsICciaW5oZXJpdCInKTsKLWRlYnVnKCJGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0
ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTIwNTYiKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlm
eSIpJywgJyJyZWFkLXdyaXRlIicpOwogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjEy
OSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWZhbHNlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRp
djEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYWxzZSIKLUZBSUwgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGZh
bHNlLiBXYXMgdHJ1ZS4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250
ZW50RWRpdGFibGUgaXMgImZhbHNlIgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
MSIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCiBGSVhNRTog
c2V0Q29udGVudEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qg
d29ya2luZyBwcm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTUyMDU4CiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3Nl
dC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MTI5KQorKysg
TGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2Ut
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGlu
aGVyaXQuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRl
bnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAi
KS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgogRklYTUU6IHNl
dENvbnRlbnRFZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdv
cmtpbmcgcHJvcGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MjA1OAogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCkluZGV4OiBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVlLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhl
cml0LXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxMjkpCisrKyBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVlLWV4cGVjdGVk
LnR4dAkod29ya2luZyBjb3B5KQpAQCAtNyw3ICs3LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAi
KS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBX
YXMgZmFsc2UuCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRh
YmxlIGlzICJpbmhlcml0IgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29u
dGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBGSVhNRTogc2V0Q29udGVu
dEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2luZyBw
cm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4CiBQ
QVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Vi
a2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxMjkpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
OSw3ICs5LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogRkFJ
TCBleGNlcHRpb25UaHJvd24gc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KIEZJWE1FOiBzZXRD
b250ZW50RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cgZXhjZXB0aW9u
LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTcKIFBBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxl
IikgaXMgImFiYyIKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRF
ZGl0YWJsZSBpcyAidHJ1ZSIKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNv
bnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGluaGVyaXQuCiBQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCiBGQUlMIHdp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQt
dXNlci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25seS4KIApJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdHJ1ZS1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdHJ1ZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MTI5KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtdHJ1ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTgsNyArOCw3
IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKSBpcyAidHJ1ZSIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250
ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KK1BBU1MgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgaXMgInRydWUiCiBGQUlMIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRy
dWUuIFdhcyBmYWxzZS4KIEZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCB0cnVlL2ZhbHNl
L2luaGVyaXQgc3RyaW5nIGlzIG5vdCB3b3JraW5nIHByb3Blcmx5LiBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAi
cmVhZC13cml0ZSIKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZh
bHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gNzYxMjkpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC05LDcgKzksNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAK
IAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29u
dGVudEVkaXRhYmxlIikgaXMgIlRSdWUiCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYxIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlIGlzICJ0cnVlIgog
RkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29udGVudEVkaXRhYmxlIHNo
b3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRp
djEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQt
d3JpdGUiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgi
Y29udGVudEVkaXRhYmxlIikgaXMgImZhTFNFIgpAQCAtMTcsNyArMTcsNyBAQCBQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKHAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIp
IGlzICJyZWFkLW9ubHkiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmhhc0F0
dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgc2hvdWxkIGJlIGZhbHNlLiBXYXMgdHJ1ZS4KLUZB
SUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBi
ZSBpbmhlcml0LiBXYXMgZmFsc2UuCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIp
LmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KIEZB
SUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUocDIsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Vi
a2l0LXVzZXItbW9kaWZ5Iikgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCiBG
SVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBjYXNlIGluc2Vuc2l0aXZlLiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79449</attachid>
            <date>2011-01-19 10:45:35 -0800</date>
            <delta_ts>2011-01-19 11:31:44 -0800</delta_ts>
            <desc>fix patch 4</desc>
            <filename>52056_4.patch</filename>
            <type>text/plain</type>
            <size>21203</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MTM5KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDEtMTkgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhlIHJldHVybiB2YWx1ZSBvZiBjb250ZW50RWRpdGFibGUoKSBm
dW5jdGlvbiBzaG91bGQgZGVwZW5kIG9uIHRoZSBET00gYXR0cmlidXRlCisgICAgICAgIGluc3Rl
YWQgb2YgcmVuZGVyIHN0eWxlIHVzZXJNb2RpZnkuIFRoZSBjb2RlIGNoYW5nZSBmaXhlZCB0ZXN0
IGNhc2VzIGluIHRoZSBidWcKKyAgICAgICAgYW5kIHBhcnRpYWxseSBmaXhlZCB0ZXN0IGNhc2Vz
IGluIG90aGVyIGNvbnRlbnRFZGl0YWJsZSBidWdzOworCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorCisgICAgICAgICogaHRtbC9IVE1MRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6Y29udGVudEVkaXRhYmxl
KToKKwogMjAxMS0wMS0xOCAgRXZhbiBNYXJ0aW4gIDxldmFuQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBUb255IENoYW5nLgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudC5jcHAJKHJldmlzaW9uIDc2MTM1KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY4OSwxOSArNjg5LDE4IEBAIGJvb2wgSFRNTEVs
ZW1lbnQ6OmlzQ29udGVudFJpY2hseUVkaXRhYmwKIAogU3RyaW5nIEhUTUxFbGVtZW50Ojpjb250
ZW50RWRpdGFibGUoKSBjb25zdCAKIHsKLSAgICBpZiAoIXJlbmRlcmVyKCkpCi0gICAgICAgIHJl
dHVybiAiZmFsc2UiOwotICAgIAotICAgIHN3aXRjaCAocmVuZGVyZXIoKS0+c3R5bGUoKS0+dXNl
ck1vZGlmeSgpKSB7Ci0gICAgICAgIGNhc2UgUkVBRF9XUklURToKLSAgICAgICAgICAgIHJldHVy
biAidHJ1ZSI7Ci0gICAgICAgIGNhc2UgUkVBRF9PTkxZOgotICAgICAgICAgICAgcmV0dXJuICJm
YWxzZSI7Ci0gICAgICAgIGNhc2UgUkVBRF9XUklURV9QTEFJTlRFWFRfT05MWToKLSAgICAgICAg
ICAgIHJldHVybiAicGxhaW50ZXh0LW9ubHkiOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAg
ICAgcmV0dXJuICJpbmhlcml0IjsKLSAgICB9CisgICAgY29uc3QgQXRvbWljU3RyaW5nJiB2YWx1
ZSA9IGZhc3RHZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0cik7CisKKyAgICBpZiAodmFs
dWUuaXNOdWxsKCkpCisgICAgICAgIHJldHVybiAiaW5oZXJpdCI7CisgICAgaWYgKHZhbHVlLmlz
RW1wdHkoKSB8fCBlcXVhbElnbm9yaW5nQ2FzZSh2YWx1ZSwgInRydWUiKSkKKyAgICAgICAgcmV0
dXJuICJ0cnVlIjsKKyAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UodmFsdWUsICJmYWxzZSIpKQor
ICAgICAgICAgcmV0dXJuICJmYWxzZSI7CisgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKHZhbHVl
LCAicGxhaW50ZXh0LW9ubHkiKSkKKyAgICAgICAgcmV0dXJuICJwbGFpbnRleHQtb25seSI7CisK
KyAgICByZXR1cm4gImluaGVyaXQiOwogfQogCiB2b2lkIEhUTUxFbGVtZW50OjpzZXRDb250ZW50
RWRpdGFibGUoQXR0cmlidXRlKiBhdHRyKSAKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MTM5KQorKysg
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzMgQEAKKzIw
MTEtMDEtMTkgIENoYW5nIFNodSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTUyMDU2CisgICAgICAgIDEuIEZpeGVkIHRlc3QgY2FzZXMgaW4g
dGhlIGFib3ZlIGJ1ZzsKKyAgICAgICAgMi4gUGFydGlhbGx5IGZpeGVkIHRlc3QgY2FzZXMgaW4g
b3RoZXIgY29udGVudEVkaXRhYmxlIGJ1Z3M7CisgICAgICAgIDMuIFVwZGF0ZWQgZXhwZWN0ZWQg
cmVzdWx0IGZvciBmYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWwuCisgICAg
ICAgICAgIEhvd2V2ZXIsIHRoZSB0ZXN0IGl0c2VsZiBzaG91bGQgYmUgZml4ZWQgbGF0ZXIgaW4g
YnVnIDUyMDU3LgorCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQt
c3RyaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
aW52YWxpZC1zdHJpbmcuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
bWlzc2luZy1hbmNlc3Rvci1mYWxzZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbDoKKyAgICAgICAgKiBl
ZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10
cnVlLmh0bWw6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFy
ZW50LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRp
dGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLmh0bWw6CisgICAg
ICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJl
bnQtZmFsc2UuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2lu
Zy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVk
aXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2
ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMt
bnVsbC1leHBlY3RlZC50eHQ6CisKIDIwMTEtMDEtMTkgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWlu
c3RlaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBXaW5kb3dzIGV4cGVjdGVkIHJlc3Vs
dHMgYWZ0ZXIgcjc2MTE1LgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmctZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiA3NjEzNSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1p
bnZhbGlkLXN0cmluZy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsOCArNyw3IEBA
IE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIp
IGlzICJhYmMiCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRp
dGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KLUZJWE1FOiBjb250ZW50RWRpdGFi
bGUgYXR0cmlidXRlIGZhaWxzIHRvIHRha2UgaW52YWxpZCB2YWx1ZS4gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNjM2CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBmYWxzZQogUEFTUyB3aW5k
b3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVz
ZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWwJKHJldmlz
aW9uIDc2MTM1KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFs
aWQtc3RyaW5nLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDcgKzEzLDYgQEAgZGVzY3JpcHRp
b24oJ1doZW4gY29udGVudEVkaXRhYmxlIGF0dHJpYgogCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciYWJj
IicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRp
dGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRy
aWJ1dGUgZmFpbHMgdG8gdGFrZSBpbnZhbGlkIHZhbHVlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTA2MzYiKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5k
b3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVz
ZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5n
LWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxMzUpCisrKyBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsOCArNyw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQotRkFJTCBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJp
dC4gV2FzIGZhbHNlLgotRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJl
IGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTUyMDU2CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRh
YmxlIGlzICJpbmhlcml0IgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29u
dGVudEVkaXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIi
KS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIK
IApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5j
ZXN0b3ItZmFsc2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS5odG1sCShyZXZpc2lvbiA3NjEzNSkK
KysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9y
LWZhbHNlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDYgQEAgZGVzY3JpcHRpb24o
J1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pcwogCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywgJ2ZhbHNlJyk7
CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUn
LCAnImluaGVyaXQiJyk7Ci1kZWJ1ZygiRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUg
c2hvdWxkIGJlIGluaGVyaXQgaWYgbWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUyMDU2Iik7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5
IiknLCAnInJlYWQtb25seSInKTsKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3It
dHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MTM1KQorKysgTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTcsOCArNyw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEEKIAogCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0
cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQotRkFJTCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIHRydWUu
Ci1GSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBt
aXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVy
aXQiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUg
aXMgdHJ1ZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlW
YWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgogUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbAko
cmV2aXNpb24gNzYxMzUpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
bWlzc2luZy1hbmNlc3Rvci10cnVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIwLDcgKzIwLDYg
QEAgZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pcwogCiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJs
ZSIpJywnZmFsc2UnKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNv
bnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKLWRlYnVnKCJGSVhNRTogY29udGVudEVkaXRh
YmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYiKTsKIHNob3VsZEJlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKIHNob3VsZEJl
KCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtp
dC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwogCkluZGV4OiBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlzc2luZy1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiA3NjEzNSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNz
aW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtNyw4ICs3LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQog
CiAKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRl
bnRFZGl0YWJsZSIpIGlzIGZhbHNlCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
Y29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCi1GSVhNRTogY29u
dGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKIFBB
U1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJr
aXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlzc2luZy5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNz
aW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLmh0bWwJKHJldmlzaW9uIDc2MTM1KQorKysgTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9y
LW1pc3NpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTksNyArMTksNiBAQCBkZXNjcmlwdGlv
bignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzCiAKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCdmYWxzZScp
Owogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxl
JywgJyJpbmhlcml0IicpOwotZGVidWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRl
IHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD01MjA1NiIpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlm
eSIpJywgJyJyZWFkLW9ubHkiJyk7CiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZh
bHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxMzUpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC03LDggKzcsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJp
YnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4K
LUZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1p
c3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorUEFT
UyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJp
dCIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZSBp
cyBmYWxzZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlW
YWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCiAKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNz
aW5nLXBhcmVudC1mYWxzZS5odG1sCShyZXZpc2lvbiA3NjEzNSkKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xNSw3ICsxNSw2IEBAIGRlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJs
ZSBpcyBtaXMKIAogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0
cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJ2ZhbHNlJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7Ci1kZWJ1
ZygiRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYg
bWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7
CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJs
ZScsICdmYWxzZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5n
ZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsK
IApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFy
ZW50LXRydWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gNzYxMzUpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2lu
Zy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsOCArNyw3IEBA
IE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBp
cyBmYWxzZQotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJs
ZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIHRydWUuCi1GSVhNRTogY29udGVudEVkaXRhYmxlIGF0
dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQogUEFTUyB3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIp
IGlzICJyZWFkLXdyaXRlIgogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLmh0bWwJKHJldmlz
aW9uIDc2MTM1KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Np
bmctcGFyZW50LXRydWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTUsNyArMTUsNiBAQCBkZXNj
cmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzCiAKIHNob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCdm
YWxzZScpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVk
aXRhYmxlJywgJyJpbmhlcml0IicpOwotZGVidWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0
cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NiIpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXIt
bW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CiAKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDc2MTM1KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC04LDcgKzgsNyBAQCBPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImZhbHNlIgotRkFJ
TCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQg
YmUgZmFsc2UuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIp
LmNvbnRlbnRFZGl0YWJsZSBpcyAiZmFsc2UiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYxIikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGZhbHNlLiBXYXMgdHJ1ZS4KIEZJ
WE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCB0cnVlL2ZhbHNlL2luaGVyaXQgc3RyaW5nIGlz
IG5vdCB3b3JraW5nIHByb3Blcmx5LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTIwNTgKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFBy
b3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgpJbmRleDog
TGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2Ut
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxMzUp
CisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1m
YWxzZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTcsNyArNyw3IEBAIE9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQot
RkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQg
YmUgaW5oZXJpdC4gV2FzIHRydWUuCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
Y29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCiBGSVhN
RTogc2V0Q29udGVudEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBu
b3Qgd29ya2luZyBwcm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTUyMDU4CiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0
LWluaGVyaXQtcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjEzNSkKKysrIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUtZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQCBPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKLUZBSUwgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVy
aXQuIFdhcyBmYWxzZS4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50
RWRpdGFibGUgaXMgImluaGVyaXQiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
aXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KIEZJWE1FOiBzZXRD
b250ZW50RWRpdGFibGUgd2l0aCB0cnVlL2ZhbHNlL2luaGVyaXQgc3RyaW5nIGlzIG5vdCB3b3Jr
aW5nIHByb3Blcmx5LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIw
NTgKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIKSW5kZXg6IExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFs
dWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjEzNSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC05LDcgKzksNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
CiBGQUlMIGV4Y2VwdGlvblRocm93biBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgogRklYTUU6
IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIGludmFsaWQgc3RyaW5nIHNob3VsZCB0aHJvdyBleGNl
cHRpb24uIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NwogUEFT
UyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRp
dGFibGUiKSBpcyAiYWJjIgotUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29u
dGVudEVkaXRhYmxlIGlzICJ0cnVlIgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
IikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgaW5oZXJpdC4KIFBBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKIEZB
SUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIHNob3VsZCBiZSByZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5Lgog
CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC10cnVlLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC10
cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxMzUpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L3NldC10cnVlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtOCw3
ICs4LDcgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFBB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRF
ZGl0YWJsZSIpIGlzICJ0cnVlIgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIp
LmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKIEZBSUwg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQg
YmUgdHJ1ZS4gV2FzIGZhbHNlLgogRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIHRydWUv
ZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OAogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIp
IGlzICJyZWFkLXdyaXRlIgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9z
ZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiA3NjEzNSkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29w
eSkKQEAgLTksNyArOSw3IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEEKIAogCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKSBpcyAiVFJ1ZSIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KK1BB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgaXMgInRy
dWUiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuaXNDb250ZW50RWRpdGFi
bGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAi
cmVhZC13cml0ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmli
dXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAiZmFMU0UiCkBAIC0xNyw3ICsxNyw3IEBAIFBBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGUKIFBBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKIFBBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9k
aWZ5IikgaXMgInJlYWQtb25seSIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIiku
aGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVl
LgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgc2hv
dWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAyIikuY29udGVudEVkaXRhYmxlIGlzICJpbmhlcml0IgogRkFJTCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicDIiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNl
LgogRkFJTCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25s
eS4KIEZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRpdmUu
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OQpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMt
bnVsbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MTM1KQorKysgTGF5b3V0VGVzdHMvZmFzdC9k
b20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTExLDcgKzExLDcgQEAgVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5
IAogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3Rl
ZCBIVE1MRWxlbWVudC5jbGFzc05hbWVdCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdhcyB0
aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxFbGVtZW50LmlubmVySFRNTF0KIFRFU1QgU1VD
Q0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEVsZW1l
bnQuaW5uZXJUZXh0XQotVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIHN0cmluZyAn
ZmFsc2UnLiBbdGVzdGVkIEhUTUxFbGVtZW50LmNvbnRlbnRFZGl0YWJsZV0KK1RFU1QgRkFJTEVE
OiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiB0aGUgc3RyaW5nICdmYWxzZScgYnV0IHdhcyB0
aGUgc3RyaW5nICd0cnVlJy4gW3Rlc3RlZCBIVE1MRWxlbWVudC5jb250ZW50RWRpdGFibGVdCiAK
IFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQg
SFRNTEFuY2hvckVsZW1lbnQuYWNjZXNzS2V5XQogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3
YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MQW5jaG9yRWxlbWVudC5jaGFyc2V0XQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>