<?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>307233</bug_id>
          
          <creation_ts>2026-02-07 05:50:18 -0800</creation_ts>
          <short_desc>Compute ContentAttributes while collecting inline items</short_desc>
          <delta_ts>2026-02-09 09:18:13 -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>New Bugs</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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2179044</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2026-02-07 05:50:18 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2179045</commentid>
    <comment_count>1</comment_count>
      <attachid>478279</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-02-07 06:02:24 -0800</bug_when>
    <thetext>Created attachment 478279
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2179093</commentid>
    <comment_count>2</comment_count>
      <attachid>478281</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-02-07 12:42:08 -0800</bug_when>
    <thetext>Created attachment 478281
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2179269</commentid>
    <comment_count>3</comment_count>
      <attachid>478286</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-02-08 15:53:47 -0800</bug_when>
    <thetext>Created attachment 478286
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2179441</commentid>
    <comment_count>4</comment_count>
      <attachid>478288</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-02-09 07:04:44 -0800</bug_when>
    <thetext>Created attachment 478288
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2179464</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-02-09 09:17:49 -0800</bug_when>
    <thetext>Committed 307079@main (cfd853a10c2c): &lt;https://commits.webkit.org/307079@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 478288.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2179465</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-02-09 09:18:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/169973589&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>478279</attachid>
            <date>2026-02-07 06:02:24 -0800</date>
            <delta_ts>2026-02-07 06:55:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-307233-20260207060223.patch</filename>
            <type>text/plain</type>
            <size>11949</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA2NmQzOTc4ZTdiMTM4MGFlYzIwM2VjZGViNzkzZGZlNWQ0MGQ5YWEwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFNhdCwgNyBGZWIgMjAyNiAwNTo1MDoyNSAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIENvbXB1dGUg
Q29udGVudEF0dHJpYnV0ZXMgd2hpbGUgY29sbGVjdGluZyBpbmxpbmUgaXRlbXMKIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDcyMzMKClJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgoKQ3VycmVudGx5LCBJbmxpbmVJdGVtc0J1aWxkZXIgcGVyZm9ybXMgdHdvIHBh
c3NlczogdGhlIGZpcnN0IGNvbGxlY3RzIGlubGluZSBpdGVtcywgYW5kIHRoZSBzZWNvbmQgbWVh
c3VyZXMgdGV4dCB3aWR0aHMgYW5kCmRldGVybWluZXMgd2hldGhlciB0aGUgY29udGVudCBpcyB0
ZXh0LW9ubHksIGFzIHdlbGwgYXMgdGhlIG51bWJlciBvZiBpbmxpbmUgYm94ZXMuCgpUaGlzIHBh
dGNoIG1vdmVzIHRoZSAnZGV0ZXJtaW5lcycgcGFydCB0byB0aGUgZmlyc3QgcGFzcy4gSXQgaXMg
YSBwcmVwYXJhdGlvbiBmb3IgYmVpbmcgYWJsZSB0byBkbyBvbmx5IG9uZSBwYXNzIG9uIHNpbXBs
ZSBjb250ZW50LgoKKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lu
bGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0Ojppc1RleHRPckxp
bmVCcmVhayk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQpOgoo
V2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1aWxkZXI6OnRyYXZlcnNlVW50aWxEYW1hZ2Vk
KToKKFdlYkNvcmU6OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjpjb2xsZWN0SW5saW5lSXRl
bXMpOgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1aWxkZXI6OmNvbXB1dGVJbmxpbmVU
ZXh0SXRlbVdpZHRoc0FuZFRleHRTcGFjaW5nKToKKFdlYkNvcmU6OkxheW91dDo6SW5saW5lSXRl
bXNCdWlsZGVyOjpoYW5kbGVJbmxpbmVCb3hTdGFydCk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGlu
ZUl0ZW1zQnVpbGRlcjo6Y29tcHV0ZUNvbnRlbnRBdHRyaWJ1dGVzQW5kSW5saW5lVGV4dEl0ZW1X
aWR0aHMpOiBEZWxldGVkLgoqIFNvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4
dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oOgotLS0KIC4uLi9pbmxpbmUvSW5saW5lSXRl
bXNCdWlsZGVyLmNwcCAgICAgICAgICAgICB8IDgyICsrKysrKystLS0tLS0tLS0tLS0KIC4uLi9p
bmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmggICAgICAgICAgICAgICB8ICA0ICstCiAyIGZpbGVz
IGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0
ZW1zQnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRz
L2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCmluZGV4IGMwMWYxZThmNWEzZi4uZDMwNWI1
ZGQ0Mzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRl
eHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xh
eW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5jcHAKQEAg
LTgzLDYgKzgzLDExIEBAIHN0YXRpYyB1bnNpZ25lZCBtb3ZlVG9OZXh0QnJlYWthYmxlUG9zaXRp
b24odW5zaWduZWQgc3RhcnRQb3NpdGlvbiwgQ2FjaGVkTGluZUJyCiAgICAgcmV0dXJuIHRleHRM
ZW5ndGggLSBzdGFydFBvc2l0aW9uOwogfQogCitzdGF0aWMgaW5saW5lIGJvb2wgaXNUZXh0T3JM
aW5lQnJlYWsoY29uc3QgQm94JiBsYXlvdXRCb3gpCit7CisgICAgcmV0dXJuIGxheW91dEJveC5p
c0luRmxvdygpICYmIChsYXlvdXRCb3guaXNJbmxpbmVUZXh0Qm94KCkgfHwgKGxheW91dEJveC5p
c0xpbmVCcmVha0JveCgpICYmICFsYXlvdXRCb3guaXNXb3JkQnJlYWtPcHBvcnR1bml0eSgpKSk7
Cit9CisKIElubGluZUl0ZW1zQnVpbGRlcjo6SW5saW5lSXRlbXNCdWlsZGVyKElubGluZUNvbnRl
bnRDYWNoZSYgaW5saW5lQ29udGVudENhY2hlLCBjb25zdCBFbGVtZW50Qm94JiByb290LCBjb25z
dCBTZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4pCiAgICAgOiBtX2lubGluZUNvbnRlbnRD
YWNoZShpbmxpbmVDb250ZW50Q2FjaGUpCiAgICAgLCBtX3Jvb3Qocm9vdCkKQEAgLTEwMCwxMSAr
MTA1LDE0IEBAIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpidWlsZChJbmxpbmVJdGVtUG9zaXRp
b24gc3RhcnRQb3NpdGlvbikKICAgICAgICAgYnJlYWtBbmRDb21wdXRlQmlkaUxldmVscyhpbmxp
bmVJdGVtTGlzdCk7CiAgICAgfQogCi0gICAgYXV0byYgaW5saW5lSXRlbUNhY2hlID0gaW5saW5l
Q29udGVudENhY2hlKCkuaW5saW5lSXRlbXMoKTsKLSAgICBhdXRvIGNvbnRlbnRBdHRyaWJ1dGVz
ID0gY29tcHV0ZUNvbnRlbnRBdHRyaWJ1dGVzQW5kSW5saW5lVGV4dEl0ZW1XaWR0aHMoaW5saW5l
SXRlbUxpc3QsIHN0YXJ0UG9zaXRpb24sIGlubGluZUl0ZW1DYWNoZS5jb250ZW50KCkpOworICAg
IGNvbXB1dGVJbmxpbmVUZXh0SXRlbVdpZHRoc0FuZFRleHRTcGFjaW5nKGlubGluZUl0ZW1MaXN0
KTsKKwogICAgIGF1dG8gYWRqdXN0SW5saW5lQ29udGVudENhY2hlV2l0aE5ld0lubGluZUl0ZW1z
ID0gWyZdIHsKLSAgICAgICAgQVNTRVJUKCFzdGFydFBvc2l0aW9uIHx8IHN0YXJ0UG9zaXRpb24u
aW5kZXggPCBpbmxpbmVJdGVtQ2FjaGUuY29udGVudCgpLnNpemUoKSk7CisgICAgICAgIEFTU0VS
VCghc3RhcnRQb3NpdGlvbiB8fCBzdGFydFBvc2l0aW9uLmluZGV4IDwgaW5saW5lQ29udGVudENh
Y2hlKCkuaW5saW5lSXRlbXMoKS5jb250ZW50KCkuc2l6ZSgpKTsKKworICAgICAgICBhdXRvIGNv
bnRlbnRBdHRyaWJ1dGVzID0gSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6Q29udGVu
dEF0dHJpYnV0ZXMgeyBtX2NvbnRlbnRSZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcsIG1faGFzVGV4
dEFuZExpbmVCcmVha09ubHlDb250ZW50LCBtX2hhc1RleHRBdXRvc3BhY2UsIG1faW5saW5lQm94
Q291bnQgfTsKICAgICAgICAgYXV0byBpc1BvcHVsYXRlZEZyb21DYWNoZSA9IG1fdGV4dENvbnRl
bnRQb3B1bGF0ZWRGcm9tQ2FjaGUgJiYgKm1fdGV4dENvbnRlbnRQb3B1bGF0ZWRGcm9tQ2FjaGUg
PyBJbmxpbmVDb250ZW50Q2FjaGU6OklubGluZUl0ZW1zOjpJc1BvcHVsYXRlZEZyb21DYWNoZTo6
WWVzIDogSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6SXNQb3B1bGF0ZWRGcm9tQ2Fj
aGU6Ok5vOworICAgICAgICBhdXRvJiBpbmxpbmVJdGVtQ2FjaGUgPSBpbmxpbmVDb250ZW50Q2Fj
aGUoKS5pbmxpbmVJdGVtcygpOwogICAgICAgICBpZiAoIXN0YXJ0UG9zaXRpb24gfHwgc3RhcnRQ
b3NpdGlvbi5pbmRleCA+PSBpbmxpbmVJdGVtQ2FjaGUuY29udGVudCgpLnNpemUoKSkKICAgICAg
ICAgICAgIHJldHVybiBpbmxpbmVJdGVtQ2FjaGUuc2V0KFdURjo6bW92ZShpbmxpbmVJdGVtTGlz
dCksIGNvbnRlbnRBdHRyaWJ1dGVzLCBpc1BvcHVsYXRlZEZyb21DYWNoZSk7CiAgICAgICAgIGlu
bGluZUl0ZW1DYWNoZS5yZXBsYWNlKHN0YXJ0UG9zaXRpb24uaW5kZXgsIFdURjo6bW92ZShpbmxp
bmVJdGVtTGlzdCksIGNvbnRlbnRBdHRyaWJ1dGVzLCBpc1BvcHVsYXRlZEZyb21DYWNoZSk7CkBA
IC0xMTUsMTkgKzEyMywyNSBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQoSW5saW5l
SXRlbVBvc2l0aW9uIHN0YXJ0UG9zaXRpb24pCiAgICAgLy8gQ2hlY2sgaWYgd2UndmUgZ290IG1h
dGNoaW5nIGlubGluZSBib3ggc3RhcnQvZW5kIHBhaXJzIGFuZCB1bmlxdWUgaW5saW5lIGxldmVs
IGl0ZW1zIChub24tdGV4dCwgbm9uLWlubGluZSBib3ggaXRlbXMpLgogICAgIHNpemVfdCBpbmxp
bmVCb3hTdGFydCA9IDA7CiAgICAgc2l6ZV90IGlubGluZUJveEVuZCA9IDA7CisgICAgYXV0byBo
YXNUZXh0QW5kTGluZUJyZWFrT25seUNvbnRlbnQgPSB0cnVlOwogICAgIGF1dG8gaW5saW5lTGV2
ZWxJdGVtcyA9IEhhc2hTZXQ8Y29uc3QgQm94Kj4geyB9OwogICAgIGZvciAoYXV0byYgaW5saW5l
SXRlbSA6IGlubGluZUNvbnRlbnRDYWNoZSgpLmlubGluZUl0ZW1zKCkuY29udGVudCgpKSB7Ci0g
ICAgICAgIGlmIChpbmxpbmVJdGVtLmlzSW5saW5lQm94U3RhcnQoKSkKKyAgICAgICAgaWYgKGlu
bGluZUl0ZW0uaXNJbmxpbmVCb3hTdGFydCgpKSB7CiAgICAgICAgICAgICArK2lubGluZUJveFN0
YXJ0OwotICAgICAgICBlbHNlIGlmIChpbmxpbmVJdGVtLmlzSW5saW5lQm94RW5kKCkpCisgICAg
ICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoaW5saW5lSXRlbS5pc0lu
bGluZUJveEVuZCgpKSB7CiAgICAgICAgICAgICArK2lubGluZUJveEVuZDsKLSAgICAgICAgZWxz
ZSB7Ci0gICAgICAgICAgICBhdXRvIGhhc1RvQmVVbmlxdWVMYXlvdXRCb3ggPSBpbmxpbmVJdGVt
LmlzQXRvbWljSW5saW5lQm94KCkgfHwgaW5saW5lSXRlbS5pc0Zsb2F0KCkgfHwgaW5saW5lSXRl
bS5pc0hhcmRMaW5lQnJlYWsoKTsKLSAgICAgICAgICAgIGlmIChoYXNUb0JlVW5pcXVlTGF5b3V0
Qm94KQotICAgICAgICAgICAgICAgIEFTU0VSVChpbmxpbmVMZXZlbEl0ZW1zLmFkZCgmaW5saW5l
SXRlbS5sYXlvdXRCb3goKSkuaXNOZXdFbnRyeSk7CisgICAgICAgICAgICBjb250aW51ZTsKICAg
ICAgICAgfQorICAgICAgICBhdXRvIGhhc1RvQmVVbmlxdWVMYXlvdXRCb3ggPSBpbmxpbmVJdGVt
LmlzQXRvbWljSW5saW5lQm94KCkgfHwgaW5saW5lSXRlbS5pc0Zsb2F0KCkgfHwgaW5saW5lSXRl
bS5pc0hhcmRMaW5lQnJlYWsoKTsKKyAgICAgICAgaWYgKGhhc1RvQmVVbmlxdWVMYXlvdXRCb3gp
CisgICAgICAgICAgICBBU1NFUlQoaW5saW5lTGV2ZWxJdGVtcy5hZGQoJmlubGluZUl0ZW0ubGF5
b3V0Qm94KCkpLmlzTmV3RW50cnkpOworICAgICAgICBoYXNUZXh0QW5kTGluZUJyZWFrT25seUNv
bnRlbnQgJj0gaXNUZXh0T3JMaW5lQnJlYWsoaW5saW5lSXRlbS5sYXlvdXRCb3goKSk7CiAgICAg
fQogICAgIEFTU0VSVChpbmxpbmVCb3hTdGFydCA9PSBpbmxpbmVCb3hFbmQpOworICAgIEFTU0VS
VChtX2lubGluZUJveENvdW50ID09IGlubGluZUJveFN0YXJ0KTsKKyAgICBBU1NFUlQobV9oYXNU
ZXh0QW5kTGluZUJyZWFrT25seUNvbnRlbnQgPT0gaGFzVGV4dEFuZExpbmVCcmVha09ubHlDb250
ZW50KTsKICNlbmRpZgogfQogCkBAIC0xODksMTEgKzIwMyw2IEBAIHZvaWQgSW5saW5lSXRlbXNC
dWlsZGVyOjpjb21wdXRlSW5saW5lQm94Qm91bmRhcnlUZXh0U3BhY2luZ3MoY29uc3QgSW5saW5l
SXRlbUxpCiAgICAgICAgIGlubGluZUNvbnRlbnRDYWNoZSgpLnNldElubGluZUJveEJvdW5kYXJ5
VGV4dFNwYWNpbmdzKFdURjo6bW92ZShzcGFjaW5ncykpOwogfQogCi1zdGF0aWMgaW5saW5lIGJv
b2wgaXNUZXh0T3JMaW5lQnJlYWsoY29uc3QgQm94JiBsYXlvdXRCb3gpCi17Ci0gICAgcmV0dXJu
IGxheW91dEJveC5pc0luRmxvdygpICYmIChsYXlvdXRCb3guaXNJbmxpbmVUZXh0Qm94KCkgfHwg
KGxheW91dEJveC5pc0xpbmVCcmVha0JveCgpICYmICFsYXlvdXRCb3guaXNXb3JkQnJlYWtPcHBv
cnR1bml0eSgpKSk7Ci19Ci0KIHN0YXRpYyBib29sIHJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyhj
b25zdCBCb3gmIGxheW91dEJveCkKIHsKICAgICBpZiAoYXV0byogaW5saW5lVGV4dEJveCA9IGR5
bmFtaWNEb3duY2FzdDxJbmxpbmVUZXh0Qm94PihsYXlvdXRCb3gpKQpAQCAtMjEyLDYgKzIyMSw3
IEBAIElubGluZUl0ZW1zQnVpbGRlcjo6TGF5b3V0UXVldWUgSW5saW5lSXRlbXNCdWlsZGVyOjp0
cmF2ZXJzZVVudGlsRGFtYWdlZChjb25zdCBCCiAgICAgYXV0byBhcHBlbmRBbmRDaGVja0ZvckRh
bWFnZSA9IFsmXSAoYXV0byYgbGF5b3V0Qm94KSB7CiAgICAgICAgIHF1ZXVlLmFwcGVuZChsYXlv
dXRCb3gpOwogICAgICAgICBtX2NvbnRlbnRSZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcgPSBtX2Nv
bnRlbnRSZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcgfHwgcmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5n
KGxheW91dEJveCk7CisgICAgICAgIG1faGFzVGV4dEFuZExpbmVCcmVha09ubHlDb250ZW50ICY9
IChsYXlvdXRCb3guaXNJbmxpbmVCb3goKSB8fCBpc1RleHRPckxpbmVCcmVhayhsYXlvdXRCb3gp
KTsKICAgICAgICAgcmV0dXJuICZsYXlvdXRCb3ggPT0gJmZpcnN0RGFtYWdlZExheW91dEJveDsK
ICAgICB9OwogCkBAIC0yMjQsNiArMjM0LDcgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRR
dWV1ZSBJbmxpbmVJdGVtc0J1aWxkZXI6OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAg
ICAgICAgICAgIGF1dG8gaXNJbmxpbmVCb3hXaXRoSW5saW5lQ29udGVudCA9IGxheW91dEJveC0+
aXNJbmxpbmVCb3goKSAmJiAhbGF5b3V0Qm94LT5pc0lubGluZVRleHRCb3goKSAmJiAhbGF5b3V0
Qm94LT5pc0xpbmVCcmVha0JveCgpICYmICFsYXlvdXRCb3gtPmlzT3V0T2ZGbG93UG9zaXRpb25l
ZCgpOwogICAgICAgICAgICAgaWYgKCFpc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50KQogICAg
ICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgKyttX2lubGluZUJveENvdW50OwogICAg
ICAgICAgICAgYXV0byogZmlyc3RDaGlsZCA9IGRvd25jYXN0PEVsZW1lbnRCb3g+KGxheW91dEJv
eCkuZmlyc3RDaGlsZCgpOwogICAgICAgICAgICAgaWYgKCFmaXJzdENoaWxkKQogICAgICAgICAg
ICAgICAgIGJyZWFrOwpAQCAtMzMzLDYgKzM0NCw4IEBAIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVy
Ojpjb2xsZWN0SW5saW5lSXRlbXMoSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1MaXN0LCBJbmxp
CiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKIAorICAgICAgICAgICAgbV9oYXNUZXh0QW5kTGluZUJyZWFrT25seUNvbnRlbnQgJj0gKGxh
eW91dEJveC0+aXNJbmxpbmVCb3goKSB8fCBpc1RleHRPckxpbmVCcmVhayhsYXlvdXRCb3gpKTsK
KwogICAgICAgICAgICAgaWYgKGF1dG8qIG5leHRTaWJsaW5nID0gbGF5b3V0Qm94LT5uZXh0U2li
bGluZygpKSB7CiAgICAgICAgICAgICAgICAgbGF5b3V0UXVldWUuYXBwZW5kKCpuZXh0U2libGlu
Zyk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC03NTIsMzQgKzc2NSwxMCBAQCBzdGF0aWMg
dm9pZCBoYW5kbGVUZXh0U3BhY2luZyhUZXh0U3BhY2luZzo6U3BhY2luZ1N0YXRlJiBzcGFjaW5n
U3RhdGUsIFRyaW1tYWJsZQogICAgICAgICBzcGFjaW5nU3RhdGUubGFzdENoYXJhY3RlckNsYXNz
RnJvbVByZXZpb3VzUnVuID0gVGV4dFNwYWNpbmc6OkNoYXJhY3RlckNsYXNzOjpVbmRlZmluZWQ7
CiB9CiAKLUlubGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OkNvbnRlbnRBdHRyaWJ1dGVz
IElubGluZUl0ZW1zQnVpbGRlcjo6Y29tcHV0ZUNvbnRlbnRBdHRyaWJ1dGVzQW5kSW5saW5lVGV4
dEl0ZW1XaWR0aHMoSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1MaXN0LCBJbmxpbmVJdGVtUG9z
aXRpb24gZGFtYWdlUG9zaXRpb24sIGNvbnN0IElubGluZUl0ZW1MaXN0JiBkYW1hZ2VkSXRlbUxp
c3QpCit2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6Y29tcHV0ZUlubGluZVRleHRJdGVtV2lkdGhz
QW5kVGV4dFNwYWNpbmcoSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1MaXN0KQogewotICAgIGlm
IChpbmxpbmVJdGVtTGlzdC5pc0VtcHR5KCkgJiYgIWRhbWFnZVBvc2l0aW9uKQotICAgICAgICBy
ZXR1cm4geyB9OwotCi0gICAgYm9vbCBpc1RleHRBbmRGb3JjZWRMaW5lQnJlYWtPbmx5Q29udGVu
dCA9IHRydWU7Ci0gICAgc2l6ZV90IGlubGluZUJveENvdW50ID0gMDsKLQotICAgIGF1dG8gY29t
cHV0ZUNvbnRlbnRBdHRyaWJ1dGVzVXBUb0RhbWFnZSA9IFsmXSB7Ci0gICAgICAgIGlmICghZGFt
YWdlUG9zaXRpb24pCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIC8vIENvbnRlbnRBdHRy
aWJ1dGVzOjpyZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcgaXMgbm90IGhhbmRsZWQgaGVyZSBhcyB3
ZSBkb24ndCBzdXBwb3J0IHBhcnRpYWwgbGF5b3V0IHdpdGggYmlkaSBjb250ZW50LgotICAgICAg
ICBBU1NFUlQoZGFtYWdlUG9zaXRpb24uaW5kZXggPCBkYW1hZ2VkSXRlbUxpc3Quc2l6ZSgpKTsK
LSAgICAgICAgZm9yIChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGRhbWFnZVBvc2l0aW9uLmlu
ZGV4ICYmIGluZGV4IDwgZGFtYWdlZEl0ZW1MaXN0LnNpemUoKTsgKytpbmRleCkgewotICAgICAg
ICAgICAgYXV0byYgaW5saW5lSXRlbSA9IGRhbWFnZWRJdGVtTGlzdFtpbmRleF07Ci0gICAgICAg
ICAgICBpZiAoaW5saW5lSXRlbS5pc1RleHQoKSkKLSAgICAgICAgICAgICAgICBjb250aW51ZTsK
LQotICAgICAgICAgICAgaWYgKGlubGluZUl0ZW0uaXNJbmxpbmVCb3hTdGFydCgpKSB7Ci0gICAg
ICAgICAgICAgICAgKytpbmxpbmVCb3hDb3VudDsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgaWYgKCFpbmxpbmVJdGVtLmlzSW5saW5lQm94
RW5kKCkpCi0gICAgICAgICAgICAgICAgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNvbnRl
bnQgPSBpc1RleHRBbmRGb3JjZWRMaW5lQnJlYWtPbmx5Q29udGVudCAmJiBpc1RleHRPckxpbmVC
cmVhayhpbmxpbmVJdGVtLmxheW91dEJveCgpKTsKLSAgICAgICAgfQotICAgIH07Ci0gICAgY29t
cHV0ZUNvbnRlbnRBdHRyaWJ1dGVzVXBUb0RhbWFnZSgpOworICAgIGlmIChpbmxpbmVJdGVtTGlz
dC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKIAogICAgIGlmIChtX2hhc1RleHRBdXRvc3Bh
Y2UpCiAgICAgICAgIGNvbXB1dGVJbmxpbmVCb3hCb3VuZGFyeVRleHRTcGFjaW5ncyhpbmxpbmVJ
dGVtTGlzdCk7CkBAIC04MjYsMTggKzgxNSw4IEBAIElubGluZUNvbnRlbnRDYWNoZTo6SW5saW5l
SXRlbXM6OkNvbnRlbnRBdHRyaWJ1dGVzIElubGluZUl0ZW1zQnVpbGRlcjo6Y29tcHV0ZUNvCiAg
ICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogICAgICAgICBzcGFjaW5nU3RhdGUubGFz
dENoYXJhY3RlckNsYXNzRnJvbVByZXZpb3VzUnVuID0gVGV4dFNwYWNpbmc6OkNoYXJhY3RlckNs
YXNzOjpVbmRlZmluZWQ7Ci0KLSAgICAgICAgaWYgKGlubGluZUl0ZW0uaXNJbmxpbmVCb3hTdGFy
dCgpKSB7Ci0gICAgICAgICAgICArK2lubGluZUJveENvdW50OwotICAgICAgICAgICAgY29udGlu
dWU7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoIWlubGluZUl0ZW0uaXNJbmxpbmVCb3hFbmQo
KSkKLSAgICAgICAgICAgIGlzVGV4dEFuZEZvcmNlZExpbmVCcmVha09ubHlDb250ZW50ID0gaXNU
ZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNvbnRlbnQgJiYgaXNUZXh0T3JMaW5lQnJlYWsoaW5s
aW5lSXRlbS5sYXlvdXRCb3goKSk7CiAgICAgfQogICAgIGlubGluZUNvbnRlbnRDYWNoZSgpLnNl
dFRyaW1tYWJsZVRleHRTcGFjaW5ncyhXVEY6Om1vdmUodHJpbW1hYmxlVGV4dFNwYWNpbmdzKSk7
Ci0KLSAgICByZXR1cm4geyBtX2NvbnRlbnRSZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcsIGlzVGV4
dEFuZEZvcmNlZExpbmVCcmVha09ubHlDb250ZW50LCBtX2hhc1RleHRBdXRvc3BhY2UsIGlubGlu
ZUJveENvdW50IH07CiB9CiAKIGJvb2wgSW5saW5lSXRlbXNCdWlsZGVyOjpidWlsZElubGluZUl0
ZW1MaXN0Rm9yVGV4dEZyb21CcmVha2luZ1Bvc2l0aW9uc0NhY2hlKGNvbnN0IElubGluZVRleHRC
b3gmIGlubGluZVRleHRCb3gsIElubGluZUl0ZW1MaXN0JiBpbmxpbmVJdGVtTGlzdCkKQEAgLTEw
MDEsNiArOTgwLDcgQEAgdm9pZCBJbmxpbmVJdGVtc0J1aWxkZXI6OmhhbmRsZUlubGluZUJveFN0
YXJ0KGNvbnN0IEJveCYgaW5saW5lQm94LCBJbmxpbmVJdGVtTGkKICAgICBpbmxpbmVJdGVtTGlz
dC5hcHBlbmQoeyBpbmxpbmVCb3gsIElubGluZUl0ZW06OlR5cGU6OklubGluZUJveFN0YXJ0IH0p
OwogICAgIG1fY29udGVudFJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyB8PSByZXF1aXJlc1Zpc3Vh
bFJlb3JkZXJpbmcoaW5saW5lQm94KTsKICAgICBtX2hhc1RleHRBdXRvc3BhY2UgfD0gIWlubGlu
ZUJveC5zdHlsZSgpLnRleHRBdXRvc3BhY2UoKS5pc05vQXV0b3NwYWNlKCk7CisgICAgKyttX2lu
bGluZUJveENvdW50OwogfQogCiB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6aGFuZGxlSW5saW5l
Qm94RW5kKGNvbnN0IEJveCYgaW5saW5lQm94LCBJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRlbUxp
c3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRz
L2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3Jt
YXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oCmluZGV4IGE5MjY4Mjdl
OTI0OC4uMThkMjViYzdhZGM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9y
bWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxk
ZXIuaApAQCAtNTMsNyArNTMsNyBAQCBwcml2YXRlOgogICAgIExheW91dFF1ZXVlIGluaXRpYWxp
emVMYXlvdXRRdWV1ZShJbmxpbmVJdGVtUG9zaXRpb24gc3RhcnRQb3NpdGlvbik7CiAgICAgTGF5
b3V0UXVldWUgdHJhdmVyc2VVbnRpbERhbWFnZWQoY29uc3QgQm94JiBmaXJzdERhbWFnZWRMYXlv
dXRCb3gpOwogICAgIHZvaWQgYnJlYWtBbmRDb21wdXRlQmlkaUxldmVscyhJbmxpbmVJdGVtTGlz
dCYpOwotICAgIElubGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OkNvbnRlbnRBdHRyaWJ1
dGVzIGNvbXB1dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKElubGlu
ZUl0ZW1MaXN0JiwgSW5saW5lSXRlbVBvc2l0aW9uIGRhbWFnZVBvc2l0aW9uLCBjb25zdCBJbmxp
bmVJdGVtTGlzdCYgZGFtYWdlZEl0ZW1MaXN0KTsKKyAgICB2b2lkIGNvbXB1dGVJbmxpbmVUZXh0
SXRlbVdpZHRoc0FuZFRleHRTcGFjaW5nKElubGluZUl0ZW1MaXN0Jik7CiAKICAgICB2b2lkIGhh
bmRsZVRleHRDb250ZW50KGNvbnN0IElubGluZVRleHRCb3gmLCBJbmxpbmVJdGVtTGlzdCYsIHN0
ZDo6b3B0aW9uYWw8c2l6ZV90PiBwYXJ0aWFsQ29udGVudE9mZnNldCk7CiAgICAgYm9vbCBidWls
ZElubGluZUl0ZW1MaXN0Rm9yVGV4dEZyb21CcmVha2luZ1Bvc2l0aW9uc0NhY2hlKGNvbnN0IElu
bGluZVRleHRCb3gmLCBJbmxpbmVJdGVtTGlzdCYpOwpAQCAtNzMsNiArNzMsOCBAQCBwcml2YXRl
OgogICAgIGNvbnN0IEVsZW1lbnRCb3gmIG1fcm9vdDsKICAgICBjb25zdCBTZWN1cml0eU9yaWdp
biYgbV9zZWN1cml0eU9yaWdpbjsKIAorICAgIHNpemVfdCBtX2lubGluZUJveENvdW50IHsgMCB9
OworICAgIGJvb2wgbV9oYXNUZXh0QW5kTGluZUJyZWFrT25seUNvbnRlbnQgeyB0cnVlIH07IC8v
IE5vdGUgdGhhdCB0aGlzIGlzIHRydWUgZm9yIGNhc2VzIGxpa2UgPHNwYW4+dGV4dCBjb250ZW50
PC9zcGFuPgogICAgIGJvb2wgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nIHsgZmFs
c2UgfTsKICAgICBib29sIG1faGFzVGV4dEF1dG9zcGFjZSB7ICFyb290KCkuc3R5bGUoKS50ZXh0
QXV0b3NwYWNlKCkuaXNOb0F1dG9zcGFjZSgpIH07CiAgICAgc3RkOjpvcHRpb25hbDxib29sPiBt
X3RleHRDb250ZW50UG9wdWxhdGVkRnJvbUNhY2hlIHsgfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>478281</attachid>
            <date>2026-02-07 12:42:08 -0800</date>
            <delta_ts>2026-02-08 15:53:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-307233-20260207124207.patch</filename>
            <type>text/plain</type>
            <size>15389</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBhZGVmNjRkNDk4YmI1YzhjNzQ2M2VhZDgxMTFlMDM2OTM5OGFjZjg1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFNhdCwgNyBGZWIgMjAyNiAwNTo1MDoyNSAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIENvbXB1dGUg
Q29udGVudEF0dHJpYnV0ZXMgd2hpbGUgY29sbGVjdGluZyBpbmxpbmUgaXRlbXMKIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDcyMzMKClJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgoKQ3VycmVudGx5LCBJbmxpbmVJdGVtc0J1aWxkZXIgcGVyZm9ybXMgdHdvIHBh
c3NlczogdGhlIGZpcnN0IGNvbGxlY3RzIGlubGluZSBpdGVtcywgYW5kIHRoZSBzZWNvbmQgbWVh
c3VyZXMgdGV4dCB3aWR0aHMgYW5kCmRldGVybWluZXMgd2hldGhlciB0aGUgY29udGVudCBpcyB0
ZXh0LW9ubHksIGFzIHdlbGwgYXMgdGhlIG51bWJlciBvZiBpbmxpbmUgYm94ZXMuCgpUaGlzIHBh
dGNoIG1vdmVzIHRoZSAnZGV0ZXJtaW5lcycgcGFydCB0byB0aGUgZmlyc3QgcGFzcy4gSXQgaXMg
YSBwcmVwYXJhdGlvbiBmb3IgYmVpbmcgYWJsZSB0byBkbyBvbmx5IG9uZSBwYXNzIG9uIHNpbXBs
ZSBjb250ZW50LgoKKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lu
bGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0Ojppc1RleHRPckxp
bmVCcmVhayk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQpOgoo
V2ViQ29yZTo6TGF5b3V0Ojppc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50KToKKFdlYkNvcmU6
OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjp0cmF2ZXJzZVVudGlsRGFtYWdlZCk6CihXZWJD
b3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6Y29sbGVjdElubGluZUl0ZW1zKToKKFdl
YkNvcmU6OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlSW5saW5lVGV4dEl0ZW1X
aWR0aHNBbmRUZXh0U3BhY2luZyk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRl
cjo6aGFuZGxlSW5saW5lQm94U3RhcnQpOgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1
aWxkZXI6OmNvbXB1dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKTog
RGVsZXRlZC4KKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGlu
ZS9JbmxpbmVJdGVtc0J1aWxkZXIuaDoKKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50ZWdyYXRp
b24vaW5saW5lL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHA6CihXZWJDb3JlOjpMYXlv
dXRJbnRlZ3JhdGlvbjo6TGluZUxheW91dDo6dXBkYXRlUmVuZGVyVHJlZVBvc2l0aW9ucyk6Ciog
U291cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcDoKKFdlYkNvcmU6
OkxheW91dDo6Qm94Ojppc0lubGluZUJveCBjb25zdCk6Ci0tLQogLi4uL2lubGluZS9JbmxpbmVJ
dGVtc0J1aWxkZXIuY3BwICAgICAgICAgICAgIHwgOTIgKysrKysrKystLS0tLS0tLS0tLQogLi4u
L2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuaCAgICAgICAgICAgICAgIHwgIDQgKy0KIC4uLi9p
bmxpbmUvTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcCAgICB8ICAyICstCiAuLi4vV2Vi
Q29yZS9sYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRCb3guY3BwICAgfCAgMiArLQogNCBmaWxlcyBj
aGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA1OCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVt
c0J1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9p
bmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcAppbmRleCBjMDFmMWU4ZjVhM2YuLjUxNDFmY2Jl
ZjFjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0
cy9pbmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlv
dXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCkBAIC04
Myw2ICs4MywxMSBAQCBzdGF0aWMgdW5zaWduZWQgbW92ZVRvTmV4dEJyZWFrYWJsZVBvc2l0aW9u
KHVuc2lnbmVkIHN0YXJ0UG9zaXRpb24sIENhY2hlZExpbmVCcgogICAgIHJldHVybiB0ZXh0TGVu
Z3RoIC0gc3RhcnRQb3NpdGlvbjsKIH0KIAorc3RhdGljIGlubGluZSBib29sIGlzVGV4dE9yTGlu
ZUJyZWFrKGNvbnN0IEJveCYgbGF5b3V0Qm94KQoreworICAgIHJldHVybiBsYXlvdXRCb3guaXNJ
bkZsb3coKSAmJiAobGF5b3V0Qm94LmlzSW5saW5lVGV4dEJveCgpIHx8IChsYXlvdXRCb3guaXNM
aW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0Qm94LmlzV29yZEJyZWFrT3Bwb3J0dW5pdHkoKSkpOwor
fQorCiBJbmxpbmVJdGVtc0J1aWxkZXI6OklubGluZUl0ZW1zQnVpbGRlcihJbmxpbmVDb250ZW50
Q2FjaGUmIGlubGluZUNvbnRlbnRDYWNoZSwgY29uc3QgRWxlbWVudEJveCYgcm9vdCwgY29uc3Qg
U2VjdXJpdHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQogICAgIDogbV9pbmxpbmVDb250ZW50Q2Fj
aGUoaW5saW5lQ29udGVudENhY2hlKQogICAgICwgbV9yb290KHJvb3QpCkBAIC0xMDAsMTEgKzEw
NSwxNCBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQoSW5saW5lSXRlbVBvc2l0aW9u
IHN0YXJ0UG9zaXRpb24pCiAgICAgICAgIGJyZWFrQW5kQ29tcHV0ZUJpZGlMZXZlbHMoaW5saW5l
SXRlbUxpc3QpOwogICAgIH0KIAotICAgIGF1dG8mIGlubGluZUl0ZW1DYWNoZSA9IGlubGluZUNv
bnRlbnRDYWNoZSgpLmlubGluZUl0ZW1zKCk7Ci0gICAgYXV0byBjb250ZW50QXR0cmlidXRlcyA9
IGNvbXB1dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKGlubGluZUl0
ZW1MaXN0LCBzdGFydFBvc2l0aW9uLCBpbmxpbmVJdGVtQ2FjaGUuY29udGVudCgpKTsKKyAgICBj
b21wdXRlSW5saW5lVGV4dEl0ZW1XaWR0aHNBbmRUZXh0U3BhY2luZyhpbmxpbmVJdGVtTGlzdCk7
CisKICAgICBhdXRvIGFkanVzdElubGluZUNvbnRlbnRDYWNoZVdpdGhOZXdJbmxpbmVJdGVtcyA9
IFsmXSB7Ci0gICAgICAgIEFTU0VSVCghc3RhcnRQb3NpdGlvbiB8fCBzdGFydFBvc2l0aW9uLmlu
ZGV4IDwgaW5saW5lSXRlbUNhY2hlLmNvbnRlbnQoKS5zaXplKCkpOworICAgICAgICBBU1NFUlQo
IXN0YXJ0UG9zaXRpb24gfHwgc3RhcnRQb3NpdGlvbi5pbmRleCA8IGlubGluZUNvbnRlbnRDYWNo
ZSgpLmlubGluZUl0ZW1zKCkuY29udGVudCgpLnNpemUoKSk7CisKKyAgICAgICAgYXV0byBjb250
ZW50QXR0cmlidXRlcyA9IElubGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OkNvbnRlbnRB
dHRyaWJ1dGVzIHsgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nLCBtX2hhc1RleHRB
bmRMaW5lQnJlYWtPbmx5Q29udGVudCwgbV9oYXNUZXh0QXV0b3NwYWNlLCBtX2lubGluZUJveENv
dW50IH07CiAgICAgICAgIGF1dG8gaXNQb3B1bGF0ZWRGcm9tQ2FjaGUgPSBtX3RleHRDb250ZW50
UG9wdWxhdGVkRnJvbUNhY2hlICYmICptX3RleHRDb250ZW50UG9wdWxhdGVkRnJvbUNhY2hlID8g
SW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6SXNQb3B1bGF0ZWRGcm9tQ2FjaGU6Olll
cyA6IElubGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OklzUG9wdWxhdGVkRnJvbUNhY2hl
OjpObzsKKyAgICAgICAgYXV0byYgaW5saW5lSXRlbUNhY2hlID0gaW5saW5lQ29udGVudENhY2hl
KCkuaW5saW5lSXRlbXMoKTsKICAgICAgICAgaWYgKCFzdGFydFBvc2l0aW9uIHx8IHN0YXJ0UG9z
aXRpb24uaW5kZXggPj0gaW5saW5lSXRlbUNhY2hlLmNvbnRlbnQoKS5zaXplKCkpCiAgICAgICAg
ICAgICByZXR1cm4gaW5saW5lSXRlbUNhY2hlLnNldChXVEY6Om1vdmUoaW5saW5lSXRlbUxpc3Qp
LCBjb250ZW50QXR0cmlidXRlcywgaXNQb3B1bGF0ZWRGcm9tQ2FjaGUpOwogICAgICAgICBpbmxp
bmVJdGVtQ2FjaGUucmVwbGFjZShzdGFydFBvc2l0aW9uLmluZGV4LCBXVEY6Om1vdmUoaW5saW5l
SXRlbUxpc3QpLCBjb250ZW50QXR0cmlidXRlcywgaXNQb3B1bGF0ZWRGcm9tQ2FjaGUpOwpAQCAt
MTE1LDE5ICsxMjMsMjUgQEAgdm9pZCBJbmxpbmVJdGVtc0J1aWxkZXI6OmJ1aWxkKElubGluZUl0
ZW1Qb3NpdGlvbiBzdGFydFBvc2l0aW9uKQogICAgIC8vIENoZWNrIGlmIHdlJ3ZlIGdvdCBtYXRj
aGluZyBpbmxpbmUgYm94IHN0YXJ0L2VuZCBwYWlycyBhbmQgdW5pcXVlIGlubGluZSBsZXZlbCBp
dGVtcyAobm9uLXRleHQsIG5vbi1pbmxpbmUgYm94IGl0ZW1zKS4KICAgICBzaXplX3QgaW5saW5l
Qm94U3RhcnQgPSAwOwogICAgIHNpemVfdCBpbmxpbmVCb3hFbmQgPSAwOworICAgIGF1dG8gaGFz
VGV4dEFuZExpbmVCcmVha09ubHlDb250ZW50ID0gdHJ1ZTsKICAgICBhdXRvIGlubGluZUxldmVs
SXRlbXMgPSBIYXNoU2V0PGNvbnN0IEJveCo+IHsgfTsKICAgICBmb3IgKGF1dG8mIGlubGluZUl0
ZW0gOiBpbmxpbmVDb250ZW50Q2FjaGUoKS5pbmxpbmVJdGVtcygpLmNvbnRlbnQoKSkgewotICAg
ICAgICBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJveFN0YXJ0KCkpCisgICAgICAgIGlmIChpbmxp
bmVJdGVtLmlzSW5saW5lQm94U3RhcnQoKSkgewogICAgICAgICAgICAgKytpbmxpbmVCb3hTdGFy
dDsKLSAgICAgICAgZWxzZSBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJveEVuZCgpKQorICAgICAg
ICAgICAgY29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGlubGluZUl0ZW0uaXNJbmxp
bmVCb3hFbmQoKSkgewogICAgICAgICAgICAgKytpbmxpbmVCb3hFbmQ7Ci0gICAgICAgIGVsc2Ug
ewotICAgICAgICAgICAgYXV0byBoYXNUb0JlVW5pcXVlTGF5b3V0Qm94ID0gaW5saW5lSXRlbS5p
c0F0b21pY0lubGluZUJveCgpIHx8IGlubGluZUl0ZW0uaXNGbG9hdCgpIHx8IGlubGluZUl0ZW0u
aXNIYXJkTGluZUJyZWFrKCk7Ci0gICAgICAgICAgICBpZiAoaGFzVG9CZVVuaXF1ZUxheW91dEJv
eCkKLSAgICAgICAgICAgICAgICBBU1NFUlQoaW5saW5lTGV2ZWxJdGVtcy5hZGQoJmlubGluZUl0
ZW0ubGF5b3V0Qm94KCkpLmlzTmV3RW50cnkpOworICAgICAgICAgICAgY29udGludWU7CiAgICAg
ICAgIH0KKyAgICAgICAgYXV0byBoYXNUb0JlVW5pcXVlTGF5b3V0Qm94ID0gaW5saW5lSXRlbS5p
c0F0b21pY0lubGluZUJveCgpIHx8IGlubGluZUl0ZW0uaXNGbG9hdCgpIHx8IGlubGluZUl0ZW0u
aXNIYXJkTGluZUJyZWFrKCk7CisgICAgICAgIGlmIChoYXNUb0JlVW5pcXVlTGF5b3V0Qm94KQor
ICAgICAgICAgICAgQVNTRVJUKGlubGluZUxldmVsSXRlbXMuYWRkKCZpbmxpbmVJdGVtLmxheW91
dEJveCgpKS5pc05ld0VudHJ5KTsKKyAgICAgICAgaGFzVGV4dEFuZExpbmVCcmVha09ubHlDb250
ZW50ICY9IGlzVGV4dE9yTGluZUJyZWFrKGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpOwogICAgIH0K
ICAgICBBU1NFUlQoaW5saW5lQm94U3RhcnQgPT0gaW5saW5lQm94RW5kKTsKKyAgICBBU1NFUlQo
bV9pbmxpbmVCb3hDb3VudCA9PSBpbmxpbmVCb3hTdGFydCk7CisgICAgQVNTRVJUKG1faGFzVGV4
dEFuZExpbmVCcmVha09ubHlDb250ZW50ID09IGhhc1RleHRBbmRMaW5lQnJlYWtPbmx5Q29udGVu
dCk7CiAjZW5kaWYKIH0KIApAQCAtMTg5LDExICsyMDMsNiBAQCB2b2lkIElubGluZUl0ZW1zQnVp
bGRlcjo6Y29tcHV0ZUlubGluZUJveEJvdW5kYXJ5VGV4dFNwYWNpbmdzKGNvbnN0IElubGluZUl0
ZW1MaQogICAgICAgICBpbmxpbmVDb250ZW50Q2FjaGUoKS5zZXRJbmxpbmVCb3hCb3VuZGFyeVRl
eHRTcGFjaW5ncyhXVEY6Om1vdmUoc3BhY2luZ3MpKTsKIH0KIAotc3RhdGljIGlubGluZSBib29s
IGlzVGV4dE9yTGluZUJyZWFrKGNvbnN0IEJveCYgbGF5b3V0Qm94KQotewotICAgIHJldHVybiBs
YXlvdXRCb3guaXNJbkZsb3coKSAmJiAobGF5b3V0Qm94LmlzSW5saW5lVGV4dEJveCgpIHx8IChs
YXlvdXRCb3guaXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0Qm94LmlzV29yZEJyZWFrT3Bwb3J0
dW5pdHkoKSkpOwotfQotCiBzdGF0aWMgYm9vbCByZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcoY29u
c3QgQm94JiBsYXlvdXRCb3gpCiB7CiAgICAgaWYgKGF1dG8qIGlubGluZVRleHRCb3ggPSBkeW5h
bWljRG93bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KSkKQEAgLTIwNSw2ICsyMTQsMTEg
QEAgc3RhdGljIGJvb2wgcmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nKGNvbnN0IEJveCYgbGF5b3V0
Qm94KQogICAgIHJldHVybiBmYWxzZTsKIH0KIAorc3RhdGljIGlubGluZSBib29sIGlzSW5saW5l
Qm94V2l0aElubGluZUNvbnRlbnQoY29uc3QgQm94JiBsYXlvdXRCb3gpCit7CisgICAgcmV0dXJu
IGxheW91dEJveC5pc0lubGluZUJveCgpICYmICFsYXlvdXRCb3guaXNMaW5lQnJlYWtCb3goKSAm
JiAhbGF5b3V0Qm94LmlzT3V0T2ZGbG93UG9zaXRpb25lZCgpOworfQorCiBJbmxpbmVJdGVtc0J1
aWxkZXI6OkxheW91dFF1ZXVlIElubGluZUl0ZW1zQnVpbGRlcjo6dHJhdmVyc2VVbnRpbERhbWFn
ZWQoY29uc3QgQm94JiBmaXJzdERhbWFnZWRMYXlvdXRCb3gpCiB7CiAgICAgTGF5b3V0UXVldWUg
cXVldWU7CkBAIC0yMTIsNiArMjI2LDcgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRRdWV1
ZSBJbmxpbmVJdGVtc0J1aWxkZXI6OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAgICBh
dXRvIGFwcGVuZEFuZENoZWNrRm9yRGFtYWdlID0gWyZdIChhdXRvJiBsYXlvdXRCb3gpIHsKICAg
ICAgICAgcXVldWUuYXBwZW5kKGxheW91dEJveCk7CiAgICAgICAgIG1fY29udGVudFJlcXVpcmVz
VmlzdWFsUmVvcmRlcmluZyA9IG1fY29udGVudFJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyB8fCBy
ZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcobGF5b3V0Qm94KTsKKyAgICAgICAgbV9oYXNUZXh0QW5k
TGluZUJyZWFrT25seUNvbnRlbnQgJj0gKGlzSW5saW5lQm94V2l0aElubGluZUNvbnRlbnQobGF5
b3V0Qm94KSB8fCBpc1RleHRPckxpbmVCcmVhayhsYXlvdXRCb3gpKTsKICAgICAgICAgcmV0dXJu
ICZsYXlvdXRCb3ggPT0gJmZpcnN0RGFtYWdlZExheW91dEJveDsKICAgICB9OwogCkBAIC0yMjEs
OSArMjM2LDkgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRRdWV1ZSBJbmxpbmVJdGVtc0J1
aWxkZXI6OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAgICB3aGlsZSAoIXF1ZXVlLmlz
RW1wdHkoKSkgewogICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICAgYXV0byBsYXlv
dXRCb3ggPSBxdWV1ZS5sYXN0KCk7Ci0gICAgICAgICAgICBhdXRvIGlzSW5saW5lQm94V2l0aElu
bGluZUNvbnRlbnQgPSBsYXlvdXRCb3gtPmlzSW5saW5lQm94KCkgJiYgIWxheW91dEJveC0+aXNJ
bmxpbmVUZXh0Qm94KCkgJiYgIWxheW91dEJveC0+aXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0
Qm94LT5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKTsKLSAgICAgICAgICAgIGlmICghaXNJbmxpbmVC
b3hXaXRoSW5saW5lQ29udGVudCkKKyAgICAgICAgICAgIGlmICghaXNJbmxpbmVCb3hXaXRoSW5s
aW5lQ29udGVudChsYXlvdXRCb3gpKQogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgKyttX2lubGluZUJveENvdW50OwogICAgICAgICAgICAgYXV0byogZmlyc3RDaGlsZCA9IGRv
d25jYXN0PEVsZW1lbnRCb3g+KGxheW91dEJveCkuZmlyc3RDaGlsZCgpOwogICAgICAgICAgICAg
aWYgKCFmaXJzdENoaWxkKQogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzA0LDggKzMxOSw3
IEBAIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb2xsZWN0SW5saW5lSXRlbXMoSW5saW5lSXRl
bUxpc3QmIGlubGluZUl0ZW1MaXN0LCBJbmxpCiAgICAgd2hpbGUgKCFsYXlvdXRRdWV1ZS5pc0Vt
cHR5KCkpIHsKICAgICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICAgICAgIGF1dG8gbGF5b3V0
Qm94ID0gbGF5b3V0UXVldWUubGFzdCgpOwotICAgICAgICAgICAgYXV0byBpc0lubGluZUJveFdp
dGhJbmxpbmVDb250ZW50ID0gbGF5b3V0Qm94LT5pc0lubGluZUJveCgpICYmICFsYXlvdXRCb3gt
PmlzSW5saW5lVGV4dEJveCgpICYmICFsYXlvdXRCb3gtPmlzTGluZUJyZWFrQm94KCkgJiYgIWxh
eW91dEJveC0+aXNPdXRPZkZsb3dQb3NpdGlvbmVkKCk7Ci0gICAgICAgICAgICBpZiAoIWlzSW5s
aW5lQm94V2l0aElubGluZUNvbnRlbnQpCisgICAgICAgICAgICBpZiAoIWlzSW5saW5lQm94V2l0
aElubGluZUNvbnRlbnQobGF5b3V0Qm94KSkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgICAgIC8vIFRoaXMgaXMgdGhlIHN0YXJ0IG9mIGFuIGlubGluZSBib3ggKGUuZy4gPHNwYW4+
KS4KICAgICAgICAgICAgIGhhbmRsZUlubGluZUJveFN0YXJ0KGxheW91dEJveCwgaW5saW5lSXRl
bUxpc3QpOwpAQCAtMzE3LDYgKzMzMSw3IEBAIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb2xs
ZWN0SW5saW5lSXRlbXMoSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1MaXN0LCBJbmxpCiAKICAg
ICAgICAgd2hpbGUgKCFsYXlvdXRRdWV1ZS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIGF1dG8g
bGF5b3V0Qm94ID0gbGF5b3V0UXVldWUudGFrZUxhc3QoKTsKKyAgICAgICAgICAgIG1faGFzVGV4
dEFuZExpbmVCcmVha09ubHlDb250ZW50ICY9IChpc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50
KGxheW91dEJveCkgfHwgaXNUZXh0T3JMaW5lQnJlYWsobGF5b3V0Qm94KSk7CiAgICAgICAgICAg
ICBpZiAobGF5b3V0Qm94LT5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKSkKICAgICAgICAgICAgICAg
ICBpbmxpbmVJdGVtTGlzdC5hcHBlbmQoeyBsYXlvdXRCb3gsIElubGluZUl0ZW06OlR5cGU6Ok9w
YXF1ZSB9KTsKICAgICAgICAgICAgIGVsc2UgaWYgKGF1dG8qIGlubGluZVRleHRCb3ggPSBkeW5h
bWljRG93bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94LmdldCgpKSkKQEAgLTc1MiwzNCAr
NzY3LDEwIEBAIHN0YXRpYyB2b2lkIGhhbmRsZVRleHRTcGFjaW5nKFRleHRTcGFjaW5nOjpTcGFj
aW5nU3RhdGUmIHNwYWNpbmdTdGF0ZSwgVHJpbW1hYmxlCiAgICAgICAgIHNwYWNpbmdTdGF0ZS5s
YXN0Q2hhcmFjdGVyQ2xhc3NGcm9tUHJldmlvdXNSdW4gPSBUZXh0U3BhY2luZzo6Q2hhcmFjdGVy
Q2xhc3M6OlVuZGVmaW5lZDsKIH0KIAotSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6
Q29udGVudEF0dHJpYnV0ZXMgSW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlQ29udGVudEF0dHJp
YnV0ZXNBbmRJbmxpbmVUZXh0SXRlbVdpZHRocyhJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRlbUxp
c3QsIElubGluZUl0ZW1Qb3NpdGlvbiBkYW1hZ2VQb3NpdGlvbiwgY29uc3QgSW5saW5lSXRlbUxp
c3QmIGRhbWFnZWRJdGVtTGlzdCkKK3ZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlSW5s
aW5lVGV4dEl0ZW1XaWR0aHNBbmRUZXh0U3BhY2luZyhJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRl
bUxpc3QpCiB7Ci0gICAgaWYgKGlubGluZUl0ZW1MaXN0LmlzRW1wdHkoKSAmJiAhZGFtYWdlUG9z
aXRpb24pCi0gICAgICAgIHJldHVybiB7IH07Ci0KLSAgICBib29sIGlzVGV4dEFuZEZvcmNlZExp
bmVCcmVha09ubHlDb250ZW50ID0gdHJ1ZTsKLSAgICBzaXplX3QgaW5saW5lQm94Q291bnQgPSAw
OwotCi0gICAgYXV0byBjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNVcFRvRGFtYWdlID0gWyZdIHsK
LSAgICAgICAgaWYgKCFkYW1hZ2VQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAg
ICAgLy8gQ29udGVudEF0dHJpYnV0ZXM6OnJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyBpcyBub3Qg
aGFuZGxlZCBoZXJlIGFzIHdlIGRvbid0IHN1cHBvcnQgcGFydGlhbCBsYXlvdXQgd2l0aCBiaWRp
IGNvbnRlbnQuCi0gICAgICAgIEFTU0VSVChkYW1hZ2VQb3NpdGlvbi5pbmRleCA8IGRhbWFnZWRJ
dGVtTGlzdC5zaXplKCkpOwotICAgICAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwg
ZGFtYWdlUG9zaXRpb24uaW5kZXggJiYgaW5kZXggPCBkYW1hZ2VkSXRlbUxpc3Quc2l6ZSgpOyAr
K2luZGV4KSB7Ci0gICAgICAgICAgICBhdXRvJiBpbmxpbmVJdGVtID0gZGFtYWdlZEl0ZW1MaXN0
W2luZGV4XTsKLSAgICAgICAgICAgIGlmIChpbmxpbmVJdGVtLmlzVGV4dCgpKQotICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJv
eFN0YXJ0KCkpIHsKLSAgICAgICAgICAgICAgICArK2lubGluZUJveENvdW50OwotICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBpZiAoIWlubGlu
ZUl0ZW0uaXNJbmxpbmVCb3hFbmQoKSkKLSAgICAgICAgICAgICAgICBpc1RleHRBbmRGb3JjZWRM
aW5lQnJlYWtPbmx5Q29udGVudCA9IGlzVGV4dEFuZEZvcmNlZExpbmVCcmVha09ubHlDb250ZW50
ICYmIGlzVGV4dE9yTGluZUJyZWFrKGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpOwotICAgICAgICB9
Ci0gICAgfTsKLSAgICBjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNVcFRvRGFtYWdlKCk7CisgICAg
aWYgKGlubGluZUl0ZW1MaXN0LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOwogCiAgICAgaWYg
KG1faGFzVGV4dEF1dG9zcGFjZSkKICAgICAgICAgY29tcHV0ZUlubGluZUJveEJvdW5kYXJ5VGV4
dFNwYWNpbmdzKGlubGluZUl0ZW1MaXN0KTsKQEAgLTgyNiwxOCArODE3LDggQEAgSW5saW5lQ29u
dGVudENhY2hlOjpJbmxpbmVJdGVtczo6Q29udGVudEF0dHJpYnV0ZXMgSW5saW5lSXRlbXNCdWls
ZGVyOjpjb21wdXRlQ28KICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAg
IHNwYWNpbmdTdGF0ZS5sYXN0Q2hhcmFjdGVyQ2xhc3NGcm9tUHJldmlvdXNSdW4gPSBUZXh0U3Bh
Y2luZzo6Q2hhcmFjdGVyQ2xhc3M6OlVuZGVmaW5lZDsKLQotICAgICAgICBpZiAoaW5saW5lSXRl
bS5pc0lubGluZUJveFN0YXJ0KCkpIHsKLSAgICAgICAgICAgICsraW5saW5lQm94Q291bnQ7Ci0g
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmICghaW5saW5lSXRl
bS5pc0lubGluZUJveEVuZCgpKQotICAgICAgICAgICAgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFr
T25seUNvbnRlbnQgPSBpc1RleHRBbmRGb3JjZWRMaW5lQnJlYWtPbmx5Q29udGVudCAmJiBpc1Rl
eHRPckxpbmVCcmVhayhpbmxpbmVJdGVtLmxheW91dEJveCgpKTsKICAgICB9CiAgICAgaW5saW5l
Q29udGVudENhY2hlKCkuc2V0VHJpbW1hYmxlVGV4dFNwYWNpbmdzKFdURjo6bW92ZSh0cmltbWFi
bGVUZXh0U3BhY2luZ3MpKTsKLQotICAgIHJldHVybiB7IG1fY29udGVudFJlcXVpcmVzVmlzdWFs
UmVvcmRlcmluZywgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNvbnRlbnQsIG1faGFzVGV4
dEF1dG9zcGFjZSwgaW5saW5lQm94Q291bnQgfTsKIH0KIAogYm9vbCBJbmxpbmVJdGVtc0J1aWxk
ZXI6OmJ1aWxkSW5saW5lSXRlbUxpc3RGb3JUZXh0RnJvbUJyZWFraW5nUG9zaXRpb25zQ2FjaGUo
Y29uc3QgSW5saW5lVGV4dEJveCYgaW5saW5lVGV4dEJveCwgSW5saW5lSXRlbUxpc3QmIGlubGlu
ZUl0ZW1MaXN0KQpAQCAtMTAwMSw2ICs5ODIsNyBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6
aGFuZGxlSW5saW5lQm94U3RhcnQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1MaQog
ICAgIGlubGluZUl0ZW1MaXN0LmFwcGVuZCh7IGlubGluZUJveCwgSW5saW5lSXRlbTo6VHlwZTo6
SW5saW5lQm94U3RhcnQgfSk7CiAgICAgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5n
IHw9IHJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyhpbmxpbmVCb3gpOwogICAgIG1faGFzVGV4dEF1
dG9zcGFjZSB8PSAhaW5saW5lQm94LnN0eWxlKCkudGV4dEF1dG9zcGFjZSgpLmlzTm9BdXRvc3Bh
Y2UoKTsKKyAgICArK21faW5saW5lQm94Q291bnQ7CiB9CiAKIHZvaWQgSW5saW5lSXRlbXNCdWls
ZGVyOjpoYW5kbGVJbmxpbmVCb3hFbmQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1M
aXN0JiBpbmxpbmVJdGVtTGlzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9m
b3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oIGIvU291cmNlL1dl
YkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNCdWlsZGVy
LmgKaW5kZXggYTkyNjgyN2U5MjQ4Li4xOGQyNWJjN2FkYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5l
L0lubGluZUl0ZW1zQnVpbGRlci5oCkBAIC01Myw3ICs1Myw3IEBAIHByaXZhdGU6CiAgICAgTGF5
b3V0UXVldWUgaW5pdGlhbGl6ZUxheW91dFF1ZXVlKElubGluZUl0ZW1Qb3NpdGlvbiBzdGFydFBv
c2l0aW9uKTsKICAgICBMYXlvdXRRdWV1ZSB0cmF2ZXJzZVVudGlsRGFtYWdlZChjb25zdCBCb3gm
IGZpcnN0RGFtYWdlZExheW91dEJveCk7CiAgICAgdm9pZCBicmVha0FuZENvbXB1dGVCaWRpTGV2
ZWxzKElubGluZUl0ZW1MaXN0Jik7Ci0gICAgSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVt
czo6Q29udGVudEF0dHJpYnV0ZXMgY29tcHV0ZUNvbnRlbnRBdHRyaWJ1dGVzQW5kSW5saW5lVGV4
dEl0ZW1XaWR0aHMoSW5saW5lSXRlbUxpc3QmLCBJbmxpbmVJdGVtUG9zaXRpb24gZGFtYWdlUG9z
aXRpb24sIGNvbnN0IElubGluZUl0ZW1MaXN0JiBkYW1hZ2VkSXRlbUxpc3QpOworICAgIHZvaWQg
Y29tcHV0ZUlubGluZVRleHRJdGVtV2lkdGhzQW5kVGV4dFNwYWNpbmcoSW5saW5lSXRlbUxpc3Qm
KTsKIAogICAgIHZvaWQgaGFuZGxlVGV4dENvbnRlbnQoY29uc3QgSW5saW5lVGV4dEJveCYsIElu
bGluZUl0ZW1MaXN0Jiwgc3RkOjpvcHRpb25hbDxzaXplX3Q+IHBhcnRpYWxDb250ZW50T2Zmc2V0
KTsKICAgICBib29sIGJ1aWxkSW5saW5lSXRlbUxpc3RGb3JUZXh0RnJvbUJyZWFraW5nUG9zaXRp
b25zQ2FjaGUoY29uc3QgSW5saW5lVGV4dEJveCYsIElubGluZUl0ZW1MaXN0Jik7CkBAIC03Myw2
ICs3Myw4IEBAIHByaXZhdGU6CiAgICAgY29uc3QgRWxlbWVudEJveCYgbV9yb290OwogICAgIGNv
bnN0IFNlY3VyaXR5T3JpZ2luJiBtX3NlY3VyaXR5T3JpZ2luOwogCisgICAgc2l6ZV90IG1faW5s
aW5lQm94Q291bnQgeyAwIH07CisgICAgYm9vbCBtX2hhc1RleHRBbmRMaW5lQnJlYWtPbmx5Q29u
dGVudCB7IHRydWUgfTsgLy8gTm90ZSB0aGF0IHRoaXMgaXMgdHJ1ZSBmb3IgY2FzZXMgbGlrZSA8
c3Bhbj50ZXh0IGNvbnRlbnQ8L3NwYW4+CiAgICAgYm9vbCBtX2NvbnRlbnRSZXF1aXJlc1Zpc3Vh
bFJlb3JkZXJpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9oYXNUZXh0QXV0b3NwYWNlIHsgIXJv
b3QoKS5zdHlsZSgpLnRleHRBdXRvc3BhY2UoKS5pc05vQXV0b3NwYWNlKCkgfTsKICAgICBzdGQ6
Om9wdGlvbmFsPGJvb2w+IG1fdGV4dENvbnRlbnRQb3B1bGF0ZWRGcm9tQ2FjaGUgeyB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJ
bnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0
aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwCmluZGV4IDg1NTYwODg5
ZDkxMC4uZGUwN2E1MTMzMDFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW50
ZWdyYXRpb24vaW5saW5lL0xheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbGF5b3V0L2ludGVncmF0aW9uL2lubGluZS9MYXlvdXRJbnRlZ3JhdGlvbkxp
bmVMYXlvdXQuY3BwCkBAIC01NjgsNyArNTY4LDcgQEAgdm9pZCBMaW5lTGF5b3V0Ojp1cGRhdGVS
ZW5kZXJUcmVlUG9zaXRpb25zKGNvbnN0IFZlY3RvcjxMaW5lQWRqdXN0bWVudD4mIGxpbmVBZGoK
IAogICAgIGlmIChtX2lubGluZUNvbnRlbnQpIHsKICAgICAgICAgZm9yIChhdXRvJiBib3ggOiBt
X2lubGluZUNvbnRlbnQtPmRpc3BsYXlDb250ZW50KCkuYm94ZXMpIHsKLSAgICAgICAgICAgIGlm
IChib3guaXNJbmxpbmVCb3goKSB8fCBib3guaXNUZXh0KCkpCisgICAgICAgICAgICBpZiAoYm94
LmlzSW5saW5lQm94KCkgfHwgYm94LmlzVGV4dE9yU29mdExpbmVCcmVhaygpKQogICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgICAgICBhdXRvJiBsYXlvdXRCb3ggPSBib3gubGF5
b3V0Qm94KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvbGF5b3V0dHJlZS9M
YXlvdXRCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94
LmNwcAppbmRleCA1ZTliMzE2YzNlM2EuLmEzYWY1MjNiMjljZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbGF5b3V0L2xheW91dHRyZWUvTGF5b3V0Qm94LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sYXlvdXQvbGF5b3V0dHJlZS9MYXlvdXRCb3guY3BwCkBAIC0yNzAsNyArMjcwLDcgQEAg
Ym9vbCBCb3g6OmlzSW5saW5lQm94KCkgY29uc3QKICAgICAvLyBBbiBpbmxpbmUgYm94IGlzIG9u
ZSB0aGF0IGlzIGJvdGggaW5saW5lLWxldmVsIGFuZCB3aG9zZSBjb250ZW50cyBwYXJ0aWNpcGF0
ZSBpbiBpdHMgY29udGFpbmluZyBpbmxpbmUgZm9ybWF0dGluZyBjb250ZXh0LgogICAgIC8vIEEg
bm9uLXJlcGxhY2VkIGVsZW1lbnQgd2l0aCBhICdkaXNwbGF5JyB2YWx1ZSBvZiAnaW5saW5lJyBn
ZW5lcmF0ZXMgYW4gaW5saW5lIGJveC4KICAgICBhdXRvIGRpc3BsYXkgPSBtX3N0eWxlLmRpc3Bs
YXkoKTsKLSAgICByZXR1cm4gKGRpc3BsYXkgPT0gRGlzcGxheVR5cGU6OklubGluZSB8fCBkaXNw
bGF5ID09IERpc3BsYXlUeXBlOjpSdWJ5IHx8IGRpc3BsYXkgPT0gRGlzcGxheVR5cGU6OlJ1YnlC
YXNlKSAmJiAhaXNSZXBsYWNlZEJveCgpOworICAgIHJldHVybiAoZGlzcGxheSA9PSBEaXNwbGF5
VHlwZTo6SW5saW5lIHx8IGRpc3BsYXkgPT0gRGlzcGxheVR5cGU6OlJ1YnkgfHwgZGlzcGxheSA9
PSBEaXNwbGF5VHlwZTo6UnVieUJhc2UpICYmICFpc1JlcGxhY2VkQm94KCkgJiYgaXM8RWxlbWVu
dEJveD4oKnRoaXMpOwogfQogCiBib29sIEJveDo6aXNBdG9taWNJbmxpbmVCb3goKSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>478286</attachid>
            <date>2026-02-08 15:53:47 -0800</date>
            <delta_ts>2026-02-09 07:27:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-307233-20260208155347.patch</filename>
            <type>text/plain</type>
            <size>13385</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAwMWExZDQ4MDgyOTg3YTIxM2MzNzc2MmFhYWYzMzlkNDdiZTVkZTE1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFN1biwgOCBGZWIgMjAyNiAxNTo1MjowNSAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIENvbXB1dGUg
Q29udGVudEF0dHJpYnV0ZXMgd2hpbGUgY29sbGVjdGluZyBpbmxpbmUgaXRlbXMKIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDcyMzMKClJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgoKQ3VycmVudGx5LCBJbmxpbmVJdGVtc0J1aWxkZXIgcGVyZm9ybXMgdHdvIHBh
c3NlczogdGhlIGZpcnN0IGNvbGxlY3RzIGlubGluZSBpdGVtcywgYW5kIHRoZSBzZWNvbmQgbWVh
c3VyZXMgdGV4dCB3aWR0aHMgYW5kCmRldGVybWluZXMgd2hldGhlciB0aGUgY29udGVudCBpcyB0
ZXh0LW9ubHksIGFzIHdlbGwgYXMgdGhlIG51bWJlciBvZiBpbmxpbmUgYm94ZXMuCgpUaGlzIHBh
dGNoIG1vdmVzIHRoZSAnZGV0ZXJtaW5lcycgcGFydCB0byB0aGUgZmlyc3QgcGFzcy4gSXQgaXMg
YSBwcmVwYXJhdGlvbiBmb3IgYmVpbmcgYWJsZSB0byBkbyBvbmx5IG9uZSBwYXNzIG9uIHNpbXBs
ZSBjb250ZW50LgoKKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lu
bGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0Ojppc1RleHRPckxp
bmVCcmVhayk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQpOgoo
V2ViQ29yZTo6TGF5b3V0Ojppc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50KToKKFdlYkNvcmU6
OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjp0cmF2ZXJzZVVudGlsRGFtYWdlZCk6CihXZWJD
b3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6Y29sbGVjdElubGluZUl0ZW1zKToKKFdl
YkNvcmU6OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlSW5saW5lVGV4dEl0ZW1X
aWR0aHNBbmRUZXh0U3BhY2luZyk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRl
cjo6aGFuZGxlSW5saW5lQm94U3RhcnQpOgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1
aWxkZXI6OmNvbXB1dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKTog
RGVsZXRlZC4KKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGlu
ZS9JbmxpbmVJdGVtc0J1aWxkZXIuaDoKLS0tCiAuLi4vaW5saW5lL0lubGluZUl0ZW1zQnVpbGRl
ci5jcHAgICAgICAgICAgICAgfCA5MiArKysrKysrKy0tLS0tLS0tLS0tCiAuLi4vaW5saW5lL0lu
bGluZUl0ZW1zQnVpbGRlci5oICAgICAgICAgICAgICAgfCAgNCArLQogMiBmaWxlcyBjaGFuZ2Vk
LCA0MCBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lSXRlbXNCdWlsZGVyLmNwcAppbmRleCBjMDFmMWU4ZjVhM2YuLjUxNDFmY2JlZjFjYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9y
bWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCkBAIC04Myw2ICs4
MywxMSBAQCBzdGF0aWMgdW5zaWduZWQgbW92ZVRvTmV4dEJyZWFrYWJsZVBvc2l0aW9uKHVuc2ln
bmVkIHN0YXJ0UG9zaXRpb24sIENhY2hlZExpbmVCcgogICAgIHJldHVybiB0ZXh0TGVuZ3RoIC0g
c3RhcnRQb3NpdGlvbjsKIH0KIAorc3RhdGljIGlubGluZSBib29sIGlzVGV4dE9yTGluZUJyZWFr
KGNvbnN0IEJveCYgbGF5b3V0Qm94KQoreworICAgIHJldHVybiBsYXlvdXRCb3guaXNJbkZsb3co
KSAmJiAobGF5b3V0Qm94LmlzSW5saW5lVGV4dEJveCgpIHx8IChsYXlvdXRCb3guaXNMaW5lQnJl
YWtCb3goKSAmJiAhbGF5b3V0Qm94LmlzV29yZEJyZWFrT3Bwb3J0dW5pdHkoKSkpOworfQorCiBJ
bmxpbmVJdGVtc0J1aWxkZXI6OklubGluZUl0ZW1zQnVpbGRlcihJbmxpbmVDb250ZW50Q2FjaGUm
IGlubGluZUNvbnRlbnRDYWNoZSwgY29uc3QgRWxlbWVudEJveCYgcm9vdCwgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQogICAgIDogbV9pbmxpbmVDb250ZW50Q2FjaGUoaW5s
aW5lQ29udGVudENhY2hlKQogICAgICwgbV9yb290KHJvb3QpCkBAIC0xMDAsMTEgKzEwNSwxNCBA
QCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQoSW5saW5lSXRlbVBvc2l0aW9uIHN0YXJ0
UG9zaXRpb24pCiAgICAgICAgIGJyZWFrQW5kQ29tcHV0ZUJpZGlMZXZlbHMoaW5saW5lSXRlbUxp
c3QpOwogICAgIH0KIAotICAgIGF1dG8mIGlubGluZUl0ZW1DYWNoZSA9IGlubGluZUNvbnRlbnRD
YWNoZSgpLmlubGluZUl0ZW1zKCk7Ci0gICAgYXV0byBjb250ZW50QXR0cmlidXRlcyA9IGNvbXB1
dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKGlubGluZUl0ZW1MaXN0
LCBzdGFydFBvc2l0aW9uLCBpbmxpbmVJdGVtQ2FjaGUuY29udGVudCgpKTsKKyAgICBjb21wdXRl
SW5saW5lVGV4dEl0ZW1XaWR0aHNBbmRUZXh0U3BhY2luZyhpbmxpbmVJdGVtTGlzdCk7CisKICAg
ICBhdXRvIGFkanVzdElubGluZUNvbnRlbnRDYWNoZVdpdGhOZXdJbmxpbmVJdGVtcyA9IFsmXSB7
Ci0gICAgICAgIEFTU0VSVCghc3RhcnRQb3NpdGlvbiB8fCBzdGFydFBvc2l0aW9uLmluZGV4IDwg
aW5saW5lSXRlbUNhY2hlLmNvbnRlbnQoKS5zaXplKCkpOworICAgICAgICBBU1NFUlQoIXN0YXJ0
UG9zaXRpb24gfHwgc3RhcnRQb3NpdGlvbi5pbmRleCA8IGlubGluZUNvbnRlbnRDYWNoZSgpLmlu
bGluZUl0ZW1zKCkuY29udGVudCgpLnNpemUoKSk7CisKKyAgICAgICAgYXV0byBjb250ZW50QXR0
cmlidXRlcyA9IElubGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OkNvbnRlbnRBdHRyaWJ1
dGVzIHsgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nLCBtX2hhc1RleHRBbmRMaW5l
QnJlYWtPbmx5Q29udGVudCwgbV9oYXNUZXh0QXV0b3NwYWNlLCBtX2lubGluZUJveENvdW50IH07
CiAgICAgICAgIGF1dG8gaXNQb3B1bGF0ZWRGcm9tQ2FjaGUgPSBtX3RleHRDb250ZW50UG9wdWxh
dGVkRnJvbUNhY2hlICYmICptX3RleHRDb250ZW50UG9wdWxhdGVkRnJvbUNhY2hlID8gSW5saW5l
Q29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6SXNQb3B1bGF0ZWRGcm9tQ2FjaGU6OlllcyA6IElu
bGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OklzUG9wdWxhdGVkRnJvbUNhY2hlOjpObzsK
KyAgICAgICAgYXV0byYgaW5saW5lSXRlbUNhY2hlID0gaW5saW5lQ29udGVudENhY2hlKCkuaW5s
aW5lSXRlbXMoKTsKICAgICAgICAgaWYgKCFzdGFydFBvc2l0aW9uIHx8IHN0YXJ0UG9zaXRpb24u
aW5kZXggPj0gaW5saW5lSXRlbUNhY2hlLmNvbnRlbnQoKS5zaXplKCkpCiAgICAgICAgICAgICBy
ZXR1cm4gaW5saW5lSXRlbUNhY2hlLnNldChXVEY6Om1vdmUoaW5saW5lSXRlbUxpc3QpLCBjb250
ZW50QXR0cmlidXRlcywgaXNQb3B1bGF0ZWRGcm9tQ2FjaGUpOwogICAgICAgICBpbmxpbmVJdGVt
Q2FjaGUucmVwbGFjZShzdGFydFBvc2l0aW9uLmluZGV4LCBXVEY6Om1vdmUoaW5saW5lSXRlbUxp
c3QpLCBjb250ZW50QXR0cmlidXRlcywgaXNQb3B1bGF0ZWRGcm9tQ2FjaGUpOwpAQCAtMTE1LDE5
ICsxMjMsMjUgQEAgdm9pZCBJbmxpbmVJdGVtc0J1aWxkZXI6OmJ1aWxkKElubGluZUl0ZW1Qb3Np
dGlvbiBzdGFydFBvc2l0aW9uKQogICAgIC8vIENoZWNrIGlmIHdlJ3ZlIGdvdCBtYXRjaGluZyBp
bmxpbmUgYm94IHN0YXJ0L2VuZCBwYWlycyBhbmQgdW5pcXVlIGlubGluZSBsZXZlbCBpdGVtcyAo
bm9uLXRleHQsIG5vbi1pbmxpbmUgYm94IGl0ZW1zKS4KICAgICBzaXplX3QgaW5saW5lQm94U3Rh
cnQgPSAwOwogICAgIHNpemVfdCBpbmxpbmVCb3hFbmQgPSAwOworICAgIGF1dG8gaGFzVGV4dEFu
ZExpbmVCcmVha09ubHlDb250ZW50ID0gdHJ1ZTsKICAgICBhdXRvIGlubGluZUxldmVsSXRlbXMg
PSBIYXNoU2V0PGNvbnN0IEJveCo+IHsgfTsKICAgICBmb3IgKGF1dG8mIGlubGluZUl0ZW0gOiBp
bmxpbmVDb250ZW50Q2FjaGUoKS5pbmxpbmVJdGVtcygpLmNvbnRlbnQoKSkgewotICAgICAgICBp
ZiAoaW5saW5lSXRlbS5pc0lubGluZUJveFN0YXJ0KCkpCisgICAgICAgIGlmIChpbmxpbmVJdGVt
LmlzSW5saW5lQm94U3RhcnQoKSkgewogICAgICAgICAgICAgKytpbmxpbmVCb3hTdGFydDsKLSAg
ICAgICAgZWxzZSBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJveEVuZCgpKQorICAgICAgICAgICAg
Y29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGlubGluZUl0ZW0uaXNJbmxpbmVCb3hF
bmQoKSkgewogICAgICAgICAgICAgKytpbmxpbmVCb3hFbmQ7Ci0gICAgICAgIGVsc2UgewotICAg
ICAgICAgICAgYXV0byBoYXNUb0JlVW5pcXVlTGF5b3V0Qm94ID0gaW5saW5lSXRlbS5pc0F0b21p
Y0lubGluZUJveCgpIHx8IGlubGluZUl0ZW0uaXNGbG9hdCgpIHx8IGlubGluZUl0ZW0uaXNIYXJk
TGluZUJyZWFrKCk7Ci0gICAgICAgICAgICBpZiAoaGFzVG9CZVVuaXF1ZUxheW91dEJveCkKLSAg
ICAgICAgICAgICAgICBBU1NFUlQoaW5saW5lTGV2ZWxJdGVtcy5hZGQoJmlubGluZUl0ZW0ubGF5
b3V0Qm94KCkpLmlzTmV3RW50cnkpOworICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0K
KyAgICAgICAgYXV0byBoYXNUb0JlVW5pcXVlTGF5b3V0Qm94ID0gaW5saW5lSXRlbS5pc0F0b21p
Y0lubGluZUJveCgpIHx8IGlubGluZUl0ZW0uaXNGbG9hdCgpIHx8IGlubGluZUl0ZW0uaXNIYXJk
TGluZUJyZWFrKCk7CisgICAgICAgIGlmIChoYXNUb0JlVW5pcXVlTGF5b3V0Qm94KQorICAgICAg
ICAgICAgQVNTRVJUKGlubGluZUxldmVsSXRlbXMuYWRkKCZpbmxpbmVJdGVtLmxheW91dEJveCgp
KS5pc05ld0VudHJ5KTsKKyAgICAgICAgaGFzVGV4dEFuZExpbmVCcmVha09ubHlDb250ZW50ICY9
IGlzVGV4dE9yTGluZUJyZWFrKGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpOwogICAgIH0KICAgICBB
U1NFUlQoaW5saW5lQm94U3RhcnQgPT0gaW5saW5lQm94RW5kKTsKKyAgICBBU1NFUlQobV9pbmxp
bmVCb3hDb3VudCA9PSBpbmxpbmVCb3hTdGFydCk7CisgICAgQVNTRVJUKG1faGFzVGV4dEFuZExp
bmVCcmVha09ubHlDb250ZW50ID09IGhhc1RleHRBbmRMaW5lQnJlYWtPbmx5Q29udGVudCk7CiAj
ZW5kaWYKIH0KIApAQCAtMTg5LDExICsyMDMsNiBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6
Y29tcHV0ZUlubGluZUJveEJvdW5kYXJ5VGV4dFNwYWNpbmdzKGNvbnN0IElubGluZUl0ZW1MaQog
ICAgICAgICBpbmxpbmVDb250ZW50Q2FjaGUoKS5zZXRJbmxpbmVCb3hCb3VuZGFyeVRleHRTcGFj
aW5ncyhXVEY6Om1vdmUoc3BhY2luZ3MpKTsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGlzVGV4
dE9yTGluZUJyZWFrKGNvbnN0IEJveCYgbGF5b3V0Qm94KQotewotICAgIHJldHVybiBsYXlvdXRC
b3guaXNJbkZsb3coKSAmJiAobGF5b3V0Qm94LmlzSW5saW5lVGV4dEJveCgpIHx8IChsYXlvdXRC
b3guaXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0Qm94LmlzV29yZEJyZWFrT3Bwb3J0dW5pdHko
KSkpOwotfQotCiBzdGF0aWMgYm9vbCByZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcoY29uc3QgQm94
JiBsYXlvdXRCb3gpCiB7CiAgICAgaWYgKGF1dG8qIGlubGluZVRleHRCb3ggPSBkeW5hbWljRG93
bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KSkKQEAgLTIwNSw2ICsyMTQsMTEgQEAgc3Rh
dGljIGJvb2wgcmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nKGNvbnN0IEJveCYgbGF5b3V0Qm94KQog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAorc3RhdGljIGlubGluZSBib29sIGlzSW5saW5lQm94V2l0
aElubGluZUNvbnRlbnQoY29uc3QgQm94JiBsYXlvdXRCb3gpCit7CisgICAgcmV0dXJuIGxheW91
dEJveC5pc0lubGluZUJveCgpICYmICFsYXlvdXRCb3guaXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5
b3V0Qm94LmlzT3V0T2ZGbG93UG9zaXRpb25lZCgpOworfQorCiBJbmxpbmVJdGVtc0J1aWxkZXI6
OkxheW91dFF1ZXVlIElubGluZUl0ZW1zQnVpbGRlcjo6dHJhdmVyc2VVbnRpbERhbWFnZWQoY29u
c3QgQm94JiBmaXJzdERhbWFnZWRMYXlvdXRCb3gpCiB7CiAgICAgTGF5b3V0UXVldWUgcXVldWU7
CkBAIC0yMTIsNiArMjI2LDcgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRRdWV1ZSBJbmxp
bmVJdGVtc0J1aWxkZXI6OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAgICBhdXRvIGFw
cGVuZEFuZENoZWNrRm9yRGFtYWdlID0gWyZdIChhdXRvJiBsYXlvdXRCb3gpIHsKICAgICAgICAg
cXVldWUuYXBwZW5kKGxheW91dEJveCk7CiAgICAgICAgIG1fY29udGVudFJlcXVpcmVzVmlzdWFs
UmVvcmRlcmluZyA9IG1fY29udGVudFJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyB8fCByZXF1aXJl
c1Zpc3VhbFJlb3JkZXJpbmcobGF5b3V0Qm94KTsKKyAgICAgICAgbV9oYXNUZXh0QW5kTGluZUJy
ZWFrT25seUNvbnRlbnQgJj0gKGlzSW5saW5lQm94V2l0aElubGluZUNvbnRlbnQobGF5b3V0Qm94
KSB8fCBpc1RleHRPckxpbmVCcmVhayhsYXlvdXRCb3gpKTsKICAgICAgICAgcmV0dXJuICZsYXlv
dXRCb3ggPT0gJmZpcnN0RGFtYWdlZExheW91dEJveDsKICAgICB9OwogCkBAIC0yMjEsOSArMjM2
LDkgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRRdWV1ZSBJbmxpbmVJdGVtc0J1aWxkZXI6
OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAgICB3aGlsZSAoIXF1ZXVlLmlzRW1wdHko
KSkgewogICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICAgYXV0byBsYXlvdXRCb3gg
PSBxdWV1ZS5sYXN0KCk7Ci0gICAgICAgICAgICBhdXRvIGlzSW5saW5lQm94V2l0aElubGluZUNv
bnRlbnQgPSBsYXlvdXRCb3gtPmlzSW5saW5lQm94KCkgJiYgIWxheW91dEJveC0+aXNJbmxpbmVU
ZXh0Qm94KCkgJiYgIWxheW91dEJveC0+aXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0Qm94LT5p
c091dE9mRmxvd1Bvc2l0aW9uZWQoKTsKLSAgICAgICAgICAgIGlmICghaXNJbmxpbmVCb3hXaXRo
SW5saW5lQ29udGVudCkKKyAgICAgICAgICAgIGlmICghaXNJbmxpbmVCb3hXaXRoSW5saW5lQ29u
dGVudChsYXlvdXRCb3gpKQogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgKytt
X2lubGluZUJveENvdW50OwogICAgICAgICAgICAgYXV0byogZmlyc3RDaGlsZCA9IGRvd25jYXN0
PEVsZW1lbnRCb3g+KGxheW91dEJveCkuZmlyc3RDaGlsZCgpOwogICAgICAgICAgICAgaWYgKCFm
aXJzdENoaWxkKQogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzA0LDggKzMxOSw3IEBAIHZv
aWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb2xsZWN0SW5saW5lSXRlbXMoSW5saW5lSXRlbUxpc3Qm
IGlubGluZUl0ZW1MaXN0LCBJbmxpCiAgICAgd2hpbGUgKCFsYXlvdXRRdWV1ZS5pc0VtcHR5KCkp
IHsKICAgICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICAgICAgIGF1dG8gbGF5b3V0Qm94ID0g
bGF5b3V0UXVldWUubGFzdCgpOwotICAgICAgICAgICAgYXV0byBpc0lubGluZUJveFdpdGhJbmxp
bmVDb250ZW50ID0gbGF5b3V0Qm94LT5pc0lubGluZUJveCgpICYmICFsYXlvdXRCb3gtPmlzSW5s
aW5lVGV4dEJveCgpICYmICFsYXlvdXRCb3gtPmlzTGluZUJyZWFrQm94KCkgJiYgIWxheW91dEJv
eC0+aXNPdXRPZkZsb3dQb3NpdGlvbmVkKCk7Ci0gICAgICAgICAgICBpZiAoIWlzSW5saW5lQm94
V2l0aElubGluZUNvbnRlbnQpCisgICAgICAgICAgICBpZiAoIWlzSW5saW5lQm94V2l0aElubGlu
ZUNvbnRlbnQobGF5b3V0Qm94KSkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IC8vIFRoaXMgaXMgdGhlIHN0YXJ0IG9mIGFuIGlubGluZSBib3ggKGUuZy4gPHNwYW4+KS4KICAg
ICAgICAgICAgIGhhbmRsZUlubGluZUJveFN0YXJ0KGxheW91dEJveCwgaW5saW5lSXRlbUxpc3Qp
OwpAQCAtMzE3LDYgKzMzMSw3IEBAIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb2xsZWN0SW5s
aW5lSXRlbXMoSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1MaXN0LCBJbmxpCiAKICAgICAgICAg
d2hpbGUgKCFsYXlvdXRRdWV1ZS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIGF1dG8gbGF5b3V0
Qm94ID0gbGF5b3V0UXVldWUudGFrZUxhc3QoKTsKKyAgICAgICAgICAgIG1faGFzVGV4dEFuZExp
bmVCcmVha09ubHlDb250ZW50ICY9IChpc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50KGxheW91
dEJveCkgfHwgaXNUZXh0T3JMaW5lQnJlYWsobGF5b3V0Qm94KSk7CiAgICAgICAgICAgICBpZiAo
bGF5b3V0Qm94LT5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKSkKICAgICAgICAgICAgICAgICBpbmxp
bmVJdGVtTGlzdC5hcHBlbmQoeyBsYXlvdXRCb3gsIElubGluZUl0ZW06OlR5cGU6Ok9wYXF1ZSB9
KTsKICAgICAgICAgICAgIGVsc2UgaWYgKGF1dG8qIGlubGluZVRleHRCb3ggPSBkeW5hbWljRG93
bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94LmdldCgpKSkKQEAgLTc1MiwzNCArNzY3LDEw
IEBAIHN0YXRpYyB2b2lkIGhhbmRsZVRleHRTcGFjaW5nKFRleHRTcGFjaW5nOjpTcGFjaW5nU3Rh
dGUmIHNwYWNpbmdTdGF0ZSwgVHJpbW1hYmxlCiAgICAgICAgIHNwYWNpbmdTdGF0ZS5sYXN0Q2hh
cmFjdGVyQ2xhc3NGcm9tUHJldmlvdXNSdW4gPSBUZXh0U3BhY2luZzo6Q2hhcmFjdGVyQ2xhc3M6
OlVuZGVmaW5lZDsKIH0KIAotSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6Q29udGVu
dEF0dHJpYnV0ZXMgSW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNB
bmRJbmxpbmVUZXh0SXRlbVdpZHRocyhJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRlbUxpc3QsIElu
bGluZUl0ZW1Qb3NpdGlvbiBkYW1hZ2VQb3NpdGlvbiwgY29uc3QgSW5saW5lSXRlbUxpc3QmIGRh
bWFnZWRJdGVtTGlzdCkKK3ZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlSW5saW5lVGV4
dEl0ZW1XaWR0aHNBbmRUZXh0U3BhY2luZyhJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRlbUxpc3Qp
CiB7Ci0gICAgaWYgKGlubGluZUl0ZW1MaXN0LmlzRW1wdHkoKSAmJiAhZGFtYWdlUG9zaXRpb24p
Ci0gICAgICAgIHJldHVybiB7IH07Ci0KLSAgICBib29sIGlzVGV4dEFuZEZvcmNlZExpbmVCcmVh
a09ubHlDb250ZW50ID0gdHJ1ZTsKLSAgICBzaXplX3QgaW5saW5lQm94Q291bnQgPSAwOwotCi0g
ICAgYXV0byBjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNVcFRvRGFtYWdlID0gWyZdIHsKLSAgICAg
ICAgaWYgKCFkYW1hZ2VQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgLy8g
Q29udGVudEF0dHJpYnV0ZXM6OnJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyBpcyBub3QgaGFuZGxl
ZCBoZXJlIGFzIHdlIGRvbid0IHN1cHBvcnQgcGFydGlhbCBsYXlvdXQgd2l0aCBiaWRpIGNvbnRl
bnQuCi0gICAgICAgIEFTU0VSVChkYW1hZ2VQb3NpdGlvbi5pbmRleCA8IGRhbWFnZWRJdGVtTGlz
dC5zaXplKCkpOwotICAgICAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgZGFtYWdl
UG9zaXRpb24uaW5kZXggJiYgaW5kZXggPCBkYW1hZ2VkSXRlbUxpc3Quc2l6ZSgpOyArK2luZGV4
KSB7Ci0gICAgICAgICAgICBhdXRvJiBpbmxpbmVJdGVtID0gZGFtYWdlZEl0ZW1MaXN0W2luZGV4
XTsKLSAgICAgICAgICAgIGlmIChpbmxpbmVJdGVtLmlzVGV4dCgpKQotICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwotCi0gICAgICAgICAgICBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJveFN0YXJ0
KCkpIHsKLSAgICAgICAgICAgICAgICArK2lubGluZUJveENvdW50OwotICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBpZiAoIWlubGluZUl0ZW0u
aXNJbmxpbmVCb3hFbmQoKSkKLSAgICAgICAgICAgICAgICBpc1RleHRBbmRGb3JjZWRMaW5lQnJl
YWtPbmx5Q29udGVudCA9IGlzVGV4dEFuZEZvcmNlZExpbmVCcmVha09ubHlDb250ZW50ICYmIGlz
VGV4dE9yTGluZUJyZWFrKGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpOwotICAgICAgICB9Ci0gICAg
fTsKLSAgICBjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNVcFRvRGFtYWdlKCk7CisgICAgaWYgKGlu
bGluZUl0ZW1MaXN0LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1faGFz
VGV4dEF1dG9zcGFjZSkKICAgICAgICAgY29tcHV0ZUlubGluZUJveEJvdW5kYXJ5VGV4dFNwYWNp
bmdzKGlubGluZUl0ZW1MaXN0KTsKQEAgLTgyNiwxOCArODE3LDggQEAgSW5saW5lQ29udGVudENh
Y2hlOjpJbmxpbmVJdGVtczo6Q29udGVudEF0dHJpYnV0ZXMgSW5saW5lSXRlbXNCdWlsZGVyOjpj
b21wdXRlQ28KICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIHNwYWNp
bmdTdGF0ZS5sYXN0Q2hhcmFjdGVyQ2xhc3NGcm9tUHJldmlvdXNSdW4gPSBUZXh0U3BhY2luZzo6
Q2hhcmFjdGVyQ2xhc3M6OlVuZGVmaW5lZDsKLQotICAgICAgICBpZiAoaW5saW5lSXRlbS5pc0lu
bGluZUJveFN0YXJ0KCkpIHsKLSAgICAgICAgICAgICsraW5saW5lQm94Q291bnQ7Ci0gICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmICghaW5saW5lSXRlbS5pc0lu
bGluZUJveEVuZCgpKQotICAgICAgICAgICAgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNv
bnRlbnQgPSBpc1RleHRBbmRGb3JjZWRMaW5lQnJlYWtPbmx5Q29udGVudCAmJiBpc1RleHRPckxp
bmVCcmVhayhpbmxpbmVJdGVtLmxheW91dEJveCgpKTsKICAgICB9CiAgICAgaW5saW5lQ29udGVu
dENhY2hlKCkuc2V0VHJpbW1hYmxlVGV4dFNwYWNpbmdzKFdURjo6bW92ZSh0cmltbWFibGVUZXh0
U3BhY2luZ3MpKTsKLQotICAgIHJldHVybiB7IG1fY29udGVudFJlcXVpcmVzVmlzdWFsUmVvcmRl
cmluZywgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNvbnRlbnQsIG1faGFzVGV4dEF1dG9z
cGFjZSwgaW5saW5lQm94Q291bnQgfTsKIH0KIAogYm9vbCBJbmxpbmVJdGVtc0J1aWxkZXI6OmJ1
aWxkSW5saW5lSXRlbUxpc3RGb3JUZXh0RnJvbUJyZWFraW5nUG9zaXRpb25zQ2FjaGUoY29uc3Qg
SW5saW5lVGV4dEJveCYgaW5saW5lVGV4dEJveCwgSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1M
aXN0KQpAQCAtMTAwMSw2ICs5ODIsNyBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6aGFuZGxl
SW5saW5lQm94U3RhcnQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1MaQogICAgIGlu
bGluZUl0ZW1MaXN0LmFwcGVuZCh7IGlubGluZUJveCwgSW5saW5lSXRlbTo6VHlwZTo6SW5saW5l
Qm94U3RhcnQgfSk7CiAgICAgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nIHw9IHJl
cXVpcmVzVmlzdWFsUmVvcmRlcmluZyhpbmxpbmVCb3gpOwogICAgIG1faGFzVGV4dEF1dG9zcGFj
ZSB8PSAhaW5saW5lQm94LnN0eWxlKCkudGV4dEF1dG9zcGFjZSgpLmlzTm9BdXRvc3BhY2UoKTsK
KyAgICArK21faW5saW5lQm94Q291bnQ7CiB9CiAKIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpo
YW5kbGVJbmxpbmVCb3hFbmQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1MaXN0JiBp
bmxpbmVJdGVtTGlzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmgKaW5k
ZXggYTkyNjgyN2U5MjQ4Li4xOGQyNWJjN2FkYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGlu
ZUl0ZW1zQnVpbGRlci5oCkBAIC01Myw3ICs1Myw3IEBAIHByaXZhdGU6CiAgICAgTGF5b3V0UXVl
dWUgaW5pdGlhbGl6ZUxheW91dFF1ZXVlKElubGluZUl0ZW1Qb3NpdGlvbiBzdGFydFBvc2l0aW9u
KTsKICAgICBMYXlvdXRRdWV1ZSB0cmF2ZXJzZVVudGlsRGFtYWdlZChjb25zdCBCb3gmIGZpcnN0
RGFtYWdlZExheW91dEJveCk7CiAgICAgdm9pZCBicmVha0FuZENvbXB1dGVCaWRpTGV2ZWxzKElu
bGluZUl0ZW1MaXN0Jik7Ci0gICAgSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6Q29u
dGVudEF0dHJpYnV0ZXMgY29tcHV0ZUNvbnRlbnRBdHRyaWJ1dGVzQW5kSW5saW5lVGV4dEl0ZW1X
aWR0aHMoSW5saW5lSXRlbUxpc3QmLCBJbmxpbmVJdGVtUG9zaXRpb24gZGFtYWdlUG9zaXRpb24s
IGNvbnN0IElubGluZUl0ZW1MaXN0JiBkYW1hZ2VkSXRlbUxpc3QpOworICAgIHZvaWQgY29tcHV0
ZUlubGluZVRleHRJdGVtV2lkdGhzQW5kVGV4dFNwYWNpbmcoSW5saW5lSXRlbUxpc3QmKTsKIAog
ICAgIHZvaWQgaGFuZGxlVGV4dENvbnRlbnQoY29uc3QgSW5saW5lVGV4dEJveCYsIElubGluZUl0
ZW1MaXN0Jiwgc3RkOjpvcHRpb25hbDxzaXplX3Q+IHBhcnRpYWxDb250ZW50T2Zmc2V0KTsKICAg
ICBib29sIGJ1aWxkSW5saW5lSXRlbUxpc3RGb3JUZXh0RnJvbUJyZWFraW5nUG9zaXRpb25zQ2Fj
aGUoY29uc3QgSW5saW5lVGV4dEJveCYsIElubGluZUl0ZW1MaXN0Jik7CkBAIC03Myw2ICs3Myw4
IEBAIHByaXZhdGU6CiAgICAgY29uc3QgRWxlbWVudEJveCYgbV9yb290OwogICAgIGNvbnN0IFNl
Y3VyaXR5T3JpZ2luJiBtX3NlY3VyaXR5T3JpZ2luOwogCisgICAgc2l6ZV90IG1faW5saW5lQm94
Q291bnQgeyAwIH07CisgICAgYm9vbCBtX2hhc1RleHRBbmRMaW5lQnJlYWtPbmx5Q29udGVudCB7
IHRydWUgfTsgLy8gTm90ZSB0aGF0IHRoaXMgaXMgdHJ1ZSBmb3IgY2FzZXMgbGlrZSA8c3Bhbj50
ZXh0IGNvbnRlbnQ8L3NwYW4+CiAgICAgYm9vbCBtX2NvbnRlbnRSZXF1aXJlc1Zpc3VhbFJlb3Jk
ZXJpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9oYXNUZXh0QXV0b3NwYWNlIHsgIXJvb3QoKS5z
dHlsZSgpLnRleHRBdXRvc3BhY2UoKS5pc05vQXV0b3NwYWNlKCkgfTsKICAgICBzdGQ6Om9wdGlv
bmFsPGJvb2w+IG1fdGV4dENvbnRlbnRQb3B1bGF0ZWRGcm9tQ2FjaGUgeyB9Owo=
</data>
<flag name="commit-queue"
          id="500154"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>478288</attachid>
            <date>2026-02-09 07:04:44 -0800</date>
            <delta_ts>2026-02-09 09:17:50 -0800</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-307233-20260209070443.patch</filename>
            <type>text/plain</type>
            <size>13385</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA5ZWY5ZWMxMjRjNmY4YTNhYTZiYzAyOTRlNDhhMmUwMTkwNzUwMGRjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFN1biwgOCBGZWIgMjAyNiAxNTo1MjowNSAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIENvbXB1dGUg
Q29udGVudEF0dHJpYnV0ZXMgd2hpbGUgY29sbGVjdGluZyBpbmxpbmUgaXRlbXMKIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDcyMzMKClJldmlld2VkIGJ5IEFudHRp
IEtvaXZpc3RvLgoKQ3VycmVudGx5LCBJbmxpbmVJdGVtc0J1aWxkZXIgcGVyZm9ybXMgdHdvIHBh
c3NlczogdGhlIGZpcnN0IGNvbGxlY3RzIGlubGluZSBpdGVtcywgYW5kIHRoZSBzZWNvbmQgbWVh
c3VyZXMgdGV4dCB3aWR0aHMgYW5kCmRldGVybWluZXMgd2hldGhlciB0aGUgY29udGVudCBpcyB0
ZXh0LW9ubHksIGFzIHdlbGwgYXMgdGhlIG51bWJlciBvZiBpbmxpbmUgYm94ZXMuCgpUaGlzIHBh
dGNoIG1vdmVzIHRoZSAnZGV0ZXJtaW5lcycgcGFydCB0byB0aGUgZmlyc3QgcGFzcy4gSXQgaXMg
YSBwcmVwYXJhdGlvbiBmb3IgYmVpbmcgYWJsZSB0byBkbyBvbmx5IG9uZSBwYXNzIG9uIHNpbXBs
ZSBjb250ZW50LgoKKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lu
bGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwOgooV2ViQ29yZTo6TGF5b3V0Ojppc1RleHRPckxp
bmVCcmVhayk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQpOgoo
V2ViQ29yZTo6TGF5b3V0Ojppc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50KToKKFdlYkNvcmU6
OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjp0cmF2ZXJzZVVudGlsRGFtYWdlZCk6CihXZWJD
b3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRlcjo6Y29sbGVjdElubGluZUl0ZW1zKToKKFdl
YkNvcmU6OkxheW91dDo6SW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlSW5saW5lVGV4dEl0ZW1X
aWR0aHNBbmRUZXh0U3BhY2luZyk6CihXZWJDb3JlOjpMYXlvdXQ6OklubGluZUl0ZW1zQnVpbGRl
cjo6aGFuZGxlSW5saW5lQm94U3RhcnQpOgooV2ViQ29yZTo6TGF5b3V0OjpJbmxpbmVJdGVtc0J1
aWxkZXI6OmNvbXB1dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKTog
RGVsZXRlZC4KKiBTb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGlu
ZS9JbmxpbmVJdGVtc0J1aWxkZXIuaDoKLS0tCiAuLi4vaW5saW5lL0lubGluZUl0ZW1zQnVpbGRl
ci5jcHAgICAgICAgICAgICAgfCA5MiArKysrKysrKy0tLS0tLS0tLS0tCiAuLi4vaW5saW5lL0lu
bGluZUl0ZW1zQnVpbGRlci5oICAgICAgICAgICAgICAgfCAgNCArLQogMiBmaWxlcyBjaGFuZ2Vk
LCA0MCBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sYXlvdXQvZm9ybWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUv
SW5saW5lSXRlbXNCdWlsZGVyLmNwcAppbmRleCBjMDFmMWU4ZjVhM2YuLjUxNDFmY2JlZjFjYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxp
bmUvSW5saW5lSXRlbXNCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvZm9y
bWF0dGluZ0NvbnRleHRzL2lubGluZS9JbmxpbmVJdGVtc0J1aWxkZXIuY3BwCkBAIC04Myw2ICs4
MywxMSBAQCBzdGF0aWMgdW5zaWduZWQgbW92ZVRvTmV4dEJyZWFrYWJsZVBvc2l0aW9uKHVuc2ln
bmVkIHN0YXJ0UG9zaXRpb24sIENhY2hlZExpbmVCcgogICAgIHJldHVybiB0ZXh0TGVuZ3RoIC0g
c3RhcnRQb3NpdGlvbjsKIH0KIAorc3RhdGljIGlubGluZSBib29sIGlzVGV4dE9yTGluZUJyZWFr
KGNvbnN0IEJveCYgbGF5b3V0Qm94KQoreworICAgIHJldHVybiBsYXlvdXRCb3guaXNJbkZsb3co
KSAmJiAobGF5b3V0Qm94LmlzSW5saW5lVGV4dEJveCgpIHx8IChsYXlvdXRCb3guaXNMaW5lQnJl
YWtCb3goKSAmJiAhbGF5b3V0Qm94LmlzV29yZEJyZWFrT3Bwb3J0dW5pdHkoKSkpOworfQorCiBJ
bmxpbmVJdGVtc0J1aWxkZXI6OklubGluZUl0ZW1zQnVpbGRlcihJbmxpbmVDb250ZW50Q2FjaGUm
IGlubGluZUNvbnRlbnRDYWNoZSwgY29uc3QgRWxlbWVudEJveCYgcm9vdCwgY29uc3QgU2VjdXJp
dHlPcmlnaW4mIHNlY3VyaXR5T3JpZ2luKQogICAgIDogbV9pbmxpbmVDb250ZW50Q2FjaGUoaW5s
aW5lQ29udGVudENhY2hlKQogICAgICwgbV9yb290KHJvb3QpCkBAIC0xMDAsMTEgKzEwNSwxNCBA
QCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6YnVpbGQoSW5saW5lSXRlbVBvc2l0aW9uIHN0YXJ0
UG9zaXRpb24pCiAgICAgICAgIGJyZWFrQW5kQ29tcHV0ZUJpZGlMZXZlbHMoaW5saW5lSXRlbUxp
c3QpOwogICAgIH0KIAotICAgIGF1dG8mIGlubGluZUl0ZW1DYWNoZSA9IGlubGluZUNvbnRlbnRD
YWNoZSgpLmlubGluZUl0ZW1zKCk7Ci0gICAgYXV0byBjb250ZW50QXR0cmlidXRlcyA9IGNvbXB1
dGVDb250ZW50QXR0cmlidXRlc0FuZElubGluZVRleHRJdGVtV2lkdGhzKGlubGluZUl0ZW1MaXN0
LCBzdGFydFBvc2l0aW9uLCBpbmxpbmVJdGVtQ2FjaGUuY29udGVudCgpKTsKKyAgICBjb21wdXRl
SW5saW5lVGV4dEl0ZW1XaWR0aHNBbmRUZXh0U3BhY2luZyhpbmxpbmVJdGVtTGlzdCk7CisKICAg
ICBhdXRvIGFkanVzdElubGluZUNvbnRlbnRDYWNoZVdpdGhOZXdJbmxpbmVJdGVtcyA9IFsmXSB7
Ci0gICAgICAgIEFTU0VSVCghc3RhcnRQb3NpdGlvbiB8fCBzdGFydFBvc2l0aW9uLmluZGV4IDwg
aW5saW5lSXRlbUNhY2hlLmNvbnRlbnQoKS5zaXplKCkpOworICAgICAgICBBU1NFUlQoIXN0YXJ0
UG9zaXRpb24gfHwgc3RhcnRQb3NpdGlvbi5pbmRleCA8IGlubGluZUNvbnRlbnRDYWNoZSgpLmlu
bGluZUl0ZW1zKCkuY29udGVudCgpLnNpemUoKSk7CisKKyAgICAgICAgYXV0byBjb250ZW50QXR0
cmlidXRlcyA9IElubGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OkNvbnRlbnRBdHRyaWJ1
dGVzIHsgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nLCBtX2hhc1RleHRBbmRMaW5l
QnJlYWtPbmx5Q29udGVudCwgbV9oYXNUZXh0QXV0b3NwYWNlLCBtX2lubGluZUJveENvdW50IH07
CiAgICAgICAgIGF1dG8gaXNQb3B1bGF0ZWRGcm9tQ2FjaGUgPSBtX3RleHRDb250ZW50UG9wdWxh
dGVkRnJvbUNhY2hlICYmICptX3RleHRDb250ZW50UG9wdWxhdGVkRnJvbUNhY2hlID8gSW5saW5l
Q29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6SXNQb3B1bGF0ZWRGcm9tQ2FjaGU6OlllcyA6IElu
bGluZUNvbnRlbnRDYWNoZTo6SW5saW5lSXRlbXM6OklzUG9wdWxhdGVkRnJvbUNhY2hlOjpObzsK
KyAgICAgICAgYXV0byYgaW5saW5lSXRlbUNhY2hlID0gaW5saW5lQ29udGVudENhY2hlKCkuaW5s
aW5lSXRlbXMoKTsKICAgICAgICAgaWYgKCFzdGFydFBvc2l0aW9uIHx8IHN0YXJ0UG9zaXRpb24u
aW5kZXggPj0gaW5saW5lSXRlbUNhY2hlLmNvbnRlbnQoKS5zaXplKCkpCiAgICAgICAgICAgICBy
ZXR1cm4gaW5saW5lSXRlbUNhY2hlLnNldChXVEY6Om1vdmUoaW5saW5lSXRlbUxpc3QpLCBjb250
ZW50QXR0cmlidXRlcywgaXNQb3B1bGF0ZWRGcm9tQ2FjaGUpOwogICAgICAgICBpbmxpbmVJdGVt
Q2FjaGUucmVwbGFjZShzdGFydFBvc2l0aW9uLmluZGV4LCBXVEY6Om1vdmUoaW5saW5lSXRlbUxp
c3QpLCBjb250ZW50QXR0cmlidXRlcywgaXNQb3B1bGF0ZWRGcm9tQ2FjaGUpOwpAQCAtMTE1LDE5
ICsxMjMsMjUgQEAgdm9pZCBJbmxpbmVJdGVtc0J1aWxkZXI6OmJ1aWxkKElubGluZUl0ZW1Qb3Np
dGlvbiBzdGFydFBvc2l0aW9uKQogICAgIC8vIENoZWNrIGlmIHdlJ3ZlIGdvdCBtYXRjaGluZyBp
bmxpbmUgYm94IHN0YXJ0L2VuZCBwYWlycyBhbmQgdW5pcXVlIGlubGluZSBsZXZlbCBpdGVtcyAo
bm9uLXRleHQsIG5vbi1pbmxpbmUgYm94IGl0ZW1zKS4KICAgICBzaXplX3QgaW5saW5lQm94U3Rh
cnQgPSAwOwogICAgIHNpemVfdCBpbmxpbmVCb3hFbmQgPSAwOworICAgIGF1dG8gaGFzVGV4dEFu
ZExpbmVCcmVha09ubHlDb250ZW50ID0gdHJ1ZTsKICAgICBhdXRvIGlubGluZUxldmVsSXRlbXMg
PSBIYXNoU2V0PGNvbnN0IEJveCo+IHsgfTsKICAgICBmb3IgKGF1dG8mIGlubGluZUl0ZW0gOiBp
bmxpbmVDb250ZW50Q2FjaGUoKS5pbmxpbmVJdGVtcygpLmNvbnRlbnQoKSkgewotICAgICAgICBp
ZiAoaW5saW5lSXRlbS5pc0lubGluZUJveFN0YXJ0KCkpCisgICAgICAgIGlmIChpbmxpbmVJdGVt
LmlzSW5saW5lQm94U3RhcnQoKSkgewogICAgICAgICAgICAgKytpbmxpbmVCb3hTdGFydDsKLSAg
ICAgICAgZWxzZSBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJveEVuZCgpKQorICAgICAgICAgICAg
Y29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGlubGluZUl0ZW0uaXNJbmxpbmVCb3hF
bmQoKSkgewogICAgICAgICAgICAgKytpbmxpbmVCb3hFbmQ7Ci0gICAgICAgIGVsc2UgewotICAg
ICAgICAgICAgYXV0byBoYXNUb0JlVW5pcXVlTGF5b3V0Qm94ID0gaW5saW5lSXRlbS5pc0F0b21p
Y0lubGluZUJveCgpIHx8IGlubGluZUl0ZW0uaXNGbG9hdCgpIHx8IGlubGluZUl0ZW0uaXNIYXJk
TGluZUJyZWFrKCk7Ci0gICAgICAgICAgICBpZiAoaGFzVG9CZVVuaXF1ZUxheW91dEJveCkKLSAg
ICAgICAgICAgICAgICBBU1NFUlQoaW5saW5lTGV2ZWxJdGVtcy5hZGQoJmlubGluZUl0ZW0ubGF5
b3V0Qm94KCkpLmlzTmV3RW50cnkpOworICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0K
KyAgICAgICAgYXV0byBoYXNUb0JlVW5pcXVlTGF5b3V0Qm94ID0gaW5saW5lSXRlbS5pc0F0b21p
Y0lubGluZUJveCgpIHx8IGlubGluZUl0ZW0uaXNGbG9hdCgpIHx8IGlubGluZUl0ZW0uaXNIYXJk
TGluZUJyZWFrKCk7CisgICAgICAgIGlmIChoYXNUb0JlVW5pcXVlTGF5b3V0Qm94KQorICAgICAg
ICAgICAgQVNTRVJUKGlubGluZUxldmVsSXRlbXMuYWRkKCZpbmxpbmVJdGVtLmxheW91dEJveCgp
KS5pc05ld0VudHJ5KTsKKyAgICAgICAgaGFzVGV4dEFuZExpbmVCcmVha09ubHlDb250ZW50ICY9
IGlzVGV4dE9yTGluZUJyZWFrKGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpOwogICAgIH0KICAgICBB
U1NFUlQoaW5saW5lQm94U3RhcnQgPT0gaW5saW5lQm94RW5kKTsKKyAgICBBU1NFUlQobV9pbmxp
bmVCb3hDb3VudCA9PSBpbmxpbmVCb3hTdGFydCk7CisgICAgQVNTRVJUKG1faGFzVGV4dEFuZExp
bmVCcmVha09ubHlDb250ZW50ID09IGhhc1RleHRBbmRMaW5lQnJlYWtPbmx5Q29udGVudCk7CiAj
ZW5kaWYKIH0KIApAQCAtMTg5LDExICsyMDMsNiBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6
Y29tcHV0ZUlubGluZUJveEJvdW5kYXJ5VGV4dFNwYWNpbmdzKGNvbnN0IElubGluZUl0ZW1MaQog
ICAgICAgICBpbmxpbmVDb250ZW50Q2FjaGUoKS5zZXRJbmxpbmVCb3hCb3VuZGFyeVRleHRTcGFj
aW5ncyhXVEY6Om1vdmUoc3BhY2luZ3MpKTsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGlzVGV4
dE9yTGluZUJyZWFrKGNvbnN0IEJveCYgbGF5b3V0Qm94KQotewotICAgIHJldHVybiBsYXlvdXRC
b3guaXNJbkZsb3coKSAmJiAobGF5b3V0Qm94LmlzSW5saW5lVGV4dEJveCgpIHx8IChsYXlvdXRC
b3guaXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0Qm94LmlzV29yZEJyZWFrT3Bwb3J0dW5pdHko
KSkpOwotfQotCiBzdGF0aWMgYm9vbCByZXF1aXJlc1Zpc3VhbFJlb3JkZXJpbmcoY29uc3QgQm94
JiBsYXlvdXRCb3gpCiB7CiAgICAgaWYgKGF1dG8qIGlubGluZVRleHRCb3ggPSBkeW5hbWljRG93
bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94KSkKQEAgLTIwNSw2ICsyMTQsMTEgQEAgc3Rh
dGljIGJvb2wgcmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nKGNvbnN0IEJveCYgbGF5b3V0Qm94KQog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAorc3RhdGljIGlubGluZSBib29sIGlzSW5saW5lQm94V2l0
aElubGluZUNvbnRlbnQoY29uc3QgQm94JiBsYXlvdXRCb3gpCit7CisgICAgcmV0dXJuIGxheW91
dEJveC5pc0lubGluZUJveCgpICYmICFsYXlvdXRCb3guaXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5
b3V0Qm94LmlzT3V0T2ZGbG93UG9zaXRpb25lZCgpOworfQorCiBJbmxpbmVJdGVtc0J1aWxkZXI6
OkxheW91dFF1ZXVlIElubGluZUl0ZW1zQnVpbGRlcjo6dHJhdmVyc2VVbnRpbERhbWFnZWQoY29u
c3QgQm94JiBmaXJzdERhbWFnZWRMYXlvdXRCb3gpCiB7CiAgICAgTGF5b3V0UXVldWUgcXVldWU7
CkBAIC0yMTIsNiArMjI2LDcgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRRdWV1ZSBJbmxp
bmVJdGVtc0J1aWxkZXI6OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAgICBhdXRvIGFw
cGVuZEFuZENoZWNrRm9yRGFtYWdlID0gWyZdIChhdXRvJiBsYXlvdXRCb3gpIHsKICAgICAgICAg
cXVldWUuYXBwZW5kKGxheW91dEJveCk7CiAgICAgICAgIG1fY29udGVudFJlcXVpcmVzVmlzdWFs
UmVvcmRlcmluZyA9IG1fY29udGVudFJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyB8fCByZXF1aXJl
c1Zpc3VhbFJlb3JkZXJpbmcobGF5b3V0Qm94KTsKKyAgICAgICAgbV9oYXNUZXh0QW5kTGluZUJy
ZWFrT25seUNvbnRlbnQgJj0gKGlzSW5saW5lQm94V2l0aElubGluZUNvbnRlbnQobGF5b3V0Qm94
KSB8fCBpc1RleHRPckxpbmVCcmVhayhsYXlvdXRCb3gpKTsKICAgICAgICAgcmV0dXJuICZsYXlv
dXRCb3ggPT0gJmZpcnN0RGFtYWdlZExheW91dEJveDsKICAgICB9OwogCkBAIC0yMjEsOSArMjM2
LDkgQEAgSW5saW5lSXRlbXNCdWlsZGVyOjpMYXlvdXRRdWV1ZSBJbmxpbmVJdGVtc0J1aWxkZXI6
OnRyYXZlcnNlVW50aWxEYW1hZ2VkKGNvbnN0IEIKICAgICB3aGlsZSAoIXF1ZXVlLmlzRW1wdHko
KSkgewogICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICAgYXV0byBsYXlvdXRCb3gg
PSBxdWV1ZS5sYXN0KCk7Ci0gICAgICAgICAgICBhdXRvIGlzSW5saW5lQm94V2l0aElubGluZUNv
bnRlbnQgPSBsYXlvdXRCb3gtPmlzSW5saW5lQm94KCkgJiYgIWxheW91dEJveC0+aXNJbmxpbmVU
ZXh0Qm94KCkgJiYgIWxheW91dEJveC0+aXNMaW5lQnJlYWtCb3goKSAmJiAhbGF5b3V0Qm94LT5p
c091dE9mRmxvd1Bvc2l0aW9uZWQoKTsKLSAgICAgICAgICAgIGlmICghaXNJbmxpbmVCb3hXaXRo
SW5saW5lQ29udGVudCkKKyAgICAgICAgICAgIGlmICghaXNJbmxpbmVCb3hXaXRoSW5saW5lQ29u
dGVudChsYXlvdXRCb3gpKQogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgKytt
X2lubGluZUJveENvdW50OwogICAgICAgICAgICAgYXV0byogZmlyc3RDaGlsZCA9IGRvd25jYXN0
PEVsZW1lbnRCb3g+KGxheW91dEJveCkuZmlyc3RDaGlsZCgpOwogICAgICAgICAgICAgaWYgKCFm
aXJzdENoaWxkKQogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzA0LDggKzMxOSw3IEBAIHZv
aWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb2xsZWN0SW5saW5lSXRlbXMoSW5saW5lSXRlbUxpc3Qm
IGlubGluZUl0ZW1MaXN0LCBJbmxpCiAgICAgd2hpbGUgKCFsYXlvdXRRdWV1ZS5pc0VtcHR5KCkp
IHsKICAgICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICAgICAgIGF1dG8gbGF5b3V0Qm94ID0g
bGF5b3V0UXVldWUubGFzdCgpOwotICAgICAgICAgICAgYXV0byBpc0lubGluZUJveFdpdGhJbmxp
bmVDb250ZW50ID0gbGF5b3V0Qm94LT5pc0lubGluZUJveCgpICYmICFsYXlvdXRCb3gtPmlzSW5s
aW5lVGV4dEJveCgpICYmICFsYXlvdXRCb3gtPmlzTGluZUJyZWFrQm94KCkgJiYgIWxheW91dEJv
eC0+aXNPdXRPZkZsb3dQb3NpdGlvbmVkKCk7Ci0gICAgICAgICAgICBpZiAoIWlzSW5saW5lQm94
V2l0aElubGluZUNvbnRlbnQpCisgICAgICAgICAgICBpZiAoIWlzSW5saW5lQm94V2l0aElubGlu
ZUNvbnRlbnQobGF5b3V0Qm94KSkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg
IC8vIFRoaXMgaXMgdGhlIHN0YXJ0IG9mIGFuIGlubGluZSBib3ggKGUuZy4gPHNwYW4+KS4KICAg
ICAgICAgICAgIGhhbmRsZUlubGluZUJveFN0YXJ0KGxheW91dEJveCwgaW5saW5lSXRlbUxpc3Qp
OwpAQCAtMzE3LDYgKzMzMSw3IEBAIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb2xsZWN0SW5s
aW5lSXRlbXMoSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1MaXN0LCBJbmxpCiAKICAgICAgICAg
d2hpbGUgKCFsYXlvdXRRdWV1ZS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIGF1dG8gbGF5b3V0
Qm94ID0gbGF5b3V0UXVldWUudGFrZUxhc3QoKTsKKyAgICAgICAgICAgIG1faGFzVGV4dEFuZExp
bmVCcmVha09ubHlDb250ZW50ICY9IChpc0lubGluZUJveFdpdGhJbmxpbmVDb250ZW50KGxheW91
dEJveCkgfHwgaXNUZXh0T3JMaW5lQnJlYWsobGF5b3V0Qm94KSk7CiAgICAgICAgICAgICBpZiAo
bGF5b3V0Qm94LT5pc091dE9mRmxvd1Bvc2l0aW9uZWQoKSkKICAgICAgICAgICAgICAgICBpbmxp
bmVJdGVtTGlzdC5hcHBlbmQoeyBsYXlvdXRCb3gsIElubGluZUl0ZW06OlR5cGU6Ok9wYXF1ZSB9
KTsKICAgICAgICAgICAgIGVsc2UgaWYgKGF1dG8qIGlubGluZVRleHRCb3ggPSBkeW5hbWljRG93
bmNhc3Q8SW5saW5lVGV4dEJveD4obGF5b3V0Qm94LmdldCgpKSkKQEAgLTc1MiwzNCArNzY3LDEw
IEBAIHN0YXRpYyB2b2lkIGhhbmRsZVRleHRTcGFjaW5nKFRleHRTcGFjaW5nOjpTcGFjaW5nU3Rh
dGUmIHNwYWNpbmdTdGF0ZSwgVHJpbW1hYmxlCiAgICAgICAgIHNwYWNpbmdTdGF0ZS5sYXN0Q2hh
cmFjdGVyQ2xhc3NGcm9tUHJldmlvdXNSdW4gPSBUZXh0U3BhY2luZzo6Q2hhcmFjdGVyQ2xhc3M6
OlVuZGVmaW5lZDsKIH0KIAotSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6Q29udGVu
dEF0dHJpYnV0ZXMgSW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNB
bmRJbmxpbmVUZXh0SXRlbVdpZHRocyhJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRlbUxpc3QsIElu
bGluZUl0ZW1Qb3NpdGlvbiBkYW1hZ2VQb3NpdGlvbiwgY29uc3QgSW5saW5lSXRlbUxpc3QmIGRh
bWFnZWRJdGVtTGlzdCkKK3ZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpjb21wdXRlSW5saW5lVGV4
dEl0ZW1XaWR0aHNBbmRUZXh0U3BhY2luZyhJbmxpbmVJdGVtTGlzdCYgaW5saW5lSXRlbUxpc3Qp
CiB7Ci0gICAgaWYgKGlubGluZUl0ZW1MaXN0LmlzRW1wdHkoKSAmJiAhZGFtYWdlUG9zaXRpb24p
Ci0gICAgICAgIHJldHVybiB7IH07Ci0KLSAgICBib29sIGlzVGV4dEFuZEZvcmNlZExpbmVCcmVh
a09ubHlDb250ZW50ID0gdHJ1ZTsKLSAgICBzaXplX3QgaW5saW5lQm94Q291bnQgPSAwOwotCi0g
ICAgYXV0byBjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNVcFRvRGFtYWdlID0gWyZdIHsKLSAgICAg
ICAgaWYgKCFkYW1hZ2VQb3NpdGlvbikKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgLy8g
Q29udGVudEF0dHJpYnV0ZXM6OnJlcXVpcmVzVmlzdWFsUmVvcmRlcmluZyBpcyBub3QgaGFuZGxl
ZCBoZXJlIGFzIHdlIGRvbid0IHN1cHBvcnQgcGFydGlhbCBsYXlvdXQgd2l0aCBiaWRpIGNvbnRl
bnQuCi0gICAgICAgIEFTU0VSVChkYW1hZ2VQb3NpdGlvbi5pbmRleCA8IGRhbWFnZWRJdGVtTGlz
dC5zaXplKCkpOwotICAgICAgICBmb3IgKHNpemVfdCBpbmRleCA9IDA7IGluZGV4IDwgZGFtYWdl
UG9zaXRpb24uaW5kZXggJiYgaW5kZXggPCBkYW1hZ2VkSXRlbUxpc3Quc2l6ZSgpOyArK2luZGV4
KSB7Ci0gICAgICAgICAgICBhdXRvJiBpbmxpbmVJdGVtID0gZGFtYWdlZEl0ZW1MaXN0W2luZGV4
XTsKLSAgICAgICAgICAgIGlmIChpbmxpbmVJdGVtLmlzVGV4dCgpKQotICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwotCi0gICAgICAgICAgICBpZiAoaW5saW5lSXRlbS5pc0lubGluZUJveFN0YXJ0
KCkpIHsKLSAgICAgICAgICAgICAgICArK2lubGluZUJveENvdW50OwotICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBpZiAoIWlubGluZUl0ZW0u
aXNJbmxpbmVCb3hFbmQoKSkKLSAgICAgICAgICAgICAgICBpc1RleHRBbmRGb3JjZWRMaW5lQnJl
YWtPbmx5Q29udGVudCA9IGlzVGV4dEFuZEZvcmNlZExpbmVCcmVha09ubHlDb250ZW50ICYmIGlz
VGV4dE9yTGluZUJyZWFrKGlubGluZUl0ZW0ubGF5b3V0Qm94KCkpOwotICAgICAgICB9Ci0gICAg
fTsKLSAgICBjb21wdXRlQ29udGVudEF0dHJpYnV0ZXNVcFRvRGFtYWdlKCk7CisgICAgaWYgKGlu
bGluZUl0ZW1MaXN0LmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1faGFz
VGV4dEF1dG9zcGFjZSkKICAgICAgICAgY29tcHV0ZUlubGluZUJveEJvdW5kYXJ5VGV4dFNwYWNp
bmdzKGlubGluZUl0ZW1MaXN0KTsKQEAgLTgyNiwxOCArODE3LDggQEAgSW5saW5lQ29udGVudENh
Y2hlOjpJbmxpbmVJdGVtczo6Q29udGVudEF0dHJpYnV0ZXMgSW5saW5lSXRlbXNCdWlsZGVyOjpj
b21wdXRlQ28KICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIHNwYWNp
bmdTdGF0ZS5sYXN0Q2hhcmFjdGVyQ2xhc3NGcm9tUHJldmlvdXNSdW4gPSBUZXh0U3BhY2luZzo6
Q2hhcmFjdGVyQ2xhc3M6OlVuZGVmaW5lZDsKLQotICAgICAgICBpZiAoaW5saW5lSXRlbS5pc0lu
bGluZUJveFN0YXJ0KCkpIHsKLSAgICAgICAgICAgICsraW5saW5lQm94Q291bnQ7Ci0gICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmICghaW5saW5lSXRlbS5pc0lu
bGluZUJveEVuZCgpKQotICAgICAgICAgICAgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNv
bnRlbnQgPSBpc1RleHRBbmRGb3JjZWRMaW5lQnJlYWtPbmx5Q29udGVudCAmJiBpc1RleHRPckxp
bmVCcmVhayhpbmxpbmVJdGVtLmxheW91dEJveCgpKTsKICAgICB9CiAgICAgaW5saW5lQ29udGVu
dENhY2hlKCkuc2V0VHJpbW1hYmxlVGV4dFNwYWNpbmdzKFdURjo6bW92ZSh0cmltbWFibGVUZXh0
U3BhY2luZ3MpKTsKLQotICAgIHJldHVybiB7IG1fY29udGVudFJlcXVpcmVzVmlzdWFsUmVvcmRl
cmluZywgaXNUZXh0QW5kRm9yY2VkTGluZUJyZWFrT25seUNvbnRlbnQsIG1faGFzVGV4dEF1dG9z
cGFjZSwgaW5saW5lQm94Q291bnQgfTsKIH0KIAogYm9vbCBJbmxpbmVJdGVtc0J1aWxkZXI6OmJ1
aWxkSW5saW5lSXRlbUxpc3RGb3JUZXh0RnJvbUJyZWFraW5nUG9zaXRpb25zQ2FjaGUoY29uc3Qg
SW5saW5lVGV4dEJveCYgaW5saW5lVGV4dEJveCwgSW5saW5lSXRlbUxpc3QmIGlubGluZUl0ZW1M
aXN0KQpAQCAtMTAwMSw2ICs5ODIsNyBAQCB2b2lkIElubGluZUl0ZW1zQnVpbGRlcjo6aGFuZGxl
SW5saW5lQm94U3RhcnQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1MaQogICAgIGlu
bGluZUl0ZW1MaXN0LmFwcGVuZCh7IGlubGluZUJveCwgSW5saW5lSXRlbTo6VHlwZTo6SW5saW5l
Qm94U3RhcnQgfSk7CiAgICAgbV9jb250ZW50UmVxdWlyZXNWaXN1YWxSZW9yZGVyaW5nIHw9IHJl
cXVpcmVzVmlzdWFsUmVvcmRlcmluZyhpbmxpbmVCb3gpOwogICAgIG1faGFzVGV4dEF1dG9zcGFj
ZSB8PSAhaW5saW5lQm94LnN0eWxlKCkudGV4dEF1dG9zcGFjZSgpLmlzTm9BdXRvc3BhY2UoKTsK
KyAgICArK21faW5saW5lQm94Q291bnQ7CiB9CiAKIHZvaWQgSW5saW5lSXRlbXNCdWlsZGVyOjpo
YW5kbGVJbmxpbmVCb3hFbmQoY29uc3QgQm94JiBpbmxpbmVCb3gsIElubGluZUl0ZW1MaXN0JiBp
bmxpbmVJdGVtTGlzdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0
aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUv
bGF5b3V0L2Zvcm1hdHRpbmdDb250ZXh0cy9pbmxpbmUvSW5saW5lSXRlbXNCdWlsZGVyLmgKaW5k
ZXggYTkyNjgyN2U5MjQ4Li4xOGQyNWJjN2FkYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGluZUl0ZW1zQnVpbGRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xheW91dC9mb3JtYXR0aW5nQ29udGV4dHMvaW5saW5lL0lubGlu
ZUl0ZW1zQnVpbGRlci5oCkBAIC01Myw3ICs1Myw3IEBAIHByaXZhdGU6CiAgICAgTGF5b3V0UXVl
dWUgaW5pdGlhbGl6ZUxheW91dFF1ZXVlKElubGluZUl0ZW1Qb3NpdGlvbiBzdGFydFBvc2l0aW9u
KTsKICAgICBMYXlvdXRRdWV1ZSB0cmF2ZXJzZVVudGlsRGFtYWdlZChjb25zdCBCb3gmIGZpcnN0
RGFtYWdlZExheW91dEJveCk7CiAgICAgdm9pZCBicmVha0FuZENvbXB1dGVCaWRpTGV2ZWxzKElu
bGluZUl0ZW1MaXN0Jik7Ci0gICAgSW5saW5lQ29udGVudENhY2hlOjpJbmxpbmVJdGVtczo6Q29u
dGVudEF0dHJpYnV0ZXMgY29tcHV0ZUNvbnRlbnRBdHRyaWJ1dGVzQW5kSW5saW5lVGV4dEl0ZW1X
aWR0aHMoSW5saW5lSXRlbUxpc3QmLCBJbmxpbmVJdGVtUG9zaXRpb24gZGFtYWdlUG9zaXRpb24s
IGNvbnN0IElubGluZUl0ZW1MaXN0JiBkYW1hZ2VkSXRlbUxpc3QpOworICAgIHZvaWQgY29tcHV0
ZUlubGluZVRleHRJdGVtV2lkdGhzQW5kVGV4dFNwYWNpbmcoSW5saW5lSXRlbUxpc3QmKTsKIAog
ICAgIHZvaWQgaGFuZGxlVGV4dENvbnRlbnQoY29uc3QgSW5saW5lVGV4dEJveCYsIElubGluZUl0
ZW1MaXN0Jiwgc3RkOjpvcHRpb25hbDxzaXplX3Q+IHBhcnRpYWxDb250ZW50T2Zmc2V0KTsKICAg
ICBib29sIGJ1aWxkSW5saW5lSXRlbUxpc3RGb3JUZXh0RnJvbUJyZWFraW5nUG9zaXRpb25zQ2Fj
aGUoY29uc3QgSW5saW5lVGV4dEJveCYsIElubGluZUl0ZW1MaXN0Jik7CkBAIC03Myw2ICs3Myw4
IEBAIHByaXZhdGU6CiAgICAgY29uc3QgRWxlbWVudEJveCYgbV9yb290OwogICAgIGNvbnN0IFNl
Y3VyaXR5T3JpZ2luJiBtX3NlY3VyaXR5T3JpZ2luOwogCisgICAgc2l6ZV90IG1faW5saW5lQm94
Q291bnQgeyAwIH07CisgICAgYm9vbCBtX2hhc1RleHRBbmRMaW5lQnJlYWtPbmx5Q29udGVudCB7
IHRydWUgfTsgLy8gTm90ZSB0aGF0IHRoaXMgaXMgdHJ1ZSBmb3IgY2FzZXMgbGlrZSA8c3Bhbj50
ZXh0IGNvbnRlbnQ8L3NwYW4+CiAgICAgYm9vbCBtX2NvbnRlbnRSZXF1aXJlc1Zpc3VhbFJlb3Jk
ZXJpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9oYXNUZXh0QXV0b3NwYWNlIHsgIXJvb3QoKS5z
dHlsZSgpLnRleHRBdXRvc3BhY2UoKS5pc05vQXV0b3NwYWNlKCkgfTsKICAgICBzdGQ6Om9wdGlv
bmFsPGJvb2w+IG1fdGV4dENvbnRlbnRQb3B1bGF0ZWRGcm9tQ2FjaGUgeyB9Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>