<?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>96798</bug_id>
          
          <creation_ts>2012-09-14 09:34:45 -0700</creation_ts>
          <short_desc>[V8] Binding: Implement EnforceRange IDL Attribute for long long conversions</short_desc>
          <delta_ts>2013-03-18 13:30:15 -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>523.x (Safari 3)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>101783</blocked>
    
    <blocked>110243</blocked>
    
    <blocked>112506</blocked>
    
    <blocked>112612</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Joshua Bell">jsbell</reporter>
          <assigned_to name="Joshua Bell">jsbell</assigned_to>
          <cc>abarth</cc>
    
    <cc>alecflett</cc>
    
    <cc>arv</cc>
    
    <cc>buildbot</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dgrogan</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>kbr</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>peter+ews</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>720834</commentid>
    <comment_count>0</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-14 09:34:45 -0700</bug_when>
    <thetext>From the WebIDL spec: http://dev.w3.org/2006/webapi/WebIDL/#es-long-long

1. If x is NaN, +∞, or −∞, then throw a TypeError.
2. Set x to sign(x) * floor(abs(x)).
3. If x &lt; −(2^53 − 1) or x &gt; 2^53 − 1, then throw a TypeError.
4. Return the IDL long long value that represents the same numeric value as x.

Note that there are similar cases for unsigned long long.

The binding code generator says:

return &quot;toInt64($value)&quot; if $type eq &quot;unsigned long long&quot; or $type eq &quot;long long&quot;;

and toInt64 defined in bindings/v8/V8Binding.h is:

    inline long long toInt64(v8::Local&lt;v8::Value&gt; value)
    {
        return static_cast&lt;long long&gt;(value-&gt;IntegerValue());
    }

... so there are no guard checks. 

This causes IndexedDB to fail the test http://w3c-test.org/webapps/IndexedDB/tests/submissions/Ms2ger/idbfactory_open9.htm

We could special case this in the IDB code, or change toInt64 to incorporate the checks from WebIDL and call throwTypeError().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>721104</commentid>
    <comment_count>1</comment_count>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2012-09-14 13:58:12 -0700</bug_when>
    <thetext>Adding negative sign</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724609</commentid>
    <comment_count>2</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-20 10:21:02 -0700</bug_when>
    <thetext>Note that this should only apply if the IDL has [EnforceRange] extended attribute.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724675</commentid>
    <comment_count>3</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-20 11:11:43 -0700</bug_when>
    <thetext>Debugging through this, NaN, Infinity and -Infinity are being coerced to -0x8000000000000000 via V8&apos;s IntegerValue(). It&apos;s IndexedDB that&apos;s generating the type error for those.

So basically we need to implement all these tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724835</commentid>
    <comment_count>4</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-20 13:59:30 -0700</bug_when>
    <thetext>Huh, I&apos;m a bit stumped.

This should be a matter of dumping the appropriate tests into V8Binding.h&apos;s toInt64 (and then refactoring), and having toInt64() call throwTypeError(). However, when this is done the exception is not caught/rethrown by the v8::TryCatch block in EXCEPTION_BLOCK, so the script never sees the exception. 

Maybe v8 change r11894 is to blame?

Calling throwTypeError() winds its way into api.cc&apos;s ThrowException which calls Isolate::ScheduleThrow(). That method calls into Isolate::Throw(), then immediately moves the exception from &quot;pending&quot; to &quot;scheduled&quot; and clears the pending exception. Tracing through, nothing causes the &quot;scheduled&quot; exception to be &quot;promoted&quot; back to pending before the TryCatch block concludes.

v8 r11894 monkeys with the contents of Isolate::ScheduleThrow, removing a call to PropagatePendingExceptionToExternalTryCatch() which seems to be needed. If I undo that change then throwTypeError() works as expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724901</commentid>
    <comment_count>5</comment_count>
      <attachid>164990</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-20 15:09:06 -0700</bug_when>
    <thetext>Created attachment 164990
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724902</commentid>
    <comment_count>6</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-20 15:11:34 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Created an attachment (id=164990) [details]
&gt; Patch

Uploaded a patch, but it won&apos;t work until we sort out the V8 issue. (If I revert http://code.google.com/p/v8/source/diff?spec=svn11894&amp;old=11882&amp;r=11894&amp;format=unidiff&amp;path=%2Ftrunk%2Fsrc%2Fisolate.cc locally it works!)

Also:

* Doesn&apos;t implement EnforceRange for &quot;long&quot; types, just &quot;long long&quot;
* The logic should probably move from V8Binding.h to V8Binding.cpp
* I didn&apos;t touch JSC at all</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>724964</commentid>
    <comment_count>7</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-09-20 16:29:54 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; This should be a matter of dumping the appropriate tests into V8Binding.h&apos;s toInt64 (and then refactoring), and having toInt64() call throwTypeError(). However, when this is done the exception is not caught/rethrown by the v8::TryCatch block in EXCEPTION_BLOCK, so the script never sees the exception. 

haraken@ points out this is http://code.google.com/p/v8/issues/detail?id=2166 - in summary, TryCatch is not nestable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782595</commentid>
    <comment_count>8</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-12-04 08:59:32 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #4)
&gt; &gt; This should be a matter of dumping the appropriate tests into V8Binding.h&apos;s toInt64 (and then refactoring), and having toInt64() call throwTypeError(). However, when this is done the exception is not caught/rethrown by the v8::TryCatch block in EXCEPTION_BLOCK, so the script never sees the exception. 
&gt; 
&gt; haraken@ points out this is http://code.google.com/p/v8/issues/detail?id=2166 - in summary, TryCatch is not nestable.

Once Chromium rolls v8 to r13130 this should be unblocked on the v8 side.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782612</commentid>
    <comment_count>9</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-12-04 09:39:32 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; (In reply to comment #4)
&gt; &gt; &gt; This should be a matter of dumping the appropriate tests into V8Binding.h&apos;s toInt64 (and then refactoring), and having toInt64() call throwTypeError(). However, when this is done the exception is not caught/rethrown by the v8::TryCatch block in EXCEPTION_BLOCK, so the script never sees the exception. 
&gt; &gt; 
&gt; &gt; haraken@ points out this is http://code.google.com/p/v8/issues/detail?id=2166 - in summary, TryCatch is not nestable.
&gt; 
&gt; Once Chromium rolls v8 to r13130 this should be unblocked on the v8 side.

I don&apos;t understand why we need V8 changes for this. See bug 101783 for a WIP patch that worked (to some extent). Maybe it is cleaner to wait for V8 to allow anything to throw but we can keep track of the success state as we do the conversions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782635</commentid>
    <comment_count>10</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-12-04 09:53:48 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; I don&apos;t understand why we need V8 changes for this. See bug 101783 for a WIP patch that worked (to some extent). Maybe it is cleaner to wait for V8 to allow anything to throw but we can keep track of the success state as we do the conversions.

That&apos;s true, it&apos;s not technically blocked. I was favoring having the toIntXXX() methods throw for readability but passing in an bool&amp; obviously works as well.

The throwing approach works, apart from a v8 bug which has now been resolved, so we can choose either approach. I wasn&apos;t aware of the bug when I started this patch and as it wasn&apos;t urgent and the v8 fix seemed imminent I left it blocked rather than exploring other approaches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782645</commentid>
    <comment_count>11</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2012-12-04 10:00:35 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #9)
&gt; &gt; I don&apos;t understand why we need V8 changes for this. See bug 101783 for a WIP patch that worked (to some extent). Maybe it is cleaner to wait for V8 to allow anything to throw but we can keep track of the success state as we do the conversions.
&gt; 
&gt; That&apos;s true, it&apos;s not technically blocked. I was favoring having the toIntXXX() methods throw for readability but passing in an bool&amp; obviously works as well.

I&apos;m not sure which approach is better. Today, where we do not handle any type conversion failures, I think using a throw is less invasive, but given that we really should handle all type conversion failures I&apos;m not sure throw is a better solution?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>782667</commentid>
    <comment_count>12</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-12-04 10:19:17 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; I&apos;m not sure which approach is better. Today, where we do not handle any type conversion failures, I think using a throw is less invasive, but given that we really should handle all type conversion failures I&apos;m not sure throw is a better solution?

I was imagining we&apos;d end up with a repeated pattern like this anyway in the API:

XXX toXXX(x, options..., bool&amp; ok);
XXX toXXXMaybeThrow(x, options...) { bool ok; XXX r = toXXX(x, ok); if (!ok) throwTypeError(); return r; }

So eliminating the toXXXMaybeThrow and relying on the generated code to throw seems like it will result in less code overall.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>783052</commentid>
    <comment_count>13</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-12-04 15:52:38 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; &gt; &gt; haraken@ points out this is http://code.google.com/p/v8/issues/detail?id=2166 - in summary, TryCatch is not nestable.

BTW, this bug is going to be fixed shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797674</commentid>
    <comment_count>14</comment_count>
      <attachid>180821</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-12-27 14:40:22 -0800</bug_when>
    <thetext>Created attachment 180821
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797675</commentid>
    <comment_count>15</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-12-27 14:44:04 -0800</bug_when>
    <thetext>Latest patch drops dependency on nested v8 try/catch blocks and implements this in the style of bug 101783 - thanks arv@!

To match the IDL it is more lenient for u/int32 conversions in some cases when [EnforceRange] is not specified.

This does NOT YET implement the JSC version, only the V8 version, so it&apos;s not ready for landing but I wanted to see what the bots think and get feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797722</commentid>
    <comment_count>16</comment_count>
      <attachid>180821</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-27 18:42:56 -0800</bug_when>
    <thetext>Comment on attachment 180821
Patch

Attachment 180821 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/15549644

New failing tests:
fast/js/select-options-add.html
fast/dom/non-numeric-values-numeric-parameters.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798669</commentid>
    <comment_count>17</comment_count>
      <attachid>180821</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2013-01-02 08:07:21 -0800</bug_when>
    <thetext>Comment on attachment 180821
Patch

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

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:136
&gt; +        x = (x &lt; 0 ? -1 : 1) * floor(fabs(x));

Can&apos;t this just be (int) x?

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:147
&gt; +    if (isnan(numberValue) || isinf(numberValue))

I&apos;m concerned about this change. Why do we silently want to treat NaN and Infinity as 0?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798691</commentid>
    <comment_count>18</comment_count>
      <attachid>180821</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-02 09:04:45 -0800</bug_when>
    <thetext>Comment on attachment 180821
Patch

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

&gt;&gt; Source/WebCore/bindings/v8/V8Binding.cpp:136
&gt;&gt; +        x = (x &lt; 0 ? -1 : 1) * floor(fabs(x));
&gt; 
&gt; Can&apos;t this just be (int) x?

After reviewing the C standard: yes. &quot;When a value of floating type is converted to integral type, the fractional part is discarded.&quot;

(Unsurprising, as WebIDL is likely just specifying existing behavior of implementations.)

&gt;&gt; Source/WebCore/bindings/v8/V8Binding.cpp:147
&gt;&gt; +    if (isnan(numberValue) || isinf(numberValue))
&gt; 
&gt; I&apos;m concerned about this change. Why do we silently want to treat NaN and Infinity as 0?

WebIDL does not specify that an exception should be raised in non-finite cases if [EnforceRange] is not specified. That&apos;s the point of the attribute - to allow interfaces to turn on throwing behavior.

I agree that this is the scariest part of the patch, as it changes the behavior of existing binding code. I will look more carefully at where toIntXX(value, ok) is called explicitly, since I think generated code never uses that form unless [EnforceRange] is specified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798696</commentid>
    <comment_count>19</comment_count>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2013-01-02 09:22:05 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; WebIDL does not specify that an exception should be raised in non-finite cases if [EnforceRange] is not specified. That&apos;s the point of the attribute - to allow interfaces to turn on throwing behavior.

My assumption was wrong. I just double checked.

I wonder if we could test these behaviors? One idea would be to have add an object to testRunner where we have all of these. I&apos;ll file a bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798726</commentid>
    <comment_count>20</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-02 10:42:20 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; (From update of attachment 180821 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=180821&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/bindings/v8/V8Binding.cpp:136
&gt; &gt;&gt; +        x = (x &lt; 0 ? -1 : 1) * floor(fabs(x));
&gt; &gt; 
&gt; &gt; Can&apos;t this just be (int) x?
&gt; 
&gt; After reviewing the C standard: yes. &quot;When a value of floating type is converted to integral type, the fractional part is discarded.&quot;

Hrm, well, trickier than that as the subsequent tests look for values outside the range of the destination type. The C++ standard says &quot;The behavior is undefined if the truncated value cannot be represented in the destination type&quot;. So... I&apos;m not sure we can take a shortcut here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798762</commentid>
    <comment_count>21</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-02 11:43:33 -0800</bug_when>
    <thetext>Details on the two test failures:

* fast/dom/non-numeric-values-numeric-parameters.html
* fast/js/select-options-add.html

Both are probing the behavior around:

document.createElement(&apos;select&apos;).options.add(document.createElement(&apos;option&apos;), x);

... for various values of X.

x = Infinity  ==&gt; Chrome 23 throws, Safari 6 throws, FF17 throws, IE10 throws.
x = -Infinity ==&gt; Chrome 23 throws, Safari 6 throws, FF17 throws, IE10 throws.
x = NaN       ==&gt; Chrome 23 throws, Safari 6 throws, FF17 ok,     IE10 throws.
x = -2        ==&gt; Chrome 23 throws, Safari 6 throws, FF17 ok,     IE10 throws.
x = -1        ==&gt; Chrome 23 ok,     Safari 6 ok,     FF17 ok,     IE10 ok.
x = 100       ==&gt; Chrome 23 ok,     Safari 6 ok,     FF17 ok,     IE10 ok.

The HTML spec has:

void add((HTMLOptionElement or HTMLOptGroupElement) element, optional (HTMLElement or long)? before = null);

... and the prose reads: &quot;If before is omitted, null, or a number out of range, then element will be added at the end of the list&quot; - therefore, I would not expect the throwing behavior in any of these cases.

...

The fast/dom/non-numeric-values-numeric-parameters.html test actually has a bug in the test where it is setting NaNAllowed but testing nanAllowed, so it is not correctly probing NaN support for this method, which may explain the divergence between WebKit and Gecko.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798913</commentid>
    <comment_count>22</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-02 14:36:07 -0800</bug_when>
    <thetext>Per discussion w/ Moz folks on #whatwg, this bit of Gecko code has crufty old custom binding code not based on the IDL, so the behavior there is not intentional. jwalden agrees that per-spec none of these should throw.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>798937</commentid>
    <comment_count>23</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-02 14:55:10 -0800</bug_when>
    <thetext>Filed https://www.w3.org/Bugs/Public/show_bug.cgi?id=20553 against the HTML spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802636</commentid>
    <comment_count>24</comment_count>
      <attachid>181764</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-08 14:25:04 -0800</bug_when>
    <thetext>Created attachment 181764
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802649</commentid>
    <comment_count>25</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-01-08 14:27:44 -0800</bug_when>
    <thetext>(In reply to comment #24)
&gt; Created an attachment (id=181764) [details]
&gt; Patch

Updated patch still a WIP. Handles attribute setters via another macro (since return type is void). Adds more attributes to the TypeConversions object and corresponding tests.

Still V8 only.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831411</commentid>
    <comment_count>26</comment_count>
      <attachid>187960</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-12 16:42:02 -0800</bug_when>
    <thetext>Created attachment 187960
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831416</commentid>
    <comment_count>27</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-12 16:43:36 -0800</bug_when>
    <thetext>Rebased. Still V8 only.

* Passes throwTypeError() the required isolate argument.
* Introduces a ConversionAttributes enum of flags in V8Binding.h so that eventually [Clamp] can be supported without adding yet another boolean arg.

I think this is good-to-go on the V8 side, but the JSC side needs some luv.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832159</commentid>
    <comment_count>28</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-13 12:05:48 -0800</bug_when>
    <thetext>Would you like me to review your patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832164</commentid>
    <comment_count>29</comment_count>
      <attachid>187960</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 12:07:45 -0800</bug_when>
    <thetext>Comment on attachment 187960
Patch

abarth@ - Sure, feedback at this point is welcome. r?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832178</commentid>
    <comment_count>30</comment_count>
      <attachid>187960</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-13 12:18:12 -0800</bug_when>
    <thetext>Comment on attachment 187960
Patch

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

&gt; Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp:202
&gt; -    int v = toInt32(value);
&gt; +    V8TRYCATCH_FOR_TYPECHECK_VOID(int, v, toInt32(value, false, ok));

It looks like we&apos;re now always creating a try-catch block.  Is that necessary?  Does that impact performance when the [EnforceRange] attribute isn&apos;t specified?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832185</commentid>
    <comment_count>31</comment_count>
      <attachid>187960</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 12:25:44 -0800</bug_when>
    <thetext>Comment on attachment 187960
Patch

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

&gt; Source/WebCore/bindings/v8/V8BindingMacros.h:77
&gt; +            throwTypeError(0, info.GetIsolate());                \

This should just be |isolate|</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832190</commentid>
    <comment_count>32</comment_count>
      <attachid>187960</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 12:29:20 -0800</bug_when>
    <thetext>Comment on attachment 187960
Patch

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

&gt;&gt; Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp:202
&gt;&gt; +    V8TRYCATCH_FOR_TYPECHECK_VOID(int, v, toInt32(value, false, ok));
&gt; 
&gt; It looks like we&apos;re now always creating a try-catch block.  Is that necessary?  Does that impact performance when the [EnforceRange] attribute isn&apos;t specified?

Thanks - no, shouldn&apos;t be necessary; probably residue from earlier iterations. In the ...TYPECHECK_VOID case there shouldn&apos;t need to be a try-catch block. This can reduce to a TYPECHECK macro.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832287</commentid>
    <comment_count>33</comment_count>
      <attachid>187960</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-13 13:35:09 -0800</bug_when>
    <thetext>Comment on attachment 187960
Patch

Attachment 187960 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16547013

New failing tests:
fast/dom/non-numeric-values-numeric-parameters.html
fast/js/webidl-type-mapping.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832338</commentid>
    <comment_count>34</comment_count>
      <attachid>187960</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-13 14:17:42 -0800</bug_when>
    <thetext>Comment on attachment 187960
Patch

Attachment 187960 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16563012

New failing tests:
fast/dom/non-numeric-values-numeric-parameters.html
fast/js/webidl-type-mapping.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832350</commentid>
    <comment_count>35</comment_count>
      <attachid>188184</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 14:34:04 -0800</bug_when>
    <thetext>Created attachment 188184
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832359</commentid>
    <comment_count>36</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 14:38:04 -0800</bug_when>
    <thetext>Let&apos;s give that another whirl:

* Minimized code generator output differences - callers to JSValueToNative call a helper to determine if type checking is necessary and only use type checking macro wrappers if necessary. Ugly, but safer.
* Only need TYPECHECK_VOID and V8TRYCATCH_WITH_TYPECHECK macros. With more extensive refactoring could probably compose those. Alternately, these could be inlined but I think these will eventually end up being used in 1-2 more places (e.g. Dictionary value access)
* Actually ran the tests, which turned up stupid logic bugs with the flags. Derp.
* Updated the test for HTMLOptionsCollection to match the HTML spec, which matches the new behavior of the code (see comment #21)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832462</commentid>
    <comment_count>37</comment_count>
      <attachid>188184</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 16:06:12 -0800</bug_when>
    <thetext>Comment on attachment 188184
Patch

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

&gt; Source/WebCore/bindings/scripts/CodeGeneratorV8.pm:3928
&gt; +sub ConversionThrowsTypeError

Will this method be useful for other purpose? Otherwise, I would hard-code $signature-&gt;extendedAttributes-&gt;{&quot;EnforceRange&quot;} in call sites and remove the method.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:115
&gt;      v8::Local&lt;v8::Number&gt; numberObject = value-&gt;ToNumber();

This can throw. You need a try-catch block.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:121
&gt; +    if (attributes &amp; FEnforceRange) {

[EnforgeRange] must not be in conjunction with [Clamp]:
http://www.w3.org/TR/WebIDL/#EnforceRange

So it would be useless to use a bit-masking approach.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:128
&gt; +        if (x &lt; -0x8000000 || x &gt; 0x7fffffff) {

Nit: Shall we use a constant variable for these magic numbers?

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:166
&gt; +    if (attributes &amp; FEnforceRange) {

Ditto.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:173
&gt; +        if (x &lt; 0 || x &gt; 0xffffffff) {

Nit: Use a constant variable for the magic number.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:198
&gt; +    v8::Local&lt;v8::Number&gt; numberObject = value-&gt;ToNumber();

This can throw. You need a try-catch block.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:206
&gt; +    if (attributes &amp; FEnforceRange) {

Ditto.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:237
&gt; +        if (result &gt;= 0)
&gt; +            return result;

Can we also add a fast path for result &lt; 0 ?

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:241
&gt; +    v8::Local&lt;v8::Number&gt; numberObject = value-&gt;ToNumber();

This can throw. You need a try-catch block.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:249
&gt; +    if (attributes &amp; FEnforceRange) {

Ditto.

&gt; Source/WebCore/bindings/v8/V8Binding.h:348
&gt; +    enum ConversionAttributes {

Nit: IntergerConversionConfiguration?

&gt; Source/WebCore/bindings/v8/V8Binding.h:351
&gt; +        FNone = 0x0000,
&gt; +        FEnforceRange = 0x0001,
&gt; +        // FIXME: Implement FClamp = 0x0002

Nit: Are these hard-coded values (e.g. 0x0001) meaningful? Otherwise, we can drop them.

Nit: Also is &quot;FEnforceRange&quot; a speced name somewhere? Otherwise, we can simply say &quot;EnforceRange&quot;.

&gt; Source/WebCore/bindings/v8/V8BindingMacros.h:46
&gt; +        bool ok = true;                           \
&gt; +        var = (value);                            \
&gt; +        if (UNLIKELY(!ok)) {                      \

Where is |ok| updated?

&gt; Source/WebCore/bindings/v8/V8BindingMacros.h:71
&gt; +        if (UNLIKELY(!ok))                                   \

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832464</commentid>
    <comment_count>38</comment_count>
      <attachid>188184</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 16:07:49 -0800</bug_when>
    <thetext>Comment on attachment 188184
Patch

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

&gt; LayoutTests/fast/js/webidl-type-mapping.html:45
&gt; +function testNonNumericToNumericEnforceRange(attribute)

You might want to add more test cases for non numeric values, especially a case where an exception is thrown during value conversion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832517</commentid>
    <comment_count>39</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 16:41:45 -0800</bug_when>
    <thetext>(In reply to comment #37)
&gt; (From update of attachment 188184 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=188184&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/bindings/scripts/CodeGeneratorV8.pm:3928
&gt; &gt; +sub ConversionThrowsTypeError
&gt; 
&gt; Will this method be useful for other purpose? Otherwise, I would hard-code $signature-&gt;extendedAttributes-&gt;{&quot;EnforceRange&quot;} in call sites and remove the method.

I was imagining that it would be, but I also wasn&apos;t really paying attention to what [Clamp] meant. I can inline it.
 
&gt; &gt; Source/WebCore/bindings/v8/V8Binding.cpp:115
&gt; &gt;      v8::Local&lt;v8::Number&gt; numberObject = value-&gt;ToNumber();
&gt; 
&gt; This can throw. You need a try-catch block.

Bleah. This is also in the existing code, which means existing conversions are buggy. To abarth@&apos;s earlier point this probably means all numeric conversions will need to get wrapped in try-catch blocks, not just those with [EnforceRange] specified.

&gt; 
&gt; &gt; Source/WebCore/bindings/v8/V8Binding.cpp:121
&gt; &gt; +    if (attributes &amp; FEnforceRange) {
&gt; 
&gt; [EnforgeRange] must not be in conjunction with [Clamp]:
&gt; http://www.w3.org/TR/WebIDL/#EnforceRange
&gt; 
&gt; So it would be useless to use a bit-masking approach.

Thanks. I should have looked more closely at [Clamp]. That simplifies things.

&gt; 
&gt; &gt; Source/WebCore/bindings/v8/V8Binding.cpp:128
&gt; &gt; +        if (x &lt; -0x8000000 || x &gt; 0x7fffffff) {
&gt; 
&gt; Nit: Shall we use a constant variable for these magic numbers?

Sure. kMinInt32, kMaxUint32, etc?

&gt; &gt; Source/WebCore/bindings/v8/V8Binding.cpp:237
&gt; &gt; +        if (result &gt;= 0)
&gt; &gt; +            return result;
&gt; 
&gt; Can we also add a fast path for result &lt; 0 ?

Yep. Will depend on the attributes so will have multiple cases, but probably worth it.

&gt; &gt; Source/WebCore/bindings/v8/V8Binding.h:348
&gt; &gt; +    enum ConversionAttributes {
&gt; 
&gt; Nit: IntergerConversionConfiguration?

Sure.
 
&gt; &gt; Source/WebCore/bindings/v8/V8Binding.h:351
&gt; &gt; +        FNone = 0x0000,
&gt; &gt; +        FEnforceRange = 0x0001,
&gt; &gt; +        // FIXME: Implement FClamp = 0x0002
&gt; 
&gt; Nit: Are these hard-coded values (e.g. 0x0001) meaningful? Otherwise, we can drop them.
&gt; 
&gt; Nit: Also is &quot;FEnforceRange&quot; a speced name somewhere? Otherwise, we can simply say &quot;EnforceRange&quot;.

Since [Clamp] and [EnforceRange] are exclusive, the values and &apos;F&apos; prefixes can definitely be dropped. Thanks again, I should have looked more closely at the spec for [Clamp].

&gt; &gt; Source/WebCore/bindings/v8/V8BindingMacros.h:46
&gt; &gt; +        bool ok = true;                           \
&gt; &gt; +        var = (value);                            \
&gt; &gt; +        if (UNLIKELY(!ok)) {                      \
&gt; 
&gt; Where is |ok| updated?

In the cases where these macros are used, the expression generated by JSValueToNative() passes ok into the ToIntXX functions, that expression is what ends up as the |value| macro parameter. (This was arv@&apos;s suggestion.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832526</commentid>
    <comment_count>40</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 16:50:18 -0800</bug_when>
    <thetext>&gt; &gt; &gt; Source/WebCore/bindings/v8/V8Binding.cpp:115
&gt; &gt; &gt;      v8::Local&lt;v8::Number&gt; numberObject = value-&gt;ToNumber();
&gt; &gt; 
&gt; &gt; This can throw. You need a try-catch block.
&gt; 
&gt; Bleah. This is also in the existing code, which means existing conversions are buggy. To abarth@&apos;s earlier point this probably means all numeric conversions will need to get wrapped in try-catch blocks, not just those with [EnforceRange] specified.

Yeah, I think you can fix it in a separate patch. (Actually we have similar bugs in a lot of places in custom bindings... not only integer conversion but also string conversions.)

&gt; &gt; Nit: Shall we use a constant variable for these magic numbers?
&gt; 
&gt; Sure. kMinInt32, kMaxUint32, etc?

Sounds good!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832565</commentid>
    <comment_count>41</comment_count>
      <attachid>188229</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-13 17:11:32 -0800</bug_when>
    <thetext>Created attachment 188229
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832587</commentid>
    <comment_count>42</comment_count>
      <attachid>188229</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 17:31:02 -0800</bug_when>
    <thetext>Comment on attachment 188229
Patch

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

LGTM.

&gt; Source/WebCore/bindings/scripts/CodeGeneratorV8.pm:1252
&gt; +            my $value = JSValueToNative($attribute-&gt;signature, &quot;value&quot;, &quot;info.GetIsolate()&quot;, 1);

1 is unclear. Let&apos;s pass a string &quot;canThrowException&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832591</commentid>
    <comment_count>43</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 17:32:27 -0800</bug_when>
    <thetext>(In reply to comment #40)
&gt; Yeah, I think you can fix it in a separate patch. (Actually we have similar bugs in a lot of places in custom bindings... not only integer conversion but also string conversions.)

Please add more test cases for non numeric values (exception cases) when you work on the follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833147</commentid>
    <comment_count>44</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-14 09:29:29 -0800</bug_when>
    <thetext>(In reply to comment #42)
&gt; 
&gt; 1 is unclear. Let&apos;s pass a string &quot;canThrowException&quot;.

Done. (We should do this for the other methods that take optional bools, too.)

So... thoughts on the JSC side here? Tackle it now, handle it with TestExpectations, ...?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841129</commentid>
    <comment_count>45</comment_count>
      <attachid>190095</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-25 11:23:04 -0800</bug_when>
    <thetext>Created attachment 190095
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841438</commentid>
    <comment_count>46</comment_count>
      <attachid>190095</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-25 17:09:35 -0800</bug_when>
    <thetext>Comment on attachment 190095
Patch for landing

Rejecting attachment 190095 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=gce-cq-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 190095, &apos;--port=chromium-xvfb&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Last 500 characters of output:
LayoutTests/fast/dom/script-tests/non-numeric-values-numeric-parameters.js
patching file LayoutTests/fast/js/webidl-type-mapping-expected.txt
patching file LayoutTests/fast/js/webidl-type-mapping.html
patching file LayoutTests/storage/indexeddb/intversion-bad-parameters-expected.txt
patching file LayoutTests/storage/indexeddb/resources/intversion-bad-parameters.js

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue

Full output: http://queues.webkit.org/results/16760403</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842074</commentid>
    <comment_count>47</comment_count>
      <attachid>190301</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-02-26 09:19:29 -0800</bug_when>
    <thetext>Created attachment 190301
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842376</commentid>
    <comment_count>48</comment_count>
      <attachid>190301</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-26 14:33:02 -0800</bug_when>
    <thetext>Comment on attachment 190301
Patch for landing

Attachment 190301 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-commit-queue.appspot.com/results/16769502

New failing tests:
fast/dom/non-numeric-values-numeric-parameters.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842404</commentid>
    <comment_count>49</comment_count>
      <attachid>190301</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-26 14:58:52 -0800</bug_when>
    <thetext>Comment on attachment 190301
Patch for landing

Attachment 190301 did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/16781400

New failing tests:
fast/js/select-options-add.html
fast/js/webidl-type-mapping.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842890</commentid>
    <comment_count>50</comment_count>
      <attachid>190301</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-27 03:18:10 -0800</bug_when>
    <thetext>Comment on attachment 190301
Patch for landing

Attachment 190301 did not pass mac-ews (mac):
Output: http://webkit-commit-queue.appspot.com/results/16831130

New failing tests:
fast/dom/non-numeric-values-numeric-parameters.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843643</commentid>
    <comment_count>51</comment_count>
      <attachid>190301</attachid>
    <who name="Peter Beverloo (cr-android ews)">peter+ews</who>
    <bug_when>2013-02-27 18:57:27 -0800</bug_when>
    <thetext>Comment on attachment 190301
Patch for landing

Attachment 190301 did not pass cr-android-ews (chromium-android):
Output: http://webkit-commit-queue.appspot.com/results/16797184</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>851381</commentid>
    <comment_count>52</comment_count>
      <attachid>192258</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-08 11:49:32 -0800</bug_when>
    <thetext>Created attachment 192258
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>851414</commentid>
    <comment_count>53</comment_count>
      <attachid>192267</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-08 12:16:04 -0800</bug_when>
    <thetext>Created attachment 192267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>851444</commentid>
    <comment_count>54</comment_count>
      <attachid>192267</attachid>
    <who name="Peter Beverloo (cr-android ews)">peter+ews</who>
    <bug_when>2013-03-08 12:45:10 -0800</bug_when>
    <thetext>Comment on attachment 192267
Patch

Attachment 192267 did not pass cr-android-ews (chromium-android):
Output: http://webkit-commit-queue.appspot.com/results/17016293</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>851513</commentid>
    <comment_count>55</comment_count>
      <attachid>192267</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-08 14:37:44 -0800</bug_when>
    <thetext>Comment on attachment 192267
Patch

Attachment 192267 did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/17110231

New failing tests:
fast/dom/non-numeric-values-numeric-parameters.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>851557</commentid>
    <comment_count>56</comment_count>
      <attachid>192267</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-08 15:25:43 -0800</bug_when>
    <thetext>Comment on attachment 192267
Patch

Attachment 192267 did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/17016336

New failing tests:
fast/dom/non-numeric-values-numeric-parameters.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852557</commentid>
    <comment_count>57</comment_count>
      <attachid>192526</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-11 12:15:07 -0700</bug_when>
    <thetext>Created attachment 192526
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852565</commentid>
    <comment_count>58</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-11 12:19:17 -0700</bug_when>
    <thetext>Needed the passing expectation for chromium on that test.

...

Sorry about the patch churn. It&apos;s all about the previously mentioned case:

document.createElement(&apos;select&apos;).options.add(document.createElement(&apos;option&apos;), x);

... which per spec (and Firefox) shouldn&apos;t throw for non-finite x, but previously did. This patch will make it not throw in V8, but it will continue to throw in JSC. Therefore, I&apos;ve updated the tests to match the spec, which leaves them with FAIL expectations in JSC and requires different expectations in V8.

Do any JSC experts want to weigh in before landing?

haraken@ - can you give it one last look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852707</commentid>
    <comment_count>59</comment_count>
      <attachid>192526</attachid>
    <who name="Peter Beverloo (cr-android ews)">peter+ews</who>
    <bug_when>2013-03-11 14:07:09 -0700</bug_when>
    <thetext>Comment on attachment 192526
Patch

Attachment 192526 did not pass cr-android-ews (chromium-android):
Output: http://webkit-commit-queue.appspot.com/results/17011690</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>852935</commentid>
    <comment_count>60</comment_count>
      <attachid>192526</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-03-11 18:07:24 -0700</bug_when>
    <thetext>Comment on attachment 192526
Patch

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

Getting closer!

&gt; Source/WebCore/bindings/scripts/CodeGeneratorV8.pm:3994
&gt; +    my $intConversion = $signature-&gt;extendedAttributes-&gt;{&quot;EnforceRange&quot;} ? &quot;EnforceRange&quot; : &quot;NormalConversion&quot;;
&gt; +    die &quot;Can&apos;t handle [EnforceRange] unless called from context that handles failures.&quot; if $intConversion eq &quot;EnforceRange&quot; and !$mayFail;

Maybe you can simply remove $mayFail because you want to throw anyway if $signature-&gt;extendedAttributes-&gt;{&quot;EnforceRange&quot;} is true. If you remove $mayFail, call sites of JSValueToNative() become much simpler.

&gt; Source/WebCore/bindings/v8/V8Binding.cpp:267
&gt; +        if (x &lt; 0 || x &gt; (kJSMaxInteger - 1)) {

Is this correct?

c.f. You are doing &apos;if (x &lt; -(kJSMaxInteger - 1) || x &gt; (kJSMaxInteger - 1))&apos; in toInt64().

&gt; Source/WebCore/bindings/v8/V8Binding.h:59
&gt; +    const long long kJSMaxInteger = 0x20000000000000LL;

You can put it in V8Binding.cpp. Also this should be 0x1fffffffffffffLL. (Then you can remove &apos;- 1&apos; from V8Binding.cpp.)

&gt; Source/WebCore/bindings/v8/V8BindingMacros.h:45
&gt; +#define TYPECHECK_VOID(type, var, value, isolate) \
&gt; +    type var;                                     \
&gt; +    {                                             \
&gt; +        bool ok = true;                           \
&gt; +        var = (value);                            \
&gt; +        if (UNLIKELY(!ok)) {                      \
&gt; +            throwTypeError(0, isolate);           \
&gt; +            return;                               \
&gt; +        }                                         \
&gt; +    }

&apos;var = (value)&apos; can throw, so you need to protect it with a TryCatch block. You can rename the macro to V8TRYCATCH_WITH_TYPECHECK_VOID().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853672</commentid>
    <comment_count>61</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-12 11:38:22 -0700</bug_when>
    <thetext>(In reply to comment #60)
&gt; Maybe you can simply remove $mayFail because you want to throw anyway if $signature-&gt;extendedAttributes-&gt;{&quot;EnforceRange&quot;} is true. If you remove $mayFail, call sites of JSValueToNative() become much simpler.

This was added to ensure that callers of JSValueToNative() were &quot;opting in&quot; to the new behavior and would then use the correct macro wrappers around the conversion. But I agree it&apos;s not required, so will remove it.

&gt; &gt; Source/WebCore/bindings/v8/V8Binding.cpp:267
&gt; &gt; +        if (x &lt; 0 || x &gt; (kJSMaxInteger - 1)) {
&gt; 
&gt; Is this correct?
&gt; 
&gt; c.f. You are doing &apos;if (x &lt; -(kJSMaxInteger - 1) || x &gt; (kJSMaxInteger - 1))&apos; in toInt64().

Yes. Unless there&apos;s a typo I&apos;m not seeing.

Spec has, for unsigned long long: If x &lt; 0 or x &gt; 2^53 − 1, then throw a TypeError.
Spec has, for long long: If x &lt; −(2^53 − 1) or x &gt; 2^53 − 1, then throw a TypeError.

Are you asking because it seems unusual for the upper bounds to be the same for both int64 and uint64 conversion? If so, the reason is that the maximum integer value exactly representable (due to the limited mantissa range) in an ECMAScript Number (a.k.a. a 64-bit IEEE754 float) is 2^53-1, which is less than either 2^64-1 (max uint64) or 2^63-1 (max int64). So the WebIDL conversion logic is not &quot;is this number in the int64/uint64 range?&quot; but &quot;if I put the floor of this exact number into an int64/uint64 will I get the same number out again?&quot;

If you&apos;re asking for another reason then I&apos;m probably missing something, so please point it out!

&gt; &gt; Source/WebCore/bindings/v8/V8Binding.h:59
&gt; &gt; +    const long long kJSMaxInteger = 0x20000000000000LL;
&gt; 
&gt; You can put it in V8Binding.cpp. Also this should be 0x1fffffffffffffLL. (Then you can remove &apos;- 1&apos; from V8Binding.cpp.)

Done. The WebIDL spec uses &quot;2^53 - 1&quot; hence that style, but I&apos;ll move it and clarify the constant.

&gt; &gt; Source/WebCore/bindings/v8/V8BindingMacros.h:45
&gt; &gt; +#define TYPECHECK_VOID(type, var, value, isolate) \
&gt; &gt; +    type var;                                     \
&gt; &gt; +    {                                             \
&gt; &gt; +        bool ok = true;                           \
&gt; &gt; +        var = (value);                            \
&gt; &gt; +        if (UNLIKELY(!ok)) {                      \
&gt; &gt; +            throwTypeError(0, isolate);           \
&gt; &gt; +            return;                               \
&gt; &gt; +        }                                         \
&gt; &gt; +    }
&gt; 
&gt; &apos;var = (value)&apos; can throw, so you need to protect it with a TryCatch block. You can rename the macro to V8TRYCATCH_WITH_TYPECHECK_VOID().

That&apos;s actually what I had prior to comment #30 from abarth@. But now that the call sites inspect EnforceRange I can revert - thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853689</commentid>
    <comment_count>62</comment_count>
      <attachid>192784</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-12 12:07:02 -0700</bug_when>
    <thetext>Created attachment 192784
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853691</commentid>
    <comment_count>63</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-12 12:10:10 -0700</bug_when>
    <thetext>(In reply to comment #60)
&gt; 
&gt; &apos;var = (value)&apos; can throw, so you need to protect it with a TryCatch block. You can rename the macro to V8TRYCATCH_WITH_TYPECHECK_VOID().

Fixing this macro also revealed a flaw in the previous patch where conversions that threw (e.g. { valueOf: function() { throw new Error(&apos;foo&apos;); }) were eating the thrown error and throwing a TypeError instead. Updated the tests to double-check that the error thrown during &quot;var = (value)&quot; are what makes it out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853943</commentid>
    <comment_count>64</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-03-12 17:41:08 -0700</bug_when>
    <thetext>Thanks for all the fixes!

(In reply to comment #61)
&gt; Spec has, for unsigned long long: If x &lt; 0 or x &gt; 2^53 − 1, then throw a TypeError.
&gt; Spec has, for long long: If x &lt; −(2^53 − 1) or x &gt; 2^53 − 1, then throw a TypeError.
&gt; 
&gt; Are you asking because it seems unusual for the upper bounds to be the same for both int64 and uint64 conversion?

Yes, I was asking for the reason. Thanks for the detailed clarification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853945</commentid>
    <comment_count>65</comment_count>
      <attachid>192784</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-03-12 17:41:27 -0700</bug_when>
    <thetext>Comment on attachment 192784
Patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854412</commentid>
    <comment_count>66</comment_count>
      <attachid>192784</attachid>
    <who name="Erik Arvidsson">arv</who>
    <bug_when>2013-03-13 11:10:03 -0700</bug_when>
    <thetext>Comment on attachment 192784
Patch

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

This looks great

&gt; Source/WebCore/bindings/scripts/CodeGeneratorV8.pm:1904
&gt; +            if ($parameter-&gt;extendedAttributes-&gt;{&quot;EnforceRange&quot;}) {
&gt; +                my $value = JSValueToNative($parameter, $optional &amp;&amp; $optional eq &quot;DefaultIsNullString&quot; ? &quot;argumentOrNull(args, $paramIndex)&quot; : &quot;args[$paramIndex]&quot;, &quot;args.GetIsolate()&quot;);
&gt; +                $parameterCheckString .= &quot;    V8TRYCATCH_WITH_TYPECHECK($nativeType, $parameterName, $value, args.GetIsolate());\n&quot;;
&gt; +            } else {
&gt; +                my $value = JSValueToNative($parameter, $optional &amp;&amp; $optional eq &quot;DefaultIsNullString&quot; ? &quot;argumentOrNull(args, $paramIndex)&quot; : &quot;args[$paramIndex]&quot;, &quot;args.GetIsolate()&quot;);
&gt; +                $parameterCheckString .= &quot;    V8TRYCATCH($nativeType, $parameterName, $value);\n&quot;;
&gt; +            }

Can you move the &quot;my $value = ...&quot; line out of the if to reduce code duplication?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856103</commentid>
    <comment_count>67</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-15 10:56:48 -0700</bug_when>
    <thetext>(In reply to comment #66)
&gt; Can you move the &quot;my $value = ...&quot; line out of the if to reduce code duplication?

Nice catch, done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856106</commentid>
    <comment_count>68</comment_count>
      <attachid>193338</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-15 11:00:31 -0700</bug_when>
    <thetext>Created attachment 193338
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856164</commentid>
    <comment_count>69</comment_count>
      <attachid>193338</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-15 12:00:22 -0700</bug_when>
    <thetext>Comment on attachment 193338
Patch for landing

Clearing flags on attachment: 193338

Committed r145929: &lt;http://trac.webkit.org/changeset/145929&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856165</commentid>
    <comment_count>70</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-15 12:00:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856491</commentid>
    <comment_count>71</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2013-03-15 20:32:34 -0700</bug_when>
    <thetext>FYI: this caused a build failure on Windows which was fixed in http://trac.webkit.org/changeset/145975 .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>857172</commentid>
    <comment_count>72</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2013-03-18 09:09:24 -0700</bug_when>
    <thetext>(In reply to comment #71)
&gt; FYI: this caused a build failure on Windows which was fixed in http://trac.webkit.org/changeset/145975 .

Thanks for the fix, sorry about the breakage.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164990</attachid>
            <date>2012-09-20 15:09:06 -0700</date>
            <delta_ts>2012-12-27 14:40:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20120920150831.patch</filename>
            <type>text/plain</type>
            <size>24999</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5MDU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTViNmJhYTc1NTAxYzgx
MTJkN2RhNDEwNmZjNjdkNTk4NTg5ZTFiMy4uMDg3ZDBmNzc3OWFkMWIxOTQwMGQ2ZWUwOTUyM2Rk
YTk2NmVmMzY4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTA5LTIwICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTdGFy
dCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbmV3aXNoIElETCBhdHRyaWJ1dGUgdGhhdCBtYWtlcyB0
aGUgYmluZGluZyBsYXllcgorICAgICAgICB0aHJvdyBUeXBlRXJyb3JzIHdoZW4gdmFsdWVzIG91
dCBvZiByYW5nZSBmb3IgImxvbmcgbG9uZyIgYXJlIHNlbnQgZnJvbSBKYXZhU2NyaXB0LgorICAg
ICAgICBQZXIgdGhlIHNwZWMsIE5hTiwgKy8tSW5maW5pdHksIGFuZCB2YWx1ZXMgPj0gMl41MyAo
dGhlIG1heGltdW0gaW50ZWdlciBleGFjdGx5CisgICAgICAgIHJlcHJlc2VudGFibGUgaW4gSlMp
IHJlc3VsdCBpbiBleGNlcHRpb25zLgorCisgICAgICAgIEFkZGVkIGV4YW1wbGVzIG9mIFtFbmZv
cmNlUmFuZ2VdIGF0dHJpYnV0ZXMsIHVwZGF0ZWQgYmluZGluZyB0ZXN0IHJlc3VsdHMsCisgICAg
ICAgIGFuZCB1cGRhdGVkIHJlbGV2YW50IEluZGV4ZWREQiB0ZXN0czoKKyAgICAgICAgICAgIHN0
b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQuaHRtbAor
ICAgICAgICAgICAgc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1lbmNvZGluZy1leHBlY3Rl
ZC5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDogQWRk
IFtFbmZvcmNlUmFuZ2VdIHRvIHZlcnNpb24gYXJndW1lbnQuCisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06IFBhc3MgZmxhZyBmb3IgZW5mb3JjaW5nIHRvIHRv
SW50NjQvdG9VSW50NjQuCisgICAgICAgIChKU1ZhbHVlVG9OYXRpdmUpOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQ6IEFkZCBuZXcgSURMIGF0dHJpYnV0ZS4K
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGw6IE5ldyBzYW1wbGVz
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHA6IFJlYmFz
ZWxpbmVkCisgICAgICAgIChXZWJDb3JlOjpUZXN0T2JqVjhJbnRlcm5hbDo6QXR0ckF0dHJTZXR0
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdE9ialY4SW50ZXJuYWw6OmxvbmdMb25nQXR0ckF0
dHJTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdE9ialY4SW50ZXJuYWw6OnVuc2lnbmVk
TG9uZ0xvbmdBdHRyQXR0clNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpUZXN0T2JqVjhJbnRl
cm5hbDo6bG9uZ0xvbmdFbmZvcmNlZEF0dHJBdHRyR2V0dGVyKTogTmV3IQorICAgICAgICAoVGVz
dE9ialY4SW50ZXJuYWwpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdE9ialY4SW50ZXJuYWw6Omxv
bmdMb25nRW5mb3JjZWRBdHRyQXR0clNldHRlcik6IE5ldyEKKyAgICAgICAgKFdlYkNvcmU6OlRl
c3RPYmpWOEludGVybmFsOjp1bnNpZ25lZExvbmdMb25nRW5mb3JjZWRBdHRyQXR0ckdldHRlcik6
CisgICAgICAgIChXZWJDb3JlOjpUZXN0T2JqVjhJbnRlcm5hbDo6dW5zaWduZWRMb25nTG9uZ0Vu
Zm9yY2VkQXR0ckF0dHJTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdE9ialY4SW50ZXJu
YWw6OnZvaWRNZXRob2RXaXRoQXJnc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRlc3RP
YmpWOEludGVybmFsOjpNZXRob2RXaXRoQXJnc0NhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OlRlc3RPYmpWOEludGVybmFsOjpvYmpNZXRob2RXaXRoQXJnc0NhbGxiYWNrKToKKyAgICAgICAg
KFdlYkNvcmU6OlRlc3RPYmpWOEludGVybmFsOjptZXRob2RSZXR1cm5pbmdTZXF1ZW5jZUNhbGxi
YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRlc3RPYmpWOEludGVybmFsOjpvdmVybG9hZGVkTWV0
aG9kMkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRlc3RPYmpWOEludGVybmFsOjpvdmVy
bG9hZGVkTWV0aG9kNENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlRlc3RPYmpWOEludGVy
bmFsOjplbmFibGVkQXRSdW50aW1lTWV0aG9kMUNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6
OlRlc3RPYmpWOEludGVybmFsOjplbmFibGVkQXRSdW50aW1lTWV0aG9kMkNhbGxiYWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6OlRlc3RPYmpWOEludGVybmFsOjplbmFibGVkUGVyQ29udGV4dE1ldGhv
ZDFDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpUZXN0T2JqVjhJbnRlcm5hbDo6ZW5hYmxl
ZFBlckNvbnRleHRNZXRob2QyQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
ICogYmluZGluZ3MvdjgvVjhCaW5kaW5nLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAg
KFdlYkNvcmU6OnRvSW50NjQpOiBUYWtlIGZsYWcsIGVuZm9yY2UgV2ViSURMIHJlc3RyaWN0aW9u
cyBpZiB0cnVlLgorICAgICAgICAoV2ViQ29yZTo6dG9VSW50NjQpOiBEaXR0by4KKwogMjAxMi0w
OS0xOSAgVGVycnkgQW5kZXJzb24gIDx0ZGFuZGVyc29uQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBbY2hyb21pdW1dIFN0b3JlIHRoZSBjb250ZW50cyBzY2FsZSBmYWN0b3IgaW4gUGxhdGZvcm1D
b250ZXh0U2tpYSBvbiBpbml0aWFsaXphdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAppbmRleCBiZjcxYTJkZDI1ZDFmZjk1ZTI2NDM1ZjRl
NDFmMGM0MWI5NzY3MmMzLi4zMTEwMjdmNzVlODhiZGRiYjY1YjBhNTk5ZGQ0N2NhOTViOWM5NGNl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5Lmlk
bApAQCAtMzAsNyArMzAsNyBAQCBtb2R1bGUgc3RvcmFnZSB7CiAgICAgXSBJREJGYWN0b3J5IHsK
ICAgICAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEltcGxlbWVudGVkQXM9
Z2V0RGF0YWJhc2VOYW1lc10gSURCUmVxdWVzdCB3ZWJraXRHZXREYXRhYmFzZU5hbWVzKCk7CiAK
LSAgICAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQk9wZW5EQlJlcXVl
c3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW09wdGlvbmFsXSB1bnNpZ25lZCBsb25nIGxv
bmcgdmVyc2lvbikKKyAgICAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElE
Qk9wZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW0VuZm9yY2VSYW5nZSwg
T3B0aW9uYWxdIHVuc2lnbmVkIGxvbmcgbG9uZyB2ZXJzaW9uKQogICAgICAgICAgICAgcmFpc2Vz
IChJREJEYXRhYmFzZUV4Y2VwdGlvbik7CiAgICAgICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRp
b25Db250ZXh0XSBJREJWZXJzaW9uQ2hhbmdlUmVxdWVzdCBkZWxldGVEYXRhYmFzZShpbiBET01T
dHJpbmcgbmFtZSkKICAgICAgICAgICAgIHJhaXNlcyAoSURCRGF0YWJhc2VFeGNlcHRpb24pOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
VjgucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQppbmRleCAwNjgxMDU2MDA2MzIxY2JhMjE3MDAyNDUzOGFiZDAxNzVmZDJhMGUyLi45MTk4ODNj
NDZhMGI2ZDg4MGRhMjZkYzk1YTVkYjAyZGQ2OWZhODFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpAQCAtMzczMCw2ICszNzMw
LDcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIG15ICRnZXRJc29sYXRlID0gc2hpZnQ7CiAK
ICAgICBteSAkdHlwZSA9IEdldFR5cGVGcm9tU2lnbmF0dXJlKCRzaWduYXR1cmUpOworICAgIG15
ICRlbmZvcmNlUmFuZ2UgPSAkc2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5mb3Jj
ZVJhbmdlIn0gPyAidHJ1ZSIgOiAiZmFsc2UiOwogCiAgICAgcmV0dXJuICIkdmFsdWUiIGlmICR0
eXBlIGVxICJKU09iamVjdCI7CiAgICAgcmV0dXJuICIkdmFsdWUtPkJvb2xlYW5WYWx1ZSgpIiBp
ZiAkdHlwZSBlcSAiYm9vbGVhbiI7CkBAIC0zNzM3LDcgKzM3MzgsOCBAQCBzdWIgSlNWYWx1ZVRv
TmF0aXZlCiAKICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmci
IG9yICR0eXBlIGVxICJzaG9ydCI7CiAgICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUpIiBpZiAk
dHlwZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKLSAg
ICByZXR1cm4gInRvSW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9u
ZyIgb3IgJHR5cGUgZXEgImxvbmcgbG9uZyI7CisgICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSwg
JGVuZm9yY2VSYW5nZSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciOworICAgIHJldHVybiAidG9V
SW50NjQoJHZhbHVlLCAkZW5mb3JjZVJhbmdlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcg
bG9uZyI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDxSYW5nZTo6Q29tcGFyZUhvdz4oJHZhbHVl
LT5JbnQzMlZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiQ29tcGFyZUhvdyI7CiAgICAgcmV0dXJuICJ0
b1dlYkNvcmVEYXRlKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJEYXRlIjsKICAgICByZXR1cm4gInRv
RE9NU3RyaW5nTGlzdCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAiRE9NU3RyaW5nTGlzdCI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAppbmRl
eCBkZjNkNTZkOWJkOTU4OGRkMzMwNWI2YzIwMmY3NTE2MTk4NmY3NmM3Li5kOTE4OWUxM2MzOTU2
MzY1ZGY0Zjc3NzhkZGUzNjRiODFhNmIwYTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKQEAgLTUxLDYgKzUxLDcgQEAgRG9Ob3RD
aGVja0NvbnN0YW50cwogRG9Ob3RDaGVja1NlY3VyaXR5CiBEb05vdENoZWNrU2VjdXJpdHlPbkdl
dHRlcgogRG9Ob3RDaGVja1NlY3VyaXR5T25TZXR0ZXIKK0VuZm9yY2VSYW5nZQogRXZlbnRUYXJn
ZXQKIEV4dGVuZHNET01HbG9iYWxPYmplY3QKIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbEVsZW1l
bnRSb290fEltcGxCYXNlUm9vdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Rlc3RPYmouaWRsCmluZGV4IGYyZDFmZTgxMGQxYmFlZDE3NDU2YzdiMTQwMWE5Nzg2
NzFiZDNmYzMuLjYxNTM3M2ZlMjE0OWJkODk4ZDVhZjNkZjc3N2RiYjZjOTQ4NzE0OTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAg
LTUxLDYgKzUxLDExIEBAIG1vZHVsZSB0ZXN0IHsKICAgICAgICAgYXR0cmlidXRlIERPTVN0cmlu
ZyAgICAgICAgICAgICAgICBzdHJpbmdBdHRyOwogICAgICAgICBhdHRyaWJ1dGUgW1Y4TWVhc3Vy
ZUFzPVRlc3RGZWF0dXJlXSBUZXN0T2JqIHRlc3RPYmpBdHRyOwogCisjaWYgZGVmaW5lZChURVNU
SU5HX1Y4KQorICAgICAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nICAgICAg
ICAgICAgICAgIGxvbmdMb25nRW5mb3JjZWRBdHRyOworICAgICAgICBhdHRyaWJ1dGUgW0VuZm9y
Y2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nICAgICAgIHVuc2lnbmVkTG9uZ0xvbmdFbmZvcmNl
ZEF0dHI7CisjZW5kaWYKKwogICAgICAgICBKUywgVjgKICAgICAgICAgLy8gV0tfdWNmaXJzdCwg
V0tfbGNmaXJzdCBleGNlcHRpb25hbCBjYXNlcy4KICAgICAgICAgYXR0cmlidXRlIFRlc3RPYmog
ICAgICAgICAgICAgICAgICBYTUxPYmpBdHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAppbmRleCA1MDI0MjhhNzEwMGM1
ZjcxNjYzY2Y1YzY5MTUxNjlkOTcyMjE1NTM1Li5mYTNiZjhkMDU5OGY5YTU2ZjdiOWI1OGI3ZGI1
YTkxYTcyNDI2MzhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcApAQCAtMTcyLDcgKzE3Miw3IEBAIHN0YXRpYyB2b2lk
IEF0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6
OlZhbHVlPiB2YWx1CiB7CiAgICAgSU5DX1NUQVRTKCJET00uVGVzdE9iai5BdHRyLl9zZXQiKTsK
ICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwot
ICAgIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgbG9uZyBsb25nIHYgPSB0b0lu
dDY0KHZhbHVlLCBmYWxzZSk7CiAgICAgaW1wLT5zZXRBdHRyKFdURjo6Z2V0UHRyKHYpKTsKICAg
ICByZXR1cm47CiB9CkBAIC0xODgsNyArMTg4LDcgQEAgc3RhdGljIHZvaWQgbG9uZ0xvbmdBdHRy
QXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWwK
IHsKICAgICBJTkNfU1RBVFMoIkRPTS5UZXN0T2JqLmxvbmdMb25nQXR0ci5fc2V0Iik7CiAgICAg
VGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBs
b25nIGxvbmcgdiA9IHRvSW50NjQodmFsdWUpOworICAgIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2
YWx1ZSwgZmFsc2UpOwogICAgIGltcC0+c2V0TG9uZ0xvbmdBdHRyKFdURjo6Z2V0UHRyKHYpKTsK
ICAgICByZXR1cm47CiB9CkBAIC0yMDQsNyArMjA0LDcgQEAgc3RhdGljIHZvaWQgdW5zaWduZWRM
b25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWwKIHsKICAgICBJTkNfU1RBVFMoIkRPTS5UZXN0T2JqLnVuc2lnbmVkTG9uZ0xvbmdBdHRyLl9z
ZXQiKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVy
KCkpOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5z
aWduZWQgbG9uZyBsb25nIHYgPSB0b1VJbnQ2NCh2YWx1ZSwgZmFsc2UpOwogICAgIGltcC0+c2V0
VW5zaWduZWRMb25nTG9uZ0F0dHIoV1RGOjpnZXRQdHIodikpOwogICAgIHJldHVybjsKIH0KQEAg
LTI0Myw2ICsyNDMsMzggQEAgc3RhdGljIHZvaWQgdGVzdE9iakF0dHJBdHRyU2V0dGVyKHY4OjpM
b2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHUKICAgICByZXR1cm47CiB9
CiAKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbG9uZ0xvbmdFbmZvcmNlZEF0dHJBdHRy
R2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQoreworICAgIElOQ19TVEFUUygiRE9NLlRlc3RPYmoubG9uZ0xvbmdFbmZvcmNlZEF0
dHIuX2dldCIpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5I
b2xkZXIoKSk7CisgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3VibGU+
KGltcC0+bG9uZ0xvbmdFbmZvcmNlZEF0dHIoKSkpOworfQorCitzdGF0aWMgdm9pZCBsb25nTG9u
Z0VuZm9yY2VkQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQorewor
ICAgIElOQ19TVEFUUygiRE9NLlRlc3RPYmoubG9uZ0xvbmdFbmZvcmNlZEF0dHIuX3NldCIpOwor
ICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Cisg
ICAgbG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVlLCB0cnVlKTsKKyAgICBpbXAtPnNldExvbmdM
b25nRW5mb3JjZWRBdHRyKFdURjo6Z2V0UHRyKHYpKTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0VuZm9yY2VkQXR0ckF0dHJH
ZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCit7CisgICAgSU5DX1NUQVRTKCJET00uVGVzdE9iai51bnNpZ25lZExvbmdMb25nRW5m
b3JjZWRBdHRyLl9nZXQiKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoc3RhdGljX2Nhc3Q8
ZG91YmxlPihpbXAtPnVuc2lnbmVkTG9uZ0xvbmdFbmZvcmNlZEF0dHIoKSkpOworfQorCitzdGF0
aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nRW5mb3JjZWRBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpB
Y2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgSU5DX1NUQVRTKCJET00uVGVzdE9iai51bnNpZ25l
ZExvbmdMb25nRW5mb3JjZWRBdHRyLl9zZXQiKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0g
dG9VSW50NjQodmFsdWUsIHRydWUpOworICAgIGltcC0+c2V0VW5zaWduZWRMb25nTG9uZ0VuZm9y
Y2VkQXR0cihXVEY6OmdldFB0cih2KSk7CisgICAgcmV0dXJuOworfQorCiBzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IFhNTE9iakF0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIElOQ19TVEFUUygi
RE9NLlRlc3RPYmouWE1MT2JqQXR0ci5fZ2V0Iik7CkBAIC0xMDY4LDcgKzExMDAsNyBAQCBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZvaWRNZXRob2RXaXRoQXJnc0NhbGxiYWNrKGNvbnN0
IHY4OjpBcmd1bWVudHMmIGFyZwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMykKICAgICAgICAg
cmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwog
ICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0g
ICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJTkdf
UEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBFWENFUFRJT05f
QkxPQ0sobG9uZyBsb25nLCBBcmcsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UpKTsKICAgICBTVFJJTkdfVE9fVjhQQVJB
TUVURVJfRVhDRVBUSU9OX0JMT0NLKFY4UGFyYW1ldGVyPD4sIHN0ckFyZywgTUFZQkVfTUlTU0lO
R19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSk7CiAgICAgRVhDRVBUSU9O
X0JMT0NLKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6
OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaW1wLT52b2lk
TWV0aG9kV2l0aEFyZ3MoQXJnLCBzdHJBcmcsIG9iakFyZyk7CkBAIC0xMDg4LDcgKzExMjAsNyBA
QCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IE1ldGhvZFdpdGhBcmdzQ2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDMpCiAgICAg
ICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgp
KTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkp
OwotICAgIEVYQ0VQVElPTl9CTE9DSyhsb25nIGxvbmcsIEFyZywgdG9JbnQ2NChNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CisgICAgRVhDRVBU
SU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVS
KGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlKSk7CiAgICAgU1RSSU5HX1RPX1Y4
UEFSQU1FVEVSX0VYQ0VQVElPTl9CTE9DSyhWOFBhcmFtZXRlcjw+LCBzdHJBcmcsIE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVmaW5lZCkpOwogICAgIEVYQ0VQ
VElPTl9CTE9DSyhUZXN0T2JqKiwgb2JqQXJnLCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhUZXN0
T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdf
UEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIHJldHVy
biB2ODo6TnVtYmVyOjpOZXcoc3RhdGljX2Nhc3Q8ZG91YmxlPihpbXAtPk1ldGhvZFdpdGhBcmdz
KEFyZywgc3RyQXJnLCBvYmpBcmcpKSk7CkBAIC0xMTA4LDcgKzExNDAsNyBAQCBzdGF0aWMgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IG9iak1ldGhvZFdpdGhBcmdzQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJncwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMykKICAgICAgICAgcmV0dXJu
IHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRl
c3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgRVhD
RVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBFWENFUFRJT05fQkxPQ0so
bG9uZyBsb25nLCBBcmcsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UpKTsKICAgICBTVFJJTkdfVE9fVjhQQVJBTUVURVJf
RVhDRVBUSU9OX0JMT0NLKFY4UGFyYW1ldGVyPD4sIHN0ckFyZywgTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSk7CiAgICAgRVhDRVBUSU9OX0JMT0NL
KFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0
aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgcmV0dXJuIHRvVjgoaW1w
LT5vYmpNZXRob2RXaXRoQXJncyhBcmcsIHN0ckFyZywgb2JqQXJnKSwgYXJncy5Ib2xkZXIoKSwg
YXJncy5HZXRJc29sYXRlKCkpOwpAQCAtMTEzMSw3ICsxMTYzLDcgQEAgc3RhdGljIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBtZXRob2RSZXR1cm5pbmdTZXF1ZW5jZUNhbGxiYWNrKGNvbnN0IHY4OjpB
cmd1bWVudHMKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJv
d05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2Jq
KiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIEVYQ0VQVElP
Tl9CTE9DSyhsb25nIGxvbmcsIEFyZywgdG9JbnQ2NChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CisgICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcg
bG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCksIGZhbHNlKSk7CiAgICAgcmV0dXJuIHY4QXJyYXkoaW1wLT5tZXRob2RS
ZXR1cm5pbmdTZXF1ZW5jZShBcmcpLCBhcmdzLkdldElzb2xhdGUoKSk7CiB9CiAKQEAgLTE1Mzgs
NyArMTU3MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRlZE1ldGhv
ZDJDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgICAgIGltcC0+b3Zlcmxv
YWRlZE1ldGhvZChvYmpBcmcpOwogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKICAgICB9
Ci0gICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJ
TkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBFWENFUFRJ
T05fQkxPQ0sobG9uZyBsb25nLCBBcmcsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UpKTsKICAgICBpbXAtPm92ZXJsb2Fk
ZWRNZXRob2Qob2JqQXJnLCBBcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAt
MTU2MCw3ICsxNTkyLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVk
TWV0aG9kNENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5M
ZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9y
KGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIEVYQ0VQVElPTl9CTE9DSyhsb25nIGxvbmcsIEFyZywg
dG9JbnQ2NChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSk7CisgICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlKSk7
CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKEFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVk
KCk7CiB9CkBAIC0xNzQ2LDcgKzE3NzgsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IGVuYWJsZWRBdFJ1bnRpbWVNZXRob2QxQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cwogICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcg
bG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBFWENFUFRJT05fQkxPQ0sobG9uZyBsb25nLCBBcmcsIHRv
SW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSwgZmFsc2UpKTsKICAgICBpbXAtPmVuYWJsZWRBdFJ1bnRpbWVNZXRob2QxKEFyZyk7CiAgICAg
cmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNzU3LDcgKzE3ODksNyBAQCBzdGF0aWMgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IGVuYWJsZWRBdFJ1bnRpbWVNZXRob2QyQ2FsbGJhY2soY29uc3Qg
djg6OkFyZ3VtZW50cwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJu
IHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRl
c3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgRVhD
RVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBFWENFUFRJT05fQkxPQ0so
bG9uZyBsb25nLCBBcmcsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UpKTsKICAgICBpbXAtPmVuYWJsZWRBdFJ1bnRpbWVN
ZXRob2QyKEFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNzY4LDcgKzE4
MDAsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuYWJsZWRQZXJDb250ZXh0TWV0
aG9kMUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudAogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwg
MSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJ
c29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5I
b2xkZXIoKSk7Ci0gICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0ludDY0KE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAg
ICBFWENFUFRJT05fQkxPQ0sobG9uZyBsb25nLCBBcmcsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UpKTsKICAgICBpbXAt
PmVuYWJsZWRQZXJDb250ZXh0TWV0aG9kMShBcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgp
OwogfQpAQCAtMTc3OSw3ICsxODExLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBl
bmFibGVkUGVyQ29udGV4dE1ldGhvZDJDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnQKICAgICBp
ZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3Vt
ZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIEVYQ0VQVElPTl9CTE9DSyhsb25nIGxv
bmcsIEFyZywgdG9JbnQ2NChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSk7CisgICAgRVhDRVBUSU9OX0JMT0NLKGxvbmcgbG9uZywgQXJnLCB0b0lu
dDY0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCks
IGZhbHNlKSk7CiAgICAgaW1wLT5lbmFibGVkUGVyQ29udGV4dE1ldGhvZDIoQXJnKTsKICAgICBy
ZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE5MzQsNiArMTk2NiwxMCBAQCBzdGF0aWMgY29u
c3QgVjhET01Db25maWd1cmF0aW9uOjpCYXRjaGVkQXR0cmlidXRlIFY4VGVzdE9iakF0dHJzW10g
PSB7CiAgICAgeyJzdHJpbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OnN0cmluZ0F0dHJBdHRy
R2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6c3RyaW5nQXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8g
ZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3Rh
dGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFu
Y2UgKi99LAogICAgIC8vIEF0dHJpYnV0ZSAndGVzdE9iakF0dHInIChUeXBlOiAnYXR0cmlidXRl
JyBFeHRBdHRyOiAnVjhNZWFzdXJlQXMnKQogICAgIHsidGVzdE9iakF0dHIiLCBUZXN0T2JqVjhJ
bnRlcm5hbDo6dGVzdE9iakF0dHJBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6dGVzdE9i
akF0dHJBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3ND
b250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4o
djg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2xvbmdM
b25nRW5mb3JjZWRBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5n
ZScpCisgICAgeyJsb25nTG9uZ0VuZm9yY2VkQXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjpsb25n
TG9uZ0VuZm9yY2VkQXR0ckF0dHJHZXR0ZXIsIFRlc3RPYmpWOEludGVybmFsOjpsb25nTG9uZ0Vu
Zm9yY2VkQXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFj
Y2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmli
dXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAn
dW5zaWduZWRMb25nTG9uZ0VuZm9yY2VkQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6
ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsidW5zaWduZWRMb25nTG9uZ0VuZm9yY2VkQXR0ciIsIFRl
c3RPYmpWOEludGVybmFsOjp1bnNpZ25lZExvbmdMb25nRW5mb3JjZWRBdHRyQXR0ckdldHRlciwg
VGVzdE9ialY4SW50ZXJuYWw6OnVuc2lnbmVkTG9uZ0xvbmdFbmZvcmNlZEF0dHJBdHRyU2V0dGVy
LCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVG
QVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8q
IG9uIGluc3RhbmNlICovfSwKICAgICAvLyBBdHRyaWJ1dGUgJ1hNTE9iakF0dHInIChUeXBlOiAn
YXR0cmlidXRlJyBFeHRBdHRyOiAnJykKICAgICB7IlhNTE9iakF0dHIiLCBUZXN0T2JqVjhJbnRl
cm5hbDo6WE1MT2JqQXR0ckF0dHJHZXR0ZXIsIFRlc3RPYmpWOEludGVybmFsOjpYTUxPYmpBdHRy
QXR0clNldHRlciwgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJv
bD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpO
b25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCiAgICAgLy8gQXR0cmlidXRlICdjcmVhdGUnIChU
eXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnJykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhC
aW5kaW5nLmgKaW5kZXggMGM5ZWU0ZjRjYTE4YTBjODBjNmUyYjM1YTI3NjcxODQ0NzBmMmViZi4u
NjM3MGIwNGQ1YmM4NThiNTYyOGRkMTc4MTdlMzZjYmNmZjcxMjg2YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhCaW5kaW5nLmgKQEAgLTU0LDYgKzU0LDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgIGNsYXNzIFdvcmxkQ29udGV4dEhhbmRsZTsKIAogICAgIGNvbnN0IGludCBrTWF4
UmVjdXJzaW9uRGVwdGggPSAyMjsKKyAgICBjb25zdCBsb25nIGxvbmcga0pTTWF4SW50ZWdlciA9
IDB4MjAwMDAwMDAwMDAwMDBMTDsKIAogICAgIC8vIFNjaGVkdWxlIGEgRE9NIGV4Y2VwdGlvbiB0
byBiZSB0aHJvd24sIGlmIHRoZSBleGNlcHRpb24gY29kZSBpcyBkaWZmZXJlbnQKICAgICAvLyBm
cm9tIHplcm8uCkBAIC0yNzMsOSArMjc0LDMyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CiAgICAg
fQogCi0gICAgaW5saW5lIGxvbmcgbG9uZyB0b0ludDY0KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZh
bHVlKQorICAgIC8vIEZJWE1FOiBNb3ZlIHRvIFY4QmluZGluZy5jYworICAgIGlubGluZSBsb25n
IGxvbmcgdG9JbnQ2NCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCBlbmZvcmNlUmFu
Z2UpCiAgICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8bG9uZyBsb25nPih2YWx1ZS0+
SW50ZWdlclZhbHVlKCkpOworICAgICAgICBpZiAoZW5mb3JjZVJhbmdlKSB7CisgICAgICAgICAg
ICBkb3VibGUgbnVtYmVyVmFsdWUgPSB2YWx1ZS0+TnVtYmVyVmFsdWUoKTsKKyAgICAgICAgICAg
IGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFsdWUpKQorICAgICAgICAg
ICAgICAgIHRocm93VHlwZUVycm9yKCk7CisgICAgICAgIH0KKyAgICAgICAgbG9uZyBsb25nIGlu
dDY0ID0gc3RhdGljX2Nhc3Q8bG9uZyBsb25nPih2YWx1ZS0+SW50ZWdlclZhbHVlKCkpOworICAg
ICAgICBpZiAoZW5mb3JjZVJhbmdlICYmIChpbnQ2NCA8IC0oa0pTTWF4SW50ZWdlciAtIDEpIHx8
IGludDY0ID4gKGtKU01heEludGVnZXIgLSAxKSkpCisgICAgICAgICAgICB0aHJvd1R5cGVFcnJv
cigpOworICAgICAgICByZXR1cm4gaW50NjQ7CisgICAgfQorCisgICAgLy8gRklYTUU6IE1vdmUg
dG8gVjhCaW5kaW5nLmNjCisgICAgaW5saW5lIGxvbmcgbG9uZyB0b1VJbnQ2NCh2ODo6TG9jYWw8
djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCBlbmZvcmNlUmFuZ2UpCisgICAgeworICAgICAgICBpZiAo
ZW5mb3JjZVJhbmdlKSB7CisgICAgICAgICAgICBkb3VibGUgbnVtYmVyVmFsdWUgPSB2YWx1ZS0+
TnVtYmVyVmFsdWUoKTsKKyAgICAgICAgICAgIGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNp
bmYobnVtYmVyVmFsdWUpKQorICAgICAgICAgICAgICAgIHRocm93VHlwZUVycm9yKCk7CisgICAg
ICAgIH0KKyAgICAgICAgbG9uZyBsb25nIGludDY0ID0gc3RhdGljX2Nhc3Q8bG9uZyBsb25nPih2
YWx1ZS0+SW50ZWdlclZhbHVlKCkpOworICAgICAgICBpZiAoZW5mb3JjZVJhbmdlICYmIChpbnQ2
NCA8IDAgfHwgaW50NjQgPiAoa0pTTWF4SW50ZWdlciAtIDEpKSkKKyAgICAgICAgICAgIHRocm93
VHlwZUVycm9yKCk7CisgICAgICAgIHJldHVybiBpbnQ2NDsKICAgICB9CiAKICAgICBpbmxpbmUg
Ym9vbCBpc1VuZGVmaW5lZE9yTnVsbCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggYjNmZjAxYzg0ZGI2YThkNTJkY2JkOWFkY2E5YTYzNzAzMTU5YjJlZC4uNTU4OTRkZmJiNWNm
Y2Y5ZDk0NzcxNDQxMTI5MGVjMmI1Zjk4M2I5MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEy
LTA5LTIwICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4
XSBCaW5kaW5nOiBJbXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcg
bG9uZyBjb252ZXJzaW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9OTY3OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBVcGRhdGUgdGVzdHMgdG8gYWNjb3VudCBmb3IgcmFuZ2UgZW5mb3JjZW1lbnQgb24g
dW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24uCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRk
Yi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9y
YWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWVuY29kaW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5q
czogVGVzdCBtb3JlIGVkZ2UgY2FzZXMuCisgICAgICAgIChkZWxldGVTdWNjZXNzKToKKyAgICAg
ICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1lbmNvZGluZy5qczog
T2ZmLWJ5LW9uZSBpbiBtYXggYWxsb3dhYmxlIHZhbHVlLgorCiAyMDEyLTA5LTE5ICBKb3NodWEg
QmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCAtIHJlbW92
ZSBkZWJ1Z2dpbmcgY29kZSBmcm9tIGEgcGFpciBvZiB0ZXN0cy4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFy
YW1ldGVycy1leHBlY3RlZC50eHQKaW5kZXggZTU1ZmQzYzIxMzE0MGQzZDg4MTQ1MTU1YTE4ODZi
ZDliMGYzMTUzNy4uZDM0MGIwNmZlYTE3ZjNlYjU2MzgxMWM4ODBkMGQ0NTc1ZTFlZGNlZCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFy
YW1ldGVycy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
aW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKQEAgLTE4LDExICsxOCwyMSBA
QCBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVy
cm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRi
bmFtZSwgLTUpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgogUEFTUyBpbmRleGVkREIub3Bl
bihkYm5hbWUsIC01KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKLQotRklYTUU6IFVzaW5n
IC0xIGRvZXNuJ3QgdGhyb3cgVHlwZUVycm9yIGJ1dCBpdCBzaG91bGQKK0V4cGVjdGluZyBUeXBl
RXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZpbml0eSkKK1BB
U1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgSW5m
aW5pdHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhwZWN0aW5nIFR5cGVFcnJvciBl
eGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0eSkKK1BBU1MgRXhj
ZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmluaXR5
KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0
aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pCitQQVNTIEV4Y2VwdGlvbiB3YXMg
dGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIE5hTikgdGhyZXcgVHlwZUVycm9y
OiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgTWF0aC5wb3coMiw1MykpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3du
LgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIE1hdGgucG93KDIsNTMpKSB0aHJldyBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IKIEV4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gcmVx
dWVzdCA9IGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpCi1GQUlMIE5vIGV4Y2VwdGlvbiB0aHJv
d24hCi1GQUlMIG9udXBncmFkZW5lZWRlZCBjYWxsZWQgdW5leHBlY3RlZGx5CitQQVNTIEV4Y2Vw
dGlvbiB3YXMgdGhyb3duLgorUEFTUyByZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAt
MSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2ludHZlcnNpb24tZW5jb2RpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
c3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1lbmNvZGluZy1leHBlY3RlZC50eHQKaW5kZXgg
MWQ1MGI3N2JkZmIwZjUzZWIyNmNiNjYzZDcyNzM5NzI4NzI3ZmVkNy4uNDY3ZDE0MTVlMDE3YmRm
MTdiYzU4YmVkNzFhMzYxMWU1NmE3YTQ1MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9pbmRleGVkZGIvaW50dmVyc2lvbi1lbmNvZGluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1lbmNvZGluZy1leHBlY3RlZC50eHQK
QEAgLTgxLDcgKzgxLDcgQEAgUEFTUyBkYi52ZXJzaW9uIGlzIHZlcnNpb24KIGRiLmNsb3NlKCkK
IAogb3BlbkZpcnN0VGltZSgpOgotdmVyc2lvbiA9IDkwMDcxOTkyNTQ3NDA5OTIKK3ZlcnNpb24g
PSA5MDA3MTk5MjU0NzQwOTkxCiB1cGdyYWRlTmVlZGVkRmlyZWQgPSBmYWxzZQogcmVxdWVzdCA9
IGluZGV4ZWREQi5vcGVuKGRibmFtZSwgdmVyc2lvbikKIHVwZ3JhZGVOZWVkZWRGaXJlZCA9IHRy
dWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9p
bnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKaW5kZXggMTk4OGEzZDkz
MGRlM2JkYzQwZjZkMmJjYjY1ZjFkMzI5MDczMDYzOC4uNGNhZTZmOTc5MDMyMWNlYmRmMzYyNzIz
MDQ2NmEyMjU1OWU2YjU3MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKKysrIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMu
anMKQEAgLTIwLDEzICsyMCwxMiBAQCBmdW5jdGlvbiBkZWxldGVTdWNjZXNzKGV2dCkgewogICAg
IGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAnc3Ry
aW5ndmVyc2lvbicpIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25D
bGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAwKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFs
QW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpIiwgIlR5
cGVFcnJvciIpOwotICAgIGRlYnVnKCIiKTsKLSAgICBkZWJ1ZygiRklYTUU6IFVzaW5nIC0xIGRv
ZXNuJ3QgdGhyb3cgVHlwZUVycm9yIGJ1dCBpdCBzaG91bGQiKTsKKyAgICBldmFsQW5kRXhwZWN0
RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgSW5maW5pdHkpIiwgIlR5cGVF
cnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4o
ZGJuYW1lLCAtSW5maW5pdHkpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNl
cHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pIiwgIlR5cGVFcnJvciIpOwor
ICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBN
YXRoLnBvdygyLDUzKSkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlv
bkNsYXNzKCJyZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkiLCAiVHlwZUVycm9y
Iik7Ci0gICAgcmVxdWVzdC5vbnN1Y2Nlc3MgPSB1bmV4cGVjdGVkU3VjY2Vzc0NhbGxiYWNrOwot
ICAgIHJlcXVlc3Qub25lcnJvciA9IHVuZXhwZWN0ZWRFcnJvckNhbGxiYWNrOwotICAgIHJlcXVl
c3Qub25ibG9ja2VkID0gdW5leHBlY3RlZEJsb2NrZWRDYWxsYmFjazsKLSAgICByZXF1ZXN0Lm9u
dXBncmFkZW5lZWRlZCA9IHVuZXhwZWN0ZWRVcGdyYWRlTmVlZGVkQ2FsbGJhY2s7CisgICAgZmlu
aXNoSlNUZXN0KCk7CiB9CiAKIHRlc3QoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWVuY29kaW5nLmpzIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tZW5jb2RpbmcuanMKaW5k
ZXggZTU4M2ZjNjc4Mjg4MzZjNTMxZjk3OTRiNWVjM2Q1OTVhZjQ2MzE3Yy4uY2E0ODk2ZjgzMmUw
NDQ4NWQxMTg3M2QwZTAwOWU1NDk2NWRkYTk4ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tZW5jb2RpbmcuanMKKysrIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tZW5jb2Rpbmcu
anMKQEAgLTksNyArOSw3IEBAIHZlcnNpb25zID0gWzEsCiAgICAgICAgICAgICAweDdmLAogICAg
ICAgICAgICAgMHg4MCwKICAgICAgICAgICAgIDB4ODAwMDAwMDAsCi0gICAgICAgICAgICA5MDA3
MTk5MjU0NzQwOTkyXTsgLy8gMl41MywgbWF4aW11bSBKYXZhU2NyaXB0IGludGVnZXIuCisgICAg
ICAgICAgICA5MDA3MTk5MjU0NzQwOTkyLTFdOyAvLyAyXjUzLTEsIG1heGltdW0gSmF2YVNjcmlw
dCBpbnRlZ2VyLgogCiBmdW5jdGlvbiB0ZXN0KCkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180821</attachid>
            <date>2012-12-27 14:40:22 -0800</date>
            <delta_ts>2013-01-08 14:25:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20121227143734.patch</filename>
            <type>text/plain</type>
            <size>64373</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDRmZWY0YTAzM2IxNThj
ZTYxZDhhODZjNWEwYjhhNzA5NTBiY2M4ZC4uYTkxYzhkYWE4MjIzOTU1ODVhZThkNDUzZDc0ZjA0
MGM1MmYyMzU3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTEyLTI3ICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUg
W0VuZm9yY2VSYW5nZV0gZXh0ZW5kZWQgYXR0cmlidXRlIGluIElETCBkZWZpbmVzIHRocm93aW5n
IGJlaGF2aW9yIGZvciBzaWduZWQvdW5zaWduZWQKKyAgICAgICAgbG9uZy9sb25nIGxvbmcgY29u
dmVyc2lvbnMgZm9yIE5hTnMsIGluZmluaXRpZXMsIGFuZCB2YWx1ZXMgPj0gMl4zMiAvIDJeNTMu
IFRoaXMgcGF0Y2gKKyAgICAgICAgaW1wbGVtZW50cyB0aGlzIGJlaGF2aW9yIGFuZCByZW1vdmVz
IHJlZHVuZGFudCBjb2RlIGluIHRoZSBJbmRleGVkREIgaW1wbGVtZW50YXRpb24uCisKKyAgICAg
ICAgQWRkZWQgZXhhbXBsZXMgb2YgW0VuZm9yY2VSYW5nZV0gYXR0cmlidXRlcywgdXBkYXRlZCBi
aW5kaW5nIHRlc3QgcmVzdWx0cywKKyAgICAgICAgYW5kIHVwZGF0ZWQgcmVsZXZhbnQgSW5kZXhl
ZERCIHRlc3RzOgorICAgICAgICAgIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBh
cmFtZXRlcnMuaHRtbAorICAgICAgICAgIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tZW5j
b2RpbmcuaHRtbAorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OklEQkN1cnNvcjo6YWR2YW5jZSk6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmg6CisgICAgICAgIChJREJDdXJzb3IpOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCRmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJGYWN0b3J5OjpvcGVu
KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5Lmg6CisgICAgICAgIChJ
REJGYWN0b3J5KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAg
KEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKToKKyAgICAgICAgKEpTVmFsdWVUb05hdGl2ZSk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGw6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHA6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5k
aW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50MzIpOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0
KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9W
OEJpbmRpbmcuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6dG9JbnQz
Mik6CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0lu
dDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRv
RmxvYXQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oOgorCiAyMDEy
LTEyLTI2ICBObydhbSBSb3NlbnRoYWwgIDxub2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW1Rl
eG1hcF0gSW5zdGVhZCBvZiBoYXZpbmcgbXVsdGlwbGUgc2hhZGVycyBzb3VyY2VzIHdpdGggbG90
cyBvZiBkdXBsaWNhdGlvbiwgd2Ugc2hvdWxkIGhhdmUgb25lIHNoYWRlciBzb3VyY2Ugd2l0aCBN
QUNSTyB2YXJpYW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1
cnNvci5jcHAKaW5kZXggZDQxMWRhOTM3NWVmYWI5MTBjYmQ2NWU3ZDliMWU0NGM5MzA4M2RjMS4u
MDA1MzVmMjYyNTRhNWE2OWNiZDRmNmJkMTM3NzNiM2NjMGQ5N2M2MiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCkBAIC0xNTUsNyArMTU1LDcg
QEAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBJREJDdXJzb3I6OnVwZGF0ZShTY3JpcHRTdGF0ZSog
c3RhdGUsIFNjcmlwdFZhbHVlJiB2YWx1ZSwKICAgICByZXR1cm4gb2JqZWN0U3RvcmUtPnB1dChJ
REJPYmplY3RTdG9yZUJhY2tlbmRJbnRlcmZhY2U6OkN1cnNvclVwZGF0ZSwgSURCQW55OjpjcmVh
dGUodGhpcyksIHN0YXRlLCB2YWx1ZSwgbV9jdXJyZW50UHJpbWFyeUtleSwgZWMpOwogfQogCi12
b2lkIElEQkN1cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVj
KQordm9pZCBJREJDdXJzb3I6OmFkdmFuY2UodW5zaWduZWQgbG9uZyBjb3VudCwgRXhjZXB0aW9u
Q29kZSYgZWMpCiB7CiAgICAgSURCX1RSQUNFKCJJREJDdXJzb3I6OmFkdmFuY2UiKTsKICAgICBp
ZiAoIW1fZ290VmFsdWUpIHsKQEAgLTE2OCw4ICsxNjgsNyBAQCB2b2lkIElEQkN1cnNvcjo6YWR2
YW5jZShsb25nIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgICAgICByZXR1cm47
CiAgICAgfQogCi0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG9ubHkgbmVlZCB0byBjaGVjayBm
b3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBpZiAoY291bnQgPCAxIHx8
IGNvdW50ID4gVUlOVF9NQVgpIHsKKyAgICBpZiAoIWNvdW50KSB7CiAgICAgICAgIGVjID0gVHlw
ZUVycm9yOwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJDdXJzb3IuaAppbmRleCAyYjA1OTA3YmY2YzZmOTVhNWZkY2Y5Y2FmOTNl
MWFjOWVlZjk1YjQ5Li5mYzMyOTg3ZmNmMTY1MTg5ZTAzZTkzMDg0MzczM2E3ZDViZDkxMjRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaApAQCAtNzgs
OCArNzgsNyBAQCBwdWJsaWM6CiAgICAgSURCQW55KiBzb3VyY2UoKSBjb25zdDsKIAogICAgIFBh
c3NSZWZQdHI8SURCUmVxdWVzdD4gdXBkYXRlKFNjcmlwdFN0YXRlKiwgU2NyaXB0VmFsdWUmLCBF
eGNlcHRpb25Db2RlJik7Ci0gICAgLy8gRklYTUU6IE1ha2UgdGhpcyB1bnNpZ25lZCBsb25nIG9u
Y2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgotICAgIHZvaWQgYWR2YW5jZShsb25nIGxvbmcs
IEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGFkdmFuY2UodW5zaWduZWQgbG9uZywgRXhjZXB0
aW9uQ29kZSYpOwogICAgIHZvaWQgY29udGludWVGdW5jdGlvbihQYXNzUmVmUHRyPElEQktleT4s
IEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IGRlbGV0ZUZ1bmN0
aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJik7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCmluZGV4IDY0NjIwNzdk
MGFjYzY1ZjNiZTk4Y2ZlOTk4YWI1N2ZjNTZhNWVmOTAuLjhjODJmOGM0ZWFiNjBmNzhkMTIxMTFj
ZjgxOTFlM2ViNmNjMmFiZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmlkbApAQCAtMzUsOCArMzUsNyBAQAogCiAgICAgW0NhbGxXaXRoPVNjcmlw
dFN0YXRlXSBJREJSZXF1ZXN0IHVwZGF0ZShpbiBhbnkgdmFsdWUpCiAgICAgICAgIHJhaXNlcyAo
RE9NRXhjZXB0aW9uKTsKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFuZ2VdIHVu
c2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgdm9pZCBhZHZh
bmNlKGluIGxvbmcgbG9uZyBjb3VudCkKKyAgICB2b2lkIGFkdmFuY2UoaW4gW0VuZm9yY2VSYW5n
ZV0gdW5zaWduZWQgbG9uZyBjb3VudCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwog
ICAgIFtJbXBsZW1lbnRlZEFzPWNvbnRpbnVlRnVuY3Rpb25dIHZvaWQgY29udGludWUoaW4gW09w
dGlvbmFsXSBJREJLZXkga2V5KQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCmluZGV4IDg0
MGNhOThlZGEzMjM5Mjg4NGFlNTMwMzlhMWM4YjE1NDQyMzQ5OGYuLjlhNmVkMmVhMzlkYjkyNDNm
NWM0MDQxZjQwZjc1ZWUzNzAwMmEzYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCkBAIC0xMDUsMTEgKzEwNSw5IEBAIFBhc3NSZWZQdHI8
SURCUmVxdWVzdD4gSURCRmFjdG9yeTo6Z2V0RGF0YWJhc2VOYW1lcyhTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiBjb250CiAgICAgcmV0dXJuIHJlcXVlc3Q7CiB9CiAKLVBhc3NSZWZQdHI8SURCT3Bl
bkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250
ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIGludDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYg
ZWMpCitQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IElEQkZhY3Rvcnk6Om9wZW4oU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBs
b25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7Ci0gICAgLy8gRklYTUU6IFRo
aXMgc2hvdWxkIG9ubHkgbmVlZCB0byBjaGVjayBmb3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5
OCBsYW5kcy4KLSAgICBjb25zdCBpbnQ2NF90IG1heEVDTUFTY3JpcHRJbnRlZ2VyID0gMHgyMDAw
MDAwMDAwMDAwMExMIC0gMTsKLSAgICBpZiAodmVyc2lvbiA8IDEgfHwgdmVyc2lvbiA+IG1heEVD
TUFTY3JpcHRJbnRlZ2VyKSB7CisgICAgaWYgKCF2ZXJzaW9uKSB7CiAgICAgICAgIGVjID0gVHlw
ZUVycm9yOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgKaW5kZXggMTg1N2JhNDJhMzdlNjU2NTRjNjI0Yjdh
YmI0MmI2ZWZkZWUzYjkyOC4uNDE0YTFiZDhmZjY1NTllMjc0MTljOTljM2Q5OTU3ZWVhOTYwMTI1
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9y
eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaApA
QCAtNTksNyArNTksNyBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBnZXRE
YXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKIAogICAgIFBhc3NSZWZQdHI8
SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1
ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIGlu
dDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOworICAgIFBhc3NSZWZQdHI8SURCT3BlbkRC
UmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1l
LCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIFBhc3NS
ZWZQdHI8SURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q+IGRlbGV0ZURhdGFiYXNlKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAg
IHNob3J0IGNtcChQYXNzUmVmUHRyPElEQktleT4gZmlyc3QsIFBhc3NSZWZQdHI8SURCS2V5PiBz
ZWNvbmQsIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCRmFjdG9yeS5pZGwKaW5kZXggYTE4MDgyMzgxMmZkZTY5MTIwZTQzMjQwZTE5MTY1
OTBhMjBlZTAyMy4uNzA0N2MyNDc3ODhlN2RhMDFhOGNiY2YxZDkxNGNkYWZiNmIzOTJjMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAg
LTI5LDggKzI5LDcgQEAKIF0gaW50ZXJmYWNlIElEQkZhY3RvcnkgewogICAgIFtDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBsZW1lbnRlZEFzPWdldERhdGFiYXNlTmFtZXNdIElE
QlJlcXVlc3Qgd2Via2l0R2V0RGF0YWJhc2VOYW1lcygpOwogCi0gICAgLy8gRklYTUU6IE1ha2Ug
dGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgb25jZSB3ZWJraXQub3JnL2Iv
OTY3OTggbGFuZHMuCi0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQk9w
ZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW09wdGlvbmFsXSBsb25nIGxv
bmcgdmVyc2lvbikKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCT3Bl
bkRCUmVxdWVzdCBvcGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbRW5mb3JjZVJhbmdlLCBPcHRp
b25hbF0gdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pCiAgICAgICAgIHJhaXNlcyAoRE9NRXhj
ZXB0aW9uKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCVmVyc2lv
bkNoYW5nZVJlcXVlc3QgZGVsZXRlRGF0YWJhc2UoaW4gRE9NU3RyaW5nIG5hbWUpCiAgICAgICAg
IHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggZmFiOWUzMmQ3ZDMxNmRmZWRhNmZmYzM5
NTg2OWI5MTA4YThiMDYzNS4uNDI2YzA4YTlkMzA2NzFiZjliYTFhN2M5MTQwMjYxYzY3ZGQ1ODAw
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9yVjgucG0KQEAgLTE4MjAsOCArMTgyMCw4IEBAIHN1YiBHZW5lcmF0ZVBhcmFtZXRlcnNDaGVj
awogICAgICAgICAgICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAg
cmV0dXJuIHRocm93VHlwZUVycm9yKDAsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CiAgICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3Ry
aW5nIC49ICIgICAgVjhUUllDQVRDSCgkbmF0aXZlVHlwZSwgJHBhcmFtZXRlck5hbWUsICIgLgot
ICAgICAgICAgICAgICAgICBKU1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgIk1BWUJFX01JU1NJ
TkdfUEFSQU1FVEVSKGFyZ3MsICRwYXJhbUluZGV4LCAkcGFyYW1ldGVyRGVmYXVsdFBvbGljeSki
LCAiYXJncy5HZXRJc29sYXRlKCkiKSAuICIpO1xuIjsKKyAgICAgICAgICAgICRwYXJhbWV0ZXJD
aGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSygkbmF0aXZlVHlwZSwg
JHBhcmFtZXRlck5hbWUsICIgLgorICAgICAgICAgICAgICAgICBKU1ZhbHVlVG9OYXRpdmUoJHBh
cmFtZXRlciwgIk1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsICRwYXJhbUluZGV4LCAkcGFy
YW1ldGVyRGVmYXVsdFBvbGljeSkiLCAiYXJncy5HZXRJc29sYXRlKCkiLCAxKSAuICIpO1xuIjsK
ICAgICAgICAgICAgIGlmICgkbmF0aXZlVHlwZSBlcSAnRGljdGlvbmFyeScpIHsKICAgICAgICAg
ICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIGlmICghJHBhcmFtZXRlck5hbWUu
aXNVbmRlZmluZWRPck51bGwoKSAmJiAhJHBhcmFtZXRlck5hbWUuaXNPYmplY3QoKSlcbiI7CiAg
ICAgICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0dXJuIHRo
cm93VHlwZUVycm9yKFwiTm90IGFuIG9iamVjdC5cIiwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsK
QEAgLTM3NzIsMTYgKzM3NzIsMjcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIG15ICRzaWdu
YXR1cmUgPSBzaGlmdDsKICAgICBteSAkdmFsdWUgPSBzaGlmdDsKICAgICBteSAkZ2V0SXNvbGF0
ZSA9IHNoaWZ0OworICAgIG15ICRtYXlGYWlsID0gc2hpZnQ7CiAKICAgICBteSAkdHlwZSA9ICRz
aWduYXR1cmUtPnR5cGU7CisgICAgbXkgJGVuZm9yY2VSYW5nZSA9ICRzaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSA/ICJ0cnVlIiA6ICJmYWxzZSI7CisgICAg
ZGllICJDYW4ndCBoYW5kbGUgW0VuZm9yY2VSYW5nZV0gdW5sZXNzIGNhbGxlZCBmcm9tIGNvbnRl
eHQgdGhhdCBoYW5kbGVzIGZhaWx1cmVzLiIgaWYgJGVuZm9yY2VSYW5nZSBlcSAidHJ1ZSIgYW5k
ICEkbWF5RmFpbDsKIAogICAgIHJldHVybiAiJHZhbHVlIiBpZiAkdHlwZSBlcSAiSlNPYmplY3Qi
OwogICAgIHJldHVybiAiJHZhbHVlLT5Cb29sZWFuVmFsdWUoKSIgaWYgJHR5cGUgZXEgImJvb2xl
YW4iOwogICAgIHJldHVybiAic3RhdGljX2Nhc3Q8JHR5cGU+KCR2YWx1ZS0+TnVtYmVyVmFsdWUo
KSkiIGlmICR0eXBlIGVxICJmbG9hdCIgb3IgJHR5cGUgZXEgImRvdWJsZSI7CiAKLSAgICByZXR1
cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9y
dCI7Ci0gICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQg
bG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKLSAgICByZXR1cm4gInRvSW50NjQo
JHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyIgb3IgJHR5cGUgZXEgImxv
bmcgbG9uZyI7CisgICAgaWYgKCRtYXlGYWlsKSB7CisgICAgICAgIHJldHVybiAidG9JbnQzMigk
dmFsdWUsICRlbmZvcmNlUmFuZ2UsIG9rKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVx
ICJzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9VSW50MzIoJHZhbHVlLCAkZW5mb3JjZVJhbmdl
LCBvaykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQg
c2hvcnQiOworICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlLCAkZW5mb3JjZVJhbmdlLCBv
aykiIGlmICR0eXBlIGVxICJsb25nIGxvbmciOworICAgICAgICByZXR1cm4gInRvVUludDY0KCR2
YWx1ZSwgJGVuZm9yY2VSYW5nZSwgb2spIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25n
IjsKKyAgICB9IGVsc2UgeworICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5
cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9VSW50
MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNp
Z25lZCBzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBl
cSAibG9uZyBsb25nIjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFsdWUpIiBpZiAkdHlw
ZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKKyAgICB9CiAgICAgcmV0dXJuICJzdGF0aWNfY2Fz
dDxSYW5nZTo6Q29tcGFyZUhvdz4oJHZhbHVlLT5JbnQzMlZhbHVlKCkpIiBpZiAkdHlwZSBlcSAi
Q29tcGFyZUhvdyI7CiAgICAgcmV0dXJuICJ0b1dlYkNvcmVEYXRlKCR2YWx1ZSkiIGlmICR0eXBl
IGVxICJEYXRlIjsKICAgICByZXR1cm4gInRvRE9NU3RyaW5nTGlzdCgkdmFsdWUsICRnZXRJc29s
YXRlKSIgaWYgJHR5cGUgZXEgIkRPTVN0cmluZ0xpc3QiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKaW5kZXggZTE4YjMxMWE3NTFkMTU1
YjY4ZDVkZGQxM2FhMDYyMmJhMTRhNjBlMy4uNzA2NjQyNGY5NGEwNWU2NGY5NDc5NjczNmM0ZjY0
YTQ4NzExMjNlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9J
RExBdHRyaWJ1dGVzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lE
TEF0dHJpYnV0ZXMudHh0CkBAIC01MSw2ICs1MSw3IEBAIERvTm90Q2hlY2tDb25zdGFudHMKIERv
Tm90Q2hlY2tTZWN1cml0eQogRG9Ob3RDaGVja1NlY3VyaXR5T25HZXR0ZXIKIERvTm90Q2hlY2tT
ZWN1cml0eU9uU2V0dGVyCitFbmZvcmNlUmFuZ2UKIEV2ZW50VGFyZ2V0CiBFeHRlbmRzRE9NR2xv
YmFsT2JqZWN0CiBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxEb2N1bWVudHxJbXBsRWxlbWVudFJv
b3R8SW1wbE93bmVyTm9kZVJvb3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9UZXN0T2JqLmlkbAppbmRleCBmOWQwNjVmYTE4NmVlMTg1YmY0NjllOTYwMjhmZWU2
NTFmNGIxNmM2Li45ZWE3NWU2ZmJmMDVkY2ZhY2YzMzJiNzRjMzdkNDdjNGNlM2ExOGU1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCkBA
IC0xNDYsNiArMTQ2LDE0IEBACiAgICAgdm9pZCAgICBtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRp
b25hbEFyZyhpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBUZXN0Q2FsbGJhY2sgY2FsbGJhY2spOwog
I2VuZGlmCiAKKyNpZiBkZWZpbmVkKFRFU1RJTkdfVjgpCisgICAgLy8gJ0VuZm9yY2VSYW5nZScg
ZXh0ZW5kZWQgYXR0cmlidXRlCisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50
MzIoaW4gW0VuZm9yY2VSYW5nZV0gbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRo
RW5mb3JjZVJhbmdlVUludDMyKGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgdmFsdWUp
OworICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0KGluIFtFbmZvcmNlUmFu
Z2VdIGxvbmcgbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdl
VUludDY0KGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSk7CisjZW5k
aWYKKwogICAgIC8vICdDb25kaXRpb25hbCcgZXh0ZW5kZWQgYXR0cmlidXRlCiAgICAgW0NvbmRp
dGlvbmFsPUNvbmRpdGlvbjFdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0cjE7CiAgICAg
W0NvbmRpdGlvbmFsPUNvbmRpdGlvbjEmQ29uZGl0aW9uMl0gYXR0cmlidXRlIGxvbmcgY29uZGl0
aW9uYWxBdHRyMjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOEZsb2F0NjRBcnJheS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvVjgvVjhGbG9hdDY0QXJyYXkuY3BwCmluZGV4IGZiNDEyYTVkOGFjMmVmZjFmZDIy
YjAwOWIzN2MxZWE0MjFjYTM4MmUuLjhiZTliNjEzYzkxOGUyZjFmNjVjNmQ1NGM2MjIyODZmNTRl
NDAyMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOEZsb2F0NjRBcnJheS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IGZvb0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3Mp
CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91
Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgRmxvYXQ2NEFycmF5KiBp
bXAgPSBWOEZsb2F0NjRBcnJheTo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllD
QVRDSChGbG9hdDMyQXJyYXkqLCBhcnJheSwgVjhGbG9hdDMyQXJyYXk6Okhhc0luc3RhbmNlKE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhG
bG9hdDMyQXJyYXk6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVf
TUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7Cisg
ICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKEZsb2F0MzJBcnJheSosIGFycmF5LCBWOEZsb2F0
MzJBcnJheTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOEZsb2F0MzJBcnJheTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2
ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICByZXR1cm4gdG9WOChpbXAtPmZvbyhhcnJheSksIGFy
Z3MuSG9sZGVyKCksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZl
RE9NT2JqZWN0LmNwcAppbmRleCA3MTRmOTI2ZGVkZjNlNmQ1NzJjZGJmN2Q0MzgwMGYwOGYwMTlj
ZjUwLi41YjNiYjU1OTA5N2Y2YmJlMTg3ZTNhYmJkNGVjMjBiMGE4MzI4M2ZjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZlRE9N
T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0QWN0aXZlRE9NT2JqZWN0LmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IGV4Y2l0aW5nRnVuY3Rpb25DYWxsYmFjayhjb25zdCB2ODo6QXJndW1l
bnRzJiBhcmdzKQogICAgIFRlc3RBY3RpdmVET01PYmplY3QqIGltcCA9IFY4VGVzdEFjdGl2ZURP
TU9iamVjdDo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CiAgICAgaWYgKCFCaW5kaW5nU2VjdXJp
dHk6OnNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGlt
cC0+ZnJhbWUoKSkpCiAgICAgICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwotICAgIFY4VFJZQ0FU
Q0goTm9kZSosIG5leHRDaGlsZCwgVjhOb2RlOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BB
UkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4Tm9kZTo6dG9OYXRpdmUo
djg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdz
LCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBF
Q0hFQ0soTm9kZSosIG5leHRDaGlsZCwgVjhOb2RlOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4Tm9kZTo6dG9OYXRp
dmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBpbXAtPmV4Y2l0aW5nRnVu
Y3Rpb24obmV4dENoaWxkKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudFRh
cmdldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
RXZlbnRUYXJnZXQuY3BwCmluZGV4IGRjYjczYmYxOGQ2MDg3YzRmMjFjMDcwZDI3MTUzOWRkMTJm
MmE0ZDUuLjk1MmIwZmQ3ZTFlYzkwY2IyOGMyOWE1YTllM2QwMDM4ZDhkMWZmYzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudFRh
cmdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdEV2ZW50VGFyZ2V0LmNwcApAQCAtNDksNyArNDksNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IGl0ZW1DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIFRl
c3RFdmVudFRhcmdldCogaW1wID0gVjhUZXN0RXZlbnRUYXJnZXQ6OnRvTmF0aXZlKGFyZ3MuSG9s
ZGVyKCkpOwogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwogICAgIHsKLSAgICBWOFRSWUNBVENI
KGludCwgaW5kZXgsIHRvVUludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERl
ZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBp
bmRleCwgdG9VSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElz
VW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaWYgKFVOTElLRUxZKGluZGV4IDwgMCkpIHsK
ICAgICAgICAgZWMgPSBJTkRFWF9TSVpFX0VSUjsKICAgICAgICAgZ290byBmYWlsOwpAQCAtOTIs
NyArOTIsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGRpc3BhdGNoRXZlbnRDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIFRlc3RFdmVudFRhcmdldCogaW1w
ID0gVjhUZXN0RXZlbnRUYXJnZXQ6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwogICAgIEV4Y2Vw
dGlvbkNvZGUgZWMgPSAwOwogICAgIHsKLSAgICBWOFRSWUNBVENIKEV2ZW50KiwgZXZ0LCBWOEV2
ZW50OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSA/IFY4RXZlbnQ6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46
OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKEV2ZW50KiwgZXZ0LCBWOEV2
ZW50OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSA/IFY4RXZlbnQ6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46
OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkpIDogMCk7CiAgICAgYm9vbCByZXN1bHQgPSBpbXAtPmRpc3BhdGNoRXZlbnQoZXZ0LCBlYyk7
CiAgICAgaWYgKFVOTElLRUxZKGVjKSkKICAgICAgICAgZ290byBmYWlsOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJm
YWNlLmNwcAppbmRleCA0NjA5NGNkNmNlYmJiODA0ODNjODVjMjNkYjdiZWMwNGJlMTJiY2M3Li5h
N2Q0ZTU1OTIzZTM2YzJkOGI2N2Q4ZWIwNmQzMjY5M2VjOWQ1YzBjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJm
YWNlLmNwcApAQCAtMTYwLDcgKzE2MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
c3VwcGxlbWVudGFsTWV0aG9kMkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyCiAgICAg
RXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgewogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5H
UkVTT1VSQ0UoVjhTdHJpbmdSZXNvdXJjZTw+LCBzdHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9i
aiosIG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRF
UihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6
OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAx
LCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hF
Q0soVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9O
YXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRF
UihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBzY3JpcHRDb250ZXh0ID0gZ2V0U2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwog
ICAgIFJlZlB0cjxUZXN0T2JqPiByZXN1bHQgPSBUZXN0U3VwcGxlbWVudGFsOjpzdXBwbGVtZW50
YWxNZXRob2QyKHNjcmlwdENvbnRleHQsIGltcCwgc3RyQXJnLCBvYmpBcmcsIGVjKTsKICAgICBp
ZiAoVU5MSUtFTFkoZWMpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVu
ZXIuY3BwCmluZGV4IGI4NDE4NjQwZjRkZmRjYzUwNWMyZDczMGE1ZWUzMzg0NmY1MGMzOWYuLmYy
YjEyZjVmYzc3NTY2OWIwNTcyNWM1ZGZiMDUwZjQ0ZGI5MzU2NGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExp
c3RlbmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5jcHAKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRz
JiBhcmdzKQogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93
Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RNZWRp
YVF1ZXJ5TGlzdExpc3RlbmVyKiBpbXAgPSBWOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyOjp0
b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFJlZlB0cjxNZWRpYVF1ZXJ5
TGlzdExpc3RlbmVyPiwgbGlzdGVuZXIsIE1lZGlhUXVlcnlMaXN0TGlzdGVuZXI6OmNyZWF0ZShN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7Cisg
ICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFJlZlB0cjxNZWRpYVF1ZXJ5TGlzdExpc3RlbmVy
PiwgbGlzdGVuZXIsIE1lZGlhUXVlcnlMaXN0TGlzdGVuZXI6OmNyZWF0ZShNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CiAgICAgaW1wLT5tZXRo
b2QobGlzdGVuZXIpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAppbmRl
eCBmNjI0MDI3YTQwOTVlZWM4YTk1NGM1NzYwM2U0NGE4ZDRlMGQzZDVlLi45NzJkNzE2MDYzOGVi
ODY5MjkwODM4M2Y3OTgzZjk0ZmI1NmUwZDFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcApAQCAtMjA0LDcgKzIwNCw3
IEBAIHN0YXRpYyB2b2lkIHVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsCiB7CiAgICAgSU5DX1NUQVRTKCJET00uVGVzdE9i
ai51bnNpZ25lZExvbmdMb25nQXR0ci5fc2V0Iik7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0
T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICB1bnNpZ25lZCBsb25nIGxvbmcgdiA9
IHRvSW50NjQodmFsdWUpOworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9VSW50NjQodmFs
dWUpOwogICAgIGltcC0+c2V0VW5zaWduZWRMb25nTG9uZ0F0dHIodik7CiAgICAgcmV0dXJuOwog
fQpAQCAtMTA1Niw5ICsxMDU2LDkgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2b2lk
TWV0aG9kV2l0aEFyZ3NDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmcKICAgICBpZiAo
YXJncy5MZW5ndGgoKSA8IDMpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50
c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6
OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJnLCB0
b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5l
ZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0ludDMy
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZh
bHNlLCBvaykpOwogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhTdHJpbmdS
ZXNvdXJjZTw+LCBzdHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1
bHRJc1VuZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhUZXN0
T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0
Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFy
ZywgVjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAy
LCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2
ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBpbXAtPnZvaWRNZXRob2RXaXRoQXJncyhsb25nQXJn
LCBzdHJBcmcsIG9iakFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xMDc2
LDkgKzEwNzYsOSBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGxvbmdNZXRob2RXaXRo
QXJnc0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZwogICAgIGlmIChhcmdzLkxlbmd0
aCgpIDwgMykKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJn
cy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
YXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZ
QkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAg
IFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7
CiAgICAgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdSRVNPVVJDRShWOFN0cmluZ1Jlc291cmNlPD4s
IHN0ckFyZywgTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZp
bmVkKSk7Ci0gICAgVjhUUllDQVRDSChUZXN0T2JqKiwgb2JqQXJnLCBWOFRlc3RPYmo6Okhhc0lu
c3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5l
ZCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDAp
OworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhUZXN0T2JqKiwgb2JqQXJnLCBWOFRlc3RP
Ymo6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJ
c1VuZGVmaW5lZCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5l
ZCkpKSA6IDApOwogICAgIHJldHVybiB2OEludGVnZXIoaW1wLT5sb25nTWV0aG9kV2l0aEFyZ3Mo
bG9uZ0FyZywgc3RyQXJnLCBvYmpBcmcpLCBhcmdzLkdldElzb2xhdGUoKSk7CiB9CiAKQEAgLTEw
OTYsOSArMTA5Niw5IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb2JqTWV0aG9kV2l0
aEFyZ3NDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3MuTGVu
Z3RoKCkgPCAzKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihh
cmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2
ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGludCwgbG9uZ0FyZywgdG9JbnQzMihN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7Cisg
ICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2sp
KTsKICAgICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKFY4U3RyaW5nUmVzb3VyY2U8
Piwgc3RyQXJnLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFz
SW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZp
bmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3Qo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDog
MCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVz
dE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVs
dElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVj
dD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZp
bmVkKSkpIDogMCk7CiAgICAgcmV0dXJuIHRvVjgoaW1wLT5vYmpNZXRob2RXaXRoQXJncyhsb25n
QXJnLCBzdHJBcmcsIG9iakFyZyksIGFyZ3MuSG9sZGVyKCksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsK
IH0KIApAQCAtMTEwOCw3ICsxMTA4LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBt
ZXRob2RXaXRoU2VxdWVuY2VBcmdDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJgogICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChWZWN0b3I8UmVmUHRy
PFNjcmlwdFByb2ZpbGU+ID4sIHNlcXVlbmNlQXJnLCAodG9SZWZQdHJOYXRpdmVBcnJheTxTY3Jp
cHRQcm9maWxlLCBWOFNjcmlwdFByb2ZpbGU+KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3Ms
IDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
KFZlY3RvcjxSZWZQdHI8U2NyaXB0UHJvZmlsZT4gPiwgc2VxdWVuY2VBcmcsICh0b1JlZlB0ck5h
dGl2ZUFycmF5PFNjcmlwdFByb2ZpbGUsIFY4U2NyaXB0UHJvZmlsZT4oTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpKTsKICAgICBpbXAtPm1ldGhv
ZFdpdGhTZXF1ZW5jZUFyZyhzZXF1ZW5jZUFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7
CiB9CkBAIC0xMTE5LDcgKzExMTksNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1l
dGhvZFJldHVybmluZ1NlcXVlbmNlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cwogICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcs
IHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50
MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwg
ZmFsc2UsIG9rKSk7CiAgICAgcmV0dXJuIHY4QXJyYXkoaW1wLT5tZXRob2RSZXR1cm5pbmdTZXF1
ZW5jZShsb25nQXJnKSwgYXJncy5HZXRJc29sYXRlKCkpOwogfQogCkBAIC0xMTMyLDcgKzExMzIs
NyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFRoYXRSZXF1aXJlc0FsbEFy
Z3NBbmRUaHJvd3NDYWxsYmFjayhjb25zdCB2OAogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwog
ICAgIHsKICAgICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKFY4U3RyaW5nUmVzb3Vy
Y2U8Piwgc3RyQXJnLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6
SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSkp
IDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CiAgICAgUmVmUHRyPFRlc3RPYmo+IHJlc3VsdCA9IGltcC0+bWV0aG9k
VGhhdFJlcXVpcmVzQWxsQXJnc0FuZFRocm93cyhzdHJBcmcsIG9iakFyZywgZWMpOwogICAgIGlm
IChVTkxJS0VMWShlYykpCiAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTExNjIsNyArMTE2Miw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gaWRiS2V5Q2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJncykKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVy
biB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4
VFJZQ0FUQ0goUmVmUHRyPElEQktleT4sIGtleSwgY3JlYXRlSURCS2V5RnJvbVZhbHVlKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBW
OFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPElEQktleT4sIGtleSwgY3JlYXRlSURCS2V5
RnJvbVZhbHVlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCkpKTsKICAgICBpbXAtPmlkYktleShrZXkuZ2V0KCkpOwogICAgIHJldHVybiB2OFVuZGVm
aW5lZCgpOwogfQpAQCAtMTE3MywxMCArMTE3MywxMCBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IG9wdGlvbnNPYmplY3RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQog
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChEaWN0aW9u
YXJ5LCBvbywgRGljdGlvbmFyeShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZh
dWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyhEaWN0aW9uYXJ5LCBvbywgRGljdGlvbmFyeShNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkpOwog
ICAgIGlmICghb28uaXNVbmRlZmluZWRPck51bGwoKSAmJiAhb28uaXNPYmplY3QoKSkKICAgICAg
ICAgcmV0dXJuIHRocm93VHlwZUVycm9yKCJOb3QgYW4gb2JqZWN0LiIsIGFyZ3MuR2V0SXNvbGF0
ZSgpKTsKLSAgICBWOFRSWUNBVENIKERpY3Rpb25hcnksIG9vbywgRGljdGlvbmFyeShNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElz
b2xhdGUoKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhEaWN0aW9uYXJ5LCBvb28s
IERpY3Rpb25hcnkoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsKICAgICBpZiAoIW9vby5pc1VuZGVmaW5lZE9y
TnVsbCgpICYmICFvb28uaXNPYmplY3QoKSkKICAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9y
KCJOb3QgYW4gb2JqZWN0LiIsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBpbXAtPm9wdGlvbnNP
YmplY3Qob28sIG9vbyk7CkBAIC0xMzkxLDcgKzEzOTEsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhPcHRpb25hbEFyZ0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVu
dHMmCiAgICAgICAgIGltcC0+bWV0aG9kV2l0aE9wdGlvbmFsQXJnKCk7CiAgICAgICAgIHJldHVy
biB2OFVuZGVmaW5lZCgpOwogICAgIH0KLSAgICBWOFRSWUNBVENIKGludCwgb3B0LCB0b0ludDMy
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBvcHQsIHRvSW50MzIoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7
CiAgICAgaW1wLT5tZXRob2RXaXRoT3B0aW9uYWxBcmcob3B0KTsKICAgICByZXR1cm4gdjhVbmRl
ZmluZWQoKTsKIH0KQEAgLTE0MDIsMTIgKzE0MDIsMTIgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBtZXRob2RXaXRoTm9uT3B0aW9uYWxBcmdBbmRPcHRpb25hbEFyZ0NhbGxiYWNrKGNv
bnMKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVu
b3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50
LCBub25PcHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG5vbk9w
dCwgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRl
ZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAxKSB7CiAgICAg
ICAgIGltcC0+bWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJnQW5kT3B0aW9uYWxBcmcobm9uT3B0KTsK
ICAgICAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiAgICAgfQotICAgIFY4VFJZQ0FUQ0goaW50
LCBvcHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElz
VW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG9wdCwgdG9J
bnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQp
LCBmYWxzZSwgb2spKTsKICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZE9wdGlv
bmFsQXJnKG5vbk9wdCwgb3B0KTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE0
MTgsMTcgKzE0MTgsMTcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRo
Tm9uT3B0aW9uYWxBcmdBbmRUd29PcHRpb25hbEFyZ3NDYWxsYmFjaygKICAgICBpZiAoYXJncy5M
ZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9y
KGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBub25PcHQsIHRvSW50MzIo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOwor
ICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG5vbk9wdCwgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2sp
KTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAxKSB7CiAgICAgICAgIGltcC0+bWV0aG9kV2l0
aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdzKG5vbk9wdCk7CiAgICAgICAgIHJldHVy
biB2OFVuZGVmaW5lZCgpOwogICAgIH0KLSAgICBWOFRSWUNBVENIKGludCwgb3B0MSwgdG9JbnQz
MihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7
CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgb3B0MSwgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2sp
KTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAyKSB7CiAgICAgICAgIGltcC0+bWV0aG9kV2l0
aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdzKG5vbk9wdCwgb3B0MSk7CiAgICAgICAg
IHJldHVybiB2OFVuZGVmaW5lZCgpOwogICAgIH0KLSAgICBWOFRSWUNBVENIKGludCwgb3B0Miwg
dG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgb3B0MiwgdG9JbnQzMihN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxz
ZSwgb2spKTsKICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZFR3b09wdGlvbmFs
QXJncyhub25PcHQsIG9wdDEsIG9wdDIpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpA
QCAtMTQ4Myw3ICsxNDgzLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RX
aXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZ0NhbGxiYWNrKGNvbnMKICAgICBpZiAoYXJn
cy5MZW5ndGgoKSA8IDIpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vy
cm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBub25DYWxsYmFjaywg
dG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbm9uQ2FsbGJhY2ssIHRv
SW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSwgZmFsc2UsIG9rKSk7CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPD0gMSB8fCAhYXJnc1sxXS0+
SXNGdW5jdGlvbigpKQogICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoMCwgYXJncy5HZXRJ
c29sYXRlKCkpOwogICAgIFJlZlB0cjxUZXN0Q2FsbGJhY2s+IGNhbGxiYWNrID0gVjhUZXN0Q2Fs
bGJhY2s6OmNyZWF0ZShhcmdzWzFdLCBnZXRTY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwpAQCAt
MTUwNSw2ICsxNTA1LDUwIEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0
aENhbGxiYWNrQW5kT3B0aW9uYWxBcmdDYWxsYmFjayhjb25zdCB2ODo6CiAgICAgcmV0dXJuIHY4
VW5kZWZpbmVkKCk7CiB9CiAKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZUludDMyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sK
KyAgICBJTkNfU1RBVFMoIkRPTS5UZXN0T2JqLm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMiIp
OworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5v
dWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9
IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9GT1Jf
VFlQRUNIRUNLKGludCwgdmFsdWUsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9
CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJ
bnQzMkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgSU5DX1NUQVRT
KCJET00uVGVzdE9iai5tZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyIik7CisgICAgaWYgKGFy
Z3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNF
cnJvcihhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodW5z
aWduZWQsIHZhbHVlLCB0b1VJbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBE
ZWZhdWx0SXNVbmRlZmluZWQpLCB0cnVlLCBvaykpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9y
Y2VSYW5nZVVJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0Q2Fs
bGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBJTkNfU1RBVFMoIkRPTS5U
ZXN0T2JqLm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIpOworICAgIGlmIChhcmdzLkxlbmd0
aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJn
cy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
YXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGxvbmcgbG9uZywg
dmFsdWUsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElz
VW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJ
bnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NENhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgSU5DX1NUQVRTKCJET00uVGVzdE9iai5t
ZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0Iik7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAx
KQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElz
b2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhv
bGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodW5zaWduZWQgbG9uZyBsb25n
LCB2YWx1ZSwgdG9VSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VVSW50NjQodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCiAjaWYgRU5B
QkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9u
YWxNZXRob2QxQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKQEAgLTE1NDYsNyAr
MTU5MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRlZE1ldGhvZDFD
YWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkg
PCAyKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdl
dElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdz
LkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6
SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkp
IDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CiAgICAgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdSRVNPVVJDRShWOFN0
cmluZ1Jlc291cmNlPD4sIHN0ckFyZywgTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwg
RGVmYXVsdElzVW5kZWZpbmVkKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKG9iakFyZywg
c3RyQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKQEAgLTE1NTgsMTIgKzE2MDIsMTIg
QEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kMkNhbGxiYWNr
KGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAg
ICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0
ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVy
KCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0
YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2Jq
OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6
Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSkgOiAwKTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAxKSB7CiAgICAgICAgIGltcC0+b3Zl
cmxvYWRlZE1ldGhvZChvYmpBcmcpOwogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKICAg
ICB9Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hf
Rk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5v
dmVybG9hZGVkTWV0aG9kKG9iakFyZywgbG9uZ0FyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVk
KCk7CiB9CkBAIC0xNTg1LDcgKzE2MjksNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IG92ZXJsb2FkZWRNZXRob2Q0Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdB
cmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRv
SW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGxvbmdBcmcpOwogICAg
IHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTYwOSw3ICsxNjUzLDcgQEAgc3RhdGljIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kNkNhbGxiYWNrKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVy
biB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4
VFJZQ0FUQ0goUmVmUHRyPERPTVN0cmluZ0xpc3Q+LCBsaXN0QXJnLCB0b0RPTVN0cmluZ0xpc3Qo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJn
cy5HZXRJc29sYXRlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPERP
TVN0cmluZ0xpc3Q+LCBsaXN0QXJnLCB0b0RPTVN0cmluZ0xpc3QoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsK
ICAgICBpbXAtPm92ZXJsb2FkZWRNZXRob2QobGlzdEFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZp
bmVkKCk7CiB9CkBAIC0xNjIwLDcgKzE2NjQsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IG92ZXJsb2FkZWRNZXRob2Q3Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwog
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChSZWZQdHI8
RE9NU3RyaW5nTGlzdD4sIGFycmF5QXJnLCB0b0RPTVN0cmluZ0xpc3QoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkp
KTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPERPTVN0cmluZ0xpc3Q+LCBh
cnJheUFyZywgdG9ET01TdHJpbmdMaXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAs
IERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CiAgICAgaW1wLT5vdmVy
bG9hZGVkTWV0aG9kKGFycmF5QXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAg
LTE2MzEsNyArMTY3NSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRl
ZE1ldGhvZDhDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBv
YmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5k
bGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKG9iakFy
Zyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNjQyLDcgKzE2ODYsNyBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG92ZXJsb2FkZWRNZXRob2Q5Q2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAg
ICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkp
OwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7
Ci0gICAgVjhUUllDQVRDSChSZWZQdHI8RE9NU3RyaW5nTGlzdD4sIGFycmF5QXJnLCB0b0RPTVN0
cmluZ0xpc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0so
UmVmUHRyPERPTVN0cmluZ0xpc3Q+LCBhcnJheUFyZywgdG9ET01TdHJpbmdMaXN0KE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNv
bGF0ZSgpKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGFycmF5QXJnKTsKICAgICByZXR1
cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE2NTMsNyArMTY5Nyw3IEBAIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRlZE1ldGhvZDEwQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXJnCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhy
b3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9i
aiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNB
VENIKFZlY3Rvcjx1bnNpZ25lZD4sIGFycmF5QXJnLCB0b05hdGl2ZUFycmF5PHVuc2lnbmVkPihN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7Cisg
ICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFZlY3Rvcjx1bnNpZ25lZD4sIGFycmF5QXJnLCB0
b05hdGl2ZUFycmF5PHVuc2lnbmVkPihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBE
ZWZhdWx0SXNVbmRlZmluZWQpKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGFycmF5QXJn
KTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE3MTIsNyArMTc1Niw3IEBAIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY2xhc3NNZXRob2RXaXRoT3B0aW9uYWxDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPD0gMCkgewogICAg
ICAgICByZXR1cm4gdjhJbnRlZ2VyKFRlc3RPYmo6OmNsYXNzTWV0aG9kV2l0aE9wdGlvbmFsKCks
IGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICB9Ci0gICAgVjhUUllDQVRDSChpbnQsIGFyZywgdG9J
bnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgYXJnLCB0b0ludDMyKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBv
aykpOwogICAgIHJldHVybiB2OEludGVnZXIoVGVzdE9iajo6Y2xhc3NNZXRob2RXaXRoT3B0aW9u
YWwoYXJnKSwgYXJncy5HZXRJc29sYXRlKCkpOwogfQogCkBAIC0xNzIzLDcgKzE3NjcsNyBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG92ZXJsb2FkZWRNZXRob2QxMUNhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZwogICAgIElOQ19TVEFUUygiRE9NLlRlc3RPYmoub3Zlcmxv
YWRlZE1ldGhvZDExIik7CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1
cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7Ci0gICAg
VjhUUllDQVRDSChpbnQsIGFyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdz
LCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
KGludCwgYXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBvaykpOwogICAgIFRlc3RPYmo6Om92ZXJsb2FkZWRNZXRo
b2QxKGFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNzg0LDcgKzE4Mjgs
NyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuYWJsZWRBdFJ1bnRpbWVNZXRob2Qx
Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkK
ICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29s
YXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xk
ZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lO
R19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FU
Q0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1w
LT5lbmFibGVkQXRSdW50aW1lTWV0aG9kMShsb25nQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmlu
ZWQoKTsKIH0KQEAgLTE3OTUsNyArMTgzOSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gZW5hYmxlZEF0UnVudGltZU1ldGhvZDJDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzCiAg
ICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hB
cmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhU
ZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGludCwgbG9u
Z0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbG9uZ0FyZywg
dG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpLCBmYWxzZSwgb2spKTsKICAgICBpbXAtPmVuYWJsZWRBdFJ1bnRpbWVNZXRob2QyKGxvbmdB
cmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTgwNiw3ICsxODUwLDcgQEAg
c3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmFibGVkUGVyQ29udGV4dE1ldGhvZDFDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnQKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAg
ICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgp
KTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkp
OwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFS
QU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZP
Ul9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVS
KGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBvaykpOwogICAgIGltcC0+ZW5h
YmxlZFBlckNvbnRleHRNZXRob2QxKGxvbmdBcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgp
OwogfQpAQCAtMTgxNyw3ICsxODYxLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBl
bmFibGVkUGVyQ29udGV4dE1ldGhvZDJDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnQKICAgICBp
ZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3Vt
ZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJn
LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0lu
dDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCks
IGZhbHNlLCBvaykpOwogICAgIGltcC0+ZW5hYmxlZFBlckNvbnRleHRNZXRob2QyKGxvbmdBcmcp
OwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTgzMCw3ICsxODc0LDcgQEAgc3Rh
dGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBzdHJpbmdBcnJheUZ1bmN0aW9uQ2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXIKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwogICAgIHsKLSAg
ICBWOFRSWUNBVENIKFJlZlB0cjxET01TdHJpbmdMaXN0PiwgdmFsdWVzLCB0b0RPTVN0cmluZ0xp
c3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwg
YXJncy5HZXRJc29sYXRlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRy
PERPTVN0cmluZ0xpc3Q+LCB2YWx1ZXMsIHRvRE9NU3RyaW5nTGlzdChNQVlCRV9NSVNTSU5HX1BB
UkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkp
OwogICAgIFJlZlB0cjxET01TdHJpbmdMaXN0PiByZXN1bHQgPSBpbXAtPnN0cmluZ0FycmF5RnVu
Y3Rpb24odmFsdWVzLCBlYyk7CiAgICAgaWYgKFVOTElLRUxZKGVjKSkKICAgICAgICAgZ290byBm
YWlsOwpAQCAtMTg2Myw3ICsxOTA3LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBj
b252ZXJ0MUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGEqLCB2YWx1ZSwgVjhhOjpIYXNJ
bnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSA/IFY4YTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAg
ICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soYSosIHZhbHVlLCBWOGE6Okhhc0luc3RhbmNlKE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhh
Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFS
QU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIGltcC0+Y29u
dmVydDEodmFsdWUpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTg3NCw3ICsx
OTE4LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjb252ZXJ0MkNhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAg
ICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUo
KSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigp
KTsKLSAgICBWOFRSWUNBVENIKGIqLCB2YWx1ZSwgVjhiOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4Yjo6dG9OYXRp
dmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9U
WVBFQ0hFQ0soYiosIHZhbHVlLCBWOGI6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhiOjp0b05hdGl2ZSh2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERl
ZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIGltcC0+Y29udmVydDIodmFsdWUpOwogICAg
IHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTg4NSw3ICsxOTI5LDcgQEAgc3RhdGljIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBjb252ZXJ0NENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMm
IGFyZ3MpCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dO
b3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiog
aW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENI
KGQqLCB2YWx1ZSwgVjhkOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdz
LCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4ZDo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6
T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soZCosIHZhbHVl
LCBWOGQ6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCkpID8gVjhkOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpD
YXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkp
KSA6IDApOwogICAgIGltcC0+Y29udmVydDQodmFsdWUpOwogICAgIHJldHVybiB2OFVuZGVmaW5l
ZCgpOwogfQpAQCAtMTg5Niw3ICsxOTQwLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBjb252ZXJ0NUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgaWYgKGFy
Z3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNF
cnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGUqLCB2YWx1ZSwgVjhlOjpI
YXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSA/IFY4ZTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soZSosIHZhbHVlLCBWOGU6Okhhc0luc3RhbmNl
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8g
VjhlOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdf
UEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIGltcC0+
Y29udmVydDUodmFsdWUpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTkzMiw4
ICsxOTc2LDggQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBzdHJpY3RGdW5jdGlvbkNh
bGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9
IDA7CiAgICAgewogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhTdHJpbmdS
ZXNvdXJjZTw+LCBzdHIsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJ
c1VuZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goZmxvYXQsIGEsIHN0YXRpY19jYXN0PGZsb2F0
PihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLT5O
dW1iZXJWYWx1ZSgpKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGIsIHRvSW50MzIoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZ
Q0FUQ0hfRk9SX1RZUEVDSEVDSyhmbG9hdCwgYSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVmaW5lZCktPk51bWJlclZhbHVl
KCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBiLCB0b0ludDMyKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBv
aykpOwogICAgIFJlZlB0cjxib29sPiByZXN1bHQgPSBpbXAtPnN0cmljdEZ1bmN0aW9uKHN0ciwg
YSwgYiwgZWMpOwogICAgIGlmIChVTkxJS0VMWShlYykpCiAgICAgICAgIGdvdG8gZmFpbDsKQEAg
LTE5NjEsNyArMjAwNSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFyaWFkaWNE
b3VibGVNZXRob2RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGRvdWJsZSwgaGVhZCwgc3RhdGlj
X2Nhc3Q8ZG91YmxlPihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpLT5OdW1iZXJWYWx1ZSgpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
KGRvdWJsZSwgaGVhZCwgc3RhdGljX2Nhc3Q8ZG91YmxlPihNQVlCRV9NSVNTSU5HX1BBUkFNRVRF
UihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLT5OdW1iZXJWYWx1ZSgpKSk7CiAgICAgVjhU
UllDQVRDSChWZWN0b3I8ZG91YmxlPiwgdGFpbCwgdG9OYXRpdmVBcmd1bWVudHM8ZG91YmxlPihh
cmdzLCAxKSk7CiAgICAgaW1wLT52YXJpYWRpY0RvdWJsZU1ldGhvZChoZWFkLCB0YWlsKTsKICAg
ICByZXR1cm4gdjhVbmRlZmluZWQoKTsKQEAgLTE5NzMsNyArMjAxNyw3IEBAIHN0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdmFyaWFkaWNOb2RlTWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJnCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4g
dGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVz
dE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRS
WUNBVENIKE5vZGUqLCBoZWFkLCBWOE5vZGU6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFS
QU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhOb2RlOjp0b05hdGl2ZSh2
ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3Ms
IDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVD
SEVDSyhOb2RlKiwgaGVhZCwgVjhOb2RlOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4Tm9kZTo6dG9OYXRpdmUodjg6
OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAw
LCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBWZWN0b3I8UmVmUHRyPE5vZGU+ID4g
dGFpbDsKICAgICBmb3IgKGludCBpID0gMTsgaSA8IGFyZ3MuTGVuZ3RoKCk7ICsraSkgewogICAg
ICAgICBpZiAoIVY4Tm9kZTo6SGFzSW5zdGFuY2UoYXJnc1tpXSkpCkBAIC0yMTQ4LDYgKzIxOTIs
MTAgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6QmF0Y2hlZENhbGxiYWNrIFY4
VGVzdE9iakNhbGxiYWNrc1tdID0gewogICAgIHsibWV0aG9kV2l0aENhbGxiYWNrQXJnIiwgVGVz
dE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhDYWxsYmFja0FyZ0NhbGxiYWNrfSwKICAgICB7Im1l
dGhvZFdpdGhOb25DYWxsYmFja0FyZ0FuZENhbGxiYWNrQXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6
Om1ldGhvZFdpdGhOb25DYWxsYmFja0FyZ0FuZENhbGxiYWNrQXJnQ2FsbGJhY2t9LAogICAgIHsi
bWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxBcmciLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0
aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxBcmdDYWxsYmFja30sCisgICAgeyJtZXRob2RXaXRo
RW5mb3JjZVJhbmdlSW50MzIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VS
YW5nZUludDMyQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMiIs
IFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyQ2FsbGJhY2t9
LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6
Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NENhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhF
bmZvcmNlUmFuZ2VVSW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VS
YW5nZVVJbnQ2NENhbGxiYWNrfSwKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKICAgICB7ImNvbmRp
dGlvbmFsTWV0aG9kMSIsIFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbE1ldGhvZDFDYWxs
YmFja30sCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
LmNwcAppbmRleCAzZTUzNWFkYzA1NDYzOTkxZWVkNzM1YTQ3YjIxY2RiM2IzMzA2NDVhLi5kNzYy
ZGVmMjM1MTcxOWQ4MjQ1NTgyNWI5YmI1ZjBhOGM3NWMyNDkxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCkBAIC00OSw3ICs0OSw3IEBAIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBWOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpjb25zdHJ1Y3RvcjFD
YWxsYmFjayhjb25zdCB2CiB7CiAgICAgSU5DX1NUQVRTKCJET00uVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnMuQ29uc3RydWN0b3IxIik7CiAgICAgCi0gICAgVjhUUllDQVRDSChBcnJheUJ1ZmZl
ciosIGFycmF5QnVmZmVyLCBWOEFycmF5QnVmZmVyOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4QXJyYXlCdWZmZXI6
OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRD
SF9GT1JfVFlQRUNIRUNLKEFycmF5QnVmZmVyKiwgYXJyYXlCdWZmZXIsIFY4QXJyYXlCdWZmZXI6
Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpID8gVjhBcnJheUJ1ZmZlcjo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0
Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSkgOiAwKTsKIAogICAgIFJlZlB0cjxUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycz4gaW1w
bCA9IFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpjcmVhdGUoYXJyYXlCdWZmZXIpOwogICAg
IHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGFyZ3MuSG9sZGVyKCk7CkBAIC02Miw3
ICs2Miw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzOjpjb25zdHJ1Y3RvcjJDYWxsYmFjayhjb25zdCB2CiB7CiAgICAgSU5DX1NUQVRTKCJET00u
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuQ29uc3RydWN0b3IyIik7CiAgICAgCi0gICAgVjhU
UllDQVRDSChBcnJheUJ1ZmZlclZpZXcqLCBhcnJheUJ1ZmZlclZpZXcsIFY4QXJyYXlCdWZmZXJW
aWV3OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpKSA/IFY4QXJyYXlCdWZmZXJWaWV3Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJ
c1VuZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhBcnJheUJ1
ZmZlclZpZXcqLCBhcnJheUJ1ZmZlclZpZXcsIFY4QXJyYXlCdWZmZXJWaWV3OjpIYXNJbnN0YW5j
ZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/
IFY4QXJyYXlCdWZmZXJWaWV3Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6
IDApOwogCiAgICAgUmVmUHRyPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzPiBpbXBsID0gVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM6OmNyZWF0ZShhcnJheUJ1ZmZlclZpZXcpOwogICAgIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGFyZ3MuSG9sZGVyKCk7CkBAIC03NSw3ICs3
NSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
Ojpjb25zdHJ1Y3RvcjNDYWxsYmFjayhjb25zdCB2CiB7CiAgICAgSU5DX1NUQVRTKCJET00uVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuQ29uc3RydWN0b3IzIik7CiAgICAgCi0gICAgVjhUUllD
QVRDSChCbG9iKiwgYmxvYiwgVjhCbG9iOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4QmxvYjo6dG9OYXRpdmUodjg6
OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAw
LCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hF
Q0soQmxvYiosIGJsb2IsIFY4QmxvYjo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOEJsb2I6OnRvTmF0aXZlKHY4OjpI
YW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAKICAgICBSZWZQdHI8VGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnM+IGltcGwgPSBUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6Y3JlYXRlKGJs
b2IpOwogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGFyZ3MuSG9sZGVyKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAppbmRleCAyYjVmNzQzNWVk
NTVlY2NjZmI4NzY5MjA4YzI3OWZiZjkwY2FlYTc1Li4wODVlNGI2MjFjOWQyOTAwZDAwZjRmOTVj
ZGVmNTZmMjk0YjBjMmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5j
cHAKQEAgLTExMiw0MCArMTEyLDQ1IEBAIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmls
dGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxsYmFjaykKICAgICByZXR1cm4gTm9kZUZpbHRl
cjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlvbjo6Y3JlYXRlKGNhbGxiYWNrKSk7CiB9CiAK
LWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCitpbnQz
Ml90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sIGVuZm9yY2VSYW5n
ZSwgYm9vbCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwotICAgIAorCiAgICAgLy8gRmFzdCBjYXNl
LiBUaGUgdmFsdWUgaXMgYWxyZWFkeSBhIDMyLWJpdCBpbnRlZ2VyLgogICAgIGlmICh2YWx1ZS0+
SXNJbnQzMigpKQogICAgICAgICByZXR1cm4gdmFsdWUtPkludDMyVmFsdWUoKTsKLSAgICAKKwog
ICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyPwogICAgIHY4OjpM
b2NhbDx2ODo6TnVtYmVyPiBudW1iZXJPYmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIoKTsKICAgICBp
ZiAobnVtYmVyT2JqZWN0LklzRW1wdHkoKSkgewogICAgICAgICBvayA9IGZhbHNlOwogICAgICAg
ICByZXR1cm4gMDsKICAgICB9Ci0gICAgCisKKyAgICBpZiAoZW5mb3JjZVJhbmdlKSB7CisgICAg
ICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOworICAgICAgICBpZiAoaXNuYW4o
eCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29y
KGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IC0weDgwMDAwMDAgfHwgeCA+IDB4N2ZmZmZmZmYp
IHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgfQorCisgICAgICAgIHJldHVybiB4OworICAgIH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVl
IGNvbnZlcnQgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1
ZSA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKLSAgICBpZiAoaXNuYW4obnVtYmVyVmFsdWUpIHx8
IGlzaW5mKG51bWJlclZhbHVlKSkgewotICAgICAgICBvayA9IGZhbHNlOworICAgIGlmIChpc25h
bihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFsdWUpKQogICAgICAgICByZXR1cm4gMDsK
LSAgICB9Ci0gICAgCi0gICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAzMi1i
aXQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6OkludDMyPiBpbnRWYWx1ZSA9IHZhbHVlLT5U
b0ludDMyKCk7Ci0gICAgaWYgKGludFZhbHVlLklzRW1wdHkoKSkgewotICAgICAgICBvayA9IGZh
bHNlOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgLy8gUmV0dXJuIHRoZSBy
ZXN1bHQgb2YgdGhlIGludDMyIGNvbnZlcnNpb24uCi0gICAgcmV0dXJuIGludFZhbHVlLT5WYWx1
ZSgpOworCisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+SW50MzJWYWx1ZSgpOwogfQotICAgIAot
dWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykK
KwordWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sIGVu
Zm9yY2VSYW5nZSwgYm9vbCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwogCkBAIC0xNTMsNiArMTU4
LDcgQEAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29s
JiBvaykKICAgICBpZiAodmFsdWUtPklzVWludDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+
VWludDMyVmFsdWUoKTsKIAorICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0
IHNpZ25lZCBpbnRlZ2VyIC0gcG9zc2libHkgcG9zaXRpdmU/CiAgICAgaWYgKHZhbHVlLT5Jc0lu
dDMyKCkpIHsKICAgICAgICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+SW50MzJWYWx1ZSgpOwog
ICAgICAgICBpZiAocmVzdWx0ID49IDApCkBAIC0xNjYsMjEgKzE3MiwxMDYgQEAgdWludDMyX3Qg
dG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKICAgICAgICAg
cmV0dXJuIDA7CiAgICAgfQogCisgICAgaWYgKGVuZm9yY2VSYW5nZSkgeworICAgICAgICBkb3Vi
bGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKyAgICAgICAgaWYgKGlzbmFuKHgpIHx8IGlz
aW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgp
KTsKKyAgICAgICAgaWYgKHggPCAwIHx8IHggPiAweGZmZmZmZmZmKSB7CisgICAgICAgICAgICBv
ayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICBy
ZXR1cm4geDsKKyAgICB9CisKICAgICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBv
ciB0byBhbiBpbmZpbml0eT8KICAgICBkb3VibGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3Qt
PlZhbHVlKCk7Ci0gICAgaWYgKGlzbmFuKG51bWJlclZhbHVlKSB8fCBpc2luZihudW1iZXJWYWx1
ZSkpIHsKKyAgICBpZiAoaXNuYW4obnVtYmVyVmFsdWUpIHx8IGlzaW5mKG51bWJlclZhbHVlKSkK
KyAgICAgICAgcmV0dXJuIDA7CisKKyAgICByZXR1cm4gbnVtYmVyT2JqZWN0LT5VaW50MzJWYWx1
ZSgpOworfQorCitpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBi
b29sIGVuZm9yY2VSYW5nZSwgYm9vbCYgb2spCit7CisgICAgb2sgPSB0cnVlOworCisgICAgLy8g
RmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUt
PklzSW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5JbnQzMlZhbHVlKCk7CisKKyAgICAv
LyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8
djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51
bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0
dXJuIDA7CiAgICAgfQogCi0gICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAz
Mi1iaXQgdW5zaWduZWQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6OlVpbnQzMj4gdWludFZh
bHVlID0gdmFsdWUtPlRvVWludDMyKCk7Ci0gICAgaWYgKHVpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsK
KyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlmIChlbmZvcmNl
UmFuZ2UpIHsKKyAgICAgICAgaWYgKGlzbmFuKHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAg
ICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAg
eCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAt
KGtKU01heEludGVnZXIgLSAxKSB8fCB4ID4gKGtKU01heEludGVnZXIgLSAxKSkgeworICAgICAg
ICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAg
ICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNob3Vs
ZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25nIGlu
dGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgsIGludGVnZXIpOworICAgIHJldHVybiBpbnRl
Z2VyOworfQorCit1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUs
IGJvb2wgZW5mb3JjZVJhbmdlLCBib29sJiBvaykKK3sKKyAgICBvayA9IHRydWU7CisKKyAgICAv
LyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLgorICAg
IGlmICh2YWx1ZS0+SXNVaW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1
ZSgpOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4K
KyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgeworICAgICAgICBpbnQzMl90IHJlc3VsdCA9IHZh
bHVlLT5JbnQzMlZhbHVlKCk7CisgICAgICAgIGlmIChyZXN1bHQgPj0gMCkKKyAgICAgICAgICAg
IHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0
ZWQgdG8gYSBudW1iZXI/CisgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9
IHZhbHVlLT5Ub051bWJlcigpOworICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAg
ICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIHJldHVy
biB1aW50VmFsdWUtPlZhbHVlKCk7CisgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVl
KCk7CisKKyAgICBpZiAoZW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGlmIChpc25hbih4KSB8fCBp
c2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAw
OworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4
KSk7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4gKGtKU01heEludGVnZXIgLSAxKSkgeworICAg
ICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9Cisg
ICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNo
b3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25n
IGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgsIGludGVnZXIpOworICAgIHJldHVybiBp
bnRlZ2VyOwogfQogCiB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gY3JlYXRl
UmF3VGVtcGxhdGUoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhC
aW5kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAppbmRleCAx
YzNlOTUxMTMwYTBmMTk5NDBlNjAwYWI3MTFlMDlhZTExYjE5OTE4Li5iYjU3Njc5OWQ0YzIxYTBh
ZjAwYzRhNWU2ODM5NWE3MmFkOGY0MDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOEJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJp
bmRpbmcuaApAQCAtNTYsNiArNTYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3Mg
V29ybGRDb250ZXh0SGFuZGxlOwogCiAgICAgY29uc3QgaW50IGtNYXhSZWN1cnNpb25EZXB0aCA9
IDIyOworICAgIGNvbnN0IGxvbmcgbG9uZyBrSlNNYXhJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAw
MExMOwogCiAgICAgLy8gU2NoZWR1bGUgYSBET00gZXhjZXB0aW9uIHRvIGJlIHRocm93biwgaWYg
dGhlIGV4Y2VwdGlvbiBjb2RlIGlzIGRpZmZlcmVudAogICAgIC8vIGZyb20gemVyby4KQEAgLTM1
OSwyMCArMzYwLDI0IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIFBhc3NSZWZQdHI8Tm9k
ZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPik7CiAKLSAgICAvLyBD
b252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50ZWdlci4gIFRoZSBjb252ZXJzaW9uIGZhaWxz
IGlmIHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBv
ciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgaW50IHRvSW50MzIodjg6
OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvayk7CisgICAgLy8gQ29udmVydCBhIHZh
bHVlIHRvIGEgMzItYml0IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0
aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSBy
YW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dl
YklETC8jZXMtbG9uZworICAgIGludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4s
IGJvb2wgZW5mb3JjZVJhbmdlLCBib29sJiBvayk7CisgICAgaW5saW5lIGludDMyX3QgdG9JbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b0ludDMy
KHZhbHVlLCBmYWxzZSwgb2spOyB9CiAKICAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1i
aXQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KLSAgICBpbmxp
bmUgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQorICAgIGlubGluZSBp
bnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKICAgICAg
ICAgYm9vbCBvazsKICAgICAgICAgcmV0dXJuIHRvSW50MzIodmFsdWUsIG9rKTsKICAgICB9CiAK
LSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlci4gIFRo
ZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0
ZWQgdG8gYW4gdW5zaWduZWQgaW50ZWdlciBvciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5m
aW5pdHkuCi0gICAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVl
LCBib29sJiBvayk7CisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVk
IGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5v
dCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJ
REw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy11bnNpZ25lZC1sb25n
CisgICAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+LCBib29sIGVuZm9y
Y2VSYW5nZSwgYm9vbCYgb2spOworICAgIGlubGluZSB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b1VJbnQzMih2YWx1ZSwg
ZmFsc2UsIG9rKTsgfQogCiAgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2ln
bmVkIGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCiAgICAgaW5s
aW5lIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKQEAgLTM4
MSwxNCArMzg2LDM1IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgcmV0dXJuIHRvVUlu
dDMyKHZhbHVlLCBvayk7CiAgICAgfQogCi0gICAgaW5saW5lIGZsb2F0IHRvRmxvYXQodjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0
IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1
ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBw
ZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtbG9uZy1s
b25nCisgICAgaW50NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgYm9vbCBlbmZv
cmNlUmFuZ2UsIGJvb2wmIG9rKTsKKworICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJp
dCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgorICAgIGlubGlu
ZSBpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAg
ICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7Cisg
ICAgICAgIGJvb2wgb2s7CisgICAgICAgIGNvbnN0IGJvb2wgZW5mb3JjZVJhbmdlID0gZmFsc2U7
CisgICAgICAgIHJldHVybiB0b0ludDY0KHZhbHVlLCBlbmZvcmNlUmFuZ2UsIG9rKTsKICAgICB9
CiAKLSAgICBpbmxpbmUgbG9uZyBsb25nIHRvSW50NjQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFs
dWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIu
IFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252
ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAg
Ly8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy11bnNpZ25lZC1sb25nLWxvbmcKKyAg
ICB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIGJvb2wgZW5mb3JjZVJh
bmdlLCBib29sJiBvayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgdW5z
aWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KKyAgICBp
bmxpbmUgdWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAg
IHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGxvbmcgbG9uZz4odmFsdWUtPkludGVnZXJW
YWx1ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAgICAgICAgY29uc3QgYm9vbCBlbmZvcmNlUmFu
Z2UgPSBmYWxzZTsKKyAgICAgICAgcmV0dXJuIHRvVUludDY0KHZhbHVlLCBlbmZvcmNlUmFuZ2Us
IG9rKTsKKyAgICB9CisKKyAgICBpbmxpbmUgZmxvYXQgdG9GbG9hdCh2ODo6TG9jYWw8djg6OlZh
bHVlPiB2YWx1ZSkKKyAgICB7CisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxmbG9hdD4odmFs
dWUtPk51bWJlclZhbHVlKCkpOwogICAgIH0KIAogICAgIGlubGluZSBib29sIGlzVW5kZWZpbmVk
T3JOdWxsKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKaW5kZXggNmNhNThjM2Y3Njg0MmMzNTkzMTBmZGQ2
YzcxMmI5YTA0M2UyYmI2YS4uMjVhMTNlMzU4YjM1YjFiZTMxMjM3OGQ2OThkYjMwZDcyZjNhYzNl
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9z
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKQEAg
LTUzLDcgKzUzLDIxIEBAIGVudW0gUGFyYW1ldGVyRGVmYXVsdFBvbGljeSB7CiAgICAgICAgICAg
ICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICBcCiAgICAgfQogCi0jZGVmaW5lIFY4VFJZ
Q0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UodHlwZSwgdmFyLCB2YWx1ZSkgXAorI2RlZmluZSBW
OFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodHlwZSwgdmFyLCB2YWx1ZSkgXAorICAgIHR5cGUgdmFy
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBib29sIG9rID0g
dHJ1ZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgdjg6OlRyeUNhdGNo
IGJsb2NrOyAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgdmFyID0gKHZhbHVlKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgaWYgKGJsb2NrLkhhc0NhdWdo
dCgpKSAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgIHJldHVybiBibG9jay5SZVRo
cm93KCk7ICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAoIW9rKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKDApOyAgICAg
ICAgICAgICAgXAorICAgIH0KKworI2RlZmluZSBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09V
UkNFKHR5cGUsIHZhciwgdmFsdWUpICAgICAgIFwKICAgICB0eXBlIHZhcih2YWx1ZSk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgaWYgKCF2YXIucHJl
cGFyZSgpKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAg
ICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGFmY2IwN2VkOTRlYWRhODAyNmVhZDEz
YzhiYWM2NjVlNmE4MTQ2ODUuLmYzZmQ1MzM5MjEzNzdhNGM5MjE3NGIzNjQyM2U1MjE1YjE2MGYx
ZDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0xMi0yNyAgSm9zaHVhIEJlbGwgIDxqc2Jl
bGxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtWOF0gQmluZGluZzogSW1wbGVtZW50IEVuZm9y
Y2VSYW5nZSBJREwgQXR0cmlidXRlIGZvciBsb25nIGxvbmcgY29udmVyc2lvbnMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk2Nzk4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRk
Yi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9y
YWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qczoKKyAg
ICAgICAgKGRlbGV0ZVN1Y2Nlc3MpOgorCiAyMDEyLTEyLTI2ICBSeW9zdWtlIE5pd2EgIDxybml3
YUB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBhIE1hYyB0ZXN0IGV4cGVjdGF0aW9ucyBmb3Ig
YnVncyAxMDU3NzcgYW5kIDEwNTc3OC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3Rl
ZC50eHQKaW5kZXggMWU4YmQ1N2JkMzExYjgyY2U5ZjI0OGJkZDc0NjQ0YmMyZjAyZDZkNS4uMTQ1
NTdkNDUzNjZkZGYzNDFiNmMwMTIwNzBlMjg5MTIzYTExODg3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQt
cGFyYW1ldGVycy1leHBlY3RlZC50eHQKQEAgLTE4LDYgKzE4LDE1IEBAIFBBU1MgaW5kZXhlZERC
Lm9wZW4oZGJuYW1lLCAwKSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKIEV4cGVjdGluZyBU
eXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkKIFBBU1Mg
RXhjZXB0aW9uIHdhcyB0aHJvd24uCiBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpIHRo
cmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24g
ZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIEluZmluaXR5KQorUEFTUyBFeGNlcHRpb24gd2Fz
IHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZpbml0eSkgdGhyZXcgVHlw
ZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGlu
ZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmluaXR5KQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93
bi4KK1BBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpIHRocmV3IFR5cGVFcnJv
cjogVHlwZSBlcnJvcgorRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVk
REIub3BlbihkYm5hbWUsIE5hTikKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGlu
ZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKIEV4
cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAt
MSkKIFBBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCiBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgLTEpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMu
anMgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1i
YWQtcGFyYW1ldGVycy5qcwppbmRleCBhZjM1ZjJkNGJjODJiMGJjZGI1YjAxNDhjNjMwZjIxNTM5
NjNiZmMxLi5kMzM5YzMyYzFjNmIxMTQ5N2UxY2M4OWQwYzA3MzVhYTM5OTk3NDc4IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1i
YWQtcGFyYW1ldGVycy5qcworKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNv
dXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcwpAQCAtMjAsNiArMjAsOSBAQCBmdW5j
dGlvbiBkZWxldGVTdWNjZXNzKGV2dCkgewogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFz
cygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAnc3RyaW5ndmVyc2lvbicpIiwgIlR5cGVFcnJvciIp
OwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1l
LCAwKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImlu
ZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBl
Y3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZpbml0eSkiLCAiVHlw
ZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3Bl
bihkYm5hbWUsIC1JbmZpbml0eSkiLCAiVHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4
Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIE5hTikiLCAiVHlwZUVycm9yIik7
CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUs
IC0xKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImlu
ZGV4ZWREQi5vcGVuKGRibmFtZSwgMHgyMDAwMDAwMDAwMDAwMCkiLCAiVHlwZUVycm9yIik7CiAg
ICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIG51
bGwpIiwgIlR5cGVFcnJvciIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181764</attachid>
            <date>2013-01-08 14:25:04 -0800</date>
            <delta_ts>2013-02-12 16:41:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130108142208.patch</filename>
            <type>text/plain</type>
            <size>97016</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MDEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmI4MzAwNTdiNmQxYTg2
MzkxNzc1OGE0ZmI2ODdmNWMzM2MyYjQ4OS4uMmI5MWFiMjdlNDM1ZTIwMzliOGEyNjM2NmE4ZWE1
MzU4YmYzNzRiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTEyLTI3ICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUg
W0VuZm9yY2VSYW5nZV0gZXh0ZW5kZWQgYXR0cmlidXRlIGluIElETCBkZWZpbmVzIHRocm93aW5n
IGJlaGF2aW9yIGZvciBzaWduZWQvdW5zaWduZWQKKyAgICAgICAgbG9uZy9sb25nIGxvbmcgY29u
dmVyc2lvbnMgZm9yIE5hTnMsIGluZmluaXRpZXMsIGFuZCB2YWx1ZXMgPj0gMl4zMiAvIDJeNTMu
IFRoaXMgcGF0Y2gKKyAgICAgICAgaW1wbGVtZW50cyB0aGlzIGJlaGF2aW9yIGFuZCByZW1vdmVz
IHJlZHVuZGFudCBjb2RlIGluIHRoZSBJbmRleGVkREIgaW1wbGVtZW50YXRpb24uCisKKyAgICAg
ICAgQWRkZWQgZXhhbXBsZXMgb2YgW0VuZm9yY2VSYW5nZV0gYXR0cmlidXRlcywgdXBkYXRlZCBi
aW5kaW5nIHRlc3QgcmVzdWx0cywKKyAgICAgICAgYW5kIHVwZGF0ZWQgcmVsZXZhbnQgSW5kZXhl
ZERCIHRlc3RzOgorICAgICAgICAgIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBh
cmFtZXRlcnMuaHRtbAorICAgICAgICAgIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tZW5j
b2RpbmcuaHRtbAorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OklEQkN1cnNvcjo6YWR2YW5jZSk6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmg6CisgICAgICAgIChJREJDdXJzb3IpOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCRmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJGYWN0b3J5OjpvcGVu
KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5Lmg6CisgICAgICAgIChJ
REJGYWN0b3J5KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAg
KEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKToKKyAgICAgICAgKEpTVmFsdWVUb05hdGl2ZSk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGw6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHA6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5k
aW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50MzIpOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0
KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9W
OEJpbmRpbmcuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6dG9JbnQz
Mik6CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0lu
dDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRv
RmxvYXQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oOgorCiAyMDEz
LTAxLTA3ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgSW50cm9k
dWNlIEhUTUxQYXJzZXJPcHRpb25zIHRvIGVuY2Fwc3VsYXRlIEhUTUwgcGFyc2VyIG9wdGlvbnMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCmluZGV4
IGQ0MTFkYTkzNzVlZmFiOTEwY2JkNjVlN2Q5YjFlNDRjOTMwODNkYzEuLjAwNTM1ZjI2MjU0YTVh
NjljYmQ0ZjZiZDEzNzczYjNjYzBkOTdjNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcApAQCAtMTU1LDcgKzE1NSw3IEBAIFBhc3NSZWZQdHI8
SURCUmVxdWVzdD4gSURCQ3Vyc29yOjp1cGRhdGUoU2NyaXB0U3RhdGUqIHN0YXRlLCBTY3JpcHRW
YWx1ZSYgdmFsdWUsCiAgICAgcmV0dXJuIG9iamVjdFN0b3JlLT5wdXQoSURCT2JqZWN0U3RvcmVC
YWNrZW5kSW50ZXJmYWNlOjpDdXJzb3JVcGRhdGUsIElEQkFueTo6Y3JlYXRlKHRoaXMpLCBzdGF0
ZSwgdmFsdWUsIG1fY3VycmVudFByaW1hcnlLZXksIGVjKTsKIH0KIAotdm9pZCBJREJDdXJzb3I6
OmFkdmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgSURCQ3Vy
c29yOjphZHZhbmNlKHVuc2lnbmVkIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewog
ICAgIElEQl9UUkFDRSgiSURCQ3Vyc29yOjphZHZhbmNlIik7CiAgICAgaWYgKCFtX2dvdFZhbHVl
KSB7CkBAIC0xNjgsOCArMTY4LDcgQEAgdm9pZCBJREJDdXJzb3I6OmFkdmFuY2UobG9uZyBsb25n
IGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hlY2sgZm9yIDAgb25jZSB3ZWJr
aXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgaWYgKGNvdW50IDwgMSB8fCBjb3VudCA+IFVJTlRf
TUFYKSB7CisgICAgaWYgKCFjb3VudCkgewogICAgICAgICBlYyA9IFR5cGVFcnJvcjsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
Q3Vyc29yLmgKaW5kZXggMmIwNTkwN2JmNmM2Zjk1YTVmZGNmOWNhZjkzZTFhYzllZWY5NWI0OS4u
ZmMzMjk4N2ZjZjE2NTE4OWUwM2U5MzA4NDM3MzNhN2Q1YmQ5MTI0ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKQEAgLTc4LDggKzc4LDcgQEAgcHVi
bGljOgogICAgIElEQkFueSogc291cmNlKCkgY29uc3Q7CiAKICAgICBQYXNzUmVmUHRyPElEQlJl
cXVlc3Q+IHVwZGF0ZShTY3JpcHRTdGF0ZSosIFNjcmlwdFZhbHVlJiwgRXhjZXB0aW9uQ29kZSYp
OwotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgdW5zaWduZWQgbG9uZyBvbmNlIHdlYmtpdC5vcmcv
Yi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UobG9uZyBsb25nLCBFeGNlcHRpb25Db2Rl
Jik7CisgICAgdm9pZCBhZHZhbmNlKHVuc2lnbmVkIGxvbmcsIEV4Y2VwdGlvbkNvZGUmKTsKICAg
ICB2b2lkIGNvbnRpbnVlRnVuY3Rpb24oUGFzc1JlZlB0cjxJREJLZXk+LCBFeGNlcHRpb25Db2Rl
Jik7CiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBkZWxldGVGdW5jdGlvbihTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgRXhjZXB0aW9uQ29kZSYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbAppbmRleCA2NDYyMDc3ZDBhY2M2NWYzYmU5OGNm
ZTk5OGFiNTdmYzU2YTVlZjkwLi44YzgyZjhjNGVhYjYwZjc4ZDEyMTExY2Y4MTkxZTNlYjZjYzJh
YmVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3IuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5p
ZGwKQEAgLTM1LDggKzM1LDcgQEAKIAogICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZV0gSURCUmVx
dWVzdCB1cGRhdGUoaW4gYW55IHZhbHVlKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7
Ci0gICAgLy8gRklYTUU6IE1ha2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIG9u
Y2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgotICAgIHZvaWQgYWR2YW5jZShpbiBsb25nIGxv
bmcgY291bnQpCisgICAgdm9pZCBhZHZhbmNlKGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxv
bmcgY291bnQpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICBbSW1wbGVtZW50
ZWRBcz1jb250aW51ZUZ1bmN0aW9uXSB2b2lkIGNvbnRpbnVlKGluIFtPcHRpb25hbF0gSURCS2V5
IGtleSkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcAppbmRleCA4NDBjYTk4ZWRhMzIzOTI4
ODRhZTUzMDM5YTFjOGIxNTQ0MjM0OThmLi45YTZlZDJlYTM5ZGI5MjQzZjVjNDA0MWY0MGY3NWVl
MzcwMDJhM2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJGYWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5LmNwcApAQCAtMTA1LDExICsxMDUsOSBAQCBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IElE
QkZhY3Rvcnk6OmdldERhdGFiYXNlTmFtZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udAog
ICAgIHJldHVybiByZXF1ZXN0OwogfQogCi1QYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IElE
QkZhY3Rvcnk6Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBpbnQ2NF90IHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmIGVjKQorUGFzc1JlZlB0
cjxJREJPcGVuREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgbmFtZSwgdW5zaWduZWQgbG9uZyBsb25nIHZlcnNp
b24sIEV4Y2VwdGlvbkNvZGUmIGVjKQogewotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5
IG5lZWQgdG8gY2hlY2sgZm9yIDAgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAg
Y29uc3QgaW50NjRfdCBtYXhFQ01BU2NyaXB0SW50ZWdlciA9IDB4MjAwMDAwMDAwMDAwMDBMTCAt
IDE7Ci0gICAgaWYgKHZlcnNpb24gPCAxIHx8IHZlcnNpb24gPiBtYXhFQ01BU2NyaXB0SW50ZWdl
cikgeworICAgIGlmICghdmVyc2lvbikgewogICAgICAgICBlYyA9IFR5cGVFcnJvcjsKICAgICAg
ICAgcmV0dXJuIDA7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCRmFjdG9yeS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRmFjdG9yeS5oCmluZGV4IDE4NTdiYTQyYTM3ZTY1NjU0YzYyNGI3YWJiNDJiNmVmZGVlM2I5
MjguLjQxNGExYmQ4ZmY2NTU5ZTI3NDE5Yzk5YzNkOTk1N2VlYTk2MDEyNWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgKQEAgLTU5LDcgKzU5LDcg
QEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gZ2V0RGF0YWJhc2VOYW1lcyhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0Kik7CiAKICAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVl
c3Q+IG9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgRXhj
ZXB0aW9uQ29kZSYpOwotICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZlcnNpb24s
IEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9wZW4o
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgdW5zaWduZWQgbG9u
ZyBsb25nIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPElEQlZlcnNp
b25DaGFuZ2VSZXF1ZXN0PiBkZWxldGVEYXRhYmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICBzaG9ydCBjbXAoUGFz
c1JlZlB0cjxJREJLZXk+IGZpcnN0LCBQYXNzUmVmUHRyPElEQktleT4gc2Vjb25kLCBFeGNlcHRp
b25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJGYWN0b3J5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsCmluZGV4IGExODA4MjM4MTJmZGU2OTEyMGU0MzI0MGUxOTE2NTkwYTIwZWUwMjMuLjcw
NDdjMjQ3Nzg4ZTdkYTAxYThjYmNmMWQ5MTRjZGFmYjZiMzkyYzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCkBAIC0yOSw4ICsyOSw3IEBA
CiBdIGludGVyZmFjZSBJREJGYWN0b3J5IHsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9u
Q29udGV4dCwgSW1wbGVtZW50ZWRBcz1nZXREYXRhYmFzZU5hbWVzXSBJREJSZXF1ZXN0IHdlYmtp
dEdldERhdGFiYXNlTmFtZXMoKTsKIAotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgW0VuZm9yY2VS
YW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgot
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IG9w
ZW4oaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtPcHRpb25hbF0gbG9uZyBsb25nIHZlcnNpb24pCisg
ICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQk9wZW5EQlJlcXVlc3Qgb3Bl
bihpbiBET01TdHJpbmcgbmFtZSwgaW4gW0VuZm9yY2VSYW5nZSwgT3B0aW9uYWxdIHVuc2lnbmVk
IGxvbmcgbG9uZyB2ZXJzaW9uKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CiAgICAg
W0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQlZlcnNpb25DaGFuZ2VSZXF1ZXN0
IGRlbGV0ZURhdGFiYXNlKGluIERPTVN0cmluZyBuYW1lKQogICAgICAgICByYWlzZXMgKERPTUV4
Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvclY4LnBtCmluZGV4IDA3Y2IyZGQ4NTU3NmQyNGVkMzQ3MTY2M2Q5YTRhYWI3MWY3YTY1
OGEuLjhlNDRiNWViODlhNmY4MmI3NmNjZjE0YjRhZjc2MWFjNjMzM2Y4OWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCkBAIC0x
MjMxLDE1ICsxMjMxLDE3IEBAIEVORAogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNs
cywgIiAgICAgICAgcmV0dXJuO1xuIik7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAg
ICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFs
dWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgbXkgJGFycmF5VHlwZSA9ICRjb2Rl
R2VuZXJhdG9yLT5HZXRBcnJheVR5cGUoJG5hdGl2ZVR5cGUpOwogCiAgICAgICAgIGlmICgkbmF0
aXZlVHlwZSA9fiAvXlY4U3RyaW5nUmVzb3VyY2UvKSB7CisgICAgICAgICAgICBteSAkdmFsdWUg
PSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFsdWUiLCAiaW5mby5H
ZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAg
IiAuIENvbnZlcnRUb1Y4U3RyaW5nUmVzb3VyY2UoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAkbmF0
aXZlVHlwZSwgInYiLCAkdmFsdWUsICJWT0lEIikgLiAiXG4iKTsKICAgICAgICAgfSBlbHNpZiAo
JGFycmF5VHlwZSkgeworICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRh
dHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIik7CiAgICAg
ICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIFZlY3RvcjwkYXJyYXlUeXBlPiB2
ID0gJHZhbHVlO1xuIik7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudERlY2xzLCAiICAgICRuYXRpdmVUeXBlIHYgPSAkdmFsdWU7XG4iKTsKKyAgICAgICAg
ICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2
YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIsIDEpOworICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnREZWNscywgIiAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRCgkbmF0aXZlVHlw
ZSwgdiwgJHZhbHVlKTtcbiIpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xODExLDggKzE4MTMs
OCBAQCBzdWIgR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2sKICAgICAgICAgICAgICAgICAgICAgJHBh
cmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBh
cmdzLkdldElzb2xhdGUoKSk7XG4iOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5h
dGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAiIC4KLSAgICAgICAgICAgICAgICAgSlNWYWx1ZVRv
TmF0aXZlKCRwYXJhbWV0ZXIsICJNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAkcGFyYW1J
bmRleCwgJHBhcmFtZXRlckRlZmF1bHRQb2xpY3kpIiwgImFyZ3MuR2V0SXNvbGF0ZSgpIikgLiAi
KTtcbiI7CisgICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICBWOFRSWUNB
VENIX0ZPUl9UWVBFQ0hFQ0soJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAiIC4KKyAgICAg
ICAgICAgICAgICAgSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0ZXIsICJNQVlCRV9NSVNTSU5HX1BB
UkFNRVRFUihhcmdzLCAkcGFyYW1JbmRleCwgJHBhcmFtZXRlckRlZmF1bHRQb2xpY3kpIiwgImFy
Z3MuR2V0SXNvbGF0ZSgpIiwgMSkgLiAiKTtcbiI7CiAgICAgICAgICAgICBpZiAoJG5hdGl2ZVR5
cGUgZXEgJ0RpY3Rpb25hcnknKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJp
bmcgLj0gIiAgICBpZiAoISRwYXJhbWV0ZXJOYW1lLmlzVW5kZWZpbmVkT3JOdWxsKCkgJiYgISRw
YXJhbWV0ZXJOYW1lLmlzT2JqZWN0KCkpXG4iOwogICAgICAgICAgICAgICAgJHBhcmFtZXRlckNo
ZWNrU3RyaW5nIC49ICIgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihcIk5vdCBhbiBvYmpl
Y3QuXCIsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CkBAIC0zNzUzLDE2ICszNzU1LDI3IEBAIHN1
YiBKU1ZhbHVlVG9OYXRpdmUKICAgICBteSAkc2lnbmF0dXJlID0gc2hpZnQ7CiAgICAgbXkgJHZh
bHVlID0gc2hpZnQ7CiAgICAgbXkgJGdldElzb2xhdGUgPSBzaGlmdDsKKyAgICBteSAkbWF5RmFp
bCA9IHNoaWZ0OwogCiAgICAgbXkgJHR5cGUgPSAkc2lnbmF0dXJlLT50eXBlOworICAgIG15ICRl
bmZvcmNlUmFuZ2UgPSAkc2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5mb3JjZVJh
bmdlIn0gPyAidHJ1ZSIgOiAiZmFsc2UiOworICAgIGRpZSAiQ2FuJ3QgaGFuZGxlIFtFbmZvcmNl
UmFuZ2VdIHVubGVzcyBjYWxsZWQgZnJvbSBjb250ZXh0IHRoYXQgaGFuZGxlcyBmYWlsdXJlcy4i
IGlmICRlbmZvcmNlUmFuZ2UgZXEgInRydWUiIGFuZCAhJG1heUZhaWw7CiAKICAgICByZXR1cm4g
IiR2YWx1ZSIgaWYgJHR5cGUgZXEgIkpTT2JqZWN0IjsKICAgICByZXR1cm4gIiR2YWx1ZS0+Qm9v
bGVhblZhbHVlKCkiIGlmICR0eXBlIGVxICJib29sZWFuIjsKICAgICByZXR1cm4gInN0YXRpY19j
YXN0PCR0eXBlPigkdmFsdWUtPk51bWJlclZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiZmxvYXQiIG9y
ICR0eXBlIGVxICJkb3VibGUiOwogCi0gICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSkiIGlmICR0
eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwotICAgIHJldHVybiAidG9VSW50MzIo
JHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25l
ZCBzaG9ydCI7Ci0gICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNp
Z25lZCBsb25nIGxvbmciIG9yICR0eXBlIGVxICJsb25nIGxvbmciOworICAgIGlmICgkbWF5RmFp
bCAmJiAkZW5mb3JjZVJhbmdlKSB7CisgICAgICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUsICRl
bmZvcmNlUmFuZ2UsIG9rKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9ydCI7
CisgICAgICAgIHJldHVybiAidG9VSW50MzIoJHZhbHVlLCAkZW5mb3JjZVJhbmdlLCBvaykiIGlm
ICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwor
ICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlLCAkZW5mb3JjZVJhbmdlLCBvaykiIGlmICR0
eXBlIGVxICJsb25nIGxvbmciOworICAgICAgICByZXR1cm4gInRvVUludDY0KCR2YWx1ZSwgJGVu
Zm9yY2VSYW5nZSwgb2spIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKKyAgICB9
IGVsc2UgeworICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxv
bmciIG9yICR0eXBlIGVxICJzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9VSW50MzIoJHZhbHVl
KSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25lZCBzaG9y
dCI7CisgICAgICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyBs
b25nIjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5z
aWduZWQgbG9uZyBsb25nIjsKKyAgICB9CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDxSYW5nZTo6
Q29tcGFyZUhvdz4oJHZhbHVlLT5JbnQzMlZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiQ29tcGFyZUhv
dyI7CiAgICAgcmV0dXJuICJ0b1dlYkNvcmVEYXRlKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJEYXRl
IjsKICAgICByZXR1cm4gInRvRE9NU3RyaW5nTGlzdCgkdmFsdWUsICRnZXRJc29sYXRlKSIgaWYg
JHR5cGUgZXEgIkRPTVN0cmluZ0xpc3QiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKaW5kZXggZTE4YjMxMWE3NTFkMTU1YjY4ZDVkZGQx
M2FhMDYyMmJhMTRhNjBlMy4uNzA2NjQyNGY5NGEwNWU2NGY5NDc5NjczNmM0ZjY0YTQ4NzExMjNl
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1
dGVzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0
ZXMudHh0CkBAIC01MSw2ICs1MSw3IEBAIERvTm90Q2hlY2tDb25zdGFudHMKIERvTm90Q2hlY2tT
ZWN1cml0eQogRG9Ob3RDaGVja1NlY3VyaXR5T25HZXR0ZXIKIERvTm90Q2hlY2tTZWN1cml0eU9u
U2V0dGVyCitFbmZvcmNlUmFuZ2UKIEV2ZW50VGFyZ2V0CiBFeHRlbmRzRE9NR2xvYmFsT2JqZWN0
CiBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxEb2N1bWVudHxJbXBsRWxlbWVudFJvb3R8SW1wbE93
bmVyTm9kZVJvb3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9UZXN0T2JqLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9U
ZXN0T2JqLmlkbAppbmRleCBmOWQwNjVmYTE4NmVlMTg1YmY0NjllOTYwMjhmZWU2NTFmNGIxNmM2
Li4wNmY3ODM4MjQ4OGUxZDk2MzliNGFhNGIxNGIxNTQ1ZTQyMTk0MTAxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCkBAIC0xNDYsNiAr
MTQ2LDE5IEBACiAgICAgdm9pZCAgICBtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZyhp
biBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBUZXN0Q2FsbGJhY2sgY2FsbGJhY2spOwogI2VuZGlmCiAK
KyNpZiBkZWZpbmVkKFRFU1RJTkdfVjgpCisgICAgLy8gJ0VuZm9yY2VSYW5nZScgZXh0ZW5kZWQg
YXR0cmlidXRlCisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIoaW4gW0Vu
Zm9yY2VSYW5nZV0gbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJh
bmdlVUludDMyKGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgdmFsdWUpOworICAgIHZv
aWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0KGluIFtFbmZvcmNlUmFuZ2VdIGxvbmcg
bG9uZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0KGlu
IFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSk7CisKKyAgICBhdHRyaWJ1
dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBlbmZvcmNlZFJhbmdlTG9uZ0F0dHI7CisgICAgYXR0cmli
dXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9u
Z0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyBlbmZvcmNlZFJh
bmdlTG9uZ0xvbmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBs
b25nIGxvbmcgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyOworI2VuZGlmCisKICAg
ICAvLyAnQ29uZGl0aW9uYWwnIGV4dGVuZGVkIGF0dHJpYnV0ZQogICAgIFtDb25kaXRpb25hbD1D
b25kaXRpb24xXSBhdHRyaWJ1dGUgbG9uZyBjb25kaXRpb25hbEF0dHIxOwogICAgIFtDb25kaXRp
b25hbD1Db25kaXRpb24xJkNvbmRpdGlvbjJdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0
cjI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhGbG9hdDY0QXJyYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4RmxvYXQ2NEFycmF5LmNwcAppbmRleCA0ZGFhZjM1MTFmZDc4YWY0ZDcwZTIxNGM2ZDYw
YjBhMWNiYzcxYTZjLi5mZWRhMDZkZmVhZjhjZTRiNmNiY2NmYzAxMmU2MTdjZDRlNmE0OWE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhGbG9h
dDY0QXJyYXkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOEZsb2F0NjRBcnJheS5jcHAKQEAgLTUzLDcgKzUzLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBmb29DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIEZsb2F0NjRBcnJheSogaW1wID0gVjhG
bG9hdDY0QXJyYXk6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goRmxv
YXQzMkFycmF5KiwgYXJyYXksIFY4RmxvYXQzMkFycmF5OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4RmxvYXQzMkFy
cmF5Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdf
UEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZ
Q0FUQ0hfRk9SX1RZUEVDSEVDSyhGbG9hdDMyQXJyYXkqLCBhcnJheSwgVjhGbG9hdDMyQXJyYXk6
Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpID8gVjhGbG9hdDMyQXJyYXk6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVj
dD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSkpIDogMCk7CiAgICAgcmV0dXJuIHRvVjgoaW1wLT5mb28oYXJyYXkpLCBhcmdzLkhvbGRl
cigpLCBhcmdzLkdldElzb2xhdGUoKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RBY3RpdmVET01PYmplY3QuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVj
dC5jcHAKaW5kZXggMWE2MDIwNWI4OTA4ZTQ5NmY0MGQxY2M0NDIyNmRhMjllMDA2MWJlNi4uYjE5
NWU3MTgwOWYyYjVjOWZhOGM5MmMyYWNkZmJhMjQxZjhkNGE2MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFj
dGl2ZURPTU9iamVjdC5jcHAKQEAgLTUyLDcgKzUyLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBleGNpdGluZ0Z1bmN0aW9uQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cykKICAgICBUZXN0QWN0aXZlRE9NT2JqZWN0KiBpbXAgPSBWOFRlc3RBY3RpdmVET01PYmplY3Q6
OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwogICAgIGlmICghQmluZGluZ1NlY3VyaXR5OjpzaG91
bGRBbGxvd0FjY2Vzc1RvRnJhbWUoQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpLCBpbXAtPmZyYW1l
KCkpKQogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKLSAgICBWOFRSWUNBVENIKE5vZGUq
LCBuZXh0Q2hpbGQsIFY4Tm9kZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOE5vZGU6OnRvTmF0aXZlKHY4OjpIYW5k
bGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKE5v
ZGUqLCBuZXh0Q2hpbGQsIFY4Tm9kZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOE5vZGU6OnRvTmF0aXZlKHY4OjpI
YW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaW1wLT5leGNpdGluZ0Z1bmN0aW9uKG5l
eHRDaGlsZCk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRUYXJnZXQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50VGFy
Z2V0LmNwcAppbmRleCAzMWUyZWZhYTQ0NmY2MjAzODQ5MGM4ODk1ZGE1YjJhYzEyNDRiYjE2Li43
ZDMyZTE1OGJlZDRlNjQzZDZlMWFjNjAxNzRlZGYwMWY0YWI1YTY3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRUYXJnZXQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVu
dFRhcmdldC5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBpdGVtQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBUZXN0RXZlbnRU
YXJnZXQqIGltcCA9IFY4VGVzdEV2ZW50VGFyZ2V0Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsK
ICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICB7Ci0gICAgVjhUUllDQVRDSChpbnQsIGlu
ZGV4LCB0b1VJbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgaW5kZXgsIHRv
VUludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5l
ZCksIGZhbHNlLCBvaykpOwogICAgIGlmIChVTkxJS0VMWShpbmRleCA8IDApKSB7CiAgICAgICAg
IGVjID0gSU5ERVhfU0laRV9FUlI7CiAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTg4LDcgKzg4LDcg
QEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBkaXNwYXRjaEV2ZW50Q2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBUZXN0RXZlbnRUYXJnZXQqIGltcCA9IFY4VGVz
dEV2ZW50VGFyZ2V0Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBFeGNlcHRpb25Db2Rl
IGVjID0gMDsKICAgICB7Ci0gICAgVjhUUllDQVRDSChFdmVudCosIGV2dCwgVjhFdmVudDo6SGFz
SW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSkgPyBWOEV2ZW50Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDAp
OworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhFdmVudCosIGV2dCwgVjhFdmVudDo6SGFz
SW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSkgPyBWOEV2ZW50Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDAp
OwogICAgIGJvb2wgcmVzdWx0ID0gaW1wLT5kaXNwYXRjaEV2ZW50KGV2dCwgZWMpOwogICAgIGlm
IChVTkxJS0VMWShlYykpCiAgICAgICAgIGdvdG8gZmFpbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRlcmZhY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHAK
aW5kZXggODk3ZjBjNTc5YjBjZjQ0YjhjMmJiZDQ1OWU2M2E3ZDA3MTMwMjdiZi4uZjQzYWVjMjkz
Yzg3MzQzOTUwNDUzOWRmMjYyOTA0ZjQzOWVlNjA3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHAK
QEAgLTE1MCw3ICsxNTAsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHN1cHBsZW1l
bnRhbE1ldGhvZDJDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcgogICAgIEV4Y2VwdGlv
bkNvZGUgZWMgPSAwOwogICAgIHsKICAgICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNF
KFY4U3RyaW5nUmVzb3VyY2U8Piwgc3RyQXJnLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdz
LCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpB
cmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MSwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8
djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVs
dElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RP
YmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4
OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MSwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogc2NyaXB0Q29udGV4dCA9IGdldFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKICAgICBSZWZQ
dHI8VGVzdE9iaj4gcmVzdWx0ID0gVGVzdFN1cHBsZW1lbnRhbDo6c3VwcGxlbWVudGFsTWV0aG9k
MihzY3JpcHRDb250ZXh0LCBpbXAsIHN0ckFyZywgb2JqQXJnLCBlYyk7CiAgICAgaWYgKFVOTElL
RUxZKGVjKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcApp
bmRleCAwZTM1NjRjMDU1YTY2OGQxMWQzOGVlODNhMTBlOTA0MDhmMGQxM2M2Li5jNDUwMmU4YzNk
NWFhMTZmYWJhNzI4MjZmY2FhMmU5ODUyZDhjMjc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE1l
ZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwCkBAIC00NCw3ICs0NCw3IEBAIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gbWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykK
ICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3Vn
aEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0TWVkaWFRdWVyeUxp
c3RMaXN0ZW5lciogaW1wID0gVjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcjo6dG9OYXRpdmUo
YXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChSZWZQdHI8TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lcj4sIGxpc3RlbmVyLCBNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyOjpjcmVhdGUoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZ
Q0FUQ0hfRk9SX1RZUEVDSEVDSyhSZWZQdHI8TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcj4sIGxpc3Rl
bmVyLCBNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyOjpjcmVhdGUoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOwogICAgIGltcC0+bWV0aG9kKGxpc3Rl
bmVyKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAKaW5kZXggM2ZjMjhi
ZGZlMmE3MjczNmZlMDc3NTZlMmY5NzJmN2Q1NzZmYWVkOS4uOWRmYzBkY2ZjNTllYzhmM2ZiYmU4
NmJlNGY3YzRiMDNiMThkNDQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAKQEAgLTE4OCw3ICsxODgsNyBAQCBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluZwogc3RhdGljIHZvaWQgdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRy
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2
YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b1VJ
bnQ2NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZExvbmdMb25nQXR0cih2KTsKICAgICBy
ZXR1cm47CiB9CkBAIC05NDgsOSArOTQ4LDkgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiB2b2lkTWV0aG9kV2l0aEFyZ3NDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmcKICAg
ICBpZiAoYXJncy5MZW5ndGgoKSA8IDMpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFy
Z3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRl
c3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25n
QXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0
b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5l
ZCksIGZhbHNlLCBvaykpOwogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhT
dHJpbmdSZXNvdXJjZTw+LCBzdHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEs
IERlZmF1bHRJc1VuZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywg
VjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBE
ZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6
T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaios
IG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6Okhh
bmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBE
ZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBpbXAtPnZvaWRNZXRob2RXaXRoQXJncyhs
b25nQXJnLCBzdHJBcmcsIG9iakFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBA
IC05NjYsOSArOTY2LDkgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBsb25nTWV0aG9k
V2l0aEFyZ3NDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmcKICAgICBpZiAoYXJncy5M
ZW5ndGgoKSA8IDMpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9y
KGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJnLCB0b0ludDMy
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBv
aykpOwogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhTdHJpbmdSZXNvdXJj
ZTw+LCBzdHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpI
YXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2Fz
dChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkg
OiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywgVjhU
ZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZh
dWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2Jq
ZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSkgOiAwKTsKICAgICByZXR1cm4gdjhJbnRlZ2VyKGltcC0+bG9uZ01ldGhvZFdpdGhB
cmdzKGxvbmdBcmcsIHN0ckFyZywgb2JqQXJnKSwgYXJncy5HZXRJc29sYXRlKCkpOwogfQogCkBA
IC05ODQsOSArOTg0LDkgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvYmpNZXRob2RX
aXRoQXJnc0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5M
ZW5ndGgoKSA8IDMpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9y
KGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJnLCB0b0ludDMy
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBv
aykpOwogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhTdHJpbmdSZXNvdXJj
ZTw+LCBzdHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpI
YXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2Fz
dChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkg
OiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywgVjhU
ZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZh
dWx0SXNVbmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2Jq
ZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSkgOiAwKTsKICAgICByZXR1cm4gdG9WOChpbXAtPm9iak1ldGhvZFdpdGhBcmdzKGxv
bmdBcmcsIHN0ckFyZywgb2JqQXJnKSwgYXJncy5Ib2xkZXIoKSwgYXJncy5HZXRJc29sYXRlKCkp
OwogfQogCkBAIC05OTUsNyArOTk1LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBt
ZXRob2RXaXRoU2VxdWVuY2VBcmdDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJgogICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChWZWN0b3I8UmVmUHRy
PFNjcmlwdFByb2ZpbGU+ID4sIHNlcXVlbmNlQXJnLCAodG9SZWZQdHJOYXRpdmVBcnJheTxTY3Jp
cHRQcm9maWxlLCBWOFNjcmlwdFByb2ZpbGU+KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3Ms
IDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
KFZlY3RvcjxSZWZQdHI8U2NyaXB0UHJvZmlsZT4gPiwgc2VxdWVuY2VBcmcsICh0b1JlZlB0ck5h
dGl2ZUFycmF5PFNjcmlwdFByb2ZpbGUsIFY4U2NyaXB0UHJvZmlsZT4oTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpKTsKICAgICBpbXAtPm1ldGhv
ZFdpdGhTZXF1ZW5jZUFyZyhzZXF1ZW5jZUFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7
CiB9CkBAIC0xMDA1LDcgKzEwMDUsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1l
dGhvZFJldHVybmluZ1NlcXVlbmNlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cwogICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcs
IHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50
MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwg
ZmFsc2UsIG9rKSk7CiAgICAgcmV0dXJuIHY4QXJyYXkoaW1wLT5tZXRob2RSZXR1cm5pbmdTZXF1
ZW5jZShsb25nQXJnKSwgYXJncy5HZXRJc29sYXRlKCkpOwogfQogCkBAIC0xMDE3LDcgKzEwMTcs
NyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFRoYXRSZXF1aXJlc0FsbEFy
Z3NBbmRUaHJvd3NDYWxsYmFjayhjb25zdCB2OAogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwog
ICAgIHsKICAgICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKFY4U3RyaW5nUmVzb3Vy
Y2U8Piwgc3RyQXJnLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6
SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSkp
IDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CiAgICAgUmVmUHRyPFRlc3RPYmo+IHJlc3VsdCA9IGltcC0+bWV0aG9k
VGhhdFJlcXVpcmVzQWxsQXJnc0FuZFRocm93cyhzdHJBcmcsIG9iakFyZywgZWMpOwogICAgIGlm
IChVTkxJS0VMWShlYykpCiAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTEwNDUsNyArMTA0NSw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gaWRiS2V5Q2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJncykKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVy
biB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4
VFJZQ0FUQ0goUmVmUHRyPElEQktleT4sIGtleSwgY3JlYXRlSURCS2V5RnJvbVZhbHVlKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBW
OFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPElEQktleT4sIGtleSwgY3JlYXRlSURCS2V5
RnJvbVZhbHVlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCkpKTsKICAgICBpbXAtPmlkYktleShrZXkuZ2V0KCkpOwogICAgIHJldHVybiB2OFVuZGVm
aW5lZCgpOwogfQpAQCAtMTA1NSwxMCArMTA1NSwxMCBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IG9wdGlvbnNPYmplY3RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQog
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChEaWN0aW9u
YXJ5LCBvbywgRGljdGlvbmFyeShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZh
dWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyhEaWN0aW9uYXJ5LCBvbywgRGljdGlvbmFyeShNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkpOwog
ICAgIGlmICghb28uaXNVbmRlZmluZWRPck51bGwoKSAmJiAhb28uaXNPYmplY3QoKSkKICAgICAg
ICAgcmV0dXJuIHRocm93VHlwZUVycm9yKCJOb3QgYW4gb2JqZWN0LiIsIGFyZ3MuR2V0SXNvbGF0
ZSgpKTsKLSAgICBWOFRSWUNBVENIKERpY3Rpb25hcnksIG9vbywgRGljdGlvbmFyeShNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElz
b2xhdGUoKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhEaWN0aW9uYXJ5LCBvb28s
IERpY3Rpb25hcnkoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsKICAgICBpZiAoIW9vby5pc1VuZGVmaW5lZE9y
TnVsbCgpICYmICFvb28uaXNPYmplY3QoKSkKICAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9y
KCJOb3QgYW4gb2JqZWN0LiIsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBpbXAtPm9wdGlvbnNP
YmplY3Qob28sIG9vbyk7CkBAIC0xMjYwLDcgKzEyNjAsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhPcHRpb25hbEFyZ0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVu
dHMmCiAgICAgICAgIGltcC0+bWV0aG9kV2l0aE9wdGlvbmFsQXJnKCk7CiAgICAgICAgIHJldHVy
biB2OFVuZGVmaW5lZCgpOwogICAgIH0KLSAgICBWOFRSWUNBVENIKGludCwgb3B0LCB0b0ludDMy
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBvcHQsIHRvSW50MzIoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7
CiAgICAgaW1wLT5tZXRob2RXaXRoT3B0aW9uYWxBcmcob3B0KTsKICAgICByZXR1cm4gdjhVbmRl
ZmluZWQoKTsKIH0KQEAgLTEyNzAsMTIgKzEyNzAsMTIgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBtZXRob2RXaXRoTm9uT3B0aW9uYWxBcmdBbmRPcHRpb25hbEFyZ0NhbGxiYWNrKGNv
bnMKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVu
b3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50
LCBub25PcHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG5vbk9w
dCwgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRl
ZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAxKSB7CiAgICAg
ICAgIGltcC0+bWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJnQW5kT3B0aW9uYWxBcmcobm9uT3B0KTsK
ICAgICAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiAgICAgfQotICAgIFY4VFJZQ0FUQ0goaW50
LCBvcHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElz
VW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG9wdCwgdG9J
bnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQp
LCBmYWxzZSwgb2spKTsKICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZE9wdGlv
bmFsQXJnKG5vbk9wdCwgb3B0KTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTEy
ODUsMTcgKzEyODUsMTcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRo
Tm9uT3B0aW9uYWxBcmdBbmRUd29PcHRpb25hbEFyZ3NDYWxsYmFjaygKICAgICBpZiAoYXJncy5M
ZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9y
KGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBub25PcHQsIHRvSW50MzIo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOwor
ICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG5vbk9wdCwgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2sp
KTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAxKSB7CiAgICAgICAgIGltcC0+bWV0aG9kV2l0
aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdzKG5vbk9wdCk7CiAgICAgICAgIHJldHVy
biB2OFVuZGVmaW5lZCgpOwogICAgIH0KLSAgICBWOFRSWUNBVENIKGludCwgb3B0MSwgdG9JbnQz
MihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7
CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgb3B0MSwgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2sp
KTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAyKSB7CiAgICAgICAgIGltcC0+bWV0aG9kV2l0
aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdzKG5vbk9wdCwgb3B0MSk7CiAgICAgICAg
IHJldHVybiB2OFVuZGVmaW5lZCgpOwogICAgIH0KLSAgICBWOFRSWUNBVENIKGludCwgb3B0Miwg
dG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgb3B0MiwgdG9JbnQzMihN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxz
ZSwgb2spKTsKICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZFR3b09wdGlvbmFs
QXJncyhub25PcHQsIG9wdDEsIG9wdDIpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpA
QCAtMTM0NSw3ICsxMzQ1LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RX
aXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZ0NhbGxiYWNrKGNvbnMKICAgICBpZiAoYXJn
cy5MZW5ndGgoKSA8IDIpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vy
cm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBub25DYWxsYmFjaywg
dG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbm9uQ2FsbGJhY2ssIHRv
SW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSwgZmFsc2UsIG9rKSk7CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPD0gMSB8fCAhYXJnc1sxXS0+
SXNGdW5jdGlvbigpKQogICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoMCwgYXJncy5HZXRJ
c29sYXRlKCkpOwogICAgIFJlZlB0cjxUZXN0Q2FsbGJhY2s+IGNhbGxiYWNrID0gVjhUZXN0Q2Fs
bGJhY2s6OmNyZWF0ZShhcmdzWzFdLCBnZXRTY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwpAQCAt
MTM2Niw2ICsxMzY2LDUwIEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0
aENhbGxiYWNrQW5kT3B0aW9uYWxBcmdDYWxsYmFjayhjb25zdCB2ODo6CiAgICAgcmV0dXJuIHY4
VW5kZWZpbmVkKCk7CiB9CiAKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZUludDMyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sK
KyAgICBJTkNfU1RBVFMoIkRPTS5UZXN0T2JqLm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMiIp
OworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5v
dWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9
IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9GT1Jf
VFlQRUNIRUNLKGludCwgdmFsdWUsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9
CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJ
bnQzMkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgSU5DX1NUQVRT
KCJET00uVGVzdE9iai5tZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyIik7CisgICAgaWYgKGFy
Z3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNF
cnJvcihhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodW5z
aWduZWQsIHZhbHVlLCB0b1VJbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBE
ZWZhdWx0SXNVbmRlZmluZWQpLCB0cnVlLCBvaykpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9y
Y2VSYW5nZVVJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0Q2Fs
bGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBJTkNfU1RBVFMoIkRPTS5U
ZXN0T2JqLm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIpOworICAgIGlmIChhcmdzLkxlbmd0
aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJn
cy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
YXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGxvbmcgbG9uZywg
dmFsdWUsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElz
VW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJ
bnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NENhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgSU5DX1NUQVRTKCJET00uVGVzdE9iai5t
ZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0Iik7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAx
KQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElz
b2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhv
bGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodW5zaWduZWQgbG9uZyBsb25n
LCB2YWx1ZSwgdG9VSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VVSW50NjQodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCiAjaWYgRU5B
QkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9u
YWxNZXRob2QxQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKQEAgLTE0MDMsNyAr
MTQ0Nyw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRlZE1ldGhvZDFD
YWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkg
PCAyKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdl
dElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdz
LkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6
SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkp
IDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CiAgICAgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdSRVNPVVJDRShWOFN0
cmluZ1Jlc291cmNlPD4sIHN0ckFyZywgTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwg
RGVmYXVsdElzVW5kZWZpbmVkKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKG9iakFyZywg
c3RyQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKQEAgLTE0MTQsMTIgKzE0NTgsMTIg
QEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kMkNhbGxiYWNr
KGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAg
ICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0
ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVy
KCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0
YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2Jq
OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6
Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSkgOiAwKTsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8PSAxKSB7CiAgICAgICAgIGltcC0+b3Zl
cmxvYWRlZE1ldGhvZChvYmpBcmcpOwogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKICAg
ICB9Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hf
Rk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5v
dmVybG9hZGVkTWV0aG9kKG9iakFyZywgbG9uZ0FyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVk
KCk7CiB9CkBAIC0xNDM5LDcgKzE0ODMsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IG92ZXJsb2FkZWRNZXRob2Q0Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdB
cmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRv
SW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGxvbmdBcmcpOwogICAg
IHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTQ2MSw3ICsxNTA1LDcgQEAgc3RhdGljIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kNkNhbGxiYWNrKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVy
biB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4
VFJZQ0FUQ0goUmVmUHRyPERPTVN0cmluZ0xpc3Q+LCBsaXN0QXJnLCB0b0RPTVN0cmluZ0xpc3Qo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJn
cy5HZXRJc29sYXRlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPERP
TVN0cmluZ0xpc3Q+LCBsaXN0QXJnLCB0b0RPTVN0cmluZ0xpc3QoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsK
ICAgICBpbXAtPm92ZXJsb2FkZWRNZXRob2QobGlzdEFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZp
bmVkKCk7CiB9CkBAIC0xNDcxLDcgKzE1MTUsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IG92ZXJsb2FkZWRNZXRob2Q3Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwog
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChSZWZQdHI8
RE9NU3RyaW5nTGlzdD4sIGFycmF5QXJnLCB0b0RPTVN0cmluZ0xpc3QoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkp
KTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPERPTVN0cmluZ0xpc3Q+LCBh
cnJheUFyZywgdG9ET01TdHJpbmdMaXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAs
IERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CiAgICAgaW1wLT5vdmVy
bG9hZGVkTWV0aG9kKGFycmF5QXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAg
LTE0ODEsNyArMTUyNSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRl
ZE1ldGhvZDhDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoqLCBv
YmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5k
bGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKG9iakFy
Zyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNDkxLDcgKzE1MzUsNyBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG92ZXJsb2FkZWRNZXRob2Q5Q2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAg
ICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkp
OwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7
Ci0gICAgVjhUUllDQVRDSChSZWZQdHI8RE9NU3RyaW5nTGlzdD4sIGFycmF5QXJnLCB0b0RPTVN0
cmluZ0xpc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0so
UmVmUHRyPERPTVN0cmluZ0xpc3Q+LCBhcnJheUFyZywgdG9ET01TdHJpbmdMaXN0KE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNv
bGF0ZSgpKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGFycmF5QXJnKTsKICAgICByZXR1
cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE1MDEsNyArMTU0NSw3IEBAIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRlZE1ldGhvZDEwQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXJnCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhy
b3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9i
aiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNB
VENIKFZlY3Rvcjx1bnNpZ25lZD4sIGFycmF5QXJnLCB0b05hdGl2ZUFycmF5PHVuc2lnbmVkPihN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7Cisg
ICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFZlY3Rvcjx1bnNpZ25lZD4sIGFycmF5QXJnLCB0
b05hdGl2ZUFycmF5PHVuc2lnbmVkPihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBE
ZWZhdWx0SXNVbmRlZmluZWQpKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGFycmF5QXJn
KTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE1NTYsNyArMTYwMCw3IEBAIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY2xhc3NNZXRob2RXaXRoT3B0aW9uYWxDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPD0gMCkgewogICAg
ICAgICByZXR1cm4gdjhJbnRlZ2VyKFRlc3RPYmo6OmNsYXNzTWV0aG9kV2l0aE9wdGlvbmFsKCks
IGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICB9Ci0gICAgVjhUUllDQVRDSChpbnQsIGFyZywgdG9J
bnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgYXJnLCB0b0ludDMyKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBv
aykpOwogICAgIHJldHVybiB2OEludGVnZXIoVGVzdE9iajo6Y2xhc3NNZXRob2RXaXRoT3B0aW9u
YWwoYXJnKSwgYXJncy5HZXRJc29sYXRlKCkpOwogfQogCkBAIC0xNTY2LDcgKzE2MTAsNyBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG92ZXJsb2FkZWRNZXRob2QxMUNhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZwogewogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAg
ICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRl
KCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBhcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyhpbnQsIGFyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdz
LCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICBUZXN0T2JqOjpvdmVy
bG9hZGVkTWV0aG9kMShhcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTYy
Myw3ICsxNjY3LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmFibGVkQXRSdW50
aW1lTWV0aG9kMUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMKICAgICBpZiAoYXJncy5MZW5n
dGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFy
Z3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJnLCB0b0ludDMyKE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAg
ICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBvaykp
OwogICAgIGltcC0+ZW5hYmxlZEF0UnVudGltZU1ldGhvZDEobG9uZ0FyZyk7CiAgICAgcmV0dXJu
IHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNjMzLDcgKzE2NzcsNyBAQCBzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IGVuYWJsZWRBdFJ1bnRpbWVNZXRob2QyQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93
Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoq
IGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRD
SChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQs
IGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5lbmFibGVkQXRSdW50aW1lTWV0
aG9kMihsb25nQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE2NDMsNyAr
MTY4Nyw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5hYmxlZFBlckNvbnRleHRN
ZXRob2QxQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkg
PCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdl
dElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdz
LkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CisgICAgVjhU
UllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAg
ICBpbXAtPmVuYWJsZWRQZXJDb250ZXh0TWV0aG9kMShsb25nQXJnKTsKICAgICByZXR1cm4gdjhV
bmRlZmluZWQoKTsKIH0KQEAgLTE2NTMsNyArMTY5Nyw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gZW5hYmxlZFBlckNvbnRleHRNZXRob2QyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RF
bm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGlu
dCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZh
dWx0SXNVbmRlZmluZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbG9u
Z0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICBpbXAtPmVuYWJsZWRQZXJDb250ZXh0TWV0aG9k
Mihsb25nQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE2NjUsNyArMTcw
OSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gc3RyaW5nQXJyYXlGdW5jdGlvbkNh
bGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyCiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0
T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsK
ICAgICB7Ci0gICAgVjhUUllDQVRDSChSZWZQdHI8RE9NU3RyaW5nTGlzdD4sIHZhbHVlcywgdG9E
T01TdHJpbmdMaXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1Vu
ZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNI
RUNLKFJlZlB0cjxET01TdHJpbmdMaXN0PiwgdmFsdWVzLCB0b0RPTVN0cmluZ0xpc3QoTUFZQkVf
TUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJ
c29sYXRlKCkpKTsKICAgICBSZWZQdHI8RE9NU3RyaW5nTGlzdD4gcmVzdWx0ID0gaW1wLT5zdHJp
bmdBcnJheUZ1bmN0aW9uKHZhbHVlcywgZWMpOwogICAgIGlmIChVTkxJS0VMWShlYykpCiAgICAg
ICAgIGdvdG8gZmFpbDsKQEAgLTE2OTYsNyArMTc0MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gY29udmVydDFDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChhKiwgdmFsdWUs
IFY4YTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSkgPyBWOGE6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkp
IDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGEqLCB2YWx1ZSwgVjhhOjpIYXNJ
bnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSA/IFY4YTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAg
ICBpbXAtPmNvbnZlcnQxKHZhbHVlKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAg
LTE3MDYsNyArMTc1MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29udmVydDJD
YWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIGlmIChhcmdzLkxlbmd0aCgp
IDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5H
ZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJn
cy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChiKiwgdmFsdWUsIFY4Yjo6SGFzSW5zdGFuY2Uo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBW
OGI6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllD
QVRDSF9GT1JfVFlQRUNIRUNLKGIqLCB2YWx1ZSwgVjhiOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4Yjo6dG9OYXRp
dmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBpbXAtPmNvbnZlcnQyKHZh
bHVlKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE3MTYsNyArMTc2MCw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29udmVydDRDYWxsYmFjayhjb25zdCB2ODo6
QXJndW1lbnRzJiBhcmdzKQogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0
dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAg
VjhUUllDQVRDSChkKiwgdmFsdWUsIFY4ZDo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOGQ6OnRvTmF0aXZlKHY4OjpI
YW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
KGQqLCB2YWx1ZSwgVjhkOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdz
LCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4ZDo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6
T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpKSkgOiAwKTsKICAgICBpbXAtPmNvbnZlcnQ0KHZhbHVlKTsKICAgICByZXR1cm4g
djhVbmRlZmluZWQoKTsKIH0KQEAgLTE3MjYsNyArMTc3MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gY29udmVydDVDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQog
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChlKiwgdmFs
dWUsIFY4ZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOGU6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46
OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGUqLCB2YWx1ZSwgVjhlOjpI
YXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSA/IFY4ZTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsK
ICAgICBpbXAtPmNvbnZlcnQ1KHZhbHVlKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0K
QEAgLTE3NTgsOCArMTgwMiw4IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gc3RyaWN0
RnVuY3Rpb25DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIEV4Y2VwdGlv
bkNvZGUgZWMgPSAwOwogICAgIHsKICAgICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNF
KFY4U3RyaW5nUmVzb3VyY2U8Piwgc3RyLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAw
LCBEZWZhdWx0SXNVbmRlZmluZWQpKTsKLSAgICBWOFRSWUNBVENIKGZsb2F0LCBhLCBzdGF0aWNf
Y2FzdDxmbG9hdD4oTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKS0+TnVtYmVyVmFsdWUoKSkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBiLCB0b0ludDMy
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soZmxvYXQsIGEsIHN0YXRpY19jYXN0PGZsb2F0
PihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLT5O
dW1iZXJWYWx1ZSgpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgYiwgdG9J
bnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQp
LCBmYWxzZSwgb2spKTsKICAgICBSZWZQdHI8Ym9vbD4gcmVzdWx0ID0gaW1wLT5zdHJpY3RGdW5j
dGlvbihzdHIsIGEsIGIsIGVjKTsKICAgICBpZiAoVU5MSUtFTFkoZWMpKQogICAgICAgICBnb3Rv
IGZhaWw7CkBAIC0xNzg1LDcgKzE4MjksNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhcmlhZGljRG91YmxlTWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYQogICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChkb3VibGUsIGhl
YWQsIHN0YXRpY19jYXN0PGRvdWJsZT4oTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwg
RGVmYXVsdElzVW5kZWZpbmVkKS0+TnVtYmVyVmFsdWUoKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyhkb3VibGUsIGhlYWQsIHN0YXRpY19jYXN0PGRvdWJsZT4oTUFZQkVfTUlTU0lO
R19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKS0+TnVtYmVyVmFsdWUoKSkp
OwogICAgIFY4VFJZQ0FUQ0goVmVjdG9yPGRvdWJsZT4sIHRhaWwsIHRvTmF0aXZlQXJndW1lbnRz
PGRvdWJsZT4oYXJncywgMSkpOwogICAgIGltcC0+dmFyaWFkaWNEb3VibGVNZXRob2QoaGVhZCwg
dGFpbCk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CkBAIC0xNzk2LDcgKzE4NDAsNyBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhcmlhZGljTm9kZU1ldGhvZENhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAg
ICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkp
OwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7
Ci0gICAgVjhUUllDQVRDSChOb2RlKiwgaGVhZCwgVjhOb2RlOjpIYXNJbnN0YW5jZShNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSA/IFY4Tm9kZTo6
dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENI
X0ZPUl9UWVBFQ0hFQ0soTm9kZSosIGhlYWQsIFY4Tm9kZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOE5vZGU6OnRv
TmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgVmVjdG9yPFJlZlB0
cjxOb2RlPiA+IHRhaWw7CiAgICAgZm9yIChpbnQgaSA9IDE7IGkgPCBhcmdzLkxlbmd0aCgpOyAr
K2kpIHsKICAgICAgICAgaWYgKCFWOE5vZGU6Okhhc0luc3RhbmNlKGFyZ3NbaV0pKQpAQCAtMTk3
MSw2ICsyMDE1LDEwIEBAIHN0YXRpYyBjb25zdCBWOERPTUNvbmZpZ3VyYXRpb246OkJhdGNoZWRD
YWxsYmFjayBWOFRlc3RPYmpDYWxsYmFja3NbXSA9IHsKICAgICB7Im1ldGhvZFdpdGhDYWxsYmFj
a0FyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBcmdDYWxsYmFja30s
CiAgICAgeyJtZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZyIsIFRlc3RPYmpW
OEludGVybmFsOjptZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZ0NhbGxiYWNr
fSwKICAgICB7Im1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFsQXJnIiwgVGVzdE9ialY4SW50
ZXJuYWw6Om1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFsQXJnQ2FsbGJhY2t9LAorICAgIHsi
bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VJbnQzMkNhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VVSW50MzIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQz
MkNhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIsIFRlc3RPYmpW
OEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRDYWxsYmFja30sCisgICAgeyJt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VVSW50NjRDYWxsYmFja30sCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAg
ICAgeyJjb25kaXRpb25hbE1ldGhvZDEiLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9uYWxN
ZXRob2QxQ2FsbGJhY2t9LAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9ycy5jcHAKaW5kZXggOTU3N2QyZTc1NWQ0NzVkY2QzY2NiMGJiYzQ5MDk4Yjc2NmM0
YjhkYy4uMGQ5NDVjMjU5NWFlYmE4MzZlMTNhOTVkZjc4ZWUxMmMxZjUzMzI2NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcApAQCAtNDgsNyArNDgsNyBA
QCB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBWOF9VU0UoVCkgeyB9CiB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6Y29uc3RydWN0b3IxQ2FsbGJh
Y2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKIHsKICAgICAKLSAgICBWOFRSWUNBVENIKEFy
cmF5QnVmZmVyKiwgYXJyYXlCdWZmZXIsIFY4QXJyYXlCdWZmZXI6Okhhc0luc3RhbmNlKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpID8gVjhBcnJh
eUJ1ZmZlcjo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBW
OFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soQXJyYXlCdWZmZXIqLCBhcnJheUJ1ZmZlciwgVjhBcnJh
eUJ1ZmZlcjo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkgPyBWOEFycmF5QnVmZmVyOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJ
c1VuZGVmaW5lZCkpKSA6IDApOwogCiAgICAgUmVmUHRyPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzPiBpbXBsID0gVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM6OmNyZWF0ZShhcnJheUJ1ZmZl
cik7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gYXJncy5Ib2xkZXIoKTsK
QEAgLTYwLDcgKzYwLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VGVzdE92ZXJsb2FkZWRD
b25zdHJ1Y3RvcnM6OmNvbnN0cnVjdG9yMUNhbGxiYWNrKGNvbnN0IHYKIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBWOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpjb25zdHJ1Y3RvcjJDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogewogICAgIAotICAgIFY4VFJZQ0FUQ0goQXJy
YXlCdWZmZXJWaWV3KiwgYXJyYXlCdWZmZXJWaWV3LCBWOEFycmF5QnVmZmVyVmlldzo6SGFzSW5z
dGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkgPyBWOEFycmF5QnVmZmVyVmlldzo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6
Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soQXJyYXlCdWZmZXJWaWV3Kiwg
YXJyYXlCdWZmZXJWaWV3LCBWOEFycmF5QnVmZmVyVmlldzo6SGFzSW5zdGFuY2UoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkgPyBWOEFycmF5QnVm
ZmVyVmlldzo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKIAogICAg
IFJlZlB0cjxUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycz4gaW1wbCA9IFRlc3RPdmVybG9hZGVk
Q29uc3RydWN0b3JzOjpjcmVhdGUoYXJyYXlCdWZmZXJWaWV3KTsKICAgICB2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+IHdyYXBwZXIgPSBhcmdzLkhvbGRlcigpOwpAQCAtNzIsNyArNzIsNyBAQCB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gVjhUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6Y29uc3RydWN0
b3IyQ2FsbGJhY2soY29uc3Qgdgogdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnM6OmNvbnN0cnVjdG9yM0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMm
IGFyZ3MpCiB7CiAgICAgCi0gICAgVjhUUllDQVRDSChCbG9iKiwgYmxvYiwgVjhCbG9iOjpIYXNJ
bnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSA/IFY4QmxvYjo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soQmxvYiosIGJsb2IsIFY4QmxvYjo6SGFzSW5z
dGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkgPyBWOEJsb2I6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVf
TUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAK
ICAgICBSZWZQdHI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM+IGltcGwgPSBUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9yczo6Y3JlYXRlKGJsb2IpOwogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gd3JhcHBlciA9IGFyZ3MuSG9sZGVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhC
aW5kaW5nLmNwcAppbmRleCAyYjVmNzQzNWVkNTVlY2NjZmI4NzY5MjA4YzI3OWZiZjkwY2FlYTc1
Li4wODVlNGI2MjFjOWQyOTAwZDAwZjRmOTVjZGVmNTZmMjk0YjBjMmYxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAKQEAgLTExMiw0MCArMTEyLDQ1IEBAIFBhc3NS
ZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxs
YmFjaykKICAgICByZXR1cm4gTm9kZUZpbHRlcjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlv
bjo6Y3JlYXRlKGNhbGxiYWNrKSk7CiB9CiAKLWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB2YWx1ZSwgYm9vbCYgb2spCitpbnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFs
dWU+IHZhbHVlLCBib29sIGVuZm9yY2VSYW5nZSwgYm9vbCYgb2spCiB7CiAgICAgb2sgPSB0cnVl
OwotICAgIAorCiAgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYWxyZWFkeSBhIDMyLWJp
dCBpbnRlZ2VyLgogICAgIGlmICh2YWx1ZS0+SXNJbnQzMigpKQogICAgICAgICByZXR1cm4gdmFs
dWUtPkludDMyVmFsdWUoKTsKLSAgICAKKwogICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVy
dGVkIHRvIGEgbnVtYmVyPwogICAgIHY4OjpMb2NhbDx2ODo6TnVtYmVyPiBudW1iZXJPYmplY3Qg
PSB2YWx1ZS0+VG9OdW1iZXIoKTsKICAgICBpZiAobnVtYmVyT2JqZWN0LklzRW1wdHkoKSkgewog
ICAgICAgICBvayA9IGZhbHNlOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgCisKKyAg
ICBpZiAoZW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5W
YWx1ZSgpOworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAgICAg
IG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4
ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IC0w
eDgwMDAwMDAgfHwgeCA+IDB4N2ZmZmZmZmYpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7Cisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiB4OworICAg
IH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9yIHRvIGFuIGluZmlu
aXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKLSAg
ICBpZiAoaXNuYW4obnVtYmVyVmFsdWUpIHx8IGlzaW5mKG51bWJlclZhbHVlKSkgewotICAgICAg
ICBvayA9IGZhbHNlOworICAgIGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVy
VmFsdWUpKQogICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgLy8gQ2FuIHRoZSB2
YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAzMi1iaXQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6
OkludDMyPiBpbnRWYWx1ZSA9IHZhbHVlLT5Ub0ludDMyKCk7Ci0gICAgaWYgKGludFZhbHVlLklz
RW1wdHkoKSkgewotICAgICAgICBvayA9IGZhbHNlOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9
Ci0gICAgCi0gICAgLy8gUmV0dXJuIHRoZSByZXN1bHQgb2YgdGhlIGludDMyIGNvbnZlcnNpb24u
Ci0gICAgcmV0dXJuIGludFZhbHVlLT5WYWx1ZSgpOworCisgICAgcmV0dXJuIG51bWJlck9iamVj
dC0+SW50MzJWYWx1ZSgpOwogfQotICAgIAotdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKKwordWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sIGVuZm9yY2VSYW5nZSwgYm9vbCYgb2spCiB7CiAgICAg
b2sgPSB0cnVlOwogCkBAIC0xNTMsNiArMTU4LDcgQEAgdWludDMyX3QgdG9VSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKICAgICBpZiAodmFsdWUtPklzVWludDMy
KCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+VWludDMyVmFsdWUoKTsKIAorICAgIC8vIEZhc3Qg
Y2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IHNpZ25lZCBpbnRlZ2VyIC0gcG9zc2libHkgcG9z
aXRpdmU/CiAgICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpIHsKICAgICAgICAgaW50MzJfdCByZXN1
bHQgPSB2YWx1ZS0+SW50MzJWYWx1ZSgpOwogICAgICAgICBpZiAocmVzdWx0ID49IDApCkBAIC0x
NjYsMjEgKzE3MiwxMDYgQEAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlLCBib29sJiBvaykKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCisgICAgaWYgKGVu
Zm9yY2VSYW5nZSkgeworICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsK
KyAgICAgICAgaWYgKGlzbmFuKHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZh
bHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwg
MCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAwIHx8IHggPiAw
eGZmZmZmZmZmKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJu
IDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsKKyAgICB9CisKICAgICAvLyBEb2Vz
IHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZpbml0eT8KICAgICBkb3VibGUg
bnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0gICAgaWYgKGlzbmFuKG51bWJl
clZhbHVlKSB8fCBpc2luZihudW1iZXJWYWx1ZSkpIHsKKyAgICBpZiAoaXNuYW4obnVtYmVyVmFs
dWUpIHx8IGlzaW5mKG51bWJlclZhbHVlKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICByZXR1
cm4gbnVtYmVyT2JqZWN0LT5VaW50MzJWYWx1ZSgpOworfQorCitpbnQ2NF90IHRvSW50NjQodjg6
OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sIGVuZm9yY2VSYW5nZSwgYm9vbCYgb2spCit7
CisgICAgb2sgPSB0cnVlOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1i
aXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZh
bHVlLT5JbnQzMlZhbHVlKCk7CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0
byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFs
dWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAg
ICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgLy8gQ2FuIHRo
ZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlcj8KLSAgICB2
ODo6TG9jYWw8djg6OlVpbnQzMj4gdWludFZhbHVlID0gdmFsdWUtPlRvVWludDMyKCk7Ci0gICAg
aWYgKHVpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsKKyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+
VmFsdWUoKTsKKworICAgIGlmIChlbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgaWYgKGlzbmFuKHgp
IHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihm
YWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAtKGtKU01heEludGVnZXIgLSAxKSB8fCB4ID4gKGtK
U01heEludGVnZXIgLSAxKSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8v
IE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQu
CisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgs
IGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2VyOworfQorCit1aW50NjRfdCB0b1VJbnQ2NCh2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wgZW5mb3JjZVJhbmdlLCBib29sJiBvaykK
K3sKKyAgICBvayA9IHRydWU7CisKKyAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMy
LWJpdCB1bnNpZ25lZCBpbnRlZ2VyLgorICAgIGlmICh2YWx1ZS0+SXNVaW50MzIoKSkKKyAgICAg
ICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgpOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUg
dmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgewor
ICAgICAgICBpbnQzMl90IHJlc3VsdCA9IHZhbHVlLT5JbnQzMlZhbHVlKCk7CisgICAgICAgIGlm
IChyZXN1bHQgPj0gMCkKKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAg
Ly8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CisgICAgdjg6OkxvY2Fs
PHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOworICAgIGlmIChu
dW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgIHJl
dHVybiAwOwogICAgIH0KIAotICAgIHJldHVybiB1aW50VmFsdWUtPlZhbHVlKCk7CisgICAgZG91
YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisKKyAgICBpZiAoZW5mb3JjZVJhbmdlKSB7
CisgICAgICAgIGlmIChpc25hbih4KSB8fCBpc2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBm
YWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8
IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4g
KGtKU01heEludGVnZXIgLSAxKSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAg
ICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiB4OworICAgIH0KKworICAg
IC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJe
NjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2Vy
KHgsIGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2VyOwogfQogCiB2ODo6UGVyc2lzdGVudDx2
ODo6RnVuY3Rpb25UZW1wbGF0ZT4gY3JlYXRlUmF3VGVtcGxhdGUoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOEJpbmRpbmcuaAppbmRleCAxYzNlOTUxMTMwYTBmMTk5NDBlNjAwYWI3MTFlMDlh
ZTExYjE5OTE4Li5iYjU3Njc5OWQ0YzIxYTBhZjAwYzRhNWU2ODM5NWE3MmFkOGY0MDc4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaApAQCAtNTYsNiArNTYsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgV29ybGRDb250ZXh0SGFuZGxlOwogCiAgICAgY29u
c3QgaW50IGtNYXhSZWN1cnNpb25EZXB0aCA9IDIyOworICAgIGNvbnN0IGxvbmcgbG9uZyBrSlNN
YXhJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAwMExMOwogCiAgICAgLy8gU2NoZWR1bGUgYSBET00g
ZXhjZXB0aW9uIHRvIGJlIHRocm93biwgaWYgdGhlIGV4Y2VwdGlvbiBjb2RlIGlzIGRpZmZlcmVu
dAogICAgIC8vIGZyb20gemVyby4KQEAgLTM1OSwyMCArMzYwLDI0IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogICAgIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5k
bGU8djg6OlZhbHVlPik7CiAKLSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50
ZWdlci4gIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBi
ZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBvciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5m
aW5pdHkuCi0gICAgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29s
JiBvayk7CisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHNpZ25lZCBpbnRlZ2Vy
LiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29u
dmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAg
IC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtbG9uZworICAgIGludDMyX3QgdG9J
bnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIGJvb2wgZW5mb3JjZVJhbmdlLCBib29sJiBvayk7
CisgICAgaW5saW5lIGludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUs
IGJvb2wmIG9rKSB7IHJldHVybiB0b0ludDMyKHZhbHVlLCBmYWxzZSwgb2spOyB9CiAKICAgICAv
LyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVy
c2lvbiBjYW5ub3QgZmFpbC4KLSAgICBpbmxpbmUgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6
VmFsdWU+IHZhbHVlKQorICAgIGlubGluZSBpbnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6
VmFsdWU+IHZhbHVlKQogICAgIHsKICAgICAgICAgYm9vbCBvazsKICAgICAgICAgcmV0dXJuIHRv
SW50MzIodmFsdWUsIG9rKTsKICAgICB9CiAKLSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAz
Mi1iaXQgdW5zaWduZWQgaW50ZWdlci4gIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAg
IC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gdW5zaWduZWQgaW50ZWdlciBvciBj
b252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgdWludDMyX3QgdG9VSW50MzIo
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvayk7CisgICAgLy8gQ29udmVydCBh
IHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxz
IGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3Ig
dGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcv
VFIvV2ViSURMLyNlcy11bnNpZ25lZC1sb25nCisgICAgdWludDMyX3QgdG9VSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+LCBib29sIGVuZm9yY2VSYW5nZSwgYm9vbCYgb2spOworICAgIGlubGlu
ZSB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9r
KSB7IHJldHVybiB0b1VJbnQzMih2YWx1ZSwgZmFsc2UsIG9rKTsgfQogCiAgICAgLy8gQ29udmVy
dCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZl
cnNpb24gY2Fubm90IGZhaWwuCiAgICAgaW5saW5lIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5k
bGU8djg6OlZhbHVlPiB2YWx1ZSkKQEAgLTM4MSwxNCArMzg2LDM1IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICAgICAgcmV0dXJuIHRvVUludDMyKHZhbHVlLCBvayk7CiAgICAgfQogCi0gICAg
aW5saW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8g
Q29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lv
biBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVt
YmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cu
dzMub3JnL1RSL1dlYklETC8jZXMtbG9uZy1sb25nCisgICAgaW50NjRfdCB0b0ludDY0KHY4OjpI
YW5kbGU8djg6OlZhbHVlPiwgYm9vbCBlbmZvcmNlUmFuZ2UsIGJvb2wmIG9rKTsKKworICAgIC8v
IENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJz
aW9uIGNhbm5vdCBmYWlsLgorICAgIGlubGluZSBpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0
Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CisgICAgICAgIGJvb2wgb2s7CisgICAgICAgIGNvbnN0
IGJvb2wgZW5mb3JjZVJhbmdlID0gZmFsc2U7CisgICAgICAgIHJldHVybiB0b0ludDY0KHZhbHVl
LCBlbmZvcmNlUmFuZ2UsIG9rKTsKICAgICB9CiAKLSAgICBpbmxpbmUgbG9uZyBsb25nIHRvSW50
NjQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRv
IGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQor
ICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdl
IHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURM
LyNlcy11bnNpZ25lZC1sb25nLWxvbmcKKyAgICB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4sIGJvb2wgZW5mb3JjZVJhbmdlLCBib29sJiBvayk7CisKKyAgICAvLyBDb252
ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29u
dmVyc2lvbiBjYW5ub3QgZmFpbC4KKyAgICBpbmxpbmUgdWludDY0X3QgdG9VSW50NjQodjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0
PGxvbmcgbG9uZz4odmFsdWUtPkludGVnZXJWYWx1ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAg
ICAgICAgY29uc3QgYm9vbCBlbmZvcmNlUmFuZ2UgPSBmYWxzZTsKKyAgICAgICAgcmV0dXJuIHRv
VUludDY0KHZhbHVlLCBlbmZvcmNlUmFuZ2UsIG9rKTsKKyAgICB9CisKKyAgICBpbmxpbmUgZmxv
YXQgdG9GbG9hdCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSkKKyAgICB7CisgICAgICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZhbHVlKCkpOwogICAgIH0KIAog
ICAgIGlubGluZSBib29sIGlzVW5kZWZpbmVkT3JOdWxsKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2
YWx1ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01h
Y3Jvcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKaW5k
ZXggMzUyZWJlZmM2MTM4MTNlZTQ3YWZlYjZkZjZmMDA4ZjYxMDIxZDY0YS4uZjBhMDhhMmExNmZi
ODkwZTNmZGU3OWUxMTEwZWEyNmQxMTBhM2U3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKQEAgLTQ3LDcgKzQ3LDM5IEBAIGVudW0gUGFyYW1ldGVy
RGVmYXVsdFBvbGljeSB7CiAgICAgICAgICAgICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAg
ICBcCiAgICAgfQogCi0jZGVmaW5lIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UodHlw
ZSwgdmFyLCB2YWx1ZSkgXAorI2RlZmluZSBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodHlwZSwg
dmFyLCB2YWx1ZSkgXAorICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAgICBib29sIG9rID0gdHJ1ZTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICAgICAgdjg6OlRyeUNhdGNoIGJsb2NrOyAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICAgICAgdmFyID0gKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgICAgaWYgKGJsb2NrLkhhc0NhdWdodCgpKSAgICAgICAgICAgICAgICAgXAorICAgICAg
ICAgICAgICAgIHJldHVybiBibG9jay5SZVRocm93KCk7ICAgICAgICAgICAgXAorICAgICAgICB9
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAo
VU5MSUtFTFkoIW9rKSkgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgcmV0
dXJuIHRocm93VHlwZUVycm9yKDApOyAgICAgICAgICAgICAgXAorICAgIH0KKworI2RlZmluZSBW
OFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRCh0eXBlLCB2YXIsIHZhbHVlKSBcCisgICAgdHlw
ZSB2YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAgICBib29sIG9rID0gdHJ1ZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgIHY4OjpUcnlDYXRjaCBibG9jazsgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICAgICAgdmFyID0gKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICBpZiAoYmxvY2suSGFzQ2F1Z2h0KCkpIHsgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgICAgICAgICBibG9jay5SZVRocm93KCk7ICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAgICAgICAgICAgIHJldHVybjsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkgeyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgICAgICAgICB0aHJvd1R5cGVFcnJvcigwKTsgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybjsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgfQorCisjZGVmaW5lIFY4VFJZQ0FUQ0hfRk9SX1Y4
U1RSSU5HUkVTT1VSQ0UodHlwZSwgdmFyLCB2YWx1ZSkgICAgICAgXAogICAgIHR5cGUgdmFyKHZh
bHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICBp
ZiAoIXZhci5wcmVwYXJlKCkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiAgICAgICAgIHJldHVybiB2ODo6VW5kZWZpbmVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9UeXBlQ29udmVyc2lvbnMuaAppbmRleCAyNGIzM2RkMTgyZWVkYzgzMWY2YTVhNTE5MTljODRk
NDNlYzAxZGQ3Li44ZGUxMDJmMmEyNDc3ZGUxMDA5NTgzNjM4ODY3MmRhNTgxMGM4OGY2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKQEAgLTM2LDI1ICszNiwzMyBA
QCBjbGFzcyBUeXBlQ29udmVyc2lvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxUeXBlQ29udmVyc2lv
bnM+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxUeXBlQ29udmVyc2lvbnM+IGNy
ZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBUeXBlQ29udmVyc2lvbnMoKSk7IH0KIAotICAg
IGxvbmcgdGVzdExvbmcoKSB7IHJldHVybiBtX3Rlc3RMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0
TG9uZyhsb25nIHZhbHVlKSB7IG1fdGVzdExvbmcgPSB2YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxv
bmcgdGVzdFVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9uZzsgfQotICAg
IHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1fdGVzdFVu
c2lnbmVkTG9uZyA9IHZhbHVlOyB9CisgICAgbG9uZyB0ZXN0TG9uZygpIHsgcmV0dXJuIG1fbG9u
ZzsgfQorICAgIHZvaWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX2xvbmcgPSB2YWx1ZTsg
fQorICAgIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmcoKSB7IHJldHVybiBtX2xvbmc7IH0KKyAg
ICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VMb25nKGxvbmcgdmFsdWUpIHsgbV9sb25nID0gdmFs
dWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vu
c2lnbmVkTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25n
IHZhbHVlKSB7IG1fdW5zaWduZWRMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZzsgfQor
ICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZh
bHVlKSB7IG1fdW5zaWduZWRMb25nID0gdmFsdWU7IH0KIAotICAgIGxvbmcgbG9uZyB0ZXN0TG9u
Z0xvbmcoKSB7IHJldHVybiBtX3Rlc3RMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdExvbmdM
b25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RMb25nTG9uZyA9IHZhbHVlOyB9Ci0gICAgdW5z
aWduZWQgbG9uZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5z
aWduZWRMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWdu
ZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQor
ICAgIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdMb25nOyB9CisgICAg
dm9pZCBzZXRUZXN0TG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1
ZTsgfQorICAgIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcoKSB7IHJldHVybiBt
X2xvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcobG9uZyBs
b25nIHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgbG9u
ZyB0ZXN0VW5zaWduZWRMb25nTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQor
ICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVl
KSB7IG1fdW5zaWduZWRMb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyBsb25n
IHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExv
bmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyh1
bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0K
IAogcHJpdmF0ZToKICAgICBUeXBlQ29udmVyc2lvbnMoKQogICAgIHsKICAgICB9CiAKLSAgICBs
b25nIG1fdGVzdExvbmc7Ci0gICAgdW5zaWduZWQgbG9uZyBtX3Rlc3RVbnNpZ25lZExvbmc7Ci0g
ICAgbG9uZyBsb25nIG1fdGVzdExvbmdMb25nOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Rl
c3RVbnNpZ25lZExvbmdMb25nOworICAgIGxvbmcgbV9sb25nOworICAgIHVuc2lnbmVkIGxvbmcg
bV91bnNpZ25lZExvbmc7CisgICAgbG9uZyBsb25nIG1fbG9uZ0xvbmc7CisgICAgdW5zaWduZWQg
bG9uZyBsb25nIG1fdW5zaWduZWRMb25nTG9uZzsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlk
bCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbAppbmRleCAxYjQ3
MTgxODhjMzQwODQ0ODE1YzM4MWIyOWU0YjhiZDIyNjM2NzY5Li45ZTQzMTIzZWE5MTRiMzE3MTQz
ZmFkYWVmMzc2MGU3NDgxNGY3NjczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L1R5cGVDb252ZXJzaW9ucy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29u
dmVyc2lvbnMuaWRsCkBAIC0yNyw4ICsyNywxMiBAQAogICAgIE9taXRDb25zdHJ1Y3RvcgogXSBp
bnRlcmZhY2UgVHlwZUNvbnZlcnNpb25zIHsKICAgICBhdHRyaWJ1dGUgbG9uZyB0ZXN0TG9uZzsK
KyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZzsK
ICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyB0ZXN0VW5zaWduZWRMb25nOworICAgIGF0dHJp
YnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmc7CiAKICAgICBhdHRyaWJ1dGUgbG9uZyBsb25nIHRlc3RMb25nTG9uZzsKKyAgICBhdHRy
aWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZzsK
ICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25nOwor
ICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmc7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDlhYWU2ZWNkNDgwZmYxODhmZmI5
Y2JlOWIyYmYxNDlmNmEyMzAwNGUuLjFhNTY2NzNjYWUxYWI3YzYzNDBmZmM5OWVmOTcwZjQ2NGFk
OWY3YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0xMi0yNyAgSm9zaHVhIEJlbGwgIDxq
c2JlbGxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtWOF0gQmluZGluZzogSW1wbGVtZW50IEVu
Zm9yY2VSYW5nZSBJREwgQXR0cmlidXRlIGZvciBsb25nIGxvbmcgY29udmVyc2lvbnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk2Nzk4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4
ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBz
dG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qczoK
KyAgICAgICAgKGRlbGV0ZVN1Y2Nlc3MpOgorCiAyMDEzLTAxLTA3ICBSeW9zdWtlIE5pd2EgIDxy
bml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBNYWMgTGlvbiByZXN1bHQgYWZ0ZXIgcjEz
ODk4Ni4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24t
bnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMK
aW5kZXggMmU3MDA2YzVhOWYyZDQ5MjIxZWJmMzQyOTk0MDNhMThmMGJmOWE2ZC4uYTI4MmNjZmZi
OTIxODI0NzZhODEwMTc5ODY5ZjkxZmRhZDdkMGE2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRl
cnMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmlj
LXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKQEAgLTY0LDcgKzY0LDcgQEAgZnVuY3Rpb24g
bm9uTnVtZXJpY1BvbGljeSh0ZW1wbGF0ZSkKICAgICB0cnkgewogICAgICAgICBldmFsKHRlbXBs
YXRlKTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIE5hTkFsbG93ZWQgPSAwOworICAgICAg
ICBuYW5BbGxvd2VkID0gMDsKICAgICB9CiAKICAgICB2YXIgb21pdEFsbG93ZWQgPSAtMTsgLy8g
bWVhbnMgIm5vdCBhcHBsaWNhYmxlIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93
ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2Vi
aWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQKaW5kZXggNWIyYThjZjE0ZDRlNmRlZTBhYjc0
OWZhOGZjZjgxMDM5YTc4ZDBkOC4uMzcwNThjOTMwOTMxNjYzZTM1ZTFkODMwMTQwODVlOTg0ZDFk
NDg1NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5n
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBp
bmctZXhwZWN0ZWQudHh0CkBAIC02OSw2ICs2OSw4IEBAIGNvbnZlcnRlci50ZXN0TG9uZyA9IHRy
dWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICcn
CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMn
CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxs
CkBAIC03Nyw2ICs3OSw2OSBAQCBjb252ZXJ0ZXIudGVzdExvbmcgPSB1bmRlZmluZWQKIFBBU1Mg
Y29udmVydGVyLnRlc3RMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgog
CitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1
ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
LTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMg
LTB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
MHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRkZGRkYgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAw
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwMDAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5N
QVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gLU51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZB
TFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMS45OQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLUluZmlu
aXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBU
eXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gZmFsc2UKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2
YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJv
ci4KKwogUEFTUyAndGVzdFVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDAKQEAgLTE0MSw2ICsyMDYsOCBAQCBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcxJwor
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gbnVsbApAQCAtMTQ5LDYgKzIxNiw2NCBAQCBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZyBpcyAwCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0ge3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgog
CitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1
ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPT09
ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTEgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0YK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg3RgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gLTB4ODAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0w
eDgwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAxIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID0gLTB4ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAw
MDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1OdW1iZXIu
TUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMS45OQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRl
ci4tMS45OSA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24gU3ludGF4RXJyb3I6IFVuZXhwZWN0
ZWQgdG9rZW4gLS4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSBJbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1JbmZpbml0eSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBmYWxzZQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcx
JworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJ2FiYycgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rp
b24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTICd0
ZXN0TG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gMApAQCAtMTkzLDE2ICszMTgsMjggQEAgY29udmVydGVyLnRlc3RMb25nTG9uZyA9IE51bWJl
ci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RMb25n
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAt
TnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSAxLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMg
MQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0xLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBJbmZpbml0eQorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtSW5maW5p
dHkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IGZhbHNlCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RMb25n
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IG51bGwK
QEAgLTIxMSw2ICszNDgsNzIgQEAgY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHVuZGVmaW5lZAog
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RMb25n
TG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2Vw
dGlvbiBFcnJvci4KIAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nJyBpbiBjb252ZXJ0
ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkYKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
LTB4ODEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAweEZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
aXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkZG
RkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweEZGRkZG
RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMAorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAwMDAxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMDAwMDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1O
dW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
aXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTnVtYmVyLk1B
WF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0xLjk5CitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTEKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE5hTiB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJzEnCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBudWxsCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNl
cHRpb24gRXJyb3IuCisKIFBBU1MgJ3Rlc3RVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0ZXIg
aXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID09PSAn
bnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAwCkBAIC0y
NTUsMTYgKzQ1OCwyOCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIu
TUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NQVhf
VkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0xLjk5CiBQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0g
ZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcnCiBQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSBudWxsCkBAIC0yNzMsNiArNDg4LDY0IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMg
MAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlv
bigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFT
UyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID09PSAn
bnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0x
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyBpcyAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IC0weDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgxIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gLTB4ODAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAw
MDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAtMHg4MDAwMDAwMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAw
MDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IC0xLjk5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IElu
ZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHVu
ZGVmaW5lZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlv
bigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKIFBBU1Mgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbAppbmRleCAyMTkxM2JlMGZlODNjMDIxNzk0
MDlkN2M2NWJmZWNhY2Y0MzcwMDEyLi4zNDAyODVjOTYxMzQ1Nzg2MzdmOGY2MzM1Mjc2MjE5NWEw
MWVjMGI5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBp
bmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRt
bApAQCAtMzYsMTEgKzM2LDIzIEBAIGZ1bmN0aW9uIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKGF0
dHJpYnV0ZSkKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKICAgICBjb252
ZXJ0KGF0dHJpYnV0ZSwgInRydWUiLCAiMSIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJyci
LCAiMCIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKICAgICBjb252ZXJ0
KGF0dHJpYnV0ZSwgIidhYmMnIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwi
LCAiMCIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAidW5kZWZpbmVkIiwgIjAiKTsKIH0KIAor
ZnVuY3Rpb24gdGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UoYXR0cmlidXRlKQor
eworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiZmFsc2UiLCAiMCIpOworICAgIGNvbnZlcnQoYXR0
cmlidXRlLCAidHJ1ZSIsICIxIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInJyIsICIwIik7
CisgICAgY29udmVydChhdHRyaWJ1dGUsICInMSciLCAiMSIpOworICAgIGNvbnZlcnRUaHJvd3Mo
YXR0cmlidXRlLCAiJ2FiYyciKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwiLCAiMCIp
OworICAgIGNvbnZlcnRUaHJvd3MoYXR0cmlidXRlLCAidW5kZWZpbmVkIik7Cit9CisKIHR5cGUg
PSAidGVzdExvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIp
OwpAQCAtNzUsNiArODcsNDAgQEAgdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252
ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIp
OwogZGVidWcoIiIpOwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VMb25nIjsKK3ZlcmlmeUF0
dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi0xIik7
Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5
cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4
MCIpOworY29udmVydCh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOwor
Y29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZl
cnQodHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4ODAwMDAwMDAiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgw
MDAwMDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRo
cm93cyh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVt
YmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBl
LCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7
Citjb252ZXJ0KHR5cGUsICItMS45OSIsICItMSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5m
aW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93
cyh0eXBlLCAiTmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBl
KTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVy
cm9yO319Iik7CitkZWJ1ZygiIik7CisKIHR5cGUgPSAidGVzdFVuc2lnbmVkTG9uZyI7CiB2ZXJp
ZnlBdHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC0xMDksNiArMTU1LDQw
IEBAIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93cyh0eXBlLCAi
e3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIiKTsKIAor
dHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0
eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xIik7Citj
b252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUs
ICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIt
MHg4MCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4
N0ZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYi
KTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Ii0weDgwMDEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwg
IjB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIi0weDgwMDAwMDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAw
MSIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydFRo
cm93cyh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1J
Tl9WQUxVRSIsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIp
OworY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBl
LCAiMS45OSIsICIxIik7Citjb252ZXJ0VGhyb3dzKCItMS45OSIpOworY29udmVydFRocm93cyh0
eXBlLCAiSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29u
dmVydFRocm93cyh0eXBlLCAiTmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VS
YW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhy
b3cgbmV3IEVycm9yO319Iik7CitkZWJ1ZygiIik7CisKIHR5cGUgPSAidGVzdExvbmdMb25nIjsK
IHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTEzMiwxOSAr
MjEyLDUxIEBAIGNvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIik7CiBjb252ZXJ0KHR5cGUsICIw
eERDQkE5ODc2NTQzMjEwIik7CiBjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAi
KTsKIGNvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKLS8vIEZJWE1FOiBJ
bmNvbnNpc3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwg
Ik51bWJlci5NQVhfVkFMVUUiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9W
QUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2Nv
bnZlcnQodHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIjEu
OTkiLCAiMSIpOwogY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsKLS8vIEZJWE1FOiBJbmNv
bnNpc3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIklu
ZmluaXR5IiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKLS8vY29u
dmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIkluZmluaXR5IiwgIjAiKTsK
K2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICJOYU4iLCAi
MCIpOwogdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252ZXJ0VGhyb3dzKHR5cGUs
ICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwogZGVidWcoIiIpOwog
Cit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlw
ZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVydCh0
eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIp
OworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2NvbnZl
cnQodHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUsICIt
MHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdG
RkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIw
eEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBl
LCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAi
KTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBl
LCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVy
Lk1BWF9WQUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsK
K2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEi
KTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIsICIwIik7Cit0ZXN0Tm9u
TnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Int2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CitkZWJ1ZygiIik7CisK
IHR5cGUgPSAidGVzdFVuc2lnbmVkTG9uZ0xvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwog
Y29udmVydCh0eXBlLCAiMCIpOwpAQCAtMTY4LDE4ICsyODAsNTAgQEAgY29udmVydCh0eXBlLCAi
LTB4ODAwMDAwMDEiLCAiMHhGRkZGRkZGRjdGRkZGRkZGIik7CiBjb252ZXJ0KHR5cGUsICIweERD
QkE5ODc2NTQzMjEwIik7CiBjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsK
IGNvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKLS8vIEZJWE1FOiBJbmNv
bnNpc3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIk51
bWJlci5NQVhfVkFMVUUiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxV
RSIsICIwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZl
cnQodHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIjEuOTki
LCAiMSIpOwogY29udmVydCh0eXBlLCAiLTEuOTkiLCAiMHhGRkZGRkZGRkZGRkZGRkZGIik7Ci0v
LyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252
ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIs
ICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7Citjb252ZXJ0KHR5cGUsICJJbmZp
bml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0
eXBlLCAiTmFOIiwgIjAiKTsKIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVy
dFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsK
IGRlYnVnKCIiKTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyI7
Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICItMSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3
RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29u
dmVydFRocm93cyh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7
Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29u
dmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZG
Iik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZG
RkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93
cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1
NDMyMTAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVy
dCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAi
TnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFM
VUUiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydFRocm93cyh0eXBlLCAi
LTEuOTkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dz
KHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5v
bk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOwor
CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNp
b24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKaW5kZXggMWU4YmQ1
N2JkMzExYjgyY2U5ZjI0OGJkZDc0NjQ0YmMyZjAyZDZkNS4uMTQ1NTdkNDUzNjZkZGYzNDFiNmMw
MTIwNzBlMjg5MTIzYTExODg3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3Rl
ZC50eHQKQEAgLTE4LDYgKzE4LDE1IEBAIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAwKSB0
aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKIEV4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9u
IGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkKIFBBU1MgRXhjZXB0aW9uIHdhcyB0aHJv
d24uCiBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpIHRocmV3IFR5cGVFcnJvcjogVHlw
ZSBlcnJvcgorRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3Bl
bihkYm5hbWUsIEluZmluaXR5KQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZpbml0eSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9y
CitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgLUluZmluaXR5KQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5kZXhlZERC
Lm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhw
ZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIE5h
TikKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgTmFOKSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKIEV4cGVjdGluZyBUeXBlRXJyb3Ig
ZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkKIFBBU1MgRXhjZXB0aW9u
IHdhcyB0aHJvd24uCiBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpIHRocmV3IFR5cGVF
cnJvcjogVHlwZSBlcnJvcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMgYi9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcwpp
bmRleCBhZjM1ZjJkNGJjODJiMGJjZGI1YjAxNDhjNjMwZjIxNTM5NjNiZmMxLi5kMzM5YzMyYzFj
NmIxMTQ5N2UxY2M4OWQwYzA3MzVhYTM5OTk3NDc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcwor
KysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1i
YWQtcGFyYW1ldGVycy5qcwpAQCAtMjAsNiArMjAsOSBAQCBmdW5jdGlvbiBkZWxldGVTdWNjZXNz
KGV2dCkgewogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4o
ZGJuYW1lLCAnc3RyaW5ndmVyc2lvbicpIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBl
Y3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAwKSIsICJUeXBlRXJyb3Ii
KTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgLTUpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygi
aW5kZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZpbml0eSkiLCAiVHlwZUVycm9yIik7CisgICAgZXZh
bEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0
eSkiLCAiVHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRl
eGVkREIub3BlbihkYm5hbWUsIE5hTikiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVj
dEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKSIsICJUeXBlRXJyb3Ii
KTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgMHgyMDAwMDAwMDAwMDAwMCkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4
Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIG51bGwpIiwgIlR5cGVFcnJvciIp
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187960</attachid>
            <date>2013-02-12 16:42:02 -0800</date>
            <delta_ts>2013-02-13 14:34:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130212163832.patch</filename>
            <type>text/plain</type>
            <size>127414</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNjQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjUwODgzMjRkMzU1ZThh
ZDRiMmMzNTcwNTRiZjMzNzUzMjJjY2E0MS4uZDBmYjA3MWJlZmVlNTA1ODE4Njc1MmFmYzRiNjA5
YjAxMjQ2MzM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTEyLTI3ICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUg
W0VuZm9yY2VSYW5nZV0gZXh0ZW5kZWQgYXR0cmlidXRlIGluIElETCBkZWZpbmVzIHRocm93aW5n
IGJlaGF2aW9yIGZvciBzaWduZWQvdW5zaWduZWQKKyAgICAgICAgbG9uZy9sb25nIGxvbmcgY29u
dmVyc2lvbnMgZm9yIE5hTnMsIGluZmluaXRpZXMsIGFuZCB2YWx1ZXMgPj0gMl4zMiAvIDJeNTMu
IFRoaXMgcGF0Y2gKKyAgICAgICAgaW1wbGVtZW50cyB0aGlzIGJlaGF2aW9yIGFuZCByZW1vdmVz
IHJlZHVuZGFudCBjb2RlIGluIHRoZSBJbmRleGVkREIgaW1wbGVtZW50YXRpb24uCisKKyAgICAg
ICAgQWRkZWQgZXhhbXBsZXMgb2YgW0VuZm9yY2VSYW5nZV0gYXR0cmlidXRlcywgdXBkYXRlZCBi
aW5kaW5nIHRlc3QgcmVzdWx0cywKKyAgICAgICAgYW5kIHVwZGF0ZWQgcmVsZXZhbnQgSW5kZXhl
ZERCIHRlc3RzOgorICAgICAgICAgIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBh
cmFtZXRlcnMuaHRtbAorICAgICAgICAgIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tZW5j
b2RpbmcuaHRtbAorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OklEQkN1cnNvcjo6YWR2YW5jZSk6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmg6CisgICAgICAgIChJREJDdXJzb3IpOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCRmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJGYWN0b3J5OjpvcGVu
KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5Lmg6CisgICAgICAgIChJ
REJGYWN0b3J5KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAg
KEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKToKKyAgICAgICAgKEpTVmFsdWVUb05hdGl2ZSk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGw6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHA6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5k
aW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50MzIpOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0
KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9W
OEJpbmRpbmcuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6dG9JbnQz
Mik6CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0lu
dDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRv
RmxvYXQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oOgorCiAyMDEz
LTAyLTEyICBUb21hcyBQb3BlbGEgIDx0cG9wZWxhQHJlZGhhdC5jb20+CiAKICAgICAgICAgW0dU
S11bSW50cm9zcGVjdGlvbl0gR09iamVjdCBiaW5kaW5ncyBmb3IgRGF0YVRyYW5zZmVySXRlbUxp
c3QgLSBvbmUgYWRkKCkgbWV0aG9kIG11c3QgYmUgcmVtb3ZlZCBmcm9tIC5pZGwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCmluZGV4IDQ2OGVkYmVi
YTkxMTE2OWEwOTNhMmU3ZDIzNDkwODhmY2MyODM2YTUuLjYyNzY2MDM2NzNhYTA4MzA2MjA5NjY4
YTVmZTgzMjkzNGZhZmIwMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIFBhc3NSZWZQdHI8SURCUmVxdWVz
dD4gSURCQ3Vyc29yOjp1cGRhdGUoU2NyaXB0U3RhdGUqIHN0YXRlLCBTY3JpcHRWYWx1ZSYgdmFs
dWUsCiAgICAgcmV0dXJuIG9iamVjdFN0b3JlLT5wdXQoSURCRGF0YWJhc2VCYWNrZW5kSW50ZXJm
YWNlOjpDdXJzb3JVcGRhdGUsIElEQkFueTo6Y3JlYXRlKHRoaXMpLCBzdGF0ZSwgdmFsdWUsIG1f
Y3VycmVudFByaW1hcnlLZXksIGVjKTsKIH0KIAotdm9pZCBJREJDdXJzb3I6OmFkdmFuY2UobG9u
ZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgSURCQ3Vyc29yOjphZHZhbmNl
KHVuc2lnbmVkIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIGVjID0gMDsK
ICAgICBJREJfVFJBQ0UoIklEQkN1cnNvcjo6YWR2YW5jZSIpOwpAQCAtMTY2LDggKzE2Niw3IEBA
IHZvaWQgSURCQ3Vyc29yOjphZHZhbmNlKGxvbmcgbG9uZyBjb3VudCwgRXhjZXB0aW9uQ29kZSYg
ZWMpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQg
b25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgot
ICAgIGlmIChjb3VudCA8IDEgfHwgY291bnQgPiBVSU5UX01BWCkgeworICAgIGlmICghY291bnQp
IHsKICAgICAgICAgZWMgPSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCmluZGV4IDFjODMxNjQw
MjZkYTQ0YjNmMDhlZjkzZmY0MmUzYWI0NWZmZjU5MmMuLmE3MmFiYjIzYmFiODM1MTg3ZDBiMjg3
NzM1MGJmNTU4MGQzNzQwNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkN1cnNvci5oCkBAIC03NSw4ICs3NSw3IEBAIHB1YmxpYzoKICAgICBJREJBbnkqIHNvdXJj
ZSgpIGNvbnN0OwogCiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiB1cGRhdGUoU2NyaXB0U3Rh
dGUqLCBTY3JpcHRWYWx1ZSYsIEV4Y2VwdGlvbkNvZGUmKTsKLSAgICAvLyBGSVhNRTogTWFrZSB0
aGlzIHVuc2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgdm9p
ZCBhZHZhbmNlKGxvbmcgbG9uZywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgYWR2YW5jZSh1
bnNpZ25lZCBsb25nLCBFeGNlcHRpb25Db2RlJik7CiAgICAgLy8gRklYTUU6IFRyeSB0byBtb2Rp
ZnkgdGhlIGNvZGUgZ2VuZXJhdG9yIHNvIHRoaXMgb3ZlcmxvYWQgaXMgdW5uZWVkZWQuCiAgICAg
dm9pZCBjb250aW51ZUZ1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRpb25D
b2RlJiBlYykgeyBjb250aW51ZUZ1bmN0aW9uKHN0YXRpY19jYXN0PElEQktleSo+KDApLCBlYyk7
IH0KICAgICB2b2lkIGNvbnRpbnVlRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNv
bnN0IFNjcmlwdFZhbHVlJiBrZXksIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCmluZGV4IDQ1NzBjMWVjYzg3ZDA4Yjkw
MTAwM2EzZGM4ZjI3ODYxZjExODhlYTEuLjRiNjI2NWI0MjhmMjZlOTFmYzA3YmI4YjVjMjIxNWQ3
ZGM0MjM0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QkN1cnNvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vy
c29yLmlkbApAQCAtMzUsOCArMzUsNyBAQAogCiAgICAgW0NhbGxXaXRoPVNjcmlwdFN0YXRlXSBJ
REJSZXF1ZXN0IHVwZGF0ZShpbiBhbnkgdmFsdWUpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0
aW9uKTsKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxv
bmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgdm9pZCBhZHZhbmNlKGluIGxv
bmcgbG9uZyBjb3VudCkKKyAgICB2b2lkIGFkdmFuY2UoaW4gW0VuZm9yY2VSYW5nZV0gdW5zaWdu
ZWQgbG9uZyBjb3VudCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogICAgIFtDYWxs
V2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBsZW1lbnRlZEFzPWNvbnRpbnVlRnVuY3Rp
b25dIHZvaWQgY29udGludWUoaW4gW09wdGlvbmFsXSBhbnkga2V5KQogICAgICAgICByYWlzZXMg
KERPTUV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QkZhY3RvcnkuY3BwCmluZGV4IGQwMTIwZjYwYTg5YWRmZmI3ZDE2NWM5YWFiNzNmOWY3NmYzMTEw
YjAuLjFkNWYwZmJiMWFiZjFlNWFkZGQ3Mzg1Mzc5M2Y5ZDBkYzE4MDJmNzIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCkBAIC0xMTEsMTEg
KzExMSw5IEBAIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gSURCRmFjdG9yeTo6Z2V0RGF0YWJhc2VO
YW1lcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250CiAgICAgcmV0dXJuIHJlcXVlc3Q7CiB9
CiAKLVBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIGludDY0X3QgdmVy
c2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCitQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IElE
QkZhY3Rvcnk6Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgU3Ry
aW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMp
CiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG9ubHkgbmVlZCB0byBjaGVjayBmb3IgMCBv
bmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBjb25zdCBpbnQ2NF90IG1heEVDTUFT
Y3JpcHRJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAwMExMIC0gMTsKLSAgICBpZiAodmVyc2lvbiA8
IDEgfHwgdmVyc2lvbiA+IG1heEVDTUFTY3JpcHRJbnRlZ2VyKSB7CisgICAgaWYgKCF2ZXJzaW9u
KSB7CiAgICAgICAgIGVjID0gVHlwZUVycm9yOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgKaW5kZXggY2Ix
YjdiMGIzNzZiN2FhNmQ4NDljNjg0OGIzMGUzZTFjZTYwMmVmOC4uOTgxZGU4YzMyOGY4YTJmMWVk
OWU3NzhiY2JkOTBkMjZmZGJhMWQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkZhY3RvcnkuaApAQCAtNTgsNyArNTgsNyBAQCBwdWJsaWM6CiAgICAgUGFzc1Jl
ZlB0cjxJREJSZXF1ZXN0PiBnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
LCBFeGNlcHRpb25Db2RlJik7CiAKICAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9w
ZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgRXhjZXB0aW9u
Q29kZSYpOwotICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZlcnNpb24sIEV4Y2Vw
dGlvbkNvZGUmKTsKKyAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9wZW4oU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgdW5zaWduZWQgbG9uZyBsb25n
IHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVl
c3Q+IGRlbGV0ZURhdGFiYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcm
IG5hbWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHNob3J0IGNtcChTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUmIGZpcnN0LCBjb25zdCBTY3JpcHRWYWx1ZSYgc2Vj
b25kLCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkZhY3RvcnkuaWRsCmluZGV4IGE1MTYwNWIyYjRlMzEyOTdiYjU1ZGEzYjUxN2Q1ZGQx
MmMzZDIyYWMuLmVmNTFiYmY4Mzg3Y2E4YmQwZTZhZWJjNTEwNjNiOGQ1ZTY4ZDRmNmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCkBAIC0z
MSw4ICszMSw3IEBACiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIEltcGxl
bWVudGVkQXM9Z2V0RGF0YWJhc2VOYW1lc10gSURCUmVxdWVzdCB3ZWJraXRHZXREYXRhYmFzZU5h
bWVzKCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogCi0gICAgLy8gRklYTUU6IE1h
a2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgb25jZSB3ZWJraXQub3Jn
L2IvOTY3OTggbGFuZHMuCi0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElE
Qk9wZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW09wdGlvbmFsXSBsb25n
IGxvbmcgdmVyc2lvbikKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURC
T3BlbkRCUmVxdWVzdCBvcGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbRW5mb3JjZVJhbmdlLCBP
cHRpb25hbF0gdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pCiAgICAgICAgIHJhaXNlcyAoRE9N
RXhjZXB0aW9uKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCT3Bl
bkRCUmVxdWVzdCBkZWxldGVEYXRhYmFzZShpbiBET01TdHJpbmcgbmFtZSkKICAgICAgICAgcmFp
c2VzIChET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBhOTRjODhjNjhhNDlhNmQzMzUxODg1ZDNmNjY4
MWRhZDE3N2E5OTY1Li42ZWVmMGFhZDAzMDNjNjA5OWU5OGQyOGRmZjc0OTY2MjE5ZjExZDg0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQpAQCAtMzE1NCw2ICszMTU0LDcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIHJldHVy
biAiJHZhbHVlLnRvQm9vbGVhbihleGVjKSIgaWYgJHR5cGUgZXEgImJvb2xlYW4iOwogICAgIHJl
dHVybiAiJHZhbHVlLnRvTnVtYmVyKGV4ZWMpIiBpZiAkdHlwZSBlcSAiZG91YmxlIjsKICAgICBy
ZXR1cm4gIiR2YWx1ZS50b0Zsb2F0KGV4ZWMpIiBpZiAkdHlwZSBlcSAiZmxvYXQiOworICAgICMg
RklYTUU6IEFkZCBbRW5mb3JjZVJhbmdlXSBzdXBwb3J0CiAgICAgcmV0dXJuICIkdmFsdWUudG9J
bnQzMihleGVjKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9ydCI7CiAgICAg
cmV0dXJuICIkdmFsdWUudG9VSW50MzIoZXhlYykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25n
IiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwogICAgIHJldHVybiAic3RhdGljX2Nhc3Q8
JHR5cGU+KCR2YWx1ZS50b0ludGVnZXIoZXhlYykpIiBpZiAkdHlwZSBlcSAibG9uZyBsb25nIiBv
ciAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggODZmOGVhYmZmMWFmMWEx
YTRjNmY1Njg2YmMyOGY1ZTdhNmY1Mjc0Ni4uNDI3MDk3NDY4YzM5NzA4N2RkMTdjMGRkOTlhNTEy
NmY3ZDc4ODQzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9yVjgucG0KQEAgLTEyNDAsMTUgKzEyNDAsMTcgQEAgRU5ECiAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgICAgICByZXR1cm47XG4iKTsKICAgICAgICAg
fQogICAgIH0gZWxzZSB7Ci0gICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0
cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAg
ICBteSAkYXJyYXlUeXBlID0gJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5VHlwZSgkbmF0aXZlVHlw
ZSk7CiAKICAgICAgICAgaWYgKCRuYXRpdmVUeXBlID1+IC9eVjhTdHJpbmdSZXNvdXJjZS8pIHsK
KyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmlidXRlLT5zaWdu
YXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnREZWNscywgIiAgICAiIC4gQ29udmVydFRvVjhTdHJpbmdSZXNvdXJjZSgkYXR0
cmlidXRlLT5zaWduYXR1cmUsICRuYXRpdmVUeXBlLCAidiIsICR2YWx1ZSwgIlZPSUQiKSAuICJc
biIpOwogICAgICAgICB9IGVsc2lmICgkYXJyYXlUeXBlKSB7CisgICAgICAgICAgICBteSAkdmFs
dWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFsdWUiLCAiaW5m
by5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIg
ICAgVmVjdG9yPCRhcnJheVR5cGU+IHYgPSAkdmFsdWU7XG4iKTsKICAgICAgICAgfSBlbHNlIHsK
LSAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgJG5hdGl2ZVR5cGUgdiA9
ICR2YWx1ZTtcbiIpOworICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRh
dHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIiwgMSk7Cisg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIFY4VFJZQ0FUQ0hfRk9SX1RZ
UEVDSEVDS19WT0lEKCRuYXRpdmVUeXBlLCB2LCAkdmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKTtc
biIpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xODMwLDggKzE4MzIsOCBAQCBzdWIgR2VuZXJh
dGVQYXJhbWV0ZXJzQ2hlY2sKICAgICAgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3Ry
aW5nIC49ICIgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBhcmdzLkdldElzb2xhdGUo
KSk7XG4iOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICRw
YXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5hdGl2ZVR5cGUsICRwYXJh
bWV0ZXJOYW1lLCAiIC4KLSAgICAgICAgICAgICAgICAgSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0
ZXIsICJNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAkcGFyYW1JbmRleCwgJHBhcmFtZXRl
ckRlZmF1bHRQb2xpY3kpIiwgImFyZ3MuR2V0SXNvbGF0ZSgpIikgLiAiKTtcbiI7CisgICAgICAg
ICAgICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgIk1BWUJFX01JU1NJ
TkdfUEFSQU1FVEVSKGFyZ3MsICRwYXJhbUluZGV4LCAkcGFyYW1ldGVyRGVmYXVsdFBvbGljeSki
LCAiYXJncy5HZXRJc29sYXRlKCkiLCAxKTsKKyAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0
cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSygkbmF0aXZlVHlwZSwgJHBhcmFt
ZXRlck5hbWUsICR2YWx1ZSwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKICAgICAgICAgICAgIGlm
ICgkbmF0aXZlVHlwZSBlcSAnRGljdGlvbmFyeScpIHsKICAgICAgICAgICAgICAgICRwYXJhbWV0
ZXJDaGVja1N0cmluZyAuPSAiICAgIGlmICghJHBhcmFtZXRlck5hbWUuaXNVbmRlZmluZWRPck51
bGwoKSAmJiAhJHBhcmFtZXRlck5hbWUuaXNPYmplY3QoKSlcbiI7CiAgICAgICAgICAgICAgICAk
cGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKFwi
Tm90IGFuIG9iamVjdC5cIiwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKQEAgLTM5MjAsMTYgKzM5
MjIsMjcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIG15ICRzaWduYXR1cmUgPSBzaGlmdDsK
ICAgICBteSAkdmFsdWUgPSBzaGlmdDsKICAgICBteSAkZ2V0SXNvbGF0ZSA9IHNoaWZ0OworICAg
IG15ICRtYXlGYWlsID0gc2hpZnQ7CiAKICAgICBteSAkdHlwZSA9ICRzaWduYXR1cmUtPnR5cGU7
CisgICAgbXkgJGNvbnZlcnNpb25BdHRyaWJ1dGVzID0gJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkVuZm9yY2VSYW5nZSJ9ID8gIkZFbmZvcmNlUmFuZ2UiIDogIkZOb25lIjsKKyAg
ICBkaWUgIkNhbid0IGhhbmRsZSBbRW5mb3JjZVJhbmdlXSB1bmxlc3MgY2FsbGVkIGZyb20gY29u
dGV4dCB0aGF0IGhhbmRsZXMgZmFpbHVyZXMuIiBpZiAkY29udmVyc2lvbkF0dHJpYnV0ZXMgbmUg
IkZOb25lIiBhbmQgISRtYXlGYWlsOwogCiAgICAgcmV0dXJuICIkdmFsdWUiIGlmICR0eXBlIGVx
ICJKU09iamVjdCI7CiAgICAgcmV0dXJuICIkdmFsdWUtPkJvb2xlYW5WYWx1ZSgpIiBpZiAkdHlw
ZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLT5O
dW1iZXJWYWx1ZSgpKSIgaWYgJHR5cGUgZXEgImZsb2F0IiBvciAkdHlwZSBlcSAiZG91YmxlIjsK
IAotICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5
cGUgZXEgInNob3J0IjsKLSAgICByZXR1cm4gInRvVUludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVx
ICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwotICAgIHJldHVy
biAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIiBvciAk
dHlwZSBlcSAibG9uZyBsb25nIjsKKyAgICBpZiAoJG1heUZhaWwpIHsKKyAgICAgICAgcmV0dXJu
ICJ0b0ludDMyKCR2YWx1ZSwgJGNvbnZlcnNpb25BdHRyaWJ1dGVzLCBvaykiIGlmICR0eXBlIGVx
ICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOworICAgICAgICByZXR1cm4gInRvVUludDMyKCR2
YWx1ZSwgJGNvbnZlcnNpb25BdHRyaWJ1dGVzLCBvaykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBs
b25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAgICAgICByZXR1cm4gInRvSW50
NjQoJHZhbHVlLCAkY29udmVyc2lvbkF0dHJpYnV0ZXMsIG9rKSIgaWYgJHR5cGUgZXEgImxvbmcg
bG9uZyI7CisgICAgICAgIHJldHVybiAidG9VSW50NjQoJHZhbHVlLCAkY29udmVyc2lvbkF0dHJp
YnV0ZXMsIG9rKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyI7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIiBv
ciAkdHlwZSBlcSAic2hvcnQiOworICAgICAgICByZXR1cm4gInRvVUludDMyKCR2YWx1ZSkiIGlm
ICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwor
ICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyI7
CisgICAgICAgIHJldHVybiAidG9VSW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVk
IGxvbmcgbG9uZyI7CisgICAgfQogICAgIHJldHVybiAic3RhdGljX2Nhc3Q8UmFuZ2U6OkNvbXBh
cmVIb3c+KCR2YWx1ZS0+SW50MzJWYWx1ZSgpKSIgaWYgJHR5cGUgZXEgIkNvbXBhcmVIb3ciOwog
ICAgIHJldHVybiAidG9XZWJDb3JlRGF0ZSgkdmFsdWUpIiBpZiAkdHlwZSBlcSAiRGF0ZSI7CiAg
ICAgcmV0dXJuICJ0b0RPTVN0cmluZ0xpc3QoJHZhbHVlLCAkZ2V0SXNvbGF0ZSkiIGlmICR0eXBl
IGVxICJET01TdHJpbmdMaXN0IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0lETEF0dHJpYnV0ZXMudHh0CmluZGV4IGM2MzY0NGZiZTk2NTI5ZGY3OGEyMzgzMGE1NmI2
NDFhMmRiZWRkMDcuLjY3MjVjMTE5MWNiMmFmYTYxZTdhMjU5ODUwYTM4NWFmZGI0ZmYyZDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50
eHQKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4
dApAQCAtNTIsNiArNTIsNyBAQCBEb05vdENoZWNrQ29uc3RhbnRzCiBEb05vdENoZWNrU2VjdXJp
dHkKIERvTm90Q2hlY2tTZWN1cml0eU9uR2V0dGVyCiBEb05vdENoZWNrU2VjdXJpdHlPblNldHRl
cgorRW5mb3JjZVJhbmdlCiBFdmVudFRhcmdldAogRXh0ZW5kc0RPTUdsb2JhbE9iamVjdAogR2Vu
ZXJhdGVJc1JlYWNoYWJsZT1JbXBsRG9jdW1lbnR8SW1wbEVsZW1lbnRSb290fEltcGxPd25lck5v
ZGVSb290CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VGVzdE9iai5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9i
ai5pZGwKaW5kZXggYzA2MzBlMzcyY2U2ZDdlNDBiMTIyZDkyY2FiYWY2ZDI5NmZmZmU0OC4uYTdi
NjhiODBmMGRjZDUyMWZmNGJiOWU1NTcyNWFlZGE1ODk0MzVhZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbApAQCAtMTQ3LDYgKzE0Nywx
OSBAQCBlbnVtIFRlc3RFbnVtVHlwZSB7ICIiLCAiRW51bVZhbHVlMSIsICJFbnVtVmFsdWUyIiwg
IkVudW1WYWx1ZTMiIH07CiAgICAgdm9pZCAgICBtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25h
bEFyZyhpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBUZXN0Q2FsbGJhY2sgY2FsbGJhY2spOwogI2Vu
ZGlmCiAKKyNpZiBkZWZpbmVkKFRFU1RJTkdfVjgpCisgICAgLy8gJ0VuZm9yY2VSYW5nZScgZXh0
ZW5kZWQgYXR0cmlidXRlCisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIo
aW4gW0VuZm9yY2VSYW5nZV0gbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5m
b3JjZVJhbmdlVUludDMyKGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgdmFsdWUpOwor
ICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0KGluIFtFbmZvcmNlUmFuZ2Vd
IGxvbmcgbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUlu
dDY0KGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSk7CisKKyAgICBh
dHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBlbmZvcmNlZFJhbmdlTG9uZ0F0dHI7CisgICAg
YXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgZW5mb3JjZWRSYW5nZVVuc2ln
bmVkTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyBlbmZv
cmNlZFJhbmdlTG9uZ0xvbmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNp
Z25lZCBsb25nIGxvbmcgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyOworI2VuZGlm
CisKICAgICAvLyAnQ29uZGl0aW9uYWwnIGV4dGVuZGVkIGF0dHJpYnV0ZQogICAgIFtDb25kaXRp
b25hbD1Db25kaXRpb24xXSBhdHRyaWJ1dGUgbG9uZyBjb25kaXRpb25hbEF0dHIxOwogICAgIFtD
b25kaXRpb25hbD1Db25kaXRpb24xJkNvbmRpdGlvbjJdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlv
bmFsQXR0cjI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhGbG9hdDY0QXJyYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmNwcAppbmRleCA3YjIzN2EwMGM5OWIyMWU2YjdlNTEy
NTJmOTBkMDg4OThkYWM1MDlhLi43MzhlZTFlODJiN2FiODRkMmVkMDhhODBmZGNmZTZhMWVlMDVk
NDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhGbG9hdDY0QXJyYXkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOEZsb2F0NjRBcnJheS5jcHAKQEAgLTc2LDcgKzc2LDcgQEAgc3RhdGljIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBmb29DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQog
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIEZsb2F0NjRBcnJheSogaW1w
ID0gVjhGbG9hdDY0QXJyYXk6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FU
Q0goRmxvYXQzMkFycmF5KiwgYXJyYXksIFY4RmxvYXQzMkFycmF5OjpIYXNJbnN0YW5jZShNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdl
dElzb2xhdGUoKSkgPyBWOEZsb2F0MzJBcnJheTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2Jq
ZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRl
ZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soRmxvYXQzMkFycmF5
KiwgYXJyYXksIFY4RmxvYXQzMkFycmF5OjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBW
OEZsb2F0MzJBcnJheTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsK
ICAgICByZXR1cm4gdG9WOChpbXAtPmZvbyhhcnJheSksIGFyZ3MuSG9sZGVyKCksIGFyZ3MuR2V0
SXNvbGF0ZSgpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZlRE9NT2JqZWN0LmNwcAppbmRleCBl
MDAyNGI5ZWVmZjg1ZjU3YjQ3ZjRlNWM3NDU5YjQ3MjE2NDZiMjk5Li42YTU4YzI0NTgzZWRmNWUx
YzI3OGU3NTA5YzdlMDVkNWIwOGZhYWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZlRE9NT2JqZWN0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZlRE9NT2JqZWN0
LmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGV4Y2l0
aW5nRnVuY3Rpb25DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIFRlc3RB
Y3RpdmVET01PYmplY3QqIGltcCA9IFY4VGVzdEFjdGl2ZURPTU9iamVjdDo6dG9OYXRpdmUoYXJn
cy5Ib2xkZXIoKSk7CiAgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OnNob3VsZEFsbG93QWNjZXNz
VG9GcmFtZShCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCksIGltcC0+ZnJhbWUoKSkpCiAgICAgICAg
IHJldHVybiB2OFVuZGVmaW5lZCgpOwotICAgIFY4VFJZQ0FUQ0goTm9kZSosIG5leHRDaGlsZCwg
VjhOb2RlOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZh
dWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOE5vZGU6OnRvTmF0aXZlKHY4
OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNI
RUNLKE5vZGUqLCBuZXh0Q2hpbGQsIFY4Tm9kZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkp
ID8gVjhOb2RlOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAg
IGltcC0+ZXhjaXRpbmdGdW5jdGlvbihuZXh0Q2hpbGQpOwogICAgIHJldHVybiB2OFVuZGVmaW5l
ZCgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4VGVzdEV2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RFdmVudFRhcmdldC5jcHAKaW5kZXggYTk2NDIxNTlkMjFiZTI2NjI4
ZmU2NThkNmYwY2U5NDRhYzg4MWE3ZC4uMjkyYjQ5YThjZmI0ODNhYjNkYjNjYmMxZTRjNTQxMmJi
N2M5YmYyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4VGVzdEV2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRUYXJnZXQuY3BwCkBAIC03Miw3ICs3Miw3IEBAIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gaXRlbUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVu
dHMmIGFyZ3MpCiAgICAgVGVzdEV2ZW50VGFyZ2V0KiBpbXAgPSBWOFRlc3RFdmVudFRhcmdldDo6
dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAg
ewotICAgIFY4VFJZQ0FUQ0goaW50LCBpbmRleCwgdG9VSW50MzIoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyhpbnQsIGluZGV4LCB0b1VJbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICBpZiAoVU5MSUtF
TFkoaW5kZXggPCAwKSkgewogICAgICAgICBlYyA9IElOREVYX1NJWkVfRVJSOwogICAgICAgICBn
b3RvIGZhaWw7CkBAIC0xMTIsNyArMTEyLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBkaXNwYXRjaEV2ZW50Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBU
ZXN0RXZlbnRUYXJnZXQqIGltcCA9IFY4VGVzdEV2ZW50VGFyZ2V0Ojp0b05hdGl2ZShhcmdzLkhv
bGRlcigpKTsKICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICB7Ci0gICAgVjhUUllDQVRD
SChFdmVudCosIGV2dCwgVjhFdmVudDo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhF
dmVudDo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRS
WUNBVENIX0ZPUl9UWVBFQ0hFQ0soRXZlbnQqLCBldnQsIFY4RXZlbnQ6Okhhc0luc3RhbmNlKE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3Mu
R2V0SXNvbGF0ZSgpKSA/IFY4RXZlbnQ6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46
OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkpIDogMCk7CiAgICAgYm9vbCByZXN1bHQgPSBpbXAtPmRpc3BhdGNoRXZlbnQoZXZ0LCBlYyk7
CiAgICAgaWYgKFVOTElLRUxZKGVjKSkKICAgICAgICAgZ290byBmYWlsOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJm
YWNlLmNwcAppbmRleCBhYWUzMzNhZDgyZDIzODk3MDY3NjhkMTI5OTliYTVlZjg3ZGFjNmFmLi41
MWI1OWM3NTkxNmIzNzJiZTdhN2JiOGI1OTBjZGVjM2E2Mjk1NDgwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJm
YWNlLmNwcApAQCAtMTQ0LDcgKzE0NCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
c3VwcGxlbWVudGFsTm9kZUF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hCiBzdGF0
aWMgdm9pZCBzdXBwbGVtZW50YWxOb2RlQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCiB7CiAgICAgVGVzdEludGVyZmFjZSogaW1wID0gVjhUZXN0SW50ZXJmYWNlOjp0b05h
dGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBOb2RlKiB2ID0gVjhOb2RlOjpIYXNJbnN0YW5jZSh2
YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpID8gVjhOb2RlOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+OjpDYXN0KHZhbHVlKSkgOiAwOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVD
S19WT0lEKE5vZGUqLCB2LCBWOE5vZGU6Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZvLkdldElzb2xh
dGUoKSkgPyBWOE5vZGU6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QodmFs
dWUpKSA6IDApOwogICAgIFRlc3RTdXBwbGVtZW50YWw6OnNldFN1cHBsZW1lbnRhbE5vZGUoaW1w
LCBXVEY6OmdldFB0cih2KSk7CiAgICAgcmV0dXJuOwogfQpAQCAtMTcyLDcgKzE3Miw3IEBAIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gc3VwcGxlbWVudGFsTWV0aG9kMkNhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyCiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgewog
ICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhTdHJpbmdSZXNvdXJjZTw+LCBz
dHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5l
ZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0
YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQp
LCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6
Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElz
VW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFRlc3RPYmoq
LCBvYmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhUZXN0
T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdf
UEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdENvbnRleHQgPSBnZXRTY3JpcHRFeGVjdXRpb25Db250
ZXh0KCk7CiAgICAgUmVmUHRyPFRlc3RPYmo+IHJlc3VsdCA9IFRlc3RTdXBwbGVtZW50YWw6OnN1
cHBsZW1lbnRhbE1ldGhvZDIoc2NyaXB0Q29udGV4dCwgaW1wLCBzdHJBcmcsIG9iakFyZywgZWMp
OwogICAgIGlmIChVTkxJS0VMWShlYykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFRdWVyeUxp
c3RMaXN0ZW5lci5jcHAKaW5kZXggZWJmOTM2YjRhYWY1MjlkYWVjMWFhMzU4ZGNlMGQxMjYxMWU1
Zjg1OC4uYTFiMWVmMzg2ZmVlZWYxZmI3OTAxMTZlZDljNzJhNGNhNTgwYmI4MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVl
cnlMaXN0TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcApAQCAtNjcsNyArNjcsNyBA
QCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MpCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1
cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAg
VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIqIGltcCA9IFY4VGVzdE1lZGlhUXVlcnlMaXN0TGlz
dGVuZXI6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goUmVmUHRyPE1l
ZGlhUXVlcnlMaXN0TGlzdGVuZXI+LCBsaXN0ZW5lciwgTWVkaWFRdWVyeUxpc3RMaXN0ZW5lcjo6
Y3JlYXRlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5l
ZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soUmVmUHRyPE1lZGlhUXVlcnlMaXN0
TGlzdGVuZXI+LCBsaXN0ZW5lciwgTWVkaWFRdWVyeUxpc3RMaXN0ZW5lcjo6Y3JlYXRlKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKICAgICBp
bXAtPm1ldGhvZChsaXN0ZW5lcik7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2Jq
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmou
Y3BwCmluZGV4IGFkYzcwOThiMmNhNDJjMTBmMmI2NDI4MWMyOGJhNDRlNDgxZmQ0YmIuLmJhYjNj
NDc4ZTEzZDdmZGNlZWYyMjI2ZDQ4ZTIxNWI5NTExNzY0MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCkBAIC0xNzEs
NyArMTcxLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBzaG9ydEF0dHJBdHRyR2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb24KIHN0YXRpYyB2b2lkIHNob3J0QXR0
ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFs
dWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoq
IGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgaW50IHYgPSB0
b0ludDMyKHZhbHVlKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYs
IHRvSW50MzIodmFsdWUsIGZhbHNlLCBvaykpOwogICAgIGltcC0+c2V0U2hvcnRBdHRyKHYpOwog
ICAgIHJldHVybjsKIH0KQEAgLTE4NSw3ICsxODUsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IHVuc2lnbmVkU2hvcnRBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bgogc3RhdGljIHZvaWQgdW5zaWduZWRTaG9ydEF0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOwotICAgIGludCB2ID0gdG9VSW50MzIodmFsdWUpOworICAgIFY4VFJZ
Q0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKGludCwgdiwgdG9VSW50MzIodmFsdWUsIGZhbHNlLCBv
aykpOwogICAgIGltcC0+c2V0VW5zaWduZWRTaG9ydEF0dHIodik7CiAgICAgcmV0dXJuOwogfQpA
QCAtMTk5LDcgKzE5OSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbG9uZ0F0dHJB
dHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zCiBzdGF0aWMgdm9pZCBs
b25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2
ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRl
c3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgaW50
IHYgPSB0b0ludDMyKHZhbHVlKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChp
bnQsIHYsIHRvSW50MzIodmFsdWUsIGZhbHNlLCBvaykpOwogICAgIGltcC0+c2V0TG9uZ0F0dHIo
dik7CiAgICAgcmV0dXJuOwogfQpAQCAtMjEzLDcgKzIxMyw3IEBAIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gbG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwKIHN0YXRpYyB2b2lkIGxvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
aW5mby5Ib2xkZXIoKSk7Ci0gICAgbG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVlKTsKKyAgICBW
OFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChsb25nIGxvbmcsIHYsIHRvSW50NjQodmFsdWUs
IGZhbHNlLCBvaykpOwogICAgIGltcC0+c2V0TG9uZ0xvbmdBdHRyKHYpOwogICAgIHJldHVybjsK
IH0KQEAgLTIyNyw3ICsyMjcsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHVuc2ln
bmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZwogc3RhdGljIHZv
aWQgdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9s
ZGVyKCkpOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAg
VjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQodW5zaWduZWQgbG9uZyBsb25nLCB2LCB0b1VJ
bnQ2NCh2YWx1ZSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZExvbmdMb25nQXR0
cih2KTsKICAgICByZXR1cm47CiB9CkBAIC0yNTcsNyArMjU3LDcgQEAgc3RhdGljIHZvaWQgdGVz
dE9iakF0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8
djg6OlZhbHUKIHsKICAgICBGZWF0dXJlT2JzZXJ2ZXI6Om9ic2VydmUoYWN0aXZlRE9NV2luZG93
KEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSksIEZlYXR1cmVPYnNlcnZlcjo6VGVzdEZlYXR1cmUp
OwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7
Ci0gICAgVGVzdE9iaiogdiA9IFY4VGVzdE9iajo6SGFzSW5zdGFuY2UodmFsdWUsIGluZm8uR2V0
SXNvbGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6
Q2FzdCh2YWx1ZSkpIDogMDsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChUZXN0
T2JqKiwgdiwgVjhUZXN0T2JqOjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkp
ID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHZhbHVl
KSkgOiAwKTsKICAgICBpbXAtPnNldFRlc3RPYmpBdHRyKFdURjo6Z2V0UHRyKHYpKTsKICAgICBy
ZXR1cm47CiB9CkBAIC0yNzEsNyArMjcxLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBYTUxPYmpBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY28KIHN0
YXRpYyB2b2lkIFhNTE9iakF0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVy
KCkpOwotICAgIFRlc3RPYmoqIHYgPSBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZv
LkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVj
dD46OkNhc3QodmFsdWUpKSA6IDA7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQo
VGVzdE9iaiosIHYsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UodmFsdWUsIGluZm8uR2V0SXNvbGF0
ZSgpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdCh2
YWx1ZSkpIDogMCk7CiAgICAgaW1wLT5zZXRYTUxPYmpBdHRyKFdURjo6Z2V0UHRyKHYpKTsKICAg
ICByZXR1cm47CiB9CkBAIC0yODUsNyArMjg1LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBjcmVhdGVBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdAog
c3RhdGljIHZvaWQgY3JlYXRlQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigp
KTsKLSAgICBib29sIHYgPSB2YWx1ZS0+Qm9vbGVhblZhbHVlKCk7CisgICAgVjhUUllDQVRDSF9G
T1JfVFlQRUNIRUNLX1ZPSUQoYm9vbCwgdiwgdmFsdWUtPkJvb2xlYW5WYWx1ZSgpKTsKICAgICBp
bXAtPnNldENyZWF0ZSh2KTsKICAgICByZXR1cm47CiB9CkBAIC0zMTMsNyArMzEzLDcgQEAgc3Rh
dGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiByZWZsZWN0ZWRJbnRlZ3JhbEF0dHJBdHRyR2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW4KIHN0YXRpYyB2b2lkIHJlZmxlY3RlZEludGVncmFsQXR0ckF0
dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGlt
cCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgaW50IHYgPSB0b0lu
dDMyKHZhbHVlKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYsIHRv
SW50MzIodmFsdWUsIGZhbHNlLCBvaykpOwogICAgIGltcC0+c2V0SW50ZWdyYWxBdHRyaWJ1dGUo
V2ViQ29yZTo6SFRNTE5hbWVzOjpyZWZsZWN0ZWRpbnRlZ3JhbGF0dHJBdHRyLCB2KTsKICAgICBy
ZXR1cm47CiB9CkBAIC0zMjcsNyArMzI3LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiByZWZsZWN0ZWRVbnNpZ25lZEludGVncmFsQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHYKIHN0
YXRpYyB2b2lkIHJlZmxlY3RlZFVuc2lnbmVkSW50ZWdyYWxBdHRyQXR0clNldHRlcih2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICB1bnNpZ25lZCB2ID0gdG9VSW50MzIodmFsdWUp
OworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKHVuc2lnbmVkLCB2LCB0b1VJbnQz
Mih2YWx1ZSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZEludGVncmFsQXR0cmli
dXRlKFdlYkNvcmU6OkhUTUxOYW1lczo6cmVmbGVjdGVkdW5zaWduZWRpbnRlZ3JhbGF0dHJBdHRy
LCB2KTsKICAgICByZXR1cm47CiB9CkBAIC0zNDEsNyArMzQxLDcgQEAgc3RhdGljIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiByZWZsZWN0ZWRCb29sZWFuQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4
OjpTdHJpbmcKIHN0YXRpYyB2b2lkIHJlZmxlY3RlZEJvb2xlYW5BdHRyQXR0clNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2Jq
Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBib29sIHYgPSB2YWx1ZS0+Qm9vbGVhblZh
bHVlKCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoYm9vbCwgdiwgdmFsdWUt
PkJvb2xlYW5WYWx1ZSgpKTsKICAgICBpbXAtPnNldEJvb2xlYW5BdHRyaWJ1dGUoV2ViQ29yZTo6
SFRNTE5hbWVzOjpyZWZsZWN0ZWRib29sZWFuYXR0ckF0dHIsIHYpOwogICAgIHJldHVybjsKIH0K
QEAgLTM4Myw3ICszODMsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHJlZmxlY3Rl
ZEN1c3RvbUludGVncmFsQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4Ogogc3RhdGljIHZvaWQg
cmVmbGVjdGVkQ3VzdG9tSW50ZWdyYWxBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZv
LkhvbGRlcigpKTsKLSAgICBpbnQgdiA9IHRvSW50MzIodmFsdWUpOworICAgIFY4VFJZQ0FUQ0hf
Rk9SX1RZUEVDSEVDS19WT0lEKGludCwgdiwgdG9JbnQzMih2YWx1ZSwgZmFsc2UsIG9rKSk7CiAg
ICAgaW1wLT5zZXRJbnRlZ3JhbEF0dHJpYnV0ZShXZWJDb3JlOjpIVE1MTmFtZXM6OmN1c3RvbUNv
bnRlbnRJbnRlZ3JhbEF0dHJBdHRyLCB2KTsKICAgICByZXR1cm47CiB9CkBAIC0zOTcsNyArMzk3
LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiByZWZsZWN0ZWRDdXN0b21Cb29sZWFu
QXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjoKIHN0YXRpYyB2b2lkIHJlZmxlY3RlZEN1c3Rv
bUJvb2xlYW5BdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAg
ICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAg
ICBib29sIHYgPSB2YWx1ZS0+Qm9vbGVhblZhbHVlKCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQ
RUNIRUNLX1ZPSUQoYm9vbCwgdiwgdmFsdWUtPkJvb2xlYW5WYWx1ZSgpKTsKICAgICBpbXAtPnNl
dEJvb2xlYW5BdHRyaWJ1dGUoV2ViQ29yZTo6SFRNTE5hbWVzOjpjdXN0b21Db250ZW50Qm9vbGVh
bkF0dHJBdHRyLCB2KTsKICAgICByZXR1cm47CiB9CkBAIC00MjUsNyArNDI1LDcgQEAgc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0eXBlZEFycmF5QXR0ckF0dHJHZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUKIHN0YXRpYyB2b2lkIHR5cGVkQXJyYXlBdHRyQXR0clNldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0
T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBGbG9hdDMyQXJyYXkqIHYgPSBWOEZs
b2F0MzJBcnJheTo6SGFzSW5zdGFuY2UodmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKSA/IFY4Rmxv
YXQzMkFycmF5Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHZhbHVlKSkg
OiAwOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKEZsb2F0MzJBcnJheSosIHYs
IFY4RmxvYXQzMkFycmF5OjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpID8g
VjhGbG9hdDMyQXJyYXk6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QodmFs
dWUpKSA6IDApOwogICAgIGltcC0+c2V0VHlwZWRBcnJheUF0dHIoV1RGOjpnZXRQdHIodikpOwog
ICAgIHJldHVybjsKIH0KQEAgLTQ0Myw3ICs0NDMsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6
VmFsdWU+IGF0dHJXaXRoR2V0dGVyRXhjZXB0aW9uQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0
cgogc3RhdGljIHZvaWQgYXR0cldpdGhHZXR0ZXJFeGNlcHRpb25BdHRyU2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6
OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIGludCB2ID0gdG9JbnQzMih2YWx1ZSk7CisgICAg
VjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVlLCBmYWxz
ZSwgb2spKTsKICAgICBpbXAtPnNldEF0dHJXaXRoR2V0dGVyRXhjZXB0aW9uKHYpOwogICAgIHJl
dHVybjsKIH0KQEAgLTQ1Nyw3ICs0NTcsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IGF0dHJXaXRoU2V0dGVyRXhjZXB0aW9uQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cgogc3Rh
dGljIHZvaWQgYXR0cldpdGhTZXR0ZXJFeGNlcHRpb25BdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOwotICAgIGludCB2ID0gdG9JbnQzMih2YWx1ZSk7CisgICAgVjhUUllD
QVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVlLCBmYWxzZSwgb2sp
KTsKICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICBpbXAtPnNldEF0dHJXaXRoU2V0dGVy
RXhjZXB0aW9uKHYsIGVjKTsKICAgICBpZiAoVU5MSUtFTFkoZWMpKQpAQCAtNTEzLDcgKzUxMyw3
IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gd2l0aFNjcmlwdFN0YXRlQXR0cmlidXRl
QXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0CiBzdGF0aWMgdm9pZCB3aXRoU2NyaXB0U3RhdGVB
dHRyaWJ1dGVBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8
djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIGlu
dCB2ID0gdG9JbnQzMih2YWx1ZSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQo
aW50LCB2LCB0b0ludDMyKHZhbHVlLCBmYWxzZSwgb2spKTsKICAgICBTY3JpcHRTdGF0ZSogY3Vy
cmVudFN0YXRlID0gU2NyaXB0U3RhdGU6OmN1cnJlbnQoKTsKICAgICBpZiAoIWN1cnJlbnRTdGF0
ZSkKICAgICAgICAgcmV0dXJuOwpAQCAtNTM0LDcgKzUzNCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gd2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBdHRyaWJ1dGVBdHRyR2V0dGVy
KHY4OjpMCiBzdGF0aWMgdm9pZCB3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEF0dHJpYnV0ZUF0
dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGlt
cCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgVGVzdE9iaiogdiA9
IFY4VGVzdE9iajo6SGFzSW5zdGFuY2UodmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKSA/IFY4VGVz
dE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdCh2YWx1ZSkpIDogMDsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChUZXN0T2JqKiwgdiwgVjhUZXN0T2Jq
OjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05h
dGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHZhbHVlKSkgOiAwKTsKICAgICBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRDb250ZXh0ID0gZ2V0U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCgpOwogICAgIGltcC0+c2V0V2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBdHRyaWJ1dGUo
c2NyaXB0Q29udGV4dCwgV1RGOjpnZXRQdHIodikpOwogICAgIHJldHVybjsKQEAgLTU1OSw3ICs1
NTksNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHdpdGhTY3JpcHRTdGF0ZUF0dHJp
YnV0ZVJhaXNlc0F0dHJHZXR0ZXIodjg6OkxvY2FsPAogc3RhdGljIHZvaWQgd2l0aFNjcmlwdFN0
YXRlQXR0cmlidXRlUmFpc2VzQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigp
KTsKLSAgICBUZXN0T2JqKiB2ID0gVjhUZXN0T2JqOjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5H
ZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
OjpDYXN0KHZhbHVlKSkgOiAwOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKFRl
c3RPYmoqLCB2LCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZvLkdldElzb2xhdGUo
KSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QodmFs
dWUpKSA6IDApOwogICAgIFNjcmlwdFN0YXRlKiBjdXJyZW50U3RhdGUgPSBTY3JpcHRTdGF0ZTo6
Y3VycmVudCgpOwogICAgIGlmICghY3VycmVudFN0YXRlKQogICAgICAgICByZXR1cm47CkBAIC01
ODQsNyArNTg0LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB3aXRoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dEF0dHJpYnV0ZVJhaXNlc0F0dHJHZXR0ZXIKIHN0YXRpYyB2b2lkIHdpdGhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0QXR0cmlidXRlUmFpc2VzQXR0clNldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpB
Y2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBUZXN0T2JqKiB2ID0gVjhUZXN0T2JqOjpIYXNJbnN0
YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHZhbHVlKSkgOiAwOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDS19WT0lEKFRlc3RPYmoqLCB2LCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKHZhbHVl
LCBpbmZvLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6
Ok9iamVjdD46OkNhc3QodmFsdWUpKSA6IDApOwogICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IHNjcmlwdENvbnRleHQgPSBnZXRTY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CiAgICAgaW1wLT5z
ZXRXaXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEF0dHJpYnV0ZVJhaXNlcyhzY3JpcHRDb250ZXh0
LCBXVEY6OmdldFB0cih2KSk7CiAgICAgcmV0dXJuOwpAQCAtNjA0LDcgKzYwNCw3IEBAIHN0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gd2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3Jp
cHRTdGF0ZUF0dHJpYnV0ZUF0CiBzdGF0aWMgdm9pZCB3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dEFuZFNjcmlwdFN0YXRlQXR0cmlidXRlQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhv
bGRlcigpKTsKLSAgICBUZXN0T2JqKiB2ID0gVjhUZXN0T2JqOjpIYXNJbnN0YW5jZSh2YWx1ZSwg
aW5mby5HZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+OjpDYXN0KHZhbHVlKSkgOiAwOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19W
T0lEKFRlc3RPYmoqLCB2LCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZvLkdldElz
b2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNh
c3QodmFsdWUpKSA6IDApOwogICAgIFNjcmlwdFN0YXRlKiBjdXJyZW50U3RhdGUgPSBTY3JpcHRT
dGF0ZTo6Y3VycmVudCgpOwogICAgIGlmICghY3VycmVudFN0YXRlKQogICAgICAgICByZXR1cm47
CkBAIC02MzYsNyArNjM2LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB3aXRoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlQXR0cmlidXRlUmEKIHN0YXRpYyB2b2lk
IHdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVBdHRyaWJ1dGVSYWlzZXNB
dHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVl
PiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBp
bXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIFRlc3RPYmoqIHYg
PSBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZvLkdldElzb2xhdGUoKSkgPyBWOFRl
c3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QodmFsdWUpKSA6IDA7
CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoVGVzdE9iaiosIHYsIFY4VGVzdE9i
ajo6SGFzSW5zdGFuY2UodmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9O
YXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdCh2YWx1ZSkpIDogMCk7CiAgICAgU2Ny
aXB0U3RhdGUqIGN1cnJlbnRTdGF0ZSA9IFNjcmlwdFN0YXRlOjpjdXJyZW50KCk7CiAgICAgaWYg
KCFjdXJyZW50U3RhdGUpCiAgICAgICAgIHJldHVybjsKQEAgLTY2Miw3ICs2NjIsNyBAQCBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHdpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2Ny
aXB0U3RhdGVXaXRoU3BhY2VzQQogc3RhdGljIHZvaWQgd2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGVBdHRyU2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIFRlc3RPYmoqIHYgPSBWOFRlc3RPYmo6Okhhc0luc3Rh
bmNlKHZhbHVlLCBpbmZvLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpI
YW5kbGU8djg6Ok9iamVjdD46OkNhc3QodmFsdWUpKSA6IDA7CisgICAgVjhUUllDQVRDSF9GT1Jf
VFlQRUNIRUNLX1ZPSUQoVGVzdE9iaiosIHYsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UodmFsdWUs
IGluZm8uR2V0SXNvbGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6
T2JqZWN0Pjo6Q2FzdCh2YWx1ZSkpIDogMCk7CiAgICAgU2NyaXB0U3RhdGUqIGN1cnJlbnRTdGF0
ZSA9IFNjcmlwdFN0YXRlOjpjdXJyZW50KCk7CiAgICAgaWYgKCFjdXJyZW50U3RhdGUpCiAgICAg
ICAgIHJldHVybjsKQEAgLTY4MywxMSArNjgzLDY3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gd2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJHZXR0ZXIo
CiBzdGF0aWMgdm9pZCB3aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlQXR0
clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4g
dmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBUZXN0T2JqKiB2ID0g
VjhUZXN0T2JqOjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpID8gVjhUZXN0
T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHZhbHVlKSkgOiAwOwor
ICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKFRlc3RPYmoqLCB2LCBWOFRlc3RPYmo6
Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZvLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0
aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QodmFsdWUpKSA6IDApOwogICAgIGltcC0+
c2V0V2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZShXVEY6OmdldFB0cih2
KSk7CiAgICAgcmV0dXJuOwogfQogCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9y
Y2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0
T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4gdjhJbnRlZ2VyKGltcC0+
ZW5mb3JjZWRSYW5nZUxvbmdBdHRyKCksIGluZm8uR2V0SXNvbGF0ZSgpKTsKK30KKworc3RhdGlj
IHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZv
LkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYsIHRv
SW50MzIodmFsdWUsIHRydWUsIG9rKSk7CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0F0
dHIodik7CisgICAgcmV0dXJuOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVu
Zm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBp
bXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2OFVu
c2lnbmVkSW50ZWdlcihpbXAtPmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKCksIGluZm8u
R2V0SXNvbGF0ZSgpKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9u
Z0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6
OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0
T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIFY4VFJZ
Q0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKHVuc2lnbmVkLCB2LCB0b1VJbnQzMih2YWx1ZSwgdHJ1
ZSwgb2spKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKHYpOwor
ICAgIHJldHVybjsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJh
bmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXco
c3RhdGljX2Nhc3Q8ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHIoKSkpOwor
fQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2Jq
Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tf
Vk9JRChsb25nIGxvbmcsIHYsIHRvSW50NjQodmFsdWUsIHRydWUsIG9rKSk7CisgICAgaW1wLT5z
ZXRFbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJB
dHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5m
by5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3Vi
bGU+KGltcC0+ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyKCkpKTsKK30KKworc3Rh
dGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2Jq
Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tf
Vk9JRCh1bnNpZ25lZCBsb25nIGxvbmcsIHYsIHRvVUludDY0KHZhbHVlLCB0cnVlLCBvaykpOwor
ICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyKHYpOworICAgIHJl
dHVybjsKK30KKwogI2lmIEVOQUJMRShDb25kaXRpb24xKQogCiBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IGNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtNzAzLDcgKzc1OSw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxBdHRyMUF0dHJHZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hCiBzdGF0aWMgdm9pZCBjb25kaXRpb25hbEF0dHIxQXR0
clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4g
dmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBpbnQgdiA9IHRvSW50
MzIodmFsdWUpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKGludCwgdiwgdG9J
bnQzMih2YWx1ZSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5zZXRDb25kaXRpb25hbEF0dHIxKHYp
OwogICAgIHJldHVybjsKIH0KQEAgLTcyNSw3ICs3ODEsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IGNvbmRpdGlvbmFsQXR0cjJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYQogc3RhdGljIHZvaWQgY29uZGl0aW9uYWxBdHRyMkF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRp
dmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgaW50IHYgPSB0b0ludDMyKHZhbHVlKTsKKyAgICBWOFRS
WUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYsIHRvSW50MzIodmFsdWUsIGZhbHNlLCBv
aykpOwogICAgIGltcC0+c2V0Q29uZGl0aW9uYWxBdHRyMih2KTsKICAgICByZXR1cm47CiB9CkBA
IC03NDcsNyArODAzLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjb25kaXRpb25h
bEF0dHIzQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmEKIHN0YXRpYyB2b2lkIGNv
bmRpdGlvbmFsQXR0cjNBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6
TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsK
ICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwot
ICAgIGludCB2ID0gdG9JbnQzMih2YWx1ZSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
X1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVlLCBmYWxzZSwgb2spKTsKICAgICBpbXAtPnNldENv
bmRpdGlvbmFsQXR0cjModik7CiAgICAgcmV0dXJuOwogfQpAQCAtNzc1LDcgKzgzMSw3IEBAIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gYW55QXR0cmlidXRlQXR0ckdldHRlcih2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwKIHN0YXRpYyB2b2lkIGFueUF0dHJpYnV0ZUF0dHJTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgU2NyaXB0VmFsdWUgdiA9IFNjcmlw
dFZhbHVlKHZhbHVlKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChTY3JpcHRW
YWx1ZSwgdiwgU2NyaXB0VmFsdWUodmFsdWUpKTsKICAgICBpbXAtPnNldEFueUF0dHJpYnV0ZShX
VEY6OmdldFB0cih2KSk7CiAgICAgcmV0dXJuOwogfQpAQCAtNzg5LDcgKzg0NSw3IEBAIHN0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5hYmxlZEF0UnVudGltZUF0dHIxQXR0ckdldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluCiBzdGF0aWMgdm9pZCBlbmFibGVkQXRSdW50aW1lQXR0cjFBdHRy
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2
YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIGludCB2ID0gdG9JbnQz
Mih2YWx1ZSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0lu
dDMyKHZhbHVlLCBmYWxzZSwgb2spKTsKICAgICBpbXAtPnNldEVuYWJsZWRBdFJ1bnRpbWVBdHRy
MSh2KTsKICAgICByZXR1cm47CiB9CkBAIC04MDMsNyArODU5LDcgQEAgc3RhdGljIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBlbmFibGVkQXRSdW50aW1lQXR0cjJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW4KIHN0YXRpYyB2b2lkIGVuYWJsZWRBdFJ1bnRpbWVBdHRyMkF0dHJTZXR0ZXIodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgaW50IHYgPSB0b0ludDMyKHZhbHVlKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYsIHRvSW50MzIodmFsdWUs
IGZhbHNlLCBvaykpOwogICAgIGltcC0+c2V0RW5hYmxlZEF0UnVudGltZUF0dHIyKHYpOwogICAg
IHJldHVybjsKIH0KQEAgLTgxNyw3ICs4NzMsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IGVuYWJsZWRQZXJDb250ZXh0QXR0cjFBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaQog
c3RhdGljIHZvaWQgZW5hYmxlZFBlckNvbnRleHRBdHRyMUF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRp
dmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgaW50IHYgPSB0b0ludDMyKHZhbHVlKTsKKyAgICBWOFRS
WUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYsIHRvSW50MzIodmFsdWUsIGZhbHNlLCBv
aykpOwogICAgIGltcC0+c2V0RW5hYmxlZFBlckNvbnRleHRBdHRyMSh2KTsKICAgICByZXR1cm47
CiB9CkBAIC04MzEsNyArODg3LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmFi
bGVkUGVyQ29udGV4dEF0dHIyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmkKIHN0YXRpYyB2
b2lkIGVuYWJsZWRQZXJDb250ZXh0QXR0cjJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5m
byYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8u
SG9sZGVyKCkpOwotICAgIGludCB2ID0gdG9JbnQzMih2YWx1ZSk7CisgICAgVjhUUllDQVRDSF9G
T1JfVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVlLCBmYWxzZSwgb2spKTsKICAg
ICBpbXAtPnNldEVuYWJsZWRQZXJDb250ZXh0QXR0cjIodik7CiAgICAgcmV0dXJuOwogfQpAQCAt
ODQ1LDcgKzkwMSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZmxvYXRBcnJheUF0
dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvCiBzdGF0aWMgdm9pZCBmbG9h
dEFycmF5QXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVz
dE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICBWZWN0
b3I8ZmxvYXQ+IHYgPSB0b05hdGl2ZUFycmF5PGZsb2F0Pih2YWx1ZSk7CisgICAgVjhUUllDQVRD
SF9GT1JfVFlQRUNIRUNLX1ZPSUQoVmVjdG9yPGZsb2F0PiwgdiwgdG9OYXRpdmVBcnJheTxmbG9h
dD4odmFsdWUpKTsKICAgICBpbXAtPnNldEZsb2F0QXJyYXkodik7CiAgICAgcmV0dXJuOwogfQpA
QCAtODU5LDcgKzkxNSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZG91YmxlQXJy
YXlBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjCiBzdGF0aWMgdm9pZCBk
b3VibGVBcnJheUF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2Nh
bDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAg
VmVjdG9yPGRvdWJsZT4gdiA9IHRvTmF0aXZlQXJyYXk8ZG91YmxlPih2YWx1ZSk7CisgICAgVjhU
UllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoVmVjdG9yPGRvdWJsZT4sIHYsIHRvTmF0aXZlQXJy
YXk8ZG91YmxlPih2YWx1ZSkpOwogICAgIGltcC0+c2V0RG91YmxlQXJyYXkodik7CiAgICAgcmV0
dXJuOwogfQpAQCAtODgyLDcgKzkzOCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
bXV0YWJsZVBvaW50QXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwKIHN0YXRp
YyB2b2lkIG11dGFibGVQb2ludEF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUs
IHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZv
KQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIo
KSk7Ci0gICAgUmVmUHRyPFNWR1Byb3BlcnR5VGVhck9mZjxGbG9hdFBvaW50PiA+IHYgPSBWOFNW
R1BvaW50OjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpID8gVjhTVkdQb2lu
dDo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdCh2YWx1ZSkpIDogMDsKKyAg
ICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChSZWZQdHI8U1ZHUHJvcGVydHlUZWFyT2Zm
PEZsb2F0UG9pbnQ+ID4sIHYsIFY4U1ZHUG9pbnQ6Okhhc0luc3RhbmNlKHZhbHVlLCBpbmZvLkdl
dElzb2xhdGUoKSkgPyBWOFNWR1BvaW50Ojp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
OjpDYXN0KHZhbHVlKSkgOiAwKTsKICAgICBpbXAtPnNldE11dGFibGVQb2ludChXVEY6OmdldFB0
cih2KSk7CiAgICAgcmV0dXJuOwogfQpAQCAtODk2LDcgKzk1Miw3IEBAIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gaW1tdXRhYmxlUG9pbnRBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lCiBzdGF0aWMgdm9pZCBpbW11dGFibGVQb2ludEF0dHJTZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6
QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9O
YXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgUmVmUHRyPFNWR1Byb3BlcnR5VGVhck9mZjxGbG9h
dFBvaW50PiA+IHYgPSBWOFNWR1BvaW50OjpIYXNJbnN0YW5jZSh2YWx1ZSwgaW5mby5HZXRJc29s
YXRlKCkpID8gVjhTVkdQb2ludDo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2Fz
dCh2YWx1ZSkpIDogMDsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChSZWZQdHI8
U1ZHUHJvcGVydHlUZWFyT2ZmPEZsb2F0UG9pbnQ+ID4sIHYsIFY4U1ZHUG9pbnQ6Okhhc0luc3Rh
bmNlKHZhbHVlLCBpbmZvLkdldElzb2xhdGUoKSkgPyBWOFNWR1BvaW50Ojp0b05hdGl2ZSh2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KHZhbHVlKSkgOiAwKTsKICAgICBpbXAtPnNldEltbXV0
YWJsZVBvaW50KFdURjo6Z2V0UHRyKHYpKTsKICAgICByZXR1cm47CiB9CkBAIC05MTAsNyArOTY2
LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBzdHJhd2JlcnJ5QXR0ckdldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY28KIHN0YXRpYyB2b2lkIHN0cmF3YmVycnlBdHRy
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2
YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIGludCB2ID0gdG9JbnQz
Mih2YWx1ZSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0lu
dDMyKHZhbHVlLCBmYWxzZSwgb2spKTsKICAgICBpbXAtPnNldEJsdWViZXJyeSh2KTsKICAgICBy
ZXR1cm47CiB9CkBAIC05MjQsNyArOTgwLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBzdHJpY3RGbG9hdEF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGMKIHN0
YXRpYyB2b2lkIHN0cmljdEZsb2F0QXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGlu
Zm8pCiB7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRl
cigpKTsKLSAgICBmbG9hdCB2ID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1
ZSgpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChmbG9hdCwgdiwgc3RhdGlj
X2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1ZSgpKSk7CiAgICAgaW1wLT5zZXRTdHJpY3RG
bG9hdCh2KTsKICAgICByZXR1cm47CiB9CkBAIC05NDQsNyArMTAwMCw3IEBAIHN0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gaWRBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCBjb25zdCB2ODo6CiBzdGF0aWMgdm9pZCBpZEF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJp
bmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5m
by5Ib2xkZXIoKSk7Ci0gICAgaW50IHYgPSB0b0ludDMyKHZhbHVlKTsKKyAgICBWOFRSWUNBVENI
X0ZPUl9UWVBFQ0hFQ0tfVk9JRChpbnQsIHYsIHRvSW50MzIodmFsdWUsIGZhbHNlLCBvaykpOwog
ICAgIGltcC0+c2V0SWQodik7CiAgICAgcmV0dXJuOwogfQpAQCAtOTg3LDkgKzEwNDMsOSBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZvaWRNZXRob2RXaXRoQXJnc0NhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMykKICAgICAg
ICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkp
OwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7
Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgVjhUUllDQVRD
SF9GT1JfVjhTVFJJTkdSRVNPVVJDRShWOFN0cmluZ1Jlc291cmNlPD4sIHN0ckFyZywgTUFZQkVf
TUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVkKSk7Ci0gICAgVjhU
UllDQVRDSChUZXN0T2JqKiwgb2JqQXJnLCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNv
bGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2Fz
dChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkg
OiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywgVjhU
ZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZh
dWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZl
KHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaW1wLT52b2lkTWV0aG9kV2l0
aEFyZ3MobG9uZ0FyZywgc3RyQXJnLCBvYmpBcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgp
OwogfQpAQCAtMTAwNSw5ICsxMDYxLDkgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBs
b25nTWV0aG9kV2l0aEFyZ3NDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmcKICAgICBp
ZiAoYXJncy5MZW5ndGgoKSA8IDMpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3Vt
ZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJn
LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0lu
dDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCks
IGZhbHNlLCBvaykpOwogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UoVjhTdHJp
bmdSZXNvdXJjZTw+LCBzdHJBcmcsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERl
ZmF1bHRJc1VuZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goVGVzdE9iaiosIG9iakFyZywgVjhU
ZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAyLCBEZWZh
dWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZl
KHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQ
RUNIRUNLKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29s
YXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6
IDApOwogICAgIHJldHVybiB2OEludGVnZXIoaW1wLT5sb25nTWV0aG9kV2l0aEFyZ3MobG9uZ0Fy
Zywgc3RyQXJnLCBvYmpBcmcpLCBhcmdzLkdldElzb2xhdGUoKSk7CiB9CiAKQEAgLTEwMjMsOSAr
MTA3OSw5IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb2JqTWV0aG9kV2l0aEFyZ3ND
YWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkg
PCAzKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdl
dElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdz
LkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9N
SVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CisgICAgVjhU
UllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAg
ICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKFY4U3RyaW5nUmVzb3VyY2U8Piwgc3Ry
QXJnLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQp
KTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFzSW5zdGFu
Y2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZpbmVkKSwg
YXJncy5HZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhUZXN0T2JqKiwg
b2JqQXJnLCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFy
Z3MsIDIsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSA/IFY4VGVzdE9i
ajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BB
UkFNRVRFUihhcmdzLCAyLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICByZXR1cm4g
dG9WOChpbXAtPm9iak1ldGhvZFdpdGhBcmdzKGxvbmdBcmcsIHN0ckFyZywgb2JqQXJnKSwgYXJn
cy5Ib2xkZXIoKSwgYXJncy5HZXRJc29sYXRlKCkpOwogfQogCkBAIC0xMDM0LDcgKzEwOTAsNyBA
QCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhTZXF1ZW5jZUFyZ0NhbGxi
YWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAg
ICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUo
KSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigp
KTsKLSAgICBWOFRSWUNBVENIKFZlY3RvcjxSZWZQdHI8U2NyaXB0UHJvZmlsZT4gPiwgc2VxdWVu
Y2VBcmcsICh0b1JlZlB0ck5hdGl2ZUFycmF5PFNjcmlwdFByb2ZpbGUsIFY4U2NyaXB0UHJvZmls
ZT4oTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwg
YXJncy5HZXRJc29sYXRlKCkpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKFZlY3Rv
cjxSZWZQdHI8U2NyaXB0UHJvZmlsZT4gPiwgc2VxdWVuY2VBcmcsICh0b1JlZlB0ck5hdGl2ZUFy
cmF5PFNjcmlwdFByb2ZpbGUsIFY4U2NyaXB0UHJvZmlsZT4oTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKSk7CiAg
ICAgaW1wLT5tZXRob2RXaXRoU2VxdWVuY2VBcmcoc2VxdWVuY2VBcmcpOwogICAgIHJldHVybiB2
OFVuZGVmaW5lZCgpOwogfQpAQCAtMTA0NCw3ICsxMTAwLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBtZXRob2RSZXR1cm5pbmdTZXF1ZW5jZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1
bWVudHMKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05v
dEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBp
bXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0go
aW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERl
ZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBs
b25nQXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJ
c1VuZGVmaW5lZCksIGZhbHNlLCBvaykpOwogICAgIHJldHVybiB2OEFycmF5KGltcC0+bWV0aG9k
UmV0dXJuaW5nU2VxdWVuY2UobG9uZ0FyZyksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKIH0KIApAQCAt
MTA1Niw3ICsxMTEyLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RUaGF0
UmVxdWlyZXNBbGxBcmdzQW5kVGhyb3dzQ2FsbGJhY2soY29uc3QgdjgKICAgICBFeGNlcHRpb25D
b2RlIGVjID0gMDsKICAgICB7CiAgICAgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdSRVNPVVJDRShW
OFN0cmluZ1Jlc291cmNlPD4sIHN0ckFyZywgTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MCwgRGVmYXVsdElzVW5kZWZpbmVkKSk7Ci0gICAgVjhUUllDQVRDSChUZXN0T2JqKiwgb2JqQXJn
LCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEs
IERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9O
YXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRF
UihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZP
Ul9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywgVjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdl
dElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46
OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5kZWZpbmVk
KSkpIDogMCk7CiAgICAgUmVmUHRyPFRlc3RPYmo+IHJlc3VsdCA9IGltcC0+bWV0aG9kVGhhdFJl
cXVpcmVzQWxsQXJnc0FuZFRocm93cyhzdHJBcmcsIG9iakFyZywgZWMpOwogICAgIGlmIChVTkxJ
S0VMWShlYykpCiAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTEwODQsMTAgKzExNDAsMTAgQEAgc3Rh
dGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvcHRpb25zT2JqZWN0Q2FsbGJhY2soY29uc3Qgdjg6
OkFyZ3VtZW50cyYgYXJncykKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJl
dHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAg
ICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAg
IFY4VFJZQ0FUQ0goRGljdGlvbmFyeSwgb28sIERpY3Rpb25hcnkoTUFZQkVfTUlTU0lOR19QQVJB
TUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsK
KyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soRGljdGlvbmFyeSwgb28sIERpY3Rpb25hcnko
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJn
cy5HZXRJc29sYXRlKCkpKTsKICAgICBpZiAoIW9vLmlzVW5kZWZpbmVkT3JOdWxsKCkgJiYgIW9v
LmlzT2JqZWN0KCkpCiAgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigiTm90IGFuIG9iamVj
dC4iLCBhcmdzLkdldElzb2xhdGUoKSk7Ci0gICAgVjhUUllDQVRDSChEaWN0aW9uYXJ5LCBvb28s
IERpY3Rpb25hcnkoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hF
Q0soRGljdGlvbmFyeSwgb29vLCBEaWN0aW9uYXJ5KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFy
Z3MsIDEsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CiAgICAgaWYg
KCFvb28uaXNVbmRlZmluZWRPck51bGwoKSAmJiAhb29vLmlzT2JqZWN0KCkpCiAgICAgICAgIHJl
dHVybiB0aHJvd1R5cGVFcnJvcigiTm90IGFuIG9iamVjdC4iLCBhcmdzLkdldElzb2xhdGUoKSk7
CiAgICAgaW1wLT5vcHRpb25zT2JqZWN0KG9vLCBvb28pOwpAQCAtMTI4OSw3ICsxMzQ1LDcgQEAg
c3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoT3B0aW9uYWxBcmdDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzJgogICAgICAgICBpbXAtPm1ldGhvZFdpdGhPcHRpb25hbEFy
ZygpOwogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKICAgICB9Ci0gICAgVjhUUllDQVRD
SChpbnQsIG9wdCwgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZh
dWx0SXNVbmRlZmluZWQpKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGludCwgb3B0
LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCksIGZhbHNlLCBvaykpOwogICAgIGltcC0+bWV0aG9kV2l0aE9wdGlvbmFsQXJnKG9wdCk7
CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xMjk5LDEyICsxMzU1LDEyIEBAIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJnQW5kT3B0
aW9uYWxBcmdDYWxsYmFjayhjb25zCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAg
ICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7
CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsK
LSAgICBWOFRSWUNBVENIKGludCwgbm9uT3B0LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9U
WVBFQ0hFQ0soaW50LCBub25PcHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaWYgKGFyZ3MuTGVu
Z3RoKCkgPD0gMSkgewogICAgICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZE9w
dGlvbmFsQXJnKG5vbk9wdCk7CiAgICAgICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogICAgIH0K
LSAgICBWOFRSWUNBVENIKGludCwgb3B0LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVS
KGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBF
Q0hFQ0soaW50LCBvcHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwg
RGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5tZXRob2RXaXRoTm9u
T3B0aW9uYWxBcmdBbmRPcHRpb25hbEFyZyhub25PcHQsIG9wdCk7CiAgICAgcmV0dXJuIHY4VW5k
ZWZpbmVkKCk7CiB9CkBAIC0xMzE0LDE3ICsxMzcwLDE3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gbWV0aG9kV2l0aE5vbk9wdGlvbmFsQXJnQW5kVHdvT3B0aW9uYWxBcmdzQ2FsbGJh
Y2soCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RF
bm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGlu
dCwgbm9uT3B0LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBub25P
cHQsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPD0gMSkgewogICAg
ICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZFR3b09wdGlvbmFsQXJncyhub25P
cHQpOwogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKICAgICB9Ci0gICAgVjhUUllDQVRD
SChpbnQsIG9wdDEsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVm
YXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIG9w
dDEsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMSwgRGVmYXVsdElzVW5k
ZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPD0gMikgewogICAg
ICAgICBpbXAtPm1ldGhvZFdpdGhOb25PcHRpb25hbEFyZ0FuZFR3b09wdGlvbmFsQXJncyhub25P
cHQsIG9wdDEpOwogICAgICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKICAgICB9Ci0gICAgVjhU
UllDQVRDSChpbnQsIG9wdDIsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MiwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhp
bnQsIG9wdDIsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVs
dElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5tZXRob2RXaXRoTm9uT3B0aW9u
YWxBcmdBbmRUd29PcHRpb25hbEFyZ3Mobm9uT3B0LCBvcHQxLCBvcHQyKTsKICAgICByZXR1cm4g
djhVbmRlZmluZWQoKTsKIH0KQEAgLTEzNzQsNyArMTQzMCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gbWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5kQ2FsbGJhY2tBcmdDYWxsYmFj
ayhjb25zCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAyKQogICAgICAgICByZXR1cm4gdGhyb3dO
b3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiog
aW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENI
KGludCwgbm9uQ2FsbGJhY2ssIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhp
bnQsIG5vbkNhbGxiYWNrLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAs
IERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBvaykpOwogICAgIGlmIChhcmdzLkxlbmd0aCgp
IDw9IDEgfHwgIWFyZ3NbMV0tPklzRnVuY3Rpb24oKSkKICAgICAgICAgcmV0dXJuIHRocm93VHlw
ZUVycm9yKDAsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBSZWZQdHI8VGVzdENhbGxiYWNrPiBj
YWxsYmFjayA9IFY4VGVzdENhbGxiYWNrOjpjcmVhdGUoYXJnc1sxXSwgZ2V0U2NyaXB0RXhlY3V0
aW9uQ29udGV4dCgpKTsKQEAgLTEzOTUsNiArMTQ1MSw0NiBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFsQXJnQ2FsbGJhY2soY29uc3Qg
djg6OgogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQogCitzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMkNhbGxiYWNrKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICBy
ZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7Cisg
ICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAg
ICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCB2YWx1ZSwgdG9JbnQzMihNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCB0cnVlLCBvaykpOwor
ICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyKHZhbHVlKTsKKyAgICByZXR1cm4g
djhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RX
aXRoRW5mb3JjZVJhbmdlVUludDMyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykK
K3sKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVu
b3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfRk9S
X1RZUEVDSEVDSyh1bnNpZ25lZCwgdmFsdWUsIHRvVUludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIHRydWUsIG9rKSk7CisgICAgaW1wLT5t
ZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyKHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmlu
ZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3Jj
ZVJhbmdlSW50NjRDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNL
KGxvbmcgbG9uZywgdmFsdWUsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhF
bmZvcmNlUmFuZ2VJbnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisK
K3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2
NENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFyZ3MuTGVu
Z3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihh
cmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2
ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0sodW5zaWduZWQg
bG9uZyBsb25nLCB2YWx1ZSwgdG9VSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgdHJ1ZSwgb2spKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhF
bmZvcmNlUmFuZ2VVSW50NjQodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQor
CiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
Y29uZGl0aW9uYWxNZXRob2QxQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKQEAg
LTE0MzIsNyArMTUyOCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRl
ZE1ldGhvZDFDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAyKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4
VGVzdE9iajo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2
ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFy
Z3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZ
UEVDSEVDSyhUZXN0T2JqKiwgb2JqQXJnLCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNv
bGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2Fz
dChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkg
OiAwKTsKICAgICBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKFY4U3RyaW5nUmVzb3Vy
Y2U8Piwgc3RyQXJnLCBNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZhdWx0SXNV
bmRlZmluZWQpKTsKICAgICBpbXAtPm92ZXJsb2FkZWRNZXRob2Qob2JqQXJnLCBzdHJBcmcpOwog
ICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwpAQCAtMTQ0MywxMiArMTUzOSwxMiBAQCBzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IG92ZXJsb2FkZWRNZXRob2QyQ2FsbGJhY2soY29uc3Qgdjg6
OkFyZ3VtZW50cyYgYXJncwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0
dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAg
VjhUUllDQVRDSChUZXN0T2JqKiwgb2JqQXJnLCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0
SXNvbGF0ZSgpKSA/IFY4VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6
Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
KSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVGVzdE9iaiosIG9iakFyZywg
VjhUZXN0T2JqOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBE
ZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOFRlc3RPYmo6OnRvTmF0
aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaWYgKGFyZ3MuTGVuZ3Ro
KCkgPD0gMSkgewogICAgICAgICBpbXAtPm92ZXJsb2FkZWRNZXRob2Qob2JqQXJnKTsKICAgICAg
ICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiAgICAgfQotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25n
QXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1Vu
ZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0
b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVmaW5l
ZCksIGZhbHNlLCBvaykpOwogICAgIGltcC0+b3ZlcmxvYWRlZE1ldGhvZChvYmpBcmcsIGxvbmdB
cmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTQ2OCw3ICsxNTY0LDcgQEAg
c3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kNENhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAg
ICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgp
KTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkp
OwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFS
QU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZP
Ul9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVS
KGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGZhbHNlLCBvaykpOwogICAgIGltcC0+b3Zl
cmxvYWRlZE1ldGhvZChsb25nQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAg
LTE0OTAsNyArMTU4Niw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRl
ZE1ldGhvZDZDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFJlZlB0cjxET01TdHJpbmdMaXN0
PiwgbGlzdEFyZywgdG9ET01TdHJpbmdMaXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3Ms
IDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CisgICAgVjhUUllD
QVRDSF9GT1JfVFlQRUNIRUNLKFJlZlB0cjxET01TdHJpbmdMaXN0PiwgbGlzdEFyZywgdG9ET01T
dHJpbmdMaXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9kKGxp
c3RBcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQpAQCAtMTUwMCw3ICsxNTk2LDcg
QEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kN0NhbGxiYWNr
KGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAg
ICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0
ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVy
KCkpOwotICAgIFY4VFJZQ0FUQ0goVmVjdG9yPFN0cmluZz4sIGFycmF5QXJnLCB0b05hdGl2ZUFy
cmF5PFN0cmluZz4oTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhWZWN0b3I8U3RyaW5nPiwg
YXJyYXlBcmcsIHRvTmF0aXZlQXJyYXk8U3RyaW5nPihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CiAgICAgaW1wLT5vdmVybG9hZGVkTWV0aG9k
KGFycmF5QXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE1MTAsNyArMTYw
Niw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3ZlcmxvYWRlZE1ldGhvZDhDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAx
KQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElz
b2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhv
bGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFRlc3RPYmoqLCBvYmpBcmcsIFY4VGVzdE9iajo6SGFz
SW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhUZXN0T2JqOjp0b05hdGl2ZSh2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhUZXN0
T2JqKiwgb2JqQXJnLCBWOFRlc3RPYmo6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSA/IFY4
VGVzdE9iajo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNT
SU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBp
bXAtPm92ZXJsb2FkZWRNZXRob2Qob2JqQXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsK
IH0KQEAgLTE1MjAsNyArMTYxNiw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb3Zl
cmxvYWRlZE1ldGhvZDlDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAgICAgaWYg
KGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVu
dHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2Jq
Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKFZlY3RvcjxTdHJpbmc+
LCBhcnJheUFyZywgdG9OYXRpdmVBcnJheTxTdHJpbmc+KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVS
KGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBF
Q0hFQ0soVmVjdG9yPFN0cmluZz4sIGFycmF5QXJnLCB0b05hdGl2ZUFycmF5PFN0cmluZz4oTUFZ
QkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOwogICAg
IGltcC0+b3ZlcmxvYWRlZE1ldGhvZChhcnJheUFyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVk
KCk7CiB9CkBAIC0xNTMwLDcgKzE2MjYsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IG92ZXJsb2FkZWRNZXRob2QxMENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZwogICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChWZWN0b3I8dW5z
aWduZWQ+LCBhcnJheUFyZywgdG9OYXRpdmVBcnJheTx1bnNpZ25lZD4oTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hf
Rk9SX1RZUEVDSEVDSyhWZWN0b3I8dW5zaWduZWQ+LCBhcnJheUFyZywgdG9OYXRpdmVBcnJheTx1
bnNpZ25lZD4oTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSkpOwogICAgIGltcC0+b3ZlcmxvYWRlZE1ldGhvZChhcnJheUFyZyk7CiAgICAgcmV0dXJu
IHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNTg1LDcgKzE2ODEsNyBAQCBzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IGNsYXNzTWV0aG9kV2l0aE9wdGlvbmFsQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cwogICAgIGlmIChhcmdzLkxlbmd0aCgpIDw9IDApIHsKICAgICAgICAgcmV0dXJuIHY4
SW50ZWdlcihUZXN0T2JqOjpjbGFzc01ldGhvZFdpdGhPcHRpb25hbCgpLCBhcmdzLkdldElzb2xh
dGUoKSk7CiAgICAgfQotICAgIFY4VFJZQ0FUQ0goaW50LCBhcmcsIHRvSW50MzIoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZ
Q0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGFyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICByZXR1
cm4gdjhJbnRlZ2VyKFRlc3RPYmo6OmNsYXNzTWV0aG9kV2l0aE9wdGlvbmFsKGFyZyksIGFyZ3Mu
R2V0SXNvbGF0ZSgpKTsKIH0KIApAQCAtMTU5NSw3ICsxNjkxLDcgQEAgc3RhdGljIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBvdmVybG9hZGVkTWV0aG9kMTFDYWxsYmFjayhjb25zdCB2ODo6QXJndW1l
bnRzJiBhcmcKIHsKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0
aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKLSAgICBWOFRS
WUNBVENIKGludCwgYXJnLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAs
IERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50
LCBhcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElz
VW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgVGVzdE9iajo6b3ZlcmxvYWRlZE1ldGhvZDEo
YXJnKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE2NTIsNyArMTc0OCw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5hYmxlZEF0UnVudGltZU1ldGhvZDFDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAg
ICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUo
KSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigp
KTsKLSAgICBWOFRSWUNBVENIKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BB
UkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSk7CisgICAgVjhUUllDQVRDSF9G
T1JfVFlQRUNIRUNLKGludCwgbG9uZ0FyZywgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRF
UihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBmYWxzZSwgb2spKTsKICAgICBpbXAtPmVu
YWJsZWRBdFJ1bnRpbWVNZXRob2QxKGxvbmdBcmcpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgp
OwogfQpAQCAtMTY2Miw3ICsxNzU4LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBl
bmFibGVkQXRSdW50aW1lTWV0aG9kMkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMKICAgICBp
ZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3Vt
ZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0goaW50LCBsb25nQXJn
LCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVm
aW5lZCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50LCBsb25nQXJnLCB0b0lu
dDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCks
IGZhbHNlLCBvaykpOwogICAgIGltcC0+ZW5hYmxlZEF0UnVudGltZU1ldGhvZDIobG9uZ0FyZyk7
CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNjcyLDcgKzE3NjgsNyBAQCBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuYWJsZWRQZXJDb250ZXh0TWV0aG9kMUNhbGxiYWNr
KGNvbnN0IHY4OjpBcmd1bWVudAogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAg
cmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwog
ICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0g
ICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVU
RVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZ
UEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJn
cywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFsc2UsIG9rKSk7CiAgICAgaW1wLT5lbmFibGVk
UGVyQ29udGV4dE1ldGhvZDEobG9uZ0FyZyk7CiAgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9
CkBAIC0xNjgyLDcgKzE3NzgsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuYWJs
ZWRQZXJDb250ZXh0TWV0aG9kMkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudAogICAgIGlmIChh
cmdzLkxlbmd0aCgpIDwgMSkKICAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRz
RXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6
dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGxvbmdBcmcsIHRv
SW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVk
KSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhpbnQsIGxvbmdBcmcsIHRvSW50MzIo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgZmFs
c2UsIG9rKSk7CiAgICAgaW1wLT5lbmFibGVkUGVyQ29udGV4dE1ldGhvZDIobG9uZ0FyZyk7CiAg
ICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNjk0LDcgKzE3OTAsNyBAQCBzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHN0cmluZ0FycmF5RnVuY3Rpb25DYWxsYmFjayhjb25zdCB2
ODo6QXJndW1lbnRzJiBhcgogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
YXJncy5Ib2xkZXIoKSk7CiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgewotICAgIFY4
VFJZQ0FUQ0goVmVjdG9yPFN0cmluZz4sIHZhbHVlcywgdG9OYXRpdmVBcnJheTxTdHJpbmc+KE1B
WUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKTsKKyAg
ICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soVmVjdG9yPFN0cmluZz4sIHZhbHVlcywgdG9OYXRp
dmVBcnJheTxTdHJpbmc+KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJ
c1VuZGVmaW5lZCkpKTsKICAgICBWZWN0b3I8U3RyaW5nPiByZXN1bHQgPSBpbXAtPnN0cmluZ0Fy
cmF5RnVuY3Rpb24odmFsdWVzLCBlYyk7CiAgICAgaWYgKFVOTElLRUxZKGVjKSkKICAgICAgICAg
Z290byBmYWlsOwpAQCAtMTcxMSw3ICsxODA3LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBkb21TdHJpbmdMaXN0RnVuY3Rpb25DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJgog
ICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CiAg
ICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgewotICAgIFY4VFJZQ0FUQ0goUmVmUHRyPERP
TVN0cmluZ0xpc3Q+LCB2YWx1ZXMsIHRvRE9NU3RyaW5nTGlzdChNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkpOwor
ICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhSZWZQdHI8RE9NU3RyaW5nTGlzdD4sIHZhbHVl
cywgdG9ET01TdHJpbmdMaXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSk7CiAgICAgUmVmUHRyPERPTVN0cmlu
Z0xpc3Q+IHJlc3VsdCA9IGltcC0+ZG9tU3RyaW5nTGlzdEZ1bmN0aW9uKHZhbHVlcywgZWMpOwog
ICAgIGlmIChVTkxJS0VMWShlYykpCiAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTE3NDIsNyArMTgz
OCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29udmVydDFDYWxsYmFjayhjb25z
dCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAgICAg
ICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkp
OwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7
Ci0gICAgVjhUUllDQVRDSChhKiwgdmFsdWUsIFY4YTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lO
R19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRl
KCkpID8gVjhhOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOworICAg
IFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhhKiwgdmFsdWUsIFY4YTo6SGFzSW5zdGFuY2UoTUFZ
QkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5H
ZXRJc29sYXRlKCkpID8gVjhhOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6
IDApOwogICAgIGltcC0+Y29udmVydDEodmFsdWUpOwogICAgIHJldHVybiB2OFVuZGVmaW5lZCgp
OwogfQpAQCAtMTc1Miw3ICsxODQ4LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBj
b252ZXJ0MkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgaWYgKGFyZ3Mu
TGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJv
cihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05h
dGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGIqLCB2YWx1ZSwgVjhiOjpIYXNJ
bnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOGI6OnRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9i
amVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5k
ZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKGIqLCB2YWx1ZSwg
VjhiOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOGI6OnRvTmF0aXZlKHY4OjpIYW5k
bGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVm
YXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CiAgICAgaW1wLT5jb252ZXJ0Mih2YWx1ZSk7CiAgICAg
cmV0dXJuIHY4VW5kZWZpbmVkKCk7CiB9CkBAIC0xNzYyLDcgKzE4NTgsNyBAQCBzdGF0aWMgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IGNvbnZlcnQ0Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYg
YXJncykKICAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCiAgICAgICAgIHJldHVybiB0aHJvd05v
dEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICBUZXN0T2JqKiBp
bXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIFY4VFJZQ0FUQ0go
ZCosIHZhbHVlLCBWOGQ6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3Ms
IDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSA/IFY4ZDo6dG9OYXRp
dmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9U
WVBFQ0hFQ0soZCosIHZhbHVlLCBWOGQ6Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1F
VEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSA/IFY4
ZDo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BB
UkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAwKTsKICAgICBpbXAtPmNv
bnZlcnQ0KHZhbHVlKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KQEAgLTE3NzIsNyAr
MTg2OCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29udmVydDVDYWxsYmFjayhj
b25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKICAg
ICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRl
KCkpOwogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIo
KSk7Ci0gICAgVjhUUllDQVRDSChlKiwgdmFsdWUsIFY4ZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlT
U0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29s
YXRlKCkpID8gVjhlOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJF
X01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwor
ICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhlKiwgdmFsdWUsIFY4ZTo6SGFzSW5zdGFuY2Uo
TUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgYXJn
cy5HZXRJc29sYXRlKCkpID8gVjhlOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpD
YXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkp
KSA6IDApOwogICAgIGltcC0+Y29udmVydDUodmFsdWUpOwogICAgIHJldHVybiB2OFVuZGVmaW5l
ZCgpOwogfQpAQCAtMTgwNCw4ICsxOTAwLDggQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBzdHJpY3RGdW5jdGlvbkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAg
RXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgewogICAgIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5H
UkVTT1VSQ0UoVjhTdHJpbmdSZXNvdXJjZTw+LCBzdHIsIE1BWUJFX01JU1NJTkdfUEFSQU1FVEVS
KGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpOwotICAgIFY4VFJZQ0FUQ0goZmxvYXQsIGEs
IHN0YXRpY19jYXN0PGZsb2F0PihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAxLCBEZWZh
dWx0SXNVbmRlZmluZWQpLT5OdW1iZXJWYWx1ZSgpKSk7Ci0gICAgVjhUUllDQVRDSChpbnQsIGIs
IHRvSW50MzIoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMiwgRGVmYXVsdElzVW5kZWZp
bmVkKSkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDSyhmbG9hdCwgYSwgc3RhdGljX2Nh
c3Q8ZmxvYXQ+KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDEsIERlZmF1bHRJc1VuZGVm
aW5lZCktPk51bWJlclZhbHVlKCkpKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soaW50
LCBiLCB0b0ludDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDIsIERlZmF1bHRJc1Vu
ZGVmaW5lZCksIGZhbHNlLCBvaykpOwogICAgIFJlZlB0cjxib29sPiByZXN1bHQgPSBpbXAtPnN0
cmljdEZ1bmN0aW9uKHN0ciwgYSwgYiwgZWMpOwogICAgIGlmIChVTkxJS0VMWShlYykpCiAgICAg
ICAgIGdvdG8gZmFpbDsKQEAgLTE4MzEsNyArMTkyNyw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gdmFyaWFkaWNEb3VibGVNZXRob2RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRz
JiBhCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQogICAgICAgICByZXR1cm4gdGhyb3dOb3RF
bm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBWOFRSWUNBVENIKGRv
dWJsZSwgaGVhZCwgc3RhdGljX2Nhc3Q8ZG91YmxlPihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihh
cmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLT5OdW1iZXJWYWx1ZSgpKSk7CisgICAgVjhUUllD
QVRDSF9GT1JfVFlQRUNIRUNLKGRvdWJsZSwgaGVhZCwgc3RhdGljX2Nhc3Q8ZG91YmxlPihNQVlC
RV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLT5OdW1iZXJW
YWx1ZSgpKSk7CiAgICAgVjhUUllDQVRDSChWZWN0b3I8ZG91YmxlPiwgdGFpbCwgdG9OYXRpdmVB
cmd1bWVudHM8ZG91YmxlPihhcmdzLCAxKSk7CiAgICAgaW1wLT52YXJpYWRpY0RvdWJsZU1ldGhv
ZChoZWFkLCB0YWlsKTsKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKQEAgLTE4NDIsNyArMTkz
OCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFyaWFkaWNOb2RlTWV0aG9kQ2Fs
bGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJnCiAgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAx
KQogICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElz
b2xhdGUoKSk7CiAgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhv
bGRlcigpKTsKLSAgICBWOFRSWUNBVENIKE5vZGUqLCBoZWFkLCBWOE5vZGU6Okhhc0luc3RhbmNl
KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFy
Z3MuR2V0SXNvbGF0ZSgpKSA/IFY4Tm9kZTo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0
Pjo6Q2FzdChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmlu
ZWQpKSkgOiAwKTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soTm9kZSosIGhlYWQsIFY4
Tm9kZTo6SGFzSW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVs
dElzVW5kZWZpbmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhOb2RlOjp0b05hdGl2ZSh2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAs
IERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogICAgIFZlY3RvcjxSZWZQdHI8Tm9kZT4gPiB0
YWlsOwogICAgIGZvciAoaW50IGkgPSAxOyBpIDwgYXJncy5MZW5ndGgoKTsgKytpKSB7CiAgICAg
ICAgIGlmICghVjhOb2RlOjpIYXNJbnN0YW5jZShhcmdzW2ldLCBhcmdzLkdldElzb2xhdGUoKSkp
CkBAIC0xOTM0LDYgKzIwMzAsMTQgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6
QmF0Y2hlZEF0dHJpYnV0ZSBWOFRlc3RPYmpBdHRyc1tdID0gewogICAgIHsid2l0aFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGUiLCBUZXN0T2Jq
VjhJbnRlcm5hbDo6d2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhT
cGFjZXNBdHRyaWJ1dGVBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGVBdHRyU2V0dGVy
LCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVG
QVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8q
IG9uIGluc3RhbmNlICovfSwKICAgICAvLyBBdHRyaWJ1dGUgJ3dpdGhTY3JpcHRBcmd1bWVudHNB
bmRDYWxsU3RhY2tBdHRyaWJ1dGUnIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnQ2FsbFdp
dGgnKQogICAgIHsid2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZSIsIFRl
c3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRl
QXR0ckdldHRlciwgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxs
U3RhY2tBdHRyaWJ1dGVBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4
OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0
dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1
dGUgJ2VuZm9yY2VkUmFuZ2VMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdF
bmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZUxvbmdBdHRyIiwgVGVzdE9ialY4SW50
ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIsIFRlc3RPYmpWOEludGVybmFs
OjplbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRp
Y19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQ
cm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAv
LyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyJyAoVHlwZTogJ2F0dHJp
YnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlVW5zaWdu
ZWRMb25nQXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25n
QXR0ckF0dHJHZXR0ZXIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRM
b25nQXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vz
c0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRl
Pih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5m
b3JjZWRSYW5nZUxvbmdMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdFbmZv
cmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ciIsIFRlc3RPYmpWOElu
dGVybmFsOjplbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlciwgVGVzdE9ialY4SW50
ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEg
Ki8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19j
YXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICov
fSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cicg
KFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3Jj
ZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2Vk
UmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJHZXR0ZXIsIFRlc3RPYmpWOEludGVybmFsOjpl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEg
Ki8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19j
YXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICov
fSwKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKICAgICAvLyBBdHRyaWJ1dGUgJ2NvbmRpdGlvbmFs
QXR0cjEnIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnQ29uZGl0aW9uYWwnKQogICAgIHsi
Y29uZGl0aW9uYWxBdHRyMSIsIFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbEF0dHIxQXR0
ckdldHRlciwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFsQXR0cjFBdHRyU2V0dGVyLCAw
IC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVM
VCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9u
IGluc3RhbmNlICovfSwKQEAgLTIwMTgsNiArMjEyMiwxMCBAQCBzdGF0aWMgY29uc3QgVjhET01D
b25maWd1cmF0aW9uOjpCYXRjaGVkQ2FsbGJhY2sgVjhUZXN0T2JqQ2FsbGJhY2tzW10gPSB7CiAg
ICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBcmciLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0
aENhbGxiYWNrQXJnQ2FsbGJhY2t9LAogICAgIHsibWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5k
Q2FsbGJhY2tBcmciLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJn
QW5kQ2FsbGJhY2tBcmdDYWxsYmFja30sCiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRp
b25hbEFyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25h
bEFyZ0NhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMiIsIFRlc3RP
YmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJDYWxsYmFja30sCisgICAg
eyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhv
ZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzJDYWxsYmFja30sCisgICAgeyJtZXRob2RXaXRoRW5mb3Jj
ZVJhbmdlSW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUlu
dDY0Q2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NCIsIFRlc3RP
YmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0Q2FsbGJhY2t9LAogI2lm
IEVOQUJMRShDb25kaXRpb24xKQogICAgIHsiY29uZGl0aW9uYWxNZXRob2QxIiwgVGVzdE9ialY4
SW50ZXJuYWw6OmNvbmRpdGlvbmFsTWV0aG9kMUNhbGxiYWNrfSwKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnMuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuY3BwCmluZGV4IDg4NjUzZDkxNGI3Nzhk
NTAwMjhkNTMzYjNmNTU3NmFjN2YxOGU4ZWIuLjZjZWVhMTViMDE2YjlkODcxNDQxZWZhZTlkNDA1
MGM5ODUyZWYyZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
cy5jcHAKQEAgLTcxLDcgKzcxLDcgQEAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHZvaWQgVjhfVVNF
KFQpIHsgfQogdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnM6OmNvbnN0cnVjdG9yMUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiB7CiAg
ICAgCi0gICAgVjhUUllDQVRDSChBcnJheUJ1ZmZlciosIGFycmF5QnVmZmVyLCBWOEFycmF5QnVm
ZmVyOjpIYXNJbnN0YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0
SXNVbmRlZmluZWQpLCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOEFycmF5QnVmZmVyOjp0b05hdGl2
ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFy
Z3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZ
UEVDSEVDSyhBcnJheUJ1ZmZlciosIGFycmF5QnVmZmVyLCBWOEFycmF5QnVmZmVyOjpIYXNJbnN0
YW5jZShNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
LCBhcmdzLkdldElzb2xhdGUoKSkgPyBWOEFycmF5QnVmZmVyOjp0b05hdGl2ZSh2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1
bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogCiAgICAgUmVmUHRyPFRlc3RPdmVybG9hZGVkQ29uc3Ry
dWN0b3JzPiBpbXBsID0gVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM6OmNyZWF0ZShhcnJheUJ1
ZmZlcik7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gYXJncy5Ib2xkZXIo
KTsKQEAgLTgzLDcgKzgzLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnM6OmNvbnN0cnVjdG9yMUNhbGxiYWNrKGNvbnN0IHYKIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBWOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpjb25zdHJ1Y3RvcjJDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogewogICAgIAotICAgIFY4VFJZQ0FUQ0go
QXJyYXlCdWZmZXJWaWV3KiwgYXJyYXlCdWZmZXJWaWV3LCBWOEFycmF5QnVmZmVyVmlldzo6SGFz
SW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhBcnJheUJ1ZmZlclZpZXc6OnRvTmF0aXZlKHY4
OjpIYW5kbGU8djg6Ok9iamVjdD46OkNhc3QoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
MCwgRGVmYXVsdElzVW5kZWZpbmVkKSkpIDogMCk7CisgICAgVjhUUllDQVRDSF9GT1JfVFlQRUNI
RUNLKEFycmF5QnVmZmVyVmlldyosIGFycmF5QnVmZmVyVmlldywgVjhBcnJheUJ1ZmZlclZpZXc6
Okhhc0luc3RhbmNlKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1Vu
ZGVmaW5lZCksIGFyZ3MuR2V0SXNvbGF0ZSgpKSA/IFY4QXJyYXlCdWZmZXJWaWV3Ojp0b05hdGl2
ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFy
Z3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCkpKSA6IDApOwogCiAgICAgUmVmUHRyPFRlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzPiBpbXBsID0gVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM6OmNy
ZWF0ZShhcnJheUJ1ZmZlclZpZXcpOwogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBl
ciA9IGFyZ3MuSG9sZGVyKCk7CkBAIC05NSw3ICs5NSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBWOFRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzOjpjb25zdHJ1Y3RvcjJDYWxsYmFjayhjb25z
dCB2CiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yczo6
Y29uc3RydWN0b3IzQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKIHsKICAgICAK
LSAgICBWOFRSWUNBVENIKEJsb2IqLCBibG9iLCBWOEJsb2I6Okhhc0luc3RhbmNlKE1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCksIGFyZ3MuR2V0SXNv
bGF0ZSgpKSA/IFY4QmxvYjo6dG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0Pjo6Q2FzdChN
QVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpKSkgOiAw
KTsKKyAgICBWOFRSWUNBVENIX0ZPUl9UWVBFQ0hFQ0soQmxvYiosIGJsb2IsIFY4QmxvYjo6SGFz
SW5zdGFuY2UoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZp
bmVkKSwgYXJncy5HZXRJc29sYXRlKCkpID8gVjhCbG9iOjp0b05hdGl2ZSh2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+OjpDYXN0KE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJ
c1VuZGVmaW5lZCkpKSA6IDApOwogCiAgICAgUmVmUHRyPFRlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzPiBpbXBsID0gVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM6OmNyZWF0ZShibG9iKTsKICAg
ICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBhcmdzLkhvbGRlcigpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcApp
bmRleCAzODY5MWYzYjI5ZmZkYzFiZmFiZWFjZjMwMTBmOTMyZGEyODEzNmJlLi4zODFkNTFhYjJk
MmVmODNkMzdjYjYwYzQwMDBjMjM5Y2M5MjJiMmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcApAQCAtNzUsNyArNzUsNyBA
QCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlQXR0ckdldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdgogc3RhdGljIHZvaWQgdmFsdWVBdHRyU2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlKiBpbXAgPSBWOFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6
OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFs
dWU+IHYgPSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZSh2YWx1ZSwgaW5mby5HZXRJc29s
YXRlKCkpOworICAgIFY4VFJZQ0FUQ0hfRk9SX1RZUEVDSEVDS19WT0lEKFJlZlB0cjxTZXJpYWxp
emVkU2NyaXB0VmFsdWU+LCB2LCBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZSh2YWx1ZSwg
aW5mby5HZXRJc29sYXRlKCkpKTsKICAgICBpbXAtPnNldFZhbHVlKFdURjo6Z2V0UHRyKHYpKTsK
ICAgICByZXR1cm47CiB9CkBAIC0xMDIsNyArMTAyLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBjYWNoZWRWYWx1ZUF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUs
IGMKIHN0YXRpYyB2b2lkIGNhY2hlZFZhbHVlQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCiB7CiAgICAgVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSogaW1w
ID0gVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlOjp0b05hdGl2ZShpbmZvLkhv
bGRlcigpKTsKLSAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiB2ID0gU2VyaWFsaXpl
ZFNjcmlwdFZhbHVlOjpjcmVhdGUodmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBWOFRS
WUNBVENIX0ZPUl9UWVBFQ0hFQ0tfVk9JRChSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiwg
diwgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGUodmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgp
KSk7CiAgICAgaW1wLT5zZXRDYWNoZWRWYWx1ZShXVEY6OmdldFB0cih2KSk7CiAgICAgaW5mby5I
b2xkZXIoKS0+RGVsZXRlSGlkZGVuVmFsdWUodjg6OlN0cmluZzo6TmV3U3ltYm9sKCJjYWNoZWRW
YWx1ZSIpKTsgLy8gSW52YWxpZGF0ZSB0aGUgY2FjaGVkIHZhbHVlLgogICAgIHJldHVybjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCmluZGV4IGRlN2MxODI1NzNiZDEy
YTVkN2Y5ODY5OTYyNWY2YzFjOGQ2ZWI3YzUuLjczOTY5ZjZlY2E4NDBhZjUyYjIwYzQ4OWIzNTg0
ZTI1ZGRjN2IxZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Qmlu
ZGluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcApA
QCAtMTAzLDQwICsxMDMsNDUgQEAgUGFzc1JlZlB0cjxOb2RlRmlsdGVyPiB0b05vZGVGaWx0ZXIo
djg6OkhhbmRsZTx2ODo6VmFsdWU+IGNhbGxiYWNrKQogICAgIHJldHVybiBOb2RlRmlsdGVyOjpj
cmVhdGUoVjhOb2RlRmlsdGVyQ29uZGl0aW9uOjpjcmVhdGUoY2FsbGJhY2spKTsKIH0KIAotaW50
IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKK2ludDMyX3Qg
dG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIENvbnZlcnNpb25BdHRyaWJ1dGVz
IGF0dHJpYnV0ZXMsIGJvb2wmIG9rKQogewogICAgIG9rID0gdHJ1ZTsKLSAgICAKKwogICAgIC8v
IEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGFscmVhZHkgYSAzMi1iaXQgaW50ZWdlci4KICAgICBp
ZiAodmFsdWUtPklzSW50MzIoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlLT5JbnQzMlZhbHVlKCk7
Ci0gICAgCisKICAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8K
ICAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVy
KCk7CiAgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxz
ZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIAorCisgICAgaWYgKGF0dHJpYnV0ZXMg
fCBGRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1
ZSgpOworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9r
ID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0g
KHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IC0weDgw
MDAwMDAgfHwgeCA+IDB4N2ZmZmZmZmYpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAg
ICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiB4OworICAgIH0K
KwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5
PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKLSAgICBp
ZiAoaXNuYW4obnVtYmVyVmFsdWUpIHx8IGlzaW5mKG51bWJlclZhbHVlKSkgewotICAgICAgICBv
ayA9IGZhbHNlOworICAgIGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFs
dWUpKQogICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgLy8gQ2FuIHRoZSB2YWx1
ZSBiZSBjb252ZXJ0ZWQgdG8gYSAzMi1iaXQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6Oklu
dDMyPiBpbnRWYWx1ZSA9IHZhbHVlLT5Ub0ludDMyKCk7Ci0gICAgaWYgKGludFZhbHVlLklzRW1w
dHkoKSkgewotICAgICAgICBvayA9IGZhbHNlOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0g
ICAgCi0gICAgLy8gUmV0dXJuIHRoZSByZXN1bHQgb2YgdGhlIGludDMyIGNvbnZlcnNpb24uCi0g
ICAgcmV0dXJuIGludFZhbHVlLT5WYWx1ZSgpOworCisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+
SW50MzJWYWx1ZSgpOwogfQotICAgIAotdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6
VmFsdWU+IHZhbHVlLCBib29sJiBvaykKKwordWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHZhbHVlLCBDb252ZXJzaW9uQXR0cmlidXRlcyBhdHRyaWJ1dGVzLCBib29sJiBv
aykKIHsKICAgICBvayA9IHRydWU7CiAKQEAgLTE0NCw2ICsxNDksNyBAQCB1aW50MzJfdCB0b1VJ
bnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKQogICAgIGlmICh2YWx1
ZS0+SXNVaW50MzIoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgpOwogCisg
ICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgc2lnbmVkIGludGVnZXIgLSBw
b3NzaWJseSBwb3NpdGl2ZT8KICAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgewogICAgICAgICBp
bnQzMl90IHJlc3VsdCA9IHZhbHVlLT5JbnQzMlZhbHVlKCk7CiAgICAgICAgIGlmIChyZXN1bHQg
Pj0gMCkKQEAgLTE1NywyMSArMTYzLDEwNiBAQCB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKQogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAK
KyAgICBpZiAoYXR0cmlidXRlcyB8IEZFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgZG91YmxlIHgg
PSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisgICAgICAgIGlmIChpc25hbih4KSB8fCBpc2luZih4
KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
ICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7Cisg
ICAgICAgIGlmICh4IDwgMCB8fCB4ID4gMHhmZmZmZmZmZikgeworICAgICAgICAgICAgb2sgPSBm
YWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJu
IHg7CisgICAgfQorCiAgICAgLy8gRG9lcyB0aGUgdmFsdWUgY29udmVydCB0byBuYW4gb3IgdG8g
YW4gaW5maW5pdHk/CiAgICAgZG91YmxlIG51bWJlclZhbHVlID0gbnVtYmVyT2JqZWN0LT5WYWx1
ZSgpOwotICAgIGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFsdWUpKSB7
CisgICAgaWYgKGlzbmFuKG51bWJlclZhbHVlKSB8fCBpc2luZihudW1iZXJWYWx1ZSkpCisgICAg
ICAgIHJldHVybiAwOworCisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+VWludDMyVmFsdWUoKTsK
K30KKworaW50NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgQ29udmVy
c2lvbkF0dHJpYnV0ZXMgYXR0cmlidXRlcywgYm9vbCYgb2spCit7CisgICAgb2sgPSB0cnVlOwor
CisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4KKyAgICBp
ZiAodmFsdWUtPklzSW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5JbnQzMlZhbHVlKCk7
CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KKyAgICB2
ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVyKCk7Cisg
ICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxzZTsKICAg
ICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0
ZWQgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6OlVpbnQz
Mj4gdWludFZhbHVlID0gdmFsdWUtPlRvVWludDMyKCk7Ci0gICAgaWYgKHVpbnRWYWx1ZS5Jc0Vt
cHR5KCkpIHsKKyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlm
IChhdHRyaWJ1dGVzIHwgRkVuZm9yY2VSYW5nZSkgeworICAgICAgICBpZiAoaXNuYW4oeCkgfHwg
aXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMo
eCkpOworICAgICAgICBpZiAoeCA8IC0oa0pTTWF4SW50ZWdlciAtIDEpIHx8IHggPiAoa0pTTWF4
SW50ZWdlciAtIDEpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQorCisgICAgLy8gTmFO
cyBhbmQgKy8tSW5maW5pdHkgc2hvdWxkIGJlIDAsIG90aGVyd2lzZSBtb2R1bG8gMl42NC4KKyAg
ICB1bnNpZ25lZCBsb25nIGxvbmcgaW50ZWdlcjsKKyAgICBkb3VibGVUb0ludGVnZXIoeCwgaW50
ZWdlcik7CisgICAgcmV0dXJuIGludGVnZXI7Cit9CisKK3VpbnQ2NF90IHRvVUludDY0KHY4OjpI
YW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgQ29udmVyc2lvbkF0dHJpYnV0ZXMgYXR0cmlidXRlcywg
Ym9vbCYgb2spCit7CisgICAgb2sgPSB0cnVlOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFs
dWUgaXMgYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzVWludDMy
KCkpCisgICAgICAgIHJldHVybiB2YWx1ZS0+VWludDMyVmFsdWUoKTsKKworICAgIC8vIEZhc3Qg
Y2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IGludGVnZXIuCisgICAgaWYgKHZhbHVlLT5Jc0lu
dDMyKCkpIHsKKyAgICAgICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+SW50MzJWYWx1ZSgpOwor
ICAgICAgICBpZiAocmVzdWx0ID49IDApCisgICAgICAgICAgICByZXR1cm4gcmVzdWx0OworICAg
IH0KKworICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyPworICAg
IHY4OjpMb2NhbDx2ODo6TnVtYmVyPiBudW1iZXJPYmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIoKTsK
KyAgICBpZiAobnVtYmVyT2JqZWN0LklzRW1wdHkoKSkgewogICAgICAgICBvayA9IGZhbHNlOwog
ICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSAgICByZXR1cm4gdWludFZhbHVlLT5WYWx1ZSgp
OworICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOworCisgICAgaWYgKGF0dHJp
YnV0ZXMgfCBGRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGlmIChpc25hbih4KSB8fCBpc2luZih4
KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
ICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7Cisg
ICAgICAgIGlmICh4IDwgMCB8fCB4ID4gKGtKU01heEludGVnZXIgLSAxKSkgeworICAgICAgICAg
ICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAg
IHJldHVybiB4OworICAgIH0KKworICAgIC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBi
ZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVn
ZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgsIGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2Vy
OwogfQogCiB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gY3JlYXRlUmF3VGVt
cGxhdGUodjg6Oklzb2xhdGUqIGlzb2xhdGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOEJpbmRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Qmlu
ZGluZy5oCmluZGV4IGE2OWU5MDllNmZiMjIwMmNiMDliMGEyYzEyNDQ1MmZhNTliYzQ3NzcuLjcz
NjRiM2E0MjdjZGE3M2RkNWE1ZTMwYTYyMjcwMzg4OGZmYjg3ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4QmluZGluZy5oCkBAIC01Niw2ICs1Niw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICBjbGFzcyBXb3JsZENvbnRleHRIYW5kbGU7CiAKICAgICBjb25zdCBpbnQga01heFJl
Y3Vyc2lvbkRlcHRoID0gMjI7CisgICAgY29uc3QgbG9uZyBsb25nIGtKU01heEludGVnZXIgPSAw
eDIwMDAwMDAwMDAwMDAwTEw7CiAKICAgICAvLyBTY2hlZHVsZSBhIERPTSBleGNlcHRpb24gdG8g
YmUgdGhyb3duLCBpZiB0aGUgZXhjZXB0aW9uIGNvZGUgaXMgZGlmZmVyZW50CiAgICAgLy8gZnJv
bSB6ZXJvLgpAQCAtMzQzLDM2ICszNDQsNjYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAg
UGFzc1JlZlB0cjxOb2RlRmlsdGVyPiB0b05vZGVGaWx0ZXIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
KTsKIAotICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCBpbnRlZ2VyLiAgVGhlIGNv
bnZlcnNpb24gZmFpbHMgaWYgdGhlCi0gICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0
byBhbiBpbnRlZ2VyIG9yIGNvbnZlcnRzIHRvIG5hbiBvciB0byBhbiBpbmZpbml0eS4KLSAgICBp
bnQgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKTsKKyAgICAv
LyBDb252ZXJzaW9uIGZsYWdzLCB1c2VkIGluIHRvSW50WFgvdG9VSW50WFguCisgICAgZW51bSBD
b252ZXJzaW9uQXR0cmlidXRlcyB7CisgICAgICAgIEZOb25lID0gMHgwMDAwLAorICAgICAgICBG
RW5mb3JjZVJhbmdlID0gMHgwMDAxLAorICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IEZDbGFt
cCA9IDB4MDAwMgorICAgIH07CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQg
c2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVl
IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBl
ciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy1sb25nCisg
ICAgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgQ29udmVyc2lvbkF0dHJp
YnV0ZXMsIGJvb2wmIG9rKTsKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spIHsgcmV0dXJuIHRvSW50MzIodmFsdWUsIEZOb25l
LCBvayk7IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCBpbnRlZ2VyIGFz
c3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgotICAgIGlubGluZSBpbnQgdG9JbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgaW5saW5lIGludDMyX3QgdG9JbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBib29sIG9rOwot
ICAgICAgICByZXR1cm4gdG9JbnQzMih2YWx1ZSwgb2spOworICAgICAgICByZXR1cm4gdG9JbnQz
Mih2YWx1ZSwgRk5vbmUsIG9rKTsKICAgICB9CiAKLSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8g
YSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlci4gIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQot
ICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gdW5zaWduZWQgaW50ZWdlciBv
ciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgdWludDMyX3QgdG9VSW50
MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvayk7CisgICAgLy8gQ29udmVy
dCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZh
aWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIg
b3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5v
cmcvVFIvV2ViSURMLyNlcy11bnNpZ25lZC1sb25nCisgICAgdWludDMyX3QgdG9VSW50MzIodjg6
OkhhbmRsZTx2ODo6VmFsdWU+LCBDb252ZXJzaW9uQXR0cmlidXRlcywgYm9vbCYgb2spOworICAg
IGlubGluZSB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJv
b2wmIG9rKSB7IHJldHVybiB0b1VJbnQzMih2YWx1ZSwgRk5vbmUsIG9rKTsgfQogCiAgICAgLy8g
Q29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIgYXNzdW1pbmcgdGhl
IGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCiAgICAgaW5saW5lIHVpbnQzMl90IHRvVUludDMyKHY4
OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGJvb2wgb2s7Ci0gICAg
ICAgIHJldHVybiB0b1VJbnQzMih2YWx1ZSwgb2spOworICAgICAgICByZXR1cm4gdG9VSW50MzIo
dmFsdWUsIEZOb25lLCBvayk7CiAgICAgfQogCi0gICAgaW5saW5lIGZsb2F0IHRvRmxvYXQodjg6
OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQt
Yml0IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2
YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRl
ZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtbG9u
Zy1sb25nCisgICAgaW50NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgQ29udmVy
c2lvbkF0dHJpYnV0ZXMsIGJvb2wmIG9rKTsKKworICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBh
IDY0LWJpdCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgorICAg
IGlubGluZSBpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAg
IHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUo
KSk7CisgICAgICAgIGJvb2wgb2s7CisgICAgICAgIHJldHVybiB0b0ludDY0KHZhbHVlLCBGTm9u
ZSwgb2spOwogICAgIH0KIAotICAgIGlubGluZSBsb25nIGxvbmcgdG9JbnQ2NCh2ODo6TG9jYWw8
djg6OlZhbHVlPiB2YWx1ZSkKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgdW5z
aWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUg
Y2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVy
IFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLXVuc2lnbmVk
LWxvbmctbG9uZworICAgIHVpbnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwg
Q29udmVyc2lvbkF0dHJpYnV0ZXMsIGJvb2wmIG9rKTsKKworICAgIC8vIENvbnZlcnQgYSB2YWx1
ZSB0byBhIDY0LWJpdCB1bnNpZ25lZCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNh
bm5vdCBmYWlsLgorICAgIGlubGluZSB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gdmFsdWUpCiAgICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8bG9uZyBsb25n
Pih2YWx1ZS0+SW50ZWdlclZhbHVlKCkpOworICAgICAgICBib29sIG9rOworICAgICAgICByZXR1
cm4gdG9VSW50NjQodmFsdWUsIEZOb25lLCBvayk7CisgICAgfQorCisgICAgaW5saW5lIGZsb2F0
IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgeworICAgICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1ZSgpKTsKICAgICB9CiAKICAg
ICBpbmxpbmUgYm9vbCBpc1VuZGVmaW5lZE9yTnVsbCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFs
dWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNy
b3MuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCmluZGV4
IDM1MmViZWZjNjEzODEzZWU0N2FmZWI2ZGY2ZjAwOGY2MTAyMWQ2NGEuLjgzODZiNWFmZTY2MDNk
ZTBjNGQwNjU1M2Y5NDhhZDIxM2MzMzQ2NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1Y4QmluZGluZ01hY3Jvcy5oCkBAIC00Nyw3ICs0NywzOSBAQCBlbnVtIFBhcmFtZXRlckRl
ZmF1bHRQb2xpY3kgewogICAgICAgICAgICAgcmV0dXJuIGJsb2NrLlJlVGhyb3coKTsgICAgICAg
XAogICAgIH0KIAotI2RlZmluZSBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKHR5cGUs
IHZhciwgdmFsdWUpIFwKKyNkZWZpbmUgVjhUUllDQVRDSF9GT1JfVFlQRUNIRUNLKHR5cGUsIHZh
ciwgdmFsdWUsIGlzb2xhdGUpIFwKKyAgICB0eXBlIHZhcjsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgYm9vbCBvayA9IHRydWU7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgeyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAg
IHY4OjpUcnlDYXRjaCBibG9jazsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgIHZhciA9ICh2YWx1ZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgIGlmIChibG9jay5IYXNDYXVnaHQoKSkgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKFVOTElLRUxZKCFvaykpICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJv
cigwLCBpc29sYXRlKTsgICAgICAgICAgICAgIFwKKyAgICB9CisKKyNkZWZpbmUgVjhUUllDQVRD
SF9GT1JfVFlQRUNIRUNLX1ZPSUQodHlwZSwgdmFyLCB2YWx1ZSwgaXNvbGF0ZSkgXAorICAgIHR5
cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgICAgYm9vbCBvayA9IHRydWU7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB2ODo6VHJ5
Q2F0Y2ggYmxvY2s7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgIHZhciA9ICh2YWx1ZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICAgICAgaWYgKGJsb2NrLkhhc0NhdWdodCgpKSB7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgYmxvY2suUmVUaHJvdygpOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICByZXR1cm47ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgfSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgaWYgKFVOTElLRUxZKCFvaykpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICAgICAgICAgdGhyb3dUeXBlRXJyb3IoMCwgaW5mby5HZXRJc29sYXRl
KCkpOyAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICByZXR1cm47ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgfSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIH0KKworI2Rl
ZmluZSBWOFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKHR5cGUsIHZhciwgdmFsdWUpICAg
ICAgIFwKICAgICB0eXBlIHZhcih2YWx1ZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCiAgICAgaWYgKCF2YXIucHJlcGFyZSgpKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaCBi
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKaW5kZXggMjRiMzNkZDE4
MmVlZGM4MzFmNmE1YTUxOTE5Yzg0ZDQzZWMwMWRkNy4uOGRlMTAyZjJhMjQ3N2RlMTAwOTU4MzYz
ODg2NzJkYTU4MTBjODhmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBl
Q29udmVyc2lvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9u
cy5oCkBAIC0zNiwyNSArMzYsMzMgQEAgY2xhc3MgVHlwZUNvbnZlcnNpb25zIDogcHVibGljIFJl
ZkNvdW50ZWQ8VHlwZUNvbnZlcnNpb25zPiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQ
dHI8VHlwZUNvbnZlcnNpb25zPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgVHlwZUNv
bnZlcnNpb25zKCkpOyB9CiAKLSAgICBsb25nIHRlc3RMb25nKCkgeyByZXR1cm4gbV90ZXN0TG9u
ZzsgfQotICAgIHZvaWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX3Rlc3RMb25nID0gdmFs
dWU7IH0KLSAgICB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Rl
c3RVbnNpZ25lZExvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RVbnNpZ25lZExvbmcodW5zaWduZWQg
bG9uZyB2YWx1ZSkgeyBtX3Rlc3RVbnNpZ25lZExvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgdGVz
dExvbmcoKSB7IHJldHVybiBtX2xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RMb25nKGxvbmcgdmFs
dWUpIHsgbV9sb25nID0gdmFsdWU7IH0KKyAgICBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nKCkg
eyByZXR1cm4gbV9sb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlTG9uZyhsb25n
IHZhbHVlKSB7IG1fbG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyB0ZXN0VW5zaWdu
ZWRMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RVbnNp
Z25lZExvbmcodW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZyA9IHZhbHVlOyB9
CisgICAgdW5zaWduZWQgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nKCkgeyByZXR1
cm4gbV91bnNpZ25lZExvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcodW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZyA9IHZhbHVlOyB9CiAK
LSAgICBsb25nIGxvbmcgdGVzdExvbmdMb25nKCkgeyByZXR1cm4gbV90ZXN0TG9uZ0xvbmc7IH0K
LSAgICB2b2lkIHNldFRlc3RMb25nTG9uZyhsb25nIGxvbmcgdmFsdWUpIHsgbV90ZXN0TG9uZ0xv
bmcgPSB2YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9u
ZygpIHsgcmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RV
bnNpZ25lZExvbmdMb25nKHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RVbnNpZ25l
ZExvbmdMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIGxvbmcgdGVzdExvbmdMb25nKCkgeyByZXR1
cm4gbV9sb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdExvbmdMb25nKGxvbmcgbG9uZyB2YWx1
ZSkgeyBtX2xvbmdMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIGxvbmcgdGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nKCkgeyByZXR1cm4gbV9sb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBtX2xvbmdMb25nID0gdmFsdWU7IH0K
KyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBt
X3Vuc2lnbmVkTG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RVbnNpZ25lZExvbmdMb25nKHVu
c2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQor
ICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZygp
IHsgcmV0dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdW5zaWdu
ZWRMb25nTG9uZyA9IHZhbHVlOyB9CiAKIHByaXZhdGU6CiAgICAgVHlwZUNvbnZlcnNpb25zKCkK
ICAgICB7CiAgICAgfQogCi0gICAgbG9uZyBtX3Rlc3RMb25nOwotICAgIHVuc2lnbmVkIGxvbmcg
bV90ZXN0VW5zaWduZWRMb25nOwotICAgIGxvbmcgbG9uZyBtX3Rlc3RMb25nTG9uZzsKLSAgICB1
bnNpZ25lZCBsb25nIGxvbmcgbV90ZXN0VW5zaWduZWRMb25nTG9uZzsKKyAgICBsb25nIG1fbG9u
ZzsKKyAgICB1bnNpZ25lZCBsb25nIG1fdW5zaWduZWRMb25nOworICAgIGxvbmcgbG9uZyBtX2xv
bmdMb25nOworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Vuc2lnbmVkTG9uZ0xvbmc7CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL1R5cGVDb252ZXJzaW9ucy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252
ZXJzaW9ucy5pZGwKaW5kZXggMzY3ZDFmN2VjNDg0MmU0MWY2YWFhMzEwYWIyMmE5YmM1MDFjZjg0
Zi4uYjI3YjE1OGQ3NjMzYjMzNDU2MTZlZTViYzdmZTMyYzZjZTU1YTJkNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbApAQCAtMjgsOCArMjgsMTIgQEAKICAg
ICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBUeXBlQ29udmVyc2lvbnMg
ewogICAgIGF0dHJpYnV0ZSBsb25nIHRlc3RMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJh
bmdlXSBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nOwogICAgIGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIHRlc3RVbnNpZ25lZExvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2ln
bmVkIGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZzsKIAogICAgIGF0dHJpYnV0ZSBs
b25nIGxvbmcgdGVzdExvbmdMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSBsb25n
IGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nOwogICAgIGF0dHJpYnV0ZSB1bnNpZ25lZCBs
b25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFu
Z2VdIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZzsK
IH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggN2VmYTk5N2Q5YWViMDBjOTNjZTZkYWU1NjIzYWYzZWI1OWJmZjBmOC4uYzhk
ZDA4MTMxNGVkOGJhMDI0MTJmZDJhMTNmMjZkZWE1NjQwMWU1OSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0
IEBACisyMDEyLTEyLTI3ICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgW1Y4XSBCaW5kaW5nOiBJbXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUg
Zm9yIGxvbmcgbG9uZyBjb252ZXJzaW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTY3OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFt
ZXRlcnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNl
cy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzOgorICAgICAgICAoZGVsZXRlU3VjY2Vzcyk6
CisKIDIwMTMtMDItMTIgIFVkYXkgS2lyYW4gIDx1ZGF5a2lyYW5AbW90b3JvbGEuY29tPgogCiAg
ICAgICAgIEJhY2tncm91bmQgc2l6ZSB3aWR0aCBzcGVjaWZpZWQgaW4gdmlld3BvcnQgcGVyY2Vu
dGFnZSB1bml0cyBub3Qgd29ya2luZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
c2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMgYi9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVy
aWMtcGFyYW1ldGVycy5qcwppbmRleCAyZTcwMDZjNWE5ZjJkNDkyMjFlYmYzNDI5OTQwM2ExOGYw
YmY5YTZkLi5hMjgyY2NmZmI5MjE4MjQ3NmE4MTAxNzk4NjlmOTFmZGFkN2QwYTY5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVz
LW51bWVyaWMtcGFyYW1ldGVycy5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQt
dGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy5qcwpAQCAtNjQsNyAr
NjQsNyBAQCBmdW5jdGlvbiBub25OdW1lcmljUG9saWN5KHRlbXBsYXRlKQogICAgIHRyeSB7CiAg
ICAgICAgIGV2YWwodGVtcGxhdGUpOwogICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgTmFOQWxs
b3dlZCA9IDA7CisgICAgICAgIG5hbkFsbG93ZWQgPSAwOwogICAgIH0KIAogICAgIHZhciBvbWl0
QWxsb3dlZCA9IC0xOyAvLyBtZWFucyAibm90IGFwcGxpY2FibGUiCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dAppbmRleCA1YjJh
OGNmMTRkNGU2ZGVlMGFiNzQ5ZmE4ZmNmODEwMzlhNzhkMGQ4Li4zNzA1OGM5MzA5MzE2NjNlMzVl
MWQ4MzAxNDA4NWU5ODRkMWQ0ODU2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dl
YmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMv
d2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQKQEAgLTY5LDYgKzY5LDggQEAgY29udmVy
dGVyLnRlc3RMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMQogY29udmVy
dGVyLnRlc3RMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRl
ci50ZXN0TG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMQogY29udmVydGVy
LnRlc3RMb25nID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKIGNvbnZlcnRl
ci50ZXN0TG9uZyA9IG51bGwKQEAgLTc3LDYgKzc5LDY5IEBAIGNvbnZlcnRlci50ZXN0TG9uZyA9
IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIu
dGVzdExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBl
eGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VMb25nJyBpbiBjb252ZXJ0
ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID09
PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
aXMgLTEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDEKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0YKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9
IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
LTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwMDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAt
MHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAxCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IDB4ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhGRkZGRkZGRiB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgw
MDAwMDAxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTnVtYmVyLk1JTl9WQUxV
RQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDEuOTkKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBJbmZpbml0eSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTmFOIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJycK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnYWJjJyB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMg
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB1bmRlZmluZWQgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhy
ZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTICd0ZXN0VW5zaWduZWRMb25nJyBpbiBjb252ZXJ0
ZXIgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPT09ICdu
dW1iZXInIGlzIHRydWUKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMApAQCAtMTQxLDYg
KzIwNiw4IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcn
CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSBudWxsCkBAIC0xNDks
NiArMjE2LDY0IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gdW5kZWZpbmVkCiBQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBl
eGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcnIGlu
IGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSAtMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4
ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkYKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MCB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IC0weDgxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gLTB4ODAwMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVy
cm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgw
MDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMCB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IC0weDgwMDAwMDAxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhEQ0JB
OTg3NjU0MzIxMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IE51bWJlci5NQVhfVkFMVUUg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gLU51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDEKK1BBU1MgY29udmVydGVyLi0xLjk5ID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBTeW50
YXhFcnJvcjogVW5leHBlY3RlZCB0b2tlbiAtLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
LUluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gdHJ1ZQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24g
RXJyb3IuCisKIFBBU1MgJ3Rlc3RMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSAwCkBAIC0xOTMsMTYgKzMxOCwyOCBAQCBjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1i
ZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVy
LnRlc3RMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDEuOTkKIFBBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEuOTkKIFBBU1Mg
Y29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IElu
ZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IC1JbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RM
b25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnJwogUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnMScK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gbnVsbApAQCAtMjExLDYgKzM0OCw3MiBAQCBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJy
b3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IDB4RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4
N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAw
MDAwMDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAw
MDAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3
NjU0MzIxMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVy
Lk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAt
MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5maW5pdHkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
TmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
dHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVy
cm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKwogUEFTUyAndGVzdFVuc2lnbmVkTG9uZ0xv
bmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IDAKQEAgLTI1NSwxNiArNDU4LDI4IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUlO
X1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMS45OQogUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nID0gLTEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4
RkZGRkZGRkZGRkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gSW5maW5p
dHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTmFOCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSBmYWxzZQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gdHJ1ZQogUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJ2Fi
YycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IG51bGwKQEAgLTI3Myw2ICs0ODgsNjQgQEAgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyBpcyAwCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBF
cnJvci4KIAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZl
cnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gLTEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4K
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gLTB4ODEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkYKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMCB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAw
eDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IC0weDgwMDAwMDAxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4
RENCQTk4NzY1NDMyMTAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NSU5fVkFM
VUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUlO
X1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE51
bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5N
QVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTEuOTkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
LUluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE5hTiB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJ2FiYycgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBF
cnJvci4KKwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRF
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sCmluZGV4IDIx
OTEzYmUwZmU4M2MwMjE3OTQwOWQ3YzY1YmZlY2FjZjQzNzAwMTIuLjM0MDI4NWM5NjEzNDU3ODYz
N2Y4ZjYzMzUyNzYyMTk1YTAxZWMwYjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMv
d2ViaWRsLXR5cGUtbWFwcGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRs
LXR5cGUtbWFwcGluZy5odG1sCkBAIC0zNiwxMSArMzYsMjMgQEAgZnVuY3Rpb24gdGVzdE5vbk51
bWVyaWNUb051bWVyaWMoYXR0cmlidXRlKQogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiZmFsc2Ui
LCAiMCIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAidHJ1ZSIsICIxIik7CiAgICAgY29udmVy
dChhdHRyaWJ1dGUsICInJyIsICIwIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInMSciLCAi
MSIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJ2FiYyciLCAiMCIpOwogICAgIGNvbnZlcnQo
YXR0cmlidXRlLCAibnVsbCIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJ1bmRlZmlu
ZWQiLCAiMCIpOwogfQogCitmdW5jdGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VS
YW5nZShhdHRyaWJ1dGUpCit7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJmYWxzZSIsICIwIik7
CisgICAgY29udmVydChhdHRyaWJ1dGUsICJ0cnVlIiwgIjEiKTsKKyAgICBjb252ZXJ0KGF0dHJp
YnV0ZSwgIicnIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicxJyIsICIxIik7Cisg
ICAgY29udmVydFRocm93cyhhdHRyaWJ1dGUsICInYWJjJyIpOworICAgIGNvbnZlcnQoYXR0cmli
dXRlLCAibnVsbCIsICIwIik7CisgICAgY29udmVydFRocm93cyhhdHRyaWJ1dGUsICJ1bmRlZmlu
ZWQiKTsKK30KKwogdHlwZSA9ICJ0ZXN0TG9uZyI7CiB2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7CiBj
b252ZXJ0KHR5cGUsICIwIik7CkBAIC03NSw2ICs4Nyw0MCBAQCB0ZXN0Tm9uTnVtZXJpY1RvTnVt
ZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhy
b3cgbmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5n
ZUxvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29u
dmVydCh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4
N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2Nv
bnZlcnQodHlwZSwgIi0weDgwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MSIpOworY29udmVydCh0
eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlwZSwg
IjB4RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydCh0eXBlLCAiLTB4
ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVydFRocm93cyh0eXBl
LCAiMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhGRkZGRkZGRiIpOworY29u
dmVydCh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAw
MDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIu
TUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVF
Iik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5
cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUluZmluaXR5
Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmlj
RW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rp
b24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0VW5z
aWduZWRMb25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsK
QEAgLTEwOSw2ICsxNTUsNDAgQEAgdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252
ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIp
OwogZGVidWcoIiIpOwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmciOwor
dmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29udmVydFRocm93
cyh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0Yi
KTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgIi0weDgwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MSIpOwor
Y29udmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZl
cnQodHlwZSwgIjB4RkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMCIpOworY29u
dmVydFRocm93cyh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIp
OworY29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZG
RiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3Mo
dHlwZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQz
MjEwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0
KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1O
dW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIw
Iik7Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnRUaHJvd3MoIi0xLjk5Iik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAi
LUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1lcmlj
VG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogdHlwZSA9
ICJ0ZXN0TG9uZ0xvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAi
MCIpOwpAQCAtMTMyLDE5ICsyMTIsNTEgQEAgY29udmVydCh0eXBlLCAiLTB4ODAwMDAwMDEiKTsK
IGNvbnZlcnQodHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKIGNvbnZlcnQodHlwZSwgIk51bWJl
ci5NSU5fVkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAi
MCIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4K
LS8vY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Ci0vL2NvbnZlcnQodHlw
ZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NQVhf
VkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOwog
Y29udmVydCh0eXBlLCAiMS45OSIsICIxIik7CiBjb252ZXJ0KHR5cGUsICItMS45OSIsICItMSIp
OwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8v
Y29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItSW5maW5p
dHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOworY29udmVydCh0eXBlLCAi
SW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKK2NvbnZl
cnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNv
bnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319
Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIjsKK3Zl
cmlmeUF0dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnQodHlwZSwg
Ii0xIik7Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252
ZXJ0KHR5cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0KHR5cGUs
ICItMHg4MCIpOworY29udmVydCh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZG
RiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsK
K2NvbnZlcnQodHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDEiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMDAwMDAiKTsK
K2NvbnZlcnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAw
Iik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRocm93cyh0eXBlLCAi
MHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIw
Iik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVt
YmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7Citjb252ZXJ0KHR5
cGUsICItMS45OSIsICItMSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5maW5pdHkiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiTmFO
IiwgIjAiKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29u
dmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0i
KTsKK2RlYnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0VW5zaWduZWRMb25nTG9uZyI7CiB2ZXJpZnlB
dHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC0xNjgsMTggKzI4MCw1MCBA
QCBjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIsICIweEZGRkZGRkZGN0ZGRkZGRkYiKTsKIGNv
bnZlcnQodHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKIGNvbnZlcnQodHlwZSwgIk51bWJlci5N
SU5fVkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIp
OwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8v
Y29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwg
Ii1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NQVhfVkFM
VUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOwogY29u
dmVydCh0eXBlLCAiMS45OSIsICIxIik7CiBjb252ZXJ0KHR5cGUsICItMS45OSIsICIweEZGRkZG
RkZGRkZGRkZGRkYiKTsKLS8vIEZJWE1FOiBJbmNvbnNpc3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4
IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIkluZmluaXR5IiwgIjAiKTsKLS8vY29udmVydCh0
eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKK2Nv
bnZlcnQodHlwZSwgIkluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIs
ICIwIik7Citjb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOwogdGVzdE5vbk51bWVyaWNUb051bWVy
aWModHlwZSk7CiBjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93
IG5ldyBFcnJvcjt9fSIpOwogZGVidWcoIiIpOwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwg
IjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xIik7Citjb252ZXJ0KHR5cGUsICIxIik7Citj
b252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUsICIweDgwIik7Citjb252ZXJ0KHR5
cGUsICIweEZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MCIpOworY29udmVydFRocm93
cyh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOworY29udmVydCh0eXBl
LCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIi0weDgwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZl
cnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAw
Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRocm93cyh0
eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxV
RSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICItMS45OSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5maW5pdHki
KTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBl
LCAiTmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319
Iik7CitkZWJ1ZygiIik7CisKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnR4dAppbmRleCAxZThiZDU3YmQzMTFiODJjZTlmMjQ4YmRkNzQ2NDRiYzJmMDJkNmQ1Li4xNDU1
N2Q0NTM2NmRkZjM0MWI2YzAxMjA3MGUyODkxMjNhMTE4ODdkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMTgsNiArMTgsMTUgQEAgUEFTUyBpbmRleGVkREIu
b3BlbihkYm5hbWUsIDApIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5
cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC01KQogUEFTUyBF
eGNlcHRpb24gd2FzIHRocm93bi4KIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkgdGhy
ZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBm
cm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgSW5maW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMg
dGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIEluZmluaXR5KSB0aHJldyBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3du
LgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0eSkgdGhyZXcgVHlwZUVycm9y
OiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgTmFOKQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgogRXhw
ZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC0x
KQogUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1l
LCAtMSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5q
cyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJh
ZC1wYXJhbWV0ZXJzLmpzCmluZGV4IGFmMzVmMmQ0YmM4MmIwYmNkYjViMDE0OGM2MzBmMjE1Mzk2
M2JmYzEuLmQzMzljMzJjMWM2YjExNDk3ZTFjYzg5ZDBjMDczNWFhMzk5OTc0NzggMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJh
ZC1wYXJhbWV0ZXJzLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291
cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCkBAIC0yMCw2ICsyMCw5IEBAIGZ1bmN0
aW9uIGRlbGV0ZVN1Y2Nlc3MoZXZ0KSB7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNz
KCJpbmRleGVkREIub3BlbihkYm5hbWUsICdzdHJpbmd2ZXJzaW9uJykiLCAiVHlwZUVycm9yIik7
CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUs
IDApIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkiLCAiVHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVj
dEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIEluZmluaXR5KSIsICJUeXBl
RXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVu
KGRibmFtZSwgLUluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhj
ZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKSIsICJUeXBlRXJyb3IiKTsK
ICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwg
LTEpIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCAweDIwMDAwMDAwMDAwMDAwKSIsICJUeXBlRXJyb3IiKTsKICAg
ICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgbnVs
bCkiLCAiVHlwZUVycm9yIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188184</attachid>
            <date>2013-02-13 14:34:04 -0800</date>
            <delta_ts>2013-02-13 17:11:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130213143032.patch</filename>
            <type>text/plain</type>
            <size>72765</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNzIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmYyZGM3MTc5MDA4OTlh
OTQyZjY0ZmE0OWI5OGM2NzE3MjY4M2UyOC4uMzU4NjM0MWFlNDUwNzgyMGYxMWM3YTczMWVhZWNi
NDY0ZWQ1MzhkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAyLTEzICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0
czogZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFt
ZXRlcnMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0
bWw6IEFkZGVkIEVuZm9yY2VSYW5nZSBjYXNlcy4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJDdXJzb3I6OmFkdmFuY2Up
OiBSZW1vdmUgY3VzdG9tIGJvdW5kcyBjaGVja2luZy4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4
ZWRkYi9JREJDdXJzb3IuaDogVXBkYXRlIHR5cGVzLgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5pZGw6IFVzZSBbRW5mb3JjZVJhbmdlXQorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRmFjdG9yeTo6
b3Blbik6IFJlbW92ZSBjdXN0b20gYm91bmRzIGNoZWNraW5nLgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuaDogVXBkYXRlIHR5cGVzLgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsOiBVc2UgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEpTVmFsdWVUb05h
dGl2ZSk6IEFkZCBGSVhNRSB0byBpbXBsZW1lbnQgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAgKEdlbmVyYXRlTm9y
bWFsQXR0clNldHRlcik6IElmIGNvbnZlcnNpb24gbWF5IHRocm93LCBnZW5lcmF0ZSBjaGVja2lu
ZyBjb2RlLgorICAgICAgICAoR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2spOiBEaXR0by4KKyAgICAg
ICAgKENvbnZlcnNpb25UaHJvd3NUeXBlRXJyb3IpOiBMZXRzIGNhbGxlcnMgb2YgSlNWYWx1ZVRv
TmF0aXZlIGRldGVybWluZSBpZgorICAgICAgICBjaGVja2luZyBjb2RlIGlzIG5lZWRlZC4KKyAg
ICAgICAgKEpTVmFsdWVUb05hdGl2ZSk6IE9wdGlvbmFsbHkgY2FsbCB0eXBlIGNoZWNraW5nIHZh
cmlhdGlvbnMgb2YgY29udmVyc2lvbgorICAgICAgICBtZXRob2RzLgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQ6IEFkZCBFbmZvcmNlUmFuZ2UuCisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsOiBBZGQgRW5mb3JjZVJhbmdlIHRl
c3QgbWV0aG9kcy4KKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2Jq
LmNwcDogVXBkYXRlZCBleHBlY3RhdGlvbnMuCisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5k
aW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50MzIpOiBBY2NlcHQgZmxhZ3MsIHJldHVy
biBzdWNjZXNzL2ZhaWwgc3RhdHVzLgorICAgICAgICAoV2ViQ29yZTo6dG9VSW50MzIpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OnRvSW50NjQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OnRvVUludDY0KTogRGl0dG8uCisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5kaW5nLmg6IFVw
ZGF0ZSBzaWduYXR1cmVzLCBkZWZpbmUgZmxhZyBlbnVtLCBoZWxwZXIgZnVuY3Rpb25zLgorICAg
ICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oOiBNYWNyb3MgZm9yIGdlbmVyYXRp
bmcgdHlwZSBjaGVja2luZyB3cmFwcGVycy4KKyAgICAgICAgKiB0ZXN0aW5nL1R5cGVDb252ZXJz
aW9ucy5oOiBBZGQgRW5mb3JjZVJhbmdlIHRlc3QgbWV0aG9kcy4KKyAgICAgICAgKiB0ZXN0aW5n
L1R5cGVDb252ZXJzaW9ucy5pZGw6IERpdHRvLgorCiAyMDEzLTAyLTEyICBDaHJpcyBGbGVpemFj
aCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgIEFYOiBjcmFzaCB3aGVuIGFjY2Vz
c2luZyBBY2Nlc3NpYmlsaXR5U2Nyb2xsYmFyIGFmdGVyIHBhZ2UgaGFzIGJlZW4gdW5sb2FkZWQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCmluZGV4
IDQ2OGVkYmViYTkxMTE2OWEwOTNhMmU3ZDIzNDkwODhmY2MyODM2YTUuLjYyNzY2MDM2NzNhYTA4
MzA2MjA5NjY4YTVmZTgzMjkzNGZhZmIwMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIFBhc3NSZWZQdHI8
SURCUmVxdWVzdD4gSURCQ3Vyc29yOjp1cGRhdGUoU2NyaXB0U3RhdGUqIHN0YXRlLCBTY3JpcHRW
YWx1ZSYgdmFsdWUsCiAgICAgcmV0dXJuIG9iamVjdFN0b3JlLT5wdXQoSURCRGF0YWJhc2VCYWNr
ZW5kSW50ZXJmYWNlOjpDdXJzb3JVcGRhdGUsIElEQkFueTo6Y3JlYXRlKHRoaXMpLCBzdGF0ZSwg
dmFsdWUsIG1fY3VycmVudFByaW1hcnlLZXksIGVjKTsKIH0KIAotdm9pZCBJREJDdXJzb3I6OmFk
dmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgSURCQ3Vyc29y
OjphZHZhbmNlKHVuc2lnbmVkIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAg
IGVjID0gMDsKICAgICBJREJfVFJBQ0UoIklEQkN1cnNvcjo6YWR2YW5jZSIpOwpAQCAtMTY2LDgg
KzE2Niw3IEBAIHZvaWQgSURCQ3Vyc29yOjphZHZhbmNlKGxvbmcgbG9uZyBjb3VudCwgRXhjZXB0
aW9uQ29kZSYgZWMpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogVGhp
cyBzaG91bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4
IGxhbmRzLgotICAgIGlmIChjb3VudCA8IDEgfHwgY291bnQgPiBVSU5UX01BWCkgeworICAgIGlm
ICghY291bnQpIHsKICAgICAgICAgZWMgPSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCmluZGV4
IDFjODMxNjQwMjZkYTQ0YjNmMDhlZjkzZmY0MmUzYWI0NWZmZjU5MmMuLmE3MmFiYjIzYmFiODM1
MTg3ZDBiMjg3NzM1MGJmNTU4MGQzNzQwNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkN1cnNvci5oCkBAIC03NSw4ICs3NSw3IEBAIHB1YmxpYzoKICAgICBJREJB
bnkqIHNvdXJjZSgpIGNvbnN0OwogCiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiB1cGRhdGUo
U2NyaXB0U3RhdGUqLCBTY3JpcHRWYWx1ZSYsIEV4Y2VwdGlvbkNvZGUmKTsKLSAgICAvLyBGSVhN
RTogTWFrZSB0aGlzIHVuc2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMu
Ci0gICAgdm9pZCBhZHZhbmNlKGxvbmcgbG9uZywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQg
YWR2YW5jZSh1bnNpZ25lZCBsb25nLCBFeGNlcHRpb25Db2RlJik7CiAgICAgLy8gRklYTUU6IFRy
eSB0byBtb2RpZnkgdGhlIGNvZGUgZ2VuZXJhdG9yIHNvIHRoaXMgb3ZlcmxvYWQgaXMgdW5uZWVk
ZWQuCiAgICAgdm9pZCBjb250aW51ZUZ1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBF
eGNlcHRpb25Db2RlJiBlYykgeyBjb250aW51ZUZ1bmN0aW9uKHN0YXRpY19jYXN0PElEQktleSo+
KDApLCBlYyk7IH0KICAgICB2b2lkIGNvbnRpbnVlRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIGNvbnN0IFNjcmlwdFZhbHVlJiBrZXksIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCmluZGV4IDQ1NzBjMWVj
Yzg3ZDA4YjkwMTAwM2EzZGM4ZjI3ODYxZjExODhlYTEuLjRiNjI2NWI0MjhmMjZlOTFmYzA3YmI4
YjVjMjIxNWQ3ZGM0MjM0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmlkbApAQCAtMzUsOCArMzUsNyBAQAogCiAgICAgW0NhbGxXaXRoPVNjcmlw
dFN0YXRlXSBJREJSZXF1ZXN0IHVwZGF0ZShpbiBhbnkgdmFsdWUpCiAgICAgICAgIHJhaXNlcyAo
RE9NRXhjZXB0aW9uKTsKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFuZ2VdIHVu
c2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgdm9pZCBhZHZh
bmNlKGluIGxvbmcgbG9uZyBjb3VudCkKKyAgICB2b2lkIGFkdmFuY2UoaW4gW0VuZm9yY2VSYW5n
ZV0gdW5zaWduZWQgbG9uZyBjb3VudCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwog
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBsZW1lbnRlZEFzPWNvbnRp
bnVlRnVuY3Rpb25dIHZvaWQgY29udGludWUoaW4gW09wdGlvbmFsXSBhbnkga2V5KQogICAgICAg
ICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkZhY3RvcnkuY3BwCmluZGV4IGQwMTIwZjYwYTg5YWRmZmI3ZDE2NWM5YWFiNzNm
OWY3NmYzMTEwYjAuLjFkNWYwZmJiMWFiZjFlNWFkZGQ3Mzg1Mzc5M2Y5ZDBkYzE4MDJmNzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCkBA
IC0xMTEsMTEgKzExMSw5IEBAIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gSURCRmFjdG9yeTo6Z2V0
RGF0YWJhc2VOYW1lcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250CiAgICAgcmV0dXJuIHJl
cXVlc3Q7CiB9CiAKLVBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3Bl
bihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIGlu
dDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCitQYXNzUmVmUHRyPElEQk9wZW5EQlJl
cXVlc3Q+IElEQkZhY3Rvcnk6Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
Y29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9u
Q29kZSYgZWMpCiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG9ubHkgbmVlZCB0byBjaGVj
ayBmb3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBjb25zdCBpbnQ2NF90
IG1heEVDTUFTY3JpcHRJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAwMExMIC0gMTsKLSAgICBpZiAo
dmVyc2lvbiA8IDEgfHwgdmVyc2lvbiA+IG1heEVDTUFTY3JpcHRJbnRlZ2VyKSB7CisgICAgaWYg
KCF2ZXJzaW9uKSB7CiAgICAgICAgIGVjID0gVHlwZUVycm9yOwogICAgICAgICByZXR1cm4gMDsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgK
aW5kZXggY2IxYjdiMGIzNzZiN2FhNmQ4NDljNjg0OGIzMGUzZTFjZTYwMmVmOC4uOTgxZGU4YzMy
OGY4YTJmMWVkOWU3NzhiY2JkOTBkMjZmZGJhMWQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaApAQCAtNTgsNyArNTgsNyBAQCBwdWJsaWM6CiAg
ICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJl
cXVlc3Q+IG9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwg
RXhjZXB0aW9uQ29kZSYpOwotICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZlcnNp
b24sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9w
ZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgdW5zaWduZWQg
bG9uZyBsb25nIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPElEQk9w
ZW5EQlJlcXVlc3Q+IGRlbGV0ZURhdGFiYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25z
dCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHNob3J0IGNtcChTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUmIGZpcnN0LCBjb25zdCBTY3JpcHRW
YWx1ZSYgc2Vjb25kLCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCmluZGV4IGE1MTYwNWIyYjRlMzEyOTdiYjU1ZGEz
YjUxN2Q1ZGQxMmMzZDIyYWMuLmVmNTFiYmY4Mzg3Y2E4YmQwZTZhZWJjNTEwNjNiOGQ1ZTY4ZDRm
NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rvcnku
aWRsCkBAIC0zMSw4ICszMSw3IEBACiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQsIEltcGxlbWVudGVkQXM9Z2V0RGF0YWJhc2VOYW1lc10gSURCUmVxdWVzdCB3ZWJraXRHZXRE
YXRhYmFzZU5hbWVzKCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogCi0gICAgLy8g
RklYTUU6IE1ha2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgb25jZSB3
ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRdIElEQk9wZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW09wdGlv
bmFsXSBsb25nIGxvbmcgdmVyc2lvbikKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dF0gSURCT3BlbkRCUmVxdWVzdCBvcGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbRW5mb3Jj
ZVJhbmdlLCBPcHRpb25hbF0gdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pCiAgICAgICAgIHJh
aXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gSURCT3BlbkRCUmVxdWVzdCBkZWxldGVEYXRhYmFzZShpbiBET01TdHJpbmcgbmFtZSkKICAg
ICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBhOTRjODhjNjhhNDlhNmQzMzUx
ODg1ZDNmNjY4MWRhZDE3N2E5OTY1Li42ZWVmMGFhZDAzMDNjNjA5OWU5OGQyOGRmZjc0OTY2MjE5
ZjExZDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQpAQCAtMzE1NCw2ICszMTU0LDcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQog
ICAgIHJldHVybiAiJHZhbHVlLnRvQm9vbGVhbihleGVjKSIgaWYgJHR5cGUgZXEgImJvb2xlYW4i
OwogICAgIHJldHVybiAiJHZhbHVlLnRvTnVtYmVyKGV4ZWMpIiBpZiAkdHlwZSBlcSAiZG91Ymxl
IjsKICAgICByZXR1cm4gIiR2YWx1ZS50b0Zsb2F0KGV4ZWMpIiBpZiAkdHlwZSBlcSAiZmxvYXQi
OworICAgICMgRklYTUU6IEFkZCBbRW5mb3JjZVJhbmdlXSBzdXBwb3J0CiAgICAgcmV0dXJuICIk
dmFsdWUudG9JbnQzMihleGVjKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9y
dCI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9VSW50MzIoZXhlYykiIGlmICR0eXBlIGVxICJ1bnNp
Z25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwogICAgIHJldHVybiAic3Rh
dGljX2Nhc3Q8JHR5cGU+KCR2YWx1ZS50b0ludGVnZXIoZXhlYykpIiBpZiAkdHlwZSBlcSAibG9u
ZyBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggODZmOGVh
YmZmMWFmMWExYTRjNmY1Njg2YmMyOGY1ZTdhNmY1Mjc0Ni4uNWUxOGI1YjhiOGIzYjUzNmNhYzQ5
Yjk4OGUyOTcyYmFkMzhjYmI4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KQEAgLTEyNDAsMTQgKzEyNDAsMTkgQEAgRU5ECiAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgICAgICByZXR1cm47XG4iKTsK
ICAgICAgICAgfQogICAgIH0gZWxzZSB7Ci0gICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05h
dGl2ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIp
OwogICAgICAgICBteSAkYXJyYXlUeXBlID0gJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5VHlwZSgk
bmF0aXZlVHlwZSk7CiAKICAgICAgICAgaWYgKCRuYXRpdmVUeXBlID1+IC9eVjhTdHJpbmdSZXNv
dXJjZS8pIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmli
dXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICAiIC4gQ29udmVydFRvVjhTdHJpbmdSZXNv
dXJjZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICRuYXRpdmVUeXBlLCAidiIsICR2YWx1ZSwgIlZP
SUQiKSAuICJcbiIpOwogICAgICAgICB9IGVsc2lmICgkYXJyYXlUeXBlKSB7CisgICAgICAgICAg
ICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFs
dWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
RGVjbHMsICIgICAgVmVjdG9yPCRhcnJheVR5cGU+IHYgPSAkdmFsdWU7XG4iKTsKKyAgICAgICAg
fSBlbHNpZiAoQ29udmVyc2lvblRocm93c1R5cGVFcnJvcigkYXR0cmlidXRlLT5zaWduYXR1cmUp
KSB7CisgICAgICAgICAgICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+
c2lnbmF0dXJlLCAidmFsdWUiLCAiaW5mby5HZXRJc29sYXRlKCkiLCAxKTsKKyAgICAgICAgICAg
IHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgVFlQRUNIRUNLX1ZPSUQoJG5hdGl2ZVR5cGUs
IHYsICR2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpO1xuIik7CiAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLCAidmFsdWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50RGVjbHMsICIgICAgJG5hdGl2ZVR5cGUgdiA9ICR2YWx1ZTtcbiIpOwogICAgICAg
ICB9CiAgICAgfQpAQCAtMTgzMCw4ICsxODM1LDEzIEBAIHN1YiBHZW5lcmF0ZVBhcmFtZXRlcnND
aGVjawogICAgICAgICAgICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAg
ICAgcmV0dXJuIHRocm93VHlwZUVycm9yKDAsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CiAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNr
U3RyaW5nIC49ICIgICAgVjhUUllDQVRDSCgkbmF0aXZlVHlwZSwgJHBhcmFtZXRlck5hbWUsICIg
LgotICAgICAgICAgICAgICAgICBKU1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgIk1BWUJFX01J
U1NJTkdfUEFSQU1FVEVSKGFyZ3MsICRwYXJhbUluZGV4LCAkcGFyYW1ldGVyRGVmYXVsdFBvbGlj
eSkiLCAiYXJncy5HZXRJc29sYXRlKCkiKSAuICIpO1xuIjsKKyAgICAgICAgICAgIGlmIChDb252
ZXJzaW9uVGhyb3dzVHlwZUVycm9yKCRwYXJhbWV0ZXIpKSB7CisgICAgICAgICAgICAgICAgbXkg
JHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0ZXIsICJNQVlCRV9NSVNTSU5HX1BBUkFN
RVRFUihhcmdzLCAkcGFyYW1JbmRleCwgJHBhcmFtZXRlckRlZmF1bHRQb2xpY3kpIiwgImFyZ3Mu
R2V0SXNvbGF0ZSgpIiwgMSk7CisgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5n
IC49ICIgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSygkbmF0aXZlVHlwZSwgJHBhcmFtZXRl
ck5hbWUsICR2YWx1ZSwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKKyAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0
ZXIsICJNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAkcGFyYW1JbmRleCwgJHBhcmFtZXRl
ckRlZmF1bHRQb2xpY3kpIiwgImFyZ3MuR2V0SXNvbGF0ZSgpIik7CisgICAgICAgICAgICAgICAg
JHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgVjhUUllDQVRDSCgkbmF0aXZlVHlwZSwgJHBh
cmFtZXRlck5hbWUsICR2YWx1ZSk7XG4iOworICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYg
KCRuYXRpdmVUeXBlIGVxICdEaWN0aW9uYXJ5JykgewogICAgICAgICAgICAgICAgJHBhcmFtZXRl
ckNoZWNrU3RyaW5nIC49ICIgICAgaWYgKCEkcGFyYW1ldGVyTmFtZS5pc1VuZGVmaW5lZE9yTnVs
bCgpICYmICEkcGFyYW1ldGVyTmFtZS5pc09iamVjdCgpKVxuIjsKICAgICAgICAgICAgICAgICRw
YXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoXCJO
b3QgYW4gb2JqZWN0LlwiLCBhcmdzLkdldElzb2xhdGUoKSk7XG4iOwpAQCAtMzkxNSwyMSArMzky
NSwzOSBAQCBzdWIgVHlwZUNhbkZhaWxDb252ZXJzaW9uCiAgICAgcmV0dXJuIDA7CiB9CiAKK3N1
YiBDb252ZXJzaW9uVGhyb3dzVHlwZUVycm9yCit7CisgICAgbXkgJHNpZ25hdHVyZSA9IHNoaWZ0
OworICAgIHJldHVybiAxIGlmICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZv
cmNlUmFuZ2UifTsKKyAgICByZXR1cm4gMDsKK30KKwogc3ViIEpTVmFsdWVUb05hdGl2ZQogewog
ICAgIG15ICRzaWduYXR1cmUgPSBzaGlmdDsKICAgICBteSAkdmFsdWUgPSBzaGlmdDsKICAgICBt
eSAkZ2V0SXNvbGF0ZSA9IHNoaWZ0OworICAgIG15ICRtYXlGYWlsID0gc2hpZnQ7CiAKICAgICBt
eSAkdHlwZSA9ICRzaWduYXR1cmUtPnR5cGU7CisgICAgbXkgJGNvbnZlcnNpb25BdHRyaWJ1dGVz
ID0gJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuZm9yY2VSYW5nZSJ9ID8gIkZF
bmZvcmNlUmFuZ2UiIDogIkZOb25lIjsKKyAgICBkaWUgIkNhbid0IGhhbmRsZSBbRW5mb3JjZVJh
bmdlXSB1bmxlc3MgY2FsbGVkIGZyb20gY29udGV4dCB0aGF0IGhhbmRsZXMgZmFpbHVyZXMuIiBp
ZiAkY29udmVyc2lvbkF0dHJpYnV0ZXMgbmUgIkZOb25lIiBhbmQgISRtYXlGYWlsOwogCiAgICAg
cmV0dXJuICIkdmFsdWUiIGlmICR0eXBlIGVxICJKU09iamVjdCI7CiAgICAgcmV0dXJuICIkdmFs
dWUtPkJvb2xlYW5WYWx1ZSgpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICJz
dGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLT5OdW1iZXJWYWx1ZSgpKSIgaWYgJHR5cGUgZXEgImZs
b2F0IiBvciAkdHlwZSBlcSAiZG91YmxlIjsKIAotICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUp
IiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKLSAgICByZXR1cm4gInRv
VUludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAi
dW5zaWduZWQgc2hvcnQiOwotICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBl
cSAidW5zaWduZWQgbG9uZyBsb25nIiBvciAkdHlwZSBlcSAibG9uZyBsb25nIjsKKyAgICBpZiAo
JG1heUZhaWwpIHsKKyAgICAgICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSwgJGNvbnZlcnNpb25B
dHRyaWJ1dGVzLCBvaykiIGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwor
ICAgICAgICByZXR1cm4gInRvVUludDMyKCR2YWx1ZSwgJGNvbnZlcnNpb25BdHRyaWJ1dGVzLCBv
aykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hv
cnQiOworICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlLCAkY29udmVyc2lvbkF0dHJpYnV0
ZXMsIG9rKSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyI7CisgICAgICAgIHJldHVybiAidG9VSW50
NjQoJHZhbHVlLCAkY29udmVyc2lvbkF0dHJpYnV0ZXMsIG9rKSIgaWYgJHR5cGUgZXEgInVuc2ln
bmVkIGxvbmcgbG9uZyI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgcmV0dXJuICJ0b0ludDMyKCR2
YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOworICAgICAgICBy
ZXR1cm4gInRvVUludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAk
dHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVl
KSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyI7CisgICAgICAgIHJldHVybiAidG9VSW50NjQoJHZh
bHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyI7CisgICAgfQogICAgIHJldHVy
biAic3RhdGljX2Nhc3Q8UmFuZ2U6OkNvbXBhcmVIb3c+KCR2YWx1ZS0+SW50MzJWYWx1ZSgpKSIg
aWYgJHR5cGUgZXEgIkNvbXBhcmVIb3ciOwogICAgIHJldHVybiAidG9XZWJDb3JlRGF0ZSgkdmFs
dWUpIiBpZiAkdHlwZSBlcSAiRGF0ZSI7CiAgICAgcmV0dXJuICJ0b0RPTVN0cmluZ0xpc3QoJHZh
bHVlLCAkZ2V0SXNvbGF0ZSkiIGlmICR0eXBlIGVxICJET01TdHJpbmdMaXN0IjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CmluZGV4IGM2
MzY0NGZiZTk2NTI5ZGY3OGEyMzgzMGE1NmI2NDFhMmRiZWRkMDcuLjY3MjVjMTE5MWNiMmFmYTYx
ZTdhMjU5ODUwYTM4NWFmZGI0ZmYyZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dApAQCAtNTIsNiArNTIsNyBAQCBEb05vdENoZWNr
Q29uc3RhbnRzCiBEb05vdENoZWNrU2VjdXJpdHkKIERvTm90Q2hlY2tTZWN1cml0eU9uR2V0dGVy
CiBEb05vdENoZWNrU2VjdXJpdHlPblNldHRlcgorRW5mb3JjZVJhbmdlCiBFdmVudFRhcmdldAog
RXh0ZW5kc0RPTUdsb2JhbE9iamVjdAogR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRG9jdW1lbnR8
SW1wbEVsZW1lbnRSb290fEltcGxPd25lck5vZGVSb290CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKaW5kZXggYzA2MzBlMzcyY2U2ZDdlNDBi
MTIyZDkyY2FiYWY2ZDI5NmZmZmU0OC4uYTdiNjhiODBmMGRjZDUyMWZmNGJiOWU1NTcyNWFlZGE1
ODk0MzVhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Rlc3RPYmouaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9U
ZXN0T2JqLmlkbApAQCAtMTQ3LDYgKzE0NywxOSBAQCBlbnVtIFRlc3RFbnVtVHlwZSB7ICIiLCAi
RW51bVZhbHVlMSIsICJFbnVtVmFsdWUyIiwgIkVudW1WYWx1ZTMiIH07CiAgICAgdm9pZCAgICBt
ZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZyhpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBU
ZXN0Q2FsbGJhY2sgY2FsbGJhY2spOwogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFRFU1RJTkdfVjgp
CisgICAgLy8gJ0VuZm9yY2VSYW5nZScgZXh0ZW5kZWQgYXR0cmlidXRlCisgICAgdm9pZCAgICBt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIoaW4gW0VuZm9yY2VSYW5nZV0gbG9uZyB2YWx1ZSk7
CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyKGluIFtFbmZvcmNlUmFu
Z2VdIHVuc2lnbmVkIGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VS
YW5nZUludDY0KGluIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAg
ICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0KGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVk
IGxvbmcgbG9uZyB2YWx1ZSk7CisKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBl
bmZvcmNlZFJhbmdlTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2ln
bmVkIGxvbmcgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtF
bmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyOworICAgIGF0
dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgZW5mb3JjZWRSYW5nZVVu
c2lnbmVkTG9uZ0xvbmdBdHRyOworI2VuZGlmCisKICAgICAvLyAnQ29uZGl0aW9uYWwnIGV4dGVu
ZGVkIGF0dHJpYnV0ZQogICAgIFtDb25kaXRpb25hbD1Db25kaXRpb24xXSBhdHRyaWJ1dGUgbG9u
ZyBjb25kaXRpb25hbEF0dHIxOwogICAgIFtDb25kaXRpb25hbD1Db25kaXRpb24xJkNvbmRpdGlv
bjJdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0cjI7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCmluZGV4IGFkYzcw
OThiMmNhNDJjMTBmMmI2NDI4MWMyOGJhNDRlNDgxZmQ0YmIuLjg2ZmY0NTE0ODc5ZGUwNjYzN2I2
MTg3Mzg5NjUzNjAwODU0NzVlZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCkBAIC0yMjcsNyArMjI3LDcgQEAgc3Rh
dGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB1bnNpZ25lZExvbmdMb25nQXR0ckF0dHJHZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmcKIHN0YXRpYyB2b2lkIHVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0
clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4g
dmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICB1bnNpZ25lZCBsb25n
IGxvbmcgdiA9IHRvSW50NjQodmFsdWUpOworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9V
SW50NjQodmFsdWUpOwogICAgIGltcC0+c2V0VW5zaWduZWRMb25nTG9uZ0F0dHIodik7CiAgICAg
cmV0dXJuOwogfQpAQCAtNjg4LDYgKzY4OCw2MiBAQCBzdGF0aWMgdm9pZCB3aXRoU2NyaXB0QXJn
dW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cgog
ICAgIHJldHVybjsKIH0KIAorc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJh
bmdlTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2
ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6
dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4SW50ZWdlcihpbXAtPmVuZm9y
Y2VkUmFuZ2VMb25nQXR0cigpLCBpbmZvLkdldElzb2xhdGUoKSk7Cit9CisKK3N0YXRpYyB2b2lk
IGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5h
bWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBp
bmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xk
ZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVlLCBGRW5mb3Jj
ZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFu
Z2VMb25nQXR0cih2KTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRl
c3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0
dXJuIHY4VW5zaWduZWRJbnRlZ2VyKGltcC0+ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHIo
KSwgaW5mby5HZXRJc29sYXRlKCkpOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5z
aWduZWRMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQorewor
ICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Cisg
ICAgVFlQRUNIRUNLX1ZPSUQodW5zaWduZWQsIHYsIHRvVUludDMyKHZhbHVlLCBGRW5mb3JjZVJh
bmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VV
bnNpZ25lZExvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJl
dHVybiB2ODo6TnVtYmVyOjpOZXcoc3RhdGljX2Nhc3Q8ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFu
Z2VMb25nTG9uZ0F0dHIoKSkpOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0xv
bmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVz
dE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBF
Q0hFQ0tfVk9JRChsb25nIGxvbmcsIHYsIHRvSW50NjQodmFsdWUsIEZFbmZvcmNlUmFuZ2UsIG9r
KSwgaW5mby5HZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZUxvbmdMb25n
QXR0cih2KTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6
OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0
T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVy
biB2ODo6TnVtYmVyOjpOZXcoc3RhdGljX2Nhc3Q8ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFuZ2VV
bnNpZ25lZExvbmdMb25nQXR0cigpKSk7Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VV
bnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUs
IHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZv
KQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIo
KSk7CisgICAgVFlQRUNIRUNLX1ZPSUQodW5zaWduZWQgbG9uZyBsb25nLCB2LCB0b1VJbnQ2NCh2
YWx1ZSwgRkVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5z
ZXRFbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIodik7CisgICAgcmV0dXJuOworfQor
CiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
Y29uZGl0aW9uYWxBdHRyMUF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC0xMzk1LDYgKzE0NTEsNDYgQEAgc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZ0Nh
bGxiYWNrKGNvbnN0IHY4OjoKICAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKIH0KIAorc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwg
MSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJ
c29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5I
b2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyhpbnQsIHZhbHVlLCB0b0lu
dDMyKE1BWUJFX01JU1NJTkdfUEFSQU1FVEVSKGFyZ3MsIDAsIERlZmF1bHRJc1VuZGVmaW5lZCks
IEZFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9k
V2l0aEVuZm9yY2VSYW5nZUludDMyKHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsK
K30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdl
VUludDMyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJn
cy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vy
cm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodW5z
aWduZWQsIHZhbHVlLCB0b1VJbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBE
ZWZhdWx0SXNVbmRlZmluZWQpLCBGRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNvbGF0ZSgp
KTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzIodmFsdWUpOworICAgIHJl
dHVybiB2OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1l
dGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFy
Z3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dO
b3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiog
aW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENI
X1dJVEhfVFlQRUNIRUNLKGxvbmcgbG9uZywgdmFsdWUsIHRvSW50NjQoTUFZQkVfTUlTU0lOR19Q
QVJBTUVURVIoYXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgRkVuZm9yY2VSYW5nZSwgb2sp
LCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50
NjQodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRDYWxsYmFjayhjb25z
dCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAg
ICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRl
KCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIo
KSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyh1bnNpZ25lZCBsb25nIGxvbmcsIHZh
bHVlLCB0b1VJbnQ2NChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNV
bmRlZmluZWQpLCBGRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBp
bXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjQodmFsdWUpOworICAgIHJldHVybiB2OFVu
ZGVmaW5lZCgpOworfQorCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxNZXRob2QxQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXJncykKQEAgLTE5MzQsNiArMjAzMCwxNCBAQCBzdGF0aWMgY29uc3QgVjhET01Db25m
aWd1cmF0aW9uOjpCYXRjaGVkQXR0cmlidXRlIFY4VGVzdE9iakF0dHJzW10gPSB7CiAgICAgeyJ3
aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0
ZSIsIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlw
dFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZUF0dHJHZXR0ZXIsIFRlc3RPYmpWOEludGVybmFsOjp3
aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0
ZUF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRy
b2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6
Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAogICAgIC8vIEF0dHJpYnV0ZSAnd2l0aFNjcmlw
dEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZScgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0
dHI6ICdDYWxsV2l0aCcpCiAgICAgeyJ3aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0
cmlidXRlIiwgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3Rh
Y2tBdHRyaWJ1dGVBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3Vt
ZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3Rh
dGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6
OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAg
IC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScg
RXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlTG9uZ0F0dHIiLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRlciwgVGVzdE9i
alY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0
YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGlj
X2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2Ug
Ki99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHInIChU
eXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2Vk
UmFuZ2VVbnNpZ25lZExvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VV
bnNpZ25lZExvbmdBdHRyQXR0ckdldHRlciwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFu
Z2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlciwgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2Fz
dDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVy
dHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0
cmlidXRlICdlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0
QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyIiwg
VGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyR2V0dGVyLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJTZXR0ZXIsIDAg
Lyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxU
KSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24g
aW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9u
Z0xvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisg
ICAgeyJlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5h
bDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlciwgVGVzdE9ialY4
SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIsIDAg
Lyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxU
KSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24g
aW5zdGFuY2UgKi99LAogI2lmIEVOQUJMRShDb25kaXRpb24xKQogICAgIC8vIEF0dHJpYnV0ZSAn
Y29uZGl0aW9uYWxBdHRyMScgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdDb25kaXRpb25h
bCcpCiAgICAgeyJjb25kaXRpb25hbEF0dHIxIiwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlv
bmFsQXR0cjFBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9uYWxBdHRyMUF0
dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+
KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9u
ZSksIDAgLyogb24gaW5zdGFuY2UgKi99LApAQCAtMjAxOCw2ICsyMTIyLDEwIEBAIHN0YXRpYyBj
b25zdCBWOERPTUNvbmZpZ3VyYXRpb246OkJhdGNoZWRDYWxsYmFjayBWOFRlc3RPYmpDYWxsYmFj
a3NbXSA9IHsKICAgICB7Im1ldGhvZFdpdGhDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVybmFs
OjptZXRob2RXaXRoQ2FsbGJhY2tBcmdDYWxsYmFja30sCiAgICAgeyJtZXRob2RXaXRoTm9uQ2Fs
bGJhY2tBcmdBbmRDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoTm9u
Q2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZ0NhbGxiYWNrfSwKICAgICB7Im1ldGhvZFdpdGhDYWxs
YmFja0FuZE9wdGlvbmFsQXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhDYWxsYmFj
a0FuZE9wdGlvbmFsQXJnQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZUlu
dDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMkNhbGxi
YWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzIiLCBUZXN0T2JqVjhJbnRl
cm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMkNhbGxiYWNrfSwKKyAgICB7Im1ldGhv
ZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5m
b3JjZVJhbmdlSW50NjRDYWxsYmFja30sCisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUlu
dDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRDYWxs
YmFja30sCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAgICAgeyJjb25kaXRpb25hbE1ldGhvZDEi
LCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9uYWxNZXRob2QxQ2FsbGJhY2t9LAogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAppbmRleCBkZTdjMTgyNTcz
YmQxMmE1ZDdmOTg2OTk2MjVmNmMxYzhkNmViN2M1Li44MzNhOTNmMTYxZTM5YjFlNTQ1NWMyMzk2
NzMzYWQxNDg3YzEyYTNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5j
cHAKQEAgLTEwMyw0MCArMTAzLDQ1IEBAIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmls
dGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxsYmFjaykKICAgICByZXR1cm4gTm9kZUZpbHRl
cjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlvbjo6Y3JlYXRlKGNhbGxiYWNrKSk7CiB9CiAK
LWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCitpbnQz
Ml90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBDb252ZXJzaW9uQXR0cmli
dXRlcyBhdHRyaWJ1dGVzLCBib29sJiBvaykKIHsKICAgICBvayA9IHRydWU7Ci0gICAgCisKICAg
ICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhbHJlYWR5IGEgMzItYml0IGludGVnZXIuCiAg
ICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1
ZSgpOwotICAgIAorCiAgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1i
ZXI/CiAgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051
bWJlcigpOwogICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0g
ZmFsc2U7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICAKKworICAgIGlmIChhdHRyaWJ1
dGVzICYgRkVuZm9yY2VSYW5nZSkgeworICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+
VmFsdWUoKTsKKyAgICAgICAgaWYgKGlzbmFuKHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAg
ICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAg
eCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAt
MHg4MDAwMDAwIHx8IHggPiAweDdmZmZmZmZmKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOwor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsKKyAg
ICB9CisKICAgICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZp
bml0eT8KICAgICBkb3VibGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0g
ICAgaWYgKGlzbmFuKG51bWJlclZhbHVlKSB8fCBpc2luZihudW1iZXJWYWx1ZSkpIHsKLSAgICAg
ICAgb2sgPSBmYWxzZTsKKyAgICBpZiAoaXNuYW4obnVtYmVyVmFsdWUpIHx8IGlzaW5mKG51bWJl
clZhbHVlKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIC8vIENhbiB0aGUg
dmFsdWUgYmUgY29udmVydGVkIHRvIGEgMzItYml0IGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4
OjpJbnQzMj4gaW50VmFsdWUgPSB2YWx1ZS0+VG9JbnQzMigpOwotICAgIGlmIChpbnRWYWx1ZS5J
c0VtcHR5KCkpIHsKLSAgICAgICAgb2sgPSBmYWxzZTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAg
fQotICAgIAotICAgIC8vIFJldHVybiB0aGUgcmVzdWx0IG9mIHRoZSBpbnQzMiBjb252ZXJzaW9u
LgotICAgIHJldHVybiBpbnRWYWx1ZS0+VmFsdWUoKTsKKworICAgIHJldHVybiBudW1iZXJPYmpl
Y3QtPkludDMyVmFsdWUoKTsKIH0KLSAgICAKLXVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCisKK3VpbnQzMl90IHRvVUludDMyKHY4OjpIYW5k
bGU8djg6OlZhbHVlPiB2YWx1ZSwgQ29udmVyc2lvbkF0dHJpYnV0ZXMgYXR0cmlidXRlcywgYm9v
bCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwogCkBAIC0xNDQsNiArMTQ5LDcgQEAgdWludDMyX3Qg
dG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKICAgICBpZiAo
dmFsdWUtPklzVWludDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+VWludDMyVmFsdWUoKTsK
IAorICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IHNpZ25lZCBpbnRlZ2Vy
IC0gcG9zc2libHkgcG9zaXRpdmU/CiAgICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpIHsKICAgICAg
ICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+SW50MzJWYWx1ZSgpOwogICAgICAgICBpZiAocmVz
dWx0ID49IDApCkBAIC0xNTcsMjEgKzE2MywxMDYgQEAgdWludDMyX3QgdG9VSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKICAgICAgICAgcmV0dXJuIDA7CiAgICAg
fQogCisgICAgaWYgKGF0dHJpYnV0ZXMgJiBGRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRvdWJs
ZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNp
bmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsK
KyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkp
OworICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IDB4ZmZmZmZmZmYpIHsKKyAgICAgICAgICAgIG9r
ID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIHJl
dHVybiB4OworICAgIH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9y
IHRvIGFuIGluZmluaXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+
VmFsdWUoKTsKLSAgICBpZiAoaXNuYW4obnVtYmVyVmFsdWUpIHx8IGlzaW5mKG51bWJlclZhbHVl
KSkgeworICAgIGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFsdWUpKQor
ICAgICAgICByZXR1cm4gMDsKKworICAgIHJldHVybiBudW1iZXJPYmplY3QtPlVpbnQzMlZhbHVl
KCk7Cit9CisKK2ludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIENv
bnZlcnNpb25BdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1
ZTsKKworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IGludGVnZXIuCisg
ICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpCisgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1
ZSgpOworCisgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/Cisg
ICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigp
OworICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7
CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29u
dmVydGVkIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpV
aW50MzI+IHVpbnRWYWx1ZSA9IHZhbHVlLT5Ub1VpbnQzMigpOwotICAgIGlmICh1aW50VmFsdWUu
SXNFbXB0eSgpKSB7CisgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisKKyAg
ICBpZiAoYXR0cmlidXRlcyAmIEZFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgaWYgKGlzbmFuKHgp
IHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihm
YWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAtKGtKU01heEludGVnZXIgLSAxKSB8fCB4ID4gKGtK
U01heEludGVnZXIgLSAxKSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8v
IE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQu
CisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgs
IGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2VyOworfQorCit1aW50NjRfdCB0b1VJbnQ2NCh2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIENvbnZlcnNpb25BdHRyaWJ1dGVzIGF0dHJpYnV0
ZXMsIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1ZTsKKworICAgIC8vIEZhc3QgY2FzZS4gVGhl
IHZhbHVlIGlzIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuCisgICAgaWYgKHZhbHVlLT5Jc1Vp
bnQzMigpKQorICAgICAgICByZXR1cm4gdmFsdWUtPlVpbnQzMlZhbHVlKCk7CisKKyAgICAvLyBG
YXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCBpbnRlZ2VyLgorICAgIGlmICh2YWx1ZS0+
SXNJbnQzMigpKSB7CisgICAgICAgIGludDMyX3QgcmVzdWx0ID0gdmFsdWUtPkludDMyVmFsdWUo
KTsKKyAgICAgICAgaWYgKHJlc3VsdCA+PSAwKQorICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsK
KyAgICB9CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8K
KyAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVy
KCk7CisgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxz
ZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgcmV0dXJuIHVpbnRWYWx1ZS0+VmFs
dWUoKTsKKyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlmIChh
dHRyaWJ1dGVzICYgRkVuZm9yY2VSYW5nZSkgeworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNp
bmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsK
KyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkp
OworICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IChrSlNNYXhJbnRlZ2VyIC0gMSkpIHsKKyAgICAg
ICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAg
ICAgICByZXR1cm4geDsKKyAgICB9CisKKyAgICAvLyBOYU5zIGFuZCArLy1JbmZpbml0eSBzaG91
bGQgYmUgMCwgb3RoZXJ3aXNlIG1vZHVsbyAyXjY0LgorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBp
bnRlZ2VyOworICAgIGRvdWJsZVRvSW50ZWdlcih4LCBpbnRlZ2VyKTsKKyAgICByZXR1cm4gaW50
ZWdlcjsKIH0KIAogdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGNyZWF0ZVJh
d1RlbXBsYXRlKHY4OjpJc29sYXRlKiBpc29sYXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OEJpbmRpbmcuaAppbmRleCBhNjllOTA5ZTZmYjIyMDJjYjA5YjBhMmMxMjQ0NTJmYTU5YmM0Nzc3
Li43MzY0YjNhNDI3Y2RhNzNkZDVhNWUzMGE2MjI3MDM4ODhmZmI4N2Q0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaApAQCAtNTYsNiArNTYsNyBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAgICAgY2xhc3MgV29ybGRDb250ZXh0SGFuZGxlOwogCiAgICAgY29uc3QgaW50IGtN
YXhSZWN1cnNpb25EZXB0aCA9IDIyOworICAgIGNvbnN0IGxvbmcgbG9uZyBrSlNNYXhJbnRlZ2Vy
ID0gMHgyMDAwMDAwMDAwMDAwMExMOwogCiAgICAgLy8gU2NoZWR1bGUgYSBET00gZXhjZXB0aW9u
IHRvIGJlIHRocm93biwgaWYgdGhlIGV4Y2VwdGlvbiBjb2RlIGlzIGRpZmZlcmVudAogICAgIC8v
IGZyb20gemVyby4KQEAgLTM0MywzNiArMzQ0LDY2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
ICAgIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZh
bHVlPik7CiAKLSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50ZWdlci4gIFRo
ZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0
ZWQgdG8gYW4gaW50ZWdlciBvciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0g
ICAgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvayk7Cisg
ICAgLy8gQ29udmVyc2lvbiBmbGFncywgdXNlZCBpbiB0b0ludFhYL3RvVUludFhYLgorICAgIGVu
dW0gQ29udmVyc2lvbkF0dHJpYnV0ZXMgeworICAgICAgICBGTm9uZSA9IDB4MDAwMCwKKyAgICAg
ICAgRkVuZm9yY2VSYW5nZSA9IDB4MDAwMSwKKyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCBG
Q2xhbXAgPSAweDAwMDIKKyAgICB9OworCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzIt
Yml0IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2
YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRl
ZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtbG9u
ZworICAgIGludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIENvbnZlcnNpb25B
dHRyaWJ1dGVzLCBib29sJiBvayk7CisgICAgaW5saW5lIGludDMyX3QgdG9JbnQzMih2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b0ludDMyKHZhbHVlLCBG
Tm9uZSwgb2spOyB9CiAKICAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50ZWdl
ciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KLSAgICBpbmxpbmUgaW50IHRv
SW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQorICAgIGlubGluZSBpbnQzMl90IHRv
SW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKICAgICAgICAgYm9vbCBv
azsKLSAgICAgICAgcmV0dXJuIHRvSW50MzIodmFsdWUsIG9rKTsKKyAgICAgICAgcmV0dXJuIHRv
SW50MzIodmFsdWUsIEZOb25lLCBvayk7CiAgICAgfQogCi0gICAgLy8gQ29udmVydCBhIHZhbHVl
IHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuICBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0
aGUKLSAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGFuIHVuc2lnbmVkIGludGVn
ZXIgb3IgY29udmVydHMgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5LgotICAgIHVpbnQzMl90IHRv
VUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spOworICAgIC8vIENv
bnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lv
biBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVt
YmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cu
dzMub3JnL1RSL1dlYklETC8jZXMtdW5zaWduZWQtbG9uZworICAgIHVpbnQzMl90IHRvVUludDMy
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgQ29udmVyc2lvbkF0dHJpYnV0ZXMsIGJvb2wmIG9rKTsK
KyAgICBpbmxpbmUgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVl
LCBib29sJiBvaykgeyByZXR1cm4gdG9VSW50MzIodmFsdWUsIEZOb25lLCBvayk7IH0KIAogICAg
IC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyIGFzc3VtaW5n
IHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgogICAgIGlubGluZSB1aW50MzJfdCB0b1VJbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBib29sIG9rOwot
ICAgICAgICByZXR1cm4gdG9VSW50MzIodmFsdWUsIG9rKTsKKyAgICAgICAgcmV0dXJuIHRvVUlu
dDMyKHZhbHVlLCBGTm9uZSwgb2spOwogICAgIH0KIAotICAgIGlubGluZSBmbG9hdCB0b0Zsb2F0
KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlKQorICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBh
IDY0LWJpdCBzaWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAg
Ly8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2Ugdmlv
bGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2Vz
LWxvbmctbG9uZworICAgIGludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIENv
bnZlcnNpb25BdHRyaWJ1dGVzLCBib29sJiBvayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUg
dG8gYSA2NC1iaXQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4K
KyAgICBpbmxpbmUgaW50NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkK
ICAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZh
bHVlKCkpOworICAgICAgICBib29sIG9rOworICAgICAgICByZXR1cm4gdG9JbnQ2NCh2YWx1ZSwg
Rk5vbmUsIG9rKTsKICAgICB9CiAKLSAgICBpbmxpbmUgbG9uZyBsb25nIHRvSW50NjQodjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0
IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZh
bHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVk
IHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy11bnNp
Z25lZC1sb25nLWxvbmcKKyAgICB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4sIENvbnZlcnNpb25BdHRyaWJ1dGVzLCBib29sJiBvayk7CisKKyAgICAvLyBDb252ZXJ0IGEg
dmFsdWUgdG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lv
biBjYW5ub3QgZmFpbC4KKyAgICBpbmxpbmUgdWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGxvbmcg
bG9uZz4odmFsdWUtPkludGVnZXJWYWx1ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAgICAgICAg
cmV0dXJuIHRvVUludDY0KHZhbHVlLCBGTm9uZSwgb2spOworICAgIH0KKworICAgIGlubGluZSBm
bG9hdCB0b0Zsb2F0KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlKQorICAgIHsKKyAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CiAgICAgfQog
CiAgICAgaW5saW5lIGJvb2wgaXNVbmRlZmluZWRPck51bGwodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5n
TWFjcm9zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaApp
bmRleCAzNTJlYmVmYzYxMzgxM2VlNDdhZmViNmRmNmYwMDhmNjEwMjFkNjRhLi5lYThmNTAxYzIx
NTVhMzc3ZTRiOWJjY2YwNWExYTg5YzFiYzg0MWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaApAQCAtMzgsNiArMzgsMTcgQEAgZW51bSBQYXJhbWV0
ZXJEZWZhdWx0UG9saWN5IHsKICAgICBEZWZhdWx0SXNOdWxsU3RyaW5nCiB9OwogCisjZGVmaW5l
IFRZUEVDSEVDS19WT0lEKHR5cGUsIHZhciwgdmFsdWUsIGlzb2xhdGUpIFwKKyAgICB0eXBlIHZh
cjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGJvb2wgb2sgPSB0
cnVlOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgdmFyID0gKHZhbHVlKTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkg
eyAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB0aHJvd1R5cGVFcnJvcigwLCBp
c29sYXRlKTsgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybjsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgfQorCiAjZGVmaW5lIFY4VFJZQ0FUQ0godHlwZSwgdmFyLCB2YWx1
ZSkgXAogICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIHsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtNDcsNiArNTgsMjAgQEAg
ZW51bSBQYXJhbWV0ZXJEZWZhdWx0UG9saWN5IHsKICAgICAgICAgICAgIHJldHVybiBibG9jay5S
ZVRocm93KCk7ICAgICAgIFwKICAgICB9CiAKKyNkZWZpbmUgVjhUUllDQVRDSF9XSVRIX1RZUEVD
SEVDSyh0eXBlLCB2YXIsIHZhbHVlLCBpc29sYXRlKSBcCisgICAgdHlwZSB2YXI7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
Ym9vbCBvayA9IHRydWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgdjg6OlRyeUNhdGNoIGJsb2NrOyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICAgIHZhciA9ICh2YWx1ZSk7ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBpZiAoYmxvY2suSGFzQ2F1Z2h0KCkpICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgIHJldHVybiBibG9jay5S
ZVRocm93KCk7ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgfSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGlmIChVTkxJ
S0VMWSghb2spKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAg
ICAgcmV0dXJuIHRocm93VHlwZUVycm9yKDAsIGlzb2xhdGUpOyAgICAgICAgICAgICAgIFwKKyAg
ICB9CisKICNkZWZpbmUgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdSRVNPVVJDRSh0eXBlLCB2YXIs
IHZhbHVlKSBcCiAgICAgdHlwZSB2YXIodmFsdWUpOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAogICAgIGlmICghdmFyLnByZXBhcmUoKSkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVD
b252ZXJzaW9ucy5oCmluZGV4IDI0YjMzZGQxODJlZWRjODMxZjZhNWE1MTkxOWM4NGQ0M2VjMDFk
ZDcuLjhkZTEwMmYyYTI0NzdkZTEwMDk1ODM2Mzg4NjcyZGE1ODEwYzg4ZjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaApAQCAtMzYsMjUgKzM2LDMzIEBAIGNsYXNz
IFR5cGVDb252ZXJzaW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFR5cGVDb252ZXJzaW9ucz4gewog
cHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFR5cGVDb252ZXJzaW9ucz4gY3JlYXRlKCkg
eyByZXR1cm4gYWRvcHRSZWYobmV3IFR5cGVDb252ZXJzaW9ucygpKTsgfQogCi0gICAgbG9uZyB0
ZXN0TG9uZygpIHsgcmV0dXJuIG1fdGVzdExvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RMb25nKGxv
bmcgdmFsdWUpIHsgbV90ZXN0TG9uZyA9IHZhbHVlOyB9Ci0gICAgdW5zaWduZWQgbG9uZyB0ZXN0
VW5zaWduZWRMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5zaWduZWRMb25nOyB9Ci0gICAgdm9pZCBz
ZXRUZXN0VW5zaWduZWRMb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUpIHsgbV90ZXN0VW5zaWduZWRM
b25nID0gdmFsdWU7IH0KKyAgICBsb25nIHRlc3RMb25nKCkgeyByZXR1cm4gbV9sb25nOyB9Cisg
ICAgdm9pZCBzZXRUZXN0TG9uZyhsb25nIHZhbHVlKSB7IG1fbG9uZyA9IHZhbHVlOyB9CisgICAg
bG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZygpIHsgcmV0dXJuIG1fbG9uZzsgfQorICAgIHZvaWQg
c2V0VGVzdEVuZm9yY2VSYW5nZUxvbmcobG9uZyB2YWx1ZSkgeyBtX2xvbmcgPSB2YWx1ZTsgfQor
ICAgIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRM
b25nOyB9CisgICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUp
IHsgbV91bnNpZ25lZExvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgdGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25nOyB9CisgICAgdm9p
ZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUpIHsg
bV91bnNpZ25lZExvbmcgPSB2YWx1ZTsgfQogCi0gICAgbG9uZyBsb25nIHRlc3RMb25nTG9uZygp
IHsgcmV0dXJuIG1fdGVzdExvbmdMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0TG9uZ0xvbmcobG9u
ZyBsb25nIHZhbHVlKSB7IG1fdGVzdExvbmdMb25nID0gdmFsdWU7IH0KLSAgICB1bnNpZ25lZCBs
b25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBtX3Rlc3RVbnNpZ25lZExv
bmdMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nTG9uZyh1bnNpZ25lZCBsb25n
IGxvbmcgdmFsdWUpIHsgbV90ZXN0VW5zaWduZWRMb25nTG9uZyA9IHZhbHVlOyB9CisgICAgbG9u
ZyBsb25nIHRlc3RMb25nTG9uZygpIHsgcmV0dXJuIG1fbG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNl
dFRlc3RMb25nTG9uZyhsb25nIGxvbmcgdmFsdWUpIHsgbV9sb25nTG9uZyA9IHZhbHVlOyB9Cisg
ICAgbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZygpIHsgcmV0dXJuIG1fbG9uZ0xv
bmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyhsb25nIGxvbmcgdmFs
dWUpIHsgbV9sb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RV
bnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmdMb25nOyB9CisgICAgdm9p
ZCBzZXRUZXN0VW5zaWduZWRMb25nTG9uZyh1bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpIHsgbV91
bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZ0xvbmc7
IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nKHVuc2lnbmVk
IGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQogCiBwcml2
YXRlOgogICAgIFR5cGVDb252ZXJzaW9ucygpCiAgICAgewogICAgIH0KIAotICAgIGxvbmcgbV90
ZXN0TG9uZzsKLSAgICB1bnNpZ25lZCBsb25nIG1fdGVzdFVuc2lnbmVkTG9uZzsKLSAgICBsb25n
IGxvbmcgbV90ZXN0TG9uZ0xvbmc7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIG1fdGVzdFVuc2ln
bmVkTG9uZ0xvbmc7CisgICAgbG9uZyBtX2xvbmc7CisgICAgdW5zaWduZWQgbG9uZyBtX3Vuc2ln
bmVkTG9uZzsKKyAgICBsb25nIGxvbmcgbV9sb25nTG9uZzsKKyAgICB1bnNpZ25lZCBsb25nIGxv
bmcgbV91bnNpZ25lZExvbmdMb25nOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsCmluZGV4IDM2N2QxZjdlYzQ4
NDJlNDFmNmFhYTMxMGFiMjJhOWJjNTAxY2Y4NGYuLmIyN2IxNThkNzYzM2IzMzQ1NjE2ZWU1YmM3
ZmUzMmM2Y2U1NWEyZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNv
bnZlcnNpb25zLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9u
cy5pZGwKQEAgLTI4LDggKzI4LDEyIEBACiAgICAgSW1wbGVtZW50YXRpb25MYWNrc1ZUYWJsZQog
XSBpbnRlcmZhY2UgVHlwZUNvbnZlcnNpb25zIHsKICAgICBhdHRyaWJ1dGUgbG9uZyB0ZXN0TG9u
ZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9u
ZzsKICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyB0ZXN0VW5zaWduZWRMb25nOworICAgIGF0
dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmc7CiAKICAgICBhdHRyaWJ1dGUgbG9uZyBsb25nIHRlc3RMb25nTG9uZzsKKyAgICBh
dHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZzsKICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25n
OworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmc7CiB9OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGIyOWQ4MTI5ZjNjN2I1YWYy
NmM2ZGRmMzIzNWViYTQ1YzVjYTdlYTMuLmY3NmFlOGY4Y2YzNzgyZWIxZWRhN2JlNTExNmUwZDI0
MzIzNDliMDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMy0wMi0xMyAgSm9zaHVhIEJlbGwg
IDxqc2JlbGxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtWOF0gQmluZGluZzogSW1wbGVtZW50
IEVuZm9yY2VSYW5nZSBJREwgQXR0cmlidXRlIGZvciBsb25nIGxvbmcgY29udmVyc2lvbnMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk2Nzk4CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2RvbS9u
b24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBmYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFy
YW1ldGVycy5qczogVXBkYXRlIGV4cGVjdGF0aW9uCisgICAgICAgIGZvciBIVE1MT3B0aW9uc0Nv
bGxlY3Rpb24uYWRkKGVsZW1lbnQsIGJlZm9yZSkgdG8gbWF0Y2ggc3BlYyAtIHxiZWZvcmV8IHNo
b3VsZG4ndCB0aHJvdy4KKyAgICAgICAgKiBmYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sOiBB
ZGRlZCBFbmZvcmNlUmFuZ2UgY2FzZXMuCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvaW50
dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3RvcmFnZS9p
bmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanM6IE1vcmUgYm91
bmRzIGNoZWNrcy4KKwogMjAxMy0wMi0xMiAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29t
PgogCiAgICAgICAgIEVyYWRpY2F0ZSBmYXN0L2pzL2RmZy1wb2lzb24tZnV6ei5odG1sCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1lcmlj
LXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDk3YmYxZTA2NzEy
MzdlNjA2MzNjNjZmMGMxMzg4YzE2NzYxNDIyOGYuLjAxODE5ZmNkMTYyNTNhNDA4ZDE4ODllZmQ0
Y2Q4ODQwMGRkNjhhMzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1l
cmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0
ZWQudHh0CkBAIC0yOCw3ICsyOCw3IEBAIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQu
Ym9keS5zY3JvbGxUb3AgPSB4JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ2RvY3VtZW50LmltYWdlcy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iiku
c2V0U2VsZWN0aW9uUmFuZ2UoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9u
TnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKS5zZXRTZWxlY3Rp
b25SYW5nZSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwotUEFTUyBub25OdW1lcmljUG9s
aWN5KCdjcmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgib3B0aW9uIiksIHgpJykgaXMgJ251bWJlciBvciBudWxsIGFsbG93ZWQgKG9yIG9taXR0
ZWQsIGJ1dCBub3QgaW5maW5pdGUpJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1M
T3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIiks
IHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0
ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2Vk
JwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLnJlbW92
ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVh
dGVIVE1MU2VsZWN0RWxlbWVudCgpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12
YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0
LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKaW5kZXggMmU3
MDA2YzVhOWYyZDQ5MjIxZWJmMzQyOTk0MDNhMThmMGJmOWE2ZC4uNThiZWQxNjgwM2ZlNzhhMTU3
ODNjNzIwYWZiNDU0M2VmOGUzZjg1NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20v
c2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1u
dW1lcmljLXBhcmFtZXRlcnMuanMKQEAgLTY0LDcgKzY0LDcgQEAgZnVuY3Rpb24gbm9uTnVtZXJp
Y1BvbGljeSh0ZW1wbGF0ZSkKICAgICB0cnkgewogICAgICAgICBldmFsKHRlbXBsYXRlKTsKICAg
ICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIE5hTkFsbG93ZWQgPSAwOworICAgICAgICBuYW5BbGxv
d2VkID0gMDsKICAgICB9CiAKICAgICB2YXIgb21pdEFsbG93ZWQgPSAtMTsgLy8gbWVhbnMgIm5v
dCBhcHBsaWNhYmxlIgpAQCAtMjQ0LDcgKzI0NCw3IEBAIHNob3VsZEJlKCJub25OdW1lcmljUG9s
aWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIikuc2V0U2VsZWN0aW9uUmFuZ2Uo
CiAKIC8vIEhUTUxPcHRpb25zQ29sbGVjdGlvbgogCi1zaG91bGRCZSgibm9uTnVtZXJpY1BvbGlj
eSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoXCJvcHRpb25cIiksIHgpJykiLCAiJ251bWJlciBvciBudWxsIGFsbG93ZWQgKG9yIG9taXR0
ZWQsIGJ1dCBub3QgaW5maW5pdGUpJyIpOworc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwi
b3B0aW9uXCIpLCB4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogc2hvdWxkQmUoIm5vbk51
bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScpIiwg
IidhbnkgdHlwZSBhbGxvd2VkJyIpOwogCiAvLyBIVE1MU2VsZWN0RWxlbWVudApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQKaW5k
ZXggNWIyYThjZjE0ZDRlNmRlZTBhYjc0OWZhOGZjZjgxMDM5YTc4ZDBkOC4uY2NiYzA1Mjc4ZDJi
ODk3YWExNDRmN2VjY2I4MjFmNTkyMDMxYzY3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CkBAIC02OSw2ICs2OSw4IEBA
IGNvbnZlcnRlci50ZXN0TG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEK
IGNvbnZlcnRlci50ZXN0TG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNv
bnZlcnRlci50ZXN0TG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBj
b252ZXJ0ZXIudGVzdExvbmcgPSBudWxsCkBAIC03Nyw2ICs3OSw2OSBAQCBjb252ZXJ0ZXIudGVz
dExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0g
dGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZycgaW4g
Y29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAw
eDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweEZG
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4
MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMg
MHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGRkYKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAweDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRkZGRkYgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAtMHg4MDAwMDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5N
SU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51bWJlci5NQVhfVkFMVUUgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxLjk5CitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
aXMgLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gSW5maW5pdHkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nID0gLUluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE5hTiB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJ2Fi
YycgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdW5kZWZpbmVk
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9y
O319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCisKIFBBU1MgJ3Rlc3RV
bnNpZ25lZExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSAwCkBAIC0xNDEsNiArMjA2LDggQEAgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
aXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnYWJjJwog
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9IG51bGwKQEAgLTE0OSw2ICsyMTYsNjQgQEAgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAog
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhy
b3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KIAorUEFTUyAndGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVl
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
aXMgMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0w
eDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODEgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGRkYKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gLTB4ODAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGRkZG
RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZG
RkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwMDAw
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwMDAw
MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZGRkZGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZG
RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAw
MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVy
cm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlO
X1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1B
WF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIuLTEuOTkgPSB1bmRlZmlu
ZWQgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuIC0uCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gSW5maW5pdHkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
JycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IG51
bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHVuZGVmaW5lZCB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVy
cm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCisKIFBBU1MgJ3Rl
c3RMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
PSAwCkBAIC0xOTMsMTYgKzMxOCwyOCBAQCBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVy
Lk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1O
dW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVy
dGVyLnRlc3RMb25nTG9uZyA9IDEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAx
CiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RMb25n
TG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1JbmZpbml0
eQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252
ZXJ0ZXIudGVzdExvbmdMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJ2FiYycKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gbnVsbApA
QCAtMjExLDYgKzM0OCw3MiBAQCBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdW5kZWZpbmVkCiBQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0
aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZlcnRl
ciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAt
MHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRkZG
RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLU51
bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIuTUFY
X1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEuOTkKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBU
eXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCisKIFBBU1MgJ3Rlc3RVbnNpZ25lZExvbmdMb25n
JyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgPSAwCkBAIC0yNTUsMTYgKzQ1OCwyOCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9W
QUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
ID0gLU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
IGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDEuOTkKIFBBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IC0xLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZG
RkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IEluZmluaXR5
CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE5hTgorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
IGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICdhYmMn
CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCkBAIC0yNzMsNiArNDg4LDY0IEBAIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7
dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJy
b3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0
ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IC0xIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IC0weDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IC0weDgxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gLTB4ODAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3
RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
aXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9y
LgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweERD
QkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVF
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9W
QUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1i
ZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUFY
X1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0xLjk5IHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1J
bmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOYU4gdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAn
JworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVy
cm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB7
dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgorCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAK
IFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5
cGUtbWFwcGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5n
Lmh0bWwKaW5kZXggMjE5MTNiZTBmZTgzYzAyMTc5NDA5ZDdjNjViZmVjYWNmNDM3MDAxMi4uMzQw
Mjg1Yzk2MTM0NTc4NjM3ZjhmNjMzNTI3NjIxOTVhMDFlYzBiOSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKQEAgLTM2LDExICszNiwyMyBAQCBmdW5j
dGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyhhdHRyaWJ1dGUpCiAgICAgY29udmVydChhdHRy
aWJ1dGUsICJmYWxzZSIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJ0cnVlIiwgIjEi
KTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicnIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJp
YnV0ZSwgIicxJyIsICIxIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUsICInYWJjJyIsICIwIik7
CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJudWxsIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJp
YnV0ZSwgInVuZGVmaW5lZCIsICIwIik7CiB9CiAKK2Z1bmN0aW9uIHRlc3ROb25OdW1lcmljVG9O
dW1lcmljRW5mb3JjZVJhbmdlKGF0dHJpYnV0ZSkKK3sKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwg
ImZhbHNlIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgInRydWUiLCAiMSIpOworICAg
IGNvbnZlcnQoYXR0cmlidXRlLCAiJyciLCAiMCIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAi
JzEnIiwgIjEiKTsKKyAgICBjb252ZXJ0VGhyb3dzKGF0dHJpYnV0ZSwgIidhYmMnIik7CisgICAg
Y29udmVydChhdHRyaWJ1dGUsICJudWxsIiwgIjAiKTsKKyAgICBjb252ZXJ0VGhyb3dzKGF0dHJp
YnV0ZSwgInVuZGVmaW5lZCIpOworfQorCiB0eXBlID0gInRlc3RMb25nIjsKIHZlcmlmeUF0dHJp
YnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTc1LDYgKzg3LDQwIEBAIHRlc3RO
b25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6
ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIiKTsKIAordHlwZSA9ICJ0
ZXN0RW5mb3JjZVJhbmdlTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5
cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29u
dmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBl
LCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgx
Iik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOwor
Y29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwIik7Citjb252
ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweEZG
RkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0
eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMy
MTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQo
dHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51
bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAi
KTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0eXBlLCAiLTEuOTkiLCAi
LTEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51
bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7
dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0
eXBlID0gInRlc3RVbnNpZ25lZExvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVy
dCh0eXBlLCAiMCIpOwpAQCAtMTA5LDYgKzE1NSw0MCBAQCB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJp
Yyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29udmVy
dCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAi
MHhGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4
ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIt
MHg4MDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUs
ICIweDdGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5
cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMCIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
IjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFM
VUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRo
cm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIu
TUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydFRo
cm93cygiLTEuOTkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwor
dGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dz
KHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWco
IiIpOworCiB0eXBlID0gInRlc3RMb25nTG9uZyI7CiB2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7CiBj
b252ZXJ0KHR5cGUsICIwIik7CkBAIC0xMzIsMTkgKzIxMiw1MSBAQCBjb252ZXJ0KHR5cGUsICIt
MHg4MDAwMDAwMSIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29udmVy
dCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVtYmVy
Lk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2Vl
biBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsK
LS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBl
LCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9W
QUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlwZSwg
Ii0xLjk5IiwgIi0xIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBW
OCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQo
dHlwZSwgIi1JbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7Citj
b252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItSW5maW5pdHki
LCAiMCIpOworY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKIHRlc3ROb25OdW1lcmljVG9OdW1l
cmljKHR5cGUpOwogY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJv
dyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIiKTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOwor
Y29udmVydCh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwg
IjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsK
K2NvbnZlcnQodHlwZSwgIi0weDgwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MSIpOworY29udmVy
dCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydCh0eXBlLCAi
LTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVydCh0eXBlLCAi
MHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZGRiIpOworY29udmVydCh0eXBl
LCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIu
TUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAi
KTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEi
KTsKK2NvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJ
bmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUluZmluaXR5Iik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICJOYU4iLCAiMCIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFu
Z2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93
IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmdM
b25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTE2
OCwxOCArMjgwLDUwIEBAIGNvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIiwgIjB4RkZGRkZGRkY3
RkZGRkZGRiIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29udmVydCh0
eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1J
Tl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBW
OCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKLS8v
Y29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAi
TnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxV
RSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlwZSwgIi0x
Ljk5IiwgIjB4RkZGRkZGRkZGRkZGRkZGRiIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1
bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIp
OwotLy9jb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICJO
YU4iLCAiMCIpOworY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBl
LCAiLUluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9u
TnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOwor
Y29udmVydCh0eXBlLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEiKTsKK2NvbnZlcnQo
dHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAi
KTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwIik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGIik7
Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29u
dmVydFRocm93cyh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAw
MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAw
MDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZGRiIpOworY29udmVydFRocm93cyh0eXBl
LCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAxIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citjb252ZXJ0KHR5cGUsICJO
dW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVF
IiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICIxLjk5
IiwgIjEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xLjk5Iik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUluZmluaXR5Iik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJh
bmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJv
dyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFt
ZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDFlOGJkNTdiZDMxMWI4MmNlOWYyNDhiZGQ3NDY0NGJj
MmYwMmQ2ZDUuLjE0NTU3ZDQ1MzY2ZGRmMzQxYjZjMDEyMDcwZTI4OTEyM2ExMTg4N2QgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFt
ZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2lu
dHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBAIC0xOCw2ICsxOCwxNSBAQCBQ
QVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9y
CiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgLTUpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgogUEFTUyBpbmRleGVkREIub3Blbihk
Ym5hbWUsIC01KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJy
b3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZpbml0eSkKK1BBU1Mg
RXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgSW5maW5p
dHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhwZWN0aW5nIFR5cGVFcnJvciBleGNl
cHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0eSkKK1BBU1MgRXhjZXB0
aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmluaXR5KSB0
aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9u
IGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhy
b3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIE5hTikgdGhyZXcgVHlwZUVycm9yOiBU
eXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5v
cGVuKGRibmFtZSwgLTEpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgogUEFTUyBpbmRleGVk
REIub3BlbihkYm5hbWUsIC0xKSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJh
ZC1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2Vz
L2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKaW5kZXggYWYzNWYyZDRiYzgyYjBiY2RiNWIw
MTQ4YzYzMGYyMTUzOTYzYmZjMS4uZDMzOWMzMmMxYzZiMTE0OTdlMWNjODlkMGMwNzM1YWEzOTk5
NzQ3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2Vz
L2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKQEAgLTIwLDYg
KzIwLDkgQEAgZnVuY3Rpb24gZGVsZXRlU3VjY2VzcyhldnQpIHsKICAgICBldmFsQW5kRXhwZWN0
RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgJ3N0cmluZ3ZlcnNpb24nKSIs
ICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgMCkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2Vw
dGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC01KSIsICJUeXBlRXJyb3IiKTsKKyAg
ICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgSW5m
aW5pdHkpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygi
aW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpIiwgIlR5cGVFcnJvciIpOworICAgIGV2
YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pIiwg
IlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERC
Lm9wZW4oZGJuYW1lLCAtMSkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2Vw
dGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDB4MjAwMDAwMDAwMDAwMDApIiwgIlR5
cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCBudWxsKSIsICJUeXBlRXJyb3IiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188229</attachid>
            <date>2013-02-13 17:11:32 -0800</date>
            <delta_ts>2013-02-25 11:23:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130213170801.patch</filename>
            <type>text/plain</type>
            <size>73182</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNzIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmYyZGM3MTc5MDA4OTlh
OTQyZjY0ZmE0OWI5OGM2NzE3MjY4M2UyOC4uMzU4NjM0MWFlNDUwNzgyMGYxMWM3YTczMWVhZWNi
NDY0ZWQ1MzhkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAyLTEzICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0
czogZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFt
ZXRlcnMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0
bWw6IEFkZGVkIEVuZm9yY2VSYW5nZSBjYXNlcy4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJDdXJzb3I6OmFkdmFuY2Up
OiBSZW1vdmUgY3VzdG9tIGJvdW5kcyBjaGVja2luZy4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4
ZWRkYi9JREJDdXJzb3IuaDogVXBkYXRlIHR5cGVzLgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5pZGw6IFVzZSBbRW5mb3JjZVJhbmdlXQorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRmFjdG9yeTo6
b3Blbik6IFJlbW92ZSBjdXN0b20gYm91bmRzIGNoZWNraW5nLgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuaDogVXBkYXRlIHR5cGVzLgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsOiBVc2UgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEpTVmFsdWVUb05h
dGl2ZSk6IEFkZCBGSVhNRSB0byBpbXBsZW1lbnQgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAgKEdlbmVyYXRlTm9y
bWFsQXR0clNldHRlcik6IElmIGNvbnZlcnNpb24gbWF5IHRocm93LCBnZW5lcmF0ZSBjaGVja2lu
ZyBjb2RlLgorICAgICAgICAoR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2spOiBEaXR0by4KKyAgICAg
ICAgKENvbnZlcnNpb25UaHJvd3NUeXBlRXJyb3IpOiBMZXRzIGNhbGxlcnMgb2YgSlNWYWx1ZVRv
TmF0aXZlIGRldGVybWluZSBpZgorICAgICAgICBjaGVja2luZyBjb2RlIGlzIG5lZWRlZC4KKyAg
ICAgICAgKEpTVmFsdWVUb05hdGl2ZSk6IE9wdGlvbmFsbHkgY2FsbCB0eXBlIGNoZWNraW5nIHZh
cmlhdGlvbnMgb2YgY29udmVyc2lvbgorICAgICAgICBtZXRob2RzLgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQ6IEFkZCBFbmZvcmNlUmFuZ2UuCisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsOiBBZGQgRW5mb3JjZVJhbmdlIHRl
c3QgbWV0aG9kcy4KKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2Jq
LmNwcDogVXBkYXRlZCBleHBlY3RhdGlvbnMuCisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5k
aW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50MzIpOiBBY2NlcHQgZmxhZ3MsIHJldHVy
biBzdWNjZXNzL2ZhaWwgc3RhdHVzLgorICAgICAgICAoV2ViQ29yZTo6dG9VSW50MzIpOiBEaXR0
by4KKyAgICAgICAgKFdlYkNvcmU6OnRvSW50NjQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OnRvVUludDY0KTogRGl0dG8uCisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5kaW5nLmg6IFVw
ZGF0ZSBzaWduYXR1cmVzLCBkZWZpbmUgZmxhZyBlbnVtLCBoZWxwZXIgZnVuY3Rpb25zLgorICAg
ICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oOiBNYWNyb3MgZm9yIGdlbmVyYXRp
bmcgdHlwZSBjaGVja2luZyB3cmFwcGVycy4KKyAgICAgICAgKiB0ZXN0aW5nL1R5cGVDb252ZXJz
aW9ucy5oOiBBZGQgRW5mb3JjZVJhbmdlIHRlc3QgbWV0aG9kcy4KKyAgICAgICAgKiB0ZXN0aW5n
L1R5cGVDb252ZXJzaW9ucy5pZGw6IERpdHRvLgorCiAyMDEzLTAyLTEyICBDaHJpcyBGbGVpemFj
aCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgIEFYOiBjcmFzaCB3aGVuIGFjY2Vz
c2luZyBBY2Nlc3NpYmlsaXR5U2Nyb2xsYmFyIGFmdGVyIHBhZ2UgaGFzIGJlZW4gdW5sb2FkZWQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCmluZGV4
IDQ2OGVkYmViYTkxMTE2OWEwOTNhMmU3ZDIzNDkwODhmY2MyODM2YTUuLjYyNzY2MDM2NzNhYTA4
MzA2MjA5NjY4YTVmZTgzMjkzNGZhZmIwMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIFBhc3NSZWZQdHI8
SURCUmVxdWVzdD4gSURCQ3Vyc29yOjp1cGRhdGUoU2NyaXB0U3RhdGUqIHN0YXRlLCBTY3JpcHRW
YWx1ZSYgdmFsdWUsCiAgICAgcmV0dXJuIG9iamVjdFN0b3JlLT5wdXQoSURCRGF0YWJhc2VCYWNr
ZW5kSW50ZXJmYWNlOjpDdXJzb3JVcGRhdGUsIElEQkFueTo6Y3JlYXRlKHRoaXMpLCBzdGF0ZSwg
dmFsdWUsIG1fY3VycmVudFByaW1hcnlLZXksIGVjKTsKIH0KIAotdm9pZCBJREJDdXJzb3I6OmFk
dmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgSURCQ3Vyc29y
OjphZHZhbmNlKHVuc2lnbmVkIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAg
IGVjID0gMDsKICAgICBJREJfVFJBQ0UoIklEQkN1cnNvcjo6YWR2YW5jZSIpOwpAQCAtMTY2LDgg
KzE2Niw3IEBAIHZvaWQgSURCQ3Vyc29yOjphZHZhbmNlKGxvbmcgbG9uZyBjb3VudCwgRXhjZXB0
aW9uQ29kZSYgZWMpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogVGhp
cyBzaG91bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4
IGxhbmRzLgotICAgIGlmIChjb3VudCA8IDEgfHwgY291bnQgPiBVSU5UX01BWCkgeworICAgIGlm
ICghY291bnQpIHsKICAgICAgICAgZWMgPSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybjsKICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCmluZGV4
IDFjODMxNjQwMjZkYTQ0YjNmMDhlZjkzZmY0MmUzYWI0NWZmZjU5MmMuLmE3MmFiYjIzYmFiODM1
MTg3ZDBiMjg3NzM1MGJmNTU4MGQzNzQwNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkN1cnNvci5oCkBAIC03NSw4ICs3NSw3IEBAIHB1YmxpYzoKICAgICBJREJB
bnkqIHNvdXJjZSgpIGNvbnN0OwogCiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiB1cGRhdGUo
U2NyaXB0U3RhdGUqLCBTY3JpcHRWYWx1ZSYsIEV4Y2VwdGlvbkNvZGUmKTsKLSAgICAvLyBGSVhN
RTogTWFrZSB0aGlzIHVuc2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMu
Ci0gICAgdm9pZCBhZHZhbmNlKGxvbmcgbG9uZywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQg
YWR2YW5jZSh1bnNpZ25lZCBsb25nLCBFeGNlcHRpb25Db2RlJik7CiAgICAgLy8gRklYTUU6IFRy
eSB0byBtb2RpZnkgdGhlIGNvZGUgZ2VuZXJhdG9yIHNvIHRoaXMgb3ZlcmxvYWQgaXMgdW5uZWVk
ZWQuCiAgICAgdm9pZCBjb250aW51ZUZ1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBF
eGNlcHRpb25Db2RlJiBlYykgeyBjb250aW51ZUZ1bmN0aW9uKHN0YXRpY19jYXN0PElEQktleSo+
KDApLCBlYyk7IH0KICAgICB2b2lkIGNvbnRpbnVlRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIGNvbnN0IFNjcmlwdFZhbHVlJiBrZXksIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCmluZGV4IDQ1NzBjMWVj
Yzg3ZDA4YjkwMTAwM2EzZGM4ZjI3ODYxZjExODhlYTEuLjRiNjI2NWI0MjhmMjZlOTFmYzA3YmI4
YjVjMjIxNWQ3ZGM0MjM0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmlkbApAQCAtMzUsOCArMzUsNyBAQAogCiAgICAgW0NhbGxXaXRoPVNjcmlw
dFN0YXRlXSBJREJSZXF1ZXN0IHVwZGF0ZShpbiBhbnkgdmFsdWUpCiAgICAgICAgIHJhaXNlcyAo
RE9NRXhjZXB0aW9uKTsKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFuZ2VdIHVu
c2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgdm9pZCBhZHZh
bmNlKGluIGxvbmcgbG9uZyBjb3VudCkKKyAgICB2b2lkIGFkdmFuY2UoaW4gW0VuZm9yY2VSYW5n
ZV0gdW5zaWduZWQgbG9uZyBjb3VudCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwog
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBsZW1lbnRlZEFzPWNvbnRp
bnVlRnVuY3Rpb25dIHZvaWQgY29udGludWUoaW4gW09wdGlvbmFsXSBhbnkga2V5KQogICAgICAg
ICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkZhY3RvcnkuY3BwCmluZGV4IGQwMTIwZjYwYTg5YWRmZmI3ZDE2NWM5YWFiNzNm
OWY3NmYzMTEwYjAuLjFkNWYwZmJiMWFiZjFlNWFkZGQ3Mzg1Mzc5M2Y5ZDBkYzE4MDJmNzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCkBA
IC0xMTEsMTEgKzExMSw5IEBAIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gSURCRmFjdG9yeTo6Z2V0
RGF0YWJhc2VOYW1lcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250CiAgICAgcmV0dXJuIHJl
cXVlc3Q7CiB9CiAKLVBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3Bl
bihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIGlu
dDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCitQYXNzUmVmUHRyPElEQk9wZW5EQlJl
cXVlc3Q+IElEQkZhY3Rvcnk6Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
Y29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9u
Q29kZSYgZWMpCiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG9ubHkgbmVlZCB0byBjaGVj
ayBmb3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBjb25zdCBpbnQ2NF90
IG1heEVDTUFTY3JpcHRJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAwMExMIC0gMTsKLSAgICBpZiAo
dmVyc2lvbiA8IDEgfHwgdmVyc2lvbiA+IG1heEVDTUFTY3JpcHRJbnRlZ2VyKSB7CisgICAgaWYg
KCF2ZXJzaW9uKSB7CiAgICAgICAgIGVjID0gVHlwZUVycm9yOwogICAgICAgICByZXR1cm4gMDsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgK
aW5kZXggY2IxYjdiMGIzNzZiN2FhNmQ4NDljNjg0OGIzMGUzZTFjZTYwMmVmOC4uOTgxZGU4YzMy
OGY4YTJmMWVkOWU3NzhiY2JkOTBkMjZmZGJhMWQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaApAQCAtNTgsNyArNTgsNyBAQCBwdWJsaWM6CiAg
ICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJl
cXVlc3Q+IG9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwg
RXhjZXB0aW9uQ29kZSYpOwotICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZlcnNp
b24sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9w
ZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgdW5zaWduZWQg
bG9uZyBsb25nIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPElEQk9w
ZW5EQlJlcXVlc3Q+IGRlbGV0ZURhdGFiYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25z
dCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHNob3J0IGNtcChTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUmIGZpcnN0LCBjb25zdCBTY3JpcHRW
YWx1ZSYgc2Vjb25kLCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCmluZGV4IGE1MTYwNWIyYjRlMzEyOTdiYjU1ZGEz
YjUxN2Q1ZGQxMmMzZDIyYWMuLmVmNTFiYmY4Mzg3Y2E4YmQwZTZhZWJjNTEwNjNiOGQ1ZTY4ZDRm
NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rvcnku
aWRsCkBAIC0zMSw4ICszMSw3IEBACiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQsIEltcGxlbWVudGVkQXM9Z2V0RGF0YWJhc2VOYW1lc10gSURCUmVxdWVzdCB3ZWJraXRHZXRE
YXRhYmFzZU5hbWVzKCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogCi0gICAgLy8g
RklYTUU6IE1ha2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgb25jZSB3
ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRdIElEQk9wZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW09wdGlv
bmFsXSBsb25nIGxvbmcgdmVyc2lvbikKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dF0gSURCT3BlbkRCUmVxdWVzdCBvcGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbRW5mb3Jj
ZVJhbmdlLCBPcHRpb25hbF0gdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pCiAgICAgICAgIHJh
aXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4
dF0gSURCT3BlbkRCUmVxdWVzdCBkZWxldGVEYXRhYmFzZShpbiBET01TdHJpbmcgbmFtZSkKICAg
ICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBhOTRjODhjNjhhNDlhNmQzMzUx
ODg1ZDNmNjY4MWRhZDE3N2E5OTY1Li42ZWVmMGFhZDAzMDNjNjA5OWU5OGQyOGRmZjc0OTY2MjE5
ZjExZDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQpAQCAtMzE1NCw2ICszMTU0LDcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQog
ICAgIHJldHVybiAiJHZhbHVlLnRvQm9vbGVhbihleGVjKSIgaWYgJHR5cGUgZXEgImJvb2xlYW4i
OwogICAgIHJldHVybiAiJHZhbHVlLnRvTnVtYmVyKGV4ZWMpIiBpZiAkdHlwZSBlcSAiZG91Ymxl
IjsKICAgICByZXR1cm4gIiR2YWx1ZS50b0Zsb2F0KGV4ZWMpIiBpZiAkdHlwZSBlcSAiZmxvYXQi
OworICAgICMgRklYTUU6IEFkZCBbRW5mb3JjZVJhbmdlXSBzdXBwb3J0CiAgICAgcmV0dXJuICIk
dmFsdWUudG9JbnQzMihleGVjKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9y
dCI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9VSW50MzIoZXhlYykiIGlmICR0eXBlIGVxICJ1bnNp
Z25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwogICAgIHJldHVybiAic3Rh
dGljX2Nhc3Q8JHR5cGU+KCR2YWx1ZS50b0ludGVnZXIoZXhlYykpIiBpZiAkdHlwZSBlcSAibG9u
ZyBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggODZmOGVh
YmZmMWFmMWExYTRjNmY1Njg2YmMyOGY1ZTdhNmY1Mjc0Ni4uMzg5ODFmM2E3N2NmZTc5ODYyNjhm
YzE4ZDdjYzJhNDIxY2ExNDUxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KQEAgLTEyNDAsMTQgKzEyNDAsMTkgQEAgRU5ECiAg
ICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgICAgICByZXR1cm47XG4iKTsK
ICAgICAgICAgfQogICAgIH0gZWxzZSB7Ci0gICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05h
dGl2ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIp
OwogICAgICAgICBteSAkYXJyYXlUeXBlID0gJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5VHlwZSgk
bmF0aXZlVHlwZSk7CiAKICAgICAgICAgaWYgKCRuYXRpdmVUeXBlID1+IC9eVjhTdHJpbmdSZXNv
dXJjZS8pIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmli
dXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICAiIC4gQ29udmVydFRvVjhTdHJpbmdSZXNv
dXJjZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICRuYXRpdmVUeXBlLCAidiIsICR2YWx1ZSwgIlZP
SUQiKSAuICJcbiIpOwogICAgICAgICB9IGVsc2lmICgkYXJyYXlUeXBlKSB7CisgICAgICAgICAg
ICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFs
dWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
RGVjbHMsICIgICAgVmVjdG9yPCRhcnJheVR5cGU+IHYgPSAkdmFsdWU7XG4iKTsKKyAgICAgICAg
fSBlbHNpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5m
b3JjZVJhbmdlIn0pIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgk
YXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIsIDEpOwor
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICBUWVBFQ0hFQ0tfVk9JRCgk
bmF0aXZlVHlwZSwgdiwgJHZhbHVlLCBpbmZvLkdldElzb2xhdGUoKSk7XG4iKTsKICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmli
dXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICAkbmF0aXZlVHlwZSB2ID0gJHZhbHVlO1xu
Iik7CiAgICAgICAgIH0KICAgICB9CkBAIC0xODMwLDggKzE4MzUsMTMgQEAgc3ViIEdlbmVyYXRl
UGFyYW1ldGVyc0NoZWNrCiAgICAgICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmlu
ZyAuPSAiICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoMCwgYXJncy5HZXRJc29sYXRlKCkp
O1xuIjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAkcGFy
YW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICBWOFRSWUNBVENIKCRuYXRpdmVUeXBlLCAkcGFyYW1l
dGVyTmFtZSwgIiAuCi0gICAgICAgICAgICAgICAgIEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVy
LCAiTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgJHBhcmFtSW5kZXgsICRwYXJhbWV0ZXJE
ZWZhdWx0UG9saWN5KSIsICJhcmdzLkdldElzb2xhdGUoKSIpIC4gIik7XG4iOworICAgICAgICAg
ICAgaWYgKCRwYXJhbWV0ZXItPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSkg
eworICAgICAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVy
LCAiTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywgJHBhcmFtSW5kZXgsICRwYXJhbWV0ZXJE
ZWZhdWx0UG9saWN5KSIsICJhcmdzLkdldElzb2xhdGUoKSIsIDEpOworICAgICAgICAgICAgICAg
ICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0so
JG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFsdWUsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtc
biI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpT
VmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAiTUFZQkVfTUlTU0lOR19QQVJBTUVURVIoYXJncywg
JHBhcmFtSW5kZXgsICRwYXJhbWV0ZXJEZWZhdWx0UG9saWN5KSIsICJhcmdzLkdldElzb2xhdGUo
KSIpOworICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZ
Q0FUQ0goJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFsdWUpO1xuIjsKKyAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIGlmICgkbmF0aXZlVHlwZSBlcSAnRGljdGlvbmFyeScpIHsKICAg
ICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIGlmICghJHBhcmFtZXRl
ck5hbWUuaXNVbmRlZmluZWRPck51bGwoKSAmJiAhJHBhcmFtZXRlck5hbWUuaXNPYmplY3QoKSlc
biI7CiAgICAgICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0
dXJuIHRocm93VHlwZUVycm9yKFwiTm90IGFuIG9iamVjdC5cIiwgYXJncy5HZXRJc29sYXRlKCkp
O1xuIjsKQEAgLTM5MjAsMTYgKzM5MzAsMjcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIG15
ICRzaWduYXR1cmUgPSBzaGlmdDsKICAgICBteSAkdmFsdWUgPSBzaGlmdDsKICAgICBteSAkZ2V0
SXNvbGF0ZSA9IHNoaWZ0OworICAgIG15ICRtYXlGYWlsID0gc2hpZnQ7CiAKICAgICBteSAkdHlw
ZSA9ICRzaWduYXR1cmUtPnR5cGU7CisgICAgbXkgJGludENvbnZlcnNpb24gPSAkc2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5mb3JjZVJhbmdlIn0gPyAiRW5mb3JjZVJhbmdlIiA6
ICJOb3JtYWxDb252ZXJzaW9uIjsKKyAgICBkaWUgIkNhbid0IGhhbmRsZSBbRW5mb3JjZVJhbmdl
XSB1bmxlc3MgY2FsbGVkIGZyb20gY29udGV4dCB0aGF0IGhhbmRsZXMgZmFpbHVyZXMuIiBpZiAk
aW50Q29udmVyc2lvbiBlcSAiRW5mb3JjZVJhbmdlIiBhbmQgISRtYXlGYWlsOwogCiAgICAgcmV0
dXJuICIkdmFsdWUiIGlmICR0eXBlIGVxICJKU09iamVjdCI7CiAgICAgcmV0dXJuICIkdmFsdWUt
PkJvb2xlYW5WYWx1ZSgpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICJzdGF0
aWNfY2FzdDwkdHlwZT4oJHZhbHVlLT5OdW1iZXJWYWx1ZSgpKSIgaWYgJHR5cGUgZXEgImZsb2F0
IiBvciAkdHlwZSBlcSAiZG91YmxlIjsKIAotICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBp
ZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKLSAgICByZXR1cm4gInRvVUlu
dDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5z
aWduZWQgc2hvcnQiOwotICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAi
dW5zaWduZWQgbG9uZyBsb25nIiBvciAkdHlwZSBlcSAibG9uZyBsb25nIjsKKyAgICBpZiAoJG1h
eUZhaWwpIHsKKyAgICAgICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSwgJGludENvbnZlcnNpb24s
IG9rKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9ydCI7CisgICAgICAgIHJl
dHVybiAidG9VSW50MzIoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2spIiBpZiAkdHlwZSBlcSAi
dW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKKyAgICAgICAgcmV0
dXJuICJ0b0ludDY0KCR2YWx1ZSwgJGludENvbnZlcnNpb24sIG9rKSIgaWYgJHR5cGUgZXEgImxv
bmcgbG9uZyI7CisgICAgICAgIHJldHVybiAidG9VSW50NjQoJHZhbHVlLCAkaW50Q29udmVyc2lv
biwgb2spIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKKyAgICB9IGVsc2Ugewor
ICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0
eXBlIGVxICJzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9VSW50MzIoJHZhbHVlKSIgaWYgJHR5
cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25lZCBzaG9ydCI7CisgICAg
ICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyBsb25nIjsKKyAg
ICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9u
ZyBsb25nIjsKKyAgICB9CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDxSYW5nZTo6Q29tcGFyZUhv
dz4oJHZhbHVlLT5JbnQzMlZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiQ29tcGFyZUhvdyI7CiAgICAg
cmV0dXJuICJ0b1dlYkNvcmVEYXRlKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJEYXRlIjsKICAgICBy
ZXR1cm4gInRvRE9NU3RyaW5nTGlzdCgkdmFsdWUsICRnZXRJc29sYXRlKSIgaWYgJHR5cGUgZXEg
IkRPTVN0cmluZ0xpc3QiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9JRExBdHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
SURMQXR0cmlidXRlcy50eHQKaW5kZXggYzYzNjQ0ZmJlOTY1MjlkZjc4YTIzODMwYTU2YjY0MWEy
ZGJlZGQwNy4uNjcyNWMxMTkxY2IyYWZhNjFlN2EyNTk4NTBhMzg1YWZkYjRmZjJkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CkBA
IC01Miw2ICs1Miw3IEBAIERvTm90Q2hlY2tDb25zdGFudHMKIERvTm90Q2hlY2tTZWN1cml0eQog
RG9Ob3RDaGVja1NlY3VyaXR5T25HZXR0ZXIKIERvTm90Q2hlY2tTZWN1cml0eU9uU2V0dGVyCitF
bmZvcmNlUmFuZ2UKIEV2ZW50VGFyZ2V0CiBFeHRlbmRzRE9NR2xvYmFsT2JqZWN0CiBHZW5lcmF0
ZUlzUmVhY2hhYmxlPUltcGxEb2N1bWVudHxJbXBsRWxlbWVudFJvb3R8SW1wbE93bmVyTm9kZVJv
b3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0
T2JqLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlk
bAppbmRleCBjMDYzMGUzNzJjZTZkN2U0MGIxMjJkOTJjYWJhZjZkMjk2ZmZmZTQ4Li5hN2I2OGI4
MGYwZGNkNTIxZmY0YmI5ZTU1NzI1YWVkYTU4OTQzNWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCkBAIC0xNDcsNiArMTQ3LDE5IEBA
IGVudW0gVGVzdEVudW1UeXBlIHsgIiIsICJFbnVtVmFsdWUxIiwgIkVudW1WYWx1ZTIiLCAiRW51
bVZhbHVlMyIgfTsKICAgICB2b2lkICAgIG1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFsQXJn
KGluIFtDYWxsYmFjaywgT3B0aW9uYWxdIFRlc3RDYWxsYmFjayBjYWxsYmFjayk7CiAjZW5kaWYK
IAorI2lmIGRlZmluZWQoVEVTVElOR19WOCkKKyAgICAvLyAnRW5mb3JjZVJhbmdlJyBleHRlbmRl
ZCBhdHRyaWJ1dGUKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMihpbiBb
RW5mb3JjZVJhbmdlXSBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNl
UmFuZ2VVSW50MzIoaW4gW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyB2YWx1ZSk7CisgICAg
dm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQoaW4gW0VuZm9yY2VSYW5nZV0gbG9u
ZyBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjQo
aW4gW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKTsKKworICAgIGF0dHJp
YnV0ZSBbRW5mb3JjZVJhbmdlXSBsb25nIGVuZm9yY2VkUmFuZ2VMb25nQXR0cjsKKyAgICBhdHRy
aWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBlbmZvcmNlZFJhbmdlVW5zaWduZWRM
b25nQXR0cjsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nIGVuZm9yY2Vk
UmFuZ2VMb25nTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVk
IGxvbmcgbG9uZyBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHI7CisjZW5kaWYKKwog
ICAgIC8vICdDb25kaXRpb25hbCcgZXh0ZW5kZWQgYXR0cmlidXRlCiAgICAgW0NvbmRpdGlvbmFs
PUNvbmRpdGlvbjFdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0cjE7CiAgICAgW0NvbmRp
dGlvbmFsPUNvbmRpdGlvbjEmQ29uZGl0aW9uMl0gYXR0cmlidXRlIGxvbmcgY29uZGl0aW9uYWxB
dHRyMjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RPYmouY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4
L1Y4VGVzdE9iai5jcHAKaW5kZXggYWRjNzA5OGIyY2E0MmMxMGYyYjY0MjgxYzI4YmE0NGU0ODFm
ZDRiYi4uNjQwM2E5MTkxMzJiMzA4Yzk1ODYzOWRkMWRmN2UxODE1ODhmMzk4NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5j
cHAKQEAgLTIyNyw3ICsyMjcsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHVuc2ln
bmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZwogc3RhdGljIHZv
aWQgdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9s
ZGVyKCkpOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAg
dW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b1VJbnQ2NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNp
Z25lZExvbmdMb25nQXR0cih2KTsKICAgICByZXR1cm47CiB9CkBAIC02ODgsNiArNjg4LDYyIEBA
IHN0YXRpYyB2b2lkIHdpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRy
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyCiAgICAgcmV0dXJuOwogfQogCitzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAg
VGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBy
ZXR1cm4gdjhJbnRlZ2VyKGltcC0+ZW5mb3JjZWRSYW5nZUxvbmdBdHRyKCksIGluZm8uR2V0SXNv
bGF0ZSgpKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0clNldHRl
cih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUs
IGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhU
ZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9JRChpbnQs
IHYsIHRvSW50MzIodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7
CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0F0dHIodik7CisgICAgcmV0dXJuOworfQor
CitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdB
dHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2OFVuc2lnbmVkSW50ZWdlcihpbXAtPmVuZm9y
Y2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKCksIGluZm8uR2V0SXNvbGF0ZSgpKTsKK30KKworc3Rh
dGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6
OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIFRZUEVDSEVDS19WT0lEKHVuc2lnbmVkLCB2LCB0
b1VJbnQzMih2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAg
ICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKHYpOworICAgIHJldHVybjsK
K30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdB
dHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoc3RhdGljX2Nhc3Q8
ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHIoKSkpOworfQorCitzdGF0aWMg
dm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0
cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nv
ckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShp
bmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9JRChsb25nIGxvbmcsIHYsIHRvSW50NjQo
dmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5z
ZXRFbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJB
dHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5m
by5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3Vi
bGU+KGltcC0+ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyKCkpKTsKK30KKworc3Rh
dGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2Jq
Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9JRCh1bnNpZ25lZCBs
b25nIGxvbmcsIHYsIHRvVUludDY0KHZhbHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJ
c29sYXRlKCkpOworICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRy
KHYpOworICAgIHJldHVybjsKK30KKwogI2lmIEVOQUJMRShDb25kaXRpb24xKQogCiBzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IGNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMTM5
NSw2ICsxNDUxLDQ2IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aENh
bGxiYWNrQW5kT3B0aW9uYWxBcmdDYWxsYmFjayhjb25zdCB2ODo6CiAgICAgcmV0dXJuIHY4VW5k
ZWZpbmVkKCk7CiB9CiAKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVu
Zm9yY2VSYW5nZUludDMyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAg
ICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFy
Z3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRl
c3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBF
Q0hFQ0soaW50LCB2YWx1ZSwgdG9JbnQzMihNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAw
LCBEZWZhdWx0SXNVbmRlZmluZWQpLCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRl
KCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyKHZhbHVlKTsKKyAgICBy
ZXR1cm4gdjhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYg
YXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJv
d05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2Jq
KiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FU
Q0hfV0lUSF9UWVBFQ0hFQ0sodW5zaWduZWQsIHZhbHVlLCB0b1VJbnQzMihNQVlCRV9NSVNTSU5H
X1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQpLCBFbmZvcmNlUmFuZ2UsIG9r
KSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJ
bnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0Q2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisg
ICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0
ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVy
KCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sobG9uZyBsb25nLCB2YWx1ZSwgdG9J
bnQ2NChNQVlCRV9NSVNTSU5HX1BBUkFNRVRFUihhcmdzLCAwLCBEZWZhdWx0SXNVbmRlZmluZWQp
LCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9k
V2l0aEVuZm9yY2VSYW5nZUludDY0KHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsK
K30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdl
VUludDY0Q2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJn
cy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vy
cm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodW5z
aWduZWQgbG9uZyBsb25nLCB2YWx1ZSwgdG9VSW50NjQoTUFZQkVfTUlTU0lOR19QQVJBTUVURVIo
YXJncywgMCwgRGVmYXVsdElzVW5kZWZpbmVkKSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0
SXNvbGF0ZSgpKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjQodmFsdWUp
OworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEp
CiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxNZXRob2QxQ2FsbGJh
Y2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKQEAgLTE5MzQsNiArMjAzMCwxNCBAQCBzdGF0
aWMgY29uc3QgVjhET01Db25maWd1cmF0aW9uOjpCYXRjaGVkQXR0cmlidXRlIFY4VGVzdE9iakF0
dHJzW10gPSB7CiAgICAgeyJ3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRl
V2l0aFNwYWNlc0F0dHJpYnV0ZSIsIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZUF0dHJHZXR0ZXIsIFRl
c3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRl
V2l0aFNwYWNlc0F0dHJpYnV0ZUF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nh
c3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3Bl
cnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAogICAgIC8vIEF0
dHJpYnV0ZSAnd2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZScgKFR5cGU6
ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdDYWxsV2l0aCcpCiAgICAgeyJ3aXRoU2NyaXB0QXJndW1l
bnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlIiwgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRB
cmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5h
bDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXIsIDAg
Lyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxU
KSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24g
aW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdBdHRyJyAo
VHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNl
ZFJhbmdlTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRy
QXR0ckdldHRlciwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJT
ZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4
OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSks
IDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVu
c2lnbmVkTG9uZ0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdl
JykKKyAgICB7ImVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJu
YWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlciwgVGVzdE9ialY4SW50
ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlciwgMCAvKiBubyBk
YXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0
aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5j
ZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyJyAoVHlw
ZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJh
bmdlTG9uZ0xvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9u
Z0F0dHJBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25n
QXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0Nv
bnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2
ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3Jj
ZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjog
J0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIi
LCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0
ckdldHRlciwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25n
QXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0Nv
bnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2
ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAogI2lmIEVOQUJMRShDb25kaXRpb24xKQog
ICAgIC8vIEF0dHJpYnV0ZSAnY29uZGl0aW9uYWxBdHRyMScgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4
dEF0dHI6ICdDb25kaXRpb25hbCcpCiAgICAgeyJjb25kaXRpb25hbEF0dHIxIiwgVGVzdE9ialY4
SW50ZXJuYWw6OmNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyLCBUZXN0T2JqVjhJbnRlcm5hbDo6
Y29uZGl0aW9uYWxBdHRyMUF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8
djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5
QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LApAQCAtMjAxOCw2ICsy
MTIyLDEwIEBAIHN0YXRpYyBjb25zdCBWOERPTUNvbmZpZ3VyYXRpb246OkJhdGNoZWRDYWxsYmFj
ayBWOFRlc3RPYmpDYWxsYmFja3NbXSA9IHsKICAgICB7Im1ldGhvZFdpdGhDYWxsYmFja0FyZyIs
IFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBcmdDYWxsYmFja30sCiAgICAg
eyJtZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVy
bmFsOjptZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZ0NhbGxiYWNrfSwKICAg
ICB7Im1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFsQXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6
Om1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFsQXJnQ2FsbGJhY2t9LAorICAgIHsibWV0aG9k
V2l0aEVuZm9yY2VSYW5nZUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZv
cmNlUmFuZ2VJbnQzMkNhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50
MzIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMkNhbGxi
YWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIsIFRlc3RPYmpWOEludGVy
bmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRDYWxsYmFja30sCisgICAgeyJtZXRob2RX
aXRoRW5mb3JjZVJhbmdlVUludDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZv
cmNlUmFuZ2VVSW50NjRDYWxsYmFja30sCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAgICAgeyJj
b25kaXRpb25hbE1ldGhvZDEiLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9uYWxNZXRob2Qx
Q2FsbGJhY2t9LAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOEJpbmRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNw
cAppbmRleCBkZTdjMTgyNTczYmQxMmE1ZDdmOTg2OTk2MjVmNmMxYzhkNmViN2M1Li42NWRkNDY3
MzcyYjY5ODM3NTY3NDU5NzI3NmUxMzY1MzBiZGQwM2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1Y4QmluZGluZy5jcHAKQEAgLTEwMyw0MCArMTAzLDQ5IEBAIFBhc3NSZWZQdHI8Tm9k
ZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxsYmFjaykKICAg
ICByZXR1cm4gTm9kZUZpbHRlcjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlvbjo6Y3JlYXRl
KGNhbGxiYWNrKSk7CiB9CiAKLWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1
ZSwgYm9vbCYgb2spCitjb25zdCBpbnQzMl90IGtNaW5JbnQzMiA9IC0weDgwMDAwMDAwOworY29u
c3QgaW50MzJfdCBrTWF4SW50MzIgPSAweDdmZmZmZmZmOworY29uc3QgdWludDMyX3Qga01heFVJ
bnQzMiA9IDB4ZmZmZmZmZmY7CisKK2ludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBi
b29sJiBvaykKIHsKICAgICBvayA9IHRydWU7Ci0gICAgCisKICAgICAvLyBGYXN0IGNhc2UuIFRo
ZSB2YWx1ZSBpcyBhbHJlYWR5IGEgMzItYml0IGludGVnZXIuCiAgICAgaWYgKHZhbHVlLT5Jc0lu
dDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1ZSgpOwotICAgIAorCiAgICAg
Ly8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CiAgICAgdjg6OkxvY2Fs
PHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOwogICAgIGlmIChu
dW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgIHJl
dHVybiAwOwogICAgIH0KLSAgICAKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VS
YW5nZSkgeworICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKyAgICAg
ICAgaWYgKGlzbmFuKHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOwor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0x
IDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCBrTWluSW50MzIgfHwgeCA+
IGtNYXhJbnQzMikgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVy
biAwOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQorCiAgICAgLy8gRG9l
cyB0aGUgdmFsdWUgY29udmVydCB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHk/CiAgICAgZG91Ymxl
IG51bWJlclZhbHVlID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOwotICAgIGlmIChpc25hbihudW1i
ZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFsdWUpKSB7Ci0gICAgICAgIG9rID0gZmFsc2U7Cisg
ICAgaWYgKGlzbmFuKG51bWJlclZhbHVlKSB8fCBpc2luZihudW1iZXJWYWx1ZSkpCiAgICAgICAg
IHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRl
ZCB0byBhIDMyLWJpdCBpbnRlZ2VyPwotICAgIHY4OjpMb2NhbDx2ODo6SW50MzI+IGludFZhbHVl
ID0gdmFsdWUtPlRvSW50MzIoKTsKLSAgICBpZiAoaW50VmFsdWUuSXNFbXB0eSgpKSB7Ci0gICAg
ICAgIG9rID0gZmFsc2U7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBS
ZXR1cm4gdGhlIHJlc3VsdCBvZiB0aGUgaW50MzIgY29udmVyc2lvbi4KLSAgICByZXR1cm4gaW50
VmFsdWUtPlZhbHVlKCk7CisKKyAgICByZXR1cm4gbnVtYmVyT2JqZWN0LT5JbnQzMlZhbHVlKCk7
CiB9Ci0gICAgCi11aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUs
IGJvb2wmIG9rKQorCit1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFs
dWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBib29sJiBv
aykKIHsKICAgICBvayA9IHRydWU7CiAKQEAgLTE0NCwxMCArMTUzLDE2IEBAIHVpbnQzMl90IHRv
VUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCiAgICAgaWYgKHZh
bHVlLT5Jc1VpbnQzMigpKQogICAgICAgICByZXR1cm4gdmFsdWUtPlVpbnQzMlZhbHVlKCk7CiAK
KyAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCBzaWduZWQgaW50ZWdlciAt
IHBvc3NpYmx5IHBvc2l0aXZlPwogICAgIGlmICh2YWx1ZS0+SXNJbnQzMigpKSB7CiAgICAgICAg
IGludDMyX3QgcmVzdWx0ID0gdmFsdWUtPkludDMyVmFsdWUoKTsKICAgICAgICAgaWYgKHJlc3Vs
dCA+PSAwKQogICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgaWYgKGNvbmZpZ3Vy
YXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9
CiAKICAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KQEAgLTE1
NywyMSArMTcyLDExMSBAQCB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
dmFsdWUsIGJvb2wmIG9rKQogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKKyAgICBpZiAoY29u
ZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgZG91YmxlIHggPSBudW1iZXJP
YmplY3QtPlZhbHVlKCk7CisgICAgICAgIGlmIChpc25hbih4KSB8fCBpc2luZih4KSkgeworICAg
ICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9Cisg
ICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlm
ICh4IDwgMCB8fCB4ID4ga01heFVJbnQzMikgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAg
ICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIHg7CisgICAg
fQorCiAgICAgLy8gRG9lcyB0aGUgdmFsdWUgY29udmVydCB0byBuYW4gb3IgdG8gYW4gaW5maW5p
dHk/CiAgICAgZG91YmxlIG51bWJlclZhbHVlID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOwotICAg
IGlmIChpc25hbihudW1iZXJWYWx1ZSkgfHwgaXNpbmYobnVtYmVyVmFsdWUpKSB7CisgICAgaWYg
KGlzbmFuKG51bWJlclZhbHVlKSB8fCBpc2luZihudW1iZXJWYWx1ZSkpCisgICAgICAgIHJldHVy
biAwOworCisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+VWludDMyVmFsdWUoKTsKK30KKworaW50
NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNp
b25Db25maWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1
ZTsKKworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IGludGVnZXIuCisg
ICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpCisgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1
ZSgpOworCisgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/Cisg
ICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigp
OworICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7
CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29u
dmVydGVkIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpV
aW50MzI+IHVpbnRWYWx1ZSA9IHZhbHVlLT5Ub1VpbnQzMigpOwotICAgIGlmICh1aW50VmFsdWUu
SXNFbXB0eSgpKSB7CisgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisKKyAg
ICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgaWYgKGlzbmFu
KHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAg
cmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9v
cihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAtKGtKU01heEludGVnZXIgLSAxKSB8fCB4ID4g
KGtKU01heEludGVnZXIgLSAxKSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAg
ICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiB4OworICAgIH0KKworICAg
IC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJe
NjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2Vy
KHgsIGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2VyOworfQorCit1aW50NjRfdCB0b1VJbnQ2
NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJh
dGlvbiBjb25maWd1cmF0aW9uLCBib29sJiBvaykKK3sKKyAgICBvayA9IHRydWU7CisKKyAgICAv
LyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLgorICAg
IGlmICh2YWx1ZS0+SXNVaW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1
ZSgpOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4K
KyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgeworICAgICAgICBpbnQzMl90IHJlc3VsdCA9IHZh
bHVlLT5JbnQzMlZhbHVlKCk7CisgICAgICAgIGlmIChyZXN1bHQgPj0gMCkKKyAgICAgICAgICAg
IHJldHVybiByZXN1bHQ7CisgICAgICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5n
ZSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAg
ICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAgLy8gQ2FuIHRoZSB2
YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CisgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+
IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOworICAgIGlmIChudW1iZXJPYmplY3Qu
SXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgIHJldHVybiAwOwogICAg
IH0KIAotICAgIHJldHVybiB1aW50VmFsdWUtPlZhbHVlKCk7CisgICAgZG91YmxlIHggPSBudW1i
ZXJPYmplY3QtPlZhbHVlKCk7CisKKyAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFu
Z2UpIHsKKyAgICAgICAgaWYgKGlzbmFuKHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBv
ayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9
ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAwIHx8
IHggPiAoa0pTTWF4SW50ZWdlciAtIDEpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAg
ICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQor
CisgICAgLy8gTmFOcyBhbmQgKy8tSW5maW5pdHkgc2hvdWxkIGJlIDAsIG90aGVyd2lzZSBtb2R1
bG8gMl42NC4KKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgaW50ZWdlcjsKKyAgICBkb3VibGVUb0lu
dGVnZXIoeCwgaW50ZWdlcik7CisgICAgcmV0dXJuIGludGVnZXI7CiB9CiAKIHY4OjpQZXJzaXN0
ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBjcmVhdGVSYXdUZW1wbGF0ZSh2ODo6SXNvbGF0ZSog
aXNvbGF0ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGlu
Zy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmgKaW5kZXggYTY5ZTkw
OWU2ZmIyMjAyY2IwOWIwYTJjMTI0NDUyZmE1OWJjNDc3Ny4uYzhhYjViOTBmYzAyMDc2MmNlNTQw
ZWZiNWJmYTVjNzlmZDQ1ZjM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvVjhCaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5n
LmgKQEAgLTU2LDYgKzU2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIFdvcmxk
Q29udGV4dEhhbmRsZTsKIAogICAgIGNvbnN0IGludCBrTWF4UmVjdXJzaW9uRGVwdGggPSAyMjsK
KyAgICBjb25zdCBsb25nIGxvbmcga0pTTWF4SW50ZWdlciA9IDB4MjAwMDAwMDAwMDAwMDBMTDsK
IAogICAgIC8vIFNjaGVkdWxlIGEgRE9NIGV4Y2VwdGlvbiB0byBiZSB0aHJvd24sIGlmIHRoZSBl
eGNlcHRpb24gY29kZSBpcyBkaWZmZXJlbnQKICAgICAvLyBmcm9tIHplcm8uCkBAIC0zNDMsMzYg
KzM0NCw2NiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBQYXNzUmVmUHRyPE5vZGVGaWx0
ZXI+IHRvTm9kZUZpbHRlcih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4pOwogCi0gICAgLy8gQ29udmVy
dCBhIHZhbHVlIHRvIGEgMzItYml0IGludGVnZXIuICBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0
aGUKLSAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGFuIGludGVnZXIgb3IgY29u
dmVydHMgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5LgotICAgIGludCB0b0ludDMyKHY4OjpIYW5k
bGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spOworICAgIC8vIENvbnZlcnNpb24gZmxhZ3Ms
IHVzZWQgaW4gdG9JbnRYWC90b1VJbnRYWC4KKyAgICBlbnVtIEludGVnZXJDb252ZXJzaW9uQ29u
ZmlndXJhdGlvbiB7CisgICAgICAgIE5vcm1hbENvbnZlcnNpb24sCisgICAgICAgIEVuZm9yY2VS
YW5nZSwKKyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCBDbGFtcAorICAgIH07CisKKyAgICAv
LyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJz
aW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBu
dW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3
dy53My5vcmcvVFIvV2ViSURMLyNlcy1sb25nCisgICAgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5k
bGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7
CisgICAgaW5saW5lIGludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUs
IGJvb2wmIG9rKSB7IHJldHVybiB0b0ludDMyKHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7
IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCBpbnRlZ2VyIGFzc3VtaW5n
IHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgotICAgIGlubGluZSBpbnQgdG9JbnQzMih2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgaW5saW5lIGludDMyX3QgdG9JbnQzMih2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBib29sIG9rOwotICAgICAg
ICByZXR1cm4gdG9JbnQzMih2YWx1ZSwgb2spOworICAgICAgICByZXR1cm4gdG9JbnQzMih2YWx1
ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwogICAgIH0KIAotICAgIC8vIENvbnZlcnQgYSB2YWx1
ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLiAgVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYg
dGhlCi0gICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhbiB1bnNpZ25lZCBpbnRl
Z2VyIG9yIGNvbnZlcnRzIHRvIG5hbiBvciB0byBhbiBpbmZpbml0eS4KLSAgICB1aW50MzJfdCB0
b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKTsKKyAgICAvLyBD
b252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNp
b24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51
bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3
LnczLm9yZy9UUi9XZWJJREwvI2VzLXVuc2lnbmVkLWxvbmcKKyAgICB1aW50MzJfdCB0b1VJbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiwg
Ym9vbCYgb2spOworICAgIGlubGluZSB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b1VJbnQzMih2YWx1ZSwgTm9ybWFsQ29u
dmVyc2lvbiwgb2spOyB9CiAKICAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgdW5z
aWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KICAgICBp
bmxpbmUgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAg
IHsKICAgICAgICAgYm9vbCBvazsKLSAgICAgICAgcmV0dXJuIHRvVUludDMyKHZhbHVlLCBvayk7
CisgICAgICAgIHJldHVybiB0b1VJbnQzMih2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwog
ICAgIH0KIAotICAgIGlubGluZSBmbG9hdCB0b0Zsb2F0KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZh
bHVlKQorICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCBzaWduZWQgaW50ZWdlci4g
VGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZl
cnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAv
LyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLWxvbmctbG9uZworICAgIGludDY0X3Qg
dG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJh
dGlvbiwgYm9vbCYgb2spOworCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IGlu
dGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCisgICAgaW5saW5lIGlu
dDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewotICAgICAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1ZSgpKTsKKyAgICAg
ICAgYm9vbCBvazsKKyAgICAgICAgcmV0dXJuIHRvSW50NjQodmFsdWUsIE5vcm1hbENvbnZlcnNp
b24sIG9rKTsKICAgICB9CiAKLSAgICBpbmxpbmUgbG9uZyBsb25nIHRvSW50NjQodjg6OkxvY2Fs
PHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHVu
c2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVl
IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBl
ciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy11bnNpZ25l
ZC1sb25nLWxvbmcKKyAgICB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4s
IEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiwgYm9vbCYgb2spOworCisgICAgLy8gQ29u
dmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIgYXNzdW1pbmcgdGhlIGNv
bnZlcnNpb24gY2Fubm90IGZhaWwuCisgICAgaW5saW5lIHVpbnQ2NF90IHRvVUludDY0KHY4OjpI
YW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2Fz
dDxsb25nIGxvbmc+KHZhbHVlLT5JbnRlZ2VyVmFsdWUoKSk7CisgICAgICAgIGJvb2wgb2s7Cisg
ICAgICAgIHJldHVybiB0b1VJbnQ2NCh2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOworICAg
IH0KKworICAgIGlubGluZSBmbG9hdCB0b0Zsb2F0KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVy
VmFsdWUoKSk7CiAgICAgfQogCiAgICAgaW5saW5lIGJvb2wgaXNVbmRlZmluZWRPck51bGwodjg6
OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OEJpbmRpbmdNYWNyb3MuaAppbmRleCAzNTJlYmVmYzYxMzgxM2VlNDdhZmViNmRmNmYwMDhmNjEw
MjFkNjRhLi5lYThmNTAxYzIxNTVhMzc3ZTRiOWJjY2YwNWExYTg5YzFiYzg0MWZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaApAQCAtMzgsNiArMzgs
MTcgQEAgZW51bSBQYXJhbWV0ZXJEZWZhdWx0UG9saWN5IHsKICAgICBEZWZhdWx0SXNOdWxsU3Ry
aW5nCiB9OwogCisjZGVmaW5lIFRZUEVDSEVDS19WT0lEKHR5cGUsIHZhciwgdmFsdWUsIGlzb2xh
dGUpIFwKKyAgICB0eXBlIHZhcjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgIGJvb2wgb2sgPSB0cnVlOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgdmFyID0gKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBp
ZiAoVU5MSUtFTFkoIW9rKSkgeyAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB0
aHJvd1R5cGVFcnJvcigwLCBpc29sYXRlKTsgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVy
bjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfQorCiAjZGVmaW5lIFY4VFJZQ0FU
Q0godHlwZSwgdmFyLCB2YWx1ZSkgXAogICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAogICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApA
QCAtNDcsNiArNTgsMjAgQEAgZW51bSBQYXJhbWV0ZXJEZWZhdWx0UG9saWN5IHsKICAgICAgICAg
ICAgIHJldHVybiBibG9jay5SZVRocm93KCk7ICAgICAgIFwKICAgICB9CiAKKyNkZWZpbmUgVjhU
UllDQVRDSF9XSVRIX1RZUEVDSEVDSyh0eXBlLCB2YXIsIHZhbHVlLCBpc29sYXRlKSBcCisgICAg
dHlwZSB2YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgYm9vbCBvayA9IHRydWU7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgdjg6OlRyeUNhdGNoIGJsb2NrOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHZhciA9ICh2YWx1ZSk7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBpZiAoYmxv
Y2suSGFzQ2F1Z2h0KCkpICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAg
ICAgIHJldHVybiBibG9jay5SZVRocm93KCk7ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgICAgIGlmIChVTkxJS0VMWSghb2spKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKDAsIGlzb2xhdGUpOyAg
ICAgICAgICAgICAgIFwKKyAgICB9CisKICNkZWZpbmUgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdS
RVNPVVJDRSh0eXBlLCB2YXIsIHZhbHVlKSBcCiAgICAgdHlwZSB2YXIodmFsdWUpOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIGlmICghdmFyLnByZXBh
cmUoKSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmggYi9Tb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCmluZGV4IDI0YjMzZGQxODJlZWRjODMxZjZh
NWE1MTkxOWM4NGQ0M2VjMDFkZDcuLjhkZTEwMmYyYTI0NzdkZTEwMDk1ODM2Mzg4NjcyZGE1ODEw
Yzg4ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25z
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaApAQCAtMzYs
MjUgKzM2LDMzIEBAIGNsYXNzIFR5cGVDb252ZXJzaW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFR5
cGVDb252ZXJzaW9ucz4gewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFR5cGVDb252
ZXJzaW9ucz4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFR5cGVDb252ZXJzaW9ucygp
KTsgfQogCi0gICAgbG9uZyB0ZXN0TG9uZygpIHsgcmV0dXJuIG1fdGVzdExvbmc7IH0KLSAgICB2
b2lkIHNldFRlc3RMb25nKGxvbmcgdmFsdWUpIHsgbV90ZXN0TG9uZyA9IHZhbHVlOyB9Ci0gICAg
dW5zaWduZWQgbG9uZyB0ZXN0VW5zaWduZWRMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5zaWduZWRM
b25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUp
IHsgbV90ZXN0VW5zaWduZWRMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIHRlc3RMb25nKCkgeyBy
ZXR1cm4gbV9sb25nOyB9CisgICAgdm9pZCBzZXRUZXN0TG9uZyhsb25nIHZhbHVlKSB7IG1fbG9u
ZyA9IHZhbHVlOyB9CisgICAgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZygpIHsgcmV0dXJuIG1f
bG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5nZUxvbmcobG9uZyB2YWx1ZSkgeyBt
X2xvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZygpIHsg
cmV0dXJuIG1fdW5zaWduZWRMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nKHVu
c2lnbmVkIGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2ln
bmVkIGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdW5zaWdu
ZWRMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nKHVuc2ln
bmVkIGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmcgPSB2YWx1ZTsgfQogCi0gICAgbG9uZyBs
b25nIHRlc3RMb25nTG9uZygpIHsgcmV0dXJuIG1fdGVzdExvbmdMb25nOyB9Ci0gICAgdm9pZCBz
ZXRUZXN0TG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fdGVzdExvbmdMb25nID0gdmFsdWU7
IH0KLSAgICB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVy
biBtX3Rlc3RVbnNpZ25lZExvbmdMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25n
TG9uZyh1bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpIHsgbV90ZXN0VW5zaWduZWRMb25nTG9uZyA9
IHZhbHVlOyB9CisgICAgbG9uZyBsb25nIHRlc3RMb25nTG9uZygpIHsgcmV0dXJuIG1fbG9uZ0xv
bmc7IH0KKyAgICB2b2lkIHNldFRlc3RMb25nTG9uZyhsb25nIGxvbmcgdmFsdWUpIHsgbV9sb25n
TG9uZyA9IHZhbHVlOyB9CisgICAgbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZygp
IHsgcmV0dXJuIG1fbG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyhsb25nIGxvbmcgdmFsdWUpIHsgbV9sb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWdu
ZWQgbG9uZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExv
bmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nTG9uZyh1bnNpZ25lZCBsb25n
IGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25l
ZCBsb25nIGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBt
X3Vuc2lnbmVkTG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nKHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZ0xvbmcg
PSB2YWx1ZTsgfQogCiBwcml2YXRlOgogICAgIFR5cGVDb252ZXJzaW9ucygpCiAgICAgewogICAg
IH0KIAotICAgIGxvbmcgbV90ZXN0TG9uZzsKLSAgICB1bnNpZ25lZCBsb25nIG1fdGVzdFVuc2ln
bmVkTG9uZzsKLSAgICBsb25nIGxvbmcgbV90ZXN0TG9uZ0xvbmc7Ci0gICAgdW5zaWduZWQgbG9u
ZyBsb25nIG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmc7CisgICAgbG9uZyBtX2xvbmc7CisgICAgdW5z
aWduZWQgbG9uZyBtX3Vuc2lnbmVkTG9uZzsKKyAgICBsb25nIGxvbmcgbV9sb25nTG9uZzsKKyAg
ICB1bnNpZ25lZCBsb25nIGxvbmcgbV91bnNpZ25lZExvbmdMb25nOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29u
dmVyc2lvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRs
CmluZGV4IDM2N2QxZjdlYzQ4NDJlNDFmNmFhYTMxMGFiMjJhOWJjNTAxY2Y4NGYuLmIyN2IxNThk
NzYzM2IzMzQ1NjE2ZWU1YmM3ZmUzMmM2Y2U1NWEyZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL1R5cGVDb252ZXJzaW9ucy5pZGwKQEAgLTI4LDggKzI4LDEyIEBACiAgICAgSW1wbGVtZW50
YXRpb25MYWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgVHlwZUNvbnZlcnNpb25zIHsKICAgICBhdHRy
aWJ1dGUgbG9uZyB0ZXN0TG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyB0
ZXN0RW5mb3JjZVJhbmdlTG9uZzsKICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyB0ZXN0VW5z
aWduZWRMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIHRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmc7CiAKICAgICBhdHRyaWJ1dGUgbG9uZyBsb25nIHRl
c3RMb25nTG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nIHRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZzsKICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIHRl
c3RVbnNpZ25lZExvbmdMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25l
ZCBsb25nIGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmc7CiB9OwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IGIyOWQ4MTI5ZjNjN2I1YWYyNmM2ZGRmMzIzNWViYTQ1YzVjYTdlYTMuLmY3NmFlOGY4Y2YzNzgy
ZWIxZWRhN2JlNTExNmUwZDI0MzIzNDliMDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMy0w
Mi0xMyAgSm9zaHVhIEJlbGwgIDxqc2JlbGxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtWOF0g
QmluZGluZzogSW1wbGVtZW50IEVuZm9yY2VSYW5nZSBJREwgQXR0cmlidXRlIGZvciBsb25nIGxv
bmcgY29udmVyc2lvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk2Nzk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBmYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMt
dmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy5qczogVXBkYXRlIGV4cGVjdGF0aW9uCisgICAgICAg
IGZvciBIVE1MT3B0aW9uc0NvbGxlY3Rpb24uYWRkKGVsZW1lbnQsIGJlZm9yZSkgdG8gbWF0Y2gg
c3BlYyAtIHxiZWZvcmV8IHNob3VsZG4ndCB0aHJvdy4KKyAgICAgICAgKiBmYXN0L2pzL3dlYmlk
bC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMvd2ViaWRsLXR5
cGUtbWFwcGluZy5odG1sOiBBZGRlZCBFbmZvcmNlUmFuZ2UgY2FzZXMuCisgICAgICAgICogc3Rv
cmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFt
ZXRlcnMuanM6IE1vcmUgYm91bmRzIGNoZWNrcy4KKwogMjAxMy0wMi0xMiAgRmlsaXAgUGl6bG8g
IDxmcGl6bG9AYXBwbGUuY29tPgogCiAgICAgICAgIEVyYWRpY2F0ZSBmYXN0L2pzL2RmZy1wb2lz
b24tZnV6ei5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJp
Yy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0
CmluZGV4IDk3YmYxZTA2NzEyMzdlNjA2MzNjNjZmMGMxMzg4YzE2NzYxNDIyOGYuLjAxODE5ZmNk
MTYyNTNhNDA4ZDE4ODllZmQ0Y2Q4ODQwMGRkNjhhMzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmlj
LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBAIC0yOCw3ICsyOCw3IEBAIFBBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgPSB4JykgaXMgJ2FueSB0eXBlIGFsbG93
ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmltYWdlcy5pdGVtKHgpJykgaXMg
J2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImlucHV0Iikuc2V0U2VsZWN0aW9uUmFuZ2UoeCwgMCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
aW5wdXQiKS5zZXRTZWxlY3Rpb25SYW5nZSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwot
UEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQo
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIiksIHgpJykgaXMgJ251bWJlciBvciBudWxs
IGFsbG93ZWQgKG9yIG9taXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUpJworUEFTUyBub25OdW1lcmlj
UG9saWN5KCdjcmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgib3B0aW9uIiksIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2Vs
ZWN0RWxlbWVudCgpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25O
dW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLml0ZW0oeCknKSBpcyAnYW55
IHR5cGUgYWxsb3dlZCcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10
ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVz
dHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFt
ZXRlcnMuanMKaW5kZXggMmU3MDA2YzVhOWYyZDQ5MjIxZWJmMzQyOTk0MDNhMThmMGJmOWE2ZC4u
NThiZWQxNjgwM2ZlNzhhMTU3ODNjNzIwYWZiNDU0M2VmOGUzZjg1NyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmlj
LXBhcmFtZXRlcnMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25v
bi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKQEAgLTY0LDcgKzY0LDcgQEAg
ZnVuY3Rpb24gbm9uTnVtZXJpY1BvbGljeSh0ZW1wbGF0ZSkKICAgICB0cnkgewogICAgICAgICBl
dmFsKHRlbXBsYXRlKTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIE5hTkFsbG93ZWQgPSAw
OworICAgICAgICBuYW5BbGxvd2VkID0gMDsKICAgICB9CiAKICAgICB2YXIgb21pdEFsbG93ZWQg
PSAtMTsgLy8gbWVhbnMgIm5vdCBhcHBsaWNhYmxlIgpAQCAtMjQ0LDcgKzI0NCw3IEBAIHNob3Vs
ZEJlKCJub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiku
c2V0U2VsZWN0aW9uUmFuZ2UoCiAKIC8vIEhUTUxPcHRpb25zQ29sbGVjdGlvbgogCi1zaG91bGRC
ZSgibm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJvcHRpb25cIiksIHgpJykiLCAiJ251bWJlciBvciBudWxs
IGFsbG93ZWQgKG9yIG9taXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUpJyIpOworc2hvdWxkQmUoIm5v
bk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KFwib3B0aW9uXCIpLCB4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIp
Owogc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlv
bigpLnJlbW92ZSh4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogCiAvLyBIVE1MU2VsZWN0
RWxlbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBw
aW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGlu
Zy1leHBlY3RlZC50eHQKaW5kZXggNWIyYThjZjE0ZDRlNmRlZTBhYjc0OWZhOGZjZjgxMDM5YTc4
ZDBkOC4uY2NiYzA1Mjc4ZDJiODk3YWExNDRmN2VjY2I4MjFmNTkyMDMxYzY3OCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0
CkBAIC02OSw2ICs2OSw4IEBAIGNvbnZlcnRlci50ZXN0TG9uZyA9IHRydWUKIFBBU1MgY29udmVy
dGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxsCkBAIC03Nyw2ICs3OSw2
OSBAQCBjb252ZXJ0ZXIudGVzdExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RM
b25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5m
b3JjZVJhbmdlTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAw
eDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3
RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkZGRgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMg
LTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGRkZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGRkZGRgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IDB4RkZGRkZGRkYgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweERD
QkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLUluZmluaXR5IHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHRy
dWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnMScKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3Iu
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9u
KCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCisKIFBBU1MgJ3Rlc3RVbnNpZ25lZExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNT
IHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQog
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAwCkBAIC0xNDEsNiArMjA2LDggQEAgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJycKIFBBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSAnYWJjJwogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCiBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IG51bGwKQEAgLTE0OSw2ICsyMTYsNjQgQEAgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1
ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4K
IAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRy
dWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID09
PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0YKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IC0weDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODEg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBp
cyAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAt
MHg4MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgaXMgMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IC0weDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAw
MDAwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVy
Lk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEuOTkKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0
ZXIuLTEuOTkgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFN5bnRheEVycm9yOiBVbmV4cGVj
dGVkIHRva2VuIC0uCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtSW5maW5pdHkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gZmFsc2UK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAn
MScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICdhYmMnIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCisKIFBBU1MgJ3Rlc3RMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSAwCkBAIC0xOTMsMTYgKzMxOCwyOCBAQCBjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1i
ZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVy
LnRlc3RMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDEuOTkKIFBBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEuOTkKIFBBU1Mg
Y29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IElu
ZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IC1JbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RM
b25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnJwogUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnMScK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gbnVsbApAQCAtMjExLDYgKzM0OCw3MiBAQCBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJy
b3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IDB4RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4
N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAw
MDAwMDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAw
MDAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3
NjU0MzIxMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVy
Lk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAt
MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5maW5pdHkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
TmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
dHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVy
cm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCisKIFBBU1MgJ3Rl
c3RVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAwCkBAIC0yNTUsMTYgKzQ1OCwyOCBAQCBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxV
RQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IDEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0xLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAog
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCkBAIC0yNzMsNiArNDg4
LDY0IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5lZAogUEFTUyBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0
aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0xIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IC0weDgxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4
N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAw
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgw
MDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgw
MDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMCB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxLjk5
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0xLjk5IHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorCiBQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93
ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKaW5kZXggMjE5MTNiZTBmZTgzYzAyMTc5NDA5ZDdjNjVi
ZmVjYWNmNDM3MDAxMi4uMzQwMjg1Yzk2MTM0NTc4NjM3ZjhmNjMzNTI3NjIxOTVhMDFlYzBiOSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKQEAgLTM2
LDExICszNiwyMyBAQCBmdW5jdGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyhhdHRyaWJ1dGUp
CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJmYWxzZSIsICIwIik7CiAgICAgY29udmVydChhdHRy
aWJ1dGUsICJ0cnVlIiwgIjEiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicnIiwgIjAiKTsK
KyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicxJyIsICIxIik7CiAgICAgY29udmVydChhdHRyaWJ1
dGUsICInYWJjJyIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJudWxsIiwgIjAiKTsK
ICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgInVuZGVmaW5lZCIsICIwIik7CiB9CiAKK2Z1bmN0aW9u
IHRlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKGF0dHJpYnV0ZSkKK3sKKyAgICBj
b252ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwg
InRydWUiLCAiMSIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJyciLCAiMCIpOworICAgIGNv
bnZlcnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKKyAgICBjb252ZXJ0VGhyb3dzKGF0dHJpYnV0
ZSwgIidhYmMnIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJudWxsIiwgIjAiKTsKKyAgICBj
b252ZXJ0VGhyb3dzKGF0dHJpYnV0ZSwgInVuZGVmaW5lZCIpOworfQorCiB0eXBlID0gInRlc3RM
b25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTc1
LDYgKzg3LDQwIEBAIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93
cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVn
KCIiKTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUo
dHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVy
dCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4
MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2Nv
bnZlcnQodHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUs
ICItMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIw
eDdGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIp
OworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhf
VkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVy
dFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1i
ZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVy
dCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Ik5hTiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIp
OworZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmciOwogdmVyaWZ5QXR0cmli
dXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIpOwpAQCAtMTA5LDYgKzE1NSw0MCBAQCB0ZXN0
Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9m
OmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAi
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citj
b252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMSIpOworY29udmVydCh0
eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIp
OworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsK
K2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAx
Iik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAw
MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUi
LCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZl
cnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTki
LCAiMSIpOworY29udmVydFRocm93cygiLTEuOTkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIklu
ZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlw
ZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBF
cnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RMb25nTG9uZyI7CiB2ZXJpZnlB
dHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC0xMzIsMTkgKzIxMiw1MSBA
QCBjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3
NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252
ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0
ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIu
TUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAi
MCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5
cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEi
KTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50
IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJJbmZpbml0eSIs
ICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlw
ZSwgIk5hTiIsICIwIik7Citjb252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Citjb252ZXJ0
KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKIHRl
c3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIiKTsKIAordHlwZSA9
ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29u
dmVydCh0eXBlLCAiMCIpOworY29udmVydCh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEi
KTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZl
cnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwIik7Citjb252ZXJ0KHR5cGUs
ICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgw
MDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMCIp
OworY29udmVydCh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIp
OworY29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZG
RiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgw
MDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citjb252
ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1i
ZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFM
VUUiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0
KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUluZmlu
aXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iLCAiMCIpOwordGVzdE5vbk51bWVyaWNU
b051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVP
ZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBlID0g
InRlc3RVbnNpZ25lZExvbmdMb25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQo
dHlwZSwgIjAiKTsKQEAgLTE2OCwxOCArMjgwLDUwIEBAIGNvbnZlcnQodHlwZSwgIi0weDgwMDAw
MDAxIiwgIjB4RkZGRkZGRkY3RkZGRkZGRiIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0
MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252ZXJ0
KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50
IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFY
X1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIp
OworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUs
ICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsK
IGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIjB4RkZGRkZGRkZGRkZGRkZGRiIpOwotLy8gRklYTUU6
IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0eXBl
LCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOwot
Ly9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOworY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAi
MCIpOworY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk5h
TiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3Mo
dHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1Zygi
Iik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmciOwordmVyaWZ5
QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29udmVydFRocm93cyh0eXBl
LCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIi0weDgwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MSIpOworY29udmVy
dCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4RkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydFRo
cm93cyh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29u
dmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZGRiIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Ii0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7
Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwg
Ii1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5N
QVhfVkFMVUUiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citj
b252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xLjk5Iik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAi
LUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1lcmlj
VG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogPC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2lu
dHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDFlOGJkNTdiZDMxMWI4
MmNlOWYyNDhiZGQ3NDY0NGJjMmYwMmQ2ZDUuLjE0NTU3ZDQ1MzY2ZGRmMzQxYjZjMDEyMDcwZTI4
OTEyM2ExMTg4N2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2lu
dHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBA
IC0xOCw2ICsxOCwxNSBAQCBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkgdGhyZXcgVHlw
ZUVycm9yOiBUeXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGlu
ZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgogUEFT
UyBpbmRleGVkREIub3BlbihkYm5hbWUsIC01KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IK
K0V4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1l
LCBJbmZpbml0eSkKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5v
cGVuKGRibmFtZSwgSW5maW5pdHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhwZWN0
aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZp
bml0eSkKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRi
bmFtZSwgLUluZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBU
eXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pCitQQVNT
IEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIE5hTikg
dGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlv
biBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhy
b3duLgogUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKSB0aHJldyBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291
cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKaW5kZXggYWYz
NWYyZDRiYzgyYjBiY2RiNWIwMTQ4YzYzMGYyMTUzOTYzYmZjMS4uZDMzOWMzMmMxYzZiMTE0OTdl
MWNjODlkMGMwNzM1YWEzOTk5NzQ3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKKysrIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFt
ZXRlcnMuanMKQEAgLTIwLDYgKzIwLDkgQEAgZnVuY3Rpb24gZGVsZXRlU3VjY2VzcyhldnQpIHsK
ICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwg
J3N0cmluZ3ZlcnNpb24nKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0
aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkiLCAiVHlwZUVycm9yIik7CiAgICAg
ZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC01KSIs
ICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgSW5maW5pdHkpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBl
Y3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpIiwgIlR5
cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCBOYU4pIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRp
b25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkiLCAiVHlwZUVycm9yIik7CiAgICAg
ZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDB4MjAw
MDAwMDAwMDAwMDApIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25D
bGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBudWxsKSIsICJUeXBlRXJyb3IiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190095</attachid>
            <date>2013-02-25 11:23:04 -0800</date>
            <delta_ts>2013-02-26 09:19:25 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-96798-20130225111920.patch</filename>
            <type>text/plain</type>
            <size>75408</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzOTE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzZkNmY5NTRjYWE0OTM2
ODlmYjE2NDUwMThhMWM3YzY1YzFiNzA3Yy4uZGIzN2I3ODgxYmIyNjE3NjQzYTQ3MmUzODk2Yzg4
MjBlNWEyMDhkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAyLTEzICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgVGVzdHM6
IGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1s
OiBBZGRlZCBFbmZvcmNlUmFuZ2UgY2FzZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCQ3Vyc29yOjphZHZhbmNlKTog
UmVtb3ZlIGN1c3RvbSBib3VuZHMgY2hlY2tpbmcuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmg6IFVwZGF0ZSB0eXBlcy4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuaWRsOiBVc2UgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkZhY3Rvcnk6Om9w
ZW4pOiBSZW1vdmUgY3VzdG9tIGJvdW5kcyBjaGVja2luZy4KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5Lmg6IFVwZGF0ZSB0eXBlcy4KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDogVXNlIFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChKU1ZhbHVlVG9OYXRp
dmUpOiBBZGQgRklYTUUgdG8gaW1wbGVtZW50IFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06CisgICAgICAgIChHZW5lcmF0ZU5vcm1h
bEF0dHJTZXR0ZXIpOiBJZiBjb252ZXJzaW9uIG1heSB0aHJvdywgZ2VuZXJhdGUgY2hlY2tpbmcg
Y29kZS4KKyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKTogRGl0dG8uCisgICAgICAg
IChDb252ZXJzaW9uVGhyb3dzVHlwZUVycm9yKTogTGV0cyBjYWxsZXJzIG9mIEpTVmFsdWVUb05h
dGl2ZSBkZXRlcm1pbmUgaWYKKyAgICAgICAgY2hlY2tpbmcgY29kZSBpcyBuZWVkZWQuCisgICAg
ICAgIChKU1ZhbHVlVG9OYXRpdmUpOiBPcHRpb25hbGx5IGNhbGwgdHlwZSBjaGVja2luZyB2YXJp
YXRpb25zIG9mIGNvbnZlcnNpb24KKyAgICAgICAgbWV0aG9kcy4KKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0OiBBZGQgRW5mb3JjZVJhbmdlLgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbDogQWRkIEVuZm9yY2VSYW5nZSB0ZXN0
IG1ldGhvZHMuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5j
cHA6IFVwZGF0ZWQgZXhwZWN0YXRpb25zLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGlu
Zy5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDMyKTogQWNjZXB0IGZsYWdzLCByZXR1cm4g
c3VjY2Vzcy9mYWlsIHN0YXR1cy4KKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDMyKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjp0
b1VJbnQ2NCk6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5oOiBVcGRh
dGUgc2lnbmF0dXJlcywgZGVmaW5lIGZsYWcgZW51bSwgaGVscGVyIGZ1bmN0aW9ucy4KKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaDogTWFjcm9zIGZvciBnZW5lcmF0aW5n
IHR5cGUgY2hlY2tpbmcgd3JhcHBlcnMuCisgICAgICAgICogdGVzdGluZy9UeXBlQ29udmVyc2lv
bnMuaDogQWRkIEVuZm9yY2VSYW5nZSB0ZXN0IG1ldGhvZHMuCisgICAgICAgICogdGVzdGluZy9U
eXBlQ29udmVyc2lvbnMuaWRsOiBEaXR0by4KKwogMjAxMy0wMi0yMyAgSWx5YSBUaWtob25vdnNr
eSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogTmF0aXZl
IE1lbW9yeSBJbnN0cnVtZW50YXRpb246IHJlcGxhY2UgU3RyaW5nIHdpdGggY29uc3QgY2hhciog
aW4gTWVtb3J5T2JqZWN0SW5mbwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkN1cnNvci5jcHAKaW5kZXggNDY4ZWRiZWJhOTExMTY5YTA5M2EyZTdkMjM0OTA4OGZjYzI4
MzZhNS4uNjI3NjYwMzY3M2FhMDgzMDYyMDk2NjhhNWZlODMyOTM0ZmFmYjAzMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCkBAIC0xNTIsNyAr
MTUyLDcgQEAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBJREJDdXJzb3I6OnVwZGF0ZShTY3JpcHRT
dGF0ZSogc3RhdGUsIFNjcmlwdFZhbHVlJiB2YWx1ZSwKICAgICByZXR1cm4gb2JqZWN0U3RvcmUt
PnB1dChJREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2U6OkN1cnNvclVwZGF0ZSwgSURCQW55Ojpj
cmVhdGUodGhpcyksIHN0YXRlLCB2YWx1ZSwgbV9jdXJyZW50UHJpbWFyeUtleSwgZWMpOwogfQog
Ci12b2lkIElEQkN1cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUm
IGVjKQordm9pZCBJREJDdXJzb3I6OmFkdmFuY2UodW5zaWduZWQgbG9uZyBjb3VudCwgRXhjZXB0
aW9uQ29kZSYgZWMpCiB7CiAgICAgZWMgPSAwOwogICAgIElEQl9UUkFDRSgiSURCQ3Vyc29yOjph
ZHZhbmNlIik7CkBAIC0xNjYsOCArMTY2LDcgQEAgdm9pZCBJREJDdXJzb3I6OmFkdmFuY2UobG9u
ZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hlY2sgZm9yIDAgb25j
ZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgaWYgKGNvdW50IDwgMSB8fCBjb3VudCA+
IFVJTlRfTUFYKSB7CisgICAgaWYgKCFjb3VudCkgewogICAgICAgICBlYyA9IFR5cGVFcnJvcjsK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmgKaW5kZXggMWM4MzE2NDAyNmRhNDRiM2YwOGVmOTNmZjQyZTNhYjQ1ZmZm
NTkyYy4uYTcyYWJiMjNiYWI4MzUxODdkMGIyODc3MzUwYmY1NTgwZDM3NDA0OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKQEAgLTc1LDggKzc1LDcg
QEAgcHVibGljOgogICAgIElEQkFueSogc291cmNlKCkgY29uc3Q7CiAKICAgICBQYXNzUmVmUHRy
PElEQlJlcXVlc3Q+IHVwZGF0ZShTY3JpcHRTdGF0ZSosIFNjcmlwdFZhbHVlJiwgRXhjZXB0aW9u
Q29kZSYpOwotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgdW5zaWduZWQgbG9uZyBvbmNlIHdlYmtp
dC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UobG9uZyBsb25nLCBFeGNlcHRp
b25Db2RlJik7CisgICAgdm9pZCBhZHZhbmNlKHVuc2lnbmVkIGxvbmcsIEV4Y2VwdGlvbkNvZGUm
KTsKICAgICAvLyBGSVhNRTogVHJ5IHRvIG1vZGlmeSB0aGUgY29kZSBnZW5lcmF0b3Igc28gdGhp
cyBvdmVybG9hZCBpcyB1bm5lZWRlZC4KICAgICB2b2lkIGNvbnRpbnVlRnVuY3Rpb24oU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IGNvbnRpbnVlRnVuY3Rpb24o
c3RhdGljX2Nhc3Q8SURCS2V5Kj4oMCksIGVjKTsgfQogICAgIHZvaWQgY29udGludWVGdW5jdGlv
bihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUmIGtleSwgRXhjZXB0
aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCQ3Vyc29yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNv
ci5pZGwKaW5kZXggNDU3MGMxZWNjODdkMDhiOTAxMDAzYTNkYzhmMjc4NjFmMTE4OGVhMS4uNGI2
MjY1YjQyOGYyNmU5MWZjMDdiYjhiNWMyMjE1ZDdkYzQyMzQ4YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCkBAIC0zNSw4ICszNSw3IEBACiAK
ICAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGVdIElEQlJlcXVlc3QgdXBkYXRlKGluIGFueSB2YWx1
ZSkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgIC8vIEZJWE1FOiBNYWtlIHRo
aXMgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBs
YW5kcy4KLSAgICB2b2lkIGFkdmFuY2UoaW4gbG9uZyBsb25nIGNvdW50KQorICAgIHZvaWQgYWR2
YW5jZShpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGNvdW50KQogICAgICAgICByYWlz
ZXMgKERPTUV4Y2VwdGlvbik7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQs
IEltcGxlbWVudGVkQXM9Y29udGludWVGdW5jdGlvbl0gdm9pZCBjb250aW51ZShpbiBbT3B0aW9u
YWxdIGFueSBrZXkpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKaW5kZXggZDAxMjBmNjBh
ODlhZGZmYjdkMTY1YzlhYWI3M2Y5Zjc2ZjMxMTBiMC4uMWQ1ZjBmYmIxYWJmMWU1YWRkZDczODUz
NzkzZjlkMGRjMTgwMmY3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCRmFjdG9yeS5jcHAKQEAgLTExMSwxMSArMTExLDkgQEAgUGFzc1JlZlB0cjxJREJSZXF1
ZXN0PiBJREJGYWN0b3J5OjpnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnQKICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIAotUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1
ZXN0PiBJREJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNv
bnN0IFN0cmluZyYgbmFtZSwgaW50NjRfdCB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJiBlYykKK1Bh
c3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIHVuc2lnbmVkIGxvbmcgbG9u
ZyB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKLSAgICAvLyBGSVhNRTogVGhpcyBzaG91
bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRz
LgotICAgIGNvbnN0IGludDY0X3QgbWF4RUNNQVNjcmlwdEludGVnZXIgPSAweDIwMDAwMDAwMDAw
MDAwTEwgLSAxOwotICAgIGlmICh2ZXJzaW9uIDwgMSB8fCB2ZXJzaW9uID4gbWF4RUNNQVNjcmlw
dEludGVnZXIpIHsKKyAgICBpZiAoIXZlcnNpb24pIHsKICAgICAgICAgZWMgPSBUeXBlRXJyb3I7
CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkZhY3RvcnkuaAppbmRleCBjYjFiN2IwYjM3NmI3YWE2ZDg0OWM2ODQ4YjMwZTNl
MWNlNjAyZWY4Li45ODFkZThjMzI4ZjhhMmYxZWQ5ZTc3OGJjYmQ5MGQyNmZkYmExZDE2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCkBAIC01OCw3
ICs1OCw3IEBAIHB1YmxpYzoKICAgICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IGdldERhdGFiYXNl
TmFtZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIFBh
c3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
Y29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgUGFzc1JlZlB0cjxJREJP
cGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcm
IG5hbWUsIGludDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOworICAgIFBhc3NSZWZQdHI8
SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3Ry
aW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOwog
ICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gZGVsZXRlRGF0YWJhc2UoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgRXhjZXB0aW9uQ29kZSYpOwogCiAg
ICAgc2hvcnQgY21wKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTY3JpcHRWYWx1ZSYg
Zmlyc3QsIGNvbnN0IFNjcmlwdFZhbHVlJiBzZWNvbmQsIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKaW5kZXggYTUx
NjA1YjJiNGUzMTI5N2JiNTVkYTNiNTE3ZDVkZDEyYzNkMjJhYy4uZWY1MWJiZjgzODdjYThiZDBl
NmFlYmM1MTA2M2I4ZDVlNjhkNGY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAgLTMxLDggKzMxLDcgQEAKICAgICBbQ2FsbFdpdGg9
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgSW1wbGVtZW50ZWRBcz1nZXREYXRhYmFzZU5hbWVzXSBJ
REJSZXF1ZXN0IHdlYmtpdEdldERhdGFiYXNlTmFtZXMoKQogICAgICAgICByYWlzZXMgKERPTUV4
Y2VwdGlvbik7CiAKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFuZ2VdIHVuc2ln
bmVkIGxvbmcgbG9uZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBbQ2FsbFdp
dGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCT3BlbkRCUmVxdWVzdCBvcGVuKGluIERPTVN0
cmluZyBuYW1lLCBpbiBbT3B0aW9uYWxdIGxvbmcgbG9uZyB2ZXJzaW9uKQorICAgIFtDYWxsV2l0
aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IG9wZW4oaW4gRE9NU3Ry
aW5nIG5hbWUsIGluIFtFbmZvcmNlUmFuZ2UsIE9wdGlvbmFsXSB1bnNpZ25lZCBsb25nIGxvbmcg
dmVyc2lvbikKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogICAgIFtDYWxsV2l0aD1T
Y3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IGRlbGV0ZURhdGFiYXNlKGlu
IERPTVN0cmluZyBuYW1lKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4
IDMxMGRjOTVmMGNhNTVjZjk1YWQzMzg2YThkNGRmYjM3MDg0OWJmMzguLjUzMjdmMTA0ZDJiZmI5
M2YyZTA5YjAxZmM3ZWMxZDcxYTBjNzQyYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMTUyLDYgKzMxNTIsNyBAQCBz
dWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAgcmV0dXJuICIkdmFsdWUudG9Cb29sZWFuKGV4ZWMpIiBp
ZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9OdW1iZXIoZXhlYyki
IGlmICR0eXBlIGVxICJkb3VibGUiOwogICAgIHJldHVybiAiJHZhbHVlLnRvRmxvYXQoZXhlYyki
IGlmICR0eXBlIGVxICJmbG9hdCI7CisgICAgIyBGSVhNRTogQWRkIFtFbmZvcmNlUmFuZ2VdIHN1
cHBvcnQKICAgICByZXR1cm4gIiR2YWx1ZS50b0ludDMyKGV4ZWMpIiBpZiAkdHlwZSBlcSAibG9u
ZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKICAgICByZXR1cm4gIiR2YWx1ZS50b1VJbnQzMihleGVj
KSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25lZCBzaG9y
dCI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLnRvSW50ZWdlcihleGVj
KSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIGxv
bmciOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yVjgucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JWOC5wbQppbmRleCAzYjVjYmYwZWEzMWYyOTUwNGM2YWM0NjEzNDg0YjVmZmQ1NjgyYzM5Li5i
YjQwMjQzODk4NWIwZWQzMjIwZWNjMTAxZWIwM2IyODY0N2I2NzU1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpAQCAtMTI4OSwx
NCArMTI4OSwxOSBAQCBFTkQKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIg
ICAgICAgIHJldHVybjtcbiIpOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAgICAgbXkg
JHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwg
ImluZm8uR2V0SXNvbGF0ZSgpIik7CiAgICAgICAgIG15ICRhcnJheVR5cGUgPSAkY29kZUdlbmVy
YXRvci0+R2V0QXJyYXlUeXBlKCRuYXRpdmVUeXBlKTsKIAogICAgICAgICBpZiAoJG5hdGl2ZVR5
cGUgPX4gL15WOFN0cmluZ1Jlc291cmNlLykgeworICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNW
YWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNv
bGF0ZSgpIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgICIgLiBD
b252ZXJ0VG9WOFN0cmluZ1Jlc291cmNlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgJG5hdGl2ZVR5
cGUsICJ2IiwgJHZhbHVlLCAiVk9JRCIpIC4gIlxuIik7CiAgICAgICAgIH0gZWxzaWYgKCRhcnJh
eVR5cGUpIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmli
dXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICBWZWN0b3I8JGFycmF5VHlwZT4gdiA9ICR2
YWx1ZTtcbiIpOworICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSkgeworICAgICAgICAgICAgbXkgJHZhbHVl
ID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8u
R2V0SXNvbGF0ZSgpIiwgImNhblRocm93RXhjZXB0aW9uIik7CisgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudERlY2xzLCAiICAgIFRZUEVDSEVDS19WT0lEKCRuYXRpdmVUeXBlLCB2LCAkdmFs
dWUsIGluZm8uR2V0SXNvbGF0ZSgpKTtcbiIpOwogICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZh
bHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dERlY2xzLCAiICAgICRuYXRpdmVUeXBlIHYgPSAkdmFsdWU7XG4iKTsKICAgICAgICAgfQogICAg
IH0KQEAgLTE4NTksOCArMTg2NCwxMyBAQCBzdWIgR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2sKICAg
ICAgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgICAgIHJldHVy
biB0aHJvd1R5cGVFcnJvcigwLCBhcmdzLkdldElzb2xhdGUoKSk7XG4iOwogICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAu
PSAiICAgIFY4VFJZQ0FUQ0goJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAiIC4KLSAgICAg
ICAgICAgICAgICAgSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0ZXIsICRvcHRpb25hbCAmJiAkb3B0
aW9uYWwgZXEgIkRlZmF1bHRJc051bGxTdHJpbmciID8gImFyZ3VtZW50T3JOdWxsKGFyZ3MsICRw
YXJhbUluZGV4KSIgOiAiYXJnc1skcGFyYW1JbmRleF0iLCAiYXJncy5HZXRJc29sYXRlKCkiKSAu
ICIpO1xuIjsKKyAgICAgICAgICAgIGlmICgkcGFyYW1ldGVyLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiRW5mb3JjZVJhbmdlIn0pIHsKKyAgICAgICAgICAgICAgICBteSAkdmFsdWUgPSBKU1ZhbHVl
VG9OYXRpdmUoJHBhcmFtZXRlciwgJG9wdGlvbmFsICYmICRvcHRpb25hbCBlcSAiRGVmYXVsdElz
TnVsbFN0cmluZyIgPyAiYXJndW1lbnRPck51bGwoYXJncywgJHBhcmFtSW5kZXgpIiA6ICJhcmdz
WyRwYXJhbUluZGV4XSIsICJhcmdzLkdldElzb2xhdGUoKSIsICJjYW5UaHJvd0V4Y2VwdGlvbiIp
OworICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FU
Q0hfV0lUSF9UWVBFQ0hFQ0soJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFsdWUsIGFy
Z3MuR2V0SXNvbGF0ZSgpKTtcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
ICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAkb3B0aW9uYWwgJiYg
JG9wdGlvbmFsIGVxICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJhcmd1bWVudE9yTnVsbChhcmdz
LCAkcGFyYW1JbmRleCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwgImFyZ3MuR2V0SXNvbGF0ZSgp
Iik7CisgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgVjhUUllD
QVRDSCgkbmF0aXZlVHlwZSwgJHBhcmFtZXRlck5hbWUsICR2YWx1ZSk7XG4iOworICAgICAgICAg
ICAgfQogICAgICAgICAgICAgaWYgKCRuYXRpdmVUeXBlIGVxICdEaWN0aW9uYXJ5JykgewogICAg
ICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgaWYgKCEkcGFyYW1ldGVy
TmFtZS5pc1VuZGVmaW5lZE9yTnVsbCgpICYmICEkcGFyYW1ldGVyTmFtZS5pc09iamVjdCgpKVxu
IjsKICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgICAgICByZXR1
cm4gdGhyb3dUeXBlRXJyb3IoXCJOb3QgYW4gb2JqZWN0LlwiLCBhcmdzLkdldElzb2xhdGUoKSk7
XG4iOwpAQCAtMzkyOSwxNiArMzkzOSwyNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAgbXkg
JHNpZ25hdHVyZSA9IHNoaWZ0OwogICAgIG15ICR2YWx1ZSA9IHNoaWZ0OwogICAgIG15ICRnZXRJ
c29sYXRlID0gc2hpZnQ7CisgICAgbXkgJG1heUZhaWwgPSBzaGlmdDsKIAogICAgIG15ICR0eXBl
ID0gJHNpZ25hdHVyZS0+dHlwZTsKKyAgICBteSAkaW50Q29udmVyc2lvbiA9ICRzaWduYXR1cmUt
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSA/ICJFbmZvcmNlUmFuZ2UiIDog
Ik5vcm1hbENvbnZlcnNpb24iOworICAgIGRpZSAiQ2FuJ3QgaGFuZGxlIFtFbmZvcmNlUmFuZ2Vd
IHVubGVzcyBjYWxsZWQgZnJvbSBjb250ZXh0IHRoYXQgaGFuZGxlcyBmYWlsdXJlcy4iIGlmICRp
bnRDb252ZXJzaW9uIGVxICJFbmZvcmNlUmFuZ2UiIGFuZCAhJG1heUZhaWw7CiAKICAgICByZXR1
cm4gIiR2YWx1ZSIgaWYgJHR5cGUgZXEgIkpTT2JqZWN0IjsKICAgICByZXR1cm4gIiR2YWx1ZS0+
Qm9vbGVhblZhbHVlKCkiIGlmICR0eXBlIGVxICJib29sZWFuIjsKICAgICByZXR1cm4gInN0YXRp
Y19jYXN0PCR0eXBlPigkdmFsdWUtPk51bWJlclZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiZmxvYXQi
IG9yICR0eXBlIGVxICJkb3VibGUiOwogCi0gICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSkiIGlm
ICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwotICAgIHJldHVybiAidG9VSW50
MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNp
Z25lZCBzaG9ydCI7Ci0gICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1
bnNpZ25lZCBsb25nIGxvbmciIG9yICR0eXBlIGVxICJsb25nIGxvbmciOworICAgIGlmICgkbWF5
RmFpbCkgeworICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwg
b2spIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKKyAgICAgICAgcmV0
dXJuICJ0b1VJbnQzMigkdmFsdWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVxICJ1
bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAgICAgICByZXR1
cm4gInRvSW50NjQoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2spIiBpZiAkdHlwZSBlcSAibG9u
ZyBsb25nIjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFsdWUsICRpbnRDb252ZXJzaW9u
LCBvaykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIGxvbmciOworICAgIH0gZWxzZSB7Cisg
ICAgICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5
cGUgZXEgInNob3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUpIiBpZiAkdHlw
ZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKKyAgICAg
ICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciOworICAg
ICAgICByZXR1cm4gInRvVUludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25n
IGxvbmciOworICAgIH0KICAgICByZXR1cm4gInN0YXRpY19jYXN0PFJhbmdlOjpDb21wYXJlSG93
PigkdmFsdWUtPkludDMyVmFsdWUoKSkiIGlmICR0eXBlIGVxICJDb21wYXJlSG93IjsKICAgICBy
ZXR1cm4gInRvV2ViQ29yZURhdGUoJHZhbHVlKSIgaWYgJHR5cGUgZXEgIkRhdGUiOwogICAgIHJl
dHVybiAidG9ET01TdHJpbmdMaXN0KCR2YWx1ZSwgJGdldElzb2xhdGUpIiBpZiAkdHlwZSBlcSAi
RE9NU3RyaW5nTGlzdCI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0lETEF0dHJpYnV0ZXMudHh0IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9J
RExBdHRyaWJ1dGVzLnR4dAppbmRleCAxODYxMTE4MTUwOWVjM2I1Y2M3NGMwYTlmMzA4YjZiMDU5
OGNhMzQyLi5jNTNlNzdiOTJjOTgzZDEwMjU2ZmRmMzA3ODdmNmM1YjE0NWQyOWU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKQEAg
LTUyLDYgKzUyLDcgQEAgRG9Ob3RDaGVja0NvbnN0YW50cwogRG9Ob3RDaGVja1NlY3VyaXR5CiBE
b05vdENoZWNrU2VjdXJpdHlPbkdldHRlcgogRG9Ob3RDaGVja1NlY3VyaXR5T25TZXR0ZXIKK0Vu
Zm9yY2VSYW5nZQogRXZlbnRUYXJnZXQKIEV4dGVuZHNET01HbG9iYWxPYmplY3QKIEdlbmVyYXRl
SXNSZWFjaGFibGU9SW1wbERvY3VtZW50fEltcGxFbGVtZW50Um9vdHxJbXBsT3duZXJOb2RlUm9v
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RP
YmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRs
CmluZGV4IGMwNjMwZTM3MmNlNmQ3ZTQwYjEyMmQ5MmNhYmFmNmQyOTZmZmZlNDguLmE3YjY4Yjgw
ZjBkY2Q1MjFmZjRiYjllNTU3MjVhZWRhNTg5NDM1YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAgLTE0Nyw2ICsxNDcsMTkgQEAg
ZW51bSBUZXN0RW51bVR5cGUgeyAiIiwgIkVudW1WYWx1ZTEiLCAiRW51bVZhbHVlMiIsICJFbnVt
VmFsdWUzIiB9OwogICAgIHZvaWQgICAgbWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxBcmco
aW4gW0NhbGxiYWNrLCBPcHRpb25hbF0gVGVzdENhbGxiYWNrIGNhbGxiYWNrKTsKICNlbmRpZgog
CisjaWYgZGVmaW5lZChURVNUSU5HX1Y4KQorICAgIC8vICdFbmZvcmNlUmFuZ2UnIGV4dGVuZGVk
IGF0dHJpYnV0ZQorICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyKGluIFtF
bmZvcmNlUmFuZ2VdIGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VS
YW5nZVVJbnQzMihpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIHZhbHVlKTsKKyAgICB2
b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NChpbiBbRW5mb3JjZVJhbmdlXSBsb25n
IGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NChp
biBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpOworCisgICAgYXR0cmli
dXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgZW5mb3JjZWRSYW5nZUxvbmdBdHRyOworICAgIGF0dHJp
YnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExv
bmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSBsb25nIGxvbmcgZW5mb3JjZWRS
YW5nZUxvbmdMb25nQXR0cjsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQg
bG9uZyBsb25nIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cjsKKyNlbmRpZgorCiAg
ICAgLy8gJ0NvbmRpdGlvbmFsJyBleHRlbmRlZCBhdHRyaWJ1dGUKICAgICBbQ29uZGl0aW9uYWw9
Q29uZGl0aW9uMV0gYXR0cmlidXRlIGxvbmcgY29uZGl0aW9uYWxBdHRyMTsKICAgICBbQ29uZGl0
aW9uYWw9Q29uZGl0aW9uMSZDb25kaXRpb24yXSBhdHRyaWJ1dGUgbG9uZyBjb25kaXRpb25hbEF0
dHIyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4
L1Y4VGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0T2JqLmNwcAppbmRleCA2NmRjZGNhMDc4M2RiNjUzNzUzMmFkZmJkMjBiMzBmYTlhNjAy
ZmU4Li44ZTE0Y2FjMTNmNjkwMmNmODlhMjgxNjFhMDI3MWJiNmEyNTBhZmY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNw
cApAQCAtMjkxLDcgKzI5MSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdW5zaWdu
ZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4CiBzdGF0aWMgdm9p
ZCB1bnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5h
bWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBp
bmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xk
ZXIoKSk7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVlKTsKKyAgICB1
bnNpZ25lZCBsb25nIGxvbmcgdiA9IHRvVUludDY0KHZhbHVlKTsKICAgICBpbXAtPnNldFVuc2ln
bmVkTG9uZ0xvbmdBdHRyKHYpOwogICAgIHJldHVybjsKIH0KQEAgLTg5Miw2ICs4OTIsODIgQEAg
c3RhdGljIHZvaWQgd2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJT
ZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHIKICAgICByZXR1cm47CiB9CiAKK3N0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBU
ZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJl
dHVybiB2OEludGVnZXIoaW1wLT5lbmZvcmNlZFJhbmdlTG9uZ0F0dHIoKSwgaW5mby5HZXRJc29s
YXRlKCkpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VM
b25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJu
YWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0
YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
aW5mby5Ib2xkZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVl
LCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0RW5m
b3JjZWRSYW5nZUxvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJHZXR0ZXIodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7
CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsK
KyAgICByZXR1cm4gdjhVbnNpZ25lZEludGVnZXIoaW1wLT5lbmZvcmNlZFJhbmdlVW5zaWduZWRM
b25nQXR0cigpLCBpbmZvLkdldElzb2xhdGUoKSk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2so
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
Cit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRM
b25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2Vk
UmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGlu
Zm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRl
cigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9JRCh1bnNpZ25lZCwgdiwgdG9VSW50MzIodmFsdWUsIEVu
Zm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5zZXRFbmZvcmNl
ZFJhbmdlVW5zaWduZWRMb25nQXR0cih2KTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXIodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7
CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsK
KyAgICByZXR1cm4gdjg6Ok51bWJlcjo6TmV3KHN0YXRpY19jYXN0PGRvdWJsZT4oaW1wLT5lbmZv
cmNlZFJhbmdlTG9uZ0xvbmdBdHRyKCkpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAg
IHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJH
ZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nTG9u
Z0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6
OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0
T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIFRZUEVD
SEVDS19WT0lEKGxvbmcgbG9uZywgdiwgdG9JbnQ2NCh2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayks
IGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0
dHIodik7CisgICAgcmV0dXJuOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVu
Zm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9i
aiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4g
djg6Ok51bWJlcjo6TmV3KHN0YXRpY19jYXN0PGRvdWJsZT4oaW1wLT5lbmZvcmNlZFJhbmdlVW5z
aWduZWRMb25nTG9uZ0F0dHIoKSkpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sK
KyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdM
b25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2Vk
UmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+
IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5I
b2xkZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQodW5zaWduZWQgbG9uZyBsb25nLCB2LCB0b1VJ
bnQ2NCh2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBp
bXAtPnNldEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cih2KTsKKyAgICByZXR1cm47
Cit9CisKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKIAogc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBjb25kaXRpb25hbEF0dHIxQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTE3MjcsNiArMTgwMyw0NiBAQCBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhDYWxsYmFja0FuZE9wdGlvbmFs
QXJnTWV0aG9kKGNvbnN0IHY4OjpBcgogICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOwogfQogCitz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMk1l
dGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgp
IDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5H
ZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJn
cy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyhpbnQsIHZhbHVlLCB0
b0ludDMyKGFyZ3NbMF0sIEVuZm9yY2VSYW5nZSwgb2spLCBhcmdzLkdldElzb2xhdGUoKSk7Cisg
ICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIodmFsdWUpOworICAgIHJldHVybiB2
OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VVSW50MzJNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sK
KyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3Vn
aEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBW
OFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9U
WVBFQ0hFQ0sodW5zaWduZWQsIHZhbHVlLCB0b1VJbnQzMihhcmdzWzBdLCBFbmZvcmNlUmFuZ2Us
IG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5n
ZVVJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQor
ICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xh
dGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRl
cigpKTsKKyAgICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKGxvbmcgbG9uZywgdmFsdWUsIHRv
SW50NjQoYXJnc1swXSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAg
ICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4
VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQorewor
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdo
QXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZ
UEVDSEVDSyh1bnNpZ25lZCBsb25nIGxvbmcsIHZhbHVlLCB0b1VJbnQ2NChhcmdzWzBdLCBFbmZv
cmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVu
Zm9yY2VSYW5nZVVJbnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisK
ICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKIAogc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBj
b25kaXRpb25hbE1ldGhvZDFNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKQEAgLTIy
NzEsNiArMjM4NywxNCBAQCBzdGF0aWMgY29uc3QgVjhET01Db25maWd1cmF0aW9uOjpCYXRjaGVk
QXR0cmlidXRlIFY4VGVzdE9iakF0dHJzW10gPSB7CiAgICAgeyJ3aXRoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZSIsIFRlc3RPYmpWOEludGVy
bmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0
dHJpYnV0ZUF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRF
eGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRlQXR0clNldHRl
ciwgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRF
RkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAv
KiBvbiBpbnN0YW5jZSAqL30sCiAgICAgLy8gQXR0cmlidXRlICd3aXRoU2NyaXB0QXJndW1lbnRz
QW5kQ2FsbFN0YWNrQXR0cmlidXRlJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0NhbGxX
aXRoJykKICAgICB7IndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGUiLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0
ZUF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRBcmd1bWVu
dHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRp
Y19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQ
cm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAv
LyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4
dEF0dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZUxvbmdBdHRyIiwgVGVz
dE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjaywg
VGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXIsIDAgLyog
bm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwg
c3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5z
dGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0
dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVu
Zm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2Vk
UmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5h
bDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEg
Ki8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19j
YXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICov
fSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHInIChUeXBlOiAn
YXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2VkUmFuZ2VM
b25nTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0
ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25n
TG9uZ0F0dHJBdHRyU2V0dGVyLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nl
c3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0
ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2Vu
Zm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0
dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdB
dHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0
ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNp
Z25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIsIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8
djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5
QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAogI2lmIEVOQUJMRShD
b25kaXRpb24xKQogICAgIC8vIEF0dHJpYnV0ZSAnY29uZGl0aW9uYWxBdHRyMScgKFR5cGU6ICdh
dHRyaWJ1dGUnIEV4dEF0dHI6ICdDb25kaXRpb25hbCcpCiAgICAgeyJjb25kaXRpb25hbEF0dHIx
IiwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyQ2FsbGJhY2ss
IFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbEF0dHIxQXR0clNldHRlciwgMCAvKiBubyBk
YXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0
aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5j
ZSAqL30sCkBAIC0yMzU1LDYgKzI0NzksMTAgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJh
dGlvbjo6QmF0Y2hlZENhbGxiYWNrIFY4VGVzdE9iakNhbGxiYWNrc1tdID0gewogICAgIHsibWV0
aG9kV2l0aENhbGxiYWNrQXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhDYWxsYmFj
a0FyZ01ldGhvZH0sCiAgICAgeyJtZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFja0Fy
ZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdBbmRDYWxsYmFj
a0FyZ01ldGhvZH0sCiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZyIsIFRl
c3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZ01ldGhvZH0s
CisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6
bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyTWV0aG9kfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZv
cmNlUmFuZ2VVSW50MzIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5n
ZVVJbnQzMk1ldGhvZH0sCisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQiLCBUZXN0
T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kfSwKKyAgICB7
Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9k
V2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZH0sCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAg
ICAgeyJjb25kaXRpb25hbE1ldGhvZDEiLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9uYWxN
ZXRob2QxTWV0aG9kfSwKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAKaW5kZXggZDMxZmY5M2I2
NjhmZjIzY2Y1NzNkNGJhNGViZWUxNWZkZGUwMTE4OS4uNjJkZjg0NjM5NjZkNmRjY2I3NmEzOTI5
MGM5M2NmMGNlY2RkNzRiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwCkBAIC05NCw3ICs5NCw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0
dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4CiBzdGF0aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nQXR0
ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFs
dWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RUeXBl
ZGVmcyogaW1wID0gVjhUZXN0VHlwZWRlZnM6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAg
IHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5zaWduZWQgbG9u
ZyBsb25nIHYgPSB0b1VJbnQ2NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZExvbmdMb25n
QXR0cih2KTsKICAgICByZXR1cm47CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOEJpbmRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5k
aW5nLmNwcAppbmRleCA4NjNmNGZkNmFjMGE2NTViZTkyODRmN2NmOGNjMDQzOGQ0MjJmNTY3Li40
NDQyZThkOGUzN2M0MmJmNDU4ZjA4MWE3MTFlZjA2ZTBjYWRlZGE1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAKQEAgLTEwMyw0MCArMTAzLDQ4IEBAIFBhc3NSZWZQ
dHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxsYmFj
aykKICAgICByZXR1cm4gTm9kZUZpbHRlcjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlvbjo6
Y3JlYXRlKGNhbGxiYWNrKSk7CiB9CiAKLWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVl
PiB2YWx1ZSwgYm9vbCYgb2spCitjb25zdCBpbnQzMl90IGtNaW5JbnQzMiA9IC0weDgwMDAwMDAw
OworY29uc3QgaW50MzJfdCBrTWF4SW50MzIgPSAweDdmZmZmZmZmOworY29uc3QgdWludDMyX3Qg
a01heFVJbnQzMiA9IDB4ZmZmZmZmZmY7CisKK2ludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0
aW9uLCBib29sJiBvaykKIHsKICAgICBvayA9IHRydWU7Ci0gICAgCisKICAgICAvLyBGYXN0IGNh
c2UuIFRoZSB2YWx1ZSBpcyBhbHJlYWR5IGEgMzItYml0IGludGVnZXIuCiAgICAgaWYgKHZhbHVl
LT5Jc0ludDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1ZSgpOwotICAgIAor
CiAgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CiAgICAgdjg6
OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOwogICAg
IGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAgICAg
ICAgIHJldHVybiAwOwogICAgIH0KLSAgICAKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVu
Zm9yY2VSYW5nZSkgeworICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsK
KyAgICAgICAgaWYgKHN0ZDo6aXNuYW4oeCkgfHwgc3RkOjppc2luZih4KSkgeworICAgICAgICAg
ICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAg
IHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwg
a01pbkludDMyIHx8IHggPiBrTWF4SW50MzIpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7Cisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiB4OworICAg
IH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9yIHRvIGFuIGluZmlu
aXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKLSAg
ICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihudW1iZXJWYWx1ZSkp
IHsKLSAgICAgICAgb2sgPSBmYWxzZTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAot
ICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgMzItYml0IGludGVnZXI/Ci0g
ICAgdjg6OkxvY2FsPHY4OjpJbnQzMj4gaW50VmFsdWUgPSB2YWx1ZS0+VG9JbnQzMigpOwotICAg
IGlmIChpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsKLSAgICAgICAgb2sgPSBmYWxzZTsKKyAgICBpZiAo
c3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihudW1iZXJWYWx1ZSkpCiAgICAg
ICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBSZXR1cm4gdGhlIHJlc3VsdCBvZiB0
aGUgaW50MzIgY29udmVyc2lvbi4KLSAgICByZXR1cm4gaW50VmFsdWUtPlZhbHVlKCk7CisgICAg
cmV0dXJuIG51bWJlck9iamVjdC0+SW50MzJWYWx1ZSgpOwogfQotICAgIAotdWludDMyX3QgdG9V
SW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKKwordWludDMyX3Qg
dG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNv
bmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwog
CkBAIC0xNDQsMTAgKzE1MiwxNiBAQCB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gdmFsdWUsIGJvb2wmIG9rKQogICAgIGlmICh2YWx1ZS0+SXNVaW50MzIoKSkKICAgICAg
ICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgpOwogCisgICAgLy8gRmFzdCBjYXNlLiBUaGUg
dmFsdWUgaXMgYSAzMi1iaXQgc2lnbmVkIGludGVnZXIgLSBwb3NzaWJseSBwb3NpdGl2ZT8KICAg
ICBpZiAodmFsdWUtPklzSW50MzIoKSkgewogICAgICAgICBpbnQzMl90IHJlc3VsdCA9IHZhbHVl
LT5JbnQzMlZhbHVlKCk7CiAgICAgICAgIGlmIChyZXN1bHQgPj0gMCkKICAgICAgICAgICAgIHJl
dHVybiByZXN1bHQ7CisgICAgICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkg
eworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAg
ICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogCiAgICAgLy8gQ2FuIHRoZSB2YWx1
ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CkBAIC0xNTcsMjEgKzE3MSwxMTAgQEAgdWludDMy
X3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKICAgICAg
ICAgcmV0dXJuIDA7CiAgICAgfQogCisgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJh
bmdlKSB7CisgICAgICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOworICAgICAg
ICBpZiAoc3RkOjppc25hbih4KSB8fCBzdGQ6OmlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9
IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4
IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAwIHx8IHgg
PiBrTWF4VUludDMyKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsKKyAgICB9CisKICAgICAvLyBE
b2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZpbml0eT8KICAgICBkb3Vi
bGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0gICAgaWYgKHN0ZDo6aXNu
YW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKSB7CisgICAgaWYgKHN0
ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKQorICAgICAg
ICByZXR1cm4gMDsKKyAgICByZXR1cm4gbnVtYmVyT2JqZWN0LT5VaW50MzJWYWx1ZSgpOworfQor
CitpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJbnRlZ2VyQ29u
dmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCit7CisgICAgb2sg
PSB0cnVlOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdl
ci4KKyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5JbnQz
MlZhbHVlKCk7CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJl
cj8KKyAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVt
YmVyKCk7CisgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBm
YWxzZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgLy8gQ2FuIHRoZSB2YWx1ZSBi
ZSBjb252ZXJ0ZWQgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8
djg6OlVpbnQzMj4gdWludFZhbHVlID0gdmFsdWUtPlRvVWludDMyKCk7Ci0gICAgaWYgKHVpbnRW
YWx1ZS5Jc0VtcHR5KCkpIHsKKyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsK
KworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICBpZiAo
aXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAg
ICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAq
IGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IC0oa0pTTWF4SW50ZWdlciAtIDEpIHx8
IHggPiAoa0pTTWF4SW50ZWdlciAtIDEpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAg
ICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQor
CisgICAgLy8gTmFOcyBhbmQgKy8tSW5maW5pdHkgc2hvdWxkIGJlIDAsIG90aGVyd2lzZSBtb2R1
bG8gMl42NC4KKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgaW50ZWdlcjsKKyAgICBkb3VibGVUb0lu
dGVnZXIoeCwgaW50ZWdlcik7CisgICAgcmV0dXJuIGludGVnZXI7Cit9CisKK3VpbnQ2NF90IHRv
VUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25Db25m
aWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1ZTsKKwor
ICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIu
CisgICAgaWYgKHZhbHVlLT5Jc1VpbnQzMigpKQorICAgICAgICByZXR1cm4gdmFsdWUtPlVpbnQz
MlZhbHVlKCk7CisKKyAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCBpbnRl
Z2VyLgorICAgIGlmICh2YWx1ZS0+SXNJbnQzMigpKSB7CisgICAgICAgIGludDMyX3QgcmVzdWx0
ID0gdmFsdWUtPkludDMyVmFsdWUoKTsKKyAgICAgICAgaWYgKHJlc3VsdCA+PSAwKQorICAgICAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0gRW5mb3Jj
ZVJhbmdlKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9CisKKyAgICAvLyBDYW4g
dGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8djg6Ok51
bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51bWJlck9i
amVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIDA7
CiAgICAgfQogCi0gICAgcmV0dXJuIHVpbnRWYWx1ZS0+VmFsdWUoKTsKKyAgICBkb3VibGUgeCA9
IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9y
Y2VSYW5nZSkgeworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAg
ICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAg
ICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8
IDAgfHwgeCA+IChrSlNNYXhJbnRlZ2VyIC0gMSkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7
CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4geDsKKyAg
ICB9CisKKyAgICAvLyBOYU5zIGFuZCArLy1JbmZpbml0eSBzaG91bGQgYmUgMCwgb3RoZXJ3aXNl
IG1vZHVsbyAyXjY0LgorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnRlZ2VyOworICAgIGRvdWJs
ZVRvSW50ZWdlcih4LCBpbnRlZ2VyKTsKKyAgICByZXR1cm4gaW50ZWdlcjsKIH0KIAogdjg6OlBl
cnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGNyZWF0ZVJhd1RlbXBsYXRlKHY4OjpJc29s
YXRlKiBpc29sYXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhC
aW5kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAppbmRleCA5
NjJiMDg2OTllODFlZmE3MDE1NGMzZDBhYWE1MTM1MTZhMjYxOTk1Li40NzIzOTc5NTI1MmM1MWY5
MjJlZmQ4NWIxZTk1NGJiZjRjNGM3ZjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOEJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJp
bmRpbmcuaApAQCAtNTYsNiArNTYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3Mg
V29ybGRDb250ZXh0SGFuZGxlOwogCiAgICAgY29uc3QgaW50IGtNYXhSZWN1cnNpb25EZXB0aCA9
IDIyOworICAgIGNvbnN0IGxvbmcgbG9uZyBrSlNNYXhJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAw
MExMOwogCiAgICAgLy8gU2NoZWR1bGUgYSBET00gZXhjZXB0aW9uIHRvIGJlIHRocm93biwgaWYg
dGhlIGV4Y2VwdGlvbiBjb2RlIGlzIGRpZmZlcmVudAogICAgIC8vIGZyb20gemVyby4KQEAgLTM0
OCwzNiArMzQ5LDY2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIFBhc3NSZWZQdHI8Tm9k
ZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPik7CiAKLSAgICAvLyBD
b252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50ZWdlci4gIFRoZSBjb252ZXJzaW9uIGZhaWxz
IGlmIHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBv
ciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgaW50IHRvSW50MzIodjg6
OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvayk7CisgICAgLy8gQ29udmVyc2lvbiBm
bGFncywgdXNlZCBpbiB0b0ludFhYL3RvVUludFhYLgorICAgIGVudW0gSW50ZWdlckNvbnZlcnNp
b25Db25maWd1cmF0aW9uIHsKKyAgICAgICAgTm9ybWFsQ29udmVyc2lvbiwKKyAgICAgICAgRW5m
b3JjZVJhbmdlLAorICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IENsYW1wCisgICAgfTsKKwor
ICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCBzaWduZWQgaW50ZWdlci4gVGhlIGNv
bnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0
byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRw
Oi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLWxvbmcKKyAgICBpbnQzMl90IHRvSW50MzIodjg6
OkhhbmRsZTx2ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wm
IG9rKTsKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2
YWx1ZSwgYm9vbCYgb2spIHsgcmV0dXJuIHRvSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24s
IG9rKTsgfQogCiAgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IGludGVnZXIgYXNz
dW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCi0gICAgaW5saW5lIGludCB0b0ludDMy
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMy
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGJvb2wgb2s7Ci0g
ICAgICAgIHJldHVybiB0b0ludDMyKHZhbHVlLCBvayk7CisgICAgICAgIHJldHVybiB0b0ludDMy
KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CiAgICAgfQogCi0gICAgLy8gQ29udmVydCBh
IHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuICBUaGUgY29udmVyc2lvbiBmYWls
cyBpZiB0aGUKLSAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGFuIHVuc2lnbmVk
IGludGVnZXIgb3IgY29udmVydHMgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5LgotICAgIHVpbnQz
Ml90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spOworICAg
IC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLiBUaGUgY29u
dmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRv
IGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6
Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtdW5zaWduZWQtbG9uZworICAgIHVpbnQzMl90IHRv
VUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0
aW9uLCBib29sJiBvayk7CisgICAgaW5saW5lIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spIHsgcmV0dXJuIHRvVUludDMyKHZhbHVlLCBOb3Jt
YWxDb252ZXJzaW9uLCBvayk7IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJp
dCB1bnNpZ25lZCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgog
ICAgIGlubGluZSB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUp
CiAgICAgewogICAgICAgICBib29sIG9rOwotICAgICAgICByZXR1cm4gdG9VSW50MzIodmFsdWUs
IG9rKTsKKyAgICAgICAgcmV0dXJuIHRvVUludDMyKHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBv
ayk7CiAgICAgfQogCi0gICAgaW5saW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1
ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHNpZ25lZCBpbnRl
Z2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUg
Y29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgor
ICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtbG9uZy1sb25nCisgICAgaW50
NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25m
aWd1cmF0aW9uLCBib29sJiBvayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1i
aXQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KKyAgICBpbmxp
bmUgaW50NjRfdCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7Ci0g
ICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZhbHVlKCkpOwor
ICAgICAgICBib29sIG9rOworICAgICAgICByZXR1cm4gdG9JbnQ2NCh2YWx1ZSwgTm9ybWFsQ29u
dmVyc2lvbiwgb2spOwogICAgIH0KIAotICAgIGlubGluZSBsb25nIGxvbmcgdG9JbnQ2NCh2ODo6
TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSkKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1i
aXQgdW5zaWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8g
dmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0
ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLXVu
c2lnbmVkLWxvbmctbG9uZworICAgIHVpbnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8djg6OlZh
bHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7CisKKyAgICAv
LyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0
aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KKyAgICBpbmxpbmUgdWludDY0X3QgdG9VSW50NjQo
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PGxvbmcgbG9uZz4odmFsdWUtPkludGVnZXJWYWx1ZSgpKTsKKyAgICAgICAgYm9vbCBv
azsKKyAgICAgICAgcmV0dXJuIHRvVUludDY0KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7
CisgICAgfQorCisgICAgaW5saW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4g
dmFsdWUpCisgICAgeworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5O
dW1iZXJWYWx1ZSgpKTsKICAgICB9CiAKICAgICBpbmxpbmUgYm9vbCBpc1VuZGVmaW5lZE9yTnVs
bCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1Y4QmluZGluZ01hY3Jvcy5oCmluZGV4IDZmZWI1M2UxZDY3YjA0NTJiYjY3MzkwNWNjZDc2
ZGI0NzMxYTBjYzguLmQ4ZDhhNGU3OWZhNmY2YTQwYjNjMjk4YWZlYjIzMWEzYTNjOWY4MGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCkBAIC0zMyw2
ICszMywxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNkZWZpbmUgVFlQRUNIRUNLX1ZP
SUQodHlwZSwgdmFyLCB2YWx1ZSwgaXNvbGF0ZSkgXAorICAgIHR5cGUgdmFyOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgeyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgYm9vbCBvayA9IHRydWU7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICB2YXIgPSAodmFsdWUpOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgICAgIGlmIChVTkxJS0VMWSghb2spKSB7ICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICAgIHRocm93VHlwZUVycm9yKDAsIGlzb2xhdGUpOyAgICAg
ICAgICAgXAorICAgICAgICAgICAgcmV0dXJuOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICB9CisKICNkZWZpbmUgVjhUUllDQVRDSCh0eXBlLCB2YXIsIHZhbHVlKSBcCiAgICAgdHlw
ZSB2YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgeyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCkBAIC00Miw2ICs1MywyMCBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAgICAgICAgICAgICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICBcCiAgICAg
fQogCisjZGVmaW5lIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodHlwZSwgdmFyLCB2YWx1ZSwg
aXNvbGF0ZSkgXAorICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGJvb2wgb2sgPSB0cnVlOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHY4OjpU
cnlDYXRjaCBibG9jazsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAg
ICB2YXIgPSAodmFsdWUpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgICAgaWYgKGJsb2NrLkhhc0NhdWdodCgpKSAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJv
cigwLCBpc29sYXRlKTsgICAgICAgICAgICAgICBcCisgICAgfQorCiAjZGVmaW5lIFY4VFJZQ0FU
Q0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UodHlwZSwgdmFyLCB2YWx1ZSkgXAogICAgIHR5cGUgdmFy
KHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAg
ICBpZiAoIXZhci5wcmVwYXJlKCkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9u
cy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaAppbmRleCAyNGIz
M2RkMTgyZWVkYzgzMWY2YTVhNTE5MTljODRkNDNlYzAxZGQ3Li44ZGUxMDJmMmEyNDc3ZGUxMDA5
NTgzNjM4ODY3MmRhNTgxMGM4OGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L1R5cGVDb252ZXJzaW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZl
cnNpb25zLmgKQEAgLTM2LDI1ICszNiwzMyBAQCBjbGFzcyBUeXBlQ29udmVyc2lvbnMgOiBwdWJs
aWMgUmVmQ291bnRlZDxUeXBlQ29udmVyc2lvbnM+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFz
c1JlZlB0cjxUeXBlQ29udmVyc2lvbnM+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBU
eXBlQ29udmVyc2lvbnMoKSk7IH0KIAotICAgIGxvbmcgdGVzdExvbmcoKSB7IHJldHVybiBtX3Rl
c3RMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0TG9uZyhsb25nIHZhbHVlKSB7IG1fdGVzdExvbmcg
PSB2YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZygpIHsgcmV0dXJu
IG1fdGVzdFVuc2lnbmVkTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNp
Z25lZCBsb25nIHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVkTG9uZyA9IHZhbHVlOyB9CisgICAgbG9u
ZyB0ZXN0TG9uZygpIHsgcmV0dXJuIG1fbG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdExvbmcobG9u
ZyB2YWx1ZSkgeyBtX2xvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxv
bmcoKSB7IHJldHVybiBtX2xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VMb25n
KGxvbmcgdmFsdWUpIHsgbV9sb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRlc3RV
bnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZzsgfQorICAgIHZvaWQgc2V0VGVz
dFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25nID0gdmFs
dWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcoKSB7
IHJldHVybiBtX3Vuc2lnbmVkTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25nID0gdmFsdWU7
IH0KIAotICAgIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmcoKSB7IHJldHVybiBtX3Rlc3RMb25nTG9u
ZzsgfQotICAgIHZvaWQgc2V0VGVzdExvbmdMb25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RM
b25nTG9uZyA9IHZhbHVlOyB9Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RVbnNpZ25lZExv
bmdMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5zaWduZWRMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0
VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmcoKSB7
IHJldHVybiBtX2xvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0TG9uZ0xvbmcobG9uZyBsb25n
IHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgbG9uZyB0ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0
RW5mb3JjZVJhbmdlTG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1
ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9uZygpIHsgcmV0
dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xv
bmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25nTG9uZyA9IHZhbHVl
OyB9CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyh1bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpIHsgbV91
bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KIAogcHJpdmF0ZToKICAgICBUeXBlQ29udmVyc2lv
bnMoKQogICAgIHsKICAgICB9CiAKLSAgICBsb25nIG1fdGVzdExvbmc7Ci0gICAgdW5zaWduZWQg
bG9uZyBtX3Rlc3RVbnNpZ25lZExvbmc7Ci0gICAgbG9uZyBsb25nIG1fdGVzdExvbmdMb25nOwot
ICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Rlc3RVbnNpZ25lZExvbmdMb25nOworICAgIGxvbmcg
bV9sb25nOworICAgIHVuc2lnbmVkIGxvbmcgbV91bnNpZ25lZExvbmc7CisgICAgbG9uZyBsb25n
IG1fbG9uZ0xvbmc7CisgICAgdW5zaWduZWQgbG9uZyBsb25nIG1fdW5zaWduZWRMb25nTG9uZzsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlw
ZUNvbnZlcnNpb25zLmlkbAppbmRleCAzNjdkMWY3ZWM0ODQyZTQxZjZhYWEzMTBhYjIyYTliYzUw
MWNmODRmLi5iMjdiMTU4ZDc2MzNiMzM0NTYxNmVlNWJjN2ZlMzJjNmNlNTVhMmQ3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsCkBAIC0yOCw4ICsyOCwxMiBA
QAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIFR5cGVDb252ZXJz
aW9ucyB7CiAgICAgYXR0cmlidXRlIGxvbmcgdGVzdExvbmc7CisgICAgYXR0cmlidXRlIFtFbmZv
cmNlUmFuZ2VdIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmc7CiAgICAgYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0g
dW5zaWduZWQgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nOwogCiAgICAgYXR0cmli
dXRlIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2Vd
IGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmc7CiAgICAgYXR0cmlidXRlIHVuc2ln
bmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9y
Y2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCA1YmM3YTZlMmMzMjNkMzI3YjJkMzI1MGI1YjRmOWRkNDA1NjBiMTk4
Li4xNmE4ZmMzNTRiOTRhZmQ5NDYzYTM3MTgyYTg3YTM5NWQ5YjI3NWJkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTkgQEAKKzIwMTMtMDItMTMgIEpvc2h1YSBCZWxsICA8anNiZWxsQGNocm9taXVtLm9yZz4K
KworICAgICAgICBbVjhdIEJpbmRpbmc6IEltcGxlbWVudCBFbmZvcmNlUmFuZ2UgSURMIEF0dHJp
YnV0ZSBmb3IgbG9uZyBsb25nIGNvbnZlcnNpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Njc5OAorCisgICAgICAgIFJldmlld2VkIGJ5IEtlbnRh
cm8gSGFyYS4KKworICAgICAgICAqIGZhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmlj
LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10ZXN0
cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzOiBVcGRhdGUgZXhwZWN0
YXRpb24KKyAgICAgICAgZm9yIEhUTUxPcHRpb25zQ29sbGVjdGlvbi5hZGQoZWxlbWVudCwgYmVm
b3JlKSB0byBtYXRjaCBzcGVjIC0gfGJlZm9yZXwgc2hvdWxkbid0IHRocm93LgorICAgICAgICAq
IGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQ6IEV4cGVjdGF0aW9ucyBm
b3IgSlNDIC0gbW9zdGx5IEZBSUwuCisgICAgICAgICogZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBw
aW5nLmh0bWw6IEFkZGVkIEVuZm9yY2VSYW5nZSBjYXNlcy4KKyAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0OiBFeHBlY3Rh
dGlvbnMgZm9yIFY4LgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFk
LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jl
c291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzOiBNb3JlIGJvdW5kcyBjaGVja3Mu
CisKIDIwMTMtMDItMjUgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCBjaHJvbWl1bSB0ZXN0IGV4cGVjdGF0aW9ucyB1cGRhdGUuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJp
Yy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1l
cmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDk3YmYxZTA2
NzEyMzdlNjA2MzNjNjZmMGMxMzg4YzE2NzYxNDIyOGYuLjAxODE5ZmNkMTYyNTNhNDA4ZDE4ODll
ZmQ0Y2Q4ODQwMGRkNjhhMzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1u
dW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhw
ZWN0ZWQudHh0CkBAIC0yOCw3ICsyOCw3IEBAIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1l
bnQuYm9keS5zY3JvbGxUb3AgPSB4JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2RvY3VtZW50LmltYWdlcy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93
ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0
Iikuc2V0U2VsZWN0aW9uUmFuZ2UoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKIFBBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKS5zZXRTZWxl
Y3Rpb25SYW5nZSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwotUEFTUyBub25OdW1lcmlj
UG9saWN5KCdjcmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgib3B0aW9uIiksIHgpJykgaXMgJ251bWJlciBvciBudWxsIGFsbG93ZWQgKG9yIG9t
aXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUpJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVI
VE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9u
IiksIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLnJl
bW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdj
cmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJp
Yy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2Ny
aXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKaW5kZXgg
MmU3MDA2YzVhOWYyZDQ5MjIxZWJmMzQyOTk0MDNhMThmMGJmOWE2ZC4uNThiZWQxNjgwM2ZlNzhh
MTU3ODNjNzIwYWZiNDU0M2VmOGUzZjg1NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9k
b20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVl
cy1udW1lcmljLXBhcmFtZXRlcnMuanMKQEAgLTY0LDcgKzY0LDcgQEAgZnVuY3Rpb24gbm9uTnVt
ZXJpY1BvbGljeSh0ZW1wbGF0ZSkKICAgICB0cnkgewogICAgICAgICBldmFsKHRlbXBsYXRlKTsK
ICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIE5hTkFsbG93ZWQgPSAwOworICAgICAgICBuYW5B
bGxvd2VkID0gMDsKICAgICB9CiAKICAgICB2YXIgb21pdEFsbG93ZWQgPSAtMTsgLy8gbWVhbnMg
Im5vdCBhcHBsaWNhYmxlIgpAQCAtMjQ0LDcgKzI0NCw3IEBAIHNob3VsZEJlKCJub25OdW1lcmlj
UG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIikuc2V0U2VsZWN0aW9uUmFu
Z2UoCiAKIC8vIEhUTUxPcHRpb25zQ29sbGVjdGlvbgogCi1zaG91bGRCZSgibm9uTnVtZXJpY1Bv
bGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoXCJvcHRpb25cIiksIHgpJykiLCAiJ251bWJlciBvciBudWxsIGFsbG93ZWQgKG9yIG9t
aXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUpJyIpOworc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3ko
J2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50
KFwib3B0aW9uXCIpLCB4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogc2hvdWxkQmUoIm5v
bk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScp
IiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogCiAvLyBIVE1MU2VsZWN0RWxlbWVudApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQK
aW5kZXggNWIyYThjZjE0ZDRlNmRlZTBhYjc0OWZhOGZjZjgxMDM5YTc4ZDBkOC4uOWM1MmY1MDk0
NTFlYTcwZGJkNmJhMDY1NGU2OGI2MGI4MGQ4NzkzMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CkBAIC02OSw2ICs2OSw4
IEBAIGNvbnZlcnRlci50ZXN0TG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEK
IGNvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAw
CiBjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxsCkBAIC03Nyw2ICs3OSw2OSBAQCBjb252ZXJ0ZXIu
dGVzdExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKIFBBU1Mg
Y29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7
fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZycg
aW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAw
eEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAt
MHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
aXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGRkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAw
MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMQorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGRkZGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAy
MTQ3NDgzNjQ4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGRkZG
RkZGIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA0Mjk0OTY3Mjk1LgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDAwMDAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAxIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAt
MjE0NzQ4MzY0OS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhEQ0JB
OTg3NjU0MzIxMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgNjIxMjk2NTg4NTkzNjg5
ODAuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NQVhfVkFM
VUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDEuOTkK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAtMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBJbmZpbml0
eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1JbmZpbml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0
aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5hTi4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB0cnVlCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBhYmMuCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHVuZGVm
aW5lZCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5l
dyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKIFBBU1MgJ3Rlc3RVbnNpZ25lZExv
bmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
PSAwCkBAIC0xNDEsNiArMjA2LDggQEAgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB0cnVl
CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnYWJjJwogUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IG51bGwKQEAgLTE0OSw2ICsyMTYsNjQgQEAgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB1
bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAogUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVy
cm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KIAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IC0xIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS4K
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGCitGQUlM
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAgc2hvdWxkIHRo
cm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gLTB4ODEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0x
MjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgLTMyNzY4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IC0weDgwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OS4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkZGRkZGRkYKK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMCBzaG91bGQgdGhyb3cg
YW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlv
bi4gV2FzIC0yMTQ3NDgzNjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IDYyMTI5NjU4ODU5MzY4OTgwLgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0x
Ljk5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS45OS4KK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAt
SW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
TmFOIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcnCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJj
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBudWxsCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFu
IGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0
aHJldyBleGNlcHRpb24gRXJyb3IuCisKIFBBU1MgJ3Rlc3RMb25nTG9uZycgaW4gY29udmVydGVy
IGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPT09ICdudW1iZXIn
IGlzIHRydWUKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAwCkBAIC0xOTMsMTYgKzMxOCwyOCBA
QCBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1J
Tl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitGQUlMIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
c2hvdWxkIGJlIDAuIFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAwMC4KK2NvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNo
b3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCiBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgPSAtMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIC0xCitj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gSW5maW5pdHkKK0ZBSUwgY29udmVydGVyLnRlc3RMb25n
TG9uZyBzaG91bGQgYmUgMC4gV2FzIC05MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IC1JbmZpbml0eQorRkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNob3Vs
ZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCitjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IGZhbHNlCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVy
dGVyLnRlc3RMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAx
CiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IG51bGwKQEAg
LTIxMSw2ICszNDgsNzIgQEAgY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHVuZGVmaW5lZAogUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9u
ZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlv
biBFcnJvci4KIAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nJyBpbiBjb252ZXJ0ZXIg
aXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
aXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4
ODEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAw
eEZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
MHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkZGRkZG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweEZGRkZGRkZG
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAwMDAxCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMDAwMDEKK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5MzY4OTgwLgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBO
dW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAxLjc5NzY5MzEz
NDg2MjMxNTdlKzMwOC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS43OTc2
OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
MS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5m
aW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtSW5maW5p
dHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC1JbmZpbml0eS4KK0ZBSUwgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE5hTiBzaG91bGQgdGhyb3cgYW4gZXhjZXB0
aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IGZhbHNl
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0gJ2FiYycgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIGFiYy4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gdW5kZWZpbmVkIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyB1
bmRlZmluZWQuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB7dmFs
dWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3Iu
CisKIFBBU1MgJ3Rlc3RVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQogUEFT
UyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0
cnVlCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAwCkBAIC0yNTUsMTYgKzQ1OCwy
OCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCiBQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTnVt
YmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK0ZBSUwg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgOTIyMzM3MjAz
Njg1NDc3NjAwMC4KIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDEuOTkKIFBBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9IC0xLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IElu
ZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK0ZBSUwgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgOTIyMzM3MjAzNjg1NDc3NjAwMC4KK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gZmFs
c2UKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcnCiBQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEK
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSBudWxsCkBAIC0yNzMsNiArNDg4LDY0IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAog
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigp
e3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0
eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID09PSAnbnVt
YmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAw
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0xIHNo
b3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
IGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4
RkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4
ODAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjguCitGQUlMIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgxIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyAtMTI5LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nIGlzIDB4RkZGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAtMHg4MDAwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMzI3NjguCitG
QUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDEg
c2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OS4KK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkYK
K0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAw
MDAwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgzNjQ4LgorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMSBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDkuCitGQUlMIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hv
dWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5MzY4OTgwLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1B
WF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgMS43OTc2OTMxMzQ4NjIzMTU3
ZSszMDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS43OTc2
OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IC0xLjk5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS45OS4KK0ZBSUwgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gSW5maW5pdHkgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIEluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4
Y2VwdGlvbi4gV2FzIC1JbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBOYU4u
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBmYWxzZQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJjLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gbnVsbAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB1bmRlZmluZWQgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBu
ZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJp
ZGwtdHlwZS1tYXBwaW5nLmh0bWwKaW5kZXggMjE5MTNiZTBmZTgzYzAyMTc5NDA5ZDdjNjViZmVj
YWNmNDM3MDAxMi4uMjlhZWJmN2E4MDAyMjFlZjliMjQ2YmM4YWExN2NlZmM5NjYxMzBjZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKQEAgLTM2LDEx
ICszNiwyMyBAQCBmdW5jdGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyhhdHRyaWJ1dGUpCiAg
ICAgY29udmVydChhdHRyaWJ1dGUsICJmYWxzZSIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1
dGUsICJ0cnVlIiwgIjEiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicnIiwgIjAiKTsKKyAg
ICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicxJyIsICIxIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUs
ICInYWJjJyIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJudWxsIiwgIjAiKTsKICAg
ICBjb252ZXJ0KGF0dHJpYnV0ZSwgInVuZGVmaW5lZCIsICIwIik7CiB9CiAKK2Z1bmN0aW9uIHRl
c3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKGF0dHJpYnV0ZSkKK3sKKyAgICBjb252
ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgInRy
dWUiLCAiMSIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJyciLCAiMCIpOworICAgIGNvbnZl
cnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKKyAgICBjb252ZXJ0VGhyb3dzKGF0dHJpYnV0ZSwg
IidhYmMnIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJudWxsIiwgIjAiKTsKKyAgICBjb252
ZXJ0VGhyb3dzKGF0dHJpYnV0ZSwgInVuZGVmaW5lZCIpOworfQorCiB0eXBlID0gInRlc3RMb25n
IjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTc1LDYg
Kzg3LDQwIEBAIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93cyh0
eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIi
KTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlw
ZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVydCh0
eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIp
OworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2NvbnZl
cnQodHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUsICIt
MHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdG
RkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
IjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFM
VUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRo
cm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIu
TUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0
eXBlLCAiLTEuOTkiLCAiLTEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5h
TiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwor
ZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmciOwogdmVyaWZ5QXR0cmlidXRl
KHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIpOwpAQCAtMTA5LDYgKzE1NSw0MCBAQCB0ZXN0Tm9u
TnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citjb252
ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMSIpOworY29udmVydCh0eXBl
LCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOwor
Y29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAxIik7
Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAw
Iik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIt
MHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Ik51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAi
MCIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQo
dHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAi
MSIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEuOTkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
IkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2Uo
dHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5l
dyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RMb25nTG9uZyI7CiB2ZXJp
ZnlBdHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC0xMzIsMTkgKzIxMiw1
MSBAQCBjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JB
OTg3NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBj
b252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25z
aXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1i
ZXIuTUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUi
LCAiMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0
KHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5Iiwg
IjEiKTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0
ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJJbmZpbml0
eSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQo
dHlwZSwgIk5hTiIsICIwIik7Citjb252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Citjb252
ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsK
IHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93cyh0eXBlLCAie3Zh
bHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIiKTsKIAordHlw
ZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOwor
Y29udmVydCh0eXBlLCAiMCIpOworY29udmVydCh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwg
IjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwIik7Citjb252ZXJ0KHR5
cGUsICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIw
eDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAw
MCIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZG
RiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZG
RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0w
eDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citj
b252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi1O
dW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhf
VkFMVUUiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citjb252
ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUlu
ZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iLCAiMCIpOwordGVzdE5vbk51bWVy
aWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFs
dWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBl
ID0gInRlc3RVbnNpZ25lZExvbmdMb25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZl
cnQodHlwZSwgIjAiKTsKQEAgLTE2OCwxOCArMjgwLDUwIEBAIGNvbnZlcnQodHlwZSwgIi0weDgw
MDAwMDAxIiwgIjB4RkZGRkZGRkY3RkZGRkZGRiIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3
NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252
ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0
ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIu
TUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAi
MCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5
cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEi
KTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIjB4RkZGRkZGRkZGRkZGRkZGRiIpOwotLy8gRklY
TUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0
eXBlLCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIp
OwotLy9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOworY29udmVydCh0eXBlLCAiSW5maW5pdHki
LCAiMCIpOworY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwg
Ik5hTiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJv
d3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1
ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmciOwordmVy
aWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29udmVydFRocm93cyh0
eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsK
K2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIi0weDgwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MSIpOworY29u
dmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4RkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMCIpOworY29udmVy
dFRocm93cyh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOwor
Y29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZGRiIp
OworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEw
Iik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlw
ZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJl
ci5NQVhfVkFMVUUiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7
Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xLjk5
Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBl
LCAiLUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1l
cmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3Zh
bHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogPC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJh
ZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDFlOGJkNTdiZDMx
MWI4MmNlOWYyNDhiZGQ3NDY0NGJjMmYwMmQ2ZDUuLjE0NTU3ZDQ1MzY2ZGRmMzQxYjZjMDEyMDcw
ZTI4OTEyM2ExMTg4N2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0
CkBAIC0xOCw2ICsxOCwxNSBAQCBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkgdGhyZXcg
VHlwZUVycm9yOiBUeXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9t
IGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgog
UEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIC01KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IKK0V4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJu
YW1lLCBJbmZpbml0eSkKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgSW5maW5pdHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhw
ZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC1J
bmZpbml0eSkKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVu
KGRibmFtZSwgLUluZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGlu
ZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pCitQ
QVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIE5h
TikgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2Vw
dGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpCiBQQVNTIEV4Y2VwdGlvbiB3YXMg
dGhyb3duLgogUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKSB0aHJldyBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jl
c291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKaW5kZXgg
YWYzNWYyZDRiYzgyYjBiY2RiNWIwMTQ4YzYzMGYyMTUzOTYzYmZjMS4uZDMzOWMzMmMxYzZiMTE0
OTdlMWNjODlkMGMwNzM1YWEzOTk5NzQ3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKKysrIGIv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBh
cmFtZXRlcnMuanMKQEAgLTIwLDYgKzIwLDkgQEAgZnVuY3Rpb24gZGVsZXRlU3VjY2VzcyhldnQp
IHsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgJ3N0cmluZ3ZlcnNpb24nKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhj
ZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkiLCAiVHlwZUVycm9yIik7CiAg
ICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC01
KSIsICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4
ZWREQi5vcGVuKGRibmFtZSwgSW5maW5pdHkpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRF
eHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpIiwg
IlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERC
Lm9wZW4oZGJuYW1lLCBOYU4pIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNl
cHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkiLCAiVHlwZUVycm9yIik7CiAg
ICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDB4
MjAwMDAwMDAwMDAwMDApIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRp
b25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBudWxsKSIsICJUeXBlRXJyb3IiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190301</attachid>
            <date>2013-02-26 09:19:29 -0800</date>
            <delta_ts>2013-03-08 11:49:29 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-96798-20130226091544.patch</filename>
            <type>text/plain</type>
            <size>77272</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0MDY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGQ4M2JjYjI0NGU0YmEw
ZWNhMDA0M2VkNzA2ZDRlYjBjNDYwZmNlMC4uNzJhM2E4NWQ1ZjU2ZGQxMmVlZTQxNDlhNDI4Njkz
MjA2NzYxNTJmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAyLTEzICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgVGVzdHM6
IGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1s
OiBBZGRlZCBFbmZvcmNlUmFuZ2UgY2FzZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCQ3Vyc29yOjphZHZhbmNlKTog
UmVtb3ZlIGN1c3RvbSBib3VuZHMgY2hlY2tpbmcuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmg6IFVwZGF0ZSB0eXBlcy4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuaWRsOiBVc2UgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkZhY3Rvcnk6Om9w
ZW4pOiBSZW1vdmUgY3VzdG9tIGJvdW5kcyBjaGVja2luZy4KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5Lmg6IFVwZGF0ZSB0eXBlcy4KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDogVXNlIFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChKU1ZhbHVlVG9OYXRp
dmUpOiBBZGQgRklYTUUgdG8gaW1wbGVtZW50IFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06CisgICAgICAgIChHZW5lcmF0ZU5vcm1h
bEF0dHJTZXR0ZXIpOiBJZiBjb252ZXJzaW9uIG1heSB0aHJvdywgZ2VuZXJhdGUgY2hlY2tpbmcg
Y29kZS4KKyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKTogRGl0dG8uCisgICAgICAg
IChDb252ZXJzaW9uVGhyb3dzVHlwZUVycm9yKTogTGV0cyBjYWxsZXJzIG9mIEpTVmFsdWVUb05h
dGl2ZSBkZXRlcm1pbmUgaWYKKyAgICAgICAgY2hlY2tpbmcgY29kZSBpcyBuZWVkZWQuCisgICAg
ICAgIChKU1ZhbHVlVG9OYXRpdmUpOiBPcHRpb25hbGx5IGNhbGwgdHlwZSBjaGVja2luZyB2YXJp
YXRpb25zIG9mIGNvbnZlcnNpb24KKyAgICAgICAgbWV0aG9kcy4KKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0OiBBZGQgRW5mb3JjZVJhbmdlLgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbDogQWRkIEVuZm9yY2VSYW5nZSB0ZXN0
IG1ldGhvZHMuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5j
cHA6IFVwZGF0ZWQgZXhwZWN0YXRpb25zLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGlu
Zy5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDMyKTogQWNjZXB0IGZsYWdzLCByZXR1cm4g
c3VjY2Vzcy9mYWlsIHN0YXR1cy4KKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDMyKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjp0
b1VJbnQ2NCk6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5oOiBVcGRh
dGUgc2lnbmF0dXJlcywgZGVmaW5lIGZsYWcgZW51bSwgaGVscGVyIGZ1bmN0aW9ucy4KKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaDogTWFjcm9zIGZvciBnZW5lcmF0aW5n
IHR5cGUgY2hlY2tpbmcgd3JhcHBlcnMuCisgICAgICAgICogdGVzdGluZy9UeXBlQ29udmVyc2lv
bnMuaDogQWRkIEVuZm9yY2VSYW5nZSB0ZXN0IG1ldGhvZHMuCisgICAgICAgICogdGVzdGluZy9U
eXBlQ29udmVyc2lvbnMuaWRsOiBEaXR0by4KKwogMjAxMy0wMi0yNiAgTGV2aSBXZWludHJhdWIg
IDxsZXZpd0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQWRkIHN1cHBvcnQgZm9yIDggYml0IFRl
eHRSdW5zIGZvciBDaHJvbWl1bS9IYXJmQnV6egpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKaW5kZXggNDY4ZWRiZWJhOTExMTY5YTA5M2EyZTdkMjM0
OTA4OGZjYzI4MzZhNS4uNjI3NjYwMzY3M2FhMDgzMDYyMDk2NjhhNWZlODMyOTM0ZmFmYjAzMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCkBA
IC0xNTIsNyArMTUyLDcgQEAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBJREJDdXJzb3I6OnVwZGF0
ZShTY3JpcHRTdGF0ZSogc3RhdGUsIFNjcmlwdFZhbHVlJiB2YWx1ZSwKICAgICByZXR1cm4gb2Jq
ZWN0U3RvcmUtPnB1dChJREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2U6OkN1cnNvclVwZGF0ZSwg
SURCQW55OjpjcmVhdGUodGhpcyksIHN0YXRlLCB2YWx1ZSwgbV9jdXJyZW50UHJpbWFyeUtleSwg
ZWMpOwogfQogCi12b2lkIElEQkN1cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQordm9pZCBJREJDdXJzb3I6OmFkdmFuY2UodW5zaWduZWQgbG9uZyBjb3Vu
dCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgZWMgPSAwOwogICAgIElEQl9UUkFDRSgiSURC
Q3Vyc29yOjphZHZhbmNlIik7CkBAIC0xNjYsOCArMTY2LDcgQEAgdm9pZCBJREJDdXJzb3I6OmFk
dmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICAgICAgcmV0dXJu
OwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hlY2sg
Zm9yIDAgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgaWYgKGNvdW50IDwgMSB8
fCBjb3VudCA+IFVJTlRfTUFYKSB7CisgICAgaWYgKCFjb3VudCkgewogICAgICAgICBlYyA9IFR5
cGVFcnJvcjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKaW5kZXggMWM4MzE2NDAyNmRhNDRiM2YwOGVmOTNmZjQy
ZTNhYjQ1ZmZmNTkyYy4uYTcyYWJiMjNiYWI4MzUxODdkMGIyODc3MzUwYmY1NTgwZDM3NDA0OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKQEAgLTc1
LDggKzc1LDcgQEAgcHVibGljOgogICAgIElEQkFueSogc291cmNlKCkgY29uc3Q7CiAKICAgICBQ
YXNzUmVmUHRyPElEQlJlcXVlc3Q+IHVwZGF0ZShTY3JpcHRTdGF0ZSosIFNjcmlwdFZhbHVlJiwg
RXhjZXB0aW9uQ29kZSYpOwotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgdW5zaWduZWQgbG9uZyBv
bmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UobG9uZyBsb25n
LCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBhZHZhbmNlKHVuc2lnbmVkIGxvbmcsIEV4Y2Vw
dGlvbkNvZGUmKTsKICAgICAvLyBGSVhNRTogVHJ5IHRvIG1vZGlmeSB0aGUgY29kZSBnZW5lcmF0
b3Igc28gdGhpcyBvdmVybG9hZCBpcyB1bm5lZWRlZC4KICAgICB2b2lkIGNvbnRpbnVlRnVuY3Rp
b24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IGNvbnRpbnVl
RnVuY3Rpb24oc3RhdGljX2Nhc3Q8SURCS2V5Kj4oMCksIGVjKTsgfQogICAgIHZvaWQgY29udGlu
dWVGdW5jdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUmIGtl
eSwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkN1cnNvci5pZGwKaW5kZXggNDU3MGMxZWNjODdkMDhiOTAxMDAzYTNkYzhmMjc4NjFmMTE4
OGVhMS4uNGI2MjY1YjQyOGYyNmU5MWZjMDdiYjhiNWMyMjE1ZDdkYzQyMzQ4YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCkBAIC0zNSw4ICsz
NSw3IEBACiAKICAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGVdIElEQlJlcXVlc3QgdXBkYXRlKGlu
IGFueSB2YWx1ZSkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgIC8vIEZJWE1F
OiBNYWtlIHRoaXMgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBvbmNlIHdlYmtpdC5vcmcv
Yi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UoaW4gbG9uZyBsb25nIGNvdW50KQorICAg
IHZvaWQgYWR2YW5jZShpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGNvdW50KQogICAg
ICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQsIEltcGxlbWVudGVkQXM9Y29udGludWVGdW5jdGlvbl0gdm9pZCBjb250aW51ZShp
biBbT3B0aW9uYWxdIGFueSBrZXkpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKaW5kZXgg
ZDAxMjBmNjBhODlhZGZmYjdkMTY1YzlhYWI3M2Y5Zjc2ZjMxMTBiMC4uMWQ1ZjBmYmIxYWJmMWU1
YWRkZDczODUzNzkzZjlkMGRjMTgwMmY3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKQEAgLTExMSwxMSArMTExLDkgQEAgUGFzc1JlZlB0
cjxJREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnQKICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIAotUGFzc1JlZlB0cjxJREJP
cGVuREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQsIGNvbnN0IFN0cmluZyYgbmFtZSwgaW50NjRfdCB2ZXJzaW9uLCBFeGNlcHRpb25Db2Rl
JiBlYykKK1Bhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIHVuc2lnbmVk
IGxvbmcgbG9uZyB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKLSAgICAvLyBGSVhNRTog
VGhpcyBzaG91bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9iLzk2
Nzk4IGxhbmRzLgotICAgIGNvbnN0IGludDY0X3QgbWF4RUNNQVNjcmlwdEludGVnZXIgPSAweDIw
MDAwMDAwMDAwMDAwTEwgLSAxOwotICAgIGlmICh2ZXJzaW9uIDwgMSB8fCB2ZXJzaW9uID4gbWF4
RUNNQVNjcmlwdEludGVnZXIpIHsKKyAgICBpZiAoIXZlcnNpb24pIHsKICAgICAgICAgZWMgPSBU
eXBlRXJyb3I7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAppbmRleCBjYjFiN2IwYjM3NmI3YWE2ZDg0OWM2
ODQ4YjMwZTNlMWNlNjAyZWY4Li45ODFkZThjMzI4ZjhhMmYxZWQ5ZTc3OGJjYmQ5MGQyNmZkYmEx
ZDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0
b3J5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5o
CkBAIC01OCw3ICs1OCw3IEBAIHB1YmxpYzoKICAgICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IGdl
dERhdGFiYXNlTmFtZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmKTsK
IAogICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgUGFzc1Jl
ZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGludDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOworICAgIFBh
c3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
Y29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0aW9u
Q29kZSYpOwogICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gZGVsZXRlRGF0YWJhc2Uo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgRXhjZXB0aW9uQ29k
ZSYpOwogCiAgICAgc2hvcnQgY21wKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTY3Jp
cHRWYWx1ZSYgZmlyc3QsIGNvbnN0IFNjcmlwdFZhbHVlJiBzZWNvbmQsIEV4Y2VwdGlvbkNvZGUm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwK
aW5kZXggYTUxNjA1YjJiNGUzMTI5N2JiNTVkYTNiNTE3ZDVkZDEyYzNkMjJhYy4uZWY1MWJiZjgz
ODdjYThiZDBlNmFlYmM1MTA2M2I4ZDVlNjhkNGY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAgLTMxLDggKzMxLDcgQEAKICAgICBb
Q2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgSW1wbGVtZW50ZWRBcz1nZXREYXRhYmFz
ZU5hbWVzXSBJREJSZXF1ZXN0IHdlYmtpdEdldERhdGFiYXNlTmFtZXMoKQogICAgICAgICByYWlz
ZXMgKERPTUV4Y2VwdGlvbik7CiAKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFu
Z2VdIHVuc2lnbmVkIGxvbmcgbG9uZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAg
ICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCT3BlbkRCUmVxdWVzdCBvcGVu
KGluIERPTVN0cmluZyBuYW1lLCBpbiBbT3B0aW9uYWxdIGxvbmcgbG9uZyB2ZXJzaW9uKQorICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IG9wZW4o
aW4gRE9NU3RyaW5nIG5hbWUsIGluIFtFbmZvcmNlUmFuZ2UsIE9wdGlvbmFsXSB1bnNpZ25lZCBs
b25nIGxvbmcgdmVyc2lvbikKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogICAgIFtD
YWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IGRlbGV0ZURh
dGFiYXNlKGluIERPTVN0cmluZyBuYW1lKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCmluZGV4IDMxMGRjOTVmMGNhNTVjZjk1YWQzMzg2YThkNGRmYjM3MDg0OWJmMzguLjUzMjdm
MTA0ZDJiZmI5M2YyZTA5YjAxZmM3ZWMxZDcxYTBjNzQyYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMTUyLDYgKzMx
NTIsNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAgcmV0dXJuICIkdmFsdWUudG9Cb29sZWFu
KGV4ZWMpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9OdW1i
ZXIoZXhlYykiIGlmICR0eXBlIGVxICJkb3VibGUiOwogICAgIHJldHVybiAiJHZhbHVlLnRvRmxv
YXQoZXhlYykiIGlmICR0eXBlIGVxICJmbG9hdCI7CisgICAgIyBGSVhNRTogQWRkIFtFbmZvcmNl
UmFuZ2VdIHN1cHBvcnQKICAgICByZXR1cm4gIiR2YWx1ZS50b0ludDMyKGV4ZWMpIiBpZiAkdHlw
ZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKICAgICByZXR1cm4gIiR2YWx1ZS50b1VJ
bnQzMihleGVjKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNp
Z25lZCBzaG9ydCI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLnRvSW50
ZWdlcihleGVjKSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25l
ZCBsb25nIGxvbmciOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JWOC5wbQppbmRleCBmNzY0Yzc3ZjRjYTNjMGQ3OWIzZjZkNzA3NDBhNmEyMmI0
MjlmMTk0Li4yOTI0NzgyMmFkNTQyZDk1NzNhNmZmNmU1MTBmMTViZWFhYTZjYjAxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpA
QCAtMTI5NywxNCArMTI5NywxOSBAQCBFTkQKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
RGVjbHMsICIgICAgICAgIHJldHVybjtcbiIpOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAg
ICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwg
InZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIik7CiAgICAgICAgIG15ICRhcnJheVR5cGUgPSAk
Y29kZUdlbmVyYXRvci0+R2V0QXJyYXlUeXBlKCRuYXRpdmVUeXBlKTsKIAogICAgICAgICBpZiAo
JG5hdGl2ZVR5cGUgPX4gL15WOFN0cmluZ1Jlc291cmNlLykgeworICAgICAgICAgICAgbXkgJHZh
bHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImlu
Zm8uR2V0SXNvbGF0ZSgpIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAi
ICAgICIgLiBDb252ZXJ0VG9WOFN0cmluZ1Jlc291cmNlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwg
JG5hdGl2ZVR5cGUsICJ2IiwgJHZhbHVlLCAiVk9JRCIpIC4gIlxuIik7CiAgICAgICAgIH0gZWxz
aWYgKCRhcnJheVR5cGUpIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2
ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwog
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICBWZWN0b3I8JGFycmF5VHlw
ZT4gdiA9ICR2YWx1ZTtcbiIpOworICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5zaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSkgeworICAgICAgICAgICAg
bXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVl
IiwgImluZm8uR2V0SXNvbGF0ZSgpIiwgImNhblRocm93RXhjZXB0aW9uIik7CisgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIFRZUEVDSEVDS19WT0lEKCRuYXRpdmVUeXBl
LCB2LCAkdmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKTtcbiIpOwogICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25h
dHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIik7CiAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudERlY2xzLCAiICAgICRuYXRpdmVUeXBlIHYgPSAkdmFsdWU7XG4iKTsKICAgICAg
ICAgfQogICAgIH0KQEAgLTE4ODQsOCArMTg4OSwxMyBAQCBzdWIgR2VuZXJhdGVQYXJhbWV0ZXJz
Q2hlY2sKICAgICAgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAg
ICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBhcmdzLkdldElzb2xhdGUoKSk7XG4iOwogICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVj
a1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAi
IC4KLSAgICAgICAgICAgICAgICAgSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0ZXIsICRvcHRpb25h
bCAmJiAkb3B0aW9uYWwgZXEgIkRlZmF1bHRJc051bGxTdHJpbmciID8gImFyZ3VtZW50T3JOdWxs
KGFyZ3MsICRwYXJhbUluZGV4KSIgOiAiYXJnc1skcGFyYW1JbmRleF0iLCAiYXJncy5HZXRJc29s
YXRlKCkiKSAuICIpO1xuIjsKKyAgICAgICAgICAgIGlmICgkcGFyYW1ldGVyLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiRW5mb3JjZVJhbmdlIn0pIHsKKyAgICAgICAgICAgICAgICBteSAkdmFsdWUg
PSBKU1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgJG9wdGlvbmFsICYmICRvcHRpb25hbCBlcSAi
RGVmYXVsdElzTnVsbFN0cmluZyIgPyAiYXJndW1lbnRPck51bGwoYXJncywgJHBhcmFtSW5kZXgp
IiA6ICJhcmdzWyRwYXJhbUluZGV4XSIsICJhcmdzLkdldElzb2xhdGUoKSIsICJjYW5UaHJvd0V4
Y2VwdGlvbiIpOworICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAg
IFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0soJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAk
dmFsdWUsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAkb3B0
aW9uYWwgJiYgJG9wdGlvbmFsIGVxICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJhcmd1bWVudE9y
TnVsbChhcmdzLCAkcGFyYW1JbmRleCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwgImFyZ3MuR2V0
SXNvbGF0ZSgpIik7CisgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIg
ICAgVjhUUllDQVRDSCgkbmF0aXZlVHlwZSwgJHBhcmFtZXRlck5hbWUsICR2YWx1ZSk7XG4iOwor
ICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKCRuYXRpdmVUeXBlIGVxICdEaWN0aW9uYXJ5
JykgewogICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgaWYgKCEk
cGFyYW1ldGVyTmFtZS5pc1VuZGVmaW5lZE9yTnVsbCgpICYmICEkcGFyYW1ldGVyTmFtZS5pc09i
amVjdCgpKVxuIjsKICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAg
ICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoXCJOb3QgYW4gb2JqZWN0LlwiLCBhcmdzLkdldElz
b2xhdGUoKSk7XG4iOwpAQCAtMzk1MywxNiArMzk2MywyNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZl
CiAgICAgbXkgJHNpZ25hdHVyZSA9IHNoaWZ0OwogICAgIG15ICR2YWx1ZSA9IHNoaWZ0OwogICAg
IG15ICRnZXRJc29sYXRlID0gc2hpZnQ7CisgICAgbXkgJG1heUZhaWwgPSBzaGlmdDsKIAogICAg
IG15ICR0eXBlID0gJHNpZ25hdHVyZS0+dHlwZTsKKyAgICBteSAkaW50Q29udmVyc2lvbiA9ICRz
aWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSA/ICJFbmZvcmNl
UmFuZ2UiIDogIk5vcm1hbENvbnZlcnNpb24iOworICAgIGRpZSAiQ2FuJ3QgaGFuZGxlIFtFbmZv
cmNlUmFuZ2VdIHVubGVzcyBjYWxsZWQgZnJvbSBjb250ZXh0IHRoYXQgaGFuZGxlcyBmYWlsdXJl
cy4iIGlmICRpbnRDb252ZXJzaW9uIGVxICJFbmZvcmNlUmFuZ2UiIGFuZCAhJG1heUZhaWw7CiAK
ICAgICByZXR1cm4gIiR2YWx1ZSIgaWYgJHR5cGUgZXEgIkpTT2JqZWN0IjsKICAgICByZXR1cm4g
IiR2YWx1ZS0+Qm9vbGVhblZhbHVlKCkiIGlmICR0eXBlIGVxICJib29sZWFuIjsKICAgICByZXR1
cm4gInN0YXRpY19jYXN0PCR0eXBlPigkdmFsdWUtPk51bWJlclZhbHVlKCkpIiBpZiAkdHlwZSBl
cSAiZmxvYXQiIG9yICR0eXBlIGVxICJkb3VibGUiOwogCi0gICAgcmV0dXJuICJ0b0ludDMyKCR2
YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwotICAgIHJldHVy
biAidG9VSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBl
IGVxICJ1bnNpZ25lZCBzaG9ydCI7Ci0gICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0
eXBlIGVxICJ1bnNpZ25lZCBsb25nIGxvbmciIG9yICR0eXBlIGVxICJsb25nIGxvbmciOworICAg
IGlmICgkbWF5RmFpbCkgeworICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlLCAkaW50Q29u
dmVyc2lvbiwgb2spIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKKyAg
ICAgICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0
eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAg
ICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2spIiBpZiAkdHlw
ZSBlcSAibG9uZyBsb25nIjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFsdWUsICRpbnRD
b252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIGxvbmciOworICAgIH0g
ZWxzZSB7CisgICAgICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9u
ZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUp
IiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0
IjsKKyAgICAgICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIGxv
bmciOworICAgICAgICByZXR1cm4gInRvVUludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNp
Z25lZCBsb25nIGxvbmciOworICAgIH0KICAgICByZXR1cm4gInN0YXRpY19jYXN0PFJhbmdlOjpD
b21wYXJlSG93PigkdmFsdWUtPkludDMyVmFsdWUoKSkiIGlmICR0eXBlIGVxICJDb21wYXJlSG93
IjsKICAgICByZXR1cm4gInRvV2ViQ29yZURhdGUoJHZhbHVlKSIgaWYgJHR5cGUgZXEgIkRhdGUi
OwogICAgIHJldHVybiAidG9ET01TdHJpbmdMaXN0KCR2YWx1ZSwgJGdldElzb2xhdGUpIiBpZiAk
dHlwZSBlcSAiRE9NU3RyaW5nTGlzdCI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAppbmRleCAxODYxMTE4MTUwOWVjM2I1Y2M3NGMwYTlm
MzA4YjZiMDU5OGNhMzQyLi5jNTNlNzdiOTJjOTgzZDEwMjU2ZmRmMzA3ODdmNmM1YjE0NWQyOWU3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0
ZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRl
cy50eHQKQEAgLTUyLDYgKzUyLDcgQEAgRG9Ob3RDaGVja0NvbnN0YW50cwogRG9Ob3RDaGVja1Nl
Y3VyaXR5CiBEb05vdENoZWNrU2VjdXJpdHlPbkdldHRlcgogRG9Ob3RDaGVja1NlY3VyaXR5T25T
ZXR0ZXIKK0VuZm9yY2VSYW5nZQogRXZlbnRUYXJnZXQKIEV4dGVuZHNET01HbG9iYWxPYmplY3QK
IEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbERvY3VtZW50fEltcGxFbGVtZW50Um9vdHxJbXBsT3du
ZXJOb2RlUm9vdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L1Rlc3RPYmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rl
c3RPYmouaWRsCmluZGV4IGMwNjMwZTM3MmNlNmQ3ZTQwYjEyMmQ5MmNhYmFmNmQyOTZmZmZlNDgu
LmE3YjY4YjgwZjBkY2Q1MjFmZjRiYjllNTU3MjVhZWRhNTg5NDM1YWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAgLTE0Nyw2ICsx
NDcsMTkgQEAgZW51bSBUZXN0RW51bVR5cGUgeyAiIiwgIkVudW1WYWx1ZTEiLCAiRW51bVZhbHVl
MiIsICJFbnVtVmFsdWUzIiB9OwogICAgIHZvaWQgICAgbWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0
aW9uYWxBcmcoaW4gW0NhbGxiYWNrLCBPcHRpb25hbF0gVGVzdENhbGxiYWNrIGNhbGxiYWNrKTsK
ICNlbmRpZgogCisjaWYgZGVmaW5lZChURVNUSU5HX1Y4KQorICAgIC8vICdFbmZvcmNlUmFuZ2Un
IGV4dGVuZGVkIGF0dHJpYnV0ZQorICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUlu
dDMyKGluIFtFbmZvcmNlUmFuZ2VdIGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZVVJbnQzMihpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIHZhbHVl
KTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NChpbiBbRW5mb3JjZVJh
bmdlXSBsb25nIGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5n
ZVVJbnQ2NChpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpOworCisg
ICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgZW5mb3JjZWRSYW5nZUxvbmdBdHRyOwor
ICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGVuZm9yY2VkUmFuZ2VV
bnNpZ25lZExvbmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSBsb25nIGxvbmcg
ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cjsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0g
dW5zaWduZWQgbG9uZyBsb25nIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cjsKKyNl
bmRpZgorCiAgICAgLy8gJ0NvbmRpdGlvbmFsJyBleHRlbmRlZCBhdHRyaWJ1dGUKICAgICBbQ29u
ZGl0aW9uYWw9Q29uZGl0aW9uMV0gYXR0cmlidXRlIGxvbmcgY29uZGl0aW9uYWxBdHRyMTsKICAg
ICBbQ29uZGl0aW9uYWw9Q29uZGl0aW9uMSZDb25kaXRpb24yXSBhdHRyaWJ1dGUgbG9uZyBjb25k
aXRpb25hbEF0dHIyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAppbmRleCBhNWNmMzU1Mzk1OGIxNjk0Mzc2NTEzZDRhYjRl
OGYyNDNiMmY5NzY0Li5kYzljM2ZjYzJlN2RmMjEyZmZiZjNjM2RiNGU3ZmU4MjYxMjk1OTQxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhU
ZXN0T2JqLmNwcApAQCAtMzIxLDcgKzMyMSw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4CiBz
dGF0aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
aW5mby5Ib2xkZXIoKSk7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVl
KTsKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdiA9IHRvVUludDY0KHZhbHVlKTsKICAgICBpbXAt
PnNldFVuc2lnbmVkTG9uZ0xvbmdBdHRyKHYpOwogICAgIHJldHVybjsKIH0KQEAgLTEwNTcsNiAr
MTA1NywxMDIgQEAgc3RhdGljIHZvaWQgd2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0
dHJpYnV0ZUF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWwKICAgICBUZXN0T2JqVjhJbnRlcm5h
bDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXIobmFt
ZSwgdmFsdWUsIGluZm8pOwogfQogCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9y
Y2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0
T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4gdjhJbnRlZ2VyKGltcC0+
ZW5mb3JjZWRSYW5nZUxvbmdBdHRyKCksIGluZm8uR2V0SXNvbGF0ZSgpKTsKK30KKworc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyR2V0dGVyQ2Fs
bGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlTG9u
Z0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJh
bmdlTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAg
ICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAg
IFRZUEVDSEVDS19WT0lEKGludCwgdiwgdG9JbnQzMih2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayks
IGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VMb25nQXR0cih2
KTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0
dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVz
dE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXIobmFtZSwgdmFs
dWUsIGluZm8pOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFu
Z2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
Y29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRl
c3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2OFVuc2lnbmVkSW50
ZWdlcihpbXAtPmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKCksIGluZm8uR2V0SXNvbGF0
ZSgpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5z
aWduZWRMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4
SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlcihuYW1lLCBp
bmZvKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRy
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2
YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAg
PSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIFRZUEVDSEVDS19WT0lE
KHVuc2lnbmVkLCB2LCB0b1VJbnQzMih2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayksIGluZm8uR2V0
SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKHYp
OworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9u
Z0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQorewor
ICAgIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJT
ZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoq
IGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4
OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3VibGU+KGltcC0+ZW5mb3JjZWRSYW5nZUxvbmdM
b25nQXR0cigpKSk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRS
YW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICByZXR1cm4gVGVzdE9i
alY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGlu
Zm8pOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRl
cih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUs
IGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhU
ZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9JRChsb25n
IGxvbmcsIHYsIHRvSW50NjQodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xh
dGUoKSk7CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyKHYpOworICAgIHJl
dHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJTZXR0
ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1
ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9ialY4
SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKG5hbWUsIHZhbHVl
LCBpbmZvKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdl
VW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4
VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4OjpOdW1iZXI6
Ok5ldyhzdGF0aWNfY2FzdDxkb3VibGU+KGltcC0+ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xv
bmdBdHRyKCkpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJh
bmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgcmV0dXJu
IFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRy
R2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5zaWdu
ZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6
TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sK
KyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwor
ICAgIFRZUEVDSEVDS19WT0lEKHVuc2lnbmVkIGxvbmcgbG9uZywgdiwgdG9VSW50NjQodmFsdWUs
IEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5zZXRFbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIodik7CisgICAgcmV0dXJuOworfQorCitzdGF0
aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJh
Y2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFs
OjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKG5hbWUsIHZhbHVl
LCBpbmZvKTsKK30KKwogI2lmIEVOQUJMRShDb25kaXRpb24xKQogCiBzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IGNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMjEzOSw2ICsyMjM1
LDY2IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aENhbGxiYWNrQW5k
T3B0aW9uYWxBcmdNZXRob2RDYWxsYmFjayhjb25zCiAgICAgcmV0dXJuIFRlc3RPYmpWOEludGVy
bmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZ01ldGhvZChhcmdzKTsKIH0KIAor
c3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJN
ZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgo
KSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3Mu
R2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFy
Z3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0soaW50LCB2YWx1ZSwg
dG9JbnQzMihhcmdzWzBdLCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOwor
ICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyKHZhbHVlKTsKKyAgICByZXR1cm4g
djhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RX
aXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBh
cmdzKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VS
YW5nZUludDMyTWV0aG9kKGFyZ3MpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzJNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYg
YXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJv
d05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2Jq
KiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FU
Q0hfV0lUSF9UWVBFQ0hFQ0sodW5zaWduZWQsIHZhbHVlLCB0b1VJbnQzMihhcmdzWzBdLCBFbmZv
cmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVu
Zm9yY2VSYW5nZVVJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisK
K3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQz
Mk1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJu
IFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyTWV0aG9kKGFy
Z3MpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNl
UmFuZ2VJbnQ2NE1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChh
cmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRz
RXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6
dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyhs
b25nIGxvbmcsIHZhbHVlLCB0b0ludDY0KGFyZ3NbMF0sIEVuZm9yY2VSYW5nZSwgb2spLCBhcmdz
LkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQodmFs
dWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NE1ldGhvZENhbGxiYWNrKGNvbnN0
IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjpt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRNZXRob2QoYXJncyk7Cit9CisKK3N0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZChjb25z
dCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAg
ICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRl
KCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIo
KSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyh1bnNpZ25lZCBsb25nIGxvbmcsIHZh
bHVlLCB0b1VJbnQ2NChhcmdzWzBdLCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRl
KCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NCh2YWx1ZSk7CisgICAg
cmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1
bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRo
RW5mb3JjZVJhbmdlVUludDY0TWV0aG9kKGFyZ3MpOworfQorCiAjaWYgRU5BQkxFKENvbmRpdGlv
bjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxNZXRob2QxTWV0
aG9kKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCkBAIC0yODQ0LDYgKzMwMDAsMTQgQEAgc3Rh
dGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6QmF0Y2hlZEF0dHJpYnV0ZSBWOFRlc3RPYmpB
dHRyc1tdID0gewogICAgIHsid2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0
ZVdpdGhTcGFjZXNBdHRyaWJ1dGUiLCBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGVBdHRyR2V0dGVyQ2Fs
bGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNj
cmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZUF0dHJTZXR0ZXJDYWxsYmFjaywgMCAvKiBubyBk
YXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0
aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5j
ZSAqL30sCiAgICAgLy8gQXR0cmlidXRlICd3aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNr
QXR0cmlidXRlJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0NhbGxXaXRoJykKICAgICB7
IndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGUiLCBUZXN0T2JqVjhJbnRl
cm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJHZXR0ZXJD
YWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3Rh
Y2tBdHRyaWJ1dGVBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nh
c3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3Bl
cnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0
dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0
cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlTG9uZ0F0dHIiLCBUZXN0T2Jq
VjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0
T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAw
IC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVM
VCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9u
IGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VVbnNpZ25lZExv
bmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAg
eyJlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50
ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAw
IC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVM
VCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9u
IGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0
dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVu
Zm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5n
ZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9y
Y2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywg
c3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8
djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAor
ICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyJyAoVHlw
ZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJh
bmdlVW5zaWduZWRMb25nTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5h
bDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAw
IC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVM
VCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9u
IGluc3RhbmNlICovfSwKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKICAgICAvLyBBdHRyaWJ1dGUg
J2NvbmRpdGlvbmFsQXR0cjEnIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnQ29uZGl0aW9u
YWwnKQogICAgIHsiY29uZGl0aW9uYWxBdHRyMSIsIFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRp
b25hbEF0dHIxQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9u
YWxBdHRyMUF0dHJTZXR0ZXJDYWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2
ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlB
dHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCkBAIC0yOTI4LDYgKzMw
OTIsMTAgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6QmF0Y2hlZE1ldGhvZCBW
OFRlc3RPYmpNZXRob2RzW10gPSB7CiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBcmciLCBUZXN0
T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aENhbGxiYWNrQXJnTWV0aG9kQ2FsbGJhY2t9LAogICAg
IHsibWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5kQ2FsbGJhY2tBcmciLCBUZXN0T2JqVjhJbnRl
cm5hbDo6bWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5kQ2FsbGJhY2tBcmdNZXRob2RDYWxsYmFj
a30sCiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZyIsIFRlc3RPYmpWOElu
dGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZ01ldGhvZENhbGxiYWNrfSwK
KyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMiIsIFRlc3RPYmpWOEludGVybmFsOjpt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2RDYWxsYmFja30sCisgICAgeyJtZXRob2RX
aXRoRW5mb3JjZVJhbmdlVUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZv
cmNlUmFuZ2VVSW50MzJNZXRob2RDYWxsYmFja30sCisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJh
bmdlSW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0
TWV0aG9kQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NCIsIFRl
c3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0TWV0aG9kQ2FsbGJh
Y2t9LAogI2lmIEVOQUJMRShDb25kaXRpb24xKQogICAgIHsiY29uZGl0aW9uYWxNZXRob2QxIiwg
VGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFsTWV0aG9kMU1ldGhvZENhbGxiYWNrfSwKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4
L1Y4VGVzdFR5cGVkZWZzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAKaW5kZXggN2VlMWE0NmU2NTE4YzdjOWE0ZThjYjkzNmYz
YWI3MmI5NWE0M2Q1Zi4uNTMzZjc3MDFhOTY4OGQ2ZDU2OWUwMjc3MjMxYWE3ZTU1NTZkMzlkNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVz
dFR5cGVkZWZzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VjgvVjhUZXN0VHlwZWRlZnMuY3BwCkBAIC05NCw3ICs5NCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6Okxv
Y2FsPHY4CiBzdGF0aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2
ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RUeXBlZGVmcyogaW1wID0gVjhUZXN0
VHlwZWRlZnM6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIHVuc2lnbmVkIGxvbmcgbG9u
ZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b1VJbnQ2
NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZExvbmdMb25nQXR0cih2KTsKICAgICByZXR1
cm47CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAppbmRleCA4NjNm
NGZkNmFjMGE2NTViZTkyODRmN2NmOGNjMDQzOGQ0MjJmNTY3Li40NDQyZThkOGUzN2M0MmJmNDU4
ZjA4MWE3MTFlZjA2ZTBjYWRlZGE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Qmlu
ZGluZy5jcHAKQEAgLTEwMyw0MCArMTAzLDQ4IEBAIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9O
b2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxsYmFjaykKICAgICByZXR1cm4gTm9k
ZUZpbHRlcjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlvbjo6Y3JlYXRlKGNhbGxiYWNrKSk7
CiB9CiAKLWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2sp
Citjb25zdCBpbnQzMl90IGtNaW5JbnQzMiA9IC0weDgwMDAwMDAwOworY29uc3QgaW50MzJfdCBr
TWF4SW50MzIgPSAweDdmZmZmZmZmOworY29uc3QgdWludDMyX3Qga01heFVJbnQzMiA9IDB4ZmZm
ZmZmZmY7CisKK2ludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIElu
dGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBib29sJiBvaykKIHsK
ICAgICBvayA9IHRydWU7Ci0gICAgCisKICAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBh
bHJlYWR5IGEgMzItYml0IGludGVnZXIuCiAgICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpCiAgICAg
ICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1ZSgpOwotICAgIAorCiAgICAgLy8gQ2FuIHRoZSB2
YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CiAgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+
IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOwogICAgIGlmIChudW1iZXJPYmplY3Qu
SXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgIHJldHVybiAwOwogICAg
IH0KLSAgICAKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAg
ICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKyAgICAgICAgaWYgKHN0ZDo6
aXNuYW4oeCkgfHwgc3RkOjppc2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAg
ICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6
IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwga01pbkludDMyIHx8IHggPiBr
TWF4SW50MzIpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4g
MDsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiB4OworICAgIH0KKwogICAgIC8vIERvZXMg
dGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5PwogICAgIGRvdWJsZSBu
dW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKLSAgICBpZiAoc3RkOjppc25hbihu
dW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihudW1iZXJWYWx1ZSkpIHsKLSAgICAgICAgb2sgPSBm
YWxzZTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIC8vIENhbiB0aGUgdmFs
dWUgYmUgY29udmVydGVkIHRvIGEgMzItYml0IGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpJ
bnQzMj4gaW50VmFsdWUgPSB2YWx1ZS0+VG9JbnQzMigpOwotICAgIGlmIChpbnRWYWx1ZS5Jc0Vt
cHR5KCkpIHsKLSAgICAgICAgb2sgPSBmYWxzZTsKKyAgICBpZiAoc3RkOjppc25hbihudW1iZXJW
YWx1ZSkgfHwgc3RkOjppc2luZihudW1iZXJWYWx1ZSkpCiAgICAgICAgIHJldHVybiAwOwotICAg
IH0KLSAgICAKLSAgICAvLyBSZXR1cm4gdGhlIHJlc3VsdCBvZiB0aGUgaW50MzIgY29udmVyc2lv
bi4KLSAgICByZXR1cm4gaW50VmFsdWUtPlZhbHVlKCk7CisgICAgcmV0dXJuIG51bWJlck9iamVj
dC0+SW50MzJWYWx1ZSgpOwogfQotICAgIAotdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKKwordWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmln
dXJhdGlvbiwgYm9vbCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwogCkBAIC0xNDQsMTAgKzE1Miwx
NiBAQCB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wm
IG9rKQogICAgIGlmICh2YWx1ZS0+SXNVaW50MzIoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlLT5V
aW50MzJWYWx1ZSgpOwogCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQg
c2lnbmVkIGludGVnZXIgLSBwb3NzaWJseSBwb3NpdGl2ZT8KICAgICBpZiAodmFsdWUtPklzSW50
MzIoKSkgewogICAgICAgICBpbnQzMl90IHJlc3VsdCA9IHZhbHVlLT5JbnQzMlZhbHVlKCk7CiAg
ICAgICAgIGlmIChyZXN1bHQgPj0gMCkKICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAg
ICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICAgICAgb2sg
PSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVy
biByZXN1bHQ7CiAgICAgfQogCiAgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8g
YSBudW1iZXI/CkBAIC0xNTcsMjEgKzE3MSwxMTAgQEAgdWludDMyX3QgdG9VSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKICAgICAgICAgcmV0dXJuIDA7CiAgICAg
fQogCisgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRv
dWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOworICAgICAgICBpZiAoc3RkOjppc25hbih4
KSB8fCBzdGQ6OmlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBm
bG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAwIHx8IHggPiBrTWF4VUludDMyKSB7Cisg
ICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0K
KworICAgICAgICByZXR1cm4geDsKKyAgICB9CisKICAgICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252
ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZpbml0eT8KICAgICBkb3VibGUgbnVtYmVyVmFsdWUgPSBu
dW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0gICAgaWYgKHN0ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8
IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKSB7CisgICAgaWYgKHN0ZDo6aXNuYW4obnVtYmVyVmFs
dWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBy
ZXR1cm4gbnVtYmVyT2JqZWN0LT5VaW50MzJWYWx1ZSgpOworfQorCitpbnQ2NF90IHRvSW50NjQo
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRp
b24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCit7CisgICAgb2sgPSB0cnVlOworCisgICAgLy8g
RmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUt
PklzSW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5JbnQzMlZhbHVlKCk7CisKKyAgICAv
LyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8
djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51
bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0
dXJuIDA7CiAgICAgfQogCi0gICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAz
Mi1iaXQgdW5zaWduZWQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6OlVpbnQzMj4gdWludFZh
bHVlID0gdmFsdWUtPlRvVWludDMyKCk7Ci0gICAgaWYgKHVpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsK
KyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlmIChjb25maWd1
cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYo
eCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAg
ICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOwor
ICAgICAgICBpZiAoeCA8IC0oa0pTTWF4SW50ZWdlciAtIDEpIHx8IHggPiAoa0pTTWF4SW50ZWdl
ciAtIDEpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQorCisgICAgLy8gTmFOcyBhbmQg
Ky8tSW5maW5pdHkgc2hvdWxkIGJlIDAsIG90aGVyd2lzZSBtb2R1bG8gMl42NC4KKyAgICB1bnNp
Z25lZCBsb25nIGxvbmcgaW50ZWdlcjsKKyAgICBkb3VibGVUb0ludGVnZXIoeCwgaW50ZWdlcik7
CisgICAgcmV0dXJuIGludGVnZXI7Cit9CisKK3VpbnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uIGNvbmZpZ3Vy
YXRpb24sIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1ZTsKKworICAgIC8vIEZhc3QgY2FzZS4g
VGhlIHZhbHVlIGlzIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuCisgICAgaWYgKHZhbHVlLT5J
c1VpbnQzMigpKQorICAgICAgICByZXR1cm4gdmFsdWUtPlVpbnQzMlZhbHVlKCk7CisKKyAgICAv
LyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCBpbnRlZ2VyLgorICAgIGlmICh2YWx1
ZS0+SXNJbnQzMigpKSB7CisgICAgICAgIGludDMyX3QgcmVzdWx0ID0gdmFsdWUtPkludDMyVmFs
dWUoKTsKKyAgICAgICAgaWYgKHJlc3VsdCA+PSAwKQorICAgICAgICAgICAgcmV0dXJuIHJlc3Vs
dDsKKyAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAg
ICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAg
ICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZl
cnRlZCB0byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0
ID0gdmFsdWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsK
ICAgICAgICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgcmV0
dXJuIHVpbnRWYWx1ZS0+VmFsdWUoKTsKKyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFs
dWUoKTsKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAg
ICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7Cisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEg
OiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IChrSlNNYXhJ
bnRlZ2VyIC0gMSkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4geDsKKyAgICB9CisKKyAgICAvLyBOYU5z
IGFuZCArLy1JbmZpbml0eSBzaG91bGQgYmUgMCwgb3RoZXJ3aXNlIG1vZHVsbyAyXjY0LgorICAg
IHVuc2lnbmVkIGxvbmcgbG9uZyBpbnRlZ2VyOworICAgIGRvdWJsZVRvSW50ZWdlcih4LCBpbnRl
Z2VyKTsKKyAgICByZXR1cm4gaW50ZWdlcjsKIH0KIAogdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0
aW9uVGVtcGxhdGU+IGNyZWF0ZVJhd1RlbXBsYXRlKHY4OjpJc29sYXRlKiBpc29sYXRlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAppbmRleCA5NjJiMDg2OTllODFlZmE3MDE1
NGMzZDBhYWE1MTM1MTZhMjYxOTk1Li40NzIzOTc5NTI1MmM1MWY5MjJlZmQ4NWIxZTk1NGJiZjRj
NGM3ZjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaApAQCAtNTYsNiAr
NTYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgV29ybGRDb250ZXh0SGFuZGxl
OwogCiAgICAgY29uc3QgaW50IGtNYXhSZWN1cnNpb25EZXB0aCA9IDIyOworICAgIGNvbnN0IGxv
bmcgbG9uZyBrSlNNYXhJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAwMExMOwogCiAgICAgLy8gU2No
ZWR1bGUgYSBET00gZXhjZXB0aW9uIHRvIGJlIHRocm93biwgaWYgdGhlIGV4Y2VwdGlvbiBjb2Rl
IGlzIGRpZmZlcmVudAogICAgIC8vIGZyb20gemVyby4KQEAgLTM0OCwzNiArMzQ5LDY2IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmls
dGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPik7CiAKLSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8g
YSAzMi1iaXQgaW50ZWdlci4gIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAgIC8vIHZh
bHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBvciBjb252ZXJ0cyB0byBuYW4g
b3IgdG8gYW4gaW5maW5pdHkuCi0gICAgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlLCBib29sJiBvayk7CisgICAgLy8gQ29udmVyc2lvbiBmbGFncywgdXNlZCBpbiB0b0lu
dFhYL3RvVUludFhYLgorICAgIGVudW0gSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uIHsK
KyAgICAgICAgTm9ybWFsQ29udmVyc2lvbiwKKyAgICAgICAgRW5mb3JjZVJhbmdlLAorICAgICAg
ICAvLyBGSVhNRTogSW1wbGVtZW50IENsYW1wCisgICAgfTsKKworICAgIC8vIENvbnZlcnQgYSB2
YWx1ZSB0byBhIDMyLWJpdCBzaWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYg
dGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUg
cmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9X
ZWJJREwvI2VzLWxvbmcKKyAgICBpbnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKTsKKyAgICBpbmxpbmUg
aW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spIHsg
cmV0dXJuIHRvSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsgfQogCiAgICAgLy8g
Q29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNp
b24gY2Fubm90IGZhaWwuCi0gICAgaW5saW5lIGludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB2YWx1ZSkKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGJvb2wgb2s7Ci0gICAgICAgIHJldHVybiB0b0lu
dDMyKHZhbHVlLCBvayk7CisgICAgICAgIHJldHVybiB0b0ludDMyKHZhbHVlLCBOb3JtYWxDb252
ZXJzaW9uLCBvayk7CiAgICAgfQogCi0gICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0
IHVuc2lnbmVkIGludGVnZXIuICBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKLSAgICAvLyB2
YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGFuIHVuc2lnbmVkIGludGVnZXIgb3IgY29udmVy
dHMgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5LgotICAgIHVpbnQzMl90IHRvVUludDMyKHY4OjpI
YW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spOworICAgIC8vIENvbnZlcnQgYSB2YWx1
ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0
aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSBy
YW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dl
YklETC8jZXMtdW5zaWduZWQtbG9uZworICAgIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8
djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7Cisg
ICAgaW5saW5lIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwg
Ym9vbCYgb2spIHsgcmV0dXJuIHRvVUludDMyKHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7
IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2Vy
IGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgogICAgIGlubGluZSB1aW50MzJf
dCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBi
b29sIG9rOwotICAgICAgICByZXR1cm4gdG9VSW50MzIodmFsdWUsIG9rKTsKKyAgICAgICAgcmV0
dXJuIHRvVUludDMyKHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CiAgICAgfQogCi0gICAg
aW5saW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8g
Q29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lv
biBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVt
YmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cu
dzMub3JnL1RSL1dlYklETC8jZXMtbG9uZy1sb25nCisgICAgaW50NjRfdCB0b0ludDY0KHY4OjpI
YW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uLCBib29sJiBv
ayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgaW50ZWdlciBhc3N1bWlu
ZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KKyAgICBpbmxpbmUgaW50NjRfdCB0b0ludDY0
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0
aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZhbHVlKCkpOworICAgICAgICBib29sIG9rOwor
ICAgICAgICByZXR1cm4gdG9JbnQ2NCh2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwogICAg
IH0KIAotICAgIGlubGluZSBsb25nIGxvbmcgdG9JbnQ2NCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2
YWx1ZSkKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdl
ci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNv
bnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAg
ICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLXVuc2lnbmVkLWxvbmctbG9uZwor
ICAgIHVpbnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZl
cnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUg
dG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5u
b3QgZmFpbC4KKyAgICBpbmxpbmUgdWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2ODo6VmFs
dWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGxvbmcgbG9uZz4o
dmFsdWUtPkludGVnZXJWYWx1ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAgICAgICAgcmV0dXJu
IHRvVUludDY0KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CisgICAgfQorCisgICAgaW5s
aW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgeworICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1ZSgpKTsKICAg
ICB9CiAKICAgICBpbmxpbmUgYm9vbCBpc1VuZGVmaW5lZE9yTnVsbCh2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gdmFsdWUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJp
bmRpbmdNYWNyb3MuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jv
cy5oCmluZGV4IDZmZWI1M2UxZDY3YjA0NTJiYjY3MzkwNWNjZDc2ZGI0NzMxYTBjYzguLmQ4ZDhh
NGU3OWZhNmY2YTQwYjNjMjk4YWZlYjIzMWEzYTNjOWY4MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCkBAIC0zMyw2ICszMywxNyBAQAogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKKyNkZWZpbmUgVFlQRUNIRUNLX1ZPSUQodHlwZSwgdmFyLCB2YWx1
ZSwgaXNvbGF0ZSkgXAorICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgYm9vbCBvayA9IHRydWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICB2YXIgPSAodmFsdWUpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgIGlmIChVTkxJS0VMWSghb2spKSB7ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgICAgIHRocm93VHlwZUVycm9yKDAsIGlzb2xhdGUpOyAgICAgICAgICAgXAorICAgICAgICAg
ICAgcmV0dXJuOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9CisKICNkZWZpbmUg
VjhUUllDQVRDSCh0eXBlLCB2YXIsIHZhbHVlKSBcCiAgICAgdHlwZSB2YXI7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCkBAIC00Miw2ICs1MywyMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAg
ICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICBcCiAgICAgfQogCisjZGVmaW5lIFY4VFJZ
Q0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodHlwZSwgdmFyLCB2YWx1ZSwgaXNvbGF0ZSkgXAorICAgIHR5
cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgIGJvb2wgb2sgPSB0cnVlOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHY4OjpUcnlDYXRjaCBibG9jazsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB2YXIgPSAodmFsdWUpOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgaWYgKGJsb2Nr
Lkhhc0NhdWdodCgpKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAg
ICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAg
IH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBpc29sYXRlKTsgICAg
ICAgICAgICAgICBcCisgICAgfQorCiAjZGVmaW5lIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVT
T1VSQ0UodHlwZSwgdmFyLCB2YWx1ZSkgXAogICAgIHR5cGUgdmFyKHZhbHVlKTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICBpZiAoIXZhci5wcmVwYXJl
KCkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaAppbmRleCAyNGIzM2RkMTgyZWVkYzgzMWY2YTVh
NTE5MTljODRkNDNlYzAxZGQ3Li44ZGUxMDJmMmEyNDc3ZGUxMDA5NTgzNjM4ODY3MmRhNTgxMGM4
OGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKQEAgLTM2LDI1
ICszNiwzMyBAQCBjbGFzcyBUeXBlQ29udmVyc2lvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxUeXBl
Q29udmVyc2lvbnM+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxUeXBlQ29udmVy
c2lvbnM+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBUeXBlQ29udmVyc2lvbnMoKSk7
IH0KIAotICAgIGxvbmcgdGVzdExvbmcoKSB7IHJldHVybiBtX3Rlc3RMb25nOyB9Ci0gICAgdm9p
ZCBzZXRUZXN0TG9uZyhsb25nIHZhbHVlKSB7IG1fdGVzdExvbmcgPSB2YWx1ZTsgfQotICAgIHVu
c2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9u
ZzsgfQotICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7
IG1fdGVzdFVuc2lnbmVkTG9uZyA9IHZhbHVlOyB9CisgICAgbG9uZyB0ZXN0TG9uZygpIHsgcmV0
dXJuIG1fbG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX2xvbmcg
PSB2YWx1ZTsgfQorICAgIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmcoKSB7IHJldHVybiBtX2xv
bmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VMb25nKGxvbmcgdmFsdWUpIHsgbV9s
b25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7IHJl
dHVybiBtX3Vuc2lnbmVkTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNp
Z25lZCBsb25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25l
ZCBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVk
TG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyh1bnNpZ25l
ZCBsb25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25nID0gdmFsdWU7IH0KIAotICAgIGxvbmcgbG9u
ZyB0ZXN0TG9uZ0xvbmcoKSB7IHJldHVybiBtX3Rlc3RMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0
VGVzdExvbmdMb25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RMb25nTG9uZyA9IHZhbHVlOyB9
Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4g
bV90ZXN0VW5zaWduZWRMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xv
bmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB2
YWx1ZTsgfQorICAgIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdMb25n
OyB9CisgICAgdm9pZCBzZXRUZXN0TG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fbG9uZ0xv
bmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcoKSB7
IHJldHVybiBtX2xvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcobG9uZyBsb25nIHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVk
IGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25n
TG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBs
b25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQg
bG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91
bnNpZ25lZExvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyh1bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmdMb25nID0g
dmFsdWU7IH0KIAogcHJpdmF0ZToKICAgICBUeXBlQ29udmVyc2lvbnMoKQogICAgIHsKICAgICB9
CiAKLSAgICBsb25nIG1fdGVzdExvbmc7Ci0gICAgdW5zaWduZWQgbG9uZyBtX3Rlc3RVbnNpZ25l
ZExvbmc7Ci0gICAgbG9uZyBsb25nIG1fdGVzdExvbmdMb25nOwotICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyBtX3Rlc3RVbnNpZ25lZExvbmdMb25nOworICAgIGxvbmcgbV9sb25nOworICAgIHVuc2ln
bmVkIGxvbmcgbV91bnNpZ25lZExvbmc7CisgICAgbG9uZyBsb25nIG1fbG9uZ0xvbmc7CisgICAg
dW5zaWduZWQgbG9uZyBsb25nIG1fdW5zaWduZWRMb25nTG9uZzsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZl
cnNpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbApp
bmRleCAzNjdkMWY3ZWM0ODQyZTQxZjZhYWEzMTBhYjIyYTliYzUwMWNmODRmLi5iMjdiMTU4ZDc2
MzNiMzM0NTYxNmVlNWJjN2ZlMzJjNmNlNTVhMmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9UeXBlQ29udmVyc2lvbnMuaWRsCkBAIC0yOCw4ICsyOCwxMiBAQAogICAgIEltcGxlbWVudGF0
aW9uTGFja3NWVGFibGUKIF0gaW50ZXJmYWNlIFR5cGVDb252ZXJzaW9ucyB7CiAgICAgYXR0cmli
dXRlIGxvbmcgdGVzdExvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgdGVz
dEVuZm9yY2VSYW5nZUxvbmc7CiAgICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2ln
bmVkTG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyB0ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nOwogCiAgICAgYXR0cmlidXRlIGxvbmcgbG9uZyB0ZXN0
TG9uZ0xvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyB0ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmc7CiAgICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0
VW5zaWduZWRMb25nTG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQg
bG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nOwogfTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2
NmFhNGE0NjhiNGUyYjdmNWMwYmNhMjViMGNjMGU0ZjJjNGE4M2JlLi43NDdhODUwNGZmZjQwODdh
MDUwOGExM2YxMjZlODI0NjIyYzU4NDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDIt
MTMgIEpvc2h1YSBCZWxsICA8anNiZWxsQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIEJp
bmRpbmc6IEltcGxlbWVudCBFbmZvcmNlUmFuZ2UgSURMIEF0dHJpYnV0ZSBmb3IgbG9uZyBsb25n
IGNvbnZlcnNpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05Njc5OAorCisgICAgICAgIFJldmlld2VkIGJ5IEtlbnRhcm8gSGFyYS4KKworICAgICAg
ICAqIGZhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1
ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzOiBVcGRhdGUgZXhwZWN0YXRpb24KKyAgICAgICAgZm9y
IEhUTUxPcHRpb25zQ29sbGVjdGlvbi5hZGQoZWxlbWVudCwgYmVmb3JlKSB0byBtYXRjaCBzcGVj
IC0gfGJlZm9yZXwgc2hvdWxkbid0IHRocm93LgorICAgICAgICAqIGZhc3QvanMvd2ViaWRsLXR5
cGUtbWFwcGluZy1leHBlY3RlZC50eHQ6IEV4cGVjdGF0aW9ucyBmb3IgSlNDIC0gbW9zdGx5IEZB
SUwuCisgICAgICAgICogZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWw6IEFkZGVkIEVu
Zm9yY2VSYW5nZSBjYXNlcy4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3dl
YmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0OiBFeHBlY3RhdGlvbnMgZm9yIFY4LgorICAg
ICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9u
LWJhZC1wYXJhbWV0ZXJzLmpzOiBNb3JlIGJvdW5kcyBjaGVja3MuCisKIDIwMTMtMDItMjYgIFN0
ZXBoZW4gQ2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21p
dW1dIE5ldyBiYXNlbGluZXMgZm9yIGNzczMtbW9kc2VsLTE1YwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJp
Yy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCA5N2JmMWUwNjcxMjM3ZTYwNjMzYzY2ZjBj
MTM4OGMxNjc2MTQyMjhmLi4wMTgxOWZjZDE2MjUzYTQwOGQxODg5ZWZkNGNkODg0MDBkZDY4YTM0
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVt
ZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9u
b24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMjgs
NyArMjgsNyBAQCBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmJvZHkuc2Nyb2xsVG9w
ID0geCcpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1
bWVudC5pbWFnZXMuaXRlbSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1l
cmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLnNldFNlbGVjdGlvblJh
bmdlKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iikuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgeCkn
KSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKLVBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRN
TE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIp
LCB4KScpIGlzICdudW1iZXIgb3IgbnVsbCBhbGxvd2VkIChvciBvbWl0dGVkLCBidXQgbm90IGlu
ZmluaXRlKScKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0
aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpLCB4KScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MT3B0aW9uc0Nv
bGxlY3Rpb24oKS5yZW1vdmUoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVt
ZXJpY1BvbGljeSgnY3JlYXRlSFRNTFNlbGVjdEVsZW1lbnQoKS5yZW1vdmUoeCknKSBpcyAnYW55
IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFNlbGVjdEVs
ZW1lbnQoKS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMt
cGFyYW1ldGVycy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVt
ZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzCmluZGV4IDJlNzAwNmM1YTlmMmQ0OTIy
MWViZjM0Mjk5NDAzYTE4ZjBiZjlhNmQuLjU4YmVkMTY4MDNmZTc4YTE1NzgzYzcyMGFmYjQ1NDNl
ZjhlM2Y4NTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9u
b24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLmpzCkBAIC02NCw3ICs2NCw3IEBAIGZ1bmN0aW9uIG5vbk51bWVyaWNQb2xpY3kodGVtcGxh
dGUpCiAgICAgdHJ5IHsKICAgICAgICAgZXZhbCh0ZW1wbGF0ZSk7CiAgICAgfSBjYXRjaCAoZSkg
ewotICAgICAgICBOYU5BbGxvd2VkID0gMDsKKyAgICAgICAgbmFuQWxsb3dlZCA9IDA7CiAgICAg
fQogCiAgICAgdmFyIG9taXRBbGxvd2VkID0gLTE7IC8vIG1lYW5zICJub3QgYXBwbGljYWJsZSIK
QEAgLTI0NCw3ICsyNDQsNyBAQCBzaG91bGRCZSgibm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudChcImlucHV0XCIpLnNldFNlbGVjdGlvblJhbmdlKAogCiAvLyBIVE1MT3B0
aW9uc0NvbGxlY3Rpb24KIAotc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxP
cHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwib3B0aW9uXCIp
LCB4KScpIiwgIidudW1iZXIgb3IgbnVsbCBhbGxvd2VkIChvciBvbWl0dGVkLCBidXQgbm90IGlu
ZmluaXRlKSciKTsKK3Nob3VsZEJlKCJub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MT3B0aW9u
c0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcIm9wdGlvblwiKSwgeCkn
KSIsICInYW55IHR5cGUgYWxsb3dlZCciKTsKIHNob3VsZEJlKCJub25OdW1lcmljUG9saWN5KCdj
cmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5yZW1vdmUoeCknKSIsICInYW55IHR5cGUgYWxs
b3dlZCciKTsKIAogLy8gSFRNTFNlbGVjdEVsZW1lbnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CmluZGV4IDViMmE4Y2YxNGQ0
ZTZkZWUwYWI3NDlmYThmY2Y4MTAzOWE3OGQwZDguLjljNTJmNTA5NDUxZWE3MGRiZDZiYTA2NTRl
NjhiNjBiODBkODc5MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5
cGUtbWFwcGluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwt
dHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dApAQCAtNjksNiArNjksOCBAQCBjb252ZXJ0ZXIudGVz
dExvbmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVz
dExvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RM
b25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExv
bmcgPSAnYWJjJwogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAogY29udmVydGVyLnRlc3RM
b25nID0gbnVsbApAQCAtNzcsNiArNzksNjkgQEAgY29udmVydGVyLnRlc3RMb25nID0gdW5kZWZp
bmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlv
biBFcnJvci4KIAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZUxvbmcnIGluIGNvbnZlcnRlciBpcyB0
cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPT09ICdudW1i
ZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDAKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMQor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3
RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHhGRgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4ODAwMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9
IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
IGlzIDB4N0ZGRkZGRkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4
MDAwMDAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgMjE0NzQ4MzY0OC4KK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhGRkZGRkZGRiBzaG91bGQgdGhyb3cg
YW4gZXhjZXB0aW9uLiBXYXMgNDI5NDk2NzI5NS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAtMHg4MDAwMDAwMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4
MDAwMDAwMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDkuCitGQUlM
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5MzY4OTgwLgorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAxLjc5NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gLU51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5
NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1O
dW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gSW5maW5pdHkgc2hvdWxkIHRocm93IGFu
IGV4Y2VwdGlvbi4gV2FzIEluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAtSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC1JbmZpbml0
eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTmFOIHNob3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJycKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
aXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnYWJjJyBzaG91bGQg
dGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJjLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorRkFJ
TCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcg
ZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTICd0ZXN0VW5zaWduZWRMb25nJyBpbiBjb252ZXJ0ZXIg
aXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPT09ICdudW1i
ZXInIGlzIHRydWUKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMApAQCAtMTQxLDYgKzIw
Niw4IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcnCiBQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSBudWxsCkBAIC0xNDksNiAr
MjE2LDY0IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gdW5kZWZpbmVkCiBQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNl
cHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcnIGluIGNv
bnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAtMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24u
IFdhcyAtMTI4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IC0weDgxIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMTI5LgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nIGlzIDB4RkZGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IC0weDgwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OC4KK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAxIHNob3VsZCB0
aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMzI3NjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyBpcyAweEZGRkZGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IC0yMTQ3NDgzNjQ4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IC0weDgwMDAwMDAxIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0
OS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweERDQkE5
ODc2NTQzMjEwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2ODk4
MC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1iZXIu
TUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAxLjc5NzY5MzEzNDg2MjMx
NTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gTnVtYmVy
Lk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBp
cyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5NzY5MzEzNDg2
MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLU51
bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAxLjk5CitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK0ZBSUwgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMS45OSBzaG91bGQgdGhyb3cg
YW4gZXhjZXB0aW9uLiBXYXMgLTEuOTkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIElu
ZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1J
bmZpbml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IE5hTiBzaG91bGQgdGhyb3cg
YW4gZXhjZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHRydWUKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
J2FiYycgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gdW5kZWZpbmVkIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyB1
bmRlZmluZWQuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
e3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVy
cm9yLgorCiBQQVNTICd0ZXN0TG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5
cGVvZiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0
ZXIudGVzdExvbmdMb25nID0gMApAQCAtMTkzLDE2ICszMTgsMjggQEAgY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVy
Lk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMg
LTkyMjMzNzIwMzY4NTQ3NzYwMDAuCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLU51bWJlci5N
QVhfVkFMVUUKK0ZBSUwgY29udmVydGVyLnRlc3RMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIC05
MjIzMzcyMDM2ODU0Nzc2MDAwLgogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDEuOTkKIFBBU1Mg
Y29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEu
OTkKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25n
TG9uZyA9IEluZmluaXR5CitGQUlMIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgc2hvdWxkIGJlIDAu
IFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAwMC4KK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtSW5m
aW5pdHkKK0ZBSUwgY29udmVydGVyLnRlc3RMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIC05MjIz
MzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IE5hTgorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBmYWxzZQog
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
PSB0cnVlCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RM
b25nTG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVy
LnRlc3RMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDEKIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnYWJjJwogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBudWxsCkBAIC0yMTEsNiArMzQ4LDcyIEBA
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RM
b25nTG9uZyBpcyAwCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5j
dGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1Mg
J3Rlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlw
ZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRy
dWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
aXMgLTEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg4MAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
LTB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
MHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZGCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAtMHg4MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZG
RkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGRkZG
RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg4MDAwMDAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIC0weDgwMDAwMDAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdh
cyA2MjEyOTY1ODg1OTM2ODk4MC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1OdW1iZXIuTUlO
X1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorRkFJ
TCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRSBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitG
QUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxV
RSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAtMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5m
aW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIEluZmluaXR5LgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAtSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5hTi4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
aXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9ICdhYmMn
IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBhYmMuCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHVu
ZGVmaW5lZCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTICd0ZXN0VW5z
aWduZWRMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQogY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gMApAQCAtMjU1LDE2ICs0NTgsMjggQEAgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0g
LU51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFCitGQUlMIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIDkyMjMzNzIwMzY4NTQ3NzYwMDAuCiBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAxLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMS45
OQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRkZGRkZG
RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBJbmZpbml0eQorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nID0gLUluZmluaXR5CitGQUlMIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBz
aG91bGQgYmUgMC4gV2FzIDkyMjMzNzIwMzY4NTQ3NzYwMDAuCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IGZhbHNlCiBQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCiBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJzEnCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAnYWJjJwogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gbnVsbApAQCAtMjczLDYg
KzQ4OCw2NCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB1bmRlZmluZWQKIFBB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7
fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMSBzaG91bGQgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBXYXMgLTEuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGCitGQUlMIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAtMTI4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSAtMHg4MSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEy
OS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZG
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkYKK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMCBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY4LgorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAxIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyAtMzI3NjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGCitGQUlMIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAwIHNob3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4
Y2VwdGlvbi4gV2FzIC0yMTQ3NDgzNjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwIHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2ODk4MC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRo
cm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxV
RSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMS45OQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMS45OSBzaG91bGQg
dGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuOTkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IEluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRp
b24uIFdhcyBJbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtSW5m
aW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IE5hTiBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlz
IDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJ2Fi
Yycgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gdW5kZWZpbmVkIHNob3VsZCB0aHJvdyBhbiBleGNlcHRp
b24uIFdhcyB1bmRlZmluZWQuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3
IGV4Y2VwdGlvbiBFcnJvci4KKwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBU
RVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBl
LW1hcHBpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5o
dG1sCmluZGV4IDIxOTEzYmUwZmU4M2MwMjE3OTQwOWQ3YzY1YmZlY2FjZjQzNzAwMTIuLjI5YWVi
ZjdhODAwMjIxZWY5YjI0NmJjOGFhMTdjZWZjOTY2MTMwY2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sCkBAIC0zNiwxMSArMzYsMjMgQEAgZnVuY3Rp
b24gdGVzdE5vbk51bWVyaWNUb051bWVyaWMoYXR0cmlidXRlKQogICAgIGNvbnZlcnQoYXR0cmli
dXRlLCAiZmFsc2UiLCAiMCIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAidHJ1ZSIsICIxIik7
CiAgICAgY29udmVydChhdHRyaWJ1dGUsICInJyIsICIwIik7CisgICAgY29udmVydChhdHRyaWJ1
dGUsICInMSciLCAiMSIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJ2FiYyciLCAiMCIpOwog
ICAgIGNvbnZlcnQoYXR0cmlidXRlLCAibnVsbCIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1
dGUsICJ1bmRlZmluZWQiLCAiMCIpOwogfQogCitmdW5jdGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVt
ZXJpY0VuZm9yY2VSYW5nZShhdHRyaWJ1dGUpCit7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJm
YWxzZSIsICIwIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJ0cnVlIiwgIjEiKTsKKyAgICBj
b252ZXJ0KGF0dHJpYnV0ZSwgIicnIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicx
JyIsICIxIik7CisgICAgY29udmVydFRocm93cyhhdHRyaWJ1dGUsICInYWJjJyIpOworICAgIGNv
bnZlcnQoYXR0cmlidXRlLCAibnVsbCIsICIwIik7CisgICAgY29udmVydFRocm93cyhhdHRyaWJ1
dGUsICJ1bmRlZmluZWQiKTsKK30KKwogdHlwZSA9ICJ0ZXN0TG9uZyI7CiB2ZXJpZnlBdHRyaWJ1
dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC03NSw2ICs4Nyw0MCBAQCB0ZXN0Tm9u
TnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVz
dEVuZm9yY2VSYW5nZUxvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBl
LCAiMCIpOworY29udmVydCh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZl
cnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwg
IjB4RkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MSIp
OworY29udmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMCIpOworY29udmVy
dCh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVy
dFRocm93cyh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhGRkZG
RkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEw
Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5
cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1i
ZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7
Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0x
Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBl
LCAiLUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1l
cmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3Zh
bHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogdHlw
ZSA9ICJ0ZXN0VW5zaWduZWRMb25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQo
dHlwZSwgIjAiKTsKQEAgLTEwOSw2ICsxNTUsNDAgQEAgdGVzdE5vbk51bWVyaWNUb051bWVyaWMo
dHlwZSk7CiBjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5l
dyBFcnJvcjt9fSIpOwogZGVidWcoIiIpOwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4
RkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgw
MDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4
ODAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAi
MHg3RkZGRkZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBl
LCAiMHhGRkZGRkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIw
eERDQkE5ODc2NTQzMjEwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVF
Iik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1J
Tl9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIi0xLjk5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29u
dmVydFRocm93cyh0eXBlLCAiLUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4i
KTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRo
cm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2Rl
YnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0TG9uZ0xvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUp
OwogY29udmVydCh0eXBlLCAiMCIpOwpAQCAtMTMyLDE5ICsyMTIsNTEgQEAgY29udmVydCh0eXBl
LCAiLTB4ODAwMDAwMDEiKTsKIGNvbnZlcnQodHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKIGNv
bnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiLU51
bWJlci5NSU5fVkFMVUUiLCAiMCIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJl
dHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIw
Iik7Ci0vL2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQo
dHlwZSwgIk51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5N
QVhfVkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7CiBjb252ZXJ0KHR5
cGUsICItMS45OSIsICItMSIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdl
ZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252
ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIp
OworY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiLUluZmlu
aXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1Rv
TnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7
dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAi
KTsKK2NvbnZlcnQodHlwZSwgIi0xIik7Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5
cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZG
Iik7Citjb252ZXJ0KHR5cGUsICItMHg4MCIpOworY29udmVydCh0eXBlLCAiLTB4ODEiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4N0ZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0
KHR5cGUsICIweEZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnQodHlw
ZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnQo
dHlwZSwgIi0weDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOworY29u
dmVydFRocm93cyh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydCh0eXBlLCAiTnVt
YmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIs
ICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiMS45OSIs
ICIxIik7Citjb252ZXJ0KHR5cGUsICItMS45OSIsICItMSIpOworY29udmVydFRocm93cyh0eXBl
LCAiSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVy
dFRocm93cyh0eXBlLCAiTmFOIiwgIjAiKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3Jj
ZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0VW5zaWduZWRM
b25nTG9uZyI7CiB2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBA
IC0xNjgsMTggKzI4MCw1MCBAQCBjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIsICIweEZGRkZG
RkZGN0ZGRkZGRkYiKTsKIGNvbnZlcnQodHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKIGNvbnZl
cnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiLU51bWJl
ci5NSU5fVkFMVUUiLCAiMCIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdl
ZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7
Ci0vL2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlw
ZSwgIk51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhf
VkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7CiBjb252ZXJ0KHR5cGUs
ICItMS45OSIsICIweEZGRkZGRkZGRkZGRkZGRkYiKTsKLS8vIEZJWE1FOiBJbmNvbnNpc3RlbnQg
cmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIkluZmluaXR5Iiwg
IjAiKTsKLS8vY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKLS8vY29udmVydCh0eXBl
LCAiTmFOIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIkluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQo
dHlwZSwgIi1JbmZpbml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOwogdGVz
dE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVP
ZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwogZGVidWcoIiIpOwogCit0eXBlID0g
InRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0eXBl
KTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xIik7Citjb252
ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUsICIw
eDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4
MCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZG
RiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0w
eDgwMDEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4
ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnRUaHJvd3Mo
dHlwZSwgIi0weDgwMDAwMDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMSIp
OworY29udmVydFRocm93cyh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydCh0eXBl
LCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9W
QUxVRSIsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAi
MS45OSIsICIxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMS45OSIpOworY29udmVydFRocm93
cyh0eXBlLCAiSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiTmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9y
Y2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7
dGhyb3cgbmV3IEVycm9yO319Iik7CitkZWJ1ZygiIik7CisKIDwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9InJlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCAxZThiZDU3YmQzMTFiODJjZTlmMjQ4YmRkNzQ2
NDRiYzJmMDJkNmQ1Li4xNDU1N2Q0NTM2NmRkZjM0MWI2YzAxMjA3MGUyODkxMjNhMTE4ODdkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1w
YXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMTgsNiArMTgsMTUg
QEAgUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIDApIHRocmV3IFR5cGVFcnJvcjogVHlwZSBl
cnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3Blbihk
Ym5hbWUsIC01KQogUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KIFBBU1MgaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCAtNSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlw
ZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgSW5maW5pdHkpCitQ
QVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIElu
ZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJyb3Ig
ZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpCitQQVNTIEV4
Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0
eSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2Vw
dGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKQorUEFTUyBFeGNlcHRpb24gd2Fz
IHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pIHRocmV3IFR5cGVFcnJv
cjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVk
REIub3BlbihkYm5hbWUsIC0xKQogUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KIFBBU1MgaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lv
bi1iYWQtcGFyYW1ldGVycy5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291
cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCmluZGV4IGFmMzVmMmQ0YmM4MmIwYmNk
YjViMDE0OGM2MzBmMjE1Mzk2M2JmYzEuLmQzMzljMzJjMWM2YjExNDk3ZTFjYzg5ZDBjMDczNWFh
Mzk5OTc0NzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291
cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCkBAIC0y
MCw2ICsyMCw5IEBAIGZ1bmN0aW9uIGRlbGV0ZVN1Y2Nlc3MoZXZ0KSB7CiAgICAgZXZhbEFuZEV4
cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsICdzdHJpbmd2ZXJzaW9u
JykiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRl
eGVkREIub3BlbihkYm5hbWUsIDApIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RF
eGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkiLCAiVHlwZUVycm9yIik7
CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUs
IEluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xh
c3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsKKyAg
ICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFO
KSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4
ZWREQi5vcGVuKGRibmFtZSwgLTEpIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RF
eGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAweDIwMDAwMDAwMDAwMDAwKSIs
ICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgbnVsbCkiLCAiVHlwZUVycm9yIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192258</attachid>
            <date>2013-03-08 11:49:32 -0800</date>
            <delta_ts>2013-03-08 12:15:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130308114535.patch</filename>
            <type>text/plain</type>
            <size>111655</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MTk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzcxNjBkZTU1ZDRjYzkz
ZGJlNDJjM2E2YjRiODRkYWZlODE1N2I4Zi4uMjk1OTQ0YzlhNjU3YzAxZDcxMjMxMWRhNzQ4ZjM0
M2Q2OTFjNjc2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAzLTA4ICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgVGVzdHM6
IGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1s
OiBBZGRlZCBFbmZvcmNlUmFuZ2UgY2FzZXMuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCQ3Vyc29yOjphZHZhbmNlKTog
UmVtb3ZlIGN1c3RvbSBib3VuZHMgY2hlY2tpbmcuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvSURCQ3Vyc29yLmg6IFVwZGF0ZSB0eXBlcy4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuaWRsOiBVc2UgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkZhY3Rvcnk6Om9w
ZW4pOiBSZW1vdmUgY3VzdG9tIGJvdW5kcyBjaGVja2luZy4KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5Lmg6IFVwZGF0ZSB0eXBlcy4KKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDogVXNlIFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChKU1ZhbHVlVG9OYXRp
dmUpOiBBZGQgRklYTUUgdG8gaW1wbGVtZW50IFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06CisgICAgICAgIChHZW5lcmF0ZU5vcm1h
bEF0dHJTZXR0ZXIpOiBJZiBjb252ZXJzaW9uIG1heSB0aHJvdywgZ2VuZXJhdGUgY2hlY2tpbmcg
Y29kZS4KKyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKTogRGl0dG8uCisgICAgICAg
IChDb252ZXJzaW9uVGhyb3dzVHlwZUVycm9yKTogTGV0cyBjYWxsZXJzIG9mIEpTVmFsdWVUb05h
dGl2ZSBkZXRlcm1pbmUgaWYKKyAgICAgICAgY2hlY2tpbmcgY29kZSBpcyBuZWVkZWQuCisgICAg
ICAgIChKU1ZhbHVlVG9OYXRpdmUpOiBPcHRpb25hbGx5IGNhbGwgdHlwZSBjaGVja2luZyB2YXJp
YXRpb25zIG9mIGNvbnZlcnNpb24KKyAgICAgICAgbWV0aG9kcy4KKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0OiBBZGQgRW5mb3JjZVJhbmdlLgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbDogQWRkIEVuZm9yY2VSYW5nZSB0ZXN0
IG1ldGhvZHMuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5j
cHA6IFVwZGF0ZWQgZXhwZWN0YXRpb25zLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGlu
Zy5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDMyKTogQWNjZXB0IGZsYWdzLCByZXR1cm4g
c3VjY2Vzcy9mYWlsIHN0YXR1cy4KKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDMyKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjp0
b1VJbnQ2NCk6IERpdHRvLgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5oOiBVcGRh
dGUgc2lnbmF0dXJlcywgZGVmaW5lIGZsYWcgZW51bSwgaGVscGVyIGZ1bmN0aW9ucy4KKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaDogTWFjcm9zIGZvciBnZW5lcmF0aW5n
IHR5cGUgY2hlY2tpbmcgd3JhcHBlcnMuCisgICAgICAgICogdGVzdGluZy9UeXBlQ29udmVyc2lv
bnMuaDogQWRkIEVuZm9yY2VSYW5nZSB0ZXN0IG1ldGhvZHMuCisgICAgICAgICogdGVzdGluZy9U
eXBlQ29udmVyc2lvbnMuaWRsOiBEaXR0by4KKwogMjAxMy0wMy0wOCAgQWxiZXJ0byBHYXJjaWEg
IDxhZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0JsYWNrQmVycnldIExheWVyVGlsZXI6
IHJlbmFtZSBjdXJyZW50RnJhbWVIYXNBbHBoYSBhcyBjdXJyZW50RnJhbWVLbm93blRvQmVPcGFx
dWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNv
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCmlu
ZGV4IDdiYjBmNTAwZTQ3YjQyNjEzNDBhOTMyODE1OGFkZTkzZTM0ODU2YzYuLjFjZjk3NzEwMWNh
NjMyNjNkZmNkZmZjNTc1OGQyNGRjYTc0NGZiNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIFBhc3NSZWZQ
dHI8SURCUmVxdWVzdD4gSURCQ3Vyc29yOjp1cGRhdGUoU2NyaXB0U3RhdGUqIHN0YXRlLCBTY3Jp
cHRWYWx1ZSYgdmFsdWUsCiAgICAgcmV0dXJuIG9iamVjdFN0b3JlLT5wdXQoSURCRGF0YWJhc2VC
YWNrZW5kSW50ZXJmYWNlOjpDdXJzb3JVcGRhdGUsIElEQkFueTo6Y3JlYXRlKHRoaXMpLCBzdGF0
ZSwgdmFsdWUsIG1fY3VycmVudFByaW1hcnlLZXksIGVjKTsKIH0KIAotdm9pZCBJREJDdXJzb3I6
OmFkdmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKK3ZvaWQgSURCQ3Vy
c29yOjphZHZhbmNlKHVuc2lnbmVkIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewog
ICAgIGVjID0gMDsKICAgICBJREJfVFJBQ0UoIklEQkN1cnNvcjo6YWR2YW5jZSIpOwpAQCAtMTY2
LDggKzE2Niw3IEBAIHZvaWQgSURCQ3Vyc29yOjphZHZhbmNlKGxvbmcgbG9uZyBjb3VudCwgRXhj
ZXB0aW9uQ29kZSYgZWMpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBGSVhNRTog
VGhpcyBzaG91bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9iLzk2
Nzk4IGxhbmRzLgotICAgIGlmIChjb3VudCA8IDEgfHwgY291bnQgPiBVSU5UX01BWCkgeworICAg
IGlmICghY291bnQpIHsKICAgICAgICAgZWMgPSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJD
dXJzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCmlu
ZGV4IDE4ZDIwMGVhNjEwNjc3OTdlYTRjOWVkYzUxNjFkMTVkYjRiM2RhZTcuLmUzNTg5MTA5NmQ3
NWIzZWYyZTM5OTg3OWIxOTM2M2UxMjNjNGExMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oCkBAIC02OSw4ICs2OSw3IEBAIHB1YmxpYzoKICAgICBJ
REJBbnkqIHNvdXJjZSgpIGNvbnN0OwogCiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiB1cGRh
dGUoU2NyaXB0U3RhdGUqLCBTY3JpcHRWYWx1ZSYsIEV4Y2VwdGlvbkNvZGUmKTsKLSAgICAvLyBG
SVhNRTogTWFrZSB0aGlzIHVuc2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFu
ZHMuCi0gICAgdm9pZCBhZHZhbmNlKGxvbmcgbG9uZywgRXhjZXB0aW9uQ29kZSYpOworICAgIHZv
aWQgYWR2YW5jZSh1bnNpZ25lZCBsb25nLCBFeGNlcHRpb25Db2RlJik7CiAgICAgLy8gRklYTUU6
IFRyeSB0byBtb2RpZnkgdGhlIGNvZGUgZ2VuZXJhdG9yIHNvIHRoaXMgb3ZlcmxvYWQgaXMgdW5u
ZWVkZWQuCiAgICAgdm9pZCBjb250aW51ZUZ1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
LCBFeGNlcHRpb25Db2RlJiBlYykgeyBjb250aW51ZUZ1bmN0aW9uKHN0YXRpY19jYXN0PElEQktl
eSo+KDApLCBlYyk7IH0KICAgICB2b2lkIGNvbnRpbnVlRnVuY3Rpb24oU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIGNvbnN0IFNjcmlwdFZhbHVlJiBrZXksIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCmluZGV4IDQ1NzBj
MWVjYzg3ZDA4YjkwMTAwM2EzZGM4ZjI3ODYxZjExODhlYTEuLjRiNjI2NWI0MjhmMjZlOTFmYzA3
YmI4YjVjMjIxNWQ3ZGM0MjM0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkN1cnNvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCQ3Vyc29yLmlkbApAQCAtMzUsOCArMzUsNyBAQAogCiAgICAgW0NhbGxXaXRoPVNj
cmlwdFN0YXRlXSBJREJSZXF1ZXN0IHVwZGF0ZShpbiBhbnkgdmFsdWUpCiAgICAgICAgIHJhaXNl
cyAoRE9NRXhjZXB0aW9uKTsKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNlUmFuZ2Vd
IHVuc2lnbmVkIGxvbmcgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgdm9pZCBh
ZHZhbmNlKGluIGxvbmcgbG9uZyBjb3VudCkKKyAgICB2b2lkIGFkdmFuY2UoaW4gW0VuZm9yY2VS
YW5nZV0gdW5zaWduZWQgbG9uZyBjb3VudCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24p
OwogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBsZW1lbnRlZEFzPWNv
bnRpbnVlRnVuY3Rpb25dIHZvaWQgY29udGludWUoaW4gW09wdGlvbmFsXSBhbnkga2V5KQogICAg
ICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCmluZGV4IGQwMTIwZjYwYTg5YWRmZmI3ZDE2NWM5YWFi
NzNmOWY3NmYzMTEwYjAuLjFkNWYwZmJiMWFiZjFlNWFkZGQ3Mzg1Mzc5M2Y5ZDBkYzE4MDJmNzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rvcnku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3Bw
CkBAIC0xMTEsMTEgKzExMSw5IEBAIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gSURCRmFjdG9yeTo6
Z2V0RGF0YWJhc2VOYW1lcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250CiAgICAgcmV0dXJu
IHJlcXVlc3Q7CiB9CiAKLVBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6
b3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUs
IGludDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCitQYXNzUmVmUHRyPElEQk9wZW5E
QlJlcXVlc3Q+IElEQkZhY3Rvcnk6Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4
dCwgY29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0
aW9uQ29kZSYgZWMpCiB7Ci0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG9ubHkgbmVlZCB0byBj
aGVjayBmb3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBjb25zdCBpbnQ2
NF90IG1heEVDTUFTY3JpcHRJbnRlZ2VyID0gMHgyMDAwMDAwMDAwMDAwMExMIC0gMTsKLSAgICBp
ZiAodmVyc2lvbiA8IDEgfHwgdmVyc2lvbiA+IG1heEVDTUFTY3JpcHRJbnRlZ2VyKSB7CisgICAg
aWYgKCF2ZXJzaW9uKSB7CiAgICAgICAgIGVjID0gVHlwZUVycm9yOwogICAgICAgICByZXR1cm4g
MDsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJGYWN0b3J5LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmgKaW5kZXggY2M2MWNkN2M2ZmJkMTJlNGUwOWE3N2VjOWRkMGRhMjBjZmU3NzBiOS4uOTc0Mjk3
M2ExN2U1ZjNiMDc5NWUzM2RmNzljNjZlNzMzZTJlYzQ2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaApAQCAtNTcsNyArNTcsNyBAQCBwdWJsaWM6
CiAgICAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICBQYXNzUmVmUHRyPElEQk9wZW5E
QlJlcXVlc3Q+IG9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFt
ZSwgRXhjZXB0aW9uQ29kZSYpOwotICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3Bl
bihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZl
cnNpb24sIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+
IG9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgdW5zaWdu
ZWQgbG9uZyBsb25nIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmKTsKICAgICBQYXNzUmVmUHRyPElE
Qk9wZW5EQlJlcXVlc3Q+IGRlbGV0ZURhdGFiYXNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBj
b25zdCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIHNob3J0IGNtcChTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUmIGZpcnN0LCBjb25zdCBTY3Jp
cHRWYWx1ZSYgc2Vjb25kLCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsCmluZGV4IGE1MTYwNWIyYjRlMzEyOTdiYjU1
ZGEzYjUxN2Q1ZGQxMmMzZDIyYWMuLmVmNTFiYmY4Mzg3Y2E4YmQwZTZhZWJjNTEwNjNiOGQ1ZTY4
ZDRmNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZh
Y3RvcnkuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaWRsCkBAIC0zMSw4ICszMSw3IEBACiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQsIEltcGxlbWVudGVkQXM9Z2V0RGF0YWJhc2VOYW1lc10gSURCUmVxdWVzdCB3ZWJraXRH
ZXREYXRhYmFzZU5hbWVzKCkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogCi0gICAg
Ly8gRklYTUU6IE1ha2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgb25j
ZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlv
bkNvbnRleHRdIElEQk9wZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW09w
dGlvbmFsXSBsb25nIGxvbmcgdmVyc2lvbikKKyAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9u
Q29udGV4dF0gSURCT3BlbkRCUmVxdWVzdCBvcGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbRW5m
b3JjZVJhbmdlLCBPcHRpb25hbF0gdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24pCiAgICAgICAg
IHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dF0gSURCT3BlbkRCUmVxdWVzdCBkZWxldGVEYXRhYmFzZShpbiBET01TdHJpbmcgbmFtZSkK
ICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCA2YWRjOTg4M2Q0NjZiNzFm
YTUxMDc1ZjViOGRjOWJmMjlhNWE4ZjMxLi41MjY4ZDlmNDliMzM4OGQ3YzE4Njk5NzIzYWE0MWEx
ZDgxNWQzNzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbQpAQCAtMzE2Miw2ICszMTYyLDcgQEAgc3ViIEpTVmFsdWVUb05hdGl2
ZQogICAgIHJldHVybiAiJHZhbHVlLnRvQm9vbGVhbihleGVjKSIgaWYgJHR5cGUgZXEgImJvb2xl
YW4iOwogICAgIHJldHVybiAiJHZhbHVlLnRvTnVtYmVyKGV4ZWMpIiBpZiAkdHlwZSBlcSAiZG91
YmxlIjsKICAgICByZXR1cm4gIiR2YWx1ZS50b0Zsb2F0KGV4ZWMpIiBpZiAkdHlwZSBlcSAiZmxv
YXQiOworICAgICMgRklYTUU6IEFkZCBbRW5mb3JjZVJhbmdlXSBzdXBwb3J0CiAgICAgcmV0dXJu
ICIkdmFsdWUudG9JbnQzMihleGVjKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJz
aG9ydCI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9VSW50MzIoZXhlYykiIGlmICR0eXBlIGVxICJ1
bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwogICAgIHJldHVybiAi
c3RhdGljX2Nhc3Q8JHR5cGU+KCR2YWx1ZS50b0ludGVnZXIoZXhlYykpIiBpZiAkdHlwZSBlcSAi
bG9uZyBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggZTM4
YWY0ZDE1NjVkZDliZTVkZjRiZjUwN2YzZjI4ZjZkZmMwMTQzYy4uNzY5MmM1MjFjZjYyMmVkYTQy
MDAyMThkYTFlMTcwZTQzM2ZkZGI3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KQEAgLTEzMDIsMTQgKzEzMDIsMTkgQEAgRU5E
CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudEludGVybmFscywgIiAgICAgICAgcmV0dXJu
O1xuIik7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgICBteSAkdmFsdWUgPSBKU1Zh
bHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFsdWUiLCAiaW5mby5HZXRJc29s
YXRlKCkiKTsKICAgICAgICAgbXkgJGFycmF5VHlwZSA9ICRjb2RlR2VuZXJhdG9yLT5HZXRBcnJh
eVR5cGUoJG5hdGl2ZVR5cGUpOwogCiAgICAgICAgIGlmICgkbmF0aXZlVHlwZSA9fiAvXlY4U3Ry
aW5nUmVzb3VyY2UvKSB7CisgICAgICAgICAgICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUo
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFsdWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAg
ICAgICAgICAgIHB1c2goQGltcGxDb250ZW50SW50ZXJuYWxzLCAiICAgICIgLiBDb252ZXJ0VG9W
OFN0cmluZ1Jlc291cmNlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgJG5hdGl2ZVR5cGUsICJ2Iiwg
JHZhbHVlLCAiVk9JRCIpIC4gIlxuIik7CiAgICAgICAgIH0gZWxzaWYgKCRhcnJheVR5cGUpIHsK
KyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmlidXRlLT5zaWdu
YXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnRJbnRlcm5hbHMsICIgICAgVmVjdG9yPCRhcnJheVR5cGU+IHYgPSAkdmFsdWU7
XG4iKTsKKyAgICAgICAgfSBlbHNpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPnsiRW5mb3JjZVJhbmdlIn0pIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpT
VmFsdWVUb05hdGl2ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElz
b2xhdGUoKSIsICJjYW5UaHJvd0V4Y2VwdGlvbiIpOworICAgICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnRJbnRlcm5hbHMsICIgICAgVFlQRUNIRUNLX1ZPSUQoJG5hdGl2ZVR5cGUsIHYsICR2YWx1
ZSwgaW5mby5HZXRJc29sYXRlKCkpO1xuIik7CiAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFs
dWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
SW50ZXJuYWxzLCAiICAgICRuYXRpdmVUeXBlIHYgPSAkdmFsdWU7XG4iKTsKICAgICAgICAgfQog
ICAgIH0KQEAgLTE4ODgsOCArMTg5MywxMyBAQCBzdWIgR2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2sK
ICAgICAgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgICAgIHJl
dHVybiB0aHJvd1R5cGVFcnJvcigwLCBhcmdzLkdldElzb2xhdGUoKSk7XG4iOwogICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmlu
ZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAiIC4KLSAg
ICAgICAgICAgICAgICAgSlNWYWx1ZVRvTmF0aXZlKCRwYXJhbWV0ZXIsICRvcHRpb25hbCAmJiAk
b3B0aW9uYWwgZXEgIkRlZmF1bHRJc051bGxTdHJpbmciID8gImFyZ3VtZW50T3JOdWxsKGFyZ3Ms
ICRwYXJhbUluZGV4KSIgOiAiYXJnc1skcGFyYW1JbmRleF0iLCAiYXJncy5HZXRJc29sYXRlKCki
KSAuICIpO1xuIjsKKyAgICAgICAgICAgIGlmICgkcGFyYW1ldGVyLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiRW5mb3JjZVJhbmdlIn0pIHsKKyAgICAgICAgICAgICAgICBteSAkdmFsdWUgPSBKU1Zh
bHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgJG9wdGlvbmFsICYmICRvcHRpb25hbCBlcSAiRGVmYXVs
dElzTnVsbFN0cmluZyIgPyAiYXJndW1lbnRPck51bGwoYXJncywgJHBhcmFtSW5kZXgpIiA6ICJh
cmdzWyRwYXJhbUluZGV4XSIsICJhcmdzLkdldElzb2xhdGUoKSIsICJjYW5UaHJvd0V4Y2VwdGlv
biIpOworICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZ
Q0FUQ0hfV0lUSF9UWVBFQ0hFQ0soJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFsdWUs
IGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAkb3B0aW9uYWwg
JiYgJG9wdGlvbmFsIGVxICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJhcmd1bWVudE9yTnVsbChh
cmdzLCAkcGFyYW1JbmRleCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwgImFyZ3MuR2V0SXNvbGF0
ZSgpIik7CisgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgVjhU
UllDQVRDSCgkbmF0aXZlVHlwZSwgJHBhcmFtZXRlck5hbWUsICR2YWx1ZSk7XG4iOworICAgICAg
ICAgICAgfQogICAgICAgICAgICAgaWYgKCRuYXRpdmVUeXBlIGVxICdEaWN0aW9uYXJ5Jykgewog
ICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgaWYgKCEkcGFyYW1l
dGVyTmFtZS5pc1VuZGVmaW5lZE9yTnVsbCgpICYmICEkcGFyYW1ldGVyTmFtZS5pc09iamVjdCgp
KVxuIjsKICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgICAgICBy
ZXR1cm4gdGhyb3dUeXBlRXJyb3IoXCJOb3QgYW4gb2JqZWN0LlwiLCBhcmdzLkdldElzb2xhdGUo
KSk7XG4iOwpAQCAtMzk3NywxNiArMzk4NywyNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAg
bXkgJHNpZ25hdHVyZSA9IHNoaWZ0OwogICAgIG15ICR2YWx1ZSA9IHNoaWZ0OwogICAgIG15ICRn
ZXRJc29sYXRlID0gc2hpZnQ7CisgICAgbXkgJG1heUZhaWwgPSBzaGlmdDsKIAogICAgIG15ICR0
eXBlID0gJHNpZ25hdHVyZS0+dHlwZTsKKyAgICBteSAkaW50Q29udmVyc2lvbiA9ICRzaWduYXR1
cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSA/ICJFbmZvcmNlUmFuZ2Ui
IDogIk5vcm1hbENvbnZlcnNpb24iOworICAgIGRpZSAiQ2FuJ3QgaGFuZGxlIFtFbmZvcmNlUmFu
Z2VdIHVubGVzcyBjYWxsZWQgZnJvbSBjb250ZXh0IHRoYXQgaGFuZGxlcyBmYWlsdXJlcy4iIGlm
ICRpbnRDb252ZXJzaW9uIGVxICJFbmZvcmNlUmFuZ2UiIGFuZCAhJG1heUZhaWw7CiAKICAgICBy
ZXR1cm4gIiR2YWx1ZSIgaWYgJHR5cGUgZXEgIkpTT2JqZWN0IjsKICAgICByZXR1cm4gIiR2YWx1
ZS0+Qm9vbGVhblZhbHVlKCkiIGlmICR0eXBlIGVxICJib29sZWFuIjsKICAgICByZXR1cm4gInN0
YXRpY19jYXN0PCR0eXBlPigkdmFsdWUtPk51bWJlclZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiZmxv
YXQiIG9yICR0eXBlIGVxICJkb3VibGUiOwogCi0gICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSki
IGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwotICAgIHJldHVybiAidG9V
SW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1
bnNpZ25lZCBzaG9ydCI7Ci0gICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVx
ICJ1bnNpZ25lZCBsb25nIGxvbmciIG9yICR0eXBlIGVxICJsb25nIGxvbmciOworICAgIGlmICgk
bWF5RmFpbCkgeworICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlLCAkaW50Q29udmVyc2lv
biwgb2spIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKKyAgICAgICAg
cmV0dXJuICJ0b1VJbnQzMigkdmFsdWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVx
ICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAgICAgICBy
ZXR1cm4gInRvSW50NjQoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2spIiBpZiAkdHlwZSBlcSAi
bG9uZyBsb25nIjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFsdWUsICRpbnRDb252ZXJz
aW9uLCBvaykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIGxvbmciOworICAgIH0gZWxzZSB7
CisgICAgICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyIgb3Ig
JHR5cGUgZXEgInNob3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUpIiBpZiAk
dHlwZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKKyAg
ICAgICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciOwor
ICAgICAgICByZXR1cm4gInRvVUludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBs
b25nIGxvbmciOworICAgIH0KICAgICByZXR1cm4gInN0YXRpY19jYXN0PFJhbmdlOjpDb21wYXJl
SG93PigkdmFsdWUtPkludDMyVmFsdWUoKSkiIGlmICR0eXBlIGVxICJDb21wYXJlSG93IjsKICAg
ICByZXR1cm4gInRvV2ViQ29yZURhdGUoJHZhbHVlKSIgaWYgJHR5cGUgZXEgIkRhdGUiOwogICAg
IHJldHVybiAidG9ET01TdHJpbmdMaXN0KCR2YWx1ZSwgJGdldElzb2xhdGUpIiBpZiAkdHlwZSBl
cSAiRE9NU3RyaW5nTGlzdCI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9JRExBdHRyaWJ1dGVzLnR4dAppbmRleCA4ZWRhYzEyODcxYWM0ZDEzMTE3NTZmZWMyOWUzMjg4
NzUxNjI4MTdhLi4yOGNiZWUzZWQ2NDI3M2VjOWJiMmNkMGYzOGY2NGVkMWFhMzI5MTk1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQK
QEAgLTUyLDYgKzUyLDcgQEAgRG9Ob3RDaGVja0NvbnN0YW50cwogRG9Ob3RDaGVja1NlY3VyaXR5
CiBEb05vdENoZWNrU2VjdXJpdHlPbkdldHRlcgogRG9Ob3RDaGVja1NlY3VyaXR5T25TZXR0ZXIK
K0VuZm9yY2VSYW5nZQogRXZlbnRUYXJnZXQKIEV4dGVuZHNET01HbG9iYWxPYmplY3QKIEdlbmVy
YXRlSXNSZWFjaGFibGU9SW1wbERvY3VtZW50fEltcGxFbGVtZW50Um9vdHxJbXBsT3duZXJOb2Rl
Um9vdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rl
c3RPYmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmou
aWRsCmluZGV4IDI0YTBlNmMwOWEzODZiNmJmYWZkYjBkY2NlYmE5ZDJlZjI1NTY0NzguLmY1NGJj
YTdiY2Q2NDliMzliN2NmZTVhYWMwMDgyNDM0MDg0MzkyMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAgLTE1MCw2ICsxNTAsMTkg
QEAgZW51bSBUZXN0RW51bVR5cGUgeyAiIiwgIkVudW1WYWx1ZTEiLCAiRW51bVZhbHVlMiIsICJF
bnVtVmFsdWUzIiB9OwogICAgIHN0YXRpYyB2b2lkICAgIHN0YXRpY01ldGhvZFdpdGhDYWxsYmFj
a0FyZyhpbiBbQ2FsbGJhY2tdIFRlc3RDYWxsYmFjayBjYWxsYmFjayk7CiAjZW5kaWYKIAorI2lm
IGRlZmluZWQoVEVTVElOR19WOCkKKyAgICAvLyAnRW5mb3JjZVJhbmdlJyBleHRlbmRlZCBhdHRy
aWJ1dGUKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMihpbiBbRW5mb3Jj
ZVJhbmdlXSBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VV
SW50MzIoaW4gW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyB2YWx1ZSk7CisgICAgdm9pZCAg
ICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQoaW4gW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25n
IHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjQoaW4gW0Vu
Zm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKTsKKworICAgIGF0dHJpYnV0ZSBb
RW5mb3JjZVJhbmdlXSBsb25nIGVuZm9yY2VkUmFuZ2VMb25nQXR0cjsKKyAgICBhdHRyaWJ1dGUg
W0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0
cjsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nIGVuZm9yY2VkUmFuZ2VM
b25nTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcg
bG9uZyBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHI7CisjZW5kaWYKKwogICAgIC8v
ICdDb25kaXRpb25hbCcgZXh0ZW5kZWQgYXR0cmlidXRlCiAgICAgW0NvbmRpdGlvbmFsPUNvbmRp
dGlvbjFdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0cjE7CiAgICAgW0NvbmRpdGlvbmFs
PUNvbmRpdGlvbjEmQ29uZGl0aW9uMl0gYXR0cmlidXRlIGxvbmcgY29uZGl0aW9uYWxBdHRyMjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RPYmouY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVz
dE9iai5jcHAKaW5kZXggNWViNDFlNWQ2NmNjYWRkOTM1OGI5OTI5NWExMTExMWYxYmUzNzY4Yi4u
OGQ5MWYyMTVkMjdjOTBhMTNmMmJmNmVjNDFiMjE5OGUwODI2YjQ2NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAKQEAg
LTMyMSw3ICszMjEsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHVuc2lnbmVkTG9u
Z0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2OAogc3RhdGljIHZvaWQgdW5z
aWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2
ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykK
IHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkp
OwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5zaWdu
ZWQgbG9uZyBsb25nIHYgPSB0b1VJbnQ2NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZExv
bmdMb25nQXR0cih2KTsKICAgICByZXR1cm47CiB9CkBAIC0xMDU3LDYgKzEwNTcsMTAyIEBAIHN0
YXRpYyB2b2lkIHdpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRyU2V0
dGVyQ2FsbGJhY2sodjg6OkxvY2FsCiAgICAgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRB
cmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRyU2V0dGVyKG5hbWUsIHZhbHVlLCBpbmZv
KTsKIH0KIAorc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0F0
dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
aW5mby5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4SW50ZWdlcihpbXAtPmVuZm9yY2VkUmFuZ2VM
b25nQXR0cigpLCBpbmZvLkdldElzb2xhdGUoKSk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAg
IHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRl
cihuYW1lLCBpbmZvKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0
clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4g
dmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1w
ID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9J
RChpbnQsIHYsIHRvSW50MzIodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xh
dGUoKSk7CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0F0dHIodik7CisgICAgcmV0dXJu
OworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJh
Y2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFs
OjplbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyKG5hbWUsIHZhbHVlLCBpbmZvKTsKK30K
Kworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25n
QXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2
ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4gdjhVbnNpZ25lZEludGVnZXIoaW1wLT5lbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nQXR0cigpLCBpbmZvLkdldElzb2xhdGUoKSk7Cit9CisKK3N0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJB
dHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpB
Y2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjplbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0
YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlcih2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tfVk9JRCh1bnNpZ25lZCwgdiwg
dG9VSW50MzIodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7Cisg
ICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0cih2KTsKKyAgICByZXR1cm47
Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRl
ckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVl
PiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqVjhJ
bnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyU2V0dGVyKG5hbWUsIHZh
bHVlLCBpbmZvKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJh
bmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RP
Ymo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXco
c3RhdGljX2Nhc3Q8ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHIoKSkpOwor
fQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0
dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjpl
bmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlcihuYW1lLCBpbmZvKTsKK30KKworc3Rh
dGljIHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRp
dmUoaW5mby5Ib2xkZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQobG9uZyBsb25nLCB2LCB0b0lu
dDY0KHZhbHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOworICAgIGlt
cC0+c2V0RW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cih2KTsKKyAgICByZXR1cm47Cit9CisKK3N0
YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2sodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFsOjplbmZv
cmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7Cit9CisK
K3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xv
bmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0
aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoc3RhdGljX2Nh
c3Q8ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cigpKSk7Cit9
CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9u
Z0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRl
cm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlcihuYW1lLCBp
bmZvKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRy
QXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1
ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiog
aW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBFQ0hFQ0tf
Vk9JRCh1bnNpZ25lZCBsb25nIGxvbmcsIHYsIHRvVUludDY0KHZhbHVlLCBFbmZvcmNlUmFuZ2Us
IG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZVVuc2ln
bmVkTG9uZ0xvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3Jj
ZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7Cit9CisK
ICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKIAogc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBj
b25kaXRpb25hbEF0dHIxQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTIxNzcsNiArMjI3Myw2NiBAQCBzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHN0YXRpY01ldGhvZFdpdGhDYWxsYmFja0FyZ01ldGhvZENh
bGxiYWNrKGNvbnN0IHY4OgogICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6c3RhdGljTWV0
aG9kV2l0aENhbGxiYWNrQXJnTWV0aG9kKGFyZ3MpOwogfQogCitzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMk1ldGhvZChjb25zdCB2ODo6QXJn
dW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0
dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAg
VjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyhpbnQsIHZhbHVlLCB0b0ludDMyKGFyZ3NbMF0sIEVu
Zm9yY2VSYW5nZSwgb2spLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRo
RW5mb3JjZVJhbmdlSW50MzIodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQor
CitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQz
Mk1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJu
IFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2QoYXJn
cyk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VS
YW5nZVVJbnQzMk1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChh
cmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRz
RXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6
dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyh1
bnNpZ25lZCwgdmFsdWUsIHRvVUludDMyKGFyZ3NbMF0sIEVuZm9yY2VSYW5nZSwgb2spLCBhcmdz
LkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyKHZh
bHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyTWV0aG9kQ2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6
Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzJNZXRob2QoYXJncyk7Cit9CisKK3N0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQor
ICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xh
dGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRl
cigpKTsKKyAgICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKGxvbmcgbG9uZywgdmFsdWUsIHRv
SW50NjQoYXJnc1swXSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAg
ICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4
VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VJbnQ2NE1ldGhvZChhcmdzKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0TWV0aG9kKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFy
Z3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dO
b3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiog
aW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENI
X1dJVEhfVFlQRUNIRUNLKHVuc2lnbmVkIGxvbmcgbG9uZywgdmFsdWUsIHRvVUludDY0KGFyZ3Nb
MF0sIEVuZm9yY2VSYW5nZSwgb2spLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRo
b2RXaXRoRW5mb3JjZVJhbmdlVUludDY0KHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQo
KTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJh
bmdlVUludDY0TWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAg
ICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRN
ZXRob2QoYXJncyk7Cit9CisKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKIAogc3RhdGljIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBjb25kaXRpb25hbE1ldGhvZDFNZXRob2QoY29uc3Qgdjg6OkFyZ3Vt
ZW50cyYgYXJncykKQEAgLTI4ODIsNiArMzAzOCwxNCBAQCBzdGF0aWMgY29uc3QgVjhET01Db25m
aWd1cmF0aW9uOjpCYXRjaGVkQXR0cmlidXRlIFY4VGVzdE9iakF0dHJzW10gPSB7CiAgICAgeyJ3
aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0
ZSIsIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlw
dFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZUF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50
ZXJuYWw6OndpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2Vz
QXR0cmlidXRlQXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0
PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0
eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKICAgICAvLyBBdHRy
aWJ1dGUgJ3dpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGUnIChUeXBlOiAn
YXR0cmlidXRlJyBFeHRBdHRyOiAnQ2FsbFdpdGgnKQogICAgIHsid2l0aFNjcmlwdEFyZ3VtZW50
c0FuZENhbGxTdGFja0F0dHJpYnV0ZSIsIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0QXJn
dW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJ
bnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0
ZXJDYWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJv
bD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpO
b25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdlbmZvcmNlZFJh
bmdlTG9uZ0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykK
KyAgICB7ImVuZm9yY2VkUmFuZ2VMb25nQXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNl
ZFJhbmdlTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjplbmZv
cmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3Rh
dGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6
OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAg
IC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHInIChUeXBlOiAnYXR0
cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2VkUmFuZ2VVbnNp
Z25lZExvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExv
bmdBdHRyQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5n
ZVVuc2lnbmVkTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3Rh
dGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6
OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAg
IC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1
dGUnIEV4dEF0dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZUxvbmdMb25n
QXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdl
dHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0
ckF0dHJTZXR0ZXJDYWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNj
ZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1
dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRB
dHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25n
QXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0
dHJBdHRyR2V0dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5z
aWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3Rh
dGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6
OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAogI2lm
IEVOQUJMRShDb25kaXRpb24xKQogICAgIC8vIEF0dHJpYnV0ZSAnY29uZGl0aW9uYWxBdHRyMScg
KFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdDb25kaXRpb25hbCcpCiAgICAgeyJjb25kaXRp
b25hbEF0dHIxIiwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVy
Q2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbEF0dHIxQXR0clNldHRlckNh
bGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2
ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUp
LCAwIC8qIG9uIGluc3RhbmNlICovfSwKQEAgLTI5NjYsNiArMzEzMCwxMCBAQCBzdGF0aWMgY29u
c3QgVjhET01Db25maWd1cmF0aW9uOjpCYXRjaGVkTWV0aG9kIFY4VGVzdE9iak1ldGhvZHNbXSA9
IHsKICAgICB7Im1ldGhvZFdpdGhDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRo
b2RXaXRoQ2FsbGJhY2tBcmdNZXRob2RDYWxsYmFja30sCiAgICAgeyJtZXRob2RXaXRoTm9uQ2Fs
bGJhY2tBcmdBbmRDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoTm9u
Q2FsbGJhY2tBcmdBbmRDYWxsYmFja0FyZ01ldGhvZENhbGxiYWNrfSwKICAgICB7Im1ldGhvZFdp
dGhDYWxsYmFja0FuZE9wdGlvbmFsQXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhD
YWxsYmFja0FuZE9wdGlvbmFsQXJnTWV0aG9kQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVu
Zm9yY2VSYW5nZUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VJbnQzMk1ldGhvZENhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50
MzIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMk1ldGhv
ZENhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIsIFRlc3RPYmpW
OEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRNZXRob2RDYWxsYmFja30sCisg
ICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6Om1l
dGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRNZXRob2RDYWxsYmFja30sCiAjaWYgRU5BQkxFKENv
bmRpdGlvbjEpCiAgICAgeyJjb25kaXRpb25hbE1ldGhvZDEiLCBUZXN0T2JqVjhJbnRlcm5hbDo6
Y29uZGl0aW9uYWxNZXRob2QxTWV0aG9kQ2FsbGJhY2t9LAogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZz
LmNwcAppbmRleCA2MTI5ZDExZDcxM2YyZGE5NDdlZThjY2FhMDIxZjliNTEyNzUzMTI3Li4wZmFk
ODRlMzlhZmJhZWUwMmY5ZjdhMDQzZWM2YTk3MmQyN2I0ODAxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5j
cHAKQEAgLTk0LDcgKzk0LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB1bnNpZ25l
ZExvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djgKIHN0YXRpYyB2b2lk
IHVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGlu
Zm8pCiB7CiAgICAgVGVzdFR5cGVkZWZzKiBpbXAgPSBWOFRlc3RUeXBlZGVmczo6dG9OYXRpdmUo
aW5mby5Ib2xkZXIoKSk7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVl
KTsKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdiA9IHRvVUludDY0KHZhbHVlKTsKICAgICBpbXAt
PnNldFVuc2lnbmVkTG9uZ0xvbmdBdHRyKHYpOwogICAgIHJldHVybjsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCmluZGV4IGM1MDUzYmE5Y2M5ZmM1ZWIzZGU3YzZh
Yzg3MTlmYTRmMWNhMjU3YjQuLjBiZGI2YjA4OGFiMWZhODgxYzE2ODhjYzg4NDhmOTkzM2VmYmJm
OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcApAQCAtMTAzLDQw
ICsxMDMsNDggQEAgUGFzc1JlZlB0cjxOb2RlRmlsdGVyPiB0b05vZGVGaWx0ZXIodjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IGNhbGxiYWNrKQogICAgIHJldHVybiBOb2RlRmlsdGVyOjpjcmVhdGUoVjhO
b2RlRmlsdGVyQ29uZGl0aW9uOjpjcmVhdGUoY2FsbGJhY2spKTsKIH0KIAotaW50IHRvSW50MzIo
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKK2NvbnN0IGludDMyX3Qga01p
bkludDMyID0gLTB4ODAwMDAwMDA7Citjb25zdCBpbnQzMl90IGtNYXhJbnQzMiA9IDB4N2ZmZmZm
ZmY7Citjb25zdCB1aW50MzJfdCBrTWF4VUludDMyID0gMHhmZmZmZmZmZjsKKworaW50MzJfdCB0
b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25Db25m
aWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQogewogICAgIG9rID0gdHJ1ZTsKLSAg
ICAKKwogICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGFscmVhZHkgYSAzMi1iaXQgaW50
ZWdlci4KICAgICBpZiAodmFsdWUtPklzSW50MzIoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlLT5J
bnQzMlZhbHVlKCk7Ci0gICAgCisKICAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0
byBhIG51bWJlcj8KICAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFs
dWUtPlRvTnVtYmVyKCk7CiAgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAg
ICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIAorCisgICAgaWYg
KGNvbmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRvdWJsZSB4ID0gbnVt
YmVyT2JqZWN0LT5WYWx1ZSgpOworICAgICAgICBpZiAoc3RkOjppc25hbih4KSB8fCBzdGQ6Omlz
aW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7
CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgp
KTsKKyAgICAgICAgaWYgKHggPCBrTWluSW50MzIgfHwgeCA+IGtNYXhJbnQzMikgeworICAgICAg
ICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisKKyAg
ICAgICAgcmV0dXJuIHg7CisgICAgfQorCiAgICAgLy8gRG9lcyB0aGUgdmFsdWUgY29udmVydCB0
byBuYW4gb3IgdG8gYW4gaW5maW5pdHk/CiAgICAgZG91YmxlIG51bWJlclZhbHVlID0gbnVtYmVy
T2JqZWN0LT5WYWx1ZSgpOwotICAgIGlmIChzdGQ6OmlzbmFuKG51bWJlclZhbHVlKSB8fCBzdGQ6
OmlzaW5mKG51bWJlclZhbHVlKSkgewotICAgICAgICBvayA9IGZhbHNlOwotICAgICAgICByZXR1
cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8g
YSAzMi1iaXQgaW50ZWdlcj8KLSAgICB2ODo6TG9jYWw8djg6OkludDMyPiBpbnRWYWx1ZSA9IHZh
bHVlLT5Ub0ludDMyKCk7Ci0gICAgaWYgKGludFZhbHVlLklzRW1wdHkoKSkgewotICAgICAgICBv
ayA9IGZhbHNlOworICAgIGlmIChzdGQ6OmlzbmFuKG51bWJlclZhbHVlKSB8fCBzdGQ6OmlzaW5m
KG51bWJlclZhbHVlKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIAotICAgIC8vIFJl
dHVybiB0aGUgcmVzdWx0IG9mIHRoZSBpbnQzMiBjb252ZXJzaW9uLgotICAgIHJldHVybiBpbnRW
YWx1ZS0+VmFsdWUoKTsKKyAgICByZXR1cm4gbnVtYmVyT2JqZWN0LT5JbnQzMlZhbHVlKCk7CiB9
Ci0gICAgCi11aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJv
b2wmIG9rKQorCit1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUs
IEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBib29sJiBvaykK
IHsKICAgICBvayA9IHRydWU7CiAKQEAgLTE0NCwxMCArMTUyLDE2IEBAIHVpbnQzMl90IHRvVUlu
dDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCiAgICAgaWYgKHZhbHVl
LT5Jc1VpbnQzMigpKQogICAgICAgICByZXR1cm4gdmFsdWUtPlVpbnQzMlZhbHVlKCk7CiAKKyAg
ICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCBzaWduZWQgaW50ZWdlciAtIHBv
c3NpYmx5IHBvc2l0aXZlPwogICAgIGlmICh2YWx1ZS0+SXNJbnQzMigpKSB7CiAgICAgICAgIGlu
dDMyX3QgcmVzdWx0ID0gdmFsdWUtPkludDMyVmFsdWUoKTsKICAgICAgICAgaWYgKHJlc3VsdCA+
PSAwKQogICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgaWYgKGNvbmZpZ3VyYXRp
b24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAK
ICAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KQEAgLTE1Nywy
MSArMTcxLDExMCBAQCB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFs
dWUsIGJvb2wmIG9rKQogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKKyAgICBpZiAoY29uZmln
dXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgZG91YmxlIHggPSBudW1iZXJPYmpl
Y3QtPlZhbHVlKCk7CisgICAgICAgIGlmIChzdGQ6OmlzbmFuKHgpIHx8IHN0ZDo6aXNpbmYoeCkp
IHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAg
ICAgfQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAg
ICAgICBpZiAoeCA8IDAgfHwgeCA+IGtNYXhVSW50MzIpIHsKKyAgICAgICAgICAgIG9rID0gZmFs
c2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiB4
OworICAgIH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9yIHRvIGFu
IGluZmluaXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+VmFsdWUo
KTsKLSAgICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihudW1iZXJW
YWx1ZSkpIHsKKyAgICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihu
dW1iZXJWYWx1ZSkpCisgICAgICAgIHJldHVybiAwOworICAgIHJldHVybiBudW1iZXJPYmplY3Qt
PlVpbnQzMlZhbHVlKCk7Cit9CisKK2ludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBi
b29sJiBvaykKK3sKKyAgICBvayA9IHRydWU7CisKKyAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1
ZSBpcyBhIDMyLWJpdCBpbnRlZ2VyLgorICAgIGlmICh2YWx1ZS0+SXNJbnQzMigpKQorICAgICAg
ICByZXR1cm4gdmFsdWUtPkludDMyVmFsdWUoKTsKKworICAgIC8vIENhbiB0aGUgdmFsdWUgYmUg
Y29udmVydGVkIHRvIGEgbnVtYmVyPworICAgIHY4OjpMb2NhbDx2ODo6TnVtYmVyPiBudW1iZXJP
YmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIoKTsKKyAgICBpZiAobnVtYmVyT2JqZWN0LklzRW1wdHko
KSkgewogICAgICAgICBvayA9IGZhbHNlOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSAg
ICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRl
Z2VyPwotICAgIHY4OjpMb2NhbDx2ODo6VWludDMyPiB1aW50VmFsdWUgPSB2YWx1ZS0+VG9VaW50
MzIoKTsKLSAgICBpZiAodWludFZhbHVlLklzRW1wdHkoKSkgeworICAgIGRvdWJsZSB4ID0gbnVt
YmVyT2JqZWN0LT5WYWx1ZSgpOworCisgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJh
bmdlKSB7CisgICAgICAgIGlmIChpc25hbih4KSB8fCBpc2luZih4KSkgeworICAgICAgICAgICAg
b2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHgg
PSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwgLShr
SlNNYXhJbnRlZ2VyIC0gMSkgfHwgeCA+IChrSlNNYXhJbnRlZ2VyIC0gMSkpIHsKKyAgICAgICAg
ICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAg
ICByZXR1cm4geDsKKyAgICB9CisKKyAgICAvLyBOYU5zIGFuZCArLy1JbmZpbml0eSBzaG91bGQg
YmUgMCwgb3RoZXJ3aXNlIG1vZHVsbyAyXjY0LgorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnRl
Z2VyOworICAgIGRvdWJsZVRvSW50ZWdlcih4LCBpbnRlZ2VyKTsKKyAgICByZXR1cm4gaW50ZWdl
cjsKK30KKwordWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJ
bnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCit7
CisgICAgb2sgPSB0cnVlOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1i
aXQgdW5zaWduZWQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzVWludDMyKCkpCisgICAgICAg
IHJldHVybiB2YWx1ZS0+VWludDMyVmFsdWUoKTsKKworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZh
bHVlIGlzIGEgMzItYml0IGludGVnZXIuCisgICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpIHsKKyAg
ICAgICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+SW50MzJWYWx1ZSgpOworICAgICAgICBpZiAo
cmVzdWx0ID49IDApCisgICAgICAgICAgICByZXR1cm4gcmVzdWx0OworICAgICAgICBpZiAoY29u
ZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7Cisg
ICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gcmVzdWx0Owor
ICAgIH0KKworICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyPwor
ICAgIHY4OjpMb2NhbDx2ODo6TnVtYmVyPiBudW1iZXJPYmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIo
KTsKKyAgICBpZiAobnVtYmVyT2JqZWN0LklzRW1wdHkoKSkgewogICAgICAgICBvayA9IGZhbHNl
OwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSAgICByZXR1cm4gdWludFZhbHVlLT5WYWx1
ZSgpOworICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOworCisgICAgaWYgKGNv
bmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGlmIChpc25hbih4KSB8fCBp
c2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAw
OworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4
KSk7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4gKGtKU01heEludGVnZXIgLSAxKSkgeworICAg
ICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9Cisg
ICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNo
b3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25n
IGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgsIGludGVnZXIpOworICAgIHJldHVybiBp
bnRlZ2VyOwogfQogCiB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gY3JlYXRl
UmF3VGVtcGxhdGUodjg6Oklzb2xhdGUqIGlzb2xhdGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4QmluZGluZy5oCmluZGV4IGJjMTEyNWU3M2EwOWE2MDc2OTAwMDU2MTMxYTEzNWMyYjAxYTM4
YmEuLjA0NGM1NGQ3NDg0YTM5YjUwZmViYjcwZDA1MmRlYWE2NjMwOTUyYTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5oCkBAIC01Niw2ICs1Niw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICBjbGFzcyBXb3JsZENvbnRleHRIYW5kbGU7CiAKICAgICBjb25zdCBpbnQg
a01heFJlY3Vyc2lvbkRlcHRoID0gMjI7CisgICAgY29uc3QgbG9uZyBsb25nIGtKU01heEludGVn
ZXIgPSAweDIwMDAwMDAwMDAwMDAwTEw7CiAKICAgICAvLyBTY2hlZHVsZSBhIERPTSBleGNlcHRp
b24gdG8gYmUgdGhyb3duLCBpZiB0aGUgZXhjZXB0aW9uIGNvZGUgaXMgZGlmZmVyZW50CiAgICAg
Ly8gZnJvbSB6ZXJvLgpAQCAtMjQzLDM2ICsyNDQsNjYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiAgICAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHY4QXJyYXkoUGFzc1JlZlB0cjxET01TdHJpbmdM
aXN0Piwgdjg6Oklzb2xhdGUqKTsKIAotICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJp
dCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKLSAgICAvLyB2YWx1ZSBjYW5u
b3QgYmUgY29udmVydGVkIHRvIGFuIGludGVnZXIgb3IgY29udmVydHMgdG8gbmFuIG9yIHRvIGFu
IGluZmluaXR5LgotICAgIGludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgYm9vbCYg
b2spOworICAgIC8vIENvbnZlcnNpb24gZmxhZ3MsIHVzZWQgaW4gdG9JbnRYWC90b1VJbnRYWC4K
KyAgICBlbnVtIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiB7CisgICAgICAgIE5vcm1h
bENvbnZlcnNpb24sCisgICAgICAgIEVuZm9yY2VSYW5nZSwKKyAgICAgICAgLy8gRklYTUU6IElt
cGxlbWVudCBDbGFtcAorICAgIH07CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1i
aXQgc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZh
bHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVk
IHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy1sb25n
CisgICAgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZl
cnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7CisgICAgaW5saW5lIGludDMyX3QgdG9JbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b0ludDMy
KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1
ZSB0byBhIDMyLWJpdCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWls
LgotICAgIGlubGluZSBpbnQgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCisg
ICAgaW5saW5lIGludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAg
ICAgewogICAgICAgICBib29sIG9rOwotICAgICAgICByZXR1cm4gdG9JbnQzMih2YWx1ZSwgb2sp
OworICAgICAgICByZXR1cm4gdG9JbnQzMih2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwog
ICAgIH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRl
Z2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKLSAgICAvLyB2YWx1ZSBjYW5ub3QgYmUg
Y29udmVydGVkIHRvIGFuIHVuc2lnbmVkIGludGVnZXIgb3IgY29udmVydHMgdG8gbmFuIG9yIHRv
IGFuIGluZmluaXR5LgotICAgIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVl
PiwgYm9vbCYgb2spOworICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1i
ZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53
My5vcmcvVFIvV2ViSURMLyNlcy11bnNpZ25lZC1sb25nCisgICAgdWludDMyX3QgdG9VSW50MzIo
djg6OkhhbmRsZTx2ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJv
b2wmIG9rKTsKKyAgICBpbmxpbmUgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFs
dWU+IHZhbHVlLCBib29sJiBvaykgeyByZXR1cm4gdG9VSW50MzIodmFsdWUsIE5vcm1hbENvbnZl
cnNpb24sIG9rKTsgfQogCiAgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2ln
bmVkIGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCiAgICAgaW5s
aW5lIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7
CiAgICAgICAgIGJvb2wgb2s7Ci0gICAgICAgIHJldHVybiB0b1VJbnQzMih2YWx1ZSwgb2spOwor
ICAgICAgICByZXR1cm4gdG9VSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsKICAg
ICB9CiAKLSAgICBpbmxpbmUgZmxvYXQgdG9GbG9hdCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1
ZSkKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgc2lnbmVkIGludGVnZXIuIFRo
ZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0
ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8g
aHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy1sb25nLWxvbmcKKyAgICBpbnQ2NF90IHRv
SW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRp
b24sIGJvb2wmIG9rKTsKKworICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCBpbnRl
Z2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgorICAgIGlubGluZSBpbnQ2
NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CisgICAgICAg
IGJvb2wgb2s7CisgICAgICAgIHJldHVybiB0b0ludDY0KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9u
LCBvayk7CiAgICAgfQogCi0gICAgaW5saW5lIGxvbmcgbG9uZyB0b0ludDY0KHY4OjpMb2NhbDx2
ODo6VmFsdWU+IHZhbHVlKQorICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCB1bnNp
Z25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBj
YW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIg
V2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtdW5zaWduZWQt
bG9uZy1sb25nCisgICAgdWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+LCBJ
bnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKTsKKworICAgIC8vIENvbnZl
cnQgYSB2YWx1ZSB0byBhIDY0LWJpdCB1bnNpZ25lZCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252
ZXJzaW9uIGNhbm5vdCBmYWlsLgorICAgIGlubGluZSB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8
bG9uZyBsb25nPih2YWx1ZS0+SW50ZWdlclZhbHVlKCkpOworICAgICAgICBib29sIG9rOworICAg
ICAgICByZXR1cm4gdG9VSW50NjQodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsKKyAgICB9
CisKKyAgICBpbmxpbmUgZmxvYXQgdG9GbG9hdCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSkK
KyAgICB7CisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZh
bHVlKCkpOwogICAgIH0KIAogICAgIHRlbXBsYXRlPGNsYXNzIFQ+IHN0cnVjdCBOYXRpdmVWYWx1
ZVRyYWl0czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGlu
Z01hY3Jvcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgK
aW5kZXggNmZlYjUzZTFkNjdiMDQ1MmJiNjczOTA1Y2NkNzZkYjQ3MzFhMGNjOC4uZDhkOGE0ZTc5
ZmE2ZjZhNDBiM2MyOThhZmViMjMxYTNhM2M5ZjgwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmgKQEAgLTMzLDYgKzMzLDE3IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAorI2RlZmluZSBUWVBFQ0hFQ0tfVk9JRCh0eXBlLCB2YXIsIHZhbHVlLCBp
c29sYXRlKSBcCisgICAgdHlwZSB2YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICBib29sIG9rID0gdHJ1ZTsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgIHZhciA9ICh2YWx1ZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgaWYgKFVOTElLRUxZKCFvaykpIHsgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAg
ICAgdGhyb3dUeXBlRXJyb3IoMCwgaXNvbGF0ZSk7ICAgICAgICAgICBcCisgICAgICAgICAgICBy
ZXR1cm47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgfSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIH0KKwogI2RlZmluZSBWOFRS
WUNBVENIKHR5cGUsIHZhciwgdmFsdWUpIFwKICAgICB0eXBlIHZhcjsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKQEAgLTQyLDYgKzUzLDIwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAgIHJl
dHVybiBibG9jay5SZVRocm93KCk7ICAgICAgIFwKICAgICB9CiAKKyNkZWZpbmUgVjhUUllDQVRD
SF9XSVRIX1RZUEVDSEVDSyh0eXBlLCB2YXIsIHZhbHVlLCBpc29sYXRlKSBcCisgICAgdHlwZSB2
YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
IHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgYm9vbCBvayA9IHRydWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgdjg6OlRyeUNhdGNoIGJsb2NrOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHZhciA9ICh2YWx1ZSk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBpZiAoYmxvY2suSGFz
Q2F1Z2h0KCkpICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgIHJl
dHVybiBibG9jay5SZVRocm93KCk7ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgfSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
ICAgIGlmIChVTkxJS0VMWSghb2spKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKDAsIGlzb2xhdGUpOyAgICAgICAg
ICAgICAgIFwKKyAgICB9CisKICNkZWZpbmUgVjhUUllDQVRDSF9GT1JfVjhTVFJJTkdSRVNPVVJD
RSh0eXBlLCB2YXIsIHZhbHVlKSBcCiAgICAgdHlwZSB2YXIodmFsdWUpOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIGlmICghdmFyLnByZXBhcmUoKSkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCmluZGV4IDI0YjMzZGQxODJlZWRjODMxZjZhNWE1MTkx
OWM4NGQ0M2VjMDFkZDcuLjhkZTEwMmYyYTI0NzdkZTEwMDk1ODM2Mzg4NjcyZGE1ODEwYzg4ZjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaApAQCAtMzYsMjUgKzM2
LDMzIEBAIGNsYXNzIFR5cGVDb252ZXJzaW9ucyA6IHB1YmxpYyBSZWZDb3VudGVkPFR5cGVDb252
ZXJzaW9ucz4gewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFR5cGVDb252ZXJzaW9u
cz4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IFR5cGVDb252ZXJzaW9ucygpKTsgfQog
Ci0gICAgbG9uZyB0ZXN0TG9uZygpIHsgcmV0dXJuIG1fdGVzdExvbmc7IH0KLSAgICB2b2lkIHNl
dFRlc3RMb25nKGxvbmcgdmFsdWUpIHsgbV90ZXN0TG9uZyA9IHZhbHVlOyB9Ci0gICAgdW5zaWdu
ZWQgbG9uZyB0ZXN0VW5zaWduZWRMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5zaWduZWRMb25nOyB9
Ci0gICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUpIHsgbV90
ZXN0VW5zaWduZWRMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIHRlc3RMb25nKCkgeyByZXR1cm4g
bV9sb25nOyB9CisgICAgdm9pZCBzZXRUZXN0TG9uZyhsb25nIHZhbHVlKSB7IG1fbG9uZyA9IHZh
bHVlOyB9CisgICAgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZygpIHsgcmV0dXJuIG1fbG9uZzsg
fQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5nZUxvbmcobG9uZyB2YWx1ZSkgeyBtX2xvbmcg
PSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZygpIHsgcmV0dXJu
IG1fdW5zaWduZWRMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nKHVuc2lnbmVk
IGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxv
bmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25n
OyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nKHVuc2lnbmVkIGxv
bmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmcgPSB2YWx1ZTsgfQogCi0gICAgbG9uZyBsb25nIHRl
c3RMb25nTG9uZygpIHsgcmV0dXJuIG1fdGVzdExvbmdMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0
TG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fdGVzdExvbmdMb25nID0gdmFsdWU7IH0KLSAg
ICB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBtX3Rl
c3RVbnNpZ25lZExvbmdMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nTG9uZyh1
bnNpZ25lZCBsb25nIGxvbmcgdmFsdWUpIHsgbV90ZXN0VW5zaWduZWRMb25nTG9uZyA9IHZhbHVl
OyB9CisgICAgbG9uZyBsb25nIHRlc3RMb25nTG9uZygpIHsgcmV0dXJuIG1fbG9uZ0xvbmc7IH0K
KyAgICB2b2lkIHNldFRlc3RMb25nTG9uZyhsb25nIGxvbmcgdmFsdWUpIHsgbV9sb25nTG9uZyA9
IHZhbHVlOyB9CisgICAgbG9uZyBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZygpIHsgcmV0
dXJuIG1fbG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyhs
b25nIGxvbmcgdmFsdWUpIHsgbV9sb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9u
ZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmdMb25n
OyB9CisgICAgdm9pZCBzZXRUZXN0VW5zaWduZWRMb25nTG9uZyh1bnNpZ25lZCBsb25nIGxvbmcg
dmFsdWUpIHsgbV91bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25n
IGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBtX3Vuc2ln
bmVkTG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nKHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1
ZTsgfQogCiBwcml2YXRlOgogICAgIFR5cGVDb252ZXJzaW9ucygpCiAgICAgewogICAgIH0KIAot
ICAgIGxvbmcgbV90ZXN0TG9uZzsKLSAgICB1bnNpZ25lZCBsb25nIG1fdGVzdFVuc2lnbmVkTG9u
ZzsKLSAgICBsb25nIGxvbmcgbV90ZXN0TG9uZ0xvbmc7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25n
IG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmc7CisgICAgbG9uZyBtX2xvbmc7CisgICAgdW5zaWduZWQg
bG9uZyBtX3Vuc2lnbmVkTG9uZzsKKyAgICBsb25nIGxvbmcgbV9sb25nTG9uZzsKKyAgICB1bnNp
Z25lZCBsb25nIGxvbmcgbV91bnNpZ25lZExvbmdMb25nOwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lv
bnMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsCmluZGV4
IDM2N2QxZjdlYzQ4NDJlNDFmNmFhYTMxMGFiMjJhOWJjNTAxY2Y4NGYuLmIyN2IxNThkNzYzM2Iz
MzQ1NjE2ZWU1YmM3ZmUzMmM2Y2U1NWEyZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5
cGVDb252ZXJzaW9ucy5pZGwKQEAgLTI4LDggKzI4LDEyIEBACiAgICAgSW1wbGVtZW50YXRpb25M
YWNrc1ZUYWJsZQogXSBpbnRlcmZhY2UgVHlwZUNvbnZlcnNpb25zIHsKICAgICBhdHRyaWJ1dGUg
bG9uZyB0ZXN0TG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyB0ZXN0RW5m
b3JjZVJhbmdlTG9uZzsKICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyB0ZXN0VW5zaWduZWRM
b25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIHRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmc7CiAKICAgICBhdHRyaWJ1dGUgbG9uZyBsb25nIHRlc3RMb25n
TG9uZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25nIHRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZzsKICAgICBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RVbnNp
Z25lZExvbmdMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25n
IGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmc7CiB9OwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDY1MGE0
MjEwNDlmODhiMjkxOWZmZGFiMWE1NDFlNWY0ODAxZjZhOWMuLmQ3ZWYwYTNlNDU0NTk4OGFkMDZj
YzZjMmY3ZTM1MzA2MDgyZGExYjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0wMy0wOCAg
Sm9zaHVhIEJlbGwgIDxqc2JlbGxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtWOF0gQmluZGlu
ZzogSW1wbGVtZW50IEVuZm9yY2VSYW5nZSBJREwgQXR0cmlidXRlIGZvciBsb25nIGxvbmcgY29u
dmVyc2lvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTk2Nzk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgS2VudGFybyBIYXJhLgorCisgICAgICAgICog
ZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1u
dW1lcmljLXBhcmFtZXRlcnMuanM6IFVwZGF0ZSBleHBlY3RhdGlvbgorICAgICAgICBmb3IgSFRN
TE9wdGlvbnNDb2xsZWN0aW9uLmFkZChlbGVtZW50LCBiZWZvcmUpIHRvIG1hdGNoIHNwZWMgLSB8
YmVmb3JlfCBzaG91bGRuJ3QgdGhyb3cuCisgICAgICAgICogZmFzdC9qcy93ZWJpZGwtdHlwZS1t
YXBwaW5nLWV4cGVjdGVkLnR4dDogRXhwZWN0YXRpb25zIGZvciBKU0MgLSBtb3N0bHkgRkFJTC4K
KyAgICAgICAgKiBmYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbDogQWRkZWQgRW5mb3Jj
ZVJhbmdlIGNhc2VzLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvd2ViaWRs
LXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQ6IEV4cGVjdGF0aW9ucyBmb3IgVjguCisgICAgICAg
ICogc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFk
LXBhcmFtZXRlcnMuanM6IE1vcmUgYm91bmRzIGNoZWNrcy4KKwogMjAxMy0wMy0wOCAgWm9sdGFu
IEFydmFpICA8emFydmFpQGluZi51LXN6ZWdlZC5odT4KIAogICAgICAgICBbUXRdIFVucmV2aWV3
ZWQgZ2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbm9uLW51bWVy
aWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4
dAppbmRleCA5N2JmMWUwNjcxMjM3ZTYwNjMzYzY2ZjBjMTM4OGMxNjc2MTQyMjhmLi40NzEzYzQy
N2VmMGQ0YjdhZmQ1MjNjZTdkMTk4OTc5N2RmYjdlZmVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJp
Yy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMjgsNyArMjgsNyBAQCBQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ2RvY3VtZW50LmJvZHkuc2Nyb2xsVG9wID0geCcpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5pbWFnZXMuaXRlbSh4KScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJpbnB1dCIpLnNldFNlbGVjdGlvblJhbmdlKHgsIDApJykgaXMgJ2FueSB0eXBl
IGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImlucHV0Iikuc2V0U2VsZWN0aW9uUmFuZ2UoMCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
LVBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRk
KGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpLCB4KScpIGlzICdudW1iZXIgb3IgbnVs
bCBhbGxvd2VkIChvciBvbWl0dGVkLCBidXQgbm90IGluZmluaXRlKScKK0ZBSUwgbm9uTnVtZXJp
Y1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoIm9wdGlvbiIpLCB4KScpIHNob3VsZCBiZSBhbnkgdHlwZSBhbGxvd2VkLiBXYXMg
bWl4ZWQuCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlv
bigpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9s
aWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBh
bGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgp
Lml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZh
bHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKaW5kZXggMmU3MDA2YzVhOWYyZDQ5MjIxZWJmMzQy
OTk0MDNhMThmMGJmOWE2ZC4uNThiZWQxNjgwM2ZlNzhhMTU3ODNjNzIwYWZiNDU0M2VmOGUzZjg1
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1l
cmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMK
QEAgLTY0LDcgKzY0LDcgQEAgZnVuY3Rpb24gbm9uTnVtZXJpY1BvbGljeSh0ZW1wbGF0ZSkKICAg
ICB0cnkgewogICAgICAgICBldmFsKHRlbXBsYXRlKTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAg
ICAgIE5hTkFsbG93ZWQgPSAwOworICAgICAgICBuYW5BbGxvd2VkID0gMDsKICAgICB9CiAKICAg
ICB2YXIgb21pdEFsbG93ZWQgPSAtMTsgLy8gbWVhbnMgIm5vdCBhcHBsaWNhYmxlIgpAQCAtMjQ0
LDcgKzI0NCw3IEBAIHNob3VsZEJlKCJub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVF
bGVtZW50KFwiaW5wdXRcIikuc2V0U2VsZWN0aW9uUmFuZ2UoCiAKIC8vIEhUTUxPcHRpb25zQ29s
bGVjdGlvbgogCi1zaG91bGRCZSgibm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnND
b2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJvcHRpb25cIiksIHgpJyki
LCAiJ251bWJlciBvciBudWxsIGFsbG93ZWQgKG9yIG9taXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUp
JyIpOworc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVj
dGlvbigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwib3B0aW9uXCIpLCB4KScpIiwgIidh
bnkgdHlwZSBhbGxvd2VkJyIpOwogc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhU
TUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIp
OwogCiAvLyBIVE1MU2VsZWN0RWxlbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9q
cy9zY3JpcHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9q
cy9zY3JpcHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzCmluZGV4IGEzNThjZWE3ZWJjNjBl
NWQ1Zjk1NjFiZjgxNmY2ZTQ0MDFkYjdlMTguLmFhY2Y5NGQ2MTEzYmM3MDc4ZWIyMDg2OTg1N2Ey
ZWZiMjhiMmZkZTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3Rz
L3NlbGVjdC1vcHRpb25zLWFkZC5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10
ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQuanMKQEAgLTI0NCw4NCArMjQ0LDg0IEBAIGRlYnVnKCIi
KTsKIAogZGVidWcoIjIuOSBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC1JbmZpbml0eSIpOwogb3B0
aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIk9QVElPTiIpOwotc2hvdWxkVGhyb3coInNl
bGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTEvMCkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9w
dGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAi
MSIpOworc2hvdWxkTm90VGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTEvMCki
KTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjgiKTsKK3Nob3VsZEJlKCJz
ZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMiIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xMCBB
ZGQgYW4gT3B0aW9uIGF0IGluZGV4IE5hTiIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoIk9QVElPTiIpOwotc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9u
MiwgMC8wKSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hv
dWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGROb3RUaHJvdygic2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAwLzApIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCIsICI5Iik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjMi
KTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTEgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBJbmZp
bml0eSIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIk9QVElPTiIpOwotc2hv
dWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMS8wKSIpOwotc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0
ZWRJbmRleCIsICIxIik7CitzaG91bGROb3RUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRp
b24yLCAxLzApIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOwor
c2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRl
YnVnKCIyLjEyIEFkZCBhIG5vbi1PcHRpb24gZWxlbWVudCIpOwogb3B0aW9uMiA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoIkRJViIpOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQo
b3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsK
LXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVj
dDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5k
ZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xMyBBZGQgYSBub24tZWxlbWVudCAo
c3RyaW5nKSIpOwogb3B0aW9uMiA9ICJvIjsKIHNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMu
YWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3
Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJlKCJz
ZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTQgQWRkIGEgbm9uLWVsZW1l
bnQgKG51bWJlcikiKTsKIG9wdGlvbjIgPSAzLjE0Owogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0
aW9ucy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxk
QmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNl
bGVjdGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNSBBZGQgYSBub24t
ZWxlbWVudCAoYm9vbGVhbikiKTsKIG9wdGlvbjIgPSB0cnVlOwogc2hvdWxkVGhyb3coInNlbGVj
dDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMu
bGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOwor
c2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxl
Y3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNiBBZGQg
dW5kZWZpbmVkIik7CiBvcHRpb24yID0gdW5kZWZpbmVkOwogc2hvdWxkVGhyb3coInNlbGVjdDIu
b3B0aW9ucy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hv
dWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3Qy
LnNlbGVjdGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNyBBZGQgbnVs
bCIpOwogb3B0aW9uMiA9IG51bGw7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChv
cHRpb24yLCAxKSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwot
c2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0
Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRl
eCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0
eSIpOwogb3B0aW9uMiA9IC0xLzA7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChv
cHRpb24yLCAxKSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwot
c2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0
Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRl
eCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjE5IEFkZCBOYU4iKTsKIG9wdGlvbjIg
PSAwLzA7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwot
c2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVj
dDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1
ZygiIik7CiAKIGRlYnVnKCIyLjIwIEFkZCBwb3NpdGl2ZSBpbmZpbml0eSIpOwogb3B0aW9uMiA9
IDEvMDsKIHNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1z
aG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0
Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IiwgIjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVn
KCIiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRk
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4
cGVjdGVkLnR4dAppbmRleCA3YTc3Nzc4MmU1NzYzMGY3NTlmMDA0MzM1NTIxYWExY2UwMGJkOWIy
Li44NmYxZTI2Nzk4YzViNzM0N2Y3OTUwMmRhOTk3NTg2NDYxYzYzYWMwIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L2pzL3NlbGVjdC1vcHRpb25zLWFkZC1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0CkBAIC0x
NjMsNjQgKzE2Myw2NCBAQCBQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwogUEFTUyBz
ZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQogCiAyLjkgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCAt
SW5maW5pdHkKLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAtMS8wKSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFT
UyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4
IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAtMS8wKSBkaWQgbm90IHRo
cm93IGV4Y2VwdGlvbi4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA4CitQQVNTIHNl
bGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAyCiAKIDIuMTAgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBO
YU4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAwLzApIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVj
dDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQor
UEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAvMCkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgOQorUEFTUyBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggaXMgMwogCiAyLjExIEFkZCBhbiBPcHRpb24gYXQgaW5kZXggSW5maW5pdHkK
LVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzApIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIu
b3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorUEFT
UyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEvMCkgZGlkIG5vdCB0aHJvdyBleGNlcHRp
b24uCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxl
Y3RlZEluZGV4IGlzIDQKIAogMi4xMiBBZGQgYSBub24tT3B0aW9uIGVsZW1lbnQKIFBBU1Mgc2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVN
aXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAogCiAy
LjEzIEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQo
b3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9N
IEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNl
bGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMg
MTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKIAogMi4xNCBBZGQgYSBub24tZWxl
bWVudCAobnVtYmVyKQogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1Q
QVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5k
ZXggaXMgMQorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDEwCitQQVNTIHNlbGVjdDIu
c2VsZWN0ZWRJbmRleCBpcyA0CiAKIDIuMTUgQWRkIGEgbm9uLWVsZW1lbnQgKGJvb2xlYW4pCiBQ
QVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNl
bGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlz
IDQKIAogMi4xNiBBZGQgdW5kZWZpbmVkCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9u
MiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2Vw
dGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIu
c2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BB
U1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKIAogMi4xNyBBZGQgbnVsbAogUEFTUyBzZWxl
Y3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1p
c21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5n
dGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorUEFTUyBzZWxlY3QyLm9w
dGlvbnMubGVuZ3RoIGlzIDEwCitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyA0CiAKIDIu
MTggQWRkIG5lZ2F0aXZlIGluZmluaXR5CiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9u
MiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2Vw
dGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIu
c2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BB
U1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKIAogMi4xOSBBZGQgTmFOCiBQQVNTIHNlbGVj
dDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlz
bWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0
aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKIAogMi4y
MCBBZGQgcG9zaXRpdmUgaW5maW5pdHkKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24y
LCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0
aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5z
ZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFT
UyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAogCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFw
cGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBp
bmctZXhwZWN0ZWQudHh0CmluZGV4IDViMmE4Y2YxNGQ0ZTZkZWUwYWI3NDlmYThmY2Y4MTAzOWE3
OGQwZDguLjljNTJmNTA5NDUxZWE3MGRiZDZiYTA2NTRlNjhiNjBiODBkODc5MzEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4
dApAQCAtNjksNiArNjksOCBAQCBjb252ZXJ0ZXIudGVzdExvbmcgPSB0cnVlCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmcgPSAnJwogUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gJzEnCitQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmcgPSAnYWJjJwogUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nID0gbnVsbApAQCAtNzcsNiArNzks
NjkgQEAgY29udmVydGVyLnRlc3RMb25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZyBpcyAwCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7
dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KIAorUEFTUyAndGVzdEVu
Zm9yY2VSYW5nZUxvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0xCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
MHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg4MAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4
ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4
N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweEZGRkYK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4N0ZGRkZGRkYKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0ZGRkZGRkYKK0ZBSUwgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4MDAwMDAwMCBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgMjE0NzQ4MzY0OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gMHhGRkZGRkZGRiBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgNDI5NDk2
NzI5NS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAwCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwMDAwMAorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMSBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IDYyMTI5NjU4ODU5MzY4OTgwLgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSBOdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAxLjc5NzY5
MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJl
ci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51bWJlci5NQVhfVkFMVUUgc2hv
dWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAx
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIEluZmluaXR5
LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtSW5maW5pdHkgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC1JbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBOYU4u
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcxJworUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMg
YWJjLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIHVuZGVm
aW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0ge3ZhbHVlT2Y6ZnVu
Y3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQQVNT
ICd0ZXN0VW5zaWduZWRMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPT09ICdudW1iZXInIGlzIHRydWUKIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nID0gMApAQCAtMTQxLDYgKzIwNiw4IEBAIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCiBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0g
J2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAogY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgPSBudWxsCkBAIC0xNDksNiArMjE2LDY0IEBAIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB7dmFsdWVPZjpmdW5jdGlv
bigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5
cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9PT0gJ251bWJlcicg
aXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAwCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMSBzaG91bGQgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBXYXMgLTEuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgaXMgMHhGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IC0weDgwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMTI4LgorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgxIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyAtMTI5LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
aXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAw
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwMDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRkZGCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkZGRgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAtMHg4MDAxIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAt
MzI3NjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRkZG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg3RkZG
RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwMDAwMDAw
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAwMDAw
MDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRkZGRkZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRkZG
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAw
MDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgzNjQ4LgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAxIHNob3VsZCB0
aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OS4KK0ZBSUwgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweERDQkE5ODc2NTQzMjEwIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2ODk4MC4KK0ZBSUwgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAxLjc5NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLU51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAtMS45OSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuOTku
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gSW5maW5pdHkg
c2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIEluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1JbmZpbml0eSBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IE5hTiBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgTmFOLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBmYWxzZQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcxJworUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJ2FiYycgc2hvdWxkIHRocm93IGFuIGV4
Y2VwdGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAw
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gdW5kZWZpbmVk
IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyB1bmRlZmluZWQuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJv
dyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTICd0ZXN0TG9uZ0xv
bmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMApAQCAt
MTkzLDE2ICszMTgsMjggQEAgY29udmVydGVyLnRlc3RMb25nTG9uZyA9IE51bWJlci5NSU5fVkFM
VUUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gLU51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCitj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK0ZBSUwgY29udmVydGVy
LnRlc3RMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIC05MjIzMzcyMDM2ODU0Nzc2MDAwLgogY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IDEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RM
b25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IEluZmluaXR5CitGQUlMIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAw
MC4KK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtSW5maW5pdHkKK0ZBSUwgY29udmVydGVyLnRl
c3RMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIC05MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVy
dGVyLnRlc3RMb25nTG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAK
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBmYWxzZQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICcnCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICcxJworUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAn
YWJjJwogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSBudWxsCkBAIC0yMTEsNiArMzQ4LDcyIEBAIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
PSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9
fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0xCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0YKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHhG
RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
MHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RkZG
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0w
eDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMHhGRkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0w
eDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4
ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAw
MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAx
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQz
MjEwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2ODk4MC4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9u
LiBXYXMgMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0
aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEuOTkKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4
Y2VwdGlvbi4gV2FzIEluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtSW5maW5p
dHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOYU4gc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5hTi4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9ICcxJworUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRp
b24uIFdhcyBhYmMuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gbnVsbAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK0ZBSUwgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHVuZGVmaW5lZCBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcg
ZXhjZXB0aW9uIEVycm9yLgorCiBQQVNTICd0ZXN0VW5zaWduZWRMb25nTG9uZycgaW4gY29udmVy
dGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
PT0gJ251bWJlcicgaXMgdHJ1ZQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMApA
QCAtMjU1LDE2ICs0NTgsMjggQEAgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTnVt
YmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAog
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKIFBBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIu
TUFYX1ZBTFVFCitGQUlMIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBzaG91bGQgYmUg
MC4gV2FzIDkyMjMzNzIwMzY4NTQ3NzYwMDAuCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAxLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCiBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRkZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgPSBJbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLUluZmluaXR5CitGQUlM
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIDkyMjMzNzIw
MzY4NTQ3NzYwMDAuCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOYU4KK1BBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9IGZhbHNlCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnYWJjJwog
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nID0gbnVsbApAQCAtMjczLDYgKzQ4OCw2NCBAQCBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0ge3Zh
bHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9y
LgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZycgaW4gY29udmVydGVy
IGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAtMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyBpcyAweEZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IC0weDgwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMTI4Lgor
RkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MSBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEyOS4KK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9u
LiBXYXMgLTMyNzY4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAtMHg4MDAxIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMzI3NjkuCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkZG
RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAw
MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAw
eDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAw
eEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyBpcyAweEZGRkZGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IC0weDgwMDAwMDAwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMjE0
NzQ4MzY0OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgzNjQ5
LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweERD
QkE5ODc2NTQzMjEwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2
ODk4MC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE51bWJl
ci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1O
dW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyA9IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEu
Nzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0
aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMS45OSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMg
LTEuOTkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IEluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBJbmZpbml0eS4KK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLUluZmluaXR5IHNo
b3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE5hTiBzaG91bGQgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHRy
dWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICcnCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJ2FiYycgc2hvdWxkIHRocm93IGFuIGV4Y2Vw
dGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
IGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
dW5kZWZpbmVkIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyB1bmRlZmluZWQuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKwogUEFT
UyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sCmluZGV4IDIxOTEzYmUwZmU4M2Mw
MjE3OTQwOWQ3YzY1YmZlY2FjZjQzNzAwMTIuLjI5YWViZjdhODAwMjIxZWY5YjI0NmJjOGFhMTdj
ZWZjOTY2MTMwY2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUt
bWFwcGluZy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGlu
Zy5odG1sCkBAIC0zNiwxMSArMzYsMjMgQEAgZnVuY3Rpb24gdGVzdE5vbk51bWVyaWNUb051bWVy
aWMoYXR0cmlidXRlKQogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiZmFsc2UiLCAiMCIpOwogICAg
IGNvbnZlcnQoYXR0cmlidXRlLCAidHJ1ZSIsICIxIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUs
ICInJyIsICIwIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInMSciLCAiMSIpOwogICAgIGNv
bnZlcnQoYXR0cmlidXRlLCAiJ2FiYyciLCAiMCIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAi
bnVsbCIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUsICJ1bmRlZmluZWQiLCAiMCIpOwog
fQogCitmdW5jdGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZShhdHRyaWJ1
dGUpCit7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJmYWxzZSIsICIwIik7CisgICAgY29udmVy
dChhdHRyaWJ1dGUsICJ0cnVlIiwgIjEiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicnIiwg
IjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicxJyIsICIxIik7CisgICAgY29udmVydFRo
cm93cyhhdHRyaWJ1dGUsICInYWJjJyIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAibnVsbCIs
ICIwIik7CisgICAgY29udmVydFRocm93cyhhdHRyaWJ1dGUsICJ1bmRlZmluZWQiKTsKK30KKwog
dHlwZSA9ICJ0ZXN0TG9uZyI7CiB2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUs
ICIwIik7CkBAIC03NSw2ICs4Nyw0MCBAQCB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsK
IGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9y
O319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZUxvbmciOwordmVy
aWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29udmVydCh0eXBlLCAi
LTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2NvbnZl
cnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnQodHlwZSwg
Ii0weDgwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZG
Iik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOwor
Y29udmVydCh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMSIpOworY29u
dmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiMHg4MDAwMDAw
MCIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhGRkZGRkZGRiIpOworY29udmVydCh0eXBlLCAi
LTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAxIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwg
IjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0
KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICIxLjk5Iiwg
IjEiKTsKK2NvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUluZmluaXR5Iik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdl
KHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBu
ZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0VW5zaWduZWRMb25nIjsK
IHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTEwOSw2ICsx
NTUsNDAgQEAgdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252ZXJ0VGhyb3dzKHR5
cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwogZGVidWcoIiIp
OwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmciOwordmVyaWZ5QXR0cmli
dXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEi
KTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIi0weDgwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MSIpOworY29udmVydCh0eXBl
LCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4
RkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydFRocm93cyh0
eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVydCh0
eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGRkZGRiIpOworY29udmVy
dFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgw
MDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERDQkE5ODc2NTQzMjEwIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICJOdW1i
ZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIuTUFYX1ZB
TFVFIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0
KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xLjk5Iik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiLUluZmlu
aXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1l
cmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVu
Y3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2RlYnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0
TG9uZ0xvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIpOwpA
QCAtMTMyLDE5ICsyMTIsNTEgQEAgY29udmVydCh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKIGNvbnZl
cnQodHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKIGNvbnZlcnQodHlwZSwgIk51bWJlci5NSU5f
VkFMVUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOwot
Ly8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29u
dmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1O
dW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NQVhfVkFMVUUi
LCAiMCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOwogY29udmVy
dCh0eXBlLCAiMS45OSIsICIxIik7CiBjb252ZXJ0KHR5cGUsICItMS45OSIsICItMSIpOwotLy8g
RklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVy
dCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAi
MCIpOwotLy9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOworY29udmVydCh0eXBlLCAiSW5maW5p
dHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlw
ZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRU
aHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBk
ZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIjsKK3ZlcmlmeUF0
dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi0xIik7
Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5
cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4
MCIpOworY29udmVydCh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOwor
Y29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZl
cnQodHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZl
cnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAwIik7Citj
b252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhEQ0JB
OTg3NjU0MzIxMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citj
b252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVtYmVyLk1B
WF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7Citjb252ZXJ0KHR5cGUsICIt
MS45OSIsICItMSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5maW5pdHkiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiTmFOIiwgIjAi
KTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVydFRo
cm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2Rl
YnVnKCIiKTsKKwogdHlwZSA9ICJ0ZXN0VW5zaWduZWRMb25nTG9uZyI7CiB2ZXJpZnlBdHRyaWJ1
dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC0xNjgsMTggKzI4MCw1MCBAQCBjb252
ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIsICIweEZGRkZGRkZGN0ZGRkZGRkYiKTsKIGNvbnZlcnQo
dHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKIGNvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFM
VUUiLCAiMCIpOwogY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOwotLy8g
RklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVy
dCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1OdW1i
ZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NQVhfVkFMVUUiLCAi
MCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOwogY29udmVydCh0
eXBlLCAiMS45OSIsICIxIik7CiBjb252ZXJ0KHR5cGUsICItMS45OSIsICIweEZGRkZGRkZGRkZG
RkZGRkYiKTsKLS8vIEZJWE1FOiBJbmNvbnNpc3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBK
U0MuCi0vL2NvbnZlcnQodHlwZSwgIkluZmluaXR5IiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAi
LUluZmluaXR5IiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKK2NvbnZlcnQo
dHlwZSwgIkluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7
Citjb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOwogdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlw
ZSk7CiBjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBF
cnJvcjt9fSIpOwogZGVidWcoIiIpOwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xIik7Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0
KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIw
eEZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MCIpOworY29udmVydFRocm93cyh0eXBl
LCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOworY29udmVydCh0eXBlLCAiMHg4
MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0w
eDgwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQodHlwZSwg
IjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAwIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRocm93cyh0eXBlLCAi
MHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIw
Iik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVt
YmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICItMS45OSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5maW5pdHkiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiTmFO
Iik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7Citk
ZWJ1ZygiIik7CisKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9qcy10ZXN0LXBv
c3QuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0vZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNzY3MmI4MGQzZTg4MTQyODU5ODEyY2ZjYTg2YWNmZWJiY2QyNGQ2Mwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMv
d2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1NTIgQEAKK0V4ZXJj
aXNlIFdlYklETCB0eXBlIGNvbnZlcnNpb25zLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworY29udmVydGVyID0gd2luZG93LmludGVybmFscy50eXBlQ29udmVyc2lvbnMoKQorCitQ
QVNTICd0ZXN0TG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRl
ci50ZXN0TG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RMb25nID0gMAor
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gLTEKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdExvbmcgPSAxCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmcgPSAweDdGCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdExvbmcgPSAweDgwCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAweEZG
CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdExvbmcgPSAt
MHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTB4ODAKK2NvbnZlcnRlci50ZXN0TG9u
ZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRl
c3RMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDdGRkYKK2NvbnZl
cnRlci50ZXN0TG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg4MDAw
Citjb252ZXJ0ZXIudGVzdExvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDB4RkZGRgorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAwMQorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmcgaXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RMb25nID0gMHg3RkZGRkZG
RgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RM
b25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTB4ODAwMDAwMDAK
K2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIC0xCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdExvbmcgaXMgLTB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDAwMDAx
CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdExv
bmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDc2NTQz
MjEwCitjb252ZXJ0ZXIudGVzdExvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtTnVtYmVy
Lk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RM
b25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0TG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0TG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAtMQor
Y29udmVydGVyLnRlc3RMb25nID0gSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC1JbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcg
aXMgMQorY29udmVydGVyLnRlc3RMb25nID0gJ2FiYycKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IHVuZGVmaW5lZAorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigp
e3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKK1BBU1MgJ3Rlc3RF
bmZvcmNlUmFuZ2VMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9
IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4ODAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0w
eDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAw
eDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0ZGRgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHhGRkZG
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAtMHg4MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGRkZGRkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkZGRkZGCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gMHhGRkZGRkZGRiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4
RENCQTk4NzY1NDMyMTAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtTnVt
YmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSBJbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
dHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcxJworUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVy
cm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rp
b24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KKworUEFTUyAndGVzdFVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BB
U1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVl
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMQorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHg4MAorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRgorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAweEZGRkZGRjgwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0weDgxCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRkZGN0YKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDgwMDAKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkYK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyBpcyAweEZGRkY4MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGN0ZGRgor
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
ID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDgwMDAw
MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAw
eDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nID0gMHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyBpcyAweDc2NTQzMjEwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IE51bWJl
ci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDEuOTkK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZG
RkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0g
LUluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB0cnVl
CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnYWJjJworUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKworUEFTUyAn
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID09PSAnbnVtYmVy
JyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMg
MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IC0weDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODEgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
aXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZG
RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
MHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBp
cyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4
RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMg
MHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IC0weDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBO
dW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAt
TnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxV
RQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xLjk5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtSW5maW5pdHkgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gZmFsc2UK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAn
MScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICdhYmMnIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCisKK1BBU1MgJ3Rlc3RMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
aXMgLTEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg4MAorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
PSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHhGRgorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODAK
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg4
MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHhGRkZG
Citjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nIGlzIC0weDgwMDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMHg4MDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RMb25nTG9u
ZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweDdGRkZGRkZG
Citjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmdMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweEZGRkZG
RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHhGRkZGRkZGRgorY29udmVydGVy
LnRlc3RMb25nTG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
aXMgLTB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMHg4MDAwMDAwMQorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIC0weDgwMDAwMDAxCitjb252ZXJ0ZXIudGVzdExv
bmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IDB4RENCQTk4NzY1NDMyMTAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZB
TFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25n
TG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMg
MAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVy
dGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLU51bWJlci5N
QVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDEKK2NvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IC0xCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLUluZmluaXR5CitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IE5h
TgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMg
MAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nIGlzIDEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnYWJjJworUEFTUyBjb252ZXJ0ZXIu
dGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBudWxsCitQQVNTIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHVuZGVm
aW5lZAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3
IGV4Y2VwdGlvbiBFcnJvci4KKworUEFTUyAndGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nJyBpbiBj
b252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweEZGCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4
MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAw
eEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAw
MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAwMDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMDAwMDEKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTnVt
YmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0xLjk5
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE5hTiB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHRydWUKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJzEnCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBu
dWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorCitQQVNTICd0ZXN0VW5zaWduZWRM
b25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMg
MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTEKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkZGRkZGRkZGRgorY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
aXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4
MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZG
RkZGRkZGRkZGRkY4MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTB4ODEKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkZGRkZGRkY3Rgor
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4
MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
aXMgMHhGRkZGRkZGRkZGRkY4MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAt
MHg4MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZG
RkZGRjdGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRkZGRkYKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDB4RkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAw
CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGODAwMDAw
MDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAxCitQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGN0ZGRkZGRkYKK2NvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RENCQTk4NzY1NDMyMTAKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMS45
OQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nIGlzIDB4RkZGRkZGRkZGRkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nID0gSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eQorUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gdHJ1
ZQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nID0gJ2FiYycKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IHVuZGVmaW5lZAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Ro
cm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKK1BBU1MgJ3Rlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBl
b2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID09PSAnbnVtYmVy
JyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAw
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0xIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAw
eEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAw
eEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0w
eDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgxIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IC0weDgwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4
ODAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGRkZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAt
MHg4MDAwMDAwMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IC0xLjk5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IEluZmluaXR5
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IGZhbHNl
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBudWxs
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5l
ZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Ro
cm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFy
YW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2
ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCAxZThiZDU3YmQzMTFiODJj
ZTlmMjQ4YmRkNzQ2NDRiYzJmMDJkNmQ1Li4xNDU1N2Q0NTM2NmRkZjM0MWI2YzAxMjA3MGUyODkx
MjNhMTE4ODdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2
ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAt
MTgsNiArMTgsMTUgQEAgUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIDApIHRocmV3IFR5cGVF
cnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRl
eGVkREIub3BlbihkYm5hbWUsIC01KQogUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KIFBBU1Mg
aW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitF
eHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwg
SW5maW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3Bl
bihkYm5hbWUsIEluZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGlu
ZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5p
dHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5h
bWUsIC1JbmZpbml0eSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlw
ZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKQorUEFTUyBF
eGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pIHRo
cmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24g
ZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKQogUEFTUyBFeGNlcHRpb24gd2FzIHRocm93
bi4KIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkgdGhyZXcgVHlwZUVycm9yOiBUeXBl
IGVycm9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJj
ZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCmluZGV4IGFmMzVm
MmQ0YmM4MmIwYmNkYjViMDE0OGM2MzBmMjE1Mzk2M2JmYzEuLmQzMzljMzJjMWM2YjExNDk3ZTFj
Yzg5ZDBjMDczNWFhMzk5OTc0NzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCisrKyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0
ZXJzLmpzCkBAIC0yMCw2ICsyMCw5IEBAIGZ1bmN0aW9uIGRlbGV0ZVN1Y2Nlc3MoZXZ0KSB7CiAg
ICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsICdz
dHJpbmd2ZXJzaW9uJykiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlv
bkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDApIiwgIlR5cGVFcnJvciIpOwogICAgIGV2
YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkiLCAi
VHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIu
b3BlbihkYm5hbWUsIEluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0
RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmluaXR5KSIsICJUeXBl
RXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVu
KGRibmFtZSwgTmFOKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9u
Q2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpIiwgIlR5cGVFcnJvciIpOwogICAgIGV2
YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAweDIwMDAw
MDAwMDAwMDAwKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xh
c3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgbnVsbCkiLCAiVHlwZUVycm9yIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192267</attachid>
            <date>2013-03-08 12:16:04 -0800</date>
            <delta_ts>2013-03-11 12:15:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130308121207.patch</filename>
            <type>text/plain</type>
            <size>121626</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MTk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzcxNjBkZTU1ZDRjYzkz
ZGJlNDJjM2E2YjRiODRkYWZlODE1N2I4Zi4uZThjNTNlYWM1ODhjNWQxNjE0YWYxMzM0NmQ5NmVk
MThjZWVlODc4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEzLTAzLTA4ICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgVGVzdDog
ZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKKyAgICAgICAgICAgICAgZmFzdC9qcy9z
ZWxlY3Qtb3B0aW9ucy1hZGQuaHRtbAorICAgICAgICAgICAgICBmYXN0L2RvbS9ub24tbnVtZXJp
Yy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmh0bWwKKworICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJDdXJzb3I6OmFkdmFu
Y2UpOiBSZW1vdmUgY3VzdG9tIGJvdW5kcyBjaGVja2luZyBjb2RlLgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oOgorICAgICAgICAoSURCQ3Vyc29yKTogTWFrZSBhZHZh
bmNlKCkgdHlwZSBtYXRjaCBJREwuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vy
c29yLmlkbDogTWF0Y2ggc3BlYyBXZWJJREwuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIv
SURCRmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJGYWN0b3J5OjpvcGVuKTogUmVt
b3ZlIGN1c3RvbSBib3VuZHMgY2hlY2tpbmcgY29kZS4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4
ZWRkYi9JREJGYWN0b3J5Lmg6CisgICAgICAgIChJREJGYWN0b3J5KTogTWFrZSBvcGVuKCkgdHlw
ZSBtYXRjaCBJREwuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGw6
IE1hdGNoIHNwZWMgV2ViSURMLgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtOgorICAgICAgICAoSlNWYWx1ZVRvTmF0aXZlKTogQWRkIEZJWE1FIHRvIHN1cHBv
cnQgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JWOC5wbToKKyAgICAgICAgKEdlbmVyYXRlTm9ybWFsQXR0clNldHRlcik6IEltcGxlbWVudCBb
RW5mb3JjZVJhbmdlXSBmb3Igc2V0dGVycy4KKyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0No
ZWNrKTogSW1wbGVtZW50IFtFbmZvcmNlUmFuZ2VdIGZvciBwYXJhbWV0ZXJzLgorICAgICAgICAo
SlNWYWx1ZVRvTmF0aXZlKTogUGFzcyBFbmZvcmNlUmFuZ2UgdG8gYmluZGluZyBoZWxwZXJzLgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQ6IEFkZCBFbmZvcmNl
UmFuZ2UuCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsOiBBZGQg
c29tZSBzYW1wbGVzIHdpdGggRW5mb3JjZVJhbmdlCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHA6IFVwZGF0ZWQgZXhwZWN0YXRpb25zLgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5jcHA6IERpdHRvLgorICAg
ICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0lu
dDMyKTogTmV3IGhlbHBlcnMgdGhhdCBoYW5kbGUgZmxhZ3MgbGlrZSBFbmZvcmNlUmFuZ2UuCisg
ICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0KToK
KyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEJp
bmRpbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50MzIpOiBEaXR0by4KKyAgICAgICAgKFdl
YkNvcmU6OnRvVUludDMyKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50NjQpOgorICAgICAgICAo
V2ViQ29yZTo6dG9VSW50NjQpOgorICAgICAgICAoV2ViQ29yZTo6dG9GbG9hdCk6CisgICAgICAg
ICogYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmg6CisgICAgICAgIChXZWJDb3JlKTogSGVs
cGVycyBmb3IgY29udmVyc2lvbnMtdGhhdC1tYXktdGhyb3cuCisgICAgICAgICogdGVzdGluZy9U
eXBlQ29udmVyc2lvbnMuaDogRXhwb3NlIGludGVybmFscyBhdHRyaWJzIHdpdGggRW5mb3JjZVJh
bmdlIHNldC4KKyAgICAgICAgKiB0ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5pZGw6IERpdHRvLgor
CiAyMDEzLTAzLTA4ICBBbGJlcnRvIEdhcmNpYSAgPGFnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBbQmxhY2tCZXJyeV0gTGF5ZXJUaWxlcjogcmVuYW1lIGN1cnJlbnRGcmFtZUhhc0FscGhh
IGFzIGN1cnJlbnRGcmFtZUtub3duVG9CZU9wYXF1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKaW5kZXggN2JiMGY1MDBlNDdiNDI2MTM0MGE5MzI4
MTU4YWRlOTNlMzQ4NTZjNi4uMWNmOTc3MTAxY2E2MzI2M2RmY2RmZmM1NzU4ZDI0ZGNhNzQ0ZmI1
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3Bw
CkBAIC0xNTIsNyArMTUyLDcgQEAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBJREJDdXJzb3I6OnVw
ZGF0ZShTY3JpcHRTdGF0ZSogc3RhdGUsIFNjcmlwdFZhbHVlJiB2YWx1ZSwKICAgICByZXR1cm4g
b2JqZWN0U3RvcmUtPnB1dChJREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2U6OkN1cnNvclVwZGF0
ZSwgSURCQW55OjpjcmVhdGUodGhpcyksIHN0YXRlLCB2YWx1ZSwgbV9jdXJyZW50UHJpbWFyeUtl
eSwgZWMpOwogfQogCi12b2lkIElEQkN1cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4
Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBJREJDdXJzb3I6OmFkdmFuY2UodW5zaWduZWQgbG9uZyBj
b3VudCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgZWMgPSAwOwogICAgIElEQl9UUkFDRSgi
SURCQ3Vyc29yOjphZHZhbmNlIik7CkBAIC0xNjYsOCArMTY2LDcgQEAgdm9pZCBJREJDdXJzb3I6
OmFkdmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hl
Y2sgZm9yIDAgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgaWYgKGNvdW50IDwg
MSB8fCBjb3VudCA+IFVJTlRfTUFYKSB7CisgICAgaWYgKCFjb3VudCkgewogICAgICAgICBlYyA9
IFR5cGVFcnJvcjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKaW5kZXggMThkMjAwZWE2MTA2Nzc5N2VhNGM5ZWRj
NTE2MWQxNWRiNGIzZGFlNy4uZTM1ODkxMDk2ZDc1YjNlZjJlMzk5ODc5YjE5MzYzZTEyM2M0YTEx
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKQEAg
LTY5LDggKzY5LDcgQEAgcHVibGljOgogICAgIElEQkFueSogc291cmNlKCkgY29uc3Q7CiAKICAg
ICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IHVwZGF0ZShTY3JpcHRTdGF0ZSosIFNjcmlwdFZhbHVl
JiwgRXhjZXB0aW9uQ29kZSYpOwotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgdW5zaWduZWQgbG9u
ZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UobG9uZyBs
b25nLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBhZHZhbmNlKHVuc2lnbmVkIGxvbmcsIEV4
Y2VwdGlvbkNvZGUmKTsKICAgICAvLyBGSVhNRTogVHJ5IHRvIG1vZGlmeSB0aGUgY29kZSBnZW5l
cmF0b3Igc28gdGhpcyBvdmVybG9hZCBpcyB1bm5lZWRlZC4KICAgICB2b2lkIGNvbnRpbnVlRnVu
Y3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IGNvbnRp
bnVlRnVuY3Rpb24oc3RhdGljX2Nhc3Q8SURCS2V5Kj4oMCksIGVjKTsgfQogICAgIHZvaWQgY29u
dGludWVGdW5jdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUm
IGtleSwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5pZGwKaW5kZXggNDU3MGMxZWNjODdkMDhiOTAxMDAzYTNkYzhmMjc4NjFm
MTE4OGVhMS4uNGI2MjY1YjQyOGYyNmU5MWZjMDdiYjhiNWMyMjE1ZDdkYzQyMzQ4YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCkBAIC0zNSw4
ICszNSw3IEBACiAKICAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGVdIElEQlJlcXVlc3QgdXBkYXRl
KGluIGFueSB2YWx1ZSkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgIC8vIEZJ
WE1FOiBNYWtlIHRoaXMgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBvbmNlIHdlYmtpdC5v
cmcvYi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UoaW4gbG9uZyBsb25nIGNvdW50KQor
ICAgIHZvaWQgYWR2YW5jZShpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGNvdW50KQog
ICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQsIEltcGxlbWVudGVkQXM9Y29udGludWVGdW5jdGlvbl0gdm9pZCBjb250aW51
ZShpbiBbT3B0aW9uYWxdIGFueSBrZXkpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rvcnku
Y3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKaW5k
ZXggZDAxMjBmNjBhODlhZGZmYjdkMTY1YzlhYWI3M2Y5Zjc2ZjMxMTBiMC4uMWQ1ZjBmYmIxYWJm
MWU1YWRkZDczODUzNzkzZjlkMGRjMTgwMmY3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKQEAgLTExMSwxMSArMTExLDkgQEAgUGFzc1Jl
ZlB0cjxJREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqIGNvbnQKICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIAotUGFzc1JlZlB0cjxJ
REJPcGVuREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQsIGNvbnN0IFN0cmluZyYgbmFtZSwgaW50NjRfdCB2ZXJzaW9uLCBFeGNlcHRpb25D
b2RlJiBlYykKK1Bhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIHVuc2ln
bmVkIGxvbmcgbG9uZyB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKLSAgICAvLyBGSVhN
RTogVGhpcyBzaG91bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9i
Lzk2Nzk4IGxhbmRzLgotICAgIGNvbnN0IGludDY0X3QgbWF4RUNNQVNjcmlwdEludGVnZXIgPSAw
eDIwMDAwMDAwMDAwMDAwTEwgLSAxOwotICAgIGlmICh2ZXJzaW9uIDwgMSB8fCB2ZXJzaW9uID4g
bWF4RUNNQVNjcmlwdEludGVnZXIpIHsKKyAgICBpZiAoIXZlcnNpb24pIHsKICAgICAgICAgZWMg
PSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAppbmRleCBjYzYxY2Q3YzZmYmQxMmU0ZTA5
YTc3ZWM5ZGQwZGEyMGNmZTc3MGI5Li45NzQyOTczYTE3ZTVmM2IwNzk1ZTMzZGY3OWM2NmU3MzNl
MmVjNDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9y
eS5oCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+
IGdldERhdGFiYXNlTmFtZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUm
KTsKIAogICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgUGFz
c1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGludDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOworICAg
IFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiwgY29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0
aW9uQ29kZSYpOwogICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gZGVsZXRlRGF0YWJh
c2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgRXhjZXB0aW9u
Q29kZSYpOwogCiAgICAgc2hvcnQgY21wKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBT
Y3JpcHRWYWx1ZSYgZmlyc3QsIGNvbnN0IFNjcmlwdFZhbHVlJiBzZWNvbmQsIEV4Y2VwdGlvbkNv
ZGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZh
Y3RvcnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5p
ZGwKaW5kZXggYTUxNjA1YjJiNGUzMTI5N2JiNTVkYTNiNTE3ZDVkZDEyYzNkMjJhYy4uZWY1MWJi
ZjgzODdjYThiZDBlNmFlYmM1MTA2M2I4ZDVlNjhkNGY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAgLTMxLDggKzMxLDcgQEAKICAg
ICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgSW1wbGVtZW50ZWRBcz1nZXREYXRh
YmFzZU5hbWVzXSBJREJSZXF1ZXN0IHdlYmtpdEdldERhdGFiYXNlTmFtZXMoKQogICAgICAgICBy
YWlzZXMgKERPTUV4Y2VwdGlvbik7CiAKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNl
UmFuZ2VdIHVuc2lnbmVkIGxvbmcgbG9uZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4K
LSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCT3BlbkRCUmVxdWVzdCBv
cGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbT3B0aW9uYWxdIGxvbmcgbG9uZyB2ZXJzaW9uKQor
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IG9w
ZW4oaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtFbmZvcmNlUmFuZ2UsIE9wdGlvbmFsXSB1bnNpZ25l
ZCBsb25nIGxvbmcgdmVyc2lvbikKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IGRlbGV0
ZURhdGFiYXNlKGluIERPTVN0cmluZyBuYW1lKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlv
bik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ckpTLnBtCmluZGV4IDZhZGM5ODgzZDQ2NmI3MWZhNTEwNzVmNWI4ZGM5YmYyOWE1YThmMzEuLjUy
NjhkOWY0OWIzMzg4ZDdjMTg2OTk3MjNhYTQxYTFkODE1ZDM3MmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMTYyLDYg
KzMxNjIsNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAgcmV0dXJuICIkdmFsdWUudG9Cb29s
ZWFuKGV4ZWMpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9O
dW1iZXIoZXhlYykiIGlmICR0eXBlIGVxICJkb3VibGUiOwogICAgIHJldHVybiAiJHZhbHVlLnRv
RmxvYXQoZXhlYykiIGlmICR0eXBlIGVxICJmbG9hdCI7CisgICAgIyBGSVhNRTogQWRkIFtFbmZv
cmNlUmFuZ2VdIHN1cHBvcnQKICAgICByZXR1cm4gIiR2YWx1ZS50b0ludDMyKGV4ZWMpIiBpZiAk
dHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKICAgICByZXR1cm4gIiR2YWx1ZS50
b1VJbnQzMihleGVjKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1
bnNpZ25lZCBzaG9ydCI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLnRv
SW50ZWdlcihleGVjKSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciIG9yICR0eXBlIGVxICJ1bnNp
Z25lZCBsb25nIGxvbmciOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JWOC5wbQppbmRleCBlMzhhZjRkMTU2NWRkOWJlNWRmNGJmNTA3ZjNmMjhm
NmRmYzAxNDNjLi43NjkyYzUyMWNmNjIyZWRhNDIwMDIxOGRhMWUxNzBlNDMzZmRkYjc0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQpAQCAtMTMwMiwxNCArMTMwMiwxOSBAQCBFTkQKICAgICAgICAgICAgIHB1c2goQGltcGxDb250
ZW50SW50ZXJuYWxzLCAiICAgICAgICByZXR1cm47XG4iKTsKICAgICAgICAgfQogICAgIH0gZWxz
ZSB7Ci0gICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmlidXRlLT5zaWdu
YXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICBteSAkYXJyYXlU
eXBlID0gJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5VHlwZSgkbmF0aXZlVHlwZSk7CiAKICAgICAg
ICAgaWYgKCRuYXRpdmVUeXBlID1+IC9eVjhTdHJpbmdSZXNvdXJjZS8pIHsKKyAgICAgICAgICAg
IG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1
ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwogICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRJ
bnRlcm5hbHMsICIgICAgIiAuIENvbnZlcnRUb1Y4U3RyaW5nUmVzb3VyY2UoJGF0dHJpYnV0ZS0+
c2lnbmF0dXJlLCAkbmF0aXZlVHlwZSwgInYiLCAkdmFsdWUsICJWT0lEIikgLiAiXG4iKTsKICAg
ICAgICAgfSBlbHNpZiAoJGFycmF5VHlwZSkgeworICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNW
YWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNv
bGF0ZSgpIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudEludGVybmFscywgIiAgICBW
ZWN0b3I8JGFycmF5VHlwZT4gdiA9ICR2YWx1ZTtcbiIpOworICAgICAgICB9IGVsc2lmICgkYXR0
cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSkg
eworICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIiwgImNhblRocm93RXhjZXB0aW9u
Iik7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudEludGVybmFscywgIiAgICBUWVBFQ0hF
Q0tfVk9JRCgkbmF0aXZlVHlwZSwgdiwgJHZhbHVlLCBpbmZvLkdldElzb2xhdGUoKSk7XG4iKTsK
ICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2
ZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICJ2YWx1ZSIsICJpbmZvLkdldElzb2xhdGUoKSIpOwog
ICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRJbnRlcm5hbHMsICIgICAgJG5hdGl2ZVR5cGUg
diA9ICR2YWx1ZTtcbiIpOwogICAgICAgICB9CiAgICAgfQpAQCAtMTg4OCw4ICsxODkzLDEzIEBA
IHN1YiBHZW5lcmF0ZVBhcmFtZXRlcnNDaGVjawogICAgICAgICAgICAgICAgICAgICAkcGFyYW1l
dGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKDAsIGFyZ3Mu
R2V0SXNvbGF0ZSgpKTtcbiI7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAg
ICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgVjhUUllDQVRDSCgkbmF0aXZl
VHlwZSwgJHBhcmFtZXRlck5hbWUsICIgLgotICAgICAgICAgICAgICAgICBKU1ZhbHVlVG9OYXRp
dmUoJHBhcmFtZXRlciwgJG9wdGlvbmFsICYmICRvcHRpb25hbCBlcSAiRGVmYXVsdElzTnVsbFN0
cmluZyIgPyAiYXJndW1lbnRPck51bGwoYXJncywgJHBhcmFtSW5kZXgpIiA6ICJhcmdzWyRwYXJh
bUluZGV4XSIsICJhcmdzLkdldElzb2xhdGUoKSIpIC4gIik7XG4iOworICAgICAgICAgICAgaWYg
KCRwYXJhbWV0ZXItPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSkgeworICAg
ICAgICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAkb3B0
aW9uYWwgJiYgJG9wdGlvbmFsIGVxICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJhcmd1bWVudE9y
TnVsbChhcmdzLCAkcGFyYW1JbmRleCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwgImFyZ3MuR2V0
SXNvbGF0ZSgpIiwgImNhblRocm93RXhjZXB0aW9uIik7CisgICAgICAgICAgICAgICAgJHBhcmFt
ZXRlckNoZWNrU3RyaW5nIC49ICIgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSygkbmF0aXZl
VHlwZSwgJHBhcmFtZXRlck5hbWUsICR2YWx1ZSwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKKyAg
ICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRv
TmF0aXZlKCRwYXJhbWV0ZXIsICRvcHRpb25hbCAmJiAkb3B0aW9uYWwgZXEgIkRlZmF1bHRJc051
bGxTdHJpbmciID8gImFyZ3VtZW50T3JOdWxsKGFyZ3MsICRwYXJhbUluZGV4KSIgOiAiYXJnc1sk
cGFyYW1JbmRleF0iLCAiYXJncy5HZXRJc29sYXRlKCkiKTsKKyAgICAgICAgICAgICAgICAkcGFy
YW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICBWOFRSWUNBVENIKCRuYXRpdmVUeXBlLCAkcGFyYW1l
dGVyTmFtZSwgJHZhbHVlKTtcbiI7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoJG5h
dGl2ZVR5cGUgZXEgJ0RpY3Rpb25hcnknKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1ldGVyQ2hl
Y2tTdHJpbmcgLj0gIiAgICBpZiAoISRwYXJhbWV0ZXJOYW1lLmlzVW5kZWZpbmVkT3JOdWxsKCkg
JiYgISRwYXJhbWV0ZXJOYW1lLmlzT2JqZWN0KCkpXG4iOwogICAgICAgICAgICAgICAgJHBhcmFt
ZXRlckNoZWNrU3RyaW5nIC49ICIgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcihcIk5vdCBh
biBvYmplY3QuXCIsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CkBAIC0zOTc3LDE2ICszOTg3LDI3
IEBAIHN1YiBKU1ZhbHVlVG9OYXRpdmUKICAgICBteSAkc2lnbmF0dXJlID0gc2hpZnQ7CiAgICAg
bXkgJHZhbHVlID0gc2hpZnQ7CiAgICAgbXkgJGdldElzb2xhdGUgPSBzaGlmdDsKKyAgICBteSAk
bWF5RmFpbCA9IHNoaWZ0OwogCiAgICAgbXkgJHR5cGUgPSAkc2lnbmF0dXJlLT50eXBlOworICAg
IG15ICRpbnRDb252ZXJzaW9uID0gJHNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVu
Zm9yY2VSYW5nZSJ9ID8gIkVuZm9yY2VSYW5nZSIgOiAiTm9ybWFsQ29udmVyc2lvbiI7CisgICAg
ZGllICJDYW4ndCBoYW5kbGUgW0VuZm9yY2VSYW5nZV0gdW5sZXNzIGNhbGxlZCBmcm9tIGNvbnRl
eHQgdGhhdCBoYW5kbGVzIGZhaWx1cmVzLiIgaWYgJGludENvbnZlcnNpb24gZXEgIkVuZm9yY2VS
YW5nZSIgYW5kICEkbWF5RmFpbDsKIAogICAgIHJldHVybiAiJHZhbHVlIiBpZiAkdHlwZSBlcSAi
SlNPYmplY3QiOwogICAgIHJldHVybiAiJHZhbHVlLT5Cb29sZWFuVmFsdWUoKSIgaWYgJHR5cGUg
ZXEgImJvb2xlYW4iOwogICAgIHJldHVybiAic3RhdGljX2Nhc3Q8JHR5cGU+KCR2YWx1ZS0+TnVt
YmVyVmFsdWUoKSkiIGlmICR0eXBlIGVxICJmbG9hdCIgb3IgJHR5cGUgZXEgImRvdWJsZSI7CiAK
LSAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBl
IGVxICJzaG9ydCI7Ci0gICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAi
dW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKLSAgICByZXR1cm4g
InRvSW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyIgb3IgJHR5
cGUgZXEgImxvbmcgbG9uZyI7CisgICAgaWYgKCRtYXlGYWlsKSB7CisgICAgICAgIHJldHVybiAi
dG9JbnQzMigkdmFsdWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVxICJsb25nIiBv
ciAkdHlwZSBlcSAic2hvcnQiOworICAgICAgICByZXR1cm4gInRvVUludDMyKCR2YWx1ZSwgJGlu
dENvbnZlcnNpb24sIG9rKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVx
ICJ1bnNpZ25lZCBzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUsICRpbnRD
b252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVxICJsb25nIGxvbmciOworICAgICAgICByZXR1cm4g
InRvVUludDY0KCR2YWx1ZSwgJGludENvbnZlcnNpb24sIG9rKSIgaWYgJHR5cGUgZXEgInVuc2ln
bmVkIGxvbmcgbG9uZyI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgcmV0dXJuICJ0b0ludDMyKCR2
YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOworICAgICAgICBy
ZXR1cm4gInRvVUludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAk
dHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVl
KSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyI7CisgICAgICAgIHJldHVybiAidG9VSW50NjQoJHZh
bHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyI7CisgICAgfQogICAgIHJldHVy
biAic3RhdGljX2Nhc3Q8UmFuZ2U6OkNvbXBhcmVIb3c+KCR2YWx1ZS0+SW50MzJWYWx1ZSgpKSIg
aWYgJHR5cGUgZXEgIkNvbXBhcmVIb3ciOwogICAgIHJldHVybiAidG9XZWJDb3JlRGF0ZSgkdmFs
dWUpIiBpZiAkdHlwZSBlcSAiRGF0ZSI7CiAgICAgcmV0dXJuICJ0b0RPTVN0cmluZ0xpc3QoJHZh
bHVlLCAkZ2V0SXNvbGF0ZSkiIGlmICR0eXBlIGVxICJET01TdHJpbmdMaXN0IjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CmluZGV4IDhl
ZGFjMTI4NzFhYzRkMTMxMTc1NmZlYzI5ZTMyODg3NTE2MjgxN2EuLjI4Y2JlZTNlZDY0MjczZWM5
YmIyY2QwZjM4ZjY0ZWQxYWEzMjkxOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dApAQCAtNTIsNiArNTIsNyBAQCBEb05vdENoZWNr
Q29uc3RhbnRzCiBEb05vdENoZWNrU2VjdXJpdHkKIERvTm90Q2hlY2tTZWN1cml0eU9uR2V0dGVy
CiBEb05vdENoZWNrU2VjdXJpdHlPblNldHRlcgorRW5mb3JjZVJhbmdlCiBFdmVudFRhcmdldAog
RXh0ZW5kc0RPTUdsb2JhbE9iamVjdAogR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsRG9jdW1lbnR8
SW1wbEVsZW1lbnRSb290fEltcGxPd25lck5vZGVSb290CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKaW5kZXggMjRhMGU2YzA5YTM4NmI2YmZh
ZmRiMGRjY2ViYTlkMmVmMjU1NjQ3OC4uZjU0YmNhN2JjZDY0OWIzOWI3Y2ZlNWFhYzAwODI0MzQw
ODQzOTIyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Rlc3RPYmouaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9U
ZXN0T2JqLmlkbApAQCAtMTUwLDYgKzE1MCwxOSBAQCBlbnVtIFRlc3RFbnVtVHlwZSB7ICIiLCAi
RW51bVZhbHVlMSIsICJFbnVtVmFsdWUyIiwgIkVudW1WYWx1ZTMiIH07CiAgICAgc3RhdGljIHZv
aWQgICAgc3RhdGljTWV0aG9kV2l0aENhbGxiYWNrQXJnKGluIFtDYWxsYmFja10gVGVzdENhbGxi
YWNrIGNhbGxiYWNrKTsKICNlbmRpZgogCisjaWYgZGVmaW5lZChURVNUSU5HX1Y4KQorICAgIC8v
ICdFbmZvcmNlUmFuZ2UnIGV4dGVuZGVkIGF0dHJpYnV0ZQorICAgIHZvaWQgICAgbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZUludDMyKGluIFtFbmZvcmNlUmFuZ2VdIGxvbmcgdmFsdWUpOworICAgIHZv
aWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMihpbiBbRW5mb3JjZVJhbmdlXSB1bnNp
Z25lZCBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2
NChpbiBbRW5mb3JjZVJhbmdlXSBsb25nIGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9k
V2l0aEVuZm9yY2VSYW5nZVVJbnQ2NChpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxv
bmcgdmFsdWUpOworCisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgZW5mb3JjZWRS
YW5nZUxvbmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25n
IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJh
bmdlXSBsb25nIGxvbmcgZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cjsKKyAgICBhdHRyaWJ1dGUg
W0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExv
bmdMb25nQXR0cjsKKyNlbmRpZgorCiAgICAgLy8gJ0NvbmRpdGlvbmFsJyBleHRlbmRlZCBhdHRy
aWJ1dGUKICAgICBbQ29uZGl0aW9uYWw9Q29uZGl0aW9uMV0gYXR0cmlidXRlIGxvbmcgY29uZGl0
aW9uYWxBdHRyMTsKICAgICBbQ29uZGl0aW9uYWw9Q29uZGl0aW9uMSZDb25kaXRpb24yXSBhdHRy
aWJ1dGUgbG9uZyBjb25kaXRpb25hbEF0dHIyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAppbmRleCA1ZWI0MWU1ZDY2Y2Nh
ZGQ5MzU4Yjk5Mjk1YTExMTExZjFiZTM3NjhiLi44ZDkxZjIxNWQyN2M5MGExM2YyYmY2ZWM0MWIy
MTk4ZTA4MjZiNDY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcApAQCAtMzIxLDcgKzMyMSw3IEBAIHN0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2so
djg6OkxvY2FsPHY4CiBzdGF0aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHYg
PSB0b0ludDY0KHZhbHVlKTsKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdiA9IHRvVUludDY0KHZh
bHVlKTsKICAgICBpbXAtPnNldFVuc2lnbmVkTG9uZ0xvbmdBdHRyKHYpOwogICAgIHJldHVybjsK
IH0KQEAgLTEwNTcsNiArMTA1NywxMDIgQEAgc3RhdGljIHZvaWQgd2l0aFNjcmlwdEFyZ3VtZW50
c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWwKICAgICBU
ZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0
ZUF0dHJTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOwogfQogCitzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9i
aiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4g
djhJbnRlZ2VyKGltcC0+ZW5mb3JjZWRSYW5nZUxvbmdBdHRyKCksIGluZm8uR2V0SXNvbGF0ZSgp
KTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0F0
dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjpl
bmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMg
dm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5m
byYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8u
SG9sZGVyKCkpOworICAgIFRZUEVDSEVDS19WT0lEKGludCwgdiwgdG9JbnQzMih2YWx1ZSwgRW5m
b3JjZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2Vk
UmFuZ2VMb25nQXR0cih2KTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2Vk
UmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGlu
Zm8pCit7CisgICAgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJT
ZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6
OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0
T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVy
biB2OFVuc2lnbmVkSW50ZWdlcihpbXAtPmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKCks
IGluZm8uR2V0SXNvbGF0ZSgpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBy
ZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0
ckdldHRlcihuYW1lLCBpbmZvKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2ln
bmVkTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAg
ICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAg
IFRZUEVDSEVDS19WT0lEKHVuc2lnbmVkLCB2LCB0b1VJbnQzMih2YWx1ZSwgRW5mb3JjZVJhbmdl
LCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VVbnNp
Z25lZExvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRS
YW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJp
bmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWdu
ZWRMb25nQXR0ckF0dHJTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOworfQorCitzdGF0aWMgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQor
eworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7
CisgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3VibGU+KGltcC0+ZW5m
b3JjZWRSYW5nZUxvbmdMb25nQXR0cigpKSk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAg
ICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRy
R2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0xv
bmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVz
dE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBUWVBF
Q0hFQ0tfVk9JRChsb25nIGxvbmcsIHYsIHRvSW50NjQodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2sp
LCBpbmZvLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0xvbmdB
dHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdM
b25nQXR0ckF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6
OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7
CisgICAgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0
dGVyKG5hbWUsIHZhbHVlLCBpbmZvKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRl
c3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0
dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3VibGU+KGltcC0+ZW5mb3JjZWRSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmdBdHRyKCkpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2so
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
Cit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRM
b25nTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBlbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29y
SW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGlu
Zm8uSG9sZGVyKCkpOworICAgIFRZUEVDSEVDS19WT0lEKHVuc2lnbmVkIGxvbmcgbG9uZywgdiwg
dG9VSW50NjQodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xhdGUoKSk7Cisg
ICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIodik7CisgICAgcmV0
dXJuOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJB
dHRyU2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2
ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRl
c3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0
dGVyKG5hbWUsIHZhbHVlLCBpbmZvKTsKK30KKwogI2lmIEVOQUJMRShDb25kaXRpb24xKQogCiBz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpA
QCAtMjE3Nyw2ICsyMjczLDY2IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gc3RhdGlj
TWV0aG9kV2l0aENhbGxiYWNrQXJnTWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6CiAgICAgcmV0dXJu
IFRlc3RPYmpWOEludGVybmFsOjpzdGF0aWNNZXRob2RXaXRoQ2FsbGJhY2tBcmdNZXRob2QoYXJn
cyk7CiB9CiAKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VS
YW5nZUludDMyTWV0aG9kKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFy
Z3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNF
cnJvcihhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKGlu
dCwgdmFsdWUsIHRvSW50MzIoYXJnc1swXSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNv
bGF0ZSgpKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMih2YWx1ZSk7Cisg
ICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyTWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJncykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VJbnQzMk1ldGhvZChhcmdzKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyTWV0aG9kKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICBy
ZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7Cisg
ICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAg
ICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKHVuc2lnbmVkLCB2YWx1ZSwgdG9VSW50MzIoYXJn
c1swXSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPm1l
dGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzIodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5l
ZCgpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNl
UmFuZ2VVSW50MzJNZXRob2RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQorewor
ICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQz
Mk1ldGhvZChhcmdzKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RX
aXRoRW5mb3JjZVJhbmdlSW50NjRNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sK
KyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3Vn
aEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBW
OFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9U
WVBFQ0hFQ0sobG9uZyBsb25nLCB2YWx1ZSwgdG9JbnQ2NChhcmdzWzBdLCBFbmZvcmNlUmFuZ2Us
IG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5n
ZUludDY0KHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRNZXRob2RDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJ
bnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kKGFyZ3MpOworfQorCitz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRN
ZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgo
KSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3Mu
R2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFy
Z3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodW5zaWduZWQgbG9u
ZyBsb25nLCB2YWx1ZSwgdG9VSW50NjQoYXJnc1swXSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3Mu
R2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPm1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjQodmFs
dWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRNZXRob2RDYWxsYmFjayhjb25z
dCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6
bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZChhcmdzKTsKK30KKwogI2lmIEVOQUJM
RShDb25kaXRpb24xKQogCiBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGNvbmRpdGlvbmFs
TWV0aG9kMU1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQpAQCAtMjg4Miw2ICszMDM4
LDE0IEBAIHN0YXRpYyBjb25zdCBWOERPTUNvbmZpZ3VyYXRpb246OkJhdGNoZWRBdHRyaWJ1dGUg
VjhUZXN0T2JqQXR0cnNbXSA9IHsKICAgICB7IndpdGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5k
U2NyaXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRlIiwgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhT
Y3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRlQXR0
ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGVBdHRyU2V0dGVyQ2FsbGJhY2ss
IDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZB
VUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyog
b24gaW5zdGFuY2UgKi99LAogICAgIC8vIEF0dHJpYnV0ZSAnd2l0aFNjcmlwdEFyZ3VtZW50c0Fu
ZENhbGxTdGFja0F0dHJpYnV0ZScgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdDYWxsV2l0
aCcpCiAgICAgeyJ3aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlIiwgVGVz
dE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVB
dHRyR2V0dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0QXJndW1lbnRz
QW5kQ2FsbFN0YWNrQXR0cmlidXRlQXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8s
IHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0
PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwK
KyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1
dGUnIEV4dEF0dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZUxvbmdBdHRy
IiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXJDYWxs
YmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXJD
YWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4o
djg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25l
KSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdlbmZvcmNlZFJhbmdl
VW5zaWduZWRMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdFbmZvcmNlUmFu
Z2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRl
cm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2ssIFRl
c3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJTZXR0ZXJD
YWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4o
djg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25l
KSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdlbmZvcmNlZFJhbmdl
TG9uZ0xvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScp
CisgICAgeyJlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVu
Zm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVy
bmFsOjplbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5v
IGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0
YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3Rh
bmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25n
QXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsi
ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVu
Zm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9i
alY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXJD
YWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4o
djg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25l
KSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAgICAgLy8g
QXR0cmlidXRlICdjb25kaXRpb25hbEF0dHIxJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjog
J0NvbmRpdGlvbmFsJykKICAgICB7ImNvbmRpdGlvbmFsQXR0cjEiLCBUZXN0T2JqVjhJbnRlcm5h
bDo6Y29uZGl0aW9uYWxBdHRyMUF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6
OmNvbmRpdGlvbmFsQXR0cjFBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3Rh
dGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6
OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LApAQCAt
Mjk2Niw2ICszMTMwLDEwIEBAIHN0YXRpYyBjb25zdCBWOERPTUNvbmZpZ3VyYXRpb246OkJhdGNo
ZWRNZXRob2QgVjhUZXN0T2JqTWV0aG9kc1tdID0gewogICAgIHsibWV0aG9kV2l0aENhbGxiYWNr
QXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhDYWxsYmFja0FyZ01ldGhvZENhbGxi
YWNrfSwKICAgICB7Im1ldGhvZFdpdGhOb25DYWxsYmFja0FyZ0FuZENhbGxiYWNrQXJnIiwgVGVz
dE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhOb25DYWxsYmFja0FyZ0FuZENhbGxiYWNrQXJnTWV0
aG9kQ2FsbGJhY2t9LAogICAgIHsibWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxBcmciLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aENhbGxiYWNrQW5kT3B0aW9uYWxBcmdNZXRob2RD
YWxsYmFja30sCisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIiLCBUZXN0T2JqVjhJ
bnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyTWV0aG9kQ2FsbGJhY2t9LAorICAg
IHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMiIsIFRlc3RPYmpWOEludGVybmFsOjptZXRo
b2RXaXRoRW5mb3JjZVJhbmdlVUludDMyTWV0aG9kQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0
aEVuZm9yY2VSYW5nZUludDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNl
UmFuZ2VJbnQ2NE1ldGhvZENhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VV
SW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1l
dGhvZENhbGxiYWNrfSwKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKICAgICB7ImNvbmRpdGlvbmFs
TWV0aG9kMSIsIFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbE1ldGhvZDFNZXRob2RDYWxs
YmFja30sCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwCmluZGV4IDYxMjlkMTFkNzEzZjJkYTk0
N2VlOGNjYWEwMjFmOWI1MTI3NTMxMjcuLjBmYWQ4NGUzOWFmYmFlZTAyZjlmN2EwNDNlYzZhOTcy
ZDI3YjQ4MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcApAQCAtOTQsNyArOTQsNyBAQCBzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxi
YWNrKHY4OjpMb2NhbDx2OAogc3RhdGljIHZvaWQgdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0VHlwZWRlZnMqIGlt
cCA9IFY4VGVzdFR5cGVkZWZzOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICB1bnNpZ25l
ZCBsb25nIGxvbmcgdiA9IHRvSW50NjQodmFsdWUpOworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2
ID0gdG9VSW50NjQodmFsdWUpOwogICAgIGltcC0+c2V0VW5zaWduZWRMb25nTG9uZ0F0dHIodik7
CiAgICAgcmV0dXJuOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
VjhCaW5kaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAK
aW5kZXggYzUwNTNiYTljYzlmYzVlYjNkZTdjNmFjODcxOWZhNGYxY2EyNTdiNC4uMGJkYjZiMDg4
YWIxZmE4ODFjMTY4OGNjODg0OGY5OTMzZWZiYmY5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOEJpbmRpbmcuY3BwCkBAIC0xMDMsNDAgKzEwMyw0OCBAQCBQYXNzUmVmUHRyPE5vZGVG
aWx0ZXI+IHRvTm9kZUZpbHRlcih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY2FsbGJhY2spCiAgICAg
cmV0dXJuIE5vZGVGaWx0ZXI6OmNyZWF0ZShWOE5vZGVGaWx0ZXJDb25kaXRpb246OmNyZWF0ZShj
YWxsYmFjaykpOwogfQogCi1pbnQgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUs
IGJvb2wmIG9rKQorY29uc3QgaW50MzJfdCBrTWluSW50MzIgPSAtMHg4MDAwMDAwMDsKK2NvbnN0
IGludDMyX3Qga01heEludDMyID0gMHg3ZmZmZmZmZjsKK2NvbnN0IHVpbnQzMl90IGtNYXhVSW50
MzIgPSAweGZmZmZmZmZmOworCitpbnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9v
bCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwotICAgIAorCiAgICAgLy8gRmFzdCBjYXNlLiBUaGUg
dmFsdWUgaXMgYWxyZWFkeSBhIDMyLWJpdCBpbnRlZ2VyLgogICAgIGlmICh2YWx1ZS0+SXNJbnQz
MigpKQogICAgICAgICByZXR1cm4gdmFsdWUtPkludDMyVmFsdWUoKTsKLSAgICAKKwogICAgIC8v
IENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyPwogICAgIHY4OjpMb2NhbDx2
ODo6TnVtYmVyPiBudW1iZXJPYmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIoKTsKICAgICBpZiAobnVt
YmVyT2JqZWN0LklzRW1wdHkoKSkgewogICAgICAgICBvayA9IGZhbHNlOwogICAgICAgICByZXR1
cm4gMDsKICAgICB9Ci0gICAgCisKKyAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFu
Z2UpIHsKKyAgICAgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisgICAgICAg
IGlmIChzdGQ6OmlzbmFuKHgpIHx8IHN0ZDo6aXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0g
ZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHgg
PCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IGtNaW5JbnQz
MiB8fCB4ID4ga01heEludDMyKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsKKyAgICB9CisKICAg
ICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZpbml0eT8KICAg
ICBkb3VibGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0gICAgaWYgKHN0
ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKSB7Ci0gICAg
ICAgIG9rID0gZmFsc2U7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBD
YW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIDMyLWJpdCBpbnRlZ2VyPwotICAgIHY4OjpM
b2NhbDx2ODo6SW50MzI+IGludFZhbHVlID0gdmFsdWUtPlRvSW50MzIoKTsKLSAgICBpZiAoaW50
VmFsdWUuSXNFbXB0eSgpKSB7Ci0gICAgICAgIG9rID0gZmFsc2U7CisgICAgaWYgKHN0ZDo6aXNu
YW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKQogICAgICAgICByZXR1
cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgLy8gUmV0dXJuIHRoZSByZXN1bHQgb2YgdGhlIGludDMy
IGNvbnZlcnNpb24uCi0gICAgcmV0dXJuIGludFZhbHVlLT5WYWx1ZSgpOworICAgIHJldHVybiBu
dW1iZXJPYmplY3QtPkludDMyVmFsdWUoKTsKIH0KLSAgICAKLXVpbnQzMl90IHRvVUludDMyKHY4
OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCisKK3VpbnQzMl90IHRvVUludDMy
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0
aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQogewogICAgIG9rID0gdHJ1ZTsKIApAQCAtMTQ0
LDEwICsxNTIsMTYgQEAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZh
bHVlLCBib29sJiBvaykKICAgICBpZiAodmFsdWUtPklzVWludDMyKCkpCiAgICAgICAgIHJldHVy
biB2YWx1ZS0+VWludDMyVmFsdWUoKTsKIAorICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlz
IGEgMzItYml0IHNpZ25lZCBpbnRlZ2VyIC0gcG9zc2libHkgcG9zaXRpdmU/CiAgICAgaWYgKHZh
bHVlLT5Jc0ludDMyKCkpIHsKICAgICAgICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+SW50MzJW
YWx1ZSgpOwogICAgICAgICBpZiAocmVzdWx0ID49IDApCiAgICAgICAgICAgICByZXR1cm4gcmVz
dWx0OworICAgICAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAg
ICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAg
ICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KIAogICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29u
dmVydGVkIHRvIGEgbnVtYmVyPwpAQCAtMTU3LDIxICsxNzEsMTEwIEBAIHVpbnQzMl90IHRvVUlu
dDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCiAgICAgICAgIHJldHVy
biAwOwogICAgIH0KIAorICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgewor
ICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKyAgICAgICAgaWYgKHN0
ZDo6aXNuYW4oeCkgfHwgc3RkOjppc2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsK
KyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAt
MSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4ga01heFVJ
bnQzMikgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOwor
ICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQorCiAgICAgLy8gRG9lcyB0aGUg
dmFsdWUgY29udmVydCB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHk/CiAgICAgZG91YmxlIG51bWJl
clZhbHVlID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOwotICAgIGlmIChzdGQ6OmlzbmFuKG51bWJl
clZhbHVlKSB8fCBzdGQ6OmlzaW5mKG51bWJlclZhbHVlKSkgeworICAgIGlmIChzdGQ6OmlzbmFu
KG51bWJlclZhbHVlKSB8fCBzdGQ6OmlzaW5mKG51bWJlclZhbHVlKSkKKyAgICAgICAgcmV0dXJu
IDA7CisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+VWludDMyVmFsdWUoKTsKK30KKworaW50NjRf
dCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25D
b25maWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1ZTsK
KworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IGludGVnZXIuCisgICAg
aWYgKHZhbHVlLT5Jc0ludDMyKCkpCisgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1ZSgp
OworCisgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CisgICAg
djg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOwor
ICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAg
ICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVy
dGVkIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpVaW50
MzI+IHVpbnRWYWx1ZSA9IHZhbHVlLT5Ub1VpbnQzMigpOwotICAgIGlmICh1aW50VmFsdWUuSXNF
bXB0eSgpKSB7CisgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisKKyAgICBp
ZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgaWYgKGlzbmFuKHgp
IHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihm
YWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAtKGtKU01heEludGVnZXIgLSAxKSB8fCB4ID4gKGtK
U01heEludGVnZXIgLSAxKSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8v
IE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQu
CisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgs
IGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2VyOworfQorCit1aW50NjRfdCB0b1VJbnQ2NCh2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlv
biBjb25maWd1cmF0aW9uLCBib29sJiBvaykKK3sKKyAgICBvayA9IHRydWU7CisKKyAgICAvLyBG
YXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLgorICAgIGlm
ICh2YWx1ZS0+SXNVaW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgp
OworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgaW50ZWdlci4KKyAg
ICBpZiAodmFsdWUtPklzSW50MzIoKSkgeworICAgICAgICBpbnQzMl90IHJlc3VsdCA9IHZhbHVl
LT5JbnQzMlZhbHVlKCk7CisgICAgICAgIGlmIChyZXN1bHQgPj0gMCkKKyAgICAgICAgICAgIHJl
dHVybiByZXN1bHQ7CisgICAgICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkg
eworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAg
ICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAgLy8gQ2FuIHRoZSB2YWx1
ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CisgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51
bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOworICAgIGlmIChudW1iZXJPYmplY3QuSXNF
bXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0K
IAotICAgIHJldHVybiB1aW50VmFsdWUtPlZhbHVlKCk7CisgICAgZG91YmxlIHggPSBudW1iZXJP
YmplY3QtPlZhbHVlKCk7CisKKyAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2Up
IHsKKyAgICAgICAgaWYgKGlzbmFuKHgpIHx8IGlzaW5mKHgpKSB7CisgICAgICAgICAgICBvayA9
IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh4
IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHggPCAwIHx8IHgg
PiAoa0pTTWF4SW50ZWdlciAtIDEpKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQorCisg
ICAgLy8gTmFOcyBhbmQgKy8tSW5maW5pdHkgc2hvdWxkIGJlIDAsIG90aGVyd2lzZSBtb2R1bG8g
Ml42NC4KKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgaW50ZWdlcjsKKyAgICBkb3VibGVUb0ludGVn
ZXIoeCwgaW50ZWdlcik7CisgICAgcmV0dXJuIGludGVnZXI7CiB9CiAKIHY4OjpQZXJzaXN0ZW50
PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBjcmVhdGVSYXdUZW1wbGF0ZSh2ODo6SXNvbGF0ZSogaXNv
bGF0ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmgKaW5kZXggYmMxMTI1ZTcz
YTA5YTYwNzY5MDAwNTYxMzFhMTM1YzJiMDFhMzhiYS4uMDQ0YzU0ZDc0ODRhMzliNTBmZWJiNzBk
MDUyZGVhYTY2MzA5NTJhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
VjhCaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmgK
QEAgLTU2LDYgKzU2LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIFdvcmxkQ29u
dGV4dEhhbmRsZTsKIAogICAgIGNvbnN0IGludCBrTWF4UmVjdXJzaW9uRGVwdGggPSAyMjsKKyAg
ICBjb25zdCBsb25nIGxvbmcga0pTTWF4SW50ZWdlciA9IDB4MjAwMDAwMDAwMDAwMDBMTDsKIAog
ICAgIC8vIFNjaGVkdWxlIGEgRE9NIGV4Y2VwdGlvbiB0byBiZSB0aHJvd24sIGlmIHRoZSBleGNl
cHRpb24gY29kZSBpcyBkaWZmZXJlbnQKICAgICAvLyBmcm9tIHplcm8uCkBAIC0yNDMsMzYgKzI0
NCw2NiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
djhBcnJheShQYXNzUmVmUHRyPERPTVN0cmluZ0xpc3Q+LCB2ODo6SXNvbGF0ZSopOwogCi0gICAg
Ly8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZh
aWxzIGlmIHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdl
ciBvciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgaW50IHRvSW50MzIo
djg6OkhhbmRsZTx2ODo6VmFsdWU+LCBib29sJiBvayk7CisgICAgLy8gQ29udmVyc2lvbiBmbGFn
cywgdXNlZCBpbiB0b0ludFhYL3RvVUludFhYLgorICAgIGVudW0gSW50ZWdlckNvbnZlcnNpb25D
b25maWd1cmF0aW9uIHsKKyAgICAgICAgTm9ybWFsQ29udmVyc2lvbiwKKyAgICAgICAgRW5mb3Jj
ZVJhbmdlLAorICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IENsYW1wCisgICAgfTsKKworICAg
IC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCBzaWduZWQgaW50ZWdlci4gVGhlIGNvbnZl
cnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBh
IG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8v
d3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLWxvbmcKKyAgICBpbnQzMl90IHRvSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9r
KTsKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1
ZSwgYm9vbCYgb2spIHsgcmV0dXJuIHRvSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9r
KTsgfQogCiAgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IGludGVnZXIgYXNzdW1p
bmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCi0gICAgaW5saW5lIGludCB0b0ludDMyKHY4
OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMyKHY4
OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGJvb2wgb2s7Ci0gICAg
ICAgIHJldHVybiB0b0ludDMyKHZhbHVlLCBvayk7CisgICAgICAgIHJldHVybiB0b0ludDMyKHZh
bHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CiAgICAgfQogCiAgICAgLy8gQ29udmVydCBhIHZh
bHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlm
IHRoZQotICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gdW5zaWduZWQgaW50
ZWdlciBvciBjb252ZXJ0cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgdWludDMyX3Qg
dG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+LCBib29sJiBvayk7CisgICAgLy8gdmFsdWUg
Y2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVy
IFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLXVuc2lnbmVk
LWxvbmcKKyAgICB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVn
ZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiwgYm9vbCYgb2spOworICAgIGlubGluZSB1aW50MzJf
dCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVy
biB0b1VJbnQzMih2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOyB9CiAKICAgICAvLyBDb252
ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29u
dmVyc2lvbiBjYW5ub3QgZmFpbC4KICAgICBpbmxpbmUgdWludDMyX3QgdG9VSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKICAgICAgICAgYm9vbCBvazsKLSAgICAgICAg
cmV0dXJuIHRvVUludDMyKHZhbHVlLCBvayk7CisgICAgICAgIHJldHVybiB0b1VJbnQzMih2YWx1
ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwogICAgIH0KIAotICAgIGlubGluZSBmbG9hdCB0b0Zs
b2F0KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlKQorICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0
byBhIDY0LWJpdCBzaWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisg
ICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2Ug
dmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwv
I2VzLWxvbmctbG9uZworICAgIGludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4s
IEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiwgYm9vbCYgb2spOworCisgICAgLy8gQ29u
dmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNpb24g
Y2Fubm90IGZhaWwuCisgICAgaW5saW5lIGludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gdmFsdWUpCiAgICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZh
bHVlLT5OdW1iZXJWYWx1ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAgICAgICAgcmV0dXJuIHRv
SW50NjQodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsKICAgICB9CiAKLSAgICBpbmxpbmUg
bG9uZyBsb25nIHRvSW50NjQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29u
dmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9u
IGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1i
ZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53
My5vcmcvVFIvV2ViSURMLyNlcy11bnNpZ25lZC1sb25nLWxvbmcKKyAgICB1aW50NjRfdCB0b1VJ
bnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlv
biwgYm9vbCYgb2spOworCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHVuc2ln
bmVkIGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCisgICAgaW5s
aW5lIHVpbnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7
Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxsb25nIGxvbmc+KHZhbHVlLT5JbnRlZ2VyVmFs
dWUoKSk7CisgICAgICAgIGJvb2wgb2s7CisgICAgICAgIHJldHVybiB0b1VJbnQ2NCh2YWx1ZSwg
Tm9ybWFsQ29udmVyc2lvbiwgb2spOworICAgIH0KKworICAgIGlubGluZSBmbG9hdCB0b0Zsb2F0
KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CiAgICAgfQogCiAgICAgdGVtcGxh
dGU8Y2xhc3MgVD4gc3RydWN0IE5hdGl2ZVZhbHVlVHJhaXRzOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaAppbmRleCA2ZmViNTNlMWQ2N2IwNDUyYmI2NzM5
MDVjY2Q3NmRiNDczMWEwY2M4Li5kOGQ4YTRlNzlmYTZmNmE0MGIzYzI5OGFmZWIyMzFhM2EzYzlm
ODBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNy
b3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaApA
QCAtMzMsNiArMzMsMTcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjZGVmaW5lIFRZUEVD
SEVDS19WT0lEKHR5cGUsIHZhciwgdmFsdWUsIGlzb2xhdGUpIFwKKyAgICB0eXBlIHZhcjsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGJvb2wgb2sgPSB0cnVlOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgdmFyID0gKHZhbHVlKTsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkgeyAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB0aHJvd1R5cGVFcnJvcigwLCBpc29sYXRl
KTsgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybjsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgfQorCiAjZGVmaW5lIFY4VFJZQ0FUQ0godHlwZSwgdmFyLCB2YWx1ZSkgXAog
ICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIHsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtNDIsNiArNTMsMjAgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgICAgICAgICAgcmV0dXJuIGJsb2NrLlJlVGhyb3coKTsgICAgICAg
XAogICAgIH0KIAorI2RlZmluZSBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKHR5cGUsIHZhciwg
dmFsdWUsIGlzb2xhdGUpIFwKKyAgICB0eXBlIHZhcjsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBib29sIG9rID0gdHJ1ZTsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgeyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAg
ICB2ODo6VHJ5Q2F0Y2ggYmxvY2s7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgICAgdmFyID0gKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgICAgIGlmIChibG9jay5IYXNDYXVnaHQoKSkgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrLlJlVGhyb3coKTsgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKFVOTElLRUxZKCFvaykpICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICByZXR1cm4gdGhyb3dU
eXBlRXJyb3IoMCwgaXNvbGF0ZSk7ICAgICAgICAgICAgICAgXAorICAgIH0KKwogI2RlZmluZSBW
OFRSWUNBVENIX0ZPUl9WOFNUUklOR1JFU09VUkNFKHR5cGUsIHZhciwgdmFsdWUpIFwKICAgICB0
eXBlIHZhcih2YWx1ZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiAgICAgaWYgKCF2YXIucHJlcGFyZSgpKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29u
dmVyc2lvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKaW5k
ZXggMjRiMzNkZDE4MmVlZGM4MzFmNmE1YTUxOTE5Yzg0ZDQzZWMwMWRkNy4uOGRlMTAyZjJhMjQ3
N2RlMTAwOTU4MzYzODg2NzJkYTU4MTBjODhmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
dGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5
cGVDb252ZXJzaW9ucy5oCkBAIC0zNiwyNSArMzYsMzMgQEAgY2xhc3MgVHlwZUNvbnZlcnNpb25z
IDogcHVibGljIFJlZkNvdW50ZWQ8VHlwZUNvbnZlcnNpb25zPiB7CiBwdWJsaWM6CiAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8VHlwZUNvbnZlcnNpb25zPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJl
ZihuZXcgVHlwZUNvbnZlcnNpb25zKCkpOyB9CiAKLSAgICBsb25nIHRlc3RMb25nKCkgeyByZXR1
cm4gbV90ZXN0TG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX3Rl
c3RMb25nID0gdmFsdWU7IH0KLSAgICB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7
IHJldHVybiBtX3Rlc3RVbnNpZ25lZExvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RVbnNpZ25lZExv
bmcodW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RVbnNpZ25lZExvbmcgPSB2YWx1ZTsgfQor
ICAgIGxvbmcgdGVzdExvbmcoKSB7IHJldHVybiBtX2xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RM
b25nKGxvbmcgdmFsdWUpIHsgbV9sb25nID0gdmFsdWU7IH0KKyAgICBsb25nIHRlc3RFbmZvcmNl
UmFuZ2VMb25nKCkgeyByZXR1cm4gbV9sb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJh
bmdlTG9uZyhsb25nIHZhbHVlKSB7IG1fbG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9u
ZyB0ZXN0VW5zaWduZWRMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmc7IH0KKyAgICB2b2lk
IHNldFRlc3RVbnNpZ25lZExvbmcodW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9u
ZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcodW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZyA9
IHZhbHVlOyB9CiAKLSAgICBsb25nIGxvbmcgdGVzdExvbmdMb25nKCkgeyByZXR1cm4gbV90ZXN0
TG9uZ0xvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RMb25nTG9uZyhsb25nIGxvbmcgdmFsdWUpIHsg
bV90ZXN0TG9uZ0xvbmcgPSB2YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5z
aWduZWRMb25nTG9uZygpIHsgcmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmc7IH0KLSAgICB2
b2lkIHNldFRlc3RVbnNpZ25lZExvbmdMb25nKHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBt
X3Rlc3RVbnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIGxvbmcgdGVzdExvbmdM
b25nKCkgeyByZXR1cm4gbV9sb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdExvbmdMb25nKGxv
bmcgbG9uZyB2YWx1ZSkgeyBtX2xvbmdMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIGxvbmcgdGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nKCkgeyByZXR1cm4gbV9sb25nTG9uZzsgfQorICAgIHZvaWQg
c2V0VGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBtX2xvbmdMb25n
ID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmco
KSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RVbnNpZ25l
ZExvbmdMb25nKHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZ0xvbmcg
PSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQorICAgIHZvaWQgc2V0
VGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVl
KSB7IG1fdW5zaWduZWRMb25nTG9uZyA9IHZhbHVlOyB9CiAKIHByaXZhdGU6CiAgICAgVHlwZUNv
bnZlcnNpb25zKCkKICAgICB7CiAgICAgfQogCi0gICAgbG9uZyBtX3Rlc3RMb25nOwotICAgIHVu
c2lnbmVkIGxvbmcgbV90ZXN0VW5zaWduZWRMb25nOwotICAgIGxvbmcgbG9uZyBtX3Rlc3RMb25n
TG9uZzsKLSAgICB1bnNpZ25lZCBsb25nIGxvbmcgbV90ZXN0VW5zaWduZWRMb25nTG9uZzsKKyAg
ICBsb25nIG1fbG9uZzsKKyAgICB1bnNpZ25lZCBsb25nIG1fdW5zaWduZWRMb25nOworICAgIGxv
bmcgbG9uZyBtX2xvbmdMb25nOworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Vuc2lnbmVkTG9u
Z0xvbmc7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL1R5cGVDb252ZXJzaW9ucy5pZGwKaW5kZXggMzY3ZDFmN2VjNDg0MmU0MWY2YWFhMzEwYWIy
MmE5YmM1MDFjZjg0Zi4uYjI3YjE1OGQ3NjMzYjMzNDU2MTZlZTViYzdmZTMyYzZjZTU1YTJkNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbApAQCAtMjgsOCAr
MjgsMTIgQEAKICAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBUeXBl
Q29udmVyc2lvbnMgewogICAgIGF0dHJpYnV0ZSBsb25nIHRlc3RMb25nOworICAgIGF0dHJpYnV0
ZSBbRW5mb3JjZVJhbmdlXSBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nOwogICAgIGF0dHJpYnV0
ZSB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNl
UmFuZ2VdIHVuc2lnbmVkIGxvbmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZzsKIAogICAg
IGF0dHJpYnV0ZSBsb25nIGxvbmcgdGVzdExvbmdMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3Jj
ZVJhbmdlXSBsb25nIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nOwogICAgIGF0dHJpYnV0
ZSB1bnNpZ25lZCBsb25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmc7CisgICAgYXR0cmlidXRl
IFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZzsKIH07CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNjUwYTQyMTA0OWY4OGIyOTE5ZmZkYWIxYTU0MWU1ZjQ4
MDFmNmE5Yy4uOGYzZGYwMmJjYTNkMThlZDQ0YWRjOGViM2VkOTk0NTM5NWYzMTdkYyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI5IEBACisyMDEzLTAzLTA4ICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJbXBsZW1lbnQgRW5mb3JjZVJhbmdlIElE
TCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJzaW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3OTgKKworICAgICAgICBSZXZpZXdlZCBi
eSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgU29tZSBvZiB0aGUgdGVzdHMgZm9yIEhUTUxPcHRp
b25zQ29sbGVjdGlvbi5hZGQoKSBhc3N1bWVkIGl0IHNob3VsZCB0aHJvdyBmb3IKKyAgICAgICAg
SW5maW5pdGllcyBhbmQgTmFOcywgYnV0IHRoaXMgaXMgbm90IHdoYXQgdGhlIERPTStXZWJJREwg
c3BlY3Mgc2F5LiBBIHNwZWMgY2hhbmdlCisgICAgICAgIHdhcyByZWplY3RlZCAtIEZpcmVmb3gg
aGFzIHVwZGF0ZWQgdG8gbm90IHRocm93IGhlcmUuIFRoaXMgdXBkYXRlcyB0aGUgdGVzdHMvZXhw
ZWN0YXRpb25zCisgICAgICAgIHNvIHRoYXQgVjggcGFzc2VzLiBKU0MgZXhwZWN0YXRpb25zIGFy
ZSBGQUlMIGluIGEgZmV3IHBsYWNlcyBzaW5jZSBpdCBzdGlsbAorICAgICAgICBpbmNvcnJlY3Rs
eSB0aHJvd3Mgb24gSW5maW5pdHkvTmFOIC0+IGludDMyIGNvbnZlcnNpb24gYW5kIGRvZXMgbm90
IGltcGxlbWVudCBFbmZvcmNlUmFuZ2UKKworICAgICAgICAqIGZhc3QvZG9tL25vbi1udW1lcmlj
LXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qv
ZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpz
OgorICAgICAgICAobm9uTnVtZXJpY1BvbGljeSk6CisgICAgICAgICogZmFzdC9qcy9zY3JpcHQt
dGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzOgorICAgICAgICAqIGZhc3QvanMvc2VsZWN0LW9w
dGlvbnMtYWRkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2pzL3dlYmlkbC10eXBlLW1h
cHBpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGlu
Zy5odG1sOgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvc2VsZWN0LW9wdGlv
bnMtYWRkLWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9qcy9zZWxl
Y3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVt
L2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJh
ZC1wYXJhbWV0ZXJzLmpzOgorICAgICAgICAoZGVsZXRlU3VjY2Vzcyk6CisKIDIwMTMtMDMtMDgg
IFpvbHRhbiBBcnZhaSAgPHphcnZhaUBpbmYudS1zemVnZWQuaHU+CiAKICAgICAgICAgW1F0XSBV
bnJldmlld2VkIGdhcmRlbmluZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL25v
bi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy1leHBl
Y3RlZC50eHQKaW5kZXggOTdiZjFlMDY3MTIzN2U2MDYzM2M2NmYwYzEzODhjMTY3NjE0MjI4Zi4u
NDcxM2M0MjdlZjBkNGI3YWZkNTIzY2U3ZDE5ODk3OTdkZmI3ZWZlYyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVz
LW51bWVyaWMtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKQEAgLTI4LDcgKzI4LDcgQEAgUEFTUyBu
b25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCA9IHgnKSBpcyAnYW55IHR5
cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuaW1hZ2VzLml0ZW0o
eCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKS5zZXRTZWxlY3Rpb25SYW5nZSh4LCAwKScpIGlzICdh
bnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJpbnB1dCIpLnNldFNlbGVjdGlvblJhbmdlKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFs
bG93ZWQnCi1QQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlv
bigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSwgeCknKSBpcyAnbnVtYmVy
IG9yIG51bGwgYWxsb3dlZCAob3Igb21pdHRlZCwgYnV0IG5vdCBpbmZpbml0ZSknCitGQUlMIG5v
bk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSwgeCknKSBzaG91bGQgYmUgYW55IHR5cGUgYWxsb3dl
ZC4gV2FzIG1peGVkLgogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MT3B0aW9uc0Nv
bGxlY3Rpb24oKS5yZW1vdmUoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVt
ZXJpY1BvbGljeSgnY3JlYXRlSFRNTFNlbGVjdEVsZW1lbnQoKS5yZW1vdmUoeCknKSBpcyAnYW55
IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFNlbGVjdEVs
ZW1lbnQoKS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMt
cGFyYW1ldGVycy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVt
ZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzCmluZGV4IDJlNzAwNmM1YTlmMmQ0OTIy
MWViZjM0Mjk5NDAzYTE4ZjBiZjlhNmQuLjU4YmVkMTY4MDNmZTc4YTE1NzgzYzcyMGFmYjQ1NDNl
ZjhlM2Y4NTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9u
b24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLmpzCkBAIC02NCw3ICs2NCw3IEBAIGZ1bmN0aW9uIG5vbk51bWVyaWNQb2xpY3kodGVtcGxh
dGUpCiAgICAgdHJ5IHsKICAgICAgICAgZXZhbCh0ZW1wbGF0ZSk7CiAgICAgfSBjYXRjaCAoZSkg
ewotICAgICAgICBOYU5BbGxvd2VkID0gMDsKKyAgICAgICAgbmFuQWxsb3dlZCA9IDA7CiAgICAg
fQogCiAgICAgdmFyIG9taXRBbGxvd2VkID0gLTE7IC8vIG1lYW5zICJub3QgYXBwbGljYWJsZSIK
QEAgLTI0NCw3ICsyNDQsNyBAQCBzaG91bGRCZSgibm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudChcImlucHV0XCIpLnNldFNlbGVjdGlvblJhbmdlKAogCiAvLyBIVE1MT3B0
aW9uc0NvbGxlY3Rpb24KIAotc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxP
cHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwib3B0aW9uXCIp
LCB4KScpIiwgIidudW1iZXIgb3IgbnVsbCBhbGxvd2VkIChvciBvbWl0dGVkLCBidXQgbm90IGlu
ZmluaXRlKSciKTsKK3Nob3VsZEJlKCJub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MT3B0aW9u
c0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcIm9wdGlvblwiKSwgeCkn
KSIsICInYW55IHR5cGUgYWxsb3dlZCciKTsKIHNob3VsZEJlKCJub25OdW1lcmljUG9saWN5KCdj
cmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5yZW1vdmUoeCknKSIsICInYW55IHR5cGUgYWxs
b3dlZCciKTsKIAogLy8gSFRNTFNlbGVjdEVsZW1lbnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvanMvc2NyaXB0LXRlc3RzL3NlbGVjdC1vcHRpb25zLWFkZC5qcyBiL0xheW91dFRlc3Rz
L2Zhc3QvanMvc2NyaXB0LXRlc3RzL3NlbGVjdC1vcHRpb25zLWFkZC5qcwppbmRleCBhMzU4Y2Vh
N2ViYzYwZTVkNWY5NTYxYmY4MTZmNmU0NDAxZGI3ZTE4Li5hYWNmOTRkNjExM2JjNzA3OGViMjA4
Njk4NTdhMmVmYjI4YjJmZGUyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3Njcmlw
dC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9z
Y3JpcHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzCkBAIC0yNDQsODQgKzI0NCw4NCBAQCBk
ZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjkgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCAtSW5maW5pdHki
KTsKIG9wdGlvbjIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJPUFRJT04iKTsKLXNob3VsZFRo
cm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIC0xLzApIik7Ci1zaG91bGRCZSgic2Vs
ZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZElu
ZGV4IiwgIjEiKTsKK3Nob3VsZE5vdFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIs
IC0xLzApIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI4Iik7CitzaG91
bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjIiKTsKIGRlYnVnKCIiKTsKIAogZGVidWco
IjIuMTAgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBOYU4iKTsKIG9wdGlvbjIgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJPUFRJT04iKTsKLXNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRk
KG9wdGlvbjIsIDAvMCkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjci
KTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkTm90VGhy
b3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMC8wKSIpOworc2hvdWxkQmUoInNlbGVj
dDIub3B0aW9ucy5sZW5ndGgiLCAiOSIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRl
eCIsICIzIik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjExIEFkZCBhbiBPcHRpb24gYXQgaW5k
ZXggSW5maW5pdHkiKTsKIG9wdGlvbjIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJPUFRJT04i
KTsKLXNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEvMCkiKTsKLXNo
b3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3Qy
LnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkTm90VGhyb3coInNlbGVjdDIub3B0aW9ucy5h
ZGQob3B0aW9uMiwgMS8wKSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAi
MTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIp
OwogCiBkZWJ1ZygiMi4xMiBBZGQgYSBub24tT3B0aW9uIGVsZW1lbnQiKTsKIG9wdGlvbjIgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJESVYiKTsKIHNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlv
bnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIs
ICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJl
KCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxl
Y3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTMgQWRkIGEgbm9uLWVs
ZW1lbnQgKHN0cmluZykiKTsKIG9wdGlvbjIgPSAibyI7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5v
cHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5n
dGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91
bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIu
c2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjE0IEFkZCBhIG5v
bi1lbGVtZW50IChudW1iZXIpIik7CiBvcHRpb24yID0gMy4xNDsKIHNob3VsZFRocm93KCJzZWxl
Y3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsK
K3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTUgQWRk
IGEgbm9uLWVsZW1lbnQgKGJvb2xlYW4pIik7CiBvcHRpb24yID0gdHJ1ZTsKIHNob3VsZFRocm93
KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4Iiwg
IjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRC
ZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIu
MTYgQWRkIHVuZGVmaW5lZCIpOwogb3B0aW9uMiA9IHVuZGVmaW5lZDsKIHNob3VsZFRocm93KCJz
ZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEi
KTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgi
c2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTcg
QWRkIG51bGwiKTsKIG9wdGlvbjIgPSBudWxsOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwg
IjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVj
dGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xOCBBZGQgbmVnYXRpdmUg
aW5maW5pdHkiKTsKIG9wdGlvbjIgPSAtMS8wOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwg
IjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVj
dGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xOSBBZGQgTmFOIik7CiBv
cHRpb24yID0gMC8wOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwg
MSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJl
KCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9u
cy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIp
OwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4yMCBBZGQgcG9zaXRpdmUgaW5maW5pdHkiKTsKIG9w
dGlvbjIgPSAxLzA7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
KSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUo
InNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7
CiBkZWJ1ZygiIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3NlbGVjdC1vcHRp
b25zLWFkZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3NlbGVjdC1vcHRpb25z
LWFkZC1leHBlY3RlZC50eHQKaW5kZXggN2E3Nzc3ODJlNTc2MzBmNzU5ZjAwNDMzNTUyMWFhMWNl
MDBiZDliMi4uMzMwNTZmZmEwYjA5ZmFkNzQ0YTNhZTAzZTQwZTY3ZGNkNTY3OTEzZiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4
dApAQCAtMTYzLDY0ICsxNjMsNjQgQEAgUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcK
IFBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKIAogMi45IEFkZCBhbiBPcHRpb24gYXQg
aW5kZXggLUluZmluaXR5Ci1QQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTEvMCkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAx
Ny4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0
ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTEvMCkgc2hv
dWxkIG5vdCB0aHJvdyBleGNlcHRpb24uIFRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21h
dGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGgg
c2hvdWxkIGJlIDguIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJl
IDIuIFdhcyAxLgogCiAyLjEwIEFkZCBhbiBPcHRpb24gYXQgaW5kZXggTmFOCi1QQVNTIHNlbGVj
dDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMC8wKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVN
aXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5v
cHRpb25zLmFkZChvcHRpb24yLCAwLzApIHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJl
dyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3Lgor
RkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSA5LiBXYXMgNy4KK0ZBSUwgc2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSAzLiBXYXMgMS4KIAogMi4xMSBBZGQgYW4gT3B0
aW9uIGF0IGluZGV4IEluZmluaXR5Ci1QQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwg
MS8wKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0
aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5z
ZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzAp
IHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVN
aXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91
bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTIgQWRkIGEgbm9uLU9wdGlvbiBlbGVtZW50CiBQQVNTIHNl
bGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBl
TWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxl
bmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIu
b3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xMyBBZGQgYSBub24tZWxlbWVudCAoc3Ry
aW5nKQogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVj
dDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQor
RkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNl
bGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTQgQWRkIGEgbm9u
LWVsZW1lbnQgKG51bWJlcikKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3
LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdh
cyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAy
LjE1IEFkZCBhIG5vbi1lbGVtZW50IChib29sZWFuKQogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRk
KG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERP
TSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBz
ZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNo
b3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUg
NC4gV2FzIDEuCiAKIDIuMTYgQWRkIHVuZGVmaW5lZAogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRk
KG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERP
TSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBz
ZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNo
b3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUg
NC4gV2FzIDEuCiAKIDIuMTcgQWRkIG51bGwKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRp
b24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhj
ZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQg
YmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdh
cyAxLgogCiAyLjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0eQogUEFTUyBzZWxlY3QyLm9wdGlvbnMu
YWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6
IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFT
UyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQg
YmUgNC4gV2FzIDEuCiAKIDIuMTkgQWRkIE5hTgogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9w
dGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBF
eGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxl
Y3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNob3Vs
ZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4g
V2FzIDEuCiAKIDIuMjAgQWRkIHBvc2l0aXZlIGluZmluaXR5CiBQQVNTIHNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJv
cjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1Q
QVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5n
dGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3Vs
ZCBiZSA0LiBXYXMgMS4KIAogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4
dAppbmRleCA1YjJhOGNmMTRkNGU2ZGVlMGFiNzQ5ZmE4ZmNmODEwMzlhNzhkMGQ4Li45YzUyZjUw
OTQ1MWVhNzBkYmQ2YmEwNjU0ZTY4YjYwYjgwZDg3OTMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQKQEAgLTY5LDYgKzY5
LDggQEAgY29udmVydGVyLnRlc3RMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcg
aXMgMQogY29udmVydGVyLnRlc3RMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMg
MQogY29udmVydGVyLnRlc3RMb25nID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDAKIGNvbnZlcnRlci50ZXN0TG9uZyA9IG51bGwKQEAgLTc3LDYgKzc5LDY5IEBAIGNvbnZlcnRl
ci50ZXN0TG9uZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAogUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJv
cjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VMb25n
JyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDEKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
IGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IDB4RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IC0weDgxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGRkYKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4
MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkZGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyA9IDB4ODAwMDAwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IDIxNDc0ODM2NDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZG
RkZGRkYgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDQyOTQ5NjcyOTUuCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMDAwMDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IC0yMTQ3NDgzNjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweERD
QkE5ODc2NTQzMjEwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2
ODk4MC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTnVtYmVyLk1BWF9W
QUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgMS43OTc2OTMxMzQ4NjIzMTU3ZSsz
MDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyAtMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMS45
OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIC0xCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IEluZmlu
aXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBJbmZpbml0eS4KK0ZBSUwgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyAtSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IE5hTiBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHRydWUKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gJ2FiYycgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdW5k
ZWZpbmVkIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyB1bmRlZmluZWQuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKwogUEFTUyAndGVzdFVuc2lnbmVk
TG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyA9IDAKQEAgLTE0MSw2ICsyMDYsOCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHRy
dWUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQogY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICdhYmMnCiBQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
ID0gbnVsbApAQCAtMTQ5LDYgKzIxNiw2NCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCiBQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcg
RXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gLTEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0x
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkYKK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MCBzaG91bGQg
dGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEyOC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMg
LTEyOS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwMDAKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGRkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24u
IFdhcyAtMzI3NjguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODAwMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY5LgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAwIHNob3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0
aW9uLiBXYXMgLTIxNDc0ODM2NDkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgNjIxMjk2NTg4NTkzNjg5ODAuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24u
IFdhcyAtMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
LTEuOTkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjk5LgorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IEluZmluaXR5IHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyBJbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAtSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IC1JbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5hTi4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJycKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBh
YmMuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IG51bGwKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHVuZGVmaW5lZCBzaG91bGQgdGhyb3cg
YW4gZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319
IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKwogUEFTUyAndGVzdExvbmdMb25nJyBpbiBjb252ZXJ0
ZXIgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RMb25nTG9uZyA9PT0gJ251bWJl
cicgaXMgdHJ1ZQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDAKQEAgLTE5MywxNiArMzE4LDI4
IEBAIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1OdW1iZXIu
TUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK0ZBSUwgY29udmVydGVyLnRlc3RMb25nTG9u
ZyBzaG91bGQgYmUgMC4gV2FzIC05MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFCitGQUlMIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
c2hvdWxkIGJlIDAuIFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAwMC4KIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSAxLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQogY29udmVydGVy
LnRlc3RMb25nTG9uZyA9IC0xLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTEK
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBJbmZpbml0eQorRkFJTCBjb252ZXJ0ZXIudGVzdExv
bmdMb25nIHNob3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCitjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID0gLUluZmluaXR5CitGQUlMIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgc2hv
dWxkIGJlIDAuIFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAwMC4KK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252
ZXJ0ZXIudGVzdExvbmdMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJ2FiYycKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gbnVsbApA
QCAtMjExLDYgKzM0OCw3MiBAQCBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdW5kZWZpbmVkCiBQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0
aW9uIEVycm9yLgogCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZlcnRl
ciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAt
MHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRkZG
RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgNjIxMjk2NTg4NTkzNjg5ODAuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3Njkz
MTM0ODYyMzE1N2UrMzA4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gLU51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5
NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IEluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBJ
bmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1JbmZp
bml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gZmFs
c2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJjLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHt2
YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJv
ci4KKwogUEFTUyAndGVzdFVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQ
QVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPT09ICdudW1iZXInIGlz
IHRydWUKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDAKQEAgLTI1NSwxNiArNDU4
LDI4IEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUK
IFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBO
dW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorRkFJ
TCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdhcyA5MjIzMzcy
MDM2ODU0Nzc2MDAwLgogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMS45OQogUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gLTEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
IGlzIDB4RkZGRkZGRkZGRkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0g
SW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eQorRkFJTCBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdhcyA5MjIzMzcyMDM2ODU0Nzc2MDAwLgor
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBm
YWxzZQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJycKIFBBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMg
MQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJ2FiYycKIFBBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9IG51bGwKQEAgLTI3Myw2ICs0ODgsNjQgQEAgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9u
KCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KIAorUEFTUyAndGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNT
IHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPT09ICdu
dW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlz
IDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTEg
c2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
MHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MHhGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAt
MHg4MCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEyOC4KK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODEgc2hvdWxkIHRocm93IGFu
IGV4Y2VwdGlvbi4gV2FzIC0xMjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgaXMgMHhGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IC0weDgwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OC4K
K0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAw
MSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY5LgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGRkZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZG
RgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4
MDAwMDAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDguCitGQUlM
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAx
IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OS4KK0ZBSUwgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgNjIxMjk2NTg4NTkzNjg5ODAuCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxV
RQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
RkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIu
TUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAxLjc5NzY5MzEzNDg2MjMx
NTdlKzMwOC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gLU51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5
NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gLTEuOTkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjk5LgorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBJbmZpbml0eSBzaG91
bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eSBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5h
Ti4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IGZhbHNlCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBhYmMu
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitGQUlMIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5lZCBzaG91
bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93
IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKIFBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dl
YmlkbC10eXBlLW1hcHBpbmcuaHRtbAppbmRleCAyMTkxM2JlMGZlODNjMDIxNzk0MDlkN2M2NWJm
ZWNhY2Y0MzcwMDEyLi4yOWFlYmY3YTgwMDIyMWVmOWIyNDZiYzhhYTE3Y2VmYzk2NjEzMGNlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbApAQCAtMzYs
MTEgKzM2LDIzIEBAIGZ1bmN0aW9uIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKGF0dHJpYnV0ZSkK
ICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJp
YnV0ZSwgInRydWUiLCAiMSIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJyciLCAiMCIpOwor
ICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0
ZSwgIidhYmMnIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwiLCAiMCIpOwog
ICAgIGNvbnZlcnQoYXR0cmlidXRlLCAidW5kZWZpbmVkIiwgIjAiKTsKIH0KIAorZnVuY3Rpb24g
dGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UoYXR0cmlidXRlKQoreworICAgIGNv
bnZlcnQoYXR0cmlidXRlLCAiZmFsc2UiLCAiMCIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAi
dHJ1ZSIsICIxIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInJyIsICIwIik7CisgICAgY29u
dmVydChhdHRyaWJ1dGUsICInMSciLCAiMSIpOworICAgIGNvbnZlcnRUaHJvd3MoYXR0cmlidXRl
LCAiJ2FiYyciKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwiLCAiMCIpOworICAgIGNv
bnZlcnRUaHJvd3MoYXR0cmlidXRlLCAidW5kZWZpbmVkIik7Cit9CisKIHR5cGUgPSAidGVzdExv
bmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIpOwpAQCAtNzUs
NiArODcsNDAgQEAgdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252ZXJ0VGhyb3dz
KHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwogZGVidWco
IiIpOwogCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0
eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIi0xIik7Citjb252ZXJ0
KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUsICIweDgw
Iik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MCIpOworY29u
dmVydCh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOworY29udmVydCh0
eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZlcnQodHlwZSwg
Ii0weDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQodHlwZSwgIjB4
N0ZGRkZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAwIik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRocm93cyh0eXBl
LCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1BWF9W
QUxVRSIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiLU51bWJl
ci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7Citjb252ZXJ0
KHR5cGUsICItMS45OSIsICItMSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5maW5pdHkiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAi
TmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7
CitkZWJ1ZygiIik7CisKIHR5cGUgPSAidGVzdFVuc2lnbmVkTG9uZyI7CiB2ZXJpZnlBdHRyaWJ1
dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7CkBAIC0xMDksNiArMTU1LDQwIEBAIHRlc3RO
b25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6
ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRlYnVnKCIiKTsKIAordHlwZSA9ICJ0
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIjsKK3ZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKK2Nv
bnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0xIik7Citjb252ZXJ0KHR5
cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0KHR5cGUsICIweDgwIik7
Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MCIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOwor
Y29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDEi
KTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMDAw
MDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Ii0weDgwMDAwMDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMSIpOworY29u
dmVydFRocm93cyh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29udmVydFRocm93cyh0eXBl
LCAiTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIs
ICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVy
dCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiMS45OSIs
ICIxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMS45OSIpOworY29udmVydFRocm93cyh0eXBl
LCAiSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVy
dFRocm93cyh0eXBlLCAiTmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5n
ZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yO319Iik7CitkZWJ1ZygiIik7CisKIHR5cGUgPSAidGVzdExvbmdMb25nIjsKIHZl
cmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTEzMiwxOSArMjEy
LDUxIEBAIGNvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIik7CiBjb252ZXJ0KHR5cGUsICIweERD
QkE5ODc2NTQzMjEwIik7CiBjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsK
IGNvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKLS8vIEZJWE1FOiBJbmNv
bnNpc3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIk51
bWJlci5NQVhfVkFMVUUiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxV
RSIsICIwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZl
cnQodHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIjEuOTki
LCAiMSIpOwogY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsKLS8vIEZJWE1FOiBJbmNvbnNp
c3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIkluZmlu
aXR5IiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKLS8vY29udmVy
dCh0eXBlLCAiTmFOIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIkluZmluaXR5IiwgIjAiKTsKK2Nv
bnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIp
OwogdGVzdE5vbk51bWVyaWNUb051bWVyaWModHlwZSk7CiBjb252ZXJ0VGhyb3dzKHR5cGUsICJ7
dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwogZGVidWcoIiIpOwogCit0
eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7
Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVydCh0eXBl
LCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOwor
Y29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnQo
dHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwg
IjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4
MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZG
RkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZG
RkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAi
LTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsK
K2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAi
LU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1B
WF9WQUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2Nv
bnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIt
SW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIsICIwIik7Cit0ZXN0Tm9uTnVt
ZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2
YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CitkZWJ1ZygiIik7CisKIHR5
cGUgPSAidGVzdFVuc2lnbmVkTG9uZ0xvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29u
dmVydCh0eXBlLCAiMCIpOwpAQCAtMTY4LDE4ICsyODAsNTAgQEAgY29udmVydCh0eXBlLCAiLTB4
ODAwMDAwMDEiLCAiMHhGRkZGRkZGRjdGRkZGRkZGIik7CiBjb252ZXJ0KHR5cGUsICIweERDQkE5
ODc2NTQzMjEwIik7CiBjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKIGNv
bnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKLS8vIEZJWE1FOiBJbmNvbnNp
c3RlbnQgcmVzdWx0cyBiZXR3ZWVuIFY4IGFuZCBKU0MuCi0vL2NvbnZlcnQodHlwZSwgIk51bWJl
ci5NQVhfVkFMVUUiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIs
ICIwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQo
dHlwZSwgIi1OdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIjEuOTkiLCAi
MSIpOwogY29udmVydCh0eXBlLCAiLTEuOTkiLCAiMHhGRkZGRkZGRkZGRkZGRkZGIik7Ci0vLyBG
SVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0
KHR5cGUsICJJbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIw
Iik7Ci0vL2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7Citjb252ZXJ0KHR5cGUsICJJbmZpbml0
eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBl
LCAiTmFOIiwgIjAiKTsKIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVydFRo
cm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKIGRl
YnVnKCIiKTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyI7Cit2
ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhyb3dz
KHR5cGUsICItMSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIp
OworY29udmVydCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVy
dFRocm93cyh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7Citj
b252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVy
dCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7
Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZGRkZG
Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0
eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMy
MTAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0
eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVt
YmVyLk1BWF9WQUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUi
KTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEu
OTkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51
bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7
dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiA8
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvc2Vs
ZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
NmYxZTI2Nzk4YzViNzM0N2Y3OTUwMmRhOTk3NTg2NDYxYzYzYWMwCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1h
ZGQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjI4IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoZSBi
ZWhhdmlvciBvZiB0aGUgYWRkKCkgbWV0aG9kIG9uIHRoZSBzZWxlY3Qub3B0aW9ucyBvYmplY3Qu
CitJdCBjb3ZlcnMgYm90aCB0aGUgdGhlIG9uZS1hcmd1bWVudCAoMS54KSBhbmQgdHdvLWFyZ3Vt
ZW50ICgyLngpIHNpZ25hdHVyZXMgb2YgdGhlIGFkZCgpIG1ldGhvZC4KKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKKzEuMSBBZGQgT3B0aW9uIHRvIGVtcHR5IE9wdGlvbnMKK1BBU1Mg
c2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAxCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBp
cyAwCitQQVNTIHNlbGVjdDEub3B0aW9uc1swXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0MS5v
cHRpb25zWzBdLnRleHRDb250ZW50IGlzICdBJworCisxLjIgQWRkIE9wdGlvbiB0byBub24tZW1w
dHkgT3B0aW9ucworUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDIKK1BBU1Mgc2VsZWN0
MS5zZWxlY3RlZEluZGV4IGlzIDAKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzBdLnZhbHVlIGlzICcx
JworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVj
dDEub3B0aW9uc1sxXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzFdLnRleHRD
b250ZW50IGlzICdCJworCisxLjMgQWRkIE9wdGlvbiBhZnRlciBzZXR0aW5nIHBhcmFtZXRlcnMK
K1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJ
bmRleCBpcyAwCitQQVNTIHNlbGVjdDEub3B0aW9uc1swXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2Vs
ZWN0MS5vcHRpb25zWzBdLnRleHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QxLm9wdGlvbnNb
MV0udmFsdWUgaXMgJzInCitQQVNTIHNlbGVjdDEub3B0aW9uc1sxXS50ZXh0Q29udGVudCBpcyAn
QicKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzJdLnZhbHVlIGlzICczJworUEFTUyBzZWxlY3QxLm9w
dGlvbnNbMl0udGV4dENvbnRlbnQgaXMgJ0MnCisKKzEuNCBBZGQgYSBub24tT3B0aW9uIGVsZW1l
bnQKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRpb24xKSB0aHJldyBleGNlcHRpb24gRXJy
b3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9w
dGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKKworMS41
IEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCitQQVNTIHNlbGVjdDEub3B0aW9ucy5hZGQob3B0
aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEu
c2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuNiBBZGQgYSBub24tZWxlbWVudCAobnVtYmVyKQorUEFT
UyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlw
ZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0aW9ucy5s
ZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisxLjcgQWRkIGEg
bm9uLWVsZW1lbnQgKGJvb2xlYW4pCitQQVNTIHNlbGVjdDEub3B0aW9ucy5hZGQob3B0aW9uMSkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0
ZWRJbmRleCBpcyAwCisKKzEuOCBBZGQgdW5kZWZpbmVkCitQQVNTIHNlbGVjdDEub3B0aW9ucy5h
ZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9N
IEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNl
bGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuOSBBZGQgbnVsbAorUEFTUyBzZWxlY3QxLm9w
dGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJy
b3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMwor
UEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisxLjEwIEFkZCBuZWdhdGl2ZSBpbmZp
bml0eQorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEu
b3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisx
LjExIEFkZCBOYU4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRpb24xKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBz
ZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlz
IDAKKworMS4xMiBBZGQgcG9zaXRpdmUgaW5maW5pdHkKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFk
ZChvcHRpb24xKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2Vs
ZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKKworMi4xIEFkZCBPcHRpb24gdG8gZW1wdHkgT3B0aW9u
cworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDEKK1BBU1Mgc2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IGlzIDAKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFTUyBz
ZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0EnCisKKzIuMiBBZGQgT3B0aW9uIGFm
dGVyIHNldHRpbmcgcGFyYW1ldGVycworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDIK
K1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDAKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBd
LnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0En
CitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRp
b25zWzFdLnRleHRDb250ZW50IGlzICdCJworCisyLjMgSW5zZXJ0IE9wdGlvbiBhdCBiZWdpbm5p
bmcgb2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlz
ICcwJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNl
bGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRl
eHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzInCitQ
QVNTIHNlbGVjdDIub3B0aW9uc1syXS50ZXh0Q29udGVudCBpcyAnQicKKworMi40IEluc2VydCBP
cHRpb24gaW4gbWlkZGxlIG9mIE9wdGlvbnMKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBp
cyA0CitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0aW9u
c1swXS52YWx1ZSBpcyAnMCcKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnRleHRDb250ZW50IGlz
ICdaJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDIu
b3B0aW9uc1sxXS50ZXh0Q29udGVudCBpcyAnQScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnZh
bHVlIGlzICcxLjUnCitQQVNTIHNlbGVjdDIub3B0aW9uc1syXS50ZXh0Q29udGVudCBpcyAnQS41
JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbM10udmFsdWUgaXMgJzInCitQQVNTIHNlbGVjdDIub3B0
aW9uc1szXS50ZXh0Q29udGVudCBpcyAnQicKKworMi41IEluc2VydCBPcHRpb24gYXQgZW5kIG9m
IE9wdGlvbnMKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA1CitQQVNTIHNlbGVjdDIu
c2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0aW9uc1swXS52YWx1ZSBpcyAnMCcK
K1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnRleHRDb250ZW50IGlzICdaJworUEFTUyBzZWxlY3Qy
Lm9wdGlvbnNbMV0udmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS50ZXh0Q29u
dGVudCBpcyAnQScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnZhbHVlIGlzICcxLjUnCitQQVNT
IHNlbGVjdDIub3B0aW9uc1syXS50ZXh0Q29udGVudCBpcyAnQS41JworUEFTUyBzZWxlY3QyLm9w
dGlvbnNbM10udmFsdWUgaXMgJzInCitQQVNTIHNlbGVjdDIub3B0aW9uc1szXS50ZXh0Q29udGVu
dCBpcyAnQicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzRdLnZhbHVlIGlzICczJworUEFTUyBzZWxl
Y3QyLm9wdGlvbnNbNF0udGV4dENvbnRlbnQgaXMgJ0MnCisKKzIuNiBJbnNlcnQgT3B0aW9uIGJl
eW9uZCB0aGUgZW5kIG9mIE9wdGlvbnMKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA2
CitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitQQVNTIHNlbGVjdDIub3B0aW9uc1sw
XS52YWx1ZSBpcyAnMCcKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnRleHRDb250ZW50IGlzICda
JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDIub3B0
aW9uc1sxXS50ZXh0Q29udGVudCBpcyAnQScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnZhbHVl
IGlzICcxLjUnCitQQVNTIHNlbGVjdDIub3B0aW9uc1syXS50ZXh0Q29udGVudCBpcyAnQS41Jwor
UEFTUyBzZWxlY3QyLm9wdGlvbnNbM10udmFsdWUgaXMgJzInCitQQVNTIHNlbGVjdDIub3B0aW9u
c1szXS50ZXh0Q29udGVudCBpcyAnQicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzRdLnZhbHVlIGlz
ICczJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNF0udGV4dENvbnRlbnQgaXMgJ0MnCitQQVNTIHNl
bGVjdDIub3B0aW9uc1s1XS52YWx1ZSBpcyAnNCcKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzVdLnRl
eHRDb250ZW50IGlzICdEJworCisyLjcgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCAtMQorUEFTUyBz
ZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlz
IDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlzICcwJworUEFTUyBzZWxlY3QyLm9w
dGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1
ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRleHRDb250ZW50IGlzICdBJworUEFT
UyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzEuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
WzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQQVNTIHNlbGVjdDIub3B0aW9uc1szXS52YWx1ZSBp
cyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnRleHRDb250ZW50IGlzICdCJworUEFTUyBz
ZWxlY3QyLm9wdGlvbnNbNF0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVjdDIub3B0aW9uc1s0XS50
ZXh0Q29udGVudCBpcyAnQycKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzVdLnZhbHVlIGlzICc0Jwor
UEFTUyBzZWxlY3QyLm9wdGlvbnNbNV0udGV4dENvbnRlbnQgaXMgJ0QnCitQQVNTIHNlbGVjdDIu
b3B0aW9uc1s2XS52YWx1ZSBpcyAnNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzZdLnRleHRDb250
ZW50IGlzICdFJworCisyLjggQWRkIGFuIE9wdGlvbiBhdCBpbmRleCAtMgorUEFTUyBzZWxlY3Qy
Lm9wdGlvbnMuYWRkKG9wdGlvbjIsIC0yKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IEluZGV4U2l6
ZUVycm9yOiBET00gRXhjZXB0aW9uIDEuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMg
NworUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorCisyLjkgQWRkIGFuIE9wdGlvbiBh
dCBpbmRleCAtSW5maW5pdHkKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAtMS8w
KSBkaWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBp
cyA4CitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAyCisKKzIuMTAgQWRkIGFuIE9wdGlv
biBhdCBpbmRleCBOYU4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAwLzApIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDkK
K1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDMKKworMi4xMSBBZGQgYW4gT3B0aW9uIGF0
IGluZGV4IEluZmluaXR5CitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMS8wKSBk
aWQgbm90IHRocm93IGV4Y2VwdGlvbi4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAx
MAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjEyIEFkZCBhIG5vbi1PcHRp
b24gZWxlbWVudAorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNT
IHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4
IGlzIDQKKworMi4xMyBBZGQgYSBub24tZWxlbWVudCAoc3RyaW5nKQorUEFTUyBzZWxlY3QyLm9w
dGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNo
RXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMg
MTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xNCBBZGQgYSBub24tZWxl
bWVudCAobnVtYmVyKQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQ
QVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZElu
ZGV4IGlzIDQKKworMi4xNSBBZGQgYSBub24tZWxlbWVudCAoYm9vbGVhbikKK1BBU1Mgc2VsZWN0
Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNt
YXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IGlzIDEwCitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyA0CisKKzIuMTYgQWRkIHVuZGVm
aW5lZAorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVj
dDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQK
KworMi4xNyBBZGQgbnVsbAorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcu
CitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IGlzIDQKKworMi4xOCBBZGQgbmVnYXRpdmUgaW5maW5pdHkKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRj
aEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlz
IDEwCitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyA0CisKKzIuMTkgQWRkIE5hTgorUEFT
UyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9u
cy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4yMCBB
ZGQgcG9zaXRpdmUgaW5maW5pdHkKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9u
IDE3LgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDEwCitQQVNTIHNlbGVjdDIuc2Vs
ZWN0ZWRJbmRleCBpcyA0CisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9m
YXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vY2hyb21pdW0vZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi43NjcyYjgwZDNlODgxNDI4NTk4MTJjZmNhODZhY2ZlYmJjZDI0ZDYzCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9qcy93ZWJp
ZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDU1MiBAQAorRXhlcmNpc2Ug
V2ViSURMIHR5cGUgY29udmVyc2lvbnMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
Citjb252ZXJ0ZXIgPSB3aW5kb3cuaW50ZXJuYWxzLnR5cGVDb252ZXJzaW9ucygpCisKK1BBU1Mg
J3Rlc3RMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRl
c3RMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdExvbmcgPSAwCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMQorUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDEKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4N0YKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4ODAKK1BBU1Mg
Y29udmVydGVyLnRlc3RMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4RkYKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgw
CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RMb25nID0g
LTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVzdExv
bmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4N0ZGRgorY29udmVydGVy
LnRlc3RMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDgwMDAKK2Nv
bnZlcnRlci50ZXN0TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHhG
RkZGCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MDAxCitQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdExvbmcgPSAweDdGRkZGRkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdExvbmcg
PSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAtMHg4MDAwMDAwMAorY29u
dmVydGVyLnRlc3RMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMg
LTEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZyBpcyAtMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAwMDAwMDEKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZyA9
IDB4RENCQTk4NzY1NDMyMTAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4NzY1NDMyMTAK
K2NvbnZlcnRlci50ZXN0TG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1Mg
Y29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC1OdW1iZXIuTUFY
X1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcg
PSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMQorY29udmVy
dGVyLnRlc3RMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0xCitjb252
ZXJ0ZXIudGVzdExvbmcgPSBJbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RMb25nID0gLUluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBp
cyAxCitjb252ZXJ0ZXIudGVzdExvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMg
MAorY29udmVydGVyLnRlc3RMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAx
Citjb252ZXJ0ZXIudGVzdExvbmcgPSAnYWJjJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMg
MAorY29udmVydGVyLnRlc3RMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMg
MAorY29udmVydGVyLnRlc3RMb25nID0gdW5kZWZpbmVkCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhy
b3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKworUEFTUyAndGVzdEVuZm9y
Y2VSYW5nZUxvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg4MAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4N0ZG
RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
MHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweEZGRkYKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0w
eDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0ZGRkZGRkYKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4MDAwMDAwMCB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAweEZGRkZGRkZGIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMDAwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHhEQ0JB
OTg3NjU0MzIxMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIu
TUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIC0xCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSBOYU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB0cnVl
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJzEnCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3Iu
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigp
e3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9y
LgorCitQQVNTICd0ZXN0VW5zaWduZWRMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0
eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
aXMgMHg3RgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0g
MHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDB4RkZGRkZGODAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4ODEKK1BBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkY3RgorY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMg
MHg3RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
ID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRgorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nIGlzIDB4RkZGRjgwMDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4
ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkY3RkZGCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAw
eDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4ODAwMDAwMDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4ODAw
MDAwMDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nIGlzIDB4NzY1NDMyMTAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gTnVtYmVyLk1B
WF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1B
WF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMS45OQorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRkZG
RkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gSW5maW5pdHkKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtSW5m
aW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgPSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMg
MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHRydWUKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyBpcyAxCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gbnVs
bAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZyA9IHVuZGVmaW5lZAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBp
cyAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24o
KXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCitQQVNTICd0ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBl
b2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPT09ICdudW1iZXInIGlz
IHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTEgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0YKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAw
eDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAxIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4
N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMg
MHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgw
MDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4
ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZG
RkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4
ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IE51bWJl
ci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
aXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1OdW1i
ZXIuTUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gLTEuOTkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBJ
bmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVy
cm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBmYWxzZQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcxJwor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
dW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24o
KXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KKworUEFTUyAndGVzdExvbmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBl
b2YgY29udmVydGVyLnRlc3RMb25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVy
LnRlc3RMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAt
MQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9u
ZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDgwCitQQVNTIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4
RkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdExv
bmdMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MAorY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
aXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDgwMDAK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweEZGRkYKK2Nv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0weDgwMDEKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0g
MHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2Nv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4RkZGRkZGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVz
dExvbmdMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAt
MHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0weDgwMDAwMDAxCitQQVNTIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODAwMDAwMDEKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHhE
Q0JBOTg3NjU0MzIxMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9W
QUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQorY29udmVydGVy
LnRlc3RMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTEK
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBJbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTmFOCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9
IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCitjb252ZXJ0
ZXIudGVzdExvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
aXMgMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVy
dGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdW5kZWZpbmVk
CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhj
ZXB0aW9uIEVycm9yLgorCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZl
cnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
IGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhG
RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZG
RkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
LU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIu
TUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEuOTkKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTmFOIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCisKK1BBU1MgJ3Rlc3RVbnNpZ25lZExvbmdM
b25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRkZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAx
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweDgwCitj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZG
RkZGRkZGRjgwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MQorUEFTUyBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRkZGRkZGRjdGCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
ID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
eEZGRkZGRkZGRkZGRjgwMDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgw
MDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkZGRkZG
N0ZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
ID0gMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhG
RkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMDAwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkY4MDAwMDAwMAor
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkY3RkZGRkZGRgorY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhEQ0JBOTg3NjU0MzIxMAorY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLU51
bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK1BBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAxLjk5CitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMHhGRkZGRkZGRkZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSBJbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLUluZmluaXR5CitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSBOYU4KK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
aXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAnYWJjJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gdW5k
ZWZpbmVkCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KKworUEFTUyAndGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPT09ICdudW1iZXInIGlz
IHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTEgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlz
IDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODEgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyBpcyAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nID0gLTB4ODAwMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAx
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGRkZGRkZGCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgw
MDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAxIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gLTEuOTkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gSW5maW5pdHkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLUluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9y
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gZmFsc2UKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IG51bGwKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gdW5kZWZpbmVkIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCisKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0
ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNp
b24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDFlOGJkNTdiZDMxMWI4MmNlOWYy
NDhiZGQ3NDY0NGJjMmYwMmQ2ZDUuLjE0NTU3ZDQ1MzY2ZGRmMzQxYjZjMDEyMDcwZTI4OTEyM2Ex
MTg4N2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNp
b24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBAIC0xOCw2
ICsxOCwxNSBAQCBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkgdGhyZXcgVHlwZUVycm9y
OiBUeXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWRE
Qi5vcGVuKGRibmFtZSwgLTUpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgogUEFTUyBpbmRl
eGVkREIub3BlbihkYm5hbWUsIC01KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVj
dGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBJbmZp
bml0eSkKK1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRi
bmFtZSwgSW5maW5pdHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhwZWN0aW5nIFR5
cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0eSkK
K1BBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwg
LUluZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJy
b3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4pCitQQVNTIEV4Y2Vw
dGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIE5hTikgdGhyZXcg
VHlwZUVycm9yOiBUeXBlIGVycm9yCiBFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9t
IGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpCiBQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgog
UEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9p
bnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKaW5kZXggYWYzNWYyZDRi
YzgyYjBiY2RiNWIwMTQ4YzYzMGYyMTUzOTYzYmZjMS4uZDMzOWMzMmMxYzZiMTE0OTdlMWNjODlk
MGMwNzM1YWEzOTk5NzQ3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMKKysrIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMu
anMKQEAgLTIwLDYgKzIwLDkgQEAgZnVuY3Rpb24gZGVsZXRlU3VjY2VzcyhldnQpIHsKICAgICBl
dmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgJ3N0cmlu
Z3ZlcnNpb24nKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xh
c3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgMCkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFu
ZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC01KSIsICJUeXBl
RXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVu
KGRibmFtZSwgSW5maW5pdHkpIiwgIlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNl
cHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5maW5pdHkpIiwgIlR5cGVFcnJv
ciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJu
YW1lLCBOYU4pIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFz
cygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFu
ZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDB4MjAwMDAwMDAw
MDAwMDApIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygi
aW5kZXhlZERCLm9wZW4oZGJuYW1lLCBudWxsKSIsICJUeXBlRXJyb3IiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192526</attachid>
            <date>2013-03-11 12:15:07 -0700</date>
            <delta_ts>2013-03-12 12:06:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130311121106.patch</filename>
            <type>text/plain</type>
            <size>130238</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MzQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTBkNjM0MGRhZGJiOTc2
OTZkMDJlMjYxYmZlOWU4ZjVjNzc3YjM3Ni4uOWYyZDQzMmJhYzE5NGNjNjBiMmQzMDYwODJjY2Zl
MTBlNGJhZjE3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDEzLTAzLTExICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBs
ZW1lbnQgW0VuZm9yY2VSYW5nZV0gYXR0cmlidXRlIGZvciBWOCBiaW5kaW5ncywgd2hpY2ggc3Bl
Y2lmaWVzIHRocm93aW5nIGJlaGF2aW9yCisgICAgICAgIG9uIGNvbnZlcnNpb25zIG91dHNpZGUg
aW50L3VpbnQgMzIvNjQgcmFuZ2VzIGFuZCBlZGdlIGNhc2VzIGxpa2UgTmFOcyBhbmQgSW5maW5p
dGllcy4KKyAgICAgICAgQ29udmVyc2VseSwgY29udmVyc2lvbnMgd2l0aG91dCB0aGlzIGF0dHJp
YnV0ZSBzaG91bGQgKm5vdCogdGhyb3cuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvanMvd2ViaWRs
LXR5cGUtbWFwcGluZy5odG1sOgorICAgICAgICAgICAgICAgZmFzdC9kb20vbm9uLW51bWVyaWMt
dmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy5odG1sCisgICAgICAgICAgICAgICBmYXN0L2pzL3Nj
cmlwdC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQuaHRtbAorICAgICAgICAgICAgICAgc3RvcmFn
ZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5odG1sCisKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwOiBSZW1vdmUgY3VzdG9tIHJhbmdlIGVuZm9y
Y2VtZW50IGZvciBhZHZhbmNlKCkKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3IuaDogQWRqdXN0IHR5cGUgdG8gbWF0Y2ggV2ViSURMLgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5pZGw6IFNwZWNpZnkgW0VuZm9yY2VSYW5nZV0gYW5kIHR5cGUgbWF0
Y2hlcyBzcGVjIFdlYklETC4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmNwcDogUmVtb3ZlIGN1c3RvbSByYW5nZSBlbmZvcmNlbWVudCBmb3Igb3BlbigpCisgICAgICAg
ICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oOiBBZGp1c3QgdHlwZSB0byBtYXRjaCBX
ZWJJREwuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGw6IFNwZWNp
ZnkgW0VuZm9yY2VSYW5nZV0gYW5kIHR5cGUgbWF0Y2hlcyBzcGVjIFdlYklETC4KKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEpTVmFsdWVU
b05hdGl2ZSk6IEFkZCBGSVhNRSB0byBzdXBwb3J0IFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06CisgICAgICAgIChHZW5lcmF0ZU5v
cm1hbEF0dHJTZXR0ZXIpOiBIYW5kbGUgW0VuZm9yY2VSYW5nZV0gaW4gYXR0cmlidXRlIHNldHRl
cnMKKyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKTogSGFuZGxlIFtFbmZvcmNlUmFu
Z2VdIGluIHBhcmFtZXRlcnMuCisgICAgICAgIChKU1ZhbHVlVG9OYXRpdmUpOiBQYXNzIEVuZm9y
Y2VSYW5nZSB0byB0b0ludCgpIGZ1bmN0aW9ucyBhcyBhcHByb3ByaWF0ZS4KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0OgorICAgICAgICAqIGJpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9UZXN0T2JqLmlkbDogVGVzdHMgdy8gW0VuZm9yY2VSYW5nZV0KKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcDogVXBkYXRlZCBleHBlY3Rh
dGlvbnMKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMu
Y3BwOiBVcGRhdGVkIGV4cGVjdGF0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEJpbmRp
bmcuY3BwOiBPdmVybG9hZHMgZm9yIHRvSW50KCkgdmFyaWFudHMgdGhhdCBoYW5kbGUgY29uc3Ry
YWludHMuCisgICAgICAgIChXZWJDb3JlOjp0b0ludDMyKToKKyAgICAgICAgKFdlYkNvcmU6OnRv
VUludDMyKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50NjQpOgorICAgICAgICAoV2ViQ29yZTo6
dG9VSW50NjQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5oOiBEaXR0bywgcGx1
cyBoZWxwZXJzIGZvciBjYWxsZXJzIG5vdCBleHBlY3RpbmcgZXJyb3JzLgorICAgICAgICAoV2Vi
Q29yZTo6dG9JbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChX
ZWJDb3JlOjp0b0ludDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaDogSGVscGVyIG1hY3JvcyBmb3IgdHlwZSBj
b252ZXJzaW9ucyB0aGF0IG1heSB0aHJvdy4KKyAgICAgICAgKiB0ZXN0aW5nL1R5cGVDb252ZXJz
aW9ucy5oOiBBZGRlZCBuZXcgbWVtYmVycyB3aXRoIEVuZm9yY2VSYW5nZSBjb25zdHJhaW50Lgor
ICAgICAgICAqIHRlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbDogRGl0dG8uCisKIDIwMTMtMDMt
MTAgIE1hdHQgRmFsa2VuaGFnZW4gIDxmYWxrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIElt
cGxlbWVudCBpbmVydCBzdWJ0cmVlcyBuZWVkZWQgZm9yIG1vZGFsIDxkaWFsb2c+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAppbmRleCA3YmIwZjUw
MGU0N2I0MjYxMzQwYTkzMjgxNThhZGU5M2UzNDg1NmM2Li4xY2Y5NzcxMDFjYTYzMjYzZGZjZGZm
YzU3NThkMjRkY2E3NDRmYjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJDdXJzb3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5jcHAKQEAgLTE1Miw3ICsxNTIsNyBAQCBQYXNzUmVmUHRyPElEQlJlcXVl
c3Q+IElEQkN1cnNvcjo6dXBkYXRlKFNjcmlwdFN0YXRlKiBzdGF0ZSwgU2NyaXB0VmFsdWUmIHZh
bHVlLAogICAgIHJldHVybiBvYmplY3RTdG9yZS0+cHV0KElEQkRhdGFiYXNlQmFja2VuZEludGVy
ZmFjZTo6Q3Vyc29yVXBkYXRlLCBJREJBbnk6OmNyZWF0ZSh0aGlzKSwgc3RhdGUsIHZhbHVlLCBt
X2N1cnJlbnRQcmltYXJ5S2V5LCBlYyk7CiB9CiAKLXZvaWQgSURCQ3Vyc29yOjphZHZhbmNlKGxv
bmcgbG9uZyBjb3VudCwgRXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIElEQkN1cnNvcjo6YWR2YW5j
ZSh1bnNpZ25lZCBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBlYyA9IDA7
CiAgICAgSURCX1RSQUNFKCJJREJDdXJzb3I6OmFkdmFuY2UiKTsKQEAgLTE2Niw4ICsxNjYsNyBA
QCB2b2lkIElEQkN1cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUm
IGVjKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxk
IG9ubHkgbmVlZCB0byBjaGVjayBmb3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4K
LSAgICBpZiAoY291bnQgPCAxIHx8IGNvdW50ID4gVUlOVF9NQVgpIHsKKyAgICBpZiAoIWNvdW50
KSB7CiAgICAgICAgIGVjID0gVHlwZUVycm9yOwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAppbmRleCAxOGQyMDBl
YTYxMDY3Nzk3ZWE0YzllZGM1MTYxZDE1ZGI0YjNkYWU3Li5lMzU4OTEwOTZkNzViM2VmMmUzOTk4
NzliMTkzNjNlMTIzYzRhMTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJDdXJzb3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJDdXJzb3IuaApAQCAtNjksOCArNjksNyBAQCBwdWJsaWM6CiAgICAgSURCQW55KiBzb3Vy
Y2UoKSBjb25zdDsKIAogICAgIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gdXBkYXRlKFNjcmlwdFN0
YXRlKiwgU2NyaXB0VmFsdWUmLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgLy8gRklYTUU6IE1ha2Ug
dGhpcyB1bnNpZ25lZCBsb25nIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgotICAgIHZv
aWQgYWR2YW5jZShsb25nIGxvbmcsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGFkdmFuY2Uo
dW5zaWduZWQgbG9uZywgRXhjZXB0aW9uQ29kZSYpOwogICAgIC8vIEZJWE1FOiBUcnkgdG8gbW9k
aWZ5IHRoZSBjb2RlIGdlbmVyYXRvciBzbyB0aGlzIG92ZXJsb2FkIGlzIHVubmVlZGVkLgogICAg
IHZvaWQgY29udGludWVGdW5jdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9u
Q29kZSYgZWMpIHsgY29udGludWVGdW5jdGlvbihzdGF0aWNfY2FzdDxJREJLZXkqPigwKSwgZWMp
OyB9CiAgICAgdm9pZCBjb250aW51ZUZ1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBj
b25zdCBTY3JpcHRWYWx1ZSYga2V5LCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbAppbmRleCA0NTcwYzFlY2M4N2QwOGI5
MDEwMDNhM2RjOGYyNzg2MWYxMTg4ZWExLi40YjYyNjViNDI4ZjI2ZTkxZmMwN2JiOGI1YzIyMTVk
N2RjNDIzNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJDdXJzb3IuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1
cnNvci5pZGwKQEAgLTM1LDggKzM1LDcgQEAKIAogICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZV0g
SURCUmVxdWVzdCB1cGRhdGUoaW4gYW55IHZhbHVlKQogICAgICAgICByYWlzZXMgKERPTUV4Y2Vw
dGlvbik7Ci0gICAgLy8gRklYTUU6IE1ha2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBs
b25nIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgotICAgIHZvaWQgYWR2YW5jZShpbiBs
b25nIGxvbmcgY291bnQpCisgICAgdm9pZCBhZHZhbmNlKGluIFtFbmZvcmNlUmFuZ2VdIHVuc2ln
bmVkIGxvbmcgY291bnQpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICBbQ2Fs
bFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgSW1wbGVtZW50ZWRBcz1jb250aW51ZUZ1bmN0
aW9uXSB2b2lkIGNvbnRpbnVlKGluIFtPcHRpb25hbF0gYW55IGtleSkKICAgICAgICAgcmFpc2Vz
IChET01FeGNlcHRpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCRmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJGYWN0b3J5LmNwcAppbmRleCBkMDEyMGY2MGE4OWFkZmZiN2QxNjVjOWFhYjczZjlmNzZmMzEx
MGIwLi4xZDVmMGZiYjFhYmYxZTVhZGRkNzM4NTM3OTNmOWQwZGMxODAyZjcyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcApAQCAtMTExLDEx
ICsxMTEsOSBAQCBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IElEQkZhY3Rvcnk6OmdldERhdGFiYXNl
TmFtZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udAogICAgIHJldHVybiByZXF1ZXN0Owog
fQogCi1QYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IElEQkZhY3Rvcnk6Om9wZW4oU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZl
cnNpb24sIEV4Y2VwdGlvbkNvZGUmIGVjKQorUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBJ
REJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IFN0
cmluZyYgbmFtZSwgdW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmIGVj
KQogewotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hlY2sgZm9yIDAg
b25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgY29uc3QgaW50NjRfdCBtYXhFQ01B
U2NyaXB0SW50ZWdlciA9IDB4MjAwMDAwMDAwMDAwMDBMTCAtIDE7Ci0gICAgaWYgKHZlcnNpb24g
PCAxIHx8IHZlcnNpb24gPiBtYXhFQ01BU2NyaXB0SW50ZWdlcikgeworICAgIGlmICghdmVyc2lv
bikgewogICAgICAgICBlYyA9IFR5cGVFcnJvcjsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5o
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCmluZGV4IGNj
NjFjZDdjNmZiZDEyZTRlMDlhNzdlYzlkZDBkYTIwY2ZlNzcwYjkuLjk3NDI5NzNhMTdlNWYzYjA3
OTVlMzNkZjc5YzY2ZTczM2UyZWM0NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJGYWN0b3J5LmgKQEAgLTU3LDcgKzU3LDcgQEAgcHVibGljOgogICAgIFBhc3NS
ZWZQdHI8SURCUmVxdWVzdD4gZ2V0RGF0YWJhc2VOYW1lcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBv
cGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlv
bkNvZGUmKTsKLSAgICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9wZW4oU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgaW50NjRfdCB2ZXJzaW9uLCBFeGNl
cHRpb25Db2RlJik7CisgICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIHVuc2lnbmVkIGxvbmcgbG9u
ZyB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJik7CiAgICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1
ZXN0PiBkZWxldGVEYXRhYmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5n
JiBuYW1lLCBFeGNlcHRpb25Db2RlJik7CiAKICAgICBzaG9ydCBjbXAoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIGNvbnN0IFNjcmlwdFZhbHVlJiBmaXJzdCwgY29uc3QgU2NyaXB0VmFsdWUmIHNl
Y29uZCwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJGYWN0b3J5LmlkbAppbmRleCBhNTE2MDViMmI0ZTMxMjk3YmI1NWRhM2I1MTdkNWRk
MTJjM2QyMmFjLi5lZjUxYmJmODM4N2NhOGJkMGU2YWViYzUxMDYzYjhkNWU2OGQ0ZjZlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbApAQCAt
MzEsOCArMzEsNyBAQAogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBs
ZW1lbnRlZEFzPWdldERhdGFiYXNlTmFtZXNdIElEQlJlcXVlc3Qgd2Via2l0R2V0RGF0YWJhc2VO
YW1lcygpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKIAotICAgIC8vIEZJWE1FOiBN
YWtlIHRoaXMgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIG9uY2Ugd2Via2l0Lm9y
Zy9iLzk2Nzk4IGxhbmRzLgotICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJ
REJPcGVuREJSZXF1ZXN0IG9wZW4oaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtPcHRpb25hbF0gbG9u
ZyBsb25nIHZlcnNpb24pCisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElE
Qk9wZW5EQlJlcXVlc3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW0VuZm9yY2VSYW5nZSwg
T3B0aW9uYWxdIHVuc2lnbmVkIGxvbmcgbG9uZyB2ZXJzaW9uKQogICAgICAgICByYWlzZXMgKERP
TUV4Y2VwdGlvbik7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQk9w
ZW5EQlJlcXVlc3QgZGVsZXRlRGF0YWJhc2UoaW4gRE9NU3RyaW5nIG5hbWUpCiAgICAgICAgIHJh
aXNlcyAoRE9NRXhjZXB0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KaW5kZXggNmFkYzk4ODNkNDY2YjcxZmE1MTA3NWY1Yjhk
YzliZjI5YTVhOGYzMS4uNTI2OGQ5ZjQ5YjMzODhkN2MxODY5OTcyM2FhNDFhMWQ4MTVkMzcyZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
SlMucG0KQEAgLTMxNjIsNiArMzE2Miw3IEBAIHN1YiBKU1ZhbHVlVG9OYXRpdmUKICAgICByZXR1
cm4gIiR2YWx1ZS50b0Jvb2xlYW4oZXhlYykiIGlmICR0eXBlIGVxICJib29sZWFuIjsKICAgICBy
ZXR1cm4gIiR2YWx1ZS50b051bWJlcihleGVjKSIgaWYgJHR5cGUgZXEgImRvdWJsZSI7CiAgICAg
cmV0dXJuICIkdmFsdWUudG9GbG9hdChleGVjKSIgaWYgJHR5cGUgZXEgImZsb2F0IjsKKyAgICAj
IEZJWE1FOiBBZGQgW0VuZm9yY2VSYW5nZV0gc3VwcG9ydAogICAgIHJldHVybiAiJHZhbHVlLnRv
SW50MzIoZXhlYykiIGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwogICAg
IHJldHVybiAiJHZhbHVlLnRvVUludDMyKGV4ZWMpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9u
ZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKICAgICByZXR1cm4gInN0YXRpY19jYXN0
PCR0eXBlPigkdmFsdWUudG9JbnRlZ2VyKGV4ZWMpKSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyIg
b3IgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCmluZGV4IGUzOGFmNGQxNTY1ZGQ5
YmU1ZGY0YmY1MDdmM2YyOGY2ZGZjMDE0M2MuLjc2OTJjNTIxY2Y2MjJlZGE0MjAwMjE4ZGExZTE3
MGU0MzNmZGRiNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvclY4LnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvclY4LnBtCkBAIC0xMzAyLDE0ICsxMzAyLDE5IEBAIEVORAogICAgICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnRJbnRlcm5hbHMsICIgICAgICAgIHJldHVybjtcbiIpOwogICAg
ICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZl
KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIik7CiAg
ICAgICAgIG15ICRhcnJheVR5cGUgPSAkY29kZUdlbmVyYXRvci0+R2V0QXJyYXlUeXBlKCRuYXRp
dmVUeXBlKTsKIAogICAgICAgICBpZiAoJG5hdGl2ZVR5cGUgPX4gL15WOFN0cmluZ1Jlc291cmNl
LykgeworICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUt
PnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8uR2V0SXNvbGF0ZSgpIik7CiAgICAgICAgICAgICBw
dXNoKEBpbXBsQ29udGVudEludGVybmFscywgIiAgICAiIC4gQ29udmVydFRvVjhTdHJpbmdSZXNv
dXJjZSgkYXR0cmlidXRlLT5zaWduYXR1cmUsICRuYXRpdmVUeXBlLCAidiIsICR2YWx1ZSwgIlZP
SUQiKSAuICJcbiIpOwogICAgICAgICB9IGVsc2lmICgkYXJyYXlUeXBlKSB7CisgICAgICAgICAg
ICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFs
dWUiLCAiaW5mby5HZXRJc29sYXRlKCkiKTsKICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
SW50ZXJuYWxzLCAiICAgIFZlY3RvcjwkYXJyYXlUeXBlPiB2ID0gJHZhbHVlO1xuIik7CisgICAg
ICAgIH0gZWxzaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IkVuZm9yY2VSYW5nZSJ9KSB7CisgICAgICAgICAgICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRp
dmUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLCAidmFsdWUiLCAiaW5mby5HZXRJc29sYXRlKCkiLCAi
Y2FuVGhyb3dFeGNlcHRpb24iKTsKKyAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50SW50ZXJu
YWxzLCAiICAgIFRZUEVDSEVDS19WT0lEKCRuYXRpdmVUeXBlLCB2LCAkdmFsdWUsIGluZm8uR2V0
SXNvbGF0ZSgpKTtcbiIpOwogICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgbXkgJHZhbHVl
ID0gSlNWYWx1ZVRvTmF0aXZlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgInZhbHVlIiwgImluZm8u
R2V0SXNvbGF0ZSgpIik7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudEludGVybmFscywg
IiAgICAkbmF0aXZlVHlwZSB2ID0gJHZhbHVlO1xuIik7CiAgICAgICAgIH0KICAgICB9CkBAIC0x
ODg4LDggKzE4OTMsMTMgQEAgc3ViIEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrCiAgICAgICAgICAg
ICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgICAgICByZXR1cm4gdGhyb3dU
eXBlRXJyb3IoMCwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICBW
OFRSWUNBVENIKCRuYXRpdmVUeXBlLCAkcGFyYW1ldGVyTmFtZSwgIiAuCi0gICAgICAgICAgICAg
ICAgIEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAkb3B0aW9uYWwgJiYgJG9wdGlvbmFsIGVx
ICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJhcmd1bWVudE9yTnVsbChhcmdzLCAkcGFyYW1JbmRl
eCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwgImFyZ3MuR2V0SXNvbGF0ZSgpIikgLiAiKTtcbiI7
CisgICAgICAgICAgICBpZiAoJHBhcmFtZXRlci0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkVuZm9y
Y2VSYW5nZSJ9KSB7CisgICAgICAgICAgICAgICAgbXkgJHZhbHVlID0gSlNWYWx1ZVRvTmF0aXZl
KCRwYXJhbWV0ZXIsICRvcHRpb25hbCAmJiAkb3B0aW9uYWwgZXEgIkRlZmF1bHRJc051bGxTdHJp
bmciID8gImFyZ3VtZW50T3JOdWxsKGFyZ3MsICRwYXJhbUluZGV4KSIgOiAiYXJnc1skcGFyYW1J
bmRleF0iLCAiYXJncy5HZXRJc29sYXRlKCkiLCAiY2FuVGhyb3dFeGNlcHRpb24iKTsKKyAgICAg
ICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICBWOFRSWUNBVENIX1dJVEhf
VFlQRUNIRUNLKCRuYXRpdmVUeXBlLCAkcGFyYW1ldGVyTmFtZSwgJHZhbHVlLCBhcmdzLkdldElz
b2xhdGUoKSk7XG4iOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBteSAk
dmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgJG9wdGlvbmFsICYmICRvcHRpb25h
bCBlcSAiRGVmYXVsdElzTnVsbFN0cmluZyIgPyAiYXJndW1lbnRPck51bGwoYXJncywgJHBhcmFt
SW5kZXgpIiA6ICJhcmdzWyRwYXJhbUluZGV4XSIsICJhcmdzLkdldElzb2xhdGUoKSIpOworICAg
ICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5h
dGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFsdWUpO1xuIjsKKyAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIGlmICgkbmF0aXZlVHlwZSBlcSAnRGljdGlvbmFyeScpIHsKICAgICAgICAgICAg
ICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIGlmICghJHBhcmFtZXRlck5hbWUuaXNV
bmRlZmluZWRPck51bGwoKSAmJiAhJHBhcmFtZXRlck5hbWUuaXNPYmplY3QoKSlcbiI7CiAgICAg
ICAgICAgICAgICAkcGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0dXJuIHRocm93
VHlwZUVycm9yKFwiTm90IGFuIG9iamVjdC5cIiwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKQEAg
LTM5NzcsMTYgKzM5ODcsMjcgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIG15ICRzaWduYXR1
cmUgPSBzaGlmdDsKICAgICBteSAkdmFsdWUgPSBzaGlmdDsKICAgICBteSAkZ2V0SXNvbGF0ZSA9
IHNoaWZ0OworICAgIG15ICRtYXlGYWlsID0gc2hpZnQ7CiAKICAgICBteSAkdHlwZSA9ICRzaWdu
YXR1cmUtPnR5cGU7CisgICAgbXkgJGludENvbnZlcnNpb24gPSAkc2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiRW5mb3JjZVJhbmdlIn0gPyAiRW5mb3JjZVJhbmdlIiA6ICJOb3JtYWxD
b252ZXJzaW9uIjsKKyAgICBkaWUgIkNhbid0IGhhbmRsZSBbRW5mb3JjZVJhbmdlXSB1bmxlc3Mg
Y2FsbGVkIGZyb20gY29udGV4dCB0aGF0IGhhbmRsZXMgZmFpbHVyZXMuIiBpZiAkaW50Q29udmVy
c2lvbiBlcSAiRW5mb3JjZVJhbmdlIiBhbmQgISRtYXlGYWlsOwogCiAgICAgcmV0dXJuICIkdmFs
dWUiIGlmICR0eXBlIGVxICJKU09iamVjdCI7CiAgICAgcmV0dXJuICIkdmFsdWUtPkJvb2xlYW5W
YWx1ZSgpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDwk
dHlwZT4oJHZhbHVlLT5OdW1iZXJWYWx1ZSgpKSIgaWYgJHR5cGUgZXEgImZsb2F0IiBvciAkdHlw
ZSBlcSAiZG91YmxlIjsKIAotICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBpZiAkdHlwZSBl
cSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKLSAgICByZXR1cm4gInRvVUludDMyKCR2YWx1
ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hv
cnQiOwotICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQg
bG9uZyBsb25nIiBvciAkdHlwZSBlcSAibG9uZyBsb25nIjsKKyAgICBpZiAoJG1heUZhaWwpIHsK
KyAgICAgICAgcmV0dXJuICJ0b0ludDMyKCR2YWx1ZSwgJGludENvbnZlcnNpb24sIG9rKSIgaWYg
JHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9V
SW50MzIoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2spIiBpZiAkdHlwZSBlcSAidW5zaWduZWQg
bG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b0lu
dDY0KCR2YWx1ZSwgJGludENvbnZlcnNpb24sIG9rKSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyI7
CisgICAgICAgIHJldHVybiAidG9VSW50NjQoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2spIiBp
ZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsKKyAgICB9IGVsc2UgeworICAgICAgICBy
ZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmciIG9yICR0eXBlIGVxICJz
aG9ydCI7CisgICAgICAgIHJldHVybiAidG9VSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVu
c2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1bnNpZ25lZCBzaG9ydCI7CisgICAgICAgIHJldHVy
biAidG9JbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyBsb25nIjsKKyAgICAgICAgcmV0
dXJuICJ0b1VJbnQ2NCgkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIjsK
KyAgICB9CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDxSYW5nZTo6Q29tcGFyZUhvdz4oJHZhbHVl
LT5JbnQzMlZhbHVlKCkpIiBpZiAkdHlwZSBlcSAiQ29tcGFyZUhvdyI7CiAgICAgcmV0dXJuICJ0
b1dlYkNvcmVEYXRlKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJEYXRlIjsKICAgICByZXR1cm4gInRv
RE9NU3RyaW5nTGlzdCgkdmFsdWUsICRnZXRJc29sYXRlKSIgaWYgJHR5cGUgZXEgIkRPTVN0cmlu
Z0xpc3QiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExB
dHRyaWJ1dGVzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmli
dXRlcy50eHQKaW5kZXggOGVkYWMxMjg3MWFjNGQxMzExNzU2ZmVjMjllMzI4ODc1MTYyODE3YS4u
MjhjYmVlM2VkNjQyNzNlYzliYjJjZDBmMzhmNjRlZDFhYTMyOTE5NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0CkBAIC01Miw2ICs1
Miw3IEBAIERvTm90Q2hlY2tDb25zdGFudHMKIERvTm90Q2hlY2tTZWN1cml0eQogRG9Ob3RDaGVj
a1NlY3VyaXR5T25HZXR0ZXIKIERvTm90Q2hlY2tTZWN1cml0eU9uU2V0dGVyCitFbmZvcmNlUmFu
Z2UKIEV2ZW50VGFyZ2V0CiBFeHRlbmRzRE9NR2xvYmFsT2JqZWN0CiBHZW5lcmF0ZUlzUmVhY2hh
YmxlPUltcGxEb2N1bWVudHxJbXBsRWxlbWVudFJvb3R8SW1wbE93bmVyTm9kZVJvb3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAppbmRleCAy
NGEwZTZjMDlhMzg2YjZiZmFmZGIwZGNjZWJhOWQyZWYyNTU2NDc4Li5mNTRiY2E3YmNkNjQ5YjM5
YjdjZmU1YWFjMDA4MjQzNDA4NDM5MjJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCkBAIC0xNTAsNiArMTUwLDE5IEBAIGVudW0gVGVz
dEVudW1UeXBlIHsgIiIsICJFbnVtVmFsdWUxIiwgIkVudW1WYWx1ZTIiLCAiRW51bVZhbHVlMyIg
fTsKICAgICBzdGF0aWMgdm9pZCAgICBzdGF0aWNNZXRob2RXaXRoQ2FsbGJhY2tBcmcoaW4gW0Nh
bGxiYWNrXSBUZXN0Q2FsbGJhY2sgY2FsbGJhY2spOwogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFRF
U1RJTkdfVjgpCisgICAgLy8gJ0VuZm9yY2VSYW5nZScgZXh0ZW5kZWQgYXR0cmlidXRlCisgICAg
dm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzIoaW4gW0VuZm9yY2VSYW5nZV0gbG9u
ZyB2YWx1ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyKGluIFtF
bmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgdmFsdWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0
aEVuZm9yY2VSYW5nZUludDY0KGluIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyB2YWx1ZSk7Cisg
ICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0KGluIFtFbmZvcmNlUmFuZ2Vd
IHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSk7CisKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5n
ZV0gbG9uZyBlbmZvcmNlZFJhbmdlTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFu
Z2VdIHVuc2lnbmVkIGxvbmcgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHI7CisgICAgYXR0
cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRy
OworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGxvbmcgZW5mb3Jj
ZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyOworI2VuZGlmCisKICAgICAvLyAnQ29uZGl0aW9u
YWwnIGV4dGVuZGVkIGF0dHJpYnV0ZQogICAgIFtDb25kaXRpb25hbD1Db25kaXRpb24xXSBhdHRy
aWJ1dGUgbG9uZyBjb25kaXRpb25hbEF0dHIxOwogICAgIFtDb25kaXRpb25hbD1Db25kaXRpb24x
JkNvbmRpdGlvbjJdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0cjI7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCmlu
ZGV4IDVlYjQxZTVkNjZjY2FkZDkzNThiOTkyOTVhMTExMTFmMWJlMzc2OGIuLjhkOTFmMjE1ZDI3
YzkwYTEzZjJiZjZlYzQxYjIxOThlMDgyNmI0NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCkBAIC0zMjEsNyArMzIx
LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB1bnNpZ25lZExvbmdMb25nQXR0ckF0
dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djgKIHN0YXRpYyB2b2lkIHVuc2lnbmVkTG9uZ0xv
bmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgVGVz
dE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKLSAgICB1bnNp
Z25lZCBsb25nIGxvbmcgdiA9IHRvSW50NjQodmFsdWUpOworICAgIHVuc2lnbmVkIGxvbmcgbG9u
ZyB2ID0gdG9VSW50NjQodmFsdWUpOwogICAgIGltcC0+c2V0VW5zaWduZWRMb25nTG9uZ0F0dHIo
dik7CiAgICAgcmV0dXJuOwogfQpAQCAtMTA1Nyw2ICsxMDU3LDEwMiBAQCBzdGF0aWMgdm9pZCB3
aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlQXR0clNldHRlckNhbGxiYWNr
KHY4OjpMb2NhbAogICAgIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0QXJndW1lbnRzQW5k
Q2FsbFN0YWNrQXR0cmlidXRlQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7CiB9CiAKK3N0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRl
cih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVy
KCkpOworICAgIHJldHVybiB2OEludGVnZXIoaW1wLT5lbmZvcmNlZFJhbmdlTG9uZ0F0dHIoKSwg
aW5mby5HZXRJc29sYXRlKCkpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVu
Zm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICByZXR1cm4gVGVz
dE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5m
byk7Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJTZXR0ZXIodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0
b0ludDMyKHZhbHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOworICAg
IGltcC0+c2V0RW5mb3JjZWRSYW5nZUxvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3Rh
dGljIHZvaWQgZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6
OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRS
YW5nZUxvbmdBdHRyQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyR2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBp
bmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xk
ZXIoKSk7CisgICAgcmV0dXJuIHY4VW5zaWduZWRJbnRlZ2VyKGltcC0+ZW5mb3JjZWRSYW5nZVVu
c2lnbmVkTG9uZ0F0dHIoKSwgaW5mby5HZXRJc29sYXRlKCkpOworfQorCitzdGF0aWMgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlckNh
bGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVu
c2lnbmVkTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJp
bmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5m
by5Ib2xkZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQodW5zaWduZWQsIHYsIHRvVUludDMyKHZh
bHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0
RW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHIodik7CisgICAgcmV0dXJuOworfQorCitzdGF0
aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJTZXR0ZXJDYWxsYmFjayh2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9ialY4SW50ZXJuYWw6OmVu
Zm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7
Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdMb25n
QXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2
ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4gdjg6Ok51bWJlcjo6TmV3KHN0YXRpY19jYXN0
PGRvdWJsZT4oaW1wLT5lbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyKCkpKTsKK30KKworc3RhdGlj
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRl
ckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5n
ZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2b2lkIGVu
Zm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9s
ZGVyKCkpOworICAgIFRZUEVDSEVDS19WT0lEKGxvbmcgbG9uZywgdiwgdG9JbnQ2NCh2YWx1ZSwg
RW5mb3JjZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9y
Y2VkUmFuZ2VMb25nTG9uZ0F0dHIodik7CisgICAgcmV0dXJuOworfQorCitzdGF0aWMgdm9pZCBl
bmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxv
bmdMb25nQXR0ckF0dHJTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOworfQorCitzdGF0aWMgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJH
ZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhv
bGRlcigpKTsKKyAgICByZXR1cm4gdjg6Ok51bWJlcjo6TmV3KHN0YXRpY19jYXN0PGRvdWJsZT4o
aW1wLT5lbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIoKSkpOworfQorCitzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0
dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9y
Y2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisK
K3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgVFlQRUNIRUNLX1ZPSUQodW5zaWdu
ZWQgbG9uZyBsb25nLCB2LCB0b1VJbnQ2NCh2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayksIGluZm8u
R2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNldEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25n
QXR0cih2KTsKKyAgICByZXR1cm47Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VVbnNp
Z25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCit7CisgICAgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExv
bmdMb25nQXR0ckF0dHJTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOworfQorCiAjaWYgRU5BQkxF
KENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxB
dHRyMUF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCkBAIC0yMTc3LDYgKzIyNzMsNjYgQEAgc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBzdGF0aWNNZXRob2RXaXRoQ2FsbGJhY2tBcmdNZXRob2RDYWxsYmFjayhjb25z
dCB2ODoKICAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6OnN0YXRpY01ldGhvZFdpdGhDYWxs
YmFja0FyZ01ldGhvZChhcmdzKTsKIH0KIAorc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBt
ZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05v
dEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBp
bXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hf
V0lUSF9UWVBFQ0hFQ0soaW50LCB2YWx1ZSwgdG9JbnQzMihhcmdzWzBdLCBFbmZvcmNlUmFuZ2Us
IG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5n
ZUludDMyKHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2RDYWxs
YmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJ
bnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyTWV0aG9kKGFyZ3MpOworfQorCitz
dGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzJN
ZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgo
KSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3Mu
R2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFy
Z3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodW5zaWduZWQsIHZh
bHVlLCB0b1VJbnQzMihhcmdzWzBdLCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRl
KCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMih2YWx1ZSk7CisgICAg
cmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMk1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1
bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRo
RW5mb3JjZVJhbmdlVUludDMyTWV0aG9kKGFyZ3MpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NE1ldGhvZChjb25zdCB2ODo6QXJn
dW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0
dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAg
VjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyhsb25nIGxvbmcsIHZhbHVlLCB0b0ludDY0KGFyZ3Nb
MF0sIEVuZm9yY2VSYW5nZSwgb2spLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRo
b2RXaXRoRW5mb3JjZVJhbmdlSW50NjQodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgp
OworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VJbnQ2NE1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAg
cmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRNZXRo
b2QoYXJncyk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVu
Zm9yY2VSYW5nZVVJbnQ2NE1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAg
IGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJn
dW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVD
SEVDSyh1bnNpZ25lZCBsb25nIGxvbmcsIHZhbHVlLCB0b1VJbnQ2NChhcmdzWzBdLCBFbmZvcmNl
UmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9y
Y2VSYW5nZVVJbnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1l
dGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRl
c3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0TWV0aG9kKGFyZ3Mp
OworfQorCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gY29uZGl0aW9uYWxNZXRob2QxTWV0aG9kKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3Mp
CkBAIC0yODgyLDYgKzMwMzgsMTQgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6
QmF0Y2hlZEF0dHJpYnV0ZSBWOFRlc3RPYmpBdHRyc1tdID0gewogICAgIHsid2l0aFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGUiLCBUZXN0T2Jq
VjhJbnRlcm5hbDo6d2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhT
cGFjZXNBdHRyaWJ1dGVBdHRyR2V0dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjp3aXRo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZUF0
dHJTZXR0ZXJDYWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNz
Q29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+
KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCiAgICAgLy8gQXR0cmlidXRlICd3aXRo
U2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0YWNrQXR0cmlidXRlJyAoVHlwZTogJ2F0dHJpYnV0ZScg
RXh0QXR0cjogJ0NhbGxXaXRoJykKICAgICB7IndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3Rh
Y2tBdHRyaWJ1dGUiLCBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENh
bGxTdGFja0F0dHJpYnV0ZUF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6Ondp
dGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRyU2V0dGVyQ2FsbGJhY2ss
IDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZB
VUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyog
b24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdBdHRy
JyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZv
cmNlZFJhbmdlTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdB
dHRyQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxv
bmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4
OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0
dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1
dGUgJ2VuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0
QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0
ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJH
ZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExv
bmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4
OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0
dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1
dGUgJ2VuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRy
OiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHIiLCBUZXN0
T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFj
aywgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVy
Q2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+
KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9u
ZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9y
Y2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIiLCBUZXN0
T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRl
ckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xv
bmdBdHRyQXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4
OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0
dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKICNpZiBFTkFCTEUoQ29u
ZGl0aW9uMSkKICAgICAvLyBBdHRyaWJ1dGUgJ2NvbmRpdGlvbmFsQXR0cjEnIChUeXBlOiAnYXR0
cmlidXRlJyBFeHRBdHRyOiAnQ29uZGl0aW9uYWwnKQogICAgIHsiY29uZGl0aW9uYWxBdHRyMSIs
IFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbEF0dHIxQXR0ckdldHRlckNhbGxiYWNrLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9uYWxBdHRyMUF0dHJTZXR0ZXJDYWxsYmFjaywgMCAv
KiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQp
LCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBp
bnN0YW5jZSAqL30sCkBAIC0yOTY2LDYgKzMxMzAsMTAgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29u
ZmlndXJhdGlvbjo6QmF0Y2hlZE1ldGhvZCBWOFRlc3RPYmpNZXRob2RzW10gPSB7CiAgICAgeyJt
ZXRob2RXaXRoQ2FsbGJhY2tBcmciLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aENhbGxi
YWNrQXJnTWV0aG9kQ2FsbGJhY2t9LAogICAgIHsibWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5k
Q2FsbGJhY2tBcmciLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJn
QW5kQ2FsbGJhY2tBcmdNZXRob2RDYWxsYmFja30sCiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tB
bmRPcHRpb25hbEFyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBbmRP
cHRpb25hbEFyZ01ldGhvZENhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJ
bnQzMiIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRo
b2RDYWxsYmFja30sCisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyIiwgVGVzdE9i
alY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzJNZXRob2RDYWxsYmFja30s
CisgICAgeyJtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6
bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kQ2FsbGJhY2t9LAorICAgIHsibWV0aG9k
V2l0aEVuZm9yY2VSYW5nZVVJbnQ2NCIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5m
b3JjZVJhbmdlVUludDY0TWV0aG9kQ2FsbGJhY2t9LAogI2lmIEVOQUJMRShDb25kaXRpb24xKQog
ICAgIHsiY29uZGl0aW9uYWxNZXRob2QxIiwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFs
TWV0aG9kMU1ldGhvZENhbGxiYWNrfSwKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAKaW5kZXgg
NjEyOWQxMWQ3MTNmMmRhOTQ3ZWU4Y2NhYTAyMWY5YjUxMjc1MzEyNy4uMGZhZDg0ZTM5YWZiYWVl
MDJmOWY3YTA0M2VjNmE5NzJkMjdiNDgwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwCkBAIC05NCw3
ICs5NCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0F0
dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4CiBzdGF0aWMgdm9pZCB1bnNpZ25lZExv
bmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2Nh
bDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAg
IFRlc3RUeXBlZGVmcyogaW1wID0gVjhUZXN0VHlwZWRlZnM6OnRvTmF0aXZlKGluZm8uSG9sZGVy
KCkpOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5z
aWduZWQgbG9uZyBsb25nIHYgPSB0b1VJbnQ2NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNpZ25l
ZExvbmdMb25nQXR0cih2KTsKICAgICByZXR1cm47CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvVjhCaW5kaW5nLmNwcAppbmRleCBjNTA1M2JhOWNjOWZjNWViM2RlN2M2YWM4NzE5ZmE0ZjFj
YTI1N2I0Li4wYmRiNmIwODhhYjFmYTg4MWMxNjg4Y2M4ODQ4Zjk5MzNlZmJiZjk1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAKQEAgLTEwMyw0MCArMTAzLDQ4IEBA
IFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4gdG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBjYWxsYmFjaykKICAgICByZXR1cm4gTm9kZUZpbHRlcjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNv
bmRpdGlvbjo6Y3JlYXRlKGNhbGxiYWNrKSk7CiB9CiAKLWludCB0b0ludDMyKHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCitjb25zdCBpbnQzMl90IGtNaW5JbnQzMiA9IC0w
eDgwMDAwMDAwOworY29uc3QgaW50MzJfdCBrTWF4SW50MzIgPSAweDdmZmZmZmZmOworY29uc3Qg
dWludDMyX3Qga01heFVJbnQzMiA9IDB4ZmZmZmZmZmY7CisKK2ludDMyX3QgdG9JbnQzMih2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBj
b25maWd1cmF0aW9uLCBib29sJiBvaykKIHsKICAgICBvayA9IHRydWU7Ci0gICAgCisKICAgICAv
LyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhbHJlYWR5IGEgMzItYml0IGludGVnZXIuCiAgICAg
aWYgKHZhbHVlLT5Jc0ludDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1ZSgp
OwotICAgIAorCiAgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/
CiAgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJl
cigpOwogICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFs
c2U7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICAKKworICAgIGlmIChjb25maWd1cmF0
aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+
VmFsdWUoKTsKKyAgICAgICAgaWYgKHN0ZDo6aXNuYW4oeCkgfHwgc3RkOjppc2luZih4KSkgewor
ICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9
CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAg
IGlmICh4IDwga01pbkludDMyIHx8IHggPiBrTWF4SW50MzIpIHsKKyAgICAgICAgICAgIG9rID0g
ZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVy
biB4OworICAgIH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8gbmFuIG9yIHRv
IGFuIGluZmluaXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9iamVjdC0+VmFs
dWUoKTsKLSAgICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihudW1i
ZXJWYWx1ZSkpIHsKLSAgICAgICAgb2sgPSBmYWxzZTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAg
fQotICAgIAotICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgMzItYml0IGlu
dGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpJbnQzMj4gaW50VmFsdWUgPSB2YWx1ZS0+VG9JbnQz
MigpOwotICAgIGlmIChpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsKLSAgICAgICAgb2sgPSBmYWxzZTsK
KyAgICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihudW1iZXJWYWx1
ZSkpCiAgICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBSZXR1cm4gdGhlIHJl
c3VsdCBvZiB0aGUgaW50MzIgY29udmVyc2lvbi4KLSAgICByZXR1cm4gaW50VmFsdWUtPlZhbHVl
KCk7CisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+SW50MzJWYWx1ZSgpOwogfQotICAgIAotdWlu
dDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKKwor
dWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJbnRlZ2VyQ29u
dmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCiB7CiAgICAgb2sg
PSB0cnVlOwogCkBAIC0xNDQsMTAgKzE1MiwxNiBAQCB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKQogICAgIGlmICh2YWx1ZS0+SXNVaW50MzIo
KSkKICAgICAgICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgpOwogCisgICAgLy8gRmFzdCBj
YXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgc2lnbmVkIGludGVnZXIgLSBwb3NzaWJseSBwb3Np
dGl2ZT8KICAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgewogICAgICAgICBpbnQzMl90IHJlc3Vs
dCA9IHZhbHVlLT5JbnQzMlZhbHVlKCk7CiAgICAgICAgIGlmIChyZXN1bHQgPj0gMCkKICAgICAg
ICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9y
Y2VSYW5nZSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAw
OworICAgICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogCiAgICAgLy8gQ2Fu
IHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CkBAIC0xNTcsMjEgKzE3MSwxMTAg
QEAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBv
aykKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCisgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0g
RW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgp
OworICAgICAgICBpZiAoc3RkOjppc25hbih4KSB8fCBzdGQ6OmlzaW5mKHgpKSB7CisgICAgICAg
ICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAg
ICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYgKHgg
PCAwIHx8IHggPiBrTWF4VUludDMyKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAg
ICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsKKyAgICB9CisK
ICAgICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZpbml0eT8K
ICAgICBkb3VibGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0gICAgaWYg
KHN0ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKSB7Cisg
ICAgaWYgKHN0ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUp
KQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gbnVtYmVyT2JqZWN0LT5VaW50MzJWYWx1
ZSgpOworfQorCitpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJ
bnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCit7
CisgICAgb2sgPSB0cnVlOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1i
aXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkKKyAgICAgICAgcmV0dXJuIHZh
bHVlLT5JbnQzMlZhbHVlKCk7CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0
byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFs
dWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAg
ICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAgLy8gQ2FuIHRo
ZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlcj8KLSAgICB2
ODo6TG9jYWw8djg6OlVpbnQzMj4gdWludFZhbHVlID0gdmFsdWUtPlRvVWludDMyKCk7Ci0gICAg
aWYgKHVpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsKKyAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+
VmFsdWUoKTsKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAg
ICAgICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7
CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHggPCAwID8g
LTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IC0oa0pTTWF4SW50ZWdl
ciAtIDEpIHx8IHggPiAoa0pTTWF4SW50ZWdlciAtIDEpKSB7CisgICAgICAgICAgICBvayA9IGZh
bHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHg7
CisgICAgfQorCisgICAgLy8gTmFOcyBhbmQgKy8tSW5maW5pdHkgc2hvdWxkIGJlIDAsIG90aGVy
d2lzZSBtb2R1bG8gMl42NC4KKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgaW50ZWdlcjsKKyAgICBk
b3VibGVUb0ludGVnZXIoeCwgaW50ZWdlcik7CisgICAgcmV0dXJuIGludGVnZXI7Cit9CisKK3Vp
bnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZl
cnNpb25Db25maWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQoreworICAgIG9rID0g
dHJ1ZTsKKworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IHVuc2lnbmVk
IGludGVnZXIuCisgICAgaWYgKHZhbHVlLT5Jc1VpbnQzMigpKQorICAgICAgICByZXR1cm4gdmFs
dWUtPlVpbnQzMlZhbHVlKCk7CisKKyAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMy
LWJpdCBpbnRlZ2VyLgorICAgIGlmICh2YWx1ZS0+SXNJbnQzMigpKSB7CisgICAgICAgIGludDMy
X3QgcmVzdWx0ID0gdmFsdWUtPkludDMyVmFsdWUoKTsKKyAgICAgICAgaWYgKHJlc3VsdCA+PSAw
KQorICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb24g
PT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAg
cmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9CisKKyAg
ICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIG51bWJlcj8KKyAgICB2ODo6TG9j
YWw8djg6Ok51bWJlcj4gbnVtYmVyT2JqZWN0ID0gdmFsdWUtPlRvTnVtYmVyKCk7CisgICAgaWYg
KG51bWJlck9iamVjdC5Jc0VtcHR5KCkpIHsKICAgICAgICAgb2sgPSBmYWxzZTsKICAgICAgICAg
cmV0dXJuIDA7CiAgICAgfQogCi0gICAgcmV0dXJuIHVpbnRWYWx1ZS0+VmFsdWUoKTsKKyAgICBk
b3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlmIChjb25maWd1cmF0aW9u
ID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICBpZiAoaXNuYW4oeCkgfHwgaXNpbmYoeCkpIHsK
KyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
fQorICAgICAgICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAg
ICBpZiAoeCA8IDAgfHwgeCA+IChrSlNNYXhJbnRlZ2VyIC0gMSkpIHsKKyAgICAgICAgICAgIG9r
ID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1
cm4geDsKKyAgICB9CisKKyAgICAvLyBOYU5zIGFuZCArLy1JbmZpbml0eSBzaG91bGQgYmUgMCwg
b3RoZXJ3aXNlIG1vZHVsbyAyXjY0LgorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnRlZ2VyOwor
ICAgIGRvdWJsZVRvSW50ZWdlcih4LCBpbnRlZ2VyKTsKKyAgICByZXR1cm4gaW50ZWdlcjsKIH0K
IAogdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGNyZWF0ZVJhd1RlbXBsYXRl
KHY4OjpJc29sYXRlKiBpc29sYXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhCaW5kaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcu
aAppbmRleCBiYzExMjVlNzNhMDlhNjA3NjkwMDA1NjEzMWExMzVjMmIwMWEzOGJhLi4wNDRjNTRk
NzQ4NGEzOWI1MGZlYmI3MGQwNTJkZWFhNjYzMDk1MmE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOEJpbmRpbmcuaApAQCAtNTYsNiArNTYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgY2xhc3MgV29ybGRDb250ZXh0SGFuZGxlOwogCiAgICAgY29uc3QgaW50IGtNYXhSZWN1cnNp
b25EZXB0aCA9IDIyOworICAgIGNvbnN0IGxvbmcgbG9uZyBrSlNNYXhJbnRlZ2VyID0gMHgyMDAw
MDAwMDAwMDAwMExMOwogCiAgICAgLy8gU2NoZWR1bGUgYSBET00gZXhjZXB0aW9uIHRvIGJlIHRo
cm93biwgaWYgdGhlIGV4Y2VwdGlvbiBjb2RlIGlzIGRpZmZlcmVudAogICAgIC8vIGZyb20gemVy
by4KQEAgLTI0MywzNiArMjQ0LDY2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiB2OEFycmF5KFBhc3NSZWZQdHI8RE9NU3RyaW5nTGlzdD4sIHY4OjpJ
c29sYXRlKik7CiAKLSAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgaW50ZWdlci4g
VGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCi0gICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZl
cnRlZCB0byBhbiBpbnRlZ2VyIG9yIGNvbnZlcnRzIHRvIG5hbiBvciB0byBhbiBpbmZpbml0eS4K
LSAgICBpbnQgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIGJvb2wmIG9rKTsKKyAgICAv
LyBDb252ZXJzaW9uIGZsYWdzLCB1c2VkIGluIHRvSW50WFgvdG9VSW50WFguCisgICAgZW51bSBJ
bnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24geworICAgICAgICBOb3JtYWxDb252ZXJzaW9u
LAorICAgICAgICBFbmZvcmNlUmFuZ2UsCisgICAgICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgQ2xh
bXAKKyAgICB9OworCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHNpZ25lZCBp
bnRlZ2VyLiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3Qg
YmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURM
OgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtbG9uZworICAgIGludDMy
X3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJzaW9uQ29uZmln
dXJhdGlvbiwgYm9vbCYgb2spOworICAgIGlubGluZSBpbnQzMl90IHRvSW50MzIodjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykgeyByZXR1cm4gdG9JbnQzMih2YWx1ZSwgTm9y
bWFsQ29udmVyc2lvbiwgb2spOyB9CiAKICAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1i
aXQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KLSAgICBpbmxp
bmUgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQorICAgIGlubGluZSBp
bnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKICAgICAg
ICAgYm9vbCBvazsKLSAgICAgICAgcmV0dXJuIHRvSW50MzIodmFsdWUsIG9rKTsKKyAgICAgICAg
cmV0dXJuIHRvSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsKICAgICB9CiAKICAg
ICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlci4gVGhlIGNv
bnZlcnNpb24gZmFpbHMgaWYgdGhlCi0gICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0
byBhbiB1bnNpZ25lZCBpbnRlZ2VyIG9yIGNvbnZlcnRzIHRvIG5hbiBvciB0byBhbiBpbmZpbml0
eS4KLSAgICB1aW50MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIGJvb2wmIG9r
KTsKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSBy
YW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dl
YklETC8jZXMtdW5zaWduZWQtbG9uZworICAgIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8
djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7Cisg
ICAgaW5saW5lIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwg
Ym9vbCYgb2spIHsgcmV0dXJuIHRvVUludDMyKHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7
IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2Vy
IGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgogICAgIGlubGluZSB1aW50MzJf
dCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAgICBi
b29sIG9rOwotICAgICAgICByZXR1cm4gdG9VSW50MzIodmFsdWUsIG9rKTsKKyAgICAgICAgcmV0
dXJuIHRvVUludDMyKHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CiAgICAgfQogCi0gICAg
aW5saW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8g
Q29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHNpZ25lZCBpbnRlZ2VyLiBUaGUgY29udmVyc2lv
biBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgbnVt
YmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAgIC8vIGh0dHA6Ly93d3cu
dzMub3JnL1RSL1dlYklETC8jZXMtbG9uZy1sb25nCisgICAgaW50NjRfdCB0b0ludDY0KHY4OjpI
YW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uLCBib29sJiBv
ayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgaW50ZWdlciBhc3N1bWlu
ZyB0aGUgY29udmVyc2lvbiBjYW5ub3QgZmFpbC4KKyAgICBpbmxpbmUgaW50NjRfdCB0b0ludDY0
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBzdGF0
aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZhbHVlKCkpOworICAgICAgICBib29sIG9rOwor
ICAgICAgICByZXR1cm4gdG9JbnQ2NCh2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwogICAg
IH0KIAotICAgIGlubGluZSBsb25nIGxvbmcgdG9JbnQ2NCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2
YWx1ZSkKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdl
ci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNv
bnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAg
ICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLXVuc2lnbmVkLWxvbmctbG9uZwor
ICAgIHVpbnQ2NF90IHRvVUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZl
cnNpb25Db25maWd1cmF0aW9uLCBib29sJiBvayk7CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUg
dG8gYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5u
b3QgZmFpbC4KKyAgICBpbmxpbmUgdWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2ODo6VmFs
dWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGxvbmcgbG9uZz4o
dmFsdWUtPkludGVnZXJWYWx1ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAgICAgICAgcmV0dXJu
IHRvVUludDY0KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CisgICAgfQorCisgICAgaW5s
aW5lIGZsb2F0IHRvRmxvYXQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgeworICAg
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1ZSgpKTsKICAg
ICB9CiAKICAgICB0ZW1wbGF0ZTxjbGFzcyBUPiBzdHJ1Y3QgTmF0aXZlVmFsdWVUcmFpdHM7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCmluZGV4IDZmZWI1
M2UxZDY3YjA0NTJiYjY3MzkwNWNjZDc2ZGI0NzMxYTBjYzguLmQ4ZDhhNGU3OWZhNmY2YTQwYjNj
Mjk4YWZlYjIzMWEzYTNjOWY4MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1Y4QmluZGluZ01hY3Jvcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4
QmluZGluZ01hY3Jvcy5oCkBAIC0zMyw2ICszMywxNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKKyNkZWZpbmUgVFlQRUNIRUNLX1ZPSUQodHlwZSwgdmFyLCB2YWx1ZSwgaXNvbGF0ZSkgXAor
ICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
eyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
Ym9vbCBvayA9IHRydWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB2YXIg
PSAodmFsdWUpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGlmIChVTkxJ
S0VMWSghb2spKSB7ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHRocm93VHlw
ZUVycm9yKDAsIGlzb2xhdGUpOyAgICAgICAgICAgXAorICAgICAgICAgICAgcmV0dXJuOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9CisKICNkZWZpbmUgVjhUUllDQVRDSCh0eXBl
LCB2YXIsIHZhbHVlKSBcCiAgICAgdHlwZSB2YXI7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCkBAIC00Miw2
ICs1MywyMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICByZXR1cm4gYmxvY2su
UmVUaHJvdygpOyAgICAgICBcCiAgICAgfQogCisjZGVmaW5lIFY4VFJZQ0FUQ0hfV0lUSF9UWVBF
Q0hFQ0sodHlwZSwgdmFyLCB2YWx1ZSwgaXNvbGF0ZSkgXAorICAgIHR5cGUgdmFyOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAg
IGJvb2wgb2sgPSB0cnVlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgICAgIHY4OjpUcnlDYXRjaCBibG9jazsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICAgICAgICB2YXIgPSAodmFsdWUpOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgaWYgKGJsb2NrLkhhc0NhdWdodCgpKSAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICAgICByZXR1cm4gYmxvY2su
UmVUaHJvdygpOyAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAoVU5M
SUtFTFkoIW9rKSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBpc29sYXRlKTsgICAgICAgICAgICAgICBcCisg
ICAgfQorCiAjZGVmaW5lIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UodHlwZSwgdmFy
LCB2YWx1ZSkgXAogICAgIHR5cGUgdmFyKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKICAgICBpZiAoIXZhci5wcmVwYXJlKCkpICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBl
Q29udmVyc2lvbnMuaAppbmRleCAyNGIzM2RkMTgyZWVkYzgzMWY2YTVhNTE5MTljODRkNDNlYzAx
ZGQ3Li44ZGUxMDJmMmEyNDc3ZGUxMDA5NTgzNjM4ODY3MmRhNTgxMGM4OGY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKQEAgLTM2LDI1ICszNiwzMyBAQCBjbGFz
cyBUeXBlQ29udmVyc2lvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxUeXBlQ29udmVyc2lvbnM+IHsK
IHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxUeXBlQ29udmVyc2lvbnM+IGNyZWF0ZSgp
IHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBUeXBlQ29udmVyc2lvbnMoKSk7IH0KIAotICAgIGxvbmcg
dGVzdExvbmcoKSB7IHJldHVybiBtX3Rlc3RMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0TG9uZyhs
b25nIHZhbHVlKSB7IG1fdGVzdExvbmcgPSB2YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxvbmcgdGVz
dFVuc2lnbmVkTG9uZygpIHsgcmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9uZzsgfQotICAgIHZvaWQg
c2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVk
TG9uZyA9IHZhbHVlOyB9CisgICAgbG9uZyB0ZXN0TG9uZygpIHsgcmV0dXJuIG1fbG9uZzsgfQor
ICAgIHZvaWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX2xvbmcgPSB2YWx1ZTsgfQorICAg
IGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmcoKSB7IHJldHVybiBtX2xvbmc7IH0KKyAgICB2b2lk
IHNldFRlc3RFbmZvcmNlUmFuZ2VMb25nKGxvbmcgdmFsdWUpIHsgbV9sb25nID0gdmFsdWU7IH0K
KyAgICB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVk
TG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVl
KSB7IG1fdW5zaWduZWRMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZzsgfQorICAgIHZv
aWQgc2V0VGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7
IG1fdW5zaWduZWRMb25nID0gdmFsdWU7IH0KIAotICAgIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmco
KSB7IHJldHVybiBtX3Rlc3RMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdExvbmdMb25nKGxv
bmcgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RMb25nTG9uZyA9IHZhbHVlOyB9Ci0gICAgdW5zaWduZWQg
bG9uZyBsb25nIHRlc3RVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5zaWduZWRM
b25nTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9u
ZyBsb25nIHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIGxv
bmcgbG9uZyB0ZXN0TG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdMb25nOyB9CisgICAgdm9pZCBz
ZXRUZXN0TG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQor
ICAgIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdM
b25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcobG9uZyBsb25nIHZh
bHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0
VW5zaWduZWRMb25nTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQorICAgIHZv
aWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1f
dW5zaWduZWRMb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmdMb25n
OyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyh1bnNpZ25l
ZCBsb25nIGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KIAogcHJp
dmF0ZToKICAgICBUeXBlQ29udmVyc2lvbnMoKQogICAgIHsKICAgICB9CiAKLSAgICBsb25nIG1f
dGVzdExvbmc7Ci0gICAgdW5zaWduZWQgbG9uZyBtX3Rlc3RVbnNpZ25lZExvbmc7Ci0gICAgbG9u
ZyBsb25nIG1fdGVzdExvbmdMb25nOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Rlc3RVbnNp
Z25lZExvbmdMb25nOworICAgIGxvbmcgbV9sb25nOworICAgIHVuc2lnbmVkIGxvbmcgbV91bnNp
Z25lZExvbmc7CisgICAgbG9uZyBsb25nIG1fbG9uZ0xvbmc7CisgICAgdW5zaWduZWQgbG9uZyBs
b25nIG1fdW5zaWduZWRMb25nTG9uZzsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbCBiL1Nv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbAppbmRleCAzNjdkMWY3ZWM0
ODQyZTQxZjZhYWEzMTBhYjIyYTliYzUwMWNmODRmLi5iMjdiMTU4ZDc2MzNiMzM0NTYxNmVlNWJj
N2ZlMzJjNmNlNTVhMmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVD
b252ZXJzaW9ucy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lv
bnMuaWRsCkBAIC0yOCw4ICsyOCwxMiBAQAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUK
IF0gaW50ZXJmYWNlIFR5cGVDb252ZXJzaW9ucyB7CiAgICAgYXR0cmlidXRlIGxvbmcgdGVzdExv
bmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxv
bmc7CiAgICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZzsKKyAgICBh
dHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nOwogCiAgICAgYXR0cmlidXRlIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmc7CisgICAg
YXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmc7CiAgICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9u
ZzsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIHRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlZmJhOTI2MmU4NzhiY2M0
ODhkMjg4MDE3ODI3YjRjMjNmNWE2OTA1Li4wOTRhYTA2NzFiNjBjNGE1ZDgzYzBjMTBlZWU4YjJj
MzNkMWFmMTk3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTMtMDMtMTEgIEpvc2h1YSBCZWxs
ICA8anNiZWxsQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIEJpbmRpbmc6IEltcGxlbWVu
dCBFbmZvcmNlUmFuZ2UgSURMIEF0dHJpYnV0ZSBmb3IgbG9uZyBsb25nIGNvbnZlcnNpb25zCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Njc5OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNvbWUgb2YgdGhl
IHRlc3RzIGZvciBIVE1MT3B0aW9uc0NvbGxlY3Rpb24uYWRkKCkgYXNzdW1lZCBpdCBzaG91bGQg
dGhyb3cgZm9yCisgICAgICAgIEluZmluaXRpZXMgYW5kIE5hTnMsIGJ1dCB0aGlzIGlzIG5vdCB3
aGF0IHRoZSBET00rV2ViSURMIHNwZWNzIHNheS4gKEZpcmVmb3ggZG9lc24ndCB0aHJvdworICAg
ICAgICBzbyB0aGlzIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIHdlYi1jb21wYXQgaXNzdWUuKSBU
aGlzIHVwZGF0ZXMgdGhlIHRlc3RzL2V4cGVjdGF0aW9ucyBzbworICAgICAgICB0aGF0IFY4IHBh
c3Nlcy4gSlNDIGV4cGVjdGF0aW9ucyBhcmUgRkFJTCBpbiBhIGZldyBwbGFjZXMgc2luY2UgaXQg
c3RpbGwgaW5jb3JyZWN0bHkgdGhyb3dzCisgICAgICAgIG9uIEluZmluaXR5L05hTiAtPiBpbnQz
MiBjb252ZXJzaW9uIChleGlzdGluZyB0ZXN0cykgYW5kIGRvZXMgbm90IGltcGxlbWVudCBFbmZv
cmNlUmFuZ2UKKyAgICAgICAgKG5ldyB0ZXN0cykuCisKKyAgICAgICAgVG5lIG5vbi1udW1lcmlj
LXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMgdGVzdCB3YXMgYWxzbyBicm9rZW4gZm9yIE5hTiB0
ZXN0aW5nLCByZXBvcnRpbmcKKyAgICAgICAgaW5jb3JyZWN0IHJlc3VsdHMgd2hpY2ggaGlkIHNv
bWUgb2YgdGhpcyBiZWhhdmlvci4KKworICAgICAgICAqIGZhc3QvZG9tL25vbi1udW1lcmljLXZh
bHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OiBGYWlsaW5nIGJlaGF2aW9yIGZv
ciBKU0MuCisgICAgICAgICogZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVl
cy1udW1lcmljLXBhcmFtZXRlcnMuanM6IEhUTUxPcHRpb25zQ29sbGVjdGlvbi5hZGQoKQorICAg
ICAgICBzaG91bGQgbm90IHRocm93IG9uIE5hTnMvSW5maW5pdGllcy4KKyAgICAgICAgKiBmYXN0
L2pzL3NjcmlwdC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQuanM6IERpdHRvLgorICAgICAgICAq
IGZhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4dDogRmFpbGluZyBiZWhhdmlv
ciBmb3IgSlNDLgorICAgICAgICAqIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3Rl
ZC50eHQ6IERpdHRvLgorICAgICAgICAqIGZhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1s
OiBBZGRlZCB0ZXN0IGNhc2VzIGZvciBbRW5mb3JjZVJhbmdlXQorICAgICAgICAqIHBsYXRmb3Jt
L2Nocm9taXVtL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMt
ZXhwZWN0ZWQudHh0OiBBZGRlZCAtIHBhc3NpbmcgYmVoYXZpb3IgZm9yIFY4LgorICAgICAgICAq
IHBsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4
dDogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9qcy93ZWJpZGwtdHlw
ZS1tYXBwaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogc3RvcmFnZS9pbmRleGVk
ZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQ6IEFkZGVkIG5vbi1maW5p
dGUgdGVzdCBjYXNlcy4KKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50
dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qczogRGl0dG8uCisKIDIwMTMtMDMtMTAgIE1hdHQgRmFs
a2VuaGFnZW4gIDxmYWxrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEltcGxlbWVudCBpbmVy
dCBzdWJ0cmVlcyBuZWVkZWQgZm9yIG1vZGFsIDxkaWFsb2c+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmlj
LXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CmluZGV4IDk3YmYxZTA2NzEyMzdlNjA2MzNjNjZmMGMx
Mzg4YzE2NzYxNDIyOGYuLjQ3MTNjNDI3ZWYwZDRiN2FmZDUyM2NlN2QxOTg5Nzk3ZGZiN2VmZWMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1l
cmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL25v
bi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0CkBAIC0yOCw3
ICsyOCw3IEBAIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuYm9keS5zY3JvbGxUb3Ag
PSB4JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3Vt
ZW50LmltYWdlcy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iikuc2V0U2VsZWN0aW9uUmFu
Z2UoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgn
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKS5zZXRTZWxlY3Rpb25SYW5nZSgwLCB4KScp
IGlzICdhbnkgdHlwZSBhbGxvd2VkJwotUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1M
T3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIiks
IHgpJykgaXMgJ251bWJlciBvciBudWxsIGFsbG93ZWQgKG9yIG9taXR0ZWQsIGJ1dCBub3QgaW5m
aW5pdGUpJworRkFJTCBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rp
b24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIiksIHgpJykgc2hvdWxkIGJl
IGFueSB0eXBlIGFsbG93ZWQuIFdhcyBtaXhlZC4KIFBBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3Jl
YXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkucmVtb3ZlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93
ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxTZWxlY3RFbGVtZW50KCkucmVt
b3ZlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUhUTUxTZWxlY3RFbGVtZW50KCkuaXRlbSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmlj
LXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3Jp
cHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy5qcwppbmRleCAy
ZTcwMDZjNWE5ZjJkNDkyMjFlYmYzNDI5OTQwM2ExOGYwYmY5YTZkLi41OGJlZDE2ODAzZmU3OGEx
NTc4M2M3MjBhZmI0NTQzZWY4ZTNmODU3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy5qcwor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvbm9uLW51bWVyaWMtdmFsdWVz
LW51bWVyaWMtcGFyYW1ldGVycy5qcwpAQCAtNjQsNyArNjQsNyBAQCBmdW5jdGlvbiBub25OdW1l
cmljUG9saWN5KHRlbXBsYXRlKQogICAgIHRyeSB7CiAgICAgICAgIGV2YWwodGVtcGxhdGUpOwog
ICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgTmFOQWxsb3dlZCA9IDA7CisgICAgICAgIG5hbkFs
bG93ZWQgPSAwOwogICAgIH0KIAogICAgIHZhciBvbWl0QWxsb3dlZCA9IC0xOyAvLyBtZWFucyAi
bm90IGFwcGxpY2FibGUiCkBAIC0yNDQsNyArMjQ0LDcgQEAgc2hvdWxkQmUoIm5vbk51bWVyaWNQ
b2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiKS5zZXRTZWxlY3Rpb25SYW5n
ZSgKIAogLy8gSFRNTE9wdGlvbnNDb2xsZWN0aW9uCiAKLXNob3VsZEJlKCJub25OdW1lcmljUG9s
aWN5KCdjcmVhdGVIVE1MT3B0aW9uc0NvbGxlY3Rpb24oKS5hZGQoZG9jdW1lbnQuY3JlYXRlRWxl
bWVudChcIm9wdGlvblwiKSwgeCknKSIsICInbnVtYmVyIG9yIG51bGwgYWxsb3dlZCAob3Igb21p
dHRlZCwgYnV0IG5vdCBpbmZpbml0ZSknIik7CitzaG91bGRCZSgibm9uTnVtZXJpY1BvbGljeSgn
Y3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
XCJvcHRpb25cIiksIHgpJykiLCAiJ2FueSB0eXBlIGFsbG93ZWQnIik7CiBzaG91bGRCZSgibm9u
TnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkucmVtb3ZlKHgpJyki
LCAiJ2FueSB0eXBlIGFsbG93ZWQnIik7CiAKIC8vIEhUTUxTZWxlY3RFbGVtZW50CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQu
anMgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQu
anMKaW5kZXggYTM1OGNlYTdlYmM2MGU1ZDVmOTU2MWJmODE2ZjZlNDQwMWRiN2UxOC4uYWFjZjk0
ZDYxMTNiYzcwNzhlYjIwODY5ODU3YTJlZmIyOGIyZmRlMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9qcy9zY3JpcHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL3NlbGVjdC1vcHRpb25zLWFkZC5qcwpAQCAtMjQ0
LDg0ICsyNDQsODQgQEAgZGVidWcoIiIpOwogCiBkZWJ1ZygiMi45IEFkZCBhbiBPcHRpb24gYXQg
aW5kZXggLUluZmluaXR5Iik7CiBvcHRpb24yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiT1BU
SU9OIik7Ci1zaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAtMS8wKSIp
Owotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNl
bGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGROb3RUaHJvdygic2VsZWN0Mi5vcHRp
b25zLmFkZChvcHRpb24yLCAtMS8wKSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5n
dGgiLCAiOCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIyIik7CiBkZWJ1
ZygiIik7CiAKIGRlYnVnKCIyLjEwIEFkZCBhbiBPcHRpb24gYXQgaW5kZXggTmFOIik7CiBvcHRp
b24yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiT1BUSU9OIik7Ci1zaG91bGRUaHJvdygic2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAwLzApIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEi
KTsKK3Nob3VsZE5vdFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAvMCkiKTsK
K3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjkiKTsKK3Nob3VsZEJlKCJzZWxl
Y3QyLnNlbGVjdGVkSW5kZXgiLCAiMyIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xMSBBZGQg
YW4gT3B0aW9uIGF0IGluZGV4IEluZmluaXR5Iik7CiBvcHRpb24yID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiT1BUSU9OIik7Ci1zaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRp
b24yLCAxLzApIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3Iik7Ci1z
aG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZE5vdFRocm93KCJz
ZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEvMCkiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9w
dGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4Iiwg
IjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTIgQWRkIGEgbm9uLU9wdGlvbiBlbGVtZW50
Iik7CiBvcHRpb24yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIik7CiBzaG91bGRUaHJv
dygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUoInNlbGVjdDIu
b3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIs
ICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxk
QmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIy
LjEzIEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpIik7CiBvcHRpb24yID0gIm8iOwogc2hvdWxk
VGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxl
Y3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5k
ZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3No
b3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1
ZygiMi4xNCBBZGQgYSBub24tZWxlbWVudCAobnVtYmVyKSIpOwogb3B0aW9uMiA9IDMuMTQ7CiBz
aG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0
ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIp
Oworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAK
IGRlYnVnKCIyLjE1IEFkZCBhIG5vbi1lbGVtZW50IChib29sZWFuKSIpOwogb3B0aW9uMiA9IHRy
dWU7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hv
dWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIu
c2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIs
ICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1Zygi
Iik7CiAKIGRlYnVnKCIyLjE2IEFkZCB1bmRlZmluZWQiKTsKIG9wdGlvbjIgPSB1bmRlZmluZWQ7
CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxk
QmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2Vs
ZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIx
MCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7
CiAKIGRlYnVnKCIyLjE3IEFkZCBudWxsIik7CiBvcHRpb24yID0gbnVsbDsKIHNob3VsZFRocm93
KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4Iiwg
IjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRC
ZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIu
MTggQWRkIG5lZ2F0aXZlIGluZmluaXR5Iik7CiBvcHRpb24yID0gLTEvMDsKIHNob3VsZFRocm93
KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4Iiwg
IjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRC
ZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIu
MTkgQWRkIE5hTiIpOwogb3B0aW9uMiA9IDAvMDsKIHNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlv
bnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIs
ICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJl
KCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxl
Y3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMjAgQWRkIHBvc2l0aXZl
IGluZmluaXR5Iik7CiBvcHRpb24yID0gMS8wOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwg
IjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVj
dGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9q
cy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0CmluZGV4IDdhNzc3NzgyZTU3NjMwZjc1
OWYwMDQzMzU1MjFhYTFjZTAwYmQ5YjIuLjMzMDU2ZmZhMGIwOWZhZDc0NGEzYWUwM2U0MGU2N2Rj
ZDU2NzkxM2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMt
YWRkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3NlbGVjdC1vcHRpb25z
LWFkZC1leHBlY3RlZC50eHQKQEAgLTE2Myw2NCArMTYzLDY0IEBAIFBBU1Mgc2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCBpcyA3CiBQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCiAKIDIuOSBB
ZGQgYW4gT3B0aW9uIGF0IGluZGV4IC1JbmZpbml0eQotUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRk
KG9wdGlvbjIsIC0xLzApIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6
IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFT
UyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMuYWRkKG9w
dGlvbjIsIC0xLzApIHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uLiBUaHJldyBleGNlcHRpb24g
RXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorRkFJTCBzZWxlY3Qy
Lm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSA4LiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IHNob3VsZCBiZSAyLiBXYXMgMS4KIAogMi4xMCBBZGQgYW4gT3B0aW9uIGF0IGluZGV4
IE5hTgotUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAvMCkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2Vs
ZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAx
CitGQUlMIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMC8wKSBzaG91bGQgbm90IHRocm93
IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9N
IEV4Y2VwdGlvbiAxNy4KK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgOS4g
V2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgMy4gV2FzIDEuCiAK
IDIuMTEgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBJbmZpbml0eQotUEFTUyBzZWxlY3QyLm9wdGlv
bnMuYWRkKG9wdGlvbjIsIDEvMCkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hF
cnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3
Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5h
ZGQob3B0aW9uMiwgMS8wKSBzaG91bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK0ZBSUwgc2Vs
ZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAyLjEyIEFkZCBhIG5vbi1PcHRpb24g
ZWxlbWVudAogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNl
bGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMg
MQorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlM
IHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTMgQWRkIGEg
bm9uLWVsZW1lbnQgKHN0cmluZykKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9u
IDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxl
Y3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAu
IFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgog
CiAyLjE0IEFkZCBhIG5vbi1lbGVtZW50IChudW1iZXIpCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5h
ZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjog
RE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNT
IHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGgg
c2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBi
ZSA0LiBXYXMgMS4KIAogMi4xNSBBZGQgYSBub24tZWxlbWVudCAoYm9vbGVhbikKIFBBU1Mgc2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVN
aXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVk
SW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAyLjE2IEFkZCB1bmRlZmluZWQKIFBBU1Mgc2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVN
aXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVk
SW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAyLjE3IEFkZCBudWxsCiBQQVNTIHNlbGVjdDIu
b3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0
Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBp
cyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9u
cy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4
IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xOCBBZGQgbmVnYXRpdmUgaW5maW5pdHkKIFBBU1Mg
c2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5
cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMu
bGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0
Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVj
dGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAyLjE5IEFkZCBOYU4KIFBBU1Mgc2VsZWN0
Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNt
YXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5k
ZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAyLjIwIEFkZCBwb3NpdGl2ZSBpbmZpbml0eQogUEFT
UyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9u
cy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxl
Y3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2Vs
ZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1t
YXBwaW5nLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFw
cGluZy1leHBlY3RlZC50eHQKaW5kZXggNWIyYThjZjE0ZDRlNmRlZTBhYjc0OWZhOGZjZjgxMDM5
YTc4ZDBkOC4uOWM1MmY1MDk0NTFlYTcwZGJkNmJhMDY1NGU2OGI2MGI4MGQ4NzkzMSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQu
dHh0CkBAIC02OSw2ICs2OSw4IEBAIGNvbnZlcnRlci50ZXN0TG9uZyA9IHRydWUKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICcnCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVy
dGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxsCkBAIC03Nyw2ICs3
OSw2OSBAQCBjb252ZXJ0ZXIudGVzdExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRl
c3RMb25nIGlzIDAKIFBBU1MgY29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24o
KXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgogCitQQVNTICd0ZXN0
RW5mb3JjZVJhbmdlTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAt
MHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
MHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkYKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkZG
RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
aXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGRkZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGRkZGRgorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAyMTQ3NDgzNjQ4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAweEZGRkZGRkZGIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA0Mjk0
OTY3Mjk1LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMDAwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgwMDAwMDAwCitGQUlMIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAxIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgNjIxMjk2NTg4NTkzNjg5ODAuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3
NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTnVt
YmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAor
RkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4Lgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5maW5p
dHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1JbmZpbml0eSBzaG91
bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5h
Ti4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJzEnCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdh
cyBhYmMuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBudWxsCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IHVuZGVmaW5lZCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgdW5k
ZWZpbmVkLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSB7dmFsdWVPZjpm
dW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKIFBB
U1MgJ3Rlc3RVbnNpZ25lZExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQogY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgPSAwCkBAIC0xNDEsNiArMjA2LDggQEAgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmcgPSB0cnVlCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEK
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
PSAnYWJjJwogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCiBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IG51bGwKQEAgLTE0OSw2ICsyMTYsNjQgQEAgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KIAorUEFTUyAn
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID09PSAnbnVtYmVy
JyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyAtMS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0YKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAweEZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjguCitGQUlMIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODEgc2hvdWxkIHRocm93IGFu
IGV4Y2VwdGlvbi4gV2FzIC0xMjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4
MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAw
MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGCitGQUlMIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMCBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IC0zMjc2OS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdG
RkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAwMDAw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAw
MDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkZGRkZG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkZGRkZG
RkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAw
MDAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDguCitGQUlMIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgzNjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5MzY4OTgwLgorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IC0xLjk5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS45
OS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBJbmZpbml0
eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyAtSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBOYU4u
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IGZhbHNlCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJzEnCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK0ZBSUwgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgYWJjLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB1bmRlZmlu
ZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Ro
cm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKIFBBU1MgJ3Rlc3RMb25n
TG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAwCkBA
IC0xOTMsMTYgKzMxOCwyOCBAQCBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1JTl9W
QUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitGQUlMIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAwMC4K
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCiBj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMS45OQogUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gSW5maW5pdHkKK0ZBSUwg
Y29udmVydGVyLnRlc3RMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIC05MjIzMzcyMDM2ODU0Nzc2
MDAwLgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1JbmZpbml0eQorRkFJTCBjb252ZXJ0ZXIu
dGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCitjb252
ZXJ0ZXIudGVzdExvbmdMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMg
MAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IGZhbHNlCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJycKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJzEnCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9
ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IG51bGwKQEAgLTIxMSw2ICszNDgsNzIgQEAgY29udmVydGVyLnRlc3RMb25nTG9u
ZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIFBBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9y
O319IHRocmV3IGV4Y2VwdGlvbiBFcnJvci4KIAorUEFTUyAndGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3Rgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAw
eEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdG
RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
LTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDEKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
LTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAt
MHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAw
MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMDAw
MDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RENCQTk4NzY1
NDMyMTAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5MzY4OTgwLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRp
b24uIFdhcyAxLjc5NzY5MzEzNDg2MjMxNTdlKzMwOC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyAtMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMS45OQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitGQUlMIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAtSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC1JbmZp
bml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE5hTiBzaG91
bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHRydWUKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJzEnCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gJ2FiYycgc2hvdWxkIHRocm93IGFuIGV4Y2Vw
dGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBudWxs
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMAorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdW5kZWZpbmVkIHNob3VsZCB0aHJvdyBh
biBleGNlcHRpb24uIFdhcyB1bmRlZmluZWQuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJl
dyBleGNlcHRpb24gRXJyb3IuCisKIFBBU1MgJ3Rlc3RVbnNpZ25lZExvbmdMb25nJyBpbiBjb252
ZXJ0ZXIgaXMgdHJ1ZQogUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
ID09PSAnbnVtYmVyJyBpcyB0cnVlCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAw
CkBAIC0yNTUsMTYgKzQ1OCwyOCBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBO
dW1iZXIuTUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
CiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUKK0ZBSUwgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIHNob3VsZCBi
ZSAwLiBXYXMgOTIyMzM3MjAzNjg1NDc3NjAwMC4KIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IDEuOTkKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0xLjk5CiBQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK0ZB
SUwgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgOTIyMzM3
MjAzNjg1NDc3NjAwMC4KK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE5hTgorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gZmFsc2UKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
IGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICdhYmMn
CiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCkBAIC0yNzMsNiArNDg4LDY0IEBAIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7
dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJy
b3IuCiAKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nJyBpbiBjb252ZXJ0
ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IC0xIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS4KK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nIGlzIDB4RkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gLTB4ODAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjgu
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgx
IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMTI5LgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRp
b24uIFdhcyAtMzI3NjguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9IC0weDgwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OS4K
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRkZGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZG
RkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAw
MDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlz
IDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nIGlzIDB4RkZGRkZGRkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gLTB4ODAwMDAwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0y
MTQ3NDgzNjQ4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAtMHg4MDAwMDAwMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2
NDkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4
RENCQTk4NzY1NDMyMTAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5
MzY4OTgwLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVt
YmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
LU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMg
MS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyAtMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nTG9uZyA9IC0xLjk5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdh
cyAtMS45OS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gSW5maW5pdHkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIEluZmluaXR5LgorRkFJ
TCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkg
c2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC1JbmZpbml0eS4KK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
dHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJycKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBXYXMgYWJjLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6
ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCiBQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwKaW5kZXggMjE5MTNiZTBmZTgz
YzAyMTc5NDA5ZDdjNjViZmVjYWNmNDM3MDAxMi4uMjlhZWJmN2E4MDAyMjFlZjliMjQ2YmM4YWEx
N2NlZmM5NjYxMzBjZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlw
ZS1tYXBwaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBw
aW5nLmh0bWwKQEAgLTM2LDExICszNiwyMyBAQCBmdW5jdGlvbiB0ZXN0Tm9uTnVtZXJpY1RvTnVt
ZXJpYyhhdHRyaWJ1dGUpCiAgICAgY29udmVydChhdHRyaWJ1dGUsICJmYWxzZSIsICIwIik7CiAg
ICAgY29udmVydChhdHRyaWJ1dGUsICJ0cnVlIiwgIjEiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0
ZSwgIicnIiwgIjAiKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIicxJyIsICIxIik7CiAgICAg
Y29udmVydChhdHRyaWJ1dGUsICInYWJjJyIsICIwIik7CiAgICAgY29udmVydChhdHRyaWJ1dGUs
ICJudWxsIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgInVuZGVmaW5lZCIsICIwIik7
CiB9CiAKK2Z1bmN0aW9uIHRlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKGF0dHJp
YnV0ZSkKK3sKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKKyAgICBjb252
ZXJ0KGF0dHJpYnV0ZSwgInRydWUiLCAiMSIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJyci
LCAiMCIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKKyAgICBjb252ZXJ0
VGhyb3dzKGF0dHJpYnV0ZSwgIidhYmMnIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICJudWxs
IiwgIjAiKTsKKyAgICBjb252ZXJ0VGhyb3dzKGF0dHJpYnV0ZSwgInVuZGVmaW5lZCIpOworfQor
CiB0eXBlID0gInRlc3RMb25nIjsKIHZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlw
ZSwgIjAiKTsKQEAgLTc1LDYgKzg3LDQwIEBAIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUp
OwogY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJy
b3I7fX0iKTsKIGRlYnVnKCIiKTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZyI7Cit2
ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUs
ICItMSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29u
dmVydCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBl
LCAiLTB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdG
RkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7
Citjb252ZXJ0KHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citj
b252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweDgwMDAw
MDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUs
ICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUi
LCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZl
cnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTki
LCAiMSIpOworY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFu
Z2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93
IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmci
OwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIpOwpAQCAtMTA5LDYg
KzE1NSw0MCBAQCB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKIGNvbnZlcnRUaHJvd3Mo
dHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7CiBkZWJ1Zygi
Iik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyI7Cit2ZXJpZnlBdHRy
aWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIt
MSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVy
dCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydFRocm93cyh0
eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5
cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAi
MHhGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0VGhyb3dz
KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0
KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZGRkZGIik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4
ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIk51
bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhf
VkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZl
cnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEuOTkiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5m
aW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNUb051
bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpm
dW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOworZGVidWcoIiIpOworCiB0eXBlID0gInRl
c3RMb25nTG9uZyI7CiB2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7CiBjb252ZXJ0KHR5cGUsICIwIik7
CkBAIC0xMzIsMTkgKzIxMiw1MSBAQCBjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOwogY29u
dmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1J
Tl9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7
Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9j
b252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAi
LU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxV
RSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252
ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Ci0v
LyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252
ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIs
ICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7Citjb252ZXJ0KHR5cGUsICJJbmZp
bml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0
eXBlLCAiTmFOIiwgIjAiKTsKIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwogY29udmVy
dFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsK
IGRlYnVnKCIiKTsKIAordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmciOwordmVyaWZ5
QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIpOworY29udmVydCh0eXBlLCAiLTEi
KTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkYiKTsKK2NvbnZlcnQodHlwZSwgIi0w
eDgwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGIik7
Citjb252ZXJ0KHR5cGUsICIweDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29u
dmVydCh0eXBlLCAiLTB4ODAwMCIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMSIpOworY29udmVy
dCh0eXBlLCAiMHg3RkZGRkZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29u
dmVydCh0eXBlLCAiMHhGRkZGRkZGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAwMDAwMDAiKTsK
K2NvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweERD
QkE5ODc2NTQzMjEwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsK
K2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRUaHJvd3Mo
dHlwZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1OdW1iZXIu
TUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnQodHlwZSwg
Ii0xLjk5IiwgIi0xIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOworY29udmVy
dFRocm93cyh0eXBlLCAiLUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJOYU4iLCAi
MCIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0
VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSIpOwor
ZGVidWcoIiIpOworCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmdMb25nIjsKIHZlcmlmeUF0dHJp
YnV0ZSh0eXBlKTsKIGNvbnZlcnQodHlwZSwgIjAiKTsKQEAgLTE2OCwxOCArMjgwLDUwIEBAIGNv
bnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIiwgIjB4RkZGRkZGRkY3RkZGRkZGRiIpOwogY29udmVy
dCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9W
QUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Ci0v
LyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252
ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLU51
bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIs
ICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252ZXJ0
KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIjB4RkZGRkZGRkZG
RkZGRkZGRiIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjggYW5k
IEpTQy4KLS8vY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUs
ICItSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOworY29udmVy
dCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAi
KTsKK2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0
eXBlKTsKIGNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3
IEVycm9yO319Iik7CiBkZWJ1ZygiIik7CiAKK3R5cGUgPSAidGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmciOwordmVyaWZ5QXR0cmlidXRlKHR5cGUpOworY29udmVydCh0eXBlLCAiMCIp
OworY29udmVydFRocm93cyh0eXBlLCAiLTEiKTsKK2NvbnZlcnQodHlwZSwgIjEiKTsKK2NvbnZl
cnQodHlwZSwgIjB4N0YiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAiKTsKK2NvbnZlcnQodHlwZSwg
IjB4RkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwIik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICItMHg4MSIpOworY29udmVydCh0eXBlLCAiMHg3RkZGIik7Citjb252ZXJ0KHR5cGUsICIw
eDgwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAi
LTB4ODAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMSIpOworY29udmVydCh0eXBl
LCAiMHg3RkZGRkZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwMDAwMCIpOworY29udmVydCh0
eXBlLCAiMHhGRkZGRkZGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDAiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICIweERDQkE5ODc2NTQzMjEwIik7Citjb252ZXJ0KHR5cGUsICJOdW1iZXIuTUlOX1ZBTFVFIiwg
IjAiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1O
dW1iZXIuTUFYX1ZBTFVFIik7Citjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIi0xLjk5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJJbmZpbml0eSIpOwor
Y29udmVydFRocm93cyh0eXBlLCAiLUluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJO
YU4iKTsKK3Rlc3ROb25OdW1lcmljVG9OdW1lcmljRW5mb3JjZVJhbmdlKHR5cGUpOworY29udmVy
dFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsK
K2RlYnVnKCIiKTsKKwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJv
bWl1bS9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL25vbi1udW1l
cmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAx
ODE5ZmNkMTYyNTNhNDA4ZDE4ODllZmQ0Y2Q4ODQwMGRkNjhhMzQKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1
ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDg1IEBACitUaGlz
IHRlc3RzIHRoZSBiZWhhdmlvciBvZiBub24tbnVtZXJpYyB2YWx1ZXMgaW4gY29udGV4dHMgd2hl
cmUgdGhlIERPTSBoYXMgYSBudW1lcmljIHBhcmFtZXRlci4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlVGV4dE5v
ZGUoImEiKS5zdWJzdHJpbmdEYXRhKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNT
IG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJhIikuc3Vic3RyaW5n
RGF0YSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5
KCdkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiYSIpLmluc2VydERhdGEoeCwgImIiKScpIGlzICdh
bnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVU
ZXh0Tm9kZSgiYSIpLmRlbGV0ZURhdGEoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BB
U1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoImEiKS5kZWxldGVE
YXRhKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J2RvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJhIikucmVwbGFjZURhdGEoeCwgMCwgImIiKScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVh
dGVUZXh0Tm9kZSgiYSIpLnJlcGxhY2VEYXRhKDAsIHgsICJiIiknKSBpcyAnYW55IHR5cGUgYWxs
b3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NTTWVkaWFSdWxlKCkuaW5zZXJ0
UnVsZShydWxlVGV4dCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnY3JlYXRlQ1NTTWVkaWFSdWxlKCkuZGVsZXRlUnVsZSh4KScpIGlzICdhbnkgdHlw
ZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVDU1NSdWxlTGlzdCgpLml0
ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3Jl
YXRlQ1NTU3R5bGVEZWNsYXJhdGlvbigpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NTU3R5bGVTaGVldCgpLmluc2VydFJ1bGUo
cnVsZVRleHQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xp
Y3koJ2NyZWF0ZUNTU1N0eWxlU2hlZXQoKS5kZWxldGVSdWxlKHgpJykgaXMgJ2FueSB0eXBlIGFs
bG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1N0eWxlU2hlZXQoKS5hZGRS
dWxlKHNlbGVjdG9yLCBzdHlsZVRleHQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNT
IG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1N0eWxlU2hlZXQoKS5yZW1vdmVSdWxlKHgpJykg
aXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1Zh
bHVlTGlzdCgpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludCh4LCAwKScpIGlzICdhbnkgdHlwZSBh
bGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50
KDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Rv
Y3VtZW50LmJvZHkuc2Nyb2xsQnlMaW5lcyh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFT
UyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5ib2R5LnNjcm9sbEJ5UGFnZXMoeCknKSBpcyAn
YW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuYm9keS5z
Y3JvbGxMZWZ0ID0geCcpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9s
aWN5KCdkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCA9IHgnKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuaW1hZ2VzLml0ZW0oeCknKSBpcyAnYW55
IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiaW5wdXQiKS5zZXRTZWxlY3Rpb25SYW5nZSh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1
dCIpLnNldFNlbGVjdGlvblJhbmdlKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNT
IG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkucmVt
b3ZlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUhUTUxTZWxlY3RFbGVtZW50KCkucmVtb3ZlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxTZWxlY3RFbGVtZW50KCkuaXRlbSh4
KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVI
VE1MVGFibGVFbGVtZW50KCkuaW5zZXJ0Um93KHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQ
QVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxUYWJsZUVsZW1lbnQoKS5kZWxldGVSb3co
eCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRl
SFRNTFRhYmxlUm93RWxlbWVudCgpLmluc2VydENlbGwoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dl
ZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlUm93RWxlbWVudCgpLmRl
bGV0ZUNlbGwoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnY3JlYXRlSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQoKS5pbnNlcnRSb3coeCknKSBpcyAnYW55
IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlU2Vj
dGlvbkVsZW1lbnQoKS5kZWxldGVSb3coeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGV4dGFyZWEiKS5zZXRT
ZWxlY3Rpb25SYW5nZSh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1l
cmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpLnNldFNlbGVjdGlv
blJhbmdlKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xp
Y3koJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJLZXlib2FyZEV2ZW50IikuaW5pdEtleWJvYXJkRXZl
bnQoImEiLCBmYWxzZSwgZmFsc2UsIG51bGwsICJiIiwgeCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwg
ZmFsc2UsIGZhbHNlKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9s
aWN5KCdjcmVhdGVNZWRpYUxpc3QoKS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQ
QVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50Iiku
aW5pdE1vdXNlRXZlbnQoImEiLCBmYWxzZSwgZmFsc2UsIG51bGwsIHgsIDAsIDAsIDAsIDAsIGZh
bHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAwLCBudWxsKScpIGlzICdhbnkgdHlwZSBhbGxvd2Vk
JworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiTW91c2VFdmVu
dCIpLmluaXRNb3VzZUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCAwLCB4LCAwLCAwLCAw
LCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgMCwgbnVsbCknKSBpcyAnYW55IHR5cGUgYWxs
b3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk1vdXNl
RXZlbnQiKS5pbml0TW91c2VFdmVudCgiYSIsIGZhbHNlLCBmYWxzZSwgbnVsbCwgMCwgMCwgeCwg
MCwgMCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIDAsIG51bGwpJykgaXMgJ2FueSB0eXBl
IGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJN
b3VzZUV2ZW50IikuaW5pdE1vdXNlRXZlbnQoImEiLCBmYWxzZSwgZmFsc2UsIG51bGwsIDAsIDAs
IDAsIHgsIDAsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAwLCBudWxsKScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVu
dCgiTW91c2VFdmVudCIpLmluaXRNb3VzZUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCAw
LCAwLCAwLCAwLCB4LCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgMCwgbnVsbCknKSBpcyAn
YW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRl
RXZlbnQoIk1vdXNlRXZlbnQiKS5pbml0TW91c2VFdmVudCgiYSIsIGZhbHNlLCBmYWxzZSwgbnVs
bCwgMCwgMCwgMCwgMCwgMCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHgsIG51bGwpJykg
aXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmJv
ZHkuYXR0cmlidXRlcy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcihkb2N1bWVudCwgeCwgbnVs
bCwgZmFsc2UpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J2RvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKS5pdGVtKHgpJykgaXMgJ2FueSB0
eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVJhbmdl
KCkuc2V0U3RhcnQoZG9jdW1lbnQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5v
bk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVJhbmdlKCkuc2V0RW5kKGRvY3VtZW50LCB4
KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVu
dC5jcmVhdGVSYW5nZSgpLmNvbXBhcmVQb2ludChkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKS5p
c1BvaW50SW5SYW5nZShkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuY29sbGFwc2UoZG9jdW1lbnQsIHgpJykg
aXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2dldFNlbGVjdGlv
bigpLnNldEJhc2VBbmRFeHRlbnQoZG9jdW1lbnQsIHgsIGRvY3VtZW50LCAwKScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdnZXRTZWxlY3Rpb24oKS5zZXRC
YXNlQW5kRXh0ZW50KGRvY3VtZW50LCAwLCBkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxs
b3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuc2V0UG9zaXRpb24o
ZG9jdW1lbnQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xp
Y3koJ2dldFNlbGVjdGlvbigpLmV4dGVuZChkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxs
b3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuZ2V0UmFuZ2VBdCh4
KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVu
dC5zdHlsZVNoZWV0cy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJhIikuc3BsaXRUZXh0KHgpJykg
aXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNy
ZWF0ZVRyZWVXYWxrZXIoZG9jdW1lbnQsIHgsIG51bGwsIGZhbHNlKScpIGlzICdhbnkgdHlwZSBh
bGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiVUlF
dmVudCIpLmluaXRVSUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCB4KScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsQnkoeCwg
MCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93
LnNjcm9sbEJ5KDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQ
b2xpY3koJ3dpbmRvdy5zY3JvbGxUbyh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFT
UyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsVG8oMCwgeCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnNjcm9sbCh4LCAwKScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xs
KDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dp
bmRvdy5tb3ZlQnkoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnd2luZG93Lm1vdmVCeSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFT
UyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cubW92ZVRvKHgsIDApJykgaXMgJ2FueSB0eXBlIGFs
bG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5tb3ZlVG8oMCwgeCknKSBpcyAn
YW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnJlc2l6ZUJ5
KHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dp
bmRvdy5yZXNpemVCeSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1l
cmljUG9saWN5KCd3aW5kb3cucmVzaXplVG8oeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnJlc2l6ZVRvKDAsIHgpJykgaXMgJ2FueSB0
eXBlIGFsbG93ZWQnCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9q
cy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Y2hyb21pdW0vZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjg2ZjFlMjY3OThjNWI3MzQ3Zjc5NTAyZGE5OTc1ODY0NjFjNjNhYzAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3NlbGVjdC1vcHRp
b25zLWFkZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMjggQEAKK1RoaXMgdGVzdCBjaGVja3Mg
dGhlIGJlaGF2aW9yIG9mIHRoZSBhZGQoKSBtZXRob2Qgb24gdGhlIHNlbGVjdC5vcHRpb25zIG9i
amVjdC4KK0l0IGNvdmVycyBib3RoIHRoZSB0aGUgb25lLWFyZ3VtZW50ICgxLngpIGFuZCB0d28t
YXJndW1lbnQgKDIueCkgc2lnbmF0dXJlcyBvZiB0aGUgYWRkKCkgbWV0aG9kLgorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworMS4xIEFkZCBPcHRpb24gdG8gZW1wdHkgT3B0aW9ucwor
UEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDEKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZElu
ZGV4IGlzIDAKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFTUyBzZWxl
Y3QxLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0EnCisKKzEuMiBBZGQgT3B0aW9uIHRvIG5v
bi1lbXB0eSBPcHRpb25zCitQQVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMgorUEFTUyBz
ZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorUEFTUyBzZWxlY3QxLm9wdGlvbnNbMF0udmFsdWUg
aXMgJzEnCitQQVNTIHNlbGVjdDEub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScKK1BBU1Mg
c2VsZWN0MS5vcHRpb25zWzFdLnZhbHVlIGlzICcyJworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMV0u
dGV4dENvbnRlbnQgaXMgJ0InCisKKzEuMyBBZGQgT3B0aW9uIGFmdGVyIHNldHRpbmcgcGFyYW1l
dGVycworUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxl
Y3RlZEluZGV4IGlzIDAKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFT
UyBzZWxlY3QxLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVjdDEub3B0
aW9uc1sxXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzFdLnRleHRDb250ZW50
IGlzICdCJworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMl0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVj
dDEub3B0aW9uc1syXS50ZXh0Q29udGVudCBpcyAnQycKKworMS40IEFkZCBhIG5vbi1PcHRpb24g
ZWxlbWVudAorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVj
dDEub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAor
CisxLjUgQWRkIGEgbm9uLWVsZW1lbnQgKHN0cmluZykKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFk
ZChvcHRpb24xKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2Vs
ZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKKworMS42IEFkZCBhIG5vbi1lbGVtZW50IChudW1iZXIp
CitQQVNTIHNlbGVjdDEub3B0aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRp
b25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuNyBB
ZGQgYSBub24tZWxlbWVudCAoYm9vbGVhbikKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRp
b24xKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5z
ZWxlY3RlZEluZGV4IGlzIDAKKworMS44IEFkZCB1bmRlZmluZWQKK1BBU1Mgc2VsZWN0MS5vcHRp
b25zLmFkZChvcHRpb24xKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9y
OiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BB
U1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKKworMS45IEFkZCBudWxsCitQQVNTIHNlbGVj
dDEub3B0aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0
Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBp
cyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuMTAgQWRkIG5lZ2F0aXZl
IGluZmluaXR5CitQQVNTIHNlbGVjdDEub3B0aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2Vs
ZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAw
CisKKzEuMTEgQWRkIE5hTgorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQ
QVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5k
ZXggaXMgMAorCisxLjEyIEFkZCBwb3NpdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QxLm9wdGlv
bnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6
IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMworUEFT
UyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisyLjEgQWRkIE9wdGlvbiB0byBlbXB0eSBP
cHRpb25zCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMQorUEFTUyBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggaXMgMAorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzEnCitQ
QVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScKKworMi4yIEFkZCBPcHRp
b24gYWZ0ZXIgc2V0dGluZyBwYXJhbWV0ZXJzCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGgg
aXMgMgorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMAorUEFTUyBzZWxlY3QyLm9wdGlv
bnNbMF0udmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBp
cyAnQScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnZhbHVlIGlzICcyJworUEFTUyBzZWxlY3Qy
Lm9wdGlvbnNbMV0udGV4dENvbnRlbnQgaXMgJ0InCisKKzIuMyBJbnNlcnQgT3B0aW9uIGF0IGJl
Z2lubmluZyBvZiBPcHRpb25zCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMworUEFT
UyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFs
dWUgaXMgJzAnCitQQVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnWicKK1BB
U1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QyLm9wdGlvbnNb
MV0udGV4dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVjdDIub3B0aW9uc1syXS52YWx1ZSBpcyAn
MicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdCJworCisyLjQgSW5z
ZXJ0IE9wdGlvbiBpbiBtaWRkbGUgb2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIGlzIDQKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zWzBdLnZhbHVlIGlzICcwJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRl
bnQgaXMgJ1onCitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2Vs
ZWN0Mi5vcHRpb25zWzFdLnRleHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNb
Ml0udmFsdWUgaXMgJzEuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlz
ICdBLjUnCitQQVNTIHNlbGVjdDIub3B0aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0
Mi5vcHRpb25zWzNdLnRleHRDb250ZW50IGlzICdCJworCisyLjUgSW5zZXJ0IE9wdGlvbiBhdCBl
bmQgb2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDUKK1BBU1Mgc2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlz
ICcwJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNl
bGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRl
eHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzEuNScK
K1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQQVNTIHNlbGVj
dDIub3B0aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnRleHRD
b250ZW50IGlzICdCJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNF0udmFsdWUgaXMgJzMnCitQQVNT
IHNlbGVjdDIub3B0aW9uc1s0XS50ZXh0Q29udGVudCBpcyAnQycKKworMi42IEluc2VydCBPcHRp
b24gYmV5b25kIHRoZSBlbmQgb2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IGlzIDYKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRp
b25zWzBdLnZhbHVlIGlzICcwJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQg
aXMgJ1onCitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0
Mi5vcHRpb25zWzFdLnRleHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0u
dmFsdWUgaXMgJzEuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdB
LjUnCitQQVNTIHNlbGVjdDIub3B0aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zWzNdLnRleHRDb250ZW50IGlzICdCJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNF0udmFs
dWUgaXMgJzMnCitQQVNTIHNlbGVjdDIub3B0aW9uc1s0XS50ZXh0Q29udGVudCBpcyAnQycKK1BB
U1Mgc2VsZWN0Mi5vcHRpb25zWzVdLnZhbHVlIGlzICc0JworUEFTUyBzZWxlY3QyLm9wdGlvbnNb
NV0udGV4dENvbnRlbnQgaXMgJ0QnCisKKzIuNyBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC0xCitQ
QVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNworUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5k
ZXggaXMgMQorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzAnCitQQVNTIHNlbGVj
dDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnWicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFd
LnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udGV4dENvbnRlbnQgaXMgJ0En
CitQQVNTIHNlbGVjdDIub3B0aW9uc1syXS52YWx1ZSBpcyAnMS41JworUEFTUyBzZWxlY3QyLm9w
dGlvbnNbMl0udGV4dENvbnRlbnQgaXMgJ0EuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnZh
bHVlIGlzICcyJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbM10udGV4dENvbnRlbnQgaXMgJ0InCitQ
QVNTIHNlbGVjdDIub3B0aW9uc1s0XS52YWx1ZSBpcyAnMycKK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
WzRdLnRleHRDb250ZW50IGlzICdDJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNV0udmFsdWUgaXMg
JzQnCitQQVNTIHNlbGVjdDIub3B0aW9uc1s1XS50ZXh0Q29udGVudCBpcyAnRCcKK1BBU1Mgc2Vs
ZWN0Mi5vcHRpb25zWzZdLnZhbHVlIGlzICc1JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNl0udGV4
dENvbnRlbnQgaXMgJ0UnCisKKzIuOCBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC0yCitQQVNTIHNl
bGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW5k
ZXhTaXplRXJyb3I6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCBpcyA3CitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCisKKzIuOSBBZGQgYW4gT3B0
aW9uIGF0IGluZGV4IC1JbmZpbml0eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIs
IC0xLzApIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIGlzIDgKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDIKKworMi4xMCBBZGQgYW4g
T3B0aW9uIGF0IGluZGV4IE5hTgorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAv
MCkgZGlkIG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGgg
aXMgOQorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMworCisyLjExIEFkZCBhbiBPcHRp
b24gYXQgaW5kZXggSW5maW5pdHkKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
LzApIGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IGlzIDEwCitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyA0CisKKzIuMTIgQWRkIGEgbm9u
LU9wdGlvbiBlbGVtZW50CitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4K
K1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVk
SW5kZXggaXMgNAorCisyLjEzIEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCitQQVNTIHNlbGVj
dDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlz
bWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjE0IEFkZCBhIG5v
bi1lbGVtZW50IChudW1iZXIpCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAx
Ny4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVj
dGVkSW5kZXggaXMgNAorCisyLjE1IEFkZCBhIG5vbi1lbGVtZW50IChib29sZWFuKQorUEFTUyBz
ZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlw
ZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5s
ZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xNiBBZGQg
dW5kZWZpbmVkCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mg
c2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXgg
aXMgNAorCisyLjE3IEFkZCBudWxsCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwg
MSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlv
biAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggaXMgNAorCisyLjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxl
Y3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1p
c21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5n
dGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xOSBBZGQgTmFO
CitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisy
LjIwIEFkZCBwb3NpdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlv
bjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjc2NzJiODBkM2U4ODE0Mjg1OTgxMmNmY2E4NmFjZmViYmNkMjRkNjMK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pz
L3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTUyIEBACitFeGVy
Y2lzZSBXZWJJREwgdHlwZSBjb252ZXJzaW9ucy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK2NvbnZlcnRlciA9IHdpbmRvdy5pbnRlcm5hbHMudHlwZUNvbnZlcnNpb25zKCkKKwor
UEFTUyAndGVzdExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0
ZXIudGVzdExvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDAK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0xCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nID0gMQorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nID0gMHg3RgorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RMb25nID0gMHg4MAor
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RMb25nID0gMHhG
RgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RMb25nID0g
LTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdExv
bmcgPSAtMHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50
ZXN0TG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RkZGCitjb252
ZXJ0ZXIudGVzdExvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4ODAw
MAorY29udmVydGVyLnRlc3RMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBp
cyAweEZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nIGlzIC0weDgwMDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDEKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4N0ZGRkZG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0
TG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwMDAwMDAw
Citjb252ZXJ0ZXIudGVzdExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nIGlzIC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MDAwMDAw
MQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RM
b25nID0gMHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3NjU0
MzIxMAorY29udmVydGVyLnRlc3RMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gTnVtYmVyLk1JTl9WQUxVRQor
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
TG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdExvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdExvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTEK
K2NvbnZlcnRlci50ZXN0TG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RM
b25nIGlzIDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24o
KXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCitQQVNTICd0ZXN0
RW5mb3JjZVJhbmdlTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAt
MHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
MHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkYKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkZG
RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
aXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGRkZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGRkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IDB4RkZGRkZGRkYgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4K
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAw
eERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51
bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAx
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4K
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLUluZmluaXR5IHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9
IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnMScKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yO319IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCisKK1BBU1MgJ3Rlc3RVbnNpZ25lZExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQ
QVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1
ZQorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTEKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKK2NvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4ODAKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkYKK2NvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgaXMgMHhGRkZGRkY4MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MQor
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRjdGCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHg4MDAwCitQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZG
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGODAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
PSAtMHg4MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRjdGRkYK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHg4MDAw
MDAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMg
MHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMQorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgaXMgMHg3NjU0MzIxMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSBOdW1i
ZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC1OdW1i
ZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAxLjk5
CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhG
RkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSBJbmZpbml0eQorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IC1JbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gdHJ1
ZQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJ2FiYycKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
PSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nID0gdW5kZWZpbmVkCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB7dmFsdWVPZjpmdW5j
dGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCisKK1BBU1Mg
J3Rlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNT
IHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9PT0gJ251bWJl
cicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMSB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAtMHg4MCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgxIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMCB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
aXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAw
eEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAtMHg4MDAwMDAwMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAxIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJv
cjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
TnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
LU51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4K
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLU51bWJlci5NSU5fVkFM
VUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMS45OSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IEluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLUluZmluaXR5IHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IGZhbHNl
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
JzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAnYWJjJyB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB7dmFsdWVPZjpmdW5j
dGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorCitQQVNTICd0ZXN0TG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNT
IHR5cGVvZiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252
ZXJ0ZXIudGVzdExvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIC0xCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4ODAKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIC0weDgw
Citjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
TG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4
ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4RkZG
RgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RM
b25nTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAwMQorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg3RkZGRkZG
RgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRl
ci50ZXN0TG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAweERDQkE5ODc2NTQzMjEwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1JTl9W
QUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1OdW1iZXIu
TUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAtMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1JbmZpbml0eQorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBO
YU4KK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJ2FiYycKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gbnVsbAorUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSB1bmRl
ZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJl
dyBleGNlcHRpb24gRXJyb3IuCisKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZycgaW4g
Y29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
aXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAw
eEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHhGRgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAtMHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg3RkZG
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RkZGCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4
ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
MHhGRkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAw
MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTB4ODAwMDAw
MDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE51
bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVF
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMS45
OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBJbmZpbml0eSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nID0gLUluZmluaXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOYU4gdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB0cnVlCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9ICcxJwor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
bnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHVuZGVmaW5lZCB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KKworUEFTUyAndGVzdFVuc2lnbmVk
TG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
IGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4
ODAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZG
RkZGRkZGRkZGRkZGODAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgxCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGN0YK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4
ODAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
IGlzIDB4RkZGRkZGRkZGRkZGODAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0g
LTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZG
RkZGRkY3RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAw
MAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRjgwMDAw
MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMQorUEFTUyBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRjdGRkZGRkZGCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweERDQkE5ODc2NTQzMjEwCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
aXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQor
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDEu
OTkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRy
dWUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorCitQQVNTICd0ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlw
ZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9PT0gJ251bWJl
cicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
MHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAt
MHg4MCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nIGlzIDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAtMHg4MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0w
eDgwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMDAwMDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkZGRkZGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZG
RkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
LTB4ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMDAwMDEg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAtMS45OSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBJbmZpbml0
eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBmYWxz
ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gdHJ1ZQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gbnVs
bAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB1bmRlZmlu
ZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4K
KworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBh
cmFtZXRlcnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50
dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKaW5kZXggMWU4YmQ1N2JkMzExYjgy
Y2U5ZjI0OGJkZDc0NjQ0YmMyZjAyZDZkNS4uMTQ1NTdkNDUzNjZkZGYzNDFiNmMwMTIwNzBlMjg5
MTIzYTExODg3ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50
dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQKQEAg
LTE4LDYgKzE4LDE1IEBAIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAwKSB0aHJldyBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IKIEV4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5k
ZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkKIFBBU1MgRXhjZXB0aW9uIHdhcyB0aHJvd24uCiBQQVNT
IGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgor
RXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUs
IEluZmluaXR5KQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCBJbmZpbml0eSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3Rp
bmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmlu
aXR5KQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9wZW4oZGJu
YW1lLCAtSW5maW5pdHkpIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgorRXhwZWN0aW5nIFR5
cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIE5hTikKK1BBU1Mg
RXhjZXB0aW9uIHdhcyB0aHJvd24uCitQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKSB0
aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKIEV4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9u
IGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkKIFBBU1MgRXhjZXB0aW9uIHdhcyB0aHJv
d24uCiBQQVNTIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpIHRocmV3IFR5cGVFcnJvcjogVHlw
ZSBlcnJvcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3Vy
Y2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanMgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcwppbmRleCBhZjM1
ZjJkNGJjODJiMGJjZGI1YjAxNDhjNjMwZjIxNTM5NjNiZmMxLi5kMzM5YzMyYzFjNmIxMTQ5N2Ux
Y2M4OWQwYzA3MzVhYTM5OTk3NDc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcworKysgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1l
dGVycy5qcwpAQCAtMjAsNiArMjAsOSBAQCBmdW5jdGlvbiBkZWxldGVTdWNjZXNzKGV2dCkgewog
ICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAn
c3RyaW5ndmVyc2lvbicpIiwgIlR5cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRp
b25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAwKSIsICJUeXBlRXJyb3IiKTsKICAgICBl
dmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTUpIiwg
IlR5cGVFcnJvciIpOworICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERC
Lm9wZW4oZGJuYW1lLCBJbmZpbml0eSkiLCAiVHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVj
dEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0eSkiLCAiVHlw
ZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3Bl
bihkYm5hbWUsIE5hTikiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlv
bkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKSIsICJUeXBlRXJyb3IiKTsKICAgICBl
dmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgMHgyMDAw
MDAwMDAwMDAwMCkiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNs
YXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIG51bGwpIiwgIlR5cGVFcnJvciIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192784</attachid>
            <date>2013-03-12 12:07:02 -0700</date>
            <delta_ts>2013-03-15 11:00:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-96798-20130312120301.patch</filename>
            <type>text/plain</type>
            <size>130696</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjdiOWIxZDU4NDczNjY1
NGE0N2EzYWU5MjA3ODFiY2EzMjJlZGQyNy4uMmM0MTU3YjJlYWFiMjQwYjQ2YmMzZTJmZTNlMTdl
MjI4ZGYwYTY0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDEzLTAzLTExICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBs
ZW1lbnQgW0VuZm9yY2VSYW5nZV0gYXR0cmlidXRlIGZvciBWOCBiaW5kaW5ncywgd2hpY2ggc3Bl
Y2lmaWVzIHRocm93aW5nIGJlaGF2aW9yCisgICAgICAgIG9uIGNvbnZlcnNpb25zIG91dHNpZGUg
aW50L3VpbnQgMzIvNjQgcmFuZ2VzIGFuZCBlZGdlIGNhc2VzIGxpa2UgTmFOcyBhbmQgSW5maW5p
dGllcy4KKyAgICAgICAgQ29udmVyc2VseSwgY29udmVyc2lvbnMgd2l0aG91dCB0aGlzIGF0dHJp
YnV0ZSBzaG91bGQgKm5vdCogdGhyb3cuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvanMvd2ViaWRs
LXR5cGUtbWFwcGluZy5odG1sOgorICAgICAgICAgICAgICAgZmFzdC9kb20vbm9uLW51bWVyaWMt
dmFsdWVzLW51bWVyaWMtcGFyYW1ldGVycy5odG1sCisgICAgICAgICAgICAgICBmYXN0L2pzL3Nj
cmlwdC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQuaHRtbAorICAgICAgICAgICAgICAgc3RvcmFn
ZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5odG1sCisKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwOiBSZW1vdmUgY3VzdG9tIHJhbmdlIGVuZm9y
Y2VtZW50IGZvciBhZHZhbmNlKCkKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3IuaDogQWRqdXN0IHR5cGUgdG8gbWF0Y2ggV2ViSURMLgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL0lEQkN1cnNvci5pZGw6IFNwZWNpZnkgW0VuZm9yY2VSYW5nZV0gYW5kIHR5cGUgbWF0
Y2hlcyBzcGVjIFdlYklETC4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmNwcDogUmVtb3ZlIGN1c3RvbSByYW5nZSBlbmZvcmNlbWVudCBmb3Igb3BlbigpCisgICAgICAg
ICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oOiBBZGp1c3QgdHlwZSB0byBtYXRjaCBX
ZWJJREwuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGw6IFNwZWNp
ZnkgW0VuZm9yY2VSYW5nZV0gYW5kIHR5cGUgbWF0Y2hlcyBzcGVjIFdlYklETC4KKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEpTVmFsdWVU
b05hdGl2ZSk6IEFkZCBGSVhNRSB0byBzdXBwb3J0IFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06CisgICAgICAgIChHZW5lcmF0ZU5v
cm1hbEF0dHJTZXR0ZXIpOiBIYW5kbGUgW0VuZm9yY2VSYW5nZV0gaW4gYXR0cmlidXRlIHNldHRl
cnMKKyAgICAgICAgKEdlbmVyYXRlUGFyYW1ldGVyc0NoZWNrKTogSGFuZGxlIFtFbmZvcmNlUmFu
Z2VdIGluIHBhcmFtZXRlcnMuCisgICAgICAgIChKU1ZhbHVlVG9OYXRpdmUpOiBQYXNzIEVuZm9y
Y2VSYW5nZSB0byB0b0ludCgpIGZ1bmN0aW9ucyBhcyBhcHByb3ByaWF0ZS4KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0OgorICAgICAgICAqIGJpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9UZXN0T2JqLmlkbDogVGVzdHMgdy8gW0VuZm9yY2VSYW5nZV0KKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcDogVXBkYXRlZCBleHBlY3Rh
dGlvbnMKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMu
Y3BwOiBVcGRhdGVkIGV4cGVjdGF0aW9ucy4KKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEJpbmRp
bmcuY3BwOiBPdmVybG9hZHMgZm9yIHRvSW50KCkgdmFyaWFudHMgdGhhdCBoYW5kbGUgY29uc3Ry
YWludHMuCisgICAgICAgIChXZWJDb3JlOjp0b0ludDMyKToKKyAgICAgICAgKFdlYkNvcmU6OnRv
VUludDMyKToKKyAgICAgICAgKFdlYkNvcmU6OnRvSW50NjQpOgorICAgICAgICAoV2ViQ29yZTo6
dG9VSW50NjQpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5oOiBEaXR0bywgcGx1
cyBoZWxwZXJzIGZvciBjYWxsZXJzIG5vdCBleHBlY3RpbmcgZXJyb3JzLgorICAgICAgICAoV2Vi
Q29yZTo6dG9JbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQzMik6CisgICAgICAgIChX
ZWJDb3JlOjp0b0ludDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRvVUludDY0KToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaDogSGVscGVyIG1hY3JvcyBmb3IgdHlwZSBj
b252ZXJzaW9ucyB0aGF0IG1heSB0aHJvdy4KKyAgICAgICAgKiB0ZXN0aW5nL1R5cGVDb252ZXJz
aW9ucy5oOiBBZGRlZCBuZXcgbWVtYmVycyB3aXRoIEVuZm9yY2VSYW5nZSBjb25zdHJhaW50Lgor
ICAgICAgICAqIHRlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbDogRGl0dG8uCisKIDIwMTMtMDMt
MTIgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2Vi
IEluc3BlY3RvcjogUmVzb3VyY2VTY3JpcHRGaWxlIGRpdmVyZ2VkIHN0YXRlIHNob3VsZCBiZSBj
b3JyZWN0bHkgcmVzZXQgYWZ0ZXIgZGVidWdnZXIgcmVzZXQuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAppbmRleCA3YmIwZjUwMGU0N2I0MjYxMzQw
YTkzMjgxNThhZGU5M2UzNDg1NmM2Li4xY2Y5NzcxMDFjYTYzMjYzZGZjZGZmYzU3NThkMjRkY2E3
NDRmYjVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJD
dXJzb3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNv
ci5jcHAKQEAgLTE1Miw3ICsxNTIsNyBAQCBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IElEQkN1cnNv
cjo6dXBkYXRlKFNjcmlwdFN0YXRlKiBzdGF0ZSwgU2NyaXB0VmFsdWUmIHZhbHVlLAogICAgIHJl
dHVybiBvYmplY3RTdG9yZS0+cHV0KElEQkRhdGFiYXNlQmFja2VuZEludGVyZmFjZTo6Q3Vyc29y
VXBkYXRlLCBJREJBbnk6OmNyZWF0ZSh0aGlzKSwgc3RhdGUsIHZhbHVlLCBtX2N1cnJlbnRQcmlt
YXJ5S2V5LCBlYyk7CiB9CiAKLXZvaWQgSURCQ3Vyc29yOjphZHZhbmNlKGxvbmcgbG9uZyBjb3Vu
dCwgRXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIElEQkN1cnNvcjo6YWR2YW5jZSh1bnNpZ25lZCBs
b25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBlYyA9IDA7CiAgICAgSURCX1RS
QUNFKCJJREJDdXJzb3I6OmFkdmFuY2UiKTsKQEAgLTE2Niw4ICsxNjYsNyBAQCB2b2lkIElEQkN1
cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgICAg
ICByZXR1cm47CiAgICAgfQogCi0gICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIG9ubHkgbmVlZCB0
byBjaGVjayBmb3IgMCBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICBpZiAoY291
bnQgPCAxIHx8IGNvdW50ID4gVUlOVF9NQVgpIHsKKyAgICBpZiAoIWNvdW50KSB7CiAgICAgICAg
IGVjID0gVHlwZUVycm9yOwogICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmggYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAppbmRleCAxOGQyMDBlYTYxMDY3Nzk3ZWE0
YzllZGM1MTYxZDE1ZGI0YjNkYWU3Li5lMzU4OTEwOTZkNzViM2VmMmUzOTk4NzliMTkzNjNlMTIz
YzRhMTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJD
dXJzb3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3Iu
aApAQCAtNjksOCArNjksNyBAQCBwdWJsaWM6CiAgICAgSURCQW55KiBzb3VyY2UoKSBjb25zdDsK
IAogICAgIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gdXBkYXRlKFNjcmlwdFN0YXRlKiwgU2NyaXB0
VmFsdWUmLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgLy8gRklYTUU6IE1ha2UgdGhpcyB1bnNpZ25l
ZCBsb25nIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgotICAgIHZvaWQgYWR2YW5jZShs
b25nIGxvbmcsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGFkdmFuY2UodW5zaWduZWQgbG9u
ZywgRXhjZXB0aW9uQ29kZSYpOwogICAgIC8vIEZJWE1FOiBUcnkgdG8gbW9kaWZ5IHRoZSBjb2Rl
IGdlbmVyYXRvciBzbyB0aGlzIG92ZXJsb2FkIGlzIHVubmVlZGVkLgogICAgIHZvaWQgY29udGlu
dWVGdW5jdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9uQ29kZSYgZWMpIHsg
Y29udGludWVGdW5jdGlvbihzdGF0aWNfY2FzdDxJREJLZXkqPigwKSwgZWMpOyB9CiAgICAgdm9p
ZCBjb250aW51ZUZ1bmN0aW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTY3JpcHRW
YWx1ZSYga2V5LCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yLmlkbAppbmRleCA0NTcwYzFlY2M4N2QwOGI5MDEwMDNhM2RjOGYy
Nzg2MWYxMTg4ZWExLi40YjYyNjViNDI4ZjI2ZTkxZmMwN2JiOGI1YzIyMTVkN2RjNDIzNDhiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwKQEAg
LTM1LDggKzM1LDcgQEAKIAogICAgIFtDYWxsV2l0aD1TY3JpcHRTdGF0ZV0gSURCUmVxdWVzdCB1
cGRhdGUoaW4gYW55IHZhbHVlKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7Ci0gICAg
Ly8gRklYTUU6IE1ha2UgdGhpcyBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIG9uY2Ugd2Vi
a2l0Lm9yZy9iLzk2Nzk4IGxhbmRzLgotICAgIHZvaWQgYWR2YW5jZShpbiBsb25nIGxvbmcgY291
bnQpCisgICAgdm9pZCBhZHZhbmNlKGluIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxvbmcgY291
bnQpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICBbQ2FsbFdpdGg9U2NyaXB0
RXhlY3V0aW9uQ29udGV4dCwgSW1wbGVtZW50ZWRBcz1jb250aW51ZUZ1bmN0aW9uXSB2b2lkIGNv
bnRpbnVlKGluIFtPcHRpb25hbF0gYW55IGtleSkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRp
b24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFj
dG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNw
cAppbmRleCBkMDEyMGY2MGE4OWFkZmZiN2QxNjVjOWFhYjczZjlmNzZmMzExMGIwLi4xZDVmMGZi
YjFhYmYxZTVhZGRkNzM4NTM3OTNmOWQwZGMxODAyZjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmNwcApAQCAtMTExLDExICsxMTEsOSBAQCBQ
YXNzUmVmUHRyPElEQlJlcXVlc3Q+IElEQkZhY3Rvcnk6OmdldERhdGFiYXNlTmFtZXMoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udAogICAgIHJldHVybiByZXF1ZXN0OwogfQogCi1QYXNzUmVm
UHRyPElEQk9wZW5EQlJlcXVlc3Q+IElEQkZhY3Rvcnk6Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogY29udGV4dCwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQ2NF90IHZlcnNpb24sIEV4Y2Vw
dGlvbkNvZGUmIGVjKQorUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBJREJGYWN0b3J5Ojpv
cGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgbmFtZSwg
dW5zaWduZWQgbG9uZyBsb25nIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmIGVjKQogewotICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hlY2sgZm9yIDAgb25jZSB3ZWJraXQu
b3JnL2IvOTY3OTggbGFuZHMuCi0gICAgY29uc3QgaW50NjRfdCBtYXhFQ01BU2NyaXB0SW50ZWdl
ciA9IDB4MjAwMDAwMDAwMDAwMDBMTCAtIDE7Ci0gICAgaWYgKHZlcnNpb24gPCAxIHx8IHZlcnNp
b24gPiBtYXhFQ01BU2NyaXB0SW50ZWdlcikgeworICAgIGlmICghdmVyc2lvbikgewogICAgICAg
ICBlYyA9IFR5cGVFcnJvcjsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oCmluZGV4IGNjNjFjZDdjNmZiZDEy
ZTRlMDlhNzdlYzlkZDBkYTIwY2ZlNzcwYjkuLjk3NDI5NzNhMTdlNWYzYjA3OTVlMzNkZjc5YzY2
ZTczM2UyZWM0NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkZhY3RvcnkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5LmgKQEAgLTU3LDcgKzU3LDcgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8SURCUmVx
dWVzdD4gZ2V0RGF0YWJhc2VOYW1lcyhTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXhjZXB0aW9u
Q29kZSYpOwogCiAgICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIEV4Y2VwdGlvbkNvZGUmKTsKLSAg
ICBQYXNzUmVmUHRyPElEQk9wZW5EQlJlcXVlc3Q+IG9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgaW50NjRfdCB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJik7
CisgICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIHVuc2lnbmVkIGxvbmcgbG9uZyB2ZXJzaW9uLCBF
eGNlcHRpb25Db2RlJik7CiAgICAgUGFzc1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBkZWxldGVE
YXRhYmFzZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNl
cHRpb25Db2RlJik7CiAKICAgICBzaG9ydCBjbXAoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNv
bnN0IFNjcmlwdFZhbHVlJiBmaXJzdCwgY29uc3QgU2NyaXB0VmFsdWUmIHNlY29uZCwgRXhjZXB0
aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRmFjdG9yeS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0
b3J5LmlkbAppbmRleCBhNTE2MDViMmI0ZTMxMjk3YmI1NWRhM2I1MTdkNWRkMTJjM2QyMmFjLi5l
ZjUxYmJmODM4N2NhOGJkMGU2YWViYzUxMDYzYjhkNWU2OGQ0ZjZlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbApAQCAtMzEsOCArMzEsNyBA
QAogICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJbXBsZW1lbnRlZEFzPWdl
dERhdGFiYXNlTmFtZXNdIElEQlJlcXVlc3Qgd2Via2l0R2V0RGF0YWJhc2VOYW1lcygpCiAgICAg
ICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKIAotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgW0Vu
Zm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIG9uY2Ugd2Via2l0Lm9yZy9iLzk2Nzk4IGxh
bmRzLgotICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1
ZXN0IG9wZW4oaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtPcHRpb25hbF0gbG9uZyBsb25nIHZlcnNp
b24pCisgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQk9wZW5EQlJlcXVl
c3Qgb3BlbihpbiBET01TdHJpbmcgbmFtZSwgaW4gW0VuZm9yY2VSYW5nZSwgT3B0aW9uYWxdIHVu
c2lnbmVkIGxvbmcgbG9uZyB2ZXJzaW9uKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7
CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1dGlvbkNvbnRleHRdIElEQk9wZW5EQlJlcXVlc3Qg
ZGVsZXRlRGF0YWJhc2UoaW4gRE9NU3RyaW5nIG5hbWUpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhj
ZXB0aW9uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0KaW5kZXggNmFkYzk4ODNkNDY2YjcxZmE1MTA3NWY1YjhkYzliZjI5YTVhOGYz
MS4uNTI2OGQ5ZjQ5YjMzODhkN2MxODY5OTcyM2FhNDFhMWQ4MTVkMzcyZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTMx
NjIsNiArMzE2Miw3IEBAIHN1YiBKU1ZhbHVlVG9OYXRpdmUKICAgICByZXR1cm4gIiR2YWx1ZS50
b0Jvb2xlYW4oZXhlYykiIGlmICR0eXBlIGVxICJib29sZWFuIjsKICAgICByZXR1cm4gIiR2YWx1
ZS50b051bWJlcihleGVjKSIgaWYgJHR5cGUgZXEgImRvdWJsZSI7CiAgICAgcmV0dXJuICIkdmFs
dWUudG9GbG9hdChleGVjKSIgaWYgJHR5cGUgZXEgImZsb2F0IjsKKyAgICAjIEZJWE1FOiBBZGQg
W0VuZm9yY2VSYW5nZV0gc3VwcG9ydAogICAgIHJldHVybiAiJHZhbHVlLnRvSW50MzIoZXhlYyki
IGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOwogICAgIHJldHVybiAiJHZh
bHVlLnRvVUludDMyKGV4ZWMpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUg
ZXEgInVuc2lnbmVkIHNob3J0IjsKICAgICByZXR1cm4gInN0YXRpY19jYXN0PCR0eXBlPigkdmFs
dWUudG9JbnRlZ2VyKGV4ZWMpKSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyIgb3IgJHR5cGUgZXEg
InVuc2lnbmVkIGxvbmcgbG9uZyI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCmluZGV4IGVmMjBmOWZlZWQzY2Q0ZjNhNjI4NjcwOWZm
NzA1NDU5ZjkzNmU5MmYuLmVlZTkxZDRhNDExOWVmZGM4OGQ1NjgyZjU2MmI2ZmYwNWM1Y2I3ZWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
clY4LnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
clY4LnBtCkBAIC0xMzE0LDYgKzEzMTQsOCBAQCBFTkQKICAgICAgICAgICAgIHB1c2goQGltcGxD
b250ZW50SW50ZXJuYWxzLCAiICAgICIgLiBDb252ZXJ0VG9WOFN0cmluZ1Jlc291cmNlKCRhdHRy
aWJ1dGUtPnNpZ25hdHVyZSwgJG5hdGl2ZVR5cGUsICJ2IiwgJHZhbHVlLCAiVk9JRCIpIC4gIlxu
Iik7CiAgICAgICAgIH0gZWxzaWYgKCRhcnJheVR5cGUpIHsKICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50SW50ZXJuYWxzLCAiICAgIFZlY3RvcjwkYXJyYXlUeXBlPiB2ID0gJHZhbHVlO1xu
Iik7CisgICAgICAgIH0gZWxzaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkVuZm9yY2VSYW5nZSJ9KSB7CisgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dEludGVybmFscywgIiAgICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLX1ZPSUQoJG5hdGl2ZVR5
cGUsIHYsICR2YWx1ZSwgaW5mby5HZXRJc29sYXRlKCkpO1xuIik7CiAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudEludGVybmFscywgIiAgICAkbmF0aXZlVHlw
ZSB2ID0gJHZhbHVlO1xuIik7CiAgICAgICAgIH0KQEAgLTE4OTMsOCArMTg5NSwxMyBAQCBzdWIg
R2VuZXJhdGVQYXJhbWV0ZXJzQ2hlY2sKICAgICAgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNo
ZWNrU3RyaW5nIC49ICIgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBhcmdzLkdldElz
b2xhdGUoKSk7XG4iOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5hdGl2ZVR5cGUs
ICRwYXJhbWV0ZXJOYW1lLCAiIC4KLSAgICAgICAgICAgICAgICAgSlNWYWx1ZVRvTmF0aXZlKCRw
YXJhbWV0ZXIsICRvcHRpb25hbCAmJiAkb3B0aW9uYWwgZXEgIkRlZmF1bHRJc051bGxTdHJpbmci
ID8gImFyZ3VtZW50T3JOdWxsKGFyZ3MsICRwYXJhbUluZGV4KSIgOiAiYXJnc1skcGFyYW1JbmRl
eF0iLCAiYXJncy5HZXRJc29sYXRlKCkiKSAuICIpO1xuIjsKKyAgICAgICAgICAgIGlmICgkcGFy
YW1ldGVyLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5mb3JjZVJhbmdlIn0pIHsKKyAgICAgICAg
ICAgICAgICBteSAkdmFsdWUgPSBKU1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgJG9wdGlvbmFs
ICYmICRvcHRpb25hbCBlcSAiRGVmYXVsdElzTnVsbFN0cmluZyIgPyAiYXJndW1lbnRPck51bGwo
YXJncywgJHBhcmFtSW5kZXgpIiA6ICJhcmdzWyRwYXJhbUluZGV4XSIsICJhcmdzLkdldElzb2xh
dGUoKSIpOworICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4
VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0soJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFs
dWUsIGFyZ3MuR2V0SXNvbGF0ZSgpKTtcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgICAgIG15ICR2YWx1ZSA9IEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1ldGVyLCAkb3B0aW9u
YWwgJiYgJG9wdGlvbmFsIGVxICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJhcmd1bWVudE9yTnVs
bChhcmdzLCAkcGFyYW1JbmRleCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwgImFyZ3MuR2V0SXNv
bGF0ZSgpIik7CisgICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAg
VjhUUllDQVRDSCgkbmF0aXZlVHlwZSwgJHBhcmFtZXRlck5hbWUsICR2YWx1ZSk7XG4iOworICAg
ICAgICAgICAgfQogICAgICAgICAgICAgaWYgKCRuYXRpdmVUeXBlIGVxICdEaWN0aW9uYXJ5Jykg
ewogICAgICAgICAgICAgICAgJHBhcmFtZXRlckNoZWNrU3RyaW5nIC49ICIgICAgaWYgKCEkcGFy
YW1ldGVyTmFtZS5pc1VuZGVmaW5lZE9yTnVsbCgpICYmICEkcGFyYW1ldGVyTmFtZS5pc09iamVj
dCgpKVxuIjsKICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgICAg
ICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoXCJOb3QgYW4gb2JqZWN0LlwiLCBhcmdzLkdldElzb2xh
dGUoKSk7XG4iOwpAQCAtMzk3MSwxNCArMzk3OCwyMyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAg
ICAgbXkgJGdldElzb2xhdGUgPSBzaGlmdDsKIAogICAgIG15ICR0eXBlID0gJHNpZ25hdHVyZS0+
dHlwZTsKKyAgICBteSAkaW50Q29udmVyc2lvbiA9ICRzaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJFbmZvcmNlUmFuZ2UifSA/ICJFbmZvcmNlUmFuZ2UiIDogIk5vcm1hbENvbnZlcnNp
b24iOwogCiAgICAgcmV0dXJuICIkdmFsdWUiIGlmICR0eXBlIGVxICJKU09iamVjdCI7CiAgICAg
cmV0dXJuICIkdmFsdWUtPkJvb2xlYW5WYWx1ZSgpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAg
ICAgcmV0dXJuICJzdGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLT5OdW1iZXJWYWx1ZSgpKSIgaWYg
JHR5cGUgZXEgImZsb2F0IiBvciAkdHlwZSBlcSAiZG91YmxlIjsKIAotICAgIHJldHVybiAidG9J
bnQzMigkdmFsdWUpIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKLSAg
ICByZXR1cm4gInRvVUludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBv
ciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOwotICAgIHJldHVybiAidG9JbnQ2NCgkdmFsdWUp
IiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyBsb25nIiBvciAkdHlwZSBlcSAibG9uZyBsb25n
IjsKKyAgICBpZiAoJGludENvbnZlcnNpb24gbmUgIk5vcm1hbENvbnZlcnNpb24iKSB7CisgICAg
ICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0eXBl
IGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQiOworICAgICAgICByZXR1cm4gInRvVUludDMy
KCR2YWx1ZSwgJGludENvbnZlcnNpb24sIG9rKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmci
IG9yICR0eXBlIGVxICJ1bnNpZ25lZCBzaG9ydCI7CisgICAgICAgIHJldHVybiAidG9JbnQ2NCgk
dmFsdWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVxICJsb25nIGxvbmciOworICAg
ICAgICByZXR1cm4gInRvVUludDY0KCR2YWx1ZSwgJGludENvbnZlcnNpb24sIG9rKSIgaWYgJHR5
cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgcmV0dXJu
ICJ0b0ludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJsb25nIiBvciAkdHlwZSBlcSAic2hvcnQi
OworICAgICAgICByZXR1cm4gInRvVUludDMyKCR2YWx1ZSkiIGlmICR0eXBlIGVxICJ1bnNpZ25l
ZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hvcnQiOworICAgICAgICByZXR1cm4gInRv
SW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgImxvbmcgbG9uZyI7CisgICAgICAgIHJldHVybiAi
dG9VSW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmcgbG9uZyI7CisgICAg
fQogICAgIHJldHVybiAic3RhdGljX2Nhc3Q8UmFuZ2U6OkNvbXBhcmVIb3c+KCR2YWx1ZS0+SW50
MzJWYWx1ZSgpKSIgaWYgJHR5cGUgZXEgIkNvbXBhcmVIb3ciOwogICAgIHJldHVybiAidG9XZWJD
b3JlRGF0ZSgkdmFsdWUpIiBpZiAkdHlwZSBlcSAiRGF0ZSI7CiAgICAgcmV0dXJuICJ0b0RPTVN0
cmluZ0xpc3QoJHZhbHVlLCAkZ2V0SXNvbGF0ZSkiIGlmICR0eXBlIGVxICJET01TdHJpbmdMaXN0
IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmli
dXRlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMu
dHh0CmluZGV4IDhlZGFjMTI4NzFhYzRkMTMxMTc1NmZlYzI5ZTMyODg3NTE2MjgxN2EuLjI4Y2Jl
ZTNlZDY0MjczZWM5YmIyY2QwZjM4ZjY0ZWQxYWEzMjkxOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURMQXR0cmlidXRlcy50eHQKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dApAQCAtNTIsNiArNTIsNyBA
QCBEb05vdENoZWNrQ29uc3RhbnRzCiBEb05vdENoZWNrU2VjdXJpdHkKIERvTm90Q2hlY2tTZWN1
cml0eU9uR2V0dGVyCiBEb05vdENoZWNrU2VjdXJpdHlPblNldHRlcgorRW5mb3JjZVJhbmdlCiBF
dmVudFRhcmdldAogRXh0ZW5kc0RPTUdsb2JhbE9iamVjdAogR2VuZXJhdGVJc1JlYWNoYWJsZT1J
bXBsRG9jdW1lbnR8SW1wbEVsZW1lbnRSb290fEltcGxPd25lck5vZGVSb290CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKaW5kZXggMjRhMGU2
YzA5YTM4NmI2YmZhZmRiMGRjY2ViYTlkMmVmMjU1NjQ3OC4uZjU0YmNhN2JjZDY0OWIzOWI3Y2Zl
NWFhYzAwODI0MzQwODQzOTIyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9UZXN0T2JqLmlkbApAQCAtMTUwLDYgKzE1MCwxOSBAQCBlbnVtIFRlc3RFbnVt
VHlwZSB7ICIiLCAiRW51bVZhbHVlMSIsICJFbnVtVmFsdWUyIiwgIkVudW1WYWx1ZTMiIH07CiAg
ICAgc3RhdGljIHZvaWQgICAgc3RhdGljTWV0aG9kV2l0aENhbGxiYWNrQXJnKGluIFtDYWxsYmFj
a10gVGVzdENhbGxiYWNrIGNhbGxiYWNrKTsKICNlbmRpZgogCisjaWYgZGVmaW5lZChURVNUSU5H
X1Y4KQorICAgIC8vICdFbmZvcmNlUmFuZ2UnIGV4dGVuZGVkIGF0dHJpYnV0ZQorICAgIHZvaWQg
ICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyKGluIFtFbmZvcmNlUmFuZ2VdIGxvbmcgdmFs
dWUpOworICAgIHZvaWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMihpbiBbRW5mb3Jj
ZVJhbmdlXSB1bnNpZ25lZCBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZv
cmNlUmFuZ2VJbnQ2NChpbiBbRW5mb3JjZVJhbmdlXSBsb25nIGxvbmcgdmFsdWUpOworICAgIHZv
aWQgICAgbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NChpbiBbRW5mb3JjZVJhbmdlXSB1bnNp
Z25lZCBsb25nIGxvbmcgdmFsdWUpOworCisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxv
bmcgZW5mb3JjZWRSYW5nZUxvbmdBdHRyOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSB1
bnNpZ25lZCBsb25nIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyOworICAgIGF0dHJpYnV0
ZSBbRW5mb3JjZVJhbmdlXSBsb25nIGxvbmcgZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cjsKKyAg
ICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIGVuZm9yY2VkUmFu
Z2VVbnNpZ25lZExvbmdMb25nQXR0cjsKKyNlbmRpZgorCiAgICAgLy8gJ0NvbmRpdGlvbmFsJyBl
eHRlbmRlZCBhdHRyaWJ1dGUKICAgICBbQ29uZGl0aW9uYWw9Q29uZGl0aW9uMV0gYXR0cmlidXRl
IGxvbmcgY29uZGl0aW9uYWxBdHRyMTsKICAgICBbQ29uZGl0aW9uYWw9Q29uZGl0aW9uMSZDb25k
aXRpb24yXSBhdHRyaWJ1dGUgbG9uZyBjb25kaXRpb25hbEF0dHIyOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAppbmRleCAw
YTRjYzMzM2EyOTIyMTM0YzNkODUyZmQzMmRkY2U2MjBiZjJjZDE0Li5mYjVhZTY1MjExYzE2NmVk
ZjgzN2IxNTIwYTYzZWNhODdmNzBjNzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcApAQCAtMzIxLDcgKzMyMSw3IEBA
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0
dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4CiBzdGF0aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nQXR0
ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFs
dWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RPYmoq
IGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Ci0gICAgdW5zaWduZWQg
bG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVlKTsKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgdiA9
IHRvVUludDY0KHZhbHVlKTsKICAgICBpbXAtPnNldFVuc2lnbmVkTG9uZ0xvbmdBdHRyKHYpOwog
ICAgIHJldHVybjsKIH0KQEAgLTEwNTcsNiArMTA1NywxMDIgQEAgc3RhdGljIHZvaWQgd2l0aFNj
cmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6
TG9jYWwKICAgICBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxT
dGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOwogfQogCitzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VMb25nQXR0ckF0dHJHZXR0ZXIodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7
CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsK
KyAgICByZXR1cm4gdjhJbnRlZ2VyKGltcC0+ZW5mb3JjZWRSYW5nZUxvbmdBdHRyKCksIGluZm8u
R2V0SXNvbGF0ZSgpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNl
ZFJhbmdlTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5h
bWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpW
OEludGVybmFsOjplbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOwor
fQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6
OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRv
TmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0tfVk9J
RChpbnQsIHYsIHRvSW50MzIodmFsdWUsIEVuZm9yY2VSYW5nZSwgb2spLCBpbmZvLkdldElzb2xh
dGUoKSk7CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0F0dHIodik7CisgICAgcmV0dXJu
OworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJh
Y2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFs
OjplbmZvcmNlZFJhbmdlTG9uZ0F0dHJBdHRyU2V0dGVyKG5hbWUsIHZhbHVlLCBpbmZvKTsKK30K
Kworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25n
QXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2
ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4gdjhVbnNpZ25lZEludGVnZXIoaW1wLT5lbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nQXR0cigpLCBpbmZvLkdldElzb2xhdGUoKSk7Cit9CisKK3N0
YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJB
dHRyR2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpB
Y2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjplbmZv
cmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwgaW5mbyk7Cit9CisKK3N0
YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlcih2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0
b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLX1ZP
SUQodW5zaWduZWQsIHYsIHRvVUludDMyKHZhbHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5H
ZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHIo
dik7CisgICAgcmV0dXJuOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5zaWduZWRM
b25nQXR0ckF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6
OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7
CisgICAgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0
clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9i
aiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICByZXR1cm4g
djg6Ok51bWJlcjo6TmV3KHN0YXRpY19jYXN0PGRvdWJsZT4oaW1wLT5lbmZvcmNlZFJhbmdlTG9u
Z0xvbmdBdHRyKCkpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZvcmNl
ZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIHJldHVybiBUZXN0
T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXIobmFtZSwg
aW5mbyk7Cit9CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBW
OFRlc3RPYmo6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9U
WVBFQ0hFQ0tfVk9JRChsb25nIGxvbmcsIHYsIHRvSW50NjQodmFsdWUsIEVuZm9yY2VSYW5nZSwg
b2spLCBpbmZvLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5zZXRFbmZvcmNlZFJhbmdlTG9uZ0xv
bmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZUxv
bmdMb25nQXR0ckF0dHJTZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
Cit7CisgICAgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRy
U2V0dGVyKG5hbWUsIHZhbHVlLCBpbmZvKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAg
cmV0dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2FzdDxkb3VibGU+KGltcC0+ZW5mb3JjZWRS
YW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyKCkpKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJh
Y2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGlu
Zm8pCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWdu
ZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0tfVk9JRCh1bnNp
Z25lZCBsb25nIGxvbmcsIHYsIHRvVUludDY0KHZhbHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5m
by5HZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xv
bmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVu
c2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5m
byYgaW5mbykKK3sKKyAgICBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVk
TG9uZ0xvbmdBdHRyQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7Cit9CisKICNpZiBFTkFC
TEUoQ29uZGl0aW9uMSkKIAogc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjb25kaXRpb25h
bEF0dHIxQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKQEAgLTIxNzcsNiArMjI3Myw2NiBAQCBzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHN0YXRpY01ldGhvZFdpdGhDYWxsYmFja0FyZ01ldGhvZENhbGxiYWNrKGNv
bnN0IHY4OgogICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6c3RhdGljTWV0aG9kV2l0aENh
bGxiYWNrQXJnTWV0aG9kKGFyZ3MpOwogfQogCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMk1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBh
cmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93
Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoq
IGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRD
SF9XSVRIX1RZUEVDSEVDSyhpbnQsIHZhbHVlLCB0b0ludDMyKGFyZ3NbMF0sIEVuZm9yY2VSYW5n
ZSwgb2spLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJh
bmdlSW50MzIodmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMk1ldGhvZENh
bGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRlc3RPYmpW
OEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2QoYXJncyk7Cit9CisK
K3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQz
Mk1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0
aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJn
cy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUo
YXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyh1bnNpZ25lZCwg
dmFsdWUsIHRvVUludDMyKGFyZ3NbMF0sIEVuZm9yY2VSYW5nZSwgb2spLCBhcmdzLkdldElzb2xh
dGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyKHZhbHVlKTsKKyAg
ICByZXR1cm4gdjhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyTWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFy
Z3VtZW50cyYgYXJncykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VVSW50MzJNZXRob2QoYXJncyk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDY0TWV0aG9kKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MpCit7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICBy
ZXR1cm4gdGhyb3dOb3RFbm91Z2hBcmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7Cisg
ICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAg
ICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKGxvbmcgbG9uZywgdmFsdWUsIHRvSW50NjQoYXJn
c1swXSwgRW5mb3JjZVJhbmdlLCBvayksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPm1l
dGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCh2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVk
KCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VS
YW5nZUludDY0TWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAg
ICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NE1l
dGhvZChhcmdzKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRo
RW5mb3JjZVJhbmdlVUludDY0TWV0aG9kKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7Cisg
ICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdGhyb3dOb3RFbm91Z2hB
cmd1bWVudHNFcnJvcihhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVGVzdE9iaiogaW1wID0gVjhU
ZXN0T2JqOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKKyAgICBWOFRSWUNBVENIX1dJVEhfVFlQ
RUNIRUNLKHVuc2lnbmVkIGxvbmcgbG9uZywgdmFsdWUsIHRvVUludDY0KGFyZ3NbMF0sIEVuZm9y
Y2VSYW5nZSwgb2spLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5m
b3JjZVJhbmdlVUludDY0KHZhbHVlKTsKKyAgICByZXR1cm4gdjhVbmRlZmluZWQoKTsKK30KKwor
c3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0
TWV0aG9kQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICByZXR1cm4g
VGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50NjRNZXRob2QoYXJn
cyk7Cit9CisKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKIAogc3RhdGljIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiBjb25kaXRpb25hbE1ldGhvZDFNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cykKQEAgLTI4ODIsNiArMzAzOCwxNCBAQCBzdGF0aWMgY29uc3QgVjhET01Db25maWd1cmF0aW9u
OjpCYXRjaGVkQXR0cmlidXRlIFY4VGVzdE9iakF0dHJzW10gPSB7CiAgICAgeyJ3aXRoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZSIsIFRlc3RP
YmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFuZFNjcmlwdFN0YXRlV2l0
aFNwYWNlc0F0dHJpYnV0ZUF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6Ondp
dGhTY3JpcHRFeGVjdXRpb25Db250ZXh0QW5kU2NyaXB0U3RhdGVXaXRoU3BhY2VzQXR0cmlidXRl
QXR0clNldHRlckNhbGxiYWNrLCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nl
c3NDb250cm9sPih2ODo6REVGQVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0
ZT4odjg6Ok5vbmUpLCAwIC8qIG9uIGluc3RhbmNlICovfSwKICAgICAvLyBBdHRyaWJ1dGUgJ3dp
dGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGUnIChUeXBlOiAnYXR0cmlidXRl
JyBFeHRBdHRyOiAnQ2FsbFdpdGgnKQogICAgIHsid2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxT
dGFja0F0dHJpYnV0ZSIsIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0QXJndW1lbnRzQW5k
Q2FsbFN0YWNrQXR0cmlidXRlQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6
d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJTZXR0ZXJDYWxsYmFj
aywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRF
RkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAv
KiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdlbmZvcmNlZFJhbmdlTG9uZ0F0
dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVu
Zm9yY2VkUmFuZ2VMb25nQXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlTG9u
Z0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdl
TG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8
djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5
QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJp
YnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBF
eHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdB
dHRyIiwgVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0
ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVk
TG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8
djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5
QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8vIEF0dHJp
YnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cicgKFR5cGU6ICdhdHRyaWJ1dGUnIEV4dEF0
dHI6ICdFbmZvcmNlUmFuZ2UnKQorICAgIHsiZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ciIsIFRl
c3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxi
YWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJTZXR0
ZXJDYWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJv
bD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpO
b25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCisgICAgLy8gQXR0cmlidXRlICdlbmZvcmNlZFJh
bmdlVW5zaWduZWRMb25nTG9uZ0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5m
b3JjZVJhbmdlJykKKyAgICB7ImVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ciIsIFRl
c3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0
dGVyQ2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjplbmZvcmNlZFJhbmdlVW5zaWduZWRMb25n
TG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3RhdGljX2Nhc3Q8
djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5
QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAogI2lmIEVOQUJMRShD
b25kaXRpb24xKQogICAgIC8vIEF0dHJpYnV0ZSAnY29uZGl0aW9uYWxBdHRyMScgKFR5cGU6ICdh
dHRyaWJ1dGUnIEV4dEF0dHI6ICdDb25kaXRpb25hbCcpCiAgICAgeyJjb25kaXRpb25hbEF0dHIx
IiwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFsQXR0cjFBdHRyR2V0dGVyQ2FsbGJhY2ss
IFRlc3RPYmpWOEludGVybmFsOjpjb25kaXRpb25hbEF0dHIxQXR0clNldHRlckNhbGxiYWNrLCAw
IC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVGQVVM
VCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8qIG9u
IGluc3RhbmNlICovfSwKQEAgLTI5NjYsNiArMzEzMCwxMCBAQCBzdGF0aWMgY29uc3QgVjhET01D
b25maWd1cmF0aW9uOjpCYXRjaGVkTWV0aG9kIFY4VGVzdE9iak1ldGhvZHNbXSA9IHsKICAgICB7
Im1ldGhvZFdpdGhDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoQ2Fs
bGJhY2tBcmdNZXRob2RDYWxsYmFja30sCiAgICAgeyJtZXRob2RXaXRoTm9uQ2FsbGJhY2tBcmdB
bmRDYWxsYmFja0FyZyIsIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoTm9uQ2FsbGJhY2tB
cmdBbmRDYWxsYmFja0FyZ01ldGhvZENhbGxiYWNrfSwKICAgICB7Im1ldGhvZFdpdGhDYWxsYmFj
a0FuZE9wdGlvbmFsQXJnIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhDYWxsYmFja0Fu
ZE9wdGlvbmFsQXJnTWV0aG9kQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5n
ZUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMk1l
dGhvZENhbGxiYWNrfSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzIiLCBUZXN0
T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQzMk1ldGhvZENhbGxiYWNr
fSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NCIsIFRlc3RPYmpWOEludGVybmFs
OjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRNZXRob2RDYWxsYmFja30sCisgICAgeyJtZXRo
b2RXaXRoRW5mb3JjZVJhbmdlVUludDY0IiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhF
bmZvcmNlUmFuZ2VVSW50NjRNZXRob2RDYWxsYmFja30sCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEp
CiAgICAgeyJjb25kaXRpb25hbE1ldGhvZDEiLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0aW9u
YWxNZXRob2QxTWV0aG9kQ2FsbGJhY2t9LAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcAppbmRl
eCBlNjc3ZWJjOTU4MWMwYjNkNWMzMmU5NDgwYWNmNTg3M2ZmOTU2MDYzLi5iZTBiZWIyNTc1MGQw
N2Q4ZGMxNmNjNmU0NDhiZDZmYzJlYzE1MTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAKQEAgLTk0
LDcgKzk0LDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB1bnNpZ25lZExvbmdMb25n
QXR0ckF0dHJHZXR0ZXJDYWxsYmFjayh2ODo6TG9jYWw8djgKIHN0YXRpYyB2b2lkIHVuc2lnbmVk
TG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAg
ICAgVGVzdFR5cGVkZWZzKiBpbXAgPSBWOFRlc3RUeXBlZGVmczo6dG9OYXRpdmUoaW5mby5Ib2xk
ZXIoKSk7Ci0gICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b0ludDY0KHZhbHVlKTsKKyAgICB1
bnNpZ25lZCBsb25nIGxvbmcgdiA9IHRvVUludDY0KHZhbHVlKTsKICAgICBpbXAtPnNldFVuc2ln
bmVkTG9uZ0xvbmdBdHRyKHYpOwogICAgIHJldHVybjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOEJpbmRpbmcuY3BwCmluZGV4IGM1MDUzYmE5Y2M5ZmM1ZWIzZGU3YzZhYzg3MTlmYTRm
MWNhMjU3YjQuLjNjMjdmMzI1ZjVjZmQzMGY3NzljODI4NzFiZjY1MWY3MDY0MDlhNDMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcApAQCAtMTAzLDQwICsxMDMsNDkg
QEAgUGFzc1JlZlB0cjxOb2RlRmlsdGVyPiB0b05vZGVGaWx0ZXIodjg6OkhhbmRsZTx2ODo6VmFs
dWU+IGNhbGxiYWNrKQogICAgIHJldHVybiBOb2RlRmlsdGVyOjpjcmVhdGUoVjhOb2RlRmlsdGVy
Q29uZGl0aW9uOjpjcmVhdGUoY2FsbGJhY2spKTsKIH0KIAotaW50IHRvSW50MzIodjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IHZhbHVlLCBib29sJiBvaykKK2NvbnN0IGludDMyX3Qga01pbkludDMyID0g
LTB4ODAwMDAwMDA7Citjb25zdCBpbnQzMl90IGtNYXhJbnQzMiA9IDB4N2ZmZmZmZmY7Citjb25z
dCB1aW50MzJfdCBrTWF4VUludDMyID0gMHhmZmZmZmZmZjsKK2NvbnN0IGludDY0X3Qga0pTTWF4
SW50ZWdlciA9IDB4MjAwMDAwMDAwMDAwMDBMTCAtIDE7IC8vIDJeNTMgLSAxLCBtYXhpbXVtIGlu
dGVnZXIgZXhhY3RseSByZXByZXNlbnRhYmxlIGluIEVDTUFTY3JpcHQuCisKK2ludDMyX3QgdG9J
bnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIEludGVnZXJDb252ZXJzaW9uQ29uZmln
dXJhdGlvbiBjb25maWd1cmF0aW9uLCBib29sJiBvaykKIHsKICAgICBvayA9IHRydWU7Ci0gICAg
CisKICAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhbHJlYWR5IGEgMzItYml0IGludGVn
ZXIuCiAgICAgaWYgKHZhbHVlLT5Jc0ludDMyKCkpCiAgICAgICAgIHJldHVybiB2YWx1ZS0+SW50
MzJWYWx1ZSgpOwotICAgIAorCiAgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8g
YSBudW1iZXI/CiAgICAgdjg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVl
LT5Ub051bWJlcigpOwogICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAg
IG9rID0gZmFsc2U7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICAKKworICAgIGlmIChj
b25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICBkb3VibGUgeCA9IG51bWJl
ck9iamVjdC0+VmFsdWUoKTsKKyAgICAgICAgaWYgKHN0ZDo6aXNuYW4oeCkgfHwgc3RkOjppc2lu
Zih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOwor
ICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3IoZmFicyh4KSk7
CisgICAgICAgIGlmICh4IDwga01pbkludDMyIHx8IHggPiBrTWF4SW50MzIpIHsKKyAgICAgICAg
ICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAg
ICAgIHJldHVybiB4OworICAgIH0KKwogICAgIC8vIERvZXMgdGhlIHZhbHVlIGNvbnZlcnQgdG8g
bmFuIG9yIHRvIGFuIGluZmluaXR5PwogICAgIGRvdWJsZSBudW1iZXJWYWx1ZSA9IG51bWJlck9i
amVjdC0+VmFsdWUoKTsKLSAgICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjpp
c2luZihudW1iZXJWYWx1ZSkpIHsKLSAgICAgICAgb2sgPSBmYWxzZTsKLSAgICAgICAgcmV0dXJu
IDA7Ci0gICAgfQotICAgIAotICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEg
MzItYml0IGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpJbnQzMj4gaW50VmFsdWUgPSB2YWx1
ZS0+VG9JbnQzMigpOwotICAgIGlmIChpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsKLSAgICAgICAgb2sg
PSBmYWxzZTsKKyAgICBpZiAoc3RkOjppc25hbihudW1iZXJWYWx1ZSkgfHwgc3RkOjppc2luZihu
dW1iZXJWYWx1ZSkpCiAgICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBSZXR1
cm4gdGhlIHJlc3VsdCBvZiB0aGUgaW50MzIgY29udmVyc2lvbi4KLSAgICByZXR1cm4gaW50VmFs
dWUtPlZhbHVlKCk7CisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+SW50MzJWYWx1ZSgpOwogfQot
ICAgIAotdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBib29s
JiBvaykKKwordWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJ
bnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9vbCYgb2spCiB7
CiAgICAgb2sgPSB0cnVlOwogCkBAIC0xNDQsMTAgKzE1MywxNiBAQCB1aW50MzJfdCB0b1VJbnQz
Mih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKQogICAgIGlmICh2YWx1ZS0+
SXNVaW50MzIoKSkKICAgICAgICAgcmV0dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgpOwogCisgICAg
Ly8gRmFzdCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgc2lnbmVkIGludGVnZXIgLSBwb3Nz
aWJseSBwb3NpdGl2ZT8KICAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgewogICAgICAgICBpbnQz
Ml90IHJlc3VsdCA9IHZhbHVlLT5JbnQzMlZhbHVlKCk7CiAgICAgICAgIGlmIChyZXN1bHQgPj0g
MCkKICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIGlmIChjb25maWd1cmF0aW9u
ID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAg
IHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogCiAg
ICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CkBAIC0xNTcsMjEg
KzE3MiwxMTAgQEAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVl
LCBib29sJiBvaykKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCisgICAgaWYgKGNvbmZpZ3Vy
YXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7CisgICAgICAgIGRvdWJsZSB4ID0gbnVtYmVyT2JqZWN0
LT5WYWx1ZSgpOworICAgICAgICBpZiAoc3RkOjppc25hbih4KSB8fCBzdGQ6OmlzaW5mKHgpKSB7
CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAg
IH0KKyAgICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAg
ICAgaWYgKHggPCAwIHx8IHggPiBrTWF4VUludDMyKSB7CisgICAgICAgICAgICBvayA9IGZhbHNl
OworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsK
KyAgICB9CisKICAgICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBp
bmZpbml0eT8KICAgICBkb3VibGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7
Ci0gICAgaWYgKHN0ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFs
dWUpKSB7CisgICAgaWYgKHN0ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVt
YmVyVmFsdWUpKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gbnVtYmVyT2JqZWN0LT5V
aW50MzJWYWx1ZSgpOworfQorCitpbnQ2NF90IHRvSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9v
bCYgb2spCit7CisgICAgb2sgPSB0cnVlOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUg
aXMgYSAzMi1iaXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkKKyAgICAgICAg
cmV0dXJuIHZhbHVlLT5JbnQzMlZhbHVlKCk7CisKKyAgICAvLyBDYW4gdGhlIHZhbHVlIGJlIGNv
bnZlcnRlZCB0byBhIG51bWJlcj8KKyAgICB2ODo6TG9jYWw8djg6Ok51bWJlcj4gbnVtYmVyT2Jq
ZWN0ID0gdmFsdWUtPlRvTnVtYmVyKCk7CisgICAgaWYgKG51bWJlck9iamVjdC5Jc0VtcHR5KCkp
IHsKICAgICAgICAgb2sgPSBmYWxzZTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0gICAg
Ly8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdl
cj8KLSAgICB2ODo6TG9jYWw8djg6OlVpbnQzMj4gdWludFZhbHVlID0gdmFsdWUtPlRvVWludDMy
KCk7Ci0gICAgaWYgKHVpbnRWYWx1ZS5Jc0VtcHR5KCkpIHsKKyAgICBkb3VibGUgeCA9IG51bWJl
ck9iamVjdC0+VmFsdWUoKTsKKworICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5n
ZSkgeworICAgICAgICBpZiAoc3RkOjppc25hbih4KSB8fCBzdGQ6OmlzaW5mKHgpKSB7CisgICAg
ICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAg
ICAgICAgeCA9ICh4IDwgMCA/IC0xIDogMSkgKiBmbG9vcihmYWJzKHgpKTsKKyAgICAgICAgaWYg
KHggPCAta0pTTWF4SW50ZWdlciB8fCB4ID4ga0pTTWF4SW50ZWdlcikgeworICAgICAgICAgICAg
b2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJl
dHVybiB4OworICAgIH0KKworICAgIC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNob3VsZCBiZSAw
LCBvdGhlcndpc2UgbW9kdWxvIDJeNjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25nIGludGVnZXI7
CisgICAgZG91YmxlVG9JbnRlZ2VyKHgsIGludGVnZXIpOworICAgIHJldHVybiBpbnRlZ2VyOwor
fQorCit1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIEludGVn
ZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiBjb25maWd1cmF0aW9uLCBib29sJiBvaykKK3sKKyAg
ICBvayA9IHRydWU7CisKKyAgICAvLyBGYXN0IGNhc2UuIFRoZSB2YWx1ZSBpcyBhIDMyLWJpdCB1
bnNpZ25lZCBpbnRlZ2VyLgorICAgIGlmICh2YWx1ZS0+SXNVaW50MzIoKSkKKyAgICAgICAgcmV0
dXJuIHZhbHVlLT5VaW50MzJWYWx1ZSgpOworCisgICAgLy8gRmFzdCBjYXNlLiBUaGUgdmFsdWUg
aXMgYSAzMi1iaXQgaW50ZWdlci4KKyAgICBpZiAodmFsdWUtPklzSW50MzIoKSkgeworICAgICAg
ICBpbnQzMl90IHJlc3VsdCA9IHZhbHVlLT5JbnQzMlZhbHVlKCk7CisgICAgICAgIGlmIChyZXN1
bHQgPj0gMCkKKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIGlmIChjb25maWd1
cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAg
ICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAg
fQorCisgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CisgICAg
djg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOwor
ICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAg
ICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIHJldHVybiB1aW50VmFsdWUtPlZhbHVlKCk7
CisgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisKKyAgICBpZiAoY29uZmln
dXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgaWYgKHN0ZDo6aXNuYW4oeCkgfHwg
c3RkOjppc2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJl
dHVybiAwOworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEpICogZmxvb3Io
ZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4ga0pTTWF4SW50ZWdlcikgeworICAg
ICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9Cisg
ICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIC8vIE5hTnMgYW5kICsvLUluZmluaXR5IHNo
b3VsZCBiZSAwLCBvdGhlcndpc2UgbW9kdWxvIDJeNjQuCisgICAgdW5zaWduZWQgbG9uZyBsb25n
IGludGVnZXI7CisgICAgZG91YmxlVG9JbnRlZ2VyKHgsIGludGVnZXIpOworICAgIHJldHVybiBp
bnRlZ2VyOwogfQogCiB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gY3JlYXRl
UmF3VGVtcGxhdGUodjg6Oklzb2xhdGUqIGlzb2xhdGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4QmluZGluZy5oCmluZGV4IGJjMTEyNWU3M2EwOWE2MDc2OTAwMDU2MTMxYTEzNWMyYjAxYTM4
YmEuLmYxODMxNWQ2M2U3NGU0ODY0ODUxMDAzYTQ2YmU1N2ZkMDVmYmVhNTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5oCkBAIC0yNDMsMzYgKzI0Myw2NiBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKICAgICB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdjhBcnJheShQYXNzUmVm
UHRyPERPTVN0cmluZ0xpc3Q+LCB2ODo6SXNvbGF0ZSopOwogCi0gICAgLy8gQ29udmVydCBhIHZh
bHVlIHRvIGEgMzItYml0IGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAg
IC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBvciBjb252ZXJ0cyB0
byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgaW50IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6
VmFsdWU+LCBib29sJiBvayk7CisgICAgLy8gQ29udmVyc2lvbiBmbGFncywgdXNlZCBpbiB0b0lu
dFhYL3RvVUludFhYLgorICAgIGVudW0gSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0aW9uIHsK
KyAgICAgICAgTm9ybWFsQ29udmVyc2lvbiwKKyAgICAgICAgRW5mb3JjZVJhbmdlLAorICAgICAg
ICAvLyBGSVhNRTogSW1wbGVtZW50IENsYW1wCisgICAgfTsKKworICAgIC8vIENvbnZlcnQgYSB2
YWx1ZSB0byBhIDMyLWJpdCBzaWduZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYg
dGhlCisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUg
cmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9X
ZWJJREwvI2VzLWxvbmcKKyAgICBpbnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKTsKKyAgICBpbmxpbmUg
aW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spIHsg
cmV0dXJuIHRvSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsgfQogCiAgICAgLy8g
Q29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNp
b24gY2Fubm90IGZhaWwuCi0gICAgaW5saW5lIGludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB2YWx1ZSkKKyAgICBpbmxpbmUgaW50MzJfdCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGJvb2wgb2s7Ci0gICAgICAgIHJldHVybiB0b0lu
dDMyKHZhbHVlLCBvayk7CisgICAgICAgIHJldHVybiB0b0ludDMyKHZhbHVlLCBOb3JtYWxDb252
ZXJzaW9uLCBvayk7CiAgICAgfQogCiAgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0
IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQotICAgIC8vIHZh
bHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYW4gdW5zaWduZWQgaW50ZWdlciBvciBjb252ZXJ0
cyB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHkuCi0gICAgdWludDMyX3QgdG9VSW50MzIodjg6Okhh
bmRsZTx2ODo6VmFsdWU+LCBib29sJiBvayk7CisgICAgLy8gdmFsdWUgY2Fubm90IGJlIGNvbnZl
cnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdlYklETDoKKyAgICAv
LyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLXVuc2lnbmVkLWxvbmcKKyAgICB1aW50
MzJfdCB0b1VJbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJzaW9uQ29u
ZmlndXJhdGlvbiwgYm9vbCYgb2spOworICAgIGlubGluZSB1aW50MzJfdCB0b1VJbnQzMih2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b1VJbnQzMih2YWx1
ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOyB9CiAKICAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8g
YSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlciBhc3N1bWluZyB0aGUgY29udmVyc2lvbiBjYW5ub3Qg
ZmFpbC4KICAgICBpbmxpbmUgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlKQogICAgIHsKICAgICAgICAgYm9vbCBvazsKLSAgICAgICAgcmV0dXJuIHRvVUludDMy
KHZhbHVlLCBvayk7CisgICAgICAgIHJldHVybiB0b1VJbnQzMih2YWx1ZSwgTm9ybWFsQ29udmVy
c2lvbiwgb2spOwogICAgIH0KIAotICAgIGlubGluZSBmbG9hdCB0b0Zsb2F0KHY4OjpMb2NhbDx2
ODo6VmFsdWU+IHZhbHVlKQorICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCBzaWdu
ZWQgaW50ZWdlci4gVGhlIGNvbnZlcnNpb24gZmFpbHMgaWYgdGhlCisgICAgLy8gdmFsdWUgY2Fu
bm90IGJlIGNvbnZlcnRlZCB0byBhIG51bWJlciBvciB0aGUgcmFuZ2UgdmlvbGF0ZWQgcGVyIFdl
YklETDoKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9XZWJJREwvI2VzLWxvbmctbG9uZwor
ICAgIGludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJz
aW9uQ29uZmlndXJhdGlvbiwgYm9vbCYgb2spOworCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRv
IGEgNjQtYml0IGludGVnZXIgYXNzdW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCisg
ICAgaW5saW5lIGludDY0X3QgdG9JbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAg
ICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHZhbHVlLT5OdW1iZXJWYWx1
ZSgpKTsKKyAgICAgICAgYm9vbCBvazsKKyAgICAgICAgcmV0dXJuIHRvSW50NjQodmFsdWUsIE5v
cm1hbENvbnZlcnNpb24sIG9rKTsKICAgICB9CiAKLSAgICBpbmxpbmUgbG9uZyBsb25nIHRvSW50
NjQodjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRv
IGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQor
ICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdl
IHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURM
LyNlcy11bnNpZ25lZC1sb25nLWxvbmcKKyAgICB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4sIEludGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiwgYm9vbCYgb2spOwor
CisgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIgYXNz
dW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCisgICAgaW5saW5lIHVpbnQ2NF90IHRv
VUludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7Ci0gICAgICAgIHJldHVy
biBzdGF0aWNfY2FzdDxsb25nIGxvbmc+KHZhbHVlLT5JbnRlZ2VyVmFsdWUoKSk7CisgICAgICAg
IGJvb2wgb2s7CisgICAgICAgIHJldHVybiB0b1VJbnQ2NCh2YWx1ZSwgTm9ybWFsQ29udmVyc2lv
biwgb2spOworICAgIH0KKworICAgIGlubGluZSBmbG9hdCB0b0Zsb2F0KHY4OjpMb2NhbDx2ODo6
VmFsdWU+IHZhbHVlKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGZsb2F0Pih2
YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CiAgICAgfQogCiAgICAgdGVtcGxhdGU8Y2xhc3MgVD4gc3Ry
dWN0IE5hdGl2ZVZhbHVlVHJhaXRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhCaW5kaW5nTWFjcm9zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJp
bmRpbmdNYWNyb3MuaAppbmRleCA2ZmViNTNlMWQ2N2IwNDUyYmI2NzM5MDVjY2Q3NmRiNDczMWEw
Y2M4Li40MzY2Y2Q0NDFiMGFmNDQxYTk1MWI0MjVmZTE4ZTNjNDczMmNhOGRiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaApAQCAtNDIsNiArNDIsMzgg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAgICAgcmV0dXJuIGJsb2NrLlJlVGhyb3co
KTsgICAgICAgXAogICAgIH0KIAorI2RlZmluZSBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLKHR5
cGUsIHZhciwgdmFsdWUsIGlzb2xhdGUpIFwKKyAgICB0eXBlIHZhcjsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgeyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBib29sIG9r
ID0gdHJ1ZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
eyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgICAgICB2ODo6VHJ5Q2F0Y2ggYmxvY2s7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgdmFyID0gKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICAgIGlmIChibG9jay5IYXNDYXVnaHQoKSkgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrLlJlVGhyb3co
KTsgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKFVOTElLRUxZKCFv
aykpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICByZXR1
cm4gdGhyb3dUeXBlRXJyb3IoMCwgaXNvbGF0ZSk7ICAgICAgICAgICAgICAgXAorICAgIH0KKwor
I2RlZmluZSBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLX1ZPSUQodHlwZSwgdmFyLCB2YWx1ZSwg
aXNvbGF0ZSkgXAorICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBib29sIG9rID0gdHJ1
ZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICAgICAgdjg6OlRyeUNhdGNoIGJsb2NrOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICAgICAgdmFyID0gKHZhbHVlKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgaWYgKGJsb2NrLkhhc0NhdWdo
dCgpKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgIGJs
b2NrLlJlVGhyb3coKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAg
ICAgICAgICAgIHJldHVybjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkg
eyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgdGhy
b3dUeXBlRXJyb3IoMCwgaXNvbGF0ZSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAgICAgICAgcmV0dXJuOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgIH0KKwogI2RlZmluZSBWOFRSWUNBVENIX0ZPUl9WOFNU
UklOR1JFU09VUkNFKHR5cGUsIHZhciwgdmFsdWUpIFwKICAgICB0eXBlIHZhcih2YWx1ZSk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgaWYgKCF2YXIu
cHJlcGFyZSgpKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaCBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKaW5kZXggMjRiMzNkZDE4MmVlZGM4
MzFmNmE1YTUxOTE5Yzg0ZDQzZWMwMWRkNy4uOGRlMTAyZjJhMjQ3N2RlMTAwOTU4MzYzODg2NzJk
YTU4MTBjODhmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVy
c2lvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCkBA
IC0zNiwyNSArMzYsMzMgQEAgY2xhc3MgVHlwZUNvbnZlcnNpb25zIDogcHVibGljIFJlZkNvdW50
ZWQ8VHlwZUNvbnZlcnNpb25zPiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8VHlw
ZUNvbnZlcnNpb25zPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgVHlwZUNvbnZlcnNp
b25zKCkpOyB9CiAKLSAgICBsb25nIHRlc3RMb25nKCkgeyByZXR1cm4gbV90ZXN0TG9uZzsgfQot
ICAgIHZvaWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX3Rlc3RMb25nID0gdmFsdWU7IH0K
LSAgICB1bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Rlc3RVbnNp
Z25lZExvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RVbnNpZ25lZExvbmcodW5zaWduZWQgbG9uZyB2
YWx1ZSkgeyBtX3Rlc3RVbnNpZ25lZExvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgdGVzdExvbmco
KSB7IHJldHVybiBtX2xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RMb25nKGxvbmcgdmFsdWUpIHsg
bV9sb25nID0gdmFsdWU7IH0KKyAgICBsb25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nKCkgeyByZXR1
cm4gbV9sb25nOyB9CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlTG9uZyhsb25nIHZhbHVl
KSB7IG1fbG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyB0ZXN0VW5zaWduZWRMb25n
KCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RVbnNpZ25lZExv
bmcodW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZyA9IHZhbHVlOyB9CisgICAg
dW5zaWduZWQgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nKCkgeyByZXR1cm4gbV91
bnNpZ25lZExvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmco
dW5zaWduZWQgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZyA9IHZhbHVlOyB9CiAKLSAgICBs
b25nIGxvbmcgdGVzdExvbmdMb25nKCkgeyByZXR1cm4gbV90ZXN0TG9uZ0xvbmc7IH0KLSAgICB2
b2lkIHNldFRlc3RMb25nTG9uZyhsb25nIGxvbmcgdmFsdWUpIHsgbV90ZXN0TG9uZ0xvbmcgPSB2
YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9uZygpIHsg
cmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmc7IH0KLSAgICB2b2lkIHNldFRlc3RVbnNpZ25l
ZExvbmdMb25nKHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Rlc3RVbnNpZ25lZExvbmdM
b25nID0gdmFsdWU7IH0KKyAgICBsb25nIGxvbmcgdGVzdExvbmdMb25nKCkgeyByZXR1cm4gbV9s
b25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdExvbmdMb25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBt
X2xvbmdMb25nID0gdmFsdWU7IH0KKyAgICBsb25nIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nKCkgeyByZXR1cm4gbV9sb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nKGxvbmcgbG9uZyB2YWx1ZSkgeyBtX2xvbmdMb25nID0gdmFsdWU7IH0KKyAgICB1
bnNpZ25lZCBsb25nIGxvbmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmcoKSB7IHJldHVybiBtX3Vuc2ln
bmVkTG9uZ0xvbmc7IH0KKyAgICB2b2lkIHNldFRlc3RVbnNpZ25lZExvbmdMb25nKHVuc2lnbmVk
IGxvbmcgbG9uZyB2YWx1ZSkgeyBtX3Vuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIHVu
c2lnbmVkIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZygpIHsgcmV0
dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQorICAgIHZvaWQgc2V0VGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdW5zaWduZWRMb25n
TG9uZyA9IHZhbHVlOyB9CiAKIHByaXZhdGU6CiAgICAgVHlwZUNvbnZlcnNpb25zKCkKICAgICB7
CiAgICAgfQogCi0gICAgbG9uZyBtX3Rlc3RMb25nOwotICAgIHVuc2lnbmVkIGxvbmcgbV90ZXN0
VW5zaWduZWRMb25nOwotICAgIGxvbmcgbG9uZyBtX3Rlc3RMb25nTG9uZzsKLSAgICB1bnNpZ25l
ZCBsb25nIGxvbmcgbV90ZXN0VW5zaWduZWRMb25nTG9uZzsKKyAgICBsb25nIG1fbG9uZzsKKyAg
ICB1bnNpZ25lZCBsb25nIG1fdW5zaWduZWRMb25nOworICAgIGxvbmcgbG9uZyBtX2xvbmdMb25n
OworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Vuc2lnbmVkTG9uZ0xvbmc7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5
cGVDb252ZXJzaW9ucy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9u
cy5pZGwKaW5kZXggMzY3ZDFmN2VjNDg0MmU0MWY2YWFhMzEwYWIyMmE5YmM1MDFjZjg0Zi4uYjI3
YjE1OGQ3NjMzYjMzNDU2MTZlZTViYzdmZTMyYzZjZTU1YTJkNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbApAQCAtMjgsOCArMjgsMTIgQEAKICAgICBJbXBs
ZW1lbnRhdGlvbkxhY2tzVlRhYmxlCiBdIGludGVyZmFjZSBUeXBlQ29udmVyc2lvbnMgewogICAg
IGF0dHJpYnV0ZSBsb25nIHRlc3RMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSBs
b25nIHRlc3RFbmZvcmNlUmFuZ2VMb25nOwogICAgIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIHRl
c3RVbnNpZ25lZExvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVuc2lnbmVkIGxv
bmcgdGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZzsKIAogICAgIGF0dHJpYnV0ZSBsb25nIGxv
bmcgdGVzdExvbmdMb25nOworICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSBsb25nIGxvbmcg
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nOwogICAgIGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxv
bmcgdGVzdFVuc2lnbmVkTG9uZ0xvbmc7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIHVu
c2lnbmVkIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZzsKIH07CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggODNmYWU5YmQwOTJkNDdhOTQ2NjNlMDYxMWRlMzMwN2JkMmMyYzRkYi4uNDhjMDZjYTU4
ZWEzNGVmZDRiYzdjOTViZTNkMGNjNTQ4MGNjOTA5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisy
MDEzLTAzLTExICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
W1Y4XSBCaW5kaW5nOiBJbXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxv
bmcgbG9uZyBjb252ZXJzaW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTY3OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBTb21lIG9mIHRoZSB0ZXN0cyBmb3IgSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmFk
ZCgpIGFzc3VtZWQgaXQgc2hvdWxkIHRocm93IGZvcgorICAgICAgICBJbmZpbml0aWVzIGFuZCBO
YU5zLCBidXQgdGhpcyBpcyBub3Qgd2hhdCB0aGUgRE9NK1dlYklETCBzcGVjcyBzYXkuIChGaXJl
Zm94IGRvZXNuJ3QgdGhyb3cKKyAgICAgICAgc28gdGhpcyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUg
YSB3ZWItY29tcGF0IGlzc3VlLikgVGhpcyB1cGRhdGVzIHRoZSB0ZXN0cy9leHBlY3RhdGlvbnMg
c28KKyAgICAgICAgdGhhdCBWOCBwYXNzZXMuIEpTQyBleHBlY3RhdGlvbnMgYXJlIEZBSUwgaW4g
YSBmZXcgcGxhY2VzIHNpbmNlIGl0IHN0aWxsIGluY29ycmVjdGx5IHRocm93cworICAgICAgICBv
biBJbmZpbml0eS9OYU4gLT4gaW50MzIgY29udmVyc2lvbiAoZXhpc3RpbmcgdGVzdHMpIGFuZCBk
b2VzIG5vdCBpbXBsZW1lbnQgRW5mb3JjZVJhbmdlCisgICAgICAgIChuZXcgdGVzdHMpLgorCisg
ICAgICAgIFRuZSBub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzIHRlc3Qgd2Fz
IGFsc28gYnJva2VuIGZvciBOYU4gdGVzdGluZywgcmVwb3J0aW5nCisgICAgICAgIGluY29ycmVj
dCByZXN1bHRzIHdoaWNoIGhpZCBzb21lIG9mIHRoaXMgYmVoYXZpb3IuCisKKyAgICAgICAgKiBm
YXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4
dDogRmFpbGluZyBiZWhhdmlvciBmb3IgSlNDLgorICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10
ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzOiBIVE1MT3B0aW9u
c0NvbGxlY3Rpb24uYWRkKCkKKyAgICAgICAgc2hvdWxkIG5vdCB0aHJvdyBvbiBOYU5zL0luZmlu
aXRpZXMuCisgICAgICAgICogZmFzdC9qcy9zY3JpcHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRk
LmpzOiBEaXR0by4KKyAgICAgICAgKiBmYXN0L2pzL3NlbGVjdC1vcHRpb25zLWFkZC1leHBlY3Rl
ZC50eHQ6IEZhaWxpbmcgYmVoYXZpb3IgZm9yIEpTQy4KKyAgICAgICAgKiBmYXN0L2pzL3dlYmlk
bC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0OiBEaXR0by4KKyAgICAgICAgKiBmYXN0L2pzL3dl
YmlkbC10eXBlLW1hcHBpbmcuaHRtbDogQWRkZWQgdGVzdCBjYXNlcyBmb3IgW0VuZm9yY2VSYW5n
ZV0KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1
ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDogQWRkZWQgLSBwYXNzaW5nIGJlaGF2
aW9yIGZvciBWOC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3NlbGVjdC1v
cHRpb25zLWFkZC1leHBlY3RlZC50eHQ6IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0
ZWQudHh0OiBBZGRlZCBub24tZmluaXRlIHRlc3QgY2FzZXMuCisgICAgICAgICogc3RvcmFnZS9p
bmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuanM6IERpdHRvLgor
CiAyMDEzLTAzLTEyICBWc2V2b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFdlYiBJbnNwZWN0b3I6IFJlc291cmNlU2NyaXB0RmlsZSBkaXZlcmdlZCBzdGF0ZSBz
aG91bGQgYmUgY29ycmVjdGx5IHJlc2V0IGFmdGVyIGRlYnVnZ2VyIHJlc2V0LgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVzLW51bWVyaWMtcGFyYW1l
dGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1
ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCA5N2JmMWUwNjcxMjM3ZTYw
NjMzYzY2ZjBjMTM4OGMxNjc2MTQyMjhmLi40NzEzYzQyN2VmMGQ0YjdhZmQ1MjNjZTdkMTk4OTc5
N2RmYjdlZmVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12
YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4
dApAQCAtMjgsNyArMjgsNyBAQCBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmJvZHku
c2Nyb2xsVG9wID0geCcpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9s
aWN5KCdkb2N1bWVudC5pbWFnZXMuaXRlbSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFT
UyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLnNldFNl
bGVjdGlvblJhbmdlKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCiBQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iikuc2V0U2VsZWN0aW9uUmFu
Z2UoMCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKLVBBU1Mgbm9uTnVtZXJpY1BvbGljeSgn
Y3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
Im9wdGlvbiIpLCB4KScpIGlzICdudW1iZXIgb3IgbnVsbCBhbGxvd2VkIChvciBvbWl0dGVkLCBi
dXQgbm90IGluZmluaXRlKScKK0ZBSUwgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlv
bnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpLCB4KScp
IHNob3VsZCBiZSBhbnkgdHlwZSBhbGxvd2VkLiBXYXMgbWl4ZWQuCiBQQVNTIG5vbk51bWVyaWNQ
b2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92ZSh4KScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxl
bWVudCgpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmlj
UG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9u
b24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzIGIvTGF5b3V0VGVzdHMvZmFz
dC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMu
anMKaW5kZXggMmU3MDA2YzVhOWYyZDQ5MjIxZWJmMzQyOTk0MDNhMThmMGJmOWE2ZC4uNThiZWQx
NjgwM2ZlNzhhMTU3ODNjNzIwYWZiNDU0M2VmOGUzZjg1NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFt
ZXRlcnMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1l
cmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKQEAgLTY0LDcgKzY0LDcgQEAgZnVuY3Rp
b24gbm9uTnVtZXJpY1BvbGljeSh0ZW1wbGF0ZSkKICAgICB0cnkgewogICAgICAgICBldmFsKHRl
bXBsYXRlKTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIE5hTkFsbG93ZWQgPSAwOworICAg
ICAgICBuYW5BbGxvd2VkID0gMDsKICAgICB9CiAKICAgICB2YXIgb21pdEFsbG93ZWQgPSAtMTsg
Ly8gbWVhbnMgIm5vdCBhcHBsaWNhYmxlIgpAQCAtMjQ0LDcgKzI0NCw3IEBAIHNob3VsZEJlKCJu
b25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIikuc2V0U2Vs
ZWN0aW9uUmFuZ2UoCiAKIC8vIEhUTUxPcHRpb25zQ29sbGVjdGlvbgogCi1zaG91bGRCZSgibm9u
TnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoXCJvcHRpb25cIiksIHgpJykiLCAiJ251bWJlciBvciBudWxsIGFsbG93
ZWQgKG9yIG9taXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUpJyIpOworc2hvdWxkQmUoIm5vbk51bWVy
aWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5jcmVh
dGVFbGVtZW50KFwib3B0aW9uXCIpLCB4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogc2hv
dWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJl
bW92ZSh4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogCiAvLyBIVE1MU2VsZWN0RWxlbWVu
dApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQtdGVzdHMvc2VsZWN0LW9w
dGlvbnMtYWRkLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQtdGVzdHMvc2VsZWN0LW9w
dGlvbnMtYWRkLmpzCmluZGV4IGEzNThjZWE3ZWJjNjBlNWQ1Zjk1NjFiZjgxNmY2ZTQ0MDFkYjdl
MTguLmFhY2Y5NGQ2MTEzYmM3MDc4ZWIyMDg2OTg1N2EyZWZiMjhiMmZkZTIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL3NlbGVjdC1vcHRpb25zLWFkZC5qcwor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0cy9zZWxlY3Qtb3B0aW9ucy1hZGQu
anMKQEAgLTI0NCw4NCArMjQ0LDg0IEBAIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuOSBBZGQgYW4g
T3B0aW9uIGF0IGluZGV4IC1JbmZpbml0eSIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoIk9QVElPTiIpOwotc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9u
MiwgLTEvMCkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNo
b3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkTm90VGhyb3coInNl
bGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTEvMCkiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9w
dGlvbnMubGVuZ3RoIiwgIjgiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAi
MiIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xMCBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IE5h
TiIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIk9QVElPTiIpOwotc2hvdWxk
VGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMC8wKSIpOwotc2hvdWxkQmUoInNl
bGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJ
bmRleCIsICIxIik7CitzaG91bGROb3RUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24y
LCAwLzApIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI5Iik7CitzaG91
bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjMiKTsKIGRlYnVnKCIiKTsKIAogZGVidWco
IjIuMTEgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBJbmZpbml0eSIpOwogb3B0aW9uMiA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoIk9QVElPTiIpOwotc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMS8wKSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgi
LCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRO
b3RUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzApIik7CitzaG91bGRCZSgi
c2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0
ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjEyIEFkZCBhIG5vbi1PcHRp
b24gZWxlbWVudCIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIkRJViIpOwog
c2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJl
KCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVj
dGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAi
KTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwog
CiBkZWJ1ZygiMi4xMyBBZGQgYSBub24tZWxlbWVudCAoc3RyaW5nKSIpOwogb3B0aW9uMiA9ICJv
IjsKIHNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91
bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5z
ZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwg
IjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIi
KTsKIAogZGVidWcoIjIuMTQgQWRkIGEgbm9uLWVsZW1lbnQgKG51bWJlcikiKTsKIG9wdGlvbjIg
PSAzLjE0Owogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkiKTsK
LXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxl
Y3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5n
dGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIpOwogZGVi
dWcoIiIpOwogCiBkZWJ1ZygiMi4xNSBBZGQgYSBub24tZWxlbWVudCAoYm9vbGVhbikiKTsKIG9w
dGlvbjIgPSB0cnVlOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwg
MSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJl
KCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9u
cy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIp
OwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNiBBZGQgdW5kZWZpbmVkIik7CiBvcHRpb24yID0g
dW5kZWZpbmVkOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSki
KTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJlKCJz
ZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5s
ZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIpOwog
ZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNyBBZGQgbnVsbCIpOwogb3B0aW9uMiA9IG51bGw7CiBz
aG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0
ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIp
Oworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAK
IGRlYnVnKCIyLjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0eSIpOwogb3B0aW9uMiA9IC0xLzA7CiBz
aG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0
ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIp
Oworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAK
IGRlYnVnKCIyLjE5IEFkZCBOYU4iKTsKIG9wdGlvbjIgPSAwLzA7CiBzaG91bGRUaHJvdygic2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9u
cy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7
CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNl
bGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjIwIEFk
ZCBwb3NpdGl2ZSBpbmZpbml0eSIpOwogb3B0aW9uMiA9IDEvMDsKIHNob3VsZFRocm93KCJzZWxl
Y3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsK
K3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4dAppbmRleCA3YTc3Nzc4
MmU1NzYzMGY3NTlmMDA0MzM1NTIxYWExY2UwMGJkOWIyLi4zMzA1NmZmYTBiMDlmYWQ3NDRhM2Fl
MDNlNDBlNjdkY2Q1Njc5MTNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3NlbGVj
dC1vcHRpb25zLWFkZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9zZWxl
Y3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0CkBAIC0xNjMsNjQgKzE2Myw2NCBAQCBQQVNTIHNl
bGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwogUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMg
MQogCiAyLjkgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCAtSW5maW5pdHkKLVBBU1Mgc2VsZWN0Mi5v
cHRpb25zLmFkZChvcHRpb24yLCAtMS8wKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNt
YXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3Ro
IGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRp
b25zLmFkZChvcHRpb24yLCAtMS8wKSBzaG91bGQgbm90IHRocm93IGV4Y2VwdGlvbi4gVGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK0ZB
SUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgOC4gV2FzIDcuCitGQUlMIHNlbGVj
dDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgMi4gV2FzIDEuCiAKIDIuMTAgQWRkIGFuIE9wdGlv
biBhdCBpbmRleCBOYU4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAwLzApIHRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcu
Ci1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVk
SW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAvMCkgc2hvdWxk
IG5vdCB0aHJvdyBleGNlcHRpb24uIFRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNo
RXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hv
dWxkIGJlIDkuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDMu
IFdhcyAxLgogCiAyLjExIEFkZCBhbiBPcHRpb24gYXQgaW5kZXggSW5maW5pdHkKLVBBU1Mgc2Vs
ZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzApIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlw
ZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5s
ZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3Qy
Lm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEvMCkgc2hvdWxkIG5vdCB0aHJvdyBleGNlcHRpb24uIFRo
cmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcu
CitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwg
c2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xMiBBZGQgYSBu
b24tT3B0aW9uIGVsZW1lbnQKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3
LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdh
cyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiAy
LjEzIEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQo
b3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9N
IEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNl
bGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hv
dWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0
LiBXYXMgMS4KIAogMi4xNCBBZGQgYSBub24tZWxlbWVudCAobnVtYmVyKQogUEFTUyBzZWxlY3Qy
Lm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21h
dGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGgg
aXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlv
bnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRl
eCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTUgQWRkIGEgbm9uLWVsZW1lbnQgKGJvb2xlYW4p
CiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlM
IHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xNiBBZGQgdW5kZWZpbmVk
CiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlM
IHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xNyBBZGQgbnVsbAogUEFT
UyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjog
VHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9u
cy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxl
Y3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVjdDIuc2Vs
ZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTggQWRkIG5lZ2F0aXZlIGluZmlu
aXR5CiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0
Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitG
QUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xOSBBZGQgTmFOCiBQ
QVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNl
bGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5z
ZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4yMCBBZGQgcG9zaXRpdmUgaW5m
aW5pdHkKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxl
Y3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEK
K0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBz
ZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgogCiBQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2Vi
aWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlk
bC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CmluZGV4IDViMmE4Y2YxNGQ0ZTZkZWUwYWI3NDlm
YThmY2Y4MTAzOWE3OGQwZDguLjY4NjA2M2RjMmExZjFkOGYzMjMwOTBiOWZhN2I5YzE1YjRhZDVj
MjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5n
LWV4cGVjdGVkLnR4dApAQCAtNjksMTMgKzY5LDc4IEBAIGNvbnZlcnRlci50ZXN0TG9uZyA9IHRy
dWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICcn
CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMn
CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxs
CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmcgPSB1bmRl
ZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKLVBBU1MgY29udmVydGVyLnRlc3RM
b25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0
aW9uIEVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigp
e3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBjdXN0
b20uCisKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQor
UEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID09PSAnbnVtYmVyJyBp
cyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4N0YKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkYKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODEKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgxCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg4MDAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4
MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAxCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAw
eDdGRkZGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMDAw
MDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDIxNDc0ODM2NDguCitGQUlMIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRkZGRkYgc2hvdWxkIHRocm93IGFuIGV4
Y2VwdGlvbi4gV2FzIDQyOTQ5NjcyOTUuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4
ODAwMDAwMDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMDAw
MDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgzNjQ5LgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweERDQkE5ODc2NTQzMjEwIHNob3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2ODk4MC4KK0ZBSUwgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBXYXMgMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1O
dW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS43OTc2OTMx
MzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtTnVtYmVy
Lk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEu
OTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitGQUlMIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IEluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyBJbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtSW5maW5pdHkuCitG
QUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE5hTiBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gZmFs
c2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEK
K0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJ2FiYycgc2hvdWxkIHRocm93
IGFuIGV4Y2VwdGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9
IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK0ZBSUwgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdW5kZWZpbmVkIHNob3VsZCB0aHJvdyBhbiBl
eGNlcHRpb24uIFdhcyB1bmRlZmluZWQuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KIAogUEFTUyAndGVzdFVuc2lnbmVkTG9uZycg
aW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nID09PSAnbnVtYmVyJyBpcyB0cnVlCkBAIC0xNDEsMTMgKzIwNiw3MyBAQCBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
aXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnJwogUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICcxJworUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0gbnVsbAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHVuZGVmaW5lZAogUEFTUyBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCi1QQVNTIGNvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhj
ZXB0aW9uIEVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9m
OmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZycgaW4g
Y29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IC0xIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
aXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGCitGQUlMIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlv
bi4gV2FzIC0xMjguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjkuCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgaXMgMHhGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gLTB4ODAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY4LgorRkFJ
TCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDEgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OS4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nIGlzIDB4RkZGRkZGRkYKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgLTIxNDc0ODM2NDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgz
NjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RENC
QTk4NzY1NDMyMTAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDYyMTI5NjU4ODU5MzY4
OTgwLgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IE51bWJl
ci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3NjkzMTM0ODYy
MzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1i
ZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVt
YmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEuNzk3NjkzMTM0
ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAt
TnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEuOTkK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xLjk5IHNob3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdhcyAtMS45OS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMg
SW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
LUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtSW5maW5pdHkuCitGQUlM
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gTmFOIHNob3VsZCB0aHJv
dyBhbiBleGNlcHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gdHJ1ZQor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJjLgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0gdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBjdXN0b20uCiAKIFBBU1MgJ3Rlc3RMb25nTG9uZycgaW4gY29udmVy
dGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPT09ICdudW1i
ZXInIGlzIHRydWUKQEAgLTE5MywyMyArMzE4LDEwMSBAQCBjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIu
dGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZB
TFVFCitGQUlMIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdhcyAtOTIyMzM3
MjAzNjg1NDc3NjAwMC4KK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxV
RQorRkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIw
MzY4NTQ3NzYwMDAuCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMS45OQogUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMS45OQogUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0g
SW5maW5pdHkKK0ZBSUwgY29udmVydGVyLnRlc3RMb25nTG9uZyBzaG91bGQgYmUgMC4gV2FzIC05
MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC1JbmZpbml0eQor
RkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBXYXMgLTkyMjMzNzIwMzY4
NTQ3NzYwMDAuCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IGZhbHNlCiBQQVNTIGNv
bnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHRydWUK
IFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExv
bmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQogY29udmVydGVy
LnRlc3RMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAog
Y29udmVydGVyLnRlc3RMb25nTG9uZyA9IG51bGwKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9u
ZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdW5kZWZpbmVkCiBQQVNTIGNvbnZlcnRl
ci50ZXN0TG9uZ0xvbmcgaXMgMAotUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBu
ZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9tLgorCitQ
QVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNT
IHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID09PSAnbnVtYmVyJyBp
cyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMAorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4
ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
IGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODEKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
IGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkZGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAw
eDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3
RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMDAwMDAK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAwMDAwCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9u
LiBXYXMgNjIxMjk2NTg4NTkzNjg5ODAuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVy
Lk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAK
K0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE51bWJlci5NQVhfVkFM
VUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4
LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLU51bWJlci5NQVhf
VkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5NzY5MzEzNDg2MjMxNTdl
KzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgLTEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IEluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBJbmZpbml0eS4KK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1JbmZpbml0eSBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBOYU4u
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnJworUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAn
YWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJjLgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9u
KCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1
c3RvbS4KIAogUEFTUyAndGVzdFVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVl
CiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPT09ICdudW1iZXIn
IGlzIHRydWUKQEAgLTI1NSwyMyArNDU4LDkzIEBAIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IE51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1OdW1iZXIuTUlOX1ZB
TFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PSAtTnVtYmVyLk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
c2hvdWxkIGJlIDAuIFdhcyA5MjIzMzcyMDM2ODU0Nzc2MDAwLgogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
aXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTEuOTkKIFBBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkZGRkZGRkZGRgorY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nID0gSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC1JbmZp
bml0eQorRkFJTCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdh
cyA5MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0g
TmFOCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBmYWxzZQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gdHJ1ZQogUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25n
ID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IG51bGwKIFBBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHVuZGVm
aW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAotUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5l
dyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0
b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVv
ZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPT09ICdudW1iZXIn
IGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDAK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTEgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
MHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRgor
RkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MCBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEyOC4KK0ZBSUwgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODEgc2hvdWxkIHRocm93IGFuIGV4Y2Vw
dGlvbi4gV2FzIC0xMjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
aXMgMHhGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IC0weDgwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OC4KK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMSBzaG91
bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY5LgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRgorRkFJ
TCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAw
MCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDguCitGQUlMIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAwMDAxIHNob3Vs
ZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OS4KK0ZBSUwgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBzaG91bGQg
dGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgNjIxMjk2NTg4NTkzNjg5ODAuCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorRkFJTCBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZB
TFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAxLjc5NzY5MzEzNDg2MjMxNTdlKzMw
OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLU51
bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5NzY5MzEz
NDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
IGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
LTEuOTkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjk5LgorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0
aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIE5hTi4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nTG9uZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBhYmMuCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHVuZGVmaW5lZCBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBF
cnJvcignY3VzdG9tJyk7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBjdXN0b20uCiAKIFBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlk
bC10eXBlLW1hcHBpbmcuaHRtbAppbmRleCAyMTkxM2JlMGZlODNjMDIxNzk0MDlkN2M2NWJmZWNh
Y2Y0MzcwMDEyLi5kODExZTVjMTRmMWU0YTA2MTcwNzFkYjg0NjI5Y2QyMjlkODkyY2UzIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbApAQCAtMzYsMTEg
KzM2LDIzIEBAIGZ1bmN0aW9uIHRlc3ROb25OdW1lcmljVG9OdW1lcmljKGF0dHJpYnV0ZSkKICAg
ICBjb252ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0
ZSwgInRydWUiLCAiMSIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJyciLCAiMCIpOworICAg
IGNvbnZlcnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwg
IidhYmMnIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwiLCAiMCIpOwogICAg
IGNvbnZlcnQoYXR0cmlidXRlLCAidW5kZWZpbmVkIiwgIjAiKTsKIH0KIAorZnVuY3Rpb24gdGVz
dE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UoYXR0cmlidXRlKQoreworICAgIGNvbnZl
cnQoYXR0cmlidXRlLCAiZmFsc2UiLCAiMCIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAidHJ1
ZSIsICIxIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInJyIsICIwIik7CisgICAgY29udmVy
dChhdHRyaWJ1dGUsICInMSciLCAiMSIpOworICAgIGNvbnZlcnRUaHJvd3MoYXR0cmlidXRlLCAi
J2FiYyciKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwiLCAiMCIpOworICAgIGNvbnZl
cnRUaHJvd3MoYXR0cmlidXRlLCAidW5kZWZpbmVkIik7Cit9CisKIHR5cGUgPSAidGVzdExvbmci
OwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAiMCIpOwpAQCAtNzIsNyAr
ODQsNDEgQEAgY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwogY29udmVydCh0eXBlLCAi
LUluZmluaXR5IiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9uTnVt
ZXJpY1RvTnVtZXJpYyh0eXBlKTsKLWNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVP
ZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0iKTsKK2RlYnVnKCIiKTsK
KwordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7
Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVydCh0eXBl
LCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOwor
Y29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnQo
dHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwg
IjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4
MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZG
RkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0VGhyb3dz
KHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOworY29u
dmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4
RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51bWJlci5NQVhfVkFMVUUi
KTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93
cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIi1OdW1iZXIuTUlO
X1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0eXBl
LCAiLTEuOTkiLCAiLTEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252
ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIp
OwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7
fX0iKTsKIGRlYnVnKCIiKTsKIAogdHlwZSA9ICJ0ZXN0VW5zaWduZWRMb25nIjsKQEAgLTEwNiw3
ICsxNTIsNDEgQEAgY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwogY29udmVydCh0eXBl
LCAiLUluZmluaXR5IiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9u
TnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKLWNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFs
dWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0iKTsKK2RlYnVnKCIi
KTsKKwordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIjsKK3ZlcmlmeUF0dHJp
YnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0x
Iik7Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIweDdGIik7Citjb252ZXJ0
KHR5cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICItMHg4MCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODEiKTsKK2NvbnZlcnQodHlw
ZSwgIjB4N0ZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICIw
eEZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAiKTsKK2NvbnZlcnRUaHJvd3Mo
dHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRkZGRkYiKTsKK2NvbnZlcnQo
dHlwZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZGRkZGRkYiKTsKK2NvbnZl
cnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4
MDAwMDAwMSIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOworY29u
dmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiTnVt
YmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItTnVtYmVyLk1BWF9W
QUxVRSIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVy
dCh0eXBlLCAiMS45OSIsICIxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMS45OSIpOworY29u
dmVydFRocm93cyh0eXBlLCAiSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi1JbmZp
bml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiTmFOIik7Cit0ZXN0Tm9uTnVtZXJpY1RvTnVt
ZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSIpOwogZGVidWcoIiIpOwogCiB0
eXBlID0gInRlc3RMb25nTG9uZyI7CkBAIC0xMzIsMTcgKzIxMiw0OSBAQCBjb252ZXJ0KHR5cGUs
ICItMHg4MDAwMDAwMSIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29u
dmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVt
YmVyLk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0
d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAi
KTsKLS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0
eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1B
WF9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlw
ZSwgIi0xLjk5IiwgIi0xIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2Vl
biBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Ci0vL2NvbnZl
cnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7
Citjb252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItSW5maW5p
dHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKIHRlc3ROb25OdW1lcmljVG9O
dW1lcmljKHR5cGUpOwotY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSIpOworZGVidWcoIiIpOworCit0eXBl
ID0gInRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7Citj
b252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOworY29udmVydCh0eXBlLCAi
MSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4MCIpOworY29u
dmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnQodHlw
ZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4
ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAw
Iik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZG
Iik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZG
RkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydCh0eXBlLCAiLTB4
ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2Nv
bnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiLU51
bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1BWF9W
QUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZl
cnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5m
aW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIsICIwIik7Cit0ZXN0Tm9uTnVtZXJp
Y1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1
ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSIpOwogZGVidWcoIiIp
OwogCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmdMb25nIjsKQEAgLTE2OCwxNyArMjgwLDQ5IEBA
IGNvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIiwgIjB4RkZGRkZGRkY3RkZGRkZGRiIpOwogY29u
dmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1J
Tl9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7
Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9j
b252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAi
LU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxV
RSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252
ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIjB4RkZGRkZG
RkZGRkZGRkZGRiIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1bHRzIGJldHdlZW4gVjgg
YW5kIEpTQy4KLS8vY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5
cGUsICItSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICJOYU4iLCAiMCIpOworY29u
dmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiLUluZmluaXR5Iiwg
IjAiKTsKK2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJp
Yyh0eXBlKTsKLWNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yO319Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigp
e3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0iKTsKK2RlYnVnKCIiKTsKKwordHlwZSA9ICJ0
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyI7Cit2ZXJpZnlBdHRyaWJ1dGUodHlwZSk7
Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMSIpOworY29udmVy
dCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBlLCAiMHg4
MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAi
KTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYi
KTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4
MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgw
MDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5
cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnQodHlwZSwg
Ik51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFM
VUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIpOworY29u
dmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIjEu
OTkiLCAiMSIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEuOTkiKTsKK2NvbnZlcnRUaHJvd3Mo
dHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2Nv
bnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNl
UmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Ro
cm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0iKTsKIGRlYnVnKCIiKTsKIAogPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9ub24tbnVt
ZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBh
cmFtZXRlcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAxODE5ZmNkMTYyNTNhNDA4ZDE4ODll
ZmQ0Y2Q4ODQwMGRkNjhhMzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJz
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDg1IEBACitUaGlzIHRlc3RzIHRoZSBiZWhhdmlvciBv
ZiBub24tbnVtZXJpYyB2YWx1ZXMgaW4gY29udGV4dHMgd2hlcmUgdGhlIERPTSBoYXMgYSBudW1l
cmljIHBhcmFtZXRlci4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgbm9u
TnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoImEiKS5zdWJzdHJpbmdEYXRh
KHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Rv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKCJhIikuc3Vic3RyaW5nRGF0YSgwLCB4KScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgiYSIpLmluc2VydERhdGEoeCwgImIiKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFT
UyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiYSIpLmRlbGV0ZURh
dGEoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgn
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoImEiKS5kZWxldGVEYXRhKDAsIHgpJykgaXMgJ2FueSB0
eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRleHRO
b2RlKCJhIikucmVwbGFjZURhdGEoeCwgMCwgImIiKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwor
UEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiYSIpLnJlcGxh
Y2VEYXRhKDAsIHgsICJiIiknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnY3JlYXRlQ1NTTWVkaWFSdWxlKCkuaW5zZXJ0UnVsZShydWxlVGV4dCwgeCknKSBp
cyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NTTWVk
aWFSdWxlKCkuZGVsZXRlUnVsZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25O
dW1lcmljUG9saWN5KCdjcmVhdGVDU1NSdWxlTGlzdCgpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NTU3R5bGVEZWNsYXJhdGlv
bigpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnY3JlYXRlQ1NTU3R5bGVTaGVldCgpLmluc2VydFJ1bGUocnVsZVRleHQsIHgpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1N0eWxlU2hl
ZXQoKS5kZWxldGVSdWxlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ2NyZWF0ZUNTU1N0eWxlU2hlZXQoKS5hZGRSdWxlKHNlbGVjdG9yLCBzdHlsZVRl
eHQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUNTU1N0eWxlU2hlZXQoKS5yZW1vdmVSdWxlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1ZhbHVlTGlzdCgpLml0ZW0oeCknKSBp
cyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuZWxl
bWVudEZyb21Qb2ludCh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1l
cmljUG9saWN5KCdkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KDAsIHgpJykgaXMgJ2FueSB0eXBl
IGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmJvZHkuc2Nyb2xsQnlM
aW5lcyh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdk
b2N1bWVudC5ib2R5LnNjcm9sbEJ5UGFnZXMoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BB
U1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0ID0geCcpIGlzICdh
bnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5ib2R5LnNj
cm9sbFRvcCA9IHgnKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnZG9jdW1lbnQuaW1hZ2VzLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKS5zZXRTZWxl
Y3Rpb25SYW5nZSh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmlj
UG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLnNldFNlbGVjdGlvblJhbmdl
KDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJv
cHRpb24iKSwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkucmVtb3ZlKHgpJykgaXMgJ2FueSB0eXBl
IGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxTZWxlY3RFbGVtZW50
KCkucmVtb3ZlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xp
Y3koJ2NyZWF0ZUhUTUxTZWxlY3RFbGVtZW50KCkuaXRlbSh4KScpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MVGFibGVFbGVtZW50KCkuaW5z
ZXJ0Um93KHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J2NyZWF0ZUhUTUxUYWJsZUVsZW1lbnQoKS5kZWxldGVSb3coeCknKSBpcyAnYW55IHR5cGUgYWxs
b3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlUm93RWxlbWVudCgp
Lmluc2VydENlbGwoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1Bv
bGljeSgnY3JlYXRlSFRNTFRhYmxlUm93RWxlbWVudCgpLmRlbGV0ZUNlbGwoeCknKSBpcyAnYW55
IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlU2Vj
dGlvbkVsZW1lbnQoKS5pbnNlcnRSb3coeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQoKS5kZWxldGVS
b3coeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgidGV4dGFyZWEiKS5zZXRTZWxlY3Rpb25SYW5nZSh4LCAwKScp
IGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpLnNldFNlbGVjdGlvblJhbmdlKDAsIHgpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUV2
ZW50KCJLZXlib2FyZEV2ZW50IikuaW5pdEtleWJvYXJkRXZlbnQoImEiLCBmYWxzZSwgZmFsc2Us
IG51bGwsICJiIiwgeCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKScpIGlzICdh
bnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVNZWRpYUxpc3Qo
KS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50IikuaW5pdE1vdXNlRXZlbnQoImEiLCBm
YWxzZSwgZmFsc2UsIG51bGwsIHgsIDAsIDAsIDAsIDAsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZh
bHNlLCAwLCBudWxsKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9s
aWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiTW91c2VFdmVudCIpLmluaXRNb3VzZUV2ZW50KCJh
IiwgZmFsc2UsIGZhbHNlLCBudWxsLCAwLCB4LCAwLCAwLCAwLCBmYWxzZSwgZmFsc2UsIGZhbHNl
LCBmYWxzZSwgMCwgbnVsbCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk1vdXNlRXZlbnQiKS5pbml0TW91c2VFdmVu
dCgiYSIsIGZhbHNlLCBmYWxzZSwgbnVsbCwgMCwgMCwgeCwgMCwgMCwgZmFsc2UsIGZhbHNlLCBm
YWxzZSwgZmFsc2UsIDAsIG51bGwpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50IikuaW5pdE1vdXNl
RXZlbnQoImEiLCBmYWxzZSwgZmFsc2UsIG51bGwsIDAsIDAsIDAsIHgsIDAsIGZhbHNlLCBmYWxz
ZSwgZmFsc2UsIGZhbHNlLCAwLCBudWxsKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBu
b25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiTW91c2VFdmVudCIpLmluaXRN
b3VzZUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCAwLCAwLCAwLCAwLCB4LCBmYWxzZSwg
ZmFsc2UsIGZhbHNlLCBmYWxzZSwgMCwgbnVsbCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BB
U1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk1vdXNlRXZlbnQiKS5p
bml0TW91c2VFdmVudCgiYSIsIGZhbHNlLCBmYWxzZSwgbnVsbCwgMCwgMCwgMCwgMCwgMCwgZmFs
c2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHgsIG51bGwpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmJvZHkuYXR0cmlidXRlcy5pdGVtKHgp
JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50
LmNyZWF0ZU5vZGVJdGVyYXRvcihkb2N1bWVudCwgeCwgbnVsbCwgZmFsc2UpJykgaXMgJ2FueSB0
eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCJkaXYiKS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5v
bk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVJhbmdlKCkuc2V0U3RhcnQoZG9jdW1lbnQs
IHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3Vt
ZW50LmNyZWF0ZVJhbmdlKCkuc2V0RW5kKGRvY3VtZW50LCB4KScpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVSYW5nZSgpLmNvbXBh
cmVQb2ludChkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVt
ZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKS5pc1BvaW50SW5SYW5nZShkb2N1bWVu
dCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZ2V0
U2VsZWN0aW9uKCkuY29sbGFwc2UoZG9jdW1lbnQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2dldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQo
ZG9jdW1lbnQsIHgsIGRvY3VtZW50LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBu
b25OdW1lcmljUG9saWN5KCdnZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KGRvY3VtZW50
LCAwLCBkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuc2V0UG9zaXRpb24oZG9jdW1lbnQsIHgpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2dldFNlbGVjdGlvbigpLmV4
dGVuZChkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJp
Y1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuZ2V0UmFuZ2VBdCh4KScpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5zdHlsZVNoZWV0cy5pdGVtKHgp
JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50
LmNyZWF0ZVRleHROb2RlKCJhIikuc3BsaXRUZXh0KHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRyZWVXYWxrZXIoZG9jdW1l
bnQsIHgsIG51bGwsIGZhbHNlKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1l
cmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiVUlFdmVudCIpLmluaXRVSUV2ZW50KCJh
IiwgZmFsc2UsIGZhbHNlLCBudWxsLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBu
b25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsQnkoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxs
b3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnNjcm9sbEJ5KDAsIHgpJykgaXMg
J2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5zY3JvbGxU
byh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3
aW5kb3cuc2Nyb2xsVG8oMCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVt
ZXJpY1BvbGljeSgnd2luZG93LnNjcm9sbCh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwor
UEFTUyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsKDAsIHgpJykgaXMgJ2FueSB0eXBl
IGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5tb3ZlQnkoeCwgMCknKSBp
cyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93Lm1vdmVC
eSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3
aW5kb3cubW92ZVRvKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ3dpbmRvdy5tb3ZlVG8oMCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BB
U1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnJlc2l6ZUJ5KHgsIDApJykgaXMgJ2FueSB0eXBl
IGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5yZXNpemVCeSgwLCB4KScp
IGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cucmVz
aXplVG8oeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnd2luZG93LnJlc2l6ZVRvKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9qcy9zZWxl
Y3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2ZjFlMjY3OThjNWI3MzQ3
Zjc5NTAyZGE5OTc1ODY0NjFjNjNhYzAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3NlbGVjdC1vcHRpb25zLWFkZC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwyMjggQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIGJlaGF2aW9yIG9mIHRoZSBh
ZGQoKSBtZXRob2Qgb24gdGhlIHNlbGVjdC5vcHRpb25zIG9iamVjdC4KK0l0IGNvdmVycyBib3Ro
IHRoZSB0aGUgb25lLWFyZ3VtZW50ICgxLngpIGFuZCB0d28tYXJndW1lbnQgKDIueCkgc2lnbmF0
dXJlcyBvZiB0aGUgYWRkKCkgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisK
KworMS4xIEFkZCBPcHRpb24gdG8gZW1wdHkgT3B0aW9ucworUEFTUyBzZWxlY3QxLm9wdGlvbnMu
bGVuZ3RoIGlzIDEKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKK1BBU1Mgc2VsZWN0
MS5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMF0udGV4dENv
bnRlbnQgaXMgJ0EnCisKKzEuMiBBZGQgT3B0aW9uIHRvIG5vbi1lbXB0eSBPcHRpb25zCitQQVNT
IHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMgorUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXgg
aXMgMAorUEFTUyBzZWxlY3QxLm9wdGlvbnNbMF0udmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDEu
b3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzFdLnZh
bHVlIGlzICcyJworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMV0udGV4dENvbnRlbnQgaXMgJ0InCisK
KzEuMyBBZGQgT3B0aW9uIGFmdGVyIHNldHRpbmcgcGFyYW1ldGVycworUEFTUyBzZWxlY3QxLm9w
dGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKK1BBU1Mg
c2VsZWN0MS5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMF0u
dGV4dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVjdDEub3B0aW9uc1sxXS52YWx1ZSBpcyAnMicK
K1BBU1Mgc2VsZWN0MS5vcHRpb25zWzFdLnRleHRDb250ZW50IGlzICdCJworUEFTUyBzZWxlY3Qx
Lm9wdGlvbnNbMl0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVjdDEub3B0aW9uc1syXS50ZXh0Q29u
dGVudCBpcyAnQycKKworMS40IEFkZCBhIG5vbi1PcHRpb24gZWxlbWVudAorUEFTUyBzZWxlY3Qx
Lm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNo
RXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMg
MworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisxLjUgQWRkIGEgbm9uLWVsZW1l
bnQgKHN0cmluZykKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRpb24xKSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBz
ZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlz
IDAKKworMS42IEFkZCBhIG5vbi1lbGVtZW50IChudW1iZXIpCitQQVNTIHNlbGVjdDEub3B0aW9u
cy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjog
RE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNT
IHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuNyBBZGQgYSBub24tZWxlbWVudCAoYm9v
bGVhbikKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRpb24xKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3Qx
Lm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKKwor
MS44IEFkZCB1bmRlZmluZWQKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRpb24xKSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3Lgor
UEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZElu
ZGV4IGlzIDAKKworMS45IEFkZCBudWxsCitQQVNTIHNlbGVjdDEub3B0aW9ucy5hZGQob3B0aW9u
MSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlv
biAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2Vs
ZWN0ZWRJbmRleCBpcyAwCisKKzEuMTAgQWRkIG5lZ2F0aXZlIGluZmluaXR5CitQQVNTIHNlbGVj
dDEub3B0aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0
Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBp
cyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuMTEgQWRkIE5hTgorUEFT
UyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlw
ZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0aW9ucy5s
ZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisxLjEyIEFkZCBw
b3NpdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3
IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQ
QVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5k
ZXggaXMgMAorCisyLjEgQWRkIE9wdGlvbiB0byBlbXB0eSBPcHRpb25zCitQQVNTIHNlbGVjdDIu
b3B0aW9ucy5sZW5ndGggaXMgMQorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMAorUEFT
UyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDIub3B0aW9uc1sw
XS50ZXh0Q29udGVudCBpcyAnQScKKworMi4yIEFkZCBPcHRpb24gYWZ0ZXIgc2V0dGluZyBwYXJh
bWV0ZXJzCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMgorUEFTUyBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggaXMgMAorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzEnCitQ
QVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zWzFdLnZhbHVlIGlzICcyJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udGV4dENvbnRl
bnQgaXMgJ0InCisKKzIuMyBJbnNlcnQgT3B0aW9uIGF0IGJlZ2lubmluZyBvZiBPcHRpb25zCitQ
QVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5k
ZXggaXMgMQorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzAnCitQQVNTIHNlbGVj
dDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnWicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFd
LnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udGV4dENvbnRlbnQgaXMgJ0En
CitQQVNTIHNlbGVjdDIub3B0aW9uc1syXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRp
b25zWzJdLnRleHRDb250ZW50IGlzICdCJworCisyLjQgSW5zZXJ0IE9wdGlvbiBpbiBtaWRkbGUg
b2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDQKK1BBU1Mgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlzICcw
JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNlbGVj
dDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRleHRD
b250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzEuNScKK1BB
U1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQQVNTIHNlbGVjdDIu
b3B0aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnRleHRDb250
ZW50IGlzICdCJworCisyLjUgSW5zZXJ0IE9wdGlvbiBhdCBlbmQgb2YgT3B0aW9ucworUEFTUyBz
ZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDUKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlz
IDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlzICcwJworUEFTUyBzZWxlY3QyLm9w
dGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1
ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRleHRDb250ZW50IGlzICdBJworUEFT
UyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzEuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
WzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQQVNTIHNlbGVjdDIub3B0aW9uc1szXS52YWx1ZSBp
cyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnRleHRDb250ZW50IGlzICdCJworUEFTUyBz
ZWxlY3QyLm9wdGlvbnNbNF0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVjdDIub3B0aW9uc1s0XS50
ZXh0Q29udGVudCBpcyAnQycKKworMi42IEluc2VydCBPcHRpb24gYmV5b25kIHRoZSBlbmQgb2Yg
T3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDYKK1BBU1Mgc2VsZWN0Mi5z
ZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlzICcwJwor
UEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNlbGVjdDIu
b3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRleHRDb250
ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzEuNScKK1BBU1Mg
c2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQQVNTIHNlbGVjdDIub3B0
aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnRleHRDb250ZW50
IGlzICdCJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNF0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVj
dDIub3B0aW9uc1s0XS50ZXh0Q29udGVudCBpcyAnQycKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzVd
LnZhbHVlIGlzICc0JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNV0udGV4dENvbnRlbnQgaXMgJ0Qn
CisKKzIuNyBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC0xCitQQVNTIHNlbGVjdDIub3B0aW9ucy5s
ZW5ndGggaXMgNworUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorUEFTUyBzZWxlY3Qy
Lm9wdGlvbnNbMF0udmFsdWUgaXMgJzAnCitQQVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29u
dGVudCBpcyAnWicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnZhbHVlIGlzICcxJworUEFTUyBz
ZWxlY3QyLm9wdGlvbnNbMV0udGV4dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVjdDIub3B0aW9u
c1syXS52YWx1ZSBpcyAnMS41JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udGV4dENvbnRlbnQg
aXMgJ0EuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnZhbHVlIGlzICcyJworUEFTUyBzZWxl
Y3QyLm9wdGlvbnNbM10udGV4dENvbnRlbnQgaXMgJ0InCitQQVNTIHNlbGVjdDIub3B0aW9uc1s0
XS52YWx1ZSBpcyAnMycKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzRdLnRleHRDb250ZW50IGlzICdD
JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNV0udmFsdWUgaXMgJzQnCitQQVNTIHNlbGVjdDIub3B0
aW9uc1s1XS50ZXh0Q29udGVudCBpcyAnRCcKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzZdLnZhbHVl
IGlzICc1JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNl0udGV4dENvbnRlbnQgaXMgJ0UnCisKKzIu
OCBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC0yCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0
aW9uMiwgLTIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW5kZXhTaXplRXJyb3I6IERPTSBFeGNl
cHRpb24gMS4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3CitQQVNTIHNlbGVjdDIu
c2VsZWN0ZWRJbmRleCBpcyAxCisKKzIuOSBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC1JbmZpbml0
eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIC0xLzApIGRpZCBub3QgdGhyb3cg
ZXhjZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDgKK1BBU1Mgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IGlzIDIKKworMi4xMCBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IE5hTgor
UEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAvMCkgZGlkIG5vdCB0aHJvdyBleGNl
cHRpb24uCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgOQorUEFTUyBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggaXMgMworCisyLjExIEFkZCBhbiBPcHRpb24gYXQgaW5kZXggSW5maW5pdHkK
K1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzApIGRpZCBub3QgdGhyb3cgZXhj
ZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDEwCitQQVNTIHNlbGVjdDIu
c2VsZWN0ZWRJbmRleCBpcyA0CisKKzIuMTIgQWRkIGEgbm9uLU9wdGlvbiBlbGVtZW50CitQQVNT
IHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
eXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjEzIEFk
ZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9u
MiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2Vw
dGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3Qy
LnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjE0IEFkZCBhIG5vbi1lbGVtZW50IChudW1iZXIpCitQ
QVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9y
OiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRp
b25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjE1
IEFkZCBhIG5vbi1lbGVtZW50IChib29sZWFuKQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9w
dGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2Vs
ZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xNiBBZGQgdW5kZWZpbmVkCitQQVNTIHNlbGVj
dDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlz
bWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjE3IEFkZCBudWxs
CitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisy
LjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlv
bjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNl
cHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0
Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xOSBBZGQgTmFOCitQQVNTIHNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJv
cjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAor
UEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjIwIEFkZCBwb3NpdGl2ZSBpbmZp
bml0eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVj
dDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQK
KworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvd2ViaWRsLXR5
cGUtbWFwcGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9m
YXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFlYzBh
YzFjN2I2MWQ4ZjI5ODRjZTUwMTBkYjlkN2IzMzU3ZDRkYzAKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmct
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTUyIEBACitFeGVyY2lzZSBXZWJJREwgdHlwZSBjb252
ZXJzaW9ucy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK2NvbnZlcnRlciA9IHdp
bmRvdy5pbnRlcm5hbHMudHlwZUNvbnZlcnNpb25zKCkKKworUEFTUyAndGVzdExvbmcnIGluIGNv
bnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdExvbmcgPT09ICdudW1i
ZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50ZXN0TG9u
ZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcg
aXMgMQorY29udmVydGVyLnRlc3RMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcg
aXMgMHg3RgorY29udmVydGVyLnRlc3RMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MQorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4N0ZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdExvbmcgPSAweDgw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RMb25n
ID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50
ZXN0TG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwMDAKK2Nv
bnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0w
eDgwMDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4ODAwMDAwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdExvbmcg
PSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAtMQorY29udmVydGVyLnRl
c3RMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwMDAw
MDAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MDAwMDAwMQorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RMb25nID0gMHhEQ0JBOTg3NjU0MzIx
MAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3NjU0MzIxMAorY29udmVydGVyLnRlc3RM
b25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC1OdW1iZXIuTUlOX1ZB
TFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAx
Ljk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmcgPSAt
MS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0TG9uZyA9
IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExv
bmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0TG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRl
c3RMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0TG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0TG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0
TG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dExvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dExvbmcgPSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoJ2N1
c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9tLgorCitQQVNTICd0ZXN0RW5m
b3JjZVJhbmdlTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAw
eDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3
RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkZGRgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMg
LTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMHg3RkZGRkZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZGRkZGRgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IDB4RkZGRkZGRkYgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweERD
QkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLUluZmluaXR5IHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHRy
dWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnMScKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3Iu
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9u
KCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1
c3RvbS4KKworUEFTUyAndGVzdFVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BB
U1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVl
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMQorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHg4MAorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
ZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRgorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAweEZGRkZGRjgwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0weDgxCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRkZGN0YKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDgwMDAKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkYK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyBpcyAweEZGRkY4MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGN0ZGRgor
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
ID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDgwMDAw
MDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAw
eDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nID0gMHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyBpcyAweDc2NTQzMjEwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IE51bWJl
ci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLU51bWJl
ci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDEuOTkK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZG
RkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0g
LUluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB0cnVl
CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnYWJjJworUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0
aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6
IGN1c3RvbS4KKworUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZycgaW4gY29udmVy
dGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0x
IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlz
IDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyBpcyAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAtMHg4MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODAwMDAwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweERDQkE5ODc2NTQz
MjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEu
OTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0xLjk5IHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOYU4gdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB0cnVl
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyA9IHVuZGVmaW5lZCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJl
dyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdExvbmdMb25nJyBpbiBjb252
ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RMb25nTG9uZyA9PT0gJ251
bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTEKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDEKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0g
MHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg4MAorY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAweEZGCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0weDgxCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
PSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRl
ci50ZXN0TG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAw
eDgwMDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtMHg4MDAwCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODAwMAorY29udmVydGVyLnRlc3RMb25n
TG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MDAxCitj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDgwMDAwMDAw
CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAw
eEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29u
dmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MDAwMDAwMAorY29udmVydGVyLnRlc3RMb25nTG9u
ZyA9IC0weDgwMDAwMDAxCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODAwMDAw
MDEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMHhEQ0JBOTg3NjU0MzIxMAorY29udmVydGVyLnRlc3RMb25n
TG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVy
dGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1B
WF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSBJbmZpbml0
eQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdExvbmdMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJycKK1BBU1MgY29udmVy
dGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gJzEnCitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICdh
YmMnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25n
TG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID0gdW5kZWZpbmVkCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMg
MAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJv
dyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9tLgor
CitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQ
QVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID09PSAnbnVtYmVy
JyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODEK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MQorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4RkZG
RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMg
MHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMDAw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAweDgwMDAwMDAw
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZGRkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRkZGRkYKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IE51
bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLU51bWJlci5NSU5fVkFM
VUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlw
ZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmdMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1JbmZpbml0
eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gZmFsc2UK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHt2YWx1
ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRp
b24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdFVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZl
cnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
PT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDAK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4ODAKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgwCitQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGODAKK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGN0YKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgw
MDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkZGRkZG
ODAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRkZGRkY3RkZGCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9u
Z0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGRkZGRkZG
CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRjgwMDAwMDAwCitjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRjdGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyBpcyAweERDQkE5ODc2NTQzMjEwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxV
RQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0g
LU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZG
RkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IEluZmluaXR5CitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IE5hTgorUEFTUyBj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICdhYmMnCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB1bmRlZmluZWQKK1BBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoJ2N1
c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9tLgorCitQQVNTICd0ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlw
ZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9PT0gJ251bWJl
cicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
MHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAt
MHg4MCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nIGlzIDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAtMHg4MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJy
b3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0w
eDgwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRkZGRkYKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAwMDAwMDAK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4RkZGRkZGRkYK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZG
RkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0g
LTB4ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODAwMDAwMDEg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSAtMS45OSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBJbmZpbml0
eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBmYWxz
ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gdHJ1ZQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBl
IGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gbnVs
bAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB1bmRlZmlu
ZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0
aHJvdyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9t
LgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1iYWQt
cGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9p
bnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCAxZThiZDU3YmQzMTFi
ODJjZTlmMjQ4YmRkNzQ2NDRiYzJmMDJkNmQ1Li4xNDU1N2Q0NTM2NmRkZjM0MWI2YzAxMjA3MGUy
ODkxMjNhMTE4ODdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9p
bnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApA
QCAtMTgsNiArMTgsMTUgQEAgUEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIDApIHRocmV3IFR5
cGVFcnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRpb24gZnJvbSBp
bmRleGVkREIub3BlbihkYm5hbWUsIC01KQogUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KIFBB
U1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9y
CitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFt
ZSwgSW5maW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIu
b3BlbihkYm5hbWUsIEluZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5cGUgZXJyb3IKK0V4cGVj
dGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtSW5m
aW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBpbmRleGVkREIub3Blbihk
Ym5hbWUsIC1JbmZpbml0eSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCitFeHBlY3Rpbmcg
VHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKQorUEFT
UyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCBOYU4p
IHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBleGNlcHRp
b24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKQogUEFTUyBFeGNlcHRpb24gd2FzIHRo
cm93bi4KIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkgdGhyZXcgVHlwZUVycm9yOiBU
eXBlIGVycm9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNv
dXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCmluZGV4IGFm
MzVmMmQ0YmM4MmIwYmNkYjViMDE0OGM2MzBmMjE1Mzk2M2JmYzEuLmQzMzljMzJjMWM2YjExNDk3
ZTFjYzg5ZDBjMDczNWFhMzk5OTc0NzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJh
bWV0ZXJzLmpzCkBAIC0yMCw2ICsyMCw5IEBAIGZ1bmN0aW9uIGRlbGV0ZVN1Y2Nlc3MoZXZ0KSB7
CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUs
ICdzdHJpbmd2ZXJzaW9uJykiLCAiVHlwZUVycm9yIik7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2Vw
dGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDApIiwgIlR5cGVFcnJvciIpOwogICAg
IGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSki
LCAiVHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVk
REIub3BlbihkYm5hbWUsIEluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhw
ZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLUluZmluaXR5KSIsICJU
eXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5v
cGVuKGRibmFtZSwgTmFOKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0
aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpIiwgIlR5cGVFcnJvciIpOwogICAg
IGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAweDIw
MDAwMDAwMDAwMDAwKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9u
Q2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgbnVsbCkiLCAiVHlwZUVycm9yIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193338</attachid>
            <date>2013-03-15 11:00:31 -0700</date>
            <delta_ts>2013-03-15 12:00:22 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-96798-20130315105626.patch</filename>
            <type>text/plain</type>
            <size>130426</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1OTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDkzY2U1YTQ2NWU3ZDkx
YzE1ZDVlMDFlYTRkZGMxYWI1YzQ3MjVmNi4uODU1M2U2OWQzNDlmNTVjZjA0ZjViYWI1MzlhZTkz
M2ZhOTlkOTFiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ5IEBACisyMDEzLTAzLTExICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBCaW5kaW5nOiBJ
bXBsZW1lbnQgRW5mb3JjZVJhbmdlIElETCBBdHRyaWJ1dGUgZm9yIGxvbmcgbG9uZyBjb252ZXJz
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTY3
OTgKKworICAgICAgICBSZXZpZXdlZCBieSBLZW50YXJvIEhhcmEuCisKKyAgICAgICAgSW1wbGVt
ZW50IFtFbmZvcmNlUmFuZ2VdIGF0dHJpYnV0ZSBmb3IgVjggYmluZGluZ3MsIHdoaWNoIHNwZWNp
ZmllcyB0aHJvd2luZyBiZWhhdmlvcgorICAgICAgICBvbiBjb252ZXJzaW9ucyBvdXRzaWRlIGlu
dC91aW50IDMyLzY0IHJhbmdlcyBhbmQgZWRnZSBjYXNlcyBsaWtlIE5hTnMgYW5kIEluZmluaXRp
ZXMuCisgICAgICAgIENvbnZlcnNlbHksIGNvbnZlcnNpb25zIHdpdGhvdXQgdGhpcyBhdHRyaWJ1
dGUgc2hvdWxkICpub3QqIHRocm93LgorCisgICAgICAgIFRlc3RzOiBmYXN0L2pzL3dlYmlkbC10
eXBlLW1hcHBpbmcuaHRtbDoKKyAgICAgICAgICAgICAgIGZhc3QvZG9tL25vbi1udW1lcmljLXZh
bHVlcy1udW1lcmljLXBhcmFtZXRlcnMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9qcy9zY3Jp
cHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmh0bWwKKyAgICAgICAgICAgICAgIHN0b3JhZ2Uv
aW5kZXhlZGRiL2ludHZlcnNpb24tYmFkLXBhcmFtZXRlcnMuaHRtbAorCisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcDogUmVtb3ZlIGN1c3RvbSByYW5nZSBlbmZvcmNl
bWVudCBmb3IgYWR2YW5jZSgpCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
Lmg6IEFkanVzdCB0eXBlIHRvIG1hdGNoIFdlYklETC4KKyAgICAgICAgKiBNb2R1bGVzL2luZGV4
ZWRkYi9JREJDdXJzb3IuaWRsOiBTcGVjaWZ5IFtFbmZvcmNlUmFuZ2VdIGFuZCB0eXBlIG1hdGNo
ZXMgc3BlYyBXZWJJREwuCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5j
cHA6IFJlbW92ZSBjdXN0b20gcmFuZ2UgZW5mb3JjZW1lbnQgZm9yIG9wZW4oKQorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaDogQWRqdXN0IHR5cGUgdG8gbWF0Y2ggV2Vi
SURMLgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsOiBTcGVjaWZ5
IFtFbmZvcmNlUmFuZ2VdIGFuZCB0eXBlIG1hdGNoZXMgc3BlYyBXZWJJREwuCisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChKU1ZhbHVlVG9O
YXRpdmUpOiBBZGQgRklYTUUgdG8gc3VwcG9ydCBbRW5mb3JjZVJhbmdlXQorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtOgorICAgICAgICAoR2VuZXJhdGVOb3Jt
YWxBdHRyU2V0dGVyKTogSGFuZGxlIFtFbmZvcmNlUmFuZ2VdIGluIGF0dHJpYnV0ZSBzZXR0ZXJz
CisgICAgICAgIChHZW5lcmF0ZVBhcmFtZXRlcnNDaGVjayk6IEhhbmRsZSBbRW5mb3JjZVJhbmdl
XSBpbiBwYXJhbWV0ZXJzLgorICAgICAgICAoSlNWYWx1ZVRvTmF0aXZlKTogUGFzcyBFbmZvcmNl
UmFuZ2UgdG8gdG9JbnQoKSBmdW5jdGlvbnMgYXMgYXBwcm9wcmlhdGUuCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvVGVzdE9iai5pZGw6IFRlc3RzIHcvIFtFbmZvcmNlUmFuZ2VdCisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHA6IFVwZGF0ZWQgZXhwZWN0YXRp
b25zCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFR5cGVkZWZzLmNw
cDogVXBkYXRlZCBleHBlY3RhdGlvbnMuCisgICAgICAgICogYmluZGluZ3MvdjgvVjhCaW5kaW5n
LmNwcDogT3ZlcmxvYWRzIGZvciB0b0ludCgpIHZhcmlhbnRzIHRoYXQgaGFuZGxlIGNvbnN0cmFp
bnRzLgorICAgICAgICAoV2ViQ29yZTo6dG9JbnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b1VJ
bnQzMik6CisgICAgICAgIChXZWJDb3JlOjp0b0ludDY0KToKKyAgICAgICAgKFdlYkNvcmU6OnRv
VUludDY0KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEJpbmRpbmcuaDogRGl0dG8sIHBsdXMg
aGVscGVycyBmb3IgY2FsbGVycyBub3QgZXhwZWN0aW5nIGVycm9ycy4KKyAgICAgICAgKFdlYkNv
cmU6OnRvSW50MzIpOgorICAgICAgICAoV2ViQ29yZTo6dG9VSW50MzIpOgorICAgICAgICAoV2Vi
Q29yZTo6dG9JbnQ2NCk6CisgICAgICAgIChXZWJDb3JlOjp0b1VJbnQ2NCk6CisgICAgICAgICog
YmluZGluZ3MvdjgvVjhCaW5kaW5nTWFjcm9zLmg6IEhlbHBlciBtYWNyb3MgZm9yIHR5cGUgY29u
dmVyc2lvbnMgdGhhdCBtYXkgdGhyb3cuCisgICAgICAgICogdGVzdGluZy9UeXBlQ29udmVyc2lv
bnMuaDogQWRkZWQgbmV3IG1lbWJlcnMgd2l0aCBFbmZvcmNlUmFuZ2UgY29uc3RyYWludC4KKyAg
ICAgICAgKiB0ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5pZGw6IERpdHRvLgorCiAyMDEzLTAzLTE1
ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBV
bnJldmlld2VkLCByb2xsaW5nIG91dCByMTQ1ODk2LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5jcHAKaW5kZXggN2JiMGY1MDBlNDdiNDI2MTM0MGE5MzI4
MTU4YWRlOTNlMzQ4NTZjNi4uMWNmOTc3MTAxY2E2MzI2M2RmY2RmZmM1NzU4ZDI0ZGNhNzQ0ZmI1
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3Bw
CkBAIC0xNTIsNyArMTUyLDcgQEAgUGFzc1JlZlB0cjxJREJSZXF1ZXN0PiBJREJDdXJzb3I6OnVw
ZGF0ZShTY3JpcHRTdGF0ZSogc3RhdGUsIFNjcmlwdFZhbHVlJiB2YWx1ZSwKICAgICByZXR1cm4g
b2JqZWN0U3RvcmUtPnB1dChJREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2U6OkN1cnNvclVwZGF0
ZSwgSURCQW55OjpjcmVhdGUodGhpcyksIHN0YXRlLCB2YWx1ZSwgbV9jdXJyZW50UHJpbWFyeUtl
eSwgZWMpOwogfQogCi12b2lkIElEQkN1cnNvcjo6YWR2YW5jZShsb25nIGxvbmcgY291bnQsIEV4
Y2VwdGlvbkNvZGUmIGVjKQordm9pZCBJREJDdXJzb3I6OmFkdmFuY2UodW5zaWduZWQgbG9uZyBj
b3VudCwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgZWMgPSAwOwogICAgIElEQl9UUkFDRSgi
SURCQ3Vyc29yOjphZHZhbmNlIik7CkBAIC0xNjYsOCArMTY2LDcgQEAgdm9pZCBJREJDdXJzb3I6
OmFkdmFuY2UobG9uZyBsb25nIGNvdW50LCBFeGNlcHRpb25Db2RlJiBlYykKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBvbmx5IG5lZWQgdG8gY2hl
Y2sgZm9yIDAgb25jZSB3ZWJraXQub3JnL2IvOTY3OTggbGFuZHMuCi0gICAgaWYgKGNvdW50IDwg
MSB8fCBjb3VudCA+IFVJTlRfTUFYKSB7CisgICAgaWYgKCFjb3VudCkgewogICAgICAgICBlYyA9
IFR5cGVFcnJvcjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKaW5kZXggMThkMjAwZWE2MTA2Nzc5N2VhNGM5ZWRj
NTE2MWQxNWRiNGIzZGFlNy4uZTM1ODkxMDk2ZDc1YjNlZjJlMzk5ODc5YjE5MzYzZTEyM2M0YTEx
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgKQEAg
LTY5LDggKzY5LDcgQEAgcHVibGljOgogICAgIElEQkFueSogc291cmNlKCkgY29uc3Q7CiAKICAg
ICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IHVwZGF0ZShTY3JpcHRTdGF0ZSosIFNjcmlwdFZhbHVl
JiwgRXhjZXB0aW9uQ29kZSYpOwotICAgIC8vIEZJWE1FOiBNYWtlIHRoaXMgdW5zaWduZWQgbG9u
ZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UobG9uZyBs
b25nLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBhZHZhbmNlKHVuc2lnbmVkIGxvbmcsIEV4
Y2VwdGlvbkNvZGUmKTsKICAgICAvLyBGSVhNRTogVHJ5IHRvIG1vZGlmeSB0aGUgY29kZSBnZW5l
cmF0b3Igc28gdGhpcyBvdmVybG9hZCBpcyB1bm5lZWRlZC4KICAgICB2b2lkIGNvbnRpbnVlRnVu
Y3Rpb24oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IGNvbnRp
bnVlRnVuY3Rpb24oc3RhdGljX2Nhc3Q8SURCS2V5Kj4oMCksIGVjKTsgfQogICAgIHZvaWQgY29u
dGludWVGdW5jdGlvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU2NyaXB0VmFsdWUm
IGtleSwgRXhjZXB0aW9uQ29kZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkN1cnNvci5pZGwKaW5kZXggNDU3MGMxZWNjODdkMDhiOTAxMDAzYTNkYzhmMjc4NjFm
MTE4OGVhMS4uNGI2MjY1YjQyOGYyNmU5MWZjMDdiYjhiNWMyMjE1ZDdkYzQyMzQ4YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCkBAIC0zNSw4
ICszNSw3IEBACiAKICAgICBbQ2FsbFdpdGg9U2NyaXB0U3RhdGVdIElEQlJlcXVlc3QgdXBkYXRl
KGluIGFueSB2YWx1ZSkKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgIC8vIEZJ
WE1FOiBNYWtlIHRoaXMgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBvbmNlIHdlYmtpdC5v
cmcvYi85Njc5OCBsYW5kcy4KLSAgICB2b2lkIGFkdmFuY2UoaW4gbG9uZyBsb25nIGNvdW50KQor
ICAgIHZvaWQgYWR2YW5jZShpbiBbRW5mb3JjZVJhbmdlXSB1bnNpZ25lZCBsb25nIGNvdW50KQog
ICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7CiAgICAgW0NhbGxXaXRoPVNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQsIEltcGxlbWVudGVkQXM9Y29udGludWVGdW5jdGlvbl0gdm9pZCBjb250aW51
ZShpbiBbT3B0aW9uYWxdIGFueSBrZXkpCiAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rvcnku
Y3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKaW5k
ZXggNGIwMmIxMTY0ZDQwYTQxOWMzNjdmOTRkMjNlZWJjMjM2ZGFmYWRiMC4uZjlkODcyZjY1Zjhk
NzM3NWY1MDRmNjMxOTgxZWY1NDI4YWIyNDBmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5jcHAKQEAgLTExMSwxMSArMTExLDkgQEAgUGFzc1Jl
ZlB0cjxJREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpnZXREYXRhYmFzZU5hbWVzKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqIGNvbnQKICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIAotUGFzc1JlZlB0cjxJ
REJPcGVuREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
IGNvbnRleHQsIGNvbnN0IFN0cmluZyYgbmFtZSwgaW50NjRfdCB2ZXJzaW9uLCBFeGNlcHRpb25D
b2RlJiBlYykKK1Bhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG5hbWUsIHVuc2ln
bmVkIGxvbmcgbG9uZyB2ZXJzaW9uLCBFeGNlcHRpb25Db2RlJiBlYykKIHsKLSAgICAvLyBGSVhN
RTogVGhpcyBzaG91bGQgb25seSBuZWVkIHRvIGNoZWNrIGZvciAwIG9uY2Ugd2Via2l0Lm9yZy9i
Lzk2Nzk4IGxhbmRzLgotICAgIGNvbnN0IGludDY0X3QgbWF4RUNNQVNjcmlwdEludGVnZXIgPSAw
eDIwMDAwMDAwMDAwMDAwTEwgLSAxOwotICAgIGlmICh2ZXJzaW9uIDwgMSB8fCB2ZXJzaW9uID4g
bWF4RUNNQVNjcmlwdEludGVnZXIpIHsKKyAgICBpZiAoIXZlcnNpb24pIHsKICAgICAgICAgZWMg
PSBUeXBlRXJyb3I7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAppbmRleCBjYzYxY2Q3YzZmYmQxMmU0ZTA5
YTc3ZWM5ZGQwZGEyMGNmZTc3MGI5Li45NzQyOTczYTE3ZTVmM2IwNzk1ZTMzZGY3OWM2NmU3MzNl
MmVjNDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJG
YWN0b3J5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9y
eS5oCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICBQYXNzUmVmUHRyPElEQlJlcXVlc3Q+
IGdldERhdGFiYXNlTmFtZXMoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIEV4Y2VwdGlvbkNvZGUm
KTsKIAogICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJik7Ci0gICAgUGFz
c1JlZlB0cjxJREJPcGVuREJSZXF1ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGludDY0X3QgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYpOworICAg
IFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gb3BlbihTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiwgY29uc3QgU3RyaW5nJiBuYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgdmVyc2lvbiwgRXhjZXB0
aW9uQ29kZSYpOwogICAgIFBhc3NSZWZQdHI8SURCT3BlbkRCUmVxdWVzdD4gZGVsZXRlRGF0YWJh
c2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgbmFtZSwgRXhjZXB0aW9u
Q29kZSYpOwogCiAgICAgc2hvcnQgY21wKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBT
Y3JpcHRWYWx1ZSYgZmlyc3QsIGNvbnN0IFNjcmlwdFZhbHVlJiBzZWNvbmQsIEV4Y2VwdGlvbkNv
ZGUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZh
Y3RvcnkuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5p
ZGwKaW5kZXggYTUxNjA1YjJiNGUzMTI5N2JiNTVkYTNiNTE3ZDVkZDEyYzNkMjJhYy4uZWY1MWJi
ZjgzODdjYThiZDBlNmFlYmM1MTA2M2I4ZDVlNjhkNGY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5pZGwKQEAgLTMxLDggKzMxLDcgQEAKICAg
ICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgSW1wbGVtZW50ZWRBcz1nZXREYXRh
YmFzZU5hbWVzXSBJREJSZXF1ZXN0IHdlYmtpdEdldERhdGFiYXNlTmFtZXMoKQogICAgICAgICBy
YWlzZXMgKERPTUV4Y2VwdGlvbik7CiAKLSAgICAvLyBGSVhNRTogTWFrZSB0aGlzIFtFbmZvcmNl
UmFuZ2VdIHVuc2lnbmVkIGxvbmcgbG9uZyBvbmNlIHdlYmtpdC5vcmcvYi85Njc5OCBsYW5kcy4K
LSAgICBbQ2FsbFdpdGg9U2NyaXB0RXhlY3V0aW9uQ29udGV4dF0gSURCT3BlbkRCUmVxdWVzdCBv
cGVuKGluIERPTVN0cmluZyBuYW1lLCBpbiBbT3B0aW9uYWxdIGxvbmcgbG9uZyB2ZXJzaW9uKQor
ICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IG9w
ZW4oaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtFbmZvcmNlUmFuZ2UsIE9wdGlvbmFsXSB1bnNpZ25l
ZCBsb25nIGxvbmcgdmVyc2lvbikKICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwogICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJPcGVuREJSZXF1ZXN0IGRlbGV0
ZURhdGFiYXNlKGluIERPTVN0cmluZyBuYW1lKQogICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlv
bik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ckpTLnBtCmluZGV4IDZhZGM5ODgzZDQ2NmI3MWZhNTEwNzVmNWI4ZGM5YmYyOWE1YThmMzEuLjUy
NjhkOWY0OWIzMzg4ZDdjMTg2OTk3MjNhYTQxYTFkODE1ZDM3MmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMTYyLDYg
KzMxNjIsNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAgcmV0dXJuICIkdmFsdWUudG9Cb29s
ZWFuKGV4ZWMpIiBpZiAkdHlwZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICIkdmFsdWUudG9O
dW1iZXIoZXhlYykiIGlmICR0eXBlIGVxICJkb3VibGUiOwogICAgIHJldHVybiAiJHZhbHVlLnRv
RmxvYXQoZXhlYykiIGlmICR0eXBlIGVxICJmbG9hdCI7CisgICAgIyBGSVhNRTogQWRkIFtFbmZv
cmNlUmFuZ2VdIHN1cHBvcnQKICAgICByZXR1cm4gIiR2YWx1ZS50b0ludDMyKGV4ZWMpIiBpZiAk
dHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKICAgICByZXR1cm4gIiR2YWx1ZS50
b1VJbnQzMihleGVjKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxvbmciIG9yICR0eXBlIGVxICJ1
bnNpZ25lZCBzaG9ydCI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDwkdHlwZT4oJHZhbHVlLnRv
SW50ZWdlcihleGVjKSkiIGlmICR0eXBlIGVxICJsb25nIGxvbmciIG9yICR0eXBlIGVxICJ1bnNp
Z25lZCBsb25nIGxvbmciOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JWOC5wbQppbmRleCBjNWFiMzYwMDU0NzM1NWY3MzA5Nzg2NGViM2M4M2I5
M2ZiMGNiMDdkLi4wZDQ2OGM2OTdlZWFhOGFlMjBiM2Y3YTllNDIzN2Q4NzUwMzNmMjM5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQpAQCAtMTMxNCw2ICsxMzE0LDggQEAgRU5ECiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dEludGVybmFscywgIiAgICAiIC4gQ29udmVydFRvVjhTdHJpbmdSZXNvdXJjZSgkYXR0cmlidXRl
LT5zaWduYXR1cmUsICRuYXRpdmVUeXBlLCAidiIsICR2YWx1ZSwgIlZPSUQiKSAuICJcbiIpOwog
ICAgICAgICB9IGVsc2lmICgkYXJyYXlUeXBlKSB7CiAgICAgICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudEludGVybmFscywgIiAgICBWZWN0b3I8JGFycmF5VHlwZT4gdiA9ICR2YWx1ZTtcbiIpOwor
ICAgICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJFbmZvcmNlUmFuZ2UifSkgeworICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRJbnRl
cm5hbHMsICIgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDS19WT0lEKCRuYXRpdmVUeXBlLCB2
LCAkdmFsdWUsIGluZm8uR2V0SXNvbGF0ZSgpKTtcbiIpOwogICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRJbnRlcm5hbHMsICIgICAgJG5hdGl2ZVR5cGUgdiA9
ICR2YWx1ZTtcbiIpOwogICAgICAgICB9CkBAIC0xODkzLDggKzE4OTUsMTIgQEAgc3ViIEdlbmVy
YXRlUGFyYW1ldGVyc0NoZWNrCiAgICAgICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0
cmluZyAuPSAiICAgICAgICByZXR1cm4gdGhyb3dUeXBlRXJyb3IoMCwgYXJncy5HZXRJc29sYXRl
KCkpO1xuIjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAk
cGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICBWOFRSWUNBVENIKCRuYXRpdmVUeXBlLCAkcGFy
YW1ldGVyTmFtZSwgIiAuCi0gICAgICAgICAgICAgICAgIEpTVmFsdWVUb05hdGl2ZSgkcGFyYW1l
dGVyLCAkb3B0aW9uYWwgJiYgJG9wdGlvbmFsIGVxICJEZWZhdWx0SXNOdWxsU3RyaW5nIiA/ICJh
cmd1bWVudE9yTnVsbChhcmdzLCAkcGFyYW1JbmRleCkiIDogImFyZ3NbJHBhcmFtSW5kZXhdIiwg
ImFyZ3MuR2V0SXNvbGF0ZSgpIikgLiAiKTtcbiI7CisgICAgICAgICAgICBteSAkdmFsdWUgPSBK
U1ZhbHVlVG9OYXRpdmUoJHBhcmFtZXRlciwgJG9wdGlvbmFsICYmICRvcHRpb25hbCBlcSAiRGVm
YXVsdElzTnVsbFN0cmluZyIgPyAiYXJndW1lbnRPck51bGwoYXJncywgJHBhcmFtSW5kZXgpIiA6
ICJhcmdzWyRwYXJhbUluZGV4XSIsICJhcmdzLkdldElzb2xhdGUoKSIpOworICAgICAgICAgICAg
aWYgKCRwYXJhbWV0ZXItPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFbmZvcmNlUmFuZ2UifSkgewor
ICAgICAgICAgICAgICAgICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0hf
V0lUSF9UWVBFQ0hFQ0soJG5hdGl2ZVR5cGUsICRwYXJhbWV0ZXJOYW1lLCAkdmFsdWUsIGFyZ3Mu
R2V0SXNvbGF0ZSgpKTtcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAg
ICRwYXJhbWV0ZXJDaGVja1N0cmluZyAuPSAiICAgIFY4VFJZQ0FUQ0goJG5hdGl2ZVR5cGUsICRw
YXJhbWV0ZXJOYW1lLCAkdmFsdWUpO1xuIjsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlm
ICgkbmF0aXZlVHlwZSBlcSAnRGljdGlvbmFyeScpIHsKICAgICAgICAgICAgICAgICRwYXJhbWV0
ZXJDaGVja1N0cmluZyAuPSAiICAgIGlmICghJHBhcmFtZXRlck5hbWUuaXNVbmRlZmluZWRPck51
bGwoKSAmJiAhJHBhcmFtZXRlck5hbWUuaXNPYmplY3QoKSlcbiI7CiAgICAgICAgICAgICAgICAk
cGFyYW1ldGVyQ2hlY2tTdHJpbmcgLj0gIiAgICAgICAgcmV0dXJuIHRocm93VHlwZUVycm9yKFwi
Tm90IGFuIG9iamVjdC5cIiwgYXJncy5HZXRJc29sYXRlKCkpO1xuIjsKQEAgLTM5ODAsMTQgKzM5
ODYsMjMgQEAgc3ViIEpTVmFsdWVUb05hdGl2ZQogICAgIG15ICRnZXRJc29sYXRlID0gc2hpZnQ7
CiAKICAgICBteSAkdHlwZSA9ICRzaWduYXR1cmUtPnR5cGU7CisgICAgbXkgJGludENvbnZlcnNp
b24gPSAkc2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRW5mb3JjZVJhbmdlIn0gPyAi
RW5mb3JjZVJhbmdlIiA6ICJOb3JtYWxDb252ZXJzaW9uIjsKIAogICAgIHJldHVybiAiJHZhbHVl
IiBpZiAkdHlwZSBlcSAiSlNPYmplY3QiOwogICAgIHJldHVybiAiJHZhbHVlLT5Cb29sZWFuVmFs
dWUoKSIgaWYgJHR5cGUgZXEgImJvb2xlYW4iOwogICAgIHJldHVybiAic3RhdGljX2Nhc3Q8JHR5
cGU+KCR2YWx1ZS0+TnVtYmVyVmFsdWUoKSkiIGlmICR0eXBlIGVxICJmbG9hdCIgb3IgJHR5cGUg
ZXEgImRvdWJsZSI7CiAKLSAgICByZXR1cm4gInRvSW50MzIoJHZhbHVlKSIgaWYgJHR5cGUgZXEg
ImxvbmciIG9yICR0eXBlIGVxICJzaG9ydCI7Ci0gICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUp
IiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2lnbmVkIHNob3J0
IjsKLSAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlKSIgaWYgJHR5cGUgZXEgInVuc2lnbmVkIGxv
bmcgbG9uZyIgb3IgJHR5cGUgZXEgImxvbmcgbG9uZyI7CisgICAgaWYgKCRpbnRDb252ZXJzaW9u
IG5lICJOb3JtYWxDb252ZXJzaW9uIikgeworICAgICAgICByZXR1cm4gInRvSW50MzIoJHZhbHVl
LCAkaW50Q29udmVyc2lvbiwgb2spIiBpZiAkdHlwZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNo
b3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQzMigkdmFsdWUsICRpbnRDb252ZXJzaW9uLCBv
aykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIiBvciAkdHlwZSBlcSAidW5zaWduZWQgc2hv
cnQiOworICAgICAgICByZXR1cm4gInRvSW50NjQoJHZhbHVlLCAkaW50Q29udmVyc2lvbiwgb2sp
IiBpZiAkdHlwZSBlcSAibG9uZyBsb25nIjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQ2NCgkdmFs
dWUsICRpbnRDb252ZXJzaW9uLCBvaykiIGlmICR0eXBlIGVxICJ1bnNpZ25lZCBsb25nIGxvbmci
OworICAgIH0gZWxzZSB7CisgICAgICAgIHJldHVybiAidG9JbnQzMigkdmFsdWUpIiBpZiAkdHlw
ZSBlcSAibG9uZyIgb3IgJHR5cGUgZXEgInNob3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b1VJbnQz
MigkdmFsdWUpIiBpZiAkdHlwZSBlcSAidW5zaWduZWQgbG9uZyIgb3IgJHR5cGUgZXEgInVuc2ln
bmVkIHNob3J0IjsKKyAgICAgICAgcmV0dXJuICJ0b0ludDY0KCR2YWx1ZSkiIGlmICR0eXBlIGVx
ICJsb25nIGxvbmciOworICAgICAgICByZXR1cm4gInRvVUludDY0KCR2YWx1ZSkiIGlmICR0eXBl
IGVxICJ1bnNpZ25lZCBsb25nIGxvbmciOworICAgIH0KICAgICByZXR1cm4gInN0YXRpY19jYXN0
PFJhbmdlOjpDb21wYXJlSG93PigkdmFsdWUtPkludDMyVmFsdWUoKSkiIGlmICR0eXBlIGVxICJD
b21wYXJlSG93IjsKICAgICByZXR1cm4gInRvV2ViQ29yZURhdGUoJHZhbHVlKSIgaWYgJHR5cGUg
ZXEgIkRhdGUiOwogICAgIHJldHVybiAidG9ET01TdHJpbmdMaXN0KCR2YWx1ZSwgJGdldElzb2xh
dGUpIiBpZiAkdHlwZSBlcSAiRE9NU3RyaW5nTGlzdCI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0lETEF0dHJpYnV0ZXMudHh0IGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9JRExBdHRyaWJ1dGVzLnR4dAppbmRleCA4ZWRhYzEyODcxYWM0ZDEz
MTE3NTZmZWMyOWUzMjg4NzUxNjI4MTdhLi4yOGNiZWUzZWQ2NDI3M2VjOWJiMmNkMGYzOGY2NGVk
MWFhMzI5MTk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0lE
TEF0dHJpYnV0ZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvSURM
QXR0cmlidXRlcy50eHQKQEAgLTUyLDYgKzUyLDcgQEAgRG9Ob3RDaGVja0NvbnN0YW50cwogRG9O
b3RDaGVja1NlY3VyaXR5CiBEb05vdENoZWNrU2VjdXJpdHlPbkdldHRlcgogRG9Ob3RDaGVja1Nl
Y3VyaXR5T25TZXR0ZXIKK0VuZm9yY2VSYW5nZQogRXZlbnRUYXJnZXQKIEV4dGVuZHNET01HbG9i
YWxPYmplY3QKIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbERvY3VtZW50fEltcGxFbGVtZW50Um9v
dHxJbXBsT3duZXJOb2RlUm9vdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Rlc3RPYmouaWRsCmluZGV4IDI0YTBlNmMwOWEzODZiNmJmYWZkYjBkY2NlYmE5ZDJl
ZjI1NTY0NzguLmY1NGJjYTdiY2Q2NDliMzliN2NmZTVhYWMwMDgyNDM0MDg0MzkyMmMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5pZGwKQEAg
LTE1MCw2ICsxNTAsMTkgQEAgZW51bSBUZXN0RW51bVR5cGUgeyAiIiwgIkVudW1WYWx1ZTEiLCAi
RW51bVZhbHVlMiIsICJFbnVtVmFsdWUzIiB9OwogICAgIHN0YXRpYyB2b2lkICAgIHN0YXRpY01l
dGhvZFdpdGhDYWxsYmFja0FyZyhpbiBbQ2FsbGJhY2tdIFRlc3RDYWxsYmFjayBjYWxsYmFjayk7
CiAjZW5kaWYKIAorI2lmIGRlZmluZWQoVEVTVElOR19WOCkKKyAgICAvLyAnRW5mb3JjZVJhbmdl
JyBleHRlbmRlZCBhdHRyaWJ1dGUKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJ
bnQzMihpbiBbRW5mb3JjZVJhbmdlXSBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdp
dGhFbmZvcmNlUmFuZ2VVSW50MzIoaW4gW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyB2YWx1
ZSk7CisgICAgdm9pZCAgICBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQoaW4gW0VuZm9yY2VS
YW5nZV0gbG9uZyBsb25nIHZhbHVlKTsKKyAgICB2b2lkICAgIG1ldGhvZFdpdGhFbmZvcmNlUmFu
Z2VVSW50NjQoaW4gW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKTsKKwor
ICAgIGF0dHJpYnV0ZSBbRW5mb3JjZVJhbmdlXSBsb25nIGVuZm9yY2VkUmFuZ2VMb25nQXR0cjsK
KyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBlbmZvcmNlZFJhbmdl
VW5zaWduZWRMb25nQXR0cjsKKyAgICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gbG9uZyBsb25n
IGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHI7CisgICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2Vd
IHVuc2lnbmVkIGxvbmcgbG9uZyBlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHI7Cisj
ZW5kaWYKKwogICAgIC8vICdDb25kaXRpb25hbCcgZXh0ZW5kZWQgYXR0cmlidXRlCiAgICAgW0Nv
bmRpdGlvbmFsPUNvbmRpdGlvbjFdIGF0dHJpYnV0ZSBsb25nIGNvbmRpdGlvbmFsQXR0cjE7CiAg
ICAgW0NvbmRpdGlvbmFsPUNvbmRpdGlvbjEmQ29uZGl0aW9uMl0gYXR0cmlidXRlIGxvbmcgY29u
ZGl0aW9uYWxBdHRyMjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAKaW5kZXggMDc4OTIxMGY5ZmM5NjQwNjZkZmZmM2Q2ODc1
MWRkMWQyOGRhOWI4OS4uNTk3MWUwYmFhNGFkMDUwNDk0NmVhOTcwMDMyNmI1NWJmZmYxYjI1ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVz
dE9iai5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdE9iai5jcHAKQEAgLTMyMSw3ICszMjEsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IHVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2OAog
c3RhdGljIHZvaWQgdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKIHsKICAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB2ID0gdG9JbnQ2NCh2YWx1
ZSk7CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b1VJbnQ2NCh2YWx1ZSk7CiAgICAgaW1w
LT5zZXRVbnNpZ25lZExvbmdMb25nQXR0cih2KTsKICAgICByZXR1cm47CiB9CkBAIC0xMDU3LDYg
KzEwNTcsMTAyIEBAIHN0YXRpYyB2b2lkIHdpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tB
dHRyaWJ1dGVBdHRyU2V0dGVyQ2FsbGJhY2sodjg6OkxvY2FsCiAgICAgVGVzdE9ialY4SW50ZXJu
YWw6OndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGVBdHRyU2V0dGVyKG5h
bWUsIHZhbHVlLCBpbmZvKTsKIH0KIAorc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBlbmZv
cmNlZFJhbmdlTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVz
dE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4SW50ZWdlcihpbXAt
PmVuZm9yY2VkUmFuZ2VMb25nQXR0cigpLCBpbmZvLkdldElzb2xhdGUoKSk7Cit9CisKK3N0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRlckNh
bGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxv
bmdBdHRyQXR0ckdldHRlcihuYW1lLCBpbmZvKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRS
YW5nZUxvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7Cisg
ICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAg
ICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLX1ZPSUQoaW50LCB2LCB0b0ludDMyKHZhbHVlLCBF
bmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOworICAgIGltcC0+c2V0RW5mb3Jj
ZWRSYW5nZUxvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3RhdGljIHZvaWQgZW5mb3Jj
ZWRSYW5nZUxvbmdBdHRyQXR0clNldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKK3sKKyAgICBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0
clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRl
c3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0
dXJuIHY4VW5zaWduZWRJbnRlZ2VyKGltcC0+ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHIo
KSwgaW5mby5HZXRJc29sYXRlKCkpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAg
IHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJB
dHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBlbmZvcmNlZFJhbmdlVW5z
aWduZWRMb25nQXR0ckF0dHJTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQorewor
ICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7Cisg
ICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDS19WT0lEKHVuc2lnbmVkLCB2LCB0b1VJbnQzMih2
YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAtPnNl
dEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyKHYpOworICAgIHJldHVybjsKK30KKworc3Rh
dGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2so
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFsOjpl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8p
OworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGVuZm9yY2VkUmFuZ2VMb25nTG9u
Z0F0dHJBdHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRp
dmUoaW5mby5Ib2xkZXIoKSk7CisgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5ldyhzdGF0aWNfY2Fz
dDxkb3VibGU+KGltcC0+ZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cigpKSk7Cit9CisKK3N0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0
ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29y
SW5mbyYgaW5mbykKK3sKKyAgICByZXR1cm4gVGVzdE9ialY4SW50ZXJuYWw6OmVuZm9yY2VkUmFu
Z2VMb25nTG9uZ0F0dHJBdHRyR2V0dGVyKG5hbWUsIGluZm8pOworfQorCitzdGF0aWMgdm9pZCBl
bmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCit7CisgICAgVGVzdE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhv
bGRlcigpKTsKKyAgICBWOFRSWUNBVENIX1dJVEhfVFlQRUNIRUNLX1ZPSUQobG9uZyBsb25nLCB2
LCB0b0ludDY0KHZhbHVlLCBFbmZvcmNlUmFuZ2UsIG9rKSwgaW5mby5HZXRJc29sYXRlKCkpOwor
ICAgIGltcC0+c2V0RW5mb3JjZWRSYW5nZUxvbmdMb25nQXR0cih2KTsKKyAgICByZXR1cm47Cit9
CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJh
Y2sodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIFRlc3RPYmpWOEludGVybmFs
OjplbmZvcmNlZFJhbmdlTG9uZ0xvbmdBdHRyQXR0clNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7
Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2lnbmVk
TG9uZ0xvbmdBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qg
djg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3sKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6
OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOworICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoc3Rh
dGljX2Nhc3Q8ZG91YmxlPihpbXAtPmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cigp
KSk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZW5mb3JjZWRSYW5nZVVuc2ln
bmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQoreworICAgIHJldHVybiBUZXN0T2Jq
VjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlcihu
YW1lLCBpbmZvKTsKK30KKworc3RhdGljIHZvaWQgZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xv
bmdBdHRyQXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVz
dE9iaiogaW1wID0gVjhUZXN0T2JqOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKKyAgICBWOFRS
WUNBVENIX1dJVEhfVFlQRUNIRUNLX1ZPSUQodW5zaWduZWQgbG9uZyBsb25nLCB2LCB0b1VJbnQ2
NCh2YWx1ZSwgRW5mb3JjZVJhbmdlLCBvayksIGluZm8uR2V0SXNvbGF0ZSgpKTsKKyAgICBpbXAt
PnNldEVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0cih2KTsKKyAgICByZXR1cm47Cit9
CisKK3N0YXRpYyB2b2lkIGVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0
ZXJDYWxsYmFjayh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1
ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit7CisgICAgVGVzdE9ialY4
SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIobmFt
ZSwgdmFsdWUsIGluZm8pOworfQorCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpCiAKIHN0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxBdHRyMUF0dHJHZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC0yMTc3
LDYgKzIyNzMsNjYgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBzdGF0aWNNZXRob2RX
aXRoQ2FsbGJhY2tBcmdNZXRob2RDYWxsYmFjayhjb25zdCB2ODoKICAgICByZXR1cm4gVGVzdE9i
alY4SW50ZXJuYWw6OnN0YXRpY01ldGhvZFdpdGhDYWxsYmFja0FyZ01ldGhvZChhcmdzKTsKIH0K
IAorc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50
MzJNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5n
dGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFy
Z3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZl
KGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0soaW50LCB2YWx1
ZSwgdG9JbnQzMihhcmdzWzBdLCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkp
OworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUludDMyKHZhbHVlKTsKKyAgICByZXR1
cm4gdjhVbmRlZmluZWQoKTsKK30KKworc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBtZXRo
b2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRz
JiBhcmdzKQoreworICAgIHJldHVybiBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9y
Y2VSYW5nZUludDMyTWV0aG9kKGFyZ3MpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VVSW50MzJNZXRob2QoY29uc3Qgdjg6OkFyZ3VtZW50
cyYgYXJncykKK3sKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAgICAgIHJldHVybiB0
aHJvd05vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGFyZ3MuR2V0SXNvbGF0ZSgpKTsKKyAgICBUZXN0
T2JqKiBpbXAgPSBWOFRlc3RPYmo6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOworICAgIFY4VFJZ
Q0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodW5zaWduZWQsIHZhbHVlLCB0b1VJbnQzMihhcmdzWzBdLCBF
bmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0
aEVuZm9yY2VSYW5nZVVJbnQzMih2YWx1ZSk7CisgICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9
CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJ
bnQzMk1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0
dXJuIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDMyTWV0aG9k
KGFyZ3MpOworfQorCitzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZv
cmNlUmFuZ2VJbnQ2NE1ldGhvZChjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlm
IChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1l
bnRzRXJyb3IoYXJncy5HZXRJc29sYXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9i
ajo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVD
Syhsb25nIGxvbmcsIHZhbHVlLCB0b0ludDY0KGFyZ3NbMF0sIEVuZm9yY2VSYW5nZSwgb2spLCBh
cmdzLkdldElzb2xhdGUoKSk7CisgICAgaW1wLT5tZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjQo
dmFsdWUpOworICAgIHJldHVybiB2OFVuZGVmaW5lZCgpOworfQorCitzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IG1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQ2NE1ldGhvZENhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFs
OjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50NjRNZXRob2QoYXJncyk7Cit9CisKK3N0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZChj
b25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkK
KyAgICAgICAgcmV0dXJuIHRocm93Tm90RW5vdWdoQXJndW1lbnRzRXJyb3IoYXJncy5HZXRJc29s
YXRlKCkpOworICAgIFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoYXJncy5Ib2xk
ZXIoKSk7CisgICAgVjhUUllDQVRDSF9XSVRIX1RZUEVDSEVDSyh1bnNpZ25lZCBsb25nIGxvbmcs
IHZhbHVlLCB0b1VJbnQ2NChhcmdzWzBdLCBFbmZvcmNlUmFuZ2UsIG9rKSwgYXJncy5HZXRJc29s
YXRlKCkpOworICAgIGltcC0+bWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NCh2YWx1ZSk7Cisg
ICAgcmV0dXJuIHY4VW5kZWZpbmVkKCk7Cit9CisKK3N0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gbWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NE1ldGhvZENhbGxiYWNrKGNvbnN0IHY4OjpB
cmd1bWVudHMmIGFyZ3MpCit7CisgICAgcmV0dXJuIFRlc3RPYmpWOEludGVybmFsOjptZXRob2RX
aXRoRW5mb3JjZVJhbmdlVUludDY0TWV0aG9kKGFyZ3MpOworfQorCiAjaWYgRU5BQkxFKENvbmRp
dGlvbjEpCiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29uZGl0aW9uYWxNZXRob2Qx
TWV0aG9kKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCkBAIC0yODgyLDYgKzMwMzgsMTQgQEAg
c3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6QmF0Y2hlZEF0dHJpYnV0ZSBWOFRlc3RP
YmpBdHRyc1tdID0gewogICAgIHsid2l0aFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRT
dGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGUiLCBUZXN0T2JqVjhJbnRlcm5hbDo6d2l0aFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRBbmRTY3JpcHRTdGF0ZVdpdGhTcGFjZXNBdHRyaWJ1dGVBdHRyR2V0dGVy
Q2FsbGJhY2ssIFRlc3RPYmpWOEludGVybmFsOjp3aXRoU2NyaXB0RXhlY3V0aW9uQ29udGV4dEFu
ZFNjcmlwdFN0YXRlV2l0aFNwYWNlc0F0dHJpYnV0ZUF0dHJTZXR0ZXJDYWxsYmFjaywgMCAvKiBu
byBkYXRhICovLCBzdGF0aWNfY2FzdDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBz
dGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0
YW5jZSAqL30sCiAgICAgLy8gQXR0cmlidXRlICd3aXRoU2NyaXB0QXJndW1lbnRzQW5kQ2FsbFN0
YWNrQXR0cmlidXRlJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0NhbGxXaXRoJykKICAg
ICB7IndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxsU3RhY2tBdHRyaWJ1dGUiLCBUZXN0T2JqVjhJ
bnRlcm5hbDo6d2l0aFNjcmlwdEFyZ3VtZW50c0FuZENhbGxTdGFja0F0dHJpYnV0ZUF0dHJHZXR0
ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OndpdGhTY3JpcHRBcmd1bWVudHNBbmRDYWxs
U3RhY2tBdHRyaWJ1dGVBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAqLywgc3RhdGlj
X2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nhc3Q8djg6OlBy
b3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99LAorICAgIC8v
IEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZUxvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0
QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNlZFJhbmdlTG9uZ0F0dHIiLCBUZXN0
T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRSYW5nZUxvbmdBdHRyQXR0clNldHRlckNhbGxiYWNr
LCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVG
QVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8q
IG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VVbnNpZ25l
ZExvbmdBdHRyJyAoVHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisg
ICAgeyJlbmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ciIsIFRlc3RPYmpWOEludGVybmFsOjpl
bmZvcmNlZFJhbmdlVW5zaWduZWRMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4
SW50ZXJuYWw6OmVuZm9yY2VkUmFuZ2VVbnNpZ25lZExvbmdBdHRyQXR0clNldHRlckNhbGxiYWNr
LCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVG
QVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8q
IG9uIGluc3RhbmNlICovfSwKKyAgICAvLyBBdHRyaWJ1dGUgJ2VuZm9yY2VkUmFuZ2VMb25nTG9u
Z0F0dHInIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnRW5mb3JjZVJhbmdlJykKKyAgICB7
ImVuZm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRS
YW5nZUxvbmdMb25nQXR0ckF0dHJHZXR0ZXJDYWxsYmFjaywgVGVzdE9ialY4SW50ZXJuYWw6OmVu
Zm9yY2VkUmFuZ2VMb25nTG9uZ0F0dHJBdHRyU2V0dGVyQ2FsbGJhY2ssIDAgLyogbm8gZGF0YSAq
Lywgc3RhdGljX2Nhc3Q8djg6OkFjY2Vzc0NvbnRyb2w+KHY4OjpERUZBVUxUKSwgc3RhdGljX2Nh
c3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6Tm9uZSksIDAgLyogb24gaW5zdGFuY2UgKi99
LAorICAgIC8vIEF0dHJpYnV0ZSAnZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyJyAo
VHlwZTogJ2F0dHJpYnV0ZScgRXh0QXR0cjogJ0VuZm9yY2VSYW5nZScpCisgICAgeyJlbmZvcmNl
ZFJhbmdlVW5zaWduZWRMb25nTG9uZ0F0dHIiLCBUZXN0T2JqVjhJbnRlcm5hbDo6ZW5mb3JjZWRS
YW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRl
cm5hbDo6ZW5mb3JjZWRSYW5nZVVuc2lnbmVkTG9uZ0xvbmdBdHRyQXR0clNldHRlckNhbGxiYWNr
LCAwIC8qIG5vIGRhdGEgKi8sIHN0YXRpY19jYXN0PHY4OjpBY2Nlc3NDb250cm9sPih2ODo6REVG
QVVMVCksIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6Ok5vbmUpLCAwIC8q
IG9uIGluc3RhbmNlICovfSwKICNpZiBFTkFCTEUoQ29uZGl0aW9uMSkKICAgICAvLyBBdHRyaWJ1
dGUgJ2NvbmRpdGlvbmFsQXR0cjEnIChUeXBlOiAnYXR0cmlidXRlJyBFeHRBdHRyOiAnQ29uZGl0
aW9uYWwnKQogICAgIHsiY29uZGl0aW9uYWxBdHRyMSIsIFRlc3RPYmpWOEludGVybmFsOjpjb25k
aXRpb25hbEF0dHIxQXR0ckdldHRlckNhbGxiYWNrLCBUZXN0T2JqVjhJbnRlcm5hbDo6Y29uZGl0
aW9uYWxBdHRyMUF0dHJTZXR0ZXJDYWxsYmFjaywgMCAvKiBubyBkYXRhICovLCBzdGF0aWNfY2Fz
dDx2ODo6QWNjZXNzQ29udHJvbD4odjg6OkRFRkFVTFQpLCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVy
dHlBdHRyaWJ1dGU+KHY4OjpOb25lKSwgMCAvKiBvbiBpbnN0YW5jZSAqL30sCkBAIC0yOTY2LDYg
KzMxMzAsMTAgQEAgc3RhdGljIGNvbnN0IFY4RE9NQ29uZmlndXJhdGlvbjo6QmF0Y2hlZE1ldGhv
ZCBWOFRlc3RPYmpNZXRob2RzW10gPSB7CiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBcmciLCBU
ZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aENhbGxiYWNrQXJnTWV0aG9kQ2FsbGJhY2t9LAog
ICAgIHsibWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5kQ2FsbGJhY2tBcmciLCBUZXN0T2JqVjhJ
bnRlcm5hbDo6bWV0aG9kV2l0aE5vbkNhbGxiYWNrQXJnQW5kQ2FsbGJhY2tBcmdNZXRob2RDYWxs
YmFja30sCiAgICAgeyJtZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZyIsIFRlc3RPYmpW
OEludGVybmFsOjptZXRob2RXaXRoQ2FsbGJhY2tBbmRPcHRpb25hbEFyZ01ldGhvZENhbGxiYWNr
fSwKKyAgICB7Im1ldGhvZFdpdGhFbmZvcmNlUmFuZ2VJbnQzMiIsIFRlc3RPYmpWOEludGVybmFs
OjptZXRob2RXaXRoRW5mb3JjZVJhbmdlSW50MzJNZXRob2RDYWxsYmFja30sCisgICAgeyJtZXRo
b2RXaXRoRW5mb3JjZVJhbmdlVUludDMyIiwgVGVzdE9ialY4SW50ZXJuYWw6Om1ldGhvZFdpdGhF
bmZvcmNlUmFuZ2VVSW50MzJNZXRob2RDYWxsYmFja30sCisgICAgeyJtZXRob2RXaXRoRW5mb3Jj
ZVJhbmdlSW50NjQiLCBUZXN0T2JqVjhJbnRlcm5hbDo6bWV0aG9kV2l0aEVuZm9yY2VSYW5nZUlu
dDY0TWV0aG9kQ2FsbGJhY2t9LAorICAgIHsibWV0aG9kV2l0aEVuZm9yY2VSYW5nZVVJbnQ2NCIs
IFRlc3RPYmpWOEludGVybmFsOjptZXRob2RXaXRoRW5mb3JjZVJhbmdlVUludDY0TWV0aG9kQ2Fs
bGJhY2t9LAogI2lmIEVOQUJMRShDb25kaXRpb24xKQogICAgIHsiY29uZGl0aW9uYWxNZXRob2Qx
IiwgVGVzdE9ialY4SW50ZXJuYWw6OmNvbmRpdGlvbmFsTWV0aG9kMU1ldGhvZENhbGxiYWNrfSwK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4VGVzdFR5cGVkZWZzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RUeXBlZGVmcy5jcHAKaW5kZXggYzdkYjQ3OTA4NzhiMDE4MzA1NDFiOTVi
YjliMGEzNWY5ZTZiMTVmOC4uM2YzNTdmMGNjNTNlYTY4MTEyN2NlZjhmYzQzNzUwY2E5MjViZjcz
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdFR5cGVkZWZzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0VHlwZWRlZnMuY3BwCkBAIC05NCw3ICs5NCw3IEBAIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gdW5zaWduZWRMb25nTG9uZ0F0dHJBdHRyR2V0dGVyQ2FsbGJhY2sodjg6
OkxvY2FsPHY4CiBzdGF0aWMgdm9pZCB1bnNpZ25lZExvbmdMb25nQXR0ckF0dHJTZXR0ZXIodjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFRlc3RUeXBlZGVmcyogaW1wID0gVjhU
ZXN0VHlwZWRlZnM6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwotICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyB2ID0gdG9JbnQ2NCh2YWx1ZSk7CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHYgPSB0b1VJ
bnQ2NCh2YWx1ZSk7CiAgICAgaW1wLT5zZXRVbnNpZ25lZExvbmdMb25nQXR0cih2KTsKICAgICBy
ZXR1cm47CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRp
bmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAppbmRleCA3
MzIyYzQyZDMxN2VkZWQxYTVmYWQ1MzNjYjhmMzI5ZGY3YTFiMmE2Li40NjdkMWQ2N2E4NTMzZmFh
ZDBhMTQ1NTdkZjU3YzNlYWNmZDViZDA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOEJpbmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4
QmluZGluZy5jcHAKQEAgLTEwMyw0MCArMTAzLDQ5IEBAIFBhc3NSZWZQdHI8Tm9kZUZpbHRlcj4g
dG9Ob2RlRmlsdGVyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiBjYWxsYmFjaykKICAgICByZXR1cm4g
Tm9kZUZpbHRlcjo6Y3JlYXRlKFY4Tm9kZUZpbHRlckNvbmRpdGlvbjo6Y3JlYXRlKGNhbGxiYWNr
KSk7CiB9CiAKLWludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYg
b2spCitjb25zdCBpbnQzMl90IGtNaW5JbnQzMiA9IC0weDgwMDAwMDAwOworY29uc3QgaW50MzJf
dCBrTWF4SW50MzIgPSAweDdmZmZmZmZmOworY29uc3QgdWludDMyX3Qga01heFVJbnQzMiA9IDB4
ZmZmZmZmZmY7Citjb25zdCBpbnQ2NF90IGtKU01heEludGVnZXIgPSAweDIwMDAwMDAwMDAwMDAw
TEwgLSAxOyAvLyAyXjUzIC0gMSwgbWF4aW11bSBpbnRlZ2VyIGV4YWN0bHkgcmVwcmVzZW50YWJs
ZSBpbiBFQ01BU2NyaXB0LgorCitpbnQzMl90IHRvSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+
IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24gY29uZmlndXJhdGlvbiwgYm9v
bCYgb2spCiB7CiAgICAgb2sgPSB0cnVlOwotICAgIAorCiAgICAgLy8gRmFzdCBjYXNlLiBUaGUg
dmFsdWUgaXMgYWxyZWFkeSBhIDMyLWJpdCBpbnRlZ2VyLgogICAgIGlmICh2YWx1ZS0+SXNJbnQz
MigpKQogICAgICAgICByZXR1cm4gdmFsdWUtPkludDMyVmFsdWUoKTsKLSAgICAKKwogICAgIC8v
IENhbiB0aGUgdmFsdWUgYmUgY29udmVydGVkIHRvIGEgbnVtYmVyPwogICAgIHY4OjpMb2NhbDx2
ODo6TnVtYmVyPiBudW1iZXJPYmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIoKTsKICAgICBpZiAobnVt
YmVyT2JqZWN0LklzRW1wdHkoKSkgewogICAgICAgICBvayA9IGZhbHNlOwogICAgICAgICByZXR1
cm4gMDsKICAgICB9Ci0gICAgCisKKyAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFu
Z2UpIHsKKyAgICAgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisgICAgICAg
IGlmIChzdGQ6OmlzbmFuKHgpIHx8IHN0ZDo6aXNpbmYoeCkpIHsKKyAgICAgICAgICAgIG9rID0g
ZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHgg
PCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8IGtNaW5JbnQz
MiB8fCB4ID4ga01heEludDMyKSB7CisgICAgICAgICAgICBvayA9IGZhbHNlOworICAgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICByZXR1cm4geDsKKyAgICB9CisKICAg
ICAvLyBEb2VzIHRoZSB2YWx1ZSBjb252ZXJ0IHRvIG5hbiBvciB0byBhbiBpbmZpbml0eT8KICAg
ICBkb3VibGUgbnVtYmVyVmFsdWUgPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7Ci0gICAgaWYgKHN0
ZDo6aXNuYW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKSB7Ci0gICAg
ICAgIG9rID0gZmFsc2U7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICAKLSAgICAvLyBD
YW4gdGhlIHZhbHVlIGJlIGNvbnZlcnRlZCB0byBhIDMyLWJpdCBpbnRlZ2VyPwotICAgIHY4OjpM
b2NhbDx2ODo6SW50MzI+IGludFZhbHVlID0gdmFsdWUtPlRvSW50MzIoKTsKLSAgICBpZiAoaW50
VmFsdWUuSXNFbXB0eSgpKSB7Ci0gICAgICAgIG9rID0gZmFsc2U7CisgICAgaWYgKHN0ZDo6aXNu
YW4obnVtYmVyVmFsdWUpIHx8IHN0ZDo6aXNpbmYobnVtYmVyVmFsdWUpKQogICAgICAgICByZXR1
cm4gMDsKLSAgICB9Ci0gICAgCi0gICAgLy8gUmV0dXJuIHRoZSByZXN1bHQgb2YgdGhlIGludDMy
IGNvbnZlcnNpb24uCi0gICAgcmV0dXJuIGludFZhbHVlLT5WYWx1ZSgpOworICAgIHJldHVybiBu
dW1iZXJPYmplY3QtPkludDMyVmFsdWUoKTsKIH0KLSAgICAKLXVpbnQzMl90IHRvVUludDMyKHY4
OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCisKK3VpbnQzMl90IHRvVUludDMy
KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1cmF0
aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQogewogICAgIG9rID0gdHJ1ZTsKIApAQCAtMTQ0
LDEwICsxNTMsMTYgQEAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZh
bHVlLCBib29sJiBvaykKICAgICBpZiAodmFsdWUtPklzVWludDMyKCkpCiAgICAgICAgIHJldHVy
biB2YWx1ZS0+VWludDMyVmFsdWUoKTsKIAorICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlz
IGEgMzItYml0IHNpZ25lZCBpbnRlZ2VyIC0gcG9zc2libHkgcG9zaXRpdmU/CiAgICAgaWYgKHZh
bHVlLT5Jc0ludDMyKCkpIHsKICAgICAgICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+SW50MzJW
YWx1ZSgpOwogICAgICAgICBpZiAocmVzdWx0ID49IDApCiAgICAgICAgICAgICByZXR1cm4gcmVz
dWx0OworICAgICAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAg
ICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAg
ICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KIAogICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29u
dmVydGVkIHRvIGEgbnVtYmVyPwpAQCAtMTU3LDIxICsxNzIsMTEwIEBAIHVpbnQzMl90IHRvVUlu
dDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCYgb2spCiAgICAgICAgIHJldHVy
biAwOwogICAgIH0KIAorICAgIGlmIChjb25maWd1cmF0aW9uID09IEVuZm9yY2VSYW5nZSkgewor
ICAgICAgICBkb3VibGUgeCA9IG51bWJlck9iamVjdC0+VmFsdWUoKTsKKyAgICAgICAgaWYgKHN0
ZDo6aXNuYW4oeCkgfHwgc3RkOjppc2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsK
KyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAt
MSA6IDEpICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4ga01heFVJ
bnQzMikgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVybiAwOwor
ICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIHg7CisgICAgfQorCiAgICAgLy8gRG9lcyB0aGUg
dmFsdWUgY29udmVydCB0byBuYW4gb3IgdG8gYW4gaW5maW5pdHk/CiAgICAgZG91YmxlIG51bWJl
clZhbHVlID0gbnVtYmVyT2JqZWN0LT5WYWx1ZSgpOwotICAgIGlmIChzdGQ6OmlzbmFuKG51bWJl
clZhbHVlKSB8fCBzdGQ6OmlzaW5mKG51bWJlclZhbHVlKSkgeworICAgIGlmIChzdGQ6OmlzbmFu
KG51bWJlclZhbHVlKSB8fCBzdGQ6OmlzaW5mKG51bWJlclZhbHVlKSkKKyAgICAgICAgcmV0dXJu
IDA7CisgICAgcmV0dXJuIG51bWJlck9iamVjdC0+VWludDMyVmFsdWUoKTsKK30KKworaW50NjRf
dCB0b0ludDY0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgSW50ZWdlckNvbnZlcnNpb25D
b25maWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKQoreworICAgIG9rID0gdHJ1ZTsK
KworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IGludGVnZXIuCisgICAg
aWYgKHZhbHVlLT5Jc0ludDMyKCkpCisgICAgICAgIHJldHVybiB2YWx1ZS0+SW50MzJWYWx1ZSgp
OworCisgICAgLy8gQ2FuIHRoZSB2YWx1ZSBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXI/CisgICAg
djg6OkxvY2FsPHY4OjpOdW1iZXI+IG51bWJlck9iamVjdCA9IHZhbHVlLT5Ub051bWJlcigpOwor
ICAgIGlmIChudW1iZXJPYmplY3QuSXNFbXB0eSgpKSB7CiAgICAgICAgIG9rID0gZmFsc2U7CiAg
ICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8vIENhbiB0aGUgdmFsdWUgYmUgY29udmVy
dGVkIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXI/Ci0gICAgdjg6OkxvY2FsPHY4OjpVaW50
MzI+IHVpbnRWYWx1ZSA9IHZhbHVlLT5Ub1VpbnQzMigpOwotICAgIGlmICh1aW50VmFsdWUuSXNF
bXB0eSgpKSB7CisgICAgZG91YmxlIHggPSBudW1iZXJPYmplY3QtPlZhbHVlKCk7CisKKyAgICBp
ZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsKKyAgICAgICAgaWYgKHN0ZDo6aXNu
YW4oeCkgfHwgc3RkOjppc2luZih4KSkgeworICAgICAgICAgICAgb2sgPSBmYWxzZTsKKyAgICAg
ICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHggPSAoeCA8IDAgPyAtMSA6IDEp
ICogZmxvb3IoZmFicyh4KSk7CisgICAgICAgIGlmICh4IDwgLWtKU01heEludGVnZXIgfHwgeCA+
IGtKU01heEludGVnZXIpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICBy
ZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4geDsKKyAgICB9CisKKyAgICAvLyBO
YU5zIGFuZCArLy1JbmZpbml0eSBzaG91bGQgYmUgMCwgb3RoZXJ3aXNlIG1vZHVsbyAyXjY0Lgor
ICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnRlZ2VyOworICAgIGRvdWJsZVRvSW50ZWdlcih4LCBp
bnRlZ2VyKTsKKyAgICByZXR1cm4gaW50ZWdlcjsKK30KKwordWludDY0X3QgdG9VSW50NjQodjg6
OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24g
Y29uZmlndXJhdGlvbiwgYm9vbCYgb2spCit7CisgICAgb2sgPSB0cnVlOworCisgICAgLy8gRmFz
dCBjYXNlLiBUaGUgdmFsdWUgaXMgYSAzMi1iaXQgdW5zaWduZWQgaW50ZWdlci4KKyAgICBpZiAo
dmFsdWUtPklzVWludDMyKCkpCisgICAgICAgIHJldHVybiB2YWx1ZS0+VWludDMyVmFsdWUoKTsK
KworICAgIC8vIEZhc3QgY2FzZS4gVGhlIHZhbHVlIGlzIGEgMzItYml0IGludGVnZXIuCisgICAg
aWYgKHZhbHVlLT5Jc0ludDMyKCkpIHsKKyAgICAgICAgaW50MzJfdCByZXN1bHQgPSB2YWx1ZS0+
SW50MzJWYWx1ZSgpOworICAgICAgICBpZiAocmVzdWx0ID49IDApCisgICAgICAgICAgICByZXR1
cm4gcmVzdWx0OworICAgICAgICBpZiAoY29uZmlndXJhdGlvbiA9PSBFbmZvcmNlUmFuZ2UpIHsK
KyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAg
fQorICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKworICAgIC8vIENhbiB0aGUgdmFsdWUg
YmUgY29udmVydGVkIHRvIGEgbnVtYmVyPworICAgIHY4OjpMb2NhbDx2ODo6TnVtYmVyPiBudW1i
ZXJPYmplY3QgPSB2YWx1ZS0+VG9OdW1iZXIoKTsKKyAgICBpZiAobnVtYmVyT2JqZWN0LklzRW1w
dHkoKSkgewogICAgICAgICBvayA9IGZhbHNlOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAK
LSAgICByZXR1cm4gdWludFZhbHVlLT5WYWx1ZSgpOworICAgIGRvdWJsZSB4ID0gbnVtYmVyT2Jq
ZWN0LT5WYWx1ZSgpOworCisgICAgaWYgKGNvbmZpZ3VyYXRpb24gPT0gRW5mb3JjZVJhbmdlKSB7
CisgICAgICAgIGlmIChzdGQ6OmlzbmFuKHgpIHx8IHN0ZDo6aXNpbmYoeCkpIHsKKyAgICAgICAg
ICAgIG9rID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAg
ICB4ID0gKHggPCAwID8gLTEgOiAxKSAqIGZsb29yKGZhYnMoeCkpOworICAgICAgICBpZiAoeCA8
IDAgfHwgeCA+IGtKU01heEludGVnZXIpIHsKKyAgICAgICAgICAgIG9rID0gZmFsc2U7CisgICAg
ICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4geDsKKyAgICB9CisK
KyAgICAvLyBOYU5zIGFuZCArLy1JbmZpbml0eSBzaG91bGQgYmUgMCwgb3RoZXJ3aXNlIG1vZHVs
byAyXjY0LgorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnRlZ2VyOworICAgIGRvdWJsZVRvSW50
ZWdlcih4LCBpbnRlZ2VyKTsKKyAgICByZXR1cm4gaW50ZWdlcjsKIH0KIAogdjg6OlBlcnNpc3Rl
bnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IGNyZWF0ZVJhd1RlbXBsYXRlKHY4OjpJc29sYXRlKiBp
c29sYXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5n
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuaAppbmRleCBjNDM1ZmZj
YzNhOGE3MzllZTA3Y2E1NDc0MzY1YjU4ODQ4M2NkZTI5Li41YWIyYjE2ZWNiMGIyOTUxOTkzZDBk
ZDU4YjdjMTdhZThjMThjODM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOEJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcu
aApAQCAtMjQzLDM2ICsyNDMsNjYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgdjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHY4QXJyYXkoUGFzc1JlZlB0cjxET01TdHJpbmdMaXN0Piwgdjg6Oklz
b2xhdGUqKTsKIAotICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCBpbnRlZ2VyLiBU
aGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKLSAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVy
dGVkIHRvIGFuIGludGVnZXIgb3IgY29udmVydHMgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5Lgot
ICAgIGludCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgYm9vbCYgb2spOworICAgIC8v
IENvbnZlcnNpb24gZmxhZ3MsIHVzZWQgaW4gdG9JbnRYWC90b1VJbnRYWC4KKyAgICBlbnVtIElu
dGVnZXJDb252ZXJzaW9uQ29uZmlndXJhdGlvbiB7CisgICAgICAgIE5vcm1hbENvbnZlcnNpb24s
CisgICAgICAgIEVuZm9yY2VSYW5nZSwKKyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCBDbGFt
cAorICAgIH07CisKKyAgICAvLyBDb252ZXJ0IGEgdmFsdWUgdG8gYSAzMi1iaXQgc2lnbmVkIGlu
dGVnZXIuIFRoZSBjb252ZXJzaW9uIGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBi
ZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6
CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2ViSURMLyNlcy1sb25nCisgICAgaW50MzJf
dCB0b0ludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgSW50ZWdlckNvbnZlcnNpb25Db25maWd1
cmF0aW9uLCBib29sJiBvayk7CisgICAgaW5saW5lIGludDMyX3QgdG9JbnQzMih2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wmIG9rKSB7IHJldHVybiB0b0ludDMyKHZhbHVlLCBOb3Jt
YWxDb252ZXJzaW9uLCBvayk7IH0KIAogICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJp
dCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgotICAgIGlubGlu
ZSBpbnQgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCisgICAgaW5saW5lIGlu
dDMyX3QgdG9JbnQzMih2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgewogICAgICAg
ICBib29sIG9rOwotICAgICAgICByZXR1cm4gdG9JbnQzMih2YWx1ZSwgb2spOworICAgICAgICBy
ZXR1cm4gdG9JbnQzMih2YWx1ZSwgTm9ybWFsQ29udmVyc2lvbiwgb2spOwogICAgIH0KIAogICAg
IC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDMyLWJpdCB1bnNpZ25lZCBpbnRlZ2VyLiBUaGUgY29u
dmVyc2lvbiBmYWlscyBpZiB0aGUKLSAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29udmVydGVkIHRv
IGFuIHVuc2lnbmVkIGludGVnZXIgb3IgY29udmVydHMgdG8gbmFuIG9yIHRvIGFuIGluZmluaXR5
LgotICAgIHVpbnQzMl90IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiwgYm9vbCYgb2sp
OworICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1iZXIgb3IgdGhlIHJh
bmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53My5vcmcvVFIvV2Vi
SURMLyNlcy11bnNpZ25lZC1sb25nCisgICAgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2
ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKTsKKyAg
ICBpbmxpbmUgdWludDMyX3QgdG9VSW50MzIodjg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBi
b29sJiBvaykgeyByZXR1cm4gdG9VSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsg
fQogCiAgICAgLy8gQ29udmVydCBhIHZhbHVlIHRvIGEgMzItYml0IHVuc2lnbmVkIGludGVnZXIg
YXNzdW1pbmcgdGhlIGNvbnZlcnNpb24gY2Fubm90IGZhaWwuCiAgICAgaW5saW5lIHVpbnQzMl90
IHRvVUludDMyKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKICAgICB7CiAgICAgICAgIGJv
b2wgb2s7Ci0gICAgICAgIHJldHVybiB0b1VJbnQzMih2YWx1ZSwgb2spOworICAgICAgICByZXR1
cm4gdG9VSW50MzIodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsKICAgICB9CiAKLSAgICBp
bmxpbmUgZmxvYXQgdG9GbG9hdCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSkKKyAgICAvLyBD
b252ZXJ0IGEgdmFsdWUgdG8gYSA2NC1iaXQgc2lnbmVkIGludGVnZXIuIFRoZSBjb252ZXJzaW9u
IGZhaWxzIGlmIHRoZQorICAgIC8vIHZhbHVlIGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBudW1i
ZXIgb3IgdGhlIHJhbmdlIHZpb2xhdGVkIHBlciBXZWJJREw6CisgICAgLy8gaHR0cDovL3d3dy53
My5vcmcvVFIvV2ViSURMLyNlcy1sb25nLWxvbmcKKyAgICBpbnQ2NF90IHRvSW50NjQodjg6Okhh
bmRsZTx2ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVyc2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9r
KTsKKworICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCBpbnRlZ2VyIGFzc3VtaW5n
IHRoZSBjb252ZXJzaW9uIGNhbm5vdCBmYWlsLgorICAgIGlubGluZSBpbnQ2NF90IHRvSW50NjQo
djg6OkhhbmRsZTx2ODo6VmFsdWU+IHZhbHVlKQogICAgIHsKLSAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PGZsb2F0Pih2YWx1ZS0+TnVtYmVyVmFsdWUoKSk7CisgICAgICAgIGJvb2wgb2s7Cisg
ICAgICAgIHJldHVybiB0b0ludDY0KHZhbHVlLCBOb3JtYWxDb252ZXJzaW9uLCBvayk7CiAgICAg
fQogCi0gICAgaW5saW5lIGxvbmcgbG9uZyB0b0ludDY0KHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZh
bHVlKQorICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0byBhIDY0LWJpdCB1bnNpZ25lZCBpbnRlZ2Vy
LiBUaGUgY29udmVyc2lvbiBmYWlscyBpZiB0aGUKKyAgICAvLyB2YWx1ZSBjYW5ub3QgYmUgY29u
dmVydGVkIHRvIGEgbnVtYmVyIG9yIHRoZSByYW5nZSB2aW9sYXRlZCBwZXIgV2ViSURMOgorICAg
IC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1dlYklETC8jZXMtdW5zaWduZWQtbG9uZy1sb25nCisg
ICAgdWludDY0X3QgdG9VSW50NjQodjg6OkhhbmRsZTx2ODo6VmFsdWU+LCBJbnRlZ2VyQ29udmVy
c2lvbkNvbmZpZ3VyYXRpb24sIGJvb2wmIG9rKTsKKworICAgIC8vIENvbnZlcnQgYSB2YWx1ZSB0
byBhIDY0LWJpdCB1bnNpZ25lZCBpbnRlZ2VyIGFzc3VtaW5nIHRoZSBjb252ZXJzaW9uIGNhbm5v
dCBmYWlsLgorICAgIGlubGluZSB1aW50NjRfdCB0b1VJbnQ2NCh2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gdmFsdWUpCiAgICAgewotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8bG9uZyBsb25nPih2
YWx1ZS0+SW50ZWdlclZhbHVlKCkpOworICAgICAgICBib29sIG9rOworICAgICAgICByZXR1cm4g
dG9VSW50NjQodmFsdWUsIE5vcm1hbENvbnZlcnNpb24sIG9rKTsKKyAgICB9CisKKyAgICBpbmxp
bmUgZmxvYXQgdG9GbG9hdCh2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSkKKyAgICB7CisgICAg
ICAgIHJldHVybiBzdGF0aWNfY2FzdDxmbG9hdD4odmFsdWUtPk51bWJlclZhbHVlKCkpOwogICAg
IH0KIAogICAgIFdyYXBwZXJXb3JsZFR5cGUgd29ybGRUeXBlKHY4OjpJc29sYXRlKik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmdNYWNyb3MuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZ01hY3Jvcy5oCmluZGV4IDZmZWI1M2Ux
ZDY3YjA0NTJiYjY3MzkwNWNjZDc2ZGI0NzMxYTBjYzguLjQzNjZjZDQ0MWIwYWY0NDFhOTUxYjQy
NWZlMThlM2M0NzMyY2E4ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4QmluZGluZ01hY3Jvcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Qmlu
ZGluZ01hY3Jvcy5oCkBAIC00Miw2ICs0MiwzOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgICAgICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICBcCiAgICAgfQogCisjZGVmaW5l
IFY4VFJZQ0FUQ0hfV0lUSF9UWVBFQ0hFQ0sodHlwZSwgdmFyLCB2YWx1ZSwgaXNvbGF0ZSkgXAor
ICAgIHR5cGUgdmFyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICAgIGJvb2wgb2sgPSB0cnVlOyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHY4OjpUcnlDYXRjaCBibG9j
azsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB2YXIgPSAodmFs
dWUpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgaWYg
KGJsb2NrLkhhc0NhdWdodCgpKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAg
ICAgICAgICByZXR1cm4gYmxvY2suUmVUaHJvdygpOyAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAgICBpZiAoVU5MSUtFTFkoIW9rKSkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybiB0aHJvd1R5cGVFcnJvcigwLCBpc29sYXRl
KTsgICAgICAgICAgICAgICBcCisgICAgfQorCisjZGVmaW5lIFY4VFJZQ0FUQ0hfV0lUSF9UWVBF
Q0hFQ0tfVk9JRCh0eXBlLCB2YXIsIHZhbHVlLCBpc29sYXRlKSBcCisgICAgdHlwZSB2YXI7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
eyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgIGJvb2wgb2sgPSB0cnVlOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB2ODo6VHJ5Q2F0Y2gg
YmxvY2s7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB2
YXIgPSAodmFsdWUpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgICAgICAgICBpZiAoYmxvY2suSGFzQ2F1Z2h0KCkpIHsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgICAgICAgICAgYmxvY2suUmVUaHJvdygpOyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgcmV0dXJuOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB9ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgICAgIGlmIChVTkxJS0VMWSghb2spKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICAgICAgICB0aHJvd1R5cGVFcnJvcigwLCBpc29sYXRlKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICByZXR1cm47ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfQor
CiAjZGVmaW5lIFY4VFJZQ0FUQ0hfRk9SX1Y4U1RSSU5HUkVTT1VSQ0UodHlwZSwgdmFyLCB2YWx1
ZSkgXAogICAgIHR5cGUgdmFyKHZhbHVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKICAgICBpZiAoIXZhci5wcmVwYXJlKCkpICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL1R5cGVDb252ZXJzaW9ucy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVy
c2lvbnMuaAppbmRleCAyNGIzM2RkMTgyZWVkYzgzMWY2YTVhNTE5MTljODRkNDNlYzAxZGQ3Li44
ZGUxMDJmMmEyNDc3ZGUxMDA5NTgzNjM4ODY3MmRhNTgxMGM4OGY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgKQEAgLTM2LDI1ICszNiwzMyBAQCBjbGFzcyBUeXBl
Q29udmVyc2lvbnMgOiBwdWJsaWMgUmVmQ291bnRlZDxUeXBlQ29udmVyc2lvbnM+IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxUeXBlQ29udmVyc2lvbnM+IGNyZWF0ZSgpIHsgcmV0
dXJuIGFkb3B0UmVmKG5ldyBUeXBlQ29udmVyc2lvbnMoKSk7IH0KIAotICAgIGxvbmcgdGVzdExv
bmcoKSB7IHJldHVybiBtX3Rlc3RMb25nOyB9Ci0gICAgdm9pZCBzZXRUZXN0TG9uZyhsb25nIHZh
bHVlKSB7IG1fdGVzdExvbmcgPSB2YWx1ZTsgfQotICAgIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2ln
bmVkTG9uZygpIHsgcmV0dXJuIG1fdGVzdFVuc2lnbmVkTG9uZzsgfQotICAgIHZvaWQgc2V0VGVz
dFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVkTG9uZyA9
IHZhbHVlOyB9CisgICAgbG9uZyB0ZXN0TG9uZygpIHsgcmV0dXJuIG1fbG9uZzsgfQorICAgIHZv
aWQgc2V0VGVzdExvbmcobG9uZyB2YWx1ZSkgeyBtX2xvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcg
dGVzdEVuZm9yY2VSYW5nZUxvbmcoKSB7IHJldHVybiBtX2xvbmc7IH0KKyAgICB2b2lkIHNldFRl
c3RFbmZvcmNlUmFuZ2VMb25nKGxvbmcgdmFsdWUpIHsgbV9sb25nID0gdmFsdWU7IH0KKyAgICB1
bnNpZ25lZCBsb25nIHRlc3RVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZzsg
fQorICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1f
dW5zaWduZWRMb25nID0gdmFsdWU7IH0KKyAgICB1bnNpZ25lZCBsb25nIHRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcoKSB7IHJldHVybiBtX3Vuc2lnbmVkTG9uZzsgfQorICAgIHZvaWQgc2V0
VGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyh1bnNpZ25lZCBsb25nIHZhbHVlKSB7IG1fdW5z
aWduZWRMb25nID0gdmFsdWU7IH0KIAotICAgIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmcoKSB7IHJl
dHVybiBtX3Rlc3RMb25nTG9uZzsgfQotICAgIHZvaWQgc2V0VGVzdExvbmdMb25nKGxvbmcgbG9u
ZyB2YWx1ZSkgeyBtX3Rlc3RMb25nTG9uZyA9IHZhbHVlOyB9Ci0gICAgdW5zaWduZWQgbG9uZyBs
b25nIHRlc3RVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV90ZXN0VW5zaWduZWRMb25nTG9u
ZzsgfQotICAgIHZvaWQgc2V0VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25n
IHZhbHVlKSB7IG1fdGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIGxvbmcgbG9u
ZyB0ZXN0TG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdMb25nOyB9CisgICAgdm9pZCBzZXRUZXN0
TG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIGxv
bmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcoKSB7IHJldHVybiBtX2xvbmdMb25nOyB9
CisgICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcobG9uZyBsb25nIHZhbHVlKSB7
IG1fbG9uZ0xvbmcgPSB2YWx1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWdu
ZWRMb25nTG9uZygpIHsgcmV0dXJuIG1fdW5zaWduZWRMb25nTG9uZzsgfQorICAgIHZvaWQgc2V0
VGVzdFVuc2lnbmVkTG9uZ0xvbmcodW5zaWduZWQgbG9uZyBsb25nIHZhbHVlKSB7IG1fdW5zaWdu
ZWRMb25nTG9uZyA9IHZhbHVlOyB9CisgICAgdW5zaWduZWQgbG9uZyBsb25nIHRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nKCkgeyByZXR1cm4gbV91bnNpZ25lZExvbmdMb25nOyB9Cisg
ICAgdm9pZCBzZXRUZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyh1bnNpZ25lZCBsb25n
IGxvbmcgdmFsdWUpIHsgbV91bnNpZ25lZExvbmdMb25nID0gdmFsdWU7IH0KIAogcHJpdmF0ZToK
ICAgICBUeXBlQ29udmVyc2lvbnMoKQogICAgIHsKICAgICB9CiAKLSAgICBsb25nIG1fdGVzdExv
bmc7Ci0gICAgdW5zaWduZWQgbG9uZyBtX3Rlc3RVbnNpZ25lZExvbmc7Ci0gICAgbG9uZyBsb25n
IG1fdGVzdExvbmdMb25nOwotICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtX3Rlc3RVbnNpZ25lZExv
bmdMb25nOworICAgIGxvbmcgbV9sb25nOworICAgIHVuc2lnbmVkIGxvbmcgbV91bnNpZ25lZExv
bmc7CisgICAgbG9uZyBsb25nIG1fbG9uZ0xvbmc7CisgICAgdW5zaWduZWQgbG9uZyBsb25nIG1f
dW5zaWduZWRMb25nTG9uZzsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbCBiL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmlkbAppbmRleCAzNjdkMWY3ZWM0ODQyZTQx
ZjZhYWEzMTBhYjIyYTliYzUwMWNmODRmLi5iMjdiMTU4ZDc2MzNiMzM0NTYxNmVlNWJjN2ZlMzJj
NmNlNTVhMmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL1R5cGVDb252ZXJz
aW9ucy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaWRs
CkBAIC0yOCw4ICsyOCwxMiBAQAogICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUKIF0gaW50
ZXJmYWNlIFR5cGVDb252ZXJzaW9ucyB7CiAgICAgYXR0cmlidXRlIGxvbmcgdGVzdExvbmc7Cisg
ICAgYXR0cmlidXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgdGVzdEVuZm9yY2VSYW5nZUxvbmc7CiAg
ICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgdGVzdFVuc2lnbmVkTG9uZzsKKyAgICBhdHRyaWJ1
dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nOwogCiAgICAgYXR0cmlidXRlIGxvbmcgbG9uZyB0ZXN0TG9uZ0xvbmc7CisgICAgYXR0cmli
dXRlIFtFbmZvcmNlUmFuZ2VdIGxvbmcgbG9uZyB0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmc7CiAg
ICAgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgbG9uZyB0ZXN0VW5zaWduZWRMb25nTG9uZzsKKyAg
ICBhdHRyaWJ1dGUgW0VuZm9yY2VSYW5nZV0gdW5zaWduZWQgbG9uZyBsb25nIHRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmdMb25nOwogfTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzNTRiYjM5MWRkYTM1ODMzYzU0MzA3
ZGFjYTI5ZDAzYzc3YTRiZjk1Li41ZDI0Y2ZlNTU0ZWRmMjJkZmU1N2YwMTE4ODU4NWZkZDc1MDg1
NTE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTMtMDMtMTEgIEpvc2h1YSBCZWxsICA8anNi
ZWxsQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIEJpbmRpbmc6IEltcGxlbWVudCBFbmZv
cmNlUmFuZ2UgSURMIEF0dHJpYnV0ZSBmb3IgbG9uZyBsb25nIGNvbnZlcnNpb25zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05Njc5OAorCisgICAgICAg
IFJldmlld2VkIGJ5IEtlbnRhcm8gSGFyYS4KKworICAgICAgICBTb21lIG9mIHRoZSB0ZXN0cyBm
b3IgSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmFkZCgpIGFzc3VtZWQgaXQgc2hvdWxkIHRocm93IGZv
cgorICAgICAgICBJbmZpbml0aWVzIGFuZCBOYU5zLCBidXQgdGhpcyBpcyBub3Qgd2hhdCB0aGUg
RE9NK1dlYklETCBzcGVjcyBzYXkuIChGaXJlZm94IGRvZXNuJ3QgdGhyb3cKKyAgICAgICAgc28g
dGhpcyBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYSB3ZWItY29tcGF0IGlzc3VlLikgVGhpcyB1cGRh
dGVzIHRoZSB0ZXN0cy9leHBlY3RhdGlvbnMgc28KKyAgICAgICAgdGhhdCBWOCBwYXNzZXMuIEpT
QyBleHBlY3RhdGlvbnMgYXJlIEZBSUwgaW4gYSBmZXcgcGxhY2VzIHNpbmNlIGl0IHN0aWxsIGlu
Y29ycmVjdGx5IHRocm93cworICAgICAgICBvbiBJbmZpbml0eS9OYU4gLT4gaW50MzIgY29udmVy
c2lvbiAoZXhpc3RpbmcgdGVzdHMpIGFuZCBkb2VzIG5vdCBpbXBsZW1lbnQgRW5mb3JjZVJhbmdl
CisgICAgICAgIChuZXcgdGVzdHMpLgorCisgICAgICAgIFRuZSBub24tbnVtZXJpYy12YWx1ZXMt
bnVtZXJpYy1wYXJhbWV0ZXJzIHRlc3Qgd2FzIGFsc28gYnJva2VuIGZvciBOYU4gdGVzdGluZywg
cmVwb3J0aW5nCisgICAgICAgIGluY29ycmVjdCByZXN1bHRzIHdoaWNoIGhpZCBzb21lIG9mIHRo
aXMgYmVoYXZpb3IuCisKKyAgICAgICAgKiBmYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVt
ZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dDogRmFpbGluZyBiZWhhdmlvciBmb3IgSlNDLgor
ICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJp
Yy1wYXJhbWV0ZXJzLmpzOiBIVE1MT3B0aW9uc0NvbGxlY3Rpb24uYWRkKCkKKyAgICAgICAgc2hv
dWxkIG5vdCB0aHJvdyBvbiBOYU5zL0luZmluaXRpZXMuCisgICAgICAgICogZmFzdC9qcy9zY3Jp
cHQtdGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzOiBEaXR0by4KKyAgICAgICAgKiBmYXN0L2pz
L3NlbGVjdC1vcHRpb25zLWFkZC1leHBlY3RlZC50eHQ6IEZhaWxpbmcgYmVoYXZpb3IgZm9yIEpT
Qy4KKyAgICAgICAgKiBmYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0OiBE
aXR0by4KKyAgICAgICAgKiBmYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbDogQWRkZWQg
dGVzdCBjYXNlcyBmb3IgW0VuZm9yY2VSYW5nZV0KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVk
LnR4dDogQWRkZWQgLSBwYXNzaW5nIGJlaGF2aW9yIGZvciBWOC4KKyAgICAgICAgKiBwbGF0Zm9y
bS9jaHJvbWl1bS9mYXN0L2pzL3NlbGVjdC1vcHRpb25zLWFkZC1leHBlY3RlZC50eHQ6IERpdHRv
LgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGlu
Zy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZl
cnNpb24tYmFkLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0OiBBZGRlZCBub24tZmluaXRlIHRlc3Qg
Y2FzZXMuCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24t
YmFkLXBhcmFtZXRlcnMuanM6IERpdHRvLgorCiAyMDEzLTAzLTE1ICBBbmRyZXkgS29zeWFrb3Yg
IDxjYXNlcUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCAtLSByZW1vdmUgdGVz
dCBleHBlY3RhdGlvbnMgZm9yIHRpbWVsaW5lLXJlY2VpdmUtcmVzcG9uc2UtZXZlbnQgYW5kIHJl
bW92ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vbm9uLW51bWVyaWMtdmFsdWVz
LW51bWVyaWMtcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9u
b24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRleCA5
N2JmMWUwNjcxMjM3ZTYwNjMzYzY2ZjBjMTM4OGMxNjc2MTQyMjhmLi40NzEzYzQyN2VmMGQ0Yjdh
ZmQ1MjNjZTdkMTk4OTc5N2RmYjdlZmVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0
ZXJzLWV4cGVjdGVkLnR4dApAQCAtMjgsNyArMjgsNyBAQCBQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J2RvY3VtZW50LmJvZHkuc2Nyb2xsVG9wID0geCcpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFT
UyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5pbWFnZXMuaXRlbSh4KScpIGlzICdhbnkgdHlw
ZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJpbnB1dCIpLnNldFNlbGVjdGlvblJhbmdlKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CiBQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iiku
c2V0U2VsZWN0aW9uUmFuZ2UoMCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKLVBBU1Mgbm9u
TnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpLCB4KScpIGlzICdudW1iZXIgb3IgbnVsbCBhbGxvd2Vk
IChvciBvbWl0dGVkLCBidXQgbm90IGluZmluaXRlKScKK0ZBSUwgbm9uTnVtZXJpY1BvbGljeSgn
Y3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
Im9wdGlvbiIpLCB4KScpIHNob3VsZCBiZSBhbnkgdHlwZSBhbGxvd2VkLiBXYXMgbWl4ZWQuCiBQ
QVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLnJlbW92
ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwogUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVh
dGVIVE1MU2VsZWN0RWxlbWVudCgpLnJlbW92ZSh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwog
UEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MU2VsZWN0RWxlbWVudCgpLml0ZW0oeCkn
KSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L3NjcmlwdC10ZXN0cy9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLmpzIGIv
TGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1l
cmljLXBhcmFtZXRlcnMuanMKaW5kZXggMmU3MDA2YzVhOWYyZDQ5MjIxZWJmMzQyOTk0MDNhMThm
MGJmOWE2ZC4uNThiZWQxNjgwM2ZlNzhhMTU3ODNjNzIwYWZiNDU0M2VmOGUzZjg1NyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL25vbi1udW1lcmljLXZhbHVl
cy1udW1lcmljLXBhcmFtZXRlcnMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0
LXRlc3RzL25vbi1udW1lcmljLXZhbHVlcy1udW1lcmljLXBhcmFtZXRlcnMuanMKQEAgLTY0LDcg
KzY0LDcgQEAgZnVuY3Rpb24gbm9uTnVtZXJpY1BvbGljeSh0ZW1wbGF0ZSkKICAgICB0cnkgewog
ICAgICAgICBldmFsKHRlbXBsYXRlKTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIE5hTkFs
bG93ZWQgPSAwOworICAgICAgICBuYW5BbGxvd2VkID0gMDsKICAgICB9CiAKICAgICB2YXIgb21p
dEFsbG93ZWQgPSAtMTsgLy8gbWVhbnMgIm5vdCBhcHBsaWNhYmxlIgpAQCAtMjQ0LDcgKzI0NCw3
IEBAIHNob3VsZEJlKCJub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwi
aW5wdXRcIikuc2V0U2VsZWN0aW9uUmFuZ2UoCiAKIC8vIEhUTUxPcHRpb25zQ29sbGVjdGlvbgog
Ci1zaG91bGRCZSgibm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9u
KCkuYWRkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJvcHRpb25cIiksIHgpJykiLCAiJ251bWJl
ciBvciBudWxsIGFsbG93ZWQgKG9yIG9taXR0ZWQsIGJ1dCBub3QgaW5maW5pdGUpJyIpOworc2hv
dWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFk
ZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwib3B0aW9uXCIpLCB4KScpIiwgIidhbnkgdHlwZSBh
bGxvd2VkJyIpOwogc2hvdWxkQmUoIm5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25z
Q29sbGVjdGlvbigpLnJlbW92ZSh4KScpIiwgIidhbnkgdHlwZSBhbGxvd2VkJyIpOwogCiAvLyBI
VE1MU2VsZWN0RWxlbWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQt
dGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQt
dGVzdHMvc2VsZWN0LW9wdGlvbnMtYWRkLmpzCmluZGV4IGEzNThjZWE3ZWJjNjBlNWQ1Zjk1NjFi
ZjgxNmY2ZTQ0MDFkYjdlMTguLmFhY2Y5NGQ2MTEzYmM3MDc4ZWIyMDg2OTg1N2EyZWZiMjhiMmZk
ZTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvc2NyaXB0LXRlc3RzL3NlbGVjdC1v
cHRpb25zLWFkZC5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3NjcmlwdC10ZXN0cy9zZWxl
Y3Qtb3B0aW9ucy1hZGQuanMKQEAgLTI0NCw4NCArMjQ0LDg0IEBAIGRlYnVnKCIiKTsKIAogZGVi
dWcoIjIuOSBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC1JbmZpbml0eSIpOwogb3B0aW9uMiA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoIk9QVElPTiIpOwotc2hvdWxkVGhyb3coInNlbGVjdDIub3B0
aW9ucy5hZGQob3B0aW9uMiwgLTEvMCkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVu
Z3RoIiwgIjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hv
dWxkTm90VGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgLTEvMCkiKTsKK3Nob3Vs
ZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjgiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNl
bGVjdGVkSW5kZXgiLCAiMiIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xMCBBZGQgYW4gT3B0
aW9uIGF0IGluZGV4IE5hTiIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIk9Q
VElPTiIpOwotc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMC8wKSIp
Owotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNl
bGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGROb3RUaHJvdygic2VsZWN0Mi5vcHRp
b25zLmFkZChvcHRpb24yLCAwLzApIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCIsICI5Iik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjMiKTsKIGRlYnVn
KCIiKTsKIAogZGVidWcoIjIuMTEgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBJbmZpbml0eSIpOwog
b3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIk9QVElPTiIpOwotc2hvdWxkVGhyb3co
InNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMS8wKSIpOwotc2hvdWxkQmUoInNlbGVjdDIu
b3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIs
ICIxIik7CitzaG91bGROb3RUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzAp
Iik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUo
InNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjEy
IEFkZCBhIG5vbi1PcHRpb24gZWxlbWVudCIpOwogb3B0aW9uMiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoIkRJViIpOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwg
MSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsKLXNob3VsZEJl
KCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVjdDIub3B0aW9u
cy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiNCIp
OwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xMyBBZGQgYSBub24tZWxlbWVudCAoc3RyaW5nKSIp
Owogb3B0aW9uMiA9ICJvIjsKIHNob3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlv
bjIsIDEpIik7Ci1zaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91
bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9w
dGlvbnMubGVuZ3RoIiwgIjEwIik7CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4Iiwg
IjQiKTsKIGRlYnVnKCIiKTsKIAogZGVidWcoIjIuMTQgQWRkIGEgbm9uLWVsZW1lbnQgKG51bWJl
cikiKTsKIG9wdGlvbjIgPSAzLjE0Owogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5hZGQo
b3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjciKTsK
LXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNlbGVj
dDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5k
ZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNSBBZGQgYSBub24tZWxlbWVudCAo
Ym9vbGVhbikiKTsKIG9wdGlvbjIgPSB0cnVlOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9u
cy5hZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwg
IjciKTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVj
dGVkSW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNiBBZGQgdW5kZWZpbmVk
Iik7CiBvcHRpb24yID0gdW5kZWZpbmVkOwogc2hvdWxkVGhyb3coInNlbGVjdDIub3B0aW9ucy5h
ZGQob3B0aW9uMiwgMSkiKTsKLXNob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjci
KTsKLXNob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVkSW5kZXgiLCAiMSIpOworc2hvdWxkQmUoInNl
bGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiMTAiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLnNlbGVjdGVk
SW5kZXgiLCAiNCIpOwogZGVidWcoIiIpOwogCiBkZWJ1ZygiMi4xNyBBZGQgbnVsbCIpOwogb3B0
aW9uMiA9IG51bGw7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
KSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUo
InNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7
CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0eSIpOwogb3B0
aW9uMiA9IC0xLzA7CiBzaG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
KSIpOwotc2hvdWxkQmUoInNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUo
InNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCIsICIxMCIpOworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7
CiBkZWJ1ZygiIik7CiAKIGRlYnVnKCIyLjE5IEFkZCBOYU4iKTsKIG9wdGlvbjIgPSAwLzA7CiBz
aG91bGRUaHJvdygic2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxKSIpOwotc2hvdWxkQmUo
InNlbGVjdDIub3B0aW9ucy5sZW5ndGgiLCAiNyIpOwotc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0
ZWRJbmRleCIsICIxIik7CitzaG91bGRCZSgic2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICIxMCIp
Oworc2hvdWxkQmUoInNlbGVjdDIuc2VsZWN0ZWRJbmRleCIsICI0Iik7CiBkZWJ1ZygiIik7CiAK
IGRlYnVnKCIyLjIwIEFkZCBwb3NpdGl2ZSBpbmZpbml0eSIpOwogb3B0aW9uMiA9IDEvMDsKIHNo
b3VsZFRocm93KCJzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIik7Ci1zaG91bGRCZSgi
c2VsZWN0Mi5vcHRpb25zLmxlbmd0aCIsICI3Iik7Ci1zaG91bGRCZSgic2VsZWN0Mi5zZWxlY3Rl
ZEluZGV4IiwgIjEiKTsKK3Nob3VsZEJlKCJzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIiwgIjEwIik7
CitzaG91bGRCZSgic2VsZWN0Mi5zZWxlY3RlZEluZGV4IiwgIjQiKTsKIGRlYnVnKCIiKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvanMvc2VsZWN0LW9wdGlvbnMtYWRkLWV4cGVjdGVkLnR4
dAppbmRleCA3YTc3Nzc4MmU1NzYzMGY3NTlmMDA0MzM1NTIxYWExY2UwMGJkOWIyLi4zMzA1NmZm
YTBiMDlmYWQ3NDRhM2FlMDNlNDBlNjdkY2Q1Njc5MTNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2pzL3NlbGVjdC1vcHRpb25zLWFkZC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0CkBAIC0xNjMsNjQgKzE2
Myw2NCBAQCBQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwogUEFTUyBzZWxlY3QyLnNl
bGVjdGVkSW5kZXggaXMgMQogCiAyLjkgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCAtSW5maW5pdHkK
LVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAtMS8wKSB0aHJldyBleGNlcHRpb24g
RXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3Qy
Lm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZB
SUwgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAtMS8wKSBzaG91bGQgbm90IHRocm93IGV4
Y2VwdGlvbi4gVGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4
Y2VwdGlvbiAxNy4KK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgOC4gV2Fz
IDcuCitGQUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgMi4gV2FzIDEuCiAKIDIu
MTAgQWRkIGFuIE9wdGlvbiBhdCBpbmRleCBOYU4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChv
cHRpb24yLCAwLzApIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERP
TSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBz
ZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlv
bjIsIDAvMCkgc2hvdWxkIG5vdCB0aHJvdyBleGNlcHRpb24uIFRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitGQUlMIHNlbGVjdDIub3B0
aW9ucy5sZW5ndGggc2hvdWxkIGJlIDkuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5k
ZXggc2hvdWxkIGJlIDMuIFdhcyAxLgogCiAyLjExIEFkZCBhbiBPcHRpb24gYXQgaW5kZXggSW5m
aW5pdHkKLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzApIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNl
bGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMg
MQorRkFJTCBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEvMCkgc2hvdWxkIG5vdCB0aHJv
dyBleGNlcHRpb24uIFRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERP
TSBFeGNlcHRpb24gMTcuCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEw
LiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4K
IAogMi4xMiBBZGQgYSBub24tT3B0aW9uIGVsZW1lbnQKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFk
ZChvcHRpb24yLCAxKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBE
T00gRXhjZXB0aW9uIDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mg
c2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBz
aG91bGQgYmUgMTAuIFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJl
IDQuIFdhcyAxLgogCiAyLjEzIEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCiBQQVNTIHNlbGVj
dDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlz
bWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0
aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0
aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZElu
ZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4xNCBBZGQgYSBub24tZWxlbWVudCAobnVtYmVy
KQogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNTIHNlbGVjdDIu
b3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMQorRkFJ
TCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitGQUlMIHNlbGVj
dDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTUgQWRkIGEgbm9uLWVs
ZW1lbnQgKGJvb2xlYW4pCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4K
LVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJ
bmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMg
Ny4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4x
NiBBZGQgdW5kZWZpbmVkCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4K
LVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJ
bmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMg
Ny4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4x
NyBBZGQgbnVsbAogUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4
Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCi1QQVNT
IHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNwotUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXgg
aXMgMQorRkFJTCBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIHNob3VsZCBiZSAxMC4gV2FzIDcuCitG
QUlMIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBzaG91bGQgYmUgNC4gV2FzIDEuCiAKIDIuMTggQWRk
IG5lZ2F0aXZlIGluZmluaXR5CiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkg
dGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAx
Ny4KLVBBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0
ZWRJbmRleCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBX
YXMgNy4KK0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAog
Mi4xOSBBZGQgTmFOCiBQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KLVBB
U1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3Ci1QQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRl
eCBpcyAxCitGQUlMIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggc2hvdWxkIGJlIDEwLiBXYXMgNy4K
K0ZBSUwgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IHNob3VsZCBiZSA0LiBXYXMgMS4KIAogMi4yMCBB
ZGQgcG9zaXRpdmUgaW5maW5pdHkKIFBBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAx
KSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9u
IDE3LgotUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDcKLVBBU1Mgc2VsZWN0Mi5zZWxl
Y3RlZEluZGV4IGlzIDEKK0ZBSUwgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBzaG91bGQgYmUgMTAu
IFdhcyA3LgorRkFJTCBzZWxlY3QyLnNlbGVjdGVkSW5kZXggc2hvdWxkIGJlIDQuIFdhcyAxLgog
CiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CmluZGV4IDViMmE4Y2Yx
NGQ0ZTZkZWUwYWI3NDlmYThmY2Y4MTAzOWE3OGQwZDguLjY4NjA2M2RjMmExZjFkOGYzMjMwOTBi
OWZhN2I5YzE1YjRhZDVjMjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvd2ViaWRs
LXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJp
ZGwtdHlwZS1tYXBwaW5nLWV4cGVjdGVkLnR4dApAQCAtNjksMTMgKzY5LDc4IEBAIGNvbnZlcnRl
ci50ZXN0TG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRl
ci50ZXN0TG9uZyA9ICcnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEKIGNvbnZlcnRlci50
ZXN0TG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIu
dGVzdExvbmcgPSBudWxsCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCiBjb252ZXJ0ZXIu
dGVzdExvbmcgPSB1bmRlZmluZWQKIFBBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKLVBBU1Mg
Y29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7
fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgPSB7dmFs
dWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0gdGhyZXcgZXhjZXB0
aW9uIEVycm9yOiBjdXN0b20uCisKK1BBU1MgJ3Rlc3RFbmZvcmNlUmFuZ2VMb25nJyBpbiBjb252
ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAw
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0YK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4RkYKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
ID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0weDgxCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDgw
MDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHhGRkZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAtMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAxCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyBpcyAweDdGRkZGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyA9IDB4ODAwMDAwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDIxNDc0ODM2
NDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRkZGRkYgc2hv
dWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDQyOTQ5NjcyOTUuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgaXMgLTB4ODAwMDAwMDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0yMTQ3NDgz
NjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweERDQkE5ODc2NTQz
MjEwIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyA2MjEyOTY1ODg1OTM2ODk4MC4KK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gTnVtYmVyLk1BWF9WQUxVRSBzaG91
bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24u
IFdhcyAtMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDguCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMS45OQorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gLTEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IC0xCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IEluZmluaXR5IHNob3Vs
ZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBJbmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdh
cyAtSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE5hTiBz
aG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgTmFOLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
ZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJ2Fi
Yycgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIGFiYy4KK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
IGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdW5kZWZpbmVkIHNo
b3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyB1bmRlZmluZWQuCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9y
KCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KIAogUEFTUyAndGVz
dFVuc2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCkBAIC0xNDEsMTMgKzIwNiw3
MyBAQCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnJwogUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9ICcxJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAxCiBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gbnVsbAogUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IHVu
ZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCi1QQVNTIGNvbnZl
cnRlci50ZXN0VW5zaWduZWRMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJy
b3I7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IC0xIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS4K
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IGlzIDB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHhGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGCitGQUlM
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAgc2hvdWxkIHRo
cm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gLTB4ODEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0x
MjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4N0ZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkYKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgLTMyNzY4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IC0weDgwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0zMjc2OS4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwMDAwMAorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4RkZGRkZGRkYKK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMCBzaG91bGQgdGhyb3cg
YW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2NDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlv
bi4gV2FzIC0yMTQ3NDgzNjQ5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDB4RENCQTk4NzY1NDMyMTAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IDYyMTI5NjU4ODU5MzY4OTgwLgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBX
YXMgLTEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmcgaXMgMQorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0x
Ljk5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMS45OS4KK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBJbmZpbml0eSBzaG91bGQgdGhyb3cgYW4g
ZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nID0gLUluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAt
SW5maW5pdHkuCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0g
TmFOIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
ZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9ICcnCitQQVNT
IGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJj
LgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBudWxsCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK0ZBSUwgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFu
IGV4Y2VwdGlvbi4gV2FzIHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSB7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3Vz
dG9tJyk7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBjdXN0b20uCiAKIFBBU1MgJ3Rlc3RMb25n
TG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKIFBBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKQEAgLTE5MywyMyArMzE4LDEwMSBAQCBjb252ZXJ0
ZXIudGVzdExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQogUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQog
UEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
PSBOdW1iZXIuTUFYX1ZBTFVFCitGQUlMIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgc2hvdWxkIGJl
IDAuIFdhcyAtOTIyMzM3MjAzNjg1NDc3NjAwMC4KK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAt
TnVtYmVyLk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAw
LiBXYXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMS45
OQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDEKIGNvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSAtMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID0gSW5maW5pdHkKK0ZBSUwgY29udmVydGVyLnRlc3RMb25nTG9uZyBzaG91
bGQgYmUgMC4gV2FzIC05MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRlc3RMb25nTG9u
ZyA9IC1JbmZpbml0eQorRkFJTCBjb252ZXJ0ZXIudGVzdExvbmdMb25nIHNob3VsZCBiZSAwLiBX
YXMgLTkyMjMzNzIwMzY4NTQ3NzYwMDAuCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTmFOCitQ
QVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9
IGZhbHNlCiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IHRydWUKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCiBjb252ZXJ0
ZXIudGVzdExvbmdMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcg
aXMgMQogY29udmVydGVyLnRlc3RMb25nTG9uZyA9ICdhYmMnCiBQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RMb25nTG9uZyA9IG51bGwKIFBBU1MgY29udmVy
dGVyLnRlc3RMb25nTG9uZyBpcyAwCiBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdW5kZWZpbmVk
CiBQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAotUEFTUyBjb252ZXJ0ZXIudGVzdExv
bmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0gdGhyZXcgZXhj
ZXB0aW9uIEVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVu
Y3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogY3VzdG9tLgorCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZlcnRl
ciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAt
MHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlz
IDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZGRkZG
RkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorRkFJTCBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCBzaG91bGQgdGhy
b3cgYW4gZXhjZXB0aW9uLiBXYXMgNjIxMjk2NTg4NTkzNjg5ODAuCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9u
Z0xvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZUxvbmdMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9
IE51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIDEuNzk3Njkz
MTM0ODYyMzE1N2UrMzA4LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
ID0gLU51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjc5
NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcg
PSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgLTEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IEluZmluaXR5IHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyBJ
bmZpbml0eS4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC1JbmZp
bml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTmFOIHNob3VsZCB0aHJvdyBhbiBleGNl
cHRpb24uIFdhcyBOYU4uCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gZmFs
c2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xv
bmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgPSAnYWJjJyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgYWJjLgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IHVuZGVmaW5lZC4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IHt2
YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IGN1c3RvbS4KIAogUEFTUyAndGVzdFVuc2lnbmVkTG9uZ0xvbmcnIGluIGNv
bnZlcnRlciBpcyB0cnVlCiBQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPT09ICdudW1iZXInIGlzIHRydWUKQEAgLTI1NSwyMyArNDU4LDkzIEBAIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKIFBBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9
IC1OdW1iZXIuTUlOX1ZBTFVFCiBQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUFYX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorRkFJTCBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgc2hvdWxkIGJlIDAuIFdhcyA5MjIzMzcyMDM2ODU0Nzc2MDAwLgogY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMS45OQogUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTEu
OTkKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRkZGRkZGRkZG
RkZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gSW5maW5pdHkKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IC1JbmZpbml0eQorRkFJTCBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
c2hvdWxkIGJlIDAuIFdhcyA5MjIzMzcyMDM2ODU0Nzc2MDAwLgorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBp
cyAwCiBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBmYWxzZQogUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAogY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nID0gdHJ1ZQogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gJycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9ICcxJwor
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMQogY29udmVydGVyLnRlc3RV
bnNpZ25lZExvbmdMb25nID0gJ2FiYycKIFBBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdM
b25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IG51bGwKIFBBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKIGNvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IHVuZGVmaW5lZAogUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcg
aXMgMAotUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5j
dGlvbigpe3Rocm93IG5ldyBFcnJvcjt9fSB0aHJldyBleGNlcHRpb24gRXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cg
bmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKwor
UEFTUyAndGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcnIGluIGNvbnZlcnRlciBpcyB0
cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDAKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdM
b25nID0gLTEgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLgorY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgaXMgMHhGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAtMHg4MCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTEyOC4KK0ZBSUwg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLTB4ODEgc2hvdWxk
IHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xMjkuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nID0gMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5z
aWduZWRMb25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IC0weDgwMDAgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2Fz
IC0zMjc2OC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gLTB4ODAwMSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTMyNzY5LgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgor
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg4MDAwMDAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAw
MDAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhGRkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMg
MHhGRkZGRkZGRgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgPSAtMHg4MDAwMDAwMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLTIxNDc0ODM2
NDguCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC0w
eDgwMDAwMDAxIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAtMjE0NzQ4MzY0OS4KK0ZB
SUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3
NjU0MzIxMCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgNjIxMjk2NTg4NTkzNjg5ODAu
Citjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlO
X1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVy
Lk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xv
bmcgaXMgMAorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
PSBOdW1iZXIuTUFYX1ZBTFVFIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24uIFdhcyAxLjc5NzY5
MzEzNDg2MjMxNTdlKzMwOC4KK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4g
V2FzIC0xLjc5NzY5MzEzNDg2MjMxNTdlKzMwOC4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VV
bnNpZ25lZExvbmdMb25nIGlzIDEKK0ZBSUwgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gLTEuOTkgc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlvbi4gV2FzIC0xLjk5
LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBJbmZp
bml0eSBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgSW5maW5pdHkuCitGQUlMIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IC1JbmZpbml0eSBzaG91bGQg
dGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgLUluZmluaXR5LgorRkFJTCBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBOYU4gc2hvdWxkIHRocm93IGFuIGV4Y2VwdGlv
bi4gV2FzIE5hTi4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9
IGZhbHNlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB0cnVlCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAxCitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICdhYmMnIHNob3VsZCB0aHJvdyBhbiBleGNlcHRpb24u
IFdhcyBhYmMuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSBu
dWxsCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAw
CitGQUlMIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IHVuZGVm
aW5lZCBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uLiBXYXMgdW5kZWZpbmVkLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSB7dmFsdWVPZjpmdW5jdGlv
bigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0gdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBj
dXN0b20uCiAKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9qcy93ZWJpZGwtdHlwZS1tYXBwaW5nLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcuaHRtbAppbmRleCAyMTkxM2JlMGZlODNjMDIx
Nzk0MDlkN2M2NWJmZWNhY2Y0MzcwMDEyLi5kODExZTVjMTRmMWU0YTA2MTcwNzFkYjg0NjI5Y2Qy
MjlkODkyY2UzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1h
cHBpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmcu
aHRtbApAQCAtMzYsMTEgKzM2LDIzIEBAIGZ1bmN0aW9uIHRlc3ROb25OdW1lcmljVG9OdW1lcmlj
KGF0dHJpYnV0ZSkKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgImZhbHNlIiwgIjAiKTsKICAgICBj
b252ZXJ0KGF0dHJpYnV0ZSwgInRydWUiLCAiMSIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAi
JyciLCAiMCIpOworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiJzEnIiwgIjEiKTsKICAgICBjb252
ZXJ0KGF0dHJpYnV0ZSwgIidhYmMnIiwgIjAiKTsKICAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51
bGwiLCAiMCIpOwogICAgIGNvbnZlcnQoYXR0cmlidXRlLCAidW5kZWZpbmVkIiwgIjAiKTsKIH0K
IAorZnVuY3Rpb24gdGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UoYXR0cmlidXRl
KQoreworICAgIGNvbnZlcnQoYXR0cmlidXRlLCAiZmFsc2UiLCAiMCIpOworICAgIGNvbnZlcnQo
YXR0cmlidXRlLCAidHJ1ZSIsICIxIik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInJyIsICIw
Iik7CisgICAgY29udmVydChhdHRyaWJ1dGUsICInMSciLCAiMSIpOworICAgIGNvbnZlcnRUaHJv
d3MoYXR0cmlidXRlLCAiJ2FiYyciKTsKKyAgICBjb252ZXJ0KGF0dHJpYnV0ZSwgIm51bGwiLCAi
MCIpOworICAgIGNvbnZlcnRUaHJvd3MoYXR0cmlidXRlLCAidW5kZWZpbmVkIik7Cit9CisKIHR5
cGUgPSAidGVzdExvbmciOwogdmVyaWZ5QXR0cmlidXRlKHR5cGUpOwogY29udmVydCh0eXBlLCAi
MCIpOwpAQCAtNzIsNyArODQsNDEgQEAgY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOwog
Y29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIk5hTiIsICIw
Iik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKLWNvbnZlcnRUaHJvd3ModHlwZSwg
Int2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7Citjb252ZXJ0VGhyb3dz
KHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0i
KTsKK2RlYnVnKCIiKTsKKwordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlTG9uZyI7Cit2ZXJpZnlB
dHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIp
OworY29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0
eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4
ODAiKTsKK2NvbnZlcnQodHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsK
K2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252
ZXJ0KHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0
KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweDgwMDAwMDAwIik7
Citjb252ZXJ0VGhyb3dzKHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4
MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk51
bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIp
OworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2NvbnZlcnQodHlw
ZSwgIi1OdW1iZXIuTUlOX1ZBTFVFIiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIp
OworY29udmVydCh0eXBlLCAiLTEuOTkiLCAiLTEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIklu
ZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNUb051bWVyaWNFbmZvcmNlUmFuZ2UodHlw
ZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBF
cnJvcignY3VzdG9tJyk7fX0iKTsKIGRlYnVnKCIiKTsKIAogdHlwZSA9ICJ0ZXN0VW5zaWduZWRM
b25nIjsKQEAgLTEwNiw3ICsxNTIsNDEgQEAgY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIp
OwogY29udmVydCh0eXBlLCAiLUluZmluaXR5IiwgIjAiKTsKIGNvbnZlcnQodHlwZSwgIk5hTiIs
ICIwIik7CiB0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKLWNvbnZlcnRUaHJvd3ModHlw
ZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICJ7dmFsdWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7
fX0iKTsKK2RlYnVnKCIiKTsKKwordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
IjsKK3ZlcmlmeUF0dHJpYnV0ZSh0eXBlKTsKK2NvbnZlcnQodHlwZSwgIjAiKTsKK2NvbnZlcnRU
aHJvd3ModHlwZSwgIi0xIik7Citjb252ZXJ0KHR5cGUsICIxIik7Citjb252ZXJ0KHR5cGUsICIw
eDdGIik7Citjb252ZXJ0KHR5cGUsICIweDgwIik7Citjb252ZXJ0KHR5cGUsICIweEZGIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MCIpOworY29udmVydFRocm93cyh0eXBlLCAiLTB4ODEi
KTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRiIpOworY29udmVydCh0eXBlLCAiMHg4MDAwIik7Citj
b252ZXJ0KHR5cGUsICIweEZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDEiKTsKK2NvbnZlcnQodHlwZSwgIjB4N0ZGRkZG
RkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMDAwMDAiKTsKK2NvbnZlcnQodHlwZSwgIjB4RkZG
RkZGRkYiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgwMDAwMDAwIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICItMHg4MDAwMDAwMSIpOworY29udmVydFRocm93cyh0eXBlLCAiMHhEQ0JBOTg3
NjU0MzIxMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIpOworY29u
dmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUi
LCAiMCIpOworY29udmVydCh0eXBlLCAiMS45OSIsICIxIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItMS45OSIpOworY29udmVydFRocm93cyh0eXBlLCAiSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgIi1JbmZpbml0eSIpOworY29udmVydFRocm93cyh0eXBlLCAiTmFOIik7Cit0ZXN0
Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJvd3ModHlw
ZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSIpOwog
ZGVidWcoIiIpOwogCiB0eXBlID0gInRlc3RMb25nTG9uZyI7CkBAIC0xMzIsMTcgKzIxMiw0OSBA
QCBjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMSIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3
NjU0MzIxMCIpOwogY29udmVydCh0eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252
ZXJ0KHR5cGUsICItTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0
ZW50IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIu
TUFYX1ZBTFVFIiwgIjAiKTsKLS8vY29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAi
MCIpOworY29udmVydCh0eXBlLCAiTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5
cGUsICItTnVtYmVyLk1BWF9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEi
KTsKIGNvbnZlcnQodHlwZSwgIi0xLjk5IiwgIi0xIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50
IHJlc3VsdHMgYmV0d2VlbiBWOCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJJbmZpbml0eSIs
ICIwIik7Ci0vL2NvbnZlcnQodHlwZSwgIi1JbmZpbml0eSIsICIwIik7Ci0vL2NvbnZlcnQodHlw
ZSwgIk5hTiIsICIwIik7Citjb252ZXJ0KHR5cGUsICJJbmZpbml0eSIsICIwIik7Citjb252ZXJ0
KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBlLCAiTmFOIiwgIjAiKTsKIHRl
c3ROb25OdW1lcmljVG9OdW1lcmljKHR5cGUpOwotY29udmVydFRocm93cyh0eXBlLCAie3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3I7fX0iKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwg
Int2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSIpOworZGVi
dWcoIiIpOworCit0eXBlID0gInRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyI7Cit2ZXJpZnlBdHRy
aWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0KHR5cGUsICItMSIpOwor
Y29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29udmVydCh0eXBl
LCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydCh0eXBlLCAiLTB4ODAi
KTsKK2NvbnZlcnQodHlwZSwgIi0weDgxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkYiKTsKK2Nv
bnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBlLCAiMHhGRkZGIik7Citjb252ZXJ0
KHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5
cGUsICIweDdGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0
KHR5cGUsICIweEZGRkZGRkZGIik7Citjb252ZXJ0KHR5cGUsICItMHg4MDAwMDAwMCIpOworY29u
dmVydCh0eXBlLCAiLTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4
NzY1NDMyMTAiKTsKK2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29u
dmVydCh0eXBlLCAiLU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBl
LCAiTnVtYmVyLk1BWF9WQUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhf
VkFMVUUiKTsKK2NvbnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydCh0eXBlLCAiLTEu
OTkiLCAiLTEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICItSW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIsICIwIik7
Cit0ZXN0Tm9uTnVtZXJpY1RvTnVtZXJpY0VuZm9yY2VSYW5nZSh0eXBlKTsKK2NvbnZlcnRUaHJv
d3ModHlwZSwgInt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9
fSIpOwogZGVidWcoIiIpOwogCiB0eXBlID0gInRlc3RVbnNpZ25lZExvbmdMb25nIjsKQEAgLTE2
OCwxNyArMjgwLDQ5IEBAIGNvbnZlcnQodHlwZSwgIi0weDgwMDAwMDAxIiwgIjB4RkZGRkZGRkY3
RkZGRkZGRiIpOwogY29udmVydCh0eXBlLCAiMHhEQ0JBOTg3NjU0MzIxMCIpOwogY29udmVydCh0
eXBlLCAiTnVtYmVyLk1JTl9WQUxVRSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1J
Tl9WQUxVRSIsICIwIik7Ci0vLyBGSVhNRTogSW5jb25zaXN0ZW50IHJlc3VsdHMgYmV0d2VlbiBW
OCBhbmQgSlNDLgotLy9jb252ZXJ0KHR5cGUsICJOdW1iZXIuTUFYX1ZBTFVFIiwgIjAiKTsKLS8v
Y29udmVydCh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAi
TnVtYmVyLk1BWF9WQUxVRSIsICIwIik7Citjb252ZXJ0KHR5cGUsICItTnVtYmVyLk1BWF9WQUxV
RSIsICIwIik7CiBjb252ZXJ0KHR5cGUsICIxLjk5IiwgIjEiKTsKIGNvbnZlcnQodHlwZSwgIi0x
Ljk5IiwgIjB4RkZGRkZGRkZGRkZGRkZGRiIpOwotLy8gRklYTUU6IEluY29uc2lzdGVudCByZXN1
bHRzIGJldHdlZW4gVjggYW5kIEpTQy4KLS8vY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIp
OwotLy9jb252ZXJ0KHR5cGUsICItSW5maW5pdHkiLCAiMCIpOwotLy9jb252ZXJ0KHR5cGUsICJO
YU4iLCAiMCIpOworY29udmVydCh0eXBlLCAiSW5maW5pdHkiLCAiMCIpOworY29udmVydCh0eXBl
LCAiLUluZmluaXR5IiwgIjAiKTsKK2NvbnZlcnQodHlwZSwgIk5hTiIsICIwIik7CiB0ZXN0Tm9u
TnVtZXJpY1RvTnVtZXJpYyh0eXBlKTsKLWNvbnZlcnRUaHJvd3ModHlwZSwgInt2YWx1ZU9mOmZ1
bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yO319Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFs
dWVPZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0iKTsKK2RlYnVnKCIi
KTsKKwordHlwZSA9ICJ0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyI7Cit2ZXJpZnlB
dHRyaWJ1dGUodHlwZSk7Citjb252ZXJ0KHR5cGUsICIwIik7Citjb252ZXJ0VGhyb3dzKHR5cGUs
ICItMSIpOworY29udmVydCh0eXBlLCAiMSIpOworY29udmVydCh0eXBlLCAiMHg3RiIpOworY29u
dmVydCh0eXBlLCAiMHg4MCIpOworY29udmVydCh0eXBlLCAiMHhGRiIpOworY29udmVydFRocm93
cyh0eXBlLCAiLTB4ODAiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIi0weDgxIik7Citjb252ZXJ0
KHR5cGUsICIweDdGRkYiKTsKK2NvbnZlcnQodHlwZSwgIjB4ODAwMCIpOworY29udmVydCh0eXBl
LCAiMHhGRkZGIik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwIik7Citjb252ZXJ0VGhy
b3dzKHR5cGUsICItMHg4MDAxIik7Citjb252ZXJ0KHR5cGUsICIweDdGRkZGRkZGIik7Citjb252
ZXJ0KHR5cGUsICIweDgwMDAwMDAwIik7Citjb252ZXJ0KHR5cGUsICIweEZGRkZGRkZGIik7Citj
b252ZXJ0VGhyb3dzKHR5cGUsICItMHg4MDAwMDAwMCIpOworY29udmVydFRocm93cyh0eXBlLCAi
LTB4ODAwMDAwMDEiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIjB4RENCQTk4NzY1NDMyMTAiKTsK
K2NvbnZlcnQodHlwZSwgIk51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydCh0eXBlLCAi
LU51bWJlci5NSU5fVkFMVUUiLCAiMCIpOworY29udmVydFRocm93cyh0eXBlLCAiTnVtYmVyLk1B
WF9WQUxVRSIpOworY29udmVydFRocm93cyh0eXBlLCAiLU51bWJlci5NQVhfVkFMVUUiKTsKK2Nv
bnZlcnQodHlwZSwgIjEuOTkiLCAiMSIpOworY29udmVydFRocm93cyh0eXBlLCAiLTEuOTkiKTsK
K2NvbnZlcnRUaHJvd3ModHlwZSwgIkluZmluaXR5Iik7Citjb252ZXJ0VGhyb3dzKHR5cGUsICIt
SW5maW5pdHkiKTsKK2NvbnZlcnRUaHJvd3ModHlwZSwgIk5hTiIpOwordGVzdE5vbk51bWVyaWNU
b051bWVyaWNFbmZvcmNlUmFuZ2UodHlwZSk7Citjb252ZXJ0VGhyb3dzKHR5cGUsICJ7dmFsdWVP
ZjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcignY3VzdG9tJyk7fX0iKTsKIGRlYnVnKCIiKTsK
IAogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9m
YXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVtZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZG9tL25vbi1udW1lcmljLXZh
bHVlcy1udW1lcmljLXBhcmFtZXRlcnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAxODE5ZmNk
MTYyNTNhNDA4ZDE4ODllZmQ0Y2Q4ODQwMGRkNjhhMzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2RvbS9ub24tbnVtZXJpYy12YWx1ZXMtbnVt
ZXJpYy1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDg1IEBACitUaGlzIHRlc3Rz
IHRoZSBiZWhhdmlvciBvZiBub24tbnVtZXJpYyB2YWx1ZXMgaW4gY29udGV4dHMgd2hlcmUgdGhl
IERPTSBoYXMgYSBudW1lcmljIHBhcmFtZXRlci4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoImEi
KS5zdWJzdHJpbmdEYXRhKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJhIikuc3Vic3RyaW5nRGF0YSgw
LCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1
bWVudC5jcmVhdGVUZXh0Tm9kZSgiYSIpLmluc2VydERhdGEoeCwgImIiKScpIGlzICdhbnkgdHlw
ZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVUZXh0Tm9k
ZSgiYSIpLmRlbGV0ZURhdGEoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9u
TnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoImEiKS5kZWxldGVEYXRhKDAs
IHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3Vt
ZW50LmNyZWF0ZVRleHROb2RlKCJhIikucmVwbGFjZURhdGEoeCwgMCwgImIiKScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVUZXh0
Tm9kZSgiYSIpLnJlcGxhY2VEYXRhKDAsIHgsICJiIiknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NTTWVkaWFSdWxlKCkuaW5zZXJ0UnVsZShy
dWxlVGV4dCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnY3JlYXRlQ1NTTWVkaWFSdWxlKCkuZGVsZXRlUnVsZSh4KScpIGlzICdhbnkgdHlwZSBhbGxv
d2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVDU1NSdWxlTGlzdCgpLml0ZW0oeCkn
KSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NT
U3R5bGVEZWNsYXJhdGlvbigpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlQ1NTU3R5bGVTaGVldCgpLmluc2VydFJ1bGUocnVsZVRl
eHQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Ny
ZWF0ZUNTU1N0eWxlU2hlZXQoKS5kZWxldGVSdWxlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1N0eWxlU2hlZXQoKS5hZGRSdWxlKHNl
bGVjdG9yLCBzdHlsZVRleHQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1N0eWxlU2hlZXQoKS5yZW1vdmVSdWxlKHgpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUNTU1ZhbHVlTGlz
dCgpLml0ZW0oeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludCh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2Vk
JworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KDAsIHgp
JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50
LmJvZHkuc2Nyb2xsQnlMaW5lcyh4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25O
dW1lcmljUG9saWN5KCdkb2N1bWVudC5ib2R5LnNjcm9sbEJ5UGFnZXMoeCknKSBpcyAnYW55IHR5
cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuYm9keS5zY3JvbGxM
ZWZ0ID0geCcpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdk
b2N1bWVudC5ib2R5LnNjcm9sbFRvcCA9IHgnKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuaW1hZ2VzLml0ZW0oeCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
aW5wdXQiKS5zZXRTZWxlY3Rpb25SYW5nZSh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJwor
UEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLnNl
dFNlbGVjdGlvblJhbmdlKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51
bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxPcHRpb25zQ29sbGVjdGlvbigpLmFkZChkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJvcHRpb24iKSwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTE9wdGlvbnNDb2xsZWN0aW9uKCkucmVtb3ZlKHgp
JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhU
TUxTZWxlY3RFbGVtZW50KCkucmVtb3ZlKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNT
IG5vbk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxTZWxlY3RFbGVtZW50KCkuaXRlbSh4KScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdjcmVhdGVIVE1MVGFi
bGVFbGVtZW50KCkuaW5zZXJ0Um93KHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5v
bk51bWVyaWNQb2xpY3koJ2NyZWF0ZUhUTUxUYWJsZUVsZW1lbnQoKS5kZWxldGVSb3coeCknKSBp
cyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRh
YmxlUm93RWxlbWVudCgpLmluc2VydENlbGwoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BB
U1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlUm93RWxlbWVudCgpLmRlbGV0ZUNl
bGwoeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3Jl
YXRlSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQoKS5pbnNlcnRSb3coeCknKSBpcyAnYW55IHR5cGUg
YWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnY3JlYXRlSFRNTFRhYmxlU2VjdGlvbkVs
ZW1lbnQoKS5kZWxldGVSb3coeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVt
ZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGV4dGFyZWEiKS5zZXRTZWxlY3Rp
b25SYW5nZSh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9s
aWN5KCdkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpLnNldFNlbGVjdGlvblJhbmdl
KDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2Rv
Y3VtZW50LmNyZWF0ZUV2ZW50KCJLZXlib2FyZEV2ZW50IikuaW5pdEtleWJvYXJkRXZlbnQoImEi
LCBmYWxzZSwgZmFsc2UsIG51bGwsICJiIiwgeCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2Us
IGZhbHNlKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdj
cmVhdGVNZWRpYUxpc3QoKS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5v
bk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50IikuaW5pdE1v
dXNlRXZlbnQoImEiLCBmYWxzZSwgZmFsc2UsIG51bGwsIHgsIDAsIDAsIDAsIDAsIGZhbHNlLCBm
YWxzZSwgZmFsc2UsIGZhbHNlLCAwLCBudWxsKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFT
UyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiTW91c2VFdmVudCIpLmlu
aXRNb3VzZUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCAwLCB4LCAwLCAwLCAwLCBmYWxz
ZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgMCwgbnVsbCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk1vdXNlRXZlbnQi
KS5pbml0TW91c2VFdmVudCgiYSIsIGZhbHNlLCBmYWxzZSwgbnVsbCwgMCwgMCwgeCwgMCwgMCwg
ZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIDAsIG51bGwpJykgaXMgJ2FueSB0eXBlIGFsbG93
ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2
ZW50IikuaW5pdE1vdXNlRXZlbnQoImEiLCBmYWxzZSwgZmFsc2UsIG51bGwsIDAsIDAsIDAsIHgs
IDAsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAwLCBudWxsKScpIGlzICdhbnkgdHlwZSBh
bGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiTW91
c2VFdmVudCIpLmluaXRNb3VzZUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCAwLCAwLCAw
LCAwLCB4LCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgMCwgbnVsbCknKSBpcyAnYW55IHR5
cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlRXZlbnQo
Ik1vdXNlRXZlbnQiKS5pbml0TW91c2VFdmVudCgiYSIsIGZhbHNlLCBmYWxzZSwgbnVsbCwgMCwg
MCwgMCwgMCwgMCwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHgsIG51bGwpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmJvZHkuYXR0
cmlidXRlcy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQ
b2xpY3koJ2RvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcihkb2N1bWVudCwgeCwgbnVsbCwgZmFs
c2UpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKS5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFs
bG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVJhbmdlKCkuc2V0
U3RhcnQoZG9jdW1lbnQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVy
aWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVJhbmdlKCkuc2V0RW5kKGRvY3VtZW50LCB4KScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVh
dGVSYW5nZSgpLmNvbXBhcmVQb2ludChkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dl
ZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKS5pc1BvaW50
SW5SYW5nZShkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVt
ZXJpY1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuY29sbGFwc2UoZG9jdW1lbnQsIHgpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2dldFNlbGVjdGlvbigpLnNl
dEJhc2VBbmRFeHRlbnQoZG9jdW1lbnQsIHgsIGRvY3VtZW50LCAwKScpIGlzICdhbnkgdHlwZSBh
bGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdnZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5k
RXh0ZW50KGRvY3VtZW50LCAwLCBkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuc2V0UG9zaXRpb24oZG9jdW1l
bnQsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2dl
dFNlbGVjdGlvbigpLmV4dGVuZChkb2N1bWVudCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcK
K1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnZ2V0U2VsZWN0aW9uKCkuZ2V0UmFuZ2VBdCh4KScpIGlz
ICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5zdHls
ZVNoZWV0cy5pdGVtKHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQ
b2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJhIikuc3BsaXRUZXh0KHgpJykgaXMgJ2Fu
eSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ2RvY3VtZW50LmNyZWF0ZVRy
ZWVXYWxrZXIoZG9jdW1lbnQsIHgsIG51bGwsIGZhbHNlKScpIGlzICdhbnkgdHlwZSBhbGxvd2Vk
JworUEFTUyBub25OdW1lcmljUG9saWN5KCdkb2N1bWVudC5jcmVhdGVFdmVudCgiVUlFdmVudCIp
LmluaXRVSUV2ZW50KCJhIiwgZmFsc2UsIGZhbHNlLCBudWxsLCB4KScpIGlzICdhbnkgdHlwZSBh
bGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsQnkoeCwgMCknKSBp
cyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnNjcm9s
bEJ5KDAsIHgpJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3ko
J3dpbmRvdy5zY3JvbGxUbyh4LCAwKScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25O
dW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsVG8oMCwgeCknKSBpcyAnYW55IHR5cGUgYWxsb3dl
ZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnNjcm9sbCh4LCAwKScpIGlzICdhbnkg
dHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9saWN5KCd3aW5kb3cuc2Nyb2xsKDAsIHgp
JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5t
b3ZlQnkoeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGlj
eSgnd2luZG93Lm1vdmVCeSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25O
dW1lcmljUG9saWN5KCd3aW5kb3cubW92ZVRvKHgsIDApJykgaXMgJ2FueSB0eXBlIGFsbG93ZWQn
CitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5tb3ZlVG8oMCwgeCknKSBpcyAnYW55IHR5
cGUgYWxsb3dlZCcKK1BBU1Mgbm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnJlc2l6ZUJ5KHgsIDAp
JykgaXMgJ2FueSB0eXBlIGFsbG93ZWQnCitQQVNTIG5vbk51bWVyaWNQb2xpY3koJ3dpbmRvdy5y
ZXNpemVCeSgwLCB4KScpIGlzICdhbnkgdHlwZSBhbGxvd2VkJworUEFTUyBub25OdW1lcmljUG9s
aWN5KCd3aW5kb3cucmVzaXplVG8oeCwgMCknKSBpcyAnYW55IHR5cGUgYWxsb3dlZCcKK1BBU1Mg
bm9uTnVtZXJpY1BvbGljeSgnd2luZG93LnJlc2l6ZVRvKDAsIHgpJykgaXMgJ2FueSB0eXBlIGFs
bG93ZWQnCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9qcy9zZWxl
Y3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0vZmFzdC9qcy9zZWxlY3Qtb3B0aW9ucy1hZGQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2
ZjFlMjY3OThjNWI3MzQ3Zjc5NTAyZGE5OTc1ODY0NjFjNjNhYzAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3NlbGVjdC1vcHRpb25zLWFk
ZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyMjggQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhlIGJl
aGF2aW9yIG9mIHRoZSBhZGQoKSBtZXRob2Qgb24gdGhlIHNlbGVjdC5vcHRpb25zIG9iamVjdC4K
K0l0IGNvdmVycyBib3RoIHRoZSB0aGUgb25lLWFyZ3VtZW50ICgxLngpIGFuZCB0d28tYXJndW1l
bnQgKDIueCkgc2lnbmF0dXJlcyBvZiB0aGUgYWRkKCkgbWV0aG9kLgorCitPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCisKKworMS4xIEFkZCBPcHRpb24gdG8gZW1wdHkgT3B0aW9ucworUEFTUyBz
ZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDEKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZEluZGV4IGlz
IDAKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QxLm9w
dGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0EnCisKKzEuMiBBZGQgT3B0aW9uIHRvIG5vbi1lbXB0
eSBPcHRpb25zCitQQVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMgorUEFTUyBzZWxlY3Qx
LnNlbGVjdGVkSW5kZXggaXMgMAorUEFTUyBzZWxlY3QxLm9wdGlvbnNbMF0udmFsdWUgaXMgJzEn
CitQQVNTIHNlbGVjdDEub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScKK1BBU1Mgc2VsZWN0
MS5vcHRpb25zWzFdLnZhbHVlIGlzICcyJworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMV0udGV4dENv
bnRlbnQgaXMgJ0InCisKKzEuMyBBZGQgT3B0aW9uIGFmdGVyIHNldHRpbmcgcGFyYW1ldGVycwor
UEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3RlZElu
ZGV4IGlzIDAKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzBdLnZhbHVlIGlzICcxJworUEFTUyBzZWxl
Y3QxLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVjdDEub3B0aW9uc1sx
XS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0MS5vcHRpb25zWzFdLnRleHRDb250ZW50IGlzICdC
JworUEFTUyBzZWxlY3QxLm9wdGlvbnNbMl0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVjdDEub3B0
aW9uc1syXS50ZXh0Q29udGVudCBpcyAnQycKKworMS40IEFkZCBhIG5vbi1PcHRpb24gZWxlbWVu
dAorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJv
cjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0
aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisxLjUg
QWRkIGEgbm9uLWVsZW1lbnQgKHN0cmluZykKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRp
b24xKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0
aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5z
ZWxlY3RlZEluZGV4IGlzIDAKKworMS42IEFkZCBhIG5vbi1lbGVtZW50IChudW1iZXIpCitQQVNT
IHNlbGVjdDEub3B0aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBl
TWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxl
bmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuNyBBZGQgYSBu
b24tZWxlbWVudCAoYm9vbGVhbikKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFkZChvcHRpb24xKSB0
aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00gRXhjZXB0aW9uIDE3
LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2VsZWN0MS5zZWxlY3Rl
ZEluZGV4IGlzIDAKKworMS44IEFkZCB1bmRlZmluZWQKK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmFk
ZChvcHRpb24xKSB0aHJldyBleGNlcHRpb24gRXJyb3I6IFR5cGVNaXNtYXRjaEVycm9yOiBET00g
RXhjZXB0aW9uIDE3LgorUEFTUyBzZWxlY3QxLm9wdGlvbnMubGVuZ3RoIGlzIDMKK1BBU1Mgc2Vs
ZWN0MS5zZWxlY3RlZEluZGV4IGlzIDAKKworMS45IEFkZCBudWxsCitQQVNTIHNlbGVjdDEub3B0
aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJv
cjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5vcHRpb25zLmxlbmd0aCBpcyAzCitQ
QVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEuMTAgQWRkIG5lZ2F0aXZlIGluZmlu
aXR5CitQQVNTIHNlbGVjdDEub3B0aW9ucy5hZGQob3B0aW9uMSkgdGhyZXcgZXhjZXB0aW9uIEVy
cm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0MS5v
cHRpb25zLmxlbmd0aCBpcyAzCitQQVNTIHNlbGVjdDEuc2VsZWN0ZWRJbmRleCBpcyAwCisKKzEu
MTEgQWRkIE5hTgorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRkKG9wdGlvbjEpIHRocmV3IGV4Y2Vw
dGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNl
bGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxlY3QxLnNlbGVjdGVkSW5kZXggaXMg
MAorCisxLjEyIEFkZCBwb3NpdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QxLm9wdGlvbnMuYWRk
KG9wdGlvbjEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBF
eGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDEub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxl
Y3QxLnNlbGVjdGVkSW5kZXggaXMgMAorCisyLjEgQWRkIE9wdGlvbiB0byBlbXB0eSBPcHRpb25z
CitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMQorUEFTUyBzZWxlY3QyLnNlbGVjdGVk
SW5kZXggaXMgMAorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzEnCitQQVNTIHNl
bGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScKKworMi4yIEFkZCBPcHRpb24gYWZ0
ZXIgc2V0dGluZyBwYXJhbWV0ZXJzCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMgor
UEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMAorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0u
dmFsdWUgaXMgJzEnCitQQVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnQScK
K1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnZhbHVlIGlzICcyJworUEFTUyBzZWxlY3QyLm9wdGlv
bnNbMV0udGV4dENvbnRlbnQgaXMgJ0InCisKKzIuMyBJbnNlcnQgT3B0aW9uIGF0IGJlZ2lubmlu
ZyBvZiBPcHRpb25zCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMworUEFTUyBzZWxl
Y3QyLnNlbGVjdGVkSW5kZXggaXMgMQorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMg
JzAnCitQQVNTIHNlbGVjdDIub3B0aW9uc1swXS50ZXh0Q29udGVudCBpcyAnWicKK1BBU1Mgc2Vs
ZWN0Mi5vcHRpb25zWzFdLnZhbHVlIGlzICcxJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udGV4
dENvbnRlbnQgaXMgJ0EnCitQQVNTIHNlbGVjdDIub3B0aW9uc1syXS52YWx1ZSBpcyAnMicKK1BB
U1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdCJworCisyLjQgSW5zZXJ0IE9w
dGlvbiBpbiBtaWRkbGUgb2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlz
IDQKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
WzBdLnZhbHVlIGlzICcwJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMg
J1onCitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zWzFdLnRleHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFs
dWUgaXMgJzEuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdBLjUn
CitQQVNTIHNlbGVjdDIub3B0aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRp
b25zWzNdLnRleHRDb250ZW50IGlzICdCJworCisyLjUgSW5zZXJ0IE9wdGlvbiBhdCBlbmQgb2Yg
T3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDUKK1BBU1Mgc2VsZWN0Mi5z
ZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBdLnZhbHVlIGlzICcwJwor
UEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1onCitQQVNTIHNlbGVjdDIu
b3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnRleHRDb250
ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUgaXMgJzEuNScKK1BBU1Mg
c2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQQVNTIHNlbGVjdDIub3B0
aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnRleHRDb250ZW50
IGlzICdCJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNF0udmFsdWUgaXMgJzMnCitQQVNTIHNlbGVj
dDIub3B0aW9uc1s0XS50ZXh0Q29udGVudCBpcyAnQycKKworMi42IEluc2VydCBPcHRpb24gYmV5
b25kIHRoZSBlbmQgb2YgT3B0aW9ucworUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDYK
K1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDEKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzBd
LnZhbHVlIGlzICcwJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udGV4dENvbnRlbnQgaXMgJ1on
CitQQVNTIHNlbGVjdDIub3B0aW9uc1sxXS52YWx1ZSBpcyAnMScKK1BBU1Mgc2VsZWN0Mi5vcHRp
b25zWzFdLnRleHRDb250ZW50IGlzICdBJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMl0udmFsdWUg
aXMgJzEuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzJdLnRleHRDb250ZW50IGlzICdBLjUnCitQ
QVNTIHNlbGVjdDIub3B0aW9uc1szXS52YWx1ZSBpcyAnMicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
WzNdLnRleHRDb250ZW50IGlzICdCJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNF0udmFsdWUgaXMg
JzMnCitQQVNTIHNlbGVjdDIub3B0aW9uc1s0XS50ZXh0Q29udGVudCBpcyAnQycKK1BBU1Mgc2Vs
ZWN0Mi5vcHRpb25zWzVdLnZhbHVlIGlzICc0JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNV0udGV4
dENvbnRlbnQgaXMgJ0QnCisKKzIuNyBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC0xCitQQVNTIHNl
bGVjdDIub3B0aW9ucy5sZW5ndGggaXMgNworUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMg
MQorUEFTUyBzZWxlY3QyLm9wdGlvbnNbMF0udmFsdWUgaXMgJzAnCitQQVNTIHNlbGVjdDIub3B0
aW9uc1swXS50ZXh0Q29udGVudCBpcyAnWicKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzFdLnZhbHVl
IGlzICcxJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbMV0udGV4dENvbnRlbnQgaXMgJ0EnCitQQVNT
IHNlbGVjdDIub3B0aW9uc1syXS52YWx1ZSBpcyAnMS41JworUEFTUyBzZWxlY3QyLm9wdGlvbnNb
Ml0udGV4dENvbnRlbnQgaXMgJ0EuNScKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzNdLnZhbHVlIGlz
ICcyJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbM10udGV4dENvbnRlbnQgaXMgJ0InCitQQVNTIHNl
bGVjdDIub3B0aW9uc1s0XS52YWx1ZSBpcyAnMycKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zWzRdLnRl
eHRDb250ZW50IGlzICdDJworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNV0udmFsdWUgaXMgJzQnCitQ
QVNTIHNlbGVjdDIub3B0aW9uc1s1XS50ZXh0Q29udGVudCBpcyAnRCcKK1BBU1Mgc2VsZWN0Mi5v
cHRpb25zWzZdLnZhbHVlIGlzICc1JworUEFTUyBzZWxlY3QyLm9wdGlvbnNbNl0udGV4dENvbnRl
bnQgaXMgJ0UnCisKKzIuOCBBZGQgYW4gT3B0aW9uIGF0IGluZGV4IC0yCitQQVNTIHNlbGVjdDIu
b3B0aW9ucy5hZGQob3B0aW9uMiwgLTIpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogSW5kZXhTaXpl
RXJyb3I6IERPTSBFeGNlcHRpb24gMS4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyA3
CitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyAxCisKKzIuOSBBZGQgYW4gT3B0aW9uIGF0
IGluZGV4IC1JbmZpbml0eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIC0xLzAp
IGRpZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlz
IDgKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDIKKworMi4xMCBBZGQgYW4gT3B0aW9u
IGF0IGluZGV4IE5hTgorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDAvMCkgZGlk
IG5vdCB0aHJvdyBleGNlcHRpb24uCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgOQor
UEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgMworCisyLjExIEFkZCBhbiBPcHRpb24gYXQg
aW5kZXggSW5maW5pdHkKK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmFkZChvcHRpb24yLCAxLzApIGRp
ZCBub3QgdGhyb3cgZXhjZXB0aW9uLgorUEFTUyBzZWxlY3QyLm9wdGlvbnMubGVuZ3RoIGlzIDEw
CitQQVNTIHNlbGVjdDIuc2VsZWN0ZWRJbmRleCBpcyA0CisKKzIuMTIgQWRkIGEgbm9uLU9wdGlv
biBlbGVtZW50CitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhj
ZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mg
c2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXgg
aXMgNAorCisyLjEzIEFkZCBhIG5vbi1lbGVtZW50IChzdHJpbmcpCitQQVNTIHNlbGVjdDIub3B0
aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hF
cnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAx
MAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjE0IEFkZCBhIG5vbi1lbGVt
ZW50IChudW1iZXIpCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcg
ZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BB
U1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5k
ZXggaXMgNAorCisyLjE1IEFkZCBhIG5vbi1lbGVtZW50IChib29sZWFuKQorUEFTUyBzZWxlY3Qy
Lm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21h
dGNoRXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGgg
aXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xNiBBZGQgdW5kZWZp
bmVkCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9u
IEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0
Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAor
CisyLjE3IEFkZCBudWxsCitQQVNTIHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhy
ZXcgZXhjZXB0aW9uIEVycm9yOiBUeXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4K
K1BBU1Mgc2VsZWN0Mi5vcHRpb25zLmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVk
SW5kZXggaXMgNAorCisyLjE4IEFkZCBuZWdhdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QyLm9w
dGlvbnMuYWRkKG9wdGlvbjIsIDEpIHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNo
RXJyb3I6IERPTSBFeGNlcHRpb24gMTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMg
MTAKK1BBU1Mgc2VsZWN0Mi5zZWxlY3RlZEluZGV4IGlzIDQKKworMi4xOSBBZGQgTmFOCitQQVNT
IHNlbGVjdDIub3B0aW9ucy5hZGQob3B0aW9uMiwgMSkgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBU
eXBlTWlzbWF0Y2hFcnJvcjogRE9NIEV4Y2VwdGlvbiAxNy4KK1BBU1Mgc2VsZWN0Mi5vcHRpb25z
Lmxlbmd0aCBpcyAxMAorUEFTUyBzZWxlY3QyLnNlbGVjdGVkSW5kZXggaXMgNAorCisyLjIwIEFk
ZCBwb3NpdGl2ZSBpbmZpbml0eQorUEFTUyBzZWxlY3QyLm9wdGlvbnMuYWRkKG9wdGlvbjIsIDEp
IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogVHlwZU1pc21hdGNoRXJyb3I6IERPTSBFeGNlcHRpb24g
MTcuCitQQVNTIHNlbGVjdDIub3B0aW9ucy5sZW5ndGggaXMgMTAKK1BBU1Mgc2VsZWN0Mi5zZWxl
Y3RlZEluZGV4IGlzIDQKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zh
c3QvanMvd2ViaWRsLXR5cGUtbWFwcGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3dlYmlkbC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmFlYzBhYzFjN2I2MWQ4ZjI5ODRjZTUwMTBkYjlkN2IzMzU3ZDRkYzAKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2pzL3dlYmlk
bC10eXBlLW1hcHBpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTUyIEBACitFeGVyY2lzZSBX
ZWJJREwgdHlwZSBjb252ZXJzaW9ucy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K2NvbnZlcnRlciA9IHdpbmRvdy5pbnRlcm5hbHMudHlwZUNvbnZlcnNpb25zKCkKKworUEFTUyAn
dGVzdExvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVz
dExvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0xCitQQVNTIGNv
bnZlcnRlci50ZXN0TG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RMb25nID0gMQorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nID0gMHg3RgorUEFTUyBjb252
ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RMb25nID0gMHg4MAorUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RMb25nID0gMHhGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHhGRgorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAt
MHg4MQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTB4ODEKK2NvbnZlcnRlci50ZXN0TG9u
ZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIu
dGVzdExvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4ODAwMAorY29u
dmVydGVyLnRlc3RMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAweEZG
RkYKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIC0weDgwMDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9IDB4N0ZGRkZGRkYKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZyA9
IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIC0weDgwMDAwMDAwCitjb252
ZXJ0ZXIudGVzdExvbmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAt
MQorY29udmVydGVyLnRlc3RMb25nID0gLTB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RM
b25nIGlzIC0weDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdExvbmcgPSAtMHg4MDAwMDAwMQorUEFT
UyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RMb25nID0g
MHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgMHg3NjU0MzIxMAor
Y29udmVydGVyLnRlc3RMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVz
dExvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nID0gLU51bWJlci5NQVhf
VkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9
IC1OdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitjb252ZXJ0
ZXIudGVzdExvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAxCitjb252ZXJ0
ZXIudGVzdExvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMgLTEKK2NvbnZl
cnRlci50ZXN0TG9uZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdExvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmcgaXMg
MAorY29udmVydGVyLnRlc3RMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDAKK2NvbnZlcnRlci50ZXN0TG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlz
IDEKK2NvbnZlcnRlci50ZXN0TG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RMb25nIGlzIDEK
K2NvbnZlcnRlci50ZXN0TG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdExvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZyBpcyAw
Citjb252ZXJ0ZXIudGVzdExvbmcgPSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RMb25n
IGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJv
dyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9tLgor
CitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1Mg
dHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1
ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
LTEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIC0xCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDdGCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweDdGCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweEZGCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMg
LTB4ODAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgxCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBp
cyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IDB4ODAwMAorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nIGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTB4ODAwMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZUxvbmcgaXMgLTB4ODAwMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0g
MHg3RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgMHg3RkZG
RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAweDgwMDAwMDAwIHRo
cmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlTG9uZyA9IDB4RkZGRkZGRkYgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC0weDgwMDAwMDAw
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAtMHg4MDAwMDAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMHg4MDAwMDAwMSB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZUxvbmcgPSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5N
QVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nID0gLU51bWJlci5NQVhfVkFMVUUgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IC1OdW1iZXIuTUlOX1ZB
TFVFCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAxLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgPSAtMS45OQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcgaXMgLTEKK1BBU1MgY29udmVydGVyLnRl
c3RFbmZvcmNlUmFuZ2VMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gLUluZmlu
aXR5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IE5hTiB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBU
eXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gZmFsc2UKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZyA9IHRydWUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlz
IDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmcg
PSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gJ2FiYycgdGhyZXcgZXhjZXB0aW9uIFR5cGVF
cnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IG51bGwK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nIGlzIDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nID0gdW5kZWZpbmVkIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZyA9IHt2
YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBleGNl
cHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdFVuc2lnbmVkTG9uZycgaW4gY29udmVy
dGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID09PSAn
bnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
PSAtMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRkZGCitjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0g
MHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDgwCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
aXMgMHhGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkZGRjgwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4RkZGRkZG
N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAw
eDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gLTB4ODAwMAorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweEZGRkY4MDAwCitjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcg
aXMgMHhGRkZGN0ZGRgorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAweDdGRkZGRkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVk
TG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IDB4RkZGRkZG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IC0w
eDgwMDAwMDAxCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gMHhEQ0JBOTg3NjU0MzIxMAorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAweDc2NTQzMjEwCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9IE51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQ
QVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExv
bmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQor
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29u
dmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAtMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2ln
bmVkTG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9IEluZmlu
aXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nID0gLUluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
IGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50
ZXN0VW5zaWduZWRMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gZmFsc2UK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nIGlzIDEKK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nID0gJycKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25l
ZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSAn
YWJjJworUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgaXMg
MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmcgPSB1bmRlZmluZWQKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZyA9
IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9fSB0aHJldyBl
eGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZycgaW4gY29udmVydGVyIGlzIHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IC0xIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDEKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdl
VW5zaWduZWRMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBp
cyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkYKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gLTB4ODEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBl
cnJvci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg3RkZGCitQ
QVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRgorY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDgwMDAKK1BBU1MgY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtMHg4MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6
IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
ID0gLTB4ODAwMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gMHg4MDAwMDAwMAorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMHhGRkZGRkZGRgorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IC0weDgwMDAwMDAwIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlVW5zaWduZWRMb25nID0gLTB4ODAwMDAwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
VHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcg
PSAweERDQkE5ODc2NTQzMjEwIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3Iu
CitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gTnVtYmVyLk1B
WF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nIGlzIDAKK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAtTnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVu
c2lnbmVkTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9
IC0xLjk5IHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0
aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmcgPSAtSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSBO
YU4gdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK2NvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmcgPSB0cnVlCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRM
b25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nID0gJycKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgPSAnMScKK1BBU1MgY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9ICdhYmMnIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUg
ZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IG51bGwKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmcgaXMgMAorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZyA9IHVuZGVmaW5lZCB0aHJldyBleGNl
cHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VS
YW5nZVVuc2lnbmVkTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdj
dXN0b20nKTt9fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdExv
bmdMb25nJyBpbiBjb252ZXJ0ZXIgaXMgdHJ1ZQorUEFTUyB0eXBlb2YgY29udmVydGVyLnRlc3RM
b25nTG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDAK
K1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25n
ID0gLTEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMQorY29udmVydGVyLnRlc3RM
b25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIu
dGVzdExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4N0YK
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDgwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVy
LnRlc3RMb25nTG9uZyBpcyAweEZGCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MAorY29udmVydGVyLnRlc3RMb25nTG9u
ZyA9IC0weDgxCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODEKK2NvbnZlcnRl
ci50ZXN0TG9uZ0xvbmcgPSAweDdGRkYKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAw
eDdGRkYKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAweDgwMDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweEZGRkYKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSAtMHg4MDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTB4ODAwMAorY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IC0weDgwMDEKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9u
ZyBpcyAtMHg4MDAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gMHg3RkZGRkZGRgorUEFTUyBj
b252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDB4N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHg4MDAwMDAw
MAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAweEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLTB4ODAw
MDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAtMHg4MDAwMDAwMAorY29udmVy
dGVyLnRlc3RMb25nTG9uZyA9IC0weDgwMDAwMDAxCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xv
bmcgaXMgLTB4ODAwMDAwMDEKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAweERDQkE5ODc2NTQz
MjEwCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMHhEQ0JBOTg3NjU0MzIxMAorY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRl
c3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gLU51bWJlci5NSU5fVkFM
VUUKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRQorUEFTUyBjb252ZXJ0
ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0TG9uZ0xvbmcgPSAxLjk5CitQQVNT
IGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IC0x
Ljk5CitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgLTEKK2NvbnZlcnRlci50ZXN0TG9u
Z0xvbmcgPSBJbmZpbml0eQorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gTmFOCitQQVNTIGNvbnZlcnRlci50ZXN0
TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IGZhbHNlCitQQVNTIGNvbnZl
cnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RMb25nTG9uZyA9IHRydWUKK1BB
U1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0g
JycKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdExvbmdM
b25nID0gJzEnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRl
c3RMb25nTG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0TG9uZ0xvbmcgaXMgMAorY29u
dmVydGVyLnRlc3RMb25nTG9uZyA9IG51bGwKK1BBU1MgY29udmVydGVyLnRlc3RMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdExvbmdMb25nID0gdW5kZWZpbmVkCitQQVNTIGNvbnZlcnRlci50
ZXN0TG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdExvbmdMb25nID0ge3ZhbHVlT2Y6
ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBF
cnJvcjogY3VzdG9tLgorCitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcnIGluIGNvbnZl
cnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID09PSAnbnVtYmVyJyBpcyB0cnVlCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDAKK2Nv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMQorUEFTUyBjb252ZXJ0ZXIudGVz
dEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0xCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEK
K2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAweDdGCitQQVNTIGNvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAweDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhGRgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRl
ci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gLTB4ODEKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAtMHg4MQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4N0ZGRgorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4N0ZGRgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4ODAwMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25n
IGlzIDB4RkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IC0weDgwMDAK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwCitjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDEKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJh
bmdlTG9uZ0xvbmcgaXMgMHg3RkZGRkZGRgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IDB4ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhG
RkZGRkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDB4RkZG
RkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIC0weDgwMDAwMDAwCitj
b252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTB4ODAwMDAwMDEKK1BBU1MgY29u
dmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMHg4MDAwMDAwMQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gMHhEQ0JBOTg3NjU0MzIxMCB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VMb25nTG9uZyA9IE51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0g
LU51bWJlci5NSU5fVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9u
ZyBpcyAwCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSBOdW1iZXIu
TUFYX1ZBTFVFIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNv
bnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxVRSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNl
UmFuZ2VMb25nTG9uZyA9IDEuOTkKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyBpcyAxCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gLTEuOTkKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAtMQorUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gSW5maW5pdHkgdGhyZXcgZXhjZXB0aW9uIFR5
cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25n
TG9uZyA9IC1JbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gTmFOIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxv
bmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBp
cyAwCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nID0gdHJ1ZQorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0RW5mb3Jj
ZVJhbmdlTG9uZ0xvbmcgPSAnJworUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZUxvbmdM
b25nIGlzIDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnMScKK1BBU1Mg
Y29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAxCitQQVNTIGNvbnZlcnRlci50
ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyA9IG51bGwK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VMb25nTG9uZyBpcyAwCitQQVNTIGNvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlTG9uZ0xvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9u
IFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VM
b25nTG9uZyA9IHt2YWx1ZU9mOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCdjdXN0b20nKTt9
fSB0aHJldyBleGNlcHRpb24gRXJyb3I6IGN1c3RvbS4KKworUEFTUyAndGVzdFVuc2lnbmVkTG9u
Z0xvbmcnIGluIGNvbnZlcnRlciBpcyB0cnVlCitQQVNTIHR5cGVvZiBjb252ZXJ0ZXIudGVzdFVu
c2lnbmVkTG9uZ0xvbmcgPT09ICdudW1iZXInIGlzIHRydWUKK2NvbnZlcnRlci50ZXN0VW5zaWdu
ZWRMb25nTG9uZyA9IDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0xCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyA9IDEKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4N0YKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4N0YKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9IDB4ODAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAK
K2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4RkYKK1BBU1MgY29udmVydGVyLnRl
c3RVbnNpZ25lZExvbmdMb25nIGlzIDB4RkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9IC0weDgwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZG
RkZGRkZGRkZGODAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IC0weDgxCitQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGN0YKK2Nv
bnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRgorUEFTUyBjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAweDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDB4ODAw
MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gMHhGRkZGCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweEZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRM
b25nTG9uZyA9IC0weDgwMDAKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlz
IDB4RkZGRkZGRkZGRkZGODAwMAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gLTB4
ODAwMQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRkZG
RkY3RkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDdGRkZGRkZGCitQQVNT
IGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkZGRkZGCitjb252ZXJ0ZXIu
dGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweDgwMDAwMDAwCitQQVNTIGNvbnZlcnRlci50ZXN0VW5z
aWduZWRMb25nTG9uZyBpcyAweDgwMDAwMDAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xv
bmcgPSAweEZGRkZGRkZGCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAw
eEZGRkZGRkZGCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMAor
UEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRjgwMDAwMDAw
Citjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwMDAwMQorUEFTUyBjb252
ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMHhGRkZGRkZGRjdGRkZGRkZGCitjb252ZXJ0
ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAweERDQkE5ODc2NTQzMjEwCitQQVNTIGNvbnZlcnRl
ci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAweERDQkE5ODc2NTQzMjEwCitjb252ZXJ0ZXIudGVz
dFVuc2lnbmVkTG9uZ0xvbmcgPSBOdW1iZXIuTUlOX1ZBTFVFCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAt
TnVtYmVyLk1JTl9WQUxVRQorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMg
MAorY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1BWF9WQUxVRQorUEFT
UyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nID0gLU51bWJlci5NQVhfVkFMVUUKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IDEuOTkK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9IC0xLjk5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyBpcyAweEZGRkZGRkZGRkZGRkZGRkYKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9IEluZmluaXR5CitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5pdHkKK1BBU1MgY29udmVydGVy
LnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyA9IE5hTgorUEFTUyBjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0gZmFsc2UKK1BBU1MgY29udmVydGVyLnRlc3RVbnNp
Z25lZExvbmdMb25nIGlzIDAKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyA9IHRydWUK
K1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyA9ICcnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9u
ZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSAnMScKK1BBU1MgY29udmVy
dGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDEKK2NvbnZlcnRlci50ZXN0VW5zaWduZWRMb25n
TG9uZyA9ICdhYmMnCitQQVNTIGNvbnZlcnRlci50ZXN0VW5zaWduZWRMb25nTG9uZyBpcyAwCitj
b252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSBudWxsCitQQVNTIGNvbnZlcnRlci50ZXN0
VW5zaWduZWRMb25nTG9uZyBpcyAwCitjb252ZXJ0ZXIudGVzdFVuc2lnbmVkTG9uZ0xvbmcgPSB1
bmRlZmluZWQKK1BBU1MgY29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BBU1Mg
Y29udmVydGVyLnRlc3RVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVlT2Y6ZnVuY3Rpb24oKXt0aHJv
dyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlvbiBFcnJvcjogY3VzdG9tLgor
CitQQVNTICd0ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZycgaW4gY29udmVydGVyIGlz
IHRydWUKK1BBU1MgdHlwZW9mIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25n
TG9uZyA9PT0gJ251bWJlcicgaXMgdHJ1ZQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSAtMSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg3RgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFu
Z2VVbnNpZ25lZExvbmdMb25nID0gMHg4MAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5n
ZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgaXMgMHhGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2ln
bmVkTG9uZ0xvbmcgPSAtMHg4MCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9y
LgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4
MSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHg3RkZGCitQQVNTIGNvbnZlcnRlci50ZXN0
RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyBpcyAweDdGRkYKK2NvbnZlcnRlci50ZXN0RW5m
b3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4ODAwMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMHg4MDAwCitjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAweEZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZv
cmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4RkZGRgorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMHg4MDAwIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IFR5cGUgZXJyb3IuCitQQVNTIGNvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWdu
ZWRMb25nTG9uZyA9IC0weDgwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJv
ci4KK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4N0ZGRkZG
RkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDB4
N0ZGRkZGRkYKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9IDB4
ODAwMDAwMDAKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
IGlzIDB4ODAwMDAwMDAKK2NvbnZlcnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9u
ZyA9IDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExv
bmdMb25nIGlzIDB4RkZGRkZGRkYKK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNp
Z25lZExvbmdMb25nID0gLTB4ODAwMDAwMDAgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlw
ZSBlcnJvci4KK1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gLTB4ODAwMDAwMDEgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMHhEQ0JBOTg3
NjU0MzIxMCB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1JTl9WQUxVRQorUEFT
UyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMAorY29udmVy
dGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gLU51bWJlci5NSU5fVkFMVUUK
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTnVtYmVyLk1B
WF9WQUxVRSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorUEFTUyBjb252
ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtTnVtYmVyLk1BWF9WQUxV
RSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RF
bmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gMS45OQorUEFTUyBjb252ZXJ0ZXIudGVzdEVu
Zm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9y
Y2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtMS45OSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9y
OiBUeXBlIGVycm9yLgorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSBJbmZpbml0eSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBUeXBlIGVycm9yLgor
UEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAtSW5maW5p
dHkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4KK1BBU1MgY29udmVydGVy
LnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gTmFOIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IFR5cGUgZXJyb3IuCitjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgPSBmYWxzZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMAorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25n
ID0gdHJ1ZQorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcg
aXMgMQorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0gJycKK1BB
U1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nIGlzIDAKK2NvbnZl
cnRlci50ZXN0RW5mb3JjZVJhbmdlVW5zaWduZWRMb25nTG9uZyA9ICcxJworUEFTUyBjb252ZXJ0
ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgaXMgMQorUEFTUyBjb252ZXJ0ZXIu
dGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9uZ0xvbmcgPSAnYWJjJyB0aHJldyBleGNlcHRpb24g
VHlwZUVycm9yOiBUeXBlIGVycm9yLgorY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25l
ZExvbmdMb25nID0gbnVsbAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVk
TG9uZ0xvbmcgaXMgMAorUEFTUyBjb252ZXJ0ZXIudGVzdEVuZm9yY2VSYW5nZVVuc2lnbmVkTG9u
Z0xvbmcgPSB1bmRlZmluZWQgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogVHlwZSBlcnJvci4K
K1BBU1MgY29udmVydGVyLnRlc3RFbmZvcmNlUmFuZ2VVbnNpZ25lZExvbmdMb25nID0ge3ZhbHVl
T2Y6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoJ2N1c3RvbScpO319IHRocmV3IGV4Y2VwdGlv
biBFcnJvcjogY3VzdG9tLgorCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
aW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAppbmRl
eCAxZThiZDU3YmQzMTFiODJjZTlmMjQ4YmRkNzQ2NDRiYzJmMDJkNmQ1Li4xNDU1N2Q0NTM2NmRk
ZjM0MWI2YzAxMjA3MGUyODkxMjNhMTE4ODdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0ZXJz
LWV4cGVjdGVkLnR4dApAQCAtMTgsNiArMTgsMTUgQEAgUEFTUyBpbmRleGVkREIub3BlbihkYm5h
bWUsIDApIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5cGVFcnJvciBl
eGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC01KQogUEFTUyBFeGNlcHRpb24g
d2FzIHRocm93bi4KIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtNSkgdGhyZXcgVHlwZUVy
cm9yOiBUeXBlIGVycm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4
ZWREQi5vcGVuKGRibmFtZSwgSW5maW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgor
UEFTUyBpbmRleGVkREIub3BlbihkYm5hbWUsIEluZmluaXR5KSB0aHJldyBUeXBlRXJyb3I6IFR5
cGUgZXJyb3IKK0V4cGVjdGluZyBUeXBlRXJyb3IgZXhjZXB0aW9uIGZyb20gaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCAtSW5maW5pdHkpCitQQVNTIEV4Y2VwdGlvbiB3YXMgdGhyb3duLgorUEFTUyBp
bmRleGVkREIub3BlbihkYm5hbWUsIC1JbmZpbml0eSkgdGhyZXcgVHlwZUVycm9yOiBUeXBlIGVy
cm9yCitFeHBlY3RpbmcgVHlwZUVycm9yIGV4Y2VwdGlvbiBmcm9tIGluZGV4ZWREQi5vcGVuKGRi
bmFtZSwgTmFOKQorUEFTUyBFeGNlcHRpb24gd2FzIHRocm93bi4KK1BBU1MgaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCBOYU4pIHRocmV3IFR5cGVFcnJvcjogVHlwZSBlcnJvcgogRXhwZWN0aW5nIFR5
cGVFcnJvciBleGNlcHRpb24gZnJvbSBpbmRleGVkREIub3BlbihkYm5hbWUsIC0xKQogUEFTUyBF
eGNlcHRpb24gd2FzIHRocm93bi4KIFBBU1MgaW5kZXhlZERCLm9wZW4oZGJuYW1lLCAtMSkgdGhy
ZXcgVHlwZUVycm9yOiBUeXBlIGVycm9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1iYWQtcGFyYW1ldGVycy5qcyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0
ZXJzLmpzCmluZGV4IGFmMzVmMmQ0YmM4MmIwYmNkYjViMDE0OGM2MzBmMjE1Mzk2M2JmYzEuLmQz
MzljMzJjMWM2YjExNDk3ZTFjYzg5ZDBjMDczNWFhMzk5OTc0NzggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWJhZC1wYXJhbWV0
ZXJzLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2
ZXJzaW9uLWJhZC1wYXJhbWV0ZXJzLmpzCkBAIC0yMCw2ICsyMCw5IEBAIGZ1bmN0aW9uIGRlbGV0
ZVN1Y2Nlc3MoZXZ0KSB7CiAgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVk
REIub3BlbihkYm5hbWUsICdzdHJpbmd2ZXJzaW9uJykiLCAiVHlwZUVycm9yIik7CiAgICAgZXZh
bEFuZEV4cGVjdEV4Y2VwdGlvbkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIDApIiwgIlR5
cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCAtNSkiLCAiVHlwZUVycm9yIik7CisgICAgZXZhbEFuZEV4cGVjdEV4Y2VwdGlv
bkNsYXNzKCJpbmRleGVkREIub3BlbihkYm5hbWUsIEluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsK
KyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwg
LUluZmluaXR5KSIsICJUeXBlRXJyb3IiKTsKKyAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9uQ2xh
c3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgTmFOKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFs
QW5kRXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgLTEpIiwgIlR5
cGVFcnJvciIpOwogICAgIGV2YWxBbmRFeHBlY3RFeGNlcHRpb25DbGFzcygiaW5kZXhlZERCLm9w
ZW4oZGJuYW1lLCAweDIwMDAwMDAwMDAwMDAwKSIsICJUeXBlRXJyb3IiKTsKICAgICBldmFsQW5k
RXhwZWN0RXhjZXB0aW9uQ2xhc3MoImluZGV4ZWREQi5vcGVuKGRibmFtZSwgbnVsbCkiLCAiVHlw
ZUVycm9yIik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>