<?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>231891</bug_id>
          
          <creation_ts>2021-10-18 03:01:17 -0700</creation_ts>
          <short_desc>background-clip:text doesn&apos;t paint correctly for inline box spanning multiple lines</short_desc>
          <delta_ts>2021-10-19 09:40:22 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=231961</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1805504</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-18 03:01:17 -0700</bug_when>
    <thetext>subsequent lines mispaint.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805527</commentid>
    <comment_count>1</comment_count>
      <attachid>441584</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-18 04:21:39 -0700</bug_when>
    <thetext>Created attachment 441584
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805618</commentid>
    <comment_count>2</comment_count>
      <attachid>441615</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-10-18 09:30:18 -0700</bug_when>
    <thetext>Created attachment 441615
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805634</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-18 10:18:04 -0700</bug_when>
    <thetext>Committed r284380 (243164@main): &lt;https://commits.webkit.org/243164@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 441615.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1805636</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-18 10:19:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/84376678&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441584</attachid>
            <date>2021-10-18 04:21:39 -0700</date>
            <delta_ts>2021-10-18 09:30:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231891-20211018142137.patch</filename>
            <type>text/plain</type>
            <size>18497</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDQ1NDljZTMyZmI5ODY4
ZjdmODcxODJhYTE4MjMzMjRkZGRhZTlkYS4uYzM4MDljZGZhYWM5NWY3MmQzODA0OTg2NjJmZGNl
MjRhNmMyMDU1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIxLTEwLTE4ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6
dGV4dCBkb2Vzbid0IHBhaW50IGNvcnJlY3RseSBmb3IgaW5saW5lIGJveCBzcGFubmluZyBtdWx0
aXBsZSBsaW5lcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjMxODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgJ2JhY2tncm91bmQtY2xpcDogdGV4dCcgcGFpbnRzIHRvIGEgd3JvbmcgcG9zaXRpb24gaWYg
dGhlIGlubGluZSBib3ggc3BhbnMgbXVsdGlwbGUgbGluZXMuCisKKyAgICAgICAgVGVzdDogZmFz
dC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS5odG1sCisKKyAg
ICAgICAgKiByZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJbmxpbmVCb3hQYWludGVyOjpwYWludEZpbGxMYXllcik6CisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OnBhaW50RmlsbExh
eWVyKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OmdldEJhY2tncm91bmRSb3VuZGVk
UmVjdCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6YmFj
a2dyb3VuZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZSBjb25zdCk6CisKKyAg
ICAgICAgTm8gbmVlZCB0byBwYXNzIGJveCBzaXplIHNlcGFyYXRlbHkgYXMgaXQgbm93IGFsd2F5
cyBtYXRjaGVzIHRoZSBwYXNzZWQgaW4gYm9yZGVyIHJlY3QuCisKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEZpbGxMYXllckV4dGVuZGVkKToKKworICAgICAg
ICBUaGUgJ3JlY3QnIHBhcmFtZXRlciB1c2VkIHRvIGJlIGVpdGhlciB0aGUgYm9yZGVyIGJveCBy
ZWN0IG9mIHRoZSBib3ggYmVpbmcgcGFpbnRlZCBvciwKKyAgICAgICAgaW4gdGhlIGNhc2Ugb2Yg
bXVsdGlsaW5lIGlubGluZSBib3ggYmFja2dyb3VuZCBpbWFnZSwgdGhlIGltYWdlIHN0cmlwIGJl
aW5nIHBhaW50ZWQuCisKKyAgICAgICAgTWFrZSB0aGUgJ3JlY3QnIHBhcmFtZXRlciB0byBhbHdh
eXMgYmUgdGhlIGJvcmRlciBib3ggYW5kIHBhc3MgdGhlIGJhY2tncm91bmQgaW1hZ2Ugc3RyaXAK
KyAgICAgICAgc2VwYXJhdGVseS4KKworICAgICAgICBVc2UgdGhlIGJhY2tncm91bmQgaW1hZ2Ug
c3RyaXAgb25seSBkdXJpbmcgYmFja2dyb3VuZCBpbWFnZSBwYWludGluZy4KKworICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVyRXh0ZW5kZWQpOgorCiAyMDIxLTEwLTE4
ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbTWVk
aWFTdHJlYW1dIE1vY2sgdmlkZW8gc291cmNlIGJhY2tncm91bmQgbm90IGZ1bGx5IGZpbGxlZCBm
b3IgY3VzdG9tIHZpZGVvIHJlc29sdXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9JbmxpbmVCb3hQYWludGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9J
bmxpbmVCb3hQYWludGVyLmNwcAppbmRleCAzNjA2YzdlM2I4ZGVhN2Y5Mzg2M2M3MmZkOGY2MmVl
Y2UyOGU1NWQ3Li41YzE5YzkzMDA2MDBlMzc3ZDkyZWQ2M2YxZThiOWVhNGU2YmNiNmVmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuY3BwCkBAIC0yOTgs
NyArMjk4LDcgQEAgdm9pZCBJbmxpbmVCb3hQYWludGVyOjpwYWludEZpbGxMYXllcihjb25zdCBD
b2xvciYgY29sb3IsIGNvbnN0IEZpbGxMYXllciYgZmlsbEwKICAgICBib29sIGhhc1NpbmdsZUxp
bmUgPSAhbV9pbmxpbmVCb3gucHJldmlvdXNJbmxpbmVCb3goKSAmJiAhbV9pbmxpbmVCb3gubmV4
dElubGluZUJveCgpOwogCiAgICAgaWYgKCFoYXNGaWxsSW1hZ2VPckJvcmRlclJhZGlvdXMgfHwg
aGFzU2luZ2xlTGluZSB8fCBtX2lzUm9vdElubGluZUJveCkgewotICAgICAgICByZW5kZXJlcigp
LnBhaW50RmlsbExheWVyRXh0ZW5kZWQobV9wYWludEluZm8sIGNvbG9yLCBmaWxsTGF5ZXIsIHJl
Y3QsIEJhY2tncm91bmRCbGVlZE5vbmUsIG1faW5saW5lQm94LCByZWN0LnNpemUoKSwgb3ApOwor
ICAgICAgICByZW5kZXJlcigpLnBhaW50RmlsbExheWVyRXh0ZW5kZWQobV9wYWludEluZm8sIGNv
bG9yLCBmaWxsTGF5ZXIsIHJlY3QsIEJhY2tncm91bmRCbGVlZE5vbmUsIG1faW5saW5lQm94LCB7
IH0sIG9wKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMzA2LDcgKzMwNiw3IEBAIHZv
aWQgSW5saW5lQm94UGFpbnRlcjo6cGFpbnRGaWxsTGF5ZXIoY29uc3QgQ29sb3ImIGNvbG9yLCBj
b25zdCBGaWxsTGF5ZXImIGZpbGxMCiAgICAgaWYgKHJlbmRlcmVyKCkuc3R5bGUoKS5ib3hEZWNv
cmF0aW9uQnJlYWsoKSA9PSBCb3hEZWNvcmF0aW9uQnJlYWs6OkNsb25lKSB7CiAgICAgICAgIEdy
YXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlcihtX3BhaW50SW5mby5jb250ZXh0KCkp
OwogICAgICAgICBtX3BhaW50SW5mby5jb250ZXh0KCkuY2xpcCh7IHJlY3QueCgpLCByZWN0Lnko
KSwgTGF5b3V0VW5pdChtX2lubGluZUJveC5yZWN0KCkud2lkdGgoKSksIExheW91dFVuaXQobV9p
bmxpbmVCb3gucmVjdCgpLmhlaWdodCgpKSB9KTsKLSAgICAgICAgcmVuZGVyZXIoKS5wYWludEZp
bGxMYXllckV4dGVuZGVkKG1fcGFpbnRJbmZvLCBjb2xvciwgZmlsbExheWVyLCByZWN0LCBCYWNr
Z3JvdW5kQmxlZWROb25lLCBtX2lubGluZUJveCwgcmVjdC5zaXplKCksIG9wKTsKKyAgICAgICAg
cmVuZGVyZXIoKS5wYWludEZpbGxMYXllckV4dGVuZGVkKG1fcGFpbnRJbmZvLCBjb2xvciwgZmls
bExheWVyLCByZWN0LCBCYWNrZ3JvdW5kQmxlZWROb25lLCBtX2lubGluZUJveCwgeyB9LCBvcCk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKQEAgLTMzMiwxNCArMzMyLDE2IEBAIHZv
aWQgSW5saW5lQm94UGFpbnRlcjo6cGFpbnRGaWxsTGF5ZXIoY29uc3QgQ29sb3ImIGNvbG9yLCBj
b25zdCBGaWxsTGF5ZXImIGZpbGxMCiAgICAgICAgIGZvciAoYXV0byBib3ggPSBtX2lubGluZUJv
eC5pdGVyYXRvcigpOyBib3g7IGJveC50cmF2ZXJzZVByZXZpb3VzSW5saW5lQm94KCkpCiAgICAg
ICAgICAgICB0b3RhbExvZ2ljYWxXaWR0aCArPSBib3gtPmxvZ2ljYWxXaWR0aCgpOwogICAgIH0K
LSAgICBMYXlvdXRVbml0IHN0cmlwWCA9IHJlY3QueCgpIC0gKGlzSG9yaXpvbnRhbCgpID8gbG9n
aWNhbE9mZnNldE9uTGluZSA6IDBfbHUpOwotICAgIExheW91dFVuaXQgc3RyaXBZID0gcmVjdC55
KCkgLSAoaXNIb3Jpem9udGFsKCkgPyAwX2x1IDogbG9naWNhbE9mZnNldE9uTGluZSk7Ci0gICAg
TGF5b3V0VW5pdCBzdHJpcFdpZHRoID0gaXNIb3Jpem9udGFsKCkgPyB0b3RhbExvZ2ljYWxXaWR0
aCA6IExheW91dFVuaXQobV9pbmxpbmVCb3gucmVjdCgpLndpZHRoKCkpOwotICAgIExheW91dFVu
aXQgc3RyaXBIZWlnaHQgPSBpc0hvcml6b250YWwoKSA/IExheW91dFVuaXQobV9pbmxpbmVCb3gu
cmVjdCgpLmhlaWdodCgpKSA6IHRvdGFsTG9naWNhbFdpZHRoOworICAgIExheW91dFJlY3QgYmFj
a2dyb3VuZEltYWdlU3RyaXAgeworICAgICAgICByZWN0LngoKSAtIChpc0hvcml6b250YWwoKSA/
IGxvZ2ljYWxPZmZzZXRPbkxpbmUgOiAwX2x1KSwKKyAgICAgICAgcmVjdC55KCkgLSAoaXNIb3Jp
em9udGFsKCkgPyAwX2x1IDogbG9naWNhbE9mZnNldE9uTGluZSksCisgICAgICAgIGlzSG9yaXpv
bnRhbCgpID8gdG90YWxMb2dpY2FsV2lkdGggOiBMYXlvdXRVbml0KG1faW5saW5lQm94LnJlY3Qo
KS53aWR0aCgpKSwKKyAgICAgICAgaXNIb3Jpem9udGFsKCkgPyBMYXlvdXRVbml0KG1faW5saW5l
Qm94LnJlY3QoKS5oZWlnaHQoKSkgOiB0b3RhbExvZ2ljYWxXaWR0aAorICAgIH07CiAKICAgICBH
cmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIobV9wYWludEluZm8uY29udGV4dCgp
KTsKLSAgICBtX3BhaW50SW5mby5jb250ZXh0KCkuY2xpcCh7IHJlY3QueCgpLCByZWN0LnkoKSwg
TGF5b3V0VW5pdChtX2lubGluZUJveC5yZWN0KCkud2lkdGgoKSksIExheW91dFVuaXQobV9pbmxp
bmVCb3gucmVjdCgpLmhlaWdodCgpKSB9KTsKLSAgICByZW5kZXJlcigpLnBhaW50RmlsbExheWVy
RXh0ZW5kZWQobV9wYWludEluZm8sIGNvbG9yLCBmaWxsTGF5ZXIsIExheW91dFJlY3Qoc3RyaXBY
LCBzdHJpcFksIHN0cmlwV2lkdGgsIHN0cmlwSGVpZ2h0KSwgQmFja2dyb3VuZEJsZWVkTm9uZSwg
bV9pbmxpbmVCb3gsIHJlY3Quc2l6ZSgpLCBvcCk7CisgICAgbV9wYWludEluZm8uY29udGV4dCgp
LmNsaXAoRmxvYXRSZWN0IHsgcmVjdCB9KTsKKyAgICByZW5kZXJlcigpLnBhaW50RmlsbExheWVy
RXh0ZW5kZWQobV9wYWludEluZm8sIGNvbG9yLCBmaWxsTGF5ZXIsIHJlY3QsIEJhY2tncm91bmRC
bGVlZE5vbmUsIG1faW5saW5lQm94LCBiYWNrZ3JvdW5kSW1hZ2VTdHJpcCwgb3ApOwogfQogCiB2
b2lkIElubGluZUJveFBhaW50ZXI6OnBhaW50Qm94U2hhZG93KFNoYWRvd1N0eWxlIHNoYWRvd1N0
eWxlLCBjb25zdCBMYXlvdXRSZWN0JiBwYWludFJlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guY3BwCmluZGV4IGRhMGJiNmQ3ZWI3ZDQ1MGI5YjU2N2ZlNjVjNzYyOGIxYzlkZDFl
ZTkuLjYwZGEzZWMyM2IxYThjMGMyMTExZDIzYmZiNGZlNTU5YjMyZDZkMjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC0xODgzLDcgKzE4ODMsNyBAQCB2b2lkIFJl
bmRlckJveDo6cGFpbnRGaWxsTGF5ZXJzKGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25z
dCBDb2xvciYgY29sb3IsCiB2b2lkIFJlbmRlckJveDo6cGFpbnRGaWxsTGF5ZXIoY29uc3QgUGFp
bnRJbmZvJiBwYWludEluZm8sIGNvbnN0IENvbG9yJiBjLCBjb25zdCBGaWxsTGF5ZXImIGZpbGxM
YXllciwgY29uc3QgTGF5b3V0UmVjdCYgcmVjdCwKICAgICBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFu
Y2UgYmxlZWRBdm9pZGFuY2UsIENvbXBvc2l0ZU9wZXJhdG9yIG9wLCBSZW5kZXJFbGVtZW50KiBi
YWNrZ3JvdW5kT2JqZWN0LCBCYXNlQmFja2dyb3VuZENvbG9yVXNhZ2UgYmFzZUJnQ29sb3JVc2Fn
ZSkKIHsKLSAgICBwYWludEZpbGxMYXllckV4dGVuZGVkKHBhaW50SW5mbywgYywgZmlsbExheWVy
LCByZWN0LCBibGVlZEF2b2lkYW5jZSwgeyB9LCBMYXlvdXRTaXplKCksIG9wLCBiYWNrZ3JvdW5k
T2JqZWN0LCBiYXNlQmdDb2xvclVzYWdlKTsKKyAgICBwYWludEZpbGxMYXllckV4dGVuZGVkKHBh
aW50SW5mbywgYywgZmlsbExheWVyLCByZWN0LCBibGVlZEF2b2lkYW5jZSwgeyB9LCB7IH0sIG9w
LCBiYWNrZ3JvdW5kT2JqZWN0LCBiYXNlQmdDb2xvclVzYWdlKTsKIH0KIAogc3RhdGljIFN0eWxl
SW1hZ2UqIGZpbmRMYXllclVzZWRJbWFnZShXcmFwcGVkSW1hZ2VQdHIgaW1hZ2UsIGNvbnN0IEZp
bGxMYXllciYgbGF5ZXJzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJveE1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJC
b3hNb2RlbE9iamVjdC5jcHAKaW5kZXggZDRiNjczNzMzZDA1MDhkYTIyNGJkYjA3N2Y0ZDljNjM5
N2IxZjNhZC4uOGEwMjBlMzM5MTNjMWQ0ZGQ5M2VlYTMwYWM0ZjZlMjU4NjRkMWI2YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCkBA
IC02MjMsMTIgKzYyMywxMiBAQCBMYXlvdXRVbml0IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpjb21w
dXRlZENTU1BhZGRpbmcoY29uc3QgTGVuZ3RoJiBwYWRkaW5nKSBjb25zdAogICAgIHJldHVybiBt
aW5pbXVtVmFsdWVGb3JMZW5ndGgocGFkZGluZywgdyk7CiB9CiAKLVJvdW5kZWRSZWN0IFJlbmRl
ckJveE1vZGVsT2JqZWN0OjpnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoY29uc3QgTGF5b3V0UmVj
dCYgYm9yZGVyUmVjdCwgY29uc3QgSW5saW5lSXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiBi
b3gsIExheW91dFVuaXQgaW5saW5lQm94V2lkdGgsIExheW91dFVuaXQgaW5saW5lQm94SGVpZ2h0
LAorUm91bmRlZFJlY3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmdldEJhY2tncm91bmRSb3VuZGVk
UmVjdChjb25zdCBMYXlvdXRSZWN0JiBib3JkZXJSZWN0LCBjb25zdCBJbmxpbmVJdGVyYXRvcjo6
SW5saW5lQm94SXRlcmF0b3ImIGJveCwKICAgICBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2Us
IGJvb2wgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0CiB7CiAgICAgUm91bmRlZFJlY3Qg
Ym9yZGVyID0gc3R5bGUoKS5nZXRSb3VuZGVkQm9yZGVyRm9yKGJvcmRlclJlY3QsIGluY2x1ZGVM
b2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKICAgICBpZiAoYm94ICYm
IChib3gtPm5leHRJbmxpbmVCb3goKSB8fCBib3gtPnByZXZpb3VzSW5saW5lQm94KCkpKSB7Ci0g
ICAgICAgIFJvdW5kZWRSZWN0IHNlZ21lbnRCb3JkZXIgPSBzdHlsZSgpLmdldFJvdW5kZWRCb3Jk
ZXJGb3IoTGF5b3V0UmVjdCgwX2x1LCAwX2x1LCBpbmxpbmVCb3hXaWR0aCwgaW5saW5lQm94SGVp
Z2h0KSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpOwor
ICAgICAgICBSb3VuZGVkUmVjdCBzZWdtZW50Qm9yZGVyID0gc3R5bGUoKS5nZXRSb3VuZGVkQm9y
ZGVyRm9yKExheW91dFJlY3QoMF9sdSwgMF9sdSwgYm9yZGVyUmVjdC53aWR0aCgpLCBib3JkZXJS
ZWN0LmhlaWdodCgpKSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdo
dEVkZ2UpOwogICAgICAgICBib3JkZXIuc2V0UmFkaWkoc2VnbWVudEJvcmRlci5yYWRpaSgpKTsK
ICAgICB9CiAgICAgcmV0dXJuIGJvcmRlcjsKQEAgLTY4NCwxNyArNjg0LDE3IEBAIExheW91dFJl
Y3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmJvcmRlcklubmVyUmVjdEFkanVzdGVkRm9yQmxlZWRB
dm9pZGFuY2UoY29uc3QKICAgICByZXR1cm4gc2hyaW5rUmVjdEJ5T25lRGV2aWNlUGl4ZWwoY29u
dGV4dCwgcmVjdCwgZG9jdW1lbnQoKS5kZXZpY2VTY2FsZUZhY3RvcigpKTsKIH0KIAotUm91bmRl
ZFJlY3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmJhY2tncm91bmRSb3VuZGVkUmVjdEFkanVzdGVk
Rm9yQmxlZWRBdm9pZGFuY2UoY29uc3QgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBM
YXlvdXRSZWN0JiBib3JkZXJSZWN0LCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UgYmxlZWRBdm9p
ZGFuY2UsIGNvbnN0IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRvciYgYm94LCBjb25z
dCBMYXlvdXRTaXplJiBib3hTaXplLCBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJvb2wg
aW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0CitSb3VuZGVkUmVjdCBSZW5kZXJCb3hNb2Rl
bE9iamVjdDo6YmFja2dyb3VuZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZShj
b25zdCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IExheW91dFJlY3QmIGJvcmRlclJl
Y3QsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSBibGVlZEF2b2lkYW5jZSwgY29uc3QgSW5saW5l
SXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiBib3gsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0
RWRnZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSkgY29uc3QKIHsKICAgICBpZiAoYmxl
ZWRBdm9pZGFuY2UgPT0gQmFja2dyb3VuZEJsZWVkU2hyaW5rQmFja2dyb3VuZCkgewogICAgICAg
ICAvLyBXZSBzaHJpbmsgdGhlIHJlY3RhbmdsZSBieSBvbmUgZGV2aWNlIHBpeGVsIG9uIGVhY2gg
c2lkZSBiZWNhdXNlIHRoZSBibGVlZCBpcyBvbmUgcGl4ZWwgbWF4aW11bS4KLSAgICAgICAgcmV0
dXJuIGdldEJhY2tncm91bmRSb3VuZGVkUmVjdChzaHJpbmtSZWN0QnlPbmVEZXZpY2VQaXhlbChj
b250ZXh0LCBib3JkZXJSZWN0LCBkb2N1bWVudCgpLmRldmljZVNjYWxlRmFjdG9yKCkpLCBib3gs
IGJveFNpemUud2lkdGgoKSwgYm94U2l6ZS5oZWlnaHQoKSwKKyAgICAgICAgcmV0dXJuIGdldEJh
Y2tncm91bmRSb3VuZGVkUmVjdChzaHJpbmtSZWN0QnlPbmVEZXZpY2VQaXhlbChjb250ZXh0LCBi
b3JkZXJSZWN0LCBkb2N1bWVudCgpLmRldmljZVNjYWxlRmFjdG9yKCkpLCBib3gsCiAgICAgICAg
ICAgICBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSk7CiAg
ICAgfQogICAgIGlmIChibGVlZEF2b2lkYW5jZSA9PSBCYWNrZ3JvdW5kQmxlZWRCYWNrZ3JvdW5k
T3ZlckJvcmRlcikKICAgICAgICAgcmV0dXJuIHN0eWxlKCkuZ2V0Um91bmRlZElubmVyQm9yZGVy
Rm9yKGJvcmRlclJlY3QsIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmln
aHRFZGdlKTsKIAotICAgIHJldHVybiBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoYm9yZGVyUmVj
dCwgYm94LCBib3hTaXplLndpZHRoKCksIGJveFNpemUuaGVpZ2h0KCksIGluY2x1ZGVMb2dpY2Fs
TGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKKyAgICByZXR1cm4gZ2V0QmFja2dy
b3VuZFJvdW5kZWRSZWN0KGJvcmRlclJlY3QsIGJveCwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwg
aW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpOwogfQogCiBzdGF0aWMgdm9pZCBhcHBseUJveFNoYWRv
d0ZvckJhY2tncm91bmQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBSZW5kZXJTdHls
ZSYgc3R5bGUpCkBAIC03MzcsNyArNzM3LDcgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6
cGFpbnRNYXNrRm9yVGV4dEZpbGxCb3goSW1hZ2VCdWZmZXIqIG1hc2tJbWFnZSwgY29uc3QKIH0K
IAogdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRGaWxsTGF5ZXJFeHRlbmRlZChjb25z
dCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgQ29sb3ImIGNvbG9yLCBjb25zdCBGaWxsTGF5
ZXImIGJnTGF5ZXIsIGNvbnN0IExheW91dFJlY3QmIHJlY3QsCi0gICAgQmFja2dyb3VuZEJsZWVk
QXZvaWRhbmNlIGJsZWVkQXZvaWRhbmNlLCBjb25zdCBJbmxpbmVJdGVyYXRvcjo6SW5saW5lQm94
SXRlcmF0b3ImIGJveCwgY29uc3QgTGF5b3V0U2l6ZSYgYm94U2l6ZSwgQ29tcG9zaXRlT3BlcmF0
b3Igb3AsIFJlbmRlckVsZW1lbnQqIGJhY2tncm91bmRPYmplY3QsIEJhc2VCYWNrZ3JvdW5kQ29s
b3JVc2FnZSBiYXNlQmdDb2xvclVzYWdlKQorICAgIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSBi
bGVlZEF2b2lkYW5jZSwgY29uc3QgSW5saW5lSXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiBi
b3gsIGNvbnN0IExheW91dFJlY3QmIGJhY2tncm91bmRJbWFnZVN0cmlwLCBDb21wb3NpdGVPcGVy
YXRvciBvcCwgUmVuZGVyRWxlbWVudCogYmFja2dyb3VuZE9iamVjdCwgQmFzZUJhY2tncm91bmRD
b2xvclVzYWdlIGJhc2VCZ0NvbG9yVXNhZ2UpCiB7CiAgICAgR3JhcGhpY3NDb250ZXh0JiBjb250
ZXh0ID0gcGFpbnRJbmZvLmNvbnRleHQoKTsKIApAQCAtODEyLDcgKzgxMiw3IEBAIHZvaWQgUmVu
ZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVyRXh0ZW5kZWQoY29uc3QgUGFpbnRJbmZv
JiBwYWludEluZm8sIGNvCiAgICAgICAgICAgICBhcHBseUJveFNoYWRvd0ZvckJhY2tncm91bmQo
Y29udGV4dCwgc3R5bGUoKSk7CiAKICAgICAgICAgaWYgKGhhc1JvdW5kZWRCb3JkZXIgJiYgYmxl
ZWRBdm9pZGFuY2UgIT0gQmFja2dyb3VuZEJsZWVkVXNlVHJhbnNwYXJlbmN5TGF5ZXIpIHsKLSAg
ICAgICAgICAgIEZsb2F0Um91bmRlZFJlY3QgcGl4ZWxTbmFwcGVkQm9yZGVyID0gYmFja2dyb3Vu
ZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZShjb250ZXh0LCByZWN0LCBibGVl
ZEF2b2lkYW5jZSwgYm94LCBib3hTaXplLAorICAgICAgICAgICAgRmxvYXRSb3VuZGVkUmVjdCBw
aXhlbFNuYXBwZWRCb3JkZXIgPSBiYWNrZ3JvdW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVk
QXZvaWRhbmNlKGNvbnRleHQsIHJlY3QsIGJsZWVkQXZvaWRhbmNlLCBib3gsCiAgICAgICAgICAg
ICAgICAgaW5jbHVkZUxlZnRFZGdlLCBpbmNsdWRlUmlnaHRFZGdlKS5waXhlbFNuYXBwZWRSb3Vu
ZGVkUmVjdEZvclBhaW50aW5nKGRldmljZVNjYWxlRmFjdG9yKTsKICAgICAgICAgICAgIGlmIChw
aXhlbFNuYXBwZWRCb3JkZXIuaXNSZW5kZXJhYmxlKCkpIHsKICAgICAgICAgICAgICAgICBDb21w
b3NpdGVPcGVyYXRvciBwcmV2aW91c09wZXJhdG9yID0gY29udGV4dC5jb21wb3NpdGVPcGVyYXRp
b24oKTsKQEAgLTg0MCw3ICs4NDAsNyBAQCB2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWlu
dEZpbGxMYXllckV4dGVuZGVkKGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjbwogICAgIGJv
b2wgY2xpcFRvQm9yZGVyUmFkaXVzID0gaGFzUm91bmRlZEJvcmRlciAmJiAhKGlzQm9yZGVyRmls
bCAmJiBibGVlZEF2b2lkYW5jZSA9PSBCYWNrZ3JvdW5kQmxlZWRVc2VUcmFuc3BhcmVuY3lMYXll
cik7CiAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBjbGlwVG9Cb3JkZXJTdGF0ZVNhdmVy
KGNvbnRleHQsIGNsaXBUb0JvcmRlclJhZGl1cyk7CiAgICAgaWYgKGNsaXBUb0JvcmRlclJhZGl1
cykgewotICAgICAgICBSb3VuZGVkUmVjdCBib3JkZXIgPSBpc0JvcmRlckZpbGwgPyBiYWNrZ3Jv
dW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKGNvbnRleHQsIHJlY3QsIGJs
ZWVkQXZvaWRhbmNlLCBib3gsIGJveFNpemUsIGluY2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJpZ2h0
RWRnZSkgOiBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QocmVjdCwgYm94LCBib3hTaXplLndpZHRo
KCksIGJveFNpemUuaGVpZ2h0KCksIGluY2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJpZ2h0RWRnZSk7
CisgICAgICAgIFJvdW5kZWRSZWN0IGJvcmRlciA9IGlzQm9yZGVyRmlsbCA/IGJhY2tncm91bmRS
b3VuZGVkUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29udGV4dCwgcmVjdCwgYmxlZWRB
dm9pZGFuY2UsIGJveCwgaW5jbHVkZUxlZnRFZGdlLCBpbmNsdWRlUmlnaHRFZGdlKSA6IGdldEJh
Y2tncm91bmRSb3VuZGVkUmVjdChyZWN0LCBib3gsIGluY2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJp
Z2h0RWRnZSk7CiAKICAgICAgICAgLy8gQ2xpcCB0byB0aGUgcGFkZGluZyBvciBjb250ZW50IGJv
eGVzIGFzIG5lY2Vzc2FyeS4KICAgICAgICAgaWYgKGJnTGF5ZXIuY2xpcCgpID09IEZpbGxCb3g6
OkNvbnRlbnQpIHsKQEAgLTk1NCw3ICs5NTQsMTAgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVj
dDo6cGFpbnRGaWxsTGF5ZXJFeHRlbmRlZChjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY28K
IAogICAgIC8vIG5vIHByb2dyZXNzaXZlIGxvYWRpbmcgb2YgdGhlIGJhY2tncm91bmQgaW1hZ2UK
ICAgICBpZiAoIWJhc2VCZ0NvbG9yT25seSAmJiBzaG91bGRQYWludEJhY2tncm91bmRJbWFnZSkg
ewotICAgICAgICBhdXRvIGdlb21ldHJ5ID0gY2FsY3VsYXRlQmFja2dyb3VuZEltYWdlR2VvbWV0
cnkocGFpbnRJbmZvLnBhaW50Q29udGFpbmVyLCBiZ0xheWVyLCByZWN0LmxvY2F0aW9uKCksIHNj
cm9sbGVkUGFpbnRSZWN0LCBiYWNrZ3JvdW5kT2JqZWN0KTsKKyAgICAgICAgLy8gTXVsdGlsaW5l
IGlubGluZSBib3hlcyBwYWludCBsaWtlIHRoZSBpbWFnZSB3YXMgb25lIGxvbmcgc3RyaXAgc3Bh
bm5pbmcgbGluZXMuIFRoZSBiYWNrZ3JvdW5kSW1hZ2VTdHJpcCBpcyB0aGlzIGZpY3Rpb25hbCBy
ZWN0YW5nbGUuCisgICAgICAgIGF1dG8gaW1hZ2VSZWN0ID0gYmFja2dyb3VuZEltYWdlU3RyaXAu
aXNFbXB0eSgpID8gc2Nyb2xsZWRQYWludFJlY3QgOiBiYWNrZ3JvdW5kSW1hZ2VTdHJpcDsKKyAg
ICAgICAgYXV0byBwYWludE9mZnNldCA9IGJhY2tncm91bmRJbWFnZVN0cmlwLmlzRW1wdHkoKSA/
IHJlY3QubG9jYXRpb24oKSA6IGJhY2tncm91bmRJbWFnZVN0cmlwLmxvY2F0aW9uKCk7CisgICAg
ICAgIGF1dG8gZ2VvbWV0cnkgPSBjYWxjdWxhdGVCYWNrZ3JvdW5kSW1hZ2VHZW9tZXRyeShwYWlu
dEluZm8ucGFpbnRDb250YWluZXIsIGJnTGF5ZXIsIHBhaW50T2Zmc2V0LCBpbWFnZVJlY3QsIGJh
Y2tncm91bmRPYmplY3QpOwogICAgICAgICBnZW9tZXRyeS5jbGlwKExheW91dFJlY3QocGl4ZWxT
bmFwcGVkUmVjdCkpOwogICAgICAgICBSZWZQdHI8SW1hZ2U+IGltYWdlOwogICAgICAgICBpZiAo
IWdlb21ldHJ5LmRlc3RSZWN0KCkuaXNFbXB0eSgpICYmIChpbWFnZSA9IGJnSW1hZ2UtPmltYWdl
KGJhY2tncm91bmRPYmplY3QgPyBiYWNrZ3JvdW5kT2JqZWN0IDogdGhpcywgZ2VvbWV0cnkudGls
ZVNpemUoKSkpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5oCmluZGV4IDA0MzAzMWMzZWZkNDVlZDgxYTVkN2Q5NGNkNGMxZDQzNjgwMjZlZDku
LjE1ZmRmOTM0ZGVlMjM2ZmMzOTNiYTE5MDAyMDc2M2YyZDVmZDViNDIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCkBAIC0yMTMsNyArMjEz
LDcgQEAgcHVibGljOgogICAgIHZvaWQgcGFpbnRCb3JkZXIoY29uc3QgUGFpbnRJbmZvJiwgY29u
c3QgTGF5b3V0UmVjdCYsIGNvbnN0IFJlbmRlclN0eWxlJiwgQmFja2dyb3VuZEJsZWVkQXZvaWRh
bmNlID0gQmFja2dyb3VuZEJsZWVkTm9uZSwgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlID0g
dHJ1ZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSA9IHRydWUpOwogICAgIGJvb2wgcGFp
bnROaW5lUGllY2VJbWFnZShHcmFwaGljc0NvbnRleHQmLCBjb25zdCBMYXlvdXRSZWN0JiwgY29u
c3QgUmVuZGVyU3R5bGUmLCBjb25zdCBOaW5lUGllY2VJbWFnZSYsIENvbXBvc2l0ZU9wZXJhdG9y
ID0gQ29tcG9zaXRlT3BlcmF0b3I6OlNvdXJjZU92ZXIpOwogICAgIHZvaWQgcGFpbnRCb3hTaGFk
b3coY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0UmVjdCYsIGNvbnN0IFJlbmRlclN0eWxl
JiwgU2hhZG93U3R5bGUsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSA9IHRydWUsIGJvb2wg
aW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UgPSB0cnVlKTsKLSAgICB2b2lkIHBhaW50RmlsbExheWVy
RXh0ZW5kZWQoY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgQ29sb3ImLCBjb25zdCBGaWxsTGF5ZXIm
LCBjb25zdCBMYXlvdXRSZWN0JiwgQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNlLCBjb25zdCBJbmxp
bmVJdGVyYXRvcjo6SW5saW5lQm94SXRlcmF0b3ImLCBjb25zdCBMYXlvdXRTaXplJiA9IExheW91
dFNpemUoKSwgQ29tcG9zaXRlT3BlcmF0b3IgPSBDb21wb3NpdGVPcGVyYXRvcjo6U291cmNlT3Zl
ciwgUmVuZGVyRWxlbWVudCogYmFja2dyb3VuZE9iamVjdCA9IG51bGxwdHIsIEJhc2VCYWNrZ3Jv
dW5kQ29sb3JVc2FnZSA9IEJhc2VCYWNrZ3JvdW5kQ29sb3JVc2UpOworICAgIHZvaWQgcGFpbnRG
aWxsTGF5ZXJFeHRlbmRlZChjb25zdCBQYWludEluZm8mLCBjb25zdCBDb2xvciYsIGNvbnN0IEZp
bGxMYXllciYsIGNvbnN0IExheW91dFJlY3QmLCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UsIGNv
bnN0IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRvciYsIGNvbnN0IExheW91dFJlY3Qm
IGJhY2tncm91bmRJbWFnZVN0cmlwID0geyB9LCBDb21wb3NpdGVPcGVyYXRvciA9IENvbXBvc2l0
ZU9wZXJhdG9yOjpTb3VyY2VPdmVyLCBSZW5kZXJFbGVtZW50KiBiYWNrZ3JvdW5kT2JqZWN0ID0g
bnVsbHB0ciwgQmFzZUJhY2tncm91bmRDb2xvclVzYWdlID0gQmFzZUJhY2tncm91bmRDb2xvclVz
ZSk7CiAKICAgICB2aXJ0dWFsIGJvb2wgYm94U2hhZG93U2hvdWxkQmVBcHBsaWVkVG9CYWNrZ3Jv
dW5kKGNvbnN0IExheW91dFBvaW50JiBhYnNvbHV0ZVBhaW50UG9zdGlvbiwgQmFja2dyb3VuZEJs
ZWVkQXZvaWRhbmNlLCBjb25zdCBJbmxpbmVJdGVyYXRvcjo6SW5saW5lQm94SXRlcmF0b3ImKSBj
b25zdDsKIApAQCAtMjU5LDcgKzI1OSw3IEBAIHByb3RlY3RlZDoKICAgICAgICAgY29uc3QgTGF5
b3V0UmVjdCYgcGFpbnRSZWN0LCBSZW5kZXJFbGVtZW50KiA9IG51bGxwdHIpIGNvbnN0OwogICAg
IGJvb2wgYm9yZGVyT2JzY3VyZXNCYWNrZ3JvdW5kRWRnZShjb25zdCBGbG9hdFNpemUmIGNvbnRl
eHRTY2FsZSkgY29uc3Q7CiAgICAgYm9vbCBib3JkZXJPYnNjdXJlc0JhY2tncm91bmQoKSBjb25z
dDsKLSAgICBSb3VuZGVkUmVjdCBiYWNrZ3JvdW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVk
QXZvaWRhbmNlKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IExheW91dFJlY3QmLCBCYWNr
Z3JvdW5kQmxlZWRBdm9pZGFuY2UsIGNvbnN0IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVy
YXRvciYsIGNvbnN0IExheW91dFNpemUmLCBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJv
b2wgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0OworICAgIFJvdW5kZWRSZWN0IGJhY2tn
cm91bmRSb3VuZGVkUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29uc3QgR3JhcGhpY3ND
b250ZXh0JiwgY29uc3QgTGF5b3V0UmVjdCYsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSwgY29u
c3QgSW5saW5lSXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiwgYm9vbCBpbmNsdWRlTG9naWNh
bExlZnRFZGdlLCBib29sIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKSBjb25zdDsKICAgICBMYXlv
dXRSZWN0IGJvcmRlcklubmVyUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29uc3QgR3Jh
cGhpY3NDb250ZXh0JiwgY29uc3QgTGF5b3V0UmVjdCYsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5j
ZSkgY29uc3Q7CiAKICAgICBJbnRlcnBvbGF0aW9uUXVhbGl0eSBjaG9vc2VJbnRlcnBvbGF0aW9u
UXVhbGl0eShHcmFwaGljc0NvbnRleHQmLCBJbWFnZSYsIGNvbnN0IHZvaWQqLCBjb25zdCBMYXlv
dXRTaXplJik7CkBAIC0zMTAsOCArMzEwLDcgQEAgcHJpdmF0ZToKIAogICAgIExheW91dFNpemUg
Y2FsY3VsYXRlRmlsbFRpbGVTaXplKGNvbnN0IEZpbGxMYXllciYsIGNvbnN0IExheW91dFNpemUm
IHNjYWxlZFBvc2l0aW9uaW5nQXJlYVNpemUpIGNvbnN0OwogCi0gICAgUm91bmRlZFJlY3QgZ2V0
QmFja2dyb3VuZFJvdW5kZWRSZWN0KGNvbnN0IExheW91dFJlY3QmLCBjb25zdCBJbmxpbmVJdGVy
YXRvcjo6SW5saW5lQm94SXRlcmF0b3ImLCBMYXlvdXRVbml0IGlubGluZUJveFdpZHRoLCBMYXlv
dXRVbml0IGlubGluZUJveEhlaWdodCwKLSAgICAgICAgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRF
ZGdlLCBib29sIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKSBjb25zdDsKKyAgICBSb3VuZGVkUmVj
dCBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoY29uc3QgTGF5b3V0UmVjdCYsIGNvbnN0IElubGlu
ZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRvciYsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRn
ZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSkgY29uc3Q7CiAgICAgCiAgICAgYm9vbCBm
aXhlZEJhY2tncm91bmRQYWludHNJbkxvY2FsQ29vcmRpbmF0ZXMoKSBjb25zdDsKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IDdmYzJlZTM5NGQ1NDk5YmRiMWU2NTY5YzEzMWQ5YzljYjViYTI3YTAuLjQ3NzMzZGYyNjM3MGNl
YzE3NjllOWM4Y2MyZGY5NTFmNmIwOTZhYmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0x
MC0xOCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CisKKyAgICAgICAgYmFja2dy
b3VuZC1jbGlwOnRleHQgZG9lc24ndCBwYWludCBjb3JyZWN0bHkgZm9yIGlubGluZSBib3ggc3Bh
bm5pbmcgbXVsdGlwbGUgbGluZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIzMTg5MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogZmFzdC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11
bHRpbGluZS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2lubGluZS9pbmxp
bmUtYmFja2dyb3VuZC1jbGlwLXRleHQtbXVsdGlsaW5lLmh0bWw6IEFkZGVkLgorCiAyMDIxLTEw
LTE3ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2ViWFJdIFN0
dWJzIGZvciBXZWJYUiBIYW5kIElucHV0IE1vZHVsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS1leHBlY3Rl
ZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10
ZXh0LW11bHRpbGluZS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBkYzk4NGNjZmFiOWFjYzlm
YTUyMTQ3NTk4Y2VlZjkzNWU0YjNhNjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2lubGluZS9pbmxpbmUtYmFja2dyb3VuZC1jbGlwLXRleHQtbXVsdGlsaW5lLWV4cGVjdGVk
Lmh0bWwKQEAgLTAsMCArMSwxNyBAQAorPHN0eWxlPgorZGl2IHsKKyAgICBmb250LWZhbWlseTog
J0FoZW0nOworfQorLmNsaXAgeworICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKKyAgICBiYWNrZ3Jv
dW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNjBkZWcsIGJsdWUsIHllbGxvdywgYmx1ZSwgeWVs
bG93LCBibHVlKTsKK30KKy5zcGFjZSB7CisgICAgY29sb3I6IHdoaXRlOworfQorPC9zdHlsZT4K
KzxkaXY+YSA8c3BhbiBjbGFzcz0iY2xpcCI+Yjxicj4KK2M8c3BhbiBjbGFzcz0ic3BhY2UiPnc8
L3NwYW4+ZDxicj4KKzxzcGFuPmU8c3BhbiBjbGFzcz0ic3BhY2UiPnc8L3NwYW4+PC9zcGFuPmY8
L3NwYW4+Cis8L2Rpdj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5s
aW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjE0NWVhY2UzNTk0YTUxYzQzMWZhMjI2MTUyZmY4MjJiYjcyZmQxMjgKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtYmFja2dyb3VuZC1jbGlw
LXRleHQtbXVsdGlsaW5lLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPHN0eWxlPgorZGl2IHsKKyAg
ICBmb250LWZhbWlseTogJ0FoZW0nOworfQorLmNsaXAgeworICAgIGNvbG9yOiB0cmFuc3BhcmVu
dDsKKyAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNjBkZWcsIGJsdWUsIHll
bGxvdywgYmx1ZSwgeWVsbG93LCBibHVlKTsKKyAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7Cit9
Cis8L3N0eWxlPgorPGRpdj5hIDxzcGFuIGNsYXNzPSJjbGlwIj5iPGJyPgorYyBkPGJyPgorPHNw
YW4+ZSA8L3NwYW4+Zjwvc3Bhbj4KKzwvZGl2Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>441615</attachid>
            <date>2021-10-18 09:30:18 -0700</date>
            <delta_ts>2021-10-18 10:18:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231891-20211018193017.patch</filename>
            <type>text/plain</type>
            <size>19202</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0MzU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDQ1NDljZTMyZmI5ODY4
ZjdmODcxODJhYTE4MjMzMjRkZGRhZTlkYS4uMzNjYWQxN2JhNTdmNTM3ZDgzZWY4OTI1MGQ3MmEw
MGI5ZWU0ZTI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIxLTEwLTE4ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6
dGV4dCBkb2Vzbid0IHBhaW50IGNvcnJlY3RseSBmb3IgaW5saW5lIGJveCBzcGFubmluZyBtdWx0
aXBsZSBsaW5lcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjMxODkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWxhbiBCdWp0YXMuCisKKyAgICAgICAg
J2JhY2tncm91bmQtY2xpcDogdGV4dCcgcGFpbnRzIHRvIGEgd3JvbmcgcG9zaXRpb24gaWYgdGhl
IGlubGluZSBib3ggc3BhbnMgbXVsdGlwbGUgbGluZXMuCisKKyAgICAgICAgVGVzdDogZmFzdC9p
bmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS5odG1sCisKKyAgICAg
ICAgKiByZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bmxpbmVCb3hQYWludGVyOjpwYWludEZpbGxMYXllcik6CisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OnBhaW50RmlsbExheWVy
KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OmdldEJhY2tncm91bmRSb3VuZGVkUmVj
dCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6YmFja2dy
b3VuZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZSBjb25zdCk6CisKKyAgICAg
ICAgTm8gbmVlZCB0byBwYXNzIGJveCBzaXplIHNlcGFyYXRlbHkgYXMgaXQgbm93IGFsd2F5cyBt
YXRjaGVzIHRoZSBwYXNzZWQgaW4gYm9yZGVyIHJlY3QuCisKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckJveE1vZGVsT2JqZWN0OjpwYWludEZpbGxMYXllckV4dGVuZGVkKToKKworICAgICAgICBU
aGUgJ3JlY3QnIHBhcmFtZXRlciB1c2VkIHRvIGJlIGVpdGhlciB0aGUgYm9yZGVyIGJveCByZWN0
IG9mIHRoZSBib3ggYmVpbmcgcGFpbnRlZCBvciwKKyAgICAgICAgaW4gdGhlIGNhc2Ugb2YgbXVs
dGlsaW5lIGlubGluZSBib3ggYmFja2dyb3VuZCBpbWFnZSwgdGhlIGltYWdlIHN0cmlwIGJlaW5n
IHBhaW50ZWQuCisKKyAgICAgICAgTWFrZSB0aGUgJ3JlY3QnIHBhcmFtZXRlciB0byBhbHdheXMg
YmUgdGhlIGJvcmRlciBib3ggYW5kIHBhc3MgdGhlIGJhY2tncm91bmQgaW1hZ2Ugc3RyaXAKKyAg
ICAgICAgc2VwYXJhdGVseS4KKworICAgICAgICBVc2UgdGhlIGJhY2tncm91bmQgaW1hZ2Ugc3Ry
aXAgb25seSBkdXJpbmcgYmFja2dyb3VuZCBpbWFnZSBwYWludGluZy4KKworICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
Qm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVyRXh0ZW5kZWQpOgorCiAyMDIxLTEwLTE4ICBQ
aGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbTWVkaWFT
dHJlYW1dIE1vY2sgdmlkZW8gc291cmNlIGJhY2tncm91bmQgbm90IGZ1bGx5IGZpbGxlZCBmb3Ig
Y3VzdG9tIHZpZGVvIHJlc29sdXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9JbmxpbmVCb3hQYWludGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Jbmxp
bmVCb3hQYWludGVyLmNwcAppbmRleCAzNjA2YzdlM2I4ZGVhN2Y5Mzg2M2M3MmZkOGY2MmVlY2Uy
OGU1NWQ3Li41YzE5YzkzMDA2MDBlMzc3ZDkyZWQ2M2YxZThiOWVhNGU2YmNiNmVmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lQm94UGFpbnRlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZUJveFBhaW50ZXIuY3BwCkBAIC0yOTgsNyAr
Mjk4LDcgQEAgdm9pZCBJbmxpbmVCb3hQYWludGVyOjpwYWludEZpbGxMYXllcihjb25zdCBDb2xv
ciYgY29sb3IsIGNvbnN0IEZpbGxMYXllciYgZmlsbEwKICAgICBib29sIGhhc1NpbmdsZUxpbmUg
PSAhbV9pbmxpbmVCb3gucHJldmlvdXNJbmxpbmVCb3goKSAmJiAhbV9pbmxpbmVCb3gubmV4dElu
bGluZUJveCgpOwogCiAgICAgaWYgKCFoYXNGaWxsSW1hZ2VPckJvcmRlclJhZGlvdXMgfHwgaGFz
U2luZ2xlTGluZSB8fCBtX2lzUm9vdElubGluZUJveCkgewotICAgICAgICByZW5kZXJlcigpLnBh
aW50RmlsbExheWVyRXh0ZW5kZWQobV9wYWludEluZm8sIGNvbG9yLCBmaWxsTGF5ZXIsIHJlY3Qs
IEJhY2tncm91bmRCbGVlZE5vbmUsIG1faW5saW5lQm94LCByZWN0LnNpemUoKSwgb3ApOworICAg
ICAgICByZW5kZXJlcigpLnBhaW50RmlsbExheWVyRXh0ZW5kZWQobV9wYWludEluZm8sIGNvbG9y
LCBmaWxsTGF5ZXIsIHJlY3QsIEJhY2tncm91bmRCbGVlZE5vbmUsIG1faW5saW5lQm94LCB7IH0s
IG9wKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMzA2LDcgKzMwNiw3IEBAIHZvaWQg
SW5saW5lQm94UGFpbnRlcjo6cGFpbnRGaWxsTGF5ZXIoY29uc3QgQ29sb3ImIGNvbG9yLCBjb25z
dCBGaWxsTGF5ZXImIGZpbGxMCiAgICAgaWYgKHJlbmRlcmVyKCkuc3R5bGUoKS5ib3hEZWNvcmF0
aW9uQnJlYWsoKSA9PSBCb3hEZWNvcmF0aW9uQnJlYWs6OkNsb25lKSB7CiAgICAgICAgIEdyYXBo
aWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlcihtX3BhaW50SW5mby5jb250ZXh0KCkpOwog
ICAgICAgICBtX3BhaW50SW5mby5jb250ZXh0KCkuY2xpcCh7IHJlY3QueCgpLCByZWN0LnkoKSwg
TGF5b3V0VW5pdChtX2lubGluZUJveC5yZWN0KCkud2lkdGgoKSksIExheW91dFVuaXQobV9pbmxp
bmVCb3gucmVjdCgpLmhlaWdodCgpKSB9KTsKLSAgICAgICAgcmVuZGVyZXIoKS5wYWludEZpbGxM
YXllckV4dGVuZGVkKG1fcGFpbnRJbmZvLCBjb2xvciwgZmlsbExheWVyLCByZWN0LCBCYWNrZ3Jv
dW5kQmxlZWROb25lLCBtX2lubGluZUJveCwgcmVjdC5zaXplKCksIG9wKTsKKyAgICAgICAgcmVu
ZGVyZXIoKS5wYWludEZpbGxMYXllckV4dGVuZGVkKG1fcGFpbnRJbmZvLCBjb2xvciwgZmlsbExh
eWVyLCByZWN0LCBCYWNrZ3JvdW5kQmxlZWROb25lLCBtX2lubGluZUJveCwgeyB9LCBvcCk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CiAjZW5kaWYKQEAgLTMzMiwxNCArMzMyLDE2IEBAIHZvaWQg
SW5saW5lQm94UGFpbnRlcjo6cGFpbnRGaWxsTGF5ZXIoY29uc3QgQ29sb3ImIGNvbG9yLCBjb25z
dCBGaWxsTGF5ZXImIGZpbGxMCiAgICAgICAgIGZvciAoYXV0byBib3ggPSBtX2lubGluZUJveC5p
dGVyYXRvcigpOyBib3g7IGJveC50cmF2ZXJzZVByZXZpb3VzSW5saW5lQm94KCkpCiAgICAgICAg
ICAgICB0b3RhbExvZ2ljYWxXaWR0aCArPSBib3gtPmxvZ2ljYWxXaWR0aCgpOwogICAgIH0KLSAg
ICBMYXlvdXRVbml0IHN0cmlwWCA9IHJlY3QueCgpIC0gKGlzSG9yaXpvbnRhbCgpID8gbG9naWNh
bE9mZnNldE9uTGluZSA6IDBfbHUpOwotICAgIExheW91dFVuaXQgc3RyaXBZID0gcmVjdC55KCkg
LSAoaXNIb3Jpem9udGFsKCkgPyAwX2x1IDogbG9naWNhbE9mZnNldE9uTGluZSk7Ci0gICAgTGF5
b3V0VW5pdCBzdHJpcFdpZHRoID0gaXNIb3Jpem9udGFsKCkgPyB0b3RhbExvZ2ljYWxXaWR0aCA6
IExheW91dFVuaXQobV9pbmxpbmVCb3gucmVjdCgpLndpZHRoKCkpOwotICAgIExheW91dFVuaXQg
c3RyaXBIZWlnaHQgPSBpc0hvcml6b250YWwoKSA/IExheW91dFVuaXQobV9pbmxpbmVCb3gucmVj
dCgpLmhlaWdodCgpKSA6IHRvdGFsTG9naWNhbFdpZHRoOworICAgIExheW91dFJlY3QgYmFja2dy
b3VuZEltYWdlU3RyaXAgeworICAgICAgICByZWN0LngoKSAtIChpc0hvcml6b250YWwoKSA/IGxv
Z2ljYWxPZmZzZXRPbkxpbmUgOiAwX2x1KSwKKyAgICAgICAgcmVjdC55KCkgLSAoaXNIb3Jpem9u
dGFsKCkgPyAwX2x1IDogbG9naWNhbE9mZnNldE9uTGluZSksCisgICAgICAgIGlzSG9yaXpvbnRh
bCgpID8gdG90YWxMb2dpY2FsV2lkdGggOiBMYXlvdXRVbml0KG1faW5saW5lQm94LnJlY3QoKS53
aWR0aCgpKSwKKyAgICAgICAgaXNIb3Jpem9udGFsKCkgPyBMYXlvdXRVbml0KG1faW5saW5lQm94
LnJlY3QoKS5oZWlnaHQoKSkgOiB0b3RhbExvZ2ljYWxXaWR0aAorICAgIH07CiAKICAgICBHcmFw
aGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIobV9wYWludEluZm8uY29udGV4dCgpKTsK
LSAgICBtX3BhaW50SW5mby5jb250ZXh0KCkuY2xpcCh7IHJlY3QueCgpLCByZWN0LnkoKSwgTGF5
b3V0VW5pdChtX2lubGluZUJveC5yZWN0KCkud2lkdGgoKSksIExheW91dFVuaXQobV9pbmxpbmVC
b3gucmVjdCgpLmhlaWdodCgpKSB9KTsKLSAgICByZW5kZXJlcigpLnBhaW50RmlsbExheWVyRXh0
ZW5kZWQobV9wYWludEluZm8sIGNvbG9yLCBmaWxsTGF5ZXIsIExheW91dFJlY3Qoc3RyaXBYLCBz
dHJpcFksIHN0cmlwV2lkdGgsIHN0cmlwSGVpZ2h0KSwgQmFja2dyb3VuZEJsZWVkTm9uZSwgbV9p
bmxpbmVCb3gsIHJlY3Quc2l6ZSgpLCBvcCk7CisgICAgbV9wYWludEluZm8uY29udGV4dCgpLmNs
aXAoRmxvYXRSZWN0IHsgcmVjdCB9KTsKKyAgICByZW5kZXJlcigpLnBhaW50RmlsbExheWVyRXh0
ZW5kZWQobV9wYWludEluZm8sIGNvbG9yLCBmaWxsTGF5ZXIsIHJlY3QsIEJhY2tncm91bmRCbGVl
ZE5vbmUsIG1faW5saW5lQm94LCBiYWNrZ3JvdW5kSW1hZ2VTdHJpcCwgb3ApOwogfQogCiB2b2lk
IElubGluZUJveFBhaW50ZXI6OnBhaW50Qm94U2hhZG93KFNoYWRvd1N0eWxlIHNoYWRvd1N0eWxl
LCBjb25zdCBMYXlvdXRSZWN0JiBwYWludFJlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guY3BwCmluZGV4IGRhMGJiNmQ3ZWI3ZDQ1MGI5YjU2N2ZlNjVjNzYyOGIxYzlkZDFlZTku
LjYwZGEzZWMyM2IxYThjMGMyMTExZDIzYmZiNGZlNTU5YjMyZDZkMjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC0xODgzLDcgKzE4ODMsNyBAQCB2b2lkIFJlbmRl
ckJveDo6cGFpbnRGaWxsTGF5ZXJzKGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBD
b2xvciYgY29sb3IsCiB2b2lkIFJlbmRlckJveDo6cGFpbnRGaWxsTGF5ZXIoY29uc3QgUGFpbnRJ
bmZvJiBwYWludEluZm8sIGNvbnN0IENvbG9yJiBjLCBjb25zdCBGaWxsTGF5ZXImIGZpbGxMYXll
ciwgY29uc3QgTGF5b3V0UmVjdCYgcmVjdCwKICAgICBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2Ug
YmxlZWRBdm9pZGFuY2UsIENvbXBvc2l0ZU9wZXJhdG9yIG9wLCBSZW5kZXJFbGVtZW50KiBiYWNr
Z3JvdW5kT2JqZWN0LCBCYXNlQmFja2dyb3VuZENvbG9yVXNhZ2UgYmFzZUJnQ29sb3JVc2FnZSkK
IHsKLSAgICBwYWludEZpbGxMYXllckV4dGVuZGVkKHBhaW50SW5mbywgYywgZmlsbExheWVyLCBy
ZWN0LCBibGVlZEF2b2lkYW5jZSwgeyB9LCBMYXlvdXRTaXplKCksIG9wLCBiYWNrZ3JvdW5kT2Jq
ZWN0LCBiYXNlQmdDb2xvclVzYWdlKTsKKyAgICBwYWludEZpbGxMYXllckV4dGVuZGVkKHBhaW50
SW5mbywgYywgZmlsbExheWVyLCByZWN0LCBibGVlZEF2b2lkYW5jZSwgeyB9LCB7IH0sIG9wLCBi
YWNrZ3JvdW5kT2JqZWN0LCBiYXNlQmdDb2xvclVzYWdlKTsKIH0KIAogc3RhdGljIFN0eWxlSW1h
Z2UqIGZpbmRMYXllclVzZWRJbWFnZShXcmFwcGVkSW1hZ2VQdHIgaW1hZ2UsIGNvbnN0IEZpbGxM
YXllciYgbGF5ZXJzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJveE1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hN
b2RlbE9iamVjdC5jcHAKaW5kZXggZDRiNjczNzMzZDA1MDhkYTIyNGJkYjA3N2Y0ZDljNjM5N2Ix
ZjNhZC4uOGEwMjBlMzM5MTNjMWQ0ZGQ5M2VlYTMwYWM0ZjZlMjU4NjRkMWI2YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCkBAIC02
MjMsMTIgKzYyMywxMiBAQCBMYXlvdXRVbml0IFJlbmRlckJveE1vZGVsT2JqZWN0Ojpjb21wdXRl
ZENTU1BhZGRpbmcoY29uc3QgTGVuZ3RoJiBwYWRkaW5nKSBjb25zdAogICAgIHJldHVybiBtaW5p
bXVtVmFsdWVGb3JMZW5ndGgocGFkZGluZywgdyk7CiB9CiAKLVJvdW5kZWRSZWN0IFJlbmRlckJv
eE1vZGVsT2JqZWN0OjpnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoY29uc3QgTGF5b3V0UmVjdCYg
Ym9yZGVyUmVjdCwgY29uc3QgSW5saW5lSXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiBib3gs
IExheW91dFVuaXQgaW5saW5lQm94V2lkdGgsIExheW91dFVuaXQgaW5saW5lQm94SGVpZ2h0LAor
Um91bmRlZFJlY3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmdldEJhY2tncm91bmRSb3VuZGVkUmVj
dChjb25zdCBMYXlvdXRSZWN0JiBib3JkZXJSZWN0LCBjb25zdCBJbmxpbmVJdGVyYXRvcjo6SW5s
aW5lQm94SXRlcmF0b3ImIGJveCwKICAgICBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJv
b2wgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0CiB7CiAgICAgUm91bmRlZFJlY3QgYm9y
ZGVyID0gc3R5bGUoKS5nZXRSb3VuZGVkQm9yZGVyRm9yKGJvcmRlclJlY3QsIGluY2x1ZGVMb2dp
Y2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKICAgICBpZiAoYm94ICYmIChi
b3gtPm5leHRJbmxpbmVCb3goKSB8fCBib3gtPnByZXZpb3VzSW5saW5lQm94KCkpKSB7Ci0gICAg
ICAgIFJvdW5kZWRSZWN0IHNlZ21lbnRCb3JkZXIgPSBzdHlsZSgpLmdldFJvdW5kZWRCb3JkZXJG
b3IoTGF5b3V0UmVjdCgwX2x1LCAwX2x1LCBpbmxpbmVCb3hXaWR0aCwgaW5saW5lQm94SGVpZ2h0
KSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpOworICAg
ICAgICBSb3VuZGVkUmVjdCBzZWdtZW50Qm9yZGVyID0gc3R5bGUoKS5nZXRSb3VuZGVkQm9yZGVy
Rm9yKExheW91dFJlY3QoMF9sdSwgMF9sdSwgYm9yZGVyUmVjdC53aWR0aCgpLCBib3JkZXJSZWN0
LmhlaWdodCgpKSwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5jbHVkZUxvZ2ljYWxSaWdodEVk
Z2UpOwogICAgICAgICBib3JkZXIuc2V0UmFkaWkoc2VnbWVudEJvcmRlci5yYWRpaSgpKTsKICAg
ICB9CiAgICAgcmV0dXJuIGJvcmRlcjsKQEAgLTY4NCwxNyArNjg0LDE3IEBAIExheW91dFJlY3Qg
UmVuZGVyQm94TW9kZWxPYmplY3Q6OmJvcmRlcklubmVyUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9p
ZGFuY2UoY29uc3QKICAgICByZXR1cm4gc2hyaW5rUmVjdEJ5T25lRGV2aWNlUGl4ZWwoY29udGV4
dCwgcmVjdCwgZG9jdW1lbnQoKS5kZXZpY2VTY2FsZUZhY3RvcigpKTsKIH0KIAotUm91bmRlZFJl
Y3QgUmVuZGVyQm94TW9kZWxPYmplY3Q6OmJhY2tncm91bmRSb3VuZGVkUmVjdEFkanVzdGVkRm9y
QmxlZWRBdm9pZGFuY2UoY29uc3QgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBMYXlv
dXRSZWN0JiBib3JkZXJSZWN0LCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UgYmxlZWRBdm9pZGFu
Y2UsIGNvbnN0IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRvciYgYm94LCBjb25zdCBM
YXlvdXRTaXplJiBib3hTaXplLCBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJvb2wgaW5j
bHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0CitSb3VuZGVkUmVjdCBSZW5kZXJCb3hNb2RlbE9i
amVjdDo6YmFja2dyb3VuZFJvdW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZShjb25z
dCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IExheW91dFJlY3QmIGJvcmRlclJlY3Qs
IEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSBibGVlZEF2b2lkYW5jZSwgY29uc3QgSW5saW5lSXRl
cmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiBib3gsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRn
ZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSkgY29uc3QKIHsKICAgICBpZiAoYmxlZWRB
dm9pZGFuY2UgPT0gQmFja2dyb3VuZEJsZWVkU2hyaW5rQmFja2dyb3VuZCkgewogICAgICAgICAv
LyBXZSBzaHJpbmsgdGhlIHJlY3RhbmdsZSBieSBvbmUgZGV2aWNlIHBpeGVsIG9uIGVhY2ggc2lk
ZSBiZWNhdXNlIHRoZSBibGVlZCBpcyBvbmUgcGl4ZWwgbWF4aW11bS4KLSAgICAgICAgcmV0dXJu
IGdldEJhY2tncm91bmRSb3VuZGVkUmVjdChzaHJpbmtSZWN0QnlPbmVEZXZpY2VQaXhlbChjb250
ZXh0LCBib3JkZXJSZWN0LCBkb2N1bWVudCgpLmRldmljZVNjYWxlRmFjdG9yKCkpLCBib3gsIGJv
eFNpemUud2lkdGgoKSwgYm94U2l6ZS5oZWlnaHQoKSwKKyAgICAgICAgcmV0dXJuIGdldEJhY2tn
cm91bmRSb3VuZGVkUmVjdChzaHJpbmtSZWN0QnlPbmVEZXZpY2VQaXhlbChjb250ZXh0LCBib3Jk
ZXJSZWN0LCBkb2N1bWVudCgpLmRldmljZVNjYWxlRmFjdG9yKCkpLCBib3gsCiAgICAgICAgICAg
ICBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSk7CiAgICAg
fQogICAgIGlmIChibGVlZEF2b2lkYW5jZSA9PSBCYWNrZ3JvdW5kQmxlZWRCYWNrZ3JvdW5kT3Zl
ckJvcmRlcikKICAgICAgICAgcmV0dXJuIHN0eWxlKCkuZ2V0Um91bmRlZElubmVyQm9yZGVyRm9y
KGJvcmRlclJlY3QsIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRF
ZGdlKTsKIAotICAgIHJldHVybiBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoYm9yZGVyUmVjdCwg
Ym94LCBib3hTaXplLndpZHRoKCksIGJveFNpemUuaGVpZ2h0KCksIGluY2x1ZGVMb2dpY2FsTGVm
dEVkZ2UsIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKTsKKyAgICByZXR1cm4gZ2V0QmFja2dyb3Vu
ZFJvdW5kZWRSZWN0KGJvcmRlclJlY3QsIGJveCwgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwgaW5j
bHVkZUxvZ2ljYWxSaWdodEVkZ2UpOwogfQogCiBzdGF0aWMgdm9pZCBhcHBseUJveFNoYWRvd0Zv
ckJhY2tncm91bmQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBSZW5kZXJTdHlsZSYg
c3R5bGUpCkBAIC03MzcsNyArNzM3LDcgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFp
bnRNYXNrRm9yVGV4dEZpbGxCb3goSW1hZ2VCdWZmZXIqIG1hc2tJbWFnZSwgY29uc3QKIH0KIAog
dm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRGaWxsTGF5ZXJFeHRlbmRlZChjb25zdCBQ
YWludEluZm8mIHBhaW50SW5mbywgY29uc3QgQ29sb3ImIGNvbG9yLCBjb25zdCBGaWxsTGF5ZXIm
IGJnTGF5ZXIsIGNvbnN0IExheW91dFJlY3QmIHJlY3QsCi0gICAgQmFja2dyb3VuZEJsZWVkQXZv
aWRhbmNlIGJsZWVkQXZvaWRhbmNlLCBjb25zdCBJbmxpbmVJdGVyYXRvcjo6SW5saW5lQm94SXRl
cmF0b3ImIGJveCwgY29uc3QgTGF5b3V0U2l6ZSYgYm94U2l6ZSwgQ29tcG9zaXRlT3BlcmF0b3Ig
b3AsIFJlbmRlckVsZW1lbnQqIGJhY2tncm91bmRPYmplY3QsIEJhc2VCYWNrZ3JvdW5kQ29sb3JV
c2FnZSBiYXNlQmdDb2xvclVzYWdlKQorICAgIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSBibGVl
ZEF2b2lkYW5jZSwgY29uc3QgSW5saW5lSXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiBib3gs
IGNvbnN0IExheW91dFJlY3QmIGJhY2tncm91bmRJbWFnZVN0cmlwLCBDb21wb3NpdGVPcGVyYXRv
ciBvcCwgUmVuZGVyRWxlbWVudCogYmFja2dyb3VuZE9iamVjdCwgQmFzZUJhY2tncm91bmRDb2xv
clVzYWdlIGJhc2VCZ0NvbG9yVXNhZ2UpCiB7CiAgICAgR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0
ID0gcGFpbnRJbmZvLmNvbnRleHQoKTsKIApAQCAtODEyLDcgKzgxMiw3IEBAIHZvaWQgUmVuZGVy
Qm94TW9kZWxPYmplY3Q6OnBhaW50RmlsbExheWVyRXh0ZW5kZWQoY29uc3QgUGFpbnRJbmZvJiBw
YWludEluZm8sIGNvCiAgICAgICAgICAgICBhcHBseUJveFNoYWRvd0ZvckJhY2tncm91bmQoY29u
dGV4dCwgc3R5bGUoKSk7CiAKICAgICAgICAgaWYgKGhhc1JvdW5kZWRCb3JkZXIgJiYgYmxlZWRB
dm9pZGFuY2UgIT0gQmFja2dyb3VuZEJsZWVkVXNlVHJhbnNwYXJlbmN5TGF5ZXIpIHsKLSAgICAg
ICAgICAgIEZsb2F0Um91bmRlZFJlY3QgcGl4ZWxTbmFwcGVkQm9yZGVyID0gYmFja2dyb3VuZFJv
dW5kZWRSZWN0QWRqdXN0ZWRGb3JCbGVlZEF2b2lkYW5jZShjb250ZXh0LCByZWN0LCBibGVlZEF2
b2lkYW5jZSwgYm94LCBib3hTaXplLAorICAgICAgICAgICAgRmxvYXRSb3VuZGVkUmVjdCBwaXhl
bFNuYXBwZWRCb3JkZXIgPSBiYWNrZ3JvdW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZv
aWRhbmNlKGNvbnRleHQsIHJlY3QsIGJsZWVkQXZvaWRhbmNlLCBib3gsCiAgICAgICAgICAgICAg
ICAgaW5jbHVkZUxlZnRFZGdlLCBpbmNsdWRlUmlnaHRFZGdlKS5waXhlbFNuYXBwZWRSb3VuZGVk
UmVjdEZvclBhaW50aW5nKGRldmljZVNjYWxlRmFjdG9yKTsKICAgICAgICAgICAgIGlmIChwaXhl
bFNuYXBwZWRCb3JkZXIuaXNSZW5kZXJhYmxlKCkpIHsKICAgICAgICAgICAgICAgICBDb21wb3Np
dGVPcGVyYXRvciBwcmV2aW91c09wZXJhdG9yID0gY29udGV4dC5jb21wb3NpdGVPcGVyYXRpb24o
KTsKQEAgLTg0MCw3ICs4NDAsNyBAQCB2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEZp
bGxMYXllckV4dGVuZGVkKGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjbwogICAgIGJvb2wg
Y2xpcFRvQm9yZGVyUmFkaXVzID0gaGFzUm91bmRlZEJvcmRlciAmJiAhKGlzQm9yZGVyRmlsbCAm
JiBibGVlZEF2b2lkYW5jZSA9PSBCYWNrZ3JvdW5kQmxlZWRVc2VUcmFuc3BhcmVuY3lMYXllcik7
CiAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBjbGlwVG9Cb3JkZXJTdGF0ZVNhdmVyKGNv
bnRleHQsIGNsaXBUb0JvcmRlclJhZGl1cyk7CiAgICAgaWYgKGNsaXBUb0JvcmRlclJhZGl1cykg
ewotICAgICAgICBSb3VuZGVkUmVjdCBib3JkZXIgPSBpc0JvcmRlckZpbGwgPyBiYWNrZ3JvdW5k
Um91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZvaWRhbmNlKGNvbnRleHQsIHJlY3QsIGJsZWVk
QXZvaWRhbmNlLCBib3gsIGJveFNpemUsIGluY2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJpZ2h0RWRn
ZSkgOiBnZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QocmVjdCwgYm94LCBib3hTaXplLndpZHRoKCks
IGJveFNpemUuaGVpZ2h0KCksIGluY2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJpZ2h0RWRnZSk7Cisg
ICAgICAgIFJvdW5kZWRSZWN0IGJvcmRlciA9IGlzQm9yZGVyRmlsbCA/IGJhY2tncm91bmRSb3Vu
ZGVkUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29udGV4dCwgcmVjdCwgYmxlZWRBdm9p
ZGFuY2UsIGJveCwgaW5jbHVkZUxlZnRFZGdlLCBpbmNsdWRlUmlnaHRFZGdlKSA6IGdldEJhY2tn
cm91bmRSb3VuZGVkUmVjdChyZWN0LCBib3gsIGluY2x1ZGVMZWZ0RWRnZSwgaW5jbHVkZVJpZ2h0
RWRnZSk7CiAKICAgICAgICAgLy8gQ2xpcCB0byB0aGUgcGFkZGluZyBvciBjb250ZW50IGJveGVz
IGFzIG5lY2Vzc2FyeS4KICAgICAgICAgaWYgKGJnTGF5ZXIuY2xpcCgpID09IEZpbGxCb3g6OkNv
bnRlbnQpIHsKQEAgLTk1NCw3ICs5NTQsMTAgQEAgdm9pZCBSZW5kZXJCb3hNb2RlbE9iamVjdDo6
cGFpbnRGaWxsTGF5ZXJFeHRlbmRlZChjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY28KIAog
ICAgIC8vIG5vIHByb2dyZXNzaXZlIGxvYWRpbmcgb2YgdGhlIGJhY2tncm91bmQgaW1hZ2UKICAg
ICBpZiAoIWJhc2VCZ0NvbG9yT25seSAmJiBzaG91bGRQYWludEJhY2tncm91bmRJbWFnZSkgewot
ICAgICAgICBhdXRvIGdlb21ldHJ5ID0gY2FsY3VsYXRlQmFja2dyb3VuZEltYWdlR2VvbWV0cnko
cGFpbnRJbmZvLnBhaW50Q29udGFpbmVyLCBiZ0xheWVyLCByZWN0LmxvY2F0aW9uKCksIHNjcm9s
bGVkUGFpbnRSZWN0LCBiYWNrZ3JvdW5kT2JqZWN0KTsKKyAgICAgICAgLy8gTXVsdGlsaW5lIGlu
bGluZSBib3hlcyBwYWludCBsaWtlIHRoZSBpbWFnZSB3YXMgb25lIGxvbmcgc3RyaXAgc3Bhbm5p
bmcgbGluZXMuIFRoZSBiYWNrZ3JvdW5kSW1hZ2VTdHJpcCBpcyB0aGlzIGZpY3Rpb25hbCByZWN0
YW5nbGUuCisgICAgICAgIGF1dG8gaW1hZ2VSZWN0ID0gYmFja2dyb3VuZEltYWdlU3RyaXAuaXNF
bXB0eSgpID8gc2Nyb2xsZWRQYWludFJlY3QgOiBiYWNrZ3JvdW5kSW1hZ2VTdHJpcDsKKyAgICAg
ICAgYXV0byBwYWludE9mZnNldCA9IGJhY2tncm91bmRJbWFnZVN0cmlwLmlzRW1wdHkoKSA/IHJl
Y3QubG9jYXRpb24oKSA6IGJhY2tncm91bmRJbWFnZVN0cmlwLmxvY2F0aW9uKCk7CisgICAgICAg
IGF1dG8gZ2VvbWV0cnkgPSBjYWxjdWxhdGVCYWNrZ3JvdW5kSW1hZ2VHZW9tZXRyeShwYWludElu
Zm8ucGFpbnRDb250YWluZXIsIGJnTGF5ZXIsIHBhaW50T2Zmc2V0LCBpbWFnZVJlY3QsIGJhY2tn
cm91bmRPYmplY3QpOwogICAgICAgICBnZW9tZXRyeS5jbGlwKExheW91dFJlY3QocGl4ZWxTbmFw
cGVkUmVjdCkpOwogICAgICAgICBSZWZQdHI8SW1hZ2U+IGltYWdlOwogICAgICAgICBpZiAoIWdl
b21ldHJ5LmRlc3RSZWN0KCkuaXNFbXB0eSgpICYmIChpbWFnZSA9IGJnSW1hZ2UtPmltYWdlKGJh
Y2tncm91bmRPYmplY3QgPyBiYWNrZ3JvdW5kT2JqZWN0IDogdGhpcywgZ2VvbWV0cnkudGlsZVNp
emUoKSkpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94
TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9i
amVjdC5oCmluZGV4IDA0MzAzMWMzZWZkNDVlZDgxYTVkN2Q5NGNkNGMxZDQzNjgwMjZlZDkuLjE1
ZmRmOTM0ZGVlMjM2ZmMzOTNiYTE5MDAyMDc2M2YyZDVmZDViNDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCkBAIC0yMTMsNyArMjEzLDcg
QEAgcHVibGljOgogICAgIHZvaWQgcGFpbnRCb3JkZXIoY29uc3QgUGFpbnRJbmZvJiwgY29uc3Qg
TGF5b3V0UmVjdCYsIGNvbnN0IFJlbmRlclN0eWxlJiwgQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNl
ID0gQmFja2dyb3VuZEJsZWVkTm9uZSwgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlID0gdHJ1
ZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSA9IHRydWUpOwogICAgIGJvb2wgcGFpbnRO
aW5lUGllY2VJbWFnZShHcmFwaGljc0NvbnRleHQmLCBjb25zdCBMYXlvdXRSZWN0JiwgY29uc3Qg
UmVuZGVyU3R5bGUmLCBjb25zdCBOaW5lUGllY2VJbWFnZSYsIENvbXBvc2l0ZU9wZXJhdG9yID0g
Q29tcG9zaXRlT3BlcmF0b3I6OlNvdXJjZU92ZXIpOwogICAgIHZvaWQgcGFpbnRCb3hTaGFkb3co
Y29uc3QgUGFpbnRJbmZvJiwgY29uc3QgTGF5b3V0UmVjdCYsIGNvbnN0IFJlbmRlclN0eWxlJiwg
U2hhZG93U3R5bGUsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSA9IHRydWUsIGJvb2wgaW5j
bHVkZUxvZ2ljYWxSaWdodEVkZ2UgPSB0cnVlKTsKLSAgICB2b2lkIHBhaW50RmlsbExheWVyRXh0
ZW5kZWQoY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgQ29sb3ImLCBjb25zdCBGaWxsTGF5ZXImLCBj
b25zdCBMYXlvdXRSZWN0JiwgQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNlLCBjb25zdCBJbmxpbmVJ
dGVyYXRvcjo6SW5saW5lQm94SXRlcmF0b3ImLCBjb25zdCBMYXlvdXRTaXplJiA9IExheW91dFNp
emUoKSwgQ29tcG9zaXRlT3BlcmF0b3IgPSBDb21wb3NpdGVPcGVyYXRvcjo6U291cmNlT3Zlciwg
UmVuZGVyRWxlbWVudCogYmFja2dyb3VuZE9iamVjdCA9IG51bGxwdHIsIEJhc2VCYWNrZ3JvdW5k
Q29sb3JVc2FnZSA9IEJhc2VCYWNrZ3JvdW5kQ29sb3JVc2UpOworICAgIHZvaWQgcGFpbnRGaWxs
TGF5ZXJFeHRlbmRlZChjb25zdCBQYWludEluZm8mLCBjb25zdCBDb2xvciYsIGNvbnN0IEZpbGxM
YXllciYsIGNvbnN0IExheW91dFJlY3QmLCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UsIGNvbnN0
IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRvciYsIGNvbnN0IExheW91dFJlY3QmIGJh
Y2tncm91bmRJbWFnZVN0cmlwID0geyB9LCBDb21wb3NpdGVPcGVyYXRvciA9IENvbXBvc2l0ZU9w
ZXJhdG9yOjpTb3VyY2VPdmVyLCBSZW5kZXJFbGVtZW50KiBiYWNrZ3JvdW5kT2JqZWN0ID0gbnVs
bHB0ciwgQmFzZUJhY2tncm91bmRDb2xvclVzYWdlID0gQmFzZUJhY2tncm91bmRDb2xvclVzZSk7
CiAKICAgICB2aXJ0dWFsIGJvb2wgYm94U2hhZG93U2hvdWxkQmVBcHBsaWVkVG9CYWNrZ3JvdW5k
KGNvbnN0IExheW91dFBvaW50JiBhYnNvbHV0ZVBhaW50UG9zdGlvbiwgQmFja2dyb3VuZEJsZWVk
QXZvaWRhbmNlLCBjb25zdCBJbmxpbmVJdGVyYXRvcjo6SW5saW5lQm94SXRlcmF0b3ImKSBjb25z
dDsKIApAQCAtMjU5LDcgKzI1OSw3IEBAIHByb3RlY3RlZDoKICAgICAgICAgY29uc3QgTGF5b3V0
UmVjdCYgcGFpbnRSZWN0LCBSZW5kZXJFbGVtZW50KiA9IG51bGxwdHIpIGNvbnN0OwogICAgIGJv
b2wgYm9yZGVyT2JzY3VyZXNCYWNrZ3JvdW5kRWRnZShjb25zdCBGbG9hdFNpemUmIGNvbnRleHRT
Y2FsZSkgY29uc3Q7CiAgICAgYm9vbCBib3JkZXJPYnNjdXJlc0JhY2tncm91bmQoKSBjb25zdDsK
LSAgICBSb3VuZGVkUmVjdCBiYWNrZ3JvdW5kUm91bmRlZFJlY3RBZGp1c3RlZEZvckJsZWVkQXZv
aWRhbmNlKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IExheW91dFJlY3QmLCBCYWNrZ3Jv
dW5kQmxlZWRBdm9pZGFuY2UsIGNvbnN0IElubGluZUl0ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRv
ciYsIGNvbnN0IExheW91dFNpemUmLCBib29sIGluY2x1ZGVMb2dpY2FsTGVmdEVkZ2UsIGJvb2wg
aW5jbHVkZUxvZ2ljYWxSaWdodEVkZ2UpIGNvbnN0OworICAgIFJvdW5kZWRSZWN0IGJhY2tncm91
bmRSb3VuZGVkUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29uc3QgR3JhcGhpY3NDb250
ZXh0JiwgY29uc3QgTGF5b3V0UmVjdCYsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSwgY29uc3Qg
SW5saW5lSXRlcmF0b3I6OklubGluZUJveEl0ZXJhdG9yJiwgYm9vbCBpbmNsdWRlTG9naWNhbExl
ZnRFZGdlLCBib29sIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKSBjb25zdDsKICAgICBMYXlvdXRS
ZWN0IGJvcmRlcklubmVyUmVjdEFkanVzdGVkRm9yQmxlZWRBdm9pZGFuY2UoY29uc3QgR3JhcGhp
Y3NDb250ZXh0JiwgY29uc3QgTGF5b3V0UmVjdCYsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSkg
Y29uc3Q7CiAKICAgICBJbnRlcnBvbGF0aW9uUXVhbGl0eSBjaG9vc2VJbnRlcnBvbGF0aW9uUXVh
bGl0eShHcmFwaGljc0NvbnRleHQmLCBJbWFnZSYsIGNvbnN0IHZvaWQqLCBjb25zdCBMYXlvdXRT
aXplJik7CkBAIC0zMTAsOCArMzEwLDcgQEAgcHJpdmF0ZToKIAogICAgIExheW91dFNpemUgY2Fs
Y3VsYXRlRmlsbFRpbGVTaXplKGNvbnN0IEZpbGxMYXllciYsIGNvbnN0IExheW91dFNpemUmIHNj
YWxlZFBvc2l0aW9uaW5nQXJlYVNpemUpIGNvbnN0OwogCi0gICAgUm91bmRlZFJlY3QgZ2V0QmFj
a2dyb3VuZFJvdW5kZWRSZWN0KGNvbnN0IExheW91dFJlY3QmLCBjb25zdCBJbmxpbmVJdGVyYXRv
cjo6SW5saW5lQm94SXRlcmF0b3ImLCBMYXlvdXRVbml0IGlubGluZUJveFdpZHRoLCBMYXlvdXRV
bml0IGlubGluZUJveEhlaWdodCwKLSAgICAgICAgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdl
LCBib29sIGluY2x1ZGVMb2dpY2FsUmlnaHRFZGdlKSBjb25zdDsKKyAgICBSb3VuZGVkUmVjdCBn
ZXRCYWNrZ3JvdW5kUm91bmRlZFJlY3QoY29uc3QgTGF5b3V0UmVjdCYsIGNvbnN0IElubGluZUl0
ZXJhdG9yOjpJbmxpbmVCb3hJdGVyYXRvciYsIGJvb2wgaW5jbHVkZUxvZ2ljYWxMZWZ0RWRnZSwg
Ym9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRnZSkgY29uc3Q7CiAgICAgCiAgICAgYm9vbCBmaXhl
ZEJhY2tncm91bmRQYWludHNJbkxvY2FsQ29vcmRpbmF0ZXMoKSBjb25zdDsKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDdm
YzJlZTM5NGQ1NDk5YmRiMWU2NTY5YzEzMWQ5YzljYjViYTI3YTAuLjBlMjdhYjljMmE4MzMzNGZi
MzI5NTNhMzA0OGI2MWJhZGNhNDY2NGUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0xMC0x
OCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CisKKyAgICAgICAgYmFja2dyb3Vu
ZC1jbGlwOnRleHQgZG9lc24ndCBwYWludCBjb3JyZWN0bHkgZm9yIGlubGluZSBib3ggc3Bhbm5p
bmcgbXVsdGlwbGUgbGluZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzMTg5MQorCisgICAgICAgIFJldmlld2VkIGJ5IEFsYW4gQnVqdGFzLgorCisg
ICAgICAgICogZmFzdC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGlu
ZS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2lubGluZS9pbmxpbmUtYmFj
a2dyb3VuZC1jbGlwLXRleHQtbXVsdGlsaW5lLmh0bWw6IEFkZGVkLgorCiAyMDIxLTEwLTE3ICBE
ZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2ViWFJdIFN0dWJzIGZv
ciBXZWJYUiBIYW5kIElucHV0IE1vZHVsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9p
bmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS1leHBlY3RlZC5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11
bHRpbGluZS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBkYzk4NGNjZmFiOWFjYzlmYTUyMTQ3
NTk4Y2VlZjkzNWU0YjNhNjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2lu
bGluZS9pbmxpbmUtYmFja2dyb3VuZC1jbGlwLXRleHQtbXVsdGlsaW5lLWV4cGVjdGVkLmh0bWwK
QEAgLTAsMCArMSwxNyBAQAorPHN0eWxlPgorZGl2IHsKKyAgICBmb250LWZhbWlseTogJ0FoZW0n
OworfQorLmNsaXAgeworICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKKyAgICBiYWNrZ3JvdW5kLWlt
YWdlOiBsaW5lYXItZ3JhZGllbnQoNjBkZWcsIGJsdWUsIHllbGxvdywgYmx1ZSwgeWVsbG93LCBi
bHVlKTsKK30KKy5zcGFjZSB7CisgICAgY29sb3I6IHdoaXRlOworfQorPC9zdHlsZT4KKzxkaXY+
YSA8c3BhbiBjbGFzcz0iY2xpcCI+Yjxicj4KK2M8c3BhbiBjbGFzcz0ic3BhY2UiPnc8L3NwYW4+
ZDxicj4KKzxzcGFuPmU8c3BhbiBjbGFzcz0ic3BhY2UiPnc8L3NwYW4+PC9zcGFuPmY8L3NwYW4+
Cis8L2Rpdj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLWJh
Y2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxp
bmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11bHRpbGluZS5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjE0NWVhY2UzNTk0YTUxYzQzMWZhMjI2MTUyZmY4MjJiYjcyZmQxMjgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtYmFja2dyb3VuZC1jbGlwLXRleHQt
bXVsdGlsaW5lLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPHN0eWxlPgorZGl2IHsKKyAgICBmb250
LWZhbWlseTogJ0FoZW0nOworfQorLmNsaXAgeworICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKKyAg
ICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNjBkZWcsIGJsdWUsIHllbGxvdywg
Ymx1ZSwgeWVsbG93LCBibHVlKTsKKyAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7Cit9Cis8L3N0
eWxlPgorPGRpdj5hIDxzcGFuIGNsYXNzPSJjbGlwIj5iPGJyPgorYyBkPGJyPgorPHNwYW4+ZSA8
L3NwYW4+Zjwvc3Bhbj4KKzwvZGl2PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVj
dGF0aW9ucwppbmRleCA3NmQyYmY2MDc3M2FhNjI3ZTE4NTk2ZDA2M2E3ODk0ZWI4M2Y4Nzc3Li40
NjMzYmZjYWExM2VhZGIxZDgwNGNlY2FjZDNmMGE3MTQ3NDAwZTcwIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjkxMiw2ICsyOTEyLDcgQEAgZmFzdC9y
ZXBhaW50L2Jsb2NrLWlucHV0cmFuZ2UtcmVwYWludC5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAog
ZmFzdC9pbmxpbmUvcGFkZGluZy1lbGxpcHNpcy1yaWdodC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVy
ZSBdCiBmYXN0L2lubGluZS9pbmxpbmUtYmFja2dyb3VuZC1jbGlwLXRleHQuaHRtbCBbIEltYWdl
T25seUZhaWx1cmUgXQorZmFzdC9pbmxpbmUvaW5saW5lLWJhY2tncm91bmQtY2xpcC10ZXh0LW11
bHRpbGluZS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKICMgVGhpcyB0ZXN0IGhhcmRjb2Rl
cyB0aGUgcmVzdWx0IG9mIGEgcGxhdGZvcm0tZGVwZW5kZW50IGZvbnQgbG9va3VwIGFsZ29yaXRo
bS4KIGZhc3QvdGV4dC9mYWxsYmFjay1sYW5ndWFnZS1oYW4uaHRtbCBbIFNraXAgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>