<?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>176614</bug_id>
          
          <creation_ts>2017-09-08 10:07:26 -0700</creation_ts>
          <short_desc>REGRESSION(r221773): This caused build failures. (Requested by mlewis13 on #webkit).</short_desc>
          <delta_ts>2017-09-27 12:35:38 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>176472</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>aestes</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jlewis3</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1346838</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-08 10:07:26 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/221773 broke the build:
This caused build failures. (Requested by mlewis13 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>1346840</commentid>
    <comment_count>1</comment_count>
      <attachid>320272</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-08 10:07:35 -0700</bug_when>
    <thetext>Created attachment 320272
ROLLOUT of r221773

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>1346843</commentid>
    <comment_count>2</comment_count>
      <attachid>320272</attachid>
    <who name="Matt Lewis">jlewis3</who>
    <bug_when>2017-09-08 10:10:00 -0700</bug_when>
    <thetext>Comment on attachment 320272
ROLLOUT of r221773

Landing rollout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1346845</commentid>
    <comment_count>3</comment_count>
      <attachid>320272</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-08 10:11:14 -0700</bug_when>
    <thetext>Comment on attachment 320272
ROLLOUT of r221773

Rejecting attachment 320272 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 320272, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
ing rebase:
:040000 040000 79f953286e21c01b9ce31bea64f3bcd8d940b601 5f584218e40d75a9c39c52b76fd648459857f264 M	Source
Current branch master is up to date.
ERROR: Not all changes have been committed into SVN, however the committed
ones (if any) seem to be successfully integrated into the working tree.
Please see the above messages for details.


Failed to run &quot;[&apos;git&apos;, &apos;svn&apos;, &apos;dcommit&apos;, &apos;--rmdir&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit
Updating OpenSource
Current branch master is up to date.

Full output: http://webkit-queues.webkit.org/results/4488421</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1346901</commentid>
    <comment_count>4</comment_count>
      <attachid>320272</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-08 12:03:57 -0700</bug_when>
    <thetext>Comment on attachment 320272
ROLLOUT of r221773

Clearing flags on attachment: 320272

Committed r221794: &lt;http://trac.webkit.org/changeset/221794&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1346902</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-08 12:03:58 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353508</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:35:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693558&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320272</attachid>
            <date>2017-09-08 10:07:35 -0700</date>
            <delta_ts>2017-09-08 12:03:57 -0700</delta_ts>
            <desc>ROLLOUT of r221773</desc>
            <filename>bug-176614-20170908130735.patch</filename>
            <type>text/plain</type>
            <size>34679</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxNzc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2IxMWM3YjgxZDcwMWU2
YWZiMmViOTQ4ZWY0NTZkMzhkNDA2NmZlOC4uYTQwNjY3YTQ0YmQ2M2ZkOWU0MjM3OTY4OGRjNjM0
YzBkY2IwYmI2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE3LTA5LTA4ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMjIxNzczLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTc2NjE0CisKKyAgICAgICAgVGhpcyBjYXVzZWQgYnVpbGQgZmFpbHVy
ZXMuIChSZXF1ZXN0ZWQgYnkgbWxld2lzMTMgb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAg
ICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJbTWFjXSBVcHN0cmVhbSBRVEtpdC1y
ZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMiCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzY0NzIKKyAgICAgICAgaHR0cDovL3Ry
YWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjIxNzczCisKIDIwMTctMDktMDcgIEFuZHkgRXN0ZXMg
IDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFVwc3RyZWFtIFFUS2l0LXJlbGF0
ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXgg
NjNhMDYzNjVhNmE4ZWViMzI5MDkxMWVhZjEzYTE2ODcwNzkyYTc0ZC4uNWYyY2ZlY2ExMzcyYjJj
MGExY2QxZmE4ZWM4OGRjZjU1MDk2OTliMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFM
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMTctMDktMDggIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMjE3NzMuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzY2MTQKKworICAgICAgICBU
aGlzIGNhdXNlZCBidWlsZCBmYWlsdXJlcy4gKFJlcXVlc3RlZCBieSBtbGV3aXMxMyBvbgorICAg
ICAgICAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAg
IltNYWNdIFVwc3RyZWFtIFFUS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3
NjQ3MgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMjE3NzMKKwog
MjAxNy0wOS0wNyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01h
Y10gVXBzdHJlYW0gUVRLaXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25z
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCmluZGV4IGZiMjhiNWRjNTk5MWQ4NzZiODYxMmMwYTgxZGM5NTcyZTJhMTMwNGYuLmEy
YWVlNjc3NGQ2MjNlMmQ5ZDQ5NGRlYWNkNDI0YTdiNjQ1ZjdjNzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTcgQEAKKzIwMTctMDktMDggIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQu
b3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMjE3NzMuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzY2MTQKKworICAgICAg
ICBUaGlzIGNhdXNlZCBidWlsZCBmYWlsdXJlcy4gKFJlcXVlc3RlZCBieSBtbGV3aXMxMyBvbgor
ICAgICAgICAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAg
ICAgIltNYWNdIFVwc3RyZWFtIFFUS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1
bmN0aW9ucyIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE3NjQ3MgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMjE3NzMK
KwogMjAxNy0wOS0wNyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAg
W01hY10gVXBzdHJlYW0gUVRLaXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rp
b25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggZmY2ZDZjNzhmYzlmNDdlZDc0MjQy
ZTcwMmUyMjY4MzNlNWUzZDFiMi4uODk0ZmM5OGQ4NjZhYWYxZmRjOGUzZTViZjkyYmVkZjI2NmZi
ZDZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE3
LTA5LTA4ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAg
ICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjIxNzczLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2NjE0CisKKyAgICAgICAgVGhpcyBjYXVzZWQg
YnVpbGQgZmFpbHVyZXMuIChSZXF1ZXN0ZWQgYnkgbWxld2lzMTMgb24KKyAgICAgICAgI3dlYmtp
dCkuCisKKyAgICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJbTWFjXSBVcHN0
cmVhbSBRVEtpdC1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMiCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzY0NzIKKyAgICAg
ICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMjIxNzczCisKIDIwMTctMDktMDcg
IEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNdIFVwc3RyZWFt
IFFUS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL1FUS2l0U1BJLmggYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL3NwaS9tYWMvUVRLaXRTUEkuaAppbmRleCAwNGJiMjQ5NjI3MDg1NzI5ZjE1
YmExNGI0MjhhNGU3MGYyZjZiYmM0Li43MTc4OWNkZjI1ZGE4YWY0MDRiNzBhNGNiNTE5YzFjYTNk
ODUyZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvUVRLaXRT
UEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvUVRLaXRTUEkuaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYtMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNSwx
MiArMjUsOCBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREsp
Ci0KLSNpbXBvcnQgPFFUS2l0L1FUSFVEQmFja2dyb3VuZFZpZXdfUHJpdmF0ZS5oPgotI2ltcG9y
dCA8UVRLaXQvUVRLaXRfUHJpdmF0ZS5oPgotI2ltcG9ydCA8UVRLaXQvUVRVdGlsaXRpZXNfUHJp
dmF0ZS5oPgotCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykgfHwgX19NQUNfT1NfWF9WRVJT
SU9OX01BWF9BTExPV0VEIDwgMTAxMjAwCisjaW1wb3J0IDxRVEtpdC9RVEtpdC5oPgogI2Vsc2UK
IAogZW51bSB7CkBAIC01MCwxOSArNDYsOCBAQCB0eXBlZGVmIHN0cnVjdCB7CiAKIHR5cGVkZWYg
ZW51bSB7CiAgICAgUVRJbmNsdWRlQ29tbW9uVHlwZXMgPSAwLAotICAgIFFUSW5jbHVkZU9ubHlG
aWdNZWRpYUZpbGVUeXBlcyA9IDEgPDwgOCwKIH0gUVRNb3ZpZUZpbGVUeXBlT3B0aW9uczsKIAot
ZW51bSB7Ci0gICAgUVRNb3ZpZVR5cGVVbmtub3duID0gMCwKLSAgICBRVE1vdmllVHlwZUxvY2Fs
LAotICAgIFFUTW92aWVUeXBlRmFzdFN0YXJ0LAotICAgIFFUTW92aWVUeXBlTGl2ZVN0cmVhbSwK
LSAgICBRVE1vdmllVHlwZVN0b3JlZFN0cmVhbQotfTsKLQotQGNsYXNzIFFUVHJhY2s7Ci0KIEBp
bnRlcmZhY2UgUVRNZWRpYSA6IE5TT2JqZWN0CiAKIC0gKGlkKWF0dHJpYnV0ZUZvcktleTooTlNT
dHJpbmcgKilhdHRyaWJ1dGVLZXk7CkBAIC03Myw4ICs1OCw2IEBAIGVudW0gewogCiArIChOU0Fy
cmF5ICopbW92aWVGaWxlVHlwZXM6KFFUTW92aWVGaWxlVHlwZU9wdGlvbnMpdHlwZXM7CiAKLSsg
KHZvaWQpZGlzYWJsZUNvbXBvbmVudDooQ29tcG9uZW50RGVzY3JpcHRpb24pY29tcG9uZW50Owot
CiAtIChpZClpbml0V2l0aEF0dHJpYnV0ZXM6KE5TRGljdGlvbmFyeSAqKWF0dHJpYnV0ZXMgZXJy
b3I6KE5TRXJyb3IgKiopZXJyb3JQdHI7CiAKIC0gKHZvaWQpcGxheTsKQEAgLTk4LDE0ICs4MSw2
IEBAIGVudW0gewogCiAtIChOU0FycmF5ICopdHJhY2tzOwogCi0tIChOU0FycmF5ICopYWx0ZXJu
YXRlR3JvdXBUeXBlczsKLS0gKE5TQXJyYXkgKilhbHRlcm5hdGVzRm9yTWVkaWFUeXBlOihOU1N0
cmluZyAqKXR5cGU7Ci0tICh2b2lkKWRlc2VsZWN0QWx0ZXJuYXRlR3JvdXBUcmFjazooUVRUcmFj
ayAqKWFsdGVybmF0ZVRyYWNrOwotLSAodm9pZClzZWxlY3RBbHRlcm5hdGVHcm91cFRyYWNrOihR
VFRyYWNrICopYWx0ZXJuYXRlVHJhY2s7Ci0KLS0gKE5TVVJMICopVVJMOwotLSAoVUludDMyKW1v
dmllVHlwZTsKLQogQGVuZAogCiBAaW50ZXJmYWNlIFFUTW92aWVMYXllciA6IENBTGF5ZXIKQEAg
LTEzMSwyMCArMTA2LDQgQEAgZW51bSB7CiAKIEBlbmQKIAotQGludGVyZmFjZSBRVEhVREJhY2tn
cm91bmRWaWV3IDogTlNWaWV3Ci0KLS0gKHZvaWQpc2V0Q29udGVudEJvcmRlclBvc2l0aW9uOihD
R0Zsb2F0KWNvbnRlbnRCb3JkZXJQb3NpdGlvbjsKLQotQGVuZAotCi1AaW50ZXJmYWNlIFFUVXRp
bGl0aWVzIDogTlNPYmplY3QKLQotKyAoaWQpcXRVdGlsaXRpZXM7Ci0KLS0gKE5TQXJyYXkgKilz
aXRlc0luRG93bmxvYWRDYWNoZTsKLS0gKHZvaWQpY2xlYXJEb3dubG9hZENhY2hlOwotLSAodm9p
ZCljbGVhckRvd25sb2FkQ2FjaGVGb3JTaXRlOihOU1N0cmluZyAqKXNpdGU7Ci0KLUBlbmQKLQog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMv
TWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0KaW5kZXggNjFmMDliMzg0ZDk1MTQy
YzYyNzNhNDFlZDViNzg1Y2IxYzVjOWFhMC4uODVjZjU2MWQ3MzMxNzk2NzZlY2Y4ZTlmZGFhMzZm
YzBlN2U1OGIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
bWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbQpAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTEg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC01Miw3ICs1Miw2IEBAIFNPRlRfTElOSyhRVEtpdCwgUVRNYWtlVGltZSwgUVRU
aW1lLCAobG9uZyBsb25nIHRpbWVWYWx1ZSwgbG9uZyB0aW1lU2NhbGUpLCAodGltCiAKIFNPRlRf
TElOS19DTEFTUyhRVEtpdCwgUVRNb3ZpZSkKIFNPRlRfTElOS19DTEFTUyhRVEtpdCwgUVRNb3Zp
ZUxheWVyKQotU09GVF9MSU5LX0NMQVNTKFFUS2l0LCBRVFV0aWxpdGllcykKIAogU09GVF9MSU5L
X1BPSU5URVIoUVRLaXQsIFFUVHJhY2tNZWRpYVR5cGVBdHRyaWJ1dGUsIE5TU3RyaW5nICopCiBT
T0ZUX0xJTktfUE9JTlRFUihRVEtpdCwgUVRNZWRpYVR5cGVBdHRyaWJ1dGUsIE5TU3RyaW5nICop
CkBAIC03Miw3ICs3MSw2IEBAIFNPRlRfTElOS19QT0lOVEVSKFFUS2l0LCBRVE1vdmllSXNBY3Rp
dmVBdHRyaWJ1dGUsIE5TU3RyaW5nICopCiBTT0ZUX0xJTktfUE9JTlRFUihRVEtpdCwgUVRNb3Zp
ZUxvYWRTdGF0ZUF0dHJpYnV0ZSwgTlNTdHJpbmcgKikKIFNPRlRfTElOS19QT0lOVEVSKFFUS2l0
LCBRVE1vdmllTG9hZFN0YXRlRXJyb3JBdHRyaWJ1dGUsIE5TU3RyaW5nICopCiBTT0ZUX0xJTktf
UE9JTlRFUihRVEtpdCwgUVRNb3ZpZUxvYWRTdGF0ZURpZENoYW5nZU5vdGlmaWNhdGlvbiwgTlNT
dHJpbmcgKikKLVNPRlRfTElOS19QT0lOVEVSKFFUS2l0LCBRVE1vdmllTG9hZGVkUmFuZ2VzRGlk
Q2hhbmdlTm90aWZpY2F0aW9uLCBOU1N0cmluZyAqKTsKIFNPRlRfTElOS19QT0lOVEVSKFFUS2l0
LCBRVE1vdmllTmF0dXJhbFNpemVBdHRyaWJ1dGUsIE5TU3RyaW5nICopCiBTT0ZUX0xJTktfUE9J
TlRFUihRVEtpdCwgUVRNb3ZpZUN1cnJlbnRTaXplQXR0cmlidXRlLCBOU1N0cmluZyAqKQogU09G
VF9MSU5LX1BPSU5URVIoUVRLaXQsIFFUTW92aWVQcmV2ZW50RXh0ZXJuYWxVUkxMaW5rc0F0dHJp
YnV0ZSwgTlNTdHJpbmcgKikKQEAgLTk3LDggKzk1LDggQEAgU09GVF9MSU5LX1BPSU5URVJfT1BU
SU9OQUwoUVRLaXQsIFFUU2VjdXJpdHlQb2xpY3lOb1JlbW90ZVRvTG9jYWxTaXRlQXR0cmlidXRl
LAogLSAoTlNBcnJheSAqKWxvYWRlZFJhbmdlczsKIEBlbmQKIAorI2RlZmluZSBRVE1vdmllIGdl
dFFUTW92aWVDbGFzcygpCiAjZGVmaW5lIFFUTW92aWVMYXllciBnZXRRVE1vdmllTGF5ZXJDbGFz
cygpCi0jZGVmaW5lIFFUVXRpbGl0aWVzIGdldFFUVXRpbGl0aWVzQ2xhc3MoKQogCiAjZGVmaW5l
IFFUVHJhY2tNZWRpYVR5cGVBdHRyaWJ1dGUgZ2V0UVRUcmFja01lZGlhVHlwZUF0dHJpYnV0ZSgp
CiAjZGVmaW5lIFFUTWVkaWFUeXBlQXR0cmlidXRlIGdldFFUTWVkaWFUeXBlQXR0cmlidXRlKCkK
QEAgLTExOCw3ICsxMTYsNiBAQCBTT0ZUX0xJTktfUE9JTlRFUl9PUFRJT05BTChRVEtpdCwgUVRT
ZWN1cml0eVBvbGljeU5vUmVtb3RlVG9Mb2NhbFNpdGVBdHRyaWJ1dGUsCiAjZGVmaW5lIFFUTW92
aWVMb2FkU3RhdGVBdHRyaWJ1dGUgZ2V0UVRNb3ZpZUxvYWRTdGF0ZUF0dHJpYnV0ZSgpCiAjZGVm
aW5lIFFUTW92aWVMb2FkU3RhdGVFcnJvckF0dHJpYnV0ZSBnZXRRVE1vdmllTG9hZFN0YXRlRXJy
b3JBdHRyaWJ1dGUoKQogI2RlZmluZSBRVE1vdmllTG9hZFN0YXRlRGlkQ2hhbmdlTm90aWZpY2F0
aW9uIGdldFFUTW92aWVMb2FkU3RhdGVEaWRDaGFuZ2VOb3RpZmljYXRpb24oKQotI2RlZmluZSBR
VE1vdmllTG9hZGVkUmFuZ2VzRGlkQ2hhbmdlTm90aWZpY2F0aW9uIGdldFFUTW92aWVMb2FkZWRS
YW5nZXNEaWRDaGFuZ2VOb3RpZmljYXRpb24oKQogI2RlZmluZSBRVE1vdmllTmF0dXJhbFNpemVB
dHRyaWJ1dGUgZ2V0UVRNb3ZpZU5hdHVyYWxTaXplQXR0cmlidXRlKCkKICNkZWZpbmUgUVRNb3Zp
ZUN1cnJlbnRTaXplQXR0cmlidXRlIGdldFFUTW92aWVDdXJyZW50U2l6ZUF0dHJpYnV0ZSgpCiAj
ZGVmaW5lIFFUTW92aWVQcmV2ZW50RXh0ZXJuYWxVUkxMaW5rc0F0dHJpYnV0ZSBnZXRRVE1vdmll
UHJldmVudEV4dGVybmFsVVJMTGlua3NBdHRyaWJ1dGUoKQpAQCAtMjk1LDcgKzI5Miw3IEBAIHN0
YXRpYyB2b2lkIGRpc2FibGVDb21wb25lbnRzT25jZSgpCiAgICAgLy8gUVRLaXRTZXJ2ZXIgaGFz
IG5vdCB5ZXQgc3RhcnRlZC4gIEFzIGEgcmVzdWx0LCB3ZSBtdXN0IHBhc3MgaW4gZXhhY3RseSB0
aGUgZmxhZ3Mgd2Ugd2FudCB0bwogICAgIC8vIGRpc2FibGUgcGVyIGNvbXBvbmVudC4gIEFzIGEg
ZmFpbHNhZmUsIGlmIGluIHRoZSBmdXR1cmUgdGhlc2UgZmxhZ3MgY2hhbmdlLCB3ZSB3aWxsIGRp
c2FibGUgdGhlCiAgICAgLy8gUERGIGNvbXBvbmVudHMgZm9yIGEgdGhpcmQgdGltZSB3aXRoIGEg
d2lsZGNhcmQgZmxhZ3MgZmllbGQ6Ci0gICAgQ29tcG9uZW50RGVzY3JpcHRpb24gY29tcG9uZW50
c1RvRGlzYWJsZVsxMV0gPSB7CisgICAgdWludDMyX3QgY29tcG9uZW50c1RvRGlzYWJsZVsxMV1b
NV0gPSB7CiAgICAgICAgIHsnZWF0ICcsICdURVhUJywgJ3RleHQnLCAwLCAwfSwKICAgICAgICAg
eydlYXQgJywgJ1RYVCAnLCAndGV4dCcsIDAsIDB9LCAgICAKICAgICAgICAgeydlYXQgJywgJ3V0
eHQnLCAndGV4dCcsIDAsIDB9LCAgCkBAIC0zMTAsNyArMzA3LDcgQEAgc3RhdGljIHZvaWQgZGlz
YWJsZUNvbXBvbmVudHNPbmNlKCkKICAgICB9OwogCiAgICAgZm9yIChhdXRvJiBjb21wb25lbnQg
OiBjb21wb25lbnRzVG9EaXNhYmxlKQotICAgICAgICBbZ2V0UVRNb3ZpZUNsYXNzKCkgZGlzYWJs
ZUNvbXBvbmVudDpjb21wb25lbnRdOworICAgICAgICB3a1FUTW92aWVEaXNhYmxlQ29tcG9uZW50
KGNvbXBvbmVudCk7CiB9CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OmNyZWF0ZVFU
TW92aWUoTlNVUkwgKnVybCwgTlNEaWN0aW9uYXJ5ICptb3ZpZUF0dHJpYnV0ZXMpCkBAIC0zNDgs
MTAgKzM0NSwxNCBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpjcmVhdGVRVE1vdmll
KE5TVVJMICp1cmwsIE5TRGljdGlvbmFyeSAqbW92aWVBdHRyaQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3Q6bV9xdE1vdmllLmdldCgpXTsKIAog
ICAgIC8vIEluIHVwZGF0ZVN0YXRlKCksIHdlIHRyYWNrIHdoZW4gbWF4VGltZUxvYWRlZCgpID09
IGR1cmF0aW9uKCkuCi0gICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBh
ZGRPYnNlcnZlcjptX29iamNPYnNlcnZlci5nZXQoKQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VsZWN0b3I6QHNlbGVjdG9yKGxvYWRlZFJhbmdlc0NoYW5n
ZWQ6KQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5h
bWU6UVRNb3ZpZUxvYWRlZFJhbmdlc0RpZENoYW5nZU5vdGlmaWNhdGlvbgotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3Q6bV9xdE1vdmllLmdldCgp
XTsKKyAgICAvLyBJbiBuZXdlciB2ZXJzaW9uIG9mIFF1aWNrVGltZSwgYSBub3RpZmljYXRpb24g
aXMgZW1pdHRlZCB3aGVuIG1heFRpbWVMb2FkZWQgY2hhbmdlcy4KKyAgICAvLyBJbiBvbGRlciB2
ZXJzaW9uIG9mIFF1aWNrVGltZSwgUVRNb3ZpZUxvYWRTdGF0ZURpZENoYW5nZU5vdGlmaWNhdGlv
biBiZSBmaXJlZC4KKyAgICBpZiAoTlNTdHJpbmcgKm1heFRpbWVMb2FkZWRDaGFuZ2VOb3RpZmlj
YXRpb24gPSB3a1FUTW92aWVNYXhUaW1lTG9hZGVkQ2hhbmdlTm90aWZpY2F0aW9uKCkpIHsKKyAg
ICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpt
X29iamNPYnNlcnZlci5nZXQoKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNlbGVjdG9yOkBzZWxlY3Rvcihsb2FkZWRSYW5nZXNDaGFuZ2VkOikKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTpt
YXhUaW1lTG9hZGVkQ2hhbmdlTm90aWZpY2F0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3Q6bV9xdE1vdmllLmdldCgpXTsgICAgICAg
IAorICAgIH0KIAogICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRk
T2JzZXJ2ZXI6bV9vYmpjT2JzZXJ2ZXIuZ2V0KCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNlbGVjdG9yOkBzZWxlY3RvcihyYXRlQ2hhbmdlZDopIApAQCAt
NzcwLDMwICs3NzEsMTggQEAgYm9vbCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6aGFzQ2xvc2Vk
Q2FwdGlvbnMoKSBjb25zdAogewogICAgIGlmICghbWV0YURhdGFBdmFpbGFibGUoKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVybiBbW21fcXRNb3ZpZSBhbHRlcm5hdGVHcm91cFR5
cGVzXSBjb250YWluc09iamVjdDpAImNsY3AiXTsKKyAgICByZXR1cm4gd2tRVE1vdmllSGFzQ2xv
c2VkQ2FwdGlvbnMobV9xdE1vdmllLmdldCgpKTsgIAogfQogCiB2b2lkIE1lZGlhUGxheWVyUHJp
dmF0ZVFUS2l0OjpzZXRDbG9zZWRDYXB0aW9uc1Zpc2libGUoYm9vbCBjbG9zZWRDYXB0aW9uc1Zp
c2libGUpCiB7Ci0gICAgaWYgKCFtZXRhRGF0YUF2YWlsYWJsZSgpKQotICAgICAgICByZXR1cm47
Ci0KLSAgICBpZiAoIVtbbV9xdE1vdmllIGFsdGVybmF0ZUdyb3VwVHlwZXNdIGNvbnRhaW5zT2Jq
ZWN0OkAiY2xjcCJdKQotICAgICAgICByZXR1cm47Ci0KLSAgICBOU0FycmF5ICp0cmFja0FsdGVy
bmF0ZXNBcnJheSA9IFttX3F0TW92aWUgYWx0ZXJuYXRlc0Zvck1lZGlhVHlwZTpAImNsY3AiXTsK
LSAgICBRVFRyYWNrICp0cmFjayA9IHRyYWNrQWx0ZXJuYXRlc0FycmF5WzBdW0AiUVRBbHRlcm5h
dGVzX1FUVHJhY2siXTsKLSAgICBpZiAoIXRyYWNrKQotICAgICAgICByZXR1cm47CisgICAgaWYg
KG1ldGFEYXRhQXZhaWxhYmxlKCkpIHsKKyAgICAgICAgd2tRVE1vdmllU2V0U2hvd0Nsb3NlZENh
cHRpb25zKG1fcXRNb3ZpZS5nZXQoKSwgY2xvc2VkQ2FwdGlvbnNWaXNpYmxlKTsKIAotICAgIGlm
ICghY2xvc2VkQ2FwdGlvbnNWaXNpYmxlKQotICAgICAgICBbbV9xdE1vdmllIGRlc2VsZWN0QWx0
ZXJuYXRlR3JvdXBUcmFjazp0cmFja107Ci0gICAgZWxzZQotICAgICAgICBbbV9xdE1vdmllIHNl
bGVjdEFsdGVybmF0ZUdyb3VwVHJhY2s6dHJhY2tdOwotCi0gICAgaWYgKGNsb3NlZENhcHRpb25z
VmlzaWJsZSAmJiBtX3F0VmlkZW9MYXllcikgewotICAgICAgICAvLyBDYXB0aW9ucyB3aWxsIGJl
IHJlbmRlcmVkIHVwc2lkZSBkb3duIHVubGVzcyB3ZSBmbGFnIHRoZSBtb3ZpZSBhcyBmbGlwcGVk
IChhZ2FpbikuIFNlZSA8cmRhcjovLzc0MDg0NDA+LgotICAgICAgICBbbV9xdFZpZGVvTGF5ZXIu
Z2V0KCkgc2V0R2VvbWV0cnlGbGlwcGVkOllFU107CisgICAgICAgIGlmIChjbG9zZWRDYXB0aW9u
c1Zpc2libGUgJiYgbV9xdFZpZGVvTGF5ZXIpIHsKKyAgICAgICAgICAgIC8vIENhcHRpb25zIHdp
bGwgYmUgcmVuZGVyZWQgdXBzaWRlIGRvd24gdW5sZXNzIHdlIGZsYWcgdGhlIG1vdmllIGFzIGZs
aXBwZWQgKGFnYWluKS4gU2VlIDxyZGFyOi8vNzQwODQ0MD4uCisgICAgICAgICAgICBbbV9xdFZp
ZGVvTGF5ZXIuZ2V0KCkgc2V0R2VvbWV0cnlGbGlwcGVkOllFU107CisgICAgICAgIH0KICAgICB9
CiB9CiAKQEAgLTk1Miw1OCArOTQxLDYgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6
cHJlcGFyZUZvclJlbmRlcmluZygpCiAgICAgICAgIG1fcGxheWVyLT5jbGllbnQoKS5tZWRpYVBs
YXllclJlbmRlcmluZ01vZGVDaGFuZ2VkKG1fcGxheWVyKTsKIH0KIAotc3RhdGljIHZvaWQgc2Vs
ZWN0UHJlZmVycmVkQWx0ZXJuYXRlVHJhY2tGb3JNZWRpYVR5cGUoUVRNb3ZpZSAqbW92aWUsIE5T
U3RyaW5nICptZWRpYVR5cGUpCi17Ci0gICAgTlNBcnJheSAqYWx0ZXJuYXRlcyA9IFttb3ZpZSBh
bHRlcm5hdGVzRm9yTWVkaWFUeXBlOm1lZGlhVHlwZV07Ci0gICAgaWYgKCFhbHRlcm5hdGVzLmNv
dW50KQotICAgICAgICByZXR1cm47Ci0KLSAgICBhdXRvIGxhbmd1YWdlVG9RVFRyYWNrTWFwID0g
YWRvcHROUyhbW05TTXV0YWJsZURpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoQ2FwYWNpdHk6YWx0
ZXJuYXRlcy5jb3VudF0pOwotCi0gICAgZm9yIChOU1VJbnRlZ2VyIGluZGV4ID0gMDsgaW5kZXgg
PCBhbHRlcm5hdGVzLmNvdW50OyArK2luZGV4KSB7Ci0gICAgICAgIE5TRGljdGlvbmFyeSAqYWx0
ZXJuYXRlRGljdCA9IGFsdGVybmF0ZXNbaW5kZXhdOwotICAgICAgICBOU1N0cmluZyAqbGFuZ3Vh
Z2VTdHJpbmcgPSBhbHRlcm5hdGVEaWN0W0AiUVRBbHRlcm5hdGVzX0xhbmd1YWdlQ29kZUVuY29k
aW5nX0lTT182MzlfMlQiXTsKLSAgICAgICAgaWYgKCFbbGFuZ3VhZ2VTdHJpbmcgY1N0cmluZ1Vz
aW5nRW5jb2Rpbmc6a0NGU3RyaW5nRW5jb2RpbmdBU0NJSV0pCi0gICAgICAgICAgICBjb250aW51
ZTsKLSAgICAgICAgaWYgKCFsYW5ndWFnZVN0cmluZykKLSAgICAgICAgICAgIGxhbmd1YWdlU3Ry
aW5nID0gYWx0ZXJuYXRlRGljdFtAIlFUQWx0ZXJuYXRlc19MYW5ndWFnZUNvZGVFbmNvZGluZ19S
RkNfNDY0NiJdOwotICAgICAgICBpZiAoIWxhbmd1YWdlU3RyaW5nKSB7Ci0gICAgICAgICAgICBM
YW5nQ29kZSBsYW5nQ29kZSA9IFthbHRlcm5hdGVEaWN0W0AiUVRBbHRlcm5hdGVzX0xhbmd1YWdl
Q29kZUVuY29kaW5nX01hY1R5cGVfTGFuZ0NvZGUiXSBpbnRWYWx1ZV07Ci0gICAgICAgICAgICBh
dXRvIGlkZW50aWZpZXIgPSBhZG9wdENGKENGTG9jYWxlQ3JlYXRlQ2Fub25pY2FsTG9jYWxlSWRl
bnRpZmllckZyb21TY3JpcHRNYW5hZ2VyQ29kZXMoa0NGQWxsb2NhdG9yRGVmYXVsdCwgbGFuZ0Nv
ZGUsIDApKTsKLSAgICAgICAgICAgIGxhbmd1YWdlU3RyaW5nID0gKE5TU3RyaW5nICopaWRlbnRp
Zmllci5hdXRvcmVsZWFzZSgpOwotICAgICAgICB9Ci0gICAgICAgIGlmICghbGFuZ3VhZ2VTdHJp
bmcpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBpZCBhbHRlcm5hdGVUcmFjayA9
IGFsdGVybmF0ZURpY3RbQCJRVEFsdGVybmF0ZXNfUVRUcmFjayJdOwotICAgICAgICBpZiAoIWFs
dGVybmF0ZVRyYWNrKQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgaWYgKCFbW2Fs
dGVybmF0ZVRyYWNrIGF0dHJpYnV0ZUZvcktleTpAIlFUVHJhY2tFbmFibGVkQXR0cmlidXRlIl0g
Ym9vbFZhbHVlXSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIFtsYW5ndWFnZVRv
UVRUcmFja01hcCBzZXRPYmplY3Q6YWx0ZXJuYXRlVHJhY2sgZm9yS2V5Omxhbmd1YWdlU3RyaW5n
XTsKLSAgICB9Ci0KLSAgICBOU0FycmF5ICpwcmVmZXJyZWRMYW5ndWFnZXMgPSBbTlNCdW5kbGUg
cHJlZmVycmVkTG9jYWxpemF0aW9uc0Zyb21BcnJheTpbbGFuZ3VhZ2VUb1FUVHJhY2tNYXAgYWxs
S2V5c10gZm9yUHJlZmVyZW5jZXM6bmlsXTsKLSAgICBpZiAocHJlZmVycmVkTGFuZ3VhZ2VzLmNv
dW50KSB7Ci0gICAgICAgIGlkIHByZWZlcnJlZFRyYWNrID0gW2xhbmd1YWdlVG9RVFRyYWNrTWFw
IG9iamVjdEZvcktleTpwcmVmZXJyZWRMYW5ndWFnZXNbMF1dOwotICAgICAgICBpZiAocHJlZmVy
cmVkVHJhY2spIHsKLSAgICAgICAgICAgIC8vICtbTlNCdW5kbGUgcHJlZmVycmVkTG9jYWxpemF0
aW9uc0Zyb21BcnJheTpmb3JQcmVmZXJlbmNlc10gbWF5IHJldHVybiBhIGxhbmd1YWdlIHdoaWNo
IHdhcwotICAgICAgICAgICAgLy8gbm90IHByZXNlbnQgaW4gcHJlZmVycmVkTGFuZ3VhZ2VzLCBh
bmQgd2lsbCB0aGVyZWZvcmUgbm90IGhhdmUgYW4gYXNzb2NpYXRlZCB0cmFjay4KLSAgICAgICAg
ICAgIFttb3ZpZSBzZWxlY3RBbHRlcm5hdGVHcm91cFRyYWNrOnByZWZlcnJlZFRyYWNrXTsKLSAg
ICAgICAgfQotICAgIH0KLX0KLQotc3RhdGljIHZvaWQgc2VsZWN0UHJlZmVycmVkQWx0ZXJuYXRl
cyhRVE1vdmllICptb3ZpZSkKLXsKLSAgICBzZWxlY3RQcmVmZXJyZWRBbHRlcm5hdGVUcmFja0Zv
ck1lZGlhVHlwZShtb3ZpZSwgQCJ2aWRlIik7Ci0gICAgc2VsZWN0UHJlZmVycmVkQWx0ZXJuYXRl
VHJhY2tGb3JNZWRpYVR5cGUobW92aWUsIEAic291biIpOwotICAgIHNlbGVjdFByZWZlcnJlZEFs
dGVybmF0ZVRyYWNrRm9yTWVkaWFUeXBlKG1vdmllLCBAImNwbHAiKTsKLSAgICBzZWxlY3RQcmVm
ZXJyZWRBbHRlcm5hdGVUcmFja0Zvck1lZGlhVHlwZShtb3ZpZSwgQCJzYnRsIik7Ci19Ci0KIHZv
aWQgTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OnVwZGF0ZVN0YXRlcygpCiB7CiAgICAgTWVkaWFQ
bGF5ZXI6Ok5ldHdvcmtTdGF0ZSBvbGROZXR3b3JrU3RhdGUgPSBtX25ldHdvcmtTdGF0ZTsKQEAg
LTEwMjgsNyArOTY1LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6dXBkYXRlU3Rh
dGVzKCkKICAgICAgICAgICAgIGxvYWRTdGF0ZSA9IFFUTW92aWVMb2FkU3RhdGVFcnJvcjsKIAog
ICAgICAgICBpZiAobG9hZFN0YXRlICE9IFFUTW92aWVMb2FkU3RhdGVFcnJvcikgewotICAgICAg
ICAgICAgc2VsZWN0UHJlZmVycmVkQWx0ZXJuYXRlcyhtX3F0TW92aWUuZ2V0KCkpOworICAgICAg
ICAgICAgd2tRVE1vdmllU2VsZWN0UHJlZmVycmVkQWx0ZXJuYXRlcyhtX3F0TW92aWUuZ2V0KCkp
OwogICAgICAgICAgICAgY2FjaGVNb3ZpZVNjYWxlKCk7CiAgICAgICAgICAgICBNZWRpYVBsYXll
cjo6TW92aWVMb2FkVHlwZSBtb3ZpZVR5cGUgPSBtb3ZpZUxvYWRUeXBlKCk7CiAgICAgICAgICAg
ICBtX2lzU3RyZWFtaW5nID0gbW92aWVUeXBlID09IE1lZGlhUGxheWVyOjpTdG9yZWRTdHJlYW0g
fHwgbW92aWVUeXBlID09IE1lZGlhUGxheWVyOjpMaXZlU3RyZWFtOwpAQCAtMTMzMCwxMyArMTI2
NywxMyBAQCBzdGF0aWMgSGFzaFNldDxTdHJpbmcsIEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4g
Y3JlYXRlRmlsZVR5cGVzU2V0KE5TQXJyYXkgKmZpbAogCiBzdGF0aWMgY29uc3QgSGFzaFNldDxT
dHJpbmcsIEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4mIG1pbWVDb21tb25UeXBlc0NhY2hlKCkK
IHsKLSAgICBzdGF0aWMgY29uc3QgYXV0byBjYWNoZSA9IG1ha2VOZXZlckRlc3Ryb3llZChjcmVh
dGVGaWxlVHlwZXNTZXQoW2dldFFUTW92aWVDbGFzcygpIG1vdmllRmlsZVR5cGVzOlFUSW5jbHVk
ZUNvbW1vblR5cGVzXSkpOworICAgIHN0YXRpYyBjb25zdCBhdXRvIGNhY2hlID0gbWFrZU5ldmVy
RGVzdHJveWVkKGNyZWF0ZUZpbGVUeXBlc1NldChbUVRNb3ZpZSBtb3ZpZUZpbGVUeXBlczpRVElu
Y2x1ZGVDb21tb25UeXBlc10pKTsKICAgICByZXR1cm4gY2FjaGU7CiB9IAogCiBzdGF0aWMgY29u
c3QgSGFzaFNldDxTdHJpbmcsIEFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaD4mIG1pbWVNb2Rlcm5U
eXBlc0NhY2hlKCkKIHsKLSAgICBzdGF0aWMgY29uc3QgYXV0byBjYWNoZSA9IG1ha2VOZXZlckRl
c3Ryb3llZChjcmVhdGVGaWxlVHlwZXNTZXQoW2dldFFUTW92aWVDbGFzcygpIG1vdmllRmlsZVR5
cGVzOlFUSW5jbHVkZU9ubHlGaWdNZWRpYUZpbGVUeXBlc10pKTsKKyAgICBzdGF0aWMgY29uc3Qg
YXV0byBjYWNoZSA9IG1ha2VOZXZlckRlc3Ryb3llZChjcmVhdGVGaWxlVHlwZXNTZXQoW1FUTW92
aWUgbW92aWVGaWxlVHlwZXM6KFFUTW92aWVGaWxlVHlwZU9wdGlvbnMpd2tRVEluY2x1ZGVPbmx5
TW9kZXJuTWVkaWFGaWxlVHlwZXMoKV0pKTsKICAgICByZXR1cm4gY2FjaGU7CiB9CiAKQEAgLTEz
ODcsNyArMTMyNCw3IEBAIGJvb2wgTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OmlzQXZhaWxhYmxl
KCkKIEhhc2hTZXQ8UmVmUHRyPFNlY3VyaXR5T3JpZ2luPj4gTWVkaWFQbGF5ZXJQcml2YXRlUVRL
aXQ6Om9yaWdpbnNJbk1lZGlhQ2FjaGUoY29uc3QgU3RyaW5nJikKIHsKICAgICBIYXNoU2V0PFJl
ZlB0cjxTZWN1cml0eU9yaWdpbj4+IG9yaWdpbnM7Ci0gICAgTlNBcnJheSAqbWVkaWFTaXRlcyA9
IFtbUVRVdGlsaXRpZXMgcXRVdGlsaXRpZXNdIHNpdGVzSW5Eb3dubG9hZENhY2hlXTsKKyAgICBO
U0FycmF5ICptZWRpYVNpdGVzID0gd2tRVEdldFNpdGVzSW5NZWRpYURvd25sb2FkQ2FjaGUoKTsK
ICAgICAKICAgICBmb3IgKE5TU3RyaW5nICpzaXRlIGluIG1lZGlhU2l0ZXMpIHsKICAgICAgICAg
VVJMIHNpdGVBc1VSTCA9IFVSTChVUkwoKSwgc2l0ZSk7CkBAIC0xNDAwLDE0ICsxMzM3LDE0IEBA
IEhhc2hTZXQ8UmVmUHRyPFNlY3VyaXR5T3JpZ2luPj4gTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6
Om9yaWdpbnNJbk1lZGlhQ2FjaGUoY29uCiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Ojpj
bGVhck1lZGlhQ2FjaGUoY29uc3QgU3RyaW5nJiwgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6
dGltZV9wb2ludCkKIHsKICAgICBMT0coTWVkaWEsICJNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6
Y2xlYXJNZWRpYUNhY2hlKCkiKTsKLSAgICBbW1FUVXRpbGl0aWVzIHF0VXRpbGl0aWVzXSBjbGVh
ckRvd25sb2FkQ2FjaGVdOworICAgIHdrUVRDbGVhck1lZGlhRG93bmxvYWRDYWNoZSgpOwogfQog
CiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpjbGVhck1lZGlhQ2FjaGVGb3JPcmlnaW5z
KGNvbnN0IFN0cmluZyYsIGNvbnN0IEhhc2hTZXQ8UmVmUHRyPFNlY3VyaXR5T3JpZ2luPj4mIG9y
aWdpbnMpCiB7CiAgICAgTE9HKE1lZGlhLCAiTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQ6OmNsZWFy
TWVkaWFDYWNoZUZvck9yaWdpbnMoKSIpOwogICAgIGZvciAoYXV0byYgb3JpZ2luIDogb3JpZ2lu
cykKLSAgICAgICAgW1tRVFV0aWxpdGllcyBxdFV0aWxpdGllc10gY2xlYXJEb3dubG9hZENhY2hl
Rm9yU2l0ZTpvcmlnaW4tPnRvUmF3U3RyaW5nKCldOworICAgICAgICB3a1FUQ2xlYXJNZWRpYURv
d25sb2FkQ2FjaGVGb3JTaXRlKG9yaWdpbi0+dG9SYXdTdHJpbmcoKSk7CiB9CiAKIHZvaWQgTWVk
aWFQbGF5ZXJQcml2YXRlUVRLaXQ6OmRpc2FibGVVbnN1cHBvcnRlZFRyYWNrcygpCkBAIC0xNTMx
LDcgKzE0NjgsNyBAQCBib29sIE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpoYXNTaW5nbGVTZWN1
cml0eU9yaWdpbigpIGNvbnN0CiAgICAgaWYgKCFtX3F0TW92aWUpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAotICAgIFJlZjxTZWN1cml0eU9yaWdpbj4gcmVzb2x2ZWRPcmlnaW4gPSBTZWN1cml0
eU9yaWdpbjo6Y3JlYXRlKFVSTChbbV9xdE1vdmllIFVSTF0pKTsKKyAgICBSZWY8U2VjdXJpdHlP
cmlnaW4+IHJlc29sdmVkT3JpZ2luID0gU2VjdXJpdHlPcmlnaW46OmNyZWF0ZShVUkwod2tRVE1v
dmllUmVzb2x2ZWRVUkwobV9xdE1vdmllLmdldCgpKSkpOwogICAgIFJlZjxTZWN1cml0eU9yaWdp
bj4gcmVxdWVzdGVkT3JpZ2luID0gU2VjdXJpdHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcobV9t
b3ZpZVVSTCk7CiAgICAgcmV0dXJuIHJlc29sdmVkT3JpZ2luLT5pc1NhbWVTY2hlbWVIb3N0UG9y
dChyZXF1ZXN0ZWRPcmlnaW4uZ2V0KCkpOwogfQpAQCAtMTUzOSwyMSArMTQ3NiwxNSBAQCBib29s
IE1lZGlhUGxheWVyUHJpdmF0ZVFUS2l0OjpoYXNTaW5nbGVTZWN1cml0eU9yaWdpbigpIGNvbnN0
CiBNZWRpYVBsYXllcjo6TW92aWVMb2FkVHlwZSBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6bW92
aWVMb2FkVHlwZSgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX3F0TW92aWUpCi0gICAgICAgIHJldHVy
biBNZWRpYVBsYXllcjo6TW92aWVMb2FkVHlwZTo6VW5rbm93bjsKLQotICAgIFVJbnQzMiBtb3Zp
ZVR5cGUgPSBbbV9xdE1vdmllIG1vdmllVHlwZV07Ci0gICAgc3dpdGNoIChtb3ZpZVR5cGUpIHsK
LSAgICBjYXNlIFFUTW92aWVUeXBlTG9jYWw6Ci0gICAgY2FzZSBRVE1vdmllVHlwZUZhc3RTdGFy
dDoKLSAgICAgICAgcmV0dXJuIE1lZGlhUGxheWVyOjpNb3ZpZUxvYWRUeXBlOjpEb3dubG9hZDsK
LSAgICBjYXNlIFFUTW92aWVUeXBlTGl2ZVN0cmVhbToKLSAgICAgICAgcmV0dXJuIE1lZGlhUGxh
eWVyOjpNb3ZpZUxvYWRUeXBlOjpMaXZlU3RyZWFtOwotICAgIGNhc2UgUVRNb3ZpZVR5cGVTdG9y
ZWRTdHJlYW06Ci0gICAgICAgIHJldHVybiBNZWRpYVBsYXllcjo6TW92aWVMb2FkVHlwZTo6U3Rv
cmVkU3RyZWFtOwotICAgIGNhc2UgUVRNb3ZpZVR5cGVVbmtub3duOgotICAgIGRlZmF1bHQ6Ci0g
ICAgICAgIHJldHVybiBNZWRpYVBsYXllcjo6TW92aWVMb2FkVHlwZTo6VW5rbm93bjsKLSAgICB9
CisgICAgICAgIHJldHVybiBNZWRpYVBsYXllcjo6VW5rbm93bjsKKworICAgIE1lZGlhUGxheWVy
OjpNb3ZpZUxvYWRUeXBlIG1vdmllVHlwZSA9IChNZWRpYVBsYXllcjo6TW92aWVMb2FkVHlwZSl3
a1FUTW92aWVHZXRUeXBlKG1fcXRNb3ZpZS5nZXQoKSk7CisKKyAgICAvLyBDYW4ndCBpbmNsdWRl
IFdlYktpdFN5c3RlbUludGVyZmFjZSBmcm9tIFdlYkNvcmUgc28gd2UgY2FuJ3QgZ2V0IHRoZSBl
bnVtIHJldHVybmVkCisgICAgLy8gYnkgd2tRVE1vdmllR2V0VHlwZSwgYnV0IGF0IGxlYXN0IHZl
cmlmeSB0aGF0IHRoZSB2YWx1ZSBpcyBpbiB0aGUgdmFsaWQgcmFuZ2UuCisgICAgQVNTRVJUKG1v
dmllVHlwZSA+PSBNZWRpYVBsYXllcjo6VW5rbm93biAmJiBtb3ZpZVR5cGUgPD0gTWVkaWFQbGF5
ZXI6OkxpdmVTdHJlYW0pOworCisgICAgcmV0dXJuIG1vdmllVHlwZTsKIH0KIAogdm9pZCBNZWRp
YVBsYXllclByaXZhdGVRVEtpdDo6c2V0UHJlbG9hZChNZWRpYVBsYXllcjo6UHJlbG9hZCBwcmVs
b2FkKQpAQCAtMTU4NCw3ICsxNTE1LDcgQEAgYm9vbCBNZWRpYVBsYXllclByaXZhdGVRVEtpdDo6
Y2FuU2F2ZU1lZGlhRGF0YSgpIGNvbnN0CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGlm
IChtX3F0TW92aWUpCi0gICAgICAgIHVybCA9IFVSTChbbV9xdE1vdmllIFVSTF0pOworICAgICAg
ICB1cmwgPSBVUkwod2tRVE1vdmllUmVzb2x2ZWRVUkwobV9xdE1vdmllLmdldCgpKSk7CiAgICAg
ZWxzZQogICAgICAgICB1cmwgPSBVUkwoUGFyc2VkVVJMU3RyaW5nLCBtX21vdmllVVJMKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRl
cmZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJm
YWNlLmgKaW5kZXggZjY3NTk1MDlhMTFmY2UzMzQxM2ZlNjkwMzNhNDY4NTZmNTk3NDU1OC4uMjNm
ZjIzZmNmNDU4YjQwNzg5YjAyZTBhZWMxMmIyMDAwMTFmYzViYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCkBAIC0xMzEs
NyArMTMxLDMyIEBAIGV4dGVybiBkb3VibGUgKCp3a0dldE5TVVJMUmVzcG9uc2VDYWxjdWxhdGVk
RXhwaXJhdGlvbikoTlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpCiBleHRlcm4gQk9PTCAoKndrR2V0
TlNVUkxSZXNwb25zZU11c3RSZXZhbGlkYXRlKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7CiBl
eHRlcm4gQk9PTCAoKndrSGl0VGVzdE1lZGlhVUlQYXJ0KShpbnQgcGFydCwgQ0dSZWN0IGJvdW5k
cywgQ0dQb2ludCBwb2ludCk7CiBleHRlcm4gdm9pZCAoKndrTWVhc3VyZU1lZGlhVUlQYXJ0KShp
bnQgcGFydCwgQ0dSZWN0ICpib3VuZHMsIENHU2l6ZSAqbmF0dXJhbFNpemUpOworZXh0ZXJuIE5T
VmlldyAqKCp3a0NyZWF0ZU1lZGlhVUlCYWNrZ3JvdW5kVmlldykodm9pZCk7CiAKK3R5cGVkZWYg
ZW51bSB7CisgICAgd2tNZWRpYVVJQ29udHJvbFRpbWVsaW5lLAorICAgIHdrTWVkaWFVSUNvbnRy
b2xTbGlkZXIsCisgICAgd2tNZWRpYVVJQ29udHJvbFBsYXlQYXVzZUJ1dHRvbiwKKyAgICB3a01l
ZGlhVUlDb250cm9sRXhpdEZ1bGxzY3JlZW5CdXR0b24sCisgICAgd2tNZWRpYVVJQ29udHJvbFJl
d2luZEJ1dHRvbiwKKyAgICB3a01lZGlhVUlDb250cm9sRmFzdEZvcndhcmRCdXR0b24sCisgICAg
d2tNZWRpYVVJQ29udHJvbFZvbHVtZVVwQnV0dG9uLAorICAgIHdrTWVkaWFVSUNvbnRyb2xWb2x1
bWVEb3duQnV0dG9uCit9IHdrTWVkaWFVSUNvbnRyb2xUeXBlOworZXh0ZXJuIE5TQ29udHJvbCAq
KCp3a0NyZWF0ZU1lZGlhVUlDb250cm9sKShpbnQpOworCitleHRlcm4gdW5zaWduZWQgKCp3a1FU
SW5jbHVkZU9ubHlNb2Rlcm5NZWRpYUZpbGVUeXBlcykodm9pZCk7CitleHRlcm4gdm9pZCAoKndr
UVRNb3ZpZURpc2FibGVDb21wb25lbnQpKHVpbnQzMl90WzVdKTsKK2V4dGVybiBmbG9hdCAoKndr
UVRNb3ZpZU1heFRpbWVMb2FkZWQpKFFUTW92aWUqKTsKK2V4dGVybiBOU1N0cmluZyAqKCp3a1FU
TW92aWVNYXhUaW1lTG9hZGVkQ2hhbmdlTm90aWZpY2F0aW9uKSh2b2lkKTsKK2V4dGVybiBpbnQg
KCp3a1FUTW92aWVHZXRUeXBlKShRVE1vdmllKik7CitleHRlcm4gQk9PTCAoKndrUVRNb3ZpZUhh
c0Nsb3NlZENhcHRpb25zKShRVE1vdmllKik7CitleHRlcm4gTlNVUkwgKigqd2tRVE1vdmllUmVz
b2x2ZWRVUkwpKFFUTW92aWUqKTsKK2V4dGVybiB2b2lkICgqd2tRVE1vdmllU2V0U2hvd0Nsb3Nl
ZENhcHRpb25zKShRVE1vdmllKiwgQk9PTCk7CitleHRlcm4gdm9pZCAoKndrUVRNb3ZpZVNlbGVj
dFByZWZlcnJlZEFsdGVybmF0ZXMpKFFUTW92aWUqKTsKK2V4dGVybiBOU0FycmF5ICooKndrUVRH
ZXRTaXRlc0luTWVkaWFEb3dubG9hZENhY2hlKSgpOworZXh0ZXJuIHZvaWQgKCp3a1FUQ2xlYXJN
ZWRpYURvd25sb2FkQ2FjaGVGb3JTaXRlKShOU1N0cmluZyAqc2l0ZSk7CitleHRlcm4gdm9pZCAo
KndrUVRDbGVhck1lZGlhRG93bmxvYWRDYWNoZSkoKTsKIGV4dGVybiB2b2lkICgqd2tTZXRDb29r
aWVTdG9yYWdlUHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCkoQk9PTCk7CiAjZW5kaWYKIGV4dGVybiB2
b2lkICgqd2tTZXRDT05ORUNUUHJveHlGb3JTdHJlYW0pKENGUmVhZFN0cmVhbVJlZiwgQ0ZTdHJp
bmdSZWYgcHJveHlIb3N0LCBDRk51bWJlclJlZiBwcm94eVBvcnQpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQppbmRleCAy
ZWFiZDRmMTRmMzkzMzZlMzM0MGNlOGVkZWUzN2U0ODJkZDY4MDJlLi5jNzIzZDc0NGIwNDZkMjEw
ZmFhYjIyYzJhNDFkZGYwMjQ2M2RhOTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQpAQCAtMzYsOSArMzYsMjMgQEAg
dm9pZCAoKndrRHJhd01lZGlhU2xpZGVyVHJhY2spKENHQ29udGV4dFJlZiBjb250ZXh0LCBDR1Jl
Y3QgcmVjdCwgZmxvYXQgdGltZUxvYWQKIEJPT0wgKCp3a0hpdFRlc3RNZWRpYVVJUGFydCkoaW50
IHBhcnQsIENHUmVjdCBib3VuZHMsIENHUG9pbnQgcG9pbnQpOwogdm9pZCAoKndrRHJhd01lZGlh
VUlQYXJ0KShpbnQgcGFydCwgQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCByZWN0LCB1bnNp
Z25lZCBzdGF0ZSk7CiB2b2lkICgqd2tNZWFzdXJlTWVkaWFVSVBhcnQpKGludCBwYXJ0LCBDR1Jl
Y3QgKmJvdW5kcywgQ0dTaXplICpuYXR1cmFsU2l6ZSk7CitOU1ZpZXcgKigqd2tDcmVhdGVNZWRp
YVVJQmFja2dyb3VuZFZpZXcpKHZvaWQpOworTlNDb250cm9sICooKndrQ3JlYXRlTWVkaWFVSUNv
bnRyb2wpKGludCk7CiBOU1RpbWVJbnRlcnZhbCAoKndrR2V0TlNVUkxSZXNwb25zZUNhbGN1bGF0
ZWRFeHBpcmF0aW9uKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7CiBCT09MICgqd2tHZXROU1VS
TFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKIHZvaWQg
KCp3a1BvcHVwTWVudSkoTlNNZW51KiwgTlNQb2ludCBsb2NhdGlvbiwgZmxvYXQgd2lkdGgsIE5T
VmlldyosIGludCBzZWxlY3RlZEl0ZW0sIE5TRm9udCosIE5TQ29udHJvbFNpemUgY29udHJvbFNp
emUsIGJvb2wgdXNlc0N1c3RvbUFwcGVhcmFuY2UpOwordW5zaWduZWQgKCp3a1FUSW5jbHVkZU9u
bHlNb2Rlcm5NZWRpYUZpbGVUeXBlcykodm9pZCk7Cit2b2lkICgqd2tRVE1vdmllRGlzYWJsZUNv
bXBvbmVudCkodWludDMyX3RbNV0pOworZmxvYXQgKCp3a1FUTW92aWVNYXhUaW1lTG9hZGVkKShR
VE1vdmllKik7CitOU1N0cmluZyAqKCp3a1FUTW92aWVNYXhUaW1lTG9hZGVkQ2hhbmdlTm90aWZp
Y2F0aW9uKSh2b2lkKTsKK2ludCAoKndrUVRNb3ZpZUdldFR5cGUpKFFUTW92aWUqKTsKK0JPT0wg
KCp3a1FUTW92aWVIYXNDbG9zZWRDYXB0aW9ucykoUVRNb3ZpZSopOworTlNVUkwgKigqd2tRVE1v
dmllUmVzb2x2ZWRVUkwpKFFUTW92aWUqKTsKK3ZvaWQgKCp3a1FUTW92aWVTZXRTaG93Q2xvc2Vk
Q2FwdGlvbnMpKFFUTW92aWUqLCBCT09MKTsKK3ZvaWQgKCp3a1FUTW92aWVTZWxlY3RQcmVmZXJy
ZWRBbHRlcm5hdGVzKShRVE1vdmllKik7CitOU0FycmF5ICooKndrUVRHZXRTaXRlc0luTWVkaWFE
b3dubG9hZENhY2hlKSgpOwordm9pZCAoKndrUVRDbGVhck1lZGlhRG93bmxvYWRDYWNoZUZvclNp
dGUpKE5TU3RyaW5nICpzaXRlKTsKK3ZvaWQgKCp3a1FUQ2xlYXJNZWRpYURvd25sb2FkQ2FjaGUp
KCk7CiAKIHZvaWQgKCp3a1NldENPTk5FQ1RQcm94eUZvclN0cmVhbSkoQ0ZSZWFkU3RyZWFtUmVm
LCBDRlN0cmluZ1JlZiBwcm94eUhvc3QsIENGTnVtYmVyUmVmIHByb3h5UG9ydCk7CiB2b2lkICgq
d2tTZXRDT05ORUNUUHJveHlBdXRob3JpemF0aW9uRm9yU3RyZWFtKShDRlJlYWRTdHJlYW1SZWYs
IENGU3RyaW5nUmVmIHByb3h5QXV0aG9yaXphdGlvblN0cmluZyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViVmlkZW9GdWxsc2NyZWVuSFVEV2luZG93Q29udHJv
bGxlci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJWaWRlb0Z1bGxzY3JlZW5I
VURXaW5kb3dDb250cm9sbGVyLm1tCmluZGV4IGZjMGY1MTBjN2EyY2IyNDk3OGQwNGEwYzQ4MDZl
ZDRjNzFjNTMyMDEuLmVmYjZlMmIyNzNjNTgzNTEzM2U3NWIxNjI2YTk1YjA0OTBjNzc5OWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJWaWRlb0Z1bGxzY3JlZW5I
VURXaW5kb3dDb250cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9X
ZWJWaWRlb0Z1bGxzY3JlZW5IVURXaW5kb3dDb250cm9sbGVyLm1tCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOS0yMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOS0yMDE2IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzEsMzggKzMxLDkg
QEAKICNpbXBvcnQgPFdlYkNvcmUvSFRNTFZpZGVvRWxlbWVudC5oPgogI2ltcG9ydCA8V2ViQ29y
ZVN5c3RlbUludGVyZmFjZS5oPgogI2ltcG9ydCA8cGFsL3NwaS9jZy9Db3JlR3JhcGhpY3NTUEku
aD4KLSNpbXBvcnQgPHBhbC9zcGkvbWFjL1FUS2l0U1BJLmg+Ci0jaW1wb3J0IDx3dGYvU29mdExp
bmtpbmcuaD4KLQotU09GVF9MSU5LX0ZSQU1FV09SSyhRVEtpdCkKLQotU09GVF9MSU5LX0NMQVNT
KFFUS2l0LCBRVEhVREJhY2tncm91bmRWaWV3KQotU09GVF9MSU5LX0NMQVNTKFFUS2l0LCBRVEhV
REJ1dHRvbikKLVNPRlRfTElOS19DTEFTUyhRVEtpdCwgUVRIVURTbGlkZXIpCi1TT0ZUX0xJTktf
Q0xBU1MoUVRLaXQsIFFUSFVEVGltZWxpbmUpCi0KLSNkZWZpbmUgUVRIVURCYWNrZ3JvdW5kVmll
dyBnZXRRVEhVREJhY2tncm91bmRWaWV3Q2xhc3MoKQotI2RlZmluZSBRVEhVREJ1dHRvbiBnZXRR
VEhVREJ1dHRvbkNsYXNzKCkKLSNkZWZpbmUgUVRIVURTbGlkZXIgZ2V0UVRIVURTbGlkZXJDbGFz
cygpCi0jZGVmaW5lIFFUSFVEVGltZWxpbmUgZ2V0UVRIVURUaW1lbGluZUNsYXNzKCkKIAogdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotZW51bSBjbGFz
cyBNZWRpYVVJQ29udHJvbCB7Ci0gICAgVGltZWxpbmUsCi0gICAgU2xpZGVyLAotICAgIFBsYXlQ
YXVzZUJ1dHRvbiwKLSAgICBFeGl0RnVsbHNjcmVlbkJ1dHRvbiwKLSAgICBSZXdpbmRCdXR0b24s
Ci0gICAgRmFzdEZvcndhcmRCdXR0b24sCi0gICAgVm9sdW1lVXBCdXR0b24sCi0gICAgVm9sdW1l
RG93bkJ1dHRvbiwKLX07Ci0KLX0KLQogQGludGVyZmFjZSBXZWJWaWRlb0Z1bGxzY3JlZW5IVURX
aW5kb3dDb250cm9sbGVyIChQcml2YXRlKSA8TlNXaW5kb3dEZWxlZ2F0ZT4KIAogLSAodm9pZCl1
cGRhdGVUaW1lOwpAQCAtMjk0LDY4ICsyNjUsMTAgQEAgc3RhdGljIGNvbnN0IE5TVGltZUludGVy
dmFsIEhVRFdpbmRvd0ZhZGVPdXREZWxheSA9IDM7CiAgICAgW3NlbGYgc2V0V2luZG93Om5pbF07
CiB9CiAKLXN0YXRpYyBOU0NvbnRyb2wgKmNyZWF0ZU1lZGlhVUlDb250cm9sKE1lZGlhVUlDb250
cm9sIGNvbnRyb2xUeXBlKQotewotICAgIHN3aXRjaCAoY29udHJvbFR5cGUpIHsKLSAgICBjYXNl
IE1lZGlhVUlDb250cm9sOjpUaW1lbGluZTogewotICAgICAgICBOU1NsaWRlciAqc2xpZGVyID0g
W1tRVEhVRFRpbWVsaW5lIGFsbG9jXSBpbml0XTsKLSAgICAgICAgW1tzbGlkZXIgY2VsbF0gc2V0
Q29udGludW91czpZRVNdOwotICAgICAgICByZXR1cm4gc2xpZGVyOwotICAgIH0KLSAgICBjYXNl
IE1lZGlhVUlDb250cm9sOjpTbGlkZXI6IHsKLSAgICAgICAgTlNCdXR0b24gKnNsaWRlciA9IFtb
UVRIVURTbGlkZXIgYWxsb2NdIGluaXRdOwotICAgICAgICBbW3NsaWRlciBjZWxsXSBzZXRDb250
aW51b3VzOllFU107Ci0gICAgICAgIHJldHVybiBzbGlkZXI7Ci0gICAgfQotICAgIGNhc2UgTWVk
aWFVSUNvbnRyb2w6OlBsYXlQYXVzZUJ1dHRvbjogewotICAgICAgICBOU0J1dHRvbiAqYnV0dG9u
ID0gW1tRVEhVREJ1dHRvbiBhbGxvY10gaW5pdF07Ci0gICAgICAgIFtidXR0b24gc2V0SW1hZ2U6
W05TSW1hZ2UgaW1hZ2VOYW1lZDpAIk5TUGxheVRlbXBsYXRlIl1dOwotICAgICAgICBbYnV0dG9u
IHNldEFsdGVybmF0ZUltYWdlOltOU0ltYWdlIGltYWdlTmFtZWQ6QCJOU1BhdXNlUVRQcml2YXRl
VGVtcGxhdGUiXV07Ci0KLSAgICAgICAgW1tidXR0b24gY2VsbF0gc2V0U2hvd3NTdGF0ZUJ5Ok5T
Q29udGVudHNDZWxsTWFza107Ci0gICAgICAgIFtidXR0b24gc2V0Qm9yZGVyZWQ6Tk9dOwotICAg
ICAgICByZXR1cm4gYnV0dG9uOwotICAgIH0KLSAgICBjYXNlIE1lZGlhVUlDb250cm9sOjpFeGl0
RnVsbHNjcmVlbkJ1dHRvbjogewotICAgICAgICBOU0J1dHRvbiAqYnV0dG9uID0gW1tRVEhVREJ1
dHRvbiBhbGxvY10gaW5pdF07Ci0gICAgICAgIFtidXR0b24gc2V0SW1hZ2U6W05TSW1hZ2UgaW1h
Z2VOYW1lZDpAIk5TRXhpdEZ1bGxTY3JlZW5UZW1wbGF0ZSJdXTsKLSAgICAgICAgW2J1dHRvbiBz
ZXRCb3JkZXJlZDpOT107Ci0gICAgICAgIHJldHVybiBidXR0b247Ci0gICAgfQotICAgIGNhc2Ug
TWVkaWFVSUNvbnRyb2w6OlJld2luZEJ1dHRvbjogewotICAgICAgICBOU0J1dHRvbiAqYnV0dG9u
ID0gW1tRVEhVREJ1dHRvbiBhbGxvY10gaW5pdF07Ci0gICAgICAgIFtidXR0b24gc2V0SW1hZ2U6
W05TSW1hZ2UgaW1hZ2VOYW1lZDpAIk5TUmV3aW5kVGVtcGxhdGUiXV07Ci0gICAgICAgIFtidXR0
b24gc2V0Qm9yZGVyZWQ6Tk9dOwotICAgICAgICByZXR1cm4gYnV0dG9uOwotICAgIH0KLSAgICBj
YXNlIE1lZGlhVUlDb250cm9sOjpGYXN0Rm9yd2FyZEJ1dHRvbjogewotICAgICAgICBOU0J1dHRv
biAqYnV0dG9uID0gW1tRVEhVREJ1dHRvbiBhbGxvY10gaW5pdF07Ci0gICAgICAgIFtidXR0b24g
c2V0SW1hZ2U6W05TSW1hZ2UgaW1hZ2VOYW1lZDpAIk5TRmFzdEZvcndhcmRUZW1wbGF0ZSJdXTsK
LSAgICAgICAgW2J1dHRvbiBzZXRCb3JkZXJlZDpOT107Ci0gICAgICAgIHJldHVybiBidXR0b247
Ci0gICAgfQotICAgIGNhc2UgTWVkaWFVSUNvbnRyb2w6OlZvbHVtZVVwQnV0dG9uOiB7Ci0gICAg
ICAgIE5TQnV0dG9uICpidXR0b24gPSBbW1FUSFVEQnV0dG9uIGFsbG9jXSBpbml0XTsKLSAgICAg
ICAgW2J1dHRvbiBzZXRJbWFnZTpbTlNJbWFnZSBpbWFnZU5hbWVkOkAiTlNBdWRpb091dHB1dFZv
bHVtZUhpZ2hUZW1wbGF0ZSJdXTsKLSAgICAgICAgW2J1dHRvbiBzZXRCb3JkZXJlZDpOT107Ci0g
ICAgICAgIHJldHVybiBidXR0b247Ci0gICAgfQotICAgIGNhc2UgTWVkaWFVSUNvbnRyb2w6OlZv
bHVtZURvd25CdXR0b246IHsKLSAgICAgICAgTlNCdXR0b24gKmJ1dHRvbiA9IFtbUVRIVURCdXR0
b24gYWxsb2NdIGluaXRdOwotICAgICAgICBbYnV0dG9uIHNldEltYWdlOltOU0ltYWdlIGltYWdl
TmFtZWQ6QCJOU0F1ZGlvT3V0cHV0Vm9sdW1lTG93VGVtcGxhdGUiXV07Ci0gICAgICAgIFtidXR0
b24gc2V0Qm9yZGVyZWQ6Tk9dOwotICAgICAgICByZXR1cm4gYnV0dG9uOwotICAgIH0KLSAgICB9
Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gbmlsOwotfQotCi1zdGF0
aWMgTlNDb250cm9sICpjcmVhdGVDb250cm9sV2l0aE1lZGlhVUlDb250cm9sVHlwZShNZWRpYVVJ
Q29udHJvbCBjb250cm9sVHlwZSwgTlNSZWN0IGZyYW1lKQorc3RhdGljIE5TQ29udHJvbCAqY3Jl
YXRlQ29udHJvbFdpdGhNZWRpYVVJQ29udHJvbFR5cGUoaW50IGNvbnRyb2xUeXBlLCBOU1JlY3Qg
ZnJhbWUpCiB7Ci0gICAgTlNDb250cm9sICpjb250cm9sID0gY3JlYXRlTWVkaWFVSUNvbnRyb2wo
Y29udHJvbFR5cGUpOwotICAgIGNvbnRyb2wuZnJhbWUgPSBmcmFtZTsKKyAgICBOU0NvbnRyb2wg
KmNvbnRyb2wgPSB3a0NyZWF0ZU1lZGlhVUlDb250cm9sKGNvbnRyb2xUeXBlKTsKKyAgICBbY29u
dHJvbCBzZXRGcmFtZTpmcmFtZV07CiAgICAgcmV0dXJuIGNvbnRyb2w7CiB9CiAKQEAgLTM3Miwy
MSArMjg1LDYgQEAgc3RhdGljIE5TVGV4dEZpZWxkICpjcmVhdGVUaW1lVGV4dEZpZWxkKE5TUmVj
dCBmcmFtZSkKICAgICByZXR1cm4gdGV4dEZpZWxkOwogfQogCi1zdGF0aWMgTlNWaWV3ICpjcmVh
dGVNZWRpYVVJQmFja2dyb3VuZFZpZXcoKQotewotICAgIGlkIHZpZXcgPSBbW1FUSFVEQmFja2dy
b3VuZFZpZXcgYWxsb2NdIGluaXRdOwotCi0gICAgY29uc3QgQ0dGbG9hdCBxdWlja1RpbWVQbGF5
ZXJIVURIZWlnaHQgPSA1OTsKLSAgICBjb25zdCBDR0Zsb2F0IHF1aWNrVGltZVBsYXllckhVRENv
bnRlbnRCb3JkZXJQb3NpdGlvbiA9IDM4OwotCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVz
aAotI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRlZC1kZWNsYXJh
dGlvbnMiCi0gICAgW3ZpZXcgc2V0Q29udGVudEJvcmRlclBvc2l0aW9uOnF1aWNrVGltZVBsYXll
ckhVRENvbnRlbnRCb3JkZXJQb3NpdGlvbiAvIHF1aWNrVGltZVBsYXllckhVREhlaWdodF07Ci0j
cHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCi0KLSAgICByZXR1cm4gdmlldzsKLX0KLQogLSAo
dm9pZCl3aW5kb3dEaWRMb2FkCiB7CiAgICAgc3RhdGljIGNvbnN0IENHRmxvYXQgaG9yaXpvbnRh
bE1hcmdpbiA9IDEwOwpAQCAtNDEyLDcgKzMxMCw3IEBAIHN0YXRpYyBOU1ZpZXcgKmNyZWF0ZU1l
ZGlhVUlCYWNrZ3JvdW5kVmlldygpCiAgICAgTlNXaW5kb3cgKndpbmRvdyA9IFtzZWxmIHdpbmRv
d107CiAgICAgQVNTRVJUKHdpbmRvdyk7CiAKLSAgICBOU1ZpZXcgKmJhY2tncm91bmQgPSBjcmVh
dGVNZWRpYVVJQmFja2dyb3VuZFZpZXcoKTsKKyAgICBOU1ZpZXcgKmJhY2tncm91bmQgPSB3a0Ny
ZWF0ZU1lZGlhVUlCYWNrZ3JvdW5kVmlldygpOwogCiAgICAgW3dpbmRvdyBzZXRDb250ZW50Vmll
dzpiYWNrZ3JvdW5kXTsKICAgICBfYXJlYSA9IFtbTlNUcmFja2luZ0FyZWEgYWxsb2NdIGluaXRX
aXRoUmVjdDpbYmFja2dyb3VuZCBib3VuZHNdIG9wdGlvbnM6TlNUcmFja2luZ01vdXNlRW50ZXJl
ZEFuZEV4aXRlZCB8IE5TVHJhY2tpbmdBY3RpdmVBbHdheXMgb3duZXI6c2VsZiB1c2VySW5mbzpu
aWxdOwpAQCAtNDIyLDE0ICszMjAsMTQgQEAgc3RhdGljIE5TVmlldyAqY3JlYXRlTWVkaWFVSUJh
Y2tncm91bmRWaWV3KCkKICAgICBOU1ZpZXcgKmNvbnRlbnRWaWV3ID0gW3dpbmRvdyBjb250ZW50
Vmlld107CiAKICAgICBDR0Zsb2F0IGNlbnRlciA9IENHRmxvb3IoKHdpbmRvd1dpZHRoIC0gcGxh
eUJ1dHRvbldpZHRoKSAvIDIpOwotICAgIF9wbGF5QnV0dG9uID0gKE5TQnV0dG9uICopY3JlYXRl
Q29udHJvbFdpdGhNZWRpYVVJQ29udHJvbFR5cGUoTWVkaWFVSUNvbnRyb2w6OlBsYXlQYXVzZUJ1
dHRvbiwgTlNNYWtlUmVjdChjZW50ZXIsIHdpbmRvd0hlaWdodCAtIHBsYXlCdXR0b25Ub3BNYXJn
aW4gLSBwbGF5QnV0dG9uSGVpZ2h0LCBwbGF5QnV0dG9uV2lkdGgsIHBsYXlCdXR0b25IZWlnaHQp
KTsKKyAgICBfcGxheUJ1dHRvbiA9IChOU0J1dHRvbiAqKWNyZWF0ZUNvbnRyb2xXaXRoTWVkaWFV
SUNvbnRyb2xUeXBlKHdrTWVkaWFVSUNvbnRyb2xQbGF5UGF1c2VCdXR0b24sIE5TTWFrZVJlY3Qo
Y2VudGVyLCB3aW5kb3dIZWlnaHQgLSBwbGF5QnV0dG9uVG9wTWFyZ2luIC0gcGxheUJ1dHRvbkhl
aWdodCwgcGxheUJ1dHRvbldpZHRoLCBwbGF5QnV0dG9uSGVpZ2h0KSk7CiAgICAgQVNTRVJUKFtf
cGxheUJ1dHRvbiBpc0tpbmRPZkNsYXNzOltOU0J1dHRvbiBjbGFzc11dKTsKICAgICBbX3BsYXlC
dXR0b24gc2V0VGFyZ2V0OnNlbGZdOwogICAgIFtfcGxheUJ1dHRvbiBzZXRBY3Rpb246QHNlbGVj
dG9yKHRvZ2dsZVBsYXlpbmc6KV07CiAgICAgW2NvbnRlbnRWaWV3IGFkZFN1YnZpZXc6X3BsYXlC
dXR0b25dOwogCiAgICAgQ0dGbG9hdCBjbG9zZVRvUmlnaHQgPSB3aW5kb3dXaWR0aCAtIGhvcml6
b250YWxNYXJnaW4gLSBleGl0RnVsbHNjcmVlbkJ1dHRvbldpZHRoOwotICAgIE5TQ29udHJvbCAq
ZXhpdEZ1bGxzY3JlZW5CdXR0b24gPSBjcmVhdGVDb250cm9sV2l0aE1lZGlhVUlDb250cm9sVHlw
ZShNZWRpYVVJQ29udHJvbDo6RXhpdEZ1bGxzY3JlZW5CdXR0b24sIE5TTWFrZVJlY3QoY2xvc2VU
b1JpZ2h0LCB3aW5kb3dIZWlnaHQgLSBleGl0RnVsbHNjcmVlbkJ1dHRvblRvcE1hcmdpbiAtIGV4
aXRGdWxsc2NyZWVuQnV0dG9uSGVpZ2h0LCBleGl0RnVsbHNjcmVlbkJ1dHRvbldpZHRoLCBleGl0
RnVsbHNjcmVlbkJ1dHRvbkhlaWdodCkpOworICAgIE5TQ29udHJvbCAqZXhpdEZ1bGxzY3JlZW5C
dXR0b24gPSBjcmVhdGVDb250cm9sV2l0aE1lZGlhVUlDb250cm9sVHlwZSh3a01lZGlhVUlDb250
cm9sRXhpdEZ1bGxzY3JlZW5CdXR0b24sIE5TTWFrZVJlY3QoY2xvc2VUb1JpZ2h0LCB3aW5kb3dI
ZWlnaHQgLSBleGl0RnVsbHNjcmVlbkJ1dHRvblRvcE1hcmdpbiAtIGV4aXRGdWxsc2NyZWVuQnV0
dG9uSGVpZ2h0LCBleGl0RnVsbHNjcmVlbkJ1dHRvbldpZHRoLCBleGl0RnVsbHNjcmVlbkJ1dHRv
bkhlaWdodCkpOwogICAgIFtleGl0RnVsbHNjcmVlbkJ1dHRvbiBzZXRBY3Rpb246QHNlbGVjdG9y
KGV4aXRGdWxsc2NyZWVuOildOwogICAgIFtleGl0RnVsbHNjcmVlbkJ1dHRvbiBzZXRUYXJnZXQ6
c2VsZl07CiAgICAgW2NvbnRlbnRWaWV3IGFkZFN1YnZpZXc6ZXhpdEZ1bGxzY3JlZW5CdXR0b25d
OwpAQCAtNDM3LDI3ICszMzUsMjcgQEAgc3RhdGljIE5TVmlldyAqY3JlYXRlTWVkaWFVSUJhY2tn
cm91bmRWaWV3KCkKICAgICAKICAgICBDR0Zsb2F0IHZvbHVtZUNvbnRyb2xzQm90dG9tID0gd2lu
ZG93SGVpZ2h0IC0gdm9sdW1lQ29udHJvbHNUb3BNYXJnaW4gLSB2b2x1bWVCdXR0b25IZWlnaHQ7
CiAgICAgQ0dGbG9hdCBsZWZ0ID0gaG9yaXpvbnRhbE1hcmdpbjsKLSAgICBOU0NvbnRyb2wgKnZv
bHVtZURvd25CdXR0b24gPSBjcmVhdGVDb250cm9sV2l0aE1lZGlhVUlDb250cm9sVHlwZShNZWRp
YVVJQ29udHJvbDo6Vm9sdW1lRG93bkJ1dHRvbiwgTlNNYWtlUmVjdChsZWZ0LCB2b2x1bWVDb250
cm9sc0JvdHRvbSwgdm9sdW1lQnV0dG9uV2lkdGgsIHZvbHVtZUJ1dHRvbkhlaWdodCkpOworICAg
IE5TQ29udHJvbCAqdm9sdW1lRG93bkJ1dHRvbiA9IGNyZWF0ZUNvbnRyb2xXaXRoTWVkaWFVSUNv
bnRyb2xUeXBlKHdrTWVkaWFVSUNvbnRyb2xWb2x1bWVEb3duQnV0dG9uLCBOU01ha2VSZWN0KGxl
ZnQsIHZvbHVtZUNvbnRyb2xzQm90dG9tLCB2b2x1bWVCdXR0b25XaWR0aCwgdm9sdW1lQnV0dG9u
SGVpZ2h0KSk7CiAgICAgW2NvbnRlbnRWaWV3IGFkZFN1YnZpZXc6dm9sdW1lRG93bkJ1dHRvbl07
CiAgICAgW3ZvbHVtZURvd25CdXR0b24gc2V0VGFyZ2V0OnNlbGZdOwogICAgIFt2b2x1bWVEb3du
QnV0dG9uIHNldEFjdGlvbjpAc2VsZWN0b3Ioc2V0Vm9sdW1lVG9aZXJvOildOwogICAgIFt2b2x1
bWVEb3duQnV0dG9uIHJlbGVhc2VdOwogCiAgICAgbGVmdCArPSB2b2x1bWVCdXR0b25XaWR0aDsK
LSAgICBfdm9sdW1lU2xpZGVyID0gY3JlYXRlQ29udHJvbFdpdGhNZWRpYVVJQ29udHJvbFR5cGUo
TWVkaWFVSUNvbnRyb2w6OlNsaWRlciwgTlNNYWtlUmVjdChsZWZ0LCB2b2x1bWVDb250cm9sc0Jv
dHRvbSArIENHRmxvb3IoKHZvbHVtZUJ1dHRvbkhlaWdodCAtIHZvbHVtZVNsaWRlckhlaWdodCkg
LyAyKSwgdm9sdW1lU2xpZGVyV2lkdGgsIHZvbHVtZVNsaWRlckhlaWdodCkpOworICAgIF92b2x1
bWVTbGlkZXIgPSBjcmVhdGVDb250cm9sV2l0aE1lZGlhVUlDb250cm9sVHlwZSh3a01lZGlhVUlD
b250cm9sU2xpZGVyLCBOU01ha2VSZWN0KGxlZnQsIHZvbHVtZUNvbnRyb2xzQm90dG9tICsgQ0dG
bG9vcigodm9sdW1lQnV0dG9uSGVpZ2h0IC0gdm9sdW1lU2xpZGVySGVpZ2h0KSAvIDIpLCB2b2x1
bWVTbGlkZXJXaWR0aCwgdm9sdW1lU2xpZGVySGVpZ2h0KSk7CiAgICAgW192b2x1bWVTbGlkZXIg
c2V0VmFsdWU6W05TTnVtYmVyIG51bWJlcldpdGhEb3VibGU6W3NlbGYgbWF4Vm9sdW1lXV0gZm9y
S2V5OkAibWF4VmFsdWUiXTsKICAgICBbX3ZvbHVtZVNsaWRlciBzZXRUYXJnZXQ6c2VsZl07CiAg
ICAgW192b2x1bWVTbGlkZXIgc2V0QWN0aW9uOkBzZWxlY3Rvcih2b2x1bWVDaGFuZ2VkOildOwog
ICAgIFtjb250ZW50VmlldyBhZGRTdWJ2aWV3Ol92b2x1bWVTbGlkZXJdOwogCiAgICAgbGVmdCAr
PSB2b2x1bWVTbGlkZXJXaWR0aCArIHZvbHVtZVVwQnV0dG9uTGVmdE1hcmdpbjsKLSAgICBOU0Nv
bnRyb2wgKnZvbHVtZVVwQnV0dG9uID0gY3JlYXRlQ29udHJvbFdpdGhNZWRpYVVJQ29udHJvbFR5
cGUoTWVkaWFVSUNvbnRyb2w6OlZvbHVtZVVwQnV0dG9uLCBOU01ha2VSZWN0KGxlZnQsIHZvbHVt
ZUNvbnRyb2xzQm90dG9tLCB2b2x1bWVCdXR0b25XaWR0aCwgdm9sdW1lQnV0dG9uSGVpZ2h0KSk7
CisgICAgTlNDb250cm9sICp2b2x1bWVVcEJ1dHRvbiA9IGNyZWF0ZUNvbnRyb2xXaXRoTWVkaWFV
SUNvbnRyb2xUeXBlKHdrTWVkaWFVSUNvbnRyb2xWb2x1bWVVcEJ1dHRvbiwgTlNNYWtlUmVjdChs
ZWZ0LCB2b2x1bWVDb250cm9sc0JvdHRvbSwgdm9sdW1lQnV0dG9uV2lkdGgsIHZvbHVtZUJ1dHRv
bkhlaWdodCkpOwogICAgIFt2b2x1bWVVcEJ1dHRvbiBzZXRUYXJnZXQ6c2VsZl07CiAgICAgW3Zv
bHVtZVVwQnV0dG9uIHNldEFjdGlvbjpAc2VsZWN0b3Ioc2V0Vm9sdW1lVG9NYXhpbXVtOildOwog
ICAgIFtjb250ZW50VmlldyBhZGRTdWJ2aWV3OnZvbHVtZVVwQnV0dG9uXTsKICAgICBbdm9sdW1l
VXBCdXR0b24gcmVsZWFzZV07CiAKLSAgICBfdGltZWxpbmUgPSBjcmVhdGVNZWRpYVVJQ29udHJv
bChNZWRpYVVJQ29udHJvbDo6VGltZWxpbmUpOworICAgIF90aW1lbGluZSA9IHdrQ3JlYXRlTWVk
aWFVSUNvbnRyb2wod2tNZWRpYVVJQ29udHJvbFRpbWVsaW5lKTsKIAogICAgIFtfdGltZWxpbmUg
c2V0VGFyZ2V0OnNlbGZdOwogICAgIFtfdGltZWxpbmUgc2V0QWN0aW9uOkBzZWxlY3Rvcih0aW1l
bGluZVBvc2l0aW9uQ2hhbmdlZDopXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0K
aW5kZXggYmRhNWQ3M2RmYzEyMmYzZTAyMjNhYWFlNTUyODRkNGIzOWU1NzNjZS4uMGRkZDU3MTQ1
OWI4NTZmMzkyMDVlMTEwY2MwMGNjY2FlZTNmZDBlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1J
bnRlcmZhY2UubW0KQEAgLTQzLDYgKzQzLDE4IEBAIHZvaWQgSW5pdFdlYkNvcmVTeXN0ZW1JbnRl
cmZhY2Uodm9pZCkKICAgICAgICAgSU5JVChEcmF3TWVkaWFVSVBhcnQpOwogICAgICAgICBJTklU
KEhpdFRlc3RNZWRpYVVJUGFydCk7CiAgICAgICAgIElOSVQoTWVhc3VyZU1lZGlhVUlQYXJ0KTsK
KyAgICAgICAgSU5JVChRVEluY2x1ZGVPbmx5TW9kZXJuTWVkaWFGaWxlVHlwZXMpOworICAgICAg
ICBJTklUKFFUTW92aWVEaXNhYmxlQ29tcG9uZW50KTsKKyAgICAgICAgSU5JVChRVE1vdmllR2V0
VHlwZSk7CisgICAgICAgIElOSVQoUVRNb3ZpZUhhc0Nsb3NlZENhcHRpb25zKTsKKyAgICAgICAg
SU5JVChRVE1vdmllTWF4VGltZUxvYWRlZCk7CisgICAgICAgIElOSVQoUVRNb3ZpZU1heFRpbWVM
b2FkZWRDaGFuZ2VOb3RpZmljYXRpb24pOworICAgICAgICBJTklUKFFUTW92aWVSZXNvbHZlZFVS
TCk7CisgICAgICAgIElOSVQoUVRNb3ZpZVNlbGVjdFByZWZlcnJlZEFsdGVybmF0ZXMpOworICAg
ICAgICBJTklUKFFUTW92aWVTZXRTaG93Q2xvc2VkQ2FwdGlvbnMpOworICAgICAgICBJTklUKFFU
R2V0U2l0ZXNJbk1lZGlhRG93bmxvYWRDYWNoZSk7CisgICAgICAgIElOSVQoUVRDbGVhck1lZGlh
RG93bmxvYWRDYWNoZUZvclNpdGUpOworICAgICAgICBJTklUKFFUQ2xlYXJNZWRpYURvd25sb2Fk
Q2FjaGUpOwogI2VuZGlmCiAgICAgICAgIElOSVQoU2V0Q09OTkVDVFByb3h5QXV0aG9yaXphdGlv
bkZvclN0cmVhbSk7CiAgICAgICAgIElOSVQoU2V0Q09OTkVDVFByb3h5Rm9yU3RyZWFtKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3Rl
bUludGVyZmFjZS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YlN5c3RlbUludGVyZmFjZS5tbQppbmRleCAxNzQ2NTg2YjI0MmY1MmUwN2E5OWZlOTE1YWE2YjRm
NjJhM2JjNWQ0Li5hMzIwMjQ1MzdjYWU3NzQwNGQxMjJhM2EzODU0ZDNjMmU3YmEyNDkwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViU3lzdGVtSW50ZXJmYWNlLm1tCkBAIC00OSw5ICs0OSwyNSBAQCB2b2lkIEluaXRXZWJDb3Jl
U3lzdGVtSW50ZXJmYWNlKHZvaWQpCiAgICAgSU5JVChEcmF3TWVkaWFTbGlkZXJUcmFjayk7CiAg
ICAgSU5JVChIaXRUZXN0TWVkaWFVSVBhcnQpOwogICAgIElOSVQoTWVhc3VyZU1lZGlhVUlQYXJ0
KTsKKyAgICBJTklUKENyZWF0ZU1lZGlhVUlCYWNrZ3JvdW5kVmlldyk7CisgICAgSU5JVChDcmVh
dGVNZWRpYVVJQ29udHJvbCk7CiAjZW5kaWYKICAgICBJTklUKFNldENPTk5FQ1RQcm94eUF1dGhv
cml6YXRpb25Gb3JTdHJlYW0pOwogICAgIElOSVQoU2V0Q09OTkVDVFByb3h5Rm9yU3RyZWFtKTsK
KyNpZiBFTkFCTEUoVklERU8pICYmICFQTEFURk9STShJT1MpCisgICAgSU5JVChRVEluY2x1ZGVP
bmx5TW9kZXJuTWVkaWFGaWxlVHlwZXMpOworICAgIElOSVQoUVRNb3ZpZURpc2FibGVDb21wb25l
bnQpOworICAgIElOSVQoUVRNb3ZpZU1heFRpbWVMb2FkZWQpOworICAgIElOSVQoUVRNb3ZpZU1h
eFRpbWVMb2FkZWRDaGFuZ2VOb3RpZmljYXRpb24pOworICAgIElOSVQoUVRNb3ZpZUdldFR5cGUp
OworICAgIElOSVQoUVRNb3ZpZUhhc0Nsb3NlZENhcHRpb25zKTsKKyAgICBJTklUKFFUTW92aWVS
ZXNvbHZlZFVSTCk7CisgICAgSU5JVChRVE1vdmllU2V0U2hvd0Nsb3NlZENhcHRpb25zKTsKKyAg
ICBJTklUKFFUTW92aWVTZWxlY3RQcmVmZXJyZWRBbHRlcm5hdGVzKTsKKyAgICBJTklUKFFUR2V0
U2l0ZXNJbk1lZGlhRG93bmxvYWRDYWNoZSk7CisgICAgSU5JVChRVENsZWFyTWVkaWFEb3dubG9h
ZENhY2hlRm9yU2l0ZSk7CisgICAgSU5JVChRVENsZWFyTWVkaWFEb3dubG9hZENhY2hlKTsKKyNl
bmRpZgogCiAjaWYgIVBMQVRGT1JNKElPUykKICAgICBJTklUKEV4ZWN1dGFibGVXYXNMaW5rZWRP
bk9yQmVmb3JlU25vd0xlb3BhcmQpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>