<?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>51957</bug_id>
          
          <creation_ts>2011-01-05 14:23:12 -0800</creation_ts>
          <short_desc>Provide test cases for testing contentEditable DOM attribute</short_desc>
          <delta_ts>2011-01-24 14:03:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>50636</blocked>
    
    <blocked>52056</blocked>
    
    <blocked>52057</blocked>
    
    <blocked>52058</blocked>
    
    <blocked>52059</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chang Shu">cshu</reporter>
          <assigned_to name="Chang Shu">cshu</assigned_to>
          <cc>ademar</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eric</cc>
    
    <cc>rniwa</cc>
    
    <cc>suresh.voruganti</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>329790</commentid>
    <comment_count>0</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-05 14:23:12 -0800</bug_when>
    <thetext>Create the test content for contentEditable first. Then work on the fix for 50636.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329794</commentid>
    <comment_count>1</comment_count>
      <attachid>78045</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-05 14:26:32 -0800</bug_when>
    <thetext>Created attachment 78045
fix patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330261</commentid>
    <comment_count>2</comment_count>
      <attachid>78045</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-06 11:46:10 -0800</bug_when>
    <thetext>Comment on attachment 78045
fix patch

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

&gt; LayoutTests/ChangeLog:8
&gt; +        * editing/contentEditable: Added.

I&apos;m not sure contentEditable is a good name since everything in editing basically tests content-editable feature.  Maybe editability?  darin and/or eseidel might know a better alternative.

&gt; LayoutTests/ChangeLog:10
&gt; +        * editing/contentEditable/attrEmptyString-expected.txt: Added.
&gt; +        * editing/contentEditable/attrEmptyString.html: Added.

I don&apos;t think we use camel case that for test names.  we usually use lower case concatenated with &quot;-&quot;s.

&gt; LayoutTests/editing/contentEditable/attrEmptyString.html:10
&gt; +&lt;div id=&quot;Div1&quot; contentEditable=&quot;&quot;&gt;&lt;/div&gt;

Can we not capitalize id?  Also, I usually use &quot;test&quot; or &quot;div&quot;.  &quot;Div1&quot; sounds rather arbitrary.  The same goes for the other tests.

&gt; LayoutTests/editing/contentEditable/attrEmptyString.html:12
&gt; +description(&apos;When contentEditable keyword is empty string, element.contentEditable returns &quot;true&quot; and the element is editable.&apos;)

Nit: contenteditable attribute instead of contentEditable keyword.

&gt; LayoutTests/editing/contentEditable/attrEmptyString.html:16
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).contentEditable&apos;, &apos;&quot;true&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).isContentEditable&apos;, &apos;true&apos;);
&gt; +shouldBe(&apos;document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;)&apos;, &apos;&quot;read-write&quot;&apos;);

You might also want to test that document.getElementById(&apos;Div1&apos;).getAttributeValue(&apos;contenteditable&apos;) (?) is empty.

&gt; LayoutTests/editing/contentEditable/attrFalseString.html:16
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).contentEditable&apos;, &apos;&quot;false&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).isContentEditable&apos;, &apos;false&apos;);
&gt; +shouldBe(&apos;document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;)&apos;, &apos;&quot;read-only&quot;&apos;);

Similarly, check getAttributeValue here.

&gt; LayoutTests/editing/contentEditable/attrInvalidString.html:14
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).contentEditable&apos;, &apos;&quot;inherit&quot;&apos;);

Why don&apos;t we also check isContentEditable, -webkit-user-modify, and the actual attribute value.

&gt; LayoutTests/editing/contentEditable/attrMissingAncestorFalse-expected.txt:19
&gt; +
&gt; +
&gt; +
&gt; +
&gt; +
&gt; +  
&gt; +
&gt; +    
&gt; +
&gt; +      
&gt; +
&gt; +    
&gt; +
&gt; +  
&gt; +
&gt; +

I&apos;m not happy about these blank lines.  Can we hide Div1 at the end of the test?

&gt; LayoutTests/editing/contentEditable/attrMissingAncestorFalse.html:13
&gt; +      &lt;p id=&quot;P1&quot;&gt;&lt;/p&gt;

Ditto.  In fact, you don&apos;t even need add an id if you used other block element such as blockquote because then you can just do document.getElementsByTagName(&apos;blockquote&apos;)[0].

&gt; LayoutTests/editing/contentEditable/attrMissingAncestorFalse.html:23
&gt; +shouldBe(&apos;document.getElementById(&quot;P1&quot;).contentEditable&apos;, &apos;&quot;inherit&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;P1&quot;).isContentEditable&apos;, &apos;false&apos;);
&gt; +shouldBe(&apos;document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;)&apos;, &apos;&quot;read-only&quot;&apos;);

Check attribute value here as well.

&gt; LayoutTests/editing/contentEditable/attrMissingAncestorTrue-expected.txt:23
&gt; +FAIL document.getElementById(&quot;P1&quot;).contentEditable should be inherit. Was true.
&gt; +PASS document.getElementById(&quot;P1&quot;).isContentEditable is true
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;
&gt; +PASS successfullyParsed is true

We probably shouldn&apos;t be checking in a test with &quot;FAIL&quot;.  If you&apos;re planning to fix this bug, then we should probably be checking in this test with that fix.

&gt; LayoutTests/editing/contentEditable/attrMissingParentAncestorMissing-expected.txt:23
&gt; +FAIL document.getElementById(&quot;P1&quot;).contentEditable should be inherit. Was false.
&gt; +PASS document.getElementById(&quot;P1&quot;).isContentEditable is false
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-only&quot;
&gt; +PASS successfullyParsed is true

Ditto.

&gt; LayoutTests/editing/contentEditable/attrMissingParentFalse-expected.txt:13
&gt; +FAIL document.getElementById(&quot;P1&quot;).contentEditable should be inherit. Was false.
&gt; +PASS document.getElementById(&quot;P1&quot;).isContentEditable is false
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-only&quot;

Ditto.

&gt; LayoutTests/editing/contentEditable/attrMissingParentTrue-expected.txt:13
&gt; +FAIL document.getElementById(&quot;P1&quot;).contentEditable should be inherit. Was true.
&gt; +PASS document.getElementById(&quot;P1&quot;).isContentEditable is true
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;

Ditto.

&gt; LayoutTests/editing/contentEditable/attrTrueString.html:17
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).contentEditable&apos;, &apos;&quot;true&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).isContentEditable&apos;, &apos;true&apos;);
&gt; +shouldBe(&apos;document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;)&apos;, &apos;&quot;read-write&quot;&apos;);
&gt; +

Want to check attribute value here too.

&gt; LayoutTests/editing/contentEditable/setFalse-expected.txt:11
&gt; +
&gt; +
&gt; +
&gt; +
&gt; +
&gt; +    
&gt; +

Hide divs at the end of avoid adding blank lines.

&gt; LayoutTests/editing/contentEditable/setFalse.html:27
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).contentEditable&apos;, &apos;&quot;false&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;Div1&quot;).isContentEditable&apos;, &apos;false&apos;);
&gt; +shouldBe(&apos;document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;)&apos;, &apos;&quot;read-only&quot;&apos;);
&gt; +
&gt; +shouldBe(&apos;document.getElementById(&quot;P2&quot;).contentEditable&apos;, &apos;&quot;false&quot;&apos;);
&gt; +shouldBe(&apos;document.getElementById(&quot;P2&quot;).isContentEditable&apos;, &apos;false&apos;);
&gt; +shouldBe(&apos;document.defaultView.getComputedStyle(P2, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;)&apos;, &apos;&quot;read-only&quot;&apos;);
&gt; +

Check attribute value.

&gt; LayoutTests/editing/contentEditable/setInheritParentFalse-expected.txt:15
&gt; +FAIL document.getElementById(&quot;P1&quot;).contentEditable should be inherit. Was true.
&gt; +FAIL document.getElementById(&quot;P1&quot;).isContentEditable should be false. Was true.
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-only&quot;
&gt; +

Same comment about the failures.

&gt; LayoutTests/editing/contentEditable/setInheritParentTrue-expected.txt:15
&gt; +FAIL document.getElementById(&quot;P1&quot;).contentEditable should be inherit. Was false.
&gt; +FAIL document.getElementById(&quot;P1&quot;).isContentEditable should be true. Was false.
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;
&gt; +

Ditto.

&gt; LayoutTests/editing/contentEditable/setInvalidValue-expected.txt:12
&gt; +FAIL exceptionThrown should be true. Was false.
&gt; +PASS document.getElementById(&quot;Div1&quot;).contentEditable is &quot;true&quot;
&gt; +PASS document.getElementById(&quot;Div1&quot;).isContentEditable is true
&gt; +FAIL document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) should be read-write. Was read-only.

Ditto.

&gt; LayoutTests/editing/contentEditable/setTrue-expected.txt:19
&gt; +FAIL document.getElementById(&quot;Div1&quot;).contentEditable should be true. Was false.
&gt; +FAIL document.getElementById(&quot;Div1&quot;).isContentEditable should be true. Was false.
&gt; +PASS document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;
&gt; +PASS document.getElementById(&quot;P2&quot;).contentEditable is &quot;true&quot;
&gt; +PASS document.getElementById(&quot;P2&quot;).isContentEditable is true
&gt; +PASS document.defaultView.getComputedStyle(P2, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;
&gt; +

Ditto.

&gt; LayoutTests/editing/contentEditable/setValueCaseInsensitive-expected.txt:22
&gt; +FAIL document.getElementById(&quot;Div1&quot;).contentEditable should be true. Was false.
&gt; +FAIL document.getElementById(&quot;Div1&quot;).isContentEditable should be true. Was false.
&gt; +PASS document.defaultView.getComputedStyle(Div1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;
&gt; +PASS document.getElementById(&quot;P1&quot;).contentEditable is &quot;false&quot;
&gt; +PASS document.getElementById(&quot;P1&quot;).isContentEditable is false
&gt; +PASS document.defaultView.getComputedStyle(P1, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-only&quot;
&gt; +FAIL document.getElementById(&quot;P2&quot;).contentEditable should be inherit. Was false.
&gt; +FAIL document.getElementById(&quot;P2&quot;).isContentEditable should be true. Was false.
&gt; +FAIL document.defaultView.getComputedStyle(P2, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) should be read-write. Was read-only.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330262</commentid>
    <comment_count>3</comment_count>
      <attachid>78045</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-06 11:46:35 -0800</bug_when>
    <thetext>Comment on attachment 78045
fix patch

Thanks for doing this. r- for now because I want you to address the above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330263</commentid>
    <comment_count>4</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-06 11:49:38 -0800</bug_when>
    <thetext>Test results on other major browsers:
1. IE8
All -webkit-user-modify fail
setInvalidValue.html fail: no exception was thrown
2. FireFox
All -webkit-user-modify fail
All isContentEditable call fail
3. Opera
All -webkit-user-modify fail

All other test cases pass</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330400</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-06 14:00:11 -0800</bug_when>
    <thetext>Darin &amp; Eric, do you have suggestions for the new directory name?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330405</commentid>
    <comment_count>6</comment_count>
      <attachid>78158</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-06 14:02:22 -0800</bug_when>
    <thetext>Created attachment 78158
fix patch 2

patch that addresses Niwa&apos;s comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330455</commentid>
    <comment_count>7</comment_count>
      <attachid>78158</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-06 14:58:05 -0800</bug_when>
    <thetext>Comment on attachment 78158
fix patch 2

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

r- because I want you to file bugs and refer to those bug numbers in the test.  It&apos;ll be also nice if you could get rid of blanks lines at the end of each test result.

&gt; LayoutTests/editing/editability/attr-empty-string-expected.txt:12
&gt; +PASS document.defaultView.getComputedStyle(div, &quot;&quot;).getPropertyValue(&quot;-webkit-user-modify&quot;) is &quot;read-write&quot;

You should probably call window.getComputedStyle but if I&apos;m fine with it if you&apos;re doing this to be compatible with IE.

&gt; LayoutTests/editing/editability/attr-invalid-string-expected.txt:10
&gt; +FAIL document.getElementById(&quot;div&quot;).contentEditable should be inherit. Was false.

Need to file a bug and refer to that bug (talked on IRC).

&gt; LayoutTests/editing/editability/attr-invalid-string-expected.txt:20
&gt; +
&gt; +
&gt; +
&gt; +

I think you can get rid of these blank lines if you hid div.  The same goes for other tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330767</commentid>
    <comment_count>8</comment_count>
      <attachid>78239</attachid>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-07 07:34:08 -0800</bug_when>
    <thetext>Created attachment 78239
fix patch 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330933</commentid>
    <comment_count>9</comment_count>
      <attachid>78239</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-01-07 12:44:54 -0800</bug_when>
    <thetext>Comment on attachment 78239
fix patch 3

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

Thanks for the tests!  Few minor things but I&apos;d say r+.

&gt; LayoutTests/editing/editability/attr-missing-parent-ancestor-missing-expected.txt:1
&gt; +When contentEditable is missing, it maps to &quot;inherit&quot; state and the element is NOT editable if its parent/ancestor&apos;s contentEditable is also missing.

Nit: &quot;if contentEditable is never set on all ancestor&quot; might sound better.

&gt; LayoutTests/editing/editability/set-invalid-value-expected.txt:11
&gt; +PASS document.getElementById(&quot;div&quot;).getAttribute(&quot;contentEditable&quot;) is &quot;abc&quot;

Should getAttribute return &quot;abc&quot; here?  If the assignment failed, shouldn&apos;t it stay the same?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>330967</commentid>
    <comment_count>10</comment_count>
    <who name="Chang Shu">cshu</who>
    <bug_when>2011-01-07 13:26:07 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 78239 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=78239&amp;action=review
&gt; 
&gt; Thanks for the tests!  Few minor things but I&apos;d say r+.
&gt; 
&gt; &gt; LayoutTests/editing/editability/attr-missing-parent-ancestor-missing-expected.txt:1
&gt; &gt; +When contentEditable is missing, it maps to &quot;inherit&quot; state and the element is NOT editable if its parent/ancestor&apos;s contentEditable is also missing.
&gt; 
&gt; Nit: &quot;if contentEditable is never set on all ancestor&quot; might sound better.
&gt; 
&gt; &gt; LayoutTests/editing/editability/set-invalid-value-expected.txt:11
&gt; &gt; +PASS document.getElementById(&quot;div&quot;).getAttribute(&quot;contentEditable&quot;) is &quot;abc&quot;
&gt; 
&gt; Should getAttribute return &quot;abc&quot; here?  If the assignment failed, shouldn&apos;t it stay the same?

Thanks for the review and good question! I will address this when I am working on the particular bugs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331147</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-07 20:38:23 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; &gt; +PASS document.getElementById(&quot;div&quot;).getAttribute(&quot;contentEditable&quot;) is &quot;abc&quot;
&gt; 
&gt; Should getAttribute return &quot;abc&quot; here?  If the assignment failed, shouldn&apos;t it stay the same?

I can answer this question. It should stay the same, and we need another test to verify that the attribute can successfully be set to &quot;abc&quot; with setAttribute even though it can’t be set that way by setting the contentEditable JavaScript property.

Also, the name of the attribute is &quot;contenteditable&quot;, all lowercase, although the name of the JavaScript property is &quot;contentEditable&quot; with a capital E. In HTML documents attributes aren’t case sensitive, but in XHTML documents they are so it’s best to use the correct capitalization.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331292</commentid>
    <comment_count>12</comment_count>
      <attachid>78239</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-08 14:55:40 -0800</bug_when>
    <thetext>Comment on attachment 78239
fix patch 3

Clearing flags on attachment: 78239

Committed r75329: &lt;http://trac.webkit.org/changeset/75329&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>331293</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-08 14:55:48 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>339250</commentid>
    <comment_count>14</comment_count>
    <who name="Ademar Reis">ademar</who>
    <bug_when>2011-01-24 14:02:51 -0800</bug_when>
    <thetext>Revision r75329 cherry-picked into qtwebkit-2.2 with commit 13c4ed2 &lt;http://gitorious.org/webkit/qtwebkit/commit/13c4ed2&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78045</attachid>
            <date>2011-01-05 14:26:32 -0800</date>
            <delta_ts>2011-01-06 14:02:22 -0800</delta_ts>
            <desc>fix patch</desc>
            <filename>51957_1.patch</filename>
            <type>text/plain</type>
            <size>35920</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDc1MTA1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDEtMDUgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkZWQgdGVzdCBjb250ZW50cyBmb3IgY29udGVudEVkaXRhYmxlIERPTSBhdHRy
aWJ1dGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MTk1NworCisgICAgICAgICogZWRpdGluZy9jb250ZW50RWRpdGFibGU6IEFkZGVkLgorICAgICAg
ICAqIGVkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJFbXB0eVN0cmluZy1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJFbXB0eVN0cmlu
Zy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyRmFs
c2VTdHJpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2NvbnRlbnRF
ZGl0YWJsZS9hdHRyRmFsc2VTdHJpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9j
b250ZW50RWRpdGFibGUvYXR0ckludmFsaWRTdHJpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBlZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRySW52YWxpZFN0cmluZy5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ0FuY2Vz
dG9yRmFsc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2NvbnRlbnRF
ZGl0YWJsZS9hdHRyTWlzc2luZ0FuY2VzdG9yRmFsc2UuaHRtbDogQWRkZWQuCisgICAgICAgICog
ZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdBbmNlc3RvclRydWUtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2lu
Z0FuY2VzdG9yVHJ1ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2NvbnRlbnRFZGl0
YWJsZS9hdHRyTWlzc2luZ1BhcmVudEFuY2VzdG9yTWlzc2luZy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5nUGFyZW50QW5j
ZXN0b3JNaXNzaW5nLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRh
YmxlL2F0dHJNaXNzaW5nUGFyZW50RmFsc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBlZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudEZhbHNlLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5nUGFyZW50
VHJ1ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRh
YmxlL2F0dHJNaXNzaW5nUGFyZW50VHJ1ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5n
L2NvbnRlbnRFZGl0YWJsZS9hdHRyVHJ1ZVN0cmluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJUcnVlU3RyaW5nLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGVkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldEZhbHNlLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0RmFsc2UuaHRt
bDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0SW5oZXJpdFBh
cmVudEZhbHNlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250ZW50
RWRpdGFibGUvc2V0SW5oZXJpdFBhcmVudEZhbHNlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGVk
aXRpbmcvY29udGVudEVkaXRhYmxlL3NldEluaGVyaXRQYXJlbnRUcnVlLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0SW5oZXJpdFBhcmVu
dFRydWUuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0
SW52YWxpZFZhbHVlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250
ZW50RWRpdGFibGUvc2V0SW52YWxpZFZhbHVlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGVkaXRp
bmcvY29udGVudEVkaXRhYmxlL3NldFRydWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBlZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRUcnVlLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGVkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldFZhbHVlQ2FzZUluc2Vuc2l0aXZlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0VmFsdWVD
YXNlSW5zZW5zaXRpdmUuaHRtbDogQWRkZWQuCisKIDIwMTEtMDEtMDUgIFN0ZXBoZW4gV2hpdGUg
IDxzZW5vcmJsYW5jb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZDsgdGVzdCBl
eHBlY3RhdGlvbnMgdXBkYXRlLi4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVk
aXRhYmxlL2F0dHJFbXB0eVN0cmluZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ckVtcHR5U3RyaW5nLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0
dHJFbXB0eVN0cmluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTkgQEAK
K1doZW4gY29udGVudEVkaXRhYmxlIGtleXdvcmQgaXMgZW1wdHkgc3RyaW5nLCBlbGVtZW50LmNv
bnRlbnRFZGl0YWJsZSByZXR1cm5zICJ0cnVlIiBhbmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJEaXYxIikuY29udGVudEVkaXRhYmxlIGlzICJ0cnVlIgorUEFTUyBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BB
U1MgZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShEaXYxLCAiIikuZ2V0UHJv
cGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ckVtcHR5U3RyaW5nLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0
ckVtcHR5U3RyaW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2Nv
bnRlbnRFZGl0YWJsZS9hdHRyRW1wdHlTdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwyMiBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
Li4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+
Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iRGl2MSIgY29udGVudEVkaXRhYmxl
PSIiPjwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBr
ZXl3b3JkIGlzIGVtcHR5IHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAi
dHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlLicpCisKK3Nob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmlzQ29udGVudEVkaXRhYmxl
JywgJ3RydWUnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0
eWxlKERpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAn
InJlYWQtd3JpdGUiJyk7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRp
bmcvY29udGVudEVkaXRhYmxlL2F0dHJGYWxzZVN0cmluZy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ckZhbHNlU3RyaW5n
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVu
dEVkaXRhYmxlL2F0dHJGYWxzZVN0cmluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTkgQEAKK1doZW4gY29udGVudEVkaXRhYmxlIGtleXdvcmQgaXMgImZhbHNlIiBzdHJp
bmcsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMgImZhbHNlIiBhbmQgdGhlIGVsZW1l
bnQgaXMgTk9UIGVkaXRhYmxlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisK
KworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBp
cyAiZmFsc2UiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuaXNDb250ZW50
RWRpdGFibGUgaXMgZmFsc2UKK1BBU1MgZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRT
dHlsZShEaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlz
ICJyZWFkLW9ubHkiCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJs
ZS9hdHRyRmFsc2VTdHJpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5n
L2NvbnRlbnRFZGl0YWJsZS9hdHRyRmFsc2VTdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJGYWxzZVN0cmluZy5odG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIyIEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNz
cyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxk
aXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJE
aXYxIiBjb250ZW50RWRpdGFibGU9ImZhbHNlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlv
bignV2hlbiBjb250ZW50RWRpdGFibGUga2V5d29yZCBpcyAiZmFsc2UiIHN0cmluZywgZWxlbWVu
dC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAiZmFsc2UiIGFuZCB0aGUgZWxlbWVudCBpcyBOT1Qg
ZWRpdGFibGUuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIiku
Y29udGVudEVkaXRhYmxlJywgJyJmYWxzZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiRGl2MSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CitzaG91bGRCZSgn
ZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShEaXYxLCAiIikuZ2V0UHJvcGVy
dHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CisKK3dpbmRv
dy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJJ
bnZhbGlkU3RyaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0
aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRySW52YWxpZFN0cmluZy1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRySW52YWxp
ZFN0cmluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTcgQEAKK1doZW4g
Y29udGVudEVkaXRhYmxlIGtleXdvcmQgaXMgaW52YWxpZCBzdHJpbmcsIGVsZW1lbnQuY29udGVu
dEVkaXRhYmxlIHJldHVybnMgImluaGVyaXQiLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworCisKKworRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmNvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgorCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ckludmFsaWRTdHJpbmcuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRySW52YWxpZFN0
cmluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRp
dGFibGUvYXR0ckludmFsaWRTdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMCBA
QAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2
IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iRGl2MSIgY29udGVudEVkaXRhYmxlPSJhYmMi
PjwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBrZXl3
b3JkIGlzIGludmFsaWQgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJp
bmhlcml0Ii4nKQorCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEiKS5j
b250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJz
ZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5nQW5jZXN0b3JGYWxz
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50
RWRpdGFibGUvYXR0ck1pc3NpbmdBbmNlc3RvckZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5nQW5j
ZXN0b3JGYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjYgQEAKK1do
ZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRl
IGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUgaWYgaXRzIG5lYXJlc3QgYW5jZXN0b3Ig
aXMgTk9ULgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworICAKKworICAg
IAorCisgICAgICAKKworICAgIAorCisgIAorCisKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoIlAxIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCitQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZh
bHNlCitQQVNTIGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoUDEsICIiKS5n
ZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ0FuY2VzdG9yRmFs
c2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJs
ZS9hdHRyTWlzc2luZ0FuY2VzdG9yRmFsc2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5nQW5jZXN0b3JGYWxzZS5odG1s
CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI5IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4K
KzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlk
PSJEaXYxIiBjb250ZW50RWRpdGFibGU9ImZhbHNlIj4KKyAgPGRpdj4KKyAgICA8ZGl2PgorICAg
ICAgPHAgaWQ9IlAxIj48L3A+CisgICAgPC9kaXY+CisgIDwvZGl2PgorPC9kaXY+Cis8L2Rpdj4K
KzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywg
aXQgbWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIE5PVCBlZGl0YWJs
ZSBpZiBpdHMgbmVhcmVzdCBhbmNlc3RvciBpcyBOT1QuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5pc0NvbnRlbnRFZGl0YWJsZScs
ICdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5
bGUoUDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJl
YWQtb25seSInKTsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9j
b250ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdBbmNlc3RvclRydWUtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5n
QW5jZXN0b3JUcnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJNaXNzaW5nQW5jZXN0b3JUcnVlLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMg
bWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIGVk
aXRhYmxlIGlmIGl0cyBuZWFyZXN0IGFuY2VzdG9yIGlzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworCisKKworICAKKworICAgIAorCisgICAgICAKKworICAgIAorCisgIAorCisK
K0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAxIikuY29udGVudEVkaXRhYmxlIHNob3Vs
ZCBiZSBpbmhlcml0LiBXYXMgdHJ1ZS4KK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAx
IikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5kZWZhdWx0Vmlldy5n
ZXRDb21wdXRlZFN0eWxlKFAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1v
ZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRh
YmxlL2F0dHJNaXNzaW5nQW5jZXN0b3JUcnVlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdBbmNlc3RvclRydWUuaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJN
aXNzaW5nQW5jZXN0b3JUcnVlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjkgQEAKKzxo
dG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMv
cmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxw
IGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBpZD0i
cmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9IkRpdjEiIGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+Cisg
IDxkaXY+CisgICAgPGRpdj4KKyAgICAgIDxwIGlkPSJQMSI+PC9wPgorICAgIDwvZGl2PgorICA8
L2Rpdj4KKzwvZGl2PgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVu
dEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUg
ZWxlbWVudCBpcyBlZGl0YWJsZSBpZiBpdHMgbmVhcmVzdCBhbmNlc3RvciBpcy4nKQorCitzaG91
bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAxIikuY29udGVudEVkaXRhYmxlJywgJyJp
bmhlcml0IicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmlzQ29u
dGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0Vmlldy5n
ZXRDb21wdXRlZFN0eWxlKFAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1v
ZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudEFuY2VzdG9yTWlz
c2luZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250
ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdQYXJlbnRBbmNlc3Rvck1pc3NpbmctZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0
ck1pc3NpbmdQYXJlbnRBbmNlc3Rvck1pc3NpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDI2IEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBtaXNzaW5nLCBpdCBtYXBz
IHRvICJpbmhlcml0IiBzdGF0ZSBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlIGlmIGl0
cyBwYXJlbnQvYW5jZXN0b3IncyBjb250ZW50RWRpdGFibGUgaXMgYWxzbyBtaXNzaW5nLgorCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworICAKKworICAgIAorCisgICAgICAK
KworICAgIAorCisgIAorCisKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAxIikuY29u
dGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCitQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJQMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCitQQVNTIGRv
Y3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoUDEsICIiKS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudEFuY2VzdG9yTWlzc2luZy5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0
dHJNaXNzaW5nUGFyZW50QW5jZXN0b3JNaXNzaW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudEFuY2VzdG9y
TWlzc2luZy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI5IEBACis8aHRtbD4KKzxoZWFk
PgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9q
cy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3Jp
cHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9k
aXY+Cis8ZGl2IGlkPSJEaXYxIj4KKyAgPGRpdj4KKyAgICA8ZGl2PgorICAgICAgPHAgaWQ9IlAx
Ij48L3A+CisgICAgPC9kaXY+CisgIDwvZGl2PgorPC9kaXY+Cis8L2Rpdj4KKzxzY3JpcHQ+Citk
ZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAi
aW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIE5PVCBlZGl0YWJsZSBpZiBpdHMgcGFy
ZW50L2FuY2VzdG9yXCdzIGNvbnRlbnRFZGl0YWJsZSBpcyBhbHNvIG1pc3NpbmcuJykKKworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZScsICci
aW5oZXJpdCInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5pc0Nv
bnRlbnRFZGl0YWJsZScsICdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3
LmdldENvbXB1dGVkU3R5bGUoUDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXIt
bW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdQYXJlbnRGYWxzZS1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFi
bGUvYXR0ck1pc3NpbmdQYXJlbnRGYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudEZhbHNl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAorV2hlbiBjb250ZW50
RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBl
bGVtZW50IGlzIE5PVCBlZGl0YWJsZSBpZiBpdHMgcGFyZW50IGlzIE5PVC4KKworT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgorCisKKworCisKKworCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgor
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBm
YWxzZQorUEFTUyBkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAxLCAiIiku
Z2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCisK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKwor
CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1Bh
cmVudEZhbHNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50
RWRpdGFibGUvYXR0ck1pc3NpbmdQYXJlbnRGYWxzZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdQYXJlbnRGYWxzZS5o
dG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0
eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwv
cD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2
IGlkPSJEaXYxIiBjb250ZW50RWRpdGFibGU9ImZhbHNlIj4KKzxwIGlkPSJQMSI+PC9wPgorPC9k
aXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3Np
bmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRp
dGFibGUgaWYgaXRzIHBhcmVudCBpcyBOT1QuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKK3Nob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxz
ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoUDEs
ICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25s
eSInKTsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50
RWRpdGFibGUvYXR0ck1pc3NpbmdQYXJlbnRUcnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudFRy
dWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9jb250
ZW50RWRpdGFibGUvYXR0ck1pc3NpbmdQYXJlbnRUcnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSwyMSBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQg
bWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlIGlmIGl0
cyBwYXJlbnQgaXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCisKKwor
RkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxk
IGJlIGluaGVyaXQuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEi
KS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmRlZmF1bHRWaWV3Lmdl
dENvbXB1dGVkU3R5bGUoUDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9k
aWZ5IikgaXMgInJlYWQtd3JpdGUiCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRl
bnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudFRydWUuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9hdHRyTWlzc2luZ1BhcmVudFRydWUuaHRt
bAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0
dHJNaXNzaW5nUGFyZW50VHJ1ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACis8
aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8
cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9
InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJEaXYxIiBjb250ZW50RWRpdGFibGU9InRydWUiPgor
PHAgaWQ9IlAxIj48L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250
ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRo
ZSBlbGVtZW50IGlzIGVkaXRhYmxlIGlmIGl0cyBwYXJlbnQgaXMuJykKKworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCIn
KTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5pc0NvbnRlbnRFZGl0
YWJsZScsICd0cnVlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0
ZWRTdHlsZShQMSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScs
ICcicmVhZC13cml0ZSInKTsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRp
dGluZy9jb250ZW50RWRpdGFibGUvYXR0clRydWVTdHJpbmctZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL2F0dHJUcnVlU3RyaW5n
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVu
dEVkaXRhYmxlL2F0dHJUcnVlU3RyaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwxOSBAQAorV2hlbiBjb250ZW50RWRpdGFibGUga2V5d29yZCBpcyAidHJ1ZSIgc3RyaW5n
LCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJ0cnVlIiBhbmQgdGhlIGVsZW1lbnQg
aXMgZWRpdGFibGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuY29udGVudEVkaXRhYmxlIGlzICJ0cnVl
IgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmlzQ29udGVudEVkaXRhYmxl
IGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShEaXYx
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdy
aXRlIgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KworCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0clRy
dWVTdHJpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRF
ZGl0YWJsZS9hdHRyVHJ1ZVN0cmluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZWRpdGluZy9jb250ZW50RWRpdGFibGUvYXR0clRydWVTdHJpbmcuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwyMiBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlw
dCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25z
b2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iRGl2MSIgY29udGVu
dEVkaXRhYmxlPSJ0cnVlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250
ZW50RWRpdGFibGUga2V5d29yZCBpcyAidHJ1ZSIgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0
YWJsZSByZXR1cm5zICJ0cnVlIiBhbmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUuJykKKworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuY29udGVudEVkaXRhYmxlJywg
JyJ0cnVlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuaXND
b250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3
LmdldENvbXB1dGVkU3R5bGUoRGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNl
ZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0RmFsc2UtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldEZhbHNl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVu
dEVkaXRhYmxlL3NldEZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwy
NiBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0IHRvICJmYWxzZSIgc3RyaW5nIGZyb20g
InRydWUiIG9yIGluaGVyaXQsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMgImZhbHNl
IiBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworCisKKworCisgICAgCisKKworRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiRGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgorRkFJ
TCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmlzQ29udGVudEVkaXRhYmxlIHNob3Vs
ZCBiZSBmYWxzZS4gV2FzIHRydWUuCitQQVNTIGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1
dGVkU3R5bGUoRGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnki
KSBpcyAicmVhZC1vbmx5IgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDIiKS5jb250
ZW50RWRpdGFibGUgaXMgImZhbHNlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDIi
KS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBmYWxzZQorUEFTUyBkb2N1bWVudC5kZWZhdWx0Vmlldy5n
ZXRDb21wdXRlZFN0eWxlKFAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1v
ZGlmeSIpIGlzICJyZWFkLW9ubHkiCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRl
bnRFZGl0YWJsZS9zZXRGYWxzZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRp
bmcvY29udGVudEVkaXRhYmxlL3NldEZhbHNlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRGYWxzZS5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDMyIEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNv
bGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJEaXYxIiBjb250ZW50
ZWRpdGFibGU9InRydWUiPjwvZGl2PgorPGRpdiBpZD0iRGl2MiIgY29udGVudGVkaXRhYmxlPSJ0
cnVlIj4KKyAgICA8cCBpZD0iUDIiPjwvcD4KKzwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9u
KCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gImZhbHNlIiBzdHJpbmcgZnJvbSAidHJ1
ZSIgb3IgaW5oZXJpdCwgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAiZmFsc2UiIGFu
ZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUuJykKKworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoIkRpdjEiKS5jb250ZW50RWRpdGFibGUgPSAiZmFsc2UiOworZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoIlAyIikuY29udGVudEVkaXRhYmxlID0gImZhbHNlIjsKKworc2hvdWxkQmUoJ2RvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuY29udGVudEVkaXRhYmxlJywgJyJmYWxzZSInKTsK
K3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmlzQ29udGVudEVkaXRh
YmxlJywgJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0
ZWRTdHlsZShEaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIp
JywgJyJyZWFkLW9ubHkiJyk7CisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
UDIiKS5jb250ZW50RWRpdGFibGUnLCAnImZhbHNlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJQMiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CitzaG91bGRC
ZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShQMiwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5IicpOworCit3aW5k
b3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRJ
bmhlcml0UGFyZW50RmFsc2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldEluaGVyaXRQYXJlbnRGYWxzZS1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9z
ZXRJbmhlcml0UGFyZW50RmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDIyIEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gImluaGVyaXQiLCB0aGUgYXR0
cmlidXRlIG11c3QgYmUgcmVtb3ZlZCBhbmQgZWxlbWVudC5jb250ZW50RWRpdGFibGUgc2hvdWxk
IHJldHVybiAiaW5oZXJpdCIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKwor
CisgICAgCisKKworRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5jb250ZW50RWRp
dGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyB0cnVlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiUDEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVl
LgorUEFTUyBkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAxLCAiIikuZ2V0
UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCisKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKworCklu
ZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRJbmhlcml0UGFyZW50
RmFsc2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0
YWJsZS9zZXRJbmhlcml0UGFyZW50RmFsc2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldEluaGVyaXRQYXJlbnRGYWxzZS5odG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNz
cyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxk
aXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJE
aXYxIiBjb250ZW50ZWRpdGFibGU9ImZhbHNlIj4KKyAgICA8cCBpZD0iUDEiIGNvbnRlbnRlZGl0
YWJsZT0idHJ1ZSI+PC9wPgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29u
dGVudEVkaXRhYmxlIGlzIHNldCB0byAiaW5oZXJpdCIsIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSBy
ZW1vdmVkIGFuZCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgcmV0dXJuICJpbmhlcml0
Ii4nKQorCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5jb250ZW50RWRpdGFibGUgPSAi
aW5oZXJpdCI7CisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5jb250
ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoIlAxIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1
bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAxLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CisKK3dpbmRvdy5zdWNj
ZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldEluaGVyaXRQ
YXJlbnRUcnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5n
L2NvbnRlbnRFZGl0YWJsZS9zZXRJbmhlcml0UGFyZW50VHJ1ZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRJbmhlcml0
UGFyZW50VHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjIgQEAKK1do
ZW4gY29udGVudEVkaXRhYmxlIGlzIHNldCB0byAiaW5oZXJpdCIsIHRoZSBhdHRyaWJ1dGUgbXVz
dCBiZSByZW1vdmVkIGFuZCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgcmV0dXJuICJp
bmhlcml0Ii4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworCisKKyAgICAKKwor
CitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91
bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
UDEiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBk
b2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAxLCAiIikuZ2V0UHJvcGVydHlW
YWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5
b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0SW5oZXJpdFBhcmVudFRydWUuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRJ
bmhlcml0UGFyZW50VHJ1ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGlu
Zy9jb250ZW50RWRpdGFibGUvc2V0SW5oZXJpdFBhcmVudFRydWUuaHRtbAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSwyNiBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIg
aHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlw
dCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25z
b2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iRGl2MSIgY29udGVu
dGVkaXRhYmxlPSJ0cnVlIj4KKyAgICA8cCBpZD0iUDEiIGNvbnRlbnRlZGl0YWJsZT0iZmFsc2Ui
PjwvcD4KKzwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJs
ZSBpcyBzZXQgdG8gImluaGVyaXQiLCB0aGUgYXR0cmlidXRlIG11c3QgYmUgcmVtb3ZlZCBhbmQg
ZWxlbWVudC5jb250ZW50RWRpdGFibGUgc2hvdWxkIHJldHVybiAiaW5oZXJpdCIuJykKKworZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAxIikuY29udGVudEVkaXRhYmxlID0gImluaGVyaXQiOwor
CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAxIikuY29udGVudEVkaXRhYmxl
JywgJyJpbmhlcml0IicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIp
LmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0
Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11
c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFy
c2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRJbnZhbGlkVmFsdWUtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxl
L3NldEludmFsaWRWYWx1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRJbnZhbGlkVmFsdWUtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQg
dG8gaW52YWxpZCBzdHJpbmcsIFNZTlRBWF9FUlIgZXhjZXB0aW9uIChjb2RlOiAxMikgbXVzdCBi
ZSByYWlzZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitGQUlMIGV4
Y2VwdGlvblRocm93biBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiRGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitG
QUlMIGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoRGl2MSwgIiIpLmdldFBy
b3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4g
V2FzIHJlYWQtb25seS4KKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRh
YmxlL3NldEludmFsaWRWYWx1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRp
bmcvY29udGVudEVkaXRhYmxlL3NldEludmFsaWRWYWx1ZS5odG1sCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0SW52YWxpZFZhbHVlLmh0bWwJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUu
Y3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9
IkRpdjEiIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSI+PC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRp
b24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIHNldCB0byBpbnZhbGlkIHN0cmluZywgU1lOVEFY
X0VSUiBleGNlcHRpb24gKGNvZGU6IDEyKSBtdXN0IGJlIHJhaXNlZC4nKQorCitleGNlcHRpb25U
aHJvd24gPSBmYWxzZTsKKwordHJ5IHsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2
MSIpLmNvbnRlbnRFZGl0YWJsZSA9ICJhYmMiOworfSBjYXRjaCAoZSkgeworICAgIGlmIChlLmNv
ZGUgPT0gMTIpCisgICAgICAgIGV4Y2VwdGlvblRocm93biA9IHRydWU7Cit9CisKK3Nob3VsZEJl
KCdleGNlcHRpb25UaHJvd24nLCAndHJ1ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJEaXYxIikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScp
Oworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoRGl2MSwg
IiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0
ZSInKTsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50
RWRpdGFibGUvc2V0VHJ1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0VHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRUcnVlLWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorV2hlbiBjb250ZW50RWRpdGFibGUg
aXMgc2V0IHRvICJ0cnVlIiBzdHJpbmcgZnJvbSAiZmFsc2UiIG9yIGluaGVyaXQsIGVsZW1lbnQu
Y29udGVudEVkaXRhYmxlIHJldHVybnMgInRydWUiIGFuZCB0aGUgZWxlbWVudCBpcyBlZGl0YWJs
ZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworCisKKworICAgIAorCisKK0ZB
SUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxk
IGJlIHRydWUuIFdhcyBmYWxzZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEi
KS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1
bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKERpdjEsICIiKS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCitQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJQMiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAyIikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQorUEFT
UyBkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAyLCAiIikuZ2V0UHJvcGVy
dHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDog
TGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0VHJ1ZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldFRydWUuaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVkaXRhYmxlL3NldFRy
dWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzMiBAQAorPGh0bWw+Cis8aGVhZD4KKzxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVz
dC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9u
Ij48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2Pgor
PGRpdiBpZD0iRGl2MSIgY29udGVudGVkaXRhYmxlPSJmYWxzZSI+PC9kaXY+Cis8ZGl2IGlkPSJE
aXYyIiBjb250ZW50ZWRpdGFibGU9ImZhbHNlIj4KKyAgICA8cCBpZD0iUDIiPjwvcD4KKzwvZGl2
PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8g
InRydWUiIHN0cmluZyBmcm9tICJmYWxzZSIgb3IgaW5oZXJpdCwgZWxlbWVudC5jb250ZW50RWRp
dGFibGUgcmV0dXJucyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlLicpCisKK2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJEaXYxIikuY29udGVudEVkaXRhYmxlID0gInRydWUiOwor
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAyIikuY29udGVudEVkaXRhYmxlID0gInRydWUiOwor
CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEiKS5jb250ZW50RWRpdGFi
bGUnLCAnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEi
KS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVs
dFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShEaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtp
dC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoIlAyIikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOworc2hvdWxk
QmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3Ry
dWUnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAy
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdy
aXRlIicpOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRl
bnRFZGl0YWJsZS9zZXRWYWx1ZUNhc2VJbnNlbnNpdGl2ZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9jb250ZW50RWRpdGFibGUvc2V0VmFsdWVDYXNlSW5z
ZW5zaXRpdmUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGlu
Zy9jb250ZW50RWRpdGFibGUvc2V0VmFsdWVDYXNlSW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDMwIEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQg
dG8gYSBuZXcgdmFsdWUsIHRoZSBuZXcgdmFsdWUgY2FuIGJlIGNhc2UtaW5zZW5zaXRpdmUuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCisKKworICAgIAorCisKK0ZBSUwg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJl
IHRydWUuIFdhcyBmYWxzZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkRpdjEiKS5p
c0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVu
dC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKERpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZSBpcyAiZmFsc2UiCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCitQQVNT
IGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoUDEsICIiKS5nZXRQcm9wZXJ0
eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKK0ZBSUwgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoIlAyIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSBpbmhlcml0
LiBXYXMgZmFsc2UuCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMiIpLmlzQ29udGVu
dEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitGQUlMIGRvY3VtZW50LmRlZmF1
bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoUDIsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0
LXVzZXItbW9kaWZ5Iikgc2hvdWxkIGJlIHJlYWQtd3JpdGUuIFdhcyByZWFkLW9ubHkuCisKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKworCklu
ZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRWYWx1ZUNhc2VJbnNl
bnNpdGl2ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvY29udGVudEVk
aXRhYmxlL3NldFZhbHVlQ2FzZUluc2Vuc2l0aXZlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9lZGl0aW5nL2NvbnRlbnRFZGl0YWJsZS9zZXRWYWx1ZUNhc2VJbnNlbnNpdGl2ZS5o
dG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsg
cmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0
eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwv
cD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2
IGlkPSJEaXYxIiBjb250ZW50ZWRpdGFibGU9ImZhbHNlIj48L2Rpdj4KKzxwIGlkPSJQMSIgY29u
dGVudGVkaXRhYmxlPSJ0cnVlIj48L3A+Cis8ZGl2IGlkPSJEaXYyIiBjb250ZW50ZWRpdGFibGU9
InRydWUiPgorICAgIDxwIGlkPSJQMiIgY29udGVudGVkaXRhYmxlPSJmYWxzZSI+PC9wPgorPC9k
aXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIHNldCB0
byBhIG5ldyB2YWx1ZSwgdGhlIG5ldyB2YWx1ZSBjYW4gYmUgY2FzZS1pbnNlbnNpdGl2ZS4nKQor
Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmNvbnRlbnRFZGl0YWJsZSA9ICJUUnVl
IjsKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmNvbnRlbnRFZGl0YWJsZSA9ICJmYUxT
RSI7Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDIiKS5jb250ZW50RWRpdGFibGUgPSAiaW5I
RVJJVCI7CisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRGl2MSIpLmNvbnRl
bnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiRGl2MSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJlKCdkb2N1bWVu
dC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKERpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CisKK3Nob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiUDEiKS5jb250ZW50RWRpdGFibGUnLCAnImZhbHNlIicp
Oworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJQMSIpLmlzQ29udGVudEVkaXRh
YmxlJywgJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0
ZWRTdHlsZShQMSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScs
ICcicmVhZC1vbmx5IicpOworCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIlAy
IikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOworc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJQMiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJl
KCdkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKFAyLCAiIikuZ2V0UHJvcGVy
dHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCit3aW5k
b3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="69293"
          type_id="1"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78158</attachid>
            <date>2011-01-06 14:02:22 -0800</date>
            <delta_ts>2011-01-07 07:34:08 -0800</delta_ts>
            <desc>fix patch 2</desc>
            <filename>51957_2.patch</filename>
            <type>text/plain</type>
            <size>39836</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDc1MTk2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDEtMDYgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkZWQgdGVzdCBjb250ZW50cyBmb3IgY29udGVudEVkaXRhYmxlIERPTSBhdHRy
aWJ1dGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MTk1NworCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eTogQWRkZWQuCisgICAgICAgICog
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWVtcHR5LXN0cmluZy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJpbmcuaHRtbDog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWZhbHNlLXN0cmluZy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1m
YWxzZS1zdHJpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Npbmct
YW5jZXN0b3ItZmFsc2UuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbDog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50
LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5n
L2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlzc2luZy5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQt
ZmFsc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1
ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1z
dHJpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItdHJ1ZS1zdHJpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC1mYWxzZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50
LXRydWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbmhlcml0LXBhcmVudC10cnVlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC10cnVlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZh
bHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sOiBBZGRlZC4KKwogMjAxMC0xMi0yOSAgWmhlbnlhbyBN
byAgPHptb0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUnVzc2Vs
bC4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJp
bmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1lbXB0eS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWVtcHR5LXN0cmluZy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjAgQEAKK1doZW4gY29udGVudEVkaXRhYmxlIGF0
dHJpYnV0ZSBpcyBlbXB0eSBzdHJpbmcsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMg
InRydWUiIGFuZCB0aGUgZWxlbWVudCBpcyBlZGl0YWJsZS4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKKworCisKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdl
dEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgIiIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1MgZG9j
dW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZh
bHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCisKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKworCkluZGV4OiBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZW1wdHktc3RyaW5nLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWVtcHR5LXN0cmlu
Zy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLWVtcHR5LXN0cmluZy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACis8aHRt
bD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBp
ZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJl
c3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRFZGl0YWJsZT0iIj48L2Rpdj4KKzxz
Y3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIGlzIGVt
cHR5IHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAidHJ1ZSIgYW5kIHRo
ZSBlbGVtZW50IGlzIGVkaXRhYmxlLicpCisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyIiJyk7CitzaG91
bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICci
dHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250
ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3Lmdl
dENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1v
ZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZmFsc2Utc3RyaW5nLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZmFsc2Ut
c3RyaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1mYWxzZS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDIwIEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgaXMgImZhbHNl
IiBzdHJpbmcsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMgImZhbHNlIiBhbmQgdGhl
IGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworCisKKworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKSBpcyAiZmFsc2UiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgImZhbHNlIgorUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKK1BBU1MgZG9jdW1l
bnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKKworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1mYWxzZS1zdHJpbmcuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZmFsc2Utc3RyaW5nLmh0
bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
ZmFsc2Utc3RyaW5nLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0
Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSJmYWxzZSI+PC9kaXY+Cis8
c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBpcyAi
ZmFsc2UiIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAiZmFsc2UiIGFu
ZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZh
bHNlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50
RWRpdGFibGUnLCAnImZhbHNlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50
LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgi
LXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CisKK2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CisKK3dpbmRvdy5zdWNjZXNz
ZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
SW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlkLXN0cmlu
Zy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1pbnZhbGlkLXN0cmluZy1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjAgQEAKK1doZW4gY29udGVudEVkaXRhYmxl
IGF0dHJpYnV0ZSBpcyBpbnZhbGlkIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0
dXJucyAiaW5oZXJpdCIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQ
QVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRF
ZGl0YWJsZSIpIGlzICJhYmMiCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5j
b250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK1BBU1MgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCitQQVNT
IGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVy
dHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCisKK1BBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKworCkluZGV4OiBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmcuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxp
ZC1zdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1pbnZhbGlkLXN0cmluZy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1
IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9m
YXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxk
aXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRFZGl0YWJsZT0iYWJj
Ij48L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgYXR0
cmlidXRlIGlzIGludmFsaWQgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5z
ICJpbmhlcml0Ii4nKQorCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIp
LmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciYWJjIicpOworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQi
Jyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVk
aXRhYmxlJywgJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29t
cHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5
IiknLCAnInJlYWQtb25seSInKTsKKworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0
eWxlLmRpc3BsYXk9ICdub25lJzsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1t
aXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMCBAQAorV2hlbiBjb250ZW50RWRp
dGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVt
ZW50IGlzIE5PVCBlZGl0YWJsZSBpZiBpdHMgbmVhcmVzdCBhbmNlc3RvciBpcyBOT1QuCisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQQVNTIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQorRkFJ
TCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUg
aW5oZXJpdC4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlz
Q29udGVudEVkaXRhYmxlIGlzIGZhbHNlCitQQVNTIGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENv
bXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnki
KSBpcyAicmVhZC1vbmx5IgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS5odG1s
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1p
c3NpbmctYW5jZXN0b3ItZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzMSBAQAor
PGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9q
cy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5Pgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlk
PSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFibGU9ImZhbHNlIj4K
KyAgPGRpdj4KKyAgICA8ZGl2PgorICAgICAgPHAgaWQ9InAiPjwvcD4KKyAgICA8L2Rpdj4KKyAg
PC9kaXY+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFi
bGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50
IGlzIE5PVCBlZGl0YWJsZSBpZiBpdHMgbmVhcmVzdCBhbmNlc3RvciBpcyBOT1QuJykKKworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKScsICdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwIikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOworc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3Nob3Vs
ZEJlKCdkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKworZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKword2lu
ZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1p
c3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0
dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwxNiBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAi
aW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlIGlmIGl0cyBuZWFyZXN0
IGFuY2VzdG9yIGlzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworUEFT
UyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRh
YmxlIikgaXMgZmFsc2UKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50
RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1MgZG9jdW1lbnQu
ZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10
cnVlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MzIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgor
PGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSJ0
cnVlIj4KKyAgPGRpdj4KKyAgICA8ZGl2PgorICAgICAgPHAgaWQ9InAiPjwvcD4KKyAgICA8L2Rp
dj4KKyAgPC9kaXY+Cis8L2Rpdj4KKzwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVu
IGNvbnRlbnRFZGl0YWJsZSBpcyBtaXNzaW5nLCBpdCBtYXBzIHRvICJpbmhlcml0IiBzdGF0ZSBh
bmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUgaWYgaXRzIG5lYXJlc3QgYW5jZXN0b3IgaXMuJykK
Kworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJj
b250ZW50RWRpdGFibGUiKScsJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitzaG91bGRCZSgnZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7Citz
aG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0
UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwor
Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOwor
Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0
dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlzc2luZy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50
LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3Np
bmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACitXaGVuIGNvbnRl
bnRFZGl0YWJsZSBpcyBtaXNzaW5nLCBpdCBtYXBzIHRvICJpbmhlcml0IiBzdGF0ZSBhbmQgdGhl
IGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlIGlmIGl0cyBwYXJlbnQvYW5jZXN0b3IncyBjb250ZW50
RWRpdGFibGUgaXMgYWxzbyBtaXNzaW5nLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworCisKKworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgi
Y29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK1BBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBmYWxzZQor
UEFTUyBkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKKworUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNl
c3Rvci1taXNzaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmcuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBh
cmVudC1hbmNlc3Rvci1taXNzaW5nLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzEgQEAK
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBp
ZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiI+CisgIDxkaXY+CisgICAgPGRpdj4KKyAg
ICAgIDxwIGlkPSJwIj48L3A+CisgICAgPC9kaXY+CisgIDwvZGl2PgorPC9kaXY+Cis8c2NyaXB0
PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMg
dG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUgaWYgaXRz
IHBhcmVudC9hbmNlc3RvclwncyBjb250ZW50RWRpdGFibGUgaXMgYWxzbyBtaXNzaW5nLicpCisK
K3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29u
dGVudEVkaXRhYmxlIiknLCdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJwIikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOworc2hvdWxkQmUoJ2RvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQ
cm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKwor
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKwor
d2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRy
LW1pc3NpbmctcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwyMCBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAi
aW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIE5PVCBlZGl0YWJsZSBpZiBpdHMgcGFy
ZW50IGlzIE5PVC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworCisKK1BBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJs
ZSIpIGlzIGZhbHNlCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVk
aXRhYmxlIHNob3VsZCBiZSBpbmhlcml0LiBXYXMgZmFsc2UuCitQQVNTIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKK1BBU1MgZG9jdW1lbnQu
ZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdl
YmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLW9ubHkiCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9l
ZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJl
bnQtZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDI3IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwv
cD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRFZGl0YWJs
ZT0iZmFsc2UiPgorICAgIDxwIGlkPSJwIj48L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlw
dGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJp
dCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIE5PVCBlZGl0YWJsZSBpZiBpdHMgcGFyZW50IGlz
IE5PVC4nKQorCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKK3Nob3Vs
ZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2Zh
bHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShw
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9u
bHkiJyk7CisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5zdHlsZS5kaXNwbGF5PSAn
bm9uZSc7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjAgQEAKK1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1h
cHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBlZGl0YWJsZSBpZiBpdHMg
cGFyZW50IGlzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworUEFTUyBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxl
IikgaXMgZmFsc2UKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRp
dGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuZGVm
YXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtp
dC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRp
dGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQt
dHJ1ZS5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwy
NyBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8
ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFibGU9InRy
dWUiPgorICAgIDxwIGlkPSJwIj48L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbign
V2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAiaW5oZXJpdCIgc3Rh
dGUgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlIGlmIGl0cyBwYXJlbnQgaXMuJykKKworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKScsJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitzaG91bGRC
ZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVy
dHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworCit3aW5k
b3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1
ZS1zdHJpbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci10cnVlLXN0cmluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJpbmctZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACitXaGVuIGNvbnRlbnRFZGl0YWJs
ZSBhdHRyaWJ1dGUgaXMgInRydWUiIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0
dXJucyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlLgorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworCisKKworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2
IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUK
K1BBU1MgZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQ
cm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCisKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKworCklu
ZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJpbmcuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1
ZS1zdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvYXR0ci10cnVlLXN0cmluZy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBA
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYg
aWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+
PC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGF0dHJp
YnV0ZSBpcyAidHJ1ZSIgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJ0
cnVlIiBhbmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywn
InRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRl
bnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50
LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgi
LXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworCit3aW5kb3cuc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+
CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQt
ZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDI0IEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gImZhbHNlIiBzdHJpbmcgZnJv
bSAidHJ1ZSIgb3IgaW5oZXJpdCwgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAiZmFs
c2UiIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCisKKworCisKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEi
KS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJmYWxzZSIKK0ZBSUwgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGZhbHNl
LiBXYXMgdHJ1ZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRl
bnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVudC5kZWZh
dWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Vi
a2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlIGlzICJmYWxzZSIKK1BBU1MgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKK1BBU1MgZG9jdW1l
bnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgorCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxzZS5odG1sCShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtZmFsc2UuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzNiBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVz
aGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgor
PHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlk
PSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2MSIg
Y29udGVudGVkaXRhYmxlPSJ0cnVlIj48L2Rpdj4KKzxkaXYgaWQ9ImRpdjIiIGNvbnRlbnRlZGl0
YWJsZT0idHJ1ZSI+CisgICAgPHAgaWQ9InAyIj48L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0IHRvICJmYWxzZSIgc3RyaW5nIGZy
b20gInRydWUiIG9yIGluaGVyaXQsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMgImZh
bHNlIiBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlLicpCisKK2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlID0gImZhbHNlIjsKK2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZSA9ICJmYWxzZSI7CisKK3Nob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVk
aXRhYmxlIiknLCciZmFsc2UiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdjEiKS5jb250ZW50RWRpdGFibGUnLCAnImZhbHNlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5n
ZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsK
Kworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJs
ZScsICciZmFsc2UiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIiku
aXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5kZWZhdWx0
Vmlldy5nZXRDb21wdXRlZFN0eWxlKHAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11
c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYxIikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdjIiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJz
ZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjAgQEAKK1doZW4gY29udGVudEVk
aXRhYmxlIGlzIHNldCB0byAiaW5oZXJpdCIsIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVk
IGFuZCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgcmV0dXJuICJpbmhlcml0Ii4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworCisKK1BBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzIGZhbHNlCitG
QUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBi
ZSBpbmhlcml0LiBXYXMgdHJ1ZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5p
c0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdhcyB0cnVlLgorUEFTUyBkb2N1bWVu
dC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCIt
d2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKKworUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJl
bnQtZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAg
KzEsMjkgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9w
PgorPGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVudGVkaXRhYmxl
PSJmYWxzZSI+CisgICAgPHAgaWQ9InAiIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSI+PC9wPgorPC9k
aXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIHNldCB0
byAiaW5oZXJpdCIsIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkIGFuZCBlbGVtZW50LmNv
bnRlbnRFZGl0YWJsZSBzaG91bGQgcmV0dXJuICJpbmhlcml0Ii4nKQorCitkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSA9ICJpbmhlcml0IjsKKworc2hvdWxkQmUo
J2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFi
bGUiKScsJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5j
b250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOworc2hvdWxkQmUoJ2Rv
Y3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFs
dWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1vbmx5IicpOworCitkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworCit3aW5kb3cuc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBh
cmVudC10cnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5n
L2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFy
ZW50LXRydWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACitXaGVu
IGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gImluaGVyaXQiLCB0aGUgYXR0cmlidXRlIG11c3Qg
YmUgcmVtb3ZlZCBhbmQgZWxlbWVudC5jb250ZW50RWRpdGFibGUgc2hvdWxkIHJldHVybiAiaW5o
ZXJpdCIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBp
cyBmYWxzZQorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJs
ZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitQ
QVNTIGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIKKworUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1p
bmhlcml0LXBhcmVudC10cnVlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVlLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjkgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQi
IGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29u
c29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVu
dGVkaXRhYmxlPSJ0cnVlIj4KKyAgICA8cCBpZD0icCIgY29udGVudGVkaXRhYmxlPSJmYWxzZSI+
PC9wPgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxl
IGlzIHNldCB0byAiaW5oZXJpdCIsIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkIGFuZCBl
bGVtZW50LmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgcmV0dXJuICJpbmhlcml0Ii4nKQorCitkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSA9ICJpbmhlcml0IjsKKwor
c2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250
ZW50RWRpdGFibGUiKScsJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitzaG91bGRCZSgnZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitzaG91
bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJv
cGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworCit3
aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1p
bnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACitXaGVuIGNvbnRlbnRF
ZGl0YWJsZSBpcyBzZXQgdG8gaW52YWxpZCBzdHJpbmcsIFNZTlRBWF9FUlIgZXhjZXB0aW9uIChj
b2RlOiAxMikgbXVzdCBiZSByYWlzZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CisKKworCitGQUlMIGV4Y2VwdGlvblRocm93biBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgor
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKSBpcyAiYWJjIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iiku
Y29udGVudEVkaXRhYmxlIGlzICJ0cnVlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2IikuaXNDb250ZW50RWRpdGFibGUgaXMgdHJ1ZQorRkFJTCBkb2N1bWVudC5kZWZhdWx0Vmll
dy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQtb25seS4KKworUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlk
LXZhbHVlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmls
aXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzUgQEAK
KzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBp
ZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj48
L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0
IHRvIGludmFsaWQgc3RyaW5nLCBTWU5UQVhfRVJSIGV4Y2VwdGlvbiAoY29kZTogMTIpIG11c3Qg
YmUgcmFpc2VkLicpCisKK2V4Y2VwdGlvblRocm93biA9IGZhbHNlOworCit0cnkgeworICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgPSAiYWJjIjsKK30g
Y2F0Y2ggKGUpIHsKKyAgICBpZiAoZS5jb2RlID09IDEyKQorICAgICAgICBleGNlcHRpb25UaHJv
d24gPSB0cnVlOworfQorCitzaG91bGRCZSgnZXhjZXB0aW9uVGhyb3duJywgJ3RydWUnKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250
ZW50RWRpdGFibGUiKScsJyJhYmMiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hv
dWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0
UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOwor
Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOwor
Cit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3Nl
dC10cnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDI1IEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gInRydWUi
IHN0cmluZyBmcm9tICJmYWxzZSIgb3IgaW5oZXJpdCwgZWxlbWVudC5jb250ZW50RWRpdGFibGUg
cmV0dXJucyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlLgorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKKworCisKKworCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAidHJ1ZSIKK0ZBSUwg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJl
IHRydWUuIFdhcyBmYWxzZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5p
c0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorUEFTUyBkb2N1bWVu
dC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCitQQVNTIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMiIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRy
dWUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZSBp
cyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRp
dGFibGUgaXMgdHJ1ZQorUEFTUyBkb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxl
KHAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFk
LXdyaXRlIgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKworCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdHJ1
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0
LXRydWUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvc2V0LXRydWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNyBAQAorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQi
PjwvZGl2PgorPGRpdiBpZD0iZGl2MSIgY29udGVudGVkaXRhYmxlPSJmYWxzZSI+PC9kaXY+Cis8
ZGl2IGlkPSJkaXYyIiBjb250ZW50ZWRpdGFibGU9ImZhbHNlIj4KKyAgICA8cCBpZD0icDIiPjwv
cD4KKzwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBp
cyBzZXQgdG8gInRydWUiIHN0cmluZyBmcm9tICJmYWxzZSIgb3IgaW5oZXJpdCwgZWxlbWVudC5j
b250ZW50RWRpdGFibGUgcmV0dXJucyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxl
LicpCisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlID0g
InRydWUiOworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlID0g
InRydWUiOworCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRB
dHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7Citz
aG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJs
ZScsICd0cnVlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRT
dHlsZShkaXYxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywg
JyJyZWFkLXdyaXRlIicpOworCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAy
IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJ0cnVlIicpOworc2hvdWxkQmUo
J2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSIn
KTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5pc0NvbnRlbnRFZGl0
YWJsZScsICd0cnVlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0
ZWRTdHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScs
ICcicmVhZC13cml0ZSInKTsKKworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5zdHls
ZS5kaXNwbGF5PSAnbm9uZSc7Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpLnN0eWxl
LmRpc3BsYXk9ICdub25lJzsKKword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRp
dGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1j
YXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzMCBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMg
c2V0IHRvIGEgbmV3IHZhbHVlLCB0aGUgbmV3IHZhbHVlIGNhbiBiZSBjYXNlLWluc2Vuc2l0aXZl
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworCisKK1BBU1MgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIp
IGlzICJUUnVlIgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZGl2MSIpLmlzQ29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFs
c2UuCitQQVNTIGRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIp
LmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIK
K1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50
RWRpdGFibGUiKSBpcyAiZmFMU0UiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIp
LmNvbnRlbnRFZGl0YWJsZSBpcyAiZmFsc2UiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJwMSIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCitQQVNTIGRvY3VtZW50LmRlZmF1bHRW
aWV3LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVz
ZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
InAyIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBzaG91bGQgYmUgZmFsc2UuIFdh
cyB0cnVlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250ZW50RWRpdGFi
bGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4K
K0ZBSUwgZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFBy
b3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4g
V2FzIHJlYWQtb25seS4KKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkv
c2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2Fz
ZWluc2Vuc2l0aXZlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDUgQEAKKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0
Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdjEiIGNvbnRlbnRlZGl0YWJsZT0iZmFsc2UiPjwvZGl2Pgor
PHAgaWQ9InAxIiBjb250ZW50ZWRpdGFibGU9InRydWUiPjwvcD4KKzxkaXYgaWQ9ImRpdjIiIGNv
bnRlbnRlZGl0YWJsZT0idHJ1ZSI+CisgICAgPHAgaWQ9InAyIiBjb250ZW50ZWRpdGFibGU9ImZh
bHNlIj48L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRp
dGFibGUgaXMgc2V0IHRvIGEgbmV3IHZhbHVlLCB0aGUgbmV3IHZhbHVlIGNhbiBiZSBjYXNlLWlu
c2Vuc2l0aXZlLicpCisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVk
aXRhYmxlID0gIlRSdWUiOworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVk
aXRhYmxlID0gImZhTFNFIjsKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRF
ZGl0YWJsZSA9ICJpbkhFUklUIjsKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYxIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJyJUUnVlIicpOworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlJywg
JyJ0cnVlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuaXND
b250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1bHRWaWV3
LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNl
ci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCciZmFMU0Ui
Jyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAxIikuY29udGVudEVkaXRh
YmxlJywgJyJmYWxzZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDEi
KS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmRlZmF1
bHRWaWV3LmdldENvbXB1dGVkU3R5bGUocDEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0
LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKworc2hvdWxkQmUoJ2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwMiIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCdmYWxz
ZScpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0
YWJsZScsICciaW5oZXJpdCInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
cDIiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZGVm
YXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJr
aXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKworZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdjEiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7Citkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicDEiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7Citkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZGl2MiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKword2luZG93LnN1Y2Nlc3NmdWxseVBh
cnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="69431"
          type_id="1"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78239</attachid>
            <date>2011-01-07 07:34:08 -0800</date>
            <delta_ts>2011-01-08 14:55:40 -0800</delta_ts>
            <desc>fix patch 3</desc>
            <filename>51957_3.patch</filename>
            <type>text/plain</type>
            <size>42222</size>
            <attacher name="Chang Shu">cshu</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDc1MjQyKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDEtMDcgIENoYW5nIFNodSAgPGNoYW5n
LnNodUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkZWQgdGVzdCBjb250ZW50cyBmb3IgY29udGVudEVkaXRhYmxlIERPTSBhdHRy
aWJ1dGUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MTk1NworCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eTogQWRkZWQuCisgICAgICAgICog
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWVtcHR5LXN0cmluZy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJpbmcuaHRtbDog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWZhbHNlLXN0cmluZy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1m
YWxzZS1zdHJpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLWludmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Npbmct
YW5jZXN0b3ItZmFsc2UuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbDog
QWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50
LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5n
L2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtYW5jZXN0b3ItbWlzc2luZy5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQt
ZmFsc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGlu
Zy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1
ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1z
dHJpbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItdHJ1ZS1zdHJpbmcuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtZmFsc2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC1mYWxzZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LWZhbHNlLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50
LXRydWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5
L3NldC1pbmhlcml0LXBhcmVudC10cnVlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcv
ZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZhbHVlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBlZGl0aW5nL2VkaXRhYmlsaXR5L3NldC10cnVlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZhbHVlLWNhc2VpbnNlbnNpdGl2ZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGVkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXZh
bHVlLWNhc2VpbnNlbnNpdGl2ZS5odG1sOiBBZGRlZC4KKwogMjAxMS0wMS0wNyAgQWxlamFuZHJv
IEcuIENhc3RybyAgPGFsZXhAaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBNYXJ0
aW4gUm9iaW5zb24uCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
ZW1wdHktc3RyaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L2F0dHItZW1wdHktc3RyaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJpbmct
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACitXaGVuIGNvbnRlbnRF
ZGl0YWJsZSBhdHRyaWJ1dGUgaXMgZW1wdHkgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0YWJs
ZSByZXR1cm5zICJ0cnVlIiBhbmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUuCisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICIiCitQQVNTIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50RWRpdGFibGUgaXMgInRydWUiCitQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVl
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIKKworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1lbXB0eS1zdHJpbmcuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZW1wdHktc3RyaW5nLmh0
bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHIt
ZW1wdHktc3RyaW5nLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUgQEAKKzxodG1sPgor
PGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0
Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29udGVudEVkaXRhYmxlPSIiPjwvZGl2PgorPHNjcmlw
dD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgaXMgZW1wdHkg
c3RyaW5nLCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJ0cnVlIiBhbmQgdGhlIGVs
ZW1lbnQgaXMgZWRpdGFibGUuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJkaXYiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnIiInKTsKK3Nob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVl
IicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5pc0NvbnRlbnRF
ZGl0YWJsZScsICd0cnVlJyk7CitzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdy
aXRlIicpOworCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0g
J25vbmUnOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItZmFsc2Utc3RyaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZmFsc2Utc3RyaW5nLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1m
YWxzZS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIwIEBACitX
aGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgaXMgImZhbHNlIiBzdHJpbmcsIGVsZW1lbnQu
Y29udGVudEVkaXRhYmxlIHJldHVybnMgImZhbHNlIiBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVk
aXRhYmxlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworUEFTUyBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KSBpcyAiZmFsc2UiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5jb250ZW50
RWRpdGFibGUgaXMgImZhbHNlIgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iiku
aXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUo
ZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFk
LW9ubHkiCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItZmFs
c2Utc3RyaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9hdHRyLWZhbHNlLXN0cmluZy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWZhbHNlLXN0cmluZy5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDI1IEBACis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBo
cmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNv
bGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYiIGNvbnRlbnRF
ZGl0YWJsZT0iZmFsc2UiPjwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRl
bnRFZGl0YWJsZSBhdHRyaWJ1dGUgaXMgImZhbHNlIiBzdHJpbmcsIGVsZW1lbnQuY29udGVudEVk
aXRhYmxlIHJldHVybnMgImZhbHNlIiBhbmQgdGhlIGVsZW1lbnQgaXMgTk9UIGVkaXRhYmxlLicp
CisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKScsJyJmYWxzZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlJywgJyJmYWxzZSInKTsKK3Nob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAnZmFs
c2UnKTsKK3Nob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKworZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKword2lu
ZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWlu
dmFsaWQtc3RyaW5nLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L2F0dHItaW52YWxpZC1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3Ry
aW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAorV2hlbiBjb250
ZW50RWRpdGFibGUgYXR0cmlidXRlIGlzIGludmFsaWQgc3RyaW5nLCBlbGVtZW50LmNvbnRlbnRF
ZGl0YWJsZSByZXR1cm5zICJpbmhlcml0Ii4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKKworCisKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0
ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImFiYyIKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgor
RklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgZmFpbHMgdG8gdGFrZSBpbnZhbGlkIHZh
bHVlLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTA2MzYKK1BBU1Mg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNl
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5VmFsdWUo
Ii13ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgorCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVz
dHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5nLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLWludmFsaWQtc3RyaW5n
Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0
dHItaW52YWxpZC1zdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNiBAQAorPGh0
bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJy
ZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFibGU9ImFiYyI+PC9kaXY+
Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBp
cyBpbnZhbGlkIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAiaW5oZXJp
dCIuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImFiYyInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2IikuY29udGVudEVkaXRhYmxlJywgJyJpbmhlcml0IicpOworZGVi
dWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIGZhaWxzIHRvIHRha2UgaW52YWxp
ZCB2YWx1ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNjM2Iik7
CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRh
YmxlJywgJ2ZhbHNlJyk7CitzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2LCAi
IikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHki
Jyk7CisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5zdHlsZS5kaXNwbGF5PSAnbm9u
ZSc7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1m
YWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci1mYWxzZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKK1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3Npbmcs
IGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFi
bGUgaWYgaXRzIG5lYXJlc3QgYW5jZXN0b3IgaXMgTk9ULgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworCisKKworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0
dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxz
ZS4KK0ZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlm
IG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1Ngor
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZh
bHNlCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVl
KCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKKworUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRl
c3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Np
bmctYW5jZXN0b3ItZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRp
bmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLWZhbHNlLmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMzIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0i
Y29uc29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdiIgY29u
dGVudEVkaXRhYmxlPSJmYWxzZSI+CisgIDxkaXY+CisgICAgPGRpdj4KKyAgICAgIDxwIGlkPSJw
Ij48L3A+CisgICAgPC9kaXY+CisgIDwvZGl2PgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRp
b24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQi
IHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUgaWYgaXRzIG5lYXJlc3QgYW5j
ZXN0b3IgaXMgTk9ULicpCisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIp
Lmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCAnZmFsc2UnKTsKK3Nob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCIn
KTsKK2RlYnVnKCJGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5o
ZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTIwNTYiKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVu
dEVkaXRhYmxlJywgJ2ZhbHNlJyk7CitzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUo
cCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC1v
bmx5IicpOworCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0g
J25vbmUnOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rvci10cnVlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1hbmNlc3Rv
ci10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDE3IEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBtaXNzaW5n
LCBpdCBtYXBzIHRvICJpbmhlcml0IiBzdGF0ZSBhbmQgdGhlIGVsZW1lbnQgaXMgZWRpdGFibGUg
aWYgaXRzIG5lYXJlc3QgYW5jZXN0b3IgaXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCisKKworCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIHRydWUuCitGSVhN
RTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5n
LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNT
IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0
LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtd3JpdGUiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0
YWJpbGl0eS9hdHRyLW1pc3NpbmctYW5jZXN0b3ItdHJ1ZS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLWFuY2VzdG9yLXRydWUu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0
ci1taXNzaW5nLWFuY2VzdG9yLXRydWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzMyBA
QAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2
IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFibGU9InRydWUi
PgorICA8ZGl2PgorICAgIDxkaXY+CisgICAgICA8cCBpZD0icCI+PC9wPgorICAgIDwvZGl2Pgor
ICA8L2Rpdj4KKzwvZGl2PgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29u
dGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0
aGUgZWxlbWVudCBpcyBlZGl0YWJsZSBpZiBpdHMgbmVhcmVzdCBhbmNlc3RvciBpcy4nKQorCitz
aG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRl
bnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKK2RlYnVnKCJGSVhNRTogY29u
dGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYiKTsKK3Nob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsK
K3Nob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworCit3aW5kb3cuc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1w
YXJlbnQtYW5jZXN0b3ItbWlzc2luZy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1p
c3NpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFuY2VzdG9yLW1pc3NpbmctZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBp
cyBtaXNzaW5nLCBpdCBtYXBzIHRvICJpbmhlcml0IiBzdGF0ZSBhbmQgdGhlIGVsZW1lbnQgaXMg
Tk9UIGVkaXRhYmxlIGlmIGl0cyBwYXJlbnQvYW5jZXN0b3IncyBjb250ZW50RWRpdGFibGUgaXMg
YWxzbyBtaXNzaW5nLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworUEFT
UyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRh
YmxlIikgaXMgZmFsc2UKK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50
RWRpdGFibGUgc2hvdWxkIGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK0ZJWE1FOiBjb250ZW50RWRp
dGFibGUgYXR0cmlidXRlIHNob3VsZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1NgorUEFTUyBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlIGlzIGZhbHNlCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5
IikgaXMgInJlYWQtb25seSIKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxp
dHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWFu
Y2VzdG9yLW1pc3NpbmcuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1hbmNlc3Rvci1taXNzaW5nLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsMzIgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0
eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRp
diBpZD0iY29uc29sZSI+PC9wPgorPGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRp
diI+CisgIDxkaXY+CisgICAgPGRpdj4KKyAgICAgIDxwIGlkPSJwIj48L3A+CisgICAgPC9kaXY+
CisgIDwvZGl2PgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29udGVudEVk
aXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxl
bWVudCBpcyBOT1QgZWRpdGFibGUgaWYgaXRzIHBhcmVudC9hbmNlc3RvclwncyBjb250ZW50RWRp
dGFibGUgaXMgYWxzbyBtaXNzaW5nLicpCisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIiknLCdmYWxzZScpOworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlJywgJyJp
bmhlcml0IicpOworZGVidWcoIkZJWE1FOiBjb250ZW50RWRpdGFibGUgYXR0cmlidXRlIHNob3Vs
ZCBiZSBpbmhlcml0IGlmIG1pc3NpbmcuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01MjA1NiIpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIiku
aXNDb250ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3Nob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywg
JyJyZWFkLW9ubHkiJyk7CisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYiKS5zdHlsZS5k
aXNwbGF5PSAnbm9uZSc7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2VkaXRp
bmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3Npbmct
cGFyZW50LWZhbHNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjEgQEAKK1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1p
c3NpbmcsIGl0IG1hcHMgdG8gImluaGVyaXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1Qg
ZWRpdGFibGUgaWYgaXRzIHBhcmVudCBpcyBOT1QuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCisKKworCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmli
dXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgor
RklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYgbWlz
c2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2CitQQVNT
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UK
K1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13
ZWJraXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgorCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFyZW50LWZhbHNlLmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLW1pc3NpbmctcGFy
ZW50LWZhbHNlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwyOCBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9
Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFi
bGU9ImZhbHNlIj4KKyAgICA8cCBpZD0icCI+PC9wPgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3Jp
cHRpb24oJ1doZW4gY29udGVudEVkaXRhYmxlIGlzIG1pc3NpbmcsIGl0IG1hcHMgdG8gImluaGVy
aXQiIHN0YXRlIGFuZCB0aGUgZWxlbWVudCBpcyBOT1QgZWRpdGFibGUgaWYgaXRzIHBhcmVudCBp
cyBOT1QuJykKKworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0
cmlidXRlKCJjb250ZW50RWRpdGFibGUiKScsJ2ZhbHNlJyk7CitzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitkZWJ1
ZygiRklYTUU6IGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgc2hvdWxkIGJlIGluaGVyaXQgaWYg
bWlzc2luZy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU2Iik7
CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5pc0NvbnRlbnRFZGl0YWJs
ZScsICdmYWxzZScpOworc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5n
ZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsK
KworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsK
Kword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9h
dHRyLW1pc3NpbmctcGFyZW50LXRydWUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkv
YXR0ci1taXNzaW5nLXBhcmVudC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwyMSBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgbWlzc2luZywgaXQgbWFwcyB0byAi
aW5oZXJpdCIgc3RhdGUgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlIGlmIGl0cyBwYXJlbnQg
aXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2Fn
ZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisKKworCitQQVNTIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBm
YWxzZQorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBz
aG91bGQgYmUgaW5oZXJpdC4gV2FzIHRydWUuCitGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJp
YnV0ZSBzaG91bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTYKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAi
KS5pc0NvbnRlbnRFZGl0YWJsZSBpcyB0cnVlCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IikgaXMgInJlYWQt
d3JpdGUiCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlz
c2luZy1wYXJlbnQtdHJ1ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcv
ZWRpdGFiaWxpdHkvYXR0ci1taXNzaW5nLXBhcmVudC10cnVlLmh0bWwJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L2F0dHItbWlzc2luZy1wYXJlbnQtdHJ1
ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI4IEBACis8aHRtbD4KKzxoZWFkPgorPGxp
bmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0
LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24i
PjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvcD4KKzxkaXYgaWQ9InJlc3VsdCI+PC9kaXY+Cis8
ZGl2IGlkPSJkaXYiIGNvbnRlbnRFZGl0YWJsZT0idHJ1ZSI+CisgICAgPHAgaWQ9InAiPjwvcD4K
KzwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBt
aXNzaW5nLCBpdCBtYXBzIHRvICJpbmhlcml0IiBzdGF0ZSBhbmQgdGhlIGVsZW1lbnQgaXMgZWRp
dGFibGUgaWYgaXRzIHBhcmVudCBpcy4nKQorCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICci
aW5oZXJpdCInKTsKK2RlYnVnKCJGSVhNRTogY29udGVudEVkaXRhYmxlIGF0dHJpYnV0ZSBzaG91
bGQgYmUgaW5oZXJpdCBpZiBtaXNzaW5nLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTIwNTYiKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIp
LmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpJywg
JyJyZWFkLXdyaXRlIicpOworCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2Iikuc3R5bGUu
ZGlzcGxheT0gJ25vbmUnOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJpbmctZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvYXR0ci10cnVlLXN0cmluZy1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5
L2F0dHItdHJ1ZS1zdHJpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIw
IEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBhdHRyaWJ1dGUgaXMgInRydWUiIHN0cmluZywgZWxl
bWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJucyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVk
aXRhYmxlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworUEFTUyBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUi
KSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRF
ZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmlz
Q29udGVudEVkaXRhYmxlIGlzIHRydWUKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2
LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdy
aXRlIgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KworCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9hdHRyLXRydWUt
c3RyaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9hdHRyLXRydWUtc3RyaW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L2F0dHItdHJ1ZS1zdHJpbmcuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwyNSBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9
Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50RWRpdGFi
bGU9InRydWUiPjwvZGl2PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0
YWJsZSBhdHRyaWJ1dGUgaXMgInRydWUiIHN0cmluZywgZWxlbWVudC5jb250ZW50RWRpdGFibGUg
cmV0dXJucyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlLicpCisKK3Nob3VsZEJl
KCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRp
dGFibGUiKScsJyJ0cnVlIicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK3Nob3VsZEJl
KCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Vi
a2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3JpdGUiJyk7CisKK2RvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJkaXYiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CisKK3dpbmRvdy5zdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5k
ZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWZhbHNlLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1mYWxz
ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRh
YmlsaXR5L3NldC1mYWxzZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjUg
QEAKK1doZW4gY29udGVudEVkaXRhYmxlIGlzIHNldCB0byAiZmFsc2UiIHN0cmluZyBmcm9tICJ0
cnVlIiBvciBpbmhlcml0LCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJmYWxzZSIg
YW5kIHRoZSBlbGVtZW50IGlzIE5PVCBlZGl0YWJsZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgorCisKKworCisKKworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmdl
dEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImZhbHNlIgorRkFJTCBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgZmFsc2UuIFdh
cyB0cnVlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29udGVudEVk
aXRhYmxlIHNob3VsZCBiZSBmYWxzZS4gV2FzIHRydWUuCitGSVhNRTogc2V0Q29udGVudEVkaXRh
YmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBub3Qgd29ya2luZyBwcm9wZXJs
eS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDU4CitQQVNTIHdp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0
LXVzZXItbW9kaWZ5IikgaXMgInJlYWQtb25seSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAyIikuY29udGVudEVkaXRhYmxlIGlzICJmYWxzZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUgaXMgZmFsc2UKK1BBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUocDIsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9k
aWZ5IikgaXMgInJlYWQtb25seSIKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKKworCisKSW5kZXg6IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFi
aWxpdHkvc2V0LWZhbHNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Vk
aXRpbmcvZWRpdGFiaWxpdHkvc2V0LWZhbHNlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MzcgQEAKKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9wPgor
PGRpdiBpZD0icmVzdWx0Ij48L2Rpdj4KKzxkaXYgaWQ9ImRpdjEiIGNvbnRlbnRlZGl0YWJsZT0i
dHJ1ZSI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYyIiBjb250ZW50ZWRpdGFibGU9InRydWUiPgorICAg
IDxwIGlkPSJwMiI+PC9wPgorPC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1doZW4gY29u
dGVudEVkaXRhYmxlIGlzIHNldCB0byAiZmFsc2UiIHN0cmluZyBmcm9tICJ0cnVlIiBvciBpbmhl
cml0LCBlbGVtZW50LmNvbnRlbnRFZGl0YWJsZSByZXR1cm5zICJmYWxzZSIgYW5kIHRoZSBlbGVt
ZW50IGlzIE5PVCBlZGl0YWJsZS4nKQorCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIp
LmNvbnRlbnRFZGl0YWJsZSA9ICJmYWxzZSI7Citkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIi
KS5jb250ZW50RWRpdGFibGUgPSAiZmFsc2UiOworCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnImZhbHNl
IicpOworc2hvdWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVk
aXRhYmxlJywgJyJmYWxzZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
ZGl2MSIpLmlzQ29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CitkZWJ1ZygiRklYTUU6IHNldENv
bnRlbnRFZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtp
bmcgcHJvcGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1
OCIpOworc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9w
ZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRFZGl0YWJsZScsICci
ZmFsc2UiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuaXNDb250
ZW50RWRpdGFibGUnLCAnZmFsc2UnKTsKK3Nob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShwMiwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVh
ZC1vbmx5IicpOworCitkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLnN0eWxlLmRpc3Bs
YXk9ICdub25lJzsKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYyIikuc3R5bGUuZGlzcGxh
eT0gJ25vbmUnOworCit3aW5kb3cuc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL2Vk
aXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQt
ZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9l
ZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDIxIEBACitXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gImlu
aGVyaXQiLCB0aGUgYXR0cmlidXRlIG11c3QgYmUgcmVtb3ZlZCBhbmQgZWxlbWVudC5jb250ZW50
RWRpdGFibGUgc2hvdWxkIHJldHVybiAiaW5oZXJpdCIuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCisKKworCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaGFzQXR0
cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyBmYWxzZQorRkFJTCBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIHRydWUu
CitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuaXNDb250ZW50RWRpdGFibGUgc2hv
dWxkIGJlIGZhbHNlLiBXYXMgdHJ1ZS4KK0ZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCB0
cnVlL2ZhbHNlL2luaGVyaXQgc3RyaW5nIGlzIG5vdCB3b3JraW5nIHByb3Blcmx5LiBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgKK1BBU1Mgd2luZG93LmdldENv
bXB1dGVkU3R5bGUocCwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnki
KSBpcyAicmVhZC1vbmx5IgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9zZXQtaW5oZXJpdC1wYXJlbnQtZmFsc2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC1mYWxzZS5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1w
YXJlbnQtZmFsc2UuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzMCBAQAorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQi
PjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50ZWRpdGFibGU9ImZhbHNlIj4KKyAgICA8cCBp
ZD0icCIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj48L3A+Cis8L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0IHRvICJpbmhlcml0IiwgdGhlIGF0
dHJpYnV0ZSBtdXN0IGJlIHJlbW92ZWQgYW5kIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHNob3Vs
ZCByZXR1cm4gImluaGVyaXQiLicpCisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwIikuY29u
dGVudEVkaXRhYmxlID0gImluaGVyaXQiOworCitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnZmFsc2UnKTsKK3No
b3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmNvbnRlbnRFZGl0YWJsZScsICci
aW5oZXJpdCInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIpLmlzQ29u
dGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7CitkZWJ1ZygiRklYTUU6IHNldENvbnRlbnRFZGl0YWJs
ZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdvcmtpbmcgcHJvcGVybHku
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OCIpOworc2hvdWxk
QmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Vi
a2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtb25seSInKTsKKworZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKword2luZG93LnN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtdHJ1
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJp
bGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtdHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbmhlcml0LXBhcmVudC10cnVl
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMSBAQAorV2hlbiBjb250ZW50
RWRpdGFibGUgaXMgc2V0IHRvICJpbmhlcml0IiwgdGhlIGF0dHJpYnV0ZSBtdXN0IGJlIHJlbW92
ZWQgYW5kIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHNob3VsZCByZXR1cm4gImluaGVyaXQiLgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCisKKworUEFTUyBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmhhc0F0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgZmFsc2UK
K0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5jb250ZW50RWRpdGFibGUgc2hvdWxk
IGJlIGluaGVyaXQuIFdhcyBmYWxzZS4KK0ZBSUwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAi
KS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZhbHNlLgorRklYTUU6IHNl
dENvbnRlbnRFZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcgaXMgbm90IHdv
cmtpbmcgcHJvcGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
MjA1OAorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwLCAiIikuZ2V0UHJvcGVydHlWYWx1
ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0
VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW5oZXJpdC1wYXJlbnQtdHJ1ZS5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWluaGVyaXQt
cGFyZW50LXRydWUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRp
dGFiaWxpdHkvc2V0LWluaGVyaXQtcGFyZW50LXRydWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwzMCBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9
Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48
L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50ZWRpdGFi
bGU9InRydWUiPgorICAgIDxwIGlkPSJwIiBjb250ZW50ZWRpdGFibGU9ImZhbHNlIj48L3A+Cis8
L2Rpdj4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0
IHRvICJpbmhlcml0IiwgdGhlIGF0dHJpYnV0ZSBtdXN0IGJlIHJlbW92ZWQgYW5kIGVsZW1lbnQu
Y29udGVudEVkaXRhYmxlIHNob3VsZCByZXR1cm4gImluaGVyaXQiLicpCisKK2RvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwIikuY29udGVudEVkaXRhYmxlID0gImluaGVyaXQiOworCitzaG91bGRC
ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0
YWJsZSIpJywnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicCIp
LmNvbnRlbnRFZGl0YWJsZScsICciaW5oZXJpdCInKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicCIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3RydWUnKTsKK2RlYnVnKCJGSVhN
RTogc2V0Q29udGVudEVkaXRhYmxlIHdpdGggdHJ1ZS9mYWxzZS9pbmhlcml0IHN0cmluZyBpcyBu
b3Qgd29ya2luZyBwcm9wZXJseS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTUyMDU4Iik7CitzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUocCwgIiIpLmdl
dFByb3BlcnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsK
KworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsK
Kword2luZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9z
ZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC1pbnZhbGlkLXZh
bHVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMiBAQAorV2hlbiBjb250
ZW50RWRpdGFibGUgaXMgc2V0IHRvIGludmFsaWQgc3RyaW5nLCBTWU5UQVhfRVJSIGV4Y2VwdGlv
biAoY29kZTogMTIpIG11c3QgYmUgcmFpc2VkLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworCisKKworRkFJTCBleGNlcHRpb25UaHJvd24gc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxz
ZS4KK0ZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQg
dGhyb3cgZXhjZXB0aW9uLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTIwNTcKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLmdldEF0dHJpYnV0ZSgi
Y29udGVudEVkaXRhYmxlIikgaXMgImFiYyIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImRpdiIpLmNvbnRlbnRFZGl0YWJsZSBpcyAidHJ1ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImRpdiIpLmlzQ29udGVudEVkaXRhYmxlIGlzIHRydWUKK0ZBSUwgd2luZG93LmdldENv
bXB1dGVkU3R5bGUoZGl2LCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlm
eSIpIHNob3VsZCBiZSByZWFkLXdyaXRlLiBXYXMgcmVhZC1vbmx5LgorCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5b3V0
VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtaW52YWxpZC12YWx1ZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LWludmFsaWQtdmFsdWUu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0
LWludmFsaWQtdmFsdWUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNiBAQAorPGh0bWw+
Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9
ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1
bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2IiBjb250ZW50ZWRpdGFibGU9InRydWUiPjwvZGl2Pgor
PHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gaW52
YWxpZCBzdHJpbmcsIFNZTlRBWF9FUlIgZXhjZXB0aW9uIChjb2RlOiAxMikgbXVzdCBiZSByYWlz
ZWQuJykKKworZXhjZXB0aW9uVGhyb3duID0gZmFsc2U7CisKK3RyeSB7CisgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZSA9ICJhYmMiOworfSBjYXRjaCAo
ZSkgeworICAgIGlmIChlLmNvZGUgPT0gMTIpCisgICAgICAgIGV4Y2VwdGlvblRocm93biA9IHRy
dWU7Cit9CisKK3Nob3VsZEJlKCdleGNlcHRpb25UaHJvd24nLCAndHJ1ZScpOworZGVidWcoIkZJ
WE1FOiBzZXRDb250ZW50RWRpdGFibGUgd2l0aCBpbnZhbGlkIHN0cmluZyBzaG91bGQgdGhyb3cg
ZXhjZXB0aW9uLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTci
KTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuZ2V0QXR0cmlidXRl
KCJjb250ZW50RWRpdGFibGUiKScsJyJhYmMiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdiIpLmNvbnRlbnRFZGl0YWJsZScsICcidHJ1ZSInKTsKK3Nob3VsZEJlKCdk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2IikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScp
Oworc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdiwgIiIpLmdldFByb3BlcnR5
VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKworZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKword2luZG93
LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdHJ1ZS1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0
eS9zZXQtdHJ1ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9lZGl0
aW5nL2VkaXRhYmlsaXR5L3NldC10cnVlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwyNiBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0IHRvICJ0cnVlIiBzdHJpbmcg
ZnJvbSAiZmFsc2UiIG9yIGluaGVyaXQsIGVsZW1lbnQuY29udGVudEVkaXRhYmxlIHJldHVybnMg
InRydWUiIGFuZCB0aGUgZWxlbWVudCBpcyBlZGl0YWJsZS4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKKworCisKKworUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIp
LmdldEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgInRydWUiCitGQUlMIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBX
YXMgZmFsc2UuCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXYxIikuaXNDb250ZW50
RWRpdGFibGUgc2hvdWxkIGJlIHRydWUuIFdhcyBmYWxzZS4KK0ZJWE1FOiBzZXRDb250ZW50RWRp
dGFibGUgd2l0aCB0cnVlL2ZhbHNlL2luaGVyaXQgc3RyaW5nIGlzIG5vdCB3b3JraW5nIHByb3Bl
cmx5LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwNTgKK1BBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJr
aXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC13cml0ZSIKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAyIikuZ2V0QXR0cmlidXRlKCJjb250ZW50RWRpdGFibGUiKSBpcyAidHJ1ZSIKK1BB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlIGlzICJ0cnVl
IgorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5pc0NvbnRlbnRFZGl0YWJsZSBp
cyB0cnVlCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAyLCAiIikuZ2V0UHJvcGVydHlW
YWx1ZSgiLXdlYmtpdC11c2VyLW1vZGlmeSIpIGlzICJyZWFkLXdyaXRlIgorCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRleDogTGF5
b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdHJ1ZS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUuaHRtbAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvZWRpdGFiaWxpdHkvc2V0LXRydWUuaHRtbAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3Mi
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2
IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2
MSIgY29udGVudGVkaXRhYmxlPSJmYWxzZSI+PC9kaXY+Cis8ZGl2IGlkPSJkaXYyIiBjb250ZW50
ZWRpdGFibGU9ImZhbHNlIj4KKyAgICA8cCBpZD0icDIiPjwvcD4KKzwvZGl2PgorPHNjcmlwdD4K
K2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gInRydWUiIHN0cmlu
ZyBmcm9tICJmYWxzZSIgb3IgaW5oZXJpdCwgZWxlbWVudC5jb250ZW50RWRpdGFibGUgcmV0dXJu
cyAidHJ1ZSIgYW5kIHRoZSBlbGVtZW50IGlzIGVkaXRhYmxlLicpCisKK2RvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJkaXYxIikuY29udGVudEVkaXRhYmxlID0gInRydWUiOworZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlID0gInRydWUiOworCitzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0
YWJsZSIpJywnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRp
djEiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVlJyk7CitkZWJ1Zygi
RklYTUU6IHNldENvbnRlbnRFZGl0YWJsZSB3aXRoIHRydWUvZmFsc2UvaW5oZXJpdCBzdHJpbmcg
aXMgbm90IHdvcmtpbmcgcHJvcGVybHkuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01MjA1OCIpOworc2hvdWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRpdjEs
ICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5IiknLCAnInJlYWQtd3Jp
dGUiJyk7CisKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5nZXRBdHRy
aWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpJywnInRydWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlJywgJyJ0cnVlIicpOworc2hvdWxk
QmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmlzQ29udGVudEVkaXRhYmxlJywgJ3Ry
dWUnKTsKK3Nob3VsZEJlKCd3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKworZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7Citkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MiIpLnN0eWxlLmRpc3BsYXk9ICdub25lJzsKKword2lu
ZG93LnN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5
PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFs
dWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQt
dmFsdWUtY2FzZWluc2Vuc2l0aXZlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwzMSBAQAorV2hlbiBjb250ZW50RWRpdGFibGUgaXMgc2V0IHRvIGEgbmV3IHZhbHVlLCB0aGUg
bmV3IHZhbHVlIGNhbiBiZSBjYXNlLWluc2Vuc2l0aXZlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworCisKKworCisKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEi
KS5nZXRBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIGlzICJUUnVlIgorRkFJTCBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmNvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4g
V2FzIGZhbHNlLgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGl2MSIpLmlzQ29udGVu
dEVkaXRhYmxlIHNob3VsZCBiZSB0cnVlLiBXYXMgZmFsc2UuCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGRpdjEsICIiKS5nZXRQcm9wZXJ0eVZhbHVlKCItd2Via2l0LXVzZXItbW9kaWZ5
IikgaXMgInJlYWQtd3JpdGUiCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdl
dEF0dHJpYnV0ZSgiY29udGVudEVkaXRhYmxlIikgaXMgImZhTFNFIgorUEFTUyBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRpdGFibGUgaXMgImZhbHNlIgorUEFTUyBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5pc0NvbnRlbnRFZGl0YWJsZSBpcyBmYWxzZQorUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMSwgIiIpLmdldFByb3BlcnR5VmFsdWUoIi13ZWJr
aXQtdXNlci1tb2RpZnkiKSBpcyAicmVhZC1vbmx5IgorRkFJTCBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgicDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIpIHNob3VsZCBiZSBmYWxz
ZS4gV2FzIHRydWUuCitGQUlMIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMiIpLmNvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgaW5oZXJpdC4gV2FzIGZhbHNlLgorRkFJTCBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgicDIiKS5pc0NvbnRlbnRFZGl0YWJsZSBzaG91bGQgYmUgdHJ1ZS4gV2FzIGZh
bHNlLgorRkFJTCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShwMiwgIiIpLmdldFByb3BlcnR5VmFs
dWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKSBzaG91bGQgYmUgcmVhZC13cml0ZS4gV2FzIHJlYWQt
b25seS4KK0ZJWE1FOiBzZXRDb250ZW50RWRpdGFibGUgc2hvdWxkIGJlIGNhc2UgaW5zZW5zaXRp
dmUuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA1OQorCitQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCisKKwpJbmRl
eDogTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9zZXQtdmFsdWUtY2FzZWluc2Vuc2l0
aXZlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9lZGl0YWJpbGl0eS9z
ZXQtdmFsdWUtY2FzZWluc2Vuc2l0aXZlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9lZGl0aW5nL2VkaXRhYmlsaXR5L3NldC12YWx1ZS1jYXNlaW5zZW5zaXRpdmUuaHRtbAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSw0NyBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3Mi
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2
IGlkPSJjb25zb2xlIj48L3A+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPGRpdiBpZD0iZGl2
MSIgY29udGVudGVkaXRhYmxlPSJmYWxzZSI+PC9kaXY+Cis8cCBpZD0icDEiIGNvbnRlbnRlZGl0
YWJsZT0idHJ1ZSI+PC9wPgorPGRpdiBpZD0iZGl2MiIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj4K
KyAgICA8cCBpZD0icDIiIGNvbnRlbnRlZGl0YWJsZT0iZmFsc2UiPjwvcD4KKzwvZGl2PgorPHNj
cmlwdD4KK2Rlc2NyaXB0aW9uKCdXaGVuIGNvbnRlbnRFZGl0YWJsZSBpcyBzZXQgdG8gYSBuZXcg
dmFsdWUsIHRoZSBuZXcgdmFsdWUgY2FuIGJlIGNhc2UtaW5zZW5zaXRpdmUuJykKKworZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUgPSAiVFJ1ZSI7Citkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicDEiKS5jb250ZW50RWRpdGFibGUgPSAiZmFMU0UiOworZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAyIikuY29udGVudEVkaXRhYmxlID0gImluSEVSSVQiOwor
CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5nZXRBdHRyaWJ1dGUo
ImNvbnRlbnRFZGl0YWJsZSIpJywnIlRSdWUiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImRpdjEiKS5jb250ZW50RWRpdGFibGUnLCAnInRydWUiJyk7CitzaG91bGRCZSgn
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICd0cnVl
Jyk7CitzaG91bGRCZSgnd2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2MSwgIiIpLmdldFByb3Bl
cnR5VmFsdWUoIi13ZWJraXQtdXNlci1tb2RpZnkiKScsICcicmVhZC13cml0ZSInKTsKKworc2hv
dWxkQmUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwMSIpLmdldEF0dHJpYnV0ZSgiY29udGVu
dEVkaXRhYmxlIiknLCciZmFMU0UiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInAxIikuY29udGVudEVkaXRhYmxlJywgJyJmYWxzZSInKTsKK3Nob3VsZEJlKCdkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicDEiKS5pc0NvbnRlbnRFZGl0YWJsZScsICdmYWxzZScpOworc2hv
dWxkQmUoJ3dpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHAxLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgi
LXdlYmtpdC11c2VyLW1vZGlmeSIpJywgJyJyZWFkLW9ubHkiJyk7CisKK3Nob3VsZEJlKCdkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRFZGl0YWJsZSIp
JywnZmFsc2UnKTsKK3Nob3VsZEJlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicDIiKS5jb250
ZW50RWRpdGFibGUnLCAnImluaGVyaXQiJyk7CitzaG91bGRCZSgnZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInAyIikuaXNDb250ZW50RWRpdGFibGUnLCAndHJ1ZScpOworc2hvdWxkQmUoJ3dpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKHAyLCAiIikuZ2V0UHJvcGVydHlWYWx1ZSgiLXdlYmtpdC11c2Vy
LW1vZGlmeSIpJywgJyJyZWFkLXdyaXRlIicpOworCitkZWJ1ZygiRklYTUU6IHNldENvbnRlbnRF
ZGl0YWJsZSBzaG91bGQgYmUgY2FzZSBpbnNlbnNpdGl2ZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTUyMDU5Iik7CisKK2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJk
aXYxIikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInAx
Iikuc3R5bGUuZGlzcGxheT0gJ25vbmUnOworZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpdjIi
KS5zdHlsZS5kaXNwbGF5PSAnbm9uZSc7CisKK3dpbmRvdy5zdWNjZXNzZnVsbHlQYXJzZWQgPSB0
cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>