<?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>314496</bug_id>
          
          <creation_ts>2026-05-09 19:29:49 -0700</creation_ts>
          <short_desc>[cleanup] Replace chained assignments in RenderReplaced and RenderBox intrinsic width computation</short_desc>
          <delta_ts>2026-05-15 08:29:12 -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>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>2209429</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2026-05-09 19:29:49 -0700</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2209430</commentid>
    <comment_count>1</comment_count>
      <attachid>479568</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-05-09 19:30:41 -0700</bug_when>
    <thetext>Created attachment 479568
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2210130</commentid>
    <comment_count>2</comment_count>
      <attachid>479634</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-05-12 07:31:30 -0700</bug_when>
    <thetext>Created attachment 479634
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2210135</commentid>
    <comment_count>3</comment_count>
      <attachid>479636</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-05-12 07:58:39 -0700</bug_when>
    <thetext>Created attachment 479636
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2211179</commentid>
    <comment_count>4</comment_count>
      <attachid>479675</attachid>
    <who name="alan">zalan</who>
    <bug_when>2026-05-15 05:25:54 -0700</bug_when>
    <thetext>Created attachment 479675
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2211192</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-05-15 08:28:19 -0700</bug_when>
    <thetext>Committed 313311@main (f27d4cd2eaf5): &lt;https://commits.webkit.org/313311@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 479675.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2211193</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-05-15 08:29:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/177168765&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479568</attachid>
            <date>2026-05-09 19:30:41 -0700</date>
            <delta_ts>2026-05-12 07:31:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-314496-20260509193040.patch</filename>
            <type>text/plain</type>
            <size>7050</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBmM2RhMTIzMWMwZjQ4ZjgyOTNlYWUyZTM4ZDliMjcwOWZkMzE3ODRmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFNhdCwgOSBNYXkgMjAyNiAxOToyOTo1OCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIFtjbGVhbnVw
XSBSZXBsYWNlIGNoYWluZWQgYXNzaWdubWVudHMgaW4gUmVuZGVyUmVwbGFjZWQgYW5kCiBSZW5k
ZXJCb3ggaW50cmluc2ljIHdpZHRoIGNvbXB1dGF0aW9uCiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzE0NDk2CgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiog
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHA6CihXZWJDb3JlOjpSZW5kZXJC
b3g6OmNvbXB1dGVJbnRyaW5zaWNLZXl3b3JkTG9naWNhbFdpZHRocyBjb25zdCk6CiogU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcDoKKFdlYkNvcmU6OlJlbmRlclJl
cGxhY2VkOjpjb21wdXRlSW50cmluc2ljTG9naWNhbFdpZHRocyBjb25zdCk6CihXZWJDb3JlOjpS
ZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgotLS0KIFNvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwICAgICAgfCA1NCArKysrKysrKysrKyst
LS0tLS0tLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAgfCAx
NiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNDAgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25z
KC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCBkYzU5OWIyOWIw
ZmEuLjFjOTYxZmFlN2ZkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAK
QEAgLTI5NDEsMzIgKzI5NDEsMzggQEAgTGF5b3V0VW5pdCBSZW5kZXJCb3g6OmZpbGxBdmFpbGFi
bGVNZWFzdXJlKExheW91dFVuaXQgYXZhaWxhYmxlTG9naWNhbFdpZHRoLCBMYXkKIAogdGVtcGxh
dGU8dHlwZW5hbWUgS2V5d29yZD4gdm9pZCBSZW5kZXJCb3g6OmNvbXB1dGVJbnRyaW5zaWNLZXl3
b3JkTG9naWNhbFdpZHRocyhLZXl3b3JkLCBMYXlvdXRVbml0IGJvcmRlckFuZFBhZGRpbmcsIExh
eW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9naWNhbFdpZHRoKSBj
b25zdAogewotICAgIGlmIGNvbnN0ZXhwciAoc3RkOjpzYW1lX2FzPEtleXdvcmQsIENTUzo6S2V5
d29yZDo6TWluSW50cmluc2ljPikKKyAgICBpZiBjb25zdGV4cHIgKHN0ZDo6c2FtZV9hczxLZXl3
b3JkLCBDU1M6OktleXdvcmQ6Ok1pbkludHJpbnNpYz4pIHsKICAgICAgICAgY29tcHV0ZUludHJp
bnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzKG1pbkxvZ2ljYWxXaWR0aCwgbWF4TG9naWNhbFdpZHRo
KTsKLSAgICBlbHNlIHsKLSAgICAgICAgaWYgKHNob3VsZENvbXB1dGVMb2dpY2FsV2lkdGhGcm9t
QXNwZWN0UmF0aW8oKSkgewotICAgICAgICAgICAgbWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNh
bFdpZHRoID0gY29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRpb0ludGVybmFsKCkgLSBi
b3JkZXJBbmRQYWRkaW5nOwotICAgICAgICAgICAgaWYgKGZpcnN0Q2hpbGQoKSAmJiBzdHlsZSgp
LmxvZ2ljYWxNaW5XaWR0aCgpLmlzQXV0bygpKSB7Ci0gICAgICAgICAgICAgICAgTGF5b3V0VW5p
dCBtaW5DaGlsZHJlbkxvZ2ljYWxXaWR0aDsKLSAgICAgICAgICAgICAgICBMYXlvdXRVbml0IG1h
eENoaWxkcmVuTG9naWNhbFdpZHRoOwotICAgICAgICAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNL
ZXl3b3JkTG9naWNhbFdpZHRocyhtaW5DaGlsZHJlbkxvZ2ljYWxXaWR0aCwgbWF4Q2hpbGRyZW5M
b2dpY2FsV2lkdGgpOwotICAgICAgICAgICAgICAgIG1pbkxvZ2ljYWxXaWR0aCA9IHN0ZDo6bWF4
KG1pbkxvZ2ljYWxXaWR0aCwgbWluQ2hpbGRyZW5Mb2dpY2FsV2lkdGgpOwotICAgICAgICAgICAg
ICAgIG1heExvZ2ljYWxXaWR0aCA9IHN0ZDo6bWF4KG1heExvZ2ljYWxXaWR0aCwgbWF4Q2hpbGRy
ZW5Mb2dpY2FsV2lkdGgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgaWYgKENoZWNr
ZWRQdHIgcmVuZGVyUmVwbGFjZWQgPSBkeW5hbWljRG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+KCp0
aGlzKSkgewotICAgICAgICAgICAgLy8gRm9yIHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggYW4gaW50
cmluc2ljIGFzcGVjdCByYXRpbyAoZS5nLiA8aW1nPikgYW5kIGEKLSAgICAgICAgICAgIC8vIHNw
ZWNpZmllZCBibG9jayBzaXplLCBjb21wdXRlIHRoZSB0cmFuc2ZlcnJlZCBtaW4vbWF4LWNvbnRl
bnQgaW5saW5lIHNpemUKLSAgICAgICAgICAgIC8vIHRocm91Z2ggdGhlIGludHJpbnNpYyByYXRp
byByYXRoZXIgdGhhbiB1c2luZyB0aGUgcmF3IG5hdHVyYWwgd2lkdGguCi0gICAgICAgICAgICBh
dXRvIHByZWZlcnJlZFJhdGlvID0gcmVuZGVyUmVwbGFjZWQtPnByZWZlcnJlZEFzcGVjdFJhdGlv
QXNTaXplKCkuYXNwZWN0UmF0aW9Eb3VibGUoKTsKLSAgICAgICAgICAgIGlmIChwcmVmZXJyZWRS
YXRpbyAmJiBzdHlsZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc1NwZWNpZmllZCgpKSB7Ci0gICAgICAg
ICAgICAgICAgYXV0byBjb21wdXRlZFZhbHVlcyA9IGNvbXB1dGVMb2dpY2FsSGVpZ2h0KGxvZ2lj
YWxIZWlnaHQoKSwgbG9naWNhbFRvcCgpKTsKLSAgICAgICAgICAgICAgICBhdXRvIGNvbnRlbnRC
bG9ja1NpemUgPSBzdGQ6Om1heCgwX2x1LCBjb21wdXRlZFZhbHVlcy5leHRlbnQgLSBib3JkZXJB
bmRQYWRkaW5nTG9naWNhbEhlaWdodCgpKTsKLSAgICAgICAgICAgICAgICBtaW5Mb2dpY2FsV2lk
dGggPSBtYXhMb2dpY2FsV2lkdGggPSBMYXlvdXRVbml0KGNvbnRlbnRCbG9ja1NpemUgKiBwcmVm
ZXJyZWRSYXRpbyk7Ci0gICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICBjb21wdXRl
SW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMobWluTG9naWNhbFdpZHRoLCBtYXhMb2dpY2Fs
V2lkdGgpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNLZXl3
b3JkTG9naWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2ljYWxXaWR0aCk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoc2hvdWxkQ29tcHV0ZUxvZ2ljYWxXaWR0aEZy
b21Bc3BlY3RSYXRpbygpKSB7CisgICAgICAgIG1heExvZ2ljYWxXaWR0aCA9IGNvbXB1dGVMb2dp
Y2FsV2lkdGhGcm9tQXNwZWN0UmF0aW9JbnRlcm5hbCgpIC0gYm9yZGVyQW5kUGFkZGluZzsKKyAg
ICAgICAgbWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNhbFdpZHRoOworICAgICAgICBpZiAoZmly
c3RDaGlsZCgpICYmIHN0eWxlKCkubG9naWNhbE1pbldpZHRoKCkuaXNBdXRvKCkpIHsKKyAgICAg
ICAgICAgIExheW91dFVuaXQgbWluQ2hpbGRyZW5Mb2dpY2FsV2lkdGg7CisgICAgICAgICAgICBM
YXlvdXRVbml0IG1heENoaWxkcmVuTG9naWNhbFdpZHRoOworICAgICAgICAgICAgY29tcHV0ZUlu
dHJpbnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzKG1pbkNoaWxkcmVuTG9naWNhbFdpZHRoLCBtYXhD
aGlsZHJlbkxvZ2ljYWxXaWR0aCk7CisgICAgICAgICAgICBtaW5Mb2dpY2FsV2lkdGggPSBzdGQ6
Om1heChtaW5Mb2dpY2FsV2lkdGgsIG1pbkNoaWxkcmVuTG9naWNhbFdpZHRoKTsKKyAgICAgICAg
ICAgIG1heExvZ2ljYWxXaWR0aCA9IHN0ZDo6bWF4KG1heExvZ2ljYWxXaWR0aCwgbWF4Q2hpbGRy
ZW5Mb2dpY2FsV2lkdGgpOworICAgICAgICB9CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBpZiAoQ2hlY2tlZFB0ciByZW5kZXJSZXBsYWNlZCA9IGR5bmFtaWNEb3duY2FzdDxSZW5kZXJS
ZXBsYWNlZD4oKnRoaXMpKSB7CisgICAgICAgIC8vIEZvciByZXBsYWNlZCBlbGVtZW50cyB3aXRo
IGFuIGludHJpbnNpYyBhc3BlY3QgcmF0aW8gKGUuZy4gPGltZz4pIGFuZCBhCisgICAgICAgIC8v
IHNwZWNpZmllZCBibG9jayBzaXplLCBjb21wdXRlIHRoZSB0cmFuc2ZlcnJlZCBtaW4vbWF4LWNv
bnRlbnQgaW5saW5lIHNpemUKKyAgICAgICAgLy8gdGhyb3VnaCB0aGUgaW50cmluc2ljIHJhdGlv
IHJhdGhlciB0aGFuIHVzaW5nIHRoZSByYXcgbmF0dXJhbCB3aWR0aC4KKyAgICAgICAgYXV0byBw
cmVmZXJyZWRSYXRpbyA9IHJlbmRlclJlcGxhY2VkLT5wcmVmZXJyZWRBc3BlY3RSYXRpb0FzU2l6
ZSgpLmFzcGVjdFJhdGlvRG91YmxlKCk7CisgICAgICAgIGlmIChwcmVmZXJyZWRSYXRpbyAmJiBz
dHlsZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc1NwZWNpZmllZCgpKSB7CisgICAgICAgICAgICBhdXRv
IGNvbXB1dGVkVmFsdWVzID0gY29tcHV0ZUxvZ2ljYWxIZWlnaHQobG9naWNhbEhlaWdodCgpLCBs
b2dpY2FsVG9wKCkpOworICAgICAgICAgICAgYXV0byBjb250ZW50QmxvY2tTaXplID0gc3RkOjpt
YXgoMF9sdSwgY29tcHV0ZWRWYWx1ZXMuZXh0ZW50IC0gYm9yZGVyQW5kUGFkZGluZ0xvZ2ljYWxI
ZWlnaHQoKSk7CisgICAgICAgICAgICBtYXhMb2dpY2FsV2lkdGggPSBMYXlvdXRVbml0IHsgY29u
dGVudEJsb2NrU2l6ZSAqIHByZWZlcnJlZFJhdGlvIH07CisgICAgICAgICAgICBtaW5Mb2dpY2Fs
V2lkdGggPSBtYXhMb2dpY2FsV2lkdGg7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0K
ICAgICB9CisgICAgY29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzKG1pbkxvZ2lj
YWxXaWR0aCwgbWF4TG9naWNhbFdpZHRoKTsKIH0KIAogc3RhdGljIGlubGluZSBib29sIE5PREVM
RVRFIGlzT3J0aG9nb25hbChjb25zdCBSZW5kZXJCb3gmIHJlbmRlcmVyLCBjb25zdCBSZW5kZXJF
bGVtZW50JiBhbmNlc3RvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJSZXBsYWNlZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFj
ZWQuY3BwCmluZGV4IDcyMTJjMGI3MWE4Mi4uYWUwM2MzZGU2Njc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAKQEAgLTgwMCw3ICs4MDAsOCBAQCBMYXlv
dXRVbml0IFJlbmRlclJlcGxhY2VkOjpjb21wdXRlUmVwbGFjZWRMb2dpY2FsSGVpZ2h0KHN0ZDo6
b3B0aW9uYWw8TGF5b3V0VW5pdAogCiB2b2lkIFJlbmRlclJlcGxhY2VkOjpjb21wdXRlSW50cmlu
c2ljTG9naWNhbFdpZHRocyhMYXlvdXRVbml0JiBtaW5Mb2dpY2FsV2lkdGgsIExheW91dFVuaXQm
IG1heExvZ2ljYWxXaWR0aCkgY29uc3QKIHsKLSAgICBtaW5Mb2dpY2FsV2lkdGggPSBtYXhMb2dp
Y2FsV2lkdGggPSBpbnRyaW5zaWNMb2dpY2FsV2lkdGgoKTsKKyAgICBtYXhMb2dpY2FsV2lkdGgg
PSBpbnRyaW5zaWNMb2dpY2FsV2lkdGgoKTsKKyAgICBtaW5Mb2dpY2FsV2lkdGggPSBtYXhMb2dp
Y2FsV2lkdGg7CiB9CiAKIHZvaWQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVJbnRyaW5zaWNLZXl3
b3JkTG9naWNhbFdpZHRocyhMYXlvdXRVbml0JiBtaW5Mb2dpY2FsV2lkdGgsIExheW91dFVuaXQm
IG1heExvZ2ljYWxXaWR0aCkgY29uc3QKQEAgLTg1MywxMiArODU0LDE1IEBAIHZvaWQgUmVuZGVy
UmVwbGFjZWQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICAvLyBXZSBjYW5u
b3QgcmVzb2x2ZSBhbnkgcGVyY2VudCBsb2dpY2FsIHdpZHRoIGhlcmUgYXMgdGhlIGF2YWlsYWJs
ZSBsb2dpY2FsCiAgICAgLy8gd2lkdGggbWF5IG5vdCBiZSBzZXQgb24gb3VyIGNvbnRhaW5pbmcg
YmxvY2suCiAgICAgaWYgKHN0eWxlKCkubG9naWNhbFdpZHRoKCkuaXNQZXJjZW50T3JDYWxjdWxh
dGVkKCkpIHsKLSAgICAgICAgaWYgKGNhbkRlcml2ZVByZWZlcnJlZFdpZHRoRnJvbUFzcGVjdFJh
dGlvKCp0aGlzKSkKLSAgICAgICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBjb21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJh
dGlvSW50ZXJuYWwoKSAtIGJvcmRlckFuZFBhZGRpbmdMb2dpY2FsV2lkdGgoKTsKLSAgICAgICAg
ZWxzZQorICAgICAgICBpZiAoY2FuRGVyaXZlUHJlZmVycmVkV2lkdGhGcm9tQXNwZWN0UmF0aW8o
KnRoaXMpKSB7CisgICAgICAgICAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGNvbXB1
dGVMb2dpY2FsV2lkdGhGcm9tQXNwZWN0UmF0aW9JbnRlcm5hbCgpIC0gYm9yZGVyQW5kUGFkZGlu
Z0xvZ2ljYWxXaWR0aCgpOworICAgICAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgg
PSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICAgICAgfSBlbHNlCiAgICAgICAgICAg
ICBjb21wdXRlSW50cmluc2ljTG9naWNhbFdpZHRocyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0
aCwgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwotICAgIH0gZWxzZQotICAgICAgICBtX21p
blByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gY29t
cHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQ6OkNvbXB1dGVQ
cmVmZXJyZWQpOworICAgIH0gZWxzZSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gY29tcHV0ZVJlcGxhY2VkTG9naWNhbFdpZHRoKFNob3VsZENvbXB1dGVQcmVmZXJyZWQ6
OkNvbXB1dGVQcmVmZXJyZWQpOworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9
IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoOworICAgIH0KIAogICAgIGJvb2wgaWdub3JlTWlu
TWF4U2l6ZXMgPSBzaG91bGRJZ25vcmVMb2dpY2FsTWluTWF4V2lkdGhTaXplcygpOwogICAgIGNv
bnN0IFJlbmRlclN0eWxlJiBzdHlsZVRvVXNlID0gc3R5bGUoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479634</attachid>
            <date>2026-05-12 07:31:30 -0700</date>
            <delta_ts>2026-05-12 07:58:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-314496-20260512073129.patch</filename>
            <type>text/plain</type>
            <size>22256</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA3YTkxMDI2ODk3OGRjZDVkODg4ZGE1ZmFlYWQ3YjExZGVmYzk1YTIzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMTIgTWF5IDIwMjYgMDc6MjY6NDMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbY2xlYW51
cF0gUmVwbGFjZSBjaGFpbmVkIGFzc2lnbm1lbnRzIGluIGludHJpbnNpYyB3aWR0aAogY29tcHV0
YXRpb25zIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTQ0OTYKClJl
dmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2suY3BwOgooV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmNvbXB1dGVQcmVmZXJyZWRMb2dp
Y2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKFdl
YkNvcmU6OlJlbmRlckJveDo6Y29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzIGNv
bnN0KToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxl
Qm94LmNwcDoKKFdlYkNvcmU6OlJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveDo6Y29tcHV0ZVBy
ZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
aWxlVXBsb2FkQ29udHJvbC5jcHA6CihXZWJDb3JlOjpSZW5kZXJGaWxlVXBsb2FkQ29udHJvbDo6
Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHA6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVudENv
bnRhaW5lcjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcDoKKFdlYkNvcmU6OlJlbmRlckxpc3RCb3g6OmNv
bXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGlzdE1hcmtlci5jcHA6CihXZWJDb3JlOjpSZW5kZXJMaXN0TWFya2VyOjpjb21wdXRl
UHJlZmVycmVkTG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck1lbnVMaXN0LmNwcDoKKFdlYkNvcmU6OlJlbmRlck1lbnVMaXN0Ojpjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2Vk
LmNwcDoKKFdlYkNvcmU6OlJlbmRlclJlcGxhY2VkOjpjb21wdXRlSW50cmluc2ljTG9naWNhbFdp
ZHRocyBjb25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNsaWRlci5jcHA6
CihXZWJDb3JlOjpSZW5kZXJTbGlkZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToK
KiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwOgooV2ViQ29y
ZTo6UmVuZGVyVGV4dENvbnRyb2w6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNwcDoK
KFdlYkNvcmU6OlJlbmRlck1hdGhNTEZyYWN0aW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdp
ZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxSb290
LmNwcDoKKFdlYkNvcmU6OlJlbmRlck1hdGhNTFJvb3Q6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2Fs
V2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJv
dy5jcHA6CihXZWJDb3JlOjpSZW5kZXJNYXRoTUxSb3c6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2Fs
V2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFNw
YWNlLmNwcDoKKFdlYkNvcmU6OlJlbmRlck1hdGhNTFNwYWNlOjpjb21wdXRlUHJlZmVycmVkTG9n
aWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRo
TUxVbmRlck92ZXIuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1MVW5kZXJPdmVyOjpjb21wdXRl
UHJlZmVycmVkTG9naWNhbFdpZHRocyk6Ci0tLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcCAgICAgIHwgIDMgKy0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCb3guY3BwICAgICAgICB8IDQwICsrKysrKysrKystLS0tLS0tLS0KIC4uLi9yZW5kZXJpbmcv
UmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCB8IDEwICsrKy0tCiAuLi4vcmVuZGVyaW5n
L1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNwcCAgICAgfCAgNyArKy0tCiAuLi4vcmVuZGVyaW5n
L1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNwcCAgICAgfCAxMCArKystLQogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwICAgIHwgIDcgKystLQogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxpc3RNYXJrZXIuY3BwIHwgIDMgKy0KIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAgICB8ICA3ICsrLS0KIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAgICB8ICAzICstCiBTb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNwcCAgICAgfCAgNyArKy0tCiAuLi4vV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwICAgfCAgNyArKy0tCiAuLi4vcmVuZGVyaW5nL21h
dGhtbC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5jcHAgfCAgMyArLQogLi4uL3JlbmRlcmluZy9tYXRo
bWwvUmVuZGVyTWF0aE1MUm9vdC5jcHAgICAgIHwgIDMgKy0KIC4uLi9yZW5kZXJpbmcvbWF0aG1s
L1JlbmRlck1hdGhNTFJvdy5jcHAgICAgICB8ICAzICstCiAuLi4vcmVuZGVyaW5nL21hdGhtbC9S
ZW5kZXJNYXRoTUxTcGFjZS5jcHAgICAgfCAgMyArLQogLi4uL21hdGhtbC9SZW5kZXJNYXRoTUxV
bmRlck92ZXIuY3BwICAgICAgICAgIHwgIDMgKy0KIDE2IGZpbGVzIGNoYW5nZWQsIDcwIGluc2Vy
dGlvbnMoKyksIDQ5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCbG9jay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
QmxvY2suY3BwCmluZGV4IDZkMDI2OTUyMzA3NC4uNzJmMGJmZDhlNWIzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTIyNDMsNyArMjI0Myw4IEBAIHZvaWQg
UmVuZGVyQmxvY2s6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICAgICAgY29t
cHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1f
bWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKICAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKICAgICB9IGVsc2UgaWYgKHNob3Vs
ZENvbXB1dGVMb2dpY2FsV2lkdGhGcm9tQXNwZWN0UmF0aW8oKSkgewotICAgICAgICBtX21pblBy
ZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gKGNvbXB1
dGVMb2dpY2FsV2lkdGhGcm9tQXNwZWN0UmF0aW8oKSAtIGJvcmRlckFuZFBhZGRpbmdMb2dpY2Fs
V2lkdGgoKSk7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gY29tcHV0ZUxv
Z2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRpbygpIC0gYm9yZGVyQW5kUGFkZGluZ0xvZ2ljYWxXaWR0
aCgpOworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVk
TG9naWNhbFdpZHRoOwogICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHN0ZDo6
bWF4KDBfbHUsIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoKTsKICAgICAgICAgbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heCgwX2x1LCBtX21heFByZWZlcnJlZExvZ2ljYWxX
aWR0aCk7CiAgICAgICAgIGFwcGx5QXV0b21hdGljQ29udGVudEJhc2VkTWluaW11bVNpemUobV9t
aW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKaW5kZXggN2IyMzA5NTQyNTU2Li40OTA2
ZWY4NjVhNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3gu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC0yOTI4
LDI1ICsyOTI4LDI5IEBAIExheW91dFVuaXQgUmVuZGVyQm94OjpmaWxsQXZhaWxhYmxlTWVhc3Vy
ZShMYXlvdXRVbml0IGF2YWlsYWJsZUxvZ2ljYWxXaWR0aCwgTGF5CiB0ZW1wbGF0ZTx0eXBlbmFt
ZSBLZXl3b3JkPiB2b2lkIFJlbmRlckJveDo6Y29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2Fs
V2lkdGhzKEtleXdvcmQsIExheW91dFVuaXQgYm9yZGVyQW5kUGFkZGluZywgTGF5b3V0VW5pdCYg
bWluTG9naWNhbFdpZHRoLCBMYXlvdXRVbml0JiBtYXhMb2dpY2FsV2lkdGgpIGNvbnN0CiB7CiAg
ICAgaWYgY29uc3RleHByIChzdGQ6OnNhbWVfYXM8S2V5d29yZCwgQ1NTOjpLZXl3b3JkOjpNaW5J
bnRyaW5zaWM+KQotICAgICAgICBjb21wdXRlSW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMo
bWluTG9naWNhbFdpZHRoLCBtYXhMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UgewotICAgICAgICBp
ZiAoc2hvdWxkQ29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRpbygpKSB7Ci0gICAgICAg
ICAgICBtaW5Mb2dpY2FsV2lkdGggPSBtYXhMb2dpY2FsV2lkdGggPSBjb21wdXRlTG9naWNhbFdp
ZHRoRnJvbUFzcGVjdFJhdGlvKCkgLSBib3JkZXJBbmRQYWRkaW5nOwotICAgICAgICAgICAgYXBw
bHlBdXRvbWF0aWNDb250ZW50QmFzZWRNaW5pbXVtU2l6ZShtaW5Mb2dpY2FsV2lkdGgsIG1heExv
Z2ljYWxXaWR0aCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoQ2hlY2tlZFB0ciByZW5kZXJSZXBsYWNl
ZCA9IGR5bmFtaWNEb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4oKnRoaXMpKSB7Ci0gICAgICAgICAg
ICAvLyBGb3IgcmVwbGFjZWQgZWxlbWVudHMgd2l0aCBhbiBpbnRyaW5zaWMgYXNwZWN0IHJhdGlv
IChlLmcuIDxpbWc+KSBhbmQgYQotICAgICAgICAgICAgLy8gc3BlY2lmaWVkIGJsb2NrIHNpemUs
IGNvbXB1dGUgdGhlIHRyYW5zZmVycmVkIG1pbi9tYXgtY29udGVudCBpbmxpbmUgc2l6ZQotICAg
ICAgICAgICAgLy8gdGhyb3VnaCB0aGUgaW50cmluc2ljIHJhdGlvIHJhdGhlciB0aGFuIHVzaW5n
IHRoZSByYXcgbmF0dXJhbCB3aWR0aC4KLSAgICAgICAgICAgIGF1dG8gcHJlZmVycmVkUmF0aW8g
PSByZW5kZXJSZXBsYWNlZC0+cHJlZmVycmVkQXNwZWN0UmF0aW9Bc1NpemUoKS5hc3BlY3RSYXRp
b0RvdWJsZSgpOwotICAgICAgICAgICAgaWYgKHByZWZlcnJlZFJhdGlvICYmIHN0eWxlKCkubG9n
aWNhbEhlaWdodCgpLmlzU3BlY2lmaWVkKCkpIHsKLSAgICAgICAgICAgICAgICBhdXRvIGNvbXB1
dGVkVmFsdWVzID0gY29tcHV0ZUxvZ2ljYWxIZWlnaHQobG9naWNhbEhlaWdodCgpLCBsb2dpY2Fs
VG9wKCkpOwotICAgICAgICAgICAgICAgIGF1dG8gY29udGVudEJsb2NrU2l6ZSA9IHN0ZDo6bWF4
KDBfbHUsIGNvbXB1dGVkVmFsdWVzLmV4dGVudCAtIGJvcmRlckFuZFBhZGRpbmdMb2dpY2FsSGVp
Z2h0KCkpOwotICAgICAgICAgICAgICAgIG1pbkxvZ2ljYWxXaWR0aCA9IG1heExvZ2ljYWxXaWR0
aCA9IExheW91dFVuaXQoY29udGVudEJsb2NrU2l6ZSAqIHByZWZlcnJlZFJhdGlvKTsKLSAgICAg
ICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNLZXl3b3JkTG9n
aWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2ljYWxXaWR0aCk7Ci0gICAgICAgIH0g
ZWxzZQotICAgICAgICAgICAgY29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzKG1p
bkxvZ2ljYWxXaWR0aCwgbWF4TG9naWNhbFdpZHRoKTsKKyAgICAgICAgcmV0dXJuIGNvbXB1dGVJ
bnRyaW5zaWNLZXl3b3JkTG9naWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2ljYWxX
aWR0aCk7CisKKyAgICBpZiAoc2hvdWxkQ29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRp
bygpKSB7CisgICAgICAgIG1heExvZ2ljYWxXaWR0aCA9IGNvbXB1dGVMb2dpY2FsV2lkdGhGcm9t
QXNwZWN0UmF0aW8oKSAtIGJvcmRlckFuZFBhZGRpbmc7CisgICAgICAgIG1pbkxvZ2ljYWxXaWR0
aCA9IG1heExvZ2ljYWxXaWR0aDsKKyAgICAgICAgYXBwbHlBdXRvbWF0aWNDb250ZW50QmFzZWRN
aW5pbXVtU2l6ZShtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2ljYWxXaWR0aCk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICBpZiAoQ2hlY2tlZFB0ciByZW5kZXJSZXBsYWNlZCA9IGR5bmFt
aWNEb3duY2FzdDxSZW5kZXJSZXBsYWNlZD4oKnRoaXMpKSB7CisgICAgICAgIC8vIEZvciByZXBs
YWNlZCBlbGVtZW50cyB3aXRoIGFuIGludHJpbnNpYyBhc3BlY3QgcmF0aW8gKGUuZy4gPGltZz4p
IGFuZCBhCisgICAgICAgIC8vIHNwZWNpZmllZCBibG9jayBzaXplLCBjb21wdXRlIHRoZSB0cmFu
c2ZlcnJlZCBtaW4vbWF4LWNvbnRlbnQgaW5saW5lIHNpemUKKyAgICAgICAgLy8gdGhyb3VnaCB0
aGUgaW50cmluc2ljIHJhdGlvIHJhdGhlciB0aGFuIHVzaW5nIHRoZSByYXcgbmF0dXJhbCB3aWR0
aC4KKyAgICAgICAgYXV0byBwcmVmZXJyZWRSYXRpbyA9IHJlbmRlclJlcGxhY2VkLT5wcmVmZXJy
ZWRBc3BlY3RSYXRpb0FzU2l6ZSgpLmFzcGVjdFJhdGlvRG91YmxlKCk7CisgICAgICAgIGlmIChw
cmVmZXJyZWRSYXRpbyAmJiBzdHlsZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc1NwZWNpZmllZCgpKSB7
CisgICAgICAgICAgICBhdXRvIGNvbXB1dGVkVmFsdWVzID0gY29tcHV0ZUxvZ2ljYWxIZWlnaHQo
bG9naWNhbEhlaWdodCgpLCBsb2dpY2FsVG9wKCkpOworICAgICAgICAgICAgYXV0byBjb250ZW50
QmxvY2tTaXplID0gc3RkOjptYXgoMF9sdSwgY29tcHV0ZWRWYWx1ZXMuZXh0ZW50IC0gYm9yZGVy
QW5kUGFkZGluZ0xvZ2ljYWxIZWlnaHQoKSk7CisgICAgICAgICAgICBtYXhMb2dpY2FsV2lkdGgg
PSBMYXlvdXRVbml0KGNvbnRlbnRCbG9ja1NpemUgKiBwcmVmZXJyZWRSYXRpbyk7CisgICAgICAg
ICAgICBtaW5Mb2dpY2FsV2lkdGggPSBtYXhMb2dpY2FsV2lkdGg7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KICAgICB9CisgICAgY29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2Fs
V2lkdGhzKG1pbkxvZ2ljYWxXaWR0aCwgbWF4TG9naWNhbFdpZHRoKTsKIH0KIAogc3RhdGljIGlu
bGluZSBib29sIE5PREVMRVRFIGlzT3J0aG9nb25hbChjb25zdCBSZW5kZXJCb3gmIHJlbmRlcmVy
LCBjb25zdCBSZW5kZXJFbGVtZW50JiBhbmNlc3RvcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJEZXByZWNhdGVkRmxleGlibGVCb3guY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveC5jcHAKaW5kZXggZDFk
M2U1ZTQwMjBhLi5lMzE0MGViNmQwZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJEZXByZWNhdGVkRmxleGlibGVCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJEZXByZWNhdGVkRmxleGlibGVCb3guY3BwCkBAIC0yNzAsMTAgKzI3
MCwxMiBAQCB2b2lkIFJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveDo6Y29tcHV0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aHMoKQogewogICAgIEFTU0VSVChuZWVkc1ByZWZlcnJlZExvZ2ljYWxXaWR0
aHNVcGRhdGUoKSk7CiAKLSAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gMDsKLSAgICBpZiAoYXV0byBmaXhlZFdpZHRoID0gc3R5bGUo
KS53aWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVkV2lkdGggJiYgZml4ZWRXaWR0aC0+aXNQb3NpdGl2
ZSgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVk
TG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygq
Zml4ZWRXaWR0aCk7Ci0gICAgZWxzZQorICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0g
MDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CisgICAgaWYgKGF1dG8gZml4
ZWRXaWR0aCA9IHN0eWxlKCkud2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZFdpZHRoICYmIGZpeGVk
V2lkdGgtPmlzUG9zaXRpdmUoKSkgeworICAgICAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0
aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXppbmcoKmZpeGVkV2lkdGgp
OworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9n
aWNhbFdpZHRoOworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2ljTG9naWNhbFdp
ZHRocyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lk
dGgpOwogCiAgICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWluTWF4KG1fbWlu
UHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmlsZVVwbG9hZENvbnRyb2wu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNw
cAppbmRleCBiOWUwZWM5OTA1YjYuLjNhNjMwY2EyNDMxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmlsZVVwbG9hZENvbnRyb2wuY3BwCkBAIC0zMDksOSAr
MzA5LDEwIEBAIHZvaWQgUmVuZGVyRmlsZVVwbG9hZENvbnRyb2w6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCkKICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CiAgICAg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwogCi0gICAgaWYgKGF1dG8gZml4ZWRMb2dp
Y2FsV2lkdGggPSBzdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVkTG9naWNh
bFdpZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZlKCkpCi0gICAgICAgIG1fbWlu
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1
c3RDb250ZW50Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7
Ci0gICAgZWxzZQorICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dp
Y2FsV2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxX
aWR0aC0+aXNQb3NpdGl2ZSgpKSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRo
ID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2Fs
V2lkdGgpOworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVy
cmVkTG9naWNhbFdpZHRoOworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2ljTG9n
aWNhbFdpZHRocyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dp
Y2FsV2lkdGgpOwogCiAgICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWluTWF4
KG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhZ21lbnRDb250
YWluZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFp
bmVyLmNwcAppbmRleCAzMjFjMzE0NTczZGIuLjc4Zjg5MzU1MjRmNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRnJhZ21lbnRDb250YWluZXIuY3BwCkBAIC0z
OTcsMTIgKzM5NywxNCBAQCB2b2lkIFJlbmRlckZyYWdtZW50Q29udGFpbmVyOjpjb21wdXRlUHJl
ZmVycmVkTG9naWNhbFdpZHRocygpCiAKICAgICAvLyBGSVhNRTogQ3VycmVudGx5LCB0aGUgY29k
ZSBoYW5kbGVzIG9ubHkgdGhlIDxsZW5ndGg+IGNhc2UgZm9yIG1pbi13aWR0aC9tYXgtd2lkdGgu
CiAgICAgLy8gSXQgc2hvdWxkIGFsc28gc3VwcG9ydCBvdGhlciB2YWx1ZXMsIGxpa2UgcGVyY2Vu
dGFnZSwgY2FsYyBvciB2aWV3cG9ydCByZWxhdGl2ZS4KLSAgICBtX21pblByZWZlcnJlZExvZ2lj
YWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKKyAgICBtX21pblByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IDA7CisgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAw
OwogCiAgICAgQ2hlY2tlZFJlZiBzdHlsZVRvVXNlID0gc3R5bGUoKTsKLSAgICBpZiAoYXV0byBm
aXhlZExvZ2ljYWxXaWR0aCA9IHN0eWxlVG9Vc2UtPmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7
IGZpeGVkTG9naWNhbFdpZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZlKCkpCi0g
ICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBhZGp1c3RDb250ZW50Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExv
Z2ljYWxXaWR0aCk7Ci0gICAgZWxzZQorICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0g
c3R5bGVUb1VzZS0+bG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dpY2FsV2lkdGgg
JiYgZml4ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmUoKSkgeworICAgICAgICBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXpp
bmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lk
dGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAgY29t
cHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1f
bWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExvZ2lj
YWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJy
ZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxpc3RCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3gu
Y3BwCmluZGV4IDhlYzFiNTFlZTNmNy4uZTQ1YTU0NjEzZTllIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwCkBAIC0yNTAsOSArMjUwLDEwIEBAIHZvaWQgUmVu
ZGVyTGlzdEJveDo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogICAgIG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gMDsKICAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9
IDA7CiAKLSAgICBpZiAoYXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0eWxlKCkubG9naWNhbFdp
ZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dpY2FsV2lkdGggJiYgZml4ZWRMb2dpY2FsV2lkdGgt
PmlzUG9zaXRpdmUoKSkKLSAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21h
eFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JC
b3hTaXppbmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKLSAgICBlbHNlCisgICAgaWYgKGF1dG8gZml4
ZWRMb2dpY2FsV2lkdGggPSBzdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVk
TG9naWNhbFdpZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZlKCkpIHsKKyAgICAg
ICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50Qm94TG9naWNhbFdp
ZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7CisgICAgICAgIG1fbWluUHJlZmVy
cmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CisgICAgfSBlbHNl
CiAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2FsV2lkdGhzKG1fbWluUHJlZmVycmVkTG9n
aWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAKICAgICBjb25zdHJhaW5Q
cmVmZXJyZWRMb2dpY2FsV2lkdGhzQnlNaW5NYXgobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgs
IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMaXN0TWFya2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMaXN0TWFya2VyLmNwcAppbmRleCA2ZjQwN2NmOWYzMWIuLjRkMDRiY2I2NGIzMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RNYXJrZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0TWFya2VyLmNwcApAQCAt
NDQzLDcgKzQ0Myw4IEBAIHZvaWQgUmVuZGVyTGlzdE1hcmtlcjo6Y29tcHV0ZVByZWZlcnJlZExv
Z2ljYWxXaWR0aHMoKQogCiAgICAgaWYgKGlzSW1hZ2UoKSkgewogICAgICAgICBMYXlvdXRTaXpl
IGltYWdlU2l6ZSA9IExheW91dFNpemUobV9pbWFnZS0+aW1hZ2VTaXplKHRoaXMsIHN0eWxlKCku
dXNlZFpvb20oKSkpOwotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gd3JpdGluZ01vZGUoKS5pc0hvcml6b250YWwoKSA/IGlt
YWdlU2l6ZS53aWR0aCgpIDogaW1hZ2VTaXplLmhlaWdodCgpOworICAgICAgICBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IHdyaXRpbmdNb2RlKCkuaXNIb3Jpem9udGFsKCkgPyBpbWFnZVNp
emUud2lkdGgoKSA6IGltYWdlU2l6ZS5oZWlnaHQoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKICAgICAgICAgY2xlYXJO
ZWVkc1ByZWZlcnJlZFdpZHRoc1VwZGF0ZSgpOwogICAgICAgICB1cGRhdGVJbmxpbmVNYXJnaW5z
KCk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJNZW51TGlzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVu
dUxpc3QuY3BwCmluZGV4IDI0ZmQ3YjZmZTViNS4uZmVkZDk1NzRiYTViIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5jcHAKQEAgLTE3OCw5ICsxNzgsMTAgQEAg
dm9pZCBSZW5kZXJNZW51TGlzdDo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogICAg
IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKICAgICBtX21heFByZWZlcnJlZExvZ2lj
YWxXaWR0aCA9IDA7CiAgICAgCi0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2FsV2lkdGggPSBzdHls
ZSgpLmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVkTG9naWNhbFdpZHRoICYmIGZpeGVk
TG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZlKCkpCi0gICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNh
bFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50Qm94TG9n
aWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7Ci0gICAgZWxzZQorICAg
IGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50cnlG
aXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQb3NpdGl2
ZSgpKSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVu
dEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2FsV2lkdGgpOworICAgICAg
ICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRo
OworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2ljTG9naWNhbFdpZHRocyhtX21p
blByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogCiAg
ICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWluTWF4KG1fbWluUHJlZmVycmVk
TG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcAppbmRleCBiMzk1NDVhZmM2ODguLjQ1N2Rh
OTY1ZjE3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxh
Y2VkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUmVwbGFjZWQuY3Bw
CkBAIC04MTYsNyArODE2LDggQEAgTGF5b3V0VW5pdCBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZVJl
cGxhY2VkTG9naWNhbEhlaWdodChzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQKIAogdm9pZCBSZW5k
ZXJSZXBsYWNlZDo6Y29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMoTGF5b3V0VW5pdCYgbWlu
TG9naWNhbFdpZHRoLCBMYXlvdXRVbml0JiBtYXhMb2dpY2FsV2lkdGgpIGNvbnN0CiB7Ci0gICAg
bWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNhbFdpZHRoID0gaW50cmluc2ljTG9naWNhbFdpZHRo
KCk7CisgICAgbWF4TG9naWNhbFdpZHRoID0gaW50cmluc2ljTG9naWNhbFdpZHRoKCk7CisgICAg
bWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNhbFdpZHRoOwogfQogCiB2b2lkIFJlbmRlclJlcGxh
Y2VkOjpjb21wdXRlSW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMoTGF5b3V0VW5pdCYgbWlu
TG9naWNhbFdpZHRoLCBMYXlvdXRVbml0JiBtYXhMb2dpY2FsV2lkdGgpIGNvbnN0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTbGlkZXIuY3BwCmluZGV4IDZjYjk4YWJlMzExMS4uZTg0
NDdjMTA2MmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xp
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNwcApA
QCAtOTAsOSArOTAsMTAgQEAgdm9pZCBSZW5kZXJTbGlkZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dp
Y2FsV2lkdGhzKCkKICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CiAgICAgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwogCi0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2Fs
V2lkdGggPSBzdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCkpCi0gICAgICAgIG1fbWlu
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1
c3RDb250ZW50Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7
Ci0gICAgZWxzZQorICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dp
Y2FsV2lkdGgoKS50cnlGaXhlZCgpKSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dp
Y2FsV2lkdGgpOworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoOworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2lj
TG9naWNhbFdpZHRocyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRM
b2dpY2FsV2lkdGgpOwogCiAgICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWlu
TWF4KG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0
aCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRy
b2wuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcApp
bmRleCAyMTIzNDgwZTc5MmMuLjJmOWRmYzIxYjMzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwCkBAIC0yMTUsOSArMjE1LDEwIEBAIHZvaWQg
UmVuZGVyVGV4dENvbnRyb2w6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBt
X21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CiAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSAwOwogCi0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2FsV2lkdGggPSBzdHlsZSgpLmxv
Z2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVkTG9naWNhbFdpZHRoICYmIGZpeGVkTG9naWNh
bFdpZHRoLT5pc1Bvc2l0aXZlT3JaZXJvKCkpCi0gICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNh
bFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50Qm94TG9n
aWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7Ci0gICAgZWxzZQorICAg
IGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50cnlG
aXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQb3NpdGl2
ZU9yWmVybygpKSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0
Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwor
ICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoOworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2ljTG9naWNhbFdpZHRo
cyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgp
OwogCiAgICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWluTWF4KG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MRnJhY3Rp
b24uY3BwCmluZGV4IDgxNTdjNTYwMGYwNy4uY2YwYjFiNWQ4OGM1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNw
cApAQCAtMTk3LDcgKzE5Nyw4IEBAIHZvaWQgUmVuZGVyTWF0aE1MRnJhY3Rpb246OmNvbXB1dGVQ
cmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKIAogICAgIExheW91dFVuaXQgbnVtZXJhdG9yV2lkdGgg
PSBudW1lcmF0b3IoKS5tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgoKSArIG1hcmdpbkludHJpbnNp
Y0xvZ2ljYWxXaWR0aEZvckNoaWxkKG51bWVyYXRvcigpKTsKICAgICBMYXlvdXRVbml0IGRlbm9t
aW5hdG9yV2lkdGggPSBkZW5vbWluYXRvcigpLm1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsg
bWFyZ2luSW50cmluc2ljTG9naWNhbFdpZHRoRm9yQ2hpbGQoZGVub21pbmF0b3IoKSk7Ci0gICAg
bV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9
IHN0ZDo6bWF4KG51bWVyYXRvcldpZHRoLCBkZW5vbWluYXRvcldpZHRoKTsKKyAgICBtX21heFBy
ZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHN0ZDo6bWF4KG51bWVyYXRvcldpZHRoLCBkZW5vbWluYXRv
cldpZHRoKTtcCisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJl
ZExvZ2ljYWxXaWR0aDsKIAogICAgIGF1dG8gc2l6ZXMgPSBzaXplQXBwbGllZFRvTWF0aENvbnRl
bnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAgICAgYXBw
bHlTaXplVG9NYXRoQ29udGVudChMYXlvdXRQaGFzZTo6Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNh
bFdpZHRoLCBzaXplcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0
aG1sL1JlbmRlck1hdGhNTFJvb3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGht
bC9SZW5kZXJNYXRoTUxSb290LmNwcAppbmRleCAzNGEwNTgxYjZhZDQuLjAzYzQ1YTQxZWU4MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxS
b290LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhN
TFJvb3QuY3BwCkBAIC0xODIsNyArMTgyLDggQEAgdm9pZCBSZW5kZXJNYXRoTUxSb290Ojpjb21w
dXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAgICAgICAgIHByZWZlcnJlZFdpZHRoICs9IG1f
cmFkaWNhbE9wZXJhdG9yLm1heFByZWZlcnJlZFdpZHRoKCk7CiAgICAgICAgIHByZWZlcnJlZFdp
ZHRoICs9IGdldEJhc2UoKS5tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgoKSArIG1hcmdpbkludHJp
bnNpY0xvZ2ljYWxXaWR0aEZvckNoaWxkKGdldEJhc2UoKSk7CiAgICAgfQotICAgIG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJy
ZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRo
OworICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2Fs
V2lkdGg7CiAKICAgICBhdXRvIHNpemVzID0gc2l6ZUFwcGxpZWRUb01hdGhDb250ZW50KExheW91
dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAgIGFwcGx5U2l6ZVRv
TWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCwg
c2l6ZXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5k
ZXJNYXRoTUxSb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJN
YXRoTUxSb3cuY3BwCmluZGV4IDllNzMzMjcwM2NhMy4uODBiZjRmZDk1MTRjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxSb3cuY3BwCkBA
IC0xMzQsNyArMTM0LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxSb3c6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCkKIHsKICAgICBBU1NFUlQobmVlZHNQcmVmZXJyZWRMb2dpY2FsV2lkdGhz
VXBkYXRlKCkpOwogCi0gICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZExvZ2ljYWxXaWR0aE9mUm93SXRlbXMoKTsKKyAg
ICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZExvZ2ljYWxXaWR0aE9mUm93
SXRlbXMoKTtcCisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJl
ZExvZ2ljYWxXaWR0aDsKIAogICAgIGF1dG8gc2l6ZXMgPSBzaXplQXBwbGllZFRvTWF0aENvbnRl
bnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAgICAgYXBw
bHlTaXplVG9NYXRoQ29udGVudChMYXlvdXRQaGFzZTo6Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNh
bFdpZHRoLCBzaXplcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0
aG1sL1JlbmRlck1hdGhNTFNwYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRo
bWwvUmVuZGVyTWF0aE1MU3BhY2UuY3BwCmluZGV4IDYyMDVkYjZmNmIzYi4uY2VhNjdhMGExYzIw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhN
TFNwYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1h
dGhNTFNwYWNlLmNwcApAQCAtNTUsNyArNTUsOCBAQCB2b2lkIFJlbmRlck1hdGhNTFNwYWNlOjpj
b21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiB7CiAgICAgQVNTRVJUKG5lZWRzUHJlZmVy
cmVkTG9naWNhbFdpZHRoc1VwZGF0ZSgpKTsKIAotICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBzcGFjZVdpZHRoKCk7CisgICAgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBzcGFjZVdpZHRoKCk7XAorICAgIG1fbWluUHJlZmVy
cmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAKICAgICBhdXRv
IHNpemVzID0gc2l6ZUFwcGxpZWRUb01hdGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQ
cmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0
UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxVbmRlck92ZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxVbmRlck92
ZXIuY3BwCmluZGV4IDkyMjAyMGI5NDE0OS4uM2ZkZmZhNDI2NDkyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFVuZGVyT3Zlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxVbmRlck92ZXIu
Y3BwCkBAIC0yMDcsNyArMjA3LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxVbmRlck92ZXI6OmNvbXB1
dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBpZiAoc2NyaXB0VHlwZSgpID09IE1hdGhN
TFNjcmlwdHNFbGVtZW50OjpTY3JpcHRUeXBlOjpPdmVyIHx8IHNjcmlwdFR5cGUoKSA9PSBNYXRo
TUxTY3JpcHRzRWxlbWVudDo6U2NyaXB0VHlwZTo6VW5kZXJPdmVyKQogICAgICAgICBwcmVmZXJy
ZWRXaWR0aCA9IHN0ZDo6bWF4KHByZWZlcnJlZFdpZHRoLCBvdmVyKCkubWF4UHJlZmVycmVkTG9n
aWNhbFdpZHRoKCkgKyBtYXJnaW5JbnRyaW5zaWNMb2dpY2FsV2lkdGhGb3JDaGlsZChvdmVyKCkp
KTsKIAotICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dp
Y2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0
aCA9IHByZWZlcnJlZFdpZHRoOworICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAKICAgICBhdXRvIHNpemVzID0gc2l6ZUFwcGxpZWRU
b01hdGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgp
OwogICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZl
cnJlZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479636</attachid>
            <date>2026-05-12 07:58:39 -0700</date>
            <delta_ts>2026-05-15 05:25:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-314496-20260512075838.patch</filename>
            <type>text/plain</type>
            <size>26585</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAxZGM2Yzk3YTBlMDI4MWE0MDg2OTYwNWI3MzZkMDI0NmJjNjU3MjJlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMTIgTWF5IDIwMjYgMDc6MjY6NDMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbY2xlYW51
cF0gUmVwbGFjZSBjaGFpbmVkIGFzc2lnbm1lbnRzIGluIGludHJpbnNpYyB3aWR0aAogY29tcHV0
YXRpb25zIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTQ0OTYKClJl
dmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2suY3BwOgooV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmNvbXB1dGVQcmVmZXJyZWRMb2dp
Y2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKFdl
YkNvcmU6OlJlbmRlckJveDo6Y29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzIGNv
bnN0KToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxl
Qm94LmNwcDoKKFdlYkNvcmU6OlJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveDo6Y29tcHV0ZVBy
ZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
aWxlVXBsb2FkQ29udHJvbC5jcHA6CihXZWJDb3JlOjpSZW5kZXJGaWxlVXBsb2FkQ29udHJvbDo6
Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHA6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVudENv
bnRhaW5lcjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcDoKKFdlYkNvcmU6OlJlbmRlckxpc3RCb3g6OmNv
bXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGlzdE1hcmtlci5jcHA6CihXZWJDb3JlOjpSZW5kZXJMaXN0TWFya2VyOjpjb21wdXRl
UHJlZmVycmVkTG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck1lbnVMaXN0LmNwcDoKKFdlYkNvcmU6OlJlbmRlck1lbnVMaXN0Ojpjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2Vk
LmNwcDoKKFdlYkNvcmU6OlJlbmRlclJlcGxhY2VkOjpjb21wdXRlSW50cmluc2ljTG9naWNhbFdp
ZHRocyBjb25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNsaWRlci5jcHA6
CihXZWJDb3JlOjpSZW5kZXJTbGlkZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToK
KiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwOgooV2ViQ29y
ZTo6UmVuZGVyVGV4dENvbnRyb2w6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNwcDoK
KFdlYkNvcmU6OlJlbmRlck1hdGhNTEZyYWN0aW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdp
ZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxNZW5j
bG9zZS5jcHA6CihXZWJDb3JlOjpSZW5kZXJNYXRoTUxNZW5jbG9zZTo6Y29tcHV0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVy
TWF0aE1MT3BlcmF0b3IuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1MT3BlcmF0b3I6OmNvbXB1
dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0
aG1sL1JlbmRlck1hdGhNTFBhZGRlZC5jcHA6CihXZWJDb3JlOjpSZW5kZXJNYXRoTUxQYWRkZWQ6
OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvb3QuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1MUm9v
dDo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm93LmNwcDoKKFdlYkNvcmU6OlJlbmRlck1hdGhNTFJv
dzo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9tYXRobWwvUmVuZGVyTWF0aE1MU3BhY2UuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1M
U3BhY2U6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFRva2VuLmNwcDoKKFdlYkNvcmU6OlJlbmRlck1h
dGhNTFRva2VuOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxVbmRlck92ZXIuY3BwOgooV2ViQ29yZTo6
UmVuZGVyTWF0aE1MVW5kZXJPdmVyOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6Ci0t
LQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcCAgICAgIHwgIDMgKy0K
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwICAgICAgICB8IDQwICsrKysr
KysrKystLS0tLS0tLS0KIC4uLi9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94
LmNwcCB8IDEwICsrKy0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNw
cCAgICAgfCAgNyArKy0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNw
cCAgICAgfCAxMCArKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3gu
Y3BwICAgIHwgIDcgKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RNYXJr
ZXIuY3BwIHwgIDMgKy0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5j
cHAgICB8ICA3ICsrLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5j
cHAgICB8ICAzICstCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNwcCAg
ICAgfCAgNyArKy0tCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3Bw
ICAgfCAgNyArKy0tCiAuLi4vcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5j
cHAgfCAgMyArLQogLi4uL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MTWVuY2xvc2UuY3Bw
IHwgIDMgKy0KIC4uLi9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE9wZXJhdG9yLmNwcCB8
ICAzICstCiAuLi4vcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQYWRkZWQuY3BwICAgfCAg
MyArLQogLi4uL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5jcHAgICAgIHwgIDMg
Ky0KIC4uLi9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAgICAgICB8ICAzICst
CiAuLi4vcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAgICAgfCAgMyArLQog
Li4uL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MVG9rZW4uY3BwICAgIHwgIDMgKy0KIC4u
Li9tYXRobWwvUmVuZGVyTWF0aE1MVW5kZXJPdmVyLmNwcCAgICAgICAgICB8ICAzICstCiAyMCBm
aWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAppbmRleCA2ZDAyNjk1MjMwNzQuLjcyZjBi
ZmQ4ZTViMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCkBAIC0y
MjQzLDcgKzIyNDMsOCBAQCB2b2lkIFJlbmRlckJsb2NrOjpjb21wdXRlUHJlZmVycmVkTG9naWNh
bFdpZHRocygpCiAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2FsV2lkdGhzKG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAgICAgICAg
IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7
CiAgICAgfSBlbHNlIGlmIChzaG91bGRDb21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJhdGlv
KCkpIHsKLSAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJl
ZExvZ2ljYWxXaWR0aCA9IChjb21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJhdGlvKCkgLSBi
b3JkZXJBbmRQYWRkaW5nTG9naWNhbFdpZHRoKCkpOworICAgICAgICBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aCA9IGNvbXB1dGVMb2dpY2FsV2lkdGhGcm9tQXNwZWN0UmF0aW8oKSAtIGJvcmRl
ckFuZFBhZGRpbmdMb2dpY2FsV2lkdGgoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKICAgICAgICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heCgwX2x1LCBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0
aCk7CiAgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gc3RkOjptYXgoMF9sdSwg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAgICAgICBhcHBseUF1dG9tYXRpY0NvbnRl
bnRCYXNlZE1pbmltdW1TaXplKG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmlu
ZGV4IDdiMjMwOTU0MjU1Ni4uMTVmNzdmZDlhNzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94LmNwcApAQCAtMjkyOCwyNSArMjkyOCwyOSBAQCBMYXlvdXRVbml0IFJlbmRlckJv
eDo6ZmlsbEF2YWlsYWJsZU1lYXN1cmUoTGF5b3V0VW5pdCBhdmFpbGFibGVMb2dpY2FsV2lkdGgs
IExheQogdGVtcGxhdGU8dHlwZW5hbWUgS2V5d29yZD4gdm9pZCBSZW5kZXJCb3g6OmNvbXB1dGVJ
bnRyaW5zaWNLZXl3b3JkTG9naWNhbFdpZHRocyhLZXl3b3JkLCBMYXlvdXRVbml0IGJvcmRlckFu
ZFBhZGRpbmcsIExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9n
aWNhbFdpZHRoKSBjb25zdAogewogICAgIGlmIGNvbnN0ZXhwciAoc3RkOjpzYW1lX2FzPEtleXdv
cmQsIENTUzo6S2V5d29yZDo6TWluSW50cmluc2ljPikKLSAgICAgICAgY29tcHV0ZUludHJpbnNp
Y0tleXdvcmRMb2dpY2FsV2lkdGhzKG1pbkxvZ2ljYWxXaWR0aCwgbWF4TG9naWNhbFdpZHRoKTsK
LSAgICBlbHNlIHsKLSAgICAgICAgaWYgKHNob3VsZENvbXB1dGVMb2dpY2FsV2lkdGhGcm9tQXNw
ZWN0UmF0aW8oKSkgewotICAgICAgICAgICAgbWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNhbFdp
ZHRoID0gY29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRpbygpIC0gYm9yZGVyQW5kUGFk
ZGluZzsKLSAgICAgICAgICAgIGFwcGx5QXV0b21hdGljQ29udGVudEJhc2VkTWluaW11bVNpemUo
bWluTG9naWNhbFdpZHRoLCBtYXhMb2dpY2FsV2lkdGgpOwotICAgICAgICB9IGVsc2UgaWYgKENo
ZWNrZWRQdHIgcmVuZGVyUmVwbGFjZWQgPSBkeW5hbWljRG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+
KCp0aGlzKSkgewotICAgICAgICAgICAgLy8gRm9yIHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggYW4g
aW50cmluc2ljIGFzcGVjdCByYXRpbyAoZS5nLiA8aW1nPikgYW5kIGEKLSAgICAgICAgICAgIC8v
IHNwZWNpZmllZCBibG9jayBzaXplLCBjb21wdXRlIHRoZSB0cmFuc2ZlcnJlZCBtaW4vbWF4LWNv
bnRlbnQgaW5saW5lIHNpemUKLSAgICAgICAgICAgIC8vIHRocm91Z2ggdGhlIGludHJpbnNpYyBy
YXRpbyByYXRoZXIgdGhhbiB1c2luZyB0aGUgcmF3IG5hdHVyYWwgd2lkdGguCi0gICAgICAgICAg
ICBhdXRvIHByZWZlcnJlZFJhdGlvID0gcmVuZGVyUmVwbGFjZWQtPnByZWZlcnJlZEFzcGVjdFJh
dGlvQXNTaXplKCkuYXNwZWN0UmF0aW9Eb3VibGUoKTsKLSAgICAgICAgICAgIGlmIChwcmVmZXJy
ZWRSYXRpbyAmJiBzdHlsZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc1NwZWNpZmllZCgpKSB7Ci0gICAg
ICAgICAgICAgICAgYXV0byBjb21wdXRlZFZhbHVlcyA9IGNvbXB1dGVMb2dpY2FsSGVpZ2h0KGxv
Z2ljYWxIZWlnaHQoKSwgbG9naWNhbFRvcCgpKTsKLSAgICAgICAgICAgICAgICBhdXRvIGNvbnRl
bnRCbG9ja1NpemUgPSBzdGQ6Om1heCgwX2x1LCBjb21wdXRlZFZhbHVlcy5leHRlbnQgLSBib3Jk
ZXJBbmRQYWRkaW5nTG9naWNhbEhlaWdodCgpKTsKLSAgICAgICAgICAgICAgICBtaW5Mb2dpY2Fs
V2lkdGggPSBtYXhMb2dpY2FsV2lkdGggPSBMYXlvdXRVbml0KGNvbnRlbnRCbG9ja1NpemUgKiBw
cmVmZXJyZWRSYXRpbyk7Ci0gICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICBjb21w
dXRlSW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMobWluTG9naWNhbFdpZHRoLCBtYXhMb2dp
Y2FsV2lkdGgpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNL
ZXl3b3JkTG9naWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2ljYWxXaWR0aCk7Cisg
ICAgICAgIHJldHVybiBjb21wdXRlSW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMobWluTG9n
aWNhbFdpZHRoLCBtYXhMb2dpY2FsV2lkdGgpOworCisgICAgaWYgKHNob3VsZENvbXB1dGVMb2dp
Y2FsV2lkdGhGcm9tQXNwZWN0UmF0aW8oKSkgeworICAgICAgICBtYXhMb2dpY2FsV2lkdGggPSBj
b21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJhdGlvKCkgLSBib3JkZXJBbmRQYWRkaW5nOwor
ICAgICAgICBtaW5Mb2dpY2FsV2lkdGggPSBtYXhMb2dpY2FsV2lkdGg7CisgICAgICAgIGFwcGx5
QXV0b21hdGljQ29udGVudEJhc2VkTWluaW11bVNpemUobWluTG9naWNhbFdpZHRoLCBtYXhMb2dp
Y2FsV2lkdGgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKENoZWNrZWRQdHIg
cmVuZGVyUmVwbGFjZWQgPSBkeW5hbWljRG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+KCp0aGlzKSkg
eworICAgICAgICAvLyBGb3IgcmVwbGFjZWQgZWxlbWVudHMgd2l0aCBhbiBpbnRyaW5zaWMgYXNw
ZWN0IHJhdGlvIChlLmcuIDxpbWc+KSBhbmQgYQorICAgICAgICAvLyBzcGVjaWZpZWQgYmxvY2sg
c2l6ZSwgY29tcHV0ZSB0aGUgdHJhbnNmZXJyZWQgbWluL21heC1jb250ZW50IGlubGluZSBzaXpl
CisgICAgICAgIC8vIHRocm91Z2ggdGhlIGludHJpbnNpYyByYXRpbyByYXRoZXIgdGhhbiB1c2lu
ZyB0aGUgcmF3IG5hdHVyYWwgd2lkdGguCisgICAgICAgIGF1dG8gcHJlZmVycmVkUmF0aW8gPSBy
ZW5kZXJSZXBsYWNlZC0+cHJlZmVycmVkQXNwZWN0UmF0aW9Bc1NpemUoKS5hc3BlY3RSYXRpb0Rv
dWJsZSgpOworICAgICAgICBpZiAocHJlZmVycmVkUmF0aW8gJiYgc3R5bGUoKS5sb2dpY2FsSGVp
Z2h0KCkuaXNTcGVjaWZpZWQoKSkgeworICAgICAgICAgICAgYXV0byBjb21wdXRlZFZhbHVlcyA9
IGNvbXB1dGVMb2dpY2FsSGVpZ2h0KGxvZ2ljYWxIZWlnaHQoKSwgbG9naWNhbFRvcCgpKTsKKyAg
ICAgICAgICAgIGF1dG8gY29udGVudEJsb2NrU2l6ZSA9IHN0ZDo6bWF4KDBfbHUsIGNvbXB1dGVk
VmFsdWVzLmV4dGVudCAtIGJvcmRlckFuZFBhZGRpbmdMb2dpY2FsSGVpZ2h0KCkpOworICAgICAg
ICAgICAgbWF4TG9naWNhbFdpZHRoID0gTGF5b3V0VW5pdCB7IGNvbnRlbnRCbG9ja1NpemUgKiBw
cmVmZXJyZWRSYXRpbyB9OworICAgICAgICAgICAgbWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNh
bFdpZHRoOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgfQorICAgIGNvbXB1
dGVJbnRyaW5zaWNLZXl3b3JkTG9naWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2lj
YWxXaWR0aCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgYm9vbCBOT0RFTEVURSBpc09ydGhvZ29uYWwo
Y29uc3QgUmVuZGVyQm94JiByZW5kZXJlciwgY29uc3QgUmVuZGVyRWxlbWVudCYgYW5jZXN0b3Ip
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZs
ZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJEZXByZWNhdGVk
RmxleGlibGVCb3guY3BwCmluZGV4IGQxZDNlNWU0MDIwYS4uZTMxNDBlYjZkMGQ1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhp
YmxlQm94LmNwcApAQCAtMjcwLDEwICsyNzAsMTIgQEAgdm9pZCBSZW5kZXJEZXByZWNhdGVkRmxl
eGlibGVCb3g6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKIHsKICAgICBBU1NFUlQo
bmVlZHNQcmVmZXJyZWRMb2dpY2FsV2lkdGhzVXBkYXRlKCkpOwogCi0gICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7Ci0gICAgaWYg
KGF1dG8gZml4ZWRXaWR0aCA9IHN0eWxlKCkud2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZFdpZHRo
ICYmIGZpeGVkV2lkdGgtPmlzUG9zaXRpdmUoKSkKLSAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hM
b2dpY2FsV2lkdGhGb3JCb3hTaXppbmcoKmZpeGVkV2lkdGgpOwotICAgIGVsc2UKKyAgICBtX21p
blByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CisgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lk
dGggPSAwOworICAgIGlmIChhdXRvIGZpeGVkV2lkdGggPSBzdHlsZSgpLndpZHRoKCkudHJ5Rml4
ZWQoKTsgZml4ZWRXaWR0aCAmJiBmaXhlZFdpZHRoLT5pc1Bvc2l0aXZlKCkpIHsKKyAgICAgICAg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50Qm94TG9naWNhbFdpZHRo
Rm9yQm94U2l6aW5nKCpmaXhlZFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAg
Y29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgs
IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExv
Z2ljYWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJGaWxlVXBsb2FkQ29udHJvbC5jcHAKaW5kZXggYjllMGVjOTkwNWI2Li4zYTYzMGNhMjQz
MWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGaWxlVXBsb2Fk
Q29udHJvbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZpbGVVcGxv
YWRDb250cm9sLmNwcApAQCAtMzA5LDkgKzMwOSwxMCBAQCB2b2lkIFJlbmRlckZpbGVVcGxvYWRD
b250cm9sOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAgICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSAwOwogICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsK
IAotICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgo
KS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQ
b3NpdGl2ZSgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNp
emluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExv
Z2ljYWxXaWR0aCA9IHN0eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dp
Y2FsV2lkdGggJiYgZml4ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmUoKSkgeworICAgICAgICBt
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhG
b3JCb3hTaXppbmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAg
ICAgICAgY29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZl
cnJlZExvZ2ljYWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHAKaW5kZXggMzIxYzMxNDU3M2RiLi43OGY4
OTM1NTI0ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFn
bWVudENvbnRhaW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZy
YWdtZW50Q29udGFpbmVyLmNwcApAQCAtMzk3LDEyICszOTcsMTQgQEAgdm9pZCBSZW5kZXJGcmFn
bWVudENvbnRhaW5lcjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogCiAgICAgLy8g
RklYTUU6IEN1cnJlbnRseSwgdGhlIGNvZGUgaGFuZGxlcyBvbmx5IHRoZSA8bGVuZ3RoPiBjYXNl
IGZvciBtaW4td2lkdGgvbWF4LXdpZHRoLgogICAgIC8vIEl0IHNob3VsZCBhbHNvIHN1cHBvcnQg
b3RoZXIgdmFsdWVzLCBsaWtlIHBlcmNlbnRhZ2UsIGNhbGMgb3Igdmlld3BvcnQgcmVsYXRpdmUu
Ci0gICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxX
aWR0aCA9IDA7CisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOworICAgIG1fbWF4
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKIAogICAgIENoZWNrZWRSZWYgc3R5bGVUb1VzZSA9
IHN0eWxlKCk7Ci0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2FsV2lkdGggPSBzdHlsZVRvVXNlLT5s
b2dpY2FsV2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2lj
YWxXaWR0aC0+aXNQb3NpdGl2ZSgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0
aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxX
aWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAo
YXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0eWxlVG9Vc2UtPmxvZ2ljYWxXaWR0aCgpLnRyeUZp
eGVkKCk7IGZpeGVkTG9naWNhbFdpZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZl
KCkpIHsKKyAgICAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50
Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7CisgICAgICAg
IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7
CisgICAgfSBlbHNlCiAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2FsV2lkdGhzKG1fbWlu
UHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAKICAg
ICBjb25zdHJhaW5QcmVmZXJyZWRMb2dpY2FsV2lkdGhzQnlNaW5NYXgobV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcAppbmRleCA4ZWMxYjUxZWUzZjcuLmU0NWE1NDYx
M2U5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3gu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcApAQCAt
MjUwLDkgKzI1MCwxMCBAQCB2b2lkIFJlbmRlckxpc3RCb3g6OmNvbXB1dGVQcmVmZXJyZWRMb2dp
Y2FsV2lkdGhzKCkKICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CiAgICAgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwogCi0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2Fs
V2lkdGggPSBzdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVkTG9naWNhbFdp
ZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZlKCkpCi0gICAgICAgIG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RD
b250ZW50Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7Ci0g
ICAgZWxzZQorICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2Fs
V2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0
aC0+aXNQb3NpdGl2ZSgpKSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0g
YWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2FsV2lk
dGgpOworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVk
TG9naWNhbFdpZHRoOworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2ljTG9naWNh
bFdpZHRocyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dpY2Fs
V2lkdGgpOwogCiAgICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWluTWF4KG1f
bWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdE1hcmtlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdE1hcmtlci5jcHAKaW5kZXggNmY0
MDdjZjlmMzFiLi40ZDA0YmNiNjRiMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMaXN0TWFya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGlzdE1hcmtlci5jcHAKQEAgLTQ0Myw3ICs0NDMsOCBAQCB2b2lkIFJlbmRlckxpc3RN
YXJrZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKIAogICAgIGlmIChpc0ltYWdl
KCkpIHsKICAgICAgICAgTGF5b3V0U2l6ZSBpbWFnZVNpemUgPSBMYXlvdXRTaXplKG1faW1hZ2Ut
PmltYWdlU2l6ZSh0aGlzLCBzdHlsZSgpLnVzZWRab29tKCkpKTsKLSAgICAgICAgbV9taW5QcmVm
ZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHdyaXRpbmdN
b2RlKCkuaXNIb3Jpem9udGFsKCkgPyBpbWFnZVNpemUud2lkdGgoKSA6IGltYWdlU2l6ZS5oZWln
aHQoKTsKKyAgICAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSB3cml0aW5nTW9kZSgp
LmlzSG9yaXpvbnRhbCgpID8gaW1hZ2VTaXplLndpZHRoKCkgOiBpbWFnZVNpemUuaGVpZ2h0KCk7
CisgICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dp
Y2FsV2lkdGg7CiAgICAgICAgIGNsZWFyTmVlZHNQcmVmZXJyZWRXaWR0aHNVcGRhdGUoKTsKICAg
ICAgICAgdXBkYXRlSW5saW5lTWFyZ2lucygpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAppbmRleCAyNGZkN2I2ZmU1YjUuLmZl
ZGQ5NTc0YmE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1l
bnVMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3Qu
Y3BwCkBAIC0xNzgsOSArMTc4LDEwIEBAIHZvaWQgUmVuZGVyTWVudUxpc3Q6OmNvbXB1dGVQcmVm
ZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7
CiAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwogICAgIAotICAgIGlmIChhdXRv
IGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50cnlGaXhlZCgpOyBm
aXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQb3NpdGl2ZSgpKQotICAg
ICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dp
Y2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0
eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dpY2FsV2lkdGggJiYgZml4
ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmUoKSkgeworICAgICAgICBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXppbmcoKmZp
eGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBt
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAgY29tcHV0ZUlu
dHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExvZ2ljYWxXaWR0
aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dp
Y2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJl
cGxhY2VkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAK
aW5kZXggYjM5NTQ1YWZjNjg4Li40NTdkYTk2NWYxNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcApAQCAtODE2LDcgKzgxNiw4IEBAIExheW91dFVuaXQg
UmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQoc3RkOjpvcHRpb25h
bDxMYXlvdXRVbml0CiAKIHZvaWQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVJbnRyaW5zaWNMb2dp
Y2FsV2lkdGhzKExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9n
aWNhbFdpZHRoKSBjb25zdAogewotICAgIG1pbkxvZ2ljYWxXaWR0aCA9IG1heExvZ2ljYWxXaWR0
aCA9IGludHJpbnNpY0xvZ2ljYWxXaWR0aCgpOworICAgIG1heExvZ2ljYWxXaWR0aCA9IGludHJp
bnNpY0xvZ2ljYWxXaWR0aCgpOworICAgIG1pbkxvZ2ljYWxXaWR0aCA9IG1heExvZ2ljYWxXaWR0
aDsKIH0KIAogdm9pZCBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dp
Y2FsV2lkdGhzKExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9n
aWNhbFdpZHRoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclNsaWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNw
cAppbmRleCA2Y2I5OGFiZTMxMTEuLmU4NDQ3YzEwNjJlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclNsaWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclNsaWRlci5jcHAKQEAgLTkwLDkgKzkwLDEwIEBAIHZvaWQgUmVuZGVyU2xp
ZGVyOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAgICAgbV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSAwOwogICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKIAot
ICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50
cnlGaXhlZCgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNp
emluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExv
Z2ljYWxXaWR0aCA9IHN0eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKSkgeworICAgICAg
ICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lk
dGhGb3JCb3hTaXppbmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UK
ICAgICAgICAgY29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblBy
ZWZlcnJlZExvZ2ljYWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUZXh0Q29udHJvbC5jcHAKaW5kZXggMjEyMzQ4MGU3OTJjLi4yZjlkZmMyMWIzMzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcApA
QCAtMjE1LDkgKzIxNSwxMCBAQCB2b2lkIFJlbmRlclRleHRDb250cm9sOjpjb21wdXRlUHJlZmVy
cmVkTG9naWNhbFdpZHRocygpCiAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwog
ICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKIAotICAgIGlmIChhdXRvIGZpeGVk
TG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExv
Z2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQb3NpdGl2ZU9yWmVybygpKQotICAg
ICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dp
Y2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0
eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dpY2FsV2lkdGggJiYgZml4
ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmVPclplcm8oKSkgeworICAgICAgICBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXpp
bmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lk
dGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAgY29t
cHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1f
bWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExvZ2lj
YWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJy
ZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21h
dGhtbC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
bWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNwcAppbmRleCA4MTU3YzU2MDBmMDcuLjQwNjNk
ZWY3MmUwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5k
ZXJNYXRoTUxGcmFjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGht
bC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5jcHAKQEAgLTE5Nyw3ICsxOTcsOCBAQCB2b2lkIFJlbmRl
ck1hdGhNTEZyYWN0aW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAKICAgICBM
YXlvdXRVbml0IG51bWVyYXRvcldpZHRoID0gbnVtZXJhdG9yKCkubWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoKCkgKyBtYXJnaW5JbnRyaW5zaWNMb2dpY2FsV2lkdGhGb3JDaGlsZChudW1lcmF0b3Io
KSk7CiAgICAgTGF5b3V0VW5pdCBkZW5vbWluYXRvcldpZHRoID0gZGVub21pbmF0b3IoKS5tYXhQ
cmVmZXJyZWRMb2dpY2FsV2lkdGgoKSArIG1hcmdpbkludHJpbnNpY0xvZ2ljYWxXaWR0aEZvckNo
aWxkKGRlbm9taW5hdG9yKCkpOwotICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heChudW1lcmF0b3JXaWR0aCwgZGVub21p
bmF0b3JXaWR0aCk7CisgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heChu
dW1lcmF0b3JXaWR0aCwgZGVub21pbmF0b3JXaWR0aCk7CisgICAgbV9taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKIAogICAgIGF1dG8gc2l6ZXMg
PSBzaXplQXBwbGllZFRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aCk7CiAgICAgYXBwbHlTaXplVG9NYXRoQ29udGVudChMYXlvdXRQaGFzZTo6
Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNhbFdpZHRoLCBzaXplcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE1lbmNsb3NlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MTWVuY2xvc2UuY3BwCmlu
ZGV4IDY4MDZjNWIwMjFkZS4uNmI4NTU2ODU4YzdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE1lbmNsb3NlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE1lbmNsb3NlLmNwcApAQCAtMTY2
LDcgKzE2Niw4IEBAIHZvaWQgUmVuZGVyTWF0aE1MTWVuY2xvc2U6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCkKICAgICBMYXlvdXRVbml0IHByZWZlcnJlZFdpZHRoID0gcHJlZmVycmVk
TG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOwogICAgIFNwYWNlQXJvdW5kQ29udGVudCBzcGFjZSA9
IHNwYWNlQXJvdW5kQ29udGVudChwcmVmZXJyZWRXaWR0aCwgMCk7CiAgICAgcHJlZmVycmVkV2lk
dGggKz0gc3BhY2UubGVmdCArIHNwYWNlLnJpZ2h0OwotICAgIG1fbWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoID0gbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKKyAg
ICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRoOworICAgIG1fbWF4
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gcHJlZmVycmVkV2lkdGg7CiAKICAgICBhdXRvIHNpemVz
ID0gc2l6ZUFwcGxpZWRUb01hdGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJy
ZWRMb2dpY2FsV2lkdGgpOwogICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6
OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxPcGVyYXRvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE9wZXJhdG9yLmNwcApp
bmRleCBlOGViYjdkMjA0NDYuLmEyN2E2MmU3YzY4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxPcGVyYXRvci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxPcGVyYXRvci5jcHAKQEAgLTIx
Nyw3ICsyMTcsOCBAQCB2b2lkIFJlbmRlck1hdGhNTE9wZXJhdG9yOjpjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocygpCiAgICAgLy8gRklYTUU6IFRoZSBzcGFjaW5nIHNob3VsZCBvbmx5IGJl
IGFkZGVkIGluc2lkZSAocGVyaGFwcyBpbmZlcnJlZCkgbXJvdyAoaHR0cDovL3d3dy53My5vcmcv
VFIvTWF0aE1ML2NoYXB0ZXIzLmh0bWwjcHJlc20ub3BzcGFjaW5nKS4KICAgICBwcmVmZXJyZWRX
aWR0aCA9IGxlYWRpbmdTcGFjZSgpICsgcHJlZmVycmVkV2lkdGggKyB0cmFpbGluZ1NwYWNlKCk7
CiAKLSAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWluUHJlZmVycmVkTG9naWNh
bFdpZHRoID0gcHJlZmVycmVkV2lkdGg7CisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgg
PSBwcmVmZXJyZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZl
cnJlZFdpZHRoOwogCiAgICAgY2xlYXJOZWVkc1ByZWZlcnJlZFdpZHRoc1VwZGF0ZSgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQ
YWRkZWQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQ
YWRkZWQuY3BwCmluZGV4IDc1YjQ4NmU1NjA2NS4uOWY1NjU4NjIxNzllIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFBhZGRlZC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQYWRkZWQuY3Bw
CkBAIC05Niw3ICs5Niw4IEBAIHZvaWQgUmVuZGVyTWF0aE1MUGFkZGVkOjpjb21wdXRlUHJlZmVy
cmVkTG9naWNhbFdpZHRocygpCiAgICAgLy8gV2UgcGFyc2UgaXQgdXNpbmcgdGhlIHByZWZlcnJl
ZCB3aWR0aCBvZiB0aGUgY29udGVudCBhcyBpdHMgZGVmYXVsdCB2YWx1ZS4KICAgICBMYXlvdXRV
bml0IHByZWZlcnJlZFdpZHRoID0gcHJlZmVycmVkTG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOwog
ICAgIHByZWZlcnJlZFdpZHRoID0gbXBhZGRlZFdpZHRoKHByZWZlcnJlZFdpZHRoKTsKLSAgICBt
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0g
cHJlZmVycmVkV2lkdGg7CisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJy
ZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRo
OwogCiAgICAgYXV0byBzaXplcyA9IHNpemVBcHBsaWVkVG9NYXRoQ29udGVudChMYXlvdXRQaGFz
ZTo6Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNhbFdpZHRoKTsKICAgICBhcHBseVNpemVUb01hdGhD
b250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgsIHNpemVz
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0
aE1MUm9vdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhN
TFJvb3QuY3BwCmluZGV4IDM0YTA1ODFiNmFkNC4uNDllZGQ0MTM0MzdmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvb3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5jcHAKQEAg
LTE4Miw3ICsxODIsOCBAQCB2b2lkIFJlbmRlck1hdGhNTFJvb3Q6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCkKICAgICAgICAgcHJlZmVycmVkV2lkdGggKz0gbV9yYWRpY2FsT3BlcmF0
b3IubWF4UHJlZmVycmVkV2lkdGgoKTsKICAgICAgICAgcHJlZmVycmVkV2lkdGggKz0gZ2V0QmFz
ZSgpLm1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsgbWFyZ2luSW50cmluc2ljTG9naWNhbFdp
ZHRoRm9yQ2hpbGQoZ2V0QmFzZSgpKTsKICAgICB9Ci0gICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRoOworICAg
IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gcHJlZmVycmVkV2lkdGg7CisgICAgbV9taW5Q
cmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKIAogICAgIGF1dG8gc2l6ZXMg
PSBzaXplQXBwbGllZFRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aCk7CiAgICAgYXBwbHlTaXplVG9NYXRoQ29udGVudChMYXlvdXRQaGFzZTo6
Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNhbFdpZHRoLCBzaXplcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAKaW5kZXggOWU3MzMy
NzAzY2EzLi5lMjgzZDljYzAzNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9tYXRobWwvUmVuZGVyTWF0aE1MUm93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAKQEAgLTEzNCw3ICsxMzQsOCBAQCB2b2lkIFJl
bmRlck1hdGhNTFJvdzo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogewogICAgIEFT
U0VSVChuZWVkc1ByZWZlcnJlZExvZ2ljYWxXaWR0aHNVcGRhdGUoKSk7CiAKLSAgICBtX21pblBy
ZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gcHJlZmVy
cmVkTG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOworICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gcHJlZmVycmVkTG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOworICAgIG1fbWluUHJlZmVy
cmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAKICAgICBhdXRv
IHNpemVzID0gc2l6ZUFwcGxpZWRUb01hdGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQ
cmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0
UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFNwYWNlLmNwcApp
bmRleCA2MjA1ZGI2ZjZiM2IuLmQwODMzMjRkY2JmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAKQEAgLTU1LDcgKzU1
LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxTcGFjZTo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0
aHMoKQogewogICAgIEFTU0VSVChuZWVkc1ByZWZlcnJlZExvZ2ljYWxXaWR0aHNVcGRhdGUoKSk7
CiAKLSAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoID0gc3BhY2VXaWR0aCgpOworICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0g
c3BhY2VXaWR0aCgpOworICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGg7CiAKICAgICBhdXRvIHNpemVzID0gc2l6ZUFwcGxpZWRUb01hdGhD
b250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAg
IGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExv
Z2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L21hdGhtbC9SZW5kZXJNYXRoTUxUb2tlbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
bWF0aG1sL1JlbmRlck1hdGhNTFRva2VuLmNwcAppbmRleCAyMDkxODViYzkzNjAuLmNhMTk2N2Yx
Y2Q1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJN
YXRoTUxUb2tlbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5k
ZXJNYXRoTUxUb2tlbi5jcHAKQEAgLTg5LDcgKzg5LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxUb2tl
bjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogICAgIGlmIChtX21hdGhWYXJpYW50
Q29kZVBvaW50KSB7CiAgICAgICAgIGF1dG8gbWF0aFZhcmlhbnRHbHlwaCA9IHN0eWxlKCkuZm9u
dENhc2NhZGUoKS5nbHlwaERhdGFGb3JDaGFyYWN0ZXIobV9tYXRoVmFyaWFudENvZGVQb2ludC52
YWx1ZSgpLCBtX21hdGhWYXJpYW50SXNNaXJyb3JlZCk7CiAgICAgICAgIGlmIChtYXRoVmFyaWFu
dEdseXBoLmZvbnQpIHsKLSAgICAgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0g
bV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtYXRoVmFyaWFudEdseXBoLmZvbnQtPndpZHRo
Rm9yR2x5cGgobWF0aFZhcmlhbnRHbHlwaC5nbHlwaCk7CisgICAgICAgICAgICBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IG1hdGhWYXJpYW50R2x5cGguZm9udC0+d2lkdGhGb3JHbHlwaCht
YXRoVmFyaWFudEdseXBoLmdseXBoKTsKKyAgICAgICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNh
bFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAgICAgICAgICAgICBhZGp1c3RQ
cmVmZXJyZWRMb2dpY2FsV2lkdGhzRm9yQm9yZGVyQW5kUGFkZGluZygpOwogICAgICAgICAgICAg
Y2xlYXJOZWVkc1ByZWZlcnJlZFdpZHRoc1VwZGF0ZSgpOwogICAgICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxV
bmRlck92ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRo
TUxVbmRlck92ZXIuY3BwCmluZGV4IDkyMjAyMGI5NDE0OS4uNTM0MTIyZTZlZWEzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFVuZGVyT3Zl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxV
bmRlck92ZXIuY3BwCkBAIC0yMDcsNyArMjA3LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxVbmRlck92
ZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBpZiAoc2NyaXB0VHlwZSgp
ID09IE1hdGhNTFNjcmlwdHNFbGVtZW50OjpTY3JpcHRUeXBlOjpPdmVyIHx8IHNjcmlwdFR5cGUo
KSA9PSBNYXRoTUxTY3JpcHRzRWxlbWVudDo6U2NyaXB0VHlwZTo6VW5kZXJPdmVyKQogICAgICAg
ICBwcmVmZXJyZWRXaWR0aCA9IHN0ZDo6bWF4KHByZWZlcnJlZFdpZHRoLCBvdmVyKCkubWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoKCkgKyBtYXJnaW5JbnRyaW5zaWNMb2dpY2FsV2lkdGhGb3JDaGls
ZChvdmVyKCkpKTsKIAotICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRoOworICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gcHJlZmVycmVkV2lkdGg7CiAKICAgICBhdXRvIHNpemVzID0gc2l6ZUFwcGxpZWRUb01h
dGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwog
ICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>479675</attachid>
            <date>2026-05-15 05:25:54 -0700</date>
            <delta_ts>2026-05-15 08:28:19 -0700</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-314496-20260515052553.patch</filename>
            <type>text/plain</type>
            <size>26585</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAyNTkyNGZhMTVmYTBmMWY0NWVjYWM1MDg5ZmRlZWI3ZDNiMDBlZDY0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IFR1ZSwgMTIgTWF5IDIwMjYgMDc6MjY6NDMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBbY2xlYW51
cF0gUmVwbGFjZSBjaGFpbmVkIGFzc2lnbm1lbnRzIGluIGludHJpbnNpYyB3aWR0aAogY29tcHV0
YXRpb25zIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTQ0OTYKClJl
dmlld2VkIGJ5IEFudHRpIEtvaXZpc3RvLgoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2suY3BwOgooV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmNvbXB1dGVQcmVmZXJyZWRMb2dp
Y2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKFdl
YkNvcmU6OlJlbmRlckJveDo6Y29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dpY2FsV2lkdGhzIGNv
bnN0KToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxl
Qm94LmNwcDoKKFdlYkNvcmU6OlJlbmRlckRlcHJlY2F0ZWRGbGV4aWJsZUJveDo6Y29tcHV0ZVBy
ZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJG
aWxlVXBsb2FkQ29udHJvbC5jcHA6CihXZWJDb3JlOjpSZW5kZXJGaWxlVXBsb2FkQ29udHJvbDo6
Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHA6CihXZWJDb3JlOjpSZW5kZXJGcmFnbWVudENv
bnRhaW5lcjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcDoKKFdlYkNvcmU6OlJlbmRlckxpc3RCb3g6OmNv
bXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGlzdE1hcmtlci5jcHA6CihXZWJDb3JlOjpSZW5kZXJMaXN0TWFya2VyOjpjb21wdXRl
UHJlZmVycmVkTG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ck1lbnVMaXN0LmNwcDoKKFdlYkNvcmU6OlJlbmRlck1lbnVMaXN0Ojpjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlcGxhY2Vk
LmNwcDoKKFdlYkNvcmU6OlJlbmRlclJlcGxhY2VkOjpjb21wdXRlSW50cmluc2ljTG9naWNhbFdp
ZHRocyBjb25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNsaWRlci5jcHA6
CihXZWJDb3JlOjpSZW5kZXJTbGlkZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToK
KiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwOgooV2ViQ29y
ZTo6UmVuZGVyVGV4dENvbnRyb2w6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNwcDoK
KFdlYkNvcmU6OlJlbmRlck1hdGhNTEZyYWN0aW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdp
ZHRocyk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxNZW5j
bG9zZS5jcHA6CihXZWJDb3JlOjpSZW5kZXJNYXRoTUxNZW5jbG9zZTo6Y29tcHV0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVy
TWF0aE1MT3BlcmF0b3IuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1MT3BlcmF0b3I6OmNvbXB1
dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0
aG1sL1JlbmRlck1hdGhNTFBhZGRlZC5jcHA6CihXZWJDb3JlOjpSZW5kZXJNYXRoTUxQYWRkZWQ6
OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvb3QuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1MUm9v
dDo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm93LmNwcDoKKFdlYkNvcmU6OlJlbmRlck1hdGhNTFJv
dzo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9tYXRobWwvUmVuZGVyTWF0aE1MU3BhY2UuY3BwOgooV2ViQ29yZTo6UmVuZGVyTWF0aE1M
U3BhY2U6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKToKKiBTb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFRva2VuLmNwcDoKKFdlYkNvcmU6OlJlbmRlck1h
dGhNTFRva2VuOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6CiogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxVbmRlck92ZXIuY3BwOgooV2ViQ29yZTo6
UmVuZGVyTWF0aE1MVW5kZXJPdmVyOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocyk6Ci0t
LQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcCAgICAgIHwgIDMgKy0K
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwICAgICAgICB8IDQwICsrKysr
KysrKystLS0tLS0tLS0KIC4uLi9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94
LmNwcCB8IDEwICsrKy0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNw
cCAgICAgfCAgNyArKy0tCiAuLi4vcmVuZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNw
cCAgICAgfCAxMCArKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3gu
Y3BwICAgIHwgIDcgKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RNYXJr
ZXIuY3BwIHwgIDMgKy0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNZW51TGlzdC5j
cHAgICB8ICA3ICsrLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5j
cHAgICB8ICAzICstCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNwcCAg
ICAgfCAgNyArKy0tCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3Bw
ICAgfCAgNyArKy0tCiAuLi4vcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5j
cHAgfCAgMyArLQogLi4uL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MTWVuY2xvc2UuY3Bw
IHwgIDMgKy0KIC4uLi9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE9wZXJhdG9yLmNwcCB8
ICAzICstCiAuLi4vcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQYWRkZWQuY3BwICAgfCAg
MyArLQogLi4uL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5jcHAgICAgIHwgIDMg
Ky0KIC4uLi9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAgICAgICB8ICAzICst
CiAuLi4vcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAgICAgfCAgMyArLQog
Li4uL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MVG9rZW4uY3BwICAgIHwgIDMgKy0KIC4u
Li9tYXRobWwvUmVuZGVyTWF0aE1MVW5kZXJPdmVyLmNwcCAgICAgICAgICB8ICAzICstCiAyMCBm
aWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAppbmRleCA0ZjcyYWUzYjFhODMuLmY5MWMy
OGEzNGMwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCkBAIC0y
MjQ1LDcgKzIyNDUsOCBAQCB2b2lkIFJlbmRlckJsb2NrOjpjb21wdXRlUHJlZmVycmVkTG9naWNh
bFdpZHRocygpCiAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2FsV2lkdGhzKG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAgICAgICAg
IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7
CiAgICAgfSBlbHNlIGlmIChzaG91bGRDb21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJhdGlv
KCkpIHsKLSAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJl
ZExvZ2ljYWxXaWR0aCA9IChjb21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJhdGlvKCkgLSBi
b3JkZXJBbmRQYWRkaW5nTG9naWNhbFdpZHRoKCkpOworICAgICAgICBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aCA9IGNvbXB1dGVMb2dpY2FsV2lkdGhGcm9tQXNwZWN0UmF0aW8oKSAtIGJvcmRl
ckFuZFBhZGRpbmdMb2dpY2FsV2lkdGgoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKICAgICAgICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heCgwX2x1LCBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0
aCk7CiAgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gc3RkOjptYXgoMF9sdSwg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAgICAgICBhcHBseUF1dG9tYXRpY0NvbnRl
bnRCYXNlZE1pbmltdW1TaXplKG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCmlu
ZGV4IDJjMmY3ODk3YTM3Yy4uOTQ3ZGNkYjQ0YjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94LmNwcApAQCAtMjkyOCwyNSArMjkyOCwyOSBAQCBMYXlvdXRVbml0IFJlbmRlckJv
eDo6ZmlsbEF2YWlsYWJsZU1lYXN1cmUoTGF5b3V0VW5pdCBhdmFpbGFibGVMb2dpY2FsV2lkdGgs
IExheQogdGVtcGxhdGU8dHlwZW5hbWUgS2V5d29yZD4gdm9pZCBSZW5kZXJCb3g6OmNvbXB1dGVJ
bnRyaW5zaWNLZXl3b3JkTG9naWNhbFdpZHRocyhLZXl3b3JkLCBMYXlvdXRVbml0IGJvcmRlckFu
ZFBhZGRpbmcsIExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9n
aWNhbFdpZHRoKSBjb25zdAogewogICAgIGlmIGNvbnN0ZXhwciAoc3RkOjpzYW1lX2FzPEtleXdv
cmQsIENTUzo6S2V5d29yZDo6TWluSW50cmluc2ljPikKLSAgICAgICAgY29tcHV0ZUludHJpbnNp
Y0tleXdvcmRMb2dpY2FsV2lkdGhzKG1pbkxvZ2ljYWxXaWR0aCwgbWF4TG9naWNhbFdpZHRoKTsK
LSAgICBlbHNlIHsKLSAgICAgICAgaWYgKHNob3VsZENvbXB1dGVMb2dpY2FsV2lkdGhGcm9tQXNw
ZWN0UmF0aW8oKSkgewotICAgICAgICAgICAgbWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNhbFdp
ZHRoID0gY29tcHV0ZUxvZ2ljYWxXaWR0aEZyb21Bc3BlY3RSYXRpbygpIC0gYm9yZGVyQW5kUGFk
ZGluZzsKLSAgICAgICAgICAgIGFwcGx5QXV0b21hdGljQ29udGVudEJhc2VkTWluaW11bVNpemUo
bWluTG9naWNhbFdpZHRoLCBtYXhMb2dpY2FsV2lkdGgpOwotICAgICAgICB9IGVsc2UgaWYgKENo
ZWNrZWRQdHIgcmVuZGVyUmVwbGFjZWQgPSBkeW5hbWljRG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+
KCp0aGlzKSkgewotICAgICAgICAgICAgLy8gRm9yIHJlcGxhY2VkIGVsZW1lbnRzIHdpdGggYW4g
aW50cmluc2ljIGFzcGVjdCByYXRpbyAoZS5nLiA8aW1nPikgYW5kIGEKLSAgICAgICAgICAgIC8v
IHNwZWNpZmllZCBibG9jayBzaXplLCBjb21wdXRlIHRoZSB0cmFuc2ZlcnJlZCBtaW4vbWF4LWNv
bnRlbnQgaW5saW5lIHNpemUKLSAgICAgICAgICAgIC8vIHRocm91Z2ggdGhlIGludHJpbnNpYyBy
YXRpbyByYXRoZXIgdGhhbiB1c2luZyB0aGUgcmF3IG5hdHVyYWwgd2lkdGguCi0gICAgICAgICAg
ICBhdXRvIHByZWZlcnJlZFJhdGlvID0gcmVuZGVyUmVwbGFjZWQtPnByZWZlcnJlZEFzcGVjdFJh
dGlvQXNTaXplKCkuYXNwZWN0UmF0aW9Eb3VibGUoKTsKLSAgICAgICAgICAgIGlmIChwcmVmZXJy
ZWRSYXRpbyAmJiBzdHlsZSgpLmxvZ2ljYWxIZWlnaHQoKS5pc1NwZWNpZmllZCgpKSB7Ci0gICAg
ICAgICAgICAgICAgYXV0byBjb21wdXRlZFZhbHVlcyA9IGNvbXB1dGVMb2dpY2FsSGVpZ2h0KGxv
Z2ljYWxIZWlnaHQoKSwgbG9naWNhbFRvcCgpKTsKLSAgICAgICAgICAgICAgICBhdXRvIGNvbnRl
bnRCbG9ja1NpemUgPSBzdGQ6Om1heCgwX2x1LCBjb21wdXRlZFZhbHVlcy5leHRlbnQgLSBib3Jk
ZXJBbmRQYWRkaW5nTG9naWNhbEhlaWdodCgpKTsKLSAgICAgICAgICAgICAgICBtaW5Mb2dpY2Fs
V2lkdGggPSBtYXhMb2dpY2FsV2lkdGggPSBMYXlvdXRVbml0KGNvbnRlbnRCbG9ja1NpemUgKiBw
cmVmZXJyZWRSYXRpbyk7Ci0gICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICBjb21w
dXRlSW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMobWluTG9naWNhbFdpZHRoLCBtYXhMb2dp
Y2FsV2lkdGgpOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNL
ZXl3b3JkTG9naWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2ljYWxXaWR0aCk7Cisg
ICAgICAgIHJldHVybiBjb21wdXRlSW50cmluc2ljS2V5d29yZExvZ2ljYWxXaWR0aHMobWluTG9n
aWNhbFdpZHRoLCBtYXhMb2dpY2FsV2lkdGgpOworCisgICAgaWYgKHNob3VsZENvbXB1dGVMb2dp
Y2FsV2lkdGhGcm9tQXNwZWN0UmF0aW8oKSkgeworICAgICAgICBtYXhMb2dpY2FsV2lkdGggPSBj
b21wdXRlTG9naWNhbFdpZHRoRnJvbUFzcGVjdFJhdGlvKCkgLSBib3JkZXJBbmRQYWRkaW5nOwor
ICAgICAgICBtaW5Mb2dpY2FsV2lkdGggPSBtYXhMb2dpY2FsV2lkdGg7CisgICAgICAgIGFwcGx5
QXV0b21hdGljQ29udGVudEJhc2VkTWluaW11bVNpemUobWluTG9naWNhbFdpZHRoLCBtYXhMb2dp
Y2FsV2lkdGgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKENoZWNrZWRQdHIg
cmVuZGVyUmVwbGFjZWQgPSBkeW5hbWljRG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+KCp0aGlzKSkg
eworICAgICAgICAvLyBGb3IgcmVwbGFjZWQgZWxlbWVudHMgd2l0aCBhbiBpbnRyaW5zaWMgYXNw
ZWN0IHJhdGlvIChlLmcuIDxpbWc+KSBhbmQgYQorICAgICAgICAvLyBzcGVjaWZpZWQgYmxvY2sg
c2l6ZSwgY29tcHV0ZSB0aGUgdHJhbnNmZXJyZWQgbWluL21heC1jb250ZW50IGlubGluZSBzaXpl
CisgICAgICAgIC8vIHRocm91Z2ggdGhlIGludHJpbnNpYyByYXRpbyByYXRoZXIgdGhhbiB1c2lu
ZyB0aGUgcmF3IG5hdHVyYWwgd2lkdGguCisgICAgICAgIGF1dG8gcHJlZmVycmVkUmF0aW8gPSBy
ZW5kZXJSZXBsYWNlZC0+cHJlZmVycmVkQXNwZWN0UmF0aW9Bc1NpemUoKS5hc3BlY3RSYXRpb0Rv
dWJsZSgpOworICAgICAgICBpZiAocHJlZmVycmVkUmF0aW8gJiYgc3R5bGUoKS5sb2dpY2FsSGVp
Z2h0KCkuaXNTcGVjaWZpZWQoKSkgeworICAgICAgICAgICAgYXV0byBjb21wdXRlZFZhbHVlcyA9
IGNvbXB1dGVMb2dpY2FsSGVpZ2h0KGxvZ2ljYWxIZWlnaHQoKSwgbG9naWNhbFRvcCgpKTsKKyAg
ICAgICAgICAgIGF1dG8gY29udGVudEJsb2NrU2l6ZSA9IHN0ZDo6bWF4KDBfbHUsIGNvbXB1dGVk
VmFsdWVzLmV4dGVudCAtIGJvcmRlckFuZFBhZGRpbmdMb2dpY2FsSGVpZ2h0KCkpOworICAgICAg
ICAgICAgbWF4TG9naWNhbFdpZHRoID0gTGF5b3V0VW5pdCB7IGNvbnRlbnRCbG9ja1NpemUgKiBw
cmVmZXJyZWRSYXRpbyB9OworICAgICAgICAgICAgbWluTG9naWNhbFdpZHRoID0gbWF4TG9naWNh
bFdpZHRoOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgfQorICAgIGNvbXB1
dGVJbnRyaW5zaWNLZXl3b3JkTG9naWNhbFdpZHRocyhtaW5Mb2dpY2FsV2lkdGgsIG1heExvZ2lj
YWxXaWR0aCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgYm9vbCBOT0RFTEVURSBpc09ydGhvZ29uYWwo
Y29uc3QgUmVuZGVyQm94JiByZW5kZXJlciwgY29uc3QgUmVuZGVyRWxlbWVudCYgYW5jZXN0b3Ip
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZs
ZXhpYmxlQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJEZXByZWNhdGVk
RmxleGlibGVCb3guY3BwCmluZGV4IGQxZDNlNWU0MDIwYS4uZTMxNDBlYjZkMGQ1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRGVwcmVjYXRlZEZsZXhp
YmxlQm94LmNwcApAQCAtMjcwLDEwICsyNzAsMTIgQEAgdm9pZCBSZW5kZXJEZXByZWNhdGVkRmxl
eGlibGVCb3g6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKIHsKICAgICBBU1NFUlQo
bmVlZHNQcmVmZXJyZWRMb2dpY2FsV2lkdGhzVXBkYXRlKCkpOwogCi0gICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7Ci0gICAgaWYg
KGF1dG8gZml4ZWRXaWR0aCA9IHN0eWxlKCkud2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZFdpZHRo
ICYmIGZpeGVkV2lkdGgtPmlzUG9zaXRpdmUoKSkKLSAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hM
b2dpY2FsV2lkdGhGb3JCb3hTaXppbmcoKmZpeGVkV2lkdGgpOwotICAgIGVsc2UKKyAgICBtX21p
blByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CisgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lk
dGggPSAwOworICAgIGlmIChhdXRvIGZpeGVkV2lkdGggPSBzdHlsZSgpLndpZHRoKCkudHJ5Rml4
ZWQoKTsgZml4ZWRXaWR0aCAmJiBmaXhlZFdpZHRoLT5pc1Bvc2l0aXZlKCkpIHsKKyAgICAgICAg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50Qm94TG9naWNhbFdpZHRo
Rm9yQm94U2l6aW5nKCpmaXhlZFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAg
Y29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgs
IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExv
Z2ljYWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZpbGVVcGxvYWRDb250cm9sLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJGaWxlVXBsb2FkQ29udHJvbC5jcHAKaW5kZXggYjllMGVjOTkwNWI2Li4zYTYzMGNhMjQz
MWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGaWxlVXBsb2Fk
Q29udHJvbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZpbGVVcGxv
YWRDb250cm9sLmNwcApAQCAtMzA5LDkgKzMwOSwxMCBAQCB2b2lkIFJlbmRlckZpbGVVcGxvYWRD
b250cm9sOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAgICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSAwOwogICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsK
IAotICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgo
KS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQ
b3NpdGl2ZSgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNp
emluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExv
Z2ljYWxXaWR0aCA9IHN0eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dp
Y2FsV2lkdGggJiYgZml4ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmUoKSkgeworICAgICAgICBt
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhG
b3JCb3hTaXppbmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAg
ICAgICAgY29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZl
cnJlZExvZ2ljYWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckZyYWdtZW50Q29udGFpbmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGcmFnbWVudENvbnRhaW5lci5jcHAKaW5kZXggMzIxYzMxNDU3M2RiLi43OGY4
OTM1NTI0ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGcmFn
bWVudENvbnRhaW5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZy
YWdtZW50Q29udGFpbmVyLmNwcApAQCAtMzk3LDEyICszOTcsMTQgQEAgdm9pZCBSZW5kZXJGcmFn
bWVudENvbnRhaW5lcjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogCiAgICAgLy8g
RklYTUU6IEN1cnJlbnRseSwgdGhlIGNvZGUgaGFuZGxlcyBvbmx5IHRoZSA8bGVuZ3RoPiBjYXNl
IGZvciBtaW4td2lkdGgvbWF4LXdpZHRoLgogICAgIC8vIEl0IHNob3VsZCBhbHNvIHN1cHBvcnQg
b3RoZXIgdmFsdWVzLCBsaWtlIHBlcmNlbnRhZ2UsIGNhbGMgb3Igdmlld3BvcnQgcmVsYXRpdmUu
Ci0gICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxX
aWR0aCA9IDA7CisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOworICAgIG1fbWF4
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKIAogICAgIENoZWNrZWRSZWYgc3R5bGVUb1VzZSA9
IHN0eWxlKCk7Ci0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2FsV2lkdGggPSBzdHlsZVRvVXNlLT5s
b2dpY2FsV2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2lj
YWxXaWR0aC0+aXNQb3NpdGl2ZSgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0
aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxX
aWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAo
YXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0eWxlVG9Vc2UtPmxvZ2ljYWxXaWR0aCgpLnRyeUZp
eGVkKCk7IGZpeGVkTG9naWNhbFdpZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZl
KCkpIHsKKyAgICAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RDb250ZW50
Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7CisgICAgICAg
IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7
CisgICAgfSBlbHNlCiAgICAgICAgIGNvbXB1dGVJbnRyaW5zaWNMb2dpY2FsV2lkdGhzKG1fbWlu
UHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CiAKICAg
ICBjb25zdHJhaW5QcmVmZXJyZWRMb2dpY2FsV2lkdGhzQnlNaW5NYXgobV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcAppbmRleCA4ZWMxYjUxZWUzZjcuLmU0NWE1NDYx
M2U5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3gu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNwcApAQCAt
MjUwLDkgKzI1MCwxMCBAQCB2b2lkIFJlbmRlckxpc3RCb3g6OmNvbXB1dGVQcmVmZXJyZWRMb2dp
Y2FsV2lkdGhzKCkKICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7CiAgICAgbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwogCi0gICAgaWYgKGF1dG8gZml4ZWRMb2dpY2Fs
V2lkdGggPSBzdHlsZSgpLmxvZ2ljYWxXaWR0aCgpLnRyeUZpeGVkKCk7IGZpeGVkTG9naWNhbFdp
ZHRoICYmIGZpeGVkTG9naWNhbFdpZHRoLT5pc1Bvc2l0aXZlKCkpCi0gICAgICAgIG1fbWluUHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBhZGp1c3RD
b250ZW50Qm94TG9naWNhbFdpZHRoRm9yQm94U2l6aW5nKCpmaXhlZExvZ2ljYWxXaWR0aCk7Ci0g
ICAgZWxzZQorICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2Fs
V2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0
aC0+aXNQb3NpdGl2ZSgpKSB7CisgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0g
YWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dpY2FsV2lk
dGgpOworICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVk
TG9naWNhbFdpZHRoOworICAgIH0gZWxzZQogICAgICAgICBjb21wdXRlSW50cmluc2ljTG9naWNh
bFdpZHRocyhtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dpY2Fs
V2lkdGgpOwogCiAgICAgY29uc3RyYWluUHJlZmVycmVkTG9naWNhbFdpZHRoc0J5TWluTWF4KG1f
bWluUHJlZmVycmVkTG9naWNhbFdpZHRoLCBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdE1hcmtlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdE1hcmtlci5jcHAKaW5kZXggNmY0
MDdjZjlmMzFiLi40ZDA0YmNiNjRiMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMaXN0TWFya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGlzdE1hcmtlci5jcHAKQEAgLTQ0Myw3ICs0NDMsOCBAQCB2b2lkIFJlbmRlckxpc3RN
YXJrZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKIAogICAgIGlmIChpc0ltYWdl
KCkpIHsKICAgICAgICAgTGF5b3V0U2l6ZSBpbWFnZVNpemUgPSBMYXlvdXRTaXplKG1faW1hZ2Ut
PmltYWdlU2l6ZSh0aGlzLCBzdHlsZSgpLnVzZWRab29tKCkpKTsKLSAgICAgICAgbV9taW5QcmVm
ZXJyZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHdyaXRpbmdN
b2RlKCkuaXNIb3Jpem9udGFsKCkgPyBpbWFnZVNpemUud2lkdGgoKSA6IGltYWdlU2l6ZS5oZWln
aHQoKTsKKyAgICAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSB3cml0aW5nTW9kZSgp
LmlzSG9yaXpvbnRhbCgpID8gaW1hZ2VTaXplLndpZHRoKCkgOiBpbWFnZVNpemUuaGVpZ2h0KCk7
CisgICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dp
Y2FsV2lkdGg7CiAgICAgICAgIGNsZWFyTmVlZHNQcmVmZXJyZWRXaWR0aHNVcGRhdGUoKTsKICAg
ICAgICAgdXBkYXRlSW5saW5lTWFyZ2lucygpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3QuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlck1lbnVMaXN0LmNwcAppbmRleCAyNGZkN2I2ZmU1YjUuLmZl
ZGQ5NTc0YmE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1l
bnVMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWVudUxpc3Qu
Y3BwCkBAIC0xNzgsOSArMTc4LDEwIEBAIHZvaWQgUmVuZGVyTWVudUxpc3Q6OmNvbXB1dGVQcmVm
ZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IDA7
CiAgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwogICAgIAotICAgIGlmIChhdXRv
IGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50cnlGaXhlZCgpOyBm
aXhlZExvZ2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQb3NpdGl2ZSgpKQotICAg
ICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dp
Y2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0
eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dpY2FsV2lkdGggJiYgZml4
ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmUoKSkgeworICAgICAgICBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXppbmcoKmZp
eGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBt
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAgY29tcHV0ZUlu
dHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExvZ2ljYWxXaWR0
aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJyZWRMb2dp
Y2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJl
cGxhY2VkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAK
aW5kZXggYjM5NTQ1YWZjNjg4Li40NTdkYTk2NWYxNzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZXBsYWNlZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclJlcGxhY2VkLmNwcApAQCAtODE2LDcgKzgxNiw4IEBAIExheW91dFVuaXQg
UmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVSZXBsYWNlZExvZ2ljYWxIZWlnaHQoc3RkOjpvcHRpb25h
bDxMYXlvdXRVbml0CiAKIHZvaWQgUmVuZGVyUmVwbGFjZWQ6OmNvbXB1dGVJbnRyaW5zaWNMb2dp
Y2FsV2lkdGhzKExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9n
aWNhbFdpZHRoKSBjb25zdAogewotICAgIG1pbkxvZ2ljYWxXaWR0aCA9IG1heExvZ2ljYWxXaWR0
aCA9IGludHJpbnNpY0xvZ2ljYWxXaWR0aCgpOworICAgIG1heExvZ2ljYWxXaWR0aCA9IGludHJp
bnNpY0xvZ2ljYWxXaWR0aCgpOworICAgIG1pbkxvZ2ljYWxXaWR0aCA9IG1heExvZ2ljYWxXaWR0
aDsKIH0KIAogdm9pZCBSZW5kZXJSZXBsYWNlZDo6Y29tcHV0ZUludHJpbnNpY0tleXdvcmRMb2dp
Y2FsV2lkdGhzKExheW91dFVuaXQmIG1pbkxvZ2ljYWxXaWR0aCwgTGF5b3V0VW5pdCYgbWF4TG9n
aWNhbFdpZHRoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclNsaWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU2xpZGVyLmNw
cAppbmRleCA2Y2I5OGFiZTMxMTEuLmU4NDQ3YzEwNjJlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclNsaWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclNsaWRlci5jcHAKQEAgLTkwLDkgKzkwLDEwIEBAIHZvaWQgUmVuZGVyU2xp
ZGVyOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAgICAgbV9taW5QcmVmZXJyZWRM
b2dpY2FsV2lkdGggPSAwOwogICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKIAot
ICAgIGlmIChhdXRvIGZpeGVkTG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50
cnlGaXhlZCgpKQotICAgICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNp
emluZygqZml4ZWRMb2dpY2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExv
Z2ljYWxXaWR0aCA9IHN0eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKSkgeworICAgICAg
ICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lk
dGhGb3JCb3hTaXppbmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJy
ZWRMb2dpY2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UK
ICAgICAgICAgY29tcHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGgsIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblBy
ZWZlcnJlZExvZ2ljYWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwg
bV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUZXh0Q29udHJvbC5jcHAKaW5kZXggMjEyMzQ4MGU3OTJjLi4yZjlkZmMyMWIzMzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcApA
QCAtMjE1LDkgKzIxNSwxMCBAQCB2b2lkIFJlbmRlclRleHRDb250cm9sOjpjb21wdXRlUHJlZmVy
cmVkTG9naWNhbFdpZHRocygpCiAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSAwOwog
ICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gMDsKIAotICAgIGlmIChhdXRvIGZpeGVk
TG9naWNhbFdpZHRoID0gc3R5bGUoKS5sb2dpY2FsV2lkdGgoKS50cnlGaXhlZCgpOyBmaXhlZExv
Z2ljYWxXaWR0aCAmJiBmaXhlZExvZ2ljYWxXaWR0aC0+aXNQb3NpdGl2ZU9yWmVybygpKQotICAg
ICAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gYWRqdXN0Q29udGVudEJveExvZ2ljYWxXaWR0aEZvckJveFNpemluZygqZml4ZWRMb2dp
Y2FsV2lkdGgpOwotICAgIGVsc2UKKyAgICBpZiAoYXV0byBmaXhlZExvZ2ljYWxXaWR0aCA9IHN0
eWxlKCkubG9naWNhbFdpZHRoKCkudHJ5Rml4ZWQoKTsgZml4ZWRMb2dpY2FsV2lkdGggJiYgZml4
ZWRMb2dpY2FsV2lkdGgtPmlzUG9zaXRpdmVPclplcm8oKSkgeworICAgICAgICBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IGFkanVzdENvbnRlbnRCb3hMb2dpY2FsV2lkdGhGb3JCb3hTaXpp
bmcoKmZpeGVkTG9naWNhbFdpZHRoKTsKKyAgICAgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lk
dGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKKyAgICB9IGVsc2UKICAgICAgICAgY29t
cHV0ZUludHJpbnNpY0xvZ2ljYWxXaWR0aHMobV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgsIG1f
bWF4UHJlZmVycmVkTG9naWNhbFdpZHRoKTsKIAogICAgIGNvbnN0cmFpblByZWZlcnJlZExvZ2lj
YWxXaWR0aHNCeU1pbk1heChtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCwgbV9tYXhQcmVmZXJy
ZWRMb2dpY2FsV2lkdGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21h
dGhtbC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
bWF0aG1sL1JlbmRlck1hdGhNTEZyYWN0aW9uLmNwcAppbmRleCA4MTU3YzU2MDBmMDcuLjQwNjNk
ZWY3MmUwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5k
ZXJNYXRoTUxGcmFjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGht
bC9SZW5kZXJNYXRoTUxGcmFjdGlvbi5jcHAKQEAgLTE5Nyw3ICsxOTcsOCBAQCB2b2lkIFJlbmRl
ck1hdGhNTEZyYWN0aW9uOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRocygpCiAKICAgICBM
YXlvdXRVbml0IG51bWVyYXRvcldpZHRoID0gbnVtZXJhdG9yKCkubWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoKCkgKyBtYXJnaW5JbnRyaW5zaWNMb2dpY2FsV2lkdGhGb3JDaGlsZChudW1lcmF0b3Io
KSk7CiAgICAgTGF5b3V0VW5pdCBkZW5vbWluYXRvcldpZHRoID0gZGVub21pbmF0b3IoKS5tYXhQ
cmVmZXJyZWRMb2dpY2FsV2lkdGgoKSArIG1hcmdpbkludHJpbnNpY0xvZ2ljYWxXaWR0aEZvckNo
aWxkKGRlbm9taW5hdG9yKCkpOwotICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9t
YXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heChudW1lcmF0b3JXaWR0aCwgZGVub21p
bmF0b3JXaWR0aCk7CisgICAgbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBzdGQ6Om1heChu
dW1lcmF0b3JXaWR0aCwgZGVub21pbmF0b3JXaWR0aCk7CisgICAgbV9taW5QcmVmZXJyZWRMb2dp
Y2FsV2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aDsKIAogICAgIGF1dG8gc2l6ZXMg
PSBzaXplQXBwbGllZFRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aCk7CiAgICAgYXBwbHlTaXplVG9NYXRoQ29udGVudChMYXlvdXRQaGFzZTo6
Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNhbFdpZHRoLCBzaXplcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE1lbmNsb3NlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MTWVuY2xvc2UuY3BwCmlu
ZGV4IDY4MDZjNWIwMjFkZS4uNmI4NTU2ODU4YzdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE1lbmNsb3NlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE1lbmNsb3NlLmNwcApAQCAtMTY2
LDcgKzE2Niw4IEBAIHZvaWQgUmVuZGVyTWF0aE1MTWVuY2xvc2U6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCkKICAgICBMYXlvdXRVbml0IHByZWZlcnJlZFdpZHRoID0gcHJlZmVycmVk
TG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOwogICAgIFNwYWNlQXJvdW5kQ29udGVudCBzcGFjZSA9
IHNwYWNlQXJvdW5kQ29udGVudChwcmVmZXJyZWRXaWR0aCwgMCk7CiAgICAgcHJlZmVycmVkV2lk
dGggKz0gc3BhY2UubGVmdCArIHNwYWNlLnJpZ2h0OwotICAgIG1fbWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoID0gbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKKyAg
ICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRoOworICAgIG1fbWF4
UHJlZmVycmVkTG9naWNhbFdpZHRoID0gcHJlZmVycmVkV2lkdGg7CiAKICAgICBhdXRvIHNpemVz
ID0gc2l6ZUFwcGxpZWRUb01hdGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJy
ZWRMb2dpY2FsV2lkdGgpOwogICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6
OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxPcGVyYXRvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE9wZXJhdG9yLmNwcApp
bmRleCA2NmMxMjBiMzY3ODkuLmNhNWE3ZDI2NjMzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxPcGVyYXRvci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxPcGVyYXRvci5jcHAKQEAgLTIy
MCw3ICsyMjAsOCBAQCB2b2lkIFJlbmRlck1hdGhNTE9wZXJhdG9yOjpjb21wdXRlUHJlZmVycmVk
TG9naWNhbFdpZHRocygpCiAgICAgLy8gRklYTUU6IFRoZSBzcGFjaW5nIHNob3VsZCBvbmx5IGJl
IGFkZGVkIGluc2lkZSAocGVyaGFwcyBpbmZlcnJlZCkgbXJvdyAoaHR0cDovL3d3dy53My5vcmcv
VFIvTWF0aE1ML2NoYXB0ZXIzLmh0bWwjcHJlc20ub3BzcGFjaW5nKS4KICAgICBwcmVmZXJyZWRX
aWR0aCA9IGxlYWRpbmdTcGFjZSgpICsgcHJlZmVycmVkV2lkdGggKyB0cmFpbGluZ1NwYWNlKCk7
CiAKLSAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWluUHJlZmVycmVkTG9naWNh
bFdpZHRoID0gcHJlZmVycmVkV2lkdGg7CisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGgg
PSBwcmVmZXJyZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZl
cnJlZFdpZHRoOwogCiAgICAgY2xlYXJOZWVkc1ByZWZlcnJlZFdpZHRoc1VwZGF0ZSgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQ
YWRkZWQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQ
YWRkZWQuY3BwCmluZGV4IDc1YjQ4NmU1NjA2NS4uOWY1NjU4NjIxNzllIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFBhZGRlZC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxQYWRkZWQuY3Bw
CkBAIC05Niw3ICs5Niw4IEBAIHZvaWQgUmVuZGVyTWF0aE1MUGFkZGVkOjpjb21wdXRlUHJlZmVy
cmVkTG9naWNhbFdpZHRocygpCiAgICAgLy8gV2UgcGFyc2UgaXQgdXNpbmcgdGhlIHByZWZlcnJl
ZCB3aWR0aCBvZiB0aGUgY29udGVudCBhcyBpdHMgZGVmYXVsdCB2YWx1ZS4KICAgICBMYXlvdXRV
bml0IHByZWZlcnJlZFdpZHRoID0gcHJlZmVycmVkTG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOwog
ICAgIHByZWZlcnJlZFdpZHRoID0gbXBhZGRlZFdpZHRoKHByZWZlcnJlZFdpZHRoKTsKLSAgICBt
X21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0g
cHJlZmVycmVkV2lkdGg7CisgICAgbV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJy
ZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRo
OwogCiAgICAgYXV0byBzaXplcyA9IHNpemVBcHBsaWVkVG9NYXRoQ29udGVudChMYXlvdXRQaGFz
ZTo6Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNhbFdpZHRoKTsKICAgICBhcHBseVNpemVUb01hdGhD
b250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgsIHNpemVz
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0
aE1MUm9vdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhN
TFJvb3QuY3BwCmluZGV4IDM0YTA1ODFiNmFkNC4uNDllZGQ0MTM0MzdmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvb3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MUm9vdC5jcHAKQEAg
LTE4Miw3ICsxODIsOCBAQCB2b2lkIFJlbmRlck1hdGhNTFJvb3Q6OmNvbXB1dGVQcmVmZXJyZWRM
b2dpY2FsV2lkdGhzKCkKICAgICAgICAgcHJlZmVycmVkV2lkdGggKz0gbV9yYWRpY2FsT3BlcmF0
b3IubWF4UHJlZmVycmVkV2lkdGgoKTsKICAgICAgICAgcHJlZmVycmVkV2lkdGggKz0gZ2V0QmFz
ZSgpLm1heFByZWZlcnJlZExvZ2ljYWxXaWR0aCgpICsgbWFyZ2luSW50cmluc2ljTG9naWNhbFdp
ZHRoRm9yQ2hpbGQoZ2V0QmFzZSgpKTsKICAgICB9Ci0gICAgbV9taW5QcmVmZXJyZWRMb2dpY2Fs
V2lkdGggPSBtX21heFByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRoOworICAg
IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gcHJlZmVycmVkV2lkdGg7CisgICAgbV9taW5Q
cmVmZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKIAogICAgIGF1dG8gc2l6ZXMg
PSBzaXplQXBwbGllZFRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aCk7CiAgICAgYXBwbHlTaXplVG9NYXRoQ29udGVudChMYXlvdXRQaGFzZTo6
Q2FsY3VsYXRlUHJlZmVycmVkTG9naWNhbFdpZHRoLCBzaXplcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAKaW5kZXggOWU3MzMy
NzAzY2EzLi5lMjgzZDljYzAzNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9tYXRobWwvUmVuZGVyTWF0aE1MUm93LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvbWF0aG1sL1JlbmRlck1hdGhNTFJvdy5jcHAKQEAgLTEzNCw3ICsxMzQsOCBAQCB2b2lkIFJl
bmRlck1hdGhNTFJvdzo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogewogICAgIEFT
U0VSVChuZWVkc1ByZWZlcnJlZExvZ2ljYWxXaWR0aHNVcGRhdGUoKSk7CiAKLSAgICBtX21pblBy
ZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0gcHJlZmVy
cmVkTG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOworICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gcHJlZmVycmVkTG9naWNhbFdpZHRoT2ZSb3dJdGVtcygpOworICAgIG1fbWluUHJlZmVy
cmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAKICAgICBhdXRv
IHNpemVzID0gc2l6ZUFwcGxpZWRUb01hdGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQ
cmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0
UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFNwYWNlLmNwcApp
bmRleCA2MjA1ZGI2ZjZiM2IuLmQwODMzMjRkY2JmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxTcGFjZS5jcHAKQEAgLTU1LDcgKzU1
LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxTcGFjZTo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0
aHMoKQogewogICAgIEFTU0VSVChuZWVkc1ByZWZlcnJlZExvZ2ljYWxXaWR0aHNVcGRhdGUoKSk7
CiAKLSAgICBtX21pblByZWZlcnJlZExvZ2ljYWxXaWR0aCA9IG1fbWF4UHJlZmVycmVkTG9naWNh
bFdpZHRoID0gc3BhY2VXaWR0aCgpOworICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0g
c3BhY2VXaWR0aCgpOworICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGg7CiAKICAgICBhdXRvIHNpemVzID0gc2l6ZUFwcGxpZWRUb01hdGhD
b250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwogICAg
IGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJlZExv
Z2ljYWxXaWR0aCwgc2l6ZXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L21hdGhtbC9SZW5kZXJNYXRoTUxUb2tlbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
bWF0aG1sL1JlbmRlck1hdGhNTFRva2VuLmNwcAppbmRleCAyMDkxODViYzkzNjAuLmNhMTk2N2Yx
Y2Q1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJN
YXRoTUxUb2tlbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5k
ZXJNYXRoTUxUb2tlbi5jcHAKQEAgLTg5LDcgKzg5LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxUb2tl
bjo6Y29tcHV0ZVByZWZlcnJlZExvZ2ljYWxXaWR0aHMoKQogICAgIGlmIChtX21hdGhWYXJpYW50
Q29kZVBvaW50KSB7CiAgICAgICAgIGF1dG8gbWF0aFZhcmlhbnRHbHlwaCA9IHN0eWxlKCkuZm9u
dENhc2NhZGUoKS5nbHlwaERhdGFGb3JDaGFyYWN0ZXIobV9tYXRoVmFyaWFudENvZGVQb2ludC52
YWx1ZSgpLCBtX21hdGhWYXJpYW50SXNNaXJyb3JlZCk7CiAgICAgICAgIGlmIChtYXRoVmFyaWFu
dEdseXBoLmZvbnQpIHsKLSAgICAgICAgICAgIG1fbWF4UHJlZmVycmVkTG9naWNhbFdpZHRoID0g
bV9taW5QcmVmZXJyZWRMb2dpY2FsV2lkdGggPSBtYXRoVmFyaWFudEdseXBoLmZvbnQtPndpZHRo
Rm9yR2x5cGgobWF0aFZhcmlhbnRHbHlwaC5nbHlwaCk7CisgICAgICAgICAgICBtX21heFByZWZl
cnJlZExvZ2ljYWxXaWR0aCA9IG1hdGhWYXJpYW50R2x5cGguZm9udC0+d2lkdGhGb3JHbHlwaCht
YXRoVmFyaWFudEdseXBoLmdseXBoKTsKKyAgICAgICAgICAgIG1fbWluUHJlZmVycmVkTG9naWNh
bFdpZHRoID0gbV9tYXhQcmVmZXJyZWRMb2dpY2FsV2lkdGg7CiAgICAgICAgICAgICBhZGp1c3RQ
cmVmZXJyZWRMb2dpY2FsV2lkdGhzRm9yQm9yZGVyQW5kUGFkZGluZygpOwogICAgICAgICAgICAg
Y2xlYXJOZWVkc1ByZWZlcnJlZFdpZHRoc1VwZGF0ZSgpOwogICAgICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxV
bmRlck92ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRo
TUxVbmRlck92ZXIuY3BwCmluZGV4IDkyMjAyMGI5NDE0OS4uNTM0MTIyZTZlZWEzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTFVuZGVyT3Zl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL21hdGhtbC9SZW5kZXJNYXRoTUxV
bmRlck92ZXIuY3BwCkBAIC0yMDcsNyArMjA3LDggQEAgdm9pZCBSZW5kZXJNYXRoTUxVbmRlck92
ZXI6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKICAgICBpZiAoc2NyaXB0VHlwZSgp
ID09IE1hdGhNTFNjcmlwdHNFbGVtZW50OjpTY3JpcHRUeXBlOjpPdmVyIHx8IHNjcmlwdFR5cGUo
KSA9PSBNYXRoTUxTY3JpcHRzRWxlbWVudDo6U2NyaXB0VHlwZTo6VW5kZXJPdmVyKQogICAgICAg
ICBwcmVmZXJyZWRXaWR0aCA9IHN0ZDo6bWF4KHByZWZlcnJlZFdpZHRoLCBvdmVyKCkubWF4UHJl
ZmVycmVkTG9naWNhbFdpZHRoKCkgKyBtYXJnaW5JbnRyaW5zaWNMb2dpY2FsV2lkdGhGb3JDaGls
ZChvdmVyKCkpKTsKIAotICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdpZHRoID0gbV9tYXhQcmVm
ZXJyZWRMb2dpY2FsV2lkdGggPSBwcmVmZXJyZWRXaWR0aDsKKyAgICBtX21heFByZWZlcnJlZExv
Z2ljYWxXaWR0aCA9IHByZWZlcnJlZFdpZHRoOworICAgIG1fbWluUHJlZmVycmVkTG9naWNhbFdp
ZHRoID0gcHJlZmVycmVkV2lkdGg7CiAKICAgICBhdXRvIHNpemVzID0gc2l6ZUFwcGxpZWRUb01h
dGhDb250ZW50KExheW91dFBoYXNlOjpDYWxjdWxhdGVQcmVmZXJyZWRMb2dpY2FsV2lkdGgpOwog
ICAgIGFwcGx5U2l6ZVRvTWF0aENvbnRlbnQoTGF5b3V0UGhhc2U6OkNhbGN1bGF0ZVByZWZlcnJl
ZExvZ2ljYWxXaWR0aCwgc2l6ZXMpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>