<?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>306166</bug_id>
          
          <creation_ts>2026-01-23 19:24:31 -0800</creation_ts>
          <short_desc>REGRESSION(306126@main): broke PlayStation and Windows builds</short_desc>
          <delta_ts>2026-01-23 19:28:13 -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>305749</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>richard_robinson2</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2174678</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2026-01-23 19:24:31 -0800</bug_when>
    <thetext>https://commits.webkit.org/306126@main introduced a regression:
broke PlayStation and Windows builds

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>2174680</commentid>
    <comment_count>1</comment_count>
      <attachid>478119</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2026-01-23 19:24:36 -0800</bug_when>
    <thetext>Created attachment 478119
REVERT of 306126@main

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

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

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2174681</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-01-23 19:27:15 -0800</bug_when>
    <thetext>Committed 306136@main (62c3cbe9bde6): &lt;https://commits.webkit.org/306136@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 478119.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2174682</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-01-23 19:28:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/168805240&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>478119</attachid>
            <date>2026-01-23 19:24:36 -0800</date>
            <delta_ts>2026-01-23 19:27:16 -0800</delta_ts>
            <desc>REVERT of 306126@main</desc>
            <filename>bug-306166-20260124032435.patch</filename>
            <type>text/plain</type>
            <size>45494</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">RnJvbSA0YTc5ZTIwYWJmMDllYWM0ZDViOTdlZDhhY2I4ODZiNzUzNThiZjQyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDb21taXQgUXVldWUgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgpEYXRlOiBTYXQsIDI0IEphbiAyMDI2IDAzOjI0OjM0ICswMDAwClN1YmplY3Q6IFtQQVRDSF0g
VW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIDMwNjEyNkBtYWluLgogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTMwNjE2NgoKYnJva2UgUGxheVN0YXRpb24gYW5kIFdpbmRvd3Mg
YnVpbGRzCgpSZXZlcnRlZCBjaGFuZ2VzZXQ6CgoiW1N3aWZ0IGluIFdlYktpdF0gUmVtb3ZlIGEg
ZmV3IG1vZHVsZSBjb21waWxhdGlvbiBndWFyZHMgZnJvbSBhIGZldyBtb3JlIHBsYWNlcyIKaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNTc0OQpodHRwczovL2NvbW1p
dHMud2Via2l0Lm9yZy8zMDYxMjZAbWFpbgotLS0KIC4uLi9QQUwvcGFsL3NwaS9jb2NvYS9WaXNp
b25LaXRDb3JlU1BJLmggICAgICB8ICAxMSArLQogLi4uL1BBTC9wYWwvc3BpL2NvY29hL1dyaXRp
bmdUb29sc1NQSS5oICAgICAgIHwgIDM4ICsrLS0tCiAuLi4vUEFML3BhbC9zcGkvaW9zL0Jyb3dz
ZXJFbmdpbmVLaXRTUEkuaCAgICAgfCAgIDUgKy0KIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmVfUHJp
dmF0ZS5tb2R1bGVtYXAgICAgICB8ICAgNiArLQogU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9u
cy9XZWJLaXQueGNjb25maWcgIHwgIDQxICsrLS0tCiAuLi4vV2ViS2l0L01vZHVsZXMvSW50ZXJu
YWwvbW9kdWxlLm1vZHVsZW1hcCAgfCAgNDQgKy0tLS0tCiBTb3VyY2UvV2ViS2l0L1BsYXRmb3Jt
L3NwaS9pb3MvVUlLaXRTUEkuaCAgICAgfCAxNDkgKysrLS0tLS0tLS0tLS0tLS0tCiBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9GcmFtZUluZm9EYXRhLmggICAgICAgICAgfCAgIDQgLQogU291cmNlL1dl
YktpdC9TaGFyZWQvRnJhbWVUcmVlTm9kZURhdGEuaCAgICAgIHwgICA0IC0KIFNvdXJjZS9XZWJL
aXQvU2hhcmVkL0pTSGFuZGxlSW5mby5oICAgICAgICAgICB8ICAgNCAtCiBTb3VyY2UvV2ViS2l0
L1NoYXJlZC9XZWJGcmFtZU1ldHJpY3MuaCAgICAgICAgfCAgIDQgLQogU291cmNlL1dlYktpdC9T
aGFyZWQvV2ViUHVzaE1lc3NhZ2UuaCAgICAgICAgIHwgICA0IC0KIC4uLi9XZWJLaXQvU2hhcmVk
L1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhLmggICB8ICAgNCAtCiAuLi4vV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tICAgfCAgNDcgKy0tLS0tCiAuLi4vQ29jb2EvV0tXZWJW
aWV3Q29uZmlndXJhdGlvbkludGVybmFsLmggICAgfCAgMzIgKystLQogLi4uL1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3SW50ZXJuYWwuaCAgIHwgMTAwICsrKysrLS0tLS0tLQogLi4uL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2lvcy9XS1dlYlZpZXdJT1MuaCAgIHwgIDIzICstLQogLi4uL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2lvcy9XS1dlYlZpZXdJT1MubW0gIHwgIDI2ICsrLQogLi4uL1dl
YktpdC9VSVByb2Nlc3MvQVBJL21hYy9XS1dlYlZpZXdNYWMubW0gIHwgIDMzICsrKysKIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dLU2hhcmVTaGVldC5oICB8ICAxNCArLQogLi4uL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQmFzZVNjcm9sbFZpZXcuaCAgIHwgICA0IC0KIC4uLi9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oICB8ICAgNSAtCiBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9tYWMvV2ViVmlld0ltcGwuaCAgICAgfCAgIDQgLQogMjMgZmlsZXMgY2hh
bmdlZCwgMTcxIGluc2VydGlvbnMoKyksIDQzNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9WaXNpb25LaXRDb3JlU1BJLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9WaXNpb25LaXRDb3JlU1BJLmgKaW5kZXggNjE3
YzkwN2ZmYzI3Li42M2RjNmM3YWE4ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvc3BpL2NvY29hL1Zpc2lvbktpdENvcmVTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL3NwaS9jb2NvYS9WaXNpb25LaXRDb3JlU1BJLmgKQEAgLTI1LDExICsyNSwxMiBAQAogCiAj
cHJhZ21hIG9uY2UKIAorLy8gRklYTUU6IFJlbW92ZSB0aGUgYF9faGFzX2ZlYXR1cmUobW9kdWxl
cylgIGNvbmRpdGlvbiB3aGVuIHBvc3NpYmxlLgorI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMp
CisKICNpbmNsdWRlIDx3dGYvQ29tcGlsZXIuaD4KICNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4K
IAotI2lmICFQTEFURk9STShJT1NfU0lNVUxBVE9SKSB8fCAhX19oYXNfZmVhdHVyZShtb2R1bGVz
KQotCiBERUNMQVJFX1NZU1RFTV9IRUFERVIKIAogI2lmIEhBVkUoVktfSU1BR0VfQU5BTFlTSVMp
CkBAIC0zMzQsNyArMzM1LDcgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5ECiAjZW5kaWYKICNlbmRp
ZiAvLyBQTEFURk9STShNQUMpCiAKLSNpZiBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKFZJU0lP
TikgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisjaWYgUExBVEZPUk0oSU9TKSB8fCBQTEFURk9S
TShWSVNJT04pCiAjaWYgX19oYXNfaW5jbHVkZSg8VmlzaW9uS2l0Q29yZS9WS0NJbWFnZUFuYWx5
c2lzSW50ZXJhY3Rpb24uaD4pICYmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpCiAjaW1wb3J0IDxW
aXNpb25LaXRDb3JlL1ZLQ0ltYWdlQW5hbHlzaXNJbnRlcmFjdGlvbi5oPgogI2Vsc2UKQEAgLTM2
NSwxMCArMzY2LDEwIEBAIE5TX0FTU1VNRV9OT05OVUxMX0JFR0lOCiBOU19BU1NVTUVfTk9OTlVM
TF9FTkQKIAogI2VuZGlmCi0jZW5kaWYgLy8gUExBVEZPUk0oSU9TKSB8fCBQTEFURk9STShWSVNJ
T04pIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorI2VuZGlmIC8vIFBMQVRGT1JNKElPUykgfHwg
UExBVEZPUk0oVklTSU9OKQogCiAjZW5kaWYgLy8gRU5BQkxFKElNQUdFX0FOQUxZU0lTX0VOSEFO
Q0VNRU5UUykKIAogI2VuZGlmIC8vIEhBVkUoVktfSU1BR0VfQU5BTFlTSVMpCiAKLSNlbmRpZiAv
LyAhUExBVEZPUk0oSU9TX1NJTVVMQVRPUikgfHwgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykKKyNl
bmRpZiAvLyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvY29jb2EvV3JpdGluZ1Rvb2xzU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jb2NvYS9Xcml0aW5nVG9vbHNTUEkuaAppbmRleCBhYmVlZmI1N2Q5MTguLmJi
MWMzZjg0OGIxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2Ev
V3JpdGluZ1Rvb2xzU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2Ev
V3JpdGluZ1Rvb2xzU1BJLmgKQEAgLTI4LDExICsyOCwxMyBAQAogI2ltcG9ydCA8d3RmL0NvbXBp
bGVyLmg+CiAjaW1wb3J0IDx3dGYvUGxhdGZvcm0uaD4KIAorI2lmICFfX2hhc19mZWF0dXJlKG1v
ZHVsZXMpIHx8ICFVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQorCiBERUNMQVJFX1NZU1RFTV9IRUFE
RVIKIAogI2lmIEVOQUJMRShXUklUSU5HX1RPT0xTKQogCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFM
X1NESykgJiYgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykKKyNpZiBVU0UoQVBQTEVfSU5URVJOQUxf
U0RLKQogI2ltcG9ydCA8V3JpdGluZ1Rvb2xzL1dUU2Vzc2lvbl9Qcml2YXRlLmg+CiAjaW1wb3J0
IDxXcml0aW5nVG9vbHMvV3JpdGluZ1Rvb2xzLmg+CiAjZWxzZQpAQCAtNjYsMTAgKzY4LDYgQEAg
dHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgV1RSZXF1ZXN0ZWRUb29sKSB7CiAgICAgV1RSZXF1
ZXN0ZWRUb29sU21hcnRSZXBseSA9IDEwMSwKIAogICAgIFdUUmVxdWVzdGVkVG9vbENvbXBvc2Ug
PSAyMDEsCi0KLSNpZiBIQVZFKFdUX1JFUVVFU1RFRF9UT09MX05PTkUpCi0gICAgV1RSZXF1ZXN0
ZWRUb29sTm9uZSA9IDk5OSwKLSNlbmRpZgogfTsKIAogLy8gTUFSSzogV1RDb250ZXh0CkBAIC0x
NzksMjAgKzE3NywxMiBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBXVFRleHRTdWdnZXN0
aW9uU3RhdGUpIHsKIAogLSAodm9pZClwcm9vZnJlYWRpbmdTZXNzaW9uV2l0aFVVSUQ6KE5TVVVJ
RCAqKXNlc3Npb25VVUlEIHVwZGF0ZVN0YXRlOihXVFRleHRTdWdnZXN0aW9uU3RhdGUpc3RhdGUg
Zm9yU3VnZ2VzdGlvbldpdGhVVUlEOihOU1VVSUQgKilzdWdnZXN0aW9uVVVJRDsKIAotI2lmICFQ
TEFURk9STShNQUMpIHx8IEVOQUJMRShUT1BfTEVWRUxfV1JJVElOR19UT09MU19DT05URVhUX01F
TlVfSVRFTVMpCi0KLS0gKHZvaWQpcHJvb2ZyZWFkaW5nU2Vzc2lvbldpdGhVVUlEOihOU1VVSUQg
KilzZXNzaW9uVVVJRCBzaG93RGV0YWlsc0ZvclN1Z2dlc3Rpb25XaXRoVVVJRDooTlNVVUlEICop
c3VnZ2VzdGlvblVVSUQgcmVsYXRpdmVUb1JlY3Q6KENHUmVjdClyZWN0IGluVmlldzooaWQpc291
cmNlVmlldzsKLQotI2Vsc2UKLQogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAtICh2b2lkKXBy
b29mcmVhZGluZ1Nlc3Npb25XaXRoVVVJRDooTlNVVUlEICopc2Vzc2lvblVVSUQgc2hvd0RldGFp
bHNGb3JTdWdnZXN0aW9uV2l0aFVVSUQ6KE5TVVVJRCAqKXN1Z2dlc3Rpb25VVUlEIHJlbGF0aXZl
VG9SZWN0OihDR1JlY3QpcmVjdCBpblZpZXc6KFVJVmlldyAqKXNvdXJjZVZpZXc7CiAjZWxzZQog
LSAodm9pZClwcm9vZnJlYWRpbmdTZXNzaW9uV2l0aFVVSUQ6KE5TVVVJRCAqKXNlc3Npb25VVUlE
IHNob3dEZXRhaWxzRm9yU3VnZ2VzdGlvbldpdGhVVUlEOihOU1VVSUQgKilzdWdnZXN0aW9uVVVJ
RCByZWxhdGl2ZVRvUmVjdDooTlNSZWN0KXJlY3QgaW5WaWV3OihOU1ZpZXcgKilzb3VyY2VWaWV3
OwogI2VuZGlmCiAKLSNlbmRpZgotCiAtICh2b2lkKXRleHRTeXN0ZW1XaWxsQmVnaW5FZGl0aW5n
RHVyaW5nU2Vzc2lvbldpdGhVVUlEOihOU1VVSUQgKilzZXNzaW9uVVVJRDsKIAogQGVuZApAQCAt
MjEzLDkgKzIwMywxMyBAQCB0eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBXVEFjdGlvbikgewog
ICAgIFdUQWN0aW9uU2hvd09yaWdpbmFsID0gMSwKICAgICBXVEFjdGlvblNob3dSZXdyaXR0ZW4s
CiAgICAgV1RBY3Rpb25Db21wb3NpdGlvblJlc3RhcnQsCi0jaWYgIVBMQVRGT1JNKE1BQykgfHwg
SEFWRShOU1JFU1BPTkRFUl9XUklUSU5HX1RPT0xTX1NVUFBPUlQpCiAgICAgV1RBY3Rpb25Db21w
b3NpdGlvblJlZmluZSwKLSNlbmRpZgorfTsKKwordHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwg
V1RGb3JtU2hlZXRVSVR5cGUpIHsKKyAgICBXVEZvcm1TaGVldFVJVHlwZVVuc3BlY2lmaWVkLAor
ICAgIFdURm9ybVNoZWV0VUlUeXBlRW5yb2xsbWVudCwKKyAgICBXVEZvcm1TaGVldFVJVHlwZVNo
YXJlU2hlZXQsCiB9OwogCiAtICh2b2lkKXdyaXRpbmdUb29sc1Nlc3Npb246KFdUU2Vzc2lvbiAq
KXNlc3Npb24gZGlkUmVjZWl2ZUFjdGlvbjooV1RBY3Rpb24pYWN0aW9uOwpAQCAtMjMwLDIyICsy
MjQsMTAgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgV1RBY3Rpb24pIHsKIAogQG9wdGlv
bmFsCiAKLSNpZiAhUExBVEZPUk0oTUFDKSB8fCBFTkFCTEUoVE9QX0xFVkVMX1dSSVRJTkdfVE9P
TFNfQ09OVEVYVF9NRU5VX0lURU1TKQotCiAtIChCT09MKXN1cHBvcnRzV3JpdGluZ1Rvb2xzQWN0
aW9uOihXVEFjdGlvbilhY3Rpb247CiAKLSNlbHNlCi0KLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBC
T09MIHdhbnRzV3JpdGluZ1Rvb2xzSW5saW5lRWRpdGluZzsKLQotI2VuZGlmCi0KLSNpZiAhUExB
VEZPUk0oTUFDKSB8fCBIQVZFKE5TUkVTUE9OREVSX1dSSVRJTkdfVE9PTFNfU1VQUE9SVCkKLQog
QHByb3BlcnR5IChyZWFkb25seSwgbm9uYXRvbWljKSBCT09MIGluY2x1ZGVzVGV4dExpc3RNYXJr
ZXJzOwogCi0jZW5kaWYKLQogQGVuZAogCiBAcHJvdG9jb2wgV1RXcml0aW5nVG9vbHNEZWxlZ2F0
ZSA8V1RXcml0aW5nVG9vbHNEZWxlZ2F0ZV9Qcm9wb3NlZF92Mz4KQEAgLTI1NywzICsyMzksNSBA
QCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKICNlbmRpZgogCiAjZW5kaWYgLy8gRU5BQkxFKFdSSVRJ
TkdfVE9PTFMpCisKKyNlbmRpZiAvLyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvaW9zL0Jyb3dzZXJFbmdpbmVLaXRTUEkuaCBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2lvcy9Ccm93c2VyRW5naW5lS2l0U1BJLmgKaW5k
ZXggMjVhNDBkYTc2NTQ0Li41MTQ1MTE0MGQ3MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1BBTC9wYWwvc3BpL2lvcy9Ccm93c2VyRW5naW5lS2l0U1BJLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvaW9zL0Jyb3dzZXJFbmdpbmVLaXRTUEkuaApAQCAtMjUsNyArMjUsOCBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmICFQTEFURk9STShJT1NfU0lNVUxBVE9SKSB8fCAhX19o
YXNfZmVhdHVyZShtb2R1bGVzKQorLy8gRklYTUU6IFJlbW92ZSB0aGUgYF9faGFzX2ZlYXR1cmUo
bW9kdWxlcylgIGNvbmRpdGlvbiB3aGVuIHBvc3NpYmxlLgorI2lmICFfX2hhc19mZWF0dXJlKG1v
ZHVsZXMpCiAKIERFQ0xBUkVfU1lTVEVNX0hFQURFUgogCkBAIC03Myw0ICs3NCw0IEBAIERFQ0xB
UkVfU1lTVEVNX0hFQURFUgogCiAjZW5kaWYgLy8gVVNFKEJST1dTRVJFTkdJTkVLSVQpCiAKLSNl
bmRpZiAvLyAhUExBVEZPUk0oSU9TX1NJTVVMQVRPUikgfHwgIV9faGFzX2ZlYXR1cmUobW9kdWxl
cykKKyNlbmRpZiAvLyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZV9Qcml2YXRlLm1vZHVsZW1hcCBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmVfUHJpdmF0ZS5tb2R1bGVtYXAKaW5kZXggMTVkMDM4OGI1N2YyLi5kN2ExZmE5ZTRmODMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmVfUHJpdmF0ZS5tb2R1bGVtYXAKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZV9Qcml2YXRlLm1vZHVsZW1hcApAQCAtMSwxNSArMSwxNSBA
QAogZnJhbWV3b3JrIG1vZHVsZSBXZWJDb3JlX1ByaXZhdGUgW3N5c3RlbV0gewotICAgIG1vZHVs
ZSBQbGF0Zm9ybUV4cG9ydE1hY3JvcyB7CisgICAgZXhwbGljaXQgbW9kdWxlIFBsYXRmb3JtRXhw
b3J0TWFjcm9zIHsKICAgICAgICAgaGVhZGVyICJQbGF0Zm9ybUV4cG9ydE1hY3Jvcy5oIgogICAg
ICAgICBleHBvcnQgKgogICAgIH0KIAotICAgIG1vZHVsZSBDb3JlIHsKKyAgICBleHBsaWNpdCBt
b2R1bGUgQ29yZSB7CiAgICAgICAgIHVtYnJlbGxhICJQcml2YXRlSGVhZGVycyIKIAogICAgICAg
ICByZXF1aXJlcyBjcGx1c3BsdXMKIAotICAgICAgICBtb2R1bGUgKiB7CisgICAgICAgIGV4cGxp
Y2l0IG1vZHVsZSAqIHsKICAgICAgICAgICAgIGV4cG9ydCAqCiAgICAgICAgIH0KICAgICB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZyBi
L1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCmluZGV4IGI5ZWFk
ZDdlMjM1MC4uZGZhYWZjMjMxMjE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3Vy
YXRpb25zL1dlYktpdC54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25z
L1dlYktpdC54Y2NvbmZpZwpAQCAtMjQsOCArMjQsNyBAQAogI2luY2x1ZGUgIkJhc2VUYXJnZXQu
eGNjb25maWciCiAjaW5jbHVkZT8gIjxERVZFTE9QRVJfRElSPi9BcHBsZUludGVybmFsL1hjb2Rl
Q29uZmlnL0FwcGxlRmVhdHVyZXMueGNjb25maWciCiAKLUdDQ19QUkVQUk9DRVNTT1JfREVGSU5J
VElPTlMgPSAkKEVOQUJMRV9SRUxPQ0FUQUJMRV9XRUJQVVNIRCkgJChpbmhlcml0ZWQpICQoRU5B
QkxFX1dFQkdQVV9TV0lGVCkgJChFTkFCTEVfU1dJRlRfREVNT19VUklfU0NIRU1FKSAkKEdFTkVS
QVRFX1NJTkdMRV9TV0lGVF9JTlRFUk9QX0ZJTEUpICQoRU5BQkxFX0lQQ19URVNUSU5HX1NXSUZU
KSAkKEdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlNfV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hY
X0lOVEVST1BfJChXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkpOwotR0NDX1BSRVBS
T0NFU1NPUl9ERUZJTklUSU9OU19XS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUF9ZRVMg
PSBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUD0xCitHQ0NfUFJFUFJPQ0VTU09SX0RF
RklOSVRJT05TID0gJChFTkFCTEVfUkVMT0NBVEFCTEVfV0VCUFVTSEQpICQoaW5oZXJpdGVkKSAk
KEVOQUJMRV9XRUJHUFVfU1dJRlQpICQoRU5BQkxFX1NXSUZUX0RFTU9fVVJJX1NDSEVNRSkgJChH
RU5FUkFURV9TSU5HTEVfU1dJRlRfSU5URVJPUF9GSUxFKSAkKEVOQUJMRV9JUENfVEVTVElOR19T
V0lGVCk7CiAKIFBST0RVQ1RfTkFNRSA9IFdlYktpdDsKIFBST0RVQ1RfQlVORExFX0lERU5USUZJ
RVIgPSBjb20uYXBwbGUuJChQUk9EVUNUX05BTUU6cmZjMTAzNGlkZW50aWZpZXIpOwpAQCAtMzgs
OCArMzcsNyBAQCBPVEhFUl9NT0RVTEVfVkVSSUZJRVJfRkxBR1NfID0gLWlmcmFtZXdvcmsgIiQo
V0tfUFJJVkFURV9TREtfRElSKSQoV0tfT1ZFUlJJREVfRgogCiAvLyBUaGUgT2JqQ3h4IG1vZHVs
ZSByZXF1aXJlcyB3dGYgYW5kIGJtYWxsb2MgdG8gYmUgbW9kdWxhcml6ZWQsIGFuZCB0aG9zZSBh
cmUgbm90IHVuZGVyIGNlcnRhaW4gY29uZmlndXJhdGlvbnMuCiAKLVdLX0hBU19WQUxJRF9PQkpD
WFhfTU9EVUxFID0gWUVTOwotCitXS19IQVNfVkFMSURfT0JKQ1hYX01PRFVMRVtzZGs9bWFjb3N4
Kl0gPSBZRVM7CiBXS19IQVNfVkFMSURfT0JKQ1hYX01PRFVMRVtzZGs9bWFjb3N4MTQqXSA9IDsK
IFdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1tYWNvc3gxNSpdID0gOwogV0tfSEFTX1ZB
TElEX09CSkNYWF9NT0RVTEVbc2RrPW1hY29zeDI2LjAqXSA9IDsKQEAgLTQ3LDI4ICs0NSw4IEBA
IFdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1tYWNvc3gyNi4xKl0gPSA7CiBXS19IQVNf
VkFMSURfT0JKQ1hYX01PRFVMRVtzZGs9bWFjb3N4MjYuMipdID0gOwogV0tfSEFTX1ZBTElEX09C
SkNYWF9NT0RVTEVbc2RrPW1hY29zeDI2LjMqXSA9IDsKIAotV0tfSEFTX1ZBTElEX09CSkNYWF9N
T0RVTEVbc2RrPWlwaG9uZSoyNi4wKl0gPSA7Ci1XS19IQVNfVkFMSURfT0JKQ1hYX01PRFVMRVtz
ZGs9aXBob25lKjI2LjEqXSA9IDsKLVdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1pcGhv
bmUqMjYuMipdID0gOwotV0tfSEFTX1ZBTElEX09CSkNYWF9NT0RVTEVbc2RrPWlwaG9uZSoyNi4z
Kl0gPSA7Ci0KLVdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1hcHBsZXR2KjI2LjAqXSA9
IDsKLVdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1hcHBsZXR2KjI2LjEqXSA9IDsKLVdL
X0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1hcHBsZXR2KjI2LjIqXSA9IDsKLVdLX0hBU19W
QUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz1hcHBsZXR2KjI2LjMqXSA9IDsKLQotV0tfSEFTX1ZBTElE
X09CSkNYWF9NT0RVTEVbc2RrPXdhdGNoKjI2LjAqXSA9IDsKLVdLX0hBU19WQUxJRF9PQkpDWFhf
TU9EVUxFW3Nkaz13YXRjaCoyNi4xKl0gPSA7Ci1XS19IQVNfVkFMSURfT0JKQ1hYX01PRFVMRVtz
ZGs9d2F0Y2gqMjYuMipdID0gOwotV0tfSEFTX1ZBTElEX09CSkNYWF9NT0RVTEVbc2RrPXdhdGNo
KjI2LjMqXSA9IDsKLQotV0tfSEFTX1ZBTElEX09CSkNYWF9NT0RVTEVbc2RrPXhyKjI2LjAqXSA9
IDsKLVdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxFW3Nkaz14cioyNi4xKl0gPSA7Ci1XS19IQVNf
VkFMSURfT0JKQ1hYX01PRFVMRVtzZGs9eHIqMjYuMipdID0gOwotV0tfSEFTX1ZBTElEX09CSkNY
WF9NT0RVTEVbc2RrPXhyKjI2LjMqXSA9IDsKLQotLy8gRklYTUU6IGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDAxNDYKLVdLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxF
W3Nkaz1pcGhvbmVzaW11bGF0b3IqXSA9IDsKKy8vIENhbid0IGVuYWJsZSBvbiBpT1MgdW50aWwg
cmRhcjovLzE2MTYxODk2NSBpcyByZXNvbHZlZC4KK1dLX0hBU19WQUxJRF9PQkpDWFhfTU9EVUxF
W3Nkaz1pcGhvbmUqXSA9IDsKIAogTU9EVUxFX1ZFUklGSUVSX1NVUFBPUlRFRF9MQU5HVUFHRVMg
PSAkKE1PRFVMRV9WRVJJRklFUl9TVVBQT1JURURfTEFOR1VBR0VTXyQoV0tfSEFTX1ZBTElEX09C
SkNYWF9NT0RVTEUpKTsKIE1PRFVMRV9WRVJJRklFUl9TVVBQT1JURURfTEFOR1VBR0VTXyA9IG9i
amVjdGl2ZS1jOwpAQCAtNDAyLDcgKzM4MCwxNiBAQCBXS19NQUNfUFVCTElDX0lPU19QUklWQVRF
X0hFQURFUlNfRElSX2NvY29hdG91Y2ggPSAkKFBSSVZBVEVfSEVBREVSU19GT0xERVJfUEFUSAog
CiBFWENMVURFRF9NQUNPU19QTFVHSU5fRklMRV9OQU1FU1tzZGs9aXBob25lKl0gPSBTZWNJdGVt
U2hpbS5keWxpYiBXZWJQcm9jZXNzU2hpbS5keWxpYiAqLnBkZiBSZXNvdXJjZXMvbWFjLyogY29t
LmFwcGxlLldlYktpdC5OZXR3b3JrUHJvY2Vzcy5zYiBjb20uYXBwbGUuV2ViS2l0LkdQVVByb2Nl
c3Muc2IgY29tLmFwcGxlLldlYktpdC53ZWJwdXNoZC5tYWMuc2IgY29tLmFwcGxlLldlYlByb2Nl
c3Muc2I7CiAKLVdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QID0gJChXS19IQVNfVkFM
SURfT0JKQ1hYX01PRFVMRSk7CisvLyBGSVhNRTogKHJkYXI6Ly8xNDkyMTY0MTcpIEVuYWJsZSB0
aGlzIG9uIGFsbCBwbGF0Zm9ybXMgd2hlbiBwb3NzaWJsZS4KK1dLX1NVUFBPUlRTX1NXSUZUX09C
SkNYWF9JTlRFUk9QID0gJChXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUF8kKFdLX1BM
QVRGT1JNX05BTUUpKTsKK1dLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QX21hY29zeCA9
IFlFUzsKK1dLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QW3Nkaz1tYWNvc3gxNCpdID0g
OworV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1Bbc2RrPW1hY29zeDE1Kl0gPSA7CitX
S19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUFtzZGs9bWFjb3N4MjYuMCpdID0gOworV0tf
U1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1Bbc2RrPW1hY29zeDI2LjEqXSA9IDsKK1dLX1NV
UFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QW3Nkaz1tYWNvc3gyNi4yKl0gPSA7CitXS19TVVBQ
T1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUFtzZGs9bWFjb3N4MjYuMypdID0gOworCiAKIFNXSUZU
X09CSkNfSU5URVJPUF9NT0RFID0gJChTV0lGVF9PQkpDX0lOVEVST1BfTU9ERV9TVVBQT1JUU19T
V0lGVF9PQkpDWFhfSU5URVJPUF8kKFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSk7
CiBTV0lGVF9PQkpDX0lOVEVST1BfTU9ERV9TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUF9Z
RVMgPSBvYmpjeHg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L01vZHVsZXMvSW50ZXJuYWwv
bW9kdWxlLm1vZHVsZW1hcCBiL1NvdXJjZS9XZWJLaXQvTW9kdWxlcy9JbnRlcm5hbC9tb2R1bGUu
bW9kdWxlbWFwCmluZGV4IGQ1ZjIwMDMyMTFmMy4uOTkxMzI5NzJlNzY2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L01vZHVsZXMvSW50ZXJuYWwvbW9kdWxlLm1vZHVsZW1hcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L01vZHVsZXMvSW50ZXJuYWwvbW9kdWxlLm1vZHVsZW1hcApAQCAtMSw1MiArMSwx
MCBAQAorLy8gRklYTUU6IHRoaXMgbW9kdWxlbWFwIG5lZWRzIHdvcmsgYXMgZGlzY3Vzc2VkIGlu
IGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L3B1bGwvNTQzMjIKIG1vZHVsZSBXZWJL
aXRfSW50ZXJuYWwgewotICAgIG1vZHVsZSBXS1dlYlZpZXdJT1MgewotICAgICAgICBoZWFkZXIg
Ii4uLy4uL1VJUHJvY2Vzcy9BUEkvaW9zL1dLV2ViVmlld0lPUy5oIgotICAgICAgICBleHBvcnQg
KgotICAgIH0KLQotICAgIG1vZHVsZSBGcmFtZUluZm9EYXRhIHsKLSAgICAgICAgaGVhZGVyICIu
Li8uLi9TaGFyZWQvRnJhbWVJbmZvRGF0YS5oIgotICAgICAgICBleHBvcnQgKgotICAgIH0KLQot
ICAgIG1vZHVsZSBGcmFtZVRyZWVOb2RlRGF0YSB7Ci0gICAgICAgIGhlYWRlciAiLi4vLi4vU2hh
cmVkL0ZyYW1lVHJlZU5vZGVEYXRhLmgiCi0gICAgICAgIGV4cG9ydCAqCi0gICAgfQotCi0gICAg
bW9kdWxlIEpTSGFuZGxlSW5mbyB7Ci0gICAgICAgIGhlYWRlciAiLi4vLi4vU2hhcmVkL0pTSGFu
ZGxlSW5mby5oIgotICAgICAgICBleHBvcnQgKgotICAgIH0KLQotICAgIG1vZHVsZSBXZWJGcmFt
ZU1ldHJpY3MgewotICAgICAgICBoZWFkZXIgIi4uLy4uL1NoYXJlZC9XZWJGcmFtZU1ldHJpY3Mu
aCIKLSAgICAgICAgZXhwb3J0ICoKLSAgICB9Ci0KLSAgICBtb2R1bGUgV2ViVmlld0ltcGwgewot
ICAgICAgICBoZWFkZXIgIi4uLy4uL1VJUHJvY2Vzcy9tYWMvV2ViVmlld0ltcGwuaCIKLSAgICAg
ICAgZXhwb3J0ICoKLSAgICB9Ci0KLSAgICBtb2R1bGUgV2Vic2l0ZURhdGEgewotICAgICAgICBo
ZWFkZXIgIi4uLy4uL1NoYXJlZC9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YS5oIgotICAgICAgICBl
eHBvcnQgKgotICAgIH0KLQotICAgIG1vZHVsZSBXZWJQdXNoTWVzc2FnZSB7Ci0gICAgICAgIGhl
YWRlciAiLi4vLi4vU2hhcmVkL1dlYlB1c2hNZXNzYWdlLmgiCi0gICAgICAgIGV4cG9ydCAqCi0g
ICAgfQotCi0gICAgLy8gRklYTUU6IFRoZXNlIHBhcnRzIG9mIHRoZSBtb2R1bGUgbWFwIG5lZWRz
IHdvcmsgYXMgZGlzY3Vzc2VkIGluIGh0dHBzOi8vZ2l0aHViLmNvbS9XZWJLaXQvV2ViS2l0L3B1
bGwvNTQzMjIKLQogICAgIG1vZHVsZSBXZWJLaXRfSW50ZXJuYWxfT2JqYyB7CiAgICAgICAgIGhl
YWRlciAiV2ViS2l0SW50ZXJuYWwuaCIKICAgICAgICAgZXhwb3J0ICoKICAgICAgICAgcmVxdWly
ZXMgb2JqYwogICAgIH0KLQogICAgIG1vZHVsZSBXZWJLaXRfSW50ZXJuYWxfQ3h4IHsKICAgICAg
ICAgaGVhZGVyICJXZWJLaXRJbnRlcm5hbEN4eC5oIgogICAgICAgICBleHBvcnQgKgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL1VJS2l0U1BJLmggYi9Tb3VyY2Uv
V2ViS2l0L1BsYXRmb3JtL3NwaS9pb3MvVUlLaXRTUEkuaAppbmRleCAxZGQ0MTcwY2FhZDcuLmZh
YmQ1ODkzY2Y3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL1VJ
S2l0U1BJLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9zcGkvaW9zL1VJS2l0U1BJLmgK
QEAgLTk3LDExICs5Nyw4IEBAIERFQ0xBUkVfU1lTVEVNX0hFQURFUgogI2ltcG9ydCA8VUlLaXQv
VUlXaW5kb3dfUHJpdmF0ZS5oPgogI2ltcG9ydCA8VUlLaXQvX1VJQXBwbGljYXRpb25CU0FjdGlv
bkhhbmRsZXIuaD4KICNpbXBvcnQgPFVJS2l0L19VSUFwcGxpY2F0aW9uUm90YXRpb25Gb2xsb3dp
bmcuaD4KLSNpbXBvcnQgPFVJS2l0L19VSUNsaWNrSW50ZXJhY3Rpb25Ecml2aW5nLmg+Ci0jaW1w
b3J0IDxVSUtpdC9fVUlMYXllckhvc3RWaWV3Lmg+CiAjaW1wb3J0IDxVSUtpdC9fVUlOYXZpZ2F0
aW9uSW50ZXJhY3RpdmVUcmFuc2l0aW9uLmg+CiAjaW1wb3J0IDxVSUtpdC9fVUlOYXZpZ2F0aW9u
UGFyYWxsYXhUcmFuc2l0aW9uLmg+Ci0jaW1wb3J0IDxVSUtpdC9fVUlOb25Ib3N0aW5nVmlzaWJp
bGl0eVByb3BhZ2F0aW9uVmlld19SZXF1aXJlc0FwcHJvdmFsLmg+CiAjaW1wb3J0IDxVSUtpdC9f
VUlTaGVldFByZXNlbnRhdGlvbkNvbnRyb2xsZXIuaD4KICNpbXBvcnQgPFVJS2l0U2VydmljZXMv
VUlTQXBwbGljYXRpb25TdGF0ZS5oPgogCkBAIC0xMDg5LDM2ICsxMDg2LDggQEAgdHlwZWRlZiBO
U19FTlVNKE5TSW50ZWdlciwgX1VJU2Nyb2xsVmlld0RlY2VsZXJhdGlvblRyYWNraW5nQmVoYXZp
b3IpIHsKIAogI2VuZGlmCiAKLUBwcm90b2NvbCBfVUlDbGlja0ludGVyYWN0aW9uRHJpdmVyRGVs
ZWdhdGU7Ci1AcHJvdG9jb2wgX1VJQ2xpY2tJbnRlcmFjdGlvbkRyaXZpbmcgPE5TT2JqZWN0Pgot
QHByb3BlcnR5IChub25hdG9taWMsIHdlYWspIGlkIDxfVUlDbGlja0ludGVyYWN0aW9uRHJpdmVy
RGVsZWdhdGU+IGRlbGVnYXRlOwotQGVuZAotCi1AY2xhc3MgQ0FMYXllckhvc3Q7Ci0KLUBpbnRl
cmZhY2UgX1VJTGF5ZXJIb3N0VmlldyA6IFVJVmlldwotLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRo
RnJhbWU6KENHUmVjdClmcmFtZSBwaWQ6KHBpZF90KXBpZCBjb250ZXh0SUQ6KHVpbnQzMl90KWNv
bnRleHRJRDsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgcmV0YWluKSBDQUxheWVy
SG9zdCAqbGF5ZXJIb3N0OwotQGVuZAotCi1AaW50ZXJmYWNlIF9VSVZpc2liaWxpdHlQcm9wYWdh
dGlvblZpZXcgOiBVSVZpZXcKLUBlbmQKLQotI2lmIEhBVkUoTk9OX0hPU1RJTkdfVklTSUJJTElU
WV9QUk9QQUdBVElPTl9WSUVXKQotQGludGVyZmFjZSBfVUlOb25Ib3N0aW5nVmlzaWJpbGl0eVBy
b3BhZ2F0aW9uVmlldyA6IF9VSVZpc2liaWxpdHlQcm9wYWdhdGlvblZpZXcKLS0gKGluc3RhbmNl
dHlwZSlpbml0V2l0aEZyYW1lOihDR1JlY3QpZnJhbWUgcGlkOihwaWRfdClwaWQgZW52aXJvbm1l
bnRJZGVudGlmaWVyOihOU1N0cmluZyAqKWVudmlyb25tZW50SWRlbnRpZmllcjsKLUBlbmQKLSNl
bmRpZgotCiAjZW5kaWYgLy8gVVNFKEFQUExFX0lOVEVSTkFMX1NESykKIAotQGNsYXNzIF9VSUhv
c3RlZFdpbmRvd0hvc3RpbmdIYW5kbGU7Ci1AaW50ZXJmYWNlIF9VSVJlbW90ZVZpZXcgOiBfVUlM
YXllckhvc3RWaWV3Ci0tIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhGcmFtZTooQ0dSZWN0KWZyYW1l
IHBpZDoocGlkX3QpcGlkIGNvbnRleHRJRDoodWludDMyX3QpY29udGV4dElEOwotKyAoaW5zdGFu
Y2V0eXBlKXZpZXdXaXRoSG9zdGVkV2luZG93SG9zdGluZ0hhbmRsZTooX1VJSG9zdGVkV2luZG93
SG9zdGluZ0hhbmRsZSAqKWhvc3RlZFdpbmRvd0hvc3RpbmdIYW5kbGU7Ci1AcHJvcGVydHkgKHJl
YWR3cml0ZSwgbm9uYXRvbWljLCByZXRhaW4pIF9VSUhvc3RlZFdpbmRvd0hvc3RpbmdIYW5kbGUg
Kmhvc3RlZFdpbmRvd0hvc3RpbmdIYW5kbGU7Ci1AZW5kCi0KIEBpbnRlcmZhY2UgVUlUZXh0Q2hl
Y2tlciAoU3RhZ2luZ18xNjU4NDI4MjQpCiAtICh2b2lkKXJlcXVlc3RQcm9vZnJlYWRpbmdSZXZp
ZXdPZlN0cmluZzooTlNTdHJpbmcgKilzdHJpbmdUb0NoZWNrIHJhbmdlOihOU1JhbmdlKXJhbmdl
IGxhbmd1YWdlOihOU1N0cmluZyAqKWxhbmd1YWdlIG9wdGlvbnM6KE5TRGljdGlvbmFyeTxOU1N0
cmluZyAqLCBpZD4gKilvcHRpb25zIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShOU0FycmF5
PE5TVGV4dENoZWNraW5nUmVzdWx0ICo+ICpyZXN1bHRzKSljb21wbGV0aW9uSGFuZGxlcjsKIEBl
bmQKQEAgLTExMjksMTAxICsxMDk4LDEwIEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIF9V
SVNjcm9sbFZpZXdEZWNlbGVyYXRpb25UcmFja2luZ0JlaGF2aW9yKSB7CiAtICh2b2lkKXdpbmRv
d0NoYW5nZWRLZXlTdGF0ZTsKIEBlbmQKIAotdHlwZWRlZiBDR1JlY3QgTlNSZWN0OwotCi1AcHJv
dG9jb2wgVUlOU1dpbmRvdzsKLUBwcm90b2NvbCBVSU5TVXNlckludGVyZmFjZVRoZW1lOwotQHBy
b3RvY29sIFVJTlNQREZEb2N1bWVudDsKLUBwcm90b2NvbCBVSU5TRHJvcFNlc3Npb247Ci1AY2xh
c3MgVUlQcmludEluZm87Ci1AY2xhc3MgVUlOU0V2ZW50OwotQGNsYXNzIFVJU2NlbmU7Ci1AY2xh
c3MgVUlWaWV3OwotQGNsYXNzIFVJQXBwbGljYXRpb25TY2VuZVRyYW5zaXRpb25Db250ZXh0Owot
QGNsYXNzIEZCU1dvcmtzcGFjZVNjZW5lUmVxdWVzdE9wdGlvbnM7Ci0KLUBwcm90b2NvbCBXVFRl
eHRWaWV3RGVsZWdhdGVfUHJvcG9zZWRfdjE7Ci0KLU5TX0hFQURFUl9BVURJVF9CRUdJTihudWxs
YWJpbGl0eSwgc2VuZGFiaWxpdHkpCi0KIEBwcm90b2NvbCBVSU5TQXBwbGljYXRpb25EZWxlZ2F0
ZSA8TlNPYmplY3Q+Ci0KLS0gKHZvaWQpZGlkUmVjZWl2ZUxhdW5jaEFjdGlvbnM7Ci0KLS0gKHZv
aWQpZGlkT3BlblVSTHM6KE5TQXJyYXk8TlNVUkwgKj4gKil1cmxzOwotLSAodm9pZClub3RlTmV3
UmVjZW50RG9jdW1lbnRVUkw6KE5TVVJMICopdXJsOwotQHByb3BlcnR5IChyZWFkb25seSkgTlNV
SW50ZWdlciBtYXhpbXVtUmVjZW50SXRlbXNNZW51Q291bnQ7Ci0KLUBwcm9wZXJ0eSAobm9uYXRv
bWljKSBCT09MIGFwcGxpY2F0aW9uU2hvdWxkQXV0b21hdGljYWxseUxvY2FsaXplS2V5RXF1aXZh
bGVudHM7Ci0KLS0gKG51bGxhYmxlIGlkPFVJTlNXaW5kb3c+KWhvc3RXaW5kb3dGb3JVSVdpbmRv
dzooaWQpd2luZG93OwotLSAobnVsbGFibGUgaWQ8VUlOU1dpbmRvdz4pX2hvc3RXaW5kb3dGb3JV
SVdpbmRvdzooaWQpd2luZG93OwotCi0tIChudWxsYWJsZSBpZDxVSU5TV2luZG93Pilob3N0V2lu
ZG93Rm9yU2NlbmVJZGVudGlmaWVyOihOU1N0cmluZyAqKXNjZW5lSWRlbnRpZmllcjsKLS0gKG51
bGxhYmxlIGlkPFVJTlNVc2VySW50ZXJmYWNlVGhlbWU+KWFxdWFUaGVtZTsKLQotLSAodm9pZCl3
aWxsUmVxdWVzdFNjZW5lV2l0aE9wdGlvbnM6KEZCU1dvcmtzcGFjZVNjZW5lUmVxdWVzdE9wdGlv
bnMqKXJlcXVlc3RPcHRpb25zOwotLSAodm9pZClkaWRSZXF1ZXN0U2NlbmVXaXRoT3B0aW9uczoo
RkJTV29ya3NwYWNlU2NlbmVSZXF1ZXN0T3B0aW9ucyopcmVxdWVzdE9wdGlvbnMgc2NlbmVJZGVu
dGlmaWVyOihOU1N0cmluZyAqIF9OdWxsYWJsZSlzY2VuZUlkZW50aWZpZXIgb3JFcnJvcjooTlNF
cnJvciAqIF9OdWxsYWJsZSllcnJvcjsKLQotLSAodm9pZClkaWRDcmVhdGVVSVNjZW5lOihVSVNj
ZW5lICopc2NlbmUgdHJhbnNpdGlvbkNvbnRleHQ6KFVJQXBwbGljYXRpb25TY2VuZVRyYW5zaXRp
b25Db250ZXh0ICopdHJhbnNpdGlvbkNvbnRleHQ7Ci0tICh2b2lkKXdpbGxEZXN0cm95VUlTY2Vu
ZTooVUlTY2VuZSAqKXNjZW5lOwotLSAoQk9PTClzaG91bGRDbG9zZVdpbmRvd1dpdGhTY2VuZToo
VUlTY2VuZSAqKXNjZW5lOwotLSAodm9pZCljbG9zZVdpbmRvd0NvbnRyb2xsZXJGb3JTY2VuZToo
VUlTY2VuZSAqKXNjZW5lOwotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZHdyaXRlLCBjb3B5
LCBudWxsYWJsZSkgQk9PTCAoXmFwcFN1cHBvcnRzTXVsdGl3aW5kb3dDYWxsYmFjaykodm9pZCk7
Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZHdyaXRlLCBjb3B5LCBudWxsYWJsZSkgQk9PTCAo
XmFwcFN1cHBvcnRzVGFiYmVkV2luZG93c0NhbGxiYWNrKSh2b2lkKTsKLQotQHByb3BlcnR5IChu
b25hdG9taWMsIHJlYWR3cml0ZSwgY29weSwgbnVsbGFibGUpIEJPT0wgKF5oYW5kbGVFdmVudEJ5
SW5wdXRNZXRob2QpKFVJTlNFdmVudCAqKTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkd3Jp
dGUsIGNvcHksIG51bGxhYmxlKSBCT09MIChecGVyZm9ybURlZmF1bHRCZWhhdmlvckZvckV2ZW50
KShVSU5TRXZlbnQgKik7Ci0KLS0gKHZvaWQpZGlkQ29tcGxldGVBbGxCYWNrZ3JvdW5kVGFza3NB
ZnRlckJhY2tncm91bmRpbmc7Ci0KLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBudWxsYWJsZSwgcmVh
ZHdyaXRlLCBjb3B5KSBCT09MICheYXBwSXNJbkJhY2tncm91bmRTdGF0ZUNhbGxiYWNrKSh2b2lk
KTsKLQotQHByb3BlcnR5IChub25hdG9taWMsIG51bGxhYmxlLCByZWFkd3JpdGUsIGNvcHkpIE5T
VUludGVnZXIgKF5iYWNrZ3JvdW5kVGFza0NvdW50Q2FsbGJhY2spKHZvaWQpOwotCi1AcHJvcGVy
dHkgKG5vbmF0b21pYywgcmVhZHdyaXRlLCBjb3B5LCBudWxsYWJsZSkgdm9pZCAoXmVuc3VyZUJh
Y2tncm91bmRUYXNrQ291bnRSZWFjaGVkWmVyb0hhbmRsZXJDYWxsYmFjaykodm9pZCk7Ci0KLUBw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkd3JpdGUsIGNvcHksIG51bGxhYmxlKSB2b2lkICheYmVn
aW5UZXJtaW5hdGlvbkJhY2tncm91bmRUYXNrQ2FsbGJhY2spKHZvaWQpOwotQHByb3BlcnR5IChu
b25hdG9taWMsIHJlYWR3cml0ZSwgY29weSwgbnVsbGFibGUpIHZvaWQgKF5lbmRUZXJtaW5hdGlv
bkJhY2tncm91bmRUYXNrQ2FsbGJhY2spKHZvaWQpOwotCi1AcHJvcGVydHkgKG5vbmF0b21pYywg
cmVhZHdyaXRlLCBjb3B5LCBudWxsYWJsZSkgdm9pZCAoXmJhY2tncm91bmRUYXNrc1dpbGxFeHBp
cmVDYWxsYmFjaykodm9pZCk7Ci0KLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkd3JpdGUsIGNv
cHksIG51bGxhYmxlKSB2b2lkICheYXBwV2lsbFRlcm1pbmF0ZUNhbGxiYWNrKSh2b2lkKTsKLQot
LSAodm9pZCl1aUtpdFdhbnRzVG9FeGl0UHJvY2Vzc1dpdGhTdGF0dXM6KGludClzdGF0dXM7Ci0K
LS0gKHZvaWQpdWlLaXRXYW50c1RvVGVybWluYXRlUHJvY2Vzc0V4cGxpY2l0bHk7Ci0KLXR5cGVk
ZWYgdm9pZCAoXlVJTlNQcmludGluZ0RvY3VtZW50R2VuZXJhdG9yKShOU0RpY3Rpb25hcnkgKnBy
aW50SW5mb0RpY3QsIHZvaWQgKF5jb21wbGV0aW9uQmxvY2spKGlkPFVJTlNQREZEb2N1bWVudD4g
X051bGxhYmxlIHBkZkRvY3VtZW50T3JOaWwpKTsKLQotQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWR3cml0ZSwgYXNzaWduKSBCT09MIG5leHRQcmludEpvYlNob3VsZEV4cG9ydDsKLQotLSAodm9p
ZClzaG93UHJpbnRPckV4cG9ydFBhbmVsV2l0aFByaW50SW5mbzooVUlQcmludEluZm8qKXByaW50
SW5mbyBhbmRQREZEb2N1bWVudEdlbmVyYXRvcjooVUlOU1ByaW50aW5nRG9jdW1lbnRHZW5lcmF0
b3IpcGRmRG9jdW1lbnRHZW5lcmF0b3I7Ci0KLS0gKHZvaWQpZGlzbWlzc1ByaW50T3JFeHBvcnRQ
YW5lbDsKLQotLSAodm9pZClkaXNjYXJkTWFya2VkVGV4dDsKLQotQHByb3BlcnR5IChub25hdG9t
aWMsIHJlYWR3cml0ZSwgY29weSwgbnVsbGFibGUpIHZvaWQgKF5wcmludE9yRXhwb3J0UGFuZWxX
YXNEaXNtaXNzZWRDYWxsYmFjaykoQk9PTCBkaWRTdWNjZWVkKTsKLQotQHByb3BlcnR5IChub25h
dG9taWMsIHJlYWR3cml0ZSwgY29weSwgbnVsbGFibGUpIEJPT0wgKF5hY2NlcHRzQWN0aXZhdGlu
Z1RvdWNoQ2FsbGJhY2spKFVJbnQzMiBjb250ZXh0SUQsIENHUG9pbnQgbG9jYXRpb25JblNjZW5l
KTsKLQotLSAodm9pZClpdGVyYXRlV2luZG93c0ZvckRyb3BTZXNzaW9uV2l0aElEOih1aW50MzJf
dClzZXNzaW9uSUQgcmVwbHk6KHZvaWQgKF4pKGlkPFVJTlNEcm9wU2Vzc2lvbj4gX051bGxhYmxl
KSlyZXBseUhhbmRsZXI7Ci0KLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9PTCBo
YXNOb25Vc2VyU2V0dGFibGVTZXR0aW5nczsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25s
eSkgQk9PTCBoYXNVc2VyU2V0dGFibGVTZXR0aW5nczsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBy
ZWFkb25seSkgQk9PTCBhbG1vbmRUb3VjaEFsdGVybmF0aXZlc0NvbmZpZ3VyZVVJRmVhdHVyZUVu
YWJsZWQ7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgaGFzU3lzdGVtSW5m
b0NyZWRpdHNGaWxlOwotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZHdyaXRlLCBjb3B5LCBu
dWxsYWJsZSkgdm9pZCAoXnJlcXVlc3RQcm9vZnJlYWRpbmdTZXNzaW9uV2l0aERlbGVnYXRlKShp
ZCA8V1RUZXh0Vmlld0RlbGVnYXRlX1Byb3Bvc2VkX3YxPiBkZWxlZ2F0ZSwgTlNVVUlEICpzZXNz
aW9uVVVJRCwgTlNVVUlEICpzdWdnZXN0aW9uVVVJRCwgTlNSZWN0IHJlY3QsIFVJVmlldyAqdWlW
aWV3KTsKLQotLSAodm9pZClhYm9ydEFsbFRvb2xUaXBzOwotCistIChpZDxVSU5TV2luZG93Pilo
b3N0V2luZG93Rm9yVUlXaW5kb3c6KGlkKXdpbmRvdzsKIEBlbmQKIAotTlNfSEVBREVSX0FVRElU
X0VORChudWxsYWJpbGl0eSwgc2VuZGFiaWxpdHkpCi0KIFdURl9FWFRFUk5fQ19CRUdJTgogZXh0
ZXJuIGlkPFVJTlNBcHBsaWNhdGlvbkRlbGVnYXRlPiBVSU5TU2hhcmVkQXBwbGljYXRpb25EZWxl
Z2F0ZSh2b2lkKTsKIFdURl9FWFRFUk5fQ19FTkQKQEAgLTEyNTIsNiArMTEzMCwxMSBAQCB0eXBl
ZGVmIE5TX0VOVU0oTlNVSW50ZWdlciwgX1VJU2Nyb2xsRGV2aWNlQ2F0ZWdvcnkpIHsKIEBwcm9w
ZXJ0eSAobm9uYXRvbWljLCBjb3B5KSBVSUNvbnRleHRNZW51QWN0aW9uUHJvdmlkZXIgYWN0aW9u
UHJvdmlkZXI7CiBAZW5kCiAKK0Bwcm90b2NvbCBfVUlDbGlja0ludGVyYWN0aW9uRHJpdmVyRGVs
ZWdhdGU7CitAcHJvdG9jb2wgX1VJQ2xpY2tJbnRlcmFjdGlvbkRyaXZpbmcgPE5TT2JqZWN0Pgor
QHByb3BlcnR5IChub25hdG9taWMsIHdlYWspIGlkIDxfVUlDbGlja0ludGVyYWN0aW9uRHJpdmVy
RGVsZWdhdGU+IGRlbGVnYXRlOworQGVuZAorCiBAaW50ZXJmYWNlIF9VSUNsaWNrUHJlc2VudGF0
aW9uSW50ZXJhY3Rpb24gKElQSSkKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcgLyosIG51
bGxhYmxlICovKSBOU0FycmF5PGlkPF9VSUNsaWNrSW50ZXJhY3Rpb25Ecml2aW5nPj4gKm92ZXJy
aWRlRHJpdmVyczsKIEBlbmQKQEAgLTEzMDAsNiArMTE4MywyNiBAQCB0eXBlZGVmIE5TX0VOVU0o
TlNVSW50ZWdlciwgX1VJU2Nyb2xsRGV2aWNlQ2F0ZWdvcnkpIHsKIC0gKHZvaWQpc2V0SW5pdGlh
bERpcmVjdGlvbjsKIEBlbmQKIAorQGNsYXNzIENBTGF5ZXJIb3N0OworCitAaW50ZXJmYWNlIF9V
SUxheWVySG9zdFZpZXcgOiBVSVZpZXcKKy0gKGluc3RhbmNldHlwZSlpbml0V2l0aEZyYW1lOihD
R1JlY3QpZnJhbWUgcGlkOihwaWRfdClwaWQgY29udGV4dElEOih1aW50MzJfdCljb250ZXh0SUQ7
CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIHJldGFpbikgQ0FMYXllckhvc3QgKmxh
eWVySG9zdDsKK0BlbmQKKworQGludGVyZmFjZSBfVUlSZW1vdGVWaWV3IDogX1VJTGF5ZXJIb3N0
VmlldworLSAoaW5zdGFuY2V0eXBlKWluaXRXaXRoRnJhbWU6KENHUmVjdClmcmFtZSBwaWQ6KHBp
ZF90KXBpZCBjb250ZXh0SUQ6KHVpbnQzMl90KWNvbnRleHRJRDsKK0BlbmQKKworQGludGVyZmFj
ZSBfVUlWaXNpYmlsaXR5UHJvcGFnYXRpb25WaWV3IDogVUlWaWV3CitAZW5kCisKKyNpZiBIQVZF
KE5PTl9IT1NUSU5HX1ZJU0lCSUxJVFlfUFJPUEFHQVRJT05fVklFVykKK0BpbnRlcmZhY2UgX1VJ
Tm9uSG9zdGluZ1Zpc2liaWxpdHlQcm9wYWdhdGlvblZpZXcgOiBfVUlWaXNpYmlsaXR5UHJvcGFn
YXRpb25WaWV3CistIChpbnN0YW5jZXR5cGUpaW5pdFdpdGhGcmFtZTooQ0dSZWN0KWZyYW1lIHBp
ZDoocGlkX3QpcGlkIGVudmlyb25tZW50SWRlbnRpZmllcjooTlNTdHJpbmcgKillbnZpcm9ubWVu
dElkZW50aWZpZXI7CitAZW5kCisjZW5kaWYKKwogI2lmIF9faGFzX2luY2x1ZGUoPFVJS2l0L1VJ
VGV4dElucHV0TXVsdGlEb2N1bWVudC5oPikKICNpbXBvcnQgPFVJS2l0L1VJVGV4dElucHV0TXVs
dGlEb2N1bWVudC5oPgogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Zy
YW1lSW5mb0RhdGEuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0ZyYW1lSW5mb0RhdGEuaAppbmRl
eCBkYTdkNDYyMWI1MTMuLjllYjkyMDk0YTU1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvRnJhbWVJbmZvRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0ZyYW1lSW5m
b0RhdGEuaApAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmICFfX2hhc19m
ZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRF
Uk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkKLQogI2luY2x1ZGUgIldl
YkZyYW1lTWV0cmljcy5oIgogI2luY2x1ZGUgPFdlYkNvcmUvQ2VydGlmaWNhdGVJbmZvLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9GcmFtZUlkZW50aWZpZXIuaD4KQEAgLTY0LDUgKzYyLDMgQEAgc3Ry
dWN0IEZyYW1lSW5mb0RhdGEgewogRnJhbWVJbmZvRGF0YSBsZWdhY3lFbXB0eUZyYW1lSW5mbyhX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7CiAKIH0KLQotI2VuZGlmIC8vICFfX2hhc19mZWF0
dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9Q
KSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0ZyYW1lVHJlZU5vZGVEYXRhLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9GcmFtZVRyZWVOb2RlRGF0YS5oCmluZGV4IDA1YTFhOTNhOTNkMS4uOTUwMzE5MmIxOTc2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9GcmFtZVRyZWVOb2RlRGF0YS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0ZyYW1lVHJlZU5vZGVEYXRhLmgKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCAoZGVm
aW5lZChXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkgJiYgV0tfU1VQUE9SVFNfU1dJ
RlRfT0JKQ1hYX0lOVEVST1ApCi0KICNpbmNsdWRlICJGcmFtZUluZm9EYXRhLmgiCiAKIG5hbWVz
cGFjZSBXZWJLaXQgewpAQCAtMzcsNSArMzUsMyBAQCBzdHJ1Y3QgRnJhbWVUcmVlTm9kZURhdGEg
ewogfTsKIAogfQotCi0jZW5kaWYgLy8gIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmlu
ZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZU
X09CSkNYWF9JTlRFUk9QKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvSlNIYW5k
bGVJbmZvLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9KU0hhbmRsZUluZm8uaAppbmRleCA5Yjc0
MDI2NjEyNjUuLmEzOTAwNGJlYWI5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
SlNIYW5kbGVJbmZvLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvSlNIYW5kbGVJbmZvLmgK
QEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiAhX19oYXNfZmVhdHVyZSht
b2R1bGVzKSB8fCAoZGVmaW5lZChXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkgJiYg
V0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApCi0KICNpbmNsdWRlICJGcmFtZUluZm9E
YXRhLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Qcm9jZXNzUXVhbGlmaWVkLmg+CiAKQEAgLTUzLDUg
KzUxLDMgQEAgc3RydWN0IEpTSGFuZGxlSW5mbyB7CiB9OwogCiB9Ci0KLSNlbmRpZiAvLyAhX19o
YXNfZmVhdHVyZShtb2R1bGVzKSB8fCAoZGVmaW5lZChXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhf
SU5URVJPUCkgJiYgV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJGcmFtZU1ldHJpY3MuaCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkZyYW1lTWV0cmljcy5oCmluZGV4IGZiNmE1MWM0NTAxMC4uNzg0MWY4NjZhMTVh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJGcmFtZU1ldHJpY3MuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJGcmFtZU1ldHJpY3MuaApAQCAtMjUsOCArMjUsNiBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZp
bmVkKFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lG
VF9PQkpDWFhfSU5URVJPUCkKLQogI2luY2x1ZGUgPFdlYkNvcmUvSW50U2l6ZS5oPgogCiBuYW1l
c3BhY2UgV2ViS2l0IHsKQEAgLTQ0LDUgKzQyLDMgQEAgc3RydWN0IFdlYkZyYW1lTWV0cmljcyB7
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vICFfX2hhc19mZWF0dXJl
KG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSAm
JiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYlB1c2hNZXNzYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQ
dXNoTWVzc2FnZS5oCmluZGV4IDNmNDg1NTM2MDUwNy4uMzllMTA1NGJlMGIzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQdXNoTWVzc2FnZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL1dlYlB1c2hNZXNzYWdlLmgKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBv
bmNlCiAKLSNpZiAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCAoZGVmaW5lZChXS19TVVBQT1JU
U19TV0lGVF9PQkpDWFhfSU5URVJPUCkgJiYgV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVS
T1ApCi0KICNpbmNsdWRlIDxXZWJDb3JlL05vdGlmaWNhdGlvblBheWxvYWQuaD4KICNpbmNsdWRl
IDxvcHRpb25hbD4KICNpbmNsdWRlIDx3dGYvVVJMLmg+CkBAIC01OCw1ICs1NiwzIEBAIHN0cnVj
dCBXZWJQdXNoTWVzc2FnZSB7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBPUlRTX1NXSUZU
X09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhLmgg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YS5oCmluZGV4IDNm
NjY2MmE0OTFhMC4uODVlYmNhMzM3MGEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YnNpdGVEYXRhL1dlYnNpdGVEYXRhLmgKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNl
CiAKLSNpZiAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCAoZGVmaW5lZChXS19TVVBQT1JUU19T
V0lGVF9PQkpDWFhfSU5URVJPUCkgJiYgV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1Ap
Ci0KICNpbmNsdWRlIDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9TZWN1cml0eU9yaWdpbkRhdGEuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgpAQCAt
NzIsNSArNzAsMyBAQCBzdHJ1Y3QgV2Vic2l0ZURhdGEgewogfTsKIAogfQotCi0jZW5kaWYgLy8g
IV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmluZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JK
Q1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KaW5kZXggZmRhYzUw
MzczMmFmLi41NTBjNDY4MGI0ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbQpAQCAtMzcyNyw0OCArMzcyNyw2IEBAIC0gKHZvaWQpcmVzdG9y
ZURhdGE6KE5TRGF0YSAqKWRhdGEgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQoXikoTlNFcnJvciAq
KSljb21wbGV0CiAgICAgfQogfQogCi0jaWYgUExBVEZPUk0oTUFDKQotCi0tIChCT09MKV9hbHdh
eXNCb3VuY2VWZXJ0aWNhbAotewotICAgIHJldHVybiBfaW1wbC0+YWx3YXlzQm91bmNlVmVydGlj
YWwoKTsKLX0KLQotLSAodm9pZClfc2V0QWx3YXlzQm91bmNlVmVydGljYWw6KEJPT0wpdmFsdWUK
LXsKLSAgICBfaW1wbC0+c2V0QWx3YXlzQm91bmNlVmVydGljYWwodmFsdWUpOwotfQotCi0tIChC
T09MKV9hbHdheXNCb3VuY2VIb3Jpem9udGFsCi17Ci0gICAgcmV0dXJuIF9pbXBsLT5hbHdheXNC
b3VuY2VIb3Jpem9udGFsKCk7Ci19Ci0KLS0gKHZvaWQpX3NldEFsd2F5c0JvdW5jZUhvcml6b250
YWw6KEJPT0wpdmFsdWUKLXsKLSAgICBfaW1wbC0+c2V0QWx3YXlzQm91bmNlSG9yaXpvbnRhbCh2
YWx1ZSk7Ci19Ci0KLS0gKHZvaWQpX3NldENvbnRlbnRPZmZzZXRYOihOU051bWJlciAqKXggeToo
TlNOdW1iZXIgKil5IGFuaW1hdGVkOihCT09MKWFuaW1hdGVkCi17Ci0gICAgc3RkOjpvcHRpb25h
bDxpbnQ+IG9wdGlvbmFsWCA9IHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoeCkKLSAgICAgICAgb3B0
aW9uYWxYID0gc3RhdGljX2Nhc3Q8aW50PihbeCBkb3VibGVWYWx1ZV0pOwotCi0gICAgc3RkOjpv
cHRpb25hbDxpbnQ+IG9wdGlvbmFsWSA9IHN0ZDo6bnVsbG9wdDsKLSAgICBpZiAoeSkKLSAgICAg
ICAgb3B0aW9uYWxZID0gc3RhdGljX2Nhc3Q8aW50PihbeSBkb3VibGVWYWx1ZV0pOwotCi0gICAg
X3BhZ2UtPnNldENvbnRlbnRPZmZzZXQob3B0aW9uYWxYLCBvcHRpb25hbFksIGFuaW1hdGVkID8g
V2ViQ29yZTo6U2Nyb2xsSXNBbmltYXRlZDo6WWVzIDogV2ViQ29yZTo6U2Nyb2xsSXNBbmltYXRl
ZDo6Tm8pOwotfQotCi0jZW5kaWYgLy8gUExBVEZPUk0oTUFDKQotCi0tICh2b2lkKV9zY3JvbGxU
b0VkZ2U6KF9XS1JlY3RFZGdlKWVkZ2UgYW5pbWF0ZWQ6KEJPT0wpYW5pbWF0ZWQKLXsKLSAgICBz
ZWxmLl9wcm90ZWN0ZWRQYWdlLT5zY3JvbGxUb0VkZ2UodG9SZWN0RWRnZXMoZWRnZSksIGFuaW1h
dGVkID8gV2ViQ29yZTo6U2Nyb2xsSXNBbmltYXRlZDo6WWVzIDogV2ViQ29yZTo6U2Nyb2xsSXNB
bmltYXRlZDo6Tm8pOwotfQotCiBAZW5kCiAKICNwcmFnbWEgbWFyayAtCkBAIC02NjE4LDYgKzY1
NzYsMTEgQEAgLSAodm9pZClfc2V0VXNlU3lzdGVtQXBwZWFyYW5jZTooQk9PTCl1c2VTeXN0ZW1B
cHBlYXJhbmNlCiAgICAgW1tfY29uZmlndXJhdGlvbiBwcmVmZXJlbmNlc10gX3NldFVzZVN5c3Rl
bUFwcGVhcmFuY2U6dXNlU3lzdGVtQXBwZWFyYW5jZV07CiB9CiAKKy0gKHZvaWQpX3Njcm9sbFRv
RWRnZTooX1dLUmVjdEVkZ2UpZWRnZSBhbmltYXRlZDooQk9PTClhbmltYXRlZAoreworICAgIHNl
bGYuX3Byb3RlY3RlZFBhZ2UtPnNjcm9sbFRvRWRnZSh0b1JlY3RFZGdlcyhlZGdlKSwgYW5pbWF0
ZWQgPyBXZWJDb3JlOjpTY3JvbGxJc0FuaW1hdGVkOjpZZXMgOiBXZWJDb3JlOjpTY3JvbGxJc0Fu
aW1hdGVkOjpObyk7Cit9CisKIC0gKEJPT0wpX3Nob3VsZFN1cHByZXNzVG9wQ29sb3JFeHRlbnNp
b25WaWV3CiB7CiAgICAgcmV0dXJuIF9zaG91bGRTdXBwcmVzc1RvcENvbG9yRXh0ZW5zaW9uVmll
dzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZp
ZXdDb25maWd1cmF0aW9uSW50ZXJuYWwuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9D
b2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uSW50ZXJuYWwuaAppbmRleCA0NDYyYTYyZjQ4ZjUu
LjU4N2QyMWY0NGEzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb25JbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uSW50ZXJuYWwuaApAQCAt
MjUsMTkgKzI1LDE0IEBACiAKICNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdDb25maWd1cmF0aW9u
UHJpdmF0ZS5oPgogCi0jaWYgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmluZWQoV0tf
U1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZUX09CSkNY
WF9JTlRFUk9QKQorI2lmZGVmIF9fY3BsdXNwbHVzCisjaWYgIV9faGFzX2ZlYXR1cmUobW9kdWxl
cykKIAogI2ltcG9ydCAiQVBJUGFnZUNvbmZpZ3VyYXRpb24uaCIKICNpbXBvcnQgIldLT2JqZWN0
LmgiCiAjaW1wb3J0IDx3dGYvQWxpZ25lZFN0b3JhZ2UuaD4KICNpbXBvcnQgPHd0Zi9SZWYuaD4K
IAotI2VuZGlmIC8vICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBP
UlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5U
RVJPUCkKLQotTlNfSEVBREVSX0FVRElUX0JFR0lOKG51bGxhYmlsaXR5LCBzZW5kYWJpbGl0eSkK
LQotI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBPUlRTX1NX
SUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkK
LQogbmFtZXNwYWNlIFdlYktpdCB7CiAKIHRlbXBsYXRlPD4gc3RydWN0IFdyYXBwZXJUcmFpdHM8
QVBJOjpQYWdlQ29uZmlndXJhdGlvbj4gewpAQCAtNTEsMjYgKzQ2LDI1IEBAIHRlbXBsYXRlPD4g
c3RydWN0IFdyYXBwZXJUcmFpdHM8QVBJOjpQYWdlQ29uZmlndXJhdGlvbj4gewogICAgIEFsaWdu
ZWRTdG9yYWdlPEFQSTo6UGFnZUNvbmZpZ3VyYXRpb24+IF9wYWdlQ29uZmlndXJhdGlvbjsKIH0K
IAotQGVuZAotCi0jZW5kaWYgLy8gIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmluZWQo
V0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZUX09C
SkNYWF9JTlRFUk9QKQotCi1AaW50ZXJmYWNlIFdLV2ViVmlld0NvbmZpZ3VyYXRpb24gKCkKLQog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBudWxsYWJsZSkgTlNTdHJpbmcgKl9hcHBs
aWNhdGlvbk5hbWVGb3JEZXNrdG9wVXNlckFnZW50OwogCi0rIChCT09MKV9pc1ZhbGlkQ3VzdG9t
U2NoZW1lOihOU1N0cmluZyAqKXVybFNjaGVtZTsKLQogQGVuZAogCi0jaWYgIV9faGFzX2ZlYXR1
cmUobW9kdWxlcykgfHwgKGRlZmluZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1Ap
ICYmIFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKQotCiAjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKIF9XS0RyYWdMaWZ0RGVsYXkgdG9EcmFnTGlmdERlbGF5KE5TVUludGVnZXIpOwog
X1dLRHJhZ0xpZnREZWxheSB0b1dLRHJhZ0xpZnREZWxheShXZWJLaXQ6OkRyYWdMaWZ0RGVsYXkp
OwogV2ViS2l0OjpEcmFnTGlmdERlbGF5IGZyb21XS0RyYWdMaWZ0RGVsYXkoX1dLRHJhZ0xpZnRE
ZWxheSk7CiAjZW5kaWYKIAotI2VuZGlmIC8vICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChk
ZWZpbmVkKFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19T
V0lGVF9PQkpDWFhfSU5URVJPUCkKKyNlbmRpZiAvLyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKQor
I2VuZGlmIC8vIF9fY3BsdXNwbHVzCisKK05TX0FTU1VNRV9OT05OVUxMX0JFR0lOCisKK0BpbnRl
cmZhY2UgV0tXZWJWaWV3Q29uZmlndXJhdGlvbiAoKQorCisrIChCT09MKV9pc1ZhbGlkQ3VzdG9t
U2NoZW1lOihOU1N0cmluZyAqKXVybFNjaGVtZTsKKworQGVuZAogCi1OU19IRUFERVJfQVVESVRf
RU5EKG51bGxhYmlsaXR5LCBzZW5kYWJpbGl0eSkKK05TX0FTU1VNRV9OT05OVUxMX0VORApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVy
bmFsLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3SW50ZXJu
YWwuaAppbmRleCAxMWFkMTIxYmExMWEuLmYwZjgwYjBkYWQ4NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVybmFsLmgKKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVybmFsLmgKQEAgLTIz
LDE1ICsyMywxMSBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
LSNpbXBvcnQgIl9XS1RleHRFeHRyYWN0aW9uSW50ZXJuYWwuaCIKLSNpbXBvcnQgPFdlYktpdC9X
S1NoYXJlU2hlZXQuaD4KICNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXcuaD4KLSNpbXBvcnQgPFdl
YktpdC9XS1dlYlZpZXdDb25maWd1cmF0aW9uLmg+Ci0jaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3
UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L19XS1RleHRFeHRyYWN0aW9uLmg+Ci0jaW1wb3J0
IDxwYWwvc3BpL2NvY29hL1dyaXRpbmdUb29sc1NQSS5oPgogCi0jaWYgIV9faGFzX2ZlYXR1cmUo
bW9kdWxlcykgfHwgKGRlZmluZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYm
IFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKQorI2lmZGVmIF9fY3BsdXNwbHVzCisj
aWYgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykKIAogI2ltcG9ydCAiUERGUGx1Z2luSWRlbnRpZmll
ci5oIgogI2ltcG9ydCA8V2ViQ29yZS9Db2NvYVZpZXcuaD4KQEAgLTQxLDggKzM3LDEzIEBACiAj
aW1wb3J0IDxXZWJDb3JlL0ZpeGVkQ29udGFpbmVyRWRnZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUv
TGF5ZXJIb3N0aW5nQ29udGV4dElkZW50aWZpZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEV4
dHJhY3Rpb25UeXBlcy5oPgorI2ltcG9ydCA8V2ViS2l0L1dLU2hhcmVTaGVldC5oPgorI2ltcG9y
dCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb24uaD4KKyNpbXBvcnQgPFdlYktpdC9XS1dl
YlZpZXdQcml2YXRlLmg+CiAjaW1wb3J0ICJfV0tBdHRhY2htZW50SW50ZXJuYWwuaCIKKyNpbXBv
cnQgIl9XS1RleHRFeHRyYWN0aW9uSW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1dlYlZpZXdQcmlu
dEZvcm1hdHRlckludGVybmFsLmgiCisjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1dyaXRpbmdUb29s
c1NQSS5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrUHRyLmg+CiAjaW1wb3J0IDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KICNpbXBvcnQgPHd0Zi9IYXNoTWFwLmg+CkBAIC03MSwxNCArNzIsOCBAQAog
I2ltcG9ydCA8V2ViQ29yZS9WaWV3cG9ydEFyZ3VtZW50cy5oPgogI2VuZGlmCiAKLSNlbmRpZiAv
LyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCAoZGVmaW5lZChXS19TVVBQT1JUU19TV0lGVF9P
QkpDWFhfSU5URVJPUCkgJiYgV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApCi0KLU5T
X0hFQURFUl9BVURJVF9CRUdJTihudWxsYWJpbGl0eSwgc2VuZGFiaWxpdHkpCi0KICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQogCi1AcHJvdG9jb2wgQkVTY3JvbGxWaWV3RGVsZWdhdGU7Ci0KICNp
ZiBFTkFCTEUoV1JJVElOR19UT09MUykKICNkZWZpbmUgV0tfV0VCX1ZJRVdfUFJPVE9DT0xTIDxX
S0JFU2Nyb2xsVmlld0RlbGVnYXRlLCBXVFdyaXRpbmdUb29sc0RlbGVnYXRlLCBVSVRleHRJbnB1
dFRyYWl0cz4KICNlbHNlCkBAIC0xMDEsOCArOTYsNiBAQCBOU19IRUFERVJfQVVESVRfQkVHSU4o
bnVsbGFiaWxpdHksIHNlbmRhYmlsaXR5KQogI2RlZmluZSBXS19XRUJfVklFV19QUk9UT0NPTFMK
ICNlbmRpZgogCi0jaWYgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgV0tfU1VQUE9SVFNfU1dJ
RlRfT0JKQ1hYX0lOVEVST1AKLQogI2lmIFVTRShBUFBLSVQpCiB1c2luZyBDb2NvYUVkZ2VJbnNl
dHMgPSBOU0VkZ2VJbnNldHM7CiAjZW5kaWYKQEAgLTE3Niw3ICsxNjksNiBAQCBlbnVtIGNsYXNz
IFByZWZlclNvbGlkQ29sb3JIYXJkUG9ja2V0UmVhc29uIDogdWludDhfdCB7CiBAY2xhc3MgV0tT
Y3JvbGxHZW9tZXRyeTsKIEBjbGFzcyBXS1Njcm9sbFZpZXc7CiBAY2xhc3MgV0tUZXh0RXh0cmFj
dGlvbkludGVyYWN0aW9uOwotQGNsYXNzIFdLVGV4dEV4dHJhY3Rpb25JdGVtOwogQGNsYXNzIFdL
V2ViVmlld0NvbnRlbnRQcm92aWRlclJlZ2lzdHJ5OwogQGNsYXNzIF9XS0ZyYW1lSGFuZGxlOwog
QGNsYXNzIF9XS1dhcm5pbmdWaWV3OwpAQCAtMjkzLDEwICsyODUsNiBAQCBzdHJ1Y3QgUGVyV2Vi
UHJvY2Vzc1N0YXRlIHsKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKLSNlbmRp
ZiAvLyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhf
SU5URVJPUAotCi0jaWYgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgV0tfU1VQUE9SVFNfU1dJ
RlRfT0JKQ1hYX0lOVEVST1AKLQogQGludGVyZmFjZSBXS1dlYlZpZXcgKCkgV0tfV0VCX1ZJRVdf
UFJPVE9DT0xTIHsKIAogQHBhY2thZ2UKQEAgLTUyOCw3ICs1MTYsNiBAQCBzdHJ1Y3QgUGVyV2Vi
UHJvY2Vzc1N0YXRlIHsKICAgICBIYXNoTWFwPHVuc2lnbmVkIC8qIHN0cmluZyBoYXNoICovLCBU
ZXh0VmFsaWRhdGlvbk1hcFZhbHVlPiBfdGV4dFZhbGlkYXRpb25DYWNoZTsKICNlbmRpZgogICAg
IFJlZlB0cjxXZWJLaXQ6OlRleHRFeHRyYWN0aW9uVVJMQ2FjaGU+IF90ZXh0RXh0cmFjdGlvblVS
TENhY2hlOwotCiB9CiAKIC0gKEJPT0wpX2lzVmFsaWQ7CkBAIC02MTYsNyArNjAzLDcgQEAgc3Ry
dWN0IFBlcldlYlByb2Nlc3NTdGF0ZSB7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKE1BQykgJiYg
RU5BQkxFKENPTlRFTlRfSU5TRVRfQkFDS0dST1VORF9GSUxMKQotLSAobnVsbGFibGUgTlNDb2xv
ciAqKV9hZGp1c3RlZENvbG9yRm9yVG9wQ29udGVudEluc2V0Q29sb3JGcm9tVUlEZWxlZ2F0ZToo
bnVsbGFibGUgTlNDb2xvciAqKXByb3Bvc2VkQ29sb3I7CistIChOU0NvbG9yICopX2FkanVzdGVk
Q29sb3JGb3JUb3BDb250ZW50SW5zZXRDb2xvckZyb21VSURlbGVnYXRlOihOU0NvbG9yICopcHJv
cG9zZWRDb2xvcjsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgUmV0YWluUHRyPE5T
U2Nyb2xsUG9ja2V0PiBfY29weVRvcFNjcm9sbFBvY2tldDsKIC0gKHZvaWQpX2FkZFJlYXNvblRv
UHJlZmVyU29saWRDb2xvckhhcmRQb2NrZXQ6KFdlYktpdDo6UHJlZmVyU29saWRDb2xvckhhcmRQ
b2NrZXRSZWFzb24pcmVhc29uOwogLSAodm9pZClfcmVtb3ZlUmVhc29uVG9QcmVmZXJTb2xpZENv
bG9ySGFyZFBvY2tldDooV2ViS2l0OjpQcmVmZXJTb2xpZENvbG9ySGFyZFBvY2tldFJlYXNvbily
ZWFzb247CkBAIC02NDAsMTEgKzYyNywxMSBAQCBzdHJ1Y3QgUGVyV2ViUHJvY2Vzc1N0YXRlIHsK
IC0gKE5ha2VkUHRyPFdlYktpdDo6V2ViUGFnZVByb3h5PilfcGFnZTsKIC0gKFJlZlB0cjxXZWJL
aXQ6OldlYlBhZ2VQcm94eT4pX3Byb3RlY3RlZFBhZ2U7CiAjaWYgRU5BQkxFKFNDUkVFTl9USU1F
KQotLSAobnVsbGFibGUgU1RXZWJwYWdlQ29udHJvbGxlciAqKV9zY3JlZW5UaW1lV2VicGFnZUNv
bnRyb2xsZXI7CistIChTVFdlYnBhZ2VDb250cm9sbGVyICopX3NjcmVlblRpbWVXZWJwYWdlQ29u
dHJvbGxlcjsKICNpZiBQTEFURk9STShNQUMpCi0tIChudWxsYWJsZSBOU1Zpc3VhbEVmZmVjdFZp
ZXcgKilfc2NyZWVuVGltZUJsdXJyZWRTbmFwc2hvdDsKKy0gKE5TVmlzdWFsRWZmZWN0VmlldyAq
KV9zY3JlZW5UaW1lQmx1cnJlZFNuYXBzaG90OwogI2Vsc2UKLS0gKG51bGxhYmxlIFVJVmlzdWFs
RWZmZWN0VmlldyAqKV9zY3JlZW5UaW1lQmx1cnJlZFNuYXBzaG90OworLSAoVUlWaXN1YWxFZmZl
Y3RWaWV3ICopX3NjcmVlblRpbWVCbHVycmVkU25hcHNob3Q7CiAjZW5kaWYKICNlbmRpZgogCkBA
IC02NjUsNDYgKzY1MiwxNiBAQCBzdHJ1Y3QgUGVyV2ViUHJvY2Vzc1N0YXRlIHsKIAogQGVuZAog
Ci0jZW5kaWYgLy8gIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgV0tfU1VQUE9SVFNfU1dJRlRf
T0JKQ1hYX0lOVEVST1AKLQotQGludGVyZmFjZSBXS1dlYlZpZXcgKCkKLQotI2lmIFBMQVRGT1JN
KE1BQykKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsd2F5c0JvdW5jZVZlcnRp
Y2FsOikgQk9PTCBfYWx3YXlzQm91bmNlVmVydGljYWw7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywg
c2V0dGVyPV9zZXRBbHdheXNCb3VuY2VIb3Jpem9udGFsOikgQk9PTCBfYWx3YXlzQm91bmNlSG9y
aXpvbnRhbDsKLQotLSAodm9pZClfc2V0Q29udGVudE9mZnNldFg6KG51bGxhYmxlIE5TTnVtYmVy
ICopeCB5OihudWxsYWJsZSBOU051bWJlciAqKXkgYW5pbWF0ZWQ6KEJPT0wpYW5pbWF0ZWQgTlNf
U1dJRlRfTkFNRShfc2V0Q29udGVudE9mZnNldCh4Onk6YW5pbWF0ZWQ6KSk7Ci0jZW5kaWYgLy8g
UExBVEZPUk0oTUFDKQotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TU3RyaW5n
ICpfbmFtZUZvclZpc3VhbElkZW50aWZpY2F0aW9uT3ZlcmxheTsKLQotLSAodm9pZClfc2V0TmVl
ZHNTY3JvbGxHZW9tZXRyeVVwZGF0ZXM6KEJPT0wpbmVlZHNTY3JvbGxHZW9tZXRyeVVwZGF0ZXM7
Ci0KLS0gKHZvaWQpX3Njcm9sbFRvRWRnZTooX1dLUmVjdEVkZ2UpZWRnZSBhbmltYXRlZDooQk9P
TClhbmltYXRlZDsKLQotQGVuZAotCiBAaW50ZXJmYWNlIFdLV2ViVmlldyAoV0tUZXh0RXh0cmFj
dGlvbikKIAotLSAodm9pZClfcmVxdWVzdEpTSGFuZGxlRm9yTm9kZUlkZW50aWZpZXI6KE5TU3Ry
aW5nICopbm9kZUlkZW50aWZpZXIgc2VhcmNoVGV4dDooTlNTdHJpbmcgKilzZWFyY2hUZXh0IGNv
bXBsZXRpb25IYW5kbGVyOih2b2lkICheKShfV0tKU0hhbmRsZSAqIF9OdWxsYWJsZSkpY29tcGxl
dGlvbkhhbmRsZXI7Ci0KLSNpZiAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCBXS19TVVBQT1JU
U19TV0lGVF9PQkpDWFhfSU5URVJPUAotCi0tICh2b2lkKV9yZXF1ZXN0VGV4dEV4dHJhY3Rpb25J
bnRlcm5hbDoobnVsbGFibGUgX1dLVGV4dEV4dHJhY3Rpb25Db25maWd1cmF0aW9uICopY29uZmln
dXJhdGlvbiBjb21wbGV0aW9uOihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6VGV4dEV4dHJhY3Rpb246Okl0ZW0+JiYpPiYmKWNvbXBsZXRpb247Ci0KKy0gKHZv
aWQpX3JlcXVlc3RUZXh0RXh0cmFjdGlvbkludGVybmFsOihfV0tUZXh0RXh0cmFjdGlvbkNvbmZp
Z3VyYXRpb24gKiljb25maWd1cmF0aW9uIGNvbXBsZXRpb246KENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpUZXh0RXh0cmFjdGlvbjo6SXRlbT4mJik+JiYpY29t
cGxldGlvbjsKKy0gKHZvaWQpX3JlcXVlc3RKU0hhbmRsZUZvck5vZGVJZGVudGlmaWVyOihOU1N0
cmluZyAqKW5vZGVJZGVudGlmaWVyIHNlYXJjaFRleHQ6KE5TU3RyaW5nICopc2VhcmNoVGV4dCBj
b21wbGV0aW9uSGFuZGxlcjoodm9pZCAoXikoX1dLSlNIYW5kbGUgKikpY29tcGxldGlvbkhhbmRs
ZXI7CiAjaWYgRU5BQkxFKFRFWFRfRVhUUkFDVElPTl9GSUxURVIpCiAtICh2b2lkKV92YWxpZGF0
ZVRleHQ6KGNvbnN0IFN0cmluZyYpdGV4dCBpbkZyYW1lOihzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllcj4mJilmcmFtZUlkZW50aWZpZXIgaW5Ob2RlOihzdGQ6Om9wdGlvbmFs
PFdlYkNvcmU6Ok5vZGVJZGVudGlmaWVyPiYmKW5vZGVJZGVudGlmaWVyIGNvbXBsZXRpb25IYW5k
bGVyOihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFN0cmluZyYpPiYmKWNvbXBsZXRpb25I
YW5kbGVyOwogI2VuZGlmCiAKLSNlbmRpZiAvLyAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCBX
S19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUAotCi0tICh2b2lkKV9yZXF1ZXN0VGV4dEV4
dHJhY3Rpb246KG51bGxhYmxlIF9XS1RleHRFeHRyYWN0aW9uQ29uZmlndXJhdGlvbiAqKWNvbmZp
Z3VyYXRpb24gY29tcGxldGlvbkhhbmRsZXI6KE5TX1NXSUZUX1VJX0FDVE9SIHZvaWQgKF4pKFdL
VGV4dEV4dHJhY3Rpb25JdGVtICogX051bGxhYmxlKSljb21wbGV0aW9uSGFuZGxlcjsKLS0gKHZv
aWQpX2Rlc2NyaWJlSW50ZXJhY3Rpb246KG51bGxhYmxlIF9XS1RleHRFeHRyYWN0aW9uSW50ZXJh
Y3Rpb24gKilpbnRlcmFjdGlvbiBjb21wbGV0aW9uSGFuZGxlcjooTlNfU1dJRlRfVUlfQUNUT1Ig
dm9pZCAoXikoTlNTdHJpbmcgKiBfTnVsbGFibGVfcmVzdWx0LCBOU0Vycm9yICogX051bGxhYmxl
KSljb21wbGV0aW9uSGFuZGxlcjsKLQogQGVuZAogCi0jaWYgIV9faGFzX2ZlYXR1cmUobW9kdWxl
cykgfHwgV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1AKLQogUmV0YWluUHRyPE5TRXJy
b3I+IG5zRXJyb3JGcm9tRXhjZXB0aW9uRGV0YWlscyhjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OkV4Y2VwdGlvbkRldGFpbHM+Jik7CiAKICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpICYm
IFBMQVRGT1JNKElPU19GQU1JTFkpCkBAIC03MjQsOCArNjgxLDYgQEAgUmV0YWluUHRyPE5TRXJy
b3I+IG5zRXJyb3JGcm9tRXhjZXB0aW9uRGV0YWlscyhjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OkV4Y2UKIAogV2ViQ29yZTo6Q29jb2FDb2xvciAqc2FtcGxlZEZpeGVkUG9zaXRpb25Db250
ZW50Q29sb3IoY29uc3QgV2ViQ29yZTo6Rml4ZWRDb250YWluZXJFZGdlcyYsIFdlYkNvcmU6OkJv
eFNpZGUpOwogCi0jZW5kaWYgLy8gIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgV0tfU1VQUE9S
VFNfU1dJRlRfT0JKQ1hYX0lOVEVST1AKLQogI2lmIEVOQUJMRShURVhUX0VYVFJBQ1RJT05fRklM
VEVSKQogCiBAaW50ZXJmYWNlIFdLV2ViVmlldyAoVGV4dEV4dHJhY3Rpb25GaWx0ZXIpCkBAIC03
MzQsNCArNjg5LDMxIEBAIFdlYkNvcmU6OkNvY29hQ29sb3IgKnNhbXBsZWRGaXhlZFBvc2l0aW9u
Q29udGVudENvbG9yKGNvbnN0IFdlYkNvcmU6OkZpeGVkQ29udGFpCiAKICNlbmRpZgogCi1OU19I
RUFERVJfQVVESVRfRU5EKG51bGxhYmlsaXR5LCBzZW5kYWJpbGl0eSkKKyNlbmRpZiAvLyAhX19o
YXNfZmVhdHVyZShtb2R1bGVzKQorI2VuZGlmIC8vIF9fY3BsdXNwbHVzCisKK0BjbGFzcyBXS1Rl
eHRFeHRyYWN0aW9uSXRlbTsKKworQGludGVyZmFjZSBXS1dlYlZpZXcgKE5vbkNwcCkKKworI2lm
IFBMQVRGT1JNKE1BQykKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEFsd2F5c0Jv
dW5jZVZlcnRpY2FsOikgQk9PTCBfYWx3YXlzQm91bmNlVmVydGljYWw7CitAcHJvcGVydHkgKG5v
bmF0b21pYywgc2V0dGVyPV9zZXRBbHdheXNCb3VuY2VIb3Jpem9udGFsOikgQk9PTCBfYWx3YXlz
Qm91bmNlSG9yaXpvbnRhbDsKKworLSAodm9pZClfc2V0Q29udGVudE9mZnNldFg6KE5TTnVtYmVy
ICopeCB5OihOU051bWJlciAqKXkgYW5pbWF0ZWQ6KEJPT0wpYW5pbWF0ZWQgTlNfU1dJRlRfTkFN
RShfc2V0Q29udGVudE9mZnNldCh4Onk6YW5pbWF0ZWQ6KSk7CisjZW5kaWYKKworI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCitAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRBbGxvd3NN
YWduaWZpY2F0aW9uOikgQk9PTCBfYWxsb3dzTWFnbmlmaWNhdGlvbjsKKyNlbmRpZgorCitAcHJv
cGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5TU3RyaW5nICpfbmFtZUZvclZpc3VhbElkZW50
aWZpY2F0aW9uT3ZlcmxheTsKKworLSAodm9pZClfc2V0TmVlZHNTY3JvbGxHZW9tZXRyeVVwZGF0
ZXM6KEJPT0wpbmVlZHNTY3JvbGxHZW9tZXRyeVVwZGF0ZXM7CisKKy0gKHZvaWQpX3Njcm9sbFRv
RWRnZTooX1dLUmVjdEVkZ2UpZWRnZSBhbmltYXRlZDooQk9PTClhbmltYXRlZDsKKworLSAodm9p
ZClfcmVxdWVzdFRleHRFeHRyYWN0aW9uOihfV0tUZXh0RXh0cmFjdGlvbkNvbmZpZ3VyYXRpb24g
Kiljb25maWd1cmF0aW9uIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShXS1RleHRFeHRyYWN0
aW9uSXRlbSAqKSljb21wbGV0aW9uSGFuZGxlcjsKKy0gKHZvaWQpX2Rlc2NyaWJlSW50ZXJhY3Rp
b246KF9XS1RleHRFeHRyYWN0aW9uSW50ZXJhY3Rpb24gKilpbnRlcmFjdGlvbiBjb21wbGV0aW9u
SGFuZGxlcjoodm9pZCAoXikoTlNTdHJpbmcgKiwgTlNFcnJvciAqKSljb21wbGV0aW9uSGFuZGxl
cjsKKworQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2lvcy9X
S1dlYlZpZXdJT1MuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3
SU9TLmgKaW5kZXggNGZmNTk0NGEwYzY0Li40NDY0YmU3MTEzZjMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3SU9TLmgKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2lvcy9XS1dlYlZpZXdJT1MuaApAQCAtMjMsMjUgKzIzLDE4IEBA
CiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2ltcG9ydCAiQVBJ
TmF2aWdhdGlvbi5oIgogI2ltcG9ydCAiV0tCYXNlU2Nyb2xsVmlldy5oIgogI2ltcG9ydCAiV0tX
ZWJWaWV3SW50ZXJuYWwuaCIKLQotI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IFdLX1NV
UFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QCi0KLSNpbXBvcnQgIkFQSU5hdmlnYXRpb24uaCIK
ICNpbXBvcnQgIl9XS1RhcEhhbmRsaW5nUmVzdWx0LmgiCiAjaW1wb3J0IDx3dGYvc3BpL2NvY29h
L05TT2JqQ1J1bnRpbWVTUEkuaD4KIAotI2VuZGlmIC8vICFfX2hhc19mZWF0dXJlKG1vZHVsZXMp
IHx8IFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QCi0KICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQogCiAjaW1wb3J0ICJVSUtpdFNQSS5oIgogCiBAY2xhc3MgV0tCRVNjcm9sbFZpZXdT
Y3JvbGxVcGRhdGU7CiAKLSNpZiAhX19oYXNfZmVhdHVyZShtb2R1bGVzKSB8fCBXS19TVVBQT1JU
U19TV0lGVF9PQkpDWFhfSU5URVJPUAotCiBuYW1lc3BhY2UgV2ViS2l0IHsKIGVudW0gY2xhc3Mg
VGFwSGFuZGxpbmdSZXN1bHQgOiB1aW50OF90OwogfQpAQCAtMjUwLDIwICsyNDMsNiBAQCBlbnVt
IGNsYXNzIFRhcEhhbmRsaW5nUmVzdWx0IDogdWludDhfdDsKIAogQGVuZAogCi0jZW5kaWYgLy8g
IV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVS
T1AKLQotQGludGVyZmFjZSBXS1dlYlZpZXcgKFdLVmlld0ludGVybmFsSU9TX1N3aWZ0Tm9uT2Jq
Q3h4U3VwcG9ydCkKLQotLy8gTm8gbmV3IHByb3BlcnRpZXMvZnVuY3Rpb25zIHNob3VsZCBuZWVk
IHRvIGJlIGFkZGVkIHRvIHRoaXMgY2F0ZWdvcnkgYW55bW9yZS4KLQotQHByb3BlcnR5IChub25h
dG9taWMsIHNldHRlcj1fc2V0QWxsb3dzTWFnbmlmaWNhdGlvbjopIEJPT0wgX2FsbG93c01hZ25p
ZmljYXRpb247Ci0KLUBlbmQKLQotI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IFdLX1NV
UFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QCi0KIF9XS1RhcEhhbmRsaW5nUmVzdWx0IHdrVGFw
SGFuZGxpbmdSZXN1bHQoV2ViS2l0OjpUYXBIYW5kbGluZ1Jlc3VsdCk7CiAKLSNlbmRpZgotCiAj
ZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3SU9TLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL2lvcy9XS1dlYlZpZXdJT1MubW0KaW5kZXggMTdkMjNhOTk3ZTFmLi45YmI4M2FmYTY2
ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3
SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9pb3MvV0tXZWJWaWV3SU9T
Lm1tCkBAIC0zODg5LDYgKzM4ODksMTcgQEAgLSAodm9pZClfc2V0Rm9yY2VzSW5pdGlhbFNjYWxl
RmFjdG9yOihCT09MKWZvcmNlc0luaXRpYWxTY2FsZUZhY3RvcgogICAgIFtzZWxmIF9kb0FmdGVy
TmV4dFByZXNlbnRhdGlvblVwZGF0ZTpeeyB9XTsKIH0KIAorLSAoQk9PTClfYWxsb3dzTWFnbmlm
aWNhdGlvbgoreworICAgIHJldHVybiBfYWxsb3dzTWFnbmlmaWNhdGlvbjsKK30KKworLSAodm9p
ZClfc2V0QWxsb3dzTWFnbmlmaWNhdGlvbjooQk9PTClhbGxvd3NNYWduaWZpY2F0aW9uCit7Cisg
ICAgX2FsbG93c01hZ25pZmljYXRpb24gPSBhbGxvd3NNYWduaWZpY2F0aW9uOworICAgIFtfY29u
dGVudFZpZXcgX3VwZGF0ZURvdWJsZVRhcEdlc3R1cmVSZWNvZ25pemVyRW5hYmxlbWVudF07Cit9
CisKICNpZiBFTkFCTEUoTU9ERUxfUFJPQ0VTUykKIC0gKHZvaWQpX3dpbGxJbnZhbGlkYXRlRHJh
Z2dlZE1vZGVsV2l0aENvbnRhaW5lclZpZXc6KFVJVmlldyAqKWNvbnRhaW5lclZpZXcKIHsKQEAg
LTQ5MTMsMjEgKzQ5MjQsNiBAQCAtIChVSVRleHRJbnB1dFRyYWl0cyAqKV90ZXh0SW5wdXRUcmFp
dHMKIAogQGVuZCAvLyBXS1dlYlZpZXcgKFdLUHJpdmF0ZUlPUykKIAotQGltcGxlbWVudGF0aW9u
IFdLV2ViVmlldyAoV0tWaWV3SW50ZXJuYWxJT1NfU3dpZnROb25PYmpDeHhTdXBwb3J0KQotCi0t
IChCT09MKV9hbGxvd3NNYWduaWZpY2F0aW9uCi17Ci0gICAgcmV0dXJuIF9hbGxvd3NNYWduaWZp
Y2F0aW9uOwotfQotCi0tICh2b2lkKV9zZXRBbGxvd3NNYWduaWZpY2F0aW9uOihCT09MKWFsbG93
c01hZ25pZmljYXRpb24KLXsKLSAgICBfYWxsb3dzTWFnbmlmaWNhdGlvbiA9IGFsbG93c01hZ25p
ZmljYXRpb247Ci0gICAgW19jb250ZW50VmlldyBfdXBkYXRlRG91YmxlVGFwR2VzdHVyZVJlY29n
bml6ZXJFbmFibGVtZW50XTsKLX0KLQotQGVuZAotCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJ
KQogCiBAaW1wbGVtZW50YXRpb24gV0tXZWJWaWV3IChGdWxsU2NyZWVuQVBJX1ByaXZhdGUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvbWFjL1dLV2ViVmlld01hYy5t
bSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9tYWMvV0tXZWJWaWV3TWFjLm1tCmluZGV4
IDlhYTQ3OTZkMjAxNS4uM2EyZjYzMjdjNmQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvbWFjL1dLV2ViVmlld01hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvbWFjL1dLV2ViVmlld01hYy5tbQpAQCAtMTQ2MCw2ICsxNDYwLDE5IEBAIC0gKHZv
aWQpX3Jlc2V0U2VjdXJlSW5wdXRTdGF0ZQogICAgICAgICBfaW1wbC0+cmVzZXRTZWN1cmVJbnB1
dFN0YXRlKCk7CiB9CiAKKy0gKHZvaWQpX3NldENvbnRlbnRPZmZzZXRYOihOU051bWJlciAqKXgg
eTooTlNOdW1iZXIgKil5IGFuaW1hdGVkOihCT09MKWFuaW1hdGVkCit7CisgICAgc3RkOjpvcHRp
b25hbDxpbnQ+IG9wdGlvbmFsWCA9IHN0ZDo6bnVsbG9wdDsKKyAgICBpZiAoeCkKKyAgICAgICAg
b3B0aW9uYWxYID0gc3RhdGljX2Nhc3Q8aW50PihbeCBkb3VibGVWYWx1ZV0pOworCisgICAgc3Rk
OjpvcHRpb25hbDxpbnQ+IG9wdGlvbmFsWSA9IHN0ZDo6bnVsbG9wdDsKKyAgICBpZiAoeSkKKyAg
ICAgICAgb3B0aW9uYWxZID0gc3RhdGljX2Nhc3Q8aW50PihbeSBkb3VibGVWYWx1ZV0pOworCisg
ICAgX3BhZ2UtPnNldENvbnRlbnRPZmZzZXQob3B0aW9uYWxYLCBvcHRpb25hbFksIGFuaW1hdGVk
ID8gV2ViQ29yZTo6U2Nyb2xsSXNBbmltYXRlZDo6WWVzIDogV2ViQ29yZTo6U2Nyb2xsSXNBbmlt
YXRlZDo6Tm8pOworfQorCiAjcHJhZ21hIG1hcmsgLSBRTFByZXZpZXdQYW5lbENvbnRyb2xsZXIK
IAogLSAoQk9PTClhY2NlcHRzUHJldmlld1BhbmVsQ29udHJvbDooUUxQcmV2aWV3UGFuZWwgKilw
YW5lbApAQCAtMTU4MSw2ICsxNTk0LDI2IEBAIC0gKHZvaWQpX3NldFJ1YmJlckJhbmRpbmdFbmFi
bGVkOihfV0tSZWN0RWRnZSlzdGF0ZQogICAgIF9pbXBsLT5zZXRSdWJiZXJCYW5kaW5nRW5hYmxl
ZChzdGF0ZSk7CiB9CiAKKy0gKEJPT0wpX2Fsd2F5c0JvdW5jZVZlcnRpY2FsCit7CisgICAgcmV0
dXJuIF9pbXBsLT5hbHdheXNCb3VuY2VWZXJ0aWNhbCgpOworfQorCistICh2b2lkKV9zZXRBbHdh
eXNCb3VuY2VWZXJ0aWNhbDooQk9PTCl2YWx1ZQoreworICAgIF9pbXBsLT5zZXRBbHdheXNCb3Vu
Y2VWZXJ0aWNhbCh2YWx1ZSk7Cit9CisKKy0gKEJPT0wpX2Fsd2F5c0JvdW5jZUhvcml6b250YWwK
K3sKKyAgICByZXR1cm4gX2ltcGwtPmFsd2F5c0JvdW5jZUhvcml6b250YWwoKTsKK30KKworLSAo
dm9pZClfc2V0QWx3YXlzQm91bmNlSG9yaXpvbnRhbDooQk9PTCl2YWx1ZQoreworICAgIF9pbXBs
LT5zZXRBbHdheXNCb3VuY2VIb3Jpem9udGFsKHZhbHVlKTsKK30KKwogLSAoTlNDb2xvciAqKV9i
YWNrZ3JvdW5kQ29sb3IKIHsKICAgICByZXR1cm4gX2ltcGwtPmJhY2tncm91bmRDb2xvcigpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV0tTaGFyZVNoZWV0Lmgg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XS1NoYXJlU2hlZXQuaAppbmRleCAxNTcz
ZDM2ZjFkNDMuLmIzNGE0NmEyNDQ5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvV0tTaGFyZVNoZWV0LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvV0tTaGFyZVNoZWV0LmgKQEAgLTI3LDE0ICsyNywxMiBAQAogCiAjaWYgSEFWRShTSEFSRV9T
SEVFVF9VSSkKIAotQGNsYXNzIFdLV2ViVmlldzsKLUBwcm90b2NvbCBXS1NoYXJlU2hlZXREZWxl
Z2F0ZTsKLQotI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBP
UlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5U
RVJPUCkKLQogI2luY2x1ZGUgPG9wdGlvbmFsPgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFu
ZGxlci5oPgogCitAY2xhc3MgV0tXZWJWaWV3OworQHByb3RvY29sIFdLU2hhcmVTaGVldERlbGVn
YXRlOworCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBGbG9hdFJlY3Q7CiBzdHJ1Y3QgU2hh
cmVEYXRhV2l0aFBhcnNlZFVSTDsKQEAgLTQ0LDIwICs0MiwxNCBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIGVudW0gY2xhc3MgUGlja2VyRGlzbWlzc2FsUmVhc29uIDogdWludDhfdDsKIH0KIAotI2Vu
ZGlmIC8vICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBPUlRTX1NX
SUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5URVJPUCkK
LQogQGludGVyZmFjZSBXS1NoYXJlU2hlZXQgOiBOU09iamVjdAogCiAtIChpbnN0YW5jZXR5cGUp
aW5pdFdpdGhWaWV3OihXS1dlYlZpZXcgKil2aWV3OwogCi0jaWYgIV9faGFzX2ZlYXR1cmUobW9k
dWxlcykgfHwgKGRlZmluZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdL
X1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKQotCiAtICh2b2lkKXByZXNlbnRXaXRoUGFy
YW1ldGVyczooY29uc3QgV2ViQ29yZTo6U2hhcmVEYXRhV2l0aFBhcnNlZFVSTCYpZGF0YSBpblJl
Y3Q6KHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RmxvYXRSZWN0PilyZWN0IGNvbXBsZXRpb25IYW5k
bGVyOihXVEY6OkNvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpY29tcGxldGlvbkhhbmRs
ZXI7CiAKIC0gKEJPT0wpZGlzbWlzc0lmTmVlZGVkV2l0aFJlYXNvbjooV2ViS2l0OjpQaWNrZXJE
aXNtaXNzYWxSZWFzb24pcmVhc29uOwogCi0jZW5kaWYgLy8gIV9faGFzX2ZlYXR1cmUobW9kdWxl
cykgfHwgKGRlZmluZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdLX1NV
UFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKQotCiBAcHJvcGVydHkgKG5vbmF0b21pYywgd2Vh
aykgaWQgPFdLU2hhcmVTaGVldERlbGVnYXRlPiBkZWxlZ2F0ZTsKIEBlbmQKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQmFzZVNjcm9sbFZpZXcuaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Jhc2VTY3JvbGxWaWV3LmgKaW5kZXggMGMzMTM1ODRk
YTQwLi43M2I1NTU5NDdhYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0Jhc2VTY3JvbGxWaWV3LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
QmFzZVNjcm9sbFZpZXcuaApAQCAtMjcsOCArMjcsNiBAQAogCiAjaW1wb3J0IDx3dGYvUGxhdGZv
cm0uaD4KIAotI2lmICFfX2hhc19mZWF0dXJlKG1vZHVsZXMpIHx8IChkZWZpbmVkKFdLX1NVUFBP
UlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKSAmJiBXS19TVVBQT1JUU19TV0lGVF9PQkpDWFhfSU5U
RVJPUCkKLQogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKICNpbXBvcnQgIldLQnJvd3NlckVu
Z2luZURlZmluaXRpb25zLmgiCkBAIC03Nyw1ICs3NSwzIEBAIGNsYXNzIFJlbW90ZUxheWVyVHJl
ZUhvc3Q7CiBAZW5kCiAKICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFNSUxZKQotCi0jZW5kaWYg
Ly8gIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmluZWQoV0tfU1VQUE9SVFNfU1dJRlRf
T0JKQ1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9JTlRFUk9QKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFj
dGlvbi5oCmluZGV4IDU2NTZhNmQ0ZWFlNS4uZWM3YmE2YjA5YmZkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCkBA
IC0xMzYsNyArMTM2LDYgQEAgZW51bSBjbGFzcyBQaWNrZXJEaXNtaXNzYWxSZWFzb24gOiB1aW50
OF90OwogfQogCiBAY2xhc3MgQVZQbGF5ZXJWaWV3Q29udHJvbGxlcjsKLUBjbGFzcyBCRVRleHRT
dWdnZXN0aW9uOwogQGNsYXNzIFFMUHJldmlld0NvbnRyb2xsZXI7CiBAY2xhc3MgVktDSW1hZ2VB
bmFseXNpc0ludGVyYWN0aW9uOwogQGNsYXNzIFdlYkV2ZW50OwpAQCAtMTcxLDEwICsxNzAsNiBA
QCBlbnVtIGNsYXNzIFBpY2tlckRpc21pc3NhbFJlYXNvbiA6IHVpbnQ4X3Q7CiBAY2xhc3MgVUlU
YXJnZXRlZFByZXZpZXc7CiBAY2xhc3MgX1VJTG9va3VwR2VzdHVyZVJlY29nbml6ZXI7CiAKLUBw
cm90b2NvbCBCRURyYWdJbnRlcmFjdGlvbkRlbGVnYXRlOwotQHByb3RvY29sIEJFVGV4dEludGVy
YWN0aW9uRGVsZWdhdGU7Ci1AcHJvdG9jb2wgQkVUZXh0SW5wdXREZWxlZ2F0ZTsKLQogI2lmIEhB
VkUoUEVQUEVSX1VJX0NPUkUpCiBAY2xhc3MgUFVJQ1F1aWNrYm9hcmRWaWV3Q29udHJvbGxlcjsK
ICNpZiBIQVZFKFFVSUNLQk9BUkRfQ09OVFJPTExFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL21hYy9XZWJWaWV3SW1wbC5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
bWFjL1dlYlZpZXdJbXBsLmgKaW5kZXggOWQ3OWJhYTdmZWUxLi4zMmI3MTUwYWVhOWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJWaWV3SW1wbC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJWaWV3SW1wbC5oCkBAIC0yNSw4ICsyNSw2IEBA
CiAKICNwcmFnbWEgb25jZQogCi0jaWYgIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmlu
ZWQoV0tfU1VQUE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZU
X09CSkNYWF9JTlRFUk9QKQotCiAjaW5jbHVkZSA8d3RmL1BsYXRmb3JtLmg+CiAKICNpZiBQTEFU
Rk9STShNQUMpCkBAIC0xMTMxLDUgKzExMjksMyBAQCBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19FTkQKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gUExBVEZPUk0oTUFD
KQotCi0jZW5kaWYgLy8gIV9faGFzX2ZlYXR1cmUobW9kdWxlcykgfHwgKGRlZmluZWQoV0tfU1VQ
UE9SVFNfU1dJRlRfT0JKQ1hYX0lOVEVST1ApICYmIFdLX1NVUFBPUlRTX1NXSUZUX09CSkNYWF9J
TlRFUk9QKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>