<?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>233930</bug_id>
          
          <creation_ts>2021-12-07 08:53:54 -0800</creation_ts>
          <short_desc>REGRESSION(r286502): Speedometer2 0.7% regression</short_desc>
          <delta_ts>2021-12-07 08:57:30 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>233723</blocked>
    
    <blocked>233875</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>keith_miller</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1821053</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2021-12-07 08:53:54 -0800</bug_when>
    <thetext>https://commits.webkit.org/r286502 introduced a regression:
Speedometer2 0.7% regression

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>1821056</commentid>
    <comment_count>1</comment_count>
      <attachid>446179</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2021-12-07 08:54:09 -0800</bug_when>
    <thetext>Created attachment 446179
REVERT of r286502

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

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

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821057</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-07 08:56:45 -0800</bug_when>
    <thetext>Committed r286597 (?): &lt;https://commits.webkit.org/r286597&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 446179.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821058</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-07 08:57:30 -0800</bug_when>
    <thetext>&lt;rdar://problem/86158780&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446179</attachid>
            <date>2021-12-07 08:54:09 -0800</date>
            <delta_ts>2021-12-07 08:56:46 -0800</delta_ts>
            <desc>REVERT of r286502</desc>
            <filename>bug-233930-20211207085408.patch</filename>
            <type>text/plain</type>
            <size>31595</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NTk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
YjU0YTI3YTE3MjRkZTY3MGZlNTE3YjM2YWQ4N2M3NmVkZGJmNTE5Li4zYTZlMGQyOTkwZmJmNDdm
MWRmMjY0ZTk5YmYwNGE3Yjc0NDAyODc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAyMS0xMi0wNyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyODY1MDIgYW5kIHIyODY1
ODAuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM5
MzAKKworICAgICAgICBTcGVlZG9tZXRlcjIgMC43JSByZWdyZXNzaW9uCisKKyAgICAgICAgUmV2
ZXJ0ZWQgY2hhbmdlc2V0czoKKworICAgICAgICAiUmVtb3ZlIFN0cnVjdHVyZUlEQmxvYiIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzcyMworICAg
ICAgICBodHRwczovL2NvbW1pdHMud2Via2l0Lm9yZy9yMjg2NTAyCisKKyAgICAgICAgIlR5cGVJ
bmZvIHNob3VsZCBiZSBtYXRlcmlhbGl6YWJsZSBmcm9tIFN0cnVjdHVyZXMgYXMgYSBzaW5nbGUK
KyAgICAgICAgbG9hZC4iCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMzM4NzUKKyAgICAgICAgaHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvcjI4NjU4
MAorCiAyMDIxLTEyLTA3ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAog
ICAgICAgICBbUklTQ1Y2NF0gQWRkIG1vcmUgTWFjcm9Bc3NlbWJsZXJSSVNDVjY0IGhlbHBlciBp
bmZyYXN0cnVjdHVyZQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlz
dHMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDQ3NzJl
YTM1NTBjZTg0NDAxNDFhOGZjOTM3NmI5YjZmYThjODM1ZDEuLmMwMTAxNmQwYzJiY2UwODVmYzYx
ZjFhZTViYzgwMTVmNWEzNDg3ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9D
TWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQK
QEAgLTExODYsNiArMTE4Niw3IEBAIHNldChKYXZhU2NyaXB0Q29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCiAgICAgcnVudGltZS9TdHJ1Y3R1cmVDYWNoZS5oCiAgICAgcnVudGltZS9TdHJ1
Y3R1cmVDaGFpbi5oCiAgICAgcnVudGltZS9TdHJ1Y3R1cmVJRC5oCisgICAgcnVudGltZS9TdHJ1
Y3R1cmVJREJsb2IuaAogICAgIHJ1bnRpbWUvU3RydWN0dXJlSW5saW5lcy5oCiAgICAgcnVudGlt
ZS9TdHJ1Y3R1cmVSYXJlRGF0YS5oCiAgICAgcnVudGltZS9TdHJ1Y3R1cmVSYXJlRGF0YUlubGlu
ZXMuaApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlw
dENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA0OTA5YzUyMzQ2Yzg5NzcyY2Q5
Mzc5NmE3MmRkMGU2NzMxMWRhNzY3Li43MDlhNmFkN2M5NGI0MDkyMjI4M2RhZGU3OTRkNjc5M2Q3
NGU5ODc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2
YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtODUyLDYgKzg1Miw3IEBA
CiAJCTJBNEJCN0YzMThBNDExNzkwMDhBMEZDRCAvKiBKU01hbmFnZWRWYWx1ZUludGVybmFsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQTRCQjdGMjE4
QTQxMTc5MDA4QTBGQ0QgLyogSlNNYW5hZ2VkVmFsdWVJbnRlcm5hbC5oICovOyB9OwogCQkyQTgz
NjM4NjE4RDdEMEVFMDAwMEVCQ0MgLyogRWRlbkdDQWN0aXZpdHlDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkE4MzYzODQxOEQ3RDBFRTAw
MDBFQkNDIC8qIEVkZW5HQ0FjdGl2aXR5Q2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkyQTgzNjM4QTE4RDdEMEZFMDAwMEVCQ0MgLyog
RnVsbEdDQWN0aXZpdHlDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMkE4MzYzODgxOEQ3RDBGRTAwMDBFQkNDIC8qIEZ1bGxHQ0FjdGl2aXR5
Q2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkyQUFBQTMxMjE4QkQ0OUQxMDAzOTRDQzggLyogU3RydWN0dXJlSURCbG9iLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQUFBQTMxMDE4QkQ0OUQx
MDAzOTRDQzggLyogU3RydWN0dXJlSURCbG9iLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMkFBQkNERTcxOEVGMjk0MjAwMDAyMDk2IC8qIEdDTG9n
Z2luZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkFB
QkNERTYxOEVGMjk0MjAwMDAyMDk2IC8qIEdDTG9nZ2luZy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTJBQUNFNjNEMThDQTVBMDMwMEVEMDE5MSAv
KiBHQ0FjdGl2aXR5Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDJBQUNFNjNCMThDQTVBMDMwMEVEMDE5MSAvKiBHQ0FjdGl2aXR5Q2FsbGJh
Y2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQky
QUQyRURGQjE5Nzk5RTM4MDA0RDY0NzggLyogRW51bWVyYXRpb25Nb2RlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQUQyRURGQTE5Nzk5RTM4MDA0RDY0
NzggLyogRW51bWVyYXRpb25Nb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKQEAgLTM2MzEsNiArMzYzMiw3IEBACiAJCTJBODM2Mzg0MThEN0QwRUUw
MDAwRUJDQyAvKiBFZGVuR0NBY3Rpdml0eUNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEVkZW5HQ0FjdGl2aXR5Q2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMkE4MzYzODcxOEQ3RDBGRTAwMDBFQkNDIC8qIEZ1bGxHQ0FjdGl2aXR5Q2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRnVsbEdDQWN0
aXZpdHlDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJBODM2Mzg4
MThEN0QwRkUwMDAwRUJDQyAvKiBGdWxsR0NBY3Rpdml0eUNhbGxiYWNrLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZ1bGxHQ0FjdGl2aXR5Q2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFBQUEzMTAxOEJENDlEMTAwMzk0Q0M4IC8qIFN0cnVjdHVy
ZUlEQmxvYi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHJ1Y3R1cmVJREJs
b2IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkFBQkNERTYxOEVGMjk0MjAwMDAy
MDk2IC8qIEdDTG9nZ2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHQ0xv
Z2dpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkFBQ0U2M0ExOENBNUEwMzAw
RUQwMTkxIC8qIEdDQWN0aXZpdHlDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBHQ0FjdGl2aXR5Q2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkyQUFDRTYzQjE4Q0E1QTAzMDBFRDAxOTEgLyogR0NBY3Rpdml0eUNhbGxiYWNr
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdDQWN0aXZpdHlDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtODA3NCw2ICs4MDc2LDcgQEAKIAkJCQk3
RTRFRTcwRTBFQkI3QTVCMDA1OTM0QUEgLyogU3RydWN0dXJlQ2hhaW4uY3BwICovLAogCQkJCTdF
NEVFNzA4MEVCQjc5NjMwMDU5MzRBQSAvKiBTdHJ1Y3R1cmVDaGFpbi5oICovLAogCQkJCTUzN0ZF
RUM4Mjc0MkJEQTMwMEM5RUZFRSAvKiBTdHJ1Y3R1cmVJRC5oICovLAorCQkJCTJBQUFBMzEwMThC
RDQ5RDEwMDM5NENDOCAvKiBTdHJ1Y3R1cmVJREJsb2IuaCAqLywKIAkJCQkwRkQyQzkyMzE2RDAx
RUU5MDBDNzgwM0YgLyogU3RydWN0dXJlSW5saW5lcy5oICovLAogCQkJCUMyRjBGMkQwMTZCQUVF
RTkwMDE4N0MxOSAvKiBTdHJ1Y3R1cmVSYXJlRGF0YS5jcHAgKi8sCiAJCQkJQzJGRTE4QTMxNkJB
RUM0MDAwQUYzMDYxIC8qIFN0cnVjdHVyZVJhcmVEYXRhLmggKi8sCkBAIC0xMDE1Nyw3ICsxMDE2
MCw2IEBACiAJCQkJQTUzOThGQUIxQzc1MERBNDAwNjBBOTYzIC8qIEhlYXBQcm9maWxlci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQTU0QzJBQjExQzY1NDRGMjAwQTE4RDc4IC8qIEhlYXBTbmFwc2hv
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTUzMTFDMzYxQzc3Q0VDNTAwRTZCMUI2IC8qIEhlYXBT
bmFwc2hvdEJ1aWxkZXIuaCBpbiBIZWFkZXJzICovLAotCQkJCUZFMkNDOTMwMjc1NkIyQjkwMDNG
NUFCOCAvKiBIZWFwU3Vic3BhY2VUeXBlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZBREU2NzMx
RDREMjNCRTAwNzY4NDU3IC8qIEhlYXBVdGlsLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRTFCRDAy
NTFFNzIwNTM4MDAxMzRCQzkgLyogSGVhcFZlcmlmaWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlE
QzIxNDMwNzFDQTMyRTU1MDAwQTg4NjkgLyogSUNTdGF0cy5oIGluIEhlYWRlcnMgKi8sCkBAIC0x
MDI3NCw3ICsxMDI3Niw2IEBACiAJCQkJMEZCNDY3ODExRkREQTZGNzAwM0ZDQjA5IC8qIElzb0Nl
bGxTZXRJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlFM0JGMUJBRTIzOEFBRURCMDAzQTFD
MkIgLyogSXNvSGVhcENlbGxUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlFM0M4RUQ0MzIzQTFE
QkNCMDAxMzE5NTggLyogSXNvSW5saW5lZEhlYXBDZWxsVHlwZS5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJRkU2NUIxNTEyNzQ4NjAxRjAwREI1QjE2IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGVJbmxp
bmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MzdGRUVEMTI3NDJCREUxMDBDOUVGRUUgLyogSXNv
TWVtb3J5QWxsb2NhdG9yQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTM3RkVFQ0UyNzQyQkRF
MTAwQzlFRkVFIC8qIElzb01lbW9yeUFsbG9jYXRvckJhc2VJbmxpbmVzLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwRkRDRTEyRDFGQUZCNEU1MDA2RjM5MDEgLyogSXNvU3Vic3BhY2UuaCBpbiBIZWFk
ZXJzICovLApAQCAtMTA0MjUsNiArMTA0MjYsNyBAQAogCQkJCUUzM0Y1MDgxMUI4NDI5QTQwMDQx
Mzg1NiAvKiBKU0ludGVybmFsUHJvbWlzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTMzRjUwNzkx
Qjg0MjI1NzAwNDEzODU2IC8qIEpTSW50ZXJuYWxQcm9taXNlQ29uc3RydWN0b3IuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUUzM0Y1MDg3MUI4NDQ5RUYwMDQxMzg1NiAvKiBKU0ludGVybmFsUHJvbWlz
ZUNvbnN0cnVjdG9yLmx1dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkU2NUIxNTEyNzQ4NjAxRjAw
REI1QjE2IC8qIElzb0lubGluZWRIZWFwQ2VsbFR5cGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLywK
IAkJCQlFMzNGNTA3NTFCODQyMUMwMDA0MTM4NTYgLyogSlNJbnRlcm5hbFByb21pc2VQcm90b3R5
cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUE1MDNGQTFFMTg4RTBGQjAwMDExMEYxNCAvKiBKU0ph
dmFTY3JpcHRDYWxsRnJhbWVQcm90b3R5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMThDNDE2
MEUxNkY1Q0QwMEIzNDQ2MCAvKiBKU0xleGljYWxFbnZpcm9ubWVudC5oIGluIEhlYWRlcnMgKi8s
CkBAIC0xMDgzMCw2ICsxMDgzMiw3IEBACiAJCQkJNzk4Njk0M0IxRjhDMEFDQzAwOTIzMkFFIC8q
IFN0cnVjdHVyZUNhY2hlLmggaW4gSGVhZGVycyAqLywKIAkJCQk3RTRFRTcwOTBFQkI3OTYzMDA1
OTM0QUEgLyogU3RydWN0dXJlQ2hhaW4uaCBpbiBIZWFkZXJzICovLAogCQkJCTUzN0ZFRUM5Mjc0
MkJEQTMwMEM5RUZFRSAvKiBTdHJ1Y3R1cmVJRC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkFBQUEz
MTIxOEJENDlEMTAwMzk0Q0M4IC8qIFN0cnVjdHVyZUlEQmxvYi5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMEZEMkM5MjQxNkQwMUVFOTAwQzc4MDNGIC8qIFN0cnVjdHVyZUlubGluZXMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUMyRkUxOEE0MTZCQUVDNDAwMEFGMzA2MSAvKiBTdHJ1Y3R1cmVSYXJlRGF0
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzIwQkE5MkQxNkJCMUMxNTAwQjNBRUEyIC8qIFN0cnVj
dHVyZVJhcmVEYXRhSW5saW5lcy5oIGluIEhlYWRlcnMgKi8sCkBAIC0xMDk1Miw2ICsxMDk1NSw3
IEBACiAJCQkJRTMzN0I5NjcyMjQzMjRFQTAwOTNBODIwIC8qIFdhc21DYXBhYmlsaXRpZXMuaCBp
biBIZWFkZXJzICovLAogCQkJCTUyNkFDNEI3MUU5NzdDNUQwMDM1MDBFMSAvKiBXYXNtQ29kZUJs
b2NrLmggaW4gSGVhZGVycyAqLywKIAkJCQlFM0JEMkI3NjIyRjI3NTAyMDAxMTc2NUMgLyogV2Fz
bUNvbXBpbGF0aW9uTW9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkUyQ0M5MzAyNzU2QjJCOTAw
M0Y1QUI4IC8qIEhlYXBTdWJzcGFjZVR5cGVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlBRDQxMkIz
NDFFN0IyRTlFMDA4QUYxNTcgLyogV2FzbUNvbnRleHQuaCBpbiBIZWFkZXJzICovLAogCQkJCTc1
OTNDODk4QkU3MTRBNjRCRTkzQTZFNyAvKiBXYXNtQ29udGV4dElubGluZXMuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUUzNkNDOTQ3MjA4NjMxNEYwMDUxRkZENiAvKiBXYXNtQ3JlYXRpb25Nb2RlLmgg
aW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvdGVzdG1hc20uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci90ZXN0bWFz
bS5jcHAKaW5kZXggMWMzNGE0ZmZiZDdjMjkwMDg1MjZlZjRkMTIyMjE2MzQ1M2M3ZmRhNS4uN2Vh
OTA1YzQ1YjU2MWI5ODQzNTYxMWFhOGY0ZDhlOTA3ODBiMmMzMyAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci90ZXN0bWFzbS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Fzc2VtYmxlci90ZXN0bWFzbS5jcHAKQEAgLTU2MTMsNyArNTYxMyw2IEBAIHN0
YXRpYyB2b2lkIHRlc3RCcmFuY2hJZlR5cGUoKQogICAgIHN0cnVjdCBDZWxsTGlrZSB7CiAgICAg
ICAgIHVpbnQzMl90IHN0cnVjdHVyZUlEOwogICAgICAgICB1aW50OF90IGluZGV4aW5nVHlwZTsK
LSAgICAgICAgdWludDhfdCBjZWxsU3RhdGU7CiAgICAgICAgIEpTVHlwZSB0eXBlOwogICAgIH07
CiAgICAgQ0hFQ0tfRVEoSlNDZWxsOjp0eXBlSW5mb1R5cGVPZmZzZXQoKSwgT0JKRUNUX09GRlNF
VE9GKENlbGxMaWtlLCB0eXBlKSk7CkBAIC01NjQ4LDcgKzU2NDcsNiBAQCBzdGF0aWMgdm9pZCB0
ZXN0QnJhbmNoSWZOb3RUeXBlKCkKICAgICBzdHJ1Y3QgQ2VsbExpa2UgewogICAgICAgICB1aW50
MzJfdCBzdHJ1Y3R1cmVJRDsKICAgICAgICAgdWludDhfdCBpbmRleGluZ1R5cGU7Ci0gICAgICAg
IHVpbnQ4X3QgY2VsbFN0YXRlOwogICAgICAgICBKU1R5cGUgdHlwZTsKICAgICB9OwogICAgIENI
RUNLX0VRKEpTQ2VsbDo6dHlwZUluZm9UeXBlT2Zmc2V0KCksIE9CSkVDVF9PRkZTRVRPRihDZWxs
TGlrZSwgdHlwZSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExB
YnN0cmFjdEhlYXBSZXBvc2l0b3J5LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRM
QWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5jcHAKaW5kZXggNjk2MWFlMWNhN2Y0OTRkNmRkZDk5ZWVl
MzMyZjgzYjEzODdiNTRmOS4uMjNlMGM4ZTRjYjZiZDk2ZGMzMzFlMzBjMmQxOWNhNjNkMjgyNTI0
ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExBYnN0cmFjdEhlYXBS
ZXBvc2l0b3J5LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0
SGVhcFJlcG9zaXRvcnkuY3BwCkBAIC03OCw5ICs3OCw5IEBAIEFic3RyYWN0SGVhcFJlcG9zaXRv
cnk6OkFic3RyYWN0SGVhcFJlcG9zaXRvcnkoKQogCiAgICAgLy8gTWFrZSBzdXJlIHRoYXQgb3Vy
IGV4cGxpY2l0IGFzc3VtcHRpb25zIGFib3V0IHRoZSBTdHJ1Y3R1cmVJREJsb2IgbWF0Y2ggcmVh
bGl0eS4KICAgICBSRUxFQVNFX0FTU0VSVCghKEpTQ2VsbF9pbmRleGluZ1R5cGVBbmRNaXNjLm9m
ZnNldCgpICYgKHNpemVvZihpbnQzMl90KSAtIDEpKSk7Ci0gICAgUkVMRUFTRV9BU1NFUlQoSlND
ZWxsX2luZGV4aW5nVHlwZUFuZE1pc2Mub2Zmc2V0KCkgKyAxID09IEpTQ2VsbF9jZWxsU3RhdGUu
b2Zmc2V0KCkpOwotICAgIFJFTEVBU0VfQVNTRVJUKEpTQ2VsbF9pbmRleGluZ1R5cGVBbmRNaXNj
Lm9mZnNldCgpICsgMiA9PSBKU0NlbGxfdHlwZUluZm9UeXBlLm9mZnNldCgpKTsKLSAgICBSRUxF
QVNFX0FTU0VSVChKU0NlbGxfaW5kZXhpbmdUeXBlQW5kTWlzYy5vZmZzZXQoKSArIDMgPT0gSlND
ZWxsX3R5cGVJbmZvRmxhZ3Mub2Zmc2V0KCkpOworICAgIFJFTEVBU0VfQVNTRVJUKEpTQ2VsbF9p
bmRleGluZ1R5cGVBbmRNaXNjLm9mZnNldCgpICsgMSA9PSBKU0NlbGxfdHlwZUluZm9UeXBlLm9m
ZnNldCgpKTsKKyAgICBSRUxFQVNFX0FTU0VSVChKU0NlbGxfaW5kZXhpbmdUeXBlQW5kTWlzYy5v
ZmZzZXQoKSArIDIgPT0gSlNDZWxsX3R5cGVJbmZvRmxhZ3Mub2Zmc2V0KCkpOworICAgIFJFTEVB
U0VfQVNTRVJUKEpTQ2VsbF9pbmRleGluZ1R5cGVBbmRNaXNjLm9mZnNldCgpICsgMyA9PSBKU0Nl
bGxfY2VsbFN0YXRlLm9mZnNldCgpKTsKIAogICAgIEpTQ2VsbF9zdHJ1Y3R1cmVJRC5jaGFuZ2VQ
YXJlbnQoJkpTQ2VsbF9oZWFkZXIpOwogICAgIEpTQ2VsbF91c2VmdWxCeXRlcy5jaGFuZ2VQYXJl
bnQoJkpTQ2VsbF9oZWFkZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0
bC9GVExBYnN0cmFjdEhlYXBSZXBvc2l0b3J5LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRs
L0ZUTEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaAppbmRleCBmZTJhYzVjZjJmMzMwZDBlYmYzOTZi
MTViMTU1YTdlMjVkZGVkNDdmLi4zMTVmOTBkNGNlYTIzOTk2ZGQwNzI4YjZiNmJkY2I0ODRiYmIx
ZTYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0SGVh
cFJlcG9zaXRvcnkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0
SGVhcFJlcG9zaXRvcnkuaApAQCAtMTQ5LDYgKzE0OSw3IEBAIG5hbWVzcGFjZSBKU0MgeyBuYW1l
c3BhY2UgRlRMIHsKICAgICBtYWNybyhTdHJ1Y3R1cmVfb3V0T2ZMaW5lVHlwZUZsYWdzLCBTdHJ1
Y3R1cmU6Om91dE9mTGluZVR5cGVGbGFnc09mZnNldCgpKSBcCiAgICAgbWFjcm8oU3RydWN0dXJl
X3ByZXZpb3VzT3JSYXJlRGF0YSwgU3RydWN0dXJlOjpwcmV2aW91c09yUmFyZURhdGFPZmZzZXQo
KSkgXAogICAgIG1hY3JvKFN0cnVjdHVyZV9wcm90b3R5cGUsIFN0cnVjdHVyZTo6cHJvdG90eXBl
T2Zmc2V0KCkpIFwKKyAgICBtYWNybyhTdHJ1Y3R1cmVfc3RydWN0dXJlSUQsIFN0cnVjdHVyZTo6
c3RydWN0dXJlSURPZmZzZXQoKSkgXAogICAgIG1hY3JvKFN0cnVjdHVyZVJhcmVEYXRhX2NhY2hl
ZEtleXMsIFN0cnVjdHVyZVJhcmVEYXRhOjpvZmZzZXRPZkNhY2hlZFByb3BlcnR5TmFtZXMoQ2Fj
aGVkUHJvcGVydHlOYW1lc0tpbmQ6OktleXMpKSBcCiAgICAgbWFjcm8oU3RydWN0dXJlUmFyZURh
dGFfY2FjaGVkR2V0T3duUHJvcGVydHlOYW1lcywgU3RydWN0dXJlUmFyZURhdGE6Om9mZnNldE9m
Q2FjaGVkUHJvcGVydHlOYW1lcyhDYWNoZWRQcm9wZXJ0eU5hbWVzS2luZDo6R2V0T3duUHJvcGVy
dHlOYW1lcykpIFwKICAgICBtYWNybyhTdHJ1Y3R1cmVSYXJlRGF0YV9jYWNoZWRQcm9wZXJ0eU5h
bWVFbnVtZXJhdG9yQW5kRmxhZywgU3RydWN0dXJlUmFyZURhdGE6Om9mZnNldE9mQ2FjaGVkUHJv
cGVydHlOYW1lRW51bWVyYXRvckFuZEZsYWcoKSkgXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCmluZGV4IDgyMjg4NmQzYWYzMTRjNDMzODVmNDQzNjVh
ZmJjN2Q3YjkwOGYzNmUuLjAwZWRhNTZhODM1ODFhZWVlMDI0YzFmZjI1M2YwYzIwYTZkM2Q0NDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAKQEAg
LTE2ODAyLDcgKzE2ODAyLDcgQEAgSUdOT1JFX0NMQU5HX1dBUk5JTkdTX0VORAogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgTFZhbHVlIGlkID0gbV9vdXQuYml0QW5k
KG1fb3V0LmNhc3RUb0ludDMyKHN0cnVjdHVyZSksIG1fb3V0LmNvbnN0SW50MzIoc3RydWN0dXJl
SURNYXNrKSk7CisgICAgICAgIExWYWx1ZSBpZCA9IG1fb3V0LmxvYWQzMihzdHJ1Y3R1cmUsIG1f
aGVhcHMuU3RydWN0dXJlX3N0cnVjdHVyZUlEKTsKICAgICAgICAgbV9vdXQuc3RvcmUzMihpZCwg
b2JqZWN0LCBtX2hlYXBzLkpTQ2VsbF9zdHJ1Y3R1cmVJRCk7CiAKICAgICAgICAgTFZhbHVlIGJs
b2IgPSBtX291dC5sb2FkMzIoc3RydWN0dXJlLCBtX2hlYXBzLlN0cnVjdHVyZV9pbmRleGluZ01v
ZGVJbmNsdWRpbmdIaXN0b3J5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvQXNzZW1ibHlIZWxwZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0Fzc2VtYmx5
SGVscGVycy5oCmluZGV4IDBiMzhkNTRmMmY2NjJmMzI3MzY4ZDk2NmJiNmExOTMxYTQ0N2FhMjcu
LmM2ZWY1NTEyMmUzNzRlYTg5YjdmNTQ3NmQ0NmMxMDdhMTliMzcxNTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvQXNzZW1ibHlIZWxwZXJzLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9Bc3NlbWJseUhlbHBlcnMuaApAQCAtMTU4NywxNCArMTU4NywxNCBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIGVtaXRTdG9yZVN0cnVjdHVyZVdpdGhUeXBlSW5mbyhSZWdp
c3RlcklEIHN0cnVjdHVyZSwgUmVnaXN0ZXJJRCBkZXN0LCBSZWdpc3RlcklEIHNjcmF0Y2gpCiAg
ICAgeworI2lmIFVTRShKU1ZBTFVFNjQpCisgICAgICAgIGxvYWQ2NChNYWNyb0Fzc2VtYmxlcjo6
QWRkcmVzcyhzdHJ1Y3R1cmUsIFN0cnVjdHVyZTo6c3RydWN0dXJlSURPZmZzZXQoKSksIHNjcmF0
Y2gpOworICAgICAgICBzdG9yZTY0KHNjcmF0Y2gsIE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNzKGRl
c3QsIEpTQ2VsbDo6c3RydWN0dXJlSURPZmZzZXQoKSkpOworI2Vsc2UKICAgICAgICAgLy8gU3Rv
cmUgYWxsIHRoZSBpbmZvIGZsYWdzIHVzaW5nIGEgc2luZ2xlIDMyLWJpdCB3aWRlIGxvYWQgYW5k
IHN0b3JlLgogICAgICAgICBsb2FkMzIoTWFjcm9Bc3NlbWJsZXI6OkFkZHJlc3Moc3RydWN0dXJl
LCBTdHJ1Y3R1cmU6OmluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnlPZmZzZXQoKSksIHNjcmF0
Y2gpOwogICAgICAgICBzdG9yZTMyKHNjcmF0Y2gsIE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNzKGRl
c3QsIEpTQ2VsbDo6aW5kZXhpbmdUeXBlQW5kTWlzY09mZnNldCgpKSk7CiAKLSNpZiBDUFUoQURE
UkVTUzY0KQotICAgICAgICBhbmQzMihNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyKHN0cnVj
dHVyZUlETWFzayksIHN0cnVjdHVyZSwgc2NyYXRjaCk7Ci0gICAgICAgIHN0b3JlMzIoc2NyYXRj
aCwgTWFjcm9Bc3NlbWJsZXI6OkFkZHJlc3MoZGVzdCwgSlNDZWxsOjpzdHJ1Y3R1cmVJRE9mZnNl
dCgpKSk7Ci0jZWxzZQogICAgICAgICAvLyBTdG9yZSB0aGUgU3RydWN0dXJlSUQKICAgICAgICAg
c3RvcmVQdHIoc3RydWN0dXJlLCBNYWNyb0Fzc2VtYmxlcjo6QWRkcmVzcyhkZXN0LCBKU0NlbGw6
OnN0cnVjdHVyZUlET2Zmc2V0KCkpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ppdC9KSVRQcm9wZXJ0eUFjY2Vzcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVFByb3BlcnR5QWNjZXNzLmNwcAppbmRleCAxMzlkZGYzODY3Zjg1YWVlZDc2NDMx
ZjljZjA4MGMzNWM3MjBlMjQwLi4yMzFhYTk5YjhiNjdkNzNjZGE4MGZhYTRiZDdiY2UxZDEzNDhl
MzFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFByb3BlcnR5QWNj
ZXNzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFByb3BlcnR5QWNjZXNz
LmNwcApAQCAtMjQ2NCw3ICsyNDY0LDcgQEAgdm9pZCBKSVQ6OmVtaXRfb3BfcHV0X3RvX3Njb3Bl
KGNvbnN0IEluc3RydWN0aW9uKiBjdXJyZW50SW5zdHJ1Y3Rpb24pCiAgICAgICAgICAgICBsb2Fk
UHRyRnJvbU1ldGFkYXRhKGJ5dGVjb2RlLCBPcFB1dFRvU2NvcGU6Ok1ldGFkYXRhOjpvZmZzZXRP
ZlN0cnVjdHVyZSgpLCBzY3JhdGNoR1BSMSk7CiAgICAgICAgICAgICBlbWl0R2V0VmlydHVhbFJl
Z2lzdGVyUGF5bG9hZChzY29wZSwgc2NvcGVHUFIpOwogICAgICAgICAgICAgYWRkU2xvd0Nhc2Uo
YnJhbmNoVGVzdFB0cihaZXJvLCBzY3JhdGNoR1BSMSkpOwotICAgICAgICAgICAgYW5kMzIoVHJ1
c3RlZEltbTMyKHN0cnVjdHVyZUlETWFzayksIHNjcmF0Y2hHUFIxKTsKKyAgICAgICAgICAgIGxv
YWQzMihBZGRyZXNzKHNjcmF0Y2hHUFIxLCBTdHJ1Y3R1cmU6OnN0cnVjdHVyZUlET2Zmc2V0KCkp
LCBzY3JhdGNoR1BSMSk7CiAgICAgICAgICAgICBhZGRTbG93Q2FzZShicmFuY2gzMihOb3RFcXVh
bCwgQWRkcmVzcyhzY29wZUdQUiwgSlNDZWxsOjpzdHJ1Y3R1cmVJRE9mZnNldCgpKSwgc2NyYXRj
aEdQUjEpKTsKIAogICAgICAgICAgICAgZW1pdEdldFZpcnR1YWxSZWdpc3Rlcih2YWx1ZSwgdmFs
dWVKU1IpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxs
LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAppbmRleCA2YmMxNmQ3
MmZiYzM3MzdjYzFlMTEwYWRjNjM1YTIzZGQyNWJhMTQxLi43Yzg4ODM0MzkyYjAxNjQzYTFjNTg3
ODBkZGVkOTVmNmM0MjViM2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwu
aApAQCAtMjY2LDkgKzI2Niw5IEBAIHByaXZhdGU6CiAKICAgICBTdHJ1Y3R1cmVJRCBtX3N0cnVj
dHVyZUlEOwogICAgIEluZGV4aW5nVHlwZSBtX2luZGV4aW5nVHlwZUFuZE1pc2M7IC8vIERPIE5P
VCBzdG9yZSB0byB0aGlzIGZpZWxkLiBBbHdheXMgQ0FTLgotICAgIENlbGxTdGF0ZSBtX2NlbGxT
dGF0ZTsKICAgICBKU1R5cGUgbV90eXBlOwogICAgIFR5cGVJbmZvOjpJbmxpbmVUeXBlRmxhZ3Mg
bV9mbGFnczsKKyAgICBDZWxsU3RhdGUgbV9jZWxsU3RhdGU7CiB9OwogCiBjbGFzcyBKU0NlbGxM
b2NrIDogcHVibGljIEpTQ2VsbCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0NlbGxJbmxpbmVzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0NlbGxJbmxpbmVzLmgKaW5kZXggYmQ3M2ZkY2IwYTFmNjJmNmNhMjA2MDEwMTU4M2RkZmM4MDc2
NmFjNy4uNzFlY2FhOGI5YmYzNWVjNzE1ODIxZjZiYTIyODdiMGQ5NDEzMTUwMiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsSW5saW5lcy5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbElubGluZXMuaApAQCAtNTgsOSArNTgs
OSBAQCBpbmxpbmUgSlNDZWxsOjpKU0NlbGwoQ3JlYXRpbmdFYXJseUNlbGxUYWcpCiBpbmxpbmUg
SlNDZWxsOjpKU0NlbGwoVk0mLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKICAgICA6IG1fc3RydWN0
dXJlSUQoc3RydWN0dXJlLT5pZCgpKQogICAgICwgbV9pbmRleGluZ1R5cGVBbmRNaXNjKHN0cnVj
dHVyZS0+aW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeSgpKQotICAgICwgbV9jZWxsU3RhdGUo
Q2VsbFN0YXRlOjpEZWZpbml0ZWx5V2hpdGUpCiAgICAgLCBtX3R5cGUoc3RydWN0dXJlLT50eXBl
SW5mbygpLnR5cGUoKSkKICAgICAsIG1fZmxhZ3Moc3RydWN0dXJlLT50eXBlSW5mbygpLmlubGlu
ZVR5cGVGbGFncygpKQorICAgICwgbV9jZWxsU3RhdGUoQ2VsbFN0YXRlOjpEZWZpbml0ZWx5V2hp
dGUpCiB7CiAgICAgQVNTRVJUKCFpc0NvbXBpbGF0aW9uVGhyZWFkKCkpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmNwcAppbmRleCAwZDQ3MTE0MDc4ZTQzMWE4
NWQzYmM2NDA0NmYzMmU4YTM3NzdjOTRiLi5iNjBlM2NiMGUzYmY1NjM4NzMyZjg1YzBkY2IwN2Mz
OTZkM2ZkNjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1
Y3R1cmUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5j
cHAKQEAgLTE5Nyw5ICsxOTcsNyBAQCBpbmxpbmUgdm9pZCBTdHJ1Y3R1cmU6OnZhbGlkYXRlRmxh
Z3MoKSB7IH0KIAogU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU1ZhbHVlIHByb3RvdHlwZSwgY29uc3QgVHlwZUluZm8mIHR5cGVJbmZv
LCBjb25zdCBDbGFzc0luZm8qIGNsYXNzSW5mbywgSW5kZXhpbmdUeXBlIGluZGV4aW5nVHlwZSwg
dW5zaWduZWQgaW5saW5lQ2FwYWNpdHkpCiAgICAgOiBKU0NlbGwodm0sIHZtLnN0cnVjdHVyZVN0
cnVjdHVyZS5nZXQoKSkKLSAgICAsIG1fY2VsbEhlYWRlckluZGV4aW5nTW9kZUluY2x1ZGluZ0hp
c3RvcnkoaW5kZXhpbmdUeXBlKQotICAgICwgbV9jZWxsSGVhZGVyVHlwZSh0eXBlSW5mby50eXBl
KCkpCi0gICAgLCBtX2NlbGxIZWFkZXJJbmxpbmVUeXBlRmxhZ3ModHlwZUluZm8uaW5saW5lVHlw
ZUZsYWdzKCkpCisgICAgLCBtX2Jsb2IoU3RydWN0dXJlSUQ6OmVuY29kZSh0aGlzKSwgaW5kZXhp
bmdUeXBlLCB0eXBlSW5mbykKICAgICAsIG1fb3V0T2ZMaW5lVHlwZUZsYWdzKHR5cGVJbmZvLm91
dE9mTGluZVR5cGVGbGFncygpKQogICAgICwgbV9pbmxpbmVDYXBhY2l0eShpbmxpbmVDYXBhY2l0
eSkKICAgICAsIG1fYml0RmllbGQoMCkKQEAgLTI0MCw4ICsyMzgsNiBAQCBjb25zdCBDbGFzc0lu
Zm8gU3RydWN0dXJlOjpzX2luZm8gPSB7ICJTdHJ1Y3R1cmUiLCBudWxscHRyLCBudWxscHRyLCBu
dWxscHRyLCBDUgogCiBTdHJ1Y3R1cmU6OlN0cnVjdHVyZShWTSYgdm0sIENyZWF0aW5nRWFybHlD
ZWxsVGFnKQogICAgIDogSlNDZWxsKENyZWF0aW5nRWFybHlDZWxsKQotICAgICwgbV9jZWxsSGVh
ZGVySW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeShOb0luZGV4aW5nU2hhcGUpCi0gICAgLCBt
X2NlbGxIZWFkZXJUeXBlKFN0cnVjdHVyZVR5cGUpCiAgICAgLCBtX2lubGluZUNhcGFjaXR5KDAp
CiAgICAgLCBtX2JpdEZpZWxkKDApCiAgICAgLCBtX3Byb3RvdHlwZSh2bSwgdGhpcywganNOdWxs
KCkpCkBAIC0yNjgsNyArMjY0LDcgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBDcmVh
dGluZ0Vhcmx5Q2VsbFRhZykKICAgICBzZXRNYXhPZmZzZXQodm0sIGludmFsaWRPZmZzZXQpOwog
IAogICAgIFR5cGVJbmZvIHR5cGVJbmZvID0gVHlwZUluZm8oU3RydWN0dXJlVHlwZSwgU3RydWN0
dXJlRmxhZ3MpOwotICAgIG1fY2VsbEhlYWRlcklubGluZVR5cGVGbGFncyA9IHR5cGVJbmZvLmlu
bGluZVR5cGVGbGFncygpOworICAgIG1fYmxvYiA9IFN0cnVjdHVyZUlEQmxvYihTdHJ1Y3R1cmVJ
RDo6ZW5jb2RlKHRoaXMpLCAwLCB0eXBlSW5mbyk7CiAgICAgbV9vdXRPZkxpbmVUeXBlRmxhZ3Mg
PSB0eXBlSW5mby5vdXRPZkxpbmVUeXBlRmxhZ3MoKTsKIAogICAgIEFTU0VSVChoYXNSZWFkT25s
eU9yR2V0dGVyU2V0dGVyUHJvcGVydGllc0V4Y2x1ZGluZ1Byb3RvKCkgfHwgIW1fY2xhc3NJbmZv
LT5oYXNTdGF0aWNTZXR0ZXJPclJlYWRvbmx5UHJvcGVydGllcygpKTsKQEAgLTI3OCwxMCArMjc0
LDYgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBDcmVhdGluZ0Vhcmx5Q2VsbFRhZykK
IAogU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHByZXZpb3VzLCBEZWZl
cnJlZFN0cnVjdHVyZVRyYW5zaXRpb25XYXRjaHBvaW50RmlyZSogZGVmZXJyZWQpCiAgICAgOiBK
U0NlbGwodm0sIHZtLnN0cnVjdHVyZVN0cnVjdHVyZS5nZXQoKSkKLSAgICAsIG1fY2VsbEhlYWRl
ckluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkocHJldmlvdXMtPm1fY2VsbEhlYWRlckluZGV4
aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkpCi0gICAgLCBtX2NlbGxIZWFkZXJUeXBlKHByZXZpb3Vz
LT5tX2NlbGxIZWFkZXJUeXBlKQotICAgICwgbV9jZWxsSGVhZGVySW5saW5lVHlwZUZsYWdzKHBy
ZXZpb3VzLT5tX2NlbGxIZWFkZXJJbmxpbmVUeXBlRmxhZ3MpCi0gICAgLCBtX291dE9mTGluZVR5
cGVGbGFncyhwcmV2aW91cy0+bV9vdXRPZkxpbmVUeXBlRmxhZ3MpCiAgICAgLCBtX2lubGluZUNh
cGFjaXR5KHByZXZpb3VzLT5tX2lubGluZUNhcGFjaXR5KQogICAgICwgbV9iaXRGaWVsZCgwKQog
ICAgICwgbV9wcm90b3R5cGUodm0sIHRoaXMsIHByZXZpb3VzLT5tX3Byb3RvdHlwZS5nZXQoKSkK
QEAgLTMwOCw2ICszMDAsMTAgQEAgU3RydWN0dXJlOjpTdHJ1Y3R1cmUoVk0mIHZtLCBTdHJ1Y3R1
cmUqIHByZXZpb3VzLCBEZWZlcnJlZFN0cnVjdHVyZVRyYW5zaXRpb25XYXQKICAgICBzZXRUcmFu
c2l0aW9uT2Zmc2V0KHZtLCBpbnZhbGlkT2Zmc2V0KTsKICAgICBzZXRNYXhPZmZzZXQodm0sIGlu
dmFsaWRPZmZzZXQpOwogIAorICAgIFR5cGVJbmZvIHR5cGVJbmZvID0gcHJldmlvdXMtPnR5cGVJ
bmZvKCk7CisgICAgbV9ibG9iID0gU3RydWN0dXJlSURCbG9iKFN0cnVjdHVyZUlEOjplbmNvZGUo
dGhpcyksIHByZXZpb3VzLT5pbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KCksIHR5cGVJbmZv
KTsKKyAgICBtX291dE9mTGluZVR5cGVGbGFncyA9IHR5cGVJbmZvLm91dE9mTGluZVR5cGVGbGFn
cygpOworCiAgICAgQVNTRVJUKCFwcmV2aW91cy0+dHlwZUluZm8oKS5zdHJ1Y3R1cmVJc0ltbW9y
dGFsKCkpOwogICAgIHNldFByZXZpb3VzSUQodm0sIHByZXZpb3VzKTsKIApAQCAtNTMzLDcgKzUy
OSw3IEBAIFN0cnVjdHVyZSogU3RydWN0dXJlOjphZGROZXdQcm9wZXJ0eVRyYW5zaXRpb24oVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUHJvCiAgICAgICAgIHRyYW5zaXRpb24tPnNldFBy
b3RlY3RQcm9wZXJ0eVRhYmxlV2hpbGVUcmFuc2l0aW9uaW5nKHRydWUpOwogICAgIH0KIAotICAg
IHRyYW5zaXRpb24tPm1fY2VsbEhlYWRlckluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkgPSBz
dHJ1Y3R1cmUtPmluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkoKSAmIH5Db3B5T25Xcml0ZTsK
KyAgICB0cmFuc2l0aW9uLT5tX2Jsb2Iuc2V0SW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeShz
dHJ1Y3R1cmUtPmluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkoKSAmIH5Db3B5T25Xcml0ZSk7
CiAgICAgdHJhbnNpdGlvbi0+bV90cmFuc2l0aW9uUHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1l
LnVpZCgpOwogICAgIHRyYW5zaXRpb24tPnNldFRyYW5zaXRpb25Qcm9wZXJ0eUF0dHJpYnV0ZXMo
YXR0cmlidXRlcyk7CiAgICAgdHJhbnNpdGlvbi0+c2V0VHJhbnNpdGlvbktpbmQoVHJhbnNpdGlv
bktpbmQ6OlByb3BlcnR5QWRkaXRpb24pOwpAQCAtNjMwLDcgKzYyNiw3IEBAIFN0cnVjdHVyZSog
U3RydWN0dXJlOjpyZW1vdmVOZXdQcm9wZXJ0eVRyYW5zaXRpb24oVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSwKICAgICAgICAgdHJhbnNpdGlvbi0+c2V0UHJvdGVjdFByb3BlcnR5VGFibGVX
aGlsZVRyYW5zaXRpb25pbmcodHJ1ZSk7CiAgICAgfQogCi0gICAgdHJhbnNpdGlvbi0+bV9jZWxs
SGVhZGVySW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeSA9IHN0cnVjdHVyZS0+aW5kZXhpbmdN
b2RlSW5jbHVkaW5nSGlzdG9yeSgpICYgfkNvcHlPbldyaXRlOworICAgIHRyYW5zaXRpb24tPm1f
YmxvYi5zZXRJbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KHN0cnVjdHVyZS0+aW5kZXhpbmdN
b2RlSW5jbHVkaW5nSGlzdG9yeSgpICYgfkNvcHlPbldyaXRlKTsKICAgICB0cmFuc2l0aW9uLT5t
X3RyYW5zaXRpb25Qcm9wZXJ0eU5hbWUgPSBwcm9wZXJ0eU5hbWUudWlkKCk7CiAgICAgdHJhbnNp
dGlvbi0+c2V0VHJhbnNpdGlvbktpbmQoVHJhbnNpdGlvbktpbmQ6OlByb3BlcnR5RGVsZXRpb24p
OwogICAgIHRyYW5zaXRpb24tPnNldFByb3BlcnR5VGFibGUodm0sIHN0cnVjdHVyZS0+dGFrZVBy
b3BlcnR5VGFibGVPckNsb25lSWZQaW5uZWQodm0pKTsKQEAgLTcyNCw3ICs3MjAsNyBAQCBTdHJ1
Y3R1cmUqIFN0cnVjdHVyZTo6YXR0cmlidXRlQ2hhbmdlVHJhbnNpdGlvbihWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlLCBQcgogICAgICAgICB0cmFuc2l0aW9uLT5zZXRQcm90ZWN0UHJvcGVy
dHlUYWJsZVdoaWxlVHJhbnNpdGlvbmluZyh0cnVlKTsKICAgICB9CiAKLSAgICB0cmFuc2l0aW9u
LT5tX2NlbGxIZWFkZXJJbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5ID0gc3RydWN0dXJlLT5p
bmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KCkgJiB+Q29weU9uV3JpdGU7CisgICAgdHJhbnNp
dGlvbi0+bV9ibG9iLnNldEluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3Rvcnkoc3RydWN0dXJlLT5p
bmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KCkgJiB+Q29weU9uV3JpdGUpOwogICAgIHRyYW5z
aXRpb24tPm1fdHJhbnNpdGlvblByb3BlcnR5TmFtZSA9IHByb3BlcnR5TmFtZS51aWQoKTsKICAg
ICB0cmFuc2l0aW9uLT5zZXRUcmFuc2l0aW9uUHJvcGVydHlBdHRyaWJ1dGVzKGF0dHJpYnV0ZXMp
OwogICAgIHRyYW5zaXRpb24tPnNldFRyYW5zaXRpb25LaW5kKFRyYW5zaXRpb25LaW5kOjpQcm9w
ZXJ0eUF0dHJpYnV0ZUNoYW5nZSk7CkBAIC04MjIsNyArODE4LDcgQEAgU3RydWN0dXJlKiBTdHJ1
Y3R1cmU6Om5vblByb3BlcnR5VHJhbnNpdGlvblNsb3coVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgVHIKICAgICAKICAgICBTdHJ1Y3R1cmUqIHRyYW5zaXRpb24gPSBjcmVhdGUodm0sIHN0
cnVjdHVyZSk7CiAgICAgdHJhbnNpdGlvbi0+c2V0VHJhbnNpdGlvbktpbmQodHJhbnNpdGlvbktp
bmQpOwotICAgIHRyYW5zaXRpb24tPm1fY2VsbEhlYWRlckluZGV4aW5nTW9kZUluY2x1ZGluZ0hp
c3RvcnkgPSBpbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5OworICAgIHRyYW5zaXRpb24tPm1f
YmxvYi5zZXRJbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KGluZGV4aW5nTW9kZUluY2x1ZGlu
Z0hpc3RvcnkpOwogICAgIAogICAgIGlmIChwcmV2ZW50c0V4dGVuc2lvbnModHJhbnNpdGlvbktp
bmQpKQogICAgICAgICB0cmFuc2l0aW9uLT5zZXREaWRQcmV2ZW50RXh0ZW5zaW9ucyh0cnVlKTsK
QEAgLTE1NTAsNyArMTU0Niw3IEBAIFN0cnVjdHVyZSogU3RydWN0dXJlOjpzZXRCcmFuZFRyYW5z
aXRpb24oVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgU3ltYm9sKiBiCiAgICAgdHJhbnNp
dGlvbi0+c2V0VHJhbnNpdGlvbktpbmQoVHJhbnNpdGlvbktpbmQ6OlNldEJyYW5kKTsKIAogICAg
IHRyYW5zaXRpb24tPm1fY2FjaGVkUHJvdG90eXBlQ2hhaW4uc2V0TWF5QmVOdWxsKHZtLCB0cmFu
c2l0aW9uLCBzdHJ1Y3R1cmUtPm1fY2FjaGVkUHJvdG90eXBlQ2hhaW4uZ2V0KCkpOwotICAgIHRy
YW5zaXRpb24tPm1fY2VsbEhlYWRlckluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkgPSBzdHJ1
Y3R1cmUtPmluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkoKTsKKyAgICB0cmFuc2l0aW9uLT5t
X2Jsb2Iuc2V0SW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeShzdHJ1Y3R1cmUtPmluZGV4aW5n
TW9kZUluY2x1ZGluZ0hpc3RvcnkoKSk7CiAgICAgdHJhbnNpdGlvbi0+bV90cmFuc2l0aW9uUHJv
cGVydHlOYW1lID0gJmJyYW5kLT51aWQoKTsKICAgICB0cmFuc2l0aW9uLT5zZXRUcmFuc2l0aW9u
UHJvcGVydHlBdHRyaWJ1dGVzKDApOwogICAgIHRyYW5zaXRpb24tPnNldFByb3BlcnR5VGFibGUo
dm0sIHN0cnVjdHVyZS0+dGFrZVByb3BlcnR5VGFibGVPckNsb25lSWZQaW5uZWQodm0pKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZS5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlLmgKaW5kZXggYTgzZWEyMWY2Yjkz
MDFhMjY5OGQyYmU2NzlkNmVmNGMzYzlkOTEwMC4uNzA0NTc5NjZlMmE0ODkxN2MzMmExNjlmNjBk
ZDU2Yjg1ZWQ5ODhkMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RydWN0dXJlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJl
LmgKQEAgLTM3LDYgKzM3LDcgQEAKICNpbmNsdWRlICJQcm9wZXJ0eU5hbWVBcnJheS5oIgogI2lu
Y2x1ZGUgIlByb3BlcnR5T2Zmc2V0LmgiCiAjaW5jbHVkZSAiUHV0UHJvcGVydHlTbG90LmgiCisj
aW5jbHVkZSAiU3RydWN0dXJlSURCbG9iLmgiCiAjaW5jbHVkZSAiU3RydWN0dXJlUmFyZURhdGEu
aCIKICNpbmNsdWRlICJTdHJ1Y3R1cmVUcmFuc2l0aW9uVGFibGUuaCIKICNpbmNsdWRlICJUaW55
Qmxvb21GaWx0ZXIuaCIKQEAgLTE2NCwxMyArMTY1LDE0IEBAIHByaXZhdGU6CiAgICAgdm9pZCB2
YWxpZGF0ZUZsYWdzKCk7CiAKIHB1YmxpYzoKLSAgICBTdHJ1Y3R1cmVJRCBpZCgpIGNvbnN0IHsg
cmV0dXJuIFN0cnVjdHVyZUlEOjplbmNvZGUodGhpcyk7IH0KLSAgICBpbnQzMl90IG9iamVjdElu
aXRpYWxpemF0aW9uQmxvYigpIGNvbnN0IHsgcmV0dXJuICpyZWludGVycHJldF9jYXN0X3B0cjxj
b25zdCB1aW50MzJfdCo+KCZtX2NlbGxIZWFkZXJJbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5
KTsgfQotICAgIGludDY0X3QgaWRCbG9iKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8dWlu
dDY0X3Q+KG9iamVjdEluaXRpYWxpemF0aW9uQmxvYigpKSA8PCAzMiB8IGlkKCkuYml0cygpOyB9
CisgICAgU3RydWN0dXJlSUQgaWQoKSBjb25zdCB7IEFTU0VSVChtX2Jsb2Iuc3RydWN0dXJlSUQo
KSA9PSBTdHJ1Y3R1cmVJRDo6ZW5jb2RlKHRoaXMpKTsgcmV0dXJuIG1fYmxvYi5zdHJ1Y3R1cmVJ
RCgpOyB9CisgICAgaW50MzJfdCBvYmplY3RJbml0aWFsaXphdGlvbkJsb2IoKSBjb25zdCB7IHJl
dHVybiBtX2Jsb2IuYmxvYkV4Y2x1ZGluZ1N0cnVjdHVyZUlEKCk7IH0KKyAgICBpbnQ2NF90IGlk
QmxvYigpIGNvbnN0IHsgcmV0dXJuIG1fYmxvYi5ibG9iKCk7IH0KIAogICAgIGJvb2wgaXNQcm94
eSgpIGNvbnN0CiAgICAgewotICAgICAgICByZXR1cm4gbV9jZWxsSGVhZGVyVHlwZSA9PSBQdXJl
Rm9yd2FyZGluZ1Byb3h5VHlwZSB8fCBtX2NlbGxIZWFkZXJUeXBlID09IFByb3h5T2JqZWN0VHlw
ZTsKKyAgICAgICAgSlNUeXBlIHR5cGUgPSBtX2Jsb2IudHlwZSgpOworICAgICAgICByZXR1cm4g
dHlwZSA9PSBQdXJlRm9yd2FyZGluZ1Byb3h5VHlwZSB8fCB0eXBlID09IFByb3h5T2JqZWN0VHlw
ZTsKICAgICB9CiAKICAgICBzdGF0aWMgdm9pZCBkdW1wU3RhdGlzdGljcygpOwpAQCAtMjYxLDI2
ICsyNjMsMjIgQEAgcHVibGljOgogICAgIH0KICAgICAKICAgICAvLyBUeXBlIGFjY2Vzc29ycy4K
LSNpZiBDUFUoTkVFRFNfQUxJR05FRF9BQ0NFU1MpCi0gICAgVHlwZUluZm8gdHlwZUluZm8oKSBj
b25zdCB7IHJldHVybiBUeXBlSW5mbyhtX2NlbGxIZWFkZXJUeXBlLCBtX2NlbGxIZWFkZXJJbmxp
bmVUeXBlRmxhZ3MsIG1fb3V0T2ZMaW5lVHlwZUZsYWdzKTsgfQotI2Vsc2UKLSAgICBUeXBlSW5m
byB0eXBlSW5mbygpIGNvbnN0IHsgcmV0dXJuICpyZWludGVycHJldF9jYXN0X3B0cjxjb25zdCBU
eXBlSW5mbyo+KCZtX2NlbGxIZWFkZXJUeXBlKTsgfQotI2VuZGlmCisgICAgVHlwZUluZm8gdHlw
ZUluZm8oKSBjb25zdCB7IHJldHVybiBtX2Jsb2IudHlwZUluZm8obV9vdXRPZkxpbmVUeXBlRmxh
Z3MpOyB9CiAgICAgYm9vbCBpc09iamVjdCgpIGNvbnN0IHsgcmV0dXJuIHR5cGVJbmZvKCkuaXNP
YmplY3QoKTsgfQogcHJvdGVjdGVkOgogICAgIC8vIFlvdSBwcm9iYWJseSB3YW50IHR5cGVJbmZv
KCkudHlwZSgpCiAgICAgSlNUeXBlIHR5cGUoKSB7IHJldHVybiBKU0NlbGw6OnR5cGUoKTsgfQog
cHVibGljOgogCi0gICAgSW5kZXhpbmdUeXBlIGluZGV4aW5nVHlwZSgpIGNvbnN0IHsgcmV0dXJu
IGluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkoKSAmIEFsbFdyaXRhYmxlQXJyYXlUeXBlczsg
fQotICAgIEluZGV4aW5nVHlwZSBpbmRleGluZ01vZGUoKSBjb25zdCAgeyByZXR1cm4gaW5kZXhp
bmdNb2RlSW5jbHVkaW5nSGlzdG9yeSgpICYgQWxsQXJyYXlUeXBlczsgfQorICAgIEluZGV4aW5n
VHlwZSBpbmRleGluZ1R5cGUoKSBjb25zdCB7IHJldHVybiBtX2Jsb2IuaW5kZXhpbmdNb2RlSW5j
bHVkaW5nSGlzdG9yeSgpICYgQWxsV3JpdGFibGVBcnJheVR5cGVzOyB9CisgICAgSW5kZXhpbmdU
eXBlIGluZGV4aW5nTW9kZSgpIGNvbnN0ICB7IHJldHVybiBtX2Jsb2IuaW5kZXhpbmdNb2RlSW5j
bHVkaW5nSGlzdG9yeSgpICYgQWxsQXJyYXlUeXBlczsgfQogICAgIERlcGVuZGVuY3kgZmVuY2Vk
SW5kZXhpbmdNb2RlKEluZGV4aW5nVHlwZSYgaW5kZXhpbmdUeXBlKQogICAgIHsKLSAgICAgICAg
RGVwZW5kZW5jeSBkZXBlbmRlbmN5ID0gRGVwZW5kZW5jeTo6bG9hZEFuZEZlbmNlKCZtX2NlbGxI
ZWFkZXJJbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5LCBpbmRleGluZ1R5cGUpOworICAgICAg
ICBEZXBlbmRlbmN5IGRlcGVuZGVuY3kgPSBtX2Jsb2IuZmVuY2VkSW5kZXhpbmdNb2RlSW5jbHVk
aW5nSGlzdG9yeShpbmRleGluZ1R5cGUpOwogICAgICAgICBpbmRleGluZ1R5cGUgJj0gQWxsQXJy
YXlUeXBlczsKICAgICAgICAgcmV0dXJuIGRlcGVuZGVuY3k7CiAgICAgfQotICAgIEluZGV4aW5n
VHlwZSBpbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9jZWxs
SGVhZGVySW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeTsgfQorICAgIEluZGV4aW5nVHlwZSBp
bmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9ibG9iLmluZGV4
aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkoKTsgfQogICAgICAgICAKICAgICBpbmxpbmUgYm9vbCBt
YXlJbnRlcmNlcHRJbmRleGVkQWNjZXNzZXMoKSBjb25zdDsKICAgICAKQEAgLTU1OSw2ICs1NTcs
MTEgQEAgcHVibGljOgogCiAgICAgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8oKSBjb25zdCB7
IHJldHVybiBtX2NsYXNzSW5mbzsgfQogCisgICAgc3RhdGljIHB0cmRpZmZfdCBzdHJ1Y3R1cmVJ
RE9mZnNldCgpCisgICAgeworICAgICAgICByZXR1cm4gT0JKRUNUX09GRlNFVE9GKFN0cnVjdHVy
ZSwgbV9ibG9iKSArIFN0cnVjdHVyZUlEQmxvYjo6c3RydWN0dXJlSURPZmZzZXQoKTsKKyAgICB9
CisKICAgICBzdGF0aWMgcHRyZGlmZl90IHByb3RvdHlwZU9mZnNldCgpCiAgICAgewogICAgICAg
ICByZXR1cm4gT0JKRUNUX09GRlNFVE9GKFN0cnVjdHVyZSwgbV9wcm90b3R5cGUpOwpAQCAtNTgx
LDcgKzU4NCw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBwdHJkaWZmX3QgaW5kZXhpbmdNb2Rl
SW5jbHVkaW5nSGlzdG9yeU9mZnNldCgpCiAgICAgewotICAgICAgICByZXR1cm4gT0JKRUNUX09G
RlNFVE9GKFN0cnVjdHVyZSwgbV9jZWxsSGVhZGVySW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9y
eSk7CisgICAgICAgIHJldHVybiBPQkpFQ1RfT0ZGU0VUT0YoU3RydWN0dXJlLCBtX2Jsb2IpICsg
U3RydWN0dXJlSURCbG9iOjppbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5T2Zmc2V0KCk7CiAg
ICAgfQogICAgIAogICAgIHN0YXRpYyBwdHJkaWZmX3QgcHJvcGVydHlUYWJsZVVuc2FmZU9mZnNl
dCgpCkBAIC04NTcsMTIgKzg2MCw4IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0ZXhwciBp
bnQgc19tYXhUcmFuc2l0aW9uTGVuZ3RoRm9yTm9uRXZhbFB1dEJ5SWQgPSA1MTI7CiAKICAgICAv
LyBUaGVzZSBuZWVkIHRvIGJlIHByb3Blcmx5IGFsaWduZWQgYXQgdGhlIGJlZ2lubmluZyBvZiB0
aGUgJ1N0cnVjdHVyZScKLSAgICAvLyBwYXJ0IG9mIHRoZSBvYmplY3QuIEFuZCBuZWVkIHRvIG1h
dGNoIHRoZSBvcmRlciBvZiB0aGUgZXF1aXZhbGVudCBwcm9wZXJ0aWVzIGluCi0gICAgLy8gSlND
ZWxsLgotICAgIEluZGV4aW5nVHlwZSBtX2NlbGxIZWFkZXJJbmRleGluZ01vZGVJbmNsdWRpbmdI
aXN0b3J5OwotICAgIGNvbnN0IENlbGxTdGF0ZSBtX2NlbGxIZWFkZXJEZWZhdWx0Q2VsbFN0YXRl
IHsgQ2VsbFN0YXRlOjpEZWZpbml0ZWx5V2hpdGUgfTsKLSAgICBjb25zdCBKU1R5cGUgbV9jZWxs
SGVhZGVyVHlwZTsKLSAgICBUeXBlSW5mbzo6SW5saW5lVHlwZUZsYWdzIG1fY2VsbEhlYWRlcklu
bGluZVR5cGVGbGFnczsKKyAgICAvLyBwYXJ0IG9mIHRoZSBvYmplY3QuCisgICAgU3RydWN0dXJl
SURCbG9iIG1fYmxvYjsKICAgICBUeXBlSW5mbzo6T3V0T2ZMaW5lVHlwZUZsYWdzIG1fb3V0T2ZM
aW5lVHlwZUZsYWdzOwogCiAgICAgdWludDhfdCBtX2lubGluZUNhcGFjaXR5OwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlSURCbG9iLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1Y3R1cmVJREJsb2IuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5k
NGFjMTUyOTE4NTRmNGM3OTcwODBlYjkxYzlhZGYzOWJiOGM3ZDViCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0dXJlSURCbG9iLmgKQEAgLTAs
MCArMSw5OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNC0yMDE3IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJD
ZWxsU3RhdGUuaCIKKyNpbmNsdWRlICJJbmRleGluZ1R5cGUuaCIKKyNpbmNsdWRlICJKU1R5cGVJ
bmZvLmgiCisjaW5jbHVkZSAiU3RydWN0dXJlSUQuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKK2Ns
YXNzIFN0cnVjdHVyZUlEQmxvYiB7CisgICAgZnJpZW5kIGNsYXNzIExMSW50T2Zmc2V0c0V4dHJh
Y3RvcjsKK3B1YmxpYzoKKyAgICBTdHJ1Y3R1cmVJREJsb2IoKSA9IGRlZmF1bHQ7CisKKyAgICBT
dHJ1Y3R1cmVJREJsb2IoU3RydWN0dXJlSUQgc3RydWN0dXJlSUQsIEluZGV4aW5nVHlwZSBpbmRl
eGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5LCBjb25zdCBUeXBlSW5mbyYgdHlwZUluZm8pCisgICAg
eworICAgICAgICB1LmZpZWxkcy5zdHJ1Y3R1cmVJRCA9IHN0cnVjdHVyZUlEOworICAgICAgICB1
LmZpZWxkcy5pbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5ID0gaW5kZXhpbmdNb2RlSW5jbHVk
aW5nSGlzdG9yeTsKKyAgICAgICAgdS5maWVsZHMudHlwZSA9IHR5cGVJbmZvLnR5cGUoKTsKKyAg
ICAgICAgdS5maWVsZHMuaW5saW5lVHlwZUZsYWdzID0gdHlwZUluZm8uaW5saW5lVHlwZUZsYWdz
KCk7CisgICAgICAgIHUuZmllbGRzLmRlZmF1bHRDZWxsU3RhdGUgPSBDZWxsU3RhdGU6OkRlZmlu
aXRlbHlXaGl0ZTsKKyAgICB9CisKKyAgICB2b2lkIG9wZXJhdG9yPShjb25zdCBTdHJ1Y3R1cmVJ
REJsb2ImIG90aGVyKSB7IHUuZG91YmxlV29yZCA9IG90aGVyLnUuZG91YmxlV29yZDsgfQorICAg
IAorICAgIFN0cnVjdHVyZUlEIHN0cnVjdHVyZUlEKCkgY29uc3QgeyByZXR1cm4gdS5maWVsZHMu
c3RydWN0dXJlSUQ7IH0KKyAgICBJbmRleGluZ1R5cGUgaW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlz
dG9yeSgpIGNvbnN0IHsgcmV0dXJuIHUuZmllbGRzLmluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3Rv
cnk7IH0KKyAgICBEZXBlbmRlbmN5IGZlbmNlZEluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3Rvcnko
SW5kZXhpbmdUeXBlJiBpbmRleGluZ1R5cGUpCisgICAgeworICAgICAgICByZXR1cm4gRGVwZW5k
ZW5jeTo6bG9hZEFuZEZlbmNlKCZ1LmZpZWxkcy5pbmRleGluZ01vZGVJbmNsdWRpbmdIaXN0b3J5
LCBpbmRleGluZ1R5cGUpOworICAgIH0KKyAgICB2b2lkIHNldEluZGV4aW5nTW9kZUluY2x1ZGlu
Z0hpc3RvcnkoSW5kZXhpbmdUeXBlIGluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkpIHsgdS5m
aWVsZHMuaW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeSA9IGluZGV4aW5nTW9kZUluY2x1ZGlu
Z0hpc3Rvcnk7IH0KKyAgICBKU1R5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIHUuZmllbGRzLnR5
cGU7IH0KKyAgICBUeXBlSW5mbzo6SW5saW5lVHlwZUZsYWdzIGlubGluZVR5cGVGbGFncygpIGNv
bnN0IHsgcmV0dXJuIHUuZmllbGRzLmlubGluZVR5cGVGbGFnczsgfQorICAgIAorICAgIFR5cGVJ
bmZvIHR5cGVJbmZvKFR5cGVJbmZvOjpPdXRPZkxpbmVUeXBlRmxhZ3Mgb3V0T2ZMaW5lVHlwZUZs
YWdzKSBjb25zdCB7IHJldHVybiBUeXBlSW5mbyh0eXBlKCksIGlubGluZVR5cGVGbGFncygpLCBv
dXRPZkxpbmVUeXBlRmxhZ3MpOyB9CisgICAgCisgICAgaW50MzJfdCBibG9iRXhjbHVkaW5nU3Ry
dWN0dXJlSUQoKSBjb25zdCB7IHJldHVybiB1LndvcmRzLndvcmQyOyB9CisgICAgaW50NjRfdCBi
bG9iKCkgY29uc3QgeyByZXR1cm4gdS5kb3VibGVXb3JkOyB9CisgICAgCisgICAgc3RhdGljIHB0
cmRpZmZfdCBzdHJ1Y3R1cmVJRE9mZnNldCgpCisgICAgeworICAgICAgICByZXR1cm4gT0JKRUNU
X09GRlNFVE9GKFN0cnVjdHVyZUlEQmxvYiwgdS5maWVsZHMuc3RydWN0dXJlSUQpOworICAgIH0K
KworICAgIHN0YXRpYyBwdHJkaWZmX3QgaW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeU9mZnNl
dCgpCisgICAgeworICAgICAgICByZXR1cm4gT0JKRUNUX09GRlNFVE9GKFN0cnVjdHVyZUlEQmxv
YiwgdS5maWVsZHMuaW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeSk7CisgICAgfQorCitwcml2
YXRlOgorICAgIHVuaW9uIERhdGEgeworICAgICAgICBzdHJ1Y3QgeworICAgICAgICAgICAgLy8g
RklYTUU6IFdlIHNob3VsZCByZW1vdmUgdGhpcyBzaW5jZSB0aGUgc3RydWN0dXJlSUQgY2FuIGJl
IGRpcmVjdGx5IGNvbXB1dGVkIGZyb20gdGhlIFN0cnVjdHVyZSoKKyAgICAgICAgICAgIFN0cnVj
dHVyZUlEIHN0cnVjdHVyZUlEOworICAgICAgICAgICAgSW5kZXhpbmdUeXBlIGluZGV4aW5nTW9k
ZUluY2x1ZGluZ0hpc3Rvcnk7CisgICAgICAgICAgICBKU1R5cGUgdHlwZTsKKyAgICAgICAgICAg
IFR5cGVJbmZvOjpJbmxpbmVUeXBlRmxhZ3MgaW5saW5lVHlwZUZsYWdzOworICAgICAgICAgICAg
Q2VsbFN0YXRlIGRlZmF1bHRDZWxsU3RhdGU7CisgICAgICAgIH0gZmllbGRzOworICAgICAgICBz
dHJ1Y3QgeworICAgICAgICAgICAgaW50MzJfdCB3b3JkMTsKKyAgICAgICAgICAgIGludDMyX3Qg
d29yZDI7CisgICAgICAgIH0gd29yZHM7CisgICAgICAgIGludDY0X3QgZG91YmxlV29yZDsKKwor
ICAgICAgICBEYXRhKCkgeyBkb3VibGVXb3JkID0gMHhiYmFkYmVlZjsgfQorICAgIH07CisKKyAg
ICBEYXRhIHU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUlubGluZXMuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cnVjdHVyZUlubGluZXMuaAppbmRleCAzNGVlZGEyNWZlZTI4NTlk
ZWUyN2FmMDljMjI1ZDNjYjcwNjM3MjE1Li41M2I4M2QwNGE0NmEzMzM1YzhlZGJlYzRmZGJkYzVi
ZTI2MThkNzljIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJ1
Y3R1cmVJbmxpbmVzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RydWN0
dXJlSW5saW5lcy5oCkBAIC0yNTYsNyArMjU2LDcgQEAgaW5saW5lIGJvb2wgU3RydWN0dXJlOjpo
YXNJbmRleGluZ0hlYWRlcihjb25zdCBKU0NlbGwqIGNlbGwpIGNvbnN0CiAgICAgaWYgKGhhc0lu
ZGV4ZWRQcm9wZXJ0aWVzKGluZGV4aW5nVHlwZSgpKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAg
ICAgCi0gICAgaWYgKCFpc1R5cGVkVmlldyh0eXBlZEFycmF5VHlwZUZvclR5cGUobV9jZWxsSGVh
ZGVyVHlwZSkpKQorICAgIGlmICghaXNUeXBlZFZpZXcodHlwZWRBcnJheVR5cGVGb3JUeXBlKG1f
YmxvYi50eXBlKCkpKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgcmV0dXJuIGpzQ2Fz
dDxjb25zdCBKU0FycmF5QnVmZmVyVmlldyo+KGNlbGwpLT5tb2RlKCkgPT0gV2FzdGVmdWxUeXBl
ZEFycmF5OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVj
dG9ySW5saW5lcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9ySW5s
aW5lcy5oCmluZGV4IDhjMjIxYTZmMGFiNzI1YmRkMDQyMGU5N2UyYTNiMjk5Yzc0NGMwM2EuLmQ5
Zjk1NDZjN2ZhMDg4MThiOTA0NTZmZjQ5OWE0NjQwOTg3OWNlN2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3RvcklubGluZXMuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvdG9vbHMvVk1JbnNwZWN0b3JJbmxpbmVzLmgKQEAgLTQ1LDcgKzQ1LDcg
QEAgYm9vbCBWTUluc3BlY3Rvcjo6dmVyaWZ5Q2VsbFNpemUoVk0mIHZtLCBKU0NlbGwqIGNlbGws
IHNpemVfdCBhbGxvY2F0b3JDZWxsU2l6ZSkKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9IGNl
bGwtPnN0cnVjdHVyZSh2bSk7CiAgICAgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8gPSBzdHJ1
Y3R1cmUtPmNsYXNzSW5mbygpOwogICAgIEpTVHlwZSBjZWxsVHlwZSA9IGNlbGwtPnR5cGUoKTsK
LSAgICBBVURJVF9WRVJJRlkoYWN0aW9uLCB2ZXJpZmllciwgY2VsbFR5cGUgPT0gc3RydWN0dXJl
LT50eXBlSW5mbygpLnR5cGUoKSwgY2VsbCwgY2VsbFR5cGUsIHN0cnVjdHVyZS0+dHlwZUluZm8o
KS50eXBlKCkpOworICAgIEFVRElUX1ZFUklGWShhY3Rpb24sIHZlcmlmaWVyLCBjZWxsVHlwZSA9
PSBzdHJ1Y3R1cmUtPm1fYmxvYi50eXBlKCksIGNlbGwsIGNlbGxUeXBlLCBzdHJ1Y3R1cmUtPm1f
YmxvYi50eXBlKCkpOwogCiAgICAgc2l6ZV90IHNpemUgPSBjZWxsU2l6ZSh2bSwgY2VsbCk7CiAg
ICAgQVVESVRfVkVSSUZZKGFjdGlvbiwgdmVyaWZpZXIsIHNpemUgPD0gYWxsb2NhdG9yQ2VsbFNp
emUsIGNlbGwsIGNlbGxUeXBlLCBzaXplLCBhbGxvY2F0b3JDZWxsU2l6ZSwgY2xhc3NJbmZvLT5z
dGF0aWNDbGFzc1NpemUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>