<?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>235712</bug_id>
          
          <creation_ts>2022-01-27 06:52:22 -0800</creation_ts>
          <short_desc>[CSS Container Queries] Basic parsing support for query syntax</short_desc>
          <delta_ts>2022-01-27 09:51:27 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>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>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1834503</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-01-27 06:52:22 -0800</bug_when>
    <thetext>https://drafts.csswg.org/css-contain-3/#at-ruledef-container</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1834508</commentid>
    <comment_count>1</comment_count>
      <attachid>450134</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-01-27 07:13:07 -0800</bug_when>
    <thetext>Created attachment 450134
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1834519</commentid>
    <comment_count>2</comment_count>
      <attachid>450134</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-01-27 07:57:57 -0800</bug_when>
    <thetext>Comment on attachment 450134
Patch

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

&gt; Source/WebCore/css/parser/MediaQueryParser.cpp:274
&gt; +            return !equalIgnoringASCIICase(token.value(), &quot;size&quot;);

I suspect this can use the slightly more efficient equalLettersIgnoringASCIICase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1834540</commentid>
    <comment_count>3</comment_count>
      <attachid>450141</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-01-27 08:35:14 -0800</bug_when>
    <thetext>Created attachment 450141
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1834564</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-27 09:50:44 -0800</bug_when>
    <thetext>Committed r288675 (246481@main): &lt;https://commits.webkit.org/246481@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 450141.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1834565</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-27 09:51:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/88138714&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450134</attachid>
            <date>2022-01-27 07:13:07 -0800</date>
            <delta_ts>2022-01-27 08:35:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235712-20220127171306.patch</filename>
            <type>text/plain</type>
            <size>17544</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4NjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWVhNmFlZDFkNjE1NWE3
MThkYjNjOTNjZDFmMTA1YThlNjQ2NWRiNC4uNmUzNzY5NTM1ZDY0NjliYmQ5ZmNlOWU1YzI5Njc2
ZjAwZmExMjZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIyLTAxLTI3ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ1NTIENvbnRhaW5lciBR
dWVyaWVzXSBCYXNpYyBwYXJzaW5nIHN1cHBvcnQgZm9yIHF1ZXJ5IHN5bnRheAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1NzEyCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9kcmFmdHMuY3Nz
d2cub3JnL2Nzcy1jb250YWluLTMvI2F0LXJ1bGVkZWYtY29udGFpbmVyCisKKyAgICAgICAgVXNl
IE1lZGlhUXVlcnlQYXJzZXIgdG8gcGFyc2UgdGhlIHF1ZXJ5IHN5bnRheC4gTm90ZSB0aGF0IGJl
Y2F1c2UgdGhlIGxpbWl0YXRpb25zCisgICAgICAgIG9mIE1lZGlhUXVlcnlQYXJzZXIgb25seSBz
aW1wbGUgbm9uLW5lc3RlZCBxdWVyaWVzIGNhbiBiZSBwYXJzZWQgZm9yIG5vdy4KKworICAgICAg
ICAqIGNzcy9TdHlsZVJ1bGUuaDoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckltcGwu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6ZmlsdGVyUHJvcGVydGllcyk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NQYXJzZXJJbXBsOjpjb25zdW1lQXRSdWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNT
U1BhcnNlckltcGw6OmNvbnN1bWVDb250YWluZXJSdWxlKToKKyAgICAgICAgKiBjc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVDb250YWlu
ZXJOYW1lKToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVT
aW5nbGVDb250YWluZXJOYW1lKToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VySGVscGVycy5oOgorICAgICAgICAqIGNzcy9wYXJzZXIvTWVkaWFRdWVyeVBhcnNlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVF1ZXJ5UGFyc2VyOjpwYXJzZUNvbnRhaW5lclF1ZXJ5
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUXVlcnlQYXJzZXI6Ok1lZGlhUXVlcnlQYXJzZXIp
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFRdWVyeVBhcnNlcjo6cmVhZENvbnRhaW5lclF1ZXJ5
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUXVlcnlQYXJzZXI6OmhhbmRsZUJsb2Nrcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVF1ZXJ5UGFyc2VyOjpwcm9jZXNzVG9rZW4pOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFRdWVyeVBhcnNlcjo6cGFyc2VJbnRlcm5hbCk6CisgICAgICAgICog
Y3NzL3BhcnNlci9NZWRpYVF1ZXJ5UGFyc2VyLmg6CisKIDIwMjItMDEtMjYgIEFudHRpIEtvaXZp
c3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIEFTU0VSVElPTiBGQUlMRUQ6ICFoYXNQ
ZW5kaW5nU2hlZXRzKCkgdW5kZXIgV2ViQ29yZTo6U3R5bGU6OlNjb3BlOjp+U2NvcGUoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUnVsZS5oCmluZGV4IGNkMTVmODdhMzI1ZTUzZTIwZGU3ZmEyODIwZTgzZDBmYTIy
MDcwMTMuLjVlMWMwN2I1MzYxNmJhMTg3MDMwYzY3ZjNlYjk0MmY2NDNiMjNiMWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVSdWxlLmgKQEAgLTMxNCw3ICszMTQsMTAgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnZh
cmlhbnQ8Q2FzY2FkZUxheWVyTmFtZSwgVmVjdG9yPENhc2NhZGVMYXllck5hbWU+PiBtX25hbWVW
YXJpYW50OwogfTsKIAotc3RydWN0IENvbnRhaW5lclF1ZXJ5IHsgfTsKK3N0cnVjdCBDb250YWlu
ZXJRdWVyeSB7CisgICAgQXRvbVN0cmluZyBjb250YWluZXJOYW1lOworICAgIFJlZjxNZWRpYVF1
ZXJ5U2V0PiBxdWVyeTsKK307CiAKIGNsYXNzIFN0eWxlUnVsZUNvbnRhaW5lciBmaW5hbCA6IHB1
YmxpYyBTdHlsZVJ1bGVHcm91cCB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQYXJzZXJJbXBsLmNwcAppbmRleCA5ZDFhNmU5MDAxYjc3OTEyNzg1MWUyNDc3ZWFkZjU3
NTZlNTMxZjc3Li42MGQ2ZDA1MTllZTY0MzkwNjhjOWU4N2Y5M2U3MjczZjUyNmQ2OTE4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHAKQEAgLTEyMywxMiAr
MTIzLDYgQEAgc3RhdGljIGlubGluZSB2b2lkIGZpbHRlclByb3BlcnRpZXMoYm9vbCBpbXBvcnRh
bnQsIGNvbnN0IFBhcnNlZFByb3BlcnR5VmVjdG9yJgogICAgICAgICAgICAgb3V0cHV0Wy0tdW51
c2VkRW50cmllc10gPSBwcm9wZXJ0eTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9
Ci0gICAgICAgIAotICAgICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdlIHdvbid0IHN1cHBvcnQg
QGFwcGx5IHlldC4KLSAgICAgICAgLyplbHNlIGlmIChwcm9wZXJ0eS5pZCgpID09IENTU1Byb3Bl
cnR5QXBwbHlBdFJ1bGUpIHsKLSAgICAgICAgIC8vIEZJWE1FOiBEbyB3ZSBuZWVkIHRvIGRvIGFu
eXRoaW5nIGhlcmU/Ci0gICAgICAgICB9ICovCi0gICAgICAgIAogCiAgICAgICAgIGlmIChzZWVu
UHJvcGVydGllcy50ZXN0KHByb3BlcnR5SURJbmRleCkpCiAgICAgICAgICAgICBjb250aW51ZTsK
QEAgLTQzMCwxMSArNDI0LDYgQEAgUmVmUHRyPFN0eWxlUnVsZUJhc2U+IENTU1BhcnNlckltcGw6
OmNvbnN1bWVBdFJ1bGUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UsIEEKICAgICAgICAgICAg
IHJldHVybiBjb25zdW1lTmFtZXNwYWNlUnVsZShwcmVsdWRlKTsKICAgICAgICAgaWYgKGFsbG93
ZWRSdWxlcyA8PSBSZWd1bGFyUnVsZXMgJiYgaWQgPT0gQ1NTQXRSdWxlTGF5ZXIpCiAgICAgICAg
ICAgICByZXR1cm4gY29uc3VtZUxheWVyUnVsZShwcmVsdWRlLCB7IH0pOwotICAgICAgICAvLyBG
SVhNRS1ORVdQQVJTRVI6IFN1cHBvcnQgImFwcGx5IgotICAgICAgICAvKmlmIChhbGxvd2VkUnVs
ZXMgPT0gQXBwbHlSdWxlcyAmJiBpZCA9PSBDU1NBdFJ1bGVBcHBseSkgewotICAgICAgICAgICAg
Y29uc3VtZUFwcGx5UnVsZShwcmVsdWRlKTsKLSAgICAgICAgICAgIHJldHVybiBudWxscHRyOyAv
LyBjb25zdW1lQXBwbHlSdWxlIGp1c3QgdXBkYXRlcyBtX3BhcnNlZFByb3BlcnRpZXMKLSAgICAg
ICAgfSovCiAgICAgICAgIHJldHVybiBudWxscHRyOyAvLyBQYXJzZSBlcnJvciwgdW5yZWNvZ25p
c2VkIGF0LXJ1bGUgd2l0aG91dCBibG9jawogICAgIH0KIApAQCAtODYyLDggKzg1MSwyNiBAQCBS
ZWZQdHI8U3R5bGVSdWxlQ29udGFpbmVyPiBDU1NQYXJzZXJJbXBsOjpjb25zdW1lQ29udGFpbmVy
UnVsZShDU1NQYXJzZXJUb2tlblJhbgogICAgIGlmICghbV9jb250ZXh0LmNvbnRhaW5lclF1ZXJp
ZXNFbmFibGVkKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAorICAgIGlmIChwcmVsdWRlLmF0
RW5kKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgYXV0byBjb25zdW1lTmFtZSA9
IFsmXSgpIC0+IEF0b21TdHJpbmcgeworICAgICAgICBpZiAocHJlbHVkZS5wZWVrKCkudHlwZSgp
ID09IExlZnRQYXJlbnRoZXNpc1Rva2VuIHx8IHByZWx1ZGUucGVlaygpLnR5cGUoKSA9PSBGdW5j
dGlvblRva2VuKQorICAgICAgICAgICAgcmV0dXJuIG51bGxBdG9tKCk7CisgICAgICAgIGF1dG8g
bmFtZVZhbHVlID0gQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lU2luZ2xlQ29udGFp
bmVyTmFtZShwcmVsdWRlKTsKKyAgICAgICAgaWYgKCFuYW1lVmFsdWUpCisgICAgICAgICAgICBy
ZXR1cm4gbnVsbEF0b20oKTsKKyAgICAgICAgcmV0dXJuIG5hbWVWYWx1ZS0+c3RyaW5nVmFsdWUo
KTsKKyAgICB9OworCisgICAgYXV0byBuYW1lID0gY29uc3VtZU5hbWUoKTsKKworICAgIGF1dG8g
cXVlcnkgPSBNZWRpYVF1ZXJ5UGFyc2VyOjpwYXJzZUNvbnRhaW5lclF1ZXJ5KHByZWx1ZGUsIE1l
ZGlhUXVlcnlQYXJzZXJDb250ZXh0KG1fY29udGV4dCkpOworICAgIGlmICghcXVlcnkpCisgICAg
ICAgIHJldHVybiBudWxscHRyOworCiAgICAgaWYgKG1fZGVmZXJyZWRQYXJzZXIpCi0gICAgICAg
IHJldHVybiBTdHlsZVJ1bGVDb250YWluZXI6OmNyZWF0ZSh7IH0sIG1ha2VVbmlxdWU8RGVmZXJy
ZWRTdHlsZUdyb3VwUnVsZUxpc3Q+KGJsb2NrLCAqbV9kZWZlcnJlZFBhcnNlcikpOworICAgICAg
ICByZXR1cm4gU3R5bGVSdWxlQ29udGFpbmVyOjpjcmVhdGUoeyBuYW1lLCBxdWVyeS5yZWxlYXNl
Tm9uTnVsbCgpIH0sIG1ha2VVbmlxdWU8RGVmZXJyZWRTdHlsZUdyb3VwUnVsZUxpc3Q+KGJsb2Nr
LCAqbV9kZWZlcnJlZFBhcnNlcikpOwogCiAgICAgVmVjdG9yPFJlZlB0cjxTdHlsZVJ1bGVCYXNl
Pj4gcnVsZXM7CiAKQEAgLTg4MSw3ICs4ODgsNyBAQCBSZWZQdHI8U3R5bGVSdWxlQ29udGFpbmVy
PiBDU1NQYXJzZXJJbXBsOjpjb25zdW1lQ29udGFpbmVyUnVsZShDU1NQYXJzZXJUb2tlblJhbgog
ICAgIGlmIChtX29ic2VydmVyV3JhcHBlcikKICAgICAgICAgbV9vYnNlcnZlcldyYXBwZXItPm9i
c2VydmVyKCkuZW5kUnVsZUJvZHkobV9vYnNlcnZlcldyYXBwZXItPmVuZE9mZnNldChibG9jaykp
OwogCi0gICAgcmV0dXJuIFN0eWxlUnVsZUNvbnRhaW5lcjo6Y3JlYXRlKHsgfSwgV1RGTW92ZShy
dWxlcykpOworICAgIHJldHVybiBTdHlsZVJ1bGVDb250YWluZXI6OmNyZWF0ZSh7IG5hbWUsIHF1
ZXJ5LnJlbGVhc2VOb25OdWxsKCkgfSwgV1RGTW92ZShydWxlcykpOwogfQogICAgIAogUmVmUHRy
PFN0eWxlUnVsZUtleWZyYW1lPiBDU1NQYXJzZXJJbXBsOjpjb25zdW1lS2V5ZnJhbWVTdHlsZVJ1
bGUoQ1NTUGFyc2VyVG9rZW5SYW5nZSBwcmVsdWRlLCBDU1NQYXJzZXJUb2tlblJhbmdlIGJsb2Nr
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcApp
bmRleCA2NzU3YWJiNzQ2Yzc0MjFlYTc2MDQ1MjAxMTE1NWRjZDQzOTYwMWNmLi5iZmI5YjYxMTU5
MjJlZTZjOWQ1NDc1ZmY4ZmRjMTRhNzE2MzhlNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcApAQCAtMzgwNiwxOSArMzgwNiw5IEBAIHN0
YXRpYyBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVDb250YWluZXJOYW1lKENTU1BhcnNlclRva2Vu
UmFuZ2UmIHJhbmdlKQogICAgIGlmIChyYW5nZS5wZWVrKCkuaWQoKSA9PSBDU1NWYWx1ZU5vbmUp
CiAgICAgICAgIHJldHVybiBjb25zdW1lSWRlbnQocmFuZ2UpOwogCi0gICAgYXV0byBjb25zdW1l
TmFtZSA9IFsmXSgpIC0+IFJlZlB0cjxDU1NWYWx1ZT4gewotICAgICAgICBpZiAocmFuZ2UucGVl
aygpLmlkKCkgPT0gQ1NTVmFsdWVOb25lKQotICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0g
ICAgICAgIGlmIChhdXRvIGlkZW50ID0gY29uc3VtZUN1c3RvbUlkZW50KHJhbmdlKSkKLSAgICAg
ICAgICAgIHJldHVybiBpZGVudDsKLSAgICAgICAgaWYgKGF1dG8gc3RyaW5nID0gY29uc3VtZVN0
cmluZyhyYW5nZSkpCi0gICAgICAgICAgICByZXR1cm4gc3RyaW5nOwotICAgICAgICByZXR1cm4g
bnVsbHB0cjsKLSAgICB9OwotCiAgICAgYXV0byBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVT
cGFjZVNlcGFyYXRlZCgpOwogICAgIGRvIHsKLSAgICAgICAgYXV0byBuYW1lID0gY29uc3VtZU5h
bWUoKTsKKyAgICAgICAgYXV0byBuYW1lID0gY29uc3VtZVNpbmdsZUNvbnRhaW5lck5hbWUocmFu
Z2UpOwogICAgICAgICBpZiAoIW5hbWUpCiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAg
ICAgICAgbGlzdC0+YXBwZW5kKG5hbWUucmVsZWFzZU5vbk51bGwoKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAKaW5k
ZXggZTNmMWE5MjgwNmRhNDAxN2EzYjExZTAzODJhYTJiMTA2YTJkZjk4ZC4uODk4MDlmMTYxMDVm
MDFmMzViNGM2MzM0OWY0MjU2YzUwZmM5OWNjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcApAQCAtNDI3OSw2ICs0
Mjc5LDE3IEBAIEF0b21TdHJpbmcgY29uc3VtZUNvdW50ZXJTdHlsZU5hbWVJblByZWx1ZGUoQ1NT
UGFyc2VyVG9rZW5SYW5nZSYgcHJlbHVkZSkKICAgICByZXR1cm4gaXNQcmVkZWZpbmVkQ291bnRl
clN0eWxlKG5hbWVUb2tlbi5pZCgpKSA/IG5hbWUuY29udmVydFRvQVNDSUlMb3dlcmNhc2VBdG9t
KCkgOiBuYW1lLnRvQXRvbVN0cmluZygpOwogfQogCitSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IGNvbnN1bWVTaW5nbGVDb250YWluZXJOYW1lKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQor
eworICAgIGlmIChyYW5nZS5wZWVrKCkuaWQoKSA9PSBDU1NWYWx1ZU5vbmUpCisgICAgICAgIHJl
dHVybiBudWxscHRyOworICAgIGlmIChhdXRvIGlkZW50ID0gY29uc3VtZUN1c3RvbUlkZW50KHJh
bmdlKSkKKyAgICAgICAgcmV0dXJuIGlkZW50OworICAgIGlmIChhdXRvIHN0cmluZyA9IGNvbnN1
bWVTdHJpbmcocmFuZ2UpKQorICAgICAgICByZXR1cm4gc3RyaW5nOworICAgIHJldHVybiBudWxs
cHRyOworfQorCiBzdGQ6Om9wdGlvbmFsPENTU1ZhbHVlSUQ+IGNvbnN1bWVGb250VmFyaWFudENT
UzIxUmF3KENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogewogICAgIHJldHVybiBjb25zdW1l
SWRlbnRSYXc8Q1NTVmFsdWVOb3JtYWwsIENTU1ZhbHVlU21hbGxDYXBzPihyYW5nZSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVy
cy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMu
aAppbmRleCBkMTE4MjkyMGViYzQ3MmM1YTE5YzdlMDI0NDQwNWEyZWZmZTQ4Y2QxLi4yYTdlYWMz
NzI4YWRkYzMyMDkyMTQ3MjU3OWU0NzhhYjU0NDYxM2Y1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKQEAgLTE5Myw2ICsx
OTMsNyBAQCBzdHJ1Y3QgRm9udFJhdyB7CiBib29sIGlzUHJlZGVmaW5lZENvdW50ZXJTdHlsZShD
U1NWYWx1ZUlEKTsKIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29uc3VtZUNvdW50ZXJTdHls
ZU5hbWUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwogQXRvbVN0cmluZyBjb25zdW1lQ291bnRlclN0
eWxlTmFtZUluUHJlbHVkZShDU1NQYXJzZXJUb2tlblJhbmdlJik7CitSZWZQdHI8Q1NTUHJpbWl0
aXZlVmFsdWU+IGNvbnN1bWVTaW5nbGVDb250YWluZXJOYW1lKENTU1BhcnNlclRva2VuUmFuZ2Um
KTsKIAogc3RkOjpvcHRpb25hbDxDU1NWYWx1ZUlEPiBjb25zdW1lRm9udFZhcmlhbnRDU1MyMVJh
dyhDU1NQYXJzZXJUb2tlblJhbmdlJik7CiBzdGQ6Om9wdGlvbmFsPENTU1ZhbHVlSUQ+IGNvbnN1
bWVGb250V2VpZ2h0S2V5d29yZFZhbHVlUmF3KENTU1BhcnNlclRva2VuUmFuZ2UmKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvTWVkaWFRdWVyeVBhcnNlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL01lZGlhUXVlcnlQYXJzZXIuY3BwCmluZGV4IDg3NmM5
OWJkMmU4MDc5ODM3OGY5NTg3MzFkNDIzNGEyNDhmNmI2YjguLmU5ODExODMyMzhlMzc5YWU2OWU5
ZWJlMTQ2NTI5M2RiZjhjMDFkM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJz
ZXIvTWVkaWFRdWVyeVBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9N
ZWRpYVF1ZXJ5UGFyc2VyLmNwcApAQCAtNTUsOCArNTUsMTggQEAgUmVmUHRyPE1lZGlhUXVlcnlT
ZXQ+IE1lZGlhUXVlcnlQYXJzZXI6OnBhcnNlTWVkaWFDb25kaXRpb24oQ1NTUGFyc2VyVG9rZW5S
YW5nZQogICAgIHJldHVybiBNZWRpYVF1ZXJ5UGFyc2VyKE1lZGlhQ29uZGl0aW9uUGFyc2VyLCBj
b250ZXh0KS5wYXJzZUludGVybmFsKHJhbmdlKTsKIH0KIAorUmVmUHRyPE1lZGlhUXVlcnlTZXQ+
IE1lZGlhUXVlcnlQYXJzZXI6OnBhcnNlQ29udGFpbmVyUXVlcnkoQ1NTUGFyc2VyVG9rZW5SYW5n
ZSByYW5nZSwgTWVkaWFRdWVyeVBhcnNlckNvbnRleHQgY29udGV4dCkKK3sKKyAgICBpZiAocmFu
Z2UuYXRFbmQoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYgKHJhbmdlLnBlZWso
KS50eXBlKCkgIT0gTGVmdFBhcmVudGhlc2lzVG9rZW4gJiYgcmFuZ2UucGVlaygpLnR5cGUoKSAh
PSBGdW5jdGlvblRva2VuKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gTWVk
aWFRdWVyeVBhcnNlcihDb250YWluZXJRdWVyeVBhcnNlciwgY29udGV4dCkucGFyc2VJbnRlcm5h
bChyYW5nZSk7Cit9CisKIGNvbnN0IE1lZGlhUXVlcnlQYXJzZXI6OlN0YXRlIE1lZGlhUXVlcnlQ
YXJzZXI6OlJlYWRSZXN0cmljdG9yID0gJk1lZGlhUXVlcnlQYXJzZXI6OnJlYWRSZXN0cmljdG9y
OwogY29uc3QgTWVkaWFRdWVyeVBhcnNlcjo6U3RhdGUgTWVkaWFRdWVyeVBhcnNlcjo6UmVhZE1l
ZGlhTm90ID0gJk1lZGlhUXVlcnlQYXJzZXI6OnJlYWRNZWRpYU5vdDsKK2NvbnN0IE1lZGlhUXVl
cnlQYXJzZXI6OlN0YXRlIE1lZGlhUXVlcnlQYXJzZXI6OlJlYWRDb250YWluZXJRdWVyeSA9ICZN
ZWRpYVF1ZXJ5UGFyc2VyOjpyZWFkQ29udGFpbmVyUXVlcnk7CiBjb25zdCBNZWRpYVF1ZXJ5UGFy
c2VyOjpTdGF0ZSBNZWRpYVF1ZXJ5UGFyc2VyOjpSZWFkTWVkaWFUeXBlID0gJk1lZGlhUXVlcnlQ
YXJzZXI6OnJlYWRNZWRpYVR5cGU7CiBjb25zdCBNZWRpYVF1ZXJ5UGFyc2VyOjpTdGF0ZSBNZWRp
YVF1ZXJ5UGFyc2VyOjpSZWFkQW5kID0gJk1lZGlhUXVlcnlQYXJzZXI6OnJlYWRBbmQ7CiBjb25z
dCBNZWRpYVF1ZXJ5UGFyc2VyOjpTdGF0ZSBNZWRpYVF1ZXJ5UGFyc2VyOjpSZWFkRmVhdHVyZVN0
YXJ0ID0gJk1lZGlhUXVlcnlQYXJzZXI6OnJlYWRGZWF0dXJlU3RhcnQ7CkBAIC03NCwxMCArODQs
MTcgQEAgTWVkaWFRdWVyeVBhcnNlcjo6TWVkaWFRdWVyeVBhcnNlcihQYXJzZXJUeXBlIHBhcnNl
clR5cGUsIE1lZGlhUXVlcnlQYXJzZXJDb250ZXgKICAgICAsIG1fcXVlcnlTZXQoTWVkaWFRdWVy
eVNldDo6Y3JlYXRlKCkpCiAgICAgCiB7Ci0gICAgaWYgKHBhcnNlclR5cGUgPT0gTWVkaWFRdWVy
eVNldFBhcnNlcikKKyAgICBzd2l0Y2ggKG1fcGFyc2VyVHlwZSkgeworICAgIGNhc2UgTWVkaWFR
dWVyeVNldFBhcnNlcjoKICAgICAgICAgbV9zdGF0ZSA9ICZNZWRpYVF1ZXJ5UGFyc2VyOjpyZWFk
UmVzdHJpY3RvcjsKLSAgICBlbHNlIC8vIE1lZGlhQ29uZGl0aW9uUGFyc2VyCisgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgTWVkaWFDb25kaXRpb25QYXJzZXI6CiAgICAgICAgIG1fc3RhdGUgPSAm
TWVkaWFRdWVyeVBhcnNlcjo6cmVhZE1lZGlhTm90OworICAgICAgICBicmVhazsKKyAgICBjYXNl
IENvbnRhaW5lclF1ZXJ5UGFyc2VyOgorICAgICAgICBtX3N0YXRlID0gJk1lZGlhUXVlcnlQYXJz
ZXI6OnJlYWRDb250YWluZXJRdWVyeTsKKyAgICAgICAgYnJlYWs7CisgICAgfQogfQogCiBNZWRp
YVF1ZXJ5UGFyc2VyOjp+TWVkaWFRdWVyeVBhcnNlcigpID0gZGVmYXVsdDsKQEAgLTEwMiw2ICsx
MTksMTIgQEAgdm9pZCBNZWRpYVF1ZXJ5UGFyc2VyOjpyZWFkTWVkaWFOb3QoQ1NTUGFyc2VyVG9r
ZW5UeXBlIHR5cGUsIGNvbnN0IENTU1BhcnNlclRva2UKICAgICAgICAgcmVhZEZlYXR1cmVTdGFy
dCh0eXBlLCB0b2tlbiwgcmFuZ2UpOwogfQogCit2b2lkIE1lZGlhUXVlcnlQYXJzZXI6OnJlYWRD
b250YWluZXJRdWVyeShDU1NQYXJzZXJUb2tlblR5cGUgdHlwZSwgY29uc3QgQ1NTUGFyc2VyVG9r
ZW4mLCBDU1NQYXJzZXJUb2tlblJhbmdlJikKK3sKKyAgICBpZiAodHlwZSA9PSBGdW5jdGlvblRv
a2VuIHx8IHR5cGUgPT0gTGVmdFBhcmVudGhlc2lzVG9rZW4pCisgICAgICAgIG1fc3RhdGUgPSBS
ZWFkRmVhdHVyZTsKK30KKwogc3RhdGljIGJvb2wgaXNSZXN0cmljdG9yT3JMb2dpY2FsT3BlcmF0
b3IoY29uc3QgQ1NTUGFyc2VyVG9rZW4mIHRva2VuKQogewogICAgIC8vIEZJWE1FOiBpdCB3b3Vs
ZCBiZSBtb3JlIGVmZmljaWVudCB0byB1c2UgbG93ZXItY2FzZSBhbHdheXMgZm9yIHRva2VuVmFs
dWUuCkBAIC0yMzksMjkgKzI2Miw0NSBAQCB2b2lkIE1lZGlhUXVlcnlQYXJzZXI6OmRvbmUoQ1NT
UGFyc2VyVG9rZW5UeXBlIC8qdHlwZSovLCBjb25zdCBDU1NQYXJzZXJUb2tlbiYgLwogCiB2b2lk
IE1lZGlhUXVlcnlQYXJzZXI6OmhhbmRsZUJsb2Nrcyhjb25zdCBDU1NQYXJzZXJUb2tlbiYgdG9r
ZW4pCiB7Ci0gICAgaWYgKHRva2VuLmdldEJsb2NrVHlwZSgpID09IENTU1BhcnNlclRva2VuOjpC
bG9ja1N0YXJ0Ci0gICAgICAgICYmICh0b2tlbi50eXBlKCkgIT0gTGVmdFBhcmVudGhlc2lzVG9r
ZW4gfHwgbV9ibG9ja1dhdGNoZXIuYmxvY2tMZXZlbCgpKSkKLSAgICAgICAgICAgIG1fc3RhdGUg
PSBTa2lwVW50aWxCbG9ja0VuZDsKKyAgICBpZiAodG9rZW4uZ2V0QmxvY2tUeXBlKCkgIT0gQ1NT
UGFyc2VyVG9rZW46OkJsb2NrU3RhcnQpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvIHNob3Vs
ZFNraXBCbG9jayA9IFsmXSB7CisgICAgICAgIC8vIEZJTVhFOiBOZXN0ZWQgYmxvY2tzIHNob3Vs
ZCBiZSBzdXBwb3J0ZWQuCisgICAgICAgIGlmIChtX2Jsb2NrV2F0Y2hlci5ibG9ja0xldmVsKCkp
CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgaWYgKHRva2VuLnR5cGUoKSA9PSBM
ZWZ0UGFyZW50aGVzaXNUb2tlbikKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAg
aWYgKG1fcGFyc2VyVHlwZSA9PSBDb250YWluZXJRdWVyeVBhcnNlciAmJiB0b2tlbi50eXBlKCkg
PT0gRnVuY3Rpb25Ub2tlbikKKyAgICAgICAgICAgIHJldHVybiAhZXF1YWxJZ25vcmluZ0FTQ0lJ
Q2FzZSh0b2tlbi52YWx1ZSgpLCAic2l6ZSIpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9
KCk7CisgICAgaWYgKHNob3VsZFNraXBCbG9jaykKKyAgICAgICAgbV9zdGF0ZSA9IFNraXBVbnRp
bEJsb2NrRW5kOwogfQogCiB2b2lkIE1lZGlhUXVlcnlQYXJzZXI6OnByb2Nlc3NUb2tlbihjb25z
dCBDU1NQYXJzZXJUb2tlbiYgdG9rZW4sIENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogewog
ICAgIENTU1BhcnNlclRva2VuVHlwZSB0eXBlID0gdG9rZW4udHlwZSgpOwogCi0gICAgaWYgKG1f
c3RhdGUgIT0gUmVhZEZlYXR1cmVWYWx1ZSB8fCB0eXBlID09IFdoaXRlc3BhY2VUb2tlbikgewor
ICAgIGlmICh0eXBlID09IFdoaXRlc3BhY2VUb2tlbikgeworICAgICAgICByYW5nZS5jb25zdW1l
KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAobV9zdGF0ZSAhPSBSZWFkRmVh
dHVyZVZhbHVlKSB7CiAgICAgICAgIGhhbmRsZUJsb2Nrcyh0b2tlbik7CiAgICAgICAgIG1fYmxv
Y2tXYXRjaGVyLmhhbmRsZVRva2VuKHRva2VuKTsKICAgICAgICAgcmFuZ2UuY29uc3VtZSgpOwog
ICAgIH0KIAogICAgIC8vIENhbGwgdGhlIGZ1bmN0aW9uIHRoYXQgaGFuZGxlcyBjdXJyZW50IHN0
YXRlCi0gICAgaWYgKHR5cGUgIT0gV2hpdGVzcGFjZVRva2VuKQotICAgICAgICAoKHRoaXMpLT4q
KG1fc3RhdGUpKSh0eXBlLCB0b2tlbiwgcmFuZ2UpOworICAgICgodGhpcyktPioobV9zdGF0ZSkp
KHR5cGUsIHRva2VuLCByYW5nZSk7CiB9CiAKIC8vIFRoZSBzdGF0ZSBtYWNoaW5lIGxvb3AKLVJl
ZlB0cjxNZWRpYVF1ZXJ5U2V0PiBNZWRpYVF1ZXJ5UGFyc2VyOjpwYXJzZUludGVybmFsKENTU1Bh
cnNlclRva2VuUmFuZ2UgcmFuZ2UpCitSZWZQdHI8TWVkaWFRdWVyeVNldD4gTWVkaWFRdWVyeVBh
cnNlcjo6cGFyc2VJbnRlcm5hbChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKIHsKKyAgICAK
ICAgICB3aGlsZSAoIXJhbmdlLmF0RW5kKCkpCiAgICAgICAgIHByb2Nlc3NUb2tlbihyYW5nZS5w
ZWVrKCksIHJhbmdlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9N
ZWRpYVF1ZXJ5UGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL01lZGlhUXVlcnlQ
YXJzZXIuaAppbmRleCA2ZGU4MjNjZDAyYjY2MTRjYWQzZTAwNmU4YjY4ZTAxMGUyZDg1NWNmLi5l
NmMxNWVjMzA2YmY0NzgzYjljN2UzNWZhNTM5NzYxNTI3YzkwM2M5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvcGFyc2VyL01lZGlhUXVlcnlQYXJzZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL01lZGlhUXVlcnlQYXJzZXIuaApAQCAtNDgsMjIgKzQ4LDI1IEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IHBhcnNlTWVkaWFRdWVyeVNl
dChjb25zdCBTdHJpbmcmLCBNZWRpYVF1ZXJ5UGFyc2VyQ29udGV4dCk7CiAgICAgc3RhdGljIFJl
ZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZU1lZGlhUXVlcnlTZXQoQ1NTUGFyc2VyVG9rZW5SYW5n
ZSwgTWVkaWFRdWVyeVBhcnNlckNvbnRleHQpOwogICAgIHN0YXRpYyBSZWZQdHI8TWVkaWFRdWVy
eVNldD4gcGFyc2VNZWRpYUNvbmRpdGlvbihDU1NQYXJzZXJUb2tlblJhbmdlLCBNZWRpYVF1ZXJ5
UGFyc2VyQ29udGV4dCk7CisgICAgc3RhdGljIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZUNv
bnRhaW5lclF1ZXJ5KENTU1BhcnNlclRva2VuUmFuZ2UsIE1lZGlhUXVlcnlQYXJzZXJDb250ZXh0
KTsKIAogcHJpdmF0ZToKICAgICBlbnVtIFBhcnNlclR5cGUgewogICAgICAgICBNZWRpYVF1ZXJ5
U2V0UGFyc2VyLAogICAgICAgICBNZWRpYUNvbmRpdGlvblBhcnNlciwKKyAgICAgICAgQ29udGFp
bmVyUXVlcnlQYXJzZXIsCiAgICAgfTsKIAogICAgIE1lZGlhUXVlcnlQYXJzZXIoUGFyc2VyVHlw
ZSwgTWVkaWFRdWVyeVBhcnNlckNvbnRleHQpOwogICAgIHZpcnR1YWwgfk1lZGlhUXVlcnlQYXJz
ZXIoKTsKIAotICAgIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZUludGVybmFsKENTU1BhcnNl
clRva2VuUmFuZ2UpOworICAgIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZUludGVybmFsKENT
U1BhcnNlclRva2VuUmFuZ2UmKTsKIAogICAgIHZvaWQgcHJvY2Vzc1Rva2VuKGNvbnN0IENTU1Bh
cnNlclRva2VuJiwgQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwogCiAgICAgdm9pZCByZWFkUmVzdHJp
Y3RvcihDU1NQYXJzZXJUb2tlblR5cGUsIGNvbnN0IENTU1BhcnNlclRva2VuJiwgQ1NTUGFyc2Vy
VG9rZW5SYW5nZSYpOwogICAgIHZvaWQgcmVhZE1lZGlhTm90KENTU1BhcnNlclRva2VuVHlwZSwg
Y29uc3QgQ1NTUGFyc2VyVG9rZW4mLCBDU1NQYXJzZXJUb2tlblJhbmdlJik7CisgICAgdm9pZCBy
ZWFkQ29udGFpbmVyUXVlcnkoQ1NTUGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJUb2tl
biYsIENTU1BhcnNlclRva2VuUmFuZ2UmKTsKICAgICB2b2lkIHJlYWRNZWRpYVR5cGUoQ1NTUGFy
c2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJUb2tlbiYsIENTU1BhcnNlclRva2VuUmFuZ2Um
KTsKICAgICB2b2lkIHJlYWRBbmQoQ1NTUGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJU
b2tlbiYsIENTU1BhcnNlclRva2VuUmFuZ2UmKTsKICAgICB2b2lkIHJlYWRGZWF0dXJlU3RhcnQo
Q1NTUGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJUb2tlbiYsIENTU1BhcnNlclRva2Vu
UmFuZ2UmKTsKQEAgLTEyNCw2ICsxMjcsNyBAQCBwcml2YXRlOgogCiAgICAgY29uc3Qgc3RhdGlj
IFN0YXRlIFJlYWRSZXN0cmljdG9yOwogICAgIGNvbnN0IHN0YXRpYyBTdGF0ZSBSZWFkTWVkaWFO
b3Q7CisgICAgY29uc3Qgc3RhdGljIFN0YXRlIFJlYWRDb250YWluZXJRdWVyeTsKICAgICBjb25z
dCBzdGF0aWMgU3RhdGUgUmVhZE1lZGlhVHlwZTsKICAgICBjb25zdCBzdGF0aWMgU3RhdGUgUmVh
ZEFuZDsKICAgICBjb25zdCBzdGF0aWMgU3RhdGUgUmVhZEZlYXR1cmVTdGFydDsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDA1NTI5ZWRjZjZlNjk2NTYwYTI5MTFhMjBlOThjN2Yx
NmRhNjQ0MGMuLmQzNzljNzQ5YTE1ZDBlZDQ1YmI4ZGZlOGQ1OTlhYTBiMWIxOTI1NmUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIyLTAxLTI3ICBB
bnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ1NTIENvbnRhaW5l
ciBRdWVyaWVzXSBCYXNpYyBwYXJzaW5nIHN1cHBvcnQgZm9yIHF1ZXJ5IHN5bnRheAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1NzEyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2F0LWNvbnRhaW5lci1wYXJz
aW5nLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMS0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBh
cHBsZS5jb20+CiAKICAgICAgICAgUmViYXNlIFdQVCBzdHJlYW1zIHRlc3RzIHVwIHRvIDhkMWRj
NDIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2F0LWNvbnRhaW5lci1wYXJzaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2F0LWNvbnRhaW5lci1wYXJzaW5n
LWV4cGVjdGVkLnR4dAppbmRleCBlMDE3OGMyZWFkM2YzODEyY2EzZmM3MDM0OWEzMzU2ZTEyYWNj
YTMyLi41MDJiOWY3NjY3M2Y0ZTk2MmE0NjMxOWMzNjEyODU1MGYzMDMwMTIzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY29u
dGFpbi9jb250YWluZXItcXVlcmllcy9hdC1jb250YWluZXItcGFyc2luZy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvYXQtY29udGFpbmVyLXBhcnNpbmctZXhwZWN0ZWQu
dHh0CkBAIC0zMywxNCArMzMsMTQgQEAgUEFTUyBzaXplKGNvbG9yLWluZGV4ID49IDEpCiBQQVNT
IChjb2xvci1pbmRleCA+PSAxKQogUEFTUyBzaXplKGdyaWQpCiBQQVNTIChncmlkKQotRkFJTCBz
Y3JlZW4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgcHJpbnQgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgbm90IHByaW50IGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAxCi1GQUlMIG9ubHkgcHJpbnQgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgc2NyZWVuIGFuZCAod2lkdGg6IDEwMHB4KSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMQotRkFJTCBzY3JlZW4gb3IgKHdpZHRo
OiAxMDBweCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgbm90IHNj
cmVlbiBhbmQgKHdpZHRoOiAxMDBweCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDEKLUZBSUwgbm90IHNjcmVlbiBvciAod2lkdGg6IDEwMHB4KSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMQorUEFTUyBzY3JlZW4KK1BBU1MgcHJpbnQKK1BBU1Mgbm90IHByaW50
CitQQVNTIG9ubHkgcHJpbnQKK1BBU1Mgc2NyZWVuIGFuZCAod2lkdGg6IDEwMHB4KQorUEFTUyBz
Y3JlZW4gb3IgKHdpZHRoOiAxMDBweCkKK1BBU1Mgbm90IHNjcmVlbiBhbmQgKHdpZHRoOiAxMDBw
eCkKK1BBU1Mgbm90IHNjcmVlbiBvciAod2lkdGg6IDEwMHB4KQogRkFJTCAod2lkdGg6IDEwMHB4
KSwgKGhlaWdodDogMTAwcHgpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAxCiBQ
QVNTIENvbnRhaW5lciBzZWxlY3RvcjogIGZvbwogUEFTUyBDb250YWluZXIgc2VsZWN0b3I6ICBm
b28KQEAgLTUyLDkgKzUyLDkgQEAgUEFTUyBDb250YWluZXIgc2VsZWN0b3I6IHR5cGUoaW5saW5l
LXNpemUpCiBQQVNTIENvbnRhaW5lciBzZWxlY3RvcjogdHlwZShibG9jay1zaXplKQogUEFTUyBD
b250YWluZXIgc2VsZWN0b3I6IG5hbWUoYmFyKSB0eXBlKGJsb2NrLXNpemUpCiBQQVNTIENvbnRh
aW5lciBzZWxlY3RvcjogdHlwZShibG9jay1zaXplKSBuYW1lKGJhcikKLUZBSUwgQ29udGFpbmVy
IHNlbGVjdG9yOiBmb28gZm9vIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAxCi1G
QUlMIENvbnRhaW5lciBzZWxlY3RvcjogMXB4IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAxCi1GQUlMIENvbnRhaW5lciBzZWxlY3RvcjogNTBnaWwgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMCBidXQgZ290IDEKK1BBU1MgQ29udGFpbmVyIHNlbGVjdG9yOiBmb28gZm9vCitQQVNT
IENvbnRhaW5lciBzZWxlY3RvcjogMXB4CitQQVNTIENvbnRhaW5lciBzZWxlY3RvcjogNTBnaWwK
IEZBSUwgQ29udGFpbmVyIHNlbGVjdG9yOiBuYW1lKDFweCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgMCBidXQgZ290IDEKIEZBSUwgQ29udGFpbmVyIHNlbGVjdG9yOiB0eXBlKDFweCkgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKIEZBSUwgQ29udGFpbmVyIHNlbGVjdG9yOiB0
eXBlKHJlZCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450141</attachid>
            <date>2022-01-27 08:35:14 -0800</date>
            <delta_ts>2022-01-27 09:50:47 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-235712-20220127183513.patch</filename>
            <type>text/plain</type>
            <size>18171</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4NjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWVhNmFlZDFkNjE1NWE3
MThkYjNjOTNjZDFmMTA1YThlNjQ2NWRiNC4uNDYzMzJjMzA0MjA5NzA1MTlkYTJkNjViN2FmNWU2
Y2U1MmIyODkxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIyLTAxLTI3ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ1NTIENvbnRhaW5lciBR
dWVyaWVzXSBCYXNpYyBwYXJzaW5nIHN1cHBvcnQgZm9yIHF1ZXJ5IHN5bnRheAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1NzEyCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgaHR0cHM6Ly9kcmFmdHMuY3Nzd2cu
b3JnL2Nzcy1jb250YWluLTMvI2F0LXJ1bGVkZWYtY29udGFpbmVyCisKKyAgICAgICAgVXNlIE1l
ZGlhUXVlcnlQYXJzZXIgdG8gcGFyc2UgdGhlIHF1ZXJ5IHN5bnRheC4gTm90ZSB0aGF0IGJlY2F1
c2UgdGhlIGxpbWl0YXRpb25zCisgICAgICAgIG9mIE1lZGlhUXVlcnlQYXJzZXIgb25seSBzaW1w
bGUgbm9uLW5lc3RlZCBxdWVyaWVzIGNhbiBiZSBwYXJzZWQgZm9yIG5vdy4KKworICAgICAgICAq
IGNzcy9TdHlsZVJ1bGUuaDoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6ZmlsdGVyUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NQYXJzZXJJbXBsOjpjb25zdW1lQXRSdWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Bh
cnNlckltcGw6OmNvbnN1bWVDb250YWluZXJSdWxlKToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NT
U1Byb3BlcnR5UGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVDb250YWluZXJO
YW1lKToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVTaW5n
bGVDb250YWluZXJOYW1lKToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2Vy
SGVscGVycy5oOgorICAgICAgICAqIGNzcy9wYXJzZXIvTWVkaWFRdWVyeVBhcnNlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVF1ZXJ5UGFyc2VyOjpwYXJzZUNvbnRhaW5lclF1ZXJ5KToK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUXVlcnlQYXJzZXI6Ok1lZGlhUXVlcnlQYXJzZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFRdWVyeVBhcnNlcjo6cmVhZENvbnRhaW5lclF1ZXJ5KToK
KyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUXVlcnlQYXJzZXI6OmhhbmRsZUJsb2Nrcyk6CisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYVF1ZXJ5UGFyc2VyOjpwcm9jZXNzVG9rZW4pOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFRdWVyeVBhcnNlcjo6cGFyc2VJbnRlcm5hbCk6CisgICAgICAgICogY3Nz
L3BhcnNlci9NZWRpYVF1ZXJ5UGFyc2VyLmg6CisKIDIwMjItMDEtMjYgIEFudHRpIEtvaXZpc3Rv
ICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIEFTU0VSVElPTiBGQUlMRUQ6ICFoYXNQZW5k
aW5nU2hlZXRzKCkgdW5kZXIgV2ViQ29yZTo6U3R5bGU6OlNjb3BlOjp+U2NvcGUoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oIGIvU291cmNlL1dlYkNvcmUvY3Nz
L1N0eWxlUnVsZS5oCmluZGV4IGNkMTVmODdhMzI1ZTUzZTIwZGU3ZmEyODIwZTgzZDBmYTIyMDcw
MTMuLjVlMWMwN2I1MzYxNmJhMTg3MDMwYzY3ZjNlYjk0MmY2NDNiMjNiMWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJ1bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVSdWxlLmgKQEAgLTMxNCw3ICszMTQsMTAgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnZhcmlh
bnQ8Q2FzY2FkZUxheWVyTmFtZSwgVmVjdG9yPENhc2NhZGVMYXllck5hbWU+PiBtX25hbWVWYXJp
YW50OwogfTsKIAotc3RydWN0IENvbnRhaW5lclF1ZXJ5IHsgfTsKK3N0cnVjdCBDb250YWluZXJR
dWVyeSB7CisgICAgQXRvbVN0cmluZyBjb250YWluZXJOYW1lOworICAgIFJlZjxNZWRpYVF1ZXJ5
U2V0PiBxdWVyeTsKK307CiAKIGNsYXNzIFN0eWxlUnVsZUNvbnRhaW5lciBmaW5hbCA6IHB1Ymxp
YyBTdHlsZVJ1bGVHcm91cCB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9D
U1NQYXJzZXJJbXBsLmNwcAppbmRleCA5ZDFhNmU5MDAxYjc3OTEyNzg1MWUyNDc3ZWFkZjU3NTZl
NTMxZjc3Li5mN2Q1NTkyMjA1N2YzNGY0M2VjNmEyM2M4MzM2ZjVkNTJjMWVhYjMzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHAKQEAgLTEyMywxMiArMTIz
LDYgQEAgc3RhdGljIGlubGluZSB2b2lkIGZpbHRlclByb3BlcnRpZXMoYm9vbCBpbXBvcnRhbnQs
IGNvbnN0IFBhcnNlZFByb3BlcnR5VmVjdG9yJgogICAgICAgICAgICAgb3V0cHV0Wy0tdW51c2Vk
RW50cmllc10gPSBwcm9wZXJ0eTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9Ci0g
ICAgICAgIAotICAgICAgICAvLyBGSVhNRS1ORVdQQVJTRVI6IFdlIHdvbid0IHN1cHBvcnQgQGFw
cGx5IHlldC4KLSAgICAgICAgLyplbHNlIGlmIChwcm9wZXJ0eS5pZCgpID09IENTU1Byb3BlcnR5
QXBwbHlBdFJ1bGUpIHsKLSAgICAgICAgIC8vIEZJWE1FOiBEbyB3ZSBuZWVkIHRvIGRvIGFueXRo
aW5nIGhlcmU/Ci0gICAgICAgICB9ICovCi0gICAgICAgIAogCiAgICAgICAgIGlmIChzZWVuUHJv
cGVydGllcy50ZXN0KHByb3BlcnR5SURJbmRleCkpCiAgICAgICAgICAgICBjb250aW51ZTsKQEAg
LTQzMCwxMSArNDI0LDYgQEAgUmVmUHRyPFN0eWxlUnVsZUJhc2U+IENTU1BhcnNlckltcGw6OmNv
bnN1bWVBdFJ1bGUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UsIEEKICAgICAgICAgICAgIHJl
dHVybiBjb25zdW1lTmFtZXNwYWNlUnVsZShwcmVsdWRlKTsKICAgICAgICAgaWYgKGFsbG93ZWRS
dWxlcyA8PSBSZWd1bGFyUnVsZXMgJiYgaWQgPT0gQ1NTQXRSdWxlTGF5ZXIpCiAgICAgICAgICAg
ICByZXR1cm4gY29uc3VtZUxheWVyUnVsZShwcmVsdWRlLCB7IH0pOwotICAgICAgICAvLyBGSVhN
RS1ORVdQQVJTRVI6IFN1cHBvcnQgImFwcGx5IgotICAgICAgICAvKmlmIChhbGxvd2VkUnVsZXMg
PT0gQXBwbHlSdWxlcyAmJiBpZCA9PSBDU1NBdFJ1bGVBcHBseSkgewotICAgICAgICAgICAgY29u
c3VtZUFwcGx5UnVsZShwcmVsdWRlKTsKLSAgICAgICAgICAgIHJldHVybiBudWxscHRyOyAvLyBj
b25zdW1lQXBwbHlSdWxlIGp1c3QgdXBkYXRlcyBtX3BhcnNlZFByb3BlcnRpZXMKLSAgICAgICAg
fSovCiAgICAgICAgIHJldHVybiBudWxscHRyOyAvLyBQYXJzZSBlcnJvciwgdW5yZWNvZ25pc2Vk
IGF0LXJ1bGUgd2l0aG91dCBibG9jawogICAgIH0KIApAQCAtNjIzLDcgKzYxMiw3IEBAIFJlZlB0
cjxTdHlsZVJ1bGVNZWRpYT4gQ1NTUGFyc2VySW1wbDo6Y29uc3VtZU1lZGlhUnVsZShDU1NQYXJz
ZXJUb2tlblJhbmdlIHByZWx1CiAgICAgaWYgKG1fb2JzZXJ2ZXJXcmFwcGVyKQogICAgICAgICBt
X29ic2VydmVyV3JhcHBlci0+b2JzZXJ2ZXIoKS5lbmRSdWxlQm9keShtX29ic2VydmVyV3JhcHBl
ci0+ZW5kT2Zmc2V0KGJsb2NrKSk7CiAKLSAgICByZXR1cm4gU3R5bGVSdWxlTWVkaWE6OmNyZWF0
ZShNZWRpYVF1ZXJ5UGFyc2VyOjpwYXJzZU1lZGlhUXVlcnlTZXQocHJlbHVkZSwgTWVkaWFRdWVy
eVBhcnNlckNvbnRleHQobV9jb250ZXh0KSkucmVsZWFzZU5vbk51bGwoKSwgV1RGTW92ZShydWxl
cykpOworICAgIHJldHVybiBTdHlsZVJ1bGVNZWRpYTo6Y3JlYXRlKE1lZGlhUXVlcnlQYXJzZXI6
OnBhcnNlTWVkaWFRdWVyeVNldChwcmVsdWRlLCB7IG1fY29udGV4dCB9KS5yZWxlYXNlTm9uTnVs
bCgpLCBXVEZNb3ZlKHJ1bGVzKSk7CiB9CiAKIFJlZlB0cjxTdHlsZVJ1bGVTdXBwb3J0cz4gQ1NT
UGFyc2VySW1wbDo6Y29uc3VtZVN1cHBvcnRzUnVsZShDU1NQYXJzZXJUb2tlblJhbmdlIHByZWx1
ZGUsIENTU1BhcnNlclRva2VuUmFuZ2UgYmxvY2spCkBAIC04NjIsOCArODUxLDI2IEBAIFJlZlB0
cjxTdHlsZVJ1bGVDb250YWluZXI+IENTU1BhcnNlckltcGw6OmNvbnN1bWVDb250YWluZXJSdWxl
KENTU1BhcnNlclRva2VuUmFuCiAgICAgaWYgKCFtX2NvbnRleHQuY29udGFpbmVyUXVlcmllc0Vu
YWJsZWQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCisgICAgaWYgKHByZWx1ZGUuYXRFbmQo
KSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBhdXRvIGNvbnN1bWVOYW1lID0gWyZd
KCkgLT4gQXRvbVN0cmluZyB7CisgICAgICAgIGlmIChwcmVsdWRlLnBlZWsoKS50eXBlKCkgPT0g
TGVmdFBhcmVudGhlc2lzVG9rZW4gfHwgcHJlbHVkZS5wZWVrKCkudHlwZSgpID09IEZ1bmN0aW9u
VG9rZW4pCisgICAgICAgICAgICByZXR1cm4gbnVsbEF0b20oKTsKKyAgICAgICAgYXV0byBuYW1l
VmFsdWUgPSBDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnM6OmNvbnN1bWVTaW5nbGVDb250YWluZXJO
YW1lKHByZWx1ZGUpOworICAgICAgICBpZiAoIW5hbWVWYWx1ZSkKKyAgICAgICAgICAgIHJldHVy
biBudWxsQXRvbSgpOworICAgICAgICByZXR1cm4gbmFtZVZhbHVlLT5zdHJpbmdWYWx1ZSgpOwor
ICAgIH07CisKKyAgICBhdXRvIG5hbWUgPSBjb25zdW1lTmFtZSgpOworCisgICAgYXV0byBxdWVy
eSA9IE1lZGlhUXVlcnlQYXJzZXI6OnBhcnNlQ29udGFpbmVyUXVlcnkocHJlbHVkZSwgTWVkaWFR
dWVyeVBhcnNlckNvbnRleHQobV9jb250ZXh0KSk7CisgICAgaWYgKCFxdWVyeSkKKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisKICAgICBpZiAobV9kZWZlcnJlZFBhcnNlcikKLSAgICAgICAgcmV0
dXJuIFN0eWxlUnVsZUNvbnRhaW5lcjo6Y3JlYXRlKHsgfSwgbWFrZVVuaXF1ZTxEZWZlcnJlZFN0
eWxlR3JvdXBSdWxlTGlzdD4oYmxvY2ssICptX2RlZmVycmVkUGFyc2VyKSk7CisgICAgICAgIHJl
dHVybiBTdHlsZVJ1bGVDb250YWluZXI6OmNyZWF0ZSh7IG5hbWUsIHF1ZXJ5LnJlbGVhc2VOb25O
dWxsKCkgfSwgbWFrZVVuaXF1ZTxEZWZlcnJlZFN0eWxlR3JvdXBSdWxlTGlzdD4oYmxvY2ssICpt
X2RlZmVycmVkUGFyc2VyKSk7CiAKICAgICBWZWN0b3I8UmVmUHRyPFN0eWxlUnVsZUJhc2U+PiBy
dWxlczsKIApAQCAtODgxLDcgKzg4OCw3IEBAIFJlZlB0cjxTdHlsZVJ1bGVDb250YWluZXI+IENT
U1BhcnNlckltcGw6OmNvbnN1bWVDb250YWluZXJSdWxlKENTU1BhcnNlclRva2VuUmFuCiAgICAg
aWYgKG1fb2JzZXJ2ZXJXcmFwcGVyKQogICAgICAgICBtX29ic2VydmVyV3JhcHBlci0+b2JzZXJ2
ZXIoKS5lbmRSdWxlQm9keShtX29ic2VydmVyV3JhcHBlci0+ZW5kT2Zmc2V0KGJsb2NrKSk7CiAK
LSAgICByZXR1cm4gU3R5bGVSdWxlQ29udGFpbmVyOjpjcmVhdGUoeyB9LCBXVEZNb3ZlKHJ1bGVz
KSk7CisgICAgcmV0dXJuIFN0eWxlUnVsZUNvbnRhaW5lcjo6Y3JlYXRlKHsgbmFtZSwgcXVlcnku
cmVsZWFzZU5vbk51bGwoKSB9LCBXVEZNb3ZlKHJ1bGVzKSk7CiB9CiAgICAgCiBSZWZQdHI8U3R5
bGVSdWxlS2V5ZnJhbWU+IENTU1BhcnNlckltcGw6OmNvbnN1bWVLZXlmcmFtZVN0eWxlUnVsZShD
U1NQYXJzZXJUb2tlblJhbmdlIHByZWx1ZGUsIENTU1BhcnNlclRva2VuUmFuZ2UgYmxvY2spCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCmluZGV4
IDY3NTdhYmI3NDZjNzQyMWVhNzYwNDUyMDExMTU1ZGNkNDM5NjAxY2YuLmJmYjliNjExNTkyMmVl
NmM5ZDU0NzVmZjhmZGMxNGE3MTYzOGU1NTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9w
YXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuY3BwCkBAIC0zODA2LDE5ICszODA2LDkgQEAgc3RhdGlj
IFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUNvbnRhaW5lck5hbWUoQ1NTUGFyc2VyVG9rZW5SYW5n
ZSYgcmFuZ2UpCiAgICAgaWYgKHJhbmdlLnBlZWsoKS5pZCgpID09IENTU1ZhbHVlTm9uZSkKICAg
ICAgICAgcmV0dXJuIGNvbnN1bWVJZGVudChyYW5nZSk7CiAKLSAgICBhdXRvIGNvbnN1bWVOYW1l
ID0gWyZdKCkgLT4gUmVmUHRyPENTU1ZhbHVlPiB7Ci0gICAgICAgIGlmIChyYW5nZS5wZWVrKCku
aWQoKSA9PSBDU1NWYWx1ZU5vbmUpCi0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAg
ICAgaWYgKGF1dG8gaWRlbnQgPSBjb25zdW1lQ3VzdG9tSWRlbnQocmFuZ2UpKQotICAgICAgICAg
ICAgcmV0dXJuIGlkZW50OwotICAgICAgICBpZiAoYXV0byBzdHJpbmcgPSBjb25zdW1lU3RyaW5n
KHJhbmdlKSkKLSAgICAgICAgICAgIHJldHVybiBzdHJpbmc7Ci0gICAgICAgIHJldHVybiBudWxs
cHRyOwotICAgIH07Ci0KICAgICBhdXRvIGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNl
U2VwYXJhdGVkKCk7CiAgICAgZG8gewotICAgICAgICBhdXRvIG5hbWUgPSBjb25zdW1lTmFtZSgp
OworICAgICAgICBhdXRvIG5hbWUgPSBjb25zdW1lU2luZ2xlQ29udGFpbmVyTmFtZShyYW5nZSk7
CiAgICAgICAgIGlmICghbmFtZSkKICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgICAg
ICBsaXN0LT5hcHBlbmQobmFtZS5yZWxlYXNlTm9uTnVsbCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAppbmRleCBl
M2YxYTkyODA2ZGE0MDE3YTNiMTFlMDM4MmFhMmIxMDZhMmRmOThkLi44OTgwOWYxNjEwNWYwMWYz
NWI0YzYzMzQ5ZjQyNTZjNTBmYzk5Y2M5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
cGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCkBAIC00Mjc5LDYgKzQyNzks
MTcgQEAgQXRvbVN0cmluZyBjb25zdW1lQ291bnRlclN0eWxlTmFtZUluUHJlbHVkZShDU1NQYXJz
ZXJUb2tlblJhbmdlJiBwcmVsdWRlKQogICAgIHJldHVybiBpc1ByZWRlZmluZWRDb3VudGVyU3R5
bGUobmFtZVRva2VuLmlkKCkpID8gbmFtZS5jb252ZXJ0VG9BU0NJSUxvd2VyY2FzZUF0b20oKSA6
IG5hbWUudG9BdG9tU3RyaW5nKCk7CiB9CiAKK1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gY29u
c3VtZVNpbmdsZUNvbnRhaW5lck5hbWUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UpCit7Cisg
ICAgaWYgKHJhbmdlLnBlZWsoKS5pZCgpID09IENTU1ZhbHVlTm9uZSkKKyAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisgICAgaWYgKGF1dG8gaWRlbnQgPSBjb25zdW1lQ3VzdG9tSWRlbnQocmFuZ2Up
KQorICAgICAgICByZXR1cm4gaWRlbnQ7CisgICAgaWYgKGF1dG8gc3RyaW5nID0gY29uc3VtZVN0
cmluZyhyYW5nZSkpCisgICAgICAgIHJldHVybiBzdHJpbmc7CisgICAgcmV0dXJuIG51bGxwdHI7
Cit9CisKIHN0ZDo6b3B0aW9uYWw8Q1NTVmFsdWVJRD4gY29uc3VtZUZvbnRWYXJpYW50Q1NTMjFS
YXcoQ1NTUGFyc2VyVG9rZW5SYW5nZSYgcmFuZ2UpCiB7CiAgICAgcmV0dXJuIGNvbnN1bWVJZGVu
dFJhdzxDU1NWYWx1ZU5vcm1hbCwgQ1NTVmFsdWVTbWFsbENhcHM+KHJhbmdlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCmlu
ZGV4IGQxMTgyOTIwZWJjNDcyYzVhMTljN2UwMjQ0NDA1YTJlZmZlNDhjZDEuLjJhN2VhYzM3Mjhh
ZGRjMzIwOTIxNDcyNTc5ZTQ3OGFiNTQ0NjEzZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaApAQCAtMTkzLDYgKzE5Myw3
IEBAIHN0cnVjdCBGb250UmF3IHsKIGJvb2wgaXNQcmVkZWZpbmVkQ291bnRlclN0eWxlKENTU1Zh
bHVlSUQpOwogUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb25zdW1lQ291bnRlclN0eWxlTmFt
ZShDU1NQYXJzZXJUb2tlblJhbmdlJik7CiBBdG9tU3RyaW5nIGNvbnN1bWVDb3VudGVyU3R5bGVO
YW1lSW5QcmVsdWRlKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKK1JlZlB0cjxDU1NQcmltaXRpdmVW
YWx1ZT4gY29uc3VtZVNpbmdsZUNvbnRhaW5lck5hbWUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwog
CiBzdGQ6Om9wdGlvbmFsPENTU1ZhbHVlSUQ+IGNvbnN1bWVGb250VmFyaWFudENTUzIxUmF3KENT
U1BhcnNlclRva2VuUmFuZ2UmKTsKIHN0ZDo6b3B0aW9uYWw8Q1NTVmFsdWVJRD4gY29uc3VtZUZv
bnRXZWlnaHRLZXl3b3JkVmFsdWVSYXcoQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9NZWRpYVF1ZXJ5UGFyc2VyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvTWVkaWFRdWVyeVBhcnNlci5jcHAKaW5kZXggODc2Yzk5YmQy
ZTgwNzk4Mzc4Zjk1ODczMWQ0MjM0YTI0OGY2YjZiOC4uY2I1YTA4YWEzZWI3ZDZiOGM4MjU3ZGM4
NDhkY2VjMTEzNDE5YzljZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9N
ZWRpYVF1ZXJ5UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL01lZGlh
UXVlcnlQYXJzZXIuY3BwCkBAIC01NSw4ICs1NSwxOCBAQCBSZWZQdHI8TWVkaWFRdWVyeVNldD4g
TWVkaWFRdWVyeVBhcnNlcjo6cGFyc2VNZWRpYUNvbmRpdGlvbihDU1NQYXJzZXJUb2tlblJhbmdl
CiAgICAgcmV0dXJuIE1lZGlhUXVlcnlQYXJzZXIoTWVkaWFDb25kaXRpb25QYXJzZXIsIGNvbnRl
eHQpLnBhcnNlSW50ZXJuYWwocmFuZ2UpOwogfQogCitSZWZQdHI8TWVkaWFRdWVyeVNldD4gTWVk
aWFRdWVyeVBhcnNlcjo6cGFyc2VDb250YWluZXJRdWVyeShDU1NQYXJzZXJUb2tlblJhbmdlIHJh
bmdlLCBNZWRpYVF1ZXJ5UGFyc2VyQ29udGV4dCBjb250ZXh0KQoreworICAgIGlmIChyYW5nZS5h
dEVuZCgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBpZiAocmFuZ2UucGVlaygpLnR5
cGUoKSAhPSBMZWZ0UGFyZW50aGVzaXNUb2tlbiAmJiByYW5nZS5wZWVrKCkudHlwZSgpICE9IEZ1
bmN0aW9uVG9rZW4pCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBNZWRpYVF1
ZXJ5UGFyc2VyKENvbnRhaW5lclF1ZXJ5UGFyc2VyLCBjb250ZXh0KS5wYXJzZUludGVybmFsKHJh
bmdlKTsKK30KKwogY29uc3QgTWVkaWFRdWVyeVBhcnNlcjo6U3RhdGUgTWVkaWFRdWVyeVBhcnNl
cjo6UmVhZFJlc3RyaWN0b3IgPSAmTWVkaWFRdWVyeVBhcnNlcjo6cmVhZFJlc3RyaWN0b3I7CiBj
b25zdCBNZWRpYVF1ZXJ5UGFyc2VyOjpTdGF0ZSBNZWRpYVF1ZXJ5UGFyc2VyOjpSZWFkTWVkaWFO
b3QgPSAmTWVkaWFRdWVyeVBhcnNlcjo6cmVhZE1lZGlhTm90OworY29uc3QgTWVkaWFRdWVyeVBh
cnNlcjo6U3RhdGUgTWVkaWFRdWVyeVBhcnNlcjo6UmVhZENvbnRhaW5lclF1ZXJ5ID0gJk1lZGlh
UXVlcnlQYXJzZXI6OnJlYWRDb250YWluZXJRdWVyeTsKIGNvbnN0IE1lZGlhUXVlcnlQYXJzZXI6
OlN0YXRlIE1lZGlhUXVlcnlQYXJzZXI6OlJlYWRNZWRpYVR5cGUgPSAmTWVkaWFRdWVyeVBhcnNl
cjo6cmVhZE1lZGlhVHlwZTsKIGNvbnN0IE1lZGlhUXVlcnlQYXJzZXI6OlN0YXRlIE1lZGlhUXVl
cnlQYXJzZXI6OlJlYWRBbmQgPSAmTWVkaWFRdWVyeVBhcnNlcjo6cmVhZEFuZDsKIGNvbnN0IE1l
ZGlhUXVlcnlQYXJzZXI6OlN0YXRlIE1lZGlhUXVlcnlQYXJzZXI6OlJlYWRGZWF0dXJlU3RhcnQg
PSAmTWVkaWFRdWVyeVBhcnNlcjo6cmVhZEZlYXR1cmVTdGFydDsKQEAgLTc0LDEwICs4NCwxNyBA
QCBNZWRpYVF1ZXJ5UGFyc2VyOjpNZWRpYVF1ZXJ5UGFyc2VyKFBhcnNlclR5cGUgcGFyc2VyVHlw
ZSwgTWVkaWFRdWVyeVBhcnNlckNvbnRleAogICAgICwgbV9xdWVyeVNldChNZWRpYVF1ZXJ5U2V0
OjpjcmVhdGUoKSkKICAgICAKIHsKLSAgICBpZiAocGFyc2VyVHlwZSA9PSBNZWRpYVF1ZXJ5U2V0
UGFyc2VyKQorICAgIHN3aXRjaCAobV9wYXJzZXJUeXBlKSB7CisgICAgY2FzZSBNZWRpYVF1ZXJ5
U2V0UGFyc2VyOgogICAgICAgICBtX3N0YXRlID0gJk1lZGlhUXVlcnlQYXJzZXI6OnJlYWRSZXN0
cmljdG9yOwotICAgIGVsc2UgLy8gTWVkaWFDb25kaXRpb25QYXJzZXIKKyAgICAgICAgYnJlYWs7
CisgICAgY2FzZSBNZWRpYUNvbmRpdGlvblBhcnNlcjoKICAgICAgICAgbV9zdGF0ZSA9ICZNZWRp
YVF1ZXJ5UGFyc2VyOjpyZWFkTWVkaWFOb3Q7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgQ29u
dGFpbmVyUXVlcnlQYXJzZXI6CisgICAgICAgIG1fc3RhdGUgPSAmTWVkaWFRdWVyeVBhcnNlcjo6
cmVhZENvbnRhaW5lclF1ZXJ5OworICAgICAgICBicmVhazsKKyAgICB9CiB9CiAKIE1lZGlhUXVl
cnlQYXJzZXI6On5NZWRpYVF1ZXJ5UGFyc2VyKCkgPSBkZWZhdWx0OwpAQCAtMTAyLDYgKzExOSwx
MiBAQCB2b2lkIE1lZGlhUXVlcnlQYXJzZXI6OnJlYWRNZWRpYU5vdChDU1NQYXJzZXJUb2tlblR5
cGUgdHlwZSwgY29uc3QgQ1NTUGFyc2VyVG9rZQogICAgICAgICByZWFkRmVhdHVyZVN0YXJ0KHR5
cGUsIHRva2VuLCByYW5nZSk7CiB9CiAKK3ZvaWQgTWVkaWFRdWVyeVBhcnNlcjo6cmVhZENvbnRh
aW5lclF1ZXJ5KENTU1BhcnNlclRva2VuVHlwZSB0eXBlLCBjb25zdCBDU1NQYXJzZXJUb2tlbiYs
IENTU1BhcnNlclRva2VuUmFuZ2UmKQoreworICAgIGlmICh0eXBlID09IEZ1bmN0aW9uVG9rZW4g
fHwgdHlwZSA9PSBMZWZ0UGFyZW50aGVzaXNUb2tlbikKKyAgICAgICAgbV9zdGF0ZSA9IFJlYWRG
ZWF0dXJlOworfQorCiBzdGF0aWMgYm9vbCBpc1Jlc3RyaWN0b3JPckxvZ2ljYWxPcGVyYXRvcihj
b25zdCBDU1NQYXJzZXJUb2tlbiYgdG9rZW4pCiB7CiAgICAgLy8gRklYTUU6IGl0IHdvdWxkIGJl
IG1vcmUgZWZmaWNpZW50IHRvIHVzZSBsb3dlci1jYXNlIGFsd2F5cyBmb3IgdG9rZW5WYWx1ZS4K
QEAgLTIzOSwyOSArMjYyLDQ1IEBAIHZvaWQgTWVkaWFRdWVyeVBhcnNlcjo6ZG9uZShDU1NQYXJz
ZXJUb2tlblR5cGUgLyp0eXBlKi8sIGNvbnN0IENTU1BhcnNlclRva2VuJiAvCiAKIHZvaWQgTWVk
aWFRdWVyeVBhcnNlcjo6aGFuZGxlQmxvY2tzKGNvbnN0IENTU1BhcnNlclRva2VuJiB0b2tlbikK
IHsKLSAgICBpZiAodG9rZW4uZ2V0QmxvY2tUeXBlKCkgPT0gQ1NTUGFyc2VyVG9rZW46OkJsb2Nr
U3RhcnQKLSAgICAgICAgJiYgKHRva2VuLnR5cGUoKSAhPSBMZWZ0UGFyZW50aGVzaXNUb2tlbiB8
fCBtX2Jsb2NrV2F0Y2hlci5ibG9ja0xldmVsKCkpKQotICAgICAgICAgICAgbV9zdGF0ZSA9IFNr
aXBVbnRpbEJsb2NrRW5kOworICAgIGlmICh0b2tlbi5nZXRCbG9ja1R5cGUoKSAhPSBDU1NQYXJz
ZXJUb2tlbjo6QmxvY2tTdGFydCkKKyAgICAgICAgcmV0dXJuOworICAgIGF1dG8gc2hvdWxkU2tp
cEJsb2NrID0gWyZdIHsKKyAgICAgICAgLy8gRklYTUU6IE5lc3RlZCBibG9ja3Mgc2hvdWxkIGJl
IHN1cHBvcnRlZC4KKyAgICAgICAgaWYgKG1fYmxvY2tXYXRjaGVyLmJsb2NrTGV2ZWwoKSkKKyAg
ICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBpZiAodG9rZW4udHlwZSgpID09IExlZnRQ
YXJlbnRoZXNpc1Rva2VuKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBpZiAo
bV9wYXJzZXJUeXBlID09IENvbnRhaW5lclF1ZXJ5UGFyc2VyICYmIHRva2VuLnR5cGUoKSA9PSBG
dW5jdGlvblRva2VuKQorICAgICAgICAgICAgcmV0dXJuICFlcXVhbExldHRlcnNJZ25vcmluZ0FT
Q0lJQ2FzZSh0b2tlbi52YWx1ZSgpLCAic2l6ZSIpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICB9KCk7CisgICAgaWYgKHNob3VsZFNraXBCbG9jaykKKyAgICAgICAgbV9zdGF0ZSA9IFNraXBV
bnRpbEJsb2NrRW5kOwogfQogCiB2b2lkIE1lZGlhUXVlcnlQYXJzZXI6OnByb2Nlc3NUb2tlbihj
b25zdCBDU1NQYXJzZXJUb2tlbiYgdG9rZW4sIENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQog
ewogICAgIENTU1BhcnNlclRva2VuVHlwZSB0eXBlID0gdG9rZW4udHlwZSgpOwogCi0gICAgaWYg
KG1fc3RhdGUgIT0gUmVhZEZlYXR1cmVWYWx1ZSB8fCB0eXBlID09IFdoaXRlc3BhY2VUb2tlbikg
eworICAgIGlmICh0eXBlID09IFdoaXRlc3BhY2VUb2tlbikgeworICAgICAgICByYW5nZS5jb25z
dW1lKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAobV9zdGF0ZSAhPSBSZWFk
RmVhdHVyZVZhbHVlKSB7CiAgICAgICAgIGhhbmRsZUJsb2Nrcyh0b2tlbik7CiAgICAgICAgIG1f
YmxvY2tXYXRjaGVyLmhhbmRsZVRva2VuKHRva2VuKTsKICAgICAgICAgcmFuZ2UuY29uc3VtZSgp
OwogICAgIH0KIAogICAgIC8vIENhbGwgdGhlIGZ1bmN0aW9uIHRoYXQgaGFuZGxlcyBjdXJyZW50
IHN0YXRlCi0gICAgaWYgKHR5cGUgIT0gV2hpdGVzcGFjZVRva2VuKQotICAgICAgICAoKHRoaXMp
LT4qKG1fc3RhdGUpKSh0eXBlLCB0b2tlbiwgcmFuZ2UpOworICAgICgodGhpcyktPioobV9zdGF0
ZSkpKHR5cGUsIHRva2VuLCByYW5nZSk7CiB9CiAKIC8vIFRoZSBzdGF0ZSBtYWNoaW5lIGxvb3AK
LVJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBNZWRpYVF1ZXJ5UGFyc2VyOjpwYXJzZUludGVybmFsKENT
U1BhcnNlclRva2VuUmFuZ2UgcmFuZ2UpCitSZWZQdHI8TWVkaWFRdWVyeVNldD4gTWVkaWFRdWVy
eVBhcnNlcjo6cGFyc2VJbnRlcm5hbChDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKIHsKKyAg
ICAKICAgICB3aGlsZSAoIXJhbmdlLmF0RW5kKCkpCiAgICAgICAgIHByb2Nlc3NUb2tlbihyYW5n
ZS5wZWVrKCksIHJhbmdlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9NZWRpYVF1ZXJ5UGFyc2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL01lZGlhUXVl
cnlQYXJzZXIuaAppbmRleCA2ZGU4MjNjZDAyYjY2MTRjYWQzZTAwNmU4YjY4ZTAxMGUyZDg1NWNm
Li5lNmMxNWVjMzA2YmY0NzgzYjljN2UzNWZhNTM5NzYxNTI3YzkwM2M5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL01lZGlhUXVlcnlQYXJzZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvcGFyc2VyL01lZGlhUXVlcnlQYXJzZXIuaApAQCAtNDgsMjIgKzQ4LDI1IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgUmVmUHRyPE1lZGlhUXVlcnlTZXQ+IHBhcnNlTWVkaWFRdWVy
eVNldChjb25zdCBTdHJpbmcmLCBNZWRpYVF1ZXJ5UGFyc2VyQ29udGV4dCk7CiAgICAgc3RhdGlj
IFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZU1lZGlhUXVlcnlTZXQoQ1NTUGFyc2VyVG9rZW5S
YW5nZSwgTWVkaWFRdWVyeVBhcnNlckNvbnRleHQpOwogICAgIHN0YXRpYyBSZWZQdHI8TWVkaWFR
dWVyeVNldD4gcGFyc2VNZWRpYUNvbmRpdGlvbihDU1NQYXJzZXJUb2tlblJhbmdlLCBNZWRpYVF1
ZXJ5UGFyc2VyQ29udGV4dCk7CisgICAgc3RhdGljIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJz
ZUNvbnRhaW5lclF1ZXJ5KENTU1BhcnNlclRva2VuUmFuZ2UsIE1lZGlhUXVlcnlQYXJzZXJDb250
ZXh0KTsKIAogcHJpdmF0ZToKICAgICBlbnVtIFBhcnNlclR5cGUgewogICAgICAgICBNZWRpYVF1
ZXJ5U2V0UGFyc2VyLAogICAgICAgICBNZWRpYUNvbmRpdGlvblBhcnNlciwKKyAgICAgICAgQ29u
dGFpbmVyUXVlcnlQYXJzZXIsCiAgICAgfTsKIAogICAgIE1lZGlhUXVlcnlQYXJzZXIoUGFyc2Vy
VHlwZSwgTWVkaWFRdWVyeVBhcnNlckNvbnRleHQpOwogICAgIHZpcnR1YWwgfk1lZGlhUXVlcnlQ
YXJzZXIoKTsKIAotICAgIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZUludGVybmFsKENTU1Bh
cnNlclRva2VuUmFuZ2UpOworICAgIFJlZlB0cjxNZWRpYVF1ZXJ5U2V0PiBwYXJzZUludGVybmFs
KENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIAogICAgIHZvaWQgcHJvY2Vzc1Rva2VuKGNvbnN0IENT
U1BhcnNlclRva2VuJiwgQ1NTUGFyc2VyVG9rZW5SYW5nZSYpOwogCiAgICAgdm9pZCByZWFkUmVz
dHJpY3RvcihDU1NQYXJzZXJUb2tlblR5cGUsIGNvbnN0IENTU1BhcnNlclRva2VuJiwgQ1NTUGFy
c2VyVG9rZW5SYW5nZSYpOwogICAgIHZvaWQgcmVhZE1lZGlhTm90KENTU1BhcnNlclRva2VuVHlw
ZSwgY29uc3QgQ1NTUGFyc2VyVG9rZW4mLCBDU1NQYXJzZXJUb2tlblJhbmdlJik7CisgICAgdm9p
ZCByZWFkQ29udGFpbmVyUXVlcnkoQ1NTUGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJU
b2tlbiYsIENTU1BhcnNlclRva2VuUmFuZ2UmKTsKICAgICB2b2lkIHJlYWRNZWRpYVR5cGUoQ1NT
UGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJUb2tlbiYsIENTU1BhcnNlclRva2VuUmFu
Z2UmKTsKICAgICB2b2lkIHJlYWRBbmQoQ1NTUGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJz
ZXJUb2tlbiYsIENTU1BhcnNlclRva2VuUmFuZ2UmKTsKICAgICB2b2lkIHJlYWRGZWF0dXJlU3Rh
cnQoQ1NTUGFyc2VyVG9rZW5UeXBlLCBjb25zdCBDU1NQYXJzZXJUb2tlbiYsIENTU1BhcnNlclRv
a2VuUmFuZ2UmKTsKQEAgLTEyNCw2ICsxMjcsNyBAQCBwcml2YXRlOgogCiAgICAgY29uc3Qgc3Rh
dGljIFN0YXRlIFJlYWRSZXN0cmljdG9yOwogICAgIGNvbnN0IHN0YXRpYyBTdGF0ZSBSZWFkTWVk
aWFOb3Q7CisgICAgY29uc3Qgc3RhdGljIFN0YXRlIFJlYWRDb250YWluZXJRdWVyeTsKICAgICBj
b25zdCBzdGF0aWMgU3RhdGUgUmVhZE1lZGlhVHlwZTsKICAgICBjb25zdCBzdGF0aWMgU3RhdGUg
UmVhZEFuZDsKICAgICBjb25zdCBzdGF0aWMgU3RhdGUgUmVhZEZlYXR1cmVTdGFydDsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDA1NTI5ZWRjZjZlNjk2NTYwYTI5MTFhMjBlOThj
N2YxNmRhNjQ0MGMuLjBiODk0N2IyMWQxM2M3YjMyY2Q0ZjBmYTAwYjQ2ZWI2MDQyZTE1NmMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIyLTAxLTI3
ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ1NTIENvbnRh
aW5lciBRdWVyaWVzXSBCYXNpYyBwYXJzaW5nIHN1cHBvcnQgZm9yIHF1ZXJ5IHN5bnRheAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM1NzEyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2F0LWNvbnRhaW5lci1wYXJz
aW5nLWV4cGVjdGVkLnR4dDoKKwogMjAyMi0wMS0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBh
cHBsZS5jb20+CiAKICAgICAgICAgUmViYXNlIFdQVCBzdHJlYW1zIHRlc3RzIHVwIHRvIDhkMWRj
NDIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2F0LWNvbnRhaW5lci1wYXJzaW5n
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jb250YWluL2NvbnRhaW5lci1xdWVyaWVzL2F0LWNvbnRhaW5lci1wYXJzaW5n
LWV4cGVjdGVkLnR4dAppbmRleCBlMDE3OGMyZWFkM2YzODEyY2EzZmM3MDM0OWEzMzU2ZTEyYWNj
YTMyLi41MDJiOWY3NjY3M2Y0ZTk2MmE0NjMxOWMzNjEyODU1MGYzMDMwMTIzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY29u
dGFpbi9jb250YWluZXItcXVlcmllcy9hdC1jb250YWluZXItcGFyc2luZy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LWNvbnRhaW4vY29udGFpbmVyLXF1ZXJpZXMvYXQtY29udGFpbmVyLXBhcnNpbmctZXhwZWN0ZWQu
dHh0CkBAIC0zMywxNCArMzMsMTQgQEAgUEFTUyBzaXplKGNvbG9yLWluZGV4ID49IDEpCiBQQVNT
IChjb2xvci1pbmRleCA+PSAxKQogUEFTUyBzaXplKGdyaWQpCiBQQVNTIChncmlkKQotRkFJTCBz
Y3JlZW4gYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgcHJpbnQgYXNz
ZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgbm90IHByaW50IGFzc2VydF9l
cXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAxCi1GQUlMIG9ubHkgcHJpbnQgYXNzZXJ0X2VxdWFs
czogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgc2NyZWVuIGFuZCAod2lkdGg6IDEwMHB4KSBh
c3NlcnRfZXF1YWxzOiBleHBlY3RlZCAwIGJ1dCBnb3QgMQotRkFJTCBzY3JlZW4gb3IgKHdpZHRo
OiAxMDBweCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKLUZBSUwgbm90IHNj
cmVlbiBhbmQgKHdpZHRoOiAxMDBweCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290
IDEKLUZBSUwgbm90IHNjcmVlbiBvciAod2lkdGg6IDEwMHB4KSBhc3NlcnRfZXF1YWxzOiBleHBl
Y3RlZCAwIGJ1dCBnb3QgMQorUEFTUyBzY3JlZW4KK1BBU1MgcHJpbnQKK1BBU1Mgbm90IHByaW50
CitQQVNTIG9ubHkgcHJpbnQKK1BBU1Mgc2NyZWVuIGFuZCAod2lkdGg6IDEwMHB4KQorUEFTUyBz
Y3JlZW4gb3IgKHdpZHRoOiAxMDBweCkKK1BBU1Mgbm90IHNjcmVlbiBhbmQgKHdpZHRoOiAxMDBw
eCkKK1BBU1Mgbm90IHNjcmVlbiBvciAod2lkdGg6IDEwMHB4KQogRkFJTCAod2lkdGg6IDEwMHB4
KSwgKGhlaWdodDogMTAwcHgpIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAxCiBQ
QVNTIENvbnRhaW5lciBzZWxlY3RvcjogIGZvbwogUEFTUyBDb250YWluZXIgc2VsZWN0b3I6ICBm
b28KQEAgLTUyLDkgKzUyLDkgQEAgUEFTUyBDb250YWluZXIgc2VsZWN0b3I6IHR5cGUoaW5saW5l
LXNpemUpCiBQQVNTIENvbnRhaW5lciBzZWxlY3RvcjogdHlwZShibG9jay1zaXplKQogUEFTUyBD
b250YWluZXIgc2VsZWN0b3I6IG5hbWUoYmFyKSB0eXBlKGJsb2NrLXNpemUpCiBQQVNTIENvbnRh
aW5lciBzZWxlY3RvcjogdHlwZShibG9jay1zaXplKSBuYW1lKGJhcikKLUZBSUwgQ29udGFpbmVy
IHNlbGVjdG9yOiBmb28gZm9vIGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0IGdvdCAxCi1G
QUlMIENvbnRhaW5lciBzZWxlY3RvcjogMXB4IGFzc2VydF9lcXVhbHM6IGV4cGVjdGVkIDAgYnV0
IGdvdCAxCi1GQUlMIENvbnRhaW5lciBzZWxlY3RvcjogNTBnaWwgYXNzZXJ0X2VxdWFsczogZXhw
ZWN0ZWQgMCBidXQgZ290IDEKK1BBU1MgQ29udGFpbmVyIHNlbGVjdG9yOiBmb28gZm9vCitQQVNT
IENvbnRhaW5lciBzZWxlY3RvcjogMXB4CitQQVNTIENvbnRhaW5lciBzZWxlY3RvcjogNTBnaWwK
IEZBSUwgQ29udGFpbmVyIHNlbGVjdG9yOiBuYW1lKDFweCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0
ZWQgMCBidXQgZ290IDEKIEZBSUwgQ29udGFpbmVyIHNlbGVjdG9yOiB0eXBlKDFweCkgYXNzZXJ0
X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEKIEZBSUwgQ29udGFpbmVyIHNlbGVjdG9yOiB0
eXBlKHJlZCkgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgMCBidXQgZ290IDEK
</data>

          </attachment>
      

    </bug>

</bugzilla>