<?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>207290</bug_id>
          
          <creation_ts>2020-02-05 13:01:08 -0800</creation_ts>
          <short_desc>[Web Animations] Add support for `pseudoElement` on `KeyframeEffect` and `KeyframeEffectOptions`</short_desc>
          <delta_ts>2020-04-15 10:40:07 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Animations</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=210491</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=210495</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>207291</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Quint">graouts</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>cdumez</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>kangil.han</cc>
    
    <cc>keith_miller</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>pdr</cc>
    
    <cc>rniwa</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1615213</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-02-05 13:01:08 -0800</bug_when>
    <thetext>There is now a `pseudoElement` property on `KeyframeEffect` and `KeyframeEffectOptions` to indicate that an effect targets a pseudo-element, but also to allow setting one as an effect&apos;s target. We need to add support for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1615214</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-05 13:01:23 -0800</bug_when>
    <thetext>&lt;rdar://problem/59199003&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1639861</commentid>
    <comment_count>2</comment_count>
      <attachid>396007</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-09 14:08:20 -0700</bug_when>
    <thetext>Created attachment 396007
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640058</commentid>
    <comment_count>3</comment_count>
      <attachid>396054</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-10 00:05:21 -0700</bug_when>
    <thetext>Created attachment 396054
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640141</commentid>
    <comment_count>4</comment_count>
      <attachid>396054</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-04-10 06:19:13 -0700</bug_when>
    <thetext>Comment on attachment 396054
Patch

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

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1182
&gt; +    if (!m_pseudoId) {
&gt; +        if (is&lt;PseudoElement&gt;(m_target.get()))
&gt; +            setTarget(downcast&lt;PseudoElement&gt;(*m_target).hostElement());
&gt; +    } else {
&gt; +        if (is&lt;PseudoElement&gt;(m_target.get()))
&gt; +            setTarget(ensurePseudoElement(downcast&lt;PseudoElement&gt;(*m_target).hostElement(), *m_pseudoId));
&gt; +        else if (auto* target = m_target.get())
&gt; +            setTarget(ensurePseudoElement(target, *m_pseudoId));
&gt; +    }

You should implement this code in terms for Element/pseudoId pair. m_target should always point to the element and the code shouldn&apos;t deal with PseudoElement at all. It certainly shouldn&apos;t construct any.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640150</commentid>
    <comment_count>5</comment_count>
      <attachid>396078</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-10 06:45:44 -0700</bug_when>
    <thetext>Created attachment 396078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640238</commentid>
    <comment_count>6</comment_count>
      <attachid>396097</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-10 10:15:54 -0700</bug_when>
    <thetext>Created attachment 396097
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640616</commentid>
    <comment_count>7</comment_count>
      <attachid>396097</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-04-11 16:27:52 -0700</bug_when>
    <thetext>Comment on attachment 396097
Patch

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

&gt; Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:404
&gt; +ENABLE_WEB_ANIMATIONS = ENABLE_WEB_ANIMATIONS;

Why is this change needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640656</commentid>
    <comment_count>8</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-12 01:51:43 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #7)
&gt; Comment on attachment 396097 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=396097&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:404
&gt; &gt; +ENABLE_WEB_ANIMATIONS = ENABLE_WEB_ANIMATIONS;
&gt; 
&gt; Why is this change needed?

It&apos;s not and it wouldn&apos;t go into a possible commit!

This was just a hack to force EWS to rebuild all of WebCore since otherwise an incremental build would fail new test expectations, likely due to the changes in the IDL files. Conversion would yield a null `keyframeEffectOptions.pseudoElement` in KeyframeEffect::create().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641315</commentid>
    <comment_count>9</comment_count>
      <attachid>396097</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-04-14 04:28:11 -0700</bug_when>
    <thetext>Comment on attachment 396097
Patch

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

I think this patch is heading to a wrong direction with expanded use of PseudoElement. I feel the animation code should be refactored to minimise its use first. Nevertheless I&apos;d r+ this with some cleanups since it is not very large and clearly adds useful functionality.

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1104
&gt; +static Element* ensurePseudoElement(Element* host, PseudoId pseudoId)
&gt; +{
&gt; +    ASSERT(host);
&gt; +
&gt; +    if (pseudoId == PseudoId::Before) {
&gt; +        if (auto* beforePseudoElement = host-&gt;beforePseudoElement())
&gt; +            return beforePseudoElement;
&gt; +        auto newBeforePseudoElement = PseudoElement::create(*host, pseudoId);
&gt; +        host-&gt;setBeforePseudoElement(WTFMove(newBeforePseudoElement));
&gt; +        return host-&gt;beforePseudoElement();
&gt; +    }
&gt; +
&gt; +    if (pseudoId == PseudoId::After) {
&gt; +        if (auto* afterPseudoElement = host-&gt;afterPseudoElement())
&gt; +            return afterPseudoElement;
&gt; +        auto newAfterPseudoElement = PseudoElement::create(*host, pseudoId);
&gt; +        host-&gt;setAfterPseudoElement(WTFMove(newAfterPseudoElement));
&gt; +        return host-&gt;afterPseudoElement();
&gt; +    }
&gt; +
&gt; +    ASSERT_NOT_REACHED();
&gt; +    return nullptr;

This is the 3rd instance of this code. At least it should go to Element where it can be shared.

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1113
&gt; +void KeyframeEffect::setBindingsTarget(RefPtr&lt;Element&gt;&amp;&amp; target)
&gt; +{
&gt; +    if (m_pseudoId &amp;&amp; target)
&gt; +        setTarget(ensurePseudoElement(target.get(), *m_pseudoId));
&gt; +    else
&gt; +        setTarget(WTFMove(target));
&gt; +}

So nasty.

It seems to me that the right factoring is to save the target Element (not PseudoElement) and m_pseudoId, then have a helper that returns either Element or PseudoElement based on those. Current m_target users would switch to that.

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1161
&gt; +    // If the provided value is not null or a syntactically valid the user agent must throw a DOMException with error name TypeError and leave the
&gt; +    // target pseudo-selector of this animation effect unchanged.

The code below throws on syntactically valid but unhandled selectors. That&apos;s not what this text says.

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1172
&gt; +    if (!pseudoElement)
&gt; +        m_pseudoId = WTF::nullopt;
&gt; +    else if (pseudoElement == &quot;::before&quot; || pseudoElement == &quot;:before&quot;)
&gt; +        m_pseudoId = PseudoId::Before;
&gt; +    else if (pseudoElement == &quot;::after&quot; || pseudoElement == &quot;:after&quot;)
&gt; +        m_pseudoId = PseudoId::After;
&gt; +    else
&gt; +        return Exception { TypeError };

Why is this done manually instead of using the parsing facilities?

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1182
&gt; +    if (!m_pseudoId) {
&gt; +        if (is&lt;PseudoElement&gt;(m_target.get()))
&gt; +            setTarget(downcast&lt;PseudoElement&gt;(*m_target).hostElement());
&gt; +    } else {
&gt; +        if (is&lt;PseudoElement&gt;(m_target.get()))
&gt; +            setTarget(ensurePseudoElement(downcast&lt;PseudoElement&gt;(*m_target).hostElement(), *m_pseudoId));
&gt; +        else if (auto* target = m_target.get())
&gt; +            setTarget(ensurePseudoElement(target, *m_pseudoId));
&gt; +    }

:(

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1759
&gt; +bool KeyframeEffect::requiresPseudoElement() const
&gt; +{
&gt; +    return m_blendingKeyframesSource == BlendingKeyframesSource::WebAnimation &amp;&amp; is&lt;PseudoElement&gt;(m_target.get());
&gt; +}

Only one of the m_pseudoId and is&lt;PseudoElement&gt;(m_target) should be authorative and you should stick to that (m_pseudoId in practice as we want to get rid of PseudoElement).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641348</commentid>
    <comment_count>10</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-14 06:45:17 -0700</bug_when>
    <thetext>(In reply to Antti Koivisto from comment #9)
&gt; &gt; Source/WebCore/animation/KeyframeEffect.cpp:1104
&gt; &gt; +static Element* ensurePseudoElement(Element* host, PseudoId pseudoId)
&gt; &gt; +{
&gt; &gt; +    ASSERT(host);
&gt; &gt; +
&gt; &gt; +    if (pseudoId == PseudoId::Before) {
&gt; &gt; +        if (auto* beforePseudoElement = host-&gt;beforePseudoElement())
&gt; &gt; +            return beforePseudoElement;
&gt; &gt; +        auto newBeforePseudoElement = PseudoElement::create(*host, pseudoId);
&gt; &gt; +        host-&gt;setBeforePseudoElement(WTFMove(newBeforePseudoElement));
&gt; &gt; +        return host-&gt;beforePseudoElement();
&gt; &gt; +    }
&gt; &gt; +
&gt; &gt; +    if (pseudoId == PseudoId::After) {
&gt; &gt; +        if (auto* afterPseudoElement = host-&gt;afterPseudoElement())
&gt; &gt; +            return afterPseudoElement;
&gt; &gt; +        auto newAfterPseudoElement = PseudoElement::create(*host, pseudoId);
&gt; &gt; +        host-&gt;setAfterPseudoElement(WTFMove(newAfterPseudoElement));
&gt; &gt; +        return host-&gt;afterPseudoElement();
&gt; &gt; +    }
&gt; &gt; +
&gt; &gt; +    ASSERT_NOT_REACHED();
&gt; &gt; +    return nullptr;
&gt; 
&gt; This is the 3rd instance of this code. At least it should go to Element
&gt; where it can be shared.

Will do, probably as part of a dedicated patch.

&gt; &gt; Source/WebCore/animation/KeyframeEffect.cpp:1113
&gt; &gt; +void KeyframeEffect::setBindingsTarget(RefPtr&lt;Element&gt;&amp;&amp; target)
&gt; &gt; +{
&gt; &gt; +    if (m_pseudoId &amp;&amp; target)
&gt; &gt; +        setTarget(ensurePseudoElement(target.get(), *m_pseudoId));
&gt; &gt; +    else
&gt; &gt; +        setTarget(WTFMove(target));
&gt; &gt; +}
&gt; 
&gt; So nasty.
&gt; 
&gt; It seems to me that the right factoring is to save the target Element (not
&gt; PseudoElement) and m_pseudoId, then have a helper that returns either
&gt; Element or PseudoElement based on those. Current m_target users would switch
&gt; to that.

Agreed, this is being done in bug 210491.

&gt; &gt; Source/WebCore/animation/KeyframeEffect.cpp:1161
&gt; &gt; +    // If the provided value is not null or a syntactically valid the user agent must throw a DOMException with error name TypeError and leave the
&gt; &gt; +    // target pseudo-selector of this animation effect unchanged.
&gt; 
&gt; The code below throws on syntactically valid but unhandled selectors. That&apos;s
&gt; not what this text says.

Will double check this!

&gt; &gt; Source/WebCore/animation/KeyframeEffect.cpp:1172
&gt; &gt; +    if (!pseudoElement)
&gt; &gt; +        m_pseudoId = WTF::nullopt;
&gt; &gt; +    else if (pseudoElement == &quot;::before&quot; || pseudoElement == &quot;:before&quot;)
&gt; &gt; +        m_pseudoId = PseudoId::Before;
&gt; &gt; +    else if (pseudoElement == &quot;::after&quot; || pseudoElement == &quot;:after&quot;)
&gt; &gt; +        m_pseudoId = PseudoId::After;
&gt; &gt; +    else
&gt; &gt; +        return Exception { TypeError };
&gt; 
&gt; Why is this done manually instead of using the parsing facilities?

For no good reason, will look into using existing code.

&gt; &gt; Source/WebCore/animation/KeyframeEffect.cpp:1759
&gt; &gt; +bool KeyframeEffect::requiresPseudoElement() const
&gt; &gt; +{
&gt; &gt; +    return m_blendingKeyframesSource == BlendingKeyframesSource::WebAnimation &amp;&amp; is&lt;PseudoElement&gt;(m_target.get());
&gt; &gt; +}
&gt; 
&gt; Only one of the m_pseudoId and is&lt;PseudoElement&gt;(m_target) should be
&gt; authorative and you should stick to that (m_pseudoId in practice as we want
&gt; to get rid of PseudoElement).

This will be clear after bug 210491 lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641760</commentid>
    <comment_count>11</comment_count>
      <attachid>396524</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-15 06:26:39 -0700</bug_when>
    <thetext>Created attachment 396524
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641770</commentid>
    <comment_count>12</comment_count>
      <attachid>396524</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-04-15 06:52:19 -0700</bug_when>
    <thetext>Comment on attachment 396524
Patch

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

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1139
&gt; +        bool isLegacy = pseudoElement == &quot;:before&quot; || pseudoElement == &quot;:after&quot; || pseudoElement == &quot;:first-letter&quot; || pseudoElement == &quot;:first-line&quot;;
&gt; +        auto pseudoType = CSSSelector::parsePseudoElementType(pseudoElement.substring(isLegacy ? 1 : 2));
&gt; +        if (pseudoType == CSSSelector::PseudoElementUnknown)

This parses xxbefore as a valid pseudo element.

&gt; Source/WebCore/animation/KeyframeEffect.cpp:1154
&gt; +void KeyframeEffect::invalidateTargetElementOrPseudoElement(Element* previousTargetElementOrPseudoElement)

Would this be more like didChangeTargetElementOrPseudoElement?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641774</commentid>
    <comment_count>13</comment_count>
      <attachid>396527</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-15 06:58:35 -0700</bug_when>
    <thetext>Created attachment 396527
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641795</commentid>
    <comment_count>14</comment_count>
      <attachid>396535</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-15 08:04:38 -0700</bug_when>
    <thetext>Created attachment 396535
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1641864</commentid>
    <comment_count>15</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-04-15 10:40:07 -0700</bug_when>
    <thetext>Committed r260139: &lt;https://trac.webkit.org/changeset/260139&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396007</attachid>
            <date>2020-04-09 14:08:20 -0700</date>
            <delta_ts>2020-04-10 00:05:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200409230818.patch</filename>
            <type>text/plain</type>
            <size>39773</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5Nzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWMzMzkzN2M4NjY2ODJk
Yjc0NzE0NTMyMTlkMTc3NTFlMjg2MTIzMy4uNWJlODNjYmEwM2EzM2RiNmRjOGQzMmRmYmZkMzY4
MTY3Njg3ODFkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIwLTA0LTA5ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LAorICAgICAgICBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZCBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQgYSBQc2V1ZG9F
bGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBpdCdzIG5vdCBi
ZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBvZiBhIDo6YmVm
b3JlIG9yIDo6YWZ0ZXIKKyAgICAgICAgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQiIHN0eWxlIHJ1
bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3IgInBzZXVkb0Vs
ZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwgd2UgZW5zdXJlIGEgUHNl
dWRvRWxlbWVudAorICAgICAgICBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhvc3QgZWxlbWVu
dCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQgZHVyaW5nIHN0
eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMgYXJlIGFwcGxpZWQgdG8gc3VjaCBwc2V1ZG8tZWxl
bWVudHMKKyAgICAgICAgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1RhcmdldGVkQnlLZXlm
cmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBpbmRpY2F0ZXMg
dGhhdCBhIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFyZ2V0cyB0aGlzIHBzZXVkby1l
bGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBIYW5kbGUgdGhlIG5ldyBLZXlm
cmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0eSBpbiB0aGUgS2V5ZnJhbWVF
ZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6Y29w
eVByb3BlcnRpZXNGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0
OjpiaW5kaW5nc1RhcmdldCBjb25zdCk6IFJldHVybiB0aGUgdGFyZ2V0J3MgaG9zdCBlbGVtZW50
IGlmIHRoZSB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OmVu
c3VyZVBzZXVkb0VsZW1lbnQpOiBVdGlsaXR5IGZ1bmN0aW9uIGRlc2lnbmVkIHRvIGd1YXJhbnRl
ZSBhIHBzZXVkby1lbGVtZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBpcyBhdmFpbGFibGUgZm9y
IHRoZSBwcm92aWRlZCBob3N0IGVsZW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVm
ZmVjdDo6c2V0QmluZGluZ3NUYXJnZXQpOiBXaGVuIHRoZSBLZXlmcmFtZUVmZmVjdC50YXJnZXQg
cHJvcGVydHkgY2hhbmdlcywgc2V0IGl0IGFzIHRoZSB0YXJnZXQgZGlyZWN0bHkgb3Igc2V0IHRo
ZSBwc2V1ZG8tZWxlbWVudCBtYXRjaGluZyB0aGUKKyAgICAgICAgY3VycmVudCB2YWx1ZSBmb3Ig
S2V5ZnJhbWVFZmZlY3QucHNldWRvRWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1l
RWZmZWN0Ojpwc2V1ZG9FbGVtZW50IGNvbnN0KTogUmV0dXJuIHRoZSBwc2V1ZG8tZWxlbWVudCBz
ZWxlY3RvciBvZiB0aGUgY3VycmVudCB0YXJnZXQgaWYgaXQncyBhIHBzZXVkby1lbGVtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1lbnQpOiBXaGVu
IHRoZSBLZXlmcmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5IGNoYW5nZXMsIHNldCB0
aGUgdGFyZ2V0IGJhc2VkIG9uIHRoZSBjdXJyZW50IEtleWZyYW1lRWZmZWN0LnRhcmdldCB2YWx1
ZQorICAgICAgICBhbmQgdGhlIG5ldyBwc2V1ZG8tZWxlbWVudCBzZWxlY3Rvci4KKyAgICAgICAg
KFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBhIFBzZXVkb0VsZW1lbnQgbXVzdCByZW1haW4gY3JlYXRlZCBmb3Ig
dGhpcyBLZXlmcmFtZUVmZmVjdCwgd2hpY2ggaXMgb25seSBuZWNlc3NhcnkgZm9yCisgICAgICAg
IEpTLW9yaWdpbmF0ZWQgZWZmZWN0cyB0YXJnZXRpbmcgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAg
ICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuaWRsOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlv
bnMuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbDoKKyAg
ICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBvbmUgb3IgbW9yZSBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgaW4gdGhlIHN0YWNrIHRhcmdldCB0aGUgUHNldWRvRWxlbWVudCBvd25pbmcKKyAgICAgICAg
dGhpcyBzdGFjay4KKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oOgor
ICAgICAgICAqIGRvbS9Qc2V1ZG9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVk
b0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9y
IG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQg
dGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6Omlz
VGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0
cnVlIHdoZW4gb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRo
ZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRv
RWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRl
ckdlbmVyYXRlZENvbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJl
bmRlcmVycyk6IFJlbW92ZSB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0
eSB3YXMgc2V0IHNpbmNlIGl0J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNh
bGxlZCBkdWUgdG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZQorICAgICAgICBlZmZlY3RzIHRhcmdl
dGluZyB0aGUgZ2l2ZW4gcHNldWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlv
biB0aGF0IHRoZXJlIGFyZSBzdWNoIGtleWZyYW1lIGVmZmVjdHMgaW4gY2FzZSBubyAiY29udGVu
dCIgcHJvcGVydHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRyZWVVcGRhdGVy
OjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSByZW1vdmUgcHNl
dWRvLWVsZW1lbnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogc3R5
bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlRyZWVS
ZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5pbWF0ZWQgc3R5bGUgcmVzb2x1
dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpTLW9yaWdpbmF0ZWQga2V5ZnJh
bWUgZWZmZWN0cy4KKwogMjAyMC0wNC0wOSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5j
b20+CiAKICAgICAgICAgVXNlIG1vcmUgV2Vha1B0ciBpbiBSZW5kZXJUcmVlQnVpbGRlcjo6Rmly
c3RMZXR0ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCmlu
ZGV4IDVmMmE2MWYwMjBiYjNjMGM5NGZjNDkxZDc2MWFhMTYxYWU4YTQ1M2MuLjRkYjhhNDM4MGRj
MDI0YzU2NjVkOTliY2UyODQ3YzJjNjQzN2ZmZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0
aW9uL0tleWZyYW1lRWZmZWN0LmNwcApAQCAtNDYsNiArNDYsNyBAQAogI2luY2x1ZGUgIkpTS2V5
ZnJhbWVFZmZlY3QuaCIKICNpbmNsdWRlICJLZXlmcmFtZUVmZmVjdFN0YWNrLmgiCiAjaW5jbHVk
ZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIlBzZXVkb0VsZW1lbnQuaCIKICNpbmNsdWRlICJSZW5k
ZXJCb3guaCIKICNpbmNsdWRlICJSZW5kZXJCb3hNb2RlbE9iamVjdC5oIgogI2luY2x1ZGUgIlJl
bmRlckVsZW1lbnQuaCIKQEAgLTQ4NSw2ICs0ODYsMTEgQEAgRXhjZXB0aW9uT3I8UmVmPEtleWZy
YW1lRWZmZWN0Pj4gS2V5ZnJhbWVFZmZlY3Q6OmNyZWF0ZShKU0dsb2JhbE9iamVjdCYgbGV4aWNh
bEcKICAgICAgICAgICAgIHRpbWluZy5kdXJhdGlvbiA9IGR1cmF0aW9uOwogICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgYXV0byBrZXlmcmFtZUVmZmVjdE9wdGlvbnMgPSBXVEY6OmdldDxL
ZXlmcmFtZUVmZmVjdE9wdGlvbnM+KG9wdGlvbnNWYWx1ZSk7CisKKyAgICAgICAgICAgIGF1dG8g
c2V0UHNldWRvRWxlbWVudFJlc3VsdCA9IGtleWZyYW1lRWZmZWN0LT5zZXRQc2V1ZG9FbGVtZW50
KGtleWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50KTsKKyAgICAgICAgICAgIGlmIChz
ZXRQc2V1ZG9FbGVtZW50UmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgICAgIHJl
dHVybiBzZXRQc2V1ZG9FbGVtZW50UmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKTsKKwogICAgICAg
ICAgICAgdGltaW5nID0gewogICAgICAgICAgICAgICAgIGtleWZyYW1lRWZmZWN0T3B0aW9ucy5k
dXJhdGlvbiwKICAgICAgICAgICAgICAgICBrZXlmcmFtZUVmZmVjdE9wdGlvbnMuaXRlcmF0aW9u
cywKQEAgLTUyOCw2ICs1MzQsNyBAQCBLZXlmcmFtZUVmZmVjdDo6S2V5ZnJhbWVFZmZlY3QoRWxl
bWVudCogdGFyZ2V0KQogdm9pZCBLZXlmcmFtZUVmZmVjdDo6Y29weVByb3BlcnRpZXNGcm9tU291
cmNlKFJlZjxLZXlmcmFtZUVmZmVjdD4mJiBzb3VyY2UpCiB7CiAgICAgbV90YXJnZXQgPSBzb3Vy
Y2UtPm1fdGFyZ2V0OworICAgIG1fcHNldWRvSWQgPSBzb3VyY2UtPm1fcHNldWRvSWQ7CiAgICAg
bV9jb21wb3NpdGVPcGVyYXRpb24gPSBzb3VyY2UtPm1fY29tcG9zaXRlT3BlcmF0aW9uOwogICAg
IG1faXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uID0gc291cmNlLT5tX2l0ZXJhdGlvbkNvbXBv
c2l0ZU9wZXJhdGlvbjsKIApAQCAtMTA2Niw2ICsxMDczLDQ1IEBAIHZvaWQgS2V5ZnJhbWVFZmZl
Y3Q6OnNldEFuaW1hdGlvbihXZWJBbmltYXRpb24qIGFuaW1hdGlvbikKICAgICB1cGRhdGVFZmZl
Y3RTdGFja01lbWJlcnNoaXAoKTsKIH0KIAorRWxlbWVudCogS2V5ZnJhbWVFZmZlY3Q6OmJpbmRp
bmdzVGFyZ2V0KCkgY29uc3QKK3sKKyAgICBpZiAoaXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQu
Z2V0KCkpKQorICAgICAgICByZXR1cm4gZG93bmNhc3Q8UHNldWRvRWxlbWVudD4oKm1fdGFyZ2V0
KS5ob3N0RWxlbWVudCgpOworICAgIHJldHVybiBtX3RhcmdldC5nZXQoKTsKK30KKworc3RhdGlj
IEVsZW1lbnQqIGVuc3VyZVBzZXVkb0VsZW1lbnQoRWxlbWVudCogaG9zdCwgUHNldWRvSWQgcHNl
dWRvSWQpCit7CisgICAgQVNTRVJUKGhvc3QpOworCisgICAgaWYgKHBzZXVkb0lkID09IFBzZXVk
b0lkOjpCZWZvcmUpIHsKKyAgICAgICAgaWYgKGF1dG8qIGJlZm9yZVBzZXVkb0VsZW1lbnQgPSBo
b3N0LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCkpCisgICAgICAgICAgICByZXR1cm4gYmVmb3JlUHNl
dWRvRWxlbWVudDsKKyAgICAgICAgYXV0byBuZXdCZWZvcmVQc2V1ZG9FbGVtZW50ID0gUHNldWRv
RWxlbWVudDo6Y3JlYXRlKCpob3N0LCBwc2V1ZG9JZCk7CisgICAgICAgIGhvc3QtPnNldEJlZm9y
ZVBzZXVkb0VsZW1lbnQoV1RGTW92ZShuZXdCZWZvcmVQc2V1ZG9FbGVtZW50KSk7CisgICAgICAg
IHJldHVybiBob3N0LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCk7CisgICAgfQorCisgICAgaWYgKHBz
ZXVkb0lkID09IFBzZXVkb0lkOjpBZnRlcikgeworICAgICAgICBpZiAoYXV0byogYWZ0ZXJQc2V1
ZG9FbGVtZW50ID0gaG9zdC0+YWZ0ZXJQc2V1ZG9FbGVtZW50KCkpCisgICAgICAgICAgICByZXR1
cm4gYWZ0ZXJQc2V1ZG9FbGVtZW50OworICAgICAgICBhdXRvIG5ld0FmdGVyUHNldWRvRWxlbWVu
dCA9IFBzZXVkb0VsZW1lbnQ6OmNyZWF0ZSgqaG9zdCwgcHNldWRvSWQpOworICAgICAgICBob3N0
LT5zZXRBZnRlclBzZXVkb0VsZW1lbnQoV1RGTW92ZShuZXdBZnRlclBzZXVkb0VsZW1lbnQpKTsK
KyAgICAgICAgcmV0dXJuIGhvc3QtPmFmdGVyUHNldWRvRWxlbWVudCgpOworICAgIH0KKworICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBudWxscHRyOworfQorCit2b2lkIEtl
eWZyYW1lRWZmZWN0OjpzZXRCaW5kaW5nc1RhcmdldChSZWZQdHI8RWxlbWVudD4mJiB0YXJnZXQp
Cit7CisgICAgaWYgKG1fcHNldWRvSWQgJiYgdGFyZ2V0KQorICAgICAgICBzZXRUYXJnZXQoZW5z
dXJlUHNldWRvRWxlbWVudCh0YXJnZXQuZ2V0KCksICptX3BzZXVkb0lkKSk7CisgICAgZWxzZQor
ICAgICAgICBzZXRUYXJnZXQoV1RGTW92ZSh0YXJnZXQpKTsKK30KKwogdm9pZCBLZXlmcmFtZUVm
ZmVjdDo6c2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50PiYmIG5ld1RhcmdldCkKIHsKICAgICBpZiAo
bV90YXJnZXQuZ2V0KCkgPT0gbmV3VGFyZ2V0LmdldCgpKQpAQCAtMTA5NCw2ICsxMTQwLDUwIEBA
IHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNldFRhcmdldChSZWZQdHI8RWxlbWVudD4mJiBuZXdUYXJn
ZXQpCiAgICAgICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IG1fdGFyZ2V0LT5lbnN1cmVLZXlm
cmFtZUVmZmVjdFN0YWNrKCkuYWRkRWZmZWN0KCp0aGlzKTsKIH0KIAorY29uc3QgU3RyaW5nIEtl
eWZyYW1lRWZmZWN0Ojpwc2V1ZG9FbGVtZW50KCkgY29uc3QKK3sKKyAgICAvLyBodHRwczovL2Ry
YWZ0cy5jc3N3Zy5vcmcvd2ViLWFuaW1hdGlvbnMvI2RvbS1rZXlmcmFtZWVmZmVjdC1wc2V1ZG9l
bGVtZW50CisKKyAgICAvLyBUaGUgdGFyZ2V0IHBzZXVkby1zZWxlY3Rvci4gbnVsbCBpZiB0aGlz
IGVmZmVjdCBoYXMgbm8gZWZmZWN0IHRhcmdldCBvciBpZiB0aGUgZWZmZWN0IHRhcmdldCBpcyBh
biBlbGVtZW50IChpLmUuIG5vdCBhIHBzZXVkby1lbGVtZW50KS4KKyAgICAvLyBXaGVuIHRoZSBl
ZmZlY3QgdGFyZ2V0IGlzIGEgcHNldWRvLWVsZW1lbnQsIHRoaXMgc3BlY2lmaWVzIHRoZSBwc2V1
ZG8tZWxlbWVudCBzZWxlY3RvciAoZS5nLiA6OmJlZm9yZSkuCisgICAgaWYgKGlzPFBzZXVkb0Vs
ZW1lbnQ+KG1fdGFyZ2V0LmdldCgpKSkKKyAgICAgICAgcmV0dXJuIFBzZXVkb0VsZW1lbnQ6OnBz
ZXVkb0VsZW1lbnROYW1lRm9yRXZlbnRzKGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+KCptX3Rhcmdl
dCkucHNldWRvSWQoKSk7CisgICAgcmV0dXJuIHsgfTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4g
S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1lbnQoY29uc3QgU3RyaW5nJiBwc2V1ZG9FbGVt
ZW50KQoreworICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy93ZWItYW5pbWF0aW9ucy8j
ZG9tLWtleWZyYW1lZWZmZWN0LXBzZXVkb2VsZW1lbnQKKworICAgIC8vIE9uIHNldHRpbmcsIHNl
dHMgdGhlIHRhcmdldCBwc2V1ZG8tc2VsZWN0b3Igb2YgdGhlIGFuaW1hdGlvbiBlZmZlY3QgdG8g
dGhlIHByb3ZpZGVkIHZhbHVlIGFmdGVyIGFwcGx5aW5nIHRoZSBmb2xsb3dpbmcgZXhjZXB0aW9u
czoKKyAgICAvLworICAgIC8vIElmIHRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub3QgbnVsbCBvciBh
IHN5bnRhY3RpY2FsbHkgdmFsaWQgdGhlIHVzZXIgYWdlbnQgbXVzdCB0aHJvdyBhIERPTUV4Y2Vw
dGlvbiB3aXRoIGVycm9yIG5hbWUgVHlwZUVycm9yIGFuZCBsZWF2ZSB0aGUKKyAgICAvLyB0YXJn
ZXQgcHNldWRvLXNlbGVjdG9yIG9mIHRoaXMgYW5pbWF0aW9uIGVmZmVjdCB1bmNoYW5nZWQuCisg
ICAgLy8gSWYgb25lIG9mIHRoZSBsZWdhY3kgU2VsZWN0b3JzIExldmVsIDIgc2luZ2xlLWNvbG9u
IHNlbGVjdG9ycyAoJzpiZWZvcmUnLCAnOmFmdGVyJywgJzpmaXJzdC1sZXR0ZXInLCBvciAnOmZp
cnN0LWxpbmUnKSBpcyBzcGVjaWZpZWQsIHRoZSB0YXJnZXQKKyAgICAvLyBwc2V1ZG8tc2VsZWN0
b3IgbXVzdCBiZSBzZXQgdG8gdGhlIGVxdWl2YWxlbnQgdHdvLWNvbG9uIHNlbGVjdG9yIChlLmcu
ICc6OmJlZm9yZScpLgorCisgICAgaWYgKCFwc2V1ZG9FbGVtZW50KQorICAgICAgICBtX3BzZXVk
b0lkID0gV1RGOjpudWxsb3B0OworICAgIGVsc2UgaWYgKHBzZXVkb0VsZW1lbnQgPT0gIjo6YmVm
b3JlIiB8fCBwc2V1ZG9FbGVtZW50ID09ICI6YmVmb3JlIikKKyAgICAgICAgbV9wc2V1ZG9JZCA9
IFBzZXVkb0lkOjpCZWZvcmU7CisgICAgZWxzZSBpZiAocHNldWRvRWxlbWVudCA9PSAiOjphZnRl
ciIgfHwgcHNldWRvRWxlbWVudCA9PSAiOmFmdGVyIikKKyAgICAgICAgbV9wc2V1ZG9JZCA9IFBz
ZXVkb0lkOjpBZnRlcjsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBl
RXJyb3IgfTsKKworICAgIGlmICghbV9wc2V1ZG9JZCkgeworICAgICAgICBpZiAoaXM8UHNldWRv
RWxlbWVudD4obV90YXJnZXQuZ2V0KCkpKQorICAgICAgICAgICAgc2V0VGFyZ2V0KGRvd25jYXN0
PFBzZXVkb0VsZW1lbnQ+KCptX3RhcmdldCkuaG9zdEVsZW1lbnQoKSk7CisgICAgfSBlbHNlIHsK
KyAgICAgICAgaWYgKGlzPFBzZXVkb0VsZW1lbnQ+KG1fdGFyZ2V0LmdldCgpKSkKKyAgICAgICAg
ICAgIHNldFRhcmdldChlbnN1cmVQc2V1ZG9FbGVtZW50KGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+
KCptX3RhcmdldCkuaG9zdEVsZW1lbnQoKSwgKm1fcHNldWRvSWQpKTsKKyAgICAgICAgZWxzZSBp
ZiAoYXV0byogdGFyZ2V0ID0gbV90YXJnZXQuZ2V0KCkpCisgICAgICAgICAgICBzZXRUYXJnZXQo
ZW5zdXJlUHNldWRvRWxlbWVudCh0YXJnZXQsICptX3BzZXVkb0lkKSk7CisgICAgfQorCisgICAg
cmV0dXJuIHsgfTsKK30KKwogdm9pZCBLZXlmcmFtZUVmZmVjdDo6YXBwbHkoUmVuZGVyU3R5bGUm
IHRhcmdldFN0eWxlKQogewogICAgIGlmICghbV90YXJnZXQpCkBAIC0xNjYzLDQgKzE3NTMsOSBA
QCBib29sIEtleWZyYW1lRWZmZWN0Ojpjb21wdXRlVHJhbnNmb3JtZWRFeHRlbnRWaWFNYXRyaXgo
Y29uc3QgRmxvYXRSZWN0JiByZW5kZXJlcgogICAgIHJldHVybiB0cnVlOwogfQogCitib29sIEtl
eWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQoKSBjb25zdAoreworICAgIHJldHVy
biBtX2JsZW5kaW5nS2V5ZnJhbWVzU291cmNlID09IEJsZW5kaW5nS2V5ZnJhbWVzU291cmNlOjpX
ZWJBbmltYXRpb24gJiYgaXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQuZ2V0KCkpOworfQorCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vS2V5ZnJhbWVFZmZlY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5oCmluZGV4IGJlOGI2ZDlmNGM5ZDg3MmU4YjA5NTMyMTMzNDVlZGUzNDk3ZGZmZDcuLjgw
ZjdjMzk1YTViZWU3ZTQ4OTczNzgwZjdlYjMyNTRlNzA2MDczMjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCkBAIC0xMDEsOSArMTAxLDE1IEBAIHB1YmxpYzoK
IAogICAgIGNvbnN0IFZlY3RvcjxQYXJzZWRLZXlmcmFtZT4mIHBhcnNlZEtleWZyYW1lcygpIGNv
bnN0IHsgcmV0dXJuIG1fcGFyc2VkS2V5ZnJhbWVzOyB9CiAKKyAgICBFbGVtZW50KiBiaW5kaW5n
c1RhcmdldCgpIGNvbnN0OworICAgIHZvaWQgc2V0QmluZGluZ3NUYXJnZXQoUmVmUHRyPEVsZW1l
bnQ+JiYpOworCiAgICAgRWxlbWVudCogdGFyZ2V0KCkgY29uc3QgeyByZXR1cm4gbV90YXJnZXQu
Z2V0KCk7IH0KICAgICB2b2lkIHNldFRhcmdldChSZWZQdHI8RWxlbWVudD4mJik7CiAKKyAgICBj
b25zdCBTdHJpbmcgcHNldWRvRWxlbWVudCgpIGNvbnN0OworICAgIEV4Y2VwdGlvbk9yPHZvaWQ+
IHNldFBzZXVkb0VsZW1lbnQoY29uc3QgU3RyaW5nJik7CisKICAgICBWZWN0b3I8SlNDOjpTdHJv
bmc8SlNDOjpKU09iamVjdD4+IGdldEtleWZyYW1lcyhKU0M6OkpTR2xvYmFsT2JqZWN0Jik7CiAg
ICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0S2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBK
U0M6OlN0cm9uZzxKU0M6OkpTT2JqZWN0PiYmKTsKIApAQCAtMTU3LDYgKzE2Myw4IEBAIHB1Ymxp
YzoKIAogICAgIGNvbnN0IFJlbmRlclN0eWxlKiB1bmFuaW1hdGVkU3R5bGUoKSBjb25zdCB7IHJl
dHVybiBtX3VuYW5pbWF0ZWRTdHlsZS5nZXQoKTsgfQogCisgICAgYm9vbCByZXF1aXJlc1BzZXVk
b0VsZW1lbnQoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBLZXlmcmFtZUVmZmVjdChFbGVtZW50
Kik7CiAKQEAgLTE5Miw2ICsyMDAsNyBAQCBwcml2YXRlOgogICAgIFZlY3RvcjxQYXJzZWRLZXlm
cmFtZT4gbV9wYXJzZWRLZXlmcmFtZXM7CiAgICAgVmVjdG9yPEFjY2VsZXJhdGVkQWN0aW9uPiBt
X3BlbmRpbmdBY2NlbGVyYXRlZEFjdGlvbnM7CiAgICAgV2Vha1B0cjxFbGVtZW50PiBtX3Rhcmdl
dDsKKyAgICBPcHRpb25hbDxQc2V1ZG9JZD4gbV9wc2V1ZG9JZDsKIAogICAgIHN0ZDo6dW5pcXVl
X3B0cjxjb25zdCBSZW5kZXJTdHlsZT4gbV91bmFuaW1hdGVkU3R5bGU7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaWRsCmluZGV4IGQyZDA3YWNjNDM2NGVhYjhi
ZjFlMGFiNmUxZDAzMmI4YWU2OWY3MDAuLjgwZmRjNzViOWQ1MjQ3NzJhZjYwMTg3NDIzOWZhNmNl
YWQ1NTdhYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0Lmlk
bApAQCAtMjMsNiArMjMsOCBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCit0eXBlZGVmIFVTVlN0
cmluZyBDU1NPTVN0cmluZzsKKwogWwogICAgIEVuYWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9u
cywKICAgICBFeHBvc2VkPVdpbmRvdywKQEAgLTMyLDcgKzM0LDggQEAKICAgICBDb25zdHJ1Y3Rv
cihFbGVtZW50PyB0YXJnZXQsIG9iamVjdD8ga2V5ZnJhbWVzLCBvcHRpb25hbCAodW5yZXN0cmlj
dGVkIGRvdWJsZSBvciBLZXlmcmFtZUVmZmVjdE9wdGlvbnMpIG9wdGlvbnMpLAogICAgIENvbnN0
cnVjdG9yKEtleWZyYW1lRWZmZWN0IHNvdXJjZSkKIF0gaW50ZXJmYWNlIEtleWZyYW1lRWZmZWN0
IDogQW5pbWF0aW9uRWZmZWN0IHsKLSAgICBhdHRyaWJ1dGUgRWxlbWVudD8gdGFyZ2V0OworICAg
IFtJbXBsZW1lbnRlZEFzPWJpbmRpbmdzVGFyZ2V0XSBhdHRyaWJ1dGUgRWxlbWVudD8gdGFyZ2V0
OworICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gYXR0cmlidXRlIENTU09NU3RyaW5nPyBwc2V1ZG9F
bGVtZW50OwogICAgIFtFbmFibGVkQXRSdW50aW1lPVdlYkFuaW1hdGlvbnNDb21wb3NpdGVPcGVy
YXRpb25zXSBhdHRyaWJ1dGUgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlvbkNv
bXBvc2l0ZTsKICAgICBbRW5hYmxlZEF0UnVudGltZT1XZWJBbmltYXRpb25zQ29tcG9zaXRlT3Bl
cmF0aW9uc10gYXR0cmlidXRlIENvbXBvc2l0ZU9wZXJhdGlvbiBjb21wb3NpdGU7CiAgICAgW0Nh
bGxXaXRoPUdsb2JhbE9iamVjdF0gc2VxdWVuY2U8b2JqZWN0PiBnZXRLZXlmcmFtZXMoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMu
aCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaAppbmRl
eCBhYmE3ZDJmMzdjMDM4NWRmZjAyMWQ3NWQwYjhjZWI3ZmJiMWY4MTUxLi4zZWRjYjg0NTAzMTNh
OGYwMjNhZTY0ZDgxY2I4MDBmNjZhZjQ1YjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oCkBAIC0zNSw2ICszNSw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIHN0cnVjdCBLZXlmcmFtZUVmZmVjdE9wdGlvbnMgOiBFZmZlY3RUaW1pbmcg
ewogICAgIEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbiBpdGVyYXRpb25Db21wb3NpdGUgeyBJ
dGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb246OlJlcGxhY2UgfTsKICAgICBDb21wb3NpdGVPcGVy
YXRpb24gY29tcG9zaXRlIHsgQ29tcG9zaXRlT3BlcmF0aW9uOjpSZXBsYWNlIH07CisgICAgU3Ry
aW5nIHBzZXVkb0VsZW1lbnQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaWRsCmluZGV4
IDFmZDg5ZDI4MTVlZWI5NjA2MDE0ZjVmNjExMzE1ZGJmMDFjNjlmODAuLjYxZWJmZjE2Yzg1NmFi
Njg0Mzk0ZWIzOTc5ZjBhMWUwZTgwOWJiMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaWRsCkBAIC0yMyw3ICsyMywxMCBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCit0eXBlZGVmIFVTVlN0cmluZyBDU1NPTVN0cmluZzsKKwogZGlj
dGlvbmFyeSBLZXlmcmFtZUVmZmVjdE9wdGlvbnMgOiBFZmZlY3RUaW1pbmcgewogICAgIEl0ZXJh
dGlvbkNvbXBvc2l0ZU9wZXJhdGlvbiBpdGVyYXRpb25Db21wb3NpdGUgPSAicmVwbGFjZSI7CiAg
ICAgQ29tcG9zaXRlT3BlcmF0aW9uIGNvbXBvc2l0ZSA9ICJyZXBsYWNlIjsKKyAgICBDU1NPTVN0
cmluZz8gcHNldWRvRWxlbWVudCA9IG51bGw7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3BwIGIvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3BwCmluZGV4IGQwYmQ3Y2Y1Y2RlOTIyMzJlZDll
NDY2NWVjOTNkY2NmODU5ZTQzODYuLjIwNTZkYjIxYmFlMzRmOGY1MmNmY2RiZTc2MGRkNjU3YTIx
NjBjZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVj
dFN0YWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RT
dGFjay5jcHAKQEAgLTU5LDYgKzU5LDE1IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3RTdGFjazo6cmVt
b3ZlRWZmZWN0KEtleWZyYW1lRWZmZWN0JiBlZmZlY3QpCiAgICAgbV9lZmZlY3RzLnJlbW92ZUZp
cnN0KCZlZmZlY3QpOwogfQogCitib29sIEtleWZyYW1lRWZmZWN0U3RhY2s6OnJlcXVpcmVzUHNl
dWRvRWxlbWVudCgpIGNvbnN0Cit7CisgICAgZm9yIChhdXRvJiBlZmZlY3QgOiBtX2VmZmVjdHMp
IHsKKyAgICAgICAgaWYgKGVmZmVjdC0+cmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkpCisgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgICAgcmV0dXJuIGZhbHNlOworfQorCiBib29sIEtl
eWZyYW1lRWZmZWN0U3RhY2s6OmlzQ3VycmVudGx5QWZmZWN0aW5nUHJvcGVydHkoQ1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eSkgY29uc3QKIHsKICAgICBmb3IgKGF1dG8mIGVmZmVjdCA6IG1fZWZmZWN0
cykgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0
U3RhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmgK
aW5kZXggOTc4ZDg0ZGNkNTY4MGQyOGMwYTNkNjk5ZTIzM2ZkYzdkM2FlYTY5MC4uMWRiODQwNDI2
OGVjNzkzYWNiNGY1MTI3MGFiY2NkMTA0YTU0NmNmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oCkBAIC00Nyw2ICs0Nyw3IEBAIHB1YmxpYzoK
ICAgICBjb25zdCBBbmltYXRpb25MaXN0KiBjc3NBbmltYXRpb25MaXN0KCkgY29uc3QgeyByZXR1
cm4gbV9jc3NBbmltYXRpb25MaXN0LmdldCgpOyB9CiAgICAgdm9pZCBzZXRDU1NBbmltYXRpb25M
aXN0KFJlZlB0cjxjb25zdCBBbmltYXRpb25MaXN0PiYmKTsKICAgICBib29sIGlzQ3VycmVudGx5
QWZmZWN0aW5nUHJvcGVydHkoQ1NTUHJvcGVydHlJRCkgY29uc3Q7CisgICAgYm9vbCByZXF1aXJl
c1BzZXVkb0VsZW1lbnQoKSBjb25zdDsKIAogcHJpdmF0ZToKICAgICB2b2lkIGVuc3VyZUVmZmVj
dHNBcmVTb3J0ZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcAppbmRleCAzMmFl
ODMyODlmOGY4ZjdjY2YzMDc5NTVjMjllOGIxNWU0MWJkMTY5Li5lODRjMjI5YjM5N2JkNWJlOTBk
ZmFhOGJiOGZjZWU5MWIzZGQ4MTlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNl
dWRvRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3Bw
CkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiQ29udGVudERhdGEuaCIKICNpbmNsdWRlICJE
b2N1bWVudFRpbWVsaW5lLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgi
CisjaW5jbHVkZSAiS2V5ZnJhbWVFZmZlY3RTdGFjay5oIgogI2luY2x1ZGUgIlJlbmRlckVsZW1l
bnQuaCIKICNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgogI2luY2x1ZGUgIlJlbmRlclF1b3RlLmgi
CkBAIC0xMDAsNyArMTAxLDE0IEBAIHZvaWQgUHNldWRvRWxlbWVudDo6Y2xlYXJIb3N0RWxlbWVu
dCgpCiAKIGJvb2wgUHNldWRvRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJT
dHlsZSYgc3R5bGUpCiB7Ci0gICAgcmV0dXJuIHBzZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVk
KCZzdHlsZSk7CisgICAgcmV0dXJuIHBzZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVkKCZzdHls
ZSkgfHwgaXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCk7
Cit9CisKK2Jvb2wgUHNldWRvRWxlbWVudDo6aXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1
aXJpbmdQc2V1ZG9FbGVtZW50KCkKK3sKKyAgICBpZiAoYXV0byogc3RhY2sgPSBrZXlmcmFtZUVm
ZmVjdFN0YWNrKCkpCisgICAgICAgIHJldHVybiBzdGFjay0+cmVxdWlyZXNQc2V1ZG9FbGVtZW50
KCk7CisgICAgcmV0dXJuIGZhbHNlOwogfQogCiB9IC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Q
c2V1ZG9FbGVtZW50LmgKaW5kZXggMmZhZDMxZDYwZTFkZjhiMTg0YTFkYmY3OTRjOWEyOTFmYmM4
MzM1ZC4uZWM3NWU2MTIwZjljOThmOGM5M2RiYjU3ZWFmYTY5Y2Y0MmI3Y2Q4NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vUHNldWRvRWxlbWVudC5oCkBAIC00MSw2ICs0MSw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGNsZWFySG9zdEVsZW1lbnQoKTsKIAogICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBS
ZW5kZXJTdHlsZSYpIG92ZXJyaWRlOworICAgIGJvb2wgaXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZl
Y3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCk7CiAKICAgICBib29sIGNhblN0YXJ0U2VsZWN0aW9u
KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KICAgICBib29sIGNhbkNvbnRhaW5S
YW5nZUVuZFBvaW50KCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFsc2U7IH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdl
bmVyYXRlZENvbnRlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1Jl
bmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAKaW5kZXggNDAyNDBiZDdhZTI4ZTcw
NDQ3ODMwNDJiYmZhMGQxNDE3YzIxMGJkNi4uNzBkYzkxZjlhYzU4ODYyMWUyOThiOTQ3ZTQ1MmI4
YjcyNjIxNzQyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5n
L1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5j
cHAKQEAgLTcxLDEyICs3MSwxNiBAQCB2b2lkIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRD
b250ZW50Ojp1cGRhdGVRdW90ZXNVcFRvKFJlbmRlclF1b3RlKiBsYXN0UXVvdAogCiBzdGF0aWMg
dm9pZCBjcmVhdGVDb250ZW50UmVuZGVyZXJzKFJlbmRlclRyZWVCdWlsZGVyJiBidWlsZGVyLCBS
ZW5kZXJFbGVtZW50JiBwc2V1ZG9SZW5kZXJlciwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQog
ewotICAgIEFTU0VSVChzdHlsZS5jb250ZW50RGF0YSgpKTsKLQotICAgIGZvciAoY29uc3QgQ29u
dGVudERhdGEqIGNvbnRlbnQgPSBzdHlsZS5jb250ZW50RGF0YSgpOyBjb250ZW50OyBjb250ZW50
ID0gY29udGVudC0+bmV4dCgpKSB7Ci0gICAgICAgIGF1dG8gY2hpbGQgPSBjb250ZW50LT5jcmVh
dGVDb250ZW50UmVuZGVyZXIocHNldWRvUmVuZGVyZXIuZG9jdW1lbnQoKSwgc3R5bGUpOwotICAg
ICAgICBpZiAocHNldWRvUmVuZGVyZXIuaXNDaGlsZEFsbG93ZWQoKmNoaWxkLCBzdHlsZSkpCi0g
ICAgICAgICAgICBidWlsZGVyLmF0dGFjaChwc2V1ZG9SZW5kZXJlciwgV1RGTW92ZShjaGlsZCkp
OworICAgIGlmIChhdXRvKiBjb250ZW50RGF0YSA9IHN0eWxlLmNvbnRlbnREYXRhKCkpIHsKKyAg
ICAgICAgZm9yIChjb25zdCBDb250ZW50RGF0YSogY29udGVudCA9IGNvbnRlbnREYXRhOyBjb250
ZW50OyBjb250ZW50ID0gY29udGVudC0+bmV4dCgpKSB7CisgICAgICAgICAgICBhdXRvIGNoaWxk
ID0gY29udGVudC0+Y3JlYXRlQ29udGVudFJlbmRlcmVyKHBzZXVkb1JlbmRlcmVyLmRvY3VtZW50
KCksIHN0eWxlKTsKKyAgICAgICAgICAgIGlmIChwc2V1ZG9SZW5kZXJlci5pc0NoaWxkQWxsb3dl
ZCgqY2hpbGQsIHN0eWxlKSkKKyAgICAgICAgICAgICAgICBidWlsZGVyLmF0dGFjaChwc2V1ZG9S
ZW5kZXJlciwgV1RGTW92ZShjaGlsZCkpOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgLy8gVGhlIG9ubHkgdmFsaWQgc2NlbmFyaW8gd2hlcmUgdGhpcyBtZXRob2QgaXMgY2FsbGVk
IHdpdGhvdXQgdGhlICJjb250ZW50IiBwcm9wZXJ0eSBiZWluZyBzZXQKKyAgICAgICAgLy8gaXMg
dGhlIGNhc2Ugd2hlcmUgYSBwc2V1ZG8tZWxlbWVudCBoYXMgYW5pbWF0aW9ucyBzZXQgb24gaXQg
dmlhIHRoZSBXZWIgQW5pbWF0aW9ucyBBUEkuCisgICAgICAgIEFTU0VSVChpczxQc2V1ZG9FbGVt
ZW50Pihwc2V1ZG9SZW5kZXJlci5lbGVtZW50KCkpICYmIGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+
KCpwc2V1ZG9SZW5kZXJlci5lbGVtZW50KCkpLmlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVx
dWlyaW5nUHNldWRvRWxlbWVudCgpKTsKICAgICB9CiB9CiAKQEAgLTk3LDcgKzEwMSw3IEBAIHZv
aWQgUmVuZGVyVHJlZVVwZGF0ZXI6OkdlbmVyYXRlZENvbnRlbnQ6OnVwZGF0ZVBzZXVkb0VsZW1l
bnQoRWxlbWVudCYgY3VycmVudCwKICAgICBpZiAoYXV0byogcmVuZGVyZXIgPSBwc2V1ZG9FbGVt
ZW50ID8gcHNldWRvRWxlbWVudC0+cmVuZGVyZXIoKSA6IG51bGxwdHIpCiAgICAgICAgIG1fdXBk
YXRlci5yZW5kZXJUcmVlUG9zaXRpb24oKS5pbnZhbGlkYXRlTmV4dFNpYmxpbmcoKnJlbmRlcmVy
KTsKIAotICAgIGlmICghbmVlZHNQc2V1ZG9FbGVtZW50KHVwZGF0ZSkpIHsKKyAgICBpZiAoIW5l
ZWRzUHNldWRvRWxlbWVudCh1cGRhdGUpICYmICghcHNldWRvRWxlbWVudCB8fCAhcHNldWRvRWxl
bWVudC0+aXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCkp
KSB7CiAgICAgICAgIGlmIChwc2V1ZG9FbGVtZW50KSB7CiAgICAgICAgICAgICBpZiAocHNldWRv
SWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkKICAgICAgICAgICAgICAgICByZW1vdmVCZWZvcmVQc2V1
ZG9FbGVtZW50KGN1cnJlbnQsIG1fdXBkYXRlci5tX2J1aWxkZXIpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCmluZGV4IDlmMzUwMGRkNWVhNzIyNTg0NjY5YTNl
OWU0Zjg5ZWY3MTE1N2RiODguLmNiMDFhNzVmYWY2M2JjOWIxYTI3MzI3M2EwMmY1ZjA1N2I2ZGQx
NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKQEAgLTI2
MSwxNCArMjYxLDE5IEBAIEVsZW1lbnRVcGRhdGUgVHJlZVJlc29sdmVyOjpyZXNvbHZlUHNldWRv
U3R5bGUoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgRWxlbWVudFVwCiB7CiAgICAgaWYgKGVsZW1l
bnRVcGRhdGUuc3R5bGUtPmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6Tm9uZSkKICAgICAgICAg
cmV0dXJuIHsgfTsKKwogICAgIGlmICghZWxlbWVudFVwZGF0ZS5zdHlsZS0+aGFzUHNldWRvU3R5
bGUocHNldWRvSWQpKQogICAgICAgICByZXR1cm4geyB9OwogCiAgICAgYXV0byBwc2V1ZG9TdHls
ZSA9IHNjb3BlKCkucmVzb2x2ZXIucHNldWRvU3R5bGVGb3JFbGVtZW50KGVsZW1lbnQsIHsgcHNl
dWRvSWQgfSwgKmVsZW1lbnRVcGRhdGUuc3R5bGUsIHBhcmVudEJveFN0eWxlRm9yUHNldWRvKGVs
ZW1lbnRVcGRhdGUpLCAmc2NvcGUoKS5zZWxlY3RvckZpbHRlcik7Ci0gICAgaWYgKCFwc2V1ZG9F
bGVtZW50UmVuZGVyZXJJc05lZWRlZChwc2V1ZG9TdHlsZS5nZXQoKSkpCisgICAgaWYgKCFwc2V1
ZG9TdHlsZSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKworICAgIGF1dG8qIHBzZXVkb0VsZW1lbnQg
PSBwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6QmVmb3JlID8gZWxlbWVudC5iZWZvcmVQc2V1ZG9FbGVt
ZW50KCkgOiBlbGVtZW50LmFmdGVyUHNldWRvRWxlbWVudCgpOworICAgIGJvb2wgaGFzQW5pbWF0
aW9ucyA9IHBzZXVkb0VsZW1lbnQgJiYgcHNldWRvRWxlbWVudC0+aXNUYXJnZXRlZEJ5S2V5ZnJh
bWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCk7CisgICAgaWYgKCFwc2V1ZG9FbGVtZW50
UmVuZGVyZXJJc05lZWRlZChwc2V1ZG9TdHlsZS5nZXQoKSkgJiYgIWhhc0FuaW1hdGlvbnMpCiAg
ICAgICAgIHJldHVybiB7IH07CiAKLSAgICBQc2V1ZG9FbGVtZW50KiBwc2V1ZG9FbGVtZW50ID0g
cHNldWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSA/IGVsZW1lbnQuYmVmb3JlUHNldWRvRWxlbWVu
dCgpIDogZWxlbWVudC5hZnRlclBzZXVkb0VsZW1lbnQoKTsKICAgICBpZiAoIXBzZXVkb0VsZW1l
bnQpIHsKICAgICAgICAgYXV0byBuZXdQc2V1ZG9FbGVtZW50ID0gUHNldWRvRWxlbWVudDo6Y3Jl
YXRlKGVsZW1lbnQsIHBzZXVkb0lkKTsKICAgICAgICAgcHNldWRvRWxlbWVudCA9IG5ld1BzZXVk
b0VsZW1lbnQucHRyKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBjYjg0MjFk
ODU1NWQ3YzVlYTExOGI1NDNlZWY3NDRjZjA3ZTMyMWMzLi4zYTNiZTQxZjE1YmJjYzE4ZDQ2ZjU2
YjlmYzlkNTM2NzBkYjc4YTlmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAyMC0wNC0wOSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29t
PgorCisgICAgICAgIFtXZWIgQW5pbWF0aW9uc10gQWRkIHN1cHBvcnQgZm9yIGBwc2V1ZG9FbGVt
ZW50YCBvbiBgS2V5ZnJhbWVFZmZlY3RgIGFuZCBgS2V5ZnJhbWVFZmZlY3RPcHRpb25zYAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3MjkwCisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS81OTE5OTAwMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBNYXJrIDIzIGFkZGl0aW9uYWwgV1BUIHRlc3RzIGFzIFBB
U1MuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0Rv
Y3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9u
cy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRs
aGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5
bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVj
dGVkLnR4dDoKKwogMjAyMC0wNC0wOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgog
CiAgICAgICAgIHF1ZXJ5U2VsZWN0b3IoIiNcdTAwMDAiKSBzaG91bGQgbWF0Y2ggYW4gZWxlbWVu
dCB3aXRoIElEIFUrRkZGRApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9u
cy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50
ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IDNjNjIzODIwMjdmYmRhNjQ3MTgxMjQ1M2FhZDcw
YjJiMzQ1OWE0ZTQuLmQwYmFiZjU2ODNlYWVlYWMzYmU4MDk2YTJjNTBmMmJhNjE2YzI5NjkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtYW5pbWF0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3Rl
ZC50eHQKQEAgLTEzLDUgKzEzLDUgQEAgUEFTUyBGaW5pc2hlZCBidXQgbm90IGZpbGxpbmcgQ1NT
IEFuaW1hdGlvbnMgYXJlIG5vdCByZXR1cm5lZAogUEFTUyBZZXQtdG8tc3RhcnQgQ1NTIEFuaW1h
dGlvbnMgYXJlIHJldHVybmVkIAogUEFTUyBDU1MgQW5pbWF0aW9ucyBjYW5jZWxlZCB2aWEgdGhl
IEFQSSBhcmUgbm90IHJldHVybmVkIAogUEFTUyBDU1MgQW5pbWF0aW9ucyBjYW5jZWxlZCBhbmQg
cmVzdGFydGVkIHZpYSB0aGUgQVBJIGFyZSByZXR1cm5lZCAKLUZBSUwgQ1NTIEFuaW1hdGlvbnMg
dGFyZ2V0dGluZyAocHNldWRvLSllbGVtZW50cyBzaG91bGQgaGF2ZSBjb3JyZWN0IG9yZGVyIGFm
dGVyIHNvcnRpbmcgYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uICMxIGhhcyBudWxsIHBzZXVkbyB0
eXBlIGV4cGVjdGVkIChvYmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQK
K1BBU1MgQ1NTIEFuaW1hdGlvbnMgdGFyZ2V0dGluZyAocHNldWRvLSllbGVtZW50cyBzaG91bGQg
aGF2ZSBjb3JyZWN0IG9yZGVyIGFmdGVyIHNvcnRpbmcgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0Vs
ZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxlbWVu
dC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggYTBjOWQwOWMwOWM0
YjM2N2M3MzBjZjMzZDU5MzY5NzM5YTkzZjg4ZC4uOGVkOTIzMGQ4N2Q4OGE4NzllMWQ2MDY1NmZj
ZDFjOWFiY2IyYTlkMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxlbWVudC1nZXRBbmltYXRpb25zLnRl
bnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxlbWVudC1nZXRBbmltYXRpb25zLnRl
bnRhdGl2ZS1leHBlY3RlZC50eHQKQEAgLTE3LDggKzE3LDggQEAgUEFTUyBnZXRBbmltYXRpb25z
IHJldHVybnMgb2JqZWN0cyB3aXRoIHRoZSBzYW1lIGlkZW50aXR5CiBQQVNTIGdldEFuaW1hdGlv
bnMgZm9yIENTUyBBbmltYXRpb25zIHRoYXQgYXJlIGNhbmNlbGVkIAogUEFTUyBnZXRBbmltYXRp
b25zIGZvciBDU1MgQW5pbWF0aW9ucyBmb2xsb3dzIGFuaW1hdGlvbi1uYW1lIG9yZGVyIAogUEFT
UyB7IHN1YnRyZWU6IGZhbHNlIH0gb24gYSBsZWFmIGVsZW1lbnQgcmV0dXJucyB0aGUgZWxlbWVu
dCdzIGFuaW1hdGlvbnMgYW5kIGlnbm9yZSBwc2V1ZG8tZWxlbWVudHMgCi1GQUlMIHsgc3VidHJl
ZTogdHJ1ZSB9IG9uIGEgbGVhZiBlbGVtZW50IHJldHVybnMgdGhlIGVsZW1lbnQncyBhbmltYXRp
b25zIGFuZCBpdHMgcHNldWRvLWVsZW1lbnRzJyBhbmltYXRpb25zIGFzc2VydF9lcXVhbHM6IFRo
ZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSBwYXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcmV0dXJu
ZWQgZmlyc3QgZXhwZWN0ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVm
aW5lZAorUEFTUyB7IHN1YnRyZWU6IHRydWUgfSBvbiBhIGxlYWYgZWxlbWVudCByZXR1cm5zIHRo
ZSBlbGVtZW50J3MgYW5pbWF0aW9ucyBhbmQgaXRzIHBzZXVkby1lbGVtZW50cycgYW5pbWF0aW9u
cyAKIFBBU1MgeyBzdWJ0cmVlOiBmYWxzZSB9IG9uIGFuIGVsZW1lbnQgd2l0aCBhIGNoaWxkIHJl
dHVybnMgb25seSB0aGUgZWxlbWVudCdzIGFuaW1hdGlvbnMgCi1GQUlMIHsgc3VidHJlZTogdHJ1
ZSB9IG9uIGFuIGVsZW1lbnQgd2l0aCBhIGNoaWxkIHJldHVybnMgYW5pbWF0aW9ucyBmcm9tIHRo
ZSBlbGVtZW50LCBpdHMgcHNldWRvLWVsZW1lbnRzLCBpdHMgY2hpbGQgYW5kIGl0cyBjaGlsZCBw
c2V1ZG8tZWxlbWVudHMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlvbiB0YXJnZXRpbmcgdGhl
IHBhcmVudCBlbGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCBmaXJzdCBleHBlY3RlZCAob2JqZWN0
KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitGQUlMIHsgc3VidHJlZTogdHJ1
ZSB9IG9uIGFuIGVsZW1lbnQgd2l0aCBhIGNoaWxkIHJldHVybnMgYW5pbWF0aW9ucyBmcm9tIHRo
ZSBlbGVtZW50LCBpdHMgcHNldWRvLWVsZW1lbnRzLCBpdHMgY2hpbGQgYW5kIGl0cyBjaGlsZCBw
c2V1ZG8tZWxlbWVudHMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlvbiB0YXJnZXRpbmcgdGhl
IDo6YWZ0ZXIgcGVzdWRvLWVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVkIHRoaXJkIGV4cGVjdGVk
IChzdHJpbmcpICI6OmFmdGVyIiBidXQgZ290IChvYmplY3QpIG51bGwKIEZBSUwgeyBzdWJ0cmVl
OiB0cnVlIH0gb24gYW4gZWxlbWVudCB3aXRoIG1hbnkgZGVzY2VuZGFudHMgcmV0dXJucyBhbmlt
YXRpb25zIGZyb20gYWxsIHRoZSBkZXNjZW5kYW50cyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0
aW9uIHRhcmdldGluZyB0aGUgY2hpbGQxIGVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVkIHNlY29u
ZCBleHBlY3RlZCBFbGVtZW50IG5vZGUgPGRpdiBpZD0iY2hpbGQxIiBzdHlsZT0iYW5pbWF0aW9u
OiBhbmltMSAxMDBzOyI+PGRpdiBpZD0iLi4uIGJ1dCBnb3QgRWxlbWVudCBub2RlIDxkaXYgaWQ9
ImdyYW5kY2hpbGQxIiBzdHlsZT0iYW5pbWF0aW9uOiBhbmltMSAxMDBzOyI+PC9kaXY+CiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy10cmFuc2l0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdHJhbnNpdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQu
dHh0CmluZGV4IDE4YzFlMzE2NWEwMmZmMTUyMGY1MWZkZWQyYmU3ZDJkMzU2M2Y3MzYuLmZkMmJm
NTUwMjQxMjA0Y2FjZDRiYTUwMzEwZWI5MGI4YTUxYmNlMTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9E
b2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25z
L0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsx
LDYgQEAKIAogUEFTUyBnZXRBbmltYXRpb25zIGZvciBub24tYW5pbWF0ZWQgY29udGVudCAKIFBB
U1MgZ2V0QW5pbWF0aW9ucyBmb3IgQ1NTIFRyYW5zaXRpb25zIAotRkFJTCBDU1MgVHJhbnNpdGlv
bnMgdGFyZ2V0dGluZyAocHNldWRvLSllbGVtZW50cyBzaG91bGQgaGF2ZSBjb3JyZWN0IG9yZGVy
IGFmdGVyIHNvcnRpbmcgYXNzZXJ0X2VxdWFsczogVHJhbnNpdGlvbiAjMSBoYXMgbnVsbCBwc2V1
ZG8gdHlwZSBleHBlY3RlZCAob2JqZWN0KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZp
bmVkCitQQVNTIENTUyBUcmFuc2l0aW9ucyB0YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNo
b3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29ydGluZyAKIFBBU1MgVHJhbnNpdGlvbnMg
YXJlIG5vdCByZXR1cm5lZCBhZnRlciB0aGV5IGhhdmUgZmluaXNoZWQgCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlv
bnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pZGxoYXJuZXNzLndpbmRvdy1l
eHBlY3RlZC50eHQKaW5kZXggY2VmMjI1NTBjMTVmYzA1NDAxNDliZDhlMzI4ZjA4ZTYxMmI2YTc1
OS4uOGE2NmNkZmQ4MGZiNjYxNmU0NTQ1YjIzOGY0OTlmZDNiMTIwYjRhZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9u
cy9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pZGxoYXJuZXNzLndpbmRv
dy1leHBlY3RlZC50eHQKQEAgLTEwOCwxNCArMTA4LDE0IEBAIFBBU1MgS2V5ZnJhbWVFZmZlY3Qg
aW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlw
ZSBvCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0
aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgImNvbnN0cnVjdG9yIiBwcm9wZXJ0
eSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRp
ZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyBAQHVuc2NvcGFibGVzIHByb3BlcnR5
IAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSB0YXJnZXQgCi1GQUlM
IEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0cmlidXRlIHBzZXVkb0VsZW1lbnQgYXNzZXJ0
X3RydWU6IFRoZSBwcm90b3R5cGUgb2JqZWN0IG11c3QgaGF2ZSBhIHByb3BlcnR5ICJwc2V1ZG9F
bGVtZW50IiBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQorUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRl
cmZhY2U6IGF0dHJpYnV0ZSBwc2V1ZG9FbGVtZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRl
cmZhY2U6IGF0dHJpYnV0ZSBjb21wb3NpdGUgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFj
ZTogb3BlcmF0aW9uIGdldEtleWZyYW1lcygpIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZh
Y2U6IG9wZXJhdGlvbiBzZXRLZXlmcmFtZXMob2JqZWN0KSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3Qg
bXVzdCBiZSBwcmltYXJ5IGludGVyZmFjZSBvZiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVs
bCkgCiBQQVNTIFN0cmluZ2lmaWNhdGlvbiBvZiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVs
bCkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51
bGwsIG51bGwpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAidGFyZ2V0IiB3aXRoIHRoZSBwcm9wZXIg
dHlwZSAKLUZBSUwgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3Qo
bnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJwc2V1ZG9FbGVtZW50IiB3aXRoIHRo
ZSBwcm9wZXIgdHlwZSBhc3NlcnRfaW5oZXJpdHM6IHByb3BlcnR5ICJwc2V1ZG9FbGVtZW50IiBu
b3QgZm91bmQgaW4gcHJvdG90eXBlIGNoYWluCitQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFj
ZTogbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAi
cHNldWRvRWxlbWVudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEtleWZyYW1lRWZmZWN0
IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3QgaW5oZXJpdCBw
cm9wZXJ0eSAiY29tcG9zaXRlIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgS2V5ZnJhbWVF
ZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJnZXRLZXlmcmFtZXMoKSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNT
IEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwp
IG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAic2V0S2V5ZnJhbWVzKG9iamVjdCkiIHdpdGggdGhlIHBy
b3BlciB0eXBlIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0YWJsZS9hbmltYXRlLWV4cGVjdGVkLnR4
dAppbmRleCA3NTE0NDI2Y2EwZjFlYjE0YzI1NDM2OTI2MmFjOGQ5NWNkOTQxNDU4Li41ZTMxZjg1
YTk5MmQ4YTJjMmIyZmNhNWRmYmU4OWMwY2YyNDA5ZDg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvQW5pbWF0YWJsZS9hbmltYXRlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5p
bWF0YWJsZS9hbmltYXRlLWV4cGVjdGVkLnR4dApAQCAtMTM1LDEwICsxMzUsMTAgQEAgUEFTUyBF
bGVtZW50LmFuaW1hdGUoKSBjYWxscyBwbGF5IG9uIHRoZSBBbmltYXRpb24KIFBBU1MgRWxlbWVu
dC5hbmltYXRlKCkgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1Mg
YW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIgY3JlYXRlcyBhbiBBbmltYXRp
b24gb2JqZWN0IAogUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciB3
aXRob3V0IGNvbnRlbnQgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IAotUEFTUyBhbmltYXRl
KCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2Jq
ZWN0IGZvciA6Om1hcmtlciAKLVBBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJh
bWV0ZXIgIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCBmb3IgOjpmaXJzdC1saW5lIAotRkFJ
TCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0
aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGFzc2VydF9lcXVhbHM6IFRoZSByZXR1cm5l
ZCBBbmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3RyaW5n
KSAiOjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1hdGUo
KSB3aXRoIHBzZXVkb0VsZW1lbnQgd2l0aG91dCBjb250ZW50IGNyZWF0ZXMgYW4gQW5pbWF0aW9u
IG9iamVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgYXNzZXJ0X2VxdWFs
czogVGhlIHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4
cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQK
LUZBSUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRh
cmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCBmb3IgOjptYXJrZXIgYXNzZXJ0X2Vx
dWFsczogVGhlIHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9y
IGV4cGVjdGVkIChzdHJpbmcpICI6Om1hcmtlciIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmlu
ZWQKLUZBSUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0
IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCBmb3IgOjpmaXJzdC1saW5lIGFz
c2VydF9lcXVhbHM6IFRoZSByZXR1cm5lZCBBbmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBz
ZWxlY3RvciBleHBlY3RlZCAoc3RyaW5nKSAiOjpmaXJzdC1saW5lIiBidXQgZ290ICh1bmRlZmlu
ZWQpIHVuZGVmaW5lZAorRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRl
ciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IGZvciA6Om1hcmtlciBUeXBlIGVycm9yCitG
QUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyICBjcmVhdGVzIGFuIEFu
aW1hdGlvbiBvYmplY3QgZm9yIDo6Zmlyc3QtbGluZSBUeXBlIGVycm9yCitQQVNTIGFuaW1hdGUo
KSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNv
cnJlY3QgcHNldWRvLWVsZW1lbnQgCitQQVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQg
d2l0aG91dCBjb250ZW50IGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhl
IGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgCitGQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1l
bnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1l
bnQgZm9yIDo6bWFya2VyIFR5cGUgZXJyb3IKK0ZBSUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxl
bWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxl
bWVudCBmb3IgOjpmaXJzdC1saW5lIFR5cGUgZXJyb3IKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZh
Y2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0Fu
aW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0CmluZGV4IDM2NTAyMjdjZjBmMTJkZjI1
ZDc5ZWMwYzNhMGI3MWQ1MjE2ZTA4NzUuLmQ1NTY3NjA4MDcwM2I2NGMyZGI5MDliMDg5YzMzYTEz
NDNlZWIzYmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRpb24vY29tbWl0U3R5bGVz
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1l
eHBlY3RlZC50eHQKQEAgLTExLDE2ICsxMSwxMiBAQCBGQUlMIENvbW1pdHMgdGhlIGludGVybWVk
aWF0ZSB2YWx1ZSBvZiBhbiBhbmltYXRpb24gaW4gdGhlIG1pZGRsZSBvZiBzdGFjayBhc3Nlcgog
RkFJTCBDb21taXQgY29tcG9zaXRlcyBvbiB0b3Agb2YgdGhlIHVuZGVybHlpbmcgdmFsdWUgYXNz
ZXJ0X2FwcHJveF9lcXVhbHM6IGV4cGVjdGVkIDAuNSArLy0gMC4wMDAxIGJ1dCBnb3QgMC4yMDAw
MDAwMDI5ODAyMzIyNAogUEFTUyBUcmlnZ2VycyBtdXRhdGlvbiBvYnNlcnZlcnMgd2hlbiB1cGRh
dGluZyBzdHlsZSAKIEZBSUwgRG9lcyBOT1QgdHJpZ2dlciBtdXRhdGlvbiBvYnNlcnZlcnMgd2hl
biB0aGUgY2hhbmdlIHRvIHN0eWxlIGlzIHJlZHVuZGFudCBhc3NlcnRfZXF1YWxzOiBTaG91bGQg
aGF2ZSBubyBtdXRhdGlvbiByZWNvcmRzIGV4cGVjdGVkIDAgYnV0IGdvdCAxCi1GQUlMIFRocm93
cyBpZiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgYSBwc2V1ZG8gZWxlbWVudCBhc3NlcnRfdGhyb3dz
X2RvbTogZnVuY3Rpb24gIigpID0+IHsKLSAgICBhbmltYXRpb24uY29tbWl0U3R5bGVzKCk7Ci0g
IH0iIGRpZCBub3QgdGhyb3cKK1BBU1MgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBh
IHBzZXVkbyBlbGVtZW50IAogUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlbGVtZW50IGlzIG5v
dCBzb21ldGhpbmcgd2l0aCBhIHN0eWxlIGF0dHJpYnV0ZSAKIFBBU1MgVGhyb3dzIGlmIHRoZSB0
YXJnZXQgZWZmZWN0IGlzIGRpc3BsYXk6bm9uZSAKIFBBU1MgVGhyb3dzIGlmIHRoZSB0YXJnZXQg
ZWZmZWN0J3MgYW5jZXN0b3IgaXMgZGlzcGxheTpub25lIAogUEFTUyBUcmVhdHMgZGlzcGxheTpj
b250ZW50cyBhcyByZW5kZXJlZCAKIFBBU1MgVHJlYXRzIGRpc3BsYXk6Y29udGVudHMgaW4gYSBk
aXNwbGF5Om5vbmUgc3VidHJlZSBhcyBub3QgcmVuZGVyZWQgCiBQQVNTIFRocm93cyBpZiB0aGUg
dGFyZ2V0IGVmZmVjdCBpcyBkaXNjb25uZWN0ZWQgCi1GQUlMIENoZWNrcyB0aGUgcHNldWRvIGVs
ZW1lbnQgY29uZGl0aW9uIGJlZm9yZSB0aGUgbm90IHJlbmRlcmVkIGNvbmRpdGlvbiBhc3NlcnRf
dGhyb3dzX2RvbTogZnVuY3Rpb24gIigpID0+IHsKLSAgICBhbmltYXRpb24uY29tbWl0U3R5bGVz
KCk7Ci0gIH0iIHRocmV3IG9iamVjdCAiSW52YWxpZFN0YXRlRXJyb3I6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4iIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIE5vTW9kaWZp
Y2F0aW9uQWxsb3dlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gMTEsIGV4cGVj
dGVkIDcKK1BBU1MgQ2hlY2tzIHRoZSBwc2V1ZG8gZWxlbWVudCBjb25kaXRpb24gYmVmb3JlIHRo
ZSBub3QgcmVuZGVyZWQgY29uZGl0aW9uIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5
ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQKaW5kZXgg
ZDMwOWE0NzgyNzkyMmU0NDRmZDU4ZDk5YmM4N2NjZjM2MDVkZTMwMS4uOGE2MGMxMzliOTRkZTY2
NTNkNGFmN2Q1ZGMzOGUwNWQ0NTE5YzUwNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZy
YW1lRWZmZWN0L3N0eWxlLWNoYW5nZS1ldmVudHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJm
YWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRzLWV4cGVjdGVkLnR4dApAQCAt
MSw5ICsxLDEwIEBACiAKLUZBSUwgQWxsIHByb3BlcnR5IGtleXMgYXJlIHJlY29nbml6ZWQgYXNz
ZXJ0X2luX2FycmF5OiBUZXN0IHByb3BlcnR5ICdwc2V1ZG9FbGVtZW50JyBzaG91bGQgYmUgb25l
IG9mIHRoZSBwcm9wZXJ0aWVzIG9uICBLZXlmcmFtZUVmZmVjdCB2YWx1ZSAicHNldWRvRWxlbWVu
dCIgbm90IGluIGFycmF5IFsiZ2V0VGltaW5nIiwgImdldENvbXB1dGVkVGltaW5nIiwgInVwZGF0
ZVRpbWluZyIsICJ0YXJnZXQiLCAiaXRlcmF0aW9uQ29tcG9zaXRlIiwgImNvbXBvc2l0ZSIsICJn
ZXRLZXlmcmFtZXMiLCAic2V0S2V5ZnJhbWVzIiwgIktleWZyYW1lRWZmZWN0IGNvbnN0cnVjdG9y
IiwgIktleWZyYW1lRWZmZWN0IGNvcHkgY29uc3RydWN0b3IiXQorUEFTUyBBbGwgcHJvcGVydHkg
a2V5cyBhcmUgcmVjb2duaXplZCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0VGltaW5nIGRvZXMg
Tk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0Lmdl
dENvbXB1dGVkVGltaW5nIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQ
QVNTIEtleWZyYW1lRWZmZWN0LnVwZGF0ZVRpbWluZyBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUg
Y2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC50YXJnZXQgZG9lcyBOT1QgdHJpZ2dl
ciBhIHN0eWxlIGNoYW5nZSBldmVudCAKK1BBU1MgS2V5ZnJhbWVFZmZlY3QucHNldWRvRWxlbWVu
dCBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVm
ZmVjdC5pdGVyYXRpb25Db21wb3NpdGUgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBl
dmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuY29tcG9zaXRlIGRvZXMgTk9UIHRyaWdnZXIgYSBz
dHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0LmdldEtleWZyYW1lcyBkb2Vz
IE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZh
Y2VzL0tleWZyYW1lRWZmZWN0L3RhcmdldC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5
ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dAppbmRleCAwM2Y1ZmJkMmMyZWVjYzg0Yjk3
NjJhMDI0YzUyZTBiOWY1OWQzMDJlLi5jNTEyODAyYzU1NDE0Yjc3ZmM0NWUzOWM4MmZlOWFhYzc2
MjQzZDJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVj
dGVkLnR4dApAQCAtNCwxOCArNCwxOCBAQCBQQVNTIFRlc3Qgc2V0dGluZyB0YXJnZXQgZnJvbSBu
dWxsIHRvIGEgdmFsaWQgdGFyZ2V0CiBQQVNTIFRlc3Qgc2V0dGluZyB0YXJnZXQgZnJvbSBhIHZh
bGlkIHRhcmdldCB0byBudWxsIAogUEFTUyBUZXN0IHNldHRpbmcgdGFyZ2V0IGZyb20gYSB2YWxp
ZCB0YXJnZXQgdG8gYW5vdGhlciB0YXJnZXQgCiBQQVNTIFRhcmdldCBlbGVtZW50IGNhbiBiZSBz
ZXQgdG8gYSBmb3JlaWduIGVsZW1lbnQgCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRv
IGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIGFzc2VydF9l
cXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhw
ZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxs
IHRvIGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1ZG9FbGVtZW50IGZpcnN0
LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUgcHJvZ3Jlc3MgYWZ0ZXIgc2V0dGluZyBuZXcg
dGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIxMHB4IgorUEFTUyBDaGFuZ2UgdGFyZ2V0
IGZyb20gbnVsbCB0byBhbiBleGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgdGFyZ2V0IGZp
cnN0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRv
RWxlbWVudCBzZXR0aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3QuIAogUEFTUyBDaGFuZ2UgdGFyZ2V0
IGZyb20gYW4gZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgdG8gdGhlIG9yaWdpbmF0aW5nIGVsZW1l
bnQuIAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQg
ZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIGFzc2VydF9lcXVhbHM6
IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8tZWxlbWVudCAocHNldWRvLXNlbGVj
dG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5k
ZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVu
dCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIGFzc2Vy
dF9lcXVhbHM6IFZhbHVlIG9mIDJuZCBlbGVtZW50IChjdXJyZW50bHkgdGFyZ2V0ZWQpIGFmdGVy
IGNoYW5naW5nIHRoZSBlZmZlY3QgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIyMHB4
IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQg
ZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIGFzc2VydF9lcXVhbHM6
IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8tZWxlbWVudCAocHNldWRvLXNlbGVj
dG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5k
ZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZl
cmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIGFz
c2VydF9lcXVhbHM6IFZhbHVlIG9mIDJuZCBlbGVtZW50IChjdXJyZW50bHkgdGFyZ2V0ZWQpIGFm
dGVyIGNoYW5naW5nIHRoZSBlZmZlY3QgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIy
MHB4IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhIG5vbi1leGlzdGluZyBwc2V1
ZG9FbGVtZW50IHNldHRpbmcgdGFyZ2V0IGZpcnN0LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1
MCUgcHJvZ3Jlc3MgYWZ0ZXIgc2V0dGluZyBuZXcgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQg
Z290ICIxMHB4IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhIG5vbi1leGlzdGlu
ZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4gYXNzZXJ0X2VxdWFs
czogVmFsdWUgYXQgNTAlIHByb2dyZXNzIGFmdGVyIHNldHRpbmcgbmV3IHRhcmdldCBleHBlY3Rl
ZCAiNTBweCIgYnV0IGdvdCAiMTBweCIKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0
aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFy
Z2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50
IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gCitQQVNT
IENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGlu
ZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gCitQQVNTIENoYW5nZSB0YXJnZXQg
ZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVu
dCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVs
bCB0byBhIG5vbi1leGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgdGFyZ2V0IGZpcnN0LiAK
K1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYSBub24tZXhpc3RpbmcgcHNldWRvRWxl
bWVudCBzZXR0aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3QuIAogUEFTUyBDaGFuZ2UgdGFyZ2V0IGZy
b20gYSBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgdG8gdGhlIG9yaWdpbmF0aW5nIGVsZW1l
bnQuIAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQg
bm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiBhc3NlcnRfZXF1
YWxzOiBBbmltYXRpb24gdGFyZ2V0cyBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQgKHBzZXVkby1z
ZWxlY3RvcikgZXhwZWN0ZWQgKHN0cmluZykgIjo6YmVmb3JlIiBidXQgZ290ICh1bmRlZmluZWQp
IHVuZGVmaW5lZAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZm
ZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVu
dC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1cnJlbnRseSB0YXJnZXRl
ZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBn
b3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRp
ZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIGFz
c2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8tZWxlbWVudCAo
cHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1dCBnb3QgKHVu
ZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGlu
ZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBw
c2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBvZiAybmQgZWxlbWVudCAoY3VycmVu
dGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZmZWN0IHRhcmdldCBleHBlY3RlZCAi
NTBweCIgYnV0IGdvdCAiMjBweCIKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5n
IHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRh
cmdldC4gCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVu
dCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiAK
K1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5v
bi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gCitQQVNTIENoYW5n
ZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3Rpbmcg
cHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396054</attachid>
            <date>2020-04-10 00:05:21 -0700</date>
            <delta_ts>2020-04-10 06:45:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200410090519.patch</filename>
            <type>text/plain</type>
            <size>39810</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5ODUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmQwOWM1ZDlkOTBhMzE2
MDVlMTZiZWRmOTY4OTc0NTRkOWZmNzlkYy4uYmQyNWQ1YzlhMjEwNjE0MDRkY2Y0N2ZmNmY5MTA3
NzJhNTg5Njg4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIwLTA0LTA5ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LAorICAgICAgICBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZCBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQgYSBQc2V1ZG9F
bGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBpdCdzIG5vdCBi
ZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBvZiBhIDo6YmVm
b3JlIG9yIDo6YWZ0ZXIKKyAgICAgICAgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQiIHN0eWxlIHJ1
bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3IgInBzZXVkb0Vs
ZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwgd2UgZW5zdXJlIGEgUHNl
dWRvRWxlbWVudAorICAgICAgICBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhvc3QgZWxlbWVu
dCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQgZHVyaW5nIHN0
eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMgYXJlIGFwcGxpZWQgdG8gc3VjaCBwc2V1ZG8tZWxl
bWVudHMKKyAgICAgICAgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1RhcmdldGVkQnlLZXlm
cmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBpbmRpY2F0ZXMg
dGhhdCBhIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFyZ2V0cyB0aGlzIHBzZXVkby1l
bGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBIYW5kbGUgdGhlIG5ldyBLZXlm
cmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0eSBpbiB0aGUgS2V5ZnJhbWVF
ZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6Y29w
eVByb3BlcnRpZXNGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0
OjpiaW5kaW5nc1RhcmdldCBjb25zdCk6IFJldHVybiB0aGUgdGFyZ2V0J3MgaG9zdCBlbGVtZW50
IGlmIHRoZSB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OmVu
c3VyZVBzZXVkb0VsZW1lbnQpOiBVdGlsaXR5IGZ1bmN0aW9uIGRlc2lnbmVkIHRvIGd1YXJhbnRl
ZSBhIHBzZXVkby1lbGVtZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBpcyBhdmFpbGFibGUgZm9y
IHRoZSBwcm92aWRlZCBob3N0IGVsZW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVm
ZmVjdDo6c2V0QmluZGluZ3NUYXJnZXQpOiBXaGVuIHRoZSBLZXlmcmFtZUVmZmVjdC50YXJnZXQg
cHJvcGVydHkgY2hhbmdlcywgc2V0IGl0IGFzIHRoZSB0YXJnZXQgZGlyZWN0bHkgb3Igc2V0IHRo
ZSBwc2V1ZG8tZWxlbWVudCBtYXRjaGluZyB0aGUKKyAgICAgICAgY3VycmVudCB2YWx1ZSBmb3Ig
S2V5ZnJhbWVFZmZlY3QucHNldWRvRWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1l
RWZmZWN0Ojpwc2V1ZG9FbGVtZW50IGNvbnN0KTogUmV0dXJuIHRoZSBwc2V1ZG8tZWxlbWVudCBz
ZWxlY3RvciBvZiB0aGUgY3VycmVudCB0YXJnZXQgaWYgaXQncyBhIHBzZXVkby1lbGVtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1lbnQpOiBXaGVu
IHRoZSBLZXlmcmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5IGNoYW5nZXMsIHNldCB0
aGUgdGFyZ2V0IGJhc2VkIG9uIHRoZSBjdXJyZW50IEtleWZyYW1lRWZmZWN0LnRhcmdldCB2YWx1
ZQorICAgICAgICBhbmQgdGhlIG5ldyBwc2V1ZG8tZWxlbWVudCBzZWxlY3Rvci4KKyAgICAgICAg
KFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBhIFBzZXVkb0VsZW1lbnQgbXVzdCByZW1haW4gY3JlYXRlZCBmb3Ig
dGhpcyBLZXlmcmFtZUVmZmVjdCwgd2hpY2ggaXMgb25seSBuZWNlc3NhcnkgZm9yCisgICAgICAg
IEpTLW9yaWdpbmF0ZWQgZWZmZWN0cyB0YXJnZXRpbmcgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAg
ICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuaWRsOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlv
bnMuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbDoKKyAg
ICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBvbmUgb3IgbW9yZSBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgaW4gdGhlIHN0YWNrIHRhcmdldCB0aGUgUHNldWRvRWxlbWVudCBvd25pbmcKKyAgICAgICAg
dGhpcyBzdGFjay4KKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oOgor
ICAgICAgICAqIGRvbS9Qc2V1ZG9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVk
b0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9y
IG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQg
dGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6Omlz
VGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0
cnVlIHdoZW4gb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRo
ZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRv
RWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRl
ckdlbmVyYXRlZENvbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJl
bmRlcmVycyk6IFJlbW92ZSB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0
eSB3YXMgc2V0IHNpbmNlIGl0J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNh
bGxlZCBkdWUgdG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZQorICAgICAgICBlZmZlY3RzIHRhcmdl
dGluZyB0aGUgZ2l2ZW4gcHNldWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlv
biB0aGF0IHRoZXJlIGFyZSBzdWNoIGtleWZyYW1lIGVmZmVjdHMgaW4gY2FzZSBubyAiY29udGVu
dCIgcHJvcGVydHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRyZWVVcGRhdGVy
OjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSByZW1vdmUgcHNl
dWRvLWVsZW1lbnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogc3R5
bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlRyZWVS
ZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5pbWF0ZWQgc3R5bGUgcmVzb2x1
dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpTLW9yaWdpbmF0ZWQga2V5ZnJh
bWUgZWZmZWN0cy4KKwogMjAyMC0wNC0wOSAgUGVuZyBMaXUgIDxwZW5nLmxpdTZAYXBwbGUuY29t
PgogCiAgICAgICAgIFJFR1JFU1NJT046IChyMjU4NDM0KSBbIE1hYyBXSzEgXSBtZWRpYS90cmFj
ay90cmFjay1jc3MtdXNlci1vdmVycmlkZS5odG1sIGlzIGEgZmxha3kgZmFpbHVyZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKaW5kZXggNWYyYTYxZjAyMGJi
M2MwYzk0ZmM0OTFkNzYxYWExNjFhZThhNDUzYy4uNGRiOGE0MzgwZGMwMjRjNTY2NWQ5OWJjZTI4
NDdjMmM2NDM3ZmZmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZy
YW1lRWZmZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZl
Y3QuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVkZSAiSlNLZXlmcmFtZUVmZmVjdC5oIgog
I2luY2x1ZGUgIktleWZyYW1lRWZmZWN0U3RhY2suaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisj
aW5jbHVkZSAiUHNldWRvRWxlbWVudC5oIgogI2luY2x1ZGUgIlJlbmRlckJveC5oIgogI2luY2x1
ZGUgIlJlbmRlckJveE1vZGVsT2JqZWN0LmgiCiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVudC5oIgpA
QCAtNDg1LDYgKzQ4NiwxMSBAQCBFeGNlcHRpb25PcjxSZWY8S2V5ZnJhbWVFZmZlY3Q+PiBLZXlm
cmFtZUVmZmVjdDo6Y3JlYXRlKEpTR2xvYmFsT2JqZWN0JiBsZXhpY2FsRwogICAgICAgICAgICAg
dGltaW5nLmR1cmF0aW9uID0gZHVyYXRpb247CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICBhdXRvIGtleWZyYW1lRWZmZWN0T3B0aW9ucyA9IFdURjo6Z2V0PEtleWZyYW1lRWZmZWN0T3B0
aW9ucz4ob3B0aW9uc1ZhbHVlKTsKKworICAgICAgICAgICAgYXV0byBzZXRQc2V1ZG9FbGVtZW50
UmVzdWx0ID0ga2V5ZnJhbWVFZmZlY3QtPnNldFBzZXVkb0VsZW1lbnQoa2V5ZnJhbWVFZmZlY3RP
cHRpb25zLnBzZXVkb0VsZW1lbnQpOworICAgICAgICAgICAgaWYgKHNldFBzZXVkb0VsZW1lbnRS
ZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNldFBzZXVkb0Vs
ZW1lbnRSZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpOworCiAgICAgICAgICAgICB0aW1pbmcgPSB7
CiAgICAgICAgICAgICAgICAga2V5ZnJhbWVFZmZlY3RPcHRpb25zLmR1cmF0aW9uLAogICAgICAg
ICAgICAgICAgIGtleWZyYW1lRWZmZWN0T3B0aW9ucy5pdGVyYXRpb25zLApAQCAtNTI4LDYgKzUz
NCw3IEBAIEtleWZyYW1lRWZmZWN0OjpLZXlmcmFtZUVmZmVjdChFbGVtZW50KiB0YXJnZXQpCiB2
b2lkIEtleWZyYW1lRWZmZWN0Ojpjb3B5UHJvcGVydGllc0Zyb21Tb3VyY2UoUmVmPEtleWZyYW1l
RWZmZWN0PiYmIHNvdXJjZSkKIHsKICAgICBtX3RhcmdldCA9IHNvdXJjZS0+bV90YXJnZXQ7Cisg
ICAgbV9wc2V1ZG9JZCA9IHNvdXJjZS0+bV9wc2V1ZG9JZDsKICAgICBtX2NvbXBvc2l0ZU9wZXJh
dGlvbiA9IHNvdXJjZS0+bV9jb21wb3NpdGVPcGVyYXRpb247CiAgICAgbV9pdGVyYXRpb25Db21w
b3NpdGVPcGVyYXRpb24gPSBzb3VyY2UtPm1faXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uOwog
CkBAIC0xMDY2LDYgKzEwNzMsNDUgQEAgdm9pZCBLZXlmcmFtZUVmZmVjdDo6c2V0QW5pbWF0aW9u
KFdlYkFuaW1hdGlvbiogYW5pbWF0aW9uKQogICAgIHVwZGF0ZUVmZmVjdFN0YWNrTWVtYmVyc2hp
cCgpOwogfQogCitFbGVtZW50KiBLZXlmcmFtZUVmZmVjdDo6YmluZGluZ3NUYXJnZXQoKSBjb25z
dAoreworICAgIGlmIChpczxQc2V1ZG9FbGVtZW50PihtX3RhcmdldC5nZXQoKSkpCisgICAgICAg
IHJldHVybiBkb3duY2FzdDxQc2V1ZG9FbGVtZW50PigqbV90YXJnZXQpLmhvc3RFbGVtZW50KCk7
CisgICAgcmV0dXJuIG1fdGFyZ2V0LmdldCgpOworfQorCitzdGF0aWMgRWxlbWVudCogZW5zdXJl
UHNldWRvRWxlbWVudChFbGVtZW50KiBob3N0LCBQc2V1ZG9JZCBwc2V1ZG9JZCkKK3sKKyAgICBB
U1NFUlQoaG9zdCk7CisKKyAgICBpZiAocHNldWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkgewor
ICAgICAgICBpZiAoYXV0byogYmVmb3JlUHNldWRvRWxlbWVudCA9IGhvc3QtPmJlZm9yZVBzZXVk
b0VsZW1lbnQoKSkKKyAgICAgICAgICAgIHJldHVybiBiZWZvcmVQc2V1ZG9FbGVtZW50OworICAg
ICAgICBhdXRvIG5ld0JlZm9yZVBzZXVkb0VsZW1lbnQgPSBQc2V1ZG9FbGVtZW50OjpjcmVhdGUo
Kmhvc3QsIHBzZXVkb0lkKTsKKyAgICAgICAgaG9zdC0+c2V0QmVmb3JlUHNldWRvRWxlbWVudChX
VEZNb3ZlKG5ld0JlZm9yZVBzZXVkb0VsZW1lbnQpKTsKKyAgICAgICAgcmV0dXJuIGhvc3QtPmJl
Zm9yZVBzZXVkb0VsZW1lbnQoKTsKKyAgICB9CisKKyAgICBpZiAocHNldWRvSWQgPT0gUHNldWRv
SWQ6OkFmdGVyKSB7CisgICAgICAgIGlmIChhdXRvKiBhZnRlclBzZXVkb0VsZW1lbnQgPSBob3N0
LT5hZnRlclBzZXVkb0VsZW1lbnQoKSkKKyAgICAgICAgICAgIHJldHVybiBhZnRlclBzZXVkb0Vs
ZW1lbnQ7CisgICAgICAgIGF1dG8gbmV3QWZ0ZXJQc2V1ZG9FbGVtZW50ID0gUHNldWRvRWxlbWVu
dDo6Y3JlYXRlKCpob3N0LCBwc2V1ZG9JZCk7CisgICAgICAgIGhvc3QtPnNldEFmdGVyUHNldWRv
RWxlbWVudChXVEZNb3ZlKG5ld0FmdGVyUHNldWRvRWxlbWVudCkpOworICAgICAgICByZXR1cm4g
aG9zdC0+YWZ0ZXJQc2V1ZG9FbGVtZW50KCk7CisgICAgfQorCisgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK3ZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNl
dEJpbmRpbmdzVGFyZ2V0KFJlZlB0cjxFbGVtZW50PiYmIHRhcmdldCkKK3sKKyAgICBpZiAobV9w
c2V1ZG9JZCAmJiB0YXJnZXQpCisgICAgICAgIHNldFRhcmdldChlbnN1cmVQc2V1ZG9FbGVtZW50
KHRhcmdldC5nZXQoKSwgKm1fcHNldWRvSWQpKTsKKyAgICBlbHNlCisgICAgICAgIHNldFRhcmdl
dChXVEZNb3ZlKHRhcmdldCkpOworfQorCiB2b2lkIEtleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQo
UmVmUHRyPEVsZW1lbnQ+JiYgbmV3VGFyZ2V0KQogewogICAgIGlmIChtX3RhcmdldC5nZXQoKSA9
PSBuZXdUYXJnZXQuZ2V0KCkpCkBAIC0xMDk0LDYgKzExNDAsNTAgQEAgdm9pZCBLZXlmcmFtZUVm
ZmVjdDo6c2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50PiYmIG5ld1RhcmdldCkKICAgICAgICAgbV9p
blRhcmdldEVmZmVjdFN0YWNrID0gbV90YXJnZXQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2so
KS5hZGRFZmZlY3QoKnRoaXMpOwogfQogCitjb25zdCBTdHJpbmcgS2V5ZnJhbWVFZmZlY3Q6OnBz
ZXVkb0VsZW1lbnQoKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy93
ZWItYW5pbWF0aW9ucy8jZG9tLWtleWZyYW1lZWZmZWN0LXBzZXVkb2VsZW1lbnQKKworICAgIC8v
IFRoZSB0YXJnZXQgcHNldWRvLXNlbGVjdG9yLiBudWxsIGlmIHRoaXMgZWZmZWN0IGhhcyBubyBl
ZmZlY3QgdGFyZ2V0IG9yIGlmIHRoZSBlZmZlY3QgdGFyZ2V0IGlzIGFuIGVsZW1lbnQgKGkuZS4g
bm90IGEgcHNldWRvLWVsZW1lbnQpLgorICAgIC8vIFdoZW4gdGhlIGVmZmVjdCB0YXJnZXQgaXMg
YSBwc2V1ZG8tZWxlbWVudCwgdGhpcyBzcGVjaWZpZXMgdGhlIHBzZXVkby1lbGVtZW50IHNlbGVj
dG9yIChlLmcuIDo6YmVmb3JlKS4KKyAgICBpZiAoaXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQu
Z2V0KCkpKQorICAgICAgICByZXR1cm4gUHNldWRvRWxlbWVudDo6cHNldWRvRWxlbWVudE5hbWVG
b3JFdmVudHMoZG93bmNhc3Q8UHNldWRvRWxlbWVudD4oKm1fdGFyZ2V0KS5wc2V1ZG9JZCgpKTsK
KyAgICByZXR1cm4geyB9OworfQorCitFeGNlcHRpb25Pcjx2b2lkPiBLZXlmcmFtZUVmZmVjdDo6
c2V0UHNldWRvRWxlbWVudChjb25zdCBTdHJpbmcmIHBzZXVkb0VsZW1lbnQpCit7CisgICAgLy8g
aHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL3dlYi1hbmltYXRpb25zLyNkb20ta2V5ZnJhbWVlZmZl
Y3QtcHNldWRvZWxlbWVudAorCisgICAgLy8gT24gc2V0dGluZywgc2V0cyB0aGUgdGFyZ2V0IHBz
ZXVkby1zZWxlY3RvciBvZiB0aGUgYW5pbWF0aW9uIGVmZmVjdCB0byB0aGUgcHJvdmlkZWQgdmFs
dWUgYWZ0ZXIgYXBwbHlpbmcgdGhlIGZvbGxvd2luZyBleGNlcHRpb25zOgorICAgIC8vCisgICAg
Ly8gSWYgdGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5vdCBudWxsIG9yIGEgc3ludGFjdGljYWxseSB2
YWxpZCB0aGUgdXNlciBhZ2VudCBtdXN0IHRocm93IGEgRE9NRXhjZXB0aW9uIHdpdGggZXJyb3Ig
bmFtZSBUeXBlRXJyb3IgYW5kIGxlYXZlIHRoZQorICAgIC8vIHRhcmdldCBwc2V1ZG8tc2VsZWN0
b3Igb2YgdGhpcyBhbmltYXRpb24gZWZmZWN0IHVuY2hhbmdlZC4KKyAgICAvLyBJZiBvbmUgb2Yg
dGhlIGxlZ2FjeSBTZWxlY3RvcnMgTGV2ZWwgMiBzaW5nbGUtY29sb24gc2VsZWN0b3JzICgnOmJl
Zm9yZScsICc6YWZ0ZXInLCAnOmZpcnN0LWxldHRlcicsIG9yICc6Zmlyc3QtbGluZScpIGlzIHNw
ZWNpZmllZCwgdGhlIHRhcmdldAorICAgIC8vIHBzZXVkby1zZWxlY3RvciBtdXN0IGJlIHNldCB0
byB0aGUgZXF1aXZhbGVudCB0d28tY29sb24gc2VsZWN0b3IgKGUuZy4gJzo6YmVmb3JlJykuCisK
KyAgICBpZiAoIXBzZXVkb0VsZW1lbnQpCisgICAgICAgIG1fcHNldWRvSWQgPSBXVEY6Om51bGxv
cHQ7CisgICAgZWxzZSBpZiAocHNldWRvRWxlbWVudCA9PSAiOjpiZWZvcmUiIHx8IHBzZXVkb0Vs
ZW1lbnQgPT0gIjpiZWZvcmUiKQorICAgICAgICBtX3BzZXVkb0lkID0gUHNldWRvSWQ6OkJlZm9y
ZTsKKyAgICBlbHNlIGlmIChwc2V1ZG9FbGVtZW50ID09ICI6OmFmdGVyIiB8fCBwc2V1ZG9FbGVt
ZW50ID09ICI6YWZ0ZXIiKQorICAgICAgICBtX3BzZXVkb0lkID0gUHNldWRvSWQ6OkFmdGVyOwor
ICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IFR5cGVFcnJvciB9OworCisgICAg
aWYgKCFtX3BzZXVkb0lkKSB7CisgICAgICAgIGlmIChpczxQc2V1ZG9FbGVtZW50PihtX3Rhcmdl
dC5nZXQoKSkpCisgICAgICAgICAgICBzZXRUYXJnZXQoZG93bmNhc3Q8UHNldWRvRWxlbWVudD4o
Km1fdGFyZ2V0KS5ob3N0RWxlbWVudCgpKTsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAoaXM8
UHNldWRvRWxlbWVudD4obV90YXJnZXQuZ2V0KCkpKQorICAgICAgICAgICAgc2V0VGFyZ2V0KGVu
c3VyZVBzZXVkb0VsZW1lbnQoZG93bmNhc3Q8UHNldWRvRWxlbWVudD4oKm1fdGFyZ2V0KS5ob3N0
RWxlbWVudCgpLCAqbV9wc2V1ZG9JZCkpOworICAgICAgICBlbHNlIGlmIChhdXRvKiB0YXJnZXQg
PSBtX3RhcmdldC5nZXQoKSkKKyAgICAgICAgICAgIHNldFRhcmdldChlbnN1cmVQc2V1ZG9FbGVt
ZW50KHRhcmdldCwgKm1fcHNldWRvSWQpKTsKKyAgICB9CisKKyAgICByZXR1cm4geyB9OworfQor
CiB2b2lkIEtleWZyYW1lRWZmZWN0OjphcHBseShSZW5kZXJTdHlsZSYgdGFyZ2V0U3R5bGUpCiB7
CiAgICAgaWYgKCFtX3RhcmdldCkKQEAgLTE2NjMsNCArMTc1Myw5IEBAIGJvb2wgS2V5ZnJhbWVF
ZmZlY3Q6OmNvbXB1dGVUcmFuc2Zvcm1lZEV4dGVudFZpYU1hdHJpeChjb25zdCBGbG9hdFJlY3Qm
IHJlbmRlcmVyCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgS2V5ZnJhbWVFZmZlY3Q6OnJl
cXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYmxlbmRpbmdLZXlm
cmFtZXNTb3VyY2UgPT0gQmxlbmRpbmdLZXlmcmFtZXNTb3VyY2U6OldlYkFuaW1hdGlvbiAmJiBp
czxQc2V1ZG9FbGVtZW50PihtX3RhcmdldC5nZXQoKSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVj
dC5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKaW5kZXggYmU4
YjZkOWY0YzlkODcyZThiMDk1MzIxMzM0NWVkZTM0OTdkZmZkNy4uODBmN2MzOTVhNWJlZTdlNDg5
NzM3ODBmN2ViMzI1NGU3MDYwNzMyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0
aW9uL0tleWZyYW1lRWZmZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZy
YW1lRWZmZWN0LmgKQEAgLTEwMSw5ICsxMDEsMTUgQEAgcHVibGljOgogCiAgICAgY29uc3QgVmVj
dG9yPFBhcnNlZEtleWZyYW1lPiYgcGFyc2VkS2V5ZnJhbWVzKCkgY29uc3QgeyByZXR1cm4gbV9w
YXJzZWRLZXlmcmFtZXM7IH0KIAorICAgIEVsZW1lbnQqIGJpbmRpbmdzVGFyZ2V0KCkgY29uc3Q7
CisgICAgdm9pZCBzZXRCaW5kaW5nc1RhcmdldChSZWZQdHI8RWxlbWVudD4mJik7CisKICAgICBF
bGVtZW50KiB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBtX3RhcmdldC5nZXQoKTsgfQogICAgIHZv
aWQgc2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50PiYmKTsKIAorICAgIGNvbnN0IFN0cmluZyBwc2V1
ZG9FbGVtZW50KCkgY29uc3Q7CisgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0UHNldWRvRWxlbWVu
dChjb25zdCBTdHJpbmcmKTsKKwogICAgIFZlY3RvcjxKU0M6OlN0cm9uZzxKU0M6OkpTT2JqZWN0
Pj4gZ2V0S2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxPYmplY3QmKTsKICAgICBFeGNlcHRpb25Pcjx2
b2lkPiBzZXRLZXlmcmFtZXMoSlNDOjpKU0dsb2JhbE9iamVjdCYsIEpTQzo6U3Ryb25nPEpTQzo6
SlNPYmplY3Q+JiYpOwogCkBAIC0xNTcsNiArMTYzLDggQEAgcHVibGljOgogCiAgICAgY29uc3Qg
UmVuZGVyU3R5bGUqIHVuYW5pbWF0ZWRTdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1fdW5hbmltYXRl
ZFN0eWxlLmdldCgpOyB9CiAKKyAgICBib29sIHJlcXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0
OworCiBwcml2YXRlOgogICAgIEtleWZyYW1lRWZmZWN0KEVsZW1lbnQqKTsKIApAQCAtMTkyLDYg
KzIwMCw3IEBAIHByaXZhdGU6CiAgICAgVmVjdG9yPFBhcnNlZEtleWZyYW1lPiBtX3BhcnNlZEtl
eWZyYW1lczsKICAgICBWZWN0b3I8QWNjZWxlcmF0ZWRBY3Rpb24+IG1fcGVuZGluZ0FjY2VsZXJh
dGVkQWN0aW9uczsKICAgICBXZWFrUHRyPEVsZW1lbnQ+IG1fdGFyZ2V0OworICAgIE9wdGlvbmFs
PFBzZXVkb0lkPiBtX3BzZXVkb0lkOwogCiAgICAgc3RkOjp1bmlxdWVfcHRyPGNvbnN0IFJlbmRl
clN0eWxlPiBtX3VuYW5pbWF0ZWRTdHlsZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9L
ZXlmcmFtZUVmZmVjdC5pZGwKaW5kZXggZDJkMDdhY2M0MzY0ZWFiOGJmMWUwYWI2ZTFkMDMyYjhh
ZTY5ZjcwMC4uODBmZGM3NWI5ZDUyNDc3MmFmNjAxODc0MjM5ZmE2Y2VhZDU1N2FjMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaWRsCkBAIC0yMyw2ICsyMyw4
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKK3R5cGVkZWYgVVNWU3RyaW5nIENTU09NU3RyaW5n
OworCiBbCiAgICAgRW5hYmxlZEF0UnVudGltZT1XZWJBbmltYXRpb25zLAogICAgIEV4cG9zZWQ9
V2luZG93LApAQCAtMzIsNyArMzQsOCBAQAogICAgIENvbnN0cnVjdG9yKEVsZW1lbnQ/IHRhcmdl
dCwgb2JqZWN0PyBrZXlmcmFtZXMsIG9wdGlvbmFsICh1bnJlc3RyaWN0ZWQgZG91YmxlIG9yIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucykgb3B0aW9ucyksCiAgICAgQ29uc3RydWN0b3IoS2V5ZnJhbWVF
ZmZlY3Qgc291cmNlKQogXSBpbnRlcmZhY2UgS2V5ZnJhbWVFZmZlY3QgOiBBbmltYXRpb25FZmZl
Y3QgewotICAgIGF0dHJpYnV0ZSBFbGVtZW50PyB0YXJnZXQ7CisgICAgW0ltcGxlbWVudGVkQXM9
YmluZGluZ3NUYXJnZXRdIGF0dHJpYnV0ZSBFbGVtZW50PyB0YXJnZXQ7CisgICAgW01heVRocm93
RXhjZXB0aW9uXSBhdHRyaWJ1dGUgQ1NTT01TdHJpbmc/IHBzZXVkb0VsZW1lbnQ7CiAgICAgW0Vu
YWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9uc0NvbXBvc2l0ZU9wZXJhdGlvbnNdIGF0dHJpYnV0
ZSBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24gaXRlcmF0aW9uQ29tcG9zaXRlOwogICAgIFtF
bmFibGVkQXRSdW50aW1lPVdlYkFuaW1hdGlvbnNDb21wb3NpdGVPcGVyYXRpb25zXSBhdHRyaWJ1
dGUgQ29tcG9zaXRlT3BlcmF0aW9uIGNvbXBvc2l0ZTsKICAgICBbQ2FsbFdpdGg9R2xvYmFsT2Jq
ZWN0XSBzZXF1ZW5jZTxvYmplY3Q+IGdldEtleWZyYW1lcygpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oIGIvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oCmluZGV4IGFiYTdkMmYzN2MwMzg1
ZGZmMDIxZDc1ZDBiOGNlYjdmYmIxZjgxNTEuLjNlZGNiODQ1MDMxM2E4ZjAyM2FlNjRkODFjYjgw
MGY2NmFmNDViNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFt
ZUVmZmVjdE9wdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVF
ZmZlY3RPcHRpb25zLmgKQEAgLTM1LDYgKzM1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogc3Ry
dWN0IEtleWZyYW1lRWZmZWN0T3B0aW9ucyA6IEVmZmVjdFRpbWluZyB7CiAgICAgSXRlcmF0aW9u
Q29tcG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlvbkNvbXBvc2l0ZSB7IEl0ZXJhdGlvbkNvbXBvc2l0
ZU9wZXJhdGlvbjo6UmVwbGFjZSB9OwogICAgIENvbXBvc2l0ZU9wZXJhdGlvbiBjb21wb3NpdGUg
eyBDb21wb3NpdGVPcGVyYXRpb246OlJlcGxhY2UgfTsKKyAgICBTdHJpbmcgcHNldWRvRWxlbWVu
dDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGwKaW5kZXggMWZkODlkMjgxNWVlYjk2
MDYwMTRmNWY2MTEzMTVkYmYwMWM2OWY4MC4uNjFlYmZmMTZjODU2YWI2ODQzOTRlYjM5NzlmMGEx
ZTBlODA5YmIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0T3B0aW9ucy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0T3B0aW9ucy5pZGwKQEAgLTIzLDcgKzIzLDEwIEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKK3R5cGVkZWYgVVNWU3RyaW5nIENTU09NU3RyaW5nOworCiBkaWN0aW9uYXJ5IEtleWZyYW1l
RWZmZWN0T3B0aW9ucyA6IEVmZmVjdFRpbWluZyB7CiAgICAgSXRlcmF0aW9uQ29tcG9zaXRlT3Bl
cmF0aW9uIGl0ZXJhdGlvbkNvbXBvc2l0ZSA9ICJyZXBsYWNlIjsKICAgICBDb21wb3NpdGVPcGVy
YXRpb24gY29tcG9zaXRlID0gInJlcGxhY2UiOworICAgIENTU09NU3RyaW5nPyBwc2V1ZG9FbGVt
ZW50ID0gbnVsbDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3RTdGFjay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVF
ZmZlY3RTdGFjay5jcHAKaW5kZXggZDBiZDdjZjVjZGU5MjIzMmVkOWU0NjY1ZWM5M2RjY2Y4NTll
NDM4Ni4uMjA1NmRiMjFiYWUzNGY4ZjUyY2ZjZGJlNzYwZGQ2NTdhMjE2MGNlZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcApAQCAtNTks
NiArNTksMTUgQEAgdm9pZCBLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZW1vdmVFZmZlY3QoS2V5ZnJh
bWVFZmZlY3QmIGVmZmVjdCkKICAgICBtX2VmZmVjdHMucmVtb3ZlRmlyc3QoJmVmZmVjdCk7CiB9
CiAKK2Jvb2wgS2V5ZnJhbWVFZmZlY3RTdGFjazo6cmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkgY29u
c3QKK3sKKyAgICBmb3IgKGF1dG8mIGVmZmVjdCA6IG1fZWZmZWN0cykgeworICAgICAgICBpZiAo
ZWZmZWN0LT5yZXF1aXJlc1BzZXVkb0VsZW1lbnQoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIGJvb2wgS2V5ZnJhbWVFZmZlY3RTdGFj
azo6aXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5KSBj
b25zdAogewogICAgIGZvciAoYXV0byYgZWZmZWN0IDogbV9lZmZlY3RzKSB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oIGIvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaAppbmRleCA5NzhkODRkY2Q1
NjgwZDI4YzBhM2Q2OTllMjMzZmRjN2QzYWVhNjkwLi4xZGI4NDA0MjY4ZWM3OTNhY2I0ZjUxMjcw
YWJjY2QxMDRhNTQ2Y2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3RTdGFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFt
ZUVmZmVjdFN0YWNrLmgKQEAgLTQ3LDYgKzQ3LDcgQEAgcHVibGljOgogICAgIGNvbnN0IEFuaW1h
dGlvbkxpc3QqIGNzc0FuaW1hdGlvbkxpc3QoKSBjb25zdCB7IHJldHVybiBtX2Nzc0FuaW1hdGlv
bkxpc3QuZ2V0KCk7IH0KICAgICB2b2lkIHNldENTU0FuaW1hdGlvbkxpc3QoUmVmUHRyPGNvbnN0
IEFuaW1hdGlvbkxpc3Q+JiYpOwogICAgIGJvb2wgaXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0
eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAgICBib29sIHJlcXVpcmVzUHNldWRvRWxlbWVudCgp
IGNvbnN0OwogCiBwcml2YXRlOgogICAgIHZvaWQgZW5zdXJlRWZmZWN0c0FyZVNvcnRlZCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3BwCmluZGV4IDMyYWU4MzI4OWY4ZjhmN2NjZjMw
Nzk1NWMyOWU4YjE1ZTQxYmQxNjkuLmU4NGMyMjliMzk3YmQ1YmU5MGRmYWE4YmI4ZmNlZTkxYjNk
ZDgxOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5jcHAKQEAgLTMyLDYgKzMyLDcg
QEAKICNpbmNsdWRlICJDb250ZW50RGF0YS5oIgogI2luY2x1ZGUgIkRvY3VtZW50VGltZWxpbmUu
aCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKKyNpbmNsdWRlICJLZXlm
cmFtZUVmZmVjdFN0YWNrLmgiCiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVudC5oIgogI2luY2x1ZGUg
IlJlbmRlckltYWdlLmgiCiAjaW5jbHVkZSAiUmVuZGVyUXVvdGUuaCIKQEAgLTEwMCw3ICsxMDEs
MTQgQEAgdm9pZCBQc2V1ZG9FbGVtZW50OjpjbGVhckhvc3RFbGVtZW50KCkKIAogYm9vbCBQc2V1
ZG9FbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsK
LSAgICByZXR1cm4gcHNldWRvRWxlbWVudFJlbmRlcmVySXNOZWVkZWQoJnN0eWxlKTsKKyAgICBy
ZXR1cm4gcHNldWRvRWxlbWVudFJlbmRlcmVySXNOZWVkZWQoJnN0eWxlKSB8fCBpc1RhcmdldGVk
QnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKTsKK30KKworYm9vbCBQc2V1
ZG9FbGVtZW50Ojppc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1l
bnQoKQoreworICAgIGlmIChhdXRvKiBzdGFjayA9IGtleWZyYW1lRWZmZWN0U3RhY2soKSkKKyAg
ICAgICAgcmV0dXJuIHN0YWNrLT5yZXF1aXJlc1BzZXVkb0VsZW1lbnQoKTsKKyAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vUHNldWRvRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaApp
bmRleCAyZmFkMzFkNjBlMWRmOGIxODRhMWRiZjc5NGM5YTI5MWZiYzgzMzVkLi5lYzc1ZTYxMjBm
OWM5OGY4YzkzZGJiNTdlYWZhNjljZjQyYjdjZDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vUHNldWRvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVt
ZW50LmgKQEAgLTQxLDYgKzQxLDcgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXJIb3N0RWxlbWVu
dCgpOwogCiAgICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3Zl
cnJpZGU7CisgICAgYm9vbCBpc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVk
b0VsZW1lbnQoKTsKIAogICAgIGJvb2wgY2FuU3RhcnRTZWxlY3Rpb24oKSBjb25zdCBvdmVycmlk
ZSB7IHJldHVybiBmYWxzZTsgfQogICAgIGJvb2wgY2FuQ29udGFpblJhbmdlRW5kUG9pbnQoKSBj
b25zdCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJH
ZW5lcmF0ZWRDb250ZW50LmNwcAppbmRleCA0MDI0MGJkN2FlMjhlNzA0NDc4MzA0MmJiZmEwZDE0
MTdjMjEwYmQ2Li43MGRjOTFmOWFjNTg4NjIxZTI5OGI5NDdlNDUyYjhiNzI2MjE3NDJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0
ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcApAQCAtNzEsMTIgKzcx
LDE2IEBAIHZvaWQgUmVuZGVyVHJlZVVwZGF0ZXI6OkdlbmVyYXRlZENvbnRlbnQ6OnVwZGF0ZVF1
b3Rlc1VwVG8oUmVuZGVyUXVvdGUqIGxhc3RRdW90CiAKIHN0YXRpYyB2b2lkIGNyZWF0ZUNvbnRl
bnRSZW5kZXJlcnMoUmVuZGVyVHJlZUJ1aWxkZXImIGJ1aWxkZXIsIFJlbmRlckVsZW1lbnQmIHBz
ZXVkb1JlbmRlcmVyLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCiB7Ci0gICAgQVNTRVJUKHN0
eWxlLmNvbnRlbnREYXRhKCkpOwotCi0gICAgZm9yIChjb25zdCBDb250ZW50RGF0YSogY29udGVu
dCA9IHN0eWxlLmNvbnRlbnREYXRhKCk7IGNvbnRlbnQ7IGNvbnRlbnQgPSBjb250ZW50LT5uZXh0
KCkpIHsKLSAgICAgICAgYXV0byBjaGlsZCA9IGNvbnRlbnQtPmNyZWF0ZUNvbnRlbnRSZW5kZXJl
cihwc2V1ZG9SZW5kZXJlci5kb2N1bWVudCgpLCBzdHlsZSk7Ci0gICAgICAgIGlmIChwc2V1ZG9S
ZW5kZXJlci5pc0NoaWxkQWxsb3dlZCgqY2hpbGQsIHN0eWxlKSkKLSAgICAgICAgICAgIGJ1aWxk
ZXIuYXR0YWNoKHBzZXVkb1JlbmRlcmVyLCBXVEZNb3ZlKGNoaWxkKSk7CisgICAgaWYgKGF1dG8q
IGNvbnRlbnREYXRhID0gc3R5bGUuY29udGVudERhdGEoKSkgeworICAgICAgICBmb3IgKGNvbnN0
IENvbnRlbnREYXRhKiBjb250ZW50ID0gY29udGVudERhdGE7IGNvbnRlbnQ7IGNvbnRlbnQgPSBj
b250ZW50LT5uZXh0KCkpIHsKKyAgICAgICAgICAgIGF1dG8gY2hpbGQgPSBjb250ZW50LT5jcmVh
dGVDb250ZW50UmVuZGVyZXIocHNldWRvUmVuZGVyZXIuZG9jdW1lbnQoKSwgc3R5bGUpOworICAg
ICAgICAgICAgaWYgKHBzZXVkb1JlbmRlcmVyLmlzQ2hpbGRBbGxvd2VkKCpjaGlsZCwgc3R5bGUp
KQorICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXR0YWNoKHBzZXVkb1JlbmRlcmVyLCBXVEZNb3Zl
KGNoaWxkKSk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICAvLyBUaGUgb25seSB2
YWxpZCBzY2VuYXJpbyB3aGVyZSB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgd2l0aG91dCB0aGUgImNv
bnRlbnQiIHByb3BlcnR5IGJlaW5nIHNldAorICAgICAgICAvLyBpcyB0aGUgY2FzZSB3aGVyZSBh
IHBzZXVkby1lbGVtZW50IGhhcyBhbmltYXRpb25zIHNldCBvbiBpdCB2aWEgdGhlIFdlYiBBbmlt
YXRpb25zIEFQSS4KKyAgICAgICAgQVNTRVJUKGlzPFBzZXVkb0VsZW1lbnQ+KHBzZXVkb1JlbmRl
cmVyLmVsZW1lbnQoKSkgJiYgZG93bmNhc3Q8UHNldWRvRWxlbWVudD4oKnBzZXVkb1JlbmRlcmVy
LmVsZW1lbnQoKSkuaXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVt
ZW50KCkpOwogICAgIH0KIH0KIApAQCAtOTcsNyArMTAxLDcgQEAgdm9pZCBSZW5kZXJUcmVlVXBk
YXRlcjo6R2VuZXJhdGVkQ29udGVudDo6dXBkYXRlUHNldWRvRWxlbWVudChFbGVtZW50JiBjdXJy
ZW50LAogICAgIGlmIChhdXRvKiByZW5kZXJlciA9IHBzZXVkb0VsZW1lbnQgPyBwc2V1ZG9FbGVt
ZW50LT5yZW5kZXJlcigpIDogbnVsbHB0cikKICAgICAgICAgbV91cGRhdGVyLnJlbmRlclRyZWVQ
b3NpdGlvbigpLmludmFsaWRhdGVOZXh0U2libGluZygqcmVuZGVyZXIpOwogCi0gICAgaWYgKCFu
ZWVkc1BzZXVkb0VsZW1lbnQodXBkYXRlKSkgeworICAgIGlmICghbmVlZHNQc2V1ZG9FbGVtZW50
KHVwZGF0ZSkgJiYgKCFwc2V1ZG9FbGVtZW50IHx8ICFwc2V1ZG9FbGVtZW50LT5pc1RhcmdldGVk
QnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSkpIHsKICAgICAgICAgaWYg
KHBzZXVkb0VsZW1lbnQpIHsKICAgICAgICAgICAgIGlmIChwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6
QmVmb3JlKQogICAgICAgICAgICAgICAgIHJlbW92ZUJlZm9yZVBzZXVkb0VsZW1lbnQoY3VycmVu
dCwgbV91cGRhdGVyLm1fYnVpbGRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVS
ZXNvbHZlci5jcHAKaW5kZXggOWYzNTAwZGQ1ZWE3MjI1ODQ2NjlhM2U5ZTRmODllZjcxMTU3ZGI4
OC4uY2IwMWE3NWZhZjYzYmM5YjFhMjczMjczYTAyZjVmMDU3YjZkZDE1ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcApAQCAtMjYxLDE0ICsyNjEsMTkgQEAg
RWxlbWVudFVwZGF0ZSBUcmVlUmVzb2x2ZXI6OnJlc29sdmVQc2V1ZG9TdHlsZShFbGVtZW50JiBl
bGVtZW50LCBjb25zdCBFbGVtZW50VXAKIHsKICAgICBpZiAoZWxlbWVudFVwZGF0ZS5zdHlsZS0+
ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpOb25lKQogICAgICAgICByZXR1cm4geyB9OworCiAg
ICAgaWYgKCFlbGVtZW50VXBkYXRlLnN0eWxlLT5oYXNQc2V1ZG9TdHlsZShwc2V1ZG9JZCkpCiAg
ICAgICAgIHJldHVybiB7IH07CiAKICAgICBhdXRvIHBzZXVkb1N0eWxlID0gc2NvcGUoKS5yZXNv
bHZlci5wc2V1ZG9TdHlsZUZvckVsZW1lbnQoZWxlbWVudCwgeyBwc2V1ZG9JZCB9LCAqZWxlbWVu
dFVwZGF0ZS5zdHlsZSwgcGFyZW50Qm94U3R5bGVGb3JQc2V1ZG8oZWxlbWVudFVwZGF0ZSksICZz
Y29wZSgpLnNlbGVjdG9yRmlsdGVyKTsKLSAgICBpZiAoIXBzZXVkb0VsZW1lbnRSZW5kZXJlcklz
TmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSkKKyAgICBpZiAoIXBzZXVkb1N0eWxlKQorICAgICAg
ICByZXR1cm4geyB9OworCisgICAgYXV0byogcHNldWRvRWxlbWVudCA9IHBzZXVkb0lkID09IFBz
ZXVkb0lkOjpCZWZvcmUgPyBlbGVtZW50LmJlZm9yZVBzZXVkb0VsZW1lbnQoKSA6IGVsZW1lbnQu
YWZ0ZXJQc2V1ZG9FbGVtZW50KCk7CisgICAgYm9vbCBoYXNBbmltYXRpb25zID0gcHNldWRvRWxl
bWVudCAmJiBwc2V1ZG9FbGVtZW50LT5pc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmlu
Z1BzZXVkb0VsZW1lbnQoKTsKKyAgICBpZiAoIXBzZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVk
KHBzZXVkb1N0eWxlLmdldCgpKSAmJiAhaGFzQW5pbWF0aW9ucykKICAgICAgICAgcmV0dXJuIHsg
fTsKIAotICAgIFBzZXVkb0VsZW1lbnQqIHBzZXVkb0VsZW1lbnQgPSBwc2V1ZG9JZCA9PSBQc2V1
ZG9JZDo6QmVmb3JlID8gZWxlbWVudC5iZWZvcmVQc2V1ZG9FbGVtZW50KCkgOiBlbGVtZW50LmFm
dGVyUHNldWRvRWxlbWVudCgpOwogICAgIGlmICghcHNldWRvRWxlbWVudCkgewogICAgICAgICBh
dXRvIG5ld1BzZXVkb0VsZW1lbnQgPSBQc2V1ZG9FbGVtZW50OjpjcmVhdGUoZWxlbWVudCwgcHNl
dWRvSWQpOwogICAgICAgICBwc2V1ZG9FbGVtZW50ID0gbmV3UHNldWRvRWxlbWVudC5wdHIoKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGQxZDJiZTMwZjk2N2JmMjIzOGM5Mjcw
ZGUwMTUyODljNjk4ZjIxMzIuLjc3ZDkyNWYwYjRlYzJiNTUzZGNiN2E0MjllM2M4MDY5YWEyZjQw
NDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIw
LTA0LTA5ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dl
YiBBbmltYXRpb25zXSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFt
ZUVmZmVjdGAgYW5kIGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzU5MTk5MDAzPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE1hcmsgMjMgYWRkaXRpb25hbCBXUFQgdGVzdHMgYXMgUEFTUy4KKworICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0
aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxlbWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlv
bnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pZGxoYXJuZXNzLndpbmRvdy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25z
L2ludGVyZmFjZXMvQW5pbWF0YWJsZS9hbmltYXRlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRpb24vY29t
bWl0U3R5bGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRz
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlv
bnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0OgorCiAyMDIw
LTA0LTA5ICBDYXRoaWUgQ2hlbiAgPGNhdGhpZWNoZW5AaWdhbGlhLmNvbT4KIAogICAgICAgICBJ
bXBvcnQgdGVzdCBmb3IgcHJvZ3JhbW1hdGljIHNjcm9sbGluZyBzY3JvbGxlbmQgZXZlbnQKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4
dAppbmRleCAzYzYyMzgyMDI3ZmJkYTY0NzE4MTI0NTNhYWQ3MGIyYjM0NTlhNGU0Li5kMGJhYmY1
NjgzZWFlZWFjM2JlODA5NmEyYzUwZjJiYTYxNmMyOTY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9Eb2N1
bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9j
dW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xMyw1ICsxMyw1
IEBAIFBBU1MgRmluaXNoZWQgYnV0IG5vdCBmaWxsaW5nIENTUyBBbmltYXRpb25zIGFyZSBub3Qg
cmV0dXJuZWQKIFBBU1MgWWV0LXRvLXN0YXJ0IENTUyBBbmltYXRpb25zIGFyZSByZXR1cm5lZCAK
IFBBU1MgQ1NTIEFuaW1hdGlvbnMgY2FuY2VsZWQgdmlhIHRoZSBBUEkgYXJlIG5vdCByZXR1cm5l
ZCAKIFBBU1MgQ1NTIEFuaW1hdGlvbnMgY2FuY2VsZWQgYW5kIHJlc3RhcnRlZCB2aWEgdGhlIEFQ
SSBhcmUgcmV0dXJuZWQgCi1GQUlMIENTUyBBbmltYXRpb25zIHRhcmdldHRpbmcgKHBzZXVkby0p
ZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIGFzc2VydF9l
cXVhbHM6IEFuaW1hdGlvbiAjMSBoYXMgbnVsbCBwc2V1ZG8gdHlwZSBleHBlY3RlZCAob2JqZWN0
KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitQQVNTIENTUyBBbmltYXRpb25z
IHRhcmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBh
ZnRlciBzb3J0aW5nIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlvbnMu
dGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50
YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IGEwYzlkMDljMDljNGIzNjdjNzMwY2YzM2Q1OTM2OTcz
OWE5M2Y4OGQuLjhlZDkyMzBkODdkODhhODc5ZTFkNjA2NTZmY2QxYzlhYmNiMmE5ZDIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0
CkBAIC0xNyw4ICsxNyw4IEBAIFBBU1MgZ2V0QW5pbWF0aW9ucyByZXR1cm5zIG9iamVjdHMgd2l0
aCB0aGUgc2FtZSBpZGVudGl0eQogUEFTUyBnZXRBbmltYXRpb25zIGZvciBDU1MgQW5pbWF0aW9u
cyB0aGF0IGFyZSBjYW5jZWxlZCAKIFBBU1MgZ2V0QW5pbWF0aW9ucyBmb3IgQ1NTIEFuaW1hdGlv
bnMgZm9sbG93cyBhbmltYXRpb24tbmFtZSBvcmRlciAKIFBBU1MgeyBzdWJ0cmVlOiBmYWxzZSB9
IG9uIGEgbGVhZiBlbGVtZW50IHJldHVybnMgdGhlIGVsZW1lbnQncyBhbmltYXRpb25zIGFuZCBp
Z25vcmUgcHNldWRvLWVsZW1lbnRzIAotRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhIGxlYWYg
ZWxlbWVudCByZXR1cm5zIHRoZSBlbGVtZW50J3MgYW5pbWF0aW9ucyBhbmQgaXRzIHBzZXVkby1l
bGVtZW50cycgYW5pbWF0aW9ucyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0aW9uIHRhcmdldGlu
ZyB0aGUgcGFyZW50IGVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVkIGZpcnN0IGV4cGVjdGVkIChv
YmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK1BBU1MgeyBzdWJ0cmVl
OiB0cnVlIH0gb24gYSBsZWFmIGVsZW1lbnQgcmV0dXJucyB0aGUgZWxlbWVudCdzIGFuaW1hdGlv
bnMgYW5kIGl0cyBwc2V1ZG8tZWxlbWVudHMnIGFuaW1hdGlvbnMgCiBQQVNTIHsgc3VidHJlZTog
ZmFsc2UgfSBvbiBhbiBlbGVtZW50IHdpdGggYSBjaGlsZCByZXR1cm5zIG9ubHkgdGhlIGVsZW1l
bnQncyBhbmltYXRpb25zIAotRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhbiBlbGVtZW50IHdp
dGggYSBjaGlsZCByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSB0aGUgZWxlbWVudCwgaXRzIHBzZXVk
by1lbGVtZW50cywgaXRzIGNoaWxkIGFuZCBpdHMgY2hpbGQgcHNldWRvLWVsZW1lbnRzIGFzc2Vy
dF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSBwYXJlbnQgZWxlbWVudCBzaG91
bGQgYmUgcmV0dXJuZWQgZmlyc3QgZXhwZWN0ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290ICh1bmRl
ZmluZWQpIHVuZGVmaW5lZAorRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhbiBlbGVtZW50IHdp
dGggYSBjaGlsZCByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSB0aGUgZWxlbWVudCwgaXRzIHBzZXVk
by1lbGVtZW50cywgaXRzIGNoaWxkIGFuZCBpdHMgY2hpbGQgcHNldWRvLWVsZW1lbnRzIGFzc2Vy
dF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSA6OmFmdGVyIHBlc3Vkby1lbGVt
ZW50IHNob3VsZCBiZSByZXR1cm5lZCB0aGlyZCBleHBlY3RlZCAoc3RyaW5nKSAiOjphZnRlciIg
YnV0IGdvdCAob2JqZWN0KSBudWxsCiBGQUlMIHsgc3VidHJlZTogdHJ1ZSB9IG9uIGFuIGVsZW1l
bnQgd2l0aCBtYW55IGRlc2NlbmRhbnRzIHJldHVybnMgYW5pbWF0aW9ucyBmcm9tIGFsbCB0aGUg
ZGVzY2VuZGFudHMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlvbiB0YXJnZXRpbmcgdGhlIGNo
aWxkMSBlbGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCBzZWNvbmQgZXhwZWN0ZWQgRWxlbWVudCBu
b2RlIDxkaXYgaWQ9ImNoaWxkMSIgc3R5bGU9ImFuaW1hdGlvbjogYW5pbTEgMTAwczsiPjxkaXYg
aWQ9Ii4uLiBidXQgZ290IEVsZW1lbnQgbm9kZSA8ZGl2IGlkPSJncmFuZGNoaWxkMSIgc3R5bGU9
ImFuaW1hdGlvbjogYW5pbTEgMTAwczsiPjwvZGl2PgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvRG9j
dW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3Vt
ZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCAxOGMxZTMxNjVh
MDJmZjE1MjBmNTFmZGVkMmJlN2QyZDM1NjNmNzM2Li5mZDJiZjU1MDI0MTIwNGNhY2Q0YmE1MDMx
MGViOTBiOGE1MWJjZTE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9u
cy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRp
b25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIFBBU1MgZ2V0QW5p
bWF0aW9ucyBmb3Igbm9uLWFuaW1hdGVkIGNvbnRlbnQgCiBQQVNTIGdldEFuaW1hdGlvbnMgZm9y
IENTUyBUcmFuc2l0aW9ucyAKLUZBSUwgQ1NTIFRyYW5zaXRpb25zIHRhcmdldHRpbmcgKHBzZXVk
by0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIGFzc2Vy
dF9lcXVhbHM6IFRyYW5zaXRpb24gIzEgaGFzIG51bGwgcHNldWRvIHR5cGUgZXhwZWN0ZWQgKG9i
amVjdCkgbnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorUEFTUyBDU1MgVHJhbnNp
dGlvbnMgdGFyZ2V0dGluZyAocHNldWRvLSllbGVtZW50cyBzaG91bGQgaGF2ZSBjb3JyZWN0IG9y
ZGVyIGFmdGVyIHNvcnRpbmcgCiBQQVNTIFRyYW5zaXRpb25zIGFyZSBub3QgcmV0dXJuZWQgYWZ0
ZXIgdGhleSBoYXZlIGZpbmlzaGVkIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2luZG93
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4IGNl
ZjIyNTUwYzE1ZmMwNTQwMTQ5YmQ4ZTMyOGYwOGU2MTJiNmE3NTkuLjhhNjZjZGZkODBmYjY2MTZl
NDU0NWIyMzhmNDk5ZmQzYjEyMGI0YWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ct
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBAIC0x
MDgsMTQgKzEwOCwxNCBAQCBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogZXhpc3RlbmNl
IGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgbwogUEFTUyBLZXlmcmFtZUVm
ZmVjdCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJv
dG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgCiBQQVNTIEtleWZyYW1lRWZm
ZWN0IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90
b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSAKIFBBU1MgS2V5ZnJhbWVFZmZl
Y3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgdGFyZ2V0IAotRkFJTCBLZXlmcmFtZUVmZmVjdCBpbnRl
cmZhY2U6IGF0dHJpYnV0ZSBwc2V1ZG9FbGVtZW50IGFzc2VydF90cnVlOiBUaGUgcHJvdG90eXBl
IG9iamVjdCBtdXN0IGhhdmUgYSBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKK1BBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgcHNl
dWRvRWxlbWVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgY29t
cG9zaXRlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRLZXlm
cmFtZXMoKSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBvcGVyYXRpb24gc2V0S2V5
ZnJhbWVzKG9iamVjdCkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IG11c3QgYmUgcHJpbWFyeSBpbnRl
cmZhY2Ugb2YgbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIAogUEFTUyBTdHJpbmdpZmlj
YXRpb24gb2YgbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIAogUEFTUyBLZXlmcmFtZUVm
ZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgInRhcmdldCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1GQUlMIEtleWZyYW1l
RWZmZWN0IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3QgaW5o
ZXJpdCBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNzZXJ0
X2luaGVyaXRzOiBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgbm90IGZvdW5kIGluIHByb3RvdHlw
ZSBjaGFpbgorUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVj
dChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIHdpdGgg
dGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlm
cmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbXBvc2l0ZSIg
d2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogbmV3
IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0S2V5
ZnJhbWVzKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRl
cmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgInNldEtleWZyYW1lcyhvYmplY3QpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1h
dGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRl
cmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50eHQKaW5kZXggNzUxNDQyNmNhMGYx
ZWIxNGMyNTQzNjkyNjJhYzhkOTVjZDk0MTQ1OC4uNWUzMWY4NWE5OTJkOGEyYzJiMmZjYTVkZmJl
ODljMGNmMjQwOWQ4OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0
ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBl
Y3RlZC50eHQKQEAgLTEzNSwxMCArMTM1LDEwIEBAIFBBU1MgRWxlbWVudC5hbmltYXRlKCkgY2Fs
bHMgcGxheSBvbiB0aGUgQW5pbWF0aW9uCiBQQVNTIEVsZW1lbnQuYW5pbWF0ZSgpIGRvZXMgTk9U
IHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVk
b0VsZW1lbnQgcGFyYW1ldGVyIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCAKIFBBU1MgYW5p
bWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIgd2l0aG91dCBjb250ZW50IGNyZWF0
ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCAKLVBBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVu
dCBwYXJhbWV0ZXIgIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCBmb3IgOjptYXJrZXIgCi1Q
QVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyICBjcmVhdGVzIGFuIEFu
aW1hdGlvbiBvYmplY3QgZm9yIDo6Zmlyc3QtbGluZSAKLUZBSUwgYW5pbWF0ZSgpIHdpdGggcHNl
dWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1
ZG8tZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMg
dGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgKHN0cmluZykgIjo6YmVmb3JlIiBidXQgZ290
ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50
IHdpdGhvdXQgY29udGVudCBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRo
ZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGFzc2VydF9lcXVhbHM6IFRoZSByZXR1cm5lZCBBbmlt
YXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3RyaW5nKSAiOjpi
ZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1hdGUoKSB3aXRo
IHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3Qg
cHNldWRvLWVsZW1lbnQgZm9yIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IFRoZSByZXR1cm5lZCBB
bmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3RyaW5nKSAi
OjptYXJrZXIiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1hdGUoKSB3
aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNvcnJl
Y3QgcHNldWRvLWVsZW1lbnQgZm9yIDo6Zmlyc3QtbGluZSBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0
dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgKHN0
cmluZykgIjo6Zmlyc3QtbGluZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK0ZBSUwg
YW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIgIGNyZWF0ZXMgYW4gQW5pbWF0
aW9uIG9iamVjdCBmb3IgOjptYXJrZXIgVHlwZSBlcnJvcgorRkFJTCBhbmltYXRlKCkgd2l0aCBw
c2V1ZG9FbGVtZW50IHBhcmFtZXRlciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IGZvciA6
OmZpcnN0LWxpbmUgVHlwZSBlcnJvcgorUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50
IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50
IAorUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHdpdGhvdXQgY29udGVudCBjcmVh
dGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVt
ZW50IAorRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmpl
Y3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGZvciA6Om1hcmtlciBUeXBl
IGVycm9yCitGQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9i
amVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgZm9yIDo6Zmlyc3QtbGlu
ZSBUeXBlIGVycm9yCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRpb24vY29tbWl0
U3R5bGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRpb24vY29tbWl0U3R5bGVz
LWV4cGVjdGVkLnR4dAppbmRleCAzNjUwMjI3Y2YwZjEyZGYyNWQ3OWVjMGMzYTBiNzFkNTIxNmUw
ODc1Li5kNTU2NzYwODA3MDNiNjRjMmRiOTA5YjA4OWMzM2ExMzQzZWViM2JlIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRp
b25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9u
cy9pbnRlcmZhY2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0CkBAIC0xMSwx
NiArMTEsMTIgQEAgRkFJTCBDb21taXRzIHRoZSBpbnRlcm1lZGlhdGUgdmFsdWUgb2YgYW4gYW5p
bWF0aW9uIGluIHRoZSBtaWRkbGUgb2Ygc3RhY2sgYXNzZXIKIEZBSUwgQ29tbWl0IGNvbXBvc2l0
ZXMgb24gdG9wIG9mIHRoZSB1bmRlcmx5aW5nIHZhbHVlIGFzc2VydF9hcHByb3hfZXF1YWxzOiBl
eHBlY3RlZCAwLjUgKy8tIDAuMDAwMSBidXQgZ290IDAuMjAwMDAwMDAyOTgwMjMyMjQKIFBBU1Mg
VHJpZ2dlcnMgbXV0YXRpb24gb2JzZXJ2ZXJzIHdoZW4gdXBkYXRpbmcgc3R5bGUgCiBGQUlMIERv
ZXMgTk9UIHRyaWdnZXIgbXV0YXRpb24gb2JzZXJ2ZXJzIHdoZW4gdGhlIGNoYW5nZSB0byBzdHls
ZSBpcyByZWR1bmRhbnQgYXNzZXJ0X2VxdWFsczogU2hvdWxkIGhhdmUgbm8gbXV0YXRpb24gcmVj
b3JkcyBleHBlY3RlZCAwIGJ1dCBnb3QgMQotRkFJTCBUaHJvd3MgaWYgdGhlIHRhcmdldCBlbGVt
ZW50IGlzIGEgcHNldWRvIGVsZW1lbnQgYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9uICIoKSA9
PiB7Ci0gICAgYW5pbWF0aW9uLmNvbW1pdFN0eWxlcygpOwotICB9IiBkaWQgbm90IHRocm93CitQ
QVNTIFRocm93cyBpZiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgYSBwc2V1ZG8gZWxlbWVudCAKIFBB
U1MgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBub3Qgc29tZXRoaW5nIHdpdGggYSBz
dHlsZSBhdHRyaWJ1dGUgCiBQQVNTIFRocm93cyBpZiB0aGUgdGFyZ2V0IGVmZmVjdCBpcyBkaXNw
bGF5Om5vbmUgCiBQQVNTIFRocm93cyBpZiB0aGUgdGFyZ2V0IGVmZmVjdCdzIGFuY2VzdG9yIGlz
IGRpc3BsYXk6bm9uZSAKIFBBU1MgVHJlYXRzIGRpc3BsYXk6Y29udGVudHMgYXMgcmVuZGVyZWQg
CiBQQVNTIFRyZWF0cyBkaXNwbGF5OmNvbnRlbnRzIGluIGEgZGlzcGxheTpub25lIHN1YnRyZWUg
YXMgbm90IHJlbmRlcmVkIAogUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlZmZlY3QgaXMgZGlz
Y29ubmVjdGVkIAotRkFJTCBDaGVja3MgdGhlIHBzZXVkbyBlbGVtZW50IGNvbmRpdGlvbiBiZWZv
cmUgdGhlIG5vdCByZW5kZXJlZCBjb25kaXRpb24gYXNzZXJ0X3Rocm93c19kb206IGZ1bmN0aW9u
ICIoKSA9PiB7Ci0gICAgYW5pbWF0aW9uLmNvbW1pdFN0eWxlcygpOwotICB9IiB0aHJldyBvYmpl
Y3QgIkludmFsaWRTdGF0ZUVycm9yOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUu
IiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvcjog
cHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIDExLCBleHBlY3RlZCA3CitQQVNTIENoZWNrcyB0
aGUgcHNldWRvIGVsZW1lbnQgY29uZGl0aW9uIGJlZm9yZSB0aGUgbm90IHJlbmRlcmVkIGNvbmRp
dGlvbiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3N0eWxlLWNo
YW5nZS1ldmVudHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3N0
eWxlLWNoYW5nZS1ldmVudHMtZXhwZWN0ZWQudHh0CmluZGV4IGQzMDlhNDc4Mjc5MjJlNDQ0ZmQ1
OGQ5OWJjODdjY2YzNjA1ZGUzMDEuLjhhNjBjMTM5Yjk0ZGU2NjUzZDRhZjdkNWRjMzhlMDVkNDUx
OWM1MDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFu
Z2UtZXZlbnRzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qv
c3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQKQEAgLTEsOSArMSwxMCBAQAogCi1GQUlM
IEFsbCBwcm9wZXJ0eSBrZXlzIGFyZSByZWNvZ25pemVkIGFzc2VydF9pbl9hcnJheTogVGVzdCBw
cm9wZXJ0eSAncHNldWRvRWxlbWVudCcgc2hvdWxkIGJlIG9uZSBvZiB0aGUgcHJvcGVydGllcyBv
biAgS2V5ZnJhbWVFZmZlY3QgdmFsdWUgInBzZXVkb0VsZW1lbnQiIG5vdCBpbiBhcnJheSBbImdl
dFRpbWluZyIsICJnZXRDb21wdXRlZFRpbWluZyIsICJ1cGRhdGVUaW1pbmciLCAidGFyZ2V0Iiwg
Iml0ZXJhdGlvbkNvbXBvc2l0ZSIsICJjb21wb3NpdGUiLCAiZ2V0S2V5ZnJhbWVzIiwgInNldEtl
eWZyYW1lcyIsICJLZXlmcmFtZUVmZmVjdCBjb25zdHJ1Y3RvciIsICJLZXlmcmFtZUVmZmVjdCBj
b3B5IGNvbnN0cnVjdG9yIl0KK1BBU1MgQWxsIHByb3BlcnR5IGtleXMgYXJlIHJlY29nbml6ZWQg
CiBQQVNTIEtleWZyYW1lRWZmZWN0LmdldFRpbWluZyBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUg
Y2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC5nZXRDb21wdXRlZFRpbWluZyBkb2Vz
IE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC51
cGRhdGVUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1Mg
S2V5ZnJhbWVFZmZlY3QudGFyZ2V0IGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZl
bnQgCitQQVNTIEtleWZyYW1lRWZmZWN0LnBzZXVkb0VsZW1lbnQgZG9lcyBOT1QgdHJpZ2dlciBh
IHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuaXRlcmF0aW9uQ29tcG9z
aXRlIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1l
RWZmZWN0LmNvbXBvc2l0ZSBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAog
UEFTUyBLZXlmcmFtZUVmZmVjdC5nZXRLZXlmcmFtZXMgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxl
IGNoYW5nZSBldmVudCAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90
YXJnZXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3RhcmdldC1l
eHBlY3RlZC50eHQKaW5kZXggMDNmNWZiZDJjMmVlY2M4NGI5NzYyYTAyNGM1MmUwYjlmNTlkMzAy
ZS4uYzUxMjgwMmM1NTQxNGI3N2ZjNDVlMzljODJmZTlhYWM3NjI0M2QyZSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9u
cy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3RhcmdldC1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9p
bnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3RhcmdldC1leHBlY3RlZC50eHQKQEAgLTQsMTggKzQs
MTggQEAgUEFTUyBUZXN0IHNldHRpbmcgdGFyZ2V0IGZyb20gbnVsbCB0byBhIHZhbGlkIHRhcmdl
dAogUEFTUyBUZXN0IHNldHRpbmcgdGFyZ2V0IGZyb20gYSB2YWxpZCB0YXJnZXQgdG8gbnVsbCAK
IFBBU1MgVGVzdCBzZXR0aW5nIHRhcmdldCBmcm9tIGEgdmFsaWQgdGFyZ2V0IHRvIGFub3RoZXIg
dGFyZ2V0IAogUEFTUyBUYXJnZXQgZWxlbWVudCBjYW4gYmUgc2V0IHRvIGEgZm9yZWlnbiBlbGVt
ZW50IAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhbiBleGlzdGluZyBwc2V1ZG9F
bGVtZW50IHNldHRpbmcgdGFyZ2V0IGZpcnN0LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUg
cHJvZ3Jlc3MgYWZ0ZXIgc2V0dGluZyBuZXcgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290
ICIxMHB4IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhbiBleGlzdGluZyBwc2V1
ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4gYXNzZXJ0X2VxdWFsczogVmFs
dWUgYXQgNTAlIHByb2dyZXNzIGFmdGVyIHNldHRpbmcgbmV3IHRhcmdldCBleHBlY3RlZCAiNTBw
eCIgYnV0IGdvdCAiMTBweCIKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYW4gZXhp
c3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHRhcmdldCBmaXJzdC4gCitQQVNTIENoYW5nZSB0
YXJnZXQgZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1
ZG9FbGVtZW50IGZpcnN0LiAKIFBBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5nIHBz
ZXVkby1lbGVtZW50IHRvIHRoZSBvcmlnaW5hdGluZyBlbGVtZW50LiAKLUZBSUwgQ2hhbmdlIHRh
cmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVt
ZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiBhc3NlcnRfZXF1YWxzOiBBbmltYXRpb24gdGFyZ2V0cyBz
cGVjaWZpZWQgcHNldWRvLWVsZW1lbnQgKHBzZXVkby1zZWxlY3RvcikgZXhwZWN0ZWQgKHN0cmlu
ZykgIjo6YmVmb3JlIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBDaGFuZ2Ug
dGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVs
ZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBvZiAy
bmQgZWxlbWVudCAoY3VycmVudGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZmZWN0
IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMjBweCIKLUZBSUwgQ2hhbmdlIHRhcmdl
dCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVt
ZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiBhc3NlcnRfZXF1YWxzOiBBbmltYXRpb24gdGFyZ2V0cyBz
cGVjaWZpZWQgcHNldWRvLWVsZW1lbnQgKHBzZXVkby1zZWxlY3RvcikgZXhwZWN0ZWQgKHN0cmlu
ZykgIjo6YmVmb3JlIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBDaGFuZ2Ug
dGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRv
LWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBv
ZiAybmQgZWxlbWVudCAoY3VycmVudGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZm
ZWN0IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMjBweCIKLUZBSUwgQ2hhbmdlIHRh
cmdldCBmcm9tIG51bGwgdG8gYSBub24tZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHRh
cmdldCBmaXJzdC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgYXQgNTAlIHByb2dyZXNzIGFmdGVyIHNl
dHRpbmcgbmV3IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMTBweCIKLUZBSUwgQ2hh
bmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYSBub24tZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0
aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9n
cmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEw
cHgiCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBl
eGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gCitQQVNTIENoYW5nZSB0
YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxl
bWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20g
YSBub24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkg
c2V0dGluZyB0YXJnZXQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3Rpbmcg
dG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9F
bGVtZW50LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYSBub24tZXhpc3Rpbmcg
cHNldWRvRWxlbWVudCBzZXR0aW5nIHRhcmdldCBmaXJzdC4gCitQQVNTIENoYW5nZSB0YXJnZXQg
ZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1ZG9F
bGVtZW50IGZpcnN0LiAKIFBBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHBz
ZXVkby1lbGVtZW50IHRvIHRoZSBvcmlnaW5hdGluZyBlbGVtZW50LiAKLUZBSUwgQ2hhbmdlIHRh
cmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8t
ZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdl
dHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChz
dHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hh
bmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBw
c2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6IFZh
bHVlIG9mIDJuZCBlbGVtZW50IChjdXJyZW50bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5nIHRo
ZSBlZmZlY3QgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIyMHB4IgotRkFJTCBDaGFu
Z2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5n
IHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiBhc3NlcnRfZXF1YWxzOiBBbmltYXRp
b24gdGFyZ2V0cyBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQgKHBzZXVkby1zZWxlY3RvcikgZXhw
ZWN0ZWQgKHN0cmluZykgIjo6YmVmb3JlIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAot
RkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9u
LWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0
X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIg
Y2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgi
CitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBub24t
ZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIAorUEFTUyBDaGFuZ2Ug
dGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVk
by1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gCitQQVNTIENoYW5nZSB0YXJnZXQg
ZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVs
ZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24t
ZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNl
dHRpbmcgcHNldWRvRWxlbWVudC4gCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396078</attachid>
            <date>2020-04-10 06:45:44 -0700</date>
            <delta_ts>2020-04-10 10:15:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200410154543.patch</filename>
            <type>text/plain</type>
            <size>39796</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5ODY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2YzYzBhMWY1ZjU0NjRk
YzY2Mzc1NDkzZjkwMzU3MjlhZTk3ZDdmMC4uNGQ3NTM0NzRjMGYwOWFkYTZlMDBhZTNiMDhkYzRl
MGFjZTM3ZTQ2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIwLTA0LTA5ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LAorICAgICAgICBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZCBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQgYSBQc2V1ZG9F
bGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBpdCdzIG5vdCBi
ZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBvZiBhIDo6YmVm
b3JlIG9yIDo6YWZ0ZXIKKyAgICAgICAgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQiIHN0eWxlIHJ1
bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3IgInBzZXVkb0Vs
ZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwgd2UgZW5zdXJlIGEgUHNl
dWRvRWxlbWVudAorICAgICAgICBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhvc3QgZWxlbWVu
dCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQgZHVyaW5nIHN0
eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMgYXJlIGFwcGxpZWQgdG8gc3VjaCBwc2V1ZG8tZWxl
bWVudHMKKyAgICAgICAgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1RhcmdldGVkQnlLZXlm
cmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBpbmRpY2F0ZXMg
dGhhdCBhIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFyZ2V0cyB0aGlzIHBzZXVkby1l
bGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBIYW5kbGUgdGhlIG5ldyBLZXlm
cmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0eSBpbiB0aGUgS2V5ZnJhbWVF
ZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6Y29w
eVByb3BlcnRpZXNGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0
OjpiaW5kaW5nc1RhcmdldCBjb25zdCk6IFJldHVybiB0aGUgdGFyZ2V0J3MgaG9zdCBlbGVtZW50
IGlmIHRoZSB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OmVu
c3VyZVBzZXVkb0VsZW1lbnQpOiBVdGlsaXR5IGZ1bmN0aW9uIGRlc2lnbmVkIHRvIGd1YXJhbnRl
ZSBhIHBzZXVkby1lbGVtZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBpcyBhdmFpbGFibGUgZm9y
IHRoZSBwcm92aWRlZCBob3N0IGVsZW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVm
ZmVjdDo6c2V0QmluZGluZ3NUYXJnZXQpOiBXaGVuIHRoZSBLZXlmcmFtZUVmZmVjdC50YXJnZXQg
cHJvcGVydHkgY2hhbmdlcywgc2V0IGl0IGFzIHRoZSB0YXJnZXQgZGlyZWN0bHkgb3Igc2V0IHRo
ZSBwc2V1ZG8tZWxlbWVudCBtYXRjaGluZyB0aGUKKyAgICAgICAgY3VycmVudCB2YWx1ZSBmb3Ig
S2V5ZnJhbWVFZmZlY3QucHNldWRvRWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1l
RWZmZWN0Ojpwc2V1ZG9FbGVtZW50IGNvbnN0KTogUmV0dXJuIHRoZSBwc2V1ZG8tZWxlbWVudCBz
ZWxlY3RvciBvZiB0aGUgY3VycmVudCB0YXJnZXQgaWYgaXQncyBhIHBzZXVkby1lbGVtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1lbnQpOiBXaGVu
IHRoZSBLZXlmcmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5IGNoYW5nZXMsIHNldCB0
aGUgdGFyZ2V0IGJhc2VkIG9uIHRoZSBjdXJyZW50IEtleWZyYW1lRWZmZWN0LnRhcmdldCB2YWx1
ZQorICAgICAgICBhbmQgdGhlIG5ldyBwc2V1ZG8tZWxlbWVudCBzZWxlY3Rvci4KKyAgICAgICAg
KFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBhIFBzZXVkb0VsZW1lbnQgbXVzdCByZW1haW4gY3JlYXRlZCBmb3Ig
dGhpcyBLZXlmcmFtZUVmZmVjdCwgd2hpY2ggaXMgb25seSBuZWNlc3NhcnkgZm9yCisgICAgICAg
IEpTLW9yaWdpbmF0ZWQgZWZmZWN0cyB0YXJnZXRpbmcgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAg
ICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuaWRsOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlv
bnMuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbDoKKyAg
ICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBvbmUgb3IgbW9yZSBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgaW4gdGhlIHN0YWNrIHRhcmdldCB0aGUgUHNldWRvRWxlbWVudCBvd25pbmcKKyAgICAgICAg
dGhpcyBzdGFjay4KKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oOgor
ICAgICAgICAqIGRvbS9Qc2V1ZG9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVk
b0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9y
IG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQg
dGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6Omlz
VGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0
cnVlIHdoZW4gb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRo
ZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRv
RWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRl
ckdlbmVyYXRlZENvbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJl
bmRlcmVycyk6IFJlbW92ZSB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0
eSB3YXMgc2V0IHNpbmNlIGl0J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNh
bGxlZCBkdWUgdG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZQorICAgICAgICBlZmZlY3RzIHRhcmdl
dGluZyB0aGUgZ2l2ZW4gcHNldWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlv
biB0aGF0IHRoZXJlIGFyZSBzdWNoIGtleWZyYW1lIGVmZmVjdHMgaW4gY2FzZSBubyAiY29udGVu
dCIgcHJvcGVydHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRyZWVVcGRhdGVy
OjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSByZW1vdmUgcHNl
dWRvLWVsZW1lbnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogc3R5
bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlRyZWVS
ZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5pbWF0ZWQgc3R5bGUgcmVzb2x1
dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpTLW9yaWdpbmF0ZWQga2V5ZnJh
bWUgZWZmZWN0cy4KKwogMjAyMC0wNC0xMCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CiAKICAgICAgICAgSW50cm9kdWNlIGEgUmVhbHRpbWVNZWRpYVNvdXJjZSBvYnNlcnZlciBk
ZWRpY2F0ZWQgdG8gcmVjZWl2aW5nIGF1ZGlvIHNhbXBsZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmlt
YXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCmluZGV4IDVmMmE2MWYwMjBiYjNjMGM5NGZjNDkxZDc2
MWFhMTYxYWU4YTQ1M2MuLjRkYjhhNDM4MGRjMDI0YzU2NjVkOTliY2UyODQ3YzJjNjQzN2ZmZjIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcApAQCAtNDYs
NiArNDYsNyBAQAogI2luY2x1ZGUgIkpTS2V5ZnJhbWVFZmZlY3QuaCIKICNpbmNsdWRlICJLZXlm
cmFtZUVmZmVjdFN0YWNrLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIlBzZXVk
b0VsZW1lbnQuaCIKICNpbmNsdWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRlICJSZW5kZXJCb3hN
b2RlbE9iamVjdC5oIgogI2luY2x1ZGUgIlJlbmRlckVsZW1lbnQuaCIKQEAgLTQ4NSw2ICs0ODYs
MTEgQEAgRXhjZXB0aW9uT3I8UmVmPEtleWZyYW1lRWZmZWN0Pj4gS2V5ZnJhbWVFZmZlY3Q6OmNy
ZWF0ZShKU0dsb2JhbE9iamVjdCYgbGV4aWNhbEcKICAgICAgICAgICAgIHRpbWluZy5kdXJhdGlv
biA9IGR1cmF0aW9uOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgYXV0byBrZXlmcmFt
ZUVmZmVjdE9wdGlvbnMgPSBXVEY6OmdldDxLZXlmcmFtZUVmZmVjdE9wdGlvbnM+KG9wdGlvbnNW
YWx1ZSk7CisKKyAgICAgICAgICAgIGF1dG8gc2V0UHNldWRvRWxlbWVudFJlc3VsdCA9IGtleWZy
YW1lRWZmZWN0LT5zZXRQc2V1ZG9FbGVtZW50KGtleWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9F
bGVtZW50KTsKKyAgICAgICAgICAgIGlmIChzZXRQc2V1ZG9FbGVtZW50UmVzdWx0Lmhhc0V4Y2Vw
dGlvbigpKQorICAgICAgICAgICAgICAgIHJldHVybiBzZXRQc2V1ZG9FbGVtZW50UmVzdWx0LnJl
bGVhc2VFeGNlcHRpb24oKTsKKwogICAgICAgICAgICAgdGltaW5nID0gewogICAgICAgICAgICAg
ICAgIGtleWZyYW1lRWZmZWN0T3B0aW9ucy5kdXJhdGlvbiwKICAgICAgICAgICAgICAgICBrZXlm
cmFtZUVmZmVjdE9wdGlvbnMuaXRlcmF0aW9ucywKQEAgLTUyOCw2ICs1MzQsNyBAQCBLZXlmcmFt
ZUVmZmVjdDo6S2V5ZnJhbWVFZmZlY3QoRWxlbWVudCogdGFyZ2V0KQogdm9pZCBLZXlmcmFtZUVm
ZmVjdDo6Y29weVByb3BlcnRpZXNGcm9tU291cmNlKFJlZjxLZXlmcmFtZUVmZmVjdD4mJiBzb3Vy
Y2UpCiB7CiAgICAgbV90YXJnZXQgPSBzb3VyY2UtPm1fdGFyZ2V0OworICAgIG1fcHNldWRvSWQg
PSBzb3VyY2UtPm1fcHNldWRvSWQ7CiAgICAgbV9jb21wb3NpdGVPcGVyYXRpb24gPSBzb3VyY2Ut
Pm1fY29tcG9zaXRlT3BlcmF0aW9uOwogICAgIG1faXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9u
ID0gc291cmNlLT5tX2l0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbjsKIApAQCAtMTA2Niw2ICsx
MDczLDQ1IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNldEFuaW1hdGlvbihXZWJBbmltYXRpb24q
IGFuaW1hdGlvbikKICAgICB1cGRhdGVFZmZlY3RTdGFja01lbWJlcnNoaXAoKTsKIH0KIAorRWxl
bWVudCogS2V5ZnJhbWVFZmZlY3Q6OmJpbmRpbmdzVGFyZ2V0KCkgY29uc3QKK3sKKyAgICBpZiAo
aXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQuZ2V0KCkpKQorICAgICAgICByZXR1cm4gZG93bmNh
c3Q8UHNldWRvRWxlbWVudD4oKm1fdGFyZ2V0KS5ob3N0RWxlbWVudCgpOworICAgIHJldHVybiBt
X3RhcmdldC5nZXQoKTsKK30KKworc3RhdGljIEVsZW1lbnQqIGVuc3VyZVBzZXVkb0VsZW1lbnQo
RWxlbWVudCogaG9zdCwgUHNldWRvSWQgcHNldWRvSWQpCit7CisgICAgQVNTRVJUKGhvc3QpOwor
CisgICAgaWYgKHBzZXVkb0lkID09IFBzZXVkb0lkOjpCZWZvcmUpIHsKKyAgICAgICAgaWYgKGF1
dG8qIGJlZm9yZVBzZXVkb0VsZW1lbnQgPSBob3N0LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCkpCisg
ICAgICAgICAgICByZXR1cm4gYmVmb3JlUHNldWRvRWxlbWVudDsKKyAgICAgICAgYXV0byBuZXdC
ZWZvcmVQc2V1ZG9FbGVtZW50ID0gUHNldWRvRWxlbWVudDo6Y3JlYXRlKCpob3N0LCBwc2V1ZG9J
ZCk7CisgICAgICAgIGhvc3QtPnNldEJlZm9yZVBzZXVkb0VsZW1lbnQoV1RGTW92ZShuZXdCZWZv
cmVQc2V1ZG9FbGVtZW50KSk7CisgICAgICAgIHJldHVybiBob3N0LT5iZWZvcmVQc2V1ZG9FbGVt
ZW50KCk7CisgICAgfQorCisgICAgaWYgKHBzZXVkb0lkID09IFBzZXVkb0lkOjpBZnRlcikgewor
ICAgICAgICBpZiAoYXV0byogYWZ0ZXJQc2V1ZG9FbGVtZW50ID0gaG9zdC0+YWZ0ZXJQc2V1ZG9F
bGVtZW50KCkpCisgICAgICAgICAgICByZXR1cm4gYWZ0ZXJQc2V1ZG9FbGVtZW50OworICAgICAg
ICBhdXRvIG5ld0FmdGVyUHNldWRvRWxlbWVudCA9IFBzZXVkb0VsZW1lbnQ6OmNyZWF0ZSgqaG9z
dCwgcHNldWRvSWQpOworICAgICAgICBob3N0LT5zZXRBZnRlclBzZXVkb0VsZW1lbnQoV1RGTW92
ZShuZXdBZnRlclBzZXVkb0VsZW1lbnQpKTsKKyAgICAgICAgcmV0dXJuIGhvc3QtPmFmdGVyUHNl
dWRvRWxlbWVudCgpOworICAgIH0KKworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJl
dHVybiBudWxscHRyOworfQorCit2b2lkIEtleWZyYW1lRWZmZWN0OjpzZXRCaW5kaW5nc1Rhcmdl
dChSZWZQdHI8RWxlbWVudD4mJiB0YXJnZXQpCit7CisgICAgaWYgKG1fcHNldWRvSWQgJiYgdGFy
Z2V0KQorICAgICAgICBzZXRUYXJnZXQoZW5zdXJlUHNldWRvRWxlbWVudCh0YXJnZXQuZ2V0KCks
ICptX3BzZXVkb0lkKSk7CisgICAgZWxzZQorICAgICAgICBzZXRUYXJnZXQoV1RGTW92ZSh0YXJn
ZXQpKTsKK30KKwogdm9pZCBLZXlmcmFtZUVmZmVjdDo6c2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50
PiYmIG5ld1RhcmdldCkKIHsKICAgICBpZiAobV90YXJnZXQuZ2V0KCkgPT0gbmV3VGFyZ2V0Lmdl
dCgpKQpAQCAtMTA5NCw2ICsxMTQwLDUwIEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNldFRhcmdl
dChSZWZQdHI8RWxlbWVudD4mJiBuZXdUYXJnZXQpCiAgICAgICAgIG1faW5UYXJnZXRFZmZlY3RT
dGFjayA9IG1fdGFyZ2V0LT5lbnN1cmVLZXlmcmFtZUVmZmVjdFN0YWNrKCkuYWRkRWZmZWN0KCp0
aGlzKTsKIH0KIAorY29uc3QgU3RyaW5nIEtleWZyYW1lRWZmZWN0Ojpwc2V1ZG9FbGVtZW50KCkg
Y29uc3QKK3sKKyAgICAvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvd2ViLWFuaW1hdGlvbnMv
I2RvbS1rZXlmcmFtZWVmZmVjdC1wc2V1ZG9lbGVtZW50CisKKyAgICAvLyBUaGUgdGFyZ2V0IHBz
ZXVkby1zZWxlY3Rvci4gbnVsbCBpZiB0aGlzIGVmZmVjdCBoYXMgbm8gZWZmZWN0IHRhcmdldCBv
ciBpZiB0aGUgZWZmZWN0IHRhcmdldCBpcyBhbiBlbGVtZW50IChpLmUuIG5vdCBhIHBzZXVkby1l
bGVtZW50KS4KKyAgICAvLyBXaGVuIHRoZSBlZmZlY3QgdGFyZ2V0IGlzIGEgcHNldWRvLWVsZW1l
bnQsIHRoaXMgc3BlY2lmaWVzIHRoZSBwc2V1ZG8tZWxlbWVudCBzZWxlY3RvciAoZS5nLiA6OmJl
Zm9yZSkuCisgICAgaWYgKGlzPFBzZXVkb0VsZW1lbnQ+KG1fdGFyZ2V0LmdldCgpKSkKKyAgICAg
ICAgcmV0dXJuIFBzZXVkb0VsZW1lbnQ6OnBzZXVkb0VsZW1lbnROYW1lRm9yRXZlbnRzKGRvd25j
YXN0PFBzZXVkb0VsZW1lbnQ+KCptX3RhcmdldCkucHNldWRvSWQoKSk7CisgICAgcmV0dXJuIHsg
fTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gS2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1l
bnQoY29uc3QgU3RyaW5nJiBwc2V1ZG9FbGVtZW50KQoreworICAgIC8vIGh0dHBzOi8vZHJhZnRz
LmNzc3dnLm9yZy93ZWItYW5pbWF0aW9ucy8jZG9tLWtleWZyYW1lZWZmZWN0LXBzZXVkb2VsZW1l
bnQKKworICAgIC8vIE9uIHNldHRpbmcsIHNldHMgdGhlIHRhcmdldCBwc2V1ZG8tc2VsZWN0b3Ig
b2YgdGhlIGFuaW1hdGlvbiBlZmZlY3QgdG8gdGhlIHByb3ZpZGVkIHZhbHVlIGFmdGVyIGFwcGx5
aW5nIHRoZSBmb2xsb3dpbmcgZXhjZXB0aW9uczoKKyAgICAvLworICAgIC8vIElmIHRoZSBwcm92
aWRlZCB2YWx1ZSBpcyBub3QgbnVsbCBvciBhIHN5bnRhY3RpY2FsbHkgdmFsaWQgdGhlIHVzZXIg
YWdlbnQgbXVzdCB0aHJvdyBhIERPTUV4Y2VwdGlvbiB3aXRoIGVycm9yIG5hbWUgVHlwZUVycm9y
IGFuZCBsZWF2ZSB0aGUKKyAgICAvLyB0YXJnZXQgcHNldWRvLXNlbGVjdG9yIG9mIHRoaXMgYW5p
bWF0aW9uIGVmZmVjdCB1bmNoYW5nZWQuCisgICAgLy8gSWYgb25lIG9mIHRoZSBsZWdhY3kgU2Vs
ZWN0b3JzIExldmVsIDIgc2luZ2xlLWNvbG9uIHNlbGVjdG9ycyAoJzpiZWZvcmUnLCAnOmFmdGVy
JywgJzpmaXJzdC1sZXR0ZXInLCBvciAnOmZpcnN0LWxpbmUnKSBpcyBzcGVjaWZpZWQsIHRoZSB0
YXJnZXQKKyAgICAvLyBwc2V1ZG8tc2VsZWN0b3IgbXVzdCBiZSBzZXQgdG8gdGhlIGVxdWl2YWxl
bnQgdHdvLWNvbG9uIHNlbGVjdG9yIChlLmcuICc6OmJlZm9yZScpLgorCisgICAgaWYgKCFwc2V1
ZG9FbGVtZW50KQorICAgICAgICBtX3BzZXVkb0lkID0gV1RGOjpudWxsb3B0OworICAgIGVsc2Ug
aWYgKHBzZXVkb0VsZW1lbnQgPT0gIjo6YmVmb3JlIiB8fCBwc2V1ZG9FbGVtZW50ID09ICI6YmVm
b3JlIikKKyAgICAgICAgbV9wc2V1ZG9JZCA9IFBzZXVkb0lkOjpCZWZvcmU7CisgICAgZWxzZSBp
ZiAocHNldWRvRWxlbWVudCA9PSAiOjphZnRlciIgfHwgcHNldWRvRWxlbWVudCA9PSAiOmFmdGVy
IikKKyAgICAgICAgbV9wc2V1ZG9JZCA9IFBzZXVkb0lkOjpBZnRlcjsKKyAgICBlbHNlCisgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBUeXBlRXJyb3IgfTsKKworICAgIGlmICghbV9wc2V1ZG9J
ZCkgeworICAgICAgICBpZiAoaXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQuZ2V0KCkpKQorICAg
ICAgICAgICAgc2V0VGFyZ2V0KGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+KCptX3RhcmdldCkuaG9z
dEVsZW1lbnQoKSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKGlzPFBzZXVkb0VsZW1lbnQ+
KG1fdGFyZ2V0LmdldCgpKSkKKyAgICAgICAgICAgIHNldFRhcmdldChlbnN1cmVQc2V1ZG9FbGVt
ZW50KGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+KCptX3RhcmdldCkuaG9zdEVsZW1lbnQoKSwgKm1f
cHNldWRvSWQpKTsKKyAgICAgICAgZWxzZSBpZiAoYXV0byogdGFyZ2V0ID0gbV90YXJnZXQuZ2V0
KCkpCisgICAgICAgICAgICBzZXRUYXJnZXQoZW5zdXJlUHNldWRvRWxlbWVudCh0YXJnZXQsICpt
X3BzZXVkb0lkKSk7CisgICAgfQorCisgICAgcmV0dXJuIHsgfTsKK30KKwogdm9pZCBLZXlmcmFt
ZUVmZmVjdDo6YXBwbHkoUmVuZGVyU3R5bGUmIHRhcmdldFN0eWxlKQogewogICAgIGlmICghbV90
YXJnZXQpCkBAIC0xNjYzLDQgKzE3NTMsOSBAQCBib29sIEtleWZyYW1lRWZmZWN0Ojpjb21wdXRl
VHJhbnNmb3JtZWRFeHRlbnRWaWFNYXRyaXgoY29uc3QgRmxvYXRSZWN0JiByZW5kZXJlcgogICAg
IHJldHVybiB0cnVlOwogfQogCitib29sIEtleWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0Vs
ZW1lbnQoKSBjb25zdAoreworICAgIHJldHVybiBtX2JsZW5kaW5nS2V5ZnJhbWVzU291cmNlID09
IEJsZW5kaW5nS2V5ZnJhbWVzU291cmNlOjpXZWJBbmltYXRpb24gJiYgaXM8UHNldWRvRWxlbWVu
dD4obV90YXJnZXQuZ2V0KCkpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCmluZGV4IGJlOGI2ZDlmNGM5ZDg3MmU4
YjA5NTMyMTMzNDVlZGUzNDk3ZGZmZDcuLjgwZjdjMzk1YTViZWU3ZTQ4OTczNzgwZjdlYjMyNTRl
NzA2MDczMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCkBA
IC0xMDEsOSArMTAxLDE1IEBAIHB1YmxpYzoKIAogICAgIGNvbnN0IFZlY3RvcjxQYXJzZWRLZXlm
cmFtZT4mIHBhcnNlZEtleWZyYW1lcygpIGNvbnN0IHsgcmV0dXJuIG1fcGFyc2VkS2V5ZnJhbWVz
OyB9CiAKKyAgICBFbGVtZW50KiBiaW5kaW5nc1RhcmdldCgpIGNvbnN0OworICAgIHZvaWQgc2V0
QmluZGluZ3NUYXJnZXQoUmVmUHRyPEVsZW1lbnQ+JiYpOworCiAgICAgRWxlbWVudCogdGFyZ2V0
KCkgY29uc3QgeyByZXR1cm4gbV90YXJnZXQuZ2V0KCk7IH0KICAgICB2b2lkIHNldFRhcmdldChS
ZWZQdHI8RWxlbWVudD4mJik7CiAKKyAgICBjb25zdCBTdHJpbmcgcHNldWRvRWxlbWVudCgpIGNv
bnN0OworICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFBzZXVkb0VsZW1lbnQoY29uc3QgU3RyaW5n
Jik7CisKICAgICBWZWN0b3I8SlNDOjpTdHJvbmc8SlNDOjpKU09iamVjdD4+IGdldEtleWZyYW1l
cyhKU0M6OkpTR2xvYmFsT2JqZWN0Jik7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0S2V5ZnJh
bWVzKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBKU0M6OlN0cm9uZzxKU0M6OkpTT2JqZWN0PiYmKTsK
IApAQCAtMTU3LDYgKzE2Myw4IEBAIHB1YmxpYzoKIAogICAgIGNvbnN0IFJlbmRlclN0eWxlKiB1
bmFuaW1hdGVkU3R5bGUoKSBjb25zdCB7IHJldHVybiBtX3VuYW5pbWF0ZWRTdHlsZS5nZXQoKTsg
fQogCisgICAgYm9vbCByZXF1aXJlc1BzZXVkb0VsZW1lbnQoKSBjb25zdDsKKwogcHJpdmF0ZToK
ICAgICBLZXlmcmFtZUVmZmVjdChFbGVtZW50Kik7CiAKQEAgLTE5Miw2ICsyMDAsNyBAQCBwcml2
YXRlOgogICAgIFZlY3RvcjxQYXJzZWRLZXlmcmFtZT4gbV9wYXJzZWRLZXlmcmFtZXM7CiAgICAg
VmVjdG9yPEFjY2VsZXJhdGVkQWN0aW9uPiBtX3BlbmRpbmdBY2NlbGVyYXRlZEFjdGlvbnM7CiAg
ICAgV2Vha1B0cjxFbGVtZW50PiBtX3RhcmdldDsKKyAgICBPcHRpb25hbDxQc2V1ZG9JZD4gbV9w
c2V1ZG9JZDsKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxjb25zdCBSZW5kZXJTdHlsZT4gbV91bmFu
aW1hdGVkU3R5bGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlm
cmFtZUVmZmVjdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3Qu
aWRsCmluZGV4IGQyZDA3YWNjNDM2NGVhYjhiZjFlMGFiNmUxZDAzMmI4YWU2OWY3MDAuLjgwZmRj
NzViOWQ1MjQ3NzJhZjYwMTg3NDIzOWZhNmNlYWQ1NTdhYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmlkbApAQCAtMjMsNiArMjMsOCBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCit0eXBlZGVmIFVTVlN0cmluZyBDU1NPTVN0cmluZzsKKwogWwogICAgIEVu
YWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9ucywKICAgICBFeHBvc2VkPVdpbmRvdywKQEAgLTMy
LDcgKzM0LDggQEAKICAgICBDb25zdHJ1Y3RvcihFbGVtZW50PyB0YXJnZXQsIG9iamVjdD8ga2V5
ZnJhbWVzLCBvcHRpb25hbCAodW5yZXN0cmljdGVkIGRvdWJsZSBvciBLZXlmcmFtZUVmZmVjdE9w
dGlvbnMpIG9wdGlvbnMpLAogICAgIENvbnN0cnVjdG9yKEtleWZyYW1lRWZmZWN0IHNvdXJjZSkK
IF0gaW50ZXJmYWNlIEtleWZyYW1lRWZmZWN0IDogQW5pbWF0aW9uRWZmZWN0IHsKLSAgICBhdHRy
aWJ1dGUgRWxlbWVudD8gdGFyZ2V0OworICAgIFtJbXBsZW1lbnRlZEFzPWJpbmRpbmdzVGFyZ2V0
XSBhdHRyaWJ1dGUgRWxlbWVudD8gdGFyZ2V0OworICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gYXR0
cmlidXRlIENTU09NU3RyaW5nPyBwc2V1ZG9FbGVtZW50OwogICAgIFtFbmFibGVkQXRSdW50aW1l
PVdlYkFuaW1hdGlvbnNDb21wb3NpdGVPcGVyYXRpb25zXSBhdHRyaWJ1dGUgSXRlcmF0aW9uQ29t
cG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlvbkNvbXBvc2l0ZTsKICAgICBbRW5hYmxlZEF0UnVudGlt
ZT1XZWJBbmltYXRpb25zQ29tcG9zaXRlT3BlcmF0aW9uc10gYXR0cmlidXRlIENvbXBvc2l0ZU9w
ZXJhdGlvbiBjb21wb3NpdGU7CiAgICAgW0NhbGxXaXRoPUdsb2JhbE9iamVjdF0gc2VxdWVuY2U8
b2JqZWN0PiBnZXRLZXlmcmFtZXMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9L
ZXlmcmFtZUVmZmVjdE9wdGlvbnMuaAppbmRleCBhYmE3ZDJmMzdjMDM4NWRmZjAyMWQ3NWQwYjhj
ZWI3ZmJiMWY4MTUxLi4zZWRjYjg0NTAzMTNhOGYwMjNhZTY0ZDgxY2I4MDBmNjZhZjQ1YjUxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25z
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5o
CkBAIC0zNSw2ICszNSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHN0cnVjdCBLZXlmcmFtZUVm
ZmVjdE9wdGlvbnMgOiBFZmZlY3RUaW1pbmcgewogICAgIEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJh
dGlvbiBpdGVyYXRpb25Db21wb3NpdGUgeyBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb246OlJl
cGxhY2UgfTsKICAgICBDb21wb3NpdGVPcGVyYXRpb24gY29tcG9zaXRlIHsgQ29tcG9zaXRlT3Bl
cmF0aW9uOjpSZXBsYWNlIH07CisgICAgU3RyaW5nIHBzZXVkb0VsZW1lbnQ7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlm
cmFtZUVmZmVjdE9wdGlvbnMuaWRsCmluZGV4IDFmZDg5ZDI4MTVlZWI5NjA2MDE0ZjVmNjExMzE1
ZGJmMDFjNjlmODAuLjYxZWJmZjE2Yzg1NmFiNjg0Mzk0ZWIzOTc5ZjBhMWUwZTgwOWJiMjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMu
aWRsCkBAIC0yMyw3ICsyMywxMCBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCit0eXBlZGVmIFVT
VlN0cmluZyBDU1NPTVN0cmluZzsKKwogZGljdGlvbmFyeSBLZXlmcmFtZUVmZmVjdE9wdGlvbnMg
OiBFZmZlY3RUaW1pbmcgewogICAgIEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbiBpdGVyYXRp
b25Db21wb3NpdGUgPSAicmVwbGFjZSI7CiAgICAgQ29tcG9zaXRlT3BlcmF0aW9uIGNvbXBvc2l0
ZSA9ICJyZXBsYWNlIjsKKyAgICBDU1NPTVN0cmluZz8gcHNldWRvRWxlbWVudCA9IG51bGw7CiB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3Rh
Y2suY3BwIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3Bw
CmluZGV4IGQwYmQ3Y2Y1Y2RlOTIyMzJlZDllNDY2NWVjOTNkY2NmODU5ZTQzODYuLjIwNTZkYjIx
YmFlMzRmOGY1MmNmY2RiZTc2MGRkNjU3YTIxNjBjZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAKQEAgLTU5LDYgKzU5LDE1IEBAIHZv
aWQgS2V5ZnJhbWVFZmZlY3RTdGFjazo6cmVtb3ZlRWZmZWN0KEtleWZyYW1lRWZmZWN0JiBlZmZl
Y3QpCiAgICAgbV9lZmZlY3RzLnJlbW92ZUZpcnN0KCZlZmZlY3QpOwogfQogCitib29sIEtleWZy
YW1lRWZmZWN0U3RhY2s6OnJlcXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0Cit7CisgICAgZm9y
IChhdXRvJiBlZmZlY3QgOiBtX2VmZmVjdHMpIHsKKyAgICAgICAgaWYgKGVmZmVjdC0+cmVxdWly
ZXNQc2V1ZG9FbGVtZW50KCkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgICAg
cmV0dXJuIGZhbHNlOworfQorCiBib29sIEtleWZyYW1lRWZmZWN0U3RhY2s6OmlzQ3VycmVudGx5
QWZmZWN0aW5nUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eSkgY29uc3QKIHsKICAgICBm
b3IgKGF1dG8mIGVmZmVjdCA6IG1fZWZmZWN0cykgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmgKaW5kZXggOTc4ZDg0ZGNkNTY4MGQyOGMwYTNkNjk5
ZTIzM2ZkYzdkM2FlYTY5MC4uMWRiODQwNDI2OGVjNzkzYWNiNGY1MTI3MGFiY2NkMTA0YTU0NmNm
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3Rh
Y2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5o
CkBAIC00Nyw2ICs0Nyw3IEBAIHB1YmxpYzoKICAgICBjb25zdCBBbmltYXRpb25MaXN0KiBjc3NB
bmltYXRpb25MaXN0KCkgY29uc3QgeyByZXR1cm4gbV9jc3NBbmltYXRpb25MaXN0LmdldCgpOyB9
CiAgICAgdm9pZCBzZXRDU1NBbmltYXRpb25MaXN0KFJlZlB0cjxjb25zdCBBbmltYXRpb25MaXN0
PiYmKTsKICAgICBib29sIGlzQ3VycmVudGx5QWZmZWN0aW5nUHJvcGVydHkoQ1NTUHJvcGVydHlJ
RCkgY29uc3Q7CisgICAgYm9vbCByZXF1aXJlc1BzZXVkb0VsZW1lbnQoKSBjb25zdDsKIAogcHJp
dmF0ZToKICAgICB2b2lkIGVuc3VyZUVmZmVjdHNBcmVTb3J0ZWQoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Q
c2V1ZG9FbGVtZW50LmNwcAppbmRleCAzMmFlODMyODlmOGY4ZjdjY2YzMDc5NTVjMjllOGIxNWU0
MWJkMTY5Li5lODRjMjI5YjM5N2JkNWJlOTBkZmFhOGJiOGZjZWU5MWIzZGQ4MTlkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAi
Q29udGVudERhdGEuaCIKICNpbmNsdWRlICJEb2N1bWVudFRpbWVsaW5lLmgiCiAjaW5jbHVkZSAi
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCisjaW5jbHVkZSAiS2V5ZnJhbWVFZmZlY3RTdGFj
ay5oIgogI2luY2x1ZGUgIlJlbmRlckVsZW1lbnQuaCIKICNpbmNsdWRlICJSZW5kZXJJbWFnZS5o
IgogI2luY2x1ZGUgIlJlbmRlclF1b3RlLmgiCkBAIC0xMDAsNyArMTAxLDE0IEBAIHZvaWQgUHNl
dWRvRWxlbWVudDo6Y2xlYXJIb3N0RWxlbWVudCgpCiAKIGJvb2wgUHNldWRvRWxlbWVudDo6cmVu
ZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCiB7Ci0gICAgcmV0dXJuIHBz
ZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVkKCZzdHlsZSk7CisgICAgcmV0dXJuIHBzZXVkb0Vs
ZW1lbnRSZW5kZXJlcklzTmVlZGVkKCZzdHlsZSkgfHwgaXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZl
Y3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCk7Cit9CisKK2Jvb2wgUHNldWRvRWxlbWVudDo6aXNU
YXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCkKK3sKKyAgICBp
ZiAoYXV0byogc3RhY2sgPSBrZXlmcmFtZUVmZmVjdFN0YWNrKCkpCisgICAgICAgIHJldHVybiBz
dGFjay0+cmVxdWlyZXNQc2V1ZG9FbGVtZW50KCk7CisgICAgcmV0dXJuIGZhbHNlOwogfQogCiB9
IC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmgKaW5kZXggMmZhZDMxZDYw
ZTFkZjhiMTg0YTFkYmY3OTRjOWEyOTFmYmM4MzM1ZC4uZWM3NWU2MTIwZjljOThmOGM5M2RiYjU3
ZWFmYTY5Y2Y0MmI3Y2Q4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0Vs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5oCkBAIC00MSw2
ICs0MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNsZWFySG9zdEVsZW1lbnQoKTsKIAogICAgIGJv
b2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIG92ZXJyaWRlOworICAgIGJv
b2wgaXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCk7CiAK
ICAgICBib29sIGNhblN0YXJ0U2VsZWN0aW9uKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gZmFs
c2U7IH0KICAgICBib29sIGNhbkNvbnRhaW5SYW5nZUVuZFBvaW50KCkgY29uc3Qgb3ZlcnJpZGUg
eyByZXR1cm4gZmFsc2U7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVu
dC5jcHAKaW5kZXggNDAyNDBiZDdhZTI4ZTcwNDQ3ODMwNDJiYmZhMGQxNDE3YzIxMGJkNi4uNzBk
YzkxZjlhYzU4ODYyMWUyOThiOTQ3ZTQ1MmI4YjcyNjIxNzQyYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29u
dGVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRy
ZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAKQEAgLTcxLDEyICs3MSwxNiBAQCB2b2lkIFJl
bmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVRdW90ZXNVcFRvKFJlbmRl
clF1b3RlKiBsYXN0UXVvdAogCiBzdGF0aWMgdm9pZCBjcmVhdGVDb250ZW50UmVuZGVyZXJzKFJl
bmRlclRyZWVCdWlsZGVyJiBidWlsZGVyLCBSZW5kZXJFbGVtZW50JiBwc2V1ZG9SZW5kZXJlciwg
Y29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewotICAgIEFTU0VSVChzdHlsZS5jb250ZW50RGF0
YSgpKTsKLQotICAgIGZvciAoY29uc3QgQ29udGVudERhdGEqIGNvbnRlbnQgPSBzdHlsZS5jb250
ZW50RGF0YSgpOyBjb250ZW50OyBjb250ZW50ID0gY29udGVudC0+bmV4dCgpKSB7Ci0gICAgICAg
IGF1dG8gY2hpbGQgPSBjb250ZW50LT5jcmVhdGVDb250ZW50UmVuZGVyZXIocHNldWRvUmVuZGVy
ZXIuZG9jdW1lbnQoKSwgc3R5bGUpOwotICAgICAgICBpZiAocHNldWRvUmVuZGVyZXIuaXNDaGls
ZEFsbG93ZWQoKmNoaWxkLCBzdHlsZSkpCi0gICAgICAgICAgICBidWlsZGVyLmF0dGFjaChwc2V1
ZG9SZW5kZXJlciwgV1RGTW92ZShjaGlsZCkpOworICAgIGlmIChhdXRvKiBjb250ZW50RGF0YSA9
IHN0eWxlLmNvbnRlbnREYXRhKCkpIHsKKyAgICAgICAgZm9yIChjb25zdCBDb250ZW50RGF0YSog
Y29udGVudCA9IGNvbnRlbnREYXRhOyBjb250ZW50OyBjb250ZW50ID0gY29udGVudC0+bmV4dCgp
KSB7CisgICAgICAgICAgICBhdXRvIGNoaWxkID0gY29udGVudC0+Y3JlYXRlQ29udGVudFJlbmRl
cmVyKHBzZXVkb1JlbmRlcmVyLmRvY3VtZW50KCksIHN0eWxlKTsKKyAgICAgICAgICAgIGlmIChw
c2V1ZG9SZW5kZXJlci5pc0NoaWxkQWxsb3dlZCgqY2hpbGQsIHN0eWxlKSkKKyAgICAgICAgICAg
ICAgICBidWlsZGVyLmF0dGFjaChwc2V1ZG9SZW5kZXJlciwgV1RGTW92ZShjaGlsZCkpOworICAg
ICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gVGhlIG9ubHkgdmFsaWQgc2NlbmFyaW8g
d2hlcmUgdGhpcyBtZXRob2QgaXMgY2FsbGVkIHdpdGhvdXQgdGhlICJjb250ZW50IiBwcm9wZXJ0
eSBiZWluZyBzZXQKKyAgICAgICAgLy8gaXMgdGhlIGNhc2Ugd2hlcmUgYSBwc2V1ZG8tZWxlbWVu
dCBoYXMgYW5pbWF0aW9ucyBzZXQgb24gaXQgdmlhIHRoZSBXZWIgQW5pbWF0aW9ucyBBUEkuCisg
ICAgICAgIEFTU0VSVChpczxQc2V1ZG9FbGVtZW50Pihwc2V1ZG9SZW5kZXJlci5lbGVtZW50KCkp
ICYmIGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+KCpwc2V1ZG9SZW5kZXJlci5lbGVtZW50KCkpLmlz
VGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpKTsKICAgICB9
CiB9CiAKQEAgLTk3LDcgKzEwMSw3IEBAIHZvaWQgUmVuZGVyVHJlZVVwZGF0ZXI6OkdlbmVyYXRl
ZENvbnRlbnQ6OnVwZGF0ZVBzZXVkb0VsZW1lbnQoRWxlbWVudCYgY3VycmVudCwKICAgICBpZiAo
YXV0byogcmVuZGVyZXIgPSBwc2V1ZG9FbGVtZW50ID8gcHNldWRvRWxlbWVudC0+cmVuZGVyZXIo
KSA6IG51bGxwdHIpCiAgICAgICAgIG1fdXBkYXRlci5yZW5kZXJUcmVlUG9zaXRpb24oKS5pbnZh
bGlkYXRlTmV4dFNpYmxpbmcoKnJlbmRlcmVyKTsKIAotICAgIGlmICghbmVlZHNQc2V1ZG9FbGVt
ZW50KHVwZGF0ZSkpIHsKKyAgICBpZiAoIW5lZWRzUHNldWRvRWxlbWVudCh1cGRhdGUpICYmICgh
cHNldWRvRWxlbWVudCB8fCAhcHNldWRvRWxlbWVudC0+aXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZl
Y3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCkpKSB7CiAgICAgICAgIGlmIChwc2V1ZG9FbGVtZW50
KSB7CiAgICAgICAgICAgICBpZiAocHNldWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkKICAgICAg
ICAgICAgICAgICByZW1vdmVCZWZvcmVQc2V1ZG9FbGVtZW50KGN1cnJlbnQsIG1fdXBkYXRlci5t
X2J1aWxkZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVz
b2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCmlu
ZGV4IDlmMzUwMGRkNWVhNzIyNTg0NjY5YTNlOWU0Zjg5ZWY3MTE1N2RiODguLmNiMDFhNzVmYWY2
M2JjOWIxYTI3MzI3M2EwMmY1ZjA1N2I2ZGQxNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZVRyZWVSZXNvbHZlci5jcHAKQEAgLTI2MSwxNCArMjYxLDE5IEBAIEVsZW1lbnRVcGRhdGUg
VHJlZVJlc29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxlbWVudCwgY29uc3Qg
RWxlbWVudFVwCiB7CiAgICAgaWYgKGVsZW1lbnRVcGRhdGUuc3R5bGUtPmRpc3BsYXkoKSA9PSBE
aXNwbGF5VHlwZTo6Tm9uZSkKICAgICAgICAgcmV0dXJuIHsgfTsKKwogICAgIGlmICghZWxlbWVu
dFVwZGF0ZS5zdHlsZS0+aGFzUHNldWRvU3R5bGUocHNldWRvSWQpKQogICAgICAgICByZXR1cm4g
eyB9OwogCiAgICAgYXV0byBwc2V1ZG9TdHlsZSA9IHNjb3BlKCkucmVzb2x2ZXIucHNldWRvU3R5
bGVGb3JFbGVtZW50KGVsZW1lbnQsIHsgcHNldWRvSWQgfSwgKmVsZW1lbnRVcGRhdGUuc3R5bGUs
IHBhcmVudEJveFN0eWxlRm9yUHNldWRvKGVsZW1lbnRVcGRhdGUpLCAmc2NvcGUoKS5zZWxlY3Rv
ckZpbHRlcik7Ci0gICAgaWYgKCFwc2V1ZG9FbGVtZW50UmVuZGVyZXJJc05lZWRlZChwc2V1ZG9T
dHlsZS5nZXQoKSkpCisgICAgaWYgKCFwc2V1ZG9TdHlsZSkKKyAgICAgICAgcmV0dXJuIHsgfTsK
KworICAgIGF1dG8qIHBzZXVkb0VsZW1lbnQgPSBwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6QmVmb3Jl
ID8gZWxlbWVudC5iZWZvcmVQc2V1ZG9FbGVtZW50KCkgOiBlbGVtZW50LmFmdGVyUHNldWRvRWxl
bWVudCgpOworICAgIGJvb2wgaGFzQW5pbWF0aW9ucyA9IHBzZXVkb0VsZW1lbnQgJiYgcHNldWRv
RWxlbWVudC0+aXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50
KCk7CisgICAgaWYgKCFwc2V1ZG9FbGVtZW50UmVuZGVyZXJJc05lZWRlZChwc2V1ZG9TdHlsZS5n
ZXQoKSkgJiYgIWhhc0FuaW1hdGlvbnMpCiAgICAgICAgIHJldHVybiB7IH07CiAKLSAgICBQc2V1
ZG9FbGVtZW50KiBwc2V1ZG9FbGVtZW50ID0gcHNldWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSA/
IGVsZW1lbnQuYmVmb3JlUHNldWRvRWxlbWVudCgpIDogZWxlbWVudC5hZnRlclBzZXVkb0VsZW1l
bnQoKTsKICAgICBpZiAoIXBzZXVkb0VsZW1lbnQpIHsKICAgICAgICAgYXV0byBuZXdQc2V1ZG9F
bGVtZW50ID0gUHNldWRvRWxlbWVudDo6Y3JlYXRlKGVsZW1lbnQsIHBzZXVkb0lkKTsKICAgICAg
ICAgcHNldWRvRWxlbWVudCA9IG5ld1BzZXVkb0VsZW1lbnQucHRyKCk7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZwppbmRleCBkMWQyYmUzMGY5NjdiZjIyMzhjOTI3MGRlMDE1Mjg5YzY5OGYy
MTMyLi43N2Q5MjVmMGI0ZWMyYjU1M2RjYjdhNDI5ZTNjODA2OWFhMmY0MDQ3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wNC0wOSAgQW50b2lu
ZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgorCisgICAgICAgIFtXZWIgQW5pbWF0aW9uc10g
QWRkIHN1cHBvcnQgZm9yIGBwc2V1ZG9FbGVtZW50YCBvbiBgS2V5ZnJhbWVFZmZlY3RgIGFuZCBg
S2V5ZnJhbWVFZmZlY3RPcHRpb25zYAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjA3MjkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTE5OTAwMz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYXJrIDIz
IGFkZGl0aW9uYWwgV1BUIHRlc3RzIGFzIFBBU1MuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZl
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmlt
YXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdl
dEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0Fu
aW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lu
dGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMv
S2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wNC0wOSAgQ2F0aGll
IENoZW4gIDxjYXRoaWVjaGVuQGlnYWxpYS5jb20+CiAKICAgICAgICAgSW1wb3J0IHRlc3QgZm9y
IHByb2dyYW1tYXRpYyBzY3JvbGxpbmcgc2Nyb2xsZW5kIGV2ZW50CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9u
cy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9E
b2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggM2M2MjM4
MjAyN2ZiZGE2NDcxODEyNDUzYWFkNzBiMmIzNDU5YTRlNC4uZDBiYWJmNTY4M2VhZWVhYzNiZTgw
OTZhMmM1MGYyYmE2MTZjMjk2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0
aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1h
dGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMTMsNSArMTMsNSBAQCBQQVNTIEZpbmlz
aGVkIGJ1dCBub3QgZmlsbGluZyBDU1MgQW5pbWF0aW9ucyBhcmUgbm90IHJldHVybmVkCiBQQVNT
IFlldC10by1zdGFydCBDU1MgQW5pbWF0aW9ucyBhcmUgcmV0dXJuZWQgCiBQQVNTIENTUyBBbmlt
YXRpb25zIGNhbmNlbGVkIHZpYSB0aGUgQVBJIGFyZSBub3QgcmV0dXJuZWQgCiBQQVNTIENTUyBB
bmltYXRpb25zIGNhbmNlbGVkIGFuZCByZXN0YXJ0ZWQgdmlhIHRoZSBBUEkgYXJlIHJldHVybmVk
IAotRkFJTCBDU1MgQW5pbWF0aW9ucyB0YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNob3Vs
ZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29ydGluZyBhc3NlcnRfZXF1YWxzOiBBbmltYXRp
b24gIzEgaGFzIG51bGwgcHNldWRvIHR5cGUgZXhwZWN0ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290
ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorUEFTUyBDU1MgQW5pbWF0aW9ucyB0YXJnZXR0aW5nIChw
c2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29ydGluZyAK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxlbWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVk
LnR4dAppbmRleCBhMGM5ZDA5YzA5YzRiMzY3YzczMGNmMzNkNTkzNjk3MzlhOTNmODhkLi44ZWQ5
MjMwZDg3ZDg4YTg3OWUxZDYwNjU2ZmNkMWM5YWJjYjJhOWQyIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9F
bGVtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9F
bGVtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMTcsOCArMTcs
OCBAQCBQQVNTIGdldEFuaW1hdGlvbnMgcmV0dXJucyBvYmplY3RzIHdpdGggdGhlIHNhbWUgaWRl
bnRpdHkKIFBBU1MgZ2V0QW5pbWF0aW9ucyBmb3IgQ1NTIEFuaW1hdGlvbnMgdGhhdCBhcmUgY2Fu
Y2VsZWQgCiBQQVNTIGdldEFuaW1hdGlvbnMgZm9yIENTUyBBbmltYXRpb25zIGZvbGxvd3MgYW5p
bWF0aW9uLW5hbWUgb3JkZXIgCiBQQVNTIHsgc3VidHJlZTogZmFsc2UgfSBvbiBhIGxlYWYgZWxl
bWVudCByZXR1cm5zIHRoZSBlbGVtZW50J3MgYW5pbWF0aW9ucyBhbmQgaWdub3JlIHBzZXVkby1l
bGVtZW50cyAKLUZBSUwgeyBzdWJ0cmVlOiB0cnVlIH0gb24gYSBsZWFmIGVsZW1lbnQgcmV0dXJu
cyB0aGUgZWxlbWVudCdzIGFuaW1hdGlvbnMgYW5kIGl0cyBwc2V1ZG8tZWxlbWVudHMnIGFuaW1h
dGlvbnMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlvbiB0YXJnZXRpbmcgdGhlIHBhcmVudCBl
bGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCBmaXJzdCBleHBlY3RlZCAob2JqZWN0KSBudWxsIGJ1
dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitQQVNTIHsgc3VidHJlZTogdHJ1ZSB9IG9uIGEg
bGVhZiBlbGVtZW50IHJldHVybnMgdGhlIGVsZW1lbnQncyBhbmltYXRpb25zIGFuZCBpdHMgcHNl
dWRvLWVsZW1lbnRzJyBhbmltYXRpb25zIAogUEFTUyB7IHN1YnRyZWU6IGZhbHNlIH0gb24gYW4g
ZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0dXJucyBvbmx5IHRoZSBlbGVtZW50J3MgYW5pbWF0aW9u
cyAKLUZBSUwgeyBzdWJ0cmVlOiB0cnVlIH0gb24gYW4gZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0
dXJucyBhbmltYXRpb25zIGZyb20gdGhlIGVsZW1lbnQsIGl0cyBwc2V1ZG8tZWxlbWVudHMsIGl0
cyBjaGlsZCBhbmQgaXRzIGNoaWxkIHBzZXVkby1lbGVtZW50cyBhc3NlcnRfZXF1YWxzOiBUaGUg
YW5pbWF0aW9uIHRhcmdldGluZyB0aGUgcGFyZW50IGVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVk
IGZpcnN0IGV4cGVjdGVkIChvYmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmlu
ZWQKK0ZBSUwgeyBzdWJ0cmVlOiB0cnVlIH0gb24gYW4gZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0
dXJucyBhbmltYXRpb25zIGZyb20gdGhlIGVsZW1lbnQsIGl0cyBwc2V1ZG8tZWxlbWVudHMsIGl0
cyBjaGlsZCBhbmQgaXRzIGNoaWxkIHBzZXVkby1lbGVtZW50cyBhc3NlcnRfZXF1YWxzOiBUaGUg
YW5pbWF0aW9uIHRhcmdldGluZyB0aGUgOjphZnRlciBwZXN1ZG8tZWxlbWVudCBzaG91bGQgYmUg
cmV0dXJuZWQgdGhpcmQgZXhwZWN0ZWQgKHN0cmluZykgIjo6YWZ0ZXIiIGJ1dCBnb3QgKG9iamVj
dCkgbnVsbAogRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhbiBlbGVtZW50IHdpdGggbWFueSBk
ZXNjZW5kYW50cyByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSBhbGwgdGhlIGRlc2NlbmRhbnRzIGFz
c2VydF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSBjaGlsZDEgZWxlbWVudCBz
aG91bGQgYmUgcmV0dXJuZWQgc2Vjb25kIGV4cGVjdGVkIEVsZW1lbnQgbm9kZSA8ZGl2IGlkPSJj
aGlsZDEiIHN0eWxlPSJhbmltYXRpb246IGFuaW0xIDEwMHM7Ij48ZGl2IGlkPSIuLi4gYnV0IGdv
dCBFbGVtZW50IG5vZGUgPGRpdiBpZD0iZ3JhbmRjaGlsZDEiIHN0eWxlPSJhbmltYXRpb246IGFu
aW0xIDEwMHM7Ij48L2Rpdj4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1h
dGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRp
b25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggMThjMWUzMTY1YTAyZmYxNTIwZjUxZmRl
ZDJiZTdkMmQzNTYzZjczNi4uZmQyYmY1NTAyNDEyMDRjYWNkNGJhNTAzMTBlYjkwYjhhNTFiY2Ux
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUt
ZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiBQQVNTIGdldEFuaW1hdGlvbnMgZm9yIG5v
bi1hbmltYXRlZCBjb250ZW50IAogUEFTUyBnZXRBbmltYXRpb25zIGZvciBDU1MgVHJhbnNpdGlv
bnMgCi1GQUlMIENTUyBUcmFuc2l0aW9ucyB0YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNo
b3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29ydGluZyBhc3NlcnRfZXF1YWxzOiBUcmFu
c2l0aW9uICMxIGhhcyBudWxsIHBzZXVkbyB0eXBlIGV4cGVjdGVkIChvYmplY3QpIG51bGwgYnV0
IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK1BBU1MgQ1NTIFRyYW5zaXRpb25zIHRhcmdldHRp
bmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0
aW5nIAogUEFTUyBUcmFuc2l0aW9ucyBhcmUgbm90IHJldHVybmVkIGFmdGVyIHRoZXkgaGF2ZSBm
aW5pc2hlZCAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRp
b25zL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAppbmRleCBjZWYyMjU1MGMxNWZjMDU0
MDE0OWJkOGUzMjhmMDhlNjEyYjZhNzU5Li44YTY2Y2RmZDgwZmI2NjE2ZTQ1NDViMjM4ZjQ5OWZk
M2IxMjBiNGFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dApAQCAtMTA4LDE0ICsxMDgsMTQg
QEAgUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG8KIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNl
OiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3Qn
cyAiY29uc3RydWN0b3IiIHByb3BlcnR5IAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6
IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdz
IEBAdW5zY29wYWJsZXMgcHJvcGVydHkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTog
YXR0cmlidXRlIHRhcmdldCAKLUZBSUwgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1
dGUgcHNldWRvRWxlbWVudCBhc3NlcnRfdHJ1ZTogVGhlIHByb3RvdHlwZSBvYmplY3QgbXVzdCBo
YXZlIGEgcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQ
QVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0cmlidXRlIHBzZXVkb0VsZW1lbnQgCiBQ
QVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0cmlidXRlIGNvbXBvc2l0ZSAKIFBBU1Mg
S2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBvcGVyYXRpb24gZ2V0S2V5ZnJhbWVzKCkgCiBQQVNT
IEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogb3BlcmF0aW9uIHNldEtleWZyYW1lcyhvYmplY3Qp
IAogUEFTUyBLZXlmcmFtZUVmZmVjdCBtdXN0IGJlIHByaW1hcnkgaW50ZXJmYWNlIG9mIG5ldyBL
ZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSAKIFBBU1MgU3RyaW5naWZpY2F0aW9uIG9mIG5ldyBL
ZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNl
OiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJ0
YXJnZXQiIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJTCBLZXlmcmFtZUVmZmVjdCBpbnRlcmZh
Y2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkg
InBzZXVkb0VsZW1lbnQiIHdpdGggdGhlIHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJv
cGVydHkgInBzZXVkb0VsZW1lbnQiIG5vdCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KK1BBU1Mg
S2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJwc2V1ZG9FbGVtZW50IiB3aXRoIHRoZSBwcm9wZXIgdHlw
ZSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVs
bCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJjb21wb3NpdGUiIHdpdGggdGhlIHByb3Bl
ciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVj
dChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImdldEtleWZyYW1lcygpIiB3aXRo
IHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5
ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJzZXRLZXlmcmFt
ZXMob2JqZWN0KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvQW5pbWF0YWJsZS9hbmltYXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRh
YmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0CmluZGV4IDc1MTQ0MjZjYTBmMWViMTRjMjU0MzY5MjYy
YWM4ZDk1Y2Q5NDE0NTguLjVlMzFmODVhOTkyZDhhMmMyYjJmY2E1ZGZiZTg5YzBjZjI0MDlkODgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFu
aW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0CkBAIC0x
MzUsMTAgKzEzNSwxMCBAQCBQQVNTIEVsZW1lbnQuYW5pbWF0ZSgpIGNhbGxzIHBsYXkgb24gdGhl
IEFuaW1hdGlvbgogUEFTUyBFbGVtZW50LmFuaW1hdGUoKSBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5
bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFt
ZXRlciBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgCiBQQVNTIGFuaW1hdGUoKSB3aXRoIHBz
ZXVkb0VsZW1lbnQgcGFyYW1ldGVyIHdpdGhvdXQgY29udGVudCBjcmVhdGVzIGFuIEFuaW1hdGlv
biBvYmplY3QgCi1QQVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyICBj
cmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgZm9yIDo6bWFya2VyIAotUEFTUyBhbmltYXRlKCkg
d2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0
IGZvciA6OmZpcnN0LWxpbmUgCi1GQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4g
QW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgYXNz
ZXJ0X2VxdWFsczogVGhlIHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNl
bGVjdG9yIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1
bmRlZmluZWQKLUZBSUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCB3aXRob3V0IGNvbnRl
bnQgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1
ZG8tZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMg
dGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgKHN0cmluZykgIjo6YmVmb3JlIiBidXQgZ290
ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50
IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50
IGZvciA6Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdl
dHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgKHN0cmluZykgIjo6bWFya2VyIiBidXQg
Z290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVt
ZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVt
ZW50IGZvciA6OmZpcnN0LWxpbmUgYXNzZXJ0X2VxdWFsczogVGhlIHJldHVybmVkIEFuaW1hdGlv
biB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVkIChzdHJpbmcpICI6OmZpcnN0
LWxpbmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitGQUlMIGFuaW1hdGUoKSB3aXRo
IHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyICBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgZm9y
IDo6bWFya2VyIFR5cGUgZXJyb3IKK0ZBSUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBw
YXJhbWV0ZXIgIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCBmb3IgOjpmaXJzdC1saW5lIFR5
cGUgZXJyb3IKK1BBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24g
b2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCAKK1BBU1MgYW5pbWF0
ZSgpIHdpdGggcHNldWRvRWxlbWVudCB3aXRob3V0IGNvbnRlbnQgY3JlYXRlcyBhbiBBbmltYXRp
b24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCAKK0ZBSUwgYW5p
bWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0
aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCBmb3IgOjptYXJrZXIgVHlwZSBlcnJvcgorRkFJTCBh
bmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5n
IHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGZvciA6OmZpcnN0LWxpbmUgVHlwZSBlcnJvcgog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1h
bmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQK
aW5kZXggMzY1MDIyN2NmMGYxMmRmMjVkNzllYzBjM2EwYjcxZDUyMTZlMDg3NS4uZDU1Njc2MDgw
NzAzYjY0YzJkYjkwOWIwODljMzNhMTM0M2VlYjNiZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2Vz
L0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9B
bmltYXRpb24vY29tbWl0U3R5bGVzLWV4cGVjdGVkLnR4dApAQCAtMTEsMTYgKzExLDEyIEBAIEZB
SUwgQ29tbWl0cyB0aGUgaW50ZXJtZWRpYXRlIHZhbHVlIG9mIGFuIGFuaW1hdGlvbiBpbiB0aGUg
bWlkZGxlIG9mIHN0YWNrIGFzc2VyCiBGQUlMIENvbW1pdCBjb21wb3NpdGVzIG9uIHRvcCBvZiB0
aGUgdW5kZXJseWluZyB2YWx1ZSBhc3NlcnRfYXBwcm94X2VxdWFsczogZXhwZWN0ZWQgMC41ICsv
LSAwLjAwMDEgYnV0IGdvdCAwLjIwMDAwMDAwMjk4MDIzMjI0CiBQQVNTIFRyaWdnZXJzIG11dGF0
aW9uIG9ic2VydmVycyB3aGVuIHVwZGF0aW5nIHN0eWxlIAogRkFJTCBEb2VzIE5PVCB0cmlnZ2Vy
IG11dGF0aW9uIG9ic2VydmVycyB3aGVuIHRoZSBjaGFuZ2UgdG8gc3R5bGUgaXMgcmVkdW5kYW50
IGFzc2VydF9lcXVhbHM6IFNob3VsZCBoYXZlIG5vIG11dGF0aW9uIHJlY29yZHMgZXhwZWN0ZWQg
MCBidXQgZ290IDEKLUZBSUwgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBhIHBzZXVk
byBlbGVtZW50IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAgIGFuaW1h
dGlvbi5jb21taXRTdHlsZXMoKTsKLSAgfSIgZGlkIG5vdCB0aHJvdworUEFTUyBUaHJvd3MgaWYg
dGhlIHRhcmdldCBlbGVtZW50IGlzIGEgcHNldWRvIGVsZW1lbnQgCiBQQVNTIFRocm93cyBpZiB0
aGUgdGFyZ2V0IGVsZW1lbnQgaXMgbm90IHNvbWV0aGluZyB3aXRoIGEgc3R5bGUgYXR0cmlidXRl
IAogUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlZmZlY3QgaXMgZGlzcGxheTpub25lIAogUEFT
UyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlZmZlY3QncyBhbmNlc3RvciBpcyBkaXNwbGF5Om5vbmUg
CiBQQVNTIFRyZWF0cyBkaXNwbGF5OmNvbnRlbnRzIGFzIHJlbmRlcmVkIAogUEFTUyBUcmVhdHMg
ZGlzcGxheTpjb250ZW50cyBpbiBhIGRpc3BsYXk6bm9uZSBzdWJ0cmVlIGFzIG5vdCByZW5kZXJl
ZCAKIFBBU1MgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWZmZWN0IGlzIGRpc2Nvbm5lY3RlZCAKLUZB
SUwgQ2hlY2tzIHRoZSBwc2V1ZG8gZWxlbWVudCBjb25kaXRpb24gYmVmb3JlIHRoZSBub3QgcmVu
ZGVyZWQgY29uZGl0aW9uIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAg
IGFuaW1hdGlvbi5jb21taXRTdHlsZXMoKTsKLSAgfSIgdGhyZXcgb2JqZWN0ICJJbnZhbGlkU3Rh
dGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiIgdGhhdCBpcyBub3Qg
YSBET01FeGNlcHRpb24gTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3I6IHByb3BlcnR5ICJjb2Rl
IiBpcyBlcXVhbCB0byAxMSwgZXhwZWN0ZWQgNworUEFTUyBDaGVja3MgdGhlIHBzZXVkbyBlbGVt
ZW50IGNvbmRpdGlvbiBiZWZvcmUgdGhlIG5vdCByZW5kZXJlZCBjb25kaXRpb24gCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFu
aW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZl
bnRzLWV4cGVjdGVkLnR4dAppbmRleCBkMzA5YTQ3ODI3OTIyZTQ0NGZkNThkOTliYzg3Y2NmMzYw
NWRlMzAxLi44YTYwYzEzOWI5NGRlNjY1M2Q0YWY3ZDVkYzM4ZTA1ZDQ1MTljNTA2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3N0eWxlLWNoYW5nZS1l
dmVudHMtZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsMTAgQEAKIAotRkFJTCBBbGwgcHJvcGVydHkg
a2V5cyBhcmUgcmVjb2duaXplZCBhc3NlcnRfaW5fYXJyYXk6IFRlc3QgcHJvcGVydHkgJ3BzZXVk
b0VsZW1lbnQnIHNob3VsZCBiZSBvbmUgb2YgdGhlIHByb3BlcnRpZXMgb24gIEtleWZyYW1lRWZm
ZWN0IHZhbHVlICJwc2V1ZG9FbGVtZW50IiBub3QgaW4gYXJyYXkgWyJnZXRUaW1pbmciLCAiZ2V0
Q29tcHV0ZWRUaW1pbmciLCAidXBkYXRlVGltaW5nIiwgInRhcmdldCIsICJpdGVyYXRpb25Db21w
b3NpdGUiLCAiY29tcG9zaXRlIiwgImdldEtleWZyYW1lcyIsICJzZXRLZXlmcmFtZXMiLCAiS2V5
ZnJhbWVFZmZlY3QgY29uc3RydWN0b3IiLCAiS2V5ZnJhbWVFZmZlY3QgY29weSBjb25zdHJ1Y3Rv
ciJdCitQQVNTIEFsbCBwcm9wZXJ0eSBrZXlzIGFyZSByZWNvZ25pemVkIAogUEFTUyBLZXlmcmFt
ZUVmZmVjdC5nZXRUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAK
IFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0Q29tcHV0ZWRUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBh
IHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QudXBkYXRlVGltaW5nIGRv
ZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0
LnRhcmdldCBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAorUEFTUyBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2Ug
ZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0Lml0ZXJhdGlvbkNvbXBvc2l0ZSBkb2VzIE5PVCB0
cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC5jb21wb3Np
dGUgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVF
ZmZlY3QuZ2V0S2V5ZnJhbWVzIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQg
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFu
aW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDAzZjVmYmQyYzJlZWNjODRiOTc2MmEwMjRjNTJlMGI5ZjU5ZDMwMmUuLmM1MTI4MDJjNTU0
MTRiNzdmYzQ1ZTM5YzgyZmU5YWFjNzYyNDNkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9L
ZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlm
cmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CkBAIC00LDE4ICs0LDE4IEBAIFBBU1MgVGVz
dCBzZXR0aW5nIHRhcmdldCBmcm9tIG51bGwgdG8gYSB2YWxpZCB0YXJnZXQKIFBBU1MgVGVzdCBz
ZXR0aW5nIHRhcmdldCBmcm9tIGEgdmFsaWQgdGFyZ2V0IHRvIG51bGwgCiBQQVNTIFRlc3Qgc2V0
dGluZyB0YXJnZXQgZnJvbSBhIHZhbGlkIHRhcmdldCB0byBhbm90aGVyIHRhcmdldCAKIFBBU1Mg
VGFyZ2V0IGVsZW1lbnQgY2FuIGJlIHNldCB0byBhIGZvcmVpZ24gZWxlbWVudCAKLUZBSUwgQ2hh
bmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5n
IHRhcmdldCBmaXJzdC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgYXQgNTAlIHByb2dyZXNzIGFmdGVy
IHNldHRpbmcgbmV3IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMTBweCIKLUZBSUwg
Q2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0
aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9n
cmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEw
cHgiCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBzZXVkb0Vs
ZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVs
bCB0byBhbiBleGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJz
dC4gCiBQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCB0
byB0aGUgb3JpZ2luYXRpbmcgZWxlbWVudC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBl
eGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5n
IHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVk
by1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIg
YnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGFu
IGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRp
bmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1
cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0
ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1l
eGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5n
IHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVk
by1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIg
YnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGEg
bm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNl
dHRpbmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQg
KGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhw
ZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxs
IHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIGFz
c2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJn
ZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJv
bSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1ZG9FbGVt
ZW50IGZpcnN0LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUgcHJvZ3Jlc3MgYWZ0ZXIgc2V0
dGluZyBuZXcgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIxMHB4IgorUEFTUyBDaGFu
Z2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRv
LWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4g
ZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGlu
ZyBwc2V1ZG9FbGVtZW50LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5n
IHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0
LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50
IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gCitQQVNT
IENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQg
c2V0dGluZyB0YXJnZXQgZmlyc3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBh
IG5vbi1leGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4g
CiBQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCB0
byB0aGUgb3JpZ2luYXRpbmcgZWxlbWVudC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBl
eGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0
dGluZyB0YXJnZXQuIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBw
c2V1ZG8tZWxlbWVudCAocHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZv
cmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJv
bSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQg
Ynkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBvZiAybmQgZWxl
bWVudCAoY3VycmVudGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZmZWN0IHRhcmdl
dCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMjBweCIKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9t
IGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVu
dCBieSBzZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3Bl
Y2lmaWVkIHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcp
ICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRh
cmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1
ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6IFZhbHVl
IG9mIDJuZCBlbGVtZW50IChjdXJyZW50bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5nIHRoZSBl
ZmZlY3QgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIyMHB4IgorUEFTUyBDaGFuZ2Ug
dGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVk
by1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFu
IGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBz
ZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhp
c3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRp
bmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEg
ZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0Vs
ZW1lbnQuIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396097</attachid>
            <date>2020-04-10 10:15:54 -0700</date>
            <delta_ts>2020-04-15 06:26:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200410191553.patch</filename>
            <type>text/plain</type>
            <size>43192</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5ODY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2YzYzBhMWY1ZjU0NjRk
YzY2Mzc1NDkzZjkwMzU3MjlhZTk3ZDdmMC4uNGQ3NTM0NzRjMGYwOWFkYTZlMDBhZTNiMDhkYzRl
MGFjZTM3ZTQ2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIwLTA0LTA5ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LAorICAgICAgICBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZCBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQgYSBQc2V1ZG9F
bGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBpdCdzIG5vdCBi
ZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBvZiBhIDo6YmVm
b3JlIG9yIDo6YWZ0ZXIKKyAgICAgICAgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQiIHN0eWxlIHJ1
bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3IgInBzZXVkb0Vs
ZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwgd2UgZW5zdXJlIGEgUHNl
dWRvRWxlbWVudAorICAgICAgICBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhvc3QgZWxlbWVu
dCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQgZHVyaW5nIHN0
eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMgYXJlIGFwcGxpZWQgdG8gc3VjaCBwc2V1ZG8tZWxl
bWVudHMKKyAgICAgICAgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1RhcmdldGVkQnlLZXlm
cmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBpbmRpY2F0ZXMg
dGhhdCBhIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFyZ2V0cyB0aGlzIHBzZXVkby1l
bGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBIYW5kbGUgdGhlIG5ldyBLZXlm
cmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0eSBpbiB0aGUgS2V5ZnJhbWVF
ZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6Y29w
eVByb3BlcnRpZXNGcm9tU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0
OjpiaW5kaW5nc1RhcmdldCBjb25zdCk6IFJldHVybiB0aGUgdGFyZ2V0J3MgaG9zdCBlbGVtZW50
IGlmIHRoZSB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OmVu
c3VyZVBzZXVkb0VsZW1lbnQpOiBVdGlsaXR5IGZ1bmN0aW9uIGRlc2lnbmVkIHRvIGd1YXJhbnRl
ZSBhIHBzZXVkby1lbGVtZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZSBpcyBhdmFpbGFibGUgZm9y
IHRoZSBwcm92aWRlZCBob3N0IGVsZW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVm
ZmVjdDo6c2V0QmluZGluZ3NUYXJnZXQpOiBXaGVuIHRoZSBLZXlmcmFtZUVmZmVjdC50YXJnZXQg
cHJvcGVydHkgY2hhbmdlcywgc2V0IGl0IGFzIHRoZSB0YXJnZXQgZGlyZWN0bHkgb3Igc2V0IHRo
ZSBwc2V1ZG8tZWxlbWVudCBtYXRjaGluZyB0aGUKKyAgICAgICAgY3VycmVudCB2YWx1ZSBmb3Ig
S2V5ZnJhbWVFZmZlY3QucHNldWRvRWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1l
RWZmZWN0Ojpwc2V1ZG9FbGVtZW50IGNvbnN0KTogUmV0dXJuIHRoZSBwc2V1ZG8tZWxlbWVudCBz
ZWxlY3RvciBvZiB0aGUgY3VycmVudCB0YXJnZXQgaWYgaXQncyBhIHBzZXVkby1lbGVtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1lbnQpOiBXaGVu
IHRoZSBLZXlmcmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IHByb3BlcnR5IGNoYW5nZXMsIHNldCB0
aGUgdGFyZ2V0IGJhc2VkIG9uIHRoZSBjdXJyZW50IEtleWZyYW1lRWZmZWN0LnRhcmdldCB2YWx1
ZQorICAgICAgICBhbmQgdGhlIG5ldyBwc2V1ZG8tZWxlbWVudCBzZWxlY3Rvci4KKyAgICAgICAg
KFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBhIFBzZXVkb0VsZW1lbnQgbXVzdCByZW1haW4gY3JlYXRlZCBmb3Ig
dGhpcyBLZXlmcmFtZUVmZmVjdCwgd2hpY2ggaXMgb25seSBuZWNlc3NhcnkgZm9yCisgICAgICAg
IEpTLW9yaWdpbmF0ZWQgZWZmZWN0cyB0YXJnZXRpbmcgYSBwc2V1ZG8tZWxlbWVudC4KKyAgICAg
ICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3QuaWRsOgorICAgICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlv
bnMuaDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbDoKKyAg
ICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJ
bmRpY2F0ZXMgd2hldGhlciBvbmUgb3IgbW9yZSBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgaW4gdGhlIHN0YWNrIHRhcmdldCB0aGUgUHNldWRvRWxlbWVudCBvd25pbmcKKyAgICAgICAg
dGhpcyBzdGFjay4KKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oOgor
ICAgICAgICAqIGRvbS9Qc2V1ZG9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVk
b0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9y
IG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQg
dGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6Omlz
VGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0
cnVlIHdoZW4gb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRo
ZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRv
RWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRl
ckdlbmVyYXRlZENvbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJl
bmRlcmVycyk6IFJlbW92ZSB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0
eSB3YXMgc2V0IHNpbmNlIGl0J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNh
bGxlZCBkdWUgdG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZQorICAgICAgICBlZmZlY3RzIHRhcmdl
dGluZyB0aGUgZ2l2ZW4gcHNldWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlv
biB0aGF0IHRoZXJlIGFyZSBzdWNoIGtleWZyYW1lIGVmZmVjdHMgaW4gY2FzZSBubyAiY29udGVu
dCIgcHJvcGVydHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRyZWVVcGRhdGVy
OjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSByZW1vdmUgcHNl
dWRvLWVsZW1lbnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVj
dHMgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogc3R5
bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlRyZWVS
ZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5pbWF0ZWQgc3R5bGUgcmVzb2x1
dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpTLW9yaWdpbmF0ZWQga2V5ZnJh
bWUgZWZmZWN0cy4KKwogMjAyMC0wNC0xMCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CiAKICAgICAgICAgSW50cm9kdWNlIGEgUmVhbHRpbWVNZWRpYVNvdXJjZSBvYnNlcnZlciBk
ZWRpY2F0ZWQgdG8gcmVjZWl2aW5nIGF1ZGlvIHNhbXBsZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
ZwppbmRleCBhNzRiNGE2NjZmMjU0OTlhMDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYy
ODdmZjc1NjdhMTljY2JjZGU3MTVlNGMwOTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnCkBAIC00MDEsNiArNDAxLDggQEAgRU5BQkxFX1dFQkdQVV9NQUNPU19TSU5DRV8xMDE0ID0g
RU5BQkxFX1dFQkdQVTsKIAogRU5BQkxFX1dFQlhSID0gOwogCitFTkFCTEVfV0VCX0FOSU1BVElP
TlMgPSBFTkFCTEVfV0VCX0FOSU1BVElPTlM7CisKIEVOQUJMRV9XRUJfQVBJX1NUQVRJU1RJQ1Mg
PSA7CiAKIEVOQUJMRV9XRUJfQVVESU8gPSBFTkFCTEVfV0VCX0FVRElPOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9T
b3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRl
eCBhNzRiNGE2NjZmMjU0OTlhMDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYyODdmZjc1
NjdhMTljY2JjZGU3MTVlNGMwOTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4
IEBAIEVOQUJMRV9XRUJHUFVfTUFDT1NfU0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVO
QUJMRV9XRUJYUiA9IDsKIAorRU5BQkxFX1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklN
QVRJT05TOworCiBFTkFCTEVfV0VCX0FQSV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FV
RElPID0gRU5BQkxFX1dFQl9BVURJTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1NvdXJjZS9XZWJDb3JlL1BB
TC9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCBhNzRiNGE2NjZm
MjU0OTlhMDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYyODdmZjc1NjdhMTljY2JjZGU3
MTVlNGMwOTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0Nv
bmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC00MDEsNiArNDAxLDggQEAg
RU5BQkxFX1dFQkdQVV9NQUNPU19TSU5DRV8xMDE0ID0gRU5BQkxFX1dFQkdQVTsKIAogRU5BQkxF
X1dFQlhSID0gOwogCitFTkFCTEVfV0VCX0FOSU1BVElPTlMgPSBFTkFCTEVfV0VCX0FOSU1BVElP
TlM7CisKIEVOQUJMRV9XRUJfQVBJX1NUQVRJU1RJQ1MgPSA7CiAKIEVOQUJMRV9XRUJfQVVESU8g
PSBFTkFCTEVfV0VCX0FVRElPOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdC5jcHAKaW5kZXggNWYyYTYxZjAyMGJiM2MwYzk0ZmM0OTFkNzYxYWExNjFhZThhNDUzYy4u
NGRiOGE0MzgwZGMwMjRjNTY2NWQ5OWJjZTI4NDdjMmM2NDM3ZmZmMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5j
bHVkZSAiSlNLZXlmcmFtZUVmZmVjdC5oIgogI2luY2x1ZGUgIktleWZyYW1lRWZmZWN0U3RhY2su
aCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiUHNldWRvRWxlbWVudC5oIgogI2lu
Y2x1ZGUgIlJlbmRlckJveC5oIgogI2luY2x1ZGUgIlJlbmRlckJveE1vZGVsT2JqZWN0LmgiCiAj
aW5jbHVkZSAiUmVuZGVyRWxlbWVudC5oIgpAQCAtNDg1LDYgKzQ4NiwxMSBAQCBFeGNlcHRpb25P
cjxSZWY8S2V5ZnJhbWVFZmZlY3Q+PiBLZXlmcmFtZUVmZmVjdDo6Y3JlYXRlKEpTR2xvYmFsT2Jq
ZWN0JiBsZXhpY2FsRwogICAgICAgICAgICAgdGltaW5nLmR1cmF0aW9uID0gZHVyYXRpb247CiAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBhdXRvIGtleWZyYW1lRWZmZWN0T3B0aW9ucyA9
IFdURjo6Z2V0PEtleWZyYW1lRWZmZWN0T3B0aW9ucz4ob3B0aW9uc1ZhbHVlKTsKKworICAgICAg
ICAgICAgYXV0byBzZXRQc2V1ZG9FbGVtZW50UmVzdWx0ID0ga2V5ZnJhbWVFZmZlY3QtPnNldFBz
ZXVkb0VsZW1lbnQoa2V5ZnJhbWVFZmZlY3RPcHRpb25zLnBzZXVkb0VsZW1lbnQpOworICAgICAg
ICAgICAgaWYgKHNldFBzZXVkb0VsZW1lbnRSZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAgICAg
ICAgICAgICAgcmV0dXJuIHNldFBzZXVkb0VsZW1lbnRSZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigp
OworCiAgICAgICAgICAgICB0aW1pbmcgPSB7CiAgICAgICAgICAgICAgICAga2V5ZnJhbWVFZmZl
Y3RPcHRpb25zLmR1cmF0aW9uLAogICAgICAgICAgICAgICAgIGtleWZyYW1lRWZmZWN0T3B0aW9u
cy5pdGVyYXRpb25zLApAQCAtNTI4LDYgKzUzNCw3IEBAIEtleWZyYW1lRWZmZWN0OjpLZXlmcmFt
ZUVmZmVjdChFbGVtZW50KiB0YXJnZXQpCiB2b2lkIEtleWZyYW1lRWZmZWN0Ojpjb3B5UHJvcGVy
dGllc0Zyb21Tb3VyY2UoUmVmPEtleWZyYW1lRWZmZWN0PiYmIHNvdXJjZSkKIHsKICAgICBtX3Rh
cmdldCA9IHNvdXJjZS0+bV90YXJnZXQ7CisgICAgbV9wc2V1ZG9JZCA9IHNvdXJjZS0+bV9wc2V1
ZG9JZDsKICAgICBtX2NvbXBvc2l0ZU9wZXJhdGlvbiA9IHNvdXJjZS0+bV9jb21wb3NpdGVPcGVy
YXRpb247CiAgICAgbV9pdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24gPSBzb3VyY2UtPm1faXRl
cmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uOwogCkBAIC0xMDY2LDYgKzEwNzMsNDUgQEAgdm9pZCBL
ZXlmcmFtZUVmZmVjdDo6c2V0QW5pbWF0aW9uKFdlYkFuaW1hdGlvbiogYW5pbWF0aW9uKQogICAg
IHVwZGF0ZUVmZmVjdFN0YWNrTWVtYmVyc2hpcCgpOwogfQogCitFbGVtZW50KiBLZXlmcmFtZUVm
ZmVjdDo6YmluZGluZ3NUYXJnZXQoKSBjb25zdAoreworICAgIGlmIChpczxQc2V1ZG9FbGVtZW50
PihtX3RhcmdldC5nZXQoKSkpCisgICAgICAgIHJldHVybiBkb3duY2FzdDxQc2V1ZG9FbGVtZW50
PigqbV90YXJnZXQpLmhvc3RFbGVtZW50KCk7CisgICAgcmV0dXJuIG1fdGFyZ2V0LmdldCgpOwor
fQorCitzdGF0aWMgRWxlbWVudCogZW5zdXJlUHNldWRvRWxlbWVudChFbGVtZW50KiBob3N0LCBQ
c2V1ZG9JZCBwc2V1ZG9JZCkKK3sKKyAgICBBU1NFUlQoaG9zdCk7CisKKyAgICBpZiAocHNldWRv
SWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkgeworICAgICAgICBpZiAoYXV0byogYmVmb3JlUHNldWRv
RWxlbWVudCA9IGhvc3QtPmJlZm9yZVBzZXVkb0VsZW1lbnQoKSkKKyAgICAgICAgICAgIHJldHVy
biBiZWZvcmVQc2V1ZG9FbGVtZW50OworICAgICAgICBhdXRvIG5ld0JlZm9yZVBzZXVkb0VsZW1l
bnQgPSBQc2V1ZG9FbGVtZW50OjpjcmVhdGUoKmhvc3QsIHBzZXVkb0lkKTsKKyAgICAgICAgaG9z
dC0+c2V0QmVmb3JlUHNldWRvRWxlbWVudChXVEZNb3ZlKG5ld0JlZm9yZVBzZXVkb0VsZW1lbnQp
KTsKKyAgICAgICAgcmV0dXJuIGhvc3QtPmJlZm9yZVBzZXVkb0VsZW1lbnQoKTsKKyAgICB9CisK
KyAgICBpZiAocHNldWRvSWQgPT0gUHNldWRvSWQ6OkFmdGVyKSB7CisgICAgICAgIGlmIChhdXRv
KiBhZnRlclBzZXVkb0VsZW1lbnQgPSBob3N0LT5hZnRlclBzZXVkb0VsZW1lbnQoKSkKKyAgICAg
ICAgICAgIHJldHVybiBhZnRlclBzZXVkb0VsZW1lbnQ7CisgICAgICAgIGF1dG8gbmV3QWZ0ZXJQ
c2V1ZG9FbGVtZW50ID0gUHNldWRvRWxlbWVudDo6Y3JlYXRlKCpob3N0LCBwc2V1ZG9JZCk7Cisg
ICAgICAgIGhvc3QtPnNldEFmdGVyUHNldWRvRWxlbWVudChXVEZNb3ZlKG5ld0FmdGVyUHNldWRv
RWxlbWVudCkpOworICAgICAgICByZXR1cm4gaG9zdC0+YWZ0ZXJQc2V1ZG9FbGVtZW50KCk7Cisg
ICAgfQorCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9
CisKK3ZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNldEJpbmRpbmdzVGFyZ2V0KFJlZlB0cjxFbGVtZW50
PiYmIHRhcmdldCkKK3sKKyAgICBpZiAobV9wc2V1ZG9JZCAmJiB0YXJnZXQpCisgICAgICAgIHNl
dFRhcmdldChlbnN1cmVQc2V1ZG9FbGVtZW50KHRhcmdldC5nZXQoKSwgKm1fcHNldWRvSWQpKTsK
KyAgICBlbHNlCisgICAgICAgIHNldFRhcmdldChXVEZNb3ZlKHRhcmdldCkpOworfQorCiB2b2lk
IEtleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQoUmVmUHRyPEVsZW1lbnQ+JiYgbmV3VGFyZ2V0KQog
ewogICAgIGlmIChtX3RhcmdldC5nZXQoKSA9PSBuZXdUYXJnZXQuZ2V0KCkpCkBAIC0xMDk0LDYg
KzExNDAsNTAgQEAgdm9pZCBLZXlmcmFtZUVmZmVjdDo6c2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50
PiYmIG5ld1RhcmdldCkKICAgICAgICAgbV9pblRhcmdldEVmZmVjdFN0YWNrID0gbV90YXJnZXQt
PmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5hZGRFZmZlY3QoKnRoaXMpOwogfQogCitjb25z
dCBTdHJpbmcgS2V5ZnJhbWVFZmZlY3Q6OnBzZXVkb0VsZW1lbnQoKSBjb25zdAoreworICAgIC8v
IGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy93ZWItYW5pbWF0aW9ucy8jZG9tLWtleWZyYW1lZWZm
ZWN0LXBzZXVkb2VsZW1lbnQKKworICAgIC8vIFRoZSB0YXJnZXQgcHNldWRvLXNlbGVjdG9yLiBu
dWxsIGlmIHRoaXMgZWZmZWN0IGhhcyBubyBlZmZlY3QgdGFyZ2V0IG9yIGlmIHRoZSBlZmZlY3Qg
dGFyZ2V0IGlzIGFuIGVsZW1lbnQgKGkuZS4gbm90IGEgcHNldWRvLWVsZW1lbnQpLgorICAgIC8v
IFdoZW4gdGhlIGVmZmVjdCB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudCwgdGhpcyBzcGVjaWZp
ZXMgdGhlIHBzZXVkby1lbGVtZW50IHNlbGVjdG9yIChlLmcuIDo6YmVmb3JlKS4KKyAgICBpZiAo
aXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQuZ2V0KCkpKQorICAgICAgICByZXR1cm4gUHNldWRv
RWxlbWVudDo6cHNldWRvRWxlbWVudE5hbWVGb3JFdmVudHMoZG93bmNhc3Q8UHNldWRvRWxlbWVu
dD4oKm1fdGFyZ2V0KS5wc2V1ZG9JZCgpKTsKKyAgICByZXR1cm4geyB9OworfQorCitFeGNlcHRp
b25Pcjx2b2lkPiBLZXlmcmFtZUVmZmVjdDo6c2V0UHNldWRvRWxlbWVudChjb25zdCBTdHJpbmcm
IHBzZXVkb0VsZW1lbnQpCit7CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL3dlYi1h
bmltYXRpb25zLyNkb20ta2V5ZnJhbWVlZmZlY3QtcHNldWRvZWxlbWVudAorCisgICAgLy8gT24g
c2V0dGluZywgc2V0cyB0aGUgdGFyZ2V0IHBzZXVkby1zZWxlY3RvciBvZiB0aGUgYW5pbWF0aW9u
IGVmZmVjdCB0byB0aGUgcHJvdmlkZWQgdmFsdWUgYWZ0ZXIgYXBwbHlpbmcgdGhlIGZvbGxvd2lu
ZyBleGNlcHRpb25zOgorICAgIC8vCisgICAgLy8gSWYgdGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5v
dCBudWxsIG9yIGEgc3ludGFjdGljYWxseSB2YWxpZCB0aGUgdXNlciBhZ2VudCBtdXN0IHRocm93
IGEgRE9NRXhjZXB0aW9uIHdpdGggZXJyb3IgbmFtZSBUeXBlRXJyb3IgYW5kIGxlYXZlIHRoZQor
ICAgIC8vIHRhcmdldCBwc2V1ZG8tc2VsZWN0b3Igb2YgdGhpcyBhbmltYXRpb24gZWZmZWN0IHVu
Y2hhbmdlZC4KKyAgICAvLyBJZiBvbmUgb2YgdGhlIGxlZ2FjeSBTZWxlY3RvcnMgTGV2ZWwgMiBz
aW5nbGUtY29sb24gc2VsZWN0b3JzICgnOmJlZm9yZScsICc6YWZ0ZXInLCAnOmZpcnN0LWxldHRl
cicsIG9yICc6Zmlyc3QtbGluZScpIGlzIHNwZWNpZmllZCwgdGhlIHRhcmdldAorICAgIC8vIHBz
ZXVkby1zZWxlY3RvciBtdXN0IGJlIHNldCB0byB0aGUgZXF1aXZhbGVudCB0d28tY29sb24gc2Vs
ZWN0b3IgKGUuZy4gJzo6YmVmb3JlJykuCisKKyAgICBpZiAoIXBzZXVkb0VsZW1lbnQpCisgICAg
ICAgIG1fcHNldWRvSWQgPSBXVEY6Om51bGxvcHQ7CisgICAgZWxzZSBpZiAocHNldWRvRWxlbWVu
dCA9PSAiOjpiZWZvcmUiIHx8IHBzZXVkb0VsZW1lbnQgPT0gIjpiZWZvcmUiKQorICAgICAgICBt
X3BzZXVkb0lkID0gUHNldWRvSWQ6OkJlZm9yZTsKKyAgICBlbHNlIGlmIChwc2V1ZG9FbGVtZW50
ID09ICI6OmFmdGVyIiB8fCBwc2V1ZG9FbGVtZW50ID09ICI6YWZ0ZXIiKQorICAgICAgICBtX3Bz
ZXVkb0lkID0gUHNldWRvSWQ6OkFmdGVyOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIEV4Y2Vw
dGlvbiB7IFR5cGVFcnJvciB9OworCisgICAgaWYgKCFtX3BzZXVkb0lkKSB7CisgICAgICAgIGlm
IChpczxQc2V1ZG9FbGVtZW50PihtX3RhcmdldC5nZXQoKSkpCisgICAgICAgICAgICBzZXRUYXJn
ZXQoZG93bmNhc3Q8UHNldWRvRWxlbWVudD4oKm1fdGFyZ2V0KS5ob3N0RWxlbWVudCgpKTsKKyAg
ICB9IGVsc2UgeworICAgICAgICBpZiAoaXM8UHNldWRvRWxlbWVudD4obV90YXJnZXQuZ2V0KCkp
KQorICAgICAgICAgICAgc2V0VGFyZ2V0KGVuc3VyZVBzZXVkb0VsZW1lbnQoZG93bmNhc3Q8UHNl
dWRvRWxlbWVudD4oKm1fdGFyZ2V0KS5ob3N0RWxlbWVudCgpLCAqbV9wc2V1ZG9JZCkpOworICAg
ICAgICBlbHNlIGlmIChhdXRvKiB0YXJnZXQgPSBtX3RhcmdldC5nZXQoKSkKKyAgICAgICAgICAg
IHNldFRhcmdldChlbnN1cmVQc2V1ZG9FbGVtZW50KHRhcmdldCwgKm1fcHNldWRvSWQpKTsKKyAg
ICB9CisKKyAgICByZXR1cm4geyB9OworfQorCiB2b2lkIEtleWZyYW1lRWZmZWN0OjphcHBseShS
ZW5kZXJTdHlsZSYgdGFyZ2V0U3R5bGUpCiB7CiAgICAgaWYgKCFtX3RhcmdldCkKQEAgLTE2NjMs
NCArMTc1Myw5IEBAIGJvb2wgS2V5ZnJhbWVFZmZlY3Q6OmNvbXB1dGVUcmFuc2Zvcm1lZEV4dGVu
dFZpYU1hdHJpeChjb25zdCBGbG9hdFJlY3QmIHJlbmRlcmVyCiAgICAgcmV0dXJuIHRydWU7CiB9
CiAKK2Jvb2wgS2V5ZnJhbWVFZmZlY3Q6OnJlcXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fYmxlbmRpbmdLZXlmcmFtZXNTb3VyY2UgPT0gQmxlbmRpbmdLZXlmcmFt
ZXNTb3VyY2U6OldlYkFuaW1hdGlvbiAmJiBpczxQc2V1ZG9FbGVtZW50PihtX3RhcmdldC5nZXQo
KSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0LmgKaW5kZXggYmU4YjZkOWY0YzlkODcyZThiMDk1MzIxMzM0NWVkZTM0
OTdkZmZkNy4uODBmN2MzOTVhNWJlZTdlNDg5NzM3ODBmN2ViMzI1NGU3MDYwNzMyMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKQEAgLTEwMSw5ICsxMDEsMTUg
QEAgcHVibGljOgogCiAgICAgY29uc3QgVmVjdG9yPFBhcnNlZEtleWZyYW1lPiYgcGFyc2VkS2V5
ZnJhbWVzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJzZWRLZXlmcmFtZXM7IH0KIAorICAgIEVsZW1l
bnQqIGJpbmRpbmdzVGFyZ2V0KCkgY29uc3Q7CisgICAgdm9pZCBzZXRCaW5kaW5nc1RhcmdldChS
ZWZQdHI8RWxlbWVudD4mJik7CisKICAgICBFbGVtZW50KiB0YXJnZXQoKSBjb25zdCB7IHJldHVy
biBtX3RhcmdldC5nZXQoKTsgfQogICAgIHZvaWQgc2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50PiYm
KTsKIAorICAgIGNvbnN0IFN0cmluZyBwc2V1ZG9FbGVtZW50KCkgY29uc3Q7CisgICAgRXhjZXB0
aW9uT3I8dm9pZD4gc2V0UHNldWRvRWxlbWVudChjb25zdCBTdHJpbmcmKTsKKwogICAgIFZlY3Rv
cjxKU0M6OlN0cm9uZzxKU0M6OkpTT2JqZWN0Pj4gZ2V0S2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxP
YmplY3QmKTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRLZXlmcmFtZXMoSlNDOjpKU0dsb2Jh
bE9iamVjdCYsIEpTQzo6U3Ryb25nPEpTQzo6SlNPYmplY3Q+JiYpOwogCkBAIC0xNTcsNiArMTYz
LDggQEAgcHVibGljOgogCiAgICAgY29uc3QgUmVuZGVyU3R5bGUqIHVuYW5pbWF0ZWRTdHlsZSgp
IGNvbnN0IHsgcmV0dXJuIG1fdW5hbmltYXRlZFN0eWxlLmdldCgpOyB9CiAKKyAgICBib29sIHJl
cXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0OworCiBwcml2YXRlOgogICAgIEtleWZyYW1lRWZm
ZWN0KEVsZW1lbnQqKTsKIApAQCAtMTkyLDYgKzIwMCw3IEBAIHByaXZhdGU6CiAgICAgVmVjdG9y
PFBhcnNlZEtleWZyYW1lPiBtX3BhcnNlZEtleWZyYW1lczsKICAgICBWZWN0b3I8QWNjZWxlcmF0
ZWRBY3Rpb24+IG1fcGVuZGluZ0FjY2VsZXJhdGVkQWN0aW9uczsKICAgICBXZWFrUHRyPEVsZW1l
bnQ+IG1fdGFyZ2V0OworICAgIE9wdGlvbmFsPFBzZXVkb0lkPiBtX3BzZXVkb0lkOwogCiAgICAg
c3RkOjp1bmlxdWVfcHRyPGNvbnN0IFJlbmRlclN0eWxlPiBtX3VuYW5pbWF0ZWRTdHlsZTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5pZGwKaW5kZXggZDJkMDdh
Y2M0MzY0ZWFiOGJmMWUwYWI2ZTFkMDMyYjhhZTY5ZjcwMC4uODBmZGM3NWI5ZDUyNDc3MmFmNjAx
ODc0MjM5ZmE2Y2VhZDU1N2FjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJh
bWVFZmZlY3QuaWRsCkBAIC0yMyw2ICsyMyw4IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKK3R5
cGVkZWYgVVNWU3RyaW5nIENTU09NU3RyaW5nOworCiBbCiAgICAgRW5hYmxlZEF0UnVudGltZT1X
ZWJBbmltYXRpb25zLAogICAgIEV4cG9zZWQ9V2luZG93LApAQCAtMzIsNyArMzQsOCBAQAogICAg
IENvbnN0cnVjdG9yKEVsZW1lbnQ/IHRhcmdldCwgb2JqZWN0PyBrZXlmcmFtZXMsIG9wdGlvbmFs
ICh1bnJlc3RyaWN0ZWQgZG91YmxlIG9yIEtleWZyYW1lRWZmZWN0T3B0aW9ucykgb3B0aW9ucyks
CiAgICAgQ29uc3RydWN0b3IoS2V5ZnJhbWVFZmZlY3Qgc291cmNlKQogXSBpbnRlcmZhY2UgS2V5
ZnJhbWVFZmZlY3QgOiBBbmltYXRpb25FZmZlY3QgewotICAgIGF0dHJpYnV0ZSBFbGVtZW50PyB0
YXJnZXQ7CisgICAgW0ltcGxlbWVudGVkQXM9YmluZGluZ3NUYXJnZXRdIGF0dHJpYnV0ZSBFbGVt
ZW50PyB0YXJnZXQ7CisgICAgW01heVRocm93RXhjZXB0aW9uXSBhdHRyaWJ1dGUgQ1NTT01TdHJp
bmc/IHBzZXVkb0VsZW1lbnQ7CiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9uc0Nv
bXBvc2l0ZU9wZXJhdGlvbnNdIGF0dHJpYnV0ZSBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24g
aXRlcmF0aW9uQ29tcG9zaXRlOwogICAgIFtFbmFibGVkQXRSdW50aW1lPVdlYkFuaW1hdGlvbnND
b21wb3NpdGVPcGVyYXRpb25zXSBhdHRyaWJ1dGUgQ29tcG9zaXRlT3BlcmF0aW9uIGNvbXBvc2l0
ZTsKICAgICBbQ2FsbFdpdGg9R2xvYmFsT2JqZWN0XSBzZXF1ZW5jZTxvYmplY3Q+IGdldEtleWZy
YW1lcygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZm
ZWN0T3B0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0
aW9ucy5oCmluZGV4IGFiYTdkMmYzN2MwMzg1ZGZmMDIxZDc1ZDBiOGNlYjdmYmIxZjgxNTEuLjNl
ZGNiODQ1MDMxM2E4ZjAyM2FlNjRkODFjYjgwMGY2NmFmNDViNTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmgKQEAgLTM1LDYgKzM1LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogc3RydWN0IEtleWZyYW1lRWZmZWN0T3B0aW9ucyA6IEVm
ZmVjdFRpbWluZyB7CiAgICAgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlvbkNv
bXBvc2l0ZSB7IEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSB9OwogICAgIENv
bXBvc2l0ZU9wZXJhdGlvbiBjb21wb3NpdGUgeyBDb21wb3NpdGVPcGVyYXRpb246OlJlcGxhY2Ug
fTsKKyAgICBTdHJpbmcgcHNldWRvRWxlbWVudDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9w
dGlvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9u
cy5pZGwKaW5kZXggMWZkODlkMjgxNWVlYjk2MDYwMTRmNWY2MTEzMTVkYmYwMWM2OWY4MC4uNjFl
YmZmMTZjODU2YWI2ODQzOTRlYjM5NzlmMGExZTBlODA5YmIyNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGwKKysrIGIvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGwKQEAgLTIzLDcgKzIz
LDEwIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKK3R5cGVkZWYgVVNWU3RyaW5nIENTU09NU3Ry
aW5nOworCiBkaWN0aW9uYXJ5IEtleWZyYW1lRWZmZWN0T3B0aW9ucyA6IEVmZmVjdFRpbWluZyB7
CiAgICAgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlvbkNvbXBvc2l0ZSA9ICJy
ZXBsYWNlIjsKICAgICBDb21wb3NpdGVPcGVyYXRpb24gY29tcG9zaXRlID0gInJlcGxhY2UiOwor
ICAgIENTU09NU3RyaW5nPyBwc2V1ZG9FbGVtZW50ID0gbnVsbDsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAKaW5kZXggZDBiZDdjZjVj
ZGU5MjIzMmVkOWU0NjY1ZWM5M2RjY2Y4NTllNDM4Ni4uMjA1NmRiMjFiYWUzNGY4ZjUyY2ZjZGJl
NzYwZGQ2NTdhMjE2MGNlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tl
eWZyYW1lRWZmZWN0U3RhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlm
cmFtZUVmZmVjdFN0YWNrLmNwcApAQCAtNTksNiArNTksMTUgQEAgdm9pZCBLZXlmcmFtZUVmZmVj
dFN0YWNrOjpyZW1vdmVFZmZlY3QoS2V5ZnJhbWVFZmZlY3QmIGVmZmVjdCkKICAgICBtX2VmZmVj
dHMucmVtb3ZlRmlyc3QoJmVmZmVjdCk7CiB9CiAKK2Jvb2wgS2V5ZnJhbWVFZmZlY3RTdGFjazo6
cmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkgY29uc3QKK3sKKyAgICBmb3IgKGF1dG8mIGVmZmVjdCA6
IG1fZWZmZWN0cykgeworICAgICAgICBpZiAoZWZmZWN0LT5yZXF1aXJlc1BzZXVkb0VsZW1lbnQo
KSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9
CisKIGJvb2wgS2V5ZnJhbWVFZmZlY3RTdGFjazo6aXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0
eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5KSBjb25zdAogewogICAgIGZvciAoYXV0byYgZWZmZWN0
IDogbV9lZmZlY3RzKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5
ZnJhbWVFZmZlY3RTdGFjay5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZm
ZWN0U3RhY2suaAppbmRleCA5NzhkODRkY2Q1NjgwZDI4YzBhM2Q2OTllMjMzZmRjN2QzYWVhNjkw
Li4xZGI4NDA0MjY4ZWM3OTNhY2I0ZjUxMjcwYWJjY2QxMDRhNTQ2Y2YwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmgKQEAgLTQ3LDYgKzQ3LDcg
QEAgcHVibGljOgogICAgIGNvbnN0IEFuaW1hdGlvbkxpc3QqIGNzc0FuaW1hdGlvbkxpc3QoKSBj
b25zdCB7IHJldHVybiBtX2Nzc0FuaW1hdGlvbkxpc3QuZ2V0KCk7IH0KICAgICB2b2lkIHNldENT
U0FuaW1hdGlvbkxpc3QoUmVmUHRyPGNvbnN0IEFuaW1hdGlvbkxpc3Q+JiYpOwogICAgIGJvb2wg
aXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAgICBi
b29sIHJlcXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0OwogCiBwcml2YXRlOgogICAgIHZvaWQg
ZW5zdXJlRWZmZWN0c0FyZVNvcnRlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L1BzZXVkb0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3Bw
CmluZGV4IDMyYWU4MzI4OWY4ZjhmN2NjZjMwNzk1NWMyOWU4YjE1ZTQxYmQxNjkuLmU4NGMyMjli
Mzk3YmQ1YmU5MGRmYWE4YmI4ZmNlZTkxYjNkZDgxOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRv
RWxlbWVudC5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJDb250ZW50RGF0YS5oIgog
I2luY2x1ZGUgIkRvY3VtZW50VGltZWxpbmUuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb24uaCIKKyNpbmNsdWRlICJLZXlmcmFtZUVmZmVjdFN0YWNrLmgiCiAjaW5jbHVkZSAi
UmVuZGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIlJlbmRlckltYWdlLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyUXVvdGUuaCIKQEAgLTEwMCw3ICsxMDEsMTQgQEAgdm9pZCBQc2V1ZG9FbGVtZW50OjpjbGVh
ckhvc3RFbGVtZW50KCkKIAogYm9vbCBQc2V1ZG9FbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNv
bnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsKLSAgICByZXR1cm4gcHNldWRvRWxlbWVudFJlbmRl
cmVySXNOZWVkZWQoJnN0eWxlKTsKKyAgICByZXR1cm4gcHNldWRvRWxlbWVudFJlbmRlcmVySXNO
ZWVkZWQoJnN0eWxlKSB8fCBpc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVk
b0VsZW1lbnQoKTsKK30KKworYm9vbCBQc2V1ZG9FbGVtZW50Ojppc1RhcmdldGVkQnlLZXlmcmFt
ZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKQoreworICAgIGlmIChhdXRvKiBzdGFjayA9
IGtleWZyYW1lRWZmZWN0U3RhY2soKSkKKyAgICAgICAgcmV0dXJuIHN0YWNrLT5yZXF1aXJlc1Bz
ZXVkb0VsZW1lbnQoKTsKKyAgICByZXR1cm4gZmFsc2U7CiB9CiAKIH0gLy8gbmFtZXNwYWNlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaAppbmRleCAyZmFkMzFkNjBlMWRmOGIxODRhMWRiZjc5
NGM5YTI5MWZiYzgzMzVkLi5lYzc1ZTYxMjBmOWM5OGY4YzkzZGJiNTdlYWZhNjljZjQyYjdjZDg0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmgKQEAgLTQxLDYgKzQxLDcgQEAgcHVibGlj
OgogICAgIHZvaWQgY2xlYXJIb3N0RWxlbWVudCgpOwogCiAgICAgYm9vbCByZW5kZXJlcklzTmVl
ZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3ZlcnJpZGU7CisgICAgYm9vbCBpc1RhcmdldGVkQnlL
ZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKTsKIAogICAgIGJvb2wgY2FuU3Rh
cnRTZWxlY3Rpb24oKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQogICAgIGJvb2wg
Y2FuQ29udGFpblJhbmdlRW5kUG9pbnQoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRy
ZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAppbmRleCA0MDI0
MGJkN2FlMjhlNzA0NDc4MzA0MmJiZmEwZDE0MTdjMjEwYmQ2Li43MGRjOTFmOWFjNTg4NjIxZTI5
OGI5NDdlNDUyYjhiNzI2MjE3NDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0
ZWRDb250ZW50LmNwcApAQCAtNzEsMTIgKzcxLDE2IEBAIHZvaWQgUmVuZGVyVHJlZVVwZGF0ZXI6
OkdlbmVyYXRlZENvbnRlbnQ6OnVwZGF0ZVF1b3Rlc1VwVG8oUmVuZGVyUXVvdGUqIGxhc3RRdW90
CiAKIHN0YXRpYyB2b2lkIGNyZWF0ZUNvbnRlbnRSZW5kZXJlcnMoUmVuZGVyVHJlZUJ1aWxkZXIm
IGJ1aWxkZXIsIFJlbmRlckVsZW1lbnQmIHBzZXVkb1JlbmRlcmVyLCBjb25zdCBSZW5kZXJTdHls
ZSYgc3R5bGUpCiB7Ci0gICAgQVNTRVJUKHN0eWxlLmNvbnRlbnREYXRhKCkpOwotCi0gICAgZm9y
IChjb25zdCBDb250ZW50RGF0YSogY29udGVudCA9IHN0eWxlLmNvbnRlbnREYXRhKCk7IGNvbnRl
bnQ7IGNvbnRlbnQgPSBjb250ZW50LT5uZXh0KCkpIHsKLSAgICAgICAgYXV0byBjaGlsZCA9IGNv
bnRlbnQtPmNyZWF0ZUNvbnRlbnRSZW5kZXJlcihwc2V1ZG9SZW5kZXJlci5kb2N1bWVudCgpLCBz
dHlsZSk7Ci0gICAgICAgIGlmIChwc2V1ZG9SZW5kZXJlci5pc0NoaWxkQWxsb3dlZCgqY2hpbGQs
IHN0eWxlKSkKLSAgICAgICAgICAgIGJ1aWxkZXIuYXR0YWNoKHBzZXVkb1JlbmRlcmVyLCBXVEZN
b3ZlKGNoaWxkKSk7CisgICAgaWYgKGF1dG8qIGNvbnRlbnREYXRhID0gc3R5bGUuY29udGVudERh
dGEoKSkgeworICAgICAgICBmb3IgKGNvbnN0IENvbnRlbnREYXRhKiBjb250ZW50ID0gY29udGVu
dERhdGE7IGNvbnRlbnQ7IGNvbnRlbnQgPSBjb250ZW50LT5uZXh0KCkpIHsKKyAgICAgICAgICAg
IGF1dG8gY2hpbGQgPSBjb250ZW50LT5jcmVhdGVDb250ZW50UmVuZGVyZXIocHNldWRvUmVuZGVy
ZXIuZG9jdW1lbnQoKSwgc3R5bGUpOworICAgICAgICAgICAgaWYgKHBzZXVkb1JlbmRlcmVyLmlz
Q2hpbGRBbGxvd2VkKCpjaGlsZCwgc3R5bGUpKQorICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXR0
YWNoKHBzZXVkb1JlbmRlcmVyLCBXVEZNb3ZlKGNoaWxkKSk7CisgICAgICAgIH0KKyAgICB9IGVs
c2UgeworICAgICAgICAvLyBUaGUgb25seSB2YWxpZCBzY2VuYXJpbyB3aGVyZSB0aGlzIG1ldGhv
ZCBpcyBjYWxsZWQgd2l0aG91dCB0aGUgImNvbnRlbnQiIHByb3BlcnR5IGJlaW5nIHNldAorICAg
ICAgICAvLyBpcyB0aGUgY2FzZSB3aGVyZSBhIHBzZXVkby1lbGVtZW50IGhhcyBhbmltYXRpb25z
IHNldCBvbiBpdCB2aWEgdGhlIFdlYiBBbmltYXRpb25zIEFQSS4KKyAgICAgICAgQVNTRVJUKGlz
PFBzZXVkb0VsZW1lbnQ+KHBzZXVkb1JlbmRlcmVyLmVsZW1lbnQoKSkgJiYgZG93bmNhc3Q8UHNl
dWRvRWxlbWVudD4oKnBzZXVkb1JlbmRlcmVyLmVsZW1lbnQoKSkuaXNUYXJnZXRlZEJ5S2V5ZnJh
bWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCkpOwogICAgIH0KIH0KIApAQCAtOTcsNyAr
MTAxLDcgQEAgdm9pZCBSZW5kZXJUcmVlVXBkYXRlcjo6R2VuZXJhdGVkQ29udGVudDo6dXBkYXRl
UHNldWRvRWxlbWVudChFbGVtZW50JiBjdXJyZW50LAogICAgIGlmIChhdXRvKiByZW5kZXJlciA9
IHBzZXVkb0VsZW1lbnQgPyBwc2V1ZG9FbGVtZW50LT5yZW5kZXJlcigpIDogbnVsbHB0cikKICAg
ICAgICAgbV91cGRhdGVyLnJlbmRlclRyZWVQb3NpdGlvbigpLmludmFsaWRhdGVOZXh0U2libGlu
ZygqcmVuZGVyZXIpOwogCi0gICAgaWYgKCFuZWVkc1BzZXVkb0VsZW1lbnQodXBkYXRlKSkgewor
ICAgIGlmICghbmVlZHNQc2V1ZG9FbGVtZW50KHVwZGF0ZSkgJiYgKCFwc2V1ZG9FbGVtZW50IHx8
ICFwc2V1ZG9FbGVtZW50LT5pc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVk
b0VsZW1lbnQoKSkpIHsKICAgICAgICAgaWYgKHBzZXVkb0VsZW1lbnQpIHsKICAgICAgICAgICAg
IGlmIChwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6QmVmb3JlKQogICAgICAgICAgICAgICAgIHJlbW92
ZUJlZm9yZVBzZXVkb0VsZW1lbnQoY3VycmVudCwgbV91cGRhdGVyLm1fYnVpbGRlcik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKaW5kZXggOWYzNTAwZGQ1ZWE3
MjI1ODQ2NjlhM2U5ZTRmODllZjcxMTU3ZGI4OC4uY2IwMWE3NWZhZjYzYmM5YjFhMjczMjczYTAy
ZjVmMDU3YjZkZDE1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVl
UmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVy
LmNwcApAQCAtMjYxLDE0ICsyNjEsMTkgQEAgRWxlbWVudFVwZGF0ZSBUcmVlUmVzb2x2ZXI6OnJl
c29sdmVQc2V1ZG9TdHlsZShFbGVtZW50JiBlbGVtZW50LCBjb25zdCBFbGVtZW50VXAKIHsKICAg
ICBpZiAoZWxlbWVudFVwZGF0ZS5zdHlsZS0+ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpOb25l
KQogICAgICAgICByZXR1cm4geyB9OworCiAgICAgaWYgKCFlbGVtZW50VXBkYXRlLnN0eWxlLT5o
YXNQc2V1ZG9TdHlsZShwc2V1ZG9JZCkpCiAgICAgICAgIHJldHVybiB7IH07CiAKICAgICBhdXRv
IHBzZXVkb1N0eWxlID0gc2NvcGUoKS5yZXNvbHZlci5wc2V1ZG9TdHlsZUZvckVsZW1lbnQoZWxl
bWVudCwgeyBwc2V1ZG9JZCB9LCAqZWxlbWVudFVwZGF0ZS5zdHlsZSwgcGFyZW50Qm94U3R5bGVG
b3JQc2V1ZG8oZWxlbWVudFVwZGF0ZSksICZzY29wZSgpLnNlbGVjdG9yRmlsdGVyKTsKLSAgICBp
ZiAoIXBzZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSkKKyAg
ICBpZiAoIXBzZXVkb1N0eWxlKQorICAgICAgICByZXR1cm4geyB9OworCisgICAgYXV0byogcHNl
dWRvRWxlbWVudCA9IHBzZXVkb0lkID09IFBzZXVkb0lkOjpCZWZvcmUgPyBlbGVtZW50LmJlZm9y
ZVBzZXVkb0VsZW1lbnQoKSA6IGVsZW1lbnQuYWZ0ZXJQc2V1ZG9FbGVtZW50KCk7CisgICAgYm9v
bCBoYXNBbmltYXRpb25zID0gcHNldWRvRWxlbWVudCAmJiBwc2V1ZG9FbGVtZW50LT5pc1Rhcmdl
dGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKTsKKyAgICBpZiAoIXBz
ZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSAmJiAhaGFzQW5p
bWF0aW9ucykKICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIFBzZXVkb0VsZW1lbnQqIHBzZXVk
b0VsZW1lbnQgPSBwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6QmVmb3JlID8gZWxlbWVudC5iZWZvcmVQ
c2V1ZG9FbGVtZW50KCkgOiBlbGVtZW50LmFmdGVyUHNldWRvRWxlbWVudCgpOwogICAgIGlmICgh
cHNldWRvRWxlbWVudCkgewogICAgICAgICBhdXRvIG5ld1BzZXVkb0VsZW1lbnQgPSBQc2V1ZG9F
bGVtZW50OjpjcmVhdGUoZWxlbWVudCwgcHNldWRvSWQpOwogICAgICAgICBwc2V1ZG9FbGVtZW50
ID0gbmV3UHNldWRvRWxlbWVudC5wdHIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IGE3NGI0YTY2NmYyNTQ5OWEw
M2UzZjI2ODVmNWJiMGQwYjIxYzUyOTQuLmViNzEwZjI4N2ZmNzU2N2ExOWNjYmNkZTcxNWU0YzA5
NTY4YjQ0NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9GZWF0
dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJMRV9XRUJHUFVfTUFD
T1NfU0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJYUiA9IDsKIAorRU5B
QkxFX1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJT05TOworCiBFTkFCTEVfV0VC
X0FQSV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElPID0gRU5BQkxFX1dFQl9BVURJ
TzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNm
MjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1Njhi
NDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBF
TkFCTEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVf
V0VCWFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9O
UzsKKwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9
IEVOQUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCBhNzRiNGE2NjZmMjU0
OTlhMDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYyODdmZjc1NjdhMTljY2JjZGU3MTVl
NGMwOTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBF
TkFCTEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVf
V0VCWFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9O
UzsKKwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9
IEVOQUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBkMWQy
YmUzMGY5NjdiZjIyMzhjOTI3MGRlMDE1Mjg5YzY5OGYyMTMyLi43N2Q5MjVmMGI0ZWMyYjU1M2Rj
YjdhNDI5ZTNjODA2OWFhMmY0MDQ3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMiBAQAorMjAyMC0wNC0wOSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUu
Y29tPgorCisgICAgICAgIFtXZWIgQW5pbWF0aW9uc10gQWRkIHN1cHBvcnQgZm9yIGBwc2V1ZG9F
bGVtZW50YCBvbiBgS2V5ZnJhbWVFZmZlY3RgIGFuZCBgS2V5ZnJhbWVFZmZlY3RPcHRpb25zYAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3MjkwCisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTE5OTAwMz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYXJrIDIzIGFkZGl0aW9uYWwgV1BUIHRlc3RzIGFz
IFBBU1MuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25z
L0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0
aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMv
aWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVy
ZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qv
c3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4
cGVjdGVkLnR4dDoKKwogMjAyMC0wNC0wOSAgQ2F0aGllIENoZW4gIDxjYXRoaWVjaGVuQGlnYWxp
YS5jb20+CiAKICAgICAgICAgSW1wb3J0IHRlc3QgZm9yIHByb2dyYW1tYXRpYyBzY3JvbGxpbmcg
c2Nyb2xsZW5kIGV2ZW50CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25z
LnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRl
bnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXggM2M2MjM4MjAyN2ZiZGE2NDcxODEyNDUzYWFkNzBi
MmIzNDU5YTRlNC4uZDBiYWJmNTY4M2VhZWVhYzNiZTgwOTZhMmM1MGYyYmE2MTZjMjk2OSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVk
LnR4dApAQCAtMTMsNSArMTMsNSBAQCBQQVNTIEZpbmlzaGVkIGJ1dCBub3QgZmlsbGluZyBDU1Mg
QW5pbWF0aW9ucyBhcmUgbm90IHJldHVybmVkCiBQQVNTIFlldC10by1zdGFydCBDU1MgQW5pbWF0
aW9ucyBhcmUgcmV0dXJuZWQgCiBQQVNTIENTUyBBbmltYXRpb25zIGNhbmNlbGVkIHZpYSB0aGUg
QVBJIGFyZSBub3QgcmV0dXJuZWQgCiBQQVNTIENTUyBBbmltYXRpb25zIGNhbmNlbGVkIGFuZCBy
ZXN0YXJ0ZWQgdmlhIHRoZSBBUEkgYXJlIHJldHVybmVkIAotRkFJTCBDU1MgQW5pbWF0aW9ucyB0
YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0
ZXIgc29ydGluZyBhc3NlcnRfZXF1YWxzOiBBbmltYXRpb24gIzEgaGFzIG51bGwgcHNldWRvIHR5
cGUgZXhwZWN0ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAor
UEFTUyBDU1MgQW5pbWF0aW9ucyB0YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBo
YXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29ydGluZyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxl
bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50
LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCBhMGM5ZDA5YzA5YzRi
MzY3YzczMGNmMzNkNTkzNjk3MzlhOTNmODhkLi44ZWQ5MjMwZDg3ZDg4YTg3OWUxZDYwNjU2ZmNk
MWM5YWJjYjJhOWQyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlvbnMudGVu
dGF0aXZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlvbnMudGVu
dGF0aXZlLWV4cGVjdGVkLnR4dApAQCAtMTcsOCArMTcsOCBAQCBQQVNTIGdldEFuaW1hdGlvbnMg
cmV0dXJucyBvYmplY3RzIHdpdGggdGhlIHNhbWUgaWRlbnRpdHkKIFBBU1MgZ2V0QW5pbWF0aW9u
cyBmb3IgQ1NTIEFuaW1hdGlvbnMgdGhhdCBhcmUgY2FuY2VsZWQgCiBQQVNTIGdldEFuaW1hdGlv
bnMgZm9yIENTUyBBbmltYXRpb25zIGZvbGxvd3MgYW5pbWF0aW9uLW5hbWUgb3JkZXIgCiBQQVNT
IHsgc3VidHJlZTogZmFsc2UgfSBvbiBhIGxlYWYgZWxlbWVudCByZXR1cm5zIHRoZSBlbGVtZW50
J3MgYW5pbWF0aW9ucyBhbmQgaWdub3JlIHBzZXVkby1lbGVtZW50cyAKLUZBSUwgeyBzdWJ0cmVl
OiB0cnVlIH0gb24gYSBsZWFmIGVsZW1lbnQgcmV0dXJucyB0aGUgZWxlbWVudCdzIGFuaW1hdGlv
bnMgYW5kIGl0cyBwc2V1ZG8tZWxlbWVudHMnIGFuaW1hdGlvbnMgYXNzZXJ0X2VxdWFsczogVGhl
IGFuaW1hdGlvbiB0YXJnZXRpbmcgdGhlIHBhcmVudCBlbGVtZW50IHNob3VsZCBiZSByZXR1cm5l
ZCBmaXJzdCBleHBlY3RlZCAob2JqZWN0KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZp
bmVkCitQQVNTIHsgc3VidHJlZTogdHJ1ZSB9IG9uIGEgbGVhZiBlbGVtZW50IHJldHVybnMgdGhl
IGVsZW1lbnQncyBhbmltYXRpb25zIGFuZCBpdHMgcHNldWRvLWVsZW1lbnRzJyBhbmltYXRpb25z
IAogUEFTUyB7IHN1YnRyZWU6IGZhbHNlIH0gb24gYW4gZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0
dXJucyBvbmx5IHRoZSBlbGVtZW50J3MgYW5pbWF0aW9ucyAKLUZBSUwgeyBzdWJ0cmVlOiB0cnVl
IH0gb24gYW4gZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0dXJucyBhbmltYXRpb25zIGZyb20gdGhl
IGVsZW1lbnQsIGl0cyBwc2V1ZG8tZWxlbWVudHMsIGl0cyBjaGlsZCBhbmQgaXRzIGNoaWxkIHBz
ZXVkby1lbGVtZW50cyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0aW9uIHRhcmdldGluZyB0aGUg
cGFyZW50IGVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVkIGZpcnN0IGV4cGVjdGVkIChvYmplY3Qp
IG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK0ZBSUwgeyBzdWJ0cmVlOiB0cnVl
IH0gb24gYW4gZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0dXJucyBhbmltYXRpb25zIGZyb20gdGhl
IGVsZW1lbnQsIGl0cyBwc2V1ZG8tZWxlbWVudHMsIGl0cyBjaGlsZCBhbmQgaXRzIGNoaWxkIHBz
ZXVkby1lbGVtZW50cyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0aW9uIHRhcmdldGluZyB0aGUg
OjphZnRlciBwZXN1ZG8tZWxlbWVudCBzaG91bGQgYmUgcmV0dXJuZWQgdGhpcmQgZXhwZWN0ZWQg
KHN0cmluZykgIjo6YWZ0ZXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAogRkFJTCB7IHN1YnRyZWU6
IHRydWUgfSBvbiBhbiBlbGVtZW50IHdpdGggbWFueSBkZXNjZW5kYW50cyByZXR1cm5zIGFuaW1h
dGlvbnMgZnJvbSBhbGwgdGhlIGRlc2NlbmRhbnRzIGFzc2VydF9lcXVhbHM6IFRoZSBhbmltYXRp
b24gdGFyZ2V0aW5nIHRoZSBjaGlsZDEgZWxlbWVudCBzaG91bGQgYmUgcmV0dXJuZWQgc2Vjb25k
IGV4cGVjdGVkIEVsZW1lbnQgbm9kZSA8ZGl2IGlkPSJjaGlsZDEiIHN0eWxlPSJhbmltYXRpb246
IGFuaW0xIDEwMHM7Ij48ZGl2IGlkPSIuLi4gYnV0IGdvdCBFbGVtZW50IG5vZGUgPGRpdiBpZD0i
Z3JhbmRjaGlsZDEiIHN0eWxlPSJhbmltYXRpb246IGFuaW0xIDEwMHM7Ij48L2Rpdj4KIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy10cmFuc2l0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50
eHQKaW5kZXggMThjMWUzMTY1YTAyZmYxNTIwZjUxZmRlZDJiZTdkMmQzNTYzZjczNi4uZmQyYmY1
NTAyNDEyMDRjYWNkNGJhNTAzMTBlYjkwYjhhNTFiY2UxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0Rv
Y3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMv
RG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEs
NiBAQAogCiBQQVNTIGdldEFuaW1hdGlvbnMgZm9yIG5vbi1hbmltYXRlZCBjb250ZW50IAogUEFT
UyBnZXRBbmltYXRpb25zIGZvciBDU1MgVHJhbnNpdGlvbnMgCi1GQUlMIENTUyBUcmFuc2l0aW9u
cyB0YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIg
YWZ0ZXIgc29ydGluZyBhc3NlcnRfZXF1YWxzOiBUcmFuc2l0aW9uICMxIGhhcyBudWxsIHBzZXVk
byB0eXBlIGV4cGVjdGVkIChvYmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmlu
ZWQKK1BBU1MgQ1NTIFRyYW5zaXRpb25zIHRhcmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hv
dWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIAogUEFTUyBUcmFuc2l0aW9ucyBh
cmUgbm90IHJldHVybmVkIGFmdGVyIHRoZXkgaGF2ZSBmaW5pc2hlZCAKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9u
cy9pZGxoYXJuZXNzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2luZG93LWV4
cGVjdGVkLnR4dAppbmRleCBjZWYyMjU1MGMxNWZjMDU0MDE0OWJkOGUzMjhmMDhlNjEyYjZhNzU5
Li44YTY2Y2RmZDgwZmI2NjE2ZTQ1NDViMjM4ZjQ5OWZkM2IxMjBiNGFkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25z
L2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2luZG93
LWV4cGVjdGVkLnR4dApAQCAtMTA4LDE0ICsxMDgsMTQgQEAgUEFTUyBLZXlmcmFtZUVmZmVjdCBp
bnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBl
IG8KIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRp
ZXMgb2YgaW50ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHByb3BlcnR5
IAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkg
CiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0cmlidXRlIHRhcmdldCAKLUZBSUwg
S2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgcHNldWRvRWxlbWVudCBhc3NlcnRf
dHJ1ZTogVGhlIHByb3RvdHlwZSBvYmplY3QgbXVzdCBoYXZlIGEgcHJvcGVydHkgInBzZXVkb0Vs
ZW1lbnQiIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIEtleWZyYW1lRWZmZWN0IGludGVy
ZmFjZTogYXR0cmlidXRlIHBzZXVkb0VsZW1lbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVy
ZmFjZTogYXR0cmlidXRlIGNvbXBvc2l0ZSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNl
OiBvcGVyYXRpb24gZ2V0S2V5ZnJhbWVzKCkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFj
ZTogb3BlcmF0aW9uIHNldEtleWZyYW1lcyhvYmplY3QpIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBt
dXN0IGJlIHByaW1hcnkgaW50ZXJmYWNlIG9mIG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxs
KSAKIFBBU1MgU3RyaW5naWZpY2F0aW9uIG9mIG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxs
KSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVs
bCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJ0YXJnZXQiIHdpdGggdGhlIHByb3BlciB0
eXBlIAotRkFJTCBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChu
dWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIHdpdGggdGhl
IHByb3BlciB0eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIG5v
dCBmb3VuZCBpbiBwcm90b3R5cGUgY2hhaW4KK1BBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNl
OiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJw
c2V1ZG9FbGVtZW50IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3Qg
aW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHBy
b3BlcnR5ICJjb21wb3NpdGUiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVm
ZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVy
aXQgcHJvcGVydHkgImdldEtleWZyYW1lcygpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1Mg
S2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJzZXRLZXlmcmFtZXMob2JqZWN0KSIgd2l0aCB0aGUgcHJv
cGVyIHR5cGUgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0YWJsZS9hbmltYXRlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0
CmluZGV4IDc1MTQ0MjZjYTBmMWViMTRjMjU0MzY5MjYyYWM4ZDk1Y2Q5NDE0NTguLjVlMzFmODVh
OTkyZDhhMmMyYjJmY2E1ZGZiZTg5YzBjZjI0MDlkODggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNl
cy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9Bbmlt
YXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0CkBAIC0xMzUsMTAgKzEzNSwxMCBAQCBQQVNTIEVs
ZW1lbnQuYW5pbWF0ZSgpIGNhbGxzIHBsYXkgb24gdGhlIEFuaW1hdGlvbgogUEFTUyBFbGVtZW50
LmFuaW1hdGUoKSBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBh
bmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciBjcmVhdGVzIGFuIEFuaW1hdGlv
biBvYmplY3QgCiBQQVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyIHdp
dGhvdXQgY29udGVudCBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgCi1QQVNTIGFuaW1hdGUo
KSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyICBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmpl
Y3QgZm9yIDo6bWFya2VyIAotUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFt
ZXRlciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IGZvciA6OmZpcnN0LWxpbmUgCi1GQUlM
IGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRp
bmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVGhlIHJldHVybmVk
IEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVkIChzdHJpbmcp
ICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgYW5pbWF0ZSgp
IHdpdGggcHNldWRvRWxlbWVudCB3aXRob3V0IGNvbnRlbnQgY3JlYXRlcyBhbiBBbmltYXRpb24g
b2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCBhc3NlcnRfZXF1YWxz
OiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhw
ZWN0ZWQgKHN0cmluZykgIjo6YmVmb3JlIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAot
RkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFy
Z2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGZvciA6Om1hcmtlciBhc3NlcnRfZXF1
YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3Ig
ZXhwZWN0ZWQgKHN0cmluZykgIjo6bWFya2VyIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5l
ZAotRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3Qg
dGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGZvciA6OmZpcnN0LWxpbmUgYXNz
ZXJ0X2VxdWFsczogVGhlIHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNl
bGVjdG9yIGV4cGVjdGVkIChzdHJpbmcpICI6OmZpcnN0LWxpbmUiIGJ1dCBnb3QgKHVuZGVmaW5l
ZCkgdW5kZWZpbmVkCitGQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVy
ICBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgZm9yIDo6bWFya2VyIFR5cGUgZXJyb3IKK0ZB
SUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIgIGNyZWF0ZXMgYW4gQW5p
bWF0aW9uIG9iamVjdCBmb3IgOjpmaXJzdC1saW5lIFR5cGUgZXJyb3IKK1BBU1MgYW5pbWF0ZSgp
IHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29y
cmVjdCBwc2V1ZG8tZWxlbWVudCAKK1BBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCB3
aXRob3V0IGNvbnRlbnQgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUg
Y29ycmVjdCBwc2V1ZG8tZWxlbWVudCAKK0ZBSUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVu
dCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVu
dCBmb3IgOjptYXJrZXIgVHlwZSBlcnJvcgorRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVt
ZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVt
ZW50IGZvciA6OmZpcnN0LWxpbmUgVHlwZSBlcnJvcgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5p
bWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQKaW5kZXggMzY1MDIyN2NmMGYxMmRmMjVk
NzllYzBjM2EwYjcxZDUyMTZlMDg3NS4uZDU1Njc2MDgwNzAzYjY0YzJkYjkwOWIwODljMzNhMTM0
M2VlYjNiZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRpb24vY29tbWl0U3R5bGVzLWV4
cGVjdGVkLnR4dApAQCAtMTEsMTYgKzExLDEyIEBAIEZBSUwgQ29tbWl0cyB0aGUgaW50ZXJtZWRp
YXRlIHZhbHVlIG9mIGFuIGFuaW1hdGlvbiBpbiB0aGUgbWlkZGxlIG9mIHN0YWNrIGFzc2VyCiBG
QUlMIENvbW1pdCBjb21wb3NpdGVzIG9uIHRvcCBvZiB0aGUgdW5kZXJseWluZyB2YWx1ZSBhc3Nl
cnRfYXBwcm94X2VxdWFsczogZXhwZWN0ZWQgMC41ICsvLSAwLjAwMDEgYnV0IGdvdCAwLjIwMDAw
MDAwMjk4MDIzMjI0CiBQQVNTIFRyaWdnZXJzIG11dGF0aW9uIG9ic2VydmVycyB3aGVuIHVwZGF0
aW5nIHN0eWxlIAogRkFJTCBEb2VzIE5PVCB0cmlnZ2VyIG11dGF0aW9uIG9ic2VydmVycyB3aGVu
IHRoZSBjaGFuZ2UgdG8gc3R5bGUgaXMgcmVkdW5kYW50IGFzc2VydF9lcXVhbHM6IFNob3VsZCBo
YXZlIG5vIG11dGF0aW9uIHJlY29yZHMgZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgVGhyb3dz
IGlmIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBhIHBzZXVkbyBlbGVtZW50IGFzc2VydF90aHJvd3Nf
ZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAgIGFuaW1hdGlvbi5jb21taXRTdHlsZXMoKTsKLSAg
fSIgZGlkIG5vdCB0aHJvdworUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlbGVtZW50IGlzIGEg
cHNldWRvIGVsZW1lbnQgCiBQQVNTIFRocm93cyBpZiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgbm90
IHNvbWV0aGluZyB3aXRoIGEgc3R5bGUgYXR0cmlidXRlIAogUEFTUyBUaHJvd3MgaWYgdGhlIHRh
cmdldCBlZmZlY3QgaXMgZGlzcGxheTpub25lIAogUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBl
ZmZlY3QncyBhbmNlc3RvciBpcyBkaXNwbGF5Om5vbmUgCiBQQVNTIFRyZWF0cyBkaXNwbGF5OmNv
bnRlbnRzIGFzIHJlbmRlcmVkIAogUEFTUyBUcmVhdHMgZGlzcGxheTpjb250ZW50cyBpbiBhIGRp
c3BsYXk6bm9uZSBzdWJ0cmVlIGFzIG5vdCByZW5kZXJlZCAKIFBBU1MgVGhyb3dzIGlmIHRoZSB0
YXJnZXQgZWZmZWN0IGlzIGRpc2Nvbm5lY3RlZCAKLUZBSUwgQ2hlY2tzIHRoZSBwc2V1ZG8gZWxl
bWVudCBjb25kaXRpb24gYmVmb3JlIHRoZSBub3QgcmVuZGVyZWQgY29uZGl0aW9uIGFzc2VydF90
aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAgIGFuaW1hdGlvbi5jb21taXRTdHlsZXMo
KTsKLSAgfSIgdGhyZXcgb2JqZWN0ICJJbnZhbGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBp
biBhbiBpbnZhbGlkIHN0YXRlLiIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gTm9Nb2RpZmlj
YXRpb25BbGxvd2VkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byAxMSwgZXhwZWN0
ZWQgNworUEFTUyBDaGVja3MgdGhlIHBzZXVkbyBlbGVtZW50IGNvbmRpdGlvbiBiZWZvcmUgdGhl
IG5vdCByZW5kZXJlZCBjb25kaXRpb24gCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlm
cmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNl
cy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRzLWV4cGVjdGVkLnR4dAppbmRleCBk
MzA5YTQ3ODI3OTIyZTQ0NGZkNThkOTliYzg3Y2NmMzYwNWRlMzAxLi44YTYwYzEzOWI5NGRlNjY1
M2Q0YWY3ZDVkYzM4ZTA1ZDQ1MTljNTA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJh
bWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZh
Y2VzL0tleWZyYW1lRWZmZWN0L3N0eWxlLWNoYW5nZS1ldmVudHMtZXhwZWN0ZWQudHh0CkBAIC0x
LDkgKzEsMTAgQEAKIAotRkFJTCBBbGwgcHJvcGVydHkga2V5cyBhcmUgcmVjb2duaXplZCBhc3Nl
cnRfaW5fYXJyYXk6IFRlc3QgcHJvcGVydHkgJ3BzZXVkb0VsZW1lbnQnIHNob3VsZCBiZSBvbmUg
b2YgdGhlIHByb3BlcnRpZXMgb24gIEtleWZyYW1lRWZmZWN0IHZhbHVlICJwc2V1ZG9FbGVtZW50
IiBub3QgaW4gYXJyYXkgWyJnZXRUaW1pbmciLCAiZ2V0Q29tcHV0ZWRUaW1pbmciLCAidXBkYXRl
VGltaW5nIiwgInRhcmdldCIsICJpdGVyYXRpb25Db21wb3NpdGUiLCAiY29tcG9zaXRlIiwgImdl
dEtleWZyYW1lcyIsICJzZXRLZXlmcmFtZXMiLCAiS2V5ZnJhbWVFZmZlY3QgY29uc3RydWN0b3Ii
LCAiS2V5ZnJhbWVFZmZlY3QgY29weSBjb25zdHJ1Y3RvciJdCitQQVNTIEFsbCBwcm9wZXJ0eSBr
ZXlzIGFyZSByZWNvZ25pemVkIAogUEFTUyBLZXlmcmFtZUVmZmVjdC5nZXRUaW1pbmcgZG9lcyBO
T1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0
Q29tcHV0ZWRUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBB
U1MgS2V5ZnJhbWVFZmZlY3QudXBkYXRlVGltaW5nIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBj
aGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0LnRhcmdldCBkb2VzIE5PVCB0cmlnZ2Vy
IGEgc3R5bGUgY2hhbmdlIGV2ZW50IAorUEFTUyBLZXlmcmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50
IGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZm
ZWN0Lml0ZXJhdGlvbkNvbXBvc2l0ZSBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2
ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC5jb21wb3NpdGUgZG9lcyBOT1QgdHJpZ2dlciBhIHN0
eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0S2V5ZnJhbWVzIGRvZXMg
Tk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlm
cmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CmluZGV4IDAzZjVmYmQyYzJlZWNjODRiOTc2
MmEwMjRjNTJlMGI5ZjU5ZDMwMmUuLmM1MTI4MDJjNTU0MTRiNzdmYzQ1ZTM5YzgyZmU5YWFjNzYy
NDNkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0
ZWQudHh0CkBAIC00LDE4ICs0LDE4IEBAIFBBU1MgVGVzdCBzZXR0aW5nIHRhcmdldCBmcm9tIG51
bGwgdG8gYSB2YWxpZCB0YXJnZXQKIFBBU1MgVGVzdCBzZXR0aW5nIHRhcmdldCBmcm9tIGEgdmFs
aWQgdGFyZ2V0IHRvIG51bGwgCiBQQVNTIFRlc3Qgc2V0dGluZyB0YXJnZXQgZnJvbSBhIHZhbGlk
IHRhcmdldCB0byBhbm90aGVyIHRhcmdldCAKIFBBU1MgVGFyZ2V0IGVsZW1lbnQgY2FuIGJlIHNl
dCB0byBhIGZvcmVpZ24gZWxlbWVudCAKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8g
YW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHRhcmdldCBmaXJzdC4gYXNzZXJ0X2Vx
dWFsczogVmFsdWUgYXQgNTAlIHByb2dyZXNzIGFmdGVyIHNldHRpbmcgbmV3IHRhcmdldCBleHBl
Y3RlZCAiNTBweCIgYnV0IGdvdCAiMTBweCIKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwg
dG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3Qu
IGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0
YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCitQQVNTIENoYW5nZSB0YXJnZXQg
ZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmly
c3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhbiBleGlzdGluZyBwc2V1ZG9F
bGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4gCiBQQVNTIENoYW5nZSB0YXJnZXQg
ZnJvbSBhbiBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCB0byB0aGUgb3JpZ2luYXRpbmcgZWxlbWVu
dC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBl
eGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczog
QW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0
b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRl
ZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50
IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0
X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIg
Y2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgi
Ci1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBl
eGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczog
QW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0
b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRl
ZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVy
ZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gYXNz
ZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0
ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIw
cHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVk
b0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUw
JSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBn
b3QgIjEwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5n
IHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1ZG9FbGVtZW50IGZpcnN0LiBhc3NlcnRfZXF1YWxz
OiBWYWx1ZSBhdCA1MCUgcHJvZ3Jlc3MgYWZ0ZXIgc2V0dGluZyBuZXcgdGFyZ2V0IGV4cGVjdGVk
ICI1MHB4IiBidXQgZ290ICIxMHB4IgorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3Rp
bmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJn
ZXQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQg
ZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiAKK1BBU1Mg
Q2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5n
IHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBm
cm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50
IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBudWxs
IHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIAor
UEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhIG5vbi1leGlzdGluZyBwc2V1ZG9FbGVt
ZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4gCiBQQVNTIENoYW5nZSB0YXJnZXQgZnJv
bSBhIG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCB0byB0aGUgb3JpZ2luYXRpbmcgZWxlbWVu
dC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBu
b24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIGFzc2VydF9lcXVh
bHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8tZWxlbWVudCAocHNldWRvLXNl
bGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkg
dW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZl
cmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50
LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBvZiAybmQgZWxlbWVudCAoY3VycmVudGx5IHRhcmdldGVk
KSBhZnRlciBjaGFuZ2luZyB0aGUgZWZmZWN0IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdv
dCAiMjBweCIKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlm
ZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gYXNz
ZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50IChw
c2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5k
ZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5n
IHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBz
ZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6IFZhbHVlIG9mIDJuZCBlbGVtZW50IChjdXJyZW50
bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5nIHRoZSBlZmZlY3QgdGFyZ2V0IGV4cGVjdGVkICI1
MHB4IiBidXQgZ290ICIyMHB4IgorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3Rpbmcg
dG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFy
Z2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50
IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAor
UEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9u
LWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdl
IHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBw
c2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396524</attachid>
            <date>2020-04-15 06:26:39 -0700</date>
            <delta_ts>2020-04-15 06:58:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200415152637.patch</filename>
            <type>text/plain</type>
            <size>45673</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMDg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdkYjVlYzdlN2RiYTEw
MGExNjgwYmE5ZGUwOWYzNGQ2YjNhOTFmNS4uZWQyMmY3M2M0ZTY1NzkyMjY2YWY2YjI0NjM5MWMy
YzNiMDhhZmFlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIwLTA0LTE1ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50CisgICAgICAgIHByb3BlcnR5LCBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZAorICAgICAgICBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQg
YSBQc2V1ZG9FbGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBp
dCdzIG5vdCBiZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBv
ZiBhIDo6YmVmb3JlCisgICAgICAgIG9yIDo6YWZ0ZXIgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQi
IHN0eWxlIHJ1bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3Ig
InBzZXVkb0VsZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwKKyAgICAg
ICAgd2UgZW5zdXJlIGEgUHNldWRvRWxlbWVudCBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhv
c3QgZWxlbWVudCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQg
ZHVyaW5nIHN0eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMKKyAgICAgICAgYXJlIGFwcGxpZWQg
dG8gc3VjaCBwc2V1ZG8tZWxlbWVudHMgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1Rhcmdl
dGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBp
bmRpY2F0ZXMgdGhhdCBhCisgICAgICAgIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFy
Z2V0cyB0aGlzIHBzZXVkby1lbGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBI
YW5kbGUgdGhlIG5ldyBLZXlmcmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0
eSBpbiB0aGUgS2V5ZnJhbWVFZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpL
ZXlmcmFtZUVmZmVjdDo6dGFyZ2V0c1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJbmRpY2F0ZXMgd2hl
dGhlciB0aGlzIGVmZmVjdCB0YXJnZXRzIGEgcHNldWRvLWVsZW1lbnQgYW5kIG5vdCBhIHJlZ3Vs
YXIKKyAgICAgICAgZWxlbWVudCBvciBhIG51bGwgdGFyZ2V0LgorICAgICAgICAoV2ViQ29yZTo6
S2V5ZnJhbWVFZmZlY3Q6OnRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQgY29uc3QpOiBVc2Ug
dGhlIG5ldyB0YXJnZXRzUHNldWRvRWxlbWVudCgpIG1ldGhvZCB0byBkZXRlcm1pbmUgd2hldGhl
ciBhCisgICAgICAgIHBzZXVkby1lbGVtZW50IGlzIHRhcmdldGVkLiBXZSBhbHNvIHJlbW92ZSBh
biBhc3NlcnRpb24gdGhhdCBvbmx5IG1hZGUgc2Vuc2Ugd2hlbiBtX3BzZXVkb0lkIGNvdWxkIG9u
bHkgYmUgc2V0IHZpYSBhIENTUy1vcmlnaW5hdGVkCisgICAgICAgIGFuaW1hdGlvbi4KKyAgICAg
ICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQpOiBDYWxsIHRoZSBuZXcgaW52
YWxpZGF0ZVRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKSBtZXRob2QgaWYgdGhlIHByb3Zp
ZGVkIHZhbHVlIGRpZmZlcnMKKyAgICAgICAgZnJvbSB0aGUgc3RvcmVkIHZhbHVlIGZvciBtX3Rh
cmdldC4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0Ojpwc2V1ZG9FbGVtZW50IGNv
bnN0KTogUmV0dXJuIHRoZSBtYXRjaGluZyBub3JtYWxpemVkIHN0cmluZyB3aXRoIGEgYDo6YCBw
cmVmaXggZm9yIG1fcHNldWRvSWQgaWYgdGhlIHRhcmdldAorICAgICAgICBpcyBhIHBzZXVkby1l
bGVtZW50LiBOb3RlIHRoYXQgUHNldWRvRWxlbWVudDo6cHNldWRvRWxlbWVudE5hbWVGb3JFdmVu
dHMoKSB3aWxsIG9ubHkgcmV0dXJuIGEgc3RyaW5nIGZvciAiOjpiZWZvcmUiIGFuZCAiOjphZnRl
ciIgc2luY2UKKyAgICAgICAgd2Ugb25seSBrbm93IGhvdyB0byBhbmltYXRlIHRoZXNlIHBzZXVk
by1lbGVtZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpzZXRQc2V1ZG9F
bGVtZW50KTogRGV0ZXJtaW5lIGEgbWF0Y2hpbmcgUHNldWRvSWQsIGlmIGFueSwgZm9yIHRoZSBw
cm92aWRlZCBzdHJpbmcsIGFuZCBjYWxsIHRoZSBuZXcKKyAgICAgICAgaW52YWxpZGF0ZVRhcmdl
dEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKSBtZXRob2QgaWYgdGhlIHByb3ZpZGVkIHZhbHVlIGRp
ZmZlcnMgZnJvbSB0aGUgc3RvcmVkIHZhbHVlIGZvciBtX3BzZXVkb0lkLgorICAgICAgICAoV2Vi
Q29yZTo6S2V5ZnJhbWVFZmZlY3Q6OmludmFsaWRhdGVUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVt
ZW50KTogTmV3IG1ldGhvZCBjYWxsZWQgd2hlbiBlaXRoZXIgbV90YXJnZXQgb3IgbV9wc2V1ZG9J
ZCBpcyBjaGFuZ2VkCisgICAgICAgIHN1Y2ggdGhhdCB3ZSBjYW4gZW5zdXJlIHRoZSByZXF1aXJl
ZCBQc2V1ZG9FbGVtZW50IGlzIGNyZWF0ZWQgaWYgdGhlIGFuaW1hdGlvbiB0YXJnZXRzIGEgcHNl
dWRvLWVsZW1lbnQuIFRoZW4gd2UgcnVuIHRoZSBzYW1lIGxvZ2ljCisgICAgICAgIHRoYXQgd2Ug
dXNlZCB0byBpbiBLZXlmcmFtZUVmZmVjdDo6c2V0VGFyZ2V0KCkuCisgICAgICAgIChXZWJDb3Jl
OjpLZXlmcmFtZUVmZmVjdDo6cmVxdWlyZXNQc2V1ZG9FbGVtZW50IGNvbnN0KTogSW5kaWNhdGVz
IHdoZXRoZXIgYSBQc2V1ZG9FbGVtZW50IG11c3QgcmVtYWluIGNyZWF0ZWQgZm9yIHRoaXMgS2V5
ZnJhbWVFZmZlY3QsCisgICAgICAgIHdoaWNoIGlzIG9ubHkgbmVjZXNzYXJ5IGZvciBKUy1vcmln
aW5hdGVkIGVmZmVjdHMgdGFyZ2V0aW5nIGEgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0Lmg6CisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZm
ZWN0LmlkbDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmg6Cisg
ICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGw6CisgICAgICAgICog
YW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5
ZnJhbWVFZmZlY3RTdGFjazo6cmVxdWlyZXNQc2V1ZG9FbGVtZW50IGNvbnN0KTogSW5kaWNhdGVz
IHdoZXRoZXIgb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRo
ZSBzdGFjayB0YXJnZXQKKyAgICAgICAgdGhlIFBzZXVkb0VsZW1lbnQgb3duaW5nIHRoaXMgc3Rh
Y2suCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaDoKKyAgICAgICAg
KiBhbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkFuaW1h
dGlvbjo6Y29tbWl0U3R5bGVzKTogVXNlIEtleWZyYW1lRWZmZWN0Ojp0YXJnZXRzUHNldWRvRWxl
bWVudCgpIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBhbmltYXRpb24ncyBlZmZlY3QncyB0YXJn
ZXQgaXMgYQorICAgICAgICBwc2V1ZG8tZWxlbWVudCwgaW4gd2hpY2ggY2FzZSB3ZSBuZWVkIHRv
IHRocm93IGEgTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3IgZXhjZXB0aW9uLgorICAgICAgICAq
IGRvbS9Qc2V1ZG9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6
OnJlbmRlcmVySXNOZWVkZWQpOiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9yIG1vcmUgSlMt
b3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1
ZG8tZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6OmlzVGFyZ2V0ZWRC
eUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0cnVlIHdoZW4g
b25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjawor
ICAgICAgICB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRv
RWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRl
ckdlbmVyYXRlZENvbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJl
bmRlcmVycyk6IFJlbW92ZSB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0
eSB3YXMgc2V0IHNpbmNlIGl0J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNh
bGxlZAorICAgICAgICBkdWUgdG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIHRhcmdl
dGluZyB0aGUgZ2l2ZW4gcHNldWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlv
biB0aGF0IHRoZXJlIGFyZSBzdWNoIGtleWZyYW1lIGVmZmVjdHMgaW4KKyAgICAgICAgY2FzZSBu
byAiY29udGVudCIgcHJvcGVydHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRy
ZWVVcGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSBy
ZW1vdmUgcHNldWRvLWVsZW1lbnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZy
YW1lIGVmZmVjdHMKKyAgICAgICAgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1l
bnQuCisgICAgICAgICogc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGU6OlRyZWVSZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5p
bWF0ZWQgc3R5bGUgcmVzb2x1dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpT
LW9yaWdpbmF0ZWQga2V5ZnJhbWUgZWZmZWN0cy4KKwogMjAyMC0wNC0xNCAgQW50b2luZSBRdWlu
dCAgPGdyYW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIEZhY3RvciBQc2V1ZG9FbGVtZW50IGNy
ZWF0aW9uIGNhbGxzIGludG8gYSBzaW5nbGUgRWxlbWVudDo6ZW5zdXJlUHNldWRvRWxlbWVudChw
c2V1ZG9JZCkgbWV0aG9kCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Q29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1
NDk5YTAzZTNmMjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1
ZTRjMDk1NjhiNDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4
IEBAIEVOQUJMRV9XRUJHUFVfTUFDT1NfU0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVO
QUJMRV9XRUJYUiA9IDsKIAorRU5BQkxFX1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklN
QVRJT05TOworCiBFTkFCTEVfV0VCX0FQSV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FV
RElPID0gRU5BQkxFX1dFQl9BVURJTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAz
ZTNmMjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1
NjhiNDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBFTkFCTEVfV0VCR1BVX01B
Q09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVfV0VCWFIgPSA7CiAKK0VO
QUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9OUzsKKwogRU5BQkxFX1dF
Ql9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9IEVOQUJMRV9XRUJfQVVE
SU87CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNmMjY4NWY1YmIw
ZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVz
LnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9Db25maWd1cmF0aW9ucy9GZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJMRV9XRUJHUFVfTUFDT1Nf
U0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJYUiA9IDsKIAorRU5BQkxF
X1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJT05TOworCiBFTkFCTEVfV0VCX0FQ
SV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElPID0gRU5BQkxFX1dFQl9BVURJTzsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCmluZGV4IGQxYmY5
ZmE5ZDFmZDE0ZDRlZGQzNWM5ZjkzOTBmNzBmMzM0OWU1ZWEuLjcxMGIxY2ZjZmUyODFjYmVhMWMy
YThiM2E2Y2UwNjAxMmUwYTY4NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlv
bi9LZXlmcmFtZUVmZmVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZy
YW1lRWZmZWN0LmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNTU0tleWZyYW1lUnVs
ZS5oIgogI2luY2x1ZGUgIkNTU1Byb3BlcnR5QW5pbWF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTUHJv
cGVydHlOYW1lcy5oIgorI2luY2x1ZGUgIkNTU1NlbGVjdG9yLmgiCiAjaW5jbHVkZSAiQ1NTU3R5
bGVEZWNsYXJhdGlvbi5oIgogI2luY2x1ZGUgIkNTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaCIKICNp
bmNsdWRlICJDU1NUcmFuc2l0aW9uLmgiCkBAIC00ODYsNiArNDg3LDExIEBAIEV4Y2VwdGlvbk9y
PFJlZjxLZXlmcmFtZUVmZmVjdD4+IEtleWZyYW1lRWZmZWN0OjpjcmVhdGUoSlNHbG9iYWxPYmpl
Y3QmIGxleGljYWxHCiAgICAgICAgICAgICB0aW1pbmcuZHVyYXRpb24gPSBkdXJhdGlvbjsKICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGF1dG8ga2V5ZnJhbWVFZmZlY3RPcHRpb25zID0g
V1RGOjpnZXQ8S2V5ZnJhbWVFZmZlY3RPcHRpb25zPihvcHRpb25zVmFsdWUpOworCisgICAgICAg
ICAgICBhdXRvIHNldFBzZXVkb0VsZW1lbnRSZXN1bHQgPSBrZXlmcmFtZUVmZmVjdC0+c2V0UHNl
dWRvRWxlbWVudChrZXlmcmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCk7CisgICAgICAg
ICAgICBpZiAoc2V0UHNldWRvRWxlbWVudFJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAg
ICAgICAgICByZXR1cm4gc2V0UHNldWRvRWxlbWVudFJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7
CisKICAgICAgICAgICAgIHRpbWluZyA9IHsKICAgICAgICAgICAgICAgICBrZXlmcmFtZUVmZmVj
dE9wdGlvbnMuZHVyYXRpb24sCiAgICAgICAgICAgICAgICAga2V5ZnJhbWVFZmZlY3RPcHRpb25z
Lml0ZXJhdGlvbnMsCkBAIC0xMDcyLDEzICsxMDc4LDE2IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6
OnNldEFuaW1hdGlvbihXZWJBbmltYXRpb24qIGFuaW1hdGlvbikKICAgICB1cGRhdGVFZmZlY3RT
dGFja01lbWJlcnNoaXAoKTsKIH0KIAorYm9vbCBLZXlmcmFtZUVmZmVjdDo6dGFyZ2V0c1BzZXVk
b0VsZW1lbnQoKSBjb25zdAoreworICAgIHJldHVybiBtX3RhcmdldC5nZXQoKSAmJiBtX3BzZXVk
b0lkICE9IFBzZXVkb0lkOjpOb25lOworfQorCiBFbGVtZW50KiBLZXlmcmFtZUVmZmVjdDo6dGFy
Z2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fcHNldWRvSWQg
PT0gUHNldWRvSWQ6Ok5vbmUpCisgICAgaWYgKCF0YXJnZXRzUHNldWRvRWxlbWVudCgpKQogICAg
ICAgICByZXR1cm4gbV90YXJnZXQuZ2V0KCk7CiAKLSAgICBBU1NFUlQobV90YXJnZXQuZ2V0KCkp
OwotCiAgICAgaWYgKG1fcHNldWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkKICAgICAgICAgcmV0
dXJuIG1fdGFyZ2V0LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCk7CiAKQEAgLTEwOTIsMTggKzExMDEs
NjYgQEAgRWxlbWVudCogS2V5ZnJhbWVFZmZlY3Q6OnRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1l
bnQoKSBjb25zdAogCiB2b2lkIEtleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQoUmVmUHRyPEVsZW1l
bnQ+JiYgbmV3VGFyZ2V0KQogewotICAgIGF1dG8qIHByZXZpb3VzVGFyZ2V0ID0gdGFyZ2V0RWxl
bWVudE9yUHNldWRvRWxlbWVudCgpOwotICAgIGlmIChwcmV2aW91c1RhcmdldCA9PSBuZXdUYXJn
ZXQuZ2V0KCkpCisgICAgaWYgKG1fdGFyZ2V0LmdldCgpID09IG5ld1RhcmdldC5nZXQoKSkKICAg
ICAgICAgcmV0dXJuOwogCisgICAgYXV0byogcHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9F
bGVtZW50ID0gdGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgpOwogICAgIG1fdGFyZ2V0ID0g
bWFrZVdlYWtQdHIobmV3VGFyZ2V0LmdldCgpKTsKKyAgICBpbnZhbGlkYXRlVGFyZ2V0RWxlbWVu
dE9yUHNldWRvRWxlbWVudChwcmV2aW91c1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQpOwor
fQogCi0gICAgLy8gVW50aWwgd2Ugc3VwcG9ydCBwc2V1ZG8tZWxlbWVudHMgdmlhIHRoZSBXZWIg
QW5pbWF0aW9ucyBBUEksIGNoYW5naW5nIHRhcmdldCBtZWFucyB3ZSBzaG91bGQgcmVzZXQgbV9w
c2V1ZG9JZC4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjA3MjkwCi0gICAgbV9wc2V1ZG9JZCA9IFBzZXVkb0lkOjpOb25lOworY29uc3QgU3RyaW5nIEtl
eWZyYW1lRWZmZWN0Ojpwc2V1ZG9FbGVtZW50KCkgY29uc3QKK3sKKyAgICAvLyBodHRwczovL2Ry
YWZ0cy5jc3N3Zy5vcmcvd2ViLWFuaW1hdGlvbnMvI2RvbS1rZXlmcmFtZWVmZmVjdC1wc2V1ZG9l
bGVtZW50CisKKyAgICAvLyBUaGUgdGFyZ2V0IHBzZXVkby1zZWxlY3Rvci4gbnVsbCBpZiB0aGlz
IGVmZmVjdCBoYXMgbm8gZWZmZWN0IHRhcmdldCBvciBpZiB0aGUgZWZmZWN0IHRhcmdldCBpcyBh
biBlbGVtZW50IChpLmUuIG5vdCBhIHBzZXVkby1lbGVtZW50KS4KKyAgICAvLyBXaGVuIHRoZSBl
ZmZlY3QgdGFyZ2V0IGlzIGEgcHNldWRvLWVsZW1lbnQsIHRoaXMgc3BlY2lmaWVzIHRoZSBwc2V1
ZG8tZWxlbWVudCBzZWxlY3RvciAoZS5nLiA6OmJlZm9yZSkuCisgICAgaWYgKHRhcmdldHNQc2V1
ZG9FbGVtZW50KCkpCisgICAgICAgIHJldHVybiBQc2V1ZG9FbGVtZW50Ojpwc2V1ZG9FbGVtZW50
TmFtZUZvckV2ZW50cyhtX3BzZXVkb0lkKTsKKyAgICByZXR1cm4geyB9OworfQorCitFeGNlcHRp
b25Pcjx2b2lkPiBLZXlmcmFtZUVmZmVjdDo6c2V0UHNldWRvRWxlbWVudChjb25zdCBTdHJpbmcm
IHBzZXVkb0VsZW1lbnQpCit7CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL3dlYi1h
bmltYXRpb25zLyNkb20ta2V5ZnJhbWVlZmZlY3QtcHNldWRvZWxlbWVudAorCisgICAgLy8gT24g
c2V0dGluZywgc2V0cyB0aGUgdGFyZ2V0IHBzZXVkby1zZWxlY3RvciBvZiB0aGUgYW5pbWF0aW9u
IGVmZmVjdCB0byB0aGUgcHJvdmlkZWQgdmFsdWUgYWZ0ZXIgYXBwbHlpbmcgdGhlIGZvbGxvd2lu
ZyBleGNlcHRpb25zOgorICAgIC8vCisgICAgLy8gLSBJZiB0aGUgcHJvdmlkZWQgdmFsdWUgaXMg
bm90IG51bGwgYW5kIGlzIGFuIGludmFsaWQgPHBzZXVkby1lbGVtZW50LXNlbGVjdG9yPiwgdGhl
IHVzZXIgYWdlbnQgbXVzdCB0aHJvdyBhIERPTUV4Y2VwdGlvbiB3aXRoIGVycm9yCisgICAgLy8g
bmFtZSBTeW50YXhFcnJvciBhbmQgbGVhdmUgdGhlIHRhcmdldCBwc2V1ZG8tc2VsZWN0b3Igb2Yg
dGhpcyBhbmltYXRpb24gZWZmZWN0IHVuY2hhbmdlZC4gTm90ZSwgdGhhdCBpbnZhbGlkIGluIHRo
aXMgY29udGV4dCBmb2xsb3dzCisgICAgLy8gdGhlIGRlZmluaXRpb24gb2YgYW4gaW52YWxpZCBz
ZWxlY3RvciBkZWZpbmVkIGluIFtTRUxFQ1RPUlMtNF0gc3VjaCB0aGF0IHN5bnRhY3RpY2FsbHkg
aW52YWxpZCBwc2V1ZG8tZWxlbWVudHMgYXMgd2VsbCBhcyBwc2V1ZG8tZWxlbWVudHMKKyAgICAv
LyBmb3Igd2hpY2ggdGhlIHVzZXIgYWdlbnQgaGFzIG5vIHVzYWJsZSBsZXZlbCBvZiBzdXBwb3J0
IGFyZSBib3RoIGRlZW1lZCBpbnZhbGlkLgorICAgIC8vIC0gSWYgb25lIG9mIHRoZSBsZWdhY3kg
U2VsZWN0b3JzIExldmVsIDIgc2luZ2xlLWNvbG9uIHNlbGVjdG9ycyAoJzpiZWZvcmUnLCAnOmFm
dGVyJywgJzpmaXJzdC1sZXR0ZXInLCBvciAnOmZpcnN0LWxpbmUnKSBpcyBzcGVjaWZpZWQsCisg
ICAgLy8gdGhlIHRhcmdldCBwc2V1ZG8tc2VsZWN0b3IgbXVzdCBiZSBzZXQgdG8gdGhlIGVxdWl2
YWxlbnQgdHdvLWNvbG9uIHNlbGVjdG9yIChlLmcuICc6OmJlZm9yZScpLgorICAgIFBzZXVkb0lk
IHBzZXVkb0lkID0gUHNldWRvSWQ6Ok5vbmU7CisgICAgaWYgKCFwc2V1ZG9FbGVtZW50LmlzTnVs
bCgpKSB7CisgICAgICAgIGJvb2wgaXNMZWdhY3kgPSBwc2V1ZG9FbGVtZW50ID09ICI6YmVmb3Jl
IiB8fCBwc2V1ZG9FbGVtZW50ID09ICI6YWZ0ZXIiIHx8IHBzZXVkb0VsZW1lbnQgPT0gIjpmaXJz
dC1sZXR0ZXIiIHx8IHBzZXVkb0VsZW1lbnQgPT0gIjpmaXJzdC1saW5lIjsKKyAgICAgICAgYXV0
byBwc2V1ZG9UeXBlID0gQ1NTU2VsZWN0b3I6OnBhcnNlUHNldWRvRWxlbWVudFR5cGUocHNldWRv
RWxlbWVudC5zdWJzdHJpbmcoaXNMZWdhY3kgPyAxIDogMikpOworICAgICAgICBpZiAocHNldWRv
VHlwZSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxlbWVudFVua25vd24pCisgICAgICAgICAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgU3ludGF4RXJyb3IgfTsKKyAgICAgICAgcHNldWRvSWQgPSBDU1NT
ZWxlY3Rvcjo6cHNldWRvSWQocHNldWRvVHlwZSk7CisgICAgfQorCisgICAgaWYgKHBzZXVkb0lk
ID09IG1fcHNldWRvSWQpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBhdXRvKiBwcmV2aW91
c1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQgPSB0YXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVt
ZW50KCk7CisgICAgbV9wc2V1ZG9JZCA9IHBzZXVkb0lkOworICAgIGludmFsaWRhdGVUYXJnZXRF
bGVtZW50T3JQc2V1ZG9FbGVtZW50KHByZXZpb3VzVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVu
dCk7CisKKyAgICByZXR1cm4geyB9OworfQorCit2b2lkIEtleWZyYW1lRWZmZWN0OjppbnZhbGlk
YXRlVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudChFbGVtZW50KiBwcmV2aW91c1RhcmdldEVs
ZW1lbnRPclBzZXVkb0VsZW1lbnQpCit7CisgICAgYXV0byogbmV3VGFyZ2V0RWxlbWVudE9yUHNl
dWRvRWxlbWVudCA9IHRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKTsKKworICAgIC8vIFdl
IG11c3QgZW5zdXJlIGEgUHNldWRvRWxlbWVudCBleGlzdHMgZm9yIHRoaXMgbV90YXJnZXQgLyBt
X3BzZXVkb0lkIHBhaXIgaWYgYm90aCBhcmUgc3BlY2lmaWVkLgorICAgIGlmICghbmV3VGFyZ2V0
RWxlbWVudE9yUHNldWRvRWxlbWVudCAmJiBtX3RhcmdldC5nZXQoKSAmJiBtX3BzZXVkb0lkICE9
IFBzZXVkb0lkOjpOb25lKQorICAgICAgICBuZXdUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50
ID0gJm1fdGFyZ2V0LT5lbnN1cmVQc2V1ZG9FbGVtZW50KG1fcHNldWRvSWQpOwogCiAgICAgaWYg
KGF1dG8qIGVmZmVjdEFuaW1hdGlvbiA9IGFuaW1hdGlvbigpKQotICAgICAgICBlZmZlY3RBbmlt
YXRpb24tPmVmZmVjdFRhcmdldERpZENoYW5nZShwcmV2aW91c1RhcmdldCwgdGFyZ2V0RWxlbWVu
dE9yUHNldWRvRWxlbWVudCgpKTsKKyAgICAgICAgZWZmZWN0QW5pbWF0aW9uLT5lZmZlY3RUYXJn
ZXREaWRDaGFuZ2UocHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50LCBuZXdUYXJn
ZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KTsKIAogICAgIGNsZWFyQmxlbmRpbmdLZXlmcmFtZXMo
KTsKIApAQCAtMTExMywxNCArMTE3MCwxNCBAQCB2b2lkIEtleWZyYW1lRWZmZWN0OjpzZXRUYXJn
ZXQoUmVmUHRyPEVsZW1lbnQ+JiYgbmV3VGFyZ2V0KQogCiAgICAgLy8gTGlrZXdpc2UsIHdlIG5l
ZWQgdG8gaW52YWxpZGF0ZSBzdHlsZXMgb24gdGhlIHByZXZpb3VzIHRhcmdldCBzbyB0aGF0CiAg
ICAgLy8gYW55IGFuaW1hdGVkIHN0eWxlcyBhcmUgcmVtb3ZlZCBpbW1lZGlhdGVseS4KLSAgICBp
bnZhbGlkYXRlRWxlbWVudChwcmV2aW91c1RhcmdldCk7CisgICAgaW52YWxpZGF0ZUVsZW1lbnQo
cHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KTsKIAotICAgIGlmIChwcmV2aW91
c1RhcmdldCkgewotICAgICAgICBwcmV2aW91c1RhcmdldC0+ZW5zdXJlS2V5ZnJhbWVFZmZlY3RT
dGFjaygpLnJlbW92ZUVmZmVjdCgqdGhpcyk7CisgICAgaWYgKHByZXZpb3VzVGFyZ2V0RWxlbWVu
dE9yUHNldWRvRWxlbWVudCkgeworICAgICAgICBwcmV2aW91c1RhcmdldEVsZW1lbnRPclBzZXVk
b0VsZW1lbnQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5yZW1vdmVFZmZlY3QoKnRoaXMp
OwogICAgICAgICBtX2luVGFyZ2V0RWZmZWN0U3RhY2sgPSBmYWxzZTsKICAgICB9Ci0gICAgaWYg
KHRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKSkKLSAgICAgICAgbV9pblRhcmdldEVmZmVj
dFN0YWNrID0gdGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgpLT5lbnN1cmVLZXlmcmFtZUVm
ZmVjdFN0YWNrKCkuYWRkRWZmZWN0KCp0aGlzKTsKKyAgICBpZiAobmV3VGFyZ2V0RWxlbWVudE9y
UHNldWRvRWxlbWVudCkKKyAgICAgICAgbV9pblRhcmdldEVmZmVjdFN0YWNrID0gbmV3VGFyZ2V0
RWxlbWVudE9yUHNldWRvRWxlbWVudC0+ZW5zdXJlS2V5ZnJhbWVFZmZlY3RTdGFjaygpLmFkZEVm
ZmVjdCgqdGhpcyk7CiB9CiAKIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OmFwcGx5KFJlbmRlclN0eWxl
JiB0YXJnZXRTdHlsZSkKQEAgLTE2OTgsNCArMTc1NSw5IEBAIGJvb2wgS2V5ZnJhbWVFZmZlY3Q6
OmNvbXB1dGVUcmFuc2Zvcm1lZEV4dGVudFZpYU1hdHJpeChjb25zdCBGbG9hdFJlY3QmIHJlbmRl
cmVyCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgS2V5ZnJhbWVFZmZlY3Q6OnJlcXVpcmVz
UHNldWRvRWxlbWVudCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYmxlbmRpbmdLZXlmcmFtZXNT
b3VyY2UgPT0gQmxlbmRpbmdLZXlmcmFtZXNTb3VyY2U6OldlYkFuaW1hdGlvbiAmJiB0YXJnZXRz
UHNldWRvRWxlbWVudCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaCBiL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCmluZGV4IDk2YjI5N2FlMDI3ODM5MmUzODZk
YjJiMDk1MjE5ZTRjMDE3YmJjZDQuLjA4MmQzYjIyZDcyYWFhOWY2MzZiZjkyNzQ4M2JhOGIyZGEz
YTBmZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVj
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oCkBAIC0x
MDUsNiArMTA1LDEwIEBAIHB1YmxpYzoKICAgICBFbGVtZW50KiB0YXJnZXRFbGVtZW50T3JQc2V1
ZG9FbGVtZW50KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRUYXJnZXQoUmVmUHRyPEVsZW1lbnQ+JiYp
OwogCisgICAgYm9vbCB0YXJnZXRzUHNldWRvRWxlbWVudCgpIGNvbnN0OworICAgIGNvbnN0IFN0
cmluZyBwc2V1ZG9FbGVtZW50KCkgY29uc3Q7CisgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2V0UHNl
dWRvRWxlbWVudChjb25zdCBTdHJpbmcmKTsKKwogICAgIFZlY3RvcjxKU0M6OlN0cm9uZzxKU0M6
OkpTT2JqZWN0Pj4gZ2V0S2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxPYmplY3QmKTsKICAgICBFeGNl
cHRpb25Pcjx2b2lkPiBzZXRLZXlmcmFtZXMoSlNDOjpKU0dsb2JhbE9iamVjdCYsIEpTQzo6U3Ry
b25nPEpTQzo6SlNPYmplY3Q+JiYpOwogCkBAIC0xNTgsNiArMTYyLDggQEAgcHVibGljOgogCiAg
ICAgY29uc3QgUmVuZGVyU3R5bGUqIHVuYW5pbWF0ZWRTdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1f
dW5hbmltYXRlZFN0eWxlLmdldCgpOyB9CiAKKyAgICBib29sIHJlcXVpcmVzUHNldWRvRWxlbWVu
dCgpIGNvbnN0OworCiBwcml2YXRlOgogICAgIEtleWZyYW1lRWZmZWN0KEVsZW1lbnQqLCBQc2V1
ZG9JZCk7CiAKQEAgLTE2OCw2ICsxNzQsNyBAQCBwcml2YXRlOgogICAgIERvY3VtZW50KiBkb2N1
bWVudCgpIGNvbnN0OwogICAgIHZvaWQgdXBkYXRlRWZmZWN0U3RhY2tNZW1iZXJzaGlwKCk7CiAg
ICAgdm9pZCBjb3B5UHJvcGVydGllc0Zyb21Tb3VyY2UoUmVmPEtleWZyYW1lRWZmZWN0PiYmKTsK
KyAgICB2b2lkIGludmFsaWRhdGVUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KEVsZW1lbnQq
KTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBwcm9jZXNzS2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxP
YmplY3QmLCBKU0M6OlN0cm9uZzxKU0M6OkpTT2JqZWN0PiYmKTsKICAgICB2b2lkIGFkZFBlbmRp
bmdBY2NlbGVyYXRlZEFjdGlvbihBY2NlbGVyYXRlZEFjdGlvbik7CiAgICAgdm9pZCB1cGRhdGVB
Y2NlbGVyYXRlZEFjdGlvbnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlv
bi9LZXlmcmFtZUVmZmVjdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVF
ZmZlY3QuaWRsCmluZGV4IGQyZDA3YWNjNDM2NGVhYjhiZjFlMGFiNmUxZDAzMmI4YWU2OWY3MDAu
LmQzNDRiYTIwNjFlNDJiYTJiMWE4ZGJkNDVkNmIyOTM1ZGJiYzdlMWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5pZGwKKysrIGIvU291cmNlL1dl
YkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmlkbApAQCAtMjMsNiArMjMsOCBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCit0eXBlZGVmIFVTVlN0cmluZyBDU1NPTVN0cmluZzsKKwogWwog
ICAgIEVuYWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9ucywKICAgICBFeHBvc2VkPVdpbmRvdywK
QEAgLTMzLDYgKzM1LDcgQEAKICAgICBDb25zdHJ1Y3RvcihLZXlmcmFtZUVmZmVjdCBzb3VyY2Up
CiBdIGludGVyZmFjZSBLZXlmcmFtZUVmZmVjdCA6IEFuaW1hdGlvbkVmZmVjdCB7CiAgICAgYXR0
cmlidXRlIEVsZW1lbnQ/IHRhcmdldDsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIGF0dHJpYnV0
ZSBDU1NPTVN0cmluZz8gcHNldWRvRWxlbWVudDsKICAgICBbRW5hYmxlZEF0UnVudGltZT1XZWJB
bmltYXRpb25zQ29tcG9zaXRlT3BlcmF0aW9uc10gYXR0cmlidXRlIEl0ZXJhdGlvbkNvbXBvc2l0
ZU9wZXJhdGlvbiBpdGVyYXRpb25Db21wb3NpdGU7CiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9V2Vi
QW5pbWF0aW9uc0NvbXBvc2l0ZU9wZXJhdGlvbnNdIGF0dHJpYnV0ZSBDb21wb3NpdGVPcGVyYXRp
b24gY29tcG9zaXRlOwogICAgIFtDYWxsV2l0aD1HbG9iYWxPYmplY3RdIHNlcXVlbmNlPG9iamVj
dD4gZ2V0S2V5ZnJhbWVzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3RPcHRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJh
bWVFZmZlY3RPcHRpb25zLmgKaW5kZXggYWJhN2QyZjM3YzAzODVkZmYwMjFkNzVkMGI4Y2ViN2Zi
YjFmODE1MS4uM2VkY2I4NDUwMzEzYThmMDIzYWU2NGQ4MWNiODAwZjY2YWY0NWI1MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaApAQCAt
MzUsNiArMzUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBzdHJ1Y3QgS2V5ZnJhbWVFZmZlY3RP
cHRpb25zIDogRWZmZWN0VGltaW5nIHsKICAgICBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24g
aXRlcmF0aW9uQ29tcG9zaXRlIHsgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uOjpSZXBsYWNl
IH07CiAgICAgQ29tcG9zaXRlT3BlcmF0aW9uIGNvbXBvc2l0ZSB7IENvbXBvc2l0ZU9wZXJhdGlv
bjo6UmVwbGFjZSB9OworICAgIFN0cmluZyBwc2V1ZG9FbGVtZW50OwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZy
YW1lRWZmZWN0T3B0aW9ucy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVF
ZmZlY3RPcHRpb25zLmlkbAppbmRleCAxZmQ4OWQyODE1ZWViOTYwNjAxNGY1ZjYxMTMxNWRiZjAx
YzY5ZjgwLi42MWViZmYxNmM4NTZhYjY4NDM5NGViMzk3OWYwYTFlMGU4MDliYjI0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbApA
QCAtMjMsNyArMjMsMTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAordHlwZWRlZiBVU1ZTdHJp
bmcgQ1NTT01TdHJpbmc7CisKIGRpY3Rpb25hcnkgS2V5ZnJhbWVFZmZlY3RPcHRpb25zIDogRWZm
ZWN0VGltaW5nIHsKICAgICBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24gaXRlcmF0aW9uQ29t
cG9zaXRlID0gInJlcGxhY2UiOwogICAgIENvbXBvc2l0ZU9wZXJhdGlvbiBjb21wb3NpdGUgPSAi
cmVwbGFjZSI7CisgICAgQ1NTT01TdHJpbmc/IHBzZXVkb0VsZW1lbnQgPSBudWxsOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcAppbmRl
eCBmNGIzZmFhMjJmOTNlYzUyYzQ3ZThiMzUwNDgwZTBmMWQ3YTNjOTQ2Li5iMTU5NTQ0YjgyZjVi
ZDBmMDk4NjY5NDAyNDhmNDBmNGIxMzk4Y2Y2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3BwCkBAIC01OSw2ICs1OSwxNSBAQCB2b2lkIEtl
eWZyYW1lRWZmZWN0U3RhY2s6OnJlbW92ZUVmZmVjdChLZXlmcmFtZUVmZmVjdCYgZWZmZWN0KQog
ICAgIG1fZWZmZWN0cy5yZW1vdmVGaXJzdCgmZWZmZWN0KTsKIH0KIAorYm9vbCBLZXlmcmFtZUVm
ZmVjdFN0YWNrOjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQoKSBjb25zdAoreworICAgIGZvciAoYXV0
byYgZWZmZWN0IDogbV9lZmZlY3RzKSB7CisgICAgICAgIGlmIChlZmZlY3QtPnJlcXVpcmVzUHNl
dWRvRWxlbWVudCgpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVy
biBmYWxzZTsKK30KKwogYm9vbCBLZXlmcmFtZUVmZmVjdFN0YWNrOjppc0N1cnJlbnRseUFmZmVj
dGluZ1Byb3BlcnR5KENTU1Byb3BlcnR5SUQgcHJvcGVydHkpIGNvbnN0CiB7CiAgICAgZm9yIChh
dXRvJiBlZmZlY3QgOiBtX2VmZmVjdHMpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3RTdGFjay5oCmluZGV4IDk3OGQ4NGRjZDU2ODBkMjhjMGEzZDY5OWUyMzNm
ZGM3ZDNhZWE2OTAuLjFkYjg0MDQyNjhlYzc5M2FjYjRmNTEyNzBhYmNjZDEwNGE1NDZjZjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaApAQCAt
NDcsNiArNDcsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgQW5pbWF0aW9uTGlzdCogY3NzQW5pbWF0
aW9uTGlzdCgpIGNvbnN0IHsgcmV0dXJuIG1fY3NzQW5pbWF0aW9uTGlzdC5nZXQoKTsgfQogICAg
IHZvaWQgc2V0Q1NTQW5pbWF0aW9uTGlzdChSZWZQdHI8Y29uc3QgQW5pbWF0aW9uTGlzdD4mJik7
CiAgICAgYm9vbCBpc0N1cnJlbnRseUFmZmVjdGluZ1Byb3BlcnR5KENTU1Byb3BlcnR5SUQpIGNv
bnN0OworICAgIGJvb2wgcmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkgY29uc3Q7CiAKIHByaXZhdGU6
CiAgICAgdm9pZCBlbnN1cmVFZmZlY3RzQXJlU29ydGVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1h
dGlvbi9XZWJBbmltYXRpb24uY3BwCmluZGV4IGM3ODU2MTRhMjViNzNhY2Y0NzQwMmIyNzk5ZTI1
NWY0ZDdjZTM1N2QuLmViNWNkNjUzM2FjNmYyNTcyMTFlNGZjMjk0OTYxMzMwMjlmODdjZGEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCkBAIC0xMzY3LDcgKzEz
NjcsNyBAQCBFeGNlcHRpb25Pcjx2b2lkPiBXZWJBbmltYXRpb246OmNvbW1pdFN0eWxlcygpCiAg
ICAgLy8KICAgICAvLyAyLjEgSWYgdGFyZ2V0IGlzIG5vdCBhbiBlbGVtZW50IGNhcGFibGUgb2Yg
aGF2aW5nIGEgc3R5bGUgYXR0cmlidXRlIChmb3IgZXhhbXBsZSwgaXQgaXMgYSBwc2V1ZG8tZWxl
bWVudCBvciBpcyBhbiBlbGVtZW50IGluIGEKICAgICAvLyBkb2N1bWVudCBmb3JtYXQgZm9yIHdo
aWNoIHN0eWxlIGF0dHJpYnV0ZXMgYXJlIG5vdCBkZWZpbmVkKSB0aHJvdyBhICJOb01vZGlmaWNh
dGlvbkFsbG93ZWRFcnJvciIgRE9NRXhjZXB0aW9uIGFuZCBhYm9ydCB0aGVzZSBzdGVwcy4KLSAg
ICBpZiAoIWlzPFN0eWxlZEVsZW1lbnQ+KHRhcmdldCkpCisgICAgaWYgKCFpczxTdHlsZWRFbGVt
ZW50Pih0YXJnZXQpIHx8IGVmZmVjdC0+dGFyZ2V0c1BzZXVkb0VsZW1lbnQoKSkKICAgICAgICAg
cmV0dXJuIEV4Y2VwdGlvbiB7IE5vTW9kaWZpY2F0aW9uQWxsb3dlZEVycm9yIH07CiAKICAgICBh
dXRvJiBzdHlsZWRFbGVtZW50ID0gZG93bmNhc3Q8U3R5bGVkRWxlbWVudD4oKnRhcmdldCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5jcHAKaW5kZXggMzJhZTgzMjg5ZjhmOGY3Y2NmMzA3
OTU1YzI5ZThiMTVlNDFiZDE2OS4uZTg0YzIyOWIzOTdiZDViZTkwZGZhYThiYjhmY2VlOTFiM2Rk
ODE5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcApAQCAtMzIsNiArMzIsNyBA
QAogI2luY2x1ZGUgIkNvbnRlbnREYXRhLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRUaW1lbGluZS5o
IgogI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgorI2luY2x1ZGUgIktleWZy
YW1lRWZmZWN0U3RhY2suaCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAi
UmVuZGVySW1hZ2UuaCIKICNpbmNsdWRlICJSZW5kZXJRdW90ZS5oIgpAQCAtMTAwLDcgKzEwMSwx
NCBAQCB2b2lkIFBzZXVkb0VsZW1lbnQ6OmNsZWFySG9zdEVsZW1lbnQoKQogCiBib29sIFBzZXVk
b0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewot
ICAgIHJldHVybiBwc2V1ZG9FbGVtZW50UmVuZGVyZXJJc05lZWRlZCgmc3R5bGUpOworICAgIHJl
dHVybiBwc2V1ZG9FbGVtZW50UmVuZGVyZXJJc05lZWRlZCgmc3R5bGUpIHx8IGlzVGFyZ2V0ZWRC
eUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpOworfQorCitib29sIFBzZXVk
b0VsZW1lbnQ6OmlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVu
dCgpCit7CisgICAgaWYgKGF1dG8qIHN0YWNrID0ga2V5ZnJhbWVFZmZlY3RTdGFjaygpKQorICAg
ICAgICByZXR1cm4gc3RhY2stPnJlcXVpcmVzUHNldWRvRWxlbWVudCgpOworICAgIHJldHVybiBm
YWxzZTsKIH0KIAogfSAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Qc2V1ZG9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5oCmlu
ZGV4IDJmYWQzMWQ2MGUxZGY4YjE4NGExZGJmNzk0YzlhMjkxZmJjODMzNWQuLmVjNzVlNjEyMGY5
Yzk4ZjhjOTNkYmI1N2VhZmE2OWNmNDJiN2NkODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Qc2V1ZG9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1l
bnQuaApAQCAtNDEsNiArNDEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjbGVhckhvc3RFbGVtZW50
KCk7CiAKICAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBvdmVy
cmlkZTsKKyAgICBib29sIGlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRv
RWxlbWVudCgpOwogCiAgICAgYm9vbCBjYW5TdGFydFNlbGVjdGlvbigpIGNvbnN0IG92ZXJyaWRl
IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgYm9vbCBjYW5Db250YWluUmFuZ2VFbmRQb2ludCgpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdl
bmVyYXRlZENvbnRlbnQuY3BwCmluZGV4IGE5NDE3ZDJlYTk5NzkwNWVlZDgwOWVmM2JlYTdjMzdk
OGZmMmJiOWMuLmFlMWI1ZmZkZjg2ZTliYjE4ZTZiOWZkYWU4NjEzNWIxNmJhZjBkYzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRl
ckdlbmVyYXRlZENvbnRlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRh
dGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuY3BwCkBAIC03MSwxMiArNzEs
MTYgQEAgdm9pZCBSZW5kZXJUcmVlVXBkYXRlcjo6R2VuZXJhdGVkQ29udGVudDo6dXBkYXRlUXVv
dGVzVXBUbyhSZW5kZXJRdW90ZSogbGFzdFF1b3QKIAogc3RhdGljIHZvaWQgY3JlYXRlQ29udGVu
dFJlbmRlcmVycyhSZW5kZXJUcmVlQnVpbGRlciYgYnVpbGRlciwgUmVuZGVyRWxlbWVudCYgcHNl
dWRvUmVuZGVyZXIsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsKLSAgICBBU1NFUlQoc3R5
bGUuY29udGVudERhdGEoKSk7Ci0KLSAgICBmb3IgKGNvbnN0IENvbnRlbnREYXRhKiBjb250ZW50
ID0gc3R5bGUuY29udGVudERhdGEoKTsgY29udGVudDsgY29udGVudCA9IGNvbnRlbnQtPm5leHQo
KSkgewotICAgICAgICBhdXRvIGNoaWxkID0gY29udGVudC0+Y3JlYXRlQ29udGVudFJlbmRlcmVy
KHBzZXVkb1JlbmRlcmVyLmRvY3VtZW50KCksIHN0eWxlKTsKLSAgICAgICAgaWYgKHBzZXVkb1Jl
bmRlcmVyLmlzQ2hpbGRBbGxvd2VkKCpjaGlsZCwgc3R5bGUpKQotICAgICAgICAgICAgYnVpbGRl
ci5hdHRhY2gocHNldWRvUmVuZGVyZXIsIFdURk1vdmUoY2hpbGQpKTsKKyAgICBpZiAoYXV0byog
Y29udGVudERhdGEgPSBzdHlsZS5jb250ZW50RGF0YSgpKSB7CisgICAgICAgIGZvciAoY29uc3Qg
Q29udGVudERhdGEqIGNvbnRlbnQgPSBjb250ZW50RGF0YTsgY29udGVudDsgY29udGVudCA9IGNv
bnRlbnQtPm5leHQoKSkgeworICAgICAgICAgICAgYXV0byBjaGlsZCA9IGNvbnRlbnQtPmNyZWF0
ZUNvbnRlbnRSZW5kZXJlcihwc2V1ZG9SZW5kZXJlci5kb2N1bWVudCgpLCBzdHlsZSk7CisgICAg
ICAgICAgICBpZiAocHNldWRvUmVuZGVyZXIuaXNDaGlsZEFsbG93ZWQoKmNoaWxkLCBzdHlsZSkp
CisgICAgICAgICAgICAgICAgYnVpbGRlci5hdHRhY2gocHNldWRvUmVuZGVyZXIsIFdURk1vdmUo
Y2hpbGQpKTsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIC8vIFRoZSBvbmx5IHZh
bGlkIHNjZW5hcmlvIHdoZXJlIHRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aXRob3V0IHRoZSAiY29u
dGVudCIgcHJvcGVydHkgYmVpbmcgc2V0CisgICAgICAgIC8vIGlzIHRoZSBjYXNlIHdoZXJlIGEg
cHNldWRvLWVsZW1lbnQgaGFzIGFuaW1hdGlvbnMgc2V0IG9uIGl0IHZpYSB0aGUgV2ViIEFuaW1h
dGlvbnMgQVBJLgorICAgICAgICBBU1NFUlQoaXM8UHNldWRvRWxlbWVudD4ocHNldWRvUmVuZGVy
ZXIuZWxlbWVudCgpKSAmJiBkb3duY2FzdDxQc2V1ZG9FbGVtZW50PigqcHNldWRvUmVuZGVyZXIu
ZWxlbWVudCgpKS5pc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1l
bnQoKSk7CiAgICAgfQogfQogCkBAIC05Nyw3ICsxMDEsNyBAQCB2b2lkIFJlbmRlclRyZWVVcGRh
dGVyOjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KEVsZW1lbnQmIGN1cnJl
bnQsCiAgICAgaWYgKGF1dG8qIHJlbmRlcmVyID0gcHNldWRvRWxlbWVudCA/IHBzZXVkb0VsZW1l
bnQtPnJlbmRlcmVyKCkgOiBudWxscHRyKQogICAgICAgICBtX3VwZGF0ZXIucmVuZGVyVHJlZVBv
c2l0aW9uKCkuaW52YWxpZGF0ZU5leHRTaWJsaW5nKCpyZW5kZXJlcik7CiAKLSAgICBpZiAoIW5l
ZWRzUHNldWRvRWxlbWVudCh1cGRhdGUpKSB7CisgICAgaWYgKCFuZWVkc1BzZXVkb0VsZW1lbnQo
dXBkYXRlKSAmJiAoIXBzZXVkb0VsZW1lbnQgfHwgIXBzZXVkb0VsZW1lbnQtPmlzVGFyZ2V0ZWRC
eUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpKSkgewogICAgICAgICBpZiAo
cHNldWRvRWxlbWVudCkgewogICAgICAgICAgICAgaWYgKHBzZXVkb0lkID09IFBzZXVkb0lkOjpC
ZWZvcmUpCiAgICAgICAgICAgICAgICAgcmVtb3ZlQmVmb3JlUHNldWRvRWxlbWVudChjdXJyZW50
LCBtX3VwZGF0ZXIubV9idWlsZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlVHJlZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJl
c29sdmVyLmNwcAppbmRleCA1MDczODQ5NDVjYmU0OWU2YjgzOGU1ZDAxMGFhZGEyZDdmZWQ1Zjlk
Li4zZThmM2M5MjA4ZGQ0YzM4N2I1YmU2NjYzZGM3NzM2ZmVlODlmNDJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCkBAIC0yNjUsNyArMjY1LDEyIEBAIEVs
ZW1lbnRVcGRhdGUgVHJlZVJlc29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxl
bWVudCwgY29uc3QgRWxlbWVudFVwCiAgICAgICAgIHJldHVybiB7IH07CiAKICAgICBhdXRvIHBz
ZXVkb1N0eWxlID0gc2NvcGUoKS5yZXNvbHZlci5wc2V1ZG9TdHlsZUZvckVsZW1lbnQoZWxlbWVu
dCwgeyBwc2V1ZG9JZCB9LCAqZWxlbWVudFVwZGF0ZS5zdHlsZSwgcGFyZW50Qm94U3R5bGVGb3JQ
c2V1ZG8oZWxlbWVudFVwZGF0ZSksICZzY29wZSgpLnNlbGVjdG9yRmlsdGVyKTsKLSAgICBpZiAo
IXBzZXVkb0VsZW1lbnRSZW5kZXJlcklzTmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSkKKyAgICBp
ZiAoIXBzZXVkb1N0eWxlKQorICAgICAgICByZXR1cm4geyB9OworCisgICAgYXV0byogcHNldWRv
RWxlbWVudCA9IHBzZXVkb0lkID09IFBzZXVkb0lkOjpCZWZvcmUgPyBlbGVtZW50LmJlZm9yZVBz
ZXVkb0VsZW1lbnQoKSA6IGVsZW1lbnQuYWZ0ZXJQc2V1ZG9FbGVtZW50KCk7CisgICAgYm9vbCBo
YXNBbmltYXRpb25zID0gcHNldWRvRWxlbWVudCAmJiBwc2V1ZG9FbGVtZW50LT5pc1RhcmdldGVk
QnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKTsKKyAgICBpZiAoIXBzZXVk
b0VsZW1lbnRSZW5kZXJlcklzTmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSAmJiAhaGFzQW5pbWF0
aW9ucykKICAgICAgICAgcmV0dXJuIHsgfTsKIAogICAgIHJldHVybiBjcmVhdGVBbmltYXRlZEVs
ZW1lbnRVcGRhdGUoV1RGTW92ZShwc2V1ZG9TdHlsZSksIGVsZW1lbnQuZW5zdXJlUHNldWRvRWxl
bWVudChwc2V1ZG9JZCksIGVsZW1lbnRVcGRhdGUuY2hhbmdlKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2Uv
V2ViS2l0L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IGE3NGI0
YTY2NmYyNTQ5OWEwM2UzZjI2ODVmNWJiMGQwYjIxYzUyOTQuLmViNzEwZjI4N2ZmNzU2N2ExOWNj
YmNkZTcxNWU0YzA5NTY4YjQ0NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9Db25maWd1
cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJM
RV9XRUJHUFVfTUFDT1NfU0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJY
UiA9IDsKIAorRU5BQkxFX1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJT05TOwor
CiBFTkFCTEVfV0VCX0FQSV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElPID0gRU5B
QkxFX1dFQl9BVURJTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2
ZjI1NDk5YTAzZTNmMjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2Rl
NzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2
ICs0MDEsOCBAQCBFTkFCTEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BV
OwogCiBFTkFCTEVfV0VCWFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9X
RUJfQU5JTUFUSU9OUzsKKwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxF
X1dFQl9BVURJTyA9IEVOQUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCBh
NzRiNGE2NjZmMjU0OTlhMDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYyODdmZjc1Njdh
MTljY2JjZGU3MTVlNGMwOTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJ
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2
ICs0MDEsOCBAQCBFTkFCTEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BV
OwogCiBFTkFCTEVfV0VCWFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9X
RUJfQU5JTUFUSU9OUzsKKwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxF
X1dFQl9BVURJTyA9IEVOQUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZwppbmRleCAyNDcwNDgyZWY2NGVmOGE3OTA2MmIwMDA4NjJiMDAzZWJiMDY1Njk0Li5kNzRlZWMw
NzQwYTkyZTYzM2JkMTZiNzQ1NzlkNGMyMmE4NWRjMDQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wNC0xNSAgQW50b2luZSBRdWludCAgPGdy
YW91dHNAYXBwbGUuY29tPgorCisgICAgICAgIFtXZWIgQW5pbWF0aW9uc10gQWRkIHN1cHBvcnQg
Zm9yIGBwc2V1ZG9FbGVtZW50YCBvbiBgS2V5ZnJhbWVFZmZlY3RgIGFuZCBgS2V5ZnJhbWVFZmZl
Y3RPcHRpb25zYAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA3MjkwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTE5OTAwMz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYXJrIDIzIGFkZGl0aW9uYWwg
V1BUIHRlc3RzIGFzIFBBU1MuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1l
bnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMu
dGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
LWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5p
bWF0ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5
ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQ6CisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZl
Y3QvdGFyZ2V0LWV4cGVjdGVkLnR4dDoKKwogMjAyMC0wNC0xNCAgWW91ZW5uIEZhYmxldCAgPHlv
dWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVzeW5jIGZlYXR1cmVwb2xpY3kuanMgdG8gZml4
IFdQVCBtZWRpYWNhcHR1cmUtc3RyZWFtcy9NZWRpYVN0cmVhbS1kZWZhdWx0LWZlYXR1cmUtcG9s
aWN5Lmh0dHBzLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMu
dGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVu
dGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCAzYzYyMzgyMDI3ZmJkYTY0NzE4MTI0NTNhYWQ3MGIy
YjM0NTlhNGU0Li5kMGJhYmY1NjgzZWFlZWFjM2JlODA5NmEyYzUwZjJiYTYxNmMyOTY5IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtYW5pbWF0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWFuaW1hdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQu
dHh0CkBAIC0xMyw1ICsxMyw1IEBAIFBBU1MgRmluaXNoZWQgYnV0IG5vdCBmaWxsaW5nIENTUyBB
bmltYXRpb25zIGFyZSBub3QgcmV0dXJuZWQKIFBBU1MgWWV0LXRvLXN0YXJ0IENTUyBBbmltYXRp
b25zIGFyZSByZXR1cm5lZCAKIFBBU1MgQ1NTIEFuaW1hdGlvbnMgY2FuY2VsZWQgdmlhIHRoZSBB
UEkgYXJlIG5vdCByZXR1cm5lZCAKIFBBU1MgQ1NTIEFuaW1hdGlvbnMgY2FuY2VsZWQgYW5kIHJl
c3RhcnRlZCB2aWEgdGhlIEFQSSBhcmUgcmV0dXJuZWQgCi1GQUlMIENTUyBBbmltYXRpb25zIHRh
cmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRl
ciBzb3J0aW5nIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiAjMSBoYXMgbnVsbCBwc2V1ZG8gdHlw
ZSBleHBlY3RlZCAob2JqZWN0KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitQ
QVNTIENTUyBBbmltYXRpb25zIHRhcmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhh
dmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVt
ZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQt
Z2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IGEwYzlkMDljMDljNGIz
NjdjNzMwY2YzM2Q1OTM2OTczOWE5M2Y4OGQuLjhlZDkyMzBkODdkODhhODc5ZTFkNjA2NTZmY2Qx
YzlhYmNiMmE5ZDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50
YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50
YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xNyw4ICsxNyw4IEBAIFBBU1MgZ2V0QW5pbWF0aW9ucyBy
ZXR1cm5zIG9iamVjdHMgd2l0aCB0aGUgc2FtZSBpZGVudGl0eQogUEFTUyBnZXRBbmltYXRpb25z
IGZvciBDU1MgQW5pbWF0aW9ucyB0aGF0IGFyZSBjYW5jZWxlZCAKIFBBU1MgZ2V0QW5pbWF0aW9u
cyBmb3IgQ1NTIEFuaW1hdGlvbnMgZm9sbG93cyBhbmltYXRpb24tbmFtZSBvcmRlciAKIFBBU1Mg
eyBzdWJ0cmVlOiBmYWxzZSB9IG9uIGEgbGVhZiBlbGVtZW50IHJldHVybnMgdGhlIGVsZW1lbnQn
cyBhbmltYXRpb25zIGFuZCBpZ25vcmUgcHNldWRvLWVsZW1lbnRzIAotRkFJTCB7IHN1YnRyZWU6
IHRydWUgfSBvbiBhIGxlYWYgZWxlbWVudCByZXR1cm5zIHRoZSBlbGVtZW50J3MgYW5pbWF0aW9u
cyBhbmQgaXRzIHBzZXVkby1lbGVtZW50cycgYW5pbWF0aW9ucyBhc3NlcnRfZXF1YWxzOiBUaGUg
YW5pbWF0aW9uIHRhcmdldGluZyB0aGUgcGFyZW50IGVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVk
IGZpcnN0IGV4cGVjdGVkIChvYmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmlu
ZWQKK1BBU1MgeyBzdWJ0cmVlOiB0cnVlIH0gb24gYSBsZWFmIGVsZW1lbnQgcmV0dXJucyB0aGUg
ZWxlbWVudCdzIGFuaW1hdGlvbnMgYW5kIGl0cyBwc2V1ZG8tZWxlbWVudHMnIGFuaW1hdGlvbnMg
CiBQQVNTIHsgc3VidHJlZTogZmFsc2UgfSBvbiBhbiBlbGVtZW50IHdpdGggYSBjaGlsZCByZXR1
cm5zIG9ubHkgdGhlIGVsZW1lbnQncyBhbmltYXRpb25zIAotRkFJTCB7IHN1YnRyZWU6IHRydWUg
fSBvbiBhbiBlbGVtZW50IHdpdGggYSBjaGlsZCByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSB0aGUg
ZWxlbWVudCwgaXRzIHBzZXVkby1lbGVtZW50cywgaXRzIGNoaWxkIGFuZCBpdHMgY2hpbGQgcHNl
dWRvLWVsZW1lbnRzIGFzc2VydF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSBw
YXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcmV0dXJuZWQgZmlyc3QgZXhwZWN0ZWQgKG9iamVjdCkg
bnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorRkFJTCB7IHN1YnRyZWU6IHRydWUg
fSBvbiBhbiBlbGVtZW50IHdpdGggYSBjaGlsZCByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSB0aGUg
ZWxlbWVudCwgaXRzIHBzZXVkby1lbGVtZW50cywgaXRzIGNoaWxkIGFuZCBpdHMgY2hpbGQgcHNl
dWRvLWVsZW1lbnRzIGFzc2VydF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSA6
OmFmdGVyIHBlc3Vkby1lbGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCB0aGlyZCBleHBlY3RlZCAo
c3RyaW5nKSAiOjphZnRlciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCiBGQUlMIHsgc3VidHJlZTog
dHJ1ZSB9IG9uIGFuIGVsZW1lbnQgd2l0aCBtYW55IGRlc2NlbmRhbnRzIHJldHVybnMgYW5pbWF0
aW9ucyBmcm9tIGFsbCB0aGUgZGVzY2VuZGFudHMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlv
biB0YXJnZXRpbmcgdGhlIGNoaWxkMSBlbGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCBzZWNvbmQg
ZXhwZWN0ZWQgRWxlbWVudCBub2RlIDxkaXYgaWQ9ImNoaWxkMSIgc3R5bGU9ImFuaW1hdGlvbjog
YW5pbTEgMTAwczsiPjxkaXYgaWQ9Ii4uLiBidXQgZ290IEVsZW1lbnQgbm9kZSA8ZGl2IGlkPSJn
cmFuZGNoaWxkMSIgc3R5bGU9ImFuaW1hdGlvbjogYW5pbTEgMTAwczsiPjwvZGl2PgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdHJhbnNpdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4
dAppbmRleCAxOGMxZTMxNjVhMDJmZjE1MjBmNTFmZGVkMmJlN2QyZDM1NjNmNzM2Li5mZDJiZjU1
MDI0MTIwNGNhY2Q0YmE1MDMxMGViOTBiOGE1MWJjZTE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvRG9j
dW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9E
b2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2
IEBACiAKIFBBU1MgZ2V0QW5pbWF0aW9ucyBmb3Igbm9uLWFuaW1hdGVkIGNvbnRlbnQgCiBQQVNT
IGdldEFuaW1hdGlvbnMgZm9yIENTUyBUcmFuc2l0aW9ucyAKLUZBSUwgQ1NTIFRyYW5zaXRpb25z
IHRhcmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBh
ZnRlciBzb3J0aW5nIGFzc2VydF9lcXVhbHM6IFRyYW5zaXRpb24gIzEgaGFzIG51bGwgcHNldWRv
IHR5cGUgZXhwZWN0ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5l
ZAorUEFTUyBDU1MgVHJhbnNpdGlvbnMgdGFyZ2V0dGluZyAocHNldWRvLSllbGVtZW50cyBzaG91
bGQgaGF2ZSBjb3JyZWN0IG9yZGVyIGFmdGVyIHNvcnRpbmcgCiBQQVNTIFRyYW5zaXRpb25zIGFy
ZSBub3QgcmV0dXJuZWQgYWZ0ZXIgdGhleSBoYXZlIGZpbmlzaGVkIAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25z
L2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhw
ZWN0ZWQudHh0CmluZGV4IGNlZjIyNTUwYzE1ZmMwNTQwMTQ5YmQ4ZTMyOGYwOGU2MTJiNmE3NTku
LjhhNjZjZGZkODBmYjY2MTZlNDU0NWIyMzhmNDk5ZmQzYjEyMGI0YWQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMv
aWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ct
ZXhwZWN0ZWQudHh0CkBAIC0xMDgsMTQgKzEwOCwxNCBAQCBQQVNTIEtleWZyYW1lRWZmZWN0IGlu
dGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUg
bwogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGll
cyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkg
CiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVz
IG9mIGludGVyZmFjZSBwcm90b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSAK
IFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgdGFyZ2V0IAotRkFJTCBL
ZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IGF0dHJpYnV0ZSBwc2V1ZG9FbGVtZW50IGFzc2VydF90
cnVlOiBUaGUgcHJvdG90eXBlIG9iamVjdCBtdXN0IGhhdmUgYSBwcm9wZXJ0eSAicHNldWRvRWxl
bWVudCIgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKK1BBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJm
YWNlOiBhdHRyaWJ1dGUgcHNldWRvRWxlbWVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJm
YWNlOiBhdHRyaWJ1dGUgY29tcG9zaXRlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6
IG9wZXJhdGlvbiBnZXRLZXlmcmFtZXMoKSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNl
OiBvcGVyYXRpb24gc2V0S2V5ZnJhbWVzKG9iamVjdCkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IG11
c3QgYmUgcHJpbWFyeSBpbnRlcmZhY2Ugb2YgbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwp
IAogUEFTUyBTdHJpbmdpZmljYXRpb24gb2YgbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwp
IAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxs
LCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgInRhcmdldCIgd2l0aCB0aGUgcHJvcGVyIHR5
cGUgCi1GQUlMIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51
bGwsIG51bGwpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgd2l0aCB0aGUg
cHJvcGVyIHR5cGUgYXNzZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgbm90
IGZvdW5kIGluIHByb3RvdHlwZSBjaGFpbgorUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6
IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgInBz
ZXVkb0VsZW1lbnQiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBp
bnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgImNvbXBvc2l0ZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEtleWZyYW1lRWZm
ZWN0IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3QgaW5oZXJp
dCBwcm9wZXJ0eSAiZ2V0S2V5ZnJhbWVzKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBL
ZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBt
dXN0IGluaGVyaXQgcHJvcGVydHkgInNldEtleWZyYW1lcyhvYmplY3QpIiB3aXRoIHRoZSBwcm9w
ZXIgdHlwZSAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50eHQK
aW5kZXggNzUxNDQyNmNhMGYxZWIxNGMyNTQzNjkyNjJhYzhkOTVjZDk0MTQ1OC4uMjRlMGZmMjhi
OTVlMGZkN2U0MzEzN2Y4NDAyMzMxY2FjYzI3YzY5NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2Vz
L0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1h
dGFibGUvYW5pbWF0ZS1leHBlY3RlZC50eHQKQEAgLTEzNyw4ICsxMzcsOCBAQCBQQVNTIGFuaW1h
dGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9i
amVjdAogUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciB3aXRob3V0
IGNvbnRlbnQgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IAogUEFTUyBhbmltYXRlKCkgd2l0
aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IGZv
ciA6Om1hcmtlciAKIFBBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIg
IGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCBmb3IgOjpmaXJzdC1saW5lIAotRkFJTCBhbmlt
YXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRo
ZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGFzc2VydF9lcXVhbHM6IFRoZSByZXR1cm5lZCBBbmlt
YXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3RyaW5nKSAiOjpi
ZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1hdGUoKSB3aXRo
IHBzZXVkb0VsZW1lbnQgd2l0aG91dCBjb250ZW50IGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVj
dCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVGhl
IHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVk
IChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwg
YW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGlu
ZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCBmb3IgOjptYXJrZXIgYXNzZXJ0X2VxdWFsczog
VGhlIHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVj
dGVkIChzdHJpbmcpICI6Om1hcmtlciIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZB
SUwgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdl
dGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCBmb3IgOjpmaXJzdC1saW5lIGFzc2VydF9l
cXVhbHM6IFRoZSByZXR1cm5lZCBBbmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3Rv
ciBleHBlY3RlZCAoc3RyaW5nKSAiOjpmaXJzdC1saW5lIiBidXQgZ290ICh1bmRlZmluZWQpIHVu
ZGVmaW5lZAorUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBv
YmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IAorUEFTUyBhbmltYXRl
KCkgd2l0aCBwc2V1ZG9FbGVtZW50IHdpdGhvdXQgY29udGVudCBjcmVhdGVzIGFuIEFuaW1hdGlv
biBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IAorRkFJTCBhbmlt
YXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRo
ZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGZvciA6Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBUaGUg
cmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQg
Ijo6bWFya2VyIiBidXQgZ290ICIiCitGQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQg
YW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQg
Zm9yIDo6Zmlyc3QtbGluZSBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRh
cmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgIjo6Zmlyc3QtbGluZSIgYnV0IGdv
dCAiIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3Rl
ZC50eHQKaW5kZXggMzY1MDIyN2NmMGYxMmRmMjVkNzllYzBjM2EwYjcxZDUyMTZlMDg3NS4uZDU1
Njc2MDgwNzAzYjY0YzJkYjkwOWIwODljMzNhMTM0M2VlYjNiZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRl
cmZhY2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJm
YWNlcy9BbmltYXRpb24vY29tbWl0U3R5bGVzLWV4cGVjdGVkLnR4dApAQCAtMTEsMTYgKzExLDEy
IEBAIEZBSUwgQ29tbWl0cyB0aGUgaW50ZXJtZWRpYXRlIHZhbHVlIG9mIGFuIGFuaW1hdGlvbiBp
biB0aGUgbWlkZGxlIG9mIHN0YWNrIGFzc2VyCiBGQUlMIENvbW1pdCBjb21wb3NpdGVzIG9uIHRv
cCBvZiB0aGUgdW5kZXJseWluZyB2YWx1ZSBhc3NlcnRfYXBwcm94X2VxdWFsczogZXhwZWN0ZWQg
MC41ICsvLSAwLjAwMDEgYnV0IGdvdCAwLjIwMDAwMDAwMjk4MDIzMjI0CiBQQVNTIFRyaWdnZXJz
IG11dGF0aW9uIG9ic2VydmVycyB3aGVuIHVwZGF0aW5nIHN0eWxlIAogRkFJTCBEb2VzIE5PVCB0
cmlnZ2VyIG11dGF0aW9uIG9ic2VydmVycyB3aGVuIHRoZSBjaGFuZ2UgdG8gc3R5bGUgaXMgcmVk
dW5kYW50IGFzc2VydF9lcXVhbHM6IFNob3VsZCBoYXZlIG5vIG11dGF0aW9uIHJlY29yZHMgZXhw
ZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBh
IHBzZXVkbyBlbGVtZW50IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAg
IGFuaW1hdGlvbi5jb21taXRTdHlsZXMoKTsKLSAgfSIgZGlkIG5vdCB0aHJvdworUEFTUyBUaHJv
d3MgaWYgdGhlIHRhcmdldCBlbGVtZW50IGlzIGEgcHNldWRvIGVsZW1lbnQgCiBQQVNTIFRocm93
cyBpZiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgbm90IHNvbWV0aGluZyB3aXRoIGEgc3R5bGUgYXR0
cmlidXRlIAogUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlZmZlY3QgaXMgZGlzcGxheTpub25l
IAogUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdldCBlZmZlY3QncyBhbmNlc3RvciBpcyBkaXNwbGF5
Om5vbmUgCiBQQVNTIFRyZWF0cyBkaXNwbGF5OmNvbnRlbnRzIGFzIHJlbmRlcmVkIAogUEFTUyBU
cmVhdHMgZGlzcGxheTpjb250ZW50cyBpbiBhIGRpc3BsYXk6bm9uZSBzdWJ0cmVlIGFzIG5vdCBy
ZW5kZXJlZCAKIFBBU1MgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWZmZWN0IGlzIGRpc2Nvbm5lY3Rl
ZCAKLUZBSUwgQ2hlY2tzIHRoZSBwc2V1ZG8gZWxlbWVudCBjb25kaXRpb24gYmVmb3JlIHRoZSBu
b3QgcmVuZGVyZWQgY29uZGl0aW9uIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4g
ewotICAgIGFuaW1hdGlvbi5jb21taXRTdHlsZXMoKTsKLSAgfSIgdGhyZXcgb2JqZWN0ICJJbnZh
bGlkU3RhdGVFcnJvcjogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiIgdGhhdCBp
cyBub3QgYSBET01FeGNlcHRpb24gTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3I6IHByb3BlcnR5
ICJjb2RlIiBpcyBlcXVhbCB0byAxMSwgZXhwZWN0ZWQgNworUEFTUyBDaGVja3MgdGhlIHBzZXVk
byBlbGVtZW50IGNvbmRpdGlvbiBiZWZvcmUgdGhlIG5vdCByZW5kZXJlZCBjb25kaXRpb24gCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZl
bnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFu
Z2UtZXZlbnRzLWV4cGVjdGVkLnR4dAppbmRleCBkMzA5YTQ3ODI3OTIyZTQ0NGZkNThkOTliYzg3
Y2NmMzYwNWRlMzAxLi44YTYwYzEzOWI5NGRlNjY1M2Q0YWY3ZDVkYzM4ZTA1ZDQ1MTljNTA2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3N0eWxlLWNo
YW5nZS1ldmVudHMtZXhwZWN0ZWQudHh0CkBAIC0xLDkgKzEsMTAgQEAKIAotRkFJTCBBbGwgcHJv
cGVydHkga2V5cyBhcmUgcmVjb2duaXplZCBhc3NlcnRfaW5fYXJyYXk6IFRlc3QgcHJvcGVydHkg
J3BzZXVkb0VsZW1lbnQnIHNob3VsZCBiZSBvbmUgb2YgdGhlIHByb3BlcnRpZXMgb24gIEtleWZy
YW1lRWZmZWN0IHZhbHVlICJwc2V1ZG9FbGVtZW50IiBub3QgaW4gYXJyYXkgWyJnZXRUaW1pbmci
LCAiZ2V0Q29tcHV0ZWRUaW1pbmciLCAidXBkYXRlVGltaW5nIiwgInRhcmdldCIsICJpdGVyYXRp
b25Db21wb3NpdGUiLCAiY29tcG9zaXRlIiwgImdldEtleWZyYW1lcyIsICJzZXRLZXlmcmFtZXMi
LCAiS2V5ZnJhbWVFZmZlY3QgY29uc3RydWN0b3IiLCAiS2V5ZnJhbWVFZmZlY3QgY29weSBjb25z
dHJ1Y3RvciJdCitQQVNTIEFsbCBwcm9wZXJ0eSBrZXlzIGFyZSByZWNvZ25pemVkIAogUEFTUyBL
ZXlmcmFtZUVmZmVjdC5nZXRUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBl
dmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0Q29tcHV0ZWRUaW1pbmcgZG9lcyBOT1QgdHJp
Z2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QudXBkYXRlVGlt
aW5nIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1l
RWZmZWN0LnRhcmdldCBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAorUEFT
UyBLZXlmcmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50IGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBj
aGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0Lml0ZXJhdGlvbkNvbXBvc2l0ZSBkb2Vz
IE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC5j
b21wb3NpdGUgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5
ZnJhbWVFZmZlY3QuZ2V0S2V5ZnJhbWVzIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2Ug
ZXZlbnQgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQu
dHh0CmluZGV4IDAzZjVmYmQyYzJlZWNjODRiOTc2MmEwMjRjNTJlMGI5ZjU5ZDMwMmUuLmM1MTI4
MDJjNTU0MTRiNzdmYzQ1ZTM5YzgyZmU5YWFjNzYyNDNkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJm
YWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNl
cy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CkBAIC00LDE4ICs0LDE4IEBAIFBB
U1MgVGVzdCBzZXR0aW5nIHRhcmdldCBmcm9tIG51bGwgdG8gYSB2YWxpZCB0YXJnZXQKIFBBU1Mg
VGVzdCBzZXR0aW5nIHRhcmdldCBmcm9tIGEgdmFsaWQgdGFyZ2V0IHRvIG51bGwgCiBQQVNTIFRl
c3Qgc2V0dGluZyB0YXJnZXQgZnJvbSBhIHZhbGlkIHRhcmdldCB0byBhbm90aGVyIHRhcmdldCAK
IFBBU1MgVGFyZ2V0IGVsZW1lbnQgY2FuIGJlIHNldCB0byBhIGZvcmVpZ24gZWxlbWVudCAKLUZB
SUwgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBz
ZXR0aW5nIHRhcmdldCBmaXJzdC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgYXQgNTAlIHByb2dyZXNz
IGFmdGVyIHNldHRpbmcgbmV3IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMTBweCIK
LUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVu
dCBzZXR0aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUw
JSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBn
b3QgIjEwcHgiCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBz
ZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZy
b20gbnVsbCB0byBhbiBleGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVu
dCBmaXJzdC4gCiBQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyBwc2V1ZG8tZWxl
bWVudCB0byB0aGUgb3JpZ2luYXRpbmcgZWxlbWVudC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJv
bSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBz
ZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVk
IHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJl
Zm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBm
cm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5
IHNldHRpbmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1l
bnQgKGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQg
ZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBh
IG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBz
ZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVk
IHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJl
Zm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBm
cm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50
IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVs
ZW1lbnQgKGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJn
ZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJv
bSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmly
c3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5l
dyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCi1GQUlMIENoYW5nZSB0YXJn
ZXQgZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1
ZG9FbGVtZW50IGZpcnN0LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUgcHJvZ3Jlc3MgYWZ0
ZXIgc2V0dGluZyBuZXcgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIxMHB4IgorUEFT
UyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3Rpbmcg
cHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJnZXQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZy
b20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkg
c2V0dGluZyBwc2V1ZG9FbGVtZW50LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4
aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcg
dGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlm
ZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4g
CitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0Vs
ZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVs
bCB0byBhIG5vbi1leGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBm
aXJzdC4gCiBQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyBwc2V1ZG8tZWxl
bWVudCB0byB0aGUgb3JpZ2luYXRpbmcgZWxlbWVudC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJv
bSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQg
Ynkgc2V0dGluZyB0YXJnZXQuIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNp
ZmllZCBwc2V1ZG8tZWxlbWVudCAocHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAi
OjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJn
ZXQgZnJvbSBhbiBleGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVs
ZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBvZiAy
bmQgZWxlbWVudCAoY3VycmVudGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZmZWN0
IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMjBweCIKLUZBSUwgQ2hhbmdlIHRhcmdl
dCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8t
ZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdl
dHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChz
dHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hh
bmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGlu
ZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6
IFZhbHVlIG9mIDJuZCBlbGVtZW50IChjdXJyZW50bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5n
IHRoZSBlZmZlY3QgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIyMHB4IgorUEFTUyBD
aGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5n
IHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBm
cm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVu
dCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBu
b24tZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5
IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5n
IHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBz
ZXVkb0VsZW1lbnQuIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396527</attachid>
            <date>2020-04-15 06:58:35 -0700</date>
            <delta_ts>2020-04-15 08:04:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200415155833.patch</filename>
            <type>text/plain</type>
            <size>45772</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMDg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdkYjVlYzdlN2RiYTEw
MGExNjgwYmE5ZGUwOWYzNGQ2YjNhOTFmNS4uZTNkNTlhN2E3NmM2YTA0YWJlNDUzNmJkZDY1ZDY1
OWY4ZjVhZWJjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIwLTA0LTE1ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50CisgICAgICAgIHByb3BlcnR5LCBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZAorICAgICAgICBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQg
YSBQc2V1ZG9FbGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBp
dCdzIG5vdCBiZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBv
ZiBhIDo6YmVmb3JlCisgICAgICAgIG9yIDo6YWZ0ZXIgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQi
IHN0eWxlIHJ1bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3Ig
InBzZXVkb0VsZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwKKyAgICAg
ICAgd2UgZW5zdXJlIGEgUHNldWRvRWxlbWVudCBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhv
c3QgZWxlbWVudCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQg
ZHVyaW5nIHN0eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMKKyAgICAgICAgYXJlIGFwcGxpZWQg
dG8gc3VjaCBwc2V1ZG8tZWxlbWVudHMgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1Rhcmdl
dGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBp
bmRpY2F0ZXMgdGhhdCBhCisgICAgICAgIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFy
Z2V0cyB0aGlzIHBzZXVkby1lbGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBI
YW5kbGUgdGhlIG5ldyBLZXlmcmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0
eSBpbiB0aGUgS2V5ZnJhbWVFZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpL
ZXlmcmFtZUVmZmVjdDo6dGFyZ2V0c1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJbmRpY2F0ZXMgd2hl
dGhlciB0aGlzIGVmZmVjdCB0YXJnZXRzIGEgcHNldWRvLWVsZW1lbnQgYW5kIG5vdCBhIHJlZ3Vs
YXIKKyAgICAgICAgZWxlbWVudCBvciBhIG51bGwgdGFyZ2V0LgorICAgICAgICAoV2ViQ29yZTo6
S2V5ZnJhbWVFZmZlY3Q6OnRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQgY29uc3QpOiBVc2Ug
dGhlIG5ldyB0YXJnZXRzUHNldWRvRWxlbWVudCgpIG1ldGhvZCB0byBkZXRlcm1pbmUgd2hldGhl
ciBhCisgICAgICAgIHBzZXVkby1lbGVtZW50IGlzIHRhcmdldGVkLiBXZSBhbHNvIHJlbW92ZSBh
biBhc3NlcnRpb24gdGhhdCBvbmx5IG1hZGUgc2Vuc2Ugd2hlbiBtX3BzZXVkb0lkIGNvdWxkIG9u
bHkgYmUgc2V0IHZpYSBhIENTUy1vcmlnaW5hdGVkCisgICAgICAgIGFuaW1hdGlvbi4KKyAgICAg
ICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQpOiBDYWxsIHRoZSBuZXcgZGlk
Q2hhbmdlVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgpIG1ldGhvZCBpZiB0aGUgcHJvdmlk
ZWQgdmFsdWUgZGlmZmVycworICAgICAgICBmcm9tIHRoZSBzdG9yZWQgdmFsdWUgZm9yIG1fdGFy
Z2V0LgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnBzZXVkb0VsZW1lbnQgY29u
c3QpOiBSZXR1cm4gdGhlIG1hdGNoaW5nIG5vcm1hbGl6ZWQgc3RyaW5nIHdpdGggYSBgOjpgIHBy
ZWZpeCBmb3IgbV9wc2V1ZG9JZCBpZiB0aGUgdGFyZ2V0CisgICAgICAgIGlzIGEgcHNldWRvLWVs
ZW1lbnQuIE5vdGUgdGhhdCBQc2V1ZG9FbGVtZW50Ojpwc2V1ZG9FbGVtZW50TmFtZUZvckV2ZW50
cygpIHdpbGwgb25seSByZXR1cm4gYSBzdHJpbmcgZm9yICI6OmJlZm9yZSIgYW5kICI6OmFmdGVy
IiBzaW5jZQorICAgICAgICB3ZSBvbmx5IGtub3cgaG93IHRvIGFuaW1hdGUgdGhlc2UgcHNldWRv
LWVsZW1lbnRzLgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0Vs
ZW1lbnQpOiBEZXRlcm1pbmUgYSBtYXRjaGluZyBQc2V1ZG9JZCwgaWYgYW55LCBmb3IgdGhlIHBy
b3ZpZGVkIHN0cmluZywgYW5kIGNhbGwgdGhlIG5ldworICAgICAgICBkaWRDaGFuZ2VUYXJnZXRF
bGVtZW50T3JQc2V1ZG9FbGVtZW50KCkgbWV0aG9kIGlmIHRoZSBwcm92aWRlZCB2YWx1ZSBkaWZm
ZXJzIGZyb20gdGhlIHN0b3JlZCB2YWx1ZSBmb3IgbV9wc2V1ZG9JZC4KKyAgICAgICAgKFdlYkNv
cmU6OktleWZyYW1lRWZmZWN0OjpkaWRDaGFuZ2VUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50
KTogTmV3IG1ldGhvZCBjYWxsZWQgd2hlbiBlaXRoZXIgbV90YXJnZXQgb3IgbV9wc2V1ZG9JZCBp
cyBjaGFuZ2VkCisgICAgICAgIHN1Y2ggdGhhdCB3ZSBjYW4gZW5zdXJlIHRoZSByZXF1aXJlZCBQ
c2V1ZG9FbGVtZW50IGlzIGNyZWF0ZWQgaWYgdGhlIGFuaW1hdGlvbiB0YXJnZXRzIGEgcHNldWRv
LWVsZW1lbnQuIFRoZW4gd2UgcnVuIHRoZSBzYW1lIGxvZ2ljCisgICAgICAgIHRoYXQgd2UgdXNl
ZCB0byBpbiBLZXlmcmFtZUVmZmVjdDo6c2V0VGFyZ2V0KCkuCisgICAgICAgIChXZWJDb3JlOjpL
ZXlmcmFtZUVmZmVjdDo6cmVxdWlyZXNQc2V1ZG9FbGVtZW50IGNvbnN0KTogSW5kaWNhdGVzIHdo
ZXRoZXIgYSBQc2V1ZG9FbGVtZW50IG11c3QgcmVtYWluIGNyZWF0ZWQgZm9yIHRoaXMgS2V5ZnJh
bWVFZmZlY3QsCisgICAgICAgIHdoaWNoIGlzIG9ubHkgbmVjZXNzYXJ5IGZvciBKUy1vcmlnaW5h
dGVkIGVmZmVjdHMgdGFyZ2V0aW5nIGEgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogYW5pbWF0
aW9uL0tleWZyYW1lRWZmZWN0Lmg6CisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0
LmlkbDoKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmg6CisgICAg
ICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGw6CisgICAgICAgICogYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJh
bWVFZmZlY3RTdGFjazo6cmVxdWlyZXNQc2V1ZG9FbGVtZW50IGNvbnN0KTogSW5kaWNhdGVzIHdo
ZXRoZXIgb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBz
dGFjayB0YXJnZXQKKyAgICAgICAgdGhlIFBzZXVkb0VsZW1lbnQgb3duaW5nIHRoaXMgc3RhY2su
CisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaDoKKyAgICAgICAgKiBh
bmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkFuaW1hdGlv
bjo6Y29tbWl0U3R5bGVzKTogVXNlIEtleWZyYW1lRWZmZWN0Ojp0YXJnZXRzUHNldWRvRWxlbWVu
dCgpIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBhbmltYXRpb24ncyBlZmZlY3QncyB0YXJnZXQg
aXMgYQorICAgICAgICBwc2V1ZG8tZWxlbWVudCwgaW4gd2hpY2ggY2FzZSB3ZSBuZWVkIHRvIHRo
cm93IGEgTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3IgZXhjZXB0aW9uLgorICAgICAgICAqIGRv
bS9Qc2V1ZG9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6OnJl
bmRlcmVySXNOZWVkZWQpOiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9yIG1vcmUgSlMtb3Jp
Z2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1ZG8t
ZWxlbWVudC4KKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6OmlzVGFyZ2V0ZWRCeUtl
eWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0cnVlIHdoZW4gb25l
IG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjaworICAg
ICAgICB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRvRWxl
bWVudC5oOgorICAgICAgICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdl
bmVyYXRlZENvbnRlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJlbmRl
cmVycyk6IFJlbW92ZSB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0eSB3
YXMgc2V0IHNpbmNlIGl0J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNhbGxl
ZAorICAgICAgICBkdWUgdG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIHRhcmdldGlu
ZyB0aGUgZ2l2ZW4gcHNldWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlvbiB0
aGF0IHRoZXJlIGFyZSBzdWNoIGtleWZyYW1lIGVmZmVjdHMgaW4KKyAgICAgICAgY2FzZSBubyAi
Y29udGVudCIgcHJvcGVydHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRyZWVV
cGRhdGVyOjpHZW5lcmF0ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSByZW1v
dmUgcHNldWRvLWVsZW1lbnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZyYW1l
IGVmZmVjdHMKKyAgICAgICAgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQu
CisgICAgICAgICogc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U3R5bGU6OlRyZWVSZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5pbWF0
ZWQgc3R5bGUgcmVzb2x1dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpTLW9y
aWdpbmF0ZWQga2V5ZnJhbWUgZWZmZWN0cy4KKwogMjAyMC0wNC0xNCAgQW50b2luZSBRdWludCAg
PGdyYW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIEZhY3RvciBQc2V1ZG9FbGVtZW50IGNyZWF0
aW9uIGNhbGxzIGludG8gYSBzaW5nbGUgRWxlbWVudDo6ZW5zdXJlUHNldWRvRWxlbWVudChwc2V1
ZG9JZCkgbWV0aG9kCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5
YTAzZTNmMjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRj
MDk1NjhiNDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBA
IEVOQUJMRV9XRUJHUFVfTUFDT1NfU0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJM
RV9XRUJYUiA9IDsKIAorRU5BQkxFX1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJ
T05TOworCiBFTkFCTEVfV0VCX0FQSV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElP
ID0gRU5BQkxFX1dFQl9BVURJTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJh
dGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNm
MjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1Njhi
NDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBFTkFCTEVfV0VCR1BVX01BQ09T
X1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVfV0VCWFIgPSA7CiAKK0VOQUJM
RV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9OUzsKKwogRU5BQkxFX1dFQl9B
UElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9IEVOQUJMRV9XRUJfQVVESU87
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNmMjY4NWY1YmIwZDBi
MjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhj
Y29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJMRV9XRUJHUFVfTUFDT1NfU0lO
Q0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJYUiA9IDsKIAorRU5BQkxFX1dF
Ql9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJT05TOworCiBFTkFCTEVfV0VCX0FQSV9T
VEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElPID0gRU5BQkxFX1dFQl9BVURJTzsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCmluZGV4IGQxYmY5ZmE5
ZDFmZDE0ZDRlZGQzNWM5ZjkzOTBmNzBmMzM0OWU1ZWEuLjc0ZTc4NmRkNWYzYzNhODllMzViZTBm
YjZjYzNlYzRhMjYyNDZmNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9L
ZXlmcmFtZUVmZmVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0LmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNTU0tleWZyYW1lUnVsZS5o
IgogI2luY2x1ZGUgIkNTU1Byb3BlcnR5QW5pbWF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTUHJvcGVy
dHlOYW1lcy5oIgorI2luY2x1ZGUgIkNTU1NlbGVjdG9yLmgiCiAjaW5jbHVkZSAiQ1NTU3R5bGVE
ZWNsYXJhdGlvbi5oIgogI2luY2x1ZGUgIkNTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaCIKICNpbmNs
dWRlICJDU1NUcmFuc2l0aW9uLmgiCkBAIC00ODYsNiArNDg3LDExIEBAIEV4Y2VwdGlvbk9yPFJl
ZjxLZXlmcmFtZUVmZmVjdD4+IEtleWZyYW1lRWZmZWN0OjpjcmVhdGUoSlNHbG9iYWxPYmplY3Qm
IGxleGljYWxHCiAgICAgICAgICAgICB0aW1pbmcuZHVyYXRpb24gPSBkdXJhdGlvbjsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIGF1dG8ga2V5ZnJhbWVFZmZlY3RPcHRpb25zID0gV1RG
OjpnZXQ8S2V5ZnJhbWVFZmZlY3RPcHRpb25zPihvcHRpb25zVmFsdWUpOworCisgICAgICAgICAg
ICBhdXRvIHNldFBzZXVkb0VsZW1lbnRSZXN1bHQgPSBrZXlmcmFtZUVmZmVjdC0+c2V0UHNldWRv
RWxlbWVudChrZXlmcmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCk7CisgICAgICAgICAg
ICBpZiAoc2V0UHNldWRvRWxlbWVudFJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAg
ICAgICByZXR1cm4gc2V0UHNldWRvRWxlbWVudFJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisK
ICAgICAgICAgICAgIHRpbWluZyA9IHsKICAgICAgICAgICAgICAgICBrZXlmcmFtZUVmZmVjdE9w
dGlvbnMuZHVyYXRpb24sCiAgICAgICAgICAgICAgICAga2V5ZnJhbWVFZmZlY3RPcHRpb25zLml0
ZXJhdGlvbnMsCkBAIC0xMDcyLDEzICsxMDc4LDE2IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNl
dEFuaW1hdGlvbihXZWJBbmltYXRpb24qIGFuaW1hdGlvbikKICAgICB1cGRhdGVFZmZlY3RTdGFj
a01lbWJlcnNoaXAoKTsKIH0KIAorYm9vbCBLZXlmcmFtZUVmZmVjdDo6dGFyZ2V0c1BzZXVkb0Vs
ZW1lbnQoKSBjb25zdAoreworICAgIHJldHVybiBtX3RhcmdldC5nZXQoKSAmJiBtX3BzZXVkb0lk
ICE9IFBzZXVkb0lkOjpOb25lOworfQorCiBFbGVtZW50KiBLZXlmcmFtZUVmZmVjdDo6dGFyZ2V0
RWxlbWVudE9yUHNldWRvRWxlbWVudCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fcHNldWRvSWQgPT0g
UHNldWRvSWQ6Ok5vbmUpCisgICAgaWYgKCF0YXJnZXRzUHNldWRvRWxlbWVudCgpKQogICAgICAg
ICByZXR1cm4gbV90YXJnZXQuZ2V0KCk7CiAKLSAgICBBU1NFUlQobV90YXJnZXQuZ2V0KCkpOwot
CiAgICAgaWYgKG1fcHNldWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkKICAgICAgICAgcmV0dXJu
IG1fdGFyZ2V0LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCk7CiAKQEAgLTEwOTIsMTggKzExMDEsNjgg
QEAgRWxlbWVudCogS2V5ZnJhbWVFZmZlY3Q6OnRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQo
KSBjb25zdAogCiB2b2lkIEtleWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQoUmVmUHRyPEVsZW1lbnQ+
JiYgbmV3VGFyZ2V0KQogewotICAgIGF1dG8qIHByZXZpb3VzVGFyZ2V0ID0gdGFyZ2V0RWxlbWVu
dE9yUHNldWRvRWxlbWVudCgpOwotICAgIGlmIChwcmV2aW91c1RhcmdldCA9PSBuZXdUYXJnZXQu
Z2V0KCkpCisgICAgaWYgKG1fdGFyZ2V0LmdldCgpID09IG5ld1RhcmdldC5nZXQoKSkKICAgICAg
ICAgcmV0dXJuOwogCisgICAgYXV0byogcHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVt
ZW50ID0gdGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgpOwogICAgIG1fdGFyZ2V0ID0gbWFr
ZVdlYWtQdHIobmV3VGFyZ2V0LmdldCgpKTsKKyAgICBkaWRDaGFuZ2VUYXJnZXRFbGVtZW50T3JQ
c2V1ZG9FbGVtZW50KHByZXZpb3VzVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCk7Cit9CiAK
LSAgICAvLyBVbnRpbCB3ZSBzdXBwb3J0IHBzZXVkby1lbGVtZW50cyB2aWEgdGhlIFdlYiBBbmlt
YXRpb25zIEFQSSwgY2hhbmdpbmcgdGFyZ2V0IG1lYW5zIHdlIHNob3VsZCByZXNldCBtX3BzZXVk
b0lkLgotICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDcy
OTAKLSAgICBtX3BzZXVkb0lkID0gUHNldWRvSWQ6Ok5vbmU7Citjb25zdCBTdHJpbmcgS2V5ZnJh
bWVFZmZlY3Q6OnBzZXVkb0VsZW1lbnQoKSBjb25zdAoreworICAgIC8vIGh0dHBzOi8vZHJhZnRz
LmNzc3dnLm9yZy93ZWItYW5pbWF0aW9ucy8jZG9tLWtleWZyYW1lZWZmZWN0LXBzZXVkb2VsZW1l
bnQKKworICAgIC8vIFRoZSB0YXJnZXQgcHNldWRvLXNlbGVjdG9yLiBudWxsIGlmIHRoaXMgZWZm
ZWN0IGhhcyBubyBlZmZlY3QgdGFyZ2V0IG9yIGlmIHRoZSBlZmZlY3QgdGFyZ2V0IGlzIGFuIGVs
ZW1lbnQgKGkuZS4gbm90IGEgcHNldWRvLWVsZW1lbnQpLgorICAgIC8vIFdoZW4gdGhlIGVmZmVj
dCB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudCwgdGhpcyBzcGVjaWZpZXMgdGhlIHBzZXVkby1l
bGVtZW50IHNlbGVjdG9yIChlLmcuIDo6YmVmb3JlKS4KKyAgICBpZiAodGFyZ2V0c1BzZXVkb0Vs
ZW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIFBzZXVkb0VsZW1lbnQ6OnBzZXVkb0VsZW1lbnROYW1l
Rm9yRXZlbnRzKG1fcHNldWRvSWQpOworICAgIHJldHVybiB7IH07Cit9CisKK0V4Y2VwdGlvbk9y
PHZvaWQ+IEtleWZyYW1lRWZmZWN0OjpzZXRQc2V1ZG9FbGVtZW50KGNvbnN0IFN0cmluZyYgcHNl
dWRvRWxlbWVudCkKK3sKKyAgICAvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvd2ViLWFuaW1h
dGlvbnMvI2RvbS1rZXlmcmFtZWVmZmVjdC1wc2V1ZG9lbGVtZW50CisKKyAgICAvLyBPbiBzZXR0
aW5nLCBzZXRzIHRoZSB0YXJnZXQgcHNldWRvLXNlbGVjdG9yIG9mIHRoZSBhbmltYXRpb24gZWZm
ZWN0IHRvIHRoZSBwcm92aWRlZCB2YWx1ZSBhZnRlciBhcHBseWluZyB0aGUgZm9sbG93aW5nIGV4
Y2VwdGlvbnM6CisgICAgLy8KKyAgICAvLyAtIElmIHRoZSBwcm92aWRlZCB2YWx1ZSBpcyBub3Qg
bnVsbCBhbmQgaXMgYW4gaW52YWxpZCA8cHNldWRvLWVsZW1lbnQtc2VsZWN0b3I+LCB0aGUgdXNl
ciBhZ2VudCBtdXN0IHRocm93IGEgRE9NRXhjZXB0aW9uIHdpdGggZXJyb3IKKyAgICAvLyBuYW1l
IFN5bnRheEVycm9yIGFuZCBsZWF2ZSB0aGUgdGFyZ2V0IHBzZXVkby1zZWxlY3RvciBvZiB0aGlz
IGFuaW1hdGlvbiBlZmZlY3QgdW5jaGFuZ2VkLiBOb3RlLCB0aGF0IGludmFsaWQgaW4gdGhpcyBj
b250ZXh0IGZvbGxvd3MKKyAgICAvLyB0aGUgZGVmaW5pdGlvbiBvZiBhbiBpbnZhbGlkIHNlbGVj
dG9yIGRlZmluZWQgaW4gW1NFTEVDVE9SUy00XSBzdWNoIHRoYXQgc3ludGFjdGljYWxseSBpbnZh
bGlkIHBzZXVkby1lbGVtZW50cyBhcyB3ZWxsIGFzIHBzZXVkby1lbGVtZW50cworICAgIC8vIGZv
ciB3aGljaCB0aGUgdXNlciBhZ2VudCBoYXMgbm8gdXNhYmxlIGxldmVsIG9mIHN1cHBvcnQgYXJl
IGJvdGggZGVlbWVkIGludmFsaWQuCisgICAgLy8gLSBJZiBvbmUgb2YgdGhlIGxlZ2FjeSBTZWxl
Y3RvcnMgTGV2ZWwgMiBzaW5nbGUtY29sb24gc2VsZWN0b3JzICgnOmJlZm9yZScsICc6YWZ0ZXIn
LCAnOmZpcnN0LWxldHRlcicsIG9yICc6Zmlyc3QtbGluZScpIGlzIHNwZWNpZmllZCwKKyAgICAv
LyB0aGUgdGFyZ2V0IHBzZXVkby1zZWxlY3RvciBtdXN0IGJlIHNldCB0byB0aGUgZXF1aXZhbGVu
dCB0d28tY29sb24gc2VsZWN0b3IgKGUuZy4gJzo6YmVmb3JlJykuCisgICAgUHNldWRvSWQgcHNl
dWRvSWQgPSBQc2V1ZG9JZDo6Tm9uZTsKKyAgICBpZiAoIXBzZXVkb0VsZW1lbnQuaXNOdWxsKCkp
IHsKKyAgICAgICAgYXV0byBpc0xlZ2FjeSA9IHBzZXVkb0VsZW1lbnQgPT0gIjpiZWZvcmUiIHx8
IHBzZXVkb0VsZW1lbnQgPT0gIjphZnRlciIgfHwgcHNldWRvRWxlbWVudCA9PSAiOmZpcnN0LWxl
dHRlciIgfHwgcHNldWRvRWxlbWVudCA9PSAiOmZpcnN0LWxpbmUiOworICAgICAgICBpZiAoIWlz
TGVnYWN5ICYmICFwc2V1ZG9FbGVtZW50LnN0YXJ0c1dpdGgoIjo6IikpCisgICAgICAgICAgICBy
ZXR1cm4gRXhjZXB0aW9uIHsgU3ludGF4RXJyb3IgfTsKKyAgICAgICAgYXV0byBwc2V1ZG9UeXBl
ID0gQ1NTU2VsZWN0b3I6OnBhcnNlUHNldWRvRWxlbWVudFR5cGUocHNldWRvRWxlbWVudC5zdWJz
dHJpbmcoaXNMZWdhY3kgPyAxIDogMikpOworICAgICAgICBpZiAocHNldWRvVHlwZSA9PSBDU1NT
ZWxlY3Rvcjo6UHNldWRvRWxlbWVudFVua25vd24pCisgICAgICAgICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgU3ludGF4RXJyb3IgfTsKKyAgICAgICAgcHNldWRvSWQgPSBDU1NTZWxlY3Rvcjo6cHNl
dWRvSWQocHNldWRvVHlwZSk7CisgICAgfQorCisgICAgaWYgKHBzZXVkb0lkID09IG1fcHNldWRv
SWQpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBhdXRvKiBwcmV2aW91c1RhcmdldEVsZW1l
bnRPclBzZXVkb0VsZW1lbnQgPSB0YXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KCk7CisgICAg
bV9wc2V1ZG9JZCA9IHBzZXVkb0lkOworICAgIGRpZENoYW5nZVRhcmdldEVsZW1lbnRPclBzZXVk
b0VsZW1lbnQocHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KTsKKworICAgIHJl
dHVybiB7IH07Cit9CisKK3ZvaWQgS2V5ZnJhbWVFZmZlY3Q6OmRpZENoYW5nZVRhcmdldEVsZW1l
bnRPclBzZXVkb0VsZW1lbnQoRWxlbWVudCogcHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9F
bGVtZW50KQoreworICAgIGF1dG8qIG5ld1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQgPSB0
YXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KCk7CisKKyAgICAvLyBXZSBtdXN0IGVuc3VyZSBh
IFBzZXVkb0VsZW1lbnQgZXhpc3RzIGZvciB0aGlzIG1fdGFyZ2V0IC8gbV9wc2V1ZG9JZCBwYWly
IGlmIGJvdGggYXJlIHNwZWNpZmllZC4KKyAgICBpZiAoIW5ld1RhcmdldEVsZW1lbnRPclBzZXVk
b0VsZW1lbnQgJiYgbV90YXJnZXQuZ2V0KCkgJiYgbV9wc2V1ZG9JZCAhPSBQc2V1ZG9JZDo6Tm9u
ZSkKKyAgICAgICAgbmV3VGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCA9ICZtX3RhcmdldC0+
ZW5zdXJlUHNldWRvRWxlbWVudChtX3BzZXVkb0lkKTsKIAogICAgIGlmIChhdXRvKiBlZmZlY3RB
bmltYXRpb24gPSBhbmltYXRpb24oKSkKLSAgICAgICAgZWZmZWN0QW5pbWF0aW9uLT5lZmZlY3RU
YXJnZXREaWRDaGFuZ2UocHJldmlvdXNUYXJnZXQsIHRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1l
bnQoKSk7CisgICAgICAgIGVmZmVjdEFuaW1hdGlvbi0+ZWZmZWN0VGFyZ2V0RGlkQ2hhbmdlKHBy
ZXZpb3VzVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCwgbmV3VGFyZ2V0RWxlbWVudE9yUHNl
dWRvRWxlbWVudCk7CiAKICAgICBjbGVhckJsZW5kaW5nS2V5ZnJhbWVzKCk7CiAKQEAgLTExMTMs
MTQgKzExNzIsMTQgQEAgdm9pZCBLZXlmcmFtZUVmZmVjdDo6c2V0VGFyZ2V0KFJlZlB0cjxFbGVt
ZW50PiYmIG5ld1RhcmdldCkKIAogICAgIC8vIExpa2V3aXNlLCB3ZSBuZWVkIHRvIGludmFsaWRh
dGUgc3R5bGVzIG9uIHRoZSBwcmV2aW91cyB0YXJnZXQgc28gdGhhdAogICAgIC8vIGFueSBhbmlt
YXRlZCBzdHlsZXMgYXJlIHJlbW92ZWQgaW1tZWRpYXRlbHkuCi0gICAgaW52YWxpZGF0ZUVsZW1l
bnQocHJldmlvdXNUYXJnZXQpOworICAgIGludmFsaWRhdGVFbGVtZW50KHByZXZpb3VzVGFyZ2V0
RWxlbWVudE9yUHNldWRvRWxlbWVudCk7CiAKLSAgICBpZiAocHJldmlvdXNUYXJnZXQpIHsKLSAg
ICAgICAgcHJldmlvdXNUYXJnZXQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5yZW1vdmVF
ZmZlY3QoKnRoaXMpOworICAgIGlmIChwcmV2aW91c1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1l
bnQpIHsKKyAgICAgICAgcHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50LT5lbnN1
cmVLZXlmcmFtZUVmZmVjdFN0YWNrKCkucmVtb3ZlRWZmZWN0KCp0aGlzKTsKICAgICAgICAgbV9p
blRhcmdldEVmZmVjdFN0YWNrID0gZmFsc2U7CiAgICAgfQotICAgIGlmICh0YXJnZXRFbGVtZW50
T3JQc2V1ZG9FbGVtZW50KCkpCi0gICAgICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IHRhcmdl
dEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKS0+ZW5zdXJlS2V5ZnJhbWVFZmZlY3RTdGFjaygpLmFk
ZEVmZmVjdCgqdGhpcyk7CisgICAgaWYgKG5ld1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQp
CisgICAgICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IG5ld1RhcmdldEVsZW1lbnRPclBzZXVk
b0VsZW1lbnQtPmVuc3VyZUtleWZyYW1lRWZmZWN0U3RhY2soKS5hZGRFZmZlY3QoKnRoaXMpOwog
fQogCiB2b2lkIEtleWZyYW1lRWZmZWN0OjphcHBseShSZW5kZXJTdHlsZSYgdGFyZ2V0U3R5bGUp
CkBAIC0xNjk4LDQgKzE3NTcsOSBAQCBib29sIEtleWZyYW1lRWZmZWN0Ojpjb21wdXRlVHJhbnNm
b3JtZWRFeHRlbnRWaWFNYXRyaXgoY29uc3QgRmxvYXRSZWN0JiByZW5kZXJlcgogICAgIHJldHVy
biB0cnVlOwogfQogCitib29sIEtleWZyYW1lRWZmZWN0OjpyZXF1aXJlc1BzZXVkb0VsZW1lbnQo
KSBjb25zdAoreworICAgIHJldHVybiBtX2JsZW5kaW5nS2V5ZnJhbWVzU291cmNlID09IEJsZW5k
aW5nS2V5ZnJhbWVzU291cmNlOjpXZWJBbmltYXRpb24gJiYgdGFyZ2V0c1BzZXVkb0VsZW1lbnQo
KTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3QuaAppbmRleCA5NmIyOTdhZTAyNzgzOTJlMzg2ZGIyYjA5NTIxOWU0YzAx
N2JiY2Q0Li5kYWUyMjZhN2FmNTRiZjI1ZDkyODcwNjVhMzkxNDc5YmJlYWY4ZWY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaApAQCAtMTA1LDYgKzEwNSwxMCBA
QCBwdWJsaWM6CiAgICAgRWxlbWVudCogdGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCgpIGNv
bnN0OwogICAgIHZvaWQgc2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50PiYmKTsKIAorICAgIGJvb2wg
dGFyZ2V0c1BzZXVkb0VsZW1lbnQoKSBjb25zdDsKKyAgICBjb25zdCBTdHJpbmcgcHNldWRvRWxl
bWVudCgpIGNvbnN0OworICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNldFBzZXVkb0VsZW1lbnQoY29u
c3QgU3RyaW5nJik7CisKICAgICBWZWN0b3I8SlNDOjpTdHJvbmc8SlNDOjpKU09iamVjdD4+IGdl
dEtleWZyYW1lcyhKU0M6OkpTR2xvYmFsT2JqZWN0Jik7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4g
c2V0S2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBKU0M6OlN0cm9uZzxKU0M6OkpTT2Jq
ZWN0PiYmKTsKIApAQCAtMTU4LDYgKzE2Miw4IEBAIHB1YmxpYzoKIAogICAgIGNvbnN0IFJlbmRl
clN0eWxlKiB1bmFuaW1hdGVkU3R5bGUoKSBjb25zdCB7IHJldHVybiBtX3VuYW5pbWF0ZWRTdHls
ZS5nZXQoKTsgfQogCisgICAgYm9vbCByZXF1aXJlc1BzZXVkb0VsZW1lbnQoKSBjb25zdDsKKwog
cHJpdmF0ZToKICAgICBLZXlmcmFtZUVmZmVjdChFbGVtZW50KiwgUHNldWRvSWQpOwogCkBAIC0x
NjgsNiArMTc0LDcgQEAgcHJpdmF0ZToKICAgICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsK
ICAgICB2b2lkIHVwZGF0ZUVmZmVjdFN0YWNrTWVtYmVyc2hpcCgpOwogICAgIHZvaWQgY29weVBy
b3BlcnRpZXNGcm9tU291cmNlKFJlZjxLZXlmcmFtZUVmZmVjdD4mJik7CisgICAgdm9pZCBkaWRD
aGFuZ2VUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KEVsZW1lbnQqKTsKICAgICBFeGNlcHRp
b25Pcjx2b2lkPiBwcm9jZXNzS2V5ZnJhbWVzKEpTQzo6SlNHbG9iYWxPYmplY3QmLCBKU0M6OlN0
cm9uZzxKU0M6OkpTT2JqZWN0PiYmKTsKICAgICB2b2lkIGFkZFBlbmRpbmdBY2NlbGVyYXRlZEFj
dGlvbihBY2NlbGVyYXRlZEFjdGlvbik7CiAgICAgdm9pZCB1cGRhdGVBY2NlbGVyYXRlZEFjdGlv
bnMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVj
dC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaWRsCmluZGV4
IGQyZDA3YWNjNDM2NGVhYjhiZjFlMGFiNmUxZDAzMmI4YWU2OWY3MDAuLmQzNDRiYTIwNjFlNDJi
YTJiMWE4ZGJkNDVkNmIyOTM1ZGJiYzdlMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0LmlkbApAQCAtMjMsNiArMjMsOCBAQAogICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAq
LwogCit0eXBlZGVmIFVTVlN0cmluZyBDU1NPTVN0cmluZzsKKwogWwogICAgIEVuYWJsZWRBdFJ1
bnRpbWU9V2ViQW5pbWF0aW9ucywKICAgICBFeHBvc2VkPVdpbmRvdywKQEAgLTMzLDYgKzM1LDcg
QEAKICAgICBDb25zdHJ1Y3RvcihLZXlmcmFtZUVmZmVjdCBzb3VyY2UpCiBdIGludGVyZmFjZSBL
ZXlmcmFtZUVmZmVjdCA6IEFuaW1hdGlvbkVmZmVjdCB7CiAgICAgYXR0cmlidXRlIEVsZW1lbnQ/
IHRhcmdldDsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIGF0dHJpYnV0ZSBDU1NPTVN0cmluZz8g
cHNldWRvRWxlbWVudDsKICAgICBbRW5hYmxlZEF0UnVudGltZT1XZWJBbmltYXRpb25zQ29tcG9z
aXRlT3BlcmF0aW9uc10gYXR0cmlidXRlIEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbiBpdGVy
YXRpb25Db21wb3NpdGU7CiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9uc0NvbXBv
c2l0ZU9wZXJhdGlvbnNdIGF0dHJpYnV0ZSBDb21wb3NpdGVPcGVyYXRpb24gY29tcG9zaXRlOwog
ICAgIFtDYWxsV2l0aD1HbG9iYWxPYmplY3RdIHNlcXVlbmNlPG9iamVjdD4gZ2V0S2V5ZnJhbWVz
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RP
cHRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25z
LmgKaW5kZXggYWJhN2QyZjM3YzAzODVkZmYwMjFkNzVkMGI4Y2ViN2ZiYjFmODE1MS4uM2VkY2I4
NDUwMzEzYThmMDIzYWU2NGQ4MWNiODAwZjY2YWY0NWI1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaApAQCAtMzUsNiArMzUsNyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiBzdHJ1Y3QgS2V5ZnJhbWVFZmZlY3RPcHRpb25zIDogRWZmZWN0
VGltaW5nIHsKICAgICBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24gaXRlcmF0aW9uQ29tcG9z
aXRlIHsgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uOjpSZXBsYWNlIH07CiAgICAgQ29tcG9z
aXRlT3BlcmF0aW9uIGNvbXBvc2l0ZSB7IENvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSB9Owor
ICAgIFN0cmluZyBwc2V1ZG9FbGVtZW50OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9u
cy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlk
bAppbmRleCAxZmQ4OWQyODE1ZWViOTYwNjAxNGY1ZjYxMTMxNWRiZjAxYzY5ZjgwLi42MWViZmYx
NmM4NTZhYjY4NDM5NGViMzk3OWYwYTFlMGU4MDliYjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbApAQCAtMjMsNyArMjMsMTAg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAordHlwZWRlZiBVU1ZTdHJpbmcgQ1NTT01TdHJpbmc7
CisKIGRpY3Rpb25hcnkgS2V5ZnJhbWVFZmZlY3RPcHRpb25zIDogRWZmZWN0VGltaW5nIHsKICAg
ICBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24gaXRlcmF0aW9uQ29tcG9zaXRlID0gInJlcGxh
Y2UiOwogICAgIENvbXBvc2l0ZU9wZXJhdGlvbiBjb21wb3NpdGUgPSAicmVwbGFjZSI7CisgICAg
Q1NTT01TdHJpbmc/IHBzZXVkb0VsZW1lbnQgPSBudWxsOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmNwcAppbmRleCBmNGIzZmFhMjJmOTNl
YzUyYzQ3ZThiMzUwNDgwZTBmMWQ3YTNjOTQ2Li5iMTU5NTQ0YjgyZjViZDBmMDk4NjY5NDAyNDhm
NDBmNGIxMzk4Y2Y2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJh
bWVFZmZlY3RTdGFjay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0U3RhY2suY3BwCkBAIC01OSw2ICs1OSwxNSBAQCB2b2lkIEtleWZyYW1lRWZmZWN0U3Rh
Y2s6OnJlbW92ZUVmZmVjdChLZXlmcmFtZUVmZmVjdCYgZWZmZWN0KQogICAgIG1fZWZmZWN0cy5y
ZW1vdmVGaXJzdCgmZWZmZWN0KTsKIH0KIAorYm9vbCBLZXlmcmFtZUVmZmVjdFN0YWNrOjpyZXF1
aXJlc1BzZXVkb0VsZW1lbnQoKSBjb25zdAoreworICAgIGZvciAoYXV0byYgZWZmZWN0IDogbV9l
ZmZlY3RzKSB7CisgICAgICAgIGlmIChlZmZlY3QtPnJlcXVpcmVzUHNldWRvRWxlbWVudCgpKQor
ICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKwog
Ym9vbCBLZXlmcmFtZUVmZmVjdFN0YWNrOjppc0N1cnJlbnRseUFmZmVjdGluZ1Byb3BlcnR5KENT
U1Byb3BlcnR5SUQgcHJvcGVydHkpIGNvbnN0CiB7CiAgICAgZm9yIChhdXRvJiBlZmZlY3QgOiBt
X2VmZmVjdHMpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFt
ZUVmZmVjdFN0YWNrLmggYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RT
dGFjay5oCmluZGV4IDk3OGQ4NGRjZDU2ODBkMjhjMGEzZDY5OWUyMzNmZGM3ZDNhZWE2OTAuLjFk
Yjg0MDQyNjhlYzc5M2FjYjRmNTEyNzBhYmNjZDEwNGE1NDZjZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaApAQCAtNDcsNiArNDcsNyBAQCBw
dWJsaWM6CiAgICAgY29uc3QgQW5pbWF0aW9uTGlzdCogY3NzQW5pbWF0aW9uTGlzdCgpIGNvbnN0
IHsgcmV0dXJuIG1fY3NzQW5pbWF0aW9uTGlzdC5nZXQoKTsgfQogICAgIHZvaWQgc2V0Q1NTQW5p
bWF0aW9uTGlzdChSZWZQdHI8Y29uc3QgQW5pbWF0aW9uTGlzdD4mJik7CiAgICAgYm9vbCBpc0N1
cnJlbnRseUFmZmVjdGluZ1Byb3BlcnR5KENTU1Byb3BlcnR5SUQpIGNvbnN0OworICAgIGJvb2wg
cmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgdm9pZCBlbnN1
cmVFZmZlY3RzQXJlU29ydGVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRp
b24vV2ViQW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRp
b24uY3BwCmluZGV4IGM3ODU2MTRhMjViNzNhY2Y0NzQwMmIyNzk5ZTI1NWY0ZDdjZTM1N2QuLmVi
NWNkNjUzM2FjNmYyNTcyMTFlNGZjMjk0OTYxMzMwMjlmODdjZGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9XZWJBbmltYXRpb24uY3BwCkBAIC0xMzY3LDcgKzEzNjcsNyBAQCBFeGNlcHRp
b25Pcjx2b2lkPiBXZWJBbmltYXRpb246OmNvbW1pdFN0eWxlcygpCiAgICAgLy8KICAgICAvLyAy
LjEgSWYgdGFyZ2V0IGlzIG5vdCBhbiBlbGVtZW50IGNhcGFibGUgb2YgaGF2aW5nIGEgc3R5bGUg
YXR0cmlidXRlIChmb3IgZXhhbXBsZSwgaXQgaXMgYSBwc2V1ZG8tZWxlbWVudCBvciBpcyBhbiBl
bGVtZW50IGluIGEKICAgICAvLyBkb2N1bWVudCBmb3JtYXQgZm9yIHdoaWNoIHN0eWxlIGF0dHJp
YnV0ZXMgYXJlIG5vdCBkZWZpbmVkKSB0aHJvdyBhICJOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJv
ciIgRE9NRXhjZXB0aW9uIGFuZCBhYm9ydCB0aGVzZSBzdGVwcy4KLSAgICBpZiAoIWlzPFN0eWxl
ZEVsZW1lbnQ+KHRhcmdldCkpCisgICAgaWYgKCFpczxTdHlsZWRFbGVtZW50Pih0YXJnZXQpIHx8
IGVmZmVjdC0+dGFyZ2V0c1BzZXVkb0VsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IE5vTW9kaWZpY2F0aW9uQWxsb3dlZEVycm9yIH07CiAKICAgICBhdXRvJiBzdHlsZWRFbGVt
ZW50ID0gZG93bmNhc3Q8U3R5bGVkRWxlbWVudD4oKnRhcmdldCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHNl
dWRvRWxlbWVudC5jcHAKaW5kZXggMzJhZTgzMjg5ZjhmOGY3Y2NmMzA3OTU1YzI5ZThiMTVlNDFi
ZDE2OS4uZTg0YzIyOWIzOTdiZDViZTkwZGZhYThiYjhmY2VlOTFiM2RkODE5ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNv
bnRlbnREYXRhLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRUaW1lbGluZS5oIgogI2luY2x1ZGUgIklu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgorI2luY2x1ZGUgIktleWZyYW1lRWZmZWN0U3RhY2su
aCIKICNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIK
ICNpbmNsdWRlICJSZW5kZXJRdW90ZS5oIgpAQCAtMTAwLDcgKzEwMSwxNCBAQCB2b2lkIFBzZXVk
b0VsZW1lbnQ6OmNsZWFySG9zdEVsZW1lbnQoKQogCiBib29sIFBzZXVkb0VsZW1lbnQ6OnJlbmRl
cmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogewotICAgIHJldHVybiBwc2V1
ZG9FbGVtZW50UmVuZGVyZXJJc05lZWRlZCgmc3R5bGUpOworICAgIHJldHVybiBwc2V1ZG9FbGVt
ZW50UmVuZGVyZXJJc05lZWRlZCgmc3R5bGUpIHx8IGlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0
UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpOworfQorCitib29sIFBzZXVkb0VsZW1lbnQ6OmlzVGFy
Z2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpCit7CisgICAgaWYg
KGF1dG8qIHN0YWNrID0ga2V5ZnJhbWVFZmZlY3RTdGFjaygpKQorICAgICAgICByZXR1cm4gc3Rh
Y2stPnJlcXVpcmVzUHNldWRvRWxlbWVudCgpOworICAgIHJldHVybiBmYWxzZTsKIH0KIAogfSAv
LyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5oCmluZGV4IDJmYWQzMWQ2MGUx
ZGY4YjE4NGExZGJmNzk0YzlhMjkxZmJjODMzNWQuLmVjNzVlNjEyMGY5Yzk4ZjhjOTNkYmI1N2Vh
ZmE2OWNmNDJiN2NkODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaApAQCAtNDEsNiAr
NDEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjbGVhckhvc3RFbGVtZW50KCk7CiAKICAgICBib29s
IHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBvdmVycmlkZTsKKyAgICBib29s
IGlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpOwogCiAg
ICAgYm9vbCBjYW5TdGFydFNlbGVjdGlvbigpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNl
OyB9CiAgICAgYm9vbCBjYW5Db250YWluUmFuZ2VFbmRQb2ludCgpIGNvbnN0IG92ZXJyaWRlIHsg
cmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQu
Y3BwCmluZGV4IGE5NDE3ZDJlYTk5NzkwNWVlZDgwOWVmM2JlYTdjMzdkOGZmMmJiOWMuLmFlMWI1
ZmZkZjg2ZTliYjE4ZTZiOWZkYWU4NjEzNWIxNmJhZjBkYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRl
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVl
VXBkYXRlckdlbmVyYXRlZENvbnRlbnQuY3BwCkBAIC03MSwxMiArNzEsMTYgQEAgdm9pZCBSZW5k
ZXJUcmVlVXBkYXRlcjo6R2VuZXJhdGVkQ29udGVudDo6dXBkYXRlUXVvdGVzVXBUbyhSZW5kZXJR
dW90ZSogbGFzdFF1b3QKIAogc3RhdGljIHZvaWQgY3JlYXRlQ29udGVudFJlbmRlcmVycyhSZW5k
ZXJUcmVlQnVpbGRlciYgYnVpbGRlciwgUmVuZGVyRWxlbWVudCYgcHNldWRvUmVuZGVyZXIsIGNv
bnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsKLSAgICBBU1NFUlQoc3R5bGUuY29udGVudERhdGEo
KSk7Ci0KLSAgICBmb3IgKGNvbnN0IENvbnRlbnREYXRhKiBjb250ZW50ID0gc3R5bGUuY29udGVu
dERhdGEoKTsgY29udGVudDsgY29udGVudCA9IGNvbnRlbnQtPm5leHQoKSkgewotICAgICAgICBh
dXRvIGNoaWxkID0gY29udGVudC0+Y3JlYXRlQ29udGVudFJlbmRlcmVyKHBzZXVkb1JlbmRlcmVy
LmRvY3VtZW50KCksIHN0eWxlKTsKLSAgICAgICAgaWYgKHBzZXVkb1JlbmRlcmVyLmlzQ2hpbGRB
bGxvd2VkKCpjaGlsZCwgc3R5bGUpKQotICAgICAgICAgICAgYnVpbGRlci5hdHRhY2gocHNldWRv
UmVuZGVyZXIsIFdURk1vdmUoY2hpbGQpKTsKKyAgICBpZiAoYXV0byogY29udGVudERhdGEgPSBz
dHlsZS5jb250ZW50RGF0YSgpKSB7CisgICAgICAgIGZvciAoY29uc3QgQ29udGVudERhdGEqIGNv
bnRlbnQgPSBjb250ZW50RGF0YTsgY29udGVudDsgY29udGVudCA9IGNvbnRlbnQtPm5leHQoKSkg
eworICAgICAgICAgICAgYXV0byBjaGlsZCA9IGNvbnRlbnQtPmNyZWF0ZUNvbnRlbnRSZW5kZXJl
cihwc2V1ZG9SZW5kZXJlci5kb2N1bWVudCgpLCBzdHlsZSk7CisgICAgICAgICAgICBpZiAocHNl
dWRvUmVuZGVyZXIuaXNDaGlsZEFsbG93ZWQoKmNoaWxkLCBzdHlsZSkpCisgICAgICAgICAgICAg
ICAgYnVpbGRlci5hdHRhY2gocHNldWRvUmVuZGVyZXIsIFdURk1vdmUoY2hpbGQpKTsKKyAgICAg
ICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIC8vIFRoZSBvbmx5IHZhbGlkIHNjZW5hcmlvIHdo
ZXJlIHRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aXRob3V0IHRoZSAiY29udGVudCIgcHJvcGVydHkg
YmVpbmcgc2V0CisgICAgICAgIC8vIGlzIHRoZSBjYXNlIHdoZXJlIGEgcHNldWRvLWVsZW1lbnQg
aGFzIGFuaW1hdGlvbnMgc2V0IG9uIGl0IHZpYSB0aGUgV2ViIEFuaW1hdGlvbnMgQVBJLgorICAg
ICAgICBBU1NFUlQoaXM8UHNldWRvRWxlbWVudD4ocHNldWRvUmVuZGVyZXIuZWxlbWVudCgpKSAm
JiBkb3duY2FzdDxQc2V1ZG9FbGVtZW50PigqcHNldWRvUmVuZGVyZXIuZWxlbWVudCgpKS5pc1Rh
cmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSk7CiAgICAgfQog
fQogCkBAIC05Nyw3ICsxMDEsNyBAQCB2b2lkIFJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0ZWRD
b250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KEVsZW1lbnQmIGN1cnJlbnQsCiAgICAgaWYgKGF1
dG8qIHJlbmRlcmVyID0gcHNldWRvRWxlbWVudCA/IHBzZXVkb0VsZW1lbnQtPnJlbmRlcmVyKCkg
OiBudWxscHRyKQogICAgICAgICBtX3VwZGF0ZXIucmVuZGVyVHJlZVBvc2l0aW9uKCkuaW52YWxp
ZGF0ZU5leHRTaWJsaW5nKCpyZW5kZXJlcik7CiAKLSAgICBpZiAoIW5lZWRzUHNldWRvRWxlbWVu
dCh1cGRhdGUpKSB7CisgICAgaWYgKCFuZWVkc1BzZXVkb0VsZW1lbnQodXBkYXRlKSAmJiAoIXBz
ZXVkb0VsZW1lbnQgfHwgIXBzZXVkb0VsZW1lbnQtPmlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0
UmVxdWlyaW5nUHNldWRvRWxlbWVudCgpKSkgewogICAgICAgICBpZiAocHNldWRvRWxlbWVudCkg
ewogICAgICAgICAgICAgaWYgKHBzZXVkb0lkID09IFBzZXVkb0lkOjpCZWZvcmUpCiAgICAgICAg
ICAgICAgICAgcmVtb3ZlQmVmb3JlUHNldWRvRWxlbWVudChjdXJyZW50LCBtX3VwZGF0ZXIubV9i
dWlsZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29s
dmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcAppbmRl
eCA1MDczODQ5NDVjYmU0OWU2YjgzOGU1ZDAxMGFhZGEyZDdmZWQ1ZjlkLi4zZThmM2M5MjA4ZGQ0
YzM4N2I1YmU2NjYzZGM3NzM2ZmVlODlmNDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVUcmVlUmVzb2x2ZXIuY3BwCkBAIC0yNjUsNyArMjY1LDEyIEBAIEVsZW1lbnRVcGRhdGUgVHJl
ZVJlc29sdmVyOjpyZXNvbHZlUHNldWRvU3R5bGUoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgRWxl
bWVudFVwCiAgICAgICAgIHJldHVybiB7IH07CiAKICAgICBhdXRvIHBzZXVkb1N0eWxlID0gc2Nv
cGUoKS5yZXNvbHZlci5wc2V1ZG9TdHlsZUZvckVsZW1lbnQoZWxlbWVudCwgeyBwc2V1ZG9JZCB9
LCAqZWxlbWVudFVwZGF0ZS5zdHlsZSwgcGFyZW50Qm94U3R5bGVGb3JQc2V1ZG8oZWxlbWVudFVw
ZGF0ZSksICZzY29wZSgpLnNlbGVjdG9yRmlsdGVyKTsKLSAgICBpZiAoIXBzZXVkb0VsZW1lbnRS
ZW5kZXJlcklzTmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSkKKyAgICBpZiAoIXBzZXVkb1N0eWxl
KQorICAgICAgICByZXR1cm4geyB9OworCisgICAgYXV0byogcHNldWRvRWxlbWVudCA9IHBzZXVk
b0lkID09IFBzZXVkb0lkOjpCZWZvcmUgPyBlbGVtZW50LmJlZm9yZVBzZXVkb0VsZW1lbnQoKSA6
IGVsZW1lbnQuYWZ0ZXJQc2V1ZG9FbGVtZW50KCk7CisgICAgYm9vbCBoYXNBbmltYXRpb25zID0g
cHNldWRvRWxlbWVudCAmJiBwc2V1ZG9FbGVtZW50LT5pc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVj
dFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKTsKKyAgICBpZiAoIXBzZXVkb0VsZW1lbnRSZW5kZXJl
cklzTmVlZGVkKHBzZXVkb1N0eWxlLmdldCgpKSAmJiAhaGFzQW5pbWF0aW9ucykKICAgICAgICAg
cmV0dXJuIHsgfTsKIAogICAgIHJldHVybiBjcmVhdGVBbmltYXRlZEVsZW1lbnRVcGRhdGUoV1RG
TW92ZShwc2V1ZG9TdHlsZSksIGVsZW1lbnQuZW5zdXJlUHNldWRvRWxlbWVudChwc2V1ZG9JZCks
IGVsZW1lbnRVcGRhdGUuY2hhbmdlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IGE3NGI0YTY2NmYyNTQ5OWEwM2Uz
ZjI2ODVmNWJiMGQwYjIxYzUyOTQuLmViNzEwZjI4N2ZmNzU2N2ExOWNjYmNkZTcxNWU0YzA5NTY4
YjQ0NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9GZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJMRV9XRUJHUFVfTUFDT1Nf
U0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJYUiA9IDsKIAorRU5BQkxF
X1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJT05TOworCiBFTkFCTEVfV0VCX0FQ
SV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElPID0gRU5BQkxFX1dFQl9BVURJTzsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNmMjY4
NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1NjhiNDQ1
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBFTkFC
TEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVfV0VC
WFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9OUzsK
KwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9IEVO
QUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCBhNzRiNGE2NjZmMjU0OTlh
MDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYyODdmZjc1NjdhMTljY2JjZGU3MTVlNGMw
OTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBFTkFC
TEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVfV0VC
WFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9OUzsK
KwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9IEVO
QUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCAyNDcwNDgy
ZWY2NGVmOGE3OTA2MmIwMDA4NjJiMDAzZWJiMDY1Njk0Li5kNzRlZWMwNzQwYTkyZTYzM2JkMTZi
NzQ1NzlkNGMyMmE4NWRjMDQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAyMC0wNC0xNSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29t
PgorCisgICAgICAgIFtXZWIgQW5pbWF0aW9uc10gQWRkIHN1cHBvcnQgZm9yIGBwc2V1ZG9FbGVt
ZW50YCBvbiBgS2V5ZnJhbWVFZmZlY3RgIGFuZCBgS2V5ZnJhbWVFZmZlY3RPcHRpb25zYAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA3MjkwCisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS81OTE5OTAwMz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBNYXJrIDIzIGFkZGl0aW9uYWwgV1BUIHRlc3RzIGFzIFBB
U1MuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0Rv
Y3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9u
cy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRs
aGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFj
ZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5
bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVj
dGVkLnR4dDoKKwogMjAyMC0wNC0xNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+
CiAKICAgICAgICAgUmVzeW5jIGZlYXR1cmVwb2xpY3kuanMgdG8gZml4IFdQVCBtZWRpYWNhcHR1
cmUtc3RyZWFtcy9NZWRpYVN0cmVhbS1kZWZhdWx0LWZlYXR1cmUtcG9saWN5Lmh0dHBzLmh0bWwK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1hbmltYXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVk
LnR4dAppbmRleCAzYzYyMzgyMDI3ZmJkYTY0NzE4MTI0NTNhYWQ3MGIyYjM0NTlhNGU0Li5kMGJh
YmY1NjgzZWFlZWFjM2JlODA5NmEyYzUwZjJiYTYxNmMyOTY5IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9E
b2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMv
RG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xMyw1ICsx
Myw1IEBAIFBBU1MgRmluaXNoZWQgYnV0IG5vdCBmaWxsaW5nIENTUyBBbmltYXRpb25zIGFyZSBu
b3QgcmV0dXJuZWQKIFBBU1MgWWV0LXRvLXN0YXJ0IENTUyBBbmltYXRpb25zIGFyZSByZXR1cm5l
ZCAKIFBBU1MgQ1NTIEFuaW1hdGlvbnMgY2FuY2VsZWQgdmlhIHRoZSBBUEkgYXJlIG5vdCByZXR1
cm5lZCAKIFBBU1MgQ1NTIEFuaW1hdGlvbnMgY2FuY2VsZWQgYW5kIHJlc3RhcnRlZCB2aWEgdGhl
IEFQSSBhcmUgcmV0dXJuZWQgCi1GQUlMIENTUyBBbmltYXRpb25zIHRhcmdldHRpbmcgKHBzZXVk
by0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIGFzc2Vy
dF9lcXVhbHM6IEFuaW1hdGlvbiAjMSBoYXMgbnVsbCBwc2V1ZG8gdHlwZSBleHBlY3RlZCAob2Jq
ZWN0KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitQQVNTIENTUyBBbmltYXRp
b25zIHRhcmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRl
ciBhZnRlciBzb3J0aW5nIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlv
bnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50
ZW50YXRpdmUtZXhwZWN0ZWQudHh0CmluZGV4IGEwYzlkMDljMDljNGIzNjdjNzMwY2YzM2Q1OTM2
OTczOWE5M2Y4OGQuLjhlZDkyMzBkODdkODhhODc5ZTFkNjA2NTZmY2QxYzlhYmNiMmE5ZDIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1hbmltYXRpb25zL0VsZW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQu
dHh0CkBAIC0xNyw4ICsxNyw4IEBAIFBBU1MgZ2V0QW5pbWF0aW9ucyByZXR1cm5zIG9iamVjdHMg
d2l0aCB0aGUgc2FtZSBpZGVudGl0eQogUEFTUyBnZXRBbmltYXRpb25zIGZvciBDU1MgQW5pbWF0
aW9ucyB0aGF0IGFyZSBjYW5jZWxlZCAKIFBBU1MgZ2V0QW5pbWF0aW9ucyBmb3IgQ1NTIEFuaW1h
dGlvbnMgZm9sbG93cyBhbmltYXRpb24tbmFtZSBvcmRlciAKIFBBU1MgeyBzdWJ0cmVlOiBmYWxz
ZSB9IG9uIGEgbGVhZiBlbGVtZW50IHJldHVybnMgdGhlIGVsZW1lbnQncyBhbmltYXRpb25zIGFu
ZCBpZ25vcmUgcHNldWRvLWVsZW1lbnRzIAotRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhIGxl
YWYgZWxlbWVudCByZXR1cm5zIHRoZSBlbGVtZW50J3MgYW5pbWF0aW9ucyBhbmQgaXRzIHBzZXVk
by1lbGVtZW50cycgYW5pbWF0aW9ucyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0aW9uIHRhcmdl
dGluZyB0aGUgcGFyZW50IGVsZW1lbnQgc2hvdWxkIGJlIHJldHVybmVkIGZpcnN0IGV4cGVjdGVk
IChvYmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK1BBU1MgeyBzdWJ0
cmVlOiB0cnVlIH0gb24gYSBsZWFmIGVsZW1lbnQgcmV0dXJucyB0aGUgZWxlbWVudCdzIGFuaW1h
dGlvbnMgYW5kIGl0cyBwc2V1ZG8tZWxlbWVudHMnIGFuaW1hdGlvbnMgCiBQQVNTIHsgc3VidHJl
ZTogZmFsc2UgfSBvbiBhbiBlbGVtZW50IHdpdGggYSBjaGlsZCByZXR1cm5zIG9ubHkgdGhlIGVs
ZW1lbnQncyBhbmltYXRpb25zIAotRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhbiBlbGVtZW50
IHdpdGggYSBjaGlsZCByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSB0aGUgZWxlbWVudCwgaXRzIHBz
ZXVkby1lbGVtZW50cywgaXRzIGNoaWxkIGFuZCBpdHMgY2hpbGQgcHNldWRvLWVsZW1lbnRzIGFz
c2VydF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSBwYXJlbnQgZWxlbWVudCBz
aG91bGQgYmUgcmV0dXJuZWQgZmlyc3QgZXhwZWN0ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290ICh1
bmRlZmluZWQpIHVuZGVmaW5lZAorRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBvbiBhbiBlbGVtZW50
IHdpdGggYSBjaGlsZCByZXR1cm5zIGFuaW1hdGlvbnMgZnJvbSB0aGUgZWxlbWVudCwgaXRzIHBz
ZXVkby1lbGVtZW50cywgaXRzIGNoaWxkIGFuZCBpdHMgY2hpbGQgcHNldWRvLWVsZW1lbnRzIGFz
c2VydF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0aW5nIHRoZSA6OmFmdGVyIHBlc3Vkby1l
bGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCB0aGlyZCBleHBlY3RlZCAoc3RyaW5nKSAiOjphZnRl
ciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCiBGQUlMIHsgc3VidHJlZTogdHJ1ZSB9IG9uIGFuIGVs
ZW1lbnQgd2l0aCBtYW55IGRlc2NlbmRhbnRzIHJldHVybnMgYW5pbWF0aW9ucyBmcm9tIGFsbCB0
aGUgZGVzY2VuZGFudHMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlvbiB0YXJnZXRpbmcgdGhl
IGNoaWxkMSBlbGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCBzZWNvbmQgZXhwZWN0ZWQgRWxlbWVu
dCBub2RlIDxkaXYgaWQ9ImNoaWxkMSIgc3R5bGU9ImFuaW1hdGlvbjogYW5pbTEgMTAwczsiPjxk
aXYgaWQ9Ii4uLiBidXQgZ290IEVsZW1lbnQgbm9kZSA8ZGl2IGlkPSJncmFuZGNoaWxkMSIgc3R5
bGU9ImFuaW1hdGlvbjogYW5pbTEgMTAwczsiPjwvZGl2PgogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMv
RG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0Rv
Y3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCAxOGMxZTMx
NjVhMDJmZjE1MjBmNTFmZGVkMmJlN2QyZDM1NjNmNzM2Li5mZDJiZjU1MDI0MTIwNGNhY2Q0YmE1
MDMxMGViOTBiOGE1MWJjZTE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0
aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9Eb2N1bWVudC1nZXRBbmlt
YXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKQEAgLTEsNiArMSw2IEBACiAKIFBBU1MgZ2V0
QW5pbWF0aW9ucyBmb3Igbm9uLWFuaW1hdGVkIGNvbnRlbnQgCiBQQVNTIGdldEFuaW1hdGlvbnMg
Zm9yIENTUyBUcmFuc2l0aW9ucyAKLUZBSUwgQ1NTIFRyYW5zaXRpb25zIHRhcmdldHRpbmcgKHBz
ZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUgY29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIGFz
c2VydF9lcXVhbHM6IFRyYW5zaXRpb24gIzEgaGFzIG51bGwgcHNldWRvIHR5cGUgZXhwZWN0ZWQg
KG9iamVjdCkgbnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorUEFTUyBDU1MgVHJh
bnNpdGlvbnMgdGFyZ2V0dGluZyAocHNldWRvLSllbGVtZW50cyBzaG91bGQgaGF2ZSBjb3JyZWN0
IG9yZGVyIGFmdGVyIHNvcnRpbmcgCiBQQVNTIFRyYW5zaXRpb25zIGFyZSBub3QgcmV0dXJuZWQg
YWZ0ZXIgdGhleSBoYXZlIGZpbmlzaGVkIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2lu
ZG93LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CmluZGV4
IGNlZjIyNTUwYzE1ZmMwNTQwMTQ5YmQ4ZTMyOGYwOGU2MTJiNmE3NTkuLjhhNjZjZGZkODBmYjY2
MTZlNDU0NWIyMzhmNDk5ZmQzYjEyMGI0YWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5k
b3ctZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaWRsaGFybmVzcy53aW5kb3ctZXhwZWN0ZWQudHh0CkBA
IC0xMDgsMTQgKzEwOCwxNCBAQCBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogZXhpc3Rl
bmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBwcm90b3R5cGUgbwogUEFTUyBLZXlmcmFt
ZUVmZmVjdCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2Ug
cHJvdG90eXBlIG9iamVjdCdzICJjb25zdHJ1Y3RvciIgcHJvcGVydHkgCiBQQVNTIEtleWZyYW1l
RWZmZWN0IGludGVyZmFjZTogZXhpc3RlbmNlIGFuZCBwcm9wZXJ0aWVzIG9mIGludGVyZmFjZSBw
cm90b3R5cGUgb2JqZWN0J3MgQEB1bnNjb3BhYmxlcyBwcm9wZXJ0eSAKIFBBU1MgS2V5ZnJhbWVF
ZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgdGFyZ2V0IAotRkFJTCBLZXlmcmFtZUVmZmVjdCBp
bnRlcmZhY2U6IGF0dHJpYnV0ZSBwc2V1ZG9FbGVtZW50IGFzc2VydF90cnVlOiBUaGUgcHJvdG90
eXBlIG9iamVjdCBtdXN0IGhhdmUgYSBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKK1BBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUg
cHNldWRvRWxlbWVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUg
Y29tcG9zaXRlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG9wZXJhdGlvbiBnZXRL
ZXlmcmFtZXMoKSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBvcGVyYXRpb24gc2V0
S2V5ZnJhbWVzKG9iamVjdCkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IG11c3QgYmUgcHJpbWFyeSBp
bnRlcmZhY2Ugb2YgbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIAogUEFTUyBTdHJpbmdp
ZmljYXRpb24gb2YgbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIAogUEFTUyBLZXlmcmFt
ZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGlu
aGVyaXQgcHJvcGVydHkgInRhcmdldCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCi1GQUlMIEtleWZy
YW1lRWZmZWN0IGludGVyZmFjZTogbmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3Qg
aW5oZXJpdCBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgYXNz
ZXJ0X2luaGVyaXRzOiBwcm9wZXJ0eSAicHNldWRvRWxlbWVudCIgbm90IGZvdW5kIGluIHByb3Rv
dHlwZSBjaGFpbgorUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVm
ZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIHdp
dGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBL
ZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVydHkgImNvbXBvc2l0
ZSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTog
bmV3IEtleWZyYW1lRWZmZWN0KG51bGwsIG51bGwpIG11c3QgaW5oZXJpdCBwcm9wZXJ0eSAiZ2V0
S2V5ZnJhbWVzKCkiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBp
bnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJv
cGVydHkgInNldEtleWZyYW1lcyhvYmplY3QpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFu
aW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9p
bnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1leHBlY3RlZC50eHQKaW5kZXggNzUxNDQyNmNh
MGYxZWIxNGMyNTQzNjkyNjJhYzhkOTVjZDk0MTQ1OC4uMjRlMGZmMjhiOTVlMGZkN2U0MzEzN2Y4
NDAyMzMxY2FjYzI3YzY5NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5p
bWF0ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGFibGUvYW5pbWF0ZS1l
eHBlY3RlZC50eHQKQEAgLTEzNyw4ICsxMzcsOCBAQCBQQVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVk
b0VsZW1lbnQgcGFyYW1ldGVyIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdAogUEFTUyBhbmlt
YXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciB3aXRob3V0IGNvbnRlbnQgY3JlYXRl
cyBhbiBBbmltYXRpb24gb2JqZWN0IAogUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50
IHBhcmFtZXRlciAgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0IGZvciA6Om1hcmtlciAKIFBB
U1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIgIGNyZWF0ZXMgYW4gQW5p
bWF0aW9uIG9iamVjdCBmb3IgOjpmaXJzdC1saW5lIAotRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1
ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVk
by1lbGVtZW50IGFzc2VydF9lcXVhbHM6IFRoZSByZXR1cm5lZCBBbmltYXRpb24gdGFyZ2V0cyB0
aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1dCBnb3Qg
KHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQg
d2l0aG91dCBjb250ZW50IGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhl
IGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgYXNzZXJ0X2VxdWFsczogVGhlIHJldHVybmVkIEFuaW1h
dGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVkIChzdHJpbmcpICI6OmJl
Zm9yZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgYW5pbWF0ZSgpIHdpdGgg
cHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVjdCBw
c2V1ZG8tZWxlbWVudCBmb3IgOjptYXJrZXIgYXNzZXJ0X2VxdWFsczogVGhlIHJldHVybmVkIEFu
aW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVkIChzdHJpbmcpICI6
Om1hcmtlciIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgYW5pbWF0ZSgpIHdp
dGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVj
dCBwc2V1ZG8tZWxlbWVudCBmb3IgOjpmaXJzdC1saW5lIGFzc2VydF9lcXVhbHM6IFRoZSByZXR1
cm5lZCBBbmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3Ry
aW5nKSAiOjpmaXJzdC1saW5lIiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorUEFTUyBh
bmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5n
IHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IAorUEFTUyBhbmltYXRlKCkgd2l0aCBwc2V1ZG9F
bGVtZW50IHdpdGhvdXQgY29udGVudCBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0
aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IAorRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1
ZG9FbGVtZW50IGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVk
by1lbGVtZW50IGZvciA6Om1hcmtlciBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0
aW9uIHRhcmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgIjo6bWFya2VyIiBidXQg
Z290ICIiCitGQUlMIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9i
amVjdCB0YXJnZXRpbmcgdGhlIGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgZm9yIDo6Zmlyc3QtbGlu
ZSBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMgdGhlIGNvcnJl
Y3Qgc2VsZWN0b3IgZXhwZWN0ZWQgIjo6Zmlyc3QtbGluZSIgYnV0IGdvdCAiIgogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25z
L2ludGVyZmFjZXMvQW5pbWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQKaW5kZXggMzY1
MDIyN2NmMGYxMmRmMjVkNzllYzBjM2EwYjcxZDUyMTZlMDg3NS4uZDU1Njc2MDgwNzAzYjY0YzJk
YjkwOWIwODljMzNhMTM0M2VlYjNiZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGlv
bi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRpb24v
Y29tbWl0U3R5bGVzLWV4cGVjdGVkLnR4dApAQCAtMTEsMTYgKzExLDEyIEBAIEZBSUwgQ29tbWl0
cyB0aGUgaW50ZXJtZWRpYXRlIHZhbHVlIG9mIGFuIGFuaW1hdGlvbiBpbiB0aGUgbWlkZGxlIG9m
IHN0YWNrIGFzc2VyCiBGQUlMIENvbW1pdCBjb21wb3NpdGVzIG9uIHRvcCBvZiB0aGUgdW5kZXJs
eWluZyB2YWx1ZSBhc3NlcnRfYXBwcm94X2VxdWFsczogZXhwZWN0ZWQgMC41ICsvLSAwLjAwMDEg
YnV0IGdvdCAwLjIwMDAwMDAwMjk4MDIzMjI0CiBQQVNTIFRyaWdnZXJzIG11dGF0aW9uIG9ic2Vy
dmVycyB3aGVuIHVwZGF0aW5nIHN0eWxlIAogRkFJTCBEb2VzIE5PVCB0cmlnZ2VyIG11dGF0aW9u
IG9ic2VydmVycyB3aGVuIHRoZSBjaGFuZ2UgdG8gc3R5bGUgaXMgcmVkdW5kYW50IGFzc2VydF9l
cXVhbHM6IFNob3VsZCBoYXZlIG5vIG11dGF0aW9uIHJlY29yZHMgZXhwZWN0ZWQgMCBidXQgZ290
IDEKLUZBSUwgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBhIHBzZXVkbyBlbGVtZW50
IGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAgIGFuaW1hdGlvbi5jb21t
aXRTdHlsZXMoKTsKLSAgfSIgZGlkIG5vdCB0aHJvdworUEFTUyBUaHJvd3MgaWYgdGhlIHRhcmdl
dCBlbGVtZW50IGlzIGEgcHNldWRvIGVsZW1lbnQgCiBQQVNTIFRocm93cyBpZiB0aGUgdGFyZ2V0
IGVsZW1lbnQgaXMgbm90IHNvbWV0aGluZyB3aXRoIGEgc3R5bGUgYXR0cmlidXRlIAogUEFTUyBU
aHJvd3MgaWYgdGhlIHRhcmdldCBlZmZlY3QgaXMgZGlzcGxheTpub25lIAogUEFTUyBUaHJvd3Mg
aWYgdGhlIHRhcmdldCBlZmZlY3QncyBhbmNlc3RvciBpcyBkaXNwbGF5Om5vbmUgCiBQQVNTIFRy
ZWF0cyBkaXNwbGF5OmNvbnRlbnRzIGFzIHJlbmRlcmVkIAogUEFTUyBUcmVhdHMgZGlzcGxheTpj
b250ZW50cyBpbiBhIGRpc3BsYXk6bm9uZSBzdWJ0cmVlIGFzIG5vdCByZW5kZXJlZCAKIFBBU1Mg
VGhyb3dzIGlmIHRoZSB0YXJnZXQgZWZmZWN0IGlzIGRpc2Nvbm5lY3RlZCAKLUZBSUwgQ2hlY2tz
IHRoZSBwc2V1ZG8gZWxlbWVudCBjb25kaXRpb24gYmVmb3JlIHRoZSBub3QgcmVuZGVyZWQgY29u
ZGl0aW9uIGFzc2VydF90aHJvd3NfZG9tOiBmdW5jdGlvbiAiKCkgPT4gewotICAgIGFuaW1hdGlv
bi5jb21taXRTdHlsZXMoKTsKLSAgfSIgdGhyZXcgb2JqZWN0ICJJbnZhbGlkU3RhdGVFcnJvcjog
VGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiIgdGhhdCBpcyBub3QgYSBET01FeGNl
cHRpb24gTm9Nb2RpZmljYXRpb25BbGxvd2VkRXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVh
bCB0byAxMSwgZXhwZWN0ZWQgNworUEFTUyBDaGVja3MgdGhlIHBzZXVkbyBlbGVtZW50IGNvbmRp
dGlvbiBiZWZvcmUgdGhlIG5vdCByZW5kZXJlZCBjb25kaXRpb24gCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMv
aW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1h
dGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZlbnRzLWV4cGVj
dGVkLnR4dAppbmRleCBkMzA5YTQ3ODI3OTIyZTQ0NGZkNThkOTliYzg3Y2NmMzYwNWRlMzAxLi44
YTYwYzEzOWI5NGRlNjY1M2Q0YWY3ZDVkYzM4ZTA1ZDQ1MTljNTA2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lu
dGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5p
bWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3N0eWxlLWNoYW5nZS1ldmVudHMtZXhw
ZWN0ZWQudHh0CkBAIC0xLDkgKzEsMTAgQEAKIAotRkFJTCBBbGwgcHJvcGVydHkga2V5cyBhcmUg
cmVjb2duaXplZCBhc3NlcnRfaW5fYXJyYXk6IFRlc3QgcHJvcGVydHkgJ3BzZXVkb0VsZW1lbnQn
IHNob3VsZCBiZSBvbmUgb2YgdGhlIHByb3BlcnRpZXMgb24gIEtleWZyYW1lRWZmZWN0IHZhbHVl
ICJwc2V1ZG9FbGVtZW50IiBub3QgaW4gYXJyYXkgWyJnZXRUaW1pbmciLCAiZ2V0Q29tcHV0ZWRU
aW1pbmciLCAidXBkYXRlVGltaW5nIiwgInRhcmdldCIsICJpdGVyYXRpb25Db21wb3NpdGUiLCAi
Y29tcG9zaXRlIiwgImdldEtleWZyYW1lcyIsICJzZXRLZXlmcmFtZXMiLCAiS2V5ZnJhbWVFZmZl
Y3QgY29uc3RydWN0b3IiLCAiS2V5ZnJhbWVFZmZlY3QgY29weSBjb25zdHJ1Y3RvciJdCitQQVNT
IEFsbCBwcm9wZXJ0eSBrZXlzIGFyZSByZWNvZ25pemVkIAogUEFTUyBLZXlmcmFtZUVmZmVjdC5n
ZXRUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5
ZnJhbWVFZmZlY3QuZ2V0Q29tcHV0ZWRUaW1pbmcgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNo
YW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QudXBkYXRlVGltaW5nIGRvZXMgTk9UIHRy
aWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0LnRhcmdldCBk
b2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAorUEFTUyBLZXlmcmFtZUVmZmVj
dC5wc2V1ZG9FbGVtZW50IGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQ
QVNTIEtleWZyYW1lRWZmZWN0Lml0ZXJhdGlvbkNvbXBvc2l0ZSBkb2VzIE5PVCB0cmlnZ2VyIGEg
c3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC5jb21wb3NpdGUgZG9lcyBO
T1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuZ2V0
S2V5ZnJhbWVzIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMv
aW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CmluZGV4IDAzZjVm
YmQyYzJlZWNjODRiOTc2MmEwMjRjNTJlMGI5ZjU5ZDMwMmUuLmM1MTI4MDJjNTU0MTRiNzdmYzQ1
ZTM5YzgyZmU5YWFjNzYyNDNkMmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVm
ZmVjdC90YXJnZXQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVj
dC90YXJnZXQtZXhwZWN0ZWQudHh0CkBAIC00LDE4ICs0LDE4IEBAIFBBU1MgVGVzdCBzZXR0aW5n
IHRhcmdldCBmcm9tIG51bGwgdG8gYSB2YWxpZCB0YXJnZXQKIFBBU1MgVGVzdCBzZXR0aW5nIHRh
cmdldCBmcm9tIGEgdmFsaWQgdGFyZ2V0IHRvIG51bGwgCiBQQVNTIFRlc3Qgc2V0dGluZyB0YXJn
ZXQgZnJvbSBhIHZhbGlkIHRhcmdldCB0byBhbm90aGVyIHRhcmdldCAKIFBBU1MgVGFyZ2V0IGVs
ZW1lbnQgY2FuIGJlIHNldCB0byBhIGZvcmVpZ24gZWxlbWVudCAKLUZBSUwgQ2hhbmdlIHRhcmdl
dCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHRhcmdldCBm
aXJzdC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgYXQgNTAlIHByb2dyZXNzIGFmdGVyIHNldHRpbmcg
bmV3IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMTBweCIKLUZBSUwgQ2hhbmdlIHRh
cmdldCBmcm9tIG51bGwgdG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHBzZXVk
b0VsZW1lbnQgZmlyc3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRl
ciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCitQQVNT
IENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0
dGluZyB0YXJnZXQgZmlyc3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhbiBl
eGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4gCiBQQVNT
IENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCB0byB0aGUgb3Jp
Z2luYXRpbmcgZWxlbWVudC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0
byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4g
YXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50
IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAo
dW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5n
IHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRv
RWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1cnJlbnRseSB0
YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgi
IGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0
byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4g
YXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBzZXVkby1lbGVtZW50
IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9yZSIgYnV0IGdvdCAo
dW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0
aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNl
dWRvRWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1lbnQgKGN1cnJlbnRs
eSB0YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQgZXhwZWN0ZWQgIjUw
cHgiIGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGEgbm9u
LWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0YXJnZXQgZmlyc3QuIGFzc2VydF9lcXVh
bHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRlciBzZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0
ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBudWxsIHRv
IGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyBwc2V1ZG9FbGVtZW50IGZpcnN0
LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUgcHJvZ3Jlc3MgYWZ0ZXIgc2V0dGluZyBuZXcg
dGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIxMHB4IgorUEFTUyBDaGFuZ2UgdGFyZ2V0
IGZyb20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQg
Ynkgc2V0dGluZyB0YXJnZXQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3Rpbmcg
dG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9F
bGVtZW50LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlm
ZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1Mg
Q2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5n
IHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgcHNldWRvRWxlbWVudC4gCitQQVNTIENoYW5nZSB0
YXJnZXQgZnJvbSBudWxsIHRvIGEgbm9uLWV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0
YXJnZXQgZmlyc3QuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhIG5vbi1leGlz
dGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVudCBmaXJzdC4gCiBQQVNTIENo
YW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCB0byB0aGUgb3Jp
Z2luYXRpbmcgZWxlbWVudC4gCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlzdGluZyB0
byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0YXJn
ZXQuIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8tZWxl
bWVudCAocHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1dCBn
b3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBleGlz
dGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGlu
ZyBwc2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBvZiAybmQgZWxlbWVudCAoY3Vy
cmVudGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZmZWN0IHRhcmdldCBleHBlY3Rl
ZCAiNTBweCIgYnV0IGdvdCAiMjBweCIKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4
aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0
aW5nIHRhcmdldC4gYXNzZXJ0X2VxdWFsczogQW5pbWF0aW9uIHRhcmdldHMgc3BlY2lmaWVkIHBz
ZXVkby1lbGVtZW50IChwc2V1ZG8tc2VsZWN0b3IpIGV4cGVjdGVkIChzdHJpbmcpICI6OmJlZm9y
ZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKLUZBSUwgQ2hhbmdlIHRhcmdldCBmcm9t
IGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVu
dCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6IFZhbHVlIG9mIDJuZCBl
bGVtZW50IChjdXJyZW50bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5nIHRoZSBlZmZlY3QgdGFy
Z2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIyMHB4IgorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZy
b20gYW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50
IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4aXN0aW5n
IHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBz
ZXVkb0VsZW1lbnQuIAorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgdG8g
YSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0
LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0aW5nIHRvIGEgZGlmZmVyZW50
IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAog
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396535</attachid>
            <date>2020-04-15 08:04:38 -0700</date>
            <delta_ts>2020-04-15 09:30:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207290-20200415170436.patch</filename>
            <type>text/plain</type>
            <size>46235</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMDg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdkYjVlYzdlN2RiYTEw
MGExNjgwYmE5ZGUwOWYzNGQ2YjNhOTFmNS4uZGVmODQ2NmI0ZWE2NjllNWVjNzVlODkzMzk3MGI3
ZWRmYjk3Y2M1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY1IEBACisyMDIwLTA0LTE1ICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0BhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYiBBbmltYXRpb25z
XSBBZGQgc3VwcG9ydCBmb3IgYHBzZXVkb0VsZW1lbnRgIG9uIGBLZXlmcmFtZUVmZmVjdGAgYW5k
IGBLZXlmcmFtZUVmZmVjdE9wdGlvbnNgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDcyOTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5MTk5MDAz
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFk
ZCB0aGUgcmVxdWlyZWQgSURMIGJpbmRpbmdzIHN1Y2ggdGhhdCBKUy1vcmlnaW5hdGVkIFdlYiBB
bmltYXRpb25zIGNhbiB0YXJnZXQgcHNldWRvLWVsZW1lbnRzLCBlaXRoZXIgdmlhIHRoZSBLZXlm
cmFtZUVmZmVjdC5wc2V1ZG9FbGVtZW50CisgICAgICAgIHByb3BlcnR5LCBvciB2aWEgdGhlIEtl
eWZyYW1lRWZmZWN0T3B0aW9ucy5wc2V1ZG9FbGVtZW50IHByb3BlcnR5LCB3aGljaCBpcyBzZXQg
b24gdGhlIG9iamVjdCBwYXNzZWQgdG8gdGhlIEtleWZyYW1lRWZmZWN0IGNvbnN0cmN1dG9yIGFu
ZAorICAgICAgICBFbGVtZW50LmFuaW1hdGUoKS4KKworICAgICAgICBUaGlzIG1lYW5zIHRoYXQg
YSBQc2V1ZG9FbGVtZW50IGNhbiBiZSB0YXJnZXRlZCBieSBhbiBhbmltYXRpb24gZXZlbiBpZiBp
dCdzIG5vdCBiZWVuIGNyZWF0ZWQgdGhyb3VnaCBzdHlsZSByZXNvbHV0aW9uIGJ5IHZpcnR1ZSBv
ZiBhIDo6YmVmb3JlCisgICAgICAgIG9yIDo6YWZ0ZXIgc2VsZWN0b3IgYW5kIGEgImNvbnRlbnQi
IHN0eWxlIHJ1bGUuIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGVpdGhlciB0aGUgInRhcmdldCIgb3Ig
InBzZXVkb0VsZW1lbnQiIHByb3BlcnR5IG9mIEtleWZyYW1lRWZmZWN0IGlzIHNldCwKKyAgICAg
ICAgd2UgZW5zdXJlIGEgUHNldWRvRWxlbWVudCBpcyBjcmVhdGVkIGFuZCBzZXQgb24gdGhlIGhv
c3QgZWxlbWVudCBpZiByZXF1aXJlZC4gQW5kIGFkZGl0aW9uYWxseSwgd2UgZW5zdXJlIHRoYXQg
ZHVyaW5nIHN0eWxlIHJlc29sdXRpb24sIGFuaW1hdGlvbnMKKyAgICAgICAgYXJlIGFwcGxpZWQg
dG8gc3VjaCBwc2V1ZG8tZWxlbWVudHMgd2l0aCBhIG5ldyBQc2V1ZG9FbGVtZW50Ojppc1Rhcmdl
dGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSBtZXRob2QgdGhhdCBp
bmRpY2F0ZXMgdGhhdCBhCisgICAgICAgIEpTLW9yaWdpbmF0ZWQgS2V5ZnJhbWVFZmZlY3QgdGFy
Z2V0cyB0aGlzIHBzZXVkby1lbGVtZW50LgorCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZmZWN0OjpjcmVhdGUpOiBI
YW5kbGUgdGhlIG5ldyBLZXlmcmFtZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCBwcm9wZXJ0
eSBpbiB0aGUgS2V5ZnJhbWVFZmZlY3QgY29uc3RydWN0b3IuCisgICAgICAgIChXZWJDb3JlOjpL
ZXlmcmFtZUVmZmVjdDo6dGFyZ2V0c1BzZXVkb0VsZW1lbnQgY29uc3QpOiBJbmRpY2F0ZXMgd2hl
dGhlciB0aGlzIGVmZmVjdCB0YXJnZXRzIGEgcHNldWRvLWVsZW1lbnQgYW5kIG5vdCBhIHJlZ3Vs
YXIKKyAgICAgICAgZWxlbWVudCBvciBhIG51bGwgdGFyZ2V0LgorICAgICAgICAoV2ViQ29yZTo6
S2V5ZnJhbWVFZmZlY3Q6OnRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQgY29uc3QpOiBVc2Ug
dGhlIG5ldyB0YXJnZXRzUHNldWRvRWxlbWVudCgpIG1ldGhvZCB0byBkZXRlcm1pbmUgd2hldGhl
ciBhCisgICAgICAgIHBzZXVkby1lbGVtZW50IGlzIHRhcmdldGVkLiBXZSBhbHNvIHJlbW92ZSBh
biBhc3NlcnRpb24gdGhhdCBvbmx5IG1hZGUgc2Vuc2Ugd2hlbiBtX3BzZXVkb0lkIGNvdWxkIG9u
bHkgYmUgc2V0IHZpYSBhIENTUy1vcmlnaW5hdGVkCisgICAgICAgIGFuaW1hdGlvbiBhbmQgYW5v
dGhlciBvbmUgd2hlbiB0aGUgb25seSBwb3NzaWJsZSBtX3BzZXVkb0lkIHZhbHVlcyB3ZXJlIFBz
ZXVkb0lkOjpCZWZvcmUgYW5kIFBzZXVkb0lkOjpBZnRlci4KKyAgICAgICAgKFdlYkNvcmU6Oktl
eWZyYW1lRWZmZWN0OjpzZXRUYXJnZXQpOiBDYWxsIHRoZSBuZXcgZGlkQ2hhbmdlVGFyZ2V0RWxl
bWVudE9yUHNldWRvRWxlbWVudCgpIG1ldGhvZCBpZiB0aGUgcHJvdmlkZWQgdmFsdWUgZGlmZmVy
cworICAgICAgICBmcm9tIHRoZSBzdG9yZWQgdmFsdWUgZm9yIG1fdGFyZ2V0LgorICAgICAgICAo
V2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnBzZXVkb0VsZW1lbnQgY29uc3QpOiBSZXR1cm4gdGhl
IG1hdGNoaW5nIG5vcm1hbGl6ZWQgc3RyaW5nIHdpdGggYSBgOjpgIHByZWZpeCBmb3IgbV9wc2V1
ZG9JZCBpZiB0aGUgdGFyZ2V0CisgICAgICAgIGlzIGEgcHNldWRvLWVsZW1lbnQuIE5vdGUgdGhh
dCBQc2V1ZG9FbGVtZW50Ojpwc2V1ZG9FbGVtZW50TmFtZUZvckV2ZW50cygpIHdpbGwgb25seSBy
ZXR1cm4gYSBzdHJpbmcgZm9yICI6OmJlZm9yZSIgYW5kICI6OmFmdGVyIiBzaW5jZQorICAgICAg
ICB3ZSBvbmx5IGtub3cgaG93IHRvIGFuaW1hdGUgdGhlc2UgcHNldWRvLWVsZW1lbnRzLgorICAg
ICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3Q6OnNldFBzZXVkb0VsZW1lbnQpOiBEZXRlcm1p
bmUgYSBtYXRjaGluZyBQc2V1ZG9JZCwgaWYgYW55LCBmb3IgdGhlIHByb3ZpZGVkIHN0cmluZywg
YW5kIGNhbGwgdGhlIG5ldworICAgICAgICBkaWRDaGFuZ2VUYXJnZXRFbGVtZW50T3JQc2V1ZG9F
bGVtZW50KCkgbWV0aG9kIGlmIHRoZSBwcm92aWRlZCB2YWx1ZSBkaWZmZXJzIGZyb20gdGhlIHN0
b3JlZCB2YWx1ZSBmb3IgbV9wc2V1ZG9JZC4KKyAgICAgICAgKFdlYkNvcmU6OktleWZyYW1lRWZm
ZWN0OjpkaWRDaGFuZ2VUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KTogTmV3IG1ldGhvZCBj
YWxsZWQgd2hlbiBlaXRoZXIgbV90YXJnZXQgb3IgbV9wc2V1ZG9JZCBpcyBjaGFuZ2VkCisgICAg
ICAgIHN1Y2ggdGhhdCB3ZSBjYW4gZW5zdXJlIHRoZSByZXF1aXJlZCBQc2V1ZG9FbGVtZW50IGlz
IGNyZWF0ZWQgaWYgdGhlIGFuaW1hdGlvbiB0YXJnZXRzIGEgcHNldWRvLWVsZW1lbnQuIFRoZW4g
d2UgcnVuIHRoZSBzYW1lIGxvZ2ljCisgICAgICAgIHRoYXQgd2UgdXNlZCB0byBpbiBLZXlmcmFt
ZUVmZmVjdDo6c2V0VGFyZ2V0KCkuCisgICAgICAgIChXZWJDb3JlOjpLZXlmcmFtZUVmZmVjdDo6
cmVxdWlyZXNQc2V1ZG9FbGVtZW50IGNvbnN0KTogSW5kaWNhdGVzIHdoZXRoZXIgYSBQc2V1ZG9F
bGVtZW50IG11c3QgcmVtYWluIGNyZWF0ZWQgZm9yIHRoaXMgS2V5ZnJhbWVFZmZlY3QsCisgICAg
ICAgIHdoaWNoIGlzIG9ubHkgbmVjZXNzYXJ5IGZvciBKUy1vcmlnaW5hdGVkIGVmZmVjdHMgdGFy
Z2V0aW5nIGEgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZm
ZWN0Lmg6CisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmlkbDoKKyAgICAgICAg
KiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmg6CisgICAgICAgICogYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGw6CisgICAgICAgICogYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0U3RhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5ZnJhbWVFZmZlY3RTdGFjazo6
cmVxdWlyZXNQc2V1ZG9FbGVtZW50IGNvbnN0KTogSW5kaWNhdGVzIHdoZXRoZXIgb25lIG9yIG1v
cmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQKKyAg
ICAgICAgdGhlIFBzZXVkb0VsZW1lbnQgb3duaW5nIHRoaXMgc3RhY2suCisgICAgICAgICogYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0U3RhY2suaDoKKyAgICAgICAgKiBhbmltYXRpb24vV2ViQW5p
bWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYkFuaW1hdGlvbjo6Y29tbWl0U3R5bGVz
KTogVXNlIEtleWZyYW1lRWZmZWN0Ojp0YXJnZXRzUHNldWRvRWxlbWVudCgpIHRvIGRldGVybWlu
ZSB3aGV0aGVyIHRoZSBhbmltYXRpb24ncyBlZmZlY3QncyB0YXJnZXQgaXMgYQorICAgICAgICBw
c2V1ZG8tZWxlbWVudCwgaW4gd2hpY2ggY2FzZSB3ZSBuZWVkIHRvIHRocm93IGEgTm9Nb2RpZmlj
YXRpb25BbGxvd2VkRXJyb3IgZXhjZXB0aW9uLgorICAgICAgICAqIGRvbS9Qc2V1ZG9FbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQp
OiBSZXR1cm4gdHJ1ZSBhbHNvIHdoZW4gb25lIG9yIG1vcmUgSlMtb3JpZ2luYXRlZCBrZXlmcmFt
ZSBlZmZlY3RzIGluIHRoZSBzdGFjayB0YXJnZXQgdGhpcyBwc2V1ZG8tZWxlbWVudC4KKyAgICAg
ICAgKFdlYkNvcmU6OlBzZXVkb0VsZW1lbnQ6OmlzVGFyZ2V0ZWRCeUtleWZyYW1lRWZmZWN0UmVx
dWlyaW5nUHNldWRvRWxlbWVudCk6IFJldHVybiB0cnVlIHdoZW4gb25lIG9yIG1vcmUgSlMtb3Jp
Z2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIGluIHRoZSBzdGFjaworICAgICAgICB0YXJnZXQgdGhp
cyBwc2V1ZG8tZWxlbWVudC4KKyAgICAgICAgKiBkb20vUHNldWRvRWxlbWVudC5oOgorICAgICAg
ICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ29udGVudFJlbmRlcmVycyk6IFJlbW92ZSB0
aGUgYXNzZXJ0aW9uIHRoYXQgdGhlICJjb250ZW50IiBwcm9wZXJ0eSB3YXMgc2V0IHNpbmNlIGl0
J3MgdmFsaWQgZm9yIHRoaXMgZnVuY3Rpb24gdG8gbm93IGJlIGNhbGxlZAorICAgICAgICBkdWUg
dG8gSlMtb3JpZ2luYXRlZCBrZXlmcmFtZSBlZmZlY3RzIHRhcmdldGluZyB0aGUgZ2l2ZW4gcHNl
dWRvLWVsZW1lbnQuIEluc3RlYWQgd2UgYWRkIGFuIGFzc2VydGlvbiB0aGF0IHRoZXJlIGFyZSBz
dWNoIGtleWZyYW1lIGVmZmVjdHMgaW4KKyAgICAgICAgY2FzZSBubyAiY29udGVudCIgcHJvcGVy
dHkgd2FzIHNldC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRyZWVVcGRhdGVyOjpHZW5lcmF0
ZWRDb250ZW50Ojp1cGRhdGVQc2V1ZG9FbGVtZW50KTogT25seSByZW1vdmUgcHNldWRvLWVsZW1l
bnRzIGlmIHRoZXJlIGFyZSBubyBKUy1vcmlnaW5hdGVkIGtleWZyYW1lIGVmZmVjdHMKKyAgICAg
ICAgdGFyZ2V0aW5nIHRoZSBzcGVjaWZpZWQgcHNldWRvLWVsZW1lbnQuCisgICAgICAgICogc3R5
bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGU6OlRyZWVS
ZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKTogQWxsb3cgYW5pbWF0ZWQgc3R5bGUgcmVzb2x1
dGlvbiBmb3IgcHNldWRvLWVsZW1lbnRzIHRhcmdldGVkIGJ5IEpTLW9yaWdpbmF0ZWQga2V5ZnJh
bWUgZWZmZWN0cy4KKwogMjAyMC0wNC0xNCAgQW50b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUu
Y29tPgogCiAgICAgICAgIEZhY3RvciBQc2V1ZG9FbGVtZW50IGNyZWF0aW9uIGNhbGxzIGludG8g
YSBzaW5nbGUgRWxlbWVudDo6ZW5zdXJlUHNldWRvRWxlbWVudChwc2V1ZG9JZCkgbWV0aG9kCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVh
dHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNmMjY4NWY1YmIw
ZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9G
ZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJMRV9XRUJHUFVf
TUFDT1NfU0lOQ0VfMTAxNCA9IEVOQUJMRV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJYUiA9IDsKIAor
RU5BQkxFX1dFQl9BTklNQVRJT05TID0gRU5BQkxFX1dFQl9BTklNQVRJT05TOworCiBFTkFCTEVf
V0VCX0FQSV9TVEFUSVNUSUNTID0gOwogCiBFTkFCTEVfV0VCX0FVRElPID0gRU5BQkxFX1dFQl9B
VURJTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVE
ZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNmMjY4NWY1YmIwZDBiMjFj
NTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcK
KysrIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25m
aWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBFTkFCTEVfV0VCR1BVX01BQ09TX1NJTkNFXzEwMTQgPSBF
TkFCTEVfV0VCR1BVOwogCiBFTkFCTEVfV0VCWFIgPSA7CiAKK0VOQUJMRV9XRUJfQU5JTUFUSU9O
UyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9OUzsKKwogRU5BQkxFX1dFQl9BUElfU1RBVElTVElDUyA9
IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9IEVOQUJMRV9XRUJfQVVESU87CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcg
Yi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25m
aWcKaW5kZXggYTc0YjRhNjY2ZjI1NDk5YTAzZTNmMjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBm
Mjg3ZmY3NTY3YTE5Y2NiY2RlNzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwpA
QCAtNDAxLDYgKzQwMSw4IEBAIEVOQUJMRV9XRUJHUFVfTUFDT1NfU0lOQ0VfMTAxNCA9IEVOQUJM
RV9XRUJHUFU7CiAKIEVOQUJMRV9XRUJYUiA9IDsKIAorRU5BQkxFX1dFQl9BTklNQVRJT05TID0g
RU5BQkxFX1dFQl9BTklNQVRJT05TOworCiBFTkFCTEVfV0VCX0FQSV9TVEFUSVNUSUNTID0gOwog
CiBFTkFCTEVfV0VCX0FVRElPID0gRU5BQkxFX1dFQl9BVURJTzsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCmluZGV4IGQxYmY5ZmE5ZDFmZDE0ZDRlZGQzNWM5
ZjkzOTBmNzBmMzM0OWU1ZWEuLjhjNDgwNzNmNTM4MzNmZDc0OWRlYmY3OTI1NGQ4NDU0MDRjZGM0
NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcApAQCAt
MzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkNTU0tleWZyYW1lUnVsZS5oIgogI2luY2x1ZGUgIkNT
U1Byb3BlcnR5QW5pbWF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTUHJvcGVydHlOYW1lcy5oIgorI2lu
Y2x1ZGUgIkNTU1NlbGVjdG9yLmgiCiAjaW5jbHVkZSAiQ1NTU3R5bGVEZWNsYXJhdGlvbi5oIgog
I2luY2x1ZGUgIkNTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaCIKICNpbmNsdWRlICJDU1NUcmFuc2l0
aW9uLmgiCkBAIC00ODYsNiArNDg3LDExIEBAIEV4Y2VwdGlvbk9yPFJlZjxLZXlmcmFtZUVmZmVj
dD4+IEtleWZyYW1lRWZmZWN0OjpjcmVhdGUoSlNHbG9iYWxPYmplY3QmIGxleGljYWxHCiAgICAg
ICAgICAgICB0aW1pbmcuZHVyYXRpb24gPSBkdXJhdGlvbjsKICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIGF1dG8ga2V5ZnJhbWVFZmZlY3RPcHRpb25zID0gV1RGOjpnZXQ8S2V5ZnJhbWVF
ZmZlY3RPcHRpb25zPihvcHRpb25zVmFsdWUpOworCisgICAgICAgICAgICBhdXRvIHNldFBzZXVk
b0VsZW1lbnRSZXN1bHQgPSBrZXlmcmFtZUVmZmVjdC0+c2V0UHNldWRvRWxlbWVudChrZXlmcmFt
ZUVmZmVjdE9wdGlvbnMucHNldWRvRWxlbWVudCk7CisgICAgICAgICAgICBpZiAoc2V0UHNldWRv
RWxlbWVudFJlc3VsdC5oYXNFeGNlcHRpb24oKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gc2V0
UHNldWRvRWxlbWVudFJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7CisKICAgICAgICAgICAgIHRp
bWluZyA9IHsKICAgICAgICAgICAgICAgICBrZXlmcmFtZUVmZmVjdE9wdGlvbnMuZHVyYXRpb24s
CiAgICAgICAgICAgICAgICAga2V5ZnJhbWVFZmZlY3RPcHRpb25zLml0ZXJhdGlvbnMsCkBAIC0x
MDcyLDEzICsxMDc4LDE2IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNldEFuaW1hdGlvbihXZWJB
bmltYXRpb24qIGFuaW1hdGlvbikKICAgICB1cGRhdGVFZmZlY3RTdGFja01lbWJlcnNoaXAoKTsK
IH0KIAorYm9vbCBLZXlmcmFtZUVmZmVjdDo6dGFyZ2V0c1BzZXVkb0VsZW1lbnQoKSBjb25zdAor
eworICAgIHJldHVybiBtX3RhcmdldC5nZXQoKSAmJiBtX3BzZXVkb0lkICE9IFBzZXVkb0lkOjpO
b25lOworfQorCiBFbGVtZW50KiBLZXlmcmFtZUVmZmVjdDo6dGFyZ2V0RWxlbWVudE9yUHNldWRv
RWxlbWVudCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fcHNldWRvSWQgPT0gUHNldWRvSWQ6Ok5vbmUp
CisgICAgaWYgKCF0YXJnZXRzUHNldWRvRWxlbWVudCgpKQogICAgICAgICByZXR1cm4gbV90YXJn
ZXQuZ2V0KCk7CiAKLSAgICBBU1NFUlQobV90YXJnZXQuZ2V0KCkpOwotCiAgICAgaWYgKG1fcHNl
dWRvSWQgPT0gUHNldWRvSWQ6OkJlZm9yZSkKICAgICAgICAgcmV0dXJuIG1fdGFyZ2V0LT5iZWZv
cmVQc2V1ZG9FbGVtZW50KCk7CiAKQEAgLTEwODYsMjQgKzEwOTUsNzYgQEAgRWxlbWVudCogS2V5
ZnJhbWVFZmZlY3Q6OnRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKSBjb25zdAogICAgICAg
ICByZXR1cm4gbV90YXJnZXQtPmFmdGVyUHNldWRvRWxlbWVudCgpOwogCiAgICAgLy8gV2Ugb25s
eSBzdXBwb3J0IHRhcmdldGluZyA6OmJlZm9yZSBhbmQgOjphZnRlciBwc2V1ZG8tZWxlbWVudHMg
YXQgdGhlIG1vbWVudC4KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gbnVs
bHB0cjsKIH0KIAogdm9pZCBLZXlmcmFtZUVmZmVjdDo6c2V0VGFyZ2V0KFJlZlB0cjxFbGVtZW50
PiYmIG5ld1RhcmdldCkKIHsKLSAgICBhdXRvKiBwcmV2aW91c1RhcmdldCA9IHRhcmdldEVsZW1l
bnRPclBzZXVkb0VsZW1lbnQoKTsKLSAgICBpZiAocHJldmlvdXNUYXJnZXQgPT0gbmV3VGFyZ2V0
LmdldCgpKQorICAgIGlmIChtX3RhcmdldC5nZXQoKSA9PSBuZXdUYXJnZXQuZ2V0KCkpCiAgICAg
ICAgIHJldHVybjsKIAorICAgIGF1dG8qIHByZXZpb3VzVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxl
bWVudCA9IHRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQoKTsKICAgICBtX3RhcmdldCA9IG1h
a2VXZWFrUHRyKG5ld1RhcmdldC5nZXQoKSk7CisgICAgZGlkQ2hhbmdlVGFyZ2V0RWxlbWVudE9y
UHNldWRvRWxlbWVudChwcmV2aW91c1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQpOworfQor
Citjb25zdCBTdHJpbmcgS2V5ZnJhbWVFZmZlY3Q6OnBzZXVkb0VsZW1lbnQoKSBjb25zdAorewor
ICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy93ZWItYW5pbWF0aW9ucy8jZG9tLWtleWZy
YW1lZWZmZWN0LXBzZXVkb2VsZW1lbnQKKworICAgIC8vIFRoZSB0YXJnZXQgcHNldWRvLXNlbGVj
dG9yLiBudWxsIGlmIHRoaXMgZWZmZWN0IGhhcyBubyBlZmZlY3QgdGFyZ2V0IG9yIGlmIHRoZSBl
ZmZlY3QgdGFyZ2V0IGlzIGFuIGVsZW1lbnQgKGkuZS4gbm90IGEgcHNldWRvLWVsZW1lbnQpLgor
ICAgIC8vIFdoZW4gdGhlIGVmZmVjdCB0YXJnZXQgaXMgYSBwc2V1ZG8tZWxlbWVudCwgdGhpcyBz
cGVjaWZpZXMgdGhlIHBzZXVkby1lbGVtZW50IHNlbGVjdG9yIChlLmcuIDo6YmVmb3JlKS4KKyAg
ICBpZiAodGFyZ2V0c1BzZXVkb0VsZW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIFBzZXVkb0VsZW1l
bnQ6OnBzZXVkb0VsZW1lbnROYW1lRm9yRXZlbnRzKG1fcHNldWRvSWQpOworICAgIHJldHVybiB7
IH07Cit9CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IEtleWZyYW1lRWZmZWN0OjpzZXRQc2V1ZG9FbGVt
ZW50KGNvbnN0IFN0cmluZyYgcHNldWRvRWxlbWVudCkKK3sKKyAgICAvLyBodHRwczovL2RyYWZ0
cy5jc3N3Zy5vcmcvd2ViLWFuaW1hdGlvbnMvI2RvbS1rZXlmcmFtZWVmZmVjdC1wc2V1ZG9lbGVt
ZW50CisKKyAgICAvLyBPbiBzZXR0aW5nLCBzZXRzIHRoZSB0YXJnZXQgcHNldWRvLXNlbGVjdG9y
IG9mIHRoZSBhbmltYXRpb24gZWZmZWN0IHRvIHRoZSBwcm92aWRlZCB2YWx1ZSBhZnRlciBhcHBs
eWluZyB0aGUgZm9sbG93aW5nIGV4Y2VwdGlvbnM6CisgICAgLy8KKyAgICAvLyAtIElmIHRoZSBw
cm92aWRlZCB2YWx1ZSBpcyBub3QgbnVsbCBhbmQgaXMgYW4gaW52YWxpZCA8cHNldWRvLWVsZW1l
bnQtc2VsZWN0b3I+LCB0aGUgdXNlciBhZ2VudCBtdXN0IHRocm93IGEgRE9NRXhjZXB0aW9uIHdp
dGggZXJyb3IKKyAgICAvLyBuYW1lIFN5bnRheEVycm9yIGFuZCBsZWF2ZSB0aGUgdGFyZ2V0IHBz
ZXVkby1zZWxlY3RvciBvZiB0aGlzIGFuaW1hdGlvbiBlZmZlY3QgdW5jaGFuZ2VkLiBOb3RlLCB0
aGF0IGludmFsaWQgaW4gdGhpcyBjb250ZXh0IGZvbGxvd3MKKyAgICAvLyB0aGUgZGVmaW5pdGlv
biBvZiBhbiBpbnZhbGlkIHNlbGVjdG9yIGRlZmluZWQgaW4gW1NFTEVDVE9SUy00XSBzdWNoIHRo
YXQgc3ludGFjdGljYWxseSBpbnZhbGlkIHBzZXVkby1lbGVtZW50cyBhcyB3ZWxsIGFzIHBzZXVk
by1lbGVtZW50cworICAgIC8vIGZvciB3aGljaCB0aGUgdXNlciBhZ2VudCBoYXMgbm8gdXNhYmxl
IGxldmVsIG9mIHN1cHBvcnQgYXJlIGJvdGggZGVlbWVkIGludmFsaWQuCisgICAgLy8gLSBJZiBv
bmUgb2YgdGhlIGxlZ2FjeSBTZWxlY3RvcnMgTGV2ZWwgMiBzaW5nbGUtY29sb24gc2VsZWN0b3Jz
ICgnOmJlZm9yZScsICc6YWZ0ZXInLCAnOmZpcnN0LWxldHRlcicsIG9yICc6Zmlyc3QtbGluZScp
IGlzIHNwZWNpZmllZCwKKyAgICAvLyB0aGUgdGFyZ2V0IHBzZXVkby1zZWxlY3RvciBtdXN0IGJl
IHNldCB0byB0aGUgZXF1aXZhbGVudCB0d28tY29sb24gc2VsZWN0b3IgKGUuZy4gJzo6YmVmb3Jl
JykuCisgICAgYXV0byBwc2V1ZG9JZCA9IFBzZXVkb0lkOjpOb25lOworICAgIGlmICghcHNldWRv
RWxlbWVudC5pc051bGwoKSkgeworICAgICAgICBhdXRvIGlzTGVnYWN5ID0gcHNldWRvRWxlbWVu
dCA9PSAiOmJlZm9yZSIgfHwgcHNldWRvRWxlbWVudCA9PSAiOmFmdGVyIiB8fCBwc2V1ZG9FbGVt
ZW50ID09ICI6Zmlyc3QtbGV0dGVyIiB8fCBwc2V1ZG9FbGVtZW50ID09ICI6Zmlyc3QtbGluZSI7
CisgICAgICAgIGlmICghaXNMZWdhY3kgJiYgIXBzZXVkb0VsZW1lbnQuc3RhcnRzV2l0aCgiOjoi
KSkKKyAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBTeW50YXhFcnJvciB9OworICAgICAg
ICBhdXRvIHBzZXVkb1R5cGUgPSBDU1NTZWxlY3Rvcjo6cGFyc2VQc2V1ZG9FbGVtZW50VHlwZShw
c2V1ZG9FbGVtZW50LnN1YnN0cmluZyhpc0xlZ2FjeSA/IDEgOiAyKSk7CisgICAgICAgIGlmIChw
c2V1ZG9UeXBlID09IENTU1NlbGVjdG9yOjpQc2V1ZG9FbGVtZW50VW5rbm93bikKKyAgICAgICAg
ICAgIHJldHVybiBFeGNlcHRpb24geyBTeW50YXhFcnJvciB9OworICAgICAgICBwc2V1ZG9JZCA9
IENTU1NlbGVjdG9yOjpwc2V1ZG9JZChwc2V1ZG9UeXBlKTsKKyAgICB9CisKKyAgICBpZiAocHNl
dWRvSWQgPT0gbV9wc2V1ZG9JZCkKKyAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIC8vIFVudGls
IHdlIHN1cHBvcnQgcHNldWRvLWVsZW1lbnRzIHZpYSB0aGUgV2ViIEFuaW1hdGlvbnMgQVBJLCBj
aGFuZ2luZyB0YXJnZXQgbWVhbnMgd2Ugc2hvdWxkIHJlc2V0IG1fcHNldWRvSWQuCi0gICAgLy8g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzI5MAotICAgIG1fcHNl
dWRvSWQgPSBQc2V1ZG9JZDo6Tm9uZTsKKyAgICBhdXRvKiBwcmV2aW91c1RhcmdldEVsZW1lbnRP
clBzZXVkb0VsZW1lbnQgPSB0YXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KCk7CisgICAgbV9w
c2V1ZG9JZCA9IHBzZXVkb0lkOworICAgIGRpZENoYW5nZVRhcmdldEVsZW1lbnRPclBzZXVkb0Vs
ZW1lbnQocHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KTsKKworICAgIHJldHVy
biB7IH07Cit9CisKK3ZvaWQgS2V5ZnJhbWVFZmZlY3Q6OmRpZENoYW5nZVRhcmdldEVsZW1lbnRP
clBzZXVkb0VsZW1lbnQoRWxlbWVudCogcHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVt
ZW50KQoreworICAgIGF1dG8qIG5ld1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQgPSB0YXJn
ZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KCk7CisKKyAgICAvLyBXZSBtdXN0IGVuc3VyZSBhIFBz
ZXVkb0VsZW1lbnQgZXhpc3RzIGZvciB0aGlzIG1fdGFyZ2V0IC8gbV9wc2V1ZG9JZCBwYWlyIGlm
IGJvdGggYXJlIHNwZWNpZmllZC4KKyAgICBpZiAoIW5ld1RhcmdldEVsZW1lbnRPclBzZXVkb0Vs
ZW1lbnQgJiYgbV90YXJnZXQuZ2V0KCkgJiYgbV9wc2V1ZG9JZCAhPSBQc2V1ZG9JZDo6Tm9uZSkg
eworICAgICAgICAvLyBXZSBvbmx5IHN1cHBvcnQgdGFyZ2V0aW5nIDo6YmVmb3JlIGFuZCA6OmFm
dGVyIHBzZXVkby1lbGVtZW50cyBhdCB0aGUgbW9tZW50LgorICAgICAgICBpZiAobV9wc2V1ZG9J
ZCA9PSBQc2V1ZG9JZDo6QmVmb3JlIHx8IG1fcHNldWRvSWQgPT0gUHNldWRvSWQ6OkFmdGVyKQor
ICAgICAgICAgICAgbmV3VGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudCA9ICZtX3RhcmdldC0+
ZW5zdXJlUHNldWRvRWxlbWVudChtX3BzZXVkb0lkKTsKKyAgICB9CiAKICAgICBpZiAoYXV0byog
ZWZmZWN0QW5pbWF0aW9uID0gYW5pbWF0aW9uKCkpCi0gICAgICAgIGVmZmVjdEFuaW1hdGlvbi0+
ZWZmZWN0VGFyZ2V0RGlkQ2hhbmdlKHByZXZpb3VzVGFyZ2V0LCB0YXJnZXRFbGVtZW50T3JQc2V1
ZG9FbGVtZW50KCkpOworICAgICAgICBlZmZlY3RBbmltYXRpb24tPmVmZmVjdFRhcmdldERpZENo
YW5nZShwcmV2aW91c1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQsIG5ld1RhcmdldEVsZW1l
bnRPclBzZXVkb0VsZW1lbnQpOwogCiAgICAgY2xlYXJCbGVuZGluZ0tleWZyYW1lcygpOwogCkBA
IC0xMTEzLDE0ICsxMTc0LDE0IEBAIHZvaWQgS2V5ZnJhbWVFZmZlY3Q6OnNldFRhcmdldChSZWZQ
dHI8RWxlbWVudD4mJiBuZXdUYXJnZXQpCiAKICAgICAvLyBMaWtld2lzZSwgd2UgbmVlZCB0byBp
bnZhbGlkYXRlIHN0eWxlcyBvbiB0aGUgcHJldmlvdXMgdGFyZ2V0IHNvIHRoYXQKICAgICAvLyBh
bnkgYW5pbWF0ZWQgc3R5bGVzIGFyZSByZW1vdmVkIGltbWVkaWF0ZWx5LgotICAgIGludmFsaWRh
dGVFbGVtZW50KHByZXZpb3VzVGFyZ2V0KTsKKyAgICBpbnZhbGlkYXRlRWxlbWVudChwcmV2aW91
c1RhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1lbnQpOwogCi0gICAgaWYgKHByZXZpb3VzVGFyZ2V0
KSB7Ci0gICAgICAgIHByZXZpb3VzVGFyZ2V0LT5lbnN1cmVLZXlmcmFtZUVmZmVjdFN0YWNrKCku
cmVtb3ZlRWZmZWN0KCp0aGlzKTsKKyAgICBpZiAocHJldmlvdXNUYXJnZXRFbGVtZW50T3JQc2V1
ZG9FbGVtZW50KSB7CisgICAgICAgIHByZXZpb3VzVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVu
dC0+ZW5zdXJlS2V5ZnJhbWVFZmZlY3RTdGFjaygpLnJlbW92ZUVmZmVjdCgqdGhpcyk7CiAgICAg
ICAgIG1faW5UYXJnZXRFZmZlY3RTdGFjayA9IGZhbHNlOwogICAgIH0KLSAgICBpZiAodGFyZ2V0
RWxlbWVudE9yUHNldWRvRWxlbWVudCgpKQotICAgICAgICBtX2luVGFyZ2V0RWZmZWN0U3RhY2sg
PSB0YXJnZXRFbGVtZW50T3JQc2V1ZG9FbGVtZW50KCktPmVuc3VyZUtleWZyYW1lRWZmZWN0U3Rh
Y2soKS5hZGRFZmZlY3QoKnRoaXMpOworICAgIGlmIChuZXdUYXJnZXRFbGVtZW50T3JQc2V1ZG9F
bGVtZW50KQorICAgICAgICBtX2luVGFyZ2V0RWZmZWN0U3RhY2sgPSBuZXdUYXJnZXRFbGVtZW50
T3JQc2V1ZG9FbGVtZW50LT5lbnN1cmVLZXlmcmFtZUVmZmVjdFN0YWNrKCkuYWRkRWZmZWN0KCp0
aGlzKTsKIH0KIAogdm9pZCBLZXlmcmFtZUVmZmVjdDo6YXBwbHkoUmVuZGVyU3R5bGUmIHRhcmdl
dFN0eWxlKQpAQCAtMTY5OCw0ICsxNzU5LDkgQEAgYm9vbCBLZXlmcmFtZUVmZmVjdDo6Y29tcHV0
ZVRyYW5zZm9ybWVkRXh0ZW50VmlhTWF0cml4KGNvbnN0IEZsb2F0UmVjdCYgcmVuZGVyZXIKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBLZXlmcmFtZUVmZmVjdDo6cmVxdWlyZXNQc2V1ZG9F
bGVtZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9ibGVuZGluZ0tleWZyYW1lc1NvdXJjZSA9
PSBCbGVuZGluZ0tleWZyYW1lc1NvdXJjZTo6V2ViQW5pbWF0aW9uICYmIHRhcmdldHNQc2V1ZG9F
bGVtZW50KCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5oIGIvU291cmNlL1dlYkNvcmUvYW5p
bWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKaW5kZXggOTZiMjk3YWUwMjc4MzkyZTM4NmRiMmIwOTUy
MTllNGMwMTdiYmNkNC4uZGFlMjI2YTdhZjU0YmYyNWQ5Mjg3MDY1YTM5MTQ3OWJiZWFmOGVmNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmgKQEAgLTEwNSw2ICsx
MDUsMTAgQEAgcHVibGljOgogICAgIEVsZW1lbnQqIHRhcmdldEVsZW1lbnRPclBzZXVkb0VsZW1l
bnQoKSBjb25zdDsKICAgICB2b2lkIHNldFRhcmdldChSZWZQdHI8RWxlbWVudD4mJik7CiAKKyAg
ICBib29sIHRhcmdldHNQc2V1ZG9FbGVtZW50KCkgY29uc3Q7CisgICAgY29uc3QgU3RyaW5nIHBz
ZXVkb0VsZW1lbnQoKSBjb25zdDsKKyAgICBFeGNlcHRpb25Pcjx2b2lkPiBzZXRQc2V1ZG9FbGVt
ZW50KGNvbnN0IFN0cmluZyYpOworCiAgICAgVmVjdG9yPEpTQzo6U3Ryb25nPEpTQzo6SlNPYmpl
Y3Q+PiBnZXRLZXlmcmFtZXMoSlNDOjpKU0dsb2JhbE9iamVjdCYpOwogICAgIEV4Y2VwdGlvbk9y
PHZvaWQ+IHNldEtleWZyYW1lcyhKU0M6OkpTR2xvYmFsT2JqZWN0JiwgSlNDOjpTdHJvbmc8SlND
OjpKU09iamVjdD4mJik7CiAKQEAgLTE1OCw2ICsxNjIsOCBAQCBwdWJsaWM6CiAKICAgICBjb25z
dCBSZW5kZXJTdHlsZSogdW5hbmltYXRlZFN0eWxlKCkgY29uc3QgeyByZXR1cm4gbV91bmFuaW1h
dGVkU3R5bGUuZ2V0KCk7IH0KIAorICAgIGJvb2wgcmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkgY29u
c3Q7CisKIHByaXZhdGU6CiAgICAgS2V5ZnJhbWVFZmZlY3QoRWxlbWVudCosIFBzZXVkb0lkKTsK
IApAQCAtMTY4LDYgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgRG9jdW1lbnQqIGRvY3VtZW50KCkg
Y29uc3Q7CiAgICAgdm9pZCB1cGRhdGVFZmZlY3RTdGFja01lbWJlcnNoaXAoKTsKICAgICB2b2lk
IGNvcHlQcm9wZXJ0aWVzRnJvbVNvdXJjZShSZWY8S2V5ZnJhbWVFZmZlY3Q+JiYpOworICAgIHZv
aWQgZGlkQ2hhbmdlVGFyZ2V0RWxlbWVudE9yUHNldWRvRWxlbWVudChFbGVtZW50Kik7CiAgICAg
RXhjZXB0aW9uT3I8dm9pZD4gcHJvY2Vzc0tleWZyYW1lcyhKU0M6OkpTR2xvYmFsT2JqZWN0Jiwg
SlNDOjpTdHJvbmc8SlNDOjpKU09iamVjdD4mJik7CiAgICAgdm9pZCBhZGRQZW5kaW5nQWNjZWxl
cmF0ZWRBY3Rpb24oQWNjZWxlcmF0ZWRBY3Rpb24pOwogICAgIHZvaWQgdXBkYXRlQWNjZWxlcmF0
ZWRBY3Rpb25zKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJh
bWVFZmZlY3QuaWRsIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0Lmlk
bAppbmRleCBkMmQwN2FjYzQzNjRlYWI4YmYxZTBhYjZlMWQwMzJiOGFlNjlmNzAwLi5kMzQ0YmEy
MDYxZTQyYmEyYjFhOGRiZDQ1ZDZiMjkzNWRiYmM3ZTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Fu
aW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5pZGwKQEAgLTIzLDYgKzIzLDggQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAordHlwZWRlZiBVU1ZTdHJpbmcgQ1NTT01TdHJpbmc7CisKIFsKICAgICBFbmFi
bGVkQXRSdW50aW1lPVdlYkFuaW1hdGlvbnMsCiAgICAgRXhwb3NlZD1XaW5kb3csCkBAIC0zMyw2
ICszNSw3IEBACiAgICAgQ29uc3RydWN0b3IoS2V5ZnJhbWVFZmZlY3Qgc291cmNlKQogXSBpbnRl
cmZhY2UgS2V5ZnJhbWVFZmZlY3QgOiBBbmltYXRpb25FZmZlY3QgewogICAgIGF0dHJpYnV0ZSBF
bGVtZW50PyB0YXJnZXQ7CisgICAgW01heVRocm93RXhjZXB0aW9uXSBhdHRyaWJ1dGUgQ1NTT01T
dHJpbmc/IHBzZXVkb0VsZW1lbnQ7CiAgICAgW0VuYWJsZWRBdFJ1bnRpbWU9V2ViQW5pbWF0aW9u
c0NvbXBvc2l0ZU9wZXJhdGlvbnNdIGF0dHJpYnV0ZSBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRp
b24gaXRlcmF0aW9uQ29tcG9zaXRlOwogICAgIFtFbmFibGVkQXRSdW50aW1lPVdlYkFuaW1hdGlv
bnNDb21wb3NpdGVPcGVyYXRpb25zXSBhdHRyaWJ1dGUgQ29tcG9zaXRlT3BlcmF0aW9uIGNvbXBv
c2l0ZTsKICAgICBbQ2FsbFdpdGg9R2xvYmFsT2JqZWN0XSBzZXF1ZW5jZTxvYmplY3Q+IGdldEtl
eWZyYW1lcygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0T3B0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0
T3B0aW9ucy5oCmluZGV4IGFiYTdkMmYzN2MwMzg1ZGZmMDIxZDc1ZDBiOGNlYjdmYmIxZjgxNTEu
LjNlZGNiODQ1MDMxM2E4ZjAyM2FlNjRkODFjYjgwMGY2NmFmNDViNTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdE9wdGlvbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmgKQEAgLTM1LDYgKzM1
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogc3RydWN0IEtleWZyYW1lRWZmZWN0T3B0aW9ucyA6
IEVmZmVjdFRpbWluZyB7CiAgICAgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlv
bkNvbXBvc2l0ZSB7IEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbjo6UmVwbGFjZSB9OwogICAg
IENvbXBvc2l0ZU9wZXJhdGlvbiBjb21wb3NpdGUgeyBDb21wb3NpdGVPcGVyYXRpb246OlJlcGxh
Y2UgfTsKKyAgICBTdHJpbmcgcHNldWRvRWxlbWVudDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVj
dE9wdGlvbnMuaWRsIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0
aW9ucy5pZGwKaW5kZXggMWZkODlkMjgxNWVlYjk2MDYwMTRmNWY2MTEzMTVkYmYwMWM2OWY4MC4u
NjFlYmZmMTZjODU2YWI2ODQzOTRlYjM5NzlmMGExZTBlODA5YmIyNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGwKKysrIGIvU291
cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0T3B0aW9ucy5pZGwKQEAgLTIzLDcg
KzIzLDEwIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKK3R5cGVkZWYgVVNWU3RyaW5nIENTU09N
U3RyaW5nOworCiBkaWN0aW9uYXJ5IEtleWZyYW1lRWZmZWN0T3B0aW9ucyA6IEVmZmVjdFRpbWlu
ZyB7CiAgICAgSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uIGl0ZXJhdGlvbkNvbXBvc2l0ZSA9
ICJyZXBsYWNlIjsKICAgICBDb21wb3NpdGVPcGVyYXRpb24gY29tcG9zaXRlID0gInJlcGxhY2Ui
OworICAgIENTU09NU3RyaW5nPyBwc2V1ZG9FbGVtZW50ID0gbnVsbDsKIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAKaW5kZXggZjRiM2Zh
YTIyZjkzZWM1MmM0N2U4YjM1MDQ4MGUwZjFkN2EzYzk0Ni4uYjE1OTU0NGI4MmY1YmQwZjA5ODY2
OTQwMjQ4ZjQwZjRiMTM5OGNmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9u
L0tleWZyYW1lRWZmZWN0U3RhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9L
ZXlmcmFtZUVmZmVjdFN0YWNrLmNwcApAQCAtNTksNiArNTksMTUgQEAgdm9pZCBLZXlmcmFtZUVm
ZmVjdFN0YWNrOjpyZW1vdmVFZmZlY3QoS2V5ZnJhbWVFZmZlY3QmIGVmZmVjdCkKICAgICBtX2Vm
ZmVjdHMucmVtb3ZlRmlyc3QoJmVmZmVjdCk7CiB9CiAKK2Jvb2wgS2V5ZnJhbWVFZmZlY3RTdGFj
azo6cmVxdWlyZXNQc2V1ZG9FbGVtZW50KCkgY29uc3QKK3sKKyAgICBmb3IgKGF1dG8mIGVmZmVj
dCA6IG1fZWZmZWN0cykgeworICAgICAgICBpZiAoZWZmZWN0LT5yZXF1aXJlc1BzZXVkb0VsZW1l
bnQoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7
Cit9CisKIGJvb2wgS2V5ZnJhbWVFZmZlY3RTdGFjazo6aXNDdXJyZW50bHlBZmZlY3RpbmdQcm9w
ZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5KSBjb25zdAogewogICAgIGZvciAoYXV0byYgZWZm
ZWN0IDogbV9lZmZlY3RzKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3RTdGFjay5oIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1l
RWZmZWN0U3RhY2suaAppbmRleCA5NzhkODRkY2Q1NjgwZDI4YzBhM2Q2OTllMjMzZmRjN2QzYWVh
NjkwLi4xZGI4NDA0MjY4ZWM3OTNhY2I0ZjUxMjcwYWJjY2QxMDRhNTQ2Y2YwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RTdGFjay5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFN0YWNrLmgKQEAgLTQ3LDYgKzQ3
LDcgQEAgcHVibGljOgogICAgIGNvbnN0IEFuaW1hdGlvbkxpc3QqIGNzc0FuaW1hdGlvbkxpc3Qo
KSBjb25zdCB7IHJldHVybiBtX2Nzc0FuaW1hdGlvbkxpc3QuZ2V0KCk7IH0KICAgICB2b2lkIHNl
dENTU0FuaW1hdGlvbkxpc3QoUmVmUHRyPGNvbnN0IEFuaW1hdGlvbkxpc3Q+JiYpOwogICAgIGJv
b2wgaXNDdXJyZW50bHlBZmZlY3RpbmdQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEKSBjb25zdDsKKyAg
ICBib29sIHJlcXVpcmVzUHNldWRvRWxlbWVudCgpIGNvbnN0OwogCiBwcml2YXRlOgogICAgIHZv
aWQgZW5zdXJlRWZmZWN0c0FyZVNvcnRlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL1dlYkFuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2Vi
QW5pbWF0aW9uLmNwcAppbmRleCBjNzg1NjE0YTI1YjczYWNmNDc0MDJiMjc5OWUyNTVmNGQ3Y2Uz
NTdkLi5lYjVjZDY1MzNhYzZmMjU3MjExZTRmYzI5NDk2MTMzMDI5Zjg3Y2RhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9hbmltYXRpb24vV2ViQW5pbWF0aW9uLmNwcApAQCAtMTM2Nyw3ICsxMzY3LDcgQEAg
RXhjZXB0aW9uT3I8dm9pZD4gV2ViQW5pbWF0aW9uOjpjb21taXRTdHlsZXMoKQogICAgIC8vCiAg
ICAgLy8gMi4xIElmIHRhcmdldCBpcyBub3QgYW4gZWxlbWVudCBjYXBhYmxlIG9mIGhhdmluZyBh
IHN0eWxlIGF0dHJpYnV0ZSAoZm9yIGV4YW1wbGUsIGl0IGlzIGEgcHNldWRvLWVsZW1lbnQgb3Ig
aXMgYW4gZWxlbWVudCBpbiBhCiAgICAgLy8gZG9jdW1lbnQgZm9ybWF0IGZvciB3aGljaCBzdHls
ZSBhdHRyaWJ1dGVzIGFyZSBub3QgZGVmaW5lZCkgdGhyb3cgYSAiTm9Nb2RpZmljYXRpb25BbGxv
d2VkRXJyb3IiIERPTUV4Y2VwdGlvbiBhbmQgYWJvcnQgdGhlc2Ugc3RlcHMuCi0gICAgaWYgKCFp
czxTdHlsZWRFbGVtZW50Pih0YXJnZXQpKQorICAgIGlmICghaXM8U3R5bGVkRWxlbWVudD4odGFy
Z2V0KSB8fCBlZmZlY3QtPnRhcmdldHNQc2V1ZG9FbGVtZW50KCkpCiAgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBOb01vZGlmaWNhdGlvbkFsbG93ZWRFcnJvciB9OwogCiAgICAgYXV0byYgc3R5
bGVkRWxlbWVudCA9IGRvd25jYXN0PFN0eWxlZEVsZW1lbnQ+KCp0YXJnZXQpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1BzZXVkb0VsZW1lbnQuY3BwCmluZGV4IDMyYWU4MzI4OWY4ZjhmN2NjZjMwNzk1NWMyOWU4
YjE1ZTQxYmQxNjkuLmU4NGMyMjliMzk3YmQ1YmU5MGRmYWE4YmI4ZmNlZTkxYjNkZDgxOWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vUHNldWRvRWxlbWVudC5jcHAKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNs
dWRlICJDb250ZW50RGF0YS5oIgogI2luY2x1ZGUgIkRvY3VtZW50VGltZWxpbmUuaCIKICNpbmNs
dWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKKyNpbmNsdWRlICJLZXlmcmFtZUVmZmVj
dFN0YWNrLmgiCiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIlJlbmRlcklt
YWdlLmgiCiAjaW5jbHVkZSAiUmVuZGVyUXVvdGUuaCIKQEAgLTEwMCw3ICsxMDEsMTQgQEAgdm9p
ZCBQc2V1ZG9FbGVtZW50OjpjbGVhckhvc3RFbGVtZW50KCkKIAogYm9vbCBQc2V1ZG9FbGVtZW50
OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKIHsKLSAgICByZXR1
cm4gcHNldWRvRWxlbWVudFJlbmRlcmVySXNOZWVkZWQoJnN0eWxlKTsKKyAgICByZXR1cm4gcHNl
dWRvRWxlbWVudFJlbmRlcmVySXNOZWVkZWQoJnN0eWxlKSB8fCBpc1RhcmdldGVkQnlLZXlmcmFt
ZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKTsKK30KKworYm9vbCBQc2V1ZG9FbGVtZW50
Ojppc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKQorewor
ICAgIGlmIChhdXRvKiBzdGFjayA9IGtleWZyYW1lRWZmZWN0U3RhY2soKSkKKyAgICAgICAgcmV0
dXJuIHN0YWNrLT5yZXF1aXJlc1BzZXVkb0VsZW1lbnQoKTsKKyAgICByZXR1cm4gZmFsc2U7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNldWRv
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1BzZXVkb0VsZW1lbnQuaAppbmRleCAyZmFk
MzFkNjBlMWRmOGIxODRhMWRiZjc5NGM5YTI5MWZiYzgzMzVkLi5lYzc1ZTYxMjBmOWM5OGY4Yzkz
ZGJiNTdlYWZhNjljZjQyYjdjZDg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHNl
dWRvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qc2V1ZG9FbGVtZW50LmgKQEAg
LTQxLDYgKzQxLDcgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXJIb3N0RWxlbWVudCgpOwogCiAg
ICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBpc1RhcmdldGVkQnlLZXlmcmFtZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQo
KTsKIAogICAgIGJvb2wgY2FuU3RhcnRTZWxlY3Rpb24oKSBjb25zdCBvdmVycmlkZSB7IHJldHVy
biBmYWxzZTsgfQogICAgIGJvb2wgY2FuQ29udGFpblJhbmdlRW5kUG9pbnQoKSBjb25zdCBvdmVy
cmlkZSB7IHJldHVybiBmYWxzZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVkQ29udGVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRD
b250ZW50LmNwcAppbmRleCBhOTQxN2QyZWE5OTc5MDVlZWQ4MDllZjNiZWE3YzM3ZDhmZjJiYjlj
Li5hZTFiNWZmZGY4NmU5YmIxOGU2YjlmZGFlODYxMzViMTZiYWYwZGM4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXJHZW5lcmF0
ZWRDb250ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVu
ZGVyVHJlZVVwZGF0ZXJHZW5lcmF0ZWRDb250ZW50LmNwcApAQCAtNzEsMTIgKzcxLDE2IEBAIHZv
aWQgUmVuZGVyVHJlZVVwZGF0ZXI6OkdlbmVyYXRlZENvbnRlbnQ6OnVwZGF0ZVF1b3Rlc1VwVG8o
UmVuZGVyUXVvdGUqIGxhc3RRdW90CiAKIHN0YXRpYyB2b2lkIGNyZWF0ZUNvbnRlbnRSZW5kZXJl
cnMoUmVuZGVyVHJlZUJ1aWxkZXImIGJ1aWxkZXIsIFJlbmRlckVsZW1lbnQmIHBzZXVkb1JlbmRl
cmVyLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCiB7Ci0gICAgQVNTRVJUKHN0eWxlLmNvbnRl
bnREYXRhKCkpOwotCi0gICAgZm9yIChjb25zdCBDb250ZW50RGF0YSogY29udGVudCA9IHN0eWxl
LmNvbnRlbnREYXRhKCk7IGNvbnRlbnQ7IGNvbnRlbnQgPSBjb250ZW50LT5uZXh0KCkpIHsKLSAg
ICAgICAgYXV0byBjaGlsZCA9IGNvbnRlbnQtPmNyZWF0ZUNvbnRlbnRSZW5kZXJlcihwc2V1ZG9S
ZW5kZXJlci5kb2N1bWVudCgpLCBzdHlsZSk7Ci0gICAgICAgIGlmIChwc2V1ZG9SZW5kZXJlci5p
c0NoaWxkQWxsb3dlZCgqY2hpbGQsIHN0eWxlKSkKLSAgICAgICAgICAgIGJ1aWxkZXIuYXR0YWNo
KHBzZXVkb1JlbmRlcmVyLCBXVEZNb3ZlKGNoaWxkKSk7CisgICAgaWYgKGF1dG8qIGNvbnRlbnRE
YXRhID0gc3R5bGUuY29udGVudERhdGEoKSkgeworICAgICAgICBmb3IgKGNvbnN0IENvbnRlbnRE
YXRhKiBjb250ZW50ID0gY29udGVudERhdGE7IGNvbnRlbnQ7IGNvbnRlbnQgPSBjb250ZW50LT5u
ZXh0KCkpIHsKKyAgICAgICAgICAgIGF1dG8gY2hpbGQgPSBjb250ZW50LT5jcmVhdGVDb250ZW50
UmVuZGVyZXIocHNldWRvUmVuZGVyZXIuZG9jdW1lbnQoKSwgc3R5bGUpOworICAgICAgICAgICAg
aWYgKHBzZXVkb1JlbmRlcmVyLmlzQ2hpbGRBbGxvd2VkKCpjaGlsZCwgc3R5bGUpKQorICAgICAg
ICAgICAgICAgIGJ1aWxkZXIuYXR0YWNoKHBzZXVkb1JlbmRlcmVyLCBXVEZNb3ZlKGNoaWxkKSk7
CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICAvLyBUaGUgb25seSB2YWxpZCBzY2Vu
YXJpbyB3aGVyZSB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgd2l0aG91dCB0aGUgImNvbnRlbnQiIHBy
b3BlcnR5IGJlaW5nIHNldAorICAgICAgICAvLyBpcyB0aGUgY2FzZSB3aGVyZSBhIHBzZXVkby1l
bGVtZW50IGhhcyBhbmltYXRpb25zIHNldCBvbiBpdCB2aWEgdGhlIFdlYiBBbmltYXRpb25zIEFQ
SS4KKyAgICAgICAgQVNTRVJUKGlzPFBzZXVkb0VsZW1lbnQ+KHBzZXVkb1JlbmRlcmVyLmVsZW1l
bnQoKSkgJiYgZG93bmNhc3Q8UHNldWRvRWxlbWVudD4oKnBzZXVkb1JlbmRlcmVyLmVsZW1lbnQo
KSkuaXNUYXJnZXRlZEJ5S2V5ZnJhbWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCkpOwog
ICAgIH0KIH0KIApAQCAtOTcsNyArMTAxLDcgQEAgdm9pZCBSZW5kZXJUcmVlVXBkYXRlcjo6R2Vu
ZXJhdGVkQ29udGVudDo6dXBkYXRlUHNldWRvRWxlbWVudChFbGVtZW50JiBjdXJyZW50LAogICAg
IGlmIChhdXRvKiByZW5kZXJlciA9IHBzZXVkb0VsZW1lbnQgPyBwc2V1ZG9FbGVtZW50LT5yZW5k
ZXJlcigpIDogbnVsbHB0cikKICAgICAgICAgbV91cGRhdGVyLnJlbmRlclRyZWVQb3NpdGlvbigp
LmludmFsaWRhdGVOZXh0U2libGluZygqcmVuZGVyZXIpOwogCi0gICAgaWYgKCFuZWVkc1BzZXVk
b0VsZW1lbnQodXBkYXRlKSkgeworICAgIGlmICghbmVlZHNQc2V1ZG9FbGVtZW50KHVwZGF0ZSkg
JiYgKCFwc2V1ZG9FbGVtZW50IHx8ICFwc2V1ZG9FbGVtZW50LT5pc1RhcmdldGVkQnlLZXlmcmFt
ZUVmZmVjdFJlcXVpcmluZ1BzZXVkb0VsZW1lbnQoKSkpIHsKICAgICAgICAgaWYgKHBzZXVkb0Vs
ZW1lbnQpIHsKICAgICAgICAgICAgIGlmIChwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6QmVmb3JlKQog
ICAgICAgICAgICAgICAgIHJlbW92ZUJlZm9yZVBzZXVkb0VsZW1lbnQoY3VycmVudCwgbV91cGRh
dGVyLm1fYnVpbGRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRy
ZWVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5j
cHAKaW5kZXggNTA3Mzg0OTQ1Y2JlNDllNmI4MzhlNWQwMTBhYWRhMmQ3ZmVkNWY5ZC4uM2U4ZjNj
OTIwOGRkNGMzODdiNWJlNjY2M2RjNzczNmZlZTg5ZjQyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcApAQCAtMjY1LDcgKzI2NSwxMiBAQCBFbGVtZW50VXBk
YXRlIFRyZWVSZXNvbHZlcjo6cmVzb2x2ZVBzZXVkb1N0eWxlKEVsZW1lbnQmIGVsZW1lbnQsIGNv
bnN0IEVsZW1lbnRVcAogICAgICAgICByZXR1cm4geyB9OwogCiAgICAgYXV0byBwc2V1ZG9TdHls
ZSA9IHNjb3BlKCkucmVzb2x2ZXIucHNldWRvU3R5bGVGb3JFbGVtZW50KGVsZW1lbnQsIHsgcHNl
dWRvSWQgfSwgKmVsZW1lbnRVcGRhdGUuc3R5bGUsIHBhcmVudEJveFN0eWxlRm9yUHNldWRvKGVs
ZW1lbnRVcGRhdGUpLCAmc2NvcGUoKS5zZWxlY3RvckZpbHRlcik7Ci0gICAgaWYgKCFwc2V1ZG9F
bGVtZW50UmVuZGVyZXJJc05lZWRlZChwc2V1ZG9TdHlsZS5nZXQoKSkpCisgICAgaWYgKCFwc2V1
ZG9TdHlsZSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKworICAgIGF1dG8qIHBzZXVkb0VsZW1lbnQg
PSBwc2V1ZG9JZCA9PSBQc2V1ZG9JZDo6QmVmb3JlID8gZWxlbWVudC5iZWZvcmVQc2V1ZG9FbGVt
ZW50KCkgOiBlbGVtZW50LmFmdGVyUHNldWRvRWxlbWVudCgpOworICAgIGJvb2wgaGFzQW5pbWF0
aW9ucyA9IHBzZXVkb0VsZW1lbnQgJiYgcHNldWRvRWxlbWVudC0+aXNUYXJnZXRlZEJ5S2V5ZnJh
bWVFZmZlY3RSZXF1aXJpbmdQc2V1ZG9FbGVtZW50KCk7CisgICAgaWYgKCFwc2V1ZG9FbGVtZW50
UmVuZGVyZXJJc05lZWRlZChwc2V1ZG9TdHlsZS5nZXQoKSkgJiYgIWhhc0FuaW1hdGlvbnMpCiAg
ICAgICAgIHJldHVybiB7IH07CiAKICAgICByZXR1cm4gY3JlYXRlQW5pbWF0ZWRFbGVtZW50VXBk
YXRlKFdURk1vdmUocHNldWRvU3R5bGUpLCBlbGVtZW50LmVuc3VyZVBzZXVkb0VsZW1lbnQocHNl
dWRvSWQpLCBlbGVtZW50VXBkYXRlLmNoYW5nZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnIGIvU291cmNlL1dlYktpdC9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCBhNzRiNGE2NjZmMjU0
OTlhMDNlM2YyNjg1ZjViYjBkMGIyMWM1Mjk0Li5lYjcxMGYyODdmZjc1NjdhMTljY2JjZGU3MTVl
NGMwOTU2OGI0NDVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTQwMSw2ICs0MDEsOCBAQCBFTkFCTEVfV0VCR1BV
X01BQ09TX1NJTkNFXzEwMTQgPSBFTkFCTEVfV0VCR1BVOwogCiBFTkFCTEVfV0VCWFIgPSA7CiAK
K0VOQUJMRV9XRUJfQU5JTUFUSU9OUyA9IEVOQUJMRV9XRUJfQU5JTUFUSU9OUzsKKwogRU5BQkxF
X1dFQl9BUElfU1RBVElTVElDUyA9IDsKIAogRU5BQkxFX1dFQl9BVURJTyA9IEVOQUJMRV9XRUJf
QVVESU87CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IGE3NGI0YTY2NmYyNTQ5OWEw
M2UzZjI2ODVmNWJiMGQwYjIxYzUyOTQuLmViNzEwZjI4N2ZmNzU2N2ExOWNjYmNkZTcxNWU0YzA5
NTY4YjQ0NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC00MDEsNiArNDAxLDgg
QEAgRU5BQkxFX1dFQkdQVV9NQUNPU19TSU5DRV8xMDE0ID0gRU5BQkxFX1dFQkdQVTsKIAogRU5B
QkxFX1dFQlhSID0gOwogCitFTkFCTEVfV0VCX0FOSU1BVElPTlMgPSBFTkFCTEVfV0VCX0FOSU1B
VElPTlM7CisKIEVOQUJMRV9XRUJfQVBJX1NUQVRJU1RJQ1MgPSA7CiAKIEVOQUJMRV9XRUJfQVVE
SU8gPSBFTkFCTEVfV0VCX0FVRElPOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggYTc0YjRhNjY2
ZjI1NDk5YTAzZTNmMjY4NWY1YmIwZDBiMjFjNTI5NC4uZWI3MTBmMjg3ZmY3NTY3YTE5Y2NiY2Rl
NzE1ZTRjMDk1NjhiNDQ1ZiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9Db25maWd1
cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJ
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC00MDEsNiArNDAxLDgg
QEAgRU5BQkxFX1dFQkdQVV9NQUNPU19TSU5DRV8xMDE0ID0gRU5BQkxFX1dFQkdQVTsKIAogRU5B
QkxFX1dFQlhSID0gOwogCitFTkFCTEVfV0VCX0FOSU1BVElPTlMgPSBFTkFCTEVfV0VCX0FOSU1B
VElPTlM7CisKIEVOQUJMRV9XRUJfQVBJX1NUQVRJU1RJQ1MgPSA7CiAKIEVOQUJMRV9XRUJfQVVE
SU8gPSBFTkFCTEVfV0VCX0FVRElPOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXgg
MjQ3MDQ4MmVmNjRlZjhhNzkwNjJiMDAwODYyYjAwM2ViYjA2NTY5NC4uZDc0ZWVjMDc0MGE5MmU2
MzNiZDE2Yjc0NTc5ZDRjMjJhODVkYzA0MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjIgQEAKKzIwMjAtMDQtMTUgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQGFw
cGxlLmNvbT4KKworICAgICAgICBbV2ViIEFuaW1hdGlvbnNdIEFkZCBzdXBwb3J0IGZvciBgcHNl
dWRvRWxlbWVudGAgb24gYEtleWZyYW1lRWZmZWN0YCBhbmQgYEtleWZyYW1lRWZmZWN0T3B0aW9u
c2AKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzI5
MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTkxOTkwMDM+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFyayAyMyBhZGRpdGlvbmFsIFdQVCB0ZXN0
cyBhcyBQQVNTLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0
aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFu
aW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy10cmFuc2l0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2
ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRp
b25zL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9p
bnRlcmZhY2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZm
ZWN0L3N0eWxlLWNoYW5nZS1ldmVudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3Rhcmdl
dC1leHBlY3RlZC50eHQ6CisKIDIwMjAtMDQtMTQgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBw
bGUuY29tPgogCiAgICAgICAgIFJlc3luYyBmZWF0dXJlcG9saWN5LmpzIHRvIGZpeCBXUFQgbWVk
aWFjYXB0dXJlLXN0cmVhbXMvTWVkaWFTdHJlYW0tZGVmYXVsdC1mZWF0dXJlLXBvbGljeS5odHRw
cy5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1l
eHBlY3RlZC50eHQKaW5kZXggM2M2MjM4MjAyN2ZiZGE2NDcxODEyNDUzYWFkNzBiMmIzNDU5YTRl
NC4uZDBiYWJmNTY4M2VhZWVhYzNiZTgwOTZhMmM1MGYyYmE2MTZjMjk2OSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1h
dGlvbnMvRG9jdW1lbnQtZ2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmlt
YXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dApAQCAt
MTMsNSArMTMsNSBAQCBQQVNTIEZpbmlzaGVkIGJ1dCBub3QgZmlsbGluZyBDU1MgQW5pbWF0aW9u
cyBhcmUgbm90IHJldHVybmVkCiBQQVNTIFlldC10by1zdGFydCBDU1MgQW5pbWF0aW9ucyBhcmUg
cmV0dXJuZWQgCiBQQVNTIENTUyBBbmltYXRpb25zIGNhbmNlbGVkIHZpYSB0aGUgQVBJIGFyZSBu
b3QgcmV0dXJuZWQgCiBQQVNTIENTUyBBbmltYXRpb25zIGNhbmNlbGVkIGFuZCByZXN0YXJ0ZWQg
dmlhIHRoZSBBUEkgYXJlIHJldHVybmVkIAotRkFJTCBDU1MgQW5pbWF0aW9ucyB0YXJnZXR0aW5n
IChwc2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29ydGlu
ZyBhc3NlcnRfZXF1YWxzOiBBbmltYXRpb24gIzEgaGFzIG51bGwgcHNldWRvIHR5cGUgZXhwZWN0
ZWQgKG9iamVjdCkgbnVsbCBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAorUEFTUyBDU1Mg
QW5pbWF0aW9ucyB0YXJnZXR0aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBoYXZlIGNvcnJl
Y3Qgb3JkZXIgYWZ0ZXIgc29ydGluZyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvRWxlbWVudC1nZXRB
bmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1h
dGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAppbmRleCBhMGM5ZDA5YzA5YzRiMzY3YzczMGNm
MzNkNTkzNjk3MzlhOTNmODhkLi44ZWQ5MjMwZDg3ZDg4YTg3OWUxZDYwNjU2ZmNkMWM5YWJjYjJh
OWQyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9FbGVtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4
cGVjdGVkLnR4dApAQCAtMTcsOCArMTcsOCBAQCBQQVNTIGdldEFuaW1hdGlvbnMgcmV0dXJucyBv
YmplY3RzIHdpdGggdGhlIHNhbWUgaWRlbnRpdHkKIFBBU1MgZ2V0QW5pbWF0aW9ucyBmb3IgQ1NT
IEFuaW1hdGlvbnMgdGhhdCBhcmUgY2FuY2VsZWQgCiBQQVNTIGdldEFuaW1hdGlvbnMgZm9yIENT
UyBBbmltYXRpb25zIGZvbGxvd3MgYW5pbWF0aW9uLW5hbWUgb3JkZXIgCiBQQVNTIHsgc3VidHJl
ZTogZmFsc2UgfSBvbiBhIGxlYWYgZWxlbWVudCByZXR1cm5zIHRoZSBlbGVtZW50J3MgYW5pbWF0
aW9ucyBhbmQgaWdub3JlIHBzZXVkby1lbGVtZW50cyAKLUZBSUwgeyBzdWJ0cmVlOiB0cnVlIH0g
b24gYSBsZWFmIGVsZW1lbnQgcmV0dXJucyB0aGUgZWxlbWVudCdzIGFuaW1hdGlvbnMgYW5kIGl0
cyBwc2V1ZG8tZWxlbWVudHMnIGFuaW1hdGlvbnMgYXNzZXJ0X2VxdWFsczogVGhlIGFuaW1hdGlv
biB0YXJnZXRpbmcgdGhlIHBhcmVudCBlbGVtZW50IHNob3VsZCBiZSByZXR1cm5lZCBmaXJzdCBl
eHBlY3RlZCAob2JqZWN0KSBudWxsIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCitQQVNT
IHsgc3VidHJlZTogdHJ1ZSB9IG9uIGEgbGVhZiBlbGVtZW50IHJldHVybnMgdGhlIGVsZW1lbnQn
cyBhbmltYXRpb25zIGFuZCBpdHMgcHNldWRvLWVsZW1lbnRzJyBhbmltYXRpb25zIAogUEFTUyB7
IHN1YnRyZWU6IGZhbHNlIH0gb24gYW4gZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0dXJucyBvbmx5
IHRoZSBlbGVtZW50J3MgYW5pbWF0aW9ucyAKLUZBSUwgeyBzdWJ0cmVlOiB0cnVlIH0gb24gYW4g
ZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0dXJucyBhbmltYXRpb25zIGZyb20gdGhlIGVsZW1lbnQs
IGl0cyBwc2V1ZG8tZWxlbWVudHMsIGl0cyBjaGlsZCBhbmQgaXRzIGNoaWxkIHBzZXVkby1lbGVt
ZW50cyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0aW9uIHRhcmdldGluZyB0aGUgcGFyZW50IGVs
ZW1lbnQgc2hvdWxkIGJlIHJldHVybmVkIGZpcnN0IGV4cGVjdGVkIChvYmplY3QpIG51bGwgYnV0
IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK0ZBSUwgeyBzdWJ0cmVlOiB0cnVlIH0gb24gYW4g
ZWxlbWVudCB3aXRoIGEgY2hpbGQgcmV0dXJucyBhbmltYXRpb25zIGZyb20gdGhlIGVsZW1lbnQs
IGl0cyBwc2V1ZG8tZWxlbWVudHMsIGl0cyBjaGlsZCBhbmQgaXRzIGNoaWxkIHBzZXVkby1lbGVt
ZW50cyBhc3NlcnRfZXF1YWxzOiBUaGUgYW5pbWF0aW9uIHRhcmdldGluZyB0aGUgOjphZnRlciBw
ZXN1ZG8tZWxlbWVudCBzaG91bGQgYmUgcmV0dXJuZWQgdGhpcmQgZXhwZWN0ZWQgKHN0cmluZykg
Ijo6YWZ0ZXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAogRkFJTCB7IHN1YnRyZWU6IHRydWUgfSBv
biBhbiBlbGVtZW50IHdpdGggbWFueSBkZXNjZW5kYW50cyByZXR1cm5zIGFuaW1hdGlvbnMgZnJv
bSBhbGwgdGhlIGRlc2NlbmRhbnRzIGFzc2VydF9lcXVhbHM6IFRoZSBhbmltYXRpb24gdGFyZ2V0
aW5nIHRoZSBjaGlsZDEgZWxlbWVudCBzaG91bGQgYmUgcmV0dXJuZWQgc2Vjb25kIGV4cGVjdGVk
IEVsZW1lbnQgbm9kZSA8ZGl2IGlkPSJjaGlsZDEiIHN0eWxlPSJhbmltYXRpb246IGFuaW0xIDEw
MHM7Ij48ZGl2IGlkPSIuLi4gYnV0IGdvdCBFbGVtZW50IG5vZGUgPGRpdiBpZD0iZ3JhbmRjaGls
ZDEiIHN0eWxlPSJhbmltYXRpb246IGFuaW0xIDEwMHM7Ij48L2Rpdj4KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5z
aXRpb25zL0RvY3VtZW50LWdldEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy10cmFuc2l0
aW9ucy9Eb2N1bWVudC1nZXRBbmltYXRpb25zLnRlbnRhdGl2ZS1leHBlY3RlZC50eHQKaW5kZXgg
MThjMWUzMTY1YTAyZmYxNTIwZjUxZmRlZDJiZTdkMmQzNTYzZjczNi4uZmQyYmY1NTAyNDEyMDRj
YWNkNGJhNTAzMTBlYjkwYjhhNTFiY2UxNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXRyYW5zaXRpb25zL0RvY3VtZW50LWdl
dEFuaW1hdGlvbnMudGVudGF0aXZlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdHJhbnNpdGlvbnMvRG9jdW1lbnQt
Z2V0QW5pbWF0aW9ucy50ZW50YXRpdmUtZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiBQ
QVNTIGdldEFuaW1hdGlvbnMgZm9yIG5vbi1hbmltYXRlZCBjb250ZW50IAogUEFTUyBnZXRBbmlt
YXRpb25zIGZvciBDU1MgVHJhbnNpdGlvbnMgCi1GQUlMIENTUyBUcmFuc2l0aW9ucyB0YXJnZXR0
aW5nIChwc2V1ZG8tKWVsZW1lbnRzIHNob3VsZCBoYXZlIGNvcnJlY3Qgb3JkZXIgYWZ0ZXIgc29y
dGluZyBhc3NlcnRfZXF1YWxzOiBUcmFuc2l0aW9uICMxIGhhcyBudWxsIHBzZXVkbyB0eXBlIGV4
cGVjdGVkIChvYmplY3QpIG51bGwgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQKK1BBU1Mg
Q1NTIFRyYW5zaXRpb25zIHRhcmdldHRpbmcgKHBzZXVkby0pZWxlbWVudHMgc2hvdWxkIGhhdmUg
Y29ycmVjdCBvcmRlciBhZnRlciBzb3J0aW5nIAogUEFTUyBUcmFuc2l0aW9ucyBhcmUgbm90IHJl
dHVybmVkIGFmdGVyIHRoZXkgaGF2ZSBmaW5pc2hlZCAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0aW9ucy9pZGxoYXJu
ZXNzLndpbmRvdy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVkLnR4
dAppbmRleCBjZWYyMjU1MGMxNWZjMDU0MDE0OWJkOGUzMjhmMDhlNjEyYjZhNzU5Li44YTY2Y2Rm
ZDgwZmI2NjE2ZTQ1NDViMjM4ZjQ5OWZkM2IxMjBiNGFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5l
c3Mud2luZG93LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2lkbGhhcm5lc3Mud2luZG93LWV4cGVjdGVk
LnR4dApAQCAtMTA4LDE0ICsxMDgsMTQgQEAgUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6
IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRlcmZhY2UgcHJvdG90eXBlIG8KIFBBU1Mg
S2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBleGlzdGVuY2UgYW5kIHByb3BlcnRpZXMgb2YgaW50
ZXJmYWNlIHByb3RvdHlwZSBvYmplY3QncyAiY29uc3RydWN0b3IiIHByb3BlcnR5IAogUEFTUyBL
ZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IGV4aXN0ZW5jZSBhbmQgcHJvcGVydGllcyBvZiBpbnRl
cmZhY2UgcHJvdG90eXBlIG9iamVjdCdzIEBAdW5zY29wYWJsZXMgcHJvcGVydHkgCiBQQVNTIEtl
eWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0cmlidXRlIHRhcmdldCAKLUZBSUwgS2V5ZnJhbWVF
ZmZlY3QgaW50ZXJmYWNlOiBhdHRyaWJ1dGUgcHNldWRvRWxlbWVudCBhc3NlcnRfdHJ1ZTogVGhl
IHByb3RvdHlwZSBvYmplY3QgbXVzdCBoYXZlIGEgcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIGV4
cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0
cmlidXRlIHBzZXVkb0VsZW1lbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogYXR0
cmlidXRlIGNvbXBvc2l0ZSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBvcGVyYXRp
b24gZ2V0S2V5ZnJhbWVzKCkgCiBQQVNTIEtleWZyYW1lRWZmZWN0IGludGVyZmFjZTogb3BlcmF0
aW9uIHNldEtleWZyYW1lcyhvYmplY3QpIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBtdXN0IGJlIHBy
aW1hcnkgaW50ZXJmYWNlIG9mIG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSAKIFBBU1Mg
U3RyaW5naWZpY2F0aW9uIG9mIG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSAKIFBBU1Mg
S2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkg
bXVzdCBpbmhlcml0IHByb3BlcnR5ICJ0YXJnZXQiIHdpdGggdGhlIHByb3BlciB0eXBlIAotRkFJ
TCBLZXlmcmFtZUVmZmVjdCBpbnRlcmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxs
KSBtdXN0IGluaGVyaXQgcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIHdpdGggdGhlIHByb3BlciB0
eXBlIGFzc2VydF9pbmhlcml0czogcHJvcGVydHkgInBzZXVkb0VsZW1lbnQiIG5vdCBmb3VuZCBp
biBwcm90b3R5cGUgY2hhaW4KK1BBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5
ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJwc2V1ZG9FbGVt
ZW50IiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QgaW50ZXJmYWNl
OiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhlcml0IHByb3BlcnR5ICJj
b21wb3NpdGUiIHdpdGggdGhlIHByb3BlciB0eXBlIAogUEFTUyBLZXlmcmFtZUVmZmVjdCBpbnRl
cmZhY2U6IG5ldyBLZXlmcmFtZUVmZmVjdChudWxsLCBudWxsKSBtdXN0IGluaGVyaXQgcHJvcGVy
dHkgImdldEtleWZyYW1lcygpIiB3aXRoIHRoZSBwcm9wZXIgdHlwZSAKIFBBU1MgS2V5ZnJhbWVF
ZmZlY3QgaW50ZXJmYWNlOiBuZXcgS2V5ZnJhbWVFZmZlY3QobnVsbCwgbnVsbCkgbXVzdCBpbmhl
cml0IHByb3BlcnR5ICJzZXRLZXlmcmFtZXMob2JqZWN0KSIgd2l0aCB0aGUgcHJvcGVyIHR5cGUg
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5pbWF0YWJsZS9hbmltYXRlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1h
dGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0CmluZGV4IDc1
MTQ0MjZjYTBmMWViMTRjMjU0MzY5MjYyYWM4ZDk1Y2Q5NDE0NTguLjI0ZTBmZjI4Yjk1ZTBmZDdl
NDMxMzdmODQwMjMzMWNhY2MyN2M2OTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRh
YmxlL2FuaW1hdGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9BbmltYXRhYmxlL2Fu
aW1hdGUtZXhwZWN0ZWQudHh0CkBAIC0xMzcsOCArMTM3LDggQEAgUEFTUyBhbmltYXRlKCkgd2l0
aCBwc2V1ZG9FbGVtZW50IHBhcmFtZXRlciBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QKIFBB
U1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBwYXJhbWV0ZXIgd2l0aG91dCBjb250ZW50
IGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCAKIFBBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRv
RWxlbWVudCBwYXJhbWV0ZXIgIGNyZWF0ZXMgYW4gQW5pbWF0aW9uIG9iamVjdCBmb3IgOjptYXJr
ZXIgCiBQQVNTIGFuaW1hdGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgcGFyYW1ldGVyICBjcmVhdGVz
IGFuIEFuaW1hdGlvbiBvYmplY3QgZm9yIDo6Zmlyc3QtbGluZSAKLUZBSUwgYW5pbWF0ZSgpIHdp
dGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVj
dCBwc2V1ZG8tZWxlbWVudCBhc3NlcnRfZXF1YWxzOiBUaGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRh
cmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0ZWQgKHN0cmluZykgIjo6YmVmb3JlIiBi
dXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9F
bGVtZW50IHdpdGhvdXQgY29udGVudCBjcmVhdGVzIGFuIEFuaW1hdGlvbiBvYmplY3QgdGFyZ2V0
aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGFzc2VydF9lcXVhbHM6IFRoZSByZXR1cm5l
ZCBBbmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3RyaW5n
KSAiOjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1hdGUo
KSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhlIGNv
cnJlY3QgcHNldWRvLWVsZW1lbnQgZm9yIDo6bWFya2VyIGFzc2VydF9lcXVhbHM6IFRoZSByZXR1
cm5lZCBBbmltYXRpb24gdGFyZ2V0cyB0aGUgY29ycmVjdCBzZWxlY3RvciBleHBlY3RlZCAoc3Ry
aW5nKSAiOjptYXJrZXIiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIGFuaW1h
dGUoKSB3aXRoIHBzZXVkb0VsZW1lbnQgYW4gQW5pbWF0aW9uIG9iamVjdCB0YXJnZXRpbmcgdGhl
IGNvcnJlY3QgcHNldWRvLWVsZW1lbnQgZm9yIDo6Zmlyc3QtbGluZSBhc3NlcnRfZXF1YWxzOiBU
aGUgcmV0dXJuZWQgQW5pbWF0aW9uIHRhcmdldHMgdGhlIGNvcnJlY3Qgc2VsZWN0b3IgZXhwZWN0
ZWQgKHN0cmluZykgIjo6Zmlyc3QtbGluZSIgYnV0IGdvdCAodW5kZWZpbmVkKSB1bmRlZmluZWQK
K1BBU1MgYW5pbWF0ZSgpIHdpdGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRh
cmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCAKK1BBU1MgYW5pbWF0ZSgpIHdpdGgg
cHNldWRvRWxlbWVudCB3aXRob3V0IGNvbnRlbnQgY3JlYXRlcyBhbiBBbmltYXRpb24gb2JqZWN0
IHRhcmdldGluZyB0aGUgY29ycmVjdCBwc2V1ZG8tZWxlbWVudCAKK0ZBSUwgYW5pbWF0ZSgpIHdp
dGggcHNldWRvRWxlbWVudCBhbiBBbmltYXRpb24gb2JqZWN0IHRhcmdldGluZyB0aGUgY29ycmVj
dCBwc2V1ZG8tZWxlbWVudCBmb3IgOjptYXJrZXIgYXNzZXJ0X2VxdWFsczogVGhlIHJldHVybmVk
IEFuaW1hdGlvbiB0YXJnZXRzIHRoZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVkICI6Om1hcmtl
ciIgYnV0IGdvdCAiIgorRkFJTCBhbmltYXRlKCkgd2l0aCBwc2V1ZG9FbGVtZW50IGFuIEFuaW1h
dGlvbiBvYmplY3QgdGFyZ2V0aW5nIHRoZSBjb3JyZWN0IHBzZXVkby1lbGVtZW50IGZvciA6OmZp
cnN0LWxpbmUgYXNzZXJ0X2VxdWFsczogVGhlIHJldHVybmVkIEFuaW1hdGlvbiB0YXJnZXRzIHRo
ZSBjb3JyZWN0IHNlbGVjdG9yIGV4cGVjdGVkICI6OmZpcnN0LWxpbmUiIGJ1dCBnb3QgIiIKIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5p
bWF0aW9ucy9pbnRlcmZhY2VzL0FuaW1hdGlvbi9jb21taXRTdHlsZXMtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDM2NTAyMjdjZjBmMTJkZjI1ZDc5ZWMwYzNhMGI3MWQ1MjE2ZTA4NzUuLmQ1NTY3NjA4MDcw
M2I2NGMyZGI5MDliMDg5YzMzYTEzNDNlZWIzYmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9B
bmltYXRpb24vY29tbWl0U3R5bGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvQW5p
bWF0aW9uL2NvbW1pdFN0eWxlcy1leHBlY3RlZC50eHQKQEAgLTExLDE2ICsxMSwxMiBAQCBGQUlM
IENvbW1pdHMgdGhlIGludGVybWVkaWF0ZSB2YWx1ZSBvZiBhbiBhbmltYXRpb24gaW4gdGhlIG1p
ZGRsZSBvZiBzdGFjayBhc3NlcgogRkFJTCBDb21taXQgY29tcG9zaXRlcyBvbiB0b3Agb2YgdGhl
IHVuZGVybHlpbmcgdmFsdWUgYXNzZXJ0X2FwcHJveF9lcXVhbHM6IGV4cGVjdGVkIDAuNSArLy0g
MC4wMDAxIGJ1dCBnb3QgMC4yMDAwMDAwMDI5ODAyMzIyNAogUEFTUyBUcmlnZ2VycyBtdXRhdGlv
biBvYnNlcnZlcnMgd2hlbiB1cGRhdGluZyBzdHlsZSAKIEZBSUwgRG9lcyBOT1QgdHJpZ2dlciBt
dXRhdGlvbiBvYnNlcnZlcnMgd2hlbiB0aGUgY2hhbmdlIHRvIHN0eWxlIGlzIHJlZHVuZGFudCBh
c3NlcnRfZXF1YWxzOiBTaG91bGQgaGF2ZSBubyBtdXRhdGlvbiByZWNvcmRzIGV4cGVjdGVkIDAg
YnV0IGdvdCAxCi1GQUlMIFRocm93cyBpZiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgYSBwc2V1ZG8g
ZWxlbWVudCBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gIigpID0+IHsKLSAgICBhbmltYXRp
b24uY29tbWl0U3R5bGVzKCk7Ci0gIH0iIGRpZCBub3QgdGhyb3cKK1BBU1MgVGhyb3dzIGlmIHRo
ZSB0YXJnZXQgZWxlbWVudCBpcyBhIHBzZXVkbyBlbGVtZW50IAogUEFTUyBUaHJvd3MgaWYgdGhl
IHRhcmdldCBlbGVtZW50IGlzIG5vdCBzb21ldGhpbmcgd2l0aCBhIHN0eWxlIGF0dHJpYnV0ZSAK
IFBBU1MgVGhyb3dzIGlmIHRoZSB0YXJnZXQgZWZmZWN0IGlzIGRpc3BsYXk6bm9uZSAKIFBBU1Mg
VGhyb3dzIGlmIHRoZSB0YXJnZXQgZWZmZWN0J3MgYW5jZXN0b3IgaXMgZGlzcGxheTpub25lIAog
UEFTUyBUcmVhdHMgZGlzcGxheTpjb250ZW50cyBhcyByZW5kZXJlZCAKIFBBU1MgVHJlYXRzIGRp
c3BsYXk6Y29udGVudHMgaW4gYSBkaXNwbGF5Om5vbmUgc3VidHJlZSBhcyBub3QgcmVuZGVyZWQg
CiBQQVNTIFRocm93cyBpZiB0aGUgdGFyZ2V0IGVmZmVjdCBpcyBkaXNjb25uZWN0ZWQgCi1GQUlM
IENoZWNrcyB0aGUgcHNldWRvIGVsZW1lbnQgY29uZGl0aW9uIGJlZm9yZSB0aGUgbm90IHJlbmRl
cmVkIGNvbmRpdGlvbiBhc3NlcnRfdGhyb3dzX2RvbTogZnVuY3Rpb24gIigpID0+IHsKLSAgICBh
bmltYXRpb24uY29tbWl0U3R5bGVzKCk7Ci0gIH0iIHRocmV3IG9iamVjdCAiSW52YWxpZFN0YXRl
RXJyb3I6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4iIHRoYXQgaXMgbm90IGEg
RE9NRXhjZXB0aW9uIE5vTW9kaWZpY2F0aW9uQWxsb3dlZEVycm9yOiBwcm9wZXJ0eSAiY29kZSIg
aXMgZXF1YWwgdG8gMTEsIGV4cGVjdGVkIDcKK1BBU1MgQ2hlY2tzIHRoZSBwc2V1ZG8gZWxlbWVu
dCBjb25kaXRpb24gYmVmb3JlIHRoZSBub3QgcmVuZGVyZWQgY29uZGl0aW9uIAogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50cy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dl
Yi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3Qvc3R5bGUtY2hhbmdlLWV2ZW50
cy1leHBlY3RlZC50eHQKaW5kZXggZDMwOWE0NzgyNzkyMmU0NDRmZDU4ZDk5YmM4N2NjZjM2MDVk
ZTMwMS4uOGE2MGMxMzliOTRkZTY2NTNkNGFmN2Q1ZGMzOGUwNWQ0NTE5YzUwNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWItYW5pbWF0
aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3N0eWxlLWNoYW5nZS1ldmVudHMtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2ViLWFuaW1hdGlvbnMvaW50ZXJmYWNlcy9LZXlmcmFtZUVmZmVjdC9zdHlsZS1jaGFuZ2UtZXZl
bnRzLWV4cGVjdGVkLnR4dApAQCAtMSw5ICsxLDEwIEBACiAKLUZBSUwgQWxsIHByb3BlcnR5IGtl
eXMgYXJlIHJlY29nbml6ZWQgYXNzZXJ0X2luX2FycmF5OiBUZXN0IHByb3BlcnR5ICdwc2V1ZG9F
bGVtZW50JyBzaG91bGQgYmUgb25lIG9mIHRoZSBwcm9wZXJ0aWVzIG9uICBLZXlmcmFtZUVmZmVj
dCB2YWx1ZSAicHNldWRvRWxlbWVudCIgbm90IGluIGFycmF5IFsiZ2V0VGltaW5nIiwgImdldENv
bXB1dGVkVGltaW5nIiwgInVwZGF0ZVRpbWluZyIsICJ0YXJnZXQiLCAiaXRlcmF0aW9uQ29tcG9z
aXRlIiwgImNvbXBvc2l0ZSIsICJnZXRLZXlmcmFtZXMiLCAic2V0S2V5ZnJhbWVzIiwgIktleWZy
YW1lRWZmZWN0IGNvbnN0cnVjdG9yIiwgIktleWZyYW1lRWZmZWN0IGNvcHkgY29uc3RydWN0b3Ii
XQorUEFTUyBBbGwgcHJvcGVydHkga2V5cyBhcmUgcmVjb2duaXplZCAKIFBBU1MgS2V5ZnJhbWVF
ZmZlY3QuZ2V0VGltaW5nIGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQ
QVNTIEtleWZyYW1lRWZmZWN0LmdldENvbXB1dGVkVGltaW5nIGRvZXMgTk9UIHRyaWdnZXIgYSBz
dHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZmZWN0LnVwZGF0ZVRpbWluZyBkb2Vz
IE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC50
YXJnZXQgZG9lcyBOT1QgdHJpZ2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKK1BBU1MgS2V5ZnJh
bWVFZmZlY3QucHNldWRvRWxlbWVudCBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2
ZW50IAogUEFTUyBLZXlmcmFtZUVmZmVjdC5pdGVyYXRpb25Db21wb3NpdGUgZG9lcyBOT1QgdHJp
Z2dlciBhIHN0eWxlIGNoYW5nZSBldmVudCAKIFBBU1MgS2V5ZnJhbWVFZmZlY3QuY29tcG9zaXRl
IGRvZXMgTk9UIHRyaWdnZXIgYSBzdHlsZSBjaGFuZ2UgZXZlbnQgCiBQQVNTIEtleWZyYW1lRWZm
ZWN0LmdldEtleWZyYW1lcyBkb2VzIE5PVCB0cmlnZ2VyIGEgc3R5bGUgY2hhbmdlIGV2ZW50IApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWItYW5pbWF0aW9ucy9pbnRlcmZhY2VzL0tleWZyYW1lRWZmZWN0L3RhcmdldC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmlt
YXRpb25zL2ludGVyZmFjZXMvS2V5ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dAppbmRl
eCAwM2Y1ZmJkMmMyZWVjYzg0Yjk3NjJhMDI0YzUyZTBiOWY1OWQzMDJlLi5jNTEyODAyYzU1NDE0
Yjc3ZmM0NWUzOWM4MmZlOWFhYzc2MjQzZDJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5
ZnJhbWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYi1hbmltYXRpb25zL2ludGVyZmFjZXMvS2V5ZnJh
bWVFZmZlY3QvdGFyZ2V0LWV4cGVjdGVkLnR4dApAQCAtNCwxOCArNCwxOCBAQCBQQVNTIFRlc3Qg
c2V0dGluZyB0YXJnZXQgZnJvbSBudWxsIHRvIGEgdmFsaWQgdGFyZ2V0CiBQQVNTIFRlc3Qgc2V0
dGluZyB0YXJnZXQgZnJvbSBhIHZhbGlkIHRhcmdldCB0byBudWxsIAogUEFTUyBUZXN0IHNldHRp
bmcgdGFyZ2V0IGZyb20gYSB2YWxpZCB0YXJnZXQgdG8gYW5vdGhlciB0YXJnZXQgCiBQQVNTIFRh
cmdldCBlbGVtZW50IGNhbiBiZSBzZXQgdG8gYSBmb3JlaWduIGVsZW1lbnQgCi1GQUlMIENoYW5n
ZSB0YXJnZXQgZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGluZyB0
YXJnZXQgZmlyc3QuIGFzc2VydF9lcXVhbHM6IFZhbHVlIGF0IDUwJSBwcm9ncmVzcyBhZnRlciBz
ZXR0aW5nIG5ldyB0YXJnZXQgZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjEwcHgiCi1GQUlMIENo
YW5nZSB0YXJnZXQgZnJvbSBudWxsIHRvIGFuIGV4aXN0aW5nIHBzZXVkb0VsZW1lbnQgc2V0dGlu
ZyBwc2V1ZG9FbGVtZW50IGZpcnN0LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUgcHJvZ3Jl
c3MgYWZ0ZXIgc2V0dGluZyBuZXcgdGFyZ2V0IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIxMHB4
IgorUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhbiBleGlzdGluZyBwc2V1ZG9FbGVt
ZW50IHNldHRpbmcgdGFyZ2V0IGZpcnN0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwg
dG8gYW4gZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3Qu
IAogUEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgdG8g
dGhlIG9yaWdpbmF0aW5nIGVsZW1lbnQuIAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhp
c3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0
YXJnZXQuIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8t
ZWxlbWVudCAocHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1
dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBl
eGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5n
IHBzZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6IFZhbHVlIG9mIDJuZCBlbGVtZW50IChjdXJy
ZW50bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5nIHRoZSBlZmZlY3QgdGFyZ2V0IGV4cGVjdGVk
ICI1MHB4IiBidXQgZ290ICIyMHB4IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhp
c3RpbmcgdG8gYSBkaWZmZXJlbnQgZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyB0
YXJnZXQuIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNpZmllZCBwc2V1ZG8t
ZWxlbWVudCAocHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAiOjpiZWZvcmUiIGJ1
dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5v
bi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0
aW5nIHBzZXVkb0VsZW1lbnQuIGFzc2VydF9lcXVhbHM6IFZhbHVlIG9mIDJuZCBlbGVtZW50IChj
dXJyZW50bHkgdGFyZ2V0ZWQpIGFmdGVyIGNoYW5naW5nIHRoZSBlZmZlY3QgdGFyZ2V0IGV4cGVj
dGVkICI1MHB4IiBidXQgZ290ICIyMHB4IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0
byBhIG5vbi1leGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgdGFyZ2V0IGZpcnN0LiBhc3Nl
cnRfZXF1YWxzOiBWYWx1ZSBhdCA1MCUgcHJvZ3Jlc3MgYWZ0ZXIgc2V0dGluZyBuZXcgdGFyZ2V0
IGV4cGVjdGVkICI1MHB4IiBidXQgZ290ICIxMHB4IgotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20g
bnVsbCB0byBhIG5vbi1leGlzdGluZyBwc2V1ZG9FbGVtZW50IHNldHRpbmcgcHNldWRvRWxlbWVu
dCBmaXJzdC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgYXQgNTAlIHByb2dyZXNzIGFmdGVyIHNldHRp
bmcgbmV3IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMTBweCIKK1BBU1MgQ2hhbmdl
IHRhcmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1l
bGVtZW50IGJ5IHNldHRpbmcgdGFyZ2V0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGFuIGV4
aXN0aW5nIHRvIGEgZGlmZmVyZW50IGV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRpbmcg
cHNldWRvRWxlbWVudC4gCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0
byBhIGRpZmZlcmVudCBleGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4g
CitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBl
eGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5nIHBzZXVkb0VsZW1lbnQuIAorUEFTUyBD
aGFuZ2UgdGFyZ2V0IGZyb20gbnVsbCB0byBhIG5vbi1leGlzdGluZyBwc2V1ZG9FbGVtZW50IHNl
dHRpbmcgdGFyZ2V0IGZpcnN0LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIG51bGwgdG8gYSBu
b24tZXhpc3RpbmcgcHNldWRvRWxlbWVudCBzZXR0aW5nIHBzZXVkb0VsZW1lbnQgZmlyc3QuIAog
UEFTUyBDaGFuZ2UgdGFyZ2V0IGZyb20gYSBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgdG8g
dGhlIG9yaWdpbmF0aW5nIGVsZW1lbnQuIAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20gYW4gZXhp
c3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5IHNldHRp
bmcgdGFyZ2V0LiBhc3NlcnRfZXF1YWxzOiBBbmltYXRpb24gdGFyZ2V0cyBzcGVjaWZpZWQgcHNl
dWRvLWVsZW1lbnQgKHBzZXVkby1zZWxlY3RvcikgZXhwZWN0ZWQgKHN0cmluZykgIjo6YmVmb3Jl
IiBidXQgZ290ICh1bmRlZmluZWQpIHVuZGVmaW5lZAotRkFJTCBDaGFuZ2UgdGFyZ2V0IGZyb20g
YW4gZXhpc3RpbmcgdG8gYSBkaWZmZXJlbnQgbm9uLWV4aXN0aW5nIHBzZXVkby1lbGVtZW50IGJ5
IHNldHRpbmcgcHNldWRvRWxlbWVudC4gYXNzZXJ0X2VxdWFsczogVmFsdWUgb2YgMm5kIGVsZW1l
bnQgKGN1cnJlbnRseSB0YXJnZXRlZCkgYWZ0ZXIgY2hhbmdpbmcgdGhlIGVmZmVjdCB0YXJnZXQg
ZXhwZWN0ZWQgIjUwcHgiIGJ1dCBnb3QgIjIwcHgiCi1GQUlMIENoYW5nZSB0YXJnZXQgZnJvbSBh
IG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQg
Ynkgc2V0dGluZyB0YXJnZXQuIGFzc2VydF9lcXVhbHM6IEFuaW1hdGlvbiB0YXJnZXRzIHNwZWNp
ZmllZCBwc2V1ZG8tZWxlbWVudCAocHNldWRvLXNlbGVjdG9yKSBleHBlY3RlZCAoc3RyaW5nKSAi
OjpiZWZvcmUiIGJ1dCBnb3QgKHVuZGVmaW5lZCkgdW5kZWZpbmVkCi1GQUlMIENoYW5nZSB0YXJn
ZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRv
LWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVtZW50LiBhc3NlcnRfZXF1YWxzOiBWYWx1ZSBv
ZiAybmQgZWxlbWVudCAoY3VycmVudGx5IHRhcmdldGVkKSBhZnRlciBjaGFuZ2luZyB0aGUgZWZm
ZWN0IHRhcmdldCBleHBlY3RlZCAiNTBweCIgYnV0IGdvdCAiMjBweCIKK1BBU1MgQ2hhbmdlIHRh
cmdldCBmcm9tIGFuIGV4aXN0aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8t
ZWxlbWVudCBieSBzZXR0aW5nIHRhcmdldC4gCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhbiBl
eGlzdGluZyB0byBhIGRpZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0
dGluZyBwc2V1ZG9FbGVtZW50LiAKK1BBU1MgQ2hhbmdlIHRhcmdldCBmcm9tIGEgbm9uLWV4aXN0
aW5nIHRvIGEgZGlmZmVyZW50IG5vbi1leGlzdGluZyBwc2V1ZG8tZWxlbWVudCBieSBzZXR0aW5n
IHRhcmdldC4gCitQQVNTIENoYW5nZSB0YXJnZXQgZnJvbSBhIG5vbi1leGlzdGluZyB0byBhIGRp
ZmZlcmVudCBub24tZXhpc3RpbmcgcHNldWRvLWVsZW1lbnQgYnkgc2V0dGluZyBwc2V1ZG9FbGVt
ZW50LiAKIAo=
</data>
<flag name="review"
          id="411937"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>