<?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>236028</bug_id>
          
          <creation_ts>2022-02-02 10:38:39 -0800</creation_ts>
          <short_desc>Move TransferredMessagePort to its own header</short_desc>
          <delta_ts>2022-02-02 15:27: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>WebCore Misc.</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>235958</blocked>
    
    <blocked>236038</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1836517</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-02-02 10:38:39 -0800</bug_when>
    <thetext>Move TransferredMessagePort to its own header so that Shared Worker cannot doesn&apos;t need to include the whole MessageWithMessagePorts.h header.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836522</commentid>
    <comment_count>1</comment_count>
      <attachid>450672</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-02-02 10:44:09 -0800</bug_when>
    <thetext>Created attachment 450672
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836525</commentid>
    <comment_count>2</comment_count>
      <attachid>450673</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-02-02 10:47:30 -0800</bug_when>
    <thetext>Created attachment 450673
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836551</commentid>
    <comment_count>3</comment_count>
      <attachid>450673</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2022-02-02 11:31:47 -0800</bug_when>
    <thetext>Comment on attachment 450673
Patch

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

r=me

&gt; Source/WebCore/ChangeLog:8
&gt; +        Move TransferredMessagePort to its own header so that Shared Worker cannot doesn&apos;t need to include the whole MessageWithMessagePorts.h header.

cannot doesn&apos;t =&gt; doesn&apos;t</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836567</commentid>
    <comment_count>4</comment_count>
      <attachid>450685</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-02-02 11:55:21 -0800</bug_when>
    <thetext>Created attachment 450685
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836658</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-02 15:26:55 -0800</bug_when>
    <thetext>Committed r289000 (246718@main): &lt;https://commits.webkit.org/246718@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 450685.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836660</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-02 15:27:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/88404474&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450672</attachid>
            <date>2022-02-02 10:44:09 -0800</date>
            <delta_ts>2022-02-02 10:47:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236028-20220202104409.patch</filename>
            <type>text/plain</type>
            <size>16937</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI4ODgxMjc0ZTM4NGYy
ZWUxYzExNmIzZmQ3ODhkOGE3NzYwNmU4Yi4uNDNiMzAxZTg0ODFlZTUwZTFmNjAxYzFjNGZiZTc2
Zjg5YzAxN2IzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIyLTAyLTAyICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBUcmFuc2ZlcnJlZE1l
c3NhZ2VQb3J0IHRvIGl0cyBvd24gaGVhZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzYwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNb3ZlIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgdG8gaXRzIG93
biBoZWFkZXIgc28gdGhhdCBTaGFyZWQgV29ya2VyIGNhbm5vdCBkb2Vzbid0IG5lZWQgdG8gaW5j
bHVkZSB0aGUgd2hvbGUgTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaCBoZWFkZXIuCisgICAgICAg
IEl0IGFsc28gZmFjaWxpdGF0ZXMgcGFzc2luZyBhIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgaW4g
SVBDLCB3aGljaCB3aWxsIGJlIG5lZWRlZC4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGRv
bS9NZXNzYWdlUG9ydC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZXNzYWdlUG9ydDo6cG9zdE1l
c3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnQ6OmRpc2VudGFuZ2xlUG9ydHMp
OgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnQ6OmVudGFuZ2xlUG9ydHMpOgorICAgICAg
ICAqIGRvbS9NZXNzYWdlUG9ydC5oOgorICAgICAgICAqIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2Fn
ZVdpdGhNZXNzYWdlUG9ydHMuaDoKKyAgICAgICAgKiBkb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVy
cmVkTWVzc2FnZVBvcnQuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvZG9tL21lc3NhZ2Vw
b3J0cy9NZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oLgorCiAyMDIyLTAyLTAyICBHYWJyaWVsIE5h
dmEgTWFyaW5vICA8Z25hdmFtYXJpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIG51bGwgcHRyIGRl
cmVmIGluIEVkaXRvcjo6cGFzdGVXaXRoUGFzdGVib2FyZApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXgg
ODliODJhMTNmN2U0ZDYxNGE0NWMxYTdmZmNjYTcwOTU1OGJlYjMwOC4uYTViNzkzOWRiYzY4ODll
MTM3Y2RlZjA3NzUxYTVmMmI3OTRjNzE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC03MzgsNiAr
NzM4LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGRvbS9t
ZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuaAogICAgIGRvbS9tZXNzYWdl
cG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUmVnaXN0cnkuaAogICAgIGRvbS9tZXNzYWdlcG9ydHMv
TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaAorICAgIGRvbS9tZXNzYWdlcG9ydHMvVHJhbnNmZXJy
ZWRNZXNzYWdlUG9ydC5oCiAKICAgICBlZGl0aW5nL0NoYXJhY3RlclJhbmdlLmgKICAgICBlZGl0
aW5nL0NsaXBib2FyZEFjY2Vzc1BvbGljeS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGY2NmNjZjhmMDZh
NTc5MTlkOGE0ZWEwZGMwZDA4OTAwMTY1NDU1NjcuLmI0NjQ2NTg0ODQ4OWRhMThkOWEwNmNhYzdj
MDk4ZmM0YjQ1NmQwMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0xMDc3LDcgKzEwNzcsNiBAQCBkb20v
bWVzc2FnZXBvcnRzL01lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAKIGRvbS9tZXNzYWdlcG9ydHMvTWVz
c2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3BwCiBkb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VQb3J0
Q2hhbm5lbFByb3ZpZGVySW1wbC5jcHAKIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFu
bmVsUmVnaXN0cnkuY3BwCi1kb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRz
LmNwcAogZG9tL21lc3NhZ2Vwb3J0cy9Xb3JrZXJNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5j
cHAKIGRvbWppdC9ET01KSVRIZWxwZXJzLmNwcAogZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3Bw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggYmZhYzg2ZTdkYzFiZWY4NDY3NTAxOTRkNWU0ZmE0MjhkZDYzNTc2Yy4uYmMwMzFlNmIw
ODhmMTIzMTIzMjJjN2NkNjQ1Y2VhZWU2ZTU0MTJjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTM3NCw2ICsxMzc0LDcgQEAK
IAkJNDZDODNFRkUxQTlCQkUyOTAwQTc5QTQxIC8qIEdlb05vdGlmaWVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkM4M0VGQzFBOUJCRTI5MDBBNzlB
NDEgLyogR2VvTm90aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk0NkNBOUM0NDFGOTdCQkU5MDA0Q0ZDM0EgLyogVmlzaWJpbGl0eVN0YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkNBOUM0
MTFGOTdCQkU3MDA0Q0ZDM0EgLyogVmlzaWJpbGl0eVN0YXRlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDZEMDAwNDAyNkEwRkVCMzAwRDFCRjFF
IC8qIFN1Ym1pdEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NkQwMDAzRTI2QTBGRTZGMDBEMUJGMUUgLyogU3VibWl0RXZlbnQuaCAqLzsgfTsK
KwkJNDZEQTRBMDIyN0FCMDM5MzAwRTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2REE0QTAwMjdB
QjAzOEQwMEUzNzVBOCAvKiBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDZEQkI2NTAxQUI4Qzk2RjAwRDlB
ODEzIC8qIFBvd2VyT2JzZXJ2ZXJNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ2REJCNjRFMUFCOEM5NkYwMEQ5QTgxMyAvKiBQb3dlck9ic2VydmVy
TWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
NDZERDkzRDcyNjlERTc1NjAwMUFGRDg4IC8qIEJyb2FkY2FzdENoYW5uZWxJZGVudGlmaWVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkREOTNENTI2
OURFNzRCMDAxQUZEODggLyogQnJvYWRjYXN0Q2hhbm5lbElkZW50aWZpZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0NkRFOUJCNTI2OURGOTNF
MDAyNEM1QTYgLyogQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyog
QnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyOTcsNiArOTI5OCw3IEBACiAJCTQ2RDAwMDNDMjZBMEZF
NkYwMEQxQkYxRSAvKiBTdWJtaXRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTdWJtaXRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTQ2RDAwMDNFMjZBMEZFNkYwMEQxQkYxRSAvKiBTdWJtaXRFdmVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdWJtaXRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0NkQwMDAzRjI2QTBGRTcwMDBEMUJGMUUgLyogU3VibWl0RXZlbnQuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFN1Ym1pdEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDZEQTRBMDAyN0FCMDM4RDAwRTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBv
cnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0NkRCQjY0RTFBQjhDOTZGMDBEOUE4MTMgLyogUG93ZXJPYnNl
cnZlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQb3dlck9ic2VydmVy
TWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2REQ5M0Q1MjY5REU3NEIwMDFB
RkQ4OCAvKiBCcm9hZGNhc3RDaGFubmVsSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCcm9h
ZGNhc3RDaGFubmVsSWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyogQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEJyb2FkY2FzdENoYW5uZWxSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtOTg3MSw3ICs5ODczLDYgQEAKIAkJNTFBNEJCMEUxOTU0RDYyNzAwRkE1
QzJFIC8qIE5hdmlnYXRvckdhbWVwYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTmF2aWdhdG9yR2FtZXBhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUE0
QkIwRjE5NTRENjI3MDBGQTVDMkUgLyogTmF2aWdhdG9yK0dhbWVwYWQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9ICJOYXZpZ2F0b3IrR2FtZXBhZC5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1MUE3NDhFMDIwMDVEMEUwMDA3NUJBNjggLyogTWVzc2FnZVdpdGhNZXNzYWdl
UG9ydHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVzc2FnZVdpdGhNZXNz
YWdlUG9ydHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTFBNzQ4RTEyMDA1RDBF
MDAwNzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFBNzQ4RTQyMDA2MDAyMTAwNzVCQTY4IC8qIE1lc3Nh
Z2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlckltcGwuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1MUE3NDhFNTIwMDYwMDIxMDA3NUJBNjggLyogTWVzc2FnZVBv
cnRDaGFubmVsUHJvdmlkZXJJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1MUE5RDlFNzE5NUI5MzFGMDAxQjJCNUMgLyogR2FtZXBhZE1hbmFnZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2FtZXBhZE1hbmFnZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjIzNjIsOCArMjIzNjMsOCBAQAogCQkJCTUx
QTc0OEU1MjAwNjAwMjEwMDc1QkE2OCAvKiBNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlckltcGwu
aCAqLywKIAkJCQk1MUVDQzNGNTIwMDU4N0I3MDA0ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVs
UmVnaXN0cnkuY3BwICovLAogCQkJCTUxRUNDM0YxMjAwNTg3QjUwMDQ4M0VBRSAvKiBNZXNzYWdl
UG9ydENoYW5uZWxSZWdpc3RyeS5oICovLAotCQkJCTUxQTc0OEUxMjAwNUQwRTAwMDc1QkE2OCAv
KiBNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5jcHAgKi8sCiAJCQkJNTFBNzQ4RTAyMDA1RDBFMDAw
NzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmggKi8sCisJCQkJNDZEQTRBMDAyN0FC
MDM4RDAwRTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCAqLywKIAkJCQk0MTExNEE3
QzIzMTdCMzlFMDBCNTYwMDcgLyogV29ya2VyTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3Bw
ICovLAogCQkJCTQxMTE0QTdBMjMxN0IzOUUwMEI1NjAwNyAvKiBXb3JrZXJNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlci5oICovLAogCQkJKTsKQEAgLTM3NjkyLDYgKzM3NjkzLDcgQEAKIAkJCQlG
RkFDMzBGRTE4NEZCMTQ1MDA4QzRGMUUgLyogVHJhaWxpbmdPYmplY3RzLmggaW4gSGVhZGVycyAq
LywKIAkJCQk1MTYwNzEzMjFCRDgzMDhCMDBEQkM0RjIgLyogVHJhbnNhY3Rpb25PcGVyYXRpb24u
aCBpbiBIZWFkZXJzICovLAogCQkJCUNEM0VFRjQxMjU3OTlGRDkwMDY1NjNCQiAvKiBUcmFuc2Zl
ckZ1bmN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkRBNEEwMjI3QUIwMzkzMDBFMzc1QTgg
LyogVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDlFOTExQzQw
RUY4NkQ0NzAwOUQwQ0FGIC8qIFRyYW5zZm9ybWF0aW9uTWF0cml4LmggaW4gSGVhZGVycyAqLywK
IAkJCQlGQjQ4NEY0RDE3MUY4MjFFMDAwNDA3NTUgLyogVHJhbnNmb3JtRnVuY3Rpb25zLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OUU5MTFDRTBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtT3Bl
cmF0aW9uLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9N
ZXNzYWdlUG9ydC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZVBvcnQuY3BwCmluZGV4
IGY3ZjIxN2Q4MzEyMTA5NTM1MjVjYmViN2QzYjUzNTFmODAxMzM2NjIuLjE3N2Y4ZTQzZDQ1OGQ0
OWViZjEyYWFiZjY1MzQwYjk5NTU3NDE4YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NZXNzYWdlUG9ydC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VQb3J0LmNw
cApAQCAtMTQ5LDcgKzE0OSw3IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IE1lc3NhZ2VQb3J0Ojpwb3N0
TWVzc2FnZShKU0M6OkpTR2xvYmFsT2JqZWN0JiBzdGF0ZSwgSlNDOjpKU1ZhCiAgICAgICAgIHJl
dHVybiB7IH07CiAgICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAKLSAgICBU
cmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJyYXkgdHJhbnNmZXJyZWRQb3J0czsKKyAgICBWZWN0b3I8
VHJhbnNmZXJyZWRNZXNzYWdlUG9ydD4gdHJhbnNmZXJyZWRQb3J0czsKICAgICAvLyBNYWtlIHN1
cmUgd2UgYXJlbid0IGNvbm5lY3RlZCB0byBhbnkgb2YgdGhlIHBhc3NlZC1pbiBwb3J0cy4KICAg
ICBpZiAoIXBvcnRzLmlzRW1wdHkoKSkgewogICAgICAgICBmb3IgKGF1dG8mIHBvcnQgOiBwb3J0
cykgewpAQCAtMzczLDEwICszNzMsMTAgQEAgTWVzc2FnZVBvcnQqIE1lc3NhZ2VQb3J0Ojpsb2Nh
bGx5RW50YW5nbGVkUG9ydCgpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUV4Y2Vw
dGlvbk9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnRBcnJheT4gTWVzc2FnZVBvcnQ6OmRpc2VudGFu
Z2xlUG9ydHMoVmVjdG9yPFJlZlB0cjxNZXNzYWdlUG9ydD4+JiYgcG9ydHMpCitFeGNlcHRpb25P
cjxWZWN0b3I8VHJhbnNmZXJyZWRNZXNzYWdlUG9ydD4+IE1lc3NhZ2VQb3J0OjpkaXNlbnRhbmds
ZVBvcnRzKFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiYmIHBvcnRzKQogewogICAgIGlmIChw
b3J0cy5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJy
YXkgeyB9OworICAgICAgICByZXR1cm4gVmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+IHsg
fTsKIAogICAgIC8vIFdhbGsgdGhlIGluY29taW5nIGFycmF5IC0gaWYgdGhlcmUgYXJlIGFueSBk
dXBsaWNhdGUgcG9ydHMsIG9yIG51bGwgcG9ydHMgb3IgY2xvbmVkIHBvcnRzLCB0aHJvdyBhbiBl
cnJvciAocGVyIHNlY3Rpb24gOC4zLjMgb2YgdGhlIEhUTUw1IHNwZWMpLgogICAgIEhhc2hTZXQ8
TWVzc2FnZVBvcnQqPiBwb3J0U2V0OwpAQCAtMzg2LDI2ICszODYsMjEgQEAgRXhjZXB0aW9uT3I8
VHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5PiBNZXNzYWdlUG9ydDo6ZGlzZW50YW5nbGVQb3J0
cyhWZWN0b3I8UmUKICAgICB9CiAKICAgICAvLyBQYXNzZWQtaW4gcG9ydHMgcGFzc2VkIHZhbGlk
aXR5IGNoZWNrcywgc28gd2UgY2FuIGRpc2VudGFuZ2xlIHRoZW0uCi0gICAgVHJhbnNmZXJyZWRN
ZXNzYWdlUG9ydEFycmF5IHBvcnRBcnJheTsKLSAgICBwb3J0QXJyYXkucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShwb3J0cy5zaXplKCkpOwotICAgIGZvciAoYXV0byYgcG9ydCA6IHBvcnRzKQotICAg
ICAgICBwb3J0QXJyYXkudW5jaGVja2VkQXBwZW5kKHBvcnQtPmRpc2VudGFuZ2xlKCkpOwotCi0g
ICAgcmV0dXJuIHBvcnRBcnJheTsKKyAgICByZXR1cm4gV1RGOjptYXAocG9ydHMsIFtdKGF1dG8m
IHBvcnQpIHsKKyAgICAgICAgcmV0dXJuIHBvcnQtPmRpc2VudGFuZ2xlKCk7CisgICAgfSk7CiB9
CiAKLVZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBNZXNzYWdlUG9ydDo6ZW50YW5nbGVQb3J0
cyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0
QXJyYXkmJiB0cmFuc2ZlcnJlZFBvcnRzKQorVmVjdG9yPFJlZlB0cjxNZXNzYWdlUG9ydD4+IE1l
c3NhZ2VQb3J0OjplbnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQs
IFZlY3RvcjxUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0PiYmIHRyYW5zZmVycmVkUG9ydHMpCiB7CiAg
ICAgTE9HKE1lc3NhZ2VQb3J0cywgIkVudGFuZ2xpbmcgJXp1IHRyYW5zZmVycmVkIHBvcnRzIHRv
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgJXMgKCVwKSIsIHRyYW5zZmVycmVkUG9ydHMuc2l6ZSgp
LCBjb250ZXh0LnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksICZjb250ZXh0KTsKIAogICAg
IGlmICh0cmFuc2ZlcnJlZFBvcnRzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAot
ICAgIFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBwb3J0czsKLSAgICBwb3J0cy5yZXNlcnZl
SW5pdGlhbENhcGFjaXR5KHRyYW5zZmVycmVkUG9ydHMuc2l6ZSgpKTsKLSAgICBmb3IgKGF1dG8m
IHRyYW5zZmVycmVkUG9ydCA6IHRyYW5zZmVycmVkUG9ydHMpCi0gICAgICAgIHBvcnRzLnVuY2hl
Y2tlZEFwcGVuZChNZXNzYWdlUG9ydDo6ZW50YW5nbGUoY29udGV4dCwgV1RGTW92ZSh0cmFuc2Zl
cnJlZFBvcnQpKSk7Ci0gICAgcmV0dXJuIHBvcnRzOworICAgIHJldHVybiBXVEY6Om1hcCh0cmFu
c2ZlcnJlZFBvcnRzLCBbJl0oYXV0byYgcG9ydCkgLT4gUmVmUHRyPE1lc3NhZ2VQb3J0PiB7Cisg
ICAgICAgIHJldHVybiBNZXNzYWdlUG9ydDo6ZW50YW5nbGUoY29udGV4dCwgV1RGTW92ZShwb3J0
KSk7CisgICAgfSk7CiB9CiAKIFJlZjxNZXNzYWdlUG9ydD4gTWVzc2FnZVBvcnQ6OmVudGFuZ2xl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQm
JiB0cmFuc2ZlcnJlZFBvcnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2Fn
ZVBvcnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5oCmluZGV4IDJhMTU4ZTcz
ODA5MTk0M2UyMjFmN2FhZGNlNjljZjY5MzRlNTQzMTIuLjNjNmRjN2Y2Y2IyMjkwZWMzYzMxYTg1
M2RjN2IwMDE4NTY2YWIxOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdl
UG9ydC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5oCkBAIC02MCw4ICs2
MCw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGVudGFuZ2xlKCk7CiAKICAgICAvLyBSZXR1cm5zIG51
bGxwdHIgaWYgdGhlIHBhc3NlZC1pbiB2ZWN0b3IgaXMgZW1wdHkuCi0gICAgc3RhdGljIEV4Y2Vw
dGlvbk9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnRBcnJheT4gZGlzZW50YW5nbGVQb3J0cyhWZWN0
b3I8UmVmUHRyPE1lc3NhZ2VQb3J0Pj4mJik7Ci0gICAgc3RhdGljIFZlY3RvcjxSZWZQdHI8TWVz
c2FnZVBvcnQ+PiBlbnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBUcmFuc2Zl
cnJlZE1lc3NhZ2VQb3J0QXJyYXkmJik7CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPFZlY3RvcjxU
cmFuc2ZlcnJlZE1lc3NhZ2VQb3J0Pj4gZGlzZW50YW5nbGVQb3J0cyhWZWN0b3I8UmVmUHRyPE1l
c3NhZ2VQb3J0Pj4mJik7CisgICAgc3RhdGljIFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBl
bnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBWZWN0b3I8VHJhbnNmZXJyZWRN
ZXNzYWdlUG9ydD4mJik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgYm9vbCBpc0V4aXN0
aW5nTWVzc2FnZVBvcnRMb2NhbGx5UmVhY2hhYmxlKGNvbnN0IE1lc3NhZ2VQb3J0SWRlbnRpZmll
ciYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIG5vdGlmeU1lc3NhZ2VBdmFpbGFi
bGUoY29uc3QgTWVzc2FnZVBvcnRJZGVudGlmaWVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuY3BwCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YmVlMWE4Y2MwMWE1YzJlZmE1YTc1NzliM2Ux
ODIzMzc0NjRmZWE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9y
dHMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oIgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9y
dHMuaAppbmRleCBkNDVmNzYzNGM2MThiMDk3MGI5OGRhOGMyZjQ5NzI2YjliOTAxOTZlLi5jMWRi
MDcwYWE0MGVmM2EyMWZiZGE0ZTgwOGIyZGQ2ZDgxZDIzOWJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL21lc3NhZ2Vwb3J0cy9NZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5o
CkBAIC0yNSwyMCArMjUsMTUgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJNZXNzYWdl
UG9ydElkZW50aWZpZXIuaCIKICNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKKyNp
bmNsdWRlICJUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0LmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLS8vIFdoZW4gYSBtZXNzYWdlIHBvcnQgaXMgdHJh
bnNmZXJyZWQsIGl0IGlzIHJlcHJlc2VudGVkIGJ5IGEgcGFpciBvZiBpZGVudGlmaWVycy4KLS8v
IFRoZSBmaXJzdCBpZGVudGlmaWVyIGlzIHRoZSBwb3J0IGJlaW5nIHRyYW5zZmVycmVkIGFuZCB0
aGUgc2Vjb25kIGlzIGl0cyByZW1vdGUgcG9ydC4KLXVzaW5nIFRyYW5zZmVycmVkTWVzc2FnZVBv
cnQgPSBzdGQ6OnBhaXI8V2ViQ29yZTo6TWVzc2FnZVBvcnRJZGVudGlmaWVyLCBXZWJDb3JlOjpN
ZXNzYWdlUG9ydElkZW50aWZpZXI+OwotdXNpbmcgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5
ID0gVmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+OwotCiBzdHJ1Y3QgTWVzc2FnZVdpdGhN
ZXNzYWdlUG9ydHMgewogICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1lc3NhZ2U7
Ci0gICAgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5IHRyYW5zZmVycmVkUG9ydHM7CisgICAg
VmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+IHRyYW5zZmVycmVkUG9ydHM7CiAKICAgICB0
ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7CiAgICAg
dGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIHN0ZDo6b3B0aW9uYWw8TWVzc2FnZVdpdGhN
ZXNzYWdlUG9ydHM+IGRlY29kZShEZWNvZGVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9tZXNzYWdlcG9ydHMvVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjhhM2U0NTU4YTYyZGU1OGRkZmU0NTg0ODQyZDM3MmQwMmM1Nzk3NTEKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVycmVkTWVzc2FnZVBv
cnQuaApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxOC0yMDIyIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpbmNsdWRlICJNZXNzYWdlUG9ydElkZW50aWZpZXIuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCisvLyBXaGVuIGEgbWVzc2FnZSBwb3J0IGlzIHRyYW5zZmVycmVkLCBpdCBpcyByZXByZXNl
bnRlZCBieSBhIHBhaXIgb2YgaWRlbnRpZmllcnMuCisvLyBUaGUgZmlyc3QgaWRlbnRpZmllciBp
cyB0aGUgcG9ydCBiZWluZyB0cmFuc2ZlcnJlZCBhbmQgdGhlIHNlY29uZCBpcyBpdHMgcmVtb3Rl
IHBvcnQuCit1c2luZyBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0ID0gc3RkOjpwYWlyPE1lc3NhZ2VQ
b3J0SWRlbnRpZmllciwgTWVzc2FnZVBvcnRJZGVudGlmaWVyPjsKKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450673</attachid>
            <date>2022-02-02 10:47:30 -0800</date>
            <delta_ts>2022-02-02 11:55:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236028-20220202104729.patch</filename>
            <type>text/plain</type>
            <size>16936</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTI4ODgxMjc0ZTM4NGYy
ZWUxYzExNmIzZmQ3ODhkOGE3NzYwNmU4Yi4uNDNiMzAxZTg0ODFlZTUwZTFmNjAxYzFjNGZiZTc2
Zjg5YzAxN2IzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIyLTAyLTAyICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBUcmFuc2ZlcnJlZE1l
c3NhZ2VQb3J0IHRvIGl0cyBvd24gaGVhZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzYwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBNb3ZlIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgdG8gaXRzIG93
biBoZWFkZXIgc28gdGhhdCBTaGFyZWQgV29ya2VyIGNhbm5vdCBkb2Vzbid0IG5lZWQgdG8gaW5j
bHVkZSB0aGUgd2hvbGUgTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaCBoZWFkZXIuCisgICAgICAg
IEl0IGFsc28gZmFjaWxpdGF0ZXMgcGFzc2luZyBhIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgaW4g
SVBDLCB3aGljaCB3aWxsIGJlIG5lZWRlZC4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6Cisg
ICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGRv
bS9NZXNzYWdlUG9ydC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZXNzYWdlUG9ydDo6cG9zdE1l
c3NhZ2UpOgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnQ6OmRpc2VudGFuZ2xlUG9ydHMp
OgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnQ6OmVudGFuZ2xlUG9ydHMpOgorICAgICAg
ICAqIGRvbS9NZXNzYWdlUG9ydC5oOgorICAgICAgICAqIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2Fn
ZVdpdGhNZXNzYWdlUG9ydHMuaDoKKyAgICAgICAgKiBkb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVy
cmVkTWVzc2FnZVBvcnQuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvZG9tL21lc3NhZ2Vw
b3J0cy9NZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oLgorCiAyMDIyLTAyLTAyICBHYWJyaWVsIE5h
dmEgTWFyaW5vICA8Z25hdmFtYXJpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIG51bGwgcHRyIGRl
cmVmIGluIEVkaXRvcjo6cGFzdGVXaXRoUGFzdGVib2FyZApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXgg
ODliODJhMTNmN2U0ZDYxNGE0NWMxYTdmZmNjYTcwOTU1OGJlYjMwOC4uYTViNzkzOWRiYzY4ODll
MTM3Y2RlZjA3NzUxYTVmMmI3OTRjNzE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC03MzgsNiAr
NzM4LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGRvbS9t
ZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuaAogICAgIGRvbS9tZXNzYWdl
cG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUmVnaXN0cnkuaAogICAgIGRvbS9tZXNzYWdlcG9ydHMv
TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaAorICAgIGRvbS9tZXNzYWdlcG9ydHMvVHJhbnNmZXJy
ZWRNZXNzYWdlUG9ydC5oCiAKICAgICBlZGl0aW5nL0NoYXJhY3RlclJhbmdlLmgKICAgICBlZGl0
aW5nL0NsaXBib2FyZEFjY2Vzc1BvbGljeS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CmluZGV4IGY2NmNjZjhmMDZh
NTc5MTlkOGE0ZWEwZGMwZDA4OTAwMTY1NDU1NjcuLmI0NjQ2NTg0ODQ4OWRhMThkOWEwNmNhYzdj
MDk4ZmM0YjQ1NmQwMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CkBAIC0xMDc3LDcgKzEwNzcsNiBAQCBkb20v
bWVzc2FnZXBvcnRzL01lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAKIGRvbS9tZXNzYWdlcG9ydHMvTWVz
c2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3BwCiBkb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VQb3J0
Q2hhbm5lbFByb3ZpZGVySW1wbC5jcHAKIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFu
bmVsUmVnaXN0cnkuY3BwCi1kb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRz
LmNwcAogZG9tL21lc3NhZ2Vwb3J0cy9Xb3JrZXJNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5j
cHAKIGRvbWppdC9ET01KSVRIZWxwZXJzLmNwcAogZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3Bw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggYmZhYzg2ZTdkYzFiZWY4NDY3NTAxOTRkNWU0ZmE0MjhkZDYzNTc2Yy4uYmMwMzFlNmIw
ODhmMTIzMTIzMjJjN2NkNjQ1Y2VhZWU2ZTU0MTJjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTM3NCw2ICsxMzc0LDcgQEAK
IAkJNDZDODNFRkUxQTlCQkUyOTAwQTc5QTQxIC8qIEdlb05vdGlmaWVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkM4M0VGQzFBOUJCRTI5MDBBNzlB
NDEgLyogR2VvTm90aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk0NkNBOUM0NDFGOTdCQkU5MDA0Q0ZDM0EgLyogVmlzaWJpbGl0eVN0YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkNBOUM0
MTFGOTdCQkU3MDA0Q0ZDM0EgLyogVmlzaWJpbGl0eVN0YXRlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDZEMDAwNDAyNkEwRkVCMzAwRDFCRjFF
IC8qIFN1Ym1pdEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NkQwMDAzRTI2QTBGRTZGMDBEMUJGMUUgLyogU3VibWl0RXZlbnQuaCAqLzsgfTsK
KwkJNDZEQTRBMDIyN0FCMDM5MzAwRTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2REE0QTAwMjdB
QjAzOEQwMEUzNzVBOCAvKiBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDZEQkI2NTAxQUI4Qzk2RjAwRDlB
ODEzIC8qIFBvd2VyT2JzZXJ2ZXJNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ2REJCNjRFMUFCOEM5NkYwMEQ5QTgxMyAvKiBQb3dlck9ic2VydmVy
TWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
NDZERDkzRDcyNjlERTc1NjAwMUFGRDg4IC8qIEJyb2FkY2FzdENoYW5uZWxJZGVudGlmaWVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkREOTNENTI2
OURFNzRCMDAxQUZEODggLyogQnJvYWRjYXN0Q2hhbm5lbElkZW50aWZpZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0NkRFOUJCNTI2OURGOTNF
MDAyNEM1QTYgLyogQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyog
QnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyOTcsNiArOTI5OCw3IEBACiAJCTQ2RDAwMDNDMjZBMEZF
NkYwMEQxQkYxRSAvKiBTdWJtaXRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTdWJtaXRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTQ2RDAwMDNFMjZBMEZFNkYwMEQxQkYxRSAvKiBTdWJtaXRFdmVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdWJtaXRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0NkQwMDAzRjI2QTBGRTcwMDBEMUJGMUUgLyogU3VibWl0RXZlbnQuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFN1Ym1pdEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDZEQTRBMDAyN0FCMDM4RDAwRTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBv
cnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0NkRCQjY0RTFBQjhDOTZGMDBEOUE4MTMgLyogUG93ZXJPYnNl
cnZlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQb3dlck9ic2VydmVy
TWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2REQ5M0Q1MjY5REU3NEIwMDFB
RkQ4OCAvKiBCcm9hZGNhc3RDaGFubmVsSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCcm9h
ZGNhc3RDaGFubmVsSWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyogQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEJyb2FkY2FzdENoYW5uZWxSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtOTg3MSw3ICs5ODczLDYgQEAKIAkJNTFBNEJCMEUxOTU0RDYyNzAwRkE1
QzJFIC8qIE5hdmlnYXRvckdhbWVwYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTmF2aWdhdG9yR2FtZXBhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUE0
QkIwRjE5NTRENjI3MDBGQTVDMkUgLyogTmF2aWdhdG9yK0dhbWVwYWQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9ICJOYXZpZ2F0b3IrR2FtZXBhZC5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1MUE3NDhFMDIwMDVEMEUwMDA3NUJBNjggLyogTWVzc2FnZVdpdGhNZXNzYWdl
UG9ydHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVzc2FnZVdpdGhNZXNz
YWdlUG9ydHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNTFBNzQ4RTEyMDA1RDBF
MDAwNzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFBNzQ4RTQyMDA2MDAyMTAwNzVCQTY4IC8qIE1lc3Nh
Z2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlckltcGwuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1MUE3NDhFNTIwMDYwMDIxMDA3NUJBNjggLyogTWVzc2FnZVBv
cnRDaGFubmVsUHJvdmlkZXJJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1MUE5RDlFNzE5NUI5MzFGMDAxQjJCNUMgLyogR2FtZXBhZE1hbmFnZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2FtZXBhZE1hbmFnZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjIzNjIsOCArMjIzNjMsOCBAQAogCQkJCTUx
QTc0OEU1MjAwNjAwMjEwMDc1QkE2OCAvKiBNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlckltcGwu
aCAqLywKIAkJCQk1MUVDQzNGNTIwMDU4N0I3MDA0ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVs
UmVnaXN0cnkuY3BwICovLAogCQkJCTUxRUNDM0YxMjAwNTg3QjUwMDQ4M0VBRSAvKiBNZXNzYWdl
UG9ydENoYW5uZWxSZWdpc3RyeS5oICovLAotCQkJCTUxQTc0OEUxMjAwNUQwRTAwMDc1QkE2OCAv
KiBNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5jcHAgKi8sCiAJCQkJNTFBNzQ4RTAyMDA1RDBFMDAw
NzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmggKi8sCisJCQkJNDZEQTRBMDAyN0FC
MDM4RDAwRTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCAqLywKIAkJCQk0MTExNEE3
QzIzMTdCMzlFMDBCNTYwMDcgLyogV29ya2VyTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3Bw
ICovLAogCQkJCTQxMTE0QTdBMjMxN0IzOUUwMEI1NjAwNyAvKiBXb3JrZXJNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlci5oICovLAogCQkJKTsKQEAgLTM3NjkyLDYgKzM3NjkzLDcgQEAKIAkJCQlG
RkFDMzBGRTE4NEZCMTQ1MDA4QzRGMUUgLyogVHJhaWxpbmdPYmplY3RzLmggaW4gSGVhZGVycyAq
LywKIAkJCQk1MTYwNzEzMjFCRDgzMDhCMDBEQkM0RjIgLyogVHJhbnNhY3Rpb25PcGVyYXRpb24u
aCBpbiBIZWFkZXJzICovLAogCQkJCUNEM0VFRjQxMjU3OTlGRDkwMDY1NjNCQiAvKiBUcmFuc2Zl
ckZ1bmN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkRBNEEwMjI3QUIwMzkzMDBFMzc1QTgg
LyogVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDlFOTExQzQw
RUY4NkQ0NzAwOUQwQ0FGIC8qIFRyYW5zZm9ybWF0aW9uTWF0cml4LmggaW4gSGVhZGVycyAqLywK
IAkJCQlGQjQ4NEY0RDE3MUY4MjFFMDAwNDA3NTUgLyogVHJhbnNmb3JtRnVuY3Rpb25zLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OUU5MTFDRTBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtT3Bl
cmF0aW9uLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9N
ZXNzYWdlUG9ydC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZVBvcnQuY3BwCmluZGV4
IGY3ZjIxN2Q4MzEyMTA5NTM1MjVjYmViN2QzYjUzNTFmODAxMzM2NjIuLjE3N2Y4ZTQzZDQ1OGQ0
OWViZjEyYWFiZjY1MzQwYjk5NTU3NDE4YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NZXNzYWdlUG9ydC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VQb3J0LmNw
cApAQCAtMTQ5LDcgKzE0OSw3IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IE1lc3NhZ2VQb3J0Ojpwb3N0
TWVzc2FnZShKU0M6OkpTR2xvYmFsT2JqZWN0JiBzdGF0ZSwgSlNDOjpKU1ZhCiAgICAgICAgIHJl
dHVybiB7IH07CiAgICAgQVNTRVJUKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAKLSAgICBU
cmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJyYXkgdHJhbnNmZXJyZWRQb3J0czsKKyAgICBWZWN0b3I8
VHJhbnNmZXJyZWRNZXNzYWdlUG9ydD4gdHJhbnNmZXJyZWRQb3J0czsKICAgICAvLyBNYWtlIHN1
cmUgd2UgYXJlbid0IGNvbm5lY3RlZCB0byBhbnkgb2YgdGhlIHBhc3NlZC1pbiBwb3J0cy4KICAg
ICBpZiAoIXBvcnRzLmlzRW1wdHkoKSkgewogICAgICAgICBmb3IgKGF1dG8mIHBvcnQgOiBwb3J0
cykgewpAQCAtMzczLDEwICszNzMsMTAgQEAgTWVzc2FnZVBvcnQqIE1lc3NhZ2VQb3J0Ojpsb2Nh
bGx5RW50YW5nbGVkUG9ydCgpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUV4Y2Vw
dGlvbk9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnRBcnJheT4gTWVzc2FnZVBvcnQ6OmRpc2VudGFu
Z2xlUG9ydHMoVmVjdG9yPFJlZlB0cjxNZXNzYWdlUG9ydD4+JiYgcG9ydHMpCitFeGNlcHRpb25P
cjxWZWN0b3I8VHJhbnNmZXJyZWRNZXNzYWdlUG9ydD4+IE1lc3NhZ2VQb3J0OjpkaXNlbnRhbmds
ZVBvcnRzKFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiYmIHBvcnRzKQogewogICAgIGlmIChw
b3J0cy5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJy
YXkgeyB9OworICAgICAgICByZXR1cm4gVmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+IHsg
fTsKIAogICAgIC8vIFdhbGsgdGhlIGluY29taW5nIGFycmF5IC0gaWYgdGhlcmUgYXJlIGFueSBk
dXBsaWNhdGUgcG9ydHMsIG9yIG51bGwgcG9ydHMgb3IgY2xvbmVkIHBvcnRzLCB0aHJvdyBhbiBl
cnJvciAocGVyIHNlY3Rpb24gOC4zLjMgb2YgdGhlIEhUTUw1IHNwZWMpLgogICAgIEhhc2hTZXQ8
TWVzc2FnZVBvcnQqPiBwb3J0U2V0OwpAQCAtMzg2LDI2ICszODYsMjEgQEAgRXhjZXB0aW9uT3I8
VHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5PiBNZXNzYWdlUG9ydDo6ZGlzZW50YW5nbGVQb3J0
cyhWZWN0b3I8UmUKICAgICB9CiAKICAgICAvLyBQYXNzZWQtaW4gcG9ydHMgcGFzc2VkIHZhbGlk
aXR5IGNoZWNrcywgc28gd2UgY2FuIGRpc2VudGFuZ2xlIHRoZW0uCi0gICAgVHJhbnNmZXJyZWRN
ZXNzYWdlUG9ydEFycmF5IHBvcnRBcnJheTsKLSAgICBwb3J0QXJyYXkucmVzZXJ2ZUluaXRpYWxD
YXBhY2l0eShwb3J0cy5zaXplKCkpOwotICAgIGZvciAoYXV0byYgcG9ydCA6IHBvcnRzKQotICAg
ICAgICBwb3J0QXJyYXkudW5jaGVja2VkQXBwZW5kKHBvcnQtPmRpc2VudGFuZ2xlKCkpOwotCi0g
ICAgcmV0dXJuIHBvcnRBcnJheTsKKyAgICByZXR1cm4gV1RGOjptYXAocG9ydHMsIFtdKGF1dG8m
IHBvcnQpIHsKKyAgICAgICAgcmV0dXJuIHBvcnQtPmRpc2VudGFuZ2xlKCk7CisgICAgfSk7CiB9
CiAKLVZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBNZXNzYWdlUG9ydDo6ZW50YW5nbGVQb3J0
cyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0
QXJyYXkmJiB0cmFuc2ZlcnJlZFBvcnRzKQorVmVjdG9yPFJlZlB0cjxNZXNzYWdlUG9ydD4+IE1l
c3NhZ2VQb3J0OjplbnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQs
IFZlY3RvcjxUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0PiYmIHRyYW5zZmVycmVkUG9ydHMpCiB7CiAg
ICAgTE9HKE1lc3NhZ2VQb3J0cywgIkVudGFuZ2xpbmcgJXp1IHRyYW5zZmVycmVkIHBvcnRzIHRv
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgJXMgKCVwKSIsIHRyYW5zZmVycmVkUG9ydHMuc2l6ZSgp
LCBjb250ZXh0LnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCksICZjb250ZXh0KTsKIAogICAg
IGlmICh0cmFuc2ZlcnJlZFBvcnRzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAot
ICAgIFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBwb3J0czsKLSAgICBwb3J0cy5yZXNlcnZl
SW5pdGlhbENhcGFjaXR5KHRyYW5zZmVycmVkUG9ydHMuc2l6ZSgpKTsKLSAgICBmb3IgKGF1dG8m
IHRyYW5zZmVycmVkUG9ydCA6IHRyYW5zZmVycmVkUG9ydHMpCi0gICAgICAgIHBvcnRzLnVuY2hl
Y2tlZEFwcGVuZChNZXNzYWdlUG9ydDo6ZW50YW5nbGUoY29udGV4dCwgV1RGTW92ZSh0cmFuc2Zl
cnJlZFBvcnQpKSk7Ci0gICAgcmV0dXJuIHBvcnRzOworICAgIHJldHVybiBXVEY6Om1hcCh0cmFu
c2ZlcnJlZFBvcnRzLCBbJl0oYXV0byYgcG9ydCkgLT4gUmVmUHRyPE1lc3NhZ2VQb3J0PiB7Cisg
ICAgICAgIHJldHVybiBNZXNzYWdlUG9ydDo6ZW50YW5nbGUoY29udGV4dCwgV1RGTW92ZShwb3J0
KSk7CisgICAgfSk7CiB9CiAKIFJlZjxNZXNzYWdlUG9ydD4gTWVzc2FnZVBvcnQ6OmVudGFuZ2xl
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQm
JiB0cmFuc2ZlcnJlZFBvcnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2Fn
ZVBvcnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5oCmluZGV4IDJhMTU4ZTcz
ODA5MTk0M2UyMjFmN2FhZGNlNjljZjY5MzRlNTQzMTIuLjNjNmRjN2Y2Y2IyMjkwZWMzYzMxYTg1
M2RjN2IwMDE4NTY2YWIxOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdl
UG9ydC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5oCkBAIC02MCw4ICs2
MCw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGVudGFuZ2xlKCk7CiAKICAgICAvLyBSZXR1cm5zIG51
bGxwdHIgaWYgdGhlIHBhc3NlZC1pbiB2ZWN0b3IgaXMgZW1wdHkuCi0gICAgc3RhdGljIEV4Y2Vw
dGlvbk9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnRBcnJheT4gZGlzZW50YW5nbGVQb3J0cyhWZWN0
b3I8UmVmUHRyPE1lc3NhZ2VQb3J0Pj4mJik7Ci0gICAgc3RhdGljIFZlY3RvcjxSZWZQdHI8TWVz
c2FnZVBvcnQ+PiBlbnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBUcmFuc2Zl
cnJlZE1lc3NhZ2VQb3J0QXJyYXkmJik7CisgICAgc3RhdGljIEV4Y2VwdGlvbk9yPFZlY3RvcjxU
cmFuc2ZlcnJlZE1lc3NhZ2VQb3J0Pj4gZGlzZW50YW5nbGVQb3J0cyhWZWN0b3I8UmVmUHRyPE1l
c3NhZ2VQb3J0Pj4mJik7CisgICAgc3RhdGljIFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBl
bnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBWZWN0b3I8VHJhbnNmZXJyZWRN
ZXNzYWdlUG9ydD4mJik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgYm9vbCBpc0V4aXN0
aW5nTWVzc2FnZVBvcnRMb2NhbGx5UmVhY2hhYmxlKGNvbnN0IE1lc3NhZ2VQb3J0SWRlbnRpZmll
ciYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIG5vdGlmeU1lc3NhZ2VBdmFpbGFi
bGUoY29uc3QgTWVzc2FnZVBvcnRJZGVudGlmaWVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuY3BwCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2YmVlMWE4Y2MwMWE1YzJlZmE1YTc1NzliM2Ux
ODIzMzc0NjRmZWE3Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9y
dHMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oIgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9y
dHMuaAppbmRleCBkNDVmNzYzNGM2MThiMDk3MGI5OGRhOGMyZjQ5NzI2YjliOTAxOTZlLi5jMWRi
MDcwYWE0MGVmM2EyMWZiZGE0ZTgwOGIyZGQ2ZDgxZDIzOWJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL21lc3NhZ2Vwb3J0cy9NZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5o
CkBAIC0yNSwyMCArMjUsMTUgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJNZXNzYWdl
UG9ydElkZW50aWZpZXIuaCIKICNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKKyNp
bmNsdWRlICJUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0LmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLS8vIFdoZW4gYSBtZXNzYWdlIHBvcnQgaXMgdHJh
bnNmZXJyZWQsIGl0IGlzIHJlcHJlc2VudGVkIGJ5IGEgcGFpciBvZiBpZGVudGlmaWVycy4KLS8v
IFRoZSBmaXJzdCBpZGVudGlmaWVyIGlzIHRoZSBwb3J0IGJlaW5nIHRyYW5zZmVycmVkIGFuZCB0
aGUgc2Vjb25kIGlzIGl0cyByZW1vdGUgcG9ydC4KLXVzaW5nIFRyYW5zZmVycmVkTWVzc2FnZVBv
cnQgPSBzdGQ6OnBhaXI8V2ViQ29yZTo6TWVzc2FnZVBvcnRJZGVudGlmaWVyLCBXZWJDb3JlOjpN
ZXNzYWdlUG9ydElkZW50aWZpZXI+OwotdXNpbmcgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5
ID0gVmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+OwotCiBzdHJ1Y3QgTWVzc2FnZVdpdGhN
ZXNzYWdlUG9ydHMgewogICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1lc3NhZ2U7
Ci0gICAgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5IHRyYW5zZmVycmVkUG9ydHM7CisgICAg
VmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+IHRyYW5zZmVycmVkUG9ydHM7CiAKICAgICB0
ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7CiAgICAg
dGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIHN0ZDo6b3B0aW9uYWw8TWVzc2FnZVdpdGhN
ZXNzYWdlUG9ydHM+IGRlY29kZShEZWNvZGVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9tZXNzYWdlcG9ydHMvVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjE5YWE2Mzc0NmY0Mzg0MTk5Y2QwY2RjYTI0ZWQxMWJjYjZkMDEwNjgKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVycmVkTWVzc2FnZVBv
cnQuaApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4LTIwMjIgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2luY2x1ZGUgIk1lc3NhZ2VQb3J0SWRlbnRpZmllci5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKKy8vIFdoZW4gYSBtZXNzYWdlIHBvcnQgaXMgdHJhbnNmZXJyZWQsIGl0IGlzIHJlcHJlc2Vu
dGVkIGJ5IGEgcGFpciBvZiBpZGVudGlmaWVycy4KKy8vIFRoZSBmaXJzdCBpZGVudGlmaWVyIGlz
IHRoZSBwb3J0IGJlaW5nIHRyYW5zZmVycmVkIGFuZCB0aGUgc2Vjb25kIGlzIGl0cyByZW1vdGUg
cG9ydC4KK3VzaW5nIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgPSBzdGQ6OnBhaXI8TWVzc2FnZVBv
cnRJZGVudGlmaWVyLCBNZXNzYWdlUG9ydElkZW50aWZpZXI+OworCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450685</attachid>
            <date>2022-02-02 11:55:21 -0800</date>
            <delta_ts>2022-02-02 15:26:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236028-20220202115520.patch</filename>
            <type>text/plain</type>
            <size>16909</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4OTc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTg2NGU3MTk3NzI5OTli
Y2NhZGQwNjBlNTRmOWRhZjFjM2UyNWU1My4uZjVjMWVjZDM2ZjhlMTc3NzkxMTk2NTY2YjU1ZTQ2
MGZiMWQ3YmQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIyLTAyLTAyICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBUcmFuc2ZlcnJlZE1l
c3NhZ2VQb3J0IHRvIGl0cyBvd24gaGVhZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMzYwMjgKKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJl
eSBHYXJlbi4KKworICAgICAgICBNb3ZlIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgdG8gaXRzIG93
biBoZWFkZXIgc28gdGhhdCBTaGFyZWQgV29ya2VyIGRvZXNuJ3QgbmVlZCB0byBpbmNsdWRlIHRo
ZSB3aG9sZSBNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oIGhlYWRlci4KKyAgICAgICAgSXQgYWxz
byBmYWNpbGl0YXRlcyBwYXNzaW5nIGEgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydCBpbiBJUEMsIHdo
aWNoIHdpbGwgYmUgbmVlZGVkLgorCisgICAgICAgICogSGVhZGVycy5jbWFrZToKKyAgICAgICAg
KiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogZG9tL01lc3Nh
Z2VQb3J0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lc3NhZ2VQb3J0Ojpwb3N0TWVzc2FnZSk6
CisgICAgICAgIChXZWJDb3JlOjpNZXNzYWdlUG9ydDo6ZGlzZW50YW5nbGVQb3J0cyk6CisgICAg
ICAgIChXZWJDb3JlOjpNZXNzYWdlUG9ydDo6ZW50YW5nbGVQb3J0cyk6CisgICAgICAgICogZG9t
L01lc3NhZ2VQb3J0Lmg6CisgICAgICAgICogZG9tL21lc3NhZ2Vwb3J0cy9NZXNzYWdlV2l0aE1l
c3NhZ2VQb3J0cy5oOgorICAgICAgICAqIGRvbS9tZXNzYWdlcG9ydHMvVHJhbnNmZXJyZWRNZXNz
YWdlUG9ydC5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL01l
c3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmguCisKIDIwMjItMDItMDIgIENocmlzIER1bWV6ICA8Y2R1
bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBTdXBwb3J0IHNlbmRpbmcgV29ya2VyT3B0aW9ucyBv
dmVyIElQQwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJj
ZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggODliODJhMTNmN2U0ZDYxNGE0NWMxYTdmZmNj
YTcwOTU1OGJlYjMwOC4uYTViNzkzOWRiYzY4ODllMTM3Y2RlZjA3NzUxYTVmMmI3OTRjNzE1OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9IZWFkZXJzLmNtYWtlCkBAIC03MzgsNiArNzM4LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFU
RV9GUkFNRVdPUktfSEVBREVSUwogICAgIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFu
bmVsUHJvdmlkZXIuaAogICAgIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUmVn
aXN0cnkuaAogICAgIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaAor
ICAgIGRvbS9tZXNzYWdlcG9ydHMvVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5oCiAKICAgICBlZGl0
aW5nL0NoYXJhY3RlclJhbmdlLmgKICAgICBlZGl0aW5nL0NsaXBib2FyZEFjY2Vzc1BvbGljeS5o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXMudHh0CmluZGV4IGY2NmNjZjhmMDZhNTc5MTlkOGE0ZWEwZGMwZDA4OTAwMTY1NDU1
NjcuLmI0NjQ2NTg0ODQ4OWRhMThkOWEwNmNhYzdjMDk4ZmM0YjQ1NmQwMTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXMu
dHh0CkBAIC0xMDc3LDcgKzEwNzcsNiBAQCBkb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VQb3J0Q2hh
bm5lbC5jcHAKIGRvbS9tZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3Bw
CiBkb20vbWVzc2FnZXBvcnRzL01lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5jcHAKIGRv
bS9tZXNzYWdlcG9ydHMvTWVzc2FnZVBvcnRDaGFubmVsUmVnaXN0cnkuY3BwCi1kb20vbWVzc2Fn
ZXBvcnRzL01lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcAogZG9tL21lc3NhZ2Vwb3J0cy9Xb3Jr
ZXJNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5jcHAKIGRvbWppdC9ET01KSVRIZWxwZXJzLmNw
cAogZG9taml0L0pTRG9jdW1lbnRET01KSVQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYmZhYzg2ZTdkYzFiZWY4NDY3NTAx
OTRkNWU0ZmE0MjhkZDYzNTc2Yy4uYmMwMzFlNmIwODhmMTIzMTIzMjJjN2NkNjQ1Y2VhZWU2ZTU0
MTJjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtMTM3NCw2ICsxMzc0LDcgQEAKIAkJNDZDODNFRkUxQTlCQkUyOTAwQTc5QTQx
IC8qIEdlb05vdGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NkM4M0VGQzFBOUJCRTI5MDBBNzlBNDEgLyogR2VvTm90aWZpZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0NkNBOUM0NDFGOTdC
QkU5MDA0Q0ZDM0EgLyogVmlzaWJpbGl0eVN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkNBOUM0MTFGOTdCQkU3MDA0Q0ZDM0EgLyogVmlzaWJp
bGl0eVN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJNDZEMDAwNDAyNkEwRkVCMzAwRDFCRjFFIC8qIFN1Ym1pdEV2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkQwMDAzRTI2QTBGRTZGMDBE
MUJGMUUgLyogU3VibWl0RXZlbnQuaCAqLzsgfTsKKwkJNDZEQTRBMDIyN0FCMDM5MzAwRTM3NUE4
IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQ2REE0QTAwMjdBQjAzOEQwMEUzNzVBOCAvKiBUcmFuc2ZlcnJl
ZE1lc3NhZ2VQb3J0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJNDZEQkI2NTAxQUI4Qzk2RjAwRDlBODEzIC8qIFBvd2VyT2JzZXJ2ZXJNYWMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2REJCNjRFMUFC
OEM5NkYwMEQ5QTgxMyAvKiBQb3dlck9ic2VydmVyTWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNDZERDkzRDcyNjlERTc1NjAwMUFGRDg4IC8q
IEJyb2FkY2FzdENoYW5uZWxJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0NkREOTNENTI2OURFNzRCMDAxQUZEODggLyogQnJvYWRjYXN0
Q2hhbm5lbElkZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQk0NkRFOUJCNTI2OURGOTNFMDAyNEM1QTYgLyogQnJvYWRjYXN0Q2hhbm5l
bFJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyogQnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTkyOTcs
NiArOTI5OCw3IEBACiAJCTQ2RDAwMDNDMjZBMEZFNkYwMEQxQkYxRSAvKiBTdWJtaXRFdmVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdWJtaXRFdmVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2RDAwMDNFMjZBMEZFNkYwMEQxQkYxRSAv
KiBTdWJtaXRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdWJtaXRF
dmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkQwMDAzRjI2QTBGRTcwMDBE
MUJGMUUgLyogU3VibWl0RXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFN1Ym1pdEV2
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZEQTRBMDAyN0FCMDM4RDAw
RTM3NUE4IC8qIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNm
ZXJyZWRNZXNzYWdlUG9ydC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkRCQjY0
RTFBQjhDOTZGMDBEOUE4MTMgLyogUG93ZXJPYnNlcnZlck1hYy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQb3dlck9ic2VydmVyTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTQ2REQ5M0Q1MjY5REU3NEIwMDFBRkQ4OCAvKiBCcm9hZGNhc3RDaGFubmVsSWRl
bnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCcm9hZGNhc3RDaGFubmVsSWRlbnRpZmllci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyog
QnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJyb2FkY2FzdENoYW5u
ZWxSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtOTg3MSw3ICs5ODcz
LDYgQEAKIAkJNTFBNEJCMEUxOTU0RDYyNzAwRkE1QzJFIC8qIE5hdmlnYXRvckdhbWVwYWQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yR2FtZXBhZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUE0QkIwRjE5NTRENjI3MDBGQTVDMkUgLyogTmF2
aWdhdG9yK0dhbWVwYWQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJOYXZpZ2F0b3IrR2Ft
ZXBhZC5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUE3NDhFMDIwMDVEMEUw
MDA3NUJBNjggLyogTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJNTFBNzQ4RTEyMDA1RDBFMDAwNzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVz
c2FnZVBvcnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lc3Nh
Z2VXaXRoTWVzc2FnZVBvcnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTFB
NzQ4RTQyMDA2MDAyMTAwNzVCQTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZXNzYWdlUG9ydENoYW5u
ZWxQcm92aWRlckltcGwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUE3NDhF
NTIwMDYwMDIxMDA3NUJBNjggLyogTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXJJbXBsLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVy
SW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MUE5RDlFNzE5NUI5MzFGMDAx
QjJCNUMgLyogR2FtZXBhZE1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gR2FtZXBhZE1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMjIzNjIsOCArMjIzNjMsOCBAQAogCQkJCTUxQTc0OEU1MjAwNjAwMjEwMDc1QkE2OCAvKiBN
ZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlckltcGwuaCAqLywKIAkJCQk1MUVDQzNGNTIwMDU4N0I3
MDA0ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVsUmVnaXN0cnkuY3BwICovLAogCQkJCTUxRUND
M0YxMjAwNTg3QjUwMDQ4M0VBRSAvKiBNZXNzYWdlUG9ydENoYW5uZWxSZWdpc3RyeS5oICovLAot
CQkJCTUxQTc0OEUxMjAwNUQwRTAwMDc1QkE2OCAvKiBNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5j
cHAgKi8sCiAJCQkJNTFBNzQ4RTAyMDA1RDBFMDAwNzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2Fn
ZVBvcnRzLmggKi8sCisJCQkJNDZEQTRBMDAyN0FCMDM4RDAwRTM3NUE4IC8qIFRyYW5zZmVycmVk
TWVzc2FnZVBvcnQuaCAqLywKIAkJCQk0MTExNEE3QzIzMTdCMzlFMDBCNTYwMDcgLyogV29ya2Vy
TWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3BwICovLAogCQkJCTQxMTE0QTdBMjMxN0IzOUUw
MEI1NjAwNyAvKiBXb3JrZXJNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5oICovLAogCQkJKTsK
QEAgLTM3NjkyLDYgKzM3NjkzLDcgQEAKIAkJCQlGRkFDMzBGRTE4NEZCMTQ1MDA4QzRGMUUgLyog
VHJhaWxpbmdPYmplY3RzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTYwNzEzMjFCRDgzMDhCMDBE
QkM0RjIgLyogVHJhbnNhY3Rpb25PcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUNEM0VF
RjQxMjU3OTlGRDkwMDY1NjNCQiAvKiBUcmFuc2ZlckZ1bmN0aW9uLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0NkRBNEEwMjI3QUIwMzkzMDBFMzc1QTggLyogVHJhbnNmZXJyZWRNZXNzYWdlUG9ydC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNDlFOTExQzQwRUY4NkQ0NzAwOUQwQ0FGIC8qIFRyYW5zZm9y
bWF0aW9uTWF0cml4LmggaW4gSGVhZGVycyAqLywKIAkJCQlGQjQ4NEY0RDE3MUY4MjFFMDAwNDA3
NTUgLyogVHJhbnNmb3JtRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk0OUU5MTFDRTBF
Rjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vTWVzc2FnZVBvcnQuY3BwCmluZGV4IGY3ZjIxN2Q4MzEyMTA5NTM1MjVjYmViN2Qz
YjUzNTFmODAxMzM2NjIuLjE3N2Y4ZTQzZDQ1OGQ0OWViZjEyYWFiZjY1MzQwYjk5NTU3NDE4YWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL01lc3NhZ2VQb3J0LmNwcApAQCAtMTQ5LDcgKzE0OSw3IEBAIEV4Y2Vw
dGlvbk9yPHZvaWQ+IE1lc3NhZ2VQb3J0Ojpwb3N0TWVzc2FnZShKU0M6OkpTR2xvYmFsT2JqZWN0
JiBzdGF0ZSwgSlNDOjpKU1ZhCiAgICAgICAgIHJldHVybiB7IH07CiAgICAgQVNTRVJUKHNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKSk7CiAKLSAgICBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJyYXkg
dHJhbnNmZXJyZWRQb3J0czsKKyAgICBWZWN0b3I8VHJhbnNmZXJyZWRNZXNzYWdlUG9ydD4gdHJh
bnNmZXJyZWRQb3J0czsKICAgICAvLyBNYWtlIHN1cmUgd2UgYXJlbid0IGNvbm5lY3RlZCB0byBh
bnkgb2YgdGhlIHBhc3NlZC1pbiBwb3J0cy4KICAgICBpZiAoIXBvcnRzLmlzRW1wdHkoKSkgewog
ICAgICAgICBmb3IgKGF1dG8mIHBvcnQgOiBwb3J0cykgewpAQCAtMzczLDEwICszNzMsMTAgQEAg
TWVzc2FnZVBvcnQqIE1lc3NhZ2VQb3J0Ojpsb2NhbGx5RW50YW5nbGVkUG9ydCgpIGNvbnN0CiAg
ICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLUV4Y2VwdGlvbk9yPFRyYW5zZmVycmVkTWVzc2FnZVBv
cnRBcnJheT4gTWVzc2FnZVBvcnQ6OmRpc2VudGFuZ2xlUG9ydHMoVmVjdG9yPFJlZlB0cjxNZXNz
YWdlUG9ydD4+JiYgcG9ydHMpCitFeGNlcHRpb25PcjxWZWN0b3I8VHJhbnNmZXJyZWRNZXNzYWdl
UG9ydD4+IE1lc3NhZ2VQb3J0OjpkaXNlbnRhbmdsZVBvcnRzKFZlY3RvcjxSZWZQdHI8TWVzc2Fn
ZVBvcnQ+PiYmIHBvcnRzKQogewogICAgIGlmIChwb3J0cy5pc0VtcHR5KCkpCi0gICAgICAgIHJl
dHVybiBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJyYXkgeyB9OworICAgICAgICByZXR1cm4gVmVj
dG9yPFRyYW5zZmVycmVkTWVzc2FnZVBvcnQ+IHsgfTsKIAogICAgIC8vIFdhbGsgdGhlIGluY29t
aW5nIGFycmF5IC0gaWYgdGhlcmUgYXJlIGFueSBkdXBsaWNhdGUgcG9ydHMsIG9yIG51bGwgcG9y
dHMgb3IgY2xvbmVkIHBvcnRzLCB0aHJvdyBhbiBlcnJvciAocGVyIHNlY3Rpb24gOC4zLjMgb2Yg
dGhlIEhUTUw1IHNwZWMpLgogICAgIEhhc2hTZXQ8TWVzc2FnZVBvcnQqPiBwb3J0U2V0OwpAQCAt
Mzg2LDI2ICszODYsMjEgQEAgRXhjZXB0aW9uT3I8VHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5
PiBNZXNzYWdlUG9ydDo6ZGlzZW50YW5nbGVQb3J0cyhWZWN0b3I8UmUKICAgICB9CiAKICAgICAv
LyBQYXNzZWQtaW4gcG9ydHMgcGFzc2VkIHZhbGlkaXR5IGNoZWNrcywgc28gd2UgY2FuIGRpc2Vu
dGFuZ2xlIHRoZW0uCi0gICAgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5IHBvcnRBcnJheTsK
LSAgICBwb3J0QXJyYXkucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShwb3J0cy5zaXplKCkpOwotICAg
IGZvciAoYXV0byYgcG9ydCA6IHBvcnRzKQotICAgICAgICBwb3J0QXJyYXkudW5jaGVja2VkQXBw
ZW5kKHBvcnQtPmRpc2VudGFuZ2xlKCkpOwotCi0gICAgcmV0dXJuIHBvcnRBcnJheTsKKyAgICBy
ZXR1cm4gV1RGOjptYXAocG9ydHMsIFtdKGF1dG8mIHBvcnQpIHsKKyAgICAgICAgcmV0dXJuIHBv
cnQtPmRpc2VudGFuZ2xlKCk7CisgICAgfSk7CiB9CiAKLVZlY3RvcjxSZWZQdHI8TWVzc2FnZVBv
cnQ+PiBNZXNzYWdlUG9ydDo6ZW50YW5nbGVQb3J0cyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBj
b250ZXh0LCBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJyYXkmJiB0cmFuc2ZlcnJlZFBvcnRzKQor
VmVjdG9yPFJlZlB0cjxNZXNzYWdlUG9ydD4+IE1lc3NhZ2VQb3J0OjplbnRhbmdsZVBvcnRzKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIFZlY3RvcjxUcmFuc2ZlcnJlZE1lc3NhZ2VQ
b3J0PiYmIHRyYW5zZmVycmVkUG9ydHMpCiB7CiAgICAgTE9HKE1lc3NhZ2VQb3J0cywgIkVudGFu
Z2xpbmcgJXp1IHRyYW5zZmVycmVkIHBvcnRzIHRvIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgJXMg
KCVwKSIsIHRyYW5zZmVycmVkUG9ydHMuc2l6ZSgpLCBjb250ZXh0LnVybCgpLnN0cmluZygpLnV0
ZjgoKS5kYXRhKCksICZjb250ZXh0KTsKIAogICAgIGlmICh0cmFuc2ZlcnJlZFBvcnRzLmlzRW1w
dHkoKSkKICAgICAgICAgcmV0dXJuIHsgfTsKIAotICAgIFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBv
cnQ+PiBwb3J0czsKLSAgICBwb3J0cy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHRyYW5zZmVycmVk
UG9ydHMuc2l6ZSgpKTsKLSAgICBmb3IgKGF1dG8mIHRyYW5zZmVycmVkUG9ydCA6IHRyYW5zZmVy
cmVkUG9ydHMpCi0gICAgICAgIHBvcnRzLnVuY2hlY2tlZEFwcGVuZChNZXNzYWdlUG9ydDo6ZW50
YW5nbGUoY29udGV4dCwgV1RGTW92ZSh0cmFuc2ZlcnJlZFBvcnQpKSk7Ci0gICAgcmV0dXJuIHBv
cnRzOworICAgIHJldHVybiBXVEY6Om1hcCh0cmFuc2ZlcnJlZFBvcnRzLCBbJl0oYXV0byYgcG9y
dCkgLT4gUmVmUHRyPE1lc3NhZ2VQb3J0PiB7CisgICAgICAgIHJldHVybiBNZXNzYWdlUG9ydDo6
ZW50YW5nbGUoY29udGV4dCwgV1RGTW92ZShwb3J0KSk7CisgICAgfSk7CiB9CiAKIFJlZjxNZXNz
YWdlUG9ydD4gTWVzc2FnZVBvcnQ6OmVudGFuZ2xlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNv
bnRleHQsIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQmJiB0cmFuc2ZlcnJlZFBvcnQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZVBvcnQuaCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9NZXNzYWdlUG9ydC5oCmluZGV4IDJhMTU4ZTczODA5MTk0M2UyMjFmN2FhZGNlNjljZjY5MzRl
NTQzMTIuLjNjNmRjN2Y2Y2IyMjkwZWMzYzMxYTg1M2RjN2IwMDE4NTY2YWIxOTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZXNzYWdlUG9ydC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9NZXNzYWdlUG9ydC5oCkBAIC02MCw4ICs2MCw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGVu
dGFuZ2xlKCk7CiAKICAgICAvLyBSZXR1cm5zIG51bGxwdHIgaWYgdGhlIHBhc3NlZC1pbiB2ZWN0
b3IgaXMgZW1wdHkuCi0gICAgc3RhdGljIEV4Y2VwdGlvbk9yPFRyYW5zZmVycmVkTWVzc2FnZVBv
cnRBcnJheT4gZGlzZW50YW5nbGVQb3J0cyhWZWN0b3I8UmVmUHRyPE1lc3NhZ2VQb3J0Pj4mJik7
Ci0gICAgc3RhdGljIFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBlbnRhbmdsZVBvcnRzKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0QXJyYXkmJik7Cisg
ICAgc3RhdGljIEV4Y2VwdGlvbk9yPFZlY3RvcjxUcmFuc2ZlcnJlZE1lc3NhZ2VQb3J0Pj4gZGlz
ZW50YW5nbGVQb3J0cyhWZWN0b3I8UmVmUHRyPE1lc3NhZ2VQb3J0Pj4mJik7CisgICAgc3RhdGlj
IFZlY3RvcjxSZWZQdHI8TWVzc2FnZVBvcnQ+PiBlbnRhbmdsZVBvcnRzKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQmLCBWZWN0b3I8VHJhbnNmZXJyZWRNZXNzYWdlUG9ydD4mJik7CiAKICAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgYm9vbCBpc0V4aXN0aW5nTWVzc2FnZVBvcnRMb2NhbGx5UmVhY2hh
YmxlKGNvbnN0IE1lc3NhZ2VQb3J0SWRlbnRpZmllciYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyB2b2lkIG5vdGlmeU1lc3NhZ2VBdmFpbGFibGUoY29uc3QgTWVzc2FnZVBvcnRJZGVudGlm
aWVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL01lc3Nh
Z2VXaXRoTWVzc2FnZVBvcnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMv
TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCA2YmVlMWE4Y2MwMWE1YzJlZmE1YTc1NzliM2UxODIzMzc0NjRmZWE3Li4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNz
YWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
MzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
Ci0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJN
ZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdl
cG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNz
YWdlcG9ydHMvTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaAppbmRleCBkNDVmNzYzNGM2MThiMDk3
MGI5OGRhOGMyZjQ5NzI2YjliOTAxOTZlLi5jMWRiMDcwYWE0MGVmM2EyMWZiZGE0ZTgwOGIyZGQ2
ZDgxZDIzOWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL01l
c3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL21lc3NhZ2Vw
b3J0cy9NZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5oCkBAIC0yNSwyMCArMjUsMTUgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpbmNsdWRlICJNZXNzYWdlUG9ydElkZW50aWZpZXIuaCIKICNpbmNsdWRl
ICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKKyNpbmNsdWRlICJUcmFuc2ZlcnJlZE1lc3NhZ2VQ
b3J0LmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LS8vIFdoZW4gYSBtZXNzYWdlIHBvcnQgaXMgdHJhbnNmZXJyZWQsIGl0IGlzIHJlcHJlc2VudGVk
IGJ5IGEgcGFpciBvZiBpZGVudGlmaWVycy4KLS8vIFRoZSBmaXJzdCBpZGVudGlmaWVyIGlzIHRo
ZSBwb3J0IGJlaW5nIHRyYW5zZmVycmVkIGFuZCB0aGUgc2Vjb25kIGlzIGl0cyByZW1vdGUgcG9y
dC4KLXVzaW5nIFRyYW5zZmVycmVkTWVzc2FnZVBvcnQgPSBzdGQ6OnBhaXI8V2ViQ29yZTo6TWVz
c2FnZVBvcnRJZGVudGlmaWVyLCBXZWJDb3JlOjpNZXNzYWdlUG9ydElkZW50aWZpZXI+OwotdXNp
bmcgVHJhbnNmZXJyZWRNZXNzYWdlUG9ydEFycmF5ID0gVmVjdG9yPFRyYW5zZmVycmVkTWVzc2Fn
ZVBvcnQ+OwotCiBzdHJ1Y3QgTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMgewogICAgIFJlZlB0cjxT
ZXJpYWxpemVkU2NyaXB0VmFsdWU+IG1lc3NhZ2U7Ci0gICAgVHJhbnNmZXJyZWRNZXNzYWdlUG9y
dEFycmF5IHRyYW5zZmVycmVkUG9ydHM7CisgICAgVmVjdG9yPFRyYW5zZmVycmVkTWVzc2FnZVBv
cnQ+IHRyYW5zZmVycmVkUG9ydHM7CiAKICAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lk
IGVuY29kZShFbmNvZGVyJikgY29uc3Q7CiAgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3Rh
dGljIHN0ZDo6b3B0aW9uYWw8TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHM+IGRlY29kZShEZWNvZGVy
Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vbWVzc2FnZXBvcnRzL1RyYW5zZmVy
cmVkTWVzc2FnZVBvcnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9tZXNzYWdlcG9ydHMvVHJhbnNm
ZXJyZWRNZXNzYWdlUG9ydC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5YWE2Mzc0NmY0Mzg0MTk5Y2QwY2RjYTI0
ZWQxMWJjYjZkMDEwNjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vbWVz
c2FnZXBvcnRzL1RyYW5zZmVycmVkTWVzc2FnZVBvcnQuaApAQCAtMCwwICsxLDM2IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDE4LTIwMjIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIk1lc3NhZ2VQb3J0SWRlbnRp
Zmllci5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKKy8vIFdoZW4gYSBtZXNzYWdlIHBvcnQg
aXMgdHJhbnNmZXJyZWQsIGl0IGlzIHJlcHJlc2VudGVkIGJ5IGEgcGFpciBvZiBpZGVudGlmaWVy
cy4KKy8vIFRoZSBmaXJzdCBpZGVudGlmaWVyIGlzIHRoZSBwb3J0IGJlaW5nIHRyYW5zZmVycmVk
IGFuZCB0aGUgc2Vjb25kIGlzIGl0cyByZW1vdGUgcG9ydC4KK3VzaW5nIFRyYW5zZmVycmVkTWVz
c2FnZVBvcnQgPSBzdGQ6OnBhaXI8TWVzc2FnZVBvcnRJZGVudGlmaWVyLCBNZXNzYWdlUG9ydElk
ZW50aWZpZXI+OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>