<?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>241546</bug_id>
          
          <creation_ts>2022-06-13 05:49:11 -0700</creation_ts>
          <short_desc>[CSS Container Queries] Invalidate animation keyframes using container units on when container size changes</short_desc>
          <delta_ts>2022-06-15 13:01:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>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>
          
          <blocked>229659</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1875508</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-06-13 05:49:11 -0700</bug_when>
    <thetext>Fix a WPT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875509</commentid>
    <comment_count>1</comment_count>
      <attachid>460197</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-06-13 05:54:34 -0700</bug_when>
    <thetext>Created attachment 460197
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875517</commentid>
    <comment_count>2</comment_count>
      <attachid>460197</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-06-13 07:05:30 -0700</bug_when>
    <thetext>Comment on attachment 460197
Patch

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

&gt; COMMIT_MESSAGE:6
&gt; +Container size change changes the interpretation of container units used in keyframes..

Extra &quot;.&quot; here.

&gt; Source/WebCore/rendering/style/KeyframeList.cpp:226
&gt; +    for (auto&amp; keyframe : m_keyframes) {
&gt; +        if (keyframe.style()-&gt;usesContainerUnits())
&gt; +            return true;
&gt; +    }
&gt; +    return false;

I *think* this could be made to use std::any_of:

return std::any_of(m_keyframes.begin(), m_keyframes.end(), [] (auto&amp; it) { return it.value-&gt;usesContainerUnits(); });

&gt; Source/WebCore/style/StyleTreeResolver.cpp:583
&gt; +    if (oldStyle &amp;&amp; parent().needsUpdateQueryContainerDependentStyle)
&gt; +        styleable.queryContainerDidChange();

While you&apos;re there, I think a FIXME to do something similar for viewport units would be good.

&gt; Source/WebCore/style/Styleable.cpp:636
&gt; +        auto* cssAnimation = dynamicDowncast&lt;CSSAnimation&gt;(animation.get());
&gt; +        if (!cssAnimation)
&gt; +            continue;

I *think* you should only check whether this is a `CSSTransition`, in which case I expect there is nothing to do here and the style invalidation mechanism would automatically update things based on the computed value changing. This would allow both `CSSAnimation` and vanilla `WebAnimation` objects to be updated.

Then you&apos;d need to add testing coverage for animations created using the JS API. Perfectly fine to do as a separate patch, in which case a FIXME to that effect would be nice.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875994</commentid>
    <comment_count>3</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-06-15 05:20:41 -0700</bug_when>
    <thetext>&gt; I *think* you should only check whether this is a `CSSTransition`, in which
&gt; case I expect there is nothing to do here and the style invalidation
&gt; mechanism would automatically update things based on the computed value
&gt; changing. This would allow both `CSSAnimation` and vanilla `WebAnimation`
&gt; objects to be updated.

keyframesRuleDidChange is non-virtual function in CSSAnimation so I think that case requires something else.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875995</commentid>
    <comment_count>4</comment_count>
      <attachid>460253</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-06-15 05:22:07 -0700</bug_when>
    <thetext>Created attachment 460253
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875996</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-15 05:23:40 -0700</bug_when>
    <thetext>Commit message contains (OOPS!), blocking PR #None</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876043</commentid>
    <comment_count>6</comment_count>
      <attachid>460255</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-06-15 11:48:04 -0700</bug_when>
    <thetext>Created attachment 460255
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876044</commentid>
    <comment_count>7</comment_count>
      <attachid>460256</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-06-15 11:49:23 -0700</bug_when>
    <thetext>Created attachment 460256
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876045</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-15 11:49:55 -0700</bug_when>
    <thetext>Commit message contains (OOPS!), blocking PR #None</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876058</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-06-15 13:00:05 -0700</bug_when>
    <thetext>Committed r295569 (251574@main): &lt;https://commits.webkit.org/251574@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 460256.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876059</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-06-15 13:01:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/95231683&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460197</attachid>
            <date>2022-06-13 05:54:34 -0700</date>
            <delta_ts>2022-06-15 05:22:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-241546-20220613155432.patch</filename>
            <type>text/plain</type>
            <size>12119</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">RnJvbSBkYmUwM2Y5NTk5NjNmMTE3M2VhZDUyZjQyOTQ1YzRjOWVmOWFmNWI0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnR0aSBLb2l2aXN0byA8YW50dGlAYXBwbGUuY29tPgpEYXRl
OiBNb24sIDEzIEp1biAyMDIyIDE1OjQ5OjU3ICswMzAwClN1YmplY3Q6IFtQQVRDSF0gW0NTUyBD
b250YWluZXIgUXVlcmllc10gSW52YWxpZGF0ZSBhbmltYXRpb24ga2V5ZnJhbWVzIHVzaW5nCiBj
b250YWluZXIgdW5pdHMgb24gd2hlbiBjb250YWluZXIgc2l6ZSBjaGFuZ2VzCiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQxNTQ2CgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KCkNvbnRhaW5lciBzaXplIGNoYW5nZSBjaGFuZ2VzIHRoZSBpbnRlcnByZXRhdGlv
biBvZiBjb250YWluZXIgdW5pdHMgdXNlZCBpbiBrZXlmcmFtZXMuLgoKKiBMYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY29udGFpbi9jb250YWluZXIt
cXVlcmllcy9jb250YWluZXItdW5pdHMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dDoKKiBTb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHA6CihXZWJDb3JlOjpFbGVtZW50OjppbnZhbGlkYXRlRm9y
UXVlcnlDb250YWluZXJTaXplQ2hhbmdlKToKKFdlYkNvcmU6OkVsZW1lbnQ6Om5lZWRzVXBkYXRl
UXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSBjb25zdCk6CihXZWJDb3JlOjpFbGVtZW50Ojpj
bGVhck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSk6CihXZWJDb3JlOjpF
bGVtZW50OjppbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UpOiBEZWxldGVkLgoKQWRk
IGEgbmV3IGJpdCB0aGF0IHRlbGxzIHdoZW4gYSBjb250YWluZXIgaGFzIGJlZW4gcmVzaXplZC4K
CiogU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaDoKKiBTb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZS5oOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3BwOgoo
V2ViQ29yZTo6S2V5ZnJhbWVMaXN0Ojp1c2VzQ29udGFpbmVyVW5pdHMgY29uc3QpOgoKQ2hlY2sg
Zm9yIGNvbnRhaW5lciB1bml0IHVzZS4KCiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L0tleWZyYW1lTGlzdC5oOgoqIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwOgoo
V2ViQ29yZTo6U3R5bGU6OlNjb3BlOjp1cGRhdGVRdWVyeUNvbnRhaW5lclN0YXRlKToKKiBTb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHA6CihXZWJDb3JlOjpTdHlsZTo6
VHJlZVJlc29sdmVyOjpjcmVhdGVBbmltYXRlZEVsZW1lbnRVcGRhdGUpOgoKSW52YWxpZGF0ZSB0
aGUga2V5ZnJhbWVzIGlmIG5lZWRlZCB3aGVuIGNvbXB1dGluZyB0aGUgc3R5bGUuCgooV2ViQ29y
ZTo6U3R5bGU6OlRyZWVSZXNvbHZlcjo6cHVzaFBhcmVudCk6CgpUcmFjayBpZiB0aGUgc3VidHJl
ZSBpcyB3aXRoaW5nIGEgcmVzaXplZCBjb250YWluZXIuCgoqIFNvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlVHJlZVJlc29sdmVyLmg6CiogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNw
cDoKKFdlYkNvcmU6OlN0eWxlYWJsZTo6cXVlcnlDb250YWluZXJEaWRDaGFuZ2UgY29uc3QpOgoq
IFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oOgotLS0KIFNvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmNwcCAgICAgICAgICAgICAgICAgICAgfCAxMyArKysrKysrKysrKystCiBTb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5oICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKysrKy0K
IFNvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyAr
Ky0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3BwICAgfCAx
MCArKysrKysrKysrCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0
LmggICAgIHwgIDIgKysKIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwICAgICAg
ICAgICAgICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIu
Y3BwICAgICAgICB8ICA2ICsrKysrKwogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVz
b2x2ZXIuaCAgICAgICAgICB8ICAzICsrLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxl
LmNwcCAgICAgICAgICAgICAgICB8IDE1ICsrKysrKysrKysrKysrKwogU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVhYmxlLmggICAgICAgICAgICAgICAgICB8ICAyICsrCiAuLi4vY29udGFpbmVy
LXVuaXRzLWFuaW1hdGlvbi1leHBlY3RlZC50eHQgICAgICAgIHwgMTIgKysrKysrLS0tLS0tCiAx
MSBmaWxlcyBjaGFuZ2VkLCA2MiBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5jcHAKaW5kZXggNTA5YTg5YTY1NmJhLi4zMDkyNDk0MzIyYmIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5jcHAKQEAgLTIyNjUsMTAgKzIyNjUsMjEgQEAgdm9pZCBFbGVtZW50OjppbnZh
bGlkYXRlU3R5bGVGb3JTdWJ0cmVlSW50ZXJuYWwoKQogICAgIE5vZGU6OmludmFsaWRhdGVTdHls
ZShTdHlsZTo6VmFsaWRpdHk6OlN1YnRyZWVJbnZhbGlkKTsKIH0KIAotdm9pZCBFbGVtZW50Ojpp
bnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UoKQordm9pZCBFbGVtZW50OjppbnZhbGlk
YXRlRm9yUXVlcnlDb250YWluZXJTaXplQ2hhbmdlKCkKIHsKICAgICAvLyBGSVhNRTogSWRlYWxs
eSB3ZSB3b3VsZCBqdXN0IHJlY29tcHV0ZSB0aGluZ3MgdGhhdCBhcmUgYWN0dWFsbHkgYWZmZWN0
ZWQgYnkgY29udGFpbmVycyBxdWVyaWVzIHdpdGhpbiB0aGUgc3VidHJlZS4KICAgICBOb2RlOjpp
bnZhbGlkYXRlU3R5bGUoU3R5bGU6OlZhbGlkaXR5OjpTdWJ0cmVlSW52YWxpZCk7CisgICAgc2V0
Tm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHls
ZSk7Cit9CisKK2Jvb2wgRWxlbWVudDo6bmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVu
dFN0eWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRz
VXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSk7Cit9CisKK3ZvaWQgRWxlbWVudDo6
Y2xlYXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUoKQoreworICAgIGNs
ZWFyTm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRT
dHlsZSk7CiB9CiAKIHZvaWQgRWxlbWVudDo6aW52YWxpZGF0ZUV2ZW50TGlzdGVuZXJSZWdpb25z
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oCmluZGV4IDFjMTFiYmM1ODZiNi4uZDE5NTJlNzdkNzhhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmgKQEAgLTYzOSw3ICs2MzksMTAgQEAgcHVibGljOgogCiAgICAgdm9pZCBp
bnZhbGlkYXRlU3R5bGVJbnRlcm5hbCgpOwogICAgIHZvaWQgaW52YWxpZGF0ZVN0eWxlRm9yU3Vi
dHJlZUludGVybmFsKCk7Ci0gICAgdm9pZCBpbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFu
Z2UoKTsKKyAgICB2b2lkIGludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lclNpemVDaGFuZ2UoKTsK
KworICAgIGJvb2wgbmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0eWxlKCkgY29u
c3Q7CisgICAgdm9pZCBjbGVhck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHls
ZSgpOwogCiAgICAgdm9pZCBpbnZhbGlkYXRlRXZlbnRMaXN0ZW5lclJlZ2lvbnMoKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9O
b2RlLmgKaW5kZXggOWU3MjllMTNmM2E5Li5lYmZhZGJhN2EzODUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaApAQCAt
NTc5LDggKzU3OSw5IEBAIHByb3RlY3RlZDoKICAgICAgICAgSXNDb21wdXRlZFN0eWxlSW52YWxp
ZEZsYWcgPSAxIDw8IDI1LAogICAgICAgICBIYXNTaGFkb3dSb290Q29udGFpbmluZ1Nsb3RzID0g
MSA8PCAyNiwKICAgICAgICAgSXNJblRvcExheWVyID0gMSA8PCAyNywKKyAgICAgICAgTmVlZHNV
cGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0eWxlID0gMSA8PCAyOCwKIAotICAgICAgICAv
LyBCaXRzIDI4LTMxIGFyZSBmcmVlLgorICAgICAgICAvLyBCaXRzIDI5LTMxIGFyZSBmcmVlLgog
ICAgIH07CiAKICAgICBlbnVtIGNsYXNzIFRhYkluZGV4U3RhdGUgOiB1aW50OF90IHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlzdC5jcHAKaW5kZXggNTM1
NjhjNThiYmVmLi5lZDExZmMwZDFiMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9LZXlmcmFtZUxpc3QuY3BwCkBAIC0yMTcsNCArMjE3LDE0IEBAIGJvb2wgS2V5ZnJh
bWVMaXN0Ojpjb250YWluc0FuaW1hdGFibGVQcm9wZXJ0eSgpIGNvbnN0CiAgICAgcmV0dXJuIGZh
bHNlOwogfQogCitib29sIEtleWZyYW1lTGlzdDo6dXNlc0NvbnRhaW5lclVuaXRzKCkgY29uc3QK
K3sKKyAgICBmb3IgKGF1dG8mIGtleWZyYW1lIDogbV9rZXlmcmFtZXMpIHsKKyAgICAgICAgaWYg
KGtleWZyYW1lLnN0eWxlKCktPnVzZXNDb250YWluZXJVbml0cygpKQorICAgICAgICAgICAgcmV0
dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5
ZnJhbWVMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0
LmgKaW5kZXggMTQxN2NkN2E5YWQyLi5hZDg3Nzk2YWRjMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0LmgKQEAgLTEwNSw2ICsxMDUsOCBAQCBwdWJs
aWM6CiAgICAgYXV0byBiZWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fa2V5ZnJhbWVzLmJlZ2luKCk7
IH0KICAgICBhdXRvIGVuZCgpIGNvbnN0IHsgcmV0dXJuIG1fa2V5ZnJhbWVzLmVuZCgpOyB9CiAK
KyAgICBib29sIHVzZXNDb250YWluZXJVbml0cygpIGNvbnN0OworCiBwcml2YXRlOgogICAgIEF0
b21TdHJpbmcgbV9hbmltYXRpb25OYW1lOwogICAgIFZlY3RvcjxLZXlmcmFtZVZhbHVlPiBtX2tl
eWZyYW1lczsgLy8gS2VwdCBzb3J0ZWQgYnkga2V5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3Bl
LmNwcAppbmRleCBhZDQ5YTEyNjk4ZGIuLmJiMWI0MWRlZTk1YSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUv
U3R5bGVTY29wZS5jcHAKQEAgLTgyOSw3ICs4MjksNyBAQCBib29sIFNjb3BlOjp1cGRhdGVRdWVy
eUNvbnRhaW5lclN0YXRlKFF1ZXJ5Q29udGFpbmVyVXBkYXRlQ29udGV4dCYgY29udGV4dCkKICAg
ICB9CiAKICAgICBmb3IgKGF1dG8qIHRvSW52YWxpZGF0ZSA6IGNvbnRhaW5lcnNUb0ludmFsaWRh
dGUpCi0gICAgICAgIHRvSW52YWxpZGF0ZS0+aW52YWxpZGF0ZUZvclF1ZXJ5Q29udGFpbmVyQ2hh
bmdlKCk7CisgICAgICAgIHRvSW52YWxpZGF0ZS0+aW52YWxpZGF0ZUZvclF1ZXJ5Q29udGFpbmVy
U2l6ZUNoYW5nZSgpOwogCiAgICAgcmV0dXJuICFjb250YWluZXJzVG9JbnZhbGlkYXRlLmlzRW1w
dHkoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29s
dmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcAppbmRl
eCBiYjdiYjZiMzk1MzcuLjU2OGI1YjAzZDAwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlVHJlZVJlc29sdmVyLmNwcApAQCAtNTc5LDYgKzU3OSw5IEBAIEVsZW1lbnRVcGRhdGUgVHJl
ZVJlc29sdmVyOjpjcmVhdGVBbmltYXRlZEVsZW1lbnRVcGRhdGUoc3RkOjp1bmlxdWVfcHRyPFJl
bmRlclN0CiAKICAgICBPcHRpb25TZXQ8QW5pbWF0aW9uSW1wYWN0PiBhbmltYXRpb25JbXBhY3Q7
CiAKKyAgICBpZiAob2xkU3R5bGUgJiYgcGFyZW50KCkubmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5l
ckRlcGVuZGVudFN0eWxlKQorICAgICAgICBzdHlsZWFibGUucXVlcnlDb250YWluZXJEaWRDaGFu
Z2UoKTsKKwogICAgIC8vIEZpcnN0LCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IGFueSBuZXcg
Q1NTIGFuaW1hdGlvbiBvY2N1cmluZyBvbiB0aGlzIGVsZW1lbnQgaGFzIGEgbWF0Y2hpbmcgV2Vi
QW5pbWF0aW9uCiAgICAgLy8gb24gdGhlIGRvY3VtZW50IHRpbWVsaW5lLgogICAgIGlmIChkb2N1
bWVudC5iYWNrRm9yd2FyZENhY2hlU3RhdGUoKSA9PSBEb2N1bWVudDo6Tm90SW5CYWNrRm9yd2Fy
ZENhY2hlICYmICFkb2N1bWVudC5wcmludGluZygpKSB7CkBAIC02NDAsNiArNjQzLDkgQEAgdm9p
ZCBUcmVlUmVzb2x2ZXI6OnB1c2hQYXJlbnQoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgUmVuZGVy
U3R5bGUmIHN0eWxlLCBDaGFuZ2UKICAgICAgICAgcGFyZW50LmRpZFB1c2hTY29wZSA9IHRydWU7
CiAgICAgfQogCisgICAgcGFyZW50Lm5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRT
dHlsZSA9IG1fcGFyZW50U3RhY2subGFzdCgpLm5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBl
bmRlbnRTdHlsZSB8fCBlbGVtZW50Lm5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRT
dHlsZSgpOworICAgIGVsZW1lbnQuY2xlYXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5k
ZW50U3R5bGUoKTsKKwogICAgIG1fcGFyZW50U3RhY2suYXBwZW5kKFdURk1vdmUocGFyZW50KSk7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5oCmluZGV4IDVhZjlm
YmY5MjcwZC4uYWNmMDBhNDhlY2JkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZVRyZWVSZXNvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJl
c29sdmVyLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIERlc2Nl
bmRhbnRzVG9SZXNvbHZlIDogdWludDhfdCB7IE5vbmUsIENoaWxkcmVuV2l0aEV4cGxpY2l0SW5o
ZXJpdCwgQ2hpbGRyZW4sIEFsbCB9OwogICAgIHN0ZDo6cGFpcjxFbGVtZW50VXBkYXRlLCBEZXNj
ZW5kYW50c1RvUmVzb2x2ZT4gcmVzb2x2ZUVsZW1lbnQoRWxlbWVudCYsIFJlc29sdXRpb25UeXBl
KTsKIAotICAgIHN0YXRpYyBFbGVtZW50VXBkYXRlIGNyZWF0ZUFuaW1hdGVkRWxlbWVudFVwZGF0
ZShzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3R5bGU+LCBjb25zdCBTdHlsZWFibGUmLCBDaGFuZ2Us
IGNvbnN0IFJlc29sdXRpb25Db250ZXh0Jik7CisgICAgRWxlbWVudFVwZGF0ZSBjcmVhdGVBbmlt
YXRlZEVsZW1lbnRVcGRhdGUoc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiwgY29uc3QgU3R5
bGVhYmxlJiwgQ2hhbmdlLCBjb25zdCBSZXNvbHV0aW9uQ29udGV4dCYpOwogICAgIHN0ZDo6b3B0
aW9uYWw8RWxlbWVudFVwZGF0ZT4gcmVzb2x2ZVBzZXVkb0VsZW1lbnQoRWxlbWVudCYsIFBzZXVk
b0lkLCBjb25zdCBFbGVtZW50VXBkYXRlJik7CiAgICAgc3RkOjpvcHRpb25hbDxFbGVtZW50VXBk
YXRlPiByZXNvbHZlQW5jZXN0b3JQc2V1ZG9FbGVtZW50KEVsZW1lbnQmLCBQc2V1ZG9JZCwgY29u
c3QgRWxlbWVudFVwZGF0ZSYpOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gcmVz
b2x2ZUFuY2VzdG9yRmlyc3RMaW5lUHNldWRvRWxlbWVudChFbGVtZW50JiwgY29uc3QgRWxlbWVu
dFVwZGF0ZSYpOwpAQCAtOTUsNiArOTUsNyBAQCBwcml2YXRlOgogICAgICAgICBEZXNjZW5kYW50
c1RvUmVzb2x2ZSBkZXNjZW5kYW50c1RvUmVzb2x2ZSB7IERlc2NlbmRhbnRzVG9SZXNvbHZlOjpO
b25lIH07CiAgICAgICAgIGJvb2wgZGlkUHVzaFNjb3BlIHsgZmFsc2UgfTsKICAgICAgICAgYm9v
bCByZXNvbHZlZEZpcnN0TGluZUFuZExldHRlckNoaWxkIHsgZmFsc2UgfTsKKyAgICAgICAgYm9v
bCBuZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUgeyBmYWxzZSB9OwogCiAg
ICAgICAgIFBhcmVudChEb2N1bWVudCYpOwogICAgICAgICBQYXJlbnQoRWxlbWVudCYsIGNvbnN0
IFJlbmRlclN0eWxlJiwgQ2hhbmdlLCBEZXNjZW5kYW50c1RvUmVzb2x2ZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVhYmxlLmNwcAppbmRleCBjNDQ0MTJhZDk0YTUuLmQ0OTE2ZGNhZDExZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZWFibGUuY3BwCkBAIC02MjUsNCArNjI1LDE5IEBAIHZvaWQgU3R5bGVh
YmxlOjp1cGRhdGVDU1NUcmFuc2l0aW9ucyhjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVudFN0eWxl
LCBjb25zdCBSZW5kCiAgICAgICAgIHVwZGF0ZUNTU1RyYW5zaXRpb25zRm9yU3R5bGVhYmxlQW5k
UHJvcGVydHkoKnRoaXMsIHByb3BlcnR5LCBjdXJyZW50U3R5bGUsIG5ld1N0eWxlLCBnZW5lcmF0
aW9uVGltZSk7CiB9CiAKK3ZvaWQgU3R5bGVhYmxlOjpxdWVyeUNvbnRhaW5lckRpZENoYW5nZSgp
IGNvbnN0Cit7CisgICAgYXV0byogYW5pbWF0aW9ucyA9IHRoaXMtPmFuaW1hdGlvbnMoKTsKKyAg
ICBpZiAoIWFuaW1hdGlvbnMpCisgICAgICAgIHJldHVybjsKKyAgICBmb3IgKGF1dG8gYW5pbWF0
aW9uIDogKmFuaW1hdGlvbnMpIHsKKyAgICAgICAgYXV0byogY3NzQW5pbWF0aW9uID0gZHluYW1p
Y0Rvd25jYXN0PENTU0FuaW1hdGlvbj4oYW5pbWF0aW9uLmdldCgpKTsKKyAgICAgICAgaWYgKCFj
c3NBbmltYXRpb24pCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgYXV0byoga2V5ZnJh
bWVFZmZlY3QgPSBkeW5hbWljRG93bmNhc3Q8S2V5ZnJhbWVFZmZlY3Q+KGNzc0FuaW1hdGlvbi0+
ZWZmZWN0KCkpOworICAgICAgICBpZiAoa2V5ZnJhbWVFZmZlY3QgJiYga2V5ZnJhbWVFZmZlY3Qt
PmJsZW5kaW5nS2V5ZnJhbWVzKCkudXNlc0NvbnRhaW5lclVuaXRzKCkpCisgICAgICAgICAgICBj
c3NBbmltYXRpb24tPmtleWZyYW1lc1J1bGVEaWRDaGFuZ2UoKTsKKyAgICB9Cit9CisKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
YWJsZS5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmgKaW5kZXggMjU0MDU4ZmQ5
Yjc2Li5hOTU0MDhhMjUwYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
YWJsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oCkBAIC0xNjEsNiAr
MTYxLDggQEAgc3RydWN0IFN0eWxlYWJsZSB7CiAgICAgICAgIGVsZW1lbnQua2V5ZnJhbWVzUnVs
ZURpZENoYW5nZShwc2V1ZG9JZCk7CiAgICAgfQogCisgICAgdm9pZCBxdWVyeUNvbnRhaW5lckRp
ZENoYW5nZSgpIGNvbnN0OworCiAgICAgYm9vbCBhbmltYXRpb25MaXN0Q29udGFpbnNOZXdseVZh
bGlkQW5pbWF0aW9uKGNvbnN0IEFuaW1hdGlvbkxpc3QmKSBjb25zdDsKIAogICAgIHZvaWQgZWxl
bWVudFdhc1JlbW92ZWQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVz
L2NvbnRhaW5lci11bml0cy1hbmltYXRpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvbnRhaW4vY29udGFpbmVyLXF1
ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFuaW1hdGlvbi1leHBlY3RlZC50eHQKaW5kZXggMjlkMTk3
YWExMjJmLi4xMzIzYzM2NDM3NWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2Nv
bnRhaW5lci11bml0cy1hbmltYXRpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1x
dWVyaWVzL2NvbnRhaW5lci11bml0cy1hbmltYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0xLDE0ICsx
LDE0IEBACiAKIFBBU1MgQW5pbWF0aW9uIHVzaW5nIGNxdyB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1
c2luZyBjcXcgdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBhc3NlcnRf
ZXF1YWxzOiBleHBlY3RlZCAiOTBweCIgYnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0aW9uIHVz
aW5nIGNxdyB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplCiBQQVNTIEFu
aW1hdGlvbiB1c2luZyBjcWggdW5pdAotRkFJTCBBbmltYXRpb24gdXNpbmcgY3FoIHVuaXQgcmVz
cG9uZHMgdG8gY2hhbmdpbmcgY29udGFpbmVyIHNpemUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQg
IjkwcHgiIGJ1dCBnb3QgIjYwcHgiCitQQVNTIEFuaW1hdGlvbiB1c2luZyBjcWggdW5pdCByZXNw
b25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZQogUEFTUyBBbmltYXRpb24gdXNpbmcgY3Fp
IHVuaXQKLUZBSUwgQW5pbWF0aW9uIHVzaW5nIGNxaSB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5n
IGNvbnRhaW5lciBzaXplIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICI5MHB4IiBidXQgZ290ICI2
MHB4IgorUEFTUyBBbmltYXRpb24gdXNpbmcgY3FpIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcg
Y29udGFpbmVyIHNpemUKIFBBU1MgQW5pbWF0aW9uIHVzaW5nIGNxYiB1bml0Ci1GQUlMIEFuaW1h
dGlvbiB1c2luZyBjcWIgdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiOTBweCIgYnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0
aW9uIHVzaW5nIGNxYiB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplCiBQ
QVNTIEFuaW1hdGlvbiB1c2luZyBjcW1pbiB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcW1p
biB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9lcXVhbHM6
IGV4cGVjdGVkICI5MHB4IiBidXQgZ290ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNpbmcgY3Ft
aW4gdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZQogUEFTUyBBbmltYXRp
b24gdXNpbmcgY3FtYXggdW5pdAotRkFJTCBBbmltYXRpb24gdXNpbmcgY3FtYXggdW5pdCByZXNw
b25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
OTBweCIgYnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0aW9uIHVzaW5nIGNxbWF4IHVuaXQgcmVz
cG9uZHMgdG8gY2hhbmdpbmcgY29udGFpbmVyIHNpemUKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460253</attachid>
            <date>2022-06-15 05:22:07 -0700</date>
            <delta_ts>2022-06-15 11:47:08 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-241546-20220615152205.patch</filename>
            <type>text/plain</type>
            <size>12722</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">RnJvbSBkYTE4MDg5YWI1OGZkNTZhMDdmZWVhMGU0NTMxYTNlMzM2N2MwMDRhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnR0aSBLb2l2aXN0byA8YW50dGlAYXBwbGUuY29tPgpEYXRl
OiBNb24sIDEzIEp1biAyMDIyIDE1OjQ5OjU3ICswMzAwClN1YmplY3Q6IFtQQVRDSF0gW0NTUyBD
b250YWluZXIgUXVlcmllc10gSW52YWxpZGF0ZSBhbmltYXRpb24ga2V5ZnJhbWVzIHVzaW5nCiBj
b250YWluZXIgdW5pdHMgb24gd2hlbiBjb250YWluZXIgc2l6ZSBjaGFuZ2VzCiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQxNTQ2CgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KCkNvbnRhaW5lciBzaXplIGNoYW5nZSBhbHNvIGNoYW5nZXMgdGhlIGludGVycHJl
dGF0aW9uIG9mIGNvbnRhaW5lciB1bml0cyB1c2VkIGluIGtleWZyYW1lcy4KCiogTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvbnRhaW4vY29udGFp
bmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFuaW1hdGlvbi1leHBlY3RlZC50eHQ6CiogU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwOgooV2ViQ29yZTo6RWxlbWVudDo6aW52YWxpZGF0
ZUZvclF1ZXJ5Q29udGFpbmVyU2l6ZUNoYW5nZSk6CihXZWJDb3JlOjpFbGVtZW50OjpuZWVkc1Vw
ZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUgY29uc3QpOgooV2ViQ29yZTo6RWxlbWVu
dDo6Y2xlYXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUpOgooV2ViQ29y
ZTo6RWxlbWVudDo6aW52YWxpZGF0ZUZvclF1ZXJ5Q29udGFpbmVyQ2hhbmdlKTogRGVsZXRlZC4K
CkFkZCBhIG5ldyBiaXQgdGhhdCB0ZWxscyB3aGVuIGEgY29udGFpbmVyIGhhcyBiZWVuIHJlc2l6
ZWQuCgoqIFNvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50Lmg6CiogU291cmNlL1dlYkNvcmUvZG9t
L05vZGUuaDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0LmNw
cDoKKFdlYkNvcmU6OktleWZyYW1lTGlzdDo6dXNlc0NvbnRhaW5lclVuaXRzIGNvbnN0KToKCkNo
ZWNrIGZvciBjb250YWluZXIgdW5pdCB1c2UuCgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9LZXlmcmFtZUxpc3QuaDoKKiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNw
cDoKKFdlYkNvcmU6OlN0eWxlOjpTY29wZTo6dXBkYXRlUXVlcnlDb250YWluZXJTdGF0ZSk6Ciog
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgooV2ViQ29yZTo6U3R5
bGU6OlRyZWVSZXNvbHZlcjo6Y3JlYXRlQW5pbWF0ZWRFbGVtZW50VXBkYXRlKToKCkludmFsaWRh
dGUgdGhlIGtleWZyYW1lcyBpZiBuZWVkZWQgd2hlbiBjb21wdXRpbmcgdGhlIHN0eWxlLgoKKFdl
YkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnB1c2hQYXJlbnQpOgoKVHJhY2sgaWYgdGhlIHN1
YnRyZWUgaXMgd2l0aGluZyBhIHJlc2l6ZWQgY29udGFpbmVyLgoKKiBTb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZVRyZWVSZXNvbHZlci5oOgoqIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJs
ZS5jcHA6CihXZWJDb3JlOjpTdHlsZWFibGU6OnF1ZXJ5Q29udGFpbmVyRGlkQ2hhbmdlIGNvbnN0
KToKKiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuaDoKLS0tCiBTb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5jcHAgICAgICAgICAgICAgICAgICAgIHwgMTMgKysrKysrKysrKysrLQog
U291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsr
KystCiBTb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oICAgICAgICAgICAgICAgICAgICAgICAgIHwg
IDUgKysrLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3Bw
ICAgfCAxMCArKysrKysrKysrCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJh
bWVMaXN0LmggICAgIHwgIDIgKysKIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3Bw
ICAgICAgICAgICAgICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVz
b2x2ZXIuY3BwICAgICAgICB8ICA5ICsrKysrKysrLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVUcmVlUmVzb2x2ZXIuaCAgICAgICAgICB8ICAzICsrLQogU291cmNlL1dlYkNvcmUvc3R5bGUv
U3R5bGVhYmxlLmNwcCAgICAgICAgICAgICAgICB8IDE1ICsrKysrKysrKysrKysrKwogU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmggICAgICAgICAgICAgICAgICB8ICAyICsrCiAuLi4v
Y29udGFpbmVyLXVuaXRzLWFuaW1hdGlvbi1leHBlY3RlZC50eHQgICAgICAgIHwgMTIgKysrKysr
LS0tLS0tCiAxMSBmaWxlcyBjaGFuZ2VkLCA2NSBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMo
LSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggNTA5YTg5YTY1NmJhLi4zMDkyNDk0MzIyYmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTIyNjUsMTAgKzIyNjUsMjEgQEAgdm9pZCBFbGVt
ZW50OjppbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlSW50ZXJuYWwoKQogICAgIE5vZGU6OmludmFs
aWRhdGVTdHlsZShTdHlsZTo6VmFsaWRpdHk6OlN1YnRyZWVJbnZhbGlkKTsKIH0KIAotdm9pZCBF
bGVtZW50OjppbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UoKQordm9pZCBFbGVtZW50
OjppbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJTaXplQ2hhbmdlKCkKIHsKICAgICAvLyBGSVhN
RTogSWRlYWxseSB3ZSB3b3VsZCBqdXN0IHJlY29tcHV0ZSB0aGluZ3MgdGhhdCBhcmUgYWN0dWFs
bHkgYWZmZWN0ZWQgYnkgY29udGFpbmVycyBxdWVyaWVzIHdpdGhpbiB0aGUgc3VidHJlZS4KICAg
ICBOb2RlOjppbnZhbGlkYXRlU3R5bGUoU3R5bGU6OlZhbGlkaXR5OjpTdWJ0cmVlSW52YWxpZCk7
CisgICAgc2V0Tm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBl
bmRlbnRTdHlsZSk7Cit9CisKK2Jvb2wgRWxlbWVudDo6bmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5l
ckRlcGVuZGVudFN0eWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZs
YWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSk7Cit9CisKK3ZvaWQg
RWxlbWVudDo6Y2xlYXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUoKQor
eworICAgIGNsZWFyTm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJE
ZXBlbmRlbnRTdHlsZSk7CiB9CiAKIHZvaWQgRWxlbWVudDo6aW52YWxpZGF0ZUV2ZW50TGlzdGVu
ZXJSZWdpb25zKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDFjMTFiYmM1ODZiNi4uZDE5NTJlNzdk
NzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTYzOSw3ICs2MzksMTAgQEAgcHVibGljOgogCiAg
ICAgdm9pZCBpbnZhbGlkYXRlU3R5bGVJbnRlcm5hbCgpOwogICAgIHZvaWQgaW52YWxpZGF0ZVN0
eWxlRm9yU3VidHJlZUludGVybmFsKCk7Ci0gICAgdm9pZCBpbnZhbGlkYXRlRm9yUXVlcnlDb250
YWluZXJDaGFuZ2UoKTsKKyAgICB2b2lkIGludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lclNpemVD
aGFuZ2UoKTsKKworICAgIGJvb2wgbmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0
eWxlKCkgY29uc3Q7CisgICAgdm9pZCBjbGVhck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBl
bmRlbnRTdHlsZSgpOwogCiAgICAgdm9pZCBpbnZhbGlkYXRlRXZlbnRMaXN0ZW5lclJlZ2lvbnMo
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlLmgKaW5kZXggNDU4YzU0N2IwODQzLi41NjhmODBmNmQzMDIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05v
ZGUuaApAQCAtNTgyLDkgKzU4MiwxMCBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIElzQ29tcHV0ZWRT
dHlsZUludmFsaWRGbGFnID0gMSA8PCAyNSwKICAgICAgICAgSGFzU2hhZG93Um9vdENvbnRhaW5p
bmdTbG90cyA9IDEgPDwgMjYsCiAgICAgICAgIElzSW5Ub3BMYXllciA9IDEgPDwgMjcsCi0gICAg
ICAgIE5lZWRzU1ZHUmVuZGVyZXJVcGRhdGUgPSAxIDw8IDI4CisgICAgICAgIE5lZWRzU1ZHUmVu
ZGVyZXJVcGRhdGUgPSAxIDw8IDI4LAorICAgICAgICBOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVy
RGVwZW5kZW50U3R5bGUgPSAxIDw8IDI5LAogCi0gICAgICAgIC8vIEJpdHMgMjktMzEgYXJlIGZy
ZWUuCisgICAgICAgIC8vIEJpdHMgMzAtMzEgYXJlIGZyZWUuCiAgICAgfTsKIAogICAgIGVudW0g
Y2xhc3MgVGFiSW5kZXhTdGF0ZSA6IHVpbnQ4X3QgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0LmNwcAppbmRleCA1MzU2OGM1OGJiZWYuLmVkMTFmYzBk
MWIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1l
TGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlz
dC5jcHAKQEAgLTIxNyw0ICsyMTcsMTQgQEAgYm9vbCBLZXlmcmFtZUxpc3Q6OmNvbnRhaW5zQW5p
bWF0YWJsZVByb3BlcnR5KCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK2Jvb2wgS2V5
ZnJhbWVMaXN0Ojp1c2VzQ29udGFpbmVyVW5pdHMoKSBjb25zdAoreworICAgIGZvciAoYXV0byYg
a2V5ZnJhbWUgOiBtX2tleWZyYW1lcykgeworICAgICAgICBpZiAoa2V5ZnJhbWUuc3R5bGUoKS0+
dXNlc0NvbnRhaW5lclVuaXRzKCkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9Cisg
ICAgcmV0dXJuIGZhbHNlOworfQorCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuaAppbmRleCAxNDE3Y2Q3YTlh
ZDIuLmFkODc3OTZhZGMyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL0tleWZyYW1lTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9L
ZXlmcmFtZUxpc3QuaApAQCAtMTA1LDYgKzEwNSw4IEBAIHB1YmxpYzoKICAgICBhdXRvIGJlZ2lu
KCkgY29uc3QgeyByZXR1cm4gbV9rZXlmcmFtZXMuYmVnaW4oKTsgfQogICAgIGF1dG8gZW5kKCkg
Y29uc3QgeyByZXR1cm4gbV9rZXlmcmFtZXMuZW5kKCk7IH0KIAorICAgIGJvb2wgdXNlc0NvbnRh
aW5lclVuaXRzKCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAgQXRvbVN0cmluZyBtX2FuaW1hdGlv
bk5hbWU7CiAgICAgVmVjdG9yPEtleWZyYW1lVmFsdWU+IG1fa2V5ZnJhbWVzOyAvLyBLZXB0IHNv
cnRlZCBieSBrZXkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3Bl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwCmluZGV4IGFkNDlhMTI2
OThkYi4uYmIxYjQxZGVlOTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcApAQCAt
ODI5LDcgKzgyOSw3IEBAIGJvb2wgU2NvcGU6OnVwZGF0ZVF1ZXJ5Q29udGFpbmVyU3RhdGUoUXVl
cnlDb250YWluZXJVcGRhdGVDb250ZXh0JiBjb250ZXh0KQogICAgIH0KIAogICAgIGZvciAoYXV0
byogdG9JbnZhbGlkYXRlIDogY29udGFpbmVyc1RvSW52YWxpZGF0ZSkKLSAgICAgICAgdG9JbnZh
bGlkYXRlLT5pbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UoKTsKKyAgICAgICAgdG9J
bnZhbGlkYXRlLT5pbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJTaXplQ2hhbmdlKCk7CiAKICAg
ICByZXR1cm4gIWNvbnRhaW5lcnNUb0ludmFsaWRhdGUuaXNFbXB0eSgpOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCmluZGV4IGJiN2JiNmIzOTUzNy4uOGMw
NjFjNDg3NWI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNv
bHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3Bw
CkBAIC01NzcsNyArNTc3LDkgQEAgRWxlbWVudFVwZGF0ZSBUcmVlUmVzb2x2ZXI6OmNyZWF0ZUFu
aW1hdGVkRWxlbWVudFVwZGF0ZShzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3QKICAgICBhdXRvJiBk
b2N1bWVudCA9IGVsZW1lbnQuZG9jdW1lbnQoKTsKICAgICBhdXRvKiBvbGRTdHlsZSA9IGVsZW1l
bnQucmVuZGVyT3JEaXNwbGF5Q29udGVudHNTdHlsZShzdHlsZWFibGUucHNldWRvSWQpOwogCi0g
ICAgT3B0aW9uU2V0PEFuaW1hdGlvbkltcGFjdD4gYW5pbWF0aW9uSW1wYWN0OworICAgIC8vIEZJ
WE1FOiBTb21ldGhpbmcgbGlrZSB0aGlzIGlzIGFsc28gbmVlZGVkIGZvciB2aWV3cG9ydCB1bml0
cy4KKyAgICBpZiAob2xkU3R5bGUgJiYgcGFyZW50KCkubmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5l
ckRlcGVuZGVudFN0eWxlKQorICAgICAgICBzdHlsZWFibGUucXVlcnlDb250YWluZXJEaWRDaGFu
Z2UoKTsKIAogICAgIC8vIEZpcnN0LCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IGFueSBuZXcg
Q1NTIGFuaW1hdGlvbiBvY2N1cmluZyBvbiB0aGlzIGVsZW1lbnQgaGFzIGEgbWF0Y2hpbmcgV2Vi
QW5pbWF0aW9uCiAgICAgLy8gb24gdGhlIGRvY3VtZW50IHRpbWVsaW5lLgpAQCAtNTkyLDYgKzU5
NCw4IEBAIEVsZW1lbnRVcGRhdGUgVHJlZVJlc29sdmVyOjpjcmVhdGVBbmltYXRlZEVsZW1lbnRV
cGRhdGUoc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0CiAgICAgICAgICAgICBzdHlsZWFibGUudXBk
YXRlQ1NTQW5pbWF0aW9ucyhvbGRTdHlsZSwgKm5ld1N0eWxlLCByZXNvbHV0aW9uQ29udGV4dCk7
CiAgICAgfQogCisgICAgT3B0aW9uU2V0PEFuaW1hdGlvbkltcGFjdD4gYW5pbWF0aW9uSW1wYWN0
OworCiAgICAgLy8gTm93IHdlIGNhbiB1cGRhdGUgYWxsIFdlYiBhbmltYXRpb25zLCB3aGljaCB3
aWxsIGluY2x1ZGUgQ1NTIEFuaW1hdGlvbnMgYXMgd2VsbAogICAgIC8vIGFzIGFuaW1hdGlvbnMg
Y3JlYXRlZCB2aWEgdGhlIEpTIEFQSS4KICAgICBpZiAoc3R5bGVhYmxlLmhhc0tleWZyYW1lRWZm
ZWN0cygpKSB7CkBAIC02NDAsNiArNjQ0LDkgQEAgdm9pZCBUcmVlUmVzb2x2ZXI6OnB1c2hQYXJl
bnQoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBDaGFuZ2UKICAg
ICAgICAgcGFyZW50LmRpZFB1c2hTY29wZSA9IHRydWU7CiAgICAgfQogCisgICAgcGFyZW50Lm5l
ZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSA9IG1fcGFyZW50U3RhY2subGFz
dCgpLm5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSB8fCBlbGVtZW50Lm5l
ZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSgpOworICAgIGVsZW1lbnQuY2xl
YXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUoKTsKKwogICAgIG1fcGFy
ZW50U3RhY2suYXBwZW5kKFdURk1vdmUocGFyZW50KSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZVRyZWVSZXNvbHZlci5oCmluZGV4IDVhZjlmYmY5MjcwZC4uYWNmMDBhNDhlY2JkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmgKQEAgLTY5LDcgKzY5LDcg
QEAgcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIERlc2NlbmRhbnRzVG9SZXNvbHZlIDogdWludDhf
dCB7IE5vbmUsIENoaWxkcmVuV2l0aEV4cGxpY2l0SW5oZXJpdCwgQ2hpbGRyZW4sIEFsbCB9Owog
ICAgIHN0ZDo6cGFpcjxFbGVtZW50VXBkYXRlLCBEZXNjZW5kYW50c1RvUmVzb2x2ZT4gcmVzb2x2
ZUVsZW1lbnQoRWxlbWVudCYsIFJlc29sdXRpb25UeXBlKTsKIAotICAgIHN0YXRpYyBFbGVtZW50
VXBkYXRlIGNyZWF0ZUFuaW1hdGVkRWxlbWVudFVwZGF0ZShzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVy
U3R5bGU+LCBjb25zdCBTdHlsZWFibGUmLCBDaGFuZ2UsIGNvbnN0IFJlc29sdXRpb25Db250ZXh0
Jik7CisgICAgRWxlbWVudFVwZGF0ZSBjcmVhdGVBbmltYXRlZEVsZW1lbnRVcGRhdGUoc3RkOjp1
bmlxdWVfcHRyPFJlbmRlclN0eWxlPiwgY29uc3QgU3R5bGVhYmxlJiwgQ2hhbmdlLCBjb25zdCBS
ZXNvbHV0aW9uQ29udGV4dCYpOwogICAgIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFVwZGF0ZT4gcmVz
b2x2ZVBzZXVkb0VsZW1lbnQoRWxlbWVudCYsIFBzZXVkb0lkLCBjb25zdCBFbGVtZW50VXBkYXRl
Jik7CiAgICAgc3RkOjpvcHRpb25hbDxFbGVtZW50VXBkYXRlPiByZXNvbHZlQW5jZXN0b3JQc2V1
ZG9FbGVtZW50KEVsZW1lbnQmLCBQc2V1ZG9JZCwgY29uc3QgRWxlbWVudFVwZGF0ZSYpOwogICAg
IHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gcmVzb2x2ZUFuY2VzdG9yRmlyc3RMaW5lUHNl
dWRvRWxlbWVudChFbGVtZW50JiwgY29uc3QgRWxlbWVudFVwZGF0ZSYpOwpAQCAtOTUsNiArOTUs
NyBAQCBwcml2YXRlOgogICAgICAgICBEZXNjZW5kYW50c1RvUmVzb2x2ZSBkZXNjZW5kYW50c1Rv
UmVzb2x2ZSB7IERlc2NlbmRhbnRzVG9SZXNvbHZlOjpOb25lIH07CiAgICAgICAgIGJvb2wgZGlk
UHVzaFNjb3BlIHsgZmFsc2UgfTsKICAgICAgICAgYm9vbCByZXNvbHZlZEZpcnN0TGluZUFuZExl
dHRlckNoaWxkIHsgZmFsc2UgfTsKKyAgICAgICAgYm9vbCBuZWVkc1VwZGF0ZVF1ZXJ5Q29udGFp
bmVyRGVwZW5kZW50U3R5bGUgeyBmYWxzZSB9OwogCiAgICAgICAgIFBhcmVudChEb2N1bWVudCYp
OwogICAgICAgICBQYXJlbnQoRWxlbWVudCYsIGNvbnN0IFJlbmRlclN0eWxlJiwgQ2hhbmdlLCBE
ZXNjZW5kYW50c1RvUmVzb2x2ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZWFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNwcAppbmRleCBj
NDQ0MTJhZDk0YTUuLmQ0OTE2ZGNhZDExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3Bw
CkBAIC02MjUsNCArNjI1LDE5IEBAIHZvaWQgU3R5bGVhYmxlOjp1cGRhdGVDU1NUcmFuc2l0aW9u
cyhjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVudFN0eWxlLCBjb25zdCBSZW5kCiAgICAgICAgIHVw
ZGF0ZUNTU1RyYW5zaXRpb25zRm9yU3R5bGVhYmxlQW5kUHJvcGVydHkoKnRoaXMsIHByb3BlcnR5
LCBjdXJyZW50U3R5bGUsIG5ld1N0eWxlLCBnZW5lcmF0aW9uVGltZSk7CiB9CiAKK3ZvaWQgU3R5
bGVhYmxlOjpxdWVyeUNvbnRhaW5lckRpZENoYW5nZSgpIGNvbnN0Cit7CisgICAgYXV0byogYW5p
bWF0aW9ucyA9IHRoaXMtPmFuaW1hdGlvbnMoKTsKKyAgICBpZiAoIWFuaW1hdGlvbnMpCisgICAg
ICAgIHJldHVybjsKKyAgICBmb3IgKGF1dG8gYW5pbWF0aW9uIDogKmFuaW1hdGlvbnMpIHsKKyAg
ICAgICAgYXV0byogY3NzQW5pbWF0aW9uID0gZHluYW1pY0Rvd25jYXN0PENTU0FuaW1hdGlvbj4o
YW5pbWF0aW9uLmdldCgpKTsKKyAgICAgICAgaWYgKCFjc3NBbmltYXRpb24pCisgICAgICAgICAg
ICBjb250aW51ZTsKKyAgICAgICAgYXV0byoga2V5ZnJhbWVFZmZlY3QgPSBkeW5hbWljRG93bmNh
c3Q8S2V5ZnJhbWVFZmZlY3Q+KGNzc0FuaW1hdGlvbi0+ZWZmZWN0KCkpOworICAgICAgICBpZiAo
a2V5ZnJhbWVFZmZlY3QgJiYga2V5ZnJhbWVFZmZlY3QtPmJsZW5kaW5nS2V5ZnJhbWVzKCkudXNl
c0NvbnRhaW5lclVuaXRzKCkpCisgICAgICAgICAgICBjc3NBbmltYXRpb24tPmtleWZyYW1lc1J1
bGVEaWRDaGFuZ2UoKTsKKyAgICB9Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oIGIvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVhYmxlLmgKaW5kZXggMjU0MDU4ZmQ5Yjc2Li5hOTU0MDhhMjUwYTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlYWJsZS5oCkBAIC0xNjEsNiArMTYxLDggQEAgc3RydWN0IFN0eWxlYWJs
ZSB7CiAgICAgICAgIGVsZW1lbnQua2V5ZnJhbWVzUnVsZURpZENoYW5nZShwc2V1ZG9JZCk7CiAg
ICAgfQogCisgICAgdm9pZCBxdWVyeUNvbnRhaW5lckRpZENoYW5nZSgpIGNvbnN0OworCiAgICAg
Ym9vbCBhbmltYXRpb25MaXN0Q29udGFpbnNOZXdseVZhbGlkQW5pbWF0aW9uKGNvbnN0IEFuaW1h
dGlvbkxpc3QmKSBjb25zdDsKIAogICAgIHZvaWQgZWxlbWVudFdhc1JlbW92ZWQoKSBjb25zdDsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2NvbnRhaW5lci11bml0cy1hbmltYXRp
b24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFu
aW1hdGlvbi1leHBlY3RlZC50eHQKaW5kZXggMjlkMTk3YWExMjJmLi4xMzIzYzM2NDM3NWMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2NvbnRhaW5lci11bml0cy1hbmltYXRpb24t
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2NvbnRhaW5lci11bml0cy1h
bmltYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0xLDE0ICsxLDE0IEBACiAKIFBBU1MgQW5pbWF0aW9u
IHVzaW5nIGNxdyB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcXcgdW5pdCByZXNwb25kcyB0
byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiOTBweCIg
YnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0aW9uIHVzaW5nIGNxdyB1bml0IHJlc3BvbmRzIHRv
IGNoYW5naW5nIGNvbnRhaW5lciBzaXplCiBQQVNTIEFuaW1hdGlvbiB1c2luZyBjcWggdW5pdAot
RkFJTCBBbmltYXRpb24gdXNpbmcgY3FoIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFp
bmVyIHNpemUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjkwcHgiIGJ1dCBnb3QgIjYwcHgiCitQ
QVNTIEFuaW1hdGlvbiB1c2luZyBjcWggdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWlu
ZXIgc2l6ZQogUEFTUyBBbmltYXRpb24gdXNpbmcgY3FpIHVuaXQKLUZBSUwgQW5pbWF0aW9uIHVz
aW5nIGNxaSB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICI5MHB4IiBidXQgZ290ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNp
bmcgY3FpIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFpbmVyIHNpemUKIFBBU1MgQW5p
bWF0aW9uIHVzaW5nIGNxYiB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcWIgdW5pdCByZXNw
b25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
OTBweCIgYnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0aW9uIHVzaW5nIGNxYiB1bml0IHJlc3Bv
bmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplCiBQQVNTIEFuaW1hdGlvbiB1c2luZyBjcW1p
biB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcW1pbiB1bml0IHJlc3BvbmRzIHRvIGNoYW5n
aW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICI5MHB4IiBidXQgZ290
ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNpbmcgY3FtaW4gdW5pdCByZXNwb25kcyB0byBjaGFu
Z2luZyBjb250YWluZXIgc2l6ZQogUEFTUyBBbmltYXRpb24gdXNpbmcgY3FtYXggdW5pdAotRkFJ
TCBBbmltYXRpb24gdXNpbmcgY3FtYXggdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWlu
ZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiOTBweCIgYnV0IGdvdCAiNjBweCIKK1BB
U1MgQW5pbWF0aW9uIHVzaW5nIGNxbWF4IHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFp
bmVyIHNpemUKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460255</attachid>
            <date>2022-06-15 11:48:04 -0700</date>
            <delta_ts>2022-06-15 11:49:56 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-241546-20220615214802.patch</filename>
            <type>text/plain</type>
            <size>12722</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">RnJvbSBkYTE4MDg5YWI1OGZkNTZhMDdmZWVhMGU0NTMxYTNlMzM2N2MwMDRhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnR0aSBLb2l2aXN0byA8YW50dGlAYXBwbGUuY29tPgpEYXRl
OiBNb24sIDEzIEp1biAyMDIyIDE1OjQ5OjU3ICswMzAwClN1YmplY3Q6IFtQQVRDSF0gW0NTUyBD
b250YWluZXIgUXVlcmllc10gSW52YWxpZGF0ZSBhbmltYXRpb24ga2V5ZnJhbWVzIHVzaW5nCiBj
b250YWluZXIgdW5pdHMgb24gd2hlbiBjb250YWluZXIgc2l6ZSBjaGFuZ2VzCiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQxNTQ2CgpSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KCkNvbnRhaW5lciBzaXplIGNoYW5nZSBhbHNvIGNoYW5nZXMgdGhlIGludGVycHJl
dGF0aW9uIG9mIGNvbnRhaW5lciB1bml0cyB1c2VkIGluIGtleWZyYW1lcy4KCiogTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNvbnRhaW4vY29udGFp
bmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFuaW1hdGlvbi1leHBlY3RlZC50eHQ6CiogU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwOgooV2ViQ29yZTo6RWxlbWVudDo6aW52YWxpZGF0
ZUZvclF1ZXJ5Q29udGFpbmVyU2l6ZUNoYW5nZSk6CihXZWJDb3JlOjpFbGVtZW50OjpuZWVkc1Vw
ZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUgY29uc3QpOgooV2ViQ29yZTo6RWxlbWVu
dDo6Y2xlYXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUpOgooV2ViQ29y
ZTo6RWxlbWVudDo6aW52YWxpZGF0ZUZvclF1ZXJ5Q29udGFpbmVyQ2hhbmdlKTogRGVsZXRlZC4K
CkFkZCBhIG5ldyBiaXQgdGhhdCB0ZWxscyB3aGVuIGEgY29udGFpbmVyIGhhcyBiZWVuIHJlc2l6
ZWQuCgoqIFNvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50Lmg6CiogU291cmNlL1dlYkNvcmUvZG9t
L05vZGUuaDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0LmNw
cDoKKFdlYkNvcmU6OktleWZyYW1lTGlzdDo6dXNlc0NvbnRhaW5lclVuaXRzIGNvbnN0KToKCkNo
ZWNrIGZvciBjb250YWluZXIgdW5pdCB1c2UuCgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9LZXlmcmFtZUxpc3QuaDoKKiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNw
cDoKKFdlYkNvcmU6OlN0eWxlOjpTY29wZTo6dXBkYXRlUXVlcnlDb250YWluZXJTdGF0ZSk6Ciog
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwOgooV2ViQ29yZTo6U3R5
bGU6OlRyZWVSZXNvbHZlcjo6Y3JlYXRlQW5pbWF0ZWRFbGVtZW50VXBkYXRlKToKCkludmFsaWRh
dGUgdGhlIGtleWZyYW1lcyBpZiBuZWVkZWQgd2hlbiBjb21wdXRpbmcgdGhlIHN0eWxlLgoKKFdl
YkNvcmU6OlN0eWxlOjpUcmVlUmVzb2x2ZXI6OnB1c2hQYXJlbnQpOgoKVHJhY2sgaWYgdGhlIHN1
YnRyZWUgaXMgd2l0aGluZyBhIHJlc2l6ZWQgY29udGFpbmVyLgoKKiBTb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZVRyZWVSZXNvbHZlci5oOgoqIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJs
ZS5jcHA6CihXZWJDb3JlOjpTdHlsZWFibGU6OnF1ZXJ5Q29udGFpbmVyRGlkQ2hhbmdlIGNvbnN0
KToKKiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuaDoKLS0tCiBTb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5jcHAgICAgICAgICAgICAgICAgICAgIHwgMTMgKysrKysrKysrKysrLQog
U291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsr
KystCiBTb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oICAgICAgICAgICAgICAgICAgICAgICAgIHwg
IDUgKysrLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3Bw
ICAgfCAxMCArKysrKysrKysrCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJh
bWVMaXN0LmggICAgIHwgIDIgKysKIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3Bw
ICAgICAgICAgICAgICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVz
b2x2ZXIuY3BwICAgICAgICB8ICA5ICsrKysrKysrLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVUcmVlUmVzb2x2ZXIuaCAgICAgICAgICB8ICAzICsrLQogU291cmNlL1dlYkNvcmUvc3R5bGUv
U3R5bGVhYmxlLmNwcCAgICAgICAgICAgICAgICB8IDE1ICsrKysrKysrKysrKysrKwogU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmggICAgICAgICAgICAgICAgICB8ICAyICsrCiAuLi4v
Y29udGFpbmVyLXVuaXRzLWFuaW1hdGlvbi1leHBlY3RlZC50eHQgICAgICAgIHwgMTIgKysrKysr
LS0tLS0tCiAxMSBmaWxlcyBjaGFuZ2VkLCA2NSBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMo
LSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggNTA5YTg5YTY1NmJhLi4zMDkyNDk0MzIyYmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTIyNjUsMTAgKzIyNjUsMjEgQEAgdm9pZCBFbGVt
ZW50OjppbnZhbGlkYXRlU3R5bGVGb3JTdWJ0cmVlSW50ZXJuYWwoKQogICAgIE5vZGU6OmludmFs
aWRhdGVTdHlsZShTdHlsZTo6VmFsaWRpdHk6OlN1YnRyZWVJbnZhbGlkKTsKIH0KIAotdm9pZCBF
bGVtZW50OjppbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UoKQordm9pZCBFbGVtZW50
OjppbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJTaXplQ2hhbmdlKCkKIHsKICAgICAvLyBGSVhN
RTogSWRlYWxseSB3ZSB3b3VsZCBqdXN0IHJlY29tcHV0ZSB0aGluZ3MgdGhhdCBhcmUgYWN0dWFs
bHkgYWZmZWN0ZWQgYnkgY29udGFpbmVycyBxdWVyaWVzIHdpdGhpbiB0aGUgc3VidHJlZS4KICAg
ICBOb2RlOjppbnZhbGlkYXRlU3R5bGUoU3R5bGU6OlZhbGlkaXR5OjpTdWJ0cmVlSW52YWxpZCk7
CisgICAgc2V0Tm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBl
bmRlbnRTdHlsZSk7Cit9CisKK2Jvb2wgRWxlbWVudDo6bmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5l
ckRlcGVuZGVudFN0eWxlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gaGFzTm9kZUZsYWcoTm9kZUZs
YWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSk7Cit9CisKK3ZvaWQg
RWxlbWVudDo6Y2xlYXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUoKQor
eworICAgIGNsZWFyTm9kZUZsYWcoTm9kZUZsYWc6Ok5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJE
ZXBlbmRlbnRTdHlsZSk7CiB9CiAKIHZvaWQgRWxlbWVudDo6aW52YWxpZGF0ZUV2ZW50TGlzdGVu
ZXJSZWdpb25zKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDFjMTFiYmM1ODZiNi4uZDE5NTJlNzdk
NzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTYzOSw3ICs2MzksMTAgQEAgcHVibGljOgogCiAg
ICAgdm9pZCBpbnZhbGlkYXRlU3R5bGVJbnRlcm5hbCgpOwogICAgIHZvaWQgaW52YWxpZGF0ZVN0
eWxlRm9yU3VidHJlZUludGVybmFsKCk7Ci0gICAgdm9pZCBpbnZhbGlkYXRlRm9yUXVlcnlDb250
YWluZXJDaGFuZ2UoKTsKKyAgICB2b2lkIGludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lclNpemVD
aGFuZ2UoKTsKKworICAgIGJvb2wgbmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0
eWxlKCkgY29uc3Q7CisgICAgdm9pZCBjbGVhck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBl
bmRlbnRTdHlsZSgpOwogCiAgICAgdm9pZCBpbnZhbGlkYXRlRXZlbnRMaXN0ZW5lclJlZ2lvbnMo
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlLmgKaW5kZXggNDU4YzU0N2IwODQzLi41NjhmODBmNmQzMDIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05v
ZGUuaApAQCAtNTgyLDkgKzU4MiwxMCBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIElzQ29tcHV0ZWRT
dHlsZUludmFsaWRGbGFnID0gMSA8PCAyNSwKICAgICAgICAgSGFzU2hhZG93Um9vdENvbnRhaW5p
bmdTbG90cyA9IDEgPDwgMjYsCiAgICAgICAgIElzSW5Ub3BMYXllciA9IDEgPDwgMjcsCi0gICAg
ICAgIE5lZWRzU1ZHUmVuZGVyZXJVcGRhdGUgPSAxIDw8IDI4CisgICAgICAgIE5lZWRzU1ZHUmVu
ZGVyZXJVcGRhdGUgPSAxIDw8IDI4LAorICAgICAgICBOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVy
RGVwZW5kZW50U3R5bGUgPSAxIDw8IDI5LAogCi0gICAgICAgIC8vIEJpdHMgMjktMzEgYXJlIGZy
ZWUuCisgICAgICAgIC8vIEJpdHMgMzAtMzEgYXJlIGZyZWUuCiAgICAgfTsKIAogICAgIGVudW0g
Y2xhc3MgVGFiSW5kZXhTdGF0ZSA6IHVpbnQ4X3QgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0LmNwcAppbmRleCA1MzU2OGM1OGJiZWYuLmVkMTFmYzBk
MWIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1l
TGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlz
dC5jcHAKQEAgLTIxNyw0ICsyMTcsMTQgQEAgYm9vbCBLZXlmcmFtZUxpc3Q6OmNvbnRhaW5zQW5p
bWF0YWJsZVByb3BlcnR5KCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK2Jvb2wgS2V5
ZnJhbWVMaXN0Ojp1c2VzQ29udGFpbmVyVW5pdHMoKSBjb25zdAoreworICAgIGZvciAoYXV0byYg
a2V5ZnJhbWUgOiBtX2tleWZyYW1lcykgeworICAgICAgICBpZiAoa2V5ZnJhbWUuc3R5bGUoKS0+
dXNlc0NvbnRhaW5lclVuaXRzKCkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9Cisg
ICAgcmV0dXJuIGZhbHNlOworfQorCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuaAppbmRleCAxNDE3Y2Q3YTlh
ZDIuLmFkODc3OTZhZGMyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL0tleWZyYW1lTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9L
ZXlmcmFtZUxpc3QuaApAQCAtMTA1LDYgKzEwNSw4IEBAIHB1YmxpYzoKICAgICBhdXRvIGJlZ2lu
KCkgY29uc3QgeyByZXR1cm4gbV9rZXlmcmFtZXMuYmVnaW4oKTsgfQogICAgIGF1dG8gZW5kKCkg
Y29uc3QgeyByZXR1cm4gbV9rZXlmcmFtZXMuZW5kKCk7IH0KIAorICAgIGJvb2wgdXNlc0NvbnRh
aW5lclVuaXRzKCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAgQXRvbVN0cmluZyBtX2FuaW1hdGlv
bk5hbWU7CiAgICAgVmVjdG9yPEtleWZyYW1lVmFsdWU+IG1fa2V5ZnJhbWVzOyAvLyBLZXB0IHNv
cnRlZCBieSBrZXkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3Bl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwCmluZGV4IGFkNDlhMTI2
OThkYi4uYmIxYjQxZGVlOTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVNjb3BlLmNwcApAQCAt
ODI5LDcgKzgyOSw3IEBAIGJvb2wgU2NvcGU6OnVwZGF0ZVF1ZXJ5Q29udGFpbmVyU3RhdGUoUXVl
cnlDb250YWluZXJVcGRhdGVDb250ZXh0JiBjb250ZXh0KQogICAgIH0KIAogICAgIGZvciAoYXV0
byogdG9JbnZhbGlkYXRlIDogY29udGFpbmVyc1RvSW52YWxpZGF0ZSkKLSAgICAgICAgdG9JbnZh
bGlkYXRlLT5pbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UoKTsKKyAgICAgICAgdG9J
bnZhbGlkYXRlLT5pbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJTaXplQ2hhbmdlKCk7CiAKICAg
ICByZXR1cm4gIWNvbnRhaW5lcnNUb0ludmFsaWRhdGUuaXNFbXB0eSgpOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3BwCmluZGV4IGJiN2JiNmIzOTUzNy4uOGMw
NjFjNDg3NWI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNv
bHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuY3Bw
CkBAIC01NzcsNyArNTc3LDkgQEAgRWxlbWVudFVwZGF0ZSBUcmVlUmVzb2x2ZXI6OmNyZWF0ZUFu
aW1hdGVkRWxlbWVudFVwZGF0ZShzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3QKICAgICBhdXRvJiBk
b2N1bWVudCA9IGVsZW1lbnQuZG9jdW1lbnQoKTsKICAgICBhdXRvKiBvbGRTdHlsZSA9IGVsZW1l
bnQucmVuZGVyT3JEaXNwbGF5Q29udGVudHNTdHlsZShzdHlsZWFibGUucHNldWRvSWQpOwogCi0g
ICAgT3B0aW9uU2V0PEFuaW1hdGlvbkltcGFjdD4gYW5pbWF0aW9uSW1wYWN0OworICAgIC8vIEZJ
WE1FOiBTb21ldGhpbmcgbGlrZSB0aGlzIGlzIGFsc28gbmVlZGVkIGZvciB2aWV3cG9ydCB1bml0
cy4KKyAgICBpZiAob2xkU3R5bGUgJiYgcGFyZW50KCkubmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5l
ckRlcGVuZGVudFN0eWxlKQorICAgICAgICBzdHlsZWFibGUucXVlcnlDb250YWluZXJEaWRDaGFu
Z2UoKTsKIAogICAgIC8vIEZpcnN0LCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IGFueSBuZXcg
Q1NTIGFuaW1hdGlvbiBvY2N1cmluZyBvbiB0aGlzIGVsZW1lbnQgaGFzIGEgbWF0Y2hpbmcgV2Vi
QW5pbWF0aW9uCiAgICAgLy8gb24gdGhlIGRvY3VtZW50IHRpbWVsaW5lLgpAQCAtNTkyLDYgKzU5
NCw4IEBAIEVsZW1lbnRVcGRhdGUgVHJlZVJlc29sdmVyOjpjcmVhdGVBbmltYXRlZEVsZW1lbnRV
cGRhdGUoc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0CiAgICAgICAgICAgICBzdHlsZWFibGUudXBk
YXRlQ1NTQW5pbWF0aW9ucyhvbGRTdHlsZSwgKm5ld1N0eWxlLCByZXNvbHV0aW9uQ29udGV4dCk7
CiAgICAgfQogCisgICAgT3B0aW9uU2V0PEFuaW1hdGlvbkltcGFjdD4gYW5pbWF0aW9uSW1wYWN0
OworCiAgICAgLy8gTm93IHdlIGNhbiB1cGRhdGUgYWxsIFdlYiBhbmltYXRpb25zLCB3aGljaCB3
aWxsIGluY2x1ZGUgQ1NTIEFuaW1hdGlvbnMgYXMgd2VsbAogICAgIC8vIGFzIGFuaW1hdGlvbnMg
Y3JlYXRlZCB2aWEgdGhlIEpTIEFQSS4KICAgICBpZiAoc3R5bGVhYmxlLmhhc0tleWZyYW1lRWZm
ZWN0cygpKSB7CkBAIC02NDAsNiArNjQ0LDkgQEAgdm9pZCBUcmVlUmVzb2x2ZXI6OnB1c2hQYXJl
bnQoRWxlbWVudCYgZWxlbWVudCwgY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlLCBDaGFuZ2UKICAg
ICAgICAgcGFyZW50LmRpZFB1c2hTY29wZSA9IHRydWU7CiAgICAgfQogCisgICAgcGFyZW50Lm5l
ZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSA9IG1fcGFyZW50U3RhY2subGFz
dCgpLm5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSB8fCBlbGVtZW50Lm5l
ZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSgpOworICAgIGVsZW1lbnQuY2xl
YXJOZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5bGUoKTsKKwogICAgIG1fcGFy
ZW50U3RhY2suYXBwZW5kKFdURk1vdmUocGFyZW50KSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZVRyZWVSZXNvbHZlci5oCmluZGV4IDVhZjlmYmY5MjcwZC4uYWNmMDBhNDhlY2JkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmgKQEAgLTY5LDcgKzY5LDcg
QEAgcHJpdmF0ZToKICAgICBlbnVtIGNsYXNzIERlc2NlbmRhbnRzVG9SZXNvbHZlIDogdWludDhf
dCB7IE5vbmUsIENoaWxkcmVuV2l0aEV4cGxpY2l0SW5oZXJpdCwgQ2hpbGRyZW4sIEFsbCB9Owog
ICAgIHN0ZDo6cGFpcjxFbGVtZW50VXBkYXRlLCBEZXNjZW5kYW50c1RvUmVzb2x2ZT4gcmVzb2x2
ZUVsZW1lbnQoRWxlbWVudCYsIFJlc29sdXRpb25UeXBlKTsKIAotICAgIHN0YXRpYyBFbGVtZW50
VXBkYXRlIGNyZWF0ZUFuaW1hdGVkRWxlbWVudFVwZGF0ZShzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVy
U3R5bGU+LCBjb25zdCBTdHlsZWFibGUmLCBDaGFuZ2UsIGNvbnN0IFJlc29sdXRpb25Db250ZXh0
Jik7CisgICAgRWxlbWVudFVwZGF0ZSBjcmVhdGVBbmltYXRlZEVsZW1lbnRVcGRhdGUoc3RkOjp1
bmlxdWVfcHRyPFJlbmRlclN0eWxlPiwgY29uc3QgU3R5bGVhYmxlJiwgQ2hhbmdlLCBjb25zdCBS
ZXNvbHV0aW9uQ29udGV4dCYpOwogICAgIHN0ZDo6b3B0aW9uYWw8RWxlbWVudFVwZGF0ZT4gcmVz
b2x2ZVBzZXVkb0VsZW1lbnQoRWxlbWVudCYsIFBzZXVkb0lkLCBjb25zdCBFbGVtZW50VXBkYXRl
Jik7CiAgICAgc3RkOjpvcHRpb25hbDxFbGVtZW50VXBkYXRlPiByZXNvbHZlQW5jZXN0b3JQc2V1
ZG9FbGVtZW50KEVsZW1lbnQmLCBQc2V1ZG9JZCwgY29uc3QgRWxlbWVudFVwZGF0ZSYpOwogICAg
IHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gcmVzb2x2ZUFuY2VzdG9yRmlyc3RMaW5lUHNl
dWRvRWxlbWVudChFbGVtZW50JiwgY29uc3QgRWxlbWVudFVwZGF0ZSYpOwpAQCAtOTUsNiArOTUs
NyBAQCBwcml2YXRlOgogICAgICAgICBEZXNjZW5kYW50c1RvUmVzb2x2ZSBkZXNjZW5kYW50c1Rv
UmVzb2x2ZSB7IERlc2NlbmRhbnRzVG9SZXNvbHZlOjpOb25lIH07CiAgICAgICAgIGJvb2wgZGlk
UHVzaFNjb3BlIHsgZmFsc2UgfTsKICAgICAgICAgYm9vbCByZXNvbHZlZEZpcnN0TGluZUFuZExl
dHRlckNoaWxkIHsgZmFsc2UgfTsKKyAgICAgICAgYm9vbCBuZWVkc1VwZGF0ZVF1ZXJ5Q29udGFp
bmVyRGVwZW5kZW50U3R5bGUgeyBmYWxzZSB9OwogCiAgICAgICAgIFBhcmVudChEb2N1bWVudCYp
OwogICAgICAgICBQYXJlbnQoRWxlbWVudCYsIGNvbnN0IFJlbmRlclN0eWxlJiwgQ2hhbmdlLCBE
ZXNjZW5kYW50c1RvUmVzb2x2ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZWFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNwcAppbmRleCBj
NDQ0MTJhZDk0YTUuLmQ0OTE2ZGNhZDExZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3Bw
CkBAIC02MjUsNCArNjI1LDE5IEBAIHZvaWQgU3R5bGVhYmxlOjp1cGRhdGVDU1NUcmFuc2l0aW9u
cyhjb25zdCBSZW5kZXJTdHlsZSYgY3VycmVudFN0eWxlLCBjb25zdCBSZW5kCiAgICAgICAgIHVw
ZGF0ZUNTU1RyYW5zaXRpb25zRm9yU3R5bGVhYmxlQW5kUHJvcGVydHkoKnRoaXMsIHByb3BlcnR5
LCBjdXJyZW50U3R5bGUsIG5ld1N0eWxlLCBnZW5lcmF0aW9uVGltZSk7CiB9CiAKK3ZvaWQgU3R5
bGVhYmxlOjpxdWVyeUNvbnRhaW5lckRpZENoYW5nZSgpIGNvbnN0Cit7CisgICAgYXV0byogYW5p
bWF0aW9ucyA9IHRoaXMtPmFuaW1hdGlvbnMoKTsKKyAgICBpZiAoIWFuaW1hdGlvbnMpCisgICAg
ICAgIHJldHVybjsKKyAgICBmb3IgKGF1dG8gYW5pbWF0aW9uIDogKmFuaW1hdGlvbnMpIHsKKyAg
ICAgICAgYXV0byogY3NzQW5pbWF0aW9uID0gZHluYW1pY0Rvd25jYXN0PENTU0FuaW1hdGlvbj4o
YW5pbWF0aW9uLmdldCgpKTsKKyAgICAgICAgaWYgKCFjc3NBbmltYXRpb24pCisgICAgICAgICAg
ICBjb250aW51ZTsKKyAgICAgICAgYXV0byoga2V5ZnJhbWVFZmZlY3QgPSBkeW5hbWljRG93bmNh
c3Q8S2V5ZnJhbWVFZmZlY3Q+KGNzc0FuaW1hdGlvbi0+ZWZmZWN0KCkpOworICAgICAgICBpZiAo
a2V5ZnJhbWVFZmZlY3QgJiYga2V5ZnJhbWVFZmZlY3QtPmJsZW5kaW5nS2V5ZnJhbWVzKCkudXNl
c0NvbnRhaW5lclVuaXRzKCkpCisgICAgICAgICAgICBjc3NBbmltYXRpb24tPmtleWZyYW1lc1J1
bGVEaWRDaGFuZ2UoKTsKKyAgICB9Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oIGIvU291cmNlL1dlYkNvcmUv
c3R5bGUvU3R5bGVhYmxlLmgKaW5kZXggMjU0MDU4ZmQ5Yjc2Li5hOTU0MDhhMjUwYTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N0eWxlL1N0eWxlYWJsZS5oCkBAIC0xNjEsNiArMTYxLDggQEAgc3RydWN0IFN0eWxlYWJs
ZSB7CiAgICAgICAgIGVsZW1lbnQua2V5ZnJhbWVzUnVsZURpZENoYW5nZShwc2V1ZG9JZCk7CiAg
ICAgfQogCisgICAgdm9pZCBxdWVyeUNvbnRhaW5lckRpZENoYW5nZSgpIGNvbnN0OworCiAgICAg
Ym9vbCBhbmltYXRpb25MaXN0Q29udGFpbnNOZXdseVZhbGlkQW5pbWF0aW9uKGNvbnN0IEFuaW1h
dGlvbkxpc3QmKSBjb25zdDsKIAogICAgIHZvaWQgZWxlbWVudFdhc1JlbW92ZWQoKSBjb25zdDsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2NvbnRhaW5lci11bml0cy1hbmltYXRp
b24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFu
aW1hdGlvbi1leHBlY3RlZC50eHQKaW5kZXggMjlkMTk3YWExMjJmLi4xMzIzYzM2NDM3NWMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2NvbnRhaW5lci11bml0cy1hbmltYXRpb24t
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2NvbnRhaW5lci11bml0cy1h
bmltYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0xLDE0ICsxLDE0IEBACiAKIFBBU1MgQW5pbWF0aW9u
IHVzaW5nIGNxdyB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcXcgdW5pdCByZXNwb25kcyB0
byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiOTBweCIg
YnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0aW9uIHVzaW5nIGNxdyB1bml0IHJlc3BvbmRzIHRv
IGNoYW5naW5nIGNvbnRhaW5lciBzaXplCiBQQVNTIEFuaW1hdGlvbiB1c2luZyBjcWggdW5pdAot
RkFJTCBBbmltYXRpb24gdXNpbmcgY3FoIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFp
bmVyIHNpemUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjkwcHgiIGJ1dCBnb3QgIjYwcHgiCitQ
QVNTIEFuaW1hdGlvbiB1c2luZyBjcWggdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWlu
ZXIgc2l6ZQogUEFTUyBBbmltYXRpb24gdXNpbmcgY3FpIHVuaXQKLUZBSUwgQW5pbWF0aW9uIHVz
aW5nIGNxaSB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkICI5MHB4IiBidXQgZ290ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNp
bmcgY3FpIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFpbmVyIHNpemUKIFBBU1MgQW5p
bWF0aW9uIHVzaW5nIGNxYiB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcWIgdW5pdCByZXNw
b25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAi
OTBweCIgYnV0IGdvdCAiNjBweCIKK1BBU1MgQW5pbWF0aW9uIHVzaW5nIGNxYiB1bml0IHJlc3Bv
bmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplCiBQQVNTIEFuaW1hdGlvbiB1c2luZyBjcW1p
biB1bml0Ci1GQUlMIEFuaW1hdGlvbiB1c2luZyBjcW1pbiB1bml0IHJlc3BvbmRzIHRvIGNoYW5n
aW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICI5MHB4IiBidXQgZ290
ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNpbmcgY3FtaW4gdW5pdCByZXNwb25kcyB0byBjaGFu
Z2luZyBjb250YWluZXIgc2l6ZQogUEFTUyBBbmltYXRpb24gdXNpbmcgY3FtYXggdW5pdAotRkFJ
TCBBbmltYXRpb24gdXNpbmcgY3FtYXggdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWlu
ZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiOTBweCIgYnV0IGdvdCAiNjBweCIKK1BB
U1MgQW5pbWF0aW9uIHVzaW5nIGNxbWF4IHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFp
bmVyIHNpemUKIAo=
</data>
<flag name="commit-queue"
          id="489363"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460256</attachid>
            <date>2022-06-15 11:49:23 -0700</date>
            <delta_ts>2022-06-15 13:00:06 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-241546-20220615214921.patch</filename>
            <type>text/plain</type>
            <size>12721</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">RnJvbSAxZWRmNjBjZDgwMmE1ZmIyYTI3ZWJjZGUxYTMxOGM0NTBkNzIzODVjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnR0aSBLb2l2aXN0byA8YW50dGlAYXBwbGUuY29tPgpEYXRl
OiBNb24sIDEzIEp1biAyMDIyIDE1OjQ5OjU3ICswMzAwClN1YmplY3Q6IFtQQVRDSF0gW0NTUyBD
b250YWluZXIgUXVlcmllc10gSW52YWxpZGF0ZSBhbmltYXRpb24ga2V5ZnJhbWVzIHVzaW5nCiBj
b250YWluZXIgdW5pdHMgb24gd2hlbiBjb250YWluZXIgc2l6ZSBjaGFuZ2VzCiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQxNTQ2CgpSZXZpZXdlZCBieSBBbnRvaW5l
IFF1aW50LgoKQ29udGFpbmVyIHNpemUgY2hhbmdlIGFsc28gY2hhbmdlcyB0aGUgaW50ZXJwcmV0
YXRpb24gb2YgY29udGFpbmVyIHVuaXRzIHVzZWQgaW4ga2V5ZnJhbWVzLgoKKiBMYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY29udGFpbi9jb250YWlu
ZXItcXVlcmllcy9jb250YWluZXItdW5pdHMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dDoKKiBTb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHA6CihXZWJDb3JlOjpFbGVtZW50OjppbnZhbGlkYXRl
Rm9yUXVlcnlDb250YWluZXJTaXplQ2hhbmdlKToKKFdlYkNvcmU6OkVsZW1lbnQ6Om5lZWRzVXBk
YXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSBjb25zdCk6CihXZWJDb3JlOjpFbGVtZW50
OjpjbGVhck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSk6CihXZWJDb3Jl
OjpFbGVtZW50OjppbnZhbGlkYXRlRm9yUXVlcnlDb250YWluZXJDaGFuZ2UpOiBEZWxldGVkLgoK
QWRkIGEgbmV3IGJpdCB0aGF0IHRlbGxzIHdoZW4gYSBjb250YWluZXIgaGFzIGJlZW4gcmVzaXpl
ZC4KCiogU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaDoKKiBTb3VyY2UvV2ViQ29yZS9kb20v
Tm9kZS5oOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3Bw
OgooV2ViQ29yZTo6S2V5ZnJhbWVMaXN0Ojp1c2VzQ29udGFpbmVyVW5pdHMgY29uc3QpOgoKQ2hl
Y2sgZm9yIGNvbnRhaW5lciB1bml0IHVzZS4KCiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL0tleWZyYW1lTGlzdC5oOgoqIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3Bw
OgooV2ViQ29yZTo6U3R5bGU6OlNjb3BlOjp1cGRhdGVRdWVyeUNvbnRhaW5lclN0YXRlKToKKiBT
b3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHA6CihXZWJDb3JlOjpTdHls
ZTo6VHJlZVJlc29sdmVyOjpjcmVhdGVBbmltYXRlZEVsZW1lbnRVcGRhdGUpOgoKSW52YWxpZGF0
ZSB0aGUga2V5ZnJhbWVzIGlmIG5lZWRlZCB3aGVuIGNvbXB1dGluZyB0aGUgc3R5bGUuCgooV2Vi
Q29yZTo6U3R5bGU6OlRyZWVSZXNvbHZlcjo6cHVzaFBhcmVudCk6CgpUcmFjayBpZiB0aGUgc3Vi
dHJlZSBpcyB3aXRoaW5nIGEgcmVzaXplZCBjb250YWluZXIuCgoqIFNvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlVHJlZVJlc29sdmVyLmg6CiogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxl
LmNwcDoKKFdlYkNvcmU6OlN0eWxlYWJsZTo6cXVlcnlDb250YWluZXJEaWRDaGFuZ2UgY29uc3Qp
OgoqIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5oOgotLS0KIFNvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmNwcCAgICAgICAgICAgICAgICAgICAgfCAxMyArKysrKysrKysrKystCiBT
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKysr
Ky0KIFNvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAg
NSArKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlzdC5jcHAg
ICB8IDEwICsrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9LZXlmcmFt
ZUxpc3QuaCAgICAgfCAgMiArKwogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTY29wZS5jcHAg
ICAgICAgICAgICAgICB8ICAyICstCiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNv
bHZlci5jcHAgICAgICAgIHwgIDkgKysrKysrKystCiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZVRyZWVSZXNvbHZlci5oICAgICAgICAgIHwgIDMgKystCiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZWFibGUuY3BwICAgICAgICAgICAgICAgIHwgMTUgKysrKysrKysrKysrKysrCiBTb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuaCAgICAgICAgICAgICAgICAgIHwgIDIgKysKIC4uLi9j
b250YWluZXItdW5pdHMtYW5pbWF0aW9uLWV4cGVjdGVkLnR4dCAgICAgICAgfCAxMiArKysrKyst
LS0tLS0KIDExIGZpbGVzIGNoYW5nZWQsIDY1IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCA1MDlhODlhNjU2YmEuLjMwOTI0OTQzMjJiYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtMjI2NSwxMCArMjI2NSwyMSBAQCB2b2lkIEVsZW1l
bnQ6OmludmFsaWRhdGVTdHlsZUZvclN1YnRyZWVJbnRlcm5hbCgpCiAgICAgTm9kZTo6aW52YWxp
ZGF0ZVN0eWxlKFN0eWxlOjpWYWxpZGl0eTo6U3VidHJlZUludmFsaWQpOwogfQogCi12b2lkIEVs
ZW1lbnQ6OmludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lckNoYW5nZSgpCit2b2lkIEVsZW1lbnQ6
OmludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lclNpemVDaGFuZ2UoKQogewogICAgIC8vIEZJWE1F
OiBJZGVhbGx5IHdlIHdvdWxkIGp1c3QgcmVjb21wdXRlIHRoaW5ncyB0aGF0IGFyZSBhY3R1YWxs
eSBhZmZlY3RlZCBieSBjb250YWluZXJzIHF1ZXJpZXMgd2l0aGluIHRoZSBzdWJ0cmVlLgogICAg
IE5vZGU6OmludmFsaWRhdGVTdHlsZShTdHlsZTo6VmFsaWRpdHk6OlN1YnRyZWVJbnZhbGlkKTsK
KyAgICBzZXROb2RlRmxhZyhOb2RlRmxhZzo6TmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVu
ZGVudFN0eWxlKTsKK30KKworYm9vbCBFbGVtZW50OjpuZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVy
RGVwZW5kZW50U3R5bGUoKSBjb25zdAoreworICAgIHJldHVybiBoYXNOb2RlRmxhZyhOb2RlRmxh
Zzo6TmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0eWxlKTsKK30KKwordm9pZCBF
bGVtZW50OjpjbGVhck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSgpCit7
CisgICAgY2xlYXJOb2RlRmxhZyhOb2RlRmxhZzo6TmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRl
cGVuZGVudFN0eWxlKTsKIH0KIAogdm9pZCBFbGVtZW50OjppbnZhbGlkYXRlRXZlbnRMaXN0ZW5l
clJlZ2lvbnMoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggMWMxMWJiYzU4NmI2Li5kMTk1MmU3N2Q3
OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtNjM5LDcgKzYzOSwxMCBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIGludmFsaWRhdGVTdHlsZUludGVybmFsKCk7CiAgICAgdm9pZCBpbnZhbGlkYXRlU3R5
bGVGb3JTdWJ0cmVlSW50ZXJuYWwoKTsKLSAgICB2b2lkIGludmFsaWRhdGVGb3JRdWVyeUNvbnRh
aW5lckNoYW5nZSgpOworICAgIHZvaWQgaW52YWxpZGF0ZUZvclF1ZXJ5Q29udGFpbmVyU2l6ZUNo
YW5nZSgpOworCisgICAgYm9vbCBuZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVyRGVwZW5kZW50U3R5
bGUoKSBjb25zdDsKKyAgICB2b2lkIGNsZWFyTmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVu
ZGVudFN0eWxlKCk7CiAKICAgICB2b2lkIGludmFsaWRhdGVFdmVudExpc3RlbmVyUmVnaW9ucygp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oIGIvU291cmNlL1dlYkNv
cmUvZG9tL05vZGUuaAppbmRleCA0NThjNTQ3YjA4NDMuLjU2OGY4MGY2ZDMwMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZS5oCkBAIC01ODIsOSArNTgyLDEwIEBAIHByb3RlY3RlZDoKICAgICAgICAgSXNDb21wdXRlZFN0
eWxlSW52YWxpZEZsYWcgPSAxIDw8IDI1LAogICAgICAgICBIYXNTaGFkb3dSb290Q29udGFpbmlu
Z1Nsb3RzID0gMSA8PCAyNiwKICAgICAgICAgSXNJblRvcExheWVyID0gMSA8PCAyNywKLSAgICAg
ICAgTmVlZHNTVkdSZW5kZXJlclVwZGF0ZSA9IDEgPDwgMjgKKyAgICAgICAgTmVlZHNTVkdSZW5k
ZXJlclVwZGF0ZSA9IDEgPDwgMjgsCisgICAgICAgIE5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJE
ZXBlbmRlbnRTdHlsZSA9IDEgPDwgMjksCiAKLSAgICAgICAgLy8gQml0cyAyOS0zMSBhcmUgZnJl
ZS4KKyAgICAgICAgLy8gQml0cyAzMC0zMSBhcmUgZnJlZS4KICAgICB9OwogCiAgICAgZW51bSBj
bGFzcyBUYWJJbmRleFN0YXRlIDogdWludDhfdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9LZXlmcmFtZUxpc3QuY3BwCmluZGV4IDUzNTY4YzU4YmJlZi4uZWQxMWZjMGQx
YjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVM
aXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvS2V5ZnJhbWVMaXN0
LmNwcApAQCAtMjE3LDQgKzIxNywxNCBAQCBib29sIEtleWZyYW1lTGlzdDo6Y29udGFpbnNBbmlt
YXRhYmxlUHJvcGVydHkoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0KIAorYm9vbCBLZXlm
cmFtZUxpc3Q6OnVzZXNDb250YWluZXJVbml0cygpIGNvbnN0Cit7CisgICAgZm9yIChhdXRvJiBr
ZXlmcmFtZSA6IG1fa2V5ZnJhbWVzKSB7CisgICAgICAgIGlmIChrZXlmcmFtZS5zdHlsZSgpLT51
c2VzQ29udGFpbmVyVW5pdHMoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAg
ICByZXR1cm4gZmFsc2U7Cit9CisKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlzdC5oIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tleWZyYW1lTGlzdC5oCmluZGV4IDE0MTdjZDdhOWFk
Mi4uYWQ4Nzc5NmFkYzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvS2V5ZnJhbWVMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0tl
eWZyYW1lTGlzdC5oCkBAIC0xMDUsNiArMTA1LDggQEAgcHVibGljOgogICAgIGF1dG8gYmVnaW4o
KSBjb25zdCB7IHJldHVybiBtX2tleWZyYW1lcy5iZWdpbigpOyB9CiAgICAgYXV0byBlbmQoKSBj
b25zdCB7IHJldHVybiBtX2tleWZyYW1lcy5lbmQoKTsgfQogCisgICAgYm9vbCB1c2VzQ29udGFp
bmVyVW5pdHMoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBBdG9tU3RyaW5nIG1fYW5pbWF0aW9u
TmFtZTsKICAgICBWZWN0b3I8S2V5ZnJhbWVWYWx1ZT4gbV9rZXlmcmFtZXM7IC8vIEtlcHQgc29y
dGVkIGJ5IGtleS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVTY29wZS5jcHAKaW5kZXggYWQ0OWExMjY5
OGRiLi5iYjFiNDFkZWU5NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
U2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlU2NvcGUuY3BwCkBAIC04
MjksNyArODI5LDcgQEAgYm9vbCBTY29wZTo6dXBkYXRlUXVlcnlDb250YWluZXJTdGF0ZShRdWVy
eUNvbnRhaW5lclVwZGF0ZUNvbnRleHQmIGNvbnRleHQpCiAgICAgfQogCiAgICAgZm9yIChhdXRv
KiB0b0ludmFsaWRhdGUgOiBjb250YWluZXJzVG9JbnZhbGlkYXRlKQotICAgICAgICB0b0ludmFs
aWRhdGUtPmludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lckNoYW5nZSgpOworICAgICAgICB0b0lu
dmFsaWRhdGUtPmludmFsaWRhdGVGb3JRdWVyeUNvbnRhaW5lclNpemVDaGFuZ2UoKTsKIAogICAg
IHJldHVybiAhY29udGFpbmVyc1RvSW52YWxpZGF0ZS5pc0VtcHR5KCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAKaW5kZXggYmI3YmI2YjM5NTM3Li44YzA2
MWM0ODc1YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZVRyZWVSZXNvbHZlci5jcHAK
QEAgLTU3Nyw3ICs1NzcsOSBAQCBFbGVtZW50VXBkYXRlIFRyZWVSZXNvbHZlcjo6Y3JlYXRlQW5p
bWF0ZWRFbGVtZW50VXBkYXRlKHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdAogICAgIGF1dG8mIGRv
Y3VtZW50ID0gZWxlbWVudC5kb2N1bWVudCgpOwogICAgIGF1dG8qIG9sZFN0eWxlID0gZWxlbWVu
dC5yZW5kZXJPckRpc3BsYXlDb250ZW50c1N0eWxlKHN0eWxlYWJsZS5wc2V1ZG9JZCk7CiAKLSAg
ICBPcHRpb25TZXQ8QW5pbWF0aW9uSW1wYWN0PiBhbmltYXRpb25JbXBhY3Q7CisgICAgLy8gRklY
TUU6IFNvbWV0aGluZyBsaWtlIHRoaXMgaXMgYWxzbyBuZWVkZWQgZm9yIHZpZXdwb3J0IHVuaXRz
LgorICAgIGlmIChvbGRTdHlsZSAmJiBwYXJlbnQoKS5uZWVkc1VwZGF0ZVF1ZXJ5Q29udGFpbmVy
RGVwZW5kZW50U3R5bGUpCisgICAgICAgIHN0eWxlYWJsZS5xdWVyeUNvbnRhaW5lckRpZENoYW5n
ZSgpOwogCiAgICAgLy8gRmlyc3QsIHdlIG5lZWQgdG8gbWFrZSBzdXJlIHRoYXQgYW55IG5ldyBD
U1MgYW5pbWF0aW9uIG9jY3VyaW5nIG9uIHRoaXMgZWxlbWVudCBoYXMgYSBtYXRjaGluZyBXZWJB
bmltYXRpb24KICAgICAvLyBvbiB0aGUgZG9jdW1lbnQgdGltZWxpbmUuCkBAIC01OTIsNiArNTk0
LDggQEAgRWxlbWVudFVwZGF0ZSBUcmVlUmVzb2x2ZXI6OmNyZWF0ZUFuaW1hdGVkRWxlbWVudFVw
ZGF0ZShzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3QKICAgICAgICAgICAgIHN0eWxlYWJsZS51cGRh
dGVDU1NBbmltYXRpb25zKG9sZFN0eWxlLCAqbmV3U3R5bGUsIHJlc29sdXRpb25Db250ZXh0KTsK
ICAgICB9CiAKKyAgICBPcHRpb25TZXQ8QW5pbWF0aW9uSW1wYWN0PiBhbmltYXRpb25JbXBhY3Q7
CisKICAgICAvLyBOb3cgd2UgY2FuIHVwZGF0ZSBhbGwgV2ViIGFuaW1hdGlvbnMsIHdoaWNoIHdp
bGwgaW5jbHVkZSBDU1MgQW5pbWF0aW9ucyBhcyB3ZWxsCiAgICAgLy8gYXMgYW5pbWF0aW9ucyBj
cmVhdGVkIHZpYSB0aGUgSlMgQVBJLgogICAgIGlmIChzdHlsZWFibGUuaGFzS2V5ZnJhbWVFZmZl
Y3RzKCkpIHsKQEAgLTY0MCw2ICs2NDQsOSBAQCB2b2lkIFRyZWVSZXNvbHZlcjo6cHVzaFBhcmVu
dChFbGVtZW50JiBlbGVtZW50LCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUsIENoYW5nZQogICAg
ICAgICBwYXJlbnQuZGlkUHVzaFNjb3BlID0gdHJ1ZTsKICAgICB9CiAKKyAgICBwYXJlbnQubmVl
ZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0eWxlID0gbV9wYXJlbnRTdGFjay5sYXN0
KCkubmVlZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0eWxlIHx8IGVsZW1lbnQubmVl
ZHNVcGRhdGVRdWVyeUNvbnRhaW5lckRlcGVuZGVudFN0eWxlKCk7CisgICAgZWxlbWVudC5jbGVh
ck5lZWRzVXBkYXRlUXVlcnlDb250YWluZXJEZXBlbmRlbnRTdHlsZSgpOworCiAgICAgbV9wYXJl
bnRTdGFjay5hcHBlbmQoV1RGTW92ZShwYXJlbnQpKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlVHJlZVJlc29sdmVyLmgKaW5kZXggNWFmOWZiZjkyNzBkLi5hY2YwMGE0OGVjYmQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVlUmVzb2x2ZXIuaApAQCAtNjksNyArNjksNyBA
QCBwcml2YXRlOgogICAgIGVudW0gY2xhc3MgRGVzY2VuZGFudHNUb1Jlc29sdmUgOiB1aW50OF90
IHsgTm9uZSwgQ2hpbGRyZW5XaXRoRXhwbGljaXRJbmhlcml0LCBDaGlsZHJlbiwgQWxsIH07CiAg
ICAgc3RkOjpwYWlyPEVsZW1lbnRVcGRhdGUsIERlc2NlbmRhbnRzVG9SZXNvbHZlPiByZXNvbHZl
RWxlbWVudChFbGVtZW50JiwgUmVzb2x1dGlvblR5cGUpOwogCi0gICAgc3RhdGljIEVsZW1lbnRV
cGRhdGUgY3JlYXRlQW5pbWF0ZWRFbGVtZW50VXBkYXRlKHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJT
dHlsZT4sIGNvbnN0IFN0eWxlYWJsZSYsIENoYW5nZSwgY29uc3QgUmVzb2x1dGlvbkNvbnRleHQm
KTsKKyAgICBFbGVtZW50VXBkYXRlIGNyZWF0ZUFuaW1hdGVkRWxlbWVudFVwZGF0ZShzdGQ6OnVu
aXF1ZV9wdHI8UmVuZGVyU3R5bGU+LCBjb25zdCBTdHlsZWFibGUmLCBDaGFuZ2UsIGNvbnN0IFJl
c29sdXRpb25Db250ZXh0Jik7CiAgICAgc3RkOjpvcHRpb25hbDxFbGVtZW50VXBkYXRlPiByZXNv
bHZlUHNldWRvRWxlbWVudChFbGVtZW50JiwgUHNldWRvSWQsIGNvbnN0IEVsZW1lbnRVcGRhdGUm
KTsKICAgICBzdGQ6Om9wdGlvbmFsPEVsZW1lbnRVcGRhdGU+IHJlc29sdmVBbmNlc3RvclBzZXVk
b0VsZW1lbnQoRWxlbWVudCYsIFBzZXVkb0lkLCBjb25zdCBFbGVtZW50VXBkYXRlJik7CiAgICAg
c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiByZXNvbHZlQW5jZXN0b3JGaXJzdExpbmVQc2V1
ZG9FbGVtZW50KEVsZW1lbnQmLCBjb25zdCBFbGVtZW50VXBkYXRlJik7CkBAIC05NSw2ICs5NSw3
IEBAIHByaXZhdGU6CiAgICAgICAgIERlc2NlbmRhbnRzVG9SZXNvbHZlIGRlc2NlbmRhbnRzVG9S
ZXNvbHZlIHsgRGVzY2VuZGFudHNUb1Jlc29sdmU6Ok5vbmUgfTsKICAgICAgICAgYm9vbCBkaWRQ
dXNoU2NvcGUgeyBmYWxzZSB9OwogICAgICAgICBib29sIHJlc29sdmVkRmlyc3RMaW5lQW5kTGV0
dGVyQ2hpbGQgeyBmYWxzZSB9OworICAgICAgICBib29sIG5lZWRzVXBkYXRlUXVlcnlDb250YWlu
ZXJEZXBlbmRlbnRTdHlsZSB7IGZhbHNlIH07CiAKICAgICAgICAgUGFyZW50KERvY3VtZW50Jik7
CiAgICAgICAgIFBhcmVudChFbGVtZW50JiwgY29uc3QgUmVuZGVyU3R5bGUmLCBDaGFuZ2UsIERl
c2NlbmRhbnRzVG9SZXNvbHZlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlYWJsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3BwCmluZGV4IGM0
NDQxMmFkOTRhNS4uZDQ5MTZkY2FkMTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZWFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlYWJsZS5jcHAK
QEAgLTYyNSw0ICs2MjUsMTkgQEAgdm9pZCBTdHlsZWFibGU6OnVwZGF0ZUNTU1RyYW5zaXRpb25z
KGNvbnN0IFJlbmRlclN0eWxlJiBjdXJyZW50U3R5bGUsIGNvbnN0IFJlbmQKICAgICAgICAgdXBk
YXRlQ1NTVHJhbnNpdGlvbnNGb3JTdHlsZWFibGVBbmRQcm9wZXJ0eSgqdGhpcywgcHJvcGVydHks
IGN1cnJlbnRTdHlsZSwgbmV3U3R5bGUsIGdlbmVyYXRpb25UaW1lKTsKIH0KIAordm9pZCBTdHls
ZWFibGU6OnF1ZXJ5Q29udGFpbmVyRGlkQ2hhbmdlKCkgY29uc3QKK3sKKyAgICBhdXRvKiBhbmlt
YXRpb25zID0gdGhpcy0+YW5pbWF0aW9ucygpOworICAgIGlmICghYW5pbWF0aW9ucykKKyAgICAg
ICAgcmV0dXJuOworICAgIGZvciAoYXV0byBhbmltYXRpb24gOiAqYW5pbWF0aW9ucykgeworICAg
ICAgICBhdXRvKiBjc3NBbmltYXRpb24gPSBkeW5hbWljRG93bmNhc3Q8Q1NTQW5pbWF0aW9uPihh
bmltYXRpb24uZ2V0KCkpOworICAgICAgICBpZiAoIWNzc0FuaW1hdGlvbikKKyAgICAgICAgICAg
IGNvbnRpbnVlOworICAgICAgICBhdXRvKiBrZXlmcmFtZUVmZmVjdCA9IGR5bmFtaWNEb3duY2Fz
dDxLZXlmcmFtZUVmZmVjdD4oY3NzQW5pbWF0aW9uLT5lZmZlY3QoKSk7CisgICAgICAgIGlmIChr
ZXlmcmFtZUVmZmVjdCAmJiBrZXlmcmFtZUVmZmVjdC0+YmxlbmRpbmdLZXlmcmFtZXMoKS51c2Vz
Q29udGFpbmVyVW5pdHMoKSkKKyAgICAgICAgICAgIGNzc0FuaW1hdGlvbi0+a2V5ZnJhbWVzUnVs
ZURpZENoYW5nZSgpOworICAgIH0KK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZWFibGUuaAppbmRleCAyNTQwNThmZDliNzYuLmE5NTQwOGEyNTBhOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVhYmxlLmgKQEAgLTE2MSw2ICsxNjEsOCBAQCBzdHJ1Y3QgU3R5bGVhYmxl
IHsKICAgICAgICAgZWxlbWVudC5rZXlmcmFtZXNSdWxlRGlkQ2hhbmdlKHBzZXVkb0lkKTsKICAg
ICB9CiAKKyAgICB2b2lkIHF1ZXJ5Q29udGFpbmVyRGlkQ2hhbmdlKCkgY29uc3Q7CisKICAgICBi
b29sIGFuaW1hdGlvbkxpc3RDb250YWluc05ld2x5VmFsaWRBbmltYXRpb24oY29uc3QgQW5pbWF0
aW9uTGlzdCYpIGNvbnN0OwogCiAgICAgdm9pZCBlbGVtZW50V2FzUmVtb3ZlZCgpIGNvbnN0Owpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFuaW1hdGlv
bi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY29udGFpbi9jb250YWluZXItcXVlcmllcy9jb250YWluZXItdW5pdHMtYW5p
bWF0aW9uLWV4cGVjdGVkLnR4dAppbmRleCAyOWQxOTdhYTEyMmYuLjEzMjNjMzY0Mzc1YyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFuaW1hdGlvbi1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvY29udGFpbmVyLXVuaXRzLWFu
aW1hdGlvbi1leHBlY3RlZC50eHQKQEAgLTEsMTQgKzEsMTQgQEAKIAogUEFTUyBBbmltYXRpb24g
dXNpbmcgY3F3IHVuaXQKLUZBSUwgQW5pbWF0aW9uIHVzaW5nIGNxdyB1bml0IHJlc3BvbmRzIHRv
IGNoYW5naW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICI5MHB4IiBi
dXQgZ290ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNpbmcgY3F3IHVuaXQgcmVzcG9uZHMgdG8g
Y2hhbmdpbmcgY29udGFpbmVyIHNpemUKIFBBU1MgQW5pbWF0aW9uIHVzaW5nIGNxaCB1bml0Ci1G
QUlMIEFuaW1hdGlvbiB1c2luZyBjcWggdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWlu
ZXIgc2l6ZSBhc3NlcnRfZXF1YWxzOiBleHBlY3RlZCAiOTBweCIgYnV0IGdvdCAiNjBweCIKK1BB
U1MgQW5pbWF0aW9uIHVzaW5nIGNxaCB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5l
ciBzaXplCiBQQVNTIEFuaW1hdGlvbiB1c2luZyBjcWkgdW5pdAotRkFJTCBBbmltYXRpb24gdXNp
bmcgY3FpIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdpbmcgY29udGFpbmVyIHNpemUgYXNzZXJ0X2Vx
dWFsczogZXhwZWN0ZWQgIjkwcHgiIGJ1dCBnb3QgIjYwcHgiCitQQVNTIEFuaW1hdGlvbiB1c2lu
ZyBjcWkgdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWluZXIgc2l6ZQogUEFTUyBBbmlt
YXRpb24gdXNpbmcgY3FiIHVuaXQKLUZBSUwgQW5pbWF0aW9uIHVzaW5nIGNxYiB1bml0IHJlc3Bv
bmRzIHRvIGNoYW5naW5nIGNvbnRhaW5lciBzaXplIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICI5
MHB4IiBidXQgZ290ICI2MHB4IgorUEFTUyBBbmltYXRpb24gdXNpbmcgY3FiIHVuaXQgcmVzcG9u
ZHMgdG8gY2hhbmdpbmcgY29udGFpbmVyIHNpemUKIFBBU1MgQW5pbWF0aW9uIHVzaW5nIGNxbWlu
IHVuaXQKLUZBSUwgQW5pbWF0aW9uIHVzaW5nIGNxbWluIHVuaXQgcmVzcG9uZHMgdG8gY2hhbmdp
bmcgY29udGFpbmVyIHNpemUgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIjkwcHgiIGJ1dCBnb3Qg
IjYwcHgiCitQQVNTIEFuaW1hdGlvbiB1c2luZyBjcW1pbiB1bml0IHJlc3BvbmRzIHRvIGNoYW5n
aW5nIGNvbnRhaW5lciBzaXplCiBQQVNTIEFuaW1hdGlvbiB1c2luZyBjcW1heCB1bml0Ci1GQUlM
IEFuaW1hdGlvbiB1c2luZyBjcW1heCB1bml0IHJlc3BvbmRzIHRvIGNoYW5naW5nIGNvbnRhaW5l
ciBzaXplIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkICI5MHB4IiBidXQgZ290ICI2MHB4IgorUEFT
UyBBbmltYXRpb24gdXNpbmcgY3FtYXggdW5pdCByZXNwb25kcyB0byBjaGFuZ2luZyBjb250YWlu
ZXIgc2l6ZQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>