<?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>208800</bug_id>
          
          <creation_ts>2020-03-09 01:14:09 -0700</creation_ts>
          <short_desc>Implement wildcard behavior for Cross-Origin-Expose-Headers</short_desc>
          <delta_ts>2020-06-01 03:03:18 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Rob Buis">rbuis</reporter>
          <assigned_to name="Rob Buis">rbuis</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1627689</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-09 01:14:09 -0700</bug_when>
    <thetext>Implement wildcard behavior for Cross-Origin-Expose-Headers [1] while also
checking for credentials mode.

[1] https://fetch.spec.whatwg.org/#ref-for-concept-response-cors-exposed-header-name-list%E2%91%A2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627690</commentid>
    <comment_count>1</comment_count>
      <attachid>393014</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-09 01:19:57 -0700</bug_when>
    <thetext>Created attachment 393014
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627702</commentid>
    <comment_count>2</comment_count>
      <attachid>393018</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-09 02:28:42 -0700</bug_when>
    <thetext>Created attachment 393018
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627703</commentid>
    <comment_count>3</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-09 02:33:11 -0700</bug_when>
    <thetext>Thoughts about the patch:
- not too fond of PerformExposeAllHeadersCheck name.
- was thinking of moving ResourceResponseBase::filter to FetchIdioms but then lazyInit can not be called.
- was thinking of merging sanitizing and filter code paths but again it depends on lazyInit usage.
- not sure what lazyInit would do (it differs per platform AFAIK)? The comment says it removes some headers fields but which?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1627710</commentid>
    <comment_count>4</comment_count>
      <attachid>393018</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-09 03:26:15 -0700</bug_when>
    <thetext>Comment on attachment 393018
Patch

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

&gt; Source/WebCore/platform/network/ResourceResponseBase.cpp:451
&gt; +        if (type == SanitizationType::CrossOriginSafeWithoutCredentials &amp;&amp; corsSafeHeaderSet.contains(&quot;*&quot;))

I do not think we need the type here.
If the header name is &apos;*&apos; and credentials are true, the load will fail and we probably do not need to do any sanitisation.
Hopefully, we can simplify the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628342</commentid>
    <comment_count>5</comment_count>
      <attachid>393169</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-10 11:37:33 -0700</bug_when>
    <thetext>Created attachment 393169
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628388</commentid>
    <comment_count>6</comment_count>
      <attachid>393018</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-10 14:31:15 -0700</bug_when>
    <thetext>Comment on attachment 393018
Patch

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

&gt;&gt; Source/WebCore/platform/network/ResourceResponseBase.cpp:451
&gt;&gt; +        if (type == SanitizationType::CrossOriginSafeWithoutCredentials &amp;&amp; corsSafeHeaderSet.contains(&quot;*&quot;))
&gt; 
&gt; I do not think we need the type here.
&gt; If the header name is &apos;*&apos; and credentials are true, the load will fail and we probably do not need to do any sanitisation.
&gt; Hopefully, we can simplify the patch.

I made a logic error in one of the patches, but now that I fixed that I was a able to verify that indeed the sanitization part can be removed.
Sadly that is what I felt was the clean part of the code! If you have suggestions to clean up the filter related code, let me know, I put some thoughts about it in one of the comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628564</commentid>
    <comment_count>7</comment_count>
      <attachid>393169</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-11 01:46:41 -0700</bug_when>
    <thetext>Comment on attachment 393169
Patch

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

&gt; Source/WebCore/Modules/fetch/FetchResponse.cpp:337
&gt; +    m_response.m_filteredResponse = ResourceResponseBase::filter(resourceResponse, m_response.m_performExposeAllHeadersCheck);

What about XHR here? Can we add a test?
Probably DocumentThreadableLoader should do the filtering.

&gt; Source/WebCore/Modules/fetch/FetchResponse.h:168
&gt; +    ResourceResponse::PerformExposeAllHeadersCheck m_performExposeAllHeadersCheck { ResourceResponse::PerformExposeAllHeadersCheck::No };

This should probably be stored in BodyLoader instead.
Ideally, we would pass FetchOptions::Credentials to match the spec but FetchOptions is not (yet) in WebCore/platform.

&gt; Source/WebCore/platform/network/ResourceResponseBase.cpp:184
&gt; +        return filteredResponse;

Another strategy would be to remove Access-Control-Expose-Header header when we are doing AccessControlAllowOrigin check when its value is &apos;*&apos; and credentials mode is include.
Not sure whether that would be simpler though. Your approach is probably better.

&gt; Source/WebCore/platform/network/ResourceResponseBase.h:197
&gt; +    static ResourceResponse filter(const ResourceResponse&amp;, PerformExposeAllHeadersCheck = PerformExposeAllHeadersCheck::No);

Let&apos;s not have a default value to be sure of what we are doing.
Or change it to Yes as a default.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628617</commentid>
    <comment_count>8</comment_count>
      <attachid>393232</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-11 06:22:44 -0700</bug_when>
    <thetext>Created attachment 393232
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628622</commentid>
    <comment_count>9</comment_count>
      <attachid>393235</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-11 07:04:23 -0700</bug_when>
    <thetext>Created attachment 393235
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1628785</commentid>
    <comment_count>10</comment_count>
      <attachid>393272</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-11 12:24:02 -0700</bug_when>
    <thetext>Created attachment 393272
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629078</commentid>
    <comment_count>11</comment_count>
      <attachid>393345</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-12 00:30:13 -0700</bug_when>
    <thetext>Created attachment 393345
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629086</commentid>
    <comment_count>12</comment_count>
      <attachid>393169</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-12 01:06:17 -0700</bug_when>
    <thetext>Comment on attachment 393169
Patch

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

&gt;&gt; Source/WebCore/Modules/fetch/FetchResponse.cpp:337
&gt;&gt; +    m_response.m_filteredResponse = ResourceResponseBase::filter(resourceResponse, m_response.m_performExposeAllHeadersCheck);
&gt; 
&gt; What about XHR here? Can we add a test?
&gt; Probably DocumentThreadableLoader should do the filtering.

Sure, I added xhr/cors-expose-star.sub.any.html. Indeed DocumentThreadableLoader needed to do filtering.

&gt;&gt; Source/WebCore/Modules/fetch/FetchResponse.h:168
&gt;&gt; +    ResourceResponse::PerformExposeAllHeadersCheck m_performExposeAllHeadersCheck { ResourceResponse::PerformExposeAllHeadersCheck::No };
&gt; 
&gt; This should probably be stored in BodyLoader instead.
&gt; Ideally, we would pass FetchOptions::Credentials to match the spec but FetchOptions is not (yet) in WebCore/platform.

I stored it in BodyLoader now.

&gt;&gt; Source/WebCore/platform/network/ResourceResponseBase.cpp:184
&gt;&gt; +        return filteredResponse;
&gt; 
&gt; Another strategy would be to remove Access-Control-Expose-Header header when we are doing AccessControlAllowOrigin check when its value is &apos;*&apos; and credentials mode is include.
&gt; Not sure whether that would be simpler though. Your approach is probably better.

I hope so :)

&gt;&gt; Source/WebCore/platform/network/ResourceResponseBase.h:197
&gt;&gt; +    static ResourceResponse filter(const ResourceResponse&amp;, PerformExposeAllHeadersCheck = PerformExposeAllHeadersCheck::No);
&gt; 
&gt; Let&apos;s not have a default value to be sure of what we are doing.
&gt; Or change it to Yes as a default.

I removed the default value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629108</commentid>
    <comment_count>13</comment_count>
      <attachid>393345</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-12 03:04:00 -0700</bug_when>
    <thetext>Comment on attachment 393345
Patch

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

&gt; Source/WebCore/Modules/fetch/FetchResponse.cpp:59
&gt; +        fetchResponse-&gt;m_filteredResponse = ResourceResponseBase::filter(fetchResponse-&gt;m_internalResponse, ResourceResponse::PerformExposeAllHeadersCheck::Yes);

We might want some tests for this one as well.
This might be testable using DOMCache or response clone.

&gt; Source/WebCore/Modules/fetch/FetchResponse.cpp:250
&gt;      if (!response-&gt;m_bodyLoader-&gt;start(context, request))

Let&apos;s have body loader computes this in start, this will remove performExposeAllHeadersCheck().
I would have body loader store the credentials mode and compute whether doing the check based on that in didReceiveResponse.

&gt; Source/WebCore/loader/DocumentThreadableLoader.cpp:396
&gt; +        m_client-&gt;didReceiveResponse(identifier, ResourceResponseBase::filter(response, m_options.credentials == FetchOptions::Credentials::Include ? ResourceResponse::PerformExposeAllHeadersCheck::No : ResourceResponse::PerformExposeAllHeadersCheck::Yes));

s/ResourceResponseBase/ResourceResponse/

&gt; Source/WebCore/loader/DocumentThreadableLoader.cpp:469
&gt; +            m_client-&gt;didReceiveResponse(identifier, ResourceResponseBase::filter(response, m_options.credentials == FetchOptions::Credentials::Include ? ResourceResponse::PerformExposeAllHeadersCheck::No : ResourceResponse::PerformExposeAllHeadersCheck::Yes));

s/ResourceResponseBase/ResourceResponse/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629116</commentid>
    <comment_count>14</comment_count>
      <attachid>393354</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-12 03:27:05 -0700</bug_when>
    <thetext>Created attachment 393354
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629163</commentid>
    <comment_count>15</comment_count>
      <attachid>393370</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-12 06:55:14 -0700</bug_when>
    <thetext>Created attachment 393370
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629180</commentid>
    <comment_count>16</comment_count>
      <attachid>393345</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-12 07:50:00 -0700</bug_when>
    <thetext>Comment on attachment 393345
Patch

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

&gt;&gt; Source/WebCore/Modules/fetch/FetchResponse.cpp:59
&gt;&gt; +        fetchResponse-&gt;m_filteredResponse = ResourceResponseBase::filter(fetchResponse-&gt;m_internalResponse, ResourceResponse::PerformExposeAllHeadersCheck::Yes);
&gt; 
&gt; We might want some tests for this one as well.
&gt; This might be testable using DOMCache or response clone.

I am not even sure what the spec says here. But I&apos;ll try to work on it, response clone seems like a good candidate to use.

&gt;&gt; Source/WebCore/Modules/fetch/FetchResponse.cpp:250
&gt;&gt;      if (!response-&gt;m_bodyLoader-&gt;start(context, request))
&gt; 
&gt; Let&apos;s have body loader computes this in start, this will remove performExposeAllHeadersCheck().
&gt; I would have body loader store the credentials mode and compute whether doing the check based on that in didReceiveResponse.

Done, that is cleaner indeed.

&gt;&gt; Source/WebCore/loader/DocumentThreadableLoader.cpp:396
&gt;&gt; +        m_client-&gt;didReceiveResponse(identifier, ResourceResponseBase::filter(response, m_options.credentials == FetchOptions::Credentials::Include ? ResourceResponse::PerformExposeAllHeadersCheck::No : ResourceResponse::PerformExposeAllHeadersCheck::Yes));
&gt; 
&gt; s/ResourceResponseBase/ResourceResponse/

Done. Note that I did not come up with it :)

&gt;&gt; Source/WebCore/loader/DocumentThreadableLoader.cpp:469
&gt;&gt; +            m_client-&gt;didReceiveResponse(identifier, ResourceResponseBase::filter(response, m_options.credentials == FetchOptions::Credentials::Include ? ResourceResponse::PerformExposeAllHeadersCheck::No : ResourceResponse::PerformExposeAllHeadersCheck::Yes));
&gt; 
&gt; s/ResourceResponseBase/ResourceResponse/

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629200</commentid>
    <comment_count>17</comment_count>
      <attachid>393370</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-12 08:38:06 -0700</bug_when>
    <thetext>Comment on attachment 393370
Patch

Clearing flags on attachment: 393370

Committed r258330: &lt;https://trac.webkit.org/changeset/258330&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629201</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-12 08:38:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629203</commentid>
    <comment_count>19</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-12 08:39:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/60371727&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1629597</commentid>
    <comment_count>20</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-03-13 07:37:01 -0700</bug_when>
    <thetext>For the record, the test was committed to WPT (https://github.com/web-platform-tests/wpt/pull/22219).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393014</attachid>
            <date>2020-03-09 01:19:57 -0700</date>
            <delta_ts>2020-03-09 02:28:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200309091956.patch</filename>
            <type>text/plain</type>
            <size>23989</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzRmNzRmN2MwZGY4NjU0
NWJkNDk3MmU2NDBjNjFhNWRmOWE3YzYwNC4uNjhhMjBiZDAyNzVmM2UwMTQxMTA3MzYyNzJiYWZm
MDNiM2U1MjI3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTAzLTA5ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlv
ciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3aGlsZSBhbHNvCisgICAgICAg
IGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAgICAgIFRlc3RzOiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXIuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwK
KyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwKKyAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMuaHRtbAorCisg
ICAgICAgIFsxXSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jcmVmLWZvci1jb25jZXB0
LXJlc3BvbnNlLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZS1saXN0JUUyJTkxJUEyCisKKyAgICAg
ICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6
Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNo
L0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVz
cG9uc2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2VCYXNlOjpm
aWx0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXpl
SFRUUEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXplSFRUUEhlYWRlckZpZWxkcyk6CisgICAgICAg
ICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oOgorCiAyMDIwLTAzLTA4
ICBTYWlkIEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CiAKICAgICAgICAg
Q2FudmFzIGRyYXdpbmcgY29tbWFuZHMgaGF2ZSB0byBiZSBmbHVzaGVkIHRvIHRoZSBHUFVQcm9j
ZXNzIGluIGJhdGNoZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNGM1ZTEwNjc1ZjIxMmNhZmQ1MzI4YTgwNmFkZjll
MTIwNTFkMzZlNy4uNWQ4ZmRjNzg1NWIyYWJhZTE5ZWFjY2U2ZDI5YjEyNGMwNjY2NWZlNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwzNSBAQAorMjAyMC0wMy0wOSAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2Fs
aWEuY29tPgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlvciBmb3IgQ3Jvc3Mt
T3JpZ2luLUV4cG9zZS1IZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMDg4MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGFwdCB0byBBUEkgY2hhbmdlLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1Jlc291cmNlTG9hZGVyOjpkZXRlcm1pbmVDcm9zc09yaWdpblNhbml0YXRpb25UeXBlIGNvbnN0
KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRpZFJldHJp
ZXZlQ2FjaGVFbnRyeSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNl
TG9hZGVyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1NvY2tldENoYW5uZWwu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU29ja2V0Q2hhbm5lbDo6ZGlkUmVjZWl2ZUhh
bmRzaGFrZVJlc3BvbnNlKToKKworMjAyMC0wMy0wOCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIE1vdmUgVVJMIHNjaGVtZSBjaGVjayB0byBOZXR3b3JrTG9hZENoZWNr
ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MTky
NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpkZXRlcm1pbmVDcm9zc09yaWdpblNhbml0YXRpb25UeXBl
IGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRp
ZFJldHJpZXZlQ2FjaGVFbnRyeSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1NvY2tldENo
YW5uZWwuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU29ja2V0Q2hhbm5lbDo6ZGlkUmVj
ZWl2ZUhhbmRzaGFrZVJlc3BvbnNlKToKKwogMjAyMC0wMy0wOCAgU2FpZCBBYm91LUhhbGxhd2Eg
IDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgogCiAgICAgICAgIENhbnZhcyBkcmF3aW5nIGNvbW1h
bmRzIGhhdmUgdG8gYmUgZmx1c2hlZCB0byB0aGUgR1BVUHJvY2VzcyBpbiBiYXRjaGVzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcAppbmRleCA3YWEw
MTFjYTUxMjFiYzBlZGNlZGYyNjk3NzA3OGIyMmFhMzRlZjQzLi4zODg1YjIyNTM5YzMwNDg1ODVl
YzA4ZDQ4NTliMGE2YWVjYzUxOThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hSZXNwb25zZS5jcHAKQEAgLTI0NCw2ICsyNDQsOSBAQCB2b2lkIEZldGNoUmVzcG9u
c2U6OmZldGNoKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEZldGNoUmVxdWVzdCYg
cmVxdWVzdAogCiAgICAgcmVzcG9uc2UtPmFkZEFib3J0U3RlcHMocmVxdWVzdC5zaWduYWwoKSk7
CiAKKyAgICBpZiAocmVxdWVzdC5mZXRjaE9wdGlvbnMoKS5jcmVkZW50aWFscyA9PSBGZXRjaE9w
dGlvbnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlKQorICAgICAgICByZXNwb25zZS0+bV9wZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrID0gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjazo6WWVzOworCiAgICAgcmVzcG9uc2UtPm1fYm9keUxvYWRlciA9IG1ha2VV
bmlxdWU8Qm9keUxvYWRlcj4ocmVzcG9uc2UuZ2V0KCksIFdURk1vdmUocmVzcG9uc2VDYWxsYmFj
aykpOwogICAgIGlmICghcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+c3RhcnQoY29udGV4dCwgcmVx
dWVzdCkpCiAgICAgICAgIHJlc3BvbnNlLT5tX2JvZHlMb2FkZXIgPSBudWxscHRyOwpAQCAtMzMx
LDcgKzMzNCw3IEBAIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6On5Cb2R5TG9hZGVyKCkKIHN0
YXRpYyB1aW50NjRfdCBuZXh0T3BhcXVlTG9hZElkZW50aWZpZXIgeyAwIH07CiB2b2lkIEZldGNo
UmVzcG9uc2U6OkJvZHlMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNvdXJjZVJlc3BvbnNlKQogewotICAgIG1fcmVzcG9uc2UubV9maWx0ZXJlZFJl
c3BvbnNlID0gUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNvdXJjZVJlc3BvbnNlKTsK
KyAgICBtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291cmNlUmVzcG9uc2VCYXNl
OjpmaWx0ZXIocmVzb3VyY2VSZXNwb25zZSwgbV9yZXNwb25zZS5tX3BlcmZvcm1FeHBvc2VBbGxI
ZWFkZXJzQ2hlY2spOwogICAgIG1fcmVzcG9uc2UubV9pbnRlcm5hbFJlc3BvbnNlID0gcmVzb3Vy
Y2VSZXNwb25zZTsKICAgICBtX3Jlc3BvbnNlLm1faW50ZXJuYWxSZXNwb25zZS5zZXRUeXBlKG1f
cmVzcG9uc2UubV9maWx0ZXJlZFJlc3BvbnNlLT50eXBlKCkpOwogICAgIGlmIChyZXNvdXJjZVJl
c3BvbnNlLnRhaW50aW5nKCkgPT0gUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6Ok9wYXF1ZSkg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaAppbmRleCA5
N2FkNzI3M2U2YzA2MGI4NWYyOThjMmEyZTc5NjllNWVmZGNkYTVkLi5mMGQ3MjhhZDY0YTEwZmY1
M2Y0ZjU4ZmY4ZmQ0OTYyNTg2OWE3YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2Zl
dGNoL0ZldGNoUmVzcG9uc2UuaApAQCAtMTY1LDYgKzE2NSw3IEBAIHByaXZhdGU6CiAgICAgdWlu
dDY0X3QgbV9ib2R5U2l6ZVdpdGhQYWRkaW5nIHsgMCB9OwogICAgIHVpbnQ2NF90IG1fb3BhcXVl
TG9hZElkZW50aWZpZXIgeyAwIH07CiAgICAgUmVmUHRyPEFib3J0U2lnbmFsPiBtX2Fib3J0U2ln
bmFsOworICAgIFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sg
bV9wZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrIHsgUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9y
bUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6Tm8gfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VS
ZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJj
ZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggYmEwMjQ4NDBlMGJmMGNmMjM0ZmNhYzlmODMwODU5ZTM2
Mzc0NjQ1NS4uZjIwZjZiYmMyZjM1MDU0NzAyOGYwNWE4YzRiM2FmOTNhMjQzYWFhMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFz
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3Bv
bnNlQmFzZS5jcHAKQEAgLTE0OCw3ICsxNDgsNyBAQCBSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNl
UmVzcG9uc2VCYXNlOjpzeW50aGV0aWNSZWRpcmVjdFJlc3BvbnNlKGNvbnN0IFVSTCYgZnJvbQog
ICAgIHJldHVybiByZWRpcmVjdFJlc3BvbnNlOwogfQogCi1SZXNvdXJjZVJlc3BvbnNlIFJlc291
cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CitSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgcGVy
Zm9ybUNoZWNrKQogewogICAgIGlmIChyZXNwb25zZS50YWludGluZygpID09IFRhaW50aW5nOjpP
cGFxdWUpIHsKICAgICAgICAgUmVzb3VyY2VSZXNwb25zZSBvcGFxdWVSZXNwb25zZTsKQEAgLTE4
MCw2ICsxODAsOSBAQCBSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0
ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgZmlsdGVyZWRSZXNwb25z
ZS5zZXRUeXBlKFR5cGU6OkNvcnMpOwogCiAgICAgYXV0byBhY2Nlc3NDb250cm9sRXhwb3NlSGVh
ZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZl
SGFzaD4ocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250
cm9sRXhwb3NlSGVhZGVycykpOworICAgIGlmIChwZXJmb3JtQ2hlY2sgPT0gUGVyZm9ybUV4cG9z
ZUFsbEhlYWRlcnNDaGVjazo6WWVzICYmIGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJTZXQuY29u
dGFpbnMoIioiKSkKKyAgICAgICAgcmV0dXJuIGZpbHRlcmVkUmVzcG9uc2U7CisKICAgICBmaWx0
ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy51bmNvbW1vbkhlYWRlcnMoKS5yZW1vdmVB
bGxNYXRjaGluZyhbJl0oYXV0byYgZW50cnkpIHsKICAgICAgICAgcmV0dXJuICFpc0Nyb3NzT3Jp
Z2luU2FmZUhlYWRlcihlbnRyeS5rZXksIGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJTZXQpOwog
ICAgIH0pOwpAQCAtNDM3LDE4ICs0NDAsMjIgQEAgc3RhdGljIGJvb2wgaXNTYWZlQ3Jvc3NPcmln
aW5SZXNwb25zZUhlYWRlcihIVFRQSGVhZGVyTmFtZSBuYW1lKQogICAgICAgICB8fCBuYW1lID09
IEhUVFBIZWFkZXJOYW1lOjpYWFNTUHJvdGVjdGlvbjsKIH0KIAotdm9pZCBSZXNvdXJjZVJlc3Bv
bnNlQmFzZTo6c2FuaXRpemVIVFRQSGVhZGVyRmllbGRzQWNjb3JkaW5nVG9UYWludGluZygpCit2
b2lkIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRp
bmdUb1RhaW50aW5nKFNhbml0aXphdGlvblR5cGUgdHlwZSkKIHsKKyAgICBBU1NFUlQodHlwZSA9
PSBTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmVXaXRob3V0Q3JlZGVudGlhbHMgfHwg
dHlwZSA9PSBTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmVXaXRoQ3JlZGVudGlhbHMp
OwogICAgIHN3aXRjaCAobV90YWludGluZykgewogICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6
VGFpbnRpbmc6OkJhc2ljOgogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBSZXNvdXJjZVJlc3Bv
bnNlOjpUYWludGluZzo6Q29yczogeworICAgICAgICBhdXRvIGNvcnNTYWZlSGVhZGVyU2V0ID0g
cGFyc2VBY2Nlc3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4oaHR0
cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykp
OworICAgICAgICBpZiAodHlwZSA9PSBTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmVX
aXRob3V0Q3JlZGVudGlhbHMgJiYgY29yc1NhZmVIZWFkZXJTZXQuY29udGFpbnMoIioiKSkKKyAg
ICAgICAgICAgIHJldHVybjsKKwogICAgICAgICBIVFRQSGVhZGVyTWFwIGZpbHRlcmVkSGVhZGVy
czsKICAgICAgICAgZm9yIChhdXRvJiBoZWFkZXIgOiBtX2h0dHBIZWFkZXJGaWVsZHMuY29tbW9u
SGVhZGVycygpKSB7CiAgICAgICAgICAgICBpZiAoaXNTYWZlQ3Jvc3NPcmlnaW5SZXNwb25zZUhl
YWRlcihoZWFkZXIua2V5KSkKICAgICAgICAgICAgICAgICBmaWx0ZXJlZEhlYWRlcnMuYWRkKGhl
YWRlci5rZXksIFdURk1vdmUoaGVhZGVyLnZhbHVlKSk7CiAgICAgICAgIH0KLSAgICAgICAgYXV0
byBjb3JzU2FmZUhlYWRlclNldCA9IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93TGlzdDxBU0NJSUNh
c2VJbnNlbnNpdGl2ZUhhc2g+KGh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6QWNjZXNz
Q29udHJvbEV4cG9zZUhlYWRlcnMpKTsKICAgICAgICAgZm9yIChhdXRvJiBoZWFkZXJOYW1lIDog
Y29yc1NhZmVIZWFkZXJTZXQpIHsKICAgICAgICAgICAgIGlmICghZmlsdGVyZWRIZWFkZXJzLmNv
bnRhaW5zKGhlYWRlck5hbWUpKSB7CiAgICAgICAgICAgICAgICAgYXV0byB2YWx1ZSA9IG1faHR0
cEhlYWRlckZpZWxkcy5nZXQoaGVhZGVyTmFtZSk7CkBAIC00OTEsOCArNDk4LDkgQEAgdm9pZCBS
ZXNvdXJjZVJlc3BvbnNlQmFzZTo6c2FuaXRpemVIVFRQSGVhZGVyRmllbGRzKFNhbml0aXphdGlv
blR5cGUgdHlwZSkKICAgICAgICAgbV9odHRwSGVhZGVyRmllbGRzLnVuY29tbW9uSGVhZGVycygp
LmNsZWFyKCk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgY2FzZSBTYW5pdGl6YXRpb25U
eXBlOjpDcm9zc09yaWdpblNhZmU6Ci0gICAgICAgIHNhbml0aXplSFRUUEhlYWRlckZpZWxkc0Fj
Y29yZGluZ1RvVGFpbnRpbmcoKTsKKyAgICBjYXNlIFNhbml0aXphdGlvblR5cGU6OkNyb3NzT3Jp
Z2luU2FmZVdpdGhvdXRDcmVkZW50aWFsczoKKyAgICBjYXNlIFNhbml0aXphdGlvblR5cGU6OkNy
b3NzT3JpZ2luU2FmZVdpdGhDcmVkZW50aWFsczoKKyAgICAgICAgc2FuaXRpemVIVFRQSGVhZGVy
RmllbGRzQWNjb3JkaW5nVG9UYWludGluZyh0eXBlKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaApp
bmRleCAwOWM3NWIzNmViYWY4YjFkNTM2MDliZWYzNjBjNDBhOTNiYThjNDI0Li5mZTQwNTQ2MmRh
N2UzMDAyYjJiYTA1ZjdiZjNiZWY3ZTYyYmY0ZWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCkBAIC0xMTEsNyAr
MTExLDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIGNvbnN0IEhUVFBIZWFkZXJNYXAm
IGh0dHBIZWFkZXJGaWVsZHMoKSBjb25zdDsKICAgICB2b2lkIHNldEhUVFBIZWFkZXJGaWVsZHMo
SFRUUEhlYWRlck1hcCYmKTsKIAotICAgIGVudW0gY2xhc3MgU2FuaXRpemF0aW9uVHlwZSB7IFJl
ZGlyZWN0aW9uLCBSZW1vdmVDb29raWVzLCBDcm9zc09yaWdpblNhZmUgfTsKKyAgICBlbnVtIGNs
YXNzIFNhbml0aXphdGlvblR5cGUgeyBSZWRpcmVjdGlvbiwgUmVtb3ZlQ29va2llcywgQ3Jvc3NP
cmlnaW5TYWZlV2l0aG91dENyZWRlbnRpYWxzLCBDcm9zc09yaWdpblNhZmVXaXRoQ3JlZGVudGlh
bHMgfTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNhbml0aXplSFRUUEhlYWRlckZpZWxkcyhT
YW5pdGl6YXRpb25UeXBlKTsKIAogICAgIFN0cmluZyBodHRwSGVhZGVyRmllbGQoY29uc3QgU3Ry
aW5nJiBuYW1lKSBjb25zdDsKQEAgLTE5Myw3ICsxOTMsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBz
ZXRUYWludGluZyhUYWludGluZyB0YWludGluZykgeyBtX3RhaW50aW5nID0gdGFpbnRpbmc7IH0K
ICAgICBUYWludGluZyB0YWludGluZygpIGNvbnN0IHsgcmV0dXJuIG1fdGFpbnRpbmc7IH0KIAot
ICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNl
Jik7CisgICAgZW51bSBjbGFzcyBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrIDogdWludDhf
dCB7IFllcywgTm8gfTsKKyAgICBzdGF0aWMgUmVzb3VyY2VSZXNwb25zZSBmaWx0ZXIoY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYsIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgPSBQZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpObyk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMg
UmVzb3VyY2VSZXNwb25zZSBzeW50aGV0aWNSZWRpcmVjdFJlc3BvbnNlKGNvbnN0IFVSTCYgZnJv
bVVSTCwgY29uc3QgVVJMJiB0b1VSTCk7CiAKQEAgLTIyNyw3ICsyMjgsNyBAQCBwcm90ZWN0ZWQ6
CiBwcml2YXRlOgogICAgIHZvaWQgcGFyc2VDYWNoZUNvbnRyb2xEaXJlY3RpdmVzKCkgY29uc3Q7
CiAgICAgdm9pZCB1cGRhdGVIZWFkZXJQYXJzZWRTdGF0ZShIVFRQSGVhZGVyTmFtZSk7Ci0gICAg
dm9pZCBzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKCk7CisgICAg
dm9pZCBzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKFNhbml0aXph
dGlvblR5cGUpOwogCiBwcm90ZWN0ZWQ6CiAgICAgVVJMIG1fdXJsOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4
IGE0OGFjYzg2YjQ1ZGZmNmVjNzFmYjg4YjE2MzdlYjA1NDkwNzgwYjMuLmMyZWEzMzA2NmI4YjVj
NGQzOGQ4NDQwZjEzOTRiYTZjNTFkNTkwNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTU3MCw2ICs1NzAs
MTMgQEAgYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JD
U1BGcmFtZUFuY2VzdG9yc09yWEZyYW1lT3B0aW8KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK1Jl
c291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGUgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpk
ZXRlcm1pbmVDcm9zc09yaWdpblNhbml0YXRpb25UeXBlKCkgY29uc3QKK3sKKyAgICBpZiAobV9w
YXJhbWV0ZXJzLm9wdGlvbnMuY3JlZGVudGlhbHMgPT0gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFs
czo6SW5jbHVkZSkKKyAgICAgICAgcmV0dXJuIFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlv
blR5cGU6OkNyb3NzT3JpZ2luU2FmZVdpdGhDcmVkZW50aWFsczsKKyAgICByZXR1cm4gUmVzb3Vy
Y2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlwZTo6Q3Jvc3NPcmlnaW5TYWZlV2l0aG91dENyZWRl
bnRpYWxzOworfQorCiB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlUmVzcG9uc2UmJiByZWNlaXZlZFJlc3BvbnNlLCBSZXNwb25zZUNvbXBsZXRp
b25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxM
T1dFRCgiZGlkUmVjZWl2ZVJlc3BvbnNlOiAoaHR0cFN0YXR1c0NvZGU9JWQsIE1JTUVUeXBlPSUi
IFBVQkxJQ19MT0dfU1RSSU5HICIsIGV4cGVjdGVkQ29udGVudExlbmd0aD0lIiBQUklkNjQgIiwg
aGFzQ2FjaGVkRW50cnlGb3JWYWxpZGF0aW9uPSVkLCBoYXNOZXR3b3JrTG9hZENoZWNrZXI9JWQp
IiwgcmVjZWl2ZWRSZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpLCByZWNlaXZlZFJlc3BvbnNlLm1p
bWVUeXBlKCkudXRmOCgpLmRhdGEoKSwgcmVjZWl2ZWRSZXNwb25zZS5leHBlY3RlZENvbnRlbnRM
ZW5ndGgoKSwgISFtX2NhY2hlRW50cnlGb3JWYWxpZGF0aW9uLCAhIW1fbmV0d29ya0xvYWRDaGVj
a2VyKTsKQEAgLTYwOCw3ICs2MTUsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlUmVzcG9uc2UmJiByZWNlaXZlZFJlc3BvbgogCiAgICAg
aWYgKGlzTWFpblJlc291cmNlKCkgJiYgc2hvdWxkSW50ZXJydXB0TG9hZEZvckNTUEZyYW1lQW5j
ZXN0b3JzT3JYRnJhbWVPcHRpb25zKG1fcmVzcG9uc2UpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9H
X0VSUk9SX0lGX0FMTE9XRUQoImRpZFJlY2VpdmVSZXNwb25zZTogSW50ZXJydXB0aW5nIG1haW4g
cmVzb3VyY2UgbG9hZCBkdWUgdG8gQ1NQIGZyYW1lLWFuY2VzdG9ycyBvciBYLUZyYW1lLU9wdGlv
bnMiKTsKLSAgICAgICAgYXV0byByZXNwb25zZSA9IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxl
KFJlc291cmNlUmVzcG9uc2UgeyBtX3Jlc3BvbnNlIH0sIFJlc291cmNlUmVzcG9uc2U6OlNhbml0
aXphdGlvblR5cGU6OkNyb3NzT3JpZ2luU2FmZSk7CisgICAgICAgIGF1dG8gcmVzcG9uc2UgPSBz
YW5pdGl6ZVJlc3BvbnNlSWZQb3NzaWJsZShSZXNvdXJjZVJlc3BvbnNlIHsgbV9yZXNwb25zZSB9
LCBkZXRlcm1pbmVDcm9zc09yaWdpblNhbml0YXRpb25UeXBlKCkpOwogICAgICAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJSZXNvdXJjZUxvYWRlcjo6U3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNP
ckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZCB7IHJlc3BvbnNlIH0pOwogICAgICAgICByZXR1
cm4gY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOwogICAgIH0KQEAgLTYy
NSw3ICs2MzIsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlUmVzcG9uc2UmJiByZWNlaXZlZFJlc3BvbgogICAgICAgICB9CiAgICAgfQog
Ci0gICAgYXV0byByZXNwb25zZSA9IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFJlc291cmNl
UmVzcG9uc2UgeyBtX3Jlc3BvbnNlIH0sIFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5
cGU6OkNyb3NzT3JpZ2luU2FmZSk7CisgICAgYXV0byByZXNwb25zZSA9IHNhbml0aXplUmVzcG9u
c2VJZlBvc3NpYmxlKFJlc291cmNlUmVzcG9uc2UgeyBtX3Jlc3BvbnNlIH0sIGRldGVybWluZUNy
b3NzT3JpZ2luU2FuaXRhdGlvblR5cGUoKSk7CiAgICAgaWYgKGlzU3luY2hyb25vdXMoKSkgewog
ICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKCJkaWRSZWNlaXZlUmVzcG9uc2U6IFVzaW5n
IHJlc3BvbnNlIGZvciBzeW5jaHJvbm91cyBsb2FkIik7CiAgICAgICAgIG1fc3luY2hyb25vdXNM
b2FkRGF0YS0+cmVzcG9uc2UgPSBXVEZNb3ZlKHJlc3BvbnNlKTsKQEAgLTEwOTYsNyArMTEwMyw3
IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZXRyaWV2ZUNhY2hlRW50cnkoc3Rk
Ojp1bmlxdWVfcHRyPE5ldHdvcmtDYWNoZTo6CiAKICAgICBpZiAoaXNNYWluUmVzb3VyY2UoKSAm
JiBzaG91bGRJbnRlcnJ1cHRMb2FkRm9yQ1NQRnJhbWVBbmNlc3RvcnNPclhGcmFtZU9wdGlvbnMo
cmVzcG9uc2UpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQoImRpZFJl
dHJpZXZlQ2FjaGVFbnRyeTogU3RvcHBpbmcgbG9hZCBkdWUgdG8gQ1NQIEZyYW1lLUFuY2VzdG9y
cyBvciBYLUZyYW1lLU9wdGlvbnMiKTsKLSAgICAgICAgcmVzcG9uc2UgPSBzYW5pdGl6ZVJlc3Bv
bnNlSWZQb3NzaWJsZShXVEZNb3ZlKHJlc3BvbnNlKSwgUmVzb3VyY2VSZXNwb25zZTo6U2FuaXRp
emF0aW9uVHlwZTo6Q3Jvc3NPcmlnaW5TYWZlKTsKKyAgICAgICAgcmVzcG9uc2UgPSBzYW5pdGl6
ZVJlc3BvbnNlSWZQb3NzaWJsZShXVEZNb3ZlKHJlc3BvbnNlKSwgZGV0ZXJtaW5lQ3Jvc3NPcmln
aW5TYW5pdGF0aW9uVHlwZSgpKTsKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VM
b2FkZXI6OlN0b3BMb2FkaW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xp
Y3lEZW5pZWQgeyByZXNwb25zZSB9KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTExMDks
NyArMTExNiw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZXRyaWV2ZUNhY2hl
RW50cnkoc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtDYWNoZTo6CiAgICAgICAgIH0KICAgICB9CiAK
LSAgICByZXNwb25zZSA9IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFdURk1vdmUocmVzcG9u
c2UpLCBSZXNvdXJjZVJlc3BvbnNlOjpTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmUp
OworICAgIHJlc3BvbnNlID0gc2FuaXRpemVSZXNwb25zZUlmUG9zc2libGUoV1RGTW92ZShyZXNw
b25zZSksIGRldGVybWluZUNyb3NzT3JpZ2luU2FuaXRhdGlvblR5cGUoKSk7CiAgICAgaWYgKGlz
U3luY2hyb25vdXMoKSkgewogICAgICAgICBtX3N5bmNocm9ub3VzTG9hZERhdGEtPnJlc3BvbnNl
ID0gV1RGTW92ZShyZXNwb25zZSk7CiAgICAgICAgIHNlbmRSZXBseVRvU3luY2hyb25vdXNSZXF1
ZXN0KCptX3N5bmNocm9ub3VzTG9hZERhdGEsIGVudHJ5LT5idWZmZXIoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAppbmRl
eCA2N2UwOGQ1NjUwMTZlOGIzNWM1ZjNmOWFjMTU5MGRjMWNlZWZjNmVjLi40ZTM1NWIyZjNiOTc1
NTkwZjBlNzNmNGQ2NmJmYzM2YjExNThjOGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKQEAgLTE5Myw2ICsxOTMsNyBA
QCBwcml2YXRlOgogCiAgICAgdm9pZCBjb250aW51ZVdpbGxTZW5kUmVkaXJlY3RlZFJlcXVlc3Qo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJl
ZGlyZWN0UmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBPcHRpb25hbDxXZWJD
b3JlOjpBZENsaWNrQXR0cmlidXRpb246OkNvbnZlcnNpb24+JiYpOwogICAgIHZvaWQgZGlkRmlu
aXNoV2l0aFJlZGlyZWN0UmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmIHJlZGlyZWN0UmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYmKTsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlOjpTYW5pdGl6YXRpb25U
eXBlIGRldGVybWluZUNyb3NzT3JpZ2luU2FuaXRhdGlvblR5cGUoKSBjb25zdDsKICAgICBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlIHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6U2FuaXRpemF0
aW9uVHlwZSk7CiAKICAgICAvLyBDb250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1NvY2tldENoYW5uZWwuY3Bw
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU29ja2V0Q2hhbm5lbC5jcHAK
aW5kZXggM2RiZGNhNDRiY2ViMmFmYmQxOTNkNWYzMzA2NzU0OGMwMzI3MjM2NC4uYTg4ZmViYWU2
NWE5NjBiMTY1OTU4NjZjZjg4OWZhNjFhNDdiOWE4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU29ja2V0Q2hhbm5lbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU29ja2V0Q2hhbm5lbC5jcHAKQEAgLTEzMSw3ICsx
MzEsNyBAQCB2b2lkIE5ldHdvcmtTb2NrZXRDaGFubmVsOjpkaWRTZW5kSGFuZHNoYWtlUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQogCiB2b2lkIE5ldHdvcmtTb2NrZXRDaGFubmVs
OjpkaWRSZWNlaXZlSGFuZHNoYWtlUmVzcG9uc2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNl
KQogewotICAgIHJlc3BvbnNlLnNhbml0aXplSFRUUEhlYWRlckZpZWxkcyhSZXNvdXJjZVJlc3Bv
bnNlOjpTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmUpOworICAgIHJlc3BvbnNlLnNh
bml0aXplSFRUUEhlYWRlckZpZWxkcyhSZXNvdXJjZVJlc3BvbnNlOjpTYW5pdGl6YXRpb25UeXBl
OjpDcm9zc09yaWdpblNhZmVXaXRob3V0Q3JlZGVudGlhbHMpOwogICAgIHNlbmQoTWVzc2FnZXM6
OldlYlNvY2tldENoYW5uZWw6OkRpZFJlY2VpdmVIYW5kc2hha2VSZXNwb25zZSB7IHJlc3BvbnNl
IH0pOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBkZjE3MDQyZDcwM2Iy
OTI2MDZiMmI1ZDQwNjY4OWJiMjY0YjBjOTJlLi44MmFmZDJkMDg4NmIwMjMyNmQwNGQ2NDZlOTM0
N2Q2N2U3ZmNkMmU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
OSBAQAorMjAyMC0wMy0wOSAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAg
IEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlvciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFk
ZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4
MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRh
dGUgaW1wcm92ZWQgdGVzdCByZXN1bHRzLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0
YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1h
dGNoLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2Nh
Y2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2Zl
dGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0OgorCiAyMDIw
LTAzLTA2ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgRml4IG9yaWdp
bmFsLWNyb3Nzb3JpZ2luLWFwcGxpZWQuc3ViLmh0bWwgV1BUIHRlc3QKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMv
Y29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rh
ci5zdWIuYW55LWV4cGVjdGVkLnR4dAppbmRleCBkNzUwODMyZjcyZmZjMTE4OWMyZjM5ODhlMTBh
ZWMzMzAyNjI4MDBhLi5lYjU4NTNjZDMxNTk5ODQzNzcxMTBjZDdmNTRiNTI3YTQ2NWRmOGE2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zl
dGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29y
cy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAog
Ci1GQUlMIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAor
UEFTUyBCYXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAogUEFT
UyAqIGZvciBjcmVkZW50aWFsZWQgZmV0Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAotRkFJ
TCAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
KHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyAqIGNhbiBiZSBvbmUgb2Yg
c2V2ZXJhbCB2YWx1ZXMgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55
Lndvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IGQ3NTA4MzJmNzJmZmMxMTg5YzJmMzk4OGUxMGFlYzMzMDI2Mjgw
MGEuLmViNTg1M2NkMzE1OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2Nv
cnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9j
b3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUg
QEAKIAotRkFJTCBCYXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJYIiBidXQgZ290IChvYmplY3QpIG51
bGwKK1BBU1MgQmFzaWMgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCAK
IFBBU1MgKiBmb3IgY3JlZGVudGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSAK
LUZBSUwgKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIGFzc2VydF9lcXVhbHM6IGV4cGVj
dGVkIChzdHJpbmcpICJYIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgKiBjYW4gYmUgb25l
IG9mIHNldmVyYWwgdmFsdWVzIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZp
Y2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA0OWI4
YjQ1NWE4Mjc4MmFiNDAwYjk5YzcxOWMxYzJjODA2MjRiZjQwLi41ZmJkMGI2ZmE3NGY1OGZjYmM2
YTE4ZTE5NTI0YTExODFjNGQyZjY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZp
Y2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIx
LDcgKzIxLDcgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBDYWNo
ZS5tYXRjaCB3aXRoIGEgbm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBh
IG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3Bv
bnNlcyB0aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29ycy1l
eHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFsczog
ZXhwZWN0ZWQgKHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNvcnMt
ZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1FIHR5
cGUgc2hvdWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlMIE1J
TUUgdHlwZSBzaG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0
X2VxdWFsczogb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5
cGVzIHNob3VsZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWlu
IgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRw
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRw
cy1leHBlY3RlZC50eHQKaW5kZXggOWY0NTViMzczNzQ1MTZlNWNjNjJlNjEzNzZkYmVkYTE4NDJh
MWNiOC4uNzkxNWJlMmU2MGQwODRiODAwYmU1N2Y1OTBhMGQ5Njc2NWI2OTY2OCAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVk
LnR4dApAQCAtMjAsNyArMjAsNyBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1ZXN0
CiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNoZS5t
YXRjaCB3aXRoIGEgbmV0d29yayBlcnJvciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVjZXMg
bGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuIAot
RkFJTCBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBhc3Nl
cnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwK
K1BBU1MgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gCiBQ
QVNTIE1JTUUgdHlwZSBzaG91bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5
LiAKIEZBSUwgTUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0
aW9uLiBhc3NlcnRfZXF1YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3Bv
bnNlIG1pbWUgdHlwZXMgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3Qg
InRleHQvcGxhaW4iCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hl
LW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hl
LW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA5ZjQ1NWIzNzM3NDUxNmU1Y2M2MmU2MTM3
NmRiZWRhMTg0MmExY2I4Li43OTE1YmUyZTYwZDA4NGI4MDBiZTU3ZjU5MGEwZDk2NzY1YjY5NjY4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0
cHMtZXhwZWN0ZWQudHh0CkBAIC0yMCw3ICsyMCw3IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBQ
T1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5vbi0yeHggUmVzcG9uc2UgCiBQ
QVNTIENhY2hlLm1hdGNoIHdpdGggYSBuZXR3b3JrIGVycm9yIFJlc3BvbnNlIAogUEFTUyBDYWNo
ZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNv
cnJlY3RseS4gCi1GQUlMIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3Jy
ZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9i
amVjdCkgbnVsbAorUEFTUyBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29y
cmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBlIHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRl
ciBjb3JyZWN0bHkuIAogRkFJTCBNSU1FIHR5cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25z
ZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3Zlcndy
aXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRt
bCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
ZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVj
dGVkLnR4dAppbmRleCBlM2YwN2VjNTNmMzViMTRhMWVkZTFjN2FhMDhmMjhlNmU1ODhiZGFjLi5h
Yjg2YWU5NGU0ZmY4ZDZmNzc1N2EwMTFlOGEwNGZjMDc4MjJlOTQ5IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVy
LW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIENPUlMt
ZXhwb3NlZCBoZWFkZXIgbmFtZXMgZm9yIGEgcmVzcG9uc2UgZnJvbSBzdyBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQ09S
Uy1leHBvc2VkIGhlYWRlciBuYW1lcyBmb3IgYSByZXNwb25zZSBmcm9tIHN3IAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393018</attachid>
            <date>2020-03-09 02:28:42 -0700</date>
            <delta_ts>2020-06-01 03:03:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200309102840.patch</filename>
            <type>text/plain</type>
            <size>23344</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2EyYzZiNzJmYjY5NThm
ZTk5MThhYjdhNjQ0NWI0ODE1MGYzNmYxOC4uYjQxNjM4NTI5ZWEwMzAwNjhjOWIwOTdiZDliYzhh
ODhiM2JmOGY3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIwLTAzLTA5ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlv
ciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3aGlsZSBhbHNvCisgICAgICAg
IGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAgICAgIFRlc3RzOiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXIuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwK
KyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwKKyAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMuaHRtbAorCisg
ICAgICAgIFsxXSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jcmVmLWZvci1jb25jZXB0
LXJlc3BvbnNlLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZS1saXN0JUUyJTkxJUEyCisKKyAgICAg
ICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6
Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNo
L0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVz
cG9uc2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2VCYXNlOjpm
aWx0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXpl
SFRUUEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXplSFRUUEhlYWRlckZpZWxkcyk6CisgICAgICAg
ICogcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oOgorCiAyMDIwLTAzLTA3
ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBCZWdpbiBtb3Zpbmcg
b2ZmIG9mIGxpdmUgcmFuZ2VzIGZvciBXZWJLaXQgaW50ZXJuYWxzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDgwMDk4
NmJjOTNiYmRiOTlhYTg0MzlkNDI3M2VlMmJkNmI2OGNlNDMuLjE0YWNmNDk2ZGVjN2I2NjRiMTlj
N2E1NjQ5MDY3YjUzYWYwZTg3ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDMt
MDkgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgd2ls
ZGNhcmQgYmVoYXZpb3IgZm9yIENyb3NzLU9yaWdpbi1FeHBvc2UtSGVhZGVycworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODAwCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRhcHQgdG8gQVBJIGNoYW5n
ZS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHA6
CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGV0ZXJtaW5lQ3Jvc3NP
cmlnaW5TYW5pdGF0aW9uVHlwZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNv
dXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1Jlc291cmNlTG9hZGVyOjpkaWRSZXRyaWV2ZUNhY2hlRW50cnkpOgorICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL05ldHdvcmtTb2NrZXRDaGFubmVsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nv
Y2tldENoYW5uZWw6OmRpZFJlY2VpdmVIYW5kc2hha2VSZXNwb25zZSk6CisKIDIwMjAtMDMtMDkg
IENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtH
VEtdW1dQRV0gU3Vycm91bmRpbmcgdGV4dCBmb3IgaW5wdXQgbWV0aG9kcyBzaG91bGQgbm90IGJl
IGxpbWl0ZWQgdG8gdGhlIGN1cnJlbnQgcGFyYWdyYXBoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcAppbmRleCA3YWEwMTFjYTUxMjFiYzBlZGNlZGYy
Njk3NzA3OGIyMmFhMzRlZjQzLi4zODg1YjIyNTM5YzMwNDg1ODVlYzA4ZDQ4NTliMGE2YWVjYzUx
OThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9u
c2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5j
cHAKQEAgLTI0NCw2ICsyNDQsOSBAQCB2b2lkIEZldGNoUmVzcG9uc2U6OmZldGNoKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIEZldGNoUmVxdWVzdCYgcmVxdWVzdAogCiAgICAgcmVz
cG9uc2UtPmFkZEFib3J0U3RlcHMocmVxdWVzdC5zaWduYWwoKSk7CiAKKyAgICBpZiAocmVxdWVz
dC5mZXRjaE9wdGlvbnMoKS5jcmVkZW50aWFscyA9PSBGZXRjaE9wdGlvbnM6OkNyZWRlbnRpYWxz
OjpJbmNsdWRlKQorICAgICAgICByZXNwb25zZS0+bV9wZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0No
ZWNrID0gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVz
OworCiAgICAgcmVzcG9uc2UtPm1fYm9keUxvYWRlciA9IG1ha2VVbmlxdWU8Qm9keUxvYWRlcj4o
cmVzcG9uc2UuZ2V0KCksIFdURk1vdmUocmVzcG9uc2VDYWxsYmFjaykpOwogICAgIGlmICghcmVz
cG9uc2UtPm1fYm9keUxvYWRlci0+c3RhcnQoY29udGV4dCwgcmVxdWVzdCkpCiAgICAgICAgIHJl
c3BvbnNlLT5tX2JvZHlMb2FkZXIgPSBudWxscHRyOwpAQCAtMzMxLDcgKzMzNCw3IEBAIEZldGNo
UmVzcG9uc2U6OkJvZHlMb2FkZXI6On5Cb2R5TG9hZGVyKCkKIHN0YXRpYyB1aW50NjRfdCBuZXh0
T3BhcXVlTG9hZElkZW50aWZpZXIgeyAwIH07CiB2b2lkIEZldGNoUmVzcG9uc2U6OkJvZHlMb2Fk
ZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNvdXJjZVJl
c3BvbnNlKQogewotICAgIG1fcmVzcG9uc2UubV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VS
ZXNwb25zZUJhc2U6OmZpbHRlcihyZXNvdXJjZVJlc3BvbnNlKTsKKyAgICBtX3Jlc3BvbnNlLm1f
ZmlsdGVyZWRSZXNwb25zZSA9IFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIocmVzb3VyY2VS
ZXNwb25zZSwgbV9yZXNwb25zZS5tX3BlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2spOwogICAg
IG1fcmVzcG9uc2UubV9pbnRlcm5hbFJlc3BvbnNlID0gcmVzb3VyY2VSZXNwb25zZTsKICAgICBt
X3Jlc3BvbnNlLm1faW50ZXJuYWxSZXNwb25zZS5zZXRUeXBlKG1fcmVzcG9uc2UubV9maWx0ZXJl
ZFJlc3BvbnNlLT50eXBlKCkpOwogICAgIGlmIChyZXNvdXJjZVJlc3BvbnNlLnRhaW50aW5nKCkg
PT0gUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6Ok9wYXF1ZSkgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaAppbmRleCA5N2FkNzI3M2U2YzA2MGI4NWYy
OThjMmEyZTc5NjllNWVmZGNkYTVkLi5mMGQ3MjhhZDY0YTEwZmY1M2Y0ZjU4ZmY4ZmQ0OTYyNTg2
OWE3YjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVz
cG9uc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2Uu
aApAQCAtMTY1LDYgKzE2NSw3IEBAIHByaXZhdGU6CiAgICAgdWludDY0X3QgbV9ib2R5U2l6ZVdp
dGhQYWRkaW5nIHsgMCB9OwogICAgIHVpbnQ2NF90IG1fb3BhcXVlTG9hZElkZW50aWZpZXIgeyAw
IH07CiAgICAgUmVmUHRyPEFib3J0U2lnbmFsPiBtX2Fib3J0U2lnbmFsOworICAgIFJlc291cmNl
UmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgbV9wZXJmb3JtRXhwb3NlQWxs
SGVhZGVyc0NoZWNrIHsgUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnND
aGVjazo6Tm8gfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAK
aW5kZXggYmEwMjQ4NDBlMGJmMGNmMjM0ZmNhYzlmODMwODU5ZTM2Mzc0NjQ1NS4uZjIwZjZiYmMy
ZjM1MDU0NzAyOGYwNWE4YzRiM2FmOTNhMjQzYWFhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTE0
OCw3ICsxNDgsNyBAQCBSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzeW50
aGV0aWNSZWRpcmVjdFJlc3BvbnNlKGNvbnN0IFVSTCYgZnJvbQogICAgIHJldHVybiByZWRpcmVj
dFJlc3BvbnNlOwogfQogCi1SZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpm
aWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitSZXNvdXJjZVJlc3BvbnNl
IFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UsIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgcGVyZm9ybUNoZWNrKQogewogICAg
IGlmIChyZXNwb25zZS50YWludGluZygpID09IFRhaW50aW5nOjpPcGFxdWUpIHsKICAgICAgICAg
UmVzb3VyY2VSZXNwb25zZSBvcGFxdWVSZXNwb25zZTsKQEAgLTE4MCw2ICsxODAsOSBAQCBSZXNv
dXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgZmlsdGVyZWRSZXNwb25zZS5zZXRUeXBlKFR5cGU6OkNv
cnMpOwogCiAgICAgYXV0byBhY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVyU2V0ID0gcGFyc2VBY2Nl
c3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4ocmVzcG9uc2UuaHR0
cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykp
OworICAgIGlmIChwZXJmb3JtQ2hlY2sgPT0gUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6
WWVzICYmIGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJTZXQuY29udGFpbnMoIioiKSkKKyAgICAg
ICAgcmV0dXJuIGZpbHRlcmVkUmVzcG9uc2U7CisKICAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0
cEhlYWRlckZpZWxkcy51bmNvbW1vbkhlYWRlcnMoKS5yZW1vdmVBbGxNYXRjaGluZyhbJl0oYXV0
byYgZW50cnkpIHsKICAgICAgICAgcmV0dXJuICFpc0Nyb3NzT3JpZ2luU2FmZUhlYWRlcihlbnRy
eS5rZXksIGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJTZXQpOwogICAgIH0pOwpAQCAtNDM3LDE4
ICs0NDAsMjIgQEAgc3RhdGljIGJvb2wgaXNTYWZlQ3Jvc3NPcmlnaW5SZXNwb25zZUhlYWRlcihI
VFRQSGVhZGVyTmFtZSBuYW1lKQogICAgICAgICB8fCBuYW1lID09IEhUVFBIZWFkZXJOYW1lOjpY
WFNTUHJvdGVjdGlvbjsKIH0KIAotdm9pZCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6c2FuaXRpemVI
VFRQSGVhZGVyRmllbGRzQWNjb3JkaW5nVG9UYWludGluZygpCit2b2lkIFJlc291cmNlUmVzcG9u
c2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKFNhbml0
aXphdGlvblR5cGUgdHlwZSkKIHsKKyAgICBBU1NFUlQodHlwZSA9PSBTYW5pdGl6YXRpb25UeXBl
OjpDcm9zc09yaWdpblNhZmVXaXRob3V0Q3JlZGVudGlhbHMgfHwgdHlwZSA9PSBTYW5pdGl6YXRp
b25UeXBlOjpDcm9zc09yaWdpblNhZmVXaXRoQ3JlZGVudGlhbHMpOwogICAgIHN3aXRjaCAobV90
YWludGluZykgewogICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6OkJhc2ljOgog
ICAgICAgICByZXR1cm47CiAgICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6Q29y
czogeworICAgICAgICBhdXRvIGNvcnNTYWZlSGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250cm9s
QWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4oaHR0cEhlYWRlckZpZWxkKEhUVFBI
ZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykpOworICAgICAgICBpZiAodHlw
ZSA9PSBTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmVXaXRob3V0Q3JlZGVudGlhbHMg
JiYgY29yc1NhZmVIZWFkZXJTZXQuY29udGFpbnMoIioiKSkKKyAgICAgICAgICAgIHJldHVybjsK
KwogICAgICAgICBIVFRQSGVhZGVyTWFwIGZpbHRlcmVkSGVhZGVyczsKICAgICAgICAgZm9yIChh
dXRvJiBoZWFkZXIgOiBtX2h0dHBIZWFkZXJGaWVsZHMuY29tbW9uSGVhZGVycygpKSB7CiAgICAg
ICAgICAgICBpZiAoaXNTYWZlQ3Jvc3NPcmlnaW5SZXNwb25zZUhlYWRlcihoZWFkZXIua2V5KSkK
ICAgICAgICAgICAgICAgICBmaWx0ZXJlZEhlYWRlcnMuYWRkKGhlYWRlci5rZXksIFdURk1vdmUo
aGVhZGVyLnZhbHVlKSk7CiAgICAgICAgIH0KLSAgICAgICAgYXV0byBjb3JzU2FmZUhlYWRlclNl
dCA9IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93TGlzdDxBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+
KGh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6QWNjZXNzQ29udHJvbEV4cG9zZUhlYWRl
cnMpKTsKICAgICAgICAgZm9yIChhdXRvJiBoZWFkZXJOYW1lIDogY29yc1NhZmVIZWFkZXJTZXQp
IHsKICAgICAgICAgICAgIGlmICghZmlsdGVyZWRIZWFkZXJzLmNvbnRhaW5zKGhlYWRlck5hbWUp
KSB7CiAgICAgICAgICAgICAgICAgYXV0byB2YWx1ZSA9IG1faHR0cEhlYWRlckZpZWxkcy5nZXQo
aGVhZGVyTmFtZSk7CkBAIC00OTEsOCArNDk4LDkgQEAgdm9pZCBSZXNvdXJjZVJlc3BvbnNlQmFz
ZTo6c2FuaXRpemVIVFRQSGVhZGVyRmllbGRzKFNhbml0aXphdGlvblR5cGUgdHlwZSkKICAgICAg
ICAgbV9odHRwSGVhZGVyRmllbGRzLnVuY29tbW9uSGVhZGVycygpLmNsZWFyKCk7CiAgICAgICAg
IHJldHVybjsKICAgICB9Ci0gICAgY2FzZSBTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNh
ZmU6Ci0gICAgICAgIHNhbml0aXplSFRUUEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmco
KTsKKyAgICBjYXNlIFNhbml0aXphdGlvblR5cGU6OkNyb3NzT3JpZ2luU2FmZVdpdGhvdXRDcmVk
ZW50aWFsczoKKyAgICBjYXNlIFNhbml0aXphdGlvblR5cGU6OkNyb3NzT3JpZ2luU2FmZVdpdGhD
cmVkZW50aWFsczoKKyAgICAgICAgc2FuaXRpemVIVFRQSGVhZGVyRmllbGRzQWNjb3JkaW5nVG9U
YWludGluZyh0eXBlKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaAppbmRleCAwOWM3NWIzNmViYWY4
YjFkNTM2MDliZWYzNjBjNDBhOTNiYThjNDI0Li5mZTQwNTQ2MmRhN2UzMDAyYjJiYTA1ZjdiZjNi
ZWY3ZTYyYmY0ZWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L1Jlc291cmNlUmVzcG9uc2VCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCkBAIC0xMTEsNyArMTExLDcgQEAgcHVibGljOgog
ICAgIFdFQkNPUkVfRVhQT1JUIGNvbnN0IEhUVFBIZWFkZXJNYXAmIGh0dHBIZWFkZXJGaWVsZHMo
KSBjb25zdDsKICAgICB2b2lkIHNldEhUVFBIZWFkZXJGaWVsZHMoSFRUUEhlYWRlck1hcCYmKTsK
IAotICAgIGVudW0gY2xhc3MgU2FuaXRpemF0aW9uVHlwZSB7IFJlZGlyZWN0aW9uLCBSZW1vdmVD
b29raWVzLCBDcm9zc09yaWdpblNhZmUgfTsKKyAgICBlbnVtIGNsYXNzIFNhbml0aXphdGlvblR5
cGUgeyBSZWRpcmVjdGlvbiwgUmVtb3ZlQ29va2llcywgQ3Jvc3NPcmlnaW5TYWZlV2l0aG91dENy
ZWRlbnRpYWxzLCBDcm9zc09yaWdpblNhZmVXaXRoQ3JlZGVudGlhbHMgfTsKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHNhbml0aXplSFRUUEhlYWRlckZpZWxkcyhTYW5pdGl6YXRpb25UeXBlKTsK
IAogICAgIFN0cmluZyBodHRwSGVhZGVyRmllbGQoY29uc3QgU3RyaW5nJiBuYW1lKSBjb25zdDsK
QEAgLTE5Myw3ICsxOTMsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUYWludGluZyhUYWludGlu
ZyB0YWludGluZykgeyBtX3RhaW50aW5nID0gdGFpbnRpbmc7IH0KICAgICBUYWludGluZyB0YWlu
dGluZygpIGNvbnN0IHsgcmV0dXJuIG1fdGFpbnRpbmc7IH0KIAotICAgIHN0YXRpYyBSZXNvdXJj
ZVJlc3BvbnNlIGZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgZW51bSBjbGFz
cyBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrIDogdWludDhfdCB7IFllcywgTm8gfTsKKyAg
ICBzdGF0aWMgUmVzb3VyY2VSZXNwb25zZSBmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgPSBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0No
ZWNrOjpObyk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVzb3VyY2VSZXNwb25zZSBz
eW50aGV0aWNSZWRpcmVjdFJlc3BvbnNlKGNvbnN0IFVSTCYgZnJvbVVSTCwgY29uc3QgVVJMJiB0
b1VSTCk7CiAKQEAgLTIyNyw3ICsyMjgsNyBAQCBwcm90ZWN0ZWQ6CiBwcml2YXRlOgogICAgIHZv
aWQgcGFyc2VDYWNoZUNvbnRyb2xEaXJlY3RpdmVzKCkgY29uc3Q7CiAgICAgdm9pZCB1cGRhdGVI
ZWFkZXJQYXJzZWRTdGF0ZShIVFRQSGVhZGVyTmFtZSk7Ci0gICAgdm9pZCBzYW5pdGl6ZUhUVFBI
ZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKCk7CisgICAgdm9pZCBzYW5pdGl6ZUhUVFBI
ZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKFNhbml0aXphdGlvblR5cGUpOwogCiBwcm90
ZWN0ZWQ6CiAgICAgVVJMIG1fdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGE0OGFjYzg2YjQ1ZGZmNmVj
NzFmYjg4YjE2MzdlYjA1NDkwNzgwYjMuLmMyZWEzMzA2NmI4YjVjNGQzOGQ4NDQwZjEzOTRiYTZj
NTFkNTkwNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTU3MCw2ICs1NzAsMTMgQEAgYm9vbCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JDU1BGcmFtZUFuY2VzdG9yc09y
WEZyYW1lT3B0aW8KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK1Jlc291cmNlUmVzcG9uc2U6OlNh
bml0aXphdGlvblR5cGUgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpkZXRlcm1pbmVDcm9zc09yaWdp
blNhbml0YXRpb25UeXBlKCkgY29uc3QKK3sKKyAgICBpZiAobV9wYXJhbWV0ZXJzLm9wdGlvbnMu
Y3JlZGVudGlhbHMgPT0gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFsczo6SW5jbHVkZSkKKyAgICAg
ICAgcmV0dXJuIFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGU6OkNyb3NzT3JpZ2lu
U2FmZVdpdGhDcmVkZW50aWFsczsKKyAgICByZXR1cm4gUmVzb3VyY2VSZXNwb25zZTo6U2FuaXRp
emF0aW9uVHlwZTo6Q3Jvc3NPcmlnaW5TYWZlV2l0aG91dENyZWRlbnRpYWxzOworfQorCiB2b2lk
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlUmVzcG9u
c2UmJiByZWNlaXZlZFJlc3BvbnNlLCBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxl
dGlvbkhhbmRsZXIpCiB7CiAgICAgUkVMRUFTRV9MT0dfSUZfQUxMT1dFRCgiZGlkUmVjZWl2ZVJl
c3BvbnNlOiAoaHR0cFN0YXR1c0NvZGU9JWQsIE1JTUVUeXBlPSUiIFBVQkxJQ19MT0dfU1RSSU5H
ICIsIGV4cGVjdGVkQ29udGVudExlbmd0aD0lIiBQUklkNjQgIiwgaGFzQ2FjaGVkRW50cnlGb3JW
YWxpZGF0aW9uPSVkLCBoYXNOZXR3b3JrTG9hZENoZWNrZXI9JWQpIiwgcmVjZWl2ZWRSZXNwb25z
ZS5odHRwU3RhdHVzQ29kZSgpLCByZWNlaXZlZFJlc3BvbnNlLm1pbWVUeXBlKCkudXRmOCgpLmRh
dGEoKSwgcmVjZWl2ZWRSZXNwb25zZS5leHBlY3RlZENvbnRlbnRMZW5ndGgoKSwgISFtX2NhY2hl
RW50cnlGb3JWYWxpZGF0aW9uLCAhIW1fbmV0d29ya0xvYWRDaGVja2VyKTsKQEAgLTYwOCw3ICs2
MTUsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJl
c291cmNlUmVzcG9uc2UmJiByZWNlaXZlZFJlc3BvbgogCiAgICAgaWYgKGlzTWFpblJlc291cmNl
KCkgJiYgc2hvdWxkSW50ZXJydXB0TG9hZEZvckNTUEZyYW1lQW5jZXN0b3JzT3JYRnJhbWVPcHRp
b25zKG1fcmVzcG9uc2UpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQo
ImRpZFJlY2VpdmVSZXNwb25zZTogSW50ZXJydXB0aW5nIG1haW4gcmVzb3VyY2UgbG9hZCBkdWUg
dG8gQ1NQIGZyYW1lLWFuY2VzdG9ycyBvciBYLUZyYW1lLU9wdGlvbnMiKTsKLSAgICAgICAgYXV0
byByZXNwb25zZSA9IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFJlc291cmNlUmVzcG9uc2Ug
eyBtX3Jlc3BvbnNlIH0sIFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGU6OkNyb3Nz
T3JpZ2luU2FmZSk7CisgICAgICAgIGF1dG8gcmVzcG9uc2UgPSBzYW5pdGl6ZVJlc3BvbnNlSWZQ
b3NzaWJsZShSZXNvdXJjZVJlc3BvbnNlIHsgbV9yZXNwb25zZSB9LCBkZXRlcm1pbmVDcm9zc09y
aWdpblNhbml0YXRpb25UeXBlKCkpOwogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJSZXNvdXJj
ZUxvYWRlcjo6U3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBv
bGljeURlbmllZCB7IHJlc3BvbnNlIH0pOwogICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRs
ZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOwogICAgIH0KQEAgLTYyNSw3ICs2MzIsNyBAQCB2b2lk
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlUmVzcG9u
c2UmJiByZWNlaXZlZFJlc3BvbgogICAgICAgICB9CiAgICAgfQogCi0gICAgYXV0byByZXNwb25z
ZSA9IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFJlc291cmNlUmVzcG9uc2UgeyBtX3Jlc3Bv
bnNlIH0sIFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGU6OkNyb3NzT3JpZ2luU2Fm
ZSk7CisgICAgYXV0byByZXNwb25zZSA9IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFJlc291
cmNlUmVzcG9uc2UgeyBtX3Jlc3BvbnNlIH0sIGRldGVybWluZUNyb3NzT3JpZ2luU2FuaXRhdGlv
blR5cGUoKSk7CiAgICAgaWYgKGlzU3luY2hyb25vdXMoKSkgewogICAgICAgICBSRUxFQVNFX0xP
R19JRl9BTExPV0VEKCJkaWRSZWNlaXZlUmVzcG9uc2U6IFVzaW5nIHJlc3BvbnNlIGZvciBzeW5j
aHJvbm91cyBsb2FkIik7CiAgICAgICAgIG1fc3luY2hyb25vdXNMb2FkRGF0YS0+cmVzcG9uc2Ug
PSBXVEZNb3ZlKHJlc3BvbnNlKTsKQEAgLTEwOTYsNyArMTEwMyw3IEBAIHZvaWQgTmV0d29ya1Jl
c291cmNlTG9hZGVyOjpkaWRSZXRyaWV2ZUNhY2hlRW50cnkoc3RkOjp1bmlxdWVfcHRyPE5ldHdv
cmtDYWNoZTo6CiAKICAgICBpZiAoaXNNYWluUmVzb3VyY2UoKSAmJiBzaG91bGRJbnRlcnJ1cHRM
b2FkRm9yQ1NQRnJhbWVBbmNlc3RvcnNPclhGcmFtZU9wdGlvbnMocmVzcG9uc2UpKSB7CiAgICAg
ICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQoImRpZFJldHJpZXZlQ2FjaGVFbnRyeTog
U3RvcHBpbmcgbG9hZCBkdWUgdG8gQ1NQIEZyYW1lLUFuY2VzdG9ycyBvciBYLUZyYW1lLU9wdGlv
bnMiKTsKLSAgICAgICAgcmVzcG9uc2UgPSBzYW5pdGl6ZVJlc3BvbnNlSWZQb3NzaWJsZShXVEZN
b3ZlKHJlc3BvbnNlKSwgUmVzb3VyY2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlwZTo6Q3Jvc3NP
cmlnaW5TYWZlKTsKKyAgICAgICAgcmVzcG9uc2UgPSBzYW5pdGl6ZVJlc3BvbnNlSWZQb3NzaWJs
ZShXVEZNb3ZlKHJlc3BvbnNlKSwgZGV0ZXJtaW5lQ3Jvc3NPcmlnaW5TYW5pdGF0aW9uVHlwZSgp
KTsKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6OlN0b3BMb2FkaW5n
QWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQgeyByZXNwb25z
ZSB9KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTExMDksNyArMTExNiw3IEBAIHZvaWQg
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRSZXRyaWV2ZUNhY2hlRW50cnkoc3RkOjp1bmlxdWVf
cHRyPE5ldHdvcmtDYWNoZTo6CiAgICAgICAgIH0KICAgICB9CiAKLSAgICByZXNwb25zZSA9IHNh
bml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFdURk1vdmUocmVzcG9uc2UpLCBSZXNvdXJjZVJlc3Bv
bnNlOjpTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmUpOworICAgIHJlc3BvbnNlID0g
c2FuaXRpemVSZXNwb25zZUlmUG9zc2libGUoV1RGTW92ZShyZXNwb25zZSksIGRldGVybWluZUNy
b3NzT3JpZ2luU2FuaXRhdGlvblR5cGUoKSk7CiAgICAgaWYgKGlzU3luY2hyb25vdXMoKSkgewog
ICAgICAgICBtX3N5bmNocm9ub3VzTG9hZERhdGEtPnJlc3BvbnNlID0gV1RGTW92ZShyZXNwb25z
ZSk7CiAgICAgICAgIHNlbmRSZXBseVRvU3luY2hyb25vdXNSZXF1ZXN0KCptX3N5bmNocm9ub3Vz
TG9hZERhdGEsIGVudHJ5LT5idWZmZXIoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAppbmRleCA2N2UwOGQ1NjUwMTZlOGIz
NWM1ZjNmOWFjMTU5MGRjMWNlZWZjNmVjLi40ZTM1NWIyZjNiOTc1NTkwZjBlNzNmNGQ2NmJmYzM2
YjExNThjOGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtSZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Jlc291cmNlTG9hZGVyLmgKQEAgLTE5Myw2ICsxOTMsNyBAQCBwcml2YXRlOgogCiAgICAg
dm9pZCBjb250aW51ZVdpbGxTZW5kUmVkaXJlY3RlZFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlZGlyZWN0UmVxdWVzdCwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBPcHRpb25hbDxXZWJDb3JlOjpBZENsaWNrQXR0cmli
dXRpb246OkNvbnZlcnNpb24+JiYpOwogICAgIHZvaWQgZGlkRmluaXNoV2l0aFJlZGlyZWN0UmVz
cG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYmIHJlZGlyZWN0UmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKTsKKyAgICBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlOjpTYW5pdGl6YXRpb25UeXBlIGRldGVybWluZUNyb3Nz
T3JpZ2luU2FuaXRhdGlvblR5cGUoKSBjb25zdDsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlIHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlwZSk7CiAKICAgICAv
LyBDb250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1NvY2tldENoYW5uZWwuY3BwIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU29ja2V0Q2hhbm5lbC5jcHAKaW5kZXggM2RiZGNhNDRiY2Vi
MmFmYmQxOTNkNWYzMzA2NzU0OGMwMzI3MjM2NC4uYTg4ZmViYWU2NWE5NjBiMTY1OTU4NjZjZjg4
OWZhNjFhNDdiOWE4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrU29ja2V0Q2hhbm5lbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrU29ja2V0Q2hhbm5lbC5jcHAKQEAgLTEzMSw3ICsxMzEsNyBAQCB2b2lkIE5ldHdv
cmtTb2NrZXRDaGFubmVsOjpkaWRTZW5kSGFuZHNoYWtlUmVxdWVzdChSZXNvdXJjZVJlcXVlc3Qm
JiByZXF1ZXN0KQogCiB2b2lkIE5ldHdvcmtTb2NrZXRDaGFubmVsOjpkaWRSZWNlaXZlSGFuZHNo
YWtlUmVzcG9uc2UoUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQogewotICAgIHJlc3BvbnNl
LnNhbml0aXplSFRUUEhlYWRlckZpZWxkcyhSZXNvdXJjZVJlc3BvbnNlOjpTYW5pdGl6YXRpb25U
eXBlOjpDcm9zc09yaWdpblNhZmUpOworICAgIHJlc3BvbnNlLnNhbml0aXplSFRUUEhlYWRlckZp
ZWxkcyhSZXNvdXJjZVJlc3BvbnNlOjpTYW5pdGl6YXRpb25UeXBlOjpDcm9zc09yaWdpblNhZmVX
aXRob3V0Q3JlZGVudGlhbHMpOwogICAgIHNlbmQoTWVzc2FnZXM6OldlYlNvY2tldENoYW5uZWw6
OkRpZFJlY2VpdmVIYW5kc2hha2VSZXNwb25zZSB7IHJlc3BvbnNlIH0pOwogfQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBkZjE3MDQyZDcwM2IyOTI2MDZiMmI1ZDQwNjY4OWJi
MjY0YjBjOTJlLi44MmFmZDJkMDg4NmIwMjMyNmQwNGQ2NDZlOTM0N2Q2N2U3ZmNkMmU0IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMC0wMy0wOSAg
Um9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2Fy
ZCBiZWhhdmlvciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MDAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgaW1wcm92ZWQgdGVzdCBy
ZXN1bHRzLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2Nv
cnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hl
LXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2Vy
L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1o
ZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0OgorCiAyMDIwLTAzLTA2ICBSb2IgQnVpcyAg
PHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgRml4IG9yaWdpbmFsLWNyb3Nzb3JpZ2luLWFw
cGxpZWQuc3ViLmh0bWwgV1BUIHRlc3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5z
dWIuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVk
LnR4dAppbmRleCBkNzUwODMyZjcyZmZjMTE4OWMyZjM5ODhlMTBhZWMzMzAyNjI4MDBhLi5lYjU4
NTNjZDMxNTk5ODQzNzcxMTBjZDdmNTRiNTI3YTQ2NWRmOGE2IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMt
ZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFy
LnN1Yi5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEJhc2ljIEFjY2Vz
cy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBCYXNpYyBBY2Nlc3Mt
Q29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAogUEFTUyAqIGZvciBjcmVkZW50aWFs
ZWQgZmV0Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAotRkFJTCAqIGNhbiBiZSBvbmUgb2Yg
c2V2ZXJhbCB2YWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBn
b3QgKG9iamVjdCkgbnVsbAorUEFTUyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2Fw
aS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CmluZGV4
IGQ3NTA4MzJmNzJmZmMxMTg5YzJmMzk4OGUxMGFlYzMzMDI2MjgwMGEuLmViNTg1M2NkMzE1OTk4
NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rh
ci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1
Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBCYXNpYyBB
Y2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIChzdHJpbmcpICJYIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQmFzaWMgQWNj
ZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCAKIFBBU1MgKiBmb3IgY3JlZGVu
dGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSAKLUZBSUwgKiBjYW4gYmUgb25l
IG9mIHNldmVyYWwgdmFsdWVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJYIiBi
dXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVz
IAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0
Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2Nh
Y2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA0OWI4YjQ1NWE4Mjc4MmFiNDAwYjk5
YzcxOWMxYzJjODA2MjRiZjQwLi41ZmJkMGI2ZmE3NGY1OGZjYmM2YTE4ZTE5NTI0YTExODFjNGQy
ZjY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0
Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtl
ci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIxLDcgKzIxLDcgQEAgUEFTUyBD
YWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbm9u
LTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5ldHdvcmsgZXJyb3IgUmVz
cG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3BvbnNlcyB0aGF0IGNhbiBiZSBj
bG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29ycy1leHBvc2VkIGhlYWRlciBzaG91
bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykg
ImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hv
dWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1FIHR5cGUgc2hvdWxkIGJlIHNldCBm
cm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlMIE1JTUUgdHlwZSBzaG91bGQgYmUg
ZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFsczogb3JpZ2luYWwg
YW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCBl
eHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKaW5k
ZXggOWY0NTViMzczNzQ1MTZlNWNjNjJlNjEzNzZkYmVkYTE4NDJhMWNiOC4uNzkxNWJlMmU2MGQw
ODRiODAwYmU1N2Y1OTBhMGQ5Njc2NWI2OTY2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjAsNyArMjAs
NyBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1ZXN0CiBQQVNTIENhY2hlLm1hdGNo
IHdpdGggYSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0d29y
ayBlcnJvciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2VzIHRo
YXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuIAotRkFJTCBjb3JzLWV4cG9zZWQg
aGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBhc3NlcnRfZXF1YWxzOiBleHBlY3Rl
ZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgY29ycy1leHBvc2Vk
IGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gCiBQQVNTIE1JTUUgdHlwZSBzaG91
bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LiAKIEZBSUwgTUlNRSB0eXBl
IHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1YWxz
OiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMgc2hv
dWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVj
dGVkLnR4dAppbmRleCA5ZjQ1NWIzNzM3NDUxNmU1Y2M2MmU2MTM3NmRiZWRhMTg0MmExY2I4Li43
OTE1YmUyZTYwZDA4NGI4MDBiZTU3ZjU5MGEwZDk2NzY1YjY5NjY4IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9j
YWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBA
IC0yMCw3ICsyMCw3IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBBU1Mg
Q2FjaGUubWF0Y2ggd2l0aCBhIG5vbi0yeHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNoIHdp
dGggYSBuZXR3b3JrIGVycm9yIFJlc3BvbnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBS
ZXNwb25zZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlMIGNv
cnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBj
b3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1MgTUlN
RSB0eXBlIHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAogRkFJ
TCBNSU1FIHR5cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFz
c2VydF9lcXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWlt
ZSB0eXBlcyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9w
bGFpbiIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY29ycy1leHBvc2Vk
LWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRj
aC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBlM2Yw
N2VjNTNmMzViMTRhMWVkZTFjN2FhMDhmMjhlNmU1ODhiZGFjLi5hYjg2YWU5NGU0ZmY4ZDZmNzc1
N2EwMTFlOGEwNGZjMDc4MjJlOTQ5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRj
aC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVj
dGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIENPUlMtZXhwb3NlZCBoZWFkZXIgbmFt
ZXMgZm9yIGEgcmVzcG9uc2UgZnJvbSBzdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5n
KSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQ09SUy1leHBvc2VkIGhlYWRlciBu
YW1lcyBmb3IgYSByZXNwb25zZSBmcm9tIHN3IAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393169</attachid>
            <date>2020-03-10 11:37:33 -0700</date>
            <delta_ts>2020-03-11 06:22:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200310193731.patch</filename>
            <type>text/plain</type>
            <size>14804</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uZDNjNWYzZDI0MWRmNWU3ZGI0YzliZGRjYmU5OTc1
MGY0NDNlNWY5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIwLTAzLTEwICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlv
ciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3aGlsZSBhbHNvCisgICAgICAg
IGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAgICAgIFRlc3RzOiBpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS5odG1sCisgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXIuaHRtbAor
ICAgICAgICAgICAgICAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwK
KyAgICAgICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwKKyAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLmh0bWwKKyAgICAgICAgICAg
ICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMuaHRtbAorCisg
ICAgICAgIFsxXSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jcmVmLWZvci1jb25jZXB0
LXJlc3BvbnNlLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZS1saXN0JUUyJTkxJUEyCisKKyAgICAg
ICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6
Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNo
L0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVz
cG9uc2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2VCYXNlOjpm
aWx0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXpl
SFRUUEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmcpOgorICAgICAgICAqIHBsYXRmb3Jt
L25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaDoKKwogMjAyMC0wMy0xMCAgeW91ZW5uIGZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIFNhbXBsZUJ1ZmZlckRp
c3BsYXlMYXllciBzeW5jIElQQwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
ZXRjaC9GZXRjaFJlc3BvbnNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0
Y2hSZXNwb25zZS5jcHAKaW5kZXggN2FhMDExY2E1MTIxYmMwZWRjZWRmMjY5NzcwNzhiMjJhYTM0
ZWY0My4uMTU5ZTc4NGFjODljZWQ1M2I5YmQ0ZDk0MWJjYmY0NTg1N2U4MjI3NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCkBAIC0yNDQsNiAr
MjQ0LDkgQEAgdm9pZCBGZXRjaFJlc3BvbnNlOjpmZXRjaChTY3JpcHRFeGVjdXRpb25Db250ZXh0
JiBjb250ZXh0LCBGZXRjaFJlcXVlc3QmIHJlcXVlc3QKIAogICAgIHJlc3BvbnNlLT5hZGRBYm9y
dFN0ZXBzKHJlcXVlc3Quc2lnbmFsKCkpOwogCisgICAgaWYgKHJlcXVlc3QuZmV0Y2hPcHRpb25z
KCkuY3JlZGVudGlhbHMgIT0gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFsczo6SW5jbHVkZSkKKyAg
ICAgICAgcmVzcG9uc2UtPm1fcGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA9IFJlc291cmNl
UmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllczsKKwogICAgIHJlc3Bv
bnNlLT5tX2JvZHlMb2FkZXIgPSBtYWtlVW5pcXVlPEJvZHlMb2FkZXI+KHJlc3BvbnNlLmdldCgp
LCBXVEZNb3ZlKHJlc3BvbnNlQ2FsbGJhY2spKTsKICAgICBpZiAoIXJlc3BvbnNlLT5tX2JvZHlM
b2FkZXItPnN0YXJ0KGNvbnRleHQsIHJlcXVlc3QpKQogICAgICAgICByZXNwb25zZS0+bV9ib2R5
TG9hZGVyID0gbnVsbHB0cjsKQEAgLTMzMSw3ICszMzQsNyBAQCBGZXRjaFJlc3BvbnNlOjpCb2R5
TG9hZGVyOjp+Qm9keUxvYWRlcigpCiBzdGF0aWMgdWludDY0X3QgbmV4dE9wYXF1ZUxvYWRJZGVu
dGlmaWVyIHsgMCB9Owogdm9pZCBGZXRjaFJlc3BvbnNlOjpCb2R5TG9hZGVyOjpkaWRSZWNlaXZl
UmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzb3VyY2VSZXNwb25zZSkKIHsKLSAg
ICBtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291cmNlUmVzcG9uc2VCYXNlOjpm
aWx0ZXIocmVzb3VyY2VSZXNwb25zZSk7CisgICAgbV9yZXNwb25zZS5tX2ZpbHRlcmVkUmVzcG9u
c2UgPSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc291cmNlUmVzcG9uc2UsIG1fcmVz
cG9uc2UubV9wZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrKTsKICAgICBtX3Jlc3BvbnNlLm1f
aW50ZXJuYWxSZXNwb25zZSA9IHJlc291cmNlUmVzcG9uc2U7CiAgICAgbV9yZXNwb25zZS5tX2lu
dGVybmFsUmVzcG9uc2Uuc2V0VHlwZShtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZS0+dHlw
ZSgpKTsKICAgICBpZiAocmVzb3VyY2VSZXNwb25zZS50YWludGluZygpID09IFJlc291cmNlUmVz
cG9uc2U6OlRhaW50aW5nOjpPcGFxdWUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRj
aC9GZXRjaFJlc3BvbnNlLmgKaW5kZXggOTdhZDcyNzNlNmMwNjBiODVmMjk4YzJhMmU3OTY5ZTVl
ZmRjZGE1ZC4uZjBkNzI4YWQ2NGExMGZmNTNmNGY1OGZmOGZkNDk2MjU4NjlhN2I0NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKQEAgLTE2NSw2ICsx
NjUsNyBAQCBwcml2YXRlOgogICAgIHVpbnQ2NF90IG1fYm9keVNpemVXaXRoUGFkZGluZyB7IDAg
fTsKICAgICB1aW50NjRfdCBtX29wYXF1ZUxvYWRJZGVudGlmaWVyIHsgMCB9OwogICAgIFJlZlB0
cjxBYm9ydFNpZ25hbD4gbV9hYm9ydFNpZ25hbDsKKyAgICBSZXNvdXJjZVJlc3BvbnNlOjpQZXJm
b3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrIG1fcGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayB7
IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6Ok5vIH07CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwCmluZGV4IGJhMDI0ODQw
ZTBiZjBjZjIzNGZjYWM5ZjgzMDg1OWUzNjM3NDY0NTUuLmRlMWYzNGRjYzEyOGMxNjQyYTA5YzU2
Nzk3ZTViZGNiMGY4ZjM3NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwCkBAIC0xNDgsNyArMTQ4LDcgQEAg
UmVzb3VyY2VSZXNwb25zZSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6c3ludGhldGljUmVkaXJlY3RS
ZXNwb25zZShjb25zdCBVUkwmIGZyb20KICAgICByZXR1cm4gcmVkaXJlY3RSZXNwb25zZTsKIH0K
IAotUmVzb3VyY2VSZXNwb25zZSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQorUmVzb3VyY2VSZXNwb25zZSBSZXNvdXJjZVJlc3Bv
bnNlQmFzZTo6ZmlsdGVyKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBQZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrIHBlcmZvcm1DaGVjaykKIHsKICAgICBpZiAocmVzcG9uc2Uu
dGFpbnRpbmcoKSA9PSBUYWludGluZzo6T3BhcXVlKSB7CiAgICAgICAgIFJlc291cmNlUmVzcG9u
c2Ugb3BhcXVlUmVzcG9uc2U7CkBAIC0xODAsNiArMTgwLDkgQEAgUmVzb3VyY2VSZXNwb25zZSBS
ZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKQogICAgIGZpbHRlcmVkUmVzcG9uc2Uuc2V0VHlwZShUeXBlOjpDb3JzKTsKIAogICAgIGF1
dG8gYWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlclNldCA9IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93
TGlzdDxBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+KHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZChI
VFRQSGVhZGVyTmFtZTo6QWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlcnMpKTsKKyAgICBpZiAocGVy
Zm9ybUNoZWNrID09IFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllcyAmJiBhY2Nlc3ND
b250cm9sRXhwb3NlSGVhZGVyU2V0LmNvbnRhaW5zKCIqIikpCisgICAgICAgIHJldHVybiBmaWx0
ZXJlZFJlc3BvbnNlOworCiAgICAgZmlsdGVyZWRSZXNwb25zZS5tX2h0dHBIZWFkZXJGaWVsZHMu
dW5jb21tb25IZWFkZXJzKCkucmVtb3ZlQWxsTWF0Y2hpbmcoWyZdKGF1dG8mIGVudHJ5KSB7CiAg
ICAgICAgIHJldHVybiAhaXNDcm9zc09yaWdpblNhZmVIZWFkZXIoZW50cnkua2V5LCBhY2Nlc3ND
b250cm9sRXhwb3NlSGVhZGVyU2V0KTsKICAgICB9KTsKQEAgLTQ0MywxMiArNDQ2LDE1IEBAIHZv
aWQgUmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXplSFRUUEhlYWRlckZpZWxkc0FjY29yZGlu
Z1RvVGFpbnRpbmcoKQogICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6OkJhc2lj
OgogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6
Q29yczogeworICAgICAgICBhdXRvIGNvcnNTYWZlSGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250
cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4oaHR0cEhlYWRlckZpZWxkKEhU
VFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykpOworICAgICAgICBpZiAo
Y29yc1NhZmVIZWFkZXJTZXQuY29udGFpbnMoIioiKSkKKyAgICAgICAgICAgIHJldHVybjsKKwog
ICAgICAgICBIVFRQSGVhZGVyTWFwIGZpbHRlcmVkSGVhZGVyczsKICAgICAgICAgZm9yIChhdXRv
JiBoZWFkZXIgOiBtX2h0dHBIZWFkZXJGaWVsZHMuY29tbW9uSGVhZGVycygpKSB7CiAgICAgICAg
ICAgICBpZiAoaXNTYWZlQ3Jvc3NPcmlnaW5SZXNwb25zZUhlYWRlcihoZWFkZXIua2V5KSkKICAg
ICAgICAgICAgICAgICBmaWx0ZXJlZEhlYWRlcnMuYWRkKGhlYWRlci5rZXksIFdURk1vdmUoaGVh
ZGVyLnZhbHVlKSk7CiAgICAgICAgIH0KLSAgICAgICAgYXV0byBjb3JzU2FmZUhlYWRlclNldCA9
IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93TGlzdDxBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+KGh0
dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6QWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlcnMp
KTsKICAgICAgICAgZm9yIChhdXRvJiBoZWFkZXJOYW1lIDogY29yc1NhZmVIZWFkZXJTZXQpIHsK
ICAgICAgICAgICAgIGlmICghZmlsdGVyZWRIZWFkZXJzLmNvbnRhaW5zKGhlYWRlck5hbWUpKSB7
CiAgICAgICAgICAgICAgICAgYXV0byB2YWx1ZSA9IG1faHR0cEhlYWRlckZpZWxkcy5nZXQoaGVh
ZGVyTmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jl
c291cmNlUmVzcG9uc2VCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jl
c291cmNlUmVzcG9uc2VCYXNlLmgKaW5kZXggMDljNzViMzZlYmFmOGIxZDUzNjA5YmVmMzYwYzQw
YTkzYmE4YzQyNC4uMzNhOTVkMTRhYTU5ZDcyYzc0MGJiYjVhZTRiZGIzMzE5MzgzNmQ2ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNl
QmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNw
b25zZUJhc2UuaApAQCAtMTkzLDcgKzE5Myw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFRhaW50
aW5nKFRhaW50aW5nIHRhaW50aW5nKSB7IG1fdGFpbnRpbmcgPSB0YWludGluZzsgfQogICAgIFRh
aW50aW5nIHRhaW50aW5nKCkgY29uc3QgeyByZXR1cm4gbV90YWludGluZzsgfQogCi0gICAgc3Rh
dGljIFJlc291cmNlUmVzcG9uc2UgZmlsdGVyKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAg
ICBlbnVtIGNsYXNzIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgOiB1aW50OF90IHsgWWVz
LCBObyB9OworICAgIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIGZpbHRlcihjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA9IFBlcmZvcm1FeHBvc2VB
bGxIZWFkZXJzQ2hlY2s6Ok5vKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZXNvdXJj
ZVJlc3BvbnNlIHN5bnRoZXRpY1JlZGlyZWN0UmVzcG9uc2UoY29uc3QgVVJMJiBmcm9tVVJMLCBj
b25zdCBVUkwmIHRvVVJMKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggY2Mw
ZWZlMWZhODFiZWQwN2QxY2E1NTAxZDNkYjlmZjYzN2RjOGJhOC4uM2EwMzVmNzM3YTQyMjJiNDEy
NDI1ODY0NzZmODI1NTI0MDhhNTFhZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMjAtMDMtMTAgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4K
KworICAgICAgICBJbXBsZW1lbnQgd2lsZGNhcmQgYmVoYXZpb3IgZm9yIENyb3NzLU9yaWdpbi1F
eHBvc2UtSGVhZGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA4ODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0cy4KKworICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3Jz
LWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtl
ci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5o
dHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNl
LXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4
dDoKKwogMjAyMC0wMy0xMCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IEFsaWduIHdpdGggT3JpZ2luIGhlYWRlciBjaGFuZ2VzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhw
b3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFu
eS1leHBlY3RlZC50eHQKaW5kZXggZDc1MDgzMmY3MmZmYzExODljMmYzOTg4ZTEwYWVjMzMwMjYy
ODAwYS4uZWI1ODUzY2QzMTU5OTg0Mzc3MTEwY2Q3ZjU0YjUyN2E0NjVkZjhhNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkv
Y29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1l
eHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBC
YXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IGFzc2VydF9lcXVh
bHM6IGV4cGVjdGVkIChzdHJpbmcpICJYIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQmFz
aWMgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCAKIFBBU1MgKiBmb3Ig
Y3JlZGVudGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSAKLUZBSUwgKiBjYW4g
YmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcp
ICJYIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgKiBjYW4gYmUgb25lIG9mIHNldmVyYWwg
dmFsdWVzIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXIt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dAppbmRleCBkNzUwODMyZjcyZmZjMTE4OWMyZjM5ODhlMTBhZWMzMzAyNjI4MDBhLi5lYjU4
NTNjZDMxNTk5ODQzNzcxMTBjZDdmNTRiNTI3YTQ2NWRmOGE2IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMt
ZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBv
c2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZB
SUwgQmFzaWMgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNT
IEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCiBQQVNTICog
Zm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCi1GQUlMICog
Y2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3Ry
aW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTICogY2FuIGJlIG9uZSBvZiBzZXZl
cmFsIHZhbHVlcyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2Vy
L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2Vydmlj
ZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNDliOGI0NTVhODI3
ODJhYjQwMGI5OWM3MTljMWMyYzgwNjI0YmY0MC4uNWZiZDBiNmZhNzRmNThmY2JjNmExOGUxOTUy
NGExMTgxYzRkMmY2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2Vy
L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Nl
cnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0yMSw3ICsyMSw3
IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUubWF0Y2gg
d2l0aCBhIG5vbi0yeHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBuZXR3b3Jr
IGVycm9yIFJlc3BvbnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMgdGhh
dCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlMIGNvcnMtZXhwb3NlZCBo
ZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
IChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBjb3JzLWV4cG9zZWQg
aGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBlIHNob3Vs
ZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAogRkFJTCBNSU1FIHR5cGUg
c2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6
IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91
bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0
ZWQudHh0CmluZGV4IDlmNDU1YjM3Mzc0NTE2ZTVjYzYyZTYxMzc2ZGJlZGExODQyYTFjYjguLjc5
MTViZTJlNjBkMDg0YjgwMGJlNTdmNTkwYTBkOTY3NjViNjk2NjggMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2Nh
Y2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAg
LTIwLDcgKzIwLDcgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBD
YWNoZS5tYXRjaCB3aXRoIGEgbm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0
aCBhIG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJl
c3BvbnNlcyB0aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29y
cy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgKHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNv
cnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1F
IHR5cGUgc2hvdWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlM
IE1JTUUgdHlwZSBzaG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNz
ZXJ0X2VxdWFsczogb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1l
IHR5cGVzIHNob3VsZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3Bs
YWluIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5o
dHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5o
dHRwcy1leHBlY3RlZC50eHQKaW5kZXggOWY0NTViMzczNzQ1MTZlNWNjNjJlNjEzNzZkYmVkYTE4
NDJhMWNiOC4uNzkxNWJlMmU2MGQwODRiODAwYmU1N2Y1OTBhMGQ5Njc2NWI2OTY2OCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVj
dGVkLnR4dApAQCAtMjAsNyArMjAsNyBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1
ZXN0CiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNo
ZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJvciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVj
ZXMgbGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHku
IAotRkFJTCBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51
bGwKK1BBU1MgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4g
CiBQQVNTIE1JTUUgdHlwZSBzaG91bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVj
dGx5LiAKIEZBSUwgTUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3Ry
dWN0aW9uLiBhc3NlcnRfZXF1YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJl
c3BvbnNlIG1pbWUgdHlwZXMgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBn
b3QgInRleHQvcGxhaW4iCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNv
cnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQK
aW5kZXggZTNmMDdlYzUzZjM1YjE0YTFlZGUxYzdhYTA4ZjI4ZTZlNTg4YmRhYy4uYWI4NmFlOTRl
NGZmOGQ2Zjc3NTdhMDExZThhMDRmYzA3ODIyZTk0OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5o
dHRwcy1leHBlY3RlZC50eHQKQEAgLTEsNCArMSw0IEBACiAKIAotRkFJTCBDT1JTLWV4cG9zZWQg
aGVhZGVyIG5hbWVzIGZvciBhIHJlc3BvbnNlIGZyb20gc3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgKHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIENPUlMtZXhwb3Nl
ZCBoZWFkZXIgbmFtZXMgZm9yIGEgcmVzcG9uc2UgZnJvbSBzdyAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393232</attachid>
            <date>2020-03-11 06:22:44 -0700</date>
            <delta_ts>2020-03-11 07:04:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200311142243.patch</filename>
            <type>text/plain</type>
            <size>21561</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uNzJkNjZhYmYzYTU4NTAyYjYwOWJkMzc0Zjg5M2Qz
MGU1YmVlNmRkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAzLTExICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIEltcGxlbWVu
dCB3aWxkY2FyZCBiZWhhdmlvciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3
aGlsZSBhbHNvCisgICAgICAgIGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAg
ICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3Nl
LXN0YXIuc3ViLmFueS5odG1sCisKKyAgICAgICAgWzFdIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0
d2cub3JnLyNyZWYtZm9yLWNvbmNlcHQtcmVzcG9uc2UtY29ycy1leHBvc2VkLWhlYWRlci1uYW1l
LWxpc3QlRTIlOTElQTIKKworICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3BvbnNlOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hS
ZXNwb25zZTo6Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1
bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxv
YWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmg6CisKIDIwMjAt
MDMtMTAgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92
ZSBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIgc3luYyBJUEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCmluZGV4IDdhYTAxMWNhNTEyMWJjMGVkY2Vk
ZjI2OTc3MDc4YjIyYWEzNGVmNDMuLjA3Y2VhMzgyNmJiNDMyODY4MzljMTBiOGUzNmM0YTM1MzJm
YWE2YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNl
LmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWY8RmV0Y2hSZXNwb25zZT4gRmV0Y2hSZXNwb25zZTo6
Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIE9wdGlvbgogICAgIGF1dG8g
ZmV0Y2hSZXNwb25zZSA9IGFkb3B0UmVmKCpuZXcgRmV0Y2hSZXNwb25zZShjb250ZXh0LCBXVEZN
b3ZlKGJvZHkpLCBXVEZNb3ZlKGhlYWRlcnMpLCBXVEZNb3ZlKHJlc3BvbnNlKSkpOwogICAgIGZl
dGNoUmVzcG9uc2UtPnVwZGF0ZUNvbnRlbnRUeXBlKCk7CiAgICAgaWYgKCFpc1N5bnRoZXRpYykK
LSAgICAgICAgZmV0Y2hSZXNwb25zZS0+bV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNw
b25zZUJhc2U6OmZpbHRlcihmZXRjaFJlc3BvbnNlLT5tX2ludGVybmFsUmVzcG9uc2UpOworICAg
ICAgICBmZXRjaFJlc3BvbnNlLT5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNl
QmFzZTo6ZmlsdGVyKGZldGNoUmVzcG9uc2UtPm1faW50ZXJuYWxSZXNwb25zZSwgUmVzb3VyY2VS
ZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzKTsKICAgICBpZiAoaXNP
cGFxdWUpCiAgICAgICAgIGZldGNoUmVzcG9uc2UtPnNldEJvZHlBc09wYXF1ZSgpOwogICAgIHJl
dHVybiBmZXRjaFJlc3BvbnNlOwpAQCAtMjQ3LDYgKzI0Nyw4IEBAIHZvaWQgRmV0Y2hSZXNwb25z
ZTo6ZmV0Y2goU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgRmV0Y2hSZXF1ZXN0JiBy
ZXF1ZXN0CiAgICAgcmVzcG9uc2UtPm1fYm9keUxvYWRlciA9IG1ha2VVbmlxdWU8Qm9keUxvYWRl
cj4ocmVzcG9uc2UuZ2V0KCksIFdURk1vdmUocmVzcG9uc2VDYWxsYmFjaykpOwogICAgIGlmICgh
cmVzcG9uc2UtPm1fYm9keUxvYWRlci0+c3RhcnQoY29udGV4dCwgcmVxdWVzdCkpCiAgICAgICAg
IHJlc3BvbnNlLT5tX2JvZHlMb2FkZXIgPSBudWxscHRyOworICAgIGlmIChyZXF1ZXN0LmZldGNo
T3B0aW9ucygpLmNyZWRlbnRpYWxzICE9IEZldGNoT3B0aW9uczo6Q3JlZGVudGlhbHM6OkluY2x1
ZGUpCisgICAgICAgIHJlc3BvbnNlLT5tX2JvZHlMb2FkZXItPm1fcGVyZm9ybUV4cG9zZUFsbEhl
YWRlcnNDaGVjayA9IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hl
Y2s6OlllczsKIH0KIAogY29uc3QgU3RyaW5nJiBGZXRjaFJlc3BvbnNlOjp1cmwoKSBjb25zdApA
QCAtMzMxLDcgKzMzMyw3IEBAIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6On5Cb2R5TG9hZGVy
KCkKIHN0YXRpYyB1aW50NjRfdCBuZXh0T3BhcXVlTG9hZElkZW50aWZpZXIgeyAwIH07CiB2b2lk
IEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNvdXJjZVJlc3BvbnNlKQogewotICAgIG1fcmVzcG9uc2UubV9maWx0
ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNvdXJjZVJlc3Bv
bnNlKTsKKyAgICBtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291cmNlUmVzcG9u
c2VCYXNlOjpmaWx0ZXIocmVzb3VyY2VSZXNwb25zZSwgbV9wZXJmb3JtRXhwb3NlQWxsSGVhZGVy
c0NoZWNrKTsKICAgICBtX3Jlc3BvbnNlLm1faW50ZXJuYWxSZXNwb25zZSA9IHJlc291cmNlUmVz
cG9uc2U7CiAgICAgbV9yZXNwb25zZS5tX2ludGVybmFsUmVzcG9uc2Uuc2V0VHlwZShtX3Jlc3Bv
bnNlLm1fZmlsdGVyZWRSZXNwb25zZS0+dHlwZSgpKTsKICAgICBpZiAocmVzb3VyY2VSZXNwb25z
ZS50YWludGluZygpID09IFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpPcGFxdWUpIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKaW5kZXggOTdhZDcy
NzNlNmMwNjBiODVmMjk4YzJhMmU3OTY5ZTVlZmRjZGE1ZC4uNzUyMjQwYzE5NTExM2RiMzFjOTU4
NDI4NTk5MjEzYzJjZDFjZTg4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9m
ZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9G
ZXRjaFJlc3BvbnNlLmgKQEAgLTE0Myw2ICsxNDMsOCBAQCBwcml2YXRlOgogICAgICAgICBOb3Rp
ZmljYXRpb25DYWxsYmFjayB0YWtlTm90aWZpY2F0aW9uQ2FsbGJhY2soKSB7IHJldHVybiBXVEZN
b3ZlKG1fcmVzcG9uc2VDYWxsYmFjayk7IH0KICAgICAgICAgQ29uc3VtZURhdGFCeUNodW5rQ2Fs
bGJhY2sgdGFrZUNvbnN1bWVEYXRhQ2FsbGJhY2soKSB7IHJldHVybiBXVEZNb3ZlKG1fY29uc3Vt
ZURhdGFDYWxsYmFjayk7IH0KIAorICAgICAgICBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhw
b3NlQWxsSGVhZGVyc0NoZWNrIG1fcGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayB7IFJlc291
cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6Ok5vIH07CisKICAgICBw
cml2YXRlOgogICAgICAgICAvLyBGZXRjaExvYWRlckNsaWVudCBBUEkKICAgICAgICAgdm9pZCBk
aWRTdWNjZWVkKCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGQ1NmZhNWJkZDhjNWM0ZjM4ZjhjMzVmOTM5N2Uw
ZDQwODUwOWZkOGYuLjc4ZDc3N2IzZjg3NDI0ZjFiNmYzNjliYmEwNGFjNzljZWJjNmI3NDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIu
Y3BwCkBAIC0zOTMsNyArMzkzLDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRp
ZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnMKICAgICB9CiAK
ICAgICBpZiAocmVzcG9uc2UudHlwZSgpID09IFJlc291cmNlUmVzcG9uc2U6OlR5cGU6OkRlZmF1
bHQpIHsKLSAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVyLCBS
ZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7CisgICAgICAgIG1fY2xpZW50
LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZp
bHRlcihyZXNwb25zZSwgbV9vcHRpb25zLmNyZWRlbnRpYWxzICE9IEZldGNoT3B0aW9uczo6Q3Jl
ZGVudGlhbHM6OkluY2x1ZGUgPyBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3NlQWxsSGVh
ZGVyc0NoZWNrOjpZZXMgOiBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3NlQWxsSGVhZGVy
c0NoZWNrOjpObykpOwogICAgICAgICBpZiAocmVzcG9uc2UudGFpbnRpbmcoKSA9PSBSZXNvdXJj
ZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlKSB7CiAgICAgICAgICAgICBjbGVhclJlc291cmNl
KCk7CiAgICAgICAgICAgICBpZiAobV9jbGllbnQpCkBAIC00NjYsNyArNDY2LDcgQEAgdm9pZCBE
b2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgQVNTRVJUKHJlc3BvbnNl
LnR5cGUoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpEZWZhdWx0KTsKIAotICAgICAgICAg
ICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVyLCBSZXNvdXJjZVJlc3Bv
bnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7CisgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVj
ZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIocmVz
cG9uc2UsIG1fb3B0aW9ucy5jcmVkZW50aWFscyAhPSBGZXRjaE9wdGlvbnM6OkNyZWRlbnRpYWxz
OjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVj
azo6WWVzIDogUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6
Tm8pKTsKICAgICAgICAgICAgIGlmIChtX3Jlc291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpKQogICAg
ICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0YShtX3Jlc291cmNlLT5yZXNvdXJj
ZUJ1ZmZlcigpLT5kYXRhKCksIG1fcmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCktPnNpemUoKSk7
CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
UmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggYmEwMjQ4NDBlMGJmMGNmMjM0ZmNhYzlm
ODMwODU5ZTM2Mzc0NjQ1NS4uZGUxZjM0ZGNjMTI4YzE2NDJhMDljNTY3OTdlNWJkY2IwZjhmMzc3
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJl
c3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNv
dXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTE0OCw3ICsxNDgsNyBAQCBSZXNvdXJjZVJlc3BvbnNl
IFJlc291cmNlUmVzcG9uc2VCYXNlOjpzeW50aGV0aWNSZWRpcmVjdFJlc3BvbnNlKGNvbnN0IFVS
TCYgZnJvbQogICAgIHJldHVybiByZWRpcmVjdFJlc3BvbnNlOwogfQogCi1SZXNvdXJjZVJlc3Bv
bnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UpCitSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJz
Q2hlY2sgcGVyZm9ybUNoZWNrKQogewogICAgIGlmIChyZXNwb25zZS50YWludGluZygpID09IFRh
aW50aW5nOjpPcGFxdWUpIHsKICAgICAgICAgUmVzb3VyY2VSZXNwb25zZSBvcGFxdWVSZXNwb25z
ZTsKQEAgLTE4MCw2ICsxODAsOSBAQCBSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VC
YXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgZmlsdGVy
ZWRSZXNwb25zZS5zZXRUeXBlKFR5cGU6OkNvcnMpOwogCiAgICAgYXV0byBhY2Nlc3NDb250cm9s
RXhwb3NlSGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUlu
c2Vuc2l0aXZlSGFzaD4ocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpB
Y2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykpOworICAgIGlmIChwZXJmb3JtQ2hlY2sgPT0gUGVy
Zm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzICYmIGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFk
ZXJTZXQuY29udGFpbnMoIioiKSkKKyAgICAgICAgcmV0dXJuIGZpbHRlcmVkUmVzcG9uc2U7CisK
ICAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy51bmNvbW1vbkhlYWRlcnMo
KS5yZW1vdmVBbGxNYXRjaGluZyhbJl0oYXV0byYgZW50cnkpIHsKICAgICAgICAgcmV0dXJuICFp
c0Nyb3NzT3JpZ2luU2FmZUhlYWRlcihlbnRyeS5rZXksIGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFk
ZXJTZXQpOwogICAgIH0pOwpAQCAtNDQzLDEyICs0NDYsMTUgQEAgdm9pZCBSZXNvdXJjZVJlc3Bv
bnNlQmFzZTo6c2FuaXRpemVIVFRQSGVhZGVyRmllbGRzQWNjb3JkaW5nVG9UYWludGluZygpCiAg
ICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6QmFzaWM6CiAgICAgICAgIHJldHVy
bjsKICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpDb3JzOiB7CisgICAgICAg
IGF1dG8gY29yc1NhZmVIZWFkZXJTZXQgPSBwYXJzZUFjY2Vzc0NvbnRyb2xBbGxvd0xpc3Q8QVND
SUlDYXNlSW5zZW5zaXRpdmVIYXNoPihodHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OkFj
Y2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7CisgICAgICAgIGlmIChjb3JzU2FmZUhlYWRlclNl
dC5jb250YWlucygiKiIpKQorICAgICAgICAgICAgcmV0dXJuOworCiAgICAgICAgIEhUVFBIZWFk
ZXJNYXAgZmlsdGVyZWRIZWFkZXJzOwogICAgICAgICBmb3IgKGF1dG8mIGhlYWRlciA6IG1faHR0
cEhlYWRlckZpZWxkcy5jb21tb25IZWFkZXJzKCkpIHsKICAgICAgICAgICAgIGlmIChpc1NhZmVD
cm9zc09yaWdpblJlc3BvbnNlSGVhZGVyKGhlYWRlci5rZXkpKQogICAgICAgICAgICAgICAgIGZp
bHRlcmVkSGVhZGVycy5hZGQoaGVhZGVyLmtleSwgV1RGTW92ZShoZWFkZXIudmFsdWUpKTsKICAg
ICAgICAgfQotICAgICAgICBhdXRvIGNvcnNTYWZlSGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250
cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4oaHR0cEhlYWRlckZpZWxkKEhU
VFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykpOwogICAgICAgICBmb3Ig
KGF1dG8mIGhlYWRlck5hbWUgOiBjb3JzU2FmZUhlYWRlclNldCkgewogICAgICAgICAgICAgaWYg
KCFmaWx0ZXJlZEhlYWRlcnMuY29udGFpbnMoaGVhZGVyTmFtZSkpIHsKICAgICAgICAgICAgICAg
ICBhdXRvIHZhbHVlID0gbV9odHRwSGVhZGVyRmllbGRzLmdldChoZWFkZXJOYW1lKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJh
c2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJh
c2UuaAppbmRleCAwOWM3NWIzNmViYWY4YjFkNTM2MDliZWYzNjBjNDBhOTNiYThjNDI0Li42MTNl
ZGZlYWYzMGY2NTJiNTFiYTM5ZTJkZmJiOGViZmU4Mjk5OTUyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCkBAIC0x
OTMsNyArMTkzLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0VGFpbnRpbmcoVGFpbnRpbmcgdGFp
bnRpbmcpIHsgbV90YWludGluZyA9IHRhaW50aW5nOyB9CiAgICAgVGFpbnRpbmcgdGFpbnRpbmco
KSBjb25zdCB7IHJldHVybiBtX3RhaW50aW5nOyB9CiAKLSAgICBzdGF0aWMgUmVzb3VyY2VSZXNw
b25zZSBmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIGVudW0gY2xhc3MgUGVy
Zm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA6IHVpbnQ4X3QgeyBZZXMsIE5vIH07CisgICAgc3Rh
dGljIFJlc291cmNlUmVzcG9uc2UgZmlsdGVyKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBQZXJm
b3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBS
ZXNvdXJjZVJlc3BvbnNlIHN5bnRoZXRpY1JlZGlyZWN0UmVzcG9uc2UoY29uc3QgVVJMJiBmcm9t
VVJMLCBjb25zdCBVUkwmIHRvVVJMKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5k
ZXggY2MwZWZlMWZhODFiZWQwN2QxY2E1NTAxZDNkYjlmZjYzN2RjOGJhOC4uYWJjYTY3ZDdjMzU2
MTZkYjM0ZGM3Nzc5YzlmNTYzOWQwN2EyZWI3MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDMtMTEgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlh
LmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgd2lsZGNhcmQgYmVoYXZpb3IgZm9yIENyb3NzLU9y
aWdpbi1FeHBvc2UtSGVhZGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjA4ODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0cyBhbmQgYWRkIGEgdGVzdCBm
b3IgdGVzdGluZworICAgICAgICB4aHIgYW5kIHdpbGRjYXJkIGJlaGF2aW9yIGZvciBDcm9zcy1P
cmlnaW4tRXhwb3NlLUhlYWRlcnMgYmVoYXZpb3IuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBv
c2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2Fj
aGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMveGhyL2Nv
cnMtZXhwb3NlLXN0YXIuc3ViLmFueS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5qczogQWRkZWQuCisgICAgICAg
IChzaGFyZWRIZWFkZXJzLnN0cmluZ19hcHBlYXJlZF9oZXJlLmFzeW5jX3Rlc3QpOgorICAgICAg
ICAoc3RyaW5nX2FwcGVhcmVkX2hlcmUuYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3hoci9yZXNvdXJjZXMvdG9wLnR4dDogQWRkZWQuCisKIDIwMjAtMDMtMTAgIFJv
YiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBBbGlnbiB3aXRoIE9yaWdpbiBo
ZWFkZXIgY2hhbmdlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
ZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CmluZGV4
IGQ3NTA4MzJmNzJmZmMxMTg5YzJmMzk4OGUxMGFlYzMzMDI2MjgwMGEuLmViNTg1M2NkMzE1OTk4
NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rh
ci5zdWIuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1l
eHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgQmFzaWMgQWNjZXNzLUNvbnRyb2wt
RXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5n
KSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4
cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCiBQQVNTICogZm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVz
IG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCi1GQUlMICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZh
bHVlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0
KSBudWxsCitQQVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyAKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkv
Y29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29y
cy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDc1MDgzMmY3
MmZmYzExODljMmYzOTg4ZTEwYWVjMzMwMjYyODAwYS4uZWI1ODUzY2QzMTU5OTg0Mzc3MTEwY2Q3
ZjU0YjUyN2E0NjVkZjhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnku
d29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3Jr
ZXItZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEJhc2ljIEFjY2Vzcy1Db250
cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0
cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBCYXNpYyBBY2Nlc3MtQ29udHJv
bC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAogUEFTUyAqIGZvciBjcmVkZW50aWFsZWQgZmV0
Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAotRkFJTCAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJh
bCB2YWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9i
amVjdCkgbnVsbAorUEFTUyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgCiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2gu
aHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDQ5YjhiNDU1YTgyNzgyYWI0MDBiOTljNzE5YzFjMmM4
MDYyNGJmNDAuLjVmYmQwYjZmYTc0ZjU4ZmNiYzZhMThlMTk1MjRhMTE4MWM0ZDJmNjkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1h
dGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjEsNyArMjEsNyBAQCBQQVNTIENhY2hlLm1hdGNo
IHdpdGggUE9TVCBSZXF1ZXN0CiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBub24tMnh4IFJlc3Bv
bnNlIAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJvciBSZXNwb25zZSAKIFBB
U1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2FuIGJlIGNsb25lZCBhbmQg
cmVhZCBjb3JyZWN0bHkuIAotRkFJTCBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9y
ZWQgY29ycmVjdGx5LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiYmFyIiBidXQg
Z290IChvYmplY3QpIG51bGwKK1BBU1MgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3Rv
cmVkIGNvcnJlY3RseS4gCiBQQVNTIE1JTUUgdHlwZSBzaG91bGQgYmUgc2V0IGZyb20gY29udGVu
dC1oZWFkZXIgY29ycmVjdGx5LiAKIEZBSUwgTUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQg
cmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVk
IG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0
ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0
b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA5ZjQ1NWIz
NzM3NDUxNmU1Y2M2MmU2MTM3NmRiZWRhMTg0MmExY2I4Li43OTE1YmUyZTYwZDA4NGI4MDBiZTU3
ZjU5MGEwZDk2NzY1YjY5NjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9j
YWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5k
b3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0yMCw3ICsyMCw3IEBAIFBBU1Mg
Q2FjaGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5v
bi0yeHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBuZXR3b3JrIGVycm9yIFJl
c3BvbnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUg
Y2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlMIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hv
dWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcp
ICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBjb3JzLWV4cG9zZWQgaGVhZGVyIHNo
b3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBlIHNob3VsZCBiZSBzZXQg
ZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAogRkFJTCBNSU1FIHR5cGUgc2hvdWxkIGJl
IGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6IG9yaWdpbmFs
IGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2gg
ZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDlmNDU1YjM3Mzc0NTE2ZTVjYzYyZTYxMzc2ZGJlZGExODQyYTFjYjguLjc5MTViZTJlNjBk
MDg0YjgwMGJlNTdmNTkwYTBkOTY3NjViNjk2NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3Jh
Z2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIwLDcgKzIw
LDcgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBDYWNoZS5tYXRj
aCB3aXRoIGEgbm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5ldHdv
cmsgZXJyb3IgUmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3BvbnNlcyB0
aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29ycy1leHBvc2Vk
IGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgKHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNvcnMtZXhwb3Nl
ZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1FIHR5cGUgc2hv
dWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlMIE1JTUUgdHlw
ZSBzaG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFs
czogb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNo
b3VsZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5h
bWVzLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhw
b3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGUzZjA3ZWM1M2YzNWIx
NGExZWRlMWM3YWEwOGYyOGU2ZTU4OGJkYWMuLmFiODZhZTk0ZTRmZjhkNmY3NzU3YTAxMWU4YTA0
ZmMwNzgyMmU5NDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhw
b3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CkBA
IC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgQ09SUy1leHBvc2VkIGhlYWRlciBuYW1lcyBmb3IgYSBy
ZXNwb25zZSBmcm9tIHN3IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1
dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBDT1JTLWV4cG9zZWQgaGVhZGVyIG5hbWVzIGZvciBh
IHJlc3BvbnNlIGZyb20gc3cgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9j
b3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmViNTg1M2Nk
MzE1OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1z
dGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorCitQQVNTIEJhc2ljIEFj
Y2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCitQQVNTICogZm9yIGNyZWRl
bnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCitQQVNTICogY2FuIGJlIG9u
ZSBvZiBzZXZlcmFsIHZhbHVlcyAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWwg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4
cG9zZS1zdGFyLnN1Yi5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZj
NjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0
bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0
ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LmpzIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Ut
c3Rhci5zdWIuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyZWU2YzljNDQ3OTk1MDM3ZmQyMjAxMGMyNTUx
OGQxMmEyNzI5N2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkuanMKQEAgLTAs
MCArMSw1MyBAQAorLy8gTUVUQTogc2NyaXB0PS4uL2ZldGNoL2FwaS9yZXNvdXJjZXMvdXRpbHMu
anMKKworY29uc3QgdXJsID0gImh0dHA6Ly97e2hvc3R9fTp7e3BvcnRzW2h0dHBdWzFdfX0iICsg
ZGlybmFtZShsb2NhdGlvbi5wYXRobmFtZSkgKyAicmVzb3VyY2VzL3RvcC50eHQiLAorICAgICAg
c2hhcmVkSGVhZGVycyA9ICI/cGlwZT1oZWFkZXIoQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRl
cnMsKil8aGVhZGVyKFRlc3QsWCl8aGVhZGVyKFNldC1Db29raWUsWCl8aGVhZGVyKCosd2hvYSl8
IgorCithc3luY190ZXN0KGZ1bmN0aW9uKCkgeworICBjb25zdCBoZWFkZXJzID0gImhlYWRlcihB
Y2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4sKikiCisgICAgY29uc29sZS5sb2codXJsKTsKKyAg
dmFyIGNsaWVudCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworICBjbGllbnQub3BlbigiR0VUIiwg
dXJsICsgc2hhcmVkSGVhZGVycyArIGhlYWRlcnMpOworICBjbGllbnQuc2VuZCgpOworICBjbGll
bnQub25yZWFkeXN0YXRlY2hhbmdlID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24gKCkgeworICAg
IGlmICh0aGlzLnJlYWR5U3RhdGUgPT0gdGhpcy5IRUFERVJTX1JFQ0VJVkVEKSB7CisgICAgICBh
c3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigidGVzdCIpLCAiWCIpOworICAg
ICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInNldC1jb29raWUiKSwg
bnVsbCk7CisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigiKiIp
LCAid2hvYSIpOworICAgICAgdGhpcy5kb25lKCk7CisgICAgfQorICB9KTsKK30sICJCYXNpYyBB
Y2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IikKKworYXN5bmNfdGVzdChm
dW5jdGlvbigpIHsKKyAgY29uc3Qgb3JpZ2luID0gbG9jYXRpb24ub3JpZ2luLCAvLyBhc3N1bWlu
ZyBhbiBBU0NJSSBvcmlnaW4KKyAgICAgICAgaGVhZGVycyA9ICJoZWFkZXIoQWNjZXNzLUNvbnRy
b2wtQWxsb3ctT3JpZ2luLCIgKyBvcmlnaW4gKyAiKXxoZWFkZXIoQWNjZXNzLUNvbnRyb2wtQWxs
b3ctQ3JlZGVudGlhbHMsdHJ1ZSkiCisgIHZhciBjbGllbnQgPSBuZXcgWE1MSHR0cFJlcXVlc3Qo
KTsKKyAgY2xpZW50Lm9wZW4oIkdFVCIsIHVybCArIHNoYXJlZEhlYWRlcnMgKyBoZWFkZXJzKTsK
KyAgY2xpZW50LndpdGhDcmVkZW50aWFscyA9IHRydWU7CisgIGNsaWVudC5zZW5kKCk7CisgIGNs
aWVudC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSB0aGlzLnN0ZXBfZnVuYyhmdW5jdGlvbiAoKSB7Cisg
ICAgaWYgKHRoaXMucmVhZHlTdGF0ZSA9PSB0aGlzLkhFQURFUlNfUkVDRUlWRUQpIHsKKyAgICAg
IGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJjb250ZW50LXR5cGUiKSwg
InRleHQvcGxhaW4iKTsgLy8gc2FmZWxpc3RlZAorICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQu
Z2V0UmVzcG9uc2VIZWFkZXIoInRlc3QiKSwgbnVsbCk7CisgICAgICBhc3NlcnRfZXF1YWxzKGNs
aWVudC5nZXRSZXNwb25zZUhlYWRlcigic2V0LWNvb2tpZSIpLCBudWxsKTsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCIqIiksICJ3aG9hIik7CisgICAgICB0
aGlzLmRvbmUoKTsKKyAgICB9CisgIH0pOworfSwgIiogZm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVz
IG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkiKQorCithc3luY190ZXN0KGZ1bmN0aW9uKCkgeworICBj
b25zdCBoZWFkZXJzID0gICJoZWFkZXIoQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luLCopfGhl
YWRlcihBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVycyxzZXQtY29va2llXFwsKikiCisgIHZh
ciBjbGllbnQgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgY2xpZW50Lm9wZW4oIkdFVCIsIHVy
bCArIHNoYXJlZEhlYWRlcnMgKyBoZWFkZXJzKTsKKyAgY2xpZW50LnNlbmQoKTsKKyAgY2xpZW50
Lm9ucmVhZHlzdGF0ZWNoYW5nZSA9IHRoaXMuc3RlcF9mdW5jKGZ1bmN0aW9uICgpIHsKKyAgICBp
ZiAodGhpcy5yZWFkeVN0YXRlID09IHRoaXMuSEVBREVSU19SRUNFSVZFRCkgeworICAgICAgYXNz
ZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInRlc3QiKSwgIlgiKTsKKyAgICAg
IGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJzZXQtY29va2llIiksIG51
bGwpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoIioiKSwg
Indob2EiKTsKKyAgICAgIHRoaXMuZG9uZSgpOworICAgIH0KKyAgfSk7Cit9LCAiKiBjYW4gYmUg
b25lIG9mIHNldmVyYWwgdmFsdWVzIikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3AudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvcmVzb3VyY2VzL3RvcC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uODNhMzE1N2QxNGQ5MDgxZWQwMWNkNzk5Mjg3ODk5ODIyZTE5NTIzYQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMveGhyL3Jlc291cmNlcy90b3AudHh0CkBAIC0wLDAgKzEgQEAKK3RvcApcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393235</attachid>
            <date>2020-03-11 07:04:23 -0700</date>
            <delta_ts>2020-03-11 12:23:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200311150421.patch</filename>
            <type>text/plain</type>
            <size>21918</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uNzJkNjZhYmYzYTU4NTAyYjYwOWJkMzc0Zjg5M2Qz
MGU1YmVlNmRkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAzLTExICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIEltcGxlbWVu
dCB3aWxkY2FyZCBiZWhhdmlvciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3
aGlsZSBhbHNvCisgICAgICAgIGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAg
ICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3Nl
LXN0YXIuc3ViLmFueS5odG1sCisKKyAgICAgICAgWzFdIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0
d2cub3JnLyNyZWYtZm9yLWNvbmNlcHQtcmVzcG9uc2UtY29ycy1leHBvc2VkLWhlYWRlci1uYW1l
LWxpc3QlRTIlOTElQTIKKworICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3BvbnNlOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hS
ZXNwb25zZTo6Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1
bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxv
YWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmg6CisKIDIwMjAt
MDMtMTAgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92
ZSBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIgc3luYyBJUEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCmluZGV4IDdhYTAxMWNhNTEyMWJjMGVkY2Vk
ZjI2OTc3MDc4YjIyYWEzNGVmNDMuLjBjMzhiYmJlN2E2MTg0ZDA4NWZmNzI4MzNiOWY4MGQwM2Fm
YTM3ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNl
LmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWY8RmV0Y2hSZXNwb25zZT4gRmV0Y2hSZXNwb25zZTo6
Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIE9wdGlvbgogICAgIGF1dG8g
ZmV0Y2hSZXNwb25zZSA9IGFkb3B0UmVmKCpuZXcgRmV0Y2hSZXNwb25zZShjb250ZXh0LCBXVEZN
b3ZlKGJvZHkpLCBXVEZNb3ZlKGhlYWRlcnMpLCBXVEZNb3ZlKHJlc3BvbnNlKSkpOwogICAgIGZl
dGNoUmVzcG9uc2UtPnVwZGF0ZUNvbnRlbnRUeXBlKCk7CiAgICAgaWYgKCFpc1N5bnRoZXRpYykK
LSAgICAgICAgZmV0Y2hSZXNwb25zZS0+bV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNw
b25zZUJhc2U6OmZpbHRlcihmZXRjaFJlc3BvbnNlLT5tX2ludGVybmFsUmVzcG9uc2UpOworICAg
ICAgICBmZXRjaFJlc3BvbnNlLT5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNl
QmFzZTo6ZmlsdGVyKGZldGNoUmVzcG9uc2UtPm1faW50ZXJuYWxSZXNwb25zZSwgUmVzb3VyY2VS
ZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzKTsKICAgICBpZiAoaXNP
cGFxdWUpCiAgICAgICAgIGZldGNoUmVzcG9uc2UtPnNldEJvZHlBc09wYXF1ZSgpOwogICAgIHJl
dHVybiBmZXRjaFJlc3BvbnNlOwpAQCAtMjQ1LDYgKzI0NSw4IEBAIHZvaWQgRmV0Y2hSZXNwb25z
ZTo6ZmV0Y2goU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgRmV0Y2hSZXF1ZXN0JiBy
ZXF1ZXN0CiAgICAgcmVzcG9uc2UtPmFkZEFib3J0U3RlcHMocmVxdWVzdC5zaWduYWwoKSk7CiAK
ICAgICByZXNwb25zZS0+bV9ib2R5TG9hZGVyID0gbWFrZVVuaXF1ZTxCb2R5TG9hZGVyPihyZXNw
b25zZS5nZXQoKSwgV1RGTW92ZShyZXNwb25zZUNhbGxiYWNrKSk7CisgICAgaWYgKHJlcXVlc3Qu
ZmV0Y2hPcHRpb25zKCkuY3JlZGVudGlhbHMgIT0gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFsczo6
SW5jbHVkZSkKKyAgICAgICAgcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+cGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjaygpOwogICAgIGlmICghcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+c3RhcnQo
Y29udGV4dCwgcmVxdWVzdCkpCiAgICAgICAgIHJlc3BvbnNlLT5tX2JvZHlMb2FkZXIgPSBudWxs
cHRyOwogfQpAQCAtMzMxLDcgKzMzMyw3IEBAIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6On5C
b2R5TG9hZGVyKCkKIHN0YXRpYyB1aW50NjRfdCBuZXh0T3BhcXVlTG9hZElkZW50aWZpZXIgeyAw
IH07CiB2b2lkIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNvdXJjZVJlc3BvbnNlKQogewotICAgIG1fcmVzcG9u
c2UubV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNv
dXJjZVJlc3BvbnNlKTsKKyAgICBtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291
cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIocmVzb3VyY2VSZXNwb25zZSwgbV9wZXJmb3JtRXhwb3Nl
QWxsSGVhZGVyc0NoZWNrKTsKICAgICBtX3Jlc3BvbnNlLm1faW50ZXJuYWxSZXNwb25zZSA9IHJl
c291cmNlUmVzcG9uc2U7CiAgICAgbV9yZXNwb25zZS5tX2ludGVybmFsUmVzcG9uc2Uuc2V0VHlw
ZShtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZS0+dHlwZSgpKTsKICAgICBpZiAocmVzb3Vy
Y2VSZXNwb25zZS50YWludGluZygpID09IFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpPcGFx
dWUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKaW5k
ZXggOTdhZDcyNzNlNmMwNjBiODVmMjk4YzJhMmU3OTY5ZTVlZmRjZGE1ZC4uOWFjOWVhZjZlODk0
ZjE5YjVhM2QyNmYzYTEzNWE0YzhmMmEzZWU2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKQEAgLTE0Myw2ICsxNDMsOCBAQCBwcml2YXRlOgogICAg
ICAgICBOb3RpZmljYXRpb25DYWxsYmFjayB0YWtlTm90aWZpY2F0aW9uQ2FsbGJhY2soKSB7IHJl
dHVybiBXVEZNb3ZlKG1fcmVzcG9uc2VDYWxsYmFjayk7IH0KICAgICAgICAgQ29uc3VtZURhdGFC
eUNodW5rQ2FsbGJhY2sgdGFrZUNvbnN1bWVEYXRhQ2FsbGJhY2soKSB7IHJldHVybiBXVEZNb3Zl
KG1fY29uc3VtZURhdGFDYWxsYmFjayk7IH0KIAorICAgICAgICB2b2lkIHBlcmZvcm1FeHBvc2VB
bGxIZWFkZXJzQ2hlY2soKSB7IG1fcGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA9IFJlc291
cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllczsgfQorCiAgICAg
cHJpdmF0ZToKICAgICAgICAgLy8gRmV0Y2hMb2FkZXJDbGllbnQgQVBJCiAgICAgICAgIHZvaWQg
ZGlkU3VjY2VlZCgpIGZpbmFsOwpAQCAtMTU1LDYgKzE1Nyw3IEBAIHByaXZhdGU6CiAgICAgICAg
IENvbnN1bWVEYXRhQnlDaHVua0NhbGxiYWNrIG1fY29uc3VtZURhdGFDYWxsYmFjazsKICAgICAg
ICAgc3RkOjp1bmlxdWVfcHRyPEZldGNoTG9hZGVyPiBtX2xvYWRlcjsKICAgICAgICAgUmVmPFBl
bmRpbmdBY3Rpdml0eTxGZXRjaFJlc3BvbnNlPj4gbV9wZW5kaW5nQWN0aXZpdHk7CisgICAgICAg
IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgbV9wZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrIHsgUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjazo6Tm8gfTsKICAgICB9OwogCiAgICAgbXV0YWJsZSBPcHRpb25hbDxSZXNv
dXJjZVJlc3BvbnNlPiBtX2ZpbHRlcmVkUmVzcG9uc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGQ1NmZhNWJkZDhjNWM0
ZjM4ZjhjMzVmOTM5N2UwZDQwODUwOWZkOGYuLjc4ZDc3N2IzZjg3NDI0ZjFiNmYzNjliYmEwNGFj
NzljZWJjNmI3NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCkBAIC0zOTMsNyArMzkzLDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnMKICAgICB9CiAKICAgICBpZiAocmVzcG9uc2UudHlwZSgpID09IFJlc291cmNlUmVzcG9u
c2U6OlR5cGU6OkRlZmF1bHQpIHsKLSAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25z
ZShpZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7Cisg
ICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwgUmVzb3VyY2VS
ZXNwb25zZUJhc2U6OmZpbHRlcihyZXNwb25zZSwgbV9vcHRpb25zLmNyZWRlbnRpYWxzICE9IEZl
dGNoT3B0aW9uczo6Q3JlZGVudGlhbHM6OkluY2x1ZGUgPyBSZXNvdXJjZVJlc3BvbnNlOjpQZXJm
b3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMgOiBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpObykpOwogICAgICAgICBpZiAocmVzcG9uc2UudGFpbnRp
bmcoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlKSB7CiAgICAgICAgICAg
ICBjbGVhclJlc291cmNlKCk7CiAgICAgICAgICAgICBpZiAobV9jbGllbnQpCkBAIC00NjYsNyAr
NDY2LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
QVNTRVJUKHJlc3BvbnNlLnR5cGUoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpEZWZhdWx0
KTsKIAotICAgICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVy
LCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7CisgICAgICAgICAgICBt
X2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2VC
YXNlOjpmaWx0ZXIocmVzcG9uc2UsIG1fb3B0aW9ucy5jcmVkZW50aWFscyAhPSBGZXRjaE9wdGlv
bnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9z
ZUFsbEhlYWRlcnNDaGVjazo6WWVzIDogUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjazo6Tm8pKTsKICAgICAgICAgICAgIGlmIChtX3Jlc291cmNlLT5yZXNvdXJj
ZUJ1ZmZlcigpKQogICAgICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0YShtX3Jl
c291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLT5kYXRhKCksIG1fcmVzb3VyY2UtPnJlc291cmNlQnVm
ZmVyKCktPnNpemUoKSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggYmEwMjQ4NDBl
MGJmMGNmMjM0ZmNhYzlmODMwODU5ZTM2Mzc0NjQ1NS4uZGUxZjM0ZGNjMTI4YzE2NDJhMDljNTY3
OTdlNWJkY2IwZjhmMzc3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTE0OCw3ICsxNDgsNyBAQCBS
ZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzeW50aGV0aWNSZWRpcmVjdFJl
c3BvbnNlKGNvbnN0IFVSTCYgZnJvbQogICAgIHJldHVybiByZWRpcmVjdFJlc3BvbnNlOwogfQog
Ci1SZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9u
c2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFBlcmZvcm1F
eHBvc2VBbGxIZWFkZXJzQ2hlY2sgcGVyZm9ybUNoZWNrKQogewogICAgIGlmIChyZXNwb25zZS50
YWludGluZygpID09IFRhaW50aW5nOjpPcGFxdWUpIHsKICAgICAgICAgUmVzb3VyY2VSZXNwb25z
ZSBvcGFxdWVSZXNwb25zZTsKQEAgLTE4MCw2ICsxODAsOSBAQCBSZXNvdXJjZVJlc3BvbnNlIFJl
c291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiAgICAgZmlsdGVyZWRSZXNwb25zZS5zZXRUeXBlKFR5cGU6OkNvcnMpOwogCiAgICAgYXV0
byBhY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250cm9sQWxsb3dM
aXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4ocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhU
VFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykpOworICAgIGlmIChwZXJm
b3JtQ2hlY2sgPT0gUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzICYmIGFjY2Vzc0Nv
bnRyb2xFeHBvc2VIZWFkZXJTZXQuY29udGFpbnMoIioiKSkKKyAgICAgICAgcmV0dXJuIGZpbHRl
cmVkUmVzcG9uc2U7CisKICAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy51
bmNvbW1vbkhlYWRlcnMoKS5yZW1vdmVBbGxNYXRjaGluZyhbJl0oYXV0byYgZW50cnkpIHsKICAg
ICAgICAgcmV0dXJuICFpc0Nyb3NzT3JpZ2luU2FmZUhlYWRlcihlbnRyeS5rZXksIGFjY2Vzc0Nv
bnRyb2xFeHBvc2VIZWFkZXJTZXQpOwogICAgIH0pOwpAQCAtNDQzLDEyICs0NDYsMTUgQEAgdm9p
ZCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6c2FuaXRpemVIVFRQSGVhZGVyRmllbGRzQWNjb3JkaW5n
VG9UYWludGluZygpCiAgICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6QmFzaWM6
CiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpD
b3JzOiB7CisgICAgICAgIGF1dG8gY29yc1NhZmVIZWFkZXJTZXQgPSBwYXJzZUFjY2Vzc0NvbnRy
b2xBbGxvd0xpc3Q8QVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPihodHRwSGVhZGVyRmllbGQoSFRU
UEhlYWRlck5hbWU6OkFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7CisgICAgICAgIGlmIChj
b3JzU2FmZUhlYWRlclNldC5jb250YWlucygiKiIpKQorICAgICAgICAgICAgcmV0dXJuOworCiAg
ICAgICAgIEhUVFBIZWFkZXJNYXAgZmlsdGVyZWRIZWFkZXJzOwogICAgICAgICBmb3IgKGF1dG8m
IGhlYWRlciA6IG1faHR0cEhlYWRlckZpZWxkcy5jb21tb25IZWFkZXJzKCkpIHsKICAgICAgICAg
ICAgIGlmIChpc1NhZmVDcm9zc09yaWdpblJlc3BvbnNlSGVhZGVyKGhlYWRlci5rZXkpKQogICAg
ICAgICAgICAgICAgIGZpbHRlcmVkSGVhZGVycy5hZGQoaGVhZGVyLmtleSwgV1RGTW92ZShoZWFk
ZXIudmFsdWUpKTsKICAgICAgICAgfQotICAgICAgICBhdXRvIGNvcnNTYWZlSGVhZGVyU2V0ID0g
cGFyc2VBY2Nlc3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4oaHR0
cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykp
OwogICAgICAgICBmb3IgKGF1dG8mIGhlYWRlck5hbWUgOiBjb3JzU2FmZUhlYWRlclNldCkgewog
ICAgICAgICAgICAgaWYgKCFmaWx0ZXJlZEhlYWRlcnMuY29udGFpbnMoaGVhZGVyTmFtZSkpIHsK
ICAgICAgICAgICAgICAgICBhdXRvIHZhbHVlID0gbV9odHRwSGVhZGVyRmllbGRzLmdldChoZWFk
ZXJOYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VSZXNwb25zZUJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VSZXNwb25zZUJhc2UuaAppbmRleCAwOWM3NWIzNmViYWY4YjFkNTM2MDliZWYzNjBjNDBh
OTNiYThjNDI0Li42MTNlZGZlYWYzMGY2NTJiNTFiYTM5ZTJkZmJiOGViZmU4Mjk5OTUyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VC
YXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3Bv
bnNlQmFzZS5oCkBAIC0xOTMsNyArMTkzLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0VGFpbnRp
bmcoVGFpbnRpbmcgdGFpbnRpbmcpIHsgbV90YWludGluZyA9IHRhaW50aW5nOyB9CiAgICAgVGFp
bnRpbmcgdGFpbnRpbmcoKSBjb25zdCB7IHJldHVybiBtX3RhaW50aW5nOyB9CiAKLSAgICBzdGF0
aWMgUmVzb3VyY2VSZXNwb25zZSBmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAg
IGVudW0gY2xhc3MgUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA6IHVpbnQ4X3QgeyBZZXMs
IE5vIH07CisgICAgc3RhdGljIFJlc291cmNlUmVzcG9uc2UgZmlsdGVyKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrKTsKIAogICAgIFdFQkNPUkVf
RVhQT1JUIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIHN5bnRoZXRpY1JlZGlyZWN0UmVzcG9uc2Uo
Y29uc3QgVVJMJiBmcm9tVVJMLCBjb25zdCBVUkwmIHRvVVJMKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKaW5kZXggY2MwZWZlMWZhODFiZWQwN2QxY2E1NTAxZDNkYjlmZjYzN2RjOGJh
OC4uYWJjYTY3ZDdjMzU2MTZkYjM0ZGM3Nzc5YzlmNTYzOWQwN2EyZWI3MCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDMtMTEgIFJvYiBCdWlz
ICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgd2lsZGNhcmQgYmVoYXZp
b3IgZm9yIENyb3NzLU9yaWdpbi1FeHBvc2UtSGVhZGVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0cyBh
bmQgYWRkIGEgdGVzdCBmb3IgdGVzdGluZworICAgICAgICB4aHIgYW5kIHdpbGRjYXJkIGJlaGF2
aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMgYmVoYXZpb3IuCisKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBp
L2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Nl
cnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2Fj
aGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9z
ZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5qczog
QWRkZWQuCisgICAgICAgIChzaGFyZWRIZWFkZXJzLnN0cmluZ19hcHBlYXJlZF9oZXJlLmFzeW5j
X3Rlc3QpOgorICAgICAgICAoc3RyaW5nX2FwcGVhcmVkX2hlcmUuYXN5bmNfdGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9yZXNvdXJjZXMvdG9wLnR4dDogQWRkZWQuCisK
IDIwMjAtMDMtMTAgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBBbGln
biB3aXRoIE9yaWdpbiBoZWFkZXIgY2hhbmdlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1z
dGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhw
ZWN0ZWQudHh0CmluZGV4IGQ3NTA4MzJmNzJmZmMxMTg5YzJmMzk4OGUxMGFlYzMzMDI2MjgwMGEu
LmViNTg1M2NkMzE1OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMv
Y29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3Nl
LXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgQmFzaWMg
QWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIEJhc2ljIEFj
Y2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCiBQQVNTICogZm9yIGNyZWRl
bnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCi1GQUlMICogY2FuIGJlIG9u
ZSBvZiBzZXZlcmFsIHZhbHVlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIg
YnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVl
cyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0
Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggZDc1MDgzMmY3MmZmYzExODljMmYzOTg4ZTEwYWVjMzMwMjYyODAwYS4uZWI1ODUzY2Qz
MTU5OTg0Mzc3MTEwY2Q3ZjU0YjUyN2E0NjVkZjhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9z
ZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0
YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEJh
c2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBCYXNp
YyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAogUEFTUyAqIGZvciBj
cmVkZW50aWFsZWQgZmV0Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAotRkFJTCAqIGNhbiBi
ZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykg
IlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2
YWx1ZXMgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3Jr
ZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDQ5YjhiNDU1YTgyNzgyYWI0
MDBiOTljNzE5YzFjMmM4MDYyNGJmNDAuLjVmYmQwYjZmYTc0ZjU4ZmNiYzZhMThlMTk1MjRhMTE4
MWM0ZDJmNjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNl
d29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjEsNyArMjEsNyBAQCBQ
QVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1ZXN0CiBQQVNTIENhY2hlLm1hdGNoIHdpdGgg
YSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJv
ciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2Fu
IGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuIAotRkFJTCBjb3JzLWV4cG9zZWQgaGVhZGVy
IHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3Ry
aW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgY29ycy1leHBvc2VkIGhlYWRl
ciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gCiBQQVNTIE1JTUUgdHlwZSBzaG91bGQgYmUg
c2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LiAKIEZBSUwgTUlNRSB0eXBlIHNob3Vs
ZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1YWxzOiBvcmln
aW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMgc2hvdWxkIG1h
dGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4
dAppbmRleCA5ZjQ1NWIzNzM3NDUxNmU1Y2M2MmU2MTM3NmRiZWRhMTg0MmExY2I4Li43OTE1YmUy
ZTYwZDA4NGI4MDBiZTU3ZjU5MGEwZDk2NzY1YjY5NjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2Fj
aGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0yMCw3
ICsyMCw3IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUu
bWF0Y2ggd2l0aCBhIG5vbi0yeHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBu
ZXR3b3JrIGVycm9yIFJlc3BvbnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25z
ZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlMIGNvcnMtZXhw
b3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBjb3JzLWV4
cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBl
IHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAogRkFJTCBNSU1F
IHR5cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9l
cXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBl
cyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDlmNDU1YjM3Mzc0NTE2ZTVjYzYyZTYxMzc2ZGJlZGExODQyYTFj
YjguLjc5MTViZTJlNjBkMDg0YjgwMGJlNTdmNTkwYTBkOTY3NjViNjk2NjggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50
eHQKQEAgLTIwLDcgKzIwLDcgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAog
UEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0
Y2ggd2l0aCBhIG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxh
cmdlIFJlc3BvbnNlcyB0aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZB
SUwgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQ
QVNTIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFT
UyBNSU1FIHR5cGUgc2hvdWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4g
CiBGQUlMIE1JTUUgdHlwZSBzaG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlv
bi4gYXNzZXJ0X2VxdWFsczogb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25z
ZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0
ZXh0L3BsYWluIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4
cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4
IGUzZjA3ZWM1M2YzNWIxNGExZWRlMWM3YWEwOGYyOGU2ZTU4OGJkYWMuLmFiODZhZTk0ZTRmZjhk
NmY3NzU3YTAxMWU4YTA0ZmMwNzgyMmU5NDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgQ09SUy1leHBvc2VkIGhlYWRl
ciBuYW1lcyBmb3IgYSByZXNwb25zZSBmcm9tIHN3IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChz
dHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBDT1JTLWV4cG9zZWQgaGVh
ZGVyIG5hbWVzIGZvciBhIHJlc3BvbnNlIGZyb20gc3cgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmViNTg1M2NkMzE1OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3ho
ci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAor
CitQQVNTIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCitQ
QVNTICogZm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCitQ
QVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rh
ci5zdWIuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEz
NTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Ut
c3Rhci5zdWIuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWly
ZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRl
c3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5z
dWIuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94
aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyZWU2YzljNDQ3OTk1
MDM3ZmQyMjAxMGMyNTUxOGQxMmEyNzI5N2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1
Yi5hbnkuanMKQEAgLTAsMCArMSw1MyBAQAorLy8gTUVUQTogc2NyaXB0PS4uL2ZldGNoL2FwaS9y
ZXNvdXJjZXMvdXRpbHMuanMKKworY29uc3QgdXJsID0gImh0dHA6Ly97e2hvc3R9fTp7e3BvcnRz
W2h0dHBdWzFdfX0iICsgZGlybmFtZShsb2NhdGlvbi5wYXRobmFtZSkgKyAicmVzb3VyY2VzL3Rv
cC50eHQiLAorICAgICAgc2hhcmVkSGVhZGVycyA9ICI/cGlwZT1oZWFkZXIoQWNjZXNzLUNvbnRy
b2wtRXhwb3NlLUhlYWRlcnMsKil8aGVhZGVyKFRlc3QsWCl8aGVhZGVyKFNldC1Db29raWUsWCl8
aGVhZGVyKCosd2hvYSl8IgorCithc3luY190ZXN0KGZ1bmN0aW9uKCkgeworICBjb25zdCBoZWFk
ZXJzID0gImhlYWRlcihBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4sKikiCisgICAgY29uc29s
ZS5sb2codXJsKTsKKyAgdmFyIGNsaWVudCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworICBjbGll
bnQub3BlbigiR0VUIiwgdXJsICsgc2hhcmVkSGVhZGVycyArIGhlYWRlcnMpOworICBjbGllbnQu
c2VuZCgpOworICBjbGllbnQub25yZWFkeXN0YXRlY2hhbmdlID0gdGhpcy5zdGVwX2Z1bmMoZnVu
Y3Rpb24gKCkgeworICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT0gdGhpcy5IRUFERVJTX1JFQ0VJ
VkVEKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigidGVz
dCIpLCAiWCIpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIo
InNldC1jb29raWUiKSwgbnVsbCk7CisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNw
b25zZUhlYWRlcigiKiIpLCAid2hvYSIpOworICAgICAgdGhpcy5kb25lKCk7CisgICAgfQorICB9
KTsKK30sICJCYXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IikK
KworYXN5bmNfdGVzdChmdW5jdGlvbigpIHsKKyAgY29uc3Qgb3JpZ2luID0gbG9jYXRpb24ub3Jp
Z2luLCAvLyBhc3N1bWluZyBhbiBBU0NJSSBvcmlnaW4KKyAgICAgICAgaGVhZGVycyA9ICJoZWFk
ZXIoQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luLCIgKyBvcmlnaW4gKyAiKXxoZWFkZXIoQWNj
ZXNzLUNvbnRyb2wtQWxsb3ctQ3JlZGVudGlhbHMsdHJ1ZSkiCisgIHZhciBjbGllbnQgPSBuZXcg
WE1MSHR0cFJlcXVlc3QoKTsKKyAgY2xpZW50Lm9wZW4oIkdFVCIsIHVybCArIHNoYXJlZEhlYWRl
cnMgKyBoZWFkZXJzKTsKKyAgY2xpZW50LndpdGhDcmVkZW50aWFscyA9IHRydWU7CisgIGNsaWVu
dC5zZW5kKCk7CisgIGNsaWVudC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSB0aGlzLnN0ZXBfZnVuYyhm
dW5jdGlvbiAoKSB7CisgICAgaWYgKHRoaXMucmVhZHlTdGF0ZSA9PSB0aGlzLkhFQURFUlNfUkVD
RUlWRUQpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJj
b250ZW50LXR5cGUiKSwgInRleHQvcGxhaW4iKTsgLy8gc2FmZWxpc3RlZAorICAgICAgYXNzZXJ0
X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInRlc3QiKSwgbnVsbCk7CisgICAgICBh
c3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigic2V0LWNvb2tpZSIpLCBudWxs
KTsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCIqIiksICJ3
aG9hIik7CisgICAgICB0aGlzLmRvbmUoKTsKKyAgICB9CisgIH0pOworfSwgIiogZm9yIGNyZWRl
bnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkiKQorCithc3luY190ZXN0KGZ1
bmN0aW9uKCkgeworICBjb25zdCBoZWFkZXJzID0gICJoZWFkZXIoQWNjZXNzLUNvbnRyb2wtQWxs
b3ctT3JpZ2luLCopfGhlYWRlcihBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVycyxzZXQtY29v
a2llXFwsKikiCisgIHZhciBjbGllbnQgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgY2xpZW50
Lm9wZW4oIkdFVCIsIHVybCArIHNoYXJlZEhlYWRlcnMgKyBoZWFkZXJzKTsKKyAgY2xpZW50LnNl
bmQoKTsKKyAgY2xpZW50Lm9ucmVhZHlzdGF0ZWNoYW5nZSA9IHRoaXMuc3RlcF9mdW5jKGZ1bmN0
aW9uICgpIHsKKyAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09IHRoaXMuSEVBREVSU19SRUNFSVZF
RCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInRlc3Qi
KSwgIlgiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJz
ZXQtY29va2llIiksIG51bGwpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9u
c2VIZWFkZXIoIioiKSwgIndob2EiKTsKKyAgICAgIHRoaXMuZG9uZSgpOworICAgIH0KKyAgfSk7
Cit9LCAiKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIikKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3Au
dHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvcmVz
b3VyY2VzL3RvcC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODNhMzE1N2QxNGQ5MDgxZWQwMWNkNzk5Mjg3ODk5
ODIyZTE5NTIzYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3AudHh0CkBAIC0wLDAgKzEgQEAKK3Rv
cApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393272</attachid>
            <date>2020-03-11 12:24:02 -0700</date>
            <delta_ts>2020-03-12 00:30:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200311202400.patch</filename>
            <type>text/plain</type>
            <size>21693</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uNzJkNjZhYmYzYTU4NTAyYjYwOWJkMzc0Zjg5M2Qz
MGU1YmVlNmRkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAzLTExICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIEltcGxlbWVu
dCB3aWxkY2FyZCBiZWhhdmlvciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3
aGlsZSBhbHNvCisgICAgICAgIGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAg
ICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3Nl
LXN0YXIuc3ViLmFueS5odG1sCisKKyAgICAgICAgWzFdIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0
d2cub3JnLyNyZWYtZm9yLWNvbmNlcHQtcmVzcG9uc2UtY29ycy1leHBvc2VkLWhlYWRlci1uYW1l
LWxpc3QlRTIlOTElQTIKKworICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3BvbnNlOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hS
ZXNwb25zZTo6Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1
bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxv
YWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmg6CisKIDIwMjAt
MDMtMTAgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92
ZSBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIgc3luYyBJUEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCmluZGV4IDdhYTAxMWNhNTEyMWJjMGVkY2Vk
ZjI2OTc3MDc4YjIyYWEzNGVmNDMuLjBjMzhiYmJlN2E2MTg0ZDA4NWZmNzI4MzNiOWY4MGQwM2Fm
YTM3ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNl
LmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWY8RmV0Y2hSZXNwb25zZT4gRmV0Y2hSZXNwb25zZTo6
Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIE9wdGlvbgogICAgIGF1dG8g
ZmV0Y2hSZXNwb25zZSA9IGFkb3B0UmVmKCpuZXcgRmV0Y2hSZXNwb25zZShjb250ZXh0LCBXVEZN
b3ZlKGJvZHkpLCBXVEZNb3ZlKGhlYWRlcnMpLCBXVEZNb3ZlKHJlc3BvbnNlKSkpOwogICAgIGZl
dGNoUmVzcG9uc2UtPnVwZGF0ZUNvbnRlbnRUeXBlKCk7CiAgICAgaWYgKCFpc1N5bnRoZXRpYykK
LSAgICAgICAgZmV0Y2hSZXNwb25zZS0+bV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNw
b25zZUJhc2U6OmZpbHRlcihmZXRjaFJlc3BvbnNlLT5tX2ludGVybmFsUmVzcG9uc2UpOworICAg
ICAgICBmZXRjaFJlc3BvbnNlLT5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNl
QmFzZTo6ZmlsdGVyKGZldGNoUmVzcG9uc2UtPm1faW50ZXJuYWxSZXNwb25zZSwgUmVzb3VyY2VS
ZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzKTsKICAgICBpZiAoaXNP
cGFxdWUpCiAgICAgICAgIGZldGNoUmVzcG9uc2UtPnNldEJvZHlBc09wYXF1ZSgpOwogICAgIHJl
dHVybiBmZXRjaFJlc3BvbnNlOwpAQCAtMjQ1LDYgKzI0NSw4IEBAIHZvaWQgRmV0Y2hSZXNwb25z
ZTo6ZmV0Y2goU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgRmV0Y2hSZXF1ZXN0JiBy
ZXF1ZXN0CiAgICAgcmVzcG9uc2UtPmFkZEFib3J0U3RlcHMocmVxdWVzdC5zaWduYWwoKSk7CiAK
ICAgICByZXNwb25zZS0+bV9ib2R5TG9hZGVyID0gbWFrZVVuaXF1ZTxCb2R5TG9hZGVyPihyZXNw
b25zZS5nZXQoKSwgV1RGTW92ZShyZXNwb25zZUNhbGxiYWNrKSk7CisgICAgaWYgKHJlcXVlc3Qu
ZmV0Y2hPcHRpb25zKCkuY3JlZGVudGlhbHMgIT0gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFsczo6
SW5jbHVkZSkKKyAgICAgICAgcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+cGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjaygpOwogICAgIGlmICghcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+c3RhcnQo
Y29udGV4dCwgcmVxdWVzdCkpCiAgICAgICAgIHJlc3BvbnNlLT5tX2JvZHlMb2FkZXIgPSBudWxs
cHRyOwogfQpAQCAtMzMxLDcgKzMzMyw3IEBAIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6On5C
b2R5TG9hZGVyKCkKIHN0YXRpYyB1aW50NjRfdCBuZXh0T3BhcXVlTG9hZElkZW50aWZpZXIgeyAw
IH07CiB2b2lkIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNvdXJjZVJlc3BvbnNlKQogewotICAgIG1fcmVzcG9u
c2UubV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNv
dXJjZVJlc3BvbnNlKTsKKyAgICBtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291
cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIocmVzb3VyY2VSZXNwb25zZSwgbV9wZXJmb3JtRXhwb3Nl
QWxsSGVhZGVyc0NoZWNrKTsKICAgICBtX3Jlc3BvbnNlLm1faW50ZXJuYWxSZXNwb25zZSA9IHJl
c291cmNlUmVzcG9uc2U7CiAgICAgbV9yZXNwb25zZS5tX2ludGVybmFsUmVzcG9uc2Uuc2V0VHlw
ZShtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZS0+dHlwZSgpKTsKICAgICBpZiAocmVzb3Vy
Y2VSZXNwb25zZS50YWludGluZygpID09IFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpPcGFx
dWUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKaW5k
ZXggOTdhZDcyNzNlNmMwNjBiODVmMjk4YzJhMmU3OTY5ZTVlZmRjZGE1ZC4uOWFjOWVhZjZlODk0
ZjE5YjVhM2QyNmYzYTEzNWE0YzhmMmEzZWU2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKQEAgLTE0Myw2ICsxNDMsOCBAQCBwcml2YXRlOgogICAg
ICAgICBOb3RpZmljYXRpb25DYWxsYmFjayB0YWtlTm90aWZpY2F0aW9uQ2FsbGJhY2soKSB7IHJl
dHVybiBXVEZNb3ZlKG1fcmVzcG9uc2VDYWxsYmFjayk7IH0KICAgICAgICAgQ29uc3VtZURhdGFC
eUNodW5rQ2FsbGJhY2sgdGFrZUNvbnN1bWVEYXRhQ2FsbGJhY2soKSB7IHJldHVybiBXVEZNb3Zl
KG1fY29uc3VtZURhdGFDYWxsYmFjayk7IH0KIAorICAgICAgICB2b2lkIHBlcmZvcm1FeHBvc2VB
bGxIZWFkZXJzQ2hlY2soKSB7IG1fcGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA9IFJlc291
cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllczsgfQorCiAgICAg
cHJpdmF0ZToKICAgICAgICAgLy8gRmV0Y2hMb2FkZXJDbGllbnQgQVBJCiAgICAgICAgIHZvaWQg
ZGlkU3VjY2VlZCgpIGZpbmFsOwpAQCAtMTU1LDYgKzE1Nyw3IEBAIHByaXZhdGU6CiAgICAgICAg
IENvbnN1bWVEYXRhQnlDaHVua0NhbGxiYWNrIG1fY29uc3VtZURhdGFDYWxsYmFjazsKICAgICAg
ICAgc3RkOjp1bmlxdWVfcHRyPEZldGNoTG9hZGVyPiBtX2xvYWRlcjsKICAgICAgICAgUmVmPFBl
bmRpbmdBY3Rpdml0eTxGZXRjaFJlc3BvbnNlPj4gbV9wZW5kaW5nQWN0aXZpdHk7CisgICAgICAg
IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgbV9wZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrIHsgUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjazo6Tm8gfTsKICAgICB9OwogCiAgICAgbXV0YWJsZSBPcHRpb25hbDxSZXNv
dXJjZVJlc3BvbnNlPiBtX2ZpbHRlcmVkUmVzcG9uc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGQ1NmZhNWJkZDhjNWM0
ZjM4ZjhjMzVmOTM5N2UwZDQwODUwOWZkOGYuLjU5YmRhMTcxZjRmYWI5NGRjODViZTMwMDRmNWMz
ZWQ4MDlhOWQ5ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCkBAIC0zOTMsNyArMzkzLDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnMKICAgICB9CiAKICAgICBpZiAocmVzcG9uc2UudHlwZSgpID09IFJlc291cmNlUmVzcG9u
c2U6OlR5cGU6OkRlZmF1bHQpIHsKLSAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25z
ZShpZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7Cisg
ICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwgUmVzb3VyY2VS
ZXNwb25zZUJhc2U6OmZpbHRlcihyZXNwb25zZSwgbV9vcHRpb25zLmNyZWRlbnRpYWxzID09IEZl
dGNoT3B0aW9uczo6Q3JlZGVudGlhbHM6OkluY2x1ZGUgPyBSZXNvdXJjZVJlc3BvbnNlOjpQZXJm
b3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpObyA6IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1F
eHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllcykpOwogICAgICAgICBpZiAocmVzcG9uc2UudGFpbnRp
bmcoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlKSB7CiAgICAgICAgICAg
ICBjbGVhclJlc291cmNlKCk7CiAgICAgICAgICAgICBpZiAobV9jbGllbnQpCkBAIC00NjYsNyAr
NDY2LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
QVNTRVJUKHJlc3BvbnNlLnR5cGUoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpEZWZhdWx0
KTsKIAotICAgICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVy
LCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7CisgICAgICAgICAgICBt
X2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2VC
YXNlOjpmaWx0ZXIocmVzcG9uc2UsIG1fb3B0aW9ucy5jcmVkZW50aWFscyA9PSBGZXRjaE9wdGlv
bnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9z
ZUFsbEhlYWRlcnNDaGVjazo6Tm8gOiBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3NlQWxs
SGVhZGVyc0NoZWNrOjpZZXMpKTsKICAgICAgICAgICAgIGlmIChtX3Jlc291cmNlLT5yZXNvdXJj
ZUJ1ZmZlcigpKQogICAgICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0YShtX3Jl
c291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLT5kYXRhKCksIG1fcmVzb3VyY2UtPnJlc291cmNlQnVm
ZmVyKCktPnNpemUoKSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggYmEwMjQ4NDBl
MGJmMGNmMjM0ZmNhYzlmODMwODU5ZTM2Mzc0NjQ1NS4uZGUxZjM0ZGNjMTI4YzE2NDJhMDljNTY3
OTdlNWJkY2IwZjhmMzc3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTE0OCw3ICsxNDgsNyBAQCBS
ZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzeW50aGV0aWNSZWRpcmVjdFJl
c3BvbnNlKGNvbnN0IFVSTCYgZnJvbQogICAgIHJldHVybiByZWRpcmVjdFJlc3BvbnNlOwogfQog
Ci1SZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9u
c2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFBlcmZvcm1F
eHBvc2VBbGxIZWFkZXJzQ2hlY2sgcGVyZm9ybUNoZWNrKQogewogICAgIGlmIChyZXNwb25zZS50
YWludGluZygpID09IFRhaW50aW5nOjpPcGFxdWUpIHsKICAgICAgICAgUmVzb3VyY2VSZXNwb25z
ZSBvcGFxdWVSZXNwb25zZTsKQEAgLTE4MCw2ICsxODAsOSBAQCBSZXNvdXJjZVJlc3BvbnNlIFJl
c291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiAgICAgZmlsdGVyZWRSZXNwb25zZS5zZXRUeXBlKFR5cGU6OkNvcnMpOwogCiAgICAgYXV0
byBhY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250cm9sQWxsb3dM
aXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4ocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhU
VFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykpOworICAgIGlmIChwZXJm
b3JtQ2hlY2sgPT0gUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzICYmIGFjY2Vzc0Nv
bnRyb2xFeHBvc2VIZWFkZXJTZXQuY29udGFpbnMoIioiKSkKKyAgICAgICAgcmV0dXJuIGZpbHRl
cmVkUmVzcG9uc2U7CisKICAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy51
bmNvbW1vbkhlYWRlcnMoKS5yZW1vdmVBbGxNYXRjaGluZyhbJl0oYXV0byYgZW50cnkpIHsKICAg
ICAgICAgcmV0dXJuICFpc0Nyb3NzT3JpZ2luU2FmZUhlYWRlcihlbnRyeS5rZXksIGFjY2Vzc0Nv
bnRyb2xFeHBvc2VIZWFkZXJTZXQpOwogICAgIH0pOwpAQCAtNDQzLDEyICs0NDYsMTUgQEAgdm9p
ZCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6c2FuaXRpemVIVFRQSGVhZGVyRmllbGRzQWNjb3JkaW5n
VG9UYWludGluZygpCiAgICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6QmFzaWM6
CiAgICAgICAgIHJldHVybjsKICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpD
b3JzOiB7CisgICAgICAgIGF1dG8gY29yc1NhZmVIZWFkZXJTZXQgPSBwYXJzZUFjY2Vzc0NvbnRy
b2xBbGxvd0xpc3Q8QVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPihodHRwSGVhZGVyRmllbGQoSFRU
UEhlYWRlck5hbWU6OkFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7CisgICAgICAgIGlmIChj
b3JzU2FmZUhlYWRlclNldC5jb250YWlucygiKiIpKQorICAgICAgICAgICAgcmV0dXJuOworCiAg
ICAgICAgIEhUVFBIZWFkZXJNYXAgZmlsdGVyZWRIZWFkZXJzOwogICAgICAgICBmb3IgKGF1dG8m
IGhlYWRlciA6IG1faHR0cEhlYWRlckZpZWxkcy5jb21tb25IZWFkZXJzKCkpIHsKICAgICAgICAg
ICAgIGlmIChpc1NhZmVDcm9zc09yaWdpblJlc3BvbnNlSGVhZGVyKGhlYWRlci5rZXkpKQogICAg
ICAgICAgICAgICAgIGZpbHRlcmVkSGVhZGVycy5hZGQoaGVhZGVyLmtleSwgV1RGTW92ZShoZWFk
ZXIudmFsdWUpKTsKICAgICAgICAgfQotICAgICAgICBhdXRvIGNvcnNTYWZlSGVhZGVyU2V0ID0g
cGFyc2VBY2Nlc3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4oaHR0
cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVycykp
OwogICAgICAgICBmb3IgKGF1dG8mIGhlYWRlck5hbWUgOiBjb3JzU2FmZUhlYWRlclNldCkgewog
ICAgICAgICAgICAgaWYgKCFmaWx0ZXJlZEhlYWRlcnMuY29udGFpbnMoaGVhZGVyTmFtZSkpIHsK
ICAgICAgICAgICAgICAgICBhdXRvIHZhbHVlID0gbV9odHRwSGVhZGVyRmllbGRzLmdldChoZWFk
ZXJOYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VSZXNwb25zZUJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VSZXNwb25zZUJhc2UuaAppbmRleCAwOWM3NWIzNmViYWY4YjFkNTM2MDliZWYzNjBjNDBh
OTNiYThjNDI0Li42MTNlZGZlYWYzMGY2NTJiNTFiYTM5ZTJkZmJiOGViZmU4Mjk5OTUyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VC
YXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3Bv
bnNlQmFzZS5oCkBAIC0xOTMsNyArMTkzLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0VGFpbnRp
bmcoVGFpbnRpbmcgdGFpbnRpbmcpIHsgbV90YWludGluZyA9IHRhaW50aW5nOyB9CiAgICAgVGFp
bnRpbmcgdGFpbnRpbmcoKSBjb25zdCB7IHJldHVybiBtX3RhaW50aW5nOyB9CiAKLSAgICBzdGF0
aWMgUmVzb3VyY2VSZXNwb25zZSBmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAg
IGVudW0gY2xhc3MgUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA6IHVpbnQ4X3QgeyBZZXMs
IE5vIH07CisgICAgc3RhdGljIFJlc291cmNlUmVzcG9uc2UgZmlsdGVyKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrKTsKIAogICAgIFdFQkNPUkVf
RVhQT1JUIHN0YXRpYyBSZXNvdXJjZVJlc3BvbnNlIHN5bnRoZXRpY1JlZGlyZWN0UmVzcG9uc2Uo
Y29uc3QgVVJMJiBmcm9tVVJMLCBjb25zdCBVUkwmIHRvVVJMKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKaW5kZXggY2MwZWZlMWZhODFiZWQwN2QxY2E1NTAxZDNkYjlmZjYzN2RjOGJh
OC4uYWJjYTY3ZDdjMzU2MTZkYjM0ZGM3Nzc5YzlmNTYzOWQwN2EyZWI3MCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDMtMTEgIFJvYiBCdWlz
ICA8cmJ1aXNAaWdhbGlhLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgd2lsZGNhcmQgYmVoYXZp
b3IgZm9yIENyb3NzLU9yaWdpbi1FeHBvc2UtSGVhZGVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4ODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0cyBh
bmQgYWRkIGEgdGVzdCBmb3IgdGVzdGluZworICAgICAgICB4aHIgYW5kIHdpbGRjYXJkIGJlaGF2
aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMgYmVoYXZpb3IuCisKKyAgICAgICAg
KiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIu
YW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBp
L2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3Nl
cnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2Fj
aGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9z
ZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZv
cm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5qczog
QWRkZWQuCisgICAgICAgIChzaGFyZWRIZWFkZXJzLnN0cmluZ19hcHBlYXJlZF9oZXJlLmFzeW5j
X3Rlc3QpOgorICAgICAgICAoc3RyaW5nX2FwcGVhcmVkX2hlcmUuYXN5bmNfdGVzdCk6CisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9yZXNvdXJjZXMvdG9wLnR4dDogQWRkZWQuCisK
IDIwMjAtMDMtMTAgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4KIAogICAgICAgICBBbGln
biB3aXRoIE9yaWdpbiBoZWFkZXIgY2hhbmdlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1z
dGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhw
ZWN0ZWQudHh0CmluZGV4IGQ3NTA4MzJmNzJmZmMxMTg5YzJmMzk4OGUxMGFlYzMzMDI2MjgwMGEu
LmViNTg1M2NkMzE1OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMv
Y29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3Nl
LXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgQmFzaWMg
QWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCBhc3NlcnRfZXF1YWxzOiBl
eHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIEJhc2ljIEFj
Y2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCiBQQVNTICogZm9yIGNyZWRl
bnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCi1GQUlMICogY2FuIGJlIG9u
ZSBvZiBzZXZlcmFsIHZhbHVlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIg
YnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVl
cyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0
Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQK
aW5kZXggZDc1MDgzMmY3MmZmYzExODljMmYzOTg4ZTEwYWVjMzMwMjYyODAwYS4uZWI1ODUzY2Qz
MTU5OTg0Mzc3MTEwY2Q3ZjU0YjUyN2E0NjVkZjhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9z
ZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0
YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEJh
c2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBCYXNp
YyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAogUEFTUyAqIGZvciBj
cmVkZW50aWFsZWQgZmV0Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAotRkFJTCAqIGNhbiBi
ZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykg
IlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2
YWx1ZXMgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3Jr
ZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDQ5YjhiNDU1YTgyNzgyYWI0
MDBiOTljNzE5YzFjMmM4MDYyNGJmNDAuLjVmYmQwYjZmYTc0ZjU4ZmNiYzZhMThlMTk1MjRhMTE4
MWM0ZDJmNjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNl
d29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjEsNyArMjEsNyBAQCBQ
QVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1ZXN0CiBQQVNTIENhY2hlLm1hdGNoIHdpdGgg
YSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJv
ciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2Fu
IGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuIAotRkFJTCBjb3JzLWV4cG9zZWQgaGVhZGVy
IHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3Ry
aW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgY29ycy1leHBvc2VkIGhlYWRl
ciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gCiBQQVNTIE1JTUUgdHlwZSBzaG91bGQgYmUg
c2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LiAKIEZBSUwgTUlNRSB0eXBlIHNob3Vs
ZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1YWxzOiBvcmln
aW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMgc2hvdWxkIG1h
dGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13
b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4
dAppbmRleCA5ZjQ1NWIzNzM3NDUxNmU1Y2M2MmU2MTM3NmRiZWRhMTg0MmExY2I4Li43OTE1YmUy
ZTYwZDA4NGI4MDBiZTU3ZjU5MGEwZDk2NzY1YjY5NjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1z
dG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2Fj
aGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0yMCw3
ICsyMCw3IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUu
bWF0Y2ggd2l0aCBhIG5vbi0yeHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBu
ZXR3b3JrIGVycm9yIFJlc3BvbnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25z
ZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlMIGNvcnMtZXhw
b3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4
cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBjb3JzLWV4
cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBl
IHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAogRkFJTCBNSU1F
IHR5cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9l
cXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBl
cyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDlmNDU1YjM3Mzc0NTE2ZTVjYzYyZTYxMzc2ZGJlZGExODQyYTFj
YjguLjc5MTViZTJlNjBkMDg0YjgwMGJlNTdmNTkwYTBkOTY3NjViNjk2NjggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Ut
d29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50
eHQKQEAgLTIwLDcgKzIwLDcgQEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAog
UEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0
Y2ggd2l0aCBhIG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxh
cmdlIFJlc3BvbnNlcyB0aGF0IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZB
SUwgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQ
QVNTIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFT
UyBNSU1FIHR5cGUgc2hvdWxkIGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4g
CiBGQUlMIE1JTUUgdHlwZSBzaG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlv
bi4gYXNzZXJ0X2VxdWFsczogb3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25z
ZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0
ZXh0L3BsYWluIgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4
cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4
IGUzZjA3ZWM1M2YzNWIxNGExZWRlMWM3YWEwOGYyOGU2ZTU4OGJkYWMuLmFiODZhZTk0ZTRmZjhk
NmY3NzU3YTAxMWU4YTA0ZmMwNzgyMmU5NDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMt
ZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAogCiAKLUZBSUwgQ09SUy1leHBvc2VkIGhlYWRl
ciBuYW1lcyBmb3IgYSByZXNwb25zZSBmcm9tIHN3IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChz
dHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBDT1JTLWV4cG9zZWQgaGVh
ZGVyIG5hbWVzIGZvciBhIHJlc3BvbnNlIGZyb20gc3cgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmViNTg1M2NkMzE1OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3ho
ci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAor
CitQQVNTIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCitQ
QVNTICogZm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCitQ
QVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rh
ci5zdWIuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEz
NTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Ut
c3Rhci5zdWIuYW55Lmh0bWwKQEAgLTAsMCArMSBAQAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWly
ZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRl
c3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5z
dWIuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94
aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgzNTY1NjU2YjAzNDA1
NzdkNDc3NmY0M2QxMWY0MjQzOGVjMzU2M2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1
Yi5hbnkuanMKQEAgLTAsMCArMSw1MCBAQAorLy8gTUVUQTogc2NyaXB0PS4uL2ZldGNoL2FwaS9y
ZXNvdXJjZXMvdXRpbHMuanMKKworY29uc3QgdXJsID0gImh0dHA6Ly97e2hvc3R9fTp7e3BvcnRz
W2h0dHBdWzFdfX0iICsgZGlybmFtZShsb2NhdGlvbi5wYXRobmFtZSkgKyAicmVzb3VyY2VzL3Rv
cC50eHQiLAorICAgICAgc2hhcmVkSGVhZGVycyA9ICI/cGlwZT1oZWFkZXIoQWNjZXNzLUNvbnRy
b2wtRXhwb3NlLUhlYWRlcnMsKil8aGVhZGVyKFRlc3QsWCl8aGVhZGVyKCosd2hvYSl8IgorCith
c3luY190ZXN0KGZ1bmN0aW9uKCkgeworICBjb25zdCBoZWFkZXJzID0gImhlYWRlcihBY2Nlc3Mt
Q29udHJvbC1BbGxvdy1PcmlnaW4sKikiCisgICAgY29uc29sZS5sb2codXJsKTsKKyAgdmFyIGNs
aWVudCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworICBjbGllbnQub3BlbigiR0VUIiwgdXJsICsg
c2hhcmVkSGVhZGVycyArIGhlYWRlcnMpOworICBjbGllbnQuc2VuZCgpOworICBjbGllbnQub25y
ZWFkeXN0YXRlY2hhbmdlID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24gKCkgeworICAgIGlmICh0
aGlzLnJlYWR5U3RhdGUgPT0gdGhpcy5IRUFERVJTX1JFQ0VJVkVEKSB7CisgICAgICBhc3NlcnRf
ZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigidGVzdCIpLCAiWCIpOworICAgICAgYXNz
ZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoIioiKSwgIndob2EiKTsKKyAgICAg
IHRoaXMuZG9uZSgpOworICAgIH0KKyAgfSk7Cit9LCAiQmFzaWMgQWNjZXNzLUNvbnRyb2wtRXhw
b3NlLUhlYWRlcnM6ICogc3VwcG9ydCIpCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24oKSB7CisgIGNv
bnN0IG9yaWdpbiA9IGxvY2F0aW9uLm9yaWdpbiwgLy8gYXNzdW1pbmcgYW4gQVNDSUkgb3JpZ2lu
CisgICAgICAgIGhlYWRlcnMgPSAiaGVhZGVyKEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbiwi
ICsgb3JpZ2luICsgIil8aGVhZGVyKEFjY2Vzcy1Db250cm9sLUFsbG93LUNyZWRlbnRpYWxzLHRy
dWUpIgorICB2YXIgY2xpZW50ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CisgIGNsaWVudC5vcGVu
KCJHRVQiLCB1cmwgKyBzaGFyZWRIZWFkZXJzICsgaGVhZGVycyk7CisgIGNsaWVudC53aXRoQ3Jl
ZGVudGlhbHMgPSB0cnVlOworICBjbGllbnQuc2VuZCgpOworICBjbGllbnQub25yZWFkeXN0YXRl
Y2hhbmdlID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24gKCkgeworICAgIGlmICh0aGlzLnJlYWR5
U3RhdGUgPT0gdGhpcy5IRUFERVJTX1JFQ0VJVkVEKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGNs
aWVudC5nZXRSZXNwb25zZUhlYWRlcigiY29udGVudC10eXBlIiksICJ0ZXh0L3BsYWluIik7IC8v
IHNhZmVsaXN0ZWQKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVy
KCJ0ZXN0IiksIG51bGwpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VI
ZWFkZXIoIioiKSwgIndob2EiKTsKKyAgICAgIHRoaXMuZG9uZSgpOworICAgIH0KKyAgfSk7Cit9
LCAiKiBmb3IgY3JlZGVudGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSIpCisK
K2FzeW5jX3Rlc3QoZnVuY3Rpb24oKSB7CisgIGNvbnN0IGhlYWRlcnMgPSAgImhlYWRlcihBY2Nl
c3MtQ29udHJvbC1BbGxvdy1PcmlnaW4sKil8aGVhZGVyKEFjY2Vzcy1Db250cm9sLUV4cG9zZS1I
ZWFkZXJzLHNldC1jb29raWVcXCwqKSIKKyAgdmFyIGNsaWVudCA9IG5ldyBYTUxIdHRwUmVxdWVz
dCgpOworICBjbGllbnQub3BlbigiR0VUIiwgdXJsICsgc2hhcmVkSGVhZGVycyArIGhlYWRlcnMp
OworICBjbGllbnQuc2VuZCgpOworICBjbGllbnQub25yZWFkeXN0YXRlY2hhbmdlID0gdGhpcy5z
dGVwX2Z1bmMoZnVuY3Rpb24gKCkgeworICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT0gdGhpcy5I
RUFERVJTX1JFQ0VJVkVEKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25z
ZUhlYWRlcigidGVzdCIpLCAiWCIpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVz
cG9uc2VIZWFkZXIoIioiKSwgIndob2EiKTsKKyAgICAgIHRoaXMuZG9uZSgpOworICAgIH0KKyAg
fSk7Cit9LCAiKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIikKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90
b3AudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIv
cmVzb3VyY2VzL3RvcC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODNhMzE1N2QxNGQ5MDgxZWQwMWNkNzk5Mjg3
ODk5ODIyZTE5NTIzYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3AudHh0CkBAIC0wLDAgKzEgQEAK
K3RvcApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393345</attachid>
            <date>2020-03-12 00:30:13 -0700</date>
            <delta_ts>2020-03-12 03:27:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200312083012.patch</filename>
            <type>text/plain</type>
            <size>22574</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uMWRmOTEzMzNkY2U5Yzk2MmFmODQ2MGNhODEzNWI4
MGJjNjFmMDkwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAzLTEyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIEltcGxlbWVu
dCB3aWxkY2FyZCBiZWhhdmlvciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIFsxXSB3
aGlsZSBhbHNvCisgICAgICAgIGNoZWNraW5nIGZvciBjcmVkZW50aWFscyBtb2RlLgorCisgICAg
ICAgIFRlc3Q6IGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3Nl
LXN0YXIuc3ViLmFueS5odG1sCisKKyAgICAgICAgWzFdIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0
d2cub3JnLyNyZWYtZm9yLWNvbmNlcHQtcmVzcG9uc2UtY29ycy1leHBvc2VkLWhlYWRlci1uYW1l
LWxpc3QlRTIlOTElQTIKKworICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3BvbnNlOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6RmV0Y2hSZXNwb25zZTo6ZmV0Y2gpOgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hS
ZXNwb25zZTo6Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBNb2R1
bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxv
YWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50aW5nKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmg6CisKIDIwMjAt
MDMtMTAgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92
ZSBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIgc3luYyBJUEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCmluZGV4IDdhYTAxMWNhNTEyMWJjMGVkY2Vk
ZjI2OTc3MDc4YjIyYWEzNGVmNDMuLjBjMzhiYmJlN2E2MTg0ZDA4NWZmNzI4MzNiOWY4MGQwM2Fm
YTM3ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNl
LmNwcApAQCAtNTYsNyArNTYsNyBAQCBSZWY8RmV0Y2hSZXNwb25zZT4gRmV0Y2hSZXNwb25zZTo6
Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIE9wdGlvbgogICAgIGF1dG8g
ZmV0Y2hSZXNwb25zZSA9IGFkb3B0UmVmKCpuZXcgRmV0Y2hSZXNwb25zZShjb250ZXh0LCBXVEZN
b3ZlKGJvZHkpLCBXVEZNb3ZlKGhlYWRlcnMpLCBXVEZNb3ZlKHJlc3BvbnNlKSkpOwogICAgIGZl
dGNoUmVzcG9uc2UtPnVwZGF0ZUNvbnRlbnRUeXBlKCk7CiAgICAgaWYgKCFpc1N5bnRoZXRpYykK
LSAgICAgICAgZmV0Y2hSZXNwb25zZS0+bV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNw
b25zZUJhc2U6OmZpbHRlcihmZXRjaFJlc3BvbnNlLT5tX2ludGVybmFsUmVzcG9uc2UpOworICAg
ICAgICBmZXRjaFJlc3BvbnNlLT5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNl
QmFzZTo6ZmlsdGVyKGZldGNoUmVzcG9uc2UtPm1faW50ZXJuYWxSZXNwb25zZSwgUmVzb3VyY2VS
ZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6WWVzKTsKICAgICBpZiAoaXNP
cGFxdWUpCiAgICAgICAgIGZldGNoUmVzcG9uc2UtPnNldEJvZHlBc09wYXF1ZSgpOwogICAgIHJl
dHVybiBmZXRjaFJlc3BvbnNlOwpAQCAtMjQ1LDYgKzI0NSw4IEBAIHZvaWQgRmV0Y2hSZXNwb25z
ZTo6ZmV0Y2goU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgRmV0Y2hSZXF1ZXN0JiBy
ZXF1ZXN0CiAgICAgcmVzcG9uc2UtPmFkZEFib3J0U3RlcHMocmVxdWVzdC5zaWduYWwoKSk7CiAK
ICAgICByZXNwb25zZS0+bV9ib2R5TG9hZGVyID0gbWFrZVVuaXF1ZTxCb2R5TG9hZGVyPihyZXNw
b25zZS5nZXQoKSwgV1RGTW92ZShyZXNwb25zZUNhbGxiYWNrKSk7CisgICAgaWYgKHJlcXVlc3Qu
ZmV0Y2hPcHRpb25zKCkuY3JlZGVudGlhbHMgIT0gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFsczo6
SW5jbHVkZSkKKyAgICAgICAgcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+cGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjaygpOwogICAgIGlmICghcmVzcG9uc2UtPm1fYm9keUxvYWRlci0+c3RhcnQo
Y29udGV4dCwgcmVxdWVzdCkpCiAgICAgICAgIHJlc3BvbnNlLT5tX2JvZHlMb2FkZXIgPSBudWxs
cHRyOwogfQpAQCAtMzMxLDcgKzMzMyw3IEBAIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6On5C
b2R5TG9hZGVyKCkKIHN0YXRpYyB1aW50NjRfdCBuZXh0T3BhcXVlTG9hZElkZW50aWZpZXIgeyAw
IH07CiB2b2lkIEZldGNoUmVzcG9uc2U6OkJvZHlMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNvdXJjZVJlc3BvbnNlKQogewotICAgIG1fcmVzcG9u
c2UubV9maWx0ZXJlZFJlc3BvbnNlID0gUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNv
dXJjZVJlc3BvbnNlKTsKKyAgICBtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291
cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIocmVzb3VyY2VSZXNwb25zZSwgbV9wZXJmb3JtRXhwb3Nl
QWxsSGVhZGVyc0NoZWNrKTsKICAgICBtX3Jlc3BvbnNlLm1faW50ZXJuYWxSZXNwb25zZSA9IHJl
c291cmNlUmVzcG9uc2U7CiAgICAgbV9yZXNwb25zZS5tX2ludGVybmFsUmVzcG9uc2Uuc2V0VHlw
ZShtX3Jlc3BvbnNlLm1fZmlsdGVyZWRSZXNwb25zZS0+dHlwZSgpKTsKICAgICBpZiAocmVzb3Vy
Y2VSZXNwb25zZS50YWludGluZygpID09IFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpPcGFx
dWUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKaW5k
ZXggOTdhZDcyNzNlNmMwNjBiODVmMjk4YzJhMmU3OTY5ZTVlZmRjZGE1ZC4uOWFjOWVhZjZlODk0
ZjE5YjVhM2QyNmYzYTEzNWE0YzhmMmEzZWU2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKQEAgLTE0Myw2ICsxNDMsOCBAQCBwcml2YXRlOgogICAg
ICAgICBOb3RpZmljYXRpb25DYWxsYmFjayB0YWtlTm90aWZpY2F0aW9uQ2FsbGJhY2soKSB7IHJl
dHVybiBXVEZNb3ZlKG1fcmVzcG9uc2VDYWxsYmFjayk7IH0KICAgICAgICAgQ29uc3VtZURhdGFC
eUNodW5rQ2FsbGJhY2sgdGFrZUNvbnN1bWVEYXRhQ2FsbGJhY2soKSB7IHJldHVybiBXVEZNb3Zl
KG1fY29uc3VtZURhdGFDYWxsYmFjayk7IH0KIAorICAgICAgICB2b2lkIHBlcmZvcm1FeHBvc2VB
bGxIZWFkZXJzQ2hlY2soKSB7IG1fcGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayA9IFJlc291
cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllczsgfQorCiAgICAg
cHJpdmF0ZToKICAgICAgICAgLy8gRmV0Y2hMb2FkZXJDbGllbnQgQVBJCiAgICAgICAgIHZvaWQg
ZGlkU3VjY2VlZCgpIGZpbmFsOwpAQCAtMTU1LDYgKzE1Nyw3IEBAIHByaXZhdGU6CiAgICAgICAg
IENvbnN1bWVEYXRhQnlDaHVua0NhbGxiYWNrIG1fY29uc3VtZURhdGFDYWxsYmFjazsKICAgICAg
ICAgc3RkOjp1bmlxdWVfcHRyPEZldGNoTG9hZGVyPiBtX2xvYWRlcjsKICAgICAgICAgUmVmPFBl
bmRpbmdBY3Rpdml0eTxGZXRjaFJlc3BvbnNlPj4gbV9wZW5kaW5nQWN0aXZpdHk7CisgICAgICAg
IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgbV9wZXJmb3Jt
RXhwb3NlQWxsSGVhZGVyc0NoZWNrIHsgUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9zZUFs
bEhlYWRlcnNDaGVjazo6Tm8gfTsKICAgICB9OwogCiAgICAgbXV0YWJsZSBPcHRpb25hbDxSZXNv
dXJjZVJlc3BvbnNlPiBtX2ZpbHRlcmVkUmVzcG9uc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IGQ1NmZhNWJkZDhjNWM0
ZjM4ZjhjMzVmOTM5N2UwZDQwODUwOWZkOGYuLjU5YmRhMTcxZjRmYWI5NGRjODViZTMwMDRmNWMz
ZWQ4MDlhOWQ5ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCkBAIC0zOTMsNyArMzkzLDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnMKICAgICB9CiAKICAgICBpZiAocmVzcG9uc2UudHlwZSgpID09IFJlc291cmNlUmVzcG9u
c2U6OlR5cGU6OkRlZmF1bHQpIHsKLSAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25z
ZShpZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7Cisg
ICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwgUmVzb3VyY2VS
ZXNwb25zZUJhc2U6OmZpbHRlcihyZXNwb25zZSwgbV9vcHRpb25zLmNyZWRlbnRpYWxzID09IEZl
dGNoT3B0aW9uczo6Q3JlZGVudGlhbHM6OkluY2x1ZGUgPyBSZXNvdXJjZVJlc3BvbnNlOjpQZXJm
b3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpObyA6IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1F
eHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllcykpOwogICAgICAgICBpZiAocmVzcG9uc2UudGFpbnRp
bmcoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlKSB7CiAgICAgICAgICAg
ICBjbGVhclJlc291cmNlKCk7CiAgICAgICAgICAgICBpZiAobV9jbGllbnQpCkBAIC00NjYsNyAr
NDY2LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
QVNTRVJUKHJlc3BvbnNlLnR5cGUoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpEZWZhdWx0
KTsKIAotICAgICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVy
LCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7CisgICAgICAgICAgICBt
X2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2VC
YXNlOjpmaWx0ZXIocmVzcG9uc2UsIG1fb3B0aW9ucy5jcmVkZW50aWFscyA9PSBGZXRjaE9wdGlv
bnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4cG9z
ZUFsbEhlYWRlcnNDaGVjazo6Tm8gOiBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3NlQWxs
SGVhZGVyc0NoZWNrOjpZZXMpKTsKICAgICAgICAgICAgIGlmIChtX3Jlc291cmNlLT5yZXNvdXJj
ZUJ1ZmZlcigpKQogICAgICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0YShtX3Jl
c291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLT5kYXRhKCksIG1fcmVzb3VyY2UtPnJlc291cmNlQnVm
ZmVyKCktPnNpemUoKSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggYmEwMjQ4NDBl
MGJmMGNmMjM0ZmNhYzlmODMwODU5ZTM2Mzc0NjQ1NS4uNDQ0NDFiMzRlZDNlZGIwZjVjMWNhN2Rl
ZGM4NjI4M2NhNDFmMjFkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTE0OCw3ICsxNDgsNyBAQCBS
ZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzeW50aGV0aWNSZWRpcmVjdFJl
c3BvbnNlKGNvbnN0IFVSTCYgZnJvbQogICAgIHJldHVybiByZWRpcmVjdFJlc3BvbnNlOwogfQog
Ci1SZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9u
c2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFBlcmZvcm1F
eHBvc2VBbGxIZWFkZXJzQ2hlY2sgcGVyZm9ybUNoZWNrKQogewogICAgIGlmIChyZXNwb25zZS50
YWludGluZygpID09IFRhaW50aW5nOjpPcGFxdWUpIHsKICAgICAgICAgUmVzb3VyY2VSZXNwb25z
ZSBvcGFxdWVSZXNwb25zZTsKQEAgLTE2OSwxMCArMTY5LDExIEBAIFJlc291cmNlUmVzcG9uc2Ug
UmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSkKICAgICAvLyBMZXQncyBpbml0aWFsaXplIGZpbHRlcmVkUmVzcG9uc2UgdG8gcmVtb3Zl
IHNvbWUgaGVhZGVyIGZpZWxkcy4KICAgICBmaWx0ZXJlZFJlc3BvbnNlLmxhenlJbml0KEFsbEZp
ZWxkcyk7CiAKKyAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy5yZW1vdmUo
SFRUUEhlYWRlck5hbWU6OlNldENvb2tpZSk7CisgICAgZmlsdGVyZWRSZXNwb25zZS5tX2h0dHBI
ZWFkZXJGaWVsZHMucmVtb3ZlKEhUVFBIZWFkZXJOYW1lOjpTZXRDb29raWUyKTsKKwogICAgIGlm
IChyZXNwb25zZS50YWludGluZygpID09IFRhaW50aW5nOjpCYXNpYykgewogICAgICAgICBmaWx0
ZXJlZFJlc3BvbnNlLnNldFR5cGUoVHlwZTo6QmFzaWMpOwotICAgICAgICBmaWx0ZXJlZFJlc3Bv
bnNlLm1faHR0cEhlYWRlckZpZWxkcy5yZW1vdmUoSFRUUEhlYWRlck5hbWU6OlNldENvb2tpZSk7
Ci0gICAgICAgIGZpbHRlcmVkUmVzcG9uc2UubV9odHRwSGVhZGVyRmllbGRzLnJlbW92ZShIVFRQ
SGVhZGVyTmFtZTo6U2V0Q29va2llMik7CiAgICAgICAgIHJldHVybiBmaWx0ZXJlZFJlc3BvbnNl
OwogICAgIH0KIApAQCAtMTgwLDYgKzE4MSw5IEBAIFJlc291cmNlUmVzcG9uc2UgUmVzb3VyY2VS
ZXNwb25zZUJhc2U6OmZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAg
ICBmaWx0ZXJlZFJlc3BvbnNlLnNldFR5cGUoVHlwZTo6Q29ycyk7CiAKICAgICBhdXRvIGFjY2Vz
c0NvbnRyb2xFeHBvc2VIZWFkZXJTZXQgPSBwYXJzZUFjY2Vzc0NvbnRyb2xBbGxvd0xpc3Q8QVND
SUlDYXNlSW5zZW5zaXRpdmVIYXNoPihyZXNwb25zZS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRl
ck5hbWU6OkFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7CisgICAgaWYgKHBlcmZvcm1DaGVj
ayA9PSBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMgJiYgYWNjZXNzQ29udHJvbEV4
cG9zZUhlYWRlclNldC5jb250YWlucygiKiIpKQorICAgICAgICByZXR1cm4gZmlsdGVyZWRSZXNw
b25zZTsKKwogICAgIGZpbHRlcmVkUmVzcG9uc2UubV9odHRwSGVhZGVyRmllbGRzLnVuY29tbW9u
SGVhZGVycygpLnJlbW92ZUFsbE1hdGNoaW5nKFsmXShhdXRvJiBlbnRyeSkgewogICAgICAgICBy
ZXR1cm4gIWlzQ3Jvc3NPcmlnaW5TYWZlSGVhZGVyKGVudHJ5LmtleSwgYWNjZXNzQ29udHJvbEV4
cG9zZUhlYWRlclNldCk7CiAgICAgfSk7CkBAIC00NDMsMTIgKzQ0NywxNSBAQCB2b2lkIFJlc291
cmNlUmVzcG9uc2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdUb1RhaW50
aW5nKCkKICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpCYXNpYzoKICAgICAg
ICAgcmV0dXJuOwogICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6OkNvcnM6IHsK
KyAgICAgICAgYXV0byBjb3JzU2FmZUhlYWRlclNldCA9IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93
TGlzdDxBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+KGh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVy
TmFtZTo6QWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlcnMpKTsKKyAgICAgICAgaWYgKGNvcnNTYWZl
SGVhZGVyU2V0LmNvbnRhaW5zKCIqIikpCisgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAg
SFRUUEhlYWRlck1hcCBmaWx0ZXJlZEhlYWRlcnM7CiAgICAgICAgIGZvciAoYXV0byYgaGVhZGVy
IDogbV9odHRwSGVhZGVyRmllbGRzLmNvbW1vbkhlYWRlcnMoKSkgewogICAgICAgICAgICAgaWYg
KGlzU2FmZUNyb3NzT3JpZ2luUmVzcG9uc2VIZWFkZXIoaGVhZGVyLmtleSkpCiAgICAgICAgICAg
ICAgICAgZmlsdGVyZWRIZWFkZXJzLmFkZChoZWFkZXIua2V5LCBXVEZNb3ZlKGhlYWRlci52YWx1
ZSkpOwogICAgICAgICB9Ci0gICAgICAgIGF1dG8gY29yc1NhZmVIZWFkZXJTZXQgPSBwYXJzZUFj
Y2Vzc0NvbnRyb2xBbGxvd0xpc3Q8QVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPihodHRwSGVhZGVy
RmllbGQoSFRUUEhlYWRlck5hbWU6OkFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7CiAgICAg
ICAgIGZvciAoYXV0byYgaGVhZGVyTmFtZSA6IGNvcnNTYWZlSGVhZGVyU2V0KSB7CiAgICAgICAg
ICAgICBpZiAoIWZpbHRlcmVkSGVhZGVycy5jb250YWlucyhoZWFkZXJOYW1lKSkgewogICAgICAg
ICAgICAgICAgIGF1dG8gdmFsdWUgPSBtX2h0dHBIZWFkZXJGaWVsZHMuZ2V0KGhlYWRlck5hbWUp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJl
c3BvbnNlQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJl
c3BvbnNlQmFzZS5oCmluZGV4IDA5Yzc1YjM2ZWJhZjhiMWQ1MzYwOWJlZjM2MGM0MGE5M2JhOGM0
MjQuLjYxM2VkZmVhZjMwZjY1MmI1MWJhMzllMmRmYmI4ZWJmZTgyOTk5NTIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNl
LmgKQEAgLTE5Myw3ICsxOTMsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUYWludGluZyhUYWlu
dGluZyB0YWludGluZykgeyBtX3RhaW50aW5nID0gdGFpbnRpbmc7IH0KICAgICBUYWludGluZyB0
YWludGluZygpIGNvbnN0IHsgcmV0dXJuIG1fdGFpbnRpbmc7IH0KIAotICAgIHN0YXRpYyBSZXNv
dXJjZVJlc3BvbnNlIGZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgZW51bSBj
bGFzcyBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrIDogdWludDhfdCB7IFllcywgTm8gfTsK
KyAgICBzdGF0aWMgUmVzb3VyY2VSZXNwb25zZSBmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYsIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2spOwogCiAgICAgV0VCQ09SRV9FWFBPUlQg
c3RhdGljIFJlc291cmNlUmVzcG9uc2Ugc3ludGhldGljUmVkaXJlY3RSZXNwb25zZShjb25zdCBV
UkwmIGZyb21VUkwsIGNvbnN0IFVSTCYgdG9VUkwpOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCBjYzBlZmUxZmE4MWJlZDA3ZDFjYTU1MDFkM2RiOWZmNjM3ZGM4YmE4Li5jMzNl
MTYxMzRjNTk4YWRhMjFkYWM4ZmRhMmRjYmFkN2ZlZDEwMjNjIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAyMC0wMy0xMiAgUm9iIEJ1aXMgIDxyYnVp
c0BpZ2FsaWEuY29tPgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlvciBmb3Ig
Q3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgaW1wcm92ZWQgdGVzdCByZXN1bHRzIGFuZCBhZGQg
YSB0ZXN0IGZvciB0ZXN0aW5nCisgICAgICAgIHhociBhbmQgd2lsZGNhcmQgYmVoYXZpb3IgZm9y
IENyb3NzLU9yaWdpbi1FeHBvc2UtSGVhZGVycyBiZWhhdmlvci4KKworICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9j
b3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdv
cmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRj
aC5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVk
LnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdl
Yi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LmpzOiBBZGRlZC4K
KyAgICAgICAgKHNoYXJlZEhlYWRlcnMuc3RyaW5nX2FwcGVhcmVkX2hlcmUuYXN5bmNfdGVzdCk6
CisgICAgICAgIChzdHJpbmdfYXBwZWFyZWRfaGVyZS5hc3luY190ZXN0KToKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3AudHh0OiBBZGRlZC4KKwogMjAyMC0w
My0xMCAgUm9iIEJ1aXMgIDxyYnVpc0BpZ2FsaWEuY29tPgogCiAgICAgICAgIEFsaWduIHdpdGgg
T3JpZ2luIGhlYWRlciBjaGFuZ2VzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3Vi
LmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50
eHQKaW5kZXggZDc1MDgzMmY3MmZmYzExODljMmYzOTg4ZTEwYWVjMzMwMjYyODAwYS4uZWI1ODUz
Y2QzMTU5OTg0Mzc3MTEwY2Q3ZjU0YjUyN2E0NjVkZjhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4
cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5z
dWIuYW55LWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBCYXNpYyBBY2Nlc3Mt
Q29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVk
IChzdHJpbmcpICJYIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQmFzaWMgQWNjZXNzLUNv
bnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCAKIFBBU1MgKiBmb3IgY3JlZGVudGlhbGVk
IGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSAKLUZBSUwgKiBjYW4gYmUgb25lIG9mIHNl
dmVyYWwgdmFsdWVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJYIiBidXQgZ290
IChvYmplY3QpIG51bGwKK1BBU1MgKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIAogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zl
dGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkv
Y29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCBk
NzUwODMyZjcyZmZjMTE4OWMyZjM5ODhlMTBhZWMzMzAyNjI4MDBhLi5lYjU4NTNjZDMxNTk5ODQz
NzcxMTBjZDdmNTRiNTI3YTQ2NWRmOGE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIu
YW55Lndvcmtlci1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLUZBSUwgQmFzaWMgQWNj
ZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIEJhc2ljIEFjY2Vz
cy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCiBQQVNTICogZm9yIGNyZWRlbnRp
YWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCi1GQUlMICogY2FuIGJlIG9uZSBv
ZiBzZXZlcmFsIHZhbHVlcyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0
IGdvdCAob2JqZWN0KSBudWxsCitQQVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyAK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNo
Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNo
ZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggNDliOGI0NTVhODI3ODJhYjQwMGI5OWM3
MTljMWMyYzgwNjI0YmY0MC4uNWZiZDBiNmZhNzRmNThmY2JjNmExOGUxOTUyNGExMTgxYzRkMmY2
OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNo
Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIv
Y2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0yMSw3ICsyMSw3IEBAIFBBU1MgQ2Fj
aGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5vbi0y
eHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBuZXR3b3JrIGVycm9yIFJlc3Bv
bnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUgY2xv
bmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlMIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxk
IGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJi
YXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3Vs
ZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBlIHNob3VsZCBiZSBzZXQgZnJv
bSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAogRkFJTCBNSU1FIHR5cGUgc2hvdWxkIGJlIGZy
b3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6IG9yaWdpbmFsIGFu
ZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2ggZXhw
ZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
Y2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
Y2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4
IDlmNDU1YjM3Mzc0NTE2ZTVjYzYyZTYxMzc2ZGJlZGExODQyYTFjYjguLjc5MTViZTJlNjBkMDg0
YjgwMGJlNTdmNTkwYTBkOTY3NjViNjk2NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uv
d2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9y
YWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIwLDcgKzIwLDcg
QEAgUEFTUyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBDYWNoZS5tYXRjaCB3
aXRoIGEgbm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5ldHdvcmsg
ZXJyb3IgUmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3BvbnNlcyB0aGF0
IGNhbiBiZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29ycy1leHBvc2VkIGhl
YWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
KHN0cmluZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNvcnMtZXhwb3NlZCBo
ZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1FIHR5cGUgc2hvdWxk
IGJlIHNldCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlMIE1JTUUgdHlwZSBz
aG91bGQgYmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFsczog
b3JpZ2luYWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3Vs
ZCBtYXRjaCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3Rl
ZC50eHQKaW5kZXggOWY0NTViMzczNzQ1MTZlNWNjNjJlNjEzNzZkYmVkYTE4NDJhMWNiOC4uNzkx
NWJlMmU2MGQwODRiODAwYmU1N2Y1OTBhMGQ5Njc2NWI2OTY2OCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2Fj
aGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAt
MjAsNyArMjAsNyBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1ZXN0CiBQQVNTIENh
Y2hlLm1hdGNoIHdpdGggYSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNoZS5tYXRjaCB3aXRo
IGEgbmV0d29yayBlcnJvciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVz
cG9uc2VzIHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuIAotRkFJTCBjb3Jz
LWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBhc3NlcnRfZXF1YWxz
OiBleHBlY3RlZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgY29y
cy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gCiBQQVNTIE1JTUUg
dHlwZSBzaG91bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LiAKIEZBSUwg
TUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3Nl
cnRfZXF1YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUg
dHlwZXMgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxh
aW4iCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1o
ZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gt
Y29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQKaW5kZXggZTNmMDdl
YzUzZjM1YjE0YTFlZGUxYzdhYTA4ZjI4ZTZlNTg4YmRhYy4uYWI4NmFlOTRlNGZmOGQ2Zjc3NTdh
MDExZThhMDRmYzA3ODIyZTk0OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gt
Y29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtY29ycy1leHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3Rl
ZC50eHQKQEAgLTEsNCArMSw0IEBACiAKIAotRkFJTCBDT1JTLWV4cG9zZWQgaGVhZGVyIG5hbWVz
IGZvciBhIHJlc3BvbnNlIGZyb20gc3cgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykg
ImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIENPUlMtZXhwb3NlZCBoZWFkZXIgbmFt
ZXMgZm9yIGEgcmVzcG9uc2UgZnJvbSBzdyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZWI1ODUzY2QzMTU5OTg0Mzc3MTEwY2Q3ZjU0YjUyN2E0NjVkZjhhNgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMt
ZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACisKK1BBU1Mg
QmFzaWMgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCAKK1BBU1MgKiBm
b3IgY3JlZGVudGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSAKK1BBU1MgKiBj
YW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5h
bnkuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhy
L2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzODI5MTM1MjhlNjkz
YjNhNWQ1NmM2NjBhNDUwNjA5ODBiNTQ4YzMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1
Yi5hbnkuaHRtbApAQCAtMCwwICsxIEBACis8IS0tIFRoaXMgZmlsZSBpcyByZXF1aXJlZCBmb3Ig
V2ViS2l0IHRlc3QgaW5mcmFzdHJ1Y3R1cmUgdG8gcnVuIHRoZSB0ZW1wbGF0ZWQgdGVzdCAtLT4K
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnku
anMgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3Jz
LWV4cG9zZS1zdGFyLnN1Yi5hbnkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2U5YWNmZjlhNTcwOTQyYzI0ZWJh
MDRjOTRmYWM1NDlmNTI1ZWM4MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5q
cwpAQCAtMCwwICsxLDUzIEBACisvLyBNRVRBOiBzY3JpcHQ9Li4vZmV0Y2gvYXBpL3Jlc291cmNl
cy91dGlscy5qcworCitjb25zdCB1cmwgPSAiaHR0cDovL3t7aG9zdH19Ont7cG9ydHNbaHR0cF1b
MV19fSIgKyBkaXJuYW1lKGxvY2F0aW9uLnBhdGhuYW1lKSArICJyZXNvdXJjZXMvdG9wLnR4dCIs
CisgICAgICBzaGFyZWRIZWFkZXJzID0gIj9waXBlPWhlYWRlcihBY2Nlc3MtQ29udHJvbC1FeHBv
c2UtSGVhZGVycywqKXxoZWFkZXIoVGVzdCxYKXxoZWFkZXIoKix3aG9hKXwiCisKK2FzeW5jX3Rl
c3QoZnVuY3Rpb24oKSB7CisgIGNvbnN0IGhlYWRlcnMgPSAiaGVhZGVyKEFjY2Vzcy1Db250cm9s
LUFsbG93LU9yaWdpbiwqKSIKKyAgICBjb25zb2xlLmxvZyh1cmwpOworICB2YXIgY2xpZW50ID0g
bmV3IFhNTEh0dHBSZXF1ZXN0KCk7CisgIGNsaWVudC5vcGVuKCJHRVQiLCB1cmwgKyBzaGFyZWRI
ZWFkZXJzICsgaGVhZGVycyk7CisgIGNsaWVudC5zZW5kKCk7CisgIGNsaWVudC5vbnJlYWR5c3Rh
dGVjaGFuZ2UgPSB0aGlzLnN0ZXBfZnVuYyhmdW5jdGlvbiAoKSB7CisgICAgaWYgKHRoaXMucmVh
ZHlTdGF0ZSA9PSB0aGlzLkhFQURFUlNfUkVDRUlWRUQpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMo
Y2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJ0ZXN0IiksICJYIik7CisgICAgICBhc3NlcnRfZXF1
YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigic2V0LWNvb2tpZSIpLCBudWxsKTsKKyAgICAg
IGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCIqIiksICJ3aG9hIik7Cisg
ICAgICB0aGlzLmRvbmUoKTsKKyAgICB9CisgIH0pOworfSwgIkJhc2ljIEFjY2Vzcy1Db250cm9s
LUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQiKQorCithc3luY190ZXN0KGZ1bmN0aW9uKCkgewor
ICBjb25zdCBvcmlnaW4gPSBsb2NhdGlvbi5vcmlnaW4sIC8vIGFzc3VtaW5nIGFuIEFTQ0lJIG9y
aWdpbgorICAgICAgICBoZWFkZXJzID0gImhlYWRlcihBY2Nlc3MtQ29udHJvbC1BbGxvdy1Pcmln
aW4sIiArIG9yaWdpbiArICIpfGhlYWRlcihBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50aWFs
cyx0cnVlKSIKKyAgdmFyIGNsaWVudCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworICBjbGllbnQu
b3BlbigiR0VUIiwgdXJsICsgc2hhcmVkSGVhZGVycyArIGhlYWRlcnMpOworICBjbGllbnQud2l0
aENyZWRlbnRpYWxzID0gdHJ1ZTsKKyAgY2xpZW50LnNlbmQoKTsKKyAgY2xpZW50Lm9ucmVhZHlz
dGF0ZWNoYW5nZSA9IHRoaXMuc3RlcF9mdW5jKGZ1bmN0aW9uICgpIHsKKyAgICBpZiAodGhpcy5y
ZWFkeVN0YXRlID09IHRoaXMuSEVBREVSU19SRUNFSVZFRCkgeworICAgICAgYXNzZXJ0X2VxdWFs
cyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtdHlwZSIpLCAidGV4dC9wbGFpbiIp
OyAvLyBzYWZlbGlzdGVkCisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhl
YWRlcigidGVzdCIpLCBudWxsKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3Bv
bnNlSGVhZGVyKCJzZXQtY29va2llIiksIG51bGwpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGll
bnQuZ2V0UmVzcG9uc2VIZWFkZXIoIioiKSwgIndob2EiKTsKKyAgICAgIHRoaXMuZG9uZSgpOwor
ICAgIH0KKyAgfSk7Cit9LCAiKiBmb3IgY3JlZGVudGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVz
IGxpdGVyYWxseSIpCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24oKSB7CisgIGNvbnN0IGhlYWRlcnMg
PSAgImhlYWRlcihBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4sKil8aGVhZGVyKEFjY2Vzcy1D
b250cm9sLUV4cG9zZS1IZWFkZXJzLHNldC1jb29raWVcXCwqKSIKKyAgdmFyIGNsaWVudCA9IG5l
dyBYTUxIdHRwUmVxdWVzdCgpOworICBjbGllbnQub3BlbigiR0VUIiwgdXJsICsgc2hhcmVkSGVh
ZGVycyArIGhlYWRlcnMpOworICBjbGllbnQuc2VuZCgpOworICBjbGllbnQub25yZWFkeXN0YXRl
Y2hhbmdlID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24gKCkgeworICAgIGlmICh0aGlzLnJlYWR5
U3RhdGUgPT0gdGhpcy5IRUFERVJTX1JFQ0VJVkVEKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGNs
aWVudC5nZXRSZXNwb25zZUhlYWRlcigidGVzdCIpLCAiWCIpOworICAgICAgYXNzZXJ0X2VxdWFs
cyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInNldC1jb29raWUiKSwgbnVsbCk7CisgICAgICBh
c3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigiKiIpLCAid2hvYSIpOworICAg
ICAgdGhpcy5kb25lKCk7CisgICAgfQorICB9KTsKK30sICIqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJh
bCB2YWx1ZXMiKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy94aHIvcmVzb3VyY2VzL3RvcC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9yZXNvdXJjZXMvdG9wLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
M2EzMTU3ZDE0ZDkwODFlZDAxY2Q3OTkyODc4OTk4MjJlMTk1MjNhCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvcmVzb3Vy
Y2VzL3RvcC50eHQKQEAgLTAsMCArMSBAQAordG9wClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393354</attachid>
            <date>2020-03-12 03:27:05 -0700</date>
            <delta_ts>2020-03-12 06:55:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200312112703.patch</filename>
            <type>text/plain</type>
            <size>21724</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uZWYwYjEzMDEzMTQwYTVhODkyNTYwNTM1NDEzNTQ3
ZDU5N2U2NDM0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTAzLTEyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJlaGF2aW9y
IGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMgWzFdIHdoaWxlIGFsc28KKyAgICAgICAg
Y2hlY2tpbmcgZm9yIGNyZWRlbnRpYWxzIG1vZGUuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWwK
KworICAgICAgICBbMV0gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI3JlZi1mb3ItY29u
Y2VwdC1yZXNwb25zZS1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWUtbGlzdCVFMiU5MSVBMgorCisg
ICAgICAgICogTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZldGNoUmVzcG9uc2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3Bv
bnNlOjpmZXRjaCk6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3BvbnNlOjpCb2R5TG9hZGVy
OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNw
b25zZS5oOgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRG
aW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9u
c2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXplSFRU
UEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmcpOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaDoKKwogMjAyMC0wMy0xMCAgeW91ZW5uIGZhYmxl
dCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIFNhbXBsZUJ1ZmZlckRpc3Bs
YXlMYXllciBzeW5jIElQQwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRj
aC9GZXRjaFJlc3BvbnNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hS
ZXNwb25zZS5jcHAKaW5kZXggN2FhMDExY2E1MTIxYmMwZWRjZWRmMjY5NzcwNzhiMjJhYTM0ZWY0
My4uNGQ1MDQwYWZjMDM0ODZhMDY5MjYzZGYxM2RjMDIwNzk1Y2ZmOWM1NiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCkBAIC01Niw3ICs1Niw3
IEBAIFJlZjxGZXRjaFJlc3BvbnNlPiBGZXRjaFJlc3BvbnNlOjpjcmVhdGUoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYgY29udGV4dCwgT3B0aW9uCiAgICAgYXV0byBmZXRjaFJlc3BvbnNlID0gYWRv
cHRSZWYoKm5ldyBGZXRjaFJlc3BvbnNlKGNvbnRleHQsIFdURk1vdmUoYm9keSksIFdURk1vdmUo
aGVhZGVycyksIFdURk1vdmUocmVzcG9uc2UpKSk7CiAgICAgZmV0Y2hSZXNwb25zZS0+dXBkYXRl
Q29udGVudFR5cGUoKTsKICAgICBpZiAoIWlzU3ludGhldGljKQotICAgICAgICBmZXRjaFJlc3Bv
bnNlLT5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKGZl
dGNoUmVzcG9uc2UtPm1faW50ZXJuYWxSZXNwb25zZSk7CisgICAgICAgIGZldGNoUmVzcG9uc2Ut
Pm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoZmV0Y2hS
ZXNwb25zZS0+bV9pbnRlcm5hbFJlc3BvbnNlLCBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhw
b3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMpOwogICAgIGlmIChpc09wYXF1ZSkKICAgICAgICAgZmV0
Y2hSZXNwb25zZS0+c2V0Qm9keUFzT3BhcXVlKCk7CiAgICAgcmV0dXJuIGZldGNoUmVzcG9uc2U7
CkBAIC0zMzEsNyArMzMxLDggQEAgRmV0Y2hSZXNwb25zZTo6Qm9keUxvYWRlcjo6fkJvZHlMb2Fk
ZXIoKQogc3RhdGljIHVpbnQ2NF90IG5leHRPcGFxdWVMb2FkSWRlbnRpZmllciB7IDAgfTsKIHZv
aWQgRmV0Y2hSZXNwb25zZTo6Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc291cmNlUmVzcG9uc2UpCiB7Ci0gICAgbV9yZXNwb25zZS5tX2Zp
bHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc291cmNlUmVz
cG9uc2UpOworICAgIGF1dG8gcGVyZm9ybUNoZWNrID0gbV9jcmVkZW50aWFscyA9PSBGZXRjaE9w
dGlvbnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9ybUV4
cG9zZUFsbEhlYWRlcnNDaGVjazo6Tm8gOiBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3Nl
QWxsSGVhZGVyc0NoZWNrOjpZZXM7CisgICAgbV9yZXNwb25zZS5tX2ZpbHRlcmVkUmVzcG9uc2Ug
PSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc291cmNlUmVzcG9uc2UsIHBlcmZvcm1D
aGVjayk7CiAgICAgbV9yZXNwb25zZS5tX2ludGVybmFsUmVzcG9uc2UgPSByZXNvdXJjZVJlc3Bv
bnNlOwogICAgIG1fcmVzcG9uc2UubV9pbnRlcm5hbFJlc3BvbnNlLnNldFR5cGUobV9yZXNwb25z
ZS5tX2ZpbHRlcmVkUmVzcG9uc2UtPnR5cGUoKSk7CiAgICAgaWYgKHJlc291cmNlUmVzcG9uc2Uu
dGFpbnRpbmcoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlKSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oCmluZGV4IDk3YWQ3Mjcz
ZTZjMDYwYjg1ZjI5OGMyYTJlNzk2OWU1ZWZkY2RhNWQuLmQ2ZjlmZDYwMTUwYzFkMmU0ZTM2ODEw
YjdkYjJhNzZiZmQ3OGY0MDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hSZXNwb25zZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0
Y2hSZXNwb25zZS5oCkBAIC0xNTUsNiArMTU1LDcgQEAgcHJpdmF0ZToKICAgICAgICAgQ29uc3Vt
ZURhdGFCeUNodW5rQ2FsbGJhY2sgbV9jb25zdW1lRGF0YUNhbGxiYWNrOwogICAgICAgICBzdGQ6
OnVuaXF1ZV9wdHI8RmV0Y2hMb2FkZXI+IG1fbG9hZGVyOwogICAgICAgICBSZWY8UGVuZGluZ0Fj
dGl2aXR5PEZldGNoUmVzcG9uc2U+PiBtX3BlbmRpbmdBY3Rpdml0eTsKKyAgICAgICAgRmV0Y2hP
cHRpb25zOjpDcmVkZW50aWFscyBtX2NyZWRlbnRpYWxzOwogICAgIH07CiAKICAgICBtdXRhYmxl
IE9wdGlvbmFsPFJlc291cmNlUmVzcG9uc2U+IG1fZmlsdGVyZWRSZXNwb25zZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXgg
ZDU2ZmE1YmRkOGM1YzRmMzhmOGMzNWY5Mzk3ZTBkNDA4NTA5ZmQ4Zi4uOGFmNGQwMjVjZWQzYzc2
YTc0YmMzMDEyMzAwNzcwYjFhN2ZiMzNmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAgLTM5Myw3ICszOTMsNyBAQCB2b2lk
IERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29ucwogICAgIH0KIAogICAgIGlmIChyZXNwb25zZS50eXBlKCkgPT0g
UmVzb3VyY2VSZXNwb25zZTo6VHlwZTo6RGVmYXVsdCkgewotICAgICAgICBtX2NsaWVudC0+ZGlk
UmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIo
cmVzcG9uc2UpKTsKKyAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlm
aWVyLCBSZXNvdXJjZVJlc3BvbnNlOjpmaWx0ZXIocmVzcG9uc2UsIG1fb3B0aW9ucy5jcmVkZW50
aWFscyA9PSBGZXRjaE9wdGlvbnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNw
b25zZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6Tm8gOiBSZXNvdXJjZVJlc3BvbnNl
OjpQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMpKTsKICAgICAgICAgaWYgKHJlc3Bv
bnNlLnRhaW50aW5nKCkgPT0gUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6Ok9wYXF1ZSkgewog
ICAgICAgICAgICAgY2xlYXJSZXNvdXJjZSgpOwogICAgICAgICAgICAgaWYgKG1fY2xpZW50KQpA
QCAtNDY2LDcgKzQ2Niw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIEFTU0VSVChyZXNwb25zZS50eXBlKCkgPT0gUmVzb3VyY2VSZXNwb25zZTo6VHlw
ZTo6RGVmYXVsdCk7CiAKLSAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2Uo
aWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNwb25zZSkpOworICAg
ICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVyLCBSZXNvdXJj
ZVJlc3BvbnNlOjpmaWx0ZXIocmVzcG9uc2UsIG1fb3B0aW9ucy5jcmVkZW50aWFscyA9PSBGZXRj
aE9wdGlvbnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25zZTo6UGVyZm9y
bUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6Tm8gOiBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhw
b3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMpKTsKICAgICAgICAgICAgIGlmIChtX3Jlc291cmNlLT5y
ZXNvdXJjZUJ1ZmZlcigpKQogICAgICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0
YShtX3Jlc291cmNlLT5yZXNvdXJjZUJ1ZmZlcigpLT5kYXRhKCksIG1fcmVzb3VyY2UtPnJlc291
cmNlQnVmZmVyKCktPnNpemUoKSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggYmEw
MjQ4NDBlMGJmMGNmMjM0ZmNhYzlmODMwODU5ZTM2Mzc0NjQ1NS4uNDQ0NDFiMzRlZDNlZGIwZjVj
MWNhN2RlZGM4NjI4M2NhNDFmMjFkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTE0OCw3ICsxNDgs
NyBAQCBSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzeW50aGV0aWNSZWRp
cmVjdFJlc3BvbnNlKGNvbnN0IFVSTCYgZnJvbQogICAgIHJldHVybiByZWRpcmVjdFJlc3BvbnNl
OwogfQogCi1SZXNvdXJjZVJlc3BvbnNlIFJlc291cmNlUmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitSZXNvdXJjZVJlc3BvbnNlIFJlc291cmNl
UmVzcG9uc2VCYXNlOjpmaWx0ZXIoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFBl
cmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2sgcGVyZm9ybUNoZWNrKQogewogICAgIGlmIChyZXNw
b25zZS50YWludGluZygpID09IFRhaW50aW5nOjpPcGFxdWUpIHsKICAgICAgICAgUmVzb3VyY2VS
ZXNwb25zZSBvcGFxdWVSZXNwb25zZTsKQEAgLTE2OSwxMCArMTY5LDExIEBAIFJlc291cmNlUmVz
cG9uc2UgUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKICAgICAvLyBMZXQncyBpbml0aWFsaXplIGZpbHRlcmVkUmVzcG9uc2UgdG8g
cmVtb3ZlIHNvbWUgaGVhZGVyIGZpZWxkcy4KICAgICBmaWx0ZXJlZFJlc3BvbnNlLmxhenlJbml0
KEFsbEZpZWxkcyk7CiAKKyAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy5y
ZW1vdmUoSFRUUEhlYWRlck5hbWU6OlNldENvb2tpZSk7CisgICAgZmlsdGVyZWRSZXNwb25zZS5t
X2h0dHBIZWFkZXJGaWVsZHMucmVtb3ZlKEhUVFBIZWFkZXJOYW1lOjpTZXRDb29raWUyKTsKKwog
ICAgIGlmIChyZXNwb25zZS50YWludGluZygpID09IFRhaW50aW5nOjpCYXNpYykgewogICAgICAg
ICBmaWx0ZXJlZFJlc3BvbnNlLnNldFR5cGUoVHlwZTo6QmFzaWMpOwotICAgICAgICBmaWx0ZXJl
ZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy5yZW1vdmUoSFRUUEhlYWRlck5hbWU6OlNldENv
b2tpZSk7Ci0gICAgICAgIGZpbHRlcmVkUmVzcG9uc2UubV9odHRwSGVhZGVyRmllbGRzLnJlbW92
ZShIVFRQSGVhZGVyTmFtZTo6U2V0Q29va2llMik7CiAgICAgICAgIHJldHVybiBmaWx0ZXJlZFJl
c3BvbnNlOwogICAgIH0KIApAQCAtMTgwLDYgKzE4MSw5IEBAIFJlc291cmNlUmVzcG9uc2UgUmVz
b3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSkKICAgICBmaWx0ZXJlZFJlc3BvbnNlLnNldFR5cGUoVHlwZTo6Q29ycyk7CiAKICAgICBhdXRv
IGFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJTZXQgPSBwYXJzZUFjY2Vzc0NvbnRyb2xBbGxvd0xp
c3Q8QVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPihyZXNwb25zZS5odHRwSGVhZGVyRmllbGQoSFRU
UEhlYWRlck5hbWU6OkFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7CisgICAgaWYgKHBlcmZv
cm1DaGVjayA9PSBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMgJiYgYWNjZXNzQ29u
dHJvbEV4cG9zZUhlYWRlclNldC5jb250YWlucygiKiIpKQorICAgICAgICByZXR1cm4gZmlsdGVy
ZWRSZXNwb25zZTsKKwogICAgIGZpbHRlcmVkUmVzcG9uc2UubV9odHRwSGVhZGVyRmllbGRzLnVu
Y29tbW9uSGVhZGVycygpLnJlbW92ZUFsbE1hdGNoaW5nKFsmXShhdXRvJiBlbnRyeSkgewogICAg
ICAgICByZXR1cm4gIWlzQ3Jvc3NPcmlnaW5TYWZlSGVhZGVyKGVudHJ5LmtleSwgYWNjZXNzQ29u
dHJvbEV4cG9zZUhlYWRlclNldCk7CiAgICAgfSk7CkBAIC00NDMsMTIgKzQ0NywxNSBAQCB2b2lk
IFJlc291cmNlUmVzcG9uc2VCYXNlOjpzYW5pdGl6ZUhUVFBIZWFkZXJGaWVsZHNBY2NvcmRpbmdU
b1RhaW50aW5nKCkKICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlRhaW50aW5nOjpCYXNpYzoK
ICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6VGFpbnRpbmc6OkNv
cnM6IHsKKyAgICAgICAgYXV0byBjb3JzU2FmZUhlYWRlclNldCA9IHBhcnNlQWNjZXNzQ29udHJv
bEFsbG93TGlzdDxBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+KGh0dHBIZWFkZXJGaWVsZChIVFRQ
SGVhZGVyTmFtZTo6QWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlcnMpKTsKKyAgICAgICAgaWYgKGNv
cnNTYWZlSGVhZGVyU2V0LmNvbnRhaW5zKCIqIikpCisgICAgICAgICAgICByZXR1cm47CisKICAg
ICAgICAgSFRUUEhlYWRlck1hcCBmaWx0ZXJlZEhlYWRlcnM7CiAgICAgICAgIGZvciAoYXV0byYg
aGVhZGVyIDogbV9odHRwSGVhZGVyRmllbGRzLmNvbW1vbkhlYWRlcnMoKSkgewogICAgICAgICAg
ICAgaWYgKGlzU2FmZUNyb3NzT3JpZ2luUmVzcG9uc2VIZWFkZXIoaGVhZGVyLmtleSkpCiAgICAg
ICAgICAgICAgICAgZmlsdGVyZWRIZWFkZXJzLmFkZChoZWFkZXIua2V5LCBXVEZNb3ZlKGhlYWRl
ci52YWx1ZSkpOwogICAgICAgICB9Ci0gICAgICAgIGF1dG8gY29yc1NhZmVIZWFkZXJTZXQgPSBw
YXJzZUFjY2Vzc0NvbnRyb2xBbGxvd0xpc3Q8QVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPihodHRw
SGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OkFjY2Vzc0NvbnRyb2xFeHBvc2VIZWFkZXJzKSk7
CiAgICAgICAgIGZvciAoYXV0byYgaGVhZGVyTmFtZSA6IGNvcnNTYWZlSGVhZGVyU2V0KSB7CiAg
ICAgICAgICAgICBpZiAoIWZpbHRlcmVkSGVhZGVycy5jb250YWlucyhoZWFkZXJOYW1lKSkgewog
ICAgICAgICAgICAgICAgIGF1dG8gdmFsdWUgPSBtX2h0dHBIZWFkZXJGaWVsZHMuZ2V0KGhlYWRl
ck5hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNv
dXJjZVJlc3BvbnNlQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNv
dXJjZVJlc3BvbnNlQmFzZS5oCmluZGV4IDA5Yzc1YjM2ZWJhZjhiMWQ1MzYwOWJlZjM2MGM0MGE5
M2JhOGM0MjQuLjYxM2VkZmVhZjMwZjY1MmI1MWJhMzllMmRmYmI4ZWJmZTgyOTk5NTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJh
c2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9u
c2VCYXNlLmgKQEAgLTE5Myw3ICsxOTMsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUYWludGlu
ZyhUYWludGluZyB0YWludGluZykgeyBtX3RhaW50aW5nID0gdGFpbnRpbmc7IH0KICAgICBUYWlu
dGluZyB0YWludGluZygpIGNvbnN0IHsgcmV0dXJuIG1fdGFpbnRpbmc7IH0KIAotICAgIHN0YXRp
YyBSZXNvdXJjZVJlc3BvbnNlIGZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
ZW51bSBjbGFzcyBQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrIDogdWludDhfdCB7IFllcywg
Tm8gfTsKKyAgICBzdGF0aWMgUmVzb3VyY2VSZXNwb25zZSBmaWx0ZXIoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYsIFBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2spOwogCiAgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFJlc291cmNlUmVzcG9uc2Ugc3ludGhldGljUmVkaXJlY3RSZXNwb25zZShj
b25zdCBVUkwmIGZyb21VUkwsIGNvbnN0IFVSTCYgdG9VUkwpOwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwppbmRleCBjYzBlZmUxZmE4MWJlZDA3ZDFjYTU1MDFkM2RiOWZmNjM3ZGM4YmE4
Li5hMjRmMDYwZWM1OGJkMjZkOWM5NzE3NDM5NWU0OTIyNGM2M2FjMWY1IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAyMC0wMy0xMiAgUm9iIEJ1aXMg
IDxyYnVpc0BpZ2FsaWEuY29tPgorCisgICAgICAgIEltcGxlbWVudCB3aWxkY2FyZCBiZWhhdmlv
ciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg4MDAKKworICAgICAgICBSZXZpZXdlZCBieSBZ
b3Vlbm4gRmFibGV0LgorCisgICAgICAgIFVwZGF0ZSBpbXByb3ZlZCB0ZXN0IHJlc3VsdHMgYW5k
IGFkZCBhIHRlc3QgZm9yIHRlc3RpbmcKKyAgICAgICAgeGhyIGFuZCB3aWxkY2FyZCBiZWhhdmlv
ciBmb3IgQ3Jvc3MtT3JpZ2luLUV4cG9zZS1IZWFkZXJzIGJlaGF2aW9yLgorCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFu
eS1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9j
b3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2
aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2NhY2hl
LW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Ut
c3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkuaHRtbDogQWRkZWQuCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkuanM6IEFk
ZGVkLgorICAgICAgICAoc2hhcmVkSGVhZGVycy5zdHJpbmdfYXBwZWFyZWRfaGVyZS5hc3luY190
ZXN0KToKKyAgICAgICAgKHN0cmluZ19hcHBlYXJlZF9oZXJlLmFzeW5jX3Rlc3QpOgorICAgICAg
ICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy94aHIvcmVzb3VyY2VzL3RvcC50eHQ6IEFkZGVkLgorCiAy
MDIwLTAzLTEwICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgQWxpZ24g
d2l0aCBPcmlnaW4gaGVhZGVyIGNoYW5nZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rh
ci5zdWIuYW55LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVj
dGVkLnR4dAppbmRleCBkNzUwODMyZjcyZmZjMTE4OWMyZjM5ODhlMTBhZWMzMzAyNjI4MDBhLi5l
YjU4NTNjZDMxNTk5ODQzNzcxMTBjZDdmNTRiNTI3YTQ2NWRmOGE2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2Nv
cnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1z
dGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEJhc2ljIEFj
Y2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyBCYXNpYyBBY2Nl
c3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAogUEFTUyAqIGZvciBjcmVkZW50
aWFsZWQgZmV0Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAotRkFJTCAqIGNhbiBiZSBvbmUg
b2Ygc2V2ZXJhbCB2YWx1ZXMgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1
dCBnb3QgKG9iamVjdCkgbnVsbAorUEFTUyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMg
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNo
L2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0Cmlu
ZGV4IGQ3NTA4MzJmNzJmZmMxMTg5YzJmMzk4OGUxMGFlYzMzMDI2MjgwMGEuLmViNTg1M2NkMzE1
OTk4NDM3NzExMGNkN2Y1NGI1MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Ut
c3Rhci5zdWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFy
LnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotRkFJTCBCYXNp
YyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkIChzdHJpbmcpICJYIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQmFzaWMg
QWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCAKIFBBU1MgKiBmb3IgY3Jl
ZGVudGlhbGVkIGZldGNoZXMgb25seSBtYXRjaGVzIGxpdGVyYWxseSAKLUZBSUwgKiBjYW4gYmUg
b25lIG9mIHNldmVyYWwgdmFsdWVzIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJY
IiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFs
dWVzIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUt
bWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2Vy
L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA0OWI4YjQ1NWE4Mjc4MmFiNDAw
Yjk5YzcxOWMxYzJjODA2MjRiZjQwLi41ZmJkMGI2ZmE3NGY1OGZjYmM2YTE4ZTE5NTI0YTExODFj
NGQyZjY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUt
bWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvc2VydmljZXdv
cmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIxLDcgKzIxLDcgQEAgUEFT
UyBDYWNoZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEg
bm9uLTJ4eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5ldHdvcmsgZXJyb3Ig
UmVzcG9uc2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3BvbnNlcyB0aGF0IGNhbiBi
ZSBjbG9uZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29ycy1leHBvc2VkIGhlYWRlciBz
aG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmlu
ZykgImJhciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNvcnMtZXhwb3NlZCBoZWFkZXIg
c2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1FIHR5cGUgc2hvdWxkIGJlIHNl
dCBmcm9tIGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlMIE1JTUUgdHlwZSBzaG91bGQg
YmUgZnJvemVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFsczogb3JpZ2lu
YWwgYW5kIGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRj
aCBleHBlY3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQK
aW5kZXggOWY0NTViMzczNzQ1MTZlNWNjNjJlNjEzNzZkYmVkYTE4NDJhMWNiOC4uNzkxNWJlMmU2
MGQwODRiODAwYmU1N2Y1OTBhMGQ5Njc2NWI2OTY2OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3Rv
cmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hl
LXN0b3JhZ2Uvd2luZG93L2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMjAsNyAr
MjAsNyBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1ZXN0CiBQQVNTIENhY2hlLm1h
dGNoIHdpdGggYSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbmV0
d29yayBlcnJvciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVjZXMgbGFyZ2UgUmVzcG9uc2Vz
IHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHkuIAotRkFJTCBjb3JzLWV4cG9z
ZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgY29ycy1leHBv
c2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4gCiBQQVNTIE1JTUUgdHlwZSBz
aG91bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVjdGx5LiAKIEZBSUwgTUlNRSB0
eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3RydWN0aW9uLiBhc3NlcnRfZXF1
YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJlc3BvbnNlIG1pbWUgdHlwZXMg
c2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBnb3QgInRleHQvcGxhaW4iCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4
cGVjdGVkLnR4dAppbmRleCA5ZjQ1NWIzNzM3NDUxNmU1Y2M2MmU2MTM3NmRiZWRhMTg0MmExY2I4
Li43OTE1YmUyZTYwZDA4NGI4MDBiZTU3ZjU5MGEwZDk2NzY1YjY5NjY4IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3dvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0
CkBAIC0yMCw3ICsyMCw3IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBQT1NUIFJlcXVlc3QKIFBB
U1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5vbi0yeHggUmVzcG9uc2UgCiBQQVNTIENhY2hlLm1hdGNo
IHdpdGggYSBuZXR3b3JrIGVycm9yIFJlc3BvbnNlIAogUEFTUyBDYWNoZSBwcm9kdWNlcyBsYXJn
ZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFkIGNvcnJlY3RseS4gCi1GQUlM
IGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBjb3JyZWN0bHkuIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFT
UyBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiAKIFBBU1Mg
TUlNRSB0eXBlIHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhlYWRlciBjb3JyZWN0bHkuIAog
RkFJTCBNSU1FIHR5cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNwb25zZSBjb25zdHJ1Y3Rpb24u
IGFzc2VydF9lcXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3ZlcndyaXR0ZW4gcmVzcG9uc2Ug
bWltZSB0eXBlcyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQvaHRtbCIgYnV0IGdvdCAidGV4
dC9wbGFpbiIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY29ycy1leHBv
c2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCBl
M2YwN2VjNTNmMzViMTRhMWVkZTFjN2FhMDhmMjhlNmU1ODhiZGFjLi5hYjg2YWU5NGU0ZmY4ZDZm
Nzc1N2EwMTFlOGEwNGZjMDc4MjJlOTQ5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9m
ZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4
cGVjdGVkLnR4dApAQCAtMSw0ICsxLDQgQEAKIAogCi1GQUlMIENPUlMtZXhwb3NlZCBoZWFkZXIg
bmFtZXMgZm9yIGEgcmVzcG9uc2UgZnJvbSBzdyBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3Ry
aW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51bGwKK1BBU1MgQ09SUy1leHBvc2VkIGhlYWRl
ciBuYW1lcyBmb3IgYSByZXNwb25zZSBmcm9tIHN3IAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1
Yi5hbnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lYjU4NTNjZDMxNTk5ODQzNzcxMTBjZDdmNTRiNTI3YTQ2NWRmOGE2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIv
Y29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUgQEAKKwor
UEFTUyBCYXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBwb3J0IAorUEFT
UyAqIGZvciBjcmVkZW50aWFsZWQgZmV0Y2hlcyBvbmx5IG1hdGNoZXMgbGl0ZXJhbGx5IAorUEFT
UyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjM4MjkxMzUy
OGU2OTNiM2E1ZDU2YzY2MGE0NTA2MDk4MGI1NDhjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0
YXIuc3ViLmFueS5odG1sCkBAIC0wLDAgKzEgQEAKKzwhLS0gVGhpcyBmaWxlIGlzIHJlcXVpcmVk
IGZvciBXZWJLaXQgdGVzdCBpbmZyYXN0cnVjdHVyZSB0byBydW4gdGhlIHRlbXBsYXRlZCB0ZXN0
IC0tPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3Vi
LmFueS5qcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhy
L2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZTlhY2ZmOWE1NzA5NDJj
MjRlYmEwNGM5NGZhYzU0OWY1MjVlYzgyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIu
YW55LmpzCkBAIC0wLDAgKzEsNTMgQEAKKy8vIE1FVEE6IHNjcmlwdD0uLi9mZXRjaC9hcGkvcmVz
b3VyY2VzL3V0aWxzLmpzCisKK2NvbnN0IHVybCA9ICJodHRwOi8ve3tob3N0fX06e3twb3J0c1to
dHRwXVsxXX19IiArIGRpcm5hbWUobG9jYXRpb24ucGF0aG5hbWUpICsgInJlc291cmNlcy90b3Au
dHh0IiwKKyAgICAgIHNoYXJlZEhlYWRlcnMgPSAiP3BpcGU9aGVhZGVyKEFjY2Vzcy1Db250cm9s
LUV4cG9zZS1IZWFkZXJzLCopfGhlYWRlcihUZXN0LFgpfGhlYWRlcigqLHdob2EpfCIKKworYXN5
bmNfdGVzdChmdW5jdGlvbigpIHsKKyAgY29uc3QgaGVhZGVycyA9ICJoZWFkZXIoQWNjZXNzLUNv
bnRyb2wtQWxsb3ctT3JpZ2luLCopIgorICAgIGNvbnNvbGUubG9nKHVybCk7CisgIHZhciBjbGll
bnQgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgY2xpZW50Lm9wZW4oIkdFVCIsIHVybCArIHNo
YXJlZEhlYWRlcnMgKyBoZWFkZXJzKTsKKyAgY2xpZW50LnNlbmQoKTsKKyAgY2xpZW50Lm9ucmVh
ZHlzdGF0ZWNoYW5nZSA9IHRoaXMuc3RlcF9mdW5jKGZ1bmN0aW9uICgpIHsKKyAgICBpZiAodGhp
cy5yZWFkeVN0YXRlID09IHRoaXMuSEVBREVSU19SRUNFSVZFRCkgeworICAgICAgYXNzZXJ0X2Vx
dWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInRlc3QiKSwgIlgiKTsKKyAgICAgIGFzc2Vy
dF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJzZXQtY29va2llIiksIG51bGwpOwor
ICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoIioiKSwgIndob2Ei
KTsKKyAgICAgIHRoaXMuZG9uZSgpOworICAgIH0KKyAgfSk7Cit9LCAiQmFzaWMgQWNjZXNzLUNv
bnRyb2wtRXhwb3NlLUhlYWRlcnM6ICogc3VwcG9ydCIpCisKK2FzeW5jX3Rlc3QoZnVuY3Rpb24o
KSB7CisgIGNvbnN0IG9yaWdpbiA9IGxvY2F0aW9uLm9yaWdpbiwgLy8gYXNzdW1pbmcgYW4gQVND
SUkgb3JpZ2luCisgICAgICAgIGhlYWRlcnMgPSAiaGVhZGVyKEFjY2Vzcy1Db250cm9sLUFsbG93
LU9yaWdpbiwiICsgb3JpZ2luICsgIil8aGVhZGVyKEFjY2Vzcy1Db250cm9sLUFsbG93LUNyZWRl
bnRpYWxzLHRydWUpIgorICB2YXIgY2xpZW50ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CisgIGNs
aWVudC5vcGVuKCJHRVQiLCB1cmwgKyBzaGFyZWRIZWFkZXJzICsgaGVhZGVycyk7CisgIGNsaWVu
dC53aXRoQ3JlZGVudGlhbHMgPSB0cnVlOworICBjbGllbnQuc2VuZCgpOworICBjbGllbnQub25y
ZWFkeXN0YXRlY2hhbmdlID0gdGhpcy5zdGVwX2Z1bmMoZnVuY3Rpb24gKCkgeworICAgIGlmICh0
aGlzLnJlYWR5U3RhdGUgPT0gdGhpcy5IRUFERVJTX1JFQ0VJVkVEKSB7CisgICAgICBhc3NlcnRf
ZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigiY29udGVudC10eXBlIiksICJ0ZXh0L3Bs
YWluIik7IC8vIHNhZmVsaXN0ZWQKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3Bv
bnNlSGVhZGVyKCJ0ZXN0IiksIG51bGwpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0
UmVzcG9uc2VIZWFkZXIoInNldC1jb29raWUiKSwgbnVsbCk7CisgICAgICBhc3NlcnRfZXF1YWxz
KGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigiKiIpLCAid2hvYSIpOworICAgICAgdGhpcy5kb25l
KCk7CisgICAgfQorICB9KTsKK30sICIqIGZvciBjcmVkZW50aWFsZWQgZmV0Y2hlcyBvbmx5IG1h
dGNoZXMgbGl0ZXJhbGx5IikKKworYXN5bmNfdGVzdChmdW5jdGlvbigpIHsKKyAgY29uc3QgaGVh
ZGVycyA9ICAiaGVhZGVyKEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbiwqKXxoZWFkZXIoQWNj
ZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnMsc2V0LWNvb2tpZVxcLCopIgorICB2YXIgY2xpZW50
ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CisgIGNsaWVudC5vcGVuKCJHRVQiLCB1cmwgKyBzaGFy
ZWRIZWFkZXJzICsgaGVhZGVycyk7CisgIGNsaWVudC5zZW5kKCk7CisgIGNsaWVudC5vbnJlYWR5
c3RhdGVjaGFuZ2UgPSB0aGlzLnN0ZXBfZnVuYyhmdW5jdGlvbiAoKSB7CisgICAgaWYgKHRoaXMu
cmVhZHlTdGF0ZSA9PSB0aGlzLkhFQURFUlNfUkVDRUlWRUQpIHsKKyAgICAgIGFzc2VydF9lcXVh
bHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCJ0ZXN0IiksICJYIik7CisgICAgICBhc3NlcnRf
ZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigic2V0LWNvb2tpZSIpLCBudWxsKTsKKyAg
ICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCIqIiksICJ3aG9hIik7
CisgICAgICB0aGlzLmRvbmUoKTsKKyAgICB9CisgIH0pOworfSwgIiogY2FuIGJlIG9uZSBvZiBz
ZXZlcmFsIHZhbHVlcyIpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3hoci9yZXNvdXJjZXMvdG9wLnR4dCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3AudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjgzYTMxNTdkMTRkOTA4MWVkMDFjZDc5OTI4Nzg5OTgyMmUxOTUyM2EKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9y
ZXNvdXJjZXMvdG9wLnR4dApAQCAtMCwwICsxIEBACit0b3AKXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>393370</attachid>
            <date>2020-03-12 06:55:14 -0700</date>
            <delta_ts>2020-03-12 08:38:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208800-20200312145512.patch</filename>
            <type>text/plain</type>
            <size>22152</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4MjEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmQ2NWQ4MTk5NzAzZGNl
YTQ3YTIwYzJiMTQyYzhiNGRiYTFiZWJhYS4uOTZjYTAzMmJhNWZmZmVjMzRjZWNmZmIzMjY2NGM1
N2Q1Y2JkMzA0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTAzLTEyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJl
aGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODgwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgSW1wbGVtZW50IHdpbGRjYXJkIGJlaGF2aW9y
IGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhlYWRlcnMgWzFdIHdoaWxlIGFsc28KKyAgICAgICAg
Y2hlY2tpbmcgZm9yIGNyZWRlbnRpYWxzIG1vZGUuCisKKyAgICAgICAgVGVzdDogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWwK
KworICAgICAgICBbMV0gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI3JlZi1mb3ItY29u
Y2VwdC1yZXNwb25zZS1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWUtbGlzdCVFMiU5MSVBMgorCisg
ICAgICAgICogTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkZldGNoUmVzcG9uc2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpGZXRjaFJlc3Bv
bnNlOjpCb2R5TG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6
RmV0Y2hSZXNwb25zZTo6Qm9keUxvYWRlcjo6c3RhcnQpOgorICAgICAgICAqIE1vZHVsZXMvZmV0
Y2gvRmV0Y2hSZXNwb25zZS5oOgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFRocmVhZGFibGVM
b2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpk
aWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jl
c291cmNlUmVzcG9uc2VCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2VCYXNlOjpmaWx0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZUJhc2U6
OnNhbml0aXplSFRUUEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmcpOgorICAgICAgICAq
IHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaDoKKwogMjAyMC0wMy0xMCAg
eW91ZW5uIGZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIFNhbXBs
ZUJ1ZmZlckRpc3BsYXlMYXllciBzeW5jIElQQwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hSZXNwb25zZS5jcHAKaW5kZXggN2FhMDExY2E1MTIxYmMwZWRjZWRmMjY5Nzcw
NzhiMjJhYTM0ZWY0My4uNjA5YWE4YTI4OGZmMzU4MTllNjczY2Y1NjdkY2I1MjBjNjNhYjQ4OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoUmVzcG9uc2UuY3BwCkBA
IC01Niw3ICs1Niw3IEBAIFJlZjxGZXRjaFJlc3BvbnNlPiBGZXRjaFJlc3BvbnNlOjpjcmVhdGUo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgT3B0aW9uCiAgICAgYXV0byBmZXRjaFJl
c3BvbnNlID0gYWRvcHRSZWYoKm5ldyBGZXRjaFJlc3BvbnNlKGNvbnRleHQsIFdURk1vdmUoYm9k
eSksIFdURk1vdmUoaGVhZGVycyksIFdURk1vdmUocmVzcG9uc2UpKSk7CiAgICAgZmV0Y2hSZXNw
b25zZS0+dXBkYXRlQ29udGVudFR5cGUoKTsKICAgICBpZiAoIWlzU3ludGhldGljKQotICAgICAg
ICBmZXRjaFJlc3BvbnNlLT5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNlQmFz
ZTo6ZmlsdGVyKGZldGNoUmVzcG9uc2UtPm1faW50ZXJuYWxSZXNwb25zZSk7CisgICAgICAgIGZl
dGNoUmVzcG9uc2UtPm1fZmlsdGVyZWRSZXNwb25zZSA9IFJlc291cmNlUmVzcG9uc2VCYXNlOjpm
aWx0ZXIoZmV0Y2hSZXNwb25zZS0+bV9pbnRlcm5hbFJlc3BvbnNlLCBSZXNvdXJjZVJlc3BvbnNl
OjpQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpZZXMpOwogICAgIGlmIChpc09wYXF1ZSkK
ICAgICAgICAgZmV0Y2hSZXNwb25zZS0+c2V0Qm9keUFzT3BhcXVlKCk7CiAgICAgcmV0dXJuIGZl
dGNoUmVzcG9uc2U7CkBAIC0zMzEsNyArMzMxLDggQEAgRmV0Y2hSZXNwb25zZTo6Qm9keUxvYWRl
cjo6fkJvZHlMb2FkZXIoKQogc3RhdGljIHVpbnQ2NF90IG5leHRPcGFxdWVMb2FkSWRlbnRpZmll
ciB7IDAgfTsKIHZvaWQgRmV0Y2hSZXNwb25zZTo6Qm9keUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc291cmNlUmVzcG9uc2UpCiB7Ci0gICAgbV9y
ZXNwb25zZS5tX2ZpbHRlcmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVy
KHJlc291cmNlUmVzcG9uc2UpOworICAgIGF1dG8gcGVyZm9ybUNoZWNrID0gbV9jcmVkZW50aWFs
cyA9PSBGZXRjaE9wdGlvbnM6OkNyZWRlbnRpYWxzOjpJbmNsdWRlID8gUmVzb3VyY2VSZXNwb25z
ZTo6UGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjazo6Tm8gOiBSZXNvdXJjZVJlc3BvbnNlOjpQ
ZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpZZXM7CisgICAgbV9yZXNwb25zZS5tX2ZpbHRl
cmVkUmVzcG9uc2UgPSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKHJlc291cmNlUmVzcG9u
c2UsIHBlcmZvcm1DaGVjayk7CiAgICAgbV9yZXNwb25zZS5tX2ludGVybmFsUmVzcG9uc2UgPSBy
ZXNvdXJjZVJlc3BvbnNlOwogICAgIG1fcmVzcG9uc2UubV9pbnRlcm5hbFJlc3BvbnNlLnNldFR5
cGUobV9yZXNwb25zZS5tX2ZpbHRlcmVkUmVzcG9uc2UtPnR5cGUoKSk7CiAgICAgaWYgKHJlc291
cmNlUmVzcG9uc2UudGFpbnRpbmcoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3Bh
cXVlKSB7CkBAIC0zODUsNiArMzg2LDcgQEAgdm9pZCBGZXRjaFJlc3BvbnNlOjpCb2R5TG9hZGVy
OjpkaWRSZWNlaXZlRGF0YShjb25zdCBjaGFyKiBkYXRhLCBzaXplX3Qgc2l6ZSkKIAogYm9vbCBG
ZXRjaFJlc3BvbnNlOjpCb2R5TG9hZGVyOjpzdGFydChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBj
b250ZXh0LCBjb25zdCBGZXRjaFJlcXVlc3QmIHJlcXVlc3QpCiB7CisgICAgbV9jcmVkZW50aWFs
cyA9IHJlcXVlc3QuZmV0Y2hPcHRpb25zKCkuY3JlZGVudGlhbHM7CiAgICAgbV9sb2FkZXIgPSBt
YWtlVW5pcXVlPEZldGNoTG9hZGVyPigqdGhpcywgJm1fcmVzcG9uc2UubV9ib2R5LT5jb25zdW1l
cigpKTsKICAgICBtX2xvYWRlci0+c3RhcnQoY29udGV4dCwgcmVxdWVzdCk7CiAgICAgcmV0dXJu
IG1fbG9hZGVyLT5pc1N0YXJ0ZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvZmV0Y2gvRmV0Y2hSZXNwb25zZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9G
ZXRjaFJlc3BvbnNlLmgKaW5kZXggOTdhZDcyNzNlNmMwNjBiODVmMjk4YzJhMmU3OTY5ZTVlZmRj
ZGE1ZC4uZDZmOWZkNjAxNTBjMWQyZTRlMzY4MTBiN2RiMmE3NmJmZDc4ZjQwMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaFJlc3BvbnNlLmgKQEAgLTE1NSw2ICsxNTUs
NyBAQCBwcml2YXRlOgogICAgICAgICBDb25zdW1lRGF0YUJ5Q2h1bmtDYWxsYmFjayBtX2NvbnN1
bWVEYXRhQ2FsbGJhY2s7CiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxGZXRjaExvYWRlcj4gbV9s
b2FkZXI7CiAgICAgICAgIFJlZjxQZW5kaW5nQWN0aXZpdHk8RmV0Y2hSZXNwb25zZT4+IG1fcGVu
ZGluZ0FjdGl2aXR5OworICAgICAgICBGZXRjaE9wdGlvbnM6OkNyZWRlbnRpYWxzIG1fY3JlZGVu
dGlhbHM7CiAgICAgfTsKIAogICAgIG11dGFibGUgT3B0aW9uYWw8UmVzb3VyY2VSZXNwb25zZT4g
bV9maWx0ZXJlZFJlc3BvbnNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCBkNTZmYTViZGQ4YzVjNGYzOGY4YzM1ZjkzOTdl
MGQ0MDg1MDlmZDhmLi44YWY0ZDAyNWNlZDNjNzZhNzRiYzMwMTIzMDA3NzBiMWE3ZmIzM2Y1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
LmNwcApAQCAtMzkzLDcgKzM5Myw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpk
aWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zCiAgICAgfQog
CiAgICAgaWYgKHJlc3BvbnNlLnR5cGUoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpEZWZh
dWx0KSB7Ci0gICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwg
UmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihyZXNwb25zZSkpOworICAgICAgICBtX2NsaWVu
dC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2U6OmZpbHRl
cihyZXNwb25zZSwgbV9vcHRpb25zLmNyZWRlbnRpYWxzID09IEZldGNoT3B0aW9uczo6Q3JlZGVu
dGlhbHM6OkluY2x1ZGUgPyBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3NlQWxsSGVhZGVy
c0NoZWNrOjpObyA6IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hl
Y2s6OlllcykpOwogICAgICAgICBpZiAocmVzcG9uc2UudGFpbnRpbmcoKSA9PSBSZXNvdXJjZVJl
c3BvbnNlOjpUYWludGluZzo6T3BhcXVlKSB7CiAgICAgICAgICAgICBjbGVhclJlc291cmNlKCk7
CiAgICAgICAgICAgICBpZiAobV9jbGllbnQpCkBAIC00NjYsNyArNDY2LDcgQEAgdm9pZCBEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyKQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgQVNTRVJUKHJlc3BvbnNlLnR5
cGUoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpEZWZhdWx0KTsKIAotICAgICAgICAgICAg
bV9jbGllbnQtPmRpZFJlY2VpdmVSZXNwb25zZShpZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNl
QmFzZTo6ZmlsdGVyKHJlc3BvbnNlKSk7CisgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2
ZVJlc3BvbnNlKGlkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2U6OmZpbHRlcihyZXNwb25zZSwg
bV9vcHRpb25zLmNyZWRlbnRpYWxzID09IEZldGNoT3B0aW9uczo6Q3JlZGVudGlhbHM6OkluY2x1
ZGUgPyBSZXNvdXJjZVJlc3BvbnNlOjpQZXJmb3JtRXhwb3NlQWxsSGVhZGVyc0NoZWNrOjpObyA6
IFJlc291cmNlUmVzcG9uc2U6OlBlcmZvcm1FeHBvc2VBbGxIZWFkZXJzQ2hlY2s6OlllcykpOwog
ICAgICAgICAgICAgaWYgKG1fcmVzb3VyY2UtPnJlc291cmNlQnVmZmVyKCkpCiAgICAgICAgICAg
ICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVEYXRhKG1fcmVzb3VyY2UtPnJlc291cmNlQnVmZmVy
KCktPmRhdGEoKSwgbV9yZXNvdXJjZS0+cmVzb3VyY2VCdWZmZXIoKS0+c2l6ZSgpKTsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJj
ZVJlc3BvbnNlQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291
cmNlUmVzcG9uc2VCYXNlLmNwcAppbmRleCBiYTAyNDg0MGUwYmYwY2YyMzRmY2FjOWY4MzA4NTll
MzYzNzQ2NDU1Li40NDQ0MWIzNGVkM2VkYjBmNWMxY2E3ZGVkYzg2MjgzY2E0MWYyMWQwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VC
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVz
cG9uc2VCYXNlLmNwcApAQCAtMTQ4LDcgKzE0OCw3IEBAIFJlc291cmNlUmVzcG9uc2UgUmVzb3Vy
Y2VSZXNwb25zZUJhc2U6OnN5bnRoZXRpY1JlZGlyZWN0UmVzcG9uc2UoY29uc3QgVVJMJiBmcm9t
CiAgICAgcmV0dXJuIHJlZGlyZWN0UmVzcG9uc2U7CiB9CiAKLVJlc291cmNlUmVzcG9uc2UgUmVz
b3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSkKK1Jlc291cmNlUmVzcG9uc2UgUmVzb3VyY2VSZXNwb25zZUJhc2U6OmZpbHRlcihjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUGVyZm9ybUV4cG9zZUFsbEhlYWRlcnNDaGVjayBw
ZXJmb3JtQ2hlY2spCiB7CiAgICAgaWYgKHJlc3BvbnNlLnRhaW50aW5nKCkgPT0gVGFpbnRpbmc6
Ok9wYXF1ZSkgewogICAgICAgICBSZXNvdXJjZVJlc3BvbnNlIG9wYXF1ZVJlc3BvbnNlOwpAQCAt
MTY5LDEwICsxNjksMTEgQEAgUmVzb3VyY2VSZXNwb25zZSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6
ZmlsdGVyKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogICAgIC8vIExldCdzIGlu
aXRpYWxpemUgZmlsdGVyZWRSZXNwb25zZSB0byByZW1vdmUgc29tZSBoZWFkZXIgZmllbGRzLgog
ICAgIGZpbHRlcmVkUmVzcG9uc2UubGF6eUluaXQoQWxsRmllbGRzKTsKIAorICAgIGZpbHRlcmVk
UmVzcG9uc2UubV9odHRwSGVhZGVyRmllbGRzLnJlbW92ZShIVFRQSGVhZGVyTmFtZTo6U2V0Q29v
a2llKTsKKyAgICBmaWx0ZXJlZFJlc3BvbnNlLm1faHR0cEhlYWRlckZpZWxkcy5yZW1vdmUoSFRU
UEhlYWRlck5hbWU6OlNldENvb2tpZTIpOworCiAgICAgaWYgKHJlc3BvbnNlLnRhaW50aW5nKCkg
PT0gVGFpbnRpbmc6OkJhc2ljKSB7CiAgICAgICAgIGZpbHRlcmVkUmVzcG9uc2Uuc2V0VHlwZShU
eXBlOjpCYXNpYyk7Ci0gICAgICAgIGZpbHRlcmVkUmVzcG9uc2UubV9odHRwSGVhZGVyRmllbGRz
LnJlbW92ZShIVFRQSGVhZGVyTmFtZTo6U2V0Q29va2llKTsKLSAgICAgICAgZmlsdGVyZWRSZXNw
b25zZS5tX2h0dHBIZWFkZXJGaWVsZHMucmVtb3ZlKEhUVFBIZWFkZXJOYW1lOjpTZXRDb29raWUy
KTsKICAgICAgICAgcmV0dXJuIGZpbHRlcmVkUmVzcG9uc2U7CiAgICAgfQogCkBAIC0xODAsNiAr
MTgxLDkgQEAgUmVzb3VyY2VSZXNwb25zZSBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6ZmlsdGVyKGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogICAgIGZpbHRlcmVkUmVzcG9uc2Uuc2V0
VHlwZShUeXBlOjpDb3JzKTsKIAogICAgIGF1dG8gYWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlclNl
dCA9IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93TGlzdDxBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+
KHJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6QWNjZXNzQ29udHJvbEV4
cG9zZUhlYWRlcnMpKTsKKyAgICBpZiAocGVyZm9ybUNoZWNrID09IFBlcmZvcm1FeHBvc2VBbGxI
ZWFkZXJzQ2hlY2s6OlllcyAmJiBhY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVyU2V0LmNvbnRhaW5z
KCIqIikpCisgICAgICAgIHJldHVybiBmaWx0ZXJlZFJlc3BvbnNlOworCiAgICAgZmlsdGVyZWRS
ZXNwb25zZS5tX2h0dHBIZWFkZXJGaWVsZHMudW5jb21tb25IZWFkZXJzKCkucmVtb3ZlQWxsTWF0
Y2hpbmcoWyZdKGF1dG8mIGVudHJ5KSB7CiAgICAgICAgIHJldHVybiAhaXNDcm9zc09yaWdpblNh
ZmVIZWFkZXIoZW50cnkua2V5LCBhY2Nlc3NDb250cm9sRXhwb3NlSGVhZGVyU2V0KTsKICAgICB9
KTsKQEAgLTQ0MywxMiArNDQ3LDE1IEBAIHZvaWQgUmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0
aXplSFRUUEhlYWRlckZpZWxkc0FjY29yZGluZ1RvVGFpbnRpbmcoKQogICAgIGNhc2UgUmVzb3Vy
Y2VSZXNwb25zZTo6VGFpbnRpbmc6OkJhc2ljOgogICAgICAgICByZXR1cm47CiAgICAgY2FzZSBS
ZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6Q29yczogeworICAgICAgICBhdXRvIGNvcnNTYWZl
SGVhZGVyU2V0ID0gcGFyc2VBY2Nlc3NDb250cm9sQWxsb3dMaXN0PEFTQ0lJQ2FzZUluc2Vuc2l0
aXZlSGFzaD4oaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpBY2Nlc3NDb250cm9sRXhw
b3NlSGVhZGVycykpOworICAgICAgICBpZiAoY29yc1NhZmVIZWFkZXJTZXQuY29udGFpbnMoIioi
KSkKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAgICBIVFRQSGVhZGVyTWFwIGZpbHRlcmVk
SGVhZGVyczsKICAgICAgICAgZm9yIChhdXRvJiBoZWFkZXIgOiBtX2h0dHBIZWFkZXJGaWVsZHMu
Y29tbW9uSGVhZGVycygpKSB7CiAgICAgICAgICAgICBpZiAoaXNTYWZlQ3Jvc3NPcmlnaW5SZXNw
b25zZUhlYWRlcihoZWFkZXIua2V5KSkKICAgICAgICAgICAgICAgICBmaWx0ZXJlZEhlYWRlcnMu
YWRkKGhlYWRlci5rZXksIFdURk1vdmUoaGVhZGVyLnZhbHVlKSk7CiAgICAgICAgIH0KLSAgICAg
ICAgYXV0byBjb3JzU2FmZUhlYWRlclNldCA9IHBhcnNlQWNjZXNzQ29udHJvbEFsbG93TGlzdDxB
U0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+KGh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6
QWNjZXNzQ29udHJvbEV4cG9zZUhlYWRlcnMpKTsKICAgICAgICAgZm9yIChhdXRvJiBoZWFkZXJO
YW1lIDogY29yc1NhZmVIZWFkZXJTZXQpIHsKICAgICAgICAgICAgIGlmICghZmlsdGVyZWRIZWFk
ZXJzLmNvbnRhaW5zKGhlYWRlck5hbWUpKSB7CiAgICAgICAgICAgICAgICAgYXV0byB2YWx1ZSA9
IG1faHR0cEhlYWRlckZpZWxkcy5nZXQoaGVhZGVyTmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmgKaW5kZXggMDlj
NzViMzZlYmFmOGIxZDUzNjA5YmVmMzYwYzQwYTkzYmE4YzQyNC4uNjEzZWRmZWFmMzBmNjUyYjUx
YmEzOWUyZGZiYjhlYmZlODI5OTk1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaApAQCAtMTkzLDcgKzE5Myw4IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldFRhaW50aW5nKFRhaW50aW5nIHRhaW50aW5nKSB7IG1fdGFp
bnRpbmcgPSB0YWludGluZzsgfQogICAgIFRhaW50aW5nIHRhaW50aW5nKCkgY29uc3QgeyByZXR1
cm4gbV90YWludGluZzsgfQogCi0gICAgc3RhdGljIFJlc291cmNlUmVzcG9uc2UgZmlsdGVyKGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBlbnVtIGNsYXNzIFBlcmZvcm1FeHBvc2VBbGxI
ZWFkZXJzQ2hlY2sgOiB1aW50OF90IHsgWWVzLCBObyB9OworICAgIHN0YXRpYyBSZXNvdXJjZVJl
c3BvbnNlIGZpbHRlcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUGVyZm9ybUV4cG9zZUFsbEhl
YWRlcnNDaGVjayk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVzb3VyY2VSZXNwb25z
ZSBzeW50aGV0aWNSZWRpcmVjdFJlc3BvbnNlKGNvbnN0IFVSTCYgZnJvbVVSTCwgY29uc3QgVVJM
JiB0b1VSTCk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IGNjMGVmZTFmYTgx
YmVkMDdkMWNhNTUwMWQzZGI5ZmY2MzdkYzhiYTguLmEyNGYwNjBlYzU4YmQyNmQ5Yzk3MTc0Mzk1
ZTQ5MjI0YzYzYWMxZjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI2IEBACisyMDIwLTAzLTEyICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAg
ICAgSW1wbGVtZW50IHdpbGRjYXJkIGJlaGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhl
YWRlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIw
ODgwMAorCisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgVXBk
YXRlIGltcHJvdmVkIHRlc3QgcmVzdWx0cyBhbmQgYWRkIGEgdGVzdCBmb3IgdGVzdGluZworICAg
ICAgICB4aHIgYW5kIHdpbGRjYXJkIGJlaGF2aW9yIGZvciBDcm9zcy1PcmlnaW4tRXhwb3NlLUhl
YWRlcnMgYmVoYXZpb3IuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBp
L2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55
Lndvcmtlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtl
cnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtY29ycy1l
eHBvc2VkLWhlYWRlci1uYW1lcy5odHRwcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViLXBs
YXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIu
c3ViLmFueS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMveGhyL2Nv
cnMtZXhwb3NlLXN0YXIuc3ViLmFueS5qczogQWRkZWQuCisgICAgICAgIChzaGFyZWRIZWFkZXJz
LnN0cmluZ19hcHBlYXJlZF9oZXJlLmFzeW5jX3Rlc3QpOgorICAgICAgICAoc3RyaW5nX2FwcGVh
cmVkX2hlcmUuYXN5bmNfdGVzdCk6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9y
ZXNvdXJjZXMvdG9wLnR4dDogQWRkZWQuCisKIDIwMjAtMDMtMTAgIFJvYiBCdWlzICA8cmJ1aXNA
aWdhbGlhLmNvbT4KIAogICAgICAgICBBbGlnbiB3aXRoIE9yaWdpbiBoZWFkZXIgY2hhbmdlcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
ZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9j
b3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhwZWN0ZWQudHh0CmluZGV4IGQ3NTA4MzJmNzJmZmMx
MTg5YzJmMzk4OGUxMGFlYzMzMDI2MjgwMGEuLmViNTg1M2NkMzE1OTk4NDM3NzExMGNkN2Y1NGI1
MjdhNDY1ZGY4YTYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2ZldGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQKQEAg
LTEsNSArMSw1IEBACiAKLUZBSUwgQmFzaWMgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnM6
ICogc3VwcG9ydCBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAo
b2JqZWN0KSBudWxsCitQQVNTIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzOiAq
IHN1cHBvcnQgCiBQQVNTICogZm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBs
aXRlcmFsbHkgCi1GQUlMICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyBhc3NlcnRfZXF1
YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiWCIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTICog
Y2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZhbHVlcyAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9z
ZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1leHBvc2Utc3Rhci5z
dWIuYW55Lndvcmtlci1leHBlY3RlZC50eHQKaW5kZXggZDc1MDgzMmY3MmZmYzExODljMmYzOTg4
ZTEwYWVjMzMwMjYyODAwYS4uZWI1ODUzY2QzMTU5OTg0Mzc3MTEwY2Q3ZjU0YjUyN2E0NjVkZjhh
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9mZXRjaC9hcGkvY29ycy9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkud29ya2VyLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Zl
dGNoL2FwaS9jb3JzL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS53b3JrZXItZXhwZWN0ZWQudHh0
CkBAIC0xLDUgKzEsNSBAQAogCi1GQUlMIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFk
ZXJzOiAqIHN1cHBvcnQgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBn
b3QgKG9iamVjdCkgbnVsbAorUEFTUyBCYXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVy
czogKiBzdXBwb3J0IAogUEFTUyAqIGZvciBjcmVkZW50aWFsZWQgZmV0Y2hlcyBvbmx5IG1hdGNo
ZXMgbGl0ZXJhbGx5IAotRkFJTCAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgIlgiIGJ1dCBnb3QgKG9iamVjdCkgbnVsbAorUEFT
UyAqIGNhbiBiZSBvbmUgb2Ygc2V2ZXJhbCB2YWx1ZXMgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hl
LXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9jYWNoZS1zdG9yYWdlL3NlcnZpY2V3b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQu
dHh0CmluZGV4IDQ5YjhiNDU1YTgyNzgyYWI0MDBiOTljNzE5YzFjMmM4MDYyNGJmNDAuLjVmYmQw
YjZmYTc0ZjU4ZmNiYzZhMThlMTk1MjRhMTE4MWM0ZDJmNjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hl
LXN0b3JhZ2Uvc2VydmljZXdvcmtlci9jYWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvY2FjaGUtc3RvcmFnZS9zZXJ2aWNld29ya2VyL2NhY2hlLW1hdGNoLmh0dHBzLWV4cGVj
dGVkLnR4dApAQCAtMjEsNyArMjEsNyBAQCBQQVNTIENhY2hlLm1hdGNoIHdpdGggUE9TVCBSZXF1
ZXN0CiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBub24tMnh4IFJlc3BvbnNlIAogUEFTUyBDYWNo
ZS5tYXRjaCB3aXRoIGEgbmV0d29yayBlcnJvciBSZXNwb25zZSAKIFBBU1MgQ2FjaGUgcHJvZHVj
ZXMgbGFyZ2UgUmVzcG9uc2VzIHRoYXQgY2FuIGJlIGNsb25lZCBhbmQgcmVhZCBjb3JyZWN0bHku
IAotRkFJTCBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQgY29ycmVjdGx5LiBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAoc3RyaW5nKSAiYmFyIiBidXQgZ290IChvYmplY3QpIG51
bGwKK1BBU1MgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQgYmUgc3RvcmVkIGNvcnJlY3RseS4g
CiBQQVNTIE1JTUUgdHlwZSBzaG91bGQgYmUgc2V0IGZyb20gY29udGVudC1oZWFkZXIgY29ycmVj
dGx5LiAKIEZBSUwgTUlNRSB0eXBlIHNob3VsZCBiZSBmcm96ZW4gYXQgcmVzcG9uc2UgY29uc3Ry
dWN0aW9uLiBhc3NlcnRfZXF1YWxzOiBvcmlnaW5hbCBhbmQgY2FjaGVkIG92ZXJ3cml0dGVuIHJl
c3BvbnNlIG1pbWUgdHlwZXMgc2hvdWxkIG1hdGNoIGV4cGVjdGVkICJ0ZXh0L2h0bWwiIGJ1dCBn
b3QgInRleHQvcGxhaW4iCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2Nh
Y2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd2luZG93L2Nh
Y2hlLW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA5ZjQ1NWIzNzM3NDUxNmU1Y2M2MmU2
MTM3NmRiZWRhMTg0MmExY2I4Li43OTE1YmUyZTYwZDA4NGI4MDBiZTU3ZjU5MGEwZDk2NzY1YjY5
NjY4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dpbmRvdy9jYWNoZS1tYXRjaC5odHRw
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFnZS93aW5kb3cvY2FjaGUtbWF0Y2gu
aHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0yMCw3ICsyMCw3IEBAIFBBU1MgQ2FjaGUubWF0Y2ggd2l0
aCBQT1NUIFJlcXVlc3QKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5vbi0yeHggUmVzcG9uc2Ug
CiBQQVNTIENhY2hlLm1hdGNoIHdpdGggYSBuZXR3b3JrIGVycm9yIFJlc3BvbnNlIAogUEFTUyBD
YWNoZSBwcm9kdWNlcyBsYXJnZSBSZXNwb25zZXMgdGhhdCBjYW4gYmUgY2xvbmVkIGFuZCByZWFk
IGNvcnJlY3RseS4gCi1GQUlMIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxkIGJlIHN0b3JlZCBj
b3JyZWN0bHkuIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3Qg
KG9iamVjdCkgbnVsbAorUEFTUyBjb3JzLWV4cG9zZWQgaGVhZGVyIHNob3VsZCBiZSBzdG9yZWQg
Y29ycmVjdGx5LiAKIFBBU1MgTUlNRSB0eXBlIHNob3VsZCBiZSBzZXQgZnJvbSBjb250ZW50LWhl
YWRlciBjb3JyZWN0bHkuIAogRkFJTCBNSU1FIHR5cGUgc2hvdWxkIGJlIGZyb3plbiBhdCByZXNw
b25zZSBjb25zdHJ1Y3Rpb24uIGFzc2VydF9lcXVhbHM6IG9yaWdpbmFsIGFuZCBjYWNoZWQgb3Zl
cndyaXR0ZW4gcmVzcG9uc2UgbWltZSB0eXBlcyBzaG91bGQgbWF0Y2ggZXhwZWN0ZWQgInRleHQv
aHRtbCIgYnV0IGdvdCAidGV4dC9wbGFpbiIKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvY2FjaGUtc3RvcmFn
ZS93b3JrZXIvY2FjaGUtbWF0Y2guaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDlmNDU1YjM3Mzc0
NTE2ZTVjYzYyZTYxMzc2ZGJlZGExODQyYTFjYjguLjc5MTViZTJlNjBkMDg0YjgwMGJlNTdmNTkw
YTBkOTY3NjViNjk2NjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL2NhY2hlLXN0b3JhZ2Uvd29ya2VyL2NhY2hl
LW1hdGNoLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9jYWNoZS1zdG9yYWdlL3dvcmtlci9j
YWNoZS1tYXRjaC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTIwLDcgKzIwLDcgQEAgUEFTUyBDYWNo
ZS5tYXRjaCB3aXRoIFBPU1QgUmVxdWVzdAogUEFTUyBDYWNoZS5tYXRjaCB3aXRoIGEgbm9uLTJ4
eCBSZXNwb25zZSAKIFBBU1MgQ2FjaGUubWF0Y2ggd2l0aCBhIG5ldHdvcmsgZXJyb3IgUmVzcG9u
c2UgCiBQQVNTIENhY2hlIHByb2R1Y2VzIGxhcmdlIFJlc3BvbnNlcyB0aGF0IGNhbiBiZSBjbG9u
ZWQgYW5kIHJlYWQgY29ycmVjdGx5LiAKLUZBSUwgY29ycy1leHBvc2VkIGhlYWRlciBzaG91bGQg
YmUgc3RvcmVkIGNvcnJlY3RseS4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgKHN0cmluZykgImJh
ciIgYnV0IGdvdCAob2JqZWN0KSBudWxsCitQQVNTIGNvcnMtZXhwb3NlZCBoZWFkZXIgc2hvdWxk
IGJlIHN0b3JlZCBjb3JyZWN0bHkuIAogUEFTUyBNSU1FIHR5cGUgc2hvdWxkIGJlIHNldCBmcm9t
IGNvbnRlbnQtaGVhZGVyIGNvcnJlY3RseS4gCiBGQUlMIE1JTUUgdHlwZSBzaG91bGQgYmUgZnJv
emVuIGF0IHJlc3BvbnNlIGNvbnN0cnVjdGlvbi4gYXNzZXJ0X2VxdWFsczogb3JpZ2luYWwgYW5k
IGNhY2hlZCBvdmVyd3JpdHRlbiByZXNwb25zZSBtaW1lIHR5cGVzIHNob3VsZCBtYXRjaCBleHBl
Y3RlZCAidGV4dC9odG1sIiBidXQgZ290ICJ0ZXh0L3BsYWluIgogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1jb3JzLWV4cG9zZWQtaGVhZGVyLW5hbWVzLmh0dHBzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFt
ZXMuaHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IGUzZjA3ZWM1M2YzNWIxNGExZWRlMWM3YWEwOGYy
OGU2ZTU4OGJkYWMuLmFiODZhZTk0ZTRmZjhkNmY3NzU3YTAxMWU4YTA0ZmMwNzgyMmU5NDkgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMtZXhwb3NlZC1oZWFkZXItbmFt
ZXMuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLWNvcnMt
ZXhwb3NlZC1oZWFkZXItbmFtZXMuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsNCBAQAog
CiAKLUZBSUwgQ09SUy1leHBvc2VkIGhlYWRlciBuYW1lcyBmb3IgYSByZXNwb25zZSBmcm9tIHN3
IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIChzdHJpbmcpICJiYXIiIGJ1dCBnb3QgKG9iamVjdCkg
bnVsbAorUEFTUyBDT1JTLWV4cG9zZWQgaGVhZGVyIG5hbWVzIGZvciBhIHJlc3BvbnNlIGZyb20g
c3cgCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMveGhyL2NvcnMtZXhwb3NlLXN0YXIuc3ViLmFueS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFy
LnN1Yi5hbnktZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmViNTg1M2NkMzE1OTk4NDM3NzExMGNk
N2Y1NGI1MjdhNDY1ZGY4YTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnktZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorCitQQVNTIEJhc2ljIEFjY2Vzcy1Db250cm9sLUV4
cG9zZS1IZWFkZXJzOiAqIHN1cHBvcnQgCitQQVNTICogZm9yIGNyZWRlbnRpYWxlZCBmZXRjaGVz
IG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkgCitQQVNTICogY2FuIGJlIG9uZSBvZiBzZXZlcmFsIHZh
bHVlcyAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWwgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5h
bnkuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yMzgyOTEzNTI4ZTY5M2IzYTVkNTZjNjYwYTQ1MDYwOTgwYjU0
OGMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmh0bWwKQEAgLTAsMCArMSBA
QAorPCEtLSBUaGlzIGZpbGUgaXMgcmVxdWlyZWQgZm9yIFdlYktpdCB0ZXN0IGluZnJhc3RydWN0
dXJlIHRvIHJ1biB0aGUgdGVtcGxhdGVkIHRlc3QgLS0+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55LmpzIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvY29ycy1leHBvc2Utc3Rhci5zdWIuYW55Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmNlOWFjZmY5YTU3MDk0MmMyNGViYTA0Yzk0ZmFjNTQ5ZjUyNWVjODIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3hoci9jb3JzLWV4cG9zZS1zdGFyLnN1Yi5hbnkuanMKQEAgLTAsMCArMSw1MyBAQAorLy8g
TUVUQTogc2NyaXB0PS4uL2ZldGNoL2FwaS9yZXNvdXJjZXMvdXRpbHMuanMKKworY29uc3QgdXJs
ID0gImh0dHA6Ly97e2hvc3R9fTp7e3BvcnRzW2h0dHBdWzFdfX0iICsgZGlybmFtZShsb2NhdGlv
bi5wYXRobmFtZSkgKyAicmVzb3VyY2VzL3RvcC50eHQiLAorICAgICAgc2hhcmVkSGVhZGVycyA9
ICI/cGlwZT1oZWFkZXIoQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnMsKil8aGVhZGVyKFRl
c3QsWCl8aGVhZGVyKCosd2hvYSl8IgorCithc3luY190ZXN0KGZ1bmN0aW9uKCkgeworICBjb25z
dCBoZWFkZXJzID0gImhlYWRlcihBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4sKikiCisgICAg
Y29uc29sZS5sb2codXJsKTsKKyAgdmFyIGNsaWVudCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwor
ICBjbGllbnQub3BlbigiR0VUIiwgdXJsICsgc2hhcmVkSGVhZGVycyArIGhlYWRlcnMpOworICBj
bGllbnQuc2VuZCgpOworICBjbGllbnQub25yZWFkeXN0YXRlY2hhbmdlID0gdGhpcy5zdGVwX2Z1
bmMoZnVuY3Rpb24gKCkgeworICAgIGlmICh0aGlzLnJlYWR5U3RhdGUgPT0gdGhpcy5IRUFERVJT
X1JFQ0VJVkVEKSB7CisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRl
cigidGVzdCIpLCAiWCIpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VI
ZWFkZXIoInNldC1jb29raWUiKSwgbnVsbCk7CisgICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5n
ZXRSZXNwb25zZUhlYWRlcigiKiIpLCAid2hvYSIpOworICAgICAgdGhpcy5kb25lKCk7CisgICAg
fQorICB9KTsKK30sICJCYXNpYyBBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVyczogKiBzdXBw
b3J0IikKKworYXN5bmNfdGVzdChmdW5jdGlvbigpIHsKKyAgY29uc3Qgb3JpZ2luID0gbG9jYXRp
b24ub3JpZ2luLCAvLyBhc3N1bWluZyBhbiBBU0NJSSBvcmlnaW4KKyAgICAgICAgaGVhZGVycyA9
ICJoZWFkZXIoQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luLCIgKyBvcmlnaW4gKyAiKXxoZWFk
ZXIoQWNjZXNzLUNvbnRyb2wtQWxsb3ctQ3JlZGVudGlhbHMsdHJ1ZSkiCisgIHZhciBjbGllbnQg
PSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgY2xpZW50Lm9wZW4oIkdFVCIsIHVybCArIHNoYXJl
ZEhlYWRlcnMgKyBoZWFkZXJzKTsKKyAgY2xpZW50LndpdGhDcmVkZW50aWFscyA9IHRydWU7Cisg
IGNsaWVudC5zZW5kKCk7CisgIGNsaWVudC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSB0aGlzLnN0ZXBf
ZnVuYyhmdW5jdGlvbiAoKSB7CisgICAgaWYgKHRoaXMucmVhZHlTdGF0ZSA9PSB0aGlzLkhFQURF
UlNfUkVDRUlWRUQpIHsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVh
ZGVyKCJjb250ZW50LXR5cGUiKSwgInRleHQvcGxhaW4iKTsgLy8gc2FmZWxpc3RlZAorICAgICAg
YXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIoInRlc3QiKSwgbnVsbCk7Cisg
ICAgICBhc3NlcnRfZXF1YWxzKGNsaWVudC5nZXRSZXNwb25zZUhlYWRlcigic2V0LWNvb2tpZSIp
LCBudWxsKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVhZGVyKCIq
IiksICJ3aG9hIik7CisgICAgICB0aGlzLmRvbmUoKTsKKyAgICB9CisgIH0pOworfSwgIiogZm9y
IGNyZWRlbnRpYWxlZCBmZXRjaGVzIG9ubHkgbWF0Y2hlcyBsaXRlcmFsbHkiKQorCithc3luY190
ZXN0KGZ1bmN0aW9uKCkgeworICBjb25zdCBoZWFkZXJzID0gICJoZWFkZXIoQWNjZXNzLUNvbnRy
b2wtQWxsb3ctT3JpZ2luLCopfGhlYWRlcihBY2Nlc3MtQ29udHJvbC1FeHBvc2UtSGVhZGVycyxz
ZXQtY29va2llXFwsKikiCisgIHZhciBjbGllbnQgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAg
Y2xpZW50Lm9wZW4oIkdFVCIsIHVybCArIHNoYXJlZEhlYWRlcnMgKyBoZWFkZXJzKTsKKyAgY2xp
ZW50LnNlbmQoKTsKKyAgY2xpZW50Lm9ucmVhZHlzdGF0ZWNoYW5nZSA9IHRoaXMuc3RlcF9mdW5j
KGZ1bmN0aW9uICgpIHsKKyAgICBpZiAodGhpcy5yZWFkeVN0YXRlID09IHRoaXMuSEVBREVSU19S
RUNFSVZFRCkgeworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0UmVzcG9uc2VIZWFkZXIo
InRlc3QiKSwgIlgiKTsKKyAgICAgIGFzc2VydF9lcXVhbHMoY2xpZW50LmdldFJlc3BvbnNlSGVh
ZGVyKCJzZXQtY29va2llIiksIG51bGwpOworICAgICAgYXNzZXJ0X2VxdWFscyhjbGllbnQuZ2V0
UmVzcG9uc2VIZWFkZXIoIioiKSwgIndob2EiKTsKKyAgICAgIHRoaXMuZG9uZSgpOworICAgIH0K
KyAgfSk7Cit9LCAiKiBjYW4gYmUgb25lIG9mIHNldmVyYWwgdmFsdWVzIikKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNl
cy90b3AudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94
aHIvcmVzb3VyY2VzL3RvcC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODNhMzE1N2QxNGQ5MDgxZWQwMWNkNzk5
Mjg3ODk5ODIyZTE5NTIzYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL3Jlc291cmNlcy90b3AudHh0CkBAIC0wLDAgKzEg
QEAKK3RvcApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>