<?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>153244</bug_id>
          
          <creation_ts>2016-01-19 11:57:18 -0800</creation_ts>
          <short_desc>REGRESSION(r195300): enrica wants more time to fix Windows (Requested by thorton on #webkit).</short_desc>
          <delta_ts>2016-01-19 12:56:36 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>152989</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>enrica</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1156675</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-19 11:57:18 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/195300 broke the build:
enrica wants more time to fix Windows (Requested by thorton on #webkit).

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>1156676</commentid>
    <comment_count>1</comment_count>
      <attachid>269278</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-19 11:57:48 -0800</bug_when>
    <thetext>Created attachment 269278
ROLLOUT of r195300

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 rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout 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>1156699</commentid>
    <comment_count>2</comment_count>
      <attachid>269278</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-19 12:56:33 -0800</bug_when>
    <thetext>Comment on attachment 269278
ROLLOUT of r195300

Clearing flags on attachment: 269278

Committed r195308: &lt;http://trac.webkit.org/changeset/195308&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1156700</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-01-19 12:56:36 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>269278</attachid>
            <date>2016-01-19 11:57:48 -0800</date>
            <delta_ts>2016-01-19 12:56:33 -0800</delta_ts>
            <desc>ROLLOUT of r195300</desc>
            <filename>bug-153244-20160119115719.patch</filename>
            <type>text/plain</type>
            <size>52184</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk1MzAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
NzUzNzEwYWZkODBlM2VkY2FlMmYzMjFjMzI1YTg2MzFkMTM3OGYzLi4xMjU3ZjdjOTMxZTMyYjYy
Njk0NTQwMTBjZjIyNWZiNDhmNmU1ODEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxNi0wMS0xOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE5NTMwMC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzI0NAorCisgICAg
ICAgIGVucmljYSB3YW50cyBtb3JlIHRpbWUgdG8gZml4IFdpbmRvd3MgKFJlcXVlc3RlZCBieSB0
aG9ydG9uIG9uCisgICAgICAgICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNl
dDoKKworICAgICAgICAiQWRkIHN1cHBvcnQgZm9yIERhdGFEZXRlY3RvcnMgaW4gV0sgKGlPUyku
IgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUyOTg5
CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE5NTMwMAorCiAyMDE2
LTAxLTE5ICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CiAKICAgICAgICAgQWRk
IHN1cHBvcnQgZm9yIERhdGFEZXRlY3RvcnMgaW4gV0sgKGlPUykuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDRhZWM1MzY1Y2Zi
MjFlNDJiYjU4ZmQ2MWFiZTAwNzk4N2ZkYmFkMTEuLjZkM2RhOTA0YWYxMjQ2MGMyMTBiODRiYjdk
NDliNjYwY2RiZTQyYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTYtMDEtMTkgIENvbW1pdCBR
dWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJv
bGxpbmcgb3V0IHIxOTUzMDAuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTMyNDQKKworICAgICAgICBlbnJpY2Egd2FudHMgbW9yZSB0aW1lIHRvIGZp
eCBXaW5kb3dzIChSZXF1ZXN0ZWQgYnkgdGhvcnRvbiBvbgorICAgICAgICAjd2Via2l0KS4KKwor
ICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIkFkZCBzdXBwb3J0IGZvciBE
YXRhRGV0ZWN0b3JzIGluIFdLIChpT1MpLiIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE1Mjk4OQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xOTUzMDAKKwogMjAxNi0wMS0xOSAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FA
YXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBEYXRhRGV0ZWN0b3JzIGluIFdL
IChpT1MpLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IDE3YmRhMDZmMjcyMWE5ZDIwYjZiYjNhYmFlYWFiYWViMjlk
MDRlMmMuLjI0OWZiMTEyMjA0YWQzZTgzNjg4YmY1NDg5MTU3Yzk0NDNlNjM5MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNi0wMS0xOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1
ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE5NTMw
MC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzI0
NAorCisgICAgICAgIGVucmljYSB3YW50cyBtb3JlIHRpbWUgdG8gZml4IFdpbmRvd3MgKFJlcXVl
c3RlZCBieSB0aG9ydG9uIG9uCisgICAgICAgICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVk
IGNoYW5nZXNldDoKKworICAgICAgICAiQWRkIHN1cHBvcnQgZm9yIERhdGFEZXRlY3RvcnMgaW4g
V0sgKGlPUykuIgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTUyOTg5CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE5NTMw
MAorCiAyMDE1LTEyLTA3ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtFTUVdIENvcnJlY3RseSByZXBvcnQgZXJyb3JzIHdoZW4gZ2VuZXJhdGluZyBrZXkgcmVx
dWVzdHMgZnJvbSBBVkNvbnRlbnRLZXlTZXNzaW9uLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDdmNjZi
MTgxYWVlMzUwMWZhYWZmZjFhNTBjMGRmMTNjMjgzZmVkMzYuLjIxOWEzNmQxMDYxZmIyNmEyNmU0
OGM4OWRmOTNlNGEwZTdjYjA0MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAxNi0wMS0xOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE5NTMwMC4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MzI0NAorCisgICAgICAgIGVucmljYSB3
YW50cyBtb3JlIHRpbWUgdG8gZml4IFdpbmRvd3MgKFJlcXVlc3RlZCBieSB0aG9ydG9uIG9uCisg
ICAgICAgICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAg
ICAiQWRkIHN1cHBvcnQgZm9yIERhdGFEZXRlY3RvcnMgaW4gV0sgKGlPUykuIgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUyOTg5CisgICAgICAgIGh0
dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE5NTMwMAorCiAyMDE2LTAxLTE5ICBFbnJp
Y2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIHN1cHBvcnQgZm9y
IERhdGFEZXRlY3RvcnMgaW4gV0sgKGlPUykuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggN2M1OGYxNmY2ZjAxNDkz
MzBkMjNhOWI4MTI1NDhiMzEwZDE3MTA4Yi4uZjZjMTFhMzQ5YzU1MjdhZGUxNDhmYmFjZDJmMWQz
YTY0NjdiYWNmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE2LTAxLTE5ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTk1MzAwLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTUzMjQ0CisKKyAgICAgICAgZW5yaWNhIHdhbnRzIG1vcmUgdGltZSB0
byBmaXggV2luZG93cyAoUmVxdWVzdGVkIGJ5IHRob3J0b24gb24KKyAgICAgICAgI3dlYmtpdCku
CisKKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJBZGQgc3VwcG9ydCBm
b3IgRGF0YURldGVjdG9ycyBpbiBXSyAoaU9TKS4iCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTI5ODkKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0
Lm9yZy9jaGFuZ2VzZXQvMTk1MzAwCisKIDIwMTYtMDEtMTkgIEVucmljYSBDYXN1Y2NpICA8ZW5y
aWNhQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgc3VwcG9ydCBmb3IgRGF0YURldGVjdG9ycyBp
biBXSyAoaU9TKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0
aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCA1N2JjZGQ0ZDU1ZmZlOTNk
ZWM0MjM2ZWM5ODI4ZDEwNjEyOGVmOGFhLi40OTI3Y2VhNzMyMGI1NWEyMzBmNjM1YjE0OWFhMmQ2
Y2QyOWM1NTg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0Nv
bmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC0xMTEsNyArMTExLDYgQEAg
RU5BQkxFX01BQ19HRVNUVVJFX0VWRU5UU1tzZGs9bWFjb3N4Kl0gPSAkKEVOQUJMRV9NQUNfR0VT
VFVSRV9FVkVOVFNfbWFjb3N4X1dJVEgKIEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFNfbWFjb3N4
X1dJVEhfSU5URVJOQUxfU0RLX1lFUyA9IEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFM7CiAKIEVO
QUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HW3Nkaz1pcGhvbmUqXSA9IEVOQUJMRV9JT1NfVEVYVF9B
VVRPU0laSU5HOwotRU5BQkxFX0RBVEFfREVURUNUSU9OID0gRU5BQkxFX0RBVEFfREVURUNUSU9O
OwogCiBFTkFCTEVfSU9TX1RPVUNIX0VWRU5UU1tzZGs9aXBob25lKl0gPSAkKEVOQUJMRV9JT1Nf
VE9VQ0hfRVZFTlRTX2lvc19XSVRIX0lOVEVSTkFMX1NES18kKFVTRV9JTlRFUk5BTF9TREspKTsK
IEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRTX2lvc19XSVRIX0lOVEVSTkFMX1NES19ZRVMgPSBFTkFC
TEVfSU9TX1RPVUNIX0VWRU5UUzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0ZlYXR1cmVE
ZWZpbmVzLmggYi9Tb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCmluZGV4IGU1ZmRhMWMz
YTcxOTE0OTFjMTBjMmYyY2MxZjE1YTYwNDM5ZWU4OGUuLjM0OTVjOTY0NGE3OTU4NWE4NWY5OTkx
NmRmNmE4YzgyMTNhNzVkMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ZlYXR1cmVEZWZp
bmVzLmgKKysrIGIvU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaApAQCAtMjcyLDE0ICsy
NzIsNiBAQCB0aGUgcHVibGljIGlPUyBTREsuIFdlIHdpbGwgYWxzbyBuZWVkIHRvIHVwZGF0ZSB0
aGUgRmVhdHVyZURlZmluZXMueGNjb25maWcgZmlsZQogCiAjZW5kaWYgLyogUExBVEZPUk0oTUFD
KSAqLwogCi0jaWYgUExBVEZPUk0oQ09DT0EpCi0KLSNpZiAhZGVmaW5lZChFTkFCTEVfREFUQV9E
RVRFQ1RJT04pCi0jZGVmaW5lIEVOQUJMRV9EQVRBX0RFVEVDVElPTiAxCi0jZW5kaWYKLQotI2Vu
ZGlmIC8qIFBMQVRGT1JNKENPQ09BKSAqLwotCiAvKiAtLS0tLS0tLS0gQXBwbGUgV2luZG93cyBw
b3J0IC0tLS0tLS0tLSAqLwogI2lmIFBMQVRGT1JNKFdJTikgJiYgIVBMQVRGT1JNKFdJTl9DQUlS
TykKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURl
ZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZwppbmRleCA1N2JjZGQ0ZDU1ZmZlOTNkZWM0MjM2ZWM5ODI4ZDEwNjEyOGVm
OGFhLi40OTI3Y2VhNzMyMGI1NWEyMzBmNjM1YjE0OWFhMmQ2Y2QyOWM1NTg5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZp
ZwpAQCAtMTExLDcgKzExMSw2IEBAIEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFNbc2RrPW1hY29z
eCpdID0gJChFTkFCTEVfTUFDX0dFU1RVUkVfRVZFTlRTX21hY29zeF9XSVRICiBFTkFCTEVfTUFD
X0dFU1RVUkVfRVZFTlRTX21hY29zeF9XSVRIX0lOVEVSTkFMX1NES19ZRVMgPSBFTkFCTEVfTUFD
X0dFU1RVUkVfRVZFTlRTOwogCiBFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklOR1tzZGs9aXBob25l
Kl0gPSBFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklORzsKLUVOQUJMRV9EQVRBX0RFVEVDVElPTiA9
IEVOQUJMRV9EQVRBX0RFVEVDVElPTjsKIAogRU5BQkxFX0lPU19UT1VDSF9FVkVOVFNbc2RrPWlw
aG9uZSpdID0gJChFTkFCTEVfSU9TX1RPVUNIX0VWRU5UU19pb3NfV0lUSF9JTlRFUk5BTF9TREtf
JChVU0VfSU5URVJOQUxfU0RLKSk7CiBFTkFCTEVfSU9TX1RPVUNIX0VWRU5UU19pb3NfV0lUSF9J
TlRFUk5BTF9TREtfWUVTID0gRU5BQkxFX0lPU19UT1VDSF9FVkVOVFM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dl
YkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZwppbmRleCBkZDc4MTI3OTBmYzI4
ZTUzY2U1Y2ZjYjk1NTcyYzBjYjM4M2QyMjljLi5mNTllYzM3MzEwOTQ0NjAyMWMzZmE0ODdmMDNm
ODA1MTNkNzg0NWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNv
cmUueGNjb25maWcKQEAgLTUwLDcgKzUwLDcgQEAgUFJPRFVDVF9OQU1FID0gV2ViQ29yZTsKIFVO
RVhQT1JURURfU1lNQk9MU19GSUxFID0gQ29uZmlndXJhdGlvbnMvV2ViQ29yZS51bmV4cDsKIE9U
SEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNKTsKIE9U
SEVSX0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRTsKLU9USEVSX0xERkxB
R1NfQkFTRV9pb3MgPSAkKE9USEVSX0xERkxBR1NfQkFTRSkgLWZyYW1ld29yayBDRk5ldHdvcmsg
LWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZv
dW5kYXRpb24gLWZyYW1ld29yayBHcmFwaGljc1NlcnZpY2VzIC1mcmFtZXdvcmsgSW1hZ2VJTyAt
ZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAtZnJhbWV3b3JrIERhdGFEZXRlY3Rv
cnNDb3JlOworT1RIRVJfTERGTEFHU19CQVNFX2lvcyA9ICQoT1RIRVJfTERGTEFHU19CQVNFKSAt
ZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENv
cmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMg
LWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgT3BlbkdMRVMgLWxNb2JpbGVHZXN0YWx0Owog
T1RIRVJfTERGTEFHU19QTEFURk9STVtzZGs9aXBob25lb3MqXSA9ICQoT1RIRVJfTERGTEFHU19C
QVNFX2lvcykgLWZyYW1ld29yayBJT1N1cmZhY2U7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nk
az1pcGhvbmVzaW11bGF0b3IqXSA9ICQoT1RIRVJfTERGTEFHU19CQVNFX2lvcyk7CiBPVEhFUl9M
REZMQUdTX1BMQVRGT1JNW3Nkaz1tYWNvc3gqXSA9ICQoT1RIRVJfTERGTEFHU19CQVNFKSAtc3Vi
X2xpYnJhcnkgbGlib2JqYyAtdW1icmVsbGEgV2ViS2l0IC1hbGxvd2FibGVfY2xpZW50IFdlYkNv
cmVUZXN0U3VwcG9ydCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXQyIC1hbGxvd2FibGVfY2xpZW50
IFdlYktpdExlZ2FjeSAtZnJhbWV3b3JrIEFwcGxpY2F0aW9uU2VydmljZXMgLWZyYW1ld29yayBB
dWRpb1VuaXQgLWZyYW1ld29yayBDYXJib24gLWZyYW1ld29yayBDb2NvYSAtZnJhbWV3b3JrIERh
dGFEZXRlY3RvcnNDb3JlIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmlu
ZGV4IGM1MzAzZGE2ZDc3ODIxOWUzMzliOTI0M2IxYWM1ZDcyZTA3Y2QwN2IuLjJhMzk0Yzk5ZjU2
ZjZiMmM2NmEyNGY3N2NmYWFjNjliNTk2MmY2NDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTExMzcsNiArMTEzNyw4IEBACiAJ
CTJENTAwMkZDMUI1NkQ3OTkwMDIwQUFGNyAvKiBQYXRoVXRpbGl0aWVzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDUwMDJGQTFCNTZENzk5MDAyMEFB
RjcgLyogUGF0aFV0aWxpdGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCTJENTAzNjY4MUJDREREQzQwMEUyMEJCMyAvKiBHZXN0dXJlRXZlbnRz
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENTAz
NjY3MUJDREREQzQwMEUyMEJCMyAvKiBHZXN0dXJlRXZlbnRzLmNwcCAqLzsgfTsKIAkJMkQ1NjQ2
QjAxQjhGODQ5MzAwM0M0OTk0IC8qIERpY3Rpb25hcnlQb3B1cEluZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENTY0NkFGMUI4Rjg0OTMwMDNDNDk5
NCAvKiBEaWN0aW9uYXJ5UG9wdXBJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ1OEQ4NTUxQTE1RjY1RjAwQTVGNzI2IC8qIERhdGFEZXRl
Y3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJE
NThEODUzMUExNUY2NUYwMEE1RjcyNiAvKiBEYXRhRGV0ZWN0aW9uLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ1OEQ4NTYxQTE1RjY1RjAwQTVG
NzI2IC8qIERhdGFEZXRlY3Rpb24ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAyRDU4RDg1NDFBMTVGNjVGMDBBNUY3MjYgLyogRGF0YURldGVjdGlvbi5t
bSAqLzsgfTsKIAkJMkQ1OUYxQkYxQTAwNDRDNjAwMUYzRDI5IC8qIERhdGFEZXRlY3RvcnNTUEku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENTlGMUJF
MUEwMDQ0QzYwMDFGM0QyOSAvKiBEYXRhRGV0ZWN0b3JzU1BJLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMkQ1QTU5MkYxNTI1MjUyMzAwMzZFRTUx
IC8qIEltYWdlT3JpZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTg3NDhENzQxMkNDM0Y4OTAwMUZCQTQxIC8qIEltYWdlT3JpZW50YXRp
b24uY3BwICovOyB9OwogCQkyRDVBNTkzMTE1MjUyNUQwMDAzNkVFNTEgLyogSW1hZ2VPcmllbnRh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3
NDhENjYxMkNDMzc2MzAwMUZCQTQxIC8qIEltYWdlT3JpZW50YXRpb24uaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNTg4MCw4ICs1ODgyLDYgQEAK
IAkJQzUwRDBFODMwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1lc3BhY2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1MEQwRTgxMEZGNDI3Mjkw
MEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQzUxMzdDRjIxMUE1ODM3ODAwNEFEQjk5IC8qIEpTRE9N
U3RyaW5nTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDNTEzN0NGMDExQTU4Mzc4MDA0QURCOTkgLyogSlNET01TdHJpbmdMaXN0LmNwcCAqLzsg
fTsKIAkJQzUxMzdDRjMxMUE1ODM3ODAwNEFEQjk5IC8qIEpTRE9NU3RyaW5nTGlzdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzUxMzdDRjExMUE1ODM3
ODAwNEFEQjk5IC8qIEpTRE9NU3RyaW5nTGlzdC5oICovOyB9OwotCQlDNTIyN0RGMTFDM0M2REYx
MDBGNUVENTQgLyogRGF0YURldGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQzUyMjdERUYxQzNDNkRENzAwRjVFRDU0IC8qIERhdGFEZXRlY3Rp
b24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlD
NTIyN0RGMjFDM0M2REY5MDBGNUVENTQgLyogRGF0YURldGVjdGlvbi5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1MjI3REYwMUMzQzZERDcwMEY1RUQ1
NCAvKiBEYXRhRGV0ZWN0aW9uLm1tICovOyB9OwogCQlDNTI3OEIwQzE3RjIxMkVBMDAzQTI5OTgg
LyogUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQzUyNzhCMEIxN0YyMTJFQTAwM0EyOTk4IC8qIFBsYXRmb3JtUGFz
dGVib2FyZElPUy5tbSAqLzsgfTsKIAkJQzU0NDI3NEIxMUE1N0U3QTAwNjNBNzQ5IC8qIERPTVN0
cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEM1NDQyNzQ5MTFBNTdFN0EwMDYzQTc0OSAvKiBET01TdHJpbmdMaXN0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQzU1NjEwRjExMUE3MDRFQjAw
QjgyRDI3IC8qIERPTVN0cmluZ0xpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQzU1NjEwRjAxMUE3MDRFQjAwQjgyRDI3IC8qIERPTVN0cmluZ0xp
c3QuY3BwICovOyB9OwpAQCAtODUxNCw2ICs4NTE0LDggQEAKIAkJMkQ1MDAyRkExQjU2RDc5OTAw
MjBBQUY3IC8qIFBhdGhVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGF0aFV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRDUwMzY2
NzFCQ0REREM0MDBFMjBCQjMgLyogR2VzdHVyZUV2ZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBHZXN0dXJlRXZlbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMkQ1NjQ2QUYxQjhGODQ5MzAwM0M0OTk0IC8qIERpY3Rpb25hcnlQb3B1cElu
Zm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGljdGlvbmFyeVBvcHVwSW5m
by5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDU4RDg1MzFBMTVGNjVGMDBBNUY3
MjYgLyogRGF0YURldGVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
YXRhRGV0ZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJENThEODU0MUEx
NUY2NUYwMEE1RjcyNiAvKiBEYXRhRGV0ZWN0aW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gRGF0YURldGVjdGlvbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMkQ1OUYxQkUxQTAwNDRDNjAwMUYzRDI5IC8qIERhdGFEZXRlY3RvcnNTUEkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YURldGVjdG9yc1NQSS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRDVCQzQyNTE2Rjg4MkJFMDA3MDQ4RDAgLyogU2Vj
dXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTJENUJDNDI2MTZGODgyQkUwMDcwNDhEMCAvKiBTZWN1cml0eVBvbGljeVZpb2xh
dGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZWN1cml0eVBvbGljeVZpb2xh
dGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNzExLDggKzEz
NzEzLDYgQEAKIAkJQzUwRDBFODEwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1lc3BhY2Uu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RvcmFnZU5hbWVzcGFjZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDNTEzN0NGMDExQTU4Mzc4MDA0QURCOTkgLyog
SlNET01TdHJpbmdMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTRE9NU3RyaW5nTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUM1MTM3
Q0YxMTFBNTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNET01TdHJpbmdMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCUM1MjI3REVGMUMzQzZERDcwMEY1RUQ1NCAvKiBEYXRhRGV0ZWN0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFEZXRlY3Rpb24uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQzUyMjdERjAxQzNDNkRENzAwRjVFRDU0IC8qIERhdGFEZXRl
Y3Rpb24ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEYXRhRGV0
ZWN0aW9uLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDNTI3OEIwQjE3RjIxMkVB
MDAzQTI5OTggLyogUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlDNTQ0Mjc0OTExQTU3RTdBMDA2M0E3NDkgLyogRE9NU3RyaW5n
TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01TdHJpbmdMaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUM1NDQyNzRBMTFBNTdFN0EwMDYzQTc0OSAv
KiBET01TdHJpbmdMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01TdHJpbmdMaXN0
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3ODg1LDggKzE3ODg1LDYgQEAK
IAkJN0MzRTUxMDcxOERGOEYxMjAwQzExMkY3IC8qIGNvY29hICovID0gewogCQkJaXNhID0gUEJY
R3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQlDNTIyN0RFRjFDM0M2REQ3MDBGNUVENTQgLyog
RGF0YURldGVjdGlvbi5oICovLAotCQkJCUM1MjI3REYwMUMzQzZERDcwMEY1RUQ1NCAvKiBEYXRh
RGV0ZWN0aW9uLm1tICovLAogCQkJCTlCNTVFRUVBMUIzRjNGRUYwMDUzNDJCQyAvKiBFZGl0b3JD
b2NvYS5oICovLAogCQkJCTlCNTVFRUU4MUIzRTg4OTgwMDUzNDJCQyAvKiBFZGl0b3JDb2NvYS5t
bSAqLywKIAkJCQk3QzNFNTEwODE4REY4RjM1MDBDMTEyRjcgLyogSFRNTENvbnZlcnRlci5oICov
LApAQCAtMjMxOTMsNiArMjMxOTEsOCBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJQ0U3QjJEQUYx
NTg2QUJBRDAwOThCM0ZBIC8qIEFsdGVybmF0aXZlVGV4dFVJQ29udHJvbGxlci5oICovLAogCQkJ
CUNFN0IyREIwMTU4NkFCQUQwMDk4QjNGQSAvKiBBbHRlcm5hdGl2ZVRleHRVSUNvbnRyb2xsZXIu
bW0gKi8sCisJCQkJMkQ1OEQ4NTMxQTE1RjY1RjAwQTVGNzI2IC8qIERhdGFEZXRlY3Rpb24uaCAq
LywKKwkJCQkyRDU4RDg1NDFBMTVGNjVGMDBBNUY3MjYgLyogRGF0YURldGVjdGlvbi5tbSAqLywK
IAkJCQk5MzdGRjNENDFBMTAxMkQ2MDA4RUJBMzEgLyogRGljdGlvbmFyeUxvb2t1cC5oICovLAog
CQkJCTkzN0ZGM0Q2MUExMDEzMUIwMDhFQkEzMSAvKiBEaWN0aW9uYXJ5TG9va3VwLm1tICovLAog
CQkJCUVENTAxREM1MEIyNDlGMjkwMEFFMThEOSAvKiBFZGl0b3JNYWMubW0gKi8sCkBAIC0yNTA2
OCw2ICsyNTA2OCw3IEBACiAJCQkJOTdCQzZBMzAxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNl
VGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQk5N0JDNkEzMjE1MDVGMDgxMDAxQjc0QUMgLyog
RGF0YWJhc2VUcmFja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCRTIzNDgwRDE4QTk4NzE0MDBF
NEI2RTggLyogRGF0YUN1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ1OEQ4NTUxQTE1RjY1RjAw
QTVGNzI2IC8qIERhdGFEZXRlY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTkzNUUyQjRFMUFG
RjA2Q0EwMDk3NkY5RiAvKiBEYXRhRGV0ZWN0b3JzQ29yZVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMkQ1OUYxQkYxQTAwNDRDNjAwMUYzRDI5IC8qIERhdGFEZXRlY3RvcnNTUEkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDMjI3NDZGMEU4MzY2NDUwMEU3Rjk3NSAvKiBEYXRhUmVmLmggaW4gSGVh
ZGVycyAqLywKQEAgLTI2MDM5LDcgKzI2MDQwLDYgQEAKIAkJCQlCMjc1MzU3NTBCMDUzODE0MDAy
Q0U2NEYgLyogSW50U2l6ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjI3NTM1NzYwQjA1MzgxNDAw
MkNFNjRGIC8qIEludFNpemVIYXNoLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRTEyNTI0RDFBMUE3
N0RFMDA4NjQ0ODAgLyogSU9QTUxpYlNQSS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQzUyMjdERjEx
QzNDNkRGMTAwRjVFRDU0IC8qIERhdGFEZXRlY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTQ0
REVGNjQzMUE2RkY5MjcwMEQ0NUVFQyAvKiBJT1JldHVyblNQSS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMkQwQjRBQUIxOERBMUNDRDAwNDM0REUxIC8qIElPU3VyZmFjZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMUMyMUU1N0QxODNFRDFGRjAwMUMyODlEIC8qIElPU3VyZmFjZVBvb2wuaCBpbiBIZWFk
ZXJzICovLApAQCAtMjg3NDcsNyArMjg3NDcsNiBAQAogCQkJCTg1MDMxQjNGMEE0NEVGQzcwMEY5
OTJFMCAvKiBDbGlwYm9hcmRFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1ODAzNzE2MTFB
NjZGMDBBMDBCQUY1MTkgLyogQ2xpcFJlY3QuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RFQTc2
MzUxNDYwQjcxQTAwOEIzMUYxIC8qIENsb2NrLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCUM1MjI3
REYyMUMzQzZERjkwMEY1RUQ1NCAvKiBEYXRhRGV0ZWN0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQ0RFQTc2MzQxNDYwQjU2RjAwOEIzMUYxIC8qIENsb2NrR2VuZXJpYy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk5QkQ4QTk1QTE4QkVGQzc2MDA5ODdFOUEgLyogQ29sbGVjdGlvbkluZGV4Q2Fj
aGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjI3NTM1NjYwQjA1MzgxNDAwMkNFNjRGIC8qIENv
bG9yLmNwcCBpbiBTb3VyY2VzICovLApAQCAtMjg5MjcsNiArMjg5MjYsNyBAQAogCQkJCTk3QkM2
QTJGMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRocmVhZC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk5N0JDNkEzMTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUcmFja2VyLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUJFMjM0ODBDMThBOTg3MEIwMEU0QjZFOCAvKiBEYXRhQ3VlLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTJENThEODU2MUExNUY2NUYwMEE1RjcyNiAvKiBEYXRhRGV0ZWN0
aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM2NDY0MUQxMUQ3RjQxNjAwNjQ1NUIwIC8qIERh
dGFzZXRET01TdHJpbmdNYXAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTc4NDk0MUIwQjVGRTUw
NzAwMUUyMzdBIC8qIERhdGFUcmFuc2Zlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5M0YxOUFG
RjA4MjQ1RTU5MDAxRTlBQkMgLyogRGF0YVRyYW5zZmVyTWFjLm1tIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0RhdGFEZXRlY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRGF0YURldGVjdGlvbi5oCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA1YzdkNjc0YTIwYzY4ZDlhZTE4MjY3OWU3NzMxMDQwNGQ0MzEw
ODVjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvY29jb2EvRGF0YURldGVjdGlvbi5oCisrKyAvZGV2L251bGwKQEAg
LTEsNTkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgRGF0YURldGVjdGlvbl9oCi0jZGVm
aW5lIERhdGFEZXRlY3Rpb25faAotCi0jaW1wb3J0IDx3dGYvUmVmUHRyLmg+Ci0jaW1wb3J0IDx3
dGYvUmV0YWluUHRyLmg+Ci0KLU9CSkNfQ0xBU1MgRERBY3Rpb25Db250ZXh0OwotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEZsb2F0UmVjdDsKLWNsYXNzIEhpdFRlc3RSZXN1bHQ7Ci1j
bGFzcyBSYW5nZTsKLQotZW51bSBEYXRhRGV0ZWN0b3JUeXBlcyB7Ci0gICAgRGF0YURldGVjdG9y
VHlwZU5vbmUgPSAwLAotICAgIERhdGFEZXRlY3RvclR5cGVQaG9uZU51bWJlciA9IDEgPDwgMCwK
LSAgICBEYXRhRGV0ZWN0b3JUeXBlTGluayA9IDEgPDwgMSwKLSAgICBEYXRhRGV0ZWN0b3JUeXBl
QWRkcmVzcyA9IDEgPDwgMiwKLSAgICBEYXRhRGV0ZWN0b3JUeXBlQ2FsZW5kYXJFdmVudCA9IDEg
PDwgMywKLSAgICBEYXRhRGV0ZWN0b3JUeXBlQWxsID0gVUxPTkdfTUFYCi19OwotCi1jbGFzcyBE
YXRhRGV0ZWN0aW9uIHsKLXB1YmxpYzoKLSNpZiBQTEFURk9STShNQUMpCi0gICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFJldGFpblB0cjxEREFjdGlvbkNvbnRleHQ+IGRldGVjdEl0ZW1Bcm91bmRI
aXRUZXN0UmVzdWx0KGNvbnN0IEhpdFRlc3RSZXN1bHQmLCBGbG9hdFJlY3QmIGRldGVjdGVkRGF0
YUJvdW5kaW5nQm94LCBSZWZQdHI8UmFuZ2U+JiBkZXRlY3RlZERhdGFSYW5nZSk7Ci0jZW5kaWYK
LSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBkZXRlY3RDb250ZW50SW5SYW5nZShSZWZQ
dHI8UmFuZ2U+JiBjb250ZXh0UmFuZ2UsIERhdGFEZXRlY3RvclR5cGVzKTsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIERhdGFEZXRlY3Rpb25faApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9EYXRhRGV0ZWN0aW9uLm1tIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9jb2NvYS9EYXRhRGV0ZWN0aW9uLm1tCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA4YzlmNTYzYjBmMjMwOTAxZWNiZjYyYWJhNjYzNTY3Y2E3ZGNhNTNiLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvY29jb2EvRGF0YURldGVjdGlvbi5tbQorKysgL2Rldi9udWxsCkBAIC0xLDE0
NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlLCBJbmMuICBBbGwgcmln
aHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaW1wb3J0ICJjb25maWcuaCIKLSNpbXBvcnQgIkRhdGFEZXRlY3Rpb24uaCIKLQotI2ltcG9y
dCAiQXR0ci5oIgotI2ltcG9ydCAiQ1NTU3R5bGVEZWNsYXJhdGlvbi5oIgotI2ltcG9ydCAiRGF0
YURldGVjdG9yc1NQSS5oIgotI2ltcG9ydCAiRnJhbWVWaWV3LmgiCi0jaW1wb3J0ICJIVE1MQW5j
aG9yRWxlbWVudC5oIgotI2ltcG9ydCAiSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCIKLSNp
bXBvcnQgIkhpdFRlc3RSZXN1bHQuaCIKLSNpbXBvcnQgIk5vZGUuaCIKLSNpbXBvcnQgIk5vZGVM
aXN0LmgiCi0jaW1wb3J0ICJOb2RlVHJhdmVyc2FsLmgiCi0jaW1wb3J0ICJSYW5nZS5oIgotI2lt
cG9ydCAiUmVuZGVyT2JqZWN0LmgiCi0jaW1wb3J0ICJUZXh0LmgiCi0jaW1wb3J0ICJUZXh0SXRl
cmF0b3IuaCIKLSNpbXBvcnQgIlZpc2libGVQb3NpdGlvbi5oIgotI2ltcG9ydCAiVmlzaWJsZVVu
aXRzLmgiCi0jaW1wb3J0ICJodG1sZWRpdGluZy5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LSNpZiBQTEFURk9STShNQUMpCi0KLXN0YXRpYyBSZXRhaW5QdHI8RERBY3Rpb25Db250ZXh0PiBk
ZXRlY3RJdGVtQXRQb3NpdGlvbldpdGhSYW5nZShWaXNpYmxlUG9zaXRpb24gcG9zaXRpb24sIFJl
ZlB0cjxSYW5nZT4gY29udGV4dFJhbmdlLCBGbG9hdFJlY3QmIGRldGVjdGVkRGF0YUJvdW5kaW5n
Qm94LCBSZWZQdHI8UmFuZ2U+JiBkZXRlY3RlZERhdGFSYW5nZSkKLXsKLSAgICBTdHJpbmcgZnVs
bFBsYWluVGV4dFN0cmluZyA9IHBsYWluVGV4dChjb250ZXh0UmFuZ2UuZ2V0KCkpOwotICAgIGlu
dCBoaXRMb2NhdGlvbiA9IFRleHRJdGVyYXRvcjo6cmFuZ2VMZW5ndGgobWFrZVJhbmdlKGNvbnRl
eHRSYW5nZS0+c3RhcnRQb3NpdGlvbigpLCBwb3NpdGlvbikuZ2V0KCkpOwotCi0gICAgUmV0YWlu
UHRyPEREU2Nhbm5lclJlZj4gc2Nhbm5lciA9IGFkb3B0Q0YoRERTY2FubmVyQ3JlYXRlKEREU2Nh
bm5lclR5cGVTdGFuZGFyZCwgMCwgbnVsbHB0cikpOwotICAgIFJldGFpblB0cjxERFNjYW5RdWVy
eVJlZj4gc2NhblF1ZXJ5ID0gYWRvcHRDRihERFNjYW5RdWVyeUNyZWF0ZUZyb21TdHJpbmcoa0NG
QWxsb2NhdG9yRGVmYXVsdCwgZnVsbFBsYWluVGV4dFN0cmluZy5jcmVhdGVDRlN0cmluZygpLmdl
dCgpLCBDRlJhbmdlTWFrZSgwLCBmdWxsUGxhaW5UZXh0U3RyaW5nLmxlbmd0aCgpKSkpOwotCi0g
ICAgaWYgKCFERFNjYW5uZXJTY2FuUXVlcnkoc2Nhbm5lci5nZXQoKSwgc2NhblF1ZXJ5LmdldCgp
KSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAgICBSZXRhaW5QdHI8Q0ZBcnJheVJlZj4g
cmVzdWx0cyA9IGFkb3B0Q0YoRERTY2FubmVyQ29weVJlc3VsdHNXaXRoT3B0aW9ucyhzY2FubmVy
LmdldCgpLCBERFNjYW5uZXJDb3B5UmVzdWx0c09wdGlvbnNOb092ZXJsYXApKTsKLQotICAgIC8v
IEZpbmQgdGhlIEREUmVzdWx0UmVmIHRoYXQgaW50ZXJzZWN0cyB0aGUgaGl0VGVzdFJlc3VsdCdz
IFZpc2libGVQb3NpdGlvbi4KLSAgICBERFJlc3VsdFJlZiBtYWluUmVzdWx0ID0gbnVsbHB0cjsK
LSAgICBSZWZQdHI8UmFuZ2U+IG1haW5SZXN1bHRSYW5nZTsKLSAgICBDRkluZGV4IHJlc3VsdENv
dW50ID0gQ0ZBcnJheUdldENvdW50KHJlc3VsdHMuZ2V0KCkpOwotICAgIGZvciAoQ0ZJbmRleCBp
ID0gMDsgaSA8IHJlc3VsdENvdW50OyBpKyspIHsKLSAgICAgICAgRERSZXN1bHRSZWYgcmVzdWx0
ID0gKEREUmVzdWx0UmVmKUNGQXJyYXlHZXRWYWx1ZUF0SW5kZXgocmVzdWx0cy5nZXQoKSwgaSk7
Ci0gICAgICAgIENGUmFuZ2UgcmVzdWx0UmFuZ2VJbkNvbnRleHQgPSBERFJlc3VsdEdldFJhbmdl
KHJlc3VsdCk7Ci0gICAgICAgIGlmIChoaXRMb2NhdGlvbiA+PSByZXN1bHRSYW5nZUluQ29udGV4
dC5sb2NhdGlvbiAmJiAoaGl0TG9jYXRpb24gLSByZXN1bHRSYW5nZUluQ29udGV4dC5sb2NhdGlv
bikgPCByZXN1bHRSYW5nZUluQ29udGV4dC5sZW5ndGgpIHsKLSAgICAgICAgICAgIG1haW5SZXN1
bHQgPSByZXN1bHQ7Ci0gICAgICAgICAgICBtYWluUmVzdWx0UmFuZ2UgPSBUZXh0SXRlcmF0b3I6
OnN1YnJhbmdlKGNvbnRleHRSYW5nZS5nZXQoKSwgcmVzdWx0UmFuZ2VJbkNvbnRleHQubG9jYXRp
b24sIHJlc3VsdFJhbmdlSW5Db250ZXh0Lmxlbmd0aCk7Ci0gICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgfQotICAgIH0KLQotICAgIGlmICghbWFpblJlc3VsdCkKLSAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0KLSAgICBSZXRhaW5QdHI8RERBY3Rpb25Db250ZXh0PiBhY3Rpb25Db250ZXh0ID0g
YWRvcHROUyhbYWxsb2NEREFjdGlvbkNvbnRleHRJbnN0YW5jZSgpIGluaXRdKTsKLSAgICBbYWN0
aW9uQ29udGV4dCBzZXRBbGxSZXN1bHRzOkBbIChpZCltYWluUmVzdWx0IF1dOwotICAgIFthY3Rp
b25Db250ZXh0IHNldE1haW5SZXN1bHQ6bWFpblJlc3VsdF07Ci0KLSAgICBWZWN0b3I8RmxvYXRR
dWFkPiBxdWFkczsKLSAgICBtYWluUmVzdWx0UmFuZ2UtPmFic29sdXRlVGV4dFF1YWRzKHF1YWRz
KTsKLSAgICBkZXRlY3RlZERhdGFCb3VuZGluZ0JveCA9IEZsb2F0UmVjdCgpOwotICAgIEZyYW1l
VmlldyogZnJhbWVWaWV3ID0gbWFpblJlc3VsdFJhbmdlLT5vd25lckRvY3VtZW50KCkudmlldygp
OwotICAgIGZvciAoY29uc3QgYXV0byYgcXVhZCA6IHF1YWRzKQotICAgICAgICBkZXRlY3RlZERh
dGFCb3VuZGluZ0JveC51bml0ZShmcmFtZVZpZXctPmNvbnRlbnRzVG9XaW5kb3cocXVhZC5lbmNs
b3NpbmdCb3VuZGluZ0JveCgpKSk7Ci0gICAgCi0gICAgZGV0ZWN0ZWREYXRhUmFuZ2UgPSBtYWlu
UmVzdWx0UmFuZ2U7Ci0gICAgCi0gICAgcmV0dXJuIGFjdGlvbkNvbnRleHQ7Ci19Ci0KLVJldGFp
blB0cjxEREFjdGlvbkNvbnRleHQ+IERhdGFEZXRlY3Rpb246OmRldGVjdEl0ZW1Bcm91bmRIaXRU
ZXN0UmVzdWx0KGNvbnN0IEhpdFRlc3RSZXN1bHQmIGhpdFRlc3RSZXN1bHQsIEZsb2F0UmVjdCYg
ZGV0ZWN0ZWREYXRhQm91bmRpbmdCb3gsIFJlZlB0cjxSYW5nZT4mIGRldGVjdGVkRGF0YVJhbmdl
KQotewotICAgIGlmICghRGF0YURldGVjdG9yc0xpYnJhcnkoKSkKLSAgICAgICAgcmV0dXJuIG51
bGxwdHI7Ci0KLSAgICBOb2RlKiBub2RlID0gaGl0VGVzdFJlc3VsdC5pbm5lck5vblNoYXJlZE5v
ZGUoKTsKLSAgICBpZiAoIW5vZGUpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotICAgIGF1dG8g
cmVuZGVyZXIgPSBub2RlLT5yZW5kZXJlcigpOwotICAgIGlmICghcmVuZGVyZXIpCi0gICAgICAg
IHJldHVybiBudWxscHRyOwotCi0gICAgVmlzaWJsZVBvc2l0aW9uIHBvc2l0aW9uOwotICAgIFJl
ZlB0cjxSYW5nZT4gY29udGV4dFJhbmdlOwotCi0gICAgaWYgKCFpczxIVE1MVGV4dEZvcm1Db250
cm9sRWxlbWVudD4oKm5vZGUpKSB7Ci0gICAgICAgIHBvc2l0aW9uID0gcmVuZGVyZXItPnBvc2l0
aW9uRm9yUG9pbnQoaGl0VGVzdFJlc3VsdC5sb2NhbFBvaW50KCksIG51bGxwdHIpOwotICAgICAg
ICBpZiAocG9zaXRpb24uaXNOdWxsKCkpCi0gICAgICAgICAgICBwb3NpdGlvbiA9IGZpcnN0UG9z
aXRpb25Jbk9yQmVmb3JlTm9kZShub2RlKTsKLQotICAgICAgICBjb250ZXh0UmFuZ2UgPSByYW5n
ZUV4cGFuZGVkQXJvdW5kUG9zaXRpb25CeUNoYXJhY3RlcnMocG9zaXRpb24sIDI1MCk7Ci0gICAg
ICAgIGlmICghY29udGV4dFJhbmdlKQotICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAg
fSBlbHNlIHsKLSAgICAgICAgRnJhbWUqIGZyYW1lID0gbm9kZS0+ZG9jdW1lbnQoKS5mcmFtZSgp
OwotICAgICAgICBpZiAoIWZyYW1lKQotICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAg
ICAgICAgSW50UG9pbnQgZnJhbWVQb2ludCA9IGhpdFRlc3RSZXN1bHQucm91bmRlZFBvaW50SW5J
bm5lck5vZGVGcmFtZSgpOwotICAgICAgICBpZiAoIWZyYW1lLT5yYW5nZUZvclBvaW50KGZyYW1l
UG9pbnQpKQotICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAgICAgICAgVmlzaWJsZVBv
c2l0aW9uIHBvc2l0aW9uID0gZnJhbWUtPnZpc2libGVQb3NpdGlvbkZvclBvaW50KGZyYW1lUG9p
bnQpOwotICAgICAgICBpZiAocG9zaXRpb24uaXNOdWxsKCkpCi0gICAgICAgICAgICByZXR1cm4g
bnVsbHB0cjsKLQotICAgICAgICBjb250ZXh0UmFuZ2UgPSBlbmNsb3NpbmdUZXh0VW5pdE9mR3Jh
bnVsYXJpdHkocG9zaXRpb24sIExpbmVHcmFudWxhcml0eSwgRGlyZWN0aW9uRm9yd2FyZCk7Ci0g
ICAgICAgIGlmICghY29udGV4dFJhbmdlKQotICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0g
ICAgfQotCi0gICAgcmV0dXJuIGRldGVjdEl0ZW1BdFBvc2l0aW9uV2l0aFJhbmdlKHBvc2l0aW9u
LCBjb250ZXh0UmFuZ2UsIGRldGVjdGVkRGF0YUJvdW5kaW5nQm94LCBkZXRlY3RlZERhdGFSYW5n
ZSk7Ci19Ci0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQotCi12b2lkIERhdGFEZXRlY3Rpb246OmRl
dGVjdENvbnRlbnRJblJhbmdlKFJlZlB0cjxSYW5nZT4mLCBEYXRhRGV0ZWN0b3JUeXBlcykKLXsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9tYWMvRGF0YURldGVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYWMv
RGF0YURldGVjdGlvbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY0NDg0MDMxOWNiMGIzYjk2ZmU3YTcwODU0Yjlk
MDg3NWQ4MTczNjkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21h
Yy9EYXRhRGV0ZWN0aW9uLmgKQEAgLTAsMCArMSw1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYg
RGF0YURldGVjdGlvbl9oCisjZGVmaW5lIERhdGFEZXRlY3Rpb25faAorCisjaWYgUExBVEZPUk0o
TUFDKQorCisjaW1wb3J0IDx3dGYvUmVmUHRyLmg+CisjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+
CisKK09CSkNfQ0xBU1MgRERBY3Rpb25Db250ZXh0OworCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K2NsYXNzIEZsb2F0UmVjdDsKK2NsYXNzIEhpdFRlc3RSZXN1bHQ7CitjbGFzcyBSYW5nZTsKKwor
Y2xhc3MgRGF0YURldGVjdGlvbiB7CitwdWJsaWM6CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJldGFpblB0cjxEREFjdGlvbkNvbnRleHQ+IGRldGVjdEl0ZW1Bcm91bmRIaXRUZXN0UmVzdWx0
KGNvbnN0IEhpdFRlc3RSZXN1bHQmLCBGbG9hdFJlY3QmIGRldGVjdGVkRGF0YUJvdW5kaW5nQm94
LCBSZWZQdHI8UmFuZ2U+JiBkZXRlY3RlZERhdGFSYW5nZSk7Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBQTEFURk9STShNQUMpCisKKyNlbmRpZiAvLyBEYXRhRGV0
ZWN0aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFjL0RhdGFEZXRl
Y3Rpb24ubW0gYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9EYXRhRGV0ZWN0aW9uLm1tCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjNmMTNiYmNkYmJmNTQxYWZjM2Q1MzA5NGU3Yzg4ZjRmNjQ1NGM4ZWMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hYy9EYXRhRGV0ZWN0aW9uLm1t
CkBAIC0wLDAgKzEsMTM3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlLCBJbmMu
ICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAq
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIkRhdGFEZXRlY3Rpb24uaCIK
KworI2lmIFBMQVRGT1JNKE1BQykKKworI2ltcG9ydCAiRGF0YURldGVjdG9yc1NQSS5oIgorI2lt
cG9ydCAiRnJhbWVWaWV3LmgiCisjaW1wb3J0ICJIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5o
IgorI2ltcG9ydCAiSGl0VGVzdFJlc3VsdC5oIgorI2ltcG9ydCAiTm9kZS5oIgorI2ltcG9ydCAi
UmFuZ2UuaCIKKyNpbXBvcnQgIlJlbmRlck9iamVjdC5oIgorI2ltcG9ydCAiVGV4dEl0ZXJhdG9y
LmgiCisjaW1wb3J0ICJWaXNpYmxlUG9zaXRpb24uaCIKKyNpbXBvcnQgIlZpc2libGVVbml0cy5o
IgorI2ltcG9ydCAiaHRtbGVkaXRpbmcuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0
aWMgUmV0YWluUHRyPEREQWN0aW9uQ29udGV4dD4gZGV0ZWN0SXRlbUF0UG9zaXRpb25XaXRoUmFu
Z2UoVmlzaWJsZVBvc2l0aW9uIHBvc2l0aW9uLCBSZWZQdHI8UmFuZ2U+IGNvbnRleHRSYW5nZSwg
RmxvYXRSZWN0JiBkZXRlY3RlZERhdGFCb3VuZGluZ0JveCwgUmVmUHRyPFJhbmdlPiYgZGV0ZWN0
ZWREYXRhUmFuZ2UpCit7CisgICAgU3RyaW5nIGZ1bGxQbGFpblRleHRTdHJpbmcgPSBwbGFpblRl
eHQoY29udGV4dFJhbmdlLmdldCgpKTsKKyAgICBpbnQgaGl0TG9jYXRpb24gPSBUZXh0SXRlcmF0
b3I6OnJhbmdlTGVuZ3RoKG1ha2VSYW5nZShjb250ZXh0UmFuZ2UtPnN0YXJ0UG9zaXRpb24oKSwg
cG9zaXRpb24pLmdldCgpKTsKKworICAgIFJldGFpblB0cjxERFNjYW5uZXJSZWY+IHNjYW5uZXIg
PSBhZG9wdENGKEREU2Nhbm5lckNyZWF0ZShERFNjYW5uZXJUeXBlU3RhbmRhcmQsIDAsIG51bGxw
dHIpKTsKKyAgICBSZXRhaW5QdHI8RERTY2FuUXVlcnlSZWY+IHNjYW5RdWVyeSA9IGFkb3B0Q0Yo
RERTY2FuUXVlcnlDcmVhdGVGcm9tU3RyaW5nKGtDRkFsbG9jYXRvckRlZmF1bHQsIGZ1bGxQbGFp
blRleHRTdHJpbmcuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSwgQ0ZSYW5nZU1ha2UoMCwgZnVsbFBs
YWluVGV4dFN0cmluZy5sZW5ndGgoKSkpKTsKKworICAgIGlmICghRERTY2FubmVyU2NhblF1ZXJ5
KHNjYW5uZXIuZ2V0KCksIHNjYW5RdWVyeS5nZXQoKSkpCisgICAgICAgIHJldHVybiBudWxscHRy
OworCisgICAgUmV0YWluUHRyPENGQXJyYXlSZWY+IHJlc3VsdHMgPSBhZG9wdENGKEREU2Nhbm5l
ckNvcHlSZXN1bHRzV2l0aE9wdGlvbnMoc2Nhbm5lci5nZXQoKSwgRERTY2FubmVyQ29weVJlc3Vs
dHNPcHRpb25zTm9PdmVybGFwKSk7CisKKyAgICAvLyBGaW5kIHRoZSBERFJlc3VsdFJlZiB0aGF0
IGludGVyc2VjdHMgdGhlIGhpdFRlc3RSZXN1bHQncyBWaXNpYmxlUG9zaXRpb24uCisgICAgRERS
ZXN1bHRSZWYgbWFpblJlc3VsdCA9IG51bGxwdHI7CisgICAgUmVmUHRyPFJhbmdlPiBtYWluUmVz
dWx0UmFuZ2U7CisgICAgQ0ZJbmRleCByZXN1bHRDb3VudCA9IENGQXJyYXlHZXRDb3VudChyZXN1
bHRzLmdldCgpKTsKKyAgICBmb3IgKENGSW5kZXggaSA9IDA7IGkgPCByZXN1bHRDb3VudDsgaSsr
KSB7CisgICAgICAgIEREUmVzdWx0UmVmIHJlc3VsdCA9IChERFJlc3VsdFJlZilDRkFycmF5R2V0
VmFsdWVBdEluZGV4KHJlc3VsdHMuZ2V0KCksIGkpOworICAgICAgICBDRlJhbmdlIHJlc3VsdFJh
bmdlSW5Db250ZXh0ID0gRERSZXN1bHRHZXRSYW5nZShyZXN1bHQpOworICAgICAgICBpZiAoaGl0
TG9jYXRpb24gPj0gcmVzdWx0UmFuZ2VJbkNvbnRleHQubG9jYXRpb24gJiYgKGhpdExvY2F0aW9u
IC0gcmVzdWx0UmFuZ2VJbkNvbnRleHQubG9jYXRpb24pIDwgcmVzdWx0UmFuZ2VJbkNvbnRleHQu
bGVuZ3RoKSB7CisgICAgICAgICAgICBtYWluUmVzdWx0ID0gcmVzdWx0OworICAgICAgICAgICAg
bWFpblJlc3VsdFJhbmdlID0gVGV4dEl0ZXJhdG9yOjpzdWJyYW5nZShjb250ZXh0UmFuZ2UuZ2V0
KCksIHJlc3VsdFJhbmdlSW5Db250ZXh0LmxvY2F0aW9uLCByZXN1bHRSYW5nZUluQ29udGV4dC5s
ZW5ndGgpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAo
IW1haW5SZXN1bHQpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgUmV0YWluUHRyPERE
QWN0aW9uQ29udGV4dD4gYWN0aW9uQ29udGV4dCA9IGFkb3B0TlMoW2FsbG9jRERBY3Rpb25Db250
ZXh0SW5zdGFuY2UoKSBpbml0XSk7CisgICAgW2FjdGlvbkNvbnRleHQgc2V0QWxsUmVzdWx0czpA
WyAoaWQpbWFpblJlc3VsdCBdXTsKKyAgICBbYWN0aW9uQ29udGV4dCBzZXRNYWluUmVzdWx0Om1h
aW5SZXN1bHRdOworCisgICAgVmVjdG9yPEZsb2F0UXVhZD4gcXVhZHM7CisgICAgbWFpblJlc3Vs
dFJhbmdlLT5hYnNvbHV0ZVRleHRRdWFkcyhxdWFkcyk7CisgICAgZGV0ZWN0ZWREYXRhQm91bmRp
bmdCb3ggPSBGbG9hdFJlY3QoKTsKKyAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1haW5SZXN1
bHRSYW5nZS0+b3duZXJEb2N1bWVudCgpLnZpZXcoKTsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIHF1
YWQgOiBxdWFkcykKKyAgICAgICAgZGV0ZWN0ZWREYXRhQm91bmRpbmdCb3gudW5pdGUoZnJhbWVW
aWV3LT5jb250ZW50c1RvV2luZG93KHF1YWQuZW5jbG9zaW5nQm91bmRpbmdCb3goKSkpOworICAg
IAorICAgIGRldGVjdGVkRGF0YVJhbmdlID0gbWFpblJlc3VsdFJhbmdlOworICAgIAorICAgIHJl
dHVybiBhY3Rpb25Db250ZXh0OworfQorCitSZXRhaW5QdHI8RERBY3Rpb25Db250ZXh0PiBEYXRh
RGV0ZWN0aW9uOjpkZXRlY3RJdGVtQXJvdW5kSGl0VGVzdFJlc3VsdChjb25zdCBIaXRUZXN0UmVz
dWx0JiBoaXRUZXN0UmVzdWx0LCBGbG9hdFJlY3QmIGRldGVjdGVkRGF0YUJvdW5kaW5nQm94LCBS
ZWZQdHI8UmFuZ2U+JiBkZXRlY3RlZERhdGFSYW5nZSkKK3sKKyAgICBpZiAoIURhdGFEZXRlY3Rv
cnNMaWJyYXJ5KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgTm9kZSogbm9kZSA9
IGhpdFRlc3RSZXN1bHQuaW5uZXJOb25TaGFyZWROb2RlKCk7CisgICAgaWYgKCFub2RlKQorICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBhdXRvIHJlbmRlcmVyID0gbm9kZS0+cmVuZGVyZXIo
KTsKKyAgICBpZiAoIXJlbmRlcmVyKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFZp
c2libGVQb3NpdGlvbiBwb3NpdGlvbjsKKyAgICBSZWZQdHI8UmFuZ2U+IGNvbnRleHRSYW5nZTsK
KworICAgIGlmICghaXM8SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ+KCpub2RlKSkgeworICAg
ICAgICBwb3NpdGlvbiA9IHJlbmRlcmVyLT5wb3NpdGlvbkZvclBvaW50KGhpdFRlc3RSZXN1bHQu
bG9jYWxQb2ludCgpLCBudWxscHRyKTsKKyAgICAgICAgaWYgKHBvc2l0aW9uLmlzTnVsbCgpKQor
ICAgICAgICAgICAgcG9zaXRpb24gPSBmaXJzdFBvc2l0aW9uSW5PckJlZm9yZU5vZGUobm9kZSk7
CisKKyAgICAgICAgY29udGV4dFJhbmdlID0gcmFuZ2VFeHBhbmRlZEFyb3VuZFBvc2l0aW9uQnlD
aGFyYWN0ZXJzKHBvc2l0aW9uLCAyNTApOworICAgICAgICBpZiAoIWNvbnRleHRSYW5nZSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0gZWxzZSB7CisgICAgICAgIEZyYW1lKiBm
cmFtZSA9IG5vZGUtPmRvY3VtZW50KCkuZnJhbWUoKTsKKyAgICAgICAgaWYgKCFmcmFtZSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgICAgIEludFBvaW50IGZyYW1lUG9pbnQg
PSBoaXRUZXN0UmVzdWx0LnJvdW5kZWRQb2ludEluSW5uZXJOb2RlRnJhbWUoKTsKKyAgICAgICAg
aWYgKCFmcmFtZS0+cmFuZ2VGb3JQb2ludChmcmFtZVBvaW50KSkKKyAgICAgICAgICAgIHJldHVy
biBudWxscHRyOworCisgICAgICAgIFZpc2libGVQb3NpdGlvbiBwb3NpdGlvbiA9IGZyYW1lLT52
aXNpYmxlUG9zaXRpb25Gb3JQb2ludChmcmFtZVBvaW50KTsKKyAgICAgICAgaWYgKHBvc2l0aW9u
LmlzTnVsbCgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICAgICAgY29udGV4
dFJhbmdlID0gZW5jbG9zaW5nVGV4dFVuaXRPZkdyYW51bGFyaXR5KHBvc2l0aW9uLCBMaW5lR3Jh
bnVsYXJpdHksIERpcmVjdGlvbkZvcndhcmQpOworICAgICAgICBpZiAoIWNvbnRleHRSYW5nZSkK
KyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKworICAgIHJldHVybiBkZXRlY3RJ
dGVtQXRQb3NpdGlvbldpdGhSYW5nZShwb3NpdGlvbiwgY29udGV4dFJhbmdlLCBkZXRlY3RlZERh
dGFCb3VuZGluZ0JveCwgZGV0ZWN0ZWREYXRhUmFuZ2UpOworfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCisKKyNlbmRpZiAvLyBQTEFURk9STShNQUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1l
TG9hZGVyLmNwcAppbmRleCAwZmY1YjI5OWQ4YzYyYzA1YzAwMWNkMWMyNmZmNmU4MWQ4YTQ4N2Mx
Li5lMGFiMzRmY2I1NzQ2YjFmMjFmMWE0ZGJiNGM0NjU5ZmZjZmNiMWY3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTEyNSwxMCArMTI1LDYgQEAKICNpbmNsdWRlICJB
cmNoaXZlLmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSNpbmNsdWRl
ICJEYXRhRGV0ZWN0aW9uLmgiCi0jZW5kaWYKLQogI2lmIFBMQVRGT1JNKElPUykKICNpbmNsdWRl
ICJEb2N1bWVudFR5cGUuaCIKICNpbmNsdWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKQEAg
LTIyODEsMTIgKzIyNzcsNiBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjaGVja0xvYWRDb21wbGV0ZUZv
clRoaXNGcmFtZSgpCiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIG1fY2xp
ZW50LmRpc3BhdGNoRGlkRmluaXNoTG9hZCgpOwogICAgICAgICAgICAgICAgIGxvYWRpbmdFdmVu
dCA9IEFYT2JqZWN0Q2FjaGU6OkFYTG9hZGluZ0ZpbmlzaGVkOwotI2lmIEVOQUJMRShEQVRBX0RF
VEVDVElPTikKLSAgICAgICAgICAgICAgICBpZiAobV9mcmFtZS5zZXR0aW5ncygpLmRhdGFEZXRl
Y3RvclR5cGVzKCkgIT0gRGF0YURldGVjdG9yVHlwZU5vbmUpIHsKLSAgICAgICAgICAgICAgICAg
ICAgUmVmUHRyPFJhbmdlPiBkb2N1bWVudFJhbmdlID0gbWFrZVJhbmdlKGZpcnN0UG9zaXRpb25J
bk5vZGUobV9mcmFtZS5kb2N1bWVudCgpLT5kb2N1bWVudEVsZW1lbnQoKSksIGxhc3RQb3NpdGlv
bkluTm9kZShtX2ZyYW1lLmRvY3VtZW50KCktPmRvY3VtZW50RWxlbWVudCgpKSk7Ci0gICAgICAg
ICAgICAgICAgICAgIERhdGFEZXRlY3Rpb246OmRldGVjdENvbnRlbnRJblJhbmdlKGRvY3VtZW50
UmFuZ2UsIG1fZnJhbWUuc2V0dGluZ3MoKS5kYXRhRGV0ZWN0b3JUeXBlcygpKTsKLSAgICAgICAg
ICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgLy8gTm90aWZ5
IGFjY2Vzc2liaWxpdHkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgKaW5kZXggOGI2NTMyOGIyMDM3Yzg4
NTZiY2U3YWI5NjIzZmNlYmI4ZWFkNjE4ZC4uMDRhNzhlYTdkYmFhMDcwZGJkNTI5YjIwMDIwMzZj
Y2ZkMzM5YzAxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaApAQCAtNDIsMTAgKzQyLDYgQEAKICNp
bmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9t
aWNTdHJpbmdIYXNoLmg+CiAKLSNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCi0jaW5jbHVkZSAi
RGF0YURldGVjdGlvbi5oIgotI2VuZGlmCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3Mg
Rm9udEdlbmVyaWNGYW1pbGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaW4gYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmluCmluZGV4IGI1NGY4ZDMx
ZDdkOTZkOGQ0NzM5NjI2YmY4ZmNjODM2MWQ1NjI4NTguLjk4YzVlM2NhN2ExZDI5NWE4MmMwMDc4
NWY3OWNmODk0YmNiYTY1YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGlu
Z3MuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5pbgpAQCAtMjI4LDcgKzIy
OCw2IEBAIGFnZ3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZCBpbml0aWFsPWZhbHNlCiB0ZW1w
b3JhcnlUaWxlQ29ob3J0UmV0ZW50aW9uRW5hYmxlZCBpbml0aWFsPXRydWUKIAogdXNlSW1hZ2VE
b2N1bWVudEZvclN1YmZyYW1lUERGIGluaXRpYWw9ZmFsc2UKLWRhdGFEZXRlY3RvclR5cGVzIHR5
cGU9RGF0YURldGVjdG9yVHlwZXMsIGluaXRpYWw9RGF0YURldGVjdG9yVHlwZU5vbmUsIGNvbmRp
dGlvbmFsPURBVEFfREVURUNUSU9OCiAKICMgQWxsb3cgU291cmNlQnVmZmVycyB0byBzdG9yZSB1
cCB0byAzMDRNQiBlYWNoLCBlbm91Z2ggZm9yIGFwcHJveGltYXRlbHkgZml2ZSBtaW51dGVzCiAj
IG9mIDEwODBwIHZpZGVvIGFuZCBzdGVyZW8gYXVkaW8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9zcGkvbWFjL0RhdGFEZXRlY3RvcnNTUEkuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3NwaS9tYWMvRGF0YURldGVjdG9yc1NQSS5oCmluZGV4IDEzY2U2NzQyNTFkYzVm
OTc4YzUxN2RlMTJkZGY0OGE0MmM1MzIyYzYuLjYwMGE2MzA5YzlmYzVmNWU2OWNjMjc4NDQyMzU4
ODM4NTdiMWRiYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9tYWMv
RGF0YURldGVjdG9yc1NQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9tYWMv
RGF0YURldGVjdG9yc1NQSS5oCkBAIC0yNSwxMiArMjUsMTEgQEAKIAogI2ltcG9ydCA8d3RmL1Bs
YXRmb3JtLmg+CiAKKyNpZiBQTEFURk9STShNQUMpCiAKICNpbXBvcnQgPFdlYkNvcmUvRGF0YURl
dGVjdG9yc0NvcmVTUEkuaD4KICNpbXBvcnQgPFdlYkNvcmUvU29mdExpbmtpbmcuaD4KIAotI2lm
IFBMQVRGT1JNKE1BQykKLQogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCiAKIC8vIENhbid0
IGluY2x1ZGUgRERBY3Rpb24uaCBiZWNhdXNlIGFzIG9mIHRoaXMgd3JpdGluZyBpdCBpcyBhIHBy
aXZhdGUgaGVhZGVyIHRoYXQgaW5jbHVkZXMgYSBub24tcHJpdmF0ZSBoZWFkZXIgd2l0aCBhbiAi
IiBpbmNsdWRlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwppbmRleCA1N2JjZGQ0ZDU1ZmZlOTNkZWM0MjM2ZWM5
ODI4ZDEwNjEyOGVmOGFhLi40OTI3Y2VhNzMyMGI1NWEyMzBmNjM1YjE0OWFhMmQ2Y2QyOWM1NTg5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0
dXJlRGVmaW5lcy54Y2NvbmZpZwpAQCAtMTExLDcgKzExMSw2IEBAIEVOQUJMRV9NQUNfR0VTVFVS
RV9FVkVOVFNbc2RrPW1hY29zeCpdID0gJChFTkFCTEVfTUFDX0dFU1RVUkVfRVZFTlRTX21hY29z
eF9XSVRICiBFTkFCTEVfTUFDX0dFU1RVUkVfRVZFTlRTX21hY29zeF9XSVRIX0lOVEVSTkFMX1NE
S19ZRVMgPSBFTkFCTEVfTUFDX0dFU1RVUkVfRVZFTlRTOwogCiBFTkFCTEVfSU9TX1RFWFRfQVVU
T1NJWklOR1tzZGs9aXBob25lKl0gPSBFTkFCTEVfSU9TX1RFWFRfQVVUT1NJWklORzsKLUVOQUJM
RV9EQVRBX0RFVEVDVElPTiA9IEVOQUJMRV9EQVRBX0RFVEVDVElPTjsKIAogRU5BQkxFX0lPU19U
T1VDSF9FVkVOVFNbc2RrPWlwaG9uZSpdID0gJChFTkFCTEVfSU9TX1RPVUNIX0VWRU5UU19pb3Nf
V0lUSF9JTlRFUk5BTF9TREtfJChVU0VfSU5URVJOQUxfU0RLKSk7CiBFTkFCTEVfSU9TX1RPVUNI
X0VWRU5UU19pb3NfV0lUSF9JTlRFUk5BTF9TREtfWUVTID0gRU5BQkxFX0lPU19UT1VDSF9FVkVO
VFM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZp
bmVzLnhjY29uZmlnCmluZGV4IDU3YmNkZDRkNTVmZmU5M2RlYzQyMzZlYzk4MjhkMTA2MTI4ZWY4
YWEuLjQ5MjdjZWE3MzIwYjU1YTIzMGY2MzViMTQ5YWEyZDZjZDI5YzU1ODkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisr
KyBiL1NvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmln
CkBAIC0xMTEsNyArMTExLDYgQEAgRU5BQkxFX01BQ19HRVNUVVJFX0VWRU5UU1tzZGs9bWFjb3N4
Kl0gPSAkKEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFNfbWFjb3N4X1dJVEgKIEVOQUJMRV9NQUNf
R0VTVFVSRV9FVkVOVFNfbWFjb3N4X1dJVEhfSU5URVJOQUxfU0RLX1lFUyA9IEVOQUJMRV9NQUNf
R0VTVFVSRV9FVkVOVFM7CiAKIEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HW3Nkaz1pcGhvbmUq
XSA9IEVOQUJMRV9JT1NfVEVYVF9BVVRPU0laSU5HOwotRU5BQkxFX0RBVEFfREVURUNUSU9OID0g
RU5BQkxFX0RBVEFfREVURUNUSU9OOwogCiBFTkFCTEVfSU9TX1RPVUNIX0VWRU5UU1tzZGs9aXBo
b25lKl0gPSAkKEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRTX2lvc19XSVRIX0lOVEVSTkFMX1NES18k
KFVTRV9JTlRFUk5BTF9TREspKTsKIEVOQUJMRV9JT1NfVE9VQ0hfRVZFTlRTX2lvc19XSVRIX0lO
VEVSTkFMX1NES19ZRVMgPSBFTkFCTEVfSU9TX1RPVUNIX0VWRU5UUzsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0RlZmluaXRpb25zLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oCmluZGV4IDBhYmM0Y2I4
ZDU4NmJkYjZiY2JiNDkyNGY0Y2Q0MzRiOGZmMWQxZmIuLjhjODZmNzExMmUyYjE5MmI4Mzc4NGJk
ODQzNDI3MmViYjQ5NGQxNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQ
cmVmZXJlbmNlc0RlZmluaXRpb25zLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlBy
ZWZlcmVuY2VzRGVmaW5pdGlvbnMuaApAQCAtMjM5LDcgKzIzOSw2IEBACiAgICAgbWFjcm8oSW5z
cGVjdG9yQXR0YWNobWVudFNpZGUsIGluc3BlY3RvckF0dGFjaG1lbnRTaWRlLCBVSW50MzIsIHVp
bnQzMl90LCAwKSBcCiAgICAgbWFjcm8oU3RvcmFnZUJsb2NraW5nUG9saWN5LCBzdG9yYWdlQmxv
Y2tpbmdQb2xpY3ksIFVJbnQzMiwgdWludDMyX3QsIFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luOjpC
bG9ja1RoaXJkUGFydHlTdG9yYWdlKSBcCiAgICAgbWFjcm8oSmF2YVNjcmlwdFJ1bnRpbWVGbGFn
cywgamF2YVNjcmlwdFJ1bnRpbWVGbGFncywgVUludDMyLCB1aW50MzJfdCwgMCkgXAotICAgIG1h
Y3JvKERhdGFEZXRlY3RvclR5cGVzLCBkYXRhRGV0ZWN0b3JUeXBlcywgVUludDMyLCB1aW50MzJf
dCwgMCkgXAogICAgIFwKIAogI2RlZmluZSBGT1JfRUFDSF9XRUJLSVRfREVCVUdfQk9PTF9QUkVG
RVJFTkNFKG1hY3JvKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3Lm1tCmluZGV4IGM1NmQ3MjM2NTQxYTg3NzNlNWUyMDg4NTUwZDA1NzI4ZmJlY2Iw
NTUuLjRiOGRmOTVjZjk0MDAyMzU2YjU3YjhiYzhjMmQ0M2FhZjliYzdmMWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC0zODMsOSAr
MzgzLDYgQEAgc3RhdGljIGJvb2wgc2hvdWxkQWxsb3dQaWN0dXJlSW5QaWN0dXJlTWVkaWFQbGF5
YmFjaygpCiAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnByZWZlcmVuY2VWYWx1ZXMoKS5zZXQoV2Vi
S2l0OjpXZWJQcmVmZXJlbmNlc0tleTo6aW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWRLZXko
KSwgV2ViS2l0OjpXZWJQcmVmZXJlbmNlc1N0b3JlOjpWYWx1ZSghIVtfY29uZmlndXJhdGlvbiBf
aW52aXNpYmxlQXV0b3BsYXlOb3RQZXJtaXR0ZWRdKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24t
PnByZWZlcmVuY2VWYWx1ZXMoKS5zZXQoV2ViS2l0OjpXZWJQcmVmZXJlbmNlc0tleTo6bWVkaWFE
YXRhTG9hZHNBdXRvbWF0aWNhbGx5S2V5KCksIFdlYktpdDo6V2ViUHJlZmVyZW5jZXNTdG9yZTo6
VmFsdWUoISFbX2NvbmZpZ3VyYXRpb24gX21lZGlhRGF0YUxvYWRzQXV0b21hdGljYWxseV0pKTsK
ICNlbmRpZgotI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSAgICBwYWdlQ29uZmlndXJhdGlv
bi0+cHJlZmVyZW5jZVZhbHVlcygpLnNldChXZWJLaXQ6OldlYlByZWZlcmVuY2VzS2V5OjpkYXRh
RGV0ZWN0b3JUeXBlc0tleSgpLCBXZWJLaXQ6OldlYlByZWZlcmVuY2VzU3RvcmU6OlZhbHVlKHN0
YXRpY19jYXN0PHVpbnQzMl90PihbX2NvbmZpZ3VyYXRpb24gZGF0YURldGVjdG9yVHlwZXNdKSkp
OwotI2VuZGlmCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKICAgICBwYWdl
Q29uZmlndXJhdGlvbi0+cHJlZmVyZW5jZVZhbHVlcygpLnNldChXZWJLaXQ6OldlYlByZWZlcmVu
Y2VzS2V5OjphbGxvd3NBaXJQbGF5Rm9yTWVkaWFQbGF5YmFja0tleSgpLCBXZWJLaXQ6OldlYlBy
ZWZlcmVuY2VzU3RvcmU6OlZhbHVlKCEhW19jb25maWd1cmF0aW9uIGFsbG93c0FpclBsYXlGb3JN
ZWRpYVBsYXliYWNrXSkpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24uaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oCmluZGV4IDI3YTZh
Mjc2YjRlNjk2ZTFjOWYyNDliZTFkMzI3MmYyNDVlZWIzNTguLmZlN2FjNzg0M2IzZDA4NmVlZTQ3
MzY3N2VmYTBiZDQ2NzAyYWIzY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5oCkBAIC01MSwyNSAr
NTEsNiBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBXS1NlbGVjdGlvbkdyYW51bGFyaXR5
KSB7CiB9IFdLX0VOVU1fQVZBSUxBQkxFX0lPUyg4XzApOwogI2VuZGlmCiAKLS8qISBAZW51bSBX
S0RhdGFEZXRlY3RvclR5cGVzCi0gQGFic3RyYWN0IFRoZSB0eXBlIG9mIGRldGVjdGlvbiBkZXNp
cmVkLgotIEBjb25zdGFudCBXS0RhdGFEZXRlY3RvclR5cGVOb25lIE5vIGRldGVjdGlvbiBpcyBw
ZXJmb3JtZWQuCi0gQGNvbnN0YW50IFdLRGF0YURldGVjdG9yVHlwZVBob25lTnVtYmVyIFBob25l
IG51bWJlcnMgYXJlIGRldGVjdGVkIGFuZCB0dXJuZWQgaW50byBsaW5rcy4KLSBAY29uc3RhbnQg
V0tEYXRhRGV0ZWN0b3JUeXBlTGluayBVUkxzIGluIHRleHQgYXJlIGRldGVjdGVkIGFuZCB0dXJu
ZWQgaW50byBsaW5rcy4KLSBAY29uc3RhbnQgV0tEYXRhRGV0ZWN0b3JUeXBlQWRkcmVzcyBBZGRy
ZXNzZXMgYXJlIGRldGVjdGVkIGFuZCB0dXJuZWQgaW50byBsaW5rcy4KLSBAY29uc3RhbnQgV0tE
YXRhRGV0ZWN0b3JUeXBlQ2FsZW5kYXJFdmVudCBEYXRlcyBhbmQgdGltZXMgdGhhdCBhcmUgaW4g
dGhlIGZ1dHVyZSBhcmUgZGV0ZWN0ZWQgYW5kIHR1cm5lZCBpbnRvIGxpbmtzLgotIEBjb25zdGFu
dCBXS0RhdGFEZXRlY3RvclR5cGVBbGwgQWxsIG9mIHRoZSBhYm92ZSBkYXRhIHR5cGVzIGFyZSB0
dXJuZWQgaW50byBsaW5rcyB3aGVuIGRldGVjdGVkLiBDaG9vc2luZyB0aGlzIHZhbHVlIHdpbGwK
LSBhdXRvbWF0aWNhbGx5IGluY2x1ZGUgYW55IG5ldyBkZXRlY3Rpb24gdHlwZSB0aGF0IGlzIGFk
ZGVkLgotICovCi10eXBlZGVmIE5TX09QVElPTlMoTlNVSW50ZWdlciwgV0tEYXRhRGV0ZWN0b3JU
eXBlcykgewotICAgIFdLRGF0YURldGVjdG9yVHlwZU5vbmUgPSAwLAotICAgIFdLRGF0YURldGVj
dG9yVHlwZVBob25lTnVtYmVyID0gMSA8PCAwLAotICAgIFdLRGF0YURldGVjdG9yVHlwZUxpbmsg
PSAxIDw8IDEsCi0gICAgV0tEYXRhRGV0ZWN0b3JUeXBlQWRkcmVzcyA9IDEgPDwgMiwKLSAgICBX
S0RhdGFEZXRlY3RvclR5cGVDYWxlbmRhckV2ZW50ID0gMSA8PCAzLAotICAgIFdLRGF0YURldGVj
dG9yVHlwZUFsbCA9IE5TVUludGVnZXJNYXgKLX0gV0tfRU5VTV9BVkFJTEFCTEUoV0tfTUFDX1RC
QSwgV0tfSU9TX1RCQSk7Ci0KIC8qISBBIFdLV2ViVmlld0NvbmZpZ3VyYXRpb24gb2JqZWN0IGlz
IGEgY29sbGVjdGlvbiBvZiBwcm9wZXJ0aWVzIHdpdGgKICB3aGljaCB0byBpbml0aWFsaXplIGEg
d2ViIHZpZXcuCiAgQGhlbHBzIENvbnRhaW5zIHByb3BlcnRpZXMgdXNlZCB0byBjb25maWd1cmUg
YSBAbGluayBXS1dlYlZpZXcgQC9saW5rLgpAQCAtMTEyLDE1ICs5Myw2IEBAIFdLX0NMQVNTX0FW
QUlMQUJMRSgxMF8xMCwgOF8wKQogICovCiBAcHJvcGVydHkgKG5vbmF0b21pYykgQk9PTCBhbGxv
d3NBaXJQbGF5Rm9yTWVkaWFQbGF5YmFjayBXS19BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiAKLS8q
ISBAYWJzdHJhY3QgQW4gZW51bSB2YWx1ZSBpbmRpY2F0aW5nIHRoZSB0eXBlIG9mIGRhdGEgZGV0
ZWN0aW9uIGRlc2lyZWQuCi0gQGRpc2N1c3Npb24gVGhlIGRlZmF1bHQgdmFsdWUgaXMgV0tEYXRh
RGV0ZWN0b3JUeXBlTm9uZS4KLSBBbiBleGFtcGxlIG9mIGhvdyB0aGlzIHByb3BlcnR5IG1heSBh
ZmZlY3QgdGhlIGNvbnRlbnQgbG9hZGVkIGluIHRoZSBXS1dlYlZpZXcgaXMgdGhhdCBjb250ZW50
IGxpa2UKLSAnVmlzaXQgYXBwbGUuY29tIG9uIEp1bHkgNHRoIG9yIGNhbGwgMSA4MDAgNTU1LTU1
NDUnIHdpbGwgYmUgdHJhbnNmb3JtZWQgdG8gYWRkIGxpbmtzIGFyb3VuZCAnYXBwbGUuY29tJywg
J0p1bHkgNHRoJyBhbmQgJzEgODAwIDU1NS01NTQ1JwotIGlmIHRoZSBkYXRhRGV0ZWN0b3JUeXBl
cyBwcm9wZXJ0eSBpcyBzZXQgdG8gV0tEYXRhRGV0ZWN0b3JUeXBlUGhvbmVOdW1iZXIgfCBXS0Rh
dGFEZXRlY3RvclR5cGVMaW5rIHwgV0tEYXRhRGV0ZWN0b3JUeXBlQ2FsZW5kYXJFdmVudC4KLQot
ICovCi1AcHJvcGVydHkgKG5vbmF0b21pYykgV0tEYXRhRGV0ZWN0b3JUeXBlcyBkYXRhRGV0ZWN0
b3JUeXBlcyBXS19BVkFJTEFCTEUoV0tfTUFDX1RCQSwgV0tfSU9TX1RCQSk7Ci0KICNpZiBUQVJH
RVRfT1NfSVBIT05FCiAvKiEgQGFic3RyYWN0IEEgQm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIHdo
ZXRoZXIgSFRNTDUgdmlkZW9zIHBsYXkgaW5saW5lCiAgKFlFUykgb3IgdXNlIHRoZSBuYXRpdmUg
ZnVsbC1zY3JlZW4gY29udHJvbGxlciAoTk8pLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tCmluZGV4
IGVlMWZiMmQ2NDA4ZDM0YTQ5YmJlMGViMjFlY2VkNjMyYjY0N2MxMWYuLmZhMWY0NGZiMTEzNjhi
ZmZmYTlmMjY5MDgxNDhkMjhjYzQ0NzM2MDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0KQEAg
LTE5OCw5ICsxOTgsNiBAQCBwcml2YXRlOgogICAgIGNvbmZpZ3VyYXRpb24tPl9zZXJ2aWNlQ29u
dHJvbHNFbmFibGVkID0gc2VsZi0+X3NlcnZpY2VDb250cm9sc0VuYWJsZWQ7CiAgICAgY29uZmln
dXJhdGlvbi0+X2ltYWdlQ29udHJvbHNFbmFibGVkID0gc2VsZi0+X2ltYWdlQ29udHJvbHNFbmFi
bGVkOwogI2VuZGlmCi0jaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQotICAgIGNvbmZpZ3VyYXRp
b24tPl9kYXRhRGV0ZWN0b3JUeXBlcyA9IHNlbGYtPl9kYXRhRGV0ZWN0b3JUeXBlczsKLSNlbmRp
ZgogI2lmIEVOQUJMRShXSVJFTEVTU19UQVJHRVRfUExBWUJBQ0spCiAgICAgY29uZmlndXJhdGlv
bi0+X2FsbG93c0FpclBsYXlGb3JNZWRpYVBsYXliYWNrID0gc2VsZi0+X2FsbG93c0FpclBsYXlG
b3JNZWRpYVBsYXliYWNrOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJL
aXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDY3Yjc4MmU1M2U5NzQ2NWIzNDJjYzY5YWYz
YjZmOGNhOWRhMTUwYi4uYjM2OTc2ZmQ5NmIzMGQ1MDhhZjZiNmU2NTE1OWRiZTYzNzU5M2Y4OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMTY4OSw3ICsxNjg5LDYgQEAKIAkJQzU0MjU2QjgxOEJFQzE4QzAwREU0MTc5IC8qIFdL
Rm9ybVBvcG92ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEM1NDI1NkIyMThCRUMxOEIwMERFNDE3OSAvKiBXS0Zvcm1Qb3BvdmVyLmggKi87IH07CiAJ
CUM1NDI1NkI5MThCRUMxOEMwMERFNDE3OSAvKiBXS0Zvcm1Qb3BvdmVyLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzU0MjU2QjMxOEJFQzE4QjAwREU0
MTc5IC8qIFdLRm9ybVBvcG92ZXIubW0gKi87IH07CiAJCUM1NDI1NkJBMThCRUMxOEMwMERFNDE3
OSAvKiBXS0Zvcm1TZWxlY3RDb250cm9sLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDNTQyNTZCNDE4QkVDMThDMDBERTQxNzkgLyogV0tGb3JtU2VsZWN0
Q29udHJvbC5oICovOyB9OwotCQlDNTU0QTMxMzFDNDlDMzY0MDBBMzg4RkUgLyogV2ViUGFnZUNv
Y29hLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzU1
NEEzMTExQzQ5QkNDQjAwQTM4OEZFIC8qIFdlYlBhZ2VDb2NvYS5tbSAqLzsgfTsKIAkJQzU1Q0I1
QjcxOEMyNjlDRjAwQ0E4MUUxIC8qIFdLRm9ybVNlbGVjdFBvcG92ZXIubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNTcxOTNCQTE4QzE0OUQwMDAyRDBG
MTIgLyogV0tGb3JtU2VsZWN0UG9wb3Zlci5tbSAqLzsgfTsKIAkJQzU1Q0I1QjgxOEMyQTVENjAw
Q0E4MUUxIC8qIFdLRm9ybVNlbGVjdFBpY2tlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1NzE5M0I5MThDMTQ5RDAwMDJEMEYxMiAvKiBXS0Zvcm1T
ZWxlY3RQaWNrZXIubW0gKi87IH07CiAJCUM1NzE5M0JFMThDMTRBNDQwMDJEMEYxMiAvKiBXS0Zv
cm1TZWxlY3RDb250cm9sLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzU3MTkzQkQxOEMxNEE0MzAwMkQwRjEyIC8qIFdLRm9ybVNlbGVjdENvbnRyb2wu
bW0gKi87IH07CkBAIC0zOTMzLDcgKzM5MzIsNiBAQAogCQlDNTQyNTZCMjE4QkVDMThCMDBERTQx
NzkgLyogV0tGb3JtUG9wb3Zlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBX
S0Zvcm1Qb3BvdmVyLmg7IHBhdGggPSBpb3MvZm9ybXMvV0tGb3JtUG9wb3Zlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDNTQyNTZCMzE4QkVDMThCMDBERTQxNzkgLyogV0tGb3Jt
UG9wb3Zlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdLRm9y
bVBvcG92ZXIubW07IHBhdGggPSBpb3MvZm9ybXMvV0tGb3JtUG9wb3Zlci5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzU0MjU2QjQxOEJFQzE4QzAwREU0MTc5IC8qIFdLRm9ybVNl
bGVjdENvbnRyb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0tGb3JtU2Vs
ZWN0Q29udHJvbC5oOyBwYXRoID0gaW9zL2Zvcm1zL1dLRm9ybVNlbGVjdENvbnRyb2wuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQzU1NEEzMTExQzQ5QkNDQjAwQTM4OEZFIC8qIFdl
YlBhZ2VDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdl
YlBhZ2VDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzU1NEZGQTIxMkU0
RThFQTAwMkYyMkMwIC8qIFdlYkRyYWdDbGllbnRNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBXZWJEcmFnQ2xpZW50TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlDNTcxOTNCOTE4QzE0OUQwMDAyRDBGMTIgLyogV0tGb3JtU2VsZWN0UGlj
a2VyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV0tGb3JtU2Vs
ZWN0UGlja2VyLm1tOyBwYXRoID0gaW9zL2Zvcm1zL1dLRm9ybVNlbGVjdFBpY2tlci5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzU3MTkzQkExOEMxNDlEMDAwMkQwRjEyIC8qIFdL
Rm9ybVNlbGVjdFBvcG92ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5h
bWUgPSBXS0Zvcm1TZWxlY3RQb3BvdmVyLm1tOyBwYXRoID0gaW9zL2Zvcm1zL1dLRm9ybVNlbGVj
dFBvcG92ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC01MDkwLDcgKzUwODgs
NiBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJMkQyOUVDQ0UxOTJGMkMyRTAwOTg0Qjc4IC8qIFJl
bW90ZUxheWVyVHJlZURpc3BsYXlSZWZyZXNoTW9uaXRvci5oICovLAogCQkJCTJEMjlFQ0NGMTky
RjJDMkUwMDk4NEI3OCAvKiBSZW1vdGVMYXllclRyZWVEaXNwbGF5UmVmcmVzaE1vbml0b3IubW0g
Ki8sCi0JCQkJQzU1NEEzMTExQzQ5QkNDQjAwQTM4OEZFIC8qIFdlYlBhZ2VDb2NvYS5tbSAqLywK
IAkJCSk7CiAJCQlwYXRoID0gQ29jb2E7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAt
OTM5NSw3ICs5MzkyLDYgQEAKIAkJCQkyRDg3ODYyMzFCREI1OEZGMDBEMDJBQkIgLyogQVBJVXNl
clN0eWxlU2hlZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVFMUFGRUMxNkIyMTAxMjAwNkND
MUYyIC8qIEFQSVdlYkFyY2hpdmUubW0gaW4gU291cmNlcyAqLywKIAkJCQlDNUUxQUZFRTE2QjIx
MDI1MDA2Q0MxRjIgLyogQVBJV2ViQXJjaGl2ZVJlc291cmNlLm1tIGluIFNvdXJjZXMgKi8sCi0J
CQkJQzU1NEEzMTMxQzQ5QzM2NDAwQTM4OEZFIC8qIFdlYlBhZ2VDb2NvYS5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCTFBNDgzMkM3MUE5QkMxM0MwMDhCNERGRSAvKiBBUElXZWJzaXRlRGF0YVJlY29y
ZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQTM2MzVBOTFBMzE0NEEzMDBFRDYxOTcgLyogQVBJ
V2Vic2l0ZURhdGFTdG9yZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQTM2MzVBRDFBMzE0NUU1
MDBFRDYxOTcgLyogQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tIGluIFNvdXJjZXMgKi8sCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFn
ZUNvY29hLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0NvY29hL1dlYlBh
Z2VDb2NvYS5tbQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGY3MzM0NzgzNzE3MzVi
OGM1ZTFjOWQ3ZGIxZjdhZTc2MDEzMmJjMC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2Ev
V2ViUGFnZUNvY29hLm1tCisrKyAvZGV2L251bGwKQEAgLTEsNTcgKzAsMCBAQAotLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMCwgMjAxMSwgMjAxMiwgMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
LSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
LSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0g
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiV2ViUGFn
ZS5oIgotCi0jaW1wb3J0ICJXS1dlYlZpZXdDb25maWd1cmF0aW9uLmgiCi0KLXVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotI2lmIEVOQUJMRShEQVRBX0RF
VEVDVElPTikKLURhdGFEZXRlY3RvclR5cGVzIFdlYlBhZ2U6OmZyb21XS0RhdGFEZXRlY3RvclR5
cGVzKHVpbnQzMl90IHR5cGVzKQotewotICAgIGlmIChzdGF0aWNfY2FzdDxXS0RhdGFEZXRlY3Rv
clR5cGVzPih0eXBlcykgPT0gV0tEYXRhRGV0ZWN0b3JUeXBlTm9uZSkKLSAgICAgICAgcmV0dXJu
IERhdGFEZXRlY3RvclR5cGVOb25lOwotICAgIGlmIChzdGF0aWNfY2FzdDxXS0RhdGFEZXRlY3Rv
clR5cGVzPih0eXBlcykgPT0gV0tEYXRhRGV0ZWN0b3JUeXBlQWxsKQotICAgICAgICByZXR1cm4g
RGF0YURldGVjdG9yVHlwZUFsbDsKLSAgICAKLSAgICB1aW50MzJfdCB2YWx1ZSA9IERhdGFEZXRl
Y3RvclR5cGVOb25lOwotICAgIGlmICh0eXBlcyAmIFdLRGF0YURldGVjdG9yVHlwZVBob25lTnVt
YmVyKQotICAgICAgICB2YWx1ZSB8PSBEYXRhRGV0ZWN0b3JUeXBlUGhvbmVOdW1iZXI7Ci0gICAg
aWYgKHR5cGVzICYgV0tEYXRhRGV0ZWN0b3JUeXBlTGluaykKLSAgICAgICAgdmFsdWUgfD0gRGF0
YURldGVjdG9yVHlwZUxpbms7Ci0gICAgaWYgKHR5cGVzICYgV0tEYXRhRGV0ZWN0b3JUeXBlQWRk
cmVzcykKLSAgICAgICAgdmFsdWUgfD0gRGF0YURldGVjdG9yVHlwZUFkZHJlc3M7Ci0gICAgaWYg
KHR5cGVzICYgV0tEYXRhRGV0ZWN0b3JUeXBlQ2FsZW5kYXJFdmVudCkKLSAgICAgICAgdmFsdWUg
fD0gRGF0YURldGVjdG9yVHlwZUNhbGVuZGFyRXZlbnQ7Ci0gICAgCi0gICAgcmV0dXJuIHN0YXRp
Y19jYXN0PERhdGFEZXRlY3RvclR5cGVzPih2YWx1ZSk7Ci19Ci0jZW5kaWYKLQotfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5jcHAKaW5kZXggZTk0M2ViOWM5MmY3NTAwMTc5YmQyMDJhNTU0OGY4NzA0NmM0MTRmYy4uYzYw
Y2UyNzBlMDdmNGM5OGNhNDZlMDY1YTI1ZDZkYWYwOGJmMmY4NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjE5LDEwICsyMTksNiBAQAog
I2luY2x1ZGUgIkNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdE1lc3NhZ2VzLmgiCiAjZW5kaWYKIAot
I2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSNpbmNsdWRlIDxXZWJDb3JlL0RhdGFEZXRlY3Rp
b24uaD4KLSNlbmRpZgotCiAjaWYgRU5BQkxFKFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQogI2lu
Y2x1ZGUgPFdlYkNvcmUvTWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVnaW5zQ2Fs
bGJhY2suaD4KICNlbmRpZgpAQCAtMjkzOSw5ICsyOTM1LDYgQEAgdm9pZCBXZWJQYWdlOjp1cGRh
dGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJiBzdG9yZSkKICAgICBzZXR0
aW5ncy5zZXRVc2VJbWFnZURvY3VtZW50Rm9yU3ViZnJhbWVQREYodHJ1ZSk7CiAjZW5kaWYKIAot
I2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSAgICBzZXR0aW5ncy5zZXREYXRhRGV0ZWN0b3JU
eXBlcyhmcm9tV0tEYXRhRGV0ZWN0b3JUeXBlcyhzdG9yZS5nZXRVSW50MzJWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6ZGF0YURldGVjdG9yVHlwZXNLZXkoKSkpKTsKLSNlbmRpZgogI2lm
IEVOQUJMRShHQU1FUEFEKQogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1
cmVzKCkuc2V0R2FtZXBhZHNFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVm
ZXJlbmNlc0tleTo6Z2FtZXBhZHNFbmFibGVkS2V5KCkpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggYjVjOTkyNjVjNDJhYzc0Zjg1
MmI1ZDhiYjRiMTU5NTM1YzY1MGI3OS4uZTE3NGVmZjFiODFiOTkwZmNlYjI5MWUxZWFmOWFkNjg1
NGIzMWYwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5o
CkBAIC05MSwxMCArOTEsNiBAQAogI2ltcG9ydCAiV2ViUGFnZU1lc3NhZ2VzLmgiCiAjZW5kaWYK
IAotI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKLSNpbmNsdWRlIDxXZWJDb3JlL0RhdGFEZXRl
Y3Rpb24uaD4KLSNlbmRpZgotCiAjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCiAjaW5jbHVk
ZSA8V2ViS2l0QWRkaXRpb25zL1BsYXRmb3JtVG91Y2hFdmVudElPUy5oPgogI2VsaWYgRU5BQkxF
KFRPVUNIX0VWRU5UUykKQEAgLTEwNjYsOSArMTA2Miw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBk
cmF3UERGRG9jdW1lbnQoQ0dDb250ZXh0UmVmLCBQREZEb2N1bWVudCAqLCBjb25zdCBQcmludElu
Zm8mLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAgICAgdm9pZCBkcmF3UGFnZXNUb1BERkZy
b21QREZEb2N1bWVudChDR0NvbnRleHRSZWYsIFBERkRvY3VtZW50ICosIGNvbnN0IFByaW50SW5m
byYsIHVpbnQzMl90IGZpcnN0LCB1aW50MzJfdCBjb3VudCk7CiAjZW5kaWYKLSNpZiBFTkFCTEUo
REFUQV9ERVRFQ1RJT04pCi0gICAgV2ViQ29yZTo6RGF0YURldGVjdG9yVHlwZXMgZnJvbVdLRGF0
YURldGVjdG9yVHlwZXModWludDMyX3QgdHlwZXMpOwotI2VuZGlmCiAKICAgICB2b2lkIHNldE1h
aW5GcmFtZUlzU2Nyb2xsYWJsZShib29sKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>