<?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>115444</bug_id>
          
          <creation_ts>2013-04-30 13:15:04 -0700</creation_ts>
          <short_desc>REGRESSION(r149349):  The Thumb version of compileSoftModulo make invalid use of registers (Requested by benjaminp on #webkit).</short_desc>
          <delta_ts>2015-03-16 03:29:05 -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>528+ (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>115138</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>benjamin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>883217</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-30 13:15:04 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/149349 broke the build:
 The Thumb version of compileSoftModulo make invalid use of registers (Requested by benjaminp on #webkit).

This is an automatic bug report generated by the sheriff-bot. 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 case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>883218</commentid>
    <comment_count>1</comment_count>
      <attachid>200144</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-30 13:15:12 -0700</bug_when>
    <thetext>Created attachment 200144
ROLLOUT of r149349

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>883220</commentid>
    <comment_count>2</comment_count>
      <attachid>200144</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-30 13:17:47 -0700</bug_when>
    <thetext>Comment on attachment 200144
ROLLOUT of r149349

Clearing flags on attachment: 200144

Committed r149395: &lt;http://trac.webkit.org/changeset/149395&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>883221</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-30 13:17:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1077374</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-03-16 03:29:05 -0700</bug_when>
    <thetext>*** Bug 115443 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>200144</attachid>
            <date>2013-04-30 13:15:12 -0700</date>
            <delta_ts>2013-04-30 13:17:47 -0700</delta_ts>
            <desc>ROLLOUT of r149349</desc>
            <filename>bug-115444-20130430131427.patch</filename>
            <type>text/plain</type>
            <size>28754</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5Mzk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
ODQ0YjEzMGJlZjU4OTBkM2RjMjQ3NjdkOGU2ZDBkODRiYzAzZDIzLi5kMmQ2YzkwOGU3N2UyOWNk
MzRmMTE0MjA4MGY1NTVhOWE2ODhkODM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOCBAQAorMjAxMy0wNC0zMCAgQ29tbWl0IFF1ZXVlICA8cm5pd2FAd2Via2l0Lm9yZz4K
KworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTQ5MzQ5IGFuZCByMTQ5MzU0Lgor
ICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNDkzNDkKKyAgICAgICAg
aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTQ5MzU0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTU0NDQKKworICAgICAgICAgVGhlIFRo
dW1iIHZlcnNpb24gb2YgY29tcGlsZVNvZnRNb2R1bG8gbWFrZSBpbnZhbGlkIHVzZSBvZgorICAg
ICAgICByZWdpc3RlcnMgKFJlcXVlc3RlZCBieSBiZW5qYW1pbnAgb24gI3dlYmtpdCkuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgor
ICAgICAgICAqIEphdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogYXNzZW1ibGVyL0FSTXY3QXNzZW1ibGVyLmg6CisgICAgICAgIChBUk12N0Fzc2VtYmxl
cik6CisgICAgICAgICogYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaDoKKyAgICAg
ICAgKEpTQzo6aXNBUk12N3MpOgorICAgICAgICAoSlNDKToKKyAgICAgICAgKiBhc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHA6IFJlbW92ZWQuCisgICAgICAgICogYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyQVJNdjcuaDoKKyAgICAgICAgKE1hY3JvQXNzZW1ibGVyQVJNdjcpOgorICAg
ICAgICAqIGRmZy9ERkdGaXh1cFBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpGaXh1cFBo
YXNlOjpmaXh1cE5vZGUpOgorICAgICAgICAqIGRmZy9ERkdPcGVyYXRpb25zLmNwcDoKKyAgICAg
ICAgKiBkZmcvREZHT3BlcmF0aW9ucy5oOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJ
VC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVTb2Z0TW9k
dWxvKToKKyAgICAgICAgKERGRyk6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6
OmNvbXBpbGVJbnRlZ2VyQXJpdGhEaXZGb3JBUk12N3MpOgorICAgICAgICAqIGRmZy9ERkdTcGVj
dWxhdGl2ZUpJVC5oOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjYWxsT3Bl
cmF0aW9uKToKKyAgICAgICAgKFNwZWN1bGF0aXZlSklUKToKKyAgICAgICAgKiBkZmcvREZHU3Bl
Y3VsYXRpdmVKSVQzMl82NC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6
OmNvbXBpbGUpOgorCiAyMDEzLTA0LTMwICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgQW5pbWF0aW9ucyBmYWlsIHRvIHN0YXJ0IG9uIGh0dHA6Ly93d3cuZ29vZ2xl
LmNvbS9pbnNpZGVzZWFyY2gvaG93c2VhcmNod29ya3MvdGhlc3RvcnkvCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDkxZGMzNmE4
MzFhNDM3ZWIwZjAxNzZmNjMxZGRmNWFlODliOGJhYjkuLjk3ODkyMDMxY2JmOWQxZjViNjRiMWU4
NWYzZTcyZGE1ODJhZGYyODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDQtMzAgIENvbW1p
dCBRdWV1ZSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGlu
ZyBvdXQgcjE0OTM0OSBhbmQgcjE0OTM1NC4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9y
Zy9jaGFuZ2VzZXQvMTQ5MzQ5CisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdl
c2V0LzE0OTM1NAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTE1NDQ0CisKKyAgICAgICAgIFRoZSBUaHVtYiB2ZXJzaW9uIG9mIGNvbXBpbGVTb2Z0TW9k
dWxvIG1ha2UgaW52YWxpZCB1c2Ugb2YKKyAgICAgICAgcmVnaXN0ZXJzIChSZXF1ZXN0ZWQgYnkg
YmVuamFtaW5wIG9uICN3ZWJraXQpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisKIDIw
MTMtMDQtMzAgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtNYWNd
IE1ha2UgYWRvcHROUyBmYXN0ZXIgb24gcGxhdGZvcm1zIHdpdGhvdXQgZ2FyYmFnZSBjb2xsZWN0
aW9uIGJ5IHNraXBwaW5nIGEgQ0ZSZXRhaW4vTlNSZWxlYXNlIHBhaXIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DTWFrZUxpc3RzLnR4dAppbmRleCBlNmE1MGRmNGM3MDU2ZjYwYzRmOWE1ZTZhZWE5ODg0Mjdk
YjIxYWIxLi45YTBjMWVlNTdjYzAzNzZmMmMzNDM2ZjJmZTg2ZmNmYjc3ZjllOTg3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC01MTcsNyArNTE3LDYgQEAgaWYgKFdURl9D
UFVfQVJNKQogICAgICAgICBhc3NlbWJsZXIvQVJNQXNzZW1ibGVyLmNwcAogICAgICAgICBhc3Nl
bWJsZXIvQVJNdjdBc3NlbWJsZXIuY3BwCiAgICAgICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
ckFSTS5jcHAKLSAgICAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwCiAgICAg
KQogZWxzZWlmIChXVEZfQ1BVX01JUFMpCiBlbHNlaWYgKFdURl9DUFVfWDg2KQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBmZWI0ZDBiMzdiYTUxYTQ2ZmZk
ODg5MjBiZjA1N2IxZjVlMzgxMzMyLi4xMDIxZjA5MjIxMWM4Y2FkOThhMGE5NmM0ZWFiMjI2YWNi
YTcwYTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlz
dC5hbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAt
NzMsNyArNzMsNiBAQCBqYXZhc2NyaXB0Y29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggXAogCVNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk0uY3BwIFwKIAlTb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNLmggXAotCVNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAgXAogCVNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5oIFwKIAlTb3VyY2UvSmF2YVNj
cmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQ29kZVJlZi5oIFwKIAlTb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5oIFwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggMjVlZmJjNDU5ZDgyOTk2Njc1MDY3OTMxNDhkNzFhZTkyMjJl
MmU0Yy4uNDdhYTRlNmQ4MGY5MWIwYjU4NjhmOWVhM2M4ODZmYjA1NGU1MTkyZSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU3NCw3ICs1NzQsNiBAQAogCQk4NkM1NjhFMDExQTIx
M0VFMDAwN0Y3RjAgLyogTWFjcm9Bc3NlbWJsZXJBUk0uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODZDNTY4REQxMUEyMTNFRTAwMDdGN0YwIC8qIE1h
Y3JvQXNzZW1ibGVyQVJNLmNwcCAqLzsgfTsKIAkJODZDNTY4RTExMUEyMTNFRTAwMDdGN0YwIC8q
IE1hY3JvQXNzZW1ibGVyTUlQUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODZDNTY4REUxMUEyMTNFRTAwMDdGN0YwIC8qIE1hY3JvQXNzZW1ibGVyTUlQ
Uy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTg2
QzU2OEUyMTFBMjEzRUUwMDA3RjdGMCAvKiBNSVBTQXNzZW1ibGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NkM1NjhERjExQTIxM0VFMDAwN0Y3RjAg
LyogTUlQU0Fzc2VtYmxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07Ci0JCTg2QzU2OEU0RkI5Mjg2N0ExNkZEMTAwMiAvKiBNYWNyb0Fzc2VtYmxlckFS
TXY3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg2
QzU2OEUzRkI5Mjg2N0ExNkZEMTAwMiAvKiBNYWNyb0Fzc2VtYmxlckFSTXY3LmNwcCAqLzsgfTsK
IAkJODZDQTAzMkUxMDM4RTg0NDAwMjhBNjA5IC8qIEV4ZWN1dGFibGUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODZDQTAzMkQxMDM4RTg0NDAwMjhB
NjA5IC8qIEV4ZWN1dGFibGUuY3BwICovOyB9OwogCQk4NkNBRkVFMzEwMzVEREU2MDAyOEE2MDkg
LyogRXhlY3V0YWJsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODZDQUZFRTIxMDM1RERFNjAwMjhBNjA5IC8qIEV4ZWN1dGFibGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4NkNDODVBMTBFRTc5QTQ3
MDAyODg2ODIgLyogSklUSW5saW5lcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODZDQzg1QTAwRUU3OUE0NzAwMjg4NjgyIC8qIEpJVElubGluZXMuaCAq
LzsgfTsKQEAgLTE0NzgsNyArMTQ3Nyw2IEBACiAJCTg2QzU2OEREMTFBMjEzRUUwMDA3RjdGMCAv
KiBNYWNyb0Fzc2VtYmxlckFSTS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBNYWNyb0Fzc2VtYmxlckFSTS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTg2QzU2OERFMTFBMjEzRUUwMDA3RjdGMCAvKiBNYWNyb0Fzc2VtYmxlck1JUFMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWFjcm9Bc3NlbWJsZXJNSVBTLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg2QzU2OERGMTFBMjEzRUUwMDA3RjdGMCAvKiBNSVBTQXNz
ZW1ibGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1JUFNBc3NlbWJsZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJODZDNTY4RTNGQjkyODY3QTE2RkQxMDAy
IC8qIE1hY3JvQXNzZW1ibGVyQVJNdjcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTg2Q0EwMzJEMTAzOEU4NDQwMDI4QTYwOSAvKiBFeGVjdXRhYmxlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV4ZWN1dGFibGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk4NkNBRkVFMjEwMzVEREU2MDAyOEE2MDkgLyogRXhlY3V0YWJs
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGVjdXRhYmxlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg2Q0M4NUEwMEVFNzlBNDcwMDI4ODY4MiAvKiBKSVRJ
bmxpbmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpJVElubGluZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI4NDcsNyArMjg0NSw2IEBACiAJCQkJODZD
MzZFRTkwRUUxMjg5RDAwQjNERjU5IC8qIE1hY3JvQXNzZW1ibGVyLmggKi8sCiAJCQkJODZDNTY4
REQxMUEyMTNFRTAwMDdGN0YwIC8qIE1hY3JvQXNzZW1ibGVyQVJNLmNwcCAqLywKIAkJCQk4NkQz
QjJDMjEwMTU2QkRFMDAyODY1RTcgLyogTWFjcm9Bc3NlbWJsZXJBUk0uaCAqLywKLQkJCQk4NkM1
NjhFM0ZCOTI4NjdBMTZGRDEwMDIgLyogTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAgKi8sCiAJCQkJ
ODZBREQxNDQwRkRERUE5ODAwMDZFRUMyIC8qIE1hY3JvQXNzZW1ibGVyQVJNdjcuaCAqLywKIAkJ
CQk4NjNCMjNERjBGQzYwRTYyMDA3MDNBQTQgLyogTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmggKi8s
CiAJCQkJODZDNTY4REUxMUEyMTNFRTAwMDdGN0YwIC8qIE1hY3JvQXNzZW1ibGVyTUlQUy5oICov
LApAQCAtMzk4MCw3ICszOTc3LDYgQEAKIAkJCQkxNEI3MjNCMjEyRDdEQTQ2MDAzQkQ1RUQgLyog
TWFjaGluZVN0YWNrTWFya2VyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGRUIzRUNGMTYyMzdG
NkMwMEFCNjdBRCAvKiBNYWNyb0Fzc2VtYmxlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk4NkM1
NjhFMDExQTIxM0VFMDAwN0Y3RjAgLyogTWFjcm9Bc3NlbWJsZXJBUk0uY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJODZDNTY4RTRGQjkyODY3QTE2RkQxMDAyIC8qIE1hY3JvQXNzZW1ibGVyQVJNdjcu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJODZBRTY0QTgxMzVFNUUxQzAwOTYzMDEyIC8qIE1hY3Jv
QXNzZW1ibGVyU0g0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUMyQjkxNkM1MTREQTA0MEMwMENC
QUM4NiAvKiBNYXJrZWRBbGxvY2F0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMTQyRDZGMDgx
MzUzOUEyODAwQjAyRTg2IC8qIE1hcmtlZEJsb2NrLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BUk12N0Fzc2VtYmxlci5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BUk12N0Fzc2VtYmxlci5oCmluZGV4IDA3
OWI1MDk1NTNhYzZmMWVlZmMwNzUxZTc4MjYwNTM0NGM0ODM2YTcuLjI4OTg5NTQ5ZDQ1NGRkMzM0
YmRhMTU0ZjIyZDFmOTAyZWRjMThlMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvQVJNdjdBc3NlbWJsZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL0FSTXY3QXNzZW1ibGVyLmgKQEAgLTY2MSw4ICs2NjEsMTAgQEAgcHJpdmF0ZToK
ICAgICAgICAgT1BfUk9SX3JlZ19UMiAgID0gMHhGQTYwLAogICAgICAgICBPUF9DTFogICAgICAg
ICAgPSAweEZBQjAsCiAgICAgICAgIE9QX1NNVUxMX1QxICAgICA9IDB4RkI4MCwKKyNpZiBDUFUo
QVBQTEVfQVJNVjdTKQogICAgICAgICBPUF9TRElWX1QxICAgICAgPSAweEZCOTAsCiAgICAgICAg
IE9QX1VESVZfVDEgICAgICA9IDB4RkJCMCwKKyNlbmRpZgogICAgIH0gT3Bjb2RlSUQxOwogCiAg
ICAgdHlwZWRlZiBlbnVtIHsKQEAgLTE0MDUsNiArMTQwNyw3IEBAIHB1YmxpYzoKICAgICAgICAg
bV9mb3JtYXR0ZXIudHdvV29yZE9wMTJSZWc0Rm91ckZvdXJzKE9QX1JPUl9yZWdfVDIsIHJuLCBG
b3VyRm91cnMoMHhmLCByZCwgMCwgcm0pKTsKICAgICB9CiAKKyNpZiBDUFUoQVBQTEVfQVJNVjdT
KQogICAgIEFMV0FZU19JTkxJTkUgdm9pZCBzZGl2KFJlZ2lzdGVySUQgcmQsIFJlZ2lzdGVySUQg
cm4sIFJlZ2lzdGVySUQgcm0pCiAgICAgewogICAgICAgICBBU1NFUlQoIUJhZFJlZyhyZCkpOwpA
QCAtMTQxMiw2ICsxNDE1LDcgQEAgcHVibGljOgogICAgICAgICBBU1NFUlQoIUJhZFJlZyhybSkp
OwogICAgICAgICBtX2Zvcm1hdHRlci50d29Xb3JkT3AxMlJlZzRGb3VyRm91cnMoT1BfU0RJVl9U
MSwgcm4sIEZvdXJGb3VycygweGYsIHJkLCAweGYsIHJtKSk7CiAgICAgfQorI2VuZGlmCiAKICAg
ICBBTFdBWVNfSU5MSU5FIHZvaWQgc211bGwoUmVnaXN0ZXJJRCByZExvLCBSZWdpc3RlcklEIHJk
SGksIFJlZ2lzdGVySUQgcm4sIFJlZ2lzdGVySUQgcm0pCiAgICAgewpAQCAtMTc0OSw2ICsxNzUz
LDcgQEAgcHVibGljOgogICAgICAgICBtX2Zvcm1hdHRlci50d29Xb3JkT3AxMlJlZzQwSW1tM1Jl
ZzRJbW0yMEltbTUoT1BfVUJGWF9UMSwgcmQsIHJuLCAobHNiICYgMHgxYykgPDwgMTAsIChsc2Ig
JiAweDMpIDw8IDYsICh3aWR0aCAtIDEpICYgMHgxZik7CiAgICAgfQogCisjaWYgQ1BVKEFQUExF
X0FSTVY3UykKICAgICBBTFdBWVNfSU5MSU5FIHZvaWQgdWRpdihSZWdpc3RlcklEIHJkLCBSZWdp
c3RlcklEIHJuLCBSZWdpc3RlcklEIHJtKQogICAgIHsKICAgICAgICAgQVNTRVJUKCFCYWRSZWco
cmQpKTsKQEAgLTE3NTYsNiArMTc2MSw3IEBAIHB1YmxpYzoKICAgICAgICAgQVNTRVJUKCFCYWRS
ZWcocm0pKTsKICAgICAgICAgbV9mb3JtYXR0ZXIudHdvV29yZE9wMTJSZWc0Rm91ckZvdXJzKE9Q
X1VESVZfVDEsIHJuLCBGb3VyRm91cnMoMHhmLCByZCwgMHhmLCBybSkpOwogICAgIH0KKyNlbmRp
ZgogCiAgICAgdm9pZCB2YWRkKEZQRG91YmxlUmVnaXN0ZXJJRCByZCwgRlBEb3VibGVSZWdpc3Rl
cklEIHJuLCBGUERvdWJsZVJlZ2lzdGVySUQgcm0pCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BYnN0cmFjdE1hY3JvQXNzZW1ibGVyLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaAppbmRl
eCA3NTVlNTRmZjExMmE4N2IzMzZjMWU0MTQ0OWE4ZmEwZTk0ZWNhNzhmLi42OGZkODA0ZWNjODI1
Yzg5MmQ5MmU3ODdkN2QzNzk3YmZhMjgyNTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaApAQCAtNDYsNiAr
NDYsMTUgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKK2lubGluZSBib29sIGlzQVJNdjdzKCkKK3sK
KyNpZiBDUFUoQVBQTEVfQVJNVjdTKQorICAgIHJldHVybiB0cnVlOworI2Vsc2UKKyAgICByZXR1
cm4gZmFsc2U7CisjZW5kaWYKK30KKwogaW5saW5lIGJvb2wgaXNYODYoKQogewogI2lmIENQVShY
ODZfNjQpIHx8IENQVShYODYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNz
ZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMmVkNWZjMmIwNjBmMWUzZTE0NWExZTExYjM5ZmNjYTk0OGViNWNjNS4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwCisrKyAvZGV2L251bGwKQEAgLTEs
NTUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAxMyBSZXNlYXJjaCBJbiBN
b3Rpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFVOSVZFUlNJVFkgT0YgU1pFR0VEIGBgQVMgSVMnJyBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVU5JVkVSU0lUWSBPRiBTWkVHRUQgT1IKLSAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29u
ZmlnLmgiCi0KLSNpZiBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoQVJNX1RIVU1CMikKLQotI2lu
Y2x1ZGUgIk1hY3JvQXNzZW1ibGVyQVJNdjcuaCIKLQotI2lmIE9TKFFOWCkKLSNpbmNsdWRlIDxz
eXMvc3lzcGFnZS5oPgotI2VuZGlmCi0KLW5hbWVzcGFjZSBKU0MgewotCi0jaWYgT1MoUU5YKQot
Ci1zdGF0aWMgYm9vbCBpc0ludGVnZXJEaXZTdXBwb3J0ZWQoKQotewotI2lmZGVmIEFSTV9DUFVf
RkxBR19JRElWCi0gICAgcmV0dXJuICEhKFNZU1BBR0VfRU5UUlkoY3B1aW5mbyktPmZsYWdzICYg
QVJNX0NQVV9GTEFHX0lESVYpOwotI2Vsc2UKLSAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYKLX0K
LQotY29uc3QgYm9vbCBNYWNyb0Fzc2VtYmxlckFSTXY3OjpzX2lzSW50ZWdlckRpdlN1cHBvcnRl
ZCA9IGlzSW50ZWdlckRpdlN1cHBvcnRlZCgpOwotCi0jZW5kaWYgLy8gT1MoUU5YKQotCi19Ci0K
LSNlbmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoQVJNX1RIVU1CMikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmgK
aW5kZXggMWIwNzQ4NTRlOGMyYzIzZWMyM2E5YTUzMjNkNWFmMmI1NzVjOWYwZS4uYjFiYzQxNzI5
NjY4NmM2ZWExNGJlYjRiOGIwYWJiZWMyZTI0YTJjMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmgKQEAgLTc5MywxOSAr
NzkzLDggQEAgcHVibGljOgogICAgIH0KICNlbmRpZgogCi0gICAgLy8gSW50ZWdlciBvcGVyYXRp
b25zLgotICAgIHN0YXRpYyBib29sIHN1cHBvcnRzSW50ZWdlckRpdigpCi0gICAgewotI2lmIENQ
VShBUFBMRV9BUk1WN1MpCi0gICAgICAgIHJldHVybiB0cnVlOwotI2VsaWYgT1MoUU5YKQotICAg
ICAgICByZXR1cm4gc19pc0ludGVnZXJEaXZTdXBwb3J0ZWQ7Ci0jZWxzZQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0jZW5kaWYKLSAgICB9CisgICAgLy8gRmxvYXRpbmctcG9pbnQgb3BlcmF0aW9u
czoKIAotICAgIC8vIEZsb2F0aW5nLXBvaW50IG9wZXJhdGlvbnMuCiAgICAgc3RhdGljIGJvb2wg
c3VwcG9ydHNGbG9hdGluZ1BvaW50KCkgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHN0YXRpYyBib29s
IHN1cHBvcnRzRmxvYXRpbmdQb2ludFRydW5jYXRlKCkgeyByZXR1cm4gdHJ1ZTsgfQogICAgIHN0
YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFNxcnQoKSB7IHJldHVybiB0cnVlOyB9CkBA
IC0xOTE4LDEwICsxOTA3LDYgQEAgcHJpdmF0ZToKICAgICB9CiAKICAgICBib29sIG1fbWFrZUp1
bXBQYXRjaGFibGU7Ci0KLSNpZiBPUyhRTlgpCi0gICAgc3RhdGljIGNvbnN0IGJvb2wgc19pc0lu
dGVnZXJEaXZTdXBwb3J0ZWQ7Ci0jZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdGaXh1cFBoYXNlLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRml4dXBQaGFzZS5jcHAKaW5kZXggMjBjNjYwNzA5
NjhmOWQxMTc2ZDdmM2EzZTE4MGZkNGY3MzBjNzNiMi4uYzlhNThkNjY5ODYzODRmZmEwMTg4Njdh
NjU3ZWM1N2I2ZDM3ZGMwZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdGaXh1cFBoYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0ZpeHVw
UGhhc2UuY3BwCkBAIC0yMTQsMTQgKzIxNCw3IEBAIHByaXZhdGU6CiAgICAgICAgIGNhc2UgQXJp
dGhEaXY6IHsKICAgICAgICAgICAgIGlmIChOb2RlOjpzaG91bGRTcGVjdWxhdGVJbnRlZ2VyRm9y
QXJpdGhtZXRpYyhub2RlLT5jaGlsZDEoKS5ub2RlKCksIG5vZGUtPmNoaWxkMigpLm5vZGUoKSkK
ICAgICAgICAgICAgICAgICAmJiBub2RlLT5jYW5TcGVjdWxhdGVJbnRlZ2VyKCkpIHsKLSNpZiBD
UFUoWDg2KSB8fCBDUFUoWDg2XzY0KQotICAgICAgICAgICAgICAgIGNvbnN0IGJvb2wgY3B1U3Vw
cG9ydHNJbnRlZ2VyRGl2ID0gdHJ1ZTsKLSNlbGlmIENQVShBUk1fVEhVTUIyKQotICAgICAgICAg
ICAgICAgIGNvbnN0IGJvb2wgY3B1U3VwcG9ydHNJbnRlZ2VyRGl2ID0gTWFjcm9Bc3NlbWJsZXI6
OnN1cHBvcnRzSW50ZWdlckRpdigpOwotI2Vsc2UKLSAgICAgICAgICAgICAgICBjb25zdCBib29s
IGNwdVN1cHBvcnRzSW50ZWdlckRpdiA9IGZhbHNlOwotI2VuZGlmCi0gICAgICAgICAgICAgICAg
aWYgKGNwdVN1cHBvcnRzSW50ZWdlckRpdikgeworICAgICAgICAgICAgICAgIGlmIChpc1g4Nigp
IHx8IGlzQVJNdjdzKCkpIHsKICAgICAgICAgICAgICAgICAgICAgc2V0VXNlS2luZEFuZFVuYm94
SWZQcm9maXRhYmxlPEludDMyVXNlPihub2RlLT5jaGlsZDEoKSk7CiAgICAgICAgICAgICAgICAg
ICAgIHNldFVzZUtpbmRBbmRVbmJveElmUHJvZml0YWJsZTxJbnQzMlVzZT4obm9kZS0+Y2hpbGQy
KCkpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR09wZXJhdGlvbnMuY3BwCmluZGV4IDMyYzhmZTdhYWU0ZGIzOWIzNTExNDcxOGQ3Nzk1
NmE4MjRlMGQ4YTUuLjMxMGYyNDRlZjVjMTkzYmYyZTJiODY3OWVmZDc4YzhhYjhjNWY0NDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcApAQCAtNDUsNyAr
NDUsNiBAQAogI2luY2x1ZGUgIk9iamVjdENvbnN0cnVjdG9yLmgiCiAjaW5jbHVkZSAiT3BlcmF0
aW9ucy5oIgogI2luY2x1ZGUgIlN0cmluZ0NvbnN0cnVjdG9yLmgiCi0jaW5jbHVkZSA8c3RkbGli
Lmg+CiAjaW5jbHVkZSA8d3RmL0lubGluZUFTTS5oPgogCiAjaWYgRU5BQkxFKEpJVCkKQEAgLTE2
MDEsMTEgKzE2MDAsNiBAQCBKU0NlbGwqIERGR19PUEVSQVRJT04gb3BlcmF0aW9uTWFrZVJvcGUz
KEV4ZWNTdGF0ZSogZXhlYywgSlNTdHJpbmcqIGEsIEpTU3RyaW5nKgogICAgIHJldHVybiBKU1Jv
cGVTdHJpbmc6OmNyZWF0ZSh2bSwgYSwgYiwgYyk7CiB9CiAKLWludDMyX3QgREZHX09QRVJBVElP
TiBvcGVyYXRpb25Nb2RPbkludHMoaW50MzJfdCBhLCBpbnQzMl90IGIpCi17Ci0gICAgcmV0dXJu
IGEgJSBiOwotfQotCiBkb3VibGUgREZHX09QRVJBVElPTiBvcGVyYXRpb25GTW9kT25JbnRzKGlu
dDMyX3QgYSwgaW50MzJfdCBiKQogewogICAgIHJldHVybiBmbW9kKGEsIGIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuaAppbmRleCBmYjk4NzNjZWUxYjQ5YzdkZDM5
NDRhZWVjYWJmODgxMjAyOTYzYzI1Li5jMzE0ZThlYjM5NzUyZmMxZDk0YzA0YWRjN2EzM2JiYzcw
ZWZiNWU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlv
bnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuaApAQCAt
OTcsNyArOTcsNiBAQCB0eXBlZGVmIGRvdWJsZSBERkdfT1BFUkFUSU9OICgqRF9ERkdPcGVyYXRp
b25fREQpKGRvdWJsZSwgZG91YmxlKTsKIHR5cGVkZWYgZG91YmxlIERGR19PUEVSQVRJT04gKCpE
X0RGR09wZXJhdGlvbl9aWikoaW50MzJfdCwgaW50MzJfdCk7CiB0eXBlZGVmIGRvdWJsZSBERkdf
T1BFUkFUSU9OICgqRF9ERkdPcGVyYXRpb25fRUopKEV4ZWNTdGF0ZSosIEVuY29kZWRKU1ZhbHVl
KTsKIHR5cGVkZWYgaW50MzJfdCBERkdfT1BFUkFUSU9OICgqWl9ERkdPcGVyYXRpb25fRCkoZG91
YmxlKTsKLXR5cGVkZWYgaW50MzJfdCBERkdfT1BFUkFUSU9OICgqWl9ERkdPcGVyYXRpb25fWlop
KGludDMyX3QsIGludDMyX3QpOwogdHlwZWRlZiBzaXplX3QgREZHX09QRVJBVElPTiAoKlNfREZH
T3BlcmF0aW9uX0VDQykoRXhlY1N0YXRlKiwgSlNDZWxsKiwgSlNDZWxsKik7CiB0eXBlZGVmIHNp
emVfdCBERkdfT1BFUkFUSU9OICgqU19ERkdPcGVyYXRpb25fRUopKEV4ZWNTdGF0ZSosIEVuY29k
ZWRKU1ZhbHVlKTsKIHR5cGVkZWYgc2l6ZV90IERGR19PUEVSQVRJT04gKCpTX0RGR09wZXJhdGlv
bl9FSkopKEV4ZWNTdGF0ZSosIEVuY29kZWRKU1ZhbHVlLCBFbmNvZGVkSlNWYWx1ZSk7CkBAIC0y
MDksNyArMjA4LDYgQEAgRW5jb2RlZEpTVmFsdWUgREZHX09QRVJBVElPTiBvcGVyYXRpb25HZXRJ
bmxpbmVkQXJndW1lbnRCeVZhbChFeGVjU3RhdGUqLCBpbnQzMl8KIEVuY29kZWRKU1ZhbHVlIERG
R19PUEVSQVRJT04gb3BlcmF0aW9uR2V0QXJndW1lbnRCeVZhbChFeGVjU3RhdGUqLCBpbnQzMl90
LCBpbnQzMl90KSBXVEZfSU5URVJOQUw7CiBKU0NlbGwqIERGR19PUEVSQVRJT04gb3BlcmF0aW9u
TmV3RnVuY3Rpb24oRXhlY1N0YXRlKiwgSlNDZWxsKikgV1RGX0lOVEVSTkFMOwogSlNDZWxsKiBE
RkdfT1BFUkFUSU9OIG9wZXJhdGlvbk5ld0Z1bmN0aW9uRXhwcmVzc2lvbihFeGVjU3RhdGUqLCBK
U0NlbGwqKSBXVEZfSU5URVJOQUw7Ci1pbnQzMl90IERGR19PUEVSQVRJT04gb3BlcmF0aW9uTW9k
T25JbnRzKGludDMyX3QsIGludDMyX3QpIFdURl9JTlRFUk5BTDsKIGRvdWJsZSBERkdfT1BFUkFU
SU9OIG9wZXJhdGlvbkZNb2RPbkludHMoaW50MzJfdCwgaW50MzJfdCkgV1RGX0lOVEVSTkFMOwog
c2l6ZV90IERGR19PUEVSQVRJT04gb3BlcmF0aW9uSXNPYmplY3QoRXhlY1N0YXRlKiwgRW5jb2Rl
ZEpTVmFsdWUpIFdURl9JTlRFUk5BTDsKIHNpemVfdCBERkdfT1BFUkFUSU9OIG9wZXJhdGlvbklz
RnVuY3Rpb24oRW5jb2RlZEpTVmFsdWUpIFdURl9JTlRFUk5BTDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAKaW5kZXggM2IyOTg1ZmQzNjIxN2Q3
OTIzNWE5YWIyMTA4MGUzODhkMWE3MzM2Ny4uNDMzN2U4MGY1OWI3MWQyNzVkYjUwOWRiNWE3MWJk
MTEwOTAxY2E1OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVj
dWxhdGl2ZUpJVC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxh
dGl2ZUpJVC5jcHAKQEAgLTI4NzcsMTIgKzI4NzcsMTIgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6
Y29tcGlsZUluc3RhbmNlT2YoTm9kZSogbm9kZSkKICNlbmRpZgogfQogCi0jaWYgQ1BVKFg4Nikg
fHwgQ1BVKFg4Nl82NCkKIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVTb2Z0TW9kdWxvKE5v
ZGUqIG5vZGUpCiB7CiAgICAgLy8gSW4gdGhlIGZhc3QgcGF0aCwgdGhlIGRpdmlkZW5kIHZhbHVl
IGNvdWxkIGJlIHRoZSBmaW5hbCByZXN1bHQKICAgICAvLyAoaW4gY2FzZSBvZiB8ZGl2aWRlbmR8
IDwgfGRpdmlzb3J8KSwgc28gd2Ugc3BlY3VsYXRlIGl0IGFzIHN0cmljdCBpbnQzMi4KICAgICBT
cGVjdWxhdGVTdHJpY3RJbnQzMk9wZXJhbmQgb3AxKHRoaXMsIG5vZGUtPmNoaWxkMSgpKTsKKyNp
ZiBDUFUoWDg2KSB8fCBDUFUoWDg2XzY0KQogICAgIGlmIChpc0ludDMyQ29uc3RhbnQobm9kZS0+
Y2hpbGQyKCkubm9kZSgpKSkgewogICAgICAgICBpbnQzMl90IGRpdmlzb3IgPSB2YWx1ZU9mSW50
MzJDb25zdGFudChub2RlLT5jaGlsZDIoKS5ub2RlKCkpOwogICAgICAgICBpZiAoZGl2aXNvcikg
ewpAQCAtMjkyMiw5ICsyOTIyLDM2IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVTb2Z0
TW9kdWxvKE5vZGUqIG5vZGUpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICB9
CisjZWxpZiBDUFUoQVBQTEVfQVJNVjdTKSB8fCBDUFUoQVJNX1RIVU1CMikKKyAgICBpZiAoaXNJ
bnQzMkNvbnN0YW50KG5vZGUtPmNoaWxkMigpLm5vZGUoKSkpIHsKKyAgICAgICAgaW50MzJfdCBk
aXZpc29yID0gdmFsdWVPZkludDMyQ29uc3RhbnQobm9kZS0+Y2hpbGQyKCkubm9kZSgpKTsKKyAg
ICAgICAgaWYgKGRpdmlzb3IgPiAwICYmIGhhc09uZUJpdFNldChkaXZpc29yKSkgeyAvLyBJZiBw
b3dlciBvZiAyIHRoZW4ganVzdCBtYXNrCisgICAgICAgICAgICBHUFJSZWcgZGl2aWRlbmRHUFIg
PSBvcDEuZ3ByKCk7CisgICAgICAgICAgICBHUFJUZW1wb3JhcnkgcmVzdWx0KHRoaXMpOworICAg
ICAgICAgICAgR1BSUmVnIHJlc3VsdEdQUiA9IHJlc3VsdC5ncHIoKTsKIAotICAgIFNwZWN1bGF0
ZUludGVnZXJPcGVyYW5kIG9wMih0aGlzLCBub2RlLT5jaGlsZDIoKSk7CisgICAgICAgICAgICBt
X2ppdC5hc3NlbWJsZXIoKS5jbXAoZGl2aWRlbmRHUFIsIEFSTVRodW1iSW1tZWRpYXRlOjptYWtl
RW5jb2RlZEltbSgwKSk7CisgICAgICAgICAgICBtX2ppdC5hc3NlbWJsZXIoKS5pdChBUk12N0Fz
c2VtYmxlcjo6Q29uZGl0aW9uTFQsIGZhbHNlKTsKKyAgICAgICAgICAgIG1faml0LmFzc2VtYmxl
cigpLm5lZyhyZXN1bHRHUFIsIGRpdmlkZW5kR1BSKTsKKyAgICAgICAgICAgIG1faml0LmFzc2Vt
YmxlcigpLm1vdihyZXN1bHRHUFIsIGRpdmlkZW5kR1BSKTsKKyAgICAgICAgICAgIG1faml0LmFu
ZDMyKFRydXN0ZWRJbW0zMihkaXZpc29yIC0gMSksIHJlc3VsdEdQUik7CisgICAgICAgICAgICBt
X2ppdC5hc3NlbWJsZXIoKS5pdChBUk12N0Fzc2VtYmxlcjo6Q29uZGl0aW9uTFQpOworICAgICAg
ICAgICAgbV9qaXQuYXNzZW1ibGVyKCkubmVnKHJlc3VsdEdQUiwgcmVzdWx0R1BSKTsKIAorICAg
ICAgICAgICAgaWYgKCFub2RlQ2FuSWdub3JlTmVnYXRpdmVaZXJvKG5vZGUtPmFyaXRoTm9kZUZs
YWdzKCkpKSB7CisgICAgICAgICAgICAgICAgLy8gQ2hlY2sgdGhhdCB3ZSdyZSBub3QgYWJvdXQg
dG8gY3JlYXRlIG5lZ2F0aXZlIHplcm8uCisgICAgICAgICAgICAgICAgSklUQ29tcGlsZXI6Okp1
bXAgbnVtZXJhdG9yUG9zaXRpdmUgPSBtX2ppdC5icmFuY2gzMihKSVRDb21waWxlcjo6R3JlYXRl
clRoYW5PckVxdWFsLCBkaXZpZGVuZEdQUiwgVHJ1c3RlZEltbTMyKDApKTsKKyAgICAgICAgICAg
ICAgICBzcGVjdWxhdGlvbkNoZWNrKE5lZ2F0aXZlWmVybywgSlNWYWx1ZVJlZ3MoKSwgMCwgbV9q
aXQuYnJhbmNoVGVzdDMyKEpJVENvbXBpbGVyOjpaZXJvLCByZXN1bHRHUFIpKTsKKyAgICAgICAg
ICAgICAgICBudW1lcmF0b3JQb3NpdGl2ZS5saW5rKCZtX2ppdCk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBpbnRlZ2VyUmVzdWx0KHJlc3VsdEdQUiwgbm9kZSk7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKworICAgIFNwZWN1bGF0ZUludGVnZXJP
cGVyYW5kIG9wMih0aGlzLCBub2RlLT5jaGlsZDIoKSk7CisjaWYgQ1BVKFg4NikgfHwgQ1BVKFg4
Nl82NCkKICAgICBHUFJUZW1wb3JhcnkgZWF4KHRoaXMsIFg4NlJlZ2lzdGVyczo6ZWF4KTsKICAg
ICBHUFJUZW1wb3JhcnkgZWR4KHRoaXMsIFg4NlJlZ2lzdGVyczo6ZWR4KTsKICAgICBHUFJSZWcg
b3AxR1BSID0gb3AxLmdwcigpOwpAQCAtMjk4OSw4NyArMzAxNiw0MyBAQCB2b2lkIFNwZWN1bGF0
aXZlSklUOjpjb21waWxlU29mdE1vZHVsbyhOb2RlKiBub2RlKQogICAgIAogICAgIGlmIChvcDFT
YXZlR1BSICE9IG9wMUdQUikKICAgICAgICAgdW5sb2NrKG9wMVNhdmVHUFIpOwotCisgICAgICAg
ICAgICAKICAgICBpbnRlZ2VyUmVzdWx0KGVkeC5ncHIoKSwgbm9kZSk7Ci19Ci0jZWxpZiBDUFUo
QVJNX1RIVU1CMikKLXZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVTb2Z0TW9kdWxvKE5vZGUq
IG5vZGUpCi17Ci0gICAgLy8gSW4gdGhlIGZhc3QgcGF0aCwgdGhlIGRpdmlkZW5kIHZhbHVlIGNv
dWxkIGJlIHRoZSBmaW5hbCByZXN1bHQKLSAgICAvLyAoaW4gY2FzZSBvZiB8ZGl2aWRlbmR8IDwg
fGRpdmlzb3J8KSwgc28gd2Ugc3BlY3VsYXRlIGl0IGFzIHN0cmljdCBpbnQzMi4KLSAgICBTcGVj
dWxhdGVTdHJpY3RJbnQzMk9wZXJhbmQgb3AxKHRoaXMsIG5vZGUtPmNoaWxkMSgpKTsKLSAgICBp
ZiAoaXNJbnQzMkNvbnN0YW50KG5vZGUtPmNoaWxkMigpLm5vZGUoKSkpIHsKLSAgICAgICAgaW50
MzJfdCBkaXZpc29yID0gdmFsdWVPZkludDMyQ29uc3RhbnQobm9kZS0+Y2hpbGQyKCkubm9kZSgp
KTsKLSAgICAgICAgaWYgKGRpdmlzb3IgPiAwICYmIGhhc09uZUJpdFNldChkaXZpc29yKSkgeyAv
LyBJZiBwb3dlciBvZiAyIHRoZW4ganVzdCBtYXNrCi0gICAgICAgICAgICBHUFJSZWcgZGl2aWRl
bmRHUFIgPSBvcDEuZ3ByKCk7Ci0gICAgICAgICAgICBHUFJUZW1wb3JhcnkgcmVzdWx0KHRoaXMp
OwotICAgICAgICAgICAgR1BSUmVnIHJlc3VsdEdQUiA9IHJlc3VsdC5ncHIoKTsKLQotICAgICAg
ICAgICAgbV9qaXQuYXNzZW1ibGVyKCkuY21wKGRpdmlkZW5kR1BSLCBBUk1UaHVtYkltbWVkaWF0
ZTo6bWFrZUVuY29kZWRJbW0oMCkpOwotICAgICAgICAgICAgbV9qaXQuYXNzZW1ibGVyKCkuaXQo
QVJNdjdBc3NlbWJsZXI6OkNvbmRpdGlvbkxULCBmYWxzZSk7Ci0gICAgICAgICAgICBtX2ppdC5h
c3NlbWJsZXIoKS5uZWcocmVzdWx0R1BSLCBkaXZpZGVuZEdQUik7Ci0gICAgICAgICAgICBtX2pp
dC5hc3NlbWJsZXIoKS5tb3YocmVzdWx0R1BSLCBkaXZpZGVuZEdQUik7Ci0gICAgICAgICAgICBt
X2ppdC5hbmQzMihUcnVzdGVkSW1tMzIoZGl2aXNvciAtIDEpLCByZXN1bHRHUFIpOwotICAgICAg
ICAgICAgbV9qaXQuYXNzZW1ibGVyKCkuaXQoQVJNdjdBc3NlbWJsZXI6OkNvbmRpdGlvbkxUKTsK
LSAgICAgICAgICAgIG1faml0LmFzc2VtYmxlcigpLm5lZyhyZXN1bHRHUFIsIHJlc3VsdEdQUik7
Ci0KLSAgICAgICAgICAgIGlmICghbm9kZUNhbklnbm9yZU5lZ2F0aXZlWmVybyhub2RlLT5hcml0
aE5vZGVGbGFncygpKSkgewotICAgICAgICAgICAgICAgIC8vIENoZWNrIHRoYXQgd2UncmUgbm90
IGFib3V0IHRvIGNyZWF0ZSBuZWdhdGl2ZSB6ZXJvLgotICAgICAgICAgICAgICAgIEpJVENvbXBp
bGVyOjpKdW1wIG51bWVyYXRvclBvc2l0aXZlID0gbV9qaXQuYnJhbmNoMzIoSklUQ29tcGlsZXI6
OkdyZWF0ZXJUaGFuT3JFcXVhbCwgZGl2aWRlbmRHUFIsIFRydXN0ZWRJbW0zMigwKSk7Ci0gICAg
ICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhOZWdhdGl2ZVplcm8sIEpTVmFsdWVSZWdzKCks
IDAsIG1faml0LmJyYW5jaFRlc3QzMihKSVRDb21waWxlcjo6WmVybywgcmVzdWx0R1BSKSk7Ci0g
ICAgICAgICAgICAgICAgbnVtZXJhdG9yUG9zaXRpdmUubGluaygmbV9qaXQpOwotICAgICAgICAg
ICAgfQotICAgICAgICAgICAgaW50ZWdlclJlc3VsdChyZXN1bHRHUFIsIG5vZGUpOwotICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgU3BlY3VsYXRlSW50ZWdlck9w
ZXJhbmQgb3AyKHRoaXMsIG5vZGUtPmNoaWxkMigpKTsKIAorI2VsaWYgQ1BVKEFQUExFX0FSTVY3
UykKKyAgICBHUFJUZW1wb3JhcnkgdGVtcCh0aGlzKTsKKyAgICBHUFJUZW1wb3JhcnkgcXVvdGll
bnRUaGVuUmVtYWluZGVyKHRoaXMpOworICAgIEdQUlRlbXBvcmFyeSBtdWx0aXBseUFuc3dlcih0
aGlzKTsKICAgICBHUFJSZWcgZGl2aWRlbmRHUFIgPSBvcDEuZ3ByKCk7CiAgICAgR1BSUmVnIGRp
dmlzb3JHUFIgPSBvcDIuZ3ByKCk7CisgICAgR1BSUmVnIHF1b3RpZW50VGhlblJlbWFpbmRlckdQ
UiA9IHF1b3RpZW50VGhlblJlbWFpbmRlci5ncHIoKTsKKyAgICBHUFJSZWcgbXVsdGlwbHlBbnN3
ZXJHUFIgPSBtdWx0aXBseUFuc3dlci5ncHIoKTsKIAotICAgIEdQUlJlc3VsdCByZXN1bHQodGhp
cyk7Ci0gICAgR1BSUmVnIHJlc3VsdEdQUiA9IHJlc3VsdC5ncHIoKTsKLQotICAgIGlmIChNYWNy
b0Fzc2VtYmxlcjo6c3VwcG9ydHNJbnRlZ2VyRGl2KCkpIHsKLSAgICAgICAgR1BSVGVtcG9yYXJ5
IG11bHRpcGx5QW5zd2VyKHRoaXMpOwotICAgICAgICBHUFJSZWcgbXVsdGlwbHlBbnN3ZXJHUFIg
PSBtdWx0aXBseUFuc3dlci5ncHIoKTsKLSAgICAgICAgbV9qaXQuYXNzZW1ibGVyKCkuc2Rpdihy
ZXN1bHRHUFIsIGRpdmlkZW5kR1BSLCBkaXZpc29yR1BSKTsKLSAgICAgICAgc3BlY3VsYXRpb25D
aGVjayhPdmVyZmxvdywgSlNWYWx1ZVJlZ3MoKSwgMCwgbV9qaXQuYnJhbmNoTXVsMzIoSklUQ29t
cGlsZXI6Ok92ZXJmbG93LCByZXN1bHRHUFIsIGRpdmlzb3JHUFIsIG11bHRpcGx5QW5zd2VyR1BS
KSk7Ci0gICAgICAgIG1faml0LmFzc2VtYmxlcigpLnN1YihyZXN1bHRHUFIsIGRpdmlkZW5kR1BS
LCBtdWx0aXBseUFuc3dlckdQUik7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZmx1c2hSZWdpc3Rl
cnMoKTsKLSAgICAgICAgY2FsbE9wZXJhdGlvbihvcGVyYXRpb25Nb2RPbkludHMsIHJlc3VsdEdQ
UiwgZGl2aWRlbmRHUFIsIGRpdmlzb3JHUFIpOwotICAgIH0KKyAgICBtX2ppdC5hc3NlbWJsZXIo
KS5zZGl2KHF1b3RpZW50VGhlblJlbWFpbmRlckdQUiwgZGl2aWRlbmRHUFIsIGRpdmlzb3JHUFIp
OworICAgIHNwZWN1bGF0aW9uQ2hlY2soT3ZlcmZsb3csIEpTVmFsdWVSZWdzKCksIDAsIG1faml0
LmJyYW5jaE11bDMyKEpJVENvbXBpbGVyOjpPdmVyZmxvdywgcXVvdGllbnRUaGVuUmVtYWluZGVy
R1BSLCBkaXZpc29yR1BSLCBtdWx0aXBseUFuc3dlckdQUikpOworICAgIG1faml0LmFzc2VtYmxl
cigpLnN1YihxdW90aWVudFRoZW5SZW1haW5kZXJHUFIsIGRpdmlkZW5kR1BSLCBtdWx0aXBseUFu
c3dlckdQUik7CiAKICAgICAvLyBJZiB0aGUgdXNlciBjYXJlcyBhYm91dCBuZWdhdGl2ZSB6ZXJv
LCB0aGVuIHNwZWN1bGF0ZSB0aGF0IHdlJ3JlIG5vdCBhYm91dAogICAgIC8vIHRvIHByb2R1Y2Ug
bmVnYXRpdmUgemVyby4KICAgICBpZiAoIW5vZGVDYW5JZ25vcmVOZWdhdGl2ZVplcm8obm9kZS0+
YXJpdGhOb2RlRmxhZ3MoKSkpIHsKICAgICAgICAgLy8gQ2hlY2sgdGhhdCB3ZSdyZSBub3QgYWJv
dXQgdG8gY3JlYXRlIG5lZ2F0aXZlIHplcm8uCiAgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wIG51
bWVyYXRvclBvc2l0aXZlID0gbV9qaXQuYnJhbmNoMzIoSklUQ29tcGlsZXI6OkdyZWF0ZXJUaGFu
T3JFcXVhbCwgZGl2aWRlbmRHUFIsIFRydXN0ZWRJbW0zMigwKSk7Ci0gICAgICAgIHNwZWN1bGF0
aW9uQ2hlY2soTmVnYXRpdmVaZXJvLCBKU1ZhbHVlUmVncygpLCAwLCBtX2ppdC5icmFuY2hUZXN0
MzIoSklUQ29tcGlsZXI6Olplcm8sIHJlc3VsdEdQUikpOworICAgICAgICBzcGVjdWxhdGlvbkNo
ZWNrKE5lZ2F0aXZlWmVybywgSlNWYWx1ZVJlZ3MoKSwgMCwgbV9qaXQuYnJhbmNoVGVzdDMyKEpJ
VENvbXBpbGVyOjpaZXJvLCBxdW90aWVudFRoZW5SZW1haW5kZXJHUFIpKTsKICAgICAgICAgbnVt
ZXJhdG9yUG9zaXRpdmUubGluaygmbV9qaXQpOwogICAgIH0KIAotICAgIGludGVnZXJSZXN1bHQo
cmVzdWx0R1BSLCBub2RlKTsKLX0KLSNlbHNlIC8vIENQVSB0eXBlIHdpdGhvdXQgaW50ZWdlciBk
aXZpc2lvbgotdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZVNvZnRNb2R1bG8oTm9kZSogbm9k
ZSkKLXsKLSAgICBTcGVjdWxhdGVTdHJpY3RJbnQzMk9wZXJhbmQgb3AxKHRoaXMsIG5vZGUtPmNo
aWxkMSgpKTsKLSAgICBTcGVjdWxhdGVJbnRlZ2VyT3BlcmFuZCBvcDIodGhpcywgbm9kZS0+Y2hp
bGQyKCkpOwotCisgICAgaW50ZWdlclJlc3VsdChxdW90aWVudFRoZW5SZW1haW5kZXJHUFIsIG5v
ZGUpOworI2Vsc2UgLy8gbm90IGFyY2hpdGVjdHVyZSB0aGF0IGNhbiBkbyBpbnRlZ2VyIGRpdmlz
aW9uCiAgICAgLy8gRG8gdGhpcyB0aGUgKnNhZmVzdCogd2F5IHBvc3NpYmxlOiBjYWxsIG91dCB0
byBhIEMgZnVuY3Rpb24gdGhhdCB3aWxsIGRvIHRoZSBtb2R1bG8sCiAgICAgLy8gYW5kIHRoZW4g
YXR0ZW1wdCB0byBjb252ZXJ0IGJhY2suCi0gICAgR1BSUmVnIGRpdmlkZW5kR1BSID0gb3AxLmdw
cigpOwotICAgIEdQUlJlZyBkaXZpc29yR1BSID0gb3AyLmdwcigpOwotCisgICAgR1BSUmVnIG9w
MUdQUiA9IG9wMS5ncHIoKTsKKyAgICBHUFJSZWcgb3AyR1BSID0gb3AyLmdwcigpOworICAgIAog
ICAgIEZQUlJlc3VsdCByZXN1bHQodGhpcyk7Ci0KKyAgICAKICAgICBmbHVzaFJlZ2lzdGVycygp
OwotICAgIGNhbGxPcGVyYXRpb24ob3BlcmF0aW9uRk1vZE9uSW50cywgcmVzdWx0LmZwcigpLCBk
aXZpZGVuZEdQUiwgZGl2aXNvckdQUik7Ci0KKyAgICBjYWxsT3BlcmF0aW9uKG9wZXJhdGlvbkZN
b2RPbkludHMsIHJlc3VsdC5mcHIoKSwgb3AxR1BSLCBvcDJHUFIpOworICAgIAogICAgIEZQUlRl
bXBvcmFyeSBzY3JhdGNoKHRoaXMpOwogICAgIEdQUlRlbXBvcmFyeSBpbnRSZXN1bHQodGhpcyk7
CiAgICAgSklUQ29tcGlsZXI6Okp1bXBMaXN0IGZhaWx1cmVDYXNlczsKQEAgLTMwNzcsMTQgKzMw
NjAsMTQgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZVNvZnRNb2R1bG8oTm9kZSogbm9k
ZSkKICAgICBzcGVjdWxhdGlvbkNoZWNrKE92ZXJmbG93LCBKU1ZhbHVlUmVncygpLCAwLCBmYWls
dXJlQ2FzZXMpOwogICAgIGlmICghbm9kZUNhbklnbm9yZU5lZ2F0aXZlWmVybyhub2RlLT5hcml0
aE5vZGVGbGFncygpKSkgewogICAgICAgICAvLyBDaGVjayB0aGF0IHdlJ3JlIG5vdCBhYm91dCB0
byBjcmVhdGUgbmVnYXRpdmUgemVyby4KLSAgICAgICAgSklUQ29tcGlsZXI6Okp1bXAgbnVtZXJh
dG9yUG9zaXRpdmUgPSBtX2ppdC5icmFuY2gzMihKSVRDb21waWxlcjo6R3JlYXRlclRoYW5PckVx
dWFsLCBkaXZpZGVuZEdQUiwgVHJ1c3RlZEltbTMyKDApKTsKKyAgICAgICAgSklUQ29tcGlsZXI6
Okp1bXAgbnVtZXJhdG9yUG9zaXRpdmUgPSBtX2ppdC5icmFuY2gzMihKSVRDb21waWxlcjo6R3Jl
YXRlclRoYW5PckVxdWFsLCBvcDFHUFIsIFRydXN0ZWRJbW0zMigwKSk7CiAgICAgICAgIHNwZWN1
bGF0aW9uQ2hlY2soTmVnYXRpdmVaZXJvLCBKU1ZhbHVlUmVncygpLCAwLCBtX2ppdC5icmFuY2hU
ZXN0MzIoSklUQ29tcGlsZXI6Olplcm8sIGludFJlc3VsdC5ncHIoKSkpOwogICAgICAgICBudW1l
cmF0b3JQb3NpdGl2ZS5saW5rKCZtX2ppdCk7CiAgICAgfQotCisgICAgCiAgICAgaW50ZWdlclJl
c3VsdChpbnRSZXN1bHQuZ3ByKCksIG5vZGUpOworI2VuZGlmIC8vIENQVShYODYpIHx8IENQVShY
ODZfNjQpCiB9Ci0jZW5kaWYKIAogdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUFkZChOb2Rl
KiBub2RlKQogewpAQCAtMzQ5Myw4ICszNDc2LDggQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29t
cGlsZUludGVnZXJBcml0aERpdkZvclg4NihOb2RlKiBub2RlKQogICAgICAgICAgICAgCiAgICAg
aW50ZWdlclJlc3VsdChlYXguZ3ByKCksIG5vZGUpOwogfQotI2VsaWYgRU5BQkxFKEFSTV9JTlRF
R0VSX0RJVikKLXZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVJbnRlZ2VyQXJpdGhEaXZGb3JB
Uk0oTm9kZSogbm9kZSkKKyNlbGlmIENQVShBUFBMRV9BUk1WN1MpCit2b2lkIFNwZWN1bGF0aXZl
SklUOjpjb21waWxlSW50ZWdlckFyaXRoRGl2Rm9yQVJNdjdzKE5vZGUqIG5vZGUpCiB7CiAgICAg
U3BlY3VsYXRlSW50ZWdlck9wZXJhbmQgb3AxKHRoaXMsIG5vZGUtPmNoaWxkMSgpKTsKICAgICBT
cGVjdWxhdGVJbnRlZ2VyT3BlcmFuZCBvcDIodGhpcywgbm9kZS0+Y2hpbGQyKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oCmluZGV4IGNhNzU4MjY1
NjlmMWYzZTE2OGJjZmU1MTQ4OGMwOTcwMWI2NzA2N2UuLjZkMWRlZmEzMTVmZTBmYjg5YmI1Yzlj
MDQxZjE3OWJlMjgzNDgzNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHU3BlY3VsYXRpdmVKSVQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1Nw
ZWN1bGF0aXZlSklULmgKQEAgLTExMTAsMTMgKzExMTAsNiBAQCBwdWJsaWM6CiAgICAgICAgIG1f
aml0Lnplcm9FeHRlbmQzMlRvUHRyKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCByZXN1bHQpOwog
ICAgICAgICByZXR1cm4gY2FsbDsKICAgICB9Ci0gICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbE9w
ZXJhdGlvbihaX0RGR09wZXJhdGlvbl9aWiBvcGVyYXRpb24sIEdQUlJlZyByZXN1bHQsIEdQUlJl
ZyBhcmcxLCBHUFJSZWcgYXJnMikKLSAgICB7Ci0gICAgICAgIG1faml0LnNldHVwQXJndW1lbnRz
KGFyZzEsIGFyZzIpOwotICAgICAgICBKSVRDb21waWxlcjo6Q2FsbCBjYWxsID0gbV9qaXQuYXBw
ZW5kQ2FsbChvcGVyYXRpb24pOwotICAgICAgICBtX2ppdC56ZXJvRXh0ZW5kMzJUb1B0cihHUFJJ
bmZvOjpyZXR1cm5WYWx1ZUdQUiwgcmVzdWx0KTsKLSAgICAgICAgcmV0dXJuIGNhbGw7Ci0gICAg
fQogICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oSl9ERkdPcGVyYXRpb25fRUdy
aUpzZ0kgb3BlcmF0aW9uLCBHUFJSZWcgcmVzdWx0LCBHUFJSZWcgYXJnMSwgR1BSUmVnIGFyZzIs
IElkZW50aWZpZXIqIGlkZW50aWZpZXIpCiAgICAgewogICAgICAgICBtX2ppdC5zZXR1cEFyZ3Vt
ZW50c1dpdGhFeGVjU3RhdGUoYXJnMSwgYXJnMiwgVHJ1c3RlZEltbVB0cihpZGVudGlmaWVyKSk7
CkBAIC0xMzIyLDEzICsxMzE1LDYgQEAgcHVibGljOgogICAgICAgICBtX2ppdC56ZXJvRXh0ZW5k
MzJUb1B0cihHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQUiwgcmVzdWx0KTsKICAgICAgICAgcmV0dXJu
IGNhbGw7CiAgICAgfQotICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGxPcGVyYXRpb24oWl9ERkdP
cGVyYXRpb25fWlogb3BlcmF0aW9uLCBHUFJSZWcgcmVzdWx0LCBHUFJSZWcgYXJnMSwgR1BSUmVn
IGFyZzIpCi0gICAgewotICAgICAgICBtX2ppdC5zZXR1cEFyZ3VtZW50cyhhcmcxLCBhcmcyKTsK
LSAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbCA9IG1faml0LmFwcGVuZENhbGwob3BlcmF0
aW9uKTsKLSAgICAgICAgbV9qaXQuemVyb0V4dGVuZDMyVG9QdHIoR1BSSW5mbzo6cmV0dXJuVmFs
dWVHUFIsIHJlc3VsdCk7Ci0gICAgICAgIHJldHVybiBjYWxsOwotICAgIH0KICAgICBKSVRDb21w
aWxlcjo6Q2FsbCBjYWxsT3BlcmF0aW9uKEpfREZHT3BlcmF0aW9uX0Ugb3BlcmF0aW9uLCBHUFJS
ZWcgcmVzdWx0VGFnLCBHUFJSZWcgcmVzdWx0UGF5bG9hZCkKICAgICB7CiAgICAgICAgIG1faml0
LnNldHVwQXJndW1lbnRzRXhlY1N0YXRlKCk7CkBAIC0xOTg1LDggKzE5NzEsOCBAQCBwdWJsaWM6
CiAgICAgdm9pZCBjb21waWxlQXJpdGhJTXVsKE5vZGUqKTsKICNpZiBDUFUoWDg2KSB8fCBDUFUo
WDg2XzY0KQogICAgIHZvaWQgY29tcGlsZUludGVnZXJBcml0aERpdkZvclg4NihOb2RlKik7Ci0j
ZWxpZiBFTkFCTEUoQVJNX0lOVEVHRVJfRElWKQotICAgIHZvaWQgY29tcGlsZUludGVnZXJBcml0
aERpdkZvckFSTShOb2RlKik7CisjZWxpZiBDUFUoQVBQTEVfQVJNVjdTKQorICAgIHZvaWQgY29t
cGlsZUludGVnZXJBcml0aERpdkZvckFSTXY3cyhOb2RlKik7CiAjZW5kaWYKICAgICB2b2lkIGNv
bXBpbGVBcml0aE1vZChOb2RlKik7CiAgICAgdm9pZCBjb21waWxlU29mdE1vZHVsbyhOb2RlKik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklU
MzJfNjQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMy
XzY0LmNwcAppbmRleCBjODlmNDMxYWJiNDFkYmQ4ZDcxZmM0ODRlNTA5ODdkYmE5YmQyNTZkLi4z
NTk1NzUzYzExNDU4MGVmODAwNmY3OWE5Y2JjZTEzMzU3ZTI4NjViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklUMzJfNjQuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAKQEAgLTIy
NTMsOSArMjI1Myw4IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGUoTm9kZSogbm9kZSkK
ICAgICAgICAgY2FzZSBJbnQzMlVzZTogewogI2lmIENQVShYODYpCiAgICAgICAgICAgICBjb21w
aWxlSW50ZWdlckFyaXRoRGl2Rm9yWDg2KG5vZGUpOwotI2VsaWYgRU5BQkxFKEFSTV9JTlRFR0VS
X0RJVikKLSAgICAgICAgICAgIEFTU0VSVChNYWNyb0Fzc2VtYmxlcjo6c3VwcG9ydHNJbnRlZ2Vy
RGl2KCkpOwotICAgICAgICAgICAgY29tcGlsZUludGVnZXJBcml0aERpdkZvckFSTShub2RlKTsK
KyNlbGlmIENQVShBUFBMRV9BUk1WN1MpCisgICAgICAgICAgICBjb21waWxlSW50ZWdlckFyaXRo
RGl2Rm9yQVJNdjdzKG5vZGUpOwogI2Vsc2UgLy8gQ1BVIHR5cGUgd2l0aG91dCBpbnRlZ2VyIGRp
dmlkZQogICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsgLy8gc2hvdWxk
IGhhdmUgYmVlbiBjb3ZlcnRlZCBpbnRvIGEgZG91YmxlIGRpdmlkZS4KICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
LmgKaW5kZXggZTkwNzFkMzZkNzQyNGI4MTA4ZDU3MGIyMTEyNTJiNjcyYmRjNTg1YS4uMGUxMTMw
ODczY2QyNWRiNzQ5N2QwMDY3OThhYjY2Y2M1NDQzMGY1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvUGxhdGZvcm0uaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCkBAIC05MjYs
MTAgKzkyNiw2IEBACiAjZGVmaW5lIEVOQUJMRV9DT01QQVJFX0FORF9TV0FQIDEKICNlbmRpZgog
Ci0jaWYgQ1BVKEFQUExFX0FSTVY3UykgfHwgKENQVShBUk1fVEhVTUIyKSAmJiBPUyhRTlgpKQot
I2RlZmluZSBFTkFCTEVfQVJNX0lOVEVHRVJfRElWIDEKLSNlbmRpZgotCiAjZGVmaW5lIEVOQUJM
RV9PQkpFQ1RfTUFSS19MT0dHSU5HIDAKIAogI2lmICFkZWZpbmVkKEVOQUJMRV9QQVJBTExFTF9H
QykgJiYgIUVOQUJMRShPQkpFQ1RfTUFSS19MT0dHSU5HKSAmJiAoUExBVEZPUk0oTUFDKSB8fCBQ
TEFURk9STShJT1MpIHx8IFBMQVRGT1JNKEJMQUNLQkVSUlkpIHx8IFBMQVRGT1JNKEdUSykpICYm
IEVOQUJMRShDT01QQVJFX0FORF9TV0FQKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>