<?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>235158</bug_id>
          
          <creation_ts>2022-01-12 14:27:27 -0800</creation_ts>
          <short_desc>Remove use of PseudoElement in ComputedStyleExtractor</short_desc>
          <delta_ts>2022-01-13 12:35:17 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=234987</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="Antoine Quint">graouts</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1830344</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-12 14:27:27 -0800</bug_when>
    <thetext>Remove use of PseudoElement in ComputedStyleExtractor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830345</commentid>
    <comment_count>1</comment_count>
      <attachid>448996</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-12 14:30:45 -0800</bug_when>
    <thetext>Created attachment 448996
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830348</commentid>
    <comment_count>2</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-12 14:33:31 -0800</bug_when>
    <thetext>This is a followup to bug 234987.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830499</commentid>
    <comment_count>3</comment_count>
      <attachid>449037</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-13 02:44:14 -0800</bug_when>
    <thetext>Created attachment 449037
Patch for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830612</commentid>
    <comment_count>4</comment_count>
      <attachid>449080</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-13 10:26:20 -0800</bug_when>
    <thetext>Created attachment 449080
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830664</commentid>
    <comment_count>5</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-01-13 12:34:40 -0800</bug_when>
    <thetext>Committed r287987 (246016@trunk): &lt;https://commits.webkit.org/246016@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830665</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-13 12:35:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/87565054&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448996</attachid>
            <date>2022-01-12 14:30:45 -0800</date>
            <delta_ts>2022-01-13 02:44:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235158-20220112233044.patch</filename>
            <type>text/plain</type>
            <size>9725</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3OTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzM1Mzk0ZjJiMTZhYTg5
N2E4MzdkYmY2YzI0NzA0ZDgyYmM0Y2MwNS4uNzRjZTJhZmNjNmUyOWE1MmU5NmIyMjVjNWQ4YjVl
M2E5ZGE5MTcxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIyLTAxLTEyICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB1c2Ugb2Yg
UHNldWRvRWxlbWVudCBpbiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzUxNTgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIHdlIGZpeGVkIGJ1ZyAyMzQ5ODcs
IHRoZSBlYXNpZXN0IHRoaW5nIHdhcyB0byBhZGQgc29tZSBjb2RlIHRoYXQgdXNlcyBQc2V1ZG9F
bGVtZW50LAorICAgICAgICB3aGljaCB3YXMgYWxyZWFkeSB1c2VkIGluIHNldmVyYWwgcGxhY2Vz
IGluIENvbXB1dGVkU3R5bGVFeHRyYWN0b3IuIEhvd2V2ZXIsIHdlIHdhbnQgdG8KKyAgICAgICAg
cmVtb3ZlIGNvZGUgdXNpbmcgUHNldWRvRWxlbWVudCwgbm90IGFkZCBtb3JlLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggZG9lcyB0aGF0IHRocm91Z2hvdXQgQ29tcHV0ZWRTdHlsZUV4dHJhY3RvciBh
bmQgYWxzbyByZW1vdmVzIHNvbWUgdXNlIGluCisgICAgICAgIEtleWZyYW1lRWZmZWN0IGJ5IGFs
d2F5cyBpbnZhbGlkYXRpbmcgdGhlIGhvc3QgaW5zdGVhZCBvZiBnb2luZyB0aHJvdWdoIFBzZXVk
b0VsZW1lbnQsCisgICAgICAgIHdoaWNoIHdhc24ndCBuZWNlc3NhcnkgYW55bW9yZS4KKworICAg
ICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpp
bnZhbGlkYXRlRWxlbWVudCk6CisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpzdHls
ZWRSZW5kZXJlciBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpoYXNWYWxpZFN0eWxlRm9yUHJv
cGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6Y29tcHV0ZVJlbmRlclN0eWxlRm9yUHJvcGVydHkp
OgorICAgICAgICAoV2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6Y3VzdG9tUHJvcGVy
dHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6Omdl
dExheWVyQ291bnQpOgorICAgICAgICAoV2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
c3R5bGVkRWxlbWVudCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5oOgorCiAyMDIyLTAxLTEyICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0
c0B3ZWJraXQub3JnPgogCiAgICAgICAgIGNzcy9jc3MtdHJhbnNpdGlvbnMvcHNldWRvLWVsZW1l
bnRzLTAwMi5odG1sIFdQVCBpcyBhIGZhaWx1cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3QuY3BwCmluZGV4IDc2MmNmNTAxZTQ2NjU5MDRhNzNiNjYzNjM2MTQ0ZWY1
ODE3YWUzZGYuLmE1MTM4MzhlMmJmNDNiMmRkMThmYjJkY2MyYmU1OTVjMTcyOWZmZDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcApAQCAtODYsOCArODYs
OCBAQCBzdGF0aWMgRWxlbWVudCogZWxlbWVudE9yUHNldWRvRWxlbWVudEZvclN0eWxlYWJsZShj
b25zdCBzdGQ6Om9wdGlvbmFsPGNvbnN0IFN0eQogCiBzdGF0aWMgaW5saW5lIHZvaWQgaW52YWxp
ZGF0ZUVsZW1lbnQoY29uc3Qgc3RkOjpvcHRpb25hbDxjb25zdCBTdHlsZWFibGU+JiBzdHlsZWFi
bGUpCiB7Ci0gICAgaWYgKGF1dG8qIGVsZW1lbnRPclBzZXVkb0VsZW1lbnQgPSBlbGVtZW50T3JQ
c2V1ZG9FbGVtZW50Rm9yU3R5bGVhYmxlKHN0eWxlYWJsZSkpCi0gICAgICAgIGVsZW1lbnRPclBz
ZXVkb0VsZW1lbnQtPmludmFsaWRhdGVTdHlsZUludGVybmFsKCk7CisgICAgaWYgKHN0eWxlYWJs
ZSkKKyAgICAgICAgc3R5bGVhYmxlLT5lbGVtZW50LmludmFsaWRhdGVTdHlsZUludGVybmFsKCk7
CiB9CiAKIHN0YXRpYyBpbmxpbmUgU3RyaW5nIENTU1Byb3BlcnR5SURUb0lETEF0dHJpYnV0ZU5h
bWUoQ1NTUHJvcGVydHlJRCBjc3NQcm9wZXJ0eUlkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCAxMzA2OThjNjgzZjE3Nzc5
MjY2NDhmZGE5YjM0YTNmNzA2NTQ1ZDY1Li5jYzJhY2I1NWM3OGEyODNhYjNmNTY2NTJjNzU3ZWE1
YzM1YzgwNDk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcApAQCAtNzUsNiArNzUsNyBAQAogI2luY2x1ZGUgIlN0eWxlUmVzb2x2
ZXIuaCIKICNpbmNsdWRlICJTdHlsZVNjb3BlLmgiCiAjaW5jbHVkZSAiU3R5bGVTY3JvbGxTbmFw
UG9pbnRzLmgiCisjaW5jbHVkZSAiU3R5bGVhYmxlLmgiCiAjaW5jbHVkZSAiVG91Y2hBY3Rpb24u
aCIKICNpbmNsdWRlICJXZWJLaXRGb250RmFtaWx5TmFtZXMuaCIKICNpbmNsdWRlICJXaWxsQ2hh
bmdlRGF0YS5oIgpAQCAtMjM3NCwyOCArMjM3NSwxNSBAQCBzdGF0aWMgYm9vbCBpc0xheW91dERl
cGVuZGVudChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHls
ZQogICAgIH0KIH0KIAotRWxlbWVudCogQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6c3R5bGVkRWxl
bWVudCgpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX2VsZW1lbnQpCi0gICAgICAgIHJldHVybiBudWxs
cHRyOwotICAgIFBzZXVkb0VsZW1lbnQqIHBzZXVkb0VsZW1lbnQ7Ci0gICAgaWYgKG1fcHNldWRv
RWxlbWVudFNwZWNpZmllciA9PSBQc2V1ZG9JZDo6QmVmb3JlICYmIChwc2V1ZG9FbGVtZW50ID0g
bV9lbGVtZW50LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCkpKQotICAgICAgICByZXR1cm4gcHNldWRv
RWxlbWVudDsKLSAgICBpZiAobV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyID09IFBzZXVkb0lkOjpB
ZnRlciAmJiAocHNldWRvRWxlbWVudCA9IG1fZWxlbWVudC0+YWZ0ZXJQc2V1ZG9FbGVtZW50KCkp
KQotICAgICAgICByZXR1cm4gcHNldWRvRWxlbWVudDsKLSAgICByZXR1cm4gbV9lbGVtZW50Lmdl
dCgpOwotfQotCiBSZW5kZXJFbGVtZW50KiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpzdHlsZWRS
ZW5kZXJlcigpIGNvbnN0CiB7Ci0gICAgYXV0byogZWxlbWVudCA9IHN0eWxlZEVsZW1lbnQoKTsK
LSAgICBpZiAoIWVsZW1lbnQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIGlmIChtX3Bz
ZXVkb0VsZW1lbnRTcGVjaWZpZXIgIT0gUHNldWRvSWQ6Ok5vbmUgJiYgZWxlbWVudCA9PSBtX2Vs
ZW1lbnQuZ2V0KCkpCisgICAgaWYgKCFtX2VsZW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRy
OwotICAgIGlmIChlbGVtZW50LT5oYXNEaXNwbGF5Q29udGVudHMoKSkKKyAgICBpZiAobV9wc2V1
ZG9FbGVtZW50U3BlY2lmaWVyICE9IFBzZXVkb0lkOjpOb25lKQorICAgICAgICByZXR1cm4gU3R5
bGVhYmxlKCptX2VsZW1lbnQsIG1fcHNldWRvRWxlbWVudFNwZWNpZmllcikucmVuZGVyZXIoKTsK
KyAgICBpZiAobV9lbGVtZW50LT5oYXNEaXNwbGF5Q29udGVudHMoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7Ci0gICAgcmV0dXJuIGVsZW1lbnQtPnJlbmRlcmVyKCk7CisgICAgcmV0dXJuIG1f
ZWxlbWVudC0+cmVuZGVyZXIoKTsKIH0KIAogc3RhdGljIGJvb2wgaXNJbXBsaWNpdGx5SW5oZXJp
dGVkR3JpZE9yRmxleFByb3BlcnR5KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKQEAgLTI0NTAs
MTIgKzI0MzgsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaGFzVmFsaWRTdHlsZUZvclByb3BlcnR5
KEVsZW1lbnQmIGVsZW1lbnQsIENTU1Byb3BlcnR5SUQgcHJvcAogewogICAgIGlmIChlbGVtZW50
LnN0eWxlVmFsaWRpdHkoKSAhPSBTdHlsZTo6VmFsaWRpdHk6OlZhbGlkKQogICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgaWYgKGVsZW1lbnQuaXNQc2V1ZG9FbGVtZW50KCkpIHsKLSAgICAgICAg
aWYgKGF1dG8qIGhvc3QgPSBkb3duY2FzdDxQc2V1ZG9FbGVtZW50PihlbGVtZW50KS5ob3N0RWxl
bWVudCgpKSB7Ci0gICAgICAgICAgICBpZiAoaG9zdC0+c3R5bGVWYWxpZGl0eSgpICE9IFN0eWxl
OjpWYWxpZGl0eTo6VmFsaWQpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICB9Ci0gICAgfQogICAgIGlmIChlbGVtZW50LmRvY3VtZW50KCkuaGFzUGVuZGluZ0Z1bGxTdHls
ZVJlYnVpbGQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZWxlbWVudC5kb2N1
bWVudCgpLmNoaWxkTmVlZHNTdHlsZVJlY2FsYygpKQpAQCAtMjUyMSwxNCArMjUwMywxNCBAQCBz
dGF0aWMgaW5saW5lIGNvbnN0IFJlbmRlclN0eWxlKiBjb21wdXRlUmVuZGVyU3R5bGVGb3JQcm9w
ZXJ0eShFbGVtZW50JiBlbGVtZW50LAogCiAgICAgaWYgKHJlbmRlcmVyICYmIHJlbmRlcmVyLT5p
c0NvbXBvc2l0ZWQoKSAmJiBDU1NQcm9wZXJ0eUFuaW1hdGlvbjo6YW5pbWF0aW9uT2ZQcm9wZXJ0
eUlzQWNjZWxlcmF0ZWQocHJvcGVydHlJRCkpIHsKICAgICAgICAgb3duZWRTdHlsZSA9IHJlbmRl
cmVyLT5hbmltYXRlZFN0eWxlKCk7Ci0gICAgICAgIGlmIChwc2V1ZG9FbGVtZW50U3BlY2lmaWVy
ICE9IFBzZXVkb0lkOjpOb25lICYmICFlbGVtZW50LmlzUHNldWRvRWxlbWVudCgpKSB7CisgICAg
ICAgIGlmIChwc2V1ZG9FbGVtZW50U3BlY2lmaWVyICE9IFBzZXVkb0lkOjpOb25lKSB7CiAgICAg
ICAgICAgICAvLyBGSVhNRTogVGhpcyBjYWNoZWQgcHNldWRvIHN0eWxlIHdpbGwgb25seSBleGlz
dCBpZiB0aGUgYW5pbWF0aW9uIGhhcyBiZWVuIHJ1biBhdCBsZWFzdCBvbmNlLgogICAgICAgICAg
ICAgcmV0dXJuIG93bmVkU3R5bGUtPmdldENhY2hlZFBzZXVkb1N0eWxlKHBzZXVkb0VsZW1lbnRT
cGVjaWZpZXIpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBvd25lZFN0eWxlLmdldCgpOwog
ICAgIH0KIAotICAgIHJldHVybiBlbGVtZW50LmNvbXB1dGVkU3R5bGUoZWxlbWVudC5pc1BzZXVk
b0VsZW1lbnQoKSA/IFBzZXVkb0lkOjpOb25lIDogcHNldWRvRWxlbWVudFNwZWNpZmllcik7Cisg
ICAgcmV0dXJuIGVsZW1lbnQuY29tcHV0ZWRTdHlsZShwc2V1ZG9FbGVtZW50U3BlY2lmaWVyKTsK
IH0KIAogc3RhdGljIFJlZjxDU1NWYWx1ZT4gc2hhcGVQcm9wZXJ0eVZhbHVlKGNvbnN0IFJlbmRl
clN0eWxlJiBzdHlsZSwgY29uc3QgU2hhcGVWYWx1ZSogc2hhcGVWYWx1ZSkKQEAgLTI2NjYsMTQg
KzI2NDgsMTEgQEAgaW5saW5lIHN0YXRpYyBib29sIGlzRmxleE9yR3JpZEl0ZW0oUmVuZGVyT2Jq
ZWN0KiByZW5kZXJlcikKIAogUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9y
OjpjdXN0b21Qcm9wZXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgcHJvcGVydHlOYW1lKQogewotICAg
IEVsZW1lbnQqIHN0eWxlZEVsZW1lbnQgPSB0aGlzLT5zdHlsZWRFbGVtZW50KCk7CisgICAgRWxl
bWVudCogc3R5bGVkRWxlbWVudCA9IG1fZWxlbWVudC5nZXQoKTsKICAgICBpZiAoIXN0eWxlZEVs
ZW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAotICAgIGlmICh1cGRhdGVTdHls
ZUlmTmVlZGVkRm9yUHJvcGVydHkoKnN0eWxlZEVsZW1lbnQsIENTU1Byb3BlcnR5Q3VzdG9tKSkg
ewotICAgICAgICAvLyBTdHlsZSB1cGRhdGUgbWF5IGNoYW5nZSBzdHlsZWRFbGVtZW50KCkgdG8g
UHNldWRvRWxlbWVudCBvciBiYWNrLgotICAgICAgICBzdHlsZWRFbGVtZW50ID0gdGhpcy0+c3R5
bGVkRWxlbWVudCgpOwotICAgIH0KKyAgICB1cGRhdGVTdHlsZUlmTmVlZGVkRm9yUHJvcGVydHko
KnN0eWxlZEVsZW1lbnQsIENTU1Byb3BlcnR5Q3VzdG9tKTsKIAogICAgIHN0ZDo6dW5pcXVlX3B0
cjxSZW5kZXJTdHlsZT4gb3duZWRTdHlsZTsKICAgICBhdXRvKiBzdHlsZSA9IGNvbXB1dGVSZW5k
ZXJTdHlsZUZvclByb3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZp
ZXIsIENTU1Byb3BlcnR5Q3VzdG9tLCBvd25lZFN0eWxlKTsKQEAgLTI3MzQsNyArMjcxMyw3IEBA
IHN0YXRpYyBSZWY8Q1NTRm9udFZhbHVlPiBmb250U2hvcnRoYW5kVmFsdWVGb3JTZWxlY3Rpb25Q
cm9wZXJ0aWVzKGNvbnN0IEZvbnREZXNjCiAKIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHls
ZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIEVVcGRh
dGVMYXlvdXQgdXBkYXRlTGF5b3V0KQogewotICAgIGF1dG8qIHN0eWxlZEVsZW1lbnQgPSB0aGlz
LT5zdHlsZWRFbGVtZW50KCk7CisgICAgYXV0byogc3R5bGVkRWxlbWVudCA9IG1fZWxlbWVudC5n
ZXQoKTsKICAgICBpZiAoIXN0eWxlZEVsZW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwog
CkBAIC0yNzQ1LDEwICsyNzI0LDcgQEAgUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0
cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwKICAgICBpZiAo
dXBkYXRlTGF5b3V0KSB7CiAgICAgICAgIERvY3VtZW50JiBkb2N1bWVudCA9IG1fZWxlbWVudC0+
ZG9jdW1lbnQoKTsKIAotICAgICAgICBpZiAodXBkYXRlU3R5bGVJZk5lZWRlZEZvclByb3BlcnR5
KCpzdHlsZWRFbGVtZW50LCBwcm9wZXJ0eUlEKSkgewotICAgICAgICAgICAgLy8gU3R5bGUgdXBk
YXRlIG1heSBjaGFuZ2Ugc3R5bGVkRWxlbWVudCgpIHRvIFBzZXVkb0VsZW1lbnQgb3IgYmFjay4K
LSAgICAgICAgICAgIHN0eWxlZEVsZW1lbnQgPSB0aGlzLT5zdHlsZWRFbGVtZW50KCk7Ci0gICAg
ICAgIH0KKyAgICAgICAgdXBkYXRlU3R5bGVJZk5lZWRlZEZvclByb3BlcnR5KCpzdHlsZWRFbGVt
ZW50LCBwcm9wZXJ0eUlEKTsKICAgICAgICAgcmVuZGVyZXIgPSBzdHlsZWRSZW5kZXJlcigpOwog
CiAgICAgICAgIGlmIChwcm9wZXJ0eUlEID09IENTU1Byb3BlcnR5RGlzcGxheSAmJiAhcmVuZGVy
ZXIgJiYgaXM8U1ZHRWxlbWVudD4oKnN0eWxlZEVsZW1lbnQpICYmICFkb3duY2FzdDxTVkdFbGVt
ZW50Pigqc3R5bGVkRWxlbWVudCkuaXNWYWxpZCgpKQpAQCAtMjc2MSwxMCArMjczNyw4IEBAIFJl
ZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZShDU1NQ
cm9wZXJ0eUlEIHByb3BlcnR5SUQsCiAgICAgICAgICAgICB8fCBzdHlsZWRFbGVtZW50LT5pc0lu
U2hhZG93VHJlZSgpCiAgICAgICAgICAgICB8fCAoZG9jdW1lbnQuc3R5bGVTY29wZSgpLnJlc29s
dmVySWZFeGlzdHMoKSAmJiBkb2N1bWVudC5zdHlsZVNjb3BlKCkucmVzb2x2ZXJJZkV4aXN0cygp
LT5oYXNWaWV3cG9ydERlcGVuZGVudE1lZGlhUXVlcmllcygpICYmIGRvY3VtZW50Lm93bmVyRWxl
bWVudCgpKTsKIAotICAgICAgICBpZiAoZm9yY2VGdWxsTGF5b3V0KSB7CisgICAgICAgIGlmIChm
b3JjZUZ1bGxMYXlvdXQpCiAgICAgICAgICAgICBkb2N1bWVudC51cGRhdGVMYXlvdXRJZ25vcmVQ
ZW5kaW5nU3R5bGVzaGVldHMoKTsKLSAgICAgICAgICAgIHN0eWxlZEVsZW1lbnQgPSB0aGlzLT5z
dHlsZWRFbGVtZW50KCk7Ci0gICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoIXVwZGF0ZUxheW91
dCB8fCBmb3JjZUZ1bGxMYXlvdXQpIHsKQEAgLTQ0MTAsMTEgKzQzODQsMTEgQEAgRXhjZXB0aW9u
T3I8dm9pZD4gQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uOjpzZXRQcm9wZXJ0eUludGVybmFs
KENTU1Byb3BlcnR5SUQKIHNpemVfdCBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpnZXRMYXllckNv
dW50KENTU1Byb3BlcnR5SUQgcHJvcGVydHkpCiB7CiAgICAgQVNTRVJUKHByb3BlcnR5ID09IENT
U1Byb3BlcnR5QmFja2dyb3VuZCB8fCBwcm9wZXJ0eSA9PSBDU1NQcm9wZXJ0eU1hc2spOwotICAg
IGlmICghc3R5bGVkRWxlbWVudCgpKQorICAgIGlmICghbV9lbGVtZW50KQogICAgICAgICByZXR1
cm4gMDsKIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gb3duZWRTdHlsZTsKLSAg
ICBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVGb3JQcm9wZXJ0
eSgqc3R5bGVkRWxlbWVudCgpLCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5LCBv
d25lZFN0eWxlKTsKKyAgICBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUgPSBjb21wdXRlUmVuZGVy
U3R5bGVGb3JQcm9wZXJ0eSgqbV9lbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHBy
b3BlcnR5LCBvd25lZFN0eWxlKTsKICAgICBpZiAoIXN0eWxlKQogICAgICAgICByZXR1cm4gMDsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5o
CmluZGV4IGNiYWFkYjkxZjM4ZGEyYzdhZWI5N2IxMWY2ZTkwNTI0OWU2MmEyZDcuLjczNDg4NDQz
YzVhNGI2MzljZjkyNTU4Yzc4ODFjYzUwYzM4NWE4NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKQEAgLTgxLDE0ICs4MSw3IEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgdm9pZCBhZGRWYWx1ZUZvckFuaW1hdGlvblByb3BlcnR5VG9MaXN0
KENTU1ZhbHVlTGlzdCYsIENTU1Byb3BlcnR5SUQsIGNvbnN0IEFuaW1hdGlvbiopOwogCiBwcml2
YXRlOgotICAgIC8vIFRoZSBzdHlsZWQgZWxlbWVudCBpcyBlaXRoZXIgdGhlIGVsZW1lbnQgcGFz
c2VkIGludG8KLSAgICAvLyBjb21wdXRlZFByb3BlcnR5VmFsdWUsIG9yIHRoZSBQc2V1ZG9FbGVt
ZW50IGZvciA6YmVmb3JlIGFuZCA6YWZ0ZXIgaWYKLSAgICAvLyB0aGV5IGV4aXN0LgotICAgIEVs
ZW1lbnQqIHN0eWxlZEVsZW1lbnQoKSBjb25zdDsKLQogICAgIC8vIFRoZSByZW5kZXJlciB3ZSBz
aG91bGQgdXNlIGZvciByZXNvbHZpbmcgbGF5b3V0LWRlcGVuZGVudCBwcm9wZXJ0aWVzLgotICAg
IC8vIE5vdGUgdGhhdCBpdCBkaWZmZXJzIGZyb20gc3R5bGVkRWxlbWVudCgpLT5yZW5kZXJlcigp
IGluIHRoZSBjYXNlIHdlIGhhdmUKLSAgICAvLyBubyBwc2V1ZG8tZWxlbWVudC4KICAgICBSZW5k
ZXJFbGVtZW50KiBzdHlsZWRSZW5kZXJlcigpIGNvbnN0OwogCiAgICAgUmVmUHRyPENTU1ZhbHVl
PiBzdmdQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449037</attachid>
            <date>2022-01-13 02:44:14 -0800</date>
            <delta_ts>2022-01-13 10:26:16 -0800</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>bug-235158-20220113114413.patch</filename>
            <type>text/plain</type>
            <size>13605</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3OTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzM1Mzk0ZjJiMTZhYTg5
N2E4MzdkYmY2YzI0NzA0ZDgyYmM0Y2MwNS4uYjhmZWZiNDA0NmViZDFkZmZmMmYyMTkzOTBlNDU2
MmY0M2U1YjgzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIyLTAxLTEzICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB1c2Ugb2Yg
UHNldWRvRWxlbWVudCBpbiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzUxNTgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIHdlIGZpeGVkIGJ1ZyAyMzQ5ODcs
IHRoZSBlYXNpZXN0IHRoaW5nIHdhcyB0byBhZGQgc29tZSBjb2RlIHRoYXQgdXNlcyBQc2V1ZG9F
bGVtZW50LAorICAgICAgICB3aGljaCB3YXMgYWxyZWFkeSB1c2VkIGluIHNldmVyYWwgcGxhY2Vz
IGluIENvbXB1dGVkU3R5bGVFeHRyYWN0b3IuIEhvd2V2ZXIsIHdlIHdhbnQgdG8KKyAgICAgICAg
cmVtb3ZlIGNvZGUgdXNpbmcgUHNldWRvRWxlbWVudCwgbm90IGFkZCBtb3JlLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggZG9lcyB0aGF0IHRocm91Z2hvdXQgQ29tcHV0ZWRTdHlsZUV4dHJhY3RvciBh
bmQgYWxzbyByZW1vdmVzIHNvbWUgdXNlIGluCisgICAgICAgIEtleWZyYW1lRWZmZWN0IGJ5IGFs
d2F5cyBpbnZhbGlkYXRpbmcgdGhlIGhvc3QgaW5zdGVhZCBvZiBnb2luZyB0aHJvdWdoIFBzZXVk
b0VsZW1lbnQsCisgICAgICAgIHdoaWNoIHdhc24ndCBuZWNlc3NhcnkgYW55bW9yZS4KKworICAg
ICAgICAqIGFuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpp
bnZhbGlkYXRlRWxlbWVudCk6CisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpzdHls
ZWRSZW5kZXJlciBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpoYXNWYWxpZFN0eWxlRm9yUHJv
cGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6Y29tcHV0ZVJlbmRlclN0eWxlRm9yUHJvcGVydHkp
OgorICAgICAgICAoV2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6Y3VzdG9tUHJvcGVy
dHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9w
ZXJ0eVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6Omdl
dExheWVyQ291bnQpOgorICAgICAgICAoV2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6
c3R5bGVkRWxlbWVudCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5oOgorCiAyMDIyLTAxLTEyICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0
c0B3ZWJraXQub3JnPgogCiAgICAgICAgIGNzcy9jc3MtdHJhbnNpdGlvbnMvcHNldWRvLWVsZW1l
bnRzLTAwMi5odG1sIFdQVCBpcyBhIGZhaWx1cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hbmltYXRpb24v
S2V5ZnJhbWVFZmZlY3QuY3BwCmluZGV4IDc2MmNmNTAxZTQ2NjU5MDRhNzNiNjYzNjM2MTQ0ZWY1
ODE3YWUzZGYuLmE1MTM4MzhlMmJmNDNiMmRkMThmYjJkY2MyYmU1OTVjMTcyOWZmZDAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcApAQCAtODYsOCArODYs
OCBAQCBzdGF0aWMgRWxlbWVudCogZWxlbWVudE9yUHNldWRvRWxlbWVudEZvclN0eWxlYWJsZShj
b25zdCBzdGQ6Om9wdGlvbmFsPGNvbnN0IFN0eQogCiBzdGF0aWMgaW5saW5lIHZvaWQgaW52YWxp
ZGF0ZUVsZW1lbnQoY29uc3Qgc3RkOjpvcHRpb25hbDxjb25zdCBTdHlsZWFibGU+JiBzdHlsZWFi
bGUpCiB7Ci0gICAgaWYgKGF1dG8qIGVsZW1lbnRPclBzZXVkb0VsZW1lbnQgPSBlbGVtZW50T3JQ
c2V1ZG9FbGVtZW50Rm9yU3R5bGVhYmxlKHN0eWxlYWJsZSkpCi0gICAgICAgIGVsZW1lbnRPclBz
ZXVkb0VsZW1lbnQtPmludmFsaWRhdGVTdHlsZUludGVybmFsKCk7CisgICAgaWYgKHN0eWxlYWJs
ZSkKKyAgICAgICAgc3R5bGVhYmxlLT5lbGVtZW50LmludmFsaWRhdGVTdHlsZUludGVybmFsKCk7
CiB9CiAKIHN0YXRpYyBpbmxpbmUgU3RyaW5nIENTU1Byb3BlcnR5SURUb0lETEF0dHJpYnV0ZU5h
bWUoQ1NTUHJvcGVydHlJRCBjc3NQcm9wZXJ0eUlkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCAxMzA2OThjNjgzZjE3Nzc5
MjY2NDhmZGE5YjM0YTNmNzA2NTQ1ZDY1Li4xZWMwZTkxZGNmOWFlNTY5NjgwOGRmOWRlNjY4YjI3
Y2U3ZThlMTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHls
ZURlY2xhcmF0aW9uLmNwcApAQCAtNzUsNiArNzUsNyBAQAogI2luY2x1ZGUgIlN0eWxlUmVzb2x2
ZXIuaCIKICNpbmNsdWRlICJTdHlsZVNjb3BlLmgiCiAjaW5jbHVkZSAiU3R5bGVTY3JvbGxTbmFw
UG9pbnRzLmgiCisjaW5jbHVkZSAiU3R5bGVhYmxlLmgiCiAjaW5jbHVkZSAiVG91Y2hBY3Rpb24u
aCIKICNpbmNsdWRlICJXZWJLaXRGb250RmFtaWx5TmFtZXMuaCIKICNpbmNsdWRlICJXaWxsQ2hh
bmdlRGF0YS5oIgpAQCAtMjM3NCwyOCArMjM3NSwxNSBAQCBzdGF0aWMgYm9vbCBpc0xheW91dERl
cGVuZGVudChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIGNvbnN0IFJlbmRlclN0eWxlKiBzdHls
ZQogICAgIH0KIH0KIAotRWxlbWVudCogQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6c3R5bGVkRWxl
bWVudCgpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX2VsZW1lbnQpCi0gICAgICAgIHJldHVybiBudWxs
cHRyOwotICAgIFBzZXVkb0VsZW1lbnQqIHBzZXVkb0VsZW1lbnQ7Ci0gICAgaWYgKG1fcHNldWRv
RWxlbWVudFNwZWNpZmllciA9PSBQc2V1ZG9JZDo6QmVmb3JlICYmIChwc2V1ZG9FbGVtZW50ID0g
bV9lbGVtZW50LT5iZWZvcmVQc2V1ZG9FbGVtZW50KCkpKQotICAgICAgICByZXR1cm4gcHNldWRv
RWxlbWVudDsKLSAgICBpZiAobV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyID09IFBzZXVkb0lkOjpB
ZnRlciAmJiAocHNldWRvRWxlbWVudCA9IG1fZWxlbWVudC0+YWZ0ZXJQc2V1ZG9FbGVtZW50KCkp
KQotICAgICAgICByZXR1cm4gcHNldWRvRWxlbWVudDsKLSAgICByZXR1cm4gbV9lbGVtZW50Lmdl
dCgpOwotfQotCiBSZW5kZXJFbGVtZW50KiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpzdHlsZWRS
ZW5kZXJlcigpIGNvbnN0CiB7Ci0gICAgYXV0byogZWxlbWVudCA9IHN0eWxlZEVsZW1lbnQoKTsK
LSAgICBpZiAoIWVsZW1lbnQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIGlmIChtX3Bz
ZXVkb0VsZW1lbnRTcGVjaWZpZXIgIT0gUHNldWRvSWQ6Ok5vbmUgJiYgZWxlbWVudCA9PSBtX2Vs
ZW1lbnQuZ2V0KCkpCisgICAgaWYgKCFtX2VsZW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRy
OwotICAgIGlmIChlbGVtZW50LT5oYXNEaXNwbGF5Q29udGVudHMoKSkKKyAgICBpZiAobV9wc2V1
ZG9FbGVtZW50U3BlY2lmaWVyICE9IFBzZXVkb0lkOjpOb25lKQorICAgICAgICByZXR1cm4gU3R5
bGVhYmxlKCptX2VsZW1lbnQsIG1fcHNldWRvRWxlbWVudFNwZWNpZmllcikucmVuZGVyZXIoKTsK
KyAgICBpZiAobV9lbGVtZW50LT5oYXNEaXNwbGF5Q29udGVudHMoKSkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7Ci0gICAgcmV0dXJuIGVsZW1lbnQtPnJlbmRlcmVyKCk7CisgICAgcmV0dXJuIG1f
ZWxlbWVudC0+cmVuZGVyZXIoKTsKIH0KIAogc3RhdGljIGJvb2wgaXNJbXBsaWNpdGx5SW5oZXJp
dGVkR3JpZE9yRmxleFByb3BlcnR5KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKQEAgLTI0NTAs
MTIgKzI0MzgsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaGFzVmFsaWRTdHlsZUZvclByb3BlcnR5
KEVsZW1lbnQmIGVsZW1lbnQsIENTU1Byb3BlcnR5SUQgcHJvcAogewogICAgIGlmIChlbGVtZW50
LnN0eWxlVmFsaWRpdHkoKSAhPSBTdHlsZTo6VmFsaWRpdHk6OlZhbGlkKQogICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgaWYgKGVsZW1lbnQuaXNQc2V1ZG9FbGVtZW50KCkpIHsKLSAgICAgICAg
aWYgKGF1dG8qIGhvc3QgPSBkb3duY2FzdDxQc2V1ZG9FbGVtZW50PihlbGVtZW50KS5ob3N0RWxl
bWVudCgpKSB7Ci0gICAgICAgICAgICBpZiAoaG9zdC0+c3R5bGVWYWxpZGl0eSgpICE9IFN0eWxl
OjpWYWxpZGl0eTo6VmFsaWQpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICB9Ci0gICAgfQogICAgIGlmIChlbGVtZW50LmRvY3VtZW50KCkuaGFzUGVuZGluZ0Z1bGxTdHls
ZVJlYnVpbGQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZWxlbWVudC5kb2N1
bWVudCgpLmNoaWxkTmVlZHNTdHlsZVJlY2FsYygpKQpAQCAtMjUxNSwyMCArMjQ5NywyMSBAQCBz
dGF0aWMgYm9vbCB1cGRhdGVTdHlsZUlmTmVlZGVkRm9yUHJvcGVydHkoRWxlbWVudCYgZWxlbWVu
dCwgQ1NTUHJvcGVydHlJRCBwcm9wZQogICAgIHJldHVybiB0cnVlOwogfQogCi1zdGF0aWMgaW5s
aW5lIGNvbnN0IFJlbmRlclN0eWxlKiBjb21wdXRlUmVuZGVyU3R5bGVGb3JQcm9wZXJ0eShFbGVt
ZW50JiBlbGVtZW50LCBQc2V1ZG9JZCBwc2V1ZG9FbGVtZW50U3BlY2lmaWVyLCBDU1NQcm9wZXJ0
eUlEIHByb3BlcnR5SUQsIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4mIG93bmVkU3R5bGUp
CitzdGF0aWMgaW5saW5lIGNvbnN0IFJlbmRlclN0eWxlKiBjb21wdXRlUmVuZGVyU3R5bGVGb3JQ
cm9wZXJ0eShFbGVtZW50JiBlbGVtZW50LCBQc2V1ZG9JZCBwc2V1ZG9FbGVtZW50U3BlY2lmaWVy
LCBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQsIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4m
IG93bmVkU3R5bGUsIFJlbmRlckVsZW1lbnQqIHJlbmRlcmVyKQogewotICAgIGF1dG8qIHJlbmRl
cmVyID0gZWxlbWVudC5yZW5kZXJlcigpOworICAgIGlmICghcmVuZGVyZXIpCisgICAgICAgIHJl
bmRlcmVyID0gZWxlbWVudC5yZW5kZXJlcigpOwogCiAgICAgaWYgKHJlbmRlcmVyICYmIHJlbmRl
cmVyLT5pc0NvbXBvc2l0ZWQoKSAmJiBDU1NQcm9wZXJ0eUFuaW1hdGlvbjo6YW5pbWF0aW9uT2ZQ
cm9wZXJ0eUlzQWNjZWxlcmF0ZWQocHJvcGVydHlJRCkpIHsKICAgICAgICAgb3duZWRTdHlsZSA9
IHJlbmRlcmVyLT5hbmltYXRlZFN0eWxlKCk7Ci0gICAgICAgIGlmIChwc2V1ZG9FbGVtZW50U3Bl
Y2lmaWVyICE9IFBzZXVkb0lkOjpOb25lICYmICFlbGVtZW50LmlzUHNldWRvRWxlbWVudCgpKSB7
CisgICAgICAgIGlmIChwc2V1ZG9FbGVtZW50U3BlY2lmaWVyICE9IFBzZXVkb0lkOjpOb25lKSB7
CiAgICAgICAgICAgICAvLyBGSVhNRTogVGhpcyBjYWNoZWQgcHNldWRvIHN0eWxlIHdpbGwgb25s
eSBleGlzdCBpZiB0aGUgYW5pbWF0aW9uIGhhcyBiZWVuIHJ1biBhdCBsZWFzdCBvbmNlLgogICAg
ICAgICAgICAgcmV0dXJuIG93bmVkU3R5bGUtPmdldENhY2hlZFBzZXVkb1N0eWxlKHBzZXVkb0Vs
ZW1lbnRTcGVjaWZpZXIpOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiBvd25lZFN0eWxlLmdl
dCgpOwogICAgIH0KIAotICAgIHJldHVybiBlbGVtZW50LmNvbXB1dGVkU3R5bGUoZWxlbWVudC5p
c1BzZXVkb0VsZW1lbnQoKSA/IFBzZXVkb0lkOjpOb25lIDogcHNldWRvRWxlbWVudFNwZWNpZmll
cik7CisgICAgcmV0dXJuIGVsZW1lbnQuY29tcHV0ZWRTdHlsZShwc2V1ZG9FbGVtZW50U3BlY2lm
aWVyKTsKIH0KIAogc3RhdGljIFJlZjxDU1NWYWx1ZT4gc2hhcGVQcm9wZXJ0eVZhbHVlKGNvbnN0
IFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgU2hhcGVWYWx1ZSogc2hhcGVWYWx1ZSkKQEAgLTI2
NjYsMTcgKzI2NDksMTQgQEAgaW5saW5lIHN0YXRpYyBib29sIGlzRmxleE9yR3JpZEl0ZW0oUmVu
ZGVyT2JqZWN0KiByZW5kZXJlcikKIAogUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0
cmFjdG9yOjpjdXN0b21Qcm9wZXJ0eVZhbHVlKGNvbnN0IFN0cmluZyYgcHJvcGVydHlOYW1lKQog
ewotICAgIEVsZW1lbnQqIHN0eWxlZEVsZW1lbnQgPSB0aGlzLT5zdHlsZWRFbGVtZW50KCk7Cisg
ICAgRWxlbWVudCogc3R5bGVkRWxlbWVudCA9IG1fZWxlbWVudC5nZXQoKTsKICAgICBpZiAoIXN0
eWxlZEVsZW1lbnQpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIAotICAgIGlmICh1cGRh
dGVTdHlsZUlmTmVlZGVkRm9yUHJvcGVydHkoKnN0eWxlZEVsZW1lbnQsIENTU1Byb3BlcnR5Q3Vz
dG9tKSkgewotICAgICAgICAvLyBTdHlsZSB1cGRhdGUgbWF5IGNoYW5nZSBzdHlsZWRFbGVtZW50
KCkgdG8gUHNldWRvRWxlbWVudCBvciBiYWNrLgotICAgICAgICBzdHlsZWRFbGVtZW50ID0gdGhp
cy0+c3R5bGVkRWxlbWVudCgpOwotICAgIH0KKyAgICB1cGRhdGVTdHlsZUlmTmVlZGVkRm9yUHJv
cGVydHkoKnN0eWxlZEVsZW1lbnQsIENTU1Byb3BlcnR5Q3VzdG9tKTsKIAogICAgIHN0ZDo6dW5p
cXVlX3B0cjxSZW5kZXJTdHlsZT4gb3duZWRTdHlsZTsKLSAgICBhdXRvKiBzdHlsZSA9IGNvbXB1
dGVSZW5kZXJTdHlsZUZvclByb3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRT
cGVjaWZpZXIsIENTU1Byb3BlcnR5Q3VzdG9tLCBvd25lZFN0eWxlKTsKKyAgICBhdXRvKiBzdHls
ZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZvclByb3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVk
b0VsZW1lbnRTcGVjaWZpZXIsIENTU1Byb3BlcnR5Q3VzdG9tLCBvd25lZFN0eWxlLCBudWxscHRy
KTsKICAgICBpZiAoIXN0eWxlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIApAQCAtMjczNCw3
ICsyNzE0LDcgQEAgc3RhdGljIFJlZjxDU1NGb250VmFsdWU+IGZvbnRTaG9ydGhhbmRWYWx1ZUZv
clNlbGVjdGlvblByb3BlcnRpZXMoY29uc3QgRm9udERlc2MKIAogUmVmUHRyPENTU1ZhbHVlPiBD
b21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVy
dHlJRCwgRVVwZGF0ZUxheW91dCB1cGRhdGVMYXlvdXQpCiB7Ci0gICAgYXV0byogc3R5bGVkRWxl
bWVudCA9IHRoaXMtPnN0eWxlZEVsZW1lbnQoKTsKKyAgICBhdXRvKiBzdHlsZWRFbGVtZW50ID0g
bV9lbGVtZW50LmdldCgpOwogICAgIGlmICghc3R5bGVkRWxlbWVudCkKICAgICAgICAgcmV0dXJu
IG51bGxwdHI7CiAKQEAgLTI3NDUsMzAgKzI3MjUsMjUgQEAgUmVmUHRyPENTU1ZhbHVlPiBDb21w
dXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJ
RCwKICAgICBpZiAodXBkYXRlTGF5b3V0KSB7CiAgICAgICAgIERvY3VtZW50JiBkb2N1bWVudCA9
IG1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKIAotICAgICAgICBpZiAodXBkYXRlU3R5bGVJZk5lZWRl
ZEZvclByb3BlcnR5KCpzdHlsZWRFbGVtZW50LCBwcm9wZXJ0eUlEKSkgewotICAgICAgICAgICAg
Ly8gU3R5bGUgdXBkYXRlIG1heSBjaGFuZ2Ugc3R5bGVkRWxlbWVudCgpIHRvIFBzZXVkb0VsZW1l
bnQgb3IgYmFjay4KLSAgICAgICAgICAgIHN0eWxlZEVsZW1lbnQgPSB0aGlzLT5zdHlsZWRFbGVt
ZW50KCk7Ci0gICAgICAgIH0KKyAgICAgICAgdXBkYXRlU3R5bGVJZk5lZWRlZEZvclByb3BlcnR5
KCpzdHlsZWRFbGVtZW50LCBwcm9wZXJ0eUlEKTsKICAgICAgICAgcmVuZGVyZXIgPSBzdHlsZWRS
ZW5kZXJlcigpOwogCiAgICAgICAgIGlmIChwcm9wZXJ0eUlEID09IENTU1Byb3BlcnR5RGlzcGxh
eSAmJiAhcmVuZGVyZXIgJiYgaXM8U1ZHRWxlbWVudD4oKnN0eWxlZEVsZW1lbnQpICYmICFkb3du
Y2FzdDxTVkdFbGVtZW50Pigqc3R5bGVkRWxlbWVudCkuaXNWYWxpZCgpKQogICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAKLSAgICAgICAgc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVGb3JQ
cm9wZXJ0eSgqc3R5bGVkRWxlbWVudCwgbV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyLCBwcm9wZXJ0
eUlELCBvd25lZFN0eWxlKTsKKyAgICAgICAgc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVGb3JQ
cm9wZXJ0eSgqc3R5bGVkRWxlbWVudCwgbV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyLCBwcm9wZXJ0
eUlELCBvd25lZFN0eWxlLCByZW5kZXJlcik7CiAKICAgICAgICAgLy8gRklYTUU6IFNvbWUgb2Yg
dGhlc2UgY2FzZXMgY291bGQgYmUgbmFycm93ZWQgZG93biBvciBvcHRpbWl6ZWQgYmV0dGVyLgog
ICAgICAgICBmb3JjZUZ1bGxMYXlvdXQgPSBpc0xheW91dERlcGVuZGVudChwcm9wZXJ0eUlELCBz
dHlsZSwgcmVuZGVyZXIpCiAgICAgICAgICAgICB8fCBzdHlsZWRFbGVtZW50LT5pc0luU2hhZG93
VHJlZSgpCiAgICAgICAgICAgICB8fCAoZG9jdW1lbnQuc3R5bGVTY29wZSgpLnJlc29sdmVySWZF
eGlzdHMoKSAmJiBkb2N1bWVudC5zdHlsZVNjb3BlKCkucmVzb2x2ZXJJZkV4aXN0cygpLT5oYXNW
aWV3cG9ydERlcGVuZGVudE1lZGlhUXVlcmllcygpICYmIGRvY3VtZW50Lm93bmVyRWxlbWVudCgp
KTsKIAotICAgICAgICBpZiAoZm9yY2VGdWxsTGF5b3V0KSB7CisgICAgICAgIGlmIChmb3JjZUZ1
bGxMYXlvdXQpCiAgICAgICAgICAgICBkb2N1bWVudC51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5n
U3R5bGVzaGVldHMoKTsKLSAgICAgICAgICAgIHN0eWxlZEVsZW1lbnQgPSB0aGlzLT5zdHlsZWRF
bGVtZW50KCk7Ci0gICAgICAgIH0KICAgICB9CiAKICAgICBpZiAoIXVwZGF0ZUxheW91dCB8fCBm
b3JjZUZ1bGxMYXlvdXQpIHsKLSAgICAgICAgc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVGb3JQ
cm9wZXJ0eSgqc3R5bGVkRWxlbWVudCwgbV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyLCBwcm9wZXJ0
eUlELCBvd25lZFN0eWxlKTsKKyAgICAgICAgc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVGb3JQ
cm9wZXJ0eSgqc3R5bGVkRWxlbWVudCwgbV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyLCBwcm9wZXJ0
eUlELCBvd25lZFN0eWxlLCByZW5kZXJlcik7CiAgICAgICAgIHJlbmRlcmVyID0gc3R5bGVkUmVu
ZGVyZXIoKTsKICAgICB9CiAKQEAgLTQ0MTAsMTEgKzQzODUsMTEgQEAgRXhjZXB0aW9uT3I8dm9p
ZD4gQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uOjpzZXRQcm9wZXJ0eUludGVybmFsKENTU1By
b3BlcnR5SUQKIHNpemVfdCBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpnZXRMYXllckNvdW50KENT
U1Byb3BlcnR5SUQgcHJvcGVydHkpCiB7CiAgICAgQVNTRVJUKHByb3BlcnR5ID09IENTU1Byb3Bl
cnR5QmFja2dyb3VuZCB8fCBwcm9wZXJ0eSA9PSBDU1NQcm9wZXJ0eU1hc2spOwotICAgIGlmICgh
c3R5bGVkRWxlbWVudCgpKQorICAgIGlmICghbV9lbGVtZW50KQogICAgICAgICByZXR1cm4gMDsK
IAogICAgIHN0ZDo6dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gb3duZWRTdHlsZTsKLSAgICBjb25z
dCBSZW5kZXJTdHlsZSogc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVGb3JQcm9wZXJ0eSgqc3R5
bGVkRWxlbWVudCgpLCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5LCBvd25lZFN0
eWxlKTsKKyAgICBjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUgPSBjb21wdXRlUmVuZGVyU3R5bGVG
b3JQcm9wZXJ0eSgqbV9lbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5
LCBvd25lZFN0eWxlLCBudWxscHRyKTsKICAgICBpZiAoIXN0eWxlKQogICAgICAgICByZXR1cm4g
MDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNs
YXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlv
bi5oCmluZGV4IGNiYWFkYjkxZjM4ZGEyYzdhZWI5N2IxMWY2ZTkwNTI0OWU2MmEyZDcuLjczNDg4
NDQzYzVhNGI2MzljZjkyNTU4Yzc4ODFjYzUwYzM4NWE4NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgKQEAgLTgxLDE0ICs4MSw3IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBhZGRWYWx1ZUZvckFuaW1hdGlvblByb3BlcnR5VG9M
aXN0KENTU1ZhbHVlTGlzdCYsIENTU1Byb3BlcnR5SUQsIGNvbnN0IEFuaW1hdGlvbiopOwogCiBw
cml2YXRlOgotICAgIC8vIFRoZSBzdHlsZWQgZWxlbWVudCBpcyBlaXRoZXIgdGhlIGVsZW1lbnQg
cGFzc2VkIGludG8KLSAgICAvLyBjb21wdXRlZFByb3BlcnR5VmFsdWUsIG9yIHRoZSBQc2V1ZG9F
bGVtZW50IGZvciA6YmVmb3JlIGFuZCA6YWZ0ZXIgaWYKLSAgICAvLyB0aGV5IGV4aXN0LgotICAg
IEVsZW1lbnQqIHN0eWxlZEVsZW1lbnQoKSBjb25zdDsKLQogICAgIC8vIFRoZSByZW5kZXJlciB3
ZSBzaG91bGQgdXNlIGZvciByZXNvbHZpbmcgbGF5b3V0LWRlcGVuZGVudCBwcm9wZXJ0aWVzLgot
ICAgIC8vIE5vdGUgdGhhdCBpdCBkaWZmZXJzIGZyb20gc3R5bGVkRWxlbWVudCgpLT5yZW5kZXJl
cigpIGluIHRoZSBjYXNlIHdlIGhhdmUKLSAgICAvLyBubyBwc2V1ZG8tZWxlbWVudC4KICAgICBS
ZW5kZXJFbGVtZW50KiBzdHlsZWRSZW5kZXJlcigpIGNvbnN0OwogCiAgICAgUmVmUHRyPENTU1Zh
bHVlPiBzdmdQcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
YWJsZS5jcHAKaW5kZXggNzZmZWQ2ZTliYWEwMzllZDk3ZGY2OWQ4NjdjYjcxNmU3ODliNTAzMi4u
MTVmYTc3ZDVlMTAwMzk3YTY5Zjk4ZTg4MjA2NDQxNTNiYzc1OTgwZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9TdHlsZWFibGUuY3BwCkBAIC0xMDQsNyArMTA0LDcgQEAgUmVuZGVyRWxlbWVudCogU3R5bGVh
YmxlOjpyZW5kZXJlcigpIGNvbnN0CiAgICAgY2FzZSBQc2V1ZG9JZDo6Tm9uZToKICAgICAgICAg
cmV0dXJuIGVsZW1lbnQucmVuZGVyZXIoKTsKICAgICBkZWZhdWx0OgotICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQogCiAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA5MWY3OGRlNjEx
NjA3Njc5MzljNGVhYzVmYjE2NWE4YWZkYTE4NjEwLi42OTJhNTE4YzA4ODAxYjY1NjZiYjEyZmRk
NGVlYzNiMTlmMjMzMmQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAyMi0wMS0xMyAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4K
KworICAgICAgICBSZW1vdmUgdXNlIG9mIFBzZXVkb0VsZW1lbnQgaW4gQ29tcHV0ZWRTdHlsZUV4
dHJhY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjM1MTU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
TWFyayBXUFQgcHJvZ3Jlc3Npb25z4oCmIGFuZCBhIHJlZ3Jlc3Npb24gOigKKworICAgICAgICAq
IHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9tYXJrZXItY29tcHV0ZWQtc2l6ZS1l
eHBlY3RlZC50eHQ6CisKIDIwMjItMDEtMTIgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgY3NzL2Nzcy10cmFuc2l0aW9ucy9wc2V1ZG8tZWxlbWVudHMtMDAy
Lmh0bWwgV1BUIGlzIGEgZmFpbHVyZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXBzZXVkby9tYXJrZXItY29tcHV0ZWQtc2l6
ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtcHNldWRvL21hcmtlci1jb21wdXRlZC1zaXplLWV4cGVjdGVkLnR4dAppbmRl
eCA2Yjk1N2NkOGE0NWM2ZjUyY2YwNTBjOWQ2YmFiZDZlN2YzMmM5ODdiLi5iMWUzNzZmZTU5MmI1
MmYzMjRjN2U4NzdjZGZmMmJjZTViMDYxNzJhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRvL21hcmtlci1jb21wdXRl
ZC1zaXplLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtcHNldWRvL21hcmtlci1jb21wdXRlZC1zaXplLWV4cGVjdGVk
LnR4dApAQCAtMSwxMCArMSwxMCBAQAogCi1GQUlMIERlY2ltYWwgOjptYXJrZXIgYXNzZXJ0X2Vx
dWFsczogd2lkdGggZXhwZWN0ZWQgIjMwcHgiIGJ1dCBnb3QgImF1dG8iCi1GQUlMIERlY2ltYWwg
OjptYXJrZXIgd2l0aCBjdXN0b20gdmFsdWUgYXNzZXJ0X2VxdWFsczogd2lkdGggZXhwZWN0ZWQg
IjQwcHgiIGJ1dCBnb3QgImF1dG8iCi1GQUlMIFN0cmluZyA6Om1hcmtlciBhc3NlcnRfZXF1YWxz
OiB3aWR0aCBleHBlY3RlZCAiMjBweCIgYnV0IGdvdCAiYXV0byIKK1BBU1MgRGVjaW1hbCA6Om1h
cmtlcgorUEFTUyBEZWNpbWFsIDo6bWFya2VyIHdpdGggY3VzdG9tIHZhbHVlCitQQVNTIFN0cmlu
ZyA6Om1hcmtlcgogUEFTUyA6Om1hcmtlciB3aXRoIG5vIGJveCBkdWUgdG8gJ2xpc3Qtc3R5bGUn
CiBGQUlMIDo6bWFya2VyIHdpdGggY3VzdG9tIHN0cmluZyBjb250ZW50cyBhc3NlcnRfZXF1YWxz
OiB3aWR0aCBleHBlY3RlZCAiNjBweCIgYnV0IGdvdCAiYXV0byIKIEZBSUwgOjptYXJrZXIgd2l0
aCBjdXN0b20gaW1hZ2UgY29udGVudHMgYXNzZXJ0X2VxdWFsczogd2lkdGggZXhwZWN0ZWQgIjEw
MHB4IiBidXQgZ290ICJhdXRvIgogRkFJTCA6Om1hcmtlciB3aXRoIGN1c3RvbSBzdHJpbmcgYW5k
IGltYWdlIGNvbnRlbnRzIGFzc2VydF9lcXVhbHM6IHdpZHRoIGV4cGVjdGVkICIxMzBweCIgYnV0
IGdvdCAiYXV0byIKLVBBU1MgOjptYXJrZXIgd2l0aCBubyBib3ggZHVlIHRvICdjb250ZW50Jwor
RkFJTCA6Om1hcmtlciB3aXRoIG5vIGJveCBkdWUgdG8gJ2NvbnRlbnQnIGFzc2VydF9lcXVhbHM6
IHdpZHRoIGV4cGVjdGVkICJhdXRvIiBidXQgZ290ICI1cHgiCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449080</attachid>
            <date>2022-01-13 10:26:20 -0800</date>
            <delta_ts>2022-01-13 11:10:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-235158-20220113192618.patch</filename>
            <type>text/plain</type>
            <size>12511</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3OTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzM1Mzk0ZjJiMTZhYTg5
N2E4MzdkYmY2YzI0NzA0ZDgyYmM0Y2MwNS4uNjRjMTAzMzUwMWY4MDc1ZmFlMTk4YzJkMDgwOTI4
NmI4OGJkZmJhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIyLTAxLTEzICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB1c2Ugb2Yg
UHNldWRvRWxlbWVudCBpbiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzUxNTgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIHdlIGZpeGVkIGJ1ZyAyMzQ5ODcs
IHRoZSBlYXNpZXN0IHRoaW5nIHdhcyB0byBhZGQgc29tZSBjb2RlIHRoYXQgdXNlcyBQc2V1ZG9F
bGVtZW50LAorICAgICAgICB3aGljaCB3YXMgYWxyZWFkeSB1c2VkIGluIHNldmVyYWwgcGxhY2Vz
IGluIENvbXB1dGVkU3R5bGVFeHRyYWN0b3IuIEhvd2V2ZXIsIHdlIHdhbnQgdG8KKyAgICAgICAg
cmVtb3ZlIGNvZGUgdXNpbmcgUHNldWRvRWxlbWVudCwgbm90IGFkZCBtb3JlLgorCisgICAgICAg
IFRoaXMgcGF0Y2ggZG9lcyB0aGF0IHRocm91Z2hvdXQgQ29tcHV0ZWRTdHlsZUV4dHJhY3RvciBh
bmQgYWxzbyByZW1vdmVzIHNvbWUgdXNlIGluCisgICAgICAgIEtleWZyYW1lRWZmZWN0IGJ5IGFs
d2F5cyBpbnZhbGlkYXRpbmcgdGhlIGhvc3QgaW5zdGVhZCBvZiBnb2luZyB0aHJvdWdoIFBzZXVk
b0VsZW1lbnQsCisgICAgICAgIHdoaWNoIHdhc24ndCBuZWNlc3NhcnkgYW55bW9yZS4KKworICAg
ICAgICBXZSBhbHNvIGhhZCB0byBtb2RpZnkgU3R5bGVhYmxlOjpyZW5kZXJlcigpIHRvIHJldHVy
biBudWxscHRyIGZvciB0aGUgIjo6bWFya2VyIiBjYXNlCisgICAgICAgIGluIGNhc2UgdGhlcmUg
aXMgbm8gY29udGVudCBzZXQgZm9yIHRoZSBtYXJrZXIsIGJlY2F1c2UgZXNzZW50aWFsbHkgdGhl
cmUgaXMgbm90aGluZworICAgICAgICBiZWluZyByZW5kZXJlZCBmb3IgdGhlIG1hcmtlciBhbmQg
aXQgd291bGQgY2F1c2UgQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZSgpCisg
ICAgICAgIHRvIHJldHVybiBjb21wdXRlZCB2YWx1ZSBpbnN0ZWFkIG9mICJhdXRvIiBmb3Igd2lk
dGggYW5kIGhlaWdodCBmb3IgaW5zdGFuY2UuCisKKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJh
bWVFZmZlY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aW52YWxpZGF0ZUVsZW1lbnQpOgorICAg
ICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6c3R5bGVkUmVuZGVyZXIgY29uc3QpOgorICAg
ICAgICAoV2ViQ29yZTo6aGFzVmFsaWRTdHlsZUZvclByb3BlcnR5KToKKyAgICAgICAgKFdlYkNv
cmU6OmNvbXB1dGVSZW5kZXJTdHlsZUZvclByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6OkNv
bXB1dGVkU3R5bGVFeHRyYWN0b3I6OmN1c3RvbVByb3BlcnR5VmFsdWUpOgorICAgICAgICAoV2Vi
Q29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpnZXRMYXllckNvdW50KToKKyAgICAgICAg
KFdlYkNvcmU6OkNvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnN0eWxlZEVsZW1lbnQgY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaDoKKyAg
ICAgICAgKiBzdHlsZS9TdHlsZWFibGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVhYmxl
OjpyZW5kZXJlciBjb25zdCk6CisKIDIwMjItMDEtMTIgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgY3NzL2Nzcy10cmFuc2l0aW9ucy9wc2V1ZG8tZWxlbWVu
dHMtMDAyLmh0bWwgV1BUIGlzIGEgZmFpbHVyZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9L
ZXlmcmFtZUVmZmVjdC5jcHAKaW5kZXggNzYyY2Y1MDFlNDY2NTkwNGE3M2I2NjM2MzYxNDRlZjU4
MTdhZTNkZi4uYTUxMzgzOGUyYmY0M2IyZGQxOGZiMmRjYzJiZTU5NWMxNzI5ZmZkMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZmZWN0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hbmltYXRpb24vS2V5ZnJhbWVFZmZlY3QuY3BwCkBAIC04Niw4ICs4Niw4
IEBAIHN0YXRpYyBFbGVtZW50KiBlbGVtZW50T3JQc2V1ZG9FbGVtZW50Rm9yU3R5bGVhYmxlKGNv
bnN0IHN0ZDo6b3B0aW9uYWw8Y29uc3QgU3R5CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBpbnZhbGlk
YXRlRWxlbWVudChjb25zdCBzdGQ6Om9wdGlvbmFsPGNvbnN0IFN0eWxlYWJsZT4mIHN0eWxlYWJs
ZSkKIHsKLSAgICBpZiAoYXV0byogZWxlbWVudE9yUHNldWRvRWxlbWVudCA9IGVsZW1lbnRPclBz
ZXVkb0VsZW1lbnRGb3JTdHlsZWFibGUoc3R5bGVhYmxlKSkKLSAgICAgICAgZWxlbWVudE9yUHNl
dWRvRWxlbWVudC0+aW52YWxpZGF0ZVN0eWxlSW50ZXJuYWwoKTsKKyAgICBpZiAoc3R5bGVhYmxl
KQorICAgICAgICBzdHlsZWFibGUtPmVsZW1lbnQuaW52YWxpZGF0ZVN0eWxlSW50ZXJuYWwoKTsK
IH0KIAogc3RhdGljIGlubGluZSBTdHJpbmcgQ1NTUHJvcGVydHlJRFRvSURMQXR0cmlidXRlTmFt
ZShDU1NQcm9wZXJ0eUlEIGNzc1Byb3BlcnR5SWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDEzMDY5OGM2ODNmMTc3Nzky
NjY0OGZkYTliMzRhM2Y3MDY1NDVkNjUuLjFlYzBlOTFkY2Y5YWU1Njk2ODA4ZGY5ZGU2NjhiMjdj
ZTdlOGUxN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCkBAIC03NSw2ICs3NSw3IEBACiAjaW5jbHVkZSAiU3R5bGVSZXNvbHZl
ci5oIgogI2luY2x1ZGUgIlN0eWxlU2NvcGUuaCIKICNpbmNsdWRlICJTdHlsZVNjcm9sbFNuYXBQ
b2ludHMuaCIKKyNpbmNsdWRlICJTdHlsZWFibGUuaCIKICNpbmNsdWRlICJUb3VjaEFjdGlvbi5o
IgogI2luY2x1ZGUgIldlYktpdEZvbnRGYW1pbHlOYW1lcy5oIgogI2luY2x1ZGUgIldpbGxDaGFu
Z2VEYXRhLmgiCkBAIC0yMzc0LDI4ICsyMzc1LDE1IEBAIHN0YXRpYyBib29sIGlzTGF5b3V0RGVw
ZW5kZW50KENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxl
CiAgICAgfQogfQogCi1FbGVtZW50KiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpzdHlsZWRFbGVt
ZW50KCkgY29uc3QKLXsKLSAgICBpZiAoIW1fZWxlbWVudCkKLSAgICAgICAgcmV0dXJuIG51bGxw
dHI7Ci0gICAgUHNldWRvRWxlbWVudCogcHNldWRvRWxlbWVudDsKLSAgICBpZiAobV9wc2V1ZG9F
bGVtZW50U3BlY2lmaWVyID09IFBzZXVkb0lkOjpCZWZvcmUgJiYgKHBzZXVkb0VsZW1lbnQgPSBt
X2VsZW1lbnQtPmJlZm9yZVBzZXVkb0VsZW1lbnQoKSkpCi0gICAgICAgIHJldHVybiBwc2V1ZG9F
bGVtZW50OwotICAgIGlmIChtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIgPT0gUHNldWRvSWQ6OkFm
dGVyICYmIChwc2V1ZG9FbGVtZW50ID0gbV9lbGVtZW50LT5hZnRlclBzZXVkb0VsZW1lbnQoKSkp
Ci0gICAgICAgIHJldHVybiBwc2V1ZG9FbGVtZW50OwotICAgIHJldHVybiBtX2VsZW1lbnQuZ2V0
KCk7Ci19Ci0KIFJlbmRlckVsZW1lbnQqIENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnN0eWxlZFJl
bmRlcmVyKCkgY29uc3QKIHsKLSAgICBhdXRvKiBlbGVtZW50ID0gc3R5bGVkRWxlbWVudCgpOwot
ICAgIGlmICghZWxlbWVudCkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgaWYgKG1fcHNl
dWRvRWxlbWVudFNwZWNpZmllciAhPSBQc2V1ZG9JZDo6Tm9uZSAmJiBlbGVtZW50ID09IG1fZWxl
bWVudC5nZXQoKSkKKyAgICBpZiAoIW1fZWxlbWVudCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7
Ci0gICAgaWYgKGVsZW1lbnQtPmhhc0Rpc3BsYXlDb250ZW50cygpKQorICAgIGlmIChtX3BzZXVk
b0VsZW1lbnRTcGVjaWZpZXIgIT0gUHNldWRvSWQ6Ok5vbmUpCisgICAgICAgIHJldHVybiBTdHls
ZWFibGUoKm1fZWxlbWVudCwgbV9wc2V1ZG9FbGVtZW50U3BlY2lmaWVyKS5yZW5kZXJlcigpOwor
ICAgIGlmIChtX2VsZW1lbnQtPmhhc0Rpc3BsYXlDb250ZW50cygpKQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKLSAgICByZXR1cm4gZWxlbWVudC0+cmVuZGVyZXIoKTsKKyAgICByZXR1cm4gbV9l
bGVtZW50LT5yZW5kZXJlcigpOwogfQogCiBzdGF0aWMgYm9vbCBpc0ltcGxpY2l0bHlJbmhlcml0
ZWRHcmlkT3JGbGV4UHJvcGVydHkoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKQpAQCAtMjQ1MCwx
MiArMjQzOCw2IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBoYXNWYWxpZFN0eWxlRm9yUHJvcGVydHko
RWxlbWVudCYgZWxlbWVudCwgQ1NTUHJvcGVydHlJRCBwcm9wCiB7CiAgICAgaWYgKGVsZW1lbnQu
c3R5bGVWYWxpZGl0eSgpICE9IFN0eWxlOjpWYWxpZGl0eTo6VmFsaWQpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKLSAgICBpZiAoZWxlbWVudC5pc1BzZXVkb0VsZW1lbnQoKSkgewotICAgICAgICBp
ZiAoYXV0byogaG9zdCA9IGRvd25jYXN0PFBzZXVkb0VsZW1lbnQ+KGVsZW1lbnQpLmhvc3RFbGVt
ZW50KCkpIHsKLSAgICAgICAgICAgIGlmIChob3N0LT5zdHlsZVZhbGlkaXR5KCkgIT0gU3R5bGU6
OlZhbGlkaXR5OjpWYWxpZCkKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAg
IH0KLSAgICB9CiAgICAgaWYgKGVsZW1lbnQuZG9jdW1lbnQoKS5oYXNQZW5kaW5nRnVsbFN0eWxl
UmVidWlsZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFlbGVtZW50LmRvY3Vt
ZW50KCkuY2hpbGROZWVkc1N0eWxlUmVjYWxjKCkpCkBAIC0yNTE1LDIwICsyNDk3LDIxIEBAIHN0
YXRpYyBib29sIHVwZGF0ZVN0eWxlSWZOZWVkZWRGb3JQcm9wZXJ0eShFbGVtZW50JiBlbGVtZW50
LCBDU1NQcm9wZXJ0eUlEIHByb3BlCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXN0YXRpYyBpbmxp
bmUgY29uc3QgUmVuZGVyU3R5bGUqIGNvbXB1dGVSZW5kZXJTdHlsZUZvclByb3BlcnR5KEVsZW1l
bnQmIGVsZW1lbnQsIFBzZXVkb0lkIHBzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIENTU1Byb3BlcnR5
SUQgcHJvcGVydHlJRCwgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiYgb3duZWRTdHlsZSkK
K3N0YXRpYyBpbmxpbmUgY29uc3QgUmVuZGVyU3R5bGUqIGNvbXB1dGVSZW5kZXJTdHlsZUZvclBy
b3BlcnR5KEVsZW1lbnQmIGVsZW1lbnQsIFBzZXVkb0lkIHBzZXVkb0VsZW1lbnRTcGVjaWZpZXIs
IENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiYg
b3duZWRTdHlsZSwgUmVuZGVyRWxlbWVudCogcmVuZGVyZXIpCiB7Ci0gICAgYXV0byogcmVuZGVy
ZXIgPSBlbGVtZW50LnJlbmRlcmVyKCk7CisgICAgaWYgKCFyZW5kZXJlcikKKyAgICAgICAgcmVu
ZGVyZXIgPSBlbGVtZW50LnJlbmRlcmVyKCk7CiAKICAgICBpZiAocmVuZGVyZXIgJiYgcmVuZGVy
ZXItPmlzQ29tcG9zaXRlZCgpICYmIENTU1Byb3BlcnR5QW5pbWF0aW9uOjphbmltYXRpb25PZlBy
b3BlcnR5SXNBY2NlbGVyYXRlZChwcm9wZXJ0eUlEKSkgewogICAgICAgICBvd25lZFN0eWxlID0g
cmVuZGVyZXItPmFuaW1hdGVkU3R5bGUoKTsKLSAgICAgICAgaWYgKHBzZXVkb0VsZW1lbnRTcGVj
aWZpZXIgIT0gUHNldWRvSWQ6Ok5vbmUgJiYgIWVsZW1lbnQuaXNQc2V1ZG9FbGVtZW50KCkpIHsK
KyAgICAgICAgaWYgKHBzZXVkb0VsZW1lbnRTcGVjaWZpZXIgIT0gUHNldWRvSWQ6Ok5vbmUpIHsK
ICAgICAgICAgICAgIC8vIEZJWE1FOiBUaGlzIGNhY2hlZCBwc2V1ZG8gc3R5bGUgd2lsbCBvbmx5
IGV4aXN0IGlmIHRoZSBhbmltYXRpb24gaGFzIGJlZW4gcnVuIGF0IGxlYXN0IG9uY2UuCiAgICAg
ICAgICAgICByZXR1cm4gb3duZWRTdHlsZS0+Z2V0Q2FjaGVkUHNldWRvU3R5bGUocHNldWRvRWxl
bWVudFNwZWNpZmllcik7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIG93bmVkU3R5bGUuZ2V0
KCk7CiAgICAgfQogCi0gICAgcmV0dXJuIGVsZW1lbnQuY29tcHV0ZWRTdHlsZShlbGVtZW50Lmlz
UHNldWRvRWxlbWVudCgpID8gUHNldWRvSWQ6Ok5vbmUgOiBwc2V1ZG9FbGVtZW50U3BlY2lmaWVy
KTsKKyAgICByZXR1cm4gZWxlbWVudC5jb21wdXRlZFN0eWxlKHBzZXVkb0VsZW1lbnRTcGVjaWZp
ZXIpOwogfQogCiBzdGF0aWMgUmVmPENTU1ZhbHVlPiBzaGFwZVByb3BlcnR5VmFsdWUoY29uc3Qg
UmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBTaGFwZVZhbHVlKiBzaGFwZVZhbHVlKQpAQCAtMjY2
NiwxNyArMjY0OSwxNCBAQCBpbmxpbmUgc3RhdGljIGJvb2wgaXNGbGV4T3JHcmlkSXRlbShSZW5k
ZXJPYmplY3QqIHJlbmRlcmVyKQogCiBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OmN1c3RvbVByb3BlcnR5VmFsdWUoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUpCiB7
Ci0gICAgRWxlbWVudCogc3R5bGVkRWxlbWVudCA9IHRoaXMtPnN0eWxlZEVsZW1lbnQoKTsKKyAg
ICBFbGVtZW50KiBzdHlsZWRFbGVtZW50ID0gbV9lbGVtZW50LmdldCgpOwogICAgIGlmICghc3R5
bGVkRWxlbWVudCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgCi0gICAgaWYgKHVwZGF0
ZVN0eWxlSWZOZWVkZWRGb3JQcm9wZXJ0eSgqc3R5bGVkRWxlbWVudCwgQ1NTUHJvcGVydHlDdXN0
b20pKSB7Ci0gICAgICAgIC8vIFN0eWxlIHVwZGF0ZSBtYXkgY2hhbmdlIHN0eWxlZEVsZW1lbnQo
KSB0byBQc2V1ZG9FbGVtZW50IG9yIGJhY2suCi0gICAgICAgIHN0eWxlZEVsZW1lbnQgPSB0aGlz
LT5zdHlsZWRFbGVtZW50KCk7Ci0gICAgfQorICAgIHVwZGF0ZVN0eWxlSWZOZWVkZWRGb3JQcm9w
ZXJ0eSgqc3R5bGVkRWxlbWVudCwgQ1NTUHJvcGVydHlDdXN0b20pOwogCiAgICAgc3RkOjp1bmlx
dWVfcHRyPFJlbmRlclN0eWxlPiBvd25lZFN0eWxlOwotICAgIGF1dG8qIHN0eWxlID0gY29tcHV0
ZVJlbmRlclN0eWxlRm9yUHJvcGVydHkoKnN0eWxlZEVsZW1lbnQsIG1fcHNldWRvRWxlbWVudFNw
ZWNpZmllciwgQ1NTUHJvcGVydHlDdXN0b20sIG93bmVkU3R5bGUpOworICAgIGF1dG8qIHN0eWxl
ID0gY29tcHV0ZVJlbmRlclN0eWxlRm9yUHJvcGVydHkoKnN0eWxlZEVsZW1lbnQsIG1fcHNldWRv
RWxlbWVudFNwZWNpZmllciwgQ1NTUHJvcGVydHlDdXN0b20sIG93bmVkU3R5bGUsIG51bGxwdHIp
OwogICAgIGlmICghc3R5bGUpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC0yNzM0LDcg
KzI3MTQsNyBAQCBzdGF0aWMgUmVmPENTU0ZvbnRWYWx1ZT4gZm9udFNob3J0aGFuZFZhbHVlRm9y
U2VsZWN0aW9uUHJvcGVydGllcyhjb25zdCBGb250RGVzYwogCiBSZWZQdHI8Q1NTVmFsdWU+IENv
bXB1dGVkU3R5bGVFeHRyYWN0b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0
eUlELCBFVXBkYXRlTGF5b3V0IHVwZGF0ZUxheW91dCkKIHsKLSAgICBhdXRvKiBzdHlsZWRFbGVt
ZW50ID0gdGhpcy0+c3R5bGVkRWxlbWVudCgpOworICAgIGF1dG8qIHN0eWxlZEVsZW1lbnQgPSBt
X2VsZW1lbnQuZ2V0KCk7CiAgICAgaWYgKCFzdHlsZWRFbGVtZW50KQogICAgICAgICByZXR1cm4g
bnVsbHB0cjsKIApAQCAtMjc0NSwzMCArMjcyNSwyNSBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1
dGVkU3R5bGVFeHRyYWN0b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlE
LAogICAgIGlmICh1cGRhdGVMYXlvdXQpIHsKICAgICAgICAgRG9jdW1lbnQmIGRvY3VtZW50ID0g
bV9lbGVtZW50LT5kb2N1bWVudCgpOwogCi0gICAgICAgIGlmICh1cGRhdGVTdHlsZUlmTmVlZGVk
Rm9yUHJvcGVydHkoKnN0eWxlZEVsZW1lbnQsIHByb3BlcnR5SUQpKSB7Ci0gICAgICAgICAgICAv
LyBTdHlsZSB1cGRhdGUgbWF5IGNoYW5nZSBzdHlsZWRFbGVtZW50KCkgdG8gUHNldWRvRWxlbWVu
dCBvciBiYWNrLgotICAgICAgICAgICAgc3R5bGVkRWxlbWVudCA9IHRoaXMtPnN0eWxlZEVsZW1l
bnQoKTsKLSAgICAgICAgfQorICAgICAgICB1cGRhdGVTdHlsZUlmTmVlZGVkRm9yUHJvcGVydHko
KnN0eWxlZEVsZW1lbnQsIHByb3BlcnR5SUQpOwogICAgICAgICByZW5kZXJlciA9IHN0eWxlZFJl
bmRlcmVyKCk7CiAKICAgICAgICAgaWYgKHByb3BlcnR5SUQgPT0gQ1NTUHJvcGVydHlEaXNwbGF5
ICYmICFyZW5kZXJlciAmJiBpczxTVkdFbGVtZW50Pigqc3R5bGVkRWxlbWVudCkgJiYgIWRvd25j
YXN0PFNWR0VsZW1lbnQ+KCpzdHlsZWRFbGVtZW50KS5pc1ZhbGlkKCkpCiAgICAgICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKIAotICAgICAgICBzdHlsZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZvclBy
b3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5
SUQsIG93bmVkU3R5bGUpOworICAgICAgICBzdHlsZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZvclBy
b3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5
SUQsIG93bmVkU3R5bGUsIHJlbmRlcmVyKTsKIAogICAgICAgICAvLyBGSVhNRTogU29tZSBvZiB0
aGVzZSBjYXNlcyBjb3VsZCBiZSBuYXJyb3dlZCBkb3duIG9yIG9wdGltaXplZCBiZXR0ZXIuCiAg
ICAgICAgIGZvcmNlRnVsbExheW91dCA9IGlzTGF5b3V0RGVwZW5kZW50KHByb3BlcnR5SUQsIHN0
eWxlLCByZW5kZXJlcikKICAgICAgICAgICAgIHx8IHN0eWxlZEVsZW1lbnQtPmlzSW5TaGFkb3dU
cmVlKCkKICAgICAgICAgICAgIHx8IChkb2N1bWVudC5zdHlsZVNjb3BlKCkucmVzb2x2ZXJJZkV4
aXN0cygpICYmIGRvY3VtZW50LnN0eWxlU2NvcGUoKS5yZXNvbHZlcklmRXhpc3RzKCktPmhhc1Zp
ZXdwb3J0RGVwZW5kZW50TWVkaWFRdWVyaWVzKCkgJiYgZG9jdW1lbnQub3duZXJFbGVtZW50KCkp
OwogCi0gICAgICAgIGlmIChmb3JjZUZ1bGxMYXlvdXQpIHsKKyAgICAgICAgaWYgKGZvcmNlRnVs
bExheW91dCkKICAgICAgICAgICAgIGRvY3VtZW50LnVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdT
dHlsZXNoZWV0cygpOwotICAgICAgICAgICAgc3R5bGVkRWxlbWVudCA9IHRoaXMtPnN0eWxlZEVs
ZW1lbnQoKTsKLSAgICAgICAgfQogICAgIH0KIAogICAgIGlmICghdXBkYXRlTGF5b3V0IHx8IGZv
cmNlRnVsbExheW91dCkgewotICAgICAgICBzdHlsZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZvclBy
b3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5
SUQsIG93bmVkU3R5bGUpOworICAgICAgICBzdHlsZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZvclBy
b3BlcnR5KCpzdHlsZWRFbGVtZW50LCBtX3BzZXVkb0VsZW1lbnRTcGVjaWZpZXIsIHByb3BlcnR5
SUQsIG93bmVkU3R5bGUsIHJlbmRlcmVyKTsKICAgICAgICAgcmVuZGVyZXIgPSBzdHlsZWRSZW5k
ZXJlcigpOwogICAgIH0KIApAQCAtNDQxMCwxMSArNDM4NSwxMSBAQCBFeGNlcHRpb25Pcjx2b2lk
PiBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb246OnNldFByb3BlcnR5SW50ZXJuYWwoQ1NTUHJv
cGVydHlJRAogc2l6ZV90IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OmdldExheWVyQ291bnQoQ1NT
UHJvcGVydHlJRCBwcm9wZXJ0eSkKIHsKICAgICBBU1NFUlQocHJvcGVydHkgPT0gQ1NTUHJvcGVy
dHlCYWNrZ3JvdW5kIHx8IHByb3BlcnR5ID09IENTU1Byb3BlcnR5TWFzayk7Ci0gICAgaWYgKCFz
dHlsZWRFbGVtZW50KCkpCisgICAgaWYgKCFtX2VsZW1lbnQpCiAgICAgICAgIHJldHVybiAwOwog
CiAgICAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBvd25lZFN0eWxlOwotICAgIGNvbnN0
IFJlbmRlclN0eWxlKiBzdHlsZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZvclByb3BlcnR5KCpzdHls
ZWRFbGVtZW50KCksIG1fcHNldWRvRWxlbWVudFNwZWNpZmllciwgcHJvcGVydHksIG93bmVkU3R5
bGUpOworICAgIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSA9IGNvbXB1dGVSZW5kZXJTdHlsZUZv
clByb3BlcnR5KCptX2VsZW1lbnQsIG1fcHNldWRvRWxlbWVudFNwZWNpZmllciwgcHJvcGVydHks
IG93bmVkU3R5bGUsIG51bGxwdHIpOwogICAgIGlmICghc3R5bGUpCiAgICAgICAgIHJldHVybiAw
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9u
LmgKaW5kZXggY2JhYWRiOTFmMzhkYTJjN2FlYjk3YjExZjZlOTA1MjQ5ZTYyYTJkNy4uNzM0ODg0
NDNjNWE0YjYzOWNmOTI1NThjNzg4MWNjNTBjMzg1YTg2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaApAQCAtODEsMTQgKzgxLDcgQEAg
cHVibGljOgogICAgIHN0YXRpYyB2b2lkIGFkZFZhbHVlRm9yQW5pbWF0aW9uUHJvcGVydHlUb0xp
c3QoQ1NTVmFsdWVMaXN0JiwgQ1NTUHJvcGVydHlJRCwgY29uc3QgQW5pbWF0aW9uKik7CiAKIHBy
aXZhdGU6Ci0gICAgLy8gVGhlIHN0eWxlZCBlbGVtZW50IGlzIGVpdGhlciB0aGUgZWxlbWVudCBw
YXNzZWQgaW50bwotICAgIC8vIGNvbXB1dGVkUHJvcGVydHlWYWx1ZSwgb3IgdGhlIFBzZXVkb0Vs
ZW1lbnQgZm9yIDpiZWZvcmUgYW5kIDphZnRlciBpZgotICAgIC8vIHRoZXkgZXhpc3QuCi0gICAg
RWxlbWVudCogc3R5bGVkRWxlbWVudCgpIGNvbnN0OwotCiAgICAgLy8gVGhlIHJlbmRlcmVyIHdl
IHNob3VsZCB1c2UgZm9yIHJlc29sdmluZyBsYXlvdXQtZGVwZW5kZW50IHByb3BlcnRpZXMuCi0g
ICAgLy8gTm90ZSB0aGF0IGl0IGRpZmZlcnMgZnJvbSBzdHlsZWRFbGVtZW50KCktPnJlbmRlcmVy
KCkgaW4gdGhlIGNhc2Ugd2UgaGF2ZQotICAgIC8vIG5vIHBzZXVkby1lbGVtZW50LgogICAgIFJl
bmRlckVsZW1lbnQqIHN0eWxlZFJlbmRlcmVyKCkgY29uc3Q7CiAKICAgICBSZWZQdHI8Q1NTVmFs
dWU+IHN2Z1Byb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVh
YmxlLmNwcAppbmRleCA3NmZlZDZlOWJhYTAzOWVkOTdkZjY5ZDg2N2NiNzE2ZTc4OWI1MDMyLi5k
YTYxZDkxMmI3YjkxNTg4M2U2MWIwNWJiYjRiYzc4MGQ2OWU3ODlkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9TdHlsZWFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxl
L1N0eWxlYWJsZS5jcHAKQEAgLTk4LDEzICs5OCwxNiBAQCBSZW5kZXJFbGVtZW50KiBTdHlsZWFi
bGU6OnJlbmRlcmVyKCkgY29uc3QKICAgICAgICAgICAgIHJldHVybiBiZWZvcmVQc2V1ZG9FbGVt
ZW50LT5yZW5kZXJlcigpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFBzZXVkb0lkOjpNYXJr
ZXI6Ci0gICAgICAgIGlmIChpczxSZW5kZXJMaXN0SXRlbT4oZWxlbWVudC5yZW5kZXJlcigpKSkK
LSAgICAgICAgICAgIHJldHVybiBkb3duY2FzdDxSZW5kZXJMaXN0SXRlbT4oKmVsZW1lbnQucmVu
ZGVyZXIoKSkubWFya2VyUmVuZGVyZXIoKTsKKyAgICAgICAgaWYgKGlzPFJlbmRlckxpc3RJdGVt
PihlbGVtZW50LnJlbmRlcmVyKCkpKSB7CisgICAgICAgICAgICBhdXRvKiBtYXJrZXJSZW5kZXJl
ciA9IGRvd25jYXN0PFJlbmRlckxpc3RJdGVtPigqZWxlbWVudC5yZW5kZXJlcigpKS5tYXJrZXJS
ZW5kZXJlcigpOworICAgICAgICAgICAgaWYgKG1hcmtlclJlbmRlcmVyICYmIG1hcmtlclJlbmRl
cmVyLT5zdHlsZSgpLmhhc0NvbnRlbnQoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gbWFya2Vy
UmVuZGVyZXI7CisgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBQc2V1ZG9JZDo6
Tm9uZToKICAgICAgICAgcmV0dXJuIGVsZW1lbnQucmVuZGVyZXIoKTsKICAgICBkZWZhdWx0Ogot
ICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAg
ICAgfQogCiAgICAgcmV0dXJuIG51bGxwdHI7Cg==
</data>
<flag name="review"
          id="475062"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>