<?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>235470</bug_id>
          
          <creation_ts>2022-01-21 22:01:36 -0800</creation_ts>
          <short_desc>REGRESSION(r288400): broke ARM64E build</short_desc>
          <delta_ts>2022-01-21 22:05:19 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>234476</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>mikhail</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1832979</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2022-01-21 22:01:36 -0800</bug_when>
    <thetext>https://commits.webkit.org/r288400 introduced a regression:
broke ARM64E build

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832981</commentid>
    <comment_count>1</comment_count>
      <attachid>449723</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2022-01-21 22:01:47 -0800</bug_when>
    <thetext>Created attachment 449723
REVERT of r288400

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the revert will be successful.  This process takes approximately 15 minutes.

If you would like to land the revert faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832982</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-01-21 22:04:36 -0800</bug_when>
    <thetext>Committed r288401 (246292@main): &lt;https://commits.webkit.org/246292@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 449723.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1832984</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-01-21 22:05:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/87918351&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>449723</attachid>
            <date>2022-01-21 22:01:47 -0800</date>
            <delta_ts>2022-01-21 22:04:38 -0800</delta_ts>
            <desc>REVERT of r288400</desc>
            <filename>bug-235470-20220121220146.patch</filename>
            <type>text/plain</type>
            <size>28703</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4NDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
ZDI0OGI0ZjMzN2ZmMGEwMzg0OWE3YTA5ZWJjZGQ5MDAzYjAzNTVlLi5iYTE4YTgzYTYwMzg1Zjk5
YjNkOTNmODdlNzJiZDYzYjYxOTNjZTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAyMi0wMS0yMSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyODg0MDAuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzU0NzAKKworICAgICAg
ICBicm9rZSBBUk02NEUgYnVpbGQKKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAg
ICAgICAgIltKU0NdWzMyYml0XSBGaXggcmVnZXhwIGNyYXNoIG9uIEFSTXY3IgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NDc2CisgICAgICAgIGh0
dHBzOi8vY29tbWl0cy53ZWJraXQub3JnL3IyODg0MDAKKwogMjAyMi0wMS0yMSAgTWlraGFpbCBS
LiBHYWRlbGhhICA8bWlraGFpbEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdWzMyYml0XSBG
aXggcmVnZXhwIGNyYXNoIG9uIEFSTXY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvYm1hbGxvYy9DaGFu
Z2VMb2cgYi9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cKaW5kZXggMjM0MWRhMGI0YmI5OThmMTVl
MWMxY2U4MTQyYzU4MjYzNjRjODg4OC4uNThiNzNlNmZjMzU1MWYwNTlmNTY1NTdmODk4MWQ1MTBi
Yjk5MWVhYSAxMDA2NDQKLS0tIGEvU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9ibWFsbG9jL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIyLTAxLTIxICBDb21taXQg
UXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2VkLCBy
ZXZlcnRpbmcgcjI4ODQwMC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIzNTQ3MAorCisgICAgICAgIGJyb2tlIEFSTTY0RSBidWlsZAorCisgICAgICAg
IFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAiW0pTQ11bMzJiaXRdIEZpeCByZWdleHAg
Y3Jhc2ggb24gQVJNdjciCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzQ0NzYKKyAgICAgICAgaHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvcjI4ODQw
MAorCiAyMDIyLTAxLTIxICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAg
ICAgICAgW2xpYnBhc10gRm9sbG93LXVwIGFmdGVyIHIyODgzMzkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUNjQuY3BwCmluZGV4IDNiMTU2ZGYwZjIz
MmM5YWFkYzA1YTA4ZTgwMTg5ZmY5N2M4OWFhOGUuLjYyNmY2MTk1Y2Y2NzM2ODI3OTRiMWUzYmI5
YmMwOTQwYmRmOTZmMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
U3BlY3VsYXRpdmVKSVQ2NC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdT
cGVjdWxhdGl2ZUpJVDY0LmNwcApAQCAtMjg4OCw3ICsyODg4LDcgQEAgdm9pZCBTcGVjdWxhdGl2
ZUpJVDo6Y29tcGlsZVJlZ0V4cFRlc3RJbmxpbmUoTm9kZSogbm9kZSkKIHsKICAgICBVTlVTRURf
UEFSQU0obm9kZSk7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgY29tcGlsZVJlZ0V4
cFRlc3Qobm9kZSk7CisgICAgcmV0dXJuIGNvbXBpbGVSZWdFeHBUZXN0KG5vZGUpOwogfQogI2Vu
ZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvR1BSSW5mby5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKaW5kZXggNjBhNWJlZTE1YjgyMjA3
NjQ2NTEyMGRmNzRlOTQwOGQ3OGJjN2NkNy4uNTJhMTNhYWFmYjc3YjZlNDRmYTdlYjE5MmIwNjg0
M2MyY2NiOTIyNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZv
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKQEAgLTYyNiw3ICs2
MjYsNyBAQCBjbGFzcyBHUFJJbmZvIHsKIHB1YmxpYzoKICAgICB0eXBlZGVmIEdQUlJlZyBSZWdp
c3RlclR5cGU7CiAgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlJlZ2lzdGVy
cyA9IDE2OwotICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZBcmd1bWVudFJl
Z2lzdGVycyA9IE5VTUJFUl9PRl9BUkdVTUVOVF9SRUdJU1RFUlM7CisgICAgc3RhdGljIGNvbnN0
ZXhwciB1bnNpZ25lZCBudW1iZXJPZkFyZ3VtZW50UmVnaXN0ZXJzID0gODsKIAogICAgIC8vIFRo
ZXNlIHJlZ2lzdGVycyBtYXRjaCB0aGUgYmFzZWxpbmUgSklULgogICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIGNhbGxGcmFtZVJlZ2lzdGVyID0gQVJNNjRSZWdpc3RlcnM6OmZwOwpAQCAtODI1
LDcgKzgyNSw3IEBAIGNsYXNzIEdQUkluZm8gewogcHVibGljOgogICAgIHR5cGVkZWYgR1BSUmVn
IFJlZ2lzdGVyVHlwZTsKICAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mUmVn
aXN0ZXJzID0gMTM7Ci0gICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZkFyZ3Vt
ZW50UmVnaXN0ZXJzID0gTlVNQkVSX09GX0FSR1VNRU5UX1JFR0lTVEVSUzsKKyAgICBzdGF0aWMg
Y29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMgPSA4OwogCiAgICAg
c3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgY2FsbEZyYW1lUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmcDsKICAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBudW1iZXJUYWdSZWdpc3RlciA9
IFJJU0NWNjRSZWdpc3RlcnM6OngyNTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdF
eHAuY3BwCmluZGV4IDQ0OTA5ZDE2OTRiYzU1Yzc1YjI3N2NjNTE2MDAwMDI4NGI0YWQzMmYuLjFi
OGNkNDIwZjEwNzA5ZDFiZWIxYTQ1MGQxMzA0MGYzNzczMjY4NjMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwLmNwcApAQCAtNDQ4LDEwICs0NDgsMTAgQEAgdm9pZCBSZWdF
eHA6Om1hdGNoQ29tcGFyZVdpdGhJbnRlcnByZXRlcihjb25zdCBTdHJpbmcmIHMsIGludCBzdGFy
dE9mZnNldCwgaW50KgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgSklUQ29kZTog
ewogICAgICAgICAgICAgWWFycjo6WWFyckNvZGVCbG9jayYgY29kZUJsb2NrID0gKm1fcmVnRXhw
SklUQ29kZS5nZXQoKTsKLSAgICAgICAgICAgIHNucHJpbnRmKGppdDhCaXRNYXRjaE9ubHlBZGRy
LCBqaXRBZGRyU2l6ZSwgIjB4JTAxNCIgUFJJeFBUUiwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRy
X3Q+KGNvZGVCbG9jay5nZXQ4Qml0TWF0Y2hPbmx5QWRkcigpKSk7Ci0gICAgICAgICAgICBzbnBy
aW50ZihqaXQxNkJpdE1hdGNoT25seUFkZHIsIGppdEFkZHJTaXplLCAiMHglMDE0IiBQUkl4UFRS
LCByZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oY29kZUJsb2NrLmdldDE2Qml0TWF0Y2hPbmx5
QWRkcigpKSk7Ci0gICAgICAgICAgICBzbnByaW50ZihqaXQ4Qml0TWF0Y2hBZGRyLCBqaXRBZGRy
U2l6ZSwgIjB4JTAxNCIgUFJJeFBUUiwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGNvZGVC
bG9jay5nZXQ4Qml0TWF0Y2hBZGRyKCkpKTsKLSAgICAgICAgICAgIHNucHJpbnRmKGppdDE2Qml0
TWF0Y2hBZGRyLCBqaXRBZGRyU2l6ZSwgIjB4JTAxNCIgUFJJeFBUUiwgcmVpbnRlcnByZXRfY2Fz
dDx1aW50cHRyX3Q+KGNvZGVCbG9jay5nZXQxNkJpdE1hdGNoQWRkcigpKSk7CisgICAgICAgICAg
ICBzbnByaW50ZihqaXQ4Qml0TWF0Y2hPbmx5QWRkciwgaml0QWRkclNpemUsICIweCUwMTRseCIs
IHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90Pihjb2RlQmxvY2suZ2V0OEJpdE1hdGNoT25seUFk
ZHIoKSkpOworICAgICAgICAgICAgc25wcmludGYoaml0MTZCaXRNYXRjaE9ubHlBZGRyLCBqaXRB
ZGRyU2l6ZSwgIjB4JTAxNGx4IiwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGNvZGVCbG9j
ay5nZXQxNkJpdE1hdGNoT25seUFkZHIoKSkpOworICAgICAgICAgICAgc25wcmludGYoaml0OEJp
dE1hdGNoQWRkciwgaml0QWRkclNpemUsICIweCUwMTRseCIsIHJlaW50ZXJwcmV0X2Nhc3Q8dWlu
dHB0cl90Pihjb2RlQmxvY2suZ2V0OEJpdE1hdGNoQWRkcigpKSk7CisgICAgICAgICAgICBzbnBy
aW50ZihqaXQxNkJpdE1hdGNoQWRkciwgaml0QWRkclNpemUsICIweCUwMTRseCIsIHJlaW50ZXJw
cmV0X2Nhc3Q8dWludHB0cl90Pihjb2RlQmxvY2suZ2V0MTZCaXRNYXRjaEFkZHIoKSkpOwogICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwSW5saW5lcy5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwSW5saW5lcy5oCmluZGV4IDljNjU1ZjQ2YWIwMDE2MjNkOGUz
NDJmZWMwZTNkNjg4N2ViNWY4ZDIuLjAyMmNiYmE1NTU3ZTcxNzhkMTRkNGI2NjFlZGNkNjg1YTRm
Nzg3ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cElu
bGluZXMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBJbmxpbmVz
LmgKQEAgLTEzMiwxMiArMTMyLDEyIEBAIEFMV0FZU19JTkxJTkUgaW50IFJlZ0V4cDo6bWF0Y2hJ
bmxpbmUoSlNHbG9iYWxPYmplY3QqIG51bGxPckdsb2JhbE9iamVjdCwgVk0mIHZtCiAgICAgaWYg
KG1fc3RhdGUgPT0gSklUQ29kZSkgewogICAgICAgICB7CiAgICAgICAgICAgICBBU1NFUlQobV9y
ZWdFeHBKSVRDb2RlKTsKLSAgICAgICAgICAgIFlhcnI6Ok1hdGNoaW5nQ29udGV4dEhvbGRlciBy
ZWdFeHBDb250ZXh0KHZtLCBtX3JlZ0V4cEpJVENvZGUtPnVzZXNQYXR0ZXJuQ29udGV4dEJ1ZmZl
cigpLCB0aGlzLCBtYXRjaEZyb20pOworICAgICAgICAgICAgWWFycjo6TWF0Y2hpbmdDb250ZXh0
SG9sZGVyIHJlZ0V4cENvbnRleHQodm0sIG1fcmVnRXhwSklUQ29kZS5nZXQoKSwgdGhpcywgbWF0
Y2hGcm9tKTsKIAogICAgICAgICAgICAgaWYgKHMuaXM4Qml0KCkpCi0gICAgICAgICAgICAgICAg
cmVzdWx0ID0gbV9yZWdFeHBKSVRDb2RlLT5leGVjdXRlKHMuY2hhcmFjdGVyczgoKSwgc3RhcnRP
ZmZzZXQsIHMubGVuZ3RoKCksIG9mZnNldFZlY3RvciwgJnJlZ0V4cENvbnRleHQpLnN0YXJ0Owor
ICAgICAgICAgICAgICAgIHJlc3VsdCA9IG1fcmVnRXhwSklUQ29kZS0+ZXhlY3V0ZShzLmNoYXJh
Y3RlcnM4KCksIHN0YXJ0T2Zmc2V0LCBzLmxlbmd0aCgpLCBvZmZzZXRWZWN0b3IsIHJlZ0V4cENv
bnRleHQpLnN0YXJ0OwogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJlc3VsdCA9
IG1fcmVnRXhwSklUQ29kZS0+ZXhlY3V0ZShzLmNoYXJhY3RlcnMxNigpLCBzdGFydE9mZnNldCwg
cy5sZW5ndGgoKSwgb2Zmc2V0VmVjdG9yLCAmcmVnRXhwQ29udGV4dCkuc3RhcnQ7CisgICAgICAg
ICAgICAgICAgcmVzdWx0ID0gbV9yZWdFeHBKSVRDb2RlLT5leGVjdXRlKHMuY2hhcmFjdGVyczE2
KCksIHN0YXJ0T2Zmc2V0LCBzLmxlbmd0aCgpLCBvZmZzZXRWZWN0b3IsIHJlZ0V4cENvbnRleHQp
LnN0YXJ0OwogICAgICAgICB9CiAKICAgICAgICAgaWYgKHJlc3VsdCA9PSBzdGF0aWNfY2FzdDxp
bnQ+KFlhcnI6OkpTUmVnRXhwUmVzdWx0OjpKSVRDb2RlRmFpbHVyZSkpIHsKQEAgLTE0Niw4ICsx
NDYsNyBAQCBBTFdBWVNfSU5MSU5FIGludCBSZWdFeHA6Om1hdGNoSW5saW5lKEpTR2xvYmFsT2Jq
ZWN0KiBudWxsT3JHbG9iYWxPYmplY3QsIFZNJiB2bQogICAgICAgICAgICAgaWYgKG1fc3RhdGUg
PT0gUGFyc2VFcnJvcikKICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigpOwogICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIGNvbnN0ZXhwciBib29sIHVzZXNQYXR0ZXJuQ29u
dGV4dEJ1ZmZlciA9IGZhbHNlOwotICAgICAgICAgICAgICAgIFlhcnI6Ok1hdGNoaW5nQ29udGV4
dEhvbGRlciByZWdFeHBDb250ZXh0KHZtLCB1c2VzUGF0dGVybkNvbnRleHRCdWZmZXIsIHRoaXMs
IG1hdGNoRnJvbSk7CisgICAgICAgICAgICAgICAgWWFycjo6TWF0Y2hpbmdDb250ZXh0SG9sZGVy
IHJlZ0V4cENvbnRleHQodm0sIG51bGxwdHIsIHRoaXMsIG1hdGNoRnJvbSk7CiAgICAgICAgICAg
ICAgICAgcmVzdWx0ID0gWWFycjo6aW50ZXJwcmV0KG1fcmVnRXhwQnl0ZWNvZGUuZ2V0KCksIHMs
IHN0YXJ0T2Zmc2V0LCByZWludGVycHJldF9jYXN0PHVuc2lnbmVkKj4ob2Zmc2V0VmVjdG9yKSk7
CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTE2Myw4ICsxNjIsNyBAQCBBTFdBWVNfSU5M
SU5FIGludCBSZWdFeHA6Om1hdGNoSW5saW5lKEpTR2xvYmFsT2JqZWN0KiBudWxsT3JHbG9iYWxP
YmplY3QsIFZNJiB2bQogICAgIH0gZWxzZQogI2VuZGlmCiAgICAgewotICAgICAgICBjb25zdGV4
cHIgYm9vbCB1c2VzUGF0dGVybkNvbnRleHRCdWZmZXIgPSBmYWxzZTsKLSAgICAgICAgWWFycjo6
TWF0Y2hpbmdDb250ZXh0SG9sZGVyIHJlZ0V4cENvbnRleHQodm0sIHVzZXNQYXR0ZXJuQ29udGV4
dEJ1ZmZlciwgdGhpcywgbWF0Y2hGcm9tKTsKKyAgICAgICAgWWFycjo6TWF0Y2hpbmdDb250ZXh0
SG9sZGVyIHJlZ0V4cENvbnRleHQodm0sIG51bGxwdHIsIHRoaXMsIG1hdGNoRnJvbSk7CiAgICAg
ICAgIHJlc3VsdCA9IFlhcnI6OmludGVycHJldChtX3JlZ0V4cEJ5dGVjb2RlLmdldCgpLCBzLCBz
dGFydE9mZnNldCwgcmVpbnRlcnByZXRfY2FzdDx1bnNpZ25lZCo+KG9mZnNldFZlY3RvcikpOwog
ICAgIH0KIApAQCAtMjY4LDEyICsyNjYsMTIgQEAgQUxXQVlTX0lOTElORSBNYXRjaFJlc3VsdCBS
ZWdFeHA6Om1hdGNoSW5saW5lKEpTR2xvYmFsT2JqZWN0KiBudWxsT3JHbG9iYWxPYmplY3QKICAg
ICAgICAgTWF0Y2hSZXN1bHQgcmVzdWx0OwogICAgICAgICB7CiAgICAgICAgICAgICBBU1NFUlQo
bV9yZWdFeHBKSVRDb2RlKTsKLSAgICAgICAgICAgIFlhcnI6Ok1hdGNoaW5nQ29udGV4dEhvbGRl
ciByZWdFeHBDb250ZXh0KHZtLCBtX3JlZ0V4cEpJVENvZGUtPnVzZXNQYXR0ZXJuQ29udGV4dEJ1
ZmZlcigpLCB0aGlzLCBtYXRjaEZyb20pOworICAgICAgICAgICAgWWFycjo6TWF0Y2hpbmdDb250
ZXh0SG9sZGVyIHJlZ0V4cENvbnRleHQodm0sIG1fcmVnRXhwSklUQ29kZS5nZXQoKSwgdGhpcywg
bWF0Y2hGcm9tKTsKIAogICAgICAgICAgICAgaWYgKHMuaXM4Qml0KCkpCi0gICAgICAgICAgICAg
ICAgcmVzdWx0ID0gbV9yZWdFeHBKSVRDb2RlLT5leGVjdXRlKHMuY2hhcmFjdGVyczgoKSwgc3Rh
cnRPZmZzZXQsIHMubGVuZ3RoKCksICZyZWdFeHBDb250ZXh0KTsKKyAgICAgICAgICAgICAgICBy
ZXN1bHQgPSBtX3JlZ0V4cEpJVENvZGUtPmV4ZWN1dGUocy5jaGFyYWN0ZXJzOCgpLCBzdGFydE9m
ZnNldCwgcy5sZW5ndGgoKSwgcmVnRXhwQ29udGV4dCk7CiAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgcmVzdWx0ID0gbV9yZWdFeHBKSVRDb2RlLT5leGVjdXRlKHMuY2hhcmFjdGVy
czE2KCksIHN0YXJ0T2Zmc2V0LCBzLmxlbmd0aCgpLCAmcmVnRXhwQ29udGV4dCk7CisgICAgICAg
ICAgICAgICAgcmVzdWx0ID0gbV9yZWdFeHBKSVRDb2RlLT5leGVjdXRlKHMuY2hhcmFjdGVyczE2
KCksIHN0YXJ0T2Zmc2V0LCBzLmxlbmd0aCgpLCByZWdFeHBDb250ZXh0KTsKICAgICAgICAgfQog
CiAjaWYgRU5BQkxFKFJFR0VYUF9UUkFDSU5HKQpAQCAtMjk3LDggKzI5NSw3IEBAIEFMV0FZU19J
TkxJTkUgTWF0Y2hSZXN1bHQgUmVnRXhwOjptYXRjaElubGluZShKU0dsb2JhbE9iamVjdCogbnVs
bE9yR2xvYmFsT2JqZWN0CiAgICAgbm9uUmV0dXJuZWRPdmVjdG9yLmdyb3cob2Zmc2V0VmVjdG9y
U2l6ZSk7CiAgICAgb2Zmc2V0VmVjdG9yID0gbm9uUmV0dXJuZWRPdmVjdG9yLmRhdGEoKTsKICAg
ICB7Ci0gICAgICAgIGNvbnN0ZXhwciBib29sIHVzZXNQYXR0ZXJuQ29udGV4dEJ1ZmZlciA9IGZh
bHNlOwotICAgICAgICBZYXJyOjpNYXRjaGluZ0NvbnRleHRIb2xkZXIgcmVnRXhwQ29udGV4dCh2
bSwgdXNlc1BhdHRlcm5Db250ZXh0QnVmZmVyLCB0aGlzLCBtYXRjaEZyb20pOworICAgICAgICBZ
YXJyOjpNYXRjaGluZ0NvbnRleHRIb2xkZXIgcmVnRXhwQ29udGV4dCh2bSwgbnVsbHB0ciwgdGhp
cywgbWF0Y2hGcm9tKTsKICAgICAgICAgcmVzdWx0ID0gWWFycjo6aW50ZXJwcmV0KG1fcmVnRXhw
Qnl0ZWNvZGUuZ2V0KCksIHMsIHN0YXJ0T2Zmc2V0LCByZWludGVycHJldF9jYXN0PHVuc2lnbmVk
Kj4ob2Zmc2V0VmVjdG9yKSk7CiAgICAgfQogI2lmIFJFR0VYUF9GVU5DX1RFU1RfREFUQV9HRU4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJKSVQuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckpJVC5jcHAKaW5kZXggMzdhYWNhMThlOWM2ODA3
NDY1NTFhYTVjZmY1MzE1OGFhMGQ4OTM5MS4uNTFmZjRhNzFkOTY5NjViMzgxYzhkNmFiNmVhN2Jk
ZjQ4NDQ5MjFkYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckpJ
VC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyckpJVC5jcHAKQEAgLTI3
LDcgKzI3LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJZYXJySklULmgiCiAK
LSNpbmNsdWRlICJDQ2FsbEhlbHBlcnMuaCIKICNpbmNsdWRlICJMaW5rQnVmZmVyLmgiCiAjaW5j
bHVkZSAiT3B0aW9ucy5oIgogI2luY2x1ZGUgIlZNLmgiCkBAIC0xODcsNiArMTg2LDEwIEBAIHN0
ZDo6dHVwbGU8Qm95ZXJNb29yZUJpdG1hcDo6TWFwLCBCb3llck1vb3JlRmFzdENhbmRpZGF0ZXM+
IEJveWVyTW9vcmVJbmZvOjpjcmVhCiB0ZW1wbGF0ZTxjbGFzcyBZYXJySklUUmVncyA9IFlhcnJK
SVREZWZhdWx0UmVnaXN0ZXJzPgogY2xhc3MgWWFyckdlbmVyYXRvciBmaW5hbCA6IHB1YmxpYyBZ
YXJySklUSW5mbyB7CiAKKyNpZmRlZiAgSklUX1VOSUNPREVfRVhQUkVTU0lPTlMKKyAgICBjb25z
dCBNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyIHN1cnJvZ2F0ZVRhZ01hc2sgPSBNYWNyb0Fz
c2VtYmxlcjo6VHJ1c3RlZEltbTMyKDB4ZmZmZmZjMDApOworI2VuZGlmCisKICNpZiBFTkFCTEUo
WUFSUl9KSVRfQUxMX1BBUkVOU19FWFBSRVNTSU9OUykKICAgICBzdHJ1Y3QgUGFyZW5Db250ZXh0
U2l6ZXMgewogICAgICAgICBzaXplX3QgbV9udW1TdWJwYXR0ZXJuczsKQEAgLTYwMCw3ICs2MDMs
NyBAQCBjbGFzcyBZYXJyR2VuZXJhdG9yIGZpbmFsIDogcHVibGljIFlhcnJKSVRJbmZvIHsKICAg
ICAgICAgbV9qaXQubG9hZDE2VW5hbGlnbmVkKE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNzKG1fcmVn
cy5yZWdVbmljb2RlSW5wdXRBbmRUcmFpbCksIHJlc3VsdFJlZyk7CiAKICAgICAgICAgLy8gSXMg
dGhlIGNoYXJhY3RlciBhIGxlYWRpbmcgc3Vycm9nYXRlPwotICAgICAgICBtX2ppdC5hbmQzMiht
X3JlZ3Muc3Vycm9nYXRlVGFnTWFzaywgcmVzdWx0UmVnLCBtX3JlZ3MudW5pY29kZVRlbXApOwor
ICAgICAgICBtX2ppdC5hbmQzMihZYXJySklURGVmYXVsdFJlZ2lzdGVyczo6c3Vycm9nYXRlVGFn
TWFzaywgcmVzdWx0UmVnLCBtX3JlZ3MudW5pY29kZVRlbXApOwogICAgICAgICBub3RVbmljb2Rl
LmFwcGVuZChtX2ppdC5icmFuY2gzMihNYWNyb0Fzc2VtYmxlcjo6Tm90RXF1YWwsIG1fcmVncy51
bmljb2RlVGVtcCwgbV9yZWdzLmxlYWRpbmdTdXJyb2dhdGVUYWcpKTsKIAogICAgICAgICAvLyBJ
cyB0aGUgaW5wdXQgbG9uZyBlbm91Z2ggdG8gcmVhZCBhIHRyYWlsaW5nIHN1cnJvZ2F0ZT8KQEAg
LTYwOSw3ICs2MTIsNyBAQCBjbGFzcyBZYXJyR2VuZXJhdG9yIGZpbmFsIDogcHVibGljIFlhcnJK
SVRJbmZvIHsKIAogICAgICAgICAvLyBJcyB0aGUgY2hhcmFjdGVyIGEgdHJhaWxpbmcgc3Vycm9n
YXRlPwogICAgICAgICBtX2ppdC5sb2FkMTZVbmFsaWduZWQoTWFjcm9Bc3NlbWJsZXI6OkFkZHJl
c3MobV9yZWdzLnJlZ1VuaWNvZGVJbnB1dEFuZFRyYWlsKSwgbV9yZWdzLnJlZ1VuaWNvZGVJbnB1
dEFuZFRyYWlsKTsKLSAgICAgICAgbV9qaXQuYW5kMzIobV9yZWdzLnN1cnJvZ2F0ZVRhZ01hc2ss
IG1fcmVncy5yZWdVbmljb2RlSW5wdXRBbmRUcmFpbCwgbV9yZWdzLnVuaWNvZGVUZW1wKTsKKyAg
ICAgICAgbV9qaXQuYW5kMzIoWWFyckpJVERlZmF1bHRSZWdpc3RlcnM6OnN1cnJvZ2F0ZVRhZ01h
c2ssIG1fcmVncy5yZWdVbmljb2RlSW5wdXRBbmRUcmFpbCwgbV9yZWdzLnVuaWNvZGVUZW1wKTsK
ICAgICAgICAgbm90VW5pY29kZS5hcHBlbmQobV9qaXQuYnJhbmNoMzIoTWFjcm9Bc3NlbWJsZXI6
Ok5vdEVxdWFsLCBtX3JlZ3MudW5pY29kZVRlbXAsIG1fcmVncy50cmFpbGluZ1N1cnJvZ2F0ZVRh
ZykpOwogCiAgICAgICAgIC8vIENvbWJpbmUgbGVhZGluZyBhbmQgdHJhaWxpbmcgc3Vycm9nYXRl
cyB0byBwcm9kdWNlIGEgY29kZSBwb2ludC4KQEAgLTM5NTgsNzEgKzM5NjEsNTcgQEAgY2xhc3Mg
WWFyckdlbmVyYXRvciBmaW5hbCA6IHB1YmxpYyBZYXJySklUSW5mbyB7CiAKICAgICB2b2lkIGdl
bmVyYXRlRW50ZXIoKQogICAgIHsKLSAgICAgICAgYXV0byBwdXNoSW5FbnRlciA9IFsmXShHUFJS
ZWcgZ3ByKSB7Ci0gICAgICAgICAgICBtX2ppdC5wdXNoKGdwcik7Ci0gICAgICAgICAgICBtX3B1
c2hDb3VudEluRW50ZXIgKz0gMTsKLSAgICAgICAgfTsKLQotICAgICAgICBhdXRvIHB1c2hQYWly
SW5FbnRlciA9IFsmXShHUFJSZWcgZ3ByMSwgR1BSUmVnIGdwcjIpIHsKLSAgICAgICAgICAgIG1f
aml0LnB1c2hQYWlyKGdwcjEsIGdwcjIpOwotICAgICAgICAgICAgbV9wdXNoQ291bnRJbkVudGVy
ICs9IDI7Ci0gICAgICAgIH07Ci0KICNpZiBDUFUoWDg2XzY0KQotICAgICAgICBVTlVTRURfVkFS
SUFCTEUocHVzaFBhaXJJbkVudGVyKTsKLSAgICAgICAgbV9qaXQuZW1pdEZ1bmN0aW9uUHJvbG9n
dWUoKTsKKyAgICAgICAgbV9qaXQucHVzaChYODZSZWdpc3RlcnM6OmVicCk7CisgICAgICAgIG1f
aml0Lm1vdmUoTWFjcm9Bc3NlbWJsZXI6OnN0YWNrUG9pbnRlclJlZ2lzdGVyLCBYODZSZWdpc3Rl
cnM6OmVicCk7CiAKICAgICAgICAgaWYgKG1fcGF0dGVybi5tX3NhdmVJbml0aWFsU3RhcnRWYWx1
ZSkKLSAgICAgICAgICAgIHB1c2hJbkVudGVyKFg4NlJlZ2lzdGVyczo6ZWJ4KTsKKyAgICAgICAg
ICAgIG1faml0LnB1c2goWDg2UmVnaXN0ZXJzOjplYngpOwogCiAjaWYgT1MoV0lORE9XUykKLSAg
ICAgICAgcHVzaEluRW50ZXIoWDg2UmVnaXN0ZXJzOjplZGkpOworICAgICAgICBtX2ppdC5wdXNo
KFg4NlJlZ2lzdGVyczo6ZWRpKTsKICNlbmRpZgogI2lmIEVOQUJMRShZQVJSX0pJVF9BTExfUEFS
RU5TX0VYUFJFU1NJT05TKQogICAgICAgICBpZiAobV9jb250YWluc05lc3RlZFN1YnBhdHRlcm5z
KSB7CiAjaWYgT1MoV0lORE9XUykKLSAgICAgICAgICAgIHB1c2hJbkVudGVyKFg4NlJlZ2lzdGVy
czo6ZXNpKTsKKyAgICAgICAgICAgIG1faml0LnB1c2goWDg2UmVnaXN0ZXJzOjplc2kpOwogI2Vu
ZGlmCi0gICAgICAgICAgICBwdXNoSW5FbnRlcihYODZSZWdpc3RlcnM6OnIxMik7CisgICAgICAg
ICAgICBtX2ppdC5wdXNoKFg4NlJlZ2lzdGVyczo6cjEyKTsKICAgICAgICAgfQogI2VuZGlmCiAK
ICAgICAgICAgaWYgKG1fZGVjb2RlU3Vycm9nYXRlUGFpcnMpIHsKLSAgICAgICAgICAgIHB1c2hJ
bkVudGVyKFg4NlJlZ2lzdGVyczo6cjEzKTsKLSAgICAgICAgICAgIHB1c2hJbkVudGVyKFg4NlJl
Z2lzdGVyczo6cjE0KTsKLSAgICAgICAgICAgIHB1c2hJbkVudGVyKFg4NlJlZ2lzdGVyczo6cjE1
KTsKKyAgICAgICAgICAgIG1faml0LnB1c2goWDg2UmVnaXN0ZXJzOjpyMTMpOworICAgICAgICAg
ICAgbV9qaXQucHVzaChYODZSZWdpc3RlcnM6OnIxNCk7CisgICAgICAgICAgICBtX2ppdC5wdXNo
KFg4NlJlZ2lzdGVyczo6cjE1KTsKICAgICAgICAgfQogI2lmIE9TKFdJTkRPV1MpCiAgICAgICAg
IGlmIChtX2NvbXBpbGVNb2RlID09IEpJVENvbXBpbGVNb2RlOjpJbmNsdWRlU3VicGF0dGVybnMp
Ci0gICAgICAgICAgICBtX2ppdC5sb2FkUHRyKE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNzKE1hY3Jv
QXNzZW1ibGVyOjpmcmFtZVBvaW50ZXJSZWdpc3RlciwgNiAqIHNpemVvZih2b2lkKikpLCBtX3Jl
Z3Mub3V0cHV0KTsKKyAgICAgICAgICAgIG1faml0LmxvYWRQdHIoTWFjcm9Bc3NlbWJsZXI6OkFk
ZHJlc3MoWDg2UmVnaXN0ZXJzOjplYnAsIDYgKiBzaXplb2Yodm9pZCopKSwgbV9yZWdzLm91dHB1
dCk7CiAgICAgICAgIC8vIHJjeCBpcyB0aGUgcG9pbnRlciB0byB0aGUgYWxsb2NhdGVkIHNwYWNl
IGZvciByZXN1bHQgaW4geDY0IFdpbmRvd3MuCi0gICAgICAgIHB1c2hJbkVudGVyKFg4NlJlZ2lz
dGVyczo6ZWN4KTsKKyAgICAgICAgbV9qaXQucHVzaChYODZSZWdpc3RlcnM6OmVjeCk7CiAjZW5k
aWYKICNlbGlmIENQVShBUk02NCkKLSAgICAgICAgVU5VU0VEX1ZBUklBQkxFKHB1c2hJbkVudGVy
KTsKICAgICAgICAgaWYgKCFPcHRpb25zOjp1c2VKSVRDYWdlKCkpCiAgICAgICAgICAgICBtX2pp
dC50YWdSZXR1cm5BZGRyZXNzKCk7CiAgICAgICAgIGlmIChtX2RlY29kZVN1cnJvZ2F0ZVBhaXJz
KSB7CiAgICAgICAgICAgICBpZiAoIU9wdGlvbnM6OnVzZUpJVENhZ2UoKSkKLSAgICAgICAgICAg
ICAgICBwdXNoUGFpckluRW50ZXIoTWFjcm9Bc3NlbWJsZXI6OmZyYW1lUG9pbnRlclJlZ2lzdGVy
LCBNYWNyb0Fzc2VtYmxlcjo6bGlua1JlZ2lzdGVyKTsKKyAgICAgICAgICAgICAgICBtX2ppdC5w
dXNoUGFpcihNYWNyb0Fzc2VtYmxlcjo6ZnJhbWVQb2ludGVyUmVnaXN0ZXIsIE1hY3JvQXNzZW1i
bGVyOjpsaW5rUmVnaXN0ZXIpOwogICAgICAgICAgICAgbV9qaXQubW92ZShNYWNyb0Fzc2VtYmxl
cjo6VHJ1c3RlZEltbTMyKDB4MTAwMDApLCBtX3JlZ3Muc3VwcGxlbWVudGFyeVBsYW5lc0Jhc2Up
OwogICAgICAgICAgICAgbV9qaXQubW92ZShNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyKDB4
ZDgwMCksIG1fcmVncy5sZWFkaW5nU3Vycm9nYXRlVGFnKTsKICAgICAgICAgICAgIG1faml0Lm1v
dmUoTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0zMigweGRjMDApLCBtX3JlZ3MudHJhaWxpbmdT
dXJyb2dhdGVUYWcpOwogICAgICAgICB9CiAjZWxpZiBDUFUoQVJNX1RIVU1CMikKLSAgICAgICAg
VU5VU0VEX1ZBUklBQkxFKHB1c2hQYWlySW5FbnRlcik7Ci0gICAgICAgIHB1c2hJbkVudGVyKEFS
TVJlZ2lzdGVyczo6cjQpOwotICAgICAgICBwdXNoSW5FbnRlcihBUk1SZWdpc3RlcnM6OnI1KTsK
LSAgICAgICAgcHVzaEluRW50ZXIoQVJNUmVnaXN0ZXJzOjpyNik7Ci0gICAgICAgIHB1c2hJbkVu
dGVyKEFSTVJlZ2lzdGVyczo6cjgpOwotICAgICAgICBwdXNoSW5FbnRlcihBUk1SZWdpc3RlcnM6
OnIxMCk7CisgICAgICAgIG1faml0LnB1c2goQVJNUmVnaXN0ZXJzOjpyNCk7CisgICAgICAgIG1f
aml0LnB1c2goQVJNUmVnaXN0ZXJzOjpyNSk7CisgICAgICAgIG1faml0LnB1c2goQVJNUmVnaXN0
ZXJzOjpyNik7CisgICAgICAgIG1faml0LnB1c2goQVJNUmVnaXN0ZXJzOjpyOCk7CisgICAgICAg
IG1faml0LnB1c2goQVJNUmVnaXN0ZXJzOjpyMTApOwogI2VsaWYgQ1BVKFJJU0NWNjQpCi0gICAg
ICAgIFVOVVNFRF9WQVJJQUJMRShwdXNoSW5FbnRlcik7CiAgICAgICAgIGlmIChtX2RlY29kZVN1
cnJvZ2F0ZVBhaXJzKQotICAgICAgICAgICAgcHVzaFBhaXJJbkVudGVyKE1hY3JvQXNzZW1ibGVy
OjpmcmFtZVBvaW50ZXJSZWdpc3RlciwgTWFjcm9Bc3NlbWJsZXI6OmxpbmtSZWdpc3Rlcik7Ci0j
ZWxzZQotICAgICAgICBVTlVTRURfVkFSSUFCTEUocHVzaEluRW50ZXIpOwotICAgICAgICBVTlVT
RURfVkFSSUFCTEUocHVzaFBhaXJJbkVudGVyKTsKKyAgICAgICAgICAgIG1faml0LnB1c2hQYWly
KE1hY3JvQXNzZW1ibGVyOjpmcmFtZVBvaW50ZXJSZWdpc3RlciwgTWFjcm9Bc3NlbWJsZXI6Omxp
bmtSZWdpc3Rlcik7CisjZWxpZiBDUFUoTUlQUykKKyAgICAgICAgLy8gRG8gbm90aGluZy4KICNl
bmRpZgogICAgIH0KIApAQCAtNDA2Myw3ICs0MDUyLDcgQEAgY2xhc3MgWWFyckdlbmVyYXRvciBm
aW5hbCA6IHB1YmxpYyBZYXJySklUSW5mbyB7CiAKICAgICAgICAgaWYgKG1fcGF0dGVybi5tX3Nh
dmVJbml0aWFsU3RhcnRWYWx1ZSkKICAgICAgICAgICAgIG1faml0LnBvcChYODZSZWdpc3RlcnM6
OmVieCk7Ci0gICAgICAgIG1faml0LmVtaXRGdW5jdGlvbkVwaWxvZ3VlKCk7CisgICAgICAgIG1f
aml0LnBvcChYODZSZWdpc3RlcnM6OmVicCk7CiAjZWxpZiBDUFUoQVJNNjQpCiAgICAgICAgIGlm
IChtX2RlY29kZVN1cnJvZ2F0ZVBhaXJzKSB7CiAgICAgICAgICAgICBpZiAoIU9wdGlvbnM6OnVz
ZUpJVENhZ2UoKSkKQEAgLTQwNzgsOCArNDA2Nyw5IEBAIGNsYXNzIFlhcnJHZW5lcmF0b3IgZmlu
YWwgOiBwdWJsaWMgWWFyckpJVEluZm8gewogI2VsaWYgQ1BVKFJJU0NWNjQpCiAgICAgICAgIGlm
IChtX2RlY29kZVN1cnJvZ2F0ZVBhaXJzKQogICAgICAgICAgICAgbV9qaXQucG9wUGFpcihNYWNy
b0Fzc2VtYmxlcjo6ZnJhbWVQb2ludGVyUmVnaXN0ZXIsIE1hY3JvQXNzZW1ibGVyOjpsaW5rUmVn
aXN0ZXIpOworI2VsaWYgQ1BVKE1JUFMpCisgICAgICAgIC8vIERvIG5vdGhpbmcKICNlbmRpZgot
CiAjaWYgQ1BVKEFSTTY0RSkKICAgICAgICAgaWYgKE9wdGlvbnM6OnVzZUpJVENhZ2UoKSkKICAg
ICAgICAgICAgIG1faml0LmZhckp1bXAoTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW1QdHIocmV0
YWdDb2RlUHRyPHZvaWQqLCBDRnVuY3Rpb25QdHJUYWcsIE9wZXJhdGlvblB0clRhZz4oJnZtRW50
cnlUb1lhcnJKSVRBZnRlcikpLCBPcGVyYXRpb25QdHJUYWcpOwpAQCAtNDA5Niw3ICs0MDg2LDcg
QEAgY2xhc3MgWWFyckdlbmVyYXRvciBmaW5hbCA6IHB1YmxpYyBZYXJySklUSW5mbyB7CiAgICAg
fQogCiBwdWJsaWM6Ci0gICAgWWFyckdlbmVyYXRvcihDQ2FsbEhlbHBlcnMmIGppdCwgY29uc3Qg
Vk0qIHZtLCBZYXJyQ29kZUJsb2NrKiBjb2RlQmxvY2ssIGNvbnN0IFlhcnJKSVRSZWdzJiByZWdz
LCBZYXJyUGF0dGVybiYgcGF0dGVybiwgY29uc3QgU3RyaW5nJiBwYXR0ZXJuU3RyaW5nLCBDaGFy
U2l6ZSBjaGFyU2l6ZSwgSklUQ29tcGlsZU1vZGUgY29tcGlsZU1vZGUpCisgICAgWWFyckdlbmVy
YXRvcihNYWNyb0Fzc2VtYmxlciYgaml0LCBjb25zdCBWTSogdm0sIFlhcnJDb2RlQmxvY2sqIGNv
ZGVCbG9jaywgY29uc3QgWWFyckpJVFJlZ3MmIHJlZ3MsIFlhcnJQYXR0ZXJuJiBwYXR0ZXJuLCBj
b25zdCBTdHJpbmcmIHBhdHRlcm5TdHJpbmcsIENoYXJTaXplIGNoYXJTaXplLCBKSVRDb21waWxl
TW9kZSBjb21waWxlTW9kZSkKICAgICAgICAgOiBtX2ppdChqaXQpCiAgICAgICAgICwgbV92bSh2
bSkKICAgICAgICAgLCBtX2NvZGVCbG9jayhjb2RlQmxvY2spCkBAIC00MTE1LDcgKzQxMDUsNyBA
QCBwdWJsaWM6CiAgICAgICAgIG1fYm95ZXJNb29yZURhdGEgPSBzdGF0aWNfY2FzdDxZYXJyQm95
ZXJNb3llckRhdGEqPihtX2NvZGVCbG9jayk7CiAgICAgfQogCi0gICAgWWFyckdlbmVyYXRvcihD
Q2FsbEhlbHBlcnMmIGppdCwgY29uc3QgVk0qIHZtLCBZYXJyQm95ZXJNb3llckRhdGEqIHlhcnJC
TURhdGEsIGNvbnN0IFlhcnJKSVRSZWdzJiByZWdzLCBZYXJyUGF0dGVybiYgcGF0dGVybiwgY29u
c3QgU3RyaW5nJiBwYXR0ZXJuU3RyaW5nLCBDaGFyU2l6ZSBjaGFyU2l6ZSwgSklUQ29tcGlsZU1v
ZGUgY29tcGlsZU1vZGUpCisgICAgWWFyckdlbmVyYXRvcihNYWNyb0Fzc2VtYmxlciYgaml0LCBj
b25zdCBWTSogdm0sIFlhcnJCb3llck1veWVyRGF0YSogeWFyckJNRGF0YSwgY29uc3QgWWFyckpJ
VFJlZ3MmIHJlZ3MsIFlhcnJQYXR0ZXJuJiBwYXR0ZXJuLCBjb25zdCBTdHJpbmcmIHBhdHRlcm5T
dHJpbmcsIENoYXJTaXplIGNoYXJTaXplLCBKSVRDb21waWxlTW9kZSBjb21waWxlTW9kZSkKICAg
ICAgICAgOiBtX2ppdChqaXQpCiAgICAgICAgICwgbV92bSh2bSkKICAgICAgICAgLCBtX2NvZGVC
bG9jayhudWxscHRyKQpAQCAtNDE0OSwxMyArNDEzOSw2IEBAIHB1YmxpYzoKICAgICAgICAgbV9j
b21waWxhdGlvblRocmVhZFN0YWNrQ2hlY2tlciA9IHN0YWNrQ2hlY2tlcjsKICAgICB9CiAKLSAg
ICB0ZW1wbGF0ZTx0eXBlbmFtZSBPcGVyYXRpb25UeXBlPgotICAgIHN0YXRpYyBjb25zdGV4cHIg
dm9pZCBmdW5jdGlvbkNoZWNrcygpCi0gICAgewotICAgICAgICBzdGF0aWNfYXNzZXJ0KEZ1bmN0
aW9uVHJhaXRzPE9wZXJhdGlvblR5cGU+OjpjQ2FsbEFyaXR5KCkgPT0gNSwgIllhcnJKSVRDb2Rl
IHRha2VzIDUgYXJndW1lbnRzIik7Ci0gICAgICAgIHN0YXRpY19hc3NlcnQoc3RkOjppc19zYW1l
PE1hdGNoaW5nQ29udGV4dEhvbGRlciosIHR5cGVuYW1lIEZ1bmN0aW9uVHJhaXRzPE9wZXJhdGlv
blR5cGU+Ojp0ZW1wbGF0ZSBBcmd1bWVudFR5cGU8ND4+Ojp2YWx1ZSwgIk1hdGNoaW5nQ29udGV4
dEhvbGRlciogaXMgZXhwZWN0ZWQgYXMgdGhlIGZ1bmN0aW9uIDV0aCBhcmd1bWVudCIpOwotICAg
IH0KLQogICAgIHZvaWQgY29tcGlsZShZYXJyQ29kZUJsb2NrJiBjb2RlQmxvY2spCiAgICAgewog
ICAgICAgICBNYWNyb0Fzc2VtYmxlcjo6TGFiZWwgc3RhcnRPZk1haW5Db2RlOwpAQCAtNDIwOCwy
NSArNDE5MSwxNCBAQCBwdWJsaWM6CiAgICAgICAgIGlmIChjYWxsRnJhbWVTaXplSW5CeXRlcykg
ewogICAgICAgICAgICAgLy8gQ2hlY2sgc3RhY2sgc2l6ZQogICAgICAgICAgICAgbV9qaXQuYWRk
UHRyKE1hY3JvQXNzZW1ibGVyOjpUcnVzdGVkSW1tMzIoLWNhbGxGcmFtZVNpemVJbkJ5dGVzKSwg
TWFjcm9Bc3NlbWJsZXI6OnN0YWNrUG9pbnRlclJlZ2lzdGVyLCBtX3JlZ3MucmVnVDApOwotCi0g
ICAgICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCB0aGUgSklUZWQgZnVuY3Rpb25zIGhhdmUgNSBw
YXJhbWV0ZXJzIGFuZCB0aGF0IHRoZSA1dGggYXJndW1lbnQgaXMgYSBNYXRjaGluZ0NvbnRleHRI
b2xkZXIqCi0gICAgICAgICAgICBmdW5jdGlvbkNoZWNrczxZYXJyQ29kZUJsb2NrOjpZYXJySklU
Q29kZTg+KCk7Ci0gICAgICAgICAgICBmdW5jdGlvbkNoZWNrczxZYXJyQ29kZUJsb2NrOjpZYXJy
SklUQ29kZTE2PigpOwotICAgICAgICAgICAgZnVuY3Rpb25DaGVja3M8WWFyckNvZGVCbG9jazo6
WWFyckpJVENvZGVNYXRjaE9ubHk4PigpOwotICAgICAgICAgICAgZnVuY3Rpb25DaGVja3M8WWFy
ckNvZGVCbG9jazo6WWFyckpJVENvZGVNYXRjaE9ubHkxNj4oKTsKICNpZiBDUFUoWDg2XzY0KSAm
JiBPUyhXSU5ET1dTKQogICAgICAgICAgICAgLy8gbWF0Y2hpbmdDb250ZXh0IGlzIHRoZSA1dGgg
YXJndW1lbnQsIGl0IGlzIGZvdW5kIG9uIHRoZSBzdGFjay4KICAgICAgICAgICAgIE1hY3JvQXNz
ZW1ibGVyOjpSZWdpc3RlcklEIG1hdGNoaW5nQ29udGV4dCA9IG1fcmVncy5yZWdUMTsKLSAgICAg
ICAgICAgIG1faml0LmxvYWRQdHIoTWFjcm9Bc3NlbWJsZXI6OkFkZHJlc3MoTWFjcm9Bc3NlbWJs
ZXI6OmZyYW1lUG9pbnRlclJlZ2lzdGVyLCA3ICogc2l6ZW9mKHZvaWQqKSksIG1hdGNoaW5nQ29u
dGV4dCk7CisgICAgICAgICAgICBtX2ppdC5sb2FkUHRyKE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNz
KFg4NlJlZ2lzdGVyczo6ZWJwLCA3ICogc2l6ZW9mKHZvaWQqKSksIG1hdGNoaW5nQ29udGV4dCk7
CiAjZWxpZiBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKE1JUFMpCi0gICAgICAgICAgICAvLyBOb3Qg
ZW5vdWdoIGFyZ3VtZW50IHJlZ2lzdGVyczogdHJ5IHRvIGxvYWQgdGhlIDV0aCBhcmd1bWVudCBm
cm9tIHRoZSBzdGFjaworICAgICAgICAgICAgLy8gbWF0Y2hpbmdDb250ZXh0IGlzIHRoZSA1dGgg
YXJndW1lbnQsIGl0IGlzIGZvdW5kIG9uIHRoZSBzdGFjay4KICAgICAgICAgICAgIE1hY3JvQXNz
ZW1ibGVyOjpSZWdpc3RlcklEIG1hdGNoaW5nQ29udGV4dCA9IG1fcmVncy5yZWdUMTsKLQotICAg
ICAgICAgICAgLy8gVGhlIGFyZ3VtZW50IHdpbGwgYmUgaW4gYW4gb2Zmc2V0IHRoYXQgZGVwZW5k
cyBvbiB0aGUgYXJjaCBhbmQgdGhlIG51bWJlciBvZiByZWdpc3RlcnMgd2UgcHVzaGVkIGludG8g
dGhlIHN0YWNrCi0gICAgICAgICAgICAvLyBQT0tFX0FSR1VNRU5UX09GRlNFVDogTUlQUyByZXNl
cnZlcyBzcGFjZSBpbiB0aGUgc3RhY2sgZm9yIGFsbCBhcmd1bWVudHMsIHNvIHdlIGFkZCArNCBv
ZmZzZXQKLSAgICAgICAgICAgIC8vIG1fcHVzaENvdW50SW5FbnRlcjogbnVtYmVyIG9mIHJlZ2lz
dGVycyBwdXNoZWQgaW50byB0aGUgc3RhY2sgKHNlZSBnZW5lcmF0ZUVudGVyKCkpCi0gICAgICAg
ICAgICB1bnNpZ25lZCBvZmZzZXQgPSBQT0tFX0FSR1VNRU5UX09GRlNFVCArIG1fcHVzaENvdW50
SW5FbnRlcjsKLSAgICAgICAgICAgIG1faml0LmxvYWRQdHIoTWFjcm9Bc3NlbWJsZXI6OkFkZHJl
c3MoTWFjcm9Bc3NlbWJsZXI6OnN0YWNrUG9pbnRlclJlZ2lzdGVyLCBvZmZzZXQgKiBzaXplb2Yo
dm9pZCopKSwgbWF0Y2hpbmdDb250ZXh0KTsKKyAgICAgICAgICAgIG1faml0LmxvYWRQdHIoTWFj
cm9Bc3NlbWJsZXI6OkFkZHJlc3MoTWFjcm9Bc3NlbWJsZXI6OnN0YWNrUG9pbnRlclJlZ2lzdGVy
LCA0ICogc2l6ZW9mKHZvaWQqKSksIG1hdGNoaW5nQ29udGV4dCk7CiAjZWxzZQogICAgICAgICAg
ICAgTWFjcm9Bc3NlbWJsZXI6OlJlZ2lzdGVySUQgbWF0Y2hpbmdDb250ZXh0ID0gbV9yZWdzLm1h
dGNoaW5nQ29udGV4dDsKICNlbmRpZgpAQCAtNDY0Niw3ICs0NjE4LDcgQEAgcHVibGljOgogICAg
IH0KIAogcHJpdmF0ZToKLSAgICBDQ2FsbEhlbHBlcnMmIG1faml0OworICAgIE1hY3JvQXNzZW1i
bGVyJiBtX2ppdDsKICAgICBjb25zdCBWTSogbV92bTsKICAgICBZYXJyQ29kZUJsb2NrKiBtX2Nv
ZGVCbG9jazsKICAgICBZYXJyQm95ZXJNb3llckRhdGEqIG1fYm95ZXJNb29yZURhdGE7CkBAIC00
NzAwLDEyICs0NjcyLDYgQEAgcHJpdmF0ZToKICAgICBCYWNrdHJhY2tpbmdTdGF0ZSBtX2JhY2t0
cmFja2luZ1N0YXRlOwogICAgIAogICAgIHN0ZDo6dW5pcXVlX3B0cjxZYXJyRGlzYXNzZW1ibGVy
PiBtX2Rpc2Fzc2VtYmxlcjsKLQotICAgIC8vIE1lbWJlciBpcyB1c2VkIHRvIGNvdW50IHRoZSBu
dW1iZXIgb2YgR1BSIHB1c2hlZCBpbnRvIHRoZSBzdGFjayB3aGVuCi0gICAgLy8gZW50ZXJpbmcg
SklUZWQgY29kZS4gSXQgaXMgdXNlZCB0byBmaWd1cmUgb3V0IGlmIGFuIGZ1bmN0aW9uIGFyZ3Vt
ZW50Ci0gICAgLy8gb2Zmc2V0IGluIHRoZSBzdGFjayBpZiB0aGVyZSB3YXNuJ3QgZW5vdWdoIHJl
Z2lzdGVycyB0byBwYXNzIGl0LCBlLmcuLAotICAgIC8vIEFSTXY3IGFuZCBNSVBTIG9ubHkgdXNl
IDQgcmVnaXN0ZXJzIHRvIHBhc3MgZnVuY3Rpb24gYXJndW1lbnRzLgotICAgIHVuc2lnbmVkIG1f
cHVzaENvdW50SW5FbnRlciB7IDAgfTsKIH07CiAKIHN0YXRpYyB2b2lkIGR1bXBDb21waWxlRmFp
bHVyZShKSVRGYWlsdXJlUmVhc29uIGZhaWx1cmUpCkBAIC00NzQwLDcgKzQ3MDYsNyBAQCBzdGF0
aWMgdm9pZCBkdW1wQ29tcGlsZUZhaWx1cmUoSklURmFpbHVyZVJlYXNvbiBmYWlsdXJlKQogCiB2
b2lkIGppdENvbXBpbGUoWWFyclBhdHRlcm4mIHBhdHRlcm4sIFN0cmluZyYgcGF0dGVyblN0cmlu
ZywgQ2hhclNpemUgY2hhclNpemUsIFZNKiB2bSwgWWFyckNvZGVCbG9jayYgY29kZUJsb2NrLCBK
SVRDb21waWxlTW9kZSBtb2RlKQogewotICAgIENDYWxsSGVscGVycyBtYXNtOworICAgIE1hY3Jv
QXNzZW1ibGVyIG1hc207CiAKICAgICBBU1NFUlQobW9kZSA9PSBKSVRDb21waWxlTW9kZTo6TWF0
Y2hPbmx5IHx8IG1vZGUgPT0gSklUQ29tcGlsZU1vZGU6OkluY2x1ZGVTdWJwYXR0ZXJucyk7CiAK
QEAgLTQ3NjEsNyArNDcyNyw3IEBAIHZvaWQgaml0Q29tcGlsZShZYXJyUGF0dGVybiYgcGF0dGVy
biwgU3RyaW5nJiBwYXR0ZXJuU3RyaW5nLCBDaGFyU2l6ZSBjaGFyU2l6ZSwKICNlcnJvciAiTm8g
c3VwcG9ydCBmb3IgaW5saW5lZCBKSVQnaW5nIG9mIFJlZ0V4cC50ZXN0IGZvciB0aGlzIENQVSAv
IE9TIGNvbWJpbmF0aW9uLiIKICNlbmRpZgogCi12b2lkIGppdENvbXBpbGVJbmxpbmVkVGVzdChT
dGFja0NoZWNrKiBtX2NvbXBpbGF0aW9uVGhyZWFkU3RhY2tDaGVja2VyLCBjb25zdCBTdHJpbmcm
IHBhdHRlcm5TdHJpbmcsIE9wdGlvblNldDxZYXJyOjpGbGFncz4gZmxhZ3MsIENoYXJTaXplIGNo
YXJTaXplLCBjb25zdCBWTSogdm0sIFlhcnJCb3llck1veWVyRGF0YSYgYm95ZXJNb29yZURhdGEs
IENDYWxsSGVscGVycyYgaml0LCBZYXJySklUUmVnaXN0ZXJzJiBqaXRSZWdpc3RlcnMpCit2b2lk
IGppdENvbXBpbGVJbmxpbmVkVGVzdChTdGFja0NoZWNrKiBtX2NvbXBpbGF0aW9uVGhyZWFkU3Rh
Y2tDaGVja2VyLCBjb25zdCBTdHJpbmcmIHBhdHRlcm5TdHJpbmcsIE9wdGlvblNldDxZYXJyOjpG
bGFncz4gZmxhZ3MsIENoYXJTaXplIGNoYXJTaXplLCBjb25zdCBWTSogdm0sIFlhcnJCb3llck1v
eWVyRGF0YSYgYm95ZXJNb29yZURhdGEsIE1hY3JvQXNzZW1ibGVyJiBqaXQsIFlhcnJKSVRSZWdp
c3RlcnMmIGppdFJlZ2lzdGVycykKIHsKICAgICBZYXJyOjpFcnJvckNvZGUgZXJyb3JDb2RlOwog
ICAgIFlhcnI6OllhcnJQYXR0ZXJuIHBhdHRlcm4ocGF0dGVyblN0cmluZywgZmxhZ3MsIGVycm9y
Q29kZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmgKaW5kZXggNjliZGU4YjllNzYz
Mzc1N2ZhMWUxZmJkNjU3YjI4MmU5YjE0OTA3Yy4uMjg5ZDZlODFmZTUxN2FhZGZiZTQ5OGQxODVl
MzA3MjA1ZTZhMDczMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFy
ckpJVC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJKSVQuaApAQCAtNDMs
MTAgKzQzLDkgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLWNsYXNzIENDYWxsSGVscGVyczsKK2Ns
YXNzIFZNOwogY2xhc3MgRXhlY3V0YWJsZVBvb2w7CiBjbGFzcyBNYWNyb0Fzc2VtYmxlcjsKLWNs
YXNzIFZNOwogCiBuYW1lc3BhY2UgWWFyciB7CiAKQEAgLTI3MiwxMiArMjcxLDEyIEBAIGNsYXNz
IFlhcnJDb2RlQmxvY2sgOiBwdWJsaWMgWWFyckJveWVyTW95ZXJEYXRhIHsKICAgICBXVEZfTUFL
RV9GQVNUX0FMTE9DQVRFRDsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShZYXJyQ29kZUJsb2Nr
KTsKIAotcHVibGljOgotICAgIHVzaW5nIFlhcnJKSVRDb2RlOCA9IFNsb3dQYXRoUmV0dXJuVHlw
ZSAoKikoY29uc3QgTENoYXIqIGlucHV0LCBVQ1BVUmVnaXN0ZXIgc3RhcnQsIFVDUFVSZWdpc3Rl
ciBsZW5ndGgsIGludCogb3V0cHV0LCBNYXRjaGluZ0NvbnRleHRIb2xkZXIqKSBZQVJSX0NBTEw7
Ci0gICAgdXNpbmcgWWFyckpJVENvZGUxNiA9IFNsb3dQYXRoUmV0dXJuVHlwZSAoKikoY29uc3Qg
VUNoYXIqIGlucHV0LCBVQ1BVUmVnaXN0ZXIgc3RhcnQsIFVDUFVSZWdpc3RlciBsZW5ndGgsIGlu
dCogb3V0cHV0LCBNYXRjaGluZ0NvbnRleHRIb2xkZXIqKSBZQVJSX0NBTEw7Ci0gICAgdXNpbmcg
WWFyckpJVENvZGVNYXRjaE9ubHk4ID0gU2xvd1BhdGhSZXR1cm5UeXBlICgqKShjb25zdCBMQ2hh
ciogaW5wdXQsIFVDUFVSZWdpc3RlciBzdGFydCwgVUNQVVJlZ2lzdGVyIGxlbmd0aCwgdm9pZCos
IE1hdGNoaW5nQ29udGV4dEhvbGRlciopIFlBUlJfQ0FMTDsKLSAgICB1c2luZyBZYXJySklUQ29k
ZU1hdGNoT25seTE2ID0gU2xvd1BhdGhSZXR1cm5UeXBlICgqKShjb25zdCBVQ2hhciogaW5wdXQs
IFVDUFVSZWdpc3RlciBzdGFydCwgVUNQVVJlZ2lzdGVyIGxlbmd0aCwgdm9pZCosIE1hdGNoaW5n
Q29udGV4dEhvbGRlciopIFlBUlJfQ0FMTDsKKyAgICB1c2luZyBZYXJySklUQ29kZTggPSBTbG93
UGF0aFJldHVyblR5cGUgKCopKGNvbnN0IExDaGFyKiBpbnB1dCwgVUNQVVJlZ2lzdGVyIHN0YXJ0
LCBVQ1BVUmVnaXN0ZXIgbGVuZ3RoLCBpbnQqIG91dHB1dCwgTWF0Y2hpbmdDb250ZXh0SG9sZGVy
JiBtYXRjaGluZ0NvbnRleHQpIFlBUlJfQ0FMTDsKKyAgICB1c2luZyBZYXJySklUQ29kZTE2ID0g
U2xvd1BhdGhSZXR1cm5UeXBlICgqKShjb25zdCBVQ2hhciogaW5wdXQsIFVDUFVSZWdpc3RlciBz
dGFydCwgVUNQVVJlZ2lzdGVyIGxlbmd0aCwgaW50KiBvdXRwdXQsIE1hdGNoaW5nQ29udGV4dEhv
bGRlciYgbWF0Y2hpbmdDb250ZXh0KSBZQVJSX0NBTEw7CisgICAgdXNpbmcgWWFyckpJVENvZGVN
YXRjaE9ubHk4ID0gU2xvd1BhdGhSZXR1cm5UeXBlICgqKShjb25zdCBMQ2hhciogaW5wdXQsIFVD
UFVSZWdpc3RlciBzdGFydCwgVUNQVVJlZ2lzdGVyIGxlbmd0aCwgdm9pZCosIE1hdGNoaW5nQ29u
dGV4dEhvbGRlciYgbWF0Y2hpbmdDb250ZXh0KSBZQVJSX0NBTEw7CisgICAgdXNpbmcgWWFyckpJ
VENvZGVNYXRjaE9ubHkxNiA9IFNsb3dQYXRoUmV0dXJuVHlwZSAoKikoY29uc3QgVUNoYXIqIGlu
cHV0LCBVQ1BVUmVnaXN0ZXIgc3RhcnQsIFVDUFVSZWdpc3RlciBsZW5ndGgsIHZvaWQqLCBNYXRj
aGluZ0NvbnRleHRIb2xkZXImIG1hdGNoaW5nQ29udGV4dCkgWUFSUl9DQUxMOwogCitwdWJsaWM6
CiAgICAgWWFyckNvZGVCbG9jaygpID0gZGVmYXVsdDsKIAogICAgIHZvaWQgc2V0RmFsbEJhY2tX
aXRoRmFpbHVyZVJlYXNvbihKSVRGYWlsdXJlUmVhc29uIGZhaWx1cmVSZWFzb24pIHsgbV9mYWls
dXJlUmVhc29uID0gZmFpbHVyZVJlYXNvbjsgfQpAQCAtMzI3LDcgKzMyNiw3IEBAIHB1YmxpYzoK
ICAgICBJbmxpbmVTdGF0cyYgZ2V0OEJpdElubGluZVN0YXRzKCkgeyByZXR1cm4gbV9tYXRjaE9u
bHk4U3RhdHM7IH0KICAgICBJbmxpbmVTdGF0cyYgZ2V0MTZCaXRJbmxpbmVTdGF0cygpIHsgcmV0
dXJuICBtX21hdGNoT25seTE2U3RhdHM7IH0KIAotICAgIE1hdGNoUmVzdWx0IGV4ZWN1dGUoY29u
c3QgTENoYXIqIGlucHV0LCB1bnNpZ25lZCBzdGFydCwgdW5zaWduZWQgbGVuZ3RoLCBpbnQqIG91
dHB1dCwgTWF0Y2hpbmdDb250ZXh0SG9sZGVyKiBtYXRjaGluZ0NvbnRleHQpCisgICAgTWF0Y2hS
ZXN1bHQgZXhlY3V0ZShjb25zdCBMQ2hhciogaW5wdXQsIHVuc2lnbmVkIHN0YXJ0LCB1bnNpZ25l
ZCBsZW5ndGgsIGludCogb3V0cHV0LCBNYXRjaGluZ0NvbnRleHRIb2xkZXImIG1hdGNoaW5nQ29u
dGV4dCkKICAgICB7CiAgICAgICAgIEFTU0VSVChoYXM4Qml0Q29kZSgpKTsKICNpZiBDUFUoQVJN
NjRFKQpAQCAtMzM3LDcgKzMzNiw3IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIE1hdGNoUmVz
dWx0KHVudGFnQ0Z1bmN0aW9uUHRyPFlhcnJKSVRDb2RlOCwgWWFycjhCaXRQdHJUYWc+KG1fcmVm
OC5jb2RlKCkuZXhlY3V0YWJsZUFkZHJlc3MoKSkoaW5wdXQsIHN0YXJ0LCBsZW5ndGgsIG91dHB1
dCwgbWF0Y2hpbmdDb250ZXh0KSk7CiAgICAgfQogCi0gICAgTWF0Y2hSZXN1bHQgZXhlY3V0ZShj
b25zdCBVQ2hhciogaW5wdXQsIHVuc2lnbmVkIHN0YXJ0LCB1bnNpZ25lZCBsZW5ndGgsIGludCog
b3V0cHV0LCBNYXRjaGluZ0NvbnRleHRIb2xkZXIqIG1hdGNoaW5nQ29udGV4dCkKKyAgICBNYXRj
aFJlc3VsdCBleGVjdXRlKGNvbnN0IFVDaGFyKiBpbnB1dCwgdW5zaWduZWQgc3RhcnQsIHVuc2ln
bmVkIGxlbmd0aCwgaW50KiBvdXRwdXQsIE1hdGNoaW5nQ29udGV4dEhvbGRlciYgbWF0Y2hpbmdD
b250ZXh0KQogICAgIHsKICAgICAgICAgQVNTRVJUKGhhczE2Qml0Q29kZSgpKTsKICNpZiBDUFUo
QVJNNjRFKQpAQCAtMzQ3LDcgKzM0Niw3IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIE1hdGNo
UmVzdWx0KHVudGFnQ0Z1bmN0aW9uUHRyPFlhcnJKSVRDb2RlMTYsIFlhcnIxNkJpdFB0clRhZz4o
bV9yZWYxNi5jb2RlKCkuZXhlY3V0YWJsZUFkZHJlc3MoKSkoaW5wdXQsIHN0YXJ0LCBsZW5ndGgs
IG91dHB1dCwgbWF0Y2hpbmdDb250ZXh0KSk7CiAgICAgfQogCi0gICAgTWF0Y2hSZXN1bHQgZXhl
Y3V0ZShjb25zdCBMQ2hhciogaW5wdXQsIHVuc2lnbmVkIHN0YXJ0LCB1bnNpZ25lZCBsZW5ndGgs
IE1hdGNoaW5nQ29udGV4dEhvbGRlciogbWF0Y2hpbmdDb250ZXh0KQorICAgIE1hdGNoUmVzdWx0
IGV4ZWN1dGUoY29uc3QgTENoYXIqIGlucHV0LCB1bnNpZ25lZCBzdGFydCwgdW5zaWduZWQgbGVu
Z3RoLCBNYXRjaGluZ0NvbnRleHRIb2xkZXImIG1hdGNoaW5nQ29udGV4dCkKICAgICB7CiAgICAg
ICAgIEFTU0VSVChoYXM4Qml0Q29kZU1hdGNoT25seSgpKTsKICNpZiBDUFUoQVJNNjRFKQpAQCAt
MzU3LDcgKzM1Niw3IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIE1hdGNoUmVzdWx0KHVudGFn
Q0Z1bmN0aW9uUHRyPFlhcnJKSVRDb2RlTWF0Y2hPbmx5OCwgWWFyck1hdGNoT25seThCaXRQdHJU
YWc+KG1fbWF0Y2hPbmx5OC5jb2RlKCkuZXhlY3V0YWJsZUFkZHJlc3MoKSkoaW5wdXQsIHN0YXJ0
LCBsZW5ndGgsIG51bGxwdHIsIG1hdGNoaW5nQ29udGV4dCkpOwogICAgIH0KIAotICAgIE1hdGNo
UmVzdWx0IGV4ZWN1dGUoY29uc3QgVUNoYXIqIGlucHV0LCB1bnNpZ25lZCBzdGFydCwgdW5zaWdu
ZWQgbGVuZ3RoLCBNYXRjaGluZ0NvbnRleHRIb2xkZXIqIG1hdGNoaW5nQ29udGV4dCkKKyAgICBN
YXRjaFJlc3VsdCBleGVjdXRlKGNvbnN0IFVDaGFyKiBpbnB1dCwgdW5zaWduZWQgc3RhcnQsIHVu
c2lnbmVkIGxlbmd0aCwgTWF0Y2hpbmdDb250ZXh0SG9sZGVyJiBtYXRjaGluZ0NvbnRleHQpCiAg
ICAgewogICAgICAgICBBU1NFUlQoaGFzMTZCaXRDb2RlTWF0Y2hPbmx5KCkpOwogI2lmIENQVShB
Uk02NEUpCkBAIC00NDAsNyArNDM5LDcgQEAgdm9pZCBqaXRDb21waWxlKFlhcnJQYXR0ZXJuJiwg
U3RyaW5nJiBwYXR0ZXJuU3RyaW5nLCBDaGFyU2l6ZSwgVk0qLCBZYXJyQ29kZUJsb2MKIAogY2xh
c3MgWWFyckpJVFJlZ2lzdGVyczsKIAotdm9pZCBqaXRDb21waWxlSW5saW5lZFRlc3QoU3RhY2tD
aGVjayosIGNvbnN0IFN0cmluZyYsIE9wdGlvblNldDxZYXJyOjpGbGFncz4sIENoYXJTaXplLCBj
b25zdCBWTSosIFlhcnJCb3llck1veWVyRGF0YSYsIENDYWxsSGVscGVycyYsIFlhcnJKSVRSZWdp
c3RlcnMmKTsKK3ZvaWQgaml0Q29tcGlsZUlubGluZWRUZXN0KFN0YWNrQ2hlY2sqLCBjb25zdCBT
dHJpbmcmLCBPcHRpb25TZXQ8WWFycjo6RmxhZ3M+LCBDaGFyU2l6ZSwgY29uc3QgVk0qLCBZYXJy
Qm95ZXJNb3llckRhdGEmLCBNYWNyb0Fzc2VtYmxlciYsIFlhcnJKSVRSZWdpc3RlcnMmKTsKICNl
bmRpZgogCiB9IH0gLy8gbmFtZXNwYWNlIEpTQzo6WWFycgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3lhcnIvWWFyckpJVFJlZ2lzdGVycy5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3lhcnIvWWFyckpJVFJlZ2lzdGVycy5oCmluZGV4IGRlNTc3ODQ4OTg0MzY5ODA1OGRmNzhi
MTFhYmE1Mjc1ZDk0ODExYjEuLmJiODIxY2U4NjdmZTM4ZTI4ZjM1Y2U3MDZiOWJjNjA5OTQyZjc5
YjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJKSVRSZWdpc3Rl
cnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklUUmVnaXN0ZXJzLmgK
QEAgLTIwNiw3ICsyMDYsNiBAQCBwdWJsaWM6CiAgICAgY29uc3QgTWFjcm9Bc3NlbWJsZXI6OlRy
dXN0ZWRJbW0zMiBzdXBwbGVtZW50YXJ5UGxhbmVzQmFzZSA9IE1hY3JvQXNzZW1ibGVyOjpUcnVz
dGVkSW1tMzIoMHgxMDAwMCk7CiAgICAgY29uc3QgTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0z
MiBsZWFkaW5nU3Vycm9nYXRlVGFnID0gTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0zMigweGQ4
MDApOwogICAgIGNvbnN0IE1hY3JvQXNzZW1ibGVyOjpUcnVzdGVkSW1tMzIgdHJhaWxpbmdTdXJy
b2dhdGVUYWcgPSBNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyKDB4ZGMwMCk7Ci0gICAgY29u
c3QgTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0zMiBzdXJyb2dhdGVUYWdNYXNrID0gTWFjcm9B
c3NlbWJsZXI6OlRydXN0ZWRJbW0zMigweGZmZmZmYzAwKTsKIH07CiAjZW5kaWYKIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyck1hdGNoaW5nQ29udGV4dEhvbGRl
ci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyck1hdGNoaW5nQ29udGV4dEhvbGRl
ci5oCmluZGV4IDFhZjgzMDk4MmZmNTdmMmE5M2I2NjE3OTM4ZDJkYmM1ZGVjOGExNzkuLjEzOWQx
ZmUzNWI1NzVjNzBhMDVhN2U3NzI1ZGQ5ZmExZWZiNjYwMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS95YXJyL1lhcnJNYXRjaGluZ0NvbnRleHRIb2xkZXIuaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyTWF0Y2hpbmdDb250ZXh0SG9sZGVyLmgKQEAgLTM3
LDEwICszNywxMiBAQCBjbGFzcyBSZWdFeHA7CiAKIG5hbWVzcGFjZSBZYXJyIHsKIAorY2xhc3Mg
WWFyckNvZGVCbG9jazsKKwogY2xhc3MgTWF0Y2hpbmdDb250ZXh0SG9sZGVyIHsKICAgICBXVEZf
Rk9SQklEX0hFQVBfQUxMT0NBVElPTjsKIHB1YmxpYzoKLSAgICBNYXRjaGluZ0NvbnRleHRIb2xk
ZXIoVk0mLCBib29sLCBSZWdFeHAqLCBNYXRjaEZyb20pOworICAgIE1hdGNoaW5nQ29udGV4dEhv
bGRlcihWTSYsIFlhcnJDb2RlQmxvY2sqLCBSZWdFeHAqLCBNYXRjaEZyb20pOwogICAgIH5NYXRj
aGluZ0NvbnRleHRIb2xkZXIoKTsKIAogICAgIHN0YXRpYyBwdHJkaWZmX3Qgb2Zmc2V0T2ZTdGFj
a0xpbWl0KCkgeyByZXR1cm4gT0JKRUNUX09GRlNFVE9GKE1hdGNoaW5nQ29udGV4dEhvbGRlciwg
bV9zdGFja0xpbWl0KTsgfQpAQCAtNTksNyArNjEsNyBAQCBwcml2YXRlOgogICAgIE1hdGNoRnJv
bSBtX21hdGNoRnJvbTsKIH07CiAKLWlubGluZSBNYXRjaGluZ0NvbnRleHRIb2xkZXI6Ok1hdGNo
aW5nQ29udGV4dEhvbGRlcihWTSYgdm0sIGJvb2wgdXNlc1BhdHRlcm5Db250ZXh0QnVmZmVyLCBS
ZWdFeHAqIHJlZ0V4cCwgTWF0Y2hGcm9tIG1hdGNoRnJvbSkKK2lubGluZSBNYXRjaGluZ0NvbnRl
eHRIb2xkZXI6Ok1hdGNoaW5nQ29udGV4dEhvbGRlcihWTSYgdm0sIFlhcnJDb2RlQmxvY2sqIHlh
cnJDb2RlQmxvY2ssIFJlZ0V4cCogcmVnRXhwLCBNYXRjaEZyb20gbWF0Y2hGcm9tKQogICAgIDog
bV92bSh2bSkKICAgICAsIG1fbWF0Y2hGcm9tKG1hdGNoRnJvbSkKIHsKQEAgLTcyLDEyICs3NCwx
MiBAQCBpbmxpbmUgTWF0Y2hpbmdDb250ZXh0SG9sZGVyOjpNYXRjaGluZ0NvbnRleHRIb2xkZXIo
Vk0mIHZtLCBib29sIHVzZXNQYXR0ZXJuQ29udAogICAgIH0KIAogI2lmIEVOQUJMRShZQVJSX0pJ
VF9BTExfUEFSRU5TX0VYUFJFU1NJT05TKQotICAgIGlmICh1c2VzUGF0dGVybkNvbnRleHRCdWZm
ZXIpIHsKKyAgICBpZiAoeWFyckNvZGVCbG9jayAmJiB5YXJyQ29kZUJsb2NrLT51c2VzUGF0dGVy
bkNvbnRleHRCdWZmZXIoKSkgewogICAgICAgICBtX3BhdHRlcm5Db250ZXh0QnVmZmVyID0gbV92
bS5hY3F1aXJlUmVnRXhwUGF0dGVybkNvbnRleEJ1ZmZlcigpOwogICAgICAgICBtX3BhdHRlcm5D
b250ZXh0QnVmZmVyU2l6ZSA9IFZNOjpwYXR0ZXJuQ29udGV4dEJ1ZmZlclNpemU7CiAgICAgfQog
I2Vsc2UKLSAgICBVTlVTRURfUEFSQU0odXNlc1BhdHRlcm5Db250ZXh0QnVmZmVyKTsKKyAgICBV
TlVTRURfUEFSQU0oeWFyckNvZGVCbG9jayk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL2JtYWxsb2MvYm1hbGxvYy9IZWFwLmNwcCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvSGVh
cC5jcHAKaW5kZXggNDBmMWQ3NWYxNWNiYjU5NDdkMTg2ZDI3YjAwY2ExYmY2ZTE1ZGMxMS4uMDRm
YmNjYWU1ZGEwYTQzNDdmYTk4MWQwNjRjMGI3YjYxZTI0Y2I5ZiAxMDA2NDQKLS0tIGEvU291cmNl
L2JtYWxsb2MvYm1hbGxvYy9IZWFwLmNwcAorKysgYi9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0hl
YXAuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgQklOTElORSB2b2lkIEhlYXA6OmFkanVzdFN0YXQo
c2l6ZV90JiB2YWx1ZSwgc3NpemVfdCBhbW91bnQpCiAKIEJJTkxJTkUgdm9pZCBIZWFwOjpsb2dT
dGF0KHNpemVfdCB2YWx1ZSwgc3NpemVfdCBhbW91bnQsIGNvbnN0IGNoYXIqIGxhYmVsLCBjb25z
dCBjaGFyKiBub3RlKQogewotICAgIGZwcmludGYoc3RkZXJyLCAiJXM6ICV6dSAoJXpkKSAlc1xu
IiwgbGFiZWwsIHZhbHVlLCBhbW91bnQsIG5vdGUpOworICAgIGZwcmludGYoc3RkZXJyLCAiJXM6
ICVsdSAoJWxkKSAlc1xuIiwgbGFiZWwsIHZhbHVlLCBhbW91bnQsIG5vdGUpOwogfQogCiBCSU5M
SU5FIHZvaWQgSGVhcDo6YWRqdXN0RnJlZWFibGVNZW1vcnkoVW5pcXVlTG9ja0hvbGRlciYsIHNz
aXplX3QgYW1vdW50LCBjb25zdCBjaGFyKiBub3RlKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>