<?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>54412</bug_id>
          
          <creation_ts>2011-02-14 14:13:47 -0800</creation_ts>
          <short_desc>flex/bison tokens and grammar for CSS calc</short_desc>
          <delta_ts>2011-04-10 19:32:12 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>57588</dependson>
          <blocked>16662</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike Lawther">mikelawther</reporter>
          <assigned_to name="Mike Lawther">mikelawther</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hamaji</cc>
    
    <cc>nicolas.paton</cc>
    
    <cc>noel.gordon</cc>
    
    <cc>peter</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>350877</commentid>
    <comment_count>0</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-02-14 14:13:47 -0800</bug_when>
    <thetext>flex/bison tokens and grammar for CSS calc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>350880</commentid>
    <comment_count>1</comment_count>
      <attachid>82362</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-02-14 14:19:34 -0800</bug_when>
    <thetext>Created attachment 82362
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>350881</commentid>
    <comment_count>2</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-02-14 14:23:07 -0800</bug_when>
    <thetext>This patch is the first in a series to implement CSS calc. Only the lexing and grammar stage is included here.

Net effect is no change to WebKit&apos;s user visible behaviour, other than pages including -webkit-calc(), -webkit-min() and -webkit-max() will be correctly lexed - but nothing will happen with that information.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>350882</commentid>
    <comment_count>3</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-02-14 14:23:42 -0800</bug_when>
    <thetext>Added block on master CSS calc bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>350894</commentid>
    <comment_count>4</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-02-14 14:39:02 -0800</bug_when>
    <thetext>I should also say that Tab Atkins from the CSS WG pointed out http://www.w3.org/Style/CSS/Tracker/issues/149 to me - which says that the + and - operators shall require spaces around them. So this patch implements this. See the included test files for what is intended to work and not work.

That said - it is pretty simple to not require the whitespace - all we need to do is disallow a trailing &apos;-&apos; on a number&apos;s dimension.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>351038</commentid>
    <comment_count>5</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-02-14 18:27:22 -0800</bug_when>
    <thetext>Sorry - of course I meant &apos;disallow &apos;-&apos; anywhere in a number&apos;s dimension&apos;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>369509</commentid>
    <comment_count>6</comment_count>
      <attachid>82362</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2011-03-17 22:47:45 -0700</bug_when>
    <thetext>Comment on attachment 82362
Patch

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

Just some nits on the test cases and a few concerns about error cases.

&gt; LayoutTests/css3/calc/calc-errors.html:3
&gt; +&lt;html&gt;
&gt; +&lt;head&gt;
&gt; +

For this and the other new tests, you should put a doctype to make sure we&apos;re testing standards mode by default: &lt;!DOCTYPE HTML&gt;

Also, it&apos;s not a big deal, but you don&apos;t really need the html/head/body elements.

&gt; LayoutTests/css3/calc/calc-errors.html:38
&gt; +&lt;body onload=&quot;test()&quot;&gt;

If you just move the script element at the end of the test, then you won&apos;t need to do this onload. You can just execute the script directly.

&gt; Source/WebCore/css/CSSGrammar.y:1554
&gt; +            if ($2) {
&gt; +                CSSParserValue v;
&gt; +                v.id = 0;
&gt; +                v.unit = CSSParserValue::Operator;
&gt; +                v.iValue = $2;
&gt; +                $$-&gt;addValue(v);
&gt; +            }

I&apos;m not sure this is right. I don&apos;t think you need to null check $2. In either case, please add a test for this case.

&gt; Source/WebCore/css/CSSGrammar.y:1569
&gt; +            if ($2) {
&gt; +                CSSParserValue v;
&gt; +                v.id = 0;
&gt; +                v.unit = CSSParserValue::Operator;
&gt; +                v.iValue = $2;
&gt; +                $$-&gt;addValue(v);
&gt; +            }
&gt; +            if ($3)
&gt; +                $$-&gt;append(*($3));

Ditto above. Please add tests for the cases where !$2 and !$3.

&gt; Source/WebCore/css/CSSGrammar.y:1582
&gt; +    | calc_func_expr_list &apos;,&apos; maybe_space calc_func_expr {

Make sure to test the case of having a space before the comma. I believe that you have the logic correct, but it would be good to have tests for all these cases.

&gt; Source/WebCore/css/CSSGrammar.y:1612
&gt; +    | CALCFUNCTION maybe_space error {
&gt; +        CSSParser* p = static_cast&lt;CSSParser*&gt;(parser);
&gt; +        CSSParserFunction* f = p-&gt;createFloatingFunction();
&gt; +        f-&gt;name = $1;
&gt; +        f-&gt;args = 0;
&gt; +        $$.id = 0;
&gt; +        $$.unit = CSSParserValue::Function;
&gt; +        $$.function = f;

I think in the error case you just want to set $$=0, no?

&gt; Source/WebCore/css/CSSGrammar.y:1643
&gt; +    | min_or_max maybe_space error {
&gt; +        CSSParser* p = static_cast&lt;CSSParser*&gt;(parser);
&gt; +        CSSParserFunction* f = p-&gt;createFloatingFunction();
&gt; +        f-&gt;name = $1;
&gt; +        f-&gt;args = 0;
&gt; +        $$.id = 0;
&gt; +        $$.unit = CSSParserValue::Function;
&gt; +        $$.function = f;

ditto

&gt; Source/WebCore/css/CSSParserValues.cpp:57
&gt; +void CSSParserValueList::append(CSSParserValueList&amp; right)

nit: i&apos;d s/right/valueList/. append implies going on the right. :)

Although, i think calling this extend would be more clear. FWIW, it matches python&apos;s list class. :)

&gt; Source/WebCore/css/CSSParserValues.h:76
&gt; +    void append(CSSParserValueList&amp; right);

Shouldn&apos;t include variable names in header files unless they add to readability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371143</commentid>
    <comment_count>7</comment_count>
      <attachid>86407</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-21 19:17:35 -0700</bug_when>
    <thetext>Created attachment 86407
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371149</commentid>
    <comment_count>8</comment_count>
      <attachid>82362</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-21 19:25:45 -0700</bug_when>
    <thetext>Comment on attachment 82362
Patch

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

&gt;&gt; LayoutTests/css3/calc/calc-errors.html:3
&gt;&gt; +
&gt; 
&gt; For this and the other new tests, you should put a doctype to make sure we&apos;re testing standards mode by default: &lt;!DOCTYPE HTML&gt;
&gt; 
&gt; Also, it&apos;s not a big deal, but you don&apos;t really need the html/head/body elements.

Done.

&gt;&gt; LayoutTests/css3/calc/calc-errors.html:38
&gt;&gt; +&lt;body onload=&quot;test()&quot;&gt;
&gt; 
&gt; If you just move the script element at the end of the test, then you won&apos;t need to do this onload. You can just execute the script directly.

Good idea - done.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1554
&gt;&gt; +            }
&gt; 
&gt; I&apos;m not sure this is right. I don&apos;t think you need to null check $2. In either case, please add a test for this case.

Test added (see &apos;invalid operator &apos;flim&apos;&apos; in calc-errors.html). calc_func_operator has been changed to $$=0 in the error case, so I can check for it here.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1582
&gt;&gt; +    | calc_func_expr_list &apos;,&apos; maybe_space calc_func_expr {
&gt; 
&gt; Make sure to test the case of having a space before the comma. I believe that you have the logic correct, but it would be good to have tests for all these cases.

Test added to simple-minmax,html (see min(  150px  ,  100px  ,200px)).

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1612
&gt;&gt; +        $$.function = f;
&gt; 
&gt; I think in the error case you just want to set $$=0, no?

In this case, since calc_function is a value, $$ can&apos;t be set to 0. But you&apos;re right in that what I was doing was wrong, so I just YYERRROR here instead.

&gt;&gt; Source/WebCore/css/CSSParserValues.cpp:57
&gt;&gt; +void CSSParserValueList::append(CSSParserValueList&amp; right)
&gt; 
&gt; nit: i&apos;d s/right/valueList/. append implies going on the right. :)
&gt; 
&gt; Although, i think calling this extend would be more clear. FWIW, it matches python&apos;s list class. :)

Done.

&gt;&gt; Source/WebCore/css/CSSParserValues.h:76
&gt;&gt; +    void append(CSSParserValueList&amp; right);
&gt; 
&gt; Shouldn&apos;t include variable names in header files unless they add to readability.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371151</commentid>
    <comment_count>9</comment_count>
      <attachid>86407</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-21 19:29:25 -0700</bug_when>
    <thetext>Comment on attachment 86407
Patch

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

&gt; Source/WebCore/css/CSSGrammar.y:1442
&gt; +calc_func_term:
&gt; +  unary_term { $$ = $1; }
&gt; +  | unary_operator unary_term { $$ = $2; $$.fValue *= $1; }
&gt; +  ;

I reduced the matching of calc_func_term to just these. Previously it was a synonym for &apos;term&apos;, which incorrectly allowed eg -webkit-calc() embedded inside a -webkit-calc(), or a color, or a URI etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371152</commentid>
    <comment_count>10</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-21 19:31:05 -0700</bug_when>
    <thetext>I was so caught up in the niceness of inline comments in the new review tool that I forgot to say thanks for the review Ojan!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>371966</commentid>
    <comment_count>11</comment_count>
      <attachid>86407</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2011-03-22 22:27:14 -0700</bug_when>
    <thetext>Comment on attachment 86407
Patch

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

Please address the comments and repost the patch for committing.

&gt; LayoutTests/css3/calc/calc-errors.html:2
&gt; +&lt;style type=&quot;text/css&quot;&gt;

Nit: don&apos;t need the type on the style element. css is assumed.

Ditto for the other tests.

&gt; LayoutTests/css3/calc/calc-errors.html:106
&gt; +function test()
&gt; +{
&gt; +    var test = document.getElementById(&quot;test&quot;);
&gt; +    for (var element = test.firstChild; element; element = element.nextSibling) {
&gt; +        var width = element.offsetWidth;
&gt; +        var error = [];
&gt; +        if (width != 100)
&gt; +            error.push(&quot;expected width of 100, but was &quot; + width);
&gt; +        var height = element.offsetHeight;
&gt; +        if (height != 100)
&gt; +            error.push(&quot;expected height of 100, but was &quot; + width);
&gt; +
&gt; +        if (error == &quot;&quot;) {
&gt; +            element.style.backgroundColor = &quot;green&quot;;
&gt; +            element.innerHTML += &quot; =&gt; PASS&quot;;
&gt; +        } else {
&gt; +            element.innerHTML += &quot; =&gt; FAIL: &quot; + error.join(&quot;, &quot;);
&gt; +        }
&gt; +    }
&gt; +}

Nit: no need to create the function. Just call this code directly.

Ditto for the other tests.

&gt; Source/WebCore/css/CSSGrammar.y:1461
&gt; +    &apos;+&apos; WHITESPACE {
&gt; +        $$ = &apos;+&apos;;
&gt; +    }
&gt; +  | &apos;-&apos; WHITESPACE {
&gt; +        $$ = &apos;-&apos;;
&gt; +    }
&gt; +  | &apos;*&apos; maybe_space {
&gt; +        $$ = &apos;*&apos;;
&gt; +    }
&gt; +  | &apos;/&apos; maybe_space {
&gt; +        $$ = &apos;/&apos;;
&gt; +    }
&gt; +  | IDENT maybe_space {
&gt; +        if (equalIgnoringCase(&quot;mod&quot;, $1.characters, $1.length))
&gt; +            $$ = &apos;%&apos;;
&gt; +        else
&gt; +            $$ = 0;

The indentation here and in some of the places below is a bit funky. I know this file isn&apos;t very consistent, but I don&apos;t see that this matches the other various indentation styles in the file. :)

&gt; Source/WebCore/css/CSSGrammar.y:1487
&gt; +        if ($1 &amp;&amp; $2) {

Do you not need to null check $3?

&gt; Source/WebCore/css/CSSGrammar.y:1523
&gt; +        $$ = $1;
&gt; +        if ($$ &amp;&amp; $4) {

This is fine. I&apos;d find it easier to read and more consistent with the other code if it was:
if ($1 &amp;&amp; $4) {
    $$ = $1;
    ...

&gt; Source/WebCore/css/CSSGrammar.y:1546
&gt; +        YYERROR;

Why use YYERROR here instead of $$ = 0?

&gt; Source/WebCore/css/CSSGrammar.y:1571
&gt; +        YYERROR;

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372583</commentid>
    <comment_count>12</comment_count>
      <attachid>86729</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-23 18:00:53 -0700</bug_when>
    <thetext>Created attachment 86729
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372587</commentid>
    <comment_count>13</comment_count>
      <attachid>86407</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-23 18:07:03 -0700</bug_when>
    <thetext>Comment on attachment 86407
Patch

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

&gt;&gt; LayoutTests/css3/calc/calc-errors.html:2
&gt;&gt; +&lt;style type=&quot;text/css&quot;&gt;
&gt; 
&gt; Nit: don&apos;t need the type on the style element. css is assumed.
&gt; 
&gt; Ditto for the other tests.

Done.

&gt;&gt; LayoutTests/css3/calc/calc-errors.html:106
&gt;&gt; +}
&gt; 
&gt; Nit: no need to create the function. Just call this code directly.
&gt; 
&gt; Ditto for the other tests.

Done.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1461
&gt;&gt; +            $$ = 0;
&gt; 
&gt; The indentation here and in some of the places below is a bit funky. I know this file isn&apos;t very consistent, but I don&apos;t see that this matches the other various indentation styles in the file. :)

Fixed.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1487
&gt;&gt; +        if ($1 &amp;&amp; $2) {
&gt; 
&gt; Do you not need to null check $3?

No, because calc_func_term is a value (see definition on line 277), so it can&apos;t be null. Similarly I don&apos;t check $1 in the clause above.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1523
&gt;&gt; +        if ($$ &amp;&amp; $4) {
&gt; 
&gt; This is fine. I&apos;d find it easier to read and more consistent with the other code if it was:
&gt; if ($1 &amp;&amp; $4) {
&gt;     $$ = $1;
&gt;     ...

Done.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1546
&gt;&gt; +        YYERROR;
&gt; 
&gt; Why use YYERROR here instead of $$ = 0?

Because $$ in this case is defined as a value (which is a struct, not a pointer), so it can&apos;t be set to 0. YYERROR seems the right thing to do here.

&gt;&gt; Source/WebCore/css/CSSGrammar.y:1571
&gt;&gt; +        YYERROR;
&gt; 
&gt; ditto

ditto :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372588</commentid>
    <comment_count>14</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-03-23 18:07:38 -0700</bug_when>
    <thetext>Thanks for the r+ - yay!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372651</commentid>
    <comment_count>15</comment_count>
      <attachid>86729</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-23 20:18:58 -0700</bug_when>
    <thetext>Comment on attachment 86729
Patch

Clearing flags on attachment: 86729

Committed r81849: &lt;http://trac.webkit.org/changeset/81849&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>372652</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-23 20:19:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382953</commentid>
    <comment_count>17</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-04-10 16:00:05 -0700</bug_when>
    <thetext>Reopening as patch was rolled out due to https://bugs.webkit.org/show_bug.cgi?id=57588.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382954</commentid>
    <comment_count>18</comment_count>
      <attachid>88960</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-04-10 16:10:34 -0700</bug_when>
    <thetext>Created attachment 88960
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382956</commentid>
    <comment_count>19</comment_count>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-04-10 16:15:39 -0700</bug_when>
    <thetext>Bugfix was adding the else clause on line 1523 of CSSGrammar.y. 

Three regression tests from https://bugs.webkit.org/show_bug.cgi?id=57581 were added as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382998</commentid>
    <comment_count>20</comment_count>
      <attachid>88964</attachid>
    <who name="Mike Lawther">mikelawther</who>
    <bug_when>2011-04-10 19:00:51 -0700</bug_when>
    <thetext>Created attachment 88964
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>383005</commentid>
    <comment_count>21</comment_count>
      <attachid>88964</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-10 19:32:04 -0700</bug_when>
    <thetext>Comment on attachment 88964
Patch

Clearing flags on attachment: 88964

Committed r83415: &lt;http://trac.webkit.org/changeset/83415&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>383006</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-10 19:32:12 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>82362</attachid>
            <date>2011-02-14 14:19:34 -0800</date>
            <delta_ts>2011-03-21 19:25:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54412-20110215091931.patch</filename>
            <type>text/plain</type>
            <size>27358</size>
            <attacher name="Mike Lawther">mikelawther</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBmYmYyYmEyZjhlOGVjMGY3NzJhZDc4MjJhOTA1MWJhMTFkNmZlMGE2Li40MmQyMWQ4
N2E2NzZhN2QyNDkyOWI2ODc4OWYzZjMwMDZiNjlkZGY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTEtMDItMTQgIE1pa2UgTGF3dGhlciAgPG1pa2VsYXd0aGVyQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBmbGV4L2Jpc29u
IHRva2VucyBhbmQgZ3JhbW1hciBmb3IgQ1NTIGNhbGMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NDEyCisKKyAgICAgICAgT25seSB0aGUgJ2Vycm9y
cycgdGVzdHMgcGFzcyBhcyB1bHRpbWF0ZWx5IGludGVuZGVkIHJpZ2h0IG5vdy4gQXMgb2YgdGhp
cworICAgICAgICBwYXRjaCwgbm9uZSBvZiB0aGUgYWN0dWFsIGNhbGN1bGF0aW9ucyBhcmUgZXhw
ZWN0ZWQgdG8gd29yaywgc2luY2Ugb25seQorICAgICAgICB0aGUgbGV4aW5nL2dyYW1tYXIgc3Rh
Z2UgaXMgcHJlc2VudC4KKworICAgICAgICAqIGNzczMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvc2ltcGxlLWNhbGNzLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBjc3MzL2NhbGMvc2ltcGxlLW1pbm1heC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGNzczMvY2FsYy9zaW1wbGUtbWlubWF4Lmh0bWw6IEFkZGVkLgorCiAyMDExLTAyLTEzICBTaGlu
aWNoaXJvIEhhbWFqaSAgPGhhbWFqaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgRml4IGNocm9t
aXVtJ3MgdGVzdF9leHBlY3RhdGlvbnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY2Fs
Yy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvY2FsYy1l
cnJvcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc3ZTJlMDhmNzI5ZGM1ZTBjNzdjZGNmZjVi
OGEzOTZlYjllOTJhMjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMv
Y2FsYy1lcnJvcnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjYgQEAKK0FsbCBib3hlcyBiZWxv
dyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCisKK3plcm8gZGl2aXNpb24gPT4g
UEFTUworbm9uIGxlbmd0aCA9PiBQQVNTCitudW1iZXIgKyBsZW5ndGggPT4gUEFTUworbGVuZ3Ro
IC0gbnVtYmVyID0+IFBBU1MKK2xlbmd0aCAqIGxlbmd0aCA9PiBQQVNTCitudW1iZXIgLyBsZW5n
dGggPT4gUEFTUworbnVtYmVyIG1vZCBsZW5ndGggPT4gUEFTUworbW9kMTAgPT4gUEFTUworMW1v
ZCA9PiBQQVNTCis3MHB4KzQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgKyA9PiBQQVNTCis3MHB4
ICs0MHB4IG5vIHdoaXRlc3BhY2Ugb24gcmlnaHQgb2YgKyA9PiBQQVNTCis3MHB4KyA0MHB4IG5v
IHdoaXRlc3BhY2Ugb24gbGVmdCBvZiArID0+IFBBU1MKKzcwcHgrLTQwcHggbm8gd2hpdGVzcGFj
ZSBhcm91bmQgKyA9PiBQQVNTCis3MHB4LTQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgLSA9PiBQ
QVNTCis3MHB4IC00MHB4IG5vIHdoaXRlc3BhY2Ugb24gcmlnaHQgb2YgLSA9PiBQQVNTCis3MHB4
LSA0MHB4IG5vIHdoaXRlc3BhY2Ugb24gbGVmdCBvZiAtID0+IFBBU1MKKzcwcHgtKzQwcHggbm8g
d2hpdGVzcGFjZSBhcm91bmQgLSA9PiBQQVNTCit0b28gbWFueSBuZXN0cyA9PiBQQVNTCitlbmQg
d2l0aCBvcGVyYXRvciA9PiBQQVNTCitzdGFydCB3aXRoIG9wZXJhdG9yID0+IFBBU1MKK25vIGV4
cHJlc3Npb25zID0+IFBBU1MKK3RvbyBtYW55IHBsdXNlcyA9PiBQQVNTCitubyBiaW5hcnkgb3Bl
cmF0b3IgPT4gUEFTUwordHdvIGJpbmFyeSBvcGVyYXRvcnMgPT4gUEFTUwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMtZXJyb3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3Mz
L2NhbGMvY2FsYy1lcnJvcnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45Yzk4ZDAxZjIwNGMxYzIwYjNjMzkx
ZjZkMWNkYjgwMzllZDNjNjk1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9j
YWxjL2NhbGMtZXJyb3JzLmh0bWwKQEAgLTAsMCArMSw4NCBAQAorPGh0bWw+Cis8aGVhZD4KKwor
PHN0eWxlPgorI3Rlc3QgZGl2IHsKKyAgICBoZWlnaHQ6IDEwMHB4OworICAgIGJhY2tncm91bmQt
Y29sb3I6IHJlZDsKK30KKzwvc3R5bGU+CisKKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKwor
ZnVuY3Rpb24gdGVzdCgpCit7CisgICAgdmFyIHRlc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdCIpOworICAgIGZvciAodmFyIGVsZW1lbnQgPSB0ZXN0LmZpcnN0Q2hpbGQ7IGVsZW1l
bnQ7IGVsZW1lbnQgPSBlbGVtZW50Lm5leHRTaWJsaW5nKSB7CisgICAgICAgIHZhciB3aWR0aCA9
IGVsZW1lbnQub2Zmc2V0V2lkdGg7CisgICAgICAgIHZhciBlcnJvciA9IFtdOworICAgICAgICBp
ZiAod2lkdGggIT0gMTAwKQorICAgICAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7CisgICAgICAgIHZhciBoZWlnaHQgPSBlbGVtZW50
Lm9mZnNldEhlaWdodDsKKyAgICAgICAgaWYgKGhlaWdodCAhPSAxMDApCisgICAgICAgICAgICBl
cnJvci5wdXNoKCJleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7CisK
KyAgICAgICAgaWYgKGVycm9yID09ICIiKSB7CisgICAgICAgICAgICBlbGVtZW50LnN0eWxlLmJh
Y2tncm91bmRDb2xvciA9ICJncmVlbiI7CisgICAgICAgICAgICBlbGVtZW50LmlubmVySFRNTCAr
PSAiID0+IFBBU1MiOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgZWxlbWVudC5pbm5l
ckhUTUwgKz0gIiA9PiBGQUlMOiAiICsgZXJyb3Iuam9pbigiLCAiKTsKKyAgICAgICAgfQorICAg
IH0KK30KKzwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+CisKKzxw
PgorICBBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdyZWVuLgor
PC9wPgorCis8ZGl2IGlkPSJ0ZXN0Ij4KKworPCEtLSB6ZXJvIGRpdmlzaW9uIC0tPgorPGRpdiBz
dHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDFleCAvIDApOyI+emVybyBk
aXZpc2lvbjwvZGl2PgorCis8IS0tIHdyb25nIGNvbWJpbmF0aW9uIC0tPgorPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDIwMCk7Ij5ub24gbGVuZ3RoPC9kaXY+
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwICsgMTAw
cHgpOyI+bnVtYmVyICsgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdp
ZHRoOiAtd2Via2l0LWNhbGMoMzAwcHggLSAxMDApOyI+bGVuZ3RoIC0gbnVtYmVyPC9kaXY+Cis8
ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHgqMTAwcHgp
OyI+bGVuZ3RoICogbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LWNhbGMoMTAwLzEwMHB4KTsiPm51bWJlciAvIGxlbmd0aDwvZGl2PgorPGRpdiBz
dHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCBtb2QgMTAwcHgpOyI+
bnVtYmVyIG1vZCBsZW5ndGg8L2Rpdj4KKworPCEtLSBtb2QsICssIC0gcmVxdWlyZSB3aGl0ZXNw
YWNlcyBhcm91bmQgdGhlIG9wZXJhdG9yIC0tPgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1jYWxjKDEgbW9kMTAgKiAyMDBweCk7Ij5tb2QxMCA8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxbW9kIDEwICogMjAwcHgp
OyI+MW1vZDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDcwcHgrNDBweCk7Ij43MHB4KzQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgKyA8L2Rpdj4K
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4ICs0MHB4
KTsiPjcwcHggKzQwcHggbm8gd2hpdGVzcGFjZSBvbiByaWdodCBvZiArPC9kaXY+Cis8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweCsgNDBweCk7Ij43MHB4
KyA0MHB4IG5vIHdoaXRlc3BhY2Ugb24gbGVmdCBvZiArPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0
aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweCstNDBweCk7Ij43MHB4Ky00MHB4IG5v
IHdoaXRlc3BhY2UgYXJvdW5kICsgPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdp
ZHRoOiAtd2Via2l0LWNhbGMoNzBweC00MHB4KTsiPjcwcHgtNDBweCBubyB3aGl0ZXNwYWNlIGFy
b3VuZCAtIDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDcwcHggLTQwcHgpOyI+NzBweCAtNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mIC08
L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4
LSA0MHB4KTsiPjcwcHgtIDQwcHggbm8gd2hpdGVzcGFjZSBvbiBsZWZ0IG9mIC08L2Rpdj4KKzxk
aXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4LSs0MHB4KTsi
PjcwcHgtKzQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgLSA8L2Rpdj4KKworPCEtLSB0b28gbWFu
eSBuZXN0cyBzaG91bGQgYmUgcmVqZWN0ZWQgdG8gYXZvaWQgc3RhY2sgb3ZlcmZsb3cgLS0+Cis8
ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgyMDBweCkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKTsiPnRvbyBtYW55IG5lc3RzPC9kaXY+CisgCis8IS0tIGlu
dmFsaWQgZm9ybXVsYXMgLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LWNhbGMoMjAwcHgqKTsiPmVuZCB3aXRoIG9wZXJhdG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoKyArMjAwcHgpOyI+c3RhcnQgd2l0aCBv
cGVyYXRvcjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKCk7Ij5ubyBleHByZXNzaW9uczwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4ICsgKyArMTAwcHgpOyI+dG9vIG1hbnkgcGx1c2VzPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHgg
MjAwcHgpOyI+bm8gYmluYXJ5IG9wZXJhdG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHggKiAqIDIpOyI+dHdvIGJpbmFyeSBvcGVyYXRv
cnM8L2Rpdj4KKyAKKzwvZGl2PgorIAorPC9ib2R5PgorIAorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NWJi
OGQ3NmNiYWUyYWRhZTJhYTUzZjcxOTczYWQxNzU2OTViZmRmCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwzMyBAQAorQWxsIGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVl
bi4KKworNTBweCArIDUwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NgorMTUwcHggLSA1MHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKKzUwcHggKyA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3BlcmF0b3IpID0+IEZBSUw6IGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzE1MHB4IC0gNTBweCAoMiBzcGFjZXMg
YXJvdW5kIG9wZXJhdG9yKSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2Cis1MHB4KjIgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Ngor
NTBweCAqMiA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4
KiAyID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIwMHB4LzIg
PT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMjAwcHggLzIgPT4g
RkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMjAwcHgvIDIgPT4gRkFJ
TDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCArIDEwcHggKiA1IChv
cGVyYXRpb24gb3JkZXIpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTYKKzExMDBweCBtb2QgMTAwMCA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2CisxMDAlLzIgKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKygxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NgorKDUwcHggKyA1MHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisoNTBweCkgKyA1MHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyAoNTBweCkgPT4gRkFJTDogZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCArIDUwcHggPT4gRkFJTDogZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCArIDI1cHggKiAyID0+IEZBSUw6IGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKygyNXB4ICsgMjVweCkgKiAyID0+IEZBSUw6
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIgKiA1MHB4ID0+IEZBSUw6IGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIgKiAxMDBweCAvIDIgPT4gRkFJTDog
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMTAwcHggLyA1MHB4ICogNTBweCA9
PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMiBtb2QgMTAgKiA1
MHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKygxZW0gLSAx
ZW0pICsgMTAwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Ngor
NTBweCArICs1MHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYK
Ky01MHB4ICsgMTUwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorLTUwcHggLSAtMTUwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NgorKCgoKCgoKDEwMHB4KSkpKSkpKSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2CisxMDBweCA9PiBGQUlMOiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQg
d2FzIDUwCisxMDAlICogMiA9PiBGQUlMOiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2Fz
IDUwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGQ2
MjExZTI0MWFjZGE2ZWNiZDQ4NmY0OWFmMjY1NTExNDY1ZWEzNwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRtbApAQCAtMCwwICsxLDk5IEBA
Cis8aHRtbD4NCis8aGVhZD4NCisNCis8c3R5bGU+DQorLndpZHRoLXRlc3Qgew0KKyAgICBoZWln
aHQ6IDEwMHB4Ow0KKyAgICB3aWR0aDogMjU2cHg7DQorICAgIGJhY2tncm91bmQtY29sb3I6IHJl
ZDsNCit9DQorDQorLmhlaWdodC10ZXN0IHsNCisgICAgd2lkdGg6IDEwMHB4Ow0KKyAgICBoZWln
aHQ6IDUwcHg7DQorICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsNCit9DQorDQorPC9zdHlsZT4N
CisNCis8c2NyaXB0Pg0KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpDQorICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsNCisNCitmdW5jdGlvbiB0ZXN0KCkNCit7
DQorICAgIHZhciB0ZXN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3QiKTsNCisgICAg
Zm9yICh2YXIgY2hpbGQgPSB0ZXN0LmZpcnN0Q2hpbGQ7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLm5l
eHRTaWJsaW5nKSB7DQorICAgICAgICB2YXIgZWxlbWVudCA9IGNoaWxkOw0KKyAgICAgICAgaWYg
KGVsZW1lbnQuY2xhc3NOYW1lID09ICJ3cmFwcGVyIikgew0KKyAgICAgICAgICAgIGVsZW1lbnQg
PSBlbGVtZW50LmZpcnN0Q2hpbGQ7DQorICAgICAgICAgICAgd2hpbGUgKGVsZW1lbnQudGFnTmFt
ZSAhPSAiRElWIikgZWxlbWVudCA9IGVsZW1lbnQubmV4dFNpYmxpbmc7DQorICAgICAgICB9DQor
DQorICAgICAgICB2YXIgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoOw0KKyAgICAgICAgdmFy
IGVycm9yID0gW107DQorICAgICAgICBpZiAod2lkdGggIT0gMTAwKQ0KKyAgICAgICAgICAgIGVy
cm9yLnB1c2goImV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAiICsgd2lkdGgpOw0KKyAg
ICAgICAgdmFyIGhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0Ow0KKyAgICAgICAgaWYgKGhl
aWdodCAhPSAxMDApDQorICAgICAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgaGVpZ2h0IG9m
IDEwMCwgYnV0IHdhcyAiICsgaGVpZ2h0KTsNCisNCisgICAgICAgIGlmIChlcnJvciA9PSAiIikg
ew0KKyAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gImdyZWVuIjsN
CisgICAgICAgICAgICBlbGVtZW50LmlubmVySFRNTCArPSAiID0+IFBBU1MiOw0KKyAgICAgICAg
fSBlbHNlDQorICAgICAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBGQUlMOiAiICsg
ZXJyb3Iuam9pbigiLCAiKTsNCisgICAgfQ0KK30NCis8L3NjcmlwdD4NCis8L2hlYWQ+DQorDQor
PGJvZHkgb25sb2FkPSJ0ZXN0KCkiPg0KKw0KKzxwPg0KKyAgQWxsIGJveGVzIGJlbG93IHNob3Vs
ZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVlbi4NCis8L3A+DQorDQorPGRpdiBpZD0idGVzdCI+
DQorDQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMo
NTBweCArIDUwcHgpOyI+NTBweCArIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxNTBweCAtIDUwcHgpOyI+MTUwcHggLSA1MHB4
PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNh
bGMoNTBweCAgKyAgNTBweCk7Ij41MHB4ICArICA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3BlcmF0
b3IpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWNhbGMoMTUwcHggIC0gIDUwcHgpOyI+MTUwcHggIC0gNTBweCAoMiBzcGFjZXMgYXJvdW5kIG9w
ZXJhdG9yKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1jYWxjKDUwcHgqMik7Ij41MHB4KjI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICoyKTsiPjUwcHggKjI8L2Rpdj4NCis8
ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4KiAy
KTsiPjUwcHgqIDI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6
IC13ZWJraXQtY2FsYygyMDBweC8yKTsiPjIwMHB4LzI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0
aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygyMDBweCAvMik7Ij4yMDBweCAvMjwv
ZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxj
KDIwMHB4LyAyKTsiPjIwMHB4LyAyPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5
bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCArIDEwcHggKiA1KTsiPjUwcHggKyAxMHB4ICog
NSAob3BlcmF0aW9uIG9yZGVyKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1jYWxjKDExMDBweCBtb2QgMTAwMCk7Ij4xMTAwcHggbW9kIDEwMDA8
L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRl
OyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9Indp
ZHRoOiAtd2Via2l0LWNhbGMoMTAwJS8yKTsiPjEwMCUvMiAod2hlcmUgMTAwJSBpcyAyMDBweCk8
L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13
ZWJraXQtY2FsYygoMTAwcHgpKTsiPigxMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoNTBweCArIDUwcHgpKTsiPig1MHB4ICsg
NTBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtY2FsYygoNTBweCkgKyA1MHB4KTsiPig1MHB4KSArIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNz
PSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICsgKDUwcHgpKTsi
PjUwcHggKyAoNTBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYyggNTBweCArICA1MHB4ICk7Ij4gNTBweCArICA1MHB4IDwvZGl2Pg0K
KzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKCA1MHB4
ICsgMjVweCAqIDIgKTsiPiA1MHB4ICsgMjVweCAqIDIgPC9kaXY+DQorPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoICgyNXB4ICsgMjVweCkgKiAyICk7
Ij4gKDI1cHggKyAyNXB4KSAqIDIgPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5
bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMiAqIDUwcHgpOyI+MiAqIDUwcHg8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygyICogMTAwcHgg
LyAyKTsiPjIgKiAxMDBweCAvIDI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMDBweCAvIDUwcHggKiA1MHB4KTsiPjEwMHB4IC8gNTBw
eCAqIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13
ZWJraXQtY2FsYygxMiBtb2QgMTAgKiA1MHB4KTsiPjEyIG1vZCAxMCAqIDUwcHg8L2Rpdj4NCis8
ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoMWVtIC0g
MWVtKSArIDEwMHB4KTsiPigxZW0gLSAxZW0pICsgMTAwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICsgICs1MHB4KTsiPjUw
cHggKyAgKzUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6
IC13ZWJraXQtY2FsYygtNTBweCArIDE1MHB4KTsiPi01MHB4ICsgMTUwcHg8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygtNTBweCAtIC0x
NTBweCk7Ij4tNTBweCAtIC0xNTBweDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKCgoKCgoKCgxMDBweCkpKSkpKSkpOyI+KCgoKCgoKDEw
MHB4KSkpKSkpKTwvZGl2Pg0KKzxkaXYgY2xhc3M9ImhlaWdodC10ZXN0IiBzdHlsZT0iaGVpZ2h0
OiAtd2Via2l0LWNhbGMoMTAwcHgpOyI+MTAwcHg8L2Rpdj4NCis8ZGl2IHN0eWxlPSJoZWlnaHQ6
IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgPGRp
diBjbGFzcz0iaGVpZ2h0LXRlc3QiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtY2FsYygxMDAlICog
Mik7Ij4xMDAlICogMjwvZGl2Pg0KKzwvZGl2Pg0KKw0KKzwvZGl2Pg0KKw0KKzwvYm9keT4NCisN
Cis8L2h0bWw+DQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5t
YXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXgtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI2MzUzNGM1NWY1NTZmNWU4OGE0YjAxYWZkNWNlOWFmNTgw
ZWJkODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1p
bm1heC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOCBAQAorQWxsIGJveGVzIGJlbG93IHNob3Vs
ZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVlbi4KKworbWluKDEwMHB4KSA9PiBGQUlMOiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oIDEwMHB4ICkgPT4gRkFJTDogZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWluKCgoKDEwMHB4KSkpKSA9PiBGQUlM
OiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oMTUwcHgsMTAwcHgpID0+
IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbigxNTBweCwxMDBw
eCwyMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWlu
KCAxNTBweCAsMTAwcHggLDIwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2CittaW4oOTBweCArIDUwcHgsMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbigxMDAlLDEwMHB4KSAtIHdoZXJlIDEwMCUgaXMgMjAw
cHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWluKDEwMHB4
LDEwMCUpIC0gd2hlcmUgMTAwJSBpcyAyMDBweCA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2CittYXgoMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTYKK21heCg1MHB4LDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoNTBweCwxMDBweCwyMHB4KSA9PiBGQUlMOiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoMTIwcHggLSA1MHB4LDEwMHB4KSA9PiBG
QUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoMTAwJSwxMDBweCkg
LSB3aGVyZSAxMDAlIGlzIDUwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorbWF4KDEwMHB4LDEwMCUpIC0gd2hlcmUgMTAwJSBpcyA1MHB4ID0+IEZBSUw6IGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbigyMDBweCwxMDBweCkgPT4gRkFJ
TDogZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyA1MApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY2Fs
Yy9zaW1wbGUtbWlubWF4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWE4YmU1ZDZlYmZhYTU4Mjc4NTdkZjU2
OThlYjRiMmNhZmQyNDc4NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2Fs
Yy9zaW1wbGUtbWlubWF4Lmh0bWwKQEAgLTAsMCArMSw4OSBAQAorPGh0bWw+DQorPGhlYWQ+DQor
DQorPHN0eWxlPg0KKy53aWR0aC10ZXN0IHsNCisgICAgaGVpZ2h0OiAxMDBweDsNCisgICAgd2lk
dGg6IDI1NnB4Ow0KKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7DQorfQ0KKw0KKy5oZWlnaHQt
dGVzdCB7DQorICAgIHdpZHRoOiAxMDBweDsNCisgICAgaGVpZ2h0OiA1MHB4Ow0KKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiByZWQ7DQorfQ0KKzwvc3R5bGU+DQorDQorPHNjcmlwdD4NCitpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQ0KKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7DQorDQorZnVuY3Rpb24gdGVzdCgpDQorew0KKyAgICB2YXIgdGVzdCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0Iik7DQorICAgIGZvciAodmFyIGNoaWxkID0gdGVzdC5m
aXJzdENoaWxkOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC5uZXh0U2libGluZykgew0KKyAgICAgICAg
dmFyIGVsZW1lbnQgPSBjaGlsZDsNCisgICAgICAgIGlmIChlbGVtZW50LmNsYXNzTmFtZSA9PSAi
d3JhcHBlciIpIHsNCisgICAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5maXJzdENoaWxkOw0K
KyAgICAgICAgICAgIHdoaWxlIChlbGVtZW50LnRhZ05hbWUgIT0gIkRJViIpIGVsZW1lbnQgPSBl
bGVtZW50Lm5leHRTaWJsaW5nOw0KKyAgICAgICAgfQ0KKw0KKyAgICAgICAgdmFyIHdpZHRoID0g
ZWxlbWVudC5vZmZzZXRXaWR0aDsNCisgICAgICAgIHZhciBlcnJvciA9IFtdOw0KKyAgICAgICAg
aWYgKHdpZHRoICE9IDEwMCkNCisgICAgICAgICAgICBlcnJvci5wdXNoKCJleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgIiArIHdpZHRoKTsNCisgICAgICAgIHZhciBoZWlnaHQgPSBlbGVt
ZW50Lm9mZnNldEhlaWdodDsNCisgICAgICAgIGlmIChoZWlnaHQgIT0gMTAwKQ0KKyAgICAgICAg
ICAgIGVycm9yLnB1c2goImV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgIiArIGhlaWdo
dCk7DQorDQorICAgICAgICBpZiAoZXJyb3IgPT0gIiIpIHsNCisgICAgICAgICAgICBlbGVtZW50
LnN0eWxlLmJhY2tncm91bmRDb2xvciA9ICJncmVlbiI7DQorICAgICAgICAgICAgZWxlbWVudC5p
bm5lckhUTUwgKz0gIiA9PiBQQVNTIjsNCisgICAgICAgIH0gZWxzZQ0KKyAgICAgICAgICAgIGVs
ZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4gRkFJTDogIiArIGVycm9yLmpvaW4oIiwgIik7DQorICAg
IH0NCit9DQorPC9zY3JpcHQ+DQorPC9oZWFkPg0KKw0KKzxib2R5IG9ubG9hZD0idGVzdCgpIj4N
CisNCis8cD4NCisgIEFsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQg
Z3JlZW4uDQorPC9wPg0KKw0KKzxkaXYgaWQ9InRlc3QiPg0KKw0KKzxkaXYgY2xhc3M9IndpZHRo
LXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1taW4oMTAwcHgpOyI+bWluKDEwMHB4KTwvZGl2
Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1taW4oIDEw
MHB4ICk7Ij5taW4oIDEwMHB4ICk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtbWluKCgoKDEwMHB4KSkpKTsiPm1pbigoKCgxMDBweCkpKSk8L2Rp
dj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDE1
MHB4LDEwMHB4KTsiPm1pbigxNTBweCwxMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDE1MHB4LDEwMHB4LDIwMHB4KTsiPm1pbigx
NTBweCwxMDBweCwyMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtbWluKCAgMTUwcHggLDEwMHB4ICAsMjAwcHgpOyI+bWluKCAgMTUwcHgg
ICwxMDBweCAgLDIwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3
aWR0aDogLXdlYmtpdC1taW4oOTBweCArIDUwcHgsMTAwcHgpOyI+bWluKDkwcHggKyA1MHB4LDEw
MHB4KTwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjog
d2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtbWluKDEwMCUsMTAwcHgpOyI+bWluKDEwMCUsMTAwcHgpIC0gd2hl
cmUgMTAwJSBpcyAyMDBweDwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBw
eDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICA8ZGl2IGNs
YXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDEwMHB4LDEwMCUpOyI+
bWluKDEwMHB4LDEwMCUpIC0gd2hlcmUgMTAwJSBpcyAyMDBweDwvZGl2Pg0KKzwvZGl2Pg0KKw0K
KzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTAwcHgp
OyI+bWF4KDEwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0
aDogLXdlYmtpdC1tYXgoNTBweCwxMDBweCk7Ij5tYXgoNTBweCwxMDBweCk8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWF4KDUwcHgsMTAwcHgs
MjBweCk7Ij5tYXgoNTBweCwxMDBweCwyMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRl
c3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTIwcHggLSA1MHB4LDEwMHB4KTsiPm1heCgx
MjBweCAtIDUwcHgsMTAwcHgpPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDUwcHg7IGJhY2tn
cm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1heCgxMDAlLDEwMHB4KTsiPm1heCgxMDAl
LDEwMHB4KSAtIHdoZXJlIDEwMCUgaXMgNTBweDwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9
IndpZHRoOiA1MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4N
CisgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTAw
cHgsMTAwJSk7Ij5tYXgoMTAwcHgsMTAwJSkgLSB3aGVyZSAxMDAlIGlzIDUwcHg8L2Rpdj4NCis8
L2Rpdj4NCisNCis8ZGl2IGNsYXNzPSJoZWlnaHQtdGVzdCIgc3R5bGU9ImhlaWdodDogLXdlYmtp
dC1taW4oMjAwcHgsIDEwMHB4KTsiPm1pbigyMDBweCwxMDBweCk8L2Rpdj4NCisNCis8L2Rpdj4N
CisNCis8L2JvZHk+DQorDQorPC9odG1sPg0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0YWZiZjE5NzFiOTY5ZWVk
YTUwMzYwMjM1M2Y1OGQ5ZTZjZTExYjNiLi5iNTkwYTM0ZmQyM2IxNmRmZTQwODQzZGVhM2FlZWRl
OGY1NGQ2MzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDItMTQgIE1pa2Ug
TGF3dGhlciAgPG1pa2VsYXd0aGVyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBmbGV4L2Jpc29uIHRva2VucyBhbmQgZ3JhbW1h
ciBmb3IgQ1NTIGNhbGMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTU0NDEyCisKKyAgICAgICAgVGVzdHM6IGNzczMvY2FsYy9jYWxjLWVycm9ycy5odG1s
CisgICAgICAgICAgICAgICBjc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWwKKyAgICAgICAgICAg
ICAgIGNzczMvY2FsYy9zaW1wbGUtbWlubWF4Lmh0bWwKKworICAgICAgICAqIGNzcy9DU1NHcmFt
bWFyLnk6CisgICAgICAgICogY3NzL0NTU1BhcnNlclZhbHVlcy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDU1NQYXJzZXJWYWx1ZUxpc3Q6Omluc2VydFZhbHVlQXQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTUGFyc2VyVmFsdWVMaXN0OjphcHBlbmQpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXJW
YWx1ZXMuaDoKKyAgICAgICAgKiBjc3MvdG9rZW5pemVyLmZsZXg6CisKIDIwMTEtMDItMTMgIEFu
ZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERp
cmsgU2NodWx6ZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55CmluZGV4IDAzZDI1ZDk3Yzk1NjkwYzA3
ZWNlNmQzNTdkNTY2Yzg0ODBkZDIxZTUuLjI2YjdjNmI4NzU1NTdmOWNhOWFiNmUyNjM5MjYyY2Ji
ZTY5NmY5ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueQpAQCAtOTksNyArOTksNyBAQCBzdGF0
aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCogcGFyc2VyKQogCiAlfQogCi0l
ZXhwZWN0IDUxCislZXhwZWN0IDU1CiAKICVub25hc3NvYyBMT1dFU1RfUFJFQwogCkBAIC0xODMs
NiArMTgzLDcgQEAgc3RhdGljIGludCBjc3N5eWxleChZWVNUWVBFKiB5eWx2YWwsIHZvaWQqIHBh
cnNlcikKICV0b2tlbiA8bnVtYmVyPiBIRVJUWgogJXRva2VuIDxudW1iZXI+IEtIRVJUWgogJXRv
a2VuIDxzdHJpbmc+IERJTUVOCisldG9rZW4gPHN0cmluZz4gSU5WQUxJRERJTUVOCiAldG9rZW4g
PG51bWJlcj4gUEVSQ0VOVEFHRQogJXRva2VuIDxudW1iZXI+IEZMT0FUVE9LRU4KICV0b2tlbiA8
bnVtYmVyPiBJTlRFR0VSCkBAIC0xOTAsNiArMTkxLDkgQEAgc3RhdGljIGludCBjc3N5eWxleChZ
WVNUWVBFKiB5eWx2YWwsIHZvaWQqIHBhcnNlcikKICV0b2tlbiA8c3RyaW5nPiBVUkkKICV0b2tl
biA8c3RyaW5nPiBGVU5DVElPTgogJXRva2VuIDxzdHJpbmc+IE5PVEZVTkNUSU9OCisldG9rZW4g
PHN0cmluZz4gQ0FMQ0ZVTkNUSU9OCisldG9rZW4gPHN0cmluZz4gTUlORlVOQ1RJT04KKyV0b2tl
biA8c3RyaW5nPiBNQVhGVU5DVElPTgogCiAldG9rZW4gPHN0cmluZz4gVU5JQ09ERVJBTkdFCiAK
QEAgLTI3MCw2ICsyNzQsMTQgQEAgc3RhdGljIGludCBjc3N5eWxleChZWVNUWVBFKiB5eWx2YWws
IHZvaWQqIHBhcnNlcikKICV0eXBlIDx2YWx1ZT4gdGVybQogJXR5cGUgPHZhbHVlPiB1bmFyeV90
ZXJtCiAldHlwZSA8dmFsdWU+IGZ1bmN0aW9uCisldHlwZSA8dmFsdWU+IGNhbGNfZnVuY190ZXJt
CisldHlwZSA8Y2hhcmFjdGVyPiBjYWxjX2Z1bmNfb3BlcmF0b3IKKyV0eXBlIDx2YWx1ZUxpc3Q+
IGNhbGNfZnVuY19leHByCisldHlwZSA8dmFsdWVMaXN0PiBjYWxjX2Z1bmNfZXhwcl9saXN0Cisl
dHlwZSA8dmFsdWVMaXN0PiBjYWxjX2Z1bmNfcGFyZW5fZXhwcgorJXR5cGUgPHZhbHVlPiBjYWxj
X2Z1bmN0aW9uCisldHlwZSA8c3RyaW5nPiBtaW5fb3JfbWF4CisldHlwZSA8dmFsdWU+IG1pbl9v
cl9tYXhfZnVuY3Rpb24KIAogJXR5cGUgPHN0cmluZz4gZWxlbWVudF9uYW1lCiAldHlwZSA8c3Ry
aW5nPiBhdHRyX25hbWUKQEAgLTE0MjEsNiArMTQzMywxMiBAQCB0ZXJtOgogICB8IGZ1bmN0aW9u
IHsKICAgICAgICQkID0gJDE7CiAgIH0KKyAgfCBjYWxjX2Z1bmN0aW9uIHsKKyAgICAgICQkID0g
JDE7CisgIH0KKyAgfCBtaW5fb3JfbWF4X2Z1bmN0aW9uIHsKKyAgICAgICQkID0gJDE7CisgIH0K
ICAgfCAnJScgbWF5YmVfc3BhY2UgeyAvKiBIYW5kbGUgd2lkdGg6ICU7ICovCiAgICAgICAkJC5p
ZCA9IDA7ICQkLnVuaXQgPSAwOwogICB9CkBAIC0xNDc3LDYgKzE0OTUsMTU1IEBAIGZ1bmN0aW9u
OgogICAgICAgICAkJC5mdW5jdGlvbiA9IGY7CiAgIH0KICAgOworIAorY2FsY19mdW5jX3Rlcm06
CisgICAgdGVybQorICA7CisKK2NhbGNfZnVuY19vcGVyYXRvcjoKKyAgICAnKycgV0hJVEVTUEFD
RSB7CisgICAgICAgICQkID0gJysnOworICAgIH0KKyAgfCAnLScgV0hJVEVTUEFDRSB7CisgICAg
ICAgICQkID0gJy0nOworICAgIH0KKyAgfCAnKicgbWF5YmVfc3BhY2UgeworICAgICAgICAkJCA9
ICcqJzsKKyAgICB9CisgIHwgJy8nIG1heWJlX3NwYWNlIHsKKyAgICAgICAgJCQgPSAnLyc7Cisg
ICAgfQorICB8IElERU5UIG1heWJlX3NwYWNlIHsKKyAgICAgICAgaWYgKGVxdWFsSWdub3JpbmdD
YXNlKCJtb2QiLCAkMS5jaGFyYWN0ZXJzLCAkMS5sZW5ndGgpKQorICAgICAgICAgICAgJCQgPSAn
JSc7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFlZRVJST1I7CisgICAgfQorICA7CisKK2Nh
bGNfZnVuY19wYXJlbl9leHByOgorICAgICcoJyBtYXliZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciBt
YXliZV9zcGFjZSAnKScgbWF5YmVfc3BhY2UgeworICAgICAgICAkJCA9ICQzOworICAgICAgICBp
ZiAoJCQpIHsKKyAgICAgICAgICAgIENTU1BhcnNlclZhbHVlIHY7CisgICAgICAgICAgICB2Lmlk
ID0gMDsKKyAgICAgICAgICAgIHYudW5pdCA9IENTU1BhcnNlclZhbHVlOjpPcGVyYXRvcjsKKyAg
ICAgICAgICAgIHYuaVZhbHVlID0gJygnOworICAgICAgICAgICAgJCQtPmluc2VydFZhbHVlQXQo
MCwgdik7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICcpJzsKKyAgICAgICAgICAgICQkLT5hZGRW
YWx1ZSh2KTsKKyAgICAgICAgfQorICAgIH0KKworY2FsY19mdW5jX2V4cHI6CisgICAgY2FsY19m
dW5jX3Rlcm0gbWF5YmVfc3BhY2UgeworICAgICAgICBDU1NQYXJzZXIqIHAgPSBzdGF0aWNfY2Fz
dDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICAkJCA9IHAtPmNyZWF0ZUZsb2F0aW5nVmFs
dWVMaXN0KCk7CisgICAgICAgICQkLT5hZGRWYWx1ZShwLT5zaW5rRmxvYXRpbmdWYWx1ZSgkMSkp
OworICAgIH0KKyAgfCBjYWxjX2Z1bmNfZXhwciBjYWxjX2Z1bmNfb3BlcmF0b3IgY2FsY19mdW5j
X3Rlcm0geworICAgICAgICBDU1NQYXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihw
YXJzZXIpOworICAgICAgICAkJCA9ICQxOworICAgICAgICBpZiAoJCQpIHsKKyAgICAgICAgICAg
IGlmICgkMikgeworICAgICAgICAgICAgICAgIENTU1BhcnNlclZhbHVlIHY7CisgICAgICAgICAg
ICAgICAgdi5pZCA9IDA7CisgICAgICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6
Ok9wZXJhdG9yOworICAgICAgICAgICAgICAgIHYuaVZhbHVlID0gJDI7CisgICAgICAgICAgICAg
ICAgJCQtPmFkZFZhbHVlKHYpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgJCQtPmFkZFZh
bHVlKHAtPnNpbmtGbG9hdGluZ1ZhbHVlKCQzKSk7CisgICAgICAgIH0KKyAgICB9CisgIHwgY2Fs
Y19mdW5jX2V4cHIgY2FsY19mdW5jX29wZXJhdG9yIGNhbGNfZnVuY19wYXJlbl9leHByIHsKKyAg
ICAgICAgJCQgPSAkMTsKKyAgICAgICAgaWYgKCQkKSB7CisgICAgICAgICAgICBpZiAoJDIpIHsK
KyAgICAgICAgICAgICAgICBDU1NQYXJzZXJWYWx1ZSB2OworICAgICAgICAgICAgICAgIHYuaWQg
PSAwOworICAgICAgICAgICAgICAgIHYudW5pdCA9IENTU1BhcnNlclZhbHVlOjpPcGVyYXRvcjsK
KyAgICAgICAgICAgICAgICB2LmlWYWx1ZSA9ICQyOworICAgICAgICAgICAgICAgICQkLT5hZGRW
YWx1ZSh2KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICgkMykKKyAgICAgICAgICAg
ICAgICAkJC0+YXBwZW5kKCooJDMpKTsKKyAgICAgICAgfQorICAgIH0KKyAgfCBjYWxjX2Z1bmNf
cGFyZW5fZXhwcgorICB8IGNhbGNfZnVuY19leHByIGVycm9yIHsKKyAgICAgICAgJCQgPSAwOwor
ICAgIH0KKyAgOworCitjYWxjX2Z1bmNfZXhwcl9saXN0OgorICAgIGNhbGNfZnVuY19leHByICB7
CisgICAgICAgICQkID0gJDE7CisgICAgfSAgICAKKyAgICB8IGNhbGNfZnVuY19leHByX2xpc3Qg
JywnIG1heWJlX3NwYWNlIGNhbGNfZnVuY19leHByIHsKKyAgICAgICAgJCQgPSAkMTsKKyAgICAg
ICAgaWYgKCQkKSB7CisgICAgICAgICAgICBDU1NQYXJzZXJWYWx1ZSB2OworICAgICAgICAgICAg
di5pZCA9IDA7CisgICAgICAgICAgICB2LnVuaXQgPSBDU1NQYXJzZXJWYWx1ZTo6T3BlcmF0b3I7
CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICcsJzsKKyAgICAgICAgICAgICQkLT5hZGRWYWx1ZSh2
KTsKKyAgICAgICAgICAgICQkLT5hcHBlbmQoKigkNCkpOworICAgICAgICB9CisgICAgfQorICAg
IAorCitjYWxjX2Z1bmN0aW9uOgorICAgIENBTENGVU5DVElPTiBtYXliZV9zcGFjZSBjYWxjX2Z1
bmNfZXhwciAnKScgbWF5YmVfc3BhY2UgeworICAgICAgICBDU1NQYXJzZXIqIHAgPSBzdGF0aWNf
Y2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBDU1NQYXJzZXJGdW5jdGlvbiogZiA9
IHAtPmNyZWF0ZUZsb2F0aW5nRnVuY3Rpb24oKTsKKyAgICAgICAgZi0+bmFtZSA9ICQxOworICAg
ICAgICBmLT5hcmdzID0gcC0+c2lua0Zsb2F0aW5nVmFsdWVMaXN0KCQzKTsKKyAgICAgICAgJCQu
aWQgPSAwOworICAgICAgICAkJC51bml0ID0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uOworICAg
ICAgICAkJC5mdW5jdGlvbiA9IGY7CisgICAgfQorICAgIHwgQ0FMQ0ZVTkNUSU9OIG1heWJlX3Nw
YWNlIGVycm9yIHsKKyAgICAgICAgQ1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFyc2Vy
Kj4ocGFyc2VyKTsKKyAgICAgICAgQ1NTUGFyc2VyRnVuY3Rpb24qIGYgPSBwLT5jcmVhdGVGbG9h
dGluZ0Z1bmN0aW9uKCk7CisgICAgICAgIGYtPm5hbWUgPSAkMTsKKyAgICAgICAgZi0+YXJncyA9
IDA7CisgICAgICAgICQkLmlkID0gMDsKKyAgICAgICAgJCQudW5pdCA9IENTU1BhcnNlclZhbHVl
OjpGdW5jdGlvbjsKKyAgICAgICAgJCQuZnVuY3Rpb24gPSBmOworICAgIH0KKyAgICA7CisKKwor
bWluX29yX21heDoKKyAgICBNSU5GVU5DVElPTiB7CisgICAgICAgICQkID0gJDE7CisgICAgfQor
ICAgIHwgTUFYRlVOQ1RJT04geworICAgICAgICAkJCA9ICQxOworICAgIH0KKyAgICA7CisKK21p
bl9vcl9tYXhfZnVuY3Rpb246CisgICAgbWluX29yX21heCBtYXliZV9zcGFjZSBjYWxjX2Z1bmNf
ZXhwcl9saXN0ICcpJyBtYXliZV9zcGFjZSB7CisgICAgICAgIENTU1BhcnNlciogcCA9IHN0YXRp
Y19jYXN0PENTU1BhcnNlcio+KHBhcnNlcik7CisgICAgICAgIENTU1BhcnNlckZ1bmN0aW9uKiBm
ID0gcC0+Y3JlYXRlRmxvYXRpbmdGdW5jdGlvbigpOworICAgICAgICBmLT5uYW1lID0gJDE7Cisg
ICAgICAgIGYtPmFyZ3MgPSBwLT5zaW5rRmxvYXRpbmdWYWx1ZUxpc3QoJDMpOworICAgICAgICAk
JC5pZCA9IDA7CisgICAgICAgICQkLnVuaXQgPSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb247Cisg
ICAgICAgICQkLmZ1bmN0aW9uID0gZjsKKyAgICB9IAorICAgIHwgbWluX29yX21heCBtYXliZV9z
cGFjZSBlcnJvciB7CisgICAgICAgIENTU1BhcnNlciogcCA9IHN0YXRpY19jYXN0PENTU1BhcnNl
cio+KHBhcnNlcik7CisgICAgICAgIENTU1BhcnNlckZ1bmN0aW9uKiBmID0gcC0+Y3JlYXRlRmxv
YXRpbmdGdW5jdGlvbigpOworICAgICAgICBmLT5uYW1lID0gJDE7CisgICAgICAgIGYtPmFyZ3Mg
PSAwOworICAgICAgICAkJC5pZCA9IDA7CisgICAgICAgICQkLnVuaXQgPSBDU1NQYXJzZXJWYWx1
ZTo6RnVuY3Rpb247CisgICAgICAgICQkLmZ1bmN0aW9uID0gZjsKKyAgICB9CisgICAgOworCiAv
KgogICogVGhlcmUgaXMgYSBjb25zdHJhaW50IG9uIHRoZSBjb2xvciB0aGF0IGl0IG11c3QKICAq
IGhhdmUgZWl0aGVyIDMgb3IgNiBoZXgtZGlnaXRzIChpLmUuLCBbMC05YS1mQS1GXSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJWYWx1ZXMuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAKaW5kZXggZGMwZTgyYmY5YzU5ZDFlNjQ3MDVk
N2VlNjA3ODEyNmRhZmIzMzVkYy4uODMxNWIyM2JjN2U0YThmNzFmZWVlOTFhZmRiYzUwMjhmNGQ3
M2Y0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAKQEAgLTQzLDEyICs0
MywyMyBAQCB2b2lkIENTU1BhcnNlclZhbHVlTGlzdDo6YWRkVmFsdWUoY29uc3QgQ1NTUGFyc2Vy
VmFsdWUmIHYpCiB7CiAgICAgbV92YWx1ZXMuYXBwZW5kKHYpOwogfQotICAgIAorCit2b2lkIENT
U1BhcnNlclZhbHVlTGlzdDo6aW5zZXJ0VmFsdWVBdCh1bnNpZ25lZCBpLCBjb25zdCBDU1NQYXJz
ZXJWYWx1ZSYgdikKK3sKKyAgICBtX3ZhbHVlcy5pbnNlcnQoaSwgdik7Cit9CisKIHZvaWQgQ1NT
UGFyc2VyVmFsdWVMaXN0OjpkZWxldGVWYWx1ZUF0KHVuc2lnbmVkIGkpCiB7IAogICAgIG1fdmFs
dWVzLnJlbW92ZShpKTsKIH0KIAordm9pZCBDU1NQYXJzZXJWYWx1ZUxpc3Q6OmFwcGVuZChDU1NQ
YXJzZXJWYWx1ZUxpc3QmIHJpZ2h0KQoreworICAgIGZvciAodW5zaWduZWQgaW50IGkgPSAwOyBp
IDwgcmlnaHQuc2l6ZSgpOyArK2kpCisgICAgICAgIG1fdmFsdWVzLmFwcGVuZCgqKHJpZ2h0LnZh
bHVlQXQoaSkpKTsKK30KKwogUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTUGFyc2VyVmFsdWU6OmNy
ZWF0ZUNTU1ZhbHVlKCkKIHsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IHBhcnNlZFZhbHVlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5oCmluZGV4IGQwODQwOTExYTQyYzc4OGYyNTNlYWNi
MDk1YzZjMTA5OTQxZGEyZDcuLmUyMTVkNWY4YWI3OGEyYjkwODE5ZmNjNTEyNmM4NjkwMDllYWVl
MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJWYWx1ZXMuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmgKQEAgLTcxLDcgKzcxLDkgQEAg
cHVibGljOgogICAgIH5DU1NQYXJzZXJWYWx1ZUxpc3QoKTsKICAgICAKICAgICB2b2lkIGFkZFZh
bHVlKGNvbnN0IENTU1BhcnNlclZhbHVlJik7CisgICAgdm9pZCBpbnNlcnRWYWx1ZUF0KHVuc2ln
bmVkLCBjb25zdCBDU1NQYXJzZXJWYWx1ZSYpOwogICAgIHZvaWQgZGVsZXRlVmFsdWVBdCh1bnNp
Z25lZCk7CisgICAgdm9pZCBhcHBlbmQoQ1NTUGFyc2VyVmFsdWVMaXN0JiByaWdodCk7CiAKICAg
ICB1bnNpZ25lZCBzaXplKCkgY29uc3QgeyByZXR1cm4gbV92YWx1ZXMuc2l6ZSgpOyB9CiAgICAg
Q1NTUGFyc2VyVmFsdWUqIGN1cnJlbnQoKSB7IHJldHVybiBtX2N1cnJlbnQgPCBtX3ZhbHVlcy5z
aXplKCkgPyAmbV92YWx1ZXNbbV9jdXJyZW50XSA6IDA7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy90b2tlbml6ZXIuZmxleCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90b2tlbml6ZXIu
ZmxleAppbmRleCBlYjE4Y2I5MGI0YzBiY2QxYmY0MzlhZjJhMmEzZjg0MzYzYTA1Njk5Li44OGZl
Njk4NmQwMmYwNjgyZjQyZmVlYWJmZjFmNmMwNDJiMzEyZDEwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvdG9rZW5pemVyLmZsZXgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3Rva2Vu
aXplci5mbGV4CkBAIC0xMDIsNiArMTAyLDcgQEAgbnRoICAgICAgICAgICAgIFtcKy1dP3tpbnRu
dW19Km4oW1x0XHJcbiBdKltcKy1dW1x0XHJcbiBdKntpbnRudW19KT8KIHtudW19SHogICAgICAg
ICAgICAgICAgIHt5eVRvayA9IEhFUlRaOyByZXR1cm4geXlUb2s7fQoge251bX1rSHogICAgICAg
ICAgICAgICAge3l5VG9rID0gS0hFUlRaOyByZXR1cm4geXlUb2s7fQoge251bX17aWRlbnR9ICAg
ICAgICAgICAge3l5VG9rID0gRElNRU47IHJldHVybiB5eVRvazt9Cit7bnVtfXtpZGVudH1cKyAg
ICAgICAgICB7eXlUb2sgPSBJTlZBTElERElNRU47IHJldHVybiB5eVRvazt9CiB7bnVtfSUrICAg
ICAgICAgICAgICAgICB7eXlUb2sgPSBQRVJDRU5UQUdFOyByZXR1cm4geXlUb2s7fQoge2ludG51
bX0gICAgICAgICAgICAgICAge3l5VG9rID0gSU5URUdFUjsgcmV0dXJuIHl5VG9rO30KIHtudW19
ICAgICAgICAgICAgICAgICAgIHt5eVRvayA9IEZMT0FUVE9LRU47IHJldHVybiB5eVRvazt9CkBA
IC0xMDksNiArMTEwLDkgQEAgbnRoICAgICAgICAgICAgIFtcKy1dP3tpbnRudW19Km4oW1x0XHJc
biBdKltcKy1dW1x0XHJcbiBdKntpbnRudW19KT8KICJub3QoIiAgICAgICAgICAgICAgICAgIHt5
eVRvayA9IE5PVEZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQogInVybCgie3d9e3N0cmluZ317d30i
KSIge3l5VG9rID0gVVJJOyByZXR1cm4geXlUb2s7fQogInVybCgie3d9e3VybH17d30iKSIgICAg
e3l5VG9rID0gVVJJOyByZXR1cm4geXlUb2s7fQorIi13ZWJraXQtY2FsYygiICAgICAgICAge3l5
VG9rID0gQ0FMQ0ZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQorIi13ZWJraXQtbWluKCIgICAgICAg
ICAge3l5VG9rID0gTUlORlVOQ1RJT047IHJldHVybiB5eVRvazt9CisiLXdlYmtpdC1tYXgoIiAg
ICAgICAgICB7eXlUb2sgPSBNQVhGVU5DVElPTjsgcmV0dXJuIHl5VG9rO30KIHtpZGVudH0iKCIg
ICAgICAgICAgICAgIHt5eVRvayA9IEZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQogCiBVXCt7cmFu
Z2V9ICAgICAgICAgICAgICB7eXlUb2sgPSBVTklDT0RFUkFOR0U7IHJldHVybiB5eVRvazt9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86407</attachid>
            <date>2011-03-21 19:17:35 -0700</date>
            <delta_ts>2011-03-23 18:07:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54412-20110322131732.patch</filename>
            <type>text/plain</type>
            <size>41919</size>
            <attacher name="Mike Lawther">mikelawther</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODEzMDgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzYzQ4YzdkM2FhMDllMjY3NmMzZTYx
N2UyYTQ0ZjI0OTNlNjM4NDczLi4yNGMzM2M1ZjVjYWNjNDk5ZmE4ZGM0NmU0OGE0NzdkYzYxNDdl
NmUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDMtMjEgIE1pa2UgTGF3dGhlciAgPG1p
a2VsYXd0aGVyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBmbGV4L2Jpc29uIHRva2VucyBhbmQgZ3JhbW1hciBmb3IgQ1NTIGNh
bGMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NDEy
CisKKyAgICAgICAgT25seSB0aGUgJ2Vycm9ycycgdGVzdHMgcGFzcyBhcyB1bHRpbWF0ZWx5IGlu
dGVuZGVkIHJpZ2h0IG5vdy4gQXMgb2YgdGhpcworICAgICAgICBwYXRjaCwgbm9uZSBvZiB0aGUg
YWN0dWFsIGNhbGN1bGF0aW9ucyBhcmUgZXhwZWN0ZWQgdG8gd29yaywgc2luY2Ugb25seQorICAg
ICAgICB0aGUgbGV4aW5nL2dyYW1tYXIgc3RhZ2UgaXMgcHJlc2VudC4KKworICAgICAgICAqIGNz
czMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMv
Y2FsYy9jYWxjLWVycm9ycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvbWlubWF4
LWVycm9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9taW5tYXgt
ZXJyb3JzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9zaW1wbGUtbWlubWF4LWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbDogQWRkZWQuCisK
IDIwMTEtMDMtMTYgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IE5ldyBiYXNlbGluZXMgYmVjYXVzZSB0aGUgcGxheSBidXR0b24gaXMgbm93IGEgcGF1c2UgYnV0
dG9uIGR1ZSB0byByODEzMDAuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvY2Fs
Yy1lcnJvcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMtZXJyb3Jz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYzgxNGY0ZTk4MjNlNWM2OTEwOGFlMmEyNGM0MzY0
NWMyOGQ3YmQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMt
ZXJyb3JzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUzIEBACitBbGwgYm94ZXMgYmVsb3cgc2hv
dWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdyZWVuLgorCit1bmNsb3NlZCBjYWxjID0+IFBBU1MK
K3VuY2xvc2VkIGNhbGMgd2l0aCBnYXJiYWdlID0+IFBBU1MKK2dhcmJhZ2UgPT4gUEFTUworemVy
byBkaXZpc2lvbiA9PiBQQVNTCitub24gbGVuZ3RoID0+IFBBU1MKK251bWJlciArIGxlbmd0aCA9
PiBQQVNTCitsZW5ndGggKyBudW1iZXIgPT4gUEFTUworcGVyY2VudCArIG51bWJlciA9PiBQQVNT
CitudW1iZXIgKyBwZXJjZW50ID0+IFBBU1MKK2xlbmd0aCAtIG51bWJlciA9PiBQQVNTCitudW1i
ZXIgLSBsZW5ndGggPT4gUEFTUworcGVyY2VudCAtIG51bWJlciA9PiBQQVNTCitudW1iZXIgLSBw
ZXJjZW50ID0+IFBBU1MKK2xlbmd0aCAqIGxlbmd0aCA9PiBQQVNTCitsZW5ndGggKiBwZXJjZW50
ID0+IFBBU1MKK3BlcmNlbnQgKiBsZW5ndGggPT4gUEFTUworcGVyY2VudCAqIHBlcmNlbnQgPT4g
UEFTUworbnVtYmVyIC8gbGVuZ3RoID0+IFBBU1MKK251bWJlciAvIHBlcmNlbnQgPT4gUEFTUwor
bGVuZ3RoIC8gbGVuZ3RoID0+IFBBU1MKK2xlbmd0aCAvIHBlcmNlbnQgPT4gUEFTUworcGVyY2Vu
dCAvIGxlbmd0aCA9PiBQQVNTCitwZXJjZW50IC8gcGVyY2VudCA9PiBQQVNTCitudW1iZXIgbW9k
IGxlbmd0aCA9PiBQQVNTCitudW1iZXIgbW9kIHBlcmNlbnQgPT4gUEFTUworbGVuZ3RoIG1vZCBs
ZW5ndGggPT4gUEFTUworbGVuZ3RoIG1vZCBwZXJjZW50ID0+IFBBU1MKK3BlcmNlbnQgbW9kIGxl
bmd0aCA9PiBQQVNTCitwZXJjZW50IG1vZCBwZXJjZW50ID0+IFBBU1MKK21vZDEwID0+IFBBU1MK
KzFtb2QgPT4gUEFTUworNzBweCs0MHB4IG5vIHdoaXRlc3BhY2UgYXJvdW5kICsgPT4gUEFTUwor
NzBweCArNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mICsgPT4gUEFTUworNzBweCsgNDBw
eCBubyB3aGl0ZXNwYWNlIG9uIGxlZnQgb2YgKyA9PiBQQVNTCis3MHB4Ky00MHB4IG5vIHdoaXRl
c3BhY2UgYXJvdW5kICsgPT4gUEFTUworNzBweC00MHB4IG5vIHdoaXRlc3BhY2UgYXJvdW5kIC0g
PT4gUEFTUworNzBweCAtNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mIC0gPT4gUEFTUwor
NzBweC0gNDBweCBubyB3aGl0ZXNwYWNlIG9uIGxlZnQgb2YgLSA9PiBQQVNTCis3MHB4LSs0MHB4
IG5vIHdoaXRlc3BhY2UgYXJvdW5kIC0gPT4gUEFTUwordG9vIG1hbnkgbmVzdHMgPT4gUEFTUwor
ZW5kIHdpdGggb3BlcmF0b3IgPT4gUEFTUworc3RhcnQgd2l0aCBvcGVyYXRvciA9PiBQQVNTCitu
byBleHByZXNzaW9ucyA9PiBQQVNTCit0b28gbWFueSBwbHVzZXMgPT4gUEFTUworbm8gYmluYXJ5
IG9wZXJhdG9yID0+IFBBU1MKK3R3byBiaW5hcnkgb3BlcmF0b3JzID0+IFBBU1MKK2ludmFsaWQg
b3BlcmF0b3IgJ0AnID0+IFBBU1MKK2ludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nID0+IFBBU1MKK2lu
dmFsaWQgb3BlcmF0b3IgJ0AnID0+IFBBU1MKK2ludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nID0+IFBB
U1MKK2ludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nIHdpdGggcGFyZW5zID0+IFBBU1MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9jYWxjL2NhbGMtZXJyb3JzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjBhMTU2YThkNWY0OGQzMjcx
NjM0NmUzNjA0YmJjZThkNTdmZWNjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Nz
czMvY2FsYy9jYWxjLWVycm9ycy5odG1sCkBAIC0wLDAgKzEsMTEwIEBACis8IURPQ1RZUEUgSFRN
TD4KKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisjdGVzdCBkaXYgeworICAgIGhlaWdodDogMTAw
cHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOworfQorPC9zdHlsZT4KKworPHA+CisgIEFs
bCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCis8L3A+CisK
KzxkaXYgaWQ9InRlc3QiPgorCis8IS0tIGp1c3QgcGxhaW4gYmFkIC0tPgorPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDsiPnVuY2xvc2VkIGNhbGM8L2Rpdj4K
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyggZmxpbTsiPnVu
Y2xvc2VkIGNhbGMgd2l0aCBnYXJiYWdlPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoIGZsaW0gKTsiPmdhcmJhZ2U8L2Rpdj4KKworCis8IS0tIHpl
cm8gZGl2aXNpb24gLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0
LWNhbGMoMWV4IC8gMCk7Ij56ZXJvIGRpdmlzaW9uPC9kaXY+CisKKzwhLS0gd3JvbmcgY29tYmlu
YXRpb24gLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMo
MjAwKTsiPm5vbiBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtY2FsYygxMCArIDEwcHgpOyI+bnVtYmVyICsgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTBweCArIDEwKTsiPmxlbmd0
aCArIG51bWJlcjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtp
dC1jYWxjKDEwJSArIDEwMCk7Ij5wZXJjZW50ICsgbnVtYmVyPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwICsgMTAlKTsiPm51bWJlciArIHBl
cmNlbnQ8L2Rpdj4KKworPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDMwMHB4IC0gMTAwKTsiPmxlbmd0aCAtIG51bWJlcjwvZGl2PgorPGRpdiBzdHlsZT0id2lk
dGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDMwMCAtIDEwMHB4KTsiPm51bWJlciAtIGxl
bmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxj
KDEwMCUgLSAxMCk7Ij5wZXJjZW50IC0gbnVtYmVyPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDog
MTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwIC0gMTAlKTsiPm51bWJlciAtIHBlcmNlbnQ8
L2Rpdj4KKworPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEw
cHgqMTAwcHgpOyI+bGVuZ3RoICogbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTBweCoxMDAlKTsiPmxlbmd0aCAqIHBlcmNlbnQ8L2Rp
dj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMCUqMTAw
cHgpOyI+cGVyY2VudCAqIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1jYWxjKDEwJSoxMDAlKTsiPnBlcmNlbnQgKiBwZXJjZW50PC9kaXY+CisK
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAvMTBweCk7
Ij5udW1iZXIgLyBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtY2FsYygxMDAvMTAlKTsiPm51bWJlciAvIHBlcmNlbnQ8L2Rpdj4KKzxkaXYgc3R5
bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDBweC8xMHB4KTsiPmxlbmd0
aCAvIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtp
dC1jYWxjKDEwMHB4LzEwJSk7Ij5sZW5ndGggLyBwZXJjZW50PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJS8xMHB4KTsiPnBlcmNlbnQgLyBs
ZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2Fs
YygxMDAlLzEwJSk7Ij5wZXJjZW50IC8gcGVyY2VudDwvZGl2PgorCis8ZGl2IHN0eWxlPSJ3aWR0
aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwIG1vZCAxMHB4KTsiPm51bWJlciBtb2Qg
bGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNh
bGMoMTAwIG1vZCAxMCUpOyI+bnVtYmVyIG1vZCBwZXJjZW50PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHggbW9kIDEwcHgpOyI+bGVuZ3Ro
IG1vZCBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJr
aXQtY2FsYygxMDBweCBtb2QgMTAlKTsiPmxlbmd0aCBtb2QgcGVyY2VudDwvZGl2PgorPGRpdiBz
dHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgbW9kIDEwcHgpOyI+
cGVyY2VudCBtb2QgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LWNhbGMoMTAwJSBtb2QgMTAlKTsiPnBlcmNlbnQgbW9kIHBlcmNlbnQ8L2Rpdj4K
KworPCEtLSBtb2QsICssIC0gcmVxdWlyZSB3aGl0ZXNwYWNlcyBhcm91bmQgdGhlIG9wZXJhdG9y
IC0tPgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEgbW9k
MTAgKiAyMDBweCk7Ij5tb2QxMCA8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtY2FsYygxbW9kIDEwICogMjAwcHgpOyI+MW1vZDwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDcwcHgrNDBweCk7Ij43MHB4KzQw
cHggbm8gd2hpdGVzcGFjZSBhcm91bmQgKyA8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBw
eDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4ICs0MHB4KTsiPjcwcHggKzQwcHggbm8gd2hpdGVz
cGFjZSBvbiByaWdodCBvZiArPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LWNhbGMoNzBweCsgNDBweCk7Ij43MHB4KyA0MHB4IG5vIHdoaXRlc3BhY2Ugb24g
bGVmdCBvZiArPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0
LWNhbGMoNzBweCstNDBweCk7Ij43MHB4Ky00MHB4IG5vIHdoaXRlc3BhY2UgYXJvdW5kICsgPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweC00
MHB4KTsiPjcwcHgtNDBweCBubyB3aGl0ZXNwYWNlIGFyb3VuZCAtIDwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDcwcHggLTQwcHgpOyI+NzBweCAt
NDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mIC08L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRo
OiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4LSA0MHB4KTsiPjcwcHgtIDQwcHggbm8g
d2hpdGVzcGFjZSBvbiBsZWZ0IG9mIC08L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsg
d2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4LSs0MHB4KTsiPjcwcHgtKzQwcHggbm8gd2hpdGVzcGFj
ZSBhcm91bmQgLSA8L2Rpdj4KKworPCEtLSB0b28gbWFueSBuZXN0cyBzaG91bGQgYmUgcmVqZWN0
ZWQgdG8gYXZvaWQgc3RhY2sgb3ZlcmZsb3cgLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgyMDBweCkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKTsi
PnRvbyBtYW55IG5lc3RzPC9kaXY+CisgCis8IS0tIGludmFsaWQgZm9ybXVsYXMgLS0+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHgqKTsiPmVuZCB3
aXRoIG9wZXJhdG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LWNhbGMoKyArMjAwcHgpOyI+c3RhcnQgd2l0aCBvcGVyYXRvcjwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKCk7Ij5ubyBleHByZXNzaW9uczwv
ZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4
ICsgKyArMTAwcHgpOyI+dG9vIG1hbnkgcGx1c2VzPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDog
MTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHggMjAwcHgpOyI+bm8gYmluYXJ5IG9wZXJh
dG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMo
MTAwcHggKiAqIDIpOyI+dHdvIGJpbmFyeSBvcGVyYXRvcnM8L2Rpdj4KKzxkaXYgc3R5bGU9Indp
ZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDBweCBAIDIpOyI+aW52YWxpZCBvcGVy
YXRvciAnQCc8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQt
Y2FsYygxIGZsaW0gMik7Ij5pbnZhbGlkIG9wZXJhdG9yICdmbGltJzwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4IEAgMik7Ij5pbnZhbGlk
IG9wZXJhdG9yICdAJzwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdl
YmtpdC1jYWxjKDEgZmxpbSAyKTsiPmludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nPC9kaXY+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMSBmbGltICgyKSk7Ij5p
bnZhbGlkIG9wZXJhdG9yICdmbGltJyB3aXRoIHBhcmVuczwvZGl2PgorIAorIAorPC9kaXY+CisK
KzxzY3JpcHQ+CitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICB2YXIgdGVzdCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJ0ZXN0Iik7CisgICAgZm9yICh2YXIgZWxlbWVudCA9IHRlc3QuZmlyc3RD
aGlsZDsgZWxlbWVudDsgZWxlbWVudCA9IGVsZW1lbnQubmV4dFNpYmxpbmcpIHsKKyAgICAgICAg
dmFyIHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDsKKyAgICAgICAgdmFyIGVycm9yID0gW107
CisgICAgICAgIGlmICh3aWR0aCAhPSAxMDApCisgICAgICAgICAgICBlcnJvci5wdXNoKCJleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgIiArIHdpZHRoKTsKKyAgICAgICAgdmFyIGhlaWdo
dCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0OworICAgICAgICBpZiAoaGVpZ2h0ICE9IDEwMCkKKyAg
ICAgICAgICAgIGVycm9yLnB1c2goImV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgIiAr
IHdpZHRoKTsKKworICAgICAgICBpZiAoZXJyb3IgPT0gIiIpIHsKKyAgICAgICAgICAgIGVsZW1l
bnQuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gImdyZWVuIjsKKyAgICAgICAgICAgIGVsZW1lbnQu
aW5uZXJIVE1MICs9ICIgPT4gUEFTUyI7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBl
bGVtZW50LmlubmVySFRNTCArPSAiID0+IEZBSUw6ICIgKyBlcnJvci5qb2luKCIsICIpOworICAg
ICAgICB9CisgICAgfQorfQoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cit0ZXN0KCk7Cis8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9taW5tYXgtZXJyb3JzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9taW5tYXgtZXJyb3JzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41ZDU3MDdmYTljNDIyNzM3MDUwYTQ3ZDIyYzM0YTI4MWVkN2EzZmRlCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL21pbm1heC1lcnJvcnMtZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMjEgQEAKK0FsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAx
MDBweCBhbmQgZ3JlZW4uCisKK01JTgordW5jbG9zZWQgbWluID0+IFBBU1MKK3VuY2xvc2VkIG1p
biB3aXRoIGdhcmJhZ2UgPT4gUEFTUworZ2FyYmFnZSA9PiBQQVNTCitleHRyYSB0cmFpbGluZyBj
b21tYSA9PiBQQVNTCitsZWFkaW5nIGNvbW1hID0+IFBBU1MKK3RyYWlsaW5nIGdhcmJhZ2UgPT4g
UEFTUworYmFkIGV4cHJlc3Npb24gPT4gUEFTUworbWl4IGxlbmd0aCBhbmQgbnVtYmVyID0+IFBB
U1MKK21peCBudW1iZXIgYW5kIGxlbmd0aCA9PiBQQVNTCittaXggcGVyY2VudCBhbmQgbnVtYmVy
ID0+IFBBU1MKK21peCBudW1iZXIgYW5kIHBlcmNlbnQgPT4gUEFTUworTUFYCit1bmNsb3NlZCBt
YXggPT4gUEFTUwordW5jbG9zZWQgbWF4IHdpdGggZ2FyYmFnZSA9PiBQQVNTCittaXggbGVuZ3Ro
IGFuZCBudW1iZXIgPT4gUEFTUworbWl4IG51bWJlciBhbmQgbGVuZ3RoID0+IFBBU1MKK21peCBw
ZXJjZW50IGFuZCBudW1iZXIgPT4gUEFTUworbWl4IG51bWJlciBhbmQgcGVyY2VudCA9PiBQQVNT
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbWlubWF4LWVycm9ycy5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL21pbm1heC1lcnJvcnMuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YmE2
MGY2ZTAxN2Q0NzQ2MTUxN2Y5MGExMDg5YWU0ZDg2MzAzODdiCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL21pbm1heC1lcnJvcnMuaHRtbApAQCAtMCwwICsxLDYzIEBA
Cis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisjdGVzdCBkaXYgewor
ICAgIGhlaWdodDogMTAwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOworfQorPC9zdHls
ZT4KKworPHA+CisgIEFsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQg
Z3JlZW4uCis8L3A+CisKKzxkaXYgaWQ9InRlc3QiPgorCitNSU4KKzxkaXYgc3R5bGU9IndpZHRo
OiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKCI+dW5jbG9zZWQgbWluPC9kaXY+Cis8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbiggYm9iIj51bmNsb3NlZCBtaW4g
d2l0aCBnYXJiYWdlPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LW1pbiggYm9iICk7Ij5nYXJiYWdlPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LW1pbigyMHB4LCk7Ij5leHRyYSB0cmFpbGluZyBjb21tYTwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oLDIwcHgpOyI+bGVh
ZGluZyBjb21tYTwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtp
dC1taW4oMjBweCwgYm9iKTsiPnRyYWlsaW5nIGdhcmJhZ2U8L2Rpdj4KKzxkaXYgc3R5bGU9Indp
ZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJtaXQtbWluKDIwcHgsIDEwcHggKyBmbGltKTsiPmJhZCBl
eHByZXNzaW9uPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0
LW1pbigyNTZweCwgMTIwKTsiPm1peCBsZW5ndGggYW5kIG51bWJlcjwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oMjU2LCAxMjBweCk7Ij5taXggbnVt
YmVyIGFuZCBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13
ZWJraXQtbWluKDUwJSwgMTUwKTsiPm1peCBwZXJjZW50IGFuZCBudW1iZXI8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKDE1MCwgNTAlKTsiPm1peCBu
dW1iZXIgYW5kIHBlcmNlbnQ8L2Rpdj4KKworTUFYCis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LW1heCgiPnVuY2xvc2VkIG1heDwvZGl2PgorPGRpdiBzdHlsZT0id2lk
dGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1tYXgoIGJvYiI+dW5jbG9zZWQgbWF4IHdpdGggZ2Fy
YmFnZTwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1tYXgo
MjU2cHgsIDEyMCk7Ij5taXggbGVuZ3RoIGFuZCBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9Indp
ZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWF4KDI1NiwgMTIwcHgpOyI+bWl4IG51bWJlciBh
bmQgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0
LW1heCg1MCUsIDE1MCk7Ij5taXggcGVyY2VudCBhbmQgbnVtYmVyPC9kaXY+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1heCgxNTAsIDUwJSk7Ij5taXggbnVtYmVy
IGFuZCBwZXJjZW50PC9kaXY+CisKKzwvZGl2PgorCis8c2NyaXB0PgorZnVuY3Rpb24gdGVzdCgp
Cit7CisgICAgdmFyIHRlc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpOworICAg
IGZvciAodmFyIGVsZW1lbnQgPSB0ZXN0LmZpcnN0Q2hpbGQ7IGVsZW1lbnQ7IGVsZW1lbnQgPSBl
bGVtZW50Lm5leHRTaWJsaW5nKSB7CisgICAgICAgIHZhciB3aWR0aCA9IGVsZW1lbnQub2Zmc2V0
V2lkdGg7CisgICAgICAgIHZhciBlcnJvciA9IFtdOworICAgICAgICBpZiAod2lkdGggIT0gMTAw
KQorICAgICAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
ICIgKyB3aWR0aCk7CisgICAgICAgIHZhciBoZWlnaHQgPSBlbGVtZW50Lm9mZnNldEhlaWdodDsK
KyAgICAgICAgaWYgKGhlaWdodCAhPSAxMDApCisgICAgICAgICAgICBlcnJvci5wdXNoKCJleHBl
Y3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7CisKKyAgICAgICAgaWYgKGVy
cm9yID09ICIiKSB7CisgICAgICAgICAgICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9
ICJncmVlbiI7CisgICAgICAgICAgICBlbGVtZW50LmlubmVySFRNTCArPSAiID0+IFBBU1MiOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBG
QUlMOiAiICsgZXJyb3Iuam9pbigiLCAiKTsKKyAgICAgICAgfQorICAgIH0KK30KKworaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7Cit0ZXN0KCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvY2FsYy9zaW1wbGUtY2FsY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxj
L3NpbXBsZS1jYWxjcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDUwZjljZjcyZjRjMzg0Zjhj
ZTY2NjM4Yjc2YWU3YmUxOGMwZjI1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Nz
czMvY2FsYy9zaW1wbGUtY2FsY3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDkgQEAKK0FsbCBi
b3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCisKK2NvbnRyb2wg
PT4gUEFTUworNTBweCArIDUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxNTBweCAt
IDUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4ICsgNTBweCAoMiBzcGFjZXMg
YXJvdW5kIG9wZXJhdG9yKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzE1MHB4IC0gNTBw
eCAoMiBzcGFjZXMgYXJvdW5kIG9wZXJhdG9yKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYK
KzUwcHgqMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0y
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKjIgPT4gRkFJTDogQHpv
b209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2Cis1MHB4KiAyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMjAw
cHgvMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIwMHB4IC8yID0+IEZBSUw6IEB6b29t
PTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NgorMjAwcHgvIDIgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4
KigyKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKigyKSA9PiBGQUlMOiBAem9v
bT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTYKKzUwcHgqICgyKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUw
cHgqKDEgKyAxKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgqKDEyIC0gMTApID0+
IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209
MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCooMTAgLyA1KSA9PiBGQUlMOiBAem9vbT0x
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTYKKzEwcHgqICg1ICogMikgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1
MHB4KiAoMTIgbW9kIDEwKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyAxMHB4
ICogNSAob3BlcmF0aW9uIG9yZGVyKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzExMDBw
eCBtb2QgMTAwMCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzEwMCUvMiAod2hlcmUgMTAw
JSBpcyAyMDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMDAlICsgLTEwMHB4ICh3
aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzgwJSAtIDYw
cHggKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMzAw
cHggLSAxMDAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTYKKy0xMDBweCArIDEwMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29tPTEg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NgorMjAlICsgMzAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9v
bT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTYKKzgwJSAtIDMwJSAod2hlcmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJTDog
QHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2CisxMCUgKiA1ICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlM
OiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUgKiAxMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZB
SUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4y
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NgorKDEwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTYKKyg1MHB4ICsgNTBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisoNTBweCkgKyA1
MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Njsg
QHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCArICg1MHB4KSA9PiBGQUlMOiBA
em9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorNTBweCArIDI1cHggKiAyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorKDI1cHggKyAy
NXB4KSAqIDIgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209
MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisyICogNTBweCA9PiBGQUlMOiBA
em9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKKzIgKiAxMDBweCAvIDIgPT4gRkFJTDogQHpvb209MSBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2CisxMiBtb2QgMTAgKiA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorKDFlbSAt
IDFlbSkgKyAxMDBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBA
em9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyArNTBweCA9
PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29t
PTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKy01MHB4ICsgMTUwcHggPT4gRkFJTDogQHpvb209
MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2CistNTBweCAtIC0xNTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYK
KygoKCgoKCgxMDBweCkpKSkpKSkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMDBweCA9
PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTA7IEB6b29t
PTEuMiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUwOyBAem9vbT0yIGV4cGVjdGVk
IGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTAKKzEwMCUgKiAyID0+IEZBSUw6IEB6b29tPTEgZXhw
ZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyA1MDsgQHpvb209MS4yIGV4cGVjdGVkIGhlaWdo
dCBvZiAxMDAsIGJ1dCB3YXMgNTA7IEB6b29tPTIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0
IHdhcyA1MApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy5o
dG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmY5ZmRlMzlmZGU3MTA2NWViYmY5OGZhNTM3YWE5MjlmMzdjMjQ0NWIKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWwKQEAgLTAsMCArMSwx
MzAgQEAKKzwhRE9DVFlQRSBIVE1MPg0KKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQorLndpZHRo
LXRlc3Qgew0KKyAgICBoZWlnaHQ6IDEwMHB4Ow0KKyAgICB3aWR0aDogMjU2cHg7DQorICAgIGJh
Y2tncm91bmQtY29sb3I6IHJlZDsNCit9DQorDQorLmhlaWdodC10ZXN0IHsNCisgICAgd2lkdGg6
IDEwMHB4Ow0KKyAgICBoZWlnaHQ6IDUwcHg7DQorICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsN
Cit9DQorPC9zdHlsZT4NCisNCis8cD4NCisgIEFsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAw
cHggKiAxMDBweCBhbmQgZ3JlZW4uDQorPC9wPg0KKw0KKzxkaXYgaWQ9InRlc3QiPg0KKzxkaXYg
c3R5bGU9IndpZHRoOjEwMHB4OyBoZWlnaHQ6MTAwcHg7Ij5jb250cm9sPC9kaXY+DQorPGRpdiBj
bGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCArIDUwcHgp
OyI+NTBweCArIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYygxNTBweCAtIDUwcHgpOyI+MTUwcHggLSA1MHB4PC9kaXY+DQorPGRp
diBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCAgKyAg
NTBweCk7Ij41MHB4ICArICA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3BlcmF0b3IpPC9kaXY+DQor
PGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMTUwcHgg
IC0gIDUwcHgpOyI+MTUwcHggIC0gNTBweCAoMiBzcGFjZXMgYXJvdW5kIG9wZXJhdG9yKTwvZGl2
Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUw
cHgqMik7Ij41MHB4KjI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYyg1MHB4ICoyKTsiPjUwcHggKjI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4KiAyKTsiPjUwcHgqIDI8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
YygyMDBweC8yKTsiPjIwMHB4LzI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtY2FsYygyMDBweCAvMik7Ij4yMDBweCAvMjwvZGl2Pg0KKzxkaXYg
Y2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDIwMHB4LyAyKTsi
PjIwMHB4LyAyPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWNhbGMoNTBweCooMikpOyI+NTBweCooMik8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0
aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICooMikpOyI+NTBweCAqKDIp
PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNh
bGMoNTBweCogKDIpKTsiPjUwcHgqICgyKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqKDEgKyAxKSk7Ij41MHB4KigxICsgMSk8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
Yyg1MHB4KigxMiAtIDEwKSk7Ij41MHB4KigxMiAtIDEwKTwvZGl2Pg0KKzxkaXYgY2xhc3M9Indp
ZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqKDEwIC8gNSkpOyI+NTBw
eCooMTAgLyA1KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1jYWxjKDEwcHgqICg1ICogMikpOyI+MTBweCogKDUgKiAyKTwvZGl2Pg0KKzxkaXYg
Y2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqICgxMiBt
b2QgMTApKTsiPjUwcHgqICgxMiBtb2QgMTApPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVz
dCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCArIDEwcHggKiA1KTsiPjUwcHggKyAx
MHB4ICogNSAob3BlcmF0aW9uIG9yZGVyKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDExMDBweCBtb2QgMTAwMCk7Ij4xMTAwcHggbW9k
IDEwMDA8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6
IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBz
dHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMDAlLzIpOyI+MTAwJS8yICh3aGVyZSAxMDAlIGlz
IDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dy
b3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9Indp
ZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgKyAtMTAwcHgpOyI+MTAw
JSArIC0xMDBweCAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0
eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBw
ZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
Y2FsYyg4MCUgLSA2MHB4KTsiPjgwJSAtIDYwcHggKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9kaXY+
DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3
aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5
bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMzAwcHggLSAxMDAlKTsiPjMwMHB4IC0gMTAwJSAod2hl
cmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAw
cHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygtMTAwcHggKyAx
MDAlKTsiPi0xMDBweCArIDEwMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+
DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNs
YXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRo
OiAtd2Via2l0LWNhbGMoMjAlICsgMzAlKTsiPjIwJSArIDMwJSAod2hlcmUgMTAwJSBpcyAyMDBw
eCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQt
Y29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg4MCUgLSAzMCUpOyI+ODAlIC0gMzAlICh3
aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAy
MDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxk
aXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDEwJSAqIDUp
OyI+MTAlICogNSAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0
eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBw
ZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
Y2FsYyg1ICogMTAlKTsiPjUgKiAxMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9kaXY+DQorPC9k
aXY+DQorPCEtLQ0KKyBGSVhNRTogd2hhdCBkbyB3ZSBkbyB3aXRoIG1vZCBvZiBwZXJjZW50Pw0K
KzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFz
cz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1jYWxjKDc1JSBtb2QgMTAwKTsiPjE1MCUgbW9kIDEwMCAod2hlcmUgMTAwJSBpcyAy
MDBweCk8L2Rpdj4NCis8L2Rpdj4NCistLT4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtY2FsYygoMTAwcHgpKTsiPigxMDBweCk8L2Rpdj4NCis8ZGl2IGNs
YXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoNTBweCArIDUwcHgp
KTsiPig1MHB4ICsgNTBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtY2FsYygoNTBweCkgKyA1MHB4KTsiPig1MHB4KSArIDUwcHg8L2Rpdj4N
Cis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4
ICsgKDUwcHgpKTsiPjUwcHggKyAoNTBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyggNTBweCArICA1MHB4ICk7Ij4gNTBweCArICA1
MHB4IDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1jYWxjKCA1MHB4ICsgMjVweCAqIDIgKTsiPiA1MHB4ICsgMjVweCAqIDIgPC9kaXY+DQorPGRp
diBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoICgyNXB4ICsg
MjVweCkgKiAyICk7Ij4gKDI1cHggKyAyNXB4KSAqIDIgPC9kaXY+DQorPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMiAqIDUwcHgpOyI+MiAqIDUwcHg8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
YygyICogMTAwcHggLyAyKTsiPjIgKiAxMDBweCAvIDI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0
aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMiBtb2QgMTAgKiA1MHB4KTsiPjEy
IG1vZCAxMCAqIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYygoMWVtIC0gMWVtKSArIDEwMHB4KTsiPigxZW0gLSAxZW0pICsgMTAw
cHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
Y2FsYyg1MHB4ICsgICs1MHB4KTsiPjUwcHggKyAgKzUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygtNTBweCArIDE1MHB4KTsiPi01
MHB4ICsgMTUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6
IC13ZWJraXQtY2FsYygtNTBweCAtIC0xNTBweCk7Ij4tNTBweCAtIC0xNTBweDwvZGl2Pg0KKzxk
aXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKCgoKCgoKCgx
MDBweCkpKSkpKSkpOyI+KCgoKCgoKDEwMHB4KSkpKSkpKTwvZGl2Pg0KKzxkaXYgY2xhc3M9Imhl
aWdodC10ZXN0IiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LWNhbGMoMTAwcHgpOyI+MTAwcHg8L2Rp
dj4NCis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIg
Y2xhc3M9IndyYXBwZXIiPg0KKyAgPGRpdiBjbGFzcz0iaGVpZ2h0LXRlc3QiIHN0eWxlPSJoZWln
aHQ6IC13ZWJraXQtY2FsYygxMDAlICogMik7Ij4xMDAlICogMjwvZGl2Pg0KKzwvZGl2Pg0KKzwv
ZGl2Pg0KKw0KKzxzY3JpcHQ+DQorZnVuY3Rpb24gdGVzdCh6b29tTGV2ZWxzKQ0KK3sNCisgICAg
dmFyIHRlc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpOw0KKyAgICBmb3IgKHZh
ciBjaGlsZCA9IHRlc3QuZmlyc3RDaGlsZDsgY2hpbGQ7IGNoaWxkID0gY2hpbGQubmV4dFNpYmxp
bmcpIHsNCisgICAgICAgIHZhciBlbGVtZW50ID0gY2hpbGQ7DQorICAgICAgICBpZiAoZWxlbWVu
dC5jbGFzc05hbWUgPT0gIndyYXBwZXIiKSB7DQorICAgICAgICAgICAgZWxlbWVudCA9IGVsZW1l
bnQuZmlyc3RDaGlsZDsNCisgICAgICAgICAgICB3aGlsZSAoZWxlbWVudC50YWdOYW1lICE9ICJE
SVYiKSBlbGVtZW50ID0gZWxlbWVudC5uZXh0U2libGluZzsNCisgICAgICAgIH0NCisNCisgICAg
ICAgIHZhciBlcnJvciA9IFtdOw0KKyAgICAgICAgZm9yICh2YXIgeiA9IDA7IHogPCB6b29tTGV2
ZWxzLmxlbmd0aDsgeisrKSB7DQorICAgICAgICAgICAgdmFyIHpvb20gPSB6b29tTGV2ZWxzW3pd
Ow0KKyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUuem9vbSA9IHpvb207DQorICAgICAg
ICAgICAgdmFyIHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDsNCisgICAgICAgICAgICBpZiAo
d2lkdGggIT0gMTAwKQ0KKyAgICAgICAgICAgICAgICBlcnJvci5wdXNoKCJAem9vbT0iICsgem9v
bSArICIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7DQorICAgICAg
ICAgICAgdmFyIGhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0Ow0KKyAgICAgICAgICAgIGlm
IChoZWlnaHQgIT0gMTAwKQ0KKyAgICAgICAgICAgICAgICBlcnJvci5wdXNoKCJAem9vbT0iICsg
em9vbSArICIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyAiICsgaGVpZ2h0KTsNCisg
ICAgICAgIH0NCisgICAgICAgIGlmIChlcnJvciA9PSAiIikgew0KKyAgICAgICAgICAgIGVsZW1l
bnQuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gImdyZWVuIjsNCisgICAgICAgICAgICBlbGVtZW50
LmlubmVySFRNTCArPSAiID0+IFBBU1MiOw0KKyAgICAgICAgfSBlbHNlDQorICAgICAgICAgICAg
ZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBGQUlMOiAiICsgZXJyb3Iuam9pbigiOyAiKTsNCisg
ICAgfQ0KKyAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnpvb20gPSAxOw0KK30NCisNCitpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQ0KKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7DQordGVzdChbMSwgMS4yLCAyXSkNCis8L3NjcmlwdD4NCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzU5
NjY5MDljYWE4MzJiYTMxNDBkMTlhNzkzMmIzZTZiZjNhMjZiMAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtbWlubWF4LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDE4IEBACitBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdy
ZWVuLgorCittaW4oMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKK21pbiggMTAwcHggKSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2CittaW4oKCgoMTAwcHgpKSkpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTYKK21pbigxNTBweCwxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NgorbWluKDE1MHB4LDEwMHB4LDIwMHB4KSA9PiBGQUlMOiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oIDE1MHB4ICwgMTAwcHggLDIwMHB4KSA9
PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oOTBweCArIDUw
cHggLDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Citt
aW4oMTAwJSwxMDBweCkgLSB3aGVyZSAxMDAlIGlzIDIwMHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbigxMDBweCwxMDAlKSAtIHdoZXJlIDEwMCUgaXMg
MjAwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDEw
MHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoNTBw
eCwxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4
KDUwcHgsMTAwcHgsMjBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NgorbWF4KDEyMHB4IC0gNTBweCwxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NgorbWF4KDEwMCUsMTAwcHgpIC0gd2hlcmUgMTAwJSBpcyA1MHB4ID0+
IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21heCgxMDBweCwxMDAl
KSAtIHdoZXJlIDEwMCUgaXMgNTBweCA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2CittaW4oMjAwcHgsMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIGhlaWdodCBvZiAx
MDAsIGJ1dCB3YXMgNTAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUt
bWlubWF4Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjc2NzkzMGY4MWI1YjdjZTVjMmUxM2I1NGExNWZmNWU0OGYwM2M4YzYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sCkBA
IC0wLDAgKzEsODEgQEAKKzwhRE9DVFlQRSBIVE1MPg0KKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+
DQorLndpZHRoLXRlc3Qgew0KKyAgICBoZWlnaHQ6IDEwMHB4Ow0KKyAgICB3aWR0aDogMjU2cHg7
DQorICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsNCit9DQorDQorLmhlaWdodC10ZXN0IHsNCisg
ICAgd2lkdGg6IDEwMHB4Ow0KKyAgICBoZWlnaHQ6IDUwcHg7DQorICAgIGJhY2tncm91bmQtY29s
b3I6IHJlZDsNCit9DQorPC9zdHlsZT4NCisNCis8cD4NCisgIEFsbCBib3hlcyBiZWxvdyBzaG91
bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uDQorPC9wPg0KKw0KKzxkaXYgaWQ9InRlc3Qi
Pg0KKw0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1taW4o
MTAwcHgpOyI+bWluKDEwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1taW4oIDEwMHB4ICk7Ij5taW4oIDEwMHB4ICk8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKCgoKDEwMHB4KSkp
KTsiPm1pbigoKCgxMDBweCkpKSk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtbWluKDE1MHB4LDEwMHB4KTsiPm1pbigxNTBweCwxMDBweCk8L2Rp
dj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDE1
MHB4LDEwMHB4LDIwMHB4KTsiPm1pbigxNTBweCwxMDBweCwyMDBweCk8L2Rpdj4NCis8ZGl2IGNs
YXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKCAgMTUwcHggLCAgMTAw
cHggICwyMDBweCk7Ij5taW4oICAxNTBweCAgLCAgMTAwcHggICwyMDBweCk8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDkwcHggKyA1MHB4
ICwxMDBweCk7Ij5taW4oOTBweCArIDUwcHggLDEwMHB4KTwvZGl2Pg0KKzxkaXYgc3R5bGU9Indp
ZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQor
ICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDEwMCUs
MTAwcHgpOyI+bWluKDEwMCUsMTAwcHgpIC0gd2hlcmUgMTAwJSBpcyAyMDBweDwvZGl2Pg0KKzwv
ZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7
IiBjbGFzcz0id3JhcHBlciI+DQorICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtbWluKDEwMHB4LDEwMCUpOyI+bWluKDEwMHB4LDEwMCUpIC0gd2hlcmUgMTAw
JSBpcyAyMDBweDwvZGl2Pg0KKzwvZGl2Pg0KKw0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTAwcHgpOyI+bWF4KDEwMHB4KTwvZGl2Pg0KKzxkaXYg
Y2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoNTBweCwxMDBweCk7
Ij5tYXgoNTBweCwxMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtbWF4KDUwcHgsMTAwcHgsMjBweCk7Ij5tYXgoNTBweCwxMDBweCwyMHB4
KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1t
YXgoMTIwcHggLSA1MHB4LDEwMHB4KTsiPm1heCgxMjBweCAtIDUwcHgsMTAwcHgpPC9kaXY+DQor
PGRpdiBzdHlsZT0id2lkdGg6IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9
IndyYXBwZXIiPg0KKyAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Vi
a2l0LW1heCgxMDAlLDEwMHB4KTsiPm1heCgxMDAlLDEwMHB4KSAtIHdoZXJlIDEwMCUgaXMgNTBw
eDwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiA1MHB4OyBiYWNrZ3JvdW5kLWNv
bG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTAwcHgsMTAwJSk7Ij5tYXgoMTAwcHgsMTAwJSkg
LSB3aGVyZSAxMDAlIGlzIDUwcHg8L2Rpdj4NCis8L2Rpdj4NCisNCis8ZGl2IGNsYXNzPSJoZWln
aHQtdGVzdCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1taW4oMjAwcHgsIDEwMHB4KTsiPm1pbigy
MDBweCwxMDBweCk8L2Rpdj4NCisNCis8L2Rpdj4NCisNCis8c2NyaXB0Pg0KK2Z1bmN0aW9uIHRl
c3QoKQ0KK3sNCisgICAgdmFyIHRlc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIp
Ow0KKyAgICBmb3IgKHZhciBjaGlsZCA9IHRlc3QuZmlyc3RDaGlsZDsgY2hpbGQ7IGNoaWxkID0g
Y2hpbGQubmV4dFNpYmxpbmcpIHsNCisgICAgICAgIHZhciBlbGVtZW50ID0gY2hpbGQ7DQorICAg
ICAgICBpZiAoZWxlbWVudC5jbGFzc05hbWUgPT0gIndyYXBwZXIiKSB7DQorICAgICAgICAgICAg
ZWxlbWVudCA9IGVsZW1lbnQuZmlyc3RDaGlsZDsNCisgICAgICAgICAgICB3aGlsZSAoZWxlbWVu
dC50YWdOYW1lICE9ICJESVYiKSBlbGVtZW50ID0gZWxlbWVudC5uZXh0U2libGluZzsNCisgICAg
ICAgIH0NCisNCisgICAgICAgIHZhciB3aWR0aCA9IGVsZW1lbnQub2Zmc2V0V2lkdGg7DQorICAg
ICAgICB2YXIgZXJyb3IgPSBbXTsNCisgICAgICAgIGlmICh3aWR0aCAhPSAxMDApDQorICAgICAg
ICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0
aCk7DQorICAgICAgICB2YXIgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7DQorICAgICAg
ICBpZiAoaGVpZ2h0ICE9IDEwMCkNCisgICAgICAgICAgICBlcnJvci5wdXNoKCJleHBlY3RlZCBo
ZWlnaHQgb2YgMTAwLCBidXQgd2FzICIgKyBoZWlnaHQpOw0KKw0KKyAgICAgICAgaWYgKGVycm9y
ID09ICIiKSB7DQorICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAi
Z3JlZW4iOw0KKyAgICAgICAgICAgIGVsZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4gUEFTUyI7DQor
ICAgICAgICB9IGVsc2UNCisgICAgICAgICAgICBlbGVtZW50LmlubmVySFRNTCArPSAiID0+IEZB
SUw6ICIgKyBlcnJvci5qb2luKCIsICIpOw0KKyAgICB9DQorfQ0KKw0KK2lmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpDQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsNCit0ZXN0KCk7DQorPC9zY3JpcHQ+DQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk1ZDNlMTE4NDg3ZWEwMzg4
N2Y0ZTI0M2Y1YTZmZDUzYzU4MGU0MjUuLjZiYzU1YjY0YWJhY2I2YzZlZDZiMTBlZmY3NjA0MDIw
NmYwMWYyZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxMS0wMy0yMSAgTWlrZSBM
YXd0aGVyICA8bWlrZWxhd3RoZXJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGZsZXgvYmlzb24gdG9rZW5zIGFuZCBncmFtbWFy
IGZvciBDU1MgY2FsYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTQ0MTIKKworICAgICAgICBUZXN0czogY3NzMy9jYWxjL2NhbGMtZXJyb3JzLmh0bWwK
KyAgICAgICAgICAgICAgIGNzczMvY2FsYy9taW5tYXgtZXJyb3JzLmh0bWwKKyAgICAgICAgICAg
ICAgIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jYWxj
L3NpbXBsZS1taW5tYXguaHRtbAorCisgICAgICAgICogY3NzL0NTU0dyYW1tYXIueToKKyAgICAg
ICAgKiBjc3MvQ1NTUGFyc2VyVmFsdWVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNl
clZhbHVlTGlzdDo6aW5zZXJ0VmFsdWVBdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJW
YWx1ZUxpc3Q6OmV4dGVuZCk6CisgICAgICAgICogY3NzL0NTU1BhcnNlclZhbHVlcy5oOgorICAg
ICAgICAqIGNzcy90b2tlbml6ZXIuZmxleDoKKwogMjAxMS0wMy0xNiAgRGF2aWQgTGV2aW4gIDxs
ZXZpbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRG1pdHJ5IFRpdG92Lgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueSBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NHcmFtbWFyLnkKaW5kZXggODY1ODY3NDMzOWY0YTA5NWUyMGRjMjI4YWNhZTVk
NzZmNjA0ODJmNy4uYzg1ZDg1ZGNjY2I5YjlkNDA4MjJkODc1N2IxNjBmMTEzZjU0ZDBmNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTR3JhbW1hci55CkBAIC05OSw3ICs5OSw3IEBAIHN0YXRpYyBpbnQgY3NzeXls
ZXgoWVlTVFlQRSogeXlsdmFsLCB2b2lkKiBwYXJzZXIpCiAKICV9CiAKLSVleHBlY3QgNTEKKyVl
eHBlY3QgNTUKIAogJW5vbmFzc29jIExPV0VTVF9QUkVDCiAKQEAgLTE4Myw2ICsxODMsNyBAQCBz
dGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCogcGFyc2VyKQogJXRva2Vu
IDxudW1iZXI+IEhFUlRaCiAldG9rZW4gPG51bWJlcj4gS0hFUlRaCiAldG9rZW4gPHN0cmluZz4g
RElNRU4KKyV0b2tlbiA8c3RyaW5nPiBJTlZBTElERElNRU4KICV0b2tlbiA8bnVtYmVyPiBQRVJD
RU5UQUdFCiAldG9rZW4gPG51bWJlcj4gRkxPQVRUT0tFTgogJXRva2VuIDxudW1iZXI+IElOVEVH
RVIKQEAgLTE5MCw2ICsxOTEsOSBAQCBzdGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZh
bCwgdm9pZCogcGFyc2VyKQogJXRva2VuIDxzdHJpbmc+IFVSSQogJXRva2VuIDxzdHJpbmc+IEZV
TkNUSU9OCiAldG9rZW4gPHN0cmluZz4gTk9URlVOQ1RJT04KKyV0b2tlbiA8c3RyaW5nPiBDQUxD
RlVOQ1RJT04KKyV0b2tlbiA8c3RyaW5nPiBNSU5GVU5DVElPTgorJXRva2VuIDxzdHJpbmc+IE1B
WEZVTkNUSU9OCiAKICV0b2tlbiA8c3RyaW5nPiBVTklDT0RFUkFOR0UKIApAQCAtMjcwLDYgKzI3
NCwxNCBAQCBzdGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCogcGFyc2Vy
KQogJXR5cGUgPHZhbHVlPiB0ZXJtCiAldHlwZSA8dmFsdWU+IHVuYXJ5X3Rlcm0KICV0eXBlIDx2
YWx1ZT4gZnVuY3Rpb24KKyV0eXBlIDx2YWx1ZT4gY2FsY19mdW5jX3Rlcm0KKyV0eXBlIDxjaGFy
YWN0ZXI+IGNhbGNfZnVuY19vcGVyYXRvcgorJXR5cGUgPHZhbHVlTGlzdD4gY2FsY19mdW5jX2V4
cHIKKyV0eXBlIDx2YWx1ZUxpc3Q+IGNhbGNfZnVuY19leHByX2xpc3QKKyV0eXBlIDx2YWx1ZUxp
c3Q+IGNhbGNfZnVuY19wYXJlbl9leHByCisldHlwZSA8dmFsdWU+IGNhbGNfZnVuY3Rpb24KKyV0
eXBlIDxzdHJpbmc+IG1pbl9vcl9tYXgKKyV0eXBlIDx2YWx1ZT4gbWluX29yX21heF9mdW5jdGlv
bgogCiAldHlwZSA8c3RyaW5nPiBlbGVtZW50X25hbWUKICV0eXBlIDxzdHJpbmc+IGF0dHJfbmFt
ZQpAQCAtMTM2MSw2ICsxMzczLDEyIEBAIHRlcm06CiAgIHwgZnVuY3Rpb24gewogICAgICAgJCQg
PSAkMTsKICAgfQorICB8IGNhbGNfZnVuY3Rpb24geworICAgICAgJCQgPSAkMTsKKyAgfQorICB8
IG1pbl9vcl9tYXhfZnVuY3Rpb24geworICAgICAgJCQgPSAkMTsKKyAgfQogICB8ICclJyBtYXli
ZV9zcGFjZSB7IC8qIEhhbmRsZSB3aWR0aDogJTsgKi8KICAgICAgICQkLmlkID0gMDsgJCQudW5p
dCA9IDA7CiAgIH0KQEAgLTE0MTcsNiArMTQzNSwxNDMgQEAgZnVuY3Rpb246CiAgICAgICAgICQk
LmZ1bmN0aW9uID0gZjsKICAgfQogICA7CisgCitjYWxjX2Z1bmNfdGVybToKKyAgdW5hcnlfdGVy
bSB7ICQkID0gJDE7IH0KKyAgfCB1bmFyeV9vcGVyYXRvciB1bmFyeV90ZXJtIHsgJCQgPSAkMjsg
JCQuZlZhbHVlICo9ICQxOyB9CisgIDsKKworY2FsY19mdW5jX29wZXJhdG9yOgorICAgICcrJyBX
SElURVNQQUNFIHsKKyAgICAgICAgJCQgPSAnKyc7CisgICAgfQorICB8ICctJyBXSElURVNQQUNF
IHsKKyAgICAgICAgJCQgPSAnLSc7CisgICAgfQorICB8ICcqJyBtYXliZV9zcGFjZSB7CisgICAg
ICAgICQkID0gJyonOworICAgIH0KKyAgfCAnLycgbWF5YmVfc3BhY2UgeworICAgICAgICAkJCA9
ICcvJzsKKyAgICB9CisgIHwgSURFTlQgbWF5YmVfc3BhY2UgeworICAgICAgICBpZiAoZXF1YWxJ
Z25vcmluZ0Nhc2UoIm1vZCIsICQxLmNoYXJhY3RlcnMsICQxLmxlbmd0aCkpCisgICAgICAgICAg
ICAkJCA9ICclJzsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJCQgPSAwOworICAgIH0KKyAg
OworCitjYWxjX2Z1bmNfcGFyZW5fZXhwcjoKKyAgICAnKCcgbWF5YmVfc3BhY2UgY2FsY19mdW5j
X2V4cHIgbWF5YmVfc3BhY2UgJyknIG1heWJlX3NwYWNlIHsKKyAgICAgICAgJCQgPSAkMzsKKyAg
ICAgICAgaWYgKCQkKSB7CisgICAgICAgICAgICBDU1NQYXJzZXJWYWx1ZSB2OworICAgICAgICAg
ICAgdi5pZCA9IDA7CisgICAgICAgICAgICB2LnVuaXQgPSBDU1NQYXJzZXJWYWx1ZTo6T3BlcmF0
b3I7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICcoJzsKKyAgICAgICAgICAgICQkLT5pbnNlcnRW
YWx1ZUF0KDAsIHYpOworICAgICAgICAgICAgdi5pVmFsdWUgPSAnKSc7CisgICAgICAgICAgICAk
JC0+YWRkVmFsdWUodik7CisgICAgICAgIH0KKyAgICB9CisKK2NhbGNfZnVuY19leHByOgorICAg
IGNhbGNfZnVuY190ZXJtIG1heWJlX3NwYWNlIHsKKyAgICAgICAgQ1NTUGFyc2VyKiBwID0gc3Rh
dGljX2Nhc3Q8Q1NTUGFyc2VyKj4ocGFyc2VyKTsKKyAgICAgICAgJCQgPSBwLT5jcmVhdGVGbG9h
dGluZ1ZhbHVlTGlzdCgpOworICAgICAgICAkJC0+YWRkVmFsdWUocC0+c2lua0Zsb2F0aW5nVmFs
dWUoJDEpKTsKKyAgICB9CisgIHwgY2FsY19mdW5jX2V4cHIgY2FsY19mdW5jX29wZXJhdG9yIGNh
bGNfZnVuY190ZXJtIHsKKyAgICAgICAgQ1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFy
c2VyKj4ocGFyc2VyKTsKKyAgICAgICAgaWYgKCQxICYmICQyKSB7CisgICAgICAgICAgICAkJCA9
ICQxOworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAgICAgICAgICAgIHYuaWQgPSAw
OworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9wZXJhdG9yOworICAgICAg
ICAgICAgdi5pVmFsdWUgPSAkMjsKKyAgICAgICAgICAgICQkLT5hZGRWYWx1ZSh2KTsKKyAgICAg
ICAgICAgICQkLT5hZGRWYWx1ZShwLT5zaW5rRmxvYXRpbmdWYWx1ZSgkMykpOworICAgICAgICB9
IGVsc2UKKyAgICAgICAgICAgICQkID0gMDsKKworICAgIH0KKyAgfCBjYWxjX2Z1bmNfZXhwciBj
YWxjX2Z1bmNfb3BlcmF0b3IgY2FsY19mdW5jX3BhcmVuX2V4cHIgeworICAgICAgICBpZiAoJDEg
JiYgJDIgJiYgJDMpIHsKKyAgICAgICAgICAgICQkID0gJDE7CisgICAgICAgICAgICBDU1NQYXJz
ZXJWYWx1ZSB2OworICAgICAgICAgICAgdi5pZCA9IDA7CisgICAgICAgICAgICB2LnVuaXQgPSBD
U1NQYXJzZXJWYWx1ZTo6T3BlcmF0b3I7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICQyOworICAg
ICAgICAgICAgJCQtPmFkZFZhbHVlKHYpOworICAgICAgICAgICAgJCQtPmV4dGVuZCgqKCQzKSk7
CisgICAgICAgIH0gZWxzZSAKKyAgICAgICAgICAgICQkID0gMDsKKyAgICB9CisgIHwgY2FsY19m
dW5jX3BhcmVuX2V4cHIKKyAgfCBjYWxjX2Z1bmNfZXhwciBlcnJvciB7CisgICAgICAgICQkID0g
MDsKKyAgICB9CisgIDsKKworY2FsY19mdW5jX2V4cHJfbGlzdDoKKyAgICBjYWxjX2Z1bmNfZXhw
ciAgeworICAgICAgICAkJCA9ICQxOworICAgIH0gICAgCisgICAgfCBjYWxjX2Z1bmNfZXhwcl9s
aXN0ICcsJyBtYXliZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciB7CisgICAgICAgICQkID0gJDE7Cisg
ICAgICAgIGlmICgkJCAmJiAkNCkgeworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAg
ICAgICAgICAgIHYuaWQgPSAwOworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6
Ok9wZXJhdG9yOworICAgICAgICAgICAgdi5pVmFsdWUgPSAnLCc7CisgICAgICAgICAgICAkJC0+
YWRkVmFsdWUodik7CisgICAgICAgICAgICAkJC0+ZXh0ZW5kKCooJDQpKTsKKyAgICAgICAgfSBl
bHNlCisgICAgICAgICAgICAkJCA9IDA7CisgICAgfQorICAgIAorCitjYWxjX2Z1bmN0aW9uOgor
ICAgIENBTENGVU5DVElPTiBtYXliZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciAnKScgbWF5YmVfc3Bh
Y2UgeworICAgICAgICBDU1NQYXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJz
ZXIpOworICAgICAgICBDU1NQYXJzZXJGdW5jdGlvbiogZiA9IHAtPmNyZWF0ZUZsb2F0aW5nRnVu
Y3Rpb24oKTsKKyAgICAgICAgZi0+bmFtZSA9ICQxOworICAgICAgICBmLT5hcmdzID0gcC0+c2lu
a0Zsb2F0aW5nVmFsdWVMaXN0KCQzKTsKKyAgICAgICAgJCQuaWQgPSAwOworICAgICAgICAkJC51
bml0ID0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uOworICAgICAgICAkJC5mdW5jdGlvbiA9IGY7
CisgICAgfQorICAgIHwgQ0FMQ0ZVTkNUSU9OIG1heWJlX3NwYWNlIGVycm9yIHsKKyAgICAgICAg
WVlFUlJPUjsKKyAgICB9CisgICAgOworCisKK21pbl9vcl9tYXg6CisgICAgTUlORlVOQ1RJT04g
eworICAgICAgICAkJCA9ICQxOworICAgIH0KKyAgICB8IE1BWEZVTkNUSU9OIHsKKyAgICAgICAg
JCQgPSAkMTsKKyAgICB9CisgICAgOworCittaW5fb3JfbWF4X2Z1bmN0aW9uOgorICAgIG1pbl9v
cl9tYXggbWF5YmVfc3BhY2UgY2FsY19mdW5jX2V4cHJfbGlzdCAnKScgbWF5YmVfc3BhY2Ugewor
ICAgICAgICBDU1NQYXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOwor
ICAgICAgICBDU1NQYXJzZXJGdW5jdGlvbiogZiA9IHAtPmNyZWF0ZUZsb2F0aW5nRnVuY3Rpb24o
KTsKKyAgICAgICAgZi0+bmFtZSA9ICQxOworICAgICAgICBmLT5hcmdzID0gcC0+c2lua0Zsb2F0
aW5nVmFsdWVMaXN0KCQzKTsKKyAgICAgICAgJCQuaWQgPSAwOworICAgICAgICAkJC51bml0ID0g
Q1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uOworICAgICAgICAkJC5mdW5jdGlvbiA9IGY7CisgICAg
fSAKKyAgICB8IG1pbl9vcl9tYXggbWF5YmVfc3BhY2UgZXJyb3IgeworICAgICAgICBZWUVSUk9S
OworICAgIH0KKyAgICA7CisKIC8qCiAgKiBUaGVyZSBpcyBhIGNvbnN0cmFpbnQgb24gdGhlIGNv
bG9yIHRoYXQgaXQgbXVzdAogICogaGF2ZSBlaXRoZXIgMyBvciA2IGhleC1kaWdpdHMgKGkuZS4s
IFswLTlhLWZBLUZdKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZh
bHVlcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmNwcAppbmRleCBk
YzBlODJiZjljNTlkMWU2NDcwNWQ3ZWU2MDc4MTI2ZGFmYjMzNWRjLi40M2U2OGQ5ZmUxYmI2NTk1
NWE3ZTYyNjY1OTFlZDA4YjRlZDQ4ZTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUGFyc2VyVmFsdWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFs
dWVzLmNwcApAQCAtNDMsMTIgKzQzLDIzIEBAIHZvaWQgQ1NTUGFyc2VyVmFsdWVMaXN0OjphZGRW
YWx1ZShjb25zdCBDU1NQYXJzZXJWYWx1ZSYgdikKIHsKICAgICBtX3ZhbHVlcy5hcHBlbmQodik7
CiB9Ci0gICAgCisKK3ZvaWQgQ1NTUGFyc2VyVmFsdWVMaXN0OjppbnNlcnRWYWx1ZUF0KHVuc2ln
bmVkIGksIGNvbnN0IENTU1BhcnNlclZhbHVlJiB2KQoreworICAgIG1fdmFsdWVzLmluc2VydChp
LCB2KTsKK30KKwogdm9pZCBDU1NQYXJzZXJWYWx1ZUxpc3Q6OmRlbGV0ZVZhbHVlQXQodW5zaWdu
ZWQgaSkKIHsgCiAgICAgbV92YWx1ZXMucmVtb3ZlKGkpOwogfQogCit2b2lkIENTU1BhcnNlclZh
bHVlTGlzdDo6ZXh0ZW5kKENTU1BhcnNlclZhbHVlTGlzdCYgdmFsdWVMaXN0KQoreworICAgIGZv
ciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgdmFsdWVMaXN0LnNpemUoKTsgKytpKQorICAgICAg
ICBtX3ZhbHVlcy5hcHBlbmQoKih2YWx1ZUxpc3QudmFsdWVBdChpKSkpOworfQorCiBQYXNzUmVm
UHRyPENTU1ZhbHVlPiBDU1NQYXJzZXJWYWx1ZTo6Y3JlYXRlQ1NTVmFsdWUoKQogewogICAgIFJl
ZlB0cjxDU1NWYWx1ZT4gcGFyc2VkVmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyVmFsdWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVz
LmgKaW5kZXggZDA4NDA5MTFhNDJjNzg4ZjI1M2VhY2IwOTVjNmMxMDk5NDFkYTJkNy4uZWRlNDBk
NGIyZDMxZTg0ZWQ2Mzc0Y2M1ODZlMDgwZDlhZjQxZjYwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQ
YXJzZXJWYWx1ZXMuaApAQCAtNzEsNyArNzEsOSBAQCBwdWJsaWM6CiAgICAgfkNTU1BhcnNlclZh
bHVlTGlzdCgpOwogICAgIAogICAgIHZvaWQgYWRkVmFsdWUoY29uc3QgQ1NTUGFyc2VyVmFsdWUm
KTsKKyAgICB2b2lkIGluc2VydFZhbHVlQXQodW5zaWduZWQsIGNvbnN0IENTU1BhcnNlclZhbHVl
Jik7CiAgICAgdm9pZCBkZWxldGVWYWx1ZUF0KHVuc2lnbmVkKTsKKyAgICB2b2lkIGV4dGVuZChD
U1NQYXJzZXJWYWx1ZUxpc3QmKTsKIAogICAgIHVuc2lnbmVkIHNpemUoKSBjb25zdCB7IHJldHVy
biBtX3ZhbHVlcy5zaXplKCk7IH0KICAgICBDU1NQYXJzZXJWYWx1ZSogY3VycmVudCgpIHsgcmV0
dXJuIG1fY3VycmVudCA8IG1fdmFsdWVzLnNpemUoKSA/ICZtX3ZhbHVlc1ttX2N1cnJlbnRdIDog
MDsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3Rva2VuaXplci5mbGV4IGIvU291
cmNlL1dlYkNvcmUvY3NzL3Rva2VuaXplci5mbGV4CmluZGV4IGViMThjYjkwYjRjMGJjZDFiZjQz
OWFmMmEyYTNmODQzNjNhMDU2OTkuLjg4ZmU2OTg2ZDAyZjA2ODJmNDJmZWVhYmZmMWY2YzA0MmIz
MTJkMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90b2tlbml6ZXIuZmxleAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvdG9rZW5pemVyLmZsZXgKQEAgLTEwMiw2ICsxMDIsNyBAQCBu
dGggICAgICAgICAgICAgW1wrLV0/e2ludG51bX0qbihbXHRcclxuIF0qW1wrLV1bXHRcclxuIF0q
e2ludG51bX0pPwoge251bX1IeiAgICAgICAgICAgICAgICAge3l5VG9rID0gSEVSVFo7IHJldHVy
biB5eVRvazt9CiB7bnVtfWtIeiAgICAgICAgICAgICAgICB7eXlUb2sgPSBLSEVSVFo7IHJldHVy
biB5eVRvazt9CiB7bnVtfXtpZGVudH0gICAgICAgICAgICB7eXlUb2sgPSBESU1FTjsgcmV0dXJu
IHl5VG9rO30KK3tudW19e2lkZW50fVwrICAgICAgICAgIHt5eVRvayA9IElOVkFMSURESU1FTjsg
cmV0dXJuIHl5VG9rO30KIHtudW19JSsgICAgICAgICAgICAgICAgIHt5eVRvayA9IFBFUkNFTlRB
R0U7IHJldHVybiB5eVRvazt9CiB7aW50bnVtfSAgICAgICAgICAgICAgICB7eXlUb2sgPSBJTlRF
R0VSOyByZXR1cm4geXlUb2s7fQoge251bX0gICAgICAgICAgICAgICAgICAge3l5VG9rID0gRkxP
QVRUT0tFTjsgcmV0dXJuIHl5VG9rO30KQEAgLTEwOSw2ICsxMTAsOSBAQCBudGggICAgICAgICAg
ICAgW1wrLV0/e2ludG51bX0qbihbXHRcclxuIF0qW1wrLV1bXHRcclxuIF0qe2ludG51bX0pPwog
Im5vdCgiICAgICAgICAgICAgICAgICAge3l5VG9rID0gTk9URlVOQ1RJT047IHJldHVybiB5eVRv
azt9CiAidXJsKCJ7d317c3RyaW5nfXt3fSIpIiB7eXlUb2sgPSBVUkk7IHJldHVybiB5eVRvazt9
CiAidXJsKCJ7d317dXJsfXt3fSIpIiAgICB7eXlUb2sgPSBVUkk7IHJldHVybiB5eVRvazt9Cisi
LXdlYmtpdC1jYWxjKCIgICAgICAgICB7eXlUb2sgPSBDQUxDRlVOQ1RJT047IHJldHVybiB5eVRv
azt9CisiLXdlYmtpdC1taW4oIiAgICAgICAgICB7eXlUb2sgPSBNSU5GVU5DVElPTjsgcmV0dXJu
IHl5VG9rO30KKyItd2Via2l0LW1heCgiICAgICAgICAgIHt5eVRvayA9IE1BWEZVTkNUSU9OOyBy
ZXR1cm4geXlUb2s7fQoge2lkZW50fSIoIiAgICAgICAgICAgICAge3l5VG9rID0gRlVOQ1RJT047
IHJldHVybiB5eVRvazt9CiAKIFVcK3tyYW5nZX0gICAgICAgICAgICAgIHt5eVRvayA9IFVOSUNP
REVSQU5HRTsgcmV0dXJuIHl5VG9rO30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86729</attachid>
            <date>2011-03-23 18:00:53 -0700</date>
            <delta_ts>2011-04-10 16:10:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54412-20110324120050.patch</filename>
            <type>text/plain</type>
            <size>41445</size>
            <attacher name="Mike Lawther">mikelawther</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODEzMDgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzYzQ4YzdkM2FhMDllMjY3NmMzZTYx
N2UyYTQ0ZjI0OTNlNjM4NDczLi4yNGMzM2M1ZjVjYWNjNDk5ZmE4ZGM0NmU0OGE0NzdkYzYxNDdl
NmUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDMtMjEgIE1pa2UgTGF3dGhlciAgPG1p
a2VsYXd0aGVyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBmbGV4L2Jpc29uIHRva2VucyBhbmQgZ3JhbW1hciBmb3IgQ1NTIGNh
bGMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NDEy
CisKKyAgICAgICAgT25seSB0aGUgJ2Vycm9ycycgdGVzdHMgcGFzcyBhcyB1bHRpbWF0ZWx5IGlu
dGVuZGVkIHJpZ2h0IG5vdy4gQXMgb2YgdGhpcworICAgICAgICBwYXRjaCwgbm9uZSBvZiB0aGUg
YWN0dWFsIGNhbGN1bGF0aW9ucyBhcmUgZXhwZWN0ZWQgdG8gd29yaywgc2luY2Ugb25seQorICAg
ICAgICB0aGUgbGV4aW5nL2dyYW1tYXIgc3RhZ2UgaXMgcHJlc2VudC4KKworICAgICAgICAqIGNz
czMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMv
Y2FsYy9jYWxjLWVycm9ycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvbWlubWF4
LWVycm9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9taW5tYXgt
ZXJyb3JzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9zaW1wbGUtbWlubWF4LWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbDogQWRkZWQuCisK
IDIwMTEtMDMtMTYgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IE5ldyBiYXNlbGluZXMgYmVjYXVzZSB0aGUgcGxheSBidXR0b24gaXMgbm93IGEgcGF1c2UgYnV0
dG9uIGR1ZSB0byByODEzMDAuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvY2Fs
Yy1lcnJvcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMtZXJyb3Jz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYzgxNGY0ZTk4MjNlNWM2OTEwOGFlMmEyNGM0MzY0
NWMyOGQ3YmQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMt
ZXJyb3JzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUzIEBACitBbGwgYm94ZXMgYmVsb3cgc2hv
dWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdyZWVuLgorCit1bmNsb3NlZCBjYWxjID0+IFBBU1MK
K3VuY2xvc2VkIGNhbGMgd2l0aCBnYXJiYWdlID0+IFBBU1MKK2dhcmJhZ2UgPT4gUEFTUworemVy
byBkaXZpc2lvbiA9PiBQQVNTCitub24gbGVuZ3RoID0+IFBBU1MKK251bWJlciArIGxlbmd0aCA9
PiBQQVNTCitsZW5ndGggKyBudW1iZXIgPT4gUEFTUworcGVyY2VudCArIG51bWJlciA9PiBQQVNT
CitudW1iZXIgKyBwZXJjZW50ID0+IFBBU1MKK2xlbmd0aCAtIG51bWJlciA9PiBQQVNTCitudW1i
ZXIgLSBsZW5ndGggPT4gUEFTUworcGVyY2VudCAtIG51bWJlciA9PiBQQVNTCitudW1iZXIgLSBw
ZXJjZW50ID0+IFBBU1MKK2xlbmd0aCAqIGxlbmd0aCA9PiBQQVNTCitsZW5ndGggKiBwZXJjZW50
ID0+IFBBU1MKK3BlcmNlbnQgKiBsZW5ndGggPT4gUEFTUworcGVyY2VudCAqIHBlcmNlbnQgPT4g
UEFTUworbnVtYmVyIC8gbGVuZ3RoID0+IFBBU1MKK251bWJlciAvIHBlcmNlbnQgPT4gUEFTUwor
bGVuZ3RoIC8gbGVuZ3RoID0+IFBBU1MKK2xlbmd0aCAvIHBlcmNlbnQgPT4gUEFTUworcGVyY2Vu
dCAvIGxlbmd0aCA9PiBQQVNTCitwZXJjZW50IC8gcGVyY2VudCA9PiBQQVNTCitudW1iZXIgbW9k
IGxlbmd0aCA9PiBQQVNTCitudW1iZXIgbW9kIHBlcmNlbnQgPT4gUEFTUworbGVuZ3RoIG1vZCBs
ZW5ndGggPT4gUEFTUworbGVuZ3RoIG1vZCBwZXJjZW50ID0+IFBBU1MKK3BlcmNlbnQgbW9kIGxl
bmd0aCA9PiBQQVNTCitwZXJjZW50IG1vZCBwZXJjZW50ID0+IFBBU1MKK21vZDEwID0+IFBBU1MK
KzFtb2QgPT4gUEFTUworNzBweCs0MHB4IG5vIHdoaXRlc3BhY2UgYXJvdW5kICsgPT4gUEFTUwor
NzBweCArNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mICsgPT4gUEFTUworNzBweCsgNDBw
eCBubyB3aGl0ZXNwYWNlIG9uIGxlZnQgb2YgKyA9PiBQQVNTCis3MHB4Ky00MHB4IG5vIHdoaXRl
c3BhY2UgYXJvdW5kICsgPT4gUEFTUworNzBweC00MHB4IG5vIHdoaXRlc3BhY2UgYXJvdW5kIC0g
PT4gUEFTUworNzBweCAtNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mIC0gPT4gUEFTUwor
NzBweC0gNDBweCBubyB3aGl0ZXNwYWNlIG9uIGxlZnQgb2YgLSA9PiBQQVNTCis3MHB4LSs0MHB4
IG5vIHdoaXRlc3BhY2UgYXJvdW5kIC0gPT4gUEFTUwordG9vIG1hbnkgbmVzdHMgPT4gUEFTUwor
ZW5kIHdpdGggb3BlcmF0b3IgPT4gUEFTUworc3RhcnQgd2l0aCBvcGVyYXRvciA9PiBQQVNTCitu
byBleHByZXNzaW9ucyA9PiBQQVNTCit0b28gbWFueSBwbHVzZXMgPT4gUEFTUworbm8gYmluYXJ5
IG9wZXJhdG9yID0+IFBBU1MKK3R3byBiaW5hcnkgb3BlcmF0b3JzID0+IFBBU1MKK2ludmFsaWQg
b3BlcmF0b3IgJ0AnID0+IFBBU1MKK2ludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nID0+IFBBU1MKK2lu
dmFsaWQgb3BlcmF0b3IgJ0AnID0+IFBBU1MKK2ludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nID0+IFBB
U1MKK2ludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nIHdpdGggcGFyZW5zID0+IFBBU1MKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sIGIvTGF5b3V0VGVzdHMv
Y3NzMy9jYWxjL2NhbGMtZXJyb3JzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTkwYzRlMjYxNWZlNzA3ZWRk
NDBjZmY2OWI2YzdjODZhZmE0YTEwZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Nz
czMvY2FsYy9jYWxjLWVycm9ycy5odG1sCkBAIC0wLDAgKzEsMTA3IEBACis8IURPQ1RZUEUgSFRN
TD4KKzxzdHlsZT4KKyN0ZXN0IGRpdiB7CisgICAgaGVpZ2h0OiAxMDBweDsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiByZWQ7Cit9Cis8L3N0eWxlPgorCis8cD4KKyAgQWxsIGJveGVzIGJlbG93IHNo
b3VsZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVlbi4KKzwvcD4KKworPGRpdiBpZD0idGVzdCI+
CisKKzwhLS0ganVzdCBwbGFpbiBiYWQgLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdp
ZHRoOiAtd2Via2l0LWNhbGMoOyI+dW5jbG9zZWQgY2FsYzwvZGl2PgorPGRpdiBzdHlsZT0id2lk
dGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKCBmbGltOyI+dW5jbG9zZWQgY2FsYyB3aXRo
IGdhcmJhZ2U8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQt
Y2FsYyggZmxpbSApOyI+Z2FyYmFnZTwvZGl2PgorCisKKzwhLS0gemVybyBkaXZpc2lvbiAtLT4K
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxZXggLyAwKTsi
Pnplcm8gZGl2aXNpb248L2Rpdj4KKworPCEtLSB3cm9uZyBjb21iaW5hdGlvbiAtLT4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygyMDApOyI+bm9uIGxlbmd0
aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEw
ICsgMTBweCk7Ij5udW1iZXIgKyBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBw
eDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMHB4ICsgMTApOyI+bGVuZ3RoICsgbnVtYmVyPC9kaXY+
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAlICsgMTAw
KTsiPnBlcmNlbnQgKyBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtY2FsYygxMDAgKyAxMCUpOyI+bnVtYmVyICsgcGVyY2VudDwvZGl2PgorCis8
ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMzAwcHggLSAxMDAp
OyI+bGVuZ3RoIC0gbnVtYmVyPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LWNhbGMoMzAwIC0gMTAwcHgpOyI+bnVtYmVyIC0gbGVuZ3RoPC9kaXY+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAtIDEwKTsiPnBl
cmNlbnQgLSBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13
ZWJraXQtY2FsYygxMDAgLSAxMCUpOyI+bnVtYmVyIC0gcGVyY2VudDwvZGl2PgorCis8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTBweCoxMDBweCk7Ij5sZW5n
dGggKiBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJr
aXQtY2FsYygxMHB4KjEwMCUpOyI+bGVuZ3RoICogcGVyY2VudDwvZGl2PgorPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwJSoxMDBweCk7Ij5wZXJjZW50ICog
bGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNh
bGMoMTAlKjEwMCUpOyI+cGVyY2VudCAqIHBlcmNlbnQ8L2Rpdj4KKworPGRpdiBzdHlsZT0id2lk
dGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMC8xMHB4KTsiPm51bWJlciAvIGxlbmd0
aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEw
MC8xMCUpOyI+bnVtYmVyIC8gcGVyY2VudDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4
OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4LzEwcHgpOyI+bGVuZ3RoIC8gbGVuZ3RoPC9kaXY+
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHgvMTAl
KTsiPmxlbmd0aCAvIHBlcmNlbnQ8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtY2FsYygxMDAlLzEwcHgpOyI+cGVyY2VudCAvIGxlbmd0aDwvZGl2PgorPGRp
diBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUvMTAlKTsiPnBl
cmNlbnQgLyBwZXJjZW50PC9kaXY+CisKKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtY2FsYygxMDAgbW9kIDEwcHgpOyI+bnVtYmVyIG1vZCBsZW5ndGg8L2Rpdj4KKzxk
aXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAgbW9kIDEwJSk7
Ij5udW1iZXIgbW9kIHBlcmNlbnQ8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtY2FsYygxMDBweCBtb2QgMTBweCk7Ij5sZW5ndGggbW9kIGxlbmd0aDwvZGl2
PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4IG1v
ZCAxMCUpOyI+bGVuZ3RoIG1vZCBwZXJjZW50PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSBtb2QgMTBweCk7Ij5wZXJjZW50IG1vZCBsZW5n
dGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygx
MDAlIG1vZCAxMCUpOyI+cGVyY2VudCBtb2QgcGVyY2VudDwvZGl2PgorCis8IS0tIG1vZCwgKywg
LSByZXF1aXJlIHdoaXRlc3BhY2VzIGFyb3VuZCB0aGUgb3BlcmF0b3IgLS0+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMSBtb2QxMCAqIDIwMHB4KTsiPm1v
ZDEwIDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxj
KDFtb2QgMTAgKiAyMDBweCk7Ij4xbW9kPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweCs0MHB4KTsiPjcwcHgrNDBweCBubyB3aGl0ZXNwYWNl
IGFyb3VuZCArIDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtp
dC1jYWxjKDcwcHggKzQwcHgpOyI+NzBweCArNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9m
ICs8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3
MHB4KyA0MHB4KTsiPjcwcHgrIDQwcHggbm8gd2hpdGVzcGFjZSBvbiBsZWZ0IG9mICs8L2Rpdj4K
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4Ky00MHB4
KTsiPjcwcHgrLTQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgKyA8L2Rpdj4KKzxkaXYgc3R5bGU9
IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4LTQwcHgpOyI+NzBweC00MHB4
IG5vIHdoaXRlc3BhY2UgYXJvdW5kIC0gPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweCAtNDBweCk7Ij43MHB4IC00MHB4IG5vIHdoaXRlc3Bh
Y2Ugb24gcmlnaHQgb2YgLTwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDog
LXdlYmtpdC1jYWxjKDcwcHgtIDQwcHgpOyI+NzBweC0gNDBweCBubyB3aGl0ZXNwYWNlIG9uIGxl
ZnQgb2YgLTwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDcwcHgtKzQwcHgpOyI+NzBweC0rNDBweCBubyB3aGl0ZXNwYWNlIGFyb3VuZCAtIDwvZGl2
PgorCis8IS0tIHRvbyBtYW55IG5lc3RzIHNob3VsZCBiZSByZWplY3RlZCB0byBhdm9pZCBzdGFj
ayBvdmVyZmxvdyAtLT4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQt
Y2FsYygoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKDIwMHB4KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpOyI+dG9vIG1hbnkgbmVzdHM8
L2Rpdj4KKyAKKzwhLS0gaW52YWxpZCBmb3JtdWxhcyAtLT4KKzxkaXYgc3R5bGU9IndpZHRoOiAx
MDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygyMDBweCopOyI+ZW5kIHdpdGggb3BlcmF0b3I8L2Rp
dj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygrICsyMDBw
eCk7Ij5zdGFydCB3aXRoIG9wZXJhdG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoKTsiPm5vIGV4cHJlc3Npb25zPC9kaXY+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHggKyArICsxMDBweCk7Ij50
b28gbWFueSBwbHVzZXM8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13
ZWJraXQtY2FsYygyMDBweCAyMDBweCk7Ij5ubyBiaW5hcnkgb3BlcmF0b3I8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDBweCAqICogMik7Ij50
d28gYmluYXJ5IG9wZXJhdG9yczwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0
aDogLXdlYmtpdC1jYWxjKDEwMHB4IEAgMik7Ij5pbnZhbGlkIG9wZXJhdG9yICdAJzwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEgZmxpbSAyKTsi
PmludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHggQCAyKTsiPmludmFsaWQgb3BlcmF0b3IgJ0AnPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMSBmbGlt
IDIpOyI+aW52YWxpZCBvcGVyYXRvciAnZmxpbSc8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAx
MDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxIGZsaW0gKDIpKTsiPmludmFsaWQgb3BlcmF0b3Ig
J2ZsaW0nIHdpdGggcGFyZW5zPC9kaXY+CisgCisgCis8L2Rpdj4KKworPHNjcmlwdD4KK2lmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCgpOworCit2YXIgdGVzdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0Iik7
Citmb3IgKHZhciBlbGVtZW50ID0gdGVzdC5maXJzdENoaWxkOyBlbGVtZW50OyBlbGVtZW50ID0g
ZWxlbWVudC5uZXh0U2libGluZykgeworICAgIHZhciB3aWR0aCA9IGVsZW1lbnQub2Zmc2V0V2lk
dGg7CisgICAgdmFyIGVycm9yID0gW107CisgICAgaWYgKHdpZHRoICE9IDEwMCkKKyAgICAgICAg
ZXJyb3IucHVzaCgiZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7Cisg
ICAgdmFyIGhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0OworICAgIGlmIChoZWlnaHQgIT0g
MTAwKQorICAgICAgICBlcnJvci5wdXNoKCJleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2Fz
ICIgKyB3aWR0aCk7CisKKyAgICBpZiAoZXJyb3IgPT0gIiIpIHsKKyAgICAgICAgZWxlbWVudC5z
dHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAiZ3JlZW4iOworICAgICAgICBlbGVtZW50LmlubmVySFRN
TCArPSAiID0+IFBBU1MiOworICAgIH0gZWxzZSB7CisgICAgICAgIGVsZW1lbnQuaW5uZXJIVE1M
ICs9ICIgPT4gRkFJTDogIiArIGVycm9yLmpvaW4oIiwgIik7CisgICAgfQorfQorPC9zY3JpcHQ+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbWlubWF4LWVycm9ycy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbWlubWF4LWVycm9ycy1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNWQ1NzA3ZmE5YzQyMjczNzA1MGE0N2QyMmMzNGEyODFlZDdhM2ZkZQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9taW5tYXgtZXJyb3JzLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDIxIEBACitBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4
ICogMTAwcHggYW5kIGdyZWVuLgorCitNSU4KK3VuY2xvc2VkIG1pbiA9PiBQQVNTCit1bmNsb3Nl
ZCBtaW4gd2l0aCBnYXJiYWdlID0+IFBBU1MKK2dhcmJhZ2UgPT4gUEFTUworZXh0cmEgdHJhaWxp
bmcgY29tbWEgPT4gUEFTUworbGVhZGluZyBjb21tYSA9PiBQQVNTCit0cmFpbGluZyBnYXJiYWdl
ID0+IFBBU1MKK2JhZCBleHByZXNzaW9uID0+IFBBU1MKK21peCBsZW5ndGggYW5kIG51bWJlciA9
PiBQQVNTCittaXggbnVtYmVyIGFuZCBsZW5ndGggPT4gUEFTUworbWl4IHBlcmNlbnQgYW5kIG51
bWJlciA9PiBQQVNTCittaXggbnVtYmVyIGFuZCBwZXJjZW50ID0+IFBBU1MKK01BWAordW5jbG9z
ZWQgbWF4ID0+IFBBU1MKK3VuY2xvc2VkIG1heCB3aXRoIGdhcmJhZ2UgPT4gUEFTUworbWl4IGxl
bmd0aCBhbmQgbnVtYmVyID0+IFBBU1MKK21peCBudW1iZXIgYW5kIGxlbmd0aCA9PiBQQVNTCitt
aXggcGVyY2VudCBhbmQgbnVtYmVyID0+IFBBU1MKK21peCBudW1iZXIgYW5kIHBlcmNlbnQgPT4g
UEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL21pbm1heC1lcnJvcnMuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9taW5tYXgtZXJyb3JzLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
M2Y1ZDkxOWM2M2FhMjQwMGM5ZGE0NDRlODIwOTk5MjEyMjRiMmUwZQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9taW5tYXgtZXJyb3JzLmh0bWwKQEAgLTAsMCArMSw1
OSBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisjdGVzdCBkaXYgeworICAgIGhlaWdodDog
MTAwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOworfQorPC9zdHlsZT4KKworPHA+Cisg
IEFsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCis8L3A+
CisKKzxkaXYgaWQ9InRlc3QiPgorCitNSU4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtbWluKCI+dW5jbG9zZWQgbWluPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDog
MTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbiggYm9iIj51bmNsb3NlZCBtaW4gd2l0aCBnYXJiYWdl
PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbiggYm9i
ICk7Ij5nYXJiYWdlPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LW1pbigyMHB4LCk7Ij5leHRyYSB0cmFpbGluZyBjb21tYTwvZGl2PgorPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oLDIwcHgpOyI+bGVhZGluZyBjb21tYTwv
ZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oMjBweCwg
Ym9iKTsiPnRyYWlsaW5nIGdhcmJhZ2U8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsg
d2lkdGg6IC13ZWJtaXQtbWluKDIwcHgsIDEwcHggKyBmbGltKTsiPmJhZCBleHByZXNzaW9uPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbigyNTZweCwg
MTIwKTsiPm1peCBsZW5ndGggYW5kIG51bWJlcjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEw
MHB4OyB3aWR0aDogLXdlYmtpdC1taW4oMjU2LCAxMjBweCk7Ij5taXggbnVtYmVyIGFuZCBsZW5n
dGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKDUw
JSwgMTUwKTsiPm1peCBwZXJjZW50IGFuZCBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRo
OiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKDE1MCwgNTAlKTsiPm1peCBudW1iZXIgYW5kIHBl
cmNlbnQ8L2Rpdj4KKworTUFYCis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LW1heCgiPnVuY2xvc2VkIG1heDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1tYXgoIGJvYiI+dW5jbG9zZWQgbWF4IHdpdGggZ2FyYmFnZTwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1tYXgoMjU2cHgsIDEyMCk7
Ij5taXggbGVuZ3RoIGFuZCBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsg
d2lkdGg6IC13ZWJraXQtbWF4KDI1NiwgMTIwcHgpOyI+bWl4IG51bWJlciBhbmQgbGVuZ3RoPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1heCg1MCUsIDE1
MCk7Ij5taXggcGVyY2VudCBhbmQgbnVtYmVyPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LW1heCgxNTAsIDUwJSk7Ij5taXggbnVtYmVyIGFuZCBwZXJjZW50
PC9kaXY+CisKKzwvZGl2PgorCis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKK3ZhciB0ZXN0
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3QiKTsKK2ZvciAodmFyIGVsZW1lbnQgPSB0
ZXN0LmZpcnN0Q2hpbGQ7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50Lm5leHRTaWJsaW5nKSB7
CisgICAgdmFyIHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDsKKyAgICB2YXIgZXJyb3IgPSBb
XTsKKyAgICBpZiAod2lkdGggIT0gMTAwKQorICAgICAgICBlcnJvci5wdXNoKCJleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgIiArIHdpZHRoKTsKKyAgICB2YXIgaGVpZ2h0ID0gZWxlbWVu
dC5vZmZzZXRIZWlnaHQ7CisgICAgaWYgKGhlaWdodCAhPSAxMDApCisgICAgICAgIGVycm9yLnB1
c2goImV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgIiArIHdpZHRoKTsKKworICAgIGlm
IChlcnJvciA9PSAiIikgeworICAgICAgICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9
ICJncmVlbiI7CisgICAgICAgIGVsZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4gUEFTUyI7CisgICAg
fSBlbHNlIHsKKyAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBGQUlMOiAiICsgZXJy
b3Iuam9pbigiLCAiKTsKKyAgICB9Cit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvY2FsYy9zaW1wbGUtY2FsY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3Nz
My9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDUwZjljZjcyZjRj
Mzg0ZjhjZTY2NjM4Yjc2YWU3YmUxOGMwZjI1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2NzczMvY2FsYy9zaW1wbGUtY2FsY3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNDkgQEAK
K0FsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCisKK2Nv
bnRyb2wgPT4gUEFTUworNTBweCArIDUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cisx
NTBweCAtIDUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4ICsgNTBweCAoMiBz
cGFjZXMgYXJvdW5kIG9wZXJhdG9yKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzE1MHB4
IC0gNTBweCAoMiBzcGFjZXMgYXJvdW5kIG9wZXJhdG9yKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKKzUwcHgqMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBA
em9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKjIgPT4gRkFJ
TDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4KiAyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorMjAwcHgvMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIwMHB4IC8yID0+IEZBSUw6
IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NgorMjAwcHgvIDIgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
Cis1MHB4KigyKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKigyKSA9PiBGQUlM
OiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgqICgyKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTYKKzUwcHgqKDEgKyAxKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgqKDEyIC0g
MTApID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Njsg
QHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCooMTAgLyA1KSA9PiBGQUlMOiBA
em9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKKzEwcHgqICg1ICogMikgPT4gRkFJTDogQHpvb209MSBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2Cis1MHB4KiAoMTIgbW9kIDEwKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgg
KyAxMHB4ICogNSAob3BlcmF0aW9uIG9yZGVyKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYK
KzExMDBweCBtb2QgMTAwMCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzEwMCUvMiAod2hl
cmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMDAlICsgLTEw
MHB4ICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzgw
JSAtIDYwcHggKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorMzAwcHggLSAxMDAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTYKKy0xMDBweCArIDEwMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6
b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NgorMjAlICsgMzAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlM
OiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTYKKzgwJSAtIDMwJSAod2hlcmUgMTAwJSBpcyAyMDBweCkgPT4g
RkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0x
LjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMCUgKiA1ICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9
PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29t
PTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUgKiAxMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgp
ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorKDEwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTYKKyg1MHB4ICsgNTBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisoNTBw
eCkgKyA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29t
PTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCArICg1MHB4KSA9PiBG
QUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEu
MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorNTBweCArIDI1cHggKiAyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorKDI1
cHggKyAyNXB4KSAqIDIgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Njsg
QHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisyICogNTBweCA9PiBG
QUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEu
MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIgKiAxMDBweCAvIDIgPT4gRkFJTDogQHpvb209MSBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2CisxMiBtb2QgMTAgKiA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Ngor
KDFlbSAtIDFlbSkgKyAxMDBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyAr
NTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKy01MHB4ICsgMTUwcHggPT4gRkFJTDog
QHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2CistNTBweCAtIC0xNTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKKygoKCgoKCgxMDBweCkpKSkpKSkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cisx
MDBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTA7
IEB6b29tPTEuMiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUwOyBAem9vbT0yIGV4
cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTAKKzEwMCUgKiAyID0+IEZBSUw6IEB6b29t
PTEgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyA1MDsgQHpvb209MS4yIGV4cGVjdGVk
IGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTA7IEB6b29tPTIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEw
MCwgYnV0IHdhcyA1MApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1j
YWxjcy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmRmYjJlZTIzYWQ5ZjZmZjJjYjNjZTZhMDVkYzYyNGU4ZWIzNzE2MjQKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWwKQEAgLTAs
MCArMSwxMjcgQEAKKzwhRE9DVFlQRSBIVE1MPg0KKzxzdHlsZT4NCisud2lkdGgtdGVzdCB7DQor
ICAgIGhlaWdodDogMTAwcHg7DQorICAgIHdpZHRoOiAyNTZweDsNCisgICAgYmFja2dyb3VuZC1j
b2xvcjogcmVkOw0KK30NCisNCisuaGVpZ2h0LXRlc3Qgew0KKyAgICB3aWR0aDogMTAwcHg7DQor
ICAgIGhlaWdodDogNTBweDsNCisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOw0KK30NCis8L3N0
eWxlPg0KKw0KKzxwPg0KKyAgQWxsIGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEwMHB4
IGFuZCBncmVlbi4NCis8L3A+DQorDQorPGRpdiBpZD0idGVzdCI+DQorPGRpdiBzdHlsZT0id2lk
dGg6MTAwcHg7IGhlaWdodDoxMDBweDsiPmNvbnRyb2w8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0
aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICsgNTBweCk7Ij41MHB4ICsg
NTBweDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1jYWxjKDE1MHB4IC0gNTBweCk7Ij4xNTBweCAtIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICArICA1MHB4KTsiPjUw
cHggICsgIDUwcHggKDIgc3BhY2VzIGFyb3VuZCBvcGVyYXRvcik8L2Rpdj4NCis8ZGl2IGNsYXNz
PSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxNTBweCAgLSAgNTBweCk7
Ij4xNTBweCAgLSA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3BlcmF0b3IpPC9kaXY+DQorPGRpdiBj
bGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCoyKTsiPjUw
cHgqMjwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1jYWxjKDUwcHggKjIpOyI+NTBweCAqMjwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqIDIpOyI+NTBweCogMjwvZGl2Pg0KKzxk
aXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDIwMHB4LzIp
OyI+MjAwcHgvMjwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1jYWxjKDIwMHB4IC8yKTsiPjIwMHB4IC8yPC9kaXY+DQorPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHgvIDIpOyI+MjAwcHgvIDI8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
Yyg1MHB4KigyKSk7Ij41MHB4KigyKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHggKigyKSk7Ij41MHB4ICooMik8L2Rpdj4NCis8
ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4KiAo
MikpOyI+NTBweCogKDIpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9Indp
ZHRoOiAtd2Via2l0LWNhbGMoNTBweCooMSArIDEpKTsiPjUwcHgqKDEgKyAxKTwvZGl2Pg0KKzxk
aXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqKDEy
IC0gMTApKTsiPjUwcHgqKDEyIC0gMTApPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCooMTAgLyA1KSk7Ij41MHB4KigxMCAvIDUp
PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNh
bGMoMTBweCogKDUgKiAyKSk7Ij4xMHB4KiAoNSAqIDIpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCogKDEyIG1vZCAxMCkpOyI+
NTBweCogKDEyIG1vZCAxMCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICsgMTBweCAqIDUpOyI+NTBweCArIDEwcHggKiA1IChv
cGVyYXRpb24gb3JkZXIpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9Indp
ZHRoOiAtd2Via2l0LWNhbGMoMTEwMHB4IG1vZCAxMDAwKTsiPjExMDBweCBtb2QgMTAwMDwvZGl2
Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBj
bGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0
aDogLXdlYmtpdC1jYWxjKDEwMCUvMik7Ij4xMDAlLzIgKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9k
aXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9y
OiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSArIC0xMDBweCk7Ij4xMDAlICsgLTEwMHB4
ICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRo
OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAg
IDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDgwJSAt
IDYwcHgpOyI+ODAlIC0gNjBweCAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4N
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xh
c3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6
IC13ZWJraXQtY2FsYygzMDBweCAtIDEwMCUpOyI+MzAwcHggLSAxMDAlICh3aGVyZSAxMDAlIGlz
IDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dy
b3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9Indp
ZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKC0xMDBweCArIDEwMCUpOyI+LTEw
MHB4ICsgMTAwJSAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0
eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBw
ZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
Y2FsYygyMCUgKyAzMCUpOyI+MjAlICsgMzAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2Pg0K
KzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hp
dGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1jYWxjKDgwJSAtIDMwJSk7Ij44MCUgLSAzMCUgKHdoZXJlIDEwMCUg
aXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNr
Z3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0i
d2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMTAlICogNSk7Ij4xMCUgKiA1
ICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRo
OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAg
IDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUgKiAx
MCUpOyI+NSAqIDEwJSAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8IS0t
DQorIEZJWE1FOiB3aGF0IGRvIHdlIGRvIHdpdGggbW9kIG9mIHBlcmNlbnQ/DQorPGRpdiBzdHls
ZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVy
Ij4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNh
bGMoNzUlIG1vZCAxMDApOyI+MTUwJSBtb2QgMTAwICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2
Pg0KKzwvZGl2Pg0KKy0tPg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1jYWxjKCgxMDBweCkpOyI+KDEwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRo
LXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKCg1MHB4ICsgNTBweCkpOyI+KDUwcHgg
KyA1MHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1jYWxjKCg1MHB4KSArIDUwcHgpOyI+KDUwcHgpICsgNTBweDwvZGl2Pg0KKzxkaXYgY2xh
c3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHggKyAoNTBweCkp
OyI+NTBweCArICg1MHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3
aWR0aDogLXdlYmtpdC1jYWxjKCA1MHB4ICsgIDUwcHggKTsiPiA1MHB4ICsgIDUwcHggPC9kaXY+
DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoIDUw
cHggKyAyNXB4ICogMiApOyI+IDUwcHggKyAyNXB4ICogMiA8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyggKDI1cHggKyAyNXB4KSAqIDIg
KTsiPiAoMjVweCArIDI1cHgpICogMiA8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBz
dHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygyICogNTBweCk7Ij4yICogNTBweDwvZGl2Pg0KKzxk
aXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDIgKiAxMDBw
eCAvIDIpOyI+MiAqIDEwMHB4IC8gMjwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDEyIG1vZCAxMCAqIDUwcHgpOyI+MTIgbW9kIDEwICog
NTBweDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1jYWxjKCgxZW0gLSAxZW0pICsgMTAwcHgpOyI+KDFlbSAtIDFlbSkgKyAxMDBweDwvZGl2Pg0K
KzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgg
KyAgKzUwcHgpOyI+NTBweCArICArNTBweDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKC01MHB4ICsgMTUwcHgpOyI+LTUwcHggKyAxNTBw
eDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1j
YWxjKC01MHB4IC0gLTE1MHB4KTsiPi01MHB4IC0gLTE1MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0i
d2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoKCgoKCgoKDEwMHB4KSkpKSkp
KSk7Ij4oKCgoKCgoMTAwcHgpKSkpKSkpPC9kaXY+DQorPGRpdiBjbGFzcz0iaGVpZ2h0LXRlc3Qi
IHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtY2FsYygxMDBweCk7Ij4xMDBweDwvZGl2Pg0KKzxkaXYg
c3R5bGU9ImhlaWdodDogNTBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3Jh
cHBlciI+DQorICA8ZGl2IGNsYXNzPSJoZWlnaHQtdGVzdCIgc3R5bGU9ImhlaWdodDogLXdlYmtp
dC1jYWxjKDEwMCUgKiAyKTsiPjEwMCUgKiAyPC9kaXY+DQorPC9kaXY+DQorPC9kaXY+DQorDQor
PHNjcmlwdD4NCitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQ0KKyAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7DQorDQorem9vbUxldmVscyA9IFsxLCAxLjIsIDJd
Ow0KK3ZhciB0ZXN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlc3QiKTsNCitmb3IgKHZh
ciBjaGlsZCA9IHRlc3QuZmlyc3RDaGlsZDsgY2hpbGQ7IGNoaWxkID0gY2hpbGQubmV4dFNpYmxp
bmcpIHsNCisgICAgdmFyIGVsZW1lbnQgPSBjaGlsZDsNCisgICAgaWYgKGVsZW1lbnQuY2xhc3NO
YW1lID09ICJ3cmFwcGVyIikgew0KKyAgICAgICAgZWxlbWVudCA9IGVsZW1lbnQuZmlyc3RDaGls
ZDsNCisgICAgICAgIHdoaWxlIChlbGVtZW50LnRhZ05hbWUgIT0gIkRJViIpIGVsZW1lbnQgPSBl
bGVtZW50Lm5leHRTaWJsaW5nOw0KKyAgICB9DQorDQorICAgIHZhciBlcnJvciA9IFtdOw0KKyAg
ICBmb3IgKHZhciB6ID0gMDsgeiA8IHpvb21MZXZlbHMubGVuZ3RoOyB6KyspIHsNCisgICAgICAg
IHZhciB6b29tID0gem9vbUxldmVsc1t6XTsNCisgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUu
em9vbSA9IHpvb207DQorICAgICAgICB2YXIgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoOw0K
KyAgICAgICAgaWYgKHdpZHRoICE9IDEwMCkNCisgICAgICAgICAgICBlcnJvci5wdXNoKCJAem9v
bT0iICsgem9vbSArICIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7
DQorICAgICAgICB2YXIgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7DQorICAgICAgICBp
ZiAoaGVpZ2h0ICE9IDEwMCkNCisgICAgICAgICAgICBlcnJvci5wdXNoKCJAem9vbT0iICsgem9v
bSArICIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyAiICsgaGVpZ2h0KTsNCisgICAg
fQ0KKyAgICBpZiAoZXJyb3IgPT0gIiIpIHsNCisgICAgICAgIGVsZW1lbnQuc3R5bGUuYmFja2dy
b3VuZENvbG9yID0gImdyZWVuIjsNCisgICAgICAgIGVsZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4g
UEFTUyI7DQorICAgIH0gZWxzZQ0KKyAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBG
QUlMOiAiICsgZXJyb3Iuam9pbigiOyAiKTsNCit9DQorZG9jdW1lbnQuYm9keS5zdHlsZS56b29t
ID0gMTsNCis8L3NjcmlwdD4NCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2lt
cGxlLW1pbm1heC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1p
bm1heC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzU5NjY5MDljYWE4MzJiYTMxNDBkMTlhNzkz
MmIzZTZiZjNhMjZiMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9z
aW1wbGUtbWlubWF4LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE4IEBACitBbGwgYm94ZXMgYmVs
b3cgc2hvdWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdyZWVuLgorCittaW4oMTAwcHgpID0+IEZB
SUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbiggMTAwcHggKSA9PiBG
QUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oKCgoMTAwcHgpKSkp
ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbigxNTBweCwx
MDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWluKDE1
MHB4LDEwMHB4LDIwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2CittaW4oIDE1MHB4ICwgMTAwcHggLDIwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oOTBweCArIDUwcHggLDEwMHB4KSA9PiBGQUlMOiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oMTAwJSwxMDBweCkgLSB3aGVyZSAx
MDAlIGlzIDIwMHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYK
K21pbigxMDBweCwxMDAlKSAtIHdoZXJlIDEwMCUgaXMgMjAwcHggPT4gRkFJTDogZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoNTBweCwxMDBweCkgPT4gRkFJTDogZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDUwcHgsMTAwcHgsMjBweCkgPT4gRkFJ
TDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDEyMHB4IC0gNTBweCwx
MDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDEw
MCUsMTAwcHgpIC0gd2hlcmUgMTAwJSBpcyA1MHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKK21heCgxMDBweCwxMDAlKSAtIHdoZXJlIDEwMCUgaXMgNTBweCA9
PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oMjAwcHgsMTAw
cHgpID0+IEZBSUw6IGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtbWlubWF4Lmh0bWwgYi9MYXlvdXRUZXN0
cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEwMTczMTY3NzhkYjYy
ZDg1OTMzNWM5ZDcyZTNiYjhiOWM0NGNkZjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sCkBAIC0wLDAgKzEsNzcgQEAKKzwhRE9DVFlQ
RSBIVE1MPg0KKzxzdHlsZT4NCisud2lkdGgtdGVzdCB7DQorICAgIGhlaWdodDogMTAwcHg7DQor
ICAgIHdpZHRoOiAyNTZweDsNCisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOw0KK30NCisNCisu
aGVpZ2h0LXRlc3Qgew0KKyAgICB3aWR0aDogMTAwcHg7DQorICAgIGhlaWdodDogNTBweDsNCisg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOw0KK30NCis8L3N0eWxlPg0KKw0KKzxwPg0KKyAgQWxs
IGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVlbi4NCis8L3A+DQor
DQorPGRpdiBpZD0idGVzdCI+DQorDQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9Indp
ZHRoOiAtd2Via2l0LW1pbigxMDBweCk7Ij5taW4oMTAwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0i
d2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1pbiggMTAwcHggKTsiPm1pbiggMTAw
cHggKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1taW4oKCgoMTAwcHgpKSkpOyI+bWluKCgoKDEwMHB4KSkpKTwvZGl2Pg0KKzxkaXYgY2xhc3M9
IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1taW4oMTUwcHgsMTAwcHgpOyI+bWlu
KDE1MHB4LDEwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0
aDogLXdlYmtpdC1taW4oMTUwcHgsMTAwcHgsMjAwcHgpOyI+bWluKDE1MHB4LDEwMHB4LDIwMHB4
KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1t
aW4oICAxNTBweCAsICAxMDBweCAgLDIwMHB4KTsiPm1pbiggIDE1MHB4ICAsICAxMDBweCAgLDIw
MHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1taW4oOTBweCArIDUwcHggLDEwMHB4KTsiPm1pbig5MHB4ICsgNTBweCAsMTAwcHgpPC9kaXY+
DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNs
YXNzPSJ3cmFwcGVyIj4NCisgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1taW4oMTAwJSwxMDBweCk7Ij5taW4oMTAwJSwxMDBweCkgLSB3aGVyZSAxMDAlIGlz
IDIwMHB4PC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3Jv
dW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgIDxkaXYgY2xhc3M9IndpZHRo
LXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1taW4oMTAwcHgsMTAwJSk7Ij5taW4oMTAwcHgs
MTAwJSkgLSB3aGVyZSAxMDAlIGlzIDIwMHB4PC9kaXY+DQorPC9kaXY+DQorDQorPGRpdiBjbGFz
cz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1heCgxMDBweCk7Ij5tYXgoMTAw
cHgpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0
LW1heCg1MHB4LDEwMHB4KTsiPm1heCg1MHB4LDEwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9Indp
ZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoNTBweCwxMDBweCwyMHB4KTsiPm1h
eCg1MHB4LDEwMHB4LDIwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9
IndpZHRoOiAtd2Via2l0LW1heCgxMjBweCAtIDUwcHgsMTAwcHgpOyI+bWF4KDEyMHB4IC0gNTBw
eCwxMDBweCk8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogNTBweDsgYmFja2dyb3VuZC1jb2xv
cjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBz
dHlsZT0id2lkdGg6IC13ZWJraXQtbWF4KDEwMCUsMTAwcHgpOyI+bWF4KDEwMCUsMTAwcHgpIC0g
d2hlcmUgMTAwJSBpcyA1MHB4PC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDUw
cHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgPGRpdiBj
bGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1heCgxMDBweCwxMDAlKTsi
Pm1heCgxMDBweCwxMDAlKSAtIHdoZXJlIDEwMCUgaXMgNTBweDwvZGl2Pg0KKzwvZGl2Pg0KKw0K
KzxkaXYgY2xhc3M9ImhlaWdodC10ZXN0IiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LW1pbigyMDBw
eCwgMTAwcHgpOyI+bWluKDIwMHB4LDEwMHB4KTwvZGl2Pg0KKw0KKzwvZGl2Pg0KKw0KKzxzY3Jp
cHQ+DQoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikNCisgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOw0KKw0KK3ZhciB0ZXN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoInRlc3QiKTsNCitmb3IgKHZhciBjaGlsZCA9IHRlc3QuZmlyc3RDaGlsZDsgY2hpbGQ7
IGNoaWxkID0gY2hpbGQubmV4dFNpYmxpbmcpIHsNCisgICAgdmFyIGVsZW1lbnQgPSBjaGlsZDsN
CisgICAgaWYgKGVsZW1lbnQuY2xhc3NOYW1lID09ICJ3cmFwcGVyIikgew0KKyAgICAgICAgZWxl
bWVudCA9IGVsZW1lbnQuZmlyc3RDaGlsZDsNCisgICAgICAgIHdoaWxlIChlbGVtZW50LnRhZ05h
bWUgIT0gIkRJViIpIGVsZW1lbnQgPSBlbGVtZW50Lm5leHRTaWJsaW5nOw0KKyAgICB9DQorDQor
ICAgIHZhciB3aWR0aCA9IGVsZW1lbnQub2Zmc2V0V2lkdGg7DQorICAgIHZhciBlcnJvciA9IFtd
Ow0KKyAgICBpZiAod2lkdGggIT0gMTAwKQ0KKyAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7DQorICAgIHZhciBoZWlnaHQgPSBlbGVt
ZW50Lm9mZnNldEhlaWdodDsNCisgICAgaWYgKGhlaWdodCAhPSAxMDApDQorICAgICAgICBlcnJv
ci5wdXNoKCJleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzICIgKyBoZWlnaHQpOw0KKw0K
KyAgICBpZiAoZXJyb3IgPT0gIiIpIHsNCisgICAgICAgIGVsZW1lbnQuc3R5bGUuYmFja2dyb3Vu
ZENvbG9yID0gImdyZWVuIjsNCisgICAgICAgIGVsZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4gUEFT
UyI7DQorICAgIH0gZWxzZQ0KKyAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBGQUlM
OiAiICsgZXJyb3Iuam9pbigiLCAiKTsNCit9DQorPC9zY3JpcHQ+DQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDk1
ZDNlMTE4NDg3ZWEwMzg4N2Y0ZTI0M2Y1YTZmZDUzYzU4MGU0MjUuLjZiYzU1YjY0YWJhY2I2YzZl
ZDZiMTBlZmY3NjA0MDIwNmYwMWYyZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAx
MS0wMy0yMSAgTWlrZSBMYXd0aGVyICA8bWlrZWxhd3RoZXJAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGZsZXgvYmlzb24gdG9r
ZW5zIGFuZCBncmFtbWFyIGZvciBDU1MgY2FsYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTQ0MTIKKworICAgICAgICBUZXN0czogY3NzMy9jYWxjL2Nh
bGMtZXJyb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY2FsYy9taW5tYXgtZXJyb3JzLmh0
bWwKKyAgICAgICAgICAgICAgIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRtbAorICAgICAgICAg
ICAgICAgY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbAorCisgICAgICAgICogY3NzL0NTU0dy
YW1tYXIueToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyVmFsdWVzLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1BhcnNlclZhbHVlTGlzdDo6aW5zZXJ0VmFsdWVBdCk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NQYXJzZXJWYWx1ZUxpc3Q6OmV4dGVuZCk6CisgICAgICAgICogY3NzL0NTU1BhcnNl
clZhbHVlcy5oOgorICAgICAgICAqIGNzcy90b2tlbml6ZXIuZmxleDoKKwogMjAxMS0wMy0xNiAg
RGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RG1pdHJ5IFRpdG92LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIu
eSBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkKaW5kZXggODY1ODY3NDMzOWY0YTA5
NWUyMGRjMjI4YWNhZTVkNzZmNjA0ODJmNy4uNTNhNTY5NmZhYmJhNWY2ODdiYWJhYWRjZjE2Yjkw
NmI4MWE1YjE5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55CkBAIC05OSw3ICs5OSw3IEBAIHN0
YXRpYyBpbnQgY3NzeXlsZXgoWVlTVFlQRSogeXlsdmFsLCB2b2lkKiBwYXJzZXIpCiAKICV9CiAK
LSVleHBlY3QgNTEKKyVleHBlY3QgNTUKIAogJW5vbmFzc29jIExPV0VTVF9QUkVDCiAKQEAgLTE4
Myw2ICsxODMsNyBAQCBzdGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCog
cGFyc2VyKQogJXRva2VuIDxudW1iZXI+IEhFUlRaCiAldG9rZW4gPG51bWJlcj4gS0hFUlRaCiAl
dG9rZW4gPHN0cmluZz4gRElNRU4KKyV0b2tlbiA8c3RyaW5nPiBJTlZBTElERElNRU4KICV0b2tl
biA8bnVtYmVyPiBQRVJDRU5UQUdFCiAldG9rZW4gPG51bWJlcj4gRkxPQVRUT0tFTgogJXRva2Vu
IDxudW1iZXI+IElOVEVHRVIKQEAgLTE5MCw2ICsxOTEsOSBAQCBzdGF0aWMgaW50IGNzc3l5bGV4
KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCogcGFyc2VyKQogJXRva2VuIDxzdHJpbmc+IFVSSQogJXRv
a2VuIDxzdHJpbmc+IEZVTkNUSU9OCiAldG9rZW4gPHN0cmluZz4gTk9URlVOQ1RJT04KKyV0b2tl
biA8c3RyaW5nPiBDQUxDRlVOQ1RJT04KKyV0b2tlbiA8c3RyaW5nPiBNSU5GVU5DVElPTgorJXRv
a2VuIDxzdHJpbmc+IE1BWEZVTkNUSU9OCiAKICV0b2tlbiA8c3RyaW5nPiBVTklDT0RFUkFOR0UK
IApAQCAtMjcwLDYgKzI3NCwxNCBAQCBzdGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZh
bCwgdm9pZCogcGFyc2VyKQogJXR5cGUgPHZhbHVlPiB0ZXJtCiAldHlwZSA8dmFsdWU+IHVuYXJ5
X3Rlcm0KICV0eXBlIDx2YWx1ZT4gZnVuY3Rpb24KKyV0eXBlIDx2YWx1ZT4gY2FsY19mdW5jX3Rl
cm0KKyV0eXBlIDxjaGFyYWN0ZXI+IGNhbGNfZnVuY19vcGVyYXRvcgorJXR5cGUgPHZhbHVlTGlz
dD4gY2FsY19mdW5jX2V4cHIKKyV0eXBlIDx2YWx1ZUxpc3Q+IGNhbGNfZnVuY19leHByX2xpc3QK
KyV0eXBlIDx2YWx1ZUxpc3Q+IGNhbGNfZnVuY19wYXJlbl9leHByCisldHlwZSA8dmFsdWU+IGNh
bGNfZnVuY3Rpb24KKyV0eXBlIDxzdHJpbmc+IG1pbl9vcl9tYXgKKyV0eXBlIDx2YWx1ZT4gbWlu
X29yX21heF9mdW5jdGlvbgogCiAldHlwZSA8c3RyaW5nPiBlbGVtZW50X25hbWUKICV0eXBlIDxz
dHJpbmc+IGF0dHJfbmFtZQpAQCAtMTM2MSw2ICsxMzczLDEyIEBAIHRlcm06CiAgIHwgZnVuY3Rp
b24gewogICAgICAgJCQgPSAkMTsKICAgfQorICB8IGNhbGNfZnVuY3Rpb24geworICAgICAgJCQg
PSAkMTsKKyAgfQorICB8IG1pbl9vcl9tYXhfZnVuY3Rpb24geworICAgICAgJCQgPSAkMTsKKyAg
fQogICB8ICclJyBtYXliZV9zcGFjZSB7IC8qIEhhbmRsZSB3aWR0aDogJTsgKi8KICAgICAgICQk
LmlkID0gMDsgJCQudW5pdCA9IDA7CiAgIH0KQEAgLTE0MTcsNiArMTQzNSwxNDMgQEAgZnVuY3Rp
b246CiAgICAgICAgICQkLmZ1bmN0aW9uID0gZjsKICAgfQogICA7CisgCitjYWxjX2Z1bmNfdGVy
bToKKyAgdW5hcnlfdGVybSB7ICQkID0gJDE7IH0KKyAgfCB1bmFyeV9vcGVyYXRvciB1bmFyeV90
ZXJtIHsgJCQgPSAkMjsgJCQuZlZhbHVlICo9ICQxOyB9CisgIDsKKworY2FsY19mdW5jX29wZXJh
dG9yOgorICAgICcrJyBXSElURVNQQUNFIHsKKyAgICAgICAgJCQgPSAnKyc7CisgICAgfQorICAg
IHwgJy0nIFdISVRFU1BBQ0UgeworICAgICAgICAkJCA9ICctJzsKKyAgICB9CisgICAgfCAnKicg
bWF5YmVfc3BhY2UgeworICAgICAgICAkJCA9ICcqJzsKKyAgICB9CisgICAgfCAnLycgbWF5YmVf
c3BhY2UgeworICAgICAgICAkJCA9ICcvJzsKKyAgICB9CisgICAgfCBJREVOVCBtYXliZV9zcGFj
ZSB7CisgICAgICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZSgibW9kIiwgJDEuY2hhcmFjdGVycywg
JDEubGVuZ3RoKSkKKyAgICAgICAgICAgICQkID0gJyUnOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICAkJCA9IDA7CisgICAgfQorICA7CisKK2NhbGNfZnVuY19wYXJlbl9leHByOgorICAgICco
JyBtYXliZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciBtYXliZV9zcGFjZSAnKScgbWF5YmVfc3BhY2Ug
eworICAgICAgICBpZiAoJDMpIHsKKyAgICAgICAgICAgICQkID0gJDM7CisgICAgICAgICAgICBD
U1NQYXJzZXJWYWx1ZSB2OworICAgICAgICAgICAgdi5pZCA9IDA7CisgICAgICAgICAgICB2LnVu
aXQgPSBDU1NQYXJzZXJWYWx1ZTo6T3BlcmF0b3I7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICco
JzsKKyAgICAgICAgICAgICQkLT5pbnNlcnRWYWx1ZUF0KDAsIHYpOworICAgICAgICAgICAgdi5p
VmFsdWUgPSAnKSc7CisgICAgICAgICAgICAkJC0+YWRkVmFsdWUodik7CisgICAgICAgIH0KKyAg
ICB9CisKK2NhbGNfZnVuY19leHByOgorICAgIGNhbGNfZnVuY190ZXJtIG1heWJlX3NwYWNlIHsK
KyAgICAgICAgQ1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFyc2VyKj4ocGFyc2VyKTsK
KyAgICAgICAgJCQgPSBwLT5jcmVhdGVGbG9hdGluZ1ZhbHVlTGlzdCgpOworICAgICAgICAkJC0+
YWRkVmFsdWUocC0+c2lua0Zsb2F0aW5nVmFsdWUoJDEpKTsKKyAgICB9CisgICAgfCBjYWxjX2Z1
bmNfZXhwciBjYWxjX2Z1bmNfb3BlcmF0b3IgY2FsY19mdW5jX3Rlcm0geworICAgICAgICBDU1NQ
YXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBpZiAo
JDEgJiYgJDIpIHsKKyAgICAgICAgICAgICQkID0gJDE7CisgICAgICAgICAgICBDU1NQYXJzZXJW
YWx1ZSB2OworICAgICAgICAgICAgdi5pZCA9IDA7CisgICAgICAgICAgICB2LnVuaXQgPSBDU1NQ
YXJzZXJWYWx1ZTo6T3BlcmF0b3I7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICQyOworICAgICAg
ICAgICAgJCQtPmFkZFZhbHVlKHYpOworICAgICAgICAgICAgJCQtPmFkZFZhbHVlKHAtPnNpbmtG
bG9hdGluZ1ZhbHVlKCQzKSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgJCQgPSAwOwor
CisgICAgfQorICAgIHwgY2FsY19mdW5jX2V4cHIgY2FsY19mdW5jX29wZXJhdG9yIGNhbGNfZnVu
Y19wYXJlbl9leHByIHsKKyAgICAgICAgaWYgKCQxICYmICQyICYmICQzKSB7CisgICAgICAgICAg
ICAkJCA9ICQxOworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAgICAgICAgICAgIHYu
aWQgPSAwOworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9wZXJhdG9yOwor
ICAgICAgICAgICAgdi5pVmFsdWUgPSAkMjsKKyAgICAgICAgICAgICQkLT5hZGRWYWx1ZSh2KTsK
KyAgICAgICAgICAgICQkLT5leHRlbmQoKigkMykpOworICAgICAgICB9IGVsc2UgCisgICAgICAg
ICAgICAkJCA9IDA7CisgICAgfQorICAgIHwgY2FsY19mdW5jX3BhcmVuX2V4cHIKKyAgICB8IGNh
bGNfZnVuY19leHByIGVycm9yIHsKKyAgICAgICAgJCQgPSAwOworICAgIH0KKyAgOworCitjYWxj
X2Z1bmNfZXhwcl9saXN0OgorICAgIGNhbGNfZnVuY19leHByICB7CisgICAgICAgICQkID0gJDE7
CisgICAgfSAgICAKKyAgICB8IGNhbGNfZnVuY19leHByX2xpc3QgJywnIG1heWJlX3NwYWNlIGNh
bGNfZnVuY19leHByIHsKKyAgICAgICAgaWYgKCQxICYmICQ0KSB7CisgICAgICAgICAgICAkJCA9
ICQxOworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAgICAgICAgICAgIHYuaWQgPSAw
OworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9wZXJhdG9yOworICAgICAg
ICAgICAgdi5pVmFsdWUgPSAnLCc7CisgICAgICAgICAgICAkJC0+YWRkVmFsdWUodik7CisgICAg
ICAgICAgICAkJC0+ZXh0ZW5kKCooJDQpKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAk
JCA9IDA7CisgICAgfQorICAgIAorCitjYWxjX2Z1bmN0aW9uOgorICAgIENBTENGVU5DVElPTiBt
YXliZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciAnKScgbWF5YmVfc3BhY2UgeworICAgICAgICBDU1NQ
YXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBDU1NQ
YXJzZXJGdW5jdGlvbiogZiA9IHAtPmNyZWF0ZUZsb2F0aW5nRnVuY3Rpb24oKTsKKyAgICAgICAg
Zi0+bmFtZSA9ICQxOworICAgICAgICBmLT5hcmdzID0gcC0+c2lua0Zsb2F0aW5nVmFsdWVMaXN0
KCQzKTsKKyAgICAgICAgJCQuaWQgPSAwOworICAgICAgICAkJC51bml0ID0gQ1NTUGFyc2VyVmFs
dWU6OkZ1bmN0aW9uOworICAgICAgICAkJC5mdW5jdGlvbiA9IGY7CisgICAgfQorICAgIHwgQ0FM
Q0ZVTkNUSU9OIG1heWJlX3NwYWNlIGVycm9yIHsKKyAgICAgICAgWVlFUlJPUjsKKyAgICB9Cisg
ICAgOworCisKK21pbl9vcl9tYXg6CisgICAgTUlORlVOQ1RJT04geworICAgICAgICAkJCA9ICQx
OworICAgIH0KKyAgICB8IE1BWEZVTkNUSU9OIHsKKyAgICAgICAgJCQgPSAkMTsKKyAgICB9Cisg
ICAgOworCittaW5fb3JfbWF4X2Z1bmN0aW9uOgorICAgIG1pbl9vcl9tYXggbWF5YmVfc3BhY2Ug
Y2FsY19mdW5jX2V4cHJfbGlzdCAnKScgbWF5YmVfc3BhY2UgeworICAgICAgICBDU1NQYXJzZXIq
IHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBDU1NQYXJzZXJG
dW5jdGlvbiogZiA9IHAtPmNyZWF0ZUZsb2F0aW5nRnVuY3Rpb24oKTsKKyAgICAgICAgZi0+bmFt
ZSA9ICQxOworICAgICAgICBmLT5hcmdzID0gcC0+c2lua0Zsb2F0aW5nVmFsdWVMaXN0KCQzKTsK
KyAgICAgICAgJCQuaWQgPSAwOworICAgICAgICAkJC51bml0ID0gQ1NTUGFyc2VyVmFsdWU6OkZ1
bmN0aW9uOworICAgICAgICAkJC5mdW5jdGlvbiA9IGY7CisgICAgfSAKKyAgICB8IG1pbl9vcl9t
YXggbWF5YmVfc3BhY2UgZXJyb3IgeworICAgICAgICBZWUVSUk9SOworICAgIH0KKyAgICA7CisK
IC8qCiAgKiBUaGVyZSBpcyBhIGNvbnN0cmFpbnQgb24gdGhlIGNvbG9yIHRoYXQgaXQgbXVzdAog
ICogaGF2ZSBlaXRoZXIgMyBvciA2IGhleC1kaWdpdHMgKGkuZS4sIFswLTlhLWZBLUZdKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmNwcAppbmRleCBkYzBlODJiZjljNTlkMWU2NDcw
NWQ3ZWU2MDc4MTI2ZGFmYjMzNWRjLi40M2U2OGQ5ZmUxYmI2NTk1NWE3ZTYyNjY1OTFlZDA4YjRl
ZDQ4ZTY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmNwcApAQCAtNDMsMTIg
KzQzLDIzIEBAIHZvaWQgQ1NTUGFyc2VyVmFsdWVMaXN0OjphZGRWYWx1ZShjb25zdCBDU1NQYXJz
ZXJWYWx1ZSYgdikKIHsKICAgICBtX3ZhbHVlcy5hcHBlbmQodik7CiB9Ci0gICAgCisKK3ZvaWQg
Q1NTUGFyc2VyVmFsdWVMaXN0OjppbnNlcnRWYWx1ZUF0KHVuc2lnbmVkIGksIGNvbnN0IENTU1Bh
cnNlclZhbHVlJiB2KQoreworICAgIG1fdmFsdWVzLmluc2VydChpLCB2KTsKK30KKwogdm9pZCBD
U1NQYXJzZXJWYWx1ZUxpc3Q6OmRlbGV0ZVZhbHVlQXQodW5zaWduZWQgaSkKIHsgCiAgICAgbV92
YWx1ZXMucmVtb3ZlKGkpOwogfQogCit2b2lkIENTU1BhcnNlclZhbHVlTGlzdDo6ZXh0ZW5kKENT
U1BhcnNlclZhbHVlTGlzdCYgdmFsdWVMaXN0KQoreworICAgIGZvciAodW5zaWduZWQgaW50IGkg
PSAwOyBpIDwgdmFsdWVMaXN0LnNpemUoKTsgKytpKQorICAgICAgICBtX3ZhbHVlcy5hcHBlbmQo
Kih2YWx1ZUxpc3QudmFsdWVBdChpKSkpOworfQorCiBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NQ
YXJzZXJWYWx1ZTo6Y3JlYXRlQ1NTVmFsdWUoKQogewogICAgIFJlZlB0cjxDU1NWYWx1ZT4gcGFy
c2VkVmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVz
LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmgKaW5kZXggZDA4NDA5MTFh
NDJjNzg4ZjI1M2VhY2IwOTVjNmMxMDk5NDFkYTJkNy4uZWRlNDBkNGIyZDMxZTg0ZWQ2Mzc0Y2M1
ODZlMDgwZDlhZjQxZjYwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
clZhbHVlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJWYWx1ZXMuaApAQCAt
NzEsNyArNzEsOSBAQCBwdWJsaWM6CiAgICAgfkNTU1BhcnNlclZhbHVlTGlzdCgpOwogICAgIAog
ICAgIHZvaWQgYWRkVmFsdWUoY29uc3QgQ1NTUGFyc2VyVmFsdWUmKTsKKyAgICB2b2lkIGluc2Vy
dFZhbHVlQXQodW5zaWduZWQsIGNvbnN0IENTU1BhcnNlclZhbHVlJik7CiAgICAgdm9pZCBkZWxl
dGVWYWx1ZUF0KHVuc2lnbmVkKTsKKyAgICB2b2lkIGV4dGVuZChDU1NQYXJzZXJWYWx1ZUxpc3Qm
KTsKIAogICAgIHVuc2lnbmVkIHNpemUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlcy5zaXplKCk7
IH0KICAgICBDU1NQYXJzZXJWYWx1ZSogY3VycmVudCgpIHsgcmV0dXJuIG1fY3VycmVudCA8IG1f
dmFsdWVzLnNpemUoKSA/ICZtX3ZhbHVlc1ttX2N1cnJlbnRdIDogMDsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL3Rva2VuaXplci5mbGV4IGIvU291cmNlL1dlYkNvcmUvY3NzL3Rv
a2VuaXplci5mbGV4CmluZGV4IGViMThjYjkwYjRjMGJjZDFiZjQzOWFmMmEyYTNmODQzNjNhMDU2
OTkuLjg4ZmU2OTg2ZDAyZjA2ODJmNDJmZWVhYmZmMWY2YzA0MmIzMTJkMTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy90b2tlbml6ZXIuZmxleAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvdG9rZW5pemVyLmZsZXgKQEAgLTEwMiw2ICsxMDIsNyBAQCBudGggICAgICAgICAgICAgW1wr
LV0/e2ludG51bX0qbihbXHRcclxuIF0qW1wrLV1bXHRcclxuIF0qe2ludG51bX0pPwoge251bX1I
eiAgICAgICAgICAgICAgICAge3l5VG9rID0gSEVSVFo7IHJldHVybiB5eVRvazt9CiB7bnVtfWtI
eiAgICAgICAgICAgICAgICB7eXlUb2sgPSBLSEVSVFo7IHJldHVybiB5eVRvazt9CiB7bnVtfXtp
ZGVudH0gICAgICAgICAgICB7eXlUb2sgPSBESU1FTjsgcmV0dXJuIHl5VG9rO30KK3tudW19e2lk
ZW50fVwrICAgICAgICAgIHt5eVRvayA9IElOVkFMSURESU1FTjsgcmV0dXJuIHl5VG9rO30KIHtu
dW19JSsgICAgICAgICAgICAgICAgIHt5eVRvayA9IFBFUkNFTlRBR0U7IHJldHVybiB5eVRvazt9
CiB7aW50bnVtfSAgICAgICAgICAgICAgICB7eXlUb2sgPSBJTlRFR0VSOyByZXR1cm4geXlUb2s7
fQoge251bX0gICAgICAgICAgICAgICAgICAge3l5VG9rID0gRkxPQVRUT0tFTjsgcmV0dXJuIHl5
VG9rO30KQEAgLTEwOSw2ICsxMTAsOSBAQCBudGggICAgICAgICAgICAgW1wrLV0/e2ludG51bX0q
bihbXHRcclxuIF0qW1wrLV1bXHRcclxuIF0qe2ludG51bX0pPwogIm5vdCgiICAgICAgICAgICAg
ICAgICAge3l5VG9rID0gTk9URlVOQ1RJT047IHJldHVybiB5eVRvazt9CiAidXJsKCJ7d317c3Ry
aW5nfXt3fSIpIiB7eXlUb2sgPSBVUkk7IHJldHVybiB5eVRvazt9CiAidXJsKCJ7d317dXJsfXt3
fSIpIiAgICB7eXlUb2sgPSBVUkk7IHJldHVybiB5eVRvazt9CisiLXdlYmtpdC1jYWxjKCIgICAg
ICAgICB7eXlUb2sgPSBDQUxDRlVOQ1RJT047IHJldHVybiB5eVRvazt9CisiLXdlYmtpdC1taW4o
IiAgICAgICAgICB7eXlUb2sgPSBNSU5GVU5DVElPTjsgcmV0dXJuIHl5VG9rO30KKyItd2Via2l0
LW1heCgiICAgICAgICAgIHt5eVRvayA9IE1BWEZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQoge2lk
ZW50fSIoIiAgICAgICAgICAgICAge3l5VG9rID0gRlVOQ1RJT047IHJldHVybiB5eVRvazt9CiAK
IFVcK3tyYW5nZX0gICAgICAgICAgICAgIHt5eVRvayA9IFVOSUNPREVSQU5HRTsgcmV0dXJuIHl5
VG9rO30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88960</attachid>
            <date>2011-04-10 16:10:34 -0700</date>
            <delta_ts>2011-04-10 19:00:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54412-20110411091031.patch</filename>
            <type>text/plain</type>
            <size>45445</size>
            <attacher name="Mike Lawther">mikelawther</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODI5NDIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyYjkwNTdlMDBkMDgyNmZiNDJlMTcy
ZDQ2ZWI3NWU3YzgwNTczYzc0Li43ZmIwYTI1Njc1OWU2MmFmZGVkY2MzZjliNTZiOGY0MDZmMGZl
ZTA4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTEtMDQtMTAgIE1pa2UgTGF3dGhlciAgPG1p
a2VsYXd0aGVyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBmbGV4L2Jpc29uIHRva2VucyBhbmQgZ3JhbW1hciBmb3IgQ1NTIGNh
bGMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NDEy
CisKKyAgICAgICAgT25seSB0aGUgJ2Vycm9ycycgYW5kICdyZWdyZXNzaW9uJyB0ZXN0cyBwYXNz
IGFzIGludGVuZGVkIHJpZ2h0IG5vdy4gQXMgb2YgdGhpcworICAgICAgICBwYXRjaCwgbm9uZSBv
ZiB0aGUgYWN0dWFsIGNhbGN1bGF0aW9ucyBhcmUgZXhwZWN0ZWQgdG8gd29yaywgc2luY2Ugb25s
eQorICAgICAgICB0aGUgbGV4aW5nL2dyYW1tYXIgc3RhZ2UgaXMgcHJlc2VudC4KKworICAgICAg
ICAqIGNzczMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGNzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NhbGMv
bGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
Y3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBjc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0zLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9taW5tYXgtZXJyb3JzLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jYWxjL21pbm1heC1lcnJvcnMuaHRtbDogQWRkZWQu
CisgICAgICAgICogY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRtbDogQWRkZWQuCisgICAgICAgICog
Y3NzMy9jYWxjL3NpbXBsZS1taW5tYXgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBj
c3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sOiBBZGRlZC4KKwogMjAxMS0wNC0wNSAgQ3NhYmEg
T3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlbW92ZSBvbmZvcm1j
aGFuZ2UgYW5kIG9uZm9ybWlucHV0IGV2ZW50cy9ldmVudCBoYW5kbGVycwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMtZXJyb3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2NzczMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWM4MTRm
NGU5ODIzZTVjNjkxMDhhZTJhMjRjNDM2NDVjMjhkN2JkMQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2NzczMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1
MyBAQAorQWxsIGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVlbi4K
KwordW5jbG9zZWQgY2FsYyA9PiBQQVNTCit1bmNsb3NlZCBjYWxjIHdpdGggZ2FyYmFnZSA9PiBQ
QVNTCitnYXJiYWdlID0+IFBBU1MKK3plcm8gZGl2aXNpb24gPT4gUEFTUworbm9uIGxlbmd0aCA9
PiBQQVNTCitudW1iZXIgKyBsZW5ndGggPT4gUEFTUworbGVuZ3RoICsgbnVtYmVyID0+IFBBU1MK
K3BlcmNlbnQgKyBudW1iZXIgPT4gUEFTUworbnVtYmVyICsgcGVyY2VudCA9PiBQQVNTCitsZW5n
dGggLSBudW1iZXIgPT4gUEFTUworbnVtYmVyIC0gbGVuZ3RoID0+IFBBU1MKK3BlcmNlbnQgLSBu
dW1iZXIgPT4gUEFTUworbnVtYmVyIC0gcGVyY2VudCA9PiBQQVNTCitsZW5ndGggKiBsZW5ndGgg
PT4gUEFTUworbGVuZ3RoICogcGVyY2VudCA9PiBQQVNTCitwZXJjZW50ICogbGVuZ3RoID0+IFBB
U1MKK3BlcmNlbnQgKiBwZXJjZW50ID0+IFBBU1MKK251bWJlciAvIGxlbmd0aCA9PiBQQVNTCitu
dW1iZXIgLyBwZXJjZW50ID0+IFBBU1MKK2xlbmd0aCAvIGxlbmd0aCA9PiBQQVNTCitsZW5ndGgg
LyBwZXJjZW50ID0+IFBBU1MKK3BlcmNlbnQgLyBsZW5ndGggPT4gUEFTUworcGVyY2VudCAvIHBl
cmNlbnQgPT4gUEFTUworbnVtYmVyIG1vZCBsZW5ndGggPT4gUEFTUworbnVtYmVyIG1vZCBwZXJj
ZW50ID0+IFBBU1MKK2xlbmd0aCBtb2QgbGVuZ3RoID0+IFBBU1MKK2xlbmd0aCBtb2QgcGVyY2Vu
dCA9PiBQQVNTCitwZXJjZW50IG1vZCBsZW5ndGggPT4gUEFTUworcGVyY2VudCBtb2QgcGVyY2Vu
dCA9PiBQQVNTCittb2QxMCA9PiBQQVNTCisxbW9kID0+IFBBU1MKKzcwcHgrNDBweCBubyB3aGl0
ZXNwYWNlIGFyb3VuZCArID0+IFBBU1MKKzcwcHggKzQwcHggbm8gd2hpdGVzcGFjZSBvbiByaWdo
dCBvZiArID0+IFBBU1MKKzcwcHgrIDQwcHggbm8gd2hpdGVzcGFjZSBvbiBsZWZ0IG9mICsgPT4g
UEFTUworNzBweCstNDBweCBubyB3aGl0ZXNwYWNlIGFyb3VuZCArID0+IFBBU1MKKzcwcHgtNDBw
eCBubyB3aGl0ZXNwYWNlIGFyb3VuZCAtID0+IFBBU1MKKzcwcHggLTQwcHggbm8gd2hpdGVzcGFj
ZSBvbiByaWdodCBvZiAtID0+IFBBU1MKKzcwcHgtIDQwcHggbm8gd2hpdGVzcGFjZSBvbiBsZWZ0
IG9mIC0gPT4gUEFTUworNzBweC0rNDBweCBubyB3aGl0ZXNwYWNlIGFyb3VuZCAtID0+IFBBU1MK
K3RvbyBtYW55IG5lc3RzID0+IFBBU1MKK2VuZCB3aXRoIG9wZXJhdG9yID0+IFBBU1MKK3N0YXJ0
IHdpdGggb3BlcmF0b3IgPT4gUEFTUworbm8gZXhwcmVzc2lvbnMgPT4gUEFTUwordG9vIG1hbnkg
cGx1c2VzID0+IFBBU1MKK25vIGJpbmFyeSBvcGVyYXRvciA9PiBQQVNTCit0d28gYmluYXJ5IG9w
ZXJhdG9ycyA9PiBQQVNTCitpbnZhbGlkIG9wZXJhdG9yICdAJyA9PiBQQVNTCitpbnZhbGlkIG9w
ZXJhdG9yICdmbGltJyA9PiBQQVNTCitpbnZhbGlkIG9wZXJhdG9yICdAJyA9PiBQQVNTCitpbnZh
bGlkIG9wZXJhdG9yICdmbGltJyA9PiBQQVNTCitpbnZhbGlkIG9wZXJhdG9yICdmbGltJyB3aXRo
IHBhcmVucyA9PiBQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvY2FsYy1l
cnJvcnMuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjU5MGM0ZTI2MTVmZTcwN2VkZDQwY2ZmNjliNmM3Yzg2YWZhNGExMGQKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvY2FsYy1lcnJvcnMuaHRtbApAQCAtMCww
ICsxLDEwNyBAQAorPCFET0NUWVBFIEhUTUw+Cis8c3R5bGU+CisjdGVzdCBkaXYgeworICAgIGhl
aWdodDogMTAwcHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOworfQorPC9zdHlsZT4KKwor
PHA+CisgIEFsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4u
Cis8L3A+CisKKzxkaXYgaWQ9InRlc3QiPgorCis8IS0tIGp1c3QgcGxhaW4gYmFkIC0tPgorPGRp
diBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDsiPnVuY2xvc2VkIGNh
bGM8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygg
ZmxpbTsiPnVuY2xvc2VkIGNhbGMgd2l0aCBnYXJiYWdlPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0
aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoIGZsaW0gKTsiPmdhcmJhZ2U8L2Rpdj4KKwor
Cis8IS0tIHplcm8gZGl2aXNpb24gLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LWNhbGMoMWV4IC8gMCk7Ij56ZXJvIGRpdmlzaW9uPC9kaXY+CisKKzwhLS0gd3Jv
bmcgY29tYmluYXRpb24gLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LWNhbGMoMjAwKTsiPm5vbiBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBw
eDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMCArIDEwcHgpOyI+bnVtYmVyICsgbGVuZ3RoPC9kaXY+
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTBweCArIDEw
KTsiPmxlbmd0aCArIG51bWJlcjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0
aDogLXdlYmtpdC1jYWxjKDEwJSArIDEwMCk7Ij5wZXJjZW50ICsgbnVtYmVyPC9kaXY+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwICsgMTAlKTsiPm51
bWJlciArIHBlcmNlbnQ8L2Rpdj4KKworPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDog
LXdlYmtpdC1jYWxjKDMwMHB4IC0gMTAwKTsiPmxlbmd0aCAtIG51bWJlcjwvZGl2PgorPGRpdiBz
dHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDMwMCAtIDEwMHB4KTsiPm51
bWJlciAtIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdl
YmtpdC1jYWxjKDEwMCUgLSAxMCk7Ij5wZXJjZW50IC0gbnVtYmVyPC9kaXY+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwIC0gMTAlKTsiPm51bWJlciAt
IHBlcmNlbnQ8L2Rpdj4KKworPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtp
dC1jYWxjKDEwcHgqMTAwcHgpOyI+bGVuZ3RoICogbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTBweCoxMDAlKTsiPmxlbmd0aCAqIHBl
cmNlbnQ8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2Fs
YygxMCUqMTAwcHgpOyI+cGVyY2VudCAqIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6
IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwJSoxMDAlKTsiPnBlcmNlbnQgKiBwZXJjZW50
PC9kaXY+CisKKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygx
MDAvMTBweCk7Ij5udW1iZXIgLyBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBw
eDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAvMTAlKTsiPm51bWJlciAvIHBlcmNlbnQ8L2Rpdj4K
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDBweC8xMHB4
KTsiPmxlbmd0aCAvIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0
aDogLXdlYmtpdC1jYWxjKDEwMHB4LzEwJSk7Ij5sZW5ndGggLyBwZXJjZW50PC9kaXY+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJS8xMHB4KTsiPnBl
cmNlbnQgLyBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13
ZWJraXQtY2FsYygxMDAlLzEwJSk7Ij5wZXJjZW50IC8gcGVyY2VudDwvZGl2PgorCis8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwIG1vZCAxMHB4KTsiPm51
bWJlciBtb2QgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAt
d2Via2l0LWNhbGMoMTAwIG1vZCAxMCUpOyI+bnVtYmVyIG1vZCBwZXJjZW50PC9kaXY+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHggbW9kIDEwcHgp
OyI+bGVuZ3RoIG1vZCBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtY2FsYygxMDBweCBtb2QgMTAlKTsiPmxlbmd0aCBtb2QgcGVyY2VudDwvZGl2
PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgbW9k
IDEwcHgpOyI+cGVyY2VudCBtb2QgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSBtb2QgMTAlKTsiPnBlcmNlbnQgbW9kIHBlcmNl
bnQ8L2Rpdj4KKworPCEtLSBtb2QsICssIC0gcmVxdWlyZSB3aGl0ZXNwYWNlcyBhcm91bmQgdGhl
IG9wZXJhdG9yIC0tPgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDEgbW9kMTAgKiAyMDBweCk7Ij5tb2QxMCA8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAx
MDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxbW9kIDEwICogMjAwcHgpOyI+MW1vZDwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDcwcHgrNDBweCk7
Ij43MHB4KzQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgKyA8L2Rpdj4KKzxkaXYgc3R5bGU9Indp
ZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4ICs0MHB4KTsiPjcwcHggKzQwcHgg
bm8gd2hpdGVzcGFjZSBvbiByaWdodCBvZiArPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweCsgNDBweCk7Ij43MHB4KyA0MHB4IG5vIHdoaXRl
c3BhY2Ugb24gbGVmdCBvZiArPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LWNhbGMoNzBweCstNDBweCk7Ij43MHB4Ky00MHB4IG5vIHdoaXRlc3BhY2UgYXJv
dW5kICsgPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNh
bGMoNzBweC00MHB4KTsiPjcwcHgtNDBweCBubyB3aGl0ZXNwYWNlIGFyb3VuZCAtIDwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDcwcHggLTQwcHgp
OyI+NzBweCAtNDBweCBubyB3aGl0ZXNwYWNlIG9uIHJpZ2h0IG9mIC08L2Rpdj4KKzxkaXYgc3R5
bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4LSA0MHB4KTsiPjcwcHgt
IDQwcHggbm8gd2hpdGVzcGFjZSBvbiBsZWZ0IG9mIC08L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRo
OiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4LSs0MHB4KTsiPjcwcHgtKzQwcHggbm8g
d2hpdGVzcGFjZSBhcm91bmQgLSA8L2Rpdj4KKworPCEtLSB0b28gbWFueSBuZXN0cyBzaG91bGQg
YmUgcmVqZWN0ZWQgdG8gYXZvaWQgc3RhY2sgb3ZlcmZsb3cgLS0+Cis8ZGl2IHN0eWxlPSJ3aWR0
aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgyMDBweCkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKTsiPnRvbyBtYW55IG5lc3RzPC9kaXY+CisgCis8IS0tIGludmFsaWQgZm9ybXVsYXMg
LS0+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHgq
KTsiPmVuZCB3aXRoIG9wZXJhdG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdp
ZHRoOiAtd2Via2l0LWNhbGMoKyArMjAwcHgpOyI+c3RhcnQgd2l0aCBvcGVyYXRvcjwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKCk7Ij5ubyBleHBy
ZXNzaW9uczwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDEwMHB4ICsgKyArMTAwcHgpOyI+dG9vIG1hbnkgcGx1c2VzPC9kaXY+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHggMjAwcHgpOyI+bm8gYmlu
YXJ5IG9wZXJhdG9yPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LWNhbGMoMTAwcHggKiAqIDIpOyI+dHdvIGJpbmFyeSBvcGVyYXRvcnM8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDBweCBAIDIpOyI+aW52
YWxpZCBvcGVyYXRvciAnQCc8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtY2FsYygxIGZsaW0gMik7Ij5pbnZhbGlkIG9wZXJhdG9yICdmbGltJzwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4IEAgMik7
Ij5pbnZhbGlkIG9wZXJhdG9yICdAJzwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1jYWxjKDEgZmxpbSAyKTsiPmludmFsaWQgb3BlcmF0b3IgJ2ZsaW0nPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMSBmbGlt
ICgyKSk7Ij5pbnZhbGlkIG9wZXJhdG9yICdmbGltJyB3aXRoIHBhcmVuczwvZGl2PgorIAorIAor
PC9kaXY+CisKKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKwordmFyIHRlc3QgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgidGVzdCIpOworZm9yICh2YXIgZWxlbWVudCA9IHRlc3QuZmlyc3RD
aGlsZDsgZWxlbWVudDsgZWxlbWVudCA9IGVsZW1lbnQubmV4dFNpYmxpbmcpIHsKKyAgICB2YXIg
d2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoOworICAgIHZhciBlcnJvciA9IFtdOworICAgIGlm
ICh3aWR0aCAhPSAxMDApCisgICAgICAgIGVycm9yLnB1c2goImV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAiICsgd2lkdGgpOworICAgIHZhciBoZWlnaHQgPSBlbGVtZW50Lm9mZnNldEhl
aWdodDsKKyAgICBpZiAoaGVpZ2h0ICE9IDEwMCkKKyAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0
ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyAiICsgd2lkdGgpOworCisgICAgaWYgKGVycm9yID09
ICIiKSB7CisgICAgICAgIGVsZW1lbnQuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gImdyZWVuIjsK
KyAgICAgICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBQQVNTIjsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBlbGVtZW50LmlubmVySFRNTCArPSAiID0+IEZBSUw6ICIgKyBlcnJvci5qb2luKCIs
ICIpOworICAgIH0KK30KKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9j
YWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9j
c3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41M2E0ZWRjMDMxMzJiNGZiYjg5Yjk1ODhhMjYyZjFmYjA3YTMzN2E3Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY29tZXMgZnJvbSBhIHJlZ3Jlc3Np
b24gZmlsZWQgaW4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3NTgx
LgorCitUaGUgdGVzdCBwYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jhc2gKKworCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOWQwZjIzYTY4YjU0YzQyZDNhYjY5MmUyOTk4YTFiMTJmZjNiZTRmZgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLTIu
aHRtbApAQCAtMCwwICsxLDkgQEAKKzxwPlRoaXMgdGVzdCBjb21lcyBmcm9tIGEgcmVncmVzc2lv
biBmaWxlZCBpbiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTc1ODEiPmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzU4MTwv
YT4uPC9wPgorPHA+VGhlIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoPC9wPgorCis8
ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKCgoMXB4KRspKSI+PC9kaXY+CisKKzxzY3Jp
cHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0zLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41M2E0ZWRjMDMxMzJiNGZiYjg5Yjk1ODhhMjYyZjFmYjA3YTMzN2E3Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEt
My1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitUaGlzIHRlc3QgY29tZXMgZnJvbSBhIHJl
Z3Jlc3Npb24gZmlsZWQgaW4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTU3NTgxLgorCitUaGUgdGVzdCBwYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jhc2gKKworCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0zLmh0
bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0zLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZTEyMWU0YzkyNTBlZTQ4YzBlN2NiYmFkZDdkOTI3NGU1MmIzZjQ3YgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3
NTgxLTMuaHRtbApAQCAtMCwwICsxLDkgQEAKKzxwPlRoaXMgdGVzdCBjb21lcyBmcm9tIGEgcmVn
cmVzc2lvbiBmaWxlZCBpbiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTc1ODEiPmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
NzU4MTwvYT4uPC9wPgorPHA+VGhlIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoPC9w
PgorCis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKCgoKDFweCkbKSkiPjwvZGl2Pgor
Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi41M2E0ZWRjMDMxMzJiNGZiYjg5Yjk1ODhhMjYyZjFmYjA3YTMzN2E3Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1
ODEtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNvbWVzIGZyb20gYSBy
ZWdyZXNzaW9uIGZpbGVkIGluIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01NzU4MS4KKworVGhlIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoCisKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEuaHRt
bCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOWMwZTNhMjhiY2RjMTA0YmRhZTVkOWVhMGJiNzFhY2UxZmQ2ZGRmMwotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgx
Lmh0bWwKQEAgLTAsMCArMSw5IEBACis8cD5UaGlzIHRlc3QgY29tZXMgZnJvbSBhIHJlZ3Jlc3Np
b24gZmlsZWQgaW4gPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTU3NTgxIj5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc1ODE8
L2E+LjwvcD4KKzxwPlRoZSB0ZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaDwvcD4KKwor
PGRpdiBzdHlsZT0iQTotd2Via2l0LWNhbGMoKCgxKRspKSI+PC9kaXY+CisKKzxzY3JpcHQ+Citp
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9j
YWxjL21pbm1heC1lcnJvcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL21p
bm1heC1lcnJvcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVkNTcwN2ZhOWM0MjI3MzcwNTBh
NDdkMjJjMzRhMjgxZWQ3YTNmZGUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3Mz
L2NhbGMvbWlubWF4LWVycm9ycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMSBAQAorQWxsIGJv
eGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBncmVlbi4KKworTUlOCit1bmNs
b3NlZCBtaW4gPT4gUEFTUwordW5jbG9zZWQgbWluIHdpdGggZ2FyYmFnZSA9PiBQQVNTCitnYXJi
YWdlID0+IFBBU1MKK2V4dHJhIHRyYWlsaW5nIGNvbW1hID0+IFBBU1MKK2xlYWRpbmcgY29tbWEg
PT4gUEFTUwordHJhaWxpbmcgZ2FyYmFnZSA9PiBQQVNTCitiYWQgZXhwcmVzc2lvbiA9PiBQQVNT
CittaXggbGVuZ3RoIGFuZCBudW1iZXIgPT4gUEFTUworbWl4IG51bWJlciBhbmQgbGVuZ3RoID0+
IFBBU1MKK21peCBwZXJjZW50IGFuZCBudW1iZXIgPT4gUEFTUworbWl4IG51bWJlciBhbmQgcGVy
Y2VudCA9PiBQQVNTCitNQVgKK3VuY2xvc2VkIG1heCA9PiBQQVNTCit1bmNsb3NlZCBtYXggd2l0
aCBnYXJiYWdlID0+IFBBU1MKK21peCBsZW5ndGggYW5kIG51bWJlciA9PiBQQVNTCittaXggbnVt
YmVyIGFuZCBsZW5ndGggPT4gUEFTUworbWl4IHBlcmNlbnQgYW5kIG51bWJlciA9PiBQQVNTCitt
aXggbnVtYmVyIGFuZCBwZXJjZW50ID0+IFBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nz
czMvY2FsYy9taW5tYXgtZXJyb3JzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbWlubWF4
LWVycm9ycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNmNWQ5MTljNjNhYTI0MDBjOWRhNDQ0ZTgyMDk5OTIx
MjI0YjJlMGUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbWlubWF4
LWVycm9ycy5odG1sCkBAIC0wLDAgKzEsNTkgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN0eWxlPgor
I3Rlc3QgZGl2IHsKKyAgICBoZWlnaHQ6IDEwMHB4OworICAgIGJhY2tncm91bmQtY29sb3I6IHJl
ZDsKK30KKzwvc3R5bGU+CisKKzxwPgorICBBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4
ICogMTAwcHggYW5kIGdyZWVuLgorPC9wPgorCis8ZGl2IGlkPSJ0ZXN0Ij4KKworTUlOCis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbigiPnVuY2xvc2VkIG1pbjwv
ZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oIGJvYiI+
dW5jbG9zZWQgbWluIHdpdGggZ2FyYmFnZTwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4
OyB3aWR0aDogLXdlYmtpdC1taW4oIGJvYiApOyI+Z2FyYmFnZTwvZGl2PgorPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oMjBweCwpOyI+ZXh0cmEgdHJhaWxpbmcg
Y29tbWE8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWlu
KCwyMHB4KTsiPmxlYWRpbmcgY29tbWE8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsg
d2lkdGg6IC13ZWJraXQtbWluKDIwcHgsIGJvYik7Ij50cmFpbGluZyBnYXJiYWdlPC9kaXY+Cis8
ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2VibWl0LW1pbigyMHB4LCAxMHB4ICsg
ZmxpbSk7Ij5iYWQgZXhwcmVzc2lvbjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1taW4oMjU2cHgsIDEyMCk7Ij5taXggbGVuZ3RoIGFuZCBudW1iZXI8L2Rp
dj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKDI1NiwgMTIw
cHgpOyI+bWl4IG51bWJlciBhbmQgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LW1pbig1MCUsIDE1MCk7Ij5taXggcGVyY2VudCBhbmQgbnVtYmVy
PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbigxNTAs
IDUwJSk7Ij5taXggbnVtYmVyIGFuZCBwZXJjZW50PC9kaXY+CisKK01BWAorPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1tYXgoIj51bmNsb3NlZCBtYXg8L2Rpdj4KKzxk
aXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWF4KCBib2IiPnVuY2xvc2Vk
IG1heCB3aXRoIGdhcmJhZ2U8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtbWF4KDI1NnB4LCAxMjApOyI+bWl4IGxlbmd0aCBhbmQgbnVtYmVyPC9kaXY+Cis8
ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1heCgyNTYsIDEyMHB4KTsi
Pm1peCBudW1iZXIgYW5kIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1tYXgoNTAlLCAxNTApOyI+bWl4IHBlcmNlbnQgYW5kIG51bWJlcjwvZGl2
PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1tYXgoMTUwLCA1MCUp
OyI+bWl4IG51bWJlciBhbmQgcGVyY2VudDwvZGl2PgorCis8L2Rpdj4KKworPHNjcmlwdD4KK2lm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCgpOworCit2YXIgdGVzdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0
Iik7Citmb3IgKHZhciBlbGVtZW50ID0gdGVzdC5maXJzdENoaWxkOyBlbGVtZW50OyBlbGVtZW50
ID0gZWxlbWVudC5uZXh0U2libGluZykgeworICAgIHZhciB3aWR0aCA9IGVsZW1lbnQub2Zmc2V0
V2lkdGg7CisgICAgdmFyIGVycm9yID0gW107CisgICAgaWYgKHdpZHRoICE9IDEwMCkKKyAgICAg
ICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzICIgKyB3aWR0aCk7
CisgICAgdmFyIGhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0OworICAgIGlmIChoZWlnaHQg
IT0gMTAwKQorICAgICAgICBlcnJvci5wdXNoKCJleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQg
d2FzICIgKyB3aWR0aCk7CisKKyAgICBpZiAoZXJyb3IgPT0gIiIpIHsKKyAgICAgICAgZWxlbWVu
dC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAiZ3JlZW4iOworICAgICAgICBlbGVtZW50LmlubmVy
SFRNTCArPSAiID0+IFBBU1MiOworICAgIH0gZWxzZSB7CisgICAgICAgIGVsZW1lbnQuaW5uZXJI
VE1MICs9ICIgPT4gRkFJTDogIiArIGVycm9yLmpvaW4oIiwgIik7CisgICAgfQorfQorPC9zY3Jp
cHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtY2FsY3MtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjQ1MGY5Y2Y3MmY0YzM4NGY4Y2U2NjYzOGI3NmFlN2JlMThjMGYyNWUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDQ5IEBACitBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4
ICogMTAwcHggYW5kIGdyZWVuLgorCitjb250cm9sID0+IFBBU1MKKzUwcHggKyA1MHB4ID0+IEZB
SUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4y
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NgorMTUwcHggLSA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorNTBweCArIDUwcHggKDIgc3BhY2VzIGFyb3VuZCBvcGVyYXRvcikgPT4gRkFJTDog
QHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2CisxNTBweCAtIDUwcHggKDIgc3BhY2VzIGFyb3VuZCBvcGVyYXRv
cikgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBA
em9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4KjIgPT4gRkFJTDogQHpvb209MSBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2Cis1MHB4ICoyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCogMiA9
PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29t
PTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIwMHB4LzIgPT4gRkFJTDogQHpvb209MSBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2CisyMDBweCAvMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIwMHB4LyAyID0+
IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209
MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCooMikgPT4gRkFJTDogQHpvb209MSBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2Cis1MHB4ICooMikgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4KiAoMikg
PT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4KigxICsgMSkgPT4gRkFJTDogQHpvb209
MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2Cis1MHB4KigxMiAtIDEwKSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYK
KzUwcHgqKDEwIC8gNSkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Njsg
QHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMHB4KiAoNSAqIDIp
ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCogKDEyIG1vZCAxMCkgPT4gRkFJTDog
QHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4ICsgMTBweCAqIDUgKG9wZXJhdGlvbiBvcmRlcikgPT4g
RkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0x
LjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisxMTAwcHggbW9kIDEwMDAgPT4gRkFJTDogQHpvb209
MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2CisxMDAlLzIgKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29t
PTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NgorMTAwJSArIC0xMDBweCAod2hlcmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJ
TDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis4MCUgLSA2MHB4ICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9
PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29t
PTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzMwMHB4IC0gMTAwJSAod2hlcmUgMTAwJSBpcyAy
MDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CistMTAwcHggKyAxMDAlICh3aGVyZSAx
MDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBA
em9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzIwJSArIDMwJSAod2hl
cmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis4MCUgLSAzMCUg
KHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMTAlICog
NSAod2hlcmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1ICog
MTAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKygx
MDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisoNTBweCArIDUwcHgpID0+IEZBSUw6
IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NgorKDUwcHgpICsgNTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKKzUwcHggKyAoNTBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4ICsg
NTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHggKyAyNXB4ICogMiA9PiBGQUlM
OiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTYKKygyNXB4ICsgMjVweCkgKiAyID0+IEZBSUw6IEB6b29tPTEg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NgorMiAqIDUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisyICogMTAw
cHggLyAyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMTIgbW9kIDEwICogNTBweCA9PiBG
QUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEu
MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKygxZW0gLSAxZW0pICsgMTAwcHggPT4gRkFJTDogQHpv
b209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2Cis1MHB4ICsgKzUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
CistNTBweCArIDE1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorLTUwcHggLSAtMTUw
cHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBA
em9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisoKCgoKCgoMTAwcHgpKSkpKSkpID0+IEZB
SUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4y
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NgorMTAwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCBo
ZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUwOyBAem9vbT0xLjIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEw
MCwgYnV0IHdhcyA1MDsgQHpvb209MiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUw
CisxMDAlICogMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3
YXMgNTA7IEB6b29tPTEuMiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUwOyBAem9v
bT0yIGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3YXMgNTAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY2Fs
Yy9zaW1wbGUtY2FsY3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZmIyZWUyM2FkOWY2ZmYyY2IzY2U2YTA1
ZGM2MjRlOGViMzcxNjI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxj
L3NpbXBsZS1jYWxjcy5odG1sCkBAIC0wLDAgKzEsMTI3IEBACis8IURPQ1RZUEUgSFRNTD4NCis8
c3R5bGU+DQorLndpZHRoLXRlc3Qgew0KKyAgICBoZWlnaHQ6IDEwMHB4Ow0KKyAgICB3aWR0aDog
MjU2cHg7DQorICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsNCit9DQorDQorLmhlaWdodC10ZXN0
IHsNCisgICAgd2lkdGg6IDEwMHB4Ow0KKyAgICBoZWlnaHQ6IDUwcHg7DQorICAgIGJhY2tncm91
bmQtY29sb3I6IHJlZDsNCit9DQorPC9zdHlsZT4NCisNCis8cD4NCisgIEFsbCBib3hlcyBiZWxv
dyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uDQorPC9wPg0KKw0KKzxkaXYgaWQ9
InRlc3QiPg0KKzxkaXYgc3R5bGU9IndpZHRoOjEwMHB4OyBoZWlnaHQ6MTAwcHg7Ij5jb250cm9s
PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNh
bGMoNTBweCArIDUwcHgpOyI+NTBweCArIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxNTBweCAtIDUwcHgpOyI+MTUwcHggLSA1
MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWNhbGMoNTBweCAgKyAgNTBweCk7Ij41MHB4ICArICA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3Bl
cmF0b3IpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Vi
a2l0LWNhbGMoMTUwcHggIC0gIDUwcHgpOyI+MTUwcHggIC0gNTBweCAoMiBzcGFjZXMgYXJvdW5k
IG9wZXJhdG9yKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1jYWxjKDUwcHgqMik7Ij41MHB4KjI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICoyKTsiPjUwcHggKjI8L2Rpdj4N
Cis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4
KiAyKTsiPjUwcHgqIDI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYygyMDBweC8yKTsiPjIwMHB4LzI8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygyMDBweCAvMik7Ij4yMDBweCAv
MjwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1j
YWxjKDIwMHB4LyAyKTsiPjIwMHB4LyAyPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCooMikpOyI+NTBweCooMik8L2Rpdj4NCis8
ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICoo
MikpOyI+NTBweCAqKDIpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9Indp
ZHRoOiAtd2Via2l0LWNhbGMoNTBweCogKDIpKTsiPjUwcHgqICgyKTwvZGl2Pg0KKzxkaXYgY2xh
c3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqKDEgKyAxKSk7
Ij41MHB4KigxICsgMSk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYyg1MHB4KigxMiAtIDEwKSk7Ij41MHB4KigxMiAtIDEwKTwvZGl2Pg0K
KzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgq
KDEwIC8gNSkpOyI+NTBweCooMTAgLyA1KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDEwcHgqICg1ICogMikpOyI+MTBweCogKDUgKiAy
KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1j
YWxjKDUwcHgqICgxMiBtb2QgMTApKTsiPjUwcHgqICgxMiBtb2QgMTApPC9kaXY+DQorPGRpdiBj
bGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCArIDEwcHgg
KiA1KTsiPjUwcHggKyAxMHB4ICogNSAob3BlcmF0aW9uIG9yZGVyKTwvZGl2Pg0KKzxkaXYgY2xh
c3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDExMDBweCBtb2QgMTAw
MCk7Ij4xMTAwcHggbW9kIDEwMDA8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJh
Y2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNz
PSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMDAlLzIpOyI+MTAwJS8y
ICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRo
OiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAg
IDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUg
KyAtMTAwcHgpOyI+MTAwJSArIC0xMDBweCAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8
L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRl
OyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtY2FsYyg4MCUgLSA2MHB4KTsiPjgwJSAtIDYwcHggKHdoZXJlIDEwMCUg
aXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNr
Z3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0i
d2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMzAwcHggLSAxMDAlKTsiPjMw
MHB4IC0gMTAwJSAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0
eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBw
ZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
Y2FsYygtMTAwcHggKyAxMDAlKTsiPi0xMDBweCArIDEwMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgp
PC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNv
bG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVz
dCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMjAlICsgMzAlKTsiPjIwJSArIDMwJSAod2hl
cmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAw
cHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg4MCUgLSAzMCUp
OyI+ODAlIC0gMzAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYg
c3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3Jh
cHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1jYWxjKDEwJSAqIDUpOyI+MTAlICogNSAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8
L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRl
OyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtY2FsYyg1ICogMTAlKTsiPjUgKiAxMCUgKHdoZXJlIDEwMCUgaXMgMjAw
cHgpPC9kaXY+DQorPC9kaXY+DQorPCEtLQ0KKyBGSVhNRTogd2hhdCBkbyB3ZSBkbyB3aXRoIG1v
ZCBvZiBwZXJjZW50Pw0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xv
cjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3Qi
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDc1JSBtb2QgMTAwKTsiPjE1MCUgbW9kIDEwMCAo
d2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCistLT4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoMTAwcHgpKTsiPigxMDBweCk8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
YygoNTBweCArIDUwcHgpKTsiPig1MHB4ICsgNTBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0
aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoNTBweCkgKyA1MHB4KTsiPig1MHB4
KSArIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13
ZWJraXQtY2FsYyg1MHB4ICsgKDUwcHgpKTsiPjUwcHggKyAoNTBweCk8L2Rpdj4NCis8ZGl2IGNs
YXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyggNTBweCArICA1MHB4
ICk7Ij4gNTBweCArICA1MHB4IDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1jYWxjKCA1MHB4ICsgMjVweCAqIDIgKTsiPiA1MHB4ICsgMjVweCAq
IDIgPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWNhbGMoICgyNXB4ICsgMjVweCkgKiAyICk7Ij4gKDI1cHggKyAyNXB4KSAqIDIgPC9kaXY+DQor
PGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMiAqIDUw
cHgpOyI+MiAqIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYygyICogMTAwcHggLyAyKTsiPjIgKiAxMDBweCAvIDI8L2Rpdj4NCis8
ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMiBtb2Qg
MTAgKiA1MHB4KTsiPjEyIG1vZCAxMCAqIDUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoMWVtIC0gMWVtKSArIDEwMHB4KTsiPigx
ZW0gLSAxZW0pICsgMTAwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0i
d2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4ICsgICs1MHB4KTsiPjUwcHggKyAgKzUwcHg8L2Rpdj4N
Cis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygtNTBw
eCArIDE1MHB4KTsiPi01MHB4ICsgMTUwcHg8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygtNTBweCAtIC0xNTBweCk7Ij4tNTBweCAtIC0x
NTBweDwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1jYWxjKCgoKCgoKCgxMDBweCkpKSkpKSkpOyI+KCgoKCgoKDEwMHB4KSkpKSkpKTwvZGl2Pg0K
KzxkaXYgY2xhc3M9ImhlaWdodC10ZXN0IiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LWNhbGMoMTAw
cHgpOyI+MTAwcHg8L2Rpdj4NCis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDUwcHg7IGJhY2tncm91bmQt
Y29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgPGRpdiBjbGFzcz0iaGVpZ2h0LXRl
c3QiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtY2FsYygxMDAlICogMik7Ij4xMDAlICogMjwvZGl2
Pg0KKzwvZGl2Pg0KKzwvZGl2Pg0KKw0KKzxzY3JpcHQ+DQoraWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikNCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOw0KKw0K
K3pvb21MZXZlbHMgPSBbMSwgMS4yLCAyXTsNCit2YXIgdGVzdCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJ0ZXN0Iik7DQorZm9yICh2YXIgY2hpbGQgPSB0ZXN0LmZpcnN0Q2hpbGQ7IGNoaWxk
OyBjaGlsZCA9IGNoaWxkLm5leHRTaWJsaW5nKSB7DQorICAgIHZhciBlbGVtZW50ID0gY2hpbGQ7
DQorICAgIGlmIChlbGVtZW50LmNsYXNzTmFtZSA9PSAid3JhcHBlciIpIHsNCisgICAgICAgIGVs
ZW1lbnQgPSBlbGVtZW50LmZpcnN0Q2hpbGQ7DQorICAgICAgICB3aGlsZSAoZWxlbWVudC50YWdO
YW1lICE9ICJESVYiKSBlbGVtZW50ID0gZWxlbWVudC5uZXh0U2libGluZzsNCisgICAgfQ0KKw0K
KyAgICB2YXIgZXJyb3IgPSBbXTsNCisgICAgZm9yICh2YXIgeiA9IDA7IHogPCB6b29tTGV2ZWxz
Lmxlbmd0aDsgeisrKSB7DQorICAgICAgICB2YXIgem9vbSA9IHpvb21MZXZlbHNbel07DQorICAg
ICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnpvb20gPSB6b29tOw0KKyAgICAgICAgdmFyIHdpZHRo
ID0gZWxlbWVudC5vZmZzZXRXaWR0aDsNCisgICAgICAgIGlmICh3aWR0aCAhPSAxMDApDQorICAg
ICAgICAgICAgZXJyb3IucHVzaCgiQHpvb209IiArIHpvb20gKyAiIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAiICsgd2lkdGgpOw0KKyAgICAgICAgdmFyIGhlaWdodCA9IGVsZW1lbnQu
b2Zmc2V0SGVpZ2h0Ow0KKyAgICAgICAgaWYgKGhlaWdodCAhPSAxMDApDQorICAgICAgICAgICAg
ZXJyb3IucHVzaCgiQHpvb209IiArIHpvb20gKyAiIGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1
dCB3YXMgIiArIGhlaWdodCk7DQorICAgIH0NCisgICAgaWYgKGVycm9yID09ICIiKSB7DQorICAg
ICAgICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9ICJncmVlbiI7DQorICAgICAgICBl
bGVtZW50LmlubmVySFRNTCArPSAiID0+IFBBU1MiOw0KKyAgICB9IGVsc2UNCisgICAgICAgIGVs
ZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4gRkFJTDogIiArIGVycm9yLmpvaW4oIjsgIik7DQorfQ0K
K2RvY3VtZW50LmJvZHkuc3R5bGUuem9vbSA9IDE7DQorPC9zY3JpcHQ+DQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXgtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc1
OTY2OTA5Y2FhODMyYmEzMTQwZDE5YTc5MzJiM2U2YmYzYTI2YjAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLW1pbm1heC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxOCBAQAorQWxsIGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEwMHB4IGFuZCBn
cmVlbi4KKworbWluKDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2CittaW4oIDEwMHB4ICkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorbWluKCgoKDEwMHB4KSkpKSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2CittaW4oMTUwcHgsMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKK21pbigxNTBweCwxMDBweCwyMDBweCkgPT4gRkFJTDogZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWluKCAxNTBweCAsIDEwMHB4ICwyMDBweCkg
PT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWluKDkwcHggKyA1
MHB4ICwxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1Ngor
bWluKDEwMCUsMTAwcHgpIC0gd2hlcmUgMTAwJSBpcyAyMDBweCA9PiBGQUlMOiBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittaW4oMTAwcHgsMTAwJSkgLSB3aGVyZSAxMDAlIGlz
IDIwMHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21heCgx
MDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDUw
cHgsMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21h
eCg1MHB4LDEwMHB4LDIwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKK21heCgxMjBweCAtIDUwcHgsMTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKK21heCgxMDAlLDEwMHB4KSAtIHdoZXJlIDEwMCUgaXMgNTBweCA9
PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoMTAwcHgsMTAw
JSkgLSB3aGVyZSAxMDAlIGlzIDUwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NgorbWluKDIwMHB4LDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCBoZWlnaHQgb2Yg
MTAwLCBidXQgd2FzIDUwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxl
LW1pbm1heC5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hMDE3MzE2Nzc4ZGI2MmQ4NTkzMzVjOWQ3MmUzYmI4YjljNDRjZGY5Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbApA
QCAtMCwwICsxLDc3IEBACis8IURPQ1RZUEUgSFRNTD4NCis8c3R5bGU+DQorLndpZHRoLXRlc3Qg
ew0KKyAgICBoZWlnaHQ6IDEwMHB4Ow0KKyAgICB3aWR0aDogMjU2cHg7DQorICAgIGJhY2tncm91
bmQtY29sb3I6IHJlZDsNCit9DQorDQorLmhlaWdodC10ZXN0IHsNCisgICAgd2lkdGg6IDEwMHB4
Ow0KKyAgICBoZWlnaHQ6IDUwcHg7DQorICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsNCit9DQor
PC9zdHlsZT4NCisNCis8cD4NCisgIEFsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAx
MDBweCBhbmQgZ3JlZW4uDQorPC9wPg0KKw0KKzxkaXYgaWQ9InRlc3QiPg0KKw0KKzxkaXYgY2xh
c3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1taW4oMTAwcHgpOyI+bWluKDEw
MHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1taW4oIDEwMHB4ICk7Ij5taW4oIDEwMHB4ICk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKCgoKDEwMHB4KSkpKTsiPm1pbigoKCgxMDBw
eCkpKSk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtbWluKDE1MHB4LDEwMHB4KTsiPm1pbigxNTBweCwxMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNz
PSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDE1MHB4LDEwMHB4LDIwMHB4
KTsiPm1pbigxNTBweCwxMDBweCwyMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKCAgMTUwcHggLCAgMTAwcHggICwyMDBweCk7Ij5t
aW4oICAxNTBweCAgLCAgMTAwcHggICwyMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10
ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDkwcHggKyA1MHB4ICwxMDBweCk7Ij5taW4o
OTBweCArIDUwcHggLDEwMHB4KTwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFj
a2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICA8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDEwMCUsMTAwcHgpOyI+bWluKDEw
MCUsMTAwcHgpIC0gd2hlcmUgMTAwJSBpcyAyMDBweDwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5
bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBl
ciI+DQorICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWlu
KDEwMHB4LDEwMCUpOyI+bWluKDEwMHB4LDEwMCUpIC0gd2hlcmUgMTAwJSBpcyAyMDBweDwvZGl2
Pg0KKzwvZGl2Pg0KKw0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1tYXgoMTAwcHgpOyI+bWF4KDEwMHB4KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRl
c3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoNTBweCwxMDBweCk7Ij5tYXgoNTBweCwxMDBw
eCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
bWF4KDUwcHgsMTAwcHgsMjBweCk7Ij5tYXgoNTBweCwxMDBweCwyMHB4KTwvZGl2Pg0KKzxkaXYg
Y2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTIwcHggLSA1MHB4
LDEwMHB4KTsiPm1heCgxMjBweCAtIDUwcHgsMTAwcHgpPC9kaXY+DQorPGRpdiBzdHlsZT0id2lk
dGg6IDUwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAg
PGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1heCgxMDAlLDEw
MHB4KTsiPm1heCgxMDAlLDEwMHB4KSAtIHdoZXJlIDEwMCUgaXMgNTBweDwvZGl2Pg0KKzwvZGl2
Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiA1MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNs
YXNzPSJ3cmFwcGVyIj4NCisgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1tYXgoMTAwcHgsMTAwJSk7Ij5tYXgoMTAwcHgsMTAwJSkgLSB3aGVyZSAxMDAlIGlz
IDUwcHg8L2Rpdj4NCis8L2Rpdj4NCisNCis8ZGl2IGNsYXNzPSJoZWlnaHQtdGVzdCIgc3R5bGU9
ImhlaWdodDogLXdlYmtpdC1taW4oMjAwcHgsIDEwMHB4KTsiPm1pbigyMDBweCwxMDBweCk8L2Rp
dj4NCisNCis8L2Rpdj4NCisNCis8c2NyaXB0Pg0KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpDQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsNCisNCit2YXIg
dGVzdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0Iik7DQorZm9yICh2YXIgY2hpbGQg
PSB0ZXN0LmZpcnN0Q2hpbGQ7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLm5leHRTaWJsaW5nKSB7DQor
ICAgIHZhciBlbGVtZW50ID0gY2hpbGQ7DQorICAgIGlmIChlbGVtZW50LmNsYXNzTmFtZSA9PSAi
d3JhcHBlciIpIHsNCisgICAgICAgIGVsZW1lbnQgPSBlbGVtZW50LmZpcnN0Q2hpbGQ7DQorICAg
ICAgICB3aGlsZSAoZWxlbWVudC50YWdOYW1lICE9ICJESVYiKSBlbGVtZW50ID0gZWxlbWVudC5u
ZXh0U2libGluZzsNCisgICAgfQ0KKw0KKyAgICB2YXIgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdp
ZHRoOw0KKyAgICB2YXIgZXJyb3IgPSBbXTsNCisgICAgaWYgKHdpZHRoICE9IDEwMCkNCisgICAg
ICAgIGVycm9yLnB1c2goImV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAiICsgd2lkdGgp
Ow0KKyAgICB2YXIgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7DQorICAgIGlmIChoZWln
aHQgIT0gMTAwKQ0KKyAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwg
YnV0IHdhcyAiICsgaGVpZ2h0KTsNCisNCisgICAgaWYgKGVycm9yID09ICIiKSB7DQorICAgICAg
ICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9ICJncmVlbiI7DQorICAgICAgICBlbGVt
ZW50LmlubmVySFRNTCArPSAiID0+IFBBU1MiOw0KKyAgICB9IGVsc2UNCisgICAgICAgIGVsZW1l
bnQuaW5uZXJIVE1MICs9ICIgPT4gRkFJTDogIiArIGVycm9yLmpvaW4oIiwgIik7DQorfQ0KKzwv
c2NyaXB0Pg0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmZmRjZTQzNmQyNWQ5ZmI2ZDM3MDA2NWU1NWY2YTJmYTRh
M2Y0Mjc0Li42YThkMDI5ODE0ODVlNzlhOWE2MjZiZDc3ZWFjZDc0ZWU1YTc2M2NhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDQtMTAgIE1pa2UgTGF3dGhlciAgPG1pa2VsYXd0
aGVyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBmbGV4L2Jpc29uIHRva2VucyBhbmQgZ3JhbW1hciBmb3IgQ1NTIGNhbGMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NDEyCisKKyAg
ICAgICAgVGVzdHM6IGNzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sCisgICAgICAgICAgICAgICBj
c3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLmh0bWwKKyAgICAgICAgICAgICAgIGNz
czMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLTMuaHRtbAorICAgICAgICAgICAgICAgY3Nz
My9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9j
YWxjL21pbm1heC1lcnJvcnMuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9jYWxjL3NpbXBsZS1j
YWxjcy5odG1sCisgICAgICAgICAgICAgICBjc3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sCisK
KyAgICAgICAgKiBjc3MvQ1NTR3JhbW1hci55OgorICAgICAgICAqIGNzcy9DU1NQYXJzZXJWYWx1
ZXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyVmFsdWVMaXN0OjppbnNlcnRWYWx1
ZUF0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlclZhbHVlTGlzdDo6ZXh0ZW5kKToKKyAg
ICAgICAgKiBjc3MvQ1NTUGFyc2VyVmFsdWVzLmg6CisgICAgICAgICogY3NzL3Rva2VuaXplci5m
bGV4OgorCiAyMDExLTA0LTA1ICBMdWtlIE1hY3BoZXJzb24gICA8bWFjcGhlcnNvbkBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueSBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NHcmFtbWFyLnkKaW5kZXggMzM0ZmUxZDBlZjQ2MTFlOWE3NGRiMGEzYWQzYzc4M2NkNTNhODE0
Mi4uZDczZjg3YTE3ODZkMTIyZjVjOGI4NDNmMzNjY2I2NGU5MjA1ZTRkNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueQorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTR3JhbW1hci55CkBAIC05OSw3ICs5OSw3IEBAIHN0YXRpYyBpbnQgY3NzeXlsZXgoWVlTVFlQ
RSogeXlsdmFsLCB2b2lkKiBwYXJzZXIpCiAKICV9CiAKLSVleHBlY3QgNTEKKyVleHBlY3QgNTUK
IAogJW5vbmFzc29jIExPV0VTVF9QUkVDCiAKQEAgLTE4Myw2ICsxODMsNyBAQCBzdGF0aWMgaW50
IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCogcGFyc2VyKQogJXRva2VuIDxudW1iZXI+
IEhFUlRaCiAldG9rZW4gPG51bWJlcj4gS0hFUlRaCiAldG9rZW4gPHN0cmluZz4gRElNRU4KKyV0
b2tlbiA8c3RyaW5nPiBJTlZBTElERElNRU4KICV0b2tlbiA8bnVtYmVyPiBQRVJDRU5UQUdFCiAl
dG9rZW4gPG51bWJlcj4gRkxPQVRUT0tFTgogJXRva2VuIDxudW1iZXI+IElOVEVHRVIKQEAgLTE5
MSw2ICsxOTIsOSBAQCBzdGF0aWMgaW50IGNzc3l5bGV4KFlZU1RZUEUqIHl5bHZhbCwgdm9pZCog
cGFyc2VyKQogJXRva2VuIDxzdHJpbmc+IEZVTkNUSU9OCiAldG9rZW4gPHN0cmluZz4gQU5ZRlVO
Q1RJT04KICV0b2tlbiA8c3RyaW5nPiBOT1RGVU5DVElPTgorJXRva2VuIDxzdHJpbmc+IENBTENG
VU5DVElPTgorJXRva2VuIDxzdHJpbmc+IE1JTkZVTkNUSU9OCisldG9rZW4gPHN0cmluZz4gTUFY
RlVOQ1RJT04KIAogJXRva2VuIDxzdHJpbmc+IFVOSUNPREVSQU5HRQogCkBAIC0yNzIsNiArMjc2
LDE0IEBAIHN0YXRpYyBpbnQgY3NzeXlsZXgoWVlTVFlQRSogeXlsdmFsLCB2b2lkKiBwYXJzZXIp
CiAldHlwZSA8dmFsdWU+IHRlcm0KICV0eXBlIDx2YWx1ZT4gdW5hcnlfdGVybQogJXR5cGUgPHZh
bHVlPiBmdW5jdGlvbgorJXR5cGUgPHZhbHVlPiBjYWxjX2Z1bmNfdGVybQorJXR5cGUgPGNoYXJh
Y3Rlcj4gY2FsY19mdW5jX29wZXJhdG9yCisldHlwZSA8dmFsdWVMaXN0PiBjYWxjX2Z1bmNfZXhw
cgorJXR5cGUgPHZhbHVlTGlzdD4gY2FsY19mdW5jX2V4cHJfbGlzdAorJXR5cGUgPHZhbHVlTGlz
dD4gY2FsY19mdW5jX3BhcmVuX2V4cHIKKyV0eXBlIDx2YWx1ZT4gY2FsY19mdW5jdGlvbgorJXR5
cGUgPHN0cmluZz4gbWluX29yX21heAorJXR5cGUgPHZhbHVlPiBtaW5fb3JfbWF4X2Z1bmN0aW9u
CiAKICV0eXBlIDxzdHJpbmc+IGVsZW1lbnRfbmFtZQogJXR5cGUgPHN0cmluZz4gYXR0cl9uYW1l
CkBAIC0xNDA4LDYgKzE0MjAsMTIgQEAgdGVybToKICAgfCBmdW5jdGlvbiB7CiAgICAgICAkJCA9
ICQxOwogICB9CisgIHwgY2FsY19mdW5jdGlvbiB7CisgICAgICAkJCA9ICQxOworICB9CisgIHwg
bWluX29yX21heF9mdW5jdGlvbiB7CisgICAgICAkJCA9ICQxOworICB9CiAgIHwgJyUnIG1heWJl
X3NwYWNlIHsgLyogSGFuZGxlIHdpZHRoOiAlOyAqLwogICAgICAgJCQuaWQgPSAwOyAkJC51bml0
ID0gMDsKICAgfQpAQCAtMTQ2NCw2ICsxNDgyLDE0NCBAQCBmdW5jdGlvbjoKICAgICAgICAgJCQu
ZnVuY3Rpb24gPSBmOwogICB9CiAgIDsKKyAKK2NhbGNfZnVuY190ZXJtOgorICB1bmFyeV90ZXJt
IHsgJCQgPSAkMTsgfQorICB8IHVuYXJ5X29wZXJhdG9yIHVuYXJ5X3Rlcm0geyAkJCA9ICQyOyAk
JC5mVmFsdWUgKj0gJDE7IH0KKyAgOworCitjYWxjX2Z1bmNfb3BlcmF0b3I6CisgICAgJysnIFdI
SVRFU1BBQ0UgeworICAgICAgICAkJCA9ICcrJzsKKyAgICB9CisgICAgfCAnLScgV0hJVEVTUEFD
RSB7CisgICAgICAgICQkID0gJy0nOworICAgIH0KKyAgICB8ICcqJyBtYXliZV9zcGFjZSB7Cisg
ICAgICAgICQkID0gJyonOworICAgIH0KKyAgICB8ICcvJyBtYXliZV9zcGFjZSB7CisgICAgICAg
ICQkID0gJy8nOworICAgIH0KKyAgICB8IElERU5UIG1heWJlX3NwYWNlIHsKKyAgICAgICAgaWYg
KGVxdWFsSWdub3JpbmdDYXNlKCJtb2QiLCAkMS5jaGFyYWN0ZXJzLCAkMS5sZW5ndGgpKQorICAg
ICAgICAgICAgJCQgPSAnJSc7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICQkID0gMDsKKyAg
ICB9CisgIDsKKworY2FsY19mdW5jX3BhcmVuX2V4cHI6CisgICAgJygnIG1heWJlX3NwYWNlIGNh
bGNfZnVuY19leHByIG1heWJlX3NwYWNlICcpJyBtYXliZV9zcGFjZSB7CisgICAgICAgIGlmICgk
MykgeworICAgICAgICAgICAgJCQgPSAkMzsKKyAgICAgICAgICAgIENTU1BhcnNlclZhbHVlIHY7
CisgICAgICAgICAgICB2LmlkID0gMDsKKyAgICAgICAgICAgIHYudW5pdCA9IENTU1BhcnNlclZh
bHVlOjpPcGVyYXRvcjsKKyAgICAgICAgICAgIHYuaVZhbHVlID0gJygnOworICAgICAgICAgICAg
JCQtPmluc2VydFZhbHVlQXQoMCwgdik7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICcpJzsKKyAg
ICAgICAgICAgICQkLT5hZGRWYWx1ZSh2KTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAk
JCA9IDA7CisgICAgfQorCitjYWxjX2Z1bmNfZXhwcjoKKyAgICBjYWxjX2Z1bmNfdGVybSBtYXli
ZV9zcGFjZSB7CisgICAgICAgIENTU1BhcnNlciogcCA9IHN0YXRpY19jYXN0PENTU1BhcnNlcio+
KHBhcnNlcik7CisgICAgICAgICQkID0gcC0+Y3JlYXRlRmxvYXRpbmdWYWx1ZUxpc3QoKTsKKyAg
ICAgICAgJCQtPmFkZFZhbHVlKHAtPnNpbmtGbG9hdGluZ1ZhbHVlKCQxKSk7CisgICAgfQorICAg
IHwgY2FsY19mdW5jX2V4cHIgY2FsY19mdW5jX29wZXJhdG9yIGNhbGNfZnVuY190ZXJtIHsKKyAg
ICAgICAgQ1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFyc2VyKj4ocGFyc2VyKTsKKyAg
ICAgICAgaWYgKCQxICYmICQyKSB7CisgICAgICAgICAgICAkJCA9ICQxOworICAgICAgICAgICAg
Q1NTUGFyc2VyVmFsdWUgdjsKKyAgICAgICAgICAgIHYuaWQgPSAwOworICAgICAgICAgICAgdi51
bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9wZXJhdG9yOworICAgICAgICAgICAgdi5pVmFsdWUgPSAk
MjsKKyAgICAgICAgICAgICQkLT5hZGRWYWx1ZSh2KTsKKyAgICAgICAgICAgICQkLT5hZGRWYWx1
ZShwLT5zaW5rRmxvYXRpbmdWYWx1ZSgkMykpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAg
ICQkID0gMDsKKworICAgIH0KKyAgICB8IGNhbGNfZnVuY19leHByIGNhbGNfZnVuY19vcGVyYXRv
ciBjYWxjX2Z1bmNfcGFyZW5fZXhwciB7CisgICAgICAgIGlmICgkMSAmJiAkMiAmJiAkMykgewor
ICAgICAgICAgICAgJCQgPSAkMTsKKyAgICAgICAgICAgIENTU1BhcnNlclZhbHVlIHY7CisgICAg
ICAgICAgICB2LmlkID0gMDsKKyAgICAgICAgICAgIHYudW5pdCA9IENTU1BhcnNlclZhbHVlOjpP
cGVyYXRvcjsKKyAgICAgICAgICAgIHYuaVZhbHVlID0gJDI7CisgICAgICAgICAgICAkJC0+YWRk
VmFsdWUodik7CisgICAgICAgICAgICAkJC0+ZXh0ZW5kKCooJDMpKTsKKyAgICAgICAgfSBlbHNl
IAorICAgICAgICAgICAgJCQgPSAwOworICAgIH0KKyAgICB8IGNhbGNfZnVuY19wYXJlbl9leHBy
CisgICAgfCBjYWxjX2Z1bmNfZXhwciBlcnJvciB7CisgICAgICAgICQkID0gMDsKKyAgICB9Cisg
IDsKKworY2FsY19mdW5jX2V4cHJfbGlzdDoKKyAgICBjYWxjX2Z1bmNfZXhwciAgeworICAgICAg
ICAkJCA9ICQxOworICAgIH0gICAgCisgICAgfCBjYWxjX2Z1bmNfZXhwcl9saXN0ICcsJyBtYXli
ZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciB7CisgICAgICAgIGlmICgkMSAmJiAkNCkgeworICAgICAg
ICAgICAgJCQgPSAkMTsKKyAgICAgICAgICAgIENTU1BhcnNlclZhbHVlIHY7CisgICAgICAgICAg
ICB2LmlkID0gMDsKKyAgICAgICAgICAgIHYudW5pdCA9IENTU1BhcnNlclZhbHVlOjpPcGVyYXRv
cjsKKyAgICAgICAgICAgIHYuaVZhbHVlID0gJywnOworICAgICAgICAgICAgJCQtPmFkZFZhbHVl
KHYpOworICAgICAgICAgICAgJCQtPmV4dGVuZCgqKCQ0KSk7CisgICAgICAgIH0gZWxzZQorICAg
ICAgICAgICAgJCQgPSAwOworICAgIH0KKyAgICAKKworY2FsY19mdW5jdGlvbjoKKyAgICBDQUxD
RlVOQ1RJT04gbWF5YmVfc3BhY2UgY2FsY19mdW5jX2V4cHIgJyknIG1heWJlX3NwYWNlIHsKKyAg
ICAgICAgQ1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFyc2VyKj4ocGFyc2VyKTsKKyAg
ICAgICAgQ1NTUGFyc2VyRnVuY3Rpb24qIGYgPSBwLT5jcmVhdGVGbG9hdGluZ0Z1bmN0aW9uKCk7
CisgICAgICAgIGYtPm5hbWUgPSAkMTsKKyAgICAgICAgZi0+YXJncyA9IHAtPnNpbmtGbG9hdGlu
Z1ZhbHVlTGlzdCgkMyk7CisgICAgICAgICQkLmlkID0gMDsKKyAgICAgICAgJCQudW5pdCA9IENT
U1BhcnNlclZhbHVlOjpGdW5jdGlvbjsKKyAgICAgICAgJCQuZnVuY3Rpb24gPSBmOworICAgIH0K
KyAgICB8IENBTENGVU5DVElPTiBtYXliZV9zcGFjZSBlcnJvciB7CisgICAgICAgIFlZRVJST1I7
CisgICAgfQorICAgIDsKKworCittaW5fb3JfbWF4OgorICAgIE1JTkZVTkNUSU9OIHsKKyAgICAg
ICAgJCQgPSAkMTsKKyAgICB9CisgICAgfCBNQVhGVU5DVElPTiB7CisgICAgICAgICQkID0gJDE7
CisgICAgfQorICAgIDsKKworbWluX29yX21heF9mdW5jdGlvbjoKKyAgICBtaW5fb3JfbWF4IG1h
eWJlX3NwYWNlIGNhbGNfZnVuY19leHByX2xpc3QgJyknIG1heWJlX3NwYWNlIHsKKyAgICAgICAg
Q1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFyc2VyKj4ocGFyc2VyKTsKKyAgICAgICAg
Q1NTUGFyc2VyRnVuY3Rpb24qIGYgPSBwLT5jcmVhdGVGbG9hdGluZ0Z1bmN0aW9uKCk7CisgICAg
ICAgIGYtPm5hbWUgPSAkMTsKKyAgICAgICAgZi0+YXJncyA9IHAtPnNpbmtGbG9hdGluZ1ZhbHVl
TGlzdCgkMyk7CisgICAgICAgICQkLmlkID0gMDsKKyAgICAgICAgJCQudW5pdCA9IENTU1BhcnNl
clZhbHVlOjpGdW5jdGlvbjsKKyAgICAgICAgJCQuZnVuY3Rpb24gPSBmOworICAgIH0gCisgICAg
fCBtaW5fb3JfbWF4IG1heWJlX3NwYWNlIGVycm9yIHsKKyAgICAgICAgWVlFUlJPUjsKKyAgICB9
CisgICAgOworCiAvKgogICogVGhlcmUgaXMgYSBjb25zdHJhaW50IG9uIHRoZSBjb2xvciB0aGF0
IGl0IG11c3QKICAqIGhhdmUgZWl0aGVyIDMgb3IgNiBoZXgtZGlnaXRzIChpLmUuLCBbMC05YS1m
QS1GXSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJWYWx1ZXMuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAKaW5kZXggOWVjYjk2ZGUy
ZGIzZTNlYmQxN2EzYTY2OTlkZDk3YTlkN2ZmOWFhZC4uOTRkY2QzY2EyZmRkNDE3MTMyNzE0MTJj
MDMyY2IzNmI0NjJmNDhhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
clZhbHVlcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAK
QEAgLTQ0LDEyICs0NCwyMyBAQCB2b2lkIENTU1BhcnNlclZhbHVlTGlzdDo6YWRkVmFsdWUoY29u
c3QgQ1NTUGFyc2VyVmFsdWUmIHYpCiB7CiAgICAgbV92YWx1ZXMuYXBwZW5kKHYpOwogfQotICAg
IAorCit2b2lkIENTU1BhcnNlclZhbHVlTGlzdDo6aW5zZXJ0VmFsdWVBdCh1bnNpZ25lZCBpLCBj
b25zdCBDU1NQYXJzZXJWYWx1ZSYgdikKK3sKKyAgICBtX3ZhbHVlcy5pbnNlcnQoaSwgdik7Cit9
CisKIHZvaWQgQ1NTUGFyc2VyVmFsdWVMaXN0OjpkZWxldGVWYWx1ZUF0KHVuc2lnbmVkIGkpCiB7
IAogICAgIG1fdmFsdWVzLnJlbW92ZShpKTsKIH0KIAordm9pZCBDU1NQYXJzZXJWYWx1ZUxpc3Q6
OmV4dGVuZChDU1NQYXJzZXJWYWx1ZUxpc3QmIHZhbHVlTGlzdCkKK3sKKyAgICBmb3IgKHVuc2ln
bmVkIGludCBpID0gMDsgaSA8IHZhbHVlTGlzdC5zaXplKCk7ICsraSkKKyAgICAgICAgbV92YWx1
ZXMuYXBwZW5kKCoodmFsdWVMaXN0LnZhbHVlQXQoaSkpKTsKK30KKwogUGFzc1JlZlB0cjxDU1NW
YWx1ZT4gQ1NTUGFyc2VyVmFsdWU6OmNyZWF0ZUNTU1ZhbHVlKCkKIHsKICAgICBSZWZQdHI8Q1NT
VmFsdWU+IHBhcnNlZFZhbHVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Bh
cnNlclZhbHVlcy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5oCmluZGV4
IDBmNDNiOGM5NzRkMWU5ZjYyNmNhYTgxZjAxNjM0OTZkYzY0MDE2MjUuLjgxZWNiYzNlMjZhMzAz
ZWJmYzM3YWIyN2MwMTZiZTgwM2IwODgyMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXJWYWx1ZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFs
dWVzLmgKQEAgLTcxLDcgKzcxLDkgQEAgcHVibGljOgogICAgIH5DU1NQYXJzZXJWYWx1ZUxpc3Qo
KTsKICAgICAKICAgICB2b2lkIGFkZFZhbHVlKGNvbnN0IENTU1BhcnNlclZhbHVlJik7CisgICAg
dm9pZCBpbnNlcnRWYWx1ZUF0KHVuc2lnbmVkLCBjb25zdCBDU1NQYXJzZXJWYWx1ZSYpOwogICAg
IHZvaWQgZGVsZXRlVmFsdWVBdCh1bnNpZ25lZCk7CisgICAgdm9pZCBleHRlbmQoQ1NTUGFyc2Vy
VmFsdWVMaXN0Jik7CiAKICAgICB1bnNpZ25lZCBzaXplKCkgY29uc3QgeyByZXR1cm4gbV92YWx1
ZXMuc2l6ZSgpOyB9CiAgICAgQ1NTUGFyc2VyVmFsdWUqIGN1cnJlbnQoKSB7IHJldHVybiBtX2N1
cnJlbnQgPCBtX3ZhbHVlcy5zaXplKCkgPyAmbV92YWx1ZXNbbV9jdXJyZW50XSA6IDA7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90b2tlbml6ZXIuZmxleCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy90b2tlbml6ZXIuZmxleAppbmRleCAwYzAxYmJiNWI3Y2ZhMGE2NzViM2I5OGY0NTA1
NmRmMDEwMjUwNTJjLi44OGE5MmEyNmExZDYxMTgwODI0YjIzOTdiOTU2ZjdjNzlhZDQ5N2I5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdG9rZW5pemVyLmZsZXgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL3Rva2VuaXplci5mbGV4CkBAIC0xMDIsNiArMTAyLDcgQEAgbnRoICAgICAg
ICAgICAgIFtcKy1dP3tpbnRudW19Km4oW1x0XHJcbiBdKltcKy1dW1x0XHJcbiBdKntpbnRudW19
KT8KIHtudW19SHogICAgICAgICAgICAgICAgIHt5eVRvayA9IEhFUlRaOyByZXR1cm4geXlUb2s7
fQoge251bX1rSHogICAgICAgICAgICAgICAge3l5VG9rID0gS0hFUlRaOyByZXR1cm4geXlUb2s7
fQoge251bX17aWRlbnR9ICAgICAgICAgICAge3l5VG9rID0gRElNRU47IHJldHVybiB5eVRvazt9
Cit7bnVtfXtpZGVudH1cKyAgICAgICAgICB7eXlUb2sgPSBJTlZBTElERElNRU47IHJldHVybiB5
eVRvazt9CiB7bnVtfSUrICAgICAgICAgICAgICAgICB7eXlUb2sgPSBQRVJDRU5UQUdFOyByZXR1
cm4geXlUb2s7fQoge2ludG51bX0gICAgICAgICAgICAgICAge3l5VG9rID0gSU5URUdFUjsgcmV0
dXJuIHl5VG9rO30KIHtudW19ICAgICAgICAgICAgICAgICAgIHt5eVRvayA9IEZMT0FUVE9LRU47
IHJldHVybiB5eVRvazt9CkBAIC0xMTAsNiArMTExLDkgQEAgbnRoICAgICAgICAgICAgIFtcKy1d
P3tpbnRudW19Km4oW1x0XHJcbiBdKltcKy1dW1x0XHJcbiBdKntpbnRudW19KT8KICJub3QoIiAg
ICAgICAgICAgICAgICAgIHt5eVRvayA9IE5PVEZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQogInVy
bCgie3d9e3N0cmluZ317d30iKSIge3l5VG9rID0gVVJJOyByZXR1cm4geXlUb2s7fQogInVybCgi
e3d9e3VybH17d30iKSIgICAge3l5VG9rID0gVVJJOyByZXR1cm4geXlUb2s7fQorIi13ZWJraXQt
Y2FsYygiICAgICAgICAge3l5VG9rID0gQ0FMQ0ZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQorIi13
ZWJraXQtbWluKCIgICAgICAgICAge3l5VG9rID0gTUlORlVOQ1RJT047IHJldHVybiB5eVRvazt9
CisiLXdlYmtpdC1tYXgoIiAgICAgICAgICB7eXlUb2sgPSBNQVhGVU5DVElPTjsgcmV0dXJuIHl5
VG9rO30KIHtpZGVudH0iKCIgICAgICAgICAgICAgIHt5eVRvayA9IEZVTkNUSU9OOyByZXR1cm4g
eXlUb2s7fQogCiBVXCt7cmFuZ2V9ICAgICAgICAgICAgICB7eXlUb2sgPSBVTklDT0RFUkFOR0U7
IHJldHVybiB5eVRvazt9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88964</attachid>
            <date>2011-04-10 19:00:51 -0700</date>
            <delta_ts>2011-04-10 19:32:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-54412-20110411120048.patch</filename>
            <type>text/plain</type>
            <size>45415</size>
            <attacher name="Mike Lawther">mikelawther</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODMzMTgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3NmY3YmQxOWQxN2VkODI3MjYwYzdm
ZTUwOWJhZmI1NGExNTJkZDEyLi5kNGM3MThkZmM1NGVlZTFmNzE1ZDdmMzk2MjQ0NTRjN2YyZjhl
MzU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTEtMDQtMTAgIE1pa2UgTGF3dGhlciAgPG1p
a2VsYXd0aGVyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBmbGV4L2Jpc29uIHRva2VucyBhbmQgZ3JhbW1hciBmb3IgQ1NTIGNh
bGMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NDEy
CisKKyAgICAgICAgT25seSB0aGUgJ2Vycm9ycycgYW5kICdyZWdyZXNzaW9uJyB0ZXN0cyBwYXNz
IGFzIGludGVuZGVkIHJpZ2h0IG5vdy4gQXMgb2YgdGhpcworICAgICAgICBwYXRjaCwgbm9uZSBv
ZiB0aGUgYWN0dWFsIGNhbGN1bGF0aW9ucyBhcmUgZXhwZWN0ZWQgdG8gd29yaywgc2luY2Ugb25s
eQorICAgICAgICB0aGUgbGV4aW5nL2dyYW1tYXIgc3RhZ2UgaXMgcHJlc2VudC4KKworICAgICAg
ICAqIGNzczMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGNzczMvY2FsYy9jYWxjLWVycm9ycy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2NhbGMv
bGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
Y3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBjc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0zLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBjc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGNzczMvY2FsYy9taW5tYXgtZXJyb3JzLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogY3NzMy9jYWxjL21pbm1heC1lcnJvcnMuaHRtbDogQWRkZWQu
CisgICAgICAgICogY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRtbDogQWRkZWQuCisgICAgICAgICog
Y3NzMy9jYWxjL3NpbXBsZS1taW5tYXgtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBj
c3MzL2NhbGMvc2ltcGxlLW1pbm1heC5odG1sOiBBZGRlZC4KKwogMjAxMS0wNC0wOCAgSmlhbiBM
aSAgPGppYW5saUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgZml4ZWQgYSB0
eXBvIGluIGNocm9taXVtIHRlc3QgZXhwZWN0YXRpb24gbGlzdC4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvY2FsYy9jYWxjLWVycm9ycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9j
c3MzL2NhbGMvY2FsYy1lcnJvcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVjODE0ZjRlOTgy
M2U1YzY5MTA4YWUyYTI0YzQzNjQ1YzI4ZDdiZDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NhbGMvY2FsYy1lcnJvcnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTMgQEAK
K0FsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCisKK3Vu
Y2xvc2VkIGNhbGMgPT4gUEFTUwordW5jbG9zZWQgY2FsYyB3aXRoIGdhcmJhZ2UgPT4gUEFTUwor
Z2FyYmFnZSA9PiBQQVNTCit6ZXJvIGRpdmlzaW9uID0+IFBBU1MKK25vbiBsZW5ndGggPT4gUEFT
UworbnVtYmVyICsgbGVuZ3RoID0+IFBBU1MKK2xlbmd0aCArIG51bWJlciA9PiBQQVNTCitwZXJj
ZW50ICsgbnVtYmVyID0+IFBBU1MKK251bWJlciArIHBlcmNlbnQgPT4gUEFTUworbGVuZ3RoIC0g
bnVtYmVyID0+IFBBU1MKK251bWJlciAtIGxlbmd0aCA9PiBQQVNTCitwZXJjZW50IC0gbnVtYmVy
ID0+IFBBU1MKK251bWJlciAtIHBlcmNlbnQgPT4gUEFTUworbGVuZ3RoICogbGVuZ3RoID0+IFBB
U1MKK2xlbmd0aCAqIHBlcmNlbnQgPT4gUEFTUworcGVyY2VudCAqIGxlbmd0aCA9PiBQQVNTCitw
ZXJjZW50ICogcGVyY2VudCA9PiBQQVNTCitudW1iZXIgLyBsZW5ndGggPT4gUEFTUworbnVtYmVy
IC8gcGVyY2VudCA9PiBQQVNTCitsZW5ndGggLyBsZW5ndGggPT4gUEFTUworbGVuZ3RoIC8gcGVy
Y2VudCA9PiBQQVNTCitwZXJjZW50IC8gbGVuZ3RoID0+IFBBU1MKK3BlcmNlbnQgLyBwZXJjZW50
ID0+IFBBU1MKK251bWJlciBtb2QgbGVuZ3RoID0+IFBBU1MKK251bWJlciBtb2QgcGVyY2VudCA9
PiBQQVNTCitsZW5ndGggbW9kIGxlbmd0aCA9PiBQQVNTCitsZW5ndGggbW9kIHBlcmNlbnQgPT4g
UEFTUworcGVyY2VudCBtb2QgbGVuZ3RoID0+IFBBU1MKK3BlcmNlbnQgbW9kIHBlcmNlbnQgPT4g
UEFTUworbW9kMTAgPT4gUEFTUworMW1vZCA9PiBQQVNTCis3MHB4KzQwcHggbm8gd2hpdGVzcGFj
ZSBhcm91bmQgKyA9PiBQQVNTCis3MHB4ICs0MHB4IG5vIHdoaXRlc3BhY2Ugb24gcmlnaHQgb2Yg
KyA9PiBQQVNTCis3MHB4KyA0MHB4IG5vIHdoaXRlc3BhY2Ugb24gbGVmdCBvZiArID0+IFBBU1MK
KzcwcHgrLTQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgKyA9PiBQQVNTCis3MHB4LTQwcHggbm8g
d2hpdGVzcGFjZSBhcm91bmQgLSA9PiBQQVNTCis3MHB4IC00MHB4IG5vIHdoaXRlc3BhY2Ugb24g
cmlnaHQgb2YgLSA9PiBQQVNTCis3MHB4LSA0MHB4IG5vIHdoaXRlc3BhY2Ugb24gbGVmdCBvZiAt
ID0+IFBBU1MKKzcwcHgtKzQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgLSA9PiBQQVNTCit0b28g
bWFueSBuZXN0cyA9PiBQQVNTCitlbmQgd2l0aCBvcGVyYXRvciA9PiBQQVNTCitzdGFydCB3aXRo
IG9wZXJhdG9yID0+IFBBU1MKK25vIGV4cHJlc3Npb25zID0+IFBBU1MKK3RvbyBtYW55IHBsdXNl
cyA9PiBQQVNTCitubyBiaW5hcnkgb3BlcmF0b3IgPT4gUEFTUwordHdvIGJpbmFyeSBvcGVyYXRv
cnMgPT4gUEFTUworaW52YWxpZCBvcGVyYXRvciAnQCcgPT4gUEFTUworaW52YWxpZCBvcGVyYXRv
ciAnZmxpbScgPT4gUEFTUworaW52YWxpZCBvcGVyYXRvciAnQCcgPT4gUEFTUworaW52YWxpZCBv
cGVyYXRvciAnZmxpbScgPT4gUEFTUworaW52YWxpZCBvcGVyYXRvciAnZmxpbScgd2l0aCBwYXJl
bnMgPT4gUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMtZXJyb3Jz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvY2FsYy1lcnJvcnMuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41OTBjNGUyNjE1ZmU3MDdlZGQ0MGNmZjY5YjZjN2M4NmFmYTRhMTBkCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2NhbGMtZXJyb3JzLmh0bWwKQEAgLTAsMCArMSwx
MDcgQEAKKzwhRE9DVFlQRSBIVE1MPgorPHN0eWxlPgorI3Rlc3QgZGl2IHsKKyAgICBoZWlnaHQ6
IDEwMHB4OworICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKK30KKzwvc3R5bGU+CisKKzxwPgor
ICBBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdyZWVuLgorPC9w
PgorCis8ZGl2IGlkPSJ0ZXN0Ij4KKworPCEtLSBqdXN0IHBsYWluIGJhZCAtLT4KKzxkaXYgc3R5
bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg7Ij51bmNsb3NlZCBjYWxjPC9k
aXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoIGZsaW07
Ij51bmNsb3NlZCBjYWxjIHdpdGggZ2FyYmFnZTwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEw
MHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKCBmbGltICk7Ij5nYXJiYWdlPC9kaXY+CisKKworPCEt
LSB6ZXJvIGRpdmlzaW9uIC0tPgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdl
YmtpdC1jYWxjKDFleCAvIDApOyI+emVybyBkaXZpc2lvbjwvZGl2PgorCis8IS0tIHdyb25nIGNv
bWJpbmF0aW9uIC0tPgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDIwMCk7Ij5ub24gbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdp
ZHRoOiAtd2Via2l0LWNhbGMoMTAgKyAxMHB4KTsiPm51bWJlciArIGxlbmd0aDwvZGl2PgorPGRp
diBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwcHggKyAxMCk7Ij5s
ZW5ndGggKyBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13
ZWJraXQtY2FsYygxMCUgKyAxMDApOyI+cGVyY2VudCArIG51bWJlcjwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCArIDEwJSk7Ij5udW1iZXIg
KyBwZXJjZW50PC9kaXY+CisKKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJr
aXQtY2FsYygzMDBweCAtIDEwMCk7Ij5sZW5ndGggLSBudW1iZXI8L2Rpdj4KKzxkaXYgc3R5bGU9
IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygzMDAgLSAxMDBweCk7Ij5udW1iZXIg
LSBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQt
Y2FsYygxMDAlIC0gMTApOyI+cGVyY2VudCAtIG51bWJlcjwvZGl2PgorPGRpdiBzdHlsZT0id2lk
dGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCAtIDEwJSk7Ij5udW1iZXIgLSBwZXJj
ZW50PC9kaXY+CisKKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2Fs
YygxMHB4KjEwMHB4KTsiPmxlbmd0aCAqIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6
IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwcHgqMTAwJSk7Ij5sZW5ndGggKiBwZXJjZW50
PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAl
KjEwMHB4KTsiPnBlcmNlbnQgKiBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBw
eDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMCUqMTAwJSk7Ij5wZXJjZW50ICogcGVyY2VudDwvZGl2
PgorCis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwLzEw
cHgpOyI+bnVtYmVyIC8gbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdp
ZHRoOiAtd2Via2l0LWNhbGMoMTAwLzEwJSk7Ij5udW1iZXIgLyBwZXJjZW50PC9kaXY+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHgvMTBweCk7Ij5s
ZW5ndGggLyBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13
ZWJraXQtY2FsYygxMDBweC8xMCUpOyI+bGVuZ3RoIC8gcGVyY2VudDwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUvMTBweCk7Ij5wZXJjZW50
IC8gbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0
LWNhbGMoMTAwJS8xMCUpOyI+cGVyY2VudCAvIHBlcmNlbnQ8L2Rpdj4KKworPGRpdiBzdHlsZT0i
d2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCBtb2QgMTBweCk7Ij5udW1iZXIg
bW9kIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtp
dC1jYWxjKDEwMCBtb2QgMTAlKTsiPm51bWJlciBtb2QgcGVyY2VudDwvZGl2PgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHB4IG1vZCAxMHB4KTsiPmxl
bmd0aCBtb2QgbGVuZ3RoPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAt
d2Via2l0LWNhbGMoMTAwcHggbW9kIDEwJSk7Ij5sZW5ndGggbW9kIHBlcmNlbnQ8L2Rpdj4KKzxk
aXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIG1vZCAxMHB4
KTsiPnBlcmNlbnQgbW9kIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgbW9kIDEwJSk7Ij5wZXJjZW50IG1vZCBwZXJjZW50PC9k
aXY+CisKKzwhLS0gbW9kLCArLCAtIHJlcXVpcmUgd2hpdGVzcGFjZXMgYXJvdW5kIHRoZSBvcGVy
YXRvciAtLT4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygx
IG1vZDEwICogMjAwcHgpOyI+bW9kMTAgPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7
IHdpZHRoOiAtd2Via2l0LWNhbGMoMW1vZCAxMCAqIDIwMHB4KTsiPjFtb2Q8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4KzQwcHgpOyI+NzBw
eCs0MHB4IG5vIHdoaXRlc3BhY2UgYXJvdW5kICsgPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDog
MTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweCArNDBweCk7Ij43MHB4ICs0MHB4IG5vIHdo
aXRlc3BhY2Ugb24gcmlnaHQgb2YgKzwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1jYWxjKDcwcHgrIDQwcHgpOyI+NzBweCsgNDBweCBubyB3aGl0ZXNwYWNl
IG9uIGxlZnQgb2YgKzwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdl
YmtpdC1jYWxjKDcwcHgrLTQwcHgpOyI+NzBweCstNDBweCBubyB3aGl0ZXNwYWNlIGFyb3VuZCAr
IDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDcw
cHgtNDBweCk7Ij43MHB4LTQwcHggbm8gd2hpdGVzcGFjZSBhcm91bmQgLSA8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYyg3MHB4IC00MHB4KTsiPjcw
cHggLTQwcHggbm8gd2hpdGVzcGFjZSBvbiByaWdodCBvZiAtPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3
aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweC0gNDBweCk7Ij43MHB4LSA0MHB4
IG5vIHdoaXRlc3BhY2Ugb24gbGVmdCBvZiAtPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAw
cHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoNzBweC0rNDBweCk7Ij43MHB4LSs0MHB4IG5vIHdoaXRl
c3BhY2UgYXJvdW5kIC0gPC9kaXY+CisKKzwhLS0gdG9vIG1hbnkgbmVzdHMgc2hvdWxkIGJlIHJl
amVjdGVkIHRvIGF2b2lkIHN0YWNrIG92ZXJmbG93IC0tPgorPGRpdiBzdHlsZT0id2lkdGg6IDEw
MHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoMjAwcHgpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkp
KSk7Ij50b28gbWFueSBuZXN0czwvZGl2PgorIAorPCEtLSBpbnZhbGlkIGZvcm11bGFzIC0tPgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDIwMHB4Kik7Ij5l
bmQgd2l0aCBvcGVyYXRvcjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDog
LXdlYmtpdC1jYWxjKCsgKzIwMHB4KTsiPnN0YXJ0IHdpdGggb3BlcmF0b3I8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygpOyI+bm8gZXhwcmVzc2lv
bnM8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygx
MDBweCArICsgKzEwMHB4KTsiPnRvbyBtYW55IHBsdXNlczwvZGl2PgorPGRpdiBzdHlsZT0id2lk
dGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDIwMHB4IDIwMHB4KTsiPm5vIGJpbmFyeSBv
cGVyYXRvcjwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1j
YWxjKDEwMHB4ICogKiAyKTsiPnR3byBiaW5hcnkgb3BlcmF0b3JzPC9kaXY+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwcHggQCAyKTsiPmludmFsaWQg
b3BlcmF0b3IgJ0AnPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LWNhbGMoMSBmbGltIDIpOyI+aW52YWxpZCBvcGVyYXRvciAnZmxpbSc8L2Rpdj4KKzxkaXYg
c3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtY2FsYygxMDBweCBAIDIpOyI+aW52
YWxpZCBvcGVyYXRvciAnQCc8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtY2FsYygxIGZsaW0gMik7Ij5pbnZhbGlkIG9wZXJhdG9yICdmbGltJzwvZGl2Pgor
PGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1jYWxjKDEgZmxpbSAoMikp
OyI+aW52YWxpZCBvcGVyYXRvciAnZmxpbScgd2l0aCBwYXJlbnM8L2Rpdj4KKyAKKyAKKzwvZGl2
PgorCis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKK3ZhciB0ZXN0ID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInRlc3QiKTsKK2ZvciAodmFyIGVsZW1lbnQgPSB0ZXN0LmZpcnN0Q2hpbGQ7
IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50Lm5leHRTaWJsaW5nKSB7CisgICAgdmFyIHdpZHRo
ID0gZWxlbWVudC5vZmZzZXRXaWR0aDsKKyAgICB2YXIgZXJyb3IgPSBbXTsKKyAgICBpZiAod2lk
dGggIT0gMTAwKQorICAgICAgICBlcnJvci5wdXNoKCJleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1
dCB3YXMgIiArIHdpZHRoKTsKKyAgICB2YXIgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7
CisgICAgaWYgKGhlaWdodCAhPSAxMDApCisgICAgICAgIGVycm9yLnB1c2goImV4cGVjdGVkIGhl
aWdodCBvZiAxMDAsIGJ1dCB3YXMgIiArIHdpZHRoKTsKKworICAgIGlmIChlcnJvciA9PSAiIikg
eworICAgICAgICBlbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9ICJncmVlbiI7CisgICAg
ICAgIGVsZW1lbnQuaW5uZXJIVE1MICs9ICIgPT4gUEFTUyI7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgZWxlbWVudC5pbm5lckhUTUwgKz0gIiA9PiBGQUlMOiAiICsgZXJyb3Iuam9pbigiLCAiKTsK
KyAgICB9Cit9Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9s
ZXhlci1yZWdyZXNzaW9uLTU3NTgxLTItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9j
YWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTNh
NGVkYzAzMTMyYjRmYmI4OWI5NTg4YTI2MmYxZmIwN2EzMzdhNwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLTItZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNvbWVzIGZyb20gYSByZWdyZXNzaW9uIGZp
bGVkIGluIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzU4MS4KKwor
VGhlIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoCisKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi5odG1sIGIvTGF5b3V0
VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjlkMGYyM2E2OGI1NGM0MmQzYWI2OTJlMjk5OGExYjEyZmYzYmU0ZmYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0yLmh0bWwK
QEAgLTAsMCArMSw5IEBACis8cD5UaGlzIHRlc3QgY29tZXMgZnJvbSBhIHJlZ3Jlc3Npb24gZmls
ZWQgaW4gPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3
NTgxIj5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc1ODE8L2E+Ljwv
cD4KKzxwPlRoZSB0ZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaDwvcD4KKworPGRpdiBz
dHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoKDFweCkbKSkiPjwvZGl2PgorCis8c2NyaXB0Pgor
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wQXNUZXh0KCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMv
Y2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLTMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTNhNGVkYzAzMTMyYjRmYmI4OWI5NTg4YTI2MmYxZmIwN2EzMzdhNwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLTMtZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorVGhpcyB0ZXN0IGNvbWVzIGZyb20gYSByZWdyZXNz
aW9uIGZpbGVkIGluIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzU4
MS4KKworVGhlIHRlc3QgcGFzc2VzIGlmIGl0IGRvZXMgbm90IGNyYXNoCisKKwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMy5odG1sIGIv
TGF5b3V0VGVzdHMvY3NzMy9jYWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMy5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmUxMjFlNGM5MjUwZWU0OGMwZTdjYmJhZGQ3ZDkyNzRlNTJiM2Y0N2IKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0z
Lmh0bWwKQEAgLTAsMCArMSw5IEBACis8cD5UaGlzIHRlc3QgY29tZXMgZnJvbSBhIHJlZ3Jlc3Np
b24gZmlsZWQgaW4gPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTU3NTgxIj5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc1ODE8
L2E+LjwvcD4KKzxwPlRoZSB0ZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaDwvcD4KKwor
PGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygoKCgxcHgpGykpIj48L2Rpdj4KKworPHNj
cmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNTNhNGVkYzAzMTMyYjRmYmI4OWI5NTg4YTI2MmYxZmIwN2EzMzdhNwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1RoaXMgdGVzdCBjb21lcyBmcm9tIGEgcmVncmVz
c2lvbiBmaWxlZCBpbiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc1
ODEuCisKK1RoZSB0ZXN0IHBhc3NlcyBpZiBpdCBkb2VzIG5vdCBjcmFzaAorCisKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLmh0bWwgYi9M
YXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjljMGUzYTI4YmNkYzEwNGJkYWU1ZDllYTBiYjcxYWNlMWZkNmRkZjMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS5odG1s
CkBAIC0wLDAgKzEsOSBAQAorPHA+VGhpcyB0ZXN0IGNvbWVzIGZyb20gYSByZWdyZXNzaW9uIGZp
bGVkIGluIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
NzU4MSI+aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3NTgxPC9hPi48
L3A+Cis8cD5UaGUgdGVzdCBwYXNzZXMgaWYgaXQgZG9lcyBub3QgY3Jhc2g8L3A+CisKKzxkaXYg
c3R5bGU9IkE6LXdlYmtpdC1jYWxjKCgoMSkbKSkiPjwvZGl2PgorCis8c2NyaXB0PgoraWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvY2FsYy9t
aW5tYXgtZXJyb3JzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9taW5tYXgt
ZXJyb3JzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ZDU3MDdmYTljNDIyNzM3MDUwYTQ3ZDIy
YzM0YTI4MWVkN2EzZmRlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxj
L21pbm1heC1lcnJvcnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjEgQEAKK0FsbCBib3hlcyBi
ZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4uCisKK01JTgordW5jbG9zZWQg
bWluID0+IFBBU1MKK3VuY2xvc2VkIG1pbiB3aXRoIGdhcmJhZ2UgPT4gUEFTUworZ2FyYmFnZSA9
PiBQQVNTCitleHRyYSB0cmFpbGluZyBjb21tYSA9PiBQQVNTCitsZWFkaW5nIGNvbW1hID0+IFBB
U1MKK3RyYWlsaW5nIGdhcmJhZ2UgPT4gUEFTUworYmFkIGV4cHJlc3Npb24gPT4gUEFTUworbWl4
IGxlbmd0aCBhbmQgbnVtYmVyID0+IFBBU1MKK21peCBudW1iZXIgYW5kIGxlbmd0aCA9PiBQQVNT
CittaXggcGVyY2VudCBhbmQgbnVtYmVyID0+IFBBU1MKK21peCBudW1iZXIgYW5kIHBlcmNlbnQg
PT4gUEFTUworTUFYCit1bmNsb3NlZCBtYXggPT4gUEFTUwordW5jbG9zZWQgbWF4IHdpdGggZ2Fy
YmFnZSA9PiBQQVNTCittaXggbGVuZ3RoIGFuZCBudW1iZXIgPT4gUEFTUworbWl4IG51bWJlciBh
bmQgbGVuZ3RoID0+IFBBU1MKK21peCBwZXJjZW50IGFuZCBudW1iZXIgPT4gUEFTUworbWl4IG51
bWJlciBhbmQgcGVyY2VudCA9PiBQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2Nh
bGMvbWlubWF4LWVycm9ycy5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL21pbm1heC1lcnJv
cnMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4zZjVkOTE5YzYzYWEyNDAwYzlkYTQ0NGU4MjA5OTkyMTIyNGIy
ZTBlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL21pbm1heC1lcnJv
cnMuaHRtbApAQCAtMCwwICsxLDU5IEBACis8IURPQ1RZUEUgSFRNTD4KKzxzdHlsZT4KKyN0ZXN0
IGRpdiB7CisgICAgaGVpZ2h0OiAxMDBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Cit9
Cis8L3N0eWxlPgorCis8cD4KKyAgQWxsIGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEw
MHB4IGFuZCBncmVlbi4KKzwvcD4KKworPGRpdiBpZD0idGVzdCI+CisKK01JTgorPGRpdiBzdHls
ZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oIj51bmNsb3NlZCBtaW48L2Rpdj4K
KzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKCBib2IiPnVuY2xv
c2VkIG1pbiB3aXRoIGdhcmJhZ2U8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lk
dGg6IC13ZWJraXQtbWluKCBib2IgKTsiPmdhcmJhZ2U8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRo
OiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWluKDIwcHgsKTsiPmV4dHJhIHRyYWlsaW5nIGNvbW1h
PC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbigsMjBw
eCk7Ij5sZWFkaW5nIGNvbW1hPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRo
OiAtd2Via2l0LW1pbigyMHB4LCBib2IpOyI+dHJhaWxpbmcgZ2FyYmFnZTwvZGl2PgorPGRpdiBz
dHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYm1pdC1taW4oMjBweCwgMTBweCArIGZsaW0p
OyI+YmFkIGV4cHJlc3Npb248L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtbWluKDI1NnB4LCAxMjApOyI+bWl4IGxlbmd0aCBhbmQgbnVtYmVyPC9kaXY+Cis8
ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1pbigyNTYsIDEyMHB4KTsi
Pm1peCBudW1iZXIgYW5kIGxlbmd0aDwvZGl2PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3
aWR0aDogLXdlYmtpdC1taW4oNTAlLCAxNTApOyI+bWl4IHBlcmNlbnQgYW5kIG51bWJlcjwvZGl2
PgorPGRpdiBzdHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1taW4oMTUwLCA1MCUp
OyI+bWl4IG51bWJlciBhbmQgcGVyY2VudDwvZGl2PgorCitNQVgKKzxkaXYgc3R5bGU9IndpZHRo
OiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWF4KCI+dW5jbG9zZWQgbWF4PC9kaXY+Cis8ZGl2IHN0
eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Via2l0LW1heCggYm9iIj51bmNsb3NlZCBtYXgg
d2l0aCBnYXJiYWdlPC9kaXY+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogMTAwcHg7IHdpZHRoOiAtd2Vi
a2l0LW1heCgyNTZweCwgMTIwKTsiPm1peCBsZW5ndGggYW5kIG51bWJlcjwvZGl2PgorPGRpdiBz
dHlsZT0id2lkdGg6IDEwMHB4OyB3aWR0aDogLXdlYmtpdC1tYXgoMjU2LCAxMjBweCk7Ij5taXgg
bnVtYmVyIGFuZCBsZW5ndGg8L2Rpdj4KKzxkaXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6
IC13ZWJraXQtbWF4KDUwJSwgMTUwKTsiPm1peCBwZXJjZW50IGFuZCBudW1iZXI8L2Rpdj4KKzxk
aXYgc3R5bGU9IndpZHRoOiAxMDBweDsgd2lkdGg6IC13ZWJraXQtbWF4KDE1MCwgNTAlKTsiPm1p
eCBudW1iZXIgYW5kIHBlcmNlbnQ8L2Rpdj4KKworPC9kaXY+CisKKzxzY3JpcHQ+CitpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBB
c1RleHQoKTsKKwordmFyIHRlc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpOwor
Zm9yICh2YXIgZWxlbWVudCA9IHRlc3QuZmlyc3RDaGlsZDsgZWxlbWVudDsgZWxlbWVudCA9IGVs
ZW1lbnQubmV4dFNpYmxpbmcpIHsKKyAgICB2YXIgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRo
OworICAgIHZhciBlcnJvciA9IFtdOworICAgIGlmICh3aWR0aCAhPSAxMDApCisgICAgICAgIGVy
cm9yLnB1c2goImV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAiICsgd2lkdGgpOworICAg
IHZhciBoZWlnaHQgPSBlbGVtZW50Lm9mZnNldEhlaWdodDsKKyAgICBpZiAoaGVpZ2h0ICE9IDEw
MCkKKyAgICAgICAgZXJyb3IucHVzaCgiZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyAi
ICsgd2lkdGgpOworCisgICAgaWYgKGVycm9yID09ICIiKSB7CisgICAgICAgIGVsZW1lbnQuc3R5
bGUuYmFja2dyb3VuZENvbG9yID0gImdyZWVuIjsKKyAgICAgICAgZWxlbWVudC5pbm5lckhUTUwg
Kz0gIiA9PiBQQVNTIjsKKyAgICB9IGVsc2UgeworICAgICAgICBlbGVtZW50LmlubmVySFRNTCAr
PSAiID0+IEZBSUw6ICIgKyBlcnJvci5qb2luKCIsICIpOworICAgIH0KK30KKzwvc2NyaXB0Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40NTBmOWNmNzJmNGMzODRmOGNlNjY2MzhiNzZhZTdiZTE4YzBmMjVlCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1jYWxjcy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw0OSBAQAorQWxsIGJveGVzIGJlbG93IHNob3VsZCBiZSAxMDBweCAqIDEw
MHB4IGFuZCBncmVlbi4KKworY29udHJvbCA9PiBQQVNTCis1MHB4ICsgNTBweCA9PiBGQUlMOiBA
em9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKKzE1MHB4IC0gNTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTYKKzUwcHggKyA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3BlcmF0b3IpID0+IEZBSUw6IEB6b29t
PTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NgorMTUwcHggLSA1MHB4ICgyIHNwYWNlcyBhcm91bmQgb3BlcmF0b3IpID0+
IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209
MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCoyID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NgorNTBweCAqMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBA
em9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgqIDIgPT4gRkFJ
TDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisyMDBweC8yID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorMjAwcHggLzIgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3
YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisyMDBweC8gMiA9PiBGQUlM
OiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBl
eHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgqKDIpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorNTBweCAqKDIpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6
b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCogKDIpID0+IEZB
SUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4y
IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lk
dGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCooMSArIDEpID0+IEZBSUw6IEB6b29tPTEgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorNTBweCooMTIgLSAxMCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4
KigxMCAvIDUpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29t
PTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMTBweCogKDUgKiAyKSA9PiBG
QUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEu
MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzUwcHgqICgxMiBtb2QgMTApID0+IEZBSUw6IEB6b29t
PTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVk
IHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NgorNTBweCArIDEwcHggKiA1IChvcGVyYXRpb24gb3JkZXIpID0+IEZBSUw6
IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NgorMTEwMHB4IG1vZCAxMDAwID0+IEZBSUw6IEB6b29tPTEgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRo
IG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorMTAwJS8yICh3aGVyZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4
cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTYKKzEwMCUgKyAtMTAwcHggKHdoZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6
b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2Yg
MTAwLCBidXQgd2FzIDI1NgorODAlIC0gNjBweCAod2hlcmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJ
TDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0
aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CiszMDBweCAtIDEwMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgp
ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorLTEwMHB4ICsgMTAwJSAod2hlcmUgMTAwJSBp
cyAyMDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMg
MjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209
MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisyMCUgKyAzMCUgKHdoZXJlIDEw
MCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6
b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorODAlIC0gMzAlICh3aGVy
ZSAxMDAlIGlzIDIwMHB4KSA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwg
YnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzEwJSAqIDUgKHdo
ZXJlIDEwMCUgaXMgMjAwcHgpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNSAqIDEwJSAo
d2hlcmUgMTAwJSBpcyAyMDBweCkgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2Fz
IDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CisoMTAwcHgp
ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpv
b209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorKDUwcHggKyA1MHB4KSA9PiBGQUlMOiBAem9v
bT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEw
MCwgYnV0IHdhcyAyNTYKKyg1MHB4KSArIDUwcHggPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3
aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAw
LCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
Cis1MHB4ICsgKDUwcHgpID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorNTBweCArIDUwcHgg
PT4gRkFJTDogQHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0xLjIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3Rl
ZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2Cis1MHB4ICsgMjVweCAqIDIgPT4gRkFJTDogQHpv
b209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhwZWN0
ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBvZiAx
MDAsIGJ1dCB3YXMgMjU2CisoMjVweCArIDI1cHgpICogMiA9PiBGQUlMOiBAem9vbT0xIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKKzIgKiA1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7
IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorMiAqIDEwMHB4IC8g
MiA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6
b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVj
dGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKzEyIG1vZCAxMCAqIDUwcHggPT4gRkFJTDog
QHpvb209MSBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0xLjIgZXhw
ZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MiBleHBlY3RlZCB3aWR0aCBv
ZiAxMDAsIGJ1dCB3YXMgMjU2CisoMWVtIC0gMWVtKSArIDEwMHB4ID0+IEZBSUw6IEB6b29tPTEg
ZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBi
dXQgd2FzIDI1NgorNTBweCArICs1MHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0
IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorLTUw
cHggKyAxNTBweCA9PiBGQUlMOiBAem9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTY7IEB6b29tPTEuMiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9v
bT0yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKKy01MHB4IC0gLTE1MHB4ID0+
IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NjsgQHpvb209
MS4yIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTIgZXhwZWN0ZWQg
d2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorKCgoKCgoKDEwMHB4KSkpKSkpKSA9PiBGQUlMOiBA
em9vbT0xIGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTY7IEB6b29tPTEuMiBleHBl
Y3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2OyBAem9vbT0yIGV4cGVjdGVkIHdpZHRoIG9m
IDEwMCwgYnV0IHdhcyAyNTYKKzEwMHB4ID0+IEZBSUw6IEB6b29tPTEgZXhwZWN0ZWQgaGVpZ2h0
IG9mIDEwMCwgYnV0IHdhcyA1MDsgQHpvb209MS4yIGV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1
dCB3YXMgNTA7IEB6b29tPTIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyA1MAorMTAw
JSAqIDIgPT4gRkFJTDogQHpvb209MSBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUw
OyBAem9vbT0xLjIgZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwgYnV0IHdhcyA1MDsgQHpvb209MiBl
eHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2FzIDUwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9jc3MzL2NhbGMvc2ltcGxlLWNhbGNzLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2NhbGMvc2lt
cGxlLWNhbGNzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGZiMmVlMjNhZDlmNmZmMmNiM2NlNmEwNWRjNjI0
ZThlYjM3MTYyNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1w
bGUtY2FsY3MuaHRtbApAQCAtMCwwICsxLDEyNyBAQAorPCFET0NUWVBFIEhUTUw+DQorPHN0eWxl
Pg0KKy53aWR0aC10ZXN0IHsNCisgICAgaGVpZ2h0OiAxMDBweDsNCisgICAgd2lkdGg6IDI1NnB4
Ow0KKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7DQorfQ0KKw0KKy5oZWlnaHQtdGVzdCB7DQor
ICAgIHdpZHRoOiAxMDBweDsNCisgICAgaGVpZ2h0OiA1MHB4Ow0KKyAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZWQ7DQorfQ0KKzwvc3R5bGU+DQorDQorPHA+DQorICBBbGwgYm94ZXMgYmVsb3cgc2hv
dWxkIGJlIDEwMHB4ICogMTAwcHggYW5kIGdyZWVuLg0KKzwvcD4NCisNCis8ZGl2IGlkPSJ0ZXN0
Ij4NCis8ZGl2IHN0eWxlPSJ3aWR0aDoxMDBweDsgaGVpZ2h0OjEwMHB4OyI+Y29udHJvbDwvZGl2
Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUw
cHggKyA1MHB4KTsiPjUwcHggKyA1MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMTUwcHggLSA1MHB4KTsiPjE1MHB4IC0gNTBweDwv
ZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxj
KDUwcHggICsgIDUwcHgpOyI+NTBweCAgKyAgNTBweCAoMiBzcGFjZXMgYXJvdW5kIG9wZXJhdG9y
KTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1j
YWxjKDE1MHB4ICAtICA1MHB4KTsiPjE1MHB4ICAtIDUwcHggKDIgc3BhY2VzIGFyb3VuZCBvcGVy
YXRvcik8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtY2FsYyg1MHB4KjIpOyI+NTBweCoyPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCAqMik7Ij41MHB4ICoyPC9kaXY+DQorPGRp
diBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCogMik7
Ij41MHB4KiAyPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWNhbGMoMjAwcHgvMik7Ij4yMDBweC8yPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgt
dGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMjAwcHggLzIpOyI+MjAwcHggLzI8L2Rp
dj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygy
MDBweC8gMik7Ij4yMDBweC8gMjwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHgqKDIpKTsiPjUwcHgqKDIpPC9kaXY+DQorPGRpdiBj
bGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoNTBweCAqKDIpKTsi
PjUwcHggKigyKTwvZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1jYWxjKDUwcHgqICgyKSk7Ij41MHB4KiAoMik8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4KigxICsgMSkpOyI+NTBw
eCooMSArIDEpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWNhbGMoNTBweCooMTIgLSAxMCkpOyI+NTBweCooMTIgLSAxMCk8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1MHB4KigxMCAv
IDUpKTsiPjUwcHgqKDEwIC8gNSk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMHB4KiAoNSAqIDIpKTsiPjEwcHgqICg1ICogMik8L2Rp
dj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYyg1
MHB4KiAoMTIgbW9kIDEwKSk7Ij41MHB4KiAoMTIgbW9kIDEwKTwvZGl2Pg0KKzxkaXYgY2xhc3M9
IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDUwcHggKyAxMHB4ICogNSk7
Ij41MHB4ICsgMTBweCAqIDUgKG9wZXJhdGlvbiBvcmRlcik8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMTAwcHggbW9kIDEwMDApOyI+
MTEwMHB4IG1vZCAxMDAwPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3Jv
dW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMTAwJS8yKTsiPjEwMCUvMiAod2hl
cmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAw
cHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2
IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2FsYygxMDAlICsgLTEw
MHB4KTsiPjEwMCUgKyAtMTAwcHggKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+
DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNs
YXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRo
OiAtd2Via2l0LWNhbGMoODAlIC0gNjBweCk7Ij44MCUgLSA2MHB4ICh3aGVyZSAxMDAlIGlzIDIw
MHB4KTwvZGl2Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3Vu
ZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRo
LXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDMwMHB4IC0gMTAwJSk7Ij4zMDBweCAt
IDEwMCUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0i
d2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4N
CisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMo
LTEwMHB4ICsgMTAwJSk7Ij4tMTAwcHggKyAxMDAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwvZGl2
Pg0KKzwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiAyMDBweDsgYmFja2dyb3VuZC1jb2xvcjog
d2hpdGU7IiBjbGFzcz0id3JhcHBlciI+DQorICAgIDxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDIwJSArIDMwJSk7Ij4yMCUgKyAzMCUgKHdoZXJlIDEw
MCUgaXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBi
YWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFz
cz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoODAlIC0gMzAlKTsiPjgw
JSAtIDMwJSAod2hlcmUgMTAwJSBpcyAyMDBweCk8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0eWxl
PSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIi
Pg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
YygxMCUgKiA1KTsiPjEwJSAqIDUgKHdoZXJlIDEwMCUgaXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+
DQorPGRpdiBzdHlsZT0id2lkdGg6IDIwMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNs
YXNzPSJ3cmFwcGVyIj4NCisgICAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRo
OiAtd2Via2l0LWNhbGMoNSAqIDEwJSk7Ij41ICogMTAlICh3aGVyZSAxMDAlIGlzIDIwMHB4KTwv
ZGl2Pg0KKzwvZGl2Pg0KKzwhLS0NCisgRklYTUU6IHdoYXQgZG8gd2UgZG8gd2l0aCBtb2Qgb2Yg
cGVyY2VudD8NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdo
aXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHls
ZT0id2lkdGg6IC13ZWJraXQtY2FsYyg3NSUgbW9kIDEwMCk7Ij4xNTAlIG1vZCAxMDAgKHdoZXJl
IDEwMCUgaXMgMjAwcHgpPC9kaXY+DQorPC9kaXY+DQorLS0+DQorPGRpdiBjbGFzcz0id2lkdGgt
dGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoKDEwMHB4KSk7Ij4oMTAwcHgpPC9kaXY+
DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoKDUw
cHggKyA1MHB4KSk7Ij4oNTBweCArIDUwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVz
dCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoKDUwcHgpICsgNTBweCk7Ij4oNTBweCkgKyA1
MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWNhbGMoNTBweCArICg1MHB4KSk7Ij41MHB4ICsgKDUwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0i
d2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoIDUwcHggKyAgNTBweCApOyI+
IDUwcHggKyAgNTBweCA8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtY2FsYyggNTBweCArIDI1cHggKiAyICk7Ij4gNTBweCArIDI1cHggKiAyIDwv
ZGl2Pg0KKzxkaXYgY2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxj
KCAoMjVweCArIDI1cHgpICogMiApOyI+ICgyNXB4ICsgMjVweCkgKiAyIDwvZGl2Pg0KKzxkaXYg
Y2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1jYWxjKDIgKiA1MHB4KTsi
PjIgKiA1MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWNhbGMoMiAqIDEwMHB4IC8gMik7Ij4yICogMTAwcHggLyAyPC9kaXY+DQorPGRpdiBj
bGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoMTIgbW9kIDEwICog
NTBweCk7Ij4xMiBtb2QgMTAgKiA1MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoKDFlbSAtIDFlbSkgKyAxMDBweCk7Ij4oMWVtIC0g
MWVtKSArIDEwMHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRo
OiAtd2Via2l0LWNhbGMoNTBweCArICArNTBweCk7Ij41MHB4ICsgICs1MHB4PC9kaXY+DQorPGRp
diBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoLTUwcHggKyAx
NTBweCk7Ij4tNTBweCArIDE1MHB4PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5
bGU9IndpZHRoOiAtd2Via2l0LWNhbGMoLTUwcHggLSAtMTUwcHgpOyI+LTUwcHggLSAtMTUwcHg8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtY2Fs
YygoKCgoKCgoMTAwcHgpKSkpKSkpKTsiPigoKCgoKCgxMDBweCkpKSkpKSk8L2Rpdj4NCis8ZGl2
IGNsYXNzPSJoZWlnaHQtdGVzdCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1jYWxjKDEwMHB4KTsi
PjEwMHB4PC9kaXY+DQorPGRpdiBzdHlsZT0iaGVpZ2h0OiA1MHB4OyBiYWNrZ3JvdW5kLWNvbG9y
OiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgIDxkaXYgY2xhc3M9ImhlaWdodC10ZXN0IiBz
dHlsZT0iaGVpZ2h0OiAtd2Via2l0LWNhbGMoMTAwJSAqIDIpOyI+MTAwJSAqIDI8L2Rpdj4NCis8
L2Rpdj4NCis8L2Rpdj4NCisNCis8c2NyaXB0Pg0KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpDQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsNCisNCit6b29t
TGV2ZWxzID0gWzEsIDEuMiwgMl07DQordmFyIHRlc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgidGVzdCIpOw0KK2ZvciAodmFyIGNoaWxkID0gdGVzdC5maXJzdENoaWxkOyBjaGlsZDsgY2hp
bGQgPSBjaGlsZC5uZXh0U2libGluZykgew0KKyAgICB2YXIgZWxlbWVudCA9IGNoaWxkOw0KKyAg
ICBpZiAoZWxlbWVudC5jbGFzc05hbWUgPT0gIndyYXBwZXIiKSB7DQorICAgICAgICBlbGVtZW50
ID0gZWxlbWVudC5maXJzdENoaWxkOw0KKyAgICAgICAgd2hpbGUgKGVsZW1lbnQudGFnTmFtZSAh
PSAiRElWIikgZWxlbWVudCA9IGVsZW1lbnQubmV4dFNpYmxpbmc7DQorICAgIH0NCisNCisgICAg
dmFyIGVycm9yID0gW107DQorICAgIGZvciAodmFyIHogPSAwOyB6IDwgem9vbUxldmVscy5sZW5n
dGg7IHorKykgew0KKyAgICAgICAgdmFyIHpvb20gPSB6b29tTGV2ZWxzW3pdOw0KKyAgICAgICAg
ZG9jdW1lbnQuYm9keS5zdHlsZS56b29tID0gem9vbTsNCisgICAgICAgIHZhciB3aWR0aCA9IGVs
ZW1lbnQub2Zmc2V0V2lkdGg7DQorICAgICAgICBpZiAod2lkdGggIT0gMTAwKQ0KKyAgICAgICAg
ICAgIGVycm9yLnB1c2goIkB6b29tPSIgKyB6b29tICsgIiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgIiArIHdpZHRoKTsNCisgICAgICAgIHZhciBoZWlnaHQgPSBlbGVtZW50Lm9mZnNl
dEhlaWdodDsNCisgICAgICAgIGlmIChoZWlnaHQgIT0gMTAwKQ0KKyAgICAgICAgICAgIGVycm9y
LnB1c2goIkB6b29tPSIgKyB6b29tICsgIiBleHBlY3RlZCBoZWlnaHQgb2YgMTAwLCBidXQgd2Fz
ICIgKyBoZWlnaHQpOw0KKyAgICB9DQorICAgIGlmIChlcnJvciA9PSAiIikgew0KKyAgICAgICAg
ZWxlbWVudC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAiZ3JlZW4iOw0KKyAgICAgICAgZWxlbWVu
dC5pbm5lckhUTUwgKz0gIiA9PiBQQVNTIjsNCisgICAgfSBlbHNlDQorICAgICAgICBlbGVtZW50
LmlubmVySFRNTCArPSAiID0+IEZBSUw6ICIgKyBlcnJvci5qb2luKCI7ICIpOw0KK30NCitkb2N1
bWVudC5ib2R5LnN0eWxlLnpvb20gPSAxOw0KKzwvc2NyaXB0Pg0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtbWlubWF4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2NzczMvY2FsYy9zaW1wbGUtbWlubWF4LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NTk2Njkw
OWNhYTgzMmJhMzE0MGQxOWE3OTMyYjNlNmJmM2EyNmIwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5tYXgtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTggQEAKK0FsbCBib3hlcyBiZWxvdyBzaG91bGQgYmUgMTAwcHggKiAxMDBweCBhbmQgZ3JlZW4u
CisKK21pbigxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1
NgorbWluKCAxMDBweCApID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAy
NTYKK21pbigoKCgxMDBweCkpKSkgPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQg
d2FzIDI1NgorbWluKDE1MHB4LDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2CittaW4oMTUwcHgsMTAwcHgsMjAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdp
ZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbiggMTUwcHggLCAxMDBweCAsMjAwcHgpID0+IEZB
SUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbig5MHB4ICsgNTBweCAs
MTAwcHgpID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21pbigx
MDAlLDEwMHB4KSAtIHdoZXJlIDEwMCUgaXMgMjAwcHggPT4gRkFJTDogZXhwZWN0ZWQgd2lkdGgg
b2YgMTAwLCBidXQgd2FzIDI1NgorbWluKDEwMHB4LDEwMCUpIC0gd2hlcmUgMTAwJSBpcyAyMDBw
eCA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoMTAwcHgp
ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdhcyAyNTYKK21heCg1MHB4LDEw
MHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2CittYXgoNTBw
eCwxMDBweCwyMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgMjU2
CittYXgoMTIwcHggLSA1MHB4LDEwMHB4KSA9PiBGQUlMOiBleHBlY3RlZCB3aWR0aCBvZiAxMDAs
IGJ1dCB3YXMgMjU2CittYXgoMTAwJSwxMDBweCkgLSB3aGVyZSAxMDAlIGlzIDUwcHggPT4gRkFJ
TDogZXhwZWN0ZWQgd2lkdGggb2YgMTAwLCBidXQgd2FzIDI1NgorbWF4KDEwMHB4LDEwMCUpIC0g
d2hlcmUgMTAwJSBpcyA1MHB4ID0+IEZBSUw6IGV4cGVjdGVkIHdpZHRoIG9mIDEwMCwgYnV0IHdh
cyAyNTYKK21pbigyMDBweCwxMDBweCkgPT4gRkFJTDogZXhwZWN0ZWQgaGVpZ2h0IG9mIDEwMCwg
YnV0IHdhcyA1MApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9jYWxjL3NpbXBsZS1taW5t
YXguaHRtbCBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtbWlubWF4Lmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYTAxNzMxNjc3OGRiNjJkODU5MzM1YzlkNzJlM2JiOGI5YzQ0Y2RmOQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvY2FsYy9zaW1wbGUtbWlubWF4Lmh0bWwKQEAgLTAs
MCArMSw3NyBAQAorPCFET0NUWVBFIEhUTUw+DQorPHN0eWxlPg0KKy53aWR0aC10ZXN0IHsNCisg
ICAgaGVpZ2h0OiAxMDBweDsNCisgICAgd2lkdGg6IDI1NnB4Ow0KKyAgICBiYWNrZ3JvdW5kLWNv
bG9yOiByZWQ7DQorfQ0KKw0KKy5oZWlnaHQtdGVzdCB7DQorICAgIHdpZHRoOiAxMDBweDsNCisg
ICAgaGVpZ2h0OiA1MHB4Ow0KKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7DQorfQ0KKzwvc3R5
bGU+DQorDQorPHA+DQorICBBbGwgYm94ZXMgYmVsb3cgc2hvdWxkIGJlIDEwMHB4ICogMTAwcHgg
YW5kIGdyZWVuLg0KKzwvcD4NCisNCis8ZGl2IGlkPSJ0ZXN0Ij4NCisNCis8ZGl2IGNsYXNzPSJ3
aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWluKDEwMHB4KTsiPm1pbigxMDBweCk8
L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWlu
KCAxMDBweCApOyI+bWluKCAxMDBweCApPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LW1pbigoKCgxMDBweCkpKSk7Ij5taW4oKCgoMTAwcHgpKSkp
PC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1p
bigxNTBweCwxMDBweCk7Ij5taW4oMTUwcHgsMTAwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lk
dGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1pbigxNTBweCwxMDBweCwyMDBweCk7Ij5t
aW4oMTUwcHgsMTAwcHgsMjAwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5
bGU9IndpZHRoOiAtd2Via2l0LW1pbiggIDE1MHB4ICwgIDEwMHB4ICAsMjAwcHgpOyI+bWluKCAg
MTUwcHggICwgIDEwMHB4ICAsMjAwcHgpPC9kaXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LW1pbig5MHB4ICsgNTBweCAsMTAwcHgpOyI+bWluKDkwcHgg
KyA1MHB4ICwxMDBweCk8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3aWR0aDogMjAwcHg7IGJhY2tncm91
bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0KKyAgPGRpdiBjbGFzcz0id2lkdGgt
dGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1pbigxMDAlLDEwMHB4KTsiPm1pbigxMDAlLDEw
MHB4KSAtIHdoZXJlIDEwMCUgaXMgMjAwcHg8L2Rpdj4NCis8L2Rpdj4NCis8ZGl2IHN0eWxlPSJ3
aWR0aDogMjAwcHg7IGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyIgY2xhc3M9IndyYXBwZXIiPg0K
KyAgPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1pbigxMDBw
eCwxMDAlKTsiPm1pbigxMDBweCwxMDAlKSAtIHdoZXJlIDEwMCUgaXMgMjAwcHg8L2Rpdj4NCis8
L2Rpdj4NCisNCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
bWF4KDEwMHB4KTsiPm1heCgxMDBweCk8L2Rpdj4NCis8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBz
dHlsZT0id2lkdGg6IC13ZWJraXQtbWF4KDUwcHgsMTAwcHgpOyI+bWF4KDUwcHgsMTAwcHgpPC9k
aXY+DQorPGRpdiBjbGFzcz0id2lkdGgtdGVzdCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LW1heCg1
MHB4LDEwMHB4LDIwcHgpOyI+bWF4KDUwcHgsMTAwcHgsMjBweCk8L2Rpdj4NCis8ZGl2IGNsYXNz
PSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtbWF4KDEyMHB4IC0gNTBweCwxMDBw
eCk7Ij5tYXgoMTIwcHggLSA1MHB4LDEwMHB4KTwvZGl2Pg0KKzxkaXYgc3R5bGU9IndpZHRoOiA1
MHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsiIGNsYXNzPSJ3cmFwcGVyIj4NCisgIDxkaXYg
Y2xhc3M9IndpZHRoLXRlc3QiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1tYXgoMTAwJSwxMDBweCk7
Ij5tYXgoMTAwJSwxMDBweCkgLSB3aGVyZSAxMDAlIGlzIDUwcHg8L2Rpdj4NCis8L2Rpdj4NCis8
ZGl2IHN0eWxlPSJ3aWR0aDogNTBweDsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IiBjbGFzcz0i
d3JhcHBlciI+DQorICA8ZGl2IGNsYXNzPSJ3aWR0aC10ZXN0IiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtbWF4KDEwMHB4LDEwMCUpOyI+bWF4KDEwMHB4LDEwMCUpIC0gd2hlcmUgMTAwJSBpcyA1MHB4
PC9kaXY+DQorPC9kaXY+DQorDQorPGRpdiBjbGFzcz0iaGVpZ2h0LXRlc3QiIHN0eWxlPSJoZWln
aHQ6IC13ZWJraXQtbWluKDIwMHB4LCAxMDBweCk7Ij5taW4oMjAwcHgsMTAwcHgpPC9kaXY+DQor
DQorPC9kaXY+DQorDQorPHNjcmlwdD4NCitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KQ0KKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7DQorDQordmFyIHRlc3Qg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpOw0KK2ZvciAodmFyIGNoaWxkID0gdGVz
dC5maXJzdENoaWxkOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC5uZXh0U2libGluZykgew0KKyAgICB2
YXIgZWxlbWVudCA9IGNoaWxkOw0KKyAgICBpZiAoZWxlbWVudC5jbGFzc05hbWUgPT0gIndyYXBw
ZXIiKSB7DQorICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5maXJzdENoaWxkOw0KKyAgICAgICAg
d2hpbGUgKGVsZW1lbnQudGFnTmFtZSAhPSAiRElWIikgZWxlbWVudCA9IGVsZW1lbnQubmV4dFNp
Ymxpbmc7DQorICAgIH0NCisNCisgICAgdmFyIHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDsN
CisgICAgdmFyIGVycm9yID0gW107DQorICAgIGlmICh3aWR0aCAhPSAxMDApDQorICAgICAgICBl
cnJvci5wdXNoKCJleHBlY3RlZCB3aWR0aCBvZiAxMDAsIGJ1dCB3YXMgIiArIHdpZHRoKTsNCisg
ICAgdmFyIGhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0Ow0KKyAgICBpZiAoaGVpZ2h0ICE9
IDEwMCkNCisgICAgICAgIGVycm9yLnB1c2goImV4cGVjdGVkIGhlaWdodCBvZiAxMDAsIGJ1dCB3
YXMgIiArIGhlaWdodCk7DQorDQorICAgIGlmIChlcnJvciA9PSAiIikgew0KKyAgICAgICAgZWxl
bWVudC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAiZ3JlZW4iOw0KKyAgICAgICAgZWxlbWVudC5p
bm5lckhUTUwgKz0gIiA9PiBQQVNTIjsNCisgICAgfSBlbHNlDQorICAgICAgICBlbGVtZW50Lmlu
bmVySFRNTCArPSAiID0+IEZBSUw6ICIgKyBlcnJvci5qb2luKCIsICIpOw0KK30NCis8L3Njcmlw
dD4NCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKaW5kZXggNWE5MjIwOTYwNjY1M2M1OGJhOTAzZDZjMTgyZDE0ZDFmOGZmOTNi
Ny4uYmVlYjJmZWE5NTc5OTVjODJiNzNmODUzYTNmNWNhYjdlYzA2MmJmYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI2IEBACisyMDExLTA0LTEwICBNaWtlIExhd3RoZXIgIDxtaWtlbGF3dGhlckBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgZmxleC9iaXNvbiB0b2tlbnMgYW5kIGdyYW1tYXIgZm9yIENTUyBjYWxjCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NDQxMgorCisgICAgICAg
IFRlc3RzOiBjc3MzL2NhbGMvY2FsYy1lcnJvcnMuaHRtbAorICAgICAgICAgICAgICAgY3NzMy9j
YWxjL2xleGVyLXJlZ3Jlc3Npb24tNTc1ODEtMi5odG1sCisgICAgICAgICAgICAgICBjc3MzL2Nh
bGMvbGV4ZXItcmVncmVzc2lvbi01NzU4MS0zLmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY2Fs
Yy9sZXhlci1yZWdyZXNzaW9uLTU3NTgxLmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY2FsYy9t
aW5tYXgtZXJyb3JzLmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY2FsYy9uZXN0ZWQtcm91bmRl
ZC1jb3JuZXJzLmh0bWwKKyAgICAgICAgICAgICAgIGNzczMvY2FsYy9zaW1wbGUtY2FsY3MuaHRt
bAorICAgICAgICAgICAgICAgY3NzMy9jYWxjL3NpbXBsZS1taW5tYXguaHRtbAorCisgICAgICAg
ICogY3NzL0NTU0dyYW1tYXIueToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyVmFsdWVzLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlclZhbHVlTGlzdDo6aW5zZXJ0VmFsdWVBdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJWYWx1ZUxpc3Q6OmV4dGVuZCk6CisgICAgICAgICog
Y3NzL0NTU1BhcnNlclZhbHVlcy5oOgorICAgICAgICAqIGNzcy90b2tlbml6ZXIuZmxleDoKKwog
MjAxMS0wNC0wOCAgTWlzaGEgVHl1dHl1bmlrICA8bWljaGFlbC50eXV0eXVuaWtAbm9raWEuY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IExhc3psbyBHb21ib3MuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1t
YXIueQppbmRleCBiM2NjY2RiNzYzNGUwNjExOGIyZmZmYTBlYzEyMzc2NTg1ZDg0NzM2Li4yNjll
YWYwY2Y2MWY4YWI0Y2ZjYTU2NTljNDk4NTRkOTMzYjI2MjY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFt
bWFyLnkKQEAgLTk5LDcgKzk5LDcgQEAgc3RhdGljIGludCBjc3N5eWxleChZWVNUWVBFKiB5eWx2
YWwsIHZvaWQqIHBhcnNlcikKIAogJX0KIAotJWV4cGVjdCA1MAorJWV4cGVjdCA1NAogCiAlbm9u
YXNzb2MgTE9XRVNUX1BSRUMKIApAQCAtMTgzLDYgKzE4Myw3IEBAIHN0YXRpYyBpbnQgY3NzeXls
ZXgoWVlTVFlQRSogeXlsdmFsLCB2b2lkKiBwYXJzZXIpCiAldG9rZW4gPG51bWJlcj4gSEVSVFoK
ICV0b2tlbiA8bnVtYmVyPiBLSEVSVFoKICV0b2tlbiA8c3RyaW5nPiBESU1FTgorJXRva2VuIDxz
dHJpbmc+IElOVkFMSURESU1FTgogJXRva2VuIDxudW1iZXI+IFBFUkNFTlRBR0UKICV0b2tlbiA8
bnVtYmVyPiBGTE9BVFRPS0VOCiAldG9rZW4gPG51bWJlcj4gSU5URUdFUgpAQCAtMTkxLDYgKzE5
Miw5IEBAIHN0YXRpYyBpbnQgY3NzeXlsZXgoWVlTVFlQRSogeXlsdmFsLCB2b2lkKiBwYXJzZXIp
CiAldG9rZW4gPHN0cmluZz4gRlVOQ1RJT04KICV0b2tlbiA8c3RyaW5nPiBBTllGVU5DVElPTgog
JXRva2VuIDxzdHJpbmc+IE5PVEZVTkNUSU9OCisldG9rZW4gPHN0cmluZz4gQ0FMQ0ZVTkNUSU9O
CisldG9rZW4gPHN0cmluZz4gTUlORlVOQ1RJT04KKyV0b2tlbiA8c3RyaW5nPiBNQVhGVU5DVElP
TgogCiAldG9rZW4gPHN0cmluZz4gVU5JQ09ERVJBTkdFCiAKQEAgLTI3MSw2ICsyNzUsMTQgQEAg
c3RhdGljIGludCBjc3N5eWxleChZWVNUWVBFKiB5eWx2YWwsIHZvaWQqIHBhcnNlcikKICV0eXBl
IDx2YWx1ZT4gdGVybQogJXR5cGUgPHZhbHVlPiB1bmFyeV90ZXJtCiAldHlwZSA8dmFsdWU+IGZ1
bmN0aW9uCisldHlwZSA8dmFsdWU+IGNhbGNfZnVuY190ZXJtCisldHlwZSA8Y2hhcmFjdGVyPiBj
YWxjX2Z1bmNfb3BlcmF0b3IKKyV0eXBlIDx2YWx1ZUxpc3Q+IGNhbGNfZnVuY19leHByCisldHlw
ZSA8dmFsdWVMaXN0PiBjYWxjX2Z1bmNfZXhwcl9saXN0CisldHlwZSA8dmFsdWVMaXN0PiBjYWxj
X2Z1bmNfcGFyZW5fZXhwcgorJXR5cGUgPHZhbHVlPiBjYWxjX2Z1bmN0aW9uCisldHlwZSA8c3Ry
aW5nPiBtaW5fb3JfbWF4CisldHlwZSA8dmFsdWU+IG1pbl9vcl9tYXhfZnVuY3Rpb24KIAogJXR5
cGUgPHN0cmluZz4gZWxlbWVudF9uYW1lCiAldHlwZSA8c3RyaW5nPiBhdHRyX25hbWUKQEAgLTE0
MDcsNiArMTQxOSwxMiBAQCB0ZXJtOgogICB8IGZ1bmN0aW9uIHsKICAgICAgICQkID0gJDE7CiAg
IH0KKyAgfCBjYWxjX2Z1bmN0aW9uIHsKKyAgICAgICQkID0gJDE7CisgIH0KKyAgfCBtaW5fb3Jf
bWF4X2Z1bmN0aW9uIHsKKyAgICAgICQkID0gJDE7CisgIH0KICAgfCAnJScgbWF5YmVfc3BhY2Ug
eyAvKiBIYW5kbGUgd2lkdGg6ICU7ICovCiAgICAgICAkJC5pZCA9IDA7ICQkLnVuaXQgPSAwOwog
ICB9CkBAIC0xNDYzLDYgKzE0ODEsMTQzIEBAIGZ1bmN0aW9uOgogICAgICAgICAkJC5mdW5jdGlv
biA9IGY7CiAgIH0KICAgOworIAorY2FsY19mdW5jX3Rlcm06CisgIHVuYXJ5X3Rlcm0geyAkJCA9
ICQxOyB9CisgIHwgdW5hcnlfb3BlcmF0b3IgdW5hcnlfdGVybSB7ICQkID0gJDI7ICQkLmZWYWx1
ZSAqPSAkMTsgfQorICA7CisKK2NhbGNfZnVuY19vcGVyYXRvcjoKKyAgICAnKycgV0hJVEVTUEFD
RSB7CisgICAgICAgICQkID0gJysnOworICAgIH0KKyAgICB8ICctJyBXSElURVNQQUNFIHsKKyAg
ICAgICAgJCQgPSAnLSc7CisgICAgfQorICAgIHwgJyonIG1heWJlX3NwYWNlIHsKKyAgICAgICAg
JCQgPSAnKic7CisgICAgfQorICAgIHwgJy8nIG1heWJlX3NwYWNlIHsKKyAgICAgICAgJCQgPSAn
Lyc7CisgICAgfQorICAgIHwgSURFTlQgbWF5YmVfc3BhY2UgeworICAgICAgICBpZiAoZXF1YWxJ
Z25vcmluZ0Nhc2UoIm1vZCIsICQxLmNoYXJhY3RlcnMsICQxLmxlbmd0aCkpCisgICAgICAgICAg
ICAkJCA9ICclJzsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJCQgPSAwOworICAgIH0KKyAg
OworCitjYWxjX2Z1bmNfcGFyZW5fZXhwcjoKKyAgICAnKCcgbWF5YmVfc3BhY2UgY2FsY19mdW5j
X2V4cHIgbWF5YmVfc3BhY2UgJyknIG1heWJlX3NwYWNlIHsKKyAgICAgICAgaWYgKCQzKSB7Cisg
ICAgICAgICAgICAkJCA9ICQzOworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAgICAg
ICAgICAgIHYuaWQgPSAwOworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9w
ZXJhdG9yOworICAgICAgICAgICAgdi5pVmFsdWUgPSAnKCc7CisgICAgICAgICAgICAkJC0+aW5z
ZXJ0VmFsdWVBdCgwLCB2KTsKKyAgICAgICAgICAgIHYuaVZhbHVlID0gJyknOworICAgICAgICAg
ICAgJCQtPmFkZFZhbHVlKHYpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICQkID0gMDsK
KyAgICB9CisKK2NhbGNfZnVuY19leHByOgorICAgIGNhbGNfZnVuY190ZXJtIG1heWJlX3NwYWNl
IHsKKyAgICAgICAgQ1NTUGFyc2VyKiBwID0gc3RhdGljX2Nhc3Q8Q1NTUGFyc2VyKj4ocGFyc2Vy
KTsKKyAgICAgICAgJCQgPSBwLT5jcmVhdGVGbG9hdGluZ1ZhbHVlTGlzdCgpOworICAgICAgICAk
JC0+YWRkVmFsdWUocC0+c2lua0Zsb2F0aW5nVmFsdWUoJDEpKTsKKyAgICB9CisgICAgfCBjYWxj
X2Z1bmNfZXhwciBjYWxjX2Z1bmNfb3BlcmF0b3IgY2FsY19mdW5jX3Rlcm0geworICAgICAgICBD
U1NQYXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBp
ZiAoJDEgJiYgJDIpIHsKKyAgICAgICAgICAgICQkID0gJDE7CisgICAgICAgICAgICBDU1NQYXJz
ZXJWYWx1ZSB2OworICAgICAgICAgICAgdi5pZCA9IDA7CisgICAgICAgICAgICB2LnVuaXQgPSBD
U1NQYXJzZXJWYWx1ZTo6T3BlcmF0b3I7CisgICAgICAgICAgICB2LmlWYWx1ZSA9ICQyOworICAg
ICAgICAgICAgJCQtPmFkZFZhbHVlKHYpOworICAgICAgICAgICAgJCQtPmFkZFZhbHVlKHAtPnNp
bmtGbG9hdGluZ1ZhbHVlKCQzKSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgJCQgPSAw
OworCisgICAgfQorICAgIHwgY2FsY19mdW5jX2V4cHIgY2FsY19mdW5jX29wZXJhdG9yIGNhbGNf
ZnVuY19wYXJlbl9leHByIHsKKyAgICAgICAgaWYgKCQxICYmICQyICYmICQzKSB7CisgICAgICAg
ICAgICAkJCA9ICQxOworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAgICAgICAgICAg
IHYuaWQgPSAwOworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9wZXJhdG9y
OworICAgICAgICAgICAgdi5pVmFsdWUgPSAkMjsKKyAgICAgICAgICAgICQkLT5hZGRWYWx1ZSh2
KTsKKyAgICAgICAgICAgICQkLT5leHRlbmQoKigkMykpOworICAgICAgICB9IGVsc2UgCisgICAg
ICAgICAgICAkJCA9IDA7CisgICAgfQorICAgIHwgY2FsY19mdW5jX3BhcmVuX2V4cHIKKyAgICB8
IGNhbGNfZnVuY19leHByIGVycm9yIHsKKyAgICAgICAgJCQgPSAwOworICAgIH0KKyAgOworCitj
YWxjX2Z1bmNfZXhwcl9saXN0OgorICAgIGNhbGNfZnVuY19leHByICB7CisgICAgICAgICQkID0g
JDE7CisgICAgfSAgICAKKyAgICB8IGNhbGNfZnVuY19leHByX2xpc3QgJywnIG1heWJlX3NwYWNl
IGNhbGNfZnVuY19leHByIHsKKyAgICAgICAgaWYgKCQxICYmICQ0KSB7CisgICAgICAgICAgICAk
JCA9ICQxOworICAgICAgICAgICAgQ1NTUGFyc2VyVmFsdWUgdjsKKyAgICAgICAgICAgIHYuaWQg
PSAwOworICAgICAgICAgICAgdi51bml0ID0gQ1NTUGFyc2VyVmFsdWU6Ok9wZXJhdG9yOworICAg
ICAgICAgICAgdi5pVmFsdWUgPSAnLCc7CisgICAgICAgICAgICAkJC0+YWRkVmFsdWUodik7Cisg
ICAgICAgICAgICAkJC0+ZXh0ZW5kKCooJDQpKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAg
ICAkJCA9IDA7CisgICAgfQorICAgIAorCitjYWxjX2Z1bmN0aW9uOgorICAgIENBTENGVU5DVElP
TiBtYXliZV9zcGFjZSBjYWxjX2Z1bmNfZXhwciAnKScgbWF5YmVfc3BhY2UgeworICAgICAgICBD
U1NQYXJzZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBD
U1NQYXJzZXJGdW5jdGlvbiogZiA9IHAtPmNyZWF0ZUZsb2F0aW5nRnVuY3Rpb24oKTsKKyAgICAg
ICAgZi0+bmFtZSA9ICQxOworICAgICAgICBmLT5hcmdzID0gcC0+c2lua0Zsb2F0aW5nVmFsdWVM
aXN0KCQzKTsKKyAgICAgICAgJCQuaWQgPSAwOworICAgICAgICAkJC51bml0ID0gQ1NTUGFyc2Vy
VmFsdWU6OkZ1bmN0aW9uOworICAgICAgICAkJC5mdW5jdGlvbiA9IGY7CisgICAgfQorICAgIHwg
Q0FMQ0ZVTkNUSU9OIG1heWJlX3NwYWNlIGVycm9yIHsKKyAgICAgICAgWVlFUlJPUjsKKyAgICB9
CisgICAgOworCisKK21pbl9vcl9tYXg6CisgICAgTUlORlVOQ1RJT04geworICAgICAgICAkJCA9
ICQxOworICAgIH0KKyAgICB8IE1BWEZVTkNUSU9OIHsKKyAgICAgICAgJCQgPSAkMTsKKyAgICB9
CisgICAgOworCittaW5fb3JfbWF4X2Z1bmN0aW9uOgorICAgIG1pbl9vcl9tYXggbWF5YmVfc3Bh
Y2UgY2FsY19mdW5jX2V4cHJfbGlzdCAnKScgbWF5YmVfc3BhY2UgeworICAgICAgICBDU1NQYXJz
ZXIqIHAgPSBzdGF0aWNfY2FzdDxDU1NQYXJzZXIqPihwYXJzZXIpOworICAgICAgICBDU1NQYXJz
ZXJGdW5jdGlvbiogZiA9IHAtPmNyZWF0ZUZsb2F0aW5nRnVuY3Rpb24oKTsKKyAgICAgICAgZi0+
bmFtZSA9ICQxOworICAgICAgICBmLT5hcmdzID0gcC0+c2lua0Zsb2F0aW5nVmFsdWVMaXN0KCQz
KTsKKyAgICAgICAgJCQuaWQgPSAwOworICAgICAgICAkJC51bml0ID0gQ1NTUGFyc2VyVmFsdWU6
OkZ1bmN0aW9uOworICAgICAgICAkJC5mdW5jdGlvbiA9IGY7CisgICAgfSAKKyAgICB8IG1pbl9v
cl9tYXggbWF5YmVfc3BhY2UgZXJyb3IgeworICAgICAgICBZWUVSUk9SOworICAgIH0KKyAgICA7
CiAKIC8qIGVycm9yIGhhbmRsaW5nIHJ1bGVzICovCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQYXJzZXJWYWx1ZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
clZhbHVlcy5jcHAKaW5kZXggOWVjYjk2ZGUyZGIzZTNlYmQxN2EzYTY2OTlkZDk3YTlkN2ZmOWFh
ZC4uOTRkY2QzY2EyZmRkNDE3MTMyNzE0MTJjMDMyY2IzNmI0NjJmNDhhZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlclZhbHVlcy5jcHAKQEAgLTQ0LDEyICs0NCwyMyBAQCB2b2lkIENTU1Bh
cnNlclZhbHVlTGlzdDo6YWRkVmFsdWUoY29uc3QgQ1NTUGFyc2VyVmFsdWUmIHYpCiB7CiAgICAg
bV92YWx1ZXMuYXBwZW5kKHYpOwogfQotICAgIAorCit2b2lkIENTU1BhcnNlclZhbHVlTGlzdDo6
aW5zZXJ0VmFsdWVBdCh1bnNpZ25lZCBpLCBjb25zdCBDU1NQYXJzZXJWYWx1ZSYgdikKK3sKKyAg
ICBtX3ZhbHVlcy5pbnNlcnQoaSwgdik7Cit9CisKIHZvaWQgQ1NTUGFyc2VyVmFsdWVMaXN0Ojpk
ZWxldGVWYWx1ZUF0KHVuc2lnbmVkIGkpCiB7IAogICAgIG1fdmFsdWVzLnJlbW92ZShpKTsKIH0K
IAordm9pZCBDU1NQYXJzZXJWYWx1ZUxpc3Q6OmV4dGVuZChDU1NQYXJzZXJWYWx1ZUxpc3QmIHZh
bHVlTGlzdCkKK3sKKyAgICBmb3IgKHVuc2lnbmVkIGludCBpID0gMDsgaSA8IHZhbHVlTGlzdC5z
aXplKCk7ICsraSkKKyAgICAgICAgbV92YWx1ZXMuYXBwZW5kKCoodmFsdWVMaXN0LnZhbHVlQXQo
aSkpKTsKK30KKwogUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTUGFyc2VyVmFsdWU6OmNyZWF0ZUNT
U1ZhbHVlKCkKIHsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IHBhcnNlZFZhbHVlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlclZhbHVlcy5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1BhcnNlclZhbHVlcy5oCmluZGV4IDBmNDNiOGM5NzRkMWU5ZjYyNmNhYTgxZjAxNjM0
OTZkYzY0MDE2MjUuLjgxZWNiYzNlMjZhMzAzZWJmYzM3YWIyN2MwMTZiZTgwM2IwODgyMzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXJWYWx1ZXMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyVmFsdWVzLmgKQEAgLTcxLDcgKzcxLDkgQEAgcHVibGlj
OgogICAgIH5DU1NQYXJzZXJWYWx1ZUxpc3QoKTsKICAgICAKICAgICB2b2lkIGFkZFZhbHVlKGNv
bnN0IENTU1BhcnNlclZhbHVlJik7CisgICAgdm9pZCBpbnNlcnRWYWx1ZUF0KHVuc2lnbmVkLCBj
b25zdCBDU1NQYXJzZXJWYWx1ZSYpOwogICAgIHZvaWQgZGVsZXRlVmFsdWVBdCh1bnNpZ25lZCk7
CisgICAgdm9pZCBleHRlbmQoQ1NTUGFyc2VyVmFsdWVMaXN0Jik7CiAKICAgICB1bnNpZ25lZCBz
aXplKCkgY29uc3QgeyByZXR1cm4gbV92YWx1ZXMuc2l6ZSgpOyB9CiAgICAgQ1NTUGFyc2VyVmFs
dWUqIGN1cnJlbnQoKSB7IHJldHVybiBtX2N1cnJlbnQgPCBtX3ZhbHVlcy5zaXplKCkgPyAmbV92
YWx1ZXNbbV9jdXJyZW50XSA6IDA7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy90
b2tlbml6ZXIuZmxleCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90b2tlbml6ZXIuZmxleAppbmRleCBm
NzIxNDRhYTRjM2U0OGY1NmY3MmYzZjVmYWM3Y2QwYzFjNDg2MGNiLi4zMjg1ZDJmZDE0MjFkZDVl
NDEwZTQ5N2RiNmNjNDUyZjljNTlhYjkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
dG9rZW5pemVyLmZsZXgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3Rva2VuaXplci5mbGV4CkBA
IC0xMDEsNiArMTAxLDcgQEAgbnRoICAgICAgICAgICAgIFtcKy1dP3tpbnRudW19Km4oW1x0XHJc
biBdKltcKy1dW1x0XHJcbiBdKntpbnRudW19KT8KIHtudW19SHogICAgICAgICAgICAgICAgIHt5
eVRvayA9IEhFUlRaOyByZXR1cm4geXlUb2s7fQoge251bX1rSHogICAgICAgICAgICAgICAge3l5
VG9rID0gS0hFUlRaOyByZXR1cm4geXlUb2s7fQoge251bX17aWRlbnR9ICAgICAgICAgICAge3l5
VG9rID0gRElNRU47IHJldHVybiB5eVRvazt9Cit7bnVtfXtpZGVudH1cKyAgICAgICAgICB7eXlU
b2sgPSBJTlZBTElERElNRU47IHJldHVybiB5eVRvazt9CiB7bnVtfSUrICAgICAgICAgICAgICAg
ICB7eXlUb2sgPSBQRVJDRU5UQUdFOyByZXR1cm4geXlUb2s7fQoge2ludG51bX0gICAgICAgICAg
ICAgICAge3l5VG9rID0gSU5URUdFUjsgcmV0dXJuIHl5VG9rO30KIHtudW19ICAgICAgICAgICAg
ICAgICAgIHt5eVRvayA9IEZMT0FUVE9LRU47IHJldHVybiB5eVRvazt9CkBAIC0xMDksNiArMTEw
LDkgQEAgbnRoICAgICAgICAgICAgIFtcKy1dP3tpbnRudW19Km4oW1x0XHJcbiBdKltcKy1dW1x0
XHJcbiBdKntpbnRudW19KT8KICJub3QoIiAgICAgICAgICAgICAgICAgIHt5eVRvayA9IE5PVEZV
TkNUSU9OOyByZXR1cm4geXlUb2s7fQogInVybCgie3d9e3N0cmluZ317d30iKSIge3l5VG9rID0g
VVJJOyByZXR1cm4geXlUb2s7fQogInVybCgie3d9e3VybH17d30iKSIgICAge3l5VG9rID0gVVJJ
OyByZXR1cm4geXlUb2s7fQorIi13ZWJraXQtY2FsYygiICAgICAgICAge3l5VG9rID0gQ0FMQ0ZV
TkNUSU9OOyByZXR1cm4geXlUb2s7fQorIi13ZWJraXQtbWluKCIgICAgICAgICAge3l5VG9rID0g
TUlORlVOQ1RJT047IHJldHVybiB5eVRvazt9CisiLXdlYmtpdC1tYXgoIiAgICAgICAgICB7eXlU
b2sgPSBNQVhGVU5DVElPTjsgcmV0dXJuIHl5VG9rO30KIHtpZGVudH0iKCIgICAgICAgICAgICAg
IHt5eVRvayA9IEZVTkNUSU9OOyByZXR1cm4geXlUb2s7fQogCiBVXCt7cmFuZ2V9ICAgICAgICAg
ICAgICB7eXlUb2sgPSBVTklDT0RFUkFOR0U7IHJldHVybiB5eVRvazt9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>