<?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>158972</bug_id>
          
          <creation_ts>2016-06-20 20:05:52 -0700</creation_ts>
          <short_desc>REGRESSION(r202243): Broke Windows build and iOS tests (Requested by ap on #webkit).</short_desc>
          <delta_ts>2016-06-20 20:08:10 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>158629</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1204006</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-20 20:05:52 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/202243 broke the build:
Broke Windows build and iOS tests (Requested by ap 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>1204010</commentid>
    <comment_count>1</comment_count>
      <attachid>281704</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-20 20:06:30 -0700</bug_when>
    <thetext>Created attachment 281704
ROLLOUT of r202243

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>1204011</commentid>
    <comment_count>2</comment_count>
      <attachid>281704</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-20 20:08:08 -0700</bug_when>
    <thetext>Comment on attachment 281704
ROLLOUT of r202243

Clearing flags on attachment: 281704

Committed r202263: &lt;http://trac.webkit.org/changeset/202263&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204012</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-20 20:08:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281704</attachid>
            <date>2016-06-20 20:06:30 -0700</date>
            <delta_ts>2016-06-20 20:08:08 -0700</delta_ts>
            <desc>ROLLOUT of r202243</desc>
            <filename>bug-158972-20160620200623.patch</filename>
            <type>text/plain</type>
            <size>33384</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyMjYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2FmOGY1M2M5ODhjOTkz
ZWUxNzc0OTIwOTVlOTAzYmFjNjUwNDBhNS4uNjIwODg4ZmEyMWUyMDM5ODcyYzE0MzY1MjE4NTIw
YzdjNWJmMjgzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE2LTA2LTIwICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMjAyMjQzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTU4OTcyCisKKyAgICAgICAgQnJva2UgV2luZG93cyBidWlsZCBhbmQg
aU9TIHRlc3RzIChSZXF1ZXN0ZWQgYnkgYXAgb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAgICAg
ICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJGb2N1cyBldmVudCBkaXNwYXRjaGVk
IGluIGlmcmFtZSBjYXVzZXMgcGFyZW50IGRvY3VtZW50IHRvCisgICAgICAgIHNjcm9sbCBpbmNv
cnJlY3RseSIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1ODYyOQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMDIyNDMK
KwogMjAxNi0wNi0yMCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAg
IFNpbXBsaWZ5IC8gT3B0aW1pemUgRGF0YURldGVjdG9yJ3Mgc2VhcmNoRm9yTGlua1JlbW92aW5n
RXhpc3RpbmdERExpbmtzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCA0ZTI2ODYxMjViMTExZjM3MGY1
MGVlNTEyNmU4YzczNjE0NTc2YjEyLi4xZmEwYzE3YzRiYzczZDI5MTE2ZWY5NjVkMTQwZGY0Zjkz
YTlmZGU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMDYtMjAgIENv
bW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3
ZWQsIHJvbGxpbmcgb3V0IHIyMDIyNDMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNTg5NzIKKworICAgICAgICBCcm9rZSBXaW5kb3dzIGJ1aWxkIGFu
ZCBpT1MgdGVzdHMgKFJlcXVlc3RlZCBieSBhcCBvbgorICAgICAgICAjd2Via2l0KS4KKworICAg
ICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIkZvY3VzIGV2ZW50IGRpc3BhdGNo
ZWQgaW4gaWZyYW1lIGNhdXNlcyBwYXJlbnQgZG9jdW1lbnQgdG8KKyAgICAgICAgc2Nyb2xsIGlu
Y29ycmVjdGx5IgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTU4NjI5CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzIwMjI0
MworCiAyMDE2LTA2LTIwICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgog
CiAgICAgICAgIEZvY3VzIGV2ZW50IGRpc3BhdGNoZWQgaW4gaWZyYW1lIGNhdXNlcyBwYXJlbnQg
ZG9jdW1lbnQgdG8gc2Nyb2xsIGluY29ycmVjdGx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTczNTA2YzA3OTE1
NGNkZmJhYTQ0MjMwOWI3Y2JiODRjZjYyY2JkYy4uYzg3ODQ4NmM5ZWMyNTA2NDhiYzk2ZTEyZjZk
MjVlODllZDc5Yjg5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE2LTA2LTIwICBD
b21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMjAyMjQzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTU4OTcyCisKKyAgICAgICAgQnJva2UgV2luZG93cyBidWlsZCBh
bmQgaU9TIHRlc3RzIChSZXF1ZXN0ZWQgYnkgYXAgb24KKyAgICAgICAgI3dlYmtpdCkuCisKKyAg
ICAgICAgUmV2ZXJ0ZWQgY2hhbmdlc2V0OgorCisgICAgICAgICJGb2N1cyBldmVudCBkaXNwYXRj
aGVkIGluIGlmcmFtZSBjYXVzZXMgcGFyZW50IGRvY3VtZW50IHRvCisgICAgICAgIHNjcm9sbCBp
bmNvcnJlY3RseSIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE1ODYyOQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8yMDIy
NDMKKwogMjAxNi0wNi0yMCAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAog
ICAgICAgICBBbGxvdyBTcG90bGlnaHQgc3VnZ2VzdGlvbnMgdG8gYmUgcmVhZCBieSBhbnkgcHJv
Y2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA1NzI3NmJlZWQ2YTBjNjgyYTBhMGU3M2VjYjk2
NmMyZTJkZDJhYzNkLi44ZmZkZDRjM2JlNDg2NzU4ZDA2ZWM0NzdiYmI5MWI1YTMxMDJjYjQyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuaApAQCAtMjgyLDYgKzI4MiwxMSBAQCBlbnVtIGNsYXNzIFNlbGVj
dGlvblJlc3RvcmF0aW9uTW9kZSB7CiAgICAgU2V0RGVmYXVsdCwKIH07CiAKK2VudW0gY2xhc3Mg
U2VsZWN0aW9uUmV2ZWFsTW9kZSB7CisgICAgUmV2ZWFsLAorICAgIERvTm90UmV2ZWFsCit9Owor
CiBlbnVtIGNsYXNzIEh0dHBFcXVpdlBvbGljeSB7CiAgICAgRW5hYmxlZCwKICAgICBEaXNhYmxl
ZEJ5U2V0dGluZ3MsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggYjhiZTcxY2M3Zjk5ZjRkYTZj
ZjBiMTg4ZGM4MzkxNTZjY2MxZmE2My4uNDgwNjkyOWQyNTk5YWU3MjQyMGE0YzdmYTg5OGI4ZjJk
M2MyMTI0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtNjM5LDkgKzYzOSw5IEBAIHZvaWQg
RWxlbWVudDo6c2Nyb2xsSW50b1ZpZXcoYm9vbCBhbGlnblRvVG9wKQogICAgIExheW91dFJlY3Qg
Ym91bmRzID0gcmVuZGVyZXIoKS0+YW5jaG9yUmVjdCgpOwogICAgIC8vIEFsaWduIHRvIHRoZSB0
b3AgLyBib3R0b20gYW5kIHRvIHRoZSBjbG9zZXN0IGVkZ2UuCiAgICAgaWYgKGFsaWduVG9Ub3Ap
Ci0gICAgICAgIHJlbmRlcmVyKCktPnNjcm9sbFJlY3RUb1Zpc2libGUoU2VsZWN0aW9uUmV2ZWFs
TW9kZTo6UmV2ZWFsLCBib3VuZHMsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRl
ZCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnblRvcEFsd2F5cyk7CisgICAgICAgIHJlbmRlcmVyKCkt
PnNjcm9sbFJlY3RUb1Zpc2libGUoYm91bmRzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdl
SWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub3BBbHdheXMpOwogICAgIGVsc2UKLSAg
ICAgICAgcmVuZGVyZXIoKS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShTZWxlY3Rpb25SZXZlYWxNb2Rl
OjpSZXZlYWwsIGJvdW5kcywgU2Nyb2xsQWxpZ25tZW50OjphbGlnblRvRWRnZUlmTmVlZGVkLCBT
Y3JvbGxBbGlnbm1lbnQ6OmFsaWduQm90dG9tQWx3YXlzKTsKKyAgICAgICAgcmVuZGVyZXIoKS0+
c2Nyb2xsUmVjdFRvVmlzaWJsZShib3VuZHMsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJ
Zk5lZWRlZCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnbkJvdHRvbUFsd2F5cyk7CiB9CiAKIHZvaWQg
RWxlbWVudDo6c2Nyb2xsSW50b1ZpZXdJZk5lZWRlZChib29sIGNlbnRlcklmTmVlZGVkKQpAQCAt
NjUzLDkgKzY1Myw5IEBAIHZvaWQgRWxlbWVudDo6c2Nyb2xsSW50b1ZpZXdJZk5lZWRlZChib29s
IGNlbnRlcklmTmVlZGVkKQogCiAgICAgTGF5b3V0UmVjdCBib3VuZHMgPSByZW5kZXJlcigpLT5h
bmNob3JSZWN0KCk7CiAgICAgaWYgKGNlbnRlcklmTmVlZGVkKQotICAgICAgICByZW5kZXJlcigp
LT5zY3JvbGxSZWN0VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCwgYm91bmRz
LCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6
YWxpZ25DZW50ZXJJZk5lZWRlZCk7CisgICAgICAgIHJlbmRlcmVyKCktPnNjcm9sbFJlY3RUb1Zp
c2libGUoYm91bmRzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVkZWQsIFNjcm9s
bEFsaWdubWVudDo6YWxpZ25DZW50ZXJJZk5lZWRlZCk7CiAgICAgZWxzZQotICAgICAgICByZW5k
ZXJlcigpLT5zY3JvbGxSZWN0VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCwg
Ym91bmRzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFsaWdu
bWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CisgICAgICAgIHJlbmRlcmVyKCktPnNjcm9sbFJl
Y3RUb1Zpc2libGUoYm91bmRzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQs
IFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CiB9CiAKIHZvaWQgRWxlbWVu
dDo6c2Nyb2xsSW50b1ZpZXdJZk5vdFZpc2libGUoYm9vbCBjZW50ZXJJZk5vdFZpc2libGUpCkBA
IC02NjcsOSArNjY3LDkgQEAgdm9pZCBFbGVtZW50OjpzY3JvbGxJbnRvVmlld0lmTm90VmlzaWJs
ZShib29sIGNlbnRlcklmTm90VmlzaWJsZSkKICAgICAKICAgICBMYXlvdXRSZWN0IGJvdW5kcyA9
IHJlbmRlcmVyKCktPmFuY2hvclJlY3QoKTsKICAgICBpZiAoY2VudGVySWZOb3RWaXNpYmxlKQot
ICAgICAgICByZW5kZXJlcigpLT5zY3JvbGxSZWN0VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1v
ZGU6OlJldmVhbCwgYm91bmRzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOb3RWaXNp
YmxlLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOb3RWaXNpYmxlKTsKKyAgICAgICAg
cmVuZGVyZXIoKS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShib3VuZHMsIFNjcm9sbEFsaWdubWVudDo6
YWxpZ25DZW50ZXJJZk5vdFZpc2libGUsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50ZXJJZk5v
dFZpc2libGUpOwogICAgIGVsc2UKLSAgICAgICAgcmVuZGVyZXIoKS0+c2Nyb2xsUmVjdFRvVmlz
aWJsZShTZWxlY3Rpb25SZXZlYWxNb2RlOjpSZXZlYWwsIGJvdW5kcywgU2Nyb2xsQWxpZ25tZW50
OjphbGlnblRvRWRnZUlmTm90VmlzaWJsZSwgU2Nyb2xsQWxpZ25tZW50OjphbGlnblRvRWRnZUlm
Tm90VmlzaWJsZSk7CisgICAgICAgIHJlbmRlcmVyKCktPnNjcm9sbFJlY3RUb1Zpc2libGUoYm91
bmRzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOb3RWaXNpYmxlLCBTY3JvbGxBbGln
bm1lbnQ6OmFsaWduVG9FZGdlSWZOb3RWaXNpYmxlKTsKIH0KICAgICAKIHZvaWQgRWxlbWVudDo6
c2Nyb2xsQnlVbml0cyhpbnQgdW5pdHMsIFNjcm9sbEdyYW51bGFyaXR5IGdyYW51bGFyaXR5KQpA
QCAtMjI0NSwxOCArMjI0NSwyMCBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVBy
ZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgfQogICAgICAg
ICAKICAgICBjYW5jZWxGb2N1c0FwcGVhcmFuY2VVcGRhdGUoKTsKLQotICAgIFNlbGVjdGlvblJl
dmVhbE1vZGUgcmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbDsKICNpZiBQ
TEFURk9STShJT1MpCiAgICAgLy8gRm9jdXNpbmcgYSBmb3JtIGVsZW1lbnQgdHJpZ2dlcnMgYW5p
bWF0aW9uIGluIFVJS2l0IHRvIHNjcm9sbCB0byB0aGUgcmlnaHQgcG9zaXRpb24uCiAgICAgLy8g
Q2FsbGluZyB1cGRhdGVGb2N1c0FwcGVhcmFuY2UoKSB3b3VsZCBnZW5lcmF0ZSBhbiB1bm5lY2Vz
c2FyeSBjYWxsIHRvIFNjcm9sbFZpZXc6OnNldFNjcm9sbFBvc2l0aW9uKCksCiAgICAgLy8gd2hp
Y2ggd291bGQganVtcCB1cyBhcm91bmQgZHVyaW5nIHRoaXMgYW5pbWF0aW9uLiBTZWUgPHJkYXI6
Ly9wcm9ibGVtLzY2OTk3NDE+LgotICAgIGJvb2wgaXNGb3JtQ29udHJvbCA9IGlzPEhUTUxGb3Jt
Q29udHJvbEVsZW1lbnQ+KCp0aGlzKTsKKyAgICBGcmFtZVZpZXcqIHZpZXcgPSBkb2N1bWVudCgp
LnZpZXcoKTsKKyAgICBib29sIGlzRm9ybUNvbnRyb2wgPSB2aWV3ICYmIGlzPEhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQ+KCp0aGlzKTsKICAgICBpZiAoaXNGb3JtQ29udHJvbCkKLSAgICAgICAgcmV2
ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbFVwVG9NYWluRnJhbWU7CisgICAg
ICAgIHZpZXctPnNldFByb2hpYml0c1Njcm9sbGluZyh0cnVlKTsKKyNlbmRpZgorICAgIHVwZGF0
ZUZvY3VzQXBwZWFyYW5jZShyZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gPyBTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGU6OlJlc3RvcmUgOiBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNldERlZmF1
bHQpOworI2lmIFBMQVRGT1JNKElPUykKKyAgICBpZiAoaXNGb3JtQ29udHJvbCkKKyAgICAgICAg
dmlldy0+c2V0UHJvaGliaXRzU2Nyb2xsaW5nKGZhbHNlKTsKICNlbmRpZgotCi0gICAgdXBkYXRl
Rm9jdXNBcHBlYXJhbmNlKHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiA/IFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZTo6UmVzdG9yZSA6IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2V0RGVmYXVs
dCwgcmV2ZWFsTW9kZSk7CiB9CiAKIHZvaWQgRWxlbWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNl
QWZ0ZXJBdHRhY2hJZk5lZWRlZCgpCkBAIC0yMjg4LDEwICsyMjkwLDExIEBAIHZvaWQgRWxlbWVu
dDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0
aW9uUmV2ZWFsTW9kCiAgICAgICAgIAogICAgICAgICBpZiAoZnJhbWUtPnNlbGVjdGlvbigpLnNo
b3VsZENoYW5nZVNlbGVjdGlvbihuZXdTZWxlY3Rpb24pKSB7CiAgICAgICAgICAgICBmcmFtZS0+
c2VsZWN0aW9uKCkuc2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbiwgRnJhbWVTZWxlY3Rpb246OmRl
ZmF1bHRTZXRTZWxlY3Rpb25PcHRpb25zKCksIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0
ZUNoYW5nZUludGVudCgpKTsKLSAgICAgICAgICAgIGZyYW1lLT5zZWxlY3Rpb24oKS5yZXZlYWxT
ZWxlY3Rpb24ocmV2ZWFsTW9kZSk7CisgICAgICAgICAgICBpZiAocmV2ZWFsTW9kZSA9PSBTZWxl
Y3Rpb25SZXZlYWxNb2RlOjpSZXZlYWwpCisgICAgICAgICAgICAgICAgZnJhbWUtPnNlbGVjdGlv
bigpLnJldmVhbFNlbGVjdGlvbigpOwogICAgICAgICB9Ci0gICAgfSBlbHNlIGlmIChyZW5kZXJl
cigpICYmICFyZW5kZXJlcigpLT5pc1dpZGdldCgpKQotICAgICAgICByZW5kZXJlcigpLT5zY3Jv
bGxSZWN0VG9WaXNpYmxlKHJldmVhbE1vZGUsIHJlbmRlcmVyKCktPmFuY2hvclJlY3QoKSk7Cisg
ICAgfSBlbHNlIGlmIChyZW5kZXJlcigpICYmICFyZW5kZXJlcigpLT5pc1dpZGdldCgpICYmIHJl
dmVhbE1vZGUgPT0gU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsKQorICAgICAgICByZW5kZXJl
cigpLT5zY3JvbGxSZWN0VG9WaXNpYmxlKHJlbmRlcmVyKCktPmFuY2hvclJlY3QoKSk7CiB9CiAK
IHZvaWQgRWxlbWVudDo6Ymx1cigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxl
bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAppbmRleCAzMGUwNTNlMTljMTk5
N2Y4NDgyYjNhNDI3ZTFjNjNkOWY2MjNjY2Y0Li5iMzEwMjNiZjgzZDc4MjJlZjk5MGFlOGU4NjNj
MzIxY2EyZThjZjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKQEAgLTYwLDEyICs2MCw2IEBAIGVudW0g
U3BlbGxjaGVja0F0dHJpYnV0ZVN0YXRlIHsKICAgICBTcGVsbGNoZWNrQXR0cmlidXRlRGVmYXVs
dAogfTsKIAotZW51bSBjbGFzcyBTZWxlY3Rpb25SZXZlYWxNb2RlIHsKLSAgICBSZXZlYWwsCi0g
ICAgUmV2ZWFsVXBUb01haW5GcmFtZSwgLy8gU2Nyb2xsIG92ZXJmbG93IGFuZCBpZnJhbWVzLCBi
dXQgbm90IHRoZSBtYWluIGZyYW1lLgotICAgIERvTm90UmV2ZWFsCi19OwotCiBjbGFzcyBFbGVt
ZW50IDogcHVibGljIENvbnRhaW5lck5vZGUgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8RWxl
bWVudD4gY3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3IuY3BwCmluZGV4IGNkN2ZmNTM3YWZlZGNjNWI2YmM5NTJkYzdlOWM5OWI0MDJk
YWM2NmYuLmY2NjYzMzAxNjQzMDMxMzU4NTQwZmI3NGMxMjUwNzg2ZjdjNzUzNWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTEyMDQsNyArMTIwNCw3IEBAIGJvb2wgRWRpdG9yOjpp
bnNlcnRUZXh0V2l0aG91dFNlbmRpbmdUZXh0RXZlbnQoY29uc3QgU3RyaW5nJiB0ZXh0LCBib29s
IHNlbGVjdEluCiAgICAgICAgICAgICAvLyBSZXZlYWwgdGhlIGN1cnJlbnQgc2VsZWN0aW9uCiAg
ICAgICAgICAgICBpZiAoRnJhbWUqIGVkaXRlZEZyYW1lID0gZG9jdW1lbnQtPmZyYW1lKCkpCiAg
ICAgICAgICAgICAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBlZGl0ZWRGcmFtZS0+cGFnZSgpKQotICAg
ICAgICAgICAgICAgICAgICBwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJh
bWUoKS5zZWxlY3Rpb24oKS5yZXZlYWxTZWxlY3Rpb24oU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2
ZWFsLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVkZWQpOworICAgICAgICAgICAg
ICAgICAgICBwYWdlLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2VkT3JNYWluRnJhbWUoKS5zZWxl
Y3Rpb24oKS5yZXZlYWxTZWxlY3Rpb24oU2Nyb2xsQWxpZ25tZW50OjphbGlnbkNlbnRlcklmTmVl
ZGVkKTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMjc5OSw3ICsyNzk5LDcgQEAgdm9pZCBFZGl0
b3I6OnJldmVhbFNlbGVjdGlvbkFmdGVyRWRpdGluZ09wZXJhdGlvbihjb25zdCBTY3JvbGxBbGln
bm1lbnQmIGFsaWdubWUKICAgICBpZiAobV9pZ25vcmVDb21wb3NpdGlvblNlbGVjdGlvbkNoYW5n
ZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9mcmFtZS5zZWxlY3Rpb24oKS5yZXZlYWxTZWxl
Y3Rpb24oU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsLCBhbGlnbm1lbnQsIHJldmVhbEV4dGVu
dE9wdGlvbik7CisgICAgbV9mcmFtZS5zZWxlY3Rpb24oKS5yZXZlYWxTZWxlY3Rpb24oYWxpZ25t
ZW50LCByZXZlYWxFeHRlbnRPcHRpb24pOwogfQogCiB2b2lkIEVkaXRvcjo6c2V0SWdub3JlQ29t
cG9zaXRpb25TZWxlY3Rpb25DaGFuZ2UoYm9vbCBpZ25vcmUsIFJldmVhbFNlbGVjdGlvbiBzaG91
bGRSZXZlYWxFeGlzdGluZ1NlbGVjdGlvbikKQEAgLTMxNDcsNyArMzE0Nyw3IEBAIFJlZlB0cjxS
YW5nZT4gRWRpdG9yOjpmaW5kU3RyaW5nQW5kU2Nyb2xsVG9WaXNpYmxlKGNvbnN0IFN0cmluZyYg
dGFyZ2V0LCBSYW5nZSoKICAgICBpZiAoIW5leHRNYXRjaCkKICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CiAKLSAgICBuZXh0TWF0Y2gtPmZpcnN0Tm9kZSgpLT5yZW5kZXJlcigpLT5zY3JvbGxSZWN0
VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCwgbmV4dE1hdGNoLT5hYnNvbHV0
ZUJvdW5kaW5nQm94KCksCisgICAgbmV4dE1hdGNoLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKS0+
c2Nyb2xsUmVjdFRvVmlzaWJsZShuZXh0TWF0Y2gtPmFic29sdXRlQm91bmRpbmdCb3goKSwKICAg
ICAgICAgU2Nyb2xsQWxpZ25tZW50OjphbGlnbkNlbnRlcklmTmVlZGVkLCBTY3JvbGxBbGlnbm1l
bnQ6OmFsaWduQ2VudGVySWZOZWVkZWQpOwogCiAgICAgcmV0dXJuIG5leHRNYXRjaDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAKaW5kZXggMzM4MzRhZDA5NmU4MTgy
MjUxNmU3ODEzYjJiODBkYzliYjI2ZTJkNC4uYTU2ZTZiN2Q1NjEyNjc5NDA3MWQwZmJiNTlkZjFi
NDlmZjdmMGQ0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVj
dGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5jcHAK
QEAgLTEyNyw2ICsxMjcsNyBAQCBGcmFtZVNlbGVjdGlvbjo6RnJhbWVTZWxlY3Rpb24oRnJhbWUq
IGZyYW1lKQogI2lmIFBMQVRGT1JNKElPUykKICAgICAsIG1fdXBkYXRlQXBwZWFyYW5jZUVuYWJs
ZWQoZmFsc2UpCiAgICAgLCBtX2NhcmV0QmxpbmtzKHRydWUpCisgICAgLCBtX3Njcm9sbGluZ1N1
cHByZXNzQ291bnQoMCkKICNlbmRpZgogewogICAgIGlmIChzaG91bGRBbHdheXNVc2VEaXJlY3Rp
b25hbFNlbGVjdGlvbihtX2ZyYW1lKSkKQEAgLTM4Nyw3ICszODgsNyBAQCB2b2lkIEZyYW1lU2Vs
ZWN0aW9uOjp1cGRhdGVBbmRSZXZlYWxTZWxlY3Rpb24oY29uc3QgQVhUZXh0U3RhdGVDaGFuZ2VJ
bnRlbnQmIGludAogICAgICAgICBlbHNlCiAgICAgICAgICAgICBhbGlnbm1lbnQgPSBtX2Fsd2F5
c0FsaWduQ3Vyc29yT25TY3JvbGxXaGVuUmV2ZWFsaW5nU2VsZWN0aW9uID8gU2Nyb2xsQWxpZ25t
ZW50OjphbGlnblRvcEFsd2F5cyA6IFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRl
ZDsKIAotICAgICAgICByZXZlYWxTZWxlY3Rpb24oU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFs
LCBhbGlnbm1lbnQsIFJldmVhbEV4dGVudCk7CisgICAgICAgIHJldmVhbFNlbGVjdGlvbihhbGln
bm1lbnQsIFJldmVhbEV4dGVudCk7CiAgICAgfQogCiAgICAgbm90aWZ5QWNjZXNzaWJpbGl0eUZv
clNlbGVjdGlvbkNoYW5nZShpbnRlbnQpOwpAQCAtMjI4OSwxMSArMjI5MCw4IEBAIEhUTUxGb3Jt
RWxlbWVudCogRnJhbWVTZWxlY3Rpb246OmN1cnJlbnRGb3JtKCkgY29uc3QKICAgICByZXR1cm4g
c2NhbkZvckZvcm0oc3RhcnQpOwogfQogCi12b2lkIEZyYW1lU2VsZWN0aW9uOjpyZXZlYWxTZWxl
Y3Rpb24oU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNb2RlLCBjb25zdCBTY3JvbGxBbGlnbm1l
bnQmIGFsaWdubWVudCwgUmV2ZWFsRXh0ZW50T3B0aW9uIHJldmVhbEV4dGVudE9wdGlvbikKK3Zv
aWQgRnJhbWVTZWxlY3Rpb246OnJldmVhbFNlbGVjdGlvbihjb25zdCBTY3JvbGxBbGlnbm1lbnQm
IGFsaWdubWVudCwgUmV2ZWFsRXh0ZW50T3B0aW9uIHJldmVhbEV4dGVudE9wdGlvbikKIHsKLSAg
ICBpZiAocmV2ZWFsTW9kZSA9PSBTZWxlY3Rpb25SZXZlYWxNb2RlOjpEb05vdFJldmVhbCkKLSAg
ICAgICAgcmV0dXJuOwotCiAgICAgTGF5b3V0UmVjdCByZWN0OwogCiAgICAgc3dpdGNoIChtX3Nl
bGVjdGlvbi5zZWxlY3Rpb25UeXBlKCkpIHsKQEAgLTIzMTQsNyArMjMxMiw3IEBAIHZvaWQgRnJh
bWVTZWxlY3Rpb246OnJldmVhbFNlbGVjdGlvbihTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1v
ZGUsIGNvbnN0IFNjcm9sCiAgICAgICAgIGlmIChSZW5kZXJMYXllciogbGF5ZXIgPSBzdGFydC5k
ZXByZWNhdGVkTm9kZSgpLT5yZW5kZXJlcigpLT5lbmNsb3NpbmdMYXllcigpKSB7CiAgICAgICAg
ICAgICBpZiAoIW1fc2Nyb2xsaW5nU3VwcHJlc3NDb3VudCkgewogICAgICAgICAgICAgICAgIGxh
eWVyLT5zZXRBZGp1c3RGb3JJT1NDYXJldFdoZW5TY3JvbGxpbmcodHJ1ZSk7Ci0gICAgICAgICAg
ICAgICAgbGF5ZXItPnNjcm9sbFJlY3RUb1Zpc2libGUocmV2ZWFsTW9kZSwgcmVjdCwgYWxpZ25t
ZW50LCBhbGlnbm1lbnQpOworICAgICAgICAgICAgICAgIGxheWVyLT5zY3JvbGxSZWN0VG9WaXNp
YmxlKHJlY3QsIGFsaWdubWVudCwgYWxpZ25tZW50KTsKICAgICAgICAgICAgICAgICBsYXllci0+
c2V0QWRqdXN0Rm9ySU9TQ2FyZXRXaGVuU2Nyb2xsaW5nKGZhbHNlKTsKICAgICAgICAgICAgICAg
ICB1cGRhdGVBcHBlYXJhbmNlKCk7CiAgICAgICAgICAgICAgICAgaWYgKG1fZnJhbWUtPnBhZ2Uo
KSkKQEAgLTIzMjUsNyArMjMyMyw3IEBAIHZvaWQgRnJhbWVTZWxlY3Rpb246OnJldmVhbFNlbGVj
dGlvbihTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1vZGUsIGNvbnN0IFNjcm9sCiAgICAgICAg
IC8vIEZJWE1FOiBUaGlzIGNvZGUgb25seSBoYW5kbGVzIHNjcm9sbGluZyB0aGUgc3RhcnRDb250
YWluZXIncyBsYXllciwgYnV0CiAgICAgICAgIC8vIHRoZSBzZWxlY3Rpb24gcmVjdCBjb3VsZCBp
bnRlcnNlY3QgbW9yZSB0aGFuIGp1c3QgdGhhdC4KICAgICAgICAgLy8gU2VlIDxyZGFyOi8vcHJv
YmxlbS80Nzk5ODk5Pi4KLSAgICAgICAgaWYgKHN0YXJ0LmRlcHJlY2F0ZWROb2RlKCktPnJlbmRl
cmVyKCktPnNjcm9sbFJlY3RUb1Zpc2libGUocmV2ZWFsTW9kZSwgcmVjdCwgYWxpZ25tZW50LCBh
bGlnbm1lbnQpKQorICAgICAgICBpZiAoc3RhcnQuZGVwcmVjYXRlZE5vZGUoKS0+cmVuZGVyZXIo
KS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShyZWN0LCBhbGlnbm1lbnQsIGFsaWdubWVudCkpCiAgICAg
ICAgICAgICB1cGRhdGVBcHBlYXJhbmNlKCk7CiAjZW5kaWYKICAgICB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0ZyYW1lU2VsZWN0aW9uLmgKaW5kZXggZjc4Zjg3MjUyNjM2MjZjYzUyYWQxNDAwM2Jl
MWM0ZjE0YmFiOGMwOC4uOTVhYzM3NzRiODAyNDUwZGI5ZDhmZmVkOTc5ZGQyMzhkMDVmNWUxZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9GcmFtZVNlbGVjdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRnJhbWVTZWxlY3Rpb24uaApAQCAtMjgsNyArMjgsNiBA
QAogCiAjaW5jbHVkZSAiQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQuaCIKICNpbmNsdWRlICJFZGl0
aW5nU3R5bGUuaCIKLSNpbmNsdWRlICJFbGVtZW50LmgiCiAjaW5jbHVkZSAiSW50UmVjdC5oIgog
I2luY2x1ZGUgIkxheW91dFJlY3QuaCIKICNpbmNsdWRlICJSYW5nZS5oIgpAQCAtMjY3LDcgKzI2
Niw3IEBAIHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JUIEhUTUxGb3JtRWxlbWVudCogY3Vy
cmVudEZvcm0oKSBjb25zdDsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmV2ZWFsU2VsZWN0
aW9uKFNlbGVjdGlvblJldmVhbE1vZGUgPSBTZWxlY3Rpb25SZXZlYWxNb2RlOjpSZXZlYWwsIGNv
bnN0IFNjcm9sbEFsaWdubWVudCYgPSBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVk
ZWQsIFJldmVhbEV4dGVudE9wdGlvbiA9IERvTm90UmV2ZWFsRXh0ZW50KTsKKyAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIHJldmVhbFNlbGVjdGlvbihjb25zdCBTY3JvbGxBbGlnbm1lbnQmID0gU2Ny
b2xsQWxpZ25tZW50OjphbGlnbkNlbnRlcklmTmVlZGVkLCBSZXZlYWxFeHRlbnRPcHRpb24gPSBE
b05vdFJldmVhbEV4dGVudCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRTZWxlY3Rpb25G
cm9tTm9uZSgpOwogCiAgICAgYm9vbCBzaG91bGRTaG93QmxvY2tDdXJzb3IoKSBjb25zdCB7IHJl
dHVybiBtX3Nob3VsZFNob3dCbG9ja0N1cnNvcjsgfQpAQCAtMzUxLDcgKzM1MCw3IEBAIHByaXZh
dGU6CiAgICAgYm9vbCBtX3VwZGF0ZUFwcGVhcmFuY2VFbmFibGVkIDogMTsKICAgICBib29sIG1f
Y2FyZXRCbGlua3MgOiAxOwogICAgIENvbG9yIG1fY2FyZXRDb2xvcjsKLSAgICBpbnQgbV9zY3Jv
bGxpbmdTdXBwcmVzc0NvdW50IHsgMCB9OworICAgIGludCBtX3Njcm9sbGluZ1N1cHByZXNzQ291
bnQ7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElu
cHV0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3Bw
CmluZGV4IDAyM2FjMzM5MGYyYmRhMmI3NTNmN2FiYjgzMDY5MzlhNGQzNmYwNTIuLjUyNmMyZWY1
MWU3MzgxNDMyNjZkY2I2MzFlMjdjM2FlZjE4ZTE0ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MSW5wdXRFbGVtZW50LmNwcApAQCAtNDA0LDggKzQwNCw4IEBAIHZvaWQgSFRNTElucHV0RWxl
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0
b3JhdGlvCiAgICAgICAgICAgICBzZWxlY3QoRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRl
Q2hhbmdlSW50ZW50KCkpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICByZXN0b3JlQ2FjaGVk
U2VsZWN0aW9uKCk7Ci0gICAgICAgIGlmIChkb2N1bWVudCgpLmZyYW1lKCkpCi0gICAgICAgICAg
ICBkb2N1bWVudCgpLmZyYW1lKCktPnNlbGVjdGlvbigpLnJldmVhbFNlbGVjdGlvbihyZXZlYWxN
b2RlKTsKKyAgICAgICAgaWYgKGRvY3VtZW50KCkuZnJhbWUoKSAmJiByZXZlYWxNb2RlID09IFNl
bGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCkKKyAgICAgICAgICAgIGRvY3VtZW50KCkuZnJhbWUo
KS0+c2VsZWN0aW9uKCkucmV2ZWFsU2VsZWN0aW9uKCk7CiAgICAgfSBlbHNlCiAgICAgICAgIEhU
TUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UocmVzdG9yYXRp
b25Nb2RlLCByZXZlYWxNb2RlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFRleHRBcmVhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJl
YUVsZW1lbnQuY3BwCmluZGV4IGY5MjEwOGFjYTZmMWQ4YTNkOWNlZGFjZGIwYjgwODJkZGYzODJj
OGQuLjI1NWJlZDY3OTcyODQyZGUzNDNiMmU2NjBiMTNlM2I1NWM2YmI5N2QgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcApAQCAtMjYwLDggKzI2MCw4IEBA
IHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlv
blJlc3RvcmF0aW9uTW9kZSByZXN0b3JhCiAgICAgfSBlbHNlCiAgICAgICAgIHJlc3RvcmVDYWNo
ZWRTZWxlY3Rpb24oRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkp
OwogCi0gICAgaWYgKGRvY3VtZW50KCkuZnJhbWUoKSkKLSAgICAgICAgZG9jdW1lbnQoKS5mcmFt
ZSgpLT5zZWxlY3Rpb24oKS5yZXZlYWxTZWxlY3Rpb24ocmV2ZWFsTW9kZSk7CisgICAgaWYgKGRv
Y3VtZW50KCkuZnJhbWUoKSAmJiByZXZlYWxNb2RlID09IFNlbGVjdGlvblJldmVhbE1vZGU6OlJl
dmVhbCkKKyAgICAgICAgZG9jdW1lbnQoKS5mcmFtZSgpLT5zZWxlY3Rpb24oKS5yZXZlYWxTZWxl
Y3Rpb24oKTsKIH0KIAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5k
bGVyKEV2ZW50KiBldmVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGV4
dE1lbnVDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ29udGV4dE1lbnVDb250
cm9sbGVyLmNwcAppbmRleCAzOTRiYjJjNTE5YTY3MTU3Y2VlZDhhZWVhNmY1OGYxYzc4ZjI4MTQ2
Li5lZjIyZTUyNmJiYmJiNGM1NDhiOTRhMDFmZTM4OTMzNzc2MzM4NGE2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwCkBAIC0zNzIsNyArMzcyLDcg
QEAgdm9pZCBDb250ZXh0TWVudUNvbnRyb2xsZXI6OmNvbnRleHRNZW51SXRlbVNlbGVjdGVkKENv
bnRleHRNZW51QWN0aW9uIGFjdGlvbiwgY28KICAgICAgICAgICAgIEFTU0VSVChkb2N1bWVudCk7
CiAgICAgICAgICAgICBSZWZQdHI8UmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQ+IGNvbW1hbmQgPSBS
ZXBsYWNlU2VsZWN0aW9uQ29tbWFuZDo6Y3JlYXRlKCpkb2N1bWVudCwgY3JlYXRlRnJhZ21lbnRG
cm9tTWFya3VwKCpkb2N1bWVudCwgdGl0bGUsICIiKSwgcmVwbGFjZU9wdGlvbnMpOwogICAgICAg
ICAgICAgYXBwbHlDb21tYW5kKGNvbW1hbmQpOwotICAgICAgICAgICAgZnJhbWUtPnNlbGVjdGlv
bigpLnJldmVhbFNlbGVjdGlvbihTZWxlY3Rpb25SZXZlYWxNb2RlOjpSZXZlYWwsIFNjcm9sbEFs
aWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CisgICAgICAgICAgICBmcmFtZS0+c2VsZWN0
aW9uKCkucmV2ZWFsU2VsZWN0aW9uKFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRl
ZCk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZp
ZXcuY3BwCmluZGV4IGEzMTFkYjBlZGM0ZTZiMWQ1ZDU1MjZkY2U4YmU2ZjVhYTA5YmJhMDEuLjEw
NmFlYmZmMGNiZTllZDQxZGRkM2EzNDEwNGY5MWQ5MGZhM2ZlNjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zy
YW1lVmlldy5jcHAKQEAgLTMwNTAsMTEgKzMwNTAsMTEgQEAgdm9pZCBGcmFtZVZpZXc6OnNjcm9s
bFRvQW5jaG9yKCkKICAgICAvLyBTY3JvbGwgbmVzdGVkIGxheWVycyBhbmQgZnJhbWVzIHRvIHJl
dmVhbCB0aGUgYW5jaG9yLgogICAgIC8vIEFsaWduIHRvIHRoZSB0b3AgYW5kIHRvIHRoZSBjbG9z
ZXN0IHNpZGUgKHRoaXMgbWF0Y2hlcyBvdGhlciBicm93c2VycykuCiAgICAgaWYgKGFuY2hvck5v
ZGUtPnJlbmRlcmVyKCktPnN0eWxlKCkuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKSkKLSAgICAg
ICAgYW5jaG9yTm9kZS0+cmVuZGVyZXIoKS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShTZWxlY3Rpb25S
ZXZlYWxNb2RlOjpSZXZlYWwsIHJlY3QsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5l
ZWRlZCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnblRvcEFsd2F5cyk7CisgICAgICAgIGFuY2hvck5v
ZGUtPnJlbmRlcmVyKCktPnNjcm9sbFJlY3RUb1Zpc2libGUocmVjdCwgU2Nyb2xsQWxpZ25tZW50
OjphbGlnblRvRWRnZUlmTmVlZGVkLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9wQWx3YXlzKTsK
ICAgICBlbHNlIGlmIChhbmNob3JOb2RlLT5yZW5kZXJlcigpLT5zdHlsZSgpLmlzRmxpcHBlZEJs
b2Nrc1dyaXRpbmdNb2RlKCkpCi0gICAgICAgIGFuY2hvck5vZGUtPnJlbmRlcmVyKCktPnNjcm9s
bFJlY3RUb1Zpc2libGUoU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsLCByZWN0LCBTY3JvbGxB
bGlnbm1lbnQ6OmFsaWduUmlnaHRBbHdheXMsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJ
Zk5lZWRlZCk7CisgICAgICAgIGFuY2hvck5vZGUtPnJlbmRlcmVyKCktPnNjcm9sbFJlY3RUb1Zp
c2libGUocmVjdCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnblJpZ2h0QWx3YXlzLCBTY3JvbGxBbGln
bm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQpOwogICAgIGVsc2UKLSAgICAgICAgYW5jaG9yTm9k
ZS0+cmVuZGVyZXIoKS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShTZWxlY3Rpb25SZXZlYWxNb2RlOjpS
ZXZlYWwsIHJlY3QsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25MZWZ0QWx3YXlzLCBTY3JvbGxBbGln
bm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQpOworICAgICAgICBhbmNob3JOb2RlLT5yZW5kZXJl
cigpLT5zY3JvbGxSZWN0VG9WaXNpYmxlKHJlY3QsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25MZWZ0
QWx3YXlzLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQpOwogCiAgICAgaWYg
KEFYT2JqZWN0Q2FjaGUqIGNhY2hlID0gZnJhbWUoKS5kb2N1bWVudCgpLT5leGlzdGluZ0FYT2Jq
ZWN0Q2FjaGUoKSkKICAgICAgICAgY2FjaGUtPmhhbmRsZVNjcm9sbGVkVG9BbmNob3IoYW5jaG9y
Tm9kZS5nZXQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAppbmRl
eCBmYTBhMTVhYzA2NDcyOTI2YjIxNWY5ZDVjN2ViNzQxZDE4NTQ3NmRiLi45MjkwMTRjZTliZmQ2
MzJmNTZlMTdkYjQ0NTYwNDkzZmEzNGMxZTVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllci5jcHAKQEAgLTgwLDcgKzgwLDYgQEAKICNpbmNsdWRlICJIaXRUZXN0UmVxdWVz
dC5oIgogI2luY2x1ZGUgIkhpdFRlc3RSZXN1bHQuaCIKICNpbmNsdWRlICJMb2dnaW5nLmgiCi0j
aW5jbHVkZSAiTWFpbkZyYW1lLmgiCiAjaW5jbHVkZSAiTm9FdmVudERpc3BhdGNoQXNzZXJ0aW9u
LmgiCiAjaW5jbHVkZSAiT3ZlcmZsb3dFdmVudC5oIgogI2luY2x1ZGUgIk92ZXJsYXBUZXN0UmVx
dWVzdENsaWVudC5oIgpAQCAtMjQ5MSw3ICsyNDkwLDcgQEAgYm9vbCBSZW5kZXJMYXllcjo6YWxs
b3dzQ3VycmVudFNjcm9sbCgpIGNvbnN0CiAgICAgcmV0dXJuIGJveC0+aGFzSG9yaXpvbnRhbE92
ZXJmbG93KCkgfHwgYm94LT5oYXNWZXJ0aWNhbE92ZXJmbG93KCk7CiB9CiAKLXZvaWQgUmVuZGVy
TGF5ZXI6OnNjcm9sbFJlY3RUb1Zpc2libGUoU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNb2Rl
LCBjb25zdCBMYXlvdXRSZWN0JiByZWN0LCBjb25zdCBTY3JvbGxBbGlnbm1lbnQmIGFsaWduWCwg
Y29uc3QgU2Nyb2xsQWxpZ25tZW50JiBhbGlnblkpCit2b2lkIFJlbmRlckxheWVyOjpzY3JvbGxS
ZWN0VG9WaXNpYmxlKGNvbnN0IExheW91dFJlY3QmIHJlY3QsIGNvbnN0IFNjcm9sbEFsaWdubWVu
dCYgYWxpZ25YLCBjb25zdCBTY3JvbGxBbGlnbm1lbnQmIGFsaWduWSkKIHsKICAgICBMT0dfV0lU
SF9TVFJFQU0oU2Nyb2xsaW5nLCBzdHJlYW0gPDwgIkxheWVyICIgPDwgdGhpcyA8PCAiIHNjcm9s
bFJlY3RUb1Zpc2libGUgIiA8PCByZWN0KTsKIApAQCAtMjU1MSw5ICsyNTUwLDYgQEAgdm9pZCBS
ZW5kZXJMYXllcjo6c2Nyb2xsUmVjdFRvVmlzaWJsZShTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVh
bE1vZGUsIGNvbnN0IExheW8KICAgICAgICAgICAgICAgICAgICAgcGFyZW50TGF5ZXIgPSBudWxs
cHRyOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgaWYgKHJl
dmVhbE1vZGUgPT0gU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsVXBUb01haW5GcmFtZSAmJiBm
cmFtZVZpZXcuZnJhbWUoKS5pc01haW5GcmFtZSgpKQotICAgICAgICAgICAgICAgIHJldHVybjsK
LQogI2lmICFQTEFURk9STShJT1MpCiAgICAgICAgICAgICBMYXlvdXRSZWN0IHZpZXdSZWN0ID0g
ZnJhbWVWaWV3LnZpc2libGVDb250ZW50UmVjdCgpOwogICAgICAgICAgICAgTGF5b3V0UmVjdCB2
aXNpYmxlUmVjdFJlbGF0aXZlVG9Eb2N1bWVudCA9IHZpZXdSZWN0OwpAQCAtMjU3OCw3ICsyNTc0
LDcgQEAgdm9pZCBSZW5kZXJMYXllcjo6c2Nyb2xsUmVjdFRvVmlzaWJsZShTZWxlY3Rpb25SZXZl
YWxNb2RlIHJldmVhbE1vZGUsIGNvbnN0IExheW8KICAgICB9CiAgICAgCiAgICAgaWYgKHBhcmVu
dExheWVyKQotICAgICAgICBwYXJlbnRMYXllci0+c2Nyb2xsUmVjdFRvVmlzaWJsZShyZXZlYWxN
b2RlLCBuZXdSZWN0LCBhbGlnblgsIGFsaWduWSk7CisgICAgICAgIHBhcmVudExheWVyLT5zY3Jv
bGxSZWN0VG9WaXNpYmxlKG5ld1JlY3QsIGFsaWduWCwgYWxpZ25ZKTsKIH0KIAogdm9pZCBSZW5k
ZXJMYXllcjo6dXBkYXRlQ29tcG9zaXRpbmdMYXllcnNBZnRlclNjcm9sbCgpCkBAIC0yNjcxLDcg
KzI2NjcsNyBAQCBMYXlvdXRSZWN0IFJlbmRlckxheWVyOjpnZXRSZWN0VG9FeHBvc2UoY29uc3Qg
TGF5b3V0UmVjdCAmdmlzaWJsZVJlY3QsIGNvbnN0IExheQogdm9pZCBSZW5kZXJMYXllcjo6YXV0
b3Njcm9sbChjb25zdCBJbnRQb2ludCYgcG9zaXRpb24pCiB7CiAgICAgSW50UG9pbnQgY3VycmVu
dERvY3VtZW50UG9zaXRpb24gPSByZW5kZXJlcigpLnZpZXcoKS5mcmFtZVZpZXcoKS53aW5kb3dU
b0NvbnRlbnRzKHBvc2l0aW9uKTsKLSAgICBzY3JvbGxSZWN0VG9WaXNpYmxlKFNlbGVjdGlvblJl
dmVhbE1vZGU6OlJldmVhbCwgTGF5b3V0UmVjdChjdXJyZW50RG9jdW1lbnRQb3NpdGlvbiwgTGF5
b3V0U2l6ZSgxLCAxKSksIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCwgU2Ny
b2xsQWxpZ25tZW50OjphbGlnblRvRWRnZUlmTmVlZGVkKTsKKyAgICBzY3JvbGxSZWN0VG9WaXNp
YmxlKExheW91dFJlY3QoY3VycmVudERvY3VtZW50UG9zaXRpb24sIExheW91dFNpemUoMSwgMSkp
LCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6
YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CiB9CiAKIGJvb2wgUmVuZGVyTGF5ZXI6OmNhblJlc2l6ZSgp
IGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCmluZGV4IGVlOTMyOTI5
MTIxYjliOTU2YzJiN2Y1Yzg1MDFlMGU4MDUzMzljNjIuLmNlMTkwYmYxNzRhYmQ3NTFhZGE3YTk0
ZmI0ZDJhNWU3YjY4NjI0MDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJMYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5o
CkBAIC0yMDUsNyArMjA1LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhdmFpbGFibGVDb250ZW50
U2l6ZUNoYW5nZWQoQXZhaWxhYmxlU2l6ZUNoYW5nZVJlYXNvbikgb3ZlcnJpZGU7CiAKLSAgICB2
b2lkIHNjcm9sbFJlY3RUb1Zpc2libGUoU2VsZWN0aW9uUmV2ZWFsTW9kZSwgY29uc3QgTGF5b3V0
UmVjdCYsIGNvbnN0IFNjcm9sbEFsaWdubWVudCYgYWxpZ25YLCBjb25zdCBTY3JvbGxBbGlnbm1l
bnQmIGFsaWduWSk7CisgICAgdm9pZCBzY3JvbGxSZWN0VG9WaXNpYmxlKGNvbnN0IExheW91dFJl
Y3QmLCBjb25zdCBTY3JvbGxBbGlnbm1lbnQmIGFsaWduWCwgY29uc3QgU2Nyb2xsQWxpZ25tZW50
JiBhbGlnblkpOwogCiAgICAgTGF5b3V0UmVjdCBnZXRSZWN0VG9FeHBvc2UoY29uc3QgTGF5b3V0
UmVjdCYgdmlzaWJsZVJlY3QsIGNvbnN0IExheW91dFJlY3QmIHZpc2libGVSZWN0UmVsYXRpdmVU
b0RvY3VtZW50LCBjb25zdCBMYXlvdXRSZWN0JiBleHBvc2VSZWN0LCBjb25zdCBTY3JvbGxBbGln
bm1lbnQmIGFsaWduWCwgY29uc3QgU2Nyb2xsQWxpZ25tZW50JiBhbGlnblkpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2JqZWN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCmluZGV4IDFiOWNiYjg3MTFhMjdlZGQx
MDI1MTc0YzE1NTJmZjYwZjIxZTQ5MjYuLmNiZDJlNjRiNWIzZWYyYjQ0ZjEyY2ZlNThlMTcxZDA5
M2QxMzJkY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmpl
Y3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuY3BwCkBA
IC0zNTgsMTYgKzM1OCwxMyBAQCBSZW5kZXJMYXllciogUmVuZGVyT2JqZWN0OjplbmNsb3NpbmdM
YXllcigpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLWJvb2wgUmVuZGVyT2JqZWN0
OjpzY3JvbGxSZWN0VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGUgcmV2ZWFsTW9kZSwgY29u
c3QgTGF5b3V0UmVjdCYgcmVjdCwgY29uc3QgU2Nyb2xsQWxpZ25tZW50JiBhbGlnblgsIGNvbnN0
IFNjcm9sbEFsaWdubWVudCYgYWxpZ25ZKQorYm9vbCBSZW5kZXJPYmplY3Q6OnNjcm9sbFJlY3RU
b1Zpc2libGUoY29uc3QgTGF5b3V0UmVjdCYgcmVjdCwgY29uc3QgU2Nyb2xsQWxpZ25tZW50JiBh
bGlnblgsIGNvbnN0IFNjcm9sbEFsaWdubWVudCYgYWxpZ25ZKQogewotICAgIGlmIChyZXZlYWxN
b2RlID09IFNlbGVjdGlvblJldmVhbE1vZGU6OkRvTm90UmV2ZWFsKQotICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0KICAgICBSZW5kZXJMYXllciogZW5jbG9zaW5nTGF5ZXIgPSB0aGlzLT5lbmNsb3Np
bmdMYXllcigpOwogICAgIGlmICghZW5jbG9zaW5nTGF5ZXIpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKIAotICAgIGVuY2xvc2luZ0xheWVyLT5zY3JvbGxSZWN0VG9WaXNpYmxlKHJldmVhbE1vZGUs
IHJlY3QsIGFsaWduWCwgYWxpZ25ZKTsKKyAgICBlbmNsb3NpbmdMYXllci0+c2Nyb2xsUmVjdFRv
VmlzaWJsZShyZWN0LCBhbGlnblgsIGFsaWduWSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPYmplY3QuaAppbmRleCA3ZDdjMjk4YTgxYTY0ZjE3
MjA2M2VmZDc4MjdkMGE0ZWQzYTRjZTU2Li44NDc0Y2JiM2M1NzY5NTgwZmY5M2I0N2QxOGI0N2M5
ZTAzMDVmODJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT2Jq
ZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck9iamVjdC5oCkBAIC0x
NTUsNyArMTU1LDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIFJlbmRlckxheWVyKiBl
bmNsb3NpbmdMYXllcigpIGNvbnN0OwogCiAgICAgLy8gU2Nyb2xsaW5nIGlzIGEgUmVuZGVyQm94
IGNvbmNlcHQsIGhvd2V2ZXIgc29tZSBjb2RlIGp1c3QgY2FyZXMgYWJvdXQgcmVjdXJzaXZlbHkg
c2Nyb2xsaW5nIG91ciBlbmNsb3NpbmcgU2Nyb2xsYWJsZUFyZWEocykuCi0gICAgV0VCQ09SRV9F
WFBPUlQgYm9vbCBzY3JvbGxSZWN0VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGUsIGNvbnN0
IExheW91dFJlY3QmLCBjb25zdCBTY3JvbGxBbGlnbm1lbnQmIGFsaWduWCA9IFNjcm9sbEFsaWdu
bWVudDo6YWxpZ25DZW50ZXJJZk5lZWRlZCwgY29uc3QgU2Nyb2xsQWxpZ25tZW50JiBhbGlnblkg
PSBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVkZWQpOworICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgc2Nyb2xsUmVjdFRvVmlzaWJsZShjb25zdCBMYXlvdXRSZWN0JiwgY29uc3QgU2Ny
b2xsQWxpZ25tZW50JiBhbGlnblggPSBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVk
ZWQsIGNvbnN0IFNjcm9sbEFsaWdubWVudCYgYWxpZ25ZID0gU2Nyb2xsQWxpZ25tZW50OjphbGln
bkNlbnRlcklmTmVlZGVkKTsKIAogICAgIC8vIENvbnZlbmllbmNlIGZ1bmN0aW9uIGZvciBnZXR0
aW5nIHRvIHRoZSBuZWFyZXN0IGVuY2xvc2luZyBib3ggb2YgYSBSZW5kZXJPYmplY3QuCiAgICAg
UmVuZGVyQm94JiBlbmNsb3NpbmdCb3goKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViRnJhbWUubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YkZyYW1lLm1tCmluZGV4IDkwYTFiY2NlMDgyMTBkMDM0YWQ5MjVjM2M0YjNhNDMwMTc3MzE0MGYu
LjljYmYzMDkxMzMzOWMyNjY0YmI3NmE2YjU0MmI5ZWJlNTI2MTMwNGYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRnJhbWUubW0KKysrIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViVmlldy9XZWJGcmFtZS5tbQpAQCAtNzE3LDEyICs3MTcsMTIgQEAgc3RhdGljIGlubGlu
ZSBXZWJEYXRhU291cmNlICpkYXRhU291cmNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAg
ICAgIAogICAgIGlmIChzdGFydE5vZGUgJiYgc3RhcnROb2RlLT5yZW5kZXJlcigpKSB7CiAjaWYg
IVBMQVRGT1JNKElPUykKLSAgICAgICAgc3RhcnROb2RlLT5yZW5kZXJlcigpLT5zY3JvbGxSZWN0
VG9WaXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCwgZW5jbG9zaW5nSW50UmVjdChy
YW5nZVJlY3QpLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFs
aWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CisgICAgICAgIHN0YXJ0Tm9kZS0+cmVuZGVy
ZXIoKS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShlbmNsb3NpbmdJbnRSZWN0KHJhbmdlUmVjdCksIFNj
cm9sbEFsaWdubWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCwgU2Nyb2xsQWxpZ25tZW50OjphbGln
blRvRWRnZUlmTmVlZGVkKTsKICNlbHNlCiAgICAgICAgIFJlbmRlckxheWVyKiBsYXllciA9IHN0
YXJ0Tm9kZS0+cmVuZGVyZXIoKS0+ZW5jbG9zaW5nTGF5ZXIoKTsKICAgICAgICAgaWYgKGxheWVy
KSB7CiAgICAgICAgICAgICBsYXllci0+c2V0QWRqdXN0Rm9ySU9TQ2FyZXRXaGVuU2Nyb2xsaW5n
KHRydWUpOwotICAgICAgICAgICAgc3RhcnROb2RlLT5yZW5kZXJlcigpLT5zY3JvbGxSZWN0VG9W
aXNpYmxlKFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCwgZW5jbG9zaW5nSW50UmVjdChyYW5n
ZVJlY3QpLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFsaWdu
bWVudDo6YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CisgICAgICAgICAgICBzdGFydE5vZGUtPnJlbmRl
cmVyKCktPnNjcm9sbFJlY3RUb1Zpc2libGUoZW5jbG9zaW5nSW50UmVjdChyYW5nZVJlY3QpLCBT
Y3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6YWxp
Z25Ub0VkZ2VJZk5lZWRlZCk7CiAgICAgICAgICAgICBsYXllci0+c2V0QWRqdXN0Rm9ySU9TQ2Fy
ZXRXaGVuU2Nyb2xsaW5nKGZhbHNlKTsKICAgICAgICAgICAgIF9wcml2YXRlLT5jb3JlRnJhbWUt
PnNlbGVjdGlvbigpLnNldENhcmV0UmVjdE5lZWRzVXBkYXRlKCk7CiAgICAgICAgICAgICBfcHJp
dmF0ZS0+Y29yZUZyYW1lLT5zZWxlY3Rpb24oKS51cGRhdGVBcHBlYXJhbmNlKCk7CkBAIC03NDEs
NyArNzQxLDcgQEAgc3RhdGljIGlubGluZSBXZWJEYXRhU291cmNlICpkYXRhU291cmNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgICAgIFJlbmRlckxheWVyKiBsYXllciA9IHN0YXJ0Tm9k
ZS0+cmVuZGVyZXIoKS0+ZW5jbG9zaW5nTGF5ZXIoKTsKICAgICAgICAgaWYgKGxheWVyKSB7CiAg
ICAgICAgICAgICBsYXllci0+c2V0QWRqdXN0Rm9ySU9TQ2FyZXRXaGVuU2Nyb2xsaW5nKHRydWUp
OwotICAgICAgICAgICAgc3RhcnROb2RlLT5yZW5kZXJlcigpLT5zY3JvbGxSZWN0VG9WaXNpYmxl
KFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCwgZW5jbG9zaW5nSW50UmVjdChyYW5nZVJlY3Qp
LCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6
YWxpZ25Ub0VkZ2VJZk5lZWRlZCk7CisgICAgICAgICAgICBzdGFydE5vZGUtPnJlbmRlcmVyKCkt
PnNjcm9sbFJlY3RUb1Zpc2libGUoZW5jbG9zaW5nSW50UmVjdChyYW5nZVJlY3QpLCBTY3JvbGxB
bGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25Ub0Vk
Z2VJZk5lZWRlZCk7CiAgICAgICAgICAgICBsYXllci0+c2V0QWRqdXN0Rm9ySU9TQ2FyZXRXaGVu
U2Nyb2xsaW5nKGZhbHNlKTsKIAogICAgICAgICAgICAgRnJhbWUgKmNvcmVGcmFtZSA9IGNvcmUo
c2VsZik7CkBAIC0xMzc1LDcgKzEzNzUsNyBAQCBzdGF0aWMgV2ViRnJhbWVMb2FkVHlwZSB0b1dl
YkZyYW1lTG9hZFR5cGUoRnJhbWVMb2FkVHlwZSBmcmFtZUxvYWRUeXBlKQogewogICAgIFdlYkNv
cmU6OkZyYW1lICpmcmFtZSA9IGNvcmUoc2VsZik7CiAgICAgUmV2ZWFsRXh0ZW50T3B0aW9uIHJl
dmVhbEV4dGVudE9wdGlvbiA9IHJldmVhbEV4dGVudCA/IFJldmVhbEV4dGVudCA6IERvTm90UmV2
ZWFsRXh0ZW50OwotICAgIGZyYW1lLT5zZWxlY3Rpb24oKS5yZXZlYWxTZWxlY3Rpb24oU2VsZWN0
aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsLCBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVk
ZWQsIHJldmVhbEV4dGVudE9wdGlvbik7CisgICAgZnJhbWUtPnNlbGVjdGlvbigpLnJldmVhbFNl
bGVjdGlvbihTY3JvbGxBbGlnbm1lbnQ6OmFsaWduVG9FZGdlSWZOZWVkZWQsIHJldmVhbEV4dGVu
dE9wdGlvbik7CiB9CiAKIC0gKHZvaWQpcmVzZXRTZWxlY3Rpb24KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IGZmNDFiZGRhNGI4ODI5N2E0OTlhODNkZmZlMmM2
ODYxOTdhMDU0NWUuLjdlZjFhMzBhOWEwYjVhMzM3NDQxZGRlYWE3NmRiN2JlN2ZiYjc1YWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIv
U291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQpAQCAtMzE0Niw3ICszMTQ2
LDcgQEAgV0VCQ09SRV9DT01NQU5EKHRvZ2dsZVVuZGVybGluZSkKICAgICBDT01NQU5EX1BST0xP
R1VFCiAKICAgICBpZiAoRnJhbWUqIGNvcmVGcmFtZSA9IGNvcmUoW3NlbGYgX2ZyYW1lXSkpCi0g
ICAgICAgIGNvcmVGcmFtZS0+c2VsZWN0aW9uKCkucmV2ZWFsU2VsZWN0aW9uKFNlbGVjdGlvblJl
dmVhbE1vZGU6OlJldmVhbCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnbkNlbnRlckFsd2F5cyk7Cisg
ICAgICAgIGNvcmVGcmFtZS0+c2VsZWN0aW9uKCkucmV2ZWFsU2VsZWN0aW9uKFNjcm9sbEFsaWdu
bWVudDo6YWxpZ25DZW50ZXJBbHdheXMpOwogfQogCiAjaWYgIVBMQVRGT1JNKElPUykKQEAgLTUz
NDUsNyArNTM0NSw3IEBAIHN0YXRpYyBQYXNzUmVmUHRyPEtleWJvYXJkRXZlbnQ+IGN1cnJlbnRL
ZXlib2FyZEV2ZW50KEZyYW1lKiBjb3JlRnJhbWUpCiAgICAgQ09NTUFORF9QUk9MT0dVRQogCiAg
ICAgaWYgKEZyYW1lKiBjb3JlRnJhbWUgPSBjb3JlKFtzZWxmIF9mcmFtZV0pKQotICAgICAgICBj
b3JlRnJhbWUtPnNlbGVjdGlvbigpLnJldmVhbFNlbGVjdGlvbihTZWxlY3Rpb25SZXZlYWxNb2Rl
OjpSZXZlYWwsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50ZXJBbHdheXMpOworICAgICAgICBj
b3JlRnJhbWUtPnNlbGVjdGlvbigpLnJldmVhbFNlbGVjdGlvbihTY3JvbGxBbGlnbm1lbnQ6OmFs
aWduQ2VudGVyQWx3YXlzKTsKIH0KIAogI2lmICFQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggZmZmZDNkMGY1ODVhMGI2
MGUzOGU3NzZlYWZkZTM4YTA0MDgwMjQwZC4uNDViODE3MGE3NDEzOTUyZmVmODRmZWU5NTYyOWM4
OTM1Y2ZlMGJiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcApAQCAtMjM5Niw3ICsyMzk2LDcgQEAgYm9vbCBXZWJQYWdlOjpzY3JvbGxCeSh1aW50
MzJfdCBzY3JvbGxEaXJlY3Rpb24sIHVpbnQzMl90IHNjcm9sbEdyYW51bGFyaXR5KQogdm9pZCBX
ZWJQYWdlOjpjZW50ZXJTZWxlY3Rpb25JblZpc2libGVBcmVhKCkKIHsKICAgICBGcmFtZSYgZnJh
bWUgPSBtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmZvY3VzZWRPck1haW5GcmFtZSgpOwotICAg
IGZyYW1lLnNlbGVjdGlvbigpLnJldmVhbFNlbGVjdGlvbihTZWxlY3Rpb25SZXZlYWxNb2RlOjpS
ZXZlYWwsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50ZXJBbHdheXMpOworICAgIGZyYW1lLnNl
bGVjdGlvbigpLnJldmVhbFNlbGVjdGlvbihTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVyQWx3
YXlzKTsKICAgICBtX2ZpbmRDb250cm9sbGVyLnNob3dGaW5kSW5kaWNhdG9ySW5TZWxlY3Rpb24o
KTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IDg0MDc3Y2VmMDU1YTE1YTNiMjFmMTUyNTk0YmZiMDIyMDFlOGE5Njcu
LmNjMjEzYzYyZWRhNWUxYjJjMmE2ZDQ0N2IzOTM3MDcwMWU5NDI1ZDYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxOCBAQAorMjAxNi0wNi0yMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIwMjI0My4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODk3MgorCisgICAgICAg
IEJyb2tlIFdpbmRvd3MgYnVpbGQgYW5kIGlPUyB0ZXN0cyAoUmVxdWVzdGVkIGJ5IGFwIG9uCisg
ICAgICAgICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAg
ICAiRm9jdXMgZXZlbnQgZGlzcGF0Y2hlZCBpbiBpZnJhbWUgY2F1c2VzIHBhcmVudCBkb2N1bWVu
dCB0bworICAgICAgICBzY3JvbGwgaW5jb3JyZWN0bHkiCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTg2MjkKKyAgICAgICAgaHR0cDovL3RyYWMud2Vi
a2l0Lm9yZy9jaGFuZ2VzZXQvMjAyMjQzCisKIDIwMTYtMDYtMjAgIFphbGFuIEJ1anRhcyAgPHph
bGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBTZXQgdGhlIGVuZCBwb3NpdGlvbiBvbiB0aGUgcGxh
Y2Vob2xkZXIgQmlkaVJ1biBwcm9wZXJseS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Zm9ybXMvaW9zL2ZvY3VzLWlucHV0LWluLWlmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1pbnB1dC1pbi1pZnJhbWUtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNWEyZWJkMmZmYWI3MTM5OTQyZTJjZDc2ZWU3YjYz
YjIwYzc2ZmNlLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL2ZvY3VzLWlucHV0LWluLWlmcmFtZS1leHBlY3Rl
ZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw3ICswLDAgQEAKLVRlc3RzIHpvb21pbmcgaW50byBh
IHRleHQgaW5wdXQgb24gdGFwLgotCi1DbGljayB0byBmb2N1cyBpbnB1dAotCi10YXAgbG9jYXRp
b24JeyB4OiAyMC4wMDAsIHk6IDYyLjAwMCB9Ci1zY2FsZQkxLjQ1NQotdmlzaWJsZVJlY3QJeyBs
ZWZ0OiAwLjAwMCwgdG9wOiAxMjAxLjk3Niwgd2lkdGg6IDIxOS45NzksIGhlaWdodDogMzI5Ljk2
OCB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1pbnB1dC1p
bi1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL2ZvY3VzLWlucHV0LWlu
LWlmcmFtZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMzcxMmRlZjBhZTg1
ZmY1MzFiMjBiN2Y0MTZkNWI4NTNmMzk4YTU0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL2ZvY3VzLWlucHV0
LWluLWlmcmFtZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDggKzAsMCBAQAotPCFET0NUWVBF
IGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgdXNlRmxleGlibGVWaWV3cG9ydD10cnVl
IF0gLS0+Ci0KLTxodG1sPgotPGhlYWQ+Ci0gICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9ImluaXRpYWwtc2NhbGU9MC41Ij4KLSAgICA8c3R5bGU+Ci0gICAgICAgIGJ1dHRvbiB7Ci0g
ICAgICAgICAgICBkaXNwbGF5OiBibG9jazsKLSAgICAgICAgfQotICAgICAgICBpZnJhbWUgewot
ICAgICAgICAgICAgbWFyZ2luLXRvcDogODAwcHg7Ci0gICAgICAgIH0KLSAgICA8L3N0eWxlPgot
ICAgIAotICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvem9vbWluZy10ZXN0LXV0aWxzLmpzIj48
L3NjcmlwdD4KLSAgICA8c2NyaXB0PgotICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgdGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7Ci0gICAgfQotCi0gICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgIGlu
dGVybmFscy5zZXR0aW5ncy5zZXRGcmFtZUZsYXR0ZW5pbmdFbmFibGVkKHRydWUpOwotICAgIAot
ICAgIGZ1bmN0aW9uIGJ1dHRvbkNsaWNrZWQoKQotICAgIHsKLSAgICAgICAgZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoJ2ZyYW1lJykuY29udGVudERvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1
dCcpLmZvY3VzKCk7Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gZG9UZXN0KCkKLSAgICB7Ci0gICAg
ICAgIHRlc3Rab29tQWZ0ZXJUYXAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RhcmdldCcpLCAx
MCwgMTApOwotICAgIH0KLQotICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZG9U
ZXN0LCBmYWxzZSk7Ci0gICAgPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLQotPHA+VGVzdHMg
em9vbWluZyBpbnRvIGEgdGV4dCBpbnB1dCBvbiB0YXAuPC9wPgotPGJ1dHRvbiBpZD0idGFyZ2V0
IiBvbmNsaWNrPSJidXR0b25DbGlja2VkKCkiPkNsaWNrIHRvIGZvY3VzIGlucHV0PC9idXR0b24+
Ci0KLTxpZnJhbWUgaWQ9ImZyYW1lIiBzcmNkb2M9IjxzdHlsZT5pbnB1dCB7IG1hcmdpbjogNDAw
cHggMjBweDsgfTwvc3R5bGU+Ci08aW5wdXQgaWQ9J2lucHV0JyB0eXBlPSd0ZXh0Jz4KLSI+PC9p
ZnJhbWU+Ci0KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Zm9ybXMvaW9zL3Byb2dyYW1tYXRpYy1mb2N1cy1pbnB1dC1pbi1pZnJhbWUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3MvcHJvZ3JhbW1hdGljLWZvY3VzLWlucHV0LWlu
LWlmcmFtZS1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRlZWY0
NjU4NjFlZjA3MDI0ODZmN2RkZTUwYTBkZTI5OGYxOGMyMDMuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3MvcHJv
Z3JhbW1hdGljLWZvY3VzLWlucHV0LWluLWlmcmFtZS1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVs
bApAQCAtMSw0ICswLDAgQEAKLVRlc3RzIHRoYXQgYSBwcm9ncmFtbWF0aWMgZm9jdXMgc2hvdWxk
IG5vdCBzY3JvbGwgaW50byB2aWV3Ci0KLVBBU1M6IHBhZ2UgZGlkIG5vdCBzY3JvbGwuCi0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL3Byb2dyYW1tYXRpYy1mb2N1cy1p
bnB1dC1pbi1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL3Byb2dyYW1t
YXRpYy1mb2N1cy1pbnB1dC1pbi1pZnJhbWUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggNmVkYjVmYTQ1MzkyNGViMGQzMzg1MDUxY2ZkYmFhYWQ0ODRjMDEzYy4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL2lvcy9wcm9ncmFtbWF0aWMtZm9jdXMtaW5wdXQtaW4taWZyYW1lLmh0bWwKKysrIC9kZXYv
bnVsbApAQCAtMSw1NyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1y
dW5uZXIgWyB1c2VGbGV4aWJsZVZpZXdwb3J0PXRydWUgXSAtLT4KLQotPGh0bWw+Ci08aGVhZD4K
LSAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0iaW5pdGlhbC1zY2FsZT0wLjUiPgot
ICAgIDxzdHlsZT4KLSAgICAgICAgYnV0dG9uIHsKLSAgICAgICAgICAgIGRpc3BsYXk6IGJsb2Nr
OwotICAgICAgICB9Ci0gICAgICAgIGlmcmFtZSB7Ci0gICAgICAgICAgICBtYXJnaW4tdG9wOiA4
MDBweDsKLSAgICAgICAgfQotICAgIDwvc3R5bGU+Ci0gICAgCi0gICAgPHNjcmlwdD4KLSAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
Ci0gICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgIH0KLSAgICAKLSAgICBp
ZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldEZyYW1l
RmxhdHRlbmluZ0VuYWJsZWQodHJ1ZSk7Ci0gICAgCi0gICAgZnVuY3Rpb24gcGFnZURpZFNjcm9s
bCgpCi0gICAgewotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0JykudGV4
dENvbnRlbnQgPSAnRkFJTDogcGFnZSBzY3JvbGxlZCB0byAnICsgZG9jdW1lbnQuc2Nyb2xsaW5n
RWxlbWVudC5zY3JvbGxUb3A7Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gZG9UZXN0KCkKLSAgICB7
Ci0gICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZyYW1lJykuY29udGVudERvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdpbnB1dCcpLmZvY3VzKCk7Ci0gICAgICAgIH0sIDApOwotCi0gICAgICAgIC8vIFdhaXQg
Zm9yIGFueSBzY3JvbGwgdG8gaGFwcGVuLgotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5j
dGlvbigpIHsKLSAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAg
ICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKLSAgICAgICAgfSwgMTAwKTsKLSAgICB9Ci0K
LSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGRvVGVzdCwgZmFsc2UpOwotICAg
IDwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHkgb25zY3JvbGw9InBhZ2VEaWRTY3JvbGwoKSI+Ci0K
LTxwPlRlc3RzIHRoYXQgYSBwcm9ncmFtbWF0aWMgZm9jdXMgc2hvdWxkIG5vdCBzY3JvbGwgaW50
byB2aWV3PC9wPgotPGRpdiBpZD0icmVzdWx0Ij4KLSAgICBQQVNTOiBwYWdlIGRpZCBub3Qgc2Ny
b2xsLgotPC9kaXY+Ci0KLTxpZnJhbWUgaWQ9ImZyYW1lIiBzcmNkb2M9IjxzdHlsZT5pbnB1dCB7
IG1hcmdpbjogNDAwcHggMjBweDsgfTwvc3R5bGU+Ci08aW5wdXQgaWQ9J2lucHV0JyB0eXBlPSd0
ZXh0Jz4KLSI+PC9pZnJhbWU+Ci0KLTwvYm9keT4KLTwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>