<?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>52057</bug_id>
          
          <creation_ts>2011-01-07 07:14:12 -0800</creation_ts>
          <short_desc>setContentEditable with invalid string should throw exception</short_desc>
          <delta_ts>2011-10-18 22:46:50 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          <blocked>54041</blocked>
          <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>sam</cc>
    
    <cc>suresh.voruganti</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>330754</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-07 07:14:12 -0800</bug_when>
    <thetext>The spec indicates a SYNTAX_ERR exception should throw when setting contentEditable with invalid string.
Layout test:
set-invalid-value.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330854</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-01-07 10:33:48 -0800</bug_when>
    <thetext>&gt; set-invalid-value.html

Where can one find this layout test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336627</commentid>
    <comment_count>2</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 10:38:42 -0800</bug_when>
    <thetext>should also take care of fast/dom/element-attribute-js-null.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336770</commentid>
    <comment_count>3</comment_count>
      <attachid>79477</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 14:02:13 -0800</bug_when>
    <thetext>Created attachment 79477
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336771</commentid>
    <comment_count>4</comment_count>
      <attachid>79477</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 14:03:26 -0800</bug_when>
    <thetext>Comment on attachment 79477
fix patch

forgot to do element-attribute-js-null.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336802</commentid>
    <comment_count>5</comment_count>
      <attachid>79484</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-19 14:26:53 -0800</bug_when>
    <thetext>Created attachment 79484
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336968</commentid>
    <comment_count>6</comment_count>
      <attachid>79484</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-19 17:25:18 -0800</bug_when>
    <thetext>Comment on attachment 79484
fix patch

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

The code change itself looks good but r- because the change log entry lacks sufficient explanation as to why and what change is made.

&gt; Source/WebCore/ChangeLog:10
&gt; +        1. Updated idl file and function signature to throw exception when necessary
&gt; +        2. Threw exception on invalid strings
&gt; +        2. Made setting values case-insensitive

You should explain why you&apos;re making this change. Namely, refer to the part of the spec this change is required:
http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#attr-contenteditable

Also, you seem to be also making the return value to be &quot;true&quot;, &quot;false&quot;, or &quot;inherit&quot; and not returning values such as &quot;TRue&quot; and &quot;FaLSe&quot; as tested below.  And we should definitely be explaining that in the change log.

&gt; Source/WebCore/html/HTMLElement.idl:63
&gt; +                attribute [ConvertNullToNullString] DOMString contentEditable
&gt; +                    setter raises(DOMException);

I think you need to have one more space before attribute and setter to align with other attributes.

&gt; LayoutTests/ChangeLog:8
&gt; +        Updated expected results after the fix. Also corrected test cases.

Please explain what changes you have made.

&gt; LayoutTests/ChangeLog:15
&gt; +        * fast/dom/element-attribute-js-null-expected.txt:
&gt; +        * fast/dom/element-attribute-js-null.html:

You should explain why this test had to be modified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337336</commentid>
    <comment_count>7</comment_count>
      <attachid>79600</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-20 07:45:05 -0800</bug_when>
    <thetext>Created attachment 79600
fix patch 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337374</commentid>
    <comment_count>8</comment_count>
      <attachid>79600</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-20 08:54:43 -0800</bug_when>
    <thetext>Comment on attachment 79600
fix patch 2

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

&gt; Source/WebCore/ChangeLog:14
&gt; +        Related quotas: &quot;On setting, if the new value is an ASCII case-insensitive match for the 
&gt; +        string &quot;inherit&quot; then the content attribute must be removed, if the new value is an ASCII 
&gt; +        case-insensitive match for the string &quot;true&quot; then the content attribute must be set to the 
&gt; +        string &quot;true&quot;, if the new value is an ASCII case-insensitive match for the string &quot;false&quot; 
&gt; +        then the content attribute must be set to the string &quot;false&quot;, and otherwise the attribute 

You should probably replace &quot; by &apos; inside your quotes.

&gt; Source/WebCore/ChangeLog:19
&gt; +        (WebCore::HTMLElement::setContentEditable):
&gt; +        Throw exception on invalid input strings;

You should just do:
(WebCore::HTMLElement::setContentEditable): Throw exception on invalid input strings;

&gt; Source/WebCore/ChangeLog:22
&gt; +        * html/HTMLElement.h:
&gt; +        Add additional parameter ExceptionCode&amp; for function setContentEditable.

Put these two on the same line.

&gt; Source/WebCore/ChangeLog:24
&gt; +        * html/HTMLElement.idl:
&gt; +        Add exception throwing support for contentEditable setter.

Ditto.

&gt; LayoutTests/ChangeLog:20
&gt; +        * editing/editability/set-invalid-value-expected.txt:
&gt; +        * editing/editability/set-invalid-value.html:
&gt; +        1. Fixed the getAttribute expectation as &quot;abc&quot; was failed to set.
&gt; +        2. Added additional check for setting empty string.
&gt; +        * editing/editability/set-value-caseinsensitive-expected.txt:
&gt; +        * editing/editability/set-value-caseinsensitive.html:
&gt; +        Fixed the getAttribute expectations as all strings should be converted to lower cases.
&gt; +        * fast/dom/element-attribute-js-null-expected.txt:
&gt; +        * fast/dom/element-attribute-js-null.html:
&gt; +        Fixed this existing test as the expectation for setting with null should throw exception
&gt; +        instead of &quot;false&quot;. Also added handling code when exception was thrown.

Again, we usually start the explanation on the same line as the file name after : with a space.

&gt; LayoutTests/fast/dom/element-attribute-js-null.html:40
&gt; +                else
&gt; +                    result = &quot;&lt;span class=&apos;fail&apos;&gt;TEST FAILED:&lt;/span&gt; An exception should have been thrown.&quot;;

I don&apos;t think this is right.  If an exception wasn&apos;t thrown then exceptionThrown will be false, and we&apos;ll execute the else clause. r- because of this. I think what you meant was
if (expected === null) {
    if (exceptionThrown)
        ...
    else
        ...
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337419</commentid>
    <comment_count>9</comment_count>
      <attachid>79612</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-20 10:19:58 -0800</bug_when>
    <thetext>Created attachment 79612
fix patch 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337456</commentid>
    <comment_count>10</comment_count>
      <attachid>79612</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-20 11:10:06 -0800</bug_when>
    <thetext>Comment on attachment 79612
fix patch 3

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

review- because the set-invalid-value.html test is incorrect

&gt; Source/WebCore/html/HTMLElement.cpp:732
&gt; -void HTMLElement::setContentEditable(const String &amp;enabled)
&gt; +void HTMLElement::setContentEditable(const String &amp;enabled, ExceptionCode&amp; ec)

Since you are touching this line of code, you should change the incorrect &quot;String &amp; enabled&quot; to the correctly-styled &quot;String&amp; enabled&quot;.

&gt; Source/WebCore/html/HTMLElement.cpp:737
&gt; +        setAttribute(contenteditableAttr, &quot;true&quot;);
&gt; +    else if (equalIgnoringCase(enabled, &quot;false&quot;))
&gt; +        setAttribute(contenteditableAttr, &quot;false&quot;);

It would be slightly better to pass &quot;ec&quot; in these two calls to setAttribute. Probably no real effect, but the version without the exception code argument ignores exceptions, and I don’t think we need to ignore them.

&gt; LayoutTests/editing/editability/set-invalid-value.html:22
&gt;  

This entire test should be in dom/HTMLInputElement/script-tests rather than in editing/editability. Not something we have to fix now.

&gt; LayoutTests/editing/editability/set-invalid-value.html:34
&gt; +try {
&gt; +    document.getElementById(&quot;div&quot;).contentEditable = &quot;&quot;;
&gt; +} catch (e) {
&gt; +    if (e.code == 12)
&gt; +        exceptionThrown = true;
&gt; +}

This test is wrong. At the start of this block of code, the exceptionThrown variable is already true, so it will pass no matter what. It also would be better to use shouldThrow in all of these tests that are checking for an exception instead of hand-rolling an exception testing code path. An example of how to use shouldThrow is in dom/HTMLElement/script-tests/insertAdjacentHTML-errors.js and there are many other examples too.

&gt; LayoutTests/fast/dom/element-attribute-js-null.html:38
&gt; +                    result = &quot;&lt;span class=&apos;pass&apos;&gt;TEST SUCCEEDED:&lt;/span&gt; The exception was thrown as expected.&quot;;

It would be better if this checked what kind of exception was thrown.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337459</commentid>
    <comment_count>11</comment_count>
      <attachid>79612</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-20 11:19:17 -0800</bug_when>
    <thetext>Comment on attachment 79612
fix patch 3

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

&gt;&gt; LayoutTests/editing/editability/set-invalid-value.html:22
&gt;&gt;  
&gt; 
&gt; This entire test should be in dom/HTMLInputElement/script-tests rather than in editing/editability. Not something we have to fix now.

Why is that?  I don&apos;t think these tests are to do with InputElement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337464</commentid>
    <comment_count>12</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-20 11:28:06 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; (From update of attachment 79612 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=79612&amp;action=review
&gt; 
&gt; &gt;&gt; LayoutTests/editing/editability/set-invalid-value.html:22
&gt; &gt;&gt;  
&gt; &gt; 
&gt; &gt; This entire test should be in dom/HTMLInputElement/script-tests rather than in editing/editability. Not something we have to fix now.
&gt; 
&gt; Why is that?  I don&apos;t think these tests are to do with InputElement.

Maybe Darin meant fast/dom/HTMLElement/ ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337466</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-20 11:32:39 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; &gt; This entire test should be in dom/HTMLInputElement/script-tests rather than in editing/editability. Not something we have to fix now.
&gt; &gt; 
&gt; &gt; Why is that?  I don&apos;t think these tests are to do with InputElement.
&gt; 
&gt; Maybe Darin meant fast/dom/HTMLElement/ ?

Yes, right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337477</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-20 11:48:04 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; This entire test should be in dom/HTMLInputElement/script-tests rather than in editing/editability. Not something we have to fix now.

Let me be clearer about this, since I misspoke. The test should be here:

    dom/HTMLElement

And it should use the functions such as shouldBe and shouldThrow. Actually using script-tests is unnecessary and probably not a good idea going forward.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337479</commentid>
    <comment_count>15</comment_count>
      <attachid>79625</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-20 11:50:14 -0800</bug_when>
    <thetext>Created attachment 79625
fix patch 4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337573</commentid>
    <comment_count>16</comment_count>
      <attachid>79625</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-20 13:45:25 -0800</bug_when>
    <thetext>Comment on attachment 79625
fix patch 4

Rejecting attachment 79625 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=eseidel-cq-sl&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. 6941 tests run.
109.54s total testing time

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

Full output: http://queues.webkit.org/results/7503263</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337598</commentid>
    <comment_count>17</comment_count>
      <attachid>79651</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-20 14:16:24 -0800</bug_when>
    <thetext>Created attachment 79651
fix patch 5

Too bad I forgot to run --reset-results last time. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337679</commentid>
    <comment_count>18</comment_count>
      <attachid>79651</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-20 15:58:03 -0800</bug_when>
    <thetext>Comment on attachment 79651
fix patch 5

Clearing flags on attachment: 79651

Committed r76301: &lt;http://trac.webkit.org/changeset/76301&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337680</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-20 15:58:09 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>340429</commentid>
    <comment_count>20</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-01-26 13:17:36 -0800</bug_when>
    <thetext>Revision r76301 cherry-picked into qtwebkit-2.1.x with commit 56db691 &lt;http://gitorious.org/webkit/qtwebkit/commit/56db691&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>347670</commentid>
    <comment_count>21</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-02-08 14:13:40 -0800</bug_when>
    <thetext>We forgot to allow the WebKit-extension value, “plaintext-only”!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79477</attachid>
            <date>2011-01-19 14:02:13 -0800</date>
            <delta_ts>2011-01-19 14:26:53 -0800</delta_ts>
            <desc>fix patch</desc>
            <filename>52057_1.patch</filename>
            <type>text/plain</type>
            <size>10660</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MTU1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDEtMTkgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgMS4gVXBkYXRlZCBpZGwgZmlsZSBhbmQg
ZnVuY3Rpb24gc2lnbmF0dXJlIHRvIHRocm93IGV4Y2VwdGlvbiB3aGVuIG5lY2Vzc2FyeQorICAg
ICAgICAyLiBUaHJldyBleGNlcHRpb24gb24gaW52YWxpZCBzdHJpbmdzCisgICAgICAgIDIuIE1h
ZGUgc2V0dGluZyB2YWx1ZXMgY2FzZS1pbnNlbnNpdGl2ZQorCisgICAgICAgICogaHRtbC9IVE1M
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6c2V0Q29udGVudEVk
aXRhYmxlKToKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9I
VE1MRWxlbWVudC5pZGw6CisKIDIwMTEtMDEtMTkgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNl
ckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBSb2Jlbi4KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCShyZXZpc2lvbiA3NjE0NikKKysrIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MjksMTQgKzcy
OSwxNiBAQCB2b2lkIEhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRpdGFibGUoQXR0CiAgICAgfQog
fQogCi12b2lkIEhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRpdGFibGUoY29uc3QgU3RyaW5nICZl
bmFibGVkKQordm9pZCBIVE1MRWxlbWVudDo6c2V0Q29udGVudEVkaXRhYmxlKGNvbnN0IFN0cmlu
ZyAmZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7Ci0gICAgaWYgKGVuYWJsZWQgPT0gImlu
aGVyaXQiKSB7Ci0gICAgICAgIEV4Y2VwdGlvbkNvZGUgZWM7CisgICAgaWYgKGVxdWFsSWdub3Jp
bmdDYXNlKGVuYWJsZWQsICJ0cnVlIikpCisgICAgICAgIHNldEF0dHJpYnV0ZShjb250ZW50ZWRp
dGFibGVBdHRyLCAidHJ1ZSIpOworICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGVuYWJs
ZWQsICJmYWxzZSIpKQorICAgICAgICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0ciwg
ImZhbHNlIik7CisgICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UoZW5hYmxlZCwgImluaGVy
aXQiKSkKICAgICAgICAgcmVtb3ZlQXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsIGVjKTsK
LSAgICB9CiAgICAgZWxzZQotICAgICAgICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0
ciwgZW5hYmxlZC5pc0VtcHR5KCkgPyAidHJ1ZSIgOiBlbmFibGVkKTsKKyAgICAgICAgZWMgPSBT
WU5UQVhfRVJSOwogfQogCiBib29sIEhUTUxFbGVtZW50OjpkcmFnZ2FibGUoKSBjb25zdApJbmRl
eDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaAkocmV2aXNpb24gNzYxNDYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTYxLDcgKzYxLDcg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc0NvbnRlbnRSaWNobHlFZGl0YWJsZSgpIGNv
bnN0OwogCiAgICAgU3RyaW5nIGNvbnRlbnRFZGl0YWJsZSgpIGNvbnN0OwotICAgIHZvaWQgc2V0
Q29udGVudEVkaXRhYmxlKGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgc2V0Q29udGVudEVkaXRh
YmxlKGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHZpcnR1YWwgYm9vbCBk
cmFnZ2FibGUoKSBjb25zdDsKICAgICB2b2lkIHNldERyYWdnYWJsZShib29sKTsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCShyZXZpc2lvbiA3NjE0NikKKysrIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC01OSw3ICs1OSw4
IEBAIG1vZHVsZSBodG1sIHsKIAogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxl
Y3Rpb24gY2hpbGRyZW47CiAKLSAgICAgICAgICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVs
bFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGNvbnRlbnRFZGl0YWJsZTsKKyAgICAgICAgICAgICAg
ICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgY29udGVudEVk
aXRhYmxlCisgICAgICAgICAgICAgICAgICAgIHNldHRlciByYWlzZXMoRE9NRXhjZXB0aW9uKTsK
ICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gaXNDb250ZW50RWRpdGFibGU7CiAK
ICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIGJvb2xlYW4gc3BlbGxjaGVjazsKSW5kZXg6IExh
eW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDc2MTU1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMDEtMTkgIENoYW5nIFNodSAgPGNoYW5nLnNodUBub2tp
YS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
c2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2Vw
dGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUy
MDU3CisKKyAgICAgICAgVXBkYXRlZCBleHBlY3RlZCByZXN1bHRzIGFmdGVyIHRoZSBmaXguIEFs
c28gY29ycmVjdGVkIHRlc3QgY2FzZS4KKworICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmls
aXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVk
aXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sOgorCiAyMDEx
LTAxLTE5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gNzYxNDYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3Nl
dC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiwxMiArNiwx
NiBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1GQUlM
IGV4Y2VwdGlvblRocm93biBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgotRklYTUU6IHNldENv
bnRlbnRFZGl0YWJsZSB3aXRoIGludmFsaWQgc3RyaW5nIHNob3VsZCB0aHJvdyBleGNlcHRpb24u
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NwotUEFTUyBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KSBpcyAiYWJjIgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVk
aXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgaW5oZXJpdC4KK1BBU1MgZXhjZXB0aW9uVGhyb3du
IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0
ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgInRydWUiCiBQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCi1GQUlMIHdpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1t
b2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25seS4KK1BBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2Vy
LW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorUEFTUyBleGNlcHRpb25UaHJvd24gaXMgdHJ1ZQor
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIp
LmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1Mgd2luZG93LmdldENvbXB1dGVk
U3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlz
ICJyZWFkLXdyaXRlIgogCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKSW5kZXg6
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlk
LXZhbHVlLmh0bWwJKHJldmlzaW9uIDc2MTQ2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw4ICsy
MSwyMCBAQCB0cnkgewogfQogCiBzaG91bGRCZSgnZXhjZXB0aW9uVGhyb3duJywgJ3RydWUnKTsK
LWRlYnVnKCJGSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcgc2hv
dWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTUyMDU3Iik7Ci1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdl
dEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciYWJjIicpOworc2hvdWxkQmUoJ2RvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIp
JywnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNv
bnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ3dpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKwordHJ5IHsKKyAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlID0gIiI7Cit9IGNhdGNoIChlKSB7Cisg
ICAgaWYgKGUuY29kZSA9PSAxMikKKyAgICAgICAgZXhjZXB0aW9uVGhyb3duID0gdHJ1ZTsKK30K
Kworc2hvdWxkQmUoJ2V4Y2VwdGlvblRocm93bicsICd0cnVlJyk7CitzaG91bGRCZSgnZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikn
LCcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29u
dGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CiBzaG91bGRCZSgnd2luZG93
LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2Vy
LW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5z
ZW5zaXRpdmUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjE0NikKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQJ
KHdvcmtpbmcgY29weSkKQEAgLTgsMTkgKzgsMTkgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQQogCiAKIAotUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgIlRSdWUiCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KSBpcyAidHJ1ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50
RWRpdGFibGUgaXMgInRydWUiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIiku
aXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KK0ZJWE1FOiBpc0Nv
bnRlbnRFZGl0YWJsZSBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4gUmVsYXRlZCB0byBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgKIFBBU1Mgd2luZG93LmdldENv
bXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2Rp
ZnkiKSBpcyAicmVhZC13cml0ZSIKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIiku
Z2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAiZmFMU0UiCitQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMg
ImZhbHNlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRpdGFi
bGUgaXMgImZhbHNlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5pc0NvbnRl
bnRFZGl0YWJsZSBpcyBmYWxzZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwgIiIp
LmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5Igot
RkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRF
ZGl0YWJsZSIpIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCitQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwMiIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UK
IFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlIGlzICJp
bmhlcml0IgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5pc0NvbnRlbnRFZGl0
YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgotRkFJTCB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBzaG91
bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25seS4KLUZJWE1FOiBzZXRDb250ZW50RWRpdGFi
bGUgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRpdmUuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD01MjA1OQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5p
c0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAy
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdy
aXRlIgogCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKSW5kZXg6IExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNh
c2VpbnNlbnNpdGl2ZS5odG1sCShyZXZpc2lvbiA3NjE0NikKKysrIExheW91dFRlc3RzL2VkaXRp
bmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0xOSwxMiArMTksMTMgQEAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5j
b250ZW50RQogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVkaXRhYmxlID0g
ImZhTFNFIjsKIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZSA9
ICJpbkhFUklUIjsKIAotc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIiku
Z2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJUUnVlIicpOworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKScsJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYx
IikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYxIikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworZGVidWcoIkZJ
WE1FOiBpc0NvbnRlbnRFZGl0YWJsZSBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4gUmVsYXRlZCB0
byBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgiKTsKIHNob3Vs
ZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgi
LXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwogCi1zaG91bGRCZSgnZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KScsJyJmYUxTRSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5n
ZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZhbHNlIicpOwogc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZScsICciZmFsc2UiJyk7
CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRpdGFi
bGUnLCAnZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwgIiIp
LmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5Iicp
OwpAQCAtMzQsOCArMzUsNiBAQCBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAy
IikuCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRp
dGFibGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAyLCAi
IikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRl
IicpOwogCi1kZWJ1ZygiRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgY2FzZSBp
bnNlbnNpdGl2ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU5
Iik7Ci0KIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuc3R5bGUuZGlzcGxheT0gJ25v
bmUnOwogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuc3R5bGUuZGlzcGxheT0gJ25vbmUn
OwogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79484</attachid>
            <date>2011-01-19 14:26:53 -0800</date>
            <delta_ts>2011-01-20 07:45:05 -0800</delta_ts>
            <desc>fix patch</desc>
            <filename>52057_1.patch</filename>
            <type>text/plain</type>
            <size>14669</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MTYyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDEtMTkgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgMS4gVXBkYXRlZCBpZGwgZmlsZSBhbmQg
ZnVuY3Rpb24gc2lnbmF0dXJlIHRvIHRocm93IGV4Y2VwdGlvbiB3aGVuIG5lY2Vzc2FyeQorICAg
ICAgICAyLiBUaHJldyBleGNlcHRpb24gb24gaW52YWxpZCBzdHJpbmdzCisgICAgICAgIDIuIE1h
ZGUgc2V0dGluZyB2YWx1ZXMgY2FzZS1pbnNlbnNpdGl2ZQorCisgICAgICAgICogaHRtbC9IVE1M
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRWxlbWVudDo6c2V0Q29udGVudEVk
aXRhYmxlKToKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9I
VE1MRWxlbWVudC5pZGw6CisKIDIwMTEtMDEtMTggIFN0ZXBoZW4gV2hpdGUgIDxzZW5vcmJsYW5j
b0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgSmFtZXMgUm9iaW5zb24uCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAkocmV2aXNpb24gNzYxNDYpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzI5
LDE0ICs3MjksMTYgQEAgdm9pZCBIVE1MRWxlbWVudDo6c2V0Q29udGVudEVkaXRhYmxlKEF0dAog
ICAgIH0KIH0KIAotdm9pZCBIVE1MRWxlbWVudDo6c2V0Q29udGVudEVkaXRhYmxlKGNvbnN0IFN0
cmluZyAmZW5hYmxlZCkKK3ZvaWQgSFRNTEVsZW1lbnQ6OnNldENvbnRlbnRFZGl0YWJsZShjb25z
dCBTdHJpbmcgJmVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewotICAgIGlmIChlbmFibGVk
ID09ICJpbmhlcml0IikgewotICAgICAgICBFeGNlcHRpb25Db2RlIGVjOworICAgIGlmIChlcXVh
bElnbm9yaW5nQ2FzZShlbmFibGVkLCAidHJ1ZSIpKQorICAgICAgICBzZXRBdHRyaWJ1dGUoY29u
dGVudGVkaXRhYmxlQXR0ciwgInRydWUiKTsKKyAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5nQ2Fz
ZShlbmFibGVkLCAiZmFsc2UiKSkKKyAgICAgICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJs
ZUF0dHIsICJmYWxzZSIpOworICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGVuYWJsZWQs
ICJpbmhlcml0IikpCiAgICAgICAgIHJlbW92ZUF0dHJpYnV0ZShjb250ZW50ZWRpdGFibGVBdHRy
LCBlYyk7Ci0gICAgfQogICAgIGVsc2UKLSAgICAgICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0
YWJsZUF0dHIsIGVuYWJsZWQuaXNFbXB0eSgpID8gInRydWUiIDogZW5hYmxlZCk7CisgICAgICAg
IGVjID0gU1lOVEFYX0VSUjsKIH0KIAogYm9vbCBIVE1MRWxlbWVudDo6ZHJhZ2dhYmxlKCkgY29u
c3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgJKHJldmlzaW9uIDc2MTQ2KQorKysg
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw3
ICs2MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgaXNDb250ZW50UmljaGx5RWRpdGFi
bGUoKSBjb25zdDsKIAogICAgIFN0cmluZyBjb250ZW50RWRpdGFibGUoKSBjb25zdDsKLSAgICB2
b2lkIHNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldENvbnRl
bnRFZGl0YWJsZShjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICB2aXJ0dWFs
IGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Q7CiAgICAgdm9pZCBzZXREcmFnZ2FibGUoYm9vbCk7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAkocmV2aXNpb24gNzYxNDYpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNTks
NyArNTksOCBAQCBtb2R1bGUgaHRtbCB7CiAKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhU
TUxDb2xsZWN0aW9uIGNoaWxkcmVuOwogCi0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29u
dmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBjb250ZW50RWRpdGFibGU7CisgICAgICAg
ICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGNv
bnRlbnRFZGl0YWJsZQorICAgICAgICAgICAgICAgICAgICBzZXR0ZXIgcmFpc2VzKERPTUV4Y2Vw
dGlvbik7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzQ29udGVudEVkaXRh
YmxlOwogCiAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBib29sZWFuIHNwZWxsY2hlY2s7Cklu
ZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA3NjE2MikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDExLTAxLTE5ICBDaGFuZyBTaHUgIDxjaGFuZy5z
aHVAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIGludmFsaWQgc3RyaW5nIHNob3VsZCB0aHJv
dyBleGNlcHRpb24uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD01MjA1NworCisgICAgICAgIFVwZGF0ZWQgZXhwZWN0ZWQgcmVzdWx0cyBhZnRlciB0aGUg
Zml4LiBBbHNvIGNvcnJlY3RlZCB0ZXN0IGNhc2VzLgorCisgICAgICAgICogZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sOgorICAgICAgICAqIGVkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWw6
CisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sOgor
CiAyMDExLTAxLTE5ICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBVbnJldmlld2VkIGZpeCB0byByNzYxNTMuCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gNzYxNDYpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNiwxMiAr
NiwxNiBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1G
QUlMIGV4Y2VwdGlvblRocm93biBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgotRklYTUU6IHNl
dENvbnRlbnRFZGl0YWJsZSB3aXRoIGludmFsaWQgc3RyaW5nIHNob3VsZCB0aHJvdyBleGNlcHRp
b24uIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NwotUEFTUyBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKSBpcyAiYWJjIgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVu
dEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgaW5oZXJpdC4KK1BBU1MgZXhjZXB0aW9uVGhy
b3duIGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJp
YnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgInRydWUiCiBQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCi1GQUlMIHdpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25seS4KK1BBU1Mgd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11
c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorUEFTUyBleGNlcHRpb25UaHJvd24gaXMgdHJ1
ZQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250
ZW50RWRpdGFibGUiKSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRp
diIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIp
IGlzICJyZWFkLXdyaXRlIgogCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKSW5k
ZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZh
bGlkLXZhbHVlLmh0bWwJKHJldmlzaW9uIDc2MTQ2KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw4
ICsyMSwyMCBAQCB0cnkgewogfQogCiBzaG91bGRCZSgnZXhjZXB0aW9uVGhyb3duJywgJ3RydWUn
KTsKLWRlYnVnKCJGSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTUyMDU3Iik7Ci1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIp
LmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciYWJjIicpOworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJs
ZSIpJywnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIp
LmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ3dp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQt
dXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKwordHJ5IHsKKyAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlID0gIiI7Cit9IGNhdGNoIChlKSB7
CisgICAgaWYgKGUuY29kZSA9PSAxMikKKyAgICAgICAgZXhjZXB0aW9uVGhyb3duID0gdHJ1ZTsK
K30KKworc2hvdWxkQmUoJ2V4Y2VwdGlvblRocm93bicsICd0cnVlJyk7CitzaG91bGRCZSgnZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxl
IiknLCcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iiku
Y29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CiBzaG91bGRCZSgnd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11
c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGlu
Zy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNl
aW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjE0NikKKysrIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTgsMTkgKzgsMTkgQEAgT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIAotUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgIlRSdWUiCitQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKSBpcyAidHJ1ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250
ZW50RWRpdGFibGUgaXMgInRydWUiCiBGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYx
IikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KK0ZJWE1FOiBp
c0NvbnRlbnRFZGl0YWJsZSBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4gUmVsYXRlZCB0byBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgKIFBBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1t
b2RpZnkiKSBpcyAicmVhZC13cml0ZSIKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAx
IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAiZmFMU0UiCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikg
aXMgImZhbHNlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRp
dGFibGUgaXMgImZhbHNlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5pc0Nv
bnRlbnRFZGl0YWJsZSBpcyBmYWxzZQogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwg
IiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5
IgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRl
bnRFZGl0YWJsZSIpIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMiIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFs
c2UKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlIGlz
ICJpbmhlcml0IgotRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5pc0NvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgotRkFJTCB3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBz
aG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25seS4KLUZJWE1FOiBzZXRDb250ZW50RWRp
dGFibGUgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRpdmUuIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD01MjA1OQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIi
KS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KHAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFk
LXdyaXRlIgogCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKSW5kZXg6IExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVl
LWNhc2VpbnNlbnNpdGl2ZS5odG1sCShyZXZpc2lvbiA3NjE0NikKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xOSwxMiArMTksMTMgQEAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEi
KS5jb250ZW50RQogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVkaXRhYmxl
ID0gImZhTFNFIjsKIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJs
ZSA9ICJpbkhFUklUIjsKIAotc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYx
IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJUUnVlIicpOworc2hvdWxkQmUo
J2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRp
dGFibGUiKScsJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYxIikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYxIikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworZGVidWco
IkZJWE1FOiBpc0NvbnRlbnRFZGl0YWJsZSBpcyBub3Qgd29ya2luZyBwcm9wZXJseS4gUmVsYXRl
ZCB0byBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgiKTsKIHNo
b3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwogCi1zaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKScsJyJmYUxTRSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEi
KS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZhbHNlIicpOwogc2hvdWxkQmUo
J2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZScsICciZmFsc2Ui
Jyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRp
dGFibGUnLCAnZmFsc2UnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwg
IiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5
IicpOwpAQCAtMzQsOCArMzUsNiBAQCBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAyIikuCiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50
RWRpdGFibGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAy
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdy
aXRlIicpOwogCi1kZWJ1ZygiRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgY2Fz
ZSBpbnNlbnNpdGl2ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUy
MDU5Iik7Ci0KIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuc3R5bGUuZGlzcGxheT0g
J25vbmUnOwogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuc3R5bGUuZGlzcGxheT0gJ25v
bmUnOwogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIiKS5zdHlsZS5kaXNwbGF5PSAnbm9u
ZSc7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxs
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50
LWF0dHJpYnV0ZS1qcy1udWxsLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYxNDYpCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLWV4cGVjdGVkLnR4dAko
d29ya2luZyBjb3B5KQpAQCAtMTEsNyArMTEsNyBAQCBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVl
IHdhcyB0aGUgZW1wdHkgCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdhcyB0aGUgZW1wdHkg
c3RyaW5nLiBbdGVzdGVkIEhUTUxFbGVtZW50LmNsYXNzTmFtZV0KIFRFU1QgU1VDQ0VFREVEOiBU
aGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEVsZW1lbnQuaW5uZXJI
VE1MXQogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rl
c3RlZCBIVE1MRWxlbWVudC5pbm5lclRleHRdCi1URVNUIEZBSUxFRDogVGhlIHZhbHVlIHNob3Vs
ZCBoYXZlIGJlZW4gdGhlIHN0cmluZyAnZmFsc2UnIGJ1dCB3YXMgdGhlIHN0cmluZyAndHJ1ZScu
IFt0ZXN0ZWQgSFRNTEVsZW1lbnQuY29udGVudEVkaXRhYmxlXQorVEVTVCBTVUNDRUVERUQ6IFRo
ZSBleGNlcHRpb24gd2FzIHRocm93biBhcyBleHBlY3RlZC4gW3Rlc3RlZCBIVE1MRWxlbWVudC5j
b250ZW50RWRpdGFibGVdCiAKIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0
eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEFuY2hvckVsZW1lbnQuYWNjZXNzS2V5XQogVEVTVCBTVUND
RUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MQW5jaG9y
RWxlbWVudC5jaGFyc2V0XQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRy
aWJ1dGUtanMtbnVsbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2Vs
ZW1lbnQtYXR0cmlidXRlLWpzLW51bGwuaHRtbAkocmV2aXNpb24gNzYxNDYpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWwJKHdvcmtpbmcgY29w
eSkKQEAgLTI2LDE0ICsyNiwyNCBAQAogCiAgICAgICAgIGZ1bmN0aW9uIG51bGxUZXN0RWxlbWVu
dEF0dHJpYnV0ZShlbGVtZW50VHlwZSwgZWxlbWVudCwgYXR0ciwgZXhwZWN0ZWQpCiAgICAgICAg
IHsKLSAgICAgICAgICAgIGVsZW1lbnRbYXR0cl0gPSBudWxsOwotCisgICAgICAgICAgICB2YXIg
ZXhjZXB0aW9uVGhyb3duID0gZmFsc2U7CisgICAgICAgICAgICB0cnkgeworICAgICAgICAgICAg
ICAgIGVsZW1lbnRbYXR0cl0gPSBudWxsOworICAgICAgICAgICAgfSBjYXRjaCAoZWMpIHsKKyAg
ICAgICAgICAgICAgICBleGNlcHRpb25UaHJvd24gPSB0cnVlOworICAgICAgICAgICAgfQogICAg
ICAgICAgICAgdmFyIHJlc3VsdDsKLSAgICAgICAgICAgIGlmIChlbGVtZW50W2F0dHJdID09PSBl
eHBlY3RlZCkKLSAgICAgICAgICAgICAgICByZXN1bHQgPSAiPHNwYW4gY2xhc3M9J3Bhc3MnPlRF
U1QgU1VDQ0VFREVEOjwvc3Bhbj4gVGhlIHZhbHVlIHdhcyAiICsgcmVzdWx0U3RyaW5naWZpZXIo
ZXhwZWN0ZWQpICsgIi4iOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJlc3Vs
dCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+VEVTVCBGQUlMRUQ6PC9zcGFuPiBUaGUgdmFsdWUgc2hv
dWxkIGhhdmUgYmVlbiAiICsgcmVzdWx0U3RyaW5naWZpZXIoZXhwZWN0ZWQpICsgIiBidXQgd2Fz
ICIgKyByZXN1bHRTdHJpbmdpZmllcihlbGVtZW50W2F0dHJdKSArICIuIjsKLQorICAgICAgICAg
ICAgaWYgKGV4Y2VwdGlvblRocm93bikgeworICAgICAgICAgICAgICAgIGlmIChleHBlY3RlZCA9
PT0gbnVsbCkKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFuIGNsYXNzPSdwYXNz
Jz5URVNUIFNVQ0NFRURFRDo8L3NwYW4+IFRoZSBleGNlcHRpb24gd2FzIHRocm93biBhcyBleHBl
Y3RlZC4iOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0
ID0gIjxzcGFuIGNsYXNzPSdmYWlsJz5URVNUIEZBSUxFRDo8L3NwYW4+IEFuIGV4Y2VwdGlvbiBz
aG91bGQgaGF2ZSBiZWVuIHRocm93bi4iOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgICAgICBpZiAoZWxlbWVudFthdHRyXSA9PT0gZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAg
ICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0ncGFzcyc+VEVTVCBTVUNDRUVERUQ6PC9zcGFuPiBU
aGUgdmFsdWUgd2FzICIgKyByZXN1bHRTdHJpbmdpZmllcihleHBlY3RlZCkgKyAiLiI7CisgICAg
ICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSAiPHNwYW4gY2xh
c3M9J2ZhaWwnPlRFU1QgRkFJTEVEOjwvc3Bhbj4gVGhlIHZhbHVlIHNob3VsZCBoYXZlIGJlZW4g
IiArIHJlc3VsdFN0cmluZ2lmaWVyKGV4cGVjdGVkKSArICIgYnV0IHdhcyAiICsgcmVzdWx0U3Ry
aW5naWZpZXIoZWxlbWVudFthdHRyXSkgKyAiLiI7CisgICAgICAgICAgICB9CiAgICAgICAgICAg
ICByZXN1bHQgKz0gIiBbdGVzdGVkICIgKyBlbGVtZW50VHlwZSArICIuIiArIGF0dHIgKyAiXSI7
CiAgICAgICAgICAgICBwcmludE91dChyZXN1bHQpOwogICAgICAgICB9CkBAIC01Nyw3ICs2Nyw3
IEBACiAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IFsKICAgICAgICAgICAgICAgICAg
ICAgICAgIHtuYW1lOiAnbm9kZVZhbHVlJywgZXhwZWN0ZWROdWxsOiBudWxsfSwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAvLyAncHJlZml4JyBvbmx5IHdvcmtzIGJlY2F1c2UgdGhpcyBpcyBh
biBIVE1MRWxlbWVudCB0eXBlIG5vZGUsIGlmIGl0IHdlcmUgYW4KLSAgICAgICAgICAgICAgICAg
ICAgICAgICAvLyBYTUwgbm9kZSAoY3JlYXRlZCB1c2luZyBjcmVhdGVFbGVtZW50TlMoKSkgdGhp
cyB3b3VsZCB0aHJvdyBhbiBleGNlY3Rpb24uIFdlCisgICAgICAgICAgICAgICAgICAgICAgICAg
Ly8gWE1MIG5vZGUgKGNyZWF0ZWQgdXNpbmcgY3JlYXRlRWxlbWVudE5TKCkpIHRoaXMgd291bGQg
dGhyb3cgYW4gZXhjZXB0aW9uLiBXZQogICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNob3Vs
ZCB0ZXN0IHRoaXMgZnVydGhlciBhcyBGaXJlZm94IGhhcyBhIGRpZmZlcmVudCBiZWhhdmlvci4K
ICAgICAgICAgICAgICAgICAgICAgICAgIHtuYW1lOiAncHJlZml4JywgZXhwZWN0ZWROdWxsOiBu
dWxsfSwKICAgICAgICAgICAgICAgICAgICAgICAgIHtuYW1lOiAndGV4dENvbnRlbnQnLCBleHBl
Y3RlZE51bGw6ICcnfQpAQCAtNzcsNyArODcsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAg
Ly8gRklYTUU6IFRFU1QgVEhFU0UKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHtuYW1lOiAn
b3V0ZXJIVE1MJywgZXhwZWN0ZWROdWxsOiAnJ30sCiAgICAgICAgICAgICAgICAgICAgICAgICAv
LyB7bmFtZTogJ291dGVyVGV4dCcsIGV4cGVjdGVkTnVsbDogJyd9LAotICAgICAgICAgICAgICAg
ICAgICAgICAge25hbWU6ICdjb250ZW50RWRpdGFibGUnLCBleHBlY3RlZE51bGw6ICdmYWxzZSd9
CisgICAgICAgICAgICAgICAgICAgICAgICB7bmFtZTogJ2NvbnRlbnRFZGl0YWJsZScsIGV4cGVj
dGVkTnVsbDogbnVsbH0KICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgIH0s
CiAgICAgICAgICAgICAgICAgewo=
</data>
<flag name="review"
          id="70893"
          type_id="1"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79600</attachid>
            <date>2011-01-20 07:45:05 -0800</date>
            <delta_ts>2011-01-20 10:19:58 -0800</delta_ts>
            <desc>fix patch 2</desc>
            <filename>52057_2.patch</filename>
            <type>text/plain</type>
            <size>15961</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MjQ0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjggQEAKKzIwMTEtMDEtMjAgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgSW1wbGVtZW50ZWQgZXhjZXB0aW9uIHRo
cm93aW5nIGZvciBzZXRDb250ZW50RWRpdGFibGUgYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcg
c3BlYzoKKyAgICAgICAgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJl
bnQtd29yay9tdWx0aXBhZ2UvZWRpdGluZy5odG1sI2F0dHItY29udGVudGVkaXRhYmxlCisgICAg
ICAgIFJlbGF0ZWQgcXVvdGFzOiAiT24gc2V0dGluZywgaWYgdGhlIG5ldyB2YWx1ZSBpcyBhbiBB
U0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciB0aGUgCisgICAgICAgIHN0cmluZyAiaW5o
ZXJpdCIgdGhlbiB0aGUgY29udGVudCBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkLCBpZiB0aGUg
bmV3IHZhbHVlIGlzIGFuIEFTQ0lJIAorICAgICAgICBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZv
ciB0aGUgc3RyaW5nICJ0cnVlIiB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNl
dCB0byB0aGUgCisgICAgICAgIHN0cmluZyAidHJ1ZSIsIGlmIHRoZSBuZXcgdmFsdWUgaXMgYW4g
QVNDSUkgY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgdGhlIHN0cmluZyAiZmFsc2UiIAorICAg
ICAgICB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNldCB0byB0aGUgc3RyaW5n
ICJmYWxzZSIsIGFuZCBvdGhlcndpc2UgdGhlIGF0dHJpYnV0ZSAKKyAgICAgICAgc2V0dGVyIG11
c3QgcmFpc2UgYSBTWU5UQVhfRVJSIGV4Y2VwdGlvbi4iCisKKyAgICAgICAgKiBodG1sL0hUTUxF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRp
dGFibGUpOgorICAgICAgICBUaHJvdyBleGNlcHRpb24gb24gaW52YWxpZCBpbnB1dCBzdHJpbmdz
OworICAgICAgICBNYWtlIHNldHRpbmcgdmFsdWVzIGNhc2UtaW5zZW5zaXRpdmUgYW5kIGFsc28g
Y29udmVydCB0aGVtIHRvIGxvd2VyIGNhc2VzIGFjY29yZGluZyB0byB0aGUgc3BlYy4KKyAgICAg
ICAgKiBodG1sL0hUTUxFbGVtZW50Lmg6CisgICAgICAgIEFkZCBhZGRpdGlvbmFsIHBhcmFtZXRl
ciBFeGNlcHRpb25Db2RlJiBmb3IgZnVuY3Rpb24gc2V0Q29udGVudEVkaXRhYmxlLgorICAgICAg
ICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOgorICAgICAgICBBZGQgZXhjZXB0aW9uIHRocm93aW5n
IHN1cHBvcnQgZm9yIGNvbnRlbnRFZGl0YWJsZSBzZXR0ZXIuCisKIDIwMTEtMDEtMjAgIElseWEg
VGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IFBhdmVsIEZlbGRtYW4uCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAkocmV2
aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNzI5LDE0ICs3MjksMTYgQEAgdm9pZCBIVE1MRWxlbWVudDo6c2V0Q29u
dGVudEVkaXRhYmxlKEF0dAogICAgIH0KIH0KIAotdm9pZCBIVE1MRWxlbWVudDo6c2V0Q29udGVu
dEVkaXRhYmxlKGNvbnN0IFN0cmluZyAmZW5hYmxlZCkKK3ZvaWQgSFRNTEVsZW1lbnQ6OnNldENv
bnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcgJmVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmIGVjKQog
ewotICAgIGlmIChlbmFibGVkID09ICJpbmhlcml0IikgewotICAgICAgICBFeGNlcHRpb25Db2Rl
IGVjOworICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShlbmFibGVkLCAidHJ1ZSIpKQorICAgICAg
ICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0ciwgInRydWUiKTsKKyAgICBlbHNlIGlm
IChlcXVhbElnbm9yaW5nQ2FzZShlbmFibGVkLCAiZmFsc2UiKSkKKyAgICAgICAgc2V0QXR0cmli
dXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsICJmYWxzZSIpOworICAgIGVsc2UgaWYgKGVxdWFsSWdu
b3JpbmdDYXNlKGVuYWJsZWQsICJpbmhlcml0IikpCiAgICAgICAgIHJlbW92ZUF0dHJpYnV0ZShj
b250ZW50ZWRpdGFibGVBdHRyLCBlYyk7Ci0gICAgfQogICAgIGVsc2UKLSAgICAgICAgc2V0QXR0
cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsIGVuYWJsZWQuaXNFbXB0eSgpID8gInRydWUiIDog
ZW5hYmxlZCk7CisgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKIH0KIAogYm9vbCBIVE1MRWxlbWVu
dDo6ZHJhZ2dhYmxlKCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1l
bnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgJKHJl
dmlzaW9uIDc2MjQ0KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgaXND
b250ZW50UmljaGx5RWRpdGFibGUoKSBjb25zdDsKIAogICAgIFN0cmluZyBjb250ZW50RWRpdGFi
bGUoKSBjb25zdDsKLSAgICB2b2lkIHNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcmKTsK
KyAgICB2b2lkIHNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2Rl
Jik7CiAKICAgICB2aXJ0dWFsIGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRE
cmFnZ2FibGUoYm9vbCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50Lmlk
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAkocmV2
aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAkod29y
a2luZyBjb3B5KQpAQCAtNTksNyArNTksOCBAQCBtb2R1bGUgaHRtbCB7CiAKICAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIGNoaWxkcmVuOwogCi0gICAgICAgICAgICAg
ICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBjb250ZW50
RWRpdGFibGU7CisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxT
dHJpbmddIERPTVN0cmluZyBjb250ZW50RWRpdGFibGUKKyAgICAgICAgICAgICAgICAgICAgIHNl
dHRlciByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJv
b2xlYW4gaXNDb250ZW50RWRpdGFibGU7CiAKICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIGJv
b2xlYW4gc3BlbGxjaGVjazsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDEtMjAg
IENoYW5nIFNodSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxp
ZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgVXBkYXRlZCBleHBlY3Rl
ZCByZXN1bHRzIGFmdGVyIHRoZSBmaXguIEFsc28gY29ycmVjdGVkIHRlc3QgY2FzZXMuCisKKyAg
ICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0bWw6
CisgICAgICAgIDEuIEZpeGVkIHRoZSBnZXRBdHRyaWJ1dGUgZXhwZWN0YXRpb24gYXMgImFiYyIg
d2FzIGZhaWxlZCB0byBzZXQuCisgICAgICAgIDIuIEFkZGVkIGFkZGl0aW9uYWwgY2hlY2sgZm9y
IHNldHRpbmcgZW1wdHkgc3RyaW5nLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0
LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWw6CisgICAgICAgIEZpeGVk
IHRoZSBnZXRBdHRyaWJ1dGUgZXhwZWN0YXRpb25zIGFzIGFsbCBzdHJpbmdzIHNob3VsZCBiZSBj
b252ZXJ0ZWQgdG8gbG93ZXIgY2FzZXMuCisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1hdHRy
aWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1h
dHRyaWJ1dGUtanMtbnVsbC5odG1sOgorICAgICAgICBGaXhlZCB0aGlzIGV4aXN0aW5nIHRlc3Qg
YXMgdGhlIGV4cGVjdGF0aW9uIGZvciBzZXR0aW5nIHdpdGggbnVsbCBzaG91bGQgdGhyb3cgZXhj
ZXB0aW9uCisgICAgICAgIGluc3RlYWQgb2YgImZhbHNlIi4gQWxzbyBhZGRlZCBoYW5kbGluZyBj
b2RlIHdoZW4gZXhjZXB0aW9uIHdhcyB0aHJvd24uCisKIDIwMTEtMDEtMjAgIFl1cnkgU2VtaWto
YXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwg
RmVsZG1hbi4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFs
aWQtdmFsdWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjI0
NCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC02LDEyICs2LDE2IEBAIE9uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiAKLUZBSUwgZXhjZXB0aW9uVGhyb3du
IHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCi1GSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdp
dGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU3Ci1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJhYmMiCi1GQUlM
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJl
IHRydWUuIFdhcyBpbmhlcml0LgorUEFTUyBleGNlcHRpb25UaHJvd24gaXMgdHJ1ZQorUEFTUyBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRl
bnRFZGl0YWJsZSBpcyAidHJ1ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIp
LmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKLUZBSUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUo
ZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIHNob3VsZCBi
ZSByZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5LgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJl
YWQtd3JpdGUiCitQQVNTIGV4Y2VwdGlvblRocm93biBpcyB0cnVlCitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJ0
cnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxl
IGlzICJ0cnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50
RWRpdGFibGUgaXMgdHJ1ZQorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5n
ZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCiAK
IFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApJbmRleDogTGF5b3V0VGVzdHMvZWRp
dGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAkocmV2
aXNpb24gNzYyNDQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZh
bGlkLXZhbHVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIxLDggKzIxLDIwIEBAIHRyeSB7CiB9
CiAKIHNob3VsZEJlKCdleGNlcHRpb25UaHJvd24nLCAndHJ1ZScpOwotZGVidWcoIkZJWE1FOiBz
ZXRDb250ZW50RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cgZXhjZXB0
aW9uLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTciKTsKLXNo
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250
ZW50RWRpdGFibGUiKScsJyJhYmMiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCcidHJ1ZSInKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlJywg
JyJ0cnVlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5pc0Nv
bnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5
bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJy
ZWFkLXdyaXRlIicpOworCit0cnkgeworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYi
KS5jb250ZW50RWRpdGFibGUgPSAiIjsKK30gY2F0Y2ggKGUpIHsKKyAgICBpZiAoZS5jb2RlID09
IDEyKQorICAgICAgICBleGNlcHRpb25UaHJvd24gPSB0cnVlOworfQorCitzaG91bGRCZSgnZXhj
ZXB0aW9uVGhyb3duJywgJ3RydWUnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJ0cnVlIicpOwogc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUnLCAn
InRydWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29u
dGVudEVkaXRhYmxlJywgJ3RydWUnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJl
YWQtd3JpdGUiJyk7CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12
YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtOCwxOSArOCwxOSBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
CiAKIAogCi1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKSBpcyAiVFJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJ0cnVlIgogUEFT
UyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1
ZSIKIEZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJs
ZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorRklYTUU6IGlzQ29udGVudEVkaXRhYmxlIGlz
IG5vdCB3b3JraW5nIHByb3Blcmx5LiBSZWxhdGVkIHRvIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD01MjA1OAogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYx
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdy
aXRlIgotUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNv
bnRlbnRFZGl0YWJsZSIpIGlzICJmYUxTRSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAiZmFsc2UiCiBQQVNTIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiZmFsc2UiCiBQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZh
bHNlCiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAxLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCi1GQUlMIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMiIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgc2hvdWxk
IGJlIGZhbHNlLiBXYXMgdHJ1ZS4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIiku
aGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQogUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCi1GQUlMIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0
cnVlLiBXYXMgZmFsc2UuCi1GQUlMIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAyLCAiIikuZ2V0
UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIHNob3VsZCBiZSByZWFkLXdyaXRl
LiBXYXMgcmVhZC1vbmx5LgotRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgY2Fz
ZSBpbnNlbnNpdGl2ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUy
MDU5CitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxl
IGlzIHRydWUKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocDIsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCiAKIFBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0
bWwJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9z
ZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE5LDEyICsx
OSwxMyBAQCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFCiBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRpdGFibGUgPSAiZmFMU0UiOwogZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlID0gImluSEVSSVQiOwogCi1z
aG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNv
bnRlbnRFZGl0YWJsZSIpJywnIlRSdWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRydWUiJyk7
CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFi
bGUnLCAnInRydWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEi
KS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitkZWJ1ZygiRklYTUU6IGlzQ29udGVudEVk
aXRhYmxlIGlzIG5vdCB3b3JraW5nIHByb3Blcmx5LiBSZWxhdGVkIHRvIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OCIpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9k
aWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZhTFNFIicpOwor
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29u
dGVudEVkaXRhYmxlIiknLCciZmFsc2UiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAxIikuY29udGVudEVkaXRhYmxlJywgJyJmYWxzZSInKTsKIHNob3VsZEJlKCdkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOwog
c2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAxLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CkBAIC0zNCw4ICszNSw2
IEBAIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS4KIHNob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7
CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocDIsICIiKS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CiAKLWRlYnVnKCJG
SVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBjYXNlIGluc2Vuc2l0aXZlLiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTkiKTsKLQogZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdjEiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CiBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicDEiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CiBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2MiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpzLW51bGwtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpzLW51bGwt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjI0NCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2Vs
ZW1lbnQtYXR0cmlidXRlLWpzLW51bGwtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0x
MSw3ICsxMSw3IEBAIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSAKIFRF
U1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRN
TEVsZW1lbnQuY2xhc3NOYW1lXQogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVt
cHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MRWxlbWVudC5pbm5lckhUTUxdCiBURVNUIFNVQ0NFRURF
RDogVGhlIHZhbHVlIHdhcyB0aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxFbGVtZW50Lmlu
bmVyVGV4dF0KLVRFU1QgRkFJTEVEOiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiB0aGUgc3Ry
aW5nICdmYWxzZScgYnV0IHdhcyB0aGUgc3RyaW5nICd0cnVlJy4gW3Rlc3RlZCBIVE1MRWxlbWVu
dC5jb250ZW50RWRpdGFibGVdCitURVNUIFNVQ0NFRURFRDogVGhlIGV4Y2VwdGlvbiB3YXMgdGhy
b3duIGFzIGV4cGVjdGVkLiBbdGVzdGVkIEhUTUxFbGVtZW50LmNvbnRlbnRFZGl0YWJsZV0KIAog
VEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBI
VE1MQW5jaG9yRWxlbWVudC5hY2Nlc3NLZXldCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdh
cyB0aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxBbmNob3JFbGVtZW50LmNoYXJzZXRdCklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMt
bnVsbC5odG1sCShyZXZpc2lvbiA3NjI0NCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1l
bnQtYXR0cmlidXRlLWpzLW51bGwuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjYsMTQgKzI2LDI0
IEBACiAKICAgICAgICAgZnVuY3Rpb24gbnVsbFRlc3RFbGVtZW50QXR0cmlidXRlKGVsZW1lbnRU
eXBlLCBlbGVtZW50LCBhdHRyLCBleHBlY3RlZCkKICAgICAgICAgewotICAgICAgICAgICAgZWxl
bWVudFthdHRyXSA9IG51bGw7Ci0KKyAgICAgICAgICAgIHZhciBleGNlcHRpb25UaHJvd24gPSBm
YWxzZTsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAgZWxlbWVudFthdHRyXSA9
IG51bGw7CisgICAgICAgICAgICB9IGNhdGNoIChlYykgeworICAgICAgICAgICAgICAgIGV4Y2Vw
dGlvblRocm93biA9IHRydWU7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICB2YXIgcmVzdWx0
OwotICAgICAgICAgICAgaWYgKGVsZW1lbnRbYXR0cl0gPT09IGV4cGVjdGVkKQotICAgICAgICAg
ICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0ncGFzcyc+VEVTVCBTVUNDRUVERUQ6PC9zcGFu
PiBUaGUgdmFsdWUgd2FzICIgKyByZXN1bHRTdHJpbmdpZmllcihleHBlY3RlZCkgKyAiLiI7Ci0g
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFuIGNsYXNzPSdm
YWlsJz5URVNUIEZBSUxFRDo8L3NwYW4+IFRoZSB2YWx1ZSBzaG91bGQgaGF2ZSBiZWVuICIgKyBy
ZXN1bHRTdHJpbmdpZmllcihleHBlY3RlZCkgKyAiIGJ1dCB3YXMgIiArIHJlc3VsdFN0cmluZ2lm
aWVyKGVsZW1lbnRbYXR0cl0pICsgIi4iOwotCisgICAgICAgICAgICBpZiAoZXhjZXB0aW9uVGhy
b3duKSB7CisgICAgICAgICAgICAgICAgaWYgKGV4cGVjdGVkID09PSBudWxsKQorICAgICAgICAg
ICAgICAgICAgICByZXN1bHQgPSAiPHNwYW4gY2xhc3M9J3Bhc3MnPlRFU1QgU1VDQ0VFREVEOjwv
c3Bhbj4gVGhlIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGFzIGV4cGVjdGVkLiI7CisgICAgICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSAiPHNwYW4gY2xhc3M9J2Zh
aWwnPlRFU1QgRkFJTEVEOjwvc3Bhbj4gQW4gZXhjZXB0aW9uIHNob3VsZCBoYXZlIGJlZW4gdGhy
b3duLiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGlmIChlbGVtZW50
W2F0dHJdID09PSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFu
IGNsYXNzPSdwYXNzJz5URVNUIFNVQ0NFRURFRDo8L3NwYW4+IFRoZSB2YWx1ZSB3YXMgIiArIHJl
c3VsdFN0cmluZ2lmaWVyKGV4cGVjdGVkKSArICIuIjsKKyAgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+VEVTVCBGQUlM
RUQ6PC9zcGFuPiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiAiICsgcmVzdWx0U3RyaW5naWZp
ZXIoZXhwZWN0ZWQpICsgIiBidXQgd2FzICIgKyByZXN1bHRTdHJpbmdpZmllcihlbGVtZW50W2F0
dHJdKSArICIuIjsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJlc3VsdCArPSAiIFt0ZXN0
ZWQgIiArIGVsZW1lbnRUeXBlICsgIi4iICsgYXR0ciArICJdIjsKICAgICAgICAgICAgIHByaW50
T3V0KHJlc3VsdCk7CiAgICAgICAgIH0KQEAgLTU3LDcgKzY3LDcgQEAKICAgICAgICAgICAgICAg
ICAgICAgYXR0cmlidXRlczogWwogICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6ICdub2Rl
VmFsdWUnLCBleHBlY3RlZE51bGw6IG51bGx9LAogICAgICAgICAgICAgICAgICAgICAgICAgIC8v
ICdwcmVmaXgnIG9ubHkgd29ya3MgYmVjYXVzZSB0aGlzIGlzIGFuIEhUTUxFbGVtZW50IHR5cGUg
bm9kZSwgaWYgaXQgd2VyZSBhbgotICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFhNTCBub2Rl
IChjcmVhdGVkIHVzaW5nIGNyZWF0ZUVsZW1lbnROUygpKSB0aGlzIHdvdWxkIHRocm93IGFuIGV4
Y2VjdGlvbi4gV2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAvLyBYTUwgbm9kZSAoY3JlYXRl
ZCB1c2luZyBjcmVhdGVFbGVtZW50TlMoKSkgdGhpcyB3b3VsZCB0aHJvdyBhbiBleGNlcHRpb24u
IFdlCiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2hvdWxkIHRlc3QgdGhpcyBmdXJ0aGVy
IGFzIEZpcmVmb3ggaGFzIGEgZGlmZmVyZW50IGJlaGF2aW9yLgogICAgICAgICAgICAgICAgICAg
ICAgICAge25hbWU6ICdwcmVmaXgnLCBleHBlY3RlZE51bGw6IG51bGx9LAogICAgICAgICAgICAg
ICAgICAgICAgICAge25hbWU6ICd0ZXh0Q29udGVudCcsIGV4cGVjdGVkTnVsbDogJyd9CkBAIC03
Nyw3ICs4Nyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogVEVTVCBUSEVT
RQogICAgICAgICAgICAgICAgICAgICAgICAgLy8ge25hbWU6ICdvdXRlckhUTUwnLCBleHBlY3Rl
ZE51bGw6ICcnfSwKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHtuYW1lOiAnb3V0ZXJUZXh0
JywgZXhwZWN0ZWROdWxsOiAnJ30sCi0gICAgICAgICAgICAgICAgICAgICAgICB7bmFtZTogJ2Nv
bnRlbnRFZGl0YWJsZScsIGV4cGVjdGVkTnVsbDogJ2ZhbHNlJ30KKyAgICAgICAgICAgICAgICAg
ICAgICAgIHtuYW1lOiAnY29udGVudEVkaXRhYmxlJywgZXhwZWN0ZWROdWxsOiBudWxsfQogICAg
ICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICB7
Cg==
</data>
<flag name="review"
          id="71016"
          type_id="1"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79612</attachid>
            <date>2011-01-20 10:19:58 -0800</date>
            <delta_ts>2011-01-20 11:50:14 -0800</delta_ts>
            <desc>fix patch 3</desc>
            <filename>52057_3.patch</filename>
            <type>text/plain</type>
            <size>16091</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MjYzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDEtMjAgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgSW1wbGVtZW50ZWQgZXhjZXB0aW9uIHRo
cm93aW5nIGZvciBzZXRDb250ZW50RWRpdGFibGUgYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcg
c3BlYzoKKyAgICAgICAgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJl
bnQtd29yay9tdWx0aXBhZ2UvZWRpdGluZy5odG1sI2F0dHItY29udGVudGVkaXRhYmxlCisgICAg
ICAgIFJlbGF0ZWQgcXVvdGFzOiAiT24gc2V0dGluZywgaWYgdGhlIG5ldyB2YWx1ZSBpcyBhbiBB
U0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciB0aGUgCisgICAgICAgIHN0cmluZyAnaW5o
ZXJpdCcgdGhlbiB0aGUgY29udGVudCBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkLCBpZiB0aGUg
bmV3IHZhbHVlIGlzIGFuIEFTQ0lJIAorICAgICAgICBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZv
ciB0aGUgc3RyaW5nICd0cnVlJyB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNl
dCB0byB0aGUgCisgICAgICAgIHN0cmluZyAndHJ1ZScsIGlmIHRoZSBuZXcgdmFsdWUgaXMgYW4g
QVNDSUkgY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgdGhlIHN0cmluZyAnZmFsc2UnIAorICAg
ICAgICB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNldCB0byB0aGUgc3RyaW5n
ICdmYWxzZScsIGFuZCBvdGhlcndpc2UgdGhlIGF0dHJpYnV0ZSAKKyAgICAgICAgc2V0dGVyIG11
c3QgcmFpc2UgYSBTWU5UQVhfRVJSIGV4Y2VwdGlvbi4iCisKKyAgICAgICAgKiBodG1sL0hUTUxF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRp
dGFibGUpOiBUaHJvdyBleGNlcHRpb24gb24gaW52YWxpZCBpbnB1dCBzdHJpbmdzOyBNYWtlIHNl
dHRpbmcgdmFsdWVzIGNhc2UtaW5zZW5zaXRpdmUgYW5kIGFsc28gY29udmVydCB0aGVtIHRvIGxv
d2VyIGNhc2VzIGFjY29yZGluZyB0byB0aGUgc3BlYy4KKyAgICAgICAgKiBodG1sL0hUTUxFbGVt
ZW50Lmg6IEFkZCBhZGRpdGlvbmFsIHBhcmFtZXRlciBFeGNlcHRpb25Db2RlJiBmb3IgZnVuY3Rp
b24gc2V0Q29udGVudEVkaXRhYmxlLgorICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOiBB
ZGQgZXhjZXB0aW9uIHRocm93aW5nIHN1cHBvcnQgZm9yIGNvbnRlbnRFZGl0YWJsZSBzZXR0ZXIu
CisKIDIwMTEtMDEtMjAgIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IEFyaXlhIEhpZGF5YXQuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxF
bGVtZW50LmNwcAkocmV2aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxF
bGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzI5LDE0ICs3MjksMTYgQEAgdm9pZCBIVE1M
RWxlbWVudDo6c2V0Q29udGVudEVkaXRhYmxlKEF0dAogICAgIH0KIH0KIAotdm9pZCBIVE1MRWxl
bWVudDo6c2V0Q29udGVudEVkaXRhYmxlKGNvbnN0IFN0cmluZyAmZW5hYmxlZCkKK3ZvaWQgSFRN
TEVsZW1lbnQ6OnNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcgJmVuYWJsZWQsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQogewotICAgIGlmIChlbmFibGVkID09ICJpbmhlcml0IikgewotICAgICAg
ICBFeGNlcHRpb25Db2RlIGVjOworICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShlbmFibGVkLCAi
dHJ1ZSIpKQorICAgICAgICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0ciwgInRydWUi
KTsKKyAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5nQ2FzZShlbmFibGVkLCAiZmFsc2UiKSkKKyAg
ICAgICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsICJmYWxzZSIpOworICAgIGVs
c2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGVuYWJsZWQsICJpbmhlcml0IikpCiAgICAgICAgIHJl
bW92ZUF0dHJpYnV0ZShjb250ZW50ZWRpdGFibGVBdHRyLCBlYyk7Ci0gICAgfQogICAgIGVsc2UK
LSAgICAgICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsIGVuYWJsZWQuaXNFbXB0
eSgpID8gInRydWUiIDogZW5hYmxlZCk7CisgICAgICAgIGVjID0gU1lOVEFYX0VSUjsKIH0KIAog
Ym9vbCBIVE1MRWxlbWVudDo6ZHJhZ2dhYmxlKCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmgJKHJldmlzaW9uIDc2MjQ0KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIGJvb2wgaXNDb250ZW50UmljaGx5RWRpdGFibGUoKSBjb25zdDsKIAogICAgIFN0cmlu
ZyBjb250ZW50RWRpdGFibGUoKSBjb25zdDsKLSAgICB2b2lkIHNldENvbnRlbnRFZGl0YWJsZShj
b25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcm
LCBFeGNlcHRpb25Db2RlJik7CiAKICAgICB2aXJ0dWFsIGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Q7
CiAgICAgdm9pZCBzZXREcmFnZ2FibGUoYm9vbCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxFbGVtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxF
bGVtZW50LmlkbAkocmV2aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxF
bGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNTksNyArNTksOCBAQCBtb2R1bGUgaHRtbCB7
CiAKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIGNoaWxkcmVuOwog
Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERP
TVN0cmluZyBjb250ZW50RWRpdGFibGU7CisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29u
dmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBjb250ZW50RWRpdGFibGUKKyAgICAgICAg
ICAgICAgICAgICAgIHNldHRlciByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIGJvb2xlYW4gaXNDb250ZW50RWRpdGFibGU7CiAKICAgICAgICAgICAgICAg
ICAgYXR0cmlidXRlIGJvb2xlYW4gc3BlbGxjaGVjazsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MjYz
KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTEtMDEtMjAgIENoYW5nIFNodSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRh
YmxlIHdpdGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAg
VXBkYXRlZCBleHBlY3RlZCByZXN1bHRzIGFmdGVyIHRoZSBmaXguIEFsc28gY29ycmVjdGVkIHRl
c3QgY2FzZXMuCisKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZh
bHVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZh
bGlkLXZhbHVlLmh0bWw6IDEuIEZpeGVkIHRoZSBnZXRBdHRyaWJ1dGUgZXhwZWN0YXRpb24gYXMg
ImFiYyIgd2FzIGZhaWxlZCB0byBzZXQuIDIuIEFkZGVkIGFkZGl0aW9uYWwgY2hlY2sgZm9yIHNl
dHRpbmcgZW1wdHkgc3RyaW5nLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZh
bHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWw6IEZpeGVkIHRoZSBnZXRBdHRy
aWJ1dGUgZXhwZWN0YXRpb25zIGFzIGFsbCBzdHJpbmdzIHNob3VsZCBiZSBjb252ZXJ0ZWQgdG8g
bG93ZXIgY2FzZXMuCisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVs
bC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMt
bnVsbC5odG1sOiBGaXhlZCB0aGlzIGV4aXN0aW5nIHRlc3QgYXMgdGhlIGV4cGVjdGF0aW9uIGZv
ciBzZXR0aW5nIHdpdGggbnVsbCBzaG91bGQgdGhyb3cgZXhjZXB0aW9uIGluc3RlYWQgb2YgImZh
bHNlIi4gQWxzbyBhZGRlZCBoYW5kbGluZyBjb2RlIHdoZW4gZXhjZXB0aW9uIHdhcyB0aHJvd24u
CisKIDIwMTEtMDEtMjAgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFVucmV2aWV3ZWQsIHJlbW92ZSBHVEsgcmVzdWx0IGZvciB3aW5kb3ctb25lcnJv
cjIgYXMgaXQncyB0aGUgc2FtZQpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52
YWxpZC12YWx1ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYsMTIgKzYsMTYgQEAg
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIAotRkFJTCBleGNl
cHRpb25UaHJvd24gc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KLUZJWE1FOiBzZXRDb250ZW50
RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cgZXhjZXB0aW9uLiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTcKLVBBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMg
ImFiYyIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJs
ZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGluaGVyaXQuCitQQVNTIGV4Y2VwdGlvblRocm93biBpcyB0
cnVlCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNv
bnRlbnRFZGl0YWJsZSIpIGlzICJ0cnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2IikuY29udGVudEVkaXRhYmxlIGlzICJ0cnVlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQotRkFJTCB3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5
Iikgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2Rp
ZnkiKSBpcyAicmVhZC13cml0ZSIKK1BBU1MgZXhjZXB0aW9uVGhyb3duIGlzIHRydWUKK1BBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRh
YmxlIikgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250
ZW50RWRpdGFibGUgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYi
KS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVh
ZC13cml0ZSIKIAogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCkluZGV4OiBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1
ZS5odG1sCShyZXZpc2lvbiA3NjI0NCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMjEsOCArMjEsMjAg
QEAgdHJ5IHsKIH0KIAogc2hvdWxkQmUoJ2V4Y2VwdGlvblRocm93bicsICd0cnVlJyk7Ci1kZWJ1
ZygiRklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIGludmFsaWQgc3RyaW5nIHNob3VsZCB0
aHJvdyBleGNlcHRpb24uIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MjA1NyIpOwotc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImFiYyInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJ0
cnVlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50
RWRpdGFibGUnLCAnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJlKCd3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9k
aWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CisKK3RyeSB7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSA9ICIiOworfSBjYXRjaCAoZSkgeworICAgIGlm
IChlLmNvZGUgPT0gMTIpCisgICAgICAgIGV4Y2VwdGlvblRocm93biA9IHRydWU7Cit9CisKK3No
b3VsZEJlKCdleGNlcHRpb25UaHJvd24nLCAndHJ1ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRy
dWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRF
ZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2Rp
ZnkiKScsICcicmVhZC13cml0ZSInKTsKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0
aXZlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNzYyNDQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC04LDE5ICs4LDE5IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEEKIAogCiAKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5n
ZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJUUnVlIgorUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMg
InRydWUiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRh
YmxlIGlzICJ0cnVlIgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29u
dGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitGSVhNRTogaXNDb250ZW50
RWRpdGFibGUgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIFJlbGF0ZWQgdG8gaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4CiBQQVNTIHdpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikg
aXMgInJlYWQtd3JpdGUiCi1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0
dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImZhTFNFIgorUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYWxz
ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVkaXRhYmxlIGlz
ICJmYWxzZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRp
dGFibGUgaXMgZmFsc2UKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQ
cm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKLUZBSUwg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCiBQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJp
dCIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUg
c2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KLUZBSUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUo
cDIsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikgc2hvdWxkIGJl
IHJlYWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCi1GSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHNo
b3VsZCBiZSBjYXNlIGluc2Vuc2l0aXZlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTIwNTkKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250
ZW50RWRpdGFibGUgaXMgdHJ1ZQorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIp
LmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIK
IAogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCkluZGV4OiBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5z
ZW5zaXRpdmUuaHRtbAkocmV2aXNpb24gNzYyNDQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMTksMTIgKzE5LDEzIEBAIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVu
dEUKIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZSA9ICJmYUxT
RSI7CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgPSAiaW5I
RVJJVCI7CiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0
dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciVFJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikn
LCcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNv
bnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK2RlYnVnKCJGSVhNRTog
aXNDb250ZW50RWRpdGFibGUgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIFJlbGF0ZWQgdG8gaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4Iik7CiBzaG91bGRCZSgn
d2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJr
aXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIAotc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCci
ZmFMU0UiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0
cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJmYWxzZSInKTsKIHNob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRpdGFibGUnLCAnImZhbHNlIicpOwogc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmlzQ29udGVudEVkaXRhYmxlJywg
J2ZhbHNlJyk7CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQ
cm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKQEAg
LTM0LDggKzM1LDYgQEAgc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLgog
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxl
JywgJ3RydWUnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdl
dFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsK
IAotZGVidWcoIkZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGNhc2UgaW5zZW5z
aXRpdmUuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OSIpOwot
CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsK
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOwpJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1
dGUtanMtbnVsbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQJKHdvcmtpbmcg
Y29weSkKQEAgLTExLDcgKzExLDcgQEAgVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhl
IGVtcHR5IAogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4g
W3Rlc3RlZCBIVE1MRWxlbWVudC5jbGFzc05hbWVdCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVl
IHdhcyB0aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxFbGVtZW50LmlubmVySFRNTF0KIFRF
U1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRN
TEVsZW1lbnQuaW5uZXJUZXh0XQotVEVTVCBGQUlMRUQ6IFRoZSB2YWx1ZSBzaG91bGQgaGF2ZSBi
ZWVuIHRoZSBzdHJpbmcgJ2ZhbHNlJyBidXQgd2FzIHRoZSBzdHJpbmcgJ3RydWUnLiBbdGVzdGVk
IEhUTUxFbGVtZW50LmNvbnRlbnRFZGl0YWJsZV0KK1RFU1QgU1VDQ0VFREVEOiBUaGUgZXhjZXB0
aW9uIHdhcyB0aHJvd24gYXMgZXhwZWN0ZWQuIFt0ZXN0ZWQgSFRNTEVsZW1lbnQuY29udGVudEVk
aXRhYmxlXQogCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdhcyB0aGUgZW1wdHkgc3RyaW5n
LiBbdGVzdGVkIEhUTUxBbmNob3JFbGVtZW50LmFjY2Vzc0tleV0KIFRFU1QgU1VDQ0VFREVEOiBU
aGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEFuY2hvckVsZW1lbnQu
Y2hhcnNldF0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpz
LW51bGwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0
dHJpYnV0ZS1qcy1udWxsLmh0bWwJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZmFz
dC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0y
NiwxNCArMjYsMjYgQEAKIAogICAgICAgICBmdW5jdGlvbiBudWxsVGVzdEVsZW1lbnRBdHRyaWJ1
dGUoZWxlbWVudFR5cGUsIGVsZW1lbnQsIGF0dHIsIGV4cGVjdGVkKQogICAgICAgICB7Ci0gICAg
ICAgICAgICBlbGVtZW50W2F0dHJdID0gbnVsbDsKLQorICAgICAgICAgICAgdmFyIGV4Y2VwdGlv
blRocm93biA9IGZhbHNlOworICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICBlbGVt
ZW50W2F0dHJdID0gbnVsbDsKKyAgICAgICAgICAgIH0gY2F0Y2ggKGVjKSB7CisgICAgICAgICAg
ICAgICAgZXhjZXB0aW9uVGhyb3duID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAg
IHZhciByZXN1bHQ7Ci0gICAgICAgICAgICBpZiAoZWxlbWVudFthdHRyXSA9PT0gZXhwZWN0ZWQp
Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFuIGNsYXNzPSdwYXNzJz5URVNUIFNVQ0NF
RURFRDo8L3NwYW4+IFRoZSB2YWx1ZSB3YXMgIiArIHJlc3VsdFN0cmluZ2lmaWVyKGV4cGVjdGVk
KSArICIuIjsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICByZXN1bHQgPSAiPHNw
YW4gY2xhc3M9J2ZhaWwnPlRFU1QgRkFJTEVEOjwvc3Bhbj4gVGhlIHZhbHVlIHNob3VsZCBoYXZl
IGJlZW4gIiArIHJlc3VsdFN0cmluZ2lmaWVyKGV4cGVjdGVkKSArICIgYnV0IHdhcyAiICsgcmVz
dWx0U3RyaW5naWZpZXIoZWxlbWVudFthdHRyXSkgKyAiLiI7Ci0KKyAgICAgICAgICAgIGlmIChl
eGNlcHRpb25UaHJvd24pIHsKKyAgICAgICAgICAgICAgICBpZiAoZXhwZWN0ZWQgPT09ICdleGNl
cHRpb24nKQorICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSAiPHNwYW4gY2xhc3M9J3Bhc3Mn
PlRFU1QgU1VDQ0VFREVEOjwvc3Bhbj4gVGhlIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGFzIGV4cGVj
dGVkLiI7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICByZXN1bHQg
PSAiPHNwYW4gY2xhc3M9J2ZhaWwnPlRFU1QgRkFJTEVEOjwvc3Bhbj4gQW4gZXhjZXB0aW9uIHdh
cyB0aHJvd24gdW5leHBlY3RlZGx5LiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICAgIGlmIChleHBlY3RlZCA9PT0gJ2V4Y2VwdGlvbicpCisgICAgICAgICAgICAgICAgICAg
IHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+VEVTVCBGQUlMRUQ6PC9zcGFuPiBBbiBleGNl
cHRpb24gc2hvdWxkIGhhdmUgYmVlbiB0aHJvd24uIjsKKyAgICAgICAgICAgICAgICBlbHNlIGlm
IChlbGVtZW50W2F0dHJdID09PSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0
ID0gIjxzcGFuIGNsYXNzPSdwYXNzJz5URVNUIFNVQ0NFRURFRDo8L3NwYW4+IFRoZSB2YWx1ZSB3
YXMgIiArIHJlc3VsdFN0cmluZ2lmaWVyKGV4cGVjdGVkKSArICIuIjsKKyAgICAgICAgICAgICAg
ICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+
VEVTVCBGQUlMRUQ6PC9zcGFuPiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiAiICsgcmVzdWx0
U3RyaW5naWZpZXIoZXhwZWN0ZWQpICsgIiBidXQgd2FzICIgKyByZXN1bHRTdHJpbmdpZmllcihl
bGVtZW50W2F0dHJdKSArICIuIjsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJlc3VsdCAr
PSAiIFt0ZXN0ZWQgIiArIGVsZW1lbnRUeXBlICsgIi4iICsgYXR0ciArICJdIjsKICAgICAgICAg
ICAgIHByaW50T3V0KHJlc3VsdCk7CiAgICAgICAgIH0KQEAgLTU3LDcgKzY5LDcgQEAKICAgICAg
ICAgICAgICAgICAgICAgYXR0cmlidXRlczogWwogICAgICAgICAgICAgICAgICAgICAgICAge25h
bWU6ICdub2RlVmFsdWUnLCBleHBlY3RlZE51bGw6IG51bGx9LAogICAgICAgICAgICAgICAgICAg
ICAgICAgIC8vICdwcmVmaXgnIG9ubHkgd29ya3MgYmVjYXVzZSB0aGlzIGlzIGFuIEhUTUxFbGVt
ZW50IHR5cGUgbm9kZSwgaWYgaXQgd2VyZSBhbgotICAgICAgICAgICAgICAgICAgICAgICAgIC8v
IFhNTCBub2RlIChjcmVhdGVkIHVzaW5nIGNyZWF0ZUVsZW1lbnROUygpKSB0aGlzIHdvdWxkIHRo
cm93IGFuIGV4Y2VjdGlvbi4gV2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAvLyBYTUwgbm9k
ZSAoY3JlYXRlZCB1c2luZyBjcmVhdGVFbGVtZW50TlMoKSkgdGhpcyB3b3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdlCiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2hvdWxkIHRlc3QgdGhp
cyBmdXJ0aGVyIGFzIEZpcmVmb3ggaGFzIGEgZGlmZmVyZW50IGJlaGF2aW9yLgogICAgICAgICAg
ICAgICAgICAgICAgICAge25hbWU6ICdwcmVmaXgnLCBleHBlY3RlZE51bGw6IG51bGx9LAogICAg
ICAgICAgICAgICAgICAgICAgICAge25hbWU6ICd0ZXh0Q29udGVudCcsIGV4cGVjdGVkTnVsbDog
Jyd9CkBAIC03Nyw3ICs4OSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTog
VEVTVCBUSEVTRQogICAgICAgICAgICAgICAgICAgICAgICAgLy8ge25hbWU6ICdvdXRlckhUTUwn
LCBleHBlY3RlZE51bGw6ICcnfSwKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHtuYW1lOiAn
b3V0ZXJUZXh0JywgZXhwZWN0ZWROdWxsOiAnJ30sCi0gICAgICAgICAgICAgICAgICAgICAgICB7
bmFtZTogJ2NvbnRlbnRFZGl0YWJsZScsIGV4cGVjdGVkTnVsbDogJ2ZhbHNlJ30KKyAgICAgICAg
ICAgICAgICAgICAgICAgIHtuYW1lOiAnY29udGVudEVkaXRhYmxlJywgZXhwZWN0ZWROdWxsOiAn
ZXhjZXB0aW9uJ30KICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAgIH0sCiAg
ICAgICAgICAgICAgICAgewo=
</data>
<flag name="review"
          id="71032"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79625</attachid>
            <date>2011-01-20 11:50:14 -0800</date>
            <delta_ts>2011-01-20 14:16:24 -0800</delta_ts>
            <desc>fix patch 4</desc>
            <filename>52057_4.patch</filename>
            <type>text/plain</type>
            <size>16610</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MjY4KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDEtMjAgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgSW1wbGVtZW50ZWQgZXhjZXB0aW9uIHRo
cm93aW5nIGZvciBzZXRDb250ZW50RWRpdGFibGUgYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcg
c3BlYzoKKyAgICAgICAgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJl
bnQtd29yay9tdWx0aXBhZ2UvZWRpdGluZy5odG1sI2F0dHItY29udGVudGVkaXRhYmxlCisgICAg
ICAgIFJlbGF0ZWQgcXVvdGFzOiAiT24gc2V0dGluZywgaWYgdGhlIG5ldyB2YWx1ZSBpcyBhbiBB
U0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciB0aGUgCisgICAgICAgIHN0cmluZyAnaW5o
ZXJpdCcgdGhlbiB0aGUgY29udGVudCBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkLCBpZiB0aGUg
bmV3IHZhbHVlIGlzIGFuIEFTQ0lJIAorICAgICAgICBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZv
ciB0aGUgc3RyaW5nICd0cnVlJyB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNl
dCB0byB0aGUgCisgICAgICAgIHN0cmluZyAndHJ1ZScsIGlmIHRoZSBuZXcgdmFsdWUgaXMgYW4g
QVNDSUkgY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgdGhlIHN0cmluZyAnZmFsc2UnIAorICAg
ICAgICB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNldCB0byB0aGUgc3RyaW5n
ICdmYWxzZScsIGFuZCBvdGhlcndpc2UgdGhlIGF0dHJpYnV0ZSAKKyAgICAgICAgc2V0dGVyIG11
c3QgcmFpc2UgYSBTWU5UQVhfRVJSIGV4Y2VwdGlvbi4iCisKKyAgICAgICAgKiBodG1sL0hUTUxF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRp
dGFibGUpOiBUaHJvdyBleGNlcHRpb24gb24gaW52YWxpZCBpbnB1dCBzdHJpbmdzOyBNYWtlIHNl
dHRpbmcgdmFsdWVzIGNhc2UtaW5zZW5zaXRpdmUgYW5kIGFsc28gY29udmVydCB0aGVtIHRvIGxv
d2VyIGNhc2VzIGFjY29yZGluZyB0byB0aGUgc3BlYy4KKyAgICAgICAgKiBodG1sL0hUTUxFbGVt
ZW50Lmg6IEFkZCBhZGRpdGlvbmFsIHBhcmFtZXRlciBFeGNlcHRpb25Db2RlJiBmb3IgZnVuY3Rp
b24gc2V0Q29udGVudEVkaXRhYmxlLgorICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOiBB
ZGQgZXhjZXB0aW9uIHRocm93aW5nIHN1cHBvcnQgZm9yIGNvbnRlbnRFZGl0YWJsZSBzZXR0ZXIu
CisKIDIwMTEtMDEtMjAgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2bG92QGNocm9taXVtLm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpJbmRleDogU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRWxlbWVudC5jcHAJKHJldmlzaW9uIDc2MjQ0KQorKysgU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcyOSwxNCArNzI5LDE2IEBAIHZv
aWQgSFRNTEVsZW1lbnQ6OnNldENvbnRlbnRFZGl0YWJsZShBdHQKICAgICB9CiB9CiAKLXZvaWQg
SFRNTEVsZW1lbnQ6OnNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcgJmVuYWJsZWQpCit2
b2lkIEhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRpdGFibGUoY29uc3QgU3RyaW5nJiBlbmFibGVk
LCBFeGNlcHRpb25Db2RlJiBlYykKIHsKLSAgICBpZiAoZW5hYmxlZCA9PSAiaW5oZXJpdCIpIHsK
LSAgICAgICAgRXhjZXB0aW9uQ29kZSBlYzsKKyAgICBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UoZW5h
YmxlZCwgInRydWUiKSkKKyAgICAgICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIs
ICJ0cnVlIiwgZWMpOworICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGVuYWJsZWQsICJm
YWxzZSIpKQorICAgICAgICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0ciwgImZhbHNl
IiwgZWMpOworICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGVuYWJsZWQsICJpbmhlcml0
IikpCiAgICAgICAgIHJlbW92ZUF0dHJpYnV0ZShjb250ZW50ZWRpdGFibGVBdHRyLCBlYyk7Ci0g
ICAgfQogICAgIGVsc2UKLSAgICAgICAgc2V0QXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIs
IGVuYWJsZWQuaXNFbXB0eSgpID8gInRydWUiIDogZW5hYmxlZCk7CisgICAgICAgIGVjID0gU1lO
VEFYX0VSUjsKIH0KIAogYm9vbCBIVE1MRWxlbWVudDo6ZHJhZ2dhYmxlKCkgY29uc3QKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgJKHJldmlzaW9uIDc2MjQ0KQorKysgU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw3ICs2MSw3IEBA
IHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgaXNDb250ZW50UmljaGx5RWRpdGFibGUoKSBjb25z
dDsKIAogICAgIFN0cmluZyBjb250ZW50RWRpdGFibGUoKSBjb25zdDsKLSAgICB2b2lkIHNldENv
bnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldENvbnRlbnRFZGl0YWJs
ZShjb25zdCBTdHJpbmcmLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICB2aXJ0dWFsIGJvb2wgZHJh
Z2dhYmxlKCkgY29uc3Q7CiAgICAgdm9pZCBzZXREcmFnZ2FibGUoYm9vbCk7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAkocmV2aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxFbGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNTksNyArNTksOCBA
QCBtb2R1bGUgaHRtbCB7CiAKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0
aW9uIGNoaWxkcmVuOwogCi0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxU
b051bGxTdHJpbmddIERPTVN0cmluZyBjb250ZW50RWRpdGFibGU7CisgICAgICAgICAgICAgICAg
IGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBjb250ZW50RWRp
dGFibGUKKyAgICAgICAgICAgICAgICAgICAgIHNldHRlciByYWlzZXMoRE9NRXhjZXB0aW9uKTsK
ICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gaXNDb250ZW50RWRpdGFibGU7CiAK
ICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIGJvb2xlYW4gc3BlbGxjaGVjazsKSW5kZXg6IExh
eW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDc2MjY4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDEtMjAgIENoYW5nIFNodSAgPGNoYW5nLnNodUBub2tp
YS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
c2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2Vw
dGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUy
MDU3CisKKyAgICAgICAgVXBkYXRlZCBleHBlY3RlZCByZXN1bHRzIGFmdGVyIHRoZSBmaXguIEFs
c28gY29ycmVjdGVkIHRlc3QgY2FzZXMuCisKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0bWw6IDEuIEZpeGVkIHRoZSBnZXRBdHRyaWJ1dGUg
ZXhwZWN0YXRpb24gYXMgImFiYyIgd2FzIGZhaWxlZCB0byBzZXQuIDIuIEFkZGVkIGFkZGl0aW9u
YWwgY2hlY2sgZm9yIHNldHRpbmcgZW1wdHkgc3RyaW5nLgorICAgICAgICAqIGVkaXRpbmcvZWRp
dGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWw6IEZp
eGVkIHRoZSBnZXRBdHRyaWJ1dGUgZXhwZWN0YXRpb25zIGFzIGFsbCBzdHJpbmdzIHNob3VsZCBi
ZSBjb252ZXJ0ZWQgdG8gbG93ZXIgY2FzZXMuCisgICAgICAgICogZmFzdC9kb20vZWxlbWVudC1h
dHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vZWxlbWVu
dC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sOiBGaXhlZCB0aGlzIGV4aXN0aW5nIHRlc3QgYXMgdGhl
IGV4cGVjdGF0aW9uIGZvciBzZXR0aW5nIHdpdGggbnVsbCBzaG91bGQgdGhyb3cgZXhjZXB0aW9u
IGluc3RlYWQgb2YgImZhbHNlIi4gQWxzbyBhZGRlZCBoYW5kbGluZyBjb2RlIHdoZW4gZXhjZXB0
aW9uIHdhcyB0aHJvd24uCisKIDIwMTEtMDEtMjAgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFu
ZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJlbW92ZSBHVEsgcmVzdWx0IGZv
ciB3aW5kb3ctb25lcnJvcjIgYXMgaXQncyB0aGUgc2FtZQpJbmRleDogTGF5b3V0VGVzdHMvZWRp
dGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTYsMTIgKzYsMTYgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQog
CiAKIAotRkFJTCBleGNlcHRpb25UaHJvd24gc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KLUZJ
WE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cg
ZXhjZXB0aW9uLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTcK
LVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29udGVu
dEVkaXRhYmxlIikgaXMgImFiYyIKLUZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIp
LmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGluaGVyaXQuCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCdkaXYnKS5jb250ZW50RWRpdGFibGUgPSAnYWJjJyB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIp
IGlzICJ0cnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVk
aXRhYmxlIGlzICJ0cnVlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXND
b250ZW50RWRpdGFibGUgaXMgdHJ1ZQotRkFJTCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYs
ICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikgc2hvdWxkIGJlIHJl
YWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRp
diwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13
cml0ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RpdicpLmNvbnRlbnRFZGl0YWJs
ZSA9ICcnIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAx
Mi4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgiY29u
dGVudEVkaXRhYmxlIikgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYiKS5jb250ZW50RWRpdGFibGUgaXMgInRydWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnki
KSBpcyAicmVhZC13cml0ZSIKIAogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCklu
ZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52
YWxpZC12YWx1ZS5odG1sCShyZXZpc2lvbiA3NjI0NCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTEs
MTggKzExLDE0IEBACiA8c2NyaXB0PgogZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxl
IGlzIHNldCB0byBpbnZhbGlkIHN0cmluZywgU1lOVEFYX0VSUiBleGNlcHRpb24gKGNvZGU6IDEy
KSBtdXN0IGJlIHJhaXNlZC4nKQogCi1leGNlcHRpb25UaHJvd24gPSBmYWxzZTsKLQotdHJ5IHsK
LSAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlID0gImFi
YyI7Ci19IGNhdGNoIChlKSB7Ci0gICAgaWYgKGUuY29kZSA9PSAxMikKLSAgICAgICAgZXhjZXB0
aW9uVGhyb3duID0gdHJ1ZTsKLX0KK3Nob3VsZFRocm93KCJkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnZGl2JykuY29udGVudEVkaXRhYmxlID0gJ2FiYyciLCAnIkVycm9yOiBTWU5UQVhfRVJSOiBE
T00gRXhjZXB0aW9uIDEyIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRydWUiJyk7CitzaG91bGRC
ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1
ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50
RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRp
diwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13
cml0ZSInKTsKIAotc2hvdWxkQmUoJ2V4Y2VwdGlvblRocm93bicsICd0cnVlJyk7Ci1kZWJ1Zygi
RklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIGludmFsaWQgc3RyaW5nIHNob3VsZCB0aHJv
dyBleGNlcHRpb24uIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1
NyIpOwotc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1
dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImFiYyInKTsKK3Nob3VsZFRocm93KCJkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnZGl2JykuY29udGVudEVkaXRhYmxlID0gJyciLCAnIkVycm9yOiBTWU5U
QVhfRVJSOiBET00gRXhjZXB0aW9uIDEyIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRydWUiJyk7
CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJs
ZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iiku
aXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScs
ICcicmVhZC13cml0ZSInKTsKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gNzYyNDQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC04LDE5ICs4LDE5IEBAIE9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEEKIAogCiAKLVBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJUUnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUi
CiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlIGlz
ICJ0cnVlIgogRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29udGVudEVk
aXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitGSVhNRTogaXNDb250ZW50RWRpdGFi
bGUgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIFJlbGF0ZWQgdG8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4CiBQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJl
YWQtd3JpdGUiCi1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0
ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImZhTFNFIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYWxzZSIKIFBB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVkaXRhYmxlIGlzICJmYWxz
ZSIKIFBBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuaXNDb250ZW50RWRpdGFibGUg
aXMgZmFsc2UKIFBBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKLUZBSUwgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBz
aG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCiBQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiaW5oZXJpdCIKLUZB
SUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxk
IGJlIHRydWUuIFdhcyBmYWxzZS4KLUZBSUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUocDIsICIi
KS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5Iikgc2hvdWxkIGJlIHJlYWQt
d3JpdGUuIFdhcyByZWFkLW9ubHkuCi1GSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHNob3VsZCBi
ZSBjYXNlIGluc2Vuc2l0aXZlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTIwNTkKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRp
dGFibGUgaXMgdHJ1ZQorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFBy
b3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIKIAogUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRp
dmUuaHRtbAkocmV2aXNpb24gNzYyNDQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmls
aXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTks
MTIgKzE5LDEzIEBAIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEUKIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmNvbnRlbnRFZGl0YWJsZSA9ICJmYUxTRSI7CiBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFibGUgPSAiaW5IRVJJVCI7
CiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0
ZSgiY29udGVudEVkaXRhYmxlIiknLCciVFJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCcidHJ1
ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRF
ZGl0YWJsZScsICcidHJ1ZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2MSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK2RlYnVnKCJGSVhNRTogaXNDb250
ZW50RWRpdGFibGUgaXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIFJlbGF0ZWQgdG8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4Iik7CiBzaG91bGRCZSgnd2luZG93
LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIAotc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciZmFMU0Ui
Jyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKScsJyJmYWxzZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRpdGFibGUnLCAnImZhbHNlIicpOwogc2hvdWxkQmUo
J2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNl
Jyk7CiBzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKQEAgLTM0LDgg
KzM1LDYgQEAgc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLgogc2hvdWxk
QmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3Ry
dWUnKTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKIAotZGVi
dWcoIkZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRpdmUu
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OSIpOwotCiBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYyIikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOwpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUtanMt
bnVsbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZmFzdC9k
b20vZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTExLDcgKzExLDcgQEAgVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5
IAogVEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3Rl
ZCBIVE1MRWxlbWVudC5jbGFzc05hbWVdCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdhcyB0
aGUgZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxFbGVtZW50LmlubmVySFRNTF0KIFRFU1QgU1VD
Q0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEVsZW1l
bnQuaW5uZXJUZXh0XQotVEVTVCBGQUlMRUQ6IFRoZSB2YWx1ZSBzaG91bGQgaGF2ZSBiZWVuIHRo
ZSBzdHJpbmcgJ2ZhbHNlJyBidXQgd2FzIHRoZSBzdHJpbmcgJ3RydWUnLiBbdGVzdGVkIEhUTUxF
bGVtZW50LmNvbnRlbnRFZGl0YWJsZV0KK1RFU1QgU1VDQ0VFREVEOiBUaGUgZXhjZXB0aW9uIHdh
cyB0aHJvd24gYXMgZXhwZWN0ZWQuIFt0ZXN0ZWQgSFRNTEVsZW1lbnQuY29udGVudEVkaXRhYmxl
XQogCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdhcyB0aGUgZW1wdHkgc3RyaW5nLiBbdGVz
dGVkIEhUTUxBbmNob3JFbGVtZW50LmFjY2Vzc0tleV0KIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFs
dWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEFuY2hvckVsZW1lbnQuY2hhcnNl
dF0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpzLW51bGwu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0
ZS1qcy1udWxsLmh0bWwJKHJldmlzaW9uIDc2MjQ0KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20v
ZWxlbWVudC1hdHRyaWJ1dGUtanMtbnVsbC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yNiwxNCAr
MjYsMjYgQEAKIAogICAgICAgICBmdW5jdGlvbiBudWxsVGVzdEVsZW1lbnRBdHRyaWJ1dGUoZWxl
bWVudFR5cGUsIGVsZW1lbnQsIGF0dHIsIGV4cGVjdGVkKQogICAgICAgICB7Ci0gICAgICAgICAg
ICBlbGVtZW50W2F0dHJdID0gbnVsbDsKLQorICAgICAgICAgICAgdmFyIGV4Y2VwdGlvblRocm93
bjsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAgZWxlbWVudFthdHRyXSA9IG51
bGw7CisgICAgICAgICAgICB9IGNhdGNoIChlYykgeworICAgICAgICAgICAgICAgIGV4Y2VwdGlv
blRocm93biA9IGVjOworICAgICAgICAgICAgfQogICAgICAgICAgICAgdmFyIHJlc3VsdDsKLSAg
ICAgICAgICAgIGlmIChlbGVtZW50W2F0dHJdID09PSBleHBlY3RlZCkKLSAgICAgICAgICAgICAg
ICByZXN1bHQgPSAiPHNwYW4gY2xhc3M9J3Bhc3MnPlRFU1QgU1VDQ0VFREVEOjwvc3Bhbj4gVGhl
IHZhbHVlIHdhcyAiICsgcmVzdWx0U3RyaW5naWZpZXIoZXhwZWN0ZWQpICsgIi4iOwotICAgICAg
ICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+
VEVTVCBGQUlMRUQ6PC9zcGFuPiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiAiICsgcmVzdWx0
U3RyaW5naWZpZXIoZXhwZWN0ZWQpICsgIiBidXQgd2FzICIgKyByZXN1bHRTdHJpbmdpZmllcihl
bGVtZW50W2F0dHJdKSArICIuIjsKLQorICAgICAgICAgICAgaWYgKGV4Y2VwdGlvblRocm93bikg
eworICAgICAgICAgICAgICAgIGlmIChleHBlY3RlZCA9PT0gJ2V4Y2VwdGlvbicpCisgICAgICAg
ICAgICAgICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0ncGFzcyc+VEVTVCBTVUNDRUVERUQ6
PC9zcGFuPiBFeGNlcHRpb24gKCIgKyBleGNlcHRpb25UaHJvd24gKyAiKSB3YXMgdGhyb3duIGFz
IGV4cGVjdGVkLiI7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBy
ZXN1bHQgPSAiPHNwYW4gY2xhc3M9J2ZhaWwnPlRFU1QgRkFJTEVEOjwvc3Bhbj4gQW4gZXhjZXB0
aW9uIHdhcyB0aHJvd24gdW5leHBlY3RlZGx5LiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgICAgIGlmIChleHBlY3RlZCA9PT0gJ2V4Y2VwdGlvbicpCisgICAgICAgICAgICAg
ICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+VEVTVCBGQUlMRUQ6PC9zcGFuPiBB
biBleGNlcHRpb24gc2hvdWxkIGhhdmUgYmVlbiB0aHJvd24uIjsKKyAgICAgICAgICAgICAgICBl
bHNlIGlmIChlbGVtZW50W2F0dHJdID09PSBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICAgICAg
cmVzdWx0ID0gIjxzcGFuIGNsYXNzPSdwYXNzJz5URVNUIFNVQ0NFRURFRDo8L3NwYW4+IFRoZSB2
YWx1ZSB3YXMgIiArIHJlc3VsdFN0cmluZ2lmaWVyKGV4cGVjdGVkKSArICIuIjsKKyAgICAgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0n
ZmFpbCc+VEVTVCBGQUlMRUQ6PC9zcGFuPiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiAiICsg
cmVzdWx0U3RyaW5naWZpZXIoZXhwZWN0ZWQpICsgIiBidXQgd2FzICIgKyByZXN1bHRTdHJpbmdp
ZmllcihlbGVtZW50W2F0dHJdKSArICIuIjsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJl
c3VsdCArPSAiIFt0ZXN0ZWQgIiArIGVsZW1lbnRUeXBlICsgIi4iICsgYXR0ciArICJdIjsKICAg
ICAgICAgICAgIHByaW50T3V0KHJlc3VsdCk7CiAgICAgICAgIH0KQEAgLTU3LDcgKzY5LDcgQEAK
ICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlczogWwogICAgICAgICAgICAgICAgICAgICAg
ICAge25hbWU6ICdub2RlVmFsdWUnLCBleHBlY3RlZE51bGw6IG51bGx9LAogICAgICAgICAgICAg
ICAgICAgICAgICAgIC8vICdwcmVmaXgnIG9ubHkgd29ya3MgYmVjYXVzZSB0aGlzIGlzIGFuIEhU
TUxFbGVtZW50IHR5cGUgbm9kZSwgaWYgaXQgd2VyZSBhbgotICAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIFhNTCBub2RlIChjcmVhdGVkIHVzaW5nIGNyZWF0ZUVsZW1lbnROUygpKSB0aGlzIHdv
dWxkIHRocm93IGFuIGV4Y2VjdGlvbi4gV2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAvLyBY
TUwgbm9kZSAoY3JlYXRlZCB1c2luZyBjcmVhdGVFbGVtZW50TlMoKSkgdGhpcyB3b3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdlCiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2hvdWxkIHRl
c3QgdGhpcyBmdXJ0aGVyIGFzIEZpcmVmb3ggaGFzIGEgZGlmZmVyZW50IGJlaGF2aW9yLgogICAg
ICAgICAgICAgICAgICAgICAgICAge25hbWU6ICdwcmVmaXgnLCBleHBlY3RlZE51bGw6IG51bGx9
LAogICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6ICd0ZXh0Q29udGVudCcsIGV4cGVjdGVk
TnVsbDogJyd9CkBAIC03Nyw3ICs4OSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAvLyBG
SVhNRTogVEVTVCBUSEVTRQogICAgICAgICAgICAgICAgICAgICAgICAgLy8ge25hbWU6ICdvdXRl
ckhUTUwnLCBleHBlY3RlZE51bGw6ICcnfSwKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHtu
YW1lOiAnb3V0ZXJUZXh0JywgZXhwZWN0ZWROdWxsOiAnJ30sCi0gICAgICAgICAgICAgICAgICAg
ICAgICB7bmFtZTogJ2NvbnRlbnRFZGl0YWJsZScsIGV4cGVjdGVkTnVsbDogJ2ZhbHNlJ30KKyAg
ICAgICAgICAgICAgICAgICAgICAgIHtuYW1lOiAnY29udGVudEVkaXRhYmxlJywgZXhwZWN0ZWRO
dWxsOiAnZXhjZXB0aW9uJ30KICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICAg
IH0sCiAgICAgICAgICAgICAgICAgewo=
</data>
<flag name="review"
          id="71042"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="71060"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79651</attachid>
            <date>2011-01-20 14:16:24 -0800</date>
            <delta_ts>2011-01-20 15:58:03 -0800</delta_ts>
            <desc>fix patch 5</desc>
            <filename>52057_5.patch</filename>
            <type>text/plain</type>
            <size>16618</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc2MjgxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDEtMjAgIENoYW5nIFNo
dSAgPGNoYW5nLnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgc2V0Q29udGVudEVkaXRhYmxlIHdpdGggaW52YWxpZCBzdHJpbmcg
c2hvdWxkIHRocm93IGV4Y2VwdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUyMDU3CisKKyAgICAgICAgSW1wbGVtZW50ZWQgZXhjZXB0aW9uIHRo
cm93aW5nIGZvciBzZXRDb250ZW50RWRpdGFibGUgYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcg
c3BlYzoKKyAgICAgICAgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJl
bnQtd29yay9tdWx0aXBhZ2UvZWRpdGluZy5odG1sI2F0dHItY29udGVudGVkaXRhYmxlCisgICAg
ICAgIFJlbGF0ZWQgcXVvdGFzOiAiT24gc2V0dGluZywgaWYgdGhlIG5ldyB2YWx1ZSBpcyBhbiBB
U0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciB0aGUgCisgICAgICAgIHN0cmluZyAnaW5o
ZXJpdCcgdGhlbiB0aGUgY29udGVudCBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkLCBpZiB0aGUg
bmV3IHZhbHVlIGlzIGFuIEFTQ0lJIAorICAgICAgICBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZv
ciB0aGUgc3RyaW5nICd0cnVlJyB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNl
dCB0byB0aGUgCisgICAgICAgIHN0cmluZyAndHJ1ZScsIGlmIHRoZSBuZXcgdmFsdWUgaXMgYW4g
QVNDSUkgY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgdGhlIHN0cmluZyAnZmFsc2UnIAorICAg
ICAgICB0aGVuIHRoZSBjb250ZW50IGF0dHJpYnV0ZSBtdXN0IGJlIHNldCB0byB0aGUgc3RyaW5n
ICdmYWxzZScsIGFuZCBvdGhlcndpc2UgdGhlIGF0dHJpYnV0ZSAKKyAgICAgICAgc2V0dGVyIG11
c3QgcmFpc2UgYSBTWU5UQVhfRVJSIGV4Y2VwdGlvbi4iCisKKyAgICAgICAgKiBodG1sL0hUTUxF
bGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpzZXRDb250ZW50RWRp
dGFibGUpOiBUaHJvdyBleGNlcHRpb24gb24gaW52YWxpZCBpbnB1dCBzdHJpbmdzOyBNYWtlIHNl
dHRpbmcgdmFsdWVzIGNhc2UtaW5zZW5zaXRpdmUgYW5kIGFsc28gY29udmVydCB0aGVtIHRvIGxv
d2VyIGNhc2VzIGFjY29yZGluZyB0byB0aGUgc3BlYy4KKyAgICAgICAgKiBodG1sL0hUTUxFbGVt
ZW50Lmg6IEFkZCBhZGRpdGlvbmFsIHBhcmFtZXRlciBFeGNlcHRpb25Db2RlJiBmb3IgZnVuY3Rp
b24gc2V0Q29udGVudEVkaXRhYmxlLgorICAgICAgICAqIGh0bWwvSFRNTEVsZW1lbnQuaWRsOiBB
ZGQgZXhjZXB0aW9uIHRocm93aW5nIHN1cHBvcnQgZm9yIGNvbnRlbnRFZGl0YWJsZSBzZXR0ZXIu
CisKIDIwMTEtMDEtMjAgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBGaXNoZXIuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmNwcAkocmV2aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzI5LDE0ICs3MjksMTYgQEAgdm9pZCBI
VE1MRWxlbWVudDo6c2V0Q29udGVudEVkaXRhYmxlKEF0dAogICAgIH0KIH0KIAotdm9pZCBIVE1M
RWxlbWVudDo6c2V0Q29udGVudEVkaXRhYmxlKGNvbnN0IFN0cmluZyAmZW5hYmxlZCkKK3ZvaWQg
SFRNTEVsZW1lbnQ6OnNldENvbnRlbnRFZGl0YWJsZShjb25zdCBTdHJpbmcmIGVuYWJsZWQsIEV4
Y2VwdGlvbkNvZGUmIGVjKQogewotICAgIGlmIChlbmFibGVkID09ICJpbmhlcml0IikgewotICAg
ICAgICBFeGNlcHRpb25Db2RlIGVjOworICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShlbmFibGVk
LCAidHJ1ZSIpKQorICAgICAgICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0ciwgInRy
dWUiLCBlYyk7CisgICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UoZW5hYmxlZCwgImZhbHNl
IikpCisgICAgICAgIHNldEF0dHJpYnV0ZShjb250ZW50ZWRpdGFibGVBdHRyLCAiZmFsc2UiLCBl
Yyk7CisgICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UoZW5hYmxlZCwgImluaGVyaXQiKSkK
ICAgICAgICAgcmVtb3ZlQXR0cmlidXRlKGNvbnRlbnRlZGl0YWJsZUF0dHIsIGVjKTsKLSAgICB9
CiAgICAgZWxzZQotICAgICAgICBzZXRBdHRyaWJ1dGUoY29udGVudGVkaXRhYmxlQXR0ciwgZW5h
YmxlZC5pc0VtcHR5KCkgPyAidHJ1ZSIgOiBlbmFibGVkKTsKKyAgICAgICAgZWMgPSBTWU5UQVhf
RVJSOwogfQogCiBib29sIEhUTUxFbGVtZW50OjpkcmFnZ2FibGUoKSBjb25zdApJbmRleDogU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTEVsZW1lbnQuaAkocmV2aXNpb24gNzYyNDQpCisrKyBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTYxLDcgKzYxLDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgYm9vbCBpc0NvbnRlbnRSaWNobHlFZGl0YWJsZSgpIGNvbnN0Owog
CiAgICAgU3RyaW5nIGNvbnRlbnRFZGl0YWJsZSgpIGNvbnN0OwotICAgIHZvaWQgc2V0Q29udGVu
dEVkaXRhYmxlKGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgc2V0Q29udGVudEVkaXRhYmxlKGNv
bnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHZpcnR1YWwgYm9vbCBkcmFnZ2Fi
bGUoKSBjb25zdDsKICAgICB2b2lkIHNldERyYWdnYWJsZShib29sKTsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEVsZW1lbnQuaWRsCShyZXZpc2lvbiA3NjI0NCkKKysrIFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEVsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC01OSw3ICs1OSw4IEBAIG1v
ZHVsZSBodG1sIHsKIAogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rpb24g
Y2hpbGRyZW47CiAKLSAgICAgICAgICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVs
bFN0cmluZ10gRE9NU3RyaW5nIGNvbnRlbnRFZGl0YWJsZTsKKyAgICAgICAgICAgICAgICAgYXR0
cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIGNvbnRlbnRFZGl0YWJs
ZQorICAgICAgICAgICAgICAgICAgICAgc2V0dGVyIHJhaXNlcyhET01FeGNlcHRpb24pOwogICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBpc0NvbnRlbnRFZGl0YWJsZTsKIAogICAg
ICAgICAgICAgICAgICBhdHRyaWJ1dGUgYm9vbGVhbiBzcGVsbGNoZWNrOwpJbmRleDogTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2
aXNpb24gNzYyODEpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwxOSBAQAorMjAxMS0wMS0yMCAgQ2hhbmcgU2h1ICA8Y2hhbmcuc2h1QG5va2lhLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBzZXRD
b250ZW50RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cgZXhjZXB0aW9u
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTcK
KworICAgICAgICBVcGRhdGVkIGV4cGVjdGVkIHJlc3VsdHMgYWZ0ZXIgdGhlIGZpeC4gQWxzbyBj
b3JyZWN0ZWQgdGVzdCBjYXNlcy4KKworICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0
LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxp
dHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbDogMS4gRml4ZWQgdGhlIGdldEF0dHJpYnV0ZSBleHBl
Y3RhdGlvbiBhcyAiYWJjIiB3YXMgZmFpbGVkIHRvIHNldC4gMi4gQWRkZWQgYWRkaXRpb25hbCBj
aGVjayBmb3Igc2V0dGluZyBlbXB0eSBzdHJpbmcuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBl
ZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbDogRml4ZWQg
dGhlIGdldEF0dHJpYnV0ZSBleHBlY3RhdGlvbnMgYXMgYWxsIHN0cmluZ3Mgc2hvdWxkIGJlIGNv
bnZlcnRlZCB0byBsb3dlciBjYXNlcy4KKyAgICAgICAgKiBmYXN0L2RvbS9lbGVtZW50LWF0dHJp
YnV0ZS1qcy1udWxsLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2RvbS9lbGVtZW50LWF0
dHJpYnV0ZS1qcy1udWxsLmh0bWw6IEZpeGVkIHRoaXMgZXhpc3RpbmcgdGVzdCBhcyB0aGUgZXhw
ZWN0YXRpb24gZm9yIHNldHRpbmcgd2l0aCBudWxsIHNob3VsZCB0aHJvdyBleGNlcHRpb24gaW5z
dGVhZCBvZiAiZmFsc2UiLiBBbHNvIGFkZGVkIGhhbmRsaW5nIGNvZGUgd2hlbiBleGNlcHRpb24g
d2FzIHRocm93bi4KKwogMjAxMS0wMS0yMCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBVbnJldmlld2VkOyBBbm90aGVyIENocm9taXVtIHJlYmFzZWxpbmUgZm9y
IHI3NjIzNi4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFs
aWQtdmFsdWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiA3NjI0
NCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC02LDEyICs2LDE2IEBAIE9uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiAKLUZBSUwgZXhjZXB0aW9uVGhyb3du
IHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCi1GSVhNRTogc2V0Q29udGVudEVkaXRhYmxlIHdp
dGggaW52YWxpZCBzdHJpbmcgc2hvdWxkIHRocm93IGV4Y2VwdGlvbi4gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU3Ci1QQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJhYmMiCi1GQUlM
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJl
IHRydWUuIFdhcyBpbmhlcml0LgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGl2Jyku
Y29udGVudEVkaXRhYmxlID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBTWU5UQVhfRVJS
OiBET00gRXhjZXB0aW9uIDEyLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iiku
Z2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKIFBBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKLUZB
SUwgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIHNob3VsZCBiZSByZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5Lgor
UEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCIt
d2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCitQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdkaXYnKS5jb250ZW50RWRpdGFibGUgPSAnJyB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFNZTlRBWF9FUlI6IERPTSBFeGNlcHRpb24gMTIuCitQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJ0cnVlIgor
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlIGlzICJ0
cnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFi
bGUgaXMgdHJ1ZQorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCiAKIFBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAkocmV2aXNpb24g
NzYyNDQpCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZh
bHVlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDE4ICsxMSwxNCBAQAogPHNjcmlwdD4KIGRl
c2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gaW52YWxpZCBzdHJpbmcs
IFNZTlRBWF9FUlIgZXhjZXB0aW9uIChjb2RlOiAxMikgbXVzdCBiZSByYWlzZWQuJykKIAotZXhj
ZXB0aW9uVGhyb3duID0gZmFsc2U7Ci0KLXRyeSB7Ci0gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSA9ICJhYmMiOwotfSBjYXRjaCAoZSkgewotICAgIGlm
IChlLmNvZGUgPT0gMTIpCi0gICAgICAgIGV4Y2VwdGlvblRocm93biA9IHRydWU7Ci19CitzaG91
bGRUaHJvdygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RpdicpLmNvbnRlbnRFZGl0YWJsZSA9
ICdhYmMnIiwgJyJFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMiInKTsKK3Nob3Vs
ZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKScsJyJ0cnVlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3Vs
ZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCIt
d2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CiAKLXNob3VsZEJlKCdleGNl
cHRpb25UaHJvd24nLCAndHJ1ZScpOwotZGVidWcoIkZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUg
d2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cgZXhjZXB0aW9uLiBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTciKTsKLXNob3VsZEJlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJh
YmMiJyk7CitzaG91bGRUaHJvdygiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RpdicpLmNvbnRl
bnRFZGl0YWJsZSA9ICcnIiwgJyJFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlvbiAxMiIn
KTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKScsJyJ0cnVlIicpOwogc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7CiBzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUn
KTsKIHNob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDc2MjQ0
KQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vu
c2l0aXZlLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtOCwxOSArOCwxOSBAQCBPbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogCi1QQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBp
cyAiVFJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1
dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJ0cnVlIgogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKIEZBSUwgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2Fz
IGZhbHNlLgorRklYTUU6IGlzQ29udGVudEVkaXRhYmxlIGlzIG5vdCB3b3JraW5nIHByb3Blcmx5
LiBSZWxhdGVkIHRvIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1
OAogUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgotUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicDEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJm
YUxTRSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRlKCJj
b250ZW50RWRpdGFibGUiKSBpcyAiZmFsc2UiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwMSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiZmFsc2UiCiBQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCiBQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKHAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlm
eSIpIGlzICJyZWFkLW9ubHkiCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmhh
c0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgc2hvdWxkIGJlIGZhbHNlLiBXYXMgdHJ1ZS4K
K1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKSBpcyBmYWxzZQogUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5j
b250ZW50RWRpdGFibGUgaXMgImluaGVyaXQiCi1GQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwMiIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCi1GQUlM
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtp
dC11c2VyLW1vZGlmeSIpIHNob3VsZCBiZSByZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5LgotRklY
TUU6IHNldENvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgY2FzZSBpbnNlbnNpdGl2ZS4gaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU5CitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUocDIsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXIt
bW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCiAKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKIApJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2Fz
ZWluc2Vuc2l0aXZlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWwJKHJldmlzaW9uIDc2MjQ0KQor
KysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0
aXZlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE5LDEyICsxOSwxMyBAQCBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFCiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEi
KS5jb250ZW50RWRpdGFibGUgPSAiZmFMU0UiOwogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAy
IikuY29udGVudEVkaXRhYmxlID0gImluSEVSSVQiOwogCi1zaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnIlRS
dWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRydWUiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7CiBzaG91
bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZScs
ICd0cnVlJyk7CitkZWJ1ZygiRklYTUU6IGlzQ29udGVudEVkaXRhYmxlIGlzIG5vdCB3b3JraW5n
IHByb3Blcmx5LiBSZWxhdGVkIHRvIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD01MjA1OCIpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIi
KS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUi
Jyk7CiAKLXNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5nZXRBdHRyaWJ1
dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZhTFNFIicpOworc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciZmFs
c2UiJyk7CiBzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVk
aXRhYmxlJywgJyJmYWxzZSInKTsKIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cDEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOwogc2hvdWxkQmUoJ3dpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKHAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlm
eSIpJywgJyJyZWFkLW9ubHkiJyk7CkBAIC0zNCw4ICszNSw2IEBAIHNob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicDIiKS4KIHNob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicDIiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CiBzaG91bGRCZSgnd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUocDIsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9k
aWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CiAKLWRlYnVnKCJGSVhNRTogc2V0Q29udGVudEVkaXRh
YmxlIHNob3VsZCBiZSBjYXNlIGluc2Vuc2l0aXZlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTIwNTkiKTsKLQogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEi
KS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5z
dHlsZS5kaXNwbGF5PSAnbm9uZSc7CiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpLnN0
eWxlLmRpc3BsYXk9ICdub25lJzsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQt
YXR0cmlidXRlLWpzLW51bGwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpzLW51bGwtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biA3NjI0NCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQtYXR0cmlidXRlLWpzLW51
bGwtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3IEBAIFRFU1QgU1VD
Q0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSAKIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFs
dWUgd2FzIHRoZSBlbXB0eSBzdHJpbmcuIFt0ZXN0ZWQgSFRNTEVsZW1lbnQuY2xhc3NOYW1lXQog
VEVTVCBTVUNDRUVERUQ6IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBI
VE1MRWxlbWVudC5pbm5lckhUTUxdCiBURVNUIFNVQ0NFRURFRDogVGhlIHZhbHVlIHdhcyB0aGUg
ZW1wdHkgc3RyaW5nLiBbdGVzdGVkIEhUTUxFbGVtZW50LmlubmVyVGV4dF0KLVRFU1QgRkFJTEVE
OiBUaGUgdmFsdWUgc2hvdWxkIGhhdmUgYmVlbiB0aGUgc3RyaW5nICdmYWxzZScgYnV0IHdhcyB0
aGUgc3RyaW5nICd0cnVlJy4gW3Rlc3RlZCBIVE1MRWxlbWVudC5jb250ZW50RWRpdGFibGVdCitU
RVNUIFNVQ0NFRURFRDogRXhjZXB0aW9uIChFcnJvcjogU1lOVEFYX0VSUjogRE9NIEV4Y2VwdGlv
biAxMikgd2FzIHRocm93biBhcyBleHBlY3RlZC4gW3Rlc3RlZCBIVE1MRWxlbWVudC5jb250ZW50
RWRpdGFibGVdCiAKIFRFU1QgU1VDQ0VFREVEOiBUaGUgdmFsdWUgd2FzIHRoZSBlbXB0eSBzdHJp
bmcuIFt0ZXN0ZWQgSFRNTEFuY2hvckVsZW1lbnQuYWNjZXNzS2V5XQogVEVTVCBTVUNDRUVERUQ6
IFRoZSB2YWx1ZSB3YXMgdGhlIGVtcHR5IHN0cmluZy4gW3Rlc3RlZCBIVE1MQW5jaG9yRWxlbWVu
dC5jaGFyc2V0XQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vZWxlbWVudC1hdHRyaWJ1dGUt
anMtbnVsbC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2VsZW1lbnQt
YXR0cmlidXRlLWpzLW51bGwuaHRtbAkocmV2aXNpb24gNzYyNDQpCisrKyBMYXlvdXRUZXN0cy9m
YXN0L2RvbS9lbGVtZW50LWF0dHJpYnV0ZS1qcy1udWxsLmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTI2LDE0ICsyNiwyNiBAQAogCiAgICAgICAgIGZ1bmN0aW9uIG51bGxUZXN0RWxlbWVudEF0dHJp
YnV0ZShlbGVtZW50VHlwZSwgZWxlbWVudCwgYXR0ciwgZXhwZWN0ZWQpCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIGVsZW1lbnRbYXR0cl0gPSBudWxsOwotCisgICAgICAgICAgICB2YXIgZXhjZXB0
aW9uVGhyb3duOworICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgICBlbGVtZW50W2F0
dHJdID0gbnVsbDsKKyAgICAgICAgICAgIH0gY2F0Y2ggKGVjKSB7CisgICAgICAgICAgICAgICAg
ZXhjZXB0aW9uVGhyb3duID0gZWM7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICB2YXIgcmVz
dWx0OwotICAgICAgICAgICAgaWYgKGVsZW1lbnRbYXR0cl0gPT09IGV4cGVjdGVkKQotICAgICAg
ICAgICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0ncGFzcyc+VEVTVCBTVUNDRUVERUQ6PC9z
cGFuPiBUaGUgdmFsdWUgd2FzICIgKyByZXN1bHRTdHJpbmdpZmllcihleHBlY3RlZCkgKyAiLiI7
Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFuIGNsYXNz
PSdmYWlsJz5URVNUIEZBSUxFRDo8L3NwYW4+IFRoZSB2YWx1ZSBzaG91bGQgaGF2ZSBiZWVuICIg
KyByZXN1bHRTdHJpbmdpZmllcihleHBlY3RlZCkgKyAiIGJ1dCB3YXMgIiArIHJlc3VsdFN0cmlu
Z2lmaWVyKGVsZW1lbnRbYXR0cl0pICsgIi4iOwotCisgICAgICAgICAgICBpZiAoZXhjZXB0aW9u
VGhyb3duKSB7CisgICAgICAgICAgICAgICAgaWYgKGV4cGVjdGVkID09PSAnZXhjZXB0aW9uJykK
KyAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFuIGNsYXNzPSdwYXNzJz5URVNUIFNV
Q0NFRURFRDo8L3NwYW4+IEV4Y2VwdGlvbiAoIiArIGV4Y2VwdGlvblRocm93biArICIpIHdhcyB0
aHJvd24gYXMgZXhwZWN0ZWQuIjsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICAgICAgIHJlc3VsdCA9ICI8c3BhbiBjbGFzcz0nZmFpbCc+VEVTVCBGQUlMRUQ6PC9zcGFuPiBB
biBleGNlcHRpb24gd2FzIHRocm93biB1bmV4cGVjdGVkbHkuIjsKKyAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgaWYgKGV4cGVjdGVkID09PSAnZXhjZXB0aW9uJykKKyAgICAg
ICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFuIGNsYXNzPSdmYWlsJz5URVNUIEZBSUxFRDo8
L3NwYW4+IEFuIGV4Y2VwdGlvbiBzaG91bGQgaGF2ZSBiZWVuIHRocm93bi4iOworICAgICAgICAg
ICAgICAgIGVsc2UgaWYgKGVsZW1lbnRbYXR0cl0gPT09IGV4cGVjdGVkKQorICAgICAgICAgICAg
ICAgICAgICByZXN1bHQgPSAiPHNwYW4gY2xhc3M9J3Bhc3MnPlRFU1QgU1VDQ0VFREVEOjwvc3Bh
bj4gVGhlIHZhbHVlIHdhcyAiICsgcmVzdWx0U3RyaW5naWZpZXIoZXhwZWN0ZWQpICsgIi4iOwor
ICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIjxzcGFu
IGNsYXNzPSdmYWlsJz5URVNUIEZBSUxFRDo8L3NwYW4+IFRoZSB2YWx1ZSBzaG91bGQgaGF2ZSBi
ZWVuICIgKyByZXN1bHRTdHJpbmdpZmllcihleHBlY3RlZCkgKyAiIGJ1dCB3YXMgIiArIHJlc3Vs
dFN0cmluZ2lmaWVyKGVsZW1lbnRbYXR0cl0pICsgIi4iOworICAgICAgICAgICAgfQogICAgICAg
ICAgICAgcmVzdWx0ICs9ICIgW3Rlc3RlZCAiICsgZWxlbWVudFR5cGUgKyAiLiIgKyBhdHRyICsg
Il0iOwogICAgICAgICAgICAgcHJpbnRPdXQocmVzdWx0KTsKICAgICAgICAgfQpAQCAtNTcsNyAr
NjksNyBAQAogICAgICAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBbCiAgICAgICAgICAgICAg
ICAgICAgICAgICB7bmFtZTogJ25vZGVWYWx1ZScsIGV4cGVjdGVkTnVsbDogbnVsbH0sCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gJ3ByZWZpeCcgb25seSB3b3JrcyBiZWNhdXNlIHRoaXMg
aXMgYW4gSFRNTEVsZW1lbnQgdHlwZSBub2RlLCBpZiBpdCB3ZXJlIGFuCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgLy8gWE1MIG5vZGUgKGNyZWF0ZWQgdXNpbmcgY3JlYXRlRWxlbWVudE5TKCkp
IHRoaXMgd291bGQgdGhyb3cgYW4gZXhjZWN0aW9uLiBXZQorICAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIFhNTCBub2RlIChjcmVhdGVkIHVzaW5nIGNyZWF0ZUVsZW1lbnROUygpKSB0aGlzIHdv
dWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2UKICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBz
aG91bGQgdGVzdCB0aGlzIGZ1cnRoZXIgYXMgRmlyZWZveCBoYXMgYSBkaWZmZXJlbnQgYmVoYXZp
b3IuCiAgICAgICAgICAgICAgICAgICAgICAgICB7bmFtZTogJ3ByZWZpeCcsIGV4cGVjdGVkTnVs
bDogbnVsbH0sCiAgICAgICAgICAgICAgICAgICAgICAgICB7bmFtZTogJ3RleHRDb250ZW50Jywg
ZXhwZWN0ZWROdWxsOiAnJ30KQEAgLTc3LDcgKzg5LDcgQEAKICAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIEZJWE1FOiBURVNUIFRIRVNFCiAgICAgICAgICAgICAgICAgICAgICAgICAvLyB7bmFt
ZTogJ291dGVySFRNTCcsIGV4cGVjdGVkTnVsbDogJyd9LAogICAgICAgICAgICAgICAgICAgICAg
ICAgLy8ge25hbWU6ICdvdXRlclRleHQnLCBleHBlY3RlZE51bGw6ICcnfSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHtuYW1lOiAnY29udGVudEVkaXRhYmxlJywgZXhwZWN0ZWROdWxsOiAnZmFs
c2UnfQorICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6ICdjb250ZW50RWRpdGFibGUnLCBl
eHBlY3RlZE51bGw6ICdleGNlcHRpb24nfQogICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAg
ICAgICAgICAgfSwKICAgICAgICAgICAgICAgICB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>