<?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>239492</bug_id>
          
          <creation_ts>2022-04-19 05:46:22 -0700</creation_ts>
          <short_desc>[LFC][Integration] Use WeakPtr for InlineContent in iterator</short_desc>
          <delta_ts>2022-04-19 13:30:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1862510</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-19 05:46:22 -0700</bug_when>
    <thetext>Simplify the logic and increase robustness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862512</commentid>
    <comment_count>1</comment_count>
      <attachid>457880</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-19 05:56:13 -0700</bug_when>
    <thetext>Created attachment 457880
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862516</commentid>
    <comment_count>2</comment_count>
      <attachid>457882</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-19 06:06:58 -0700</bug_when>
    <thetext>Created attachment 457882
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862531</commentid>
    <comment_count>3</comment_count>
      <attachid>457886</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-19 06:59:16 -0700</bug_when>
    <thetext>Created attachment 457886
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862532</commentid>
    <comment_count>4</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2022-04-19 07:00:44 -0700</bug_when>
    <thetext>rdar://88179874</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862539</commentid>
    <comment_count>5</comment_count>
      <attachid>457886</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-04-19 07:12:45 -0700</bug_when>
    <thetext>Comment on attachment 457886
Patch

nice!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862644</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-19 11:16:41 -0700</bug_when>
    <thetext>Committed r293027 (249766@main): &lt;https://commits.webkit.org/249766@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 457886.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457880</attachid>
            <date>2022-04-19 05:56:13 -0700</date>
            <delta_ts>2022-04-19 06:06:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239492-20220419155611.patch</filename>
            <type>text/plain</type>
            <size>12507</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyNzY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjEzMjkxMDFkOWMwMDZj
NDFhZDBlYmVjNGM3NGJhNzc0NjA3ZTNmMy4uZTBiNGI1NDRiMDZjYjFiMTk4ZWRjYzFmZDlmMWQ0
MjgyMTE1MzFiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIyLTA0LTE5ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlv
bl0gVXNlIFdlYWtQdHIgZm9yIElubGluZUNvbnRlbnQgaW4gaXRlcmF0b3IKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzOTQ5MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNpbXBsaWZ5IHRoZSBsb2dpYyBh
bmQgaW5jcmVhc2Ugcm9idXN0bmVzcy4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9J
bmxpbmVJdGVyYXRvckJveE1vZGVyblBhdGguaDoKKyAgICAgICAgKFdlYkNvcmU6OklubGluZUl0
ZXJhdG9yOjpCb3hNb2Rlcm5QYXRoOjphdEVuZCBjb25zdCk6CisKKyAgICAgICAgSWYgdGhlIGxh
eW91dCBnb2VzIGF3YXkgd2UgYXJlICJhdCBlbmQiLCBhdm9pZGluZyBoaXR0aW5nIG51bGwgcG9p
bnRlcnMuCisKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JMaW5l
Qm94TW9kZXJuUGF0aC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lSXRlcmF0b3I6OkxpbmVC
b3hJdGVyYXRvck1vZGVyblBhdGg6OmF0RW5kIGNvbnN0KToKKyAgICAgICAgKiBsYXlvdXQvaW50
ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50Ojp+SW5saW5lQ29udGVudCk6
CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudDo6Y2xl
YXJBbmREZXRhY2gpOiBEZWxldGVkLgorCisgICAgICAgIE5vIG5lZWQgZm9yICJkZXRhY2hlZCIg
c3RhdGUsIElubGluZUNvbnRlbnQgaXMgc2ltcGx5IGRlbGV0ZWQuCisKKyAgICAgICAgKiBsYXlv
dXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50Lmg6CisKKyAgICAg
ICAgUmVmUHRyIC0+IENhbk1ha2VXZWFrUHRyCisKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dElu
dGVncmF0aW9uOjpJbmxpbmVDb250ZW50OjpjcmVhdGUpOiBEZWxldGVkLgorICAgICAgICAqIGxh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmFkanVzdEZvclBhZ2lu
YXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6
OmVuc3VyZUlubGluZUNvbnRlbnQpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRp
b246OkxpbmVMYXlvdXQ6OmNsZWFySW5saW5lQ29udGVudCk6CisgICAgICAgICogbGF5b3V0L2lu
dGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oOgorICAgICAgICAqIGxheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246Om1ha2VBZGp1c3RlZENvbnRlbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OmFkanVzdExpbmVQb3NpdGlvbnNGb3JQYWdp
bmF0aW9uKToKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25Q
YWdpbmF0aW9uLmg6CisKIDIwMjItMDQtMTEgIFR5bGVyIFdpbGNvY2sgIDx0eWxlcl93QGFwcGxl
LmNvbT4KIAogICAgICAgICBBWDogVXBkYXRlIGlzb2xhdGVkIHRyZWUgaW4gcmVzcG9uc2UgdG8g
QVhSZWFkT25seVN0YXR1c0NoYW5nZWQsIEFYUmVxdWlyZWRTdGF0dXNDaGFuZ2VkLCBhbmQgQVhQ
cmVzc2VkU3RhdGVDaGFuZ2VkIG5vdGlmaWNhdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvckJveE1vZGVyblBhdGguaCBiL1Nv
dXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvckJveE1vZGVyblBh
dGguaAppbmRleCBkZmIwYWZlYjJhNjc2ZjllNGYzOGY5MWY2NmNlNmZhNjJjZGY0OGE5Li5jNTBj
Y2RmNGRlYjVhNTcyNTAyOWI2ZTRiYmM4ZDc5MjU2ZmEyMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JCb3hNb2Rlcm5QYXRoLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0lubGluZUl0ZXJhdG9yQm94
TW9kZXJuUGF0aC5oCkBAIC0yMDQsNyArMjA0LDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBvcGVy
YXRvcj09KGNvbnN0IEJveE1vZGVyblBhdGgmIG90aGVyKSBjb25zdCB7IHJldHVybiBtX2lubGlu
ZUNvbnRlbnQgPT0gb3RoZXIubV9pbmxpbmVDb250ZW50ICYmIG1fYm94SW5kZXggPT0gb3RoZXIu
bV9ib3hJbmRleDsgfQogCi0gICAgYm9vbCBhdEVuZCgpIGNvbnN0IHsgcmV0dXJuIG1fYm94SW5k
ZXggPT0gYm94ZXMoKS5zaXplKCk7IH0KKyAgICBib29sIGF0RW5kKCkgY29uc3QgeyByZXR1cm4g
IW1faW5saW5lQ29udGVudCB8fCBtX2JveEluZGV4ID09IGJveGVzKCkuc2l6ZSgpOyB9CiAgICAg
Y29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiBib3goKSBjb25zdCB7IHJldHVybiBib3hlcygpW21f
Ym94SW5kZXhdOyB9CiAgICAgYXV0byYgaW5saW5lQ29udGVudCgpIGNvbnN0IHsgcmV0dXJuICpt
X2lubGluZUNvbnRlbnQ7IH0KIApAQCAtMjY5LDcgKzI2OSw3IEBAIHByaXZhdGU6CiAgICAgY29u
c3QgUmVuZGVyVGV4dCYgcmVuZGVyVGV4dCgpIGNvbnN0IHsgcmV0dXJuIGRvd25jYXN0PFJlbmRl
clRleHQ+KHJlbmRlcmVyKCkpOyB9CiAgICAgVGV4dERpcmVjdGlvbiBkaXJlY3Rpb24oKSBjb25z
dCB7IHJldHVybiBiaWRpTGV2ZWwoKSAlIDIgPyBUZXh0RGlyZWN0aW9uOjpSVEwgOiBUZXh0RGly
ZWN0aW9uOjpMVFI7IH0KIAotICAgIFJlZlB0cjxjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5s
aW5lQ29udGVudD4gbV9pbmxpbmVDb250ZW50OworICAgIFdlYWtQdHI8Y29uc3QgTGF5b3V0SW50
ZWdyYXRpb246OklubGluZUNvbnRlbnQ+IG1faW5saW5lQ29udGVudDsKICAgICBzaXplX3QgbV9i
b3hJbmRleCB7IDAgfTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmggYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvaW50ZWdyYXRpb24vSW5saW5lSXRlcmF0b3JMaW5lQm94TW9kZXJuUGF0aC5o
CmluZGV4IGFmYjJjMGQwNzZmOTBmMjkyMmY4MDRmYzcyYWQyNjc0MDIzZGFmYTEuLmQ3MTQ5MTEy
ZTI5NjRlOTJlNGUwZThhODA1N2I4OGJjY2I1ZDlmMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9JbmxpbmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0lubGluZUl0ZXJhdG9yTGlu
ZUJveE1vZGVyblBhdGguaApAQCAtOTEsNyArOTEsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIG9w
ZXJhdG9yPT0oY29uc3QgTGluZUJveEl0ZXJhdG9yTW9kZXJuUGF0aCYgb3RoZXIpIGNvbnN0IHsg
cmV0dXJuIG1faW5saW5lQ29udGVudCA9PSBvdGhlci5tX2lubGluZUNvbnRlbnQgJiYgbV9saW5l
SW5kZXggPT0gb3RoZXIubV9saW5lSW5kZXg7IH0KIAotICAgIGJvb2wgYXRFbmQoKSBjb25zdCB7
IHJldHVybiBtX2xpbmVJbmRleCA9PSBsaW5lcygpLnNpemUoKTsgfQorICAgIGJvb2wgYXRFbmQo
KSBjb25zdCB7IHJldHVybiAhbV9pbmxpbmVDb250ZW50IHx8IG1fbGluZUluZGV4ID09IGxpbmVz
KCkuc2l6ZSgpOyB9CiAKICAgICBCb3hNb2Rlcm5QYXRoIGZpcnN0TGVhZkJveCgpIGNvbnN0CiAg
ICAgewpAQCAtMTIwLDcgKzEyMCw3IEBAIHByaXZhdGU6CiAgICAgY29uc3QgTGF5b3V0SW50ZWdy
YXRpb246OklubGluZUNvbnRlbnQ6OkxpbmVzJiBsaW5lcygpIGNvbnN0IHsgcmV0dXJuIG1faW5s
aW5lQ29udGVudC0+bGluZXM7IH0KICAgICBjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6TGluZSYg
bGluZSgpIGNvbnN0IHsgcmV0dXJuIGxpbmVzKClbbV9saW5lSW5kZXhdOyB9CiAKLSAgICBSZWZQ
dHI8Y29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQ+IG1faW5saW5lQ29udGVu
dDsKKyAgICBXZWFrUHRyPGNvbnN0IExheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50PiBt
X2lubGluZUNvbnRlbnQ7CiAgICAgc2l6ZV90IG1fbGluZUluZGV4IHsgMCB9OwogfTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0
aW9uSW5saW5lQ29udGVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24v
TGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcAppbmRleCA1ZDQzMjU2OWViNDQ4NmFm
NjExN2Y2YjQxOTIzN2ZiN2E4ZTU5OGI4Li5iNDRjOWRmNDU2NGEzMWRmNWZmNTM4NmZjMWU1YWNk
OWIzNDZkNmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24v
TGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcApAQCAt
ODcsMTAgKzg3LDggQEAgSXRlcmF0b3JSYW5nZTxjb25zdCBJbmxpbmVEaXNwbGF5OjpCb3gqPiBJ
bmxpbmVDb250ZW50Ojpib3hlc0ZvclJlY3QoY29uc3QgTGF5b3UKIAogSW5saW5lQ29udGVudDo6
fklubGluZUNvbnRlbnQoKQogewotICAgIGlmIChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFy
ZWRGZWF0dXJlcygpLmxheW91dEZvcm1hdHRpbmdDb250ZXh0SW50ZWdyYXRpb25FbmFibGVkKCkp
IHsKLSAgICAgICAgZm9yIChhdXRvJiBib3ggOiBib3hlcykKLSAgICAgICAgICAgIFRleHRQYWlu
dGVyOjpyZW1vdmVHbHlwaERpc3BsYXlMaXN0KGJveCk7Ci0gICAgfQorICAgIGZvciAoYXV0byYg
Ym94IDogYm94ZXMpCisgICAgICAgIFRleHRQYWludGVyOjpyZW1vdmVHbHlwaERpc3BsYXlMaXN0
KGJveCk7CiB9CiAKIGNvbnN0IFJlbmRlck9iamVjdCYgSW5saW5lQ29udGVudDo6cmVuZGVyZXJG
b3JMYXlvdXRCb3goY29uc3QgTGF5b3V0OjpCb3gmIGxheW91dEJveCkgY29uc3QKQEAgLTE3Mywx
NyArMTcxLDYgQEAgY29uc3QgVmVjdG9yPHNpemVfdD4mIElubGluZUNvbnRlbnQ6Om5vblJvb3RJ
bmxpbmVCb3hJbmRleGVzRm9yTGF5b3V0Qm94KGNvbnN0IEwKICAgICByZXR1cm4gaXQtPnZhbHVl
OwogfQogCi12b2lkIElubGluZUNvbnRlbnQ6OmNsZWFyQW5kRGV0YWNoKCkKLXsKLSAgICBmb3Ig
KGF1dG8mIGJveCA6IGJveGVzKQotICAgICAgICBUZXh0UGFpbnRlcjo6cmVtb3ZlR2x5cGhEaXNw
bGF5TGlzdChib3gpOwotCi0gICAgcmVsZWFzZUNhY2hlcygpOwotICAgIGJveGVzLmNsZWFyKCk7
Ci0gICAgbGluZXMuY2xlYXIoKTsKLSAgICBtX2xpbmVMYXlvdXQgPSBudWxscHRyOwotfQotCiB2
b2lkIElubGluZUNvbnRlbnQ6OnJlbGVhc2VDYWNoZXMoKQogewogICAgIG1fZmlyc3RCb3hJbmRl
eENhY2hlID0geyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5oIGIvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5oCmluZGV4IDc5
ZGRiOTdlNjlmMTliOGRhNmI2YjI4ZDU3YTBmMTQ0YTc1ZjVmNDEuLmY4OWIzNGEwYmI4OWFhYjdk
YTAwNmI3YjlmMDZmY2M1NzhiYzBmNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91
dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250
ZW50LmgKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1
ZGUgPHd0Zi9JdGVyYXRvclJhbmdlLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1
ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNTAsOCArNTEs
MTAgQEAgbmFtZXNwYWNlIExheW91dEludGVncmF0aW9uIHsKIAogY2xhc3MgTGluZUxheW91dDsK
IAotc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxJbmxpbmVDb250ZW50
PiB7Ci0gICAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBjcmVhdGUoY29uc3QgTGluZUxheW91
dCYgbGluZUxheW91dCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmxpbmVDb250ZW50KGxpbmVM
YXlvdXQpKTsgfQorc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8
SW5saW5lQ29udGVudD4geworICAgIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FMTE9DQVRFRDsKKwor
ICAgIElubGluZUNvbnRlbnQoY29uc3QgTGluZUxheW91dCYpOwogICAgIH5JbmxpbmVDb250ZW50
KCk7CiAKICAgICB1c2luZyBCb3hlcyA9IFZlY3RvcjxJbmxpbmVEaXNwbGF5OjpCb3g+OwpAQCAt
ODYsMTIgKzg5LDkgQEAgc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxJ
bmxpbmVDb250ZW50PiB7CiAgICAgc3RkOjpvcHRpb25hbDxzaXplX3Q+IGZpcnN0Qm94SW5kZXhG
b3JMYXlvdXRCb3goY29uc3QgTGF5b3V0OjpCb3gmKSBjb25zdDsKICAgICBjb25zdCBWZWN0b3I8
c2l6ZV90PiYgbm9uUm9vdElubGluZUJveEluZGV4ZXNGb3JMYXlvdXRCb3goY29uc3QgTGF5b3V0
OjpCb3gmKSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJBbmREZXRhY2goKTsKICAgICB2b2lkIHJl
bGVhc2VDYWNoZXMoKTsKIAogcHJpdmF0ZToKLSAgICBJbmxpbmVDb250ZW50KGNvbnN0IExpbmVM
YXlvdXQmKTsKLQogICAgIENoZWNrZWRQdHI8Y29uc3QgTGluZUxheW91dD4gbV9saW5lTGF5b3V0
OwogCiAgICAgdXNpbmcgRmlyc3RCb3hJbmRleENhY2hlID0gSGFzaE1hcDxDaGVja2VkUmVmPGNv
bnN0IExheW91dDo6Qm94Piwgc2l6ZV90PjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5j
cHAKaW5kZXggZjRkNTgwOGQzZjBhNDM2MWVjYTk2NzU3YmZhMjM2N2NiMTE2MGViMS4uZDFmN2Ji
OTlkNDBlMTg0ZmYyZTNjMmFhYWE0N2EzMGMyYzE3NTRjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0aW9u
TGluZUxheW91dC5jcHAKQEAgLTU1MSw3ICs1NTEsNyBAQCB2b2lkIExpbmVMYXlvdXQ6OmFkanVz
dEZvclBhZ2luYXRpb24oKQogICAgICAgICByZXR1cm47CiAKICAgICBhdXRvIHBhZ2luZWRJbmxp
bmVDb250ZW50ID0gYWRqdXN0TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRpb24oKm1faW5saW5lQ29u
dGVudCwgZmxvdygpKTsKLSAgICBpZiAocGFnaW5lZElubGluZUNvbnRlbnQucHRyKCkgPT0gbV9p
bmxpbmVDb250ZW50KSB7CisgICAgaWYgKCFwYWdpbmVkSW5saW5lQ29udGVudCkgewogICAgICAg
ICBtX2lzUGFnaW5hdGVkQ29udGVudCA9IGZhbHNlOwogICAgICAgICByZXR1cm47CiAgICAgfQpA
QCAtNTc0LDcgKzU3NCw3IEBAIHZvaWQgTGluZUxheW91dDo6Y29sbGVjdE92ZXJmbG93KCkKIElu
bGluZUNvbnRlbnQmIExpbmVMYXlvdXQ6OmVuc3VyZUlubGluZUNvbnRlbnQoKQogewogICAgIGlm
ICghbV9pbmxpbmVDb250ZW50KQotICAgICAgICBtX2lubGluZUNvbnRlbnQgPSBJbmxpbmVDb250
ZW50OjpjcmVhdGUoKnRoaXMpOworICAgICAgICBtX2lubGluZUNvbnRlbnQgPSBtYWtlVW5pcXVl
PElubGluZUNvbnRlbnQ+KCp0aGlzKTsKICAgICByZXR1cm4gKm1faW5saW5lQ29udGVudDsKIH0K
IApAQCAtODg3LDcgKzg4Nyw2IEBAIHZvaWQgTGluZUxheW91dDo6Y2xlYXJJbmxpbmVDb250ZW50
KCkKIHsKICAgICBpZiAoIW1faW5saW5lQ29udGVudCkKICAgICAgICAgcmV0dXJuOwotICAgIG1f
aW5saW5lQ29udGVudC0+Y2xlYXJBbmREZXRhY2goKTsKICAgICBtX2lubGluZUNvbnRlbnQgPSBu
dWxscHRyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmggYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW50ZWdyYXRpb24vTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmgKaW5kZXggMzExNDE5Y2Yy
NmU1YjgxZGI3NzI2ZjQyYzJjMGNhMDYyYWFmZDI4OS4uYWU2MWMxMTQ5ODhmZjJiYjExYmY1Yjkz
YmQ2YTFmOTk4NDBjMzBhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaApAQCAtMTQ0
LDcgKzE0NCw3IEBAIHByaXZhdGU6CiAgICAgTGF5b3V0OjpJbmxpbmVGb3JtYXR0aW5nU3RhdGUm
IG1faW5saW5lRm9ybWF0dGluZ1N0YXRlOwogICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBiZSBw
YXJ0IG9mIExheW91dFN0YXRlLgogICAgIHN0ZDo6dW5pcXVlX3B0cjxMYXlvdXQ6OklubGluZURh
bWFnZT4gbV9saW5lRGFtYWdlOwotICAgIFJlZlB0cjxJbmxpbmVDb250ZW50PiBtX2lubGluZUNv
bnRlbnQ7CisgICAgc3RkOjp1bmlxdWVfcHRyPElubGluZUNvbnRlbnQ+IG1faW5saW5lQ29udGVu
dDsKICAgICBib29sIG1faXNQYWdpbmF0ZWRDb250ZW50IHsgZmFsc2UgfTsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRlZ3JhdGlv
blBhZ2luYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91
dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKaW5kZXggNjQwNWYwNzE1MDhkMTI3ZmRlZTA5MTE3
NDIwNzJlY2QwZjFkMGNiOC4uYTYxMjMxMTAzYzIwMzM0NDhjZmFjMDE4ODg1MTMxZmU2ZTU0YWVi
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dElu
dGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAKQEAgLTExNyw3ICsxMTcsNyBA
QCBzdGF0aWMgdm9pZCB1cGRhdGVNaW5pbXVtUGFnZUhlaWdodChSZW5kZXJCbG9ja0Zsb3cmIGZs
b3csIGNvbnN0IElubGluZUNvbnRlbnQmCiAgICAgZmxvdy51cGRhdGVNaW5pbXVtUGFnZUhlaWdo
dCgwLCBMYXlvdXRVbml0KGlubGluZUNvbnRlbnQubGluZXNbbWluaW11bUxpbmVDb3VudCAtIDFd
LmxpbmVCb3hCb3R0b20oKSkpOwogfQogCi1zdGF0aWMgUmVmPElubGluZUNvbnRlbnQ+IG1ha2VB
ZGp1c3RlZENvbnRlbnQoY29uc3QgSW5saW5lQ29udGVudCYgaW5saW5lQ29udGVudCwgVmVjdG9y
PGZsb2F0PiBhZGp1c3RtZW50cykKK3N0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lQ29udGVu
dD4gbWFrZUFkanVzdGVkQ29udGVudChjb25zdCBJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50
LCBWZWN0b3I8ZmxvYXQ+IGFkanVzdG1lbnRzKQogewogICAgIGF1dG8gbW92ZVZlcnRpY2FsbHkg
PSBbXShGbG9hdFJlY3QgcmVjdCwgZmxvYXQgb2Zmc2V0KSB7CiAgICAgICAgIHJlY3QubW92ZShG
bG9hdFNpemUoMCwgb2Zmc2V0KSk7CkBAIC0xNDksNyArMTQ5LDcgQEAgc3RhdGljIFJlZjxJbmxp
bmVDb250ZW50PiBtYWtlQWRqdXN0ZWRDb250ZW50KGNvbnN0IElubGluZUNvbnRlbnQmIGlubGlu
ZUNvbnRlbnQKICAgICAgICAgcmV0dXJuIGFkanVzdGVkQm94OwogICAgIH07CiAKLSAgICBhdXRv
IGFkanVzdGVkQ29udGVudCA9IElubGluZUNvbnRlbnQ6OmNyZWF0ZShpbmxpbmVDb250ZW50Lmxp
bmVMYXlvdXQoKSk7CisgICAgYXV0byBhZGp1c3RlZENvbnRlbnQgPSBtYWtlVW5pcXVlPElubGlu
ZUNvbnRlbnQ+KGlubGluZUNvbnRlbnQubGluZUxheW91dCgpKTsKIAogICAgIGZvciAoc2l6ZV90
IGxpbmVJbmRleCA9IDA7IGxpbmVJbmRleCA8IGlubGluZUNvbnRlbnQubGluZXMuc2l6ZSgpOyAr
K2xpbmVJbmRleCkKICAgICAgICAgYWRqdXN0ZWRDb250ZW50LT5saW5lcy5hcHBlbmQoYWRqdXN0
ZWRMaW5lKGlubGluZUNvbnRlbnQubGluZXNbbGluZUluZGV4XSwgYWRqdXN0bWVudHNbbGluZUlu
ZGV4XSkpOwpAQCAtMTYwLDE0ICsxNjAsMTQgQEAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBt
YWtlQWRqdXN0ZWRDb250ZW50KGNvbnN0IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQKICAg
ICByZXR1cm4gYWRqdXN0ZWRDb250ZW50OwogfQogCi1SZWY8SW5saW5lQ29udGVudD4gYWRqdXN0
TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRpb24oSW5saW5lQ29udGVudCYgaW5saW5lQ29udGVudCwg
UmVuZGVyQmxvY2tGbG93JiBmbG93KQorc3RkOjp1bmlxdWVfcHRyPElubGluZUNvbnRlbnQ+IGFk
anVzdExpbmVQb3NpdGlvbnNGb3JQYWdpbmF0aW9uKElubGluZUNvbnRlbnQmIGlubGluZUNvbnRl
bnQsIFJlbmRlckJsb2NrRmxvdyYgZmxvdykKIHsKICAgICBWZWN0b3I8U3RydXQ+IHN0cnV0czsK
ICAgICBhdXRvIGxpbmVDb3VudCA9IGlubGluZUNvbnRlbnQubGluZXMuc2l6ZSgpOwogICAgIHVw
ZGF0ZU1pbmltdW1QYWdlSGVpZ2h0KGZsb3csIGlubGluZUNvbnRlbnQsIGxpbmVDb3VudCk7CiAg
ICAgLy8gRmlyc3QgcGFzcyB3aXRoIG5vIHBhZ2luYXRpb24gb2Zmc2V0PwogICAgIGlmICghZmxv
dy5wYWdlTG9naWNhbEhlaWdodEZvck9mZnNldCgwKSkKLSAgICAgICAgcmV0dXJuIGlubGluZUNv
bnRlbnQ7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgYXV0byB3aWRvd3MgPSBmbG93
LnN0eWxlKCkuaGFzQXV0b1dpZG93cygpID8gMSA6IHN0ZDo6bWF4PGludD4oZmxvdy5zdHlsZSgp
LndpZG93cygpLCAxKTsKICAgICBhdXRvIG9ycGhhbnMgPSBmbG93LnN0eWxlKCkuaGFzQXV0b09y
cGhhbnMoKSA/IDEgOiBzdGQ6Om1heDxpbnQ+KGZsb3cuc3R5bGUoKS5vcnBoYW5zKCksIDEpOwpA
QCAtMTkwLDcgKzE5MCw3IEBAIFJlZjxJbmxpbmVDb250ZW50PiBhZGp1c3RMaW5lUG9zaXRpb25z
Rm9yUGFnaW5hdGlvbihJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50CiAgICAgfQogCiAgICAg
aWYgKHN0cnV0cy5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBpbmxpbmVDb250ZW50OworICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIGF1dG8gYWRqdXN0bWVudHMgPSBWZWN0b3I8Zmxv
YXQ+KGxpbmVDb3VudCwgMCk7CiAgICAgZm9yIChhdXRvJiBzdHJ1dCA6IHN0cnV0cykgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91dEludGVncmF0
aW9uUGFnaW5hdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL0xheW91
dEludGVncmF0aW9uUGFnaW5hdGlvbi5oCmluZGV4IDgzYzJjZjNhZDQ5MjhiNWI2YTJlMGZjMzQw
Y2FmZjA5YTNhOTU3MWIuLmIyNWM5MTk1MWNlMDY3Y2U1ZGNmODAzNGRkMzNjY2EyMGMzOTdmODUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9MYXlvdXRJbnRl
Z3JhdGlvblBhZ2luYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9uLmgKQEAgLTM1LDcgKzM1LDcgQEAgY2xhc3Mg
UmVuZGVyQmxvY2tGbG93OwogCiBuYW1lc3BhY2UgTGF5b3V0SW50ZWdyYXRpb24gewogICAgIAot
UmVmPElubGluZUNvbnRlbnQ+IGFkanVzdExpbmVQb3NpdGlvbnNGb3JQYWdpbmF0aW9uKElubGlu
ZUNvbnRlbnQmLCBSZW5kZXJCbG9ja0Zsb3cmKTsKK3N0ZDo6dW5pcXVlX3B0cjxJbmxpbmVDb250
ZW50PiBhZGp1c3RMaW5lUG9zaXRpb25zRm9yUGFnaW5hdGlvbihJbmxpbmVDb250ZW50JiwgUmVu
ZGVyQmxvY2tGbG93Jik7CiAKIH0KIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457882</attachid>
            <date>2022-04-19 06:06:58 -0700</date>
            <delta_ts>2022-04-19 06:59:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239492-20220419160656.patch</filename>
            <type>text/plain</type>
            <size>12727</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkzMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTE3ZmRiMTEwODlkNjhh
MTJhNjJjMjQ2YTUxYzQ0NzA5Yzk0YjNjYS4uZTJkOTQxYjIwZDM0MDM5OWE5MGM1YjRlNzNmYTA4
ZDFlMzkxNDUxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIyLTA0LTE5ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlv
bl0gVXNlIFdlYWtQdHIgZm9yIElubGluZUNvbnRlbnQgaW4gaXRlcmF0b3IKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzOTQ5MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNpbXBsaWZ5IHRoZSBsb2dpYyBh
bmQgaW5jcmVhc2Ugcm9idXN0bmVzcy4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9p
bmxpbmUvSW5saW5lSXRlcmF0b3JCb3hNb2Rlcm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpJ
bmxpbmVJdGVyYXRvcjo6Qm94TW9kZXJuUGF0aDo6YXRFbmQgY29uc3QpOgorCisgICAgICAgIElm
IHRoZSBsYXlvdXQgZ29lcyBhd2F5IHdlIGFyZSAiYXQgZW5kIiwgYXZvaWRpbmcgaGl0dGluZyBu
dWxsIHBvaW50ZXJzLgorCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9Jbmxp
bmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVJ
dGVyYXRvcjo6TGluZUJveEl0ZXJhdG9yTW9kZXJuUGF0aDo6YXRFbmQgY29uc3QpOgorICAgICAg
ICAqIGxheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250
ZW50Ojp+SW5saW5lQ29udGVudCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlv
bjo6SW5saW5lQ29udGVudDo6Y2xlYXJBbmREZXRhY2gpOiBEZWxldGVkLgorCisgICAgICAgIE5v
IG5lZWQgZm9yICJkZXRhY2hlZCIgc3RhdGUsIElubGluZUNvbnRlbnQgaXMgc2ltcGx5IGRlbGV0
ZWQuCisKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0
aW9uSW5saW5lQ29udGVudC5oOgorCisgICAgICAgIFJlZkNvdW50ZWQgLT4gQ2FuTWFrZVdlYWtQ
dHIKKworICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQ6
OmNyZWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmFkanVzdEZvclBhZ2luYXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmVuc3VyZUlubGluZUNvbnRl
bnQpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmNs
ZWFySW5saW5lQ29udGVudCk6CisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaDoKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRp
b24vaW5saW5lL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6bWFrZUFkanVzdGVkQ29udGVudCk6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6YWRqdXN0TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRp
b24pOgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRp
b25QYWdpbmF0aW9uLmg6CisKIDIwMjItMDQtMTYgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFu
ZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHU3RyZWFtZXJdW1dlYlJUQ10gTWlub3IgY2xlYW51
cCBpbiBJbmNvbWluZ1NvdXJjZUdTdHJlYW1lcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9JbmxpbmVJdGVyYXRvckJveE1vZGVyblBhdGguaCBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvSW5saW5lSXRlcmF0b3JC
b3hNb2Rlcm5QYXRoLmgKaW5kZXggZGZiMGFmZWIyYTY3NmY5ZTRmMzhmOTFmNjZjZTZmYTYyY2Rm
NDhhOS4uYzUwY2NkZjRkZWI1YTU3MjUwMjliNmU0YmJjOGQ3OTI1NmZhMjBhMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9JbmxpbmVJdGVyYXRv
ckJveE1vZGVyblBhdGguaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24v
aW5saW5lL0lubGluZUl0ZXJhdG9yQm94TW9kZXJuUGF0aC5oCkBAIC0yMDQsNyArMjA0LDcgQEAg
cHVibGljOgogCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEJveE1vZGVyblBhdGgmIG90aGVy
KSBjb25zdCB7IHJldHVybiBtX2lubGluZUNvbnRlbnQgPT0gb3RoZXIubV9pbmxpbmVDb250ZW50
ICYmIG1fYm94SW5kZXggPT0gb3RoZXIubV9ib3hJbmRleDsgfQogCi0gICAgYm9vbCBhdEVuZCgp
IGNvbnN0IHsgcmV0dXJuIG1fYm94SW5kZXggPT0gYm94ZXMoKS5zaXplKCk7IH0KKyAgICBib29s
IGF0RW5kKCkgY29uc3QgeyByZXR1cm4gIW1faW5saW5lQ29udGVudCB8fCBtX2JveEluZGV4ID09
IGJveGVzKCkuc2l6ZSgpOyB9CiAgICAgY29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiBib3goKSBj
b25zdCB7IHJldHVybiBib3hlcygpW21fYm94SW5kZXhdOyB9CiAgICAgYXV0byYgaW5saW5lQ29u
dGVudCgpIGNvbnN0IHsgcmV0dXJuICptX2lubGluZUNvbnRlbnQ7IH0KIApAQCAtMjY5LDcgKzI2
OSw3IEBAIHByaXZhdGU6CiAgICAgY29uc3QgUmVuZGVyVGV4dCYgcmVuZGVyVGV4dCgpIGNvbnN0
IHsgcmV0dXJuIGRvd25jYXN0PFJlbmRlclRleHQ+KHJlbmRlcmVyKCkpOyB9CiAgICAgVGV4dERp
cmVjdGlvbiBkaXJlY3Rpb24oKSBjb25zdCB7IHJldHVybiBiaWRpTGV2ZWwoKSAlIDIgPyBUZXh0
RGlyZWN0aW9uOjpSVEwgOiBUZXh0RGlyZWN0aW9uOjpMVFI7IH0KIAotICAgIFJlZlB0cjxjb25z
dCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudD4gbV9pbmxpbmVDb250ZW50OworICAg
IFdlYWtQdHI8Y29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQ+IG1faW5saW5l
Q29udGVudDsKICAgICBzaXplX3QgbV9ib3hJbmRleCB7IDAgfTsKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvSW5saW5lSXRlcmF0b3JM
aW5lQm94TW9kZXJuUGF0aC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lu
bGluZS9JbmxpbmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmgKaW5kZXggYWZiMmMwZDA3NmY5
MGYyOTIyZjgwNGZjNzJhZDI2NzQwMjNkYWZhMS4uZDcxNDkxMTJlMjk2NGU5MmU0ZTBlOGE4MDU3
Yjg4YmNjYjVkOWYyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL2lubGluZS9JbmxpbmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9JbmxpbmVJdGVyYXRvckxpbmVCb3hN
b2Rlcm5QYXRoLmgKQEAgLTkxLDcgKzkxLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IExpbmVCb3hJdGVyYXRvck1vZGVyblBhdGgmIG90aGVyKSBjb25zdCB7IHJldHVy
biBtX2lubGluZUNvbnRlbnQgPT0gb3RoZXIubV9pbmxpbmVDb250ZW50ICYmIG1fbGluZUluZGV4
ID09IG90aGVyLm1fbGluZUluZGV4OyB9CiAKLSAgICBib29sIGF0RW5kKCkgY29uc3QgeyByZXR1
cm4gbV9saW5lSW5kZXggPT0gbGluZXMoKS5zaXplKCk7IH0KKyAgICBib29sIGF0RW5kKCkgY29u
c3QgeyByZXR1cm4gIW1faW5saW5lQ29udGVudCB8fCBtX2xpbmVJbmRleCA9PSBsaW5lcygpLnNp
emUoKTsgfQogCiAgICAgQm94TW9kZXJuUGF0aCBmaXJzdExlYWZCb3goKSBjb25zdAogICAgIHsK
QEAgLTEyMCw3ICsxMjAsNyBAQCBwcml2YXRlOgogICAgIGNvbnN0IExheW91dEludGVncmF0aW9u
OjpJbmxpbmVDb250ZW50OjpMaW5lcyYgbGluZXMoKSBjb25zdCB7IHJldHVybiBtX2lubGluZUNv
bnRlbnQtPmxpbmVzOyB9CiAgICAgY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OkxpbmUmIGxpbmUo
KSBjb25zdCB7IHJldHVybiBsaW5lcygpW21fbGluZUluZGV4XTsgfQogCi0gICAgUmVmUHRyPGNv
bnN0IExheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50PiBtX2lubGluZUNvbnRlbnQ7Cisg
ICAgV2Vha1B0cjxjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudD4gbV9pbmxp
bmVDb250ZW50OwogICAgIHNpemVfdCBtX2xpbmVJbmRleCB7IDAgfTsKIH07CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdy
YXRpb25JbmxpbmVDb250ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcAppbmRleCA1ZDQzMjU2
OWViNDQ4NmFmNjExN2Y2YjQxOTIzN2ZiN2E4ZTU5OGI4Li5iNDRjOWRmNDU2NGEzMWRmNWZmNTM4
NmZjMWU1YWNkOWIzNDZkNmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50
ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlv
bklubGluZUNvbnRlbnQuY3BwCkBAIC04NywxMCArODcsOCBAQCBJdGVyYXRvclJhbmdlPGNvbnN0
IElubGluZURpc3BsYXk6OkJveCo+IElubGluZUNvbnRlbnQ6OmJveGVzRm9yUmVjdChjb25zdCBM
YXlvdQogCiBJbmxpbmVDb250ZW50Ojp+SW5saW5lQ29udGVudCgpCiB7Ci0gICAgaWYgKFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkubGF5b3V0Rm9ybWF0dGluZ0NvbnRl
eHRJbnRlZ3JhdGlvbkVuYWJsZWQoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGJveCA6IGJveGVz
KQotICAgICAgICAgICAgVGV4dFBhaW50ZXI6OnJlbW92ZUdseXBoRGlzcGxheUxpc3QoYm94KTsK
LSAgICB9CisgICAgZm9yIChhdXRvJiBib3ggOiBib3hlcykKKyAgICAgICAgVGV4dFBhaW50ZXI6
OnJlbW92ZUdseXBoRGlzcGxheUxpc3QoYm94KTsKIH0KIAogY29uc3QgUmVuZGVyT2JqZWN0JiBJ
bmxpbmVDb250ZW50OjpyZW5kZXJlckZvckxheW91dEJveChjb25zdCBMYXlvdXQ6OkJveCYgbGF5
b3V0Qm94KSBjb25zdApAQCAtMTczLDE3ICsxNzEsNiBAQCBjb25zdCBWZWN0b3I8c2l6ZV90PiYg
SW5saW5lQ29udGVudDo6bm9uUm9vdElubGluZUJveEluZGV4ZXNGb3JMYXlvdXRCb3goY29uc3Qg
TAogICAgIHJldHVybiBpdC0+dmFsdWU7CiB9CiAKLXZvaWQgSW5saW5lQ29udGVudDo6Y2xlYXJB
bmREZXRhY2goKQotewotICAgIGZvciAoYXV0byYgYm94IDogYm94ZXMpCi0gICAgICAgIFRleHRQ
YWludGVyOjpyZW1vdmVHbHlwaERpc3BsYXlMaXN0KGJveCk7Ci0KLSAgICByZWxlYXNlQ2FjaGVz
KCk7Ci0gICAgYm94ZXMuY2xlYXIoKTsKLSAgICBsaW5lcy5jbGVhcigpOwotICAgIG1fbGluZUxh
eW91dCA9IG51bGxwdHI7Ci19Ci0KIHZvaWQgSW5saW5lQ29udGVudDo6cmVsZWFzZUNhY2hlcygp
CiB7CiAgICAgbV9maXJzdEJveEluZGV4Q2FjaGUgPSB7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uSW5saW5l
Q29udGVudC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnQuaAppbmRleCA3OWRkYjk3ZTY5ZjE5YjhkYTZiNmIy
OGQ1N2EwZjE0NGE3NWY1ZjQxLi5mODliMzRhMGJiODlhYWI3ZGEwMDZiN2I5ZjA2ZmNjNTc4YmMw
ZjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5l
L0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmgK
QEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0
Zi9JdGVyYXRvclJhbmdlLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0
Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNTAsOCArNTEsMTAgQEAg
bmFtZXNwYWNlIExheW91dEludGVncmF0aW9uIHsKIAogY2xhc3MgTGluZUxheW91dDsKIAotc3Ry
dWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxJbmxpbmVDb250ZW50PiB7Ci0g
ICAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBjcmVhdGUoY29uc3QgTGluZUxheW91dCYgbGlu
ZUxheW91dCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmxpbmVDb250ZW50KGxpbmVMYXlvdXQp
KTsgfQorc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8SW5saW5l
Q29udGVudD4geworICAgIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FMTE9DQVRFRDsKKworICAgIElu
bGluZUNvbnRlbnQoY29uc3QgTGluZUxheW91dCYpOwogICAgIH5JbmxpbmVDb250ZW50KCk7CiAK
ICAgICB1c2luZyBCb3hlcyA9IFZlY3RvcjxJbmxpbmVEaXNwbGF5OjpCb3g+OwpAQCAtODYsMTIg
Kzg5LDkgQEAgc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxJbmxpbmVD
b250ZW50PiB7CiAgICAgc3RkOjpvcHRpb25hbDxzaXplX3Q+IGZpcnN0Qm94SW5kZXhGb3JMYXlv
dXRCb3goY29uc3QgTGF5b3V0OjpCb3gmKSBjb25zdDsKICAgICBjb25zdCBWZWN0b3I8c2l6ZV90
PiYgbm9uUm9vdElubGluZUJveEluZGV4ZXNGb3JMYXlvdXRCb3goY29uc3QgTGF5b3V0OjpCb3gm
KSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJBbmREZXRhY2goKTsKICAgICB2b2lkIHJlbGVhc2VD
YWNoZXMoKTsKIAogcHJpdmF0ZToKLSAgICBJbmxpbmVDb250ZW50KGNvbnN0IExpbmVMYXlvdXQm
KTsKLQogICAgIENoZWNrZWRQdHI8Y29uc3QgTGluZUxheW91dD4gbV9saW5lTGF5b3V0OwogCiAg
ICAgdXNpbmcgRmlyc3RCb3hJbmRleENhY2hlID0gSGFzaE1hcDxDaGVja2VkUmVmPGNvbnN0IExh
eW91dDo6Qm94Piwgc2l6ZV90PjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25MaW5l
TGF5b3V0LmNwcAppbmRleCBmNGQ1ODA4ZDNmMGE0MzYxZWNhOTY3NTdiZmEyMzY3Y2IxMTYwZWIx
Li5kMWY3YmI5OWQ0MGUxODRmZjJlM2MyYWFhYTQ3YTMwYzJjMTc1NGM0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9u
TGluZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lu
bGluZS9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBAIC01NTEsNyArNTUxLDcgQEAg
dm9pZCBMaW5lTGF5b3V0OjphZGp1c3RGb3JQYWdpbmF0aW9uKCkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgYXV0byBwYWdpbmVkSW5saW5lQ29udGVudCA9IGFkanVzdExpbmVQb3NpdGlvbnNGb3JQ
YWdpbmF0aW9uKCptX2lubGluZUNvbnRlbnQsIGZsb3coKSk7Ci0gICAgaWYgKHBhZ2luZWRJbmxp
bmVDb250ZW50LnB0cigpID09IG1faW5saW5lQ29udGVudCkgeworICAgIGlmICghcGFnaW5lZElu
bGluZUNvbnRlbnQpIHsKICAgICAgICAgbV9pc1BhZ2luYXRlZENvbnRlbnQgPSBmYWxzZTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTU3NCw3ICs1NzQsNyBAQCB2b2lkIExpbmVMYXlvdXQ6
OmNvbGxlY3RPdmVyZmxvdygpCiBJbmxpbmVDb250ZW50JiBMaW5lTGF5b3V0OjplbnN1cmVJbmxp
bmVDb250ZW50KCkKIHsKICAgICBpZiAoIW1faW5saW5lQ29udGVudCkKLSAgICAgICAgbV9pbmxp
bmVDb250ZW50ID0gSW5saW5lQ29udGVudDo6Y3JlYXRlKCp0aGlzKTsKKyAgICAgICAgbV9pbmxp
bmVDb250ZW50ID0gbWFrZVVuaXF1ZTxJbmxpbmVDb250ZW50PigqdGhpcyk7CiAgICAgcmV0dXJu
ICptX2lubGluZUNvbnRlbnQ7CiB9CiAKQEAgLTg4Nyw3ICs4ODcsNiBAQCB2b2lkIExpbmVMYXlv
dXQ6OmNsZWFySW5saW5lQ29udGVudCgpCiB7CiAgICAgaWYgKCFtX2lubGluZUNvbnRlbnQpCiAg
ICAgICAgIHJldHVybjsKLSAgICBtX2lubGluZUNvbnRlbnQtPmNsZWFyQW5kRGV0YWNoKCk7CiAg
ICAgbV9pbmxpbmVDb250ZW50ID0gbnVsbHB0cjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlv
dXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50
ZWdyYXRpb25MaW5lTGF5b3V0LmgKaW5kZXggMzExNDE5Y2YyNmU1YjgxZGI3NzI2ZjQyYzJjMGNh
MDYyYWFmZDI4OS4uYWU2MWMxMTQ5ODhmZjJiYjExYmY1YjkzYmQ2YTFmOTk4NDBjMzBhOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJ
bnRlZ3JhdGlvbkxpbmVMYXlvdXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCkBAIC0xNDQsNyArMTQ0
LDcgQEAgcHJpdmF0ZToKICAgICBMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdTdGF0ZSYgbV9pbmxp
bmVGb3JtYXR0aW5nU3RhdGU7CiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIHBhcnQgb2Yg
TGF5b3V0U3RhdGUuCiAgICAgc3RkOjp1bmlxdWVfcHRyPExheW91dDo6SW5saW5lRGFtYWdlPiBt
X2xpbmVEYW1hZ2U7Ci0gICAgUmVmUHRyPElubGluZUNvbnRlbnQ+IG1faW5saW5lQ29udGVudDsK
KyAgICBzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lQ29udGVudD4gbV9pbmxpbmVDb250ZW50OwogICAg
IGJvb2wgbV9pc1BhZ2luYXRlZENvbnRlbnQgeyBmYWxzZSB9OwogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlv
blBhZ2luYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGlu
ZS9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uY3BwCmluZGV4IDY0MDVmMDcxNTA4ZDEyN2Zk
ZWUwOTExNzQyMDcyZWNkMGYxZDBjYjguLmE2MTIzMTEwM2MyMDMzNDQ4Y2ZhYzAxODg4NTEzMWZl
NmU1NGFlYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9p
bmxpbmUvTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5j
cHAKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgdm9pZCB1cGRhdGVNaW5pbXVtUGFnZUhlaWdo
dChSZW5kZXJCbG9ja0Zsb3cmIGZsb3csIGNvbnN0IElubGluZUNvbnRlbnQmCiAgICAgZmxvdy51
cGRhdGVNaW5pbXVtUGFnZUhlaWdodCgwLCBMYXlvdXRVbml0KGlubGluZUNvbnRlbnQubGluZXNb
bWluaW11bUxpbmVDb3VudCAtIDFdLmxpbmVCb3hCb3R0b20oKSkpOwogfQogCi1zdGF0aWMgUmVm
PElubGluZUNvbnRlbnQ+IG1ha2VBZGp1c3RlZENvbnRlbnQoY29uc3QgSW5saW5lQ29udGVudCYg
aW5saW5lQ29udGVudCwgVmVjdG9yPGZsb2F0PiBhZGp1c3RtZW50cykKK3N0YXRpYyBzdGQ6OnVu
aXF1ZV9wdHI8SW5saW5lQ29udGVudD4gbWFrZUFkanVzdGVkQ29udGVudChjb25zdCBJbmxpbmVD
b250ZW50JiBpbmxpbmVDb250ZW50LCBWZWN0b3I8ZmxvYXQ+IGFkanVzdG1lbnRzKQogewogICAg
IGF1dG8gbW92ZVZlcnRpY2FsbHkgPSBbXShGbG9hdFJlY3QgcmVjdCwgZmxvYXQgb2Zmc2V0KSB7
CiAgICAgICAgIHJlY3QubW92ZShGbG9hdFNpemUoMCwgb2Zmc2V0KSk7CkBAIC0xNDksNyArMTQ5
LDcgQEAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBtYWtlQWRqdXN0ZWRDb250ZW50KGNvbnN0
IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQKICAgICAgICAgcmV0dXJuIGFkanVzdGVkQm94
OwogICAgIH07CiAKLSAgICBhdXRvIGFkanVzdGVkQ29udGVudCA9IElubGluZUNvbnRlbnQ6OmNy
ZWF0ZShpbmxpbmVDb250ZW50LmxpbmVMYXlvdXQoKSk7CisgICAgYXV0byBhZGp1c3RlZENvbnRl
bnQgPSBtYWtlVW5pcXVlPElubGluZUNvbnRlbnQ+KGlubGluZUNvbnRlbnQubGluZUxheW91dCgp
KTsKIAogICAgIGZvciAoc2l6ZV90IGxpbmVJbmRleCA9IDA7IGxpbmVJbmRleCA8IGlubGluZUNv
bnRlbnQubGluZXMuc2l6ZSgpOyArK2xpbmVJbmRleCkKICAgICAgICAgYWRqdXN0ZWRDb250ZW50
LT5saW5lcy5hcHBlbmQoYWRqdXN0ZWRMaW5lKGlubGluZUNvbnRlbnQubGluZXNbbGluZUluZGV4
XSwgYWRqdXN0bWVudHNbbGluZUluZGV4XSkpOwpAQCAtMTYwLDE0ICsxNjAsMTQgQEAgc3RhdGlj
IFJlZjxJbmxpbmVDb250ZW50PiBtYWtlQWRqdXN0ZWRDb250ZW50KGNvbnN0IElubGluZUNvbnRl
bnQmIGlubGluZUNvbnRlbnQKICAgICByZXR1cm4gYWRqdXN0ZWRDb250ZW50OwogfQogCi1SZWY8
SW5saW5lQ29udGVudD4gYWRqdXN0TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRpb24oSW5saW5lQ29u
dGVudCYgaW5saW5lQ29udGVudCwgUmVuZGVyQmxvY2tGbG93JiBmbG93KQorc3RkOjp1bmlxdWVf
cHRyPElubGluZUNvbnRlbnQ+IGFkanVzdExpbmVQb3NpdGlvbnNGb3JQYWdpbmF0aW9uKElubGlu
ZUNvbnRlbnQmIGlubGluZUNvbnRlbnQsIFJlbmRlckJsb2NrRmxvdyYgZmxvdykKIHsKICAgICBW
ZWN0b3I8U3RydXQ+IHN0cnV0czsKICAgICBhdXRvIGxpbmVDb3VudCA9IGlubGluZUNvbnRlbnQu
bGluZXMuc2l6ZSgpOwogICAgIHVwZGF0ZU1pbmltdW1QYWdlSGVpZ2h0KGZsb3csIGlubGluZUNv
bnRlbnQsIGxpbmVDb3VudCk7CiAgICAgLy8gRmlyc3QgcGFzcyB3aXRoIG5vIHBhZ2luYXRpb24g
b2Zmc2V0PwogICAgIGlmICghZmxvdy5wYWdlTG9naWNhbEhlaWdodEZvck9mZnNldCgwKSkKLSAg
ICAgICAgcmV0dXJuIGlubGluZUNvbnRlbnQ7CisgICAgICAgIHJldHVybiBudWxscHRyOwogCiAg
ICAgYXV0byB3aWRvd3MgPSBmbG93LnN0eWxlKCkuaGFzQXV0b1dpZG93cygpID8gMSA6IHN0ZDo6
bWF4PGludD4oZmxvdy5zdHlsZSgpLndpZG93cygpLCAxKTsKICAgICBhdXRvIG9ycGhhbnMgPSBm
bG93LnN0eWxlKCkuaGFzQXV0b09ycGhhbnMoKSA/IDEgOiBzdGQ6Om1heDxpbnQ+KGZsb3cuc3R5
bGUoKS5vcnBoYW5zKCksIDEpOwpAQCAtMTkwLDcgKzE5MCw3IEBAIFJlZjxJbmxpbmVDb250ZW50
PiBhZGp1c3RMaW5lUG9zaXRpb25zRm9yUGFnaW5hdGlvbihJbmxpbmVDb250ZW50JiBpbmxpbmVD
b250ZW50CiAgICAgfQogCiAgICAgaWYgKHN0cnV0cy5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVy
biBpbmxpbmVDb250ZW50OworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAogICAgIGF1dG8gYWRq
dXN0bWVudHMgPSBWZWN0b3I8ZmxvYXQ+KGxpbmVDb3VudCwgMCk7CiAgICAgZm9yIChhdXRvJiBz
dHJ1dCA6IHN0cnV0cykgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVn
cmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uaCBiL1NvdXJjZS9XZWJD
b3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9u
LmgKaW5kZXggODNjMmNmM2FkNDkyOGI1YjZhMmUwZmMzNDBjYWZmMDlhM2E5NTcxYi4uYjI1Yzkx
OTUxY2UwNjdjZTVkY2Y4MDM0ZGQzM2NjYTIwYzM5N2Y4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRp
b24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91
dEludGVncmF0aW9uUGFnaW5hdGlvbi5oCkBAIC0zNSw3ICszNSw3IEBAIGNsYXNzIFJlbmRlckJs
b2NrRmxvdzsKIAogbmFtZXNwYWNlIExheW91dEludGVncmF0aW9uIHsKICAgICAKLVJlZjxJbmxp
bmVDb250ZW50PiBhZGp1c3RMaW5lUG9zaXRpb25zRm9yUGFnaW5hdGlvbihJbmxpbmVDb250ZW50
JiwgUmVuZGVyQmxvY2tGbG93Jik7CitzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lQ29udGVudD4gYWRq
dXN0TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRpb24oSW5saW5lQ29udGVudCYsIFJlbmRlckJsb2Nr
RmxvdyYpOwogCiB9CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>457886</attachid>
            <date>2022-04-19 06:59:16 -0700</date>
            <delta_ts>2022-04-19 13:30:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239492-20220419165915.patch</filename>
            <type>text/plain</type>
            <size>13216</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkzMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTE3ZmRiMTEwODlkNjhh
MTJhNjJjMjQ2YTUxYzQ0NzA5Yzk0YjNjYS4uZTJkOTQxYjIwZDM0MDM5OWE5MGM1YjRlNzNmYTA4
ZDFlMzkxNDUxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIyLTA0LTE5ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbTEZDXVtJbnRlZ3JhdGlv
bl0gVXNlIFdlYWtQdHIgZm9yIElubGluZUNvbnRlbnQgaW4gaXRlcmF0b3IKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzOTQ5MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNpbXBsaWZ5IHRoZSBsb2dpYyBh
bmQgaW5jcmVhc2Ugcm9idXN0bmVzcy4KKworICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9p
bmxpbmUvSW5saW5lSXRlcmF0b3JCb3hNb2Rlcm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpJ
bmxpbmVJdGVyYXRvcjo6Qm94TW9kZXJuUGF0aDo6YXRFbmQgY29uc3QpOgorCisgICAgICAgIElm
IHRoZSBsYXlvdXQgZ29lcyBhd2F5IHdlIGFyZSAiYXQgZW5kIiwgYXZvaWRpbmcgaGl0dGluZyBu
dWxsIHBvaW50ZXJzLgorCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9Jbmxp
bmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmg6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVJ
dGVyYXRvcjo6TGluZUJveEl0ZXJhdG9yTW9kZXJuUGF0aDo6YXRFbmQgY29uc3QpOgorICAgICAg
ICAqIGxheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250
ZW50Ojp+SW5saW5lQ29udGVudCk6CisgICAgICAgIChXZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlv
bjo6SW5saW5lQ29udGVudDo6Y2xlYXJBbmREZXRhY2gpOiBEZWxldGVkLgorCisgICAgICAgIE5v
IG5lZWQgZm9yICJkZXRhY2hlZCIgc3RhdGUsIElubGluZUNvbnRlbnQgaXMgc2ltcGx5IGRlbGV0
ZWQuCisKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0
aW9uSW5saW5lQ29udGVudC5oOgorCisgICAgICAgIFJlZkNvdW50ZWQgLT4gQ2FuTWFrZVdlYWtQ
dHIKKworICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQ6
OmNyZWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0
SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmFkanVzdEZvclBhZ2luYXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmVuc3VyZUlubGluZUNvbnRl
bnQpOgorICAgICAgICAoV2ViQ29yZTo6TGF5b3V0SW50ZWdyYXRpb246OkxpbmVMYXlvdXQ6OmNs
ZWFySW5saW5lQ29udGVudCk6CisgICAgICAgICogbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9M
YXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaDoKKyAgICAgICAgKiBsYXlvdXQvaW50ZWdyYXRp
b24vaW5saW5lL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6bWFrZUFkanVzdGVkQ29udGVudCk6CisgICAgICAgIChX
ZWJDb3JlOjpMYXlvdXRJbnRlZ3JhdGlvbjo6YWRqdXN0TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRp
b24pOgorICAgICAgICAqIGxheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRp
b25QYWdpbmF0aW9uLmg6CisKIDIwMjItMDQtMTYgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFu
ZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHU3RyZWFtZXJdW1dlYlJUQ10gTWlub3IgY2xlYW51
cCBpbiBJbmNvbWluZ1NvdXJjZUdTdHJlYW1lcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9JbmxpbmVJdGVyYXRvckJveE1vZGVyblBhdGguaCBi
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvSW5saW5lSXRlcmF0b3JC
b3hNb2Rlcm5QYXRoLmgKaW5kZXggZGZiMGFmZWIyYTY3NmY5ZTRmMzhmOTFmNjZjZTZmYTYyY2Rm
NDhhOS4uYzUwY2NkZjRkZWI1YTU3MjUwMjliNmU0YmJjOGQ3OTI1NmZhMjBhMyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9JbmxpbmVJdGVyYXRv
ckJveE1vZGVyblBhdGguaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24v
aW5saW5lL0lubGluZUl0ZXJhdG9yQm94TW9kZXJuUGF0aC5oCkBAIC0yMDQsNyArMjA0LDcgQEAg
cHVibGljOgogCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEJveE1vZGVyblBhdGgmIG90aGVy
KSBjb25zdCB7IHJldHVybiBtX2lubGluZUNvbnRlbnQgPT0gb3RoZXIubV9pbmxpbmVDb250ZW50
ICYmIG1fYm94SW5kZXggPT0gb3RoZXIubV9ib3hJbmRleDsgfQogCi0gICAgYm9vbCBhdEVuZCgp
IGNvbnN0IHsgcmV0dXJuIG1fYm94SW5kZXggPT0gYm94ZXMoKS5zaXplKCk7IH0KKyAgICBib29s
IGF0RW5kKCkgY29uc3QgeyByZXR1cm4gIW1faW5saW5lQ29udGVudCB8fCBtX2JveEluZGV4ID09
IGJveGVzKCkuc2l6ZSgpOyB9CiAgICAgY29uc3QgSW5saW5lRGlzcGxheTo6Qm94JiBib3goKSBj
b25zdCB7IHJldHVybiBib3hlcygpW21fYm94SW5kZXhdOyB9CiAgICAgYXV0byYgaW5saW5lQ29u
dGVudCgpIGNvbnN0IHsgcmV0dXJuICptX2lubGluZUNvbnRlbnQ7IH0KIApAQCAtMjY5LDcgKzI2
OSw3IEBAIHByaXZhdGU6CiAgICAgY29uc3QgUmVuZGVyVGV4dCYgcmVuZGVyVGV4dCgpIGNvbnN0
IHsgcmV0dXJuIGRvd25jYXN0PFJlbmRlclRleHQ+KHJlbmRlcmVyKCkpOyB9CiAgICAgVGV4dERp
cmVjdGlvbiBkaXJlY3Rpb24oKSBjb25zdCB7IHJldHVybiBiaWRpTGV2ZWwoKSAlIDIgPyBUZXh0
RGlyZWN0aW9uOjpSVEwgOiBUZXh0RGlyZWN0aW9uOjpMVFI7IH0KIAotICAgIFJlZlB0cjxjb25z
dCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudD4gbV9pbmxpbmVDb250ZW50OworICAg
IFdlYWtQdHI8Y29uc3QgTGF5b3V0SW50ZWdyYXRpb246OklubGluZUNvbnRlbnQ+IG1faW5saW5l
Q29udGVudDsKICAgICBzaXplX3QgbV9ib3hJbmRleCB7IDAgfTsKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvSW5saW5lSXRlcmF0b3JM
aW5lQm94TW9kZXJuUGF0aC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lu
bGluZS9JbmxpbmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmgKaW5kZXggYWZiMmMwZDA3NmY5
MGYyOTIyZjgwNGZjNzJhZDI2NzQwMjNkYWZhMS4uZDcxNDkxMTJlMjk2NGU5MmU0ZTBlOGE4MDU3
Yjg4YmNjYjVkOWYyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL2lubGluZS9JbmxpbmVJdGVyYXRvckxpbmVCb3hNb2Rlcm5QYXRoLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9JbmxpbmVJdGVyYXRvckxpbmVCb3hN
b2Rlcm5QYXRoLmgKQEAgLTkxLDcgKzkxLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBvcGVyYXRv
cj09KGNvbnN0IExpbmVCb3hJdGVyYXRvck1vZGVyblBhdGgmIG90aGVyKSBjb25zdCB7IHJldHVy
biBtX2lubGluZUNvbnRlbnQgPT0gb3RoZXIubV9pbmxpbmVDb250ZW50ICYmIG1fbGluZUluZGV4
ID09IG90aGVyLm1fbGluZUluZGV4OyB9CiAKLSAgICBib29sIGF0RW5kKCkgY29uc3QgeyByZXR1
cm4gbV9saW5lSW5kZXggPT0gbGluZXMoKS5zaXplKCk7IH0KKyAgICBib29sIGF0RW5kKCkgY29u
c3QgeyByZXR1cm4gIW1faW5saW5lQ29udGVudCB8fCBtX2xpbmVJbmRleCA9PSBsaW5lcygpLnNp
emUoKTsgfQogCiAgICAgQm94TW9kZXJuUGF0aCBmaXJzdExlYWZCb3goKSBjb25zdAogICAgIHsK
QEAgLTEyMCw3ICsxMjAsNyBAQCBwcml2YXRlOgogICAgIGNvbnN0IExheW91dEludGVncmF0aW9u
OjpJbmxpbmVDb250ZW50OjpMaW5lcyYgbGluZXMoKSBjb25zdCB7IHJldHVybiBtX2lubGluZUNv
bnRlbnQtPmxpbmVzOyB9CiAgICAgY29uc3QgTGF5b3V0SW50ZWdyYXRpb246OkxpbmUmIGxpbmUo
KSBjb25zdCB7IHJldHVybiBsaW5lcygpW21fbGluZUluZGV4XTsgfQogCi0gICAgUmVmUHRyPGNv
bnN0IExheW91dEludGVncmF0aW9uOjpJbmxpbmVDb250ZW50PiBtX2lubGluZUNvbnRlbnQ7Cisg
ICAgV2Vha1B0cjxjb25zdCBMYXlvdXRJbnRlZ3JhdGlvbjo6SW5saW5lQ29udGVudD4gbV9pbmxp
bmVDb250ZW50OwogICAgIHNpemVfdCBtX2xpbmVJbmRleCB7IDAgfTsKIH07CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdy
YXRpb25JbmxpbmVDb250ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlv
bi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcAppbmRleCA1ZDQzMjU2
OWViNDQ4NmFmNjExN2Y2YjQxOTIzN2ZiN2E4ZTU5OGI4Li5iNDRjOWRmNDU2NGEzMWRmNWZmNTM4
NmZjMWU1YWNkOWIzNDZkNmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50
ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlv
bklubGluZUNvbnRlbnQuY3BwCkBAIC04NywxMCArODcsOCBAQCBJdGVyYXRvclJhbmdlPGNvbnN0
IElubGluZURpc3BsYXk6OkJveCo+IElubGluZUNvbnRlbnQ6OmJveGVzRm9yUmVjdChjb25zdCBM
YXlvdQogCiBJbmxpbmVDb250ZW50Ojp+SW5saW5lQ29udGVudCgpCiB7Ci0gICAgaWYgKFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkubGF5b3V0Rm9ybWF0dGluZ0NvbnRl
eHRJbnRlZ3JhdGlvbkVuYWJsZWQoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGJveCA6IGJveGVz
KQotICAgICAgICAgICAgVGV4dFBhaW50ZXI6OnJlbW92ZUdseXBoRGlzcGxheUxpc3QoYm94KTsK
LSAgICB9CisgICAgZm9yIChhdXRvJiBib3ggOiBib3hlcykKKyAgICAgICAgVGV4dFBhaW50ZXI6
OnJlbW92ZUdseXBoRGlzcGxheUxpc3QoYm94KTsKIH0KIAogY29uc3QgUmVuZGVyT2JqZWN0JiBJ
bmxpbmVDb250ZW50OjpyZW5kZXJlckZvckxheW91dEJveChjb25zdCBMYXlvdXQ6OkJveCYgbGF5
b3V0Qm94KSBjb25zdApAQCAtMTczLDE3ICsxNzEsNiBAQCBjb25zdCBWZWN0b3I8c2l6ZV90PiYg
SW5saW5lQ29udGVudDo6bm9uUm9vdElubGluZUJveEluZGV4ZXNGb3JMYXlvdXRCb3goY29uc3Qg
TAogICAgIHJldHVybiBpdC0+dmFsdWU7CiB9CiAKLXZvaWQgSW5saW5lQ29udGVudDo6Y2xlYXJB
bmREZXRhY2goKQotewotICAgIGZvciAoYXV0byYgYm94IDogYm94ZXMpCi0gICAgICAgIFRleHRQ
YWludGVyOjpyZW1vdmVHbHlwaERpc3BsYXlMaXN0KGJveCk7Ci0KLSAgICByZWxlYXNlQ2FjaGVz
KCk7Ci0gICAgYm94ZXMuY2xlYXIoKTsKLSAgICBsaW5lcy5jbGVhcigpOwotICAgIG1fbGluZUxh
eW91dCA9IG51bGxwdHI7Ci19Ci0KIHZvaWQgSW5saW5lQ29udGVudDo6cmVsZWFzZUNhY2hlcygp
CiB7CiAgICAgbV9maXJzdEJveEluZGV4Q2FjaGUgPSB7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uSW5saW5l
Q29udGVudC5oIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnQuaAppbmRleCA3OWRkYjk3ZTY5ZjE5YjhkYTZiNmIy
OGQ1N2EwZjE0NGE3NWY1ZjQxLi5mODliMzRhMGJiODlhYWI3ZGEwMDZiN2I5ZjA2ZmNjNTc4YmMw
ZjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5l
L0xheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmgK
QEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0
Zi9JdGVyYXRvclJhbmdlLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorI2luY2x1ZGUgPHd0
Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNTAsOCArNTEsMTAgQEAg
bmFtZXNwYWNlIExheW91dEludGVncmF0aW9uIHsKIAogY2xhc3MgTGluZUxheW91dDsKIAotc3Ry
dWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxJbmxpbmVDb250ZW50PiB7Ci0g
ICAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBjcmVhdGUoY29uc3QgTGluZUxheW91dCYgbGlu
ZUxheW91dCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbmxpbmVDb250ZW50KGxpbmVMYXlvdXQp
KTsgfQorc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8SW5saW5l
Q29udGVudD4geworICAgIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FMTE9DQVRFRDsKKworICAgIElu
bGluZUNvbnRlbnQoY29uc3QgTGluZUxheW91dCYpOwogICAgIH5JbmxpbmVDb250ZW50KCk7CiAK
ICAgICB1c2luZyBCb3hlcyA9IFZlY3RvcjxJbmxpbmVEaXNwbGF5OjpCb3g+OwpAQCAtODYsMTIg
Kzg5LDkgQEAgc3RydWN0IElubGluZUNvbnRlbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxJbmxpbmVD
b250ZW50PiB7CiAgICAgc3RkOjpvcHRpb25hbDxzaXplX3Q+IGZpcnN0Qm94SW5kZXhGb3JMYXlv
dXRCb3goY29uc3QgTGF5b3V0OjpCb3gmKSBjb25zdDsKICAgICBjb25zdCBWZWN0b3I8c2l6ZV90
PiYgbm9uUm9vdElubGluZUJveEluZGV4ZXNGb3JMYXlvdXRCb3goY29uc3QgTGF5b3V0OjpCb3gm
KSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXJBbmREZXRhY2goKTsKICAgICB2b2lkIHJlbGVhc2VD
YWNoZXMoKTsKIAogcHJpdmF0ZToKLSAgICBJbmxpbmVDb250ZW50KGNvbnN0IExpbmVMYXlvdXQm
KTsKLQogICAgIENoZWNrZWRQdHI8Y29uc3QgTGluZUxheW91dD4gbV9saW5lTGF5b3V0OwogCiAg
ICAgdXNpbmcgRmlyc3RCb3hJbmRleENhY2hlID0gSGFzaE1hcDxDaGVja2VkUmVmPGNvbnN0IExh
eW91dDo6Qm94Piwgc2l6ZV90PjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9p
bnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50ZWdyYXRpb25MaW5l
TGF5b3V0LmNwcAppbmRleCBmNGQ1ODA4ZDNmMGE0MzYxZWNhOTY3NTdiZmEyMzY3Y2IxMTYwZWIx
Li5kMWY3YmI5OWQ0MGUxODRmZjJlM2MyYWFhYTQ3YTMwYzJjMTc1NGM0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9u
TGluZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lu
bGluZS9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCkBAIC01NTEsNyArNTUxLDcgQEAg
dm9pZCBMaW5lTGF5b3V0OjphZGp1c3RGb3JQYWdpbmF0aW9uKCkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgYXV0byBwYWdpbmVkSW5saW5lQ29udGVudCA9IGFkanVzdExpbmVQb3NpdGlvbnNGb3JQ
YWdpbmF0aW9uKCptX2lubGluZUNvbnRlbnQsIGZsb3coKSk7Ci0gICAgaWYgKHBhZ2luZWRJbmxp
bmVDb250ZW50LnB0cigpID09IG1faW5saW5lQ29udGVudCkgeworICAgIGlmICghcGFnaW5lZElu
bGluZUNvbnRlbnQpIHsKICAgICAgICAgbV9pc1BhZ2luYXRlZENvbnRlbnQgPSBmYWxzZTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTU3NCw3ICs1NzQsNyBAQCB2b2lkIExpbmVMYXlvdXQ6
OmNvbGxlY3RPdmVyZmxvdygpCiBJbmxpbmVDb250ZW50JiBMaW5lTGF5b3V0OjplbnN1cmVJbmxp
bmVDb250ZW50KCkKIHsKICAgICBpZiAoIW1faW5saW5lQ29udGVudCkKLSAgICAgICAgbV9pbmxp
bmVDb250ZW50ID0gSW5saW5lQ29udGVudDo6Y3JlYXRlKCp0aGlzKTsKKyAgICAgICAgbV9pbmxp
bmVDb250ZW50ID0gbWFrZVVuaXF1ZTxJbmxpbmVDb250ZW50PigqdGhpcyk7CiAgICAgcmV0dXJu
ICptX2lubGluZUNvbnRlbnQ7CiB9CiAKQEAgLTg4Nyw3ICs4ODcsNiBAQCB2b2lkIExpbmVMYXlv
dXQ6OmNsZWFySW5saW5lQ29udGVudCgpCiB7CiAgICAgaWYgKCFtX2lubGluZUNvbnRlbnQpCiAg
ICAgICAgIHJldHVybjsKLSAgICBtX2lubGluZUNvbnRlbnQtPmNsZWFyQW5kRGV0YWNoKCk7CiAg
ICAgbV9pbmxpbmVDb250ZW50ID0gbnVsbHB0cjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlv
dXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUvTGF5b3V0SW50
ZWdyYXRpb25MaW5lTGF5b3V0LmgKaW5kZXggMzExNDE5Y2YyNmU1YjgxZGI3NzI2ZjQyYzJjMGNh
MDYyYWFmZDI4OS4uYWU2MWMxMTQ5ODhmZjJiYjExYmY1YjkzYmQ2YTFmOTk4NDBjMzBhOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJ
bnRlZ3JhdGlvbkxpbmVMYXlvdXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdy
YXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5oCkBAIC0xNDQsNyArMTQ0
LDcgQEAgcHJpdmF0ZToKICAgICBMYXlvdXQ6OklubGluZUZvcm1hdHRpbmdTdGF0ZSYgbV9pbmxp
bmVGb3JtYXR0aW5nU3RhdGU7CiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIHBhcnQgb2Yg
TGF5b3V0U3RhdGUuCiAgICAgc3RkOjp1bmlxdWVfcHRyPExheW91dDo6SW5saW5lRGFtYWdlPiBt
X2xpbmVEYW1hZ2U7Ci0gICAgUmVmUHRyPElubGluZUNvbnRlbnQ+IG1faW5saW5lQ29udGVudDsK
KyAgICBzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lQ29udGVudD4gbV9pbmxpbmVDb250ZW50OwogICAg
IGJvb2wgbV9pc1BhZ2luYXRlZENvbnRlbnQgeyBmYWxzZSB9OwogfTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlv
blBhZ2luYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGlu
ZS9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uY3BwCmluZGV4IDY0MDVmMDcxNTA4ZDEyN2Zk
ZWUwOTExNzQyMDcyZWNkMGYxZDBjYjguLmY2OGE2MTMyY2Q5YTNkMmNlNTM5MmVmZDk4MmQzMDY4
M2YzYzUzMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9p
bmxpbmUvTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sYXlvdXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5j
cHAKQEAgLTQ1LDcgKzQ1LDcgQEAgc3RydWN0IFBhZ2luYXRlZExpbmUgewogfTsKIHVzaW5nIFBh
Z2luYXRlZExpbmVzID0gVmVjdG9yPFBhZ2luYXRlZExpbmUsIDIwPjsKIAotc3RhdGljIFBhZ2lu
YXRlZExpbmUgY29tcHV0ZUxpbmVUb3BBbmRCb3R0b21XaXRoT3ZlcmZsb3coY29uc3QgUmVuZGVy
QmxvY2tGbG93JiwgSW5saW5lQ29udGVudDo6TGluZXMmIGxpbmVzLCB1bnNpZ25lZCBsaW5lSW5k
ZXgsIFZlY3RvcjxTdHJ1dD4mIHN0cnV0cykKK3N0YXRpYyBQYWdpbmF0ZWRMaW5lIGNvbXB1dGVM
aW5lVG9wQW5kQm90dG9tV2l0aE92ZXJmbG93KGNvbnN0IFJlbmRlckJsb2NrRmxvdyYsIGNvbnN0
IElubGluZUNvbnRlbnQ6OkxpbmVzJiBsaW5lcywgdW5zaWduZWQgbGluZUluZGV4LCBWZWN0b3I8
U3RydXQ+JiBzdHJ1dHMpCiB7CiAgICAgTGF5b3V0VW5pdCBvZmZzZXQgPSAwOwogICAgIGZvciAo
YXV0byYgc3RydXQgOiBzdHJ1dHMpIHsKQEAgLTExNyw3ICsxMTcsNyBAQCBzdGF0aWMgdm9pZCB1
cGRhdGVNaW5pbXVtUGFnZUhlaWdodChSZW5kZXJCbG9ja0Zsb3cmIGZsb3csIGNvbnN0IElubGlu
ZUNvbnRlbnQmCiAgICAgZmxvdy51cGRhdGVNaW5pbXVtUGFnZUhlaWdodCgwLCBMYXlvdXRVbml0
KGlubGluZUNvbnRlbnQubGluZXNbbWluaW11bUxpbmVDb3VudCAtIDFdLmxpbmVCb3hCb3R0b20o
KSkpOwogfQogCi1zdGF0aWMgUmVmPElubGluZUNvbnRlbnQ+IG1ha2VBZGp1c3RlZENvbnRlbnQo
Y29uc3QgSW5saW5lQ29udGVudCYgaW5saW5lQ29udGVudCwgVmVjdG9yPGZsb2F0PiBhZGp1c3Rt
ZW50cykKK3N0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lQ29udGVudD4gbWFrZUFkanVzdGVk
Q29udGVudChjb25zdCBJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50LCBWZWN0b3I8ZmxvYXQ+
IGFkanVzdG1lbnRzKQogewogICAgIGF1dG8gbW92ZVZlcnRpY2FsbHkgPSBbXShGbG9hdFJlY3Qg
cmVjdCwgZmxvYXQgb2Zmc2V0KSB7CiAgICAgICAgIHJlY3QubW92ZShGbG9hdFNpemUoMCwgb2Zm
c2V0KSk7CkBAIC0xNDksNyArMTQ5LDcgQEAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBtYWtl
QWRqdXN0ZWRDb250ZW50KGNvbnN0IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQKICAgICAg
ICAgcmV0dXJuIGFkanVzdGVkQm94OwogICAgIH07CiAKLSAgICBhdXRvIGFkanVzdGVkQ29udGVu
dCA9IElubGluZUNvbnRlbnQ6OmNyZWF0ZShpbmxpbmVDb250ZW50LmxpbmVMYXlvdXQoKSk7Cisg
ICAgYXV0byBhZGp1c3RlZENvbnRlbnQgPSBtYWtlVW5pcXVlPElubGluZUNvbnRlbnQ+KGlubGlu
ZUNvbnRlbnQubGluZUxheW91dCgpKTsKIAogICAgIGZvciAoc2l6ZV90IGxpbmVJbmRleCA9IDA7
IGxpbmVJbmRleCA8IGlubGluZUNvbnRlbnQubGluZXMuc2l6ZSgpOyArK2xpbmVJbmRleCkKICAg
ICAgICAgYWRqdXN0ZWRDb250ZW50LT5saW5lcy5hcHBlbmQoYWRqdXN0ZWRMaW5lKGlubGluZUNv
bnRlbnQubGluZXNbbGluZUluZGV4XSwgYWRqdXN0bWVudHNbbGluZUluZGV4XSkpOwpAQCAtMTYw
LDE0ICsxNjAsMTQgQEAgc3RhdGljIFJlZjxJbmxpbmVDb250ZW50PiBtYWtlQWRqdXN0ZWRDb250
ZW50KGNvbnN0IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQKICAgICByZXR1cm4gYWRqdXN0
ZWRDb250ZW50OwogfQogCi1SZWY8SW5saW5lQ29udGVudD4gYWRqdXN0TGluZVBvc2l0aW9uc0Zv
clBhZ2luYXRpb24oSW5saW5lQ29udGVudCYgaW5saW5lQ29udGVudCwgUmVuZGVyQmxvY2tGbG93
JiBmbG93KQorc3RkOjp1bmlxdWVfcHRyPElubGluZUNvbnRlbnQ+IGFkanVzdExpbmVQb3NpdGlv
bnNGb3JQYWdpbmF0aW9uKGNvbnN0IElubGluZUNvbnRlbnQmIGlubGluZUNvbnRlbnQsIFJlbmRl
ckJsb2NrRmxvdyYgZmxvdykKIHsKICAgICBWZWN0b3I8U3RydXQ+IHN0cnV0czsKICAgICBhdXRv
IGxpbmVDb3VudCA9IGlubGluZUNvbnRlbnQubGluZXMuc2l6ZSgpOwogICAgIHVwZGF0ZU1pbmlt
dW1QYWdlSGVpZ2h0KGZsb3csIGlubGluZUNvbnRlbnQsIGxpbmVDb3VudCk7CiAgICAgLy8gRmly
c3QgcGFzcyB3aXRoIG5vIHBhZ2luYXRpb24gb2Zmc2V0PwogICAgIGlmICghZmxvdy5wYWdlTG9n
aWNhbEhlaWdodEZvck9mZnNldCgwKSkKLSAgICAgICAgcmV0dXJuIGlubGluZUNvbnRlbnQ7Cisg
ICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgYXV0byB3aWRvd3MgPSBmbG93LnN0eWxlKCku
aGFzQXV0b1dpZG93cygpID8gMSA6IHN0ZDo6bWF4PGludD4oZmxvdy5zdHlsZSgpLndpZG93cygp
LCAxKTsKICAgICBhdXRvIG9ycGhhbnMgPSBmbG93LnN0eWxlKCkuaGFzQXV0b09ycGhhbnMoKSA/
IDEgOiBzdGQ6Om1heDxpbnQ+KGZsb3cuc3R5bGUoKS5vcnBoYW5zKCksIDEpOwpAQCAtMTkwLDcg
KzE5MCw3IEBAIFJlZjxJbmxpbmVDb250ZW50PiBhZGp1c3RMaW5lUG9zaXRpb25zRm9yUGFnaW5h
dGlvbihJbmxpbmVDb250ZW50JiBpbmxpbmVDb250ZW50CiAgICAgfQogCiAgICAgaWYgKHN0cnV0
cy5pc0VtcHR5KCkpCi0gICAgICAgIHJldHVybiBpbmxpbmVDb250ZW50OworICAgICAgICByZXR1
cm4gbnVsbHB0cjsKIAogICAgIGF1dG8gYWRqdXN0bWVudHMgPSBWZWN0b3I8ZmxvYXQ+KGxpbmVD
b3VudCwgMCk7CiAgICAgZm9yIChhdXRvJiBzdHJ1dCA6IHN0cnV0cykgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlv
blBhZ2luYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9pbnRlZ3JhdGlvbi9pbmxpbmUv
TGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9uLmgKaW5kZXggODNjMmNmM2FkNDkyOGI1YjZhMmUw
ZmMzNDBjYWZmMDlhM2E5NTcxYi4uNTk4ZTg2NjE3NTI1YWQyYjEyMmYwYjFjZWU3MDNiZTE2NWIx
YTZmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGlu
ZS9MYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvaW50ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5oCkBAIC0z
NSw3ICszNSw3IEBAIGNsYXNzIFJlbmRlckJsb2NrRmxvdzsKIAogbmFtZXNwYWNlIExheW91dElu
dGVncmF0aW9uIHsKICAgICAKLVJlZjxJbmxpbmVDb250ZW50PiBhZGp1c3RMaW5lUG9zaXRpb25z
Rm9yUGFnaW5hdGlvbihJbmxpbmVDb250ZW50JiwgUmVuZGVyQmxvY2tGbG93Jik7CitzdGQ6OnVu
aXF1ZV9wdHI8SW5saW5lQ29udGVudD4gYWRqdXN0TGluZVBvc2l0aW9uc0ZvclBhZ2luYXRpb24o
Y29uc3QgSW5saW5lQ29udGVudCYsIFJlbmRlckJsb2NrRmxvdyYpOwogCiB9CiB9Cg==
</data>
<flag name="commit-queue"
          id="486660"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>