<?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>140235</bug_id>
          
          <creation_ts>2015-01-07 17:59:23 -0800</creation_ts>
          <short_desc>REGRESSION(r178068): Breaks the iOS build (Requested by enrica on #webkit).</short_desc>
          <delta_ts>2015-01-07 18:04:37 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>137371</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>dbates</cc>
    
    <cc>ddkilzer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1059668</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-07 17:59:23 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/178068 broke the build:
Breaks the iOS build (Requested by enrica on #webkit).

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059673</commentid>
    <comment_count>1</comment_count>
      <attachid>244232</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-07 17:59:54 -0800</bug_when>
    <thetext>Created attachment 244232
ROLLOUT of r178068

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

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

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059675</commentid>
    <comment_count>2</comment_count>
      <attachid>244232</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-07 18:04:33 -0800</bug_when>
    <thetext>Comment on attachment 244232
ROLLOUT of r178068

Clearing flags on attachment: 244232

Committed r178077: &lt;http://trac.webkit.org/changeset/178077&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059676</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-07 18:04:37 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>244232</attachid>
            <date>2015-01-07 17:59:54 -0800</date>
            <delta_ts>2015-01-07 18:04:33 -0800</delta_ts>
            <desc>ROLLOUT of r178068</desc>
            <filename>bug-140235-20150107175958.patch</filename>
            <type>text/plain</type>
            <size>114850</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc4MDc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDZiNWI3ZjhlYjAwYmU0NThmNDg5OWY1
N2Y3YTAyY2UxYzA1NTU5NDQuLjlmOTcxMTIwN2JkMjAyZmI4MWYwOGE1NzcwOThjYWQ5YWNkYTg4
MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTUtMDEtMDcgIENvbW1pdCBRdWV1ZSAgPGNvbW1p
dC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIx
NzgwNjguCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NDAyMzUKKworICAgICAgICBCcmVha3MgdGhlIGlPUyBidWlsZCAoUmVxdWVzdGVkIGJ5IGVucmlj
YSBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAg
IltpT1NdIE1ha2UgV2ViS2l0MiBidWlsZCB3aXRoIHB1YmxpYyBpT1MgU0RLIGFuZCBtb3JlIGJ1
aWxkCisgICAgICAgIGZpeGVzIGZvciBEUlQiCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzczNzEKKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9y
Zy9jaGFuZ2VzZXQvMTc4MDY4CisKIDIwMTUtMDEtMDcgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNA
YXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIE1ha2UgV2ViS2l0MiBidWlsZCB3aXRoIHB1Ymxp
YyBpT1MgU0RLIGFuZCBtb3JlIGJ1aWxkIGZpeGVzIGZvciBEUlQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1ZmY4
MDZiY2VmY2JjM2U1MmJkZDFkOTE4ZWMyZGMwY2Q4NDAzMmY0Li5mYmEyYjg4MzU3OTk2YmMyNTgx
MzFkZmY0YmJiYTAwOThmMDk1MjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTUt
MDEtMDcgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgorCisgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNzgwNjguCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDAyMzUKKworICAgICAgICBCcmVha3MgdGhlIGlP
UyBidWlsZCAoUmVxdWVzdGVkIGJ5IGVucmljYSBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZl
cnRlZCBjaGFuZ2VzZXQ6CisKKyAgICAgICAgIltpT1NdIE1ha2UgV2ViS2l0MiBidWlsZCB3aXRo
IHB1YmxpYyBpT1MgU0RLIGFuZCBtb3JlIGJ1aWxkCisgICAgICAgIGZpeGVzIGZvciBEUlQiCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzczNzEKKyAg
ICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTc4MDY4CisKIDIwMTUtMDEt
MDcgIEVucmljYSBDYXN1Y2NpICA8ZW5yaWNhQGFwcGxlLmNvbT4KIAogICAgICAgICBDYW4ndCBj
b3B5IFVSTCBmb3IgaW1hZ2VzIGFuZCBwYXN0ZSBpdCBpbnRvIHBsYWluIHRleHQgZmllbGRzLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9t
YWMvQ2hhbmdlTG9nCmluZGV4IDg4MDc1NmY1ZmU2YTI5ZWE2MDE4NTA5MjlkMmE3NDMyOTQ3Yzhk
MTAuLjk3ZjlhNWJkZTBkNzVmNzRjMjFlMDc2OTI1OTc5MmYxODQ0YjExOGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNS0wMS0wNyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0
LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3
ODA2OC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0
MDIzNQorCisgICAgICAgIEJyZWFrcyB0aGUgaU9TIGJ1aWxkIChSZXF1ZXN0ZWQgYnkgZW5yaWNh
IG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAi
W2lPU10gTWFrZSBXZWJLaXQyIGJ1aWxkIHdpdGggcHVibGljIGlPUyBTREsgYW5kIG1vcmUgYnVp
bGQKKyAgICAgICAgZml4ZXMgZm9yIERSVCIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEzNzM3MQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xNzgwNjgKKwogMjAxNS0wMS0wNyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0Bh
cHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gTWFrZSBXZWJLaXQyIGJ1aWxkIHdpdGggcHVibGlj
IGlPUyBTREsgYW5kIG1vcmUgYnVpbGQgZml4ZXMgZm9yIERSVApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDgwOGFl
OGY1YTJjYjlhYjk4ZmI4MWM0NGI4YWVmODBhYzZkNTYzYzEuLmU5NTg1ZTExNGVlMGIyZDI4MTgz
OTU2NjY0NjMwMGQ4MzZjZDhmZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxNS0w
MS0wNyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
VW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3ODA2OC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MDIzNQorCisgICAgICAgIEJyZWFrcyB0aGUgaU9T
IGJ1aWxkIChSZXF1ZXN0ZWQgYnkgZW5yaWNhIG9uICN3ZWJraXQpLgorCisgICAgICAgIFJldmVy
dGVkIGNoYW5nZXNldDoKKworICAgICAgICAiW2lPU10gTWFrZSBXZWJLaXQyIGJ1aWxkIHdpdGgg
cHVibGljIGlPUyBTREsgYW5kIG1vcmUgYnVpbGQKKyAgICAgICAgZml4ZXMgZm9yIERSVCIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNzM3MQorICAg
ICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xNzgwNjgKKwogMjAxNS0wMS0w
NyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gTWFr
ZSBXZWJLaXQyIGJ1aWxkIHdpdGggcHVibGljIGlPUyBTREsgYW5kIG1vcmUgYnVpbGQgZml4ZXMg
Zm9yIERSVApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaCBiL1NvdXJjZS9X
VEYvd3RmL0NvbXBpbGVyLmgKaW5kZXggZDNkZWI5NjUwMzk1ODcyZGM3MmMzZDg5ZTZiZDg5Nzhi
MWMxNWMyYi4uYTA3NTJhYTAyNDkwMWFlZWJkYWE1YjkwZTgxNjdiYmMxZjY4MDc4YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Db21w
aWxlci5oCkBAIC0xNjgsMTggKzE2OCw5IEBACiAjZGVmaW5lIENPTlNURVhQUgogI2VuZGlmCiAK
LS8qIFdURl9FWFRFUk5fQ197QkVHSU4sIEVORH0gKi8KKy8qIEVYVEVSTl9DICovCiAKICNpZmRl
ZiBfX2NwbHVzcGx1cwotI2RlZmluZSBXVEZfRVhURVJOX0NfQkVHSU4gZXh0ZXJuICJDIiB7Ci0j
ZGVmaW5lIFdURl9FWFRFUk5fQ19FTkQgfQotI2Vsc2UKLSNkZWZpbmUgV1RGX0VYVEVSTl9DX0JF
R0lOCi0jZGVmaW5lIFdURl9FWFRFUk5fQ19FTkQKLSNlbmRpZgotCi0vLyBGSVhNRTogUmVtb3Zl
IHRoaXMgb25jZSB3ZSBoYXZlIHRyYW5zaXRpb25lZCB0byBXVEZfRVhURVJOX0NfQkVHSU4vV1RG
X0VYVEVSTl9DX0VORC4KLSNpZmRlZiBfX2NwbHVzcGx1cwogI2RlZmluZSBFWFRFUk5fQyBleHRl
cm4gIkMiCiAjZWxzZQogI2RlZmluZSBFWFRFUk5fQyBleHRlcm4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBlZDQ1ZjVmMjE4MDU5
NTUyNzJlYzJlNzQyMWQzNDE2MDJkZmEyZDBkLi5jOTBkYWViODFlMGIxNmEwMWMzYTljNTBhNjNk
NjQ0MjA1MDUwYmZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0zNzYzLDYgKzM3NjMsNyBAQAogCQlBMTQ4MzJDRDE4N0Y2ODJF
MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZFNhZmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDgzMjlGMTg3RjUwODcwMERBNjNBNiAvKiBXZWJDb3Jl
VGhyZWFkU2FmZS5oICovOyB9OwogCQlBMTQ4MzJDRTE4N0Y2ODM0MDBEQTYzQTYgLyogV2ViQ29y
ZVRocmVhZFN5c3RlbUludGVyZmFjZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzJBMDE4N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVh
ZFN5c3RlbUludGVyZmFjZS5jcHAgKi87IH07CiAJCUExNDgzMkNGMTg3RjY4NDcwMERBNjNBNiAv
KiBXZWJDb3JlVGhyZWFkU3lzdGVtSW50ZXJmYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzJBMTE4N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29y
ZVRocmVhZFN5c3RlbUludGVyZmFjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUExNzIxODI2MTlERTE4M0YwMDQ2NEQxNyAvKiBfVUlIaWdobGln
aHRWaWV3U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTcyMTgyNTE5REUxODNGMDA0NjREMTcgLyogX1VJSGlnaGxpZ2h0Vmlld1NQSS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUExN0M4MTIyMEYy
QTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVudEZhY3RvcnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE3QzgxMjAwRjJBNUNGNzAwNURBQUVCIC8q
IEhUTUxFbGVtZW50RmFjdG9yeS5jcHAgKi87IH07CiAJCUExN0M4MTIzMEYyQTVDRjcwMDVEQUFF
QiAvKiBIVE1MRWxlbWVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExN0M4MTIxMEYyQTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVudEZh
Y3RvcnkuaCAqLzsgfTsKIAkJQTFDNzk3MTgxODgzREQ4MjAwMEY1RTFGIC8qIERPTUdlc3R1cmVF
dmVudC5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMEY1NERDREQxODgwRjkwMTAwM0VFREJCIC8qIERPTUdlc3R1cmVFdmVudC5o
ICovOyB9OwpAQCAtNTc5Nyw4ICs1Nzk4LDYgQEAKIAkJQ0U3QjJEQjYxNTg2QUJBRDAwOThCM0ZB
IC8qIFRleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFN0IyREIyMTU4NkFCQUQwMDk4QjNGQSAvKiBUZXh0QWx0
ZXJuYXRpdmVXaXRoUmFuZ2UubW0gKi87IH07CiAJCUNFODI0NUYwMTlCNjcxQkEwMEFDMDEyMiAv
KiBDRk5ldHdvcmtDb25uZWN0aW9uQ2FjaGVTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFODI0NUVGMTlCNjcxQkEwMEFDMDEyMiAvKiBDRk5ldHdv
cmtDb25uZWN0aW9uQ2FjaGVTUEkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlDRTk1MjA4QTE4MTFCNDc1MDA3QTUzOTIgLyogV2ViU2FmZUluY3Jl
bWVudGFsU3dlZXBlcklPUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQzJDNENCMUQxNjFBMTMxMjAwRDIxNERBIC8qIFdlYlNhZmVJbmNyZW1lbnRhbFN3
ZWVwZXJJT1MuaCAqLzsgfTsKLQkJQ0VDMzM3QUQxQTQ2MDcxRjAwOUI4NTIzIC8qIFNlcnZlcnNT
UEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFQzMz
N0FDMUE0NjA3MUYwMDlCODUyMyAvKiBTZXJ2ZXJzU1BJLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJQ0VDMzM3QUYxQTQ2MDg2RDAwOUI4NTIzIC8q
IEdyYXBoaWNzU2VydmljZXNTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENFQzMzN0FFMUE0NjA4NkQwMDlCODUyMyAvKiBHcmFwaGljc1NlcnZpY2Vz
U1BJLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
Q0VDQURGQzYxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0aXZlLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFQ0FERkMyMTUzNzc4
RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5jcHAgKi87IH07CiAJCUNFQ0FERkM3
MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0VDQURGQzMxNTM3NzhGRjAwRTM3MDY4
IC8qIERpY3RhdGlvbkFsdGVybmF0aXZlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJQ0VDQURGQzgxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlv
bkNvbW1hbmQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0VDQURGQzQxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuY3BwICovOyB9
OwpAQCAtMTA5NjksNiArMTA5NjgsNyBAQAogCQlBMTQ4MzJBOTE4N0Y1MDg3MDBEQTYzQTYgLyog
V0tWaWV3LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdLVmlldy5oOyBwYXRo
ID0gaW9zL3dhay9XS1ZpZXcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTE0ODMy
QUExODdGNTA4NzAwREE2M0E2IC8qIFdLVmlldy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgbmFtZSA9IFdLVmlldy5tbTsgcGF0aCA9IGlvcy93YWsvV0tWaWV3Lm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTQ4MzJBQjE4N0Y1MDg3MDBEQTYzQTYgLyogV0tW
aWV3UHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXS1ZpZXdQcml2
YXRlLmg7IHBhdGggPSBpb3Mvd2FrL1dLVmlld1ByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTE3MjE4MjUxOURFMTgzRjAwNDY0RDE3IC8qIF9VSUhpZ2hsaWdodFZpZXdT
UEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gX1VJSGlnaGxpZ2h0Vmlld1NQ
SS5oOyBwYXRoID0gaW9zL19VSUhpZ2hsaWdodFZpZXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTE3QzgxMjAwRjJBNUNGNzAwNURBQUVCIC8qIEhUTUxFbGVtZW50RmFjdG9y
eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRWxlbWVudEZh
Y3RvcnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTdDODEyMTBGMkE1Q0Y3
MDA1REFBRUIgLyogSFRNTEVsZW1lbnRGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEhUTUxFbGVtZW50RmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlBMUM3OTcxQzE4ODNFNTFGMDAwRjVFMUYgLyogRE9NSFRNTFRleHRBcmVhRWxlbWVudFBy
aXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSFRNTFRleHRBcmVh
RWxlbWVudFByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMzA3LDgg
KzEzMzA3LDYgQEAKIAkJQ0U3QjJEQjExNTg2QUJBRDAwOThCM0ZBIC8qIFRleHRBbHRlcm5hdGl2
ZVdpdGhSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0QWx0ZXJu
YXRpdmVXaXRoUmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U3QjJEQjIx
NTg2QUJBRDAwOThCM0ZBIC8qIFRleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5tbSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFRleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0U4MjQ1RUYxOUI2NzFCQTAwQUMwMTIy
IC8qIENGTmV0d29ya0Nvbm5lY3Rpb25DYWNoZVNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDRk5ldHdvcmtDb25uZWN0aW9uQ2FjaGVTUEkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJQ0VDMzM3QUMxQTQ2MDcxRjAwOUI4NTIzIC8qIFNlcnZlcnNTUEkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmVyc1NQSS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlDRUMzMzdBRTFBNDYwODZEMDA5Qjg1MjMgLyogR3JhcGhpY3NT
ZXJ2aWNlc1NQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBHcmFwaGljc1Nl
cnZpY2VzU1BJLmg7IHBhdGggPSBpb3MvR3JhcGhpY3NTZXJ2aWNlc1NQSS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlDRUNBREZDMjE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9u
QWx0ZXJuYXRpdmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlj
dGF0aW9uQWx0ZXJuYXRpdmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRUNB
REZDMzE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQWx0ZXJuYXRpdmUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGljdGF0aW9uQWx0ZXJuYXRpdmUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0VDQURGQzQxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlv
bkNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGljdGF0
aW9uQ29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjI2Nyw3ICsx
NjI2NSw2IEBACiAJCQkJQ0UxMjUyNTQxQTFCRUMwRTAwODY0NDgwIC8qIE5TVVJMRG93bmxvYWRT
UEkuaCAqLywKIAkJCQk2NTNFRjgzODE5QTA0M0FFMDA1MjIwMkMgLyogTlNVUkxGaWxlVHlwZU1h
cHBpbmdzU1BJLmggKi8sCiAJCQkJQ0UxMjUyM0MxQTE2NzZDRDAwODY0NDgwIC8qIFF1YXJ0ekNv
cmVTUEkuaCAqLywKLQkJCQlDRUMzMzdBQzFBNDYwNzFGMDA5Qjg1MjMgLyogU2VydmVyc1NQSS5o
ICovLAogCQkJKTsKIAkJCXBhdGggPSBjb2NvYTsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CkBAIC0xODUzMCw5ICsxODUyNyw5IEBACiAJCUExNzIxODI0MTlERTE4MkIwMDQ2NEQxNyAvKiBp
b3MgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUExNzIx
ODI1MTlERTE4M0YwMDQ2NEQxNyAvKiBfVUlIaWdobGlnaHRWaWV3U1BJLmggKi8sCiAJCQkJQ0Ux
MjUyM0UxQTE2QUUxMjAwODY0NDgwIC8qIEFWS2l0U1BJLmggKi8sCiAJCQkJQ0UxMjUyNDIxQTE2
QzAxQTAwODY0NDgwIC8qIENvcmVVSVNQSS5oICovLAotCQkJCUNFQzMzN0FFMUE0NjA4NkQwMDlC
ODUyMyAvKiBHcmFwaGljc1NlcnZpY2VzU1BJLmggKi8sCiAJCQkJQ0UxMjUyNDgxQTE2QzNCQzAw
ODY0NDgwIC8qIE1vYmlsZUdlc3RhbHRTUEkuaCAqLywKIAkJCQlDRTEyNTI0MDFBMTZCMUI2MDA4
NjQ0ODAgLyogTWVkaWFQbGF5ZXJTUEkuaCAqLywKIAkJCQlDRTEyNTIzODFBMTY2RkEwMDA4NjQ0
ODAgLyogUXVpY2tMb29rU1BJLmggKi8sCkBAIC0yMzM5MSw2ICsyMzM4OCw3IEBACiAJCQlpc2Eg
PSBQQlhIZWFkZXJzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7
CiAJCQlmaWxlcyA9ICgKKwkJCQlBMTcyMTgyNjE5REUxODNGMDA0NjREMTcgLyogX1VJSGlnaGxp
Z2h0Vmlld1NQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkUxMTVGQUIxNjc5ODhDRDAwMjQ5MTM0
IC8qIEFic3RyYWN0RGF0YWJhc2VTZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxRTFCMUQx
MEZGNTk4NjkwMDU3NkIzQiAvKiBBYnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MjlBODEyMkUwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuaCBp
biBIZWFkZXJzICovLApAQCAtMjQ0NzEsNyArMjQ0NjksNiBAQAogCQkJCTBGNTgwQjBFMEYxMkEy
NjkwMDUxRDY4OSAvKiBHcmFwaGljc0xheWVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkx
QUM2OTU5MzE2MUExRTUzMDAzNzMyQ0IgLyogR3JhcGhpY3NMYXllckZhY3RvcnkuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTBGQTI0RDdBMTYyREY5MTkwMEEzRjRDMCAvKiBHcmFwaGljc0xheWVyVXBk
YXRlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQ0VDMzM3QUYxQTQ2MDg2RDAwOUI4NTIzIC8qIEdy
YXBoaWNzU2VydmljZXNTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQTAxNUFCMEFGNkNENTMw
MDZCQ0UwRSAvKiBHcmFwaGljc1R5cGVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk3N0ExN0E3QjEy
RjI4OTBCMDA0RTAyRjYgLyogR3JhcGhpY3NUeXBlczNELmggaW4gSGVhZGVycyAqLywKIAkJCQlD
RDNFMjUxQzE4MDQ2QjA2MDBFMjdGNTYgLyogR3JpZENvb3JkaW5hdGUuaCBpbiBIZWFkZXJzICov
LApAQCAtMjYwNjMsNyArMjYwNjAsNiBAQAogCQkJCTA3N0FGMTQwMThGNEFFNDAwMDAxRUQ2MSAv
KiBTZXJpYWxpemVkUGxhdGZvcm1SZXByZXNlbnRhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MDc3QUYxNDMxOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybVJlcHJlc2VudGF0
aW9uTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQlBNzVFNDk3NjEwNzUyQUNCMDBDOUI4OTYgLyog
U2VyaWFsaXplZFNjcmlwdFZhbHVlLmggaW4gSGVhZGVycyAqLywKLQkJCQlDRUMzMzdBRDFBNDYw
NzFGMDA5Qjg1MjMgLyogU2VydmVyc1NQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkQ5M0FFRTMx
OURGNTY0MTAwMkE4NkMzIC8qIFNlcnZpY2VzT3ZlcmxheUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTc1NkIyQ0UxMThCNzEwMTYwMEZFQ0ZBQSAvKiBTZXNzaW9uSUQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTkzMzA5RTEwMDk5RTY0OTIwMDU2RTU4MSAvKiBTZXROb2RlQXR0cmlidXRl
Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
c3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaAppbmRleCA3OGQ4OTQxMjczZWU4ZmNmZDY3Njg3NDkw
YmJjZDUwMDFmYzgyYWFhLi4zMzBhZDYwMjhlMjFlZmJjOTAxNWE0ZDM4NDEzMjAwNDc5M2M1MTk0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvY29jb2EvUXVhcnR6Q29y
ZVNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jb2NvYS9RdWFydHpDb3Jl
U1BJLmgKQEAgLTc3LDcgKzc3LDYgQEAgZXh0ZXJuICJDIiB7CiBAcHJvcGVydHkgQk9PTCBhbGxv
d3NHcm91cEJsZW5kaW5nOwogQHByb3BlcnR5IEJPT0wgY2FuRHJhd0NvbmN1cnJlbnRseTsKIEBw
cm9wZXJ0eSBCT09MIGNvbnRlbnRzT3BhcXVlOwotQHByb3BlcnR5IEJPT0wgaGl0VGVzdHNBc09w
YXF1ZTsKIEBwcm9wZXJ0eSBCT09MIG5lZWRzTGF5b3V0T25HZW9tZXRyeUNoYW5nZTsKIEBwcm9w
ZXJ0eSBCT09MIHNoYWRvd1BhdGhJc0JvdW5kczsKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3NwaS9jb2NvYS9TZXJ2ZXJzU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9zcGkvY29jb2EvU2VydmVyc1NQSS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBkZDgxNDRhZmUwN2NhZDllMTlhZTcwN2UzNjFlNDU5MzY0NjM2NTc0Li4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL3NwaS9jb2NvYS9TZXJ2ZXJzU1BJLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1NCArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBTZXJ2ZXJzU1BJX2gKLSNkZWZpbmUgU2VydmVyc1NQSV9o
Ci0KLSNpbmNsdWRlIDxtYWNoL21lc3NhZ2UuaD4KLQotI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNF
KEFQUExFX0lOVEVSTkFMX1NESykKLQotI2luY2x1ZGUgPHNlcnZlcnMvYm9vdHN0cmFwLmg+Ci0K
LSNlbHNlCi0KLXR5cGVkZWYgY2hhciBuYW1lX3RbMTI4XTsKLQotI2VuZGlmCi0KLSNpZiBQTEFU
Rk9STShJT1MpICYmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0KLSNpbmNsdWRlIDxib290c3Ry
YXBfcHJpdi5oPgotCi0jZW5kaWYKLQotV1RGX0VYVEVSTl9DX0JFR0lOCi0KLWtlcm5fcmV0dXJu
X3QgYm9vdHN0cmFwX2xvb2tfdXAobWFjaF9wb3J0X3QsIGNvbnN0IG5hbWVfdCBzZXJ2aWNlTmFt
ZSwgbWFjaF9wb3J0X3QgKik7Ci1rZXJuX3JldHVybl90IGJvb3RzdHJhcF9yZWdpc3RlcjIobWFj
aF9wb3J0X3QsIG5hbWVfdCwgbWFjaF9wb3J0X3QsIHVpbnQ2NF90KTsKLQotV1RGX0VYVEVSTl9D
X0VORAotCi0jZW5kaWYgLy8gU2VydmVyc1NQSV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9zcGkvaW9zL0dyYXBoaWNzU2VydmljZXNTUEkuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3NwaS9pb3MvR3JhcGhpY3NTZXJ2aWNlc1NQSS5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA2ZTg2YmIxNTE5MDdmMzVmMjE0OWE5ZTZmZmQwNTViNmFjOThjMDkzLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3NwaS9pb3MvR3JhcGhpY3NTZXJ2aWNlc1NQSS5oCisrKyAvZGV2L251bGwK
QEAgLTEsNDIgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgR3JhcGhpY3NTZXJ2aWNlc1NQ
SV9oCi0jZGVmaW5lIEdyYXBoaWNzU2VydmljZXNTUElfaAotCi0jaWYgVVNFKEFQUExFX0lOVEVS
TkFMX1NESykKLQotI2ltcG9ydCA8R3JhcGhpY3NTZXJ2aWNlcy9HcmFwaGljc1NlcnZpY2VzLmg+
Ci0KLSNlbmRpZgotCi1XVEZfRVhURVJOX0NfQkVHSU4KLQotdm9pZCBHU0luaXRpYWxpemUodm9p
ZCk7Ci11aW50NjRfdCBHU0N1cnJlbnRFdmVudFRpbWVzdGFtcCh2b2lkKTsKLQotV1RGX0VYVEVS
Tl9DX0VORAotCi0jZW5kaWYgLy8gR3JhcGhpY3NTZXJ2aWNlc1NQSV9oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvaW9zL19VSUhpZ2hsaWdodFZpZXdTUEkuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9pb3MvX1VJSGlnaGxpZ2h0Vmlld1NQSS5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmI1OTNjZGYwZmNjNWYwYzA1MGVmOWIzZGJhMjFmMmMzMWUyMDA3MWYKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvaW9zL19VSUhpZ2hsaWdodFZp
ZXdTUEkuaApAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
CisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwor
ICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICog
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmIFVTRShBUFBMRV9JTlRF
Uk5BTF9TREspCisKKyNpbXBvcnQgPFVJS2l0L19VSUhpZ2hsaWdodFZpZXcuaD4KKworI2Vsc2UK
KworI2ltcG9ydCA8VUlLaXQvVUlWaWV3Lmg+CisKK0BjbGFzcyBVSUNvbG9yOworCitAaW50ZXJm
YWNlIF9VSUhpZ2hsaWdodFZpZXcgOiBVSVZpZXcKK0BlbmQKKworQGludGVyZmFjZSBfVUlIaWdo
bGlnaHRWaWV3IChQcml2YXRlKQorLSAodm9pZClzZXRDb2xvcjooVUlDb2xvciAqKWNvbG9yOwor
LSAodm9pZClzZXRDb3JuZXJSYWRpdXM6KENHRmxvYXQpY29ybmVyUmFkaXVzOworLSAodm9pZClz
ZXRDb3JuZXJSYWRpaTooTlNBcnJheSAqKWNvcm5lclJhZGlpOworLSAodm9pZClzZXRGcmFtZXM6
KE5TQXJyYXkgKilmcmFtZXMgYm91bmRhcnlSZWN0OihDR1JlY3QpYm91bmRhcnlSZWN0OworLSAo
dm9pZClzZXRRdWFkczooTlNBcnJheSAqKXF1YWRzIGJvdW5kYXJ5UmVjdDooQ0dSZWN0KWJvdW5k
YXJ5UmVjdDsKK0BlbmQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9Q
bHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkhvc3RNYW5hZ2VyLm1tIGIvU291cmNlL1dlYktp
dC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5Ib3N0TWFuYWdlci5tbQppbmRleCAx
ZjlmYWNiYmRmMjA1NDg5N2FlNjE3MWFjNTE4MGJlOTdmMGVlNzhkLi5lY2ZiMzRjMTA4OTVjNTdl
NjhhY2E4OGNmMzhmNmQ4ZDJmNzZkOGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9Q
bHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkhvc3RNYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSG9zdE1hbmFnZXIubW0KQEAg
LTI5LDEyICsyOSwxMiBAQAogCiAjaW1wb3J0ICJOZXRzY2FwZVBsdWdpbkhvc3RQcm94eS5oIgog
I2ltcG9ydCAiTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5LmgiCi0jaW1wb3J0ICJXZWJLaXRT
eXN0ZW1JbnRlcmZhY2UuaCIKICNpbXBvcnQgIldlYkxvY2FsaXphYmxlU3RyaW5nc0ludGVybmFs
LmgiCisjaW1wb3J0ICJXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaCIKICNpbXBvcnQgIldlYk5ldHNj
YXBlUGx1Z2luUGFja2FnZS5oIgotI2ltcG9ydCA8V2ViQ29yZS9TZXJ2ZXJzU1BJLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1dlYkNvcmVOU1N0cmluZ0V4dHJhcy5oPgogI2ltcG9ydCA8bWFjaC9tYWNo
X3BvcnQuaD4KKyNpbXBvcnQgPHNlcnZlcnMvYm9vdHN0cmFwLmg+CiAjaW1wb3J0IDxzcGF3bi5o
PgogI2ltcG9ydCA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0Jhc2VUYXJnZXQueGNj
b25maWcgYi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9CYXNlVGFyZ2V0LnhjY29uZmln
CmluZGV4IDJhM2M0MGIzOTEwZTM3MGZjNDE5YmE1NjcwZjk1MzhmMzY4YzMxOGEuLjY3MmFmYjY1
NDQyMTk2Zjk2ZDgzYWQxN2RhNDIzYWM1NjZmYWI5ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL0NvbmZpZ3VyYXRpb25zL0Jhc2VUYXJnZXQueGNjb25maWcKKysrIGIvU291cmNlL1dlYktp
dDIvQ29uZmlndXJhdGlvbnMvQmFzZVRhcmdldC54Y2NvbmZpZwpAQCAtMjQsMTAgKzI0LDcgQEAK
ICNpbmNsdWRlICJGZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyIKICNpbmNsdWRlICJWZXJzaW9uLnhj
Y29uZmlnIgogCi1GUkFNRVdPUktfU0VBUkNIX1BBVEhTX2Jhc2UgPSAkKFVNQlJFTExBX0ZSQU1F
V09SS1NfRElSKSAkKEZSQU1FV09SS19TRUFSQ0hfUEFUSFMpOwotRlJBTUVXT1JLX1NFQVJDSF9Q
QVRIU1tzZGs9aXBob25lKl0gPSAkKEZSQU1FV09SS19TRUFSQ0hfUEFUSFNfYmFzZSkgJChTREtS
T09UKSQoU1lTVEVNX0xJQlJBUllfRElSKS9Qcml2YXRlRnJhbWV3b3JrczsKLUZSQU1FV09SS19T
RUFSQ0hfUEFUSFMgPSAkKEZSQU1FV09SS19TRUFSQ0hfUEFUSFNfYmFzZSk7Ci0KK0ZSQU1FV09S
S19TRUFSQ0hfUEFUSFMgPSAkKFVNQlJFTExBX0ZSQU1FV09SS1NfRElSKSAkKEZSQU1FV09SS19T
RUFSQ0hfUEFUSFMpOwogR0NDX1BSRUZJWF9IRUFERVIgPSBXZWJLaXQyUHJlZml4Lmg7CiBHQ0Nf
UFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gJChERUJVR19ERUZJTkVTKSAkKEZFQVRVUkVfREVG
SU5FUykgRlJBTUVXT1JLX05BTUU9V2ViS2l0CiBIRUFERVJfU0VBUkNIX1BBVEhTID0gJChCVUlM
VF9QUk9EVUNUU19ESVIpL3Vzci9sb2NhbC9pbmNsdWRlICQoV0VCQ09SRV9QUklWQVRFX0hFQURF
UlNfRElSKS9Gb3J3YXJkaW5nSGVhZGVycyAkKFdFQkNPUkVfUFJJVkFURV9IRUFERVJTX0RJUikv
aWN1ICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJLaXQyICQoSEVBREVS
X1NFQVJDSF9QQVRIUyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vz
cy9tYWMvTmV0d29ya1Jlc291cmNlTG9hZGVyTWFjLm1tIGIvU291cmNlL1dlYktpdDIvTmV0d29y
a1Byb2Nlc3MvbWFjL05ldHdvcmtSZXNvdXJjZUxvYWRlck1hYy5tbQppbmRleCA1MDYxY2M1OGIw
NjExZmFmNDVkNzhhZTUxODYyYjlkNWVlYmQxZjExLi41ZmU5ZWI3ZTM5MTRhOGRmMzI5NmU1Yzgw
NWVlN2IzMjkyMjNjNmI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vz
cy9tYWMvTmV0d29ya1Jlc291cmNlTG9hZGVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL05l
dHdvcmtQcm9jZXNzL21hYy9OZXR3b3JrUmVzb3VyY2VMb2FkZXJNYWMubW0KQEAgLTEwNCw3ICsx
MDQsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6d2lsbENhY2hlUmVzcG9uc2VBc3lu
YyhSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBOU0NhYwogewogICAgIEFTU0VSVF9VTlVTRUQoaGFu
ZGxlLCBoYW5kbGUgPT0gbV9oYW5kbGUpOwogCi0jaWYgUExBVEZPUk0oSU9TKSB8fCBfX01BQ19P
U19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwOTAKKyNpZiBfX01BQ19PU19YX1ZFUlNJT05f
TUlOX1JFUVVJUkVEID49IDEwOTAKICAgICBpZiAobV9ieXRlc1JlY2VpdmVkID49IGZpbGVCYWNr
ZWRSZXNvdXJjZU1pbmltdW1TaXplKCkpCiAgICAgICAgIE5ldHdvcmtEaXNrQ2FjaGVNb25pdG9y
Ojptb25pdG9yRmlsZUJhY2tpbmdTdG9yZUNyZWF0aW9uKFtuc1Jlc3BvbnNlIF9DRkNhY2hlZFVS
TFJlc3BvbnNlXSwgdGhpcyk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1Bs
YXRmb3JtL0lQQy9tYWMvQ29ubmVjdGlvbk1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3Jt
L0lQQy9tYWMvQ29ubmVjdGlvbk1hYy5tbQppbmRleCA1N2M5ZjIwZDhiYzE1Mjc0Mzc5MTQwNDlm
OWU5MDE3ZDU3NmI5OWMyLi44NGE4NTBiZDdlMWQxOGRiMjAyZGIyZDQ4NTdjMThkZDBmZTFiMmU2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9JUEMvbWFjL0Nvbm5lY3Rpb25N
YWMubW0KKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vSVBDL21hYy9Db25uZWN0aW9uTWFj
Lm1tCkBAIC0zMyw3ICszMyw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9BWE9iamVjdENhY2hlLmg+
CiAjaW5jbHVkZSA8bWFjaC9tYWNoX2Vycm9yLmg+CiAjaW5jbHVkZSA8bWFjaC92bV9tYXAuaD4K
LSNpbmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAjaW5jbHVk
ZSA8d3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1BsYXRmb3JtL3NwaS9pb3MvQktTUHJvY2Vzc0Fzc2VydGlvblNQSS5oIGIvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vc3BpL2lvcy9CS1NQcm9jZXNzQXNzZXJ0aW9uU1BJLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDYzMWFiZmFkZDBmMzVkOWE1ZmRlMWMwNmEzNWM2NDk0MzRlYmQ3
NDYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYktpdDIvUGxhdGZvcm0vc3BpL2lvcy9CS1NQcm9jZXNzQXNzZXJ0aW9uU1BJLmgKKysrIC9k
ZXYvbnVsbApAQCAtMSw1OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+Ci0KLSNpZiBV
U0UoQVBQTEVfSU5URVJOQUxfU0RLKQotCi0jaW1wb3J0IDxBc3NlcnRpb25TZXJ2aWNlcy9CS1NQ
cm9jZXNzQXNzZXJ0aW9uLmg+Ci0KLSNlbHNlCi0KLWVudW0gewotICAgIEJLU1Byb2Nlc3NBc3Nl
cnRpb25Ob25lID0gMCwKLSAgICBCS1NQcm9jZXNzQXNzZXJ0aW9uUHJldmVudFRhc2tTdXNwZW5k
ICA9IDEgPDwgMCwKLSAgICBCS1NQcm9jZXNzQXNzZXJ0aW9uUHJldmVudFRhc2tUaHJvdHRsZURv
d24gPSAxIDw8IDEsCi0gICAgQktTUHJvY2Vzc0Fzc2VydGlvbkFsbG93SWRsZVNsZWVwID0gMSA8
PCAyLAotICAgIEJLU1Byb2Nlc3NBc3NlcnRpb25XYW50c0ZvcmVncm91bmRSZXNvdXJjZVByaW9y
aXR5ID0gMSA8PCAzLAotICAgIEJLU1Byb2Nlc3NBc3NlcnRpb25BbGxvd1N1c3BlbmRPblNsZWVw
ID0gMSA8PCA0LAotfTsKLXR5cGVkZWYgdWludDMyX3QgQktTUHJvY2Vzc0Fzc2VydGlvbkZsYWdz
OwotCi1lbnVtIHsKLSAgICBCS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uRXh0ZW5zaW9uID0gMTMs
Ci19OwotdHlwZWRlZiB1aW50MzJfdCBCS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uOwotCi10eXBl
ZGVmIHZvaWQoXkJLU1Byb2Nlc3NBc3NlcnRpb25BY3F1aXNpdGlvbkhhbmRsZXIpKEJPT0wgYWNx
dWlyZWQpOwotCi1AaW50ZXJmYWNlIEJLU1Byb2Nlc3NBc3NlcnRpb24gOiBOU09iamVjdAotQGVu
ZAotCi1AaW50ZXJmYWNlIEJLU1Byb2Nlc3NBc3NlcnRpb24gKERldGFpbHMpCi0tIChpZClpbml0
V2l0aFBJRDoocGlkX3QpcGlkIGZsYWdzOihCS1NQcm9jZXNzQXNzZXJ0aW9uRmxhZ3MpZmxhZ3Mg
cmVhc29uOihCS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uKXJlYXNvbiBuYW1lOihOU1N0cmluZyAq
KW5hbWUgd2l0aEhhbmRsZXI6KEJLU1Byb2Nlc3NBc3NlcnRpb25BY3F1aXNpdGlvbkhhbmRsZXIp
aGFuZGxlcjsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBhc3NpZ24pIEJLU1Byb2Nlc3NBc3NlcnRp
b25GbGFncyBmbGFnczsKLUBlbmQKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9QbGF0Zm9ybS9zcGkvaW9zL0NvcmVQREZTUEkuaCBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3Jt
L3NwaS9pb3MvQ29yZVBERlNQSS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2Mzk1
ODEzNTMxNjZhZjczYzdkODY1OTAyZDM3OTMwZTcxOGI0Y2FjLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3NwaS9p
b3MvQ29yZVBERlNQSS5oCisrKyAvZGV2L251bGwKQEAgLTEsMTIzICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgot
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
LSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jaW1wb3J0IDxDb3JlR3JhcGhpY3MvQ29yZUdyYXBoaWNzLmg+Ci0jaW1wb3J0IDxVSUtp
dC9VSUtpdC5oPgotCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2ltcG9ydCA8Q29y
ZVBERi9VSVBERkFubm90YXRpb25Db250cm9sbGVyLmg+Ci0jaW1wb3J0IDxDb3JlUERGL1VJUERG
RG9jdW1lbnQuaD4KLSNpbXBvcnQgPENvcmVQREYvVUlQREZMaW5rQW5ub3RhdGlvbi5oPgotI2lt
cG9ydCA8Q29yZVBERi9VSVBERlBhZ2UuaD4KLSNpbXBvcnQgPENvcmVQREYvVUlQREZQYWdlVmll
dy5oPgotCi0jZWxzZQotCi1AaW50ZXJmYWNlIFVJUERGUGFnZSA6IE5TT2JqZWN0Ci1AZW5kCi0K
LUBpbnRlcmZhY2UgVUlQREZQYWdlIChEZXRhaWxzKQotLSAoQ0dSZWN0KWNyb3BCb3hBY2NvdW50
Rm9yUm90YXRpb247Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlQREZEb2N1bWVudCA6IE5TT2JqZWN0
Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlQREZEb2N1bWVudCAoRGV0YWlscykKLS0gKFVJUERGUGFn
ZSAqKXBhZ2VBdEluZGV4OihOU1VJbnRlZ2VyKWluZGV4OwotLSAoaWQpaW5pdFdpdGhDR1BERkRv
Y3VtZW50OihDR1BERkRvY3VtZW50UmVmKWRvY3VtZW50OwotQHByb3BlcnR5IChhc3NpZ24sIHJl
YWRvbmx5KSBOU1VJbnRlZ2VyIG51bWJlck9mUGFnZXM7Ci1AcHJvcGVydHkgKHJlYWRvbmx5KSBD
R1BERkRvY3VtZW50UmVmIENHRG9jdW1lbnQ7Ci1AZW5kCi0KLXR5cGVkZWYgZW51bSB7Ci0gICAg
a1VJUERGT2JqZWN0S2luZEdyYXBoaWMgPSAxLAotfSBVSVBERk9iamVjdEtpbmQ7Ci0KLUBjbGFz
cyBVSVBERlBhZ2VWaWV3OwotQHByb3RvY29sIFVJUERGQW5ub3RhdGlvbkNvbnRyb2xsZXJEZWxl
Z2F0ZTsKLQotQGludGVyZmFjZSBVSVBERkFubm90YXRpb25Db250cm9sbGVyIDogTlNPYmplY3Q8
VUlHZXN0dXJlUmVjb2duaXplckRlbGVnYXRlPgotQGVuZAotCi1AaW50ZXJmYWNlIFVJUERGQW5u
b3RhdGlvbkNvbnRyb2xsZXIgKERldGFpbHMpCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9u
bHkpIFVJUERGUGFnZVZpZXcgKnBhZ2VWaWV3OwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2ln
bikgaWQ8TlNPYmplY3QsIFVJUERGQW5ub3RhdGlvbkNvbnRyb2xsZXJEZWxlZ2F0ZT4gZGVsZWdh
dGU7Ci1AZW5kCi0KLUBwcm90b2NvbCBVSVBERlBhZ2VWaWV3RGVsZWdhdGU7Ci0KLUBpbnRlcmZh
Y2UgVUlQREZQYWdlVmlldyA6IFVJVmlldwotQGVuZAotCi1AaW50ZXJmYWNlIFVJUERGUGFnZVZp
ZXcgKERldGFpbHMpCi0tIChpZClpbml0V2l0aFBhZ2U6KFVJUERGUGFnZSAqKSBwYWdlIHRpbGVk
Q29udGVudDooQk9PTCl0aWxlZDsKLS0gKENHUmVjdCljb252ZXJ0UmVjdEZyb21QREZQYWdlU3Bh
Y2U6KENHUmVjdClwOwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgQk9PTCB1c2VCYWNr
aW5nTGF5ZXI7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduKSBpZDxOU09iamVjdCwgVUlQ
REZQYWdlVmlld0RlbGVnYXRlPiBkZWxlZ2F0ZTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFk
b25seSkgQ0FMYXllciAqY29udGVudExheWVyOwotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5KSBVSVBERkFubm90YXRpb25Db250cm9sbGVyICphbm5vdGF0aW9uQ29udHJvbGxlcjsKLUBl
bmQKLQotQHByb3RvY29sIFVJUERGUGFnZVZpZXdEZWxlZ2F0ZQotQG9wdGlvbmFsCi0tIChCT09M
KXNlbGVjdGlvbldpbGxUcmFjazooVUlQREZQYWdlVmlldyopcGFnZVZpZXc7Ci0tIChCT09MKXNo
b3VsZFJlY29nbml6ZVRhcEluOihVSVBERlBhZ2VWaWV3ICopcGFnZVZpZXcgYXRQb2ludDooQ0dQ
b2ludClwb2ludDsKLS0gKENsYXNzKWNsYXNzRm9yQW5ub3RhdGlvblR5cGU6KGNvbnN0IGNoYXIg
Kil0eXBlOwotLSAodm9pZClkaWRUYXA6KFVJUERGUGFnZVZpZXcgKilwYWdlVmlldyBhdFBvaW50
OihDR1BvaW50KXBvaW50OwotLSAodm9pZClkb3VibGVUYXBJbjooVUlQREZQYWdlVmlldyAqKXBh
Z2VWaWV3IGF0UG9pbnQ6KENHUG9pbnQpcG9pbnQ7Ci0tICh2b2lkKXBhZ2VXYXNSZW5kZXJlZDoo
VUlQREZQYWdlVmlldyAqKXBhZ2VWaWV3OwotLSAodm9pZClyZXNldFpvb206KFVJUERGUGFnZVZp
ZXcgKilwYWdlVmlldzsKLS0gKHZvaWQpc2VsZWN0aW9uRGlkRW5kVHJhY2tpbmc6KFVJUERGUGFn
ZVZpZXcgKilwYWdlVmlldzsKLS0gKHZvaWQpem9vbTooVUlQREZQYWdlVmlldyAqKXBhZ2VWaWV3
IHRvOihDR1JlY3QpcmVjdCBhdFBvaW50OihDR1BvaW50KXB0IGtpbmQ6KFVJUERGT2JqZWN0S2lu
ZClraW5kOwotQGVuZAotCi1AaW50ZXJmYWNlIFVJUERGQW5ub3RhdGlvbiA6IE5TT2JqZWN0Ci1A
ZW5kCi0KLUBpbnRlcmZhY2UgVUlQREZBbm5vdGF0aW9uIChEZXRhaWxzKQotLSAoQ0dSZWN0KVJl
Y3Q7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduKSBVSVBERkFubm90YXRpb25Db250cm9s
bGVyKiBhbm5vdGF0aW9uQ29udHJvbGxlcjsKLUBlbmQKLQotQGludGVyZmFjZSBVSVBERk1hcmt1
cEFubm90YXRpb24gOiBVSVBERkFubm90YXRpb24KLUBlbmQKLQotQGludGVyZmFjZSBVSVBERkxp
bmtBbm5vdGF0aW9uIDogVUlQREZNYXJrdXBBbm5vdGF0aW9uCi1AZW5kCi0KLUBpbnRlcmZhY2Ug
VUlQREZMaW5rQW5ub3RhdGlvbiAoRGV0YWlscykKLS0gKE5TVVJMICopdXJsOwotLSAoTlNVSW50
ZWdlcilwYWdlTnVtYmVyOwotQGVuZAotCi1AcHJvdG9jb2wgVUlQREZBbm5vdGF0aW9uQ29udHJv
bGxlckRlbGVnYXRlCi1Ab3B0aW9uYWwKLS0gKHZvaWQpYW5ub3RhdGlvbjooVUlQREZBbm5vdGF0
aW9uICopYW5ub3RhdGlvbiB3YXNUb3VjaGVkQXRQb2ludDooQ0dQb2ludCkgcG9pbnQgY29udHJv
bGxlcjooVUlQREZBbm5vdGF0aW9uQ29udHJvbGxlciAqKWNvbnRyb2xsZXI7Ci0tICh2b2lkKWFu
bm90YXRpb246KFVJUERGQW5ub3RhdGlvbiAqKWFubm90YXRpb24gaXNCZWluZ1ByZXNzZWRBdFBv
aW50OihDR1BvaW50KSBwb2ludCBjb250cm9sbGVyOihVSVBERkFubm90YXRpb25Db250cm9sbGVy
ICopY29udHJvbGxlcjsKLUBlbmQKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9QbGF0Zm9ybS9zcGkvaW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oIGIvU291cmNlL1dlYktpdDIv
UGxhdGZvcm0vc3BpL2lvcy9EYXRhRGV0ZWN0b3JzVUlTUEkuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggYjI1ODdlZTljMDY1OWQyMmQxYzVlN2VjM2Q3Mzk3YWU0Y2M4NTE0MC4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9QbGF0Zm9ybS9zcGkvaW9zL0RhdGFEZXRlY3RvcnNVSVNQSS5oCisrKyAvZGV2L251bGwKQEAg
LTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgPFVJS2l0L1VJS2l0Lmg+Ci0jaW1w
b3J0IDxXZWJDb3JlL1NvZnRMaW5raW5nLmg+Ci0KLSNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RL
KQotCi0jaW1wb3J0IDxEYXRhRGV0ZWN0b3JzVUkvRERBY3Rpb24uaD4KLSNpbXBvcnQgPERhdGFE
ZXRlY3RvcnNVSS9ERERldGVjdGlvbkNvbnRyb2xsZXIuaD4KLQotI2Vsc2UKLQotQGludGVyZmFj
ZSBEREFjdGlvbiA6IE5TT2JqZWN0Ci1AZW5kCi0KLUBpbnRlcmZhY2UgRERBY3Rpb24gKERldGFp
bHMpCi0tIChCT09MKWhhc1VzZXJJbnRlcmZhY2U7Ci0tIChOU1N0cmluZyAqKWxvY2FsaXplZE5h
bWU7Ci1AcHJvcGVydHkgKHJlYWRvbmx5KSBOU1N0cmluZyAqYWN0aW9uVVRJOwotQGVuZAotCi1A
cHJvdG9jb2wgREREZXRlY3Rpb25Db250cm9sbGVySW50ZXJhY3Rpb25EZWxlZ2F0ZSA8TlNPYmpl
Y3Q+Ci1AZW5kCi0KLUBpbnRlcmZhY2UgREREZXRlY3Rpb25Db250cm9sbGVyIDogTlNPYmplY3Qg
PFVJQWN0aW9uU2hlZXREZWxlZ2F0ZT4KLUBlbmQKLQotQGludGVyZmFjZSBERERldGVjdGlvbkNv
bnRyb2xsZXIgKERldGFpbHMpCi0rIChERERldGVjdGlvbkNvbnRyb2xsZXIgKilzaGFyZWRDb250
cm9sbGVyOwotKyAoTlNBcnJheSAqKXRhcEFuZEhvbGRTY2hlbWVzOwotLSAodm9pZClwZXJmb3Jt
QWN0aW9uOihEREFjdGlvbiAqKWFjdGlvbiBmcm9tQWxlcnRDb250cm9sbGVyOihVSUFsZXJ0Q29u
dHJvbGxlciAqKWFsZXJ0Q29udHJvbGxlciBpbnRlcmFjdGlvbkRlbGVnYXRlOihpZCA8REREZXRl
Y3Rpb25Db250cm9sbGVySW50ZXJhY3Rpb25EZWxlZ2F0ZT4paW50ZXJhY3Rpb25EZWxlZ2F0ZTsK
LUBlbmQKLQotI2VuZGlmCi0KLUBpbnRlcmZhY2UgREREZXRlY3Rpb25Db250cm9sbGVyIChEZXRh
aWxzVG9CZVJlbW92ZWQpCi0vLyBGSVhNRTogVGhpcyB3aWxsIGJlIHJlbW92ZWQgYXMgc29vbiBh
cyA8cmRhcjovL3Byb2JsZW0vMTYzNDY5MTM+IGlzIGZpeGVkLgotLSAoTlNBcnJheSAqKWFjdGlv
bnNGb3JBbmNob3I6KGlkKWFuY2hvciB1cmw6KE5TVVJMICopdGFyZ2V0VVJMIGZvckZyYW1lOihp
ZClmcmFtZTsKLUBlbmQKLQotU09GVF9MSU5LX1BSSVZBVEVfRlJBTUVXT1JLKERhdGFEZXRlY3Rv
cnNVSSkKLVNPRlRfTElOS19DTEFTUyhEYXRhRGV0ZWN0b3JzVUksIERERGV0ZWN0aW9uQ29udHJv
bGxlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3NwaS9pb3MvTWFuYWdl
ZENvbmZpZ3VyYXRpb25TUEkuaCBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3NwaS9pb3MvTWFu
YWdlZENvbmZpZ3VyYXRpb25TUEkuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGE1
YWQxNDg0MzNmMTliMjcyZGEzOGE5NTdkNmJjZTAxNDExNDQ2NS4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9zcGkv
aW9zL01hbmFnZWRDb25maWd1cmF0aW9uU1BJLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2OSArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+Ci0KLSNp
ZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQotCi0vLyBGSVhNRTogV2UgY29uZGl0aW9uYWxseSBl
bmNsb3NlIHRoZSBNYW5hZ2VkQ29uZmlndXJhdGlvbiBoZWFkZXJzIGluIGFuIGV4dGVybiAiQyIg
bGlua2FnZQotLy8gYmxvY2sgdG8gbWFrZSB0aGVtIHN1aXRhYmxlIGZvciBDKysgdXNlLgotI2lm
ZGVmIF9fY3BsdXNwbHVzCi1leHRlcm4gIkMiIHsKLSNlbmRpZgotCi0jaW1wb3J0IDxNYW5hZ2Vk
Q29uZmlndXJhdGlvbi9NQ0ZlYXR1cmVzLmg+Ci0jaW1wb3J0IDxNYW5hZ2VkQ29uZmlndXJhdGlv
bi9NQ1Byb2ZpbGVDb25uZWN0aW9uLmg+Ci0KLSNpZmRlZiBfX2NwbHVzcGx1cwotfQotI2VuZGlm
Ci0KLSNlbHNlCi0KLXR5cGVkZWYgZW51bSBNQ1Jlc3RyaWN0ZWRCb29sVHlwZSB7Ci0gICAgTUNS
ZXN0cmljdGVkQm9vbEV4cGxpY2l0Tm8gPSAxIDw8IDEsCi19IE1DUmVzdHJpY3RlZEJvb2xUeXBl
OwotCi1AaW50ZXJmYWNlIE1DUHJvZmlsZUNvbm5lY3Rpb24gOiBOU09iamVjdAotQGVuZAotCi1A
aW50ZXJmYWNlIE1DUHJvZmlsZUNvbm5lY3Rpb24gKERldGFpbHMpCi0rIChNQ1Byb2ZpbGVDb25u
ZWN0aW9uICopc2hhcmVkQ29ubmVjdGlvbjsKLS0gKE1DUmVzdHJpY3RlZEJvb2xUeXBlKWVmZmVj
dGl2ZUJvb2xWYWx1ZUZvclNldHRpbmc6KE5TU3RyaW5nICopZmVhdHVyZTsKLUBlbmQKLQotI2Vu
ZGlmCi0KLVdURl9FWFRFUk5fQ19CRUdJTgotCi1leHRlcm4gTlNTdHJpbmcgKiBjb25zdCBNQ0Zl
YXR1cmVEZWZpbml0aW9uTG9va3VwQWxsb3dlZDsKLQotV1RGX0VYVEVSTl9DX0VORAotCi1TT0ZU
X0xJTktfUFJJVkFURV9GUkFNRVdPUksoTWFuYWdlZENvbmZpZ3VyYXRpb24pOwotU09GVF9MSU5L
X0NMQVNTKE1hbmFnZWRDb25maWd1cmF0aW9uLCBNQ1Byb2ZpbGVDb25uZWN0aW9uKTsKLVNPRlRf
TElOS19DT05TVEFOVChNYW5hZ2VkQ29uZmlndXJhdGlvbiwgTUNGZWF0dXJlRGVmaW5pdGlvbkxv
b2t1cEFsbG93ZWQsIE5TU3RyaW5nICopCi0KLSNkZWZpbmUgTUNGZWF0dXJlRGVmaW5pdGlvbkxv
b2t1cEFsbG93ZWQgZ2V0TUNGZWF0dXJlRGVmaW5pdGlvbkxvb2t1cEFsbG93ZWQoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vc3BpL2lvcy9UQ0NTUEkuaCBiL1NvdXJjZS9X
ZWJLaXQyL1BsYXRmb3JtL3NwaS9pb3MvVENDU1BJLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IGU0YWM1ZjU3NGZlODdkYzE2MzdkNDk5N2U3NmNlY2FkMjFhNmRkZWQuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvUGxh
dGZvcm0vc3BpL2lvcy9UQ0NTUEkuaAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2ltcG9ydCA8VENDL1RD
Qy5oPgotCi0jZWxzZQotCi10eXBlZGVmIGVudW0gewotICAgIGtUQ0NBY2Nlc3NQcmVmbGlnaHRE
ZW5pZWQgPSAxLAotfSBUQ0NBY2Nlc3NQcmVmbGlnaHRSZXN1bHQ7Ci0KLSNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vc3BpL2lvcy9UZXh0SW5wdXRTUEkuaCBiL1Nv
dXJjZS9XZWJLaXQyL1BsYXRmb3JtL3NwaS9pb3MvVGV4dElucHV0U1BJLmgKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDlmNTYxZjU1YWE2YjNiZjQ2Njg4OWFjZmMxZjg3MDNjNWExMWZj
ZWEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYktpdDIvUGxhdGZvcm0vc3BpL2lvcy9UZXh0SW5wdXRTUEkuaAorKysgL2Rldi9udWxsCkBA
IC0xLDM5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRp
b24uaD4KLQotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCi0KLSNpbXBvcnQgPFRleHRJbnB1
dC9USV9OU1N0cmluZ0V4dHJhcy5oPgotCi0jZWxzZQotCi1AaW50ZXJmYWNlIE5TU3RyaW5nIChU
ZXh0SW5wdXREZXRhaWxzKQotLSAoQk9PTClfY29udGFpbnNDSlNjcmlwdHM7Ci0tIChCT09MKV9j
b250YWluc0NKU2NyaXB0c09ubHk7Ci1AZW5kCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvUGxhdGZvcm0vc3BpL2lvcy9VSUtpdFNQSS5oIGIvU291cmNlL1dlYktpdDIvUGxh
dGZvcm0vc3BpL2lvcy9VSUtpdFNQSS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
Zjk4ZWI1NWI3N2I3MjRlMWJjZDQ1M2JkZTIxZDA3ZTIzNzE0MWI4Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3Nw
aS9pb3MvVUlLaXRTUEkuaAorKysgL2Rldi9udWxsCkBAIC0xLDY2MSArMCwwIEBACi0vKgotICog
Q29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
LSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
Ci0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2ltcG9ydCA8VUlLaXQvVUlLaXQuaD4KLQotI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9T
REspCi0KLSNpbXBvcnQgPFVJS2l0L1VJQWxlcnRDb250cm9sbGVyX1ByaXZhdGUuaD4KLSNpbXBv
cnQgPFVJS2l0L1VJQXBwbGljYXRpb25fUHJpdmF0ZS5oPgotI2ltcG9ydCA8VUlLaXQvVUlCYXJC
dXR0b25JdGVtX1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJRGF0ZVBpY2tlcl9Qcml2YXRl
Lmg+Ci0jaW1wb3J0IDxVSUtpdC9VSURldmljZV9Qcml2YXRlLmg+Ci0jaW1wb3J0IDxVSUtpdC9V
SUZvbnRfUHJpdmF0ZS5oPgotI2ltcG9ydCA8VUlLaXQvVUlHZW9tZXRyeV9Qcml2YXRlLmg+Ci0j
aW1wb3J0IDxVSUtpdC9VSUdlc3R1cmVSZWNvZ25pemVyX1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJ
S2l0L1VJSW1hZ2VQaWNrZXJDb250cm9sbGVyX1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJ
SW1hZ2VfUHJpdmF0ZS5oPgotI2ltcG9ydCA8VUlLaXQvVUlLZXlib2FyZEltcGwuaD4KLSNpbXBv
cnQgPFVJS2l0L1VJS2V5Ym9hcmRJbnRsLmg+Ci0jaW1wb3J0IDxVSUtpdC9VSUtleWJvYXJkX1By
aXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJTG9uZ1ByZXNzR2VzdHVyZVJlY29nbml6ZXJfUHJp
dmF0ZS5oPgotI2ltcG9ydCA8VUlLaXQvVUlQZXJpcGhlcmFsSG9zdC5oPgotI2ltcG9ydCA8VUlL
aXQvVUlQZXJpcGhlcmFsSG9zdF9Qcml2YXRlLmg+Ci0jaW1wb3J0IDxVSUtpdC9VSVBpY2tlckNv
bnRlbnRWaWV3X1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJUGlja2VyVmlld19Qcml2YXRl
Lmg+Ci0jaW1wb3J0IDxVSUtpdC9VSVNjcm9sbFZpZXdfUHJpdmF0ZS5oPgotI2ltcG9ydCA8VUlL
aXQvVUlTdHJpbmdEcmF3aW5nX1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJVGFibGVWaWV3
Q2VsbF9Qcml2YXRlLmg+Ci0jaW1wb3J0IDxVSUtpdC9VSVRhcEdlc3R1cmVSZWNvZ25pemVyX1By
aXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJVGV4dElucHV0X1ByaXZhdGUuaD4KLSNpbXBvcnQg
PFVJS2l0L1VJVGV4dEludGVyYWN0aW9uQXNzaXN0YW50X1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJ
S2l0L1VJVmlld0NvbnRyb2xsZXJUcmFuc2l0aW9uaW5nX1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJ
S2l0L1VJVmlld0NvbnRyb2xsZXJfUHJpdmF0ZS5oPgotI2ltcG9ydCA8VUlLaXQvVUlWaWV3X1By
aXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L1VJV0tTZWxlY3Rpb25Bc3Npc3RhbnQuaD4KLSNpbXBv
cnQgPFVJS2l0L1VJV0tUZXh0SW50ZXJhY3Rpb25Bc3Npc3RhbnQuaD4KLSNpbXBvcnQgPFVJS2l0
L1VJV2ViQnJvd3NlclZpZXcuaD4KLSNpbXBvcnQgPFVJS2l0L1VJV2ViRG9jdW1lbnRWaWV3Lmg+
Ci0jaW1wb3J0IDxVSUtpdC9VSVdlYkZvcm1BY2Nlc3NvcnkuaD4KLSNpbXBvcnQgPFVJS2l0L1VJ
V2ViR2VvbG9jYXRpb25Qb2xpY3lEZWNpZGVyLmg+Ci0jaW1wb3J0IDxVSUtpdC9VSVdlYlNjcm9s
bFZpZXcuaD4KLSNpbXBvcnQgPFVJS2l0L1VJV2ViVGlsZWRWaWV3Lmg+Ci0jaW1wb3J0IDxVSUtp
dC9VSVdlYlRvdWNoRXZlbnRzR2VzdHVyZVJlY29nbml6ZXIuaD4KLSNpbXBvcnQgPFVJS2l0L1VJ
V2luZG93X1ByaXZhdGUuaD4KLSNpbXBvcnQgPFVJS2l0L19VSUJhY2tkcm9wVmlld19Qcml2YXRl
Lmg+Ci0jaW1wb3J0IDxVSUtpdC9fVUlIaWdobGlnaHRWaWV3Lmg+Ci0jaW1wb3J0IDxVSUtpdC9f
VUlOYXZpZ2F0aW9uSW50ZXJhY3RpdmVUcmFuc2l0aW9uLmg+Ci0jaW1wb3J0IDxVSUtpdC9fVUlO
YXZpZ2F0aW9uUGFyYWxsYXhUcmFuc2l0aW9uLmg+Ci0KLSNlbHNlCi0KLUBpbnRlcmZhY2UgVUlB
bGVydENvbnRyb2xsZXIgKERldGFpbHMpCi0tICh2b2lkKV9hZGRBY3Rpb25XaXRoVGl0bGU6KE5T
U3RyaW5nICopdGl0bGUgc3R5bGU6KFVJQWxlcnRBY3Rpb25TdHlsZSlzdHlsZSBoYW5kbGVyOih2
b2lkICheKSh2b2lkKSloYW5kbGVyOwotLSAodm9pZClfYWRkQWN0aW9uV2l0aFRpdGxlOihOU1N0
cmluZyAqKXRpdGxlIHN0eWxlOihVSUFsZXJ0QWN0aW9uU3R5bGUpc3R5bGUgaGFuZGxlcjoodm9p
ZCAoXikodm9pZCkpaGFuZGxlciBzaG91bGREaXNtaXNzSGFuZGxlcjooQk9PTCAoXikodm9pZCkp
c2hvdWxkRGlzbWlzc0hhbmRsZXI7Ci1AcHJvcGVydHkgKG5vbmF0b21pYykgVUlBbGVydENvbnRy
b2xsZXJTdHlsZSBwcmVmZXJyZWRTdHlsZTsKLUBlbmQKLQotQGludGVyZmFjZSBVSUFwcGxpY2F0
aW9uIChEZXRhaWxzKQotLSAoVUlJbnRlcmZhY2VPcmllbnRhdGlvbilpbnRlcmZhY2VPcmllbnRh
dGlvbjsKLS0gKHZvaWQpX2NhbmNlbEFsbFRvdWNoZXM7Ci1AZW5kCi0KLXR5cGVkZWYgTlNfRU5V
TShOU0ludGVnZXIsIFVJRGF0ZVBpY2tlclByaXZhdGVNb2RlKSAgewotICAgIFVJRGF0ZVBpY2tl
ck1vZGVZZWFyQW5kTW9udGggPSA0MjY5LAotfTsKLQotQGludGVyZmFjZSBVSURhdGVQaWNrZXIg
KERldGFpbHMpCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1fY29udGVu
dFdpZHRoKSBDR0Zsb2F0IGNvbnRlbnRXaWR0aDsKLUBlbmQKLQotI2RlZmluZSBVSUN1cnJlbnRV
c2VySW50ZXJmYWNlSWRpb21Jc1BhZCgpIChbW1VJRGV2aWNlIGN1cnJlbnREZXZpY2VdIHVzZXJJ
bnRlcmZhY2VJZGlvbV0gPT0gVUlVc2VySW50ZXJmYWNlSWRpb21QYWQpCi0KLUBpbnRlcmZhY2Ug
VUlEZXZpY2UgKERldGFpbHMpCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIHJldGFp
bikgTlNTdHJpbmcgKmJ1aWxkVmVyc2lvbjsKLUBlbmQKLQotdHlwZWRlZiBlbnVtIHsKLSAgICBV
SUZvbnRUcmFpdFBsYWluID0gMHgwMDAwMDAwMCwKLX0gVUlGb250VHJhaXQ7Ci0KLUBpbnRlcmZh
Y2UgVUlGb250IChEZXRhaWxzKQotKyAoVUlGb250ICopZm9udFdpdGhGYW1pbHlOYW1lOihOU1N0
cmluZyAqKWZhbWlseU5hbWUgdHJhaXRzOihVSUZvbnRUcmFpdCl0cmFpdHMgc2l6ZTooQ0dGbG9h
dClmb250U2l6ZTsKLUBlbmQKLQotdHlwZWRlZiBlbnVtIHsKLSAgICBVSUFsbENvcm5lcnMgPSAw
eEZGLAotfSBVSVJlY3RDb3JuZXJzOwotCi1AaW50ZXJmYWNlIFVJSW1hZ2VQaWNrZXJDb250cm9s
bGVyIChEZXRhaWxzKQotQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWxsb3dzTXVs
dGlwbGVTZWxlY3Rpb246KSBCT09MIF9hbGxvd3NNdWx0aXBsZVNlbGVjdGlvbjsKLUBlbmQKLQot
QGludGVyZmFjZSBVSUltYWdlIChEZXRhaWxzKQotLSAoaWQpaW5pdFdpdGhDR0ltYWdlOihDR0lt
YWdlUmVmKUNHSW1hZ2UgaW1hZ2VPcmllbnRhdGlvbjooVUlJbWFnZU9yaWVudGF0aW9uKWltYWdl
T3JpZW50YXRpb247Ci1AZW5kCi0KLUBwcm90b2NvbCBVSUtleWJvYXJkSW1wbEdlb21ldHJ5RGVs
ZWdhdGUKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkd3JpdGUsIGdldHRlcj1pc01pbmltaXpl
ZCkgQk9PTCBtaW5pbWl6ZWQ7Ci0tICh2b2lkKXByZXBhcmVGb3JJbXBsQm91bmRzSGVpZ2h0Q2hh
bmdlOihDR0Zsb2F0KWVuZERlbHRhIHN1cHByZXNzTm90aWZpY2F0aW9uOihCT09MKXN1cHByZXNz
Tm90aWZpY2F0aW9uOwotLSAodm9pZClpbXBsQm91bmRzSGVpZ2h0Q2hhbmdlRG9uZTooQ0dGbG9h
dCllbmREZWx0YSBzdXBwcmVzc05vdGlmaWNhdGlvbjooQk9PTClzdXBwcmVzc05vdGlmaWNhdGlv
bjsKLS0gKEJPT0wpc2hvdWxkU2F2ZU1pbmltaXphdGlvblN0YXRlOwotLSAoQk9PTCljYW5EaXNt
aXNzOwotLSAoQk9PTClpc0FjdGl2ZTsKLUBlbmQKLQotQHByb3RvY29sIFVJS2V5Ym9hcmRDYW5k
aWRhdGVMaXN0RGVsZWdhdGUgPE5TT2JqZWN0PgotQG9wdGlvbmFsCi0tICh2b2lkKXNldENhbmRp
ZGF0ZUxpc3Q6KGlkKWNhbmRpZGF0ZUxpc3QgdXBkYXRlQ2FuZGlkYXRlVmlldzooQk9PTCl1cGRh
dGVDYW5kaWRhdGVWaWV3OwotLSAodm9pZCljYW5kaWRhdGVMaXN0QWNjZXB0Q2FuZGlkYXRlOihp
ZCljYW5kaWRhdGVMaXN0OwotLSAodm9pZCljYW5kaWRhdGVMaXN0U2VsZWN0aW9uRGlkQ2hhbmdl
OihpZCljYW5kaWRhdGVMaXN0OwotLSAodm9pZCljYW5kaWRhdGVMaXN0U2hvdWxkQmVEaXNtaXNz
ZWQ6KGlkKWNhbmRpZGF0ZUxpc3Q7Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlLZXlib2FyZCA6IFVJ
VmlldyA8VUlLZXlib2FyZEltcGxHZW9tZXRyeURlbGVnYXRlPgotQGVuZAotCi1AaW50ZXJmYWNl
IFVJS2V5Ym9hcmQgKERldGFpbHMpCi0rIChDR1NpemUpZGVmYXVsdFNpemVGb3JJbnRlcmZhY2VP
cmllbnRhdGlvbjooVUlJbnRlcmZhY2VPcmllbnRhdGlvbilvcmllbnRhdGlvbjsKLS0gKHZvaWQp
YWN0aXZhdGU7Ci0tICh2b2lkKWdlb21ldHJ5Q2hhbmdlRG9uZTooQk9PTClrZXlib2FyZFZpc2li
bGU7Ci0tICh2b2lkKXByZXBhcmVGb3JHZW9tZXRyeUNoYW5nZTsKLUBlbmQKLQotQGludGVyZmFj
ZSBVSUtleWJvYXJkSW1wbCA6IFVJVmlldyA8VUlLZXlib2FyZENhbmRpZGF0ZUxpc3REZWxlZ2F0
ZT4KLUBlbmQKLQotQGludGVyZmFjZSBVSUtleWJvYXJkSW1wbCAoRGV0YWlscykKLSsgKFVJS2V5
Ym9hcmRJbXBsICopYWN0aXZlSW5zdGFuY2U7Ci0rIChVSUtleWJvYXJkSW1wbCAqKXNoYXJlZElu
c3RhbmNlOwotKyAoQ0dTaXplKWRlZmF1bHRTaXplRm9ySW50ZXJmYWNlT3JpZW50YXRpb246KFVJ
SW50ZXJmYWNlT3JpZW50YXRpb24pb3JpZW50YXRpb247Ci0tICh2b2lkKWFkZElucHV0U3RyaW5n
OihOU1N0cmluZyAqKXN0cmluZyB3aXRoRmxhZ3M6KE5TVUludGVnZXIpZmxhZ3M7Ci0tIChCT09M
KWF1dG9jb3JyZWN0U3BlbGxpbmdFbmFibGVkOwotLSAodm9pZClkZWxldGVGcm9tSW5wdXQ7Ci0t
ICh2b2lkKXJlcGxhY2VUZXh0OihpZClyZXBsYWNlbWVudDsKLUBwcm9wZXJ0eSAobm9uYXRvbWlj
LCByZWFkd3JpdGUsIHJldGFpbikgVUlSZXNwb25kZXIgPFVJS2V5SW5wdXQ+ICpkZWxlZ2F0ZTsK
LUBlbmQKLQotQGludGVyZmFjZSBVSUdlc3R1cmVSZWNvZ25pemVyIChEZXRhaWxzKQotLSAodm9p
ZClyZXF1aXJlT3RoZXJHZXN0dXJlVG9GYWlsOihVSUdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVy
ZVJlY29nbml6ZXI7Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlMb25nUHJlc3NHZXN0dXJlUmVjb2du
aXplciAoRGV0YWlscykKLUBwcm9wZXJ0eSAobm9uYXRvbWljKSBDRlRpbWVJbnRlcnZhbCBkZWxh
eTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQ0dQb2ludCBzdGFydFBvaW50Owot
QGVuZAotCi1AaW50ZXJmYWNlIF9VSVdlYkhpZ2hsaWdodExvbmdQcmVzc0dlc3R1cmVSZWNvZ25p
emVyIDogVUlMb25nUHJlc3NHZXN0dXJlUmVjb2duaXplcgotQGVuZAotCi1AaW50ZXJmYWNlIF9V
SVdlYkhpZ2hsaWdodExvbmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyIChEZXRhaWxzKQotLSAodm9p
ZCljYW5jZWw7Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlQZXJpcGhlcmFsSG9zdCA6IE5TT2JqZWN0
IDxVSUdlc3R1cmVSZWNvZ25pemVyRGVsZWdhdGU+Ci1AZW5kCi0KLUBjbGFzcyBVSUtleWJvYXJk
Um90YXRpb25TdGF0ZTsKLQotQGludGVyZmFjZSBVSVBlcmlwaGVyYWxIb3N0IChEZXRhaWxzKQot
KyAoVUlQZXJpcGhlcmFsSG9zdCAqKXNoYXJlZEluc3RhbmNlOwotKyAoVUlQZXJpcGhlcmFsSG9z
dCAqKWFjdGl2ZUluc3RhbmNlOwotLSAoQk9PTClpc09uU2NyZWVuOwotLSAoVUlLZXlib2FyZFJv
dGF0aW9uU3RhdGUgKilyb3RhdGlvblN0YXRlOwotQGVuZAotCi1AaW50ZXJmYWNlIFVJUGlja2Vy
Q29udGVudFZpZXcgOiBVSVZpZXcKLUBlbmQKLQotQGludGVyZmFjZSBVSVBpY2tlckNvbnRlbnRW
aWV3IChEZXRhaWxzKQotKyhDR0Zsb2F0KV9jaGVja21hcmtPZmZzZXQ7Ci0tKENHRmxvYXQpbGFi
ZWxXaWR0aEZvckJvdW5kczooQ0dSZWN0KWJvdW5kczsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBn
ZXR0ZXI9aXNDaGVja2VkKSBCT09MIGNoZWNrZWQ7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVh
ZG9ubHkpIFVJTGFiZWwgKnRpdGxlTGFiZWw7Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlQaWNrZXJW
aWV3IChEZXRhaWxzKQotKyAoQ0dTaXplKWRlZmF1bHRTaXplRm9yQ3VycmVudE9yaWVudGF0aW9u
OwotLSAodm9pZClfc2V0VXNlc0NoZWNrZWRTZWxlY3Rpb246KEJPT0wpdXNlc0NoZWNrZWRTZWxl
Y3Rpb247Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRNYWduaWZpZXJFbmFibGVk
OikgQk9PTCBfbWFnbmlmaWVyRW5hYmxlZDsKLUBlbmQKLQotQGludGVyZmFjZSBVSVNjcm9sbFZp
ZXcgKERldGFpbHMpCi0tICh2b2lkKV9zdG9wU2Nyb2xsaW5nQW5kWm9vbWluZ0FuaW1hdGlvbnM7
Ci0tICh2b2lkKV96b29tVG9DZW50ZXI6KENHUG9pbnQpY2VudGVyIHNjYWxlOihDR0Zsb2F0KXNj
YWxlIGR1cmF0aW9uOihDRlRpbWVJbnRlcnZhbClkdXJhdGlvbiBmb3JjZTooQk9PTClmb3JjZTsK
LS0gKHZvaWQpX3pvb21Ub0NlbnRlcjooQ0dQb2ludCljZW50ZXIgc2NhbGU6KENHRmxvYXQpc2Nh
bGUgZHVyYXRpb246KENGVGltZUludGVydmFsKWR1cmF0aW9uOwotQHByb3BlcnR5IChub25hdG9t
aWMsIGdldHRlcj1pc1pvb21FbmFibGVkKSBCT09MIHpvb21FbmFibGVkOwotQHByb3BlcnR5IChu
b25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9X2lzQW5pbWF0aW5nWm9vbSkgQk9PTCBpc0FuaW1h
dGluZ1pvb207Ci1AcHJvcGVydHkgKG5vbmF0b21pYykgQ0dGbG9hdCBob3Jpem9udGFsU2Nyb2xs
RGVjZWxlcmF0aW9uRmFjdG9yOwotQHByb3BlcnR5IChub25hdG9taWMpIENHRmxvYXQgdmVydGlj
YWxTY3JvbGxEZWNlbGVyYXRpb25GYWN0b3I7Ci1AZW5kCi0KLUBpbnRlcmZhY2UgTlNTdHJpbmcg
KFVJS2l0RGV0YWlscykKLS0gKENHU2l6ZSlfbGVnYWN5X3NpemVXaXRoRm9udDooVUlGb250ICop
Zm9udCBmb3JXaWR0aDooQ0dGbG9hdCl3aWR0aCBsaW5lQnJlYWtNb2RlOihOU0xpbmVCcmVha01v
ZGUpbGluZUJyZWFrTW9kZTsKLS0gKENHU2l6ZSlfbGVnYWN5X3NpemVXaXRoRm9udDooVUlGb250
ICopZm9udCBtaW5Gb250U2l6ZTooQ0dGbG9hdCltaW5Gb250U2l6ZSBhY3R1YWxGb250U2l6ZToo
Q0dGbG9hdCAqKWFjdHVhbEZvbnRTaXplIGZvcldpZHRoOihDR0Zsb2F0KXdpZHRoIGxpbmVCcmVh
a01vZGU6KE5TTGluZUJyZWFrTW9kZSlsaW5lQnJlYWtNb2RlOwotQGVuZAotCi1AaW50ZXJmYWNl
IFVJVGFwR2VzdHVyZVJlY29nbml6ZXIgKERldGFpbHMpCi1AcHJvcGVydHkgKG5vbmF0b21pYywg
cmVhZG9ubHkpIENHUG9pbnQgbG9jYXRpb247Ci1AZW5kCi0KLUBjbGFzcyBXZWJFdmVudDsKLQot
dHlwZWRlZiBlbnVtIHsKLSAgICBVSVRleHRTaG9ydGN1dENvbnZlcnNpb25UeXBlRGVmYXVsdCA9
IDAsCi0gICAgVUlUZXh0U2hvcnRjdXRDb252ZXJzaW9uVHlwZU5vID0gMSwKLSAgICBVSVRleHRT
aG9ydGN1dENvbnZlcnNpb25UeXBlWWVzID0gMiwKLX0gVUlUZXh0U2hvcnRjdXRDb252ZXJzaW9u
VHlwZTsKLQotQHByb3RvY29sIFVJVGV4dElucHV0VHJhaXRzX1ByaXZhdGUgPE5TT2JqZWN0LCBV
SVRleHRJbnB1dFRyYWl0cz4KLS0gKHZvaWQpdGFrZVRyYWl0c0Zyb206KGlkIDxVSVRleHRJbnB1
dFRyYWl0cz4pdHJhaXRzOwotQG9wdGlvbmFsCi1AcHJvcGVydHkgKG5vbmF0b21pYykgVUlUZXh0
U2hvcnRjdXRDb252ZXJzaW9uVHlwZSBzaG9ydGN1dENvbnZlcnNpb25UeXBlOwotQGVuZAotCi1A
Y2xhc3MgVUlUZXh0SW5wdXRBcnJvd0tleUhpc3Rvcnk7Ci0KLUBwcm90b2NvbCBVSVRleHRJbnB1
dFByaXZhdGUgPFVJVGV4dElucHV0LCBVSVRleHRJbnB1dFRva2VuaXplciwgVUlUZXh0SW5wdXRU
cmFpdHNfUHJpdmF0ZT4KLUBvcHRpb25hbAotLSAoQk9PTClyZXF1aXJlc0tleUV2ZW50czsKLS0g
KE5TQXJyYXkgKiltZXRhZGF0YURpY3Rpb25hcmllc0ZvckRpY3RhdGlvblJlc3VsdHM7Ci0tIChV
SUNvbG9yICopdGV4dENvbG9yRm9yQ2FyZXRTZWxlY3Rpb247Ci0tIChVSUZvbnQgKilmb250Rm9y
Q2FyZXRTZWxlY3Rpb247Ci0tIChVSVZpZXcgKilhdXRvbWF0aWNhbGx5U2VsZWN0ZWRPdmVybGF5
OwotLSAodm9pZCloYW5kbGVLZXlXZWJFdmVudDooV2ViRXZlbnQgKilldmVudDsKLS0gKHZvaWQp
aW5zZXJ0RGljdGF0aW9uUmVzdWx0OihOU0FycmF5ICopZGljdGF0aW9uUmVzdWx0IHdpdGhDb3Jy
ZWN0aW9uSWRlbnRpZmllcjooaWQpY29ycmVjdGlvbklkZW50aWZpZXI7Ci0tICh2b2lkKXJlcGxh
Y2VSYW5nZVdpdGhUZXh0V2l0aG91dENsb3NpbmdUeXBpbmc6KFVJVGV4dFJhbmdlICopcmFuZ2Ug
cmVwbGFjZW1lbnRUZXh0OihOU1N0cmluZyAqKXRleHQ7Ci0tICh2b2lkKXNldEJvdHRvbUJ1ZmZl
ckhlaWdodDooQ0dGbG9hdClib3R0b21CdWZmZXI7Ci1AcHJvcGVydHkgKG5vbmF0b21pYykgVUlU
ZXh0R3JhbnVsYXJpdHkgc2VsZWN0aW9uR3JhbnVsYXJpdHk7Ci1AcmVxdWlyZWQKLS0gKEJPT0wp
aGFzQ29udGVudDsKLS0gKEJPT0wpaGFzU2VsZWN0aW9uOwotLSAodm9pZClzZWxlY3RBbGw7Ci1A
ZW5kCi0KLUBpbnRlcmZhY2UgVUlUZXh0SW5wdXRUcmFpdHMgOiBOU09iamVjdCA8VUlUZXh0SW5w
dXRUcmFpdHMsIFVJVGV4dElucHV0VHJhaXRzX1ByaXZhdGUsIE5TQ29weWluZz4KLUBlbmQKLQot
QGludGVyZmFjZSBVSVRleHRJbnRlcmFjdGlvbkFzc2lzdGFudCA6IE5TT2JqZWN0Ci1AZW5kCi0K
LUBpbnRlcmZhY2UgVUlUZXh0SW50ZXJhY3Rpb25Bc3Npc3RhbnQgKERldGFpbHMpCi0tICh2b2lk
KWFjdGl2YXRlU2VsZWN0aW9uOwotLSAodm9pZClkZWFjdGl2YXRlU2VsZWN0aW9uOwotLSAodm9p
ZClkaWRFbmRTY3JvbGxpbmdPdmVyZmxvdzsKLS0gKHZvaWQpc2VsZWN0aW9uQ2hhbmdlZDsKLS0g
KHZvaWQpc2V0R2VzdHVyZVJlY29nbml6ZXJzOwotLSAodm9pZCl3aWxsU3RhcnRTY3JvbGxpbmdP
dmVyZmxvdzsKLUBlbmQKLQotQGludGVyZmFjZSBVSVZpZXdDb250cm9sbGVyIChEZXRhaWxzKQot
KyAoVUlWaWV3Q29udHJvbGxlciAqKV92aWV3Q29udHJvbGxlckZvckZ1bGxTY3JlZW5QcmVzZW50
YXRpb25Gcm9tVmlldzooVUlWaWV3ICopdmlldzsKLSsgKFVJVmlld0NvbnRyb2xsZXIgKil2aWV3
Q29udHJvbGxlckZvclZpZXc6KFVJVmlldyAqKXZpZXc7Ci1AZW5kCi0KLUBwcm90b2NvbCBVSVZp
ZXdDb250cm9sbGVyQ29udGV4dFRyYW5zaXRpb25pbmdFeCA8VUlWaWV3Q29udHJvbGxlckNvbnRl
eHRUcmFuc2l0aW9uaW5nPgotLSAodm9pZClfX3J1bkFsb25nc2lkZUFuaW1hdGlvbnM7Ci0tICh2
b2lkKV9pbnRlcmFjdGl2aXR5RGlkQ2hhbmdlOihCT09MKWlzSW50ZXJhY3RpdmU7Ci1AcHJvcGVy
dHkgKG5vbmF0b21pYywgYXNzaWduLCBzZXR0ZXI9X3NldEFsbG93VXNlckludGVyYWN0aW9uOiwg
Z2V0dGVyPV9hbGxvd1VzZXJJbnRlcmFjdGlvbikgQk9PTCBfYWxsb3dVc2VySW50ZXJhY3Rpb247
Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduLCBzZXR0ZXI9X3NldFBlcmNlbnRPZmZzZXQ6
KSBDR0Zsb2F0IF9wZXJjZW50T2Zmc2V0OwotQHByb3BlcnR5IChub25hdG9taWMsIHJldGFpbiwg
c2V0dGVyPV9zZXRDb250YWluZXJWaWV3czopIE5TQXJyYXkgKl9jb250YWluZXJWaWV3czsKLUBl
bmQKLQotQGludGVyZmFjZSBfVUlWaWV3Q29udHJvbGxlclRyYW5zaXRpb25Db250ZXh0IDogTlNP
YmplY3QgPFVJVmlld0NvbnRyb2xsZXJDb250ZXh0VHJhbnNpdGlvbmluZ0V4PgotQGVuZAotCi1A
aW50ZXJmYWNlIF9VSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvbnRleHQgKERldGFpbHMpCi0t
ICh2b2lkKSBfc2V0VHJhbnNpdGlvbklzSW5GbGlnaHQ6KEJPT0wpZmxhZzsKLUBwcm9wZXJ0eSAo
bm9uYXRvbWljLCBhc3NpZ24sIHNldHRlcj1fc2V0QWxsb3dVc2VySW50ZXJhY3Rpb246LCBnZXR0
ZXI9X2FsbG93VXNlckludGVyYWN0aW9uKSBCT09MIF9hbGxvd1VzZXJJbnRlcmFjdGlvbjsKLUBw
cm9wZXJ0eSAobm9uYXRvbWljLCBhc3NpZ24sIHNldHRlcj1fc2V0QW5pbWF0b3I6KSBpZCA8VUlW
aWV3Q29udHJvbGxlckFuaW1hdGVkVHJhbnNpdGlvbmluZz4gX2FuaW1hdG9yOwotQHByb3BlcnR5
IChub25hdG9taWMsIGFzc2lnbiwgc2V0dGVyPV9zZXRDb250YWluZXJWaWV3OikgVUlWaWV3ICpj
b250YWluZXJWaWV3OwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbiwgc2V0dGVyPV9zZXRJ
bnRlcmFjdG9yOikgaWQgPFVJVmlld0NvbnRyb2xsZXJJbnRlcmFjdGl2ZVRyYW5zaXRpb25pbmc+
IF9pbnRlcmFjdG9yOwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbiwgc2V0dGVyPV9zZXRQ
ZXJjZW50T2Zmc2V0OikgQ0dGbG9hdCBfcGVyY2VudE9mZnNldDsKLUBwcm9wZXJ0eSAobm9uYXRv
bWljLCBjb3B5LCBzZXR0ZXI9X3NldENvbXBsZXRpb25IYW5kbGVyOikgIHZvaWQgKF5fY29tcGxl
dGlvbkhhbmRsZXIpKF9VSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvbnRleHQgKmNvbnRleHQs
IEJPT0wgdHJhbnNpdGlvbkNvbXBsZXRlZCk7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWlu
LCBzZXR0ZXI9X3NldENvbnRhaW5lclZpZXdzOikgTlNBcnJheSAqX2NvbnRhaW5lclZpZXdzOwot
QGVuZAotCi1AaW50ZXJmYWNlIF9VSVZpZXdDb250cm9sbGVyT25lVG9PbmVUcmFuc2l0aW9uQ29u
dGV4dCA6IF9VSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbkNvbnRleHQKLUBlbmQKLQotQGludGVy
ZmFjZSBfVUlWaWV3Q29udHJvbGxlck9uZVRvT25lVHJhbnNpdGlvbkNvbnRleHQgKERldGFpbHMp
Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduLCBzZXR0ZXI9X3NldEZyb21FbmRGcmFtZTop
IENHUmVjdCBmcm9tRW5kRnJhbWU7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduLCBzZXR0
ZXI9X3NldEZyb21TdGFydEZyYW1lOikgQ0dSZWN0IGZyb21TdGFydEZyYW1lOwotQHByb3BlcnR5
IChub25hdG9taWMsIGFzc2lnbiwgc2V0dGVyPV9zZXRUb0VuZEZyYW1lOikgQ0dSZWN0IHRvRW5k
RnJhbWU7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWduLCBzZXR0ZXI9X3NldFRvU3RhcnRG
cmFtZTopIENHUmVjdCB0b1N0YXJ0RnJhbWU7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWlu
LCBzZXR0ZXI9X3NldEZyb21WaWV3Q29udHJvbGxlcjopIFVJVmlld0NvbnRyb2xsZXIgKmZyb21W
aWV3Q29udHJvbGxlcjsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZXRhaW4sIHNldHRlcj1fc2V0
VG9WaWV3Q29udHJvbGxlcjopIFVJVmlld0NvbnRyb2xsZXIgKnRvVmlld0NvbnRyb2xsZXI7Ci1A
ZW5kCi0KLUBwcm90b2NvbCBVSVZpZXdDb250cm9sbGVyQW5pbWF0ZWRUcmFuc2l0aW9uaW5nRXgg
PFVJVmlld0NvbnRyb2xsZXJBbmltYXRlZFRyYW5zaXRpb25pbmc+Ci0tIChCT09MKWludGVyYWN0
aW9uQWJvcnRlZDsKLS0gKFVJTmF2aWdhdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24pIG9wZXJhdGlv
bjsKLS0gKFVJUGVyY2VudERyaXZlbkludGVyYWN0aXZlVHJhbnNpdGlvbiAqKWludGVyYWN0aW9u
Q29udHJvbGxlcjsKLS0gKHZvaWQpc2V0SW50ZXJhY3Rpb25BYm9ydGVkOihCT09MKWFib3J0ZWQ7
Ci0tICh2b2lkKXNldEludGVyYWN0aW9uQ29udHJvbGxlcjooVUlQZXJjZW50RHJpdmVuSW50ZXJh
Y3RpdmVUcmFuc2l0aW9uICopY29udHJvbGxlcjsKLS0gKHZvaWQpc2V0T3BlcmF0aW9uOihVSU5h
dmlnYXRpb25Db250cm9sbGVyT3BlcmF0aW9uKW9wZXJhdGlvbjsKLUBvcHRpb25hbAotLSAoVUlX
aW5kb3cgKil3aW5kb3c7Ci1AZW5kCi0KLXR5cGVkZWYgTlNfRU5VTSAoTlNJbnRlZ2VyLCBfVUlC
YWNrZHJvcE1hc2tWaWV3RmxhZ3MpIHsKLSAgICBfVUlCYWNrZHJvcE1hc2tWaWV3Tm9uZSA9IDAs
Ci0gICAgX1VJQmFja2Ryb3BNYXNrVmlld0dyYXlzY2FsZVRpbnQgPSAxIDw8IDAsCi0gICAgX1VJ
QmFja2Ryb3BNYXNrVmlld0NvbG9yVGludCA9IDEgPDwgMSwKLSAgICBfVUlCYWNrZHJvcE1hc2tW
aWV3RmlsdGVycyA9IDEgPDwgMiwKLSAgICBfVUlCYWNrZHJvcE1hc2tWaWV3QWxsID0gX1VJQmFj
a2Ryb3BNYXNrVmlld0dyYXlzY2FsZVRpbnQgfCBfVUlCYWNrZHJvcE1hc2tWaWV3Q29sb3JUaW50
IHwgX1VJQmFja2Ryb3BNYXNrVmlld0ZpbHRlcnMsCi19OwotCi1AaW50ZXJmYWNlIFVJVmlldyAo
RGV0YWlscykKLSsgKEJPT0wpX2lzSW5BbmltYXRpb25CbG9jazsKLS0gKENHU2l6ZSlzaXplOwot
LSAodm9pZClzZXRGcmFtZU9yaWdpbjooQ0dQb2ludClvcmlnaW47Ci0tICh2b2lkKXNldFNpemU6
KENHU2l6ZSlzaXplOwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbiwgc2V0dGVyPV9zZXRC
YWNrZHJvcE1hc2tWaWV3RmxhZ3M6KSBOU0ludGVnZXIgX2JhY2tkcm9wTWFza1ZpZXdGbGFnczsK
LUBlbmQKLQotQGludGVyZmFjZSBVSVdlYlNlbGVjdGlvbkFzc2lzdGFudCA6IE5TT2JqZWN0IDxV
SUdlc3R1cmVSZWNvZ25pemVyRGVsZWdhdGU+Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlXZWJTZWxl
Y3Rpb25Bc3Npc3RhbnQgKERldGFpbHMpCi0tIChCT09MKWlzU2VsZWN0aW9uR2VzdHVyZVJlY29n
bml6ZXI6KFVJR2VzdHVyZVJlY29nbml6ZXIgKilnZXN0dXJlUmVjb2duaXplcjsKLS0gKGlkKWlu
aXRXaXRoVmlldzooVUlWaWV3ICopdmlldzsKLS0gKHZvaWQpY2xlYXJTZWxlY3Rpb247Ci0tICh2
b2lkKWRpZEVuZFNjcm9sbGluZ09yWm9vbWluZ1BhZ2U7Ci0tICh2b2lkKWRpZEVuZFNjcm9sbGlu
Z092ZXJmbG93OwotLSAodm9pZClyZXNpZ25lZEZpcnN0UmVzcG9uZGVyOwotLSAodm9pZClzZWxl
Y3Rpb25DaGFuZ2VkOwotLSAodm9pZClzZXRHZXN0dXJlUmVjb2duaXplcnM7Ci0tICh2b2lkKXdp
bGxTdGFydFNjcm9sbGluZ09yWm9vbWluZ1BhZ2U7Ci0tICh2b2lkKXdpbGxTdGFydFNjcm9sbGlu
Z092ZXJmbG93OwotQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBDR1JlY3Qgc2VsZWN0
aW9uRnJhbWU7Ci1AZW5kCi0KLXR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIFVJV0tTZWxlY3Rp
b25Ub3VjaCkgewotICAgIFVJV0tTZWxlY3Rpb25Ub3VjaFN0YXJ0ZWQgPSAwLAotICAgIFVJV0tT
ZWxlY3Rpb25Ub3VjaE1vdmVkID0gMSwKLSAgICBVSVdLU2VsZWN0aW9uVG91Y2hFbmRlZCA9IDIs
Ci0gICAgVUlXS1NlbGVjdGlvblRvdWNoRW5kZWRNb3ZpbmdGb3J3YXJkID0gMywKLSAgICBVSVdL
U2VsZWN0aW9uVG91Y2hFbmRlZE1vdmluZ0JhY2t3YXJkID0gNCwKLSAgICBVSVdLU2VsZWN0aW9u
VG91Y2hFbmRlZE5vdE1vdmluZyA9IDUsCi19OwotCi10eXBlZGVmIE5TX0VOVU0oTlNJbnRlZ2Vy
LCBVSVdLU2VsZWN0aW9uRmxhZ3MpIHsKLSAgICBVSVdLTm9uZSA9IDAsCi0gICAgVUlXS1dvcmRJ
c05lYXJUYXAgPSAxLAotICAgIFVJV0tJc0Jsb2NrU2VsZWN0aW9uID0gMiwKLSAgICBVSVdLUGhy
YXNlQm91bmRhcnlDaGFuZ2VkID0gNCwKLX07Ci0KLXR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIs
IFVJV0tHZXN0dXJlVHlwZSkgewotICAgIFVJV0tHZXN0dXJlTG91cGUgPSAwLAotICAgIFVJV0tH
ZXN0dXJlT25lRmluZ2VyVGFwID0gMSwKLSAgICBVSVdLR2VzdHVyZVRhcEFuZEFIYWxmID0gMiwK
LSAgICBVSVdLR2VzdHVyZURvdWJsZVRhcCA9IDMsCi0gICAgVUlXS0dlc3R1cmVUYXBBbmRIYWxm
ID0gNCwKLSAgICBVSVdLR2VzdHVyZURvdWJsZVRhcEluVW5lZGl0YWJsZSA9IDUsCi0gICAgVUlX
S0dlc3R1cmVPbmVGaW5nZXJUYXBJblVuZWRpdGFibGUgPSA2LAotICAgIFVJV0tHZXN0dXJlT25l
RmluZ2VyVGFwU2VsZWN0c0FsbCA9IDcsCi0gICAgVUlXS0dlc3R1cmVPbmVGaW5nZXJEb3VibGVU
YXAgPSA4LAotICAgIFVJV0tHZXN0dXJlT25lRmluZ2VyVHJpcGxlVGFwID0gOSwKLSAgICBVSVdL
R2VzdHVyZVR3b0ZpbmdlclNpbmdsZVRhcCA9IDEwLAotICAgIFVJV0tHZXN0dXJlVHdvRmluZ2Vy
UmFuZ2VkU2VsZWN0R2VzdHVyZSA9IDExLAotICAgIFVJV0tHZXN0dXJlVGFwT25MaW5rV2l0aEdl
c3R1cmUgPSAxMiwKLSAgICBVSVdLR2VzdHVyZU1ha2VXZWJTZWxlY3Rpb24gPSAxMywKLSAgICBV
SVdLR2VzdHVyZVBocmFzZUJvdW5kYXJ5ID0gMTQsCi19OwotCi1AaW50ZXJmYWNlIFVJV0tTZWxl
Y3Rpb25Bc3Npc3RhbnQgOiBVSVdlYlNlbGVjdGlvbkFzc2lzdGFudAotQGVuZAotCi1AaW50ZXJm
YWNlIFVJV0tTZWxlY3Rpb25Bc3Npc3RhbnQgKERldGFpbHMpCi0tIChCT09MKXNob3VsZEhhbmRs
ZVNpbmdsZVRhcEF0UG9pbnQ6KENHUG9pbnQpcG9pbnQ7Ci0tICh2b2lkKWJsb2NrU2VsZWN0aW9u
Q2hhbmdlZFdpdGhUb3VjaDooVUlXS1NlbGVjdGlvblRvdWNoKXRvdWNoIHdpdGhGbGFnczooVUlX
S1NlbGVjdGlvbkZsYWdzKWZsYWdzIGdyb3dUaHJlc2hvbGQ6KENHRmxvYXQpZ3JvdyBzaHJpbmtU
aHJlc2hvbGQ6KENHRmxvYXQpc2hyaW5rOwotLSAodm9pZClzZWxlY3Rpb25DaGFuZ2VkV2l0aEdl
c3R1cmVBdDooQ0dQb2ludClwb2ludCB3aXRoR2VzdHVyZTooVUlXS0dlc3R1cmVUeXBlKWdlc3R1
cmVUeXBlIHdpdGhTdGF0ZTooVUlHZXN0dXJlUmVjb2duaXplclN0YXRlKWdlc3R1cmVTdGF0ZSB3
aXRoRmxhZ3M6KFVJV0tTZWxlY3Rpb25GbGFncylmbGFnczsKLS0gKHZvaWQpc2VsZWN0aW9uQ2hh
bmdlZFdpdGhUb3VjaEF0OihDR1BvaW50KXBvaW50IHdpdGhTZWxlY3Rpb25Ub3VjaDooVUlXS1Nl
bGVjdGlvblRvdWNoKXRvdWNoIHdpdGhGbGFnczooVUlXS1NlbGVjdGlvbkZsYWdzKWZsYWdzOwot
LSAodm9pZClzZWxlY3Rpb25DaGFuZ2VkV2l0aFRvdWNoQXQ6KENHUG9pbnQpcG9pbnQgd2l0aFNl
bGVjdGlvblRvdWNoOihVSVdLU2VsZWN0aW9uVG91Y2gpdG91Y2g7Ci0tICh2b2lkKXNob3dEaWN0
aW9uYXJ5Rm9yOihOU1N0cmluZyAqKXNlbGVjdGVkVGVybSBmcm9tUmVjdDooQ0dSZWN0KXByZXNl
bnRhdGlvblJlY3Q7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIFVJTG9uZ1ByZXNz
R2VzdHVyZVJlY29nbml6ZXIgKnNlbGVjdGlvbkxvbmdQcmVzc1JlY29nbml6ZXI7Ci1AZW5kCi0K
LXR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIFVJV0tIYW5kbGVQb3NpdGlvbikgewotICAgIFVJ
V0tIYW5kbGVUb3AgPSAwLAotICAgIFVJV0tIYW5kbGVSaWdodCA9IDEsCi0gICAgVUlXS0hhbmRs
ZUJvdHRvbSA9IDIsCi0gICAgVUlXS0hhbmRsZUxlZnQgPSAzLAotfTsKLQotQGludGVyZmFjZSBV
SVdLQXV0b2NvcnJlY3Rpb25SZWN0cyA6IE5TT2JqZWN0Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlX
S0F1dG9jb3JyZWN0aW9uUmVjdHMgKFVJV0tBdXRvY29ycmVjdGlvblJlY3RzRGV0YWlscykKLUBw
cm9wZXJ0eSAobm9uYXRvbWljLCBhc3NpZ24pIENHUmVjdCBmaXJzdFJlY3Q7Ci1AcHJvcGVydHkg
KG5vbmF0b21pYywgYXNzaWduKSBDR1JlY3QgbGFzdFJlY3Q7Ci1AZW5kCi0KLUBpbnRlcmZhY2Ug
VUlXS0F1dG9jb3JyZWN0aW9uQ29udGV4dCA6IE5TT2JqZWN0Ci1AZW5kCi0KLUBpbnRlcmZhY2Ug
VUlXS0F1dG9jb3JyZWN0aW9uQ29udGV4dCAoVUlXS0F1dG9jb3JyZWN0aW9uQ29udGV4dERldGFp
bHMpCi1AcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNTdHJpbmcgKmNvbnRleHRCZWZvcmVT
ZWxlY3Rpb247Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgY29weSkgTlNTdHJpbmcgKnNlbGVjdGVk
VGV4dDsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5KSBOU1N0cmluZyAqY29udGV4dEFmdGVy
U2VsZWN0aW9uOwotQHByb3BlcnR5IChub25hdG9taWMsIGNvcHkpIE5TU3RyaW5nICptYXJrZWRU
ZXh0OwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgTlNSYW5nZSByYW5nZUluTWFya2Vk
VGV4dDsKLUBlbmQKLQotQGludGVyZmFjZSBVSVdLVGV4dEludGVyYWN0aW9uQXNzaXN0YW50IDog
VUlUZXh0SW50ZXJhY3Rpb25Bc3Npc3RhbnQKLUBlbmQKLQotQGludGVyZmFjZSBVSVdLVGV4dElu
dGVyYWN0aW9uQXNzaXN0YW50IChVSVdLVGV4dEludGVyYWN0aW9uQXNzaXN0YW50RGV0YWlscykK
LS0gKHZvaWQpc2VsZWN0aW9uQ2hhbmdlZFdpdGhHZXN0dXJlQXQ6KENHUG9pbnQpcG9pbnQgd2l0
aEdlc3R1cmU6KFVJV0tHZXN0dXJlVHlwZSlnZXN0dXJlVHlwZSB3aXRoU3RhdGU6KFVJR2VzdHVy
ZVJlY29nbml6ZXJTdGF0ZSlnZXN0dXJlU3RhdGUgd2l0aEZsYWdzOihVSVdLU2VsZWN0aW9uRmxh
Z3MpZmxhZ3M7Ci0tICh2b2lkKXNob3dEaWN0aW9uYXJ5Rm9yOihOU1N0cmluZyAqKXNlbGVjdGVk
VGVybSBmcm9tUmVjdDooQ0dSZWN0KXByZXNlbnRhdGlvblJlY3Q7Ci0tICh2b2lkKXNlbGVjdGlv
bkNoYW5nZWRXaXRoVG91Y2hBdDooQ0dQb2ludClwb2ludCB3aXRoU2VsZWN0aW9uVG91Y2g6KFVJ
V0tTZWxlY3Rpb25Ub3VjaCl0b3VjaDsKLS0gKHZvaWQpc2hvd1RleHRTdHlsZU9wdGlvbnM7Ci0t
ICh2b2lkKWhpZGVUZXh0U3R5bGVPcHRpb25zOwotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVh
ZG9ubHksIHJldGFpbikgVUlUYXBHZXN0dXJlUmVjb2duaXplciAqc2luZ2xlVGFwR2VzdHVyZTsK
LUBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgcmV0YWluKSBVSUxvbmdQcmVzc0dlc3R1
cmVSZWNvZ25pemVyICpsb3VwZUdlc3R1cmU7Ci1AZW5kCi0KLUBwcm90b2NvbCBVSVdLSW50ZXJh
Y3Rpb25WaWV3UHJvdG9jb2wKLS0gKHZvaWQpY2hhbmdlU2VsZWN0aW9uV2l0aEdlc3R1cmVBdDoo
Q0dQb2ludClwb2ludCB3aXRoR2VzdHVyZTooVUlXS0dlc3R1cmVUeXBlKWdlc3R1cmVUeXBlIHdp
dGhTdGF0ZTooVUlHZXN0dXJlUmVjb2duaXplclN0YXRlKXN0YXRlOwotCi0tICh2b2lkKWNoYW5n
ZVNlbGVjdGlvbldpdGhUb3VjaEF0OihDR1BvaW50KXBvaW50IHdpdGhTZWxlY3Rpb25Ub3VjaDoo
VUlXS1NlbGVjdGlvblRvdWNoKXRvdWNoIGJhc2VJc1N0YXJ0OihCT09MKWJhc2VJc1N0YXJ0Owot
LSAodm9pZCljaGFuZ2VTZWxlY3Rpb25XaXRoVG91Y2hlc0Zyb206KENHUG9pbnQpZnJvbSB0bzoo
Q0dQb2ludCl0byB3aXRoR2VzdHVyZTooVUlXS0dlc3R1cmVUeXBlKWdlc3R1cmVUeXBlIHdpdGhT
dGF0ZTooVUlHZXN0dXJlUmVjb2duaXplclN0YXRlKWdlc3R1cmVTdGF0ZTsKLS0gKENHUmVjdCl0
ZXh0Rmlyc3RSZWN0OwotLSAoQ0dSZWN0KXRleHRMYXN0UmVjdDsKLQotLSAodm9pZClyZXF1ZXN0
QXV0b2NvcnJlY3Rpb25Db250ZXh0V2l0aENvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShVSVdL
QXV0b2NvcnJlY3Rpb25Db250ZXh0ICphdXRvY29ycmVjdGlvbkNvbnRleHQpKWNvbXBsZXRpb25I
YW5kbGVyOwotCi0tICh2b2lkKXJlcXVlc3RBdXRvY29ycmVjdGlvblJlY3RzRm9yU3RyaW5nOihO
U1N0cmluZyAqKWlucHV0IHdpdGhDb21wbGV0aW9uSGFuZGxlcjoodm9pZCAoXikoVUlXS0F1dG9j
b3JyZWN0aW9uUmVjdHMgKnJlY3RzRm9ySW5wdXQpKWNvbXBsZXRpb25IYW5kbGVyOwotCi0tICh2
b2lkKWFwcGx5QXV0b2NvcnJlY3Rpb246KE5TU3RyaW5nICopY29ycmVjdGlvbiB0b1N0cmluZzoo
TlNTdHJpbmcgKilpbnB1dCB3aXRoQ29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKFVJV0tBdXRv
Y29ycmVjdGlvblJlY3RzICpyZWN0c0ZvckNvcnJlY3Rpb24pKWNvbXBsZXRpb25IYW5kbGVyOwot
Ci0tIChOU1N0cmluZyAqKW1hcmtlZFRleHQ7Ci0tIChCT09MKWhhc01hcmtlZFRleHQ7Ci0KLS0g
KEJPT0wpaGFzU2VsZWN0YWJsZVBvc2l0aW9uQXRQb2ludDooQ0dQb2ludClwb2ludDsKLS0gKEJP
T0wpcG9pbnRJc0luQXNzaXN0ZWROb2RlOihDR1BvaW50KXBvaW50OwotLSAoTlNBcnJheSAqKXdl
YlNlbGVjdGlvblJlY3RzOwotLSAodm9pZClfY2FuY2VsTG9uZ1ByZXNzR2VzdHVyZVJlY29nbml6
ZXI7Ci0KLUBvcHRpb25hbAotLSAodm9pZCljaGFuZ2VTZWxlY3Rpb25XaXRoVG91Y2hBdDooQ0dQ
b2ludClwb2ludCB3aXRoU2VsZWN0aW9uVG91Y2g6KFVJV0tTZWxlY3Rpb25Ub3VjaCl0b3VjaCBi
YXNlSXNTdGFydDooQk9PTCliYXNlSXNTdGFydCB3aXRoRmxhZ3M6KFVJV0tTZWxlY3Rpb25GbGFn
cylmbGFnczsKLS0gKHZvaWQpY2hhbmdlQmxvY2tTZWxlY3Rpb25XaXRoVG91Y2hBdDooQ0dQb2lu
dClwb2ludCB3aXRoU2VsZWN0aW9uVG91Y2g6KFVJV0tTZWxlY3Rpb25Ub3VjaCl0b3VjaCBmb3JI
YW5kbGU6KFVJV0tIYW5kbGVQb3NpdGlvbiloYW5kbGU7Ci0tICh2b2lkKWNsZWFyU2VsZWN0aW9u
OwotLSAodm9pZClyZXBsYWNlRGljdGF0ZWRUZXh0OihOU1N0cmluZyAqKW9sZFRleHQgd2l0aFRl
eHQ6KE5TU3RyaW5nICopbmV3VGV4dDsKLS0gKHZvaWQpcmVxdWVzdERpY3RhdGlvbkNvbnRleHQ6
KHZvaWQgKF4pKE5TU3RyaW5nICpzZWxlY3RlZFRleHQsIE5TU3RyaW5nICpwcmVmaXhUZXh0LCBO
U1N0cmluZyAqcG9zdGZpeFRleHQpKWNvbXBsZXRpb25IYW5kbGVyOwotLSAoQk9PTClwb2ludElz
TmVhck1hcmtlZFRleHQ6KENHUG9pbnQpcG9pbnQ7Ci0tIChOU1N0cmluZyAqKXNlbGVjdGVkVGV4
dDsKLS0gKHZvaWQpcmVwbGFjZVRleHQ6KE5TU3RyaW5nICopdGV4dCB3aXRoVGV4dDooTlNTdHJp
bmcgKil3b3JkOwotLSAodm9pZClzZWxlY3RXb3JkRm9yUmVwbGFjZW1lbnQ7Ci0tIChCT09MKWlz
UmVwbGFjZUFsbG93ZWQ7Ci0tICh2b2lkKXNlbGVjdFdvcmRCYWNrd2FyZDsKLS0gKFVJVmlldyAq
KXVuc2NhbGVkVmlldzsKLS0gKENHRmxvYXQpaW52ZXJzZVNjYWxlOwotLSAoQ0dSZWN0KXVub2Jz
Y3VyZWRDb250ZW50UmVjdDsKLUBlbmQKLQotdHlwZWRlZiBlbnVtIHsKLSAgICBVSVdlYlNlbGVj
dGlvbk1vZGVXZWIgPSAwLAotICAgIFVJV2ViU2VsZWN0aW9uTW9kZVRleHRPbmx5ID0gMSwKLX0g
VUlXZWJTZWxlY3Rpb25Nb2RlOwotCi1AcHJvdG9jb2wgVUlXZWJGb3JtQWNjZXNzb3J5RGVsZWdh
dGU7Ci0KLUBpbnRlcmZhY2UgVUlXZWJGb3JtQWNjZXNzb3J5IDogVUlJbnB1dFZpZXcKLUBlbmQK
LQotQGludGVyZmFjZSBVSVdlYkZvcm1BY2Nlc3NvcnkgKERldGFpbHMpCi0tICh2b2lkKWhpZGVB
dXRvRmlsbEJ1dHRvbjsKLS0gKHZvaWQpc2V0Q2xlYXJWaXNpYmxlOihCT09MKWZsYWc7Ci0tICh2
b2lkKXNob3dBdXRvRmlsbEJ1dHRvbldpdGhUaXRsZTooTlNTdHJpbmcgKil0aXRsZTsKLUBwcm9w
ZXJ0eSAobm9uYXRvbWljLCByZXRhaW4pIFVJQmFyQnV0dG9uSXRlbSAqX2F1dG9maWxsOwotQHBy
b3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgaWQgPFVJV2ViRm9ybUFjY2Vzc29yeURlbGVnYXRl
PiBkZWxlZ2F0ZTsKLQotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbiwgZ2V0dGVyPWlzTmV4
dEVuYWJsZWQpIEJPT0wgbmV4dEVuYWJsZWQ7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgYXNzaWdu
LCBnZXR0ZXI9aXNQcmV2aW91c0VuYWJsZWQpIEJPT0wgcHJldmlvdXNFbmFibGVkOwotQGVuZAot
Ci1AcHJvdG9jb2wgVUlXZWJGb3JtQWNjZXNzb3J5RGVsZWdhdGUKLS0gKHZvaWQpYWNjZXNzb3J5
QXV0b0ZpbGw7Ci0tICh2b2lkKWFjY2Vzc29yeUNsZWFyOwotLSAodm9pZClhY2Nlc3NvcnlEb25l
OwotLSAodm9pZClhY2Nlc3NvcnlUYWI6KEJPT0wpaXNOZXh0OwotQGVuZAotCi1AaW50ZXJmYWNl
IFVJV2ViR2VvbG9jYXRpb25Qb2xpY3lEZWNpZGVyIDogTlNPYmplY3QKLUBlbmQKLQotQGludGVy
ZmFjZSBVSVdlYkdlb2xvY2F0aW9uUG9saWN5RGVjaWRlciAoRGV0YWlscykKLSsgKGluc3RhbmNl
dHlwZSlzaGFyZWRQb2xpY3lEZWNpZGVyOwotLSAodm9pZClkZWNpZGVQb2xpY3lGb3JHZW9sb2Nh
dGlvblJlcXVlc3RGcm9tT3JpZ2luOihpZClzZWN1cml0eU9yaWdpbiByZXF1ZXN0aW5nVVJMOihO
U1VSTCAqKXJlcXVlc3RpbmdVUkwgd2luZG93OihVSVdpbmRvdyAqKXdpbmRvdyBsaXN0ZW5lcjoo
aWQpbGlzdGVuZXI7Ci1AZW5kCi0KLXR5cGVkZWYgZW51bSB7Ci0gICAgVUlXZWJUb3VjaEV2ZW50
VG91Y2hCZWdpbiA9IDAsCi0gICAgVUlXZWJUb3VjaEV2ZW50VG91Y2hDaGFuZ2UgPSAxLAotICAg
IFVJV2ViVG91Y2hFdmVudFRvdWNoRW5kID0gMiwKLSAgICBVSVdlYlRvdWNoRXZlbnRUb3VjaENh
bmNlbCA9IDMsCi19IFVJV2ViVG91Y2hFdmVudFR5cGU7Ci0KLXN0cnVjdCBfVUlXZWJUb3VjaFBv
aW50IHsKLSAgICBDR1BvaW50IGxvY2F0aW9uSW5TY3JlZW5Db29yZGluYXRlczsKLSAgICBDR1Bv
aW50IGxvY2F0aW9uSW5Eb2N1bWVudENvb3JkaW5hdGVzOwotICAgIHVuc2lnbmVkIGlkZW50aWZp
ZXI7Ci0gICAgVUlUb3VjaFBoYXNlIHBoYXNlOwotICAgIENHRmxvYXQgbWFqb3JSYWRpdXNJblNj
cmVlbkNvb3JkaW5hdGVzOwotfTsKLQotc3RydWN0IF9VSVdlYlRvdWNoRXZlbnQgewotICAgIFVJ
V2ViVG91Y2hFdmVudFR5cGUgdHlwZTsKLSAgICBOU1RpbWVJbnRlcnZhbCB0aW1lc3RhbXA7Ci0g
ICAgQ0dQb2ludCBsb2NhdGlvbkluU2NyZWVuQ29vcmRpbmF0ZXM7Ci0gICAgQ0dQb2ludCBsb2Nh
dGlvbkluRG9jdW1lbnRDb29yZGluYXRlczsKLSAgICBDR0Zsb2F0IHNjYWxlOwotICAgIENHRmxv
YXQgcm90YXRpb247Ci0KLSAgICBib29sIGluSmF2YVNjcmlwdEdlc3R1cmU7Ci0KLSAgICBzdHJ1
Y3QgX1VJV2ViVG91Y2hQb2ludCogdG91Y2hQb2ludHM7Ci0gICAgdW5zaWduZWQgdG91Y2hQb2lu
dENvdW50OwotfTsKLQotQHByb3RvY29sIFVJV2ViVG91Y2hFdmVudHNHZXN0dXJlUmVjb2duaXpl
ckRlbGVnYXRlCi0tIChCT09MKWlzQW55VG91Y2hPdmVyQWN0aXZlQXJlYTooTlNTZXQgKil0b3Vj
aGVzOwotLSAoQk9PTClzaG91bGRJZ25vcmVXZWJUb3VjaDsKLUBlbmQKLQotQGludGVyZmFjZSBV
SVdlYlRvdWNoRXZlbnRzR2VzdHVyZVJlY29nbml6ZXIgOiBVSUdlc3R1cmVSZWNvZ25pemVyCi1A
ZW5kCi0KLUBpbnRlcmZhY2UgVUlXZWJUb3VjaEV2ZW50c0dlc3R1cmVSZWNvZ25pemVyIChEZXRh
aWxzKQotLSAoaWQpaW5pdFdpdGhUYXJnZXQ6KGlkKXRhcmdldCBhY3Rpb246KFNFTClhY3Rpb24g
dG91Y2hEZWxlZ2F0ZTooaWQgPFVJV2ViVG91Y2hFdmVudHNHZXN0dXJlUmVjb2duaXplckRlbGVn
YXRlPilkZWxlZ2F0ZTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBnZXR0ZXI9aXNEZWZhdWx0UHJl
dmVudGVkKSBCT09MIGRlZmF1bHRQcmV2ZW50ZWQ7Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmVh
ZG9ubHkpIEJPT0wgaW5KYXZhU2NyaXB0R2VzdHVyZTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBy
ZWFkb25seSkgQ0dQb2ludCBsb2NhdGlvbkluV2luZG93OwotQHByb3BlcnR5IChub25hdG9taWMs
IHJlYWRvbmx5KSBVSVdlYlRvdWNoRXZlbnRUeXBlIHR5cGU7Ci1AcHJvcGVydHkgKG5vbmF0b21p
YywgcmVhZG9ubHkpIGNvbnN0IHN0cnVjdCBfVUlXZWJUb3VjaEV2ZW50ICpsYXN0VG91Y2hFdmVu
dDsKLUBlbmQKLQotdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgX1VJQmFja2Ryb3BWaWV3U3R5
bGVQcml2YXRlKSB7Ci0gICAgX1VJQmFja2Ryb3BWaWV3U3R5bGVfTGlnaHQgPSAyMDIwLAotfTsK
LQotQGludGVyZmFjZSBfVUlCYWNrZHJvcFZpZXcgOiBVSVZpZXcKLUBlbmQKLQotQGludGVyZmFj
ZSBfVUlCYWNrZHJvcFZpZXcgKF9VSUJhY2tkcm9wVmlld0RldGFpbHMpCi0tIChpbnN0YW5jZXR5
cGUpaW5pdFdpdGhQcml2YXRlU3R5bGU6KF9VSUJhY2tkcm9wVmlld1N0eWxlUHJpdmF0ZSlzdHls
ZTsKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcsIHJlYWRvbmx5KSBVSVZpZXcgKmNvbnRl
bnRWaWV3OwotQGVuZAotCi1AaW50ZXJmYWNlIF9VSUhpZ2hsaWdodFZpZXcgOiBVSVZpZXcKLUBl
bmQKLQotQGludGVyZmFjZSBfVUlIaWdobGlnaHRWaWV3IChEZXRhaWxzKQotLSAodm9pZClzZXRD
b2xvcjooVUlDb2xvciAqKWFDb2xvcjsKLS0gKHZvaWQpc2V0Q29ybmVyUmFkaWk6KE5TQXJyYXkg
Kiljb3JuZXJSYWRpaTsKLS0gKHZvaWQpc2V0Q29ybmVyUmFkaXVzOihDR0Zsb2F0KWFDb3JuZXJS
YWRpdXM7Ci0tICh2b2lkKXNldEZyYW1lczooTlNBcnJheSAqKWZyYW1lcyBib3VuZGFyeVJlY3Q6
KENHUmVjdClhQm91bmRhclJlY3Q7Ci0tICh2b2lkKXNldFF1YWRzOihOU0FycmF5ICopcXVhZHMg
Ym91bmRhcnlSZWN0OihDR1JlY3QpYUJvdW5kYXJ5UmVjdDsKLUBlbmQKLQotQGludGVyZmFjZSBf
VUlOYXZpZ2F0aW9uUGFyYWxsYXhUcmFuc2l0aW9uIDogTlNPYmplY3QgPFVJVmlld0NvbnRyb2xs
ZXJBbmltYXRlZFRyYW5zaXRpb25pbmdFeD4KLUBlbmQKLQotQGludGVyZmFjZSBfVUlOYXZpZ2F0
aW9uUGFyYWxsYXhUcmFuc2l0aW9uIChEZXRhaWxzKQotLSAoaW5zdGFuY2V0eXBlKSBpbml0V2l0
aEN1cnJlbnRPcGVyYXRpb246KFVJTmF2aWdhdGlvbkNvbnRyb2xsZXJPcGVyYXRpb24pb3BlcmF0
aW9uOwotQGVuZAotCi1AcHJvdG9jb2wgX1VJTmF2aWdhdGlvbkludGVyYWN0aXZlVHJhbnNpdGlv
bkJhc2VEZWxlZ2F0ZTsKLQotQGludGVyZmFjZSBfVUlOYXZpZ2F0aW9uSW50ZXJhY3RpdmVUcmFu
c2l0aW9uQmFzZSA6IFVJUGVyY2VudERyaXZlbkludGVyYWN0aXZlVHJhbnNpdGlvbiA8VUlHZXN0
dXJlUmVjb2duaXplckRlbGVnYXRlPgotQGVuZAotCi1AaW50ZXJmYWNlIF9VSU5hdmlnYXRpb25J
bnRlcmFjdGl2ZVRyYW5zaXRpb25CYXNlIChEZXRhaWxzKQotLSAoaWQpaW5pdFdpdGhHZXN0dXJl
UmVjb2duaXplclZpZXc6KFVJVmlldyAqKWdlc3R1cmVSZWNvZ25pemVyVmlldyBhbmltYXRvcjoo
aWQ8VUlWaWV3Q29udHJvbGxlckFuaW1hdGVkVHJhbnNpdGlvbmluZz4pYW5pbWF0b3IgZGVsZWdh
dGU6KGlkPF9VSU5hdmlnYXRpb25JbnRlcmFjdGl2ZVRyYW5zaXRpb25CYXNlRGVsZWdhdGU+KWRl
bGVnYXRlOwotQHByb3BlcnR5IChub25hdG9taWMsIGFzc2lnbikgQk9PTCBzaG91bGRSZXZlcnNl
VHJhbnNsYXRpb247Ci1AcHJvcGVydHkgKG5vbmF0b21pYywgcmV0YWluKSBfVUlOYXZpZ2F0aW9u
UGFyYWxsYXhUcmFuc2l0aW9uICphbmltYXRpb25Db250cm9sbGVyOwotQGVuZAotCi1AcHJvdG9j
b2wgX1VJTmF2aWdhdGlvbkludGVyYWN0aXZlVHJhbnNpdGlvbkJhc2VEZWxlZ2F0ZSA8TlNPYmpl
Y3Q+Ci0tICh2b2lkKXN0YXJ0SW50ZXJhY3RpdmVUcmFuc2l0aW9uOihfVUlOYXZpZ2F0aW9uSW50
ZXJhY3RpdmVUcmFuc2l0aW9uQmFzZSAqKWludGVyYWN0aXZlVHJhbnNpdGlvbjsKLS0gKEJPT0wp
c2hvdWxkQmVnaW5JbnRlcmFjdGl2ZVRyYW5zaXRpb246KF9VSU5hdmlnYXRpb25JbnRlcmFjdGl2
ZVRyYW5zaXRpb25CYXNlICopaW50ZXJhY3RpdmVUcmFuc2l0aW9uOwotLSAoQk9PTClpbnRlcmFj
dGl2ZVRyYW5zaXRpb246KF9VSU5hdmlnYXRpb25JbnRlcmFjdGl2ZVRyYW5zaXRpb25CYXNlICop
aW50ZXJhY3RpdmVUcmFuc2l0aW9uIGdlc3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNvZ25p
emVyICopZ2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkUmVjb2duaXplU2ltdWx0YW5lb3VzbHlXaXRo
R2VzdHVyZVJlY29nbml6ZXI6KFVJR2VzdHVyZVJlY29nbml6ZXIgKilvdGhlckdlc3R1cmVSZWNv
Z25pemVyOwotLSAoQk9PTClpbnRlcmFjdGl2ZVRyYW5zaXRpb246KF9VSU5hdmlnYXRpb25JbnRl
cmFjdGl2ZVRyYW5zaXRpb25CYXNlICopaW50ZXJhY3RpdmVUcmFuc2l0aW9uIGdlc3R1cmVSZWNv
Z25pemVyOihVSUdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkUmVj
ZWl2ZVRvdWNoOihVSVRvdWNoICopdG91Y2g7Ci0tIChVSVBhbkdlc3R1cmVSZWNvZ25pemVyICop
Z2VzdHVyZVJlY29nbml6ZXJGb3JJbnRlcmFjdGl2ZVRyYW5zaXRpb246KF9VSU5hdmlnYXRpb25J
bnRlcmFjdGl2ZVRyYW5zaXRpb25CYXNlICopaW50ZXJhY3RpdmVUcmFuc2l0aW9uIFdpdGhUYXJn
ZXQ6KGlkKXRhcmdldCBhY3Rpb246KFNFTClhY3Rpb247Ci1AZW5kCi0KLUBpbnRlcmZhY2UgVUlX
aW5kb3cgKERldGFpbHMpCi0rIChtYWNoX3BvcnRfdClfc3luY2hyb25pemVEcmF3aW5nQWNyb3Nz
UHJvY2Vzc2VzOwotQGVuZAotCi1AaW50ZXJmYWNlIFVJV2ViU2Nyb2xsVmlldyA6IFVJU2Nyb2xs
VmlldwotQGVuZAotCi1AaW50ZXJmYWNlIFVJV2ViVGlsZWRWaWV3IDogVUlWaWV3Ci1AZW5kCi0K
LUBpbnRlcmZhY2UgVUlXZWJEb2N1bWVudFZpZXcgOiBVSVdlYlRpbGVkVmlldwotQGVuZAotCi1A
aW50ZXJmYWNlIFVJV2ViQnJvd3NlclZpZXcgOiBVSVdlYkRvY3VtZW50VmlldwotQGVuZAotCi1A
aW50ZXJmYWNlIFVJV2ViQnJvd3NlclZpZXcgKERldGFpbHMpCi0tIChXZWJWaWV3ICopd2ViVmll
dzsKLS0gKHZvaWQpc2VuZFNjcm9sbEV2ZW50SWZOZWNlc3NhcnlXYXNVc2VyU2Nyb2xsOihCT09M
KXVzZXJTY3JvbGw7Ci1AZW5kCi0KLSNlbmRpZiAvLyBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQot
Ci1AaW50ZXJmYWNlIFVJVmlldyAoSVBJKQotLSAoVUlTY3JvbGxWaWV3ICopX3Njcm9sbGVyOwot
LSAoQ0dQb2ludClhY2Nlc3NpYmlsaXR5Q29udmVydFBvaW50RnJvbVNjZW5lUmVmZXJlbmNlQ29v
cmRpbmF0ZXM6KENHUG9pbnQpcG9pbnQ7Ci0tIChDR1JlY3QpYWNjZXNzaWJpbGl0eUNvbnZlcnRS
ZWN0VG9TY2VuZVJlZmVyZW5jZUNvb3JkaW5hdGVzOihDR1JlY3QpcmVjdDsKLUBlbmQKLQotV1RG
X0VYVEVSTl9DX0JFR0lOCi0KLUJPT0wgVUlLZXlib2FyZEVuYWJsZWRJbnB1dE1vZGVzQWxsb3dP
bmVUb01hbnlTaG9ydGN1dHMoKTsKLUJPT0wgVUlLZXlib2FyZEVuYWJsZWRJbnB1dE1vZGVzQWxs
b3dDaGluZXNlVHJhbnNsaXRlcmF0aW9uRm9yVGV4dChOU1N0cmluZyAqKTsKLUJPT0wgVUlLZXli
b2FyZEN1cnJlbnRJbnB1dE1vZGVBbGxvd3NDaGluZXNlT3JKYXBhbmVzZVJlYW5hbHlzaXNGb3JU
ZXh0KE5TU3RyaW5nICopOwotCi1leHRlcm4gY29uc3QgZmxvYXQgVUlUYWJsZUNlbGxEZWZhdWx0
Rm9udFNpemU7Ci1leHRlcm4gY29uc3QgZmxvYXQgVUlUYWJsZVZpZXdDZWxsRGVmYXVsdEZvbnRT
aXplOwotCi1leHRlcm4gTlNTdHJpbmcgKiBjb25zdCBVSVdpbmRvd0RpZE1vdmVUb1NjcmVlbk5v
dGlmaWNhdGlvbjsKLWV4dGVybiBOU1N0cmluZyAqIGNvbnN0IFVJV2luZG93RGlkUm90YXRlTm90
aWZpY2F0aW9uOwotZXh0ZXJuIE5TU3RyaW5nICogY29uc3QgVUlXaW5kb3dOZXdTY3JlZW5Vc2Vy
SW5mb0tleTsKLWV4dGVybiBOU1N0cmluZyAqIGNvbnN0IFVJV2luZG93V2lsbFJvdGF0ZU5vdGlm
aWNhdGlvbjsKLQotZXh0ZXJuIFVJQXBwbGljYXRpb24gKlVJQXBwOwotCi1CT09MIF9VSUFwcGxp
Y2F0aW9uVXNlc0xlZ2FjeVVJKHZvaWQpOwotCi12b2lkIFVJSW1hZ2VEYXRhV3JpdGVUb1NhdmVk
UGhvdG9zQWxidW0oTlNEYXRhICppbWFnZURhdGEsIGlkIGNvbXBsZXRpb25UYXJnZXQsIFNFTCBj
b21wbGV0aW9uU2VsZWN0b3IsIHZvaWQgKmNvbnRleHRJbmZvKTsKLQotV1RGX0VYVEVSTl9DX0VO
RApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0Rvd25sb2Fkcy9pb3MvRG93bmxv
YWRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvRG93bmxvYWRzL2lvcy9Eb3dubG9hZElP
Uy5tbQppbmRleCBlNmMzOGI4N2I2NTEyZmNlNTQzMGFkNDkzNTliYzJjMDcyNWU1N2UxLi42MTQz
OGU2MGI0MTAxNjc3YTkxY2Q0MzczYzMzYThiNjIyMzQwYjkyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvRG93bmxvYWRzL2lvcy9Eb3dubG9hZElPUy5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvRG93bmxvYWRzL2lvcy9Eb3dubG9hZElPUy5tbQpAQCAtMjksNiArMjks
NyBAQAogI2lmIFBMQVRGT1JNKElPUykKIAogI2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgorI2lt
cG9ydCA8Q0ZOZXR3b3JrL0NGVVJMRG93bmxvYWQuaD4KICNpbXBvcnQgPFdlYkNvcmUvTm90SW1w
bGVtZW50ZWQuaD4KICNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VFcnJvci5oPgogI2ltcG9ydCA8
V2ViQ29yZS9SZXNvdXJjZUhhbmRsZS5oPgpAQCAtMzYsMTUgKzM3LDEwIEBACiAjaW1wb3J0IDx3
dGYvUmV0YWluUHRyLmg+CiAjaW1wb3J0IDx3dGYvUnVuTG9vcC5oPgogCi0jaWYgVVNFKENGTkVU
V09SSykKLSNpbXBvcnQgPENGTmV0d29yay9DRlVSTERvd25sb2FkLmg+Ci0jZW5kaWYKLQogdXNp
bmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi0jaWYgVVNFKENG
TkVUV09SSykKIC8vIEZJWE1FOiBJZiBwb3NzaWJsZSwgd2Ugc2hvdWxkIGNvbnNpZGVyIG1vdmlu
ZyBzb21lIGNhbGxiYWNrcyBvZmYgdGhlIG1haW4gdGhyZWFkIG9yIGF0IGxlYXN0CiAvLyBtYWtp
bmcgdGhlbSBhc3luY2hvbm91cyBjYWxscy4KIHN0YXRpYyB2b2lkIGRpc3BhdGNoT25NYWluVGhy
ZWFkKHZvaWQoXmJsb2NrKSgpKQpAQCAtMTI1LDcgKzEyMSw2IEBAIHN0YXRpYyB2b2lkIHNldFVw
RG93bmxvYWRDbGllbnQoQ0ZVUkxEb3dubG9hZENsaWVudCYgY2xpZW50LCBEb3dubG9hZCYgZG93
bmxvYWQpCiAgICAgICAgIH0pOwogICAgIH07CiB9Ci0jZW5kaWYgLy8gVVNFKENGTkVUV09SSykK
IAogdm9pZCBEb3dubG9hZDo6c3RhcnQoKQogewpAQCAtMTM5LDEzICsxMzQsOSBAQCB2b2lkIERv
d25sb2FkOjpyZXN1bWUoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiwgY29uc3QgU3RyaW5nJiwg
Y29uc3QgU2FuZGJveEV4dAogCiB2b2lkIERvd25sb2FkOjpzdGFydFdpdGhIYW5kbGUoUmVzb3Vy
Y2VIYW5kbGUqIGhhbmRsZSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Ci0j
aWYgVVNFKENGTkVUV09SSykKICAgICBDRlVSTERvd25sb2FkQ2xpZW50IGNsaWVudDsKICAgICBz
ZXRVcERvd25sb2FkQ2xpZW50KGNsaWVudCwgKnRoaXMpOwogICAgIG1fZG93bmxvYWQgPSBhZG9w
dENGKENGVVJMRG93bmxvYWRDcmVhdGVBbmRTdGFydFdpdGhMb2FkaW5nQ29ubmVjdGlvbihOVUxM
LCBoYW5kbGUtPnJlbGVhc2VDb25uZWN0aW9uRm9yRG93bmxvYWQoKS5nZXQoKSwgbV9yZXF1ZXN0
LmNmVVJMUmVxdWVzdChVcGRhdGVIVFRQQm9keSksIHJlc3BvbnNlLmNmVVJMUmVzcG9uc2UoKSwg
JmNsaWVudCkpOwotI2Vsc2UKLSAgICBub3RJbXBsZW1lbnRlZCgpOwotI2VuZGlmCiB9CiAKIHZv
aWQgRG93bmxvYWQ6OmNhbmNlbCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
RW50cnlQb2ludFV0aWxpdGllcy9tYWMvTGVnYWN5UHJvY2Vzcy9DaGlsZFByb2Nlc3NFbnRyeVBv
aW50Lm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvbWFjL0xl
Z2FjeVByb2Nlc3MvQ2hpbGRQcm9jZXNzRW50cnlQb2ludC5tbQppbmRleCBiMDljZTU5YmI3YzU4
MDBkM2JlZDU2YzliNTY4ZTI3NTdkNjc2Y2FlLi5kOTVjZWZkY2E2ZTNkYWI3MWExYWRlNmRmYTg5
Yzg0MDk1NDE1YzEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvRW50cnlQb2lu
dFV0aWxpdGllcy9tYWMvTGVnYWN5UHJvY2Vzcy9DaGlsZFByb2Nlc3NFbnRyeVBvaW50Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL21hYy9MZWdhY3lQ
cm9jZXNzL0NoaWxkUHJvY2Vzc0VudHJ5UG9pbnQubW0KQEAgLTI2LDggKzI2LDggQEAKICNpbXBv
cnQgImNvbmZpZy5oIgogI2ltcG9ydCAiQ2hpbGRQcm9jZXNzRW50cnlQb2ludC5oIgogCi0jaW1w
b3J0IDxXZWJDb3JlL1NlcnZlcnNTUEkuaD4KICNpbXBvcnQgPG1hY2gvbWFjaF9lcnJvci5oPgor
I2ltcG9ydCA8c2VydmVycy9ib290c3RyYXAuaD4KICNpbXBvcnQgPHN0ZGlvLmg+CiAjaW1wb3J0
IDx3dGYvUmV0YWluUHRyLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9DU3RyaW5nLmg+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL05hdGl2ZVdlYlRvdWNoRXZlbnRJT1MubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL05hdGl2ZVdlYlRvdWNoRXZlbnRJT1MubW0KaW5k
ZXggOGM1ZTRlMWIxMThmYWI1MGVlYTJiMzMxOTljMWY1N2QxZGE0YmQxNS4uZGFiMmQwMzcwYjll
ZWIwNDRiYTZmZTNhODA2ZDc2YzBlNTg5MTg4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL2lvcy9OYXRpdmVXZWJUb3VjaEV2ZW50SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9pb3MvTmF0aXZlV2ViVG91Y2hFdmVudElPUy5tbQpAQCAtMjYsMTEgKzI2LDExIEBA
CiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIk5hdGl2ZVdlYlRvdWNoRXZlbnQuaCIKIAot
I2lmIFBMQVRGT1JNKElPUykgJiYgRU5BQkxFKFRPVUNIX0VWRU5UUykKKyNpZiBQTEFURk9STShJ
T1MpCiAKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJXZWJFdmVudC5oIgogI2ltcG9y
dCA8VUlLaXQvVUlUb3VjaC5oPgorI2ltcG9ydCA8VUlLaXQvVUlXZWJUb3VjaEV2ZW50c0dlc3R1
cmVSZWNvZ25pemVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ludFBvaW50Lmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1dBS0FwcEtpdFN0dWJzLmg+CiAjaW1wb3J0IDx3dGYvQ3VycmVudFRpbWUuaD4KQEAg
LTk4LDQgKzk4LDQgQEAgTmF0aXZlV2ViVG91Y2hFdmVudDo6TmF0aXZlV2ViVG91Y2hFdmVudChj
b25zdCBfVUlXZWJUb3VjaEV2ZW50KiBldmVudCkKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAK
LSNlbmRpZiAvLyBQTEFURk9STShJT1MpICYmIEVOQUJMRShUT1VDSF9FVkVOVFMpCisjZW5kaWYg
Ly8gUExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9T
YW5kYm94VXRpbGl0aWVzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvU2FuZGJveFV0
aWxpdGllcy5jcHAKaW5kZXggMzE1YjgxZWQ5MzYzZGJjOWZhOGJhYjdjODc1YTI4MWU2NjIyNTg2
Yy4uZTcxNGE4NjdjNmQ5MzdlMTExMThkYWVkMDg3YmNhYTc0MjM0MDQ0MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9TYW5kYm94VXRpbGl0aWVzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1NhbmRib3hVdGlsaXRpZXMuY3BwCkBAIC0yNyw3ICsyNyw2
IEBACiAjaW5jbHVkZSAiU2FuZGJveFV0aWxpdGllcy5oIgogCiAjaW5jbHVkZSA8YXJyYXk+Ci0j
aW5jbHVkZSA8c3lzL3BhcmFtLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAK
ICNpZiBfX2hhc19pbmNsdWRlKDxzYW5kYm94L3ByaXZhdGUuaD4pCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IDY4NTlmNzc2OWM3NGNk
YWU0NTUzMTQ2NjQwMTA2NTgzM2NiNWM3N2IuLjJiMTgyMDZjNjEzMzQ4ZjZkODhkMjJjMzBkY2Q0
YmFhZDdjMjY1MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29j
b2EvV0tXZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3Lm1tCkBAIC04NiwxMyArODYsMTUgQEAKICNpbXBvcnQgIlByb2Nlc3NUaHJvdHRs
ZXIuaCIKICNpbXBvcnQgIlJlbW90ZUxheWVyVHJlZURyYXdpbmdBcmVhUHJveHkuaCIKICNpbXBv
cnQgIlJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkuaCIKLSNpbXBvcnQgIlVJS2l0U1BJ
LmgiCiAjaW1wb3J0ICJXS1BERlZpZXcuaCIKICNpbXBvcnQgIldLU2Nyb2xsVmlldy5oIgogI2lt
cG9ydCAiV0tXZWJWaWV3Q29udGVudFByb3ZpZGVyUmVnaXN0cnkuaCIKICNpbXBvcnQgIldlYlBh
Z2VNZXNzYWdlcy5oIgogI2ltcG9ydCAiV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lmgi
CiAjaW1wb3J0IDxVSUtpdC9VSUFwcGxpY2F0aW9uLmg+CisjaW1wb3J0IDxVSUtpdC9VSURldmlj
ZV9Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSVBlcmlwaGVyYWxIb3N0X1ByaXZhdGUuaD4K
KyNpbXBvcnQgPFVJS2l0L1VJV2luZG93X1ByaXZhdGUuaD4KICNpbXBvcnQgPFdlYkNvcmUvQ29y
ZUdyYXBoaWNzU1BJLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0luc3BlY3Rvck92ZXJsYXkuaD4KICNp
bXBvcnQgPFdlYkNvcmUvUXVhcnR6Q29yZVNQSS5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tCmlu
ZGV4IDUyNTUwMzcxNzkxNjAxZWEzYTY2OGEyMjRhNDM2MjQwMjdmNWY4MDkuLjYyMzNkYTlhNDJi
ZjQ0M2E0OGUwYzY5YmY5Y2U2N2UzM2UzOTc0M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0K
QEAgLTM4LDcgKzM4LDcgQEAKICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogI2lmIFBMQVRG
T1JNKElPUykKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCisjaW1wb3J0IDxVSUtpdC9VSURldmljZV9Q
cml2YXRlLmg+CiAjZW5kaWYKIAogdGVtcGxhdGU8dHlwZW5hbWUgVD4gY2xhc3MgTGF6eUluaXRp
YWxpemVkIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3SW50ZXJuYWwuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3SW50ZXJuYWwuaAppbmRleCA4ZDQwNWNiYWNiYjllN2U3NjQ1NmI0YmZkOTkyNGFm
Y2E2MjM5MjY3Li44YjJkZjNkOTMzZGEzY2YxMzU0MjdiYjhjOWMyMmJmZDFmNzYzZDg1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0ludGVy
bmFsLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdJ
bnRlcm5hbC5oCkBAIC0zMiwxMCArMzIsMTAgQEAKICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
IAogI2lmIFBMQVRGT1JNKElPUykKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJXS0Nv
bnRlbnRWaWV3LmgiCiAjaW1wb3J0ICJXS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaCIKICNpbXBv
cnQgPFdlYkNvcmUvRmxvYXRSZWN0Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVNjcm9sbFZpZXdfUHJp
dmF0ZS5oPgogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2lvcy9XS1ZpZXdJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2lvcy9XS1ZpZXdJT1MubW0KaW5kZXggYWUzOTg4NTQ2OTVjNmVmMTI4Njhl
Mzg0Njk2NjA5M2I1M2ZlZjViMC4uOWQxMGM0MTM5N2EzMDVjZGQ3NzljN2M3ZGJjZWQ1MmZhZjhl
YzExZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9pb3MvV0tWaWV3
SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvaW9zL1dLVmlld0lPUy5t
bQpAQCAtMjksNyArMjksNiBAQAogI2lmIFBMQVRGT1JNKElPUykKIAogI2ltcG9ydCAiUmVtb3Rl
TGF5ZXJUcmVlVHJhbnNhY3Rpb24uaCIKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJW
aWV3R2VzdHVyZUNvbnRyb2xsZXIuaCIKICNpbXBvcnQgIldLQVBJQ2FzdC5oIgogI2ltcG9ydCAi
V0tCcm93c2luZ0NvbnRleHRHcm91cFByaXZhdGUuaCIKQEAgLTM4LDcgKzM3LDExIEBACiAjaW1w
b3J0ICJXS1Njcm9sbFZpZXcuaCIKICNpbXBvcnQgIldlYlBhZ2VQcm94eS5oIgogI2ltcG9ydCAi
V2ViUHJvY2Vzc1Bvb2wuaCIKKyNpbXBvcnQgPFVJS2l0L1VJSW1hZ2VfUHJpdmF0ZS5oPgorI2lt
cG9ydCA8VUlLaXQvVUlQZXJpcGhlcmFsSG9zdF9Qcml2YXRlLmg+CiAjaW1wb3J0IDxVSUtpdC9V
SVNjcmVlbi5oPgorI2ltcG9ydCA8VUlLaXQvVUlTY3JvbGxWaWV3X1ByaXZhdGUuaD4KKyNpbXBv
cnQgPFVJS2l0L1VJV2luZG93X1ByaXZhdGUuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
IAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9MYXVuY2hlci9tYWMvUHJvY2Vzc0xhdW5jaGVyTWFjLm1tIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0KaW5kZXggNGIy
ZmRjMWY2MTQ1ZmU2ZDM3NzM2MzIxMWUyOTAxM2VhYWFmNmIwNC4uYTc2NThmOWYxYjUwZmFhNjhh
ZjI4ZWJhNjg4ODAyZjAwYTRkMzQ4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0xhdW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0KKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0KQEAgLTI4LDEy
ICsyOCwxMiBAQAogCiAjaW1wb3J0ICJEeW5hbWljTGlua2VyRW52aXJvbm1lbnRFeHRyYWN0b3Iu
aCIKICNpbXBvcnQgIkVudmlyb25tZW50VmFyaWFibGVzLmgiCi0jaW1wb3J0IDxXZWJDb3JlL1Nl
cnZlcnNTUEkuaD4KICNpbXBvcnQgPFdlYkNvcmUvU29mdExpbmtpbmcuaD4KICNpbXBvcnQgPFdl
YkNvcmUvV2ViQ29yZU5TU3RyaW5nRXh0cmFzLmg+CiAjaW1wb3J0IDxjcnRfZXh0ZXJucy5oPgog
I2ltcG9ydCA8bWFjaC1vL2R5bGQuaD4KICNpbXBvcnQgPG1hY2gvbWFjaGluZS5oPgorI2ltcG9y
dCA8c2VydmVycy9ib290c3RyYXAuaD4KICNpbXBvcnQgPHNwYXduLmg+CiAjaW1wb3J0IDxzeXMv
cGFyYW0uaD4KICNpbXBvcnQgPHN5cy9zdGF0Lmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQppbmRleCAwNTBkMTRiYWMzY2M4ZjRjMDQw
OWJiNzU1NzNhZTljYTMzNWU4OWQ2Li45ZmU5ZjljMmJjZGY3OTBlNTI5ODJiNmI2ZGUwMWNiY2Mw
OGExMTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1BhZ2VDbGll
bnRJbXBsSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVu
dEltcGxJT1MubW0KQEAgLTM0LDcgKzM0LDYgQEAKICNpbXBvcnQgIkludGVyYWN0aW9uSW5mb3Jt
YXRpb25BdFBvc2l0aW9uLmgiCiAjaW1wb3J0ICJOYXRpdmVXZWJLZXlib2FyZEV2ZW50LmgiCiAj
aW1wb3J0ICJOYXZpZ2F0aW9uU3RhdGUuaCIKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0
ICJWaWV3U25hcHNob3RTdG9yZS5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlldy5oIgogI2ltcG9y
dCAiV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgiCkBAIC00Nyw2ICs0Niw4IEBACiAjaW1wb3J0
ICJXZWJFZGl0Q29tbWFuZFByb3h5LmgiCiAjaW1wb3J0ICJXZWJQcm9jZXNzUHJveHkuaCIKICNp
bXBvcnQgIl9XS0Rvd25sb2FkSW50ZXJuYWwuaCIKKyNpbXBvcnQgPFVJS2l0L1VJSW1hZ2VQaWNr
ZXJDb250cm9sbGVyX1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJV2ViVG91Y2hFdmVudHNH
ZXN0dXJlUmVjb2duaXplci5oPgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgog
I2ltcG9ydCA8V2ViQ29yZS9QbGF0Zm9ybVNjcmVlbi5oPgogI2ltcG9ydCA8V2ViQ29yZS9TaGFy
ZWRCdWZmZXIuaD4KQEAgLTU0LDYgKzU1LDEyIEBACiAKICNkZWZpbmUgTUVTU0FHRV9DSEVDSyhh
c3NlcnRpb24pIE1FU1NBR0VfQ0hFQ0tfQkFTRShhc3NlcnRpb24sIG1fd2ViVmlldy0+X3BhZ2Ut
PnByb2Nlc3MoKS5jb25uZWN0aW9uKCkpCiAKK0BpbnRlcmZhY2UgVUlWaWV3IChJUEkpCistIChV
SVNjcm9sbFZpZXcgKilfc2Nyb2xsZXI7CistIChDR1BvaW50KWFjY2Vzc2liaWxpdHlDb252ZXJ0
UG9pbnRGcm9tU2NlbmVSZWZlcmVuY2VDb29yZGluYXRlczooQ0dQb2ludClwb2ludDsKKy0gKENH
UmVjdClhY2Nlc3NpYmlsaXR5Q29udmVydFJlY3RUb1NjZW5lUmVmZXJlbmNlQ29vcmRpbmF0ZXM6
KENHUmVjdClyZWN0OworQGVuZAorCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIHVzaW5nIG5h
bWVzcGFjZSBXZWJLaXQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3Mv
UHJvY2Vzc0Fzc2VydGlvbklPUy5tbQppbmRleCAyYTJjYTM0ZGU2MWJhZmY5ZWY4NGVhMmRkMmRh
NzgyYTNmZTM3ZDc3Li5hODBkODIwOWYwZDI3ODFkZmEyNTc2NmU0Zjg1NmE0MzA2MjA0NDE2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1Byb2Nlc3NBc3NlcnRpb25J
T1MubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9u
SU9TLm1tCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpZiBQTEFURk9STShJT1MpCiAKLSNpbXBvcnQg
IkJLU1Byb2Nlc3NBc3NlcnRpb25TUEkuaCIKKyNpbXBvcnQgPEFzc2VydGlvblNlcnZpY2VzL0JL
U1Byb2Nlc3NBc3NlcnRpb24uaD4KICNpbXBvcnQgPFVJS2l0L1VJQXBwbGljYXRpb24uaD4KIAog
I2lmICFQTEFURk9STShJT1NfU0lNVUxBVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2lvcy9TbWFydE1hZ25pZmljYXRpb25Db250cm9sbGVyLm1tIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9TbWFydE1hZ25pZmljYXRpb25Db250cm9sbGVyLm1tCmluZGV4
IGZiN2I2OGVmMzgxNjlkNzUzYjI0YThkOTg3NzY1OTZmYzI0MmM1Y2MuLjNkMzcyN2MyZThjOGYy
MWVlYTI5OGM0NzVlNTliM2M0NDljN2JiYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvU21hcnRNYWduaWZpY2F0aW9uQ29udHJvbGxlci5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1NtYXJ0TWFnbmlmaWNhdGlvbkNvbnRyb2xsZXIubW0KQEAg
LTM2LDExICszNiwxMiBAQAogI2ltcG9ydCAiV2ViUGFnZU1lc3NhZ2VzLmgiCiAjaW1wb3J0ICJX
ZWJQYWdlUHJveHkuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQcm94eS5oIgorI2ltcG9ydCA8VUlL
aXQvVUlLaXQuaD4KIAogI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKICNwcmFnbWEgY2xh
bmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zIgogCi0jaW1w
b3J0ICJVSUtpdFNQSS5oIgorI2ltcG9ydCA8VUlLaXQvVUlLaXRfUHJpdmF0ZS5oPgogCiAjcHJh
Z21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvVmlld0dlc3R1cmVDb250cm9sbGVySU9TLm1tIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2lvcy9WaWV3R2VzdHVyZUNvbnRyb2xsZXJJT1MubW0KaW5kZXggOGQzOTFlNTI3
MTYwZjE0MjIwMmMyNTdmMzI4MWU5YmEyYjc1M2U2MS4uM2U1MGZkYTA0NzZmYjJlMWRlOGFkMDkw
MzIzYjY1MTc0YzgxMThmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lv
cy9WaWV3R2VzdHVyZUNvbnRyb2xsZXJJT1MubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2lvcy9WaWV3R2VzdHVyZUNvbnRyb2xsZXJJT1MubW0KQEAgLTI4LDcgKzI4LDYgQEAKIAog
I2lmIFBMQVRGT1JNKElPUykKIAotI2ltcG9ydCAiVUlLaXRTUEkuaCIKICNpbXBvcnQgIlZpZXdH
ZXN0dXJlQ29udHJvbGxlck1lc3NhZ2VzLmgiCiAjaW1wb3J0ICJWaWV3R2VzdHVyZUdlb21ldHJ5
Q29sbGVjdG9yTWVzc2FnZXMuaCIKICNpbXBvcnQgIlZpZXdTbmFwc2hvdFN0b3JlLmgiCkBAIC00
MCw2ICszOSwxMCBAQAogI2ltcG9ydCAiV2ViUGFnZVByb3h5LmgiCiAjaW1wb3J0ICJXZWJQcm9j
ZXNzUHJveHkuaCIKICNpbXBvcnQgPFVJS2l0L1VJU2NyZWVuRWRnZVBhbkdlc3R1cmVSZWNvZ25p
emVyLmg+CisjaW1wb3J0IDxVSUtpdC9VSVZpZXdDb250cm9sbGVyVHJhbnNpdGlvbmluZ19Qcml2
YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSVdlYlRvdWNoRXZlbnRzR2VzdHVyZVJlY29nbml6ZXIu
aD4KKyNpbXBvcnQgPFVJS2l0L19VSU5hdmlnYXRpb25JbnRlcmFjdGl2ZVRyYW5zaXRpb24uaD4K
KyNpbXBvcnQgPFVJS2l0L19VSU5hdmlnYXRpb25QYXJhbGxheFRyYW5zaXRpb24uaD4KICNpbXBv
cnQgPFdlYkNvcmUvSU9TdXJmYWNlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1F1YXJ0ekNvcmVTUEku
aD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0Lm1tCmluZGV4IGU1YzU4Nzk4OTFkYmYxOTE2N2FlZmIz
NzMzN2ZkZGVjMDc2NGZlN2EuLmJjNWY1Yjc3ODNmYmExYTcwZDNkOTU0ODYxYzkzOGI0MmM2OTVl
YzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVl
dC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXQubW0K
QEAgLTI4LDcgKzI4LDggQEAKIAogI2lmIFBMQVRGT1JNKElPUykKIAotI2ltcG9ydCAiVUlLaXRT
UEkuaCIKKyNpbXBvcnQgPFVJS2l0L1VJQWxlcnRDb250cm9sbGVyX1ByaXZhdGUuaD4KKyNpbXBv
cnQgPFVJS2l0L1VJV2luZG93X1ByaXZhdGUuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
IAogQGltcGxlbWVudGF0aW9uIFdLQWN0aW9uU2hlZXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaAppbmRleCAwM2ViMTll
ZTM5ZTliNzc5ODM1ZjAzMTQwMWIwZTVmMTZhN2I0MTMzLi5jNWFmYTA1ZDdkOTgxZDM5ODQ5ODYy
YTNjZmNmMjQ4NjdiNTRjMmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
aW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaApAQCAtMjUsOSArMjUsOSBAQAogCiAjaWYg
UExBVEZPUk0oSU9TKQogCi0jaW1wb3J0ICJEYXRhRGV0ZWN0b3JzVUlTUEkuaCIKICNpbXBvcnQg
Ikdlc3R1cmVUeXBlcy5oIgogI2ltcG9ydCAiV0tBY3Rpb25TaGVldC5oIgorI2ltcG9ydCA8RGF0
YURldGVjdG9yc1VJL0RERGV0ZWN0aW9uQ29udHJvbGxlci5oPgogI2ltcG9ydCA8VUlLaXQvVUlQ
b3BvdmVyQ29udHJvbGxlci5oPgogI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQu
bW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQWN0aW9uU2hlZXRBc3Npc3RhbnQu
bW0KaW5kZXggNjIxYmNiNDE2NjgxZTEzYTNiYWUxZTFlNDM1YWQ4YjMwNGQ0MTJlNi4uNTMzMjJi
NmRmYjIyZThlMGNiMzU4MGE2YmFjNTAxYzM4MThmNjU5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS0FjdGlvblNoZWV0QXNzaXN0YW50Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tBY3Rpb25TaGVldEFzc2lzdGFudC5tbQpAQCAtMjks
MTYgKzI5LDIwIEBACiAjaWYgUExBVEZPUk0oSU9TKQogCiAjaW1wb3J0ICJBUElVSUNsaWVudC5o
IgotI2ltcG9ydCAiVENDU1BJLmgiCi0jaW1wb3J0ICJVSUtpdFNQSS5oIgogI2ltcG9ydCAiV0tB
Y3Rpb25TaGVldC5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgiCiAjaW1w
b3J0ICJXZWFrT2JqQ1B0ci5oIgogI2ltcG9ydCAiV2ViUGFnZVByb3h5LmgiCiAjaW1wb3J0ICJf
V0tBY3RpdmF0ZWRFbGVtZW50SW5mb0ludGVybmFsLmgiCiAjaW1wb3J0ICJfV0tFbGVtZW50QWN0
aW9uSW50ZXJuYWwuaCIKKyNpbXBvcnQgPERhdGFEZXRlY3RvcnNVSS9EREFjdGlvbi5oPgorI2lt
cG9ydCA8RGF0YURldGVjdG9yc1VJL0RERGV0ZWN0aW9uQ29udHJvbGxlci5oPgogI2ltcG9ydCA8
U2FmYXJpU2VydmljZXMvU1NSZWFkaW5nTGlzdC5oPgorI2ltcG9ydCA8VENDL1RDQy5oPgorI2lt
cG9ydCA8VUlLaXQvVUlBbGVydENvbnRyb2xsZXJfUHJpdmF0ZS5oPgogI2ltcG9ydCA8VUlLaXQv
VUlWaWV3Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVZpZXdDb250cm9sbGVyX1ByaXZhdGUuaD4KKyNp
bXBvcnQgPFVJS2l0L1VJV2luZG93X1ByaXZhdGUuaD4KICNpbXBvcnQgPFdlYkNvcmUvTG9jYWxp
emVkU3RyaW5ncy5oPgogI2ltcG9ydCA8V2ViQ29yZS9Tb2Z0TGlua2luZy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9XZWJDb3JlTlNVUkxFeHRyYXMuaD4KQEAgLTUxLDYgKzU1LDE0IEBAIFNPRlRfTElO
S19QUklWQVRFX0ZSQU1FV09SSyhUQ0MpCiBTT0ZUX0xJTksoVENDLCBUQ0NBY2Nlc3NQcmVmbGln
aHQsIFRDQ0FjY2Vzc1ByZWZsaWdodFJlc3VsdCwgKENGU3RyaW5nUmVmIHNlcnZpY2UsIENGRGlj
dGlvbmFyeVJlZiBvcHRpb25zKSwgKHNlcnZpY2UsIG9wdGlvbnMpKQogU09GVF9MSU5LX0NPTlNU
QU5UKFRDQywga1RDQ1NlcnZpY2VQaG90b3MsIENGU3RyaW5nUmVmKQogCitTT0ZUX0xJTktfUFJJ
VkFURV9GUkFNRVdPUksoRGF0YURldGVjdG9yc1VJKQorU09GVF9MSU5LX0NMQVNTKERhdGFEZXRl
Y3RvcnNVSSwgREREZXRlY3Rpb25Db250cm9sbGVyKQorCisvLyBGSVhNRTogVGhpcyB3aWxsIGJl
IHJlbW92ZWQgYXMgc29vbiBhcyA8cmRhcjovL3Byb2JsZW0vMTYzNDY5MTM+IGlzIGZpeGVkLgor
QGludGVyZmFjZSBERERldGVjdGlvbkNvbnRyb2xsZXIgKFdLRERBY3Rpb25Qcml2YXRlKQorLSAo
TlNBcnJheSAqKWFjdGlvbnNGb3JBbmNob3I6KGlkKWFuY2hvciB1cmw6KE5TVVJMICopdGFyZ2V0
VVJMIGZvckZyYW1lOihpZClmcmFtZTsKK0BlbmQKKwogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsK
IAogQGltcGxlbWVudGF0aW9uIFdLQWN0aW9uU2hlZXRBc3Npc3RhbnQgewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3Lm1tIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3Lm1tCmluZGV4IGYwZjBiMTFiNDhiODEw
MjdhNmIxZWI3NmRmYzcwYjFjNzA4OWNkYTkuLjljZTJmM2Q0MGE3M2NhZDZiNjBkMTRjYjgyOTI0
ZWRkYmYzOTM1NzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tD
b250ZW50Vmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXcubW0KQEAgLTMyLDcgKzMyLDYgQEAKICNpbXBvcnQgIlJlbW90ZUxheWVyVHJlZURyYXdp
bmdBcmVhUHJveHkuaCIKICNpbXBvcnQgIlJlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHku
aCIKICNpbXBvcnQgIlNtYXJ0TWFnbmlmaWNhdGlvbkNvbnRyb2xsZXIuaCIKLSNpbXBvcnQgIlVJ
S2l0U1BJLmgiCiAjaW1wb3J0ICJXS0Jyb3dzaW5nQ29udGV4dENvbnRyb2xsZXJJbnRlcm5hbC5o
IgogI2ltcG9ydCAiV0tCcm93c2luZ0NvbnRleHRHcm91cFByaXZhdGUuaCIKICNpbXBvcnQgIldL
SW5zcGVjdG9ySGlnaGxpZ2h0Vmlldy5oIgpAQCAtNDcsNiArNDYsNyBAQAogI2ltcG9ydCAiV2Vi
UHJvY2Vzc1Bvb2wuaCIKICNpbXBvcnQgIldlYlN5c3RlbUludGVyZmFjZS5oIgogI2ltcG9ydCA8
Q29yZUdyYXBoaWNzL0NvcmVHcmFwaGljcy5oPgorI2ltcG9ydCA8VUlLaXQvVUlXaW5kb3dfUHJp
dmF0ZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFF1YWQuaD4KICNpbXBvcnQgPFdlYkNvcmUv
RnJhbWVWaWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0luc3BlY3Rvck92ZXJsYXkuaD4KQEAgLTU1
LDYgKzU1LDEwIEBACiAjaW1wb3J0IDx3dGYvQ3VycmVudFRpbWUuaD4KICNpbXBvcnQgPHd0Zi9S
ZXRhaW5QdHIuaD4KIAorQGludGVyZmFjZSBDQUxheWVyIChEZXRhaWxzKQorQHByb3BlcnR5IEJP
T0wgaGl0VGVzdHNBc09wYXF1ZTsKK0BlbmQKKwogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiB1
c2luZyBuYW1lc3BhY2UgV2ViS2l0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaAppbmRleCBiMjE5MTQwYzM3MjA2
ZTVlNzE0ZTY4ZGVkN2ZmNTVhYTQ3YmNhNzdjLi41NmJmZGJkN2IxOGVmMmZmNDM0ZjliZjcxMGZl
ZmJlNGU4ZjNhYTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKQEAgLTMwLDEzICszMCwxNyBAQAogI2ltcG9y
dCAiQXNzaXN0ZWROb2RlSW5mb3JtYXRpb24uaCIKICNpbXBvcnQgIkdlc3R1cmVUeXBlcy5oIgog
I2ltcG9ydCAiSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaCIKLSNpbXBvcnQgIlVJ
S2l0U1BJLmgiCiAjaW1wb3J0ICJXS0FjdGlvblNoZWV0QXNzaXN0YW50LmgiCiAjaW1wb3J0ICJX
S0FpclBsYXlSb3V0ZVBpY2tlci5oIgogI2ltcG9ydCAiV0tGaWxlVXBsb2FkUGFuZWwuaCIKICNp
bXBvcnQgIldLRm9ybVBlcmlwaGVyYWwuaCIKICNpbXBvcnQgIldLU3ludGhldGljQ2xpY2tUYXBH
ZXN0dXJlUmVjb2duaXplci5oIgorI2ltcG9ydCA8VUlLaXQvVUlUZXh0SW5wdXRfUHJpdmF0ZS5o
PgogI2ltcG9ydCA8VUlLaXQvVUlWaWV3Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVdLU2VsZWN0aW9u
QXNzaXN0YW50Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVdLVGV4dEludGVyYWN0aW9uQXNzaXN0YW50
Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVdlYkZvcm1BY2Nlc3NvcnkuaD4KKyNpbXBvcnQgPFVJS2l0
L1VJV2ViVG91Y2hFdmVudHNHZXN0dXJlUmVjb2duaXplci5oPgogI2ltcG9ydCA8V2ViQ29yZS9D
b2xvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFF1YWQuaD4KICNpbXBvcnQgPHd0Zi9Gb3J3
YXJkLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDQzNTkwODEzMTllNGJkOGM3NzUyYWZhNjVkYWQ1
ZDg2ZDU3YmFjYjcuLjczMWZhZThkMTdkM2U5YzFlNGI3ZjgwZmQ1YTAwODEwNDlmN2UyNGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVy
YWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCkBAIC0yOSwxNCArMjksMTAgQEAKICNpZiBQTEFURk9STShJT1MpCiAK
ICNpbXBvcnQgIkFQSVVJQ2xpZW50LmgiCi0jaW1wb3J0ICJEYXRhRGV0ZWN0b3JzVUlTUEkuaCIK
ICNpbXBvcnQgIkVkaXRpbmdSYW5nZS5oIgotI2ltcG9ydCAiTWFuYWdlZENvbmZpZ3VyYXRpb25T
UEkuaCIKICNpbXBvcnQgIk5hdGl2ZVdlYktleWJvYXJkRXZlbnQuaCIKICNpbXBvcnQgIk5hdGl2
ZVdlYlRvdWNoRXZlbnQuaCIKICNpbXBvcnQgIlNtYXJ0TWFnbmlmaWNhdGlvbkNvbnRyb2xsZXIu
aCIKLSNpbXBvcnQgIlRleHRJbnB1dFNQSS5oIgotI2ltcG9ydCAiVUlLaXRTUEkuaCIKICNpbXBv
cnQgIldLQWN0aW9uU2hlZXRBc3Npc3RhbnQuaCIKICNpbXBvcnQgIldLRm9ybUlucHV0Q29udHJv
bC5oIgogI2ltcG9ydCAiV0tGb3JtU2VsZWN0Q29udHJvbC5oIgpAQCAtNTAsMTYgKzQ2LDM3IEBA
CiAjaW1wb3J0ICJXZWJQcm9jZXNzUHJveHkuaCIKICNpbXBvcnQgIl9XS0Zvcm1EZWxlZ2F0ZS5o
IgogI2ltcG9ydCAiX1dLRm9ybUlucHV0U2Vzc2lvbi5oIgotI2ltcG9ydCA8Q29yZVRleHQvQ1RG
b250Lmg+CiAjaW1wb3J0IDxDb3JlVGV4dC9DVEZvbnREZXNjcmlwdG9yLmg+CisjaW1wb3J0IDxE
YXRhRGV0ZWN0b3JzVUkvREREZXRlY3Rpb25Db250cm9sbGVyLmg+CisjaW1wb3J0IDxNYW5hZ2Vk
Q29uZmlndXJhdGlvbi9NQ0ZlYXR1cmVzLmg+CisjaW1wb3J0IDxNYW5hZ2VkQ29uZmlndXJhdGlv
bi9NQ1Byb2ZpbGVDb25uZWN0aW9uLmg+CisjaW1wb3J0IDxUZXh0SW5wdXQvVElfTlNTdHJpbmdF
eHRyYXMuaD4KKyNpbXBvcnQgPFVJS2l0L1VJQXBwbGljYXRpb25fUHJpdmF0ZS5oPgorI2ltcG9y
dCA8VUlLaXQvVUlGb250X1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJR2VzdHVyZVJlY29n
bml6ZXJfUHJpdmF0ZS5oPgorI2ltcG9ydCA8VUlLaXQvVUlLZXlib2FyZEltcGwuaD4KKyNpbXBv
cnQgPFVJS2l0L1VJS2V5Ym9hcmRJbnRsLmg+CisjaW1wb3J0IDxVSUtpdC9VSUxvbmdQcmVzc0dl
c3R1cmVSZWNvZ25pemVyX1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJVGFwR2VzdHVyZVJl
Y29nbml6ZXJfUHJpdmF0ZS5oPgorI2ltcG9ydCA8VUlLaXQvVUlUZXh0SW50ZXJhY3Rpb25Bc3Np
c3RhbnRfUHJpdmF0ZS5oPgorI2ltcG9ydCA8VUlLaXQvVUlXZWJEb2N1bWVudFZpZXcuaD4gLy8g
RklYTUU6IHNob3VsZCBub3QgaW5jbHVkZSB0aGlzIGhlYWRlci4KKyNpbXBvcnQgPFVJS2l0L19V
SVdlYkhpZ2hsaWdodExvbmdQcmVzc0dlc3R1cmVSZWNvZ25pemVyLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0NvbG9yLmg+Ci0jaW1wb3J0IDxXZWJDb3JlL0NvcmVHcmFwaGljc1NQSS5oPgogI2ltcG9y
dCA8V2ViQ29yZS9GbG9hdFF1YWQuaD4KICNpbXBvcnQgPFdlYkNvcmUvU29mdExpbmtpbmcuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvV2ViRXZlbnQuaD4KKyNpbXBvcnQgPFdlYkNvcmUvX1VJSGlnaGxp
Z2h0Vmlld1NQSS5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYlNlbGVjdGlvblJlY3QuaD4gLy8gRklY
TUU6IFdLMiBzaG91bGQgbm90IGluY2x1ZGUgV2ViS2l0IGhlYWRlcnMhCiAjaW1wb3J0IDx3dGYv
UmV0YWluUHRyLmg+CiAKK1NPRlRfTElOS19QUklWQVRFX0ZSQU1FV09SSyhEYXRhRGV0ZWN0b3Jz
VUkpCitTT0ZUX0xJTktfQ0xBU1MoRGF0YURldGVjdG9yc1VJLCBERERldGVjdGlvbkNvbnRyb2xs
ZXIpCitTT0ZUX0xJTktfUFJJVkFURV9GUkFNRVdPUksoTWFuYWdlZENvbmZpZ3VyYXRpb24pOwor
U09GVF9MSU5LX0NMQVNTKE1hbmFnZWRDb25maWd1cmF0aW9uLCBNQ1Byb2ZpbGVDb25uZWN0aW9u
KTsKK1NPRlRfTElOS19DT05TVEFOVChNYW5hZ2VkQ29uZmlndXJhdGlvbiwgTUNGZWF0dXJlRGVm
aW5pdGlvbkxvb2t1cEFsbG93ZWQsIE5TU3RyaW5nICopCisKKyNkZWZpbmUgTUNGZWF0dXJlRGVm
aW5pdGlvbkxvb2t1cEFsbG93ZWQgZ2V0TUNGZWF0dXJlRGVmaW5pdGlvbkxvb2t1cEFsbG93ZWQo
KQorCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tHZW9sb2NhdGlvblBy
b3ZpZGVySU9TT2JqQ1NlY3VyaXR5T3JpZ2luLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XS0dlb2xvY2F0aW9uUHJvdmlkZXJJT1NPYmpDU2VjdXJpdHlPcmlnaW4ubW0KaW5kZXgg
MGQ3ZmEwYTgwNWRjYmQzNmY0MDFjMGVjODM3YzRmOTc3OGRiNTM0Yy4uOWJkYTdiMDJlZjJlOThi
NDA3N2JjYjczNDU0ZWRhZmZiMjU4ZmJiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9XS0dlb2xvY2F0aW9uUHJvdmlkZXJJT1NPYmpDU2VjdXJpdHlPcmlnaW4ubW0K
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0dlb2xvY2F0aW9uUHJvdmlkZXJJ
T1NPYmpDU2VjdXJpdHlPcmlnaW4ubW0KQEAgLTI4LDggKzI4LDggQEAKIAogI2lmIFBMQVRGT1JN
KElPUykKIAotI2ltcG9ydCAiVUlLaXRTUEkuaCIKICNpbXBvcnQgPEZvdW5kYXRpb24vTlNVUkwu
aD4KKyNpbXBvcnQgPFVJS2l0L1VJV2ViR2VvbG9jYXRpb25Qb2xpY3lEZWNpZGVyLmg+CiAjaW1w
b3J0IDxVSUtpdC9VSVdpbmRvdy5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5o
PgogI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2lvcy9XS1BERlBhZ2VOdW1iZXJJbmRpY2F0b3IubW0gYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvaW9zL1dLUERGUGFnZU51bWJlckluZGljYXRvci5tbQppbmRleCAxNjUxMDJk
ZTFjNjMxMGFjNmU1MjE2NDBmM2Y2NjM3OTNmNjYxMTUxLi5iODhhNGJiYTZjNDE1NDAyMThlZTA2
ODQ1YmNlNDVhNTY5ZTZmMzdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
aW9zL1dLUERGUGFnZU51bWJlckluZGljYXRvci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL1dLUERGUGFnZU51bWJlckluZGljYXRvci5tbQpAQCAtMjgsNyArMjgsMTAgQEAK
IAogI2lmIFBMQVRGT1JNKElPUykKIAotI2ltcG9ydCAiVUlLaXRTUEkuaCIKKyNpbXBvcnQgPFVJ
S2l0L1VJR2VvbWV0cnlfUHJpdmF0ZS5oPgorI2ltcG9ydCA8VUlLaXQvVUlLaXQuaD4KKyNpbXBv
cnQgPFVJS2l0L1VJVmlld19Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9fVUlCYWNrZHJvcFZp
ZXdfUHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9Mb2NhbGl6ZWRTdHJpbmdzLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tQREZWaWV3LmggYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLUERGVmlldy5oCmluZGV4IGQ4M2Q5ZmYwMDcy
MTQzN2VmNzliZmJiMmE3Mzc3OGI3YzE0NWMxN2IuLjViYWZiNTk0ZmQzOGMyM2YwOWYxZDkxODAx
NTkwYzM0ZWY1ZjlhNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3Mv
V0tQREZWaWV3LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS1BERlZpZXcu
aApAQCAtMjUsOSArMjUsMTAgQEAKIAogI2lmIFBMQVRGT1JNKElPUykKIAotI2ltcG9ydCAiQ29y
ZVBERlNQSS5oIgogI2ltcG9ydCAiV0tBY3Rpb25TaGVldEFzc2lzdGFudC5oIgogI2ltcG9ydCAi
V0tXZWJWaWV3Q29udGVudFByb3ZpZGVyLmgiCisjaW1wb3J0IDxDb3JlUERGL1VJUERGQW5ub3Rh
dGlvbkNvbnRyb2xsZXIuaD4KKyNpbXBvcnQgPENvcmVQREYvVUlQREZQYWdlVmlldy5oPgogI2lt
cG9ydCA8VUlLaXQvVUlWaWV3Lmg+CiAKIEBpbnRlcmZhY2UgV0tQREZWaWV3IDogVUlWaWV3IDxX
S1dlYlZpZXdDb250ZW50UHJvdmlkZXIsIFVJUERGUGFnZVZpZXdEZWxlZ2F0ZSwgVUlQREZBbm5v
dGF0aW9uQ29udHJvbGxlckRlbGVnYXRlLCBXS0FjdGlvblNoZWV0QXNzaXN0YW50RGVsZWdhdGU+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLUERGVmlldy5tbSBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tQREZWaWV3Lm1tCmluZGV4IGUyNDk1ZTRi
MDhiODNlNWFiYjE5NzA2Y2I4YWJkM2RiNzM2MDhiYzAuLjYwZmVmNTE0NDk0NmNlNDIyZTdkNzdm
ZjNkNTdmZTcyYzFiZDVjNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvV0tQREZWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tQREZW
aWV3Lm1tCkBAIC0yOSwxNCArMjksMTggQEAKICNpZiBQTEFURk9STShJT1MpCiAKICNpbXBvcnQg
IkFQSVVJQ2xpZW50LmgiCi0jaW1wb3J0ICJDb3JlUERGU1BJLmgiCiAjaW1wb3J0ICJTZXNzaW9u
U3RhdGUuaCIKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJXS1BERlBhZ2VOdW1iZXJJ
bmRpY2F0b3IuaCIKICNpbXBvcnQgIldLV2ViVmlld0ludGVybmFsLmgiCiAjaW1wb3J0ICJXZWJQ
YWdlUHJveHkuaCIKKyNpbXBvcnQgPENvcmVQREYvVUlQREZEb2N1bWVudC5oPgorI2ltcG9ydCA8
Q29yZVBERi9VSVBERkxpbmtBbm5vdGF0aW9uLmg+CisjaW1wb3J0IDxDb3JlUERGL1VJUERGUGFn
ZS5oPgorI2ltcG9ydCA8Q29yZVBERi9VSVBERlBhZ2VWaWV3Lmg+CiAjaW1wb3J0IDxNb2JpbGVD
b3JlU2VydmljZXMvVVRDb3JlVHlwZXMuaD4KKyNpbXBvcnQgPFVJS2l0L1VJU2Nyb2xsVmlld19Q
cml2YXRlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0Zsb2F0UmVjdC5oPgorI2ltcG9ydCA8V2ViQ29y
ZS9fVUlIaWdobGlnaHRWaWV3U1BJLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAjaW1w
b3J0IDx3dGYvVmVjdG9yLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9pb3MvV0tTY3JvbGxWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU2Ny
b2xsVmlldy5oCmluZGV4IDE3NDg2MDEyMzg0NzE4Mjc3OTJkZmJjNzRkMDA1YjZlYTBhYmZkMTcu
LmUzOTcxMjU1NTdmYzFlMTZlMWViZjg3ZmZiZWI2ZjU5ZjgzMWU3YzMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTY3JvbGxWaWV3LmgKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS1Njcm9sbFZpZXcuaApAQCAtMjUsNyArMjUsNyBAQAogCiAj
aWYgUExBVEZPUk0oSU9TKQogCi0jaW1wb3J0ICJVSUtpdFNQSS5oIgorI2ltcG9ydCA8VUlLaXQv
VUlXZWJTY3JvbGxWaWV3Lmg+CiAKIEBjbGFzcyBXS1dlYlZpZXc7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNDbGlja1RhcEdlc3R1cmVSZWNv
Z25pemVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLU3ludGhldGljQ2xpY2tU
YXBHZXN0dXJlUmVjb2duaXplci5oCmluZGV4IDE2N2QxOTU0YTQzYjMyZGQ3NDJmYjRhMTYxMzc2
ZTA3M2JmYmQ3NDAuLmI5ZWQ3ZTc1MDkxNDJkZTZkOTdmMzk2Mzg1MDdmOGIxMWUyMzQzNzMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV0tTeW50aGV0aWNDbGlja1Rh
cEdlc3R1cmVSZWNvZ25pemVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S1N5bnRoZXRpY0NsaWNrVGFwR2VzdHVyZVJlY29nbml6ZXIuaApAQCAtMjUsNyArMjUsNyBAQAog
CiAjaWYgUExBVEZPUk0oSU9TKQogCi0jaW1wb3J0ICJVSUtpdFNQSS5oIgorI2ltcG9ydCA8VUlL
aXQvVUlUYXBHZXN0dXJlUmVjb2duaXplcl9Qcml2YXRlLmg+CiAKIEBpbnRlcmZhY2UgV0tTeW50
aGV0aWNDbGlja1RhcEdlc3R1cmVSZWNvZ25pemVyIDogVUlUYXBHZXN0dXJlUmVjb2duaXplcgog
LSAodm9pZClzZXRHZXN0dXJlUmVjb2duaXplZFRhcmdldDooaWQpdGFyZ2V0IGFjdGlvbjooU0VM
KWFjdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvV2ViVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KaW5kZXggNTNkZGQwMTFkNTg5OTEx
ODBhZGE1N2RjZDc2MmFiNjRhNjBiN2VkMi4uNjU2ODM1YWE5N2FjMzNjMDUyNzg0NDY4MGY2MGYw
YWQzMjA1OTc5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XZWJW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KQEAgLTI5LDcgKzI5LDYg
QEAKICNpZiBQTEFURk9STShJT1MpCiAKICNpbXBvcnQgIlJlbW90ZUxheWVyVHJlZURyYXdpbmdB
cmVhUHJveHkuaCIKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJXZWJQYWdlUHJveHku
aCIKICNpbXBvcnQgIldlYlByb2Nlc3NQcm94eS5oIgogI2ltcG9ydCAiV2ViVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlck1lc3NhZ2VzLmgiCkBAIC0zOCw2ICszNywxNSBAQAogI2ltcG9ydCA8V2ViQ29y
ZS9UaW1lUmFuZ2VzLmg+CiAjaW1wb3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KIAorI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisjaW1wb3J0IDxVSUtpdC9VSVdpbmRvd19Qcml2YXRl
Lmg+CisjZWxzZQorI2ltcG9ydCA8VUlLaXQvVUlXaW5kb3cuaD4KK0BpbnRlcmZhY2UgVUlXaW5k
b3cgKERldGFpbHMpCisrIChtYWNoX3BvcnRfdClfc3luY2hyb25pemVEcmF3aW5nQWNyb3NzUHJv
Y2Vzc2VzOworQGVuZAorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1l
c3BhY2UgV2ViS2l0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3Mv
Zm9ybXMvV0tBaXJQbGF5Um91dGVQaWNrZXIubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
aW9zL2Zvcm1zL1dLQWlyUGxheVJvdXRlUGlja2VyLm1tCmluZGV4IDFmMWQ3YWI5NTRiNDdhZDUz
YjFjZGFiYzRiMTI2Y2VkZGM1ZjI1MmMuLmMwMjZmYmE0MzBlYTAzM2Q2YTgzNzM5MmMyODI2Yzky
NDU3MGZiYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9ybXMv
V0tBaXJQbGF5Um91dGVQaWNrZXIubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lv
cy9mb3Jtcy9XS0FpclBsYXlSb3V0ZVBpY2tlci5tbQpAQCAtMjgsMTAgKzI4LDExIEBACiAKICNp
ZiBQTEFURk9STShJT1MpCiAKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJXS0NvbnRl
bnRWaWV3LmgiCiAjaW1wb3J0ICJXS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaCIKICNpbXBvcnQg
IldlYlBhZ2VQcm94eS5oIgorI2ltcG9ydCA8VUlLaXQvVUlBcHBsaWNhdGlvbl9Qcml2YXRlLmg+
CisjaW1wb3J0IDxVSUtpdC9VSVdpbmRvd19Qcml2YXRlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL01l
ZGlhUGxheWVyU1BJLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NvZnRMaW5raW5nLmg+CiAjaW1wb3J0
IDx3dGYvUmV0YWluUHRyLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
aW9zL2Zvcm1zL1dLRmlsZVVwbG9hZFBhbmVsLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9mb3Jtcy9XS0ZpbGVVcGxvYWRQYW5lbC5tbQppbmRleCA1OWZjY2JmODFiNWNhNTM4NGM3
YjZkNTk5OWMyMDMxMGY2MDUyNGY0Li5hNWI1YzE0YWE4MzdiODBiY2UxZTQ0NGQzNjcyMDliODQ0
ZGMwOWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dL
RmlsZVVwbG9hZFBhbmVsLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9y
bXMvV0tGaWxlVXBsb2FkUGFuZWwubW0KQEAgLTMxLDcgKzMxLDYgQEAKICNpbXBvcnQgIkFQSUFy
cmF5LmgiCiAjaW1wb3J0ICJBUElEYXRhLmgiCiAjaW1wb3J0ICJBUElTdHJpbmcuaCIKLSNpbXBv
cnQgIlVJS2l0U1BJLmgiCiAjaW1wb3J0ICJXS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaCIKICNp
bXBvcnQgIldLRGF0YS5oIgogI2ltcG9ydCAiV0tTdHJpbmdDRi5oIgpAQCAtNDIsNiArNDEsMTEg
QEAKICNpbXBvcnQgPEFWRm91bmRhdGlvbi9BVkZvdW5kYXRpb24uaD4KICNpbXBvcnQgPENvcmVN
ZWRpYS9Db3JlTWVkaWEuaD4KICNpbXBvcnQgPE1vYmlsZUNvcmVTZXJ2aWNlcy9Nb2JpbGVDb3Jl
U2VydmljZXMuaD4KKyNpbXBvcnQgPFVJS2l0L1VJQXBwbGljYXRpb25fUHJpdmF0ZS5oPgorI2lt
cG9ydCA8VUlLaXQvVUlJbWFnZVBpY2tlckNvbnRyb2xsZXJfUHJpdmF0ZS5oPgorI2ltcG9ydCA8
VUlLaXQvVUlJbWFnZV9Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSVZpZXdDb250cm9sbGVy
X1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJV2luZG93X1ByaXZhdGUuaD4KICNpbXBvcnQg
PFdlYkNvcmUvTG9jYWxpemVkU3RyaW5ncy5oPgogI2ltcG9ydCA8V2ViQ29yZS9Tb2Z0TGlua2lu
Zy5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYk5TRmlsZU1hbmFnZXJFeHRyYXMuaD4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGb3JtSW5wdXRDb250cm9s
Lm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1JbnB1dENvbnRy
b2wubW0KaW5kZXggMTljMWEzZjI0NzVhNDkxY2FlYjI1NjZhNzAwMDA5ZTg1YjkzYmRmMy4uYWMw
MGNlODhhMzNkMDRiZjJjYjA0YTU4NjY3OGU2MTJhMzMwMmFmMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1JbnB1dENvbnRyb2wubW0KKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1JbnB1dENvbnRyb2wubW0K
QEAgLTI4LDEzICsyOCwxNiBAQAogCiAjaWYgUExBVEZPUk0oSU9TKQogCi0jaW1wb3J0ICJVSUtp
dFNQSS5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlldy5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLmgiCiAjaW1wb3J0ICJXS0Zvcm1Qb3BvdmVyLmgiCiAjaW1wb3J0ICJXZWJQ
YWdlUHJveHkuaCIKICNpbXBvcnQgPFVJS2l0L1VJQmFyQnV0dG9uSXRlbS5oPgorI2ltcG9ydCA8
VUlLaXQvVUlCYXJCdXR0b25JdGVtX1ByaXZhdGUuaD4KICNpbXBvcnQgPFVJS2l0L1VJRGF0ZVBp
Y2tlci5oPgorI2ltcG9ydCA8VUlLaXQvVUlEYXRlUGlja2VyX1ByaXZhdGUuaD4KKyNpbXBvcnQg
PFVJS2l0L1VJRGV2aWNlX1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJS2V5Ym9hcmRfUHJp
dmF0ZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9Mb2NhbGl6ZWRTdHJpbmdzLmg+CiAjaW1wb3J0IDx3
dGYvUmV0YWluUHRyLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvZm9ybXMvV0tGb3JtUG9wb3Zlci5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3Mv
Zm9ybXMvV0tGb3JtUG9wb3Zlci5tbQppbmRleCA5MWNmYjY2MzQ2ZDNmYWUxZWJjM2IzYThmNTQz
MjdkYjRjYjcxNzU1Li5mYzk5YTdlMzNjNTkzZGRlYzg2NGM3YjJlZWVhZjZlZjkyODI4YTFhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLRm9ybVBvcG92
ZXIubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1Qb3Bv
dmVyLm1tCkBAIC0yOCwxMCArMjgsMTEgQEAKIAogI2lmIFBMQVRGT1JNKElPUykKIAotI2ltcG9y
dCAiVUlLaXRTUEkuaCIKICNpbXBvcnQgIldLQ29udGVudFZpZXcuaCIKICNpbXBvcnQgIldLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5oIgogI2ltcG9ydCAiV2ViUGFnZVByb3h5LmgiCisjaW1wb3J0
IDxVSUtpdC9VSVBlcmlwaGVyYWxIb3N0Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVdpbmRvd19Qcml2
YXRlLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJL
aXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLRm9y
bVNlbGVjdENvbnRyb2wuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tG
b3JtU2VsZWN0Q29udHJvbC5oCmluZGV4IGQ2NWYwNmE3N2QxZWEzNjE3ZDFiNDdiMjliMjBlZTM5
Y2MzOWZkMjkuLmU1OWJmYzlhNzEzNmU3ZDhmMjIzZmFhNjU1NjNiMTM0ZGM4NDM2NTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGb3JtU2VsZWN0Q29u
dHJvbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGb3JtU2Vs
ZWN0Q29udHJvbC5oCkBAIC0yNiwxMCArMjYsMTAgQEAKICNpZiBQTEFURk9STShJT1MpCiAKICNp
bXBvcnQgIkFzc2lzdGVkTm9kZUluZm9ybWF0aW9uLmgiCi0jaW1wb3J0ICJVSUtpdFNQSS5oIgog
I2ltcG9ydCAiV0tGb3JtUGVyaXBoZXJhbC5oIgogI2ltcG9ydCAiV0tGb3JtUG9wb3Zlci5oIgog
I2ltcG9ydCA8VUlLaXQvVUlQaWNrZXJWaWV3Lmg+CisjaW1wb3J0IDxVSUtpdC9VSVBpY2tlclZp
ZXdfUHJpdmF0ZS5oPgogCiBDR0Zsb2F0IGFkanVzdGVkRm9udFNpemUoQ0dGbG9hdCB0ZXh0V2lk
dGgsIFVJRm9udCAqLCBDR0Zsb2F0IGluaXRpYWxGb250U2l6ZSwgY29uc3QgVmVjdG9yPFdlYktp
dDo6T3B0aW9uSXRlbT4mIGl0ZW1zKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1TZWxlY3RDb250cm9sLm1tIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1TZWxlY3RDb250cm9sLm1tCmluZGV4IGRkMGUxZWU0
MjQzZjAwOGRmMmI2MGQ3YjA2ODUzNzE2ZTBkNDhhYTAuLjExMzJlMmExODM2NDY1NzA3OWNlYjAw
NjZmYmRiYzEzMzM0Y2IyYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvZm9ybXMvV0tGb3JtU2VsZWN0Q29udHJvbC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL2Zvcm1zL1dLRm9ybVNlbGVjdENvbnRyb2wubW0KQEAgLTI4LDEyICsyOCwxOCBA
QAogCiAjaWYgUExBVEZPUk0oSU9TKQogCi0jaW1wb3J0ICJVSUtpdFNQSS5oIgogI2ltcG9ydCAi
V0tDb250ZW50Vmlldy5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgiCiAj
aW1wb3J0ICJXS0Zvcm1Qb3BvdmVyLmgiCiAjaW1wb3J0ICJXZWJQYWdlUHJveHkuaCIKKyNpbXBv
cnQgPENvcmVGb3VuZGF0aW9uL0NGVW5pQ2hhci5oPgorI2ltcG9ydCA8VUlLaXQvVUlBcHBsaWNh
dGlvbl9Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSURldmljZV9Qcml2YXRlLmg+CisjaW1w
b3J0IDxVSUtpdC9VSUtleWJvYXJkX1ByaXZhdGUuaD4KICNpbXBvcnQgPFVJS2l0L1VJUGlja2Vy
Vmlldy5oPgorI2ltcG9ydCA8VUlLaXQvVUlQaWNrZXJWaWV3X1ByaXZhdGUuaD4KKyNpbXBvcnQg
PFVJS2l0L1VJU3RyaW5nRHJhd2luZ19Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSVdlYkZv
cm1BY2Nlc3NvcnkuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogdXNpbmcgbmFtZXNw
YWNlIFdlYktpdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9y
bXMvV0tGb3JtU2VsZWN0UGlja2VyLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9m
b3Jtcy9XS0Zvcm1TZWxlY3RQaWNrZXIubW0KaW5kZXggZjM3YmUwNzNlZjgyMzc5MmVhODIxNTEx
NDQ5Y2M4NmNiNzkwOTFkYS4uMzBlYWQwNGMxNDc4ZjQ5NGZhMzk2NDkyMjlmZTJiNjAzMWE2ZDI3
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1T
ZWxlY3RQaWNrZXIubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9X
S0Zvcm1TZWxlY3RQaWNrZXIubW0KQEAgLTI4LDExICsyOCwxNSBAQAogCiAjaWYgUExBVEZPUk0o
SU9TKQogCi0jaW1wb3J0ICJVSUtpdFNQSS5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlldy5oIgog
I2ltcG9ydCAiV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgiCiAjaW1wb3J0ICJXS0Zvcm1Qb3Bv
dmVyLmgiCiAjaW1wb3J0ICJXZWJQYWdlUHJveHkuaCIKKyNpbXBvcnQgPENvcmVGb3VuZGF0aW9u
L0NGVW5pQ2hhci5oPgorI2ltcG9ydCA8VUlLaXQvVUlBcHBsaWNhdGlvbl9Qcml2YXRlLmg+Cisj
aW1wb3J0IDxVSUtpdC9VSURldmljZV9Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSUtleWJv
YXJkX1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJUGlja2VyQ29udGVudFZpZXdfUHJpdmF0
ZS5oPgogI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1T
ZWxlY3RQb3BvdmVyLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zv
cm1TZWxlY3RQb3BvdmVyLm1tCmluZGV4IDllYzE1MTYzZDgxMjI5YzY4OTdhNGVmMjIzYTQ2MDgz
MDBjMTJiYWUuLmE1OTJhMmJiMTQ0MzFjNzY2YzU0ZmQwOTJjMDdkMGJjODI2ZjJlZDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGb3JtU2VsZWN0UG9w
b3Zlci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLRm9ybVNl
bGVjdFBvcG92ZXIubW0KQEAgLTI4LDEyICsyOCwyMCBAQAogCiAjaWYgUExBVEZPUk0oSU9TKQog
Ci0jaW1wb3J0ICJVSUtpdFNQSS5oIgogI2ltcG9ydCAiV0tDb250ZW50Vmlldy5oIgogI2ltcG9y
dCAiV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgiCiAjaW1wb3J0ICJXS0Zvcm1Qb3BvdmVyLmgi
CiAjaW1wb3J0ICJXZWJQYWdlUHJveHkuaCIKKyNpbXBvcnQgPENvcmVGb3VuZGF0aW9uL0NGVW5p
Q2hhci5oPgorI2ltcG9ydCA8VUlLaXQvVUlBcHBsaWNhdGlvbl9Qcml2YXRlLmg+CisjaW1wb3J0
IDxVSUtpdC9VSURldmljZV9Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtpdC9VSUtleWJvYXJkX1By
aXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJS2V5Ym9hcmRJbXBsLmg+CiAjaW1wb3J0IDxVSUtp
dC9VSVBpY2tlclZpZXcuaD4KKyNpbXBvcnQgPFVJS2l0L1VJUGlja2VyVmlld19Qcml2YXRlLmg+
CisjaW1wb3J0IDxVSUtpdC9VSVRhYmxlVmlld0NlbGxfUHJpdmF0ZS5oPgorI2ltcG9ydCA8VUlL
aXQvVUlTdHJpbmdEcmF3aW5nX1ByaXZhdGUuaD4KKyNpbXBvcnQgPFVJS2l0L1VJV2ViRm9ybUFj
Y2Vzc29yeS5oPgogI2ltcG9ydCA8V2ViQ29yZS9Mb2NhbGl6ZWRTdHJpbmdzLmg+CiAjaW1wb3J0
IDx3dGYvUmV0YWluUHRyLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAzMmYwMjBjNWUxY2ExYzc3NDVmYTQzMDEzY2IwMGY4
MzNhZTBjMjlhLi4xMWRhZWE0N2ZlNGRmZDAxOWE2NGQ4MjUxZTExNzQzNDkyYTZiZDNhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC0xNjEyLDE3ICsxNjEyLDEwIEBACiAJCUNEQ0E4NUM4MTMyQUJBNEUwMEU5NjFERiAvKiBXS0Z1
bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0RDQTg1QzYxMzJBQkE0RTAwRTk2MURGIC8qIFdLRnVsbFNjcmVl
bldpbmRvd0NvbnRyb2xsZXIubW0gKi87IH07CiAJCUNEQ0E4NUM5MTMyQUJBNEUwMEU5NjFERiAv
KiBXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRENBODVDNzEzMkFCQTRFMDBFOTYxREYgLyogV0tGdWxs
U2NyZWVuV2luZG93Q29udHJvbGxlci5oICovOyB9OwogCQlDREU2RTJEMzE5RjczMUM0MDBCQTk2
ODggLyogV2ViT3JpZ2luRGF0YU1hbmFnZXJTdXBwbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREU2RTJEMjE5RjczMUM0MDBCQTk2ODggLyog
V2ViT3JpZ2luRGF0YU1hbmFnZXJTdXBwbGVtZW50LmggKi87IH07Ci0JCUNFMUEwQkQyMUE0OEU2
QzYwMDU0RUY3NCAvKiBCS1NQcm9jZXNzQXNzZXJ0aW9uU1BJLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTFBMEJDQzFBNDhFNkM2MDA1NEVGNzQgLyog
QktTUHJvY2Vzc0Fzc2VydGlvblNQSS5oICovOyB9OwotCQlDRTFBMEJEMzFBNDhFNkM2MDA1NEVG
NzQgLyogQ29yZVBERlNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0UxQTBCQ0QxQTQ4RTZDNjAwNTRFRjc0IC8qIENvcmVQREZTUEkuaCAqLzsgfTsK
LQkJQ0UxQTBCRDQxQTQ4RTZDNjAwNTRFRjc0IC8qIERhdGFEZXRlY3RvcnNVSVNQSS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0UxQTBCQ0UxQTQ4RTZD
NjAwNTRFRjc0IC8qIERhdGFEZXRlY3RvcnNVSVNQSS5oICovOyB9OwotCQlDRTFBMEJENTFBNDhF
NkM2MDA1NEVGNzQgLyogTWFuYWdlZENvbmZpZ3VyYXRpb25TUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkNGMUE0OEU2QzYwMDU0RUY3NCAv
KiBNYW5hZ2VkQ29uZmlndXJhdGlvblNQSS5oICovOyB9OwotCQlDRTFBMEJENjFBNDhFNkM2MDA1
NEVGNzQgLyogVENDU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDRTFBMEJEMDFBNDhFNkM2MDA1NEVGNzQgLyogVENDU1BJLmggKi87IH07Ci0JCUNF
MUEwQkQ3MUE0OEU2QzYwMDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUEwQkQxMUE0OEU2QzYwMDU0RUY3NCAv
KiBUZXh0SW5wdXRTUEkuaCAqLzsgfTsKIAkJQ0VEQTEyRTIxNTJDRDFBRTAwRDlFMDhEIC8qIFdl
YkFsdGVybmF0aXZlVGV4dENsaWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDRURBMTJERjE1MkNDQUU4MDBEOUUwOEQgLyogV2ViQWx0ZXJuYXRp
dmVUZXh0Q2xpZW50LmNwcCAqLzsgfTsKIAkJQ0VEQTEyRTMxNTJDRDFCMzAwRDlFMDhEIC8qIFdl
YkFsdGVybmF0aXZlVGV4dENsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0VEQTEyREUxNTJDQ0FFODAwRDlFMDhEIC8qIFdlYkFsdGVybmF0aXZl
VGV4dENsaWVudC5oICovOyB9OwogCQlDRURCQTg0NzE5RkRBMDBBMDA2ODY2QTUgLyogV2ViU1FM
aXRlRGF0YWJhc2VUcmFja2VyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENFREJBODQ1MTlGREEwMEEwMDY4NjZBNSAvKiBXZWJTUUxpdGVEYXRhYmFz
ZVRyYWNrZXIuY3BwICovOyB9OwogCQlDRURCQTg0ODE5RkRBMDBBMDA2ODY2QTUgLyogV2ViU1FM
aXRlRGF0YWJhc2VUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRURCQTg0NjE5RkRBMDBBMDA2ODY2QTUgLyogV2ViU1FMaXRlRGF0YWJhc2VU
cmFja2VyLmggKi87IH07Ci0JCUNFRTRBRTJCMUE1RENGNDMwMDAyRjQ5QiAvKiBVSUtpdFNQSS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0VFNEFFMkEx
QTVEQ0Y0MzAwMDJGNDlCIC8qIFVJS2l0U1BJLmggKi87IH07CiAJCUQzQjk0ODQ2MTFGRjRCNjUw
MDAzMkIzOSAvKiBXZWJQb3B1cE1lbnUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRDNCOTQ4NDIxMUZGNEI2NTAwMDMyQjM5IC8qIFdlYlBvcHVwTWVu
dS5jcHAgKi87IH07CiAJCUQzQjk0ODQ3MTFGRjRCNjUwMDAzMkIzOSAvKiBXZWJQb3B1cE1lbnUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEQzQjk0ODQz
MTFGRjRCNjUwMDAzMkIzOSAvKiBXZWJQb3B1cE1lbnUuaCAqLzsgfTsKIAkJRDNCOTQ4NDgxMUZG
NEI2NTAwMDMyQjM5IC8qIFdlYlNlYXJjaFBvcHVwTWVudS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEM0I5NDg0NDExRkY0QjY1MDAwMzJCMzkgLyog
V2ViU2VhcmNoUG9wdXBNZW51LmNwcCAqLzsgfTsKQEAgLTM3NTUsMTcgKzM3NDgsMTAgQEAKIAkJ
Q0RDQTg1QzcxMzJBQkE0RTAwRTk2MURGIC8qIFdLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tGdWxsU2NyZWVuV2luZG93Q29u
dHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRENBODVENDEzMkFDMkIz
MDBFOTYxREYgLyogSU9LaXQuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBJT0tpdC5mcmFt
ZXdvcms7IHBhdGggPSAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9JT0tpdC5mcmFtZXdvcms7
IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CiAJCUNERTZFMkQyMTlGNzMxQzQwMEJBOTY4
OCAvKiBXZWJPcmlnaW5EYXRhTWFuYWdlclN1cHBsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gV2ViT3JpZ2luRGF0YU1hbmFnZXJTdXBwbGVtZW50Lmg7IHBhdGggPSBP
cmlnaW5EYXRhL1dlYk9yaWdpbkRhdGFNYW5hZ2VyU3VwcGxlbWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQlDRTFBMEJDQzFBNDhFNkM2MDA1NEVGNzQgLyogQktTUHJvY2Vzc0Fz
c2VydGlvblNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCS1NQcm9jZXNz
QXNzZXJ0aW9uU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUNFMUEwQkNEMUE0
OEU2QzYwMDU0RUY3NCAvKiBDb3JlUERGU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVQREZTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQ0UxQTBC
Q0UxQTQ4RTZDNjAwNTRFRjc0IC8qIERhdGFEZXRlY3RvcnNVSVNQSS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhRGV0ZWN0b3JzVUlTUEkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJQ0UxQTBCQ0YxQTQ4RTZDNjAwNTRFRjc0IC8qIE1hbmFnZWRDb25maWd1
cmF0aW9uU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hbmFnZWRDb25m
aWd1cmF0aW9uU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUNFMUEwQkQwMUE0
OEU2QzYwMDU0RUY3NCAvKiBUQ0NTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVENDU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUNFMUEwQkQxMUE0OEU2
QzYwMDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gVGV4dElucHV0U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFREEx
MkRFMTUyQ0NBRTgwMEQ5RTA4RCAvKiBXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNFREExMkRGMTUyQ0NBRTgwMEQ5RTA4RCAvKiBX
ZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2ViQWx0ZXJuYXRpdmVUZXh0Q2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQ0VEQkE4NDUxOUZEQTAwQTAwNjg2NkE1IC8qIFdlYlNRTGl0ZURhdGFiYXNl
VHJhY2tlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJTUUxp
dGVEYXRhYmFzZVRyYWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDRURC
QTg0NjE5RkRBMDBBMDA2ODY2QTUgLyogV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlDRUU0QUUyQTFBNURDRjQzMDAwMkY0OUIgLyog
VUlLaXRTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVUlLaXRTUEkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRDNCOTQ4NDIxMUZGNEI2NTAwMDMyQjM5IC8q
IFdlYlBvcHVwTWVudS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBX
ZWJQb3B1cE1lbnUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlEM0I5NDg0MzEx
RkY0QjY1MDAwMzJCMzkgLyogV2ViUG9wdXBNZW51LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYlBvcHVwTWVudS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlE
M0I5NDg0NDExRkY0QjY1MDAwMzJCMzkgLyogV2ViU2VhcmNoUG9wdXBNZW51LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlNlYXJjaFBvcHVwTWVudS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC02NDA1LDcgKzYzOTEsNiBAQAogCQkJCTM3MDk1
MDQyMThBODhDREUwMDg3QUU1RCAvKiBmb3VuZGF0aW9uICovLAogCQkJCTFBRTAwRDY4MTgzMjdD
MTIwMDA4N0RENyAvKiBJUEMgKi8sCiAJCQkJMUE3RTgxNEUxMTUyRDIyNDAwMDM2OTVCIC8qIG1h
YyAqLywKLQkJCQlDRTFBMEJDQTFBNDhFNkM2MDA1NEVGNzQgLyogc3BpICovLAogCQkJCTUxQjE1
QTdEMTM4NDM5QjIwMDMyMUFEOCAvKiB1bml4ICovLAogCQkJCTUxQTdGMkY0MTI1QkY4RDQwMDhB
RUIxRCAvKiBMb2dnaW5nLmNwcCAqLywKIAkJCQk1MUE3RjJGMjEyNUJGODIwMDA4QUVCMUQgLyog
TG9nZ2luZy5oICovLApAQCAtNzEwNCwyOCArNzA4OSw2IEBACiAJCQlwYXRoID0gRnVsbFNjcmVl
bi9tYWM7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwogCQl9OwotCQlDRTFBMEJDQTFBNDhF
NkM2MDA1NEVGNzQgLyogc3BpICovID0gewotCQkJaXNhID0gUEJYR3JvdXA7Ci0JCQljaGlsZHJl
biA9ICgKLQkJCQlDRTFBMEJDQjFBNDhFNkM2MDA1NEVGNzQgLyogaW9zICovLAotCQkJKTsKLQkJ
CXBhdGggPSBzcGk7Ci0JCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwotCQl9OwotCQlDRTFBMEJD
QjFBNDhFNkM2MDA1NEVGNzQgLyogaW9zICovID0gewotCQkJaXNhID0gUEJYR3JvdXA7Ci0JCQlj
aGlsZHJlbiA9ICgKLQkJCQlDRTFBMEJDQzFBNDhFNkM2MDA1NEVGNzQgLyogQktTUHJvY2Vzc0Fz
c2VydGlvblNQSS5oICovLAotCQkJCUNFMUEwQkNEMUE0OEU2QzYwMDU0RUY3NCAvKiBDb3JlUERG
U1BJLmggKi8sCi0JCQkJQ0UxQTBCQ0UxQTQ4RTZDNjAwNTRFRjc0IC8qIERhdGFEZXRlY3RvcnNV
SVNQSS5oICovLAotCQkJCUNFMUEwQkNGMUE0OEU2QzYwMDU0RUY3NCAvKiBNYW5hZ2VkQ29uZmln
dXJhdGlvblNQSS5oICovLAotCQkJCUNFMUEwQkQwMUE0OEU2QzYwMDU0RUY3NCAvKiBUQ0NTUEku
aCAqLywKLQkJCQlDRTFBMEJEMTFBNDhFNkM2MDA1NEVGNzQgLyogVGV4dElucHV0U1BJLmggKi8s
Ci0JCQkJQ0VFNEFFMkExQTVEQ0Y0MzAwMDJGNDlCIC8qIFVJS2l0U1BJLmggKi8sCi0JCQkpOwot
CQkJcGF0aCA9IGlvczsKLQkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7Ci0JCX07CiAJCUUxNzA4
NzZEMTZENkNBNzIwMEY5OTIyNiAvKiBGaWxlQVBJICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7
CiAJCQljaGlsZHJlbiA9ICgKQEAgLTczMjUsNyArNzI4OCw2IEBACiAJCQkJNTE4RThFRjkxNkIy
MDkxQzAwRTkxNDI5IC8qIEF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNTEyRjU4QTMxMkE4ODNBRDAwNjI5NTMwIC8qIEF1dGhlbnRpY2F0aW9uTWFuYWdlck1lc3Nh
Z2VzLmggaW4gSGVhZGVycyAqLywKIAkJCQk3Q0QxMDJEQTE4NjY3NzA2MDBFRDQyOUQgLyogQXV0
b0NvcnJlY3Rpb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQ0UxQTBCRDIxQTQ4RTZD
NjAwNTRFRjc0IC8qIEJLU1Byb2Nlc3NBc3NlcnRpb25TUEkuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUUxNjRBMkYyMTkxQUYxNEUwMDEwNzM3RCAvKiBCbG9iRGF0YUZpbGVSZWZlcmVuY2VXaXRoU2Fu
ZGJveEV4dGVuc2lvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTE3MDg3NkMxNkQ2Q0E2OTAwRjk5
MjI2IC8qIEJsb2JSZWdpc3RyeVByb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQk0RjYwMTQzMjE1
NUM1QUEyMDAxRkJERTAgLyogQmxvY2tpbmdSZXNwb25zZU1hcC5oIGluIEhlYWRlcnMgKi8sCkBA
IC03MzQyLDcgKzczMDQsNiBAQAogCQkJCTUxMzYxODNFMTYzMTI2REEwMEE5OURERSAvKiBDb25u
ZWN0aW9uU3RhY2suaCBpbiBIZWFkZXJzICovLAogCQkJCTUxMDZEN0M0MThCREJFNzMwMDBBQjE2
NiAvKiBDb250ZXh0TWVudUNvbnRleHREYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREMzODMw
QzE3MjEyMjgyMDA4QTJGQzMgLyogQ29va2llU3RvcmFnZVNoaW1MaWJyYXJ5LmggaW4gSGVhZGVy
cyAqLywKLQkJCQlDRTFBMEJEMzFBNDhFNkM2MDA1NEVGNzQgLyogQ29yZVBERlNQSS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQjg3OEI2MTUxMzM0MjhEQzAwNjg4OEU5IC8qIENvcnJlY3Rpb25QYW5l
bC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjk4OUE0MTQxNjdEMTg0QjAwNEY5NkQyIC8qIEN1c3Rv
bVByb3RvY29sTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjk4NEY1ODkxNjRCQTA5NTAw
NEJDMEM2IC8qIEN1c3RvbVByb3RvY29sTWFuYWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLywK
QEAgLTczNTQsNyArNzMxNSw2IEBACiAJCQkJNTE3REQ1QkYxODBEQTdEMzAwODE2NjBCIC8qIERh
dGFiYXNlUHJvY2Vzc1Byb3h5LmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTJBOTc2QTE4MEUwOUI4
MDAzOUExNDkgLyogRGF0YWJhc2VQcm9jZXNzUHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTEwMzJGMUUxODBGNzkxNzAwOTYxQkI3IC8qIERhdGFiYXNlVG9XZWJQcm9jZXNzQ29u
bmVjdGlvbk1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLywKLQkJCQlDRTFBMEJENDFBNDhFNkM2MDA1
NEVGNzQgLyogRGF0YURldGVjdG9yc1VJU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUM3NTM4
MDE4M0JFNTBGMDA3MkNCMTUgLyogRGF0YVJlZmVyZW5jZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QkNFODFEOTkxMzFBRTAyMTAwMjQxOTEwIC8qIERpY3Rpb25hcnlQb3B1cEluZm8uaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUxOEU4RjA4MTZCMjA5MzcwMEU5MTQyOSAvKiBEb3dubG9hZC5oIGluIEhl
YWRlcnMgKi8sCkBAIC03NDI3LDcgKzczODcsNiBAQAogCQkJCTUxQTdGMkYzMTI1QkY4MjAwMDhB
RUIxRCAvKiBMb2dnaW5nLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0M1NkY3OTExNTk5NTdEMDAx
Q0NBRjkgLyogTWFjaFBvcnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBMjRCNUYzMTFGNTMxRTgw
MEMzODI2OSAvKiBNYWNoVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKLQkJCQlDRTFBMEJENTFB
NDhFNkM2MDA1NEVGNzQgLyogTWFuYWdlZENvbmZpZ3VyYXRpb25TUEkuaCBpbiBIZWFkZXJzICov
LAogCQkJCTUxOTMzREVGMTk2NUVCMzEwMDhBQzNFQSAvKiBNZW51VXRpbGl0aWVzLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkxQTIzMjkwMzE2MkM4NjczMDBEODJGN0EgLyogTWVzc2FnZURlY29kZXIu
aCBpbiBIZWFkZXJzICovLAogCQkJCTFBMjMyOEZGMTYyQzg2NkEwMEQ4MkY3QSAvKiBNZXNzYWdl
RW5jb2Rlci5oIGluIEhlYWRlcnMgKi8sCkBAIC03NTc4LDE1ICs3NTM3LDEyIEBACiAJCQkJMUFC
MzFBOTcxNkJDNjg4MTAwRjZEQkM5IC8qIFN0b3JhZ2VNYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTFBRTAwRDZDMTgzMjdDMTIwMDA4N0RENyAvKiBTdHJpbmdSZWZlcmVuY2Uu
aCBpbiBIZWFkZXJzICovLAogCQkJCTI5NkJEODVEMTUwMTlCQzMwMDcxRjQyNCAvKiBTdHJpbmdV
dGlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAotCQkJCUNFMUEwQkQ2MUE0OEU2QzYwMDU0RUY3NCAv
KiBUQ0NTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBQTQxN0NCMTJDMDBDQ0EwMDJCRTY3QiAv
KiBUZXh0Q2hlY2tlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMVFRNDE3Q0IxMkMwMENDQTAwMkJF
NjdCIC8qIFRleHRDaGVja2VyQ29tcGxldGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUE1RTRE
QTQxMkQzQkQzRDAwOTlBMkJCIC8qIFRleHRDaGVja2VyU3RhdGUuaCBpbiBIZWFkZXJzICovLAot
CQkJCUNFMUEwQkQ3MUE0OEU2QzYwMDU0RUY3NCAvKiBUZXh0SW5wdXRTUEkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTFBQUYyNjM5MTQ2ODdDMzkwMDRBMUU4QSAvKiBUaWxlZENvcmVBbmltYXRpb25E
cmF3aW5nQXJlYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFGMDVEODcxNDY4ODM0ODAwOEIxRTgx
IC8qIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhUHJveHkuaCBpbiBIZWFkZXJzICovLAog
CQkJCTFBRkU0MzY2MThCNkMwODEwMDlDN0E0OCAvKiBVSURlbGVnYXRlLmggaW4gSGVhZGVycyAq
LywKLQkJCQlDRUU0QUUyQjFBNURDRjQzMDAwMkY0OUIgLyogVUlLaXRTUEkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTUxNUU3NzMwMTg0MDE1ODAwMDA3MjAzRiAvKiBVbmlxdWVJREJEYXRhYmFzZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNTE2NTRGMDAxODRFRjM0QTAwN0RDODM3IC8qIFVuaXF1ZUlE
QkRhdGFiYXNlQmFja2luZ1N0b3JlLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTY1NEVGRTE4NEVG
MzNGMDA3REM4MzcgLyogVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUuaCBpbiBI
ZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9FbnRyeVBv
aW50L21hYy9MZWdhY3lQcm9jZXNzL1dlYkNvbnRlbnRQcm9jZXNzTWFpbi5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvRW50cnlQb2ludC9tYWMvTGVnYWN5UHJvY2Vzcy9XZWJDb250ZW50
UHJvY2Vzc01haW4ubW0KaW5kZXggMzAwMTg2YmMzNWJhNzkyMTVmYmRhMGVkMmUwNDQ1MTZlMDQ4
M2JhMS4uYjcwMGVhNWE5NjQ4ZmFhY2I4MmUyNWMwZmVkM2JkM2MxNzIwNzlhZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9MZWdhY3lQcm9jZXNz
L1dlYkNvbnRlbnRQcm9jZXNzTWFpbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0VudHJ5UG9pbnQvbWFjL0xlZ2FjeVByb2Nlc3MvV2ViQ29udGVudFByb2Nlc3NNYWluLm1tCkBA
IC0zMSw4ICszMSw4IEBACiAjaW1wb3J0ICJTdHJpbmdVdGlsaXRpZXMuaCIKICNpbXBvcnQgIldL
QmFzZS5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzcy5oIgotI2ltcG9ydCA8V2ViQ29yZS9TZXJ2ZXJz
U1BJLmg+CiAjaW1wb3J0IDxtYWNoL21hY2hfZXJyb3IuaD4KKyNpbXBvcnQgPHNlcnZlcnMvYm9v
dHN0cmFwLmg+CiAjaW1wb3J0IDxzcGF3bi5oPgogI2ltcG9ydCA8c3RkaW8uaD4KICNpbXBvcnQg
PHd0Zi9SZXRhaW5QdHIuaD4KQEAgLTQxLDkgKzQxLDkgQEAKICNpbXBvcnQgPHd0Zi90ZXh0L1dU
RlN0cmluZy5oPgogCiAjaWYgUExBVEZPUk0oSU9TKQotI2ltcG9ydCA8V2ViQ29yZS9HcmFwaGlj
c1NlcnZpY2VzU1BJLmg+CisjaW1wb3J0IDxHcmFwaGljc1NlcnZpY2VzL0dyYXBoaWNzU2Vydmlj
ZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVRocmVhZFN5c3RlbUludGVyZmFjZS5oPgot
I2VuZGlmCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TKQogCiAjaWYgVVNFKEFQUEtJVCkKIEBpbnRl
cmZhY2UgTlNBcHBsaWNhdGlvbiAoV2ViTlNBcHBsaWNhdGlvbkRldGFpbHMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1NlcnZpY2UvV2Vi
Q29udGVudFNlcnZpY2VFbnRyeVBvaW50Lm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9F
bnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL1dlYkNvbnRlbnRTZXJ2aWNlRW50cnlQb2ludC5tbQpp
bmRleCAxOTRmYmNmMDk0ZGQ0N2RlNTg0ZjM4MWQwYzA2YTM3MjM1ZmVkNmE0Li4yMDllMDJiOGM3
NTc3Mzg4MTY2ZDBmYjczMzBiNTUxNGQwNTA4NjUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1NlcnZpY2UvV2ViQ29udGVudFNlcnZpY2VF
bnRyeVBvaW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRW50cnlQb2ludC9t
YWMvWFBDU2VydmljZS9XZWJDb250ZW50U2VydmljZUVudHJ5UG9pbnQubW0KQEAgLTMyLDkgKzMy
LDkgQEAKICNpbXBvcnQgPHd0Zi9SdW5Mb29wLmg+CiAKICNpZiBQTEFURk9STShJT1MpCi0jaW1w
b3J0IDxXZWJDb3JlL0dyYXBoaWNzU2VydmljZXNTUEkuaD4KKyNpbXBvcnQgPEdyYXBoaWNzU2Vy
dmljZXMvR3JhcGhpY3NTZXJ2aWNlcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVGhyZWFk
U3lzdGVtSW50ZXJmYWNlLmg+Ci0jZW5kaWYKKyNlbmRpZiAvLyBQTEFURk9STShJT1MpCiAKIHVz
aW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL2NvbmZpZy5oIGIvU291cmNlL1dlYktpdDIvY29uZmlnLmgKaW5k
ZXggZDI4M2M4MzU0NWRjMzliMzM4ZjI5YjZhYzRlOTFlZGEwMWFlZGZiMC4uZDQwZTdiY2RmYTU5
OTI1NzAyNDQwODNhZjgxY2I5ZjBjYjE4MWQxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
Y29uZmlnLmgKKysrIGIvU291cmNlL1dlYktpdDIvY29uZmlnLmgKQEAgLTM2LDYgKzM2LDE4IEBA
CiAjaW5jbHVkZSA8d3RmL0V4cG9ydE1hY3Jvcy5oPgogCiAjaWZkZWYgX19jcGx1c3BsdXMKKyNp
Zm5kZWYgRVhURVJOX0NfQkVHSU4KKyNkZWZpbmUgRVhURVJOX0NfQkVHSU4gZXh0ZXJuICJDIiB7
CisjZW5kaWYKKyNpZm5kZWYgRVhURVJOX0NfRU5ECisjZGVmaW5lIEVYVEVSTl9DX0VORCB9Cisj
ZW5kaWYKKyNlbHNlCisjZGVmaW5lIEVYVEVSTl9DX0JFR0lOCisjZGVmaW5lIEVYVEVSTl9DX0VO
RAorI2VuZGlmCisKKyNpZmRlZiBfX2NwbHVzcGx1cwogCiAvLyBUaGVzZSB1bmRlZnMgbWF0Y2gg
dXAgd2l0aCBkZWZpbmVzIGluIFdlYktpdDJQcmVmaXguaCBmb3IgTWFjIE9TIFguCiAvLyBIZWxw
cyB1cyBjYXRjaCBpZiBhbnlvbmUgdXNlcyBuZXcgb3IgZGVsZXRlIGJ5IGFjY2lkZW50IGluIGNv
ZGUgYW5kIGRvZXNuJ3QgaW5jbHVkZSAiY29uZmlnLmgiLgpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hh
bmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGUxNGVjN2Y1OThiN2E2ZTgwYjA3MjE1ZTc5
Njk3Zjg1NjJjN2JkNzQuLmMwZmU1MDNkNDI5ZDJiOWIxNGI4YjFlNWQ2YWM4ZTk4NmRmYTNhM2Yg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxNS0wMS0wNyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3ODA2OC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MDIzNQorCisgICAg
ICAgIEJyZWFrcyB0aGUgaU9TIGJ1aWxkIChSZXF1ZXN0ZWQgYnkgZW5yaWNhIG9uICN3ZWJraXQp
LgorCisgICAgICAgIFJldmVydGVkIGNoYW5nZXNldDoKKworICAgICAgICAiW2lPU10gTWFrZSBX
ZWJLaXQyIGJ1aWxkIHdpdGggcHVibGljIGlPUyBTREsgYW5kIG1vcmUgYnVpbGQKKyAgICAgICAg
Zml4ZXMgZm9yIERSVCIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNzM3MQorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8x
NzgwNjgKKwogMjAxNS0wMS0wNyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAK
ICAgICAgICAgW2lPU10gTWFrZSBXZWJLaXQyIGJ1aWxkIHdpdGggcHVibGljIGlPUyBTREsgYW5k
IG1vcmUgYnVpbGQgZml4ZXMgZm9yIERSVApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvaW9zL0R1bXBSZW5kZXJUcmVlQnJvd3NlclZpZXcuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2lvcy9EdW1wUmVuZGVyVHJlZUJyb3dzZXJWaWV3LmgKaW5kZXggNWJmNDQ5NTlmYzk5ZTgxZDMy
MTg2OWNjNmIyNDI1NDljMjc5NjgxZi4uNjI2NDc3N2ViMTM1ODBlYjNlZDA0NmRiZjU1Mjg0YjFi
NGFhNzQ3MSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvaW9zL0R1bXBSZW5kZXJU
cmVlQnJvd3NlclZpZXcuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9pb3MvRHVtcFJlbmRl
clRyZWVCcm93c2VyVmlldy5oCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogCi0jaW1wb3J0ICJV
SUtpdFNQSS5oIgorI2ltcG9ydCA8VUlLaXQvVUlXZWJCcm93c2VyVmlldy5oPgogCiBAaW50ZXJm
YWNlIER1bXBSZW5kZXJUcmVlQnJvd3NlclZpZXcgOiBVSVdlYkJyb3dzZXJWaWV3IHsKICAgICBC
T09MIF9zY3JvbGxpbmdVc2VzVUlXZWJTY3JvbGxWaWV3OwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvaW9zL1BpeGVsRHVtcFN1cHBvcnRJT1MubW0gYi9Ub29scy9EdW1wUmVuZGVy
VHJlZS9pb3MvUGl4ZWxEdW1wU3VwcG9ydElPUy5tbQppbmRleCAzOTkxNDFhNjllYWEwNzc3M2U3
MGYyZWNlNmNhZDhjNWI1YTNhYWE0Li43MmI1MjZjOTY1YTRiZWM3MDJmNTgzNmE5MDM3MzJkZTU0
NzNmY2YyIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9pb3MvUGl4ZWxEdW1wU3Vw
cG9ydElPUy5tbQorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9pb3MvUGl4ZWxEdW1wU3VwcG9y
dElPUy5tbQpAQCAtMzEsMTIgKzMxLDE0IEBACiAKICNpbXBvcnQgIkR1bXBSZW5kZXJUcmVlLmgi
CiAjaW1wb3J0ICJEdW1wUmVuZGVyVHJlZVdpbmRvdy5oIgotI2ltcG9ydCAiVUlLaXRTUEkuaCIK
IAogI2RlZmluZSBDT01NT05fRElHRVNUX0ZPUl9PUEVOU1NMCiAjaW1wb3J0IDxDb21tb25Dcnlw
dG8vQ29tbW9uRGlnZXN0Lmg+CiAjaW1wb3J0IDxNb2JpbGVDb3JlU2VydmljZXMvVVRDb3JlVHlw
ZXMuaD4KICNpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5oPgorI2ltcG9ydCA8VUlLaXQv
VUlLaXQuaD4KKyNpbXBvcnQgPFVJS2l0L1VJVmlld19Qcml2YXRlLmg+CisjaW1wb3J0IDxVSUtp
dC9VSVdlYkJyb3dzZXJWaWV3Lmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViQ29yZVRocmVhZC5oPgog
I2ltcG9ydCA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29u
ZmlnIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25m
aWcKaW5kZXggOTY2NWQwNzkwOTZmMzY2NDI0MjIxYTk3NDVhYzA1MWViOThjMjIyOS4uYmQxNzQ5
YWE0NjViYTA5ODQwZTM2NDk5Y2NjZjYyZTg4OTRhYTkwZCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIvVG9vbHMv
RHVtcFJlbmRlclRyZWUvbWFjL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKQEAgLTI2LDcg
KzI2LDcgQEAKIENMQU5HX0NYWF9MQU5HVUFHRV9TVEFOREFSRCA9IGdudSsrMHg7CiBDTEFOR19D
WFhfTElCUkFSWSA9IGxpYmMrKzsKIENMQU5HX1dBUk5fQ1hYMFhfRVhURU5TSU9OUyA9IE5POwot
SEVBREVSX1NFQVJDSF9QQVRIUyA9ICQoQlVJTFRfUFJPRFVDVFNfRElSKS91c3IvbG9jYWwvaW5j
bHVkZSAkKEJVSUxUX1BST0RVQ1RTX0RJUikvV2ViQ29yZVRlc3RTdXBwb3J0IEZvcndhcmRpbmdI
ZWFkZXJzICQoSEVBREVSX1NFQVJDSF9QQVRIU18kKFBMQVRGT1JNX05BTUUpKSAkKFNSQ1JPT1Qp
Ly4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UgJChTUkNST09UKS8uLi8uLi9Tb3VyY2Uv
V2ViS2l0Mi9QbGF0Zm9ybS9zcGkvaW9zOworSEVBREVSX1NFQVJDSF9QQVRIUyA9ICQoQlVJTFRf
UFJPRFVDVFNfRElSKS91c3IvbG9jYWwvaW5jbHVkZSAkKEJVSUxUX1BST0RVQ1RTX0RJUikvV2Vi
Q29yZVRlc3RTdXBwb3J0IEZvcndhcmRpbmdIZWFkZXJzICQoSEVBREVSX1NFQVJDSF9QQVRIU18k
KFBMQVRGT1JNX05BTUUpKSAkKFNSQ1JPT1QpLy4uLy4uL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9p
Y3U7CiBIRUFERVJfU0VBUkNIX1BBVEhTX2lwaG9uZW9zID0gJChTREtST09UKS91c3IvbG9jYWwv
aW5jbHVkZSAkKFNES1JPT1QpL3Vzci9sb2NhbC9pbmNsdWRlL1dlYkNvcmVUZXN0U3VwcG9ydDsK
IEhFQURFUl9TRUFSQ0hfUEFUSFNfaXBob25lc2ltdWxhdG9yID0gJChIRUFERVJfU0VBUkNIX1BB
VEhTX2lwaG9uZW9zKTsKIEhFQURFUl9TRUFSQ0hfUEFUSFNfbWFjb3N4ID0gbWFjL0ludGVybmFs
SGVhZGVycyAkKE5FWFRfUk9PVCkvdXNyL2xvY2FsL2luY2x1ZGUvV2ViQ29yZVRlc3RTdXBwb3J0
OwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1t
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCmluZGV4IGRhYmE1
MGU3NGZjNDI3NDViMGMxYWFiNGIxZjk3YTIxOWI2YjNhMTEuLjc2ZmU3MTE1ZjM1NDZhNmQ2MGEw
MTRhZmY2ODEzMDkyMjNkZjI4MTIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9EdW1wUmVuZGVyVHJlZS5tbQorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJl
bmRlclRyZWUubW0KQEAgLTk5LDEwICs5OSwxMiBAQAogCiAjaWYgUExBVEZPUk0oSU9TKQogI2lt
cG9ydCAiRHVtcFJlbmRlclRyZWVCcm93c2VyVmlldy5oIgotI2ltcG9ydCAiVUlLaXRTUEkuaCIK
ICNpbXBvcnQgPENvcmVHcmFwaGljcy9DR0ZvbnREQi5oPgogI2ltcG9ydCA8UXVhcnR6Q29yZS9R
dWFydHpDb3JlLmg+CisjaW1wb3J0IDxVSUtpdC9VSUFwcGxpY2F0aW9uX1ByaXZhdGUuaD4KICNp
bXBvcnQgPFVJS2l0L1VJTWF0aC5oPgorI2ltcG9ydCA8VUlLaXQvVUlXZWJCcm93c2VyVmlldy5o
PgorI2ltcG9ydCA8VUlLaXQvVUlXZWJTY3JvbGxWaWV3Lmg+CiAjaW1wb3J0IDxXZWJLaXQvV0FL
V2luZG93Lmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViQ29yZVRocmVhZC5oPgogI2ltcG9ydCA8V2Vi
S2l0L1dlYkNvcmVUaHJlYWRSdW4uaD4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L21hYy9EdW1wUmVuZGVyVHJlZVdpbmRvdy5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1
bXBSZW5kZXJUcmVlV2luZG93LmgKaW5kZXggNmQ3ZmNjNGIxZWNkNjc5NTEwZjNjODg3N2E1NzAz
ZWQ3YmQyZDdmOS4uZDhjMGI5ZGQ3ODE5NTVlYTRlNzU2MTVjOGU4MzQ3MzM3YTBjN2ZlNSAxMDA2
NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlV2luZG93LmgK
KysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlV2luZG93LmgKQEAg
LTMxLDcgKzMxLDggQEAKICNpZiAhUExBVEZPUk0oSU9TKQogI2ltcG9ydCA8QXBwS2l0L0FwcEtp
dC5oPgogI2Vsc2UKLSNpbXBvcnQgIlVJS2l0U1BJLmgiCisjaW1wb3J0IDxVSUtpdC9VSUtpdC5o
PgorI2ltcG9ydCA8VUlLaXQvVUlXZWJCcm93c2VyVmlldy5oPgogI2ltcG9ydCA8V2ViS2l0L1dB
S1dpbmRvdy5oPgogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2
ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0KaW5kZXggMzc0NmM2MjBiZGY0NDM1YjAyZjkwYTIwYTJl
MmI2ZGI3NDkzY2UyNy4uZTAzNDE5ODBiZDZhZmViY2Q3MWVkNmEyMTNmODljMDY3MWI1MWM0NyAx
MDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xs
ZXIubW0KKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xs
ZXIubW0KQEAgLTQxLDExICs0MSwxMSBAQAogI2ltcG9ydCA8V2ViS2l0L1dlYlZpZXdQcml2YXRl
Lmg+CiAKICNpZiAhUExBVEZPUk0oSU9TKQotI2ltcG9ydCA8Q2FyYm9uL0NhcmJvbi5oPiAvLyBm
b3IgR2V0Q3VycmVudEV2ZW50VGltZSgpCisjaW1wb3J0IDxDYXJib24vQ2FyYm9uLmg+ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gZm9yIEdldEN1cnJlbnRFdmVudFRpbWUoKQogI2VuZGlm
CiAKICNpZiBQTEFURk9STShJT1MpCi0jaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzU2VydmljZXNT
UEkuaD4gLy8gZm9yIEdTQ3VycmVudEV2ZW50VGltZXN0YW1wKCkKKyNpbXBvcnQgPEdyYXBoaWNz
U2VydmljZXMvR3JhcGhpY3NTZXJ2aWNlcy5oPiAgICAgICAvLyBmb3IgR1NDdXJyZW50RXZlbnRU
aW1lc3RhbXAoKQogI2ltcG9ydCA8V2ViS2l0L0tleUV2ZW50Q29kZXNJT1MuaD4KICNpbXBvcnQg
PFdlYktpdC9XQUtXaW5kb3cuaD4KICNpbXBvcnQgPFdlYktpdC9XZWJFdmVudC5oPgpkaWZmIC0t
Z2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0gYi9Ub29scy9E
dW1wUmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbQppbmRleCAyYTM5NjVhOTE1MGMxMjkx
NDQyMGVhNDcwODExYzFmYjUyNjUxYTE1Li43MzZjODgwM2QxODg0MWRjOTc0ODI2NGY3ODEzOTM0
ZWU2MTU1Mjc0IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5l
ck1hYy5tbQorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbQpA
QCAtODEsNyArODEsNyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCi0jaW1wb3J0ICJV
SUtpdFNQSS5oIgorI2ltcG9ydCA8VUlLaXQvVUlXZWJCcm93c2VyVmlldy5oPgogI2ltcG9ydCA8
V2ViS2l0L1dlYkNvcmVUaHJlYWQuaD4KICNpbXBvcnQgPFdlYktpdC9XZWJDb3JlVGhyZWFkTWVz
c2FnZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYkRPTU9wZXJhdGlvbnNQcml2YXRlLmg+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>