<?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>222028</bug_id>
          
          <creation_ts>2021-02-16 22:04:19 -0800</creation_ts>
          <short_desc>[selectors] :focus-visible implementation</short_desc>
          <delta_ts>2021-03-02 22:44:02 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</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>BrowserCompat, InRadar, WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>185859</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Manuel Rego Casasnovas">rego</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>clopez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1730135</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-16 22:04:19 -0800</bug_when>
    <thetext>Add basic :focus-visible implementation behind the FocusVisibleEnabled experimental flag.

Spec: https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730154</commentid>
    <comment_count>1</comment_count>
      <attachid>420600</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-16 22:53:20 -0800</bug_when>
    <thetext>Created attachment 420600
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730174</commentid>
    <comment_count>2</comment_count>
      <attachid>420600</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2021-02-16 23:58:55 -0800</bug_when>
    <thetext>Comment on attachment 420600
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        This patch implements the heuristics defined on the spec (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).

Defined in?

&gt; Source/WebCore/dom/Element.cpp:753
&gt; +        setHasFocusVisible(false);

You are not always calling setHasFocusVisible(...), is that on purpose?

Maybe you meant

setHasFocusVisible(flag &amp;&amp; (isTextField() || isContentEditable()))

?

&gt; Source/WebCore/dom/Element.cpp:3041
&gt; +    bool newlyFocusedElementShouldMatchFocusVisible = document-&gt;focusedElement() ? document-&gt;focusedElement()-&gt;hasFocusVisible() : true;

This can be

bool newlyFocusedElementShouldMatchFocusVisible = !document-&gt;focusedElement() || document-&gt;focusedElement()-&gt;hasFocusVisible();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730205</commentid>
    <comment_count>3</comment_count>
      <attachid>420600</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-17 02:07:47 -0800</bug_when>
    <thetext>Comment on attachment 420600
Patch

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

Thanks for the review.

&gt;&gt; Source/WebCore/ChangeLog:9
&gt;&gt; +        This patch implements the heuristics defined on the spec (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
&gt; 
&gt; Defined in?

Fixed.

&gt;&gt; Source/WebCore/dom/Element.cpp:753
&gt;&gt; +        setHasFocusVisible(false);
&gt; 
&gt; You are not always calling setHasFocusVisible(...), is that on purpose?
&gt; 
&gt; Maybe you meant
&gt; 
&gt; setHasFocusVisible(flag &amp;&amp; (isTextField() || isContentEditable()))
&gt; 
&gt; ?

No we cannot do that.

&quot;setHasFocusVisible(true)&quot; might have been called before Element::setFocus(), and we don&apos;t want to set it to false if it doesn&apos;t support keyboard input.
For example, if we&apos;re focusing with TAB a &lt;DIV tabindex&gt;, setHasFocusVisible(true) was already called in FocusController::advanceFocusInDocumentOrder(), and we don&apos;t want to set it to false here (like it would happen in your proposal).

I&apos;m modifying the ChangeLog entry to explain this part.

&gt;&gt; Source/WebCore/dom/Element.cpp:3041
&gt;&gt; +    bool newlyFocusedElementShouldMatchFocusVisible = document-&gt;focusedElement() ? document-&gt;focusedElement()-&gt;hasFocusVisible() : true;
&gt; 
&gt; This can be
&gt; 
&gt; bool newlyFocusedElementShouldMatchFocusVisible = !document-&gt;focusedElement() || document-&gt;focusedElement()-&gt;hasFocusVisible();

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730206</commentid>
    <comment_count>4</comment_count>
      <attachid>420620</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-17 02:12:31 -0800</bug_when>
    <thetext>Created attachment 420620
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730208</commentid>
    <comment_count>5</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-02-17 02:13:17 -0800</bug_when>
    <thetext>This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731007</commentid>
    <comment_count>6</comment_count>
      <attachid>420620</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-18 13:23:12 -0800</bug_when>
    <thetext>Comment on attachment 420620
Patch

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

This seems baroque and strange. Where can I read this specification? It seems to me that :focus-visible should be based on *invariants*, not based on state transitions. The fact that the implementation causes one focused item to sort of inherit from the last seems wrong to me, and especially the fact that typing a key can take an already-focused element and change it to focus-visible, even if the key ends up having no other effect.

I suspect some of this may be due to the fact that we follow some Mac platform standards and other browsers embrace Windows platform standards (that’s where the button focusing difference comes from) and the strange algorithm is needed to bridge some of the differences.

But if not, where does this strange need come from?

&gt; Source/WebCore/dom/Element.cpp:766
&gt; +    {
&gt; +        Style::PseudoClassChangeInvalidation styleInvalidation(*this, CSSSelector::PseudoClassFocusVisible);
&gt; +        setNodeFlag(NodeFlag::HasFocusVisible, flag);
&gt; +    }

No need for these braces, but if you think it’s clearer with them, OK.

&gt; Source/WebCore/dom/Element.cpp:2045
&gt; +    if (is&lt;KeyboardEvent&gt;(event) &amp;&amp; (event.type() == eventNames().keypressEvent) &amp;&amp; focused()) {

We normally would not include the parentheses here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731008</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-18 13:24:02 -0800</bug_when>
    <thetext>I’ve now started reading https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731012</commentid>
    <comment_count>8</comment_count>
      <attachid>420620</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-18 13:29:58 -0800</bug_when>
    <thetext>Comment on attachment 420620
Patch

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

&gt; Source/WebCore/dom/Element.cpp:2046
&gt; +        // If the user interacts with the page via the keyboard, the currently focused element should match :focus-visible.

This code doesn’t seem to correspond to &quot;if the user interacts with the page via the keyboard&quot;.

To implement that rule, it should not be a default event handler of an element. It needs to go somewhere broader and less limited, something where preventing default behavior won’t stop it, for example.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731029</commentid>
    <comment_count>9</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-18 14:28:10 -0800</bug_when>
    <thetext>Hi Darin, thanks for the review!

Yeah as you mention this is defined in the following spec:
https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo

The main goal of :focus-visible is to avoid the bad pattern of doing &quot;:focus { outline: none; }&quot; on a website, to avoid getting focus indicators in some elements that the web authors don&apos;t like.
It&apos;s a kind of a11y feature, so the focus-indicator would only be showed when it&apos;s actually needed. The people could style it with :focus-visible.

The patch is implementing the heuristics, which are non-normative. I believe these come from some a11y research done while defining this feature.
Anyway the current implementations in Chromium and Firefox follow them, if we could do the same in WebKit that would be great for the web authors.

I can maybe split this patch, and only implement the very clear ones. And implement in separated patches the more controversial ones.
Some are actually under discussion on the CSSWG regarding some details, see 
https://github.com/w3c/csswg-drafts/issues/5885.

Would that makes sense?

(In reply to Darin Adler from comment #8)
&gt; Comment on attachment 420620 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=420620&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/Element.cpp:2046
&gt; &gt; +        // If the user interacts with the page via the keyboard, the currently focused element should match :focus-visible.
&gt; 
&gt; This code doesn’t seem to correspond to &quot;if the user interacts with the page
&gt; via the keyboard&quot;.
&gt; 
&gt; To implement that rule, it should not be a default event handler of an
&gt; element. It needs to go somewhere broader and less limited, something where
&gt; preventing default behavior won’t stop it, for example.

There&apos;s a test that calls preventDefault() (focus-visible-011.html) and it&apos;s now working right now, but due to a different issue, I was planning to rework the test in a follow-up patch.
I believe I&apos;ve tested that this was still working with preventDefault() but I&apos;ll double-check.
If you had an idea of where we should do this, I&apos;ll be happy to hear about that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731293</commentid>
    <comment_count>10</comment_count>
      <attachid>420950</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-19 03:11:49 -0800</bug_when>
    <thetext>Created attachment 420950
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731295</commentid>
    <comment_count>11</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-19 03:14:30 -0800</bug_when>
    <thetext>
&gt; (In reply to Darin Adler from comment #8)
&gt; &gt; Comment on attachment 420620 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=420620&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/dom/Element.cpp:2046
&gt; &gt; &gt; +        // If the user interacts with the page via the keyboard, the currently focused element should match :focus-visible.
&gt; &gt; 
&gt; &gt; This code doesn’t seem to correspond to &quot;if the user interacts with the page
&gt; &gt; via the keyboard&quot;.
&gt; &gt; 
&gt; &gt; To implement that rule, it should not be a default event handler of an
&gt; &gt; element. It needs to go somewhere broader and less limited, something where
&gt; &gt; preventing default behavior won’t stop it, for example.
&gt; 
&gt; There&apos;s a test that calls preventDefault() (focus-visible-011.html) and it&apos;s
&gt; now working right now, but due to a different issue, I was planning to
&gt; rework the test in a follow-up patch.
&gt; I believe I&apos;ve tested that this was still working with preventDefault() but
&gt; I&apos;ll double-check.
&gt; If you had an idea of where we should do this, I&apos;ll be happy to hear about
&gt; that.

I moved this to Element::dispatchKeyEvent() that is even called when preventDefault() is called.

Anyway the test needs improvements, I&apos;ll send a WPT PR to fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731322</commentid>
    <comment_count>12</comment_count>
      <attachid>420963</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-19 07:01:52 -0800</bug_when>
    <thetext>Created attachment 420963
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731323</commentid>
    <comment_count>13</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-19 07:03:01 -0800</bug_when>
    <thetext>(In reply to Manuel Rego Casasnovas from comment #11)
&gt; Anyway the test needs improvements, I&apos;ll send a WPT PR to fix it.

Fixed focus-visible-011.html test in WPT, now it test event.preventDefault() properly and also run on Mac (where buttons are not focused on click).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731343</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-19 08:16:56 -0800</bug_when>
    <thetext>(In reply to Manuel Rego Casasnovas from comment #11)
&gt; I moved this to Element::dispatchKeyEvent() that is even called when
&gt; preventDefault() is called.

But why should it only be key events dispatched to the focused elements? What about key events dispatched to other elements?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731352</commentid>
    <comment_count>15</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-19 08:52:00 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #14)
&gt; (In reply to Manuel Rego Casasnovas from comment #11)
&gt; &gt; I moved this to Element::dispatchKeyEvent() that is even called when
&gt; &gt; preventDefault() is called.
&gt; 
&gt; But why should it only be key events dispatched to the focused elements?
&gt; What about key events dispatched to other elements?

Not sure how we can dispatch a key event to something that is not focused, is that possible? I&apos;ll need to do some tests, but maybe the check for focused() is not needed actually.

Here, I&apos;m trying to implement this from the spec (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo):
&gt; * If the user interacts with the page via keyboard or some other non-pointing device, indicate focus. (This means keyboard usage may change whether this pseudo-class matches even if it doesn’t affect :focus).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731357</commentid>
    <comment_count>16</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-19 08:55:04 -0800</bug_when>
    <thetext>(In reply to Manuel Rego Casasnovas from comment #15)
&gt; Not sure how we can dispatch a key event to something that is not focused,
&gt; is that possible? I&apos;ll need to do some tests, but maybe the check for
&gt; focused() is not needed actually.
&gt; 
&gt; Here, I&apos;m trying to implement this from the spec
&gt; (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo):
&gt; &gt; * If the user interacts with the page via keyboard or some other non-pointing device, indicate focus. (This means keyboard usage may change whether this pseudo-class matches even if it doesn’t affect :focus).

Yes, and I’d expect the code for this to go somewhere like EventHandler, not in the DOM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732085</commentid>
    <comment_count>17</comment_count>
      <attachid>421177</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-22 04:02:55 -0800</bug_when>
    <thetext>Created attachment 421177
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732086</commentid>
    <comment_count>18</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-22 04:03:37 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #16)
&gt; (In reply to Manuel Rego Casasnovas from comment #15)
&gt; &gt; Not sure how we can dispatch a key event to something that is not focused,
&gt; &gt; is that possible? I&apos;ll need to do some tests, but maybe the check for
&gt; &gt; focused() is not needed actually.
&gt; &gt; 
&gt; &gt; Here, I&apos;m trying to implement this from the spec
&gt; &gt; (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo):
&gt; &gt; &gt; * If the user interacts with the page via keyboard or some other non-pointing device, indicate focus. (This means keyboard usage may change whether this pseudo-class matches even if it doesn’t affect :focus).
&gt; 
&gt; Yes, and I’d expect the code for this to go somewhere like EventHandler, not
&gt; in the DOM.

Move this to EventHandler::internalKeyEvent().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732285</commentid>
    <comment_count>19</comment_count>
      <attachid>421235</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-22 13:38:33 -0800</bug_when>
    <thetext>Created attachment 421235
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732467</commentid>
    <comment_count>20</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-23 01:40:16 -0800</bug_when>
    <thetext>EWS are green. PTAL. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1732786</commentid>
    <comment_count>21</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-23 22:05:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/74679243&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733339</commentid>
    <comment_count>22</comment_count>
      <attachid>421235</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-25 08:42:36 -0800</bug_when>
    <thetext>Comment on attachment 421235
Patch

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

&gt; Source/WebCore/css/SelectorCheckerTestFunctions.h:475
&gt;  ALWAYS_INLINE bool matchesFocusVisiblePseudoClass(const Element&amp; element)

I don’t understand why this function already existed, with an inspector-only implementation. Do you know why?

&gt; Source/WebCore/dom/Element.cpp:3031
&gt; +    // For script focus the newly focused element should match (or not) :focus-visible if the active element matches (or not) :focus-visible.
&gt; +    // If there&apos;s no active element then script focus always matches :focus-visible.
&gt; +    bool newlyFocusedElementShouldMatchFocusVisible = !document-&gt;focusedElement() || document-&gt;focusedElement()-&gt;hasFocusVisible();

This doesn’t seem right. Why is it a good design to check the state of the currently focused element here? Isn’t there a way to determine if the newly focused element should match that is independent of the previously focused one? If so, we should do that. It seems really strange that &quot;unfocusing&quot; one element then focusing another would give a different result from focusing the other without explicitly &quot;unfocusing&quot; first.

Perhaps this does achieve the correct result, but I don’t understand it fully.

&gt; Source/WebCore/dom/Element.cpp:3068
&gt; +        if (!newTarget-&gt;hasFocusVisible())
&gt; +            newTarget-&gt;setHasFocusVisible(newlyFocusedElementShouldMatchFocusVisible);

This is kind of strange. It calls setHasFocusVisible(false) even if hasFocusVisible is already false. Could write this in a clearer way. But the issue above is the bigger one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733346</commentid>
    <comment_count>23</comment_count>
      <attachid>421235</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-25 09:07:27 -0800</bug_when>
    <thetext>Comment on attachment 421235
Patch

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

Thanks for the review. Replied inline.

&gt;&gt; Source/WebCore/css/SelectorCheckerTestFunctions.h:475
&gt;&gt;  ALWAYS_INLINE bool matchesFocusVisiblePseudoClass(const Element&amp; element)
&gt; 
&gt; I don’t understand why this function already existed, with an inspector-only implementation. Do you know why?

This was added with the basic parsing for :focus-visible on the previous patch (see r272983).

&gt;&gt; Source/WebCore/dom/Element.cpp:3031
&gt;&gt; +    bool newlyFocusedElementShouldMatchFocusVisible = !document-&gt;focusedElement() || document-&gt;focusedElement()-&gt;hasFocusVisible();
&gt; 
&gt; This doesn’t seem right. Why is it a good design to check the state of the currently focused element here? Isn’t there a way to determine if the newly focused element should match that is independent of the previously focused one? If so, we should do that. It seems really strange that &quot;unfocusing&quot; one element then focusing another would give a different result from focusing the other without explicitly &quot;unfocusing&quot; first.
&gt; 
&gt; Perhaps this does achieve the correct result, but I don’t understand it fully.

You have a good point here.

This is trying to implement this part of the spec (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo):
&quot;If the previously-focused element indicated focus, and a script causes focus to move elsewhere, the newly focused element should indicate focus.
 Conversely, if the previously-focused element did not indicate focus, and a script causes focus to move elsewhere, the newly focused element should also not indicate focus.&quot;

That&apos;s why it check the status of the current element, to see what to do with the next one.


However it&apos;s true what you say, imagine the following scenarios:
1) User clicks on a &lt;DIV id=1 tabindex&gt;, so the element does&apos;t match :focus-visible
2) A script moves focus to another &lt;DIV id=2 tabindex&gt;, the DIV#2 element now doesn&apos;t match :focus-visible.

But:
1) User clicks on a &lt;DIV id=1 tabindex&gt;, so the element does&apos;t match :focus-visible
2) A script calls blur() and then moves focus to another &lt;DIV id=2 tabindex&gt;, the DIV#2 element will match :focus-visible.

I agree that this is strange.


This particular issue is being discussed on the CSSWG (see https://github.com/w3c/csswg-drafts/issues/5885), thought it has been suggested to move this to the HTML spec. In any case the proposal there is a little bit different to the current spec text:
&quot;If the user has not interacted with the page, and a script (or similar behavior via autofocus) causes focus to be set, the newly focused element should match :focus-visible
  If the user&apos;s last interaction with the page would cause an element to match :focus-visible, and a script causes focus to move elsewhere, the newly focused element should match :focus-visible.
  Conversely, if the user&apos;s last interaction with the page would cause an element to to not match :focus-sible, and a script causes focus to move elsewhere, the newly focused element should not match :focus-visible.&quot;

With this proposals both scenarios described above would behave the same. And the DIV#2 element won&apos;t match :focus-visible in any of the cases.

But I&apos;m not implementing that yet, as it was not approved or discussed in either CSSWG or HTML spec.

Not sure what would be the best idea so far, keep this initial implementation or avoid implementing anything related to this until the spec text is clarified? WDYT?

&gt;&gt; Source/WebCore/dom/Element.cpp:3068
&gt;&gt; +            newTarget-&gt;setHasFocusVisible(newlyFocusedElementShouldMatchFocusVisible);
&gt; 
&gt; This is kind of strange. It calls setHasFocusVisible(false) even if hasFocusVisible is already false. Could write this in a clearer way. But the issue above is the bigger one.

I could write this like:
        if (!newTarget-&gt;hasFocusVisible() &amp;&amp; newlyFocusedElementShouldMatchFocusVisible)
            newTarget-&gt;setHasFocusVisible(newlyFocusedElementShouldMatchFocusVisible);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733400</commentid>
    <comment_count>24</comment_count>
      <attachid>421235</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-25 10:38:06 -0800</bug_when>
    <thetext>Comment on attachment 421235
Patch

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

&gt;&gt;&gt; Source/WebCore/dom/Element.cpp:3031
&gt;&gt;&gt; +    bool newlyFocusedElementShouldMatchFocusVisible = !document-&gt;focusedElement() || document-&gt;focusedElement()-&gt;hasFocusVisible();
&gt;&gt; 
&gt;&gt; This doesn’t seem right. Why is it a good design to check the state of the currently focused element here? Isn’t there a way to determine if the newly focused element should match that is independent of the previously focused one? If so, we should do that. It seems really strange that &quot;unfocusing&quot; one element then focusing another would give a different result from focusing the other without explicitly &quot;unfocusing&quot; first.
&gt;&gt; 
&gt;&gt; Perhaps this does achieve the correct result, but I don’t understand it fully.
&gt; 
&gt; You have a good point here.
&gt; 
&gt; This is trying to implement this part of the spec (https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo):
&gt; &quot;If the previously-focused element indicated focus, and a script causes focus to move elsewhere, the newly focused element should indicate focus.
&gt;  Conversely, if the previously-focused element did not indicate focus, and a script causes focus to move elsewhere, the newly focused element should also not indicate focus.&quot;
&gt; 
&gt; That&apos;s why it check the status of the current element, to see what to do with the next one.
&gt; 
&gt; 
&gt; However it&apos;s true what you say, imagine the following scenarios:
&gt; 1) User clicks on a &lt;DIV id=1 tabindex&gt;, so the element does&apos;t match :focus-visible
&gt; 2) A script moves focus to another &lt;DIV id=2 tabindex&gt;, the DIV#2 element now doesn&apos;t match :focus-visible.
&gt; 
&gt; But:
&gt; 1) User clicks on a &lt;DIV id=1 tabindex&gt;, so the element does&apos;t match :focus-visible
&gt; 2) A script calls blur() and then moves focus to another &lt;DIV id=2 tabindex&gt;, the DIV#2 element will match :focus-visible.
&gt; 
&gt; I agree that this is strange.
&gt; 
&gt; 
&gt; This particular issue is being discussed on the CSSWG (see https://github.com/w3c/csswg-drafts/issues/5885), thought it has been suggested to move this to the HTML spec. In any case the proposal there is a little bit different to the current spec text:
&gt; &quot;If the user has not interacted with the page, and a script (or similar behavior via autofocus) causes focus to be set, the newly focused element should match :focus-visible
&gt;   If the user&apos;s last interaction with the page would cause an element to match :focus-visible, and a script causes focus to move elsewhere, the newly focused element should match :focus-visible.
&gt;   Conversely, if the user&apos;s last interaction with the page would cause an element to to not match :focus-sible, and a script causes focus to move elsewhere, the newly focused element should not match :focus-visible.&quot;
&gt; 
&gt; With this proposals both scenarios described above would behave the same. And the DIV#2 element won&apos;t match :focus-visible in any of the cases.
&gt; 
&gt; But I&apos;m not implementing that yet, as it was not approved or discussed in either CSSWG or HTML spec.
&gt; 
&gt; Not sure what would be the best idea so far, keep this initial implementation or avoid implementing anything related to this until the spec text is clarified? WDYT?

My preference would be:

1) to implement a sensible rule that matches what the specification behavior calls for in all non-unusual cases
2) make sure that we cover the unusual cases in Web Platform Tests instead of having them be untested
3) not worry unduly about exactly matching a specification that doesn’t make really good sense and monitor progress on the specification so we are sure to eventually have interoperability with the other web browsers

I don’t like implementing literally what the specification says when it doesn’t pass the &quot;common sense&quot; rule.

&gt;&gt;&gt; Source/WebCore/dom/Element.cpp:3068
&gt;&gt;&gt; +            newTarget-&gt;setHasFocusVisible(newlyFocusedElementShouldMatchFocusVisible);
&gt;&gt; 
&gt;&gt; This is kind of strange. It calls setHasFocusVisible(false) even if hasFocusVisible is already false. Could write this in a clearer way. But the issue above is the bigger one.
&gt; 
&gt; I could write this like:
&gt;         if (!newTarget-&gt;hasFocusVisible() &amp;&amp; newlyFocusedElementShouldMatchFocusVisible)
&gt;             newTarget-&gt;setHasFocusVisible(newlyFocusedElementShouldMatchFocusVisible);

I would write this:

    if (newlyFocusedElementShouldMatchFocusVisible)
        newTarget-&gt;setHasFocusVisible(true);

You might prefer this longer version:

    if (!newTarget-&gt;hasFocusVisible() &amp;&amp; newlyFocusedElementShouldMatchFocusVisible)
        newTarget-&gt;setHasFocusVisible(true);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733744</commentid>
    <comment_count>25</comment_count>
      <attachid>421639</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 07:08:18 -0800</bug_when>
    <thetext>Created attachment 421639
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733745</commentid>
    <comment_count>26</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 07:08:43 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #24)
&gt; &gt; Not sure what would be the best idea so far, keep this initial implementation or avoid implementing anything related to this until the spec text is clarified? WDYT?
&gt; 
&gt; My preference would be:
&gt; 
&gt; 1) to implement a sensible rule that matches what the specification behavior
&gt; calls for in all non-unusual cases
&gt; 2) make sure that we cover the unusual cases in Web Platform Tests instead
&gt; of having them be untested
&gt; 3) not worry unduly about exactly matching a specification that doesn’t make
&gt; really good sense and monitor progress on the specification so we are sure
&gt; to eventually have interoperability with the other web browsers

This plan sounds good, but I&apos;ve been thinking about 1) and I&apos;m not sure what a sensible rule would be when I start to think in more cases than the basic ones...

So I&apos;ve been thinking that maybe we could land the rest of the patch, that adds support for :focus-visible behind an experimental flag. And deal with the script focus in a separated bug. I&apos;m going to upload a new version of the patch without this part.

My plan regarding script focus is to write a bunch of WPT tests covering both the basic cases, and the unusual ones too. And check how those tests work in other browsers, and if people from different implementations agree on what are the expectations for each of them. And then once there&apos;s some kind of agreement around that work on a new patch that passes all those tests.

If you prefer to wait for that before landing anything here, that could be an option too, but I&apos;ll need some time to come back with the tests and some kind of common understanding on how they should work.

So let me know your thoughts about the best way to proceed.


&gt; I don’t like implementing literally what the specification says when it
&gt; doesn’t pass the &quot;common sense&quot; rule.

Yeah, that&apos;s a good point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733765</commentid>
    <comment_count>27</comment_count>
      <attachid>421648</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 08:08:09 -0800</bug_when>
    <thetext>Created attachment 421648
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733844</commentid>
    <comment_count>28</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 10:09:01 -0800</bug_when>
    <thetext>(In reply to Manuel Rego Casasnovas from comment #26)
&gt; My plan regarding script focus is to write a bunch of WPT tests covering
&gt; both the basic cases, and the unusual ones too. And check how those tests
&gt; work in other browsers, and if people from different implementations agree
&gt; on what are the expectations for each of them. And then once there&apos;s some
&gt; kind of agreement around that work on a new patch that passes all those
&gt; tests.

Here is a PR with 19 new tests checking different common and uncommon situations. Once we have a clear agreement on that I&apos;ll try to implement that on the WebKit side.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733845</commentid>
    <comment_count>29</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 10:09:32 -0800</bug_when>
    <thetext>(In reply to Manuel Rego Casasnovas from comment #28)
&gt; (In reply to Manuel Rego Casasnovas from comment #26)
&gt; &gt; My plan regarding script focus is to write a bunch of WPT tests covering
&gt; &gt; both the basic cases, and the unusual ones too. And check how those tests
&gt; &gt; work in other browsers, and if people from different implementations agree
&gt; &gt; on what are the expectations for each of them. And then once there&apos;s some
&gt; &gt; kind of agreement around that work on a new patch that passes all those
&gt; &gt; tests.
&gt; 
&gt; Here is a PR with 19 new tests checking different common and uncommon
&gt; situations. Once we have a clear agreement on that I&apos;ll try to implement
&gt; that on the WebKit side.

Forgot the link to the PR: https://github.com/web-platform-tests/wpt/pull/27806</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733857</commentid>
    <comment_count>30</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-02-26 10:24:03 -0800</bug_when>
    <thetext>Looks like a couple more test results need to be rebased.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733864</commentid>
    <comment_count>31</comment_count>
      <attachid>421673</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 10:36:08 -0800</bug_when>
    <thetext>Created attachment 421673
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733865</commentid>
    <comment_count>32</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 10:37:01 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #30)
&gt; Looks like a couple more test results need to be rebased.

Yeah, uploaded new version, let&apos;s see if now things are green (as I&apos;m running the tests in WebKitGTK and some things vary).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1733972</commentid>
    <comment_count>33</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-02-26 14:15:45 -0800</bug_when>
    <thetext>Rebaselined expectations. EWSs are now green. PTAL, thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734562</commentid>
    <comment_count>34</comment_count>
      <attachid>421673</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-03-01 13:09:05 -0800</bug_when>
    <thetext>Comment on attachment 421673
Patch

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

The code has one significant mistake, but I think it’s helpful to land this soon anyway.

&gt; Source/WebCore/page/EventHandler.cpp:3538
&gt; +    // If the user interacts with the page via the keyboard, the currently focused element should match :focus-visible.
&gt; +    // Just typing a modifier key is not considered user interaction with the page.
&gt; +    if (!keydown-&gt;ctrlKey() &amp;&amp; !keydown-&gt;metaKey() &amp;&amp; !keydown-&gt;altGraphKey() &amp;&amp; !keydown-&gt;shiftKey())
&gt; +        element-&gt;setHasFocusVisible(true);

The code here does not match the comment.

The checks here are checking if the key down is &quot;with the control, meta, alt graph, or shift key down&quot;. But the comment is talking about events where the event itself is due to pressing one of those modifier keys. With the code like this, typing A with the shift key down is will not set focus visible. That is definitely wrong.

I’m pretty sure that we don’t dispatch keydown events when the change is only a change to a modifier key. If I am right, then no check is needed. If I am wrong, the check needs to be different from the one above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734626</commentid>
    <comment_count>35</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-01 14:59:43 -0800</bug_when>
    <thetext>Thanks for the review.

(In reply to Darin Adler from comment #34)
&gt; Comment on attachment 421673 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=421673&amp;action=review
&gt; 
&gt; The code has one significant mistake, but I think it’s helpful to land this
&gt; soon anyway.
&gt; 
&gt; &gt; Source/WebCore/page/EventHandler.cpp:3538
&gt; &gt; +    // If the user interacts with the page via the keyboard, the currently focused element should match :focus-visible.
&gt; &gt; +    // Just typing a modifier key is not considered user interaction with the page.
&gt; &gt; +    if (!keydown-&gt;ctrlKey() &amp;&amp; !keydown-&gt;metaKey() &amp;&amp; !keydown-&gt;altGraphKey() &amp;&amp; !keydown-&gt;shiftKey())
&gt; &gt; +        element-&gt;setHasFocusVisible(true);
&gt; 
&gt; The code here does not match the comment.
&gt; 
&gt; The checks here are checking if the key down is &quot;with the control, meta, alt
&gt; graph, or shift key down&quot;. But the comment is talking about events where the
&gt; event itself is due to pressing one of those modifier keys. With the code
&gt; like this, typing A with the shift key down is will not set focus visible.
&gt; That is definitely wrong.

You&apos;re right this is code is wrong and is not setting :focus-visible for Shift + A.

&gt; I’m pretty sure that we don’t dispatch keydown events when the change is
&gt; only a change to a modifier key. If I am right, then no check is needed. If
&gt; I am wrong, the check needs to be different from the one above.

I&apos;ve checked and the keydown event is dispatched even when you just click &quot;Shift&quot; (or other modifier keys), so I&apos;ll need to find a proper way to avoid modifier keys here somehow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734800</commentid>
    <comment_count>36</comment_count>
      <attachid>421919</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-02 03:13:47 -0800</bug_when>
    <thetext>Created attachment 421919
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734802</commentid>
    <comment_count>37</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-02 03:16:57 -0800</bug_when>
    <thetext>(In reply to Manuel Rego Casasnovas from comment #35)
&gt; Thanks for the review.
&gt; 
&gt; (In reply to Darin Adler from comment #34)
&gt; &gt; Comment on attachment 421673 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=421673&amp;action=review
&gt; &gt; 
&gt; &gt; The code has one significant mistake, but I think it’s helpful to land this
&gt; &gt; soon anyway.
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/page/EventHandler.cpp:3538
&gt; &gt; &gt; +    // If the user interacts with the page via the keyboard, the currently focused element should match :focus-visible.
&gt; &gt; &gt; +    // Just typing a modifier key is not considered user interaction with the page.
&gt; &gt; &gt; +    if (!keydown-&gt;ctrlKey() &amp;&amp; !keydown-&gt;metaKey() &amp;&amp; !keydown-&gt;altGraphKey() &amp;&amp; !keydown-&gt;shiftKey())
&gt; &gt; &gt; +        element-&gt;setHasFocusVisible(true);
&gt; &gt; 
&gt; &gt; The code here does not match the comment.
&gt; &gt; 
&gt; &gt; The checks here are checking if the key down is &quot;with the control, meta, alt
&gt; &gt; graph, or shift key down&quot;. But the comment is talking about events where the
&gt; &gt; event itself is due to pressing one of those modifier keys. With the code
&gt; &gt; like this, typing A with the shift key down is will not set focus visible.
&gt; &gt; That is definitely wrong.
&gt; 
&gt; You&apos;re right this is code is wrong and is not setting :focus-visible for
&gt; Shift + A.
&gt; 
&gt; &gt; I’m pretty sure that we don’t dispatch keydown events when the change is
&gt; &gt; only a change to a modifier key. If I am right, then no check is needed. If
&gt; &gt; I am wrong, the check needs to be different from the one above.
&gt; 
&gt; I&apos;ve checked and the keydown event is dispatched even when you just click
&gt; &quot;Shift&quot; (or other modifier keys), so I&apos;ll need to find a proper way to avoid
&gt; modifier keys here somehow.

I&apos;ve changed this check by:

    if (keydown-&gt;modifierKeys().isEmpty() || ((keydown-&gt;shiftKey() || keydown-&gt;capsLockKey()) &amp;&amp; !initialKeyEvent.text().isEmpty()))
        element-&gt;setHasFocusVisible(true);

This sets focus-visible for &quot;Shift + a&quot;, but also when Caps Lock is set and you type &quot;a&quot;. However it won&apos;t set it for Shift alone, or Caps Lock alone (or other modifiers alone or in combination with other keys).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734819</commentid>
    <comment_count>38</comment_count>
      <attachid>421926</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-02 05:46:28 -0800</bug_when>
    <thetext>Created attachment 421926
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734879</commentid>
    <comment_count>39</comment_count>
      <attachid>421926</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-03-02 09:15:24 -0800</bug_when>
    <thetext>Comment on attachment 421926
Patch for landing

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

&gt; Source/WebCore/dom/Element.cpp:753
&gt; +    if (flag) {
&gt; +        // Elements that support keyboard input (form inputs and contenteditable) always match :focus-visible when focused.
&gt; +        if (isTextField() || isContentEditable())
&gt; +            setHasFocusVisible(true);
&gt; +    } else
&gt; +        setHasFocusVisible(false);

I&apos;d use a lambda along the lines of

auto computeHasFocusVisible = [&amp;] {
    if (!flag)
         return false;
    return isTextField() || isContentEditable();
};
setHasFocusVisible(computeHasFocusVisible()):

&gt; Source/WebCore/dom/Element.h:322
&gt;      bool hovered() const { return isUserActionElement() &amp;&amp; isUserActionElementHovered(); }
&gt;      bool focused() const { return isUserActionElement() &amp;&amp; isUserActionElementFocused(); }
&gt;      bool isBeingDragged() const { return isUserActionElement() &amp;&amp; isUserActionElementDragged(); }
&gt; +    bool hasFocusVisible() const { return hasNodeFlag(NodeFlag::HasFocusVisible); };

This could use UserActionElementSet similar to focused/hovered. On the other hand I think that exist because earlier Node flag shortage. We currently have a bunch free so it would be mostly for consistency. I guess adding a node flag is fine for now too.

&gt; Source/WebCore/page/FrameView.cpp:2277
&gt; -        if (anchorElement-&gt;isFocusable())
&gt; +        if (anchorElement-&gt;isFocusable()) {
&gt; +            anchorElement-&gt;setHasFocusVisible(true);
&gt;              document.setFocusedElement(anchorElement.get());
&gt; -        else {
&gt; +        } else {
&gt;              document.setFocusedElement(nullptr);
&gt;              document.setFocusNavigationStartingNode(anchorElement.get());
&gt;          }

Why doesn&apos;t the other branch clear the flag?

&gt; Source/WebCore/style/ElementRuleCollector.cpp:161
&gt; +    if (matchesFocusVisiblePseudoClass(element()))
&gt; +        collectMatchingRulesForList(matchRequest.ruleSet-&gt;focusVisiblePseudoClassRules(), matchRequest);

I don&apos;t think you need any of the ElementRuleCollector and RuleSet changes in this patch. Focus is popular as universal rule *:focus so it has this special optimization. None of this should be needed for functionality and is better done separately if needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734901</commentid>
    <comment_count>40</comment_count>
      <attachid>421956</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-02 10:01:06 -0800</bug_when>
    <thetext>Created attachment 421956
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734905</commentid>
    <comment_count>41</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-03-02 10:07:02 -0800</bug_when>
    <thetext>&gt; &gt; Source/WebCore/page/FrameView.cpp:2277
&gt; &gt; -        if (anchorElement-&gt;isFocusable())
&gt; &gt; +        if (anchorElement-&gt;isFocusable()) {
&gt; &gt; +            anchorElement-&gt;setHasFocusVisible(true);
&gt; &gt;              document.setFocusedElement(anchorElement.get());
&gt; &gt; -        else {
&gt; &gt; +        } else {
&gt; &gt;              document.setFocusedElement(nullptr);
&gt; &gt;              document.setFocusNavigationStartingNode(anchorElement.get());
&gt; &gt;          }
&gt; 
&gt; Why doesn&apos;t the other branch clear the flag?

Actually doesn&apos;t document.setFocusedElement() call Element:::setFocus() making the separate setHasFocusVisible call here redundant?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734906</commentid>
    <comment_count>42</comment_count>
      <attachid>421926</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-02 10:07:39 -0800</bug_when>
    <thetext>Comment on attachment 421926
Patch for landing

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

Thanks for the review Antii, uploaded a new version applying your suggestions. PTAL.

&gt;&gt; Source/WebCore/dom/Element.cpp:753
&gt;&gt; +        setHasFocusVisible(false);
&gt; 
&gt; I&apos;d use a lambda along the lines of
&gt; 
&gt; auto computeHasFocusVisible = [&amp;] {
&gt;     if (!flag)
&gt;          return false;
&gt;     return isTextField() || isContentEditable();
&gt; };
&gt; setHasFocusVisible(computeHasFocusVisible()):

I&apos;ve used a lambda, but I have to add hasFocusVisible() as condition in the last return. Otherwise we&apos;ll be setting it to false when we don&apos;t want, for example if we focus with TAB a DIV#tabindex, it&apos;s not a text field or a contenteditable but it should still match :focus-visible.

&gt;&gt; Source/WebCore/dom/Element.h:322
&gt;&gt; +    bool hasFocusVisible() const { return hasNodeFlag(NodeFlag::HasFocusVisible); };
&gt; 
&gt; This could use UserActionElementSet similar to focused/hovered. On the other hand I think that exist because earlier Node flag shortage. We currently have a bunch free so it would be mostly for consistency. I guess adding a node flag is fine for now too.

Good point. This is consistent with :focus-within thought. :-)

What about changing both :focus-visible and :focus-within in a follow up patch?

&gt;&gt; Source/WebCore/page/FrameView.cpp:2277
&gt;&gt;          }
&gt; 
&gt; Why doesn&apos;t the other branch clear the flag?

We could clear it there but it doesn&apos;t seem required.

In the else branch we&apos;re going to be end up calling Element::focus(false), if there&apos;s any focused element right now. That would clear the flag for that element (if it&apos;s the anchorElement or any other). So I don&apos;t think we need to do anything here.

&gt;&gt; Source/WebCore/style/ElementRuleCollector.cpp:161
&gt;&gt; +        collectMatchingRulesForList(matchRequest.ruleSet-&gt;focusVisiblePseudoClassRules(), matchRequest);
&gt; 
&gt; I don&apos;t think you need any of the ElementRuleCollector and RuleSet changes in this patch. Focus is popular as universal rule *:focus so it has this special optimization. None of this should be needed for functionality and is better done separately if needed.

:focus-visible is expected to replace :focus (now :-webkit-direct-focus in WebKit) in the default UA style sheet. Anyway it&apos;s true this is not needed for functionality for this patch, and if we want to add this, we could do it later. I&apos;ve removed it from the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734908</commentid>
    <comment_count>43</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2021-03-02 10:09:41 -0800</bug_when>
    <thetext>(In reply to Antti Koivisto from comment #41)
&gt; &gt; &gt; Source/WebCore/page/FrameView.cpp:2277
&gt; &gt; &gt; -        if (anchorElement-&gt;isFocusable())
&gt; &gt; &gt; +        if (anchorElement-&gt;isFocusable()) {
&gt; &gt; &gt; +            anchorElement-&gt;setHasFocusVisible(true);
&gt; &gt; &gt;              document.setFocusedElement(anchorElement.get());
&gt; &gt; &gt; -        else {
&gt; &gt; &gt; +        } else {
&gt; &gt; &gt;              document.setFocusedElement(nullptr);
&gt; &gt; &gt;              document.setFocusNavigationStartingNode(anchorElement.get());
&gt; &gt; &gt;          }
&gt; &gt; 
&gt; &gt; Why doesn&apos;t the other branch clear the flag?
&gt; 
&gt; Actually doesn&apos;t document.setFocusedElement() call Element:::setFocus()
&gt; making the separate setHasFocusVisible call here redundant?

Element:::setFocus() is not always going to always end up calling setHasFocusVisible(true|false).

If we navigate with the keybaord, or in this case with anchors, we call setHasFocusVisible(true) before Element:::setFocus().
Element:::setFocus() will only call setHasFocusVisible(true) for inputs and contenteditable elements. Or call setHasFocusVisible(false) if the element loses focus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1734943</commentid>
    <comment_count>44</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-03-02 11:22:10 -0800</bug_when>
    <thetext>&gt; :focus-visible is expected to replace :focus (now :-webkit-direct-focus in
&gt; WebKit) in the default UA style sheet. Anyway it&apos;s true this is not needed
&gt; for functionality for this patch, and if we want to add this, we could do it
&gt; later. I&apos;ve removed it from the patch.

Ok, in that case optimizing for it makes sense. Still better done separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735199</commentid>
    <comment_count>45</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-02 22:43:58 -0800</bug_when>
    <thetext>Committed r273812: &lt;https://commits.webkit.org/r273812&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 421956.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420600</attachid>
            <date>2021-02-16 22:53:20 -0800</date>
            <delta_ts>2021-02-17 02:12:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210217075318.patch</filename>
            <type>text/plain</type>
            <size>30905</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uMmQzMmQyODdhMTlmNzIyYWQyZmU2MzM5YmNhZWJh
ZDk5ZTU3ZjJiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDIxLTAyLTE2ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIG9uIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbykuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtKgorCisgICAg
ICAgICogY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKFdlYkNv
cmU6Om1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyk6IENoZWNrIGVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkuCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RWxlbWVudDo6c2V0Rm9jdXMpOiBDYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSgpLCBlbnN1cmlu
ZyB0aGF0IGl0J3MgYWx3YXlzIHRydWUgZm9yIGVsZW1lbnRzIHRoYXQgc3VwcG9ydCBrZXlib2Fy
ZCBpbnB1dC4KKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnNldEhhc0ZvY3VzVmlzaWJsZSk6
IE5ldyBtZXRob2QgZ2F0ZWQgYmVoaW5kIHRoZSBleHBlcmltZW50YWwgZmxhZy4KKyAgICAgICAg
KFdlYkNvcmU6OkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIpOiBDYWxsIHNldEhhc0ZvY3Vz
VmlzaWJsZSh0cnVlKSBmb3IgdGhlIGZvY3VzZWQgZWxlbWVudCBhZnRlciBrZXlwcmVzcy4KKyAg
ICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmZvY3VzKTogTWFuYWdlIHNjcmlwdCBmb2N1cyBrZWVw
aW5nIHRyYWNrIG9mIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVudCBtYXRjaGluZyAob3Igbm90KSA6
Zm9jdXMtdmlzaWJsZSwKKyAgICAgICAgdG8gbGF0ZXIgY2FsbCBzZXRIYXNGb2N1c1Zpc2libGUo
KSBvbiB0aGUgbmV3bHkgZm9jdXNlZCBlbGVtZW50LgorICAgICAgICAqIGRvbS9FbGVtZW50Lmg6
CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpoYXNGb2N1c1Zpc2libGUgY29uc3QpOiBPdmVy
cmlkZSBkZWZhdWx0RXZlbnRIYW5kbGVyKCkgYW5kIGFkZCBuZXcgbWV0aG9kcyBzaWduYXR1cmUu
CisgICAgICAgICogZG9tL05vZGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6OmZsYWdIYXNG
b2N1c1Zpc2libGUpOiBBZGQgbmV3IGZsYWcgZm9yIDpmb2N1cy12aXNpYmxlIG1hdGNoaW5nLgor
ICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZv
Y3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTogQ2FsbCBzZXRIYXNG
b2N1c1Zpc2libGUodHJ1ZSkgZm9yIGtleWJvYXJkIGZvY3VzLgorICAgICAgICAqIHBhZ2UvRnJh
bWVWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2Nyb2xsVG9GcmFnbWVu
dEludGVybmFsKTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGFuY2hvciBmb2N1
cy4KKyAgICAgICAgKiBzdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6RWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGluZ1J1bGVz
KTogQWRkIDpmb2N1cy12aXNpYmxlIHJ1bGVzIHN0dWZmIGxpa2Ugd2UgYWxyZWFkeSBoYXZlIGZv
ciA6Zm9jdXMuCisgICAgICAgICogc3R5bGUvUnVsZVNldC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6UnVsZVNldDo6YWRkUnVsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U3R5
bGU6OlJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZTo6UnVsZVNldDo6c2hyaW5rVG9GaXQpOiBEaXR0by4KKyAgICAgICAgKiBzdHlsZS9S
dWxlU2V0Lmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6Zm9jdXNWaXNpYmxl
UHNldWRvQ2xhc3NSdWxlcyBjb25zdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1N0eWxlU2hh
cmluZ1Jlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFyaW5nUmVzb2x2
ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBmb3IgaGFzRm9j
dXNWaXNpYmxlKCkuCisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdv
QGlnYWxpYS5jb20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2lu
ZyBhbmQgZXhwZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
ZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0
b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oCmluZGV4IDZmNzdmOWU2NGJjYmJkM2IyNmU4MmFlOTUx
NTFmMGQ4Y2UwZmJhZWQuLjgwMDEzZjA1ZjFlZGUxYmJjMDY2OTA4NjJkODJkZjkzZTRmY2M5N2Yg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rp
b25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlv
bnMuaApAQCAtNDc0LDcgKzQ3NCwxMCBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgbWF0Y2hlc0ZvY3Vz
UHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKIAogQUxXQVlTX0lOTElORSBib29s
IG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhjb25zdCBFbGVtZW50JiBlbGVtZW50KQog
ewotICAgIHJldHVybiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmZvcmNlUHNldWRvU3RhdGUo
ZWxlbWVudCwgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAgICBpZiAo
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRlKGVsZW1lbnQsIENTU1Nl
bGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSkpCisgICAgICAgIHJldHVybiB0cnVlOwor
CisgICAgcmV0dXJuIGVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgJiYgaXNGcmFtZUZvY3VzZWQo
ZWxlbWVudCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cAppbmRleCBmODg2YTBmY2Q3ZTkwZTUyMWU1ZWI3Yzc3Yzc3Njc3MzI0NGRiNzFhLi44NGVmNTZl
ZGFmYWNhZmE4NTliZTQwOGFhNTRjZjIxM2QyMWZkZjJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3Bw
CkBAIC03NDQsNiArNzQ0LDI2IEBAIHZvaWQgRWxlbWVudDo6c2V0Rm9jdXMoYm9vbCBmbGFnKQog
CiAgICAgZm9yIChhdXRvKiBlbGVtZW50ID0gdGhpczsgZWxlbWVudDsgZWxlbWVudCA9IGVsZW1l
bnQtPnBhcmVudEVsZW1lbnRJbkNvbXBvc2VkVHJlZSgpKQogICAgICAgICBlbGVtZW50LT5zZXRI
YXNGb2N1c1dpdGhpbihmbGFnKTsKKworICAgIGlmIChmbGFnKSB7CisgICAgICAgIC8vIEVsZW1l
bnRzIHRoYXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoZm9ybSBpbnB1dHMgYW5kIGNvbnRlbnRl
ZGl0YWJsZSkgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIHdoZW4gZm9jdXNlZC4KKyAgICAg
ICAgaWYgKGlzVGV4dEZpZWxkKCkgfHwgaXNDb250ZW50RWRpdGFibGUoKSkKKyAgICAgICAgICAg
IHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc2V0SGFzRm9j
dXNWaXNpYmxlKGZhbHNlKTsKK30KKwordm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUo
Ym9vbCBmbGFnKQoreworICAgIGlmICghZG9jdW1lbnQoKS5zZXR0aW5ncygpLmZvY3VzVmlzaWJs
ZUVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGhhc0ZvY3VzVmlzaWJsZSgp
ID09IGZsYWcpCisgICAgICAgIHJldHVybjsKKyAgICB7CisgICAgICAgIFN0eWxlOjpQc2V1ZG9D
bGFzc0NoYW5nZUludmFsaWRhdGlvbiBzdHlsZUludmFsaWRhdGlvbigqdGhpcywgQ1NTU2VsZWN0
b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAgICAgICAgc2V0Tm9kZUZsYWcoTm9kZUZs
YWc6Okhhc0ZvY3VzVmlzaWJsZSwgZmxhZyk7CisgICAgfQogfQogCiB2b2lkIEVsZW1lbnQ6OnNl
dEhhc0ZvY3VzV2l0aGluKGJvb2wgZmxhZykKQEAgLTIwMjAsNiArMjA0MCwxNSBAQCB2b2lkIEVs
ZW1lbnQ6OnN0b3JlRGlzcGxheUNvbnRlbnRzU3R5bGUoc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0
eWxlPiBzdHlsZSkKICAgICBjbGVhck5vZGVGbGFnKE5vZGVGbGFnOjpJc0NvbXB1dGVkU3R5bGVJ
bnZhbGlkRmxhZyk7CiB9CiAKK3ZvaWQgRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVu
dCYgZXZlbnQpCit7CisgICAgaWYgKGlzPEtleWJvYXJkRXZlbnQ+KGV2ZW50KSAmJiAoZXZlbnQu
dHlwZSgpID09IGV2ZW50TmFtZXMoKS5rZXlwcmVzc0V2ZW50KSAmJiBmb2N1c2VkKCkpIHsKKyAg
ICAgICAgLy8gSWYgdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdmlhIHRoZSBrZXli
b2FyZCwgdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlLgorICAgICAgICBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfQorICAgIE5v
ZGU6OmRlZmF1bHRFdmVudEhhbmRsZXIoZXZlbnQpOworfQorCiAvLyBSZXR1cm5zIHRydWUgaXMg
dGhlIGdpdmVuIGF0dHJpYnV0ZSBpcyBhbiBldmVudCBoYW5kbGVyLgogLy8gV2UgY29uc2lkZXIg
YW4gZXZlbnQgaGFuZGxlciBhbnkgYXR0cmlidXRlIHRoYXQgYmVnaW5zIHdpdGggIm9uIi4KIC8v
IEl0IGlzIGEgc2ltcGxlIHNvbHV0aW9uIHRoYXQgaGFzIHRoZSBhZHZhbnRhZ2Ugb2Ygbm90IHJl
cXVpcmluZyBhbnkKQEAgLTMwMDcsNiArMzAzNiw5IEBAIHZvaWQgRWxlbWVudDo6Zm9jdXMoU2Vs
ZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGly
CiAgICAgICAgIHJldHVybjsKIAogICAgIGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVmKHRoaXMtPmRv
Y3VtZW50KCkpOworICAgIC8vIEZvciBzY3JpcHQgZm9jdXMgdGhlIG5ld2x5IGZvY3VzZWQgZWxl
bWVudCBzaG91bGQgbWF0Y2ggKG9yIG5vdCkgOmZvY3VzLXZpc2libGUgaWYgdGhlIGFjdGl2ZSBl
bGVtZW50IG1hdGNoZXMgKG9yIG5vdCkgOmZvY3VzLXZpc2libGUuCisgICAgLy8gSWYgdGhlcmUn
cyBubyBhY3RpdmUgZWxlbWVudCB0aGVuIHNjcmlwdCBmb2N1cyBhbHdheXMgbWF0Y2hlcyA6Zm9j
dXMtdmlzaWJsZS4KKyAgICBib29sIG5ld2x5Rm9jdXNlZEVsZW1lbnRTaG91bGRNYXRjaEZvY3Vz
VmlzaWJsZSA9IGRvY3VtZW50LT5mb2N1c2VkRWxlbWVudCgpID8gZG9jdW1lbnQtPmZvY3VzZWRF
bGVtZW50KCktPmhhc0ZvY3VzVmlzaWJsZSgpIDogdHJ1ZTsKICAgICBpZiAoZG9jdW1lbnQtPmZv
Y3VzZWRFbGVtZW50KCkgPT0gdGhpcykgewogICAgICAgICBpZiAoZG9jdW1lbnQtPnBhZ2UoKSkK
ICAgICAgICAgICAgIGRvY3VtZW50LT5wYWdlKCktPmNocm9tZSgpLmNsaWVudCgpLmVsZW1lbnRE
aWRSZWZvY3VzKCp0aGlzKTsKQEAgLTMwNDIsMTEgKzMwNzQsMTYgQEAgdm9pZCBFbGVtZW50Ojpm
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVj
dGlvbiBkaXIKICAgICAgICAgaWYgKCFmcmFtZS5oYXNIYWRVc2VySW50ZXJhY3Rpb24oKSAmJiAh
ZnJhbWUuaXNNYWluRnJhbWUoKSAmJiAhZG9jdW1lbnQtPnRvcERvY3VtZW50KCkuc2VjdXJpdHlP
cmlnaW4oKS5pc1NhbWVPcmlnaW5Eb21haW4oZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkpKQog
ICAgICAgICAgICAgcmV0dXJuOwogCisgICAgICAgIGlmICghbmV3VGFyZ2V0LT5oYXNGb2N1c1Zp
c2libGUoKSkKKyAgICAgICAgICAgIG5ld1RhcmdldC0+c2V0SGFzRm9jdXNWaXNpYmxlKG5ld2x5
Rm9jdXNlZEVsZW1lbnRTaG91bGRNYXRjaEZvY3VzVmlzaWJsZSk7CisKICAgICAgICAgLy8gRm9j
dXMgYW5kIGNoYW5nZSBldmVudCBoYW5kbGVycyBjYW4gY2F1c2UgdXMgdG8gbG9zZSBvdXIgbGFz
dCByZWYuCiAgICAgICAgIC8vIElmIGEgZm9jdXMgZXZlbnQgaGFuZGxlciBjaGFuZ2VzIHRoZSBm
b2N1cyB0byBhIGRpZmZlcmVudCBub2RlIGl0CiAgICAgICAgIC8vIGRvZXMgbm90IG1ha2Ugc2Vu
c2UgdG8gY29udGludWUgYW5kIHVwZGF0ZSBhcHBlYXJlbmNlLgotICAgICAgICBpZiAoIXBhZ2Ut
PmZvY3VzQ29udHJvbGxlcigpLnNldEZvY3VzZWRFbGVtZW50KG5ld1RhcmdldC5nZXQoKSwgKmRv
Y3VtZW50LT5mcmFtZSgpLCBkaXJlY3Rpb24pKQorICAgICAgICBpZiAoIXBhZ2UtPmZvY3VzQ29u
dHJvbGxlcigpLnNldEZvY3VzZWRFbGVtZW50KG5ld1RhcmdldC5nZXQoKSwgKmRvY3VtZW50LT5m
cmFtZSgpLCBkaXJlY3Rpb24pKSB7CisgICAgICAgICAgICBuZXdUYXJnZXQtPnNldEhhc0ZvY3Vz
VmlzaWJsZShmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KICAgICB9CiAK
ICAgICBuZXdUYXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50KHJlc3RvcmF0aW9uTW9kZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaAppbmRleCA5NmJkNzYwM2ZlZDc0MWU5MjcxZDliYjVhMmVhNjE4YzQwNzk4
NDNjLi5iMmYwODM2YWY0MjI1OWI1ZTI5NzcwMTA4MjkwYTEyN2IyMGY3YWRkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmgKQEAgLTI2Nyw2ICsyNjcsOCBAQCBwdWJsaWM6CiAgICAgLy8gT25seSBjYWxsZWQg
YnkgdGhlIHBhcnNlciBpbW1lZGlhdGVseSBhZnRlciBlbGVtZW50IGNvbnN0cnVjdGlvbi4KICAg
ICB2b2lkIHBhcnNlclNldEF0dHJpYnV0ZXMoY29uc3QgVmVjdG9yPEF0dHJpYnV0ZT4mKTsKIAor
ICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYpIG92ZXJyaWRlOworCiAgICAgYm9v
bCBpc0V2ZW50SGFuZGxlckF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdDsKICAgICBi
b29sIGlzSmF2YVNjcmlwdFVSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdDsKIApA
QCAtMzE5LDEyICszMjEsMTQgQEAgcHVibGljOgogICAgIGJvb2wgaG92ZXJlZCgpIGNvbnN0IHsg
cmV0dXJuIGlzVXNlckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50SG92ZXJl
ZCgpOyB9CiAgICAgYm9vbCBmb2N1c2VkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxl
bWVudCgpICYmIGlzVXNlckFjdGlvbkVsZW1lbnRGb2N1c2VkKCk7IH0KICAgICBib29sIGlzQmVp
bmdEcmFnZ2VkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNl
ckFjdGlvbkVsZW1lbnREcmFnZ2VkKCk7IH0KKyAgICBib29sIGhhc0ZvY3VzVmlzaWJsZSgpIGNv
bnN0IHsgcmV0dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUpOyB9Owog
ICAgIGJvb2wgaGFzRm9jdXNXaXRoaW4oKSBjb25zdCB7IHJldHVybiBoYXNOb2RlRmxhZyhOb2Rl
RmxhZzo6SGFzRm9jdXNXaXRoaW4pOyB9OwogCiAgICAgdmlydHVhbCB2b2lkIHNldEFjdGl2ZShi
b29sID0gdHJ1ZSwgYm9vbCBwYXVzZSA9IGZhbHNlLCBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGUg
PSBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGU6OkFsbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEhv
dmVyZWQoYm9vbCA9IHRydWUsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZh
bGlkYXRpb25TY29wZTo6QWxsKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9jdXMoYm9vbCk7CiAg
ICAgdm9pZCBzZXRCZWluZ0RyYWdnZWQoYm9vbCk7CisgICAgdm9pZCBzZXRIYXNGb2N1c1Zpc2li
bGUoYm9vbCk7CiAgICAgdm9pZCBzZXRIYXNGb2N1c1dpdGhpbihib29sKTsKIAogICAgIE9wdGlv
bmFsPGludD4gdGFiSW5kZXhTZXRFeHBsaWNpdGx5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAppbmRleCAy
ZWNkMTVkNmQ5NGQ1YTk0YWY3NTlmYmQ1NTc2NTI1N2FmNGQ2NmUxLi5jYTcwYWMyMjI5YTAxOTQ0
MTQ1YjI0MWRiMzQxZGZlYzNjYTM3OGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
Tm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKQEAgLTUxMCw2ICs1MTAsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzU2hhZG93Um9vdCgpIHsgcmV0dXJu
IHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc1NoYWRvd1Jvb3QpOyB9CiAgICAgc3Rh
dGljIGludDMyX3QgZmxhZ0lzSFRNTCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5v
ZGVGbGFnOjpJc0hUTUxFbGVtZW50KTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc0xpbmso
KSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNMaW5rKTsgfQorICAg
IHN0YXRpYyBpbnQzMl90IGZsYWdIYXNGb2N1c1Zpc2libGUoKSB7IHJldHVybiBzdGF0aWNfY2Fz
dDxpbnQzMl90PihOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlKTsgfQogICAgIHN0YXRpYyBpbnQz
Ml90IGZsYWdIYXNGb2N1c1dpdGhpbigpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5v
ZGVGbGFnOjpIYXNGb2N1c1dpdGhpbik7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNQYXJz
aW5nQ2hpbGRyZW5GaW5pc2hlZCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVG
bGFnOjpJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKTsgfQogI2VuZGlmIC8vIEVOQUJMRShKSVQp
CkBAIC01NTAsOCArNTUxLDkgQEAgcHJvdGVjdGVkOgogICAgICAgICBDb250YWluc0Z1bGxTY3Jl
ZW5FbGVtZW50ID0gMSA8PCAyNSwKICNlbmRpZgogICAgICAgICBJc0NvbXB1dGVkU3R5bGVJbnZh
bGlkRmxhZyA9IDEgPDwgMjYsCisgICAgICAgIEhhc0ZvY3VzVmlzaWJsZSA9IDEgPDwgMjcsCiAK
LSAgICAgICAgLy8gQml0cyAyNy0zMSBhcmUgZnJlZS4KKyAgICAgICAgLy8gQml0cyAyOC0zMSBh
cmUgZnJlZS4KICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUYWJJbmRleFN0YXRlIDogdWludDhf
dCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggMDdhYmFkMDYw
ZTAxM2ViOGI3YWM1NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3OTA5NTk3ZWMyN2FlNWFhNzE5
YTY5NWMzMDQyNTEwMjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0Nv
bnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNw
cApAQCAtNTMzLDYgKzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJ
bkRvY3VtZW50T3JkZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgICAgIH0K
ICAgICB9CiAKKyAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgZWxl
bWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlv
bik7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXgg
NWFmMWRjMmI1ODVjYmJlYTEwNzI5Yjg3YTg4OWFjNGRkMjY5Y2I0Mi4uM2IxODYwM2FlZjVkZDVi
NjcxNTEzYmI1MjljNmJjMjZkOWM4ZTQ0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApA
QCAtMjI2OCw5ICsyMjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50
ZXJuYWwoY29uc3QgU3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIpCiAgICAgCiAgICAgLy8gSWYg
dGhlIGFuY2hvciBhY2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3ZlIGZvY3VzIHRoZXJlIHRvIGFp
ZCB1c2VycyByZWx5aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24uCiAgICAgaWYgKGFuY2hvckVs
ZW1lbnQpIHsKLSAgICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlzRm9jdXNhYmxlKCkpCisgICAg
ICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7CisgICAgICAgICAgICBhbmNo
b3JFbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgICAgICAgICBkb2N1bWVu
dC5zZXRGb2N1c2VkRWxlbWVudChhbmNob3JFbGVtZW50LmdldCgpKTsKLSAgICAgICAgZWxzZSB7
CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxlbWVu
dChudWxscHRyKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzTmF2aWdhdGlvblN0YXJ0
aW5nTm9kZShhbmNob3JFbGVtZW50LmdldCgpKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNv
cmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4IGUxODBjY2RmYTlmNjhmYWFj
MDkxMGMyMzNjMjE4ZDdlZmQ2YTA0YTQuLmNjNDhjNGE2NjhkNzA5M2YzMjNiNDAwZjRlODBjMTBj
MDY0YjhlOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29s
bGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rv
ci5jcHAKQEAgLTE1Nyw2ICsxNTcsOCBAQCB2b2lkIEVsZW1lbnRSdWxlQ29sbGVjdG9yOjpjb2xs
ZWN0TWF0Y2hpbmdSdWxlcyhjb25zdCBNYXRjaFJlcXVlc3QmIG1hdGNoUmVxdWVzdAogICAgICAg
ICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmxpbmtQ
c2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAgaWYgKG1hdGNoZXNGb2N1c1Bz
ZXVkb0NsYXNzKGVsZW1lbnQoKSkpCiAgICAgICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVzRm9yTGlz
dChtYXRjaFJlcXVlc3QucnVsZVNldC0+Zm9jdXNQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVx
dWVzdCk7CisgICAgaWYgKG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhlbGVtZW50KCkp
KQorICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVT
ZXQtPmZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMoKSwgbWF0Y2hSZXF1ZXN0KTsKICAgICBj
b2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnRhZ1J1bGVz
KGVsZW1lbnQoKS5sb2NhbE5hbWUoKSwgZWxlbWVudCgpLmlzSFRNTEVsZW1lbnQoKSAmJiBlbGVt
ZW50KCkuZG9jdW1lbnQoKS5pc0hUTUxEb2N1bWVudCgpKSwgbWF0Y2hSZXF1ZXN0KTsKICAgICBj
b2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnVuaXZlcnNh
bFJ1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9SdWxlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCmluZGV4
IDNhNWI1NjEwYmE3NmMzOTY3NDBmNjEwMDFjZWI4ZDJmMGEzZDk4YzkuLmU0YTlmMDY1NjZjMzIx
NDEzOTY3ZTNjMWY2ZDEwYTZiOTgwZTM1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1J1bGVTZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCkBA
IC05OCw2ICs5OCw3IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1
bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgY29uc3QgQ1NTU2Vs
ZWN0b3IqIGNsYXNzU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBs
aW5rU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBmb2N1c1NlbGVj
dG9yID0gbnVsbHB0cjsKKyAgICBjb25zdCBDU1NTZWxlY3RvciogZm9jdXNWaXNpYmxlU2VsZWN0
b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBob3N0UHNldWRvQ2xhc3NTZWxl
Y3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGN1c3RvbVBzZXVkb0VsZW1l
bnRTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIHNsb3R0ZWRQc2V1
ZG9FbGVtZW50U2VsZWN0b3IgPSBudWxscHRyOwpAQCAtMTYyLDYgKzE2Myw5IEBAIHZvaWQgUnVs
ZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5k
ZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFz
c0ZvY3VzOgogICAgICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0Ns
YXNzRm9jdXNWaXNpYmxlOgorICAgICAgICAgICAgICAgIGZvY3VzVmlzaWJsZVNlbGVjdG9yID0g
c2VsZWN0b3I7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIENTU1Nl
bGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3Q6CiAgICAgICAgICAgICAgICAgaG9zdFBzZXVkb0NsYXNz
U2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0OSw2ICsy
NTMsMTEgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0eWxlUnVsZSYgcnVsZSwgdW5z
aWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAorICAgIGlmIChmb2N1c1Zpc2libGVTZWxlY3RvcikgeworICAgICAgICBtX2ZvY3VzVmlzaWJs
ZVBzZXVkb0NsYXNzUnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKwogICAgIGlmICh0YWdTZWxlY3RvcikgewogICAgICAgICBhZGRUb1J1bGVTZXQodGFnU2Vs
ZWN0b3ItPnRhZ1FOYW1lKCkubG9jYWxOYW1lKCksIG1fdGFnTG9jYWxOYW1lUnVsZXMsIHJ1bGVE
YXRhKTsKICAgICAgICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9yLT50YWdMb3dlcmNhc2VMb2Nh
bE5hbWUoKSwgbV90YWdMb3dlcmNhc2VMb2NhbE5hbWVSdWxlcywgcnVsZURhdGEpOwpAQCAtMzk2
LDYgKzQwNSw3IEBAIHZvaWQgUnVsZVNldDo6dHJhdmVyc2VSdWxlRGF0YXMoRnVuY3Rpb24mJiBm
dW5jdGlvbikKICAgICB0cmF2ZXJzZVZlY3RvcihtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXMp
OwogICAgIHRyYXZlcnNlVmVjdG9yKG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlcyk7CiAgICAgdHJh
dmVyc2VWZWN0b3IobV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMpOworICAgIHRyYXZlcnNlVmVjdG9y
KG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3IobV91
bml2ZXJzYWxSdWxlcyk7CiB9CiAKQEAgLTQ5Nyw2ICs1MDcsNyBAQCB2b2lkIFJ1bGVTZXQ6OnNo
cmlua1RvRml0KCkKICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CiAg
ICAgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9mb2N1
c1BzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKKyAgICBtX2ZvY3VzVmlzaWJsZVBzZXVk
b0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3VuaXZlcnNhbFJ1bGVzLnNocmlua1Rv
Rml0KCk7CiAgICAgbV9wYWdlUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX2ZlYXR1cmVzLnNo
cmlua1RvRml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKaW5kZXggOTlhYTE2MGQ5MDY4NDRmYWQz
NGRjMWEyNzAxNmEwMDM2YmRlMzA3OS4uM2Q1YjViMzE0NzAwYzUwZjQ1ZGMxNWQ4NDY2NzQ2YzBl
OWEwNjhkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaApAQCAtMTI5LDYgKzEyOSw3IEBAIHB1Ymxp
YzoKICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciYgc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcygp
IGNvbnN0IHsgcmV0dXJuIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNvbnN0
IFJ1bGVEYXRhVmVjdG9yJiBwYXJ0UHNldWRvRWxlbWVudFJ1bGVzKCkgY29uc3QgeyByZXR1cm4g
bV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3IqIGZv
Y3VzUHNldWRvQ2xhc3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzUHNldWRvQ2xhc3NS
dWxlczsgfQorICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1c1Zpc2libGVQc2V1ZG9DbGFz
c1J1bGVzKCkgY29uc3QgeyByZXR1cm4gJm1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlczsg
fQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiB1bml2ZXJzYWxSdWxlcygpIGNvbnN0IHsgcmV0
dXJuICZtX3VuaXZlcnNhbFJ1bGVzOyB9CiAKICAgICBjb25zdCBWZWN0b3I8U3R5bGVSdWxlUGFn
ZSo+JiBwYWdlUnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VSdWxlczsgfQpAQCAtMTY3LDYg
KzE2OCw3IEBAIHByaXZhdGU6CiAgICAgUnVsZURhdGFWZWN0b3IgbV9zbG90dGVkUHNldWRvRWxl
bWVudFJ1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9yIG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlczsK
ICAgICBSdWxlRGF0YVZlY3RvciBtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsKKyAgICBSdWxlRGF0
YVZlY3RvciBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7CiAgICAgUnVsZURhdGFWZWN0
b3IgbV91bml2ZXJzYWxSdWxlczsKICAgICBWZWN0b3I8U3R5bGVSdWxlUGFnZSo+IG1fcGFnZVJ1
bGVzOwogICAgIHVuc2lnbmVkIG1fcnVsZUNvdW50IHsgMCB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3ZjgxYjJjNDc3ZmI0ODc2ZDdh
NTYwZjE0NzllZDY5YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRhMjM5NmFkNjRmMDIzMDg1NTQ5
ODI1OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdSZXNvbHZlci5j
cHAKQEAgLTIyNyw2ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHls
ZVdpdGhFbGVtZW50KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0eQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuZm9jdXNlZCgpICE9IGVsZW1l
bnQuZm9jdXNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKGNhbmRpZGF0ZUVs
ZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNGb2N1c1Zpc2libGUoKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3VzV2l0
aGluKCkgIT0gZWxlbWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSAhPSBlbGVtZW50Lmlz
QmVpbmdEcmFnZ2VkKCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAxOTI5MGZm
OTFiNDJlNWRhMWRiZjk2NWM0NzRjMWVjYmM0MmZhNGRiLi5kNDQ0MjcxNzg5OTljYmNhODU2YmVh
OGNmMzUzZTkwNzk4OTlhNDhlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMyBAQAorMjAyMS0wMi0xNiAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdh
bGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0b3JzXSA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRh
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIy
MDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBk
YXRlIGV4cGVjdGF0aW9ucywgbW9zdCBvZiB0aGUgOmZvY3VzLXZpc2libGUgdGVzdHMgYXJlIHBh
c3Npbmcgbm93LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dDoKKwogMjAyMS0w
Mi0xNiAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbc2VsZWN0b3JzXSA6Zm9jdXMtdmlzaWJsZSBwYXJzaW5nIGFuZCBleHBlcmltZW50YWwgZmxh
ZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAppbmRleCBjMTNiZTAwZmQ5NWU3
M2RiNDE3OGRjMjhlNGQ0MzkwM2E5OWQ0N2Y0Li5kMDYwNTQ4Y2ZhMmQxYWM3NzJmMGMxNWI2MjU4
YTJiMWQ3ODg2NDMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dApAQCAt
MSw2ICsxLDYgQEAKIAogCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMnIHBzZXVkby1jbGFzcyBt
YXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKLUZBSUwgQ2hlY2tzIHRoYXQgJzpm
b2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBo
YW5kbGVyIGFzc2VydF91bnJlYWNoZWQ6ICc6Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGludmFsaWQg
c2VsZWN0b3IuIFN5bnRheEVycm9yOiBFcnJvcjogYXNzZXJ0X2VxdWFsczogJzpmb2N1cy12aXNp
YmxlJyBtYXRjaGVzIGV2ZW50LnRhcmdldCBleHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVudCBu
b2RlIDxpbnB1dCB0eXBlPSJ0ZXh0Ij48L2lucHV0PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUK
K1BBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBp
bnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtd2l0
aGluJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDI3ZTFhOWFmMmFi
ZThmNjdiODhlYmZjNzcwY2UzMzM0MjM3OTFlZGUuLjdmZTUwMzNjZThhNDhjNjY2ODE4OTI5MmQ4
YTM4Yjk3N2ViZjNjZDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4
dApAQCAtMSw2ICsxLDYgQEAKIAogCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMnIHBzZXVkby1j
bGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgotRkFJTCBDaGVja3Mg
dGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNp
bicgZXZlbnQgaGFuZGxlciBhc3NlcnRfdW5yZWFjaGVkOiAnOmZvY3VzLXZpc2libGUnICBpcyBh
biBpbnZhbGlkIHNlbGVjdG9yLiBTeW50YXhFcnJvcjogRXJyb3I6IGFzc2VydF9lcXVhbHM6ICc6
Zm9jdXMtdmlzaWJsZScgbWF0Y2hlcyBldmVudC50YXJnZXQgZXhwZWN0ZWQgbnVsbCBidXQgZ290
IEVsZW1lbnQgbm9kZSA8aW5wdXQgdHlwZT0idGV4dCI+PC9pbnB1dD4gUmVhY2hlZCB1bnJlYWNo
YWJsZSBjb2RlCitQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNz
IG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCiBQQVNTIENoZWNrcyB0aGF0
ICc6Zm9jdXMtd2l0aGluJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2
ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKaW5kZXggODUwYzdhYjE3MDJiMzkz
MjQ5MDM0ZDBiMzM2ZWM5NTZhM2MxOTQzMC4uZWM3N2NlZmMwMjU4MWU2NTUxNTc4MDNlNjk4ZTQz
OGQzYjY4OTMxZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CkBAIC01LDUgKzUsNSBAQCBJZiB0
aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMg
RkFJTFVSRS4gSWYgdGhlIGVsZQogCiBGb2N1cyBtZS4KIAotRkFJTCBLZXlib2FyZCBmb2N1cyBz
aG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZv
ciBESVYjZWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdv
dCAicmdiKDAsIDAsIDApIgorUEFTUyBLZXlib2FyZCBmb2N1cyBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKaW5kZXggYjVhOWVmNDE0ZDJmMzBkOGNm
YjEyZThjYjA2ZGQ5YmQyMzk5YzlhMC4uOTM1ODdkZGRiNjJiNDVmYTRmMDU5YzZhZTllNjVjYjc4
OWVjNzVjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CkBAIC0xOCwxOCArMTgsMTggQEAgSWYg
dGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlz
IEZBSUxVUkUuIElmIHRoZSBlbGUKIAogCiAKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1
dDEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBr
ZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0
MSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2Io
MCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBzaG91
bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNz
ZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDIgc2hvdWxkIGJlIGdyZWVu
IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBG
b2N1cyBlbGVtZW50IElOUFVUI2lucHV0MyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxp
bmVDb2xvciBmb3IgSU5QVVQjaW5wdXQzIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAs
IDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVU
I2lucHV0NCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290
ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ1IHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDUgc2hvdWxkIGJl
IGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgot
RkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6
IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ2IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAi
cmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVu
dCBJTlBVVCNpbnB1dDcgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IElOUFVUI2lucHV0NyBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBi
dXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ4IHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDggc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OSB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9l
cXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ5IHNob3VsZCBiZSBncmVlbiBleHBl
Y3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMg
ZWxlbWVudCBJTlBVVCNpbnB1dDEwIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDEwIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEy
OCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNp
bnB1dDExIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9y
dHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNp
bnB1dDExIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3Qg
InJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEyIHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEyIHNob3VsZCBi
ZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIK
LUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFs
czogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEzIHNob3VsZCBiZSBncmVlbiBleHBlY3Rl
ZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxl
bWVudCBURVhUQVJFQSNpbnB1dDE0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBURVhUQVJFQSNpbnB1dDE0IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAs
IDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MiB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQzIHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1Mg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50
IElOUFVUI2lucHV0NSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ2
IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5
Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDcgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAor
UEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVs
ZW1lbnQgSU5QVVQjaW5wdXQ5IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNp
bnB1dDEwIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9y
dHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDExIHZpYSBt
b3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQg
aW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEyIHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1Mg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVu
dCBURVhUQVJFQSNpbnB1dDE0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA2LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKaW5k
ZXggNWFhY2Q0YjExZjM4YzYzYzFlNjk2OTU4ZjVkNjA2NGYxNDZjYmM0OC4uOTgxMTViMWUxMmQw
MGQwNjQ1ZGIzOTk5NzhhZThlYjZjZjBiMjUyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0CkBA
IC01LDUgKzUsNSBAQCBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0
aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgdGhlIGVsZQogCiBGb2N1cyBtZQogCi1GQUlM
IEZvY3VzIHNob3VsZCBhbHdheXMgbWF0Y2ggOmZvY3VzLXZpc2libGUgb24gY29udGVudCBlZGl0
YWJsZSBkaXZzIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgU1BBTiNlbCBzaG91bGQg
YmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCki
CitQQVNTIEZvY3VzIHNob3VsZCBhbHdheXMgbWF0Y2ggOmZvY3VzLXZpc2libGUgb24gY29udGVu
dCBlZGl0YWJsZSBkaXZzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CmluZGV4IDljN2JkMWRmMTQz
OGViNDE5YTI4MDgwMmQ0ZDUwNTMzODljNjA5ZGIuLjhlYjQ4NGU0MTUyMWRjMWQyMmY3MTgzZGU3
YTllMjMzNzdmOWIxZTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUgQEAg
SWYgdGhlIGJ1dHRvbiB0aGF0IHNheXMgIkkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRpY2FsbHki
IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLAogCiBJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5
LgogCi1GQUlMIEF1dG9mb2N1cyBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2Vx
dWFsczogb3V0bGluZUNvbG9yIGZvciBCVVRUT04jYnV0dG9uIHNob3VsZCBiZSBncmVlbiBleHBl
Y3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgQXV0b2Zv
Y3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMTAtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVkLnR4dApp
bmRleCAyNmJkZWM4NDY3NTg2NzU5NDQyZmIzZWFmZTMzNGZiNTllMzE4YmVjLi4wNDg1ZGFjOGE3
OGY3ZjRjYTVlZTBhZDcxNjg5NTU4OTI5MzFlZmFhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMTAtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQK
QEAgLTMsNSArMyw1IEBAIElmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3Vz
ZWQgYXV0b21hdGljYWxseSIgaGFzIGEgcmVkIGJhY2tncm91bmQsCiAKIEkgd2lsbCBiZSBmb2N1
c2VkIGF1dG9tYXRpY2FsbHkuCiAKLUZBSUwgUHJvZ3JhbW1hdGljIGZvY3VzIG9uIHBhZ2UgbG9h
ZCBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9y
IGZvciBESVYjZWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0
IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBQcm9ncmFtbWF0aWMgZm9jdXMgb24gcGFnZSBsb2Fk
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMTMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dAppbmRl
eCA2YjJhMjRlMWMzZmY5Mzc5MzdkYWEyNjk3NmZiMzVjMmY4NDFmZWM2Li40OWFkOGNlOWMzYzNj
MWM0MTJhMGI5ZDYzNmI0YWZkNjY5YzUzOGM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKQEAg
LTgsNyArOCw1IEBAIElmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiVGFyZ2V0IiBoYXMgYSBncmVl
biBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBhCiBJbml0aWFsCiBUYXJnZXQKIAot
SGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLUZBSUwgOmZvY3VzLXZp
c2libGUgZG9lcyBub3QgbWF0Y2ggYWZ0ZXIgbW91c2UgY2xpY2sgZXZlbiBpZiBwcmV2aW91cyBm
b2N1c2VkIGVsZW1lbnQgd2FzIG1hdGNoaW5nIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6
IG91dGxpbmVDb2xvciBmb3IgRElWI2luaXRpYWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJy
Z2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNp
YmxlIGRvZXMgbm90IG1hdGNoIGFmdGVyIG1vdXNlIGNsaWNrIGV2ZW4gaWYgcHJldmlvdXMgZm9j
dXNlZCBlbGVtZW50IHdhcyBtYXRjaGluZyA6Zm9jdXMtdmlzaWJsZQogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVj
dGVkLnR4dAppbmRleCA2YWRlNTUzMjMxZDg3ZWEwZTRlMWQzYzgwYWEzNmJiMzIxZjcwNzAyLi5m
MTgxMDgwNmIyYzdiZTNkYzEwMGFkOGY4OWI1YWE1ZmM4YTFhZmUzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBl
Y3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKIFRhcmdldAogCi1GQUlMIDpmb2N1cy12aXNpYmxl
IG1hdGNoZXMgYWZ0ZXIgc2NyaXB0IGZvY3VzIG1vdmUgYXNzZXJ0X2VxdWFsczogYmFja2dyb3Vu
ZENvbG9yIGZvciBJTlBVVCNpbnB1dCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1
NSwgMCkiIGJ1dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJsZSBtYXRj
aGVzIGFmdGVyIHNjcmlwdCBmb2N1cyBtb3ZlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAxNi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0CmluZGV4
IDNkODE3M2U4YjhhOTc4NWEzMjFlMjUxMTg4NjNlMGJjYWU3ZTYwNzEuLjQxMmFjMzQ0OWQ5N2Nj
MzA5OTZiOTFlZTUxN2ViMDEyODVjODdkMGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAx
Ni1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKIEluaXRpYWwKIAogCi1GQUlMIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRj
aCBvbiB0ZXh0IGlucHV0cyBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVU
I3RhcmdldCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3Qg
InJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJsZSBhbHdheXMgbWF0Y2ggb24gdGV4
dCBpbnB1dHMKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420620</attachid>
            <date>2021-02-17 02:12:31 -0800</date>
            <delta_ts>2021-02-19 03:11:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210217111229.patch</filename>
            <type>text/plain</type>
            <size>38234</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uMmIyYTk4ODJlY2Y4ZDgyZDE5MDA0MTY5M2M4MGEz
YWJhNzUzYjc5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbykuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtKgorCisgICAg
ICAgICogY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKFdlYkNv
cmU6Om1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyk6IENoZWNrIGVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkuCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RWxlbWVudDo6c2V0Rm9jdXMpOiBXaGVuIGFuIGVsZW1lbnQgbG9zZXMgZm9jdXMgaXQgYWx3
YXlzIGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKS4gV2hlbiBhbiBlbGVtZW50IGdldHMg
Zm9jdXNlZAorICAgICAgICBpdCBjYWxscyBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGVs
ZW1lbnRzIHRoYXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoYXMgdGhleSBhbHdheXMgbWF0Y2gg
OmZvY3VzLXZpc2libGUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0SGFzRm9jdXNW
aXNpYmxlKTogTmV3IG1ldGhvZCBnYXRlZCBiZWhpbmQgdGhlIGV4cGVyaW1lbnRhbCBmbGFnLgor
ICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6IENhbGwgc2V0
SGFzRm9jdXNWaXNpYmxlKHRydWUpIGZvciB0aGUgZm9jdXNlZCBlbGVtZW50IGFmdGVyIGtleXBy
ZXNzLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOiBNYW5hZ2Ugc2NyaXB0IGZv
Y3VzIGtlZXBpbmcgdHJhY2sgb2YgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IG1hdGNoaW5nIChv
ciBub3QpIDpmb2N1cy12aXNpYmxlLAorICAgICAgICB0byBsYXRlciBjYWxsIHNldEhhc0ZvY3Vz
VmlzaWJsZSgpIG9uIHRoZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQuCisgICAgICAgICogZG9tL0Vs
ZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlzaWJsZSBjb25z
dCk6IE92ZXJyaWRlIGRlZmF1bHRFdmVudEhhbmRsZXIoKSBhbmQgYWRkIG5ldyBtZXRob2RzIHNp
Z25hdHVyZS4KKyAgICAgICAgKiBkb20vTm9kZS5oOgorICAgICAgICAoV2ViQ29yZTo6Tm9kZTo6
ZmxhZ0hhc0ZvY3VzVmlzaWJsZSk6IEFkZCBuZXcgZmxhZyBmb3IgOmZvY3VzLXZpc2libGUgbWF0
Y2hpbmcuCisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3JkZXIpOiBDYWxs
IHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3Iga2V5Ym9hcmQgZm9jdXMuCisgICAgICAgICog
cGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzY3JvbGxU
b0ZyYWdtZW50SW50ZXJuYWwpOiBDYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgYW5j
aG9yIGZvY3VzLgorICAgICAgICAqIHN0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0eWxlOjpFbGVtZW50UnVsZUNvbGxlY3Rvcjo6Y29sbGVjdE1hdGNo
aW5nUnVsZXMpOiBBZGQgOmZvY3VzLXZpc2libGUgcnVsZXMgc3R1ZmYgbGlrZSB3ZSBhbHJlYWR5
IGhhdmUgZm9yIDpmb2N1cy4KKyAgICAgICAgKiBzdHlsZS9SdWxlU2V0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0OjphZGRSdWxlKTogRGl0dG8uCisgICAgICAgIChXZWJD
b3JlOjpTdHlsZTo6UnVsZVNldDo6dHJhdmVyc2VSdWxlRGF0YXMpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0OjpzaHJpbmtUb0ZpdCk6IERpdHRvLgorICAgICAgICAq
IHN0eWxlL1J1bGVTZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojpmb2N1
c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzIGNvbnN0KTogRGl0dG8uCisgICAgICAgICogc3R5bGUv
U3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlNoYXJp
bmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdpdGhFbGVtZW50IGNvbnN0KTogQWRkIGNoZWNrIGZv
ciBoYXNGb2N1c1Zpc2libGUoKS4KKwogMjAyMS0wMi0xNiAgTWFudWVsIFJlZ28gQ2FzYXNub3Zh
cyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAgICBbc2VsZWN0b3JzXSA6Zm9jdXMtdmlzaWJs
ZSBwYXJzaW5nIGFuZCBleHBlcmltZW50YWwgZmxhZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmgKaW5kZXggNmY3N2Y5ZTY0YmNiYmQzYjI2
ZTgyYWU5NTE1MWYwZDhjZTBmYmFlZC4uODAwMTNmMDVmMWVkZTFiYmMwNjY5MDg2MmQ4MmRmOTNl
NGZjYzk3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRl
c3RGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVz
dEZ1bmN0aW9ucy5oCkBAIC00NzQsNyArNDc0LDEwIEBAIEFMV0FZU19JTkxJTkUgYm9vbCBtYXRj
aGVzRm9jdXNQc2V1ZG9DbGFzcyhjb25zdCBFbGVtZW50JiBlbGVtZW50KQogCiBBTFdBWVNfSU5M
SU5FIGJvb2wgbWF0Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVs
ZW1lbnQpCiB7Ci0gICAgcmV0dXJuIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1
ZG9TdGF0ZShlbGVtZW50LCBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpOwor
ICAgIGlmIChJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmZvcmNlUHNldWRvU3RhdGUoZWxlbWVu
dCwgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKSkKKyAgICAgICAgcmV0dXJu
IHRydWU7CisKKyAgICByZXR1cm4gZWxlbWVudC5oYXNGb2N1c1Zpc2libGUoKSAmJiBpc0ZyYW1l
Rm9jdXNlZChlbGVtZW50KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuY3BwCmluZGV4IGY4ODZhMGZjZDdlOTBlNTIxZTVlYjdjNzdjNzc2NzczMjQ0ZGI3MWEu
LjRmNmE5YWMyMmFmYTQwZDVlNjFiMDYzNzdhMjY3ZGM0MzgzNzk0ODIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5jcHAKQEAgLTc0NCw2ICs3NDQsMjYgQEAgdm9pZCBFbGVtZW50OjpzZXRGb2N1cyhib29s
IGZsYWcpCiAKICAgICBmb3IgKGF1dG8qIGVsZW1lbnQgPSB0aGlzOyBlbGVtZW50OyBlbGVtZW50
ID0gZWxlbWVudC0+cGFyZW50RWxlbWVudEluQ29tcG9zZWRUcmVlKCkpCiAgICAgICAgIGVsZW1l
bnQtPnNldEhhc0ZvY3VzV2l0aGluKGZsYWcpOworCisgICAgaWYgKGZsYWcpIHsKKyAgICAgICAg
Ly8gRWxlbWVudHMgdGhhdCBzdXBwb3J0IGtleWJvYXJkIGlucHV0IChmb3JtIGlucHV0cyBhbmQg
Y29udGVudGVkaXRhYmxlKSBhbHdheXMgbWF0Y2ggOmZvY3VzLXZpc2libGUgd2hlbiBmb2N1c2Vk
LgorICAgICAgICBpZiAoaXNUZXh0RmllbGQoKSB8fCBpc0NvbnRlbnRFZGl0YWJsZSgpKQorICAg
ICAgICAgICAgc2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOworICAgIH0gZWxzZQorICAgICAgICBz
ZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpOworfQorCit2b2lkIEVsZW1lbnQ6OnNldEhhc0ZvY3Vz
VmlzaWJsZShib29sIGZsYWcpCit7CisgICAgaWYgKCFkb2N1bWVudCgpLnNldHRpbmdzKCkuZm9j
dXNWaXNpYmxlRW5hYmxlZCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoaGFzRm9jdXNW
aXNpYmxlKCkgPT0gZmxhZykKKyAgICAgICAgcmV0dXJuOworICAgIHsKKyAgICAgICAgU3R5bGU6
OlBzZXVkb0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uIHN0eWxlSW52YWxpZGF0aW9uKCp0aGlzLCBD
U1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpOworICAgICAgICBzZXROb2RlRmxh
ZyhOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlLCBmbGFnKTsKKyAgICB9CiB9CiAKIHZvaWQgRWxl
bWVudDo6c2V0SGFzRm9jdXNXaXRoaW4oYm9vbCBmbGFnKQpAQCAtMjAyMCw2ICsyMDQwLDE1IEBA
IHZvaWQgRWxlbWVudDo6c3RvcmVEaXNwbGF5Q29udGVudHNTdHlsZShzdGQ6OnVuaXF1ZV9wdHI8
UmVuZGVyU3R5bGU+IHN0eWxlKQogICAgIGNsZWFyTm9kZUZsYWcoTm9kZUZsYWc6OklzQ29tcHV0
ZWRTdHlsZUludmFsaWRGbGFnKTsKIH0KIAordm9pZCBFbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5k
bGVyKEV2ZW50JiBldmVudCkKK3sKKyAgICBpZiAoaXM8S2V5Ym9hcmRFdmVudD4oZXZlbnQpICYm
IChldmVudC50eXBlKCkgPT0gZXZlbnROYW1lcygpLmtleXByZXNzRXZlbnQpICYmIGZvY3VzZWQo
KSkgeworICAgICAgICAvLyBJZiB0aGUgdXNlciBpbnRlcmFjdHMgd2l0aCB0aGUgcGFnZSB2aWEg
dGhlIGtleWJvYXJkLCB0aGUgY3VycmVudGx5IGZvY3VzZWQgZWxlbWVudCBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUuCisgICAgICAgIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKTsKKyAgICB9
CisgICAgTm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcihldmVudCk7Cit9CisKIC8vIFJldHVybnMg
dHJ1ZSBpcyB0aGUgZ2l2ZW4gYXR0cmlidXRlIGlzIGFuIGV2ZW50IGhhbmRsZXIuCiAvLyBXZSBj
b25zaWRlciBhbiBldmVudCBoYW5kbGVyIGFueSBhdHRyaWJ1dGUgdGhhdCBiZWdpbnMgd2l0aCAi
b24iLgogLy8gSXQgaXMgYSBzaW1wbGUgc29sdXRpb24gdGhhdCBoYXMgdGhlIGFkdmFudGFnZSBv
ZiBub3QgcmVxdWlyaW5nIGFueQpAQCAtMzAwNyw2ICszMDM2LDkgQEAgdm9pZCBFbGVtZW50Ojpm
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVj
dGlvbiBkaXIKICAgICAgICAgcmV0dXJuOwogCiAgICAgYXV0byBkb2N1bWVudCA9IG1ha2VSZWYo
dGhpcy0+ZG9jdW1lbnQoKSk7CisgICAgLy8gRm9yIHNjcmlwdCBmb2N1cyB0aGUgbmV3bHkgZm9j
dXNlZCBlbGVtZW50IHNob3VsZCBtYXRjaCAob3Igbm90KSA6Zm9jdXMtdmlzaWJsZSBpZiB0aGUg
YWN0aXZlIGVsZW1lbnQgbWF0Y2hlcyAob3Igbm90KSA6Zm9jdXMtdmlzaWJsZS4KKyAgICAvLyBJ
ZiB0aGVyZSdzIG5vIGFjdGl2ZSBlbGVtZW50IHRoZW4gc2NyaXB0IGZvY3VzIGFsd2F5cyBtYXRj
aGVzIDpmb2N1cy12aXNpYmxlLgorICAgIGJvb2wgbmV3bHlGb2N1c2VkRWxlbWVudFNob3VsZE1h
dGNoRm9jdXNWaXNpYmxlID0gIWRvY3VtZW50LT5mb2N1c2VkRWxlbWVudCgpIHx8IGRvY3VtZW50
LT5mb2N1c2VkRWxlbWVudCgpLT5oYXNGb2N1c1Zpc2libGUoKTsKICAgICBpZiAoZG9jdW1lbnQt
PmZvY3VzZWRFbGVtZW50KCkgPT0gdGhpcykgewogICAgICAgICBpZiAoZG9jdW1lbnQtPnBhZ2Uo
KSkKICAgICAgICAgICAgIGRvY3VtZW50LT5wYWdlKCktPmNocm9tZSgpLmNsaWVudCgpLmVsZW1l
bnREaWRSZWZvY3VzKCp0aGlzKTsKQEAgLTMwNDIsMTEgKzMwNzQsMTYgQEAgdm9pZCBFbGVtZW50
Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0Rp
cmVjdGlvbiBkaXIKICAgICAgICAgaWYgKCFmcmFtZS5oYXNIYWRVc2VySW50ZXJhY3Rpb24oKSAm
JiAhZnJhbWUuaXNNYWluRnJhbWUoKSAmJiAhZG9jdW1lbnQtPnRvcERvY3VtZW50KCkuc2VjdXJp
dHlPcmlnaW4oKS5pc1NhbWVPcmlnaW5Eb21haW4oZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkp
KQogICAgICAgICAgICAgcmV0dXJuOwogCisgICAgICAgIGlmICghbmV3VGFyZ2V0LT5oYXNGb2N1
c1Zpc2libGUoKSkKKyAgICAgICAgICAgIG5ld1RhcmdldC0+c2V0SGFzRm9jdXNWaXNpYmxlKG5l
d2x5Rm9jdXNlZEVsZW1lbnRTaG91bGRNYXRjaEZvY3VzVmlzaWJsZSk7CisKICAgICAgICAgLy8g
Rm9jdXMgYW5kIGNoYW5nZSBldmVudCBoYW5kbGVycyBjYW4gY2F1c2UgdXMgdG8gbG9zZSBvdXIg
bGFzdCByZWYuCiAgICAgICAgIC8vIElmIGEgZm9jdXMgZXZlbnQgaGFuZGxlciBjaGFuZ2VzIHRo
ZSBmb2N1cyB0byBhIGRpZmZlcmVudCBub2RlIGl0CiAgICAgICAgIC8vIGRvZXMgbm90IG1ha2Ug
c2Vuc2UgdG8gY29udGludWUgYW5kIHVwZGF0ZSBhcHBlYXJlbmNlLgotICAgICAgICBpZiAoIXBh
Z2UtPmZvY3VzQ29udHJvbGxlcigpLnNldEZvY3VzZWRFbGVtZW50KG5ld1RhcmdldC5nZXQoKSwg
KmRvY3VtZW50LT5mcmFtZSgpLCBkaXJlY3Rpb24pKQorICAgICAgICBpZiAoIXBhZ2UtPmZvY3Vz
Q29udHJvbGxlcigpLnNldEZvY3VzZWRFbGVtZW50KG5ld1RhcmdldC5nZXQoKSwgKmRvY3VtZW50
LT5mcmFtZSgpLCBkaXJlY3Rpb24pKSB7CisgICAgICAgICAgICBuZXdUYXJnZXQtPnNldEhhc0Zv
Y3VzVmlzaWJsZShmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KICAgICB9
CiAKICAgICBuZXdUYXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50KHJlc3RvcmF0aW9uTW9kZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuaAppbmRleCA5NmJkNzYwM2ZlZDc0MWU5MjcxZDliYjVhMmVhNjE4YzQw
Nzk4NDNjLi5iMmYwODM2YWY0MjI1OWI1ZTI5NzcwMTA4MjkwYTEyN2IyMGY3YWRkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmgKQEAgLTI2Nyw2ICsyNjcsOCBAQCBwdWJsaWM6CiAgICAgLy8gT25seSBjYWxs
ZWQgYnkgdGhlIHBhcnNlciBpbW1lZGlhdGVseSBhZnRlciBlbGVtZW50IGNvbnN0cnVjdGlvbi4K
ICAgICB2b2lkIHBhcnNlclNldEF0dHJpYnV0ZXMoY29uc3QgVmVjdG9yPEF0dHJpYnV0ZT4mKTsK
IAorICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYpIG92ZXJyaWRlOworCiAgICAg
Ym9vbCBpc0V2ZW50SGFuZGxlckF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdDsKICAg
ICBib29sIGlzSmF2YVNjcmlwdFVSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdDsK
IApAQCAtMzE5LDEyICszMjEsMTQgQEAgcHVibGljOgogICAgIGJvb2wgaG92ZXJlZCgpIGNvbnN0
IHsgcmV0dXJuIGlzVXNlckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50SG92
ZXJlZCgpOyB9CiAgICAgYm9vbCBmb2N1c2VkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9u
RWxlbWVudCgpICYmIGlzVXNlckFjdGlvbkVsZW1lbnRGb2N1c2VkKCk7IH0KICAgICBib29sIGlz
QmVpbmdEcmFnZ2VkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlz
VXNlckFjdGlvbkVsZW1lbnREcmFnZ2VkKCk7IH0KKyAgICBib29sIGhhc0ZvY3VzVmlzaWJsZSgp
IGNvbnN0IHsgcmV0dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUpOyB9
OwogICAgIGJvb2wgaGFzRm9jdXNXaXRoaW4oKSBjb25zdCB7IHJldHVybiBoYXNOb2RlRmxhZyhO
b2RlRmxhZzo6SGFzRm9jdXNXaXRoaW4pOyB9OwogCiAgICAgdmlydHVhbCB2b2lkIHNldEFjdGl2
ZShib29sID0gdHJ1ZSwgYm9vbCBwYXVzZSA9IGZhbHNlLCBTdHlsZTo6SW52YWxpZGF0aW9uU2Nv
cGUgPSBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGU6OkFsbCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dEhvdmVyZWQoYm9vbCA9IHRydWUsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJ
bnZhbGlkYXRpb25TY29wZTo6QWxsKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9jdXMoYm9vbCk7
CiAgICAgdm9pZCBzZXRCZWluZ0RyYWdnZWQoYm9vbCk7CisgICAgdm9pZCBzZXRIYXNGb2N1c1Zp
c2libGUoYm9vbCk7CiAgICAgdm9pZCBzZXRIYXNGb2N1c1dpdGhpbihib29sKTsKIAogICAgIE9w
dGlvbmFsPGludD4gdGFiSW5kZXhTZXRFeHBsaWNpdGx5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAppbmRl
eCAyZWNkMTVkNmQ5NGQ1YTk0YWY3NTlmYmQ1NTc2NTI1N2FmNGQ2NmUxLi5jYTcwYWMyMjI5YTAx
OTQ0MTQ1YjI0MWRiMzQxZGZlYzNjYTM3OGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vTm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKQEAgLTUxMCw2ICs1MTAs
NyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzU2hhZG93Um9vdCgpIHsgcmV0
dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc1NoYWRvd1Jvb3QpOyB9CiAgICAg
c3RhdGljIGludDMyX3QgZmxhZ0lzSFRNTCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+
KE5vZGVGbGFnOjpJc0hUTUxFbGVtZW50KTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc0xp
bmsoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNMaW5rKTsgfQor
ICAgIHN0YXRpYyBpbnQzMl90IGZsYWdIYXNGb2N1c1Zpc2libGUoKSB7IHJldHVybiBzdGF0aWNf
Y2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlKTsgfQogICAgIHN0YXRpYyBp
bnQzMl90IGZsYWdIYXNGb2N1c1dpdGhpbigpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+
KE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhpbik7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNQ
YXJzaW5nQ2hpbGRyZW5GaW5pc2hlZCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5v
ZGVGbGFnOjpJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKTsgfQogI2VuZGlmIC8vIEVOQUJMRShK
SVQpCkBAIC01NTAsOCArNTUxLDkgQEAgcHJvdGVjdGVkOgogICAgICAgICBDb250YWluc0Z1bGxT
Y3JlZW5FbGVtZW50ID0gMSA8PCAyNSwKICNlbmRpZgogICAgICAgICBJc0NvbXB1dGVkU3R5bGVJ
bnZhbGlkRmxhZyA9IDEgPDwgMjYsCisgICAgICAgIEhhc0ZvY3VzVmlzaWJsZSA9IDEgPDwgMjcs
CiAKLSAgICAgICAgLy8gQml0cyAyNy0zMSBhcmUgZnJlZS4KKyAgICAgICAgLy8gQml0cyAyOC0z
MSBhcmUgZnJlZS4KICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUYWJJbmRleFN0YXRlIDogdWlu
dDhfdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggMDdhYmFk
MDYwZTAxM2ViOGI3YWM1NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3OTA5NTk3ZWMyN2FlNWFh
NzE5YTY5NWMzMDQyNTEwMjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1
c0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVy
LmNwcApAQCAtNTMzLDYgKzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9j
dXNJbkRvY3VtZW50T3JkZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgICAg
IH0KICAgICB9CiAKKyAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAg
ZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVj
dGlvbik7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5k
ZXggNWFmMWRjMmI1ODVjYmJlYTEwNzI5Yjg3YTg4OWFjNGRkMjY5Y2I0Mi4uM2IxODYwM2FlZjVk
ZDViNjcxNTEzYmI1MjljNmJjMjZkOWM4ZTQ0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNw
cApAQCAtMjI2OCw5ICsyMjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50
SW50ZXJuYWwoY29uc3QgU3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIpCiAgICAgCiAgICAgLy8g
SWYgdGhlIGFuY2hvciBhY2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3ZlIGZvY3VzIHRoZXJlIHRv
IGFpZCB1c2VycyByZWx5aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24uCiAgICAgaWYgKGFuY2hv
ckVsZW1lbnQpIHsKLSAgICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlzRm9jdXNhYmxlKCkpCisg
ICAgICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7CisgICAgICAgICAgICBh
bmNob3JFbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgICAgICAgICBkb2N1
bWVudC5zZXRGb2N1c2VkRWxlbWVudChhbmNob3JFbGVtZW50LmdldCgpKTsKLSAgICAgICAgZWxz
ZSB7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxl
bWVudChudWxscHRyKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzTmF2aWdhdGlvblN0
YXJ0aW5nTm9kZShhbmNob3JFbGVtZW50LmdldCgpKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4IGUxODBjY2RmYTlmNjhm
YWFjMDkxMGMyMzNjMjE4ZDdlZmQ2YTA0YTQuLmNjNDhjNGE2NjhkNzA5M2YzMjNiNDAwZjRlODBj
MTBjMDY0YjhlOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxl
Q29sbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxl
Y3Rvci5jcHAKQEAgLTE1Nyw2ICsxNTcsOCBAQCB2b2lkIEVsZW1lbnRSdWxlQ29sbGVjdG9yOjpj
b2xsZWN0TWF0Y2hpbmdSdWxlcyhjb25zdCBNYXRjaFJlcXVlc3QmIG1hdGNoUmVxdWVzdAogICAg
ICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmxp
bmtQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAgaWYgKG1hdGNoZXNGb2N1
c1BzZXVkb0NsYXNzKGVsZW1lbnQoKSkpCiAgICAgICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVzRm9y
TGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+Zm9jdXNQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNo
UmVxdWVzdCk7CisgICAgaWYgKG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhlbGVtZW50
KCkpKQorICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1
bGVTZXQtPmZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMoKSwgbWF0Y2hSZXF1ZXN0KTsKICAg
ICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnRhZ1J1
bGVzKGVsZW1lbnQoKS5sb2NhbE5hbWUoKSwgZWxlbWVudCgpLmlzSFRNTEVsZW1lbnQoKSAmJiBl
bGVtZW50KCkuZG9jdW1lbnQoKS5pc0hUTUxEb2N1bWVudCgpKSwgbWF0Y2hSZXF1ZXN0KTsKICAg
ICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnVuaXZl
cnNhbFJ1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9SdWxlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCmlu
ZGV4IDNhNWI1NjEwYmE3NmMzOTY3NDBmNjEwMDFjZWI4ZDJmMGEzZDk4YzkuLmU0YTlmMDY1NjZj
MzIxNDEzOTY3ZTNjMWY2ZDEwYTZiOTgwZTM1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1J1bGVTZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3Bw
CkBAIC05OCw2ICs5OCw3IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUm
IHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgY29uc3QgQ1NT
U2VsZWN0b3IqIGNsYXNzU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9y
KiBsaW5rU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBmb2N1c1Nl
bGVjdG9yID0gbnVsbHB0cjsKKyAgICBjb25zdCBDU1NTZWxlY3RvciogZm9jdXNWaXNpYmxlU2Vs
ZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBob3N0UHNldWRvQ2xhc3NT
ZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGN1c3RvbVBzZXVkb0Vs
ZW1lbnRTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIHNsb3R0ZWRQ
c2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBudWxscHRyOwpAQCAtMTYyLDYgKzE2Myw5IEBAIHZvaWQg
UnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9y
SW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9D
bGFzc0ZvY3VzOgogICAgICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVk
b0NsYXNzRm9jdXNWaXNpYmxlOgorICAgICAgICAgICAgICAgIGZvY3VzVmlzaWJsZVNlbGVjdG9y
ID0gc2VsZWN0b3I7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIENT
U1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3Q6CiAgICAgICAgICAgICAgICAgaG9zdFBzZXVkb0Ns
YXNzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0OSw2
ICsyNTMsMTEgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0eWxlUnVsZSYgcnVsZSwg
dW5zaWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAorICAgIGlmIChmb2N1c1Zpc2libGVTZWxlY3RvcikgeworICAgICAgICBtX2ZvY3VzVmlz
aWJsZVBzZXVkb0NsYXNzUnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKwogICAgIGlmICh0YWdTZWxlY3RvcikgewogICAgICAgICBhZGRUb1J1bGVTZXQodGFn
U2VsZWN0b3ItPnRhZ1FOYW1lKCkubG9jYWxOYW1lKCksIG1fdGFnTG9jYWxOYW1lUnVsZXMsIHJ1
bGVEYXRhKTsKICAgICAgICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9yLT50YWdMb3dlcmNhc2VM
b2NhbE5hbWUoKSwgbV90YWdMb3dlcmNhc2VMb2NhbE5hbWVSdWxlcywgcnVsZURhdGEpOwpAQCAt
Mzk2LDYgKzQwNSw3IEBAIHZvaWQgUnVsZVNldDo6dHJhdmVyc2VSdWxlRGF0YXMoRnVuY3Rpb24m
JiBmdW5jdGlvbikKICAgICB0cmF2ZXJzZVZlY3RvcihtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVs
ZXMpOwogICAgIHRyYXZlcnNlVmVjdG9yKG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlcyk7CiAgICAg
dHJhdmVyc2VWZWN0b3IobV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMpOworICAgIHRyYXZlcnNlVmVj
dG9yKG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3Io
bV91bml2ZXJzYWxSdWxlcyk7CiB9CiAKQEAgLTQ5Nyw2ICs1MDcsNyBAQCB2b2lkIFJ1bGVTZXQ6
OnNocmlua1RvRml0KCkKICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7
CiAgICAgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9m
b2N1c1BzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKKyAgICBtX2ZvY3VzVmlzaWJsZVBz
ZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3VuaXZlcnNhbFJ1bGVzLnNocmlu
a1RvRml0KCk7CiAgICAgbV9wYWdlUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX2ZlYXR1cmVz
LnNocmlua1RvRml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0
LmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKaW5kZXggOTlhYTE2MGQ5MDY4NDRm
YWQzNGRjMWEyNzAxNmEwMDM2YmRlMzA3OS4uM2Q1YjViMzE0NzAwYzUwZjQ1ZGMxNWQ4NDY2NzQ2
YzBlOWEwNjhkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaApAQCAtMTI5LDYgKzEyOSw3IEBAIHB1
YmxpYzoKICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciYgc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxl
cygpIGNvbnN0IHsgcmV0dXJuIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNv
bnN0IFJ1bGVEYXRhVmVjdG9yJiBwYXJ0UHNldWRvRWxlbWVudFJ1bGVzKCkgY29uc3QgeyByZXR1
cm4gbV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3Iq
IGZvY3VzUHNldWRvQ2xhc3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzUHNldWRvQ2xh
c3NSdWxlczsgfQorICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1c1Zpc2libGVQc2V1ZG9D
bGFzc1J1bGVzKCkgY29uc3QgeyByZXR1cm4gJm1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxl
czsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiB1bml2ZXJzYWxSdWxlcygpIGNvbnN0IHsg
cmV0dXJuICZtX3VuaXZlcnNhbFJ1bGVzOyB9CiAKICAgICBjb25zdCBWZWN0b3I8U3R5bGVSdWxl
UGFnZSo+JiBwYWdlUnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VSdWxlczsgfQpAQCAtMTY3
LDYgKzE2OCw3IEBAIHByaXZhdGU6CiAgICAgUnVsZURhdGFWZWN0b3IgbV9zbG90dGVkUHNldWRv
RWxlbWVudFJ1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9yIG1fcGFydFBzZXVkb0VsZW1lbnRSdWxl
czsKICAgICBSdWxlRGF0YVZlY3RvciBtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsKKyAgICBSdWxl
RGF0YVZlY3RvciBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7CiAgICAgUnVsZURhdGFW
ZWN0b3IgbV91bml2ZXJzYWxSdWxlczsKICAgICBWZWN0b3I8U3R5bGVSdWxlUGFnZSo+IG1fcGFn
ZVJ1bGVzOwogICAgIHVuc2lnbmVkIG1fcnVsZUNvdW50IHsgMCB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3ZjgxYjJjNDc3ZmI0ODc2
ZDdhNTYwZjE0NzllZDY5YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRhMjM5NmFkNjRmMDIzMDg1
NTQ5ODI1OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jl
c29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdSZXNvbHZl
ci5jcHAKQEAgLTIyNyw2ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVT
dHlsZVdpdGhFbGVtZW50KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0eQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuZm9jdXNlZCgpICE9IGVs
ZW1lbnQuZm9jdXNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKGNhbmRpZGF0
ZUVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNGb2N1c1Zpc2libGUoKSkK
KyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3Vz
V2l0aGluKCkgIT0gZWxlbWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSAhPSBlbGVtZW50
LmlzQmVpbmdEcmFnZ2VkKCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDZlNzQ3OWEyZTY1OWUzYTc4MzA2ZDMwNGJkMjE5
M2EwMjFmNjUyZS4uNzA0MjBhYjUyMmZiZGEzNTM4MzZjNWY0MDg4MDJlOTJhYjJiNTUxNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8
cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGlt
cGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBmb2N1cy12aXNpYmxlLTAwNS5odG1sIGZhaWxzIGluIE1hYyBhbmQgaU9TIHBsYXRmb3Jt
cyBiZWNhdXNlIGJ1dHRvbnMgZG9uJ3QgZ2V0IGZvY3VzZWQgb24gY2xpY2sKKyAgICAgICAgKHNl
ZSBidWcgIzIyMjYxKS4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQ6IFJlbW92
ZWQuCisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2luZyBhbmQgZXhw
ZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDE5MjkwZmY5
MWI0MmU1ZGExZGJmOTY1YzQ3NGMxZWNiYzQyZmE0ZGIuLmJiNzI2MGFhZWJhODI2MDAxOTY0YjAy
MGRlNDQ0YjE0OWI1NTMyZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI2IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIw
MjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGUgZXhwZWN0YXRpb25zLCBtb3N0IG9mIHRoZSA6Zm9jdXMtdmlzaWJsZSB0ZXN0cyBhcmUgcGFz
c2luZyBub3cuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbDogSW1wb3J0IGxhc3QgY2hhbmdl
cyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRm
b3JtLXRlc3RzL3dwdC9wdWxsLzI3NjU2KS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTAtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0
ZWQudHh0OgorCiAyMDIxLTAyLTE2ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2Fs
aWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIHBhcnNpbmcgYW5k
IGV4cGVyaW1lbnRhbCBmbGFnCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAx
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0Cmlu
ZGV4IGMxM2JlMDBmZDk1ZTczZGI0MTc4ZGMyOGU0ZDQzOTAzYTk5ZDQ3ZjQuLmQwNjA1NDhjZmEy
ZDFhYzc3MmYwYzE1YjYyNThhMmIxZDc4ODY0MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1
cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEt
ZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1
cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgotRkFJ
TCBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lk
ZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIgYXNzZXJ0X3VucmVhY2hlZDogJzpmb2N1cy12aXNpYmxl
JyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4gU3ludGF4RXJyb3I6IEVycm9yOiBhc3NlcnRfZXF1
YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNoZXMgZXZlbnQudGFyZ2V0IGV4cGVjdGVkIG51bGwg
YnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0IHR5cGU9InRleHQiPjwvaW5wdXQ+IFJlYWNoZWQg
dW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVk
by1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tz
IHRoYXQgJzpmb2N1cy13aXRoaW4nIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMn
IGV2ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAx
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQK
aW5kZXggMjdlMWE5YWYyYWJlOGY2N2I4OGViZmM3NzBjZTMzMzQyMzc5MWVkZS4uN2ZlNTAzM2Nl
OGE0OGM2NjY4MTg5MjkyZDhhMzhiOTc3ZWJmM2NkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZv
Y3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVu
dC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQg
Jzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5k
bGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNo
ZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyIGFzc2VydF91bnJlYWNoZWQ6ICc6Zm9j
dXMtdmlzaWJsZScgIGlzIGFuIGludmFsaWQgc2VsZWN0b3IuIFN5bnRheEVycm9yOiBFcnJvcjog
YXNzZXJ0X2VxdWFsczogJzpmb2N1cy12aXNpYmxlJyBtYXRjaGVzIGV2ZW50LnRhcmdldCBleHBl
Y3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVudCBub2RlIDxpbnB1dCB0eXBlPSJ0ZXh0Ij48L2lucHV0
PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNp
YmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIK
IFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4nIHBzZXVkby1jbGFzcyBtYXRjaGVzIGlu
c2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dAppbmRl
eCA4NTBjN2FiMTcwMmIzOTMyNDkwMzRkMGIzMzZlYzk1NmEzYzE5NDMwLi5lYzc3Y2VmYzAyNTgx
ZTY1NTE1NzgwM2U2OThlNDM4ZDNiNjg5MzFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKQEAg
LTUsNSArNSw1IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRo
ZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIEZvY3VzIG1lLgogCi1GQUlM
IEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxz
OiBvdXRsaW5lQ29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigw
LCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEtleWJvYXJkIGZvY3VzIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dAppbmRleCBi
NWE5ZWY0MTRkMmYzMGQ4Y2ZiMTJlOGNiMDZkZDliZDIzOTljOWEwLi45MzU4N2RkZGI2MmI0NWZh
NGYwNTljNmFlOWU2NWNiNzg5ZWM3NWNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKQEAgLTE4
LDE4ICsxOCwxOCBAQCBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0
aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgdGhlIGVsZQogCiAKIAotRkFJTCBGb2N1cyBl
bGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xv
ciBmb3IgSU5QVVQjaW5wdXQxIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwg
MCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1
dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBr
ZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0
MiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2Io
MCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQzIHZpYSBtb3VzZSBzaG91
bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNz
ZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDMgc2hvdWxkIGJlIGdyZWVu
IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBG
b2N1cyBlbGVtZW50IElOUFVUI2lucHV0NCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxp
bmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ0IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAs
IDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVU
I2lucHV0NSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290
ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ2IHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDYgc2hvdWxkIGJl
IGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgot
RkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6
IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ3IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAi
cmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVu
dCBJTlBVVCNpbnB1dDggdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IElOUFVUI2lucHV0OCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBi
dXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ5IHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDkgc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTAgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTAgc2hvdWxkIGJlIGdyZWVuIGV4
cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1
cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlz
aWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5l
Q29sb3IgZm9yIElOUFVUI2lucHV0MTEgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwg
MTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVU
I2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVU
I2lucHV0MTIgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdv
dCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTMgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTMgc2hvdWxk
IGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDAp
IgotRkFJTCBGb2N1cyBlbGVtZW50IFRFWFRBUkVBI2lucHV0MTQgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIFRFWFRBUkVBI2lucHV0MTQgc2hvdWxkIGJlIGdyZWVu
IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBG
b2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQg
SU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQg
c3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDMg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NCB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQ
QVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ1IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZv
Y3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxl
bWVudCBJTlBVVCNpbnB1dDYgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBh
cyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ4IHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDkgdmlhIG1vdXNlIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1
cyBlbGVtZW50IElOUFVUI2lucHV0MTAgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlz
aWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0MTEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTIg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTMgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAor
UEFTUyBGb2N1cyBlbGVtZW50IFRFWFRBUkVBI2lucHV0MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2
LWV4cGVjdGVkLnR4dAppbmRleCA1YWFjZDRiMTFmMzhjNjNjMWU2OTY5NThmNWQ2MDY0ZjE0NmNi
YzQ4Li45ODExNWIxZTEyZDAwZDA2NDVkYjM5OTk3OGFlOGViNmNmMGIyNTJjIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
Ni1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBi
YWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAK
IEZvY3VzIG1lCiAKLUZBSUwgRm9jdXMgc2hvdWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZv
ciBTUEFOI2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBn
b3QgInJnYigwLCAwLCAwKSIKK1BBU1MgRm9jdXMgc2hvdWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA3LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQK
aW5kZXggOGJiOWNmMzA3MDBmMTM1ODJlYTc4YWIyMTczZTNhMjIyYjljZGFjZC4uOWYxZWUwOTg5
ZGMxNzdhNzI0YWI3ZGM5Y2NjN2EyZTA4NzJkNmZjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA3LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0
CkBAIC0yLDkgKzIsOSBAQCBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgdXNpbmcgdGhlIGtleWJvYXJk
IGluIGEgd2F5IHRoYXQgZG9lcyBub3QgbW92ZSBmb2N1cyBzdGlsbAogSWYgdGhlIHVzZXItYWdl
bnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNs
YXNzIHRoZW4gU0tJUCB0aGlzIHRlc3QuCiBVc2UgdGhlIG1vdXNlIHRvIGZvY3VzIHRoZSBlbGVt
ZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgogSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVk
IG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCi1QcmVzcyB0aGUgU0hJ
RlQga2V5LgorUHJlc3MgdGhlIEVOVEVSIGtleS4KIElmIHRoZSBlbGVtZW50IG5vdyBoYXMgYSBn
cmVlbiBvdXRsaW5lIGFuZCBub3QgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIFNVQ0NFU1MuCiBDbGljayBtZS4KIAotRkFJTCBVc2luZyBrZXlib2FyZCB3aGlsZSBlbGVt
ZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRyaWdnZXIgOmZvY3VzLXZpc2libGU7IHVzaW5nIG1vdXNl
IHdpdGhvdXQgbW92aW5nIGZvY3VzIHNob3VsZCBub3QgY2FuY2VsIGl0OyBtb3ZpbmcgZm9jdXMg
dXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNlbCBpdC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInJn
YigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIFVzaW5nIGtleWJvYXJk
IHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNlZCBzaG91bGQgdHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsg
dXNpbmcgbW91c2Ugd2l0aG91dCBtb3ZpbmcgZm9jdXMgc2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1v
dmluZyBmb2N1cyB1c2luZyBtb3VzZSBzaG91bGQgY2FuY2VsIGl0LgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDcuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCmluZGV4IDBm
YzE5NmNiZWNkZjFiMTk4YTViYWRjZTM2OTRiMWVjN2NjOTVkNGYuLjE0OWE2ZjY4ZmU4YzMwMGY1
ZGQxNzJiOTdkMmYyOTc0ZjVlMzEyMTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCkBAIC0zNiw3ICszNiw3IEBACiAgICAg
PGxpPklmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDxjb2Rl
Pjpmb2N1cy12aXNpYmxlPC9jb2RlPiBwc2V1ZG8tY2xhc3MgdGhlbiBTS0lQIHRoaXMgdGVzdC48
L2xpPgogICAgIDxsaT5Vc2UgdGhlIG1vdXNlIHRvIGZvY3VzIHRoZSBlbGVtZW50IGJlbG93IHRo
YXQgc2F5cyAiQ2xpY2sgbWUuIjwvbGk+CiAgICAgPGxpPklmIHRoZSBlbGVtZW50IGhhcyBhIHJl
ZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLjwvbGk+Ci0gICAgPGxp
PlByZXNzIHRoZSBTSElGVCBrZXkuPC9saT4KKyAgICA8bGk+UHJlc3MgdGhlIEVOVEVSIGtleS48
L2xpPgogICAgIDxsaT5JZiB0aGUgZWxlbWVudCBub3cgaGFzIGEgZ3JlZW4gb3V0bGluZSBhbmQg
bm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+
CiAgIDwvb2w+CiAKQEAgLTY1LDcgKzY1LDggQEAKICAgICAgICAgb25lLmFkZEV2ZW50TGlzdGVu
ZXIoImtleXVwIiwgdC5zdGVwX2Z1bmModGVzdF9tb2RhbGl0eV9jaGFuZ2UpKTsKICAgICAgICAg
b25lLnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIiwgaGFuZGxlX2luaXRpYWxfZm9jdXMpOwog
Ci0gICAgICAgIHRlc3RfZHJpdmVyLnNlbmRfa2V5cyhvbmUsICJcdUUwNTAiKTsKKyAgICAgICAg
Y29uc3QgZW50ZXIgPSAiXHVFMDA3IjsKKyAgICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9u
ZSwgZW50ZXIpOwogICAgICAgfSk7CiAKICAgICAgIGNvbnN0IHRlc3RfbW9kYWxpdHlfY2hhbmdl
ID0gdC5zdGVwX2Z1bmMoKCkgPT4gewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQKaW5kZXggOWM3YmQx
ZGYxNDM4ZWI0MTlhMjgwODAyZDRkNTA1MzM4OWM2MDlkYi4uOGViNDg0ZTQxNTIxZGMxZDIyZjcx
ODNkZTdhOWUyMzM3N2Y5YjFlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CkBAIC0zLDUgKzMs
NSBAQCBJZiB0aGUgYnV0dG9uIHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGlj
YWxseSIgaGFzIGEgcmVkIGJhY2tncm91bmQsCiAKIEkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRp
Y2FsbHkuCiAKLUZBSUwgQXV0b2ZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3Nl
cnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIEJVVFRPTiNidXR0b24gc2hvdWxkIGJlIGdyZWVu
IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBB
dXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTAtZXhwZWN0ZWQu
dHh0CmluZGV4IDI2YmRlYzg0Njc1ODY3NTk0NDJmYjNlYWZlMzM0ZmI1OWUzMThiZWMuLjA0ODVk
YWM4YTc4ZjdmNGNhNWVlMGFkNzE2ODk1NTg5MjkzMWVmYWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVk
LnR4dApAQCAtMyw1ICszLDUgQEAgSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUg
Zm9jdXNlZCBhdXRvbWF0aWNhbGx5IiBoYXMgYSByZWQgYmFja2dyb3VuZCwKIAogSSB3aWxsIGJl
IGZvY3VzZWQgYXV0b21hdGljYWxseS4KIAotRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgb24gcGFn
ZSBsb2FkIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5l
Q29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDAp
IiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIFByb2dyYW1tYXRpYyBmb2N1cyBvbiBwYWdl
IGxvYWQgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0
CmluZGV4IDZiMmEyNGUxYzNmZjkzNzkzN2RhYTI2OTc2ZmIzNWMyZjg0MWZlYzYuLjQ5YWQ4Y2U5
YzNjM2MxYzQxMmEwYjlkNjM2YjRhZmQ2NjljNTM4YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAxMy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4
dApAQCAtOCw3ICs4LDUgQEAgSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJUYXJnZXQiIGhhcyBh
IGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIGEKIEluaXRpYWwKIFRhcmdl
dAogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotRkFJTCA6Zm9j
dXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHByZXZp
b3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUgYXNzZXJ0X2Vx
dWFsczogb3V0bGluZUNvbG9yIGZvciBESVYjaW5pdGlhbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0
ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZvY3Vz
LXZpc2libGUgZG9lcyBub3QgbWF0Y2ggYWZ0ZXIgbW91c2UgY2xpY2sgZXZlbiBpZiBwcmV2aW91
cyBmb2N1c2VkIGVsZW1lbnQgd2FzIG1hdGNoaW5nIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQt
ZXhwZWN0ZWQudHh0CmluZGV4IDZhZGU1NTMyMzFkODdlYTBlNGUxZDNjODBhYTM2YmIzMjFmNzA3
MDIuLmYxODEwODA2YjJjN2JlM2RjMTAwYWQ4Zjg5YjVhYTVmYzhhMWFmZTMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0
LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAogVGFyZ2V0CiAKLUZBSUwgOmZvY3VzLXZp
c2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBiYWNr
Z3JvdW5kQ29sb3IgZm9yIElOUFVUI2lucHV0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2Io
MCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNpYmxl
IG1hdGNoZXMgYWZ0ZXIgc2NyaXB0IGZvY3VzIG1vdmUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDE2LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQK
aW5kZXggM2Q4MTczZThiOGE5Nzg1YTMyMWUyNTExODg2M2UwYmNhZTdlNjA3MS4uNDEyYWMzNDQ5
ZDk3Y2MzMDk5NmI5MWVlNTE3ZWIwMTI4NWM4N2QwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDE2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0
CkBAIC0xLDUgKzEsNSBAQAogSW5pdGlhbAogCiAKLUZBSUwgOmZvY3VzLXZpc2libGUgYWx3YXlz
IG1hdGNoIG9uIHRleHQgaW5wdXRzIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3Ig
SU5QVVQjdGFyZ2V0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0
IGdvdCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRjaCBv
biB0ZXh0IGlucHV0cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1ZmM0YjY2NzQ1YzY3ZWQzYzA4M2Iz
NTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgcHJvZ3Jh
bW1hdGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVyIGEgY2xpY2sgZG9lcyBub3QgY2F1
c2UgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dlci4KK0lmIHRoZSB1c2VyLWFnZW50
IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12aXNpYmxlIHBzZXVkby1jbGFz
cyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1dHRvbiBiZWxvdyB0aGF0IHNheXMg
IkNsaWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQg
cHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3Vs
dCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVlbiBiYWNrZ3JvdW5kLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGljayBtZS4KK0kgd2lsbCBiZSBmb2N1
c2VkIHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3JhbW1hdGljIGZvY3VzIGFmdGVyIGNs
aWNrIHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogYmFja2dy
b3VuZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUs
IDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1ZmM0
YjY2NzQ1YzY3ZWQzYzA4M2IzNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVyIGEg
Y2xpY2sgZG9lcyBub3QgY2F1c2UgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dlci4K
K0lmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12
aXNpYmxlIHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1dHRv
biBiZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAi
SSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5lLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVl
biBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGljayBt
ZS4KK0kgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3JhbW1h
dGljIGZvY3VzIGFmdGVyIGNsaWNrIHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNz
ZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUgZXhw
ZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDIyMDgyOTY2NDIyMjM4MTNkYzgwZWUwMmI2ODA5NjRhZWUyMjJk
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEs
NyArMCwwIEBACi1UaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW55IGVsZW1lbnQgZm9jdXNlZCB2aWEg
YW4gYXV0b2ZvY3VzIGF0dHJpYnV0ZSB3aWxsIGhhdmUgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcg
ZW5hYmxlZC4KLUlmIHRoZSBidXR0b24gdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBhdXRv
bWF0aWNhbGx5IiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMg
RkFJTFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQg
aXMgU1VDQ0VTUy4KLQotSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseS4KLQotRkFJTCBB
dXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxp
bmVDb2xvciBmb3IgQlVUVE9OI2J1dHRvbiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigw
LCAxMjgsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDAuODQ3KSIKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420950</attachid>
            <date>2021-02-19 03:11:49 -0800</date>
            <delta_ts>2021-02-19 07:01:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210219121147.patch</filename>
            <type>text/plain</type>
            <size>37528</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uYWVlM2E0OWEzZWZiMTk4Yzg3M2RkMWM2N2Y0YjVi
NTk1ZWJjYjBlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbykuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtKgorCisgICAg
ICAgICogY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKFdlYkNv
cmU6Om1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyk6IENoZWNrIGVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkuCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RWxlbWVudDo6ZGlzcGF0Y2hLZXlFdmVudCk6IElmIHRoZSBlbGVtZW50IGlzIGZvY3VzZWQs
IGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVu
dDo6c2V0Rm9jdXMpOiBXaGVuIGFuIGVsZW1lbnQgbG9zZXMgZm9jdXMgaXQgYWx3YXlzIGNhbGwg
c2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKS4gV2hlbiBhbiBlbGVtZW50IGdldHMgZm9jdXNlZAor
ICAgICAgICBpdCBjYWxscyBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGVsZW1lbnRzIHRo
YXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoYXMgdGhleSBhbHdheXMgbWF0Y2ggOmZvY3VzLXZp
c2libGUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0SGFzRm9jdXNWaXNpYmxlKTog
TmV3IG1ldGhvZCBnYXRlZCBiZWhpbmQgdGhlIGV4cGVyaW1lbnRhbCBmbGFnLgorICAgICAgICAo
V2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOiBNYW5hZ2Ugc2NyaXB0IGZvY3VzIGtlZXBpbmcgdHJh
Y2sgb2YgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IG1hdGNoaW5nIChvciBub3QpIDpmb2N1cy12
aXNpYmxlLAorICAgICAgICB0byBsYXRlciBjYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSgpIG9uIHRo
ZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQuCisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlzaWJsZSBjb25zdCk6IEFkZCBuZXcgbWV0
aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgIChXZWJDb3JlOjpOb2RlOjpmbGFn
SGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZvciA6Zm9jdXMtdmlzaWJsZSBtYXRjaGlu
Zy4KKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcik6IENhbGwgc2V0
SGFzRm9jdXNWaXNpYmxlKHRydWUpIGZvciBrZXlib2FyZCBmb2N1cy4KKyAgICAgICAgKiBwYWdl
L0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OnNjcm9sbFRvRnJh
Z21lbnRJbnRlcm5hbCk6IENhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpIGZvciBhbmNob3Ig
Zm9jdXMuCisgICAgICAgICogc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGU6OkVsZW1lbnRSdWxlQ29sbGVjdG9yOjpjb2xsZWN0TWF0Y2hpbmdS
dWxlcyk6IEFkZCA6Zm9jdXMtdmlzaWJsZSBydWxlcyBzdHVmZiBsaWtlIHdlIGFscmVhZHkgaGF2
ZSBmb3IgOmZvY3VzLgorICAgICAgICAqIHN0eWxlL1J1bGVTZXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OlJ1bGVTZXQ6OmFkZFJ1bGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OlN0eWxlOjpSdWxlU2V0Ojp0cmF2ZXJzZVJ1bGVEYXRhcyk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OlJ1bGVTZXQ6OnNocmlua1RvRml0KTogRGl0dG8uCisgICAgICAgICogc3R5
bGUvUnVsZVNldC5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlJ1bGVTZXQ6OmZvY3VzVmlz
aWJsZVBzZXVkb0NsYXNzUnVsZXMgY29uc3QpOiBEaXR0by4KKyAgICAgICAgKiBzdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6U2hhcmluZ1Jl
c29sdmVyOjpjYW5TaGFyZVN0eWxlV2l0aEVsZW1lbnQgY29uc3QpOiBBZGQgY2hlY2sgZm9yIGhh
c0ZvY3VzVmlzaWJsZSgpLgorCiAyMDIxLTAyLTE2ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8
cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIHBh
cnNpbmcgYW5kIGV4cGVyaW1lbnRhbCBmbGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1Nl
bGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaAppbmRleCA2Zjc3ZjllNjRiY2JiZDNiMjZlODJh
ZTk1MTUxZjBkOGNlMGZiYWVkLi44MDAxM2YwNWYxZWRlMWJiYzA2NjkwODYyZDgyZGY5M2U0ZmNj
OTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1
bmN0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVu
Y3Rpb25zLmgKQEAgLTQ3NCw3ICs0NzQsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNG
b2N1c1BzZXVkb0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpCiAKIEFMV0FZU19JTkxJTkUg
Ym9vbCBtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVu
dCkKIHsKLSAgICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0
YXRlKGVsZW1lbnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAg
aWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBD
U1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIHJldHVybiBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICYmIGlzRnJhbWVGb2N1
c2VkKGVsZW1lbnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dC5jcHAKaW5kZXggZjg4NmEwZmNkN2U5MGU1MjFlNWViN2M3N2M3NzY3NzMyNDRkYjcxYS4uODA4
MzYwZWM4NzhjNDQyMGUyNWMwNzIxY2YyYjdjNzBkNzE5Mzk2ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50
LmNwcApAQCAtNDU5LDYgKzQ1OSwxMSBAQCBib29sIEVsZW1lbnQ6OmRpc3BhdGNoS2V5RXZlbnQo
Y29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50JiBwbGF0Zm9ybUV2ZW50KQogICAgICAgICAgICAg
ZXZlbnQtPnN0b3BQcm9wYWdhdGlvbigpOwogICAgIH0KIAorICAgIGlmIChmb2N1c2VkKCkpIHsK
KyAgICAgICAgLy8gSWYgdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdmlhIHRoZSBr
ZXlib2FyZCwgdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlLgorICAgICAgICBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfQorCiAg
ICAgZGlzcGF0Y2hFdmVudChldmVudCk7CiAgICAgcmV0dXJuICFldmVudC0+ZGVmYXVsdFByZXZl
bnRlZCgpICYmICFldmVudC0+ZGVmYXVsdEhhbmRsZWQoKTsKIH0KQEAgLTc0NCw2ICs3NDksMjUg
QEAgdm9pZCBFbGVtZW50OjpzZXRGb2N1cyhib29sIGZsYWcpCiAKICAgICBmb3IgKGF1dG8qIGVs
ZW1lbnQgPSB0aGlzOyBlbGVtZW50OyBlbGVtZW50ID0gZWxlbWVudC0+cGFyZW50RWxlbWVudElu
Q29tcG9zZWRUcmVlKCkpCiAgICAgICAgIGVsZW1lbnQtPnNldEhhc0ZvY3VzV2l0aGluKGZsYWcp
OworCisgICAgaWYgKGZsYWcpIHsKKyAgICAgICAgLy8gRWxlbWVudHMgdGhhdCBzdXBwb3J0IGtl
eWJvYXJkIGlucHV0IChmb3JtIGlucHV0cyBhbmQgY29udGVudGVkaXRhYmxlKSBhbHdheXMgbWF0
Y2ggOmZvY3VzLXZpc2libGUgd2hlbiBmb2N1c2VkLgorICAgICAgICBpZiAoaXNUZXh0RmllbGQo
KSB8fCBpc0NvbnRlbnRFZGl0YWJsZSgpKQorICAgICAgICAgICAgc2V0SGFzRm9jdXNWaXNpYmxl
KHRydWUpOworICAgIH0gZWxzZQorICAgICAgICBzZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpOwor
fQorCit2b2lkIEVsZW1lbnQ6OnNldEhhc0ZvY3VzVmlzaWJsZShib29sIGZsYWcpCit7CisgICAg
aWYgKCFkb2N1bWVudCgpLnNldHRpbmdzKCkuZm9jdXNWaXNpYmxlRW5hYmxlZCgpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpZiAoaGFzRm9jdXNWaXNpYmxlKCkgPT0gZmxhZykKKyAgICAgICAg
cmV0dXJuOworCisgICAgU3R5bGU6OlBzZXVkb0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uIHN0eWxl
SW52YWxpZGF0aW9uKCp0aGlzLCBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUp
OworICAgIHNldE5vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUsIGZsYWcpOwogfQog
CiB2b2lkIEVsZW1lbnQ6OnNldEhhc0ZvY3VzV2l0aGluKGJvb2wgZmxhZykKQEAgLTMwMDcsNiAr
MzAzMSw5IEBAIHZvaWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJl
c3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyCiAgICAgICAgIHJldHVybjsKIAogICAg
IGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVmKHRoaXMtPmRvY3VtZW50KCkpOworICAgIC8vIEZvciBz
Y3JpcHQgZm9jdXMgdGhlIG5ld2x5IGZvY3VzZWQgZWxlbWVudCBzaG91bGQgbWF0Y2ggKG9yIG5v
dCkgOmZvY3VzLXZpc2libGUgaWYgdGhlIGFjdGl2ZSBlbGVtZW50IG1hdGNoZXMgKG9yIG5vdCkg
OmZvY3VzLXZpc2libGUuCisgICAgLy8gSWYgdGhlcmUncyBubyBhY3RpdmUgZWxlbWVudCB0aGVu
IHNjcmlwdCBmb2N1cyBhbHdheXMgbWF0Y2hlcyA6Zm9jdXMtdmlzaWJsZS4KKyAgICBib29sIG5l
d2x5Rm9jdXNlZEVsZW1lbnRTaG91bGRNYXRjaEZvY3VzVmlzaWJsZSA9ICFkb2N1bWVudC0+Zm9j
dXNlZEVsZW1lbnQoKSB8fCBkb2N1bWVudC0+Zm9jdXNlZEVsZW1lbnQoKS0+aGFzRm9jdXNWaXNp
YmxlKCk7CiAgICAgaWYgKGRvY3VtZW50LT5mb2N1c2VkRWxlbWVudCgpID09IHRoaXMpIHsKICAg
ICAgICAgaWYgKGRvY3VtZW50LT5wYWdlKCkpCiAgICAgICAgICAgICBkb2N1bWVudC0+cGFnZSgp
LT5jaHJvbWUoKS5jbGllbnQoKS5lbGVtZW50RGlkUmVmb2N1cygqdGhpcyk7CkBAIC0zMDQyLDEx
ICszMDY5LDE2IEBAIHZvaWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
IHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyCiAgICAgICAgIGlmICghZnJhbWUu
aGFzSGFkVXNlckludGVyYWN0aW9uKCkgJiYgIWZyYW1lLmlzTWFpbkZyYW1lKCkgJiYgIWRvY3Vt
ZW50LT50b3BEb2N1bWVudCgpLnNlY3VyaXR5T3JpZ2luKCkuaXNTYW1lT3JpZ2luRG9tYWluKGRv
Y3VtZW50LT5zZWN1cml0eU9yaWdpbigpKSkKICAgICAgICAgICAgIHJldHVybjsKIAorICAgICAg
ICBpZiAoIW5ld1RhcmdldC0+aGFzRm9jdXNWaXNpYmxlKCkpCisgICAgICAgICAgICBuZXdUYXJn
ZXQtPnNldEhhc0ZvY3VzVmlzaWJsZShuZXdseUZvY3VzZWRFbGVtZW50U2hvdWxkTWF0Y2hGb2N1
c1Zpc2libGUpOworCiAgICAgICAgIC8vIEZvY3VzIGFuZCBjaGFuZ2UgZXZlbnQgaGFuZGxlcnMg
Y2FuIGNhdXNlIHVzIHRvIGxvc2Ugb3VyIGxhc3QgcmVmLgogICAgICAgICAvLyBJZiBhIGZvY3Vz
IGV2ZW50IGhhbmRsZXIgY2hhbmdlcyB0aGUgZm9jdXMgdG8gYSBkaWZmZXJlbnQgbm9kZSBpdAog
ICAgICAgICAvLyBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIGNvbnRpbnVlIGFuZCB1cGRhdGUgYXBw
ZWFyZW5jZS4KLSAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2Vk
RWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgZGlyZWN0aW9uKSkK
KyAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2VkRWxlbWVudChu
ZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgZGlyZWN0aW9uKSkgeworICAgICAg
ICAgICAgbmV3VGFyZ2V0LT5zZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpOwogICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CiAgICAgfQogCiAgICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2Vk
RWxlbWVudChyZXN0b3JhdGlvbk1vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOTZiZDc2MDNm
ZWQ3NDFlOTI3MWQ5YmI1YTJlYTYxOGM0MDc5ODQzYy4uOTQ5Y2JiYzNmOTY1MTc1NzZlZTIzMjZk
OTlkYTJmMzg5ODc0ZDcxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC0zMTksMTIgKzMxOSwxNCBA
QCBwdWJsaWM6CiAgICAgYm9vbCBob3ZlcmVkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9u
RWxlbWVudCgpICYmIGlzVXNlckFjdGlvbkVsZW1lbnRIb3ZlcmVkKCk7IH0KICAgICBib29sIGZv
Y3VzZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0
aW9uRWxlbWVudEZvY3VzZWQoKTsgfQogICAgIGJvb2wgaXNCZWluZ0RyYWdnZWQoKSBjb25zdCB7
IHJldHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudERyYWdn
ZWQoKTsgfQorICAgIGJvb2wgaGFzRm9jdXNWaXNpYmxlKCkgY29uc3QgeyByZXR1cm4gaGFzTm9k
ZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3VzVmlzaWJsZSk7IH07CiAgICAgYm9vbCBoYXNGb2N1c1dp
dGhpbigpIGNvbnN0IHsgcmV0dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhp
bik7IH07CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWN0aXZlKGJvb2wgPSB0cnVlLCBib29sIHBh
dXNlID0gZmFsc2UsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRp
b25TY29wZTo6QWxsKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSwg
U3R5bGU6OkludmFsaWRhdGlvblNjb3BlID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwp
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRGb2N1cyhib29sKTsKICAgICB2b2lkIHNldEJlaW5nRHJh
Z2dlZChib29sKTsKKyAgICB2b2lkIHNldEhhc0ZvY3VzVmlzaWJsZShib29sKTsKICAgICB2b2lk
IHNldEhhc0ZvY3VzV2l0aGluKGJvb2wpOwogCiAgICAgT3B0aW9uYWw8aW50PiB0YWJJbmRleFNl
dEV4cGxpY2l0bHkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCmluZGV4IDJlY2QxNWQ2ZDk0ZDVhOTRhZjc1
OWZiZDU1NzY1MjU3YWY0ZDY2ZTEuLmNhNzBhYzIyMjlhMDE5NDQxNDViMjQxZGIzNDFkZmVjM2Nh
Mzc4ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL05vZGUuaApAQCAtNTEwLDYgKzUxMCw3IEBAIHB1YmxpYzoKICAgICBzdGF0
aWMgaW50MzJfdCBmbGFnSXNTaGFkb3dSb290KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJf
dD4oTm9kZUZsYWc6OklzU2hhZG93Um9vdCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNI
VE1MKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzSFRNTEVsZW1l
bnQpOyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzTGluaygpIHsgcmV0dXJuIHN0YXRpY19j
YXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc0xpbmspOyB9CisgICAgc3RhdGljIGludDMyX3QgZmxh
Z0hhc0ZvY3VzVmlzaWJsZSgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFn
OjpIYXNGb2N1c1Zpc2libGUpOyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzV2l0
aGluKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzV2l0
aGluKTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVk
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzUGFyc2luZ0NoaWxk
cmVuRmluaXNoZWQpOyB9CiAjZW5kaWYgLy8gRU5BQkxFKEpJVCkKQEAgLTU1MCw4ICs1NTEsOSBA
QCBwcm90ZWN0ZWQ6CiAgICAgICAgIENvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQgPSAxIDw8IDI1
LAogI2VuZGlmCiAgICAgICAgIElzQ29tcHV0ZWRTdHlsZUludmFsaWRGbGFnID0gMSA8PCAyNiwK
KyAgICAgICAgSGFzRm9jdXNWaXNpYmxlID0gMSA8PCAyNywKIAotICAgICAgICAvLyBCaXRzIDI3
LTMxIGFyZSBmcmVlLgorICAgICAgICAvLyBCaXRzIDI4LTMxIGFyZSBmcmVlLgogICAgIH07CiAK
ICAgICBlbnVtIGNsYXNzIFRhYkluZGV4U3RhdGUgOiB1aW50OF90IHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRm9jdXNDb250cm9sbGVyLmNwcAppbmRleCAwN2FiYWQwNjBlMDEzZWI4YjdhYzU2MDBkZDQ0
MTk2ZDJiMWFhOWZhLi5lYWRkYTc5MDk1OTdlYzI3YWU1YWE3MTlhNjk1YzMwNDI1MTAyNDkxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCkBAIC01MzMsNiArNTMzLDcg
QEAgYm9vbCBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcihGb2N1
c0RpcmVjdGlvbiBkaXJlY3Rpb24sIEtleWIKICAgICAgICAgfQogICAgIH0KIAorICAgIGVsZW1l
bnQtPnNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKTsKICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rp
b25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKICAgICByZXR1cm4gdHJ1
ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRleCA1YWYxZGMyYjU4NWNiYmVhMTA3
MjliODdhODg5YWM0ZGQyNjljYjQyLi4zYjE4NjAzYWVmNWRkNWI2NzE1MTNiYjUyOWM2YmMyNmQ5
YzhlNDRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCkBAIC0yMjY4LDkgKzIyNjgsMTAg
QEAgYm9vbCBGcmFtZVZpZXc6OnNjcm9sbFRvRnJhZ21lbnRJbnRlcm5hbChjb25zdCBTdHJpbmcm
IGZyYWdtZW50SWRlbnRpZmllcikKICAgICAKICAgICAvLyBJZiB0aGUgYW5jaG9yIGFjY2VwdHMg
a2V5Ym9hcmQgZm9jdXMsIG1vdmUgZm9jdXMgdGhlcmUgdG8gYWlkIHVzZXJzIHJlbHlpbmcgb24g
a2V5Ym9hcmQgbmF2aWdhdGlvbi4KICAgICBpZiAoYW5jaG9yRWxlbWVudCkgewotICAgICAgICBp
ZiAoYW5jaG9yRWxlbWVudC0+aXNGb2N1c2FibGUoKSkKKyAgICAgICAgaWYgKGFuY2hvckVsZW1l
bnQtPmlzRm9jdXNhYmxlKCkpIHsKKyAgICAgICAgICAgIGFuY2hvckVsZW1lbnQtPnNldEhhc0Zv
Y3VzVmlzaWJsZSh0cnVlKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzZWRFbGVtZW50
KGFuY2hvckVsZW1lbnQuZ2V0KCkpOwotICAgICAgICBlbHNlIHsKKyAgICAgICAgfSBlbHNlIHsK
ICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzZWRFbGVtZW50KG51bGxwdHIpOwogICAgICAg
ICAgICAgZG9jdW1lbnQuc2V0Rm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2RlKGFuY2hvckVsZW1l
bnQuZ2V0KCkpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9F
bGVtZW50UnVsZUNvbGxlY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVs
ZUNvbGxlY3Rvci5jcHAKaW5kZXggZTE4MGNjZGZhOWY2OGZhYWMwOTEwYzIzM2MyMThkN2VmZDZh
MDRhNC4uY2M0OGM0YTY2OGQ3MDkzZjMyM2I0MDBmNGU4MGMxMGMwNjRiOGU5MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcApAQCAtMTU3LDYgKzE1
Nyw4IEBAIHZvaWQgRWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGluZ1J1bGVzKGNv
bnN0IE1hdGNoUmVxdWVzdCYgbWF0Y2hSZXF1ZXN0CiAgICAgICAgIGNvbGxlY3RNYXRjaGluZ1J1
bGVzRm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+bGlua1BzZXVkb0NsYXNzUnVsZXMoKSwg
bWF0Y2hSZXF1ZXN0KTsKICAgICBpZiAobWF0Y2hlc0ZvY3VzUHNldWRvQ2xhc3MoZWxlbWVudCgp
KSkKICAgICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxl
U2V0LT5mb2N1c1BzZXVkb0NsYXNzUnVsZXMoKSwgbWF0Y2hSZXF1ZXN0KTsKKyAgICBpZiAobWF0
Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKGVsZW1lbnQoKSkpCisgICAgICAgIGNvbGxlY3RN
YXRjaGluZ1J1bGVzRm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+Zm9jdXNWaXNpYmxlUHNl
dWRvQ2xhc3NSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVz
Rm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+dGFnUnVsZXMoZWxlbWVudCgpLmxvY2FsTmFt
ZSgpLCBlbGVtZW50KCkuaXNIVE1MRWxlbWVudCgpICYmIGVsZW1lbnQoKS5kb2N1bWVudCgpLmlz
SFRNTERvY3VtZW50KCkpLCBtYXRjaFJlcXVlc3QpOwogICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVz
Rm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+dW5pdmVyc2FsUnVsZXMoKSwgbWF0Y2hSZXF1
ZXN0KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwIGIv
U291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAKaW5kZXggM2E1YjU2MTBiYTc2YzM5Njc0
MGY2MTAwMWNlYjhkMmYwYTNkOThjOS4uZTRhOWYwNjU2NmMzMjE0MTM5NjdlM2MxZjZkMTBhNmI5
ODBlMzUzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAKQEAgLTk4LDYgKzk4LDcgQEAgdm9p
ZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0
b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICBjb25zdCBDU1NTZWxlY3RvciogY2xhc3NTZWxlY3Rv
ciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGxpbmtTZWxlY3RvciA9IG51bGxw
dHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3VzU2VsZWN0b3IgPSBudWxscHRyOworICAg
IGNvbnN0IENTU1NlbGVjdG9yKiBmb2N1c1Zpc2libGVTZWxlY3RvciA9IG51bGxwdHI7CiAgICAg
Y29uc3QgQ1NTU2VsZWN0b3IqIGhvc3RQc2V1ZG9DbGFzc1NlbGVjdG9yID0gbnVsbHB0cjsKICAg
ICBjb25zdCBDU1NTZWxlY3RvciogY3VzdG9tUHNldWRvRWxlbWVudFNlbGVjdG9yID0gbnVsbHB0
cjsKICAgICBjb25zdCBDU1NTZWxlY3Rvciogc2xvdHRlZFBzZXVkb0VsZW1lbnRTZWxlY3RvciA9
IG51bGxwdHI7CkBAIC0xNjIsNiArMTYzLDkgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0
IFN0eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQgc2UKICAg
ICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXM6CiAgICAgICAgICAg
ICAgICAgZm9jdXNTZWxlY3RvciA9IHNlbGVjdG9yOwogICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGU6Cisg
ICAgICAgICAgICAgICAgZm9jdXNWaXNpYmxlU2VsZWN0b3IgPSBzZWxlY3RvcjsKKyAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNz
SG9zdDoKICAgICAgICAgICAgICAgICBob3N0UHNldWRvQ2xhc3NTZWxlY3RvciA9IHNlbGVjdG9y
OwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjQ5LDYgKzI1MywxMSBAQCB2b2lkIFJ1bGVT
ZXQ6OmFkZFJ1bGUoY29uc3QgU3R5bGVSdWxlJiBydWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4
LCB1bnNpZ25lZCBzZQogICAgICAgICByZXR1cm47CiAgICAgfQogCisgICAgaWYgKGZvY3VzVmlz
aWJsZVNlbGVjdG9yKSB7CisgICAgICAgIG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcy5h
cHBlbmQocnVsZURhdGEpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKHRhZ1Nl
bGVjdG9yKSB7CiAgICAgICAgIGFkZFRvUnVsZVNldCh0YWdTZWxlY3Rvci0+dGFnUU5hbWUoKS5s
b2NhbE5hbWUoKSwgbV90YWdMb2NhbE5hbWVSdWxlcywgcnVsZURhdGEpOwogICAgICAgICBhZGRU
b1J1bGVTZXQodGFnU2VsZWN0b3ItPnRhZ0xvd2VyY2FzZUxvY2FsTmFtZSgpLCBtX3RhZ0xvd2Vy
Y2FzZUxvY2FsTmFtZVJ1bGVzLCBydWxlRGF0YSk7CkBAIC0zOTYsNiArNDA1LDcgQEAgdm9pZCBS
dWxlU2V0Ojp0cmF2ZXJzZVJ1bGVEYXRhcyhGdW5jdGlvbiYmIGZ1bmN0aW9uKQogICAgIHRyYXZl
cnNlVmVjdG9yKG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0
b3IobV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzKTsKICAgICB0cmF2ZXJzZVZlY3RvcihtX2ZvY3Vz
UHNldWRvQ2xhc3NSdWxlcyk7CisgICAgdHJhdmVyc2VWZWN0b3IobV9mb2N1c1Zpc2libGVQc2V1
ZG9DbGFzc1J1bGVzKTsKICAgICB0cmF2ZXJzZVZlY3RvcihtX3VuaXZlcnNhbFJ1bGVzKTsKIH0K
IApAQCAtNDk3LDYgKzUwNyw3IEBAIHZvaWQgUnVsZVNldDo6c2hyaW5rVG9GaXQoKQogICAgIG1f
aG9zdFBzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3Nsb3R0ZWRQc2V1ZG9F
bGVtZW50UnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlcy5z
aHJpbmtUb0ZpdCgpOworICAgIG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcy5zaHJpbmtU
b0ZpdCgpOwogICAgIG1fdW5pdmVyc2FsUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3BhZ2VS
dWxlcy5zaHJpbmtUb0ZpdCgpOwogICAgIG1fZmVhdHVyZXMuc2hyaW5rVG9GaXQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1J1bGVTZXQuaAppbmRleCA5OWFhMTYwZDkwNjg0NGZhZDM0ZGMxYTI3MDE2YTAwMzZiZGUz
MDc5Li4zZDViNWIzMTQ3MDBjNTBmNDVkYzE1ZDg0NjY3NDZjMGU5YTA2OGQzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvUnVsZVNldC5oCkBAIC0xMjksNiArMTI5LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFJ1bGVE
YXRhVmVjdG9yJiBzbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9z
bG90dGVkUHNldWRvRWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3ImIHBh
cnRQc2V1ZG9FbGVtZW50UnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3BhcnRQc2V1ZG9FbGVtZW50
UnVsZXM7IH0KICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogZm9jdXNQc2V1ZG9DbGFzc1J1bGVz
KCkgY29uc3QgeyByZXR1cm4gJm1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzOyB9CisgICAgY29uc3Qg
UnVsZURhdGFWZWN0b3IqIGZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMoKSBjb25zdCB7IHJl
dHVybiAmbV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzOyB9CiAgICAgY29uc3QgUnVsZURh
dGFWZWN0b3IqIHVuaXZlcnNhbFJ1bGVzKCkgY29uc3QgeyByZXR1cm4gJm1fdW5pdmVyc2FsUnVs
ZXM7IH0KIAogICAgIGNvbnN0IFZlY3RvcjxTdHlsZVJ1bGVQYWdlKj4mIHBhZ2VSdWxlcygpIGNv
bnN0IHsgcmV0dXJuIG1fcGFnZVJ1bGVzOyB9CkBAIC0xNjcsNiArMTY4LDcgQEAgcHJpdmF0ZToK
ICAgICBSdWxlRGF0YVZlY3RvciBtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXM7CiAgICAgUnVs
ZURhdGFWZWN0b3IgbV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9y
IG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzOworICAgIFJ1bGVEYXRhVmVjdG9yIG1fZm9jdXNWaXNp
YmxlUHNldWRvQ2xhc3NSdWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX3VuaXZlcnNhbFJ1bGVz
OwogICAgIFZlY3RvcjxTdHlsZVJ1bGVQYWdlKj4gbV9wYWdlUnVsZXM7CiAgICAgdW5zaWduZWQg
bV9ydWxlQ291bnQgeyAwIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdS
ZXNvbHZlci5jcHAKaW5kZXggYzdmODFiMmM0NzdmYjQ4NzZkN2E1NjBmMTQ3OWVkNjliNGNjN2Ew
NS4uZDk2MWY3OTZlNmY1NzkzNGEyMzk2YWQ2NGYwMjMwODU1NDk4MjU5MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcApAQCAtMjI3LDYgKzIyNyw4
IEBAIGJvb2wgU2hhcmluZ1Jlc29sdmVyOjpjYW5TaGFyZVN0eWxlV2l0aEVsZW1lbnQoY29uc3Qg
Q29udGV4dCYgY29udGV4dCwgY29uc3QgU3R5CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBp
ZiAoY2FuZGlkYXRlRWxlbWVudC5mb2N1c2VkKCkgIT0gZWxlbWVudC5mb2N1c2VkKCkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoY2FuZGlkYXRlRWxlbWVudC5oYXNGb2N1c1Zpc2li
bGUoKSAhPSBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaGFzRm9jdXNXaXRoaW4oKSAhPSBlbGVtZW50Lmhh
c0ZvY3VzV2l0aGluKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoY2FuZGlkYXRl
RWxlbWVudC5pc0JlaW5nRHJhZ2dlZCgpICE9IGVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSkKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCAwNmU3NDc5YTJlNjU5ZTNhNzgzMDZkMzA0YmQyMTkzYTAyMWY2NTJlLi43MDQyMGFiNTIy
ZmJkYTM1MzgzNmM1ZjQwODgwMmU5MmFiMmI1NTE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MjEtMDItMTcgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAg
ICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgaW1wbGVtZW50YXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjAyOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGZvY3VzLXZpc2libGUtMDA1
Lmh0bWwgZmFpbHMgaW4gTWFjIGFuZCBpT1MgcGxhdGZvcm1zIGJlY2F1c2UgYnV0dG9ucyBkb24n
dCBnZXQgZm9jdXNlZCBvbiBjbGljaworICAgICAgICAoc2VlIGJ1ZyAjMjIyNjEpLgorCisgICAg
ICAgICogcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKwogMjAyMS0wMi0xNiAgTWFu
dWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAgICBbc2VsZWN0
b3JzXSA6Zm9jdXMtdmlzaWJsZSBwYXJzaW5nIGFuZCBleHBlcmltZW50YWwgZmxhZwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggMTkyOTBmZjkxYjQyZTVkYTFkYmY5NjVjNDc0YzFl
Y2JjNDJmYTRkYi4uYmI3MjYwYWFlYmE4MjYwMDE5NjRiMDIwZGU0NDRiMTQ5YjU1MzJlMSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjEtMDItMTcg
IE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW3Nl
bGVjdG9yc10gOmZvY3VzLXZpc2libGUgaW1wbGVtZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjAyOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSBleHBlY3RhdGlvbnMsIG1vc3Qg
b2YgdGhlIDpmb2N1cy12aXNpYmxlIHRlc3RzIGFyZSBwYXNzaW5nIG5vdy4KKworICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAw
MS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwNy5odG1sOiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMgdGVzdAorICAgICAg
ICAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L3B1bGwvMjc2
NTYpLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDE0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQ6CisKIDIwMjEtMDItMTYg
IE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAKICAgICAgICAgW3Nl
bGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2luZyBhbmQgZXhwZXJpbWVudGFsIGZsYWcKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKaW5kZXggYzEzYmUwMGZkOTVlNzNkYjQx
NzhkYzI4ZTRkNDM5MDNhOTlkNDdmNC4uZDA2MDU0OGNmYTJkMWFjNzcyZjBjMTViNjI1OGEyYjFk
Nzg4NjQzMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNiAr
MSw2IEBACiAKIAogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzJyBwc2V1ZG8tY2xhc3MgbWF0Y2hl
cyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6Zm9jdXMt
dmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxl
ciBhc3NlcnRfdW5yZWFjaGVkOiAnOmZvY3VzLXZpc2libGUnICBpcyBhbiBpbnZhbGlkIHNlbGVj
dG9yLiBTeW50YXhFcnJvcjogRXJyb3I6IGFzc2VydF9lcXVhbHM6ICc6Zm9jdXMtdmlzaWJsZScg
bWF0Y2hlcyBldmVudC50YXJnZXQgZXhwZWN0ZWQgbnVsbCBidXQgZ290IEVsZW1lbnQgbm9kZSA8
aW5wdXQgdHlwZT0idGV4dCI+PC9pbnB1dD4gUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNT
IENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRl
ICdmb2N1cycgZXZlbnQgaGFuZGxlcgogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXdpdGhpbicg
cHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAppbmRleCAyN2UxYTlhZjJhYmU4ZjY3
Yjg4ZWJmYzc3MGNlMzMzNDIzNzkxZWRlLi43ZmU1MDMzY2U4YTQ4YzY2NjgxODkyOTJkOGEzOGI5
NzdlYmYzY2QyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKQEAg
LTEsNiArMSw2IEBACiAKIAogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzJyBwc2V1ZG8tY2xhc3Mg
bWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIKLUZBSUwgQ2hlY2tzIHRoYXQg
Jzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2
ZW50IGhhbmRsZXIgYXNzZXJ0X3VucmVhY2hlZDogJzpmb2N1cy12aXNpYmxlJyAgaXMgYW4gaW52
YWxpZCBzZWxlY3Rvci4gU3ludGF4RXJyb3I6IEVycm9yOiBhc3NlcnRfZXF1YWxzOiAnOmZvY3Vz
LXZpc2libGUnIG1hdGNoZXMgZXZlbnQudGFyZ2V0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVt
ZW50IG5vZGUgPGlucHV0IHR5cGU9InRleHQiPjwvaW5wdXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUg
Y29kZQorUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRj
aGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgogUEFTUyBDaGVja3MgdGhhdCAnOmZv
Y3VzLXdpdGhpbicgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBo
YW5kbGVyCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDg1MGM3YWIxNzAyYjM5MzI0OTAz
NGQwYjMzNmVjOTU2YTNjMTk0MzAuLmVjNzdjZWZjMDI1ODFlNjU1MTU3ODAzZTY5OGU0MzhkM2I2
ODkzMWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dApAQCAtNSw1ICs1LDUgQEAgSWYgdGhlIGVs
ZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxV
UkUuIElmIHRoZSBlbGUKIAogRm9jdXMgbWUuCiAKLUZBSUwgS2V5Ym9hcmQgZm9jdXMgc2hvdWxk
IG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgRElW
I2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YigwLCAwLCAwKSIKK1BBU1MgS2V5Ym9hcmQgZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNp
YmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CmluZGV4IGI1YTllZjQxNGQyZjMwZDhjZmIxMmU4
Y2IwNmRkOWJkMjM5OWM5YTAuLjkzNTg3ZGRkYjYyYjQ1ZmE0ZjA1OWM2YWU5ZTY1Y2I3ODllYzc1
Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dApAQCAtMTgsMTggKzE4LDE4IEBAIElmIHRoZSBl
bGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlM
VVJFLiBJZiB0aGUgZWxlCiAKIAogCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxIHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEgc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MiB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9l
cXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQyIHNob3VsZCBiZSBncmVlbiBleHBl
Y3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMg
ZWxlbWVudCBJTlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29s
b3IgZm9yIElOUFVUI2lucHV0MyBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQ0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMg
a2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1
dDQgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdi
KDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NSB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFz
c2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ1IHNob3VsZCBiZSBncmVl
biBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRs
aW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigw
LCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5Q
VVQjaW5wdXQ3IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3Vw
cG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBV
VCNpbnB1dDcgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdv
dCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OCB2aWEgbW91
c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlu
cHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ4IHNob3VsZCBi
ZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIK
LUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDkgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxz
OiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQg
InJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1l
bnQgSU5QVVQjaW5wdXQxMCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFz
IGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBm
b3IgSU5QVVQjaW5wdXQxMCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDAp
IiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQx
MSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQx
MSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2Io
MCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMiB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFz
c2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMiBzaG91bGQgYmUgZ3Jl
ZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlM
IEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91
dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMyBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJn
YigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQg
VEVYVEFSRUEjaW5wdXQxNCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFz
IGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBm
b3IgVEVYVEFSRUEjaW5wdXQxNCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQxIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMg
a2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNo
IDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQ0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NiB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ3IHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1Mg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50
IElOUFVUI2lucHV0OSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQx
MCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMSB2aWEgbW91c2Ug
c2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0
CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNo
IDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQxMyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNp
YmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgVEVY
VEFSRUEjaW5wdXQxNCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
Ni1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0CmluZGV4IDVh
YWNkNGIxMWYzOGM2M2MxZTY5Njk1OGY1ZDYwNjRmMTQ2Y2JjNDguLjk4MTE1YjFlMTJkMDBkMDY0
NWRiMzk5OTc4YWU4ZWI2Y2YwYjI1MmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dApAQCAtNSw1
ICs1LDUgQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRl
c3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogRm9jdXMgbWUKIAotRkFJTCBGb2N1
cyBzaG91bGQgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIG9uIGNvbnRlbnQgZWRpdGFibGUg
ZGl2cyBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIFNQQU4jZWwgc2hvdWxkIGJlIGdy
ZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFT
UyBGb2N1cyBzaG91bGQgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIG9uIGNvbnRlbnQgZWRp
dGFibGUgZGl2cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dAppbmRleCA4YmI5Y2YzMDcwMGYxMzU4
MmVhNzhhYjIxNzNlM2EyMjJiOWNkYWNkLi45ZjFlZTA5ODlkYzE3N2E3MjRhYjdkYzljY2M3YTJl
MDg3MmQ2ZmM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQKQEAgLTIsOSArMiw5IEBAIFRoaXMg
dGVzdCBjaGVja3MgdGhhdCB1c2luZyB0aGUga2V5Ym9hcmQgaW4gYSB3YXkgdGhhdCBkb2VzIG5v
dCBtb3ZlIGZvY3VzIHN0aWxsCiBJZiB0aGUgdXNlci1hZ2VudCBkb2VzIG5vdCBjbGFpbSB0byBz
dXBwb3J0IHRoZSA6Zm9jdXMtdmlzaWJsZSBwc2V1ZG8tY2xhc3MgdGhlbiBTS0lQIHRoaXMgdGVz
dC4KIFVzZSB0aGUgbW91c2UgdG8gZm9jdXMgdGhlIGVsZW1lbnQgYmVsb3cgdGhhdCBzYXlzICJD
bGljayBtZS4iCiBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgb3V0bGluZSwgdGhlbiB0aGUgdGVz
dCByZXN1bHQgaXMgRkFJTFVSRS4KLVByZXNzIHRoZSBTSElGVCBrZXkuCitQcmVzcyB0aGUgRU5U
RVIga2V5LgogSWYgdGhlIGVsZW1lbnQgbm93IGhhcyBhIGdyZWVuIG91dGxpbmUgYW5kIG5vdCBy
ZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy4KIENsaWNrIG1l
LgogCi1GQUlMIFVzaW5nIGtleWJvYXJkIHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNlZCBzaG91bGQg
dHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsgdXNpbmcgbW91c2Ugd2l0aG91dCBtb3ZpbmcgZm9jdXMg
c2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1vdmluZyBmb2N1cyB1c2luZyBtb3VzZSBzaG91bGQgY2Fu
Y2VsIGl0LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3Qg
InJnYigwLCAwLCAwKSIKK1BBU1MgVXNpbmcga2V5Ym9hcmQgd2hpbGUgZWxlbWVudCBpcyBmb2N1
c2VkIHNob3VsZCB0cmlnZ2VyIDpmb2N1cy12aXNpYmxlOyB1c2luZyBtb3VzZSB3aXRob3V0IG1v
dmluZyBmb2N1cyBzaG91bGQgbm90IGNhbmNlbCBpdDsgbW92aW5nIGZvY3VzIHVzaW5nIG1vdXNl
IHNob3VsZCBjYW5jZWwgaXQuCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1s
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKaW5kZXggMGZjMTk2Y2JlY2RmMWIxOThhNWJhZGNl
MzY5NGIxZWM3Y2M5NWQ0Zi4uMTQ5YTZmNjhmZThjMzAwZjVkZDE3MmI5N2QyZjI5NzRmNWUzMTIx
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA3Lmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAKICAgICA8bGk+SWYgdGhlIHVzZXItYWdlbnQg
ZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgPGNvZGU+OmZvY3VzLXZpc2libGU8L2NvZGU+
IHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LjwvbGk+CiAgICAgPGxpPlVzZSB0aGUg
bW91c2UgdG8gZm9jdXMgdGhlIGVsZW1lbnQgYmVsb3cgdGhhdCBzYXlzICJDbGljayBtZS4iPC9s
aT4KICAgICA8bGk+SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRl
c3QgcmVzdWx0IGlzIEZBSUxVUkUuPC9saT4KLSAgICA8bGk+UHJlc3MgdGhlIFNISUZUIGtleS48
L2xpPgorICAgIDxsaT5QcmVzcyB0aGUgRU5URVIga2V5LjwvbGk+CiAgICAgPGxpPklmIHRoZSBl
bGVtZW50IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFuZCBub3QgcmVkIGJhY2tncm91bmQsIHRo
ZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuPC9saT4KICAgPC9vbD4KIApAQCAtNjUsNyAr
NjUsOCBAQAogICAgICAgICBvbmUuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLCB0LnN0ZXBfZnVu
Yyh0ZXN0X21vZGFsaXR5X2NoYW5nZSkpOwogICAgICAgICBvbmUucmVtb3ZlRXZlbnRMaXN0ZW5l
cigiZm9jdXMiLCBoYW5kbGVfaW5pdGlhbF9mb2N1cyk7CiAKLSAgICAgICAgdGVzdF9kcml2ZXIu
c2VuZF9rZXlzKG9uZSwgIlx1RTA1MCIpOworICAgICAgICBjb25zdCBlbnRlciA9ICJcdUUwMDci
OworICAgICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXMob25lLCBlbnRlcik7CiAgICAgICB9KTsK
IAogICAgICAgY29uc3QgdGVzdF9tb2RhbGl0eV9jaGFuZ2UgPSB0LnN0ZXBfZnVuYygoKSA9PiB7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA5LWV4cGVjdGVkLnR4dAppbmRleCA5YzdiZDFkZjE0MzhlYjQxOWEyODA4MDJkNGQ1
MDUzMzg5YzYwOWRiLi44ZWI0ODRlNDE1MjFkYzFkMjJmNzE4M2RlN2E5ZTIzMzc3ZjliMWU4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwOS1leHBlY3RlZC50eHQKQEAgLTMsNSArMyw1IEBAIElmIHRoZSBidXR0b24gdGhh
dCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5IiBoYXMgYSByZWQgYmFja2dy
b3VuZCwKIAogSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseS4KIAotRkFJTCBBdXRvZm9j
dXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xv
ciBmb3IgQlVUVE9OI2J1dHRvbiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEF1dG9mb2N1cyBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQKaW5kZXggMjZiZGVjODQ2NzU4
Njc1OTQ0MmZiM2VhZmUzMzRmYjU5ZTMxOGJlYy4uMDQ4NWRhYzhhNzhmN2Y0Y2E1ZWUwYWQ3MTY4
OTU1ODkyOTMxZWZhYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTAtZXhwZWN0ZWQudHh0CkBAIC0zLDUgKzMsNSBAQCBJ
ZiB0aGUgZWxlbWVudCB0aGF0IHNheXMgIkkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRpY2FsbHki
IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLAogCiBJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5
LgogCi1GQUlMIFByb2dyYW1tYXRpYyBmb2N1cyBvbiBwYWdlIGxvYWQgc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgRElWI2VsIHNob3Vs
ZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAw
KSIKK1BBU1MgUHJvZ3JhbW1hdGljIGZvY3VzIG9uIHBhZ2UgbG9hZCBzaG91bGQgbWF0Y2ggOmZv
Y3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKaW5kZXggNmIyYTI0ZTFjM2ZmOTM3
OTM3ZGFhMjY5NzZmYjM1YzJmODQxZmVjNi4uNDlhZDhjZTljM2MzYzFjNDEyYTBiOWQ2MzZiNGFm
ZDY2OWM1MzhjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0CkBAIC04LDcgKzgsNSBAQCBJZiB0
aGUgZWxlbWVudCB0aGF0IHNheXMgIlRhcmdldCIgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0
aGUgdGVzdCByZXN1bHQgaXMgYQogSW5pdGlhbAogVGFyZ2V0CiAKLUhhcm5lc3MgRXJyb3IgKFRJ
TUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1GQUlMIDpmb2N1cy12aXNpYmxlIGRvZXMgbm90IG1h
dGNoIGFmdGVyIG1vdXNlIGNsaWNrIGV2ZW4gaWYgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IHdh
cyBtYXRjaGluZyA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IERJViNpbml0aWFsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1
dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRj
aCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMg
bWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKaW5kZXggNmFk
ZTU1MzIzMWQ4N2VhMGU0ZTFkM2M4MGFhMzZiYjMyMWY3MDcwMi4uZjE4MTA4MDZiMmM3YmUzZGMx
MDBhZDhmODliNWFhNWZjOGExYWZlMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CkBAIC0xLDUg
KzEsNSBAQAogCiBUYXJnZXQKIAotRkFJTCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVyIHNj
cmlwdCBmb2N1cyBtb3ZlIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3IgSU5QVVQj
aW5wdXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJy
Z2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQg
Zm9jdXMgbW92ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dAppbmRleCAzZDgxNzNlOGI4YTk3ODVh
MzIxZTI1MTE4ODYzZTBiY2FlN2U2MDcxLi40MTJhYzM0NDlkOTdjYzMwOTk2YjkxZWU1MTdlYjAx
Mjg1Yzg3ZDBiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiBJbml0
aWFsCiAKIAotRkFJTCA6Zm9jdXMtdmlzaWJsZSBhbHdheXMgbWF0Y2ggb24gdGV4dCBpbnB1dHMg
YXNzZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBJTlBVVCN0YXJnZXQgc2hvdWxkIGJl
IGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIK
K1BBU1MgOmZvY3VzLXZpc2libGUgYWx3YXlzIG1hdGNoIG9uIHRleHQgaW5wdXRzCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODVj
NDFhZjJmNzY3MzQxZTVmYzRiNjY3NDVjNjdlZDNjMDgzYjM1NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTAgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IGZvY3VzaW5nIGFu
IGVsZW1lbnQgYWZ0ZXIgYSBjbGljayBkb2VzIG5vdCBjYXVzZSA6Zm9jdXMtdmlzaWJsZSBtYXRj
aGluZyB0byB0cmlnZ2VyLgorSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3Vw
cG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3Qu
CitDbGljayB0aGUgYnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgorSWYgdGhlIGVs
ZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9ncmFtbWF0aWNhbGx5LiIgaGFz
IGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBl
bGVtZW50IGhhcyBhIGdyZWVuIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNV
Q0NFU1MuCisKK0NsaWNrIG1lLgorSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4K
KworRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIgY2xpY2sgc2hvdWxkIG5vdCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIERJViNlbCBz
aG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3QgInJnYmEoMCwg
MCwgMCwgMCkiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uODVjNDFhZjJmNzY3MzQxZTVmYzRiNjY3NDVjNjdlZDNjMDgzYjM1NAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0
aWNhbGx5IGZvY3VzaW5nIGFuIGVsZW1lbnQgYWZ0ZXIgYSBjbGljayBkb2VzIG5vdCBjYXVzZSA6
Zm9jdXMtdmlzaWJsZSBtYXRjaGluZyB0byB0cmlnZ2VyLgorSWYgdGhlIHVzZXItYWdlbnQgZG9l
cyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRo
ZW4gU0tJUCB0aGlzIHRlc3QuCitDbGljayB0aGUgYnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiQ2xp
Y2sgbWUuIgorSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9n
cmFtbWF0aWNhbGx5LiIgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlz
IEZBSUxVUkUuIElmIHRoZSBlbGVtZW50IGhhcyBhIGdyZWVuIGJhY2tncm91bmQsIHRoZW4gdGhl
IHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCisKK0NsaWNrIG1lLgorSSB3aWxsIGJlIGZvY3VzZWQg
cHJvZ3JhbW1hdGljYWxseS4KKworRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIgY2xpY2sg
c2hvdWxkIG5vdCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5k
Q29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCki
IGJ1dCBnb3QgInJnYmEoMCwgMCwgMCwgMCkiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwOS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMjIw
ODI5NjY0MjIyMzgxM2RjODBlZTAyYjY4MDk2NGFlZTIyMmQuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
OS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLVRoaXMgdGVzdCBj
aGVja3MgdGhhdCBhbnkgZWxlbWVudCBmb2N1c2VkIHZpYSBhbiBhdXRvZm9jdXMgYXR0cmlidXRl
IHdpbGwgaGF2ZSA6Zm9jdXMtdmlzaWJsZSBtYXRjaGluZyBlbmFibGVkLgotSWYgdGhlIGJ1dHRv
biB0aGF0IHNheXMgIkkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRpY2FsbHkiIGhhcyBhIHJlZCBi
YWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBn
cmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgotCi1JIHdpbGwg
YmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5LgotCi1GQUlMIEF1dG9mb2N1cyBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBCVVRUT04jYnV0
dG9uIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YmEoMCwgMCwgMCwgMC44NDcpIgotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420963</attachid>
            <date>2021-02-19 07:01:52 -0800</date>
            <delta_ts>2021-02-22 04:02:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210219160150.patch</filename>
            <type>text/plain</type>
            <size>41962</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uYWVlM2E0OWEzZWZiMTk4Yzg3M2RkMWM2N2Y0YjVi
NTk1ZWJjYjBlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbykuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtKgorCisgICAg
ICAgICogY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKFdlYkNv
cmU6Om1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyk6IENoZWNrIGVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkuCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RWxlbWVudDo6ZGlzcGF0Y2hLZXlFdmVudCk6IElmIHRoZSBlbGVtZW50IGlzIGZvY3VzZWQs
IGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVu
dDo6c2V0Rm9jdXMpOiBXaGVuIGFuIGVsZW1lbnQgbG9zZXMgZm9jdXMgaXQgYWx3YXlzIGNhbGwg
c2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKS4gV2hlbiBhbiBlbGVtZW50IGdldHMgZm9jdXNlZAor
ICAgICAgICBpdCBjYWxscyBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGVsZW1lbnRzIHRo
YXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoYXMgdGhleSBhbHdheXMgbWF0Y2ggOmZvY3VzLXZp
c2libGUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0SGFzRm9jdXNWaXNpYmxlKTog
TmV3IG1ldGhvZCBnYXRlZCBiZWhpbmQgdGhlIGV4cGVyaW1lbnRhbCBmbGFnLgorICAgICAgICAo
V2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOiBNYW5hZ2Ugc2NyaXB0IGZvY3VzIGtlZXBpbmcgdHJh
Y2sgb2YgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IG1hdGNoaW5nIChvciBub3QpIDpmb2N1cy12
aXNpYmxlLAorICAgICAgICB0byBsYXRlciBjYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSgpIG9uIHRo
ZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQuCisgICAgICAgICogZG9tL0VsZW1lbnQuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlzaWJsZSBjb25zdCk6IEFkZCBuZXcgbWV0
aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgIChXZWJDb3JlOjpOb2RlOjpmbGFn
SGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZvciA6Zm9jdXMtdmlzaWJsZSBtYXRjaGlu
Zy4KKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcik6IENhbGwgc2V0
SGFzRm9jdXNWaXNpYmxlKHRydWUpIGZvciBrZXlib2FyZCBmb2N1cy4KKyAgICAgICAgKiBwYWdl
L0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OnNjcm9sbFRvRnJh
Z21lbnRJbnRlcm5hbCk6IENhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpIGZvciBhbmNob3Ig
Zm9jdXMuCisgICAgICAgICogc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGU6OkVsZW1lbnRSdWxlQ29sbGVjdG9yOjpjb2xsZWN0TWF0Y2hpbmdS
dWxlcyk6IEFkZCA6Zm9jdXMtdmlzaWJsZSBydWxlcyBzdHVmZiBsaWtlIHdlIGFscmVhZHkgaGF2
ZSBmb3IgOmZvY3VzLgorICAgICAgICAqIHN0eWxlL1J1bGVTZXQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OlJ1bGVTZXQ6OmFkZFJ1bGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6
OlN0eWxlOjpSdWxlU2V0Ojp0cmF2ZXJzZVJ1bGVEYXRhcyk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OlJ1bGVTZXQ6OnNocmlua1RvRml0KTogRGl0dG8uCisgICAgICAgICogc3R5
bGUvUnVsZVNldC5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlJ1bGVTZXQ6OmZvY3VzVmlz
aWJsZVBzZXVkb0NsYXNzUnVsZXMgY29uc3QpOiBEaXR0by4KKyAgICAgICAgKiBzdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6U2hhcmluZ1Jl
c29sdmVyOjpjYW5TaGFyZVN0eWxlV2l0aEVsZW1lbnQgY29uc3QpOiBBZGQgY2hlY2sgZm9yIGhh
c0ZvY3VzVmlzaWJsZSgpLgorCiAyMDIxLTAyLTE2ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8
cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIHBh
cnNpbmcgYW5kIGV4cGVyaW1lbnRhbCBmbGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1Nl
bGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaAppbmRleCA2Zjc3ZjllNjRiY2JiZDNiMjZlODJh
ZTk1MTUxZjBkOGNlMGZiYWVkLi44MDAxM2YwNWYxZWRlMWJiYzA2NjkwODYyZDgyZGY5M2U0ZmNj
OTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1
bmN0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVu
Y3Rpb25zLmgKQEAgLTQ3NCw3ICs0NzQsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNG
b2N1c1BzZXVkb0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpCiAKIEFMV0FZU19JTkxJTkUg
Ym9vbCBtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVu
dCkKIHsKLSAgICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0
YXRlKGVsZW1lbnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAg
aWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBD
U1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIHJldHVybiBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICYmIGlzRnJhbWVGb2N1
c2VkKGVsZW1lbnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dC5jcHAKaW5kZXggZjg4NmEwZmNkN2U5MGU1MjFlNWViN2M3N2M3NzY3NzMyNDRkYjcxYS4uODA4
MzYwZWM4NzhjNDQyMGUyNWMwNzIxY2YyYjdjNzBkNzE5Mzk2ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50
LmNwcApAQCAtNDU5LDYgKzQ1OSwxMSBAQCBib29sIEVsZW1lbnQ6OmRpc3BhdGNoS2V5RXZlbnQo
Y29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50JiBwbGF0Zm9ybUV2ZW50KQogICAgICAgICAgICAg
ZXZlbnQtPnN0b3BQcm9wYWdhdGlvbigpOwogICAgIH0KIAorICAgIGlmIChmb2N1c2VkKCkpIHsK
KyAgICAgICAgLy8gSWYgdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdmlhIHRoZSBr
ZXlib2FyZCwgdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlLgorICAgICAgICBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfQorCiAg
ICAgZGlzcGF0Y2hFdmVudChldmVudCk7CiAgICAgcmV0dXJuICFldmVudC0+ZGVmYXVsdFByZXZl
bnRlZCgpICYmICFldmVudC0+ZGVmYXVsdEhhbmRsZWQoKTsKIH0KQEAgLTc0NCw2ICs3NDksMjUg
QEAgdm9pZCBFbGVtZW50OjpzZXRGb2N1cyhib29sIGZsYWcpCiAKICAgICBmb3IgKGF1dG8qIGVs
ZW1lbnQgPSB0aGlzOyBlbGVtZW50OyBlbGVtZW50ID0gZWxlbWVudC0+cGFyZW50RWxlbWVudElu
Q29tcG9zZWRUcmVlKCkpCiAgICAgICAgIGVsZW1lbnQtPnNldEhhc0ZvY3VzV2l0aGluKGZsYWcp
OworCisgICAgaWYgKGZsYWcpIHsKKyAgICAgICAgLy8gRWxlbWVudHMgdGhhdCBzdXBwb3J0IGtl
eWJvYXJkIGlucHV0IChmb3JtIGlucHV0cyBhbmQgY29udGVudGVkaXRhYmxlKSBhbHdheXMgbWF0
Y2ggOmZvY3VzLXZpc2libGUgd2hlbiBmb2N1c2VkLgorICAgICAgICBpZiAoaXNUZXh0RmllbGQo
KSB8fCBpc0NvbnRlbnRFZGl0YWJsZSgpKQorICAgICAgICAgICAgc2V0SGFzRm9jdXNWaXNpYmxl
KHRydWUpOworICAgIH0gZWxzZQorICAgICAgICBzZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpOwor
fQorCit2b2lkIEVsZW1lbnQ6OnNldEhhc0ZvY3VzVmlzaWJsZShib29sIGZsYWcpCit7CisgICAg
aWYgKCFkb2N1bWVudCgpLnNldHRpbmdzKCkuZm9jdXNWaXNpYmxlRW5hYmxlZCgpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpZiAoaGFzRm9jdXNWaXNpYmxlKCkgPT0gZmxhZykKKyAgICAgICAg
cmV0dXJuOworCisgICAgU3R5bGU6OlBzZXVkb0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uIHN0eWxl
SW52YWxpZGF0aW9uKCp0aGlzLCBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUp
OworICAgIHNldE5vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUsIGZsYWcpOwogfQog
CiB2b2lkIEVsZW1lbnQ6OnNldEhhc0ZvY3VzV2l0aGluKGJvb2wgZmxhZykKQEAgLTMwMDcsNiAr
MzAzMSw5IEBAIHZvaWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJl
c3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyCiAgICAgICAgIHJldHVybjsKIAogICAg
IGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVmKHRoaXMtPmRvY3VtZW50KCkpOworICAgIC8vIEZvciBz
Y3JpcHQgZm9jdXMgdGhlIG5ld2x5IGZvY3VzZWQgZWxlbWVudCBzaG91bGQgbWF0Y2ggKG9yIG5v
dCkgOmZvY3VzLXZpc2libGUgaWYgdGhlIGFjdGl2ZSBlbGVtZW50IG1hdGNoZXMgKG9yIG5vdCkg
OmZvY3VzLXZpc2libGUuCisgICAgLy8gSWYgdGhlcmUncyBubyBhY3RpdmUgZWxlbWVudCB0aGVu
IHNjcmlwdCBmb2N1cyBhbHdheXMgbWF0Y2hlcyA6Zm9jdXMtdmlzaWJsZS4KKyAgICBib29sIG5l
d2x5Rm9jdXNlZEVsZW1lbnRTaG91bGRNYXRjaEZvY3VzVmlzaWJsZSA9ICFkb2N1bWVudC0+Zm9j
dXNlZEVsZW1lbnQoKSB8fCBkb2N1bWVudC0+Zm9jdXNlZEVsZW1lbnQoKS0+aGFzRm9jdXNWaXNp
YmxlKCk7CiAgICAgaWYgKGRvY3VtZW50LT5mb2N1c2VkRWxlbWVudCgpID09IHRoaXMpIHsKICAg
ICAgICAgaWYgKGRvY3VtZW50LT5wYWdlKCkpCiAgICAgICAgICAgICBkb2N1bWVudC0+cGFnZSgp
LT5jaHJvbWUoKS5jbGllbnQoKS5lbGVtZW50RGlkUmVmb2N1cygqdGhpcyk7CkBAIC0zMDQyLDEx
ICszMDY5LDE2IEBAIHZvaWQgRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
IHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyCiAgICAgICAgIGlmICghZnJhbWUu
aGFzSGFkVXNlckludGVyYWN0aW9uKCkgJiYgIWZyYW1lLmlzTWFpbkZyYW1lKCkgJiYgIWRvY3Vt
ZW50LT50b3BEb2N1bWVudCgpLnNlY3VyaXR5T3JpZ2luKCkuaXNTYW1lT3JpZ2luRG9tYWluKGRv
Y3VtZW50LT5zZWN1cml0eU9yaWdpbigpKSkKICAgICAgICAgICAgIHJldHVybjsKIAorICAgICAg
ICBpZiAoIW5ld1RhcmdldC0+aGFzRm9jdXNWaXNpYmxlKCkpCisgICAgICAgICAgICBuZXdUYXJn
ZXQtPnNldEhhc0ZvY3VzVmlzaWJsZShuZXdseUZvY3VzZWRFbGVtZW50U2hvdWxkTWF0Y2hGb2N1
c1Zpc2libGUpOworCiAgICAgICAgIC8vIEZvY3VzIGFuZCBjaGFuZ2UgZXZlbnQgaGFuZGxlcnMg
Y2FuIGNhdXNlIHVzIHRvIGxvc2Ugb3VyIGxhc3QgcmVmLgogICAgICAgICAvLyBJZiBhIGZvY3Vz
IGV2ZW50IGhhbmRsZXIgY2hhbmdlcyB0aGUgZm9jdXMgdG8gYSBkaWZmZXJlbnQgbm9kZSBpdAog
ICAgICAgICAvLyBkb2VzIG5vdCBtYWtlIHNlbnNlIHRvIGNvbnRpbnVlIGFuZCB1cGRhdGUgYXBw
ZWFyZW5jZS4KLSAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2Vk
RWxlbWVudChuZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgZGlyZWN0aW9uKSkK
KyAgICAgICAgaWYgKCFwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5zZXRGb2N1c2VkRWxlbWVudChu
ZXdUYXJnZXQuZ2V0KCksICpkb2N1bWVudC0+ZnJhbWUoKSwgZGlyZWN0aW9uKSkgeworICAgICAg
ICAgICAgbmV3VGFyZ2V0LT5zZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpOwogICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CiAgICAgfQogCiAgICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2Vk
RWxlbWVudChyZXN0b3JhdGlvbk1vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOTZiZDc2MDNm
ZWQ3NDFlOTI3MWQ5YmI1YTJlYTYxOGM0MDc5ODQzYy4uOTQ5Y2JiYzNmOTY1MTc1NzZlZTIzMjZk
OTlkYTJmMzg5ODc0ZDcxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC0zMTksMTIgKzMxOSwxNCBA
QCBwdWJsaWM6CiAgICAgYm9vbCBob3ZlcmVkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9u
RWxlbWVudCgpICYmIGlzVXNlckFjdGlvbkVsZW1lbnRIb3ZlcmVkKCk7IH0KICAgICBib29sIGZv
Y3VzZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0
aW9uRWxlbWVudEZvY3VzZWQoKTsgfQogICAgIGJvb2wgaXNCZWluZ0RyYWdnZWQoKSBjb25zdCB7
IHJldHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudERyYWdn
ZWQoKTsgfQorICAgIGJvb2wgaGFzRm9jdXNWaXNpYmxlKCkgY29uc3QgeyByZXR1cm4gaGFzTm9k
ZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3VzVmlzaWJsZSk7IH07CiAgICAgYm9vbCBoYXNGb2N1c1dp
dGhpbigpIGNvbnN0IHsgcmV0dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhp
bik7IH07CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWN0aXZlKGJvb2wgPSB0cnVlLCBib29sIHBh
dXNlID0gZmFsc2UsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRp
b25TY29wZTo6QWxsKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSwg
U3R5bGU6OkludmFsaWRhdGlvblNjb3BlID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwp
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRGb2N1cyhib29sKTsKICAgICB2b2lkIHNldEJlaW5nRHJh
Z2dlZChib29sKTsKKyAgICB2b2lkIHNldEhhc0ZvY3VzVmlzaWJsZShib29sKTsKICAgICB2b2lk
IHNldEhhc0ZvY3VzV2l0aGluKGJvb2wpOwogCiAgICAgT3B0aW9uYWw8aW50PiB0YWJJbmRleFNl
dEV4cGxpY2l0bHkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCmluZGV4IDJlY2QxNWQ2ZDk0ZDVhOTRhZjc1
OWZiZDU1NzY1MjU3YWY0ZDY2ZTEuLmNhNzBhYzIyMjlhMDE5NDQxNDViMjQxZGIzNDFkZmVjM2Nh
Mzc4ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL05vZGUuaApAQCAtNTEwLDYgKzUxMCw3IEBAIHB1YmxpYzoKICAgICBzdGF0
aWMgaW50MzJfdCBmbGFnSXNTaGFkb3dSb290KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJf
dD4oTm9kZUZsYWc6OklzU2hhZG93Um9vdCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNI
VE1MKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzSFRNTEVsZW1l
bnQpOyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzTGluaygpIHsgcmV0dXJuIHN0YXRpY19j
YXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc0xpbmspOyB9CisgICAgc3RhdGljIGludDMyX3QgZmxh
Z0hhc0ZvY3VzVmlzaWJsZSgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFn
OjpIYXNGb2N1c1Zpc2libGUpOyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzV2l0
aGluKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzV2l0
aGluKTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVk
KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzUGFyc2luZ0NoaWxk
cmVuRmluaXNoZWQpOyB9CiAjZW5kaWYgLy8gRU5BQkxFKEpJVCkKQEAgLTU1MCw4ICs1NTEsOSBA
QCBwcm90ZWN0ZWQ6CiAgICAgICAgIENvbnRhaW5zRnVsbFNjcmVlbkVsZW1lbnQgPSAxIDw8IDI1
LAogI2VuZGlmCiAgICAgICAgIElzQ29tcHV0ZWRTdHlsZUludmFsaWRGbGFnID0gMSA8PCAyNiwK
KyAgICAgICAgSGFzRm9jdXNWaXNpYmxlID0gMSA8PCAyNywKIAotICAgICAgICAvLyBCaXRzIDI3
LTMxIGFyZSBmcmVlLgorICAgICAgICAvLyBCaXRzIDI4LTMxIGFyZSBmcmVlLgogICAgIH07CiAK
ICAgICBlbnVtIGNsYXNzIFRhYkluZGV4U3RhdGUgOiB1aW50OF90IHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRm9jdXNDb250cm9sbGVyLmNwcAppbmRleCAwN2FiYWQwNjBlMDEzZWI4YjdhYzU2MDBkZDQ0
MTk2ZDJiMWFhOWZhLi5lYWRkYTc5MDk1OTdlYzI3YWU1YWE3MTlhNjk1YzMwNDI1MTAyNDkxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCkBAIC01MzMsNiArNTMzLDcg
QEAgYm9vbCBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcihGb2N1
c0RpcmVjdGlvbiBkaXJlY3Rpb24sIEtleWIKICAgICAgICAgfQogICAgIH0KIAorICAgIGVsZW1l
bnQtPnNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKTsKICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rp
b25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKICAgICByZXR1cm4gdHJ1
ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRleCA1YWYxZGMyYjU4NWNiYmVhMTA3
MjliODdhODg5YWM0ZGQyNjljYjQyLi4zYjE4NjAzYWVmNWRkNWI2NzE1MTNiYjUyOWM2YmMyNmQ5
YzhlNDRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCkBAIC0yMjY4LDkgKzIyNjgsMTAg
QEAgYm9vbCBGcmFtZVZpZXc6OnNjcm9sbFRvRnJhZ21lbnRJbnRlcm5hbChjb25zdCBTdHJpbmcm
IGZyYWdtZW50SWRlbnRpZmllcikKICAgICAKICAgICAvLyBJZiB0aGUgYW5jaG9yIGFjY2VwdHMg
a2V5Ym9hcmQgZm9jdXMsIG1vdmUgZm9jdXMgdGhlcmUgdG8gYWlkIHVzZXJzIHJlbHlpbmcgb24g
a2V5Ym9hcmQgbmF2aWdhdGlvbi4KICAgICBpZiAoYW5jaG9yRWxlbWVudCkgewotICAgICAgICBp
ZiAoYW5jaG9yRWxlbWVudC0+aXNGb2N1c2FibGUoKSkKKyAgICAgICAgaWYgKGFuY2hvckVsZW1l
bnQtPmlzRm9jdXNhYmxlKCkpIHsKKyAgICAgICAgICAgIGFuY2hvckVsZW1lbnQtPnNldEhhc0Zv
Y3VzVmlzaWJsZSh0cnVlKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzZWRFbGVtZW50
KGFuY2hvckVsZW1lbnQuZ2V0KCkpOwotICAgICAgICBlbHNlIHsKKyAgICAgICAgfSBlbHNlIHsK
ICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzZWRFbGVtZW50KG51bGxwdHIpOwogICAgICAg
ICAgICAgZG9jdW1lbnQuc2V0Rm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2RlKGFuY2hvckVsZW1l
bnQuZ2V0KCkpOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9F
bGVtZW50UnVsZUNvbGxlY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVs
ZUNvbGxlY3Rvci5jcHAKaW5kZXggZTE4MGNjZGZhOWY2OGZhYWMwOTEwYzIzM2MyMThkN2VmZDZh
MDRhNC4uY2M0OGM0YTY2OGQ3MDkzZjMyM2I0MDBmNGU4MGMxMGMwNjRiOGU5MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcApAQCAtMTU3LDYgKzE1
Nyw4IEBAIHZvaWQgRWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGluZ1J1bGVzKGNv
bnN0IE1hdGNoUmVxdWVzdCYgbWF0Y2hSZXF1ZXN0CiAgICAgICAgIGNvbGxlY3RNYXRjaGluZ1J1
bGVzRm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+bGlua1BzZXVkb0NsYXNzUnVsZXMoKSwg
bWF0Y2hSZXF1ZXN0KTsKICAgICBpZiAobWF0Y2hlc0ZvY3VzUHNldWRvQ2xhc3MoZWxlbWVudCgp
KSkKICAgICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxl
U2V0LT5mb2N1c1BzZXVkb0NsYXNzUnVsZXMoKSwgbWF0Y2hSZXF1ZXN0KTsKKyAgICBpZiAobWF0
Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKGVsZW1lbnQoKSkpCisgICAgICAgIGNvbGxlY3RN
YXRjaGluZ1J1bGVzRm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+Zm9jdXNWaXNpYmxlUHNl
dWRvQ2xhc3NSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVz
Rm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+dGFnUnVsZXMoZWxlbWVudCgpLmxvY2FsTmFt
ZSgpLCBlbGVtZW50KCkuaXNIVE1MRWxlbWVudCgpICYmIGVsZW1lbnQoKS5kb2N1bWVudCgpLmlz
SFRNTERvY3VtZW50KCkpLCBtYXRjaFJlcXVlc3QpOwogICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVz
Rm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+dW5pdmVyc2FsUnVsZXMoKSwgbWF0Y2hSZXF1
ZXN0KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwIGIv
U291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAKaW5kZXggM2E1YjU2MTBiYTc2YzM5Njc0
MGY2MTAwMWNlYjhkMmYwYTNkOThjOS4uZTRhOWYwNjU2NmMzMjE0MTM5NjdlM2MxZjZkMTBhNmI5
ODBlMzUzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAKQEAgLTk4LDYgKzk4LDcgQEAgdm9p
ZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0
b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICBjb25zdCBDU1NTZWxlY3RvciogY2xhc3NTZWxlY3Rv
ciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGxpbmtTZWxlY3RvciA9IG51bGxw
dHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3VzU2VsZWN0b3IgPSBudWxscHRyOworICAg
IGNvbnN0IENTU1NlbGVjdG9yKiBmb2N1c1Zpc2libGVTZWxlY3RvciA9IG51bGxwdHI7CiAgICAg
Y29uc3QgQ1NTU2VsZWN0b3IqIGhvc3RQc2V1ZG9DbGFzc1NlbGVjdG9yID0gbnVsbHB0cjsKICAg
ICBjb25zdCBDU1NTZWxlY3RvciogY3VzdG9tUHNldWRvRWxlbWVudFNlbGVjdG9yID0gbnVsbHB0
cjsKICAgICBjb25zdCBDU1NTZWxlY3Rvciogc2xvdHRlZFBzZXVkb0VsZW1lbnRTZWxlY3RvciA9
IG51bGxwdHI7CkBAIC0xNjIsNiArMTYzLDkgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0
IFN0eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQgc2UKICAg
ICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXM6CiAgICAgICAgICAg
ICAgICAgZm9jdXNTZWxlY3RvciA9IHNlbGVjdG9yOwogICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGU6Cisg
ICAgICAgICAgICAgICAgZm9jdXNWaXNpYmxlU2VsZWN0b3IgPSBzZWxlY3RvcjsKKyAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNz
SG9zdDoKICAgICAgICAgICAgICAgICBob3N0UHNldWRvQ2xhc3NTZWxlY3RvciA9IHNlbGVjdG9y
OwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjQ5LDYgKzI1MywxMSBAQCB2b2lkIFJ1bGVT
ZXQ6OmFkZFJ1bGUoY29uc3QgU3R5bGVSdWxlJiBydWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4
LCB1bnNpZ25lZCBzZQogICAgICAgICByZXR1cm47CiAgICAgfQogCisgICAgaWYgKGZvY3VzVmlz
aWJsZVNlbGVjdG9yKSB7CisgICAgICAgIG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcy5h
cHBlbmQocnVsZURhdGEpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKHRhZ1Nl
bGVjdG9yKSB7CiAgICAgICAgIGFkZFRvUnVsZVNldCh0YWdTZWxlY3Rvci0+dGFnUU5hbWUoKS5s
b2NhbE5hbWUoKSwgbV90YWdMb2NhbE5hbWVSdWxlcywgcnVsZURhdGEpOwogICAgICAgICBhZGRU
b1J1bGVTZXQodGFnU2VsZWN0b3ItPnRhZ0xvd2VyY2FzZUxvY2FsTmFtZSgpLCBtX3RhZ0xvd2Vy
Y2FzZUxvY2FsTmFtZVJ1bGVzLCBydWxlRGF0YSk7CkBAIC0zOTYsNiArNDA1LDcgQEAgdm9pZCBS
dWxlU2V0Ojp0cmF2ZXJzZVJ1bGVEYXRhcyhGdW5jdGlvbiYmIGZ1bmN0aW9uKQogICAgIHRyYXZl
cnNlVmVjdG9yKG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0
b3IobV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzKTsKICAgICB0cmF2ZXJzZVZlY3RvcihtX2ZvY3Vz
UHNldWRvQ2xhc3NSdWxlcyk7CisgICAgdHJhdmVyc2VWZWN0b3IobV9mb2N1c1Zpc2libGVQc2V1
ZG9DbGFzc1J1bGVzKTsKICAgICB0cmF2ZXJzZVZlY3RvcihtX3VuaXZlcnNhbFJ1bGVzKTsKIH0K
IApAQCAtNDk3LDYgKzUwNyw3IEBAIHZvaWQgUnVsZVNldDo6c2hyaW5rVG9GaXQoKQogICAgIG1f
aG9zdFBzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3Nsb3R0ZWRQc2V1ZG9F
bGVtZW50UnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlcy5z
aHJpbmtUb0ZpdCgpOworICAgIG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcy5zaHJpbmtU
b0ZpdCgpOwogICAgIG1fdW5pdmVyc2FsUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3BhZ2VS
dWxlcy5zaHJpbmtUb0ZpdCgpOwogICAgIG1fZmVhdHVyZXMuc2hyaW5rVG9GaXQoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1J1bGVTZXQuaAppbmRleCA5OWFhMTYwZDkwNjg0NGZhZDM0ZGMxYTI3MDE2YTAwMzZiZGUz
MDc5Li4zZDViNWIzMTQ3MDBjNTBmNDVkYzE1ZDg0NjY3NDZjMGU5YTA2OGQzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvUnVsZVNldC5oCkBAIC0xMjksNiArMTI5LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFJ1bGVE
YXRhVmVjdG9yJiBzbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9z
bG90dGVkUHNldWRvRWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3ImIHBh
cnRQc2V1ZG9FbGVtZW50UnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3BhcnRQc2V1ZG9FbGVtZW50
UnVsZXM7IH0KICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogZm9jdXNQc2V1ZG9DbGFzc1J1bGVz
KCkgY29uc3QgeyByZXR1cm4gJm1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzOyB9CisgICAgY29uc3Qg
UnVsZURhdGFWZWN0b3IqIGZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMoKSBjb25zdCB7IHJl
dHVybiAmbV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzOyB9CiAgICAgY29uc3QgUnVsZURh
dGFWZWN0b3IqIHVuaXZlcnNhbFJ1bGVzKCkgY29uc3QgeyByZXR1cm4gJm1fdW5pdmVyc2FsUnVs
ZXM7IH0KIAogICAgIGNvbnN0IFZlY3RvcjxTdHlsZVJ1bGVQYWdlKj4mIHBhZ2VSdWxlcygpIGNv
bnN0IHsgcmV0dXJuIG1fcGFnZVJ1bGVzOyB9CkBAIC0xNjcsNiArMTY4LDcgQEAgcHJpdmF0ZToK
ICAgICBSdWxlRGF0YVZlY3RvciBtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXM7CiAgICAgUnVs
ZURhdGFWZWN0b3IgbV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9y
IG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzOworICAgIFJ1bGVEYXRhVmVjdG9yIG1fZm9jdXNWaXNp
YmxlUHNldWRvQ2xhc3NSdWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX3VuaXZlcnNhbFJ1bGVz
OwogICAgIFZlY3RvcjxTdHlsZVJ1bGVQYWdlKj4gbV9wYWdlUnVsZXM7CiAgICAgdW5zaWduZWQg
bV9ydWxlQ291bnQgeyAwIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdS
ZXNvbHZlci5jcHAKaW5kZXggYzdmODFiMmM0NzdmYjQ4NzZkN2E1NjBmMTQ3OWVkNjliNGNjN2Ew
NS4uZDk2MWY3OTZlNmY1NzkzNGEyMzk2YWQ2NGYwMjMwODU1NDk4MjU5MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcApAQCAtMjI3LDYgKzIyNyw4
IEBAIGJvb2wgU2hhcmluZ1Jlc29sdmVyOjpjYW5TaGFyZVN0eWxlV2l0aEVsZW1lbnQoY29uc3Qg
Q29udGV4dCYgY29udGV4dCwgY29uc3QgU3R5CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBp
ZiAoY2FuZGlkYXRlRWxlbWVudC5mb2N1c2VkKCkgIT0gZWxlbWVudC5mb2N1c2VkKCkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoY2FuZGlkYXRlRWxlbWVudC5oYXNGb2N1c1Zpc2li
bGUoKSAhPSBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaGFzRm9jdXNXaXRoaW4oKSAhPSBlbGVtZW50Lmhh
c0ZvY3VzV2l0aGluKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoY2FuZGlkYXRl
RWxlbWVudC5pc0JlaW5nRHJhZ2dlZCgpICE9IGVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSkKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCAwNmU3NDc5YTJlNjU5ZTNhNzgzMDZkMzA0YmQyMTkzYTAyMWY2NTJlLi43MDQyMGFiNTIy
ZmJkYTM1MzgzNmM1ZjQwODgwMmU5MmFiMmI1NTE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MjEtMDItMTcgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAg
ICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgaW1wbGVtZW50YXRpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjAyOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGZvY3VzLXZpc2libGUtMDA1
Lmh0bWwgZmFpbHMgaW4gTWFjIGFuZCBpT1MgcGxhdGZvcm1zIGJlY2F1c2UgYnV0dG9ucyBkb24n
dCBnZXQgZm9jdXNlZCBvbiBjbGljaworICAgICAgICAoc2VlIGJ1ZyAjMjIyNjEpLgorCisgICAg
ICAgICogcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKwogMjAyMS0wMi0xNiAgTWFu
dWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAogICAgICAgICBbc2VsZWN0
b3JzXSA6Zm9jdXMtdmlzaWJsZSBwYXJzaW5nIGFuZCBleHBlcmltZW50YWwgZmxhZwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggMTkyOTBmZjkxYjQyZTVkYTFkYmY5NjVjNDc0YzFl
Y2JjNDJmYTRkYi4uNzVlMGZlNWYyMjE4MjgzYTg5YzkzMzFiYjJlYzc3ZDY1Y2RkYTQzOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjEtMDItMTcg
IE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW3Nl
bGVjdG9yc10gOmZvY3VzLXZpc2libGUgaW1wbGVtZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMjAyOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSBleHBlY3RhdGlvbnMsIG1vc3Qg
b2YgdGhlIDpmb2N1cy12aXNpYmxlIHRlc3RzIGFyZSBwYXNzaW5nIG5vdy4KKworICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAw
MS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwNy5odG1sOiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMgdGVzdAorICAgICAg
ICAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L3B1bGwvMjc2
NTYpLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDExLmh0bWw6IEltcG9ydCBsYXN0IGNoYW5nZXMgb24gdGhpcyB0ZXN0CisgICAgICAg
IChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvcHVsbC8yNzcw
MCkuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMTMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50
eHQ6CisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2luZyBhbmQgZXhw
ZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKaW5kZXgg
YzEzYmUwMGZkOTVlNzNkYjQxNzhkYzI4ZTRkNDM5MDNhOTlkNDdmNC4uZDA2MDU0OGNmYTJkMWFj
NzcyZjBjMTViNjI1OGEyYjFkNzg4NjQzMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2
ZW50LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBl
Y3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzJyBw
c2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCi1GQUlMIENo
ZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdm
b2N1cycgZXZlbnQgaGFuZGxlciBhc3NlcnRfdW5yZWFjaGVkOiAnOmZvY3VzLXZpc2libGUnICBp
cyBhbiBpbnZhbGlkIHNlbGVjdG9yLiBTeW50YXhFcnJvcjogRXJyb3I6IGFzc2VydF9lcXVhbHM6
ICc6Zm9jdXMtdmlzaWJsZScgbWF0Y2hlcyBldmVudC50YXJnZXQgZXhwZWN0ZWQgbnVsbCBidXQg
Z290IEVsZW1lbnQgbm9kZSA8aW5wdXQgdHlwZT0idGV4dCI+PC9pbnB1dD4gUmVhY2hlZCB1bnJl
YWNoYWJsZSBjb2RlCitQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNs
YXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgogUEFTUyBDaGVja3MgdGhh
dCAnOmZvY3VzLXdpdGhpbicgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZl
bnQgaGFuZGxlcgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAppbmRl
eCAyN2UxYTlhZjJhYmU4ZjY3Yjg4ZWJmYzc3MGNlMzMzNDIzNzkxZWRlLi43ZmU1MDMzY2U4YTQ4
YzY2NjgxODkyOTJkOGEzOGI5NzdlYmYzY2QyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNp
bi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAw
MS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogUEFTUyBDaGVja3MgdGhhdCAnOmZv
Y3VzJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIK
LUZBSUwgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBp
bnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIgYXNzZXJ0X3VucmVhY2hlZDogJzpmb2N1cy12
aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4gU3ludGF4RXJyb3I6IEVycm9yOiBhc3Nl
cnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNoZXMgZXZlbnQudGFyZ2V0IGV4cGVjdGVk
IG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0IHR5cGU9InRleHQiPjwvaW5wdXQ+IFJl
YWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUn
IHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgogUEFT
UyBDaGVja3MgdGhhdCAnOmZvY3VzLXdpdGhpbicgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRl
ICdmb2N1c2luJyBldmVudCBoYW5kbGVyCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
MS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDg1
MGM3YWIxNzAyYjM5MzI0OTAzNGQwYjMzNmVjOTU2YTNjMTk0MzAuLmVjNzdjZWZjMDI1ODFlNjU1
MTU3ODAzZTY5OGU0MzhkM2I2ODkzMWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dApAQCAtNSw1
ICs1LDUgQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRl
c3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogRm9jdXMgbWUuCiAKLUZBSUwgS2V5
Ym9hcmQgZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91
dGxpbmVDb2xvciBmb3IgRElWI2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEy
OCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgS2V5Ym9hcmQgZm9jdXMgc2hvdWxk
IG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CmluZGV4IGI1YTll
ZjQxNGQyZjMwZDhjZmIxMmU4Y2IwNmRkOWJkMjM5OWM5YTAuLjkzNTg3ZGRkYjYyYjQ1ZmE0ZjA1
OWM2YWU5ZTY1Y2I3ODllYzc1Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dApAQCAtMTgsMTgg
KzE4LDE4IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0
ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIAogCi1GQUlMIEZvY3VzIGVsZW1l
bnQgSU5QVVQjaW5wdXQxIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMg
aXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZv
ciBJTlBVVCNpbnB1dDEgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MiB2
aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJv
YXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQyIHNo
b3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAw
LCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MyBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQ0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDQgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4
LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0NSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5w
dXQ1IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBh
c3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NiBzaG91bGQgYmUgZ3Jl
ZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlM
IEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ3IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDcgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2Io
MCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0OCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1
cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5Q
VVQjaW5wdXQ4IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBn
b3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDkgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OSBzaG91bGQg
YmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCki
Ci1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNo
IDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVh
bHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0
ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVs
ZW1lbnQgSU5QVVQjaW5wdXQxMSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xv
ciBmb3IgSU5QVVQjaW5wdXQxMSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQxMiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5w
dXQxMiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJy
Z2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMyB2aWEgbW91c2Ug
c2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0
IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMyBzaG91bGQgYmUg
Z3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1G
QUlMIEZvY3VzIGVsZW1lbnQgVEVYVEFSRUEjaW5wdXQxNCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNo
IDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVh
bHM6IG91dGxpbmVDb2xvciBmb3IgVEVYVEFSRUEjaW5wdXQxNCBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQxIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MyB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ0IHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1Mg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50
IElOUFVUI2lucHV0NiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ3
IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5
Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAor
UEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVs
ZW1lbnQgSU5QVVQjaW5wdXQxMCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQj
aW5wdXQxMSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBv
cnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMiB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMyB2aWEgbW91c2Ugc2hvdWxk
IG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNT
IEZvY3VzIGVsZW1lbnQgVEVYVEFSRUEjaW5wdXQxNCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhw
ZWN0ZWQudHh0CmluZGV4IDVhYWNkNGIxMWYzOGM2M2MxZTY5Njk1OGY1ZDYwNjRmMTQ2Y2JjNDgu
Ljk4MTE1YjFlMTJkMDBkMDY0NWRiMzk5OTc4YWU4ZWI2Y2YwYjI1MmMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4
cGVjdGVkLnR4dApAQCAtNSw1ICs1LDUgQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tn
cm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogRm9j
dXMgbWUKIAotRkFJTCBGb2N1cyBzaG91bGQgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIG9u
IGNvbnRlbnQgZWRpdGFibGUgZGl2cyBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIFNQ
QU4jZWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAi
cmdiKDAsIDAsIDApIgorUEFTUyBGb2N1cyBzaG91bGQgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNp
YmxlIG9uIGNvbnRlbnQgZWRpdGFibGUgZGl2cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dAppbmRl
eCA4YmI5Y2YzMDcwMGYxMzU4MmVhNzhhYjIxNzNlM2EyMjJiOWNkYWNkLi45ZjFlZTA5ODlkYzE3
N2E3MjRhYjdkYzljY2M3YTJlMDg3MmQ2ZmM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQKQEAg
LTIsOSArMiw5IEBAIFRoaXMgdGVzdCBjaGVja3MgdGhhdCB1c2luZyB0aGUga2V5Ym9hcmQgaW4g
YSB3YXkgdGhhdCBkb2VzIG5vdCBtb3ZlIGZvY3VzIHN0aWxsCiBJZiB0aGUgdXNlci1hZ2VudCBk
b2VzIG5vdCBjbGFpbSB0byBzdXBwb3J0IHRoZSA6Zm9jdXMtdmlzaWJsZSBwc2V1ZG8tY2xhc3Mg
dGhlbiBTS0lQIHRoaXMgdGVzdC4KIFVzZSB0aGUgbW91c2UgdG8gZm9jdXMgdGhlIGVsZW1lbnQg
YmVsb3cgdGhhdCBzYXlzICJDbGljayBtZS4iCiBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgb3V0
bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4KLVByZXNzIHRoZSBTSElGVCBr
ZXkuCitQcmVzcyB0aGUgRU5URVIga2V5LgogSWYgdGhlIGVsZW1lbnQgbm93IGhhcyBhIGdyZWVu
IG91dGxpbmUgYW5kIG5vdCByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMg
U1VDQ0VTUy4KIENsaWNrIG1lLgogCi1GQUlMIFVzaW5nIGtleWJvYXJkIHdoaWxlIGVsZW1lbnQg
aXMgZm9jdXNlZCBzaG91bGQgdHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsgdXNpbmcgbW91c2Ugd2l0
aG91dCBtb3ZpbmcgZm9jdXMgc2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1vdmluZyBmb2N1cyB1c2lu
ZyBtb3VzZSBzaG91bGQgY2FuY2VsIGl0LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAicmdiKDAs
IDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgVXNpbmcga2V5Ym9hcmQgd2hp
bGUgZWxlbWVudCBpcyBmb2N1c2VkIHNob3VsZCB0cmlnZ2VyIDpmb2N1cy12aXNpYmxlOyB1c2lu
ZyBtb3VzZSB3aXRob3V0IG1vdmluZyBmb2N1cyBzaG91bGQgbm90IGNhbmNlbCBpdDsgbW92aW5n
IGZvY3VzIHVzaW5nIG1vdXNlIHNob3VsZCBjYW5jZWwgaXQuCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwNy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKaW5kZXggMGZjMTk2
Y2JlY2RmMWIxOThhNWJhZGNlMzY5NGIxZWM3Y2M5NWQ0Zi4uMTQ5YTZmNjhmZThjMzAwZjVkZDE3
MmI5N2QyZjI5NzRmNWUzMTIxMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAKICAgICA8bGk+
SWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgPGNvZGU+OmZv
Y3VzLXZpc2libGU8L2NvZGU+IHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LjwvbGk+
CiAgICAgPGxpPlVzZSB0aGUgbW91c2UgdG8gZm9jdXMgdGhlIGVsZW1lbnQgYmVsb3cgdGhhdCBz
YXlzICJDbGljayBtZS4iPC9saT4KICAgICA8bGk+SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIG91
dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuPC9saT4KLSAgICA8bGk+UHJl
c3MgdGhlIFNISUZUIGtleS48L2xpPgorICAgIDxsaT5QcmVzcyB0aGUgRU5URVIga2V5LjwvbGk+
CiAgICAgPGxpPklmIHRoZSBlbGVtZW50IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFuZCBub3Qg
cmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuPC9saT4KICAg
PC9vbD4KIApAQCAtNjUsNyArNjUsOCBAQAogICAgICAgICBvbmUuYWRkRXZlbnRMaXN0ZW5lcigi
a2V5dXAiLCB0LnN0ZXBfZnVuYyh0ZXN0X21vZGFsaXR5X2NoYW5nZSkpOwogICAgICAgICBvbmUu
cmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCBoYW5kbGVfaW5pdGlhbF9mb2N1cyk7CiAKLSAg
ICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9uZSwgIlx1RTA1MCIpOworICAgICAgICBjb25z
dCBlbnRlciA9ICJcdUUwMDciOworICAgICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXMob25lLCBl
bnRlcik7CiAgICAgICB9KTsKIAogICAgICAgY29uc3QgdGVzdF9tb2RhbGl0eV9jaGFuZ2UgPSB0
LnN0ZXBfZnVuYygoKSA9PiB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dAppbmRleCA5YzdiZDFkZjE0
MzhlYjQxOWEyODA4MDJkNGQ1MDUzMzg5YzYwOWRiLi44ZWI0ODRlNDE1MjFkYzFkMjJmNzE4M2Rl
N2E5ZTIzMzc3ZjliMWU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQKQEAgLTMsNSArMyw1IEBA
IElmIHRoZSBidXR0b24gdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5
IiBoYXMgYSByZWQgYmFja2dyb3VuZCwKIAogSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxs
eS4KIAotRkFJTCBBdXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9l
cXVhbHM6IG91dGxpbmVDb2xvciBmb3IgQlVUVE9OI2J1dHRvbiBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEF1dG9m
b2N1cyBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDEwLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQK
aW5kZXggMjZiZGVjODQ2NzU4Njc1OTQ0MmZiM2VhZmUzMzRmYjU5ZTMxOGJlYy4uMDQ4NWRhYzhh
NzhmN2Y0Y2E1ZWUwYWQ3MTY4OTU1ODkyOTMxZWZhYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDEwLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTAtZXhwZWN0ZWQudHh0
CkBAIC0zLDUgKzMsNSBAQCBJZiB0aGUgZWxlbWVudCB0aGF0IHNheXMgIkkgd2lsbCBiZSBmb2N1
c2VkIGF1dG9tYXRpY2FsbHkiIGhhcyBhIHJlZCBiYWNrZ3JvdW5kLAogCiBJIHdpbGwgYmUgZm9j
dXNlZCBhdXRvbWF0aWNhbGx5LgogCi1GQUlMIFByb2dyYW1tYXRpYyBmb2N1cyBvbiBwYWdlIGxv
YWQgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xv
ciBmb3IgRElWI2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1
dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgUHJvZ3JhbW1hdGljIGZvY3VzIG9uIHBhZ2UgbG9h
ZCBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDExLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQKaW5k
ZXggMzAzMWRjN2NiODIyNjY5MDM1YmE5OWU3ZGZkNmIyNGM0MmY0MTUxNS4uYWVmMzlhN2U5Y2E1
NDkyMTQyMmYzZmUzNWYyZWFhZGM5OWQ1NzQ2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDExLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0CkBA
IC0xLDExICsxLDkgQEAKIFRoaXMgdGVzdCBjaGVja3MgdGhhdCA6Zm9jdXMtdmlzaWJsZSBtYXRj
aGVzIGFmdGVyIGEga2V5Ym9hcmQgZXZlbnQsIGV2ZW4gaWYgdGhlIGV2ZW50IGhhbmRsZXIgY2Fs
bHMgcHJldmVudERlZmF1bHQoKSBvbiB0aGUgZXZlbnQuCiBDbGljayAiQ2xpY2sgaGVyZSBhbmQg
cHJlc3MgcmlnaHQgYXJyb3cuIi4KIFByZXNzIHRoZSByaWdodCBhcnJvdyBrZXkuCi1JZiAiRm9j
dXMgbW92ZXMgaGVyZS4iIGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3Vs
dCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJl
c3VsdCBpcyBTVUNDRVNTLgorSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRo
ZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIGl0IGhhcyBhIGdyZWVuIG91dGxpbmUs
IHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCiAKLUNsaWNrIGhlcmUgYW5kIHByZXNz
IHJpZ2h0IGFycm93LiAgRm9jdXMgbW92ZXMgaGVyZS4KK0NsaWNrIGhlcmUgYW5kIHByZXNzIHJp
Z2h0IGFycm93LgogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQot
VElNRU9VVCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGV2ZW4gaWYgcHJldmVudERlZmF1bHQoKSBp
cyBjYWxsZWQgVGVzdCB0aW1lZCBvdXQKK1BBU1MgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVu
IGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAxMS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwKaW5kZXggYjBkYWYzNGJhOGRk
OTZmMzQzZTY4N2NlZjg1MjUyM2M5MmFlMmMzOS4uY2YxODZkMjhiODMyZTA3YTZlMDE3ZWM1NzMy
NjRkYmUyZDEzMjFlYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDExLmh0bWwKQEAgLTIxLDExICsyMSwxMSBAQAogICAgICAgYm9yZGVy
OiAwOwogICAgIH0KIAotICAgICNuZXh0OmZvY3VzLXZpc2libGUgeworICAgIDpmb2N1cy12aXNp
YmxlIHsKICAgICAgIG91dGxpbmU6IGdyZWVuIHNvbGlkIDVweDsKICAgICB9CiAKLSAgICAjbmV4
dDpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHsKKyAgICA6Zm9jdXM6bm90KDpmb2N1cy12aXNp
YmxlKSB7CiAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7CiAgICAgICBvdXRsaW5lOiAwOwog
ICAgIH0KQEAgLTM3LDMwICszNywzMyBAQAogICA8dWwgaWQ9Imluc3RydWN0aW9ucyI+CiAgICAg
PGxpPkNsaWNrICJDbGljayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4iLjwvbGk+CiAgICAg
PGxpPlByZXNzIHRoZSByaWdodCBhcnJvdyBrZXkuPC9saT4KLSAgICA8bGk+SWYgIkZvY3VzIG1v
dmVzIGhlcmUuIiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMg
RkFJTFVSRS4KKyAgICA8bGk+SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRo
ZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCiAgICAgICAgIElmIGl0IGhhcyBhIGdyZWVu
IG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuPC9saT4KICAgPC91bD4K
ICAgPGJyIC8+Ci0gIDxidXR0b24gaWQ9InN0YXJ0IiB0YWJpbmRleD0iMCI+Q2xpY2sgaGVyZSBh
bmQgcHJlc3MgcmlnaHQgYXJyb3cuPC9idXR0b24+Ci0gIDxidXR0b24gaWQ9Im5leHQiIHRhYmlu
ZGV4PSItMSI+Rm9jdXMgbW92ZXMgaGVyZS48L2J1dHRvbj4KKyAgPGRpdiBpZD0idGFyZ2V0IiB0
YWJpbmRleD0iMCI+Q2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuPC9kaXY+CiAgIDxz
Y3JpcHQ+Ci0gICAgc3RhcnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB7Cisg
ICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCAoZSkgPT4geworICAgICAgZS5w
cmV2ZW50RGVmYXVsdCgpOworICAgIH0pOworICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJr
ZXl1cCIsIChlKSA9PiB7CisgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CisgICAgfSk7CisgICAg
dGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleXByZXNzIiwgKGUpID0+IHsKICAgICAgIGUucHJl
dmVudERlZmF1bHQoKTsKLSAgICAgIG5leHQuZm9jdXMoKTsKICAgICB9KTsKLQogICAgIGFzeW5j
X3Rlc3QoZnVuY3Rpb24odCkgewotICAgICAgbmV4dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIs
IHQuc3RlcF9mdW5jKCgpID0+IHsKLSAgICAgICAgYXNzZXJ0X2VxdWFscyhnZXRDb21wdXRlZFN0
eWxlKG5leHQpLm91dGxpbmVDb2xvciwgInJnYigwLCAxMjgsIDApIiwgYG91dGxpbmVDb2xvciBm
b3IgJHtuZXh0LnRhZ05hbWV9IyR7bmV4dC5pZH0gc2hvdWxkIGJlIGdyZWVuYCk7Ci0gICAgICAg
IGFzc2VydF9ub3RfZXF1YWxzKGdldENvbXB1dGVkU3R5bGUobmV4dCkuYmFja2dyb3VuZENvbG9y
LCAicmdiKDI1NSwgMCwgMCkiLCBgYmFja2dyb3VuZENvbG9yIGZvciAke25leHQudGFnTmFtZX0j
JHtuZXh0LmlkfSBzaG91bGQgTk9UIGJlIHJlZGApOwotICAgICAgICB0LmRvbmUoKQotICAgICAg
fSkpOworICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwgKCkgPT4geworICAg
ICAgICBjb25zdCBhcnJvd19yaWdodCA9ICJcdWUwMTQiOworICAgICAgICB0ZXN0X2RyaXZlci5z
ZW5kX2tleXModGFyZ2V0LCBhcnJvd19yaWdodCk7CisgICAgICB9KTsKIAotICAgICAgLy8gXHVl
MDE0IC0+IEFSUk9XX1JJR0hUCi0gICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXMoc3RhcnQsICJc
dWUwMTQiKS5jYXRjaCh0LnN0ZXBfZnVuYygoKSA9PiB7Ci0gICAgICAgIGFzc2VydF90cnVlKGZh
bHNlLCAic2VuZF9rZXlzIG5vdCBpbXBsZW1lbnRlZCB5ZXQiKTsKLSAgICAgICAgdC5kb25lKCk7
CisgICAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLCB0LnN0ZXBfZnVuY19kb25l
KChlKSA9PiB7CisgICAgICAgIGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQp
Lm91dGxpbmVDb2xvciwgInJnYigwLCAxMjgsIDApIiwgYG91dGxpbmVDb2xvciBmb3IgJHt0YXJn
ZXQudGFnTmFtZX0jJHt0YXJnZXQuaWR9IHNob3VsZCBiZSBncmVlbmApOworICAgICAgICBhc3Nl
cnRfbm90X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKHRhcmdldCkuYmFja2dyb3VuZENvbG9yLCAi
cmdiKDI1NSwgMCwgMCkiLCBgYmFja2dyb3VuZENvbG9yIGZvciAke3RhcmdldC50YWdOYW1lfSMk
e3RhcmdldC5pZH0gc2hvdWxkIE5PVCBiZSByZWRgKTsKICAgICAgIH0pKTsKKworICAgICAgdGVz
dF9kcml2ZXIuY2xpY2sodGFyZ2V0KTsKICAgICB9LCAiOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBl
dmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkIik7CiAgIDwvc2NyaXB0PgogPC9ib2R5
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKaW5kZXggNmIyYTI0ZTFjM2ZmOTM3OTM3ZGFhMjY5NzZm
YjM1YzJmODQxZmVjNi4uNDlhZDhjZTljM2MzYzFjNDEyYTBiOWQ2MzZiNGFmZDY2OWM1MzhjNSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0CkBAIC04LDcgKzgsNSBAQCBJZiB0aGUgZWxlbWVudCB0
aGF0IHNheXMgIlRhcmdldCIgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1
bHQgaXMgYQogSW5pdGlhbAogVGFyZ2V0CiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNz
YWdlID0gbnVsbAotCi1GQUlMIDpmb2N1cy12aXNpYmxlIGRvZXMgbm90IG1hdGNoIGFmdGVyIG1v
dXNlIGNsaWNrIGV2ZW4gaWYgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IHdhcyBtYXRjaGluZyA6
Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNpbml0aWFs
IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigy
NTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3Vz
ZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZv
Y3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKaW5kZXggNmFkZTU1MzIzMWQ4N2Vh
MGU0ZTFkM2M4MGFhMzZiYjMyMWY3MDcwMi4uZjE4MTA4MDZiMmM3YmUzZGMxMDBhZDhmODliNWFh
NWZjOGExYWZlMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCiBU
YXJnZXQKIAotRkFJTCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVyIHNjcmlwdCBmb2N1cyBt
b3ZlIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3IgSU5QVVQjaW5wdXQgc2hvdWxk
IGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAw
KSIKK1BBU1MgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9jdXMgbW92ZQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDE2LWV4cGVjdGVkLnR4dAppbmRleCAzZDgxNzNlOGI4YTk3ODVhMzIxZTI1MTE4ODYz
ZTBiY2FlN2U2MDcxLi40MTJhYzM0NDlkOTdjYzMwOTk2YjkxZWU1MTdlYjAxMjg1Yzg3ZDBiIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiBJbml0aWFsCiAKIAotRkFJ
TCA6Zm9jdXMtdmlzaWJsZSBhbHdheXMgbWF0Y2ggb24gdGV4dCBpbnB1dHMgYXNzZXJ0X2VxdWFs
czogYmFja2dyb3VuZENvbG9yIGZvciBJTlBVVCN0YXJnZXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0
ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZvY3Vz
LXZpc2libGUgYWx3YXlzIG1hdGNoIG9uIHRleHQgaW5wdXRzCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODVjNDFhZjJmNzY3MzQx
ZTVmYzRiNjY3NDVjNjdlZDNjMDgzYjM1NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMg
dGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IGZvY3VzaW5nIGFuIGVsZW1lbnQgYWZ0
ZXIgYSBjbGljayBkb2VzIG5vdCBjYXVzZSA6Zm9jdXMtdmlzaWJsZSBtYXRjaGluZyB0byB0cmln
Z2VyLgorSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgOmZv
Y3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3QuCitDbGljayB0aGUg
YnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgorSWYgdGhlIGVsZW1lbnQgdGhhdCBz
YXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9ncmFtbWF0aWNhbGx5LiIgaGFzIGEgcmVkIG91dGxp
bmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGVtZW50IGhhcyBh
IGdyZWVuIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCisKK0Ns
aWNrIG1lLgorSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4KKworRkFJTCBQcm9n
cmFtbWF0aWMgZm9jdXMgYWZ0ZXIgY2xpY2sgc2hvdWxkIG5vdCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgbGlt
ZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3QgInJnYmEoMCwgMCwgMCwgMCkiCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uODVjNDFhZjJmNzY3MzQxZTVmYzRiNjY3NDVjNjdlZDNjMDgzYjM1NAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMTAgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IGZvY3Vz
aW5nIGFuIGVsZW1lbnQgYWZ0ZXIgYSBjbGljayBkb2VzIG5vdCBjYXVzZSA6Zm9jdXMtdmlzaWJs
ZSBtYXRjaGluZyB0byB0cmlnZ2VyLgorSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0g
dG8gc3VwcG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlz
IHRlc3QuCitDbGljayB0aGUgYnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgorSWYg
dGhlIGVsZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9ncmFtbWF0aWNhbGx5
LiIgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElm
IHRoZSBlbGVtZW50IGhhcyBhIGdyZWVuIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIFNVQ0NFU1MuCisKK0NsaWNrIG1lLgorSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGlj
YWxseS4KKworRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIgY2xpY2sgc2hvdWxkIG5vdCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIERJ
ViNlbCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3QgInJn
YmEoMCwgMCwgMCwgMCkiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBl
Y3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMjIwODI5NjY0MjIyMzgx
M2RjODBlZTAyYjY4MDk2NGFlZTIyMmQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50
eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLVRoaXMgdGVzdCBjaGVja3MgdGhhdCBh
bnkgZWxlbWVudCBmb2N1c2VkIHZpYSBhbiBhdXRvZm9jdXMgYXR0cmlidXRlIHdpbGwgaGF2ZSA6
Zm9jdXMtdmlzaWJsZSBtYXRjaGluZyBlbmFibGVkLgotSWYgdGhlIGJ1dHRvbiB0aGF0IHNheXMg
Ikkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRpY2FsbHkiIGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5l
LCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgotCi1JIHdpbGwgYmUgZm9jdXNlZCBh
dXRvbWF0aWNhbGx5LgotCi1GQUlMIEF1dG9mb2N1cyBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBCVVRUT04jYnV0dG9uIHNob3VsZCBi
ZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYmEoMCwgMCwgMCwg
MC44NDcpIgotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421177</attachid>
            <date>2021-02-22 04:02:55 -0800</date>
            <delta_ts>2021-02-22 13:38:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210222130253.patch</filename>
            <type>text/plain</type>
            <size>42683</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uZjAxZTZmM2E0OWVmOTI4M2M2MDI5NGE3NWUzMDJi
YWJlM2YwOWVkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbykuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtKgorCisgICAg
ICAgICogY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKFdlYkNv
cmU6Om1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyk6IENoZWNrIGVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkuCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RWxlbWVudDo6c2V0Rm9jdXMpOiBXaGVuIGFuIGVsZW1lbnQgbG9zZXMgZm9jdXMgaXQgYWx3
YXlzIGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKS4gV2hlbiBhbiBlbGVtZW50IGdldHMg
Zm9jdXNlZAorICAgICAgICBpdCBjYWxscyBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGVs
ZW1lbnRzIHRoYXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoYXMgdGhleSBhbHdheXMgbWF0Y2gg
OmZvY3VzLXZpc2libGUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0SGFzRm9jdXNW
aXNpYmxlKTogTmV3IG1ldGhvZCBnYXRlZCBiZWhpbmQgdGhlIGV4cGVyaW1lbnRhbCBmbGFnLgor
ICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOiBNYW5hZ2Ugc2NyaXB0IGZvY3VzIGtl
ZXBpbmcgdHJhY2sgb2YgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IG1hdGNoaW5nIChvciBub3Qp
IDpmb2N1cy12aXNpYmxlLAorICAgICAgICB0byBsYXRlciBjYWxsIHNldEhhc0ZvY3VzVmlzaWJs
ZSgpIG9uIHRoZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQuCisgICAgICAgICogZG9tL0VsZW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlzaWJsZSBjb25zdCk6IEFk
ZCBuZXcgbWV0aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgIChXZWJDb3JlOjpO
b2RlOjpmbGFnSGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZvciA6Zm9jdXMtdmlzaWJs
ZSBtYXRjaGluZy4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpFdmVudEhhbmRsZXI6OmludGVybmFsS2V5RXZlbnQpOiBJZiB0aGUgdXNlciBpbnRl
cmFjdHMgd2l0aCB0aGUgcGFnZSB2aWEga2V5Ym9hcmQsIGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxl
KHRydWUpLgorICAgICAgICBBdm9pZCB0aGF0IGZvciBtb2RpZmllciBrZXlzLgorICAgICAgICAq
IHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJv
bGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2li
bGUodHJ1ZSkgZm9yIGtleWJvYXJkIGZvY3VzLgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2Nyb2xsVG9GcmFnbWVudEludGVybmFs
KTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGFuY2hvciBmb2N1cy4KKyAgICAg
ICAgKiBzdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZTo6RWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGluZ1J1bGVzKTogQWRkIDpm
b2N1cy12aXNpYmxlIHJ1bGVzIHN0dWZmIGxpa2Ugd2UgYWxyZWFkeSBoYXZlIGZvciA6Zm9jdXMu
CisgICAgICAgICogc3R5bGUvUnVsZVNldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
UnVsZVNldDo6YWRkUnVsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlJ1bGVT
ZXQ6OnRyYXZlcnNlUnVsZURhdGFzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
UnVsZVNldDo6c2hyaW5rVG9GaXQpOiBEaXR0by4KKyAgICAgICAgKiBzdHlsZS9SdWxlU2V0Lmg6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6Zm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3NSdWxlcyBjb25zdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1N0eWxlU2hhcmluZ1Jlc29s
dmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFyaW5nUmVzb2x2ZXI6OmNhblNo
YXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBmb3IgaGFzRm9jdXNWaXNpYmxl
KCkuCisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2luZyBhbmQgZXhw
ZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNo
ZWNrZXJUZXN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2Vy
VGVzdEZ1bmN0aW9ucy5oCmluZGV4IDZmNzdmOWU2NGJjYmJkM2IyNmU4MmFlOTUxNTFmMGQ4Y2Uw
ZmJhZWQuLjgwMDEzZjA1ZjFlZGUxYmJjMDY2OTA4NjJkODJkZjkzZTRmY2M5N2YgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaApAQCAt
NDc0LDcgKzQ3NCwxMCBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgbWF0Y2hlc0ZvY3VzUHNldWRvQ2xh
c3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKIAogQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNG
b2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhjb25zdCBFbGVtZW50JiBlbGVtZW50KQogewotICAgIHJl
dHVybiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmZvcmNlUHNldWRvU3RhdGUoZWxlbWVudCwg
Q1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAgICBpZiAoSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRlKGVsZW1lbnQsIENTU1NlbGVjdG9yOjpQ
c2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0
dXJuIGVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgJiYgaXNGcmFtZUZvY3VzZWQoZWxlbWVudCk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCBm
ODg2YTBmY2Q3ZTkwZTUyMWU1ZWI3Yzc3Yzc3Njc3MzI0NGRiNzFhLi45MDY0MmQ4ZDEyOWFkYjM4
YzE2MWI2NWRlM2EyNmMwYjIxYjViNGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC03NDQs
NiArNzQ0LDI1IEBAIHZvaWQgRWxlbWVudDo6c2V0Rm9jdXMoYm9vbCBmbGFnKQogCiAgICAgZm9y
IChhdXRvKiBlbGVtZW50ID0gdGhpczsgZWxlbWVudDsgZWxlbWVudCA9IGVsZW1lbnQtPnBhcmVu
dEVsZW1lbnRJbkNvbXBvc2VkVHJlZSgpKQogICAgICAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1dp
dGhpbihmbGFnKTsKKworICAgIGlmIChmbGFnKSB7CisgICAgICAgIC8vIEVsZW1lbnRzIHRoYXQg
c3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoZm9ybSBpbnB1dHMgYW5kIGNvbnRlbnRlZGl0YWJsZSkg
YWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIHdoZW4gZm9jdXNlZC4KKyAgICAgICAgaWYgKGlz
VGV4dEZpZWxkKCkgfHwgaXNDb250ZW50RWRpdGFibGUoKSkKKyAgICAgICAgICAgIHNldEhhc0Zv
Y3VzVmlzaWJsZSh0cnVlKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc2V0SGFzRm9jdXNWaXNpYmxl
KGZhbHNlKTsKK30KKwordm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUoYm9vbCBmbGFn
KQoreworICAgIGlmICghZG9jdW1lbnQoKS5zZXR0aW5ncygpLmZvY3VzVmlzaWJsZUVuYWJsZWQo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGhhc0ZvY3VzVmlzaWJsZSgpID09IGZsYWcp
CisgICAgICAgIHJldHVybjsKKworICAgIFN0eWxlOjpQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRh
dGlvbiBzdHlsZUludmFsaWRhdGlvbigqdGhpcywgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9j
dXNWaXNpYmxlKTsKKyAgICBzZXROb2RlRmxhZyhOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlLCBm
bGFnKTsKIH0KIAogdm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1dpdGhpbihib29sIGZsYWcpCkBA
IC0zMDA3LDYgKzMwMjYsOSBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcgogICAgICAgICByZXR1
cm47CiAKICAgICBhdXRvIGRvY3VtZW50ID0gbWFrZVJlZih0aGlzLT5kb2N1bWVudCgpKTsKKyAg
ICAvLyBGb3Igc2NyaXB0IGZvY3VzIHRoZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1h
dGNoIChvciBub3QpIDpmb2N1cy12aXNpYmxlIGlmIHRoZSBhY3RpdmUgZWxlbWVudCBtYXRjaGVz
IChvciBub3QpIDpmb2N1cy12aXNpYmxlLgorICAgIC8vIElmIHRoZXJlJ3Mgbm8gYWN0aXZlIGVs
ZW1lbnQgdGhlbiBzY3JpcHQgZm9jdXMgYWx3YXlzIG1hdGNoZXMgOmZvY3VzLXZpc2libGUuCisg
ICAgYm9vbCBuZXdseUZvY3VzZWRFbGVtZW50U2hvdWxkTWF0Y2hGb2N1c1Zpc2libGUgPSAhZG9j
dW1lbnQtPmZvY3VzZWRFbGVtZW50KCkgfHwgZG9jdW1lbnQtPmZvY3VzZWRFbGVtZW50KCktPmhh
c0ZvY3VzVmlzaWJsZSgpOwogICAgIGlmIChkb2N1bWVudC0+Zm9jdXNlZEVsZW1lbnQoKSA9PSB0
aGlzKSB7CiAgICAgICAgIGlmIChkb2N1bWVudC0+cGFnZSgpKQogICAgICAgICAgICAgZG9jdW1l
bnQtPnBhZ2UoKS0+Y2hyb21lKCkuY2xpZW50KCkuZWxlbWVudERpZFJlZm9jdXMoKnRoaXMpOwpA
QCAtMzA0MiwxMSArMzA2NCwxNiBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcgogICAgICAgICBp
ZiAoIWZyYW1lLmhhc0hhZFVzZXJJbnRlcmFjdGlvbigpICYmICFmcmFtZS5pc01haW5GcmFtZSgp
ICYmICFkb2N1bWVudC0+dG9wRG9jdW1lbnQoKS5zZWN1cml0eU9yaWdpbigpLmlzU2FtZU9yaWdp
bkRvbWFpbihkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSkpCiAgICAgICAgICAgICByZXR1cm47
CiAKKyAgICAgICAgaWYgKCFuZXdUYXJnZXQtPmhhc0ZvY3VzVmlzaWJsZSgpKQorICAgICAgICAg
ICAgbmV3VGFyZ2V0LT5zZXRIYXNGb2N1c1Zpc2libGUobmV3bHlGb2N1c2VkRWxlbWVudFNob3Vs
ZE1hdGNoRm9jdXNWaXNpYmxlKTsKKwogICAgICAgICAvLyBGb2N1cyBhbmQgY2hhbmdlIGV2ZW50
IGhhbmRsZXJzIGNhbiBjYXVzZSB1cyB0byBsb3NlIG91ciBsYXN0IHJlZi4KICAgICAgICAgLy8g
SWYgYSBmb2N1cyBldmVudCBoYW5kbGVyIGNoYW5nZXMgdGhlIGZvY3VzIHRvIGEgZGlmZmVyZW50
IG5vZGUgaXQKICAgICAgICAgLy8gZG9lcyBub3QgbWFrZSBzZW5zZSB0byBjb250aW51ZSBhbmQg
dXBkYXRlIGFwcGVhcmVuY2UuCi0gICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCku
c2V0Rm9jdXNlZEVsZW1lbnQobmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIGRp
cmVjdGlvbikpCisgICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9jdXNl
ZEVsZW1lbnQobmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIGRpcmVjdGlvbikp
IHsKKyAgICAgICAgICAgIG5ld1RhcmdldC0+c2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKTsKICAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogICAgIH0KIAogICAgIG5ld1RhcmdldC0+cmV2
ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4
IDk2YmQ3NjAzZmVkNzQxZTkyNzFkOWJiNWEyZWE2MThjNDA3OTg0M2MuLjk0OWNiYmMzZjk2NTE3
NTc2ZWUyMzI2ZDk5ZGEyZjM4OTg3NGQ3MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtMzE5LDEy
ICszMTksMTQgQEAgcHVibGljOgogICAgIGJvb2wgaG92ZXJlZCgpIGNvbnN0IHsgcmV0dXJuIGlz
VXNlckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50SG92ZXJlZCgpOyB9CiAg
ICAgYm9vbCBmb2N1c2VkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYm
IGlzVXNlckFjdGlvbkVsZW1lbnRGb2N1c2VkKCk7IH0KICAgICBib29sIGlzQmVpbmdEcmFnZ2Vk
KCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNlckFjdGlvbkVs
ZW1lbnREcmFnZ2VkKCk7IH0KKyAgICBib29sIGhhc0ZvY3VzVmlzaWJsZSgpIGNvbnN0IHsgcmV0
dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUpOyB9OwogICAgIGJvb2wg
aGFzRm9jdXNXaXRoaW4oKSBjb25zdCB7IHJldHVybiBoYXNOb2RlRmxhZyhOb2RlRmxhZzo6SGFz
Rm9jdXNXaXRoaW4pOyB9OwogCiAgICAgdmlydHVhbCB2b2lkIHNldEFjdGl2ZShib29sID0gdHJ1
ZSwgYm9vbCBwYXVzZSA9IGZhbHNlLCBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGUgPSBTdHlsZTo6
SW52YWxpZGF0aW9uU2NvcGU6OkFsbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEhvdmVyZWQoYm9v
bCA9IHRydWUsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRpb25T
Y29wZTo6QWxsKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9jdXMoYm9vbCk7CiAgICAgdm9pZCBz
ZXRCZWluZ0RyYWdnZWQoYm9vbCk7CisgICAgdm9pZCBzZXRIYXNGb2N1c1Zpc2libGUoYm9vbCk7
CiAgICAgdm9pZCBzZXRIYXNGb2N1c1dpdGhpbihib29sKTsKIAogICAgIE9wdGlvbmFsPGludD4g
dGFiSW5kZXhTZXRFeHBsaWNpdGx5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAppbmRleCAyZWNkMTVkNmQ5
NGQ1YTk0YWY3NTlmYmQ1NTc2NTI1N2FmNGQ2NmUxLi5jYTcwYWMyMjI5YTAxOTQ0MTQ1YjI0MWRi
MzQxZGZlYzNjYTM3OGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKQEAgLTUxMCw2ICs1MTAsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzU2hhZG93Um9vdCgpIHsgcmV0dXJuIHN0YXRpY19j
YXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc1NoYWRvd1Jvb3QpOyB9CiAgICAgc3RhdGljIGludDMy
X3QgZmxhZ0lzSFRNTCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJ
c0hUTUxFbGVtZW50KTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc0xpbmsoKSB7IHJldHVy
biBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNMaW5rKTsgfQorICAgIHN0YXRpYyBp
bnQzMl90IGZsYWdIYXNGb2N1c1Zpc2libGUoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90
PihOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlKTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdI
YXNGb2N1c1dpdGhpbigpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpI
YXNGb2N1c1dpdGhpbik7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNQYXJzaW5nQ2hpbGRy
ZW5GaW5pc2hlZCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc1Bh
cnNpbmdDaGlsZHJlbkZpbmlzaGVkKTsgfQogI2VuZGlmIC8vIEVOQUJMRShKSVQpCkBAIC01NTAs
OCArNTUxLDkgQEAgcHJvdGVjdGVkOgogICAgICAgICBDb250YWluc0Z1bGxTY3JlZW5FbGVtZW50
ID0gMSA8PCAyNSwKICNlbmRpZgogICAgICAgICBJc0NvbXB1dGVkU3R5bGVJbnZhbGlkRmxhZyA9
IDEgPDwgMjYsCisgICAgICAgIEhhc0ZvY3VzVmlzaWJsZSA9IDEgPDwgMjcsCiAKLSAgICAgICAg
Ly8gQml0cyAyNy0zMSBhcmUgZnJlZS4KKyAgICAgICAgLy8gQml0cyAyOC0zMSBhcmUgZnJlZS4K
ICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUYWJJbmRleFN0YXRlIDogdWludDhfdCB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggY2I2YWUzZWE2OWRmMGZmYjAyYTIyNjk0
NTYxZDYxMmVjNzYxYmY1ZC4uODM4NTdkYzdlNjRhMjRmNWEzNWEyYTk0ZTQzNmI0NWY0NGE2NDUy
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMzUzMiw2ICszNTMyLDEx
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjppbnRlcm5hbEtleUV2ZW50KGNvbnN0IFBsYXRmb3JtS2V5
Ym9hcmRFdmVudCYgaW5pdGlhbEtleUV2ZW50CiAgICAgICAgIGtleWRvd24tPnByZXZlbnREZWZh
dWx0KCk7CiAgICAga2V5ZG93bi0+c2V0VGFyZ2V0KGVsZW1lbnQpOwogCisgICAgLy8gSWYgdGhl
IHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdmlhIHRoZSBrZXlib2FyZCwgdGhlIGN1cnJl
bnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlLgorICAgIC8v
IEp1c3QgdHlwaW5nIGEgbW9kaWZpZXIga2V5IGlzIG5vdCBjb25zaWRlcmVkIHVzZXIgaW50ZXJh
Y3Rpb24gd2l0aCB0aGUgcGFnZS4KKyAgICBpZiAoIWtleWRvd24tPmN0cmxLZXkoKSAmJiAha2V5
ZG93bi0+bWV0YUtleSgpICYmICFrZXlkb3duLT5hbHRHcmFwaEtleSgpICYmICFrZXlkb3duLT5z
aGlmdEtleSgpKQorICAgICAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisK
ICAgICBpZiAoaW5pdGlhbEtleUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpSYXdLZXlE
b3duKSB7CiAgICAgICAgIGVsZW1lbnQtPmRpc3BhdGNoRXZlbnQoa2V5ZG93bik7CiAgICAgICAg
IC8vIElmIGZyYW1lIGNoYW5nZWQgYXMgYSByZXN1bHQgb2Yga2V5ZG93biBkaXNwYXRjaCwgdGhl
biByZXR1cm4gdHJ1ZSB0byBhdm9pZCBzZW5kaW5nIGEgc3Vic2VxdWVudCBrZXlwcmVzcyBtZXNz
YWdlIHRvIHRoZSBuZXcgZnJhbWUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zv
Y3VzQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5j
cHAKaW5kZXggMDdhYmFkMDYwZTAxM2ViOGI3YWM1NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3
OTA5NTk3ZWMyN2FlNWFhNzE5YTY5NWMzMDQyNTEwMjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Rm9jdXNDb250cm9sbGVyLmNwcApAQCAtNTMzLDYgKzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9s
bGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3JkZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9u
LCBLZXliCiAgICAgICAgIH0KICAgICB9CiAKKyAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2li
bGUodHJ1ZSk7CiAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpT
ZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zy
YW1lVmlldy5jcHAKaW5kZXggNWFmMWRjMmI1ODVjYmJlYTEwNzI5Yjg3YTg4OWFjNGRkMjY5Y2I0
Mi4uM2IxODYwM2FlZjVkZDViNjcxNTEzYmI1MjljNmJjMjZkOWM4ZTQ0ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcApAQCAtMjI2OCw5ICsyMjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3Ojpz
Y3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwoY29uc3QgU3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIp
CiAgICAgCiAgICAgLy8gSWYgdGhlIGFuY2hvciBhY2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3Zl
IGZvY3VzIHRoZXJlIHRvIGFpZCB1c2VycyByZWx5aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24u
CiAgICAgaWYgKGFuY2hvckVsZW1lbnQpIHsKLSAgICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlz
Rm9jdXNhYmxlKCkpCisgICAgICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7
CisgICAgICAgICAgICBhbmNob3JFbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAg
ICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxlbWVudChhbmNob3JFbGVtZW50LmdldCgp
KTsKLSAgICAgICAgZWxzZSB7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVu
dC5zZXRGb2N1c2VkRWxlbWVudChudWxscHRyKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZv
Y3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZShhbmNob3JFbGVtZW50LmdldCgpKTsKICAgICAgICAg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3Iu
Y3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4
IGUxODBjY2RmYTlmNjhmYWFjMDkxMGMyMzNjMjE4ZDdlZmQ2YTA0YTQuLmNjNDhjNGE2NjhkNzA5
M2YzMjNiNDAwZjRlODBjMTBjMDY0YjhlOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9F
bGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKQEAgLTE1Nyw2ICsxNTcsOCBAQCB2b2lkIEVsZW1lbnRS
dWxlQ29sbGVjdG9yOjpjb2xsZWN0TWF0Y2hpbmdSdWxlcyhjb25zdCBNYXRjaFJlcXVlc3QmIG1h
dGNoUmVxdWVzdAogICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1
ZXN0LnJ1bGVTZXQtPmxpbmtQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAg
aWYgKG1hdGNoZXNGb2N1c1BzZXVkb0NsYXNzKGVsZW1lbnQoKSkpCiAgICAgICAgIGNvbGxlY3RN
YXRjaGluZ1J1bGVzRm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+Zm9jdXNQc2V1ZG9DbGFz
c1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CisgICAgaWYgKG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1
ZG9DbGFzcyhlbGVtZW50KCkpKQorICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3Qo
bWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMoKSwgbWF0
Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0
LnJ1bGVTZXQtPnRhZ1J1bGVzKGVsZW1lbnQoKS5sb2NhbE5hbWUoKSwgZWxlbWVudCgpLmlzSFRN
TEVsZW1lbnQoKSAmJiBlbGVtZW50KCkuZG9jdW1lbnQoKS5pc0hUTUxEb2N1bWVudCgpKSwgbWF0
Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0
LnJ1bGVTZXQtPnVuaXZlcnNhbFJ1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1J1bGVTZXQuY3BwCmluZGV4IDNhNWI1NjEwYmE3NmMzOTY3NDBmNjEwMDFjZWI4ZDJmMGEzZDk4
YzkuLmU0YTlmMDY1NjZjMzIxNDEzOTY3ZTNjMWY2ZDEwYTZiOTgwZTM1MzMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1J1bGVTZXQuY3BwCkBAIC05OCw2ICs5OCw3IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShj
b25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNl
CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGNsYXNzU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNv
bnN0IENTU1NlbGVjdG9yKiBsaW5rU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1Nl
bGVjdG9yKiBmb2N1c1NlbGVjdG9yID0gbnVsbHB0cjsKKyAgICBjb25zdCBDU1NTZWxlY3Rvciog
Zm9jdXNWaXNpYmxlU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBo
b3N0UHNldWRvQ2xhc3NTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3Iq
IGN1c3RvbVBzZXVkb0VsZW1lbnRTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2Vs
ZWN0b3IqIHNsb3R0ZWRQc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBudWxscHRyOwpAQCAtMTYyLDYg
KzE2Myw5IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVu
c2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgICAgICBjYXNlIENTU1Nl
bGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzOgogICAgICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3Ig
PSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NT
U2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlOgorICAgICAgICAgICAgICAgIGZvY3Vz
VmlzaWJsZVNlbGVjdG9yID0gc2VsZWN0b3I7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3Q6CiAgICAgICAgICAgICAg
ICAgaG9zdFBzZXVkb0NsYXNzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBi
cmVhazsKQEAgLTI0OSw2ICsyNTMsMTEgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0
eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAorICAgIGlmIChmb2N1c1Zpc2libGVTZWxlY3RvcikgeworICAg
ICAgICBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIGlmICh0YWdTZWxlY3RvcikgewogICAgICAgICBh
ZGRUb1J1bGVTZXQodGFnU2VsZWN0b3ItPnRhZ1FOYW1lKCkubG9jYWxOYW1lKCksIG1fdGFnTG9j
YWxOYW1lUnVsZXMsIHJ1bGVEYXRhKTsKICAgICAgICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9y
LT50YWdMb3dlcmNhc2VMb2NhbE5hbWUoKSwgbV90YWdMb3dlcmNhc2VMb2NhbE5hbWVSdWxlcywg
cnVsZURhdGEpOwpAQCAtMzk2LDYgKzQwNSw3IEBAIHZvaWQgUnVsZVNldDo6dHJhdmVyc2VSdWxl
RGF0YXMoRnVuY3Rpb24mJiBmdW5jdGlvbikKICAgICB0cmF2ZXJzZVZlY3RvcihtX3Nsb3R0ZWRQ
c2V1ZG9FbGVtZW50UnVsZXMpOwogICAgIHRyYXZlcnNlVmVjdG9yKG1fcGFydFBzZXVkb0VsZW1l
bnRSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3IobV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMpOwor
ICAgIHRyYXZlcnNlVmVjdG9yKG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcyk7CiAgICAg
dHJhdmVyc2VWZWN0b3IobV91bml2ZXJzYWxSdWxlcyk7CiB9CiAKQEAgLTQ5Nyw2ICs1MDcsNyBA
QCB2b2lkIFJ1bGVTZXQ6OnNocmlua1RvRml0KCkKICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVz
LnNocmlua1RvRml0KCk7CiAgICAgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzLnNocmlua1Rv
Rml0KCk7CiAgICAgbV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKKyAgICBt
X2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3VuaXZl
cnNhbFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9wYWdlUnVsZXMuc2hyaW5rVG9GaXQoKTsK
ICAgICBtX2ZlYXR1cmVzLnNocmlua1RvRml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9SdWxlU2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKaW5kZXgg
OTlhYTE2MGQ5MDY4NDRmYWQzNGRjMWEyNzAxNmEwMDM2YmRlMzA3OS4uM2Q1YjViMzE0NzAwYzUw
ZjQ1ZGMxNWQ4NDY2NzQ2YzBlOWEwNjhkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvUnVsZVNldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaApAQCAtMTI5
LDYgKzEyOSw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciYgc2xvdHRlZFBz
ZXVkb0VsZW1lbnRSdWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRS
dWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yJiBwYXJ0UHNldWRvRWxlbWVudFJ1bGVz
KCkgY29uc3QgeyByZXR1cm4gbV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3Qg
UnVsZURhdGFWZWN0b3IqIGZvY3VzUHNldWRvQ2xhc3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZt
X2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsgfQorICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1
c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCkgY29uc3QgeyByZXR1cm4gJm1fZm9jdXNWaXNpYmxl
UHNldWRvQ2xhc3NSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiB1bml2ZXJzYWxS
dWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX3VuaXZlcnNhbFJ1bGVzOyB9CiAKICAgICBjb25zdCBW
ZWN0b3I8U3R5bGVSdWxlUGFnZSo+JiBwYWdlUnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VS
dWxlczsgfQpAQCAtMTY3LDYgKzE2OCw3IEBAIHByaXZhdGU6CiAgICAgUnVsZURhdGFWZWN0b3Ig
bV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9yIG1fcGFydFBz
ZXVkb0VsZW1lbnRSdWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX2ZvY3VzUHNldWRvQ2xhc3NS
dWxlczsKKyAgICBSdWxlRGF0YVZlY3RvciBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7
CiAgICAgUnVsZURhdGFWZWN0b3IgbV91bml2ZXJzYWxSdWxlczsKICAgICBWZWN0b3I8U3R5bGVS
dWxlUGFnZSo+IG1fcGFnZVJ1bGVzOwogICAgIHVuc2lnbmVkIG1fcnVsZUNvdW50IHsgMCB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3
ZjgxYjJjNDc3ZmI0ODc2ZDdhNTYwZjE0NzllZDY5YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRh
MjM5NmFkNjRmMDIzMDg1NTQ5ODI1OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHAKQEAgLTIyNyw2ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNv
bHZlcjo6Y2FuU2hhcmVTdHlsZVdpdGhFbGVtZW50KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNv
bnN0IFN0eQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQu
Zm9jdXNlZCgpICE9IGVsZW1lbnQuZm9jdXNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNG
b2N1c1Zpc2libGUoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVF
bGVtZW50Lmhhc0ZvY3VzV2l0aGluKCkgIT0gZWxlbWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdn
ZWQoKSAhPSBlbGVtZW50LmlzQmVpbmdEcmFnZ2VkKCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDZlNzQ3OWEyZTY1OWUz
YTc4MzA2ZDMwNGJkMjE5M2EwMjFmNjUyZS4uNzA0MjBhYjUyMmZiZGEzNTM4MzZjNWY0MDg4MDJl
OTJhYjJiNTUxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVn
byBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpm
b2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBmb2N1cy12aXNpYmxlLTAwNS5odG1sIGZhaWxzIGluIE1hYyBh
bmQgaU9TIHBsYXRmb3JtcyBiZWNhdXNlIGJ1dHRvbnMgZG9uJ3QgZ2V0IGZvY3VzZWQgb24gY2xp
Y2sKKyAgICAgICAgKHNlZSBidWcgIzIyMjYxKS4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMg
IDxyZWdvQGlnYWxpYS5jb20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUg
cGFyc2luZyBhbmQgZXhwZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CmluZGV4IDE5MjkwZmY5MWI0MmU1ZGExZGJmOTY1YzQ3NGMxZWNiYzQyZmE0ZGIuLjc1ZTBmZTVm
MjIxODI4M2E4OWM5MzMxYmIyZWM3N2Q2NWNkZGE0MzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNhc25v
dmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNp
YmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBVcGRhdGUgZXhwZWN0YXRpb25zLCBtb3N0IG9mIHRoZSA6Zm9jdXMtdmlzaWJs
ZSB0ZXN0cyBhcmUgcGFzc2luZyBub3cuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4t
ZXZlbnQtMDAxLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA2LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbDogSW1w
b3J0IGxhc3QgY2hhbmdlcyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKHNlZSBodHRwczovL2dpdGh1
Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdC9wdWxsLzI3NjU2KS4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMTAtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sOiBJbXBv
cnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMgdGVzdAorICAgICAgICAoc2VlIGh0dHBzOi8vZ2l0aHVi
LmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L3B1bGwvMjc3MDApLgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAxNC1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTAyLTE2ICBN
YW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxl
Y3RvcnNdIDpmb2N1cy12aXNpYmxlIHBhcnNpbmcgYW5kIGV4cGVyaW1lbnRhbCBmbGFnCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1p
bi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IGMxM2JlMDBmZDk1ZTczZGI0MTc4
ZGMyOGU0ZDQzOTAzYTk5ZDQ3ZjQuLmQwNjA1NDhjZmEyZDFhYzc3MmYwYzE1YjYyNThhMmIxZDc4
ODY0MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEs
NiBAQAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMg
aW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgotRkFJTCBDaGVja3MgdGhhdCAnOmZvY3VzLXZp
c2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIg
YXNzZXJ0X3VucmVhY2hlZDogJzpmb2N1cy12aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rv
ci4gU3ludGF4RXJyb3I6IEVycm9yOiBhc3NlcnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1h
dGNoZXMgZXZlbnQudGFyZ2V0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlu
cHV0IHR5cGU9InRleHQiPjwvaW5wdXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBD
aGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAn
Zm9jdXMnIGV2ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4nIHBz
ZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1p
bi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKaW5kZXggMjdlMWE5YWYyYWJlOGY2N2I4
OGViZmM3NzBjZTMzMzQyMzc5MWVkZS4uN2ZlNTAzM2NlOGE0OGM2NjY4MTg5MjkyZDhhMzhiOTc3
ZWJmM2NkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0x
LDYgKzEsNiBAQAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1h
dGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6
Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVu
dCBoYW5kbGVyIGFzc2VydF91bnJlYWNoZWQ6ICc6Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGludmFs
aWQgc2VsZWN0b3IuIFN5bnRheEVycm9yOiBFcnJvcjogYXNzZXJ0X2VxdWFsczogJzpmb2N1cy12
aXNpYmxlJyBtYXRjaGVzIGV2ZW50LnRhcmdldCBleHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVu
dCBub2RlIDxpbnB1dCB0eXBlPSJ0ZXh0Ij48L2lucHV0PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNv
ZGUKK1BBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hl
cyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1
cy13aXRoaW4nIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFu
ZGxlcgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dAppbmRleCA4NTBjN2FiMTcwMmIzOTMyNDkwMzRk
MGIzMzZlYzk1NmEzYzE5NDMwLi5lYzc3Y2VmYzAyNTgxZTY1NTE1NzgwM2U2OThlNDM4ZDNiNjg5
MzFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElmIHRoZSBlbGVt
ZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJF
LiBJZiB0aGUgZWxlCiAKIEZvY3VzIG1lLgogCi1GQUlMIEtleWJvYXJkIGZvY3VzIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNl
bCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2Io
MCwgMCwgMCkiCitQQVNTIEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dAppbmRleCBiNWE5ZWY0MTRkMmYzMGQ4Y2ZiMTJlOGNi
MDZkZDliZDIzOTljOWEwLi45MzU4N2RkZGI2MmI0NWZhNGYwNTljNmFlOWU2NWNiNzg5ZWM3NWNi
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKQEAgLTE4LDE4ICsxOCwxOCBAQCBJZiB0aGUgZWxl
bWVudCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVS
RS4gSWYgdGhlIGVsZQogCiAKIAotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxIHNob3Vs
ZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAw
KSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1
YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0
ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVs
ZW1lbnQgSU5QVVQjaW5wdXQzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9y
IGZvciBJTlBVVCNpbnB1dDMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAw
KSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0
NCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ0
IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigw
LCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNob3Vs
ZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3Nl
cnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NSBzaG91bGQgYmUgZ3JlZW4g
ZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ2IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZp
c2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGlu
ZUNvbG9yIGZvciBJTlBVVCNpbnB1dDYgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwg
MTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVU
I2lucHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBv
cnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQj
aW5wdXQ3IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3Qg
InJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OCBzaG91bGQgYmUg
Z3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1G
QUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ5IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZv
Y3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczog
b3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDkgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJy
Z2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50
IElOUFVUI2lucHV0MTAgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IElOUFVUI2lucHV0MTAgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTEg
c2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAs
IDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3Vs
ZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3Nl
cnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTIgc2hvdWxkIGJlIGdyZWVu
IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBG
b2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRs
aW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2Io
MCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IFRF
WFRBUkVBI2lucHV0MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IFRFWFRBUkVBI2lucHV0MTQgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAw
KSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0
MSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBz
aG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQK
K1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBl
bGVtZW50IElOUFVUI2lucHV0NCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQj
aW5wdXQ1IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9y
dHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ4IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZp
c2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJ
TlBVVCNpbnB1dDkgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTAg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAor
UEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBl
bGVtZW50IElOUFVUI2lucHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IFRFWFRB
UkVBI2lucHV0MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dAppbmRleCA1YWFj
ZDRiMTFmMzhjNjNjMWU2OTY5NThmNWQ2MDY0ZjE0NmNiYzQ4Li45ODExNWIxZTEyZDAwZDA2NDVk
YjM5OTk3OGFlOGViNmNmMGIyNTJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKQEAgLTUsNSAr
NSw1IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0
IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIEZvY3VzIG1lCiAKLUZBSUwgRm9jdXMg
c2hvdWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRp
dnMgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBTUEFOI2VsIHNob3VsZCBiZSBncmVl
biBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1Mg
Rm9jdXMgc2hvdWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRh
YmxlIGRpdnMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQKaW5kZXggOGJiOWNmMzA3MDBmMTM1ODJl
YTc4YWIyMTczZTNhMjIyYjljZGFjZC4uOWYxZWUwOTg5ZGMxNzdhNzI0YWI3ZGM5Y2NjN2EyZTA4
NzJkNmZjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0CkBAIC0yLDkgKzIsOSBAQCBUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgdXNpbmcgdGhlIGtleWJvYXJkIGluIGEgd2F5IHRoYXQgZG9lcyBub3Qg
bW92ZSBmb2N1cyBzdGlsbAogSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3Vw
cG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3Qu
CiBVc2UgdGhlIG1vdXNlIHRvIGZvY3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xp
Y2sgbWUuIgogSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3Qg
cmVzdWx0IGlzIEZBSUxVUkUuCi1QcmVzcyB0aGUgU0hJRlQga2V5LgorUHJlc3MgdGhlIEVOVEVS
IGtleS4KIElmIHRoZSBlbGVtZW50IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFuZCBub3QgcmVk
IGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCiBDbGljayBtZS4K
IAotRkFJTCBVc2luZyBrZXlib2FyZCB3aGlsZSBlbGVtZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRy
aWdnZXIgOmZvY3VzLXZpc2libGU7IHVzaW5nIG1vdXNlIHdpdGhvdXQgbW92aW5nIGZvY3VzIHNo
b3VsZCBub3QgY2FuY2VsIGl0OyBtb3ZpbmcgZm9jdXMgdXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNl
bCBpdC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJy
Z2IoMCwgMCwgMCkiCitQQVNTIFVzaW5nIGtleWJvYXJkIHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNl
ZCBzaG91bGQgdHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsgdXNpbmcgbW91c2Ugd2l0aG91dCBtb3Zp
bmcgZm9jdXMgc2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1vdmluZyBmb2N1cyB1c2luZyBtb3VzZSBz
aG91bGQgY2FuY2VsIGl0LgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbCBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCmluZGV4IDBmYzE5NmNiZWNkZjFiMTk4YTViYWRjZTM2
OTRiMWVjN2NjOTVkNGYuLjE0OWE2ZjY4ZmU4YzMwMGY1ZGQxNzJiOTdkMmYyOTc0ZjVlMzEyMTAg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAwNy5odG1sCkBAIC0zNiw3ICszNiw3IEBACiAgICAgPGxpPklmIHRoZSB1c2VyLWFnZW50IGRv
ZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDxjb2RlPjpmb2N1cy12aXNpYmxlPC9jb2RlPiBw
c2V1ZG8tY2xhc3MgdGhlbiBTS0lQIHRoaXMgdGVzdC48L2xpPgogICAgIDxsaT5Vc2UgdGhlIG1v
dXNlIHRvIGZvY3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIjwvbGk+
CiAgICAgPGxpPklmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0
IHJlc3VsdCBpcyBGQUlMVVJFLjwvbGk+Ci0gICAgPGxpPlByZXNzIHRoZSBTSElGVCBrZXkuPC9s
aT4KKyAgICA8bGk+UHJlc3MgdGhlIEVOVEVSIGtleS48L2xpPgogICAgIDxsaT5JZiB0aGUgZWxl
bWVudCBub3cgaGFzIGEgZ3JlZW4gb3V0bGluZSBhbmQgbm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwvb2w+CiAKQEAgLTY1LDcgKzY1
LDggQEAKICAgICAgICAgb25lLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmMo
dGVzdF9tb2RhbGl0eV9jaGFuZ2UpKTsKICAgICAgICAgb25lLnJlbW92ZUV2ZW50TGlzdGVuZXIo
ImZvY3VzIiwgaGFuZGxlX2luaXRpYWxfZm9jdXMpOwogCi0gICAgICAgIHRlc3RfZHJpdmVyLnNl
bmRfa2V5cyhvbmUsICJcdUUwNTAiKTsKKyAgICAgICAgY29uc3QgZW50ZXIgPSAiXHVFMDA3IjsK
KyAgICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9uZSwgZW50ZXIpOwogICAgICAgfSk7CiAK
ICAgICAgIGNvbnN0IHRlc3RfbW9kYWxpdHlfY2hhbmdlID0gdC5zdGVwX2Z1bmMoKCkgPT4gewpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwOS1leHBlY3RlZC50eHQKaW5kZXggOWM3YmQxZGYxNDM4ZWI0MTlhMjgwODAyZDRkNTA1
MzM4OWM2MDlkYi4uOGViNDg0ZTQxNTIxZGMxZDIyZjcxODNkZTdhOWUyMzM3N2Y5YjFlOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMDktZXhwZWN0ZWQudHh0CkBAIC0zLDUgKzMsNSBAQCBJZiB0aGUgYnV0dG9uIHRoYXQg
c2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseSIgaGFzIGEgcmVkIGJhY2tncm91
bmQsCiAKIEkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRpY2FsbHkuCiAKLUZBSUwgQXV0b2ZvY3Vz
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3Ig
Zm9yIEJVVFRPTiNidXR0b24gc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAw
KSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBBdXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMTAtZXhwZWN0ZWQudHh0CmluZGV4IDI2YmRlYzg0Njc1ODY3
NTk0NDJmYjNlYWZlMzM0ZmI1OWUzMThiZWMuLjA0ODVkYWM4YTc4ZjdmNGNhNWVlMGFkNzE2ODk1
NTg5MjkzMWVmYWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUgQEAgSWYg
dGhlIGVsZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5IiBo
YXMgYSByZWQgYmFja2dyb3VuZCwKIAogSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseS4K
IAotRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgb24gcGFnZSBsb2FkIHNob3VsZCBtYXRjaCA6Zm9j
dXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNlbCBzaG91bGQg
YmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCki
CitQQVNTIFByb2dyYW1tYXRpYyBmb2N1cyBvbiBwYWdlIGxvYWQgc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0CmluZGV4IDMwMzFkYzdjYjgyMjY2OTAz
NWJhOTllN2RmZDZiMjRjNDJmNDE1MTUuLmFlZjM5YTdlOWNhNTQ5MjE0MjJmM2ZlMzVmMmVhYWRj
OTlkNTc0NmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSw5IEBACiBUaGlz
IHRlc3QgY2hlY2tzIHRoYXQgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBhIGtleWJvYXJk
IGV2ZW50LCBldmVuIGlmIHRoZSBldmVudCBoYW5kbGVyIGNhbGxzIHByZXZlbnREZWZhdWx0KCkg
b24gdGhlIGV2ZW50LgogQ2xpY2sgIkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LiIu
CiBQcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LgotSWYgIkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMg
YSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgaXQg
aGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy4KK0lm
IHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3Vs
dCBpcyBTVUNDRVNTLgogCi1DbGljayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4gIEZvY3Vz
IG1vdmVzIGhlcmUuCitDbGljayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4KIAotSGFybmVz
cyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgOmZvY3VzLXZpc2li
bGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkIFRlc3QgdGltZWQg
b3V0CitQQVNTIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVsdCgp
IGlzIGNhbGxlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAxMS5odG1sCmluZGV4IGIwZGFmMzRiYThkZDk2ZjM0M2U2ODdjZWY4NTI1MjNj
OTJhZTJjMzkuLmNmMTg2ZDI4YjgzMmUwN2E2ZTAxN2VjNTczMjY0ZGJlMmQxMzIxZWMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5o
dG1sCkBAIC0yMSwxMSArMjEsMTEgQEAKICAgICAgIGJvcmRlcjogMDsKICAgICB9CiAKLSAgICAj
bmV4dDpmb2N1cy12aXNpYmxlIHsKKyAgICA6Zm9jdXMtdmlzaWJsZSB7CiAgICAgICBvdXRsaW5l
OiBncmVlbiBzb2xpZCA1cHg7CiAgICAgfQogCi0gICAgI25leHQ6Zm9jdXM6bm90KDpmb2N1cy12
aXNpYmxlKSB7CisgICAgOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkgewogICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmVkOwogICAgICAgb3V0bGluZTogMDsKICAgICB9CkBAIC0zNywzMCArMzcs
MzMgQEAKICAgPHVsIGlkPSJpbnN0cnVjdGlvbnMiPgogICAgIDxsaT5DbGljayAiQ2xpY2sgaGVy
ZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuIi48L2xpPgogICAgIDxsaT5QcmVzcyB0aGUgcmlnaHQg
YXJyb3cga2V5LjwvbGk+Ci0gICAgPGxpPklmICJGb2N1cyBtb3ZlcyBoZXJlLiIgaGFzIGEgcmVk
IGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCisgICAgPGxpPklm
IHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLgogICAgICAgICBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0
ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwvdWw+CiAgIDxiciAvPgotICA8YnV0dG9u
IGlkPSJzdGFydCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93
LjwvYnV0dG9uPgotICA8YnV0dG9uIGlkPSJuZXh0IiB0YWJpbmRleD0iLTEiPkZvY3VzIG1vdmVz
IGhlcmUuPC9idXR0b24+CisgIDxkaXYgaWQ9InRhcmdldCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhl
cmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LjwvZGl2PgogICA8c2NyaXB0PgotICAgIHN0YXJ0LmFk
ZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4geworICAgIHRhcmdldC5hZGRFdmVudExp
c3RlbmVyKCJrZXlkb3duIiwgKGUpID0+IHsKKyAgICAgIGUucHJldmVudERlZmF1bHQoKTsKKyAg
ICB9KTsKKyAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLCAoZSkgPT4geworICAg
ICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0pOworICAgIHRhcmdldC5hZGRFdmVudExpc3Rl
bmVyKCJrZXlwcmVzcyIsIChlKSA9PiB7CiAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7Ci0gICAg
ICBuZXh0LmZvY3VzKCk7CiAgICAgfSk7Ci0KICAgICBhc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsK
LSAgICAgIG5leHQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCB0LnN0ZXBfZnVuYygoKSA9PiB7
Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZShuZXh0KS5vdXRsaW5lQ29s
b3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9yICR7bmV4dC50YWdOYW1lfSMk
e25leHQuaWR9IHNob3VsZCBiZSBncmVlbmApOwotICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhn
ZXRDb21wdXRlZFN0eWxlKG5leHQpLmJhY2tncm91bmRDb2xvciwgInJnYigyNTUsIDAsIDApIiwg
YGJhY2tncm91bmRDb2xvciBmb3IgJHtuZXh0LnRhZ05hbWV9IyR7bmV4dC5pZH0gc2hvdWxkIE5P
VCBiZSByZWRgKTsKLSAgICAgICAgdC5kb25lKCkKLSAgICAgIH0pKTsKKyAgICAgIHRhcmdldC5h
ZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsICgpID0+IHsKKyAgICAgICAgY29uc3QgYXJyb3dfcmln
aHQgPSAiXHVlMDE0IjsKKyAgICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHRhcmdldCwgYXJy
b3dfcmlnaHQpOworICAgICAgfSk7CiAKLSAgICAgIC8vIFx1ZTAxNCAtPiBBUlJPV19SSUdIVAot
ICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHN0YXJ0LCAiXHVlMDE0IikuY2F0Y2godC5zdGVw
X2Z1bmMoKCkgPT4gewotICAgICAgICBhc3NlcnRfdHJ1ZShmYWxzZSwgInNlbmRfa2V5cyBub3Qg
aW1wbGVtZW50ZWQgeWV0Iik7Ci0gICAgICAgIHQuZG9uZSgpOworICAgICAgdGFyZ2V0LmFkZEV2
ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmNfZG9uZSgoZSkgPT4geworICAgICAgICBh
c3NlcnRfZXF1YWxzKGdldENvbXB1dGVkU3R5bGUodGFyZ2V0KS5vdXRsaW5lQ29sb3IsICJyZ2Io
MCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9yICR7dGFyZ2V0LnRhZ05hbWV9IyR7dGFyZ2V0
LmlkfSBzaG91bGQgYmUgZ3JlZW5gKTsKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoZ2V0Q29t
cHV0ZWRTdHlsZSh0YXJnZXQpLmJhY2tncm91bmRDb2xvciwgInJnYigyNTUsIDAsIDApIiwgYGJh
Y2tncm91bmRDb2xvciBmb3IgJHt0YXJnZXQudGFnTmFtZX0jJHt0YXJnZXQuaWR9IHNob3VsZCBO
T1QgYmUgcmVkYCk7CiAgICAgICB9KSk7CisKKyAgICAgIHRlc3RfZHJpdmVyLmNsaWNrKHRhcmdl
dCk7CiAgICAgfSwgIjpmb2N1cy12aXNpYmxlIG1hdGNoZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVs
dCgpIGlzIGNhbGxlZCIpOwogICA8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQu
dHh0CmluZGV4IDZiMmEyNGUxYzNmZjkzNzkzN2RhYTI2OTc2ZmIzNWMyZjg0MWZlYzYuLjQ5YWQ4
Y2U5YzNjM2MxYzQxMmEwYjlkNjM2YjRhZmQ2NjljNTM4YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVk
LnR4dApAQCAtOCw3ICs4LDUgQEAgSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJUYXJnZXQiIGhh
cyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIGEKIEluaXRpYWwKIFRh
cmdldAogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotRkFJTCA6
Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHBy
ZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUgYXNzZXJ0
X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBESVYjaW5pdGlhbCBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZv
Y3VzLXZpc2libGUgZG9lcyBub3QgbWF0Y2ggYWZ0ZXIgbW91c2UgY2xpY2sgZXZlbiBpZiBwcmV2
aW91cyBmb2N1c2VkIGVsZW1lbnQgd2FzIG1hdGNoaW5nIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTQtZXhwZWN0ZWQudHh0CmluZGV4IDZhZGU1NTMyMzFkODdlYTBlNGUxZDNjODBhYTM2YmIzMjFm
NzA3MDIuLmYxODEwODA2YjJjN2JlM2RjMTAwYWQ4Zjg5YjVhYTVmYzhhMWFmZTMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDE0LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAogVGFyZ2V0CiAKLUZBSUwgOmZvY3Vz
LXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBi
YWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVUI2lucHV0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJy
Z2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNp
YmxlIG1hdGNoZXMgYWZ0ZXIgc2NyaXB0IGZvY3VzIG1vdmUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50
eHQKaW5kZXggM2Q4MTczZThiOGE5Nzg1YTMyMWUyNTExODg2M2UwYmNhZTdlNjA3MS4uNDEyYWMz
NDQ5ZDk3Y2MzMDk5NmI5MWVlNTE3ZWIwMTI4NWM4N2QwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDE2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQu
dHh0CkBAIC0xLDUgKzEsNSBAQAogSW5pdGlhbAogCiAKLUZBSUwgOmZvY3VzLXZpc2libGUgYWx3
YXlzIG1hdGNoIG9uIHRleHQgaW5wdXRzIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBm
b3IgSU5QVVQjdGFyZ2V0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIg
YnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRj
aCBvbiB0ZXh0IGlucHV0cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1ZmM0YjY2NzQ1YzY3ZWQzYzA4
M2IzNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgcHJv
Z3JhbW1hdGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVyIGEgY2xpY2sgZG9lcyBub3Qg
Y2F1c2UgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dlci4KK0lmIHRoZSB1c2VyLWFn
ZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12aXNpYmxlIHBzZXVkby1j
bGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1dHRvbiBiZWxvdyB0aGF0IHNh
eXMgIkNsaWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3Vz
ZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJl
c3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVlbiBiYWNrZ3JvdW5kLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGljayBtZS4KK0kgd2lsbCBiZSBm
b2N1c2VkIHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3JhbW1hdGljIGZvY3VzIGFmdGVy
IGNsaWNrIHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogYmFj
a2dyb3VuZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAy
NTUsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1
ZmM0YjY2NzQ1YzY3ZWQzYzA4M2IzNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVy
IGEgY2xpY2sgZG9lcyBub3QgY2F1c2UgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dl
ci4KK0lmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1
cy12aXNpYmxlIHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1
dHRvbiBiZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5
cyAiSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5l
LCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBn
cmVlbiBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGlj
ayBtZS4KK0kgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3Jh
bW1hdGljIGZvY3VzIGFmdGVyIGNsaWNrIHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXNzZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUg
ZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDIyMDgyOTY2NDIyMjM4MTNkYzgwZWUwMmI2ODA5NjRhZWUy
MjJkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsNyArMCwwIEBACi1UaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW55IGVsZW1lbnQgZm9jdXNlZCB2
aWEgYW4gYXV0b2ZvY3VzIGF0dHJpYnV0ZSB3aWxsIGhhdmUgOmZvY3VzLXZpc2libGUgbWF0Y2hp
bmcgZW5hYmxlZC4KLUlmIHRoZSBidXR0b24gdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBh
dXRvbWF0aWNhbGx5IiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQg
aXMgRkFJTFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1
bHQgaXMgU1VDQ0VTUy4KLQotSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseS4KLQotRkFJ
TCBBdXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91
dGxpbmVDb2xvciBmb3IgQlVUVE9OI2J1dHRvbiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJn
YigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDAuODQ3KSIKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421235</attachid>
            <date>2021-02-22 13:38:33 -0800</date>
            <delta_ts>2021-02-26 07:08:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210222223830.patch</filename>
            <type>text/plain</type>
            <size>43855</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uZjAxZTZmM2E0OWVmOTI4M2M2MDI5NGE3NWUzMDJi
YWJlM2YwOWVkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbykuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtKgorCisgICAg
ICAgICogY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKFdlYkNv
cmU6Om1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyk6IENoZWNrIGVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkuCisgICAgICAgICogZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RWxlbWVudDo6c2V0Rm9jdXMpOiBXaGVuIGFuIGVsZW1lbnQgbG9zZXMgZm9jdXMgaXQgYWx3
YXlzIGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKS4gV2hlbiBhbiBlbGVtZW50IGdldHMg
Zm9jdXNlZAorICAgICAgICBpdCBjYWxscyBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGVs
ZW1lbnRzIHRoYXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoYXMgdGhleSBhbHdheXMgbWF0Y2gg
OmZvY3VzLXZpc2libGUpLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6c2V0SGFzRm9jdXNW
aXNpYmxlKTogTmV3IG1ldGhvZCBnYXRlZCBiZWhpbmQgdGhlIGV4cGVyaW1lbnRhbCBmbGFnLgor
ICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOiBNYW5hZ2Ugc2NyaXB0IGZvY3VzIGtl
ZXBpbmcgdHJhY2sgb2YgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IG1hdGNoaW5nIChvciBub3Qp
IDpmb2N1cy12aXNpYmxlLAorICAgICAgICB0byBsYXRlciBjYWxsIHNldEhhc0ZvY3VzVmlzaWJs
ZSgpIG9uIHRoZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQuCisgICAgICAgICogZG9tL0VsZW1lbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlzaWJsZSBjb25zdCk6IEFk
ZCBuZXcgbWV0aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAgICAgIChXZWJDb3JlOjpO
b2RlOjpmbGFnSGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZvciA6Zm9jdXMtdmlzaWJs
ZSBtYXRjaGluZy4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpFdmVudEhhbmRsZXI6OmludGVybmFsS2V5RXZlbnQpOiBJZiB0aGUgdXNlciBpbnRl
cmFjdHMgd2l0aCB0aGUgcGFnZSB2aWEga2V5Ym9hcmQsIGNhbGwgc2V0SGFzRm9jdXNWaXNpYmxl
KHRydWUpLgorICAgICAgICBBdm9pZCB0aGF0IGZvciBtb2RpZmllciBrZXlzLgorICAgICAgICAq
IHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzQ29udHJv
bGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2li
bGUodHJ1ZSkgZm9yIGtleWJvYXJkIGZvY3VzLgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2Nyb2xsVG9GcmFnbWVudEludGVybmFs
KTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGFuY2hvciBmb2N1cy4KKyAgICAg
ICAgKiBzdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZTo6RWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGluZ1J1bGVzKTogQWRkIDpm
b2N1cy12aXNpYmxlIHJ1bGVzIHN0dWZmIGxpa2Ugd2UgYWxyZWFkeSBoYXZlIGZvciA6Zm9jdXMu
CisgICAgICAgICogc3R5bGUvUnVsZVNldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
UnVsZVNldDo6YWRkUnVsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlJ1bGVT
ZXQ6OnRyYXZlcnNlUnVsZURhdGFzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6
UnVsZVNldDo6c2hyaW5rVG9GaXQpOiBEaXR0by4KKyAgICAgICAgKiBzdHlsZS9SdWxlU2V0Lmg6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6Zm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3NSdWxlcyBjb25zdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1N0eWxlU2hhcmluZ1Jlc29s
dmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFyaW5nUmVzb2x2ZXI6OmNhblNo
YXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBmb3IgaGFzRm9jdXNWaXNpYmxl
KCkuCisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2luZyBhbmQgZXhw
ZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNo
ZWNrZXJUZXN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2Vy
VGVzdEZ1bmN0aW9ucy5oCmluZGV4IDZmNzdmOWU2NGJjYmJkM2IyNmU4MmFlOTUxNTFmMGQ4Y2Uw
ZmJhZWQuLjgwMDEzZjA1ZjFlZGUxYmJjMDY2OTA4NjJkODJkZjkzZTRmY2M5N2YgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaApAQCAt
NDc0LDcgKzQ3NCwxMCBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgbWF0Y2hlc0ZvY3VzUHNldWRvQ2xh
c3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKIAogQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNG
b2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhjb25zdCBFbGVtZW50JiBlbGVtZW50KQogewotICAgIHJl
dHVybiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmZvcmNlUHNldWRvU3RhdGUoZWxlbWVudCwg
Q1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAgICBpZiAoSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRlKGVsZW1lbnQsIENTU1NlbGVjdG9yOjpQ
c2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0
dXJuIGVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgJiYgaXNGcmFtZUZvY3VzZWQoZWxlbWVudCk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCBm
ODg2YTBmY2Q3ZTkwZTUyMWU1ZWI3Yzc3Yzc3Njc3MzI0NGRiNzFhLi45MDY0MmQ4ZDEyOWFkYjM4
YzE2MWI2NWRlM2EyNmMwYjIxYjViNGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC03NDQs
NiArNzQ0LDI1IEBAIHZvaWQgRWxlbWVudDo6c2V0Rm9jdXMoYm9vbCBmbGFnKQogCiAgICAgZm9y
IChhdXRvKiBlbGVtZW50ID0gdGhpczsgZWxlbWVudDsgZWxlbWVudCA9IGVsZW1lbnQtPnBhcmVu
dEVsZW1lbnRJbkNvbXBvc2VkVHJlZSgpKQogICAgICAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1dp
dGhpbihmbGFnKTsKKworICAgIGlmIChmbGFnKSB7CisgICAgICAgIC8vIEVsZW1lbnRzIHRoYXQg
c3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoZm9ybSBpbnB1dHMgYW5kIGNvbnRlbnRlZGl0YWJsZSkg
YWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIHdoZW4gZm9jdXNlZC4KKyAgICAgICAgaWYgKGlz
VGV4dEZpZWxkKCkgfHwgaXNDb250ZW50RWRpdGFibGUoKSkKKyAgICAgICAgICAgIHNldEhhc0Zv
Y3VzVmlzaWJsZSh0cnVlKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc2V0SGFzRm9jdXNWaXNpYmxl
KGZhbHNlKTsKK30KKwordm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUoYm9vbCBmbGFn
KQoreworICAgIGlmICghZG9jdW1lbnQoKS5zZXR0aW5ncygpLmZvY3VzVmlzaWJsZUVuYWJsZWQo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGhhc0ZvY3VzVmlzaWJsZSgpID09IGZsYWcp
CisgICAgICAgIHJldHVybjsKKworICAgIFN0eWxlOjpQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRh
dGlvbiBzdHlsZUludmFsaWRhdGlvbigqdGhpcywgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9j
dXNWaXNpYmxlKTsKKyAgICBzZXROb2RlRmxhZyhOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlLCBm
bGFnKTsKIH0KIAogdm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1dpdGhpbihib29sIGZsYWcpCkBA
IC0zMDA3LDYgKzMwMjYsOSBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcgogICAgICAgICByZXR1
cm47CiAKICAgICBhdXRvIGRvY3VtZW50ID0gbWFrZVJlZih0aGlzLT5kb2N1bWVudCgpKTsKKyAg
ICAvLyBGb3Igc2NyaXB0IGZvY3VzIHRoZSBuZXdseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1h
dGNoIChvciBub3QpIDpmb2N1cy12aXNpYmxlIGlmIHRoZSBhY3RpdmUgZWxlbWVudCBtYXRjaGVz
IChvciBub3QpIDpmb2N1cy12aXNpYmxlLgorICAgIC8vIElmIHRoZXJlJ3Mgbm8gYWN0aXZlIGVs
ZW1lbnQgdGhlbiBzY3JpcHQgZm9jdXMgYWx3YXlzIG1hdGNoZXMgOmZvY3VzLXZpc2libGUuCisg
ICAgYm9vbCBuZXdseUZvY3VzZWRFbGVtZW50U2hvdWxkTWF0Y2hGb2N1c1Zpc2libGUgPSAhZG9j
dW1lbnQtPmZvY3VzZWRFbGVtZW50KCkgfHwgZG9jdW1lbnQtPmZvY3VzZWRFbGVtZW50KCktPmhh
c0ZvY3VzVmlzaWJsZSgpOwogICAgIGlmIChkb2N1bWVudC0+Zm9jdXNlZEVsZW1lbnQoKSA9PSB0
aGlzKSB7CiAgICAgICAgIGlmIChkb2N1bWVudC0+cGFnZSgpKQogICAgICAgICAgICAgZG9jdW1l
bnQtPnBhZ2UoKS0+Y2hyb21lKCkuY2xpZW50KCkuZWxlbWVudERpZFJlZm9jdXMoKnRoaXMpOwpA
QCAtMzA0MiwxMSArMzA2NCwxNiBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcgogICAgICAgICBp
ZiAoIWZyYW1lLmhhc0hhZFVzZXJJbnRlcmFjdGlvbigpICYmICFmcmFtZS5pc01haW5GcmFtZSgp
ICYmICFkb2N1bWVudC0+dG9wRG9jdW1lbnQoKS5zZWN1cml0eU9yaWdpbigpLmlzU2FtZU9yaWdp
bkRvbWFpbihkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSkpCiAgICAgICAgICAgICByZXR1cm47
CiAKKyAgICAgICAgaWYgKCFuZXdUYXJnZXQtPmhhc0ZvY3VzVmlzaWJsZSgpKQorICAgICAgICAg
ICAgbmV3VGFyZ2V0LT5zZXRIYXNGb2N1c1Zpc2libGUobmV3bHlGb2N1c2VkRWxlbWVudFNob3Vs
ZE1hdGNoRm9jdXNWaXNpYmxlKTsKKwogICAgICAgICAvLyBGb2N1cyBhbmQgY2hhbmdlIGV2ZW50
IGhhbmRsZXJzIGNhbiBjYXVzZSB1cyB0byBsb3NlIG91ciBsYXN0IHJlZi4KICAgICAgICAgLy8g
SWYgYSBmb2N1cyBldmVudCBoYW5kbGVyIGNoYW5nZXMgdGhlIGZvY3VzIHRvIGEgZGlmZmVyZW50
IG5vZGUgaXQKICAgICAgICAgLy8gZG9lcyBub3QgbWFrZSBzZW5zZSB0byBjb250aW51ZSBhbmQg
dXBkYXRlIGFwcGVhcmVuY2UuCi0gICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCku
c2V0Rm9jdXNlZEVsZW1lbnQobmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIGRp
cmVjdGlvbikpCisgICAgICAgIGlmICghcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuc2V0Rm9jdXNl
ZEVsZW1lbnQobmV3VGFyZ2V0LmdldCgpLCAqZG9jdW1lbnQtPmZyYW1lKCksIGRpcmVjdGlvbikp
IHsKKyAgICAgICAgICAgIG5ld1RhcmdldC0+c2V0SGFzRm9jdXNWaXNpYmxlKGZhbHNlKTsKICAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogICAgIH0KIAogICAgIG5ld1RhcmdldC0+cmV2
ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4
IDk2YmQ3NjAzZmVkNzQxZTkyNzFkOWJiNWEyZWE2MThjNDA3OTg0M2MuLjk0OWNiYmMzZjk2NTE3
NTc2ZWUyMzI2ZDk5ZGEyZjM4OTg3NGQ3MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtMzE5LDEy
ICszMTksMTQgQEAgcHVibGljOgogICAgIGJvb2wgaG92ZXJlZCgpIGNvbnN0IHsgcmV0dXJuIGlz
VXNlckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50SG92ZXJlZCgpOyB9CiAg
ICAgYm9vbCBmb2N1c2VkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYm
IGlzVXNlckFjdGlvbkVsZW1lbnRGb2N1c2VkKCk7IH0KICAgICBib29sIGlzQmVpbmdEcmFnZ2Vk
KCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNlckFjdGlvbkVs
ZW1lbnREcmFnZ2VkKCk7IH0KKyAgICBib29sIGhhc0ZvY3VzVmlzaWJsZSgpIGNvbnN0IHsgcmV0
dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUpOyB9OwogICAgIGJvb2wg
aGFzRm9jdXNXaXRoaW4oKSBjb25zdCB7IHJldHVybiBoYXNOb2RlRmxhZyhOb2RlRmxhZzo6SGFz
Rm9jdXNXaXRoaW4pOyB9OwogCiAgICAgdmlydHVhbCB2b2lkIHNldEFjdGl2ZShib29sID0gdHJ1
ZSwgYm9vbCBwYXVzZSA9IGZhbHNlLCBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGUgPSBTdHlsZTo6
SW52YWxpZGF0aW9uU2NvcGU6OkFsbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEhvdmVyZWQoYm9v
bCA9IHRydWUsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRpb25T
Y29wZTo6QWxsKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9jdXMoYm9vbCk7CiAgICAgdm9pZCBz
ZXRCZWluZ0RyYWdnZWQoYm9vbCk7CisgICAgdm9pZCBzZXRIYXNGb2N1c1Zpc2libGUoYm9vbCk7
CiAgICAgdm9pZCBzZXRIYXNGb2N1c1dpdGhpbihib29sKTsKIAogICAgIE9wdGlvbmFsPGludD4g
dGFiSW5kZXhTZXRFeHBsaWNpdGx5KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAppbmRleCAyZWNkMTVkNmQ5
NGQ1YTk0YWY3NTlmYmQ1NTc2NTI1N2FmNGQ2NmUxLi5jYTcwYWMyMjI5YTAxOTQ0MTQ1YjI0MWRi
MzQxZGZlYzNjYTM3OGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKQEAgLTUxMCw2ICs1MTAsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzU2hhZG93Um9vdCgpIHsgcmV0dXJuIHN0YXRpY19j
YXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc1NoYWRvd1Jvb3QpOyB9CiAgICAgc3RhdGljIGludDMy
X3QgZmxhZ0lzSFRNTCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJ
c0hUTUxFbGVtZW50KTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc0xpbmsoKSB7IHJldHVy
biBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNMaW5rKTsgfQorICAgIHN0YXRpYyBp
bnQzMl90IGZsYWdIYXNGb2N1c1Zpc2libGUoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90
PihOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlKTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdI
YXNGb2N1c1dpdGhpbigpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpI
YXNGb2N1c1dpdGhpbik7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNQYXJzaW5nQ2hpbGRy
ZW5GaW5pc2hlZCgpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJc1Bh
cnNpbmdDaGlsZHJlbkZpbmlzaGVkKTsgfQogI2VuZGlmIC8vIEVOQUJMRShKSVQpCkBAIC01NTAs
OCArNTUxLDkgQEAgcHJvdGVjdGVkOgogICAgICAgICBDb250YWluc0Z1bGxTY3JlZW5FbGVtZW50
ID0gMSA8PCAyNSwKICNlbmRpZgogICAgICAgICBJc0NvbXB1dGVkU3R5bGVJbnZhbGlkRmxhZyA9
IDEgPDwgMjYsCisgICAgICAgIEhhc0ZvY3VzVmlzaWJsZSA9IDEgPDwgMjcsCiAKLSAgICAgICAg
Ly8gQml0cyAyNy0zMSBhcmUgZnJlZS4KKyAgICAgICAgLy8gQml0cyAyOC0zMSBhcmUgZnJlZS4K
ICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUYWJJbmRleFN0YXRlIDogdWludDhfdCB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggY2I2YWUzZWE2OWRmMGZmYjAyYTIyNjk0
NTYxZDYxMmVjNzYxYmY1ZC4uODM4NTdkYzdlNjRhMjRmNWEzNWEyYTk0ZTQzNmI0NWY0NGE2NDUy
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMzUzMiw2ICszNTMyLDEx
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjppbnRlcm5hbEtleUV2ZW50KGNvbnN0IFBsYXRmb3JtS2V5
Ym9hcmRFdmVudCYgaW5pdGlhbEtleUV2ZW50CiAgICAgICAgIGtleWRvd24tPnByZXZlbnREZWZh
dWx0KCk7CiAgICAga2V5ZG93bi0+c2V0VGFyZ2V0KGVsZW1lbnQpOwogCisgICAgLy8gSWYgdGhl
IHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdmlhIHRoZSBrZXlib2FyZCwgdGhlIGN1cnJl
bnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlLgorICAgIC8v
IEp1c3QgdHlwaW5nIGEgbW9kaWZpZXIga2V5IGlzIG5vdCBjb25zaWRlcmVkIHVzZXIgaW50ZXJh
Y3Rpb24gd2l0aCB0aGUgcGFnZS4KKyAgICBpZiAoIWtleWRvd24tPmN0cmxLZXkoKSAmJiAha2V5
ZG93bi0+bWV0YUtleSgpICYmICFrZXlkb3duLT5hbHRHcmFwaEtleSgpICYmICFrZXlkb3duLT5z
aGlmdEtleSgpKQorICAgICAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisK
ICAgICBpZiAoaW5pdGlhbEtleUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpSYXdLZXlE
b3duKSB7CiAgICAgICAgIGVsZW1lbnQtPmRpc3BhdGNoRXZlbnQoa2V5ZG93bik7CiAgICAgICAg
IC8vIElmIGZyYW1lIGNoYW5nZWQgYXMgYSByZXN1bHQgb2Yga2V5ZG93biBkaXNwYXRjaCwgdGhl
biByZXR1cm4gdHJ1ZSB0byBhdm9pZCBzZW5kaW5nIGEgc3Vic2VxdWVudCBrZXlwcmVzcyBtZXNz
YWdlIHRvIHRoZSBuZXcgZnJhbWUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zv
Y3VzQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5j
cHAKaW5kZXggMDdhYmFkMDYwZTAxM2ViOGI3YWM1NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3
OTA5NTk3ZWMyN2FlNWFhNzE5YTY5NWMzMDQyNTEwMjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
Rm9jdXNDb250cm9sbGVyLmNwcApAQCAtNTMzLDYgKzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9s
bGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3JkZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9u
LCBLZXliCiAgICAgICAgIH0KICAgICB9CiAKKyAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2li
bGUodHJ1ZSk7CiAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpT
ZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zy
YW1lVmlldy5jcHAKaW5kZXggNWFmMWRjMmI1ODVjYmJlYTEwNzI5Yjg3YTg4OWFjNGRkMjY5Y2I0
Mi4uM2IxODYwM2FlZjVkZDViNjcxNTEzYmI1MjljNmJjMjZkOWM4ZTQ0ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcApAQCAtMjI2OCw5ICsyMjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3Ojpz
Y3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwoY29uc3QgU3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIp
CiAgICAgCiAgICAgLy8gSWYgdGhlIGFuY2hvciBhY2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3Zl
IGZvY3VzIHRoZXJlIHRvIGFpZCB1c2VycyByZWx5aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24u
CiAgICAgaWYgKGFuY2hvckVsZW1lbnQpIHsKLSAgICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlz
Rm9jdXNhYmxlKCkpCisgICAgICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7
CisgICAgICAgICAgICBhbmNob3JFbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAg
ICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxlbWVudChhbmNob3JFbGVtZW50LmdldCgp
KTsKLSAgICAgICAgZWxzZSB7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVu
dC5zZXRGb2N1c2VkRWxlbWVudChudWxscHRyKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZv
Y3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZShhbmNob3JFbGVtZW50LmdldCgpKTsKICAgICAgICAg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3Iu
Y3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4
IGUxODBjY2RmYTlmNjhmYWFjMDkxMGMyMzNjMjE4ZDdlZmQ2YTA0YTQuLmNjNDhjNGE2NjhkNzA5
M2YzMjNiNDAwZjRlODBjMTBjMDY0YjhlOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9F
bGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKQEAgLTE1Nyw2ICsxNTcsOCBAQCB2b2lkIEVsZW1lbnRS
dWxlQ29sbGVjdG9yOjpjb2xsZWN0TWF0Y2hpbmdSdWxlcyhjb25zdCBNYXRjaFJlcXVlc3QmIG1h
dGNoUmVxdWVzdAogICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1
ZXN0LnJ1bGVTZXQtPmxpbmtQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAg
aWYgKG1hdGNoZXNGb2N1c1BzZXVkb0NsYXNzKGVsZW1lbnQoKSkpCiAgICAgICAgIGNvbGxlY3RN
YXRjaGluZ1J1bGVzRm9yTGlzdChtYXRjaFJlcXVlc3QucnVsZVNldC0+Zm9jdXNQc2V1ZG9DbGFz
c1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CisgICAgaWYgKG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1
ZG9DbGFzcyhlbGVtZW50KCkpKQorICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3Qo
bWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMoKSwgbWF0
Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0
LnJ1bGVTZXQtPnRhZ1J1bGVzKGVsZW1lbnQoKS5sb2NhbE5hbWUoKSwgZWxlbWVudCgpLmlzSFRN
TEVsZW1lbnQoKSAmJiBlbGVtZW50KCkuZG9jdW1lbnQoKS5pc0hUTUxEb2N1bWVudCgpKSwgbWF0
Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0
LnJ1bGVTZXQtPnVuaXZlcnNhbFJ1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1J1bGVTZXQuY3BwCmluZGV4IDNhNWI1NjEwYmE3NmMzOTY3NDBmNjEwMDFjZWI4ZDJmMGEzZDk4
YzkuLmU0YTlmMDY1NjZjMzIxNDEzOTY3ZTNjMWY2ZDEwYTZiOTgwZTM1MzMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1J1bGVTZXQuY3BwCkBAIC05OCw2ICs5OCw3IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShj
b25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNl
CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGNsYXNzU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNv
bnN0IENTU1NlbGVjdG9yKiBsaW5rU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1Nl
bGVjdG9yKiBmb2N1c1NlbGVjdG9yID0gbnVsbHB0cjsKKyAgICBjb25zdCBDU1NTZWxlY3Rvciog
Zm9jdXNWaXNpYmxlU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBo
b3N0UHNldWRvQ2xhc3NTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3Iq
IGN1c3RvbVBzZXVkb0VsZW1lbnRTZWxlY3RvciA9IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2Vs
ZWN0b3IqIHNsb3R0ZWRQc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBudWxscHRyOwpAQCAtMTYyLDYg
KzE2Myw5IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVu
c2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgICAgICBjYXNlIENTU1Nl
bGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzOgogICAgICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3Ig
PSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NT
U2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlOgorICAgICAgICAgICAgICAgIGZvY3Vz
VmlzaWJsZVNlbGVjdG9yID0gc2VsZWN0b3I7CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3Q6CiAgICAgICAgICAgICAg
ICAgaG9zdFBzZXVkb0NsYXNzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBi
cmVhazsKQEAgLTI0OSw2ICsyNTMsMTEgQEAgdm9pZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0
eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAorICAgIGlmIChmb2N1c1Zpc2libGVTZWxlY3RvcikgeworICAg
ICAgICBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIGlmICh0YWdTZWxlY3RvcikgewogICAgICAgICBh
ZGRUb1J1bGVTZXQodGFnU2VsZWN0b3ItPnRhZ1FOYW1lKCkubG9jYWxOYW1lKCksIG1fdGFnTG9j
YWxOYW1lUnVsZXMsIHJ1bGVEYXRhKTsKICAgICAgICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9y
LT50YWdMb3dlcmNhc2VMb2NhbE5hbWUoKSwgbV90YWdMb3dlcmNhc2VMb2NhbE5hbWVSdWxlcywg
cnVsZURhdGEpOwpAQCAtMzk2LDYgKzQwNSw3IEBAIHZvaWQgUnVsZVNldDo6dHJhdmVyc2VSdWxl
RGF0YXMoRnVuY3Rpb24mJiBmdW5jdGlvbikKICAgICB0cmF2ZXJzZVZlY3RvcihtX3Nsb3R0ZWRQ
c2V1ZG9FbGVtZW50UnVsZXMpOwogICAgIHRyYXZlcnNlVmVjdG9yKG1fcGFydFBzZXVkb0VsZW1l
bnRSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3IobV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMpOwor
ICAgIHRyYXZlcnNlVmVjdG9yKG1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlcyk7CiAgICAg
dHJhdmVyc2VWZWN0b3IobV91bml2ZXJzYWxSdWxlcyk7CiB9CiAKQEAgLTQ5Nyw2ICs1MDcsNyBA
QCB2b2lkIFJ1bGVTZXQ6OnNocmlua1RvRml0KCkKICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVz
LnNocmlua1RvRml0KCk7CiAgICAgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzLnNocmlua1Rv
Rml0KCk7CiAgICAgbV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKKyAgICBt
X2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX3VuaXZl
cnNhbFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9wYWdlUnVsZXMuc2hyaW5rVG9GaXQoKTsK
ICAgICBtX2ZlYXR1cmVzLnNocmlua1RvRml0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9SdWxlU2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKaW5kZXgg
OTlhYTE2MGQ5MDY4NDRmYWQzNGRjMWEyNzAxNmEwMDM2YmRlMzA3OS4uM2Q1YjViMzE0NzAwYzUw
ZjQ1ZGMxNWQ4NDY2NzQ2YzBlOWEwNjhkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvUnVsZVNldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaApAQCAtMTI5
LDYgKzEyOSw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciYgc2xvdHRlZFBz
ZXVkb0VsZW1lbnRSdWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRS
dWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yJiBwYXJ0UHNldWRvRWxlbWVudFJ1bGVz
KCkgY29uc3QgeyByZXR1cm4gbV9wYXJ0UHNldWRvRWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3Qg
UnVsZURhdGFWZWN0b3IqIGZvY3VzUHNldWRvQ2xhc3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZt
X2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsgfQorICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1
c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCkgY29uc3QgeyByZXR1cm4gJm1fZm9jdXNWaXNpYmxl
UHNldWRvQ2xhc3NSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiB1bml2ZXJzYWxS
dWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX3VuaXZlcnNhbFJ1bGVzOyB9CiAKICAgICBjb25zdCBW
ZWN0b3I8U3R5bGVSdWxlUGFnZSo+JiBwYWdlUnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VS
dWxlczsgfQpAQCAtMTY3LDYgKzE2OCw3IEBAIHByaXZhdGU6CiAgICAgUnVsZURhdGFWZWN0b3Ig
bV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9yIG1fcGFydFBz
ZXVkb0VsZW1lbnRSdWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX2ZvY3VzUHNldWRvQ2xhc3NS
dWxlczsKKyAgICBSdWxlRGF0YVZlY3RvciBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7
CiAgICAgUnVsZURhdGFWZWN0b3IgbV91bml2ZXJzYWxSdWxlczsKICAgICBWZWN0b3I8U3R5bGVS
dWxlUGFnZSo+IG1fcGFnZVJ1bGVzOwogICAgIHVuc2lnbmVkIG1fcnVsZUNvdW50IHsgMCB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3
ZjgxYjJjNDc3ZmI0ODc2ZDdhNTYwZjE0NzllZDY5YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRh
MjM5NmFkNjRmMDIzMDg1NTQ5ODI1OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHAKQEAgLTIyNyw2ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNv
bHZlcjo6Y2FuU2hhcmVTdHlsZVdpdGhFbGVtZW50KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNv
bnN0IFN0eQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQu
Zm9jdXNlZCgpICE9IGVsZW1lbnQuZm9jdXNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNG
b2N1c1Zpc2libGUoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVF
bGVtZW50Lmhhc0ZvY3VzV2l0aGluKCkgIT0gZWxlbWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdn
ZWQoKSAhPSBlbGVtZW50LmlzQmVpbmdEcmFnZ2VkKCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDZlNzQ3OWEyZTY1OWUz
YTc4MzA2ZDMwNGJkMjE5M2EwMjFmNjUyZS4uOWFkNDM1MGZhNmNkN2JlNzZhZDRlMWU4OTNkYmQ1
MWFjYWFhOWNiZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVn
byBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpm
b2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBmb2N1cy12aXNpYmxlLTAwNS5odG1sIGZhaWxzIGluIE1hYyBh
bmQgaU9TIHBsYXRmb3JtcyBiZWNhdXNlIGJ1dHRvbnMgZG9uJ3QgZ2V0IGZvY3VzZWQgb24gY2xp
Y2sKKyAgICAgICAgKHNlZSBidWcgIzIyMjYxKS4KKworICAgICAgICAqIHBsYXRmb3JtL2lvcy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvVGVzdEV4
cGVjdGF0aW9uczogU2tpcCBmb2N1cy12aXNpYmxlLTAxMS5odG1sIGFzIGl0IHRpbWVvdXRzIGlu
IGlPUy4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisK
IDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUgcGFyc2luZyBhbmQgZXhwZXJpbWVu
dGFsIGZsYWcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDE5MjkwZmY5MWI0MmU1
ZGExZGJmOTY1YzQ3NGMxZWNiYzQyZmE0ZGIuLjc1ZTBmZTVmMjIxODI4M2E4OWM5MzMxYmIyZWM3
N2Q2NWNkZGE0MzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5
IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29t
PgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgZXhw
ZWN0YXRpb25zLCBtb3N0IG9mIHRoZSA6Zm9jdXMtdmlzaWJsZSB0ZXN0cyBhcmUgcGFzc2luZyBu
b3cuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1p
bi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwNy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbDogSW1wb3J0IGxhc3QgY2hhbmdlcyBvbiB0
aGlzIHRlc3QKKyAgICAgICAgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRl
c3RzL3dwdC9wdWxsLzI3NjU2KS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTAtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDExLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sOiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRo
aXMgdGVzdAorICAgICAgICAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVz
dHMvd3B0L3B1bGwvMjc3MDApLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMTYtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTAyLTE2ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFz
ICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxl
IHBhcnNpbmcgYW5kIGV4cGVyaW1lbnRhbCBmbGFnCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9j
dXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhw
ZWN0ZWQudHh0CmluZGV4IGMxM2JlMDBmZDk1ZTczZGI0MTc4ZGMyOGU0ZDQzOTAzYTk5ZDQ3ZjQu
LmQwNjA1NDhjZmEyZDFhYzc3MmYwYzE1YjYyNThhMmIxZDc4ODY0MzEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1
cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiAKIFBBU1MgQ2hlY2tz
IHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQg
aGFuZGxlcgotRkFJTCBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBt
YXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIgYXNzZXJ0X3VucmVhY2hlZDogJzpm
b2N1cy12aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4gU3ludGF4RXJyb3I6IEVycm9y
OiBhc3NlcnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNoZXMgZXZlbnQudGFyZ2V0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0IHR5cGU9InRleHQiPjwvaW5w
dXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXZp
c2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIK
IFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4nIHBzZXVkby1jbGFzcyBtYXRjaGVzIGlu
c2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3Vz
aW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1l
eHBlY3RlZC50eHQKaW5kZXggMjdlMWE5YWYyYWJlOGY2N2I4OGViZmM3NzBjZTMzMzQyMzc5MWVk
ZS4uN2ZlNTAzM2NlOGE0OGM2NjY4MTg5MjkyZDhhMzhiOTc3ZWJmM2NkMiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4t
Zm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiAKIFBBU1Mg
Q2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2lu
JyBldmVudCBoYW5kbGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRv
LWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyIGFzc2VydF91bnJl
YWNoZWQ6ICc6Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGludmFsaWQgc2VsZWN0b3IuIFN5bnRheEVy
cm9yOiBFcnJvcjogYXNzZXJ0X2VxdWFsczogJzpmb2N1cy12aXNpYmxlJyBtYXRjaGVzIGV2ZW50
LnRhcmdldCBleHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVudCBub2RlIDxpbnB1dCB0eXBlPSJ0
ZXh0Ij48L2lucHV0PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1MgQ2hlY2tzIHRoYXQg
Jzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2
ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4nIHBzZXVkby1jbGFz
cyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVj
dGVkLnR4dAppbmRleCA4NTBjN2FiMTcwMmIzOTMyNDkwMzRkMGIzMzZlYzk1NmEzYzE5NDMwLi5l
Yzc3Y2VmYzAyNTgxZTY1NTE1NzgwM2U2OThlNDM4ZDNiNjg5MzFmIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBl
Y3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3Jv
dW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIEZvY3Vz
IG1lLgogCi1GQUlMIEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBh
c3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEtleWJv
YXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVk
LnR4dAppbmRleCBiNWE5ZWY0MTRkMmYzMGQ4Y2ZiMTJlOGNiMDZkZDliZDIzOTljOWEwLi45MzU4
N2RkZGI2MmI0NWZhNGYwNTljNmFlOWU2NWNiNzg5ZWM3NWNiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3Rl
ZC50eHQKQEAgLTE4LDE4ICsxOCwxOCBAQCBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dy
b3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgdGhlIGVsZQogCiAKIAot
RkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6
IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAi
cmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVu
dCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IElOUFVUI2lucHV0MiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBi
dXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQzIHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDMgc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NCB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9l
cXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ0IHNob3VsZCBiZSBncmVlbiBleHBl
Y3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMg
ZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29s
b3IgZm9yIElOUFVUI2lucHV0NSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQ2IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMg
a2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1
dDYgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdi
KDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NyB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFz
c2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ3IHNob3VsZCBiZSBncmVl
biBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRs
aW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigw
LCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5Q
VVQjaW5wdXQ5IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3Vw
cG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBV
VCNpbnB1dDkgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdv
dCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTAgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTAgc2hvdWxk
IGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDAp
IgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNlIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1
YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTEgc2hvdWxkIGJlIGdyZWVuIGV4cGVj
dGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBl
bGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29s
b3IgZm9yIElOUFVUI2lucHV0MTIgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4
LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0
cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lu
cHV0MTMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAi
cmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IFRFWFRBUkVBI2lucHV0MTQgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIFRFWFRBUkVBI2lucHV0MTQgc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZp
c2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJ
TlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NCB2
aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJv
YXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ1IHZpYSBtb3VzZSBzaG91
bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BB
U1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9j
dXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVt
ZW50IElOUFVUI2lucHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFz
IGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQ4IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMg
a2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDkgdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTAgdmlhIG1vdXNlIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1
cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlz
aWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTMg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IFRFWFRBUkVBI2lucHV0MTQgdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dAppbmRleCA1YWFjZDRiMTFmMzhjNjNjMWU2OTY5NThm
NWQ2MDY0ZjE0NmNiYzQ4Li45ODExNWIxZTEyZDAwZDA2NDVkYjM5OTk3OGFlOGViNmNmMGIyNTJj
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElmIHRoZSBlbGVtZW50
IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJ
ZiB0aGUgZWxlCiAKIEZvY3VzIG1lCiAKLUZBSUwgRm9jdXMgc2hvdWxkIGFsd2F5cyBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBTUEFOI2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEy
OCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgRm9jdXMgc2hvdWxkIGFsd2F5cyBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1l
eHBlY3RlZC50eHQKaW5kZXggOGJiOWNmMzA3MDBmMTM1ODJlYTc4YWIyMTczZTNhMjIyYjljZGFj
ZC4uOWYxZWUwOTg5ZGMxNzdhNzI0YWI3ZGM5Y2NjN2EyZTA4NzJkNmZjNCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDct
ZXhwZWN0ZWQudHh0CkBAIC0yLDkgKzIsOSBAQCBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgdXNpbmcg
dGhlIGtleWJvYXJkIGluIGEgd2F5IHRoYXQgZG9lcyBub3QgbW92ZSBmb2N1cyBzdGlsbAogSWYg
dGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgOmZvY3VzLXZpc2li
bGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3QuCiBVc2UgdGhlIG1vdXNlIHRvIGZv
Y3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgogSWYgdGhlIGVsZW1l
bnQgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCi1Q
cmVzcyB0aGUgU0hJRlQga2V5LgorUHJlc3MgdGhlIEVOVEVSIGtleS4KIElmIHRoZSBlbGVtZW50
IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFuZCBub3QgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhl
IHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCiBDbGljayBtZS4KIAotRkFJTCBVc2luZyBrZXlib2Fy
ZCB3aGlsZSBlbGVtZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRyaWdnZXIgOmZvY3VzLXZpc2libGU7
IHVzaW5nIG1vdXNlIHdpdGhvdXQgbW92aW5nIGZvY3VzIHNob3VsZCBub3QgY2FuY2VsIGl0OyBt
b3ZpbmcgZm9jdXMgdXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNlbCBpdC4gYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIFVz
aW5nIGtleWJvYXJkIHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNlZCBzaG91bGQgdHJpZ2dlciA6Zm9j
dXMtdmlzaWJsZTsgdXNpbmcgbW91c2Ugd2l0aG91dCBtb3ZpbmcgZm9jdXMgc2hvdWxkIG5vdCBj
YW5jZWwgaXQ7IG1vdmluZyBmb2N1cyB1c2luZyBtb3VzZSBzaG91bGQgY2FuY2VsIGl0LgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5o
dG1sCmluZGV4IDBmYzE5NmNiZWNkZjFiMTk4YTViYWRjZTM2OTRiMWVjN2NjOTVkNGYuLjE0OWE2
ZjY4ZmU4YzMwMGY1ZGQxNzJiOTdkMmYyOTc0ZjVlMzEyMTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwNy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCkBAIC0zNiw3ICsz
Niw3IEBACiAgICAgPGxpPklmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBv
cnQgdGhlIDxjb2RlPjpmb2N1cy12aXNpYmxlPC9jb2RlPiBwc2V1ZG8tY2xhc3MgdGhlbiBTS0lQ
IHRoaXMgdGVzdC48L2xpPgogICAgIDxsaT5Vc2UgdGhlIG1vdXNlIHRvIGZvY3VzIHRoZSBlbGVt
ZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIjwvbGk+CiAgICAgPGxpPklmIHRoZSBlbGVt
ZW50IGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLjwv
bGk+Ci0gICAgPGxpPlByZXNzIHRoZSBTSElGVCBrZXkuPC9saT4KKyAgICA8bGk+UHJlc3MgdGhl
IEVOVEVSIGtleS48L2xpPgogICAgIDxsaT5JZiB0aGUgZWxlbWVudCBub3cgaGFzIGEgZ3JlZW4g
b3V0bGluZSBhbmQgbm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBT
VUNDRVNTLjwvbGk+CiAgIDwvb2w+CiAKQEAgLTY1LDcgKzY1LDggQEAKICAgICAgICAgb25lLmFk
ZEV2ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmModGVzdF9tb2RhbGl0eV9jaGFuZ2Up
KTsKICAgICAgICAgb25lLnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIiwgaGFuZGxlX2luaXRp
YWxfZm9jdXMpOwogCi0gICAgICAgIHRlc3RfZHJpdmVyLnNlbmRfa2V5cyhvbmUsICJcdUUwNTAi
KTsKKyAgICAgICAgY29uc3QgZW50ZXIgPSAiXHVFMDA3IjsKKyAgICAgICAgdGVzdF9kcml2ZXIu
c2VuZF9rZXlzKG9uZSwgZW50ZXIpOwogICAgICAgfSk7CiAKICAgICAgIGNvbnN0IHRlc3RfbW9k
YWxpdHlfY2hhbmdlID0gdC5zdGVwX2Z1bmMoKCkgPT4gewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS1leHBlY3RlZC50eHQK
aW5kZXggOWM3YmQxZGYxNDM4ZWI0MTlhMjgwODAyZDRkNTA1MzM4OWM2MDlkYi4uOGViNDg0ZTQx
NTIxZGMxZDIyZjcxODNkZTdhOWUyMzM3N2Y5YjFlOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0
CkBAIC0zLDUgKzMsNSBAQCBJZiB0aGUgYnV0dG9uIHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3Vz
ZWQgYXV0b21hdGljYWxseSIgaGFzIGEgcmVkIGJhY2tncm91bmQsCiAKIEkgd2lsbCBiZSBmb2N1
c2VkIGF1dG9tYXRpY2FsbHkuCiAKLUZBSUwgQXV0b2ZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIEJVVFRPTiNidXR0b24gc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgorUEFTUyBBdXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTAtZXhwZWN0ZWQudHh0CmluZGV4IDI2YmRlYzg0Njc1ODY3NTk0NDJmYjNlYWZlMzM0ZmI1OWUz
MThiZWMuLjA0ODVkYWM4YTc4ZjdmNGNhNWVlMGFkNzE2ODk1NTg5MjkzMWVmYWEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxMC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDEwLWV4cGVjdGVkLnR4dApAQCAtMyw1ICszLDUgQEAgSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlz
ICJJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5IiBoYXMgYSByZWQgYmFja2dyb3VuZCwK
IAogSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseS4KIAotRkFJTCBQcm9ncmFtbWF0aWMg
Zm9jdXMgb24gcGFnZSBsb2FkIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1
YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJn
YigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIFByb2dyYW1tYXRpYyBm
b2N1cyBvbiBwYWdlIGxvYWQgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEt
ZXhwZWN0ZWQudHh0CmluZGV4IDMwMzFkYzdjYjgyMjY2OTAzNWJhOTllN2RmZDZiMjRjNDJmNDE1
MTUuLmFlZjM5YTdlOWNhNTQ5MjE0MjJmM2ZlMzVmMmVhYWRjOTlkNTc0NmUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEx
LWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSw5IEBACiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgOmZv
Y3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBhIGtleWJvYXJkIGV2ZW50LCBldmVuIGlmIHRoZSBl
dmVudCBoYW5kbGVyIGNhbGxzIHByZXZlbnREZWZhdWx0KCkgb24gdGhlIGV2ZW50LgogQ2xpY2sg
IkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LiIuCiBQcmVzcyB0aGUgcmlnaHQgYXJy
b3cga2V5LgotSWYgIkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhl
biB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwg
dGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy4KK0lmIHRoZSBlbGVtZW50IGhhcyBhIHJl
ZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMg
YSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgogCi1DbGlj
ayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4gIEZvY3VzIG1vdmVzIGhlcmUuCitDbGljayBo
ZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4KIAotSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1l
c3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHBy
ZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkIFRlc3QgdGltZWQgb3V0CitQQVNTIDpmb2N1cy12aXNp
YmxlIG1hdGNoZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVsdCgpIGlzIGNhbGxlZAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCmlu
ZGV4IGIwZGFmMzRiYThkZDk2ZjM0M2U2ODdjZWY4NTI1MjNjOTJhZTJjMzkuLmNmMTg2ZDI4Yjgz
MmUwN2E2ZTAxN2VjNTczMjY0ZGJlMmQxMzIxZWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAxMS5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCkBAIC0yMSwxMSArMjEsMTEg
QEAKICAgICAgIGJvcmRlcjogMDsKICAgICB9CiAKLSAgICAjbmV4dDpmb2N1cy12aXNpYmxlIHsK
KyAgICA6Zm9jdXMtdmlzaWJsZSB7CiAgICAgICBvdXRsaW5lOiBncmVlbiBzb2xpZCA1cHg7CiAg
ICAgfQogCi0gICAgI25leHQ6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7CisgICAgOmZvY3Vz
Om5vdCg6Zm9jdXMtdmlzaWJsZSkgewogICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOwogICAg
ICAgb3V0bGluZTogMDsKICAgICB9CkBAIC0zNywzMCArMzcsMzMgQEAKICAgPHVsIGlkPSJpbnN0
cnVjdGlvbnMiPgogICAgIDxsaT5DbGljayAiQ2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJy
b3cuIi48L2xpPgogICAgIDxsaT5QcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LjwvbGk+Ci0gICAg
PGxpPklmICJGb2N1cyBtb3ZlcyBoZXJlLiIgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhl
IHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCisgICAgPGxpPklmIHRoZSBlbGVtZW50IGhhcyBhIHJl
ZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLgogICAgICAgICBJ
ZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNT
LjwvbGk+CiAgIDwvdWw+CiAgIDxiciAvPgotICA8YnV0dG9uIGlkPSJzdGFydCIgdGFiaW5kZXg9
IjAiPkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LjwvYnV0dG9uPgotICA8YnV0dG9u
IGlkPSJuZXh0IiB0YWJpbmRleD0iLTEiPkZvY3VzIG1vdmVzIGhlcmUuPC9idXR0b24+CisgIDxk
aXYgaWQ9InRhcmdldCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFy
cm93LjwvZGl2PgogICA8c2NyaXB0PgotICAgIHN0YXJ0LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRv
d24nLCAoZSkgPT4geworICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgKGUp
ID0+IHsKKyAgICAgIGUucHJldmVudERlZmF1bHQoKTsKKyAgICB9KTsKKyAgICB0YXJnZXQuYWRk
RXZlbnRMaXN0ZW5lcigia2V5dXAiLCAoZSkgPT4geworICAgICAgZS5wcmV2ZW50RGVmYXVsdCgp
OworICAgIH0pOworICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsIChlKSA9
PiB7CiAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7Ci0gICAgICBuZXh0LmZvY3VzKCk7CiAgICAg
fSk7Ci0KICAgICBhc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICAgIG5leHQuYWRkRXZlbnRM
aXN0ZW5lcigiZm9jdXMiLCB0LnN0ZXBfZnVuYygoKSA9PiB7Ci0gICAgICAgIGFzc2VydF9lcXVh
bHMoZ2V0Q29tcHV0ZWRTdHlsZShuZXh0KS5vdXRsaW5lQ29sb3IsICJyZ2IoMCwgMTI4LCAwKSIs
IGBvdXRsaW5lQ29sb3IgZm9yICR7bmV4dC50YWdOYW1lfSMke25leHQuaWR9IHNob3VsZCBiZSBn
cmVlbmApOwotICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKG5leHQp
LmJhY2tncm91bmRDb2xvciwgInJnYigyNTUsIDAsIDApIiwgYGJhY2tncm91bmRDb2xvciBmb3Ig
JHtuZXh0LnRhZ05hbWV9IyR7bmV4dC5pZH0gc2hvdWxkIE5PVCBiZSByZWRgKTsKLSAgICAgICAg
dC5kb25lKCkKLSAgICAgIH0pKTsKKyAgICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJmb2N1
cyIsICgpID0+IHsKKyAgICAgICAgY29uc3QgYXJyb3dfcmlnaHQgPSAiXHVlMDE0IjsKKyAgICAg
ICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHRhcmdldCwgYXJyb3dfcmlnaHQpOworICAgICAgfSk7
CiAKLSAgICAgIC8vIFx1ZTAxNCAtPiBBUlJPV19SSUdIVAotICAgICAgdGVzdF9kcml2ZXIuc2Vu
ZF9rZXlzKHN0YXJ0LCAiXHVlMDE0IikuY2F0Y2godC5zdGVwX2Z1bmMoKCkgPT4gewotICAgICAg
ICBhc3NlcnRfdHJ1ZShmYWxzZSwgInNlbmRfa2V5cyBub3QgaW1wbGVtZW50ZWQgeWV0Iik7Ci0g
ICAgICAgIHQuZG9uZSgpOworICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwg
dC5zdGVwX2Z1bmNfZG9uZSgoZSkgPT4geworICAgICAgICBhc3NlcnRfZXF1YWxzKGdldENvbXB1
dGVkU3R5bGUodGFyZ2V0KS5vdXRsaW5lQ29sb3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5l
Q29sb3IgZm9yICR7dGFyZ2V0LnRhZ05hbWV9IyR7dGFyZ2V0LmlkfSBzaG91bGQgYmUgZ3JlZW5g
KTsKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLmJh
Y2tncm91bmRDb2xvciwgInJnYigyNTUsIDAsIDApIiwgYGJhY2tncm91bmRDb2xvciBmb3IgJHt0
YXJnZXQudGFnTmFtZX0jJHt0YXJnZXQuaWR9IHNob3VsZCBOT1QgYmUgcmVkYCk7CiAgICAgICB9
KSk7CisKKyAgICAgIHRlc3RfZHJpdmVyLmNsaWNrKHRhcmdldCk7CiAgICAgfSwgIjpmb2N1cy12
aXNpYmxlIG1hdGNoZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVsdCgpIGlzIGNhbGxlZCIpOwogICA8
L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0CmluZGV4IDZiMmEyNGUxYzNm
ZjkzNzkzN2RhYTI2OTc2ZmIzNWMyZjg0MWZlYzYuLjQ5YWQ4Y2U5YzNjM2MxYzQxMmEwYjlkNjM2
YjRhZmQ2NjljNTM4YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dApAQCAtOCw3ICs4LDUgQEAg
SWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJUYXJnZXQiIGhhcyBhIGdyZWVuIG91dGxpbmUsIHRo
ZW4gdGhlIHRlc3QgcmVzdWx0IGlzIGEKIEluaXRpYWwKIFRhcmdldAogCi1IYXJuZXNzIEVycm9y
IChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotRkFJTCA6Zm9jdXMtdmlzaWJsZSBkb2VzIG5v
dCBtYXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVu
dCB3YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9y
IGZvciBESVYjaW5pdGlhbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDAp
IiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZvY3VzLXZpc2libGUgZG9lcyBub3Qg
bWF0Y2ggYWZ0ZXIgbW91c2UgY2xpY2sgZXZlbiBpZiBwcmV2aW91cyBmb2N1c2VkIGVsZW1lbnQg
d2FzIG1hdGNoaW5nIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAxNC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CmluZGV4
IDZhZGU1NTMyMzFkODdlYTBlNGUxZDNjODBhYTM2YmIzMjFmNzA3MDIuLmYxODEwODA2YjJjN2Jl
M2RjMTAwYWQ4Zjg5YjVhYTVmYzhhMWFmZTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAx
NC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dApAQCAt
MSw1ICsxLDUgQEAKIAogVGFyZ2V0CiAKLUZBSUwgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRl
ciBzY3JpcHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIElO
UFVUI2lucHV0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdv
dCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMgYWZ0ZXIgc2Ny
aXB0IGZvY3VzIG1vdmUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKaW5kZXggM2Q4MTczZThiOGE5
Nzg1YTMyMWUyNTExODg2M2UwYmNhZTdlNjA3MS4uNDEyYWMzNDQ5ZDk3Y2MzMDk5NmI5MWVlNTE3
ZWIwMTI4NWM4N2QwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAog
SW5pdGlhbAogCiAKLUZBSUwgOmZvY3VzLXZpc2libGUgYWx3YXlzIG1hdGNoIG9uIHRleHQgaW5w
dXRzIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3IgSU5QVVQjdGFyZ2V0IHNob3Vs
ZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwg
MCkiCitQQVNTIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRjaCBvbiB0ZXh0IGlucHV0cwogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGMwYzMwNWM5MzNj
M2VhM2Q4YmE5ZTliOTA3M2YwNzZmNTcwYzE0NTEuLmRkNzUzOThhZmNhNmM2ZmQzYTExNmY4MjIz
M2M3MjA5YjZmNWM4ZWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0
RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRp
b25zCkBAIC0zMzk0LDYgKzMzOTQsNyBAQCB3ZWJraXQub3JnL2IvMjA3ODU4IGZhc3QvY2FudmFz
L3dlYmdsL3NpbXVsYXRlZC12ZXJ0ZXhBdHRyaWIwLWludmFsaWQtaW5kaWNpZXMuaAogd2Via2l0
Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDcuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDkuaHRtbCBbIFNr
aXAgXQord2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9y
Zy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMTIuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTMuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvaG92ZXItMDAyLmh0bWwgWyBTa2lwIF0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODVj
NDFhZjJmNzY3MzQxZTVmYzRiNjY3NDVjNjdlZDNjMDgzYjM1NAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
MTAgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IGZvY3VzaW5nIGFu
IGVsZW1lbnQgYWZ0ZXIgYSBjbGljayBkb2VzIG5vdCBjYXVzZSA6Zm9jdXMtdmlzaWJsZSBtYXRj
aGluZyB0byB0cmlnZ2VyLgorSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3Vw
cG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3Qu
CitDbGljayB0aGUgYnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgorSWYgdGhlIGVs
ZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9ncmFtbWF0aWNhbGx5LiIgaGFz
IGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBl
bGVtZW50IGhhcyBhIGdyZWVuIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNV
Q0NFU1MuCisKK0NsaWNrIG1lLgorSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4K
KworRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIgY2xpY2sgc2hvdWxkIG5vdCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIERJViNlbCBz
aG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3QgInJnYmEoMCwg
MCwgMCwgMCkiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uODVjNDFhZjJmNzY3MzQxZTVmYzRiNjY3NDVjNjdlZDNjMDgzYjM1NAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0
aWNhbGx5IGZvY3VzaW5nIGFuIGVsZW1lbnQgYWZ0ZXIgYSBjbGljayBkb2VzIG5vdCBjYXVzZSA6
Zm9jdXMtdmlzaWJsZSBtYXRjaGluZyB0byB0cmlnZ2VyLgorSWYgdGhlIHVzZXItYWdlbnQgZG9l
cyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRo
ZW4gU0tJUCB0aGlzIHRlc3QuCitDbGljayB0aGUgYnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiQ2xp
Y2sgbWUuIgorSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9n
cmFtbWF0aWNhbGx5LiIgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlz
IEZBSUxVUkUuIElmIHRoZSBlbGVtZW50IGhhcyBhIGdyZWVuIGJhY2tncm91bmQsIHRoZW4gdGhl
IHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCisKK0NsaWNrIG1lLgorSSB3aWxsIGJlIGZvY3VzZWQg
cHJvZ3JhbW1hdGljYWxseS4KKworRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIgY2xpY2sg
c2hvdWxkIG5vdCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5k
Q29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCki
IGJ1dCBnb3QgInJnYmEoMCwgMCwgMCwgMCkiCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwOS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMjIw
ODI5NjY0MjIyMzgxM2RjODBlZTAyYjY4MDk2NGFlZTIyMmQuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
OS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLVRoaXMgdGVzdCBj
aGVja3MgdGhhdCBhbnkgZWxlbWVudCBmb2N1c2VkIHZpYSBhbiBhdXRvZm9jdXMgYXR0cmlidXRl
IHdpbGwgaGF2ZSA6Zm9jdXMtdmlzaWJsZSBtYXRjaGluZyBlbmFibGVkLgotSWYgdGhlIGJ1dHRv
biB0aGF0IHNheXMgIkkgd2lsbCBiZSBmb2N1c2VkIGF1dG9tYXRpY2FsbHkiIGhhcyBhIHJlZCBi
YWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBn
cmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgotCi1JIHdpbGwg
YmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5LgotCi1GQUlMIEF1dG9mb2N1cyBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBCVVRUT04jYnV0
dG9uIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YmEoMCwgMCwgMCwgMC44NDcpIgotCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421639</attachid>
            <date>2021-02-26 07:08:18 -0800</date>
            <delta_ts>2021-02-26 08:08:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210226160816.patch</filename>
            <type>text/plain</type>
            <size>40454</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyOTgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI0ZTE3NjNlYjg3ZTRj
OGE2MjBjZmZkNmY5ZTU3YTJhNjNiZWI2ZS4uNGZhNDMzMGEwYWRmYWMxZmVlMzNkMjZkNWI1ZDI2
MzhmMmYxMjQ0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbyksCisgICAgICAgIGV4Y2VwdCB0aGUgb25lcyByZWxh
dGVkIHRvIHNjcmlwdCBmb2N1cy4KKworICAgICAgICBUZXN0OiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0qCisKKyAgICAgICAgKiBj
c3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oOgorICAgICAgICAoV2ViQ29yZTo6bWF0
Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKTogQ2hlY2sgZWxlbWVudC5oYXNGb2N1c1Zpc2li
bGUoKS4KKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50OjpzZXRGb2N1cyk6IFdoZW4gYW4gZWxlbWVudCBsb3NlcyBmb2N1cyBpdCBhbHdheXMgY2Fs
bCBzZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpLiBXaGVuIGFuIGVsZW1lbnQgZ2V0cyBmb2N1c2Vk
CisgICAgICAgIGl0IGNhbGxzIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgZWxlbWVudHMg
dGhhdCBzdXBwb3J0IGtleWJvYXJkIGlucHV0IChhcyB0aGV5IGFsd2F5cyBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSkuCisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUp
OiBOZXcgbWV0aG9kIGdhdGVkIGJlaGluZCB0aGUgZXhwZXJpbWVudGFsIGZsYWcuCisgICAgICAg
ICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlz
aWJsZSBjb25zdCk6IEFkZCBuZXcgbWV0aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAg
ICAgIChXZWJDb3JlOjpOb2RlOjpmbGFnSGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZv
ciA6Zm9jdXMtdmlzaWJsZSBtYXRjaGluZy4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmludGVybmFsS2V5RXZlbnQpOiBJ
ZiB0aGUgdXNlciBpbnRlcmFjdHMgd2l0aCB0aGUgcGFnZSB2aWEga2V5Ym9hcmQsIGNhbGwgc2V0
SGFzRm9jdXNWaXNpYmxlKHRydWUpLgorICAgICAgICBBdm9pZCB0aGF0IGZvciBtb2RpZmllciBr
ZXlzLgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTogQ2FsbCBz
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGtleWJvYXJkIGZvY3VzLgorICAgICAgICAqIHBh
Z2UvRnJhbWVWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2Nyb2xsVG9G
cmFnbWVudEludGVybmFsKTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGFuY2hv
ciBmb2N1cy4KKyAgICAgICAgKiBzdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6RWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGlu
Z1J1bGVzKTogQWRkIDpmb2N1cy12aXNpYmxlIHJ1bGVzIHN0dWZmIGxpa2Ugd2UgYWxyZWFkeSBo
YXZlIGZvciA6Zm9jdXMuCisgICAgICAgICogc3R5bGUvUnVsZVNldC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6YWRkUnVsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OlJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFzKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6c2hyaW5rVG9GaXQpOiBEaXR0by4KKyAgICAgICAgKiBz
dHlsZS9SdWxlU2V0Lmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6Zm9jdXNW
aXNpYmxlUHNldWRvQ2xhc3NSdWxlcyBjb25zdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1N0
eWxlU2hhcmluZ1Jlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFyaW5n
UmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBmb3Ig
aGFzRm9jdXNWaXNpYmxlKCkuCisKIDIwMjEtMDItMTYgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMg
IDxyZWdvQGlnYWxpYS5jb20+CiAKICAgICAgICAgW3NlbGVjdG9yc10gOmZvY3VzLXZpc2libGUg
cGFyc2luZyBhbmQgZXhwZXJpbWVudGFsIGZsYWcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oCmluZGV4IDZmNzdmOWU2NGJjYmJkM2IyNmU4
MmFlOTUxNTFmMGQ4Y2UwZmJhZWQuLjgwMDEzZjA1ZjFlZGUxYmJjMDY2OTA4NjJkODJkZjkzZTRm
Y2M5N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0
RnVuY3Rpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RG
dW5jdGlvbnMuaApAQCAtNDc0LDcgKzQ3NCwxMCBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgbWF0Y2hl
c0ZvY3VzUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKIAogQUxXQVlTX0lOTElO
RSBib29sIG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhjb25zdCBFbGVtZW50JiBlbGVt
ZW50KQogewotICAgIHJldHVybiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmZvcmNlUHNldWRv
U3RhdGUoZWxlbWVudCwgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAg
ICBpZiAoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRlKGVsZW1lbnQs
IENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSkpCisgICAgICAgIHJldHVybiB0
cnVlOworCisgICAgcmV0dXJuIGVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkgJiYgaXNGcmFtZUZv
Y3VzZWQoZWxlbWVudCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50LmNwcAppbmRleCBmODg2YTBmY2Q3ZTkwZTUyMWU1ZWI3Yzc3Yzc3Njc3MzI0NGRiNzFhLi41
Nzk5NTdmNDViNTBlYWU4NmVjOTA2OGQ4YTc5MjQ2NjExZDlkZWQwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1l
bnQuY3BwCkBAIC03NDQsNiArNzQ0LDI1IEBAIHZvaWQgRWxlbWVudDo6c2V0Rm9jdXMoYm9vbCBm
bGFnKQogCiAgICAgZm9yIChhdXRvKiBlbGVtZW50ID0gdGhpczsgZWxlbWVudDsgZWxlbWVudCA9
IGVsZW1lbnQtPnBhcmVudEVsZW1lbnRJbkNvbXBvc2VkVHJlZSgpKQogICAgICAgICBlbGVtZW50
LT5zZXRIYXNGb2N1c1dpdGhpbihmbGFnKTsKKworICAgIGlmIChmbGFnKSB7CisgICAgICAgIC8v
IEVsZW1lbnRzIHRoYXQgc3VwcG9ydCBrZXlib2FyZCBpbnB1dCAoZm9ybSBpbnB1dHMgYW5kIGNv
bnRlbnRlZGl0YWJsZSkgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlIHdoZW4gZm9jdXNlZC4K
KyAgICAgICAgaWYgKGlzVGV4dEZpZWxkKCkgfHwgaXNDb250ZW50RWRpdGFibGUoKSkKKyAgICAg
ICAgICAgIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc2V0
SGFzRm9jdXNWaXNpYmxlKGZhbHNlKTsKK30KKwordm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1Zp
c2libGUoYm9vbCBmbGFnKQoreworICAgIGlmICghZG9jdW1lbnQoKS5zZXR0aW5ncygpLmZvY3Vz
VmlzaWJsZUVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGhhc0ZvY3VzVmlz
aWJsZSgpID09IGZsYWcpCisgICAgICAgIHJldHVybjsKKworICAgIFN0eWxlOjpQc2V1ZG9DbGFz
c0NoYW5nZUludmFsaWRhdGlvbiBzdHlsZUludmFsaWRhdGlvbigqdGhpcywgQ1NTU2VsZWN0b3I6
OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAgICBzZXROb2RlRmxhZyhOb2RlRmxhZzo6SGFz
Rm9jdXNWaXNpYmxlLCBmbGFnKTsKIH0KIAogdm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1dpdGhp
bihib29sIGZsYWcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIv
U291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAppbmRleCA5NmJkNzYwM2ZlZDc0MWU5MjcxZDli
YjVhMmVhNjE4YzQwNzk4NDNjLi45NDljYmJjM2Y5NjUxNzU3NmVlMjMyNmQ5OWRhMmYzODk4NzRk
NzE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTMxOSwxMiArMzE5LDE0IEBAIHB1YmxpYzoKICAg
ICBib29sIGhvdmVyZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYg
aXNVc2VyQWN0aW9uRWxlbWVudEhvdmVyZWQoKTsgfQogICAgIGJvb2wgZm9jdXNlZCgpIGNvbnN0
IHsgcmV0dXJuIGlzVXNlckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50Rm9j
dXNlZCgpOyB9CiAgICAgYm9vbCBpc0JlaW5nRHJhZ2dlZCgpIGNvbnN0IHsgcmV0dXJuIGlzVXNl
ckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50RHJhZ2dlZCgpOyB9CisgICAg
Ym9vbCBoYXNGb2N1c1Zpc2libGUoKSBjb25zdCB7IHJldHVybiBoYXNOb2RlRmxhZyhOb2RlRmxh
Zzo6SGFzRm9jdXNWaXNpYmxlKTsgfTsKICAgICBib29sIGhhc0ZvY3VzV2l0aGluKCkgY29uc3Qg
eyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3VzV2l0aGluKTsgfTsKIAogICAg
IHZpcnR1YWwgdm9pZCBzZXRBY3RpdmUoYm9vbCA9IHRydWUsIGJvb2wgcGF1c2UgPSBmYWxzZSwg
U3R5bGU6OkludmFsaWRhdGlvblNjb3BlID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwp
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRIb3ZlcmVkKGJvb2wgPSB0cnVlLCBTdHlsZTo6SW52YWxp
ZGF0aW9uU2NvcGUgPSBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGU6OkFsbCk7CiAgICAgdmlydHVh
bCB2b2lkIHNldEZvY3VzKGJvb2wpOwogICAgIHZvaWQgc2V0QmVpbmdEcmFnZ2VkKGJvb2wpOwor
ICAgIHZvaWQgc2V0SGFzRm9jdXNWaXNpYmxlKGJvb2wpOwogICAgIHZvaWQgc2V0SGFzRm9jdXNX
aXRoaW4oYm9vbCk7CiAKICAgICBPcHRpb25hbDxpbnQ+IHRhYkluZGV4U2V0RXhwbGljaXRseSgp
IGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Ob2RlLmgKaW5kZXggMmVjZDE1ZDZkOTRkNWE5NGFmNzU5ZmJkNTU3NjUyNTdh
ZjRkNjZlMS4uY2E3MGFjMjIyOWEwMTk0NDE0NWIyNDFkYjM0MWRmZWMzY2EzNzhkNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Tm9kZS5oCkBAIC01MTAsNiArNTEwLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBpbnQzMl90IGZs
YWdJc1NoYWRvd1Jvb3QoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6
SXNTaGFkb3dSb290KTsgfQogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc0hUTUwoKSB7IHJldHVy
biBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNIVE1MRWxlbWVudCk7IH0KICAgICBz
dGF0aWMgaW50MzJfdCBmbGFnSXNMaW5rKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4o
Tm9kZUZsYWc6OklzTGluayk7IH0KKyAgICBzdGF0aWMgaW50MzJfdCBmbGFnSGFzRm9jdXNWaXNp
YmxlKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzVmlz
aWJsZSk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSGFzRm9jdXNXaXRoaW4oKSB7IHJldHVy
biBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SGFzRm9jdXNXaXRoaW4pOyB9CiAgICAg
c3RhdGljIGludDMyX3QgZmxhZ0lzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWQoKSB7IHJldHVybiBz
dGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNQYXJzaW5nQ2hpbGRyZW5GaW5pc2hlZCk7
IH0KICNlbmRpZiAvLyBFTkFCTEUoSklUKQpAQCAtNTUwLDggKzU1MSw5IEBAIHByb3RlY3RlZDoK
ICAgICAgICAgQ29udGFpbnNGdWxsU2NyZWVuRWxlbWVudCA9IDEgPDwgMjUsCiAjZW5kaWYKICAg
ICAgICAgSXNDb21wdXRlZFN0eWxlSW52YWxpZEZsYWcgPSAxIDw8IDI2LAorICAgICAgICBIYXNG
b2N1c1Zpc2libGUgPSAxIDw8IDI3LAogCi0gICAgICAgIC8vIEJpdHMgMjctMzEgYXJlIGZyZWUu
CisgICAgICAgIC8vIEJpdHMgMjgtMzEgYXJlIGZyZWUuCiAgICAgfTsKIAogICAgIGVudW0gY2xh
c3MgVGFiSW5kZXhTdGF0ZSA6IHVpbnQ4X3QgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwCmluZGV4IGNiNmFlM2VhNjlkZjBmZmIwMmEyMjY5NDU2MWQ2MTJlYzc2MWJmNWQuLjgzODU3
ZGM3ZTY0YTI0ZjVhMzVhMmE5NGU0MzZiNDVmNDRhNjQ1MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAKQEAgLTM1MzIsNiArMzUzMiwxMSBAQCBib29sIEV2ZW50SGFuZGxlcjo6
aW50ZXJuYWxLZXlFdmVudChjb25zdCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQmIGluaXRpYWxLZXlF
dmVudAogICAgICAgICBrZXlkb3duLT5wcmV2ZW50RGVmYXVsdCgpOwogICAgIGtleWRvd24tPnNl
dFRhcmdldChlbGVtZW50KTsKIAorICAgIC8vIElmIHRoZSB1c2VyIGludGVyYWN0cyB3aXRoIHRo
ZSBwYWdlIHZpYSB0aGUga2V5Ym9hcmQsIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBlbGVtZW50IHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZS4KKyAgICAvLyBKdXN0IHR5cGluZyBhIG1vZGlmaWVy
IGtleSBpcyBub3QgY29uc2lkZXJlZCB1c2VyIGludGVyYWN0aW9uIHdpdGggdGhlIHBhZ2UuCisg
ICAgaWYgKCFrZXlkb3duLT5jdHJsS2V5KCkgJiYgIWtleWRvd24tPm1ldGFLZXkoKSAmJiAha2V5
ZG93bi0+YWx0R3JhcGhLZXkoKSAmJiAha2V5ZG93bi0+c2hpZnRLZXkoKSkKKyAgICAgICAgZWxl
bWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOworCiAgICAgaWYgKGluaXRpYWxLZXlFdmVu
dC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6UmF3S2V5RG93bikgewogICAgICAgICBlbGVtZW50
LT5kaXNwYXRjaEV2ZW50KGtleWRvd24pOwogICAgICAgICAvLyBJZiBmcmFtZSBjaGFuZ2VkIGFz
IGEgcmVzdWx0IG9mIGtleWRvd24gZGlzcGF0Y2gsIHRoZW4gcmV0dXJuIHRydWUgdG8gYXZvaWQg
c2VuZGluZyBhIHN1YnNlcXVlbnQga2V5cHJlc3MgbWVzc2FnZSB0byB0aGUgbmV3IGZyYW1lLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IDA3YWJhZDA2MGUwMTNl
YjhiN2FjNTYwMGRkNDQxOTZkMmIxYWE5ZmEuLmVhZGRhNzkwOTU5N2VjMjdhZTVhYTcxOWE2OTVj
MzA0MjUxMDI0OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9s
bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAg
LTUzMyw2ICs1MzMsNyBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1
bWVudE9yZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgS2V5YgogICAgICAgICB9CiAgICAg
fQogCisgICAgZWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOwogICAgIGVsZW1lbnQt
PmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOwog
ICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFt
ZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IDVhZjFk
YzJiNTg1Y2JiZWExMDcyOWI4N2E4ODlhYzRkZDI2OWNiNDIuLjNiMTg2MDNhZWY1ZGQ1YjY3MTUx
M2JiNTI5YzZiYzI2ZDljOGU0NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJh
bWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTIy
NjgsOSArMjI2OCwxMCBAQCBib29sIEZyYW1lVmlldzo6c2Nyb2xsVG9GcmFnbWVudEludGVybmFs
KGNvbnN0IFN0cmluZyYgZnJhZ21lbnRJZGVudGlmaWVyKQogICAgIAogICAgIC8vIElmIHRoZSBh
bmNob3IgYWNjZXB0cyBrZXlib2FyZCBmb2N1cywgbW92ZSBmb2N1cyB0aGVyZSB0byBhaWQgdXNl
cnMgcmVseWluZyBvbiBrZXlib2FyZCBuYXZpZ2F0aW9uLgogICAgIGlmIChhbmNob3JFbGVtZW50
KSB7Ci0gICAgICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKQorICAgICAgICBp
ZiAoYW5jaG9yRWxlbWVudC0+aXNGb2N1c2FibGUoKSkgeworICAgICAgICAgICAgYW5jaG9yRWxl
bWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOwogICAgICAgICAgICAgZG9jdW1lbnQuc2V0
Rm9jdXNlZEVsZW1lbnQoYW5jaG9yRWxlbWVudC5nZXQoKSk7Ci0gICAgICAgIGVsc2UgeworICAg
ICAgICB9IGVsc2UgewogICAgICAgICAgICAgZG9jdW1lbnQuc2V0Rm9jdXNlZEVsZW1lbnQobnVs
bHB0cik7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c05hdmlnYXRpb25TdGFydGluZ05v
ZGUoYW5jaG9yRWxlbWVudC5nZXQoKSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAppbmRleCBlMTgwY2NkZmE5ZjY4ZmFhYzA5MTBj
MjMzYzIxOGQ3ZWZkNmEwNGE0Li5jYzQ4YzRhNjY4ZDcwOTNmMzIzYjQwMGY0ZTgwYzEwYzA2NGI4
ZTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rv
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3Bw
CkBAIC0xNTcsNiArMTU3LDggQEAgdm9pZCBFbGVtZW50UnVsZUNvbGxlY3Rvcjo6Y29sbGVjdE1h
dGNoaW5nUnVsZXMoY29uc3QgTWF0Y2hSZXF1ZXN0JiBtYXRjaFJlcXVlc3QKICAgICAgICAgY29s
bGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxlU2V0LT5saW5rUHNldWRv
Q2xhc3NSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogICAgIGlmIChtYXRjaGVzRm9jdXNQc2V1ZG9D
bGFzcyhlbGVtZW50KCkpKQogICAgICAgICBjb2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0
Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzUHNldWRvQ2xhc3NSdWxlcygpLCBtYXRjaFJlcXVlc3Qp
OworICAgIGlmIChtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoZWxlbWVudCgpKSkKKyAg
ICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxlU2V0LT5m
b2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAgY29sbGVj
dE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxlU2V0LT50YWdSdWxlcyhlbGVt
ZW50KCkubG9jYWxOYW1lKCksIGVsZW1lbnQoKS5pc0hUTUxFbGVtZW50KCkgJiYgZWxlbWVudCgp
LmRvY3VtZW50KCkuaXNIVE1MRG9jdW1lbnQoKSksIG1hdGNoUmVxdWVzdCk7CiAgICAgY29sbGVj
dE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxlU2V0LT51bml2ZXJzYWxSdWxl
cygpLCBtYXRjaFJlcXVlc3QpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUv
UnVsZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcAppbmRleCAzYTVi
NTYxMGJhNzZjMzk2NzQwZjYxMDAxY2ViOGQyZjBhM2Q5OGM5Li5lNGE5ZjA2NTY2YzMyMTQxMzk2
N2UzYzFmNmQxMGE2Yjk4MGUzNTMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcApAQCAtOTgs
NiArOTgsNyBAQCB2b2lkIFJ1bGVTZXQ6OmFkZFJ1bGUoY29uc3QgU3R5bGVSdWxlJiBydWxlLCB1
bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZQogICAgIGNvbnN0IENTU1NlbGVjdG9y
KiBjbGFzc1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogbGlua1Nl
bGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogZm9jdXNTZWxlY3RvciA9
IG51bGxwdHI7CisgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3VzVmlzaWJsZVNlbGVjdG9yID0g
bnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogaG9zdFBzZXVkb0NsYXNzU2VsZWN0b3Ig
PSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBjdXN0b21Qc2V1ZG9FbGVtZW50U2Vs
ZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBzbG90dGVkUHNldWRvRWxl
bWVudFNlbGVjdG9yID0gbnVsbHB0cjsKQEAgLTE2Miw2ICsxNjMsOSBAQCB2b2lkIFJ1bGVTZXQ6
OmFkZFJ1bGUoY29uc3QgU3R5bGVSdWxlJiBydWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1
bnNpZ25lZCBzZQogICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1
czoKICAgICAgICAgICAgICAgICBmb2N1c1NlbGVjdG9yID0gc2VsZWN0b3I7CiAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0Zv
Y3VzVmlzaWJsZToKKyAgICAgICAgICAgICAgICBmb2N1c1Zpc2libGVTZWxlY3RvciA9IHNlbGVj
dG9yOworICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3NIb3N0OgogICAgICAgICAgICAgICAgIGhvc3RQc2V1ZG9DbGFzc1NlbGVj
dG9yID0gc2VsZWN0b3I7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNDksNiArMjUzLDEx
IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVk
IHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKKyAg
ICBpZiAoZm9jdXNWaXNpYmxlU2VsZWN0b3IpIHsKKyAgICAgICAgbV9mb2N1c1Zpc2libGVQc2V1
ZG9DbGFzc1J1bGVzLmFwcGVuZChydWxlRGF0YSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
ICAgICBpZiAodGFnU2VsZWN0b3IpIHsKICAgICAgICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9y
LT50YWdRTmFtZSgpLmxvY2FsTmFtZSgpLCBtX3RhZ0xvY2FsTmFtZVJ1bGVzLCBydWxlRGF0YSk7
CiAgICAgICAgIGFkZFRvUnVsZVNldCh0YWdTZWxlY3Rvci0+dGFnTG93ZXJjYXNlTG9jYWxOYW1l
KCksIG1fdGFnTG93ZXJjYXNlTG9jYWxOYW1lUnVsZXMsIHJ1bGVEYXRhKTsKQEAgLTM5Niw2ICs0
MDUsNyBAQCB2b2lkIFJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFzKEZ1bmN0aW9uJiYgZnVuY3Rp
b24pCiAgICAgdHJhdmVyc2VWZWN0b3IobV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzKTsKICAg
ICB0cmF2ZXJzZVZlY3RvcihtX3BhcnRQc2V1ZG9FbGVtZW50UnVsZXMpOwogICAgIHRyYXZlcnNl
VmVjdG9yKG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzKTsKKyAgICB0cmF2ZXJzZVZlY3RvcihtX2Zv
Y3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMpOwogICAgIHRyYXZlcnNlVmVjdG9yKG1fdW5pdmVy
c2FsUnVsZXMpOwogfQogCkBAIC00OTcsNiArNTA3LDcgQEAgdm9pZCBSdWxlU2V0OjpzaHJpbmtU
b0ZpdCgpCiAgICAgbV9ob3N0UHNldWRvQ2xhc3NSdWxlcy5zaHJpbmtUb0ZpdCgpOwogICAgIG1f
c2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcy5zaHJpbmtUb0ZpdCgpOwogICAgIG1fZm9jdXNQc2V1
ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CisgICAgbV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFz
c1J1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV91bml2ZXJzYWxSdWxlcy5zaHJpbmtUb0ZpdCgp
OwogICAgIG1fcGFnZVJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9mZWF0dXJlcy5zaHJpbmtU
b0ZpdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oIGIvU291
cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCmluZGV4IDk5YWExNjBkOTA2ODQ0ZmFkMzRkYzFh
MjcwMTZhMDAzNmJkZTMwNzkuLjNkNWI1YjMxNDcwMGM1MGY0NWRjMTVkODQ2Njc0NmMwZTlhMDY4
ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKQEAgLTEyOSw2ICsxMjksNyBAQCBwdWJsaWM6CiAg
ICAgY29uc3QgUnVsZURhdGFWZWN0b3ImIHNsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXMoKSBjb25z
dCB7IHJldHVybiBtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXM7IH0KICAgICBjb25zdCBSdWxl
RGF0YVZlY3RvciYgcGFydFBzZXVkb0VsZW1lbnRSdWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fcGFy
dFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1c1Bz
ZXVkb0NsYXNzUnVsZXMoKSBjb25zdCB7IHJldHVybiAmbV9mb2N1c1BzZXVkb0NsYXNzUnVsZXM7
IH0KKyAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxl
cygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7IH0KICAg
ICBjb25zdCBSdWxlRGF0YVZlY3RvciogdW5pdmVyc2FsUnVsZXMoKSBjb25zdCB7IHJldHVybiAm
bV91bml2ZXJzYWxSdWxlczsgfQogCiAgICAgY29uc3QgVmVjdG9yPFN0eWxlUnVsZVBhZ2UqPiYg
cGFnZVJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlUnVsZXM7IH0KQEAgLTE2Nyw2ICsxNjgs
NyBAQCBwcml2YXRlOgogICAgIFJ1bGVEYXRhVmVjdG9yIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRS
dWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX3BhcnRQc2V1ZG9FbGVtZW50UnVsZXM7CiAgICAg
UnVsZURhdGFWZWN0b3IgbV9mb2N1c1BzZXVkb0NsYXNzUnVsZXM7CisgICAgUnVsZURhdGFWZWN0
b3IgbV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzOwogICAgIFJ1bGVEYXRhVmVjdG9yIG1f
dW5pdmVyc2FsUnVsZXM7CiAgICAgVmVjdG9yPFN0eWxlUnVsZVBhZ2UqPiBtX3BhZ2VSdWxlczsK
ICAgICB1bnNpZ25lZCBtX3J1bGVDb3VudCB7IDAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAppbmRleCBjN2Y4MWIyYzQ3N2ZiNDg3NmQ3YTU2MGYx
NDc5ZWQ2OWI0Y2M3YTA1Li5kOTYxZjc5NmU2ZjU3OTM0YTIzOTZhZDY0ZjAyMzA4NTU0OTgyNTkz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdSZXNvbHZlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCkBA
IC0yMjcsNiArMjI3LDggQEAgYm9vbCBTaGFyaW5nUmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRo
RWxlbWVudChjb25zdCBDb250ZXh0JiBjb250ZXh0LCBjb25zdCBTdHkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50LmZvY3VzZWQoKSAhPSBlbGVtZW50LmZv
Y3VzZWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmIChjYW5kaWRhdGVFbGVtZW50
Lmhhc0ZvY3VzVmlzaWJsZSgpICE9IGVsZW1lbnQuaGFzRm9jdXNWaXNpYmxlKCkpCisgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICBpZiAoY2FuZGlkYXRlRWxlbWVudC5oYXNGb2N1c1dpdGhpbigp
ICE9IGVsZW1lbnQuaGFzRm9jdXNXaXRoaW4oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IGlmIChjYW5kaWRhdGVFbGVtZW50LmlzQmVpbmdEcmFnZ2VkKCkgIT0gZWxlbWVudC5pc0JlaW5n
RHJhZ2dlZCgpKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDA2ZTc0NzlhMmU2NTllM2E3ODMwNmQzMDRiZDIxOTNhMDIxZjY1
MmUuLjlhZDQzNTBmYTZjZDdiZTc2YWQ0ZTFlODkzZGJkNTFhY2FhYTljYmUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAyMS0wMi0xNyAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdh
bGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0b3JzXSA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRh
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIy
MDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgZm9j
dXMtdmlzaWJsZS0wMDUuaHRtbCBmYWlscyBpbiBNYWMgYW5kIGlPUyBwbGF0Zm9ybXMgYmVjYXVz
ZSBidXR0b25zIGRvbid0IGdldCBmb2N1c2VkIG9uIGNsaWNrCisgICAgICAgIChzZWUgYnVnICMy
MjI2MSkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnM6IFNraXAgZm9jdXMt
dmlzaWJsZS0wMTEuaHRtbCBhcyBpdCB0aW1lb3V0cyBpbiBpT1MuCisgICAgICAgICogcGxhdGZv
cm0vbWFjL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwNS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21h
Yy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMDktZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorCiAyMDIxLTAyLTE2ICBNYW51ZWwgUmVn
byBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtzZWxlY3RvcnNdIDpm
b2N1cy12aXNpYmxlIHBhcnNpbmcgYW5kIGV4cGVyaW1lbnRhbCBmbGFnCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwppbmRleCAxOTI5MGZmOTFiNDJlNWRhMWRiZjk2NWM0NzRjMWVjYmM0MmZh
NGRiLi43NWUwZmU1ZjIyMTgyODNhODljOTMzMWJiMmVjNzdkNjVjZGRhNDM4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAyMS0wMi0xNyAgTWFudWVs
IFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0b3Jz
XSA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyMDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGV4cGVjdGF0aW9ucywgbW9zdCBvZiB0aGUg
OmZvY3VzLXZpc2libGUgdGVzdHMgYXJlIHBhc3Npbmcgbm93LgorCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDAyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA3Lmh0bWw6IEltcG9ydCBsYXN0IGNoYW5nZXMgb24gdGhpcyB0ZXN0CisgICAgICAgIChzZWUg
aHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvcHVsbC8yNzY1NikuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTEuaHRtbDogSW1wb3J0IGxhc3QgY2hhbmdlcyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKHNlZSBo
dHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdC9wdWxsLzI3NzAwKS4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAx
My1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dDoKKwog
MjAyMS0wMi0xNiAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KIAog
ICAgICAgICBbc2VsZWN0b3JzXSA6Zm9jdXMtdmlzaWJsZSBwYXJzaW5nIGFuZCBleHBlcmltZW50
YWwgZmxhZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAppbmRleCBjMTNiZTAw
ZmQ5NWU3M2RiNDE3OGRjMjhlNGQ0MzkwM2E5OWQ0N2Y0Li5kMDYwNTQ4Y2ZhMmQxYWM3NzJmMGMx
NWI2MjU4YTJiMWQ3ODg2NDMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAx
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4
dApAQCAtMSw2ICsxLDYgQEAKIAogCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMnIHBzZXVkby1j
bGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKLUZBSUwgQ2hlY2tzIHRo
YXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBl
dmVudCBoYW5kbGVyIGFzc2VydF91bnJlYWNoZWQ6ICc6Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGlu
dmFsaWQgc2VsZWN0b3IuIFN5bnRheEVycm9yOiBFcnJvcjogYXNzZXJ0X2VxdWFsczogJzpmb2N1
cy12aXNpYmxlJyBtYXRjaGVzIGV2ZW50LnRhcmdldCBleHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxl
bWVudCBub2RlIDxpbnB1dCB0eXBlPSJ0ZXh0Ij48L2lucHV0PiBSZWFjaGVkIHVucmVhY2hhYmxl
IGNvZGUKK1BBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0
Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9j
dXMtd2l0aGluJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5k
bGVyCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDI3ZTFh
OWFmMmFiZThmNjdiODhlYmZjNzcwY2UzMzM0MjM3OTFlZGUuLjdmZTUwMzNjZThhNDhjNjY2ODE4
OTI5MmQ4YTM4Yjk3N2ViZjNjZDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50
LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVj
dGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAogCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMnIHBz
ZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgotRkFJTCBD
aGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAn
Zm9jdXNpbicgZXZlbnQgaGFuZGxlciBhc3NlcnRfdW5yZWFjaGVkOiAnOmZvY3VzLXZpc2libGUn
ICBpcyBhbiBpbnZhbGlkIHNlbGVjdG9yLiBTeW50YXhFcnJvcjogRXJyb3I6IGFzc2VydF9lcXVh
bHM6ICc6Zm9jdXMtdmlzaWJsZScgbWF0Y2hlcyBldmVudC50YXJnZXQgZXhwZWN0ZWQgbnVsbCBi
dXQgZ290IEVsZW1lbnQgbm9kZSA8aW5wdXQgdHlwZT0idGV4dCI+PC9pbnB1dD4gUmVhY2hlZCB1
bnJlYWNoYWJsZSBjb2RlCitQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRv
LWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCiBQQVNTIENoZWNr
cyB0aGF0ICc6Zm9jdXMtd2l0aGluJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3Vz
aW4nIGV2ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKaW5kZXggODUwYzdhYjE3
MDJiMzkzMjQ5MDM0ZDBiMzM2ZWM5NTZhM2MxOTQzMC4uZWM3N2NlZmMwMjU4MWU2NTUxNTc4MDNl
Njk4ZTQzOGQzYjY4OTMxZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CkBAIC01LDUgKzUsNSBA
QCBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1
bHQgaXMgRkFJTFVSRS4gSWYgdGhlIGVsZQogCiBGb2N1cyBtZS4KIAotRkFJTCBLZXlib2FyZCBm
b2N1cyBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBLZXlib2FyZCBmb2N1cyBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKaW5kZXggYjVhOWVmNDE0ZDJm
MzBkOGNmYjEyZThjYjA2ZGQ5YmQyMzk5YzlhMC4uOTM1ODdkZGRiNjJiNDVmYTRmMDU5YzZhZTll
NjVjYjc4OWVjNzVjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CkBAIC0xOCwxOCArMTgsMTgg
QEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVz
dWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogCiAKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVU
I2lucHV0MSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290
ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQyIHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDIgc2hvdWxkIGJl
IGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgot
RkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6
IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQzIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAi
cmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVu
dCBJTlBVVCNpbnB1dDQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9y
IElOUFVUI2lucHV0NCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBi
dXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ1IHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDUgc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NiB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9l
cXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ2IHNob3VsZCBiZSBncmVlbiBleHBl
Y3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMg
ZWxlbWVudCBJTlBVVCNpbnB1dDcgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJs
ZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29s
b3IgZm9yIElOUFVUI2lucHV0NyBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQ4IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMg
a2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1
dDggc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdi
KDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OSB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFz
c2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ5IHNob3VsZCBiZSBncmVl
biBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEwIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEwIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdi
KDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJ
TlBVVCNpbnB1dDExIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQg
c3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJ
TlBVVCNpbnB1dDExIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1
dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEyIHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEyIHNo
b3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAw
LCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEzIHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0
X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEzIHNob3VsZCBiZSBncmVlbiBl
eHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9j
dXMgZWxlbWVudCBURVhUQVJFQSNpbnB1dDE0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBURVhUQVJFQSNpbnB1dDE0IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAi
cmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgRm9jdXMgZWxlbWVu
dCBJTlBVVCNpbnB1dDEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0
MiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQzIHZpYSBtb3VzZSBz
aG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQK
K1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBl
bGVtZW50IElOUFVUI2lucHV0NSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQj
aW5wdXQ2IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9y
dHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDcgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OCB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ5IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZp
c2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJ
TlBVVCNpbnB1dDEwIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQg
c3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEx
IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5
Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEyIHZpYSBtb3VzZSBz
aG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQK
K1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMg
ZWxlbWVudCBURVhUQVJFQSNpbnB1dDE0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZp
c2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50
eHQKaW5kZXggNWFhY2Q0YjExZjM4YzYzYzFlNjk2OTU4ZjVkNjA2NGYxNDZjYmM0OC4uOTgxMTVi
MWUxMmQwMGQwNjQ1ZGIzOTk5NzhhZThlYjZjZjBiMjUyYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQu
dHh0CkBAIC01LDUgKzUsNSBAQCBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dyb3VuZCwg
dGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgdGhlIGVsZQogCiBGb2N1cyBtZQog
Ci1GQUlMIEZvY3VzIHNob3VsZCBhbHdheXMgbWF0Y2ggOmZvY3VzLXZpc2libGUgb24gY29udGVu
dCBlZGl0YWJsZSBkaXZzIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgU1BBTiNlbCBz
aG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwg
MCwgMCkiCitQQVNTIEZvY3VzIHNob3VsZCBhbHdheXMgbWF0Y2ggOmZvY3VzLXZpc2libGUgb24g
Y29udGVudCBlZGl0YWJsZSBkaXZzCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0CmluZGV4IDhiYjlj
ZjMwNzAwZjEzNTgyZWE3OGFiMjE3M2UzYTIyMmI5Y2RhY2QuLjlmMWVlMDk4OWRjMTc3YTcyNGFi
N2RjOWNjYzdhMmUwODcyZDZmYzQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dApAQCAtMiw5ICsy
LDkgQEAgVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHVzaW5nIHRoZSBrZXlib2FyZCBpbiBhIHdheSB0
aGF0IGRvZXMgbm90IG1vdmUgZm9jdXMgc3RpbGwKIElmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90
IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12aXNpYmxlIHBzZXVkby1jbGFzcyB0aGVuIFNL
SVAgdGhpcyB0ZXN0LgogVXNlIHRoZSBtb3VzZSB0byBmb2N1cyB0aGUgZWxlbWVudCBiZWxvdyB0
aGF0IHNheXMgIkNsaWNrIG1lLiIKIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBvdXRsaW5lLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLgotUHJlc3MgdGhlIFNISUZUIGtleS4KK1By
ZXNzIHRoZSBFTlRFUiBrZXkuCiBJZiB0aGUgZWxlbWVudCBub3cgaGFzIGEgZ3JlZW4gb3V0bGlu
ZSBhbmQgbm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNT
LgogQ2xpY2sgbWUuCiAKLUZBSUwgVXNpbmcga2V5Ym9hcmQgd2hpbGUgZWxlbWVudCBpcyBmb2N1
c2VkIHNob3VsZCB0cmlnZ2VyIDpmb2N1cy12aXNpYmxlOyB1c2luZyBtb3VzZSB3aXRob3V0IG1v
dmluZyBmb2N1cyBzaG91bGQgbm90IGNhbmNlbCBpdDsgbW92aW5nIGZvY3VzIHVzaW5nIG1vdXNl
IHNob3VsZCBjYW5jZWwgaXQuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAw
KSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBVc2luZyBrZXlib2FyZCB3aGlsZSBlbGVt
ZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRyaWdnZXIgOmZvY3VzLXZpc2libGU7IHVzaW5nIG1vdXNl
IHdpdGhvdXQgbW92aW5nIGZvY3VzIHNob3VsZCBub3QgY2FuY2VsIGl0OyBtb3ZpbmcgZm9jdXMg
dXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNlbCBpdC4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA3Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbAppbmRleCAwZmMxOTZjYmVjZGYx
YjE5OGE1YmFkY2UzNjk0YjFlYzdjYzk1ZDRmLi4xNDlhNmY2OGZlOGMzMDBmNWRkMTcyYjk3ZDJm
Mjk3NGY1ZTMxMjEwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDcuaHRtbApAQCAtMzYsNyArMzYsNyBAQAogICAgIDxsaT5JZiB0aGUg
dXNlci1hZ2VudCBkb2VzIG5vdCBjbGFpbSB0byBzdXBwb3J0IHRoZSA8Y29kZT46Zm9jdXMtdmlz
aWJsZTwvY29kZT4gcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3QuPC9saT4KICAgICA8
bGk+VXNlIHRoZSBtb3VzZSB0byBmb2N1cyB0aGUgZWxlbWVudCBiZWxvdyB0aGF0IHNheXMgIkNs
aWNrIG1lLiI8L2xpPgogICAgIDxsaT5JZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgb3V0bGluZSwg
dGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS48L2xpPgotICAgIDxsaT5QcmVzcyB0aGUg
U0hJRlQga2V5LjwvbGk+CisgICAgPGxpPlByZXNzIHRoZSBFTlRFUiBrZXkuPC9saT4KICAgICA8
bGk+SWYgdGhlIGVsZW1lbnQgbm93IGhhcyBhIGdyZWVuIG91dGxpbmUgYW5kIG5vdCByZWQgYmFj
a2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy48L2xpPgogICA8L29sPgog
CkBAIC02NSw3ICs2NSw4IEBACiAgICAgICAgIG9uZS5hZGRFdmVudExpc3RlbmVyKCJrZXl1cCIs
IHQuc3RlcF9mdW5jKHRlc3RfbW9kYWxpdHlfY2hhbmdlKSk7CiAgICAgICAgIG9uZS5yZW1vdmVF
dmVudExpc3RlbmVyKCJmb2N1cyIsIGhhbmRsZV9pbml0aWFsX2ZvY3VzKTsKIAotICAgICAgICB0
ZXN0X2RyaXZlci5zZW5kX2tleXMob25lLCAiXHVFMDUwIik7CisgICAgICAgIGNvbnN0IGVudGVy
ID0gIlx1RTAwNyI7CisgICAgICAgIHRlc3RfZHJpdmVyLnNlbmRfa2V5cyhvbmUsIGVudGVyKTsK
ICAgICAgIH0pOwogCiAgICAgICBjb25zdCB0ZXN0X21vZGFsaXR5X2NoYW5nZSA9IHQuc3RlcF9m
dW5jKCgpID0+IHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0CmluZGV4IDMwMzFkYzdjYjgyMjY2OTAz
NWJhOTllN2RmZDZiMjRjNDJmNDE1MTUuLmFlZjM5YTdlOWNhNTQ5MjE0MjJmM2ZlMzVmMmVhYWRj
OTlkNTc0NmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSw5IEBACiBUaGlz
IHRlc3QgY2hlY2tzIHRoYXQgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBhIGtleWJvYXJk
IGV2ZW50LCBldmVuIGlmIHRoZSBldmVudCBoYW5kbGVyIGNhbGxzIHByZXZlbnREZWZhdWx0KCkg
b24gdGhlIGV2ZW50LgogQ2xpY2sgIkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LiIu
CiBQcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LgotSWYgIkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMg
YSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgaXQg
aGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy4KK0lm
IHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3Vs
dCBpcyBTVUNDRVNTLgogCi1DbGljayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4gIEZvY3Vz
IG1vdmVzIGhlcmUuCitDbGljayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4KIAotSGFybmVz
cyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgOmZvY3VzLXZpc2li
bGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkIFRlc3QgdGltZWQg
b3V0CitQQVNTIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVsdCgp
IGlzIGNhbGxlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAxMS5odG1sCmluZGV4IGIwZGFmMzRiYThkZDk2ZjM0M2U2ODdjZWY4NTI1MjNj
OTJhZTJjMzkuLmNmMTg2ZDI4YjgzMmUwN2E2ZTAxN2VjNTczMjY0ZGJlMmQxMzIxZWMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5o
dG1sCkBAIC0yMSwxMSArMjEsMTEgQEAKICAgICAgIGJvcmRlcjogMDsKICAgICB9CiAKLSAgICAj
bmV4dDpmb2N1cy12aXNpYmxlIHsKKyAgICA6Zm9jdXMtdmlzaWJsZSB7CiAgICAgICBvdXRsaW5l
OiBncmVlbiBzb2xpZCA1cHg7CiAgICAgfQogCi0gICAgI25leHQ6Zm9jdXM6bm90KDpmb2N1cy12
aXNpYmxlKSB7CisgICAgOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkgewogICAgICAgYmFja2dy
b3VuZC1jb2xvcjogcmVkOwogICAgICAgb3V0bGluZTogMDsKICAgICB9CkBAIC0zNywzMCArMzcs
MzMgQEAKICAgPHVsIGlkPSJpbnN0cnVjdGlvbnMiPgogICAgIDxsaT5DbGljayAiQ2xpY2sgaGVy
ZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuIi48L2xpPgogICAgIDxsaT5QcmVzcyB0aGUgcmlnaHQg
YXJyb3cga2V5LjwvbGk+Ci0gICAgPGxpPklmICJGb2N1cyBtb3ZlcyBoZXJlLiIgaGFzIGEgcmVk
IGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCisgICAgPGxpPklm
IHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLgogICAgICAgICBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0
ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwvdWw+CiAgIDxiciAvPgotICA8YnV0dG9u
IGlkPSJzdGFydCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93
LjwvYnV0dG9uPgotICA8YnV0dG9uIGlkPSJuZXh0IiB0YWJpbmRleD0iLTEiPkZvY3VzIG1vdmVz
IGhlcmUuPC9idXR0b24+CisgIDxkaXYgaWQ9InRhcmdldCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhl
cmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LjwvZGl2PgogICA8c2NyaXB0PgotICAgIHN0YXJ0LmFk
ZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4geworICAgIHRhcmdldC5hZGRFdmVudExp
c3RlbmVyKCJrZXlkb3duIiwgKGUpID0+IHsKKyAgICAgIGUucHJldmVudERlZmF1bHQoKTsKKyAg
ICB9KTsKKyAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLCAoZSkgPT4geworICAg
ICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0pOworICAgIHRhcmdldC5hZGRFdmVudExpc3Rl
bmVyKCJrZXlwcmVzcyIsIChlKSA9PiB7CiAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7Ci0gICAg
ICBuZXh0LmZvY3VzKCk7CiAgICAgfSk7Ci0KICAgICBhc3luY190ZXN0KGZ1bmN0aW9uKHQpIHsK
LSAgICAgIG5leHQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCB0LnN0ZXBfZnVuYygoKSA9PiB7
Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZShuZXh0KS5vdXRsaW5lQ29s
b3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9yICR7bmV4dC50YWdOYW1lfSMk
e25leHQuaWR9IHNob3VsZCBiZSBncmVlbmApOwotICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhn
ZXRDb21wdXRlZFN0eWxlKG5leHQpLmJhY2tncm91bmRDb2xvciwgInJnYigyNTUsIDAsIDApIiwg
YGJhY2tncm91bmRDb2xvciBmb3IgJHtuZXh0LnRhZ05hbWV9IyR7bmV4dC5pZH0gc2hvdWxkIE5P
VCBiZSByZWRgKTsKLSAgICAgICAgdC5kb25lKCkKLSAgICAgIH0pKTsKKyAgICAgIHRhcmdldC5h
ZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsICgpID0+IHsKKyAgICAgICAgY29uc3QgYXJyb3dfcmln
aHQgPSAiXHVlMDE0IjsKKyAgICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHRhcmdldCwgYXJy
b3dfcmlnaHQpOworICAgICAgfSk7CiAKLSAgICAgIC8vIFx1ZTAxNCAtPiBBUlJPV19SSUdIVAot
ICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHN0YXJ0LCAiXHVlMDE0IikuY2F0Y2godC5zdGVw
X2Z1bmMoKCkgPT4gewotICAgICAgICBhc3NlcnRfdHJ1ZShmYWxzZSwgInNlbmRfa2V5cyBub3Qg
aW1wbGVtZW50ZWQgeWV0Iik7Ci0gICAgICAgIHQuZG9uZSgpOworICAgICAgdGFyZ2V0LmFkZEV2
ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmNfZG9uZSgoZSkgPT4geworICAgICAgICBh
c3NlcnRfZXF1YWxzKGdldENvbXB1dGVkU3R5bGUodGFyZ2V0KS5vdXRsaW5lQ29sb3IsICJyZ2Io
MCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9yICR7dGFyZ2V0LnRhZ05hbWV9IyR7dGFyZ2V0
LmlkfSBzaG91bGQgYmUgZ3JlZW5gKTsKKyAgICAgICAgYXNzZXJ0X25vdF9lcXVhbHMoZ2V0Q29t
cHV0ZWRTdHlsZSh0YXJnZXQpLmJhY2tncm91bmRDb2xvciwgInJnYigyNTUsIDAsIDApIiwgYGJh
Y2tncm91bmRDb2xvciBmb3IgJHt0YXJnZXQudGFnTmFtZX0jJHt0YXJnZXQuaWR9IHNob3VsZCBO
T1QgYmUgcmVkYCk7CiAgICAgICB9KSk7CisKKyAgICAgIHRlc3RfZHJpdmVyLmNsaWNrKHRhcmdl
dCk7CiAgICAgfSwgIjpmb2N1cy12aXNpYmxlIG1hdGNoZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVs
dCgpIGlzIGNhbGxlZCIpOwogICA8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQu
dHh0CmluZGV4IDZiMmEyNGUxYzNmZjkzNzkzN2RhYTI2OTc2ZmIzNWMyZjg0MWZlYzYuLjQ5YWQ4
Y2U5YzNjM2MxYzQxMmEwYjlkNjM2YjRhZmQ2NjljNTM4YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVk
LnR4dApAQCAtOCw3ICs4LDUgQEAgSWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJUYXJnZXQiIGhh
cyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIGEKIEluaXRpYWwKIFRh
cmdldAogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotRkFJTCA6
Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHBy
ZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUgYXNzZXJ0
X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBESVYjaW5pdGlhbCBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZv
Y3VzLXZpc2libGUgZG9lcyBub3QgbWF0Y2ggYWZ0ZXIgbW91c2UgY2xpY2sgZXZlbiBpZiBwcmV2
aW91cyBmb2N1c2VkIGVsZW1lbnQgd2FzIG1hdGNoaW5nIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTQtZXhwZWN0ZWQudHh0CmluZGV4IDZhZGU1NTMyMzFkODdlYTBlNGUxZDNjODBhYTM2YmIzMjFm
NzA3MDIuLmRkMmYyOWE4ODk2YjQyOWNmMzhmOWNmMTJkNDhiNWMxNGI1MDllMTYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDE0LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAogVGFyZ2V0CiAKLUZBSUwgOmZvY3Vz
LXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBi
YWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVUI2lucHV0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJy
Z2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCitGQUlMIDpmb2N1cy12aXNp
YmxlIG1hdGNoZXMgYWZ0ZXIgc2NyaXB0IGZvY3VzIG1vdmUgYXNzZXJ0X2VxdWFsczogYmFja2dy
b3VuZENvbG9yIGZvciBESVYjdGFyZ2V0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwg
MjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxNi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0
CmluZGV4IDNkODE3M2U4YjhhOTc4NWEzMjFlMjUxMTg4NjNlMGJjYWU3ZTYwNzEuLjQxMmFjMzQ0
OWQ5N2NjMzA5OTZiOTFlZTUxN2ViMDEyODVjODdkMGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAxNi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4
dApAQCAtMSw1ICsxLDUgQEAKIEluaXRpYWwKIAogCi1GQUlMIDpmb2N1cy12aXNpYmxlIGFsd2F5
cyBtYXRjaCBvbiB0ZXh0IGlucHV0cyBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9y
IElOUFVUI3RhcmdldCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1
dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJsZSBhbHdheXMgbWF0Y2gg
b24gdGV4dCBpbnB1dHMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9u
cwppbmRleCBjMGMzMDVjOTMzYzNlYTNkOGJhOWU5YjkwNzNmMDc2ZjU3MGMxNDUxLi5kZDc1Mzk4
YWZjYTZjNmZkM2ExMTZmODIyMzNjNzIwOWI2ZjVjOGVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzM5NCw2ICszMzk0LDcgQEAgd2Via2l0Lm9yZy9i
LzIwNzg1OCBmYXN0L2NhbnZhcy93ZWJnbC9zaW11bGF0ZWQtdmVydGV4QXR0cmliMC1pbnZhbGlk
LWluZGljaWVzLmgKIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLmh0bWwgWyBTa2lwIF0KIHdl
YmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3
MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA5Lmh0bWwgWyBTa2lwIF0KK3dlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwg
WyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEyLmh0bWwgWyBTa2lwIF0KIHdlYmtp
dC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDEzLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQg
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2hvdmVyLTAwMi5o
dG1sIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1ZmM0YjY2NzQ1YzY3ZWQzYzA4M2IzNTQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgcHJvZ3JhbW1h
dGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVyIGEgY2xpY2sgZG9lcyBub3QgY2F1c2Ug
OmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dlci4KK0lmIHRoZSB1c2VyLWFnZW50IGRv
ZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12aXNpYmxlIHBzZXVkby1jbGFzcyB0
aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1dHRvbiBiZWxvdyB0aGF0IHNheXMgIkNs
aWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQgcHJv
Z3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVlbiBiYWNrZ3JvdW5kLCB0aGVuIHRo
ZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGljayBtZS4KK0kgd2lsbCBiZSBmb2N1c2Vk
IHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3JhbW1hdGljIGZvY3VzIGFmdGVyIGNsaWNr
IHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogYmFja2dyb3Vu
ZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDAp
IiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMDUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1ZmM0YjY2
NzQ1YzY3ZWQzYzA4M2IzNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRlc3QgY2hl
Y2tzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVyIGEgY2xp
Y2sgZG9lcyBub3QgY2F1c2UgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dlci4KK0lm
IHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12aXNp
YmxlIHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1dHRvbiBi
ZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3
aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVlbiBi
YWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGljayBtZS4K
K0kgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3JhbW1hdGlj
IGZvY3VzIGFmdGVyIGNsaWNrIHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0
X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUgZXhwZWN0
ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDIyMDgyOTY2NDIyMjM4MTNkYzgwZWUwMmI2ODA5NjRhZWUyMjJkLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAgLTEsNyAr
MCwwIEBACi1UaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW55IGVsZW1lbnQgZm9jdXNlZCB2aWEgYW4g
YXV0b2ZvY3VzIGF0dHJpYnV0ZSB3aWxsIGhhdmUgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgZW5h
YmxlZC4KLUlmIHRoZSBidXR0b24gdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0
aWNhbGx5IiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJ
TFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMg
U1VDQ0VTUy4KLQotSSB3aWxsIGJlIGZvY3VzZWQgYXV0b21hdGljYWxseS4KLQotRkFJTCBBdXRv
Zm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVD
b2xvciBmb3IgQlVUVE9OI2J1dHRvbiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAx
MjgsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDAuODQ3KSIKLQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421648</attachid>
            <date>2021-02-26 08:08:09 -0800</date>
            <delta_ts>2021-02-26 10:44:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210226170806.patch</filename>
            <type>text/plain</type>
            <size>40421</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNTU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmFlODk3NWNkMWE2M2Rm
NjI0YWVkOTQwMzc3YmE1ODZmN2NjMzk2Zi4uYTlmNjcwMjk4MTNkYjEwMTEyOGU5NGVhNjdhMmM3
NTk2NmYzNGI1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbyksCisgICAgICAgIGV4Y2VwdCB0aGUgb25lcyByZWxh
dGVkIHRvIHNjcmlwdCBmb2N1cy4KKworICAgICAgICBUZXN0OiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0qCisKKyAgICAgICAgKiBj
c3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oOgorICAgICAgICAoV2ViQ29yZTo6bWF0
Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKTogQ2hlY2sgZWxlbWVudC5oYXNGb2N1c1Zpc2li
bGUoKS4KKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50OjpzZXRGb2N1cyk6IFdoZW4gYW4gZWxlbWVudCBsb3NlcyBmb2N1cyBpdCBhbHdheXMgY2Fs
bCBzZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpLiBXaGVuIGFuIGVsZW1lbnQgZ2V0cyBmb2N1c2Vk
CisgICAgICAgIGl0IGNhbGxzIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgZWxlbWVudHMg
dGhhdCBzdXBwb3J0IGtleWJvYXJkIGlucHV0IChhcyB0aGV5IGFsd2F5cyBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSkuCisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUp
OiBOZXcgbWV0aG9kIGdhdGVkIGJlaGluZCB0aGUgZXhwZXJpbWVudGFsIGZsYWcuCisgICAgICAg
ICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlz
aWJsZSBjb25zdCk6IEFkZCBuZXcgbWV0aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAg
ICAgIChXZWJDb3JlOjpOb2RlOjpmbGFnSGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZv
ciA6Zm9jdXMtdmlzaWJsZSBtYXRjaGluZy4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmludGVybmFsS2V5RXZlbnQpOiBJ
ZiB0aGUgdXNlciBpbnRlcmFjdHMgd2l0aCB0aGUgcGFnZSB2aWEga2V5Ym9hcmQsIGNhbGwgc2V0
SGFzRm9jdXNWaXNpYmxlKHRydWUpLgorICAgICAgICBBdm9pZCB0aGF0IGZvciBtb2RpZmllciBr
ZXlzLgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTogQ2FsbCBz
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGtleWJvYXJkIGZvY3VzLgorICAgICAgICAqIHBh
Z2UvRnJhbWVWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2Nyb2xsVG9G
cmFnbWVudEludGVybmFsKTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGFuY2hv
ciBmb2N1cy4KKyAgICAgICAgKiBzdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6RWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGlu
Z1J1bGVzKTogQWRkIDpmb2N1cy12aXNpYmxlIHJ1bGVzIHN0dWZmIGxpa2Ugd2UgYWxyZWFkeSBo
YXZlIGZvciA6Zm9jdXMuCisgICAgICAgICogc3R5bGUvUnVsZVNldC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6YWRkUnVsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OlJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFzKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6c2hyaW5rVG9GaXQpOiBEaXR0by4KKyAgICAgICAgKiBz
dHlsZS9SdWxlU2V0Lmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6Zm9jdXNW
aXNpYmxlUHNldWRvQ2xhc3NSdWxlcyBjb25zdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1N0
eWxlU2hhcmluZ1Jlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFyaW5n
UmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBmb3Ig
aGFzRm9jdXNWaXNpYmxlKCkuCisKIDIwMjEtMDItMjYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFw
cGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBhZGRyZXNzIHBvc3QtbGFuZGluZyByZXZp
ZXcgZmVlZGJhY2sgZm9yIHIyNzM1NDIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVj
dG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaAppbmRleCA2Zjc3ZjllNjRiY2JiZDNiMjZlODJhZTk1
MTUxZjBkOGNlMGZiYWVkLi44MDAxM2YwNWYxZWRlMWJiYzA2NjkwODYyZDgyZGY5M2U0ZmNjOTdm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0
aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rp
b25zLmgKQEAgLTQ3NCw3ICs0NzQsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNGb2N1
c1BzZXVkb0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpCiAKIEFMV0FZU19JTkxJTkUgYm9v
bCBtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkK
IHsKLSAgICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRl
KGVsZW1lbnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAgaWYg
KEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBDU1NT
ZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpKQorICAgICAgICByZXR1cm4gdHJ1ZTsK
KworICAgIHJldHVybiBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICYmIGlzRnJhbWVGb2N1c2Vk
KGVsZW1lbnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKaW5kZXggODcxMTZjMGJiYjcxMGMxM2MzYWQzMDBlYmVjNmEzNTAyZDU2N2Q4ZS4uOGJkZGFk
NzlhNjM0MDMxNTUxMjQ1MWVhYjJhNTYzNzMwN2RiZDM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cApAQCAtNzQ0LDYgKzc0NCwyNSBAQCB2b2lkIEVsZW1lbnQ6OnNldEZvY3VzKGJvb2wgZmxhZykK
IAogICAgIGZvciAoYXV0byogZWxlbWVudCA9IHRoaXM7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVt
ZW50LT5wYXJlbnRFbGVtZW50SW5Db21wb3NlZFRyZWUoKSkKICAgICAgICAgZWxlbWVudC0+c2V0
SGFzRm9jdXNXaXRoaW4oZmxhZyk7CisKKyAgICBpZiAoZmxhZykgeworICAgICAgICAvLyBFbGVt
ZW50cyB0aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5wdXQgKGZvcm0gaW5wdXRzIGFuZCBjb250ZW50
ZWRpdGFibGUpIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSB3aGVuIGZvY3VzZWQuCisgICAg
ICAgIGlmIChpc1RleHRGaWVsZCgpIHx8IGlzQ29udGVudEVkaXRhYmxlKCkpCisgICAgICAgICAg
ICBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfSBlbHNlCisgICAgICAgIHNldEhhc0Zv
Y3VzVmlzaWJsZShmYWxzZSk7Cit9CisKK3ZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNWaXNpYmxl
KGJvb2wgZmxhZykKK3sKKyAgICBpZiAoIWRvY3VtZW50KCkuc2V0dGluZ3MoKS5mb2N1c1Zpc2li
bGVFbmFibGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChoYXNGb2N1c1Zpc2libGUo
KSA9PSBmbGFnKQorICAgICAgICByZXR1cm47CisKKyAgICBTdHlsZTo6UHNldWRvQ2xhc3NDaGFu
Z2VJbnZhbGlkYXRpb24gc3R5bGVJbnZhbGlkYXRpb24oKnRoaXMsIENTU1NlbGVjdG9yOjpQc2V1
ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAgc2V0Tm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3Vz
VmlzaWJsZSwgZmxhZyk7CiB9CiAKIHZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNXaXRoaW4oYm9v
bCBmbGFnKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOTZiZDc2MDNmZWQ3NDFlOTI3MWQ5YmI1YTJl
YTYxOGM0MDc5ODQzYy4uOTQ5Y2JiYzNmOTY1MTc1NzZlZTIzMjZkOTlkYTJmMzg5ODc0ZDcxNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oCkBAIC0zMTksMTIgKzMxOSwxNCBAQCBwdWJsaWM6CiAgICAgYm9v
bCBob3ZlcmVkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNl
ckFjdGlvbkVsZW1lbnRIb3ZlcmVkKCk7IH0KICAgICBib29sIGZvY3VzZWQoKSBjb25zdCB7IHJl
dHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudEZvY3VzZWQo
KTsgfQogICAgIGJvb2wgaXNCZWluZ0RyYWdnZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rp
b25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudERyYWdnZWQoKTsgfQorICAgIGJvb2wg
aGFzRm9jdXNWaXNpYmxlKCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6Okhh
c0ZvY3VzVmlzaWJsZSk7IH07CiAgICAgYm9vbCBoYXNGb2N1c1dpdGhpbigpIGNvbnN0IHsgcmV0
dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhpbik7IH07CiAKICAgICB2aXJ0
dWFsIHZvaWQgc2V0QWN0aXZlKGJvb2wgPSB0cnVlLCBib29sIHBhdXNlID0gZmFsc2UsIFN0eWxl
OjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZTo6QWxsKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSwgU3R5bGU6OkludmFsaWRhdGlv
blNjb3BlID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRGb2N1cyhib29sKTsKICAgICB2b2lkIHNldEJlaW5nRHJhZ2dlZChib29sKTsKKyAgICB2
b2lkIHNldEhhc0ZvY3VzVmlzaWJsZShib29sKTsKICAgICB2b2lkIHNldEhhc0ZvY3VzV2l0aGlu
KGJvb2wpOwogCiAgICAgT3B0aW9uYWw8aW50PiB0YWJJbmRleFNldEV4cGxpY2l0bHkoKSBjb25z
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5oCmluZGV4IDA0MzYzNWY5Zjc2YTAxMDM5OTU3MDFkMmQwMzk3YjUyNmIxMGQ5
MTQuLjI4OGFlZjg3OTg1NDc4NTdkZDJiNjYyN2Y1MjMyZjE0YjFiOGJmZDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUu
aApAQCAtNTE3LDYgKzUxNyw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNT
aGFkb3dSb290KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzU2hh
ZG93Um9vdCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNIVE1MKCkgeyByZXR1cm4gc3Rh
dGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzSFRNTEVsZW1lbnQpOyB9CiAgICAgc3RhdGlj
IGludDMyX3QgZmxhZ0lzTGluaygpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVG
bGFnOjpJc0xpbmspOyB9CisgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzVmlzaWJsZSgp
IHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUp
OyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzV2l0aGluKCkgeyByZXR1cm4gc3Rh
dGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzV2l0aGluKTsgfQogICAgIHN0YXRp
YyBpbnQzMl90IGZsYWdJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKCkgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWQpOyB9CiAj
ZW5kaWYgLy8gRU5BQkxFKEpJVCkKQEAgLTU2MSw3ICs1NjIsOSBAQCBwcm90ZWN0ZWQ6CiAKICAg
ICAgICAgSW5jbHVzaXZlQW5jZXN0b3JTdGF0ZUZvckZvcm0gPSAxIDw8IDI4LAogICAgICAgICBJ
bmNsdXNpdmVBbmNlc3RvclN0YXRlRm9yQ2FudmFzID0gMSA8PCAyOSwKLSAgICAgICAgLy8gQml0
cyAzMC0zMSBhcmUgZnJlZS4KKworICAgICAgICBIYXNGb2N1c1Zpc2libGUgPSAxIDw8IDMwLAor
ICAgICAgICAvLyBCaXQgMzEgaXMgZnJlZS4KICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUYWJJ
bmRleFN0YXRlIDogdWludDhfdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5k
ZXggYWVlZDVjMmIzODA3OTZlMTU2MTc0MDQ5NDZlYmZkYTFjNWI0NjYyOS4uYjU0ZjA1Zjk5MWU1
MjczYzUzMTc0NTA2YzE5MmRiNzRiZWZjYmNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5k
bGVyLmNwcApAQCAtMzUzMiw2ICszNTMyLDExIEBAIGJvb2wgRXZlbnRIYW5kbGVyOjppbnRlcm5h
bEtleUV2ZW50KGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYgaW5pdGlhbEtleUV2ZW50CiAg
ICAgICAgIGtleWRvd24tPnByZXZlbnREZWZhdWx0KCk7CiAgICAga2V5ZG93bi0+c2V0VGFyZ2V0
KGVsZW1lbnQpOwogCisgICAgLy8gSWYgdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2Ug
dmlhIHRoZSBrZXlib2FyZCwgdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlLgorICAgIC8vIEp1c3QgdHlwaW5nIGEgbW9kaWZpZXIga2V5IGlz
IG5vdCBjb25zaWRlcmVkIHVzZXIgaW50ZXJhY3Rpb24gd2l0aCB0aGUgcGFnZS4KKyAgICBpZiAo
IWtleWRvd24tPmN0cmxLZXkoKSAmJiAha2V5ZG93bi0+bWV0YUtleSgpICYmICFrZXlkb3duLT5h
bHRHcmFwaEtleSgpICYmICFrZXlkb3duLT5zaGlmdEtleSgpKQorICAgICAgICBlbGVtZW50LT5z
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisKICAgICBpZiAoaW5pdGlhbEtleUV2ZW50LnR5cGUo
KSA9PSBQbGF0Zm9ybUV2ZW50OjpSYXdLZXlEb3duKSB7CiAgICAgICAgIGVsZW1lbnQtPmRpc3Bh
dGNoRXZlbnQoa2V5ZG93bik7CiAgICAgICAgIC8vIElmIGZyYW1lIGNoYW5nZWQgYXMgYSByZXN1
bHQgb2Yga2V5ZG93biBkaXNwYXRjaCwgdGhlbiByZXR1cm4gdHJ1ZSB0byBhdm9pZCBzZW5kaW5n
IGEgc3Vic2VxdWVudCBrZXlwcmVzcyBtZXNzYWdlIHRvIHRoZSBuZXcgZnJhbWUuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggMDdhYmFkMDYwZTAxM2ViOGI3YWM1
NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3OTA5NTk3ZWMyN2FlNWFhNzE5YTY5NWMzMDQyNTEw
MjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcApAQCAtNTMzLDYg
KzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3Jk
ZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgICAgIH0KICAgICB9CiAKKyAg
ICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgZWxlbWVudC0+Zm9jdXMo
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAgICAgcmV0
dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggNjlhY2ZiMGQxYjZi
ZmQ0OGJiYTljOTYxZGE0NDUzNjUzYzQ0NTNiZS4uNjgzZTM2ZWY1NWYyYTkzNWQ5MGFiNTUwZGM1
OTYxYTIwZjkwOGMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMjI2OCw5ICsy
MjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwoY29uc3Qg
U3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIpCiAgICAgCiAgICAgLy8gSWYgdGhlIGFuY2hvciBh
Y2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3ZlIGZvY3VzIHRoZXJlIHRvIGFpZCB1c2VycyByZWx5
aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24uCiAgICAgaWYgKGFuY2hvckVsZW1lbnQpIHsKLSAg
ICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlzRm9jdXNhYmxlKCkpCisgICAgICAgIGlmIChhbmNo
b3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7CisgICAgICAgICAgICBhbmNob3JFbGVtZW50LT5z
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2Vk
RWxlbWVudChhbmNob3JFbGVtZW50LmdldCgpKTsKLSAgICAgICAgZWxzZSB7CisgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxlbWVudChudWxscHRyKTsK
ICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZShhbmNo
b3JFbGVtZW50LmdldCgpKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxl
bWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4IGUxODBjY2RmYTlmNjhmYWFjMDkxMGMyMzNjMjE4
ZDdlZmQ2YTA0YTQuLmNjNDhjNGE2NjhkNzA5M2YzMjNiNDAwZjRlODBjMTBjMDY0YjhlOTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKQEAgLTE1
Nyw2ICsxNTcsOCBAQCB2b2lkIEVsZW1lbnRSdWxlQ29sbGVjdG9yOjpjb2xsZWN0TWF0Y2hpbmdS
dWxlcyhjb25zdCBNYXRjaFJlcXVlc3QmIG1hdGNoUmVxdWVzdAogICAgICAgICBjb2xsZWN0TWF0
Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmxpbmtQc2V1ZG9DbGFzc1J1
bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAgaWYgKG1hdGNoZXNGb2N1c1BzZXVkb0NsYXNzKGVs
ZW1lbnQoKSkpCiAgICAgICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVzRm9yTGlzdChtYXRjaFJlcXVl
c3QucnVsZVNldC0+Zm9jdXNQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CisgICAg
aWYgKG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhlbGVtZW50KCkpKQorICAgICAgICBj
b2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzVmlz
aWJsZVBzZXVkb0NsYXNzUnVsZXMoKSwgbWF0Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnRhZ1J1bGVzKGVsZW1lbnQoKS5s
b2NhbE5hbWUoKSwgZWxlbWVudCgpLmlzSFRNTEVsZW1lbnQoKSAmJiBlbGVtZW50KCkuZG9jdW1l
bnQoKS5pc0hUTUxEb2N1bWVudCgpKSwgbWF0Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnVuaXZlcnNhbFJ1bGVzKCksIG1h
dGNoUmVxdWVzdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCmluZGV4IDNhNWI1NjEwYmE3
NmMzOTY3NDBmNjEwMDFjZWI4ZDJmMGEzZDk4YzkuLmU0YTlmMDY1NjZjMzIxNDEzOTY3ZTNjMWY2
ZDEwYTZiOTgwZTM1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCkBAIC05OCw2ICs5OCw3
IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVk
IHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGNsYXNz
U2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBsaW5rU2VsZWN0b3Ig
PSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBmb2N1c1NlbGVjdG9yID0gbnVsbHB0
cjsKKyAgICBjb25zdCBDU1NTZWxlY3RvciogZm9jdXNWaXNpYmxlU2VsZWN0b3IgPSBudWxscHRy
OwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBob3N0UHNldWRvQ2xhc3NTZWxlY3RvciA9IG51bGxw
dHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGN1c3RvbVBzZXVkb0VsZW1lbnRTZWxlY3RvciA9
IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIHNsb3R0ZWRQc2V1ZG9FbGVtZW50U2Vs
ZWN0b3IgPSBudWxscHRyOwpAQCAtMTYyLDYgKzE2Myw5IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVs
ZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVk
IHNlCiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzOgogICAg
ICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNp
YmxlOgorICAgICAgICAgICAgICAgIGZvY3VzVmlzaWJsZVNlbGVjdG9yID0gc2VsZWN0b3I7Cisg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1
ZG9DbGFzc0hvc3Q6CiAgICAgICAgICAgICAgICAgaG9zdFBzZXVkb0NsYXNzU2VsZWN0b3IgPSBz
ZWxlY3RvcjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0OSw2ICsyNTMsMTEgQEAgdm9p
ZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0
b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGlmIChm
b2N1c1Zpc2libGVTZWxlY3RvcikgeworICAgICAgICBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNz
UnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIGlm
ICh0YWdTZWxlY3RvcikgewogICAgICAgICBhZGRUb1J1bGVTZXQodGFnU2VsZWN0b3ItPnRhZ1FO
YW1lKCkubG9jYWxOYW1lKCksIG1fdGFnTG9jYWxOYW1lUnVsZXMsIHJ1bGVEYXRhKTsKICAgICAg
ICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9yLT50YWdMb3dlcmNhc2VMb2NhbE5hbWUoKSwgbV90
YWdMb3dlcmNhc2VMb2NhbE5hbWVSdWxlcywgcnVsZURhdGEpOwpAQCAtMzk2LDYgKzQwNSw3IEBA
IHZvaWQgUnVsZVNldDo6dHJhdmVyc2VSdWxlRGF0YXMoRnVuY3Rpb24mJiBmdW5jdGlvbikKICAg
ICB0cmF2ZXJzZVZlY3RvcihtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXMpOwogICAgIHRyYXZl
cnNlVmVjdG9yKG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3Io
bV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMpOworICAgIHRyYXZlcnNlVmVjdG9yKG1fZm9jdXNWaXNp
YmxlUHNldWRvQ2xhc3NSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3IobV91bml2ZXJzYWxSdWxl
cyk7CiB9CiAKQEAgLTQ5Nyw2ICs1MDcsNyBAQCB2b2lkIFJ1bGVTZXQ6OnNocmlua1RvRml0KCkK
ICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9zbG90dGVk
UHNldWRvRWxlbWVudFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9mb2N1c1BzZXVkb0NsYXNz
UnVsZXMuc2hyaW5rVG9GaXQoKTsKKyAgICBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMu
c2hyaW5rVG9GaXQoKTsKICAgICBtX3VuaXZlcnNhbFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAg
bV9wYWdlUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX2ZlYXR1cmVzLnNocmlua1RvRml0KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmggYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9SdWxlU2V0LmgKaW5kZXggOTlhYTE2MGQ5MDY4NDRmYWQzNGRjMWEyNzAxNmEw
MDM2YmRlMzA3OS4uM2Q1YjViMzE0NzAwYzUwZjQ1ZGMxNWQ4NDY2NzQ2YzBlOWEwNjhkMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1J1bGVTZXQuaApAQCAtMTI5LDYgKzEyOSw3IEBAIHB1YmxpYzoKICAgICBjb25z
dCBSdWxlRGF0YVZlY3RvciYgc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcygpIGNvbnN0IHsgcmV0
dXJuIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVj
dG9yJiBwYXJ0UHNldWRvRWxlbWVudFJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJ0UHNldWRv
RWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3IqIGZvY3VzUHNldWRvQ2xh
c3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsgfQorICAg
IGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCkgY29u
c3QgeyByZXR1cm4gJm1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlczsgfQogICAgIGNvbnN0
IFJ1bGVEYXRhVmVjdG9yKiB1bml2ZXJzYWxSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX3VuaXZl
cnNhbFJ1bGVzOyB9CiAKICAgICBjb25zdCBWZWN0b3I8U3R5bGVSdWxlUGFnZSo+JiBwYWdlUnVs
ZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VSdWxlczsgfQpAQCAtMTY3LDYgKzE2OCw3IEBAIHBy
aXZhdGU6CiAgICAgUnVsZURhdGFWZWN0b3IgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzOwog
ICAgIFJ1bGVEYXRhVmVjdG9yIG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlczsKICAgICBSdWxlRGF0
YVZlY3RvciBtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsKKyAgICBSdWxlRGF0YVZlY3RvciBtX2Zv
Y3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7CiAgICAgUnVsZURhdGFWZWN0b3IgbV91bml2ZXJz
YWxSdWxlczsKICAgICBWZWN0b3I8U3R5bGVSdWxlUGFnZSo+IG1fcGFnZVJ1bGVzOwogICAgIHVu
c2lnbmVkIG1fcnVsZUNvdW50IHsgMCB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVT
aGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3ZjgxYjJjNDc3ZmI0ODc2ZDdhNTYwZjE0NzllZDY5
YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRhMjM5NmFkNjRmMDIzMDg1NTQ5ODI1OTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdSZXNvbHZlci5jcHAKQEAgLTIyNyw2
ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdpdGhFbGVtZW50
KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0eQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuZm9jdXNlZCgpICE9IGVsZW1lbnQuZm9jdXNlZCgp
KQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNGb2N1c1Zpc2libGUoKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3VzV2l0aGluKCkgIT0gZWxl
bWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNh
bmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSAhPSBlbGVtZW50LmlzQmVpbmdEcmFnZ2Vk
KCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggOWYxMjAzMjRlY2M2MDc2MGE1ZjE4NDhiOGMzMzcwNGMyNzM1ZDk5MS4uNmQy
MjFjMjA1Njk2ZGNkM2Y1MmQwNjViMWI2ZjZmMmRkYWE2ZDlhOCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4
IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29t
PgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBmb2N1cy12aXNp
YmxlLTAwNS5odG1sIGZhaWxzIGluIE1hYyBhbmQgaU9TIHBsYXRmb3JtcyBiZWNhdXNlIGJ1dHRv
bnMgZG9uJ3QgZ2V0IGZvY3VzZWQgb24gY2xpY2sKKyAgICAgICAgKHNlZSBidWcgIzIyMjYxKS4K
KworICAgICAgICAqIHBsYXRmb3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9uczogU2tpcCBmb2N1cy12aXNpYmxl
LTAxMS5odG1sIGFzIGl0IHRpbWVvdXRzIGluIGlPUy4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA1LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
OS1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisKIDIwMjEtMDItMjYgIFphbGFuIEJ1anRhcyAgPHph
bGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZSAo
Y3NzMS90ZXh0X3Byb3BlcnRpZXMvdGV4dF9kZWNvcmF0aW9uLmh0bWwpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwppbmRleCA5NDQyOGQ5ZGRlZTlmMmYwOGYzNjFlN2Q1YzZjZDY4MDIwODZl
Yzc2Li45MjI5NDg5NTljMjc2ODZmYWZjM2FmN2VmNWRkNjFhMGUxNjFlYTE3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAyMS0wMi0xNyAgTWFudWVs
IFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0b3Jz
XSA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyMDI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGV4cGVjdGF0aW9ucywgbW9zdCBvZiB0aGUg
OmZvY3VzLXZpc2libGUgdGVzdHMgYXJlIHBhc3Npbmcgbm93LgorCisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDAyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA3Lmh0bWw6IEltcG9ydCBsYXN0IGNoYW5nZXMgb24gdGhpcyB0ZXN0CisgICAgICAgIChzZWUg
aHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvcHVsbC8yNzY1NikuCisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDEwLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTEuaHRtbDogSW1wb3J0IGxhc3QgY2hhbmdlcyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKHNlZSBo
dHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdC9wdWxsLzI3NzAwKS4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAx
My1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dDoKKwog
MjAyMS0wMi0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAg
QWRkIHN1cHBvcnQgZm9yIFdlYlJUQyBwcmlvcml0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZv
Y3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4
cGVjdGVkLnR4dAppbmRleCBjMTNiZTAwZmQ5NWU3M2RiNDE3OGRjMjhlNGQ0MzkwM2E5OWQ0N2Y0
Li5kMDYwNTQ4Y2ZhMmQxYWM3NzJmMGMxNWI2MjU4YTJiMWQ3ODg2NDMxIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9j
dXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAogCiBQQVNTIENoZWNr
cyB0aGF0ICc6Zm9jdXMnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50
IGhhbmRsZXIKLUZBSUwgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3Mg
bWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyIGFzc2VydF91bnJlYWNoZWQ6ICc6
Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGludmFsaWQgc2VsZWN0b3IuIFN5bnRheEVycm9yOiBFcnJv
cjogYXNzZXJ0X2VxdWFsczogJzpmb2N1cy12aXNpYmxlJyBtYXRjaGVzIGV2ZW50LnRhcmdldCBl
eHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVudCBub2RlIDxpbnB1dCB0eXBlPSJ0ZXh0Ij48L2lu
cHV0PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy12
aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVy
CiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtd2l0aGluJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBp
bnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1
c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEt
ZXhwZWN0ZWQudHh0CmluZGV4IDI3ZTFhOWFmMmFiZThmNjdiODhlYmZjNzcwY2UzMzM0MjM3OTFl
ZGUuLjdmZTUwMzNjZThhNDhjNjY2ODE4OTI5MmQ4YTM4Yjk3N2ViZjNjZDIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy1pbi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWlu
LWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAogCiBQQVNT
IENoZWNrcyB0aGF0ICc6Zm9jdXMnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNp
bicgZXZlbnQgaGFuZGxlcgotRkFJTCBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVk
by1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlciBhc3NlcnRfdW5y
ZWFjaGVkOiAnOmZvY3VzLXZpc2libGUnICBpcyBhbiBpbnZhbGlkIHNlbGVjdG9yLiBTeW50YXhF
cnJvcjogRXJyb3I6IGFzc2VydF9lcXVhbHM6ICc6Zm9jdXMtdmlzaWJsZScgbWF0Y2hlcyBldmVu
dC50YXJnZXQgZXhwZWN0ZWQgbnVsbCBidXQgZ290IEVsZW1lbnQgbm9kZSA8aW5wdXQgdHlwZT0i
dGV4dCI+PC9pbnB1dD4gUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIENoZWNrcyB0aGF0
ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBl
dmVudCBoYW5kbGVyCiBQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtd2l0aGluJyBwc2V1ZG8tY2xh
c3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS1leHBl
Y3RlZC50eHQKaW5kZXggODUwYzdhYjE3MDJiMzkzMjQ5MDM0ZDBiMzM2ZWM5NTZhM2MxOTQzMC4u
ZWM3N2NlZmMwMjU4MWU2NTUxNTc4MDNlNjk4ZTQzOGQzYjY4OTMxZiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhw
ZWN0ZWQudHh0CkBAIC01LDUgKzUsNSBAQCBJZiB0aGUgZWxlbWVudCBoYXMgYSByZWQgYmFja2dy
b3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgdGhlIGVsZQogCiBGb2N1
cyBtZS4KIAotRkFJTCBLZXlib2FyZCBmb2N1cyBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGdyZWVuIGV4
cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBLZXli
b2FyZCBmb2N1cyBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3Rl
ZC50eHQKaW5kZXggYjVhOWVmNDE0ZDJmMzBkOGNmYjEyZThjYjA2ZGQ5YmQyMzk5YzlhMC4uOTM1
ODdkZGRiNjJiNDVmYTRmMDU5YzZhZTllNjVjYjc4OWVjNzVjYiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0
ZWQudHh0CkBAIC0xOCwxOCArMTgsMTggQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tn
cm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogCiAK
LUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxz
OiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQg
InJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1l
bnQgSU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMg
aXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZv
ciBJTlBVVCNpbnB1dDIgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MyB2
aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJv
YXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQzIHNo
b3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAw
LCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDQgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NCBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQ1IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDUgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4
LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0NiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5w
dXQ2IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDcgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBh
c3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NyBzaG91bGQgYmUgZ3Jl
ZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlM
IEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ4IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDggc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2Io
MCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0OSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1
cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5Q
VVQjaW5wdXQ5IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBn
b3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEwIHZpYSBt
b3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQg
aW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEwIHNob3Vs
ZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAw
KSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDExIHZpYSBtb3VzZSBzaG91bGQgbWF0
Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2Vx
dWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDExIHNob3VsZCBiZSBncmVlbiBleHBl
Y3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMg
ZWxlbWVudCBJTlBVVCNpbnB1dDEyIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDEyIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEy
OCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNp
bnB1dDEzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9y
dHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNp
bnB1dDEzIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3Qg
InJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBURVhUQVJFQSNpbnB1dDE0IHZpYSBt
b3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQg
aW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBURVhUQVJFQSNpbnB1dDE0IHNo
b3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAw
LCAwKSIKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBG
b2N1cyBlbGVtZW50IElOUFVUI2lucHV0MiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQg
SU5QVVQjaW5wdXQzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQg
c3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDQg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NSB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQ
QVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ2IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZv
Y3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxl
bWVudCBJTlBVVCNpbnB1dDcgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBh
cyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0OCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ5IHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEwIHZpYSBtb3VzZSBzaG91bGQgbWF0
Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9j
dXMgZWxlbWVudCBJTlBVVCNpbnB1dDExIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZp
c2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJ
TlBVVCNpbnB1dDEyIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQg
c3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDEz
IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5
Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBURVhUQVJFQSNpbnB1dDE0IHZpYSBtb3Vz
ZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5w
dXQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKaW5kZXggNWFhY2Q0YjExZjM4YzYzYzFlNjk2OTU4
ZjVkNjA2NGYxNDZjYmM0OC4uOTgxMTViMWUxMmQwMGQwNjQ1ZGIzOTk5NzhhZThlYjZjZjBiMjUy
YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0CkBAIC01LDUgKzUsNSBAQCBJZiB0aGUgZWxlbWVu
dCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4g
SWYgdGhlIGVsZQogCiBGb2N1cyBtZQogCi1GQUlMIEZvY3VzIHNob3VsZCBhbHdheXMgbWF0Y2gg
OmZvY3VzLXZpc2libGUgb24gY29udGVudCBlZGl0YWJsZSBkaXZzIGFzc2VydF9lcXVhbHM6IG91
dGxpbmVDb2xvciBmb3IgU1BBTiNlbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAx
MjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNTIEZvY3VzIHNob3VsZCBhbHdheXMg
bWF0Y2ggOmZvY3VzLXZpc2libGUgb24gY29udGVudCBlZGl0YWJsZSBkaXZzCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDct
ZXhwZWN0ZWQudHh0CmluZGV4IDhiYjljZjMwNzAwZjEzNTgyZWE3OGFiMjE3M2UzYTIyMmI5Y2Rh
Y2QuLjlmMWVlMDk4OWRjMTc3YTcyNGFiN2RjOWNjYzdhMmUwODcyZDZmYzQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3
LWV4cGVjdGVkLnR4dApAQCAtMiw5ICsyLDkgQEAgVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHVzaW5n
IHRoZSBrZXlib2FyZCBpbiBhIHdheSB0aGF0IGRvZXMgbm90IG1vdmUgZm9jdXMgc3RpbGwKIElm
IHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1cy12aXNp
YmxlIHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgogVXNlIHRoZSBtb3VzZSB0byBm
b2N1cyB0aGUgZWxlbWVudCBiZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiIKIElmIHRoZSBlbGVt
ZW50IGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLgot
UHJlc3MgdGhlIFNISUZUIGtleS4KK1ByZXNzIHRoZSBFTlRFUiBrZXkuCiBJZiB0aGUgZWxlbWVu
dCBub3cgaGFzIGEgZ3JlZW4gb3V0bGluZSBhbmQgbm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRo
ZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgogQ2xpY2sgbWUuCiAKLUZBSUwgVXNpbmcga2V5Ym9h
cmQgd2hpbGUgZWxlbWVudCBpcyBmb2N1c2VkIHNob3VsZCB0cmlnZ2VyIDpmb2N1cy12aXNpYmxl
OyB1c2luZyBtb3VzZSB3aXRob3V0IG1vdmluZyBmb2N1cyBzaG91bGQgbm90IGNhbmNlbCBpdDsg
bW92aW5nIGZvY3VzIHVzaW5nIG1vdXNlIHNob3VsZCBjYW5jZWwgaXQuIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBV
c2luZyBrZXlib2FyZCB3aGlsZSBlbGVtZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRyaWdnZXIgOmZv
Y3VzLXZpc2libGU7IHVzaW5nIG1vdXNlIHdpdGhvdXQgbW92aW5nIGZvY3VzIHNob3VsZCBub3Qg
Y2FuY2VsIGl0OyBtb3ZpbmcgZm9jdXMgdXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNlbCBpdC4KIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcu
aHRtbAppbmRleCAwZmMxOTZjYmVjZGYxYjE5OGE1YmFkY2UzNjk0YjFlYzdjYzk1ZDRmLi4xNDlh
NmY2OGZlOGMzMDBmNWRkMTcyYjk3ZDJmMjk3NGY1ZTMxMjEwIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMDcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbApAQCAtMzYsNyAr
MzYsNyBAQAogICAgIDxsaT5JZiB0aGUgdXNlci1hZ2VudCBkb2VzIG5vdCBjbGFpbSB0byBzdXBw
b3J0IHRoZSA8Y29kZT46Zm9jdXMtdmlzaWJsZTwvY29kZT4gcHNldWRvLWNsYXNzIHRoZW4gU0tJ
UCB0aGlzIHRlc3QuPC9saT4KICAgICA8bGk+VXNlIHRoZSBtb3VzZSB0byBmb2N1cyB0aGUgZWxl
bWVudCBiZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiI8L2xpPgogICAgIDxsaT5JZiB0aGUgZWxl
bWVudCBoYXMgYSByZWQgb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS48
L2xpPgotICAgIDxsaT5QcmVzcyB0aGUgU0hJRlQga2V5LjwvbGk+CisgICAgPGxpPlByZXNzIHRo
ZSBFTlRFUiBrZXkuPC9saT4KICAgICA8bGk+SWYgdGhlIGVsZW1lbnQgbm93IGhhcyBhIGdyZWVu
IG91dGxpbmUgYW5kIG5vdCByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMg
U1VDQ0VTUy48L2xpPgogICA8L29sPgogCkBAIC02NSw3ICs2NSw4IEBACiAgICAgICAgIG9uZS5h
ZGRFdmVudExpc3RlbmVyKCJrZXl1cCIsIHQuc3RlcF9mdW5jKHRlc3RfbW9kYWxpdHlfY2hhbmdl
KSk7CiAgICAgICAgIG9uZS5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsIGhhbmRsZV9pbml0
aWFsX2ZvY3VzKTsKIAotICAgICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXMob25lLCAiXHVFMDUw
Iik7CisgICAgICAgIGNvbnN0IGVudGVyID0gIlx1RTAwNyI7CisgICAgICAgIHRlc3RfZHJpdmVy
LnNlbmRfa2V5cyhvbmUsIGVudGVyKTsKICAgICAgIH0pOwogCiAgICAgICBjb25zdCB0ZXN0X21v
ZGFsaXR5X2NoYW5nZSA9IHQuc3RlcF9mdW5jKCgpID0+IHsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0
CmluZGV4IDMwMzFkYzdjYjgyMjY2OTAzNWJhOTllN2RmZDZiMjRjNDJmNDE1MTUuLmFlZjM5YTdl
OWNhNTQ5MjE0MjJmM2ZlMzVmMmVhYWRjOTlkNTc0NmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAxMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4
dApAQCAtMSwxMSArMSw5IEBACiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgOmZvY3VzLXZpc2libGUg
bWF0Y2hlcyBhZnRlciBhIGtleWJvYXJkIGV2ZW50LCBldmVuIGlmIHRoZSBldmVudCBoYW5kbGVy
IGNhbGxzIHByZXZlbnREZWZhdWx0KCkgb24gdGhlIGV2ZW50LgogQ2xpY2sgIkNsaWNrIGhlcmUg
YW5kIHByZXNzIHJpZ2h0IGFycm93LiIuCiBQcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LgotSWYg
IkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCBy
ZXN1bHQgaXMgRkFJTFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVz
dCByZXN1bHQgaXMgU1VDQ0VTUy4KK0lmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5k
LCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRs
aW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgogCi1DbGljayBoZXJlIGFuZCBw
cmVzcyByaWdodCBhcnJvdy4gIEZvY3VzIG1vdmVzIGhlcmUuCitDbGljayBoZXJlIGFuZCBwcmVz
cyByaWdodCBhcnJvdy4KIAotSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxs
Ci0KLVRJTUVPVVQgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0
KCkgaXMgY2FsbGVkIFRlc3QgdGltZWQgb3V0CitQQVNTIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMg
ZXZlbiBpZiBwcmV2ZW50RGVmYXVsdCgpIGlzIGNhbGxlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMTEuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCmluZGV4IGIwZGFmMzRi
YThkZDk2ZjM0M2U2ODdjZWY4NTI1MjNjOTJhZTJjMzkuLmNmMTg2ZDI4YjgzMmUwN2E2ZTAxN2Vj
NTczMjY0ZGJlMmQxMzIxZWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCkBAIC0yMSwxMSArMjEsMTEgQEAKICAgICAgIGJv
cmRlcjogMDsKICAgICB9CiAKLSAgICAjbmV4dDpmb2N1cy12aXNpYmxlIHsKKyAgICA6Zm9jdXMt
dmlzaWJsZSB7CiAgICAgICBvdXRsaW5lOiBncmVlbiBzb2xpZCA1cHg7CiAgICAgfQogCi0gICAg
I25leHQ6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7CisgICAgOmZvY3VzOm5vdCg6Zm9jdXMt
dmlzaWJsZSkgewogICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOwogICAgICAgb3V0bGluZTog
MDsKICAgICB9CkBAIC0zNywzMCArMzcsMzMgQEAKICAgPHVsIGlkPSJpbnN0cnVjdGlvbnMiPgog
ICAgIDxsaT5DbGljayAiQ2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuIi48L2xpPgog
ICAgIDxsaT5QcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LjwvbGk+Ci0gICAgPGxpPklmICJGb2N1
cyBtb3ZlcyBoZXJlLiIgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIEZBSUxVUkUuCisgICAgPGxpPklmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5k
LCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLgogICAgICAgICBJZiBpdCBoYXMgYSBn
cmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwv
dWw+CiAgIDxiciAvPgotICA8YnV0dG9uIGlkPSJzdGFydCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhl
cmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LjwvYnV0dG9uPgotICA8YnV0dG9uIGlkPSJuZXh0IiB0
YWJpbmRleD0iLTEiPkZvY3VzIG1vdmVzIGhlcmUuPC9idXR0b24+CisgIDxkaXYgaWQ9InRhcmdl
dCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LjwvZGl2Pgog
ICA8c2NyaXB0PgotICAgIHN0YXJ0LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4g
eworICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgKGUpID0+IHsKKyAgICAg
IGUucHJldmVudERlZmF1bHQoKTsKKyAgICB9KTsKKyAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5l
cigia2V5dXAiLCAoZSkgPT4geworICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0pOwor
ICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsIChlKSA9PiB7CiAgICAgICBl
LnByZXZlbnREZWZhdWx0KCk7Ci0gICAgICBuZXh0LmZvY3VzKCk7CiAgICAgfSk7Ci0KICAgICBh
c3luY190ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICAgIG5leHQuYWRkRXZlbnRMaXN0ZW5lcigiZm9j
dXMiLCB0LnN0ZXBfZnVuYygoKSA9PiB7Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0
ZWRTdHlsZShuZXh0KS5vdXRsaW5lQ29sb3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29s
b3IgZm9yICR7bmV4dC50YWdOYW1lfSMke25leHQuaWR9IHNob3VsZCBiZSBncmVlbmApOwotICAg
ICAgICBhc3NlcnRfbm90X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKG5leHQpLmJhY2tncm91bmRD
b2xvciwgInJnYigyNTUsIDAsIDApIiwgYGJhY2tncm91bmRDb2xvciBmb3IgJHtuZXh0LnRhZ05h
bWV9IyR7bmV4dC5pZH0gc2hvdWxkIE5PVCBiZSByZWRgKTsKLSAgICAgICAgdC5kb25lKCkKLSAg
ICAgIH0pKTsKKyAgICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsICgpID0+IHsK
KyAgICAgICAgY29uc3QgYXJyb3dfcmlnaHQgPSAiXHVlMDE0IjsKKyAgICAgICAgdGVzdF9kcml2
ZXIuc2VuZF9rZXlzKHRhcmdldCwgYXJyb3dfcmlnaHQpOworICAgICAgfSk7CiAKLSAgICAgIC8v
IFx1ZTAxNCAtPiBBUlJPV19SSUdIVAotICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHN0YXJ0
LCAiXHVlMDE0IikuY2F0Y2godC5zdGVwX2Z1bmMoKCkgPT4gewotICAgICAgICBhc3NlcnRfdHJ1
ZShmYWxzZSwgInNlbmRfa2V5cyBub3QgaW1wbGVtZW50ZWQgeWV0Iik7Ci0gICAgICAgIHQuZG9u
ZSgpOworICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmNf
ZG9uZSgoZSkgPT4geworICAgICAgICBhc3NlcnRfZXF1YWxzKGdldENvbXB1dGVkU3R5bGUodGFy
Z2V0KS5vdXRsaW5lQ29sb3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9yICR7
dGFyZ2V0LnRhZ05hbWV9IyR7dGFyZ2V0LmlkfSBzaG91bGQgYmUgZ3JlZW5gKTsKKyAgICAgICAg
YXNzZXJ0X25vdF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLmJhY2tncm91bmRDb2xv
ciwgInJnYigyNTUsIDAsIDApIiwgYGJhY2tncm91bmRDb2xvciBmb3IgJHt0YXJnZXQudGFnTmFt
ZX0jJHt0YXJnZXQuaWR9IHNob3VsZCBOT1QgYmUgcmVkYCk7CiAgICAgICB9KSk7CisKKyAgICAg
IHRlc3RfZHJpdmVyLmNsaWNrKHRhcmdldCk7CiAgICAgfSwgIjpmb2N1cy12aXNpYmxlIG1hdGNo
ZXMgZXZlbiBpZiBwcmV2ZW50RGVmYXVsdCgpIGlzIGNhbGxlZCIpOwogICA8L3NjcmlwdD4KIDwv
Ym9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0CmluZGV4IDZiMmEyNGUxYzNmZjkzNzkzN2RhYTI2
OTc2ZmIzNWMyZjg0MWZlYzYuLjQ5YWQ4Y2U5YzNjM2MxYzQxMmEwYjlkNjM2YjRhZmQ2NjljNTM4
YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dApAQCAtOCw3ICs4LDUgQEAgSWYgdGhlIGVsZW1l
bnQgdGhhdCBzYXlzICJUYXJnZXQiIGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3Qg
cmVzdWx0IGlzIGEKIEluaXRpYWwKIFRhcmdldAogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwg
bWVzc2FnZSA9IG51bGwKLQotRkFJTCA6Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRl
ciBtb3VzZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hp
bmcgOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBESVYjaW5p
dGlhbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJy
Z2IoMjU1LCAwLCAwKSIKK1BBU1MgOmZvY3VzLXZpc2libGUgZG9lcyBub3QgbWF0Y2ggYWZ0ZXIg
bW91c2UgY2xpY2sgZXZlbiBpZiBwcmV2aW91cyBmb2N1c2VkIGVsZW1lbnQgd2FzIG1hdGNoaW5n
IDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CmluZGV4IDZhZGU1NTMyMzFk
ODdlYTBlNGUxZDNjODBhYTM2YmIzMjFmNzA3MDIuLmRkMmYyOWE4ODk2YjQyOWNmMzhmOWNmMTJk
NDhiNWMxNGI1MDllMTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAK
IAogVGFyZ2V0CiAKLUZBSUwgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9j
dXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVUI2lucHV0IHNo
b3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwg
MCwgMCkiCitGQUlMIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMgYWZ0ZXIgc2NyaXB0IGZvY3VzIG1v
dmUgYXNzZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYjdGFyZ2V0IHNob3VsZCBi
ZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCki
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0CmluZGV4IDNkODE3M2U4YjhhOTc4NWEzMjFlMjUxMTg4
NjNlMGJjYWU3ZTYwNzEuLjQxMmFjMzQ0OWQ5N2NjMzA5OTZiOTFlZTUxN2ViMDEyODVjODdkMGIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIEluaXRpYWwKIAogCi1G
QUlMIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRjaCBvbiB0ZXh0IGlucHV0cyBhc3NlcnRfZXF1
YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVUI3RhcmdldCBzaG91bGQgYmUgbGltZSBleHBl
Y3RlZCAicmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9j
dXMtdmlzaWJsZSBhbHdheXMgbWF0Y2ggb24gdGV4dCBpbnB1dHMKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAxOTc1ZTFkNjdjMGU5YTBkOWNkMjgyOWYx
ZWE3Nzc5YzlmM2Q5MGRhLi41NzkzZGE1YjVlMWU4MTZhMjQ2N2UyOGVkZjVhMmM4M2VhNWFjNTU4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzM5NSw2
ICszMzk1LDcgQEAgd2Via2l0Lm9yZy9iLzIwNzg1OCBmYXN0L2NhbnZhcy93ZWJnbC9zaW11bGF0
ZWQtdmVydGV4QXR0cmliMC1pbnZhbGlkLWluZGljaWVzLmgKIHdlYmtpdC5vcmcvYi8yMDk3MzQg
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDAxLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwgWyBT
a2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA5Lmh0bWwgWyBTa2lwIF0KK3dlYmtpdC5v
cmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDExLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDEyLmh0bWwgWyBTa2lwIF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLmh0bWwgWyBTa2lw
IF0KIHdlYmtpdC5vcmcvYi8yMDk3MzQgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2hvdmVyLTAwMi5odG1sIFsgU2tpcCBdCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1YzQxYWYyZjc2NzM0MWU1
ZmM0YjY2NzQ1YzY3ZWQzYzA4M2IzNTQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9pb3MvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwIEBACitUaGlzIHRl
c3QgY2hlY2tzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSBmb2N1c2luZyBhbiBlbGVtZW50IGFmdGVy
IGEgY2xpY2sgZG9lcyBub3QgY2F1c2UgOmZvY3VzLXZpc2libGUgbWF0Y2hpbmcgdG8gdHJpZ2dl
ci4KK0lmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDpmb2N1
cy12aXNpYmxlIHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0LgorQ2xpY2sgdGhlIGJ1
dHRvbiBiZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiIKK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5
cyAiSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBvdXRsaW5l
LCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBn
cmVlbiBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitDbGlj
ayBtZS4KK0kgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1tYXRpY2FsbHkuCisKK0ZBSUwgUHJvZ3Jh
bW1hdGljIGZvY3VzIGFmdGVyIGNsaWNrIHNob3VsZCBub3QgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXNzZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYjZWwgc2hvdWxkIGJlIGxpbWUg
ZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDApIgorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljg1YzQxYWYyZjc2NzM0MWU1ZmM0YjY2NzQ1YzY3ZWQzYzA4M2IzNTQKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA1LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEwIEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSBmb2N1c2lu
ZyBhbiBlbGVtZW50IGFmdGVyIGEgY2xpY2sgZG9lcyBub3QgY2F1c2UgOmZvY3VzLXZpc2libGUg
bWF0Y2hpbmcgdG8gdHJpZ2dlci4KK0lmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNsYWltIHRv
IHN1cHBvcnQgdGhlIDpmb2N1cy12aXNpYmxlIHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0
ZXN0LgorQ2xpY2sgdGhlIGJ1dHRvbiBiZWxvdyB0aGF0IHNheXMgIkNsaWNrIG1lLiIKK0lmIHRo
ZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4i
IGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0
aGUgZWxlbWVudCBoYXMgYSBncmVlbiBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBTVUNDRVNTLgorCitDbGljayBtZS4KK0kgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1tYXRpY2Fs
bHkuCisKK0ZBSUwgUHJvZ3JhbW1hdGljIGZvY3VzIGFmdGVyIGNsaWNrIHNob3VsZCBub3QgbWF0
Y2ggOmZvY3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYj
ZWwgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2Jh
KDAsIDAsIDAsIDApIgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDIyMDgyOTY2NDIyMjM4MTNk
YzgwZWUwMmI2ODA5NjRhZWUyMjJkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDktZXhwZWN0ZWQudHh0
CisrKyAvZGV2L251bGwKQEAgLTEsNyArMCwwIEBACi1UaGlzIHRlc3QgY2hlY2tzIHRoYXQgYW55
IGVsZW1lbnQgZm9jdXNlZCB2aWEgYW4gYXV0b2ZvY3VzIGF0dHJpYnV0ZSB3aWxsIGhhdmUgOmZv
Y3VzLXZpc2libGUgbWF0Y2hpbmcgZW5hYmxlZC4KLUlmIHRoZSBidXR0b24gdGhhdCBzYXlzICJJ
IHdpbGwgYmUgZm9jdXNlZCBhdXRvbWF0aWNhbGx5IiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhl
biB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwg
dGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy4KLQotSSB3aWxsIGJlIGZvY3VzZWQgYXV0
b21hdGljYWxseS4KLQotRkFJTCBBdXRvZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgQlVUVE9OI2J1dHRvbiBzaG91bGQgYmUg
Z3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2JhKDAsIDAsIDAsIDAu
ODQ3KSIKLQo=
</data>
<flag name="commit-queue"
          id="440578"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421673</attachid>
            <date>2021-02-26 10:36:08 -0800</date>
            <delta_ts>2021-03-02 03:13:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210226193606.patch</filename>
            <type>text/plain</type>
            <size>36528</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNTU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmFlODk3NWNkMWE2M2Rm
NjI0YWVkOTQwMzc3YmE1ODZmN2NjMzk2Zi4uYTlmNjcwMjk4MTNkYjEwMTEyOGU5NGVhNjdhMmM3
NTk2NmYzNGI1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTAyLTE3ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYmFzaWMgOmZvY3VzLXZpc2libGUgaW1wbGVt
ZW50YXRpb24gYmVoaW5kIHRoZSBGb2N1c1Zpc2libGVFbmFibGVkIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcuCisgICAgICAgIFRoaXMgcGF0Y2ggaW1wbGVtZW50cyB0aGUgaGV1cmlzdGljcyBk
ZWZpbmVkIGluIHRoZSBzcGVjIChodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3JzLTQv
I3RoZS1mb2N1cy12aXNpYmxlLXBzZXVkbyksCisgICAgICAgIGV4Y2VwdCB0aGUgb25lcyByZWxh
dGVkIHRvIHNjcmlwdCBmb2N1cy4KKworICAgICAgICBUZXN0OiBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0qCisKKyAgICAgICAgKiBj
c3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oOgorICAgICAgICAoV2ViQ29yZTo6bWF0
Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKTogQ2hlY2sgZWxlbWVudC5oYXNGb2N1c1Zpc2li
bGUoKS4KKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50OjpzZXRGb2N1cyk6IFdoZW4gYW4gZWxlbWVudCBsb3NlcyBmb2N1cyBpdCBhbHdheXMgY2Fs
bCBzZXRIYXNGb2N1c1Zpc2libGUoZmFsc2UpLiBXaGVuIGFuIGVsZW1lbnQgZ2V0cyBmb2N1c2Vk
CisgICAgICAgIGl0IGNhbGxzIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgZWxlbWVudHMg
dGhhdCBzdXBwb3J0IGtleWJvYXJkIGlucHV0IChhcyB0aGV5IGFsd2F5cyBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSkuCisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUp
OiBOZXcgbWV0aG9kIGdhdGVkIGJlaGluZCB0aGUgZXhwZXJpbWVudGFsIGZsYWcuCisgICAgICAg
ICogZG9tL0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6Omhhc0ZvY3VzVmlz
aWJsZSBjb25zdCk6IEFkZCBuZXcgbWV0aG9kLgorICAgICAgICAqIGRvbS9Ob2RlLmg6CisgICAg
ICAgIChXZWJDb3JlOjpOb2RlOjpmbGFnSGFzRm9jdXNWaXNpYmxlKTogQWRkIG5ldyBmbGFnIGZv
ciA6Zm9jdXMtdmlzaWJsZSBtYXRjaGluZy4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmludGVybmFsS2V5RXZlbnQpOiBJ
ZiB0aGUgdXNlciBpbnRlcmFjdHMgd2l0aCB0aGUgcGFnZSB2aWEga2V5Ym9hcmQsIGNhbGwgc2V0
SGFzRm9jdXNWaXNpYmxlKHRydWUpLgorICAgICAgICBBdm9pZCB0aGF0IGZvciBtb2RpZmllciBr
ZXlzLgorICAgICAgICAqIHBhZ2UvRm9jdXNDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTogQ2FsbCBz
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGtleWJvYXJkIGZvY3VzLgorICAgICAgICAqIHBh
Z2UvRnJhbWVWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2Nyb2xsVG9G
cmFnbWVudEludGVybmFsKTogQ2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkgZm9yIGFuY2hv
ciBmb2N1cy4KKyAgICAgICAgKiBzdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTdHlsZTo6RWxlbWVudFJ1bGVDb2xsZWN0b3I6OmNvbGxlY3RNYXRjaGlu
Z1J1bGVzKTogQWRkIDpmb2N1cy12aXNpYmxlIHJ1bGVzIHN0dWZmIGxpa2Ugd2UgYWxyZWFkeSBo
YXZlIGZvciA6Zm9jdXMuCisgICAgICAgICogc3R5bGUvUnVsZVNldC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6YWRkUnVsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OlJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFzKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6c2hyaW5rVG9GaXQpOiBEaXR0by4KKyAgICAgICAgKiBz
dHlsZS9SdWxlU2V0Lmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6Zm9jdXNW
aXNpYmxlUHNldWRvQ2xhc3NSdWxlcyBjb25zdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1N0
eWxlU2hhcmluZ1Jlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFyaW5n
UmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBmb3Ig
aGFzRm9jdXNWaXNpYmxlKCkuCisKIDIwMjEtMDItMjYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFw
cGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBhZGRyZXNzIHBvc3QtbGFuZGluZyByZXZp
ZXcgZmVlZGJhY2sgZm9yIHIyNzM1NDIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVj
dG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaAppbmRleCA2Zjc3ZjllNjRiY2JiZDNiMjZlODJhZTk1
MTUxZjBkOGNlMGZiYWVkLi44MDAxM2YwNWYxZWRlMWJiYzA2NjkwODYyZDgyZGY5M2U0ZmNjOTdm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0
aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rp
b25zLmgKQEAgLTQ3NCw3ICs0NzQsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNGb2N1
c1BzZXVkb0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpCiAKIEFMV0FZU19JTkxJTkUgYm9v
bCBtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkK
IHsKLSAgICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRl
KGVsZW1lbnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAgaWYg
KEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBDU1NT
ZWxlY3Rvcjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpKQorICAgICAgICByZXR1cm4gdHJ1ZTsK
KworICAgIHJldHVybiBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICYmIGlzRnJhbWVGb2N1c2Vk
KGVsZW1lbnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKaW5kZXggODcxMTZjMGJiYjcxMGMxM2MzYWQzMDBlYmVjNmEzNTAyZDU2N2Q4ZS4uOGJkZGFk
NzlhNjM0MDMxNTUxMjQ1MWVhYjJhNTYzNzMwN2RiZDM2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cApAQCAtNzQ0LDYgKzc0NCwyNSBAQCB2b2lkIEVsZW1lbnQ6OnNldEZvY3VzKGJvb2wgZmxhZykK
IAogICAgIGZvciAoYXV0byogZWxlbWVudCA9IHRoaXM7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVt
ZW50LT5wYXJlbnRFbGVtZW50SW5Db21wb3NlZFRyZWUoKSkKICAgICAgICAgZWxlbWVudC0+c2V0
SGFzRm9jdXNXaXRoaW4oZmxhZyk7CisKKyAgICBpZiAoZmxhZykgeworICAgICAgICAvLyBFbGVt
ZW50cyB0aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5wdXQgKGZvcm0gaW5wdXRzIGFuZCBjb250ZW50
ZWRpdGFibGUpIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSB3aGVuIGZvY3VzZWQuCisgICAg
ICAgIGlmIChpc1RleHRGaWVsZCgpIHx8IGlzQ29udGVudEVkaXRhYmxlKCkpCisgICAgICAgICAg
ICBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfSBlbHNlCisgICAgICAgIHNldEhhc0Zv
Y3VzVmlzaWJsZShmYWxzZSk7Cit9CisKK3ZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNWaXNpYmxl
KGJvb2wgZmxhZykKK3sKKyAgICBpZiAoIWRvY3VtZW50KCkuc2V0dGluZ3MoKS5mb2N1c1Zpc2li
bGVFbmFibGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChoYXNGb2N1c1Zpc2libGUo
KSA9PSBmbGFnKQorICAgICAgICByZXR1cm47CisKKyAgICBTdHlsZTo6UHNldWRvQ2xhc3NDaGFu
Z2VJbnZhbGlkYXRpb24gc3R5bGVJbnZhbGlkYXRpb24oKnRoaXMsIENTU1NlbGVjdG9yOjpQc2V1
ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAgc2V0Tm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3Vz
VmlzaWJsZSwgZmxhZyk7CiB9CiAKIHZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNXaXRoaW4oYm9v
bCBmbGFnKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOTZiZDc2MDNmZWQ3NDFlOTI3MWQ5YmI1YTJl
YTYxOGM0MDc5ODQzYy4uOTQ5Y2JiYzNmOTY1MTc1NzZlZTIzMjZkOTlkYTJmMzg5ODc0ZDcxNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oCkBAIC0zMTksMTIgKzMxOSwxNCBAQCBwdWJsaWM6CiAgICAgYm9v
bCBob3ZlcmVkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNl
ckFjdGlvbkVsZW1lbnRIb3ZlcmVkKCk7IH0KICAgICBib29sIGZvY3VzZWQoKSBjb25zdCB7IHJl
dHVybiBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudEZvY3VzZWQo
KTsgfQogICAgIGJvb2wgaXNCZWluZ0RyYWdnZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rp
b25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudERyYWdnZWQoKTsgfQorICAgIGJvb2wg
aGFzRm9jdXNWaXNpYmxlKCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6Okhh
c0ZvY3VzVmlzaWJsZSk7IH07CiAgICAgYm9vbCBoYXNGb2N1c1dpdGhpbigpIGNvbnN0IHsgcmV0
dXJuIGhhc05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhpbik7IH07CiAKICAgICB2aXJ0
dWFsIHZvaWQgc2V0QWN0aXZlKGJvb2wgPSB0cnVlLCBib29sIHBhdXNlID0gZmFsc2UsIFN0eWxl
OjpJbnZhbGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZTo6QWxsKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSwgU3R5bGU6OkludmFsaWRhdGlv
blNjb3BlID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRGb2N1cyhib29sKTsKICAgICB2b2lkIHNldEJlaW5nRHJhZ2dlZChib29sKTsKKyAgICB2
b2lkIHNldEhhc0ZvY3VzVmlzaWJsZShib29sKTsKICAgICB2b2lkIHNldEhhc0ZvY3VzV2l0aGlu
KGJvb2wpOwogCiAgICAgT3B0aW9uYWw8aW50PiB0YWJJbmRleFNldEV4cGxpY2l0bHkoKSBjb25z
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5oCmluZGV4IDA0MzYzNWY5Zjc2YTAxMDM5OTU3MDFkMmQwMzk3YjUyNmIxMGQ5
MTQuLjI4OGFlZjg3OTg1NDc4NTdkZDJiNjYyN2Y1MjMyZjE0YjFiOGJmZDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUu
aApAQCAtNTE3LDYgKzUxNyw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNT
aGFkb3dSb290KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzU2hh
ZG93Um9vdCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNIVE1MKCkgeyByZXR1cm4gc3Rh
dGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzSFRNTEVsZW1lbnQpOyB9CiAgICAgc3RhdGlj
IGludDMyX3QgZmxhZ0lzTGluaygpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVG
bGFnOjpJc0xpbmspOyB9CisgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzVmlzaWJsZSgp
IHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUp
OyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzV2l0aGluKCkgeyByZXR1cm4gc3Rh
dGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzV2l0aGluKTsgfQogICAgIHN0YXRp
YyBpbnQzMl90IGZsYWdJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKCkgeyByZXR1cm4gc3RhdGlj
X2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWQpOyB9CiAj
ZW5kaWYgLy8gRU5BQkxFKEpJVCkKQEAgLTU2MSw3ICs1NjIsOSBAQCBwcm90ZWN0ZWQ6CiAKICAg
ICAgICAgSW5jbHVzaXZlQW5jZXN0b3JTdGF0ZUZvckZvcm0gPSAxIDw8IDI4LAogICAgICAgICBJ
bmNsdXNpdmVBbmNlc3RvclN0YXRlRm9yQ2FudmFzID0gMSA8PCAyOSwKLSAgICAgICAgLy8gQml0
cyAzMC0zMSBhcmUgZnJlZS4KKworICAgICAgICBIYXNGb2N1c1Zpc2libGUgPSAxIDw8IDMwLAor
ICAgICAgICAvLyBCaXQgMzEgaXMgZnJlZS4KICAgICB9OwogCiAgICAgZW51bSBjbGFzcyBUYWJJ
bmRleFN0YXRlIDogdWludDhfdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5k
ZXggYWVlZDVjMmIzODA3OTZlMTU2MTc0MDQ5NDZlYmZkYTFjNWI0NjYyOS4uYjU0ZjA1Zjk5MWU1
MjczYzUzMTc0NTA2YzE5MmRiNzRiZWZjYmNkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5k
bGVyLmNwcApAQCAtMzUzMiw2ICszNTMyLDExIEBAIGJvb2wgRXZlbnRIYW5kbGVyOjppbnRlcm5h
bEtleUV2ZW50KGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYgaW5pdGlhbEtleUV2ZW50CiAg
ICAgICAgIGtleWRvd24tPnByZXZlbnREZWZhdWx0KCk7CiAgICAga2V5ZG93bi0+c2V0VGFyZ2V0
KGVsZW1lbnQpOwogCisgICAgLy8gSWYgdGhlIHVzZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2Ug
dmlhIHRoZSBrZXlib2FyZCwgdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlLgorICAgIC8vIEp1c3QgdHlwaW5nIGEgbW9kaWZpZXIga2V5IGlz
IG5vdCBjb25zaWRlcmVkIHVzZXIgaW50ZXJhY3Rpb24gd2l0aCB0aGUgcGFnZS4KKyAgICBpZiAo
IWtleWRvd24tPmN0cmxLZXkoKSAmJiAha2V5ZG93bi0+bWV0YUtleSgpICYmICFrZXlkb3duLT5h
bHRHcmFwaEtleSgpICYmICFrZXlkb3duLT5zaGlmdEtleSgpKQorICAgICAgICBlbGVtZW50LT5z
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisKICAgICBpZiAoaW5pdGlhbEtleUV2ZW50LnR5cGUo
KSA9PSBQbGF0Zm9ybUV2ZW50OjpSYXdLZXlEb3duKSB7CiAgICAgICAgIGVsZW1lbnQtPmRpc3Bh
dGNoRXZlbnQoa2V5ZG93bik7CiAgICAgICAgIC8vIElmIGZyYW1lIGNoYW5nZWQgYXMgYSByZXN1
bHQgb2Yga2V5ZG93biBkaXNwYXRjaCwgdGhlbiByZXR1cm4gdHJ1ZSB0byBhdm9pZCBzZW5kaW5n
IGEgc3Vic2VxdWVudCBrZXlwcmVzcyBtZXNzYWdlIHRvIHRoZSBuZXcgZnJhbWUuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggMDdhYmFkMDYwZTAxM2ViOGI3YWM1
NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3OTA5NTk3ZWMyN2FlNWFhNzE5YTY5NWMzMDQyNTEw
MjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcApAQCAtNTMzLDYg
KzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3Jk
ZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgICAgIH0KICAgICB9CiAKKyAg
ICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgZWxlbWVudC0+Zm9jdXMo
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAgICAgcmV0
dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggNjlhY2ZiMGQxYjZi
ZmQ0OGJiYTljOTYxZGE0NDUzNjUzYzQ0NTNiZS4uNjgzZTM2ZWY1NWYyYTkzNWQ5MGFiNTUwZGM1
OTYxYTIwZjkwOGMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMjI2OCw5ICsy
MjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwoY29uc3Qg
U3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIpCiAgICAgCiAgICAgLy8gSWYgdGhlIGFuY2hvciBh
Y2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3ZlIGZvY3VzIHRoZXJlIHRvIGFpZCB1c2VycyByZWx5
aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24uCiAgICAgaWYgKGFuY2hvckVsZW1lbnQpIHsKLSAg
ICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlzRm9jdXNhYmxlKCkpCisgICAgICAgIGlmIChhbmNo
b3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7CisgICAgICAgICAgICBhbmNob3JFbGVtZW50LT5z
ZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2Vk
RWxlbWVudChhbmNob3JFbGVtZW50LmdldCgpKTsKLSAgICAgICAgZWxzZSB7CisgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxlbWVudChudWxscHRyKTsK
ICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZShhbmNo
b3JFbGVtZW50LmdldCgpKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxl
bWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4IGUxODBjY2RmYTlmNjhmYWFjMDkxMGMyMzNjMjE4
ZDdlZmQ2YTA0YTQuLmNjNDhjNGE2NjhkNzA5M2YzMjNiNDAwZjRlODBjMTBjMDY0YjhlOTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKQEAgLTE1
Nyw2ICsxNTcsOCBAQCB2b2lkIEVsZW1lbnRSdWxlQ29sbGVjdG9yOjpjb2xsZWN0TWF0Y2hpbmdS
dWxlcyhjb25zdCBNYXRjaFJlcXVlc3QmIG1hdGNoUmVxdWVzdAogICAgICAgICBjb2xsZWN0TWF0
Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmxpbmtQc2V1ZG9DbGFzc1J1
bGVzKCksIG1hdGNoUmVxdWVzdCk7CiAgICAgaWYgKG1hdGNoZXNGb2N1c1BzZXVkb0NsYXNzKGVs
ZW1lbnQoKSkpCiAgICAgICAgIGNvbGxlY3RNYXRjaGluZ1J1bGVzRm9yTGlzdChtYXRjaFJlcXVl
c3QucnVsZVNldC0+Zm9jdXNQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVxdWVzdCk7CisgICAg
aWYgKG1hdGNoZXNGb2N1c1Zpc2libGVQc2V1ZG9DbGFzcyhlbGVtZW50KCkpKQorICAgICAgICBj
b2xsZWN0TWF0Y2hpbmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzVmlz
aWJsZVBzZXVkb0NsYXNzUnVsZXMoKSwgbWF0Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnRhZ1J1bGVzKGVsZW1lbnQoKS5s
b2NhbE5hbWUoKSwgZWxlbWVudCgpLmlzSFRNTEVsZW1lbnQoKSAmJiBlbGVtZW50KCkuZG9jdW1l
bnQoKS5pc0hUTUxEb2N1bWVudCgpKSwgbWF0Y2hSZXF1ZXN0KTsKICAgICBjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPnVuaXZlcnNhbFJ1bGVzKCksIG1h
dGNoUmVxdWVzdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCmluZGV4IDNhNWI1NjEwYmE3
NmMzOTY3NDBmNjEwMDFjZWI4ZDJmMGEzZDk4YzkuLmU0YTlmMDY1NjZjMzIxNDEzOTY3ZTNjMWY2
ZDEwYTZiOTgwZTM1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCkBAIC05OCw2ICs5OCw3
IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVk
IHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGNsYXNz
U2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBsaW5rU2VsZWN0b3Ig
PSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBmb2N1c1NlbGVjdG9yID0gbnVsbHB0
cjsKKyAgICBjb25zdCBDU1NTZWxlY3RvciogZm9jdXNWaXNpYmxlU2VsZWN0b3IgPSBudWxscHRy
OwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBob3N0UHNldWRvQ2xhc3NTZWxlY3RvciA9IG51bGxw
dHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGN1c3RvbVBzZXVkb0VsZW1lbnRTZWxlY3RvciA9
IG51bGxwdHI7CiAgICAgY29uc3QgQ1NTU2VsZWN0b3IqIHNsb3R0ZWRQc2V1ZG9FbGVtZW50U2Vs
ZWN0b3IgPSBudWxscHRyOwpAQCAtMTYyLDYgKzE2Myw5IEBAIHZvaWQgUnVsZVNldDo6YWRkUnVs
ZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVk
IHNlCiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzOgogICAg
ICAgICAgICAgICAgIGZvY3VzU2VsZWN0b3IgPSBzZWxlY3RvcjsKICAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNp
YmxlOgorICAgICAgICAgICAgICAgIGZvY3VzVmlzaWJsZVNlbGVjdG9yID0gc2VsZWN0b3I7Cisg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1
ZG9DbGFzc0hvc3Q6CiAgICAgICAgICAgICAgICAgaG9zdFBzZXVkb0NsYXNzU2VsZWN0b3IgPSBz
ZWxlY3RvcjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0OSw2ICsyNTMsMTEgQEAgdm9p
ZCBSdWxlU2V0OjphZGRSdWxlKGNvbnN0IFN0eWxlUnVsZSYgcnVsZSwgdW5zaWduZWQgc2VsZWN0
b3JJbmRleCwgdW5zaWduZWQgc2UKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAorICAgIGlmIChm
b2N1c1Zpc2libGVTZWxlY3RvcikgeworICAgICAgICBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNz
UnVsZXMuYXBwZW5kKHJ1bGVEYXRhKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIGlm
ICh0YWdTZWxlY3RvcikgewogICAgICAgICBhZGRUb1J1bGVTZXQodGFnU2VsZWN0b3ItPnRhZ1FO
YW1lKCkubG9jYWxOYW1lKCksIG1fdGFnTG9jYWxOYW1lUnVsZXMsIHJ1bGVEYXRhKTsKICAgICAg
ICAgYWRkVG9SdWxlU2V0KHRhZ1NlbGVjdG9yLT50YWdMb3dlcmNhc2VMb2NhbE5hbWUoKSwgbV90
YWdMb3dlcmNhc2VMb2NhbE5hbWVSdWxlcywgcnVsZURhdGEpOwpAQCAtMzk2LDYgKzQwNSw3IEBA
IHZvaWQgUnVsZVNldDo6dHJhdmVyc2VSdWxlRGF0YXMoRnVuY3Rpb24mJiBmdW5jdGlvbikKICAg
ICB0cmF2ZXJzZVZlY3RvcihtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXMpOwogICAgIHRyYXZl
cnNlVmVjdG9yKG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3Io
bV9mb2N1c1BzZXVkb0NsYXNzUnVsZXMpOworICAgIHRyYXZlcnNlVmVjdG9yKG1fZm9jdXNWaXNp
YmxlUHNldWRvQ2xhc3NSdWxlcyk7CiAgICAgdHJhdmVyc2VWZWN0b3IobV91bml2ZXJzYWxSdWxl
cyk7CiB9CiAKQEAgLTQ5Nyw2ICs1MDcsNyBAQCB2b2lkIFJ1bGVTZXQ6OnNocmlua1RvRml0KCkK
ICAgICBtX2hvc3RQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9zbG90dGVk
UHNldWRvRWxlbWVudFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV9mb2N1c1BzZXVkb0NsYXNz
UnVsZXMuc2hyaW5rVG9GaXQoKTsKKyAgICBtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMu
c2hyaW5rVG9GaXQoKTsKICAgICBtX3VuaXZlcnNhbFJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAg
bV9wYWdlUnVsZXMuc2hyaW5rVG9GaXQoKTsKICAgICBtX2ZlYXR1cmVzLnNocmlua1RvRml0KCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmggYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9SdWxlU2V0LmgKaW5kZXggOTlhYTE2MGQ5MDY4NDRmYWQzNGRjMWEyNzAxNmEw
MDM2YmRlMzA3OS4uM2Q1YjViMzE0NzAwYzUwZjQ1ZGMxNWQ4NDY2NzQ2YzBlOWEwNjhkMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1J1bGVTZXQuaApAQCAtMTI5LDYgKzEyOSw3IEBAIHB1YmxpYzoKICAgICBjb25z
dCBSdWxlRGF0YVZlY3RvciYgc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcygpIGNvbnN0IHsgcmV0
dXJuIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVEYXRhVmVj
dG9yJiBwYXJ0UHNldWRvRWxlbWVudFJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJ0UHNldWRv
RWxlbWVudFJ1bGVzOyB9CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3IqIGZvY3VzUHNldWRvQ2xh
c3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsgfQorICAg
IGNvbnN0IFJ1bGVEYXRhVmVjdG9yKiBmb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCkgY29u
c3QgeyByZXR1cm4gJm1fZm9jdXNWaXNpYmxlUHNldWRvQ2xhc3NSdWxlczsgfQogICAgIGNvbnN0
IFJ1bGVEYXRhVmVjdG9yKiB1bml2ZXJzYWxSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX3VuaXZl
cnNhbFJ1bGVzOyB9CiAKICAgICBjb25zdCBWZWN0b3I8U3R5bGVSdWxlUGFnZSo+JiBwYWdlUnVs
ZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VSdWxlczsgfQpAQCAtMTY3LDYgKzE2OCw3IEBAIHBy
aXZhdGU6CiAgICAgUnVsZURhdGFWZWN0b3IgbV9zbG90dGVkUHNldWRvRWxlbWVudFJ1bGVzOwog
ICAgIFJ1bGVEYXRhVmVjdG9yIG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlczsKICAgICBSdWxlRGF0
YVZlY3RvciBtX2ZvY3VzUHNldWRvQ2xhc3NSdWxlczsKKyAgICBSdWxlRGF0YVZlY3RvciBtX2Zv
Y3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXM7CiAgICAgUnVsZURhdGFWZWN0b3IgbV91bml2ZXJz
YWxSdWxlczsKICAgICBWZWN0b3I8U3R5bGVSdWxlUGFnZSo+IG1fcGFnZVJ1bGVzOwogICAgIHVu
c2lnbmVkIG1fcnVsZUNvdW50IHsgMCB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVT
aGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3ZjgxYjJjNDc3ZmI0ODc2ZDdhNTYwZjE0NzllZDY5
YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRhMjM5NmFkNjRmMDIzMDg1NTQ5ODI1OTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdSZXNvbHZlci5jcHAKQEAgLTIyNyw2
ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdpdGhFbGVtZW50
KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0eQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuZm9jdXNlZCgpICE9IGVsZW1lbnQuZm9jdXNlZCgp
KQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaGFzRm9j
dXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNGb2N1c1Zpc2libGUoKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3VzV2l0aGluKCkgIT0gZWxl
bWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGNh
bmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSAhPSBlbGVtZW50LmlzQmVpbmdEcmFnZ2Vk
KCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggOWYxMjAzMjRlY2M2MDc2MGE1ZjE4NDhiOGMzMzcwNGMyNzM1ZDk5MS4uMGIz
MjFjMGMxNmU4ZWVmOTQwOTQxMDQ1MjUyYmRiODhjNzVhMjVmZiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEy
IEBACisyMDIxLTAyLTE3ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29t
PgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIGZvY3VzLXZpc2libGUtMDExLmh0bWwgYXMgaXQg
dGltZW91dHMgaW4gaU9TLgorCiAyMDIxLTAyLTI2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UgKGNzczEvdGV4
dF9wcm9wZXJ0aWVzL3RleHRfZGVjb3JhdGlvbi5odG1sKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKaW5kZXggOTQ0MjhkOWRkZWU5ZjJmMDhmMzYxZTdkNWM2Y2Q2ODAyMDg2ZWM3Ni4uZWRi
YzUyYzc0NjZhZmFhYTNlYmRmYTJhZjg3Y2Y0NGVlMGU2YTM3MCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjEtMDItMTcgIE1hbnVlbCBSZWdvIENh
c2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW3NlbGVjdG9yc10gOmZvY3Vz
LXZpc2libGUgaW1wbGVtZW50YXRpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMjAyOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFVwZGF0ZSBleHBlY3RhdGlvbnMsIG1vc3Qgb2YgdGhlIDpmb2N1cy12
aXNpYmxlIHRlc3RzIGFyZSBwYXNzaW5nIG5vdy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9j
dXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1s
OiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMgdGVzdAorICAgICAgICAoc2VlIGh0dHBzOi8v
Z2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L3B1bGwvMjc2NTYpLgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAxMS5odG1sOiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMgdGVzdAorICAg
ICAgICAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0L3B1bGwv
Mjc3MDApLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0
ZWQudHh0OgorCiAyMDIxLTAyLTI2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4K
IAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgV2ViUlRDIHByaW9yaXR5CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1l
dmVudC0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IGMxM2JlMDBmZDk1ZTczZGI0MTc4ZGMyOGU0ZDQz
OTAzYTk5ZDQ3ZjQuLmQwNjA1NDhjZmEyZDFhYzc3MmYwYzE1YjYyNThhMmIxZDc4ODY0MzEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiAK
IFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdm
b2N1cycgZXZlbnQgaGFuZGxlcgotRkFJTCBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBz
ZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIgYXNzZXJ0X3Vu
cmVhY2hlZDogJzpmb2N1cy12aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4gU3ludGF4
RXJyb3I6IEVycm9yOiBhc3NlcnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNoZXMgZXZl
bnQudGFyZ2V0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0IHR5cGU9
InRleHQiPjwvaW5wdXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVja3MgdGhh
dCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2
ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4nIHBzZXVkby1jbGFz
cyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2lu
LWV2ZW50LTAwMS1leHBlY3RlZC50eHQKaW5kZXggMjdlMWE5YWYyYWJlOGY2N2I4OGViZmM3NzBj
ZTMzMzQyMzc5MWVkZS4uN2ZlNTAzM2NlOGE0OGM2NjY4MTg5MjkyZDhhMzhiOTc3ZWJmM2NkMiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBA
QAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5z
aWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlz
aWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVy
IGFzc2VydF91bnJlYWNoZWQ6ICc6Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGludmFsaWQgc2VsZWN0
b3IuIFN5bnRheEVycm9yOiBFcnJvcjogYXNzZXJ0X2VxdWFsczogJzpmb2N1cy12aXNpYmxlJyBt
YXRjaGVzIGV2ZW50LnRhcmdldCBleHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVudCBub2RlIDxp
bnB1dCB0eXBlPSJ0ZXh0Ij48L2lucHV0PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1Mg
Q2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUg
J2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4n
IHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxlcgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDAxLWV4cGVjdGVkLnR4dAppbmRleCA4NTBjN2FiMTcwMmIzOTMyNDkwMzRkMGIzMzZlYzk1
NmEzYzE5NDMwLi5lYzc3Y2VmYzAyNTgxZTY1NTE1NzgwM2U2OThlNDM4ZDNiNjg5MzFmIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwMS1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElmIHRoZSBlbGVtZW50IGhhcyBh
IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUg
ZWxlCiAKIEZvY3VzIG1lLgogCi1GQUlMIEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9j
dXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNlbCBzaG91bGQg
YmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCki
CitQQVNTIEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDAyLWV4cGVjdGVkLnR4dAppbmRleCBiNWE5ZWY0MTRkMmYzMGQ4Y2ZiMTJlOGNiMDZkZDliZDIz
OTljOWEwLi45MzU4N2RkZGI2MmI0NWZhNGYwNTljNmFlOWU2NWNiNzg5ZWM3NWNiIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAwMi1leHBlY3RlZC50eHQKQEAgLTE4LDE4ICsxOCwxOCBAQCBJZiB0aGUgZWxlbWVudCBoYXMg
YSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4gSWYgdGhl
IGVsZQogCiAKIAotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91c2Ugc2hv
dWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFz
c2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxIHNob3VsZCBiZSBncmVl
biBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRs
aW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigw
LCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5Q
VVQjaW5wdXQzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3Vw
cG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBV
VCNpbnB1dDMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdv
dCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NCB2aWEgbW91
c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlu
cHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ0IHNob3VsZCBi
ZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIK
LUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxz
OiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQg
InJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1l
bnQgSU5QVVQjaW5wdXQ2IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMg
aXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZv
ciBJTlBVVCNpbnB1dDYgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NyB2
aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJv
YXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ3IHNo
b3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAw
LCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OCBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQ5IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDkgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4
LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0MTAgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0
cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lu
cHV0MTAgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAi
cmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTEgc2hvdWxkIGJl
IGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgot
RkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxz
OiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTIgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVk
ICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVt
ZW50IElOUFVUI2lucHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBh
cyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3Ig
Zm9yIElOUFVUI2lucHV0MTMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAw
KSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IFRFWFRBUkVBI2lu
cHV0MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0
cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIFRFWFRBUkVB
I2lucHV0MTQgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdv
dCAicmdiKDAsIDAsIDApIgorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91
c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlu
cHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBzaG91bGQgbWF0
Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9j
dXMgZWxlbWVudCBJTlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlz
aWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0NCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1
cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ1IHZp
YSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9h
cmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1vdXNlIHNob3Vs
ZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFT
UyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1l
bnQgSU5QVVQjaW5wdXQ4IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMg
aXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1
dDkgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBr
ZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTAgdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNlIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1
cyBlbGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlz
aWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IFRFWFRBUkVBI2lucHV0
MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBr
ZXlib2FyZCBpbnB1dAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dAppbmRleCA1YWFjZDRiMTFmMzhj
NjNjMWU2OTY5NThmNWQ2MDY0ZjE0NmNiYzQ4Li45ODExNWIxZTEyZDAwZDA2NDVkYjM5OTk3OGFl
OGViNmNmMGIyNTJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElm
IHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIEZvY3VzIG1lCiAKLUZBSUwgRm9jdXMgc2hvdWxkIGFs
d2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMgYXNzZXJ0
X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBTUEFOI2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3Rl
ZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgRm9jdXMgc2hv
dWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwNy1leHBlY3RlZC50eHQKaW5kZXggOGJiOWNmMzA3MDBmMTM1ODJlYTc4YWIyMTcz
ZTNhMjIyYjljZGFjZC4uOWYxZWUwOTg5ZGMxNzdhNzI0YWI3ZGM5Y2NjN2EyZTA4NzJkNmZjNCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0CkBAIC0yLDkgKzIsOSBAQCBUaGlzIHRlc3QgY2hlY2tz
IHRoYXQgdXNpbmcgdGhlIGtleWJvYXJkIGluIGEgd2F5IHRoYXQgZG9lcyBub3QgbW92ZSBmb2N1
cyBzdGlsbAogSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUg
OmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3QuCiBVc2UgdGhl
IG1vdXNlIHRvIGZvY3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIgog
SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlz
IEZBSUxVUkUuCi1QcmVzcyB0aGUgU0hJRlQga2V5LgorUHJlc3MgdGhlIEVOVEVSIGtleS4KIElm
IHRoZSBlbGVtZW50IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFuZCBub3QgcmVkIGJhY2tncm91
bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCiBDbGljayBtZS4KIAotRkFJTCBV
c2luZyBrZXlib2FyZCB3aGlsZSBlbGVtZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRyaWdnZXIgOmZv
Y3VzLXZpc2libGU7IHVzaW5nIG1vdXNlIHdpdGhvdXQgbW92aW5nIGZvY3VzIHNob3VsZCBub3Qg
Y2FuY2VsIGl0OyBtb3ZpbmcgZm9jdXMgdXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNlbCBpdC4gYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwg
MCkiCitQQVNTIFVzaW5nIGtleWJvYXJkIHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNlZCBzaG91bGQg
dHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsgdXNpbmcgbW91c2Ugd2l0aG91dCBtb3ZpbmcgZm9jdXMg
c2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1vdmluZyBmb2N1cyB1c2luZyBtb3VzZSBzaG91bGQgY2Fu
Y2VsIGl0LgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwNy5odG1sCmluZGV4IDBmYzE5NmNiZWNkZjFiMTk4YTViYWRjZTM2OTRiMWVjN2Nj
OTVkNGYuLjE0OWE2ZjY4ZmU4YzMwMGY1ZGQxNzJiOTdkMmYyOTc0ZjVlMzEyMTAgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1s
CkBAIC0zNiw3ICszNiw3IEBACiAgICAgPGxpPklmIHRoZSB1c2VyLWFnZW50IGRvZXMgbm90IGNs
YWltIHRvIHN1cHBvcnQgdGhlIDxjb2RlPjpmb2N1cy12aXNpYmxlPC9jb2RlPiBwc2V1ZG8tY2xh
c3MgdGhlbiBTS0lQIHRoaXMgdGVzdC48L2xpPgogICAgIDxsaT5Vc2UgdGhlIG1vdXNlIHRvIGZv
Y3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIjwvbGk+CiAgICAgPGxp
PklmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBp
cyBGQUlMVVJFLjwvbGk+Ci0gICAgPGxpPlByZXNzIHRoZSBTSElGVCBrZXkuPC9saT4KKyAgICA8
bGk+UHJlc3MgdGhlIEVOVEVSIGtleS48L2xpPgogICAgIDxsaT5JZiB0aGUgZWxlbWVudCBub3cg
aGFzIGEgZ3JlZW4gb3V0bGluZSBhbmQgbm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0
IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwvb2w+CiAKQEAgLTY1LDcgKzY1LDggQEAKICAg
ICAgICAgb25lLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmModGVzdF9tb2Rh
bGl0eV9jaGFuZ2UpKTsKICAgICAgICAgb25lLnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIiwg
aGFuZGxlX2luaXRpYWxfZm9jdXMpOwogCi0gICAgICAgIHRlc3RfZHJpdmVyLnNlbmRfa2V5cyhv
bmUsICJcdUUwNTAiKTsKKyAgICAgICAgY29uc3QgZW50ZXIgPSAiXHVFMDA3IjsKKyAgICAgICAg
dGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9uZSwgZW50ZXIpOwogICAgICAgfSk7CiAKICAgICAgIGNv
bnN0IHRlc3RfbW9kYWxpdHlfY2hhbmdlID0gdC5zdGVwX2Z1bmMoKCkgPT4gewpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1l
eHBlY3RlZC50eHQKaW5kZXggMzAzMWRjN2NiODIyNjY5MDM1YmE5OWU3ZGZkNmIyNGM0MmY0MTUx
NS4uYWVmMzlhN2U5Y2E1NDkyMTQyMmYzZmUzNWYyZWFhZGM5OWQ1NzQ2ZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEt
ZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDkgQEAKIFRoaXMgdGVzdCBjaGVja3MgdGhhdCA6Zm9j
dXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVyIGEga2V5Ym9hcmQgZXZlbnQsIGV2ZW4gaWYgdGhlIGV2
ZW50IGhhbmRsZXIgY2FsbHMgcHJldmVudERlZmF1bHQoKSBvbiB0aGUgZXZlbnQuCiBDbGljayAi
Q2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuIi4KIFByZXNzIHRoZSByaWdodCBhcnJv
dyBrZXkuCi1JZiAiRm9jdXMgbW92ZXMgaGVyZS4iIGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVk
IGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIGl0IGhhcyBh
IGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCiAKLUNsaWNr
IGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LiAgRm9jdXMgbW92ZXMgaGVyZS4KK0NsaWNrIGhl
cmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LgogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVz
c2FnZSA9IG51bGwKLQotVElNRU9VVCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGV2ZW4gaWYgcHJl
dmVudERlZmF1bHQoKSBpcyBjYWxsZWQgVGVzdCB0aW1lZCBvdXQKK1BBU1MgOmZvY3VzLXZpc2li
bGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwKaW5k
ZXggYjBkYWYzNGJhOGRkOTZmMzQzZTY4N2NlZjg1MjUyM2M5MmFlMmMzOS4uY2YxODZkMjhiODMy
ZTA3YTZlMDE3ZWM1NzMyNjRkYmUyZDEzMjFlYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDExLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwKQEAgLTIxLDExICsyMSwxMSBA
QAogICAgICAgYm9yZGVyOiAwOwogICAgIH0KIAotICAgICNuZXh0OmZvY3VzLXZpc2libGUgewor
ICAgIDpmb2N1cy12aXNpYmxlIHsKICAgICAgIG91dGxpbmU6IGdyZWVuIHNvbGlkIDVweDsKICAg
ICB9CiAKLSAgICAjbmV4dDpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHsKKyAgICA6Zm9jdXM6
bm90KDpmb2N1cy12aXNpYmxlKSB7CiAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7CiAgICAg
ICBvdXRsaW5lOiAwOwogICAgIH0KQEAgLTM3LDMwICszNywzMyBAQAogICA8dWwgaWQ9Imluc3Ry
dWN0aW9ucyI+CiAgICAgPGxpPkNsaWNrICJDbGljayBoZXJlIGFuZCBwcmVzcyByaWdodCBhcnJv
dy4iLjwvbGk+CiAgICAgPGxpPlByZXNzIHRoZSByaWdodCBhcnJvdyBrZXkuPC9saT4KLSAgICA8
bGk+SWYgIkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUg
dGVzdCByZXN1bHQgaXMgRkFJTFVSRS4KKyAgICA8bGk+SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVk
IGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuCiAgICAgICAgIElm
IGl0IGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1Mu
PC9saT4KICAgPC91bD4KICAgPGJyIC8+Ci0gIDxidXR0b24gaWQ9InN0YXJ0IiB0YWJpbmRleD0i
MCI+Q2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuPC9idXR0b24+Ci0gIDxidXR0b24g
aWQ9Im5leHQiIHRhYmluZGV4PSItMSI+Rm9jdXMgbW92ZXMgaGVyZS48L2J1dHRvbj4KKyAgPGRp
diBpZD0idGFyZ2V0IiB0YWJpbmRleD0iMCI+Q2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJy
b3cuPC9kaXY+CiAgIDxzY3JpcHQ+Ci0gICAgc3RhcnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93
bicsIChlKSA9PiB7CisgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCAoZSkg
PT4geworICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0pOworICAgIHRhcmdldC5hZGRF
dmVudExpc3RlbmVyKCJrZXl1cCIsIChlKSA9PiB7CisgICAgICBlLnByZXZlbnREZWZhdWx0KCk7
CisgICAgfSk7CisgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleXByZXNzIiwgKGUpID0+
IHsKICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKLSAgICAgIG5leHQuZm9jdXMoKTsKICAgICB9
KTsKLQogICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24odCkgewotICAgICAgbmV4dC5hZGRFdmVudExp
c3RlbmVyKCJmb2N1cyIsIHQuc3RlcF9mdW5jKCgpID0+IHsKLSAgICAgICAgYXNzZXJ0X2VxdWFs
cyhnZXRDb21wdXRlZFN0eWxlKG5leHQpLm91dGxpbmVDb2xvciwgInJnYigwLCAxMjgsIDApIiwg
YG91dGxpbmVDb2xvciBmb3IgJHtuZXh0LnRhZ05hbWV9IyR7bmV4dC5pZH0gc2hvdWxkIGJlIGdy
ZWVuYCk7Ci0gICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGdldENvbXB1dGVkU3R5bGUobmV4dCku
YmFja2dyb3VuZENvbG9yLCAicmdiKDI1NSwgMCwgMCkiLCBgYmFja2dyb3VuZENvbG9yIGZvciAk
e25leHQudGFnTmFtZX0jJHtuZXh0LmlkfSBzaG91bGQgTk9UIGJlIHJlZGApOwotICAgICAgICB0
LmRvbmUoKQotICAgICAgfSkpOworICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImZvY3Vz
IiwgKCkgPT4geworICAgICAgICBjb25zdCBhcnJvd19yaWdodCA9ICJcdWUwMTQiOworICAgICAg
ICB0ZXN0X2RyaXZlci5zZW5kX2tleXModGFyZ2V0LCBhcnJvd19yaWdodCk7CisgICAgICB9KTsK
IAotICAgICAgLy8gXHVlMDE0IC0+IEFSUk9XX1JJR0hUCi0gICAgICB0ZXN0X2RyaXZlci5zZW5k
X2tleXMoc3RhcnQsICJcdWUwMTQiKS5jYXRjaCh0LnN0ZXBfZnVuYygoKSA9PiB7Ci0gICAgICAg
IGFzc2VydF90cnVlKGZhbHNlLCAic2VuZF9rZXlzIG5vdCBpbXBsZW1lbnRlZCB5ZXQiKTsKLSAg
ICAgICAgdC5kb25lKCk7CisgICAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLCB0
LnN0ZXBfZnVuY19kb25lKChlKSA9PiB7CisgICAgICAgIGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0
ZWRTdHlsZSh0YXJnZXQpLm91dGxpbmVDb2xvciwgInJnYigwLCAxMjgsIDApIiwgYG91dGxpbmVD
b2xvciBmb3IgJHt0YXJnZXQudGFnTmFtZX0jJHt0YXJnZXQuaWR9IHNob3VsZCBiZSBncmVlbmAp
OworICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKHRhcmdldCkuYmFj
a2dyb3VuZENvbG9yLCAicmdiKDI1NSwgMCwgMCkiLCBgYmFja2dyb3VuZENvbG9yIGZvciAke3Rh
cmdldC50YWdOYW1lfSMke3RhcmdldC5pZH0gc2hvdWxkIE5PVCBiZSByZWRgKTsKICAgICAgIH0p
KTsKKworICAgICAgdGVzdF9kcml2ZXIuY2xpY2sodGFyZ2V0KTsKICAgICB9LCAiOmZvY3VzLXZp
c2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVkIik7CiAgIDwv
c2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKaW5kZXggNmIyYTI0ZTFjM2Zm
OTM3OTM3ZGFhMjY5NzZmYjM1YzJmODQxZmVjNi4uNDlhZDhjZTljM2MzYzFjNDEyYTBiOWQ2MzZi
NGFmZDY2OWM1MzhjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0CkBAIC04LDcgKzgsNSBAQCBJ
ZiB0aGUgZWxlbWVudCB0aGF0IHNheXMgIlRhcmdldCIgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhl
biB0aGUgdGVzdCByZXN1bHQgaXMgYQogSW5pdGlhbAogVGFyZ2V0CiAKLUhhcm5lc3MgRXJyb3Ig
KFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1GQUlMIDpmb2N1cy12aXNpYmxlIGRvZXMgbm90
IG1hdGNoIGFmdGVyIG1vdXNlIGNsaWNrIGV2ZW4gaWYgcHJldmlvdXMgZm9jdXNlZCBlbGVtZW50
IHdhcyBtYXRjaGluZyA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3Ig
Zm9yIERJViNpbml0aWFsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCki
IGJ1dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBt
YXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3
YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDE0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKaW5kZXgg
NmFkZTU1MzIzMWQ4N2VhMGU0ZTFkM2M4MGFhMzZiYjMyMWY3MDcwMi4uZGQyZjI5YTg4OTZiNDI5
Y2YzOGY5Y2YxMmQ0OGI1YzE0YjUwOWUxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CkBAIC0x
LDUgKzEsNSBAQAogCiBUYXJnZXQKIAotRkFJTCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVy
IHNjcmlwdCBmb2N1cyBtb3ZlIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3IgSU5Q
VVQjaW5wdXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290
ICJyZ2IoMjU1LCAwLCAwKSIKK0ZBSUwgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3Jp
cHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIERJViN0YXJn
ZXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2Io
MjU1LCAwLCAwKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKaW5kZXggM2Q4MTczZThiOGE5Nzg1
YTMyMWUyNTExODg2M2UwYmNhZTdlNjA3MS4uNDEyYWMzNDQ5ZDk3Y2MzMDk5NmI5MWVlNTE3ZWIw
MTI4NWM4N2QwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogSW5p
dGlhbAogCiAKLUZBSUwgOmZvY3VzLXZpc2libGUgYWx3YXlzIG1hdGNoIG9uIHRleHQgaW5wdXRz
IGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3IgSU5QVVQjdGFyZ2V0IHNob3VsZCBi
ZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCki
CitQQVNTIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRjaCBvbiB0ZXh0IGlucHV0cwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDE5NzVlMWQ2N2MwZTlh
MGQ5Y2QyODI5ZjFlYTc3NzljOWYzZDkwZGEuLjU3OTNkYTViNWUxZTgxNmEyNDY3ZTI4ZWRmNWEy
YzgzZWE1YWM1NTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25z
CkBAIC0zMzk1LDYgKzMzOTUsNyBAQCB3ZWJraXQub3JnL2IvMjA3ODU4IGZhc3QvY2FudmFzL3dl
YmdsL3NpbXVsYXRlZC12ZXJ0ZXhBdHRyaWIwLWludmFsaWQtaW5kaWNpZXMuaAogd2Via2l0Lm9y
Zy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDcuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDkuaHRtbCBbIFNraXAg
XQord2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9i
LzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMTIuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMu
aHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvaG92ZXItMDAyLmh0bWwgWyBTa2lwIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421919</attachid>
            <date>2021-03-02 03:13:47 -0800</date>
            <delta_ts>2021-03-02 05:46:21 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-222028-20210302121345.patch</filename>
            <type>text/plain</type>
            <size>39091</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNjg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjY5OGUwNmZkZjllYjdl
MTJmODNlNDA1M2ZjZDk4MzJmMjcwMjRmYy4uYzU0ZWI4MGIyM2U3ZGYyYTZhMThjZTk2M2M1ZDI3
N2E4NDJmNjcxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIxLTAzLTAyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
Lzc0Njc5MjQzPgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IEFkZCBiYXNpYyA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRhdGlvbiBiZWhpbmQgdGhlIEZvY3Vz
VmlzaWJsZUVuYWJsZWQgZXhwZXJpbWVudGFsIGZlYXR1cmUgZmxhZy4KKyAgICAgICAgVGhpcyBw
YXRjaCBpbXBsZW1lbnRzIHRoZSBoZXVyaXN0aWNzIGRlZmluZWQgaW4gdGhlIHNwZWMgKGh0dHBz
Oi8vZHJhZnRzLmNzc3dnLm9yZy9zZWxlY3RvcnMtNC8jdGhlLWZvY3VzLXZpc2libGUtcHNldWRv
KSwKKyAgICAgICAgZXhjZXB0IHRoZSBvbmVzIHJlbGF0ZWQgdG8gc2NyaXB0IGZvY3VzLgorCisg
ICAgICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLSoKKworICAgICAgICAqIGNzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVu
Y3Rpb25zLmg6CisgICAgICAgIChXZWJDb3JlOjptYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3MpOiBDaGVjayBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpLgorICAgICAgICAqIGRvbS9FbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnNldEZvY3VzKTogV2hlbiBhbiBl
bGVtZW50IGxvc2VzIGZvY3VzIGl0IGFsd2F5cyBjYWxsIHNldEhhc0ZvY3VzVmlzaWJsZShmYWxz
ZSkuIFdoZW4gYW4gZWxlbWVudCBnZXRzIGZvY3VzZWQKKyAgICAgICAgaXQgY2FsbHMgc2V0SGFz
Rm9jdXNWaXNpYmxlKHRydWUpIGZvciBlbGVtZW50cyB0aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5w
dXQgKGFzIHRoZXkgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlKS4KKyAgICAgICAgKFdlYkNv
cmU6OkVsZW1lbnQ6OnNldEhhc0ZvY3VzVmlzaWJsZSk6IE5ldyBtZXRob2QgZ2F0ZWQgYmVoaW5k
IHRoZSBleHBlcmltZW50YWwgZmxhZy4KKyAgICAgICAgKiBkb20vRWxlbWVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6RWxlbWVudDo6aGFzRm9jdXNWaXNpYmxlIGNvbnN0KTogQWRkIG5ldyBtZXRo
b2QuCisgICAgICAgICogZG9tL05vZGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6OmZsYWdI
YXNGb2N1c1Zpc2libGUpOiBBZGQgbmV3IGZsYWcgZm9yIDpmb2N1cy12aXNpYmxlIG1hdGNoaW5n
LgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2
ZW50SGFuZGxlcjo6aW50ZXJuYWxLZXlFdmVudCk6IElmIHRoZSB1c2VyIGludGVyYWN0cyB3aXRo
IHRoZSBwYWdlIHZpYSBrZXlib2FyZCwgY2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkuCisg
ICAgICAgIEF2b2lkIHRoYXQgZm9yIG1vZGlmaWVyIGtleXMuCisgICAgICAgICogcGFnZS9Gb2N1
c0NvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZh
bmNlRm9jdXNJbkRvY3VtZW50T3JkZXIpOiBDYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBm
b3Iga2V5Ym9hcmQgZm9jdXMuCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwpOiBDYWxsIHNl
dEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgYW5jaG9yIGZvY3VzLgorICAgICAgICAqIHN0eWxl
L0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpFbGVt
ZW50UnVsZUNvbGxlY3Rvcjo6Y29sbGVjdE1hdGNoaW5nUnVsZXMpOiBBZGQgOmZvY3VzLXZpc2li
bGUgcnVsZXMgc3R1ZmYgbGlrZSB3ZSBhbHJlYWR5IGhhdmUgZm9yIDpmb2N1cy4KKyAgICAgICAg
KiBzdHlsZS9SdWxlU2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojph
ZGRSdWxlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6dHJhdmVy
c2VSdWxlRGF0YXMpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojpz
aHJpbmtUb0ZpdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1J1bGVTZXQuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojpmb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzIGNv
bnN0KTogRGl0dG8uCisgICAgICAgICogc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdp
dGhFbGVtZW50IGNvbnN0KTogQWRkIGNoZWNrIGZvciBoYXNGb2N1c1Zpc2libGUoKS4KKwogMjAy
MS0wMy0wMSAgQW5kcmVzIEdvbnphbGV6ICA8YW5kcmVzZ18yMkBhcHBsZS5jb20+CiAKICAgICAg
ICAgV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgbWV0aG9kIHRvIHJldHJpZXZlIHJlbGF0
ZWQgZXJyb3IgbWVzc2FnZSBlbGVtZW50cyBzaG91bGQgcmV0dXJuIG5vdC1pZ25vcmVkIGFjY2Vz
c2liaWxpdHkgZWxlbWVudHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0
b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hl
Y2tlclRlc3RGdW5jdGlvbnMuaAppbmRleCA2Zjc3ZjllNjRiY2JiZDNiMjZlODJhZTk1MTUxZjBk
OGNlMGZiYWVkLi44MDAxM2YwNWYxZWRlMWJiYzA2NjkwODYyZDgyZGY5M2U0ZmNjOTdmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmgK
QEAgLTQ3NCw3ICs0NzQsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNGb2N1c1BzZXVk
b0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpCiAKIEFMV0FZU19JTkxJTkUgYm9vbCBtYXRj
aGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKIHsKLSAg
ICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRlKGVsZW1l
bnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAgaWYgKEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IHJldHVybiBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICYmIGlzRnJhbWVGb2N1c2VkKGVsZW1l
bnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5k
ZXggMWZjNDI2NWU1Zjc0NDM4YjgxYjg0MjY4NzllZDA0YzZjZTBhMTA5My4uYTI5NWIxOGZjNGRi
OTNkZDg0NzI5ZjU1NTgzODU0YzQ2NWVmYzg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAt
NzQ0LDYgKzc0NCwyNSBAQCB2b2lkIEVsZW1lbnQ6OnNldEZvY3VzKGJvb2wgZmxhZykKIAogICAg
IGZvciAoYXV0byogZWxlbWVudCA9IHRoaXM7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50LT5w
YXJlbnRFbGVtZW50SW5Db21wb3NlZFRyZWUoKSkKICAgICAgICAgZWxlbWVudC0+c2V0SGFzRm9j
dXNXaXRoaW4oZmxhZyk7CisKKyAgICBpZiAoZmxhZykgeworICAgICAgICAvLyBFbGVtZW50cyB0
aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5wdXQgKGZvcm0gaW5wdXRzIGFuZCBjb250ZW50ZWRpdGFi
bGUpIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSB3aGVuIGZvY3VzZWQuCisgICAgICAgIGlm
IChpc1RleHRGaWVsZCgpIHx8IGlzQ29udGVudEVkaXRhYmxlKCkpCisgICAgICAgICAgICBzZXRI
YXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfSBlbHNlCisgICAgICAgIHNldEhhc0ZvY3VzVmlz
aWJsZShmYWxzZSk7Cit9CisKK3ZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNWaXNpYmxlKGJvb2wg
ZmxhZykKK3sKKyAgICBpZiAoIWRvY3VtZW50KCkuc2V0dGluZ3MoKS5mb2N1c1Zpc2libGVFbmFi
bGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChoYXNGb2N1c1Zpc2libGUoKSA9PSBm
bGFnKQorICAgICAgICByZXR1cm47CisKKyAgICBTdHlsZTo6UHNldWRvQ2xhc3NDaGFuZ2VJbnZh
bGlkYXRpb24gc3R5bGVJbnZhbGlkYXRpb24oKnRoaXMsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFz
c0ZvY3VzVmlzaWJsZSk7CisgICAgc2V0Tm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3VzVmlzaWJs
ZSwgZmxhZyk7CiB9CiAKIHZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNXaXRoaW4oYm9vbCBmbGFn
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOTZiZDc2MDNmZWQ3NDFlOTI3MWQ5YmI1YTJlYTYxOGM0
MDc5ODQzYy4uOTQ5Y2JiYzNmOTY1MTc1NzZlZTIzMjZkOTlkYTJmMzg5ODc0ZDcxNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5oCkBAIC0zMTksMTIgKzMxOSwxNCBAQCBwdWJsaWM6CiAgICAgYm9vbCBob3Zl
cmVkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNlckFjdGlv
bkVsZW1lbnRIb3ZlcmVkKCk7IH0KICAgICBib29sIGZvY3VzZWQoKSBjb25zdCB7IHJldHVybiBp
c1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudEZvY3VzZWQoKTsgfQog
ICAgIGJvb2wgaXNCZWluZ0RyYWdnZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rpb25FbGVt
ZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudERyYWdnZWQoKTsgfQorICAgIGJvb2wgaGFzRm9j
dXNWaXNpYmxlKCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3Vz
VmlzaWJsZSk7IH07CiAgICAgYm9vbCBoYXNGb2N1c1dpdGhpbigpIGNvbnN0IHsgcmV0dXJuIGhh
c05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhpbik7IH07CiAKICAgICB2aXJ0dWFsIHZv
aWQgc2V0QWN0aXZlKGJvb2wgPSB0cnVlLCBib29sIHBhdXNlID0gZmFsc2UsIFN0eWxlOjpJbnZh
bGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZTo6QWxsKTsKICAgICB2aXJ0
dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSwgU3R5bGU6OkludmFsaWRhdGlvblNjb3Bl
ID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRG
b2N1cyhib29sKTsKICAgICB2b2lkIHNldEJlaW5nRHJhZ2dlZChib29sKTsKKyAgICB2b2lkIHNl
dEhhc0ZvY3VzVmlzaWJsZShib29sKTsKICAgICB2b2lkIHNldEhhc0ZvY3VzV2l0aGluKGJvb2wp
OwogCiAgICAgT3B0aW9uYWw8aW50PiB0YWJJbmRleFNldEV4cGxpY2l0bHkoKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Tm9kZS5oCmluZGV4IDRjYTliNTg4ZjIwZTk0ZWYzMjU0ZGNhNzhhYmYyYjllZTgwYmEzOTQuLjRl
YjJhYjkyNWZhZjQyNjg1MzU2YTk4ODFjYTNlMzMzZTkxYWQ4YzkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaApAQCAt
NTA4LDYgKzUwOCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNTaGFkb3dS
b290KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzU2hhZG93Um9v
dCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNIVE1MKCkgeyByZXR1cm4gc3RhdGljX2Nh
c3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzSFRNTEVsZW1lbnQpOyB9CiAgICAgc3RhdGljIGludDMy
X3QgZmxhZ0lzTGluaygpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJ
c0xpbmspOyB9CisgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzVmlzaWJsZSgpIHsgcmV0
dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUpOyB9CiAg
ICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzV2l0aGluKCkgeyByZXR1cm4gc3RhdGljX2Nh
c3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzV2l0aGluKTsgfQogICAgIHN0YXRpYyBpbnQz
Ml90IGZsYWdJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8
aW50MzJfdD4oTm9kZUZsYWc6OklzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWQpOyB9CiAjZW5kaWYg
Ly8gRU5BQkxFKEpJVCkKQEAgLTU0OSw2ICs1NTAsNyBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKICAg
ICAgICAgSXNDb21wdXRlZFN0eWxlSW52YWxpZEZsYWcgPSAxIDw8IDI2LAogCisgICAgICAgIEhh
c0ZvY3VzVmlzaWJsZSA9IDEgPDwgMjcsCiAgICAgICAgIC8vIEJpdHMgMjctMzEgYXJlIGZyZWUu
CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IGFlZWQ1YzJi
MzgwNzk2ZTE1NjE3NDA0OTQ2ZWJmZGExYzViNDY2MjkuLmEwNGE5ZTM1MGE2YjQ3YjczY2I5ZGFi
NzAzNmY2ZTM4NGFmN2IwNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAg
LTM1MzIsNiArMzUzMiwxMSBAQCBib29sIEV2ZW50SGFuZGxlcjo6aW50ZXJuYWxLZXlFdmVudChj
b25zdCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQmIGluaXRpYWxLZXlFdmVudAogICAgICAgICBrZXlk
b3duLT5wcmV2ZW50RGVmYXVsdCgpOwogICAgIGtleWRvd24tPnNldFRhcmdldChlbGVtZW50KTsK
IAorICAgIC8vIElmIHRoZSB1c2VyIGludGVyYWN0cyB3aXRoIHRoZSBwYWdlIHZpYSB0aGUga2V5
Ym9hcmQsIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBlbGVtZW50IHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZS4KKyAgICAvLyBKdXN0IHR5cGluZyBhIG1vZGlmaWVyIGtleSBpcyBub3QgY29uc2lk
ZXJlZCB1c2VyIGludGVyYWN0aW9uIHdpdGggdGhlIHBhZ2UsIGJ1dCBTaGlmdCArIGEgKG9yIENh
cHMgTG9jayArIGEpIGlzIGNvbnNpZGVyZWQgYW4gaW50ZXJhY3Rpb24uCisgICAgaWYgKGtleWRv
d24tPm1vZGlmaWVyS2V5cygpLmlzRW1wdHkoKSB8fCAoKGtleWRvd24tPnNoaWZ0S2V5KCkgfHwg
a2V5ZG93bi0+Y2Fwc0xvY2tLZXkoKSkgJiYgIWluaXRpYWxLZXlFdmVudC50ZXh0KCkuaXNFbXB0
eSgpKSkKKyAgICAgICAgZWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOworCiAgICAg
aWYgKGluaXRpYWxLZXlFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6UmF3S2V5RG93bikg
ewogICAgICAgICBlbGVtZW50LT5kaXNwYXRjaEV2ZW50KGtleWRvd24pOwogICAgICAgICAvLyBJ
ZiBmcmFtZSBjaGFuZ2VkIGFzIGEgcmVzdWx0IG9mIGtleWRvd24gZGlzcGF0Y2gsIHRoZW4gcmV0
dXJuIHRydWUgdG8gYXZvaWQgc2VuZGluZyBhIHN1YnNlcXVlbnQga2V5cHJlc3MgbWVzc2FnZSB0
byB0aGUgbmV3IGZyYW1lLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0Nv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmlu
ZGV4IDA3YWJhZDA2MGUwMTNlYjhiN2FjNTYwMGRkNDQxOTZkMmIxYWE5ZmEuLmVhZGRhNzkwOTU5
N2VjMjdhZTVhYTcxOWE2OTVjMzA0MjUxMDI0OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3Vz
Q29udHJvbGxlci5jcHAKQEAgLTUzMyw2ICs1MzMsNyBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6
YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgS2V5
YgogICAgICAgICB9CiAgICAgfQogCisgICAgZWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRy
dWUpOwogICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0
QWxsLCBkaXJlY3Rpb24pOwogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZp
ZXcuY3BwCmluZGV4IDY5YWNmYjBkMWI2YmZkNDhiYmE5Yzk2MWRhNDQ1MzY1M2M0NDUzYmUuLjY4
M2UzNmVmNTVmMmE5MzVkOTBhYjU1MGRjNTk2MWEyMGY5MDhjMzkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zy
YW1lVmlldy5jcHAKQEAgLTIyNjgsOSArMjI2OCwxMCBAQCBib29sIEZyYW1lVmlldzo6c2Nyb2xs
VG9GcmFnbWVudEludGVybmFsKGNvbnN0IFN0cmluZyYgZnJhZ21lbnRJZGVudGlmaWVyKQogICAg
IAogICAgIC8vIElmIHRoZSBhbmNob3IgYWNjZXB0cyBrZXlib2FyZCBmb2N1cywgbW92ZSBmb2N1
cyB0aGVyZSB0byBhaWQgdXNlcnMgcmVseWluZyBvbiBrZXlib2FyZCBuYXZpZ2F0aW9uLgogICAg
IGlmIChhbmNob3JFbGVtZW50KSB7Ci0gICAgICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3Vz
YWJsZSgpKQorICAgICAgICBpZiAoYW5jaG9yRWxlbWVudC0+aXNGb2N1c2FibGUoKSkgeworICAg
ICAgICAgICAgYW5jaG9yRWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOwogICAgICAg
ICAgICAgZG9jdW1lbnQuc2V0Rm9jdXNlZEVsZW1lbnQoYW5jaG9yRWxlbWVudC5nZXQoKSk7Ci0g
ICAgICAgIGVsc2UgeworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgZG9jdW1lbnQuc2V0
Rm9jdXNlZEVsZW1lbnQobnVsbHB0cik7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c05h
dmlnYXRpb25TdGFydGluZ05vZGUoYW5jaG9yRWxlbWVudC5nZXQoKSk7CiAgICAgICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAppbmRleCBlMTgw
Y2NkZmE5ZjY4ZmFhYzA5MTBjMjMzYzIxOGQ3ZWZkNmEwNGE0Li5jYzQ4YzRhNjY4ZDcwOTNmMzIz
YjQwMGY0ZTgwYzEwYzA2NGI4ZTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9F
bGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVu
dFJ1bGVDb2xsZWN0b3IuY3BwCkBAIC0xNTcsNiArMTU3LDggQEAgdm9pZCBFbGVtZW50UnVsZUNv
bGxlY3Rvcjo6Y29sbGVjdE1hdGNoaW5nUnVsZXMoY29uc3QgTWF0Y2hSZXF1ZXN0JiBtYXRjaFJl
cXVlc3QKICAgICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5y
dWxlU2V0LT5saW5rUHNldWRvQ2xhc3NSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogICAgIGlmICht
YXRjaGVzRm9jdXNQc2V1ZG9DbGFzcyhlbGVtZW50KCkpKQogICAgICAgICBjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzUHNldWRvQ2xhc3NSdWxl
cygpLCBtYXRjaFJlcXVlc3QpOworICAgIGlmIChtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3MoZWxlbWVudCgpKSkKKyAgICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNo
UmVxdWVzdC5ydWxlU2V0LT5mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVx
dWVzdCk7CiAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxl
U2V0LT50YWdSdWxlcyhlbGVtZW50KCkubG9jYWxOYW1lKCksIGVsZW1lbnQoKS5pc0hUTUxFbGVt
ZW50KCkgJiYgZWxlbWVudCgpLmRvY3VtZW50KCkuaXNIVE1MRG9jdW1lbnQoKSksIG1hdGNoUmVx
dWVzdCk7CiAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxl
U2V0LT51bml2ZXJzYWxSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxl
U2V0LmNwcAppbmRleCAzYTViNTYxMGJhNzZjMzk2NzQwZjYxMDAxY2ViOGQyZjBhM2Q5OGM5Li5l
NGE5ZjA2NTY2YzMyMTQxMzk2N2UzYzFmNmQxMGE2Yjk4MGUzNTMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlU2V0LmNwcApAQCAtOTgsNiArOTgsNyBAQCB2b2lkIFJ1bGVTZXQ6OmFkZFJ1bGUoY29uc3Qg
U3R5bGVSdWxlJiBydWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZQogICAg
IGNvbnN0IENTU1NlbGVjdG9yKiBjbGFzc1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBD
U1NTZWxlY3RvciogbGlua1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3Rv
ciogZm9jdXNTZWxlY3RvciA9IG51bGxwdHI7CisgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3Vz
VmlzaWJsZVNlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogaG9zdFBz
ZXVkb0NsYXNzU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBjdXN0
b21Qc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9y
KiBzbG90dGVkUHNldWRvRWxlbWVudFNlbGVjdG9yID0gbnVsbHB0cjsKQEAgLTE2Miw2ICsxNjMs
OSBAQCB2b2lkIFJ1bGVTZXQ6OmFkZFJ1bGUoY29uc3QgU3R5bGVSdWxlJiBydWxlLCB1bnNpZ25l
ZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZQogICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3NGb2N1czoKICAgICAgICAgICAgICAgICBmb2N1c1NlbGVjdG9yID0gc2Vs
ZWN0b3I7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIENTU1NlbGVj
dG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZToKKyAgICAgICAgICAgICAgICBmb2N1c1Zpc2li
bGVTZWxlY3RvciA9IHNlbGVjdG9yOworICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NIb3N0OgogICAgICAgICAgICAgICAgIGhv
c3RQc2V1ZG9DbGFzc1NlbGVjdG9yID0gc2VsZWN0b3I7CiAgICAgICAgICAgICAgICAgYnJlYWs7
CkBAIC0yNDksNiArMjUzLDExIEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1
bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKKyAgICBpZiAoZm9jdXNWaXNpYmxlU2VsZWN0b3IpIHsKKyAgICAgICAg
bV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzLmFwcGVuZChydWxlRGF0YSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKICAgICBpZiAodGFnU2VsZWN0b3IpIHsKICAgICAgICAgYWRkVG9S
dWxlU2V0KHRhZ1NlbGVjdG9yLT50YWdRTmFtZSgpLmxvY2FsTmFtZSgpLCBtX3RhZ0xvY2FsTmFt
ZVJ1bGVzLCBydWxlRGF0YSk7CiAgICAgICAgIGFkZFRvUnVsZVNldCh0YWdTZWxlY3Rvci0+dGFn
TG93ZXJjYXNlTG9jYWxOYW1lKCksIG1fdGFnTG93ZXJjYXNlTG9jYWxOYW1lUnVsZXMsIHJ1bGVE
YXRhKTsKQEAgLTM5Niw2ICs0MDUsNyBAQCB2b2lkIFJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFz
KEZ1bmN0aW9uJiYgZnVuY3Rpb24pCiAgICAgdHJhdmVyc2VWZWN0b3IobV9zbG90dGVkUHNldWRv
RWxlbWVudFJ1bGVzKTsKICAgICB0cmF2ZXJzZVZlY3RvcihtX3BhcnRQc2V1ZG9FbGVtZW50UnVs
ZXMpOwogICAgIHRyYXZlcnNlVmVjdG9yKG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzKTsKKyAgICB0
cmF2ZXJzZVZlY3RvcihtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMpOwogICAgIHRyYXZl
cnNlVmVjdG9yKG1fdW5pdmVyc2FsUnVsZXMpOwogfQogCkBAIC00OTcsNiArNTA3LDcgQEAgdm9p
ZCBSdWxlU2V0OjpzaHJpbmtUb0ZpdCgpCiAgICAgbV9ob3N0UHNldWRvQ2xhc3NSdWxlcy5zaHJp
bmtUb0ZpdCgpOwogICAgIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcy5zaHJpbmtUb0ZpdCgp
OwogICAgIG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CisgICAgbV9mb2N1
c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV91bml2ZXJzYWxS
dWxlcy5zaHJpbmtUb0ZpdCgpOwogICAgIG1fcGFnZVJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAg
bV9mZWF0dXJlcy5zaHJpbmtUb0ZpdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvUnVsZVNldC5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCmluZGV4IDk5YWEx
NjBkOTA2ODQ0ZmFkMzRkYzFhMjcwMTZhMDAzNmJkZTMwNzkuLjNkNWI1YjMxNDcwMGM1MGY0NWRj
MTVkODQ2Njc0NmMwZTlhMDY4ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1
bGVTZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKQEAgLTEyOSw2ICsx
MjksNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3ImIHNsb3R0ZWRQc2V1ZG9F
bGVtZW50UnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXM7
IH0KICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciYgcGFydFBzZXVkb0VsZW1lbnRSdWxlcygpIGNv
bnN0IHsgcmV0dXJuIG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVE
YXRhVmVjdG9yKiBmb2N1c1BzZXVkb0NsYXNzUnVsZXMoKSBjb25zdCB7IHJldHVybiAmbV9mb2N1
c1BzZXVkb0NsYXNzUnVsZXM7IH0KKyAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogZm9jdXNWaXNp
YmxlUHNldWRvQ2xhc3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzVmlzaWJsZVBzZXVk
b0NsYXNzUnVsZXM7IH0KICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogdW5pdmVyc2FsUnVsZXMo
KSBjb25zdCB7IHJldHVybiAmbV91bml2ZXJzYWxSdWxlczsgfQogCiAgICAgY29uc3QgVmVjdG9y
PFN0eWxlUnVsZVBhZ2UqPiYgcGFnZVJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlUnVsZXM7
IH0KQEAgLTE2Nyw2ICsxNjgsNyBAQCBwcml2YXRlOgogICAgIFJ1bGVEYXRhVmVjdG9yIG1fc2xv
dHRlZFBzZXVkb0VsZW1lbnRSdWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX3BhcnRQc2V1ZG9F
bGVtZW50UnVsZXM7CiAgICAgUnVsZURhdGFWZWN0b3IgbV9mb2N1c1BzZXVkb0NsYXNzUnVsZXM7
CisgICAgUnVsZURhdGFWZWN0b3IgbV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzOwogICAg
IFJ1bGVEYXRhVmVjdG9yIG1fdW5pdmVyc2FsUnVsZXM7CiAgICAgVmVjdG9yPFN0eWxlUnVsZVBh
Z2UqPiBtX3BhZ2VSdWxlczsKICAgICB1bnNpZ25lZCBtX3J1bGVDb3VudCB7IDAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAppbmRleCBjN2Y4MWIy
YzQ3N2ZiNDg3NmQ3YTU2MGYxNDc5ZWQ2OWI0Y2M3YTA1Li5kOTYxZjc5NmU2ZjU3OTM0YTIzOTZh
ZDY0ZjAyMzA4NTU0OTgyNTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFy
aW5nUmVzb2x2ZXIuY3BwCkBAIC0yMjcsNiArMjI3LDggQEAgYm9vbCBTaGFyaW5nUmVzb2x2ZXI6
OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudChjb25zdCBDb250ZXh0JiBjb250ZXh0LCBjb25zdCBT
dHkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50LmZvY3Vz
ZWQoKSAhPSBlbGVtZW50LmZvY3VzZWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlm
IChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICE9IGVsZW1lbnQuaGFzRm9jdXNW
aXNpYmxlKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoY2FuZGlkYXRlRWxlbWVu
dC5oYXNGb2N1c1dpdGhpbigpICE9IGVsZW1lbnQuaGFzRm9jdXNXaXRoaW4oKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50LmlzQmVpbmdEcmFnZ2VkKCkg
IT0gZWxlbWVudC5pc0JlaW5nRHJhZ2dlZCgpKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGNjYmU1OWJlMjczOWIyZjNlZTZj
OTcxOWZiZWYzMTM0MGQ2NTRkYjIuLmNjYTk4MGRjNzJkMzRlNTY3ZDI2YzI0MjI0MDE5ZTA3NThl
OWQxNTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wMy0wMiAgTWFudWVsIFJlZ28gQ2Fz
YXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0b3JzXSA6Zm9jdXMt
dmlzaWJsZSBpbXBsZW1lbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIyMDI4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NDY3OTI0Mz4K
KworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICAqIHBsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIGZvY3VzLXZpc2libGUtMDExLmh0bWwgYXMgaXQg
dGltZW91dHMgaW4gaU9TLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgtZXhwZWN0ZWQu
dHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgtZXhwZWN0ZWQudHh0LgorCiAyMDIx
LTAzLTAxICBBbmRyZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBtZXRob2QgdG8gcmV0cmlldmUgcmVsYXRl
ZCBlcnJvciBtZXNzYWdlIGVsZW1lbnRzIHNob3VsZCByZXR1cm4gbm90LWlnbm9yZWQgYWNjZXNz
aWJpbGl0eSBlbGVtZW50cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDIwZTY1
YzBlYmJhY2VhOTAzZTk1NTBlNjc2Mjc5ZWE0NzVlZWEyMGEuLmE4NTg0MTBlNjFhYzhjMWUzYTli
OTRiYTdiYzExM2I4ZGE2MjQ4ZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI5IEBACisyMDIxLTAzLTAyICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0Bp
Z2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVu
dGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjIwMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0Njc5MjQzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFVwZGF0ZSBleHBlY3RhdGlvbnMsIG1vc3Qg
b2YgdGhlIDpmb2N1cy12aXNpYmxlIHRlc3RzIGFyZSBwYXNzaW5nIG5vdy4KKworICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAw
MS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwNy5odG1sOiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMgdGVzdAorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA4LWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3Jt
LXRlc3RzL3dwdC9wdWxsLzI3NjU2KS4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbDogSW1w
b3J0IGxhc3QgY2hhbmdlcyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKHNlZSBodHRwczovL2dpdGh1
Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdC9wdWxsLzI3NzAwKS4KKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMTQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dDoKKwogMjAyMS0wMi0yOCAg
QW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBCbGVuZGluZyBv
ZiBib3JkZXItaW1hZ2Utd2lkdGggc2hvdWxkIGJlIGRpc2NyZXRlIGJldHdlZW4gImF1dG8iIHZh
bHVlcyBhbmQgb3RoZXIgdHlwZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0w
MDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQK
aW5kZXggYzEzYmUwMGZkOTVlNzNkYjQxNzhkYzI4ZTRkNDM5MDNhOTlkNDdmNC4uZDA2MDU0OGNm
YTJkMWFjNzcyZjBjMTViNjI1OGEyYjFkNzg4NjQzMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZv
Y3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAw
MS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogUEFTUyBDaGVja3MgdGhhdCAnOmZv
Y3VzJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVudCBoYW5kbGVyCi1G
QUlMIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5z
aWRlICdmb2N1cycgZXZlbnQgaGFuZGxlciBhc3NlcnRfdW5yZWFjaGVkOiAnOmZvY3VzLXZpc2li
bGUnICBpcyBhbiBpbnZhbGlkIHNlbGVjdG9yLiBTeW50YXhFcnJvcjogRXJyb3I6IGFzc2VydF9l
cXVhbHM6ICc6Zm9jdXMtdmlzaWJsZScgbWF0Y2hlcyBldmVudC50YXJnZXQgZXhwZWN0ZWQgbnVs
bCBidXQgZ290IEVsZW1lbnQgbm9kZSA8aW5wdXQgdHlwZT0idGV4dCI+PC9pbnB1dD4gUmVhY2hl
ZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNl
dWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgogUEFTUyBDaGVj
a3MgdGhhdCAnOmZvY3VzLXdpdGhpbicgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1
cycgZXZlbnQgaGFuZGxlcgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0w
MDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4
dAppbmRleCAyN2UxYTlhZjJhYmU4ZjY3Yjg4ZWJmYzc3MGNlMzMzNDIzNzkxZWRlLi43ZmU1MDMz
Y2U4YTQ4YzY2NjgxODkyOTJkOGEzOGI5NzdlYmYzY2QyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4t
Zm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1c2luLWV2
ZW50LTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogUEFTUyBDaGVja3MgdGhh
dCAnOmZvY3VzJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhh
bmRsZXIKLUZBSUwgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0
Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIgYXNzZXJ0X3VucmVhY2hlZDogJzpm
b2N1cy12aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4gU3ludGF4RXJyb3I6IEVycm9y
OiBhc3NlcnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNoZXMgZXZlbnQudGFyZ2V0IGV4
cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0IHR5cGU9InRleHQiPjwvaW5w
dXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXZp
c2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxl
cgogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXdpdGhpbicgcHNldWRvLWNsYXNzIG1hdGNoZXMg
aW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNp
YmxlLTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDg1MGM3YWIxNzAyYjM5MzI0OTAzNGQwYjMzNmVjOTU2YTNjMTk0MzAuLmVjNzdjZWZjMDI1
ODFlNjU1MTU3ODAzZTY5OGU0MzhkM2I2ODkzMWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dApA
QCAtNSw1ICs1LDUgQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4g
dGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogRm9jdXMgbWUuCiAKLUZB
SUwgS2V5Ym9hcmQgZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVh
bHM6IG91dGxpbmVDb2xvciBmb3IgRElWI2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdi
KDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgS2V5Ym9hcmQgZm9jdXMg
c2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAwMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CmluZGV4
IGI1YTllZjQxNGQyZjMwZDhjZmIxMmU4Y2IwNmRkOWJkMjM5OWM5YTAuLjkzNTg3ZGRkYjYyYjQ1
ZmE0ZjA1OWM2YWU5ZTY1Y2I3ODllYzc1Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
Mi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVjdGVkLnR4dApAQCAt
MTgsMTggKzE4LDE4IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIAogCi1GQUlMIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQxIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDEgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4
LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0MiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5w
dXQyIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBh
c3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MyBzaG91bGQgYmUgZ3Jl
ZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlM
IEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ0IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDQgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2Io
MCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0NSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1
cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5Q
VVQjaW5wdXQ1IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBn
b3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NiBzaG91bGQg
YmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCki
Ci1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ3IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFs
czogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDcgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVk
ICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVt
ZW50IElOUFVUI2lucHV0OCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFz
IGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBm
b3IgSU5QVVQjaW5wdXQ4IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCki
IGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDkg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OSBz
aG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwg
MCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMCB2aWEgbW91c2Ugc2hvdWxk
IG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2Vy
dF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMCBzaG91bGQgYmUgZ3JlZW4g
ZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxp
bmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigw
LCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5Q
VVQjaW5wdXQxMiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1
cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5Q
VVQjaW5wdXQxMiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQg
Z290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMyB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMyBzaG91
bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwg
MCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgVEVYVEFSRUEjaW5wdXQxNCB2aWEgbW91c2Ugc2hvdWxk
IG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2Vy
dF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgVEVYVEFSRUEjaW5wdXQxNCBzaG91bGQgYmUgZ3Jl
ZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCitQQVNT
IEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVu
dCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBp
dCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0
MyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ0IHZpYSBtb3VzZSBz
aG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQK
K1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBl
bGVtZW50IElOUFVUI2lucHV0NiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQj
aW5wdXQ3IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9y
dHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1v
dXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBp
bnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OSB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQg
SU5QVVQjaW5wdXQxMSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQx
MiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMyB2aWEgbW91c2Ug
c2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0
CitQQVNTIEZvY3VzIGVsZW1lbnQgVEVYVEFSRUEjaW5wdXQxNCB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDYtZXhwZWN0ZWQudHh0CmluZGV4IDVhYWNkNGIxMWYzOGM2M2MxZTY5Njk1OGY1ZDYwNjRmMTQ2
Y2JjNDguLjk4MTE1YjFlMTJkMDBkMDY0NWRiMzk5OTc4YWU4ZWI2Y2YwYjI1MmMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA2LWV4cGVjdGVkLnR4dApAQCAtNSw1ICs1LDUgQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVk
IGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUK
IAogRm9jdXMgbWUKIAotRkFJTCBGb2N1cyBzaG91bGQgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNp
YmxlIG9uIGNvbnRlbnQgZWRpdGFibGUgZGl2cyBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3Ig
Zm9yIFNQQU4jZWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0
IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBGb2N1cyBzaG91bGQgYWx3YXlzIG1hdGNoIDpmb2N1
cy12aXNpYmxlIG9uIGNvbnRlbnQgZWRpdGFibGUgZGl2cwogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4
dAppbmRleCA4YmI5Y2YzMDcwMGYxMzU4MmVhNzhhYjIxNzNlM2EyMjJiOWNkYWNkLi45ZjFlZTA5
ODlkYzE3N2E3MjRhYjdkYzljY2M3YTJlMDg3MmQ2ZmM0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMDctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50
eHQKQEAgLTIsOSArMiw5IEBAIFRoaXMgdGVzdCBjaGVja3MgdGhhdCB1c2luZyB0aGUga2V5Ym9h
cmQgaW4gYSB3YXkgdGhhdCBkb2VzIG5vdCBtb3ZlIGZvY3VzIHN0aWxsCiBJZiB0aGUgdXNlci1h
Z2VudCBkb2VzIG5vdCBjbGFpbSB0byBzdXBwb3J0IHRoZSA6Zm9jdXMtdmlzaWJsZSBwc2V1ZG8t
Y2xhc3MgdGhlbiBTS0lQIHRoaXMgdGVzdC4KIFVzZSB0aGUgbW91c2UgdG8gZm9jdXMgdGhlIGVs
ZW1lbnQgYmVsb3cgdGhhdCBzYXlzICJDbGljayBtZS4iCiBJZiB0aGUgZWxlbWVudCBoYXMgYSBy
ZWQgb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4KLVByZXNzIHRoZSBT
SElGVCBrZXkuCitQcmVzcyB0aGUgRU5URVIga2V5LgogSWYgdGhlIGVsZW1lbnQgbm93IGhhcyBh
IGdyZWVuIG91dGxpbmUgYW5kIG5vdCByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1
bHQgaXMgU1VDQ0VTUy4KIENsaWNrIG1lLgogCi1GQUlMIFVzaW5nIGtleWJvYXJkIHdoaWxlIGVs
ZW1lbnQgaXMgZm9jdXNlZCBzaG91bGQgdHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsgdXNpbmcgbW91
c2Ugd2l0aG91dCBtb3ZpbmcgZm9jdXMgc2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1vdmluZyBmb2N1
cyB1c2luZyBtb3VzZSBzaG91bGQgY2FuY2VsIGl0LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
cmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgVXNpbmcga2V5Ym9h
cmQgd2hpbGUgZWxlbWVudCBpcyBmb2N1c2VkIHNob3VsZCB0cmlnZ2VyIDpmb2N1cy12aXNpYmxl
OyB1c2luZyBtb3VzZSB3aXRob3V0IG1vdmluZyBmb2N1cyBzaG91bGQgbm90IGNhbmNlbCBpdDsg
bW92aW5nIGZvY3VzIHVzaW5nIG1vdXNlIHNob3VsZCBjYW5jZWwgaXQuCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwNy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKaW5kZXgg
MGZjMTk2Y2JlY2RmMWIxOThhNWJhZGNlMzY5NGIxZWM3Y2M5NWQ0Zi4uMTQ5YTZmNjhmZThjMzAw
ZjVkZDE3MmI5N2QyZjI5NzRmNWUzMTIxMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAKICAg
ICA8bGk+SWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9ydCB0aGUgPGNv
ZGU+OmZvY3VzLXZpc2libGU8L2NvZGU+IHBzZXVkby1jbGFzcyB0aGVuIFNLSVAgdGhpcyB0ZXN0
LjwvbGk+CiAgICAgPGxpPlVzZSB0aGUgbW91c2UgdG8gZm9jdXMgdGhlIGVsZW1lbnQgYmVsb3cg
dGhhdCBzYXlzICJDbGljayBtZS4iPC9saT4KICAgICA8bGk+SWYgdGhlIGVsZW1lbnQgaGFzIGEg
cmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuPC9saT4KLSAgICA8
bGk+UHJlc3MgdGhlIFNISUZUIGtleS48L2xpPgorICAgIDxsaT5QcmVzcyB0aGUgRU5URVIga2V5
LjwvbGk+CiAgICAgPGxpPklmIHRoZSBlbGVtZW50IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFu
ZCBub3QgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuPC9s
aT4KICAgPC9vbD4KIApAQCAtNjUsNyArNjUsOCBAQAogICAgICAgICBvbmUuYWRkRXZlbnRMaXN0
ZW5lcigia2V5dXAiLCB0LnN0ZXBfZnVuYyh0ZXN0X21vZGFsaXR5X2NoYW5nZSkpOwogICAgICAg
ICBvbmUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCBoYW5kbGVfaW5pdGlhbF9mb2N1cyk7
CiAKLSAgICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9uZSwgIlx1RTA1MCIpOworICAgICAg
ICBjb25zdCBlbnRlciA9ICJcdUUwMDciOworICAgICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXMo
b25lLCBlbnRlcik7CiAgICAgICB9KTsKIAogICAgICAgY29uc3QgdGVzdF9tb2RhbGl0eV9jaGFu
Z2UgPSB0LnN0ZXBfZnVuYygoKSA9PiB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA4LWV4cGVjdGVkLnR4dAppbmRleCAwNDc3
MTFlODZkOTdhYzA5NGZiOTY4ZDkzNDU5NDg4MmFjOGU2MDA3Li44MGZkNmViNGFhMWY2ZmEwZGIw
MDdlOGVkM2M0YmY1NTE0YWU2MjE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBlY3RlZC50eHQKQEAgLTYsNyAr
Niw1IEBAIElmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3Jh
bW1hdGljYWxseS4iIGhhcyBhIHJlZCBiYWNrZ3JvCiBUYWIgdG8gbWUgYW5kIHByZXNzIEVOVEVS
LgogSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4KIAotSGFybmVzcyBFcnJvciAo
VElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgUHJvZ3JhbW1hdGljIGZvY3VzIGFm
dGVyIGtleXByZXNzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBUZXN0IHRpbWVkIG91dAor
RkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIga2V5cHJlc3Mgc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgRElWI2VsIHNob3VsZCBi
ZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMS1leHBlY3RlZC50eHQKaW5kZXggMzAzMWRjN2NiODIyNjY5MDM1YmE5OWU3ZGZk
NmIyNGM0MmY0MTUxNS4uYWVmMzlhN2U5Y2E1NDkyMTQyMmYzZmUzNWYyZWFhZGM5OWQ1NzQ2ZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDkgQEAKIFRoaXMgdGVzdCBjaGVj
a3MgdGhhdCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVyIGEga2V5Ym9hcmQgZXZlbnQsIGV2
ZW4gaWYgdGhlIGV2ZW50IGhhbmRsZXIgY2FsbHMgcHJldmVudERlZmF1bHQoKSBvbiB0aGUgZXZl
bnQuCiBDbGljayAiQ2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuIi4KIFByZXNzIHRo
ZSByaWdodCBhcnJvdyBrZXkuCi1JZiAiRm9jdXMgbW92ZXMgaGVyZS4iIGhhcyBhIHJlZCBiYWNr
Z3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVl
biBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorSWYgdGhlIGVsZW1l
bnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUu
IElmIGl0IGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NF
U1MuCiAKLUNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LiAgRm9jdXMgbW92ZXMgaGVy
ZS4KK0NsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LgogCi1IYXJuZXNzIEVycm9yIChU
SU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotVElNRU9VVCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVz
IGV2ZW4gaWYgcHJldmVudERlZmF1bHQoKSBpcyBjYWxsZWQgVGVzdCB0aW1lZCBvdXQKK1BBU1Mg
OmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2FsbGVk
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDExLmh0bWwKaW5kZXggYjBkYWYzNGJhOGRkOTZmMzQzZTY4N2NlZjg1MjUyM2M5MmFlMmMzOS4u
Y2YxODZkMjhiODMyZTA3YTZlMDE3ZWM1NzMyNjRkYmUyZDEzMjFlYyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDExLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwKQEAgLTIx
LDExICsyMSwxMSBAQAogICAgICAgYm9yZGVyOiAwOwogICAgIH0KIAotICAgICNuZXh0OmZvY3Vz
LXZpc2libGUgeworICAgIDpmb2N1cy12aXNpYmxlIHsKICAgICAgIG91dGxpbmU6IGdyZWVuIHNv
bGlkIDVweDsKICAgICB9CiAKLSAgICAjbmV4dDpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHsK
KyAgICA6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7CiAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZWQ7CiAgICAgICBvdXRsaW5lOiAwOwogICAgIH0KQEAgLTM3LDMwICszNywzMyBAQAogICA8
dWwgaWQ9Imluc3RydWN0aW9ucyI+CiAgICAgPGxpPkNsaWNrICJDbGljayBoZXJlIGFuZCBwcmVz
cyByaWdodCBhcnJvdy4iLjwvbGk+CiAgICAgPGxpPlByZXNzIHRoZSByaWdodCBhcnJvdyBrZXku
PC9saT4KLSAgICA8bGk+SWYgIkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMgYSByZWQgYmFja2dyb3Vu
ZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4KKyAgICA8bGk+SWYgdGhlIGVsZW1l
bnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUu
CiAgICAgICAgIElmIGl0IGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIFNVQ0NFU1MuPC9saT4KICAgPC91bD4KICAgPGJyIC8+Ci0gIDxidXR0b24gaWQ9InN0YXJ0
IiB0YWJpbmRleD0iMCI+Q2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuPC9idXR0b24+
Ci0gIDxidXR0b24gaWQ9Im5leHQiIHRhYmluZGV4PSItMSI+Rm9jdXMgbW92ZXMgaGVyZS48L2J1
dHRvbj4KKyAgPGRpdiBpZD0idGFyZ2V0IiB0YWJpbmRleD0iMCI+Q2xpY2sgaGVyZSBhbmQgcHJl
c3MgcmlnaHQgYXJyb3cuPC9kaXY+CiAgIDxzY3JpcHQ+Ci0gICAgc3RhcnQuYWRkRXZlbnRMaXN0
ZW5lcigna2V5ZG93bicsIChlKSA9PiB7CisgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtl
eWRvd24iLCAoZSkgPT4geworICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0pOworICAg
IHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXl1cCIsIChlKSA9PiB7CisgICAgICBlLnByZXZl
bnREZWZhdWx0KCk7CisgICAgfSk7CisgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleXBy
ZXNzIiwgKGUpID0+IHsKICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKLSAgICAgIG5leHQuZm9j
dXMoKTsKICAgICB9KTsKLQogICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24odCkgewotICAgICAgbmV4
dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsIHQuc3RlcF9mdW5jKCgpID0+IHsKLSAgICAgICAg
YXNzZXJ0X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKG5leHQpLm91dGxpbmVDb2xvciwgInJnYigw
LCAxMjgsIDApIiwgYG91dGxpbmVDb2xvciBmb3IgJHtuZXh0LnRhZ05hbWV9IyR7bmV4dC5pZH0g
c2hvdWxkIGJlIGdyZWVuYCk7Ci0gICAgICAgIGFzc2VydF9ub3RfZXF1YWxzKGdldENvbXB1dGVk
U3R5bGUobmV4dCkuYmFja2dyb3VuZENvbG9yLCAicmdiKDI1NSwgMCwgMCkiLCBgYmFja2dyb3Vu
ZENvbG9yIGZvciAke25leHQudGFnTmFtZX0jJHtuZXh0LmlkfSBzaG91bGQgTk9UIGJlIHJlZGAp
OwotICAgICAgICB0LmRvbmUoKQotICAgICAgfSkpOworICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlz
dGVuZXIoImZvY3VzIiwgKCkgPT4geworICAgICAgICBjb25zdCBhcnJvd19yaWdodCA9ICJcdWUw
MTQiOworICAgICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXModGFyZ2V0LCBhcnJvd19yaWdodCk7
CisgICAgICB9KTsKIAotICAgICAgLy8gXHVlMDE0IC0+IEFSUk9XX1JJR0hUCi0gICAgICB0ZXN0
X2RyaXZlci5zZW5kX2tleXMoc3RhcnQsICJcdWUwMTQiKS5jYXRjaCh0LnN0ZXBfZnVuYygoKSA9
PiB7Ci0gICAgICAgIGFzc2VydF90cnVlKGZhbHNlLCAic2VuZF9rZXlzIG5vdCBpbXBsZW1lbnRl
ZCB5ZXQiKTsKLSAgICAgICAgdC5kb25lKCk7CisgICAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5l
cigia2V5dXAiLCB0LnN0ZXBfZnVuY19kb25lKChlKSA9PiB7CisgICAgICAgIGFzc2VydF9lcXVh
bHMoZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLm91dGxpbmVDb2xvciwgInJnYigwLCAxMjgsIDAp
IiwgYG91dGxpbmVDb2xvciBmb3IgJHt0YXJnZXQudGFnTmFtZX0jJHt0YXJnZXQuaWR9IHNob3Vs
ZCBiZSBncmVlbmApOworICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhnZXRDb21wdXRlZFN0eWxl
KHRhcmdldCkuYmFja2dyb3VuZENvbG9yLCAicmdiKDI1NSwgMCwgMCkiLCBgYmFja2dyb3VuZENv
bG9yIGZvciAke3RhcmdldC50YWdOYW1lfSMke3RhcmdldC5pZH0gc2hvdWxkIE5PVCBiZSByZWRg
KTsKICAgICAgIH0pKTsKKworICAgICAgdGVzdF9kcml2ZXIuY2xpY2sodGFyZ2V0KTsKICAgICB9
LCAiOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMgY2Fs
bGVkIik7CiAgIDwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDEzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKaW5kZXgg
NmIyYTI0ZTFjM2ZmOTM3OTM3ZGFhMjY5NzZmYjM1YzJmODQxZmVjNi4uNDlhZDhjZTljM2MzYzFj
NDEyYTBiOWQ2MzZiNGFmZDY2OWM1MzhjNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEz
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0CkBAIC04
LDcgKzgsNSBAQCBJZiB0aGUgZWxlbWVudCB0aGF0IHNheXMgIlRhcmdldCIgaGFzIGEgZ3JlZW4g
b3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgYQogSW5pdGlhbAogVGFyZ2V0CiAKLUhh
cm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1GQUlMIDpmb2N1cy12aXNp
YmxlIGRvZXMgbm90IG1hdGNoIGFmdGVyIG1vdXNlIGNsaWNrIGV2ZW4gaWYgcHJldmlvdXMgZm9j
dXNlZCBlbGVtZW50IHdhcyBtYXRjaGluZyA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBv
dXRsaW5lQ29sb3IgZm9yIERJViNpbml0aWFsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdi
KDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlzaWJs
ZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3Vz
ZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3Rl
ZC50eHQKaW5kZXggNmFkZTU1MzIzMWQ4N2VhMGU0ZTFkM2M4MGFhMzZiYjMyMWY3MDcwMi4uZGQy
ZjI5YTg4OTZiNDI5Y2YzOGY5Y2YxMmQ0OGI1YzE0YjUwOWUxNiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0
ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCiBUYXJnZXQKIAotRkFJTCA6Zm9jdXMtdmlzaWJsZSBt
YXRjaGVzIGFmdGVyIHNjcmlwdCBmb2N1cyBtb3ZlIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRD
b2xvciBmb3IgSU5QVVQjaW5wdXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUs
IDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK0ZBSUwgOmZvY3VzLXZpc2libGUgbWF0Y2hl
cyBhZnRlciBzY3JpcHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3Ig
Zm9yIERJViN0YXJnZXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigwLCAyNTUsIDApIiBi
dXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKaW5kZXggM2Q4
MTczZThiOGE5Nzg1YTMyMWUyNTExODg2M2UwYmNhZTdlNjA3MS4uNDEyYWMzNDQ5ZDk3Y2MzMDk5
NmI5MWVlNTE3ZWIwMTI4NWM4N2QwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQudHh0CkBAIC0xLDUg
KzEsNSBAQAogSW5pdGlhbAogCiAKLUZBSUwgOmZvY3VzLXZpc2libGUgYWx3YXlzIG1hdGNoIG9u
IHRleHQgaW5wdXRzIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBmb3IgSU5QVVQjdGFy
Z2V0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdi
KDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRjaCBvbiB0ZXh0IGlu
cHV0cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0
aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDdj
Y2Y0NjIzMWEwYWYzYmI4YjNlNDk0OGFkNGI2NzZmNzAxZTY3YzIuLjllYmU2NjNlNTNjMTFiY2Zl
YjlhMzc5ZGI0MWI5M2RhMDY4OWFmNDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0
RXhwZWN0YXRpb25zCkBAIC0zMzk0LDYgKzMzOTQsNyBAQCB3ZWJraXQub3JnL2IvMjA3ODU4IGZh
c3QvY2FudmFzL3dlYmdsL3NpbXVsYXRlZC12ZXJ0ZXhBdHRyaWIwLWludmFsaWQtaW5kaWNpZXMu
aAogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9i
LzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDcuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDku
aHRtbCBbIFNraXAgXQord2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEuaHRtbCBbIFNraXAgXQog
d2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTIuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIw
OTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMTMuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvaG92ZXItMDAyLmh0bWwgWyBTa2lw
IF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMDQ3NzExZTg2ZDk3YWMwOTRmYjk2OGQ5MzQ1OTQ4ODJhYzhlNjAwNwotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTIgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IGZv
Y3VzaW5nIGFuIGVsZW1lbnQgYWZ0ZXIgYSBrZXlwcmVzcyBjYXVzZXMgOmZvY3VzLXZpc2libGUg
dG8gbWF0Y2guCitVc2UgdGhlIHRhYiBrZXkgdG8gbW92ZSBmb2N1cyB0byB0aGUgYnV0dG9uIGJl
bG93IHRoYXQgc2F5cyAiVGFiIHRvIG1lIGFuZCBwcmVzcyBFTlRFUi4iCitQcmVzcyBFTlRFUi4K
K0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGlj
YWxseS4iIGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlM
VVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJl
c3VsdCBpcyBTVUNDRVNTLgorCitUYWIgdG8gbWUgYW5kIHByZXNzIEVOVEVSLgorSSB3aWxsIGJl
IGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4KKworSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1l
c3NhZ2UgPSBudWxsCisKK1RJTUVPVVQgUHJvZ3JhbW1hdGljIGZvY3VzIGFmdGVyIGtleXByZXNz
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBUZXN0IHRpbWVkIG91dAorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421926</attachid>
            <date>2021-03-02 05:46:28 -0800</date>
            <delta_ts>2021-03-02 10:00:59 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-222028-20210302144626.patch</filename>
            <type>text/plain</type>
            <size>39220</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNjg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjY5OGUwNmZkZjllYjdl
MTJmODNlNDA1M2ZjZDk4MzJmMjcwMjRmYy4uYzU0ZWI4MGIyM2U3ZGYyYTZhMThjZTk2M2M1ZDI3
N2E4NDJmNjcxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIxLTAzLTAyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
Lzc0Njc5MjQzPgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IEFkZCBiYXNpYyA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRhdGlvbiBiZWhpbmQgdGhlIEZvY3Vz
VmlzaWJsZUVuYWJsZWQgZXhwZXJpbWVudGFsIGZlYXR1cmUgZmxhZy4KKyAgICAgICAgVGhpcyBw
YXRjaCBpbXBsZW1lbnRzIHRoZSBoZXVyaXN0aWNzIGRlZmluZWQgaW4gdGhlIHNwZWMgKGh0dHBz
Oi8vZHJhZnRzLmNzc3dnLm9yZy9zZWxlY3RvcnMtNC8jdGhlLWZvY3VzLXZpc2libGUtcHNldWRv
KSwKKyAgICAgICAgZXhjZXB0IHRoZSBvbmVzIHJlbGF0ZWQgdG8gc2NyaXB0IGZvY3VzLgorCisg
ICAgICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLSoKKworICAgICAgICAqIGNzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVu
Y3Rpb25zLmg6CisgICAgICAgIChXZWJDb3JlOjptYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3MpOiBDaGVjayBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpLgorICAgICAgICAqIGRvbS9FbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnNldEZvY3VzKTogV2hlbiBhbiBl
bGVtZW50IGxvc2VzIGZvY3VzIGl0IGFsd2F5cyBjYWxsIHNldEhhc0ZvY3VzVmlzaWJsZShmYWxz
ZSkuIFdoZW4gYW4gZWxlbWVudCBnZXRzIGZvY3VzZWQKKyAgICAgICAgaXQgY2FsbHMgc2V0SGFz
Rm9jdXNWaXNpYmxlKHRydWUpIGZvciBlbGVtZW50cyB0aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5w
dXQgKGFzIHRoZXkgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlKS4KKyAgICAgICAgKFdlYkNv
cmU6OkVsZW1lbnQ6OnNldEhhc0ZvY3VzVmlzaWJsZSk6IE5ldyBtZXRob2QgZ2F0ZWQgYmVoaW5k
IHRoZSBleHBlcmltZW50YWwgZmxhZy4KKyAgICAgICAgKiBkb20vRWxlbWVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6RWxlbWVudDo6aGFzRm9jdXNWaXNpYmxlIGNvbnN0KTogQWRkIG5ldyBtZXRo
b2QuCisgICAgICAgICogZG9tL05vZGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6OmZsYWdI
YXNGb2N1c1Zpc2libGUpOiBBZGQgbmV3IGZsYWcgZm9yIDpmb2N1cy12aXNpYmxlIG1hdGNoaW5n
LgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2
ZW50SGFuZGxlcjo6aW50ZXJuYWxLZXlFdmVudCk6IElmIHRoZSB1c2VyIGludGVyYWN0cyB3aXRo
IHRoZSBwYWdlIHZpYSBrZXlib2FyZCwgY2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkuCisg
ICAgICAgIEF2b2lkIHRoYXQgZm9yIG1vZGlmaWVyIGtleXMuCisgICAgICAgICogcGFnZS9Gb2N1
c0NvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZh
bmNlRm9jdXNJbkRvY3VtZW50T3JkZXIpOiBDYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBm
b3Iga2V5Ym9hcmQgZm9jdXMuCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwpOiBDYWxsIHNl
dEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgYW5jaG9yIGZvY3VzLgorICAgICAgICAqIHN0eWxl
L0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpFbGVt
ZW50UnVsZUNvbGxlY3Rvcjo6Y29sbGVjdE1hdGNoaW5nUnVsZXMpOiBBZGQgOmZvY3VzLXZpc2li
bGUgcnVsZXMgc3R1ZmYgbGlrZSB3ZSBhbHJlYWR5IGhhdmUgZm9yIDpmb2N1cy4KKyAgICAgICAg
KiBzdHlsZS9SdWxlU2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojph
ZGRSdWxlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6UnVsZVNldDo6dHJhdmVy
c2VSdWxlRGF0YXMpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojpz
aHJpbmtUb0ZpdCk6IERpdHRvLgorICAgICAgICAqIHN0eWxlL1J1bGVTZXQuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpSdWxlU2V0Ojpmb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzIGNv
bnN0KTogRGl0dG8uCisgICAgICAgICogc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdp
dGhFbGVtZW50IGNvbnN0KTogQWRkIGNoZWNrIGZvciBoYXNGb2N1c1Zpc2libGUoKS4KKwogMjAy
MS0wMy0wMSAgQW5kcmVzIEdvbnphbGV6ICA8YW5kcmVzZ18yMkBhcHBsZS5jb20+CiAKICAgICAg
ICAgV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgbWV0aG9kIHRvIHJldHJpZXZlIHJlbGF0
ZWQgZXJyb3IgbWVzc2FnZSBlbGVtZW50cyBzaG91bGQgcmV0dXJuIG5vdC1pZ25vcmVkIGFjY2Vz
c2liaWxpdHkgZWxlbWVudHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0
b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hl
Y2tlclRlc3RGdW5jdGlvbnMuaAppbmRleCA2Zjc3ZjllNjRiY2JiZDNiMjZlODJhZTk1MTUxZjBk
OGNlMGZiYWVkLi44MDAxM2YwNWYxZWRlMWJiYzA2NjkwODYyZDgyZGY5M2U0ZmNjOTdmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmgK
QEAgLTQ3NCw3ICs0NzQsMTAgQEAgQUxXQVlTX0lOTElORSBib29sIG1hdGNoZXNGb2N1c1BzZXVk
b0NsYXNzKGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQpCiAKIEFMV0FZU19JTkxJTkUgYm9vbCBtYXRj
aGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xhc3MoY29uc3QgRWxlbWVudCYgZWxlbWVudCkKIHsKLSAg
ICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpmb3JjZVBzZXVkb1N0YXRlKGVsZW1l
bnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZSk7CisgICAgaWYgKEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3NGb2N1c1Zpc2libGUpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IHJldHVybiBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICYmIGlzRnJhbWVGb2N1c2VkKGVsZW1l
bnQpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5k
ZXggMWZjNDI2NWU1Zjc0NDM4YjgxYjg0MjY4NzllZDA0YzZjZTBhMTA5My4uYTI5NWIxOGZjNGRi
OTNkZDg0NzI5ZjU1NTgzODU0YzQ2NWVmYzg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAt
NzQ0LDYgKzc0NCwyNSBAQCB2b2lkIEVsZW1lbnQ6OnNldEZvY3VzKGJvb2wgZmxhZykKIAogICAg
IGZvciAoYXV0byogZWxlbWVudCA9IHRoaXM7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50LT5w
YXJlbnRFbGVtZW50SW5Db21wb3NlZFRyZWUoKSkKICAgICAgICAgZWxlbWVudC0+c2V0SGFzRm9j
dXNXaXRoaW4oZmxhZyk7CisKKyAgICBpZiAoZmxhZykgeworICAgICAgICAvLyBFbGVtZW50cyB0
aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5wdXQgKGZvcm0gaW5wdXRzIGFuZCBjb250ZW50ZWRpdGFi
bGUpIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSB3aGVuIGZvY3VzZWQuCisgICAgICAgIGlm
IChpc1RleHRGaWVsZCgpIHx8IGlzQ29udGVudEVkaXRhYmxlKCkpCisgICAgICAgICAgICBzZXRI
YXNGb2N1c1Zpc2libGUodHJ1ZSk7CisgICAgfSBlbHNlCisgICAgICAgIHNldEhhc0ZvY3VzVmlz
aWJsZShmYWxzZSk7Cit9CisKK3ZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNWaXNpYmxlKGJvb2wg
ZmxhZykKK3sKKyAgICBpZiAoIWRvY3VtZW50KCkuc2V0dGluZ3MoKS5mb2N1c1Zpc2libGVFbmFi
bGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChoYXNGb2N1c1Zpc2libGUoKSA9PSBm
bGFnKQorICAgICAgICByZXR1cm47CisKKyAgICBTdHlsZTo6UHNldWRvQ2xhc3NDaGFuZ2VJbnZh
bGlkYXRpb24gc3R5bGVJbnZhbGlkYXRpb24oKnRoaXMsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFz
c0ZvY3VzVmlzaWJsZSk7CisgICAgc2V0Tm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3VzVmlzaWJs
ZSwgZmxhZyk7CiB9CiAKIHZvaWQgRWxlbWVudDo6c2V0SGFzRm9jdXNXaXRoaW4oYm9vbCBmbGFn
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9FbGVtZW50LmgKaW5kZXggOTZiZDc2MDNmZWQ3NDFlOTI3MWQ5YmI1YTJlYTYxOGM0
MDc5ODQzYy4uOTQ5Y2JiYzNmOTY1MTc1NzZlZTIzMjZkOTlkYTJmMzg5ODc0ZDcxNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5oCkBAIC0zMTksMTIgKzMxOSwxNCBAQCBwdWJsaWM6CiAgICAgYm9vbCBob3Zl
cmVkKCkgY29uc3QgeyByZXR1cm4gaXNVc2VyQWN0aW9uRWxlbWVudCgpICYmIGlzVXNlckFjdGlv
bkVsZW1lbnRIb3ZlcmVkKCk7IH0KICAgICBib29sIGZvY3VzZWQoKSBjb25zdCB7IHJldHVybiBp
c1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudEZvY3VzZWQoKTsgfQog
ICAgIGJvb2wgaXNCZWluZ0RyYWdnZWQoKSBjb25zdCB7IHJldHVybiBpc1VzZXJBY3Rpb25FbGVt
ZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudERyYWdnZWQoKTsgfQorICAgIGJvb2wgaGFzRm9j
dXNWaXNpYmxlKCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6Okhhc0ZvY3Vz
VmlzaWJsZSk7IH07CiAgICAgYm9vbCBoYXNGb2N1c1dpdGhpbigpIGNvbnN0IHsgcmV0dXJuIGhh
c05vZGVGbGFnKE5vZGVGbGFnOjpIYXNGb2N1c1dpdGhpbik7IH07CiAKICAgICB2aXJ0dWFsIHZv
aWQgc2V0QWN0aXZlKGJvb2wgPSB0cnVlLCBib29sIHBhdXNlID0gZmFsc2UsIFN0eWxlOjpJbnZh
bGlkYXRpb25TY29wZSA9IFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZTo6QWxsKTsKICAgICB2aXJ0
dWFsIHZvaWQgc2V0SG92ZXJlZChib29sID0gdHJ1ZSwgU3R5bGU6OkludmFsaWRhdGlvblNjb3Bl
ID0gU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRG
b2N1cyhib29sKTsKICAgICB2b2lkIHNldEJlaW5nRHJhZ2dlZChib29sKTsKKyAgICB2b2lkIHNl
dEhhc0ZvY3VzVmlzaWJsZShib29sKTsKICAgICB2b2lkIHNldEhhc0ZvY3VzV2l0aGluKGJvb2wp
OwogCiAgICAgT3B0aW9uYWw8aW50PiB0YWJJbmRleFNldEV4cGxpY2l0bHkoKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
Tm9kZS5oCmluZGV4IDRjYTliNTg4ZjIwZTk0ZWYzMjU0ZGNhNzhhYmYyYjllZTgwYmEzOTQuLjRl
YjJhYjkyNWZhZjQyNjg1MzU2YTk4ODFjYTNlMzMzZTkxYWQ4YzkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaApAQCAt
NTA4LDYgKzUwOCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNTaGFkb3dS
b290KCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzU2hhZG93Um9v
dCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNIVE1MKCkgeyByZXR1cm4gc3RhdGljX2Nh
c3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzSFRNTEVsZW1lbnQpOyB9CiAgICAgc3RhdGljIGludDMy
X3QgZmxhZ0lzTGluaygpIHsgcmV0dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpJ
c0xpbmspOyB9CisgICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzVmlzaWJsZSgpIHsgcmV0
dXJuIHN0YXRpY19jYXN0PGludDMyX3Q+KE5vZGVGbGFnOjpIYXNGb2N1c1Zpc2libGUpOyB9CiAg
ICAgc3RhdGljIGludDMyX3QgZmxhZ0hhc0ZvY3VzV2l0aGluKCkgeyByZXR1cm4gc3RhdGljX2Nh
c3Q8aW50MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzV2l0aGluKTsgfQogICAgIHN0YXRpYyBpbnQz
Ml90IGZsYWdJc1BhcnNpbmdDaGlsZHJlbkZpbmlzaGVkKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8
aW50MzJfdD4oTm9kZUZsYWc6OklzUGFyc2luZ0NoaWxkcmVuRmluaXNoZWQpOyB9CiAjZW5kaWYg
Ly8gRU5BQkxFKEpJVCkKQEAgLTU0OSw2ICs1NTAsNyBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKICAg
ICAgICAgSXNDb21wdXRlZFN0eWxlSW52YWxpZEZsYWcgPSAxIDw8IDI2LAogCisgICAgICAgIEhh
c0ZvY3VzVmlzaWJsZSA9IDEgPDwgMjcsCiAgICAgICAgIC8vIEJpdHMgMjctMzEgYXJlIGZyZWUu
CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IGFlZWQ1YzJi
MzgwNzk2ZTE1NjE3NDA0OTQ2ZWJmZGExYzViNDY2MjkuLmEwNGE5ZTM1MGE2YjQ3YjczY2I5ZGFi
NzAzNmY2ZTM4NGFmN2IwNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAg
LTM1MzIsNiArMzUzMiwxMSBAQCBib29sIEV2ZW50SGFuZGxlcjo6aW50ZXJuYWxLZXlFdmVudChj
b25zdCBQbGF0Zm9ybUtleWJvYXJkRXZlbnQmIGluaXRpYWxLZXlFdmVudAogICAgICAgICBrZXlk
b3duLT5wcmV2ZW50RGVmYXVsdCgpOwogICAgIGtleWRvd24tPnNldFRhcmdldChlbGVtZW50KTsK
IAorICAgIC8vIElmIHRoZSB1c2VyIGludGVyYWN0cyB3aXRoIHRoZSBwYWdlIHZpYSB0aGUga2V5
Ym9hcmQsIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBlbGVtZW50IHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZS4KKyAgICAvLyBKdXN0IHR5cGluZyBhIG1vZGlmaWVyIGtleSBpcyBub3QgY29uc2lk
ZXJlZCB1c2VyIGludGVyYWN0aW9uIHdpdGggdGhlIHBhZ2UsIGJ1dCBTaGlmdCArIGEgKG9yIENh
cHMgTG9jayArIGEpIGlzIGNvbnNpZGVyZWQgYW4gaW50ZXJhY3Rpb24uCisgICAgaWYgKGtleWRv
d24tPm1vZGlmaWVyS2V5cygpLmlzRW1wdHkoKSB8fCAoKGtleWRvd24tPnNoaWZ0S2V5KCkgfHwg
a2V5ZG93bi0+Y2Fwc0xvY2tLZXkoKSkgJiYgIWluaXRpYWxLZXlFdmVudC50ZXh0KCkuaXNFbXB0
eSgpKSkKKyAgICAgICAgZWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOworCiAgICAg
aWYgKGluaXRpYWxLZXlFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6UmF3S2V5RG93bikg
ewogICAgICAgICBlbGVtZW50LT5kaXNwYXRjaEV2ZW50KGtleWRvd24pOwogICAgICAgICAvLyBJ
ZiBmcmFtZSBjaGFuZ2VkIGFzIGEgcmVzdWx0IG9mIGtleWRvd24gZGlzcGF0Y2gsIHRoZW4gcmV0
dXJuIHRydWUgdG8gYXZvaWQgc2VuZGluZyBhIHN1YnNlcXVlbnQga2V5cHJlc3MgbWVzc2FnZSB0
byB0aGUgbmV3IGZyYW1lLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0Nv
bnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmlu
ZGV4IDA3YWJhZDA2MGUwMTNlYjhiN2FjNTYwMGRkNDQxOTZkMmIxYWE5ZmEuLmVhZGRhNzkwOTU5
N2VjMjdhZTVhYTcxOWE2OTVjMzA0MjUxMDI0OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3Vz
Q29udHJvbGxlci5jcHAKQEAgLTUzMyw2ICs1MzMsNyBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6
YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgS2V5
YgogICAgICAgICB9CiAgICAgfQogCisgICAgZWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRy
dWUpOwogICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0
QWxsLCBkaXJlY3Rpb24pOwogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZp
ZXcuY3BwCmluZGV4IDY5YWNmYjBkMWI2YmZkNDhiYmE5Yzk2MWRhNDQ1MzY1M2M0NDUzYmUuLjY4
M2UzNmVmNTVmMmE5MzVkOTBhYjU1MGRjNTk2MWEyMGY5MDhjMzkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zy
YW1lVmlldy5jcHAKQEAgLTIyNjgsOSArMjI2OCwxMCBAQCBib29sIEZyYW1lVmlldzo6c2Nyb2xs
VG9GcmFnbWVudEludGVybmFsKGNvbnN0IFN0cmluZyYgZnJhZ21lbnRJZGVudGlmaWVyKQogICAg
IAogICAgIC8vIElmIHRoZSBhbmNob3IgYWNjZXB0cyBrZXlib2FyZCBmb2N1cywgbW92ZSBmb2N1
cyB0aGVyZSB0byBhaWQgdXNlcnMgcmVseWluZyBvbiBrZXlib2FyZCBuYXZpZ2F0aW9uLgogICAg
IGlmIChhbmNob3JFbGVtZW50KSB7Ci0gICAgICAgIGlmIChhbmNob3JFbGVtZW50LT5pc0ZvY3Vz
YWJsZSgpKQorICAgICAgICBpZiAoYW5jaG9yRWxlbWVudC0+aXNGb2N1c2FibGUoKSkgeworICAg
ICAgICAgICAgYW5jaG9yRWxlbWVudC0+c2V0SGFzRm9jdXNWaXNpYmxlKHRydWUpOwogICAgICAg
ICAgICAgZG9jdW1lbnQuc2V0Rm9jdXNlZEVsZW1lbnQoYW5jaG9yRWxlbWVudC5nZXQoKSk7Ci0g
ICAgICAgIGVsc2UgeworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgZG9jdW1lbnQuc2V0
Rm9jdXNlZEVsZW1lbnQobnVsbHB0cik7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c05h
dmlnYXRpb25TdGFydGluZ05vZGUoYW5jaG9yRWxlbWVudC5nZXQoKSk7CiAgICAgICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcAppbmRleCBlMTgw
Y2NkZmE5ZjY4ZmFhYzA5MTBjMjMzYzIxOGQ3ZWZkNmEwNGE0Li5jYzQ4YzRhNjY4ZDcwOTNmMzIz
YjQwMGY0ZTgwYzEwYzA2NGI4ZTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9F
bGVtZW50UnVsZUNvbGxlY3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVu
dFJ1bGVDb2xsZWN0b3IuY3BwCkBAIC0xNTcsNiArMTU3LDggQEAgdm9pZCBFbGVtZW50UnVsZUNv
bGxlY3Rvcjo6Y29sbGVjdE1hdGNoaW5nUnVsZXMoY29uc3QgTWF0Y2hSZXF1ZXN0JiBtYXRjaFJl
cXVlc3QKICAgICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5y
dWxlU2V0LT5saW5rUHNldWRvQ2xhc3NSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogICAgIGlmICht
YXRjaGVzRm9jdXNQc2V1ZG9DbGFzcyhlbGVtZW50KCkpKQogICAgICAgICBjb2xsZWN0TWF0Y2hp
bmdSdWxlc0Zvckxpc3QobWF0Y2hSZXF1ZXN0LnJ1bGVTZXQtPmZvY3VzUHNldWRvQ2xhc3NSdWxl
cygpLCBtYXRjaFJlcXVlc3QpOworICAgIGlmIChtYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3MoZWxlbWVudCgpKSkKKyAgICAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNo
UmVxdWVzdC5ydWxlU2V0LT5mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzKCksIG1hdGNoUmVx
dWVzdCk7CiAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxl
U2V0LT50YWdSdWxlcyhlbGVtZW50KCkubG9jYWxOYW1lKCksIGVsZW1lbnQoKS5pc0hUTUxFbGVt
ZW50KCkgJiYgZWxlbWVudCgpLmRvY3VtZW50KCkuaXNIVE1MRG9jdW1lbnQoKSksIG1hdGNoUmVx
dWVzdCk7CiAgICAgY29sbGVjdE1hdGNoaW5nUnVsZXNGb3JMaXN0KG1hdGNoUmVxdWVzdC5ydWxl
U2V0LT51bml2ZXJzYWxSdWxlcygpLCBtYXRjaFJlcXVlc3QpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxl
U2V0LmNwcAppbmRleCAzYTViNTYxMGJhNzZjMzk2NzQwZjYxMDAxY2ViOGQyZjBhM2Q5OGM5Li5l
NGE5ZjA2NTY2YzMyMTQxMzk2N2UzYzFmNmQxMGE2Yjk4MGUzNTMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlU2V0LmNwcApAQCAtOTgsNiArOTgsNyBAQCB2b2lkIFJ1bGVTZXQ6OmFkZFJ1bGUoY29uc3Qg
U3R5bGVSdWxlJiBydWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZQogICAg
IGNvbnN0IENTU1NlbGVjdG9yKiBjbGFzc1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBD
U1NTZWxlY3RvciogbGlua1NlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3Rv
ciogZm9jdXNTZWxlY3RvciA9IG51bGxwdHI7CisgICAgY29uc3QgQ1NTU2VsZWN0b3IqIGZvY3Vz
VmlzaWJsZVNlbGVjdG9yID0gbnVsbHB0cjsKICAgICBjb25zdCBDU1NTZWxlY3RvciogaG9zdFBz
ZXVkb0NsYXNzU2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9yKiBjdXN0
b21Qc2V1ZG9FbGVtZW50U2VsZWN0b3IgPSBudWxscHRyOwogICAgIGNvbnN0IENTU1NlbGVjdG9y
KiBzbG90dGVkUHNldWRvRWxlbWVudFNlbGVjdG9yID0gbnVsbHB0cjsKQEAgLTE2Miw2ICsxNjMs
OSBAQCB2b2lkIFJ1bGVTZXQ6OmFkZFJ1bGUoY29uc3QgU3R5bGVSdWxlJiBydWxlLCB1bnNpZ25l
ZCBzZWxlY3RvckluZGV4LCB1bnNpZ25lZCBzZQogICAgICAgICAgICAgY2FzZSBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3NGb2N1czoKICAgICAgICAgICAgICAgICBmb2N1c1NlbGVjdG9yID0gc2Vs
ZWN0b3I7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIENTU1NlbGVj
dG9yOjpQc2V1ZG9DbGFzc0ZvY3VzVmlzaWJsZToKKyAgICAgICAgICAgICAgICBmb2N1c1Zpc2li
bGVTZWxlY3RvciA9IHNlbGVjdG9yOworICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NIb3N0OgogICAgICAgICAgICAgICAgIGhv
c3RQc2V1ZG9DbGFzc1NlbGVjdG9yID0gc2VsZWN0b3I7CiAgICAgICAgICAgICAgICAgYnJlYWs7
CkBAIC0yNDksNiArMjUzLDExIEBAIHZvaWQgUnVsZVNldDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1
bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlCiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKKyAgICBpZiAoZm9jdXNWaXNpYmxlU2VsZWN0b3IpIHsKKyAgICAgICAg
bV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzLmFwcGVuZChydWxlRGF0YSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKICAgICBpZiAodGFnU2VsZWN0b3IpIHsKICAgICAgICAgYWRkVG9S
dWxlU2V0KHRhZ1NlbGVjdG9yLT50YWdRTmFtZSgpLmxvY2FsTmFtZSgpLCBtX3RhZ0xvY2FsTmFt
ZVJ1bGVzLCBydWxlRGF0YSk7CiAgICAgICAgIGFkZFRvUnVsZVNldCh0YWdTZWxlY3Rvci0+dGFn
TG93ZXJjYXNlTG9jYWxOYW1lKCksIG1fdGFnTG93ZXJjYXNlTG9jYWxOYW1lUnVsZXMsIHJ1bGVE
YXRhKTsKQEAgLTM5Niw2ICs0MDUsNyBAQCB2b2lkIFJ1bGVTZXQ6OnRyYXZlcnNlUnVsZURhdGFz
KEZ1bmN0aW9uJiYgZnVuY3Rpb24pCiAgICAgdHJhdmVyc2VWZWN0b3IobV9zbG90dGVkUHNldWRv
RWxlbWVudFJ1bGVzKTsKICAgICB0cmF2ZXJzZVZlY3RvcihtX3BhcnRQc2V1ZG9FbGVtZW50UnVs
ZXMpOwogICAgIHRyYXZlcnNlVmVjdG9yKG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzKTsKKyAgICB0
cmF2ZXJzZVZlY3RvcihtX2ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzUnVsZXMpOwogICAgIHRyYXZl
cnNlVmVjdG9yKG1fdW5pdmVyc2FsUnVsZXMpOwogfQogCkBAIC00OTcsNiArNTA3LDcgQEAgdm9p
ZCBSdWxlU2V0OjpzaHJpbmtUb0ZpdCgpCiAgICAgbV9ob3N0UHNldWRvQ2xhc3NSdWxlcy5zaHJp
bmtUb0ZpdCgpOwogICAgIG1fc2xvdHRlZFBzZXVkb0VsZW1lbnRSdWxlcy5zaHJpbmtUb0ZpdCgp
OwogICAgIG1fZm9jdXNQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CisgICAgbV9mb2N1
c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzLnNocmlua1RvRml0KCk7CiAgICAgbV91bml2ZXJzYWxS
dWxlcy5zaHJpbmtUb0ZpdCgpOwogICAgIG1fcGFnZVJ1bGVzLnNocmlua1RvRml0KCk7CiAgICAg
bV9mZWF0dXJlcy5zaHJpbmtUb0ZpdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvUnVsZVNldC5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldC5oCmluZGV4IDk5YWEx
NjBkOTA2ODQ0ZmFkMzRkYzFhMjcwMTZhMDAzNmJkZTMwNzkuLjNkNWI1YjMxNDcwMGM1MGY0NWRj
MTVkODQ2Njc0NmMwZTlhMDY4ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1
bGVTZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmgKQEAgLTEyOSw2ICsx
MjksNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgUnVsZURhdGFWZWN0b3ImIHNsb3R0ZWRQc2V1ZG9F
bGVtZW50UnVsZXMoKSBjb25zdCB7IHJldHVybiBtX3Nsb3R0ZWRQc2V1ZG9FbGVtZW50UnVsZXM7
IH0KICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciYgcGFydFBzZXVkb0VsZW1lbnRSdWxlcygpIGNv
bnN0IHsgcmV0dXJuIG1fcGFydFBzZXVkb0VsZW1lbnRSdWxlczsgfQogICAgIGNvbnN0IFJ1bGVE
YXRhVmVjdG9yKiBmb2N1c1BzZXVkb0NsYXNzUnVsZXMoKSBjb25zdCB7IHJldHVybiAmbV9mb2N1
c1BzZXVkb0NsYXNzUnVsZXM7IH0KKyAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogZm9jdXNWaXNp
YmxlUHNldWRvQ2xhc3NSdWxlcygpIGNvbnN0IHsgcmV0dXJuICZtX2ZvY3VzVmlzaWJsZVBzZXVk
b0NsYXNzUnVsZXM7IH0KICAgICBjb25zdCBSdWxlRGF0YVZlY3RvciogdW5pdmVyc2FsUnVsZXMo
KSBjb25zdCB7IHJldHVybiAmbV91bml2ZXJzYWxSdWxlczsgfQogCiAgICAgY29uc3QgVmVjdG9y
PFN0eWxlUnVsZVBhZ2UqPiYgcGFnZVJ1bGVzKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlUnVsZXM7
IH0KQEAgLTE2Nyw2ICsxNjgsNyBAQCBwcml2YXRlOgogICAgIFJ1bGVEYXRhVmVjdG9yIG1fc2xv
dHRlZFBzZXVkb0VsZW1lbnRSdWxlczsKICAgICBSdWxlRGF0YVZlY3RvciBtX3BhcnRQc2V1ZG9F
bGVtZW50UnVsZXM7CiAgICAgUnVsZURhdGFWZWN0b3IgbV9mb2N1c1BzZXVkb0NsYXNzUnVsZXM7
CisgICAgUnVsZURhdGFWZWN0b3IgbV9mb2N1c1Zpc2libGVQc2V1ZG9DbGFzc1J1bGVzOwogICAg
IFJ1bGVEYXRhVmVjdG9yIG1fdW5pdmVyc2FsUnVsZXM7CiAgICAgVmVjdG9yPFN0eWxlUnVsZVBh
Z2UqPiBtX3BhZ2VSdWxlczsKICAgICB1bnNpZ25lZCBtX3J1bGVDb3VudCB7IDAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcAppbmRleCBjN2Y4MWIy
YzQ3N2ZiNDg3NmQ3YTU2MGYxNDc5ZWQ2OWI0Y2M3YTA1Li5kOTYxZjc5NmU2ZjU3OTM0YTIzOTZh
ZDY0ZjAyMzA4NTU0OTgyNTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNoYXJpbmdSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTaGFy
aW5nUmVzb2x2ZXIuY3BwCkBAIC0yMjcsNiArMjI3LDggQEAgYm9vbCBTaGFyaW5nUmVzb2x2ZXI6
OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudChjb25zdCBDb250ZXh0JiBjb250ZXh0LCBjb25zdCBT
dHkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50LmZvY3Vz
ZWQoKSAhPSBlbGVtZW50LmZvY3VzZWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlm
IChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpICE9IGVsZW1lbnQuaGFzRm9jdXNW
aXNpYmxlKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoY2FuZGlkYXRlRWxlbWVu
dC5oYXNGb2N1c1dpdGhpbigpICE9IGVsZW1lbnQuaGFzRm9jdXNXaXRoaW4oKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50LmlzQmVpbmdEcmFnZ2VkKCkg
IT0gZWxlbWVudC5pc0JlaW5nRHJhZ2dlZCgpKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGNjYmU1OWJlMjczOWIyZjNlZTZj
OTcxOWZiZWYzMTM0MGQ2NTRkYjIuLjZhNzA2ZDg5NzRmMDg0YTNmOWE3Mzg5NzM5NzkyYWY4OTEx
YjQzNGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wMy0wMiAgTWFudWVsIFJlZ28gQ2Fz
YXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0b3JzXSA6Zm9jdXMt
dmlzaWJsZSBpbXBsZW1lbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIyMDI4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NDY3OTI0Mz4K
KworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICAqIHBsYXRmb3Jt
L2lvcy9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIGZvY3VzLXZpc2libGUtMDA4Lmh0bWwgYW5kIGZv
Y3VzLXZpc2libGUtMDExLmh0bWwgYXMgdGhleSB0aW1lb3V0IGluIGlPUy4KKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDA4LWV4cGVjdGVkLnR4dDogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDA4LWV4cGVjdGVkLnR4dC4KKwogMjAyMS0wMy0wMSAgQW5kcmVzIEdvbnphbGV6ICA8YW5k
cmVzZ18yMkBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXIgbWV0aG9kIHRvIHJldHJpZXZlIHJlbGF0ZWQgZXJyb3IgbWVzc2FnZSBlbGVtZW50cyBzaG91
bGQgcmV0dXJuIG5vdC1pZ25vcmVkIGFjY2Vzc2liaWxpdHkgZWxlbWVudHMuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAyMGU2NWMwZWJiYWNlYTkwM2U5NTUwZTY3NjI3OWVhNDc1
ZWVhMjBhLi5hODU4NDEwZTYxYWM4YzFlM2E5Yjk0YmE3YmMxMTNiOGRhNjI0OGRkIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAyMS0wMy0wMiAgTWFu
dWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbc2VsZWN0
b3JzXSA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIyMDI4CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS83NDY3OTI0Mz4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAg
ICBVcGRhdGUgZXhwZWN0YXRpb25zLCBtb3N0IG9mIHRoZSA6Zm9jdXMtdmlzaWJsZSB0ZXN0cyBh
cmUgcGFzc2luZyBub3cuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAx
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbDogSW1wb3J0IGxhc3Qg
Y2hhbmdlcyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBlY3RlZC50eHQ6CisgICAgICAgIChzZWUgaHR0
cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvcHVsbC8yNzY1NikuCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLXZpc2libGUtMDExLmh0bWw6IEltcG9ydCBsYXN0IGNoYW5nZXMgb24gdGhpcyB0ZXN0
CisgICAgICAgIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQv
cHVsbC8yNzcwMCkuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1l
eHBlY3RlZC50eHQ6CisKIDIwMjEtMDItMjggIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgQmxlbmRpbmcgb2YgYm9yZGVyLWltYWdlLXdpZHRoIHNob3VsZCBi
ZSBkaXNjcmV0ZSBiZXR3ZWVuICJhdXRvIiB2YWx1ZXMgYW5kIG90aGVyIHR5cGVzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtaW4tZm9jdXMtZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1m
b2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IGMxM2JlMDBmZDk1ZTczZGI0MTc4ZGMy
OGU0ZDQzOTAzYTk5ZDQ3ZjQuLmQwNjA1NDhjZmEyZDFhYzc3MmYwYzE1YjYyNThhMmIxZDc4ODY0
MzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy1pbi1mb2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBA
QAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5z
aWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgotRkFJTCBDaGVja3MgdGhhdCAnOmZvY3VzLXZpc2li
bGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIgYXNz
ZXJ0X3VucmVhY2hlZDogJzpmb2N1cy12aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4g
U3ludGF4RXJyb3I6IEVycm9yOiBhc3NlcnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNo
ZXMgZXZlbnQudGFyZ2V0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0
IHR5cGU9InRleHQiPjwvaW5wdXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVj
a3MgdGhhdCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9j
dXMnIGV2ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13aXRoaW4nIHBzZXVk
by1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXMnIGV2ZW50IGhhbmRsZXIKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1m
b2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKaW5kZXggMjdlMWE5YWYyYWJlOGY2N2I4OGVi
ZmM3NzBjZTMzMzQyMzc5MWVkZS4uN2ZlNTAzM2NlOGE0OGM2NjY4MTg5MjkyZDhhMzhiOTc3ZWJm
M2NkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAxLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDYg
KzEsNiBAQAogCiAKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cycgcHNldWRvLWNsYXNzIG1hdGNo
ZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6Zm9j
dXMtdmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBo
YW5kbGVyIGFzc2VydF91bnJlYWNoZWQ6ICc6Zm9jdXMtdmlzaWJsZScgIGlzIGFuIGludmFsaWQg
c2VsZWN0b3IuIFN5bnRheEVycm9yOiBFcnJvcjogYXNzZXJ0X2VxdWFsczogJzpmb2N1cy12aXNp
YmxlJyBtYXRjaGVzIGV2ZW50LnRhcmdldCBleHBlY3RlZCBudWxsIGJ1dCBnb3QgRWxlbWVudCBu
b2RlIDxpbnB1dCB0eXBlPSJ0ZXh0Ij48L2lucHV0PiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUK
K1BBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBp
bnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIKIFBBU1MgQ2hlY2tzIHRoYXQgJzpmb2N1cy13
aXRoaW4nIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicgZXZlbnQgaGFuZGxl
cgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDAxLWV4cGVjdGVkLnR4dAppbmRleCA4NTBjN2FiMTcwMmIzOTMyNDkwMzRkMGIz
MzZlYzk1NmEzYzE5NDMwLi5lYzc3Y2VmYzAyNTgxZTY1NTE1NzgwM2U2OThlNDM4ZDNiNjg5MzFm
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIElmIHRoZSBlbGVtZW50
IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJ
ZiB0aGUgZWxlCiAKIEZvY3VzIG1lLgogCi1GQUlMIEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNlbCBz
aG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwg
MCwgMCkiCitQQVNTIEtleWJvYXJkIGZvY3VzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDAyLWV4cGVjdGVkLnR4dAppbmRleCBiNWE5ZWY0MTRkMmYzMGQ4Y2ZiMTJlOGNiMDZk
ZDliZDIzOTljOWEwLi45MzU4N2RkZGI2MmI0NWZhNGYwNTljNmFlOWU2NWNiNzg5ZWM3NWNiIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKQEAgLTE4LDE4ICsxOCwxOCBAQCBJZiB0aGUgZWxlbWVu
dCBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4g
SWYgdGhlIGVsZQogCiAKIAotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2aWEgbW91
c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlu
cHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxIHNob3VsZCBi
ZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIK
LUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6
Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxz
OiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQg
InJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1l
bnQgSU5QVVQjaW5wdXQzIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMg
aXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZv
ciBJTlBVVCNpbnB1dDMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NCB2
aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJv
YXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ0IHNo
b3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAw
LCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0NSBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQ2IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNv
bG9yIGZvciBJTlBVVCNpbnB1dDYgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4
LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lu
cHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRz
IGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5w
dXQ3IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDggdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBh
c3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0OCBzaG91bGQgYmUgZ3Jl
ZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlM
IEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ5IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3Vz
LXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFsczogb3V0
bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDkgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2Io
MCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElO
UFVUI2lucHV0MTAgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElO
UFVUI2lucHV0MTAgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0
IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlh
IG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2Fy
ZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTEgc2hv
dWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAs
IDApIgotRkFJTCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBt
YXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRf
ZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MTIgc2hvdWxkIGJlIGdyZWVuIGV4
cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1
cyBlbGVtZW50IElOUFVUI2lucHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlz
aWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5l
Q29sb3IgZm9yIElOUFVUI2lucHV0MTMgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwg
MTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVtZW50IFRFWFRB
UkVBI2lucHV0MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIFRF
WFRBUkVBI2lucHV0MTQgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIg
YnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MSB2
aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJv
YXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQyIHZpYSBtb3VzZSBzaG91
bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BB
U1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9j
dXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVt
ZW50IElOUFVUI2lucHV0NCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFz
IGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5w
dXQ1IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMg
a2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDYgdmlhIG1vdXNl
IHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1
dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNo
IDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQ4IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2li
bGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBV
VCNpbnB1dDkgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTAgdmlh
IG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2Fy
ZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTEgdmlhIG1vdXNlIHNob3Vs
ZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFT
UyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0MTIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9j
dXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVt
ZW50IElOUFVUI2lucHV0MTMgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBh
cyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IFRFWFRBUkVB
I2lucHV0MTQgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBw
b3J0cyBrZXlib2FyZCBpbnB1dAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dAppbmRleCA1YWFjZDRi
MTFmMzhjNjNjMWU2OTY5NThmNWQ2MDY0ZjE0NmNiYzQ4Li45ODExNWIxZTEyZDAwZDA2NDVkYjM5
OTk3OGFlOGViNmNmMGIyNTJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1
IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJl
c3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIEZvY3VzIG1lCiAKLUZBSUwgRm9jdXMgc2hv
dWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxlIGRpdnMg
YXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBTUEFOI2VsIHNob3VsZCBiZSBncmVlbiBl
eHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgRm9j
dXMgc2hvdWxkIGFsd2F5cyBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBvbiBjb250ZW50IGVkaXRhYmxl
IGRpdnMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwNy1leHBlY3RlZC50eHQKaW5kZXggOGJiOWNmMzA3MDBmMTM1ODJlYTc4
YWIyMTczZTNhMjIyYjljZGFjZC4uOWYxZWUwOTg5ZGMxNzdhNzI0YWI3ZGM5Y2NjN2EyZTA4NzJk
NmZjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3LWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMv
Zm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0CkBAIC0yLDkgKzIsOSBAQCBUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgdXNpbmcgdGhlIGtleWJvYXJkIGluIGEgd2F5IHRoYXQgZG9lcyBub3QgbW92
ZSBmb2N1cyBzdGlsbAogSWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3VwcG9y
dCB0aGUgOmZvY3VzLXZpc2libGUgcHNldWRvLWNsYXNzIHRoZW4gU0tJUCB0aGlzIHRlc3QuCiBV
c2UgdGhlIG1vdXNlIHRvIGZvY3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sg
bWUuIgogSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVz
dWx0IGlzIEZBSUxVUkUuCi1QcmVzcyB0aGUgU0hJRlQga2V5LgorUHJlc3MgdGhlIEVOVEVSIGtl
eS4KIElmIHRoZSBlbGVtZW50IG5vdyBoYXMgYSBncmVlbiBvdXRsaW5lIGFuZCBub3QgcmVkIGJh
Y2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuCiBDbGljayBtZS4KIAot
RkFJTCBVc2luZyBrZXlib2FyZCB3aGlsZSBlbGVtZW50IGlzIGZvY3VzZWQgc2hvdWxkIHRyaWdn
ZXIgOmZvY3VzLXZpc2libGU7IHVzaW5nIG1vdXNlIHdpdGhvdXQgbW92aW5nIGZvY3VzIHNob3Vs
ZCBub3QgY2FuY2VsIGl0OyBtb3ZpbmcgZm9jdXMgdXNpbmcgbW91c2Ugc2hvdWxkIGNhbmNlbCBp
dC4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2Io
MCwgMCwgMCkiCitQQVNTIFVzaW5nIGtleWJvYXJkIHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNlZCBz
aG91bGQgdHJpZ2dlciA6Zm9jdXMtdmlzaWJsZTsgdXNpbmcgbW91c2Ugd2l0aG91dCBtb3Zpbmcg
Zm9jdXMgc2hvdWxkIG5vdCBjYW5jZWwgaXQ7IG1vdmluZyBmb2N1cyB1c2luZyBtb3VzZSBzaG91
bGQgY2FuY2VsIGl0LgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwNy5odG1sCmluZGV4IDBmYzE5NmNiZWNkZjFiMTk4YTViYWRjZTM2OTRi
MWVjN2NjOTVkNGYuLjE0OWE2ZjY4ZmU4YzMwMGY1ZGQxNzJiOTdkMmYyOTc0ZjVlMzEyMTAgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
Ny5odG1sCkBAIC0zNiw3ICszNiw3IEBACiAgICAgPGxpPklmIHRoZSB1c2VyLWFnZW50IGRvZXMg
bm90IGNsYWltIHRvIHN1cHBvcnQgdGhlIDxjb2RlPjpmb2N1cy12aXNpYmxlPC9jb2RlPiBwc2V1
ZG8tY2xhc3MgdGhlbiBTS0lQIHRoaXMgdGVzdC48L2xpPgogICAgIDxsaT5Vc2UgdGhlIG1vdXNl
IHRvIGZvY3VzIHRoZSBlbGVtZW50IGJlbG93IHRoYXQgc2F5cyAiQ2xpY2sgbWUuIjwvbGk+CiAg
ICAgPGxpPklmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJl
c3VsdCBpcyBGQUlMVVJFLjwvbGk+Ci0gICAgPGxpPlByZXNzIHRoZSBTSElGVCBrZXkuPC9saT4K
KyAgICA8bGk+UHJlc3MgdGhlIEVOVEVSIGtleS48L2xpPgogICAgIDxsaT5JZiB0aGUgZWxlbWVu
dCBub3cgaGFzIGEgZ3JlZW4gb3V0bGluZSBhbmQgbm90IHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRo
ZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwvb2w+CiAKQEAgLTY1LDcgKzY1LDgg
QEAKICAgICAgICAgb25lLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmModGVz
dF9tb2RhbGl0eV9jaGFuZ2UpKTsKICAgICAgICAgb25lLnJlbW92ZUV2ZW50TGlzdGVuZXIoImZv
Y3VzIiwgaGFuZGxlX2luaXRpYWxfZm9jdXMpOwogCi0gICAgICAgIHRlc3RfZHJpdmVyLnNlbmRf
a2V5cyhvbmUsICJcdUUwNTAiKTsKKyAgICAgICAgY29uc3QgZW50ZXIgPSAiXHVFMDA3IjsKKyAg
ICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9uZSwgZW50ZXIpOwogICAgICAgfSk7CiAKICAg
ICAgIGNvbnN0IHRlc3RfbW9kYWxpdHlfY2hhbmdlID0gdC5zdGVwX2Z1bmMoKCkgPT4gewpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA4LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAwOC1leHBlY3RlZC50eHQKaW5kZXggMDQ3NzExZTg2ZDk3YWMwOTRmYjk2OGQ5MzQ1OTQ4ODJh
YzhlNjAwNy4uODBmZDZlYjRhYTFmNmZhMGRiMDA3ZThlZDNjNGJmNTUxNGFlNjIxNyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA4LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDgtZXhwZWN0ZWQudHh0CkBAIC02LDcgKzYsNSBAQCBJZiB0aGUgZWxlbWVudCB0aGF0IHNh
eXMgIkkgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1tYXRpY2FsbHkuIiBoYXMgYSByZWQgYmFja2dy
bwogVGFiIHRvIG1lIGFuZCBwcmVzcyBFTlRFUi4KIEkgd2lsbCBiZSBmb2N1c2VkIHByb2dyYW1t
YXRpY2FsbHkuCiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1U
SU1FT1VUIFByb2dyYW1tYXRpYyBmb2N1cyBhZnRlciBrZXlwcmVzcyBzaG91bGQgbWF0Y2ggOmZv
Y3VzLXZpc2libGUgVGVzdCB0aW1lZCBvdXQKK0ZBSUwgUHJvZ3JhbW1hdGljIGZvY3VzIGFmdGVy
IGtleXByZXNzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhc3NlcnRfZXF1YWxzOiBvdXRs
aW5lQ29sb3IgZm9yIERJViNlbCBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgs
IDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAxMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0CmluZGV4
IDMwMzFkYzdjYjgyMjY2OTAzNWJhOTllN2RmZDZiMjRjNDJmNDE1MTUuLmFlZjM5YTdlOWNhNTQ5
MjE0MjJmM2ZlMzVmMmVhYWRjOTlkNTc0NmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAx
MS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dApAQCAt
MSwxMSArMSw5IEBACiBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgOmZvY3VzLXZpc2libGUgbWF0Y2hl
cyBhZnRlciBhIGtleWJvYXJkIGV2ZW50LCBldmVuIGlmIHRoZSBldmVudCBoYW5kbGVyIGNhbGxz
IHByZXZlbnREZWZhdWx0KCkgb24gdGhlIGV2ZW50LgogQ2xpY2sgIkNsaWNrIGhlcmUgYW5kIHBy
ZXNzIHJpZ2h0IGFycm93LiIuCiBQcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LgotSWYgIkZvY3Vz
IG1vdmVzIGhlcmUuIiBoYXMgYSByZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQg
aXMgRkFJTFVSRS4gSWYgaXQgaGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1
bHQgaXMgU1VDQ0VTUy4KK0lmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBpdCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgogCi1DbGljayBoZXJlIGFuZCBwcmVzcyBy
aWdodCBhcnJvdy4gIEZvY3VzIG1vdmVzIGhlcmUuCitDbGljayBoZXJlIGFuZCBwcmVzcyByaWdo
dCBhcnJvdy4KIAotSGFybmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJ
TUVPVVQgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0KCkgaXMg
Y2FsbGVkIFRlc3QgdGltZWQgb3V0CitQQVNTIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMgZXZlbiBp
ZiBwcmV2ZW50RGVmYXVsdCgpIGlzIGNhbGxlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMTEuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCmluZGV4IGIwZGFmMzRiYThkZDk2
ZjM0M2U2ODdjZWY4NTI1MjNjOTJhZTJjMzkuLmNmMTg2ZDI4YjgzMmUwN2E2ZTAxN2VjNTczMjY0
ZGJlMmQxMzIxZWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAxMS5odG1sCkBAIC0yMSwxMSArMjEsMTEgQEAKICAgICAgIGJvcmRlcjog
MDsKICAgICB9CiAKLSAgICAjbmV4dDpmb2N1cy12aXNpYmxlIHsKKyAgICA6Zm9jdXMtdmlzaWJs
ZSB7CiAgICAgICBvdXRsaW5lOiBncmVlbiBzb2xpZCA1cHg7CiAgICAgfQogCi0gICAgI25leHQ6
Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7CisgICAgOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJs
ZSkgewogICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOwogICAgICAgb3V0bGluZTogMDsKICAg
ICB9CkBAIC0zNywzMCArMzcsMzMgQEAKICAgPHVsIGlkPSJpbnN0cnVjdGlvbnMiPgogICAgIDxs
aT5DbGljayAiQ2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuIi48L2xpPgogICAgIDxs
aT5QcmVzcyB0aGUgcmlnaHQgYXJyb3cga2V5LjwvbGk+Ci0gICAgPGxpPklmICJGb2N1cyBtb3Zl
cyBoZXJlLiIgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZB
SUxVUkUuCisgICAgPGxpPklmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVu
IHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLgogICAgICAgICBJZiBpdCBoYXMgYSBncmVlbiBv
dXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLjwvbGk+CiAgIDwvdWw+CiAg
IDxiciAvPgotICA8YnV0dG9uIGlkPSJzdGFydCIgdGFiaW5kZXg9IjAiPkNsaWNrIGhlcmUgYW5k
IHByZXNzIHJpZ2h0IGFycm93LjwvYnV0dG9uPgotICA8YnV0dG9uIGlkPSJuZXh0IiB0YWJpbmRl
eD0iLTEiPkZvY3VzIG1vdmVzIGhlcmUuPC9idXR0b24+CisgIDxkaXYgaWQ9InRhcmdldCIgdGFi
aW5kZXg9IjAiPkNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LjwvZGl2PgogICA8c2Ny
aXB0PgotICAgIHN0YXJ0LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4geworICAg
IHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgKGUpID0+IHsKKyAgICAgIGUucHJl
dmVudERlZmF1bHQoKTsKKyAgICB9KTsKKyAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcigia2V5
dXAiLCAoZSkgPT4geworICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgIH0pOworICAgIHRh
cmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsIChlKSA9PiB7CiAgICAgICBlLnByZXZl
bnREZWZhdWx0KCk7Ci0gICAgICBuZXh0LmZvY3VzKCk7CiAgICAgfSk7Ci0KICAgICBhc3luY190
ZXN0KGZ1bmN0aW9uKHQpIHsKLSAgICAgIG5leHQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCB0
LnN0ZXBfZnVuYygoKSA9PiB7Ci0gICAgICAgIGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHls
ZShuZXh0KS5vdXRsaW5lQ29sb3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9y
ICR7bmV4dC50YWdOYW1lfSMke25leHQuaWR9IHNob3VsZCBiZSBncmVlbmApOwotICAgICAgICBh
c3NlcnRfbm90X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKG5leHQpLmJhY2tncm91bmRDb2xvciwg
InJnYigyNTUsIDAsIDApIiwgYGJhY2tncm91bmRDb2xvciBmb3IgJHtuZXh0LnRhZ05hbWV9IyR7
bmV4dC5pZH0gc2hvdWxkIE5PVCBiZSByZWRgKTsKLSAgICAgICAgdC5kb25lKCkKLSAgICAgIH0p
KTsKKyAgICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsICgpID0+IHsKKyAgICAg
ICAgY29uc3QgYXJyb3dfcmlnaHQgPSAiXHVlMDE0IjsKKyAgICAgICAgdGVzdF9kcml2ZXIuc2Vu
ZF9rZXlzKHRhcmdldCwgYXJyb3dfcmlnaHQpOworICAgICAgfSk7CiAKLSAgICAgIC8vIFx1ZTAx
NCAtPiBBUlJPV19SSUdIVAotICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKHN0YXJ0LCAiXHVl
MDE0IikuY2F0Y2godC5zdGVwX2Z1bmMoKCkgPT4gewotICAgICAgICBhc3NlcnRfdHJ1ZShmYWxz
ZSwgInNlbmRfa2V5cyBub3QgaW1wbGVtZW50ZWQgeWV0Iik7Ci0gICAgICAgIHQuZG9uZSgpOwor
ICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwgdC5zdGVwX2Z1bmNfZG9uZSgo
ZSkgPT4geworICAgICAgICBhc3NlcnRfZXF1YWxzKGdldENvbXB1dGVkU3R5bGUodGFyZ2V0KS5v
dXRsaW5lQ29sb3IsICJyZ2IoMCwgMTI4LCAwKSIsIGBvdXRsaW5lQ29sb3IgZm9yICR7dGFyZ2V0
LnRhZ05hbWV9IyR7dGFyZ2V0LmlkfSBzaG91bGQgYmUgZ3JlZW5gKTsKKyAgICAgICAgYXNzZXJ0
X25vdF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLmJhY2tncm91bmRDb2xvciwgInJn
YigyNTUsIDAsIDApIiwgYGJhY2tncm91bmRDb2xvciBmb3IgJHt0YXJnZXQudGFnTmFtZX0jJHt0
YXJnZXQuaWR9IHNob3VsZCBOT1QgYmUgcmVkYCk7CiAgICAgICB9KSk7CisKKyAgICAgIHRlc3Rf
ZHJpdmVyLmNsaWNrKHRhcmdldCk7CiAgICAgfSwgIjpmb2N1cy12aXNpYmxlIG1hdGNoZXMgZXZl
biBpZiBwcmV2ZW50RGVmYXVsdCgpIGlzIGNhbGxlZCIpOwogICA8L3NjcmlwdD4KIDwvYm9keT4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMTMtZXhwZWN0ZWQudHh0CmluZGV4IDZiMmEyNGUxYzNmZjkzNzkzN2RhYTI2OTc2ZmIz
NWMyZjg0MWZlYzYuLjQ5YWQ4Y2U5YzNjM2MxYzQxMmEwYjlkNjM2YjRhZmQ2NjljNTM4YzUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDEzLWV4cGVjdGVkLnR4dApAQCAtOCw3ICs4LDUgQEAgSWYgdGhlIGVsZW1lbnQgdGhh
dCBzYXlzICJUYXJnZXQiIGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIGEKIEluaXRpYWwKIFRhcmdldAogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2Fn
ZSA9IG51bGwKLQotRkFJTCA6Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3Vz
ZSBjbGljayBldmVuIGlmIHByZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZv
Y3VzLXZpc2libGUgYXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBESVYjaW5pdGlhbCBz
aG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMjU1
LCAwLCAwKSIKK1BBU1MgOmZvY3VzLXZpc2libGUgZG9lcyBub3QgbWF0Y2ggYWZ0ZXIgbW91c2Ug
Y2xpY2sgZXZlbiBpZiBwcmV2aW91cyBmb2N1c2VkIGVsZW1lbnQgd2FzIG1hdGNoaW5nIDpmb2N1
cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0CmluZGV4IDZhZGU1NTMyMzFkODdlYTBl
NGUxZDNjODBhYTM2YmIzMjFmNzA3MDIuLmRkMmYyOWE4ODk2YjQyOWNmMzhmOWNmMTJkNDhiNWMx
NGI1MDllMTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0
b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAogVGFy
Z2V0CiAKLUZBSUwgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9jdXMgbW92
ZSBhc3NlcnRfZXF1YWxzOiBiYWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVUI2lucHV0IHNob3VsZCBi
ZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCki
CitGQUlMIDpmb2N1cy12aXNpYmxlIG1hdGNoZXMgYWZ0ZXIgc2NyaXB0IGZvY3VzIG1vdmUgYXNz
ZXJ0X2VxdWFsczogYmFja2dyb3VuZENvbG9yIGZvciBESVYjdGFyZ2V0IHNob3VsZCBiZSBsaW1l
IGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIgYnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMTYtZXhwZWN0ZWQudHh0CmluZGV4IDNkODE3M2U4YjhhOTc4NWEzMjFlMjUxMTg4NjNlMGJj
YWU3ZTYwNzEuLjQxMmFjMzQ0OWQ5N2NjMzA5OTZiOTFlZTUxN2ViMDEyODVjODdkMGIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2li
bGUtMDE2LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIEluaXRpYWwKIAogCi1GQUlMIDpm
b2N1cy12aXNpYmxlIGFsd2F5cyBtYXRjaCBvbiB0ZXh0IGlucHV0cyBhc3NlcnRfZXF1YWxzOiBi
YWNrZ3JvdW5kQ29sb3IgZm9yIElOUFVUI3RhcmdldCBzaG91bGQgYmUgbGltZSBleHBlY3RlZCAi
cmdiKDAsIDI1NSwgMCkiIGJ1dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6Zm9jdXMtdmlz
aWJsZSBhbHdheXMgbWF0Y2ggb24gdGV4dCBpbnB1dHMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9p
b3MvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA3Y2NmNDYyMzFhMGFmM2JiOGIzZTQ5NDhhZDRiNjc2
ZjcwMWU2N2MyLi42ZGY3YzRmMGJjNDEzNWU5YjMyZWNhODAyN2Q0YzI5YjZmYmNmYjM5IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucworKysgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMzM5Myw3ICszMzkz
LDkgQEAgd2Via2l0Lm9yZy9iLzIwNzg1OCBmYXN0L2NhbnZhcy93ZWJnbC9zaW11bGF0ZWQtdmVy
dGV4QXR0cmliMC1pbnZhbGlkLWluZGljaWVzLmgKIAogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDEuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDcuaHRtbCBbIFNraXAg
XQord2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDguaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9i
LzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDkuaHRtbCBbIFNraXAgXQord2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEu
aHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTIuaHRtbCBbIFNraXAgXQog
d2Via2l0Lm9yZy9iLzIwOTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9z
ZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzIw
OTczNCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvaG92ZXIt
MDAyLmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMDgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDQ3NzExZTg2ZDk3YWMwOTRmYjk2OGQ5MzQ1OTQ4ODJhYzhl
NjAwNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTIgQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBwcm9n
cmFtbWF0aWNhbGx5IGZvY3VzaW5nIGFuIGVsZW1lbnQgYWZ0ZXIgYSBrZXlwcmVzcyBjYXVzZXMg
OmZvY3VzLXZpc2libGUgdG8gbWF0Y2guCitVc2UgdGhlIHRhYiBrZXkgdG8gbW92ZSBmb2N1cyB0
byB0aGUgYnV0dG9uIGJlbG93IHRoYXQgc2F5cyAiVGFiIHRvIG1lIGFuZCBwcmVzcyBFTlRFUi4i
CitQcmVzcyBFTlRFUi4KK0lmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZvY3Vz
ZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0
IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlbWVudCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0
aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgorCitUYWIgdG8gbWUgYW5kIHByZXNzIEVO
VEVSLgorSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4KKworSGFybmVzcyBFcnJv
ciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCisKK1RJTUVPVVQgUHJvZ3JhbW1hdGljIGZvY3Vz
IGFmdGVyIGtleXByZXNzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBUZXN0IHRpbWVkIG91
dAorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>421956</attachid>
            <date>2021-03-02 10:01:06 -0800</date>
            <delta_ts>2021-03-02 22:44:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222028-20210302190104.patch</filename>
            <type>text/plain</type>
            <size>34245</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNjg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjY5OGUwNmZkZjllYjdl
MTJmODNlNDA1M2ZjZDk4MzJmMjcwMjRmYy4uOTAzYTA3NmY1ZWQwMTliMDI0MzUyOGY5NzY2ZDlj
ZWRlNzY3ODAwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIxLTAzLTAyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3Rv
cnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjIwMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
Lzc0Njc5MjQzPgorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAg
IEFkZCBiYXNpYyA6Zm9jdXMtdmlzaWJsZSBpbXBsZW1lbnRhdGlvbiBiZWhpbmQgdGhlIEZvY3Vz
VmlzaWJsZUVuYWJsZWQgZXhwZXJpbWVudGFsIGZlYXR1cmUgZmxhZy4KKyAgICAgICAgVGhpcyBw
YXRjaCBpbXBsZW1lbnRzIHRoZSBoZXVyaXN0aWNzIGRlZmluZWQgaW4gdGhlIHNwZWMgKGh0dHBz
Oi8vZHJhZnRzLmNzc3dnLm9yZy9zZWxlY3RvcnMtNC8jdGhlLWZvY3VzLXZpc2libGUtcHNldWRv
KSwKKyAgICAgICAgZXhjZXB0IHRoZSBvbmVzIHJlbGF0ZWQgdG8gc2NyaXB0IGZvY3VzLgorCisg
ICAgICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLSoKKworICAgICAgICAqIGNzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVu
Y3Rpb25zLmg6CisgICAgICAgIChXZWJDb3JlOjptYXRjaGVzRm9jdXNWaXNpYmxlUHNldWRvQ2xh
c3MpOiBDaGVjayBlbGVtZW50Lmhhc0ZvY3VzVmlzaWJsZSgpLgorICAgICAgICAqIGRvbS9FbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OnNldEZvY3VzKTogV2hlbiBhbiBl
bGVtZW50IGxvc2VzIGZvY3VzIGl0IGFsd2F5cyBjYWxsIHNldEhhc0ZvY3VzVmlzaWJsZShmYWxz
ZSkuIFdoZW4gYW4gZWxlbWVudCBnZXRzIGZvY3VzZWQKKyAgICAgICAgaXQgY2FsbHMgc2V0SGFz
Rm9jdXNWaXNpYmxlKHRydWUpIGZvciBlbGVtZW50cyB0aGF0IHN1cHBvcnQga2V5Ym9hcmQgaW5w
dXQgKGFzIHRoZXkgYWx3YXlzIG1hdGNoIDpmb2N1cy12aXNpYmxlKS4KKyAgICAgICAgKFdlYkNv
cmU6OkVsZW1lbnQ6OnNldEhhc0ZvY3VzVmlzaWJsZSk6IE5ldyBtZXRob2QgZ2F0ZWQgYmVoaW5k
IHRoZSBleHBlcmltZW50YWwgZmxhZy4KKyAgICAgICAgKiBkb20vRWxlbWVudC5oOgorICAgICAg
ICAoV2ViQ29yZTo6RWxlbWVudDo6aGFzRm9jdXNWaXNpYmxlIGNvbnN0KTogQWRkIG5ldyBtZXRo
b2QuCisgICAgICAgICogZG9tL05vZGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vZGU6OmZsYWdI
YXNGb2N1c1Zpc2libGUpOiBBZGQgbmV3IGZsYWcgZm9yIDpmb2N1cy12aXNpYmxlIG1hdGNoaW5n
LgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2
ZW50SGFuZGxlcjo6aW50ZXJuYWxLZXlFdmVudCk6IElmIHRoZSB1c2VyIGludGVyYWN0cyB3aXRo
IHRoZSBwYWdlIHZpYSBrZXlib2FyZCwgY2FsbCBzZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSkuCisg
ICAgICAgIEF2b2lkIHRoYXQgZm9yIG1vZGlmaWVyIGtleXMuCisgICAgICAgICogcGFnZS9Gb2N1
c0NvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZh
bmNlRm9jdXNJbkRvY3VtZW50T3JkZXIpOiBDYWxsIHNldEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBm
b3Iga2V5Ym9hcmQgZm9jdXMuCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwpOiBDYWxsIHNl
dEhhc0ZvY3VzVmlzaWJsZSh0cnVlKSBmb3IgYW5jaG9yIGZvY3VzLgorICAgICAgICAqIHN0eWxl
L1N0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpTaGFy
aW5nUmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudCBjb25zdCk6IEFkZCBjaGVjayBm
b3IgaGFzRm9jdXNWaXNpYmxlKCkuCisKIDIwMjEtMDMtMDEgIEFuZHJlcyBHb256YWxleiAgPGFu
ZHJlc2dfMjJAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyIG1ldGhvZCB0byByZXRyaWV2ZSByZWxhdGVkIGVycm9yIG1lc3NhZ2UgZWxlbWVudHMgc2hv
dWxkIHJldHVybiBub3QtaWdub3JlZCBhY2Nlc3NpYmlsaXR5IGVsZW1lbnRzLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmgKaW5kZXggNmY3
N2Y5ZTY0YmNiYmQzYjI2ZTgyYWU5NTE1MWYwZDhjZTBmYmFlZC4uODAwMTNmMDVmMWVkZTFiYmMw
NjY5MDg2MmQ4MmRmOTNlNGZjYzk3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1Nl
bGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2Vs
ZWN0b3JDaGVja2VyVGVzdEZ1bmN0aW9ucy5oCkBAIC00NzQsNyArNDc0LDEwIEBAIEFMV0FZU19J
TkxJTkUgYm9vbCBtYXRjaGVzRm9jdXNQc2V1ZG9DbGFzcyhjb25zdCBFbGVtZW50JiBlbGVtZW50
KQogCiBBTFdBWVNfSU5MSU5FIGJvb2wgbWF0Y2hlc0ZvY3VzVmlzaWJsZVBzZXVkb0NsYXNzKGNv
bnN0IEVsZW1lbnQmIGVsZW1lbnQpCiB7Ci0gICAgcmV0dXJuIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6Zm9yY2VQc2V1ZG9TdGF0ZShlbGVtZW50LCBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NG
b2N1c1Zpc2libGUpOworICAgIGlmIChJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmZvcmNlUHNl
dWRvU3RhdGUoZWxlbWVudCwgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKSkK
KyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICByZXR1cm4gZWxlbWVudC5oYXNGb2N1c1Zpc2li
bGUoKSAmJiBpc0ZyYW1lRm9jdXNlZChlbGVtZW50KTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4IDFmYzQyNjVlNWY3NDQzOGI4MWI4NDI2ODc5
ZWQwNGM2Y2UwYTEwOTMuLmE1NzJmZjcxMGY1MWIwNjhmNmEwNDhiYzU5NzczZjA2YjAyNmRkMjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTc0NCw2ICs3NDQsMjYgQEAgdm9pZCBFbGVtZW50
OjpzZXRGb2N1cyhib29sIGZsYWcpCiAKICAgICBmb3IgKGF1dG8qIGVsZW1lbnQgPSB0aGlzOyBl
bGVtZW50OyBlbGVtZW50ID0gZWxlbWVudC0+cGFyZW50RWxlbWVudEluQ29tcG9zZWRUcmVlKCkp
CiAgICAgICAgIGVsZW1lbnQtPnNldEhhc0ZvY3VzV2l0aGluKGZsYWcpOworCisgICAgYXV0byBj
b21wdXRlSGFzRm9jdXNWaXNpYmxlID0gWyZdIHsKKyAgICAgICAgaWYgKCFmbGFnKQorICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAvLyBFbGVtZW50cyB0aGF0IHN1cHBvcnQga2V5
Ym9hcmQgaW5wdXQgKGZvcm0gaW5wdXRzIGFuZCBjb250ZW50ZWRpdGFibGUpIGFsd2F5cyBtYXRj
aCA6Zm9jdXMtdmlzaWJsZSB3aGVuIGZvY3VzZWQuCisgICAgICAgIHJldHVybiBoYXNGb2N1c1Zp
c2libGUoKSB8fCBpc1RleHRGaWVsZCgpIHx8IGlzQ29udGVudEVkaXRhYmxlKCk7CisgICAgfTsK
KyAgICBzZXRIYXNGb2N1c1Zpc2libGUoY29tcHV0ZUhhc0ZvY3VzVmlzaWJsZSgpKTsKK30KKwor
dm9pZCBFbGVtZW50OjpzZXRIYXNGb2N1c1Zpc2libGUoYm9vbCBmbGFnKQoreworICAgIGlmICgh
ZG9jdW1lbnQoKS5zZXR0aW5ncygpLmZvY3VzVmlzaWJsZUVuYWJsZWQoKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgaWYgKGhhc0ZvY3VzVmlzaWJsZSgpID09IGZsYWcpCisgICAgICAgIHJldHVy
bjsKKworICAgIFN0eWxlOjpQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbiBzdHlsZUludmFs
aWRhdGlvbigqdGhpcywgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRm9jdXNWaXNpYmxlKTsKKyAg
ICBzZXROb2RlRmxhZyhOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlLCBmbGFnKTsKIH0KIAogdm9p
ZCBFbGVtZW50OjpzZXRIYXNGb2N1c1dpdGhpbihib29sIGZsYWcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApp
bmRleCA5NmJkNzYwM2ZlZDc0MWU5MjcxZDliYjVhMmVhNjE4YzQwNzk4NDNjLi45NDljYmJjM2Y5
NjUxNzU3NmVlMjMyNmQ5OWRhMmYzODk4NzRkNzE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTMx
OSwxMiArMzE5LDE0IEBAIHB1YmxpYzoKICAgICBib29sIGhvdmVyZWQoKSBjb25zdCB7IHJldHVy
biBpc1VzZXJBY3Rpb25FbGVtZW50KCkgJiYgaXNVc2VyQWN0aW9uRWxlbWVudEhvdmVyZWQoKTsg
fQogICAgIGJvb2wgZm9jdXNlZCgpIGNvbnN0IHsgcmV0dXJuIGlzVXNlckFjdGlvbkVsZW1lbnQo
KSAmJiBpc1VzZXJBY3Rpb25FbGVtZW50Rm9jdXNlZCgpOyB9CiAgICAgYm9vbCBpc0JlaW5nRHJh
Z2dlZCgpIGNvbnN0IHsgcmV0dXJuIGlzVXNlckFjdGlvbkVsZW1lbnQoKSAmJiBpc1VzZXJBY3Rp
b25FbGVtZW50RHJhZ2dlZCgpOyB9CisgICAgYm9vbCBoYXNGb2N1c1Zpc2libGUoKSBjb25zdCB7
IHJldHVybiBoYXNOb2RlRmxhZyhOb2RlRmxhZzo6SGFzRm9jdXNWaXNpYmxlKTsgfTsKICAgICBi
b29sIGhhc0ZvY3VzV2l0aGluKCkgY29uc3QgeyByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6
Okhhc0ZvY3VzV2l0aGluKTsgfTsKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRBY3RpdmUoYm9vbCA9
IHRydWUsIGJvb2wgcGF1c2UgPSBmYWxzZSwgU3R5bGU6OkludmFsaWRhdGlvblNjb3BlID0gU3R5
bGU6OkludmFsaWRhdGlvblNjb3BlOjpBbGwpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRIb3ZlcmVk
KGJvb2wgPSB0cnVlLCBTdHlsZTo6SW52YWxpZGF0aW9uU2NvcGUgPSBTdHlsZTo6SW52YWxpZGF0
aW9uU2NvcGU6OkFsbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEZvY3VzKGJvb2wpOwogICAgIHZv
aWQgc2V0QmVpbmdEcmFnZ2VkKGJvb2wpOworICAgIHZvaWQgc2V0SGFzRm9jdXNWaXNpYmxlKGJv
b2wpOwogICAgIHZvaWQgc2V0SGFzRm9jdXNXaXRoaW4oYm9vbCk7CiAKICAgICBPcHRpb25hbDxp
bnQ+IHRhYkluZGV4U2V0RXhwbGljaXRseSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKaW5kZXggNGNhOWI1
ODhmMjBlOTRlZjMyNTRkY2E3OGFiZjJiOWVlODBiYTM5NC4uNGViMmFiOTI1ZmFmNDI2ODUzNTZh
OTg4MWNhM2UzMzNlOTFhZDhjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCkBAIC01MDgsNiArNTA4LDcgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBpbnQzMl90IGZsYWdJc1NoYWRvd1Jvb3QoKSB7IHJldHVybiBzdGF0
aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6SXNTaGFkb3dSb290KTsgfQogICAgIHN0YXRpYyBp
bnQzMl90IGZsYWdJc0hUTUwoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxh
Zzo6SXNIVE1MRWxlbWVudCk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBmbGFnSXNMaW5rKCkgeyBy
ZXR1cm4gc3RhdGljX2Nhc3Q8aW50MzJfdD4oTm9kZUZsYWc6OklzTGluayk7IH0KKyAgICBzdGF0
aWMgaW50MzJfdCBmbGFnSGFzRm9jdXNWaXNpYmxlKCkgeyByZXR1cm4gc3RhdGljX2Nhc3Q8aW50
MzJfdD4oTm9kZUZsYWc6Okhhc0ZvY3VzVmlzaWJsZSk7IH0KICAgICBzdGF0aWMgaW50MzJfdCBm
bGFnSGFzRm9jdXNXaXRoaW4oKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxh
Zzo6SGFzRm9jdXNXaXRoaW4pOyB9CiAgICAgc3RhdGljIGludDMyX3QgZmxhZ0lzUGFyc2luZ0No
aWxkcmVuRmluaXNoZWQoKSB7IHJldHVybiBzdGF0aWNfY2FzdDxpbnQzMl90PihOb2RlRmxhZzo6
SXNQYXJzaW5nQ2hpbGRyZW5GaW5pc2hlZCk7IH0KICNlbmRpZiAvLyBFTkFCTEUoSklUKQpAQCAt
NTQ5LDYgKzU1MCw3IEBAIHByb3RlY3RlZDoKICNlbmRpZgogICAgICAgICBJc0NvbXB1dGVkU3R5
bGVJbnZhbGlkRmxhZyA9IDEgPDwgMjYsCiAKKyAgICAgICAgSGFzRm9jdXNWaXNpYmxlID0gMSA8
PCAyNywKICAgICAgICAgLy8gQml0cyAyNy0zMSBhcmUgZnJlZS4KICAgICB9OwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggYWVlZDVjMmIzODA3OTZlMTU2MTc0MDQ5NDZl
YmZkYTFjNWI0NjYyOS4uYTA0YTllMzUwYTZiNDdiNzNjYjlkYWI3MDM2ZjZlMzg0YWY3YjA0NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMzUzMiw2ICszNTMyLDExIEBA
IGJvb2wgRXZlbnRIYW5kbGVyOjppbnRlcm5hbEtleUV2ZW50KGNvbnN0IFBsYXRmb3JtS2V5Ym9h
cmRFdmVudCYgaW5pdGlhbEtleUV2ZW50CiAgICAgICAgIGtleWRvd24tPnByZXZlbnREZWZhdWx0
KCk7CiAgICAga2V5ZG93bi0+c2V0VGFyZ2V0KGVsZW1lbnQpOwogCisgICAgLy8gSWYgdGhlIHVz
ZXIgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdmlhIHRoZSBrZXlib2FyZCwgdGhlIGN1cnJlbnRs
eSBmb2N1c2VkIGVsZW1lbnQgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlLgorICAgIC8vIEp1
c3QgdHlwaW5nIGEgbW9kaWZpZXIga2V5IGlzIG5vdCBjb25zaWRlcmVkIHVzZXIgaW50ZXJhY3Rp
b24gd2l0aCB0aGUgcGFnZSwgYnV0IFNoaWZ0ICsgYSAob3IgQ2FwcyBMb2NrICsgYSkgaXMgY29u
c2lkZXJlZCBhbiBpbnRlcmFjdGlvbi4KKyAgICBpZiAoa2V5ZG93bi0+bW9kaWZpZXJLZXlzKCku
aXNFbXB0eSgpIHx8ICgoa2V5ZG93bi0+c2hpZnRLZXkoKSB8fCBrZXlkb3duLT5jYXBzTG9ja0tl
eSgpKSAmJiAhaW5pdGlhbEtleUV2ZW50LnRleHQoKS5pc0VtcHR5KCkpKQorICAgICAgICBlbGVt
ZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CisKICAgICBpZiAoaW5pdGlhbEtleUV2ZW50
LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpSYXdLZXlEb3duKSB7CiAgICAgICAgIGVsZW1lbnQt
PmRpc3BhdGNoRXZlbnQoa2V5ZG93bik7CiAgICAgICAgIC8vIElmIGZyYW1lIGNoYW5nZWQgYXMg
YSByZXN1bHQgb2Yga2V5ZG93biBkaXNwYXRjaCwgdGhlbiByZXR1cm4gdHJ1ZSB0byBhdm9pZCBz
ZW5kaW5nIGEgc3Vic2VxdWVudCBrZXlwcmVzcyBtZXNzYWdlIHRvIHRoZSBuZXcgZnJhbWUuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggMDdhYmFkMDYwZTAxM2Vi
OGI3YWM1NjAwZGQ0NDE5NmQyYjFhYTlmYS4uZWFkZGE3OTA5NTk3ZWMyN2FlNWFhNzE5YTY5NWMz
MDQyNTEwMjQ5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xs
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcApAQCAt
NTMzLDYgKzUzMyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3Vt
ZW50T3JkZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgICAgIH0KICAgICB9
CiAKKyAgICBlbGVtZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgZWxlbWVudC0+
Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1l
Vmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggNjlhY2Zi
MGQxYjZiZmQ0OGJiYTljOTYxZGE0NDUzNjUzYzQ0NTNiZS4uNjgzZTM2ZWY1NWYyYTkzNWQ5MGFi
NTUwZGM1OTYxYTIwZjkwOGMzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFt
ZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMjI2
OCw5ICsyMjY4LDEwIEBAIGJvb2wgRnJhbWVWaWV3OjpzY3JvbGxUb0ZyYWdtZW50SW50ZXJuYWwo
Y29uc3QgU3RyaW5nJiBmcmFnbWVudElkZW50aWZpZXIpCiAgICAgCiAgICAgLy8gSWYgdGhlIGFu
Y2hvciBhY2NlcHRzIGtleWJvYXJkIGZvY3VzLCBtb3ZlIGZvY3VzIHRoZXJlIHRvIGFpZCB1c2Vy
cyByZWx5aW5nIG9uIGtleWJvYXJkIG5hdmlnYXRpb24uCiAgICAgaWYgKGFuY2hvckVsZW1lbnQp
IHsKLSAgICAgICAgaWYgKGFuY2hvckVsZW1lbnQtPmlzRm9jdXNhYmxlKCkpCisgICAgICAgIGlm
IChhbmNob3JFbGVtZW50LT5pc0ZvY3VzYWJsZSgpKSB7CisgICAgICAgICAgICBhbmNob3JFbGVt
ZW50LT5zZXRIYXNGb2N1c1Zpc2libGUodHJ1ZSk7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRG
b2N1c2VkRWxlbWVudChhbmNob3JFbGVtZW50LmdldCgpKTsKLSAgICAgICAgZWxzZSB7CisgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBkb2N1bWVudC5zZXRGb2N1c2VkRWxlbWVudChudWxs
cHRyKTsKICAgICAgICAgICAgIGRvY3VtZW50LnNldEZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9k
ZShhbmNob3JFbGVtZW50LmdldCgpKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwCmluZGV4IGM3ZjgxYjJjNDc3ZmI0ODc2ZDdhNTYw
ZjE0NzllZDY5YjRjYzdhMDUuLmQ5NjFmNzk2ZTZmNTc5MzRhMjM5NmFkNjRmMDIzMDg1NTQ5ODI1
OTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2hhcmluZ1Jlc29sdmVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNoYXJpbmdSZXNvbHZlci5jcHAK
QEAgLTIyNyw2ICsyMjcsOCBAQCBib29sIFNoYXJpbmdSZXNvbHZlcjo6Y2FuU2hhcmVTdHlsZVdp
dGhFbGVtZW50KGNvbnN0IENvbnRleHQmIGNvbnRleHQsIGNvbnN0IFN0eQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuZm9jdXNlZCgpICE9IGVsZW1lbnQu
Zm9jdXNlZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKGNhbmRpZGF0ZUVsZW1l
bnQuaGFzRm9jdXNWaXNpYmxlKCkgIT0gZWxlbWVudC5oYXNGb2N1c1Zpc2libGUoKSkKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOwogICAgIGlmIChjYW5kaWRhdGVFbGVtZW50Lmhhc0ZvY3VzV2l0aGlu
KCkgIT0gZWxlbWVudC5oYXNGb2N1c1dpdGhpbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgaWYgKGNhbmRpZGF0ZUVsZW1lbnQuaXNCZWluZ0RyYWdnZWQoKSAhPSBlbGVtZW50LmlzQmVp
bmdEcmFnZ2VkKCkpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKaW5kZXggY2NiZTU5YmUyNzM5YjJmM2VlNmM5NzE5ZmJlZjMxMzQwZDY1
NGRiMi4uNmE3MDZkODk3NGYwODRhM2Y5YTczODk3Mzk3OTJhZjg5MTFiNDM0YSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE0IEBACisyMDIxLTAzLTAyICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0Bp
Z2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNpYmxlIGltcGxlbWVu
dGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjIwMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0Njc5MjQzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgICogcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3Rh
dGlvbnM6IFNraXAgZm9jdXMtdmlzaWJsZS0wMDguaHRtbCBhbmQgZm9jdXMtdmlzaWJsZS0wMTEu
aHRtbCBhcyB0aGV5IHRpbWVvdXQgaW4gaU9TLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MDgtZXhwZWN0ZWQudHh0OiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDgtZXhwZWN0ZWQu
dHh0LgorCiAyMDIxLTAzLTAxICBBbmRyZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNv
bT4KIAogICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBtZXRob2QgdG8gcmV0
cmlldmUgcmVsYXRlZCBlcnJvciBtZXNzYWdlIGVsZW1lbnRzIHNob3VsZCByZXR1cm4gbm90LWln
bm9yZWQgYWNjZXNzaWJpbGl0eSBlbGVtZW50cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CmluZGV4IDIwZTY1YzBlYmJhY2VhOTAzZTk1NTBlNjc2Mjc5ZWE0NzVlZWEyMGEuLmE4NTg0MTBl
NjFhYzhjMWUzYTliOTRiYTdiYzExM2I4ZGE2MjQ4ZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTAzLTAyICBNYW51ZWwgUmVnbyBDYXNhc25v
dmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtzZWxlY3RvcnNdIDpmb2N1cy12aXNp
YmxlIGltcGxlbWVudGF0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjIwMjgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0Njc5MjQzPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFVwZGF0ZSBleHBlY3Rh
dGlvbnMsIG1vc3Qgb2YgdGhlIDpmb2N1cy12aXNpYmxlIHRlc3RzIGFyZSBwYXNzaW5nIG5vdy4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZv
Y3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDAxLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUt
MDA3LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sOiBJbXBvcnQgbGFzdCBjaGFuZ2VzIG9uIHRoaXMg
dGVzdAorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDA4LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKHNlZSBodHRwczovL2dpdGh1Yi5jb20v
d2ViLXBsYXRmb3JtLXRlc3RzL3dwdC9wdWxsLzI3NjU2KS4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0w
MTEuaHRtbDogSW1wb3J0IGxhc3QgY2hhbmdlcyBvbiB0aGlzIHRlc3QKKyAgICAgICAgKHNlZSBo
dHRwczovL2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdC9wdWxsLzI3NzAwKS4KKyAg
ICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAx
My1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMTQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9y
bS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dDoKKwog
MjAyMS0wMi0yOCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBCbGVuZGluZyBvZiBib3JkZXItaW1hZ2Utd2lkdGggc2hvdWxkIGJlIGRpc2NyZXRlIGJldHdl
ZW4gImF1dG8iIHZhbHVlcyBhbmQgb3RoZXIgdHlwZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1pbi1m
b2N1cy1ldmVudC0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1l
eHBlY3RlZC50eHQKaW5kZXggYzEzYmUwMGZkOTVlNzNkYjQxNzhkYzI4ZTRkNDM5MDNhOTlkNDdm
NC4uZDA2MDU0OGNmYTJkMWFjNzcyZjBjMTViNjI1OGEyYjFkNzg4NjQzMSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3Jz
L2ZvY3VzLWluLWZvY3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZv
Y3VzLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogUEFTUyBDaGVj
a3MgdGhhdCAnOmZvY3VzJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzJyBldmVu
dCBoYW5kbGVyCi1GQUlMIENoZWNrcyB0aGF0ICc6Zm9jdXMtdmlzaWJsZScgcHNldWRvLWNsYXNz
IG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlciBhc3NlcnRfdW5yZWFjaGVkOiAn
OmZvY3VzLXZpc2libGUnICBpcyBhbiBpbnZhbGlkIHNlbGVjdG9yLiBTeW50YXhFcnJvcjogRXJy
b3I6IGFzc2VydF9lcXVhbHM6ICc6Zm9jdXMtdmlzaWJsZScgbWF0Y2hlcyBldmVudC50YXJnZXQg
ZXhwZWN0ZWQgbnVsbCBidXQgZ290IEVsZW1lbnQgbm9kZSA8aW5wdXQgdHlwZT0idGV4dCI+PC9p
bnB1dD4gUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIENoZWNrcyB0aGF0ICc6Zm9jdXMt
dmlzaWJsZScgcHNldWRvLWNsYXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxl
cgogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXdpdGhpbicgcHNldWRvLWNsYXNzIG1hdGNoZXMg
aW5zaWRlICdmb2N1cycgZXZlbnQgaGFuZGxlcgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtaW4tZm9j
dXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLWluLWZvY3VzaW4tZXZlbnQtMDAx
LWV4cGVjdGVkLnR4dAppbmRleCAyN2UxYTlhZjJhYmU4ZjY3Yjg4ZWJmYzc3MGNlMzMzNDIzNzkx
ZWRlLi43ZmU1MDMzY2U4YTQ4YzY2NjgxODkyOTJkOGEzOGI5NzdlYmYzY2QyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtaW4tZm9jdXNpbi1ldmVudC0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy1p
bi1mb2N1c2luLWV2ZW50LTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIAogUEFT
UyBDaGVja3MgdGhhdCAnOmZvY3VzJyBwc2V1ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3Vz
aW4nIGV2ZW50IGhhbmRsZXIKLUZBSUwgQ2hlY2tzIHRoYXQgJzpmb2N1cy12aXNpYmxlJyBwc2V1
ZG8tY2xhc3MgbWF0Y2hlcyBpbnNpZGUgJ2ZvY3VzaW4nIGV2ZW50IGhhbmRsZXIgYXNzZXJ0X3Vu
cmVhY2hlZDogJzpmb2N1cy12aXNpYmxlJyAgaXMgYW4gaW52YWxpZCBzZWxlY3Rvci4gU3ludGF4
RXJyb3I6IEVycm9yOiBhc3NlcnRfZXF1YWxzOiAnOmZvY3VzLXZpc2libGUnIG1hdGNoZXMgZXZl
bnQudGFyZ2V0IGV4cGVjdGVkIG51bGwgYnV0IGdvdCBFbGVtZW50IG5vZGUgPGlucHV0IHR5cGU9
InRleHQiPjwvaW5wdXQ+IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBDaGVja3MgdGhh
dCAnOmZvY3VzLXZpc2libGUnIHBzZXVkby1jbGFzcyBtYXRjaGVzIGluc2lkZSAnZm9jdXNpbicg
ZXZlbnQgaGFuZGxlcgogUEFTUyBDaGVja3MgdGhhdCAnOmZvY3VzLXdpdGhpbicgcHNldWRvLWNs
YXNzIG1hdGNoZXMgaW5zaWRlICdmb2N1c2luJyBldmVudCBoYW5kbGVyCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9y
cy9mb2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDEtZXhw
ZWN0ZWQudHh0CmluZGV4IDg1MGM3YWIxNzAyYjM5MzI0OTAzNGQwYjMzNmVjOTU2YTNjMTk0MzAu
LmVjNzdjZWZjMDI1ODFlNjU1MTU3ODAzZTY5OGU0MzhkM2I2ODkzMWYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAxLWV4
cGVjdGVkLnR4dApAQCAtNSw1ICs1LDUgQEAgSWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tn
cm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUuIElmIHRoZSBlbGUKIAogRm9j
dXMgbWUuCiAKLUZBSUwgS2V5Ym9hcmQgZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxl
IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgRElWI2VsIHNob3VsZCBiZSBncmVlbiBl
eHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1MgS2V5
Ym9hcmQgZm9jdXMgc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9m
b2N1cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMDItZXhwZWN0
ZWQudHh0CmluZGV4IGI1YTllZjQxNGQyZjMwZDhjZmIxMmU4Y2IwNmRkOWJkMjM5OWM5YTAuLjkz
NTg3ZGRkYjYyYjQ1ZmE0ZjA1OWM2YWU5ZTY1Y2I3ODllYzc1Y2IgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwMi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDAyLWV4cGVj
dGVkLnR4dApAQCAtMTgsMTggKzE4LDE4IEBAIElmIHRoZSBlbGVtZW50IGhhcyBhIHJlZCBiYWNr
Z3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiB0aGUgZWxlCiAKIAog
Ci1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxIHZpYSBtb3VzZSBzaG91bGQgbWF0Y2gg
OmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0X2VxdWFs
czogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDEgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVk
ICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1cyBlbGVt
ZW50IElOUFVUI2lucHV0MiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFz
IGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBm
b3IgSU5QVVQjaW5wdXQyIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCki
IGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDMg
dmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXli
b2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lucHV0MyBz
aG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwg
MCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ0IHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQgYXNzZXJ0
X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDQgc2hvdWxkIGJlIGdyZWVuIGV4
cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJTCBGb2N1
cyBlbGVtZW50IElOUFVUI2lucHV0NSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNp
YmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVD
b2xvciBmb3IgSU5QVVQjaW5wdXQ1IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEy
OCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJTlBVVCNp
bnB1dDYgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0
cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElOUFVUI2lu
cHV0NiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJy
Z2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ3IHZpYSBtb3VzZSBz
aG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQg
YXNzZXJ0X2VxdWFsczogb3V0bGluZUNvbG9yIGZvciBJTlBVVCNpbnB1dDcgc2hvdWxkIGJlIGdy
ZWVuIGV4cGVjdGVkICJyZ2IoMCwgMTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgotRkFJ
TCBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OCB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1
cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91
dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQ4IHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdi
KDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKLUZBSUwgRm9jdXMgZWxlbWVudCBJ
TlBVVCNpbnB1dDkgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBz
dXBwb3J0cyBrZXlib2FyZCBpbnB1dCBhc3NlcnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIElO
UFVUI2lucHV0OSBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQg
Z290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMCB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMCBzaG91
bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwg
MCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMSB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9l
cXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQjaW5wdXQxMSBzaG91bGQgYmUgZ3JlZW4gZXhw
ZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3Vz
IGVsZW1lbnQgSU5QVVQjaW5wdXQxMiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNp
YmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVD
b2xvciBmb3IgSU5QVVQjaW5wdXQxMiBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAx
MjgsIDApIiBidXQgZ290ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgSU5QVVQj
aW5wdXQxMyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBv
cnRzIGtleWJvYXJkIGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgSU5QVVQj
aW5wdXQxMyBzaG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290
ICJyZ2IoMCwgMCwgMCkiCi1GQUlMIEZvY3VzIGVsZW1lbnQgVEVYVEFSRUEjaW5wdXQxNCB2aWEg
bW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJk
IGlucHV0IGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgVEVYVEFSRUEjaW5wdXQxNCBz
aG91bGQgYmUgZ3JlZW4gZXhwZWN0ZWQgInJnYigwLCAxMjgsIDApIiBidXQgZ290ICJyZ2IoMCwg
MCwgMCkiCitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxIHZpYSBtb3VzZSBzaG91bGQg
bWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1Mg
Rm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDIgdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMt
dmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50
IElOUFVUI2lucHV0MyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQ0
IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUgYXMgaXQgc3VwcG9ydHMga2V5
Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNpbnB1dDUgdmlhIG1vdXNlIHNo
b3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0cyBrZXlib2FyZCBpbnB1dAor
UEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0NiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpm
b2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVs
ZW1lbnQgSU5QVVQjaW5wdXQ3IHZpYSBtb3VzZSBzaG91bGQgbWF0Y2ggOmZvY3VzLXZpc2libGUg
YXMgaXQgc3VwcG9ydHMga2V5Ym9hcmQgaW5wdXQKK1BBU1MgRm9jdXMgZWxlbWVudCBJTlBVVCNp
bnB1dDggdmlhIG1vdXNlIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBhcyBpdCBzdXBwb3J0
cyBrZXlib2FyZCBpbnB1dAorUEFTUyBGb2N1cyBlbGVtZW50IElOUFVUI2lucHV0OSB2aWEgbW91
c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlu
cHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMCB2aWEgbW91c2Ugc2hvdWxkIG1h
dGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZv
Y3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQxMSB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12
aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQg
SU5QVVQjaW5wdXQxMiB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0
IHN1cHBvcnRzIGtleWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgSU5QVVQjaW5wdXQx
MyB2aWEgbW91c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtl
eWJvYXJkIGlucHV0CitQQVNTIEZvY3VzIGVsZW1lbnQgVEVYVEFSRUEjaW5wdXQxNCB2aWEgbW91
c2Ugc2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzIGl0IHN1cHBvcnRzIGtleWJvYXJkIGlu
cHV0CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9j
dXMtdmlzaWJsZS0wMDYtZXhwZWN0ZWQudHh0CmluZGV4IDVhYWNkNGIxMWYzOGM2M2MxZTY5Njk1
OGY1ZDYwNjRmMTQ2Y2JjNDguLjk4MTE1YjFlMTJkMDBkMDY0NWRiMzk5OTc4YWU4ZWI2Y2YwYjI1
MmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNi1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDA2LWV4cGVjdGVkLnR4dApAQCAtNSw1ICs1LDUgQEAgSWYgdGhlIGVsZW1l
bnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUu
IElmIHRoZSBlbGUKIAogRm9jdXMgbWUKIAotRkFJTCBGb2N1cyBzaG91bGQgYWx3YXlzIG1hdGNo
IDpmb2N1cy12aXNpYmxlIG9uIGNvbnRlbnQgZWRpdGFibGUgZGl2cyBhc3NlcnRfZXF1YWxzOiBv
dXRsaW5lQ29sb3IgZm9yIFNQQU4jZWwgc2hvdWxkIGJlIGdyZWVuIGV4cGVjdGVkICJyZ2IoMCwg
MTI4LCAwKSIgYnV0IGdvdCAicmdiKDAsIDAsIDApIgorUEFTUyBGb2N1cyBzaG91bGQgYWx3YXlz
IG1hdGNoIDpmb2N1cy12aXNpYmxlIG9uIGNvbnRlbnQgZWRpdGFibGUgZGl2cwogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3
LWV4cGVjdGVkLnR4dAppbmRleCA4YmI5Y2YzMDcwMGYxMzU4MmVhNzhhYjIxNzNlM2EyMjJiOWNk
YWNkLi45ZjFlZTA5ODlkYzE3N2E3MjRhYjdkYzljY2M3YTJlMDg3MmQ2ZmM0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3Rv
cnMvZm9jdXMtdmlzaWJsZS0wMDctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAw
Ny1leHBlY3RlZC50eHQKQEAgLTIsOSArMiw5IEBAIFRoaXMgdGVzdCBjaGVja3MgdGhhdCB1c2lu
ZyB0aGUga2V5Ym9hcmQgaW4gYSB3YXkgdGhhdCBkb2VzIG5vdCBtb3ZlIGZvY3VzIHN0aWxsCiBJ
ZiB0aGUgdXNlci1hZ2VudCBkb2VzIG5vdCBjbGFpbSB0byBzdXBwb3J0IHRoZSA6Zm9jdXMtdmlz
aWJsZSBwc2V1ZG8tY2xhc3MgdGhlbiBTS0lQIHRoaXMgdGVzdC4KIFVzZSB0aGUgbW91c2UgdG8g
Zm9jdXMgdGhlIGVsZW1lbnQgYmVsb3cgdGhhdCBzYXlzICJDbGljayBtZS4iCiBJZiB0aGUgZWxl
bWVudCBoYXMgYSByZWQgb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4K
LVByZXNzIHRoZSBTSElGVCBrZXkuCitQcmVzcyB0aGUgRU5URVIga2V5LgogSWYgdGhlIGVsZW1l
bnQgbm93IGhhcyBhIGdyZWVuIG91dGxpbmUgYW5kIG5vdCByZWQgYmFja2dyb3VuZCwgdGhlbiB0
aGUgdGVzdCByZXN1bHQgaXMgU1VDQ0VTUy4KIENsaWNrIG1lLgogCi1GQUlMIFVzaW5nIGtleWJv
YXJkIHdoaWxlIGVsZW1lbnQgaXMgZm9jdXNlZCBzaG91bGQgdHJpZ2dlciA6Zm9jdXMtdmlzaWJs
ZTsgdXNpbmcgbW91c2Ugd2l0aG91dCBtb3ZpbmcgZm9jdXMgc2hvdWxkIG5vdCBjYW5jZWwgaXQ7
IG1vdmluZyBmb2N1cyB1c2luZyBtb3VzZSBzaG91bGQgY2FuY2VsIGl0LiBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigwLCAwLCAwKSIKK1BBU1Mg
VXNpbmcga2V5Ym9hcmQgd2hpbGUgZWxlbWVudCBpcyBmb2N1c2VkIHNob3VsZCB0cmlnZ2VyIDpm
b2N1cy12aXNpYmxlOyB1c2luZyBtb3VzZSB3aXRob3V0IG1vdmluZyBmb2N1cyBzaG91bGQgbm90
IGNhbmNlbCBpdDsgbW92aW5nIGZvY3VzIHVzaW5nIG1vdXNlIHNob3VsZCBjYW5jZWwgaXQuCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3
Lmh0bWwKaW5kZXggMGZjMTk2Y2JlY2RmMWIxOThhNWJhZGNlMzY5NGIxZWM3Y2M5NWQ0Zi4uMTQ5
YTZmNjhmZThjMzAwZjVkZDE3MmI5N2QyZjI5NzRmNWUzMTIxMCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDA3Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA3Lmh0bWwKQEAgLTM2LDcg
KzM2LDcgQEAKICAgICA8bGk+SWYgdGhlIHVzZXItYWdlbnQgZG9lcyBub3QgY2xhaW0gdG8gc3Vw
cG9ydCB0aGUgPGNvZGU+OmZvY3VzLXZpc2libGU8L2NvZGU+IHBzZXVkby1jbGFzcyB0aGVuIFNL
SVAgdGhpcyB0ZXN0LjwvbGk+CiAgICAgPGxpPlVzZSB0aGUgbW91c2UgdG8gZm9jdXMgdGhlIGVs
ZW1lbnQgYmVsb3cgdGhhdCBzYXlzICJDbGljayBtZS4iPC9saT4KICAgICA8bGk+SWYgdGhlIGVs
ZW1lbnQgaGFzIGEgcmVkIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxVUkUu
PC9saT4KLSAgICA8bGk+UHJlc3MgdGhlIFNISUZUIGtleS48L2xpPgorICAgIDxsaT5QcmVzcyB0
aGUgRU5URVIga2V5LjwvbGk+CiAgICAgPGxpPklmIHRoZSBlbGVtZW50IG5vdyBoYXMgYSBncmVl
biBvdXRsaW5lIGFuZCBub3QgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlz
IFNVQ0NFU1MuPC9saT4KICAgPC9vbD4KIApAQCAtNjUsNyArNjUsOCBAQAogICAgICAgICBvbmUu
YWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLCB0LnN0ZXBfZnVuYyh0ZXN0X21vZGFsaXR5X2NoYW5n
ZSkpOwogICAgICAgICBvbmUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCBoYW5kbGVfaW5p
dGlhbF9mb2N1cyk7CiAKLSAgICAgICAgdGVzdF9kcml2ZXIuc2VuZF9rZXlzKG9uZSwgIlx1RTA1
MCIpOworICAgICAgICBjb25zdCBlbnRlciA9ICJcdUUwMDciOworICAgICAgICB0ZXN0X2RyaXZl
ci5zZW5kX2tleXMob25lLCBlbnRlcik7CiAgICAgICB9KTsKIAogICAgICAgY29uc3QgdGVzdF9t
b2RhbGl0eV9jaGFuZ2UgPSB0LnN0ZXBfZnVuYygoKSA9PiB7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMt
dmlzaWJsZS0wMDgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA4LWV4cGVjdGVkLnR4
dAppbmRleCAwNDc3MTFlODZkOTdhYzA5NGZiOTY4ZDkzNDU5NDg4MmFjOGU2MDA3Li44MGZkNmVi
NGFhMWY2ZmEwZGIwMDdlOGVkM2M0YmY1NTE0YWU2MjE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlz
aWJsZS0wMDgtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBlY3RlZC50
eHQKQEAgLTYsNyArNiw1IEBAIElmIHRoZSBlbGVtZW50IHRoYXQgc2F5cyAiSSB3aWxsIGJlIGZv
Y3VzZWQgcHJvZ3JhbW1hdGljYWxseS4iIGhhcyBhIHJlZCBiYWNrZ3JvCiBUYWIgdG8gbWUgYW5k
IHByZXNzIEVOVEVSLgogSSB3aWxsIGJlIGZvY3VzZWQgcHJvZ3JhbW1hdGljYWxseS4KIAotSGFy
bmVzcyBFcnJvciAoVElNRU9VVCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgUHJvZ3JhbW1h
dGljIGZvY3VzIGFmdGVyIGtleXByZXNzIHNob3VsZCBtYXRjaCA6Zm9jdXMtdmlzaWJsZSBUZXN0
IHRpbWVkIG91dAorRkFJTCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIga2V5cHJlc3Mgc2hvdWxk
IG1hdGNoIDpmb2N1cy12aXNpYmxlIGFzc2VydF9lcXVhbHM6IG91dGxpbmVDb2xvciBmb3IgRElW
I2VsIHNob3VsZCBiZSBncmVlbiBleHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJn
YigwLCAwLCAwKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVj
dG9ycy9mb2N1cy12aXNpYmxlLTAxMS1leHBlY3RlZC50eHQKaW5kZXggMzAzMWRjN2NiODIyNjY5
MDM1YmE5OWU3ZGZkNmIyNGM0MmY0MTUxNS4uYWVmMzlhN2U5Y2E1NDkyMTQyMmYzZmUzNWYyZWFh
ZGM5OWQ1NzQ2ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxl
Y3RvcnMvZm9jdXMtdmlzaWJsZS0wMTEtZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDkgQEAKIFRo
aXMgdGVzdCBjaGVja3MgdGhhdCA6Zm9jdXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVyIGEga2V5Ym9h
cmQgZXZlbnQsIGV2ZW4gaWYgdGhlIGV2ZW50IGhhbmRsZXIgY2FsbHMgcHJldmVudERlZmF1bHQo
KSBvbiB0aGUgZXZlbnQuCiBDbGljayAiQ2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cu
Ii4KIFByZXNzIHRoZSByaWdodCBhcnJvdyBrZXkuCi1JZiAiRm9jdXMgbW92ZXMgaGVyZS4iIGhh
cyBhIHJlZCBiYWNrZ3JvdW5kLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBGQUlMVVJFLiBJZiBp
dCBoYXMgYSBncmVlbiBvdXRsaW5lLCB0aGVuIHRoZSB0ZXN0IHJlc3VsdCBpcyBTVUNDRVNTLgor
SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIEZBSUxVUkUuIElmIGl0IGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVz
dWx0IGlzIFNVQ0NFU1MuCiAKLUNsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LiAgRm9j
dXMgbW92ZXMgaGVyZS4KK0NsaWNrIGhlcmUgYW5kIHByZXNzIHJpZ2h0IGFycm93LgogCi1IYXJu
ZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2FnZSA9IG51bGwKLQotVElNRU9VVCA6Zm9jdXMtdmlz
aWJsZSBtYXRjaGVzIGV2ZW4gaWYgcHJldmVudERlZmF1bHQoKSBpcyBjYWxsZWQgVGVzdCB0aW1l
ZCBvdXQKK1BBU1MgOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZhdWx0
KCkgaXMgY2FsbGVkCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDExLmh0bWwKaW5kZXggYjBkYWYzNGJhOGRkOTZmMzQzZTY4N2NlZjg1MjUy
M2M5MmFlMmMzOS4uY2YxODZkMjhiODMyZTA3YTZlMDE3ZWM1NzMyNjRkYmUyZDEzMjFlYyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDExLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDEx
Lmh0bWwKQEAgLTIxLDExICsyMSwxMSBAQAogICAgICAgYm9yZGVyOiAwOwogICAgIH0KIAotICAg
ICNuZXh0OmZvY3VzLXZpc2libGUgeworICAgIDpmb2N1cy12aXNpYmxlIHsKICAgICAgIG91dGxp
bmU6IGdyZWVuIHNvbGlkIDVweDsKICAgICB9CiAKLSAgICAjbmV4dDpmb2N1czpub3QoOmZvY3Vz
LXZpc2libGUpIHsKKyAgICA6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7CiAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiByZWQ7CiAgICAgICBvdXRsaW5lOiAwOwogICAgIH0KQEAgLTM3LDMwICsz
NywzMyBAQAogICA8dWwgaWQ9Imluc3RydWN0aW9ucyI+CiAgICAgPGxpPkNsaWNrICJDbGljayBo
ZXJlIGFuZCBwcmVzcyByaWdodCBhcnJvdy4iLjwvbGk+CiAgICAgPGxpPlByZXNzIHRoZSByaWdo
dCBhcnJvdyBrZXkuPC9saT4KLSAgICA8bGk+SWYgIkZvY3VzIG1vdmVzIGhlcmUuIiBoYXMgYSBy
ZWQgYmFja2dyb3VuZCwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgRkFJTFVSRS4KKyAgICA8bGk+
SWYgdGhlIGVsZW1lbnQgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0
IGlzIEZBSUxVUkUuCiAgICAgICAgIElmIGl0IGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhl
IHRlc3QgcmVzdWx0IGlzIFNVQ0NFU1MuPC9saT4KICAgPC91bD4KICAgPGJyIC8+Ci0gIDxidXR0
b24gaWQ9InN0YXJ0IiB0YWJpbmRleD0iMCI+Q2xpY2sgaGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJy
b3cuPC9idXR0b24+Ci0gIDxidXR0b24gaWQ9Im5leHQiIHRhYmluZGV4PSItMSI+Rm9jdXMgbW92
ZXMgaGVyZS48L2J1dHRvbj4KKyAgPGRpdiBpZD0idGFyZ2V0IiB0YWJpbmRleD0iMCI+Q2xpY2sg
aGVyZSBhbmQgcHJlc3MgcmlnaHQgYXJyb3cuPC9kaXY+CiAgIDxzY3JpcHQ+Ci0gICAgc3RhcnQu
YWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB7CisgICAgdGFyZ2V0LmFkZEV2ZW50
TGlzdGVuZXIoImtleWRvd24iLCAoZSkgPT4geworICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwor
ICAgIH0pOworICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKCJrZXl1cCIsIChlKSA9PiB7Cisg
ICAgICBlLnByZXZlbnREZWZhdWx0KCk7CisgICAgfSk7CisgICAgdGFyZ2V0LmFkZEV2ZW50TGlz
dGVuZXIoImtleXByZXNzIiwgKGUpID0+IHsKICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKLSAg
ICAgIG5leHQuZm9jdXMoKTsKICAgICB9KTsKLQogICAgIGFzeW5jX3Rlc3QoZnVuY3Rpb24odCkg
ewotICAgICAgbmV4dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsIHQuc3RlcF9mdW5jKCgpID0+
IHsKLSAgICAgICAgYXNzZXJ0X2VxdWFscyhnZXRDb21wdXRlZFN0eWxlKG5leHQpLm91dGxpbmVD
b2xvciwgInJnYigwLCAxMjgsIDApIiwgYG91dGxpbmVDb2xvciBmb3IgJHtuZXh0LnRhZ05hbWV9
IyR7bmV4dC5pZH0gc2hvdWxkIGJlIGdyZWVuYCk7Ci0gICAgICAgIGFzc2VydF9ub3RfZXF1YWxz
KGdldENvbXB1dGVkU3R5bGUobmV4dCkuYmFja2dyb3VuZENvbG9yLCAicmdiKDI1NSwgMCwgMCki
LCBgYmFja2dyb3VuZENvbG9yIGZvciAke25leHQudGFnTmFtZX0jJHtuZXh0LmlkfSBzaG91bGQg
Tk9UIGJlIHJlZGApOwotICAgICAgICB0LmRvbmUoKQotICAgICAgfSkpOworICAgICAgdGFyZ2V0
LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwgKCkgPT4geworICAgICAgICBjb25zdCBhcnJvd19y
aWdodCA9ICJcdWUwMTQiOworICAgICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXModGFyZ2V0LCBh
cnJvd19yaWdodCk7CisgICAgICB9KTsKIAotICAgICAgLy8gXHVlMDE0IC0+IEFSUk9XX1JJR0hU
Ci0gICAgICB0ZXN0X2RyaXZlci5zZW5kX2tleXMoc3RhcnQsICJcdWUwMTQiKS5jYXRjaCh0LnN0
ZXBfZnVuYygoKSA9PiB7Ci0gICAgICAgIGFzc2VydF90cnVlKGZhbHNlLCAic2VuZF9rZXlzIG5v
dCBpbXBsZW1lbnRlZCB5ZXQiKTsKLSAgICAgICAgdC5kb25lKCk7CisgICAgICB0YXJnZXQuYWRk
RXZlbnRMaXN0ZW5lcigia2V5dXAiLCB0LnN0ZXBfZnVuY19kb25lKChlKSA9PiB7CisgICAgICAg
IGFzc2VydF9lcXVhbHMoZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLm91dGxpbmVDb2xvciwgInJn
YigwLCAxMjgsIDApIiwgYG91dGxpbmVDb2xvciBmb3IgJHt0YXJnZXQudGFnTmFtZX0jJHt0YXJn
ZXQuaWR9IHNob3VsZCBiZSBncmVlbmApOworICAgICAgICBhc3NlcnRfbm90X2VxdWFscyhnZXRD
b21wdXRlZFN0eWxlKHRhcmdldCkuYmFja2dyb3VuZENvbG9yLCAicmdiKDI1NSwgMCwgMCkiLCBg
YmFja2dyb3VuZENvbG9yIGZvciAke3RhcmdldC50YWdOYW1lfSMke3RhcmdldC5pZH0gc2hvdWxk
IE5PVCBiZSByZWRgKTsKICAgICAgIH0pKTsKKworICAgICAgdGVzdF9kcml2ZXIuY2xpY2sodGFy
Z2V0KTsKICAgICB9LCAiOmZvY3VzLXZpc2libGUgbWF0Y2hlcyBldmVuIGlmIHByZXZlbnREZWZh
dWx0KCkgaXMgY2FsbGVkIik7CiAgIDwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2Zv
Y3VzLXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMy1leHBlY3Rl
ZC50eHQKaW5kZXggNmIyYTI0ZTFjM2ZmOTM3OTM3ZGFhMjY5NzZmYjM1YzJmODQxZmVjNi4uNDlh
ZDhjZTljM2MzYzFjNDEyYTBiOWQ2MzZiNGFmZDY2OWM1MzhjNSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDEzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTMtZXhwZWN0
ZWQudHh0CkBAIC04LDcgKzgsNSBAQCBJZiB0aGUgZWxlbWVudCB0aGF0IHNheXMgIlRhcmdldCIg
aGFzIGEgZ3JlZW4gb3V0bGluZSwgdGhlbiB0aGUgdGVzdCByZXN1bHQgaXMgYQogSW5pdGlhbAog
VGFyZ2V0CiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1GQUlM
IDpmb2N1cy12aXNpYmxlIGRvZXMgbm90IG1hdGNoIGFmdGVyIG1vdXNlIGNsaWNrIGV2ZW4gaWYg
cHJldmlvdXMgZm9jdXNlZCBlbGVtZW50IHdhcyBtYXRjaGluZyA6Zm9jdXMtdmlzaWJsZSBhc3Nl
cnRfZXF1YWxzOiBvdXRsaW5lQ29sb3IgZm9yIERJViNpbml0aWFsIHNob3VsZCBiZSBncmVlbiBl
eHBlY3RlZCAicmdiKDAsIDEyOCwgMCkiIGJ1dCBnb3QgInJnYigyNTUsIDAsIDApIgorUEFTUyA6
Zm9jdXMtdmlzaWJsZSBkb2VzIG5vdCBtYXRjaCBhZnRlciBtb3VzZSBjbGljayBldmVuIGlmIHBy
ZXZpb3VzIGZvY3VzZWQgZWxlbWVudCB3YXMgbWF0Y2hpbmcgOmZvY3VzLXZpc2libGUKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
c2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxl
LTAxNC1leHBlY3RlZC50eHQKaW5kZXggNmFkZTU1MzIzMWQ4N2VhMGU0ZTFkM2M4MGFhMzZiYjMy
MWY3MDcwMi4uZGQyZjI5YTg4OTZiNDI5Y2YzOGY5Y2YxMmQ0OGI1YzE0YjUwOWUxNiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2Vs
ZWN0b3JzL2ZvY3VzLXZpc2libGUtMDE0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJs
ZS0wMTQtZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCiBUYXJnZXQKIAotRkFJTCA6Zm9j
dXMtdmlzaWJsZSBtYXRjaGVzIGFmdGVyIHNjcmlwdCBmb2N1cyBtb3ZlIGFzc2VydF9lcXVhbHM6
IGJhY2tncm91bmRDb2xvciBmb3IgSU5QVVQjaW5wdXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQg
InJnYigwLCAyNTUsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKK0ZBSUwgOmZvY3VzLXZp
c2libGUgbWF0Y2hlcyBhZnRlciBzY3JpcHQgZm9jdXMgbW92ZSBhc3NlcnRfZXF1YWxzOiBiYWNr
Z3JvdW5kQ29sb3IgZm9yIERJViN0YXJnZXQgc2hvdWxkIGJlIGxpbWUgZXhwZWN0ZWQgInJnYigw
LCAyNTUsIDApIiBidXQgZ290ICJyZ2IoMjU1LCAwLCAwKSIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3Vz
LXZpc2libGUtMDE2LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxNi1leHBlY3RlZC50
eHQKaW5kZXggM2Q4MTczZThiOGE5Nzg1YTMyMWUyNTExODg2M2UwYmNhZTdlNjA3MS4uNDEyYWMz
NDQ5ZDk3Y2MzMDk5NmI5MWVlNTE3ZWIwMTI4NWM4N2QwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZp
c2libGUtMDE2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9zZWxlY3RvcnMvZm9jdXMtdmlzaWJsZS0wMTYtZXhwZWN0ZWQu
dHh0CkBAIC0xLDUgKzEsNSBAQAogSW5pdGlhbAogCiAKLUZBSUwgOmZvY3VzLXZpc2libGUgYWx3
YXlzIG1hdGNoIG9uIHRleHQgaW5wdXRzIGFzc2VydF9lcXVhbHM6IGJhY2tncm91bmRDb2xvciBm
b3IgSU5QVVQjdGFyZ2V0IHNob3VsZCBiZSBsaW1lIGV4cGVjdGVkICJyZ2IoMCwgMjU1LCAwKSIg
YnV0IGdvdCAicmdiKDI1NSwgMCwgMCkiCitQQVNTIDpmb2N1cy12aXNpYmxlIGFsd2F5cyBtYXRj
aCBvbiB0ZXh0IGlucHV0cwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mv
VGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IDdjY2Y0NjIzMWEwYWYzYmI4YjNlNDk0OGFkNGI2NzZmNzAxZTY3YzIuLjZkZjdj
NGYwYmM0MTM1ZTliMzJlY2E4MDI3ZDRjMjliNmZiY2ZiMzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMzkzLDcgKzMzOTMsOSBAQCB3ZWJraXQub3Jn
L2IvMjA3ODU4IGZhc3QvY2FudmFzL3dlYmdsL3NpbXVsYXRlZC12ZXJ0ZXhBdHRyaWIwLWludmFs
aWQtaW5kaWNpZXMuaAogCiB3ZWJraXQub3JnL2IvMjA5NzM0IGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwMS5odG1sIFsgU2tpcCBd
CiB3ZWJraXQub3JnL2IvMjA5NzM0IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwNy5odG1sIFsgU2tpcCBdCit3ZWJraXQub3JnL2Iv
MjA5NzM0IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1
cy12aXNpYmxlLTAwOC5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMjA5NzM0IGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOS5o
dG1sIFsgU2tpcCBdCit3ZWJraXQub3JnL2IvMjA5NzM0IGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMS5odG1sIFsgU2tpcCBdCiB3
ZWJraXQub3JnL2IvMjA5NzM0IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3Nl
bGVjdG9ycy9mb2N1cy12aXNpYmxlLTAxMi5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMjA5
NzM0IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12
aXNpYmxlLTAxMy5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMjA5NzM0IGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9ob3Zlci0wMDIuaHRtbCBbIFNraXAg
XQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3Mvc2VsZWN0b3JzL2ZvY3VzLXZpc2libGUtMDA4LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4wNDc3MTFlODZkOTdhYzA5NGZiOTY4ZDkzNDU5NDg4MmFjOGU2MDA3Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL3NlbGVjdG9ycy9mb2N1cy12aXNpYmxlLTAwOC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMiBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHByb2dyYW1tYXRpY2FsbHkgZm9j
dXNpbmcgYW4gZWxlbWVudCBhZnRlciBhIGtleXByZXNzIGNhdXNlcyA6Zm9jdXMtdmlzaWJsZSB0
byBtYXRjaC4KK1VzZSB0aGUgdGFiIGtleSB0byBtb3ZlIGZvY3VzIHRvIHRoZSBidXR0b24gYmVs
b3cgdGhhdCBzYXlzICJUYWIgdG8gbWUgYW5kIHByZXNzIEVOVEVSLiIKK1ByZXNzIEVOVEVSLgor
SWYgdGhlIGVsZW1lbnQgdGhhdCBzYXlzICJJIHdpbGwgYmUgZm9jdXNlZCBwcm9ncmFtbWF0aWNh
bGx5LiIgaGFzIGEgcmVkIGJhY2tncm91bmQsIHRoZW4gdGhlIHRlc3QgcmVzdWx0IGlzIEZBSUxV
UkUuIElmIHRoZSBlbGVtZW50IGhhcyBhIGdyZWVuIG91dGxpbmUsIHRoZW4gdGhlIHRlc3QgcmVz
dWx0IGlzIFNVQ0NFU1MuCisKK1RhYiB0byBtZSBhbmQgcHJlc3MgRU5URVIuCitJIHdpbGwgYmUg
Zm9jdXNlZCBwcm9ncmFtbWF0aWNhbGx5LgorCitIYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVz
c2FnZSA9IG51bGwKKworVElNRU9VVCBQcm9ncmFtbWF0aWMgZm9jdXMgYWZ0ZXIga2V5cHJlc3Mg
c2hvdWxkIG1hdGNoIDpmb2N1cy12aXNpYmxlIFRlc3QgdGltZWQgb3V0CisK
</data>

          </attachment>
      

    </bug>

</bugzilla>