<?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>277770</bug_id>
          
          <creation_ts>2024-08-07 13:54:42 -0700</creation_ts>
          <short_desc>REGRESSION(281227@main): Causes extra IPC to the UI process in some cases (&lt;rdar://133167925&gt;)</short_desc>
          <delta_ts>2024-08-08 08:56:27 -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>276393</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>mattwoodrow</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2051261</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2024-08-07 13:54:42 -0700</bug_when>
    <thetext>https://commits.webkit.org/281227@main introduced a regression:
Causes extra IPC to the UI process in some cases (&lt;rdar://133167925&gt;)

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>2051263</commentid>
    <comment_count>1</comment_count>
      <attachid>472074</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2024-08-07 13:54:49 -0700</bug_when>
    <thetext>Created attachment 472074
REVERT of 281227@main

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

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

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2051266</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2024-08-07 13:58:38 -0700</bug_when>
    <thetext>Committed 281957@main (2ae05609532b): &lt;https://commits.webkit.org/281957@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 472074.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2051267</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2024-08-07 13:59:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/133410922&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2051424</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2024-08-08 08:56:27 -0700</bug_when>
    <thetext>Committed 280938.209@safari-7619-branch (f20946ede381): &lt;https://commits.webkit.org/280938.209@safari-7619-branch&gt;

Reviewed commits have been landed. Closing PR #1573 and removing active labels.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>472074</attachid>
            <date>2024-08-07 13:54:49 -0700</date>
            <delta_ts>2024-08-07 13:58:39 -0700</delta_ts>
            <desc>REVERT of 281227@main</desc>
            <filename>bug-277770-20240807205449.patch</filename>
            <type>text/plain</type>
            <size>25311</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">RnJvbSBkYTcyYTkwYjRhMTFiNWUzOGRiMjI2ZTE1ODI0ZmIxMWE5ZmQ3NTE4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDb21taXQgUXVldWUgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgpEYXRlOiBXZWQsIDcgQXVnIDIwMjQgMjA6NTQ6NDYgKzAwMDAKU3ViamVjdDogW1BBVENIXSBV
bnJldmlld2VkLCByZXZlcnRpbmcgMjgxMjI3QG1haW4uCiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9Mjc3NzcwCgpDYXVzZXMgZXh0cmEgSVBDIHRvIHRoZSBVSSBwcm9j
ZXNzIGluIHNvbWUgY2FzZXMgKDxyZGFyOi8vMTMzMTY3OTI1PikKClJldmVydGVkIGNoYW5nZXNl
dDoKCiJTcGVlZG9tZXRlciAzOiBnZXRCb3VuZGluZ0NsaWVudFJlY3Qgc3BlbmRzIHRpbWUgdXBk
YXRpbmcgbGF5ZXIgcG9zaXRpb25zIHRoYXQgaXQgZG9lc24ndCB1c2UuIgpodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc2MzkzCmh0dHBzOi8vY29tbWl0cy53ZWJraXQu
b3JnLzI4MTIyN0BtYWluCi0tLQogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCAgICAg
ICAgICAgICAgIHwgIDQgKy0KIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oICAgICAgICAg
ICAgICAgICB8ICA1IC0tCiBTb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgICAgICAgICAg
ICAgICAgfCAgMyArLQogU291cmNlL1dlYkNvcmUvZG9tL01vdXNlUmVsYXRlZEV2ZW50LmNwcCAg
ICAgIHwgIDEgLQogLi4uL01lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQuY3Bw
IHwgIDEgLQogU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhbEZyYW1lVmlldy5jcHAgICAgICAgIHwg
NDMgKy0tLS0tLS0tLS0tLS0KIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXcuaCAg
ICAgICAgICB8IDU2ICstLS0tLS0tLS0tLS0tLS0tLS0KIC4uLi9wYWdlL0xvY2FsRnJhbWVWaWV3
TGF5b3V0Q29udGV4dC5jcHAgICAgICB8IDIzICsrKy0tLS0tCiAuLi4vcGFnZS9Mb2NhbEZyYW1l
Vmlld0xheW91dENvbnRleHQuaCAgICAgICAgfCAgOCArLS0KIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJFbGVtZW50LmNwcCAgICB8ICA0ICstCiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyRWxlbWVudC5oICAgICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyLmNwcCAgICAgIHwgMTIgKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyLmggICAgICAgIHwgMTAgKystLQogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVySW5saW5lcy5oIHwgMTkgLS0tLS0tLQogLi4uL3JlbmRlcmluZy9SZW5kZXJM
YXllclNjcm9sbGFibGVBcmVhLmNwcCAgIHwgIDQgKy0KIDE1IGZpbGVzIGNoYW5nZWQsIDM2IGlu
c2VydGlvbnMoKyksIDE1OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRl
eCBjOTA5ZjM5YTc1ZjAuLmU5YTc3NGM0NmIxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBA
IC0yNzYzLDkgKzI3NjMsOSBAQCBhdXRvIERvY3VtZW50Ojp1cGRhdGVMYXlvdXQoT3B0aW9uU2V0
PExheW91dE9wdGlvbnM+IGxheW91dE9wdGlvbnMsIGNvbnN0IEVsZW1lbgogICAgICAgICAgICAg
ICAgIH0gZWxzZQogICAgICAgICAgICAgICAgICAgICBjb250ZXh0ID0gbnVsbHB0cjsKICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIGlmIChmcmFtZVZpZXctPmxheW91dENvbnRleHQoKS5uZWVk
c0xheW91dCgpKSB7CisgICAgICAgICAgICBpZiAoZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCku
aXNMYXlvdXRQZW5kaW5nKCkgfHwgcmVuZGVyVmlldygpLT5uZWVkc0xheW91dCgpKSB7CiAgICAg
ICAgICAgICAgICAgQ29udGVudFZpc2liaWxpdHlGb3JjZUxheW91dFNjb3BlIHNjb3BlKCpyZW5k
ZXJWaWV3KCksIGNvbnRleHQpOwotICAgICAgICAgICAgICAgIGZyYW1lVmlldy0+bGF5b3V0Q29u
dGV4dCgpLmxheW91dChsYXlvdXRPcHRpb25zLmNvbnRhaW5zKExheW91dE9wdGlvbnM6OkNhbkRl
ZmVyVXBkYXRlTGF5ZXJQb3NpdGlvbnMpKTsKKyAgICAgICAgICAgICAgICBmcmFtZVZpZXctPmxh
eW91dENvbnRleHQoKS5sYXlvdXQoKTsKICAgICAgICAgICAgICAgICByZXN1bHQgPSBVcGRhdGVM
YXlvdXRSZXN1bHQ6OkNoYW5nZXNEb25lOwogICAgICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5oCmluZGV4IDMzYWRlN2MyOGMyYi4uMDEzZjk2ZTU4MDZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
aApAQCAtMzcyLDExICszNzIsNiBAQCBlbnVtIGNsYXNzIExheW91dE9wdGlvbnMgOiB1aW50OF90
IHsKICAgICBDb250ZW50VmlzaWJpbGl0eUZvcmNlTGF5b3V0ID0gMSA8PCAyLAogICAgIFVwZGF0
ZUNvbXBvc2l0aW5nTGF5ZXJzID0gMSA8PCAzLAogICAgIERvTm90TGF5b3V0QW5jZXN0b3JEb2N1
bWVudHMgPSAxIDw8IDQsCi0gICAgLy8gRG9lc24ndCBjYWxsIFJlbmRlckxheWVyOjpyZWN1cnNp
dmVVcGRhdGVMYXllclBvc2l0aW9uc0FmdGVyTGF5b3V0IGlmCi0gICAgLy8gcG9zc2libGUuIFRo
ZSBjYWxsZXIgc2hvdWxkIHVzZSBhIExvY2FsRnJhbWVWaWV3OjpBdXRvUHJldmVudExheWVyQWNj
ZXNzCi0gICAgLy8gZm9yIHRoZSBzY29wZSB0aGF0IGxheW91dCBpcyBleHBlY3RlZCB0byBiZSBm
bHVzaGVkIHRvIHN0b3AgYW55IGFjY2VzcyB0bwotICAgIC8vIHRoZSBzdGFsZSBSZW5kZXJMYXll
cnMuCi0gICAgQ2FuRGVmZXJVcGRhdGVMYXllclBvc2l0aW9ucyA9IDEgPDwgNQogfTsKIAogZW51
bSBjbGFzcyBIdHRwRXF1aXZQb2xpY3kgOiB1aW50OF90IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApp
bmRleCA2OTNlNGFiZTRhODYuLjgxOWNlYWI4M2RhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApA
QCAtMTkxOCw4ICsxOTE4LDcgQEAgc3RkOjpvcHRpb25hbDxzdGQ6OnBhaXI8Q2hlY2tlZFB0cjxS
ZW5kZXJPYmplY3Q+LCBGbG9hdFJlY3Q+PiBFbGVtZW50Ojpib3VuZGluZ0EKIEZsb2F0UmVjdCBF
bGVtZW50Ojpib3VuZGluZ0NsaWVudFJlY3QoKQogewogICAgIFJlZiBkb2N1bWVudCA9IHRoaXMt
PmRvY3VtZW50KCk7Ci0gICAgZG9jdW1lbnQtPnVwZGF0ZUxheW91dElnbm9yZVBlbmRpbmdTdHls
ZXNoZWV0cyh7IExheW91dE9wdGlvbnM6OkNvbnRlbnRWaXNpYmlsaXR5Rm9yY2VMYXlvdXQgLCBM
YXlvdXRPcHRpb25zOjpDYW5EZWZlclVwZGF0ZUxheWVyUG9zaXRpb25zIH0sIHRoaXMpOwotICAg
IExvY2FsRnJhbWVWaWV3OjpBdXRvUHJldmVudExheWVyQWNjZXNzIHByZXZlbnRBY2Nlc3MoKmRv
Y3VtZW50LT52aWV3KCkpOworICAgIGRvY3VtZW50LT51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5n
U3R5bGVzaGVldHMoeyBMYXlvdXRPcHRpb25zOjpDb250ZW50VmlzaWJpbGl0eUZvcmNlTGF5b3V0
IH0sIHRoaXMpOwogICAgIGF1dG8gcGFpciA9IGJvdW5kaW5nQWJzb2x1dGVSZWN0V2l0aG91dExh
eW91dCgpOwogICAgIGlmICghcGFpcikKICAgICAgICAgcmV0dXJuIHsgfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3VzZVJlbGF0ZWRFdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vTW91c2VSZWxhdGVkRXZlbnQuY3BwCmluZGV4IGE4OTY0ZmRlOWUxNy4uYzNhNjdlZjBk
OWY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTW91c2VSZWxhdGVkRXZlbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Nb3VzZVJlbGF0ZWRFdmVudC5jcHAKQEAgLTMxLDcg
KzMxLDYgQEAKICNpbmNsdWRlICJMb2NhbEZyYW1lLmgiCiAjaW5jbHVkZSAiTG9jYWxGcmFtZVZp
ZXcuaCIKICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgotI2luY2x1ZGUgIlJlbmRlckxheWVySW5s
aW5lcy5oIgogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxs
b2NJbmxpbmVzLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01l
ZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudC5jcHAKaW5k
ZXggM2RkM2JjMDk5YzMwLi4yMjMxNWRjOGYwYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFRleHRUcmFja0NvbnRh
aW5lckVsZW1lbnQuY3BwCkBAIC00OCw3ICs0OCw2IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2lu
Y2x1ZGUgIlBhZ2VHcm91cC5oIgogI2luY2x1ZGUgIlJlbmRlckxheWVyLmgiCi0jaW5jbHVkZSAi
UmVuZGVyTGF5ZXJJbmxpbmVzLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlkZW8uaCIKICNpbmNsdWRl
ICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9M
b2NhbEZyYW1lVmlldy5jcHAKaW5kZXggMzdmOWU5NzIzZTRiLi4zNDVhNDYxOTU0MjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXcuY3BwCkBAIC0xMTA5LDcgKzExMDksNiBAQCB2
b2lkIExvY2FsRnJhbWVWaWV3Ojp0b3BDb250ZW50SW5zZXREaWRDaGFuZ2UoZmxvYXQgbmV3VG9w
Q29udGVudEluc2V0KQogICAgIGlmIChwbGF0Zm9ybVdpZGdldCgpKQogICAgICAgICBwbGF0Zm9y
bVNldFRvcENvbnRlbnRJbnNldChuZXdUb3BDb250ZW50SW5zZXQpOwogICAgIAotICAgIHJlbmRl
clZpZXctPnNldE5lZWRzTGF5b3V0KCk7CiAgICAgbGF5b3V0Q29udGV4dCgpLmxheW91dCgpOwog
ICAgIC8vIEV2ZXJ5IHNjcm9sbCB0aGF0IGhhcHBlbnMgYXMgdGhlIHJlc3VsdCBvZiBjb250ZW50
IGluc2V0IGNoYW5nZSBpcyBwcm9ncmFtbWF0aWMuCiAgICAgYXV0byBvbGRTY3JvbGxUeXBlID0g
Y3VycmVudFNjcm9sbFR5cGUoKTsKQEAgLTEzMDAsNDAgKzEyOTksMTIgQEAgdm9pZCBMb2NhbEZy
YW1lVmlldzo6d2lsbERvTGF5b3V0KFNpbmdsZVRocmVhZFdlYWtQdHI8UmVuZGVyRWxlbWVudD4g
bGF5b3V0Um9vdCkKICAgICBmb3JjZUxheW91dFBhcmVudFZpZXdJZk5lZWRlZCgpOwogfQogCi1i
b29sIExvY2FsRnJhbWVWaWV3OjpoYXNQZW5kaW5nVXBkYXRlTGF5ZXJQb3NpdGlvbnMoKSBjb25z
dAotewotICAgIHJldHVybiAhIW1fcGVuZGluZ1VwZGF0ZUxheWVyUG9zaXRpb25zOwotfQotCi12
b2lkIExvY2FsRnJhbWVWaWV3OjpmbHVzaFVwZGF0ZUxheWVyUG9zaXRpb25zKCkKLXsKLSAgICBp
ZiAoIW1fcGVuZGluZ1VwZGF0ZUxheWVyUG9zaXRpb25zKQotICAgICAgICByZXR1cm47Ci0KLSAg
ICBVcGRhdGVMYXllclBvc2l0aW9ucyB1cGRhdGVMYXllclBvc2l0aW9ucyA9ICpzdGQ6OmV4Y2hh
bmdlKG1fcGVuZGluZ1VwZGF0ZUxheWVyUG9zaXRpb25zLCBzdGQ6Om51bGxvcHQpOwotCi0gICAg
V2Vha1B0ciBsYXlvdXRSb290ID0gdXBkYXRlTGF5ZXJQb3NpdGlvbnMubGF5b3V0Um9vdDsKLSAg
ICBpZiAoIWxheW91dFJvb3QpCi0gICAgICAgIGxheW91dFJvb3QgPSByZW5kZXJWaWV3KCk7Ci0K
LSAgICBpZiAobGF5b3V0Um9vdCkgewotICAgICAgICBDaGVja2VkUHRyIGVuY2xvc2luZ0xheWVy
ID0gbGF5b3V0Um9vdC0+ZW5jbG9zaW5nTGF5ZXIoKTsKLSAgICAgICAgZW5jbG9zaW5nTGF5ZXIt
PnVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJMYXlvdXQodXBkYXRlTGF5ZXJQb3NpdGlvbnMubGF5
b3V0SWRlbnRpZmllciwgIWlzPFJlbmRlclZpZXc+KCpsYXlvdXRSb290KSwgdXBkYXRlTGF5ZXJQ
b3NpdGlvbnMubmVlZHNGdWxsUmVwYWludCwgdXBkYXRlTGF5ZXJQb3NpdGlvbnMuZGlkUnVuU2lt
cGxpZmllZExheW91dCA/IFJlbmRlckxheWVyOjpDYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3M6
OlllcyA6IFJlbmRlckxheWVyOjpDYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3M6Ok5vKTsKLSAg
ICB9Ci19Ci0KLXZvaWQgTG9jYWxGcmFtZVZpZXc6OmRpZExheW91dChTaW5nbGVUaHJlYWRXZWFr
UHRyPFJlbmRlckVsZW1lbnQ+IGxheW91dFJvb3QsIGJvb2wgZGlkUnVuU2ltcGxpZmllZExheW91
dCwgYm9vbCBjYW5EZWZlclVwZGF0ZUxheWVyUG9zaXRpb25zKQordm9pZCBMb2NhbEZyYW1lVmll
dzo6ZGlkTGF5b3V0KFNpbmdsZVRocmVhZFdlYWtQdHI8UmVuZGVyRWxlbWVudD4gbGF5b3V0Um9v
dCwgYm9vbCBkaWRSdW5TaW1wbGlmaWVkTGF5b3V0KQogewogICAgIFNjcmlwdERpc2FsbG93ZWRT
Y29wZTo6SW5NYWluVGhyZWFkIHNjcmlwdERpc2FsbG93ZWRTY29wZTsKIAotICAgIFVwZGF0ZUxh
eWVyUG9zaXRpb25zIHVwZGF0ZUxheWVyUG9zaXRpb25zIHsgbGF5b3V0Um9vdCwgbGF5b3V0Q29u
dGV4dCgpLmxheW91dElkZW50aWZpZXIoKSwgbGF5b3V0Q29udGV4dCgpLm5lZWRzRnVsbFJlcGFp
bnQoKSwgZGlkUnVuU2ltcGxpZmllZExheW91dCB9OwotICAgIGlmICghbV9wZW5kaW5nVXBkYXRl
TGF5ZXJQb3NpdGlvbnMgfHwgIW1fcGVuZGluZ1VwZGF0ZUxheWVyUG9zaXRpb25zLT5tZXJnZSh1
cGRhdGVMYXllclBvc2l0aW9ucykpIHsKLSAgICAgICAgZmx1c2hVcGRhdGVMYXllclBvc2l0aW9u
cygpOwotICAgICAgICBtX3BlbmRpbmdVcGRhdGVMYXllclBvc2l0aW9ucyA9IHVwZGF0ZUxheWVy
UG9zaXRpb25zOwotICAgIH0KLQotICAgIGlmICghY2FuRGVmZXJVcGRhdGVMYXllclBvc2l0aW9u
cykKLSAgICAgICAgZmx1c2hVcGRhdGVMYXllclBvc2l0aW9ucygpOworICAgIGF1dG8qIGxheW91
dFJvb3RFbmNsb3NpbmdMYXllciA9IGxheW91dFJvb3QtPmVuY2xvc2luZ0xheWVyKCk7CisgICAg
bGF5b3V0Um9vdEVuY2xvc2luZ0xheWVyLT51cGRhdGVMYXllclBvc2l0aW9uc0FmdGVyTGF5b3V0
KCFpczxSZW5kZXJWaWV3PigqbGF5b3V0Um9vdCksIGxheW91dENvbnRleHQoKS5uZWVkc0Z1bGxS
ZXBhaW50KCksIGRpZFJ1blNpbXBsaWZpZWRMYXlvdXQgPyBSZW5kZXJMYXllcjo6Q2FuVXNlU2lt
cGxpZmllZFJlcGFpbnRQYXNzOjpZZXMgOiBSZW5kZXJMYXllcjo6Q2FuVXNlU2ltcGxpZmllZFJl
cGFpbnRQYXNzOjpObyk7CiAKICAgICBtX3VwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzSXNQZW5kaW5n
ID0gdHJ1ZTsKIApAQCAtMjk4NSwxOSArMjk1NiwxMSBAQCB2b2lkIExvY2FsRnJhbWVWaWV3Ojp1
cGRhdGVMYXllclBvc2l0aW9uc0FmdGVyU2Nyb2xsaW5nKCkKICAgICBpZiAoIWxheW91dENvbnRl
eHQoKS5pc0xheW91dE5lc3RlZCgpICYmIGhhc1ZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3RzKCkp
IHsKICAgICAgICAgaWYgKGF1dG8qIHJlbmRlclZpZXcgPSB0aGlzLT5yZW5kZXJWaWV3KCkpIHsK
ICAgICAgICAgICAgIHVwZGF0ZVdpZGdldFBvc2l0aW9ucygpOwotICAgICAgICAgICAgZmx1c2hV
cGRhdGVMYXllclBvc2l0aW9ucygpOwogICAgICAgICAgICAgcmVuZGVyVmlldy0+bGF5ZXIoKS0+
dXBkYXRlTGF5ZXJQb3NpdGlvbnNBZnRlckRvY3VtZW50U2Nyb2xsKCk7CiAgICAgICAgIH0KICAg
ICB9CiB9CiAKLXZvaWQgTG9jYWxGcmFtZVZpZXc6OnVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJP
dmVyZmxvd1Njcm9sbChSZW5kZXJMYXllciYgbGF5ZXIpCi17Ci0gICAgZmx1c2hVcGRhdGVMYXll
clBvc2l0aW9ucygpOwotICAgIGxheWVyLnVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJPdmVyZmxv
d1Njcm9sbCgpOwotICAgIHNjaGVkdWxlVXBkYXRlV2lkZ2V0UG9zaXRpb25zKCk7Ci19Ci0KIFNj
cm9sbGluZ0Nvb3JkaW5hdG9yKiBMb2NhbEZyYW1lVmlldzo6c2Nyb2xsaW5nQ29vcmRpbmF0b3Io
KSBjb25zdAogewogICAgIHJldHVybiBtX2ZyYW1lLT5wYWdlKCkgPyBtX2ZyYW1lLT5wYWdlKCkt
PnNjcm9sbGluZ0Nvb3JkaW5hdG9yKCkgOiBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Mb2NhbEZyYW1lVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhbEZy
YW1lVmlldy5oCmluZGV4IGNiMjhmMWQ5YWZjYi4uMjE4NzM2MzdmY2FiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0xvY2FsRnJhbWVWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9Mb2NhbEZyYW1lVmlldy5oCkBAIC0xMjksOSArMTI5LDYgQEAgcHVibGljOgogICAgIENo
ZWNrZWRSZWY8Y29uc3QgTG9jYWxGcmFtZVZpZXdMYXlvdXRDb250ZXh0PiBjaGVja2VkTGF5b3V0
Q29udGV4dCgpIGNvbnN0OwogICAgIENoZWNrZWRSZWY8TG9jYWxGcmFtZVZpZXdMYXlvdXRDb250
ZXh0PiBjaGVja2VkTGF5b3V0Q29udGV4dCgpOwogCi0gICAgYm9vbCBoYXNQZW5kaW5nVXBkYXRl
TGF5ZXJQb3NpdGlvbnMoKSBjb25zdDsKLSAgICB2b2lkIGZsdXNoVXBkYXRlTGF5ZXJQb3NpdGlv
bnMoKTsKLQogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgZGlkRmlyc3RMYXlvdXQoKSBjb25zdDsK
IAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbmVlZHNMYXlvdXQoKSBjb25zdDsKQEAgLTI4Miw3
ICsyNzksNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBjYW5jZWxTY2hlZHVsZWRTY3JvbGxzKCk7CiAg
ICAgdm9pZCBzY3JvbGxUb0ZvY3VzZWRFbGVtZW50SW1tZWRpYXRlbHlJZk5lZWRlZCgpOwogICAg
IHZvaWQgdXBkYXRlTGF5ZXJQb3NpdGlvbnNBZnRlclNjcm9sbGluZygpIGZpbmFsOwotICAgIHZv
aWQgdXBkYXRlTGF5ZXJQb3NpdGlvbnNBZnRlck92ZXJmbG93U2Nyb2xsKFJlbmRlckxheWVyJik7
CiAgICAgdm9pZCB1cGRhdGVDb21wb3NpdGluZ0xheWVyc0FmdGVyU2Nyb2xsaW5nKCkgZmluYWw7
CiAgICAgc3RhdGljIFdFQkNPUkVfRVhQT1JUIGJvb2wgc2Nyb2xsUmVjdFRvVmlzaWJsZShjb25z
dCBMYXlvdXRSZWN0JiBhYnNvbHV0ZVJlY3QsIGNvbnN0IFJlbmRlck9iamVjdCYsIGJvb2wgaW5z
aWRlRml4ZWQsIGNvbnN0IFNjcm9sbFJlY3RUb1Zpc2libGVPcHRpb25zJik7CiAKQEAgLTczMCwz
MyArNzI2LDYgQEAgcHVibGljOgogCiAgICAgRnJhbWVJZGVudGlmaWVyIHJvb3RGcmFtZUlEKCkg
Y29uc3QgZmluYWw7CiAKLSNpZiBBU1NFUlRfRU5BQkxFRAotICAgIHN0cnVjdCBBdXRvUHJldmVu
dExheWVyQWNjZXNzIHsKLSAgICAgICAgQXV0b1ByZXZlbnRMYXllckFjY2VzcyhMb2NhbEZyYW1l
VmlldyYgdmlldykKLSAgICAgICAgICAgIDogZnJhbWVWaWV3KHZpZXcpCi0gICAgICAgICAgICAs
IG9sZFByZXZlbnRMYXllckFjY2Vzcyh2aWV3LmxheWVyQWNjZXNzUHJldmVudGVkKCkpCi0gICAg
ICAgIHsKLSAgICAgICAgICAgIHZpZXcuc2V0TGF5ZXJBY2Vzc1ByZXZlbnRlZCh0cnVlKTsKLSAg
ICAgICAgfQotCi0gICAgICAgIH5BdXRvUHJldmVudExheWVyQWNjZXNzKCkKLSAgICAgICAgewot
ICAgICAgICAgICAgZnJhbWVWaWV3LT5zZXRMYXllckFjZXNzUHJldmVudGVkKG9sZFByZXZlbnRM
YXllckFjY2Vzcyk7Ci0gICAgICAgIH0KLQotICAgIHByaXZhdGU6Ci0gICAgICAgIENoZWNrZWRQ
dHI8TG9jYWxGcmFtZVZpZXc+IGZyYW1lVmlldzsKLSAgICAgICAgYm9vbCBvbGRQcmV2ZW50TGF5
ZXJBY2Nlc3MgeyBmYWxzZSB9OwotICAgIH07Ci0KLSAgICB2b2lkIHNldExheWVyQWNlc3NQcmV2
ZW50ZWQoYm9vbCBwcmV2ZW50ZWQpIHsgbV9sYXllckFjY2Vzc1ByZXZlbnRlZCA9IHByZXZlbnRl
ZDsgfQotICAgIGJvb2wgbGF5ZXJBY2Nlc3NQcmV2ZW50ZWQoKSBjb25zdCB7IHJldHVybiBtX2xh
eWVyQWNjZXNzUHJldmVudGVkOyB9Ci0jZWxzZQotICAgIHN0cnVjdCBBdXRvUHJldmVudExheWVy
QWNjZXNzIHsKLSAgICAgICAgQXV0b1ByZXZlbnRMYXllckFjY2VzcyhMb2NhbEZyYW1lVmlldyYp
IHsgfQotICAgIH07Ci0jZW5kaWYKLQogcHJpdmF0ZToKICAgICBleHBsaWNpdCBMb2NhbEZyYW1l
VmlldyhMb2NhbEZyYW1lJik7CiAKQEAgLTkxOSw3ICs4ODgsNyBAQCBwcml2YXRlOgogICAgIFJl
bmRlckVsZW1lbnQqIHZpZXdwb3J0UmVuZGVyZXIoKSBjb25zdDsKICAgICAKICAgICB2b2lkIHdp
bGxEb0xheW91dChTaW5nbGVUaHJlYWRXZWFrUHRyPFJlbmRlckVsZW1lbnQ+IGxheW91dFJvb3Qp
OwotICAgIHZvaWQgZGlkTGF5b3V0KFNpbmdsZVRocmVhZFdlYWtQdHI8UmVuZGVyRWxlbWVudD4g
bGF5b3V0Um9vdCwgYm9vbCBkaWRSdW5TaW1wbGlmaWVkTGF5b3V0LCBib29sIGNhbkRlZmVyVXBk
YXRlTGF5ZXJQb3NpdGlvbnMpOworICAgIHZvaWQgZGlkTGF5b3V0KFNpbmdsZVRocmVhZFdlYWtQ
dHI8UmVuZGVyRWxlbWVudD4gbGF5b3V0Um9vdCwgYm9vbCBkaWRSdW5TaW1wbGlmaWVkTGF5b3V0
KTsKIAogICAgIEZsb2F0U2l6ZSBjYWxjdWxhdGVTaXplRm9yQ1NTVmlld3BvcnRVbml0c092ZXJy
aWRlKHN0ZDo6b3B0aW9uYWw8T3ZlcnJpZGVWaWV3cG9ydFNpemU+KSBjb25zdDsKIApAQCAtMTAy
MywyNiArOTkyLDYgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8U2Nyb2xsYWJsZUFy
ZWFTZXQ+IG1fc2Nyb2xsYWJsZUFyZWFzRm9yQW5pbWF0ZWRTY3JvbGw7CiAgICAgc3RkOjp1bmlx
dWVfcHRyPFNpbmdsZVRocmVhZFdlYWtIYXNoU2V0PFJlbmRlckxheWVyTW9kZWxPYmplY3Q+PiBt
X3ZpZXdwb3J0Q29uc3RyYWluZWRPYmplY3RzOwogCi0gICAgc3RydWN0IFVwZGF0ZUxheWVyUG9z
aXRpb25zIHsKLSAgICAgICAgYm9vbCBtZXJnZShjb25zdCBVcGRhdGVMYXllclBvc2l0aW9ucyYg
b3RoZXIpCi0gICAgICAgIHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBJZiBvbmUgaXMgYW4gYW5j
ZXN0b3Igb2YgdGhlIG90aGVyIHdlIGNhbiBhbHNvIHByb2JhYmx5IGNvbWJpbmUgdGhlbS4KLSAg
ICAgICAgICAgIGlmIChsYXlvdXRSb290ICE9IG90aGVyLmxheW91dFJvb3QpCi0gICAgICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgICAgICBuZWVkc0Z1bGxSZXBhaW50IHw9IG90
aGVyLm5lZWRzRnVsbFJlcGFpbnQ7Ci0gICAgICAgICAgICBpZiAoIW90aGVyLmRpZFJ1blNpbXBs
aWZpZWRMYXlvdXQpCi0gICAgICAgICAgICAgICAgZGlkUnVuU2ltcGxpZmllZExheW91dCA9IGZh
bHNlOwotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIH0KLQotICAgICAgICBTaW5n
bGVUaHJlYWRXZWFrUHRyPFJlbmRlckVsZW1lbnQ+IGxheW91dFJvb3Q7Ci0gICAgICAgIFJlbmRl
ckVsZW1lbnQ6OkxheW91dElkZW50aWZpZXIgbGF5b3V0SWRlbnRpZmllciA6IDEyIHsgMCB9Owot
ICAgICAgICBib29sIG5lZWRzRnVsbFJlcGFpbnQgeyBmYWxzZSB9OwotICAgICAgICBib29sIGRp
ZFJ1blNpbXBsaWZpZWRMYXlvdXQgeyB0cnVlIH07Ci0gICAgfTsKLSAgICBzdGQ6Om9wdGlvbmFs
PFVwZGF0ZUxheWVyUG9zaXRpb25zPiBtX3BlbmRpbmdVcGRhdGVMYXllclBvc2l0aW9uczsKLQog
ICAgIE9wdGlvblNldDxMYXlvdXRNaWxlc3RvbmU+IG1fbWlsZXN0b25lc1BlbmRpbmdQYWludDsK
IAogICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCB2aXN1YWxDaGFyYWN0ZXJUaHJlc2hvbGQgPSAy
MDA7CkBAIC0xMDk4LDkgKzEwNDcsNiBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pblVwZGF0ZUVt
YmVkZGVkT2JqZWN0cyB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3NjaGVkdWxlZFRvU2Nyb2xsVG9B
bmNob3IgeyBmYWxzZSB9OwogICAgIGJvb2wgbV91cGRhdGVDb21wb3NpdGluZ0xheWVyc0lzUGVu
ZGluZyB7IGZhbHNlIH07Ci0jaWYgQVNTRVJUX0VOQUJMRUQKLSAgICBib29sIG1fbGF5ZXJBY2Nl
c3NQcmV2ZW50ZWQgeyBmYWxzZSB9OwotI2VuZGlmCiB9OwogCiBpbmxpbmUgdm9pZCBMb2NhbEZy
YW1lVmlldzo6aW5jcmVtZW50VmlzdWFsbHlOb25FbXB0eVBpeGVsQ291bnQoY29uc3QgSW50U2l6
ZSYgc2l6ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXdM
YXlvdXRDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXdMYXlv
dXRDb250ZXh0LmNwcAppbmRleCBiOWU2ZmRjZDA0MDEuLmZhZmRkMTdmYzhiOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTG9jYWxGcmFtZVZpZXdMYXlvdXRDb250ZXh0LmNwcApA
QCAtMTQxLDEzICsxNDEsMTMgQEAgVXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0VHJhbnNhY3Rp
b24mIExvY2FsRnJhbWVWaWV3TGF5b3V0Q29udGV4dDo6dXBkYXRlU2Nyb2wKICAgICByZXR1cm4g
Km1fdXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0VHJhbnNhY3Rpb247CiB9CiAKLXZvaWQgTG9j
YWxGcmFtZVZpZXdMYXlvdXRDb250ZXh0OjpsYXlvdXQoYm9vbCBjYW5EZWZlclVwZGF0ZUxheWVy
UG9zaXRpb25zKQordm9pZCBMb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQ6OmxheW91dCgpCiB7
CiAgICAgTE9HX1dJVEhfU1RSRUFNKExheW91dCwgc3RyZWFtIDw8ICJMb2NhbEZyYW1lVmlldyAi
IDw8ICZ2aWV3KCkgPDwgIiBMb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQ6OmxheW91dCgpIHdp
dGggc2l6ZSAiIDw8IHZpZXcoKS5sYXlvdXRTaXplKCkpOwogCiAgICAgUmVmIHByb3RlY3RlZFZp
ZXcodmlldygpKTsKIAotICAgIHBlcmZvcm1MYXlvdXQoY2FuRGVmZXJVcGRhdGVMYXllclBvc2l0
aW9ucyk7CisgICAgcGVyZm9ybUxheW91dCgpOwogCiAgICAgaWYgKHZpZXcoKS5oYXNPbmVSZWYo
KSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTU5LDE0ICsxNTksMTQgQEAgdm9pZCBMb2NhbEZyYW1l
Vmlld0xheW91dENvbnRleHQ6OmxheW91dChib29sIGNhbkRlZmVyVXBkYXRlTGF5ZXJQb3NpdGlv
bnMpCiAgICAgICAgIGlmICghbmVlZHNMYXlvdXQoKSkKICAgICAgICAgICAgIGJyZWFrOwogCi0g
ICAgICAgIHBlcmZvcm1MYXlvdXQoY2FuRGVmZXJVcGRhdGVMYXllclBvc2l0aW9ucyk7CisgICAg
ICAgIHBlcmZvcm1MYXlvdXQoKTsKIAogICAgICAgICBpZiAodmlldygpLmhhc09uZVJlZigpKQog
ICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIH0KIAotdm9pZCBMb2NhbEZyYW1lVmlld0xheW91
dENvbnRleHQ6OnBlcmZvcm1MYXlvdXQoYm9vbCBjYW5EZWZlclVwZGF0ZUxheWVyUG9zaXRpb25z
KQordm9pZCBMb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQ6OnBlcmZvcm1MYXlvdXQoKQogewog
ICAgIFJlZiBmcmFtZSA9IHRoaXMtPmZyYW1lKCk7CiAgICAgUkVMRUFTRV9BU1NFUlRfV0lUSF9T
RUNVUklUWV9JTVBMSUNBVElPTighZG9jdW1lbnQoKS0+aW5SZW5kZXJUcmVlVXBkYXRlKCkpOwpA
QCAtMjY5LDE0ICsyNjksMTQgQEAgdm9pZCBMb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQ6OnBl
cmZvcm1MYXlvdXQoYm9vbCBjYW5EZWZlclVwZGF0ZUxheWVyUG9zaXRpb24KICAgICAgICAgaWYg
KG1fbmVlZHNGdWxsUmVwYWludCkKICAgICAgICAgICAgIHJlbmRlclZpZXcoKS0+cmVwYWludFJv
b3RDb250ZW50cygpOwogICAgICAgICBBU1NFUlQoIWxheW91dFJvb3QtPm5lZWRzTGF5b3V0KCkp
OwotICAgICAgICBwcm90ZWN0ZWRWaWV3KCktPmRpZExheW91dChsYXlvdXRSb290LCBpc1NpbXBs
aWZpZWRMYXlvdXQsIGNhbkRlZmVyVXBkYXRlTGF5ZXJQb3NpdGlvbnMpOwotICAgICAgICBydW5P
clNjaGVkdWxlQXN5bmNocm9ub3VzVGFza3MoY2FuRGVmZXJVcGRhdGVMYXllclBvc2l0aW9ucyk7
CisgICAgICAgIHByb3RlY3RlZFZpZXcoKS0+ZGlkTGF5b3V0KGxheW91dFJvb3QsIGlzU2ltcGxp
ZmllZExheW91dCk7CisgICAgICAgIHJ1bk9yU2NoZWR1bGVBc3luY2hyb25vdXNUYXNrcygpOwog
ICAgIH0KICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExheW91dChmcmFtZSwgKmxh
eW91dFJvb3QpOwogICAgIERlYnVnUGFnZU92ZXJsYXlzOjpkaWRMYXlvdXQoZnJhbWUpOwogfQog
Ci12b2lkIExvY2FsRnJhbWVWaWV3TGF5b3V0Q29udGV4dDo6cnVuT3JTY2hlZHVsZUFzeW5jaHJv
bm91c1Rhc2tzKGJvb2wgY2FuRGVmZXJVcGRhdGVMYXllclBvc2l0aW9ucykKK3ZvaWQgTG9jYWxG
cmFtZVZpZXdMYXlvdXRDb250ZXh0OjpydW5PclNjaGVkdWxlQXN5bmNocm9ub3VzVGFza3MoKQog
ewogICAgIGlmIChtX3Bvc3RMYXlvdXRUYXNrVGltZXIuaXNBY3RpdmUoKSkKICAgICAgICAgcmV0
dXJuOwpAQCAtMjk1LDEwICsyOTUsMTAgQEAgdm9pZCBMb2NhbEZyYW1lVmlld0xheW91dENvbnRl
eHQ6OnJ1bk9yU2NoZWR1bGVBc3luY2hyb25vdXNUYXNrcyhib29sIGNhbkRlZmVyVXAKICAgICB9
CiAKICAgICBydW5Qb3N0TGF5b3V0VGFza3MoKTsKLSAgICBpZiAobmVlZHNMYXlvdXRJbnRlcm5h
bCgpKSB7CisgICAgaWYgKG5lZWRzTGF5b3V0KCkpIHsKICAgICAgICAgLy8gSWYgcnVuUG9zdExh
eW91dFRhc2tzKCkgbWFkZSB1cyBsYXlvdXQgYWdhaW4sIGxldCdzIGRlZmVyIHRoZSB0YXNrcyB1
bnRpbCBhZnRlciB3ZSByZXR1cm4uCiAgICAgICAgIG1fcG9zdExheW91dFRhc2tUaW1lci5zdGFy
dE9uZVNob3QoMF9zKTsKLSAgICAgICAgbGF5b3V0KGNhbkRlZmVyVXBkYXRlTGF5ZXJQb3NpdGlv
bnMpOworICAgICAgICBsYXlvdXQoKTsKICAgICB9CiB9CiAKQEAgLTMzMSwxMSArMzMxLDYgQEAg
dm9pZCBMb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQ6OnJlc2V0KCkKIH0KIAogYm9vbCBMb2Nh
bEZyYW1lVmlld0xheW91dENvbnRleHQ6Om5lZWRzTGF5b3V0KCkgY29uc3QKLXsKLSAgICByZXR1
cm4gbmVlZHNMYXlvdXRJbnRlcm5hbCgpIHx8IHByb3RlY3RlZFZpZXcoKS0+aGFzUGVuZGluZ1Vw
ZGF0ZUxheWVyUG9zaXRpb25zKCk7Ci19Ci0KLWJvb2wgTG9jYWxGcmFtZVZpZXdMYXlvdXRDb250
ZXh0OjpuZWVkc0xheW91dEludGVybmFsKCkgY29uc3QKIHsKICAgICAvLyBUaGlzIGNhbiByZXR1
cm4gdHJ1ZSBpbiBjYXNlcyB3aGVyZSB0aGUgZG9jdW1lbnQgZG9lcyBub3QgaGF2ZSBhIGJvZHkg
eWV0LgogICAgIC8vIERvY3VtZW50OjpzaG91bGRTY2hlZHVsZUxheW91dCB0YWtlcyBjYXJlIG9m
IHByZXZlbnRpbmcgdXMgZnJvbSBzY2hlZHVsaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0xvY2FsRnJhbWVWaWV3TGF5b3V0Q29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9Mb2NhbEZyYW1lVmlld0xheW91dENvbnRleHQuaAppbmRleCA3ZDJkYzlkODY2ZGEuLjRiN2Y2
Y2E3OGQ1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Mb2NhbEZyYW1lVmlld0xh
eW91dENvbnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0xvY2FsRnJhbWVWaWV3TGF5
b3V0Q29udGV4dC5oCkBAIC02Niw3ICs2Niw3IEBAIHB1YmxpYzoKICAgICBMb2NhbEZyYW1lVmll
d0xheW91dENvbnRleHQoTG9jYWxGcmFtZVZpZXcmKTsKICAgICB+TG9jYWxGcmFtZVZpZXdMYXlv
dXRDb250ZXh0KCk7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGxheW91dChib29sIGNhbkRl
ZmVyVXBkYXRlTGF5ZXJQb3NpdGlvbnMgPSBmYWxzZSk7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBsYXlvdXQoKTsKICAgICBib29sIG5lZWRzTGF5b3V0KCkgY29uc3Q7CiAKICAgICAvLyBXZSBy
ZWx5IG9uIHRoZSBzaWRlLWVmZmVjdHMgb2YgbGF5b3V0LCBsaWtlIGNvbXBvc2l0aW5nIHVwZGF0
ZXMsIHRvIHVwZGF0ZSBzdGF0ZSBpbiB2YXJpb3VzIHN1YnN5c3RlbXMKQEAgLTE0MywxNSArMTQz
LDEzIEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIExheW91dFN0YXRlRGlzYWJsZXI7CiAg
ICAgZnJpZW5kIGNsYXNzIFN1YnRyZWVMYXlvdXRTdGF0ZU1haW50YWluZXI7CiAKLSAgICBib29s
IG5lZWRzTGF5b3V0SW50ZXJuYWwoKSBjb25zdDsKLQotICAgIHZvaWQgcGVyZm9ybUxheW91dChi
b29sIGNhbkRlZmVyVXBkYXRlTGF5ZXJQb3NpdGlvbnMpOworICAgIHZvaWQgcGVyZm9ybUxheW91
dCgpOwogICAgIGJvb2wgY2FuUGVyZm9ybUxheW91dCgpIGNvbnN0OwogICAgIGJvb2wgaXNMYXlv
dXRTY2hlZHVsaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fbGF5b3V0U2NoZWR1bGluZ0lz
RW5hYmxlZDsgfQogCiAgICAgdm9pZCBsYXlvdXRUaW1lckZpcmVkKCk7CiAgICAgdm9pZCBydW5Q
b3N0TGF5b3V0VGFza3MoKTsKLSAgICB2b2lkIHJ1bk9yU2NoZWR1bGVBc3luY2hyb25vdXNUYXNr
cyhib29sIGNhbkRlZmVyVXBkYXRlTGF5ZXJQb3NpdGlvbnMpOworICAgIHZvaWQgcnVuT3JTY2hl
ZHVsZUFzeW5jaHJvbm91c1Rhc2tzKCk7CiAgICAgYm9vbCBpbkFzeW5jaHJvbm91c1Rhc2tzKCkg
Y29uc3QgeyByZXR1cm4gbV9pbkFzeW5jaHJvbm91c1Rhc2tzOyB9CiAKICAgICB2b2lkIHNldFN1
YnRyZWVMYXlvdXRSb290KFJlbmRlckVsZW1lbnQmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJFbGVtZW50LmNwcAppbmRleCBkZTFjM2QxNTIxYmYuLmI2MmI3NTRjYmU0NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbGVtZW50LmNwcApAQCAtMTA5OCw5ICsx
MDk4LDkgQEAgdm9pZCBSZW5kZXJFbGVtZW50Ojp3aWxsQmVSZW1vdmVkRnJvbVRyZWUoKQogICAg
IFJlbmRlck9iamVjdDo6d2lsbEJlUmVtb3ZlZEZyb21UcmVlKCk7CiB9CiAKLWJvb2wgUmVuZGVy
RWxlbWVudDo6ZGlkVmlzaXRTaW5jZUxheW91dChMYXlvdXRJZGVudGlmaWVyIGlkZW50aWZpZXIp
IGNvbnN0Citib29sIFJlbmRlckVsZW1lbnQ6OmRpZFZpc2l0RHVyaW5nTGFzdExheW91dCgpIGNv
bnN0CiB7Ci0gICAgcmV0dXJuIGxheW91dElkZW50aWZpZXIoKSA+PSBpZGVudGlmaWVyOworICAg
IHJldHVybiBsYXlvdXRJZGVudGlmaWVyKCkgPT0gdmlldygpLmZyYW1lVmlldygpLmxheW91dENv
bnRleHQoKS5sYXlvdXRJZGVudGlmaWVyKCk7CiB9CiAKIGlubGluZSB2b2lkIFJlbmRlckVsZW1l
bnQ6OmNsZWFyU3VidHJlZUxheW91dFJvb3RJZk5lZWRlZCgpIGNvbnN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaAppbmRleCA1N2JmNWM4ODRiNjYuLmNmMzI1ZDgzZGVh
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRWxlbWVudC5oCkBAIC0zMDYsNyAr
MzA2LDcgQEAgcHVibGljOgogICAgIHVzaW5nIExheW91dElkZW50aWZpZXIgPSB1bnNpZ25lZDsK
ICAgICB2b2lkIHNldExheW91dElkZW50aWZpZXIoTGF5b3V0SWRlbnRpZmllciBsYXlvdXRJZGVu
dGlmaWVyKSB7IG1fbGF5b3V0SWRlbnRpZmllciA9IGxheW91dElkZW50aWZpZXI7IH0KICAgICBM
YXlvdXRJZGVudGlmaWVyIGxheW91dElkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2xheW91
dElkZW50aWZpZXI7IH0KLSAgICBib29sIGRpZFZpc2l0U2luY2VMYXlvdXQoTGF5b3V0SWRlbnRp
ZmllcikgY29uc3Q7CisgICAgYm9vbCBkaWRWaXNpdER1cmluZ0xhc3RMYXlvdXQoKSBjb25zdDsK
IAogcHJvdGVjdGVkOgogICAgIFJlbmRlckVsZW1lbnQoVHlwZSwgRWxlbWVudCYsIFJlbmRlclN0
eWxlJiYsIE9wdGlvblNldDxUeXBlRmxhZz4sIFR5cGVTcGVjaWZpY0ZsYWdzKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IGMxZDI3ZTk5ZmU5NC4uNzVkNWMx
ZGQ1N2FiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTk5
MSwxMCArOTkxLDEwIEBAIHZvaWQgUmVuZGVyTGF5ZXI6OndpbGxVcGRhdGVMYXllclBvc2l0aW9u
cygpCiB2b2lkIFJlbmRlckxheWVyOjp1cGRhdGVMYXllclBvc2l0aW9uc0FmdGVyU3R5bGVDaGFu
Z2UoKQogewogICAgIHdpbGxVcGRhdGVMYXllclBvc2l0aW9ucygpOwotICAgIHJlY3Vyc2l2ZVVw
ZGF0ZUxheWVyUG9zaXRpb25zKDAsIGZsYWdzRm9yVXBkYXRlTGF5ZXJQb3NpdGlvbnMoKnRoaXMp
KTsKKyAgICByZWN1cnNpdmVVcGRhdGVMYXllclBvc2l0aW9ucyhmbGFnc0ZvclVwZGF0ZUxheWVy
UG9zaXRpb25zKCp0aGlzKSk7CiB9CiAKLXZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZUxheWVyUG9z
aXRpb25zQWZ0ZXJMYXlvdXQoUmVuZGVyRWxlbWVudDo6TGF5b3V0SWRlbnRpZmllciBsYXlvdXRJ
ZGVudGlmaWVyLCBib29sIGlzUmVsYXlvdXRpbmdTdWJ0cmVlLCBib29sIGRpZEZ1bGxSZXBhaW50
LCBDYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3MgY2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQYXNz
KQordm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlTGF5ZXJQb3NpdGlvbnNBZnRlckxheW91dChib29s
IGlzUmVsYXlvdXRpbmdTdWJ0cmVlLCBib29sIGRpZEZ1bGxSZXBhaW50LCBDYW5Vc2VTaW1wbGlm
aWVkUmVwYWludFBhc3MgY2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQYXNzKQogewogICAgIGF1dG8g
dXBkYXRlTGF5ZXJQb3NpdGlvbkZsYWdzID0gWyZdKGJvb2wgaXNSZWxheW91dGluZ1N1YnRyZWUs
IGJvb2wgZGlkRnVsbFJlcGFpbnQpIHsKICAgICAgICAgYXV0byBmbGFncyA9IGZsYWdzRm9yVXBk
YXRlTGF5ZXJQb3NpdGlvbnMoKnRoaXMpOwpAQCAtMTAxMCwxMCArMTAxMCwxMCBAQCB2b2lkIFJl
bmRlckxheWVyOjp1cGRhdGVMYXllclBvc2l0aW9uc0FmdGVyTGF5b3V0KFJlbmRlckVsZW1lbnQ6
OkxheW91dElkZW50aWZpZQogICAgIExPRyhDb21wb3NpdGluZywgIlJlbmRlckxheWVyICVwIHVw
ZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJMYXlvdXQiLCB0aGlzKTsKICAgICB3aWxsVXBkYXRlTGF5
ZXJQb3NpdGlvbnMoKTsKIAotICAgIHJlY3Vyc2l2ZVVwZGF0ZUxheWVyUG9zaXRpb25zKGxheW91
dElkZW50aWZpZXIsIHVwZGF0ZUxheWVyUG9zaXRpb25GbGFncyhpc1JlbGF5b3V0aW5nU3VidHJl
ZSwgZGlkRnVsbFJlcGFpbnQpLCBjYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3MpOworICAgIHJl
Y3Vyc2l2ZVVwZGF0ZUxheWVyUG9zaXRpb25zKHVwZGF0ZUxheWVyUG9zaXRpb25GbGFncyhpc1Jl
bGF5b3V0aW5nU3VidHJlZSwgZGlkRnVsbFJlcGFpbnQpLCBjYW5Vc2VTaW1wbGlmaWVkUmVwYWlu
dFBhc3MpOwogfQogCi12b2lkIFJlbmRlckxheWVyOjpyZWN1cnNpdmVVcGRhdGVMYXllclBvc2l0
aW9ucyhSZW5kZXJFbGVtZW50OjpMYXlvdXRJZGVudGlmaWVyIGxheW91dElkZW50aWZpZXIsIE9w
dGlvblNldDxVcGRhdGVMYXllclBvc2l0aW9uc0ZsYWc+IGZsYWdzLCBDYW5Vc2VTaW1wbGlmaWVk
UmVwYWludFBhc3MgY2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQYXNzKQordm9pZCBSZW5kZXJMYXll
cjo6cmVjdXJzaXZlVXBkYXRlTGF5ZXJQb3NpdGlvbnMoT3B0aW9uU2V0PFVwZGF0ZUxheWVyUG9z
aXRpb25zRmxhZz4gZmxhZ3MsIENhblVzZVNpbXBsaWZpZWRSZXBhaW50UGFzcyBjYW5Vc2VTaW1w
bGlmaWVkUmVwYWludFBhc3MpCiB7CiAgICAgdXBkYXRlTGF5ZXJQb3NpdGlvbigmZmxhZ3MpOwog
ICAgIGlmIChtX3Njcm9sbGFibGVBcmVhKQpAQCAtMTA1NSw3ICsxMDU1LDcgQEAgdm9pZCBSZW5k
ZXJMYXllcjo6cmVjdXJzaXZlVXBkYXRlTGF5ZXJQb3NpdGlvbnMoUmVuZGVyRWxlbWVudDo6TGF5
b3V0SWRlbnRpZmllcgogICAgICAgICBhdXRvIG1heU5lZWRSZXBhaW50UmVjdFVwZGF0ZSA9IFsm
XSB7CiAgICAgICAgICAgICBpZiAoY2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQYXNzID09IENhblVz
ZVNpbXBsaWZpZWRSZXBhaW50UGFzczo6Tm8pCiAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7
Ci0gICAgICAgICAgICBpZiAoIXJlbmRlcmVyKCkuZGlkVmlzaXRTaW5jZUxheW91dChsYXlvdXRJ
ZGVudGlmaWVyKSkKKyAgICAgICAgICAgIGlmICghcmVuZGVyZXIoKS5kaWRWaXNpdER1cmluZ0xh
c3RMYXlvdXQoKSkKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICBp
ZiAoYXV0byogcmVuZGVyQm94ID0gdGhpcy0+cmVuZGVyQm94KCk7IHJlbmRlckJveCAmJiByZW5k
ZXJCb3gtPmhhc1JlbmRlck92ZXJmbG93KCkgJiYgcmVuZGVyQm94LT5oYXNUcmFuc2Zvcm1SZWxh
dGVkUHJvcGVydHkoKSkgewogICAgICAgICAgICAgICAgIC8vIERpc2FibGUgb3B0aW1pemF0aW9u
IGZvciBzdWJ0cmVlIHdoZW4gZGVhbGluZyB3aXRoIG92ZXJmbG93IGFzIFJlbmRlckxheWVyIGlz
IG5vdCBzaXplZCB0byBlbmNsb3NlIG92ZXJmbG93LgpAQCAtMTEyMyw3ICsxMTIzLDcgQEAgdm9p
ZCBSZW5kZXJMYXllcjo6cmVjdXJzaXZlVXBkYXRlTGF5ZXJQb3NpdGlvbnMoUmVuZGVyRWxlbWVu
dDo6TGF5b3V0SWRlbnRpZmllcgogICAgICAgICBmbGFncy5hZGQoU2VlbkNvbXBvc2l0ZWRTY3Jv
bGxpbmdMYXllcik7CiAKICAgICBmb3IgKFJlbmRlckxheWVyKiBjaGlsZCA9IGZpcnN0Q2hpbGQo
KTsgY2hpbGQ7IGNoaWxkID0gY2hpbGQtPm5leHRTaWJsaW5nKCkpCi0gICAgICAgIGNoaWxkLT5y
ZWN1cnNpdmVVcGRhdGVMYXllclBvc2l0aW9ucyhsYXlvdXRJZGVudGlmaWVyLCBmbGFncywgY2Fu
VXNlU2ltcGxpZmllZFJlcGFpbnRQYXNzKTsKKyAgICAgICAgY2hpbGQtPnJlY3Vyc2l2ZVVwZGF0
ZUxheWVyUG9zaXRpb25zKGZsYWdzLCBjYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3MpOwogCiAg
ICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEpCiAgICAgICAgIG1fc2Nyb2xsYWJsZUFyZWEtPnVwZGF0
ZU1hcnF1ZWVQb3NpdGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaApp
bmRleCBiMDUwMjI5MDM2ZTQuLjk0MzE2YWViZDhiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyLmgKQEAgLTQ0NSwxMyArNDQ1LDEzIEBAIHB1YmxpYzoKICAgICBSZW5kZXJM
YXllciogcmVmbGVjdGlvbkxheWVyKCkgY29uc3Q7CiAgICAgYm9vbCBpc1JlZmxlY3Rpb25MYXll
cihjb25zdCBSZW5kZXJMYXllciYpIGNvbnN0OwogCi0gICAgaW5saW5lIGNvbnN0IExheW91dFBv
aW50JiBsb2NhdGlvbigpIGNvbnN0OworICAgIGNvbnN0IExheW91dFBvaW50JiBsb2NhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fdG9wTGVmdDsgfQogICAgIHZvaWQgc2V0TG9jYXRpb24oY29uc3Qg
TGF5b3V0UG9pbnQmIHApIHsgbV90b3BMZWZ0ID0gcDsgfQogCi0gICAgaW5saW5lIGNvbnN0IElu
dFNpemUmIHNpemUoKSBjb25zdDsKKyAgICBjb25zdCBJbnRTaXplJiBzaXplKCkgY29uc3QgeyBy
ZXR1cm4gbV9sYXllclNpemU7IH0KICAgICB2b2lkIHNldFNpemUoY29uc3QgSW50U2l6ZSYgc2l6
ZSkgeyBtX2xheWVyU2l6ZSA9IHNpemU7IH0gLy8gT25seSBwdWJsaWMgZm9yIFJlbmRlclRyZWVB
c1RleHQuCiAKLSAgICBpbmxpbmUgTGF5b3V0UmVjdCByZWN0KCkgY29uc3Q7CisgICAgTGF5b3V0
UmVjdCByZWN0KCkgY29uc3QgeyByZXR1cm4gTGF5b3V0UmVjdChsb2NhdGlvbigpLCBzaXplKCkp
OyB9CiAKICAgICBJbnRTaXplIHZpc2libGVTaXplKCkgY29uc3Q7CiAKQEAgLTUwMCw3ICs1MDAs
NyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJTdHlsZUNo
YW5nZSgpOwogICAgIGVudW0gY2xhc3MgQ2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQYXNzIDogdWlu
dDhfdCB7IE5vLCBZZXMgfTsKLSAgICB2b2lkIHVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJMYXlv
dXQoUmVuZGVyRWxlbWVudDo6TGF5b3V0SWRlbnRpZmllciwgYm9vbCBpc1JlbGF5b3V0aW5nU3Vi
dHJlZSwgYm9vbCBkaWRGdWxsUmVwYWludCwgQ2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQYXNzKTsK
KyAgICB2b2lkIHVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJMYXlvdXQoYm9vbCBpc1JlbGF5b3V0
aW5nU3VidHJlZSwgYm9vbCBkaWRGdWxsUmVwYWludCwgQ2FuVXNlU2ltcGxpZmllZFJlcGFpbnRQ
YXNzKTsKICAgICB2b2lkIHVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJPdmVyZmxvd1Njcm9sbCgp
OwogICAgIHZvaWQgdXBkYXRlTGF5ZXJQb3NpdGlvbnNBZnRlckRvY3VtZW50U2Nyb2xsKCk7CiAK
QEAgLTk5OSw3ICs5OTksNyBAQCBwcml2YXRlOgogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUg
cG9zaXRpb24gY2hhbmdlZC4KICAgICBib29sIHVwZGF0ZUxheWVyUG9zaXRpb24oT3B0aW9uU2V0
PFVwZGF0ZUxheWVyUG9zaXRpb25zRmxhZz4qID0gbnVsbHB0cik7CiAKLSAgICB2b2lkIHJlY3Vy
c2l2ZVVwZGF0ZUxheWVyUG9zaXRpb25zKFJlbmRlckVsZW1lbnQ6OkxheW91dElkZW50aWZpZXIs
IE9wdGlvblNldDxVcGRhdGVMYXllclBvc2l0aW9uc0ZsYWc+LCBDYW5Vc2VTaW1wbGlmaWVkUmVw
YWludFBhc3MgPSBDYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3M6Ok5vKTsKKyAgICB2b2lkIHJl
Y3Vyc2l2ZVVwZGF0ZUxheWVyUG9zaXRpb25zKE9wdGlvblNldDxVcGRhdGVMYXllclBvc2l0aW9u
c0ZsYWc+LCBDYW5Vc2VTaW1wbGlmaWVkUmVwYWludFBhc3MgPSBDYW5Vc2VTaW1wbGlmaWVkUmVw
YWludFBhc3M6Ok5vKTsKIAogICAgIGVudW0gVXBkYXRlTGF5ZXJQb3NpdGlvbnNBZnRlclNjcm9s
bEZsYWcgewogICAgICAgICBJc092ZXJmbG93U2Nyb2xsICAgICAgICAgICAgICAgICAgICAgICAg
PSAxIDw8IDAsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJJbmxpbmVzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJJbmxpbmVz
LmgKaW5kZXggMzE2YThhMTQyNzJhLi4xMGZiOWM5OGVhNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllcklubGluZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJJbmxpbmVzLmgKQEAgLTIzLDggKzIzLDYgQEAKICNpbmNs
dWRlICJSZW5kZXJMYXllci5oIgogI2luY2x1ZGUgIlJlbmRlck9iamVjdElubGluZXMuaCIKICNp
bmNsdWRlICJSZW5kZXJTVkdSZXNvdXJjZUNsaXBwZXIuaCIKLSNpbmNsdWRlICJSZW5kZXJWaWV3
LmgiCi0jaW5jbHVkZSAiU1ZHR3JhcGhpY3NFbGVtZW50LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIApAQCAtNzYsMjEgKzc0LDQgQEAgaW5saW5lIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lciog
UmVuZGVyTGF5ZXI6OmVuY2xvc2luZ1NWR0hpZGRlbk9yUmVzb3VyY2VDb250YWkKICAgICByZXR1
cm4gbV9lbmNsb3NpbmdTVkdIaWRkZW5PclJlc291cmNlQ29udGFpbmVyLmdldCgpOwogfQogCi1p
bmxpbmUgY29uc3QgTGF5b3V0UG9pbnQmIFJlbmRlckxheWVyOjpsb2NhdGlvbigpIGNvbnN0Ci17
Ci0gICAgQVNTRVJUKCFyZW5kZXJlcigpLnZpZXcoKS5mcmFtZVZpZXcoKS5sYXllckFjY2Vzc1By
ZXZlbnRlZCgpKTsKLSAgICByZXR1cm4gbV90b3BMZWZ0OwotfQotCi1pbmxpbmUgY29uc3QgSW50
U2l6ZSYgUmVuZGVyTGF5ZXI6OnNpemUoKSBjb25zdAotewotICAgIEFTU0VSVCghcmVuZGVyZXIo
KS52aWV3KCkuZnJhbWVWaWV3KCkubGF5ZXJBY2Nlc3NQcmV2ZW50ZWQoKSk7Ci0gICAgcmV0dXJu
IG1fbGF5ZXJTaXplOwotfQotCi1pbmxpbmUgTGF5b3V0UmVjdCBSZW5kZXJMYXllcjo6cmVjdCgp
IGNvbnN0Ci17Ci0gICAgcmV0dXJuIExheW91dFJlY3QobG9jYXRpb24oKSwgc2l6ZSgpKTsKLX0K
LQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckxheWVyU2Nyb2xsYWJsZUFyZWEuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckxheWVyU2Nyb2xsYWJsZUFyZWEuY3BwCmluZGV4IGZhMzFjMmU4ZmU4OC4u
NmU2YWUzZTE1ZDg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJTY3JvbGxhYmxlQXJlYS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyU2Nyb2xsYWJsZUFyZWEuY3BwCkBAIC0zNjEsNyArMzYxLDkgQEAgdm9pZCBSZW5k
ZXJMYXllclNjcm9sbGFibGVBcmVhOjpzY3JvbGxUbyhjb25zdCBTY3JvbGxQb3NpdGlvbiYgcG9z
aXRpb24pCiAgICAgLy8gV2UgZG9uJ3QgdXBkYXRlIGNvbXBvc2l0aW5nIGxheWVycywgYmVjYXVz
ZSB3ZSBuZWVkIHRvIGRvIGEgZGVlcCB1cGRhdGUgZnJvbSB0aGUgY29tcG9zaXRpbmcgYW5jZXN0
b3IuCiAgICAgaWYgKCF2aWV3LmZyYW1lVmlldygpLmxheW91dENvbnRleHQoKS5pc0luUmVuZGVy
VHJlZUxheW91dCgpKSB7CiAgICAgICAgIC8vIElmIHdlJ3JlIGluIHRoZSBtaWRkbGUgb2YgbGF5
b3V0LCB3ZSdsbCBqdXN0IHVwZGF0ZSBsYXllcnMgb25jZSBsYXlvdXQgaGFzIGZpbmlzaGVkLgot
ICAgICAgICB2aWV3LmZyYW1lVmlldygpLnVwZGF0ZUxheWVyUG9zaXRpb25zQWZ0ZXJPdmVyZmxv
d1Njcm9sbChtX2xheWVyKTsKKyAgICAgICAgbV9sYXllci51cGRhdGVMYXllclBvc2l0aW9uc0Fm
dGVyT3ZlcmZsb3dTY3JvbGwoKTsKKworICAgICAgICB2aWV3LmZyYW1lVmlldygpLnNjaGVkdWxl
VXBkYXRlV2lkZ2V0UG9zaXRpb25zKCk7CiAKICAgICAgICAgaWYgKCFtX3VwZGF0aW5nTWFycXVl
ZVBvc2l0aW9uKSB7CiAgICAgICAgICAgICAvLyBBdm9pZCB1cGRhdGluZyBjb21wb3NpdGluZyBs
YXllcnMgaWYsIGhpZ2hlciBvbiB0aGUgc3RhY2ssIHdlJ3JlIGFscmVhZHkgdXBkYXRpbmcgbGF5
ZXIK
</data>

          </attachment>
      

    </bug>

</bugzilla>