From owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org  Fri Mar 29 11:49:44 2013
Return-Path: <owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org>
X-Original-To: sc22wg5-dom8
Delivered-To: sc22wg5-dom8@www.open-std.org
Received: by www.open-std.org (Postfix, from userid 521)
	id 8D780356D47; Fri, 29 Mar 2013 11:49:44 +0100 (CET)
Delivered-To: sc22wg5@open-std.org
Received: from postout.lrz.de (postout.lrz.de [129.187.254.115])
	by www.open-std.org (Postfix) with ESMTP id 4A073356571
	for <sc22wg5@open-std.org>; Fri, 29 Mar 2013 11:49:42 +0100 (CET)
Received: from lxmhs52.srv.lrz.de (localhost [127.0.0.1])
	by postout4.mail.lrz.de (Postfix) with ESMTP id 962D4200CF;
	Fri, 29 Mar 2013 11:49:41 +0100 (CET)
X-Virus-Scanned: by amavisd-new at lrz.de in lxmhs52.srv.lrz.de
Received: from postout4.mail.lrz.de ([127.0.0.1])
	by lxmhs52.srv.lrz.de (lxmhs52.srv.lrz.de [127.0.0.1]) (amavisd-new, port 20024)
	with LMTP id wR18jvpuclwq; Fri, 29 Mar 2013 11:49:39 +0100 (CET)
Received: from BADWLRZ-SWHBT1.ads.mwn.de (BADWLRZ-SWHBT1.ads.mwn.de [IPv6:2001:4ca0:0:108::125])
	(using TLSv1 with cipher AES128-SHA (128/128 bits))
	(Client CN "BADWLRZ-SWHBT1", Issuer "BADWLRZ-SWHBT1" (not verified))
	by postout4.mail.lrz.de (Postfix) with ESMTPS id 6234C200CA;
	Fri, 29 Mar 2013 11:49:39 +0100 (CET)
Received: from BADWLRZ-SWMBX11.ads.mwn.de ([fe80::6de5:ff8b:1900:b1a1]) by
 BADWLRZ-SWHBT1.ads.mwn.de ([fe80::e42f:e9f5:bde9:f99b%16]) with mapi id
 14.01.0438.000; Fri, 29 Mar 2013 11:49:39 +0100
From: "Bader, Reinhold" <Reinhold.Bader@lrz.de>
To: WG5 <sc22wg5@open-std.org>
CC: John Reid <John.Reid@stfc.ac.uk>
Subject: AW: (SC22WG5.4937) WG5 ballot on first draft TS 18508,  Additional
 Parallel Features in Fortran (Update)
Thread-Topic: (SC22WG5.4937) WG5 ballot on first draft TS 18508,  Additional
 Parallel Features in Fortran (Update)
Thread-Index: Ac4sY7+9jbBG9k6ESTWNONTGWnhhmw==
Date: Fri, 29 Mar 2013 10:49:39 +0000
Message-ID: <166ED263DF83324D9A3BA67FB6772B2B59F2B317@BADWLRZ-SWMBX11.ads.mwn.de>
Accept-Language: de-DE, en-US
Content-Language: de-DE
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
x-originating-ip: [129.187.48.231]
Content-Type: multipart/mixed;
	boundary="_002_166ED263DF83324D9A3BA67FB6772B2B59F2B317BADWLRZSWMBX11a_"
MIME-Version: 1.0
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

--_002_166ED263DF83324D9A3BA67FB6772B2B59F2B317BADWLRZSWMBX11a_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hello all,=20

Here an update to the comments I have on the Coarray TS draft. The followin=
g additions were done:=20

* Section (B.4) on indexing of parent-team inherited coarrays was considera=
bly extended, and now also includes a suggestion=20
  for solving the observed problems,
* Section (F) on the interaction of partial synchronization statements and =
teams was added (relevant if the big barrier on=20
   CHANGE TEAM is gotten rid of).=20

John: May I ask you to use this file (instead of the one I sent previously)=
 for inclusion in the WG5 N19?? result document? Thanks.

Best regards
Reinhold

> -----Urspr=FCngliche Nachricht-----
> Von: owner-sc22wg5@open-std.org [mailto:owner-sc22wg5@open-std.org] Im
> Auftrag von Bader, Reinhold
> Gesendet: Freitag, 15. M=E4rz 2013 18:58
> An: WG5
> Betreff: (SC22WG5.4937) WG5 ballot on first draft TS 18508, Additional Pa=
rallel
> Features in Fortran
>=20
> My answer to the question
>=20
> "Is N1967 ready for forwarding to
> SC22 as the DTS?" is
>=20
> 3) No, for the following reasons:
>=20
> There are a number of design problems that must be fixed. These impact
> internal consistency, usability, as well as performance of programs that
> use the new features described in the TS.
>=20
> The attached text file elaborates on the above.
>=20
> Best regards
> Reinhold

--_002_166ED263DF83324D9A3BA67FB6772B2B59F2B317BADWLRZSWMBX11a_
Content-Type: text/plain; name="comments_N1967.txt"
Content-Description: comments_N1967.txt
Content-Disposition: attachment; filename="comments_N1967.txt"; size=30834;
	creation-date="Wed, 27 Mar 2013 16:26:19 GMT";
	modification-date="Fri, 29 Mar 2013 10:46:50 GMT"
Content-Transfer-Encoding: base64

UGxlYXNlIGFuc3dlciB0aGUgZm9sbG93aW5nIHF1ZXN0aW9uICJJcyBOMTk2NyByZWFkeSBmb3Ig
Zm9yd2FyZGluZyB0byAKU0MyMiBhcyB0aGUgRFRTPyIgaW4gb25lIG9mIHRoZXNlIHdheXMuIAoK
MykgTm8sIGZvciB0aGUgZm9sbG93aW5nIHJlYXNvbnM6CgpUaGVyZSBhcmUgYSBudW1iZXIgb2Yg
ZGVzaWduIHByb2JsZW1zIHRoYXQgbXVzdCBiZSBmaXhlZC4gVGhlc2UgaW1wYWN0CmludGVybmFs
IGNvbnNpc3RlbmN5LCB1c2FiaWxpdHksIGFzIHdlbGwgYXMgcGVyZm9ybWFuY2Ugb2YgcHJvZ3Jh
bXMgdGhhdCAKdXNlIHRoZSBuZXcgZmVhdHVyZXMgZGVzY3JpYmVkIGluIHRoZSBUUy4KCk1vcmUg
ZGV0YWlsZWQgY29tbWVudHMgb24gTjE5NjcgYW5kIE4xOTY4IGZvbGxvdy4KCgooQSkgQ29tbWVu
dHMgb24gTjE5Njg6Cn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCihBLjEpIFNZTkMgVEVBTTogCgpJ
bnN0ZWFkIG9mIGFkZGluZyB0aGlzIGZlYXR1cmUsIEkgc3VnZ2VzdCBkZWxldGluZyB0aGUgd29y
ZHMKIiwgaW52b2x2aW5nIHRoZSBzeW5jaHJvbml6YXRpb24gb2YgYWxsIG1lbWJlcnMgb2YgdGhl
IHRlYW1zCiBhdCB0aGUgYmVnaW5uaW5nIGFuZCBlbmQgb2YgdGhlIGNvbnN0cnVjdC4iIGZyb20g
VDQgb2YgTjE5MzAuClRoaXMgd291bGQgbm90IG9ubHkgbWFrZSBhZGRpdGlvbiBvZiBTWU5DIFRF
QU0gc3VwZXJmbHVvdXMsIGJ1dAphbHNvIGFsbG93IHdyaXRpbmcgbXVjaCBtb3JlIHNjYWxhYmxl
IHByb2dyYW1zLCBhdCB0aGUgY29zdCBvZgpzb21lIHJlZGVzaWduIHdvcmsgb24gdGhlIHRlYW1z
IGZlYXR1cmUuIE1vcmUgZGV0YWlsIGlzIHByb3ZpZGVkCmluIHNlY3Rpb24gKEIuMSksIGJlbG93
LgoKKEEuMikgTE9DQUxfRVZFTlRfVFlQRToKCkkgY29uc2lkZXIgdGhpcyBpZGVhIHRvIGJlIGdv
b2Q7IGluIGZhY3QgSSB0aGluayB0aGF0IHRoaXMgcHJvdmlkZXMgdGhlIApmb3VuZGF0aW9uIGZv
ciBhZGRpbmcgY2VydGFpbiBhc3luY2hyb25vdXMgZmVhdHVyZXMgd2l0aG91dCAKbXVjaCBhZGRp
dGlvbmFsIGVmZm9ydC4gU29tZSAod2VsbCwgdG9uZ3VlLWluLWNoZWVrLCBiZWNhdXNlIGxpa2Vs
eQpleGNlZWRpbmcgV0c1IG1hbmRhdGUpIHN1Z2dlc3Rpb25zIGFsb25nIHRoZXNlIGxpbmVzIGFy
ZSBtYWRlIGZ1cnRoZXIgCmRvd24uCgoKKEEuMykgUmVzaWxpZW5jeToKClRoaXMgaGFzIGxvdHMg
b2YgcmFtaWZpY2F0aW9ucy4gSGVyZSB0d28gZ3V0IHJlYWN0aW9ucyB0aGF0IHB1bGwgaW4gCm9w
cG9zaXRlIGRpcmVjdGlvbnM6CiogSXQgaXMgdG8gYmUgZXhwZWN0ZWQgdGhhdCBvbiBsYXJnZS1z
Y2FsZSBzeXN0ZW1zIG9yIGNsb3VkLWxpa2UKICBpbmZyYXN0cnVjdHVyZXMgZmFpbHVyZXMgd2ls
bCBoYXBwZW4sIHNvIHNvbWUgZmFjaWxpdHkgdG8gZGVhbAogIHdpdGggdGhpcyB3aXRob3V0IHRl
cm1pbmF0aW5nIHRoZSBwcm9ncmFtIGFzIGEgd2hvbGUgd291bGQgYmUgbmljZS4KKiBBZnRlciBm
b3JjaW5nIHBhcmFsbGVsaXNtIGRvd24gYWxsIHByb2dyYW1tZXIncyB0aHJvYXRzLCB0aGUgSFBD
IAogIGluZHVzdHJ5IG5vdyBmb2xsb3dzIG9uIHdpdGggYW4gZXZlbiBiaWdnZXIgdG9hZDogVXNp
bmcgdGhpcyBmZWF0dXJlIAogIHRvIGJ1aWxkIHJlc2lsaWVudCBwcm9ncmFtcyB3aWxsIGluIGdl
bmVyYWwgbWFrZSB0aGVtIHNsb3dlciBhbmQgbW9yZSAKICByZXNvdXJjZS1odW5ncnk7IGFuZCBk
ZXNpZ25pbmcgcmVzaWxpZW50IGFsZ29yaXRobXMgaW4gbWFueSBjYXNlcwogIGlzIGFzIG11Y2gg
d29yayBhcyByZXN0cnVjdHVyaW5nIGZvciBwYXJhbGxlbGl6YXRpb24uClF1aXRlIGFwYXJ0IG9m
IHRoaXMgdGhlcmUgZXhpc3RzIHRoZSBpc3N1ZSBvZiBob3cgdG8gbWFrZSBmYWlsdXJlIGEKd2Vs
bC1kZWZpbmVkIGNvbmNlcHQuIE9uIGJhbGFuY2UgSSBiZWxpZXZlIHRoaXMgZmVhdHVyZSBzaG91
bGQKYmUgZGVmZXJyZWQgdG8gcG9zdC1UUyBjb25zaWRlcmF0aW9uLiBTb21lIGV4cGVyaWVuY2Ug
d2l0aCBhY3R1YWwKRlQtTVBJIGltcGxlbWVudGF0aW9ucyAoc3RpbGwgcXVpdGUgYSBiaXQgaW4g
dGhlIGZ1dHVyZSkgaXMgbmVlZGVkLCAKYW5kIEhQQyBwcm9ncmFtbWVyIGZlZWRiYWNrIHNob3Vs
ZCBiZSBjb2xsZWN0ZWQgYW5kIGV2YWx1YXRlZCAKYmVmb3JlIHRoaXMgc3R1ZmYgaXMgZGV2ZWxv
cGVkLCBsZXQgYWxvbmUgc2hpcHBlZC4gSSBhbHNvIGZ1bGx5IGFkbWl0CnRvIGEgcHJlZmVyZW5j
ZSBpbiBmaXhpbmcgdGhlIHNjYWxhYmlsaXR5IChhbmQgb3RoZXIpIHByb2JsZW1zIGJlZm9yZQpw
cm9jZWVkaW5nIHRvIHRoaXMgbm9uLXRyaXZpYWwgdGFzay4gQSBmYXN0IHByb2dyYW0gaXMgbGVz
cyBsaWtlbHkgCnRvIHJ1biBpbnRvIGEgaGFyZHdhcmUgZmFpbHVyZSEKCgooQikgTjE5NjcgLyBU
ZWFtczoKfn5+fn5+fn5+fn5+fn5+fn5+CgooQi4xKSBQZXJmb3JtYW5jZSBpbXBhY3Qgb2YgQ0hB
TkdFIFRFQU0KCiAgICBUaGUgYmlnZ2VzdCBwcm9ibGVtIEkgc2VlIGluIHRoZSBUUyBhcmUgdGhl
IHBlcmZvcm1hbmNlIGlzc3VlcyAKICAgIHJlc3VsdGluZyBmcm9tIHRoZSBzeW5jaHJvbml6YXRp
b24gcHJvcGVydGllcyBvZiB0aGUgQ0hBTkdFIFRFQU0gCiAgICBjb25zdHJ1Y3QuIFNpbmNlIHN5
bmNocm9uaXphdGlvbiBpcyBlbmZvcmNlZCBhY3Jvc3MgYWxsIGltYWdlcyBvZiAKICAgIHRoZSAo
YW5jZXN0b3IpIHRlYW0gdGhhdCBpbnZva2UgdGhlIGNvbnN0cnVjdCwgdGhlIGZvbGxvd2luZyAK
ICAgIHByb2dyYW0gLSBhIHNpbXBsZSByZXByZXNlbnRhdGl2ZSBmb3IgYSBsYXJnZSBudW1iZXIg
b2YgcG9zc2libGUgCiAgICBpbnRlcmVzdGluZyBzY2VuYXJpb3MgLSBkb2VzIG5vdCBhbGxvdyBm
b3Igb3ZlcmxhcHBpbmcgb2YgCiAgICBjb21tdW5pY2F0aW9uIGFuZCBjb21wdXRhdGlvbjoKCnBy
b2dyYW0gZGF0YV9mZWVkZXIKICB1c2UsIGludHJpbnNpYyA6OiBpc29fZm9ydHJhbl9lbnYKICBp
bXBsaWNpdCBub25lCiAgdHlwZSh0ZWFtX3R5cGUpIDo6IHJvbGUKICBpbnRlZ2VyIDo6IGksIGl0
ZXIsIG0sIGlkX3JvbGUKISBkZWNsYXJhdGlvbnMgZm9yIGFycmF5IGIoOikgYW5kIGNvYXJyYXkg
YSg6KVsqXQoKISBjcmVhdGUgdGhyZWUgdGVhbXMKICBpZiAodGhpc19pbWFnZSgpID09IDEpIHRo
ZW4KICAgIGlkX3JvbGUgPSAzICAgICAgICAgICAgICAgICAgICAgICAgISBtYXN0ZXIKICBlbHNl
CiAgICBpZF9yb2xlID0gMiAtIG1vZCh0aGlzX2ltYWdlKCksMikpICEgdHdvIHNsYXZlIHRlYW1z
CiAgZW5kIGlmCiAgZm9ybSBzdWJ0ZWFtICggaWRfcm9sZSwgcm9sZSApCiEgaXRlcmF0ZSB1c2lu
ZyB0aGUgc2FtZSB0ZWFtIGRlY29tcG9zaXRpb24gCiAgZG8gaT0xLCBpdGVyICAgICAgICAgICAg
IAohICAgY2FsY3VsYXRpb24gcGhhc2Ugb24gdGVhbSBJRHMgMSBhbmQgMjoKICAgIGNoYW5nZSB0
ZWFtICggcm9sZSApCiAgICAgICBzZWxlY3QgY2FzZSAoaWRfcm9sZSkKICAgICAgIGNhc2UgKDEp
CiAgICAgICAgIDogICAgICAgICAgICAgICAgICAhIGRvIHdvcmsgb24gYig6KSAKICAgICAgIGNh
c2UgKDIpCiAgICAgICAgIDogICAgICAgICAgICAgICAgICAhIGRvIGRpZmZlcmVudCB3b3JrIG9u
IGIoOikKICAgICAgICAgOiAgICAgICAgICAgICAgICAgICEgKFN0YXRlbWVudCBYKSAtIHNlZSBk
aXNjdXNzaW9uIGJlbG93CiAgICBlbmQgdGVhbQoKICAgIGlmICh0aGlzX2ltYWdlKCkgPT0gMSkK
ISB0aGUgc3RhdGVtZW50cyBpbnNpZGUgdGhpcyBibG9jayB3aXRoIHByZXNlbnQgc2VtYW50aWNz
IENBTk5PVAohIGJlIGRvbmUgY29uY3VycmVudGx5IHdpdGggdGhlIGV4ZWN1dGlvbiBvZiBhYm92
ZSBDSEFOR0UgVEVBTSwKISBwb3RlbnRpYWxseSBkZXN0cm95aW5nIHRoZSBzY2FsYWJpbGl0eSBv
ZiB0aGUgcHJvZ3JhbS4KICAgICAgOiAgISBwcmVwYXJlIGxvY2FsIGRhdGEgKGNvdWxkIGJlIGRv
bmUgYXMgY2FzZSAoMykgYWJvdmUsIAogICAgICA6ICAhIGJ1dCBpbiB0aGUgZ2VuZXJhbCBjYXNl
IG9uZSB0eXBpY2FsbHkgY2FuJ3QgbW92ZSB0aGlzKQogICAgICBkbyBtPTIsIG51bV9pbWFnZXMo
KQogICAgICAgICBhKDopW21dID0gLi4uICAgICAgISBwdXNoIGxvY2FsIGRhdGEKICAgICAgZW5k
IGRvICAgICAgCiAgICAgIHN5bmMgaW1hZ2VzICgqKQogICAgZWxzZQogICAgICBzeW5jIGltYWdl
cyAoMSkKICAgICAgYig6KSA9IGEoOikKICAgIGVuZCBpZgogIGVuZCBkbyAgICAgICAgICAgICAg
ICAgICAgISBuZXh0IGl0ZXJhdGlvbiB1c2VzIHVwZGF0ZWQgYig6KQogIDogCmVuZCBwcm9ncmFt
CgogIFN1Y2ggb3ZlcmxhcHBpbmcgaXMgY29uc2lkZXJlZCBlc3NlbnRpYWwgZm9yIHNjYWxhYmxl
IGltcGxlbWVudGF0aW9uIG9mICAKICBhIHZlcnkgbGFyZ2UgY2xhc3Mgb2YgcGFyYWxsZWwgYWxn
b3JpdGhtcy4KCiAgSWYgdGhlIENIQU5HRSBURUFNIG9ubHkgaGFkIHRoZSBlZmZlY3Qgb2YgU1lO
QyBNRU1PUlksIGltYWdlIDEgd291bGQgCiAgZmFsbCB0aHJvdWdoIHRoZSBibG9jaywgYW5kIHdv
dWxkIGhlbmNlIGJlIGFibGUgdG8gcGVyZm9ybSBkYXRhIAogIHRyYW5zZmVycyB0byBvdGhlciBp
bWFnZXMgY29uY3VycmVudGx5IHdpdGggdGhlIGNhbGN1bGF0aW9uIHBoYXNlLiAKICBTdWNoIGRh
dGEgdHJhbnNmZXJzIHdvdWxkIGJlIGZpbmUgYXMgbG9uZyBhcyB0aGUgYWNjZXNzZXMgdG8gdGhl
IAogIGNvYXJyYXkgImEiIG9iZXkgdGhlIHVzdWFsIHJ1bGVzIChzb21lIHdvcmRzIG1heSBiZSBu
ZWVkZWQgdG8gaW5kaWNhdGUKICB0aGF0IHRoZSBydWxlcyBhcHBseSBmb3IgYWxsIGltYWdlcyBv
ZiB0aGUgaW5pdGlhbCB0ZWFtIGV2ZW4KICBhY3Jvc3MgdGVhbSBleGVjdXRpb24gY29udGV4dCBj
aGFuZ2VzKS4gT2YgY291cnNlLCB0aGUgCiAgU1lOQyBJTUFHRVMgc3RhdGVtZW50cyBuZWFyIHRo
ZSBlbmQgb2YgdGhlIGNvZGUgYXJlIG5lY2Vzc2FyeQogIHdoYXRldmVyIHRoZSBzeW5jaHJvbml6
YXRpb24gc2VtYW50aWNzIG9mIENIQU5HRSBURUFNIGFyZS4gCgogIEZvciB0aGUgYWJvdmUgc2Nl
bmFyaW8sIGl0IHdvdWxkIGFsc28gYmUgc3VmZmljaWVudCB0byByZXF1aXJlIAogIHN5bmNocm9u
aXphdGlvbiBvbmx5IHdpdGhpbiBlYWNoIG9mIHRoZSB0aHJlZSB0ZWFtcyBkZWZpbmVkIGJ5IHRo
ZSAKICBkZWNvbXBvc2l0aW9uIHN0b3JlZCBpbiAicm9sZSIuIEhvd2V2ZXIsIGZvciBhbGdvcml0
aG1zIHRoYXQgYXJlIAogIHN0cm9uZ2x5IGxvYWQgaW1iYWxhbmNlZCB3aXRoaW4gZWFjaCBzdWJ0
ZWFtLCB3aGlsZSBub3QgcmVxdWlyaW5nCiAgYWxsb2NhdGlvbiBvciBkZWFsbG9jYXRpb24gb2Yg
Y29hcnJheXMgd2l0aGluIHRoZSBzdWJ0ZWFtLCBhbgogIG9ubHkgc2xpZ2h0bHkgcmVkdWNlZCBz
eW5jaHJvbml6YXRpb24gcmVxdWlyZW1lbnQgbWF5IHN0aWxsIGxlYWQgdG8gCiAgc2lnbmlmaWNh
bnQgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gdGhhdCBjYW5ub3QgYmUgd29ya2VkIGFyb3VuZCAK
ICBieSB0aGUgcHJvZ3JhbW1lciAoZS5nLiwgdmlhIHRoZSB1c2Ugb2YgZXZlbnRzKS4gVGhlIHBl
cmZvcm1hbmNlIAogIGltcGFjdCB3aWxsIHR5cGljYWxseSBjb3JyZWxhdGUgd2l0aCB0ZWFtIHNp
emUuCgogIFRoZXJlZm9yZSwgbXkgc3Ryb25nIHByZWZlcmVuY2UgaXMgdG8gcmV0YWluIGNvbnNp
c3RlbmN5IHdpdGggdGhlIAogIGxvb3NlbHkgYXN5Y2hyb25vdXMgaW1hZ2UgZXhlY3V0aW9uIG1v
ZGVsIG9uIHRoZSBsZXZlbCBvZiB0ZWFtcyBieSAKICBvbmx5IGltcG9zaW5nIHRoZSBlZmZlY3Qg
b2YgU1lOQyBNRU1PUlkgYXQgZW50cnkgYW5kIGV4aXQgb2YgYSAKICBDSEFOR0UgVEVBTSBibG9j
aywgd2hpbGUgc3RpbGwgcmVxdWlyaW5nIHRoYXQgYWxsIHBhcmVudCB0ZWFtIAogIGltYWdlcyBt
dXN0IGV4ZWN1dGUgdGhlIENIQU5HRSBURUFNLiAKCiAgVGhlIGNvbnNlcXVlbmNlcyBvZiB0aGlz
IGNoYW5nZSBtdXN0IG9mIGNvdXJzZSBiZSBjb25zaWRlcmVkIGFuZCAKICB0YWtlbiBjYXJlIG9m
LiBBcyBmYXIgYXMgSSBjYW4gc2VlLCB0aGUgZm9sbG93aW5nIGlzc3VlcyBhcmlzZToKCiAgKDEp
IEEgc3VidGVhbS1hbGxvY2F0ZWQgY29hcnJheSBtdXN0IGJlIGltcGxpY2l0bHkgZGVhbGxvY2F0
ZWQgCiAgICAgIEluIHRoaXMgY2FzZSwgc3luY2hyb25pc2F0aW9uIG11c3Qgb2NjdXIgdXBvbiBl
bmNvdW50ZXJpbmcgdGhlCiAgICAgIEVORCBURUFNIHN0YXRlbWVudCwgYnV0IG9ubHkgb24gYW55
IHN1YnRlYW0gdGhhdCBkb2VzCiAgICAgIGEgZGVhbGxvY2F0aW9uLiBUaGlzIGlzIGFuYWxvZ291
cyB0byB0aGUgZXN0YWJsaXNoZWQKICAgICAgYmVoYXZpb3VyIGZvciB1bnNhdmVkIGxvY2FsIGFs
bG9jYXRhYmxlIGNvYXJyYXlzIGluIGJsb2NrIAogICAgICBjb25zdHJ1Y3RzIG9yIHN1YnByb2dy
YW1zLiBJdCBtYXkgYmUgdXNlZnVsIHRvIGFkZCAgCiAgICAgIGEgZGlhZ25vc3RpYyBmb3IgdGhp
cyB2aWEgYW4gb3B0aW9uYWwgYXJndW1lbnQgCiAgICAgIFNZTkNFRF9ERUFMTE9DQVRJT04gb2Yg
RU5EIFRFQU0gCiAgICAgIChhbmQgcGVyaGFwcyBvdGhlciBFTkQgPC4uLj4gc3RhdGVtZW50cykg
dGhhdCByZXR1cm5zIHRoZSAKICAgICAgbnVtYmVyIG9mIGltcGxpY2l0IGNvYXJyYXkgZGVhbGxv
Y2F0aW9ucyB0aGF0IGhhdmUgb2NjdXJyZWQgCiAgICAgIG9uIHRoZSBleGVjdXRpbmcgaW1hZ2Uu
CgogICgyKSBEZWZpbml0aW9uIHN0YXR1cyBvZiB0ZWFtIGFyZ3VtZW50CiAgICAgIFRoaXMgaXNz
dWUgaXMgZGVhbHQgd2l0aCB2aWEgY2hhbmdlcyB0byB0aGUgc2VtYW50aWNzIG9mIAogICAgICBG
T1JNIFRFQU0gZGVzY3JpYmVkIGluIChCLjMuMikgYmVsb3cuCgogICgzKSBDb25zaXN0ZW5jeSBp
c3N1ZXMgd2l0aCBtZW1vcnkgbW9kZWw/CiAgICAgIEFzc3VtZSB0aGF0LCBpbiB0aGUgYWJvdmUg
Y29kZSwgdGhlIHVuc3BlY2lmaWVkIHN0YXRlbWVudAogICAgICBpbiB0aGUgbGluZSBjb21tZW50
ZWQgd2l0aCAoc3RhdGVtZW50IFgpIHJlYWRzCiAgICAgIC4uLiA9IGEoOikKICAgICAgV2l0aCB0
aGUgcHJlc2VudGx5IGRlZmluZWQgc3luY2hyb25pemF0aW9uIHNlbWFudGljcywgdGhpcwogICAg
ICB3b3VsZCBiZSAoZm9ybWFsbHkpIGZpbmUuIFdpdGggdGhlIGxvb3NlbmVkIHNlbWFudGljcyBz
dWdnZXN0ZWQgCiAgICAgIGJ5IG1lLCBhIHJhY2UgY29uZGl0aW9uIGNvdWxkIG1hbmlmZXN0LiBU
aGUgZGViYXRlIGhlcmUgaXMgd2hldGhlciAKICAgICAgdGhpcyBtdXN0IGJlIGNvbnNpZGVyZWQg
YSBjb25zaXN0ZW5jeSBpc3N1ZSB3aXRoIHRoZSBtZW1vcnkgCiAgICAgIG1vZGVsIGJlY2F1c2UK
ICAgICAgKiB3aXRoaW4gdGhlIGNvbnN0cnVjdCwgdGhlIGNvaW5kaWNlcyBvZiBhIGFyZSBkaWZm
ZXJlbnQgCiAgICAgICAgdGhhbiB0aG9zZSBvdXRzaWRlLCBhbmQKICAgICAgKiBpdCBzaG91bGQg
YmUgZW5mb3JjZWQgdGhhdCBubyBtb2RpZmljYXRpb25zIGZyb20gb3V0c2lkZQogICAgICAgIHRo
ZSBjdXJyZW50IHRlYW0gc2hvdWxkIGJlIHBvc3NpYmxlIG9uIGFueSBkYXRhIG9iamVjdAogICAg
ICAgIGRlZmluZWQgaW5zaWRlIHRoZSBjdXJyZW50IHRlYW0KICAgICAgTXkgb3BpbmlvbiBpcyB0
aGF0IHRoZSBpbWFnZSBpbmRleCByZW1hcHBpbmcgaXMgYSBwdXJlbHkKICAgICAgdmlydHVhbCBw
cm9jZXNzIHRoYXQgZG9lcyBub3QgaW1wYWN0IG9iamVjdCBpZGVudGl0eSwgYW5kIHRoYXQKICAg
ICAgdGhlIGRpZmZlcmVuY2Ugd2l0aCByZXNwZWN0IHRvIHNhZmV0eSBhZ2FpbnN0IG1vZGlmaWNh
dGlvbiBmcm9tCiAgICAgICJoaWRkZW4iIGltYWdlcyBiZXR3ZWVuIHN1YnRlYW0tbG9jYWwgYW5k
IHBhcmVudC10ZWFtLWluaGVyaXRlZAogICAgICBjb2FycmF5cyBzaG91bGQgYmUgdG9sZXJhdGVk
IGZvciB0aGUgc2FrZSBvZiBiZWluZyBhYmxlIHRvIAogICAgICB3cml0ZSBlZmZpY2llbnRseSBl
eGVjdXRpbmcgY29kZS4gRXZlbiBpbiB0aGUgcHJlc2VudCBjb2FycmF5CiAgICAgIG1vZGVsLCB0
aGVyZSBhcmUgbWFueSB3YXlzIHRvIHdyaXRlIGNvZGUgd2l0aCByYWNlIGNvbmRpdGlvbnMsIAog
ICAgICBhbmQgdGhlIHByb2JsZW0gZGVzY3JpYmVkIGFib3ZlIGlzIG5vdCBpbiBhbnkgZnVuZGFt
ZW50YWwgd2F5IAogICAgICBkaWZmZXJlbnQgZnJvbSB0aGUgdXN1YWwgb25lcyBhcmlzaW5nIGZy
b20gaW5jb3JyZWN0IG9yIAogICAgICBpbnN1ZmZpY2llbnQgdXNlIG9mIHN5bmNocm9uaXphdGlv
biBzdGF0ZW1lbnRzLiBJdCBtdXN0IGJlIAogICAgICBzb2x2ZWQgYnkgYSBjb21iaW5hdGlvbiBv
ZiAiZXN0YWJsaXNoZWQgYmVzdCBwcmFjdGljZXMiIGFuZCAKICAgICAgdG9vbHMgdGhhdCBhbGxv
dyB0byBpZGVudGlmeSBhbmQgaXNvbGF0ZSByYWNlIGNvbmRpdGlvbnMuCiAgICAgICJCZXN0IHBy
YWN0aWNlcyIgd2lsbCBmb3IgQ0hBTkdFIFRFQU0gcmVhZDogIklmIHlvdSBhY2Nlc3MKICAgICAg
Y29hcnJheXMgZGVmaW5lZCBpbiBhIHBhcmVudCB0ZWFtIChvciBwb2ludGVycyBhc3NvY2lhdGVk
CiAgICAgIHdpdGggc3VjaCBjb2FycmF5cyBvciBzdWJvYmplY3RzIG9mIHRoZW0pLCBzYW5kd2lj
aCB5b3VyIAogICAgICBDSEFOR0UgVEVBTSBjb25zdHJ1Y3QgYmV0d2VlbiB0d28gU1lOQyBBTEwg
c3RhdGVtZW50cy4gCiAgICAgIE90aGVyd2lzZSAtIGhhbmRzIG9mZiB0aGVtLiIKICAgCiAgICAg
IFByZXNlbnRseSwgSSBkbyBub3QgYmVsaWV2ZSB0aGF0IHRoZXJlIGFyZSBhbnkgZnVuZGFtZW50
YWwgCiAgICAgIHByb2JsZW1zIHdpdGggY29hcnJheSBhbGxvY2F0aW9ucyBhY3Jvc3MgQ0hBTkdF
IFRFQU0gYm91bmRhcmllcwogICAgICAodGhlIHByb2JsZW0gZGlzY3Vzc2VkIGluIChCLjYpIGJl
bG93IGlzIG9mIGEgZGlmZmVyZW50IG5hdHVyZSkuCiAgICAgIFRoZSBzYW1lIGFwcGxpZXMgZm9y
IGNvbGxlY3RpdmUgc3luY2hyb25pemF0aW9uIHN0YXRlbWVudHMuCiAgICAgIEhvd2V2ZXIsIEFM
TCBwYXJ0aWFsLXN5bmNocm9uaXphdGlvbiBjb25zdHJ1Y3RzIHNob3VsZCBiZSAKICAgICAgY2hl
Y2tlZDsgcG9zc2libHkgc29tZSBhZGRpdGlvbmFsIHJlc3RyaWN0aW9ucyBuZWVkIHRvIGJlIGFk
ZGVkIAogICAgICBpbiBvcmRlciB0byBhdm9pZCBzZW1hbnRpYyBpbmNvbnNpc3RlbmNpZXMgdGhh
dCBtaWdodCBhcmlzZSBpZiAKICAgICAgc3VjaCBjb25zdHJ1Y3RzIGNyb3NzIENIQU5HRSBURUFN
IGJvdW5kYXJpZXMuIEEgZGlzY3Vzc2lvbiBvZiAKICAgICAgdGhpcyBpcyBpbiBzZWN0aW9uIChG
KSBiZWxvdy4KCiAgTm90ZSB0aGF0IGlmIHRoZSBzeW5jaHJvbmlzYXRpb24gcmVxdWlyZW1lbnRz
IG9uIENIQU5HRSBURUFNIGFyZSAKICBsb29zZW5lZCBhcyBpbmRpY2F0ZWQgYWJvdmUsIHRoZSBz
dGF0ZW1lbnQKCiAgU1lOQyBURUFNIChNKSAKCiAgd291bGQgYmUgZXF1aXZhbGVudCB0byAKCiAg
Q0hBTkdFIFRFQU0gKE0pIDsgU1lOQyBBTEwgOyBFTkQgVEVBTQoKCihCLjIpIE1pc3Npbmcgc3Vw
cG9ydCBmb3IgY29tcHV0YXRpb25hbCBkb21haW5zCgogIFRoZSBGT1JNIFNVQlRFQU0gc3RhdGVt
ZW50IHByZXNlbnRseSBhbGxvd3MgdG8gZXN0YWJsaXNoIHN1YnRlYW1zIAogIHZpYSBwdXJlbHkg
YWxnb3JpdGhtLWRyaXZlbiBtZXRob2RzLiBIb3dldmVyLCBmb3IgcGVyZm9ybWFuY2UgCiAgb3B0
aW1pemF0aW9uIHB1cnBvc2VzIGl0IHdvdWxkIGJlIHZlcnkgdXNlZnVsIHRvIGJlIGFibGUgdG8g
CiAgZ2VuZXJhdGUgc3VidGVhbXMgb3B0aW1pemVkIGZvciBzcGVjaWZpYyBtYWNoaW5lIGFyY2hp
dGVjdHVyZXMuIAogIEZvciBleGFtcGxlLCBvbiBhIGNsdXN0ZXIgb2YgU01QcyBpdCB3aWxsIG9m
dGVuIGJlIG1vcmUgZWZmaWNpZW50IHRvIAogIHVzZSB0ZWFtcyB3aG9zZSBtZW1iZXIgaW1hZ2Vz
IGV4YWN0bHkgbWF0Y2ggdGhlIGNvcmVzIGluIGFuIFNNUCwgCiAgbW9zdCBlc3BlY2lhbGx5IHNv
IGlmIHRoZSBGb3J0cmFuIHJ1biB0aW1lIGlzIGF3YXJlIG9mIHRoZSAKICBkaWZmZXJlbmNlIGJl
dHdlZW4gY29tbXVuaWNhdGlvbiAoYXMgd2VsbCBhcyBzeW5jaHJvbml6YXRpb24pIGFjcm9zcyAK
ICBhbmQgd2l0aGluIFNNUHMuCgogIFRoZSBzaW1wbGVzdCBwb3NzaWJsZSBhYnN0cmFjdGlvbiBm
b3IgdGhpcyBtaWdodCBiZSB0aGUgdXNlCiAgb2YgYW4gb3B0aW9uYWwgYXJndW1lbnQgRE9NQUlO
IHRvIHRoZSBGT1JNIFNVQlRFQU0gc3RhdGVtZW50LiAKICBUaGUgdmFsdWVzIGFsbG93ZWQgZm9y
IHRoZSBhcmd1bWVudCB3b3VsZCBiZSBkZWZhdWx0IGludGVnZXJzIAogIGJldHdlZW4gMSBhbmQg
YW4gaW1wbGVtZW50YXRpb24tIGFuZCBlbnZpcm9ubWVudC1kZXBlbmRlbnQgbWF4aW11bQogIERP
TUFJTl9MRVZFTFMgKGEgcHJvdGVjdGVkIGludGVnZXIgYWNjZXNzaWJsZSB2aWEgSVNPX0ZPUlRS
QU5fRU5WKS4gCiAgSWYgRE9NQUlOIGlzIHNwZWNpZmllZCwgdGhlIDxzdWJ0ZWFtLWlkPiB3b3Vs
ZCBuZWVkIHRvIHRha2UgYSAKICBkZWZpbmFibGUgZW50aXR5IGFzIGFyZ3VtZW50LCB3aGljaCBp
cyBwcm92aWRlZCBhIHJldHVybiB2YWx1ZS4gCiAgSW5jcmVhc2luZyB2YWx1ZXMgb2YgRE9NQUlO
IHNob3VsZCBjb3JyZXNwb25kIHRvIGRlY3JlYXNpbmcgCiAgcGVyZm9ybWFuY2UgZWZmaWNpZW5j
eSBvZiBkYXRhIHRyYW5zZmVycyBhcyB3ZWxsIGFzIHN5bmNocm9uaXphdGlvbgogIHN0YXRlbWVu
dHMgKGNvcnJlc3BvbmRpbmcgdG8gZGVjcmVhc2luZyBiYW5kd2lkdGhzIGFuZCAKICBpbmNyZWFz
aW5nIGxhdGVuY2llcykuIFRoZSB0ZWFtcyBhcmUgZ2l2ZW4gdGhlIElEcyAxLC4uLiwKICBOVU1f
VEVBTVMoPHRlYW0gb2JqZWN0PiksIHdoZXJlIE5VTV9URUFNUygpIGlzIGEgbmV3IGludHJpbnNp
Yy4KCiAgVGhlIHJlYXNvbiB0aGF0IGFuIGVudmlyb25tZW50IGRlcGVuZGVuY3kgbXVzdCBiZSB0
b2xlcmF0ZWQgaXMKICB0aGF0IGl0IGlzIGV4cGVjdGVkIHRoYXQgY29hcnJheSBwcm9ncmFtcyBz
aG91bGQgaW4gcHJhY3RpY2UgYmUgCiAgYWJsZSB0byBpbnRlcm9wZXJhdGUgd2l0aCBvdGhlciBw
YXJhbGxlbCBwYXJhZGlnbXMsIHBvc3NpYmx5IGluIAogIHZhcmlvdXMgbWFubmVycy4gRnVydGhl
cm1vcmUsIGFkZGl0aW9uYWwgaGFyZHdhcmUgYXNwZWN0cyAKICAobGlrZSB1c2Ugb2YgaHlwZXJ0
aHJlYWRpbmcgY29yZXMpIG9yIHRoZSB1c2VkIGJhdGNoIHF1ZXVlaW5nIAogIHN5c3RlbSBtYXkg
aGF2ZSBhbiBpbXBhY3QuIE5vbmUgb2YgdGhlc2UgZGV0YWlscyBzaG91bGQgb2YgCiAgY291cnNl
IGJlIHJlZmVycmVkIHRvIGluIG5vcm1hdGl2ZSB0ZXh0LgogIAoKKEIuMykgU2hhcnBlbmluZyBv
ZiBURUFNX1RZUEUgb2JqZWN0IHNlbWFudGljcyBpcyBuZWVkZWQKCiAgVGhlIGRlZmluaXRpb25z
IG9mIFRFQU1fVFlQRSwgRk9STSBTVUJURUFNIGFuZCBDSEFOR0UgVEVBTSBhcHBlYXIgdG8KICBp
bXBseSB0aGF0IGFuIG9iamVjdCBvZiB0eXBlIFRFQU1fVFlQRSBpcywgaW4gYSBzZW5zZSwgYW4g
b2JqZWN0CiAgZGlzdHJpYnV0ZWQgYW1vbmcgYWxsIGltYWdlcyBvZiB0aGUgYW5jZXN0b3IgdGVh
bSB0aGF0IGRlc2NyaWJlcwogIGEgdGVhbSBkZWNvbXBvc2l0aW9uLiBIb3dldmVyLCB0aGlzIGlz
IG5vdCBleHBsaWNpdGx5IHNwZWxsZWQgb3V0LCAKICBhbmQgSSBzdXNwZWN0IHRoYXQgdGhlIHNl
bWFudGljcyBhcmUgYXQgdGhpcyBwb2ludCB0b28gbG9vc2VseSAgCiAgc3BlY2lmaWVkLCBpbnZp
dGluZyBhIG51bWJlciBvZiBtaXN1c2VzLgoKICBGb3IgZXhhbXBsZSwgaXQgYXBwZWFycyB0byBi
ZSBwZXJtaXR0ZWQgdG8gd3JpdGUgdGhlIGZvbGxvd2luZzoKCiAgdHlwZSh0ZWFtX3R5cGUpIDo6
IHQoMikKICBpbnRlZ2VyIDo6IGlkCgogIGlkID0gMiAtIG1vZCh0aGlzX2ltYWdlKCksMikKICBm
b3JtIHN1YnRlYW0gKCBpZCwgdChpZCkgKQoKICB3aGljaCBqdXN0IGFib3V0IG1heSBtYWtlIHNl
bnNlIChiZWNhdXNlIHRoZSB0ZWFtIHZhcmlhYmxlIHVzZWQKICBpcyBjb25zaXN0ZW50IHdpdGgg
dGhlIGlkZW50aWZpZXIpLCBidXQgaXQgaXMgZWFzeSB0byBnZW5lcmF0ZQogIHNldHVwcyB3aGVy
ZSBkaWZmZXJlbnQgdGVhbSB2YXJpYWJsZXMgYXJlIGFzc29jaWF0ZWQgd2l0aCAKICBkaWZmZXJl
bnQgaW1hZ2VzIG9mIHRoZSBzYW1lIHRlYW0uIEZ1cnRoZXJtb3JlLCBhIHN0YXRlbWVudAoKICBj
aGFuZ2UgdGVhbSAodCgxKSkgCgogIGZvbGxvd2luZyB0aGUgYWJvdmUgdGVhbSBmb3JtYXRpb24g
aXMgbm90IGNvbmZvcm1pbmcgc2luY2UgCiAgdCgxKSBpcyB1bmRlZmluZWQgb24gZXZlcnkgc2Vj
b25kIGltYWdlLCBhbmQgZm9yIG1vcmUgCiAgY29sb3JmdWwgc2V0dXBzICh1c2luZyBtYW55IHRl
YW0gb2JqZWN0cykgaXQgd2lsbCAKICBiZSBldmVuIGVhc2llciB0byBwcm9kdWNlIGluY29ycmVj
dCBDSEFOR0UgVEVBTSBzdGF0ZW1lbnRzLgogIEFsc28sIGZyb20gdGhlIGltcGxlbWVudGF0aW9u
IHBvaW50IG9mIHZpZXcsIEkgd291bGQgZXhwZWN0IHRoYXQKICAoZm9yIHNjYWxhYmlsaXR5IHJl
YXNvbnMpIG5vdCBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSB0ZWFtIHNob3VsZAogIGJlIHJlcXVp
cmVkIHRvIGJlIHN0b3JlZCBvbiBlYWNoIGltYWdlLCBzbyB0aGUgaW1wbGVtZW50YXRpb24gCiAg
c2hvdWxkIGhhdmUgdGhlIGZyZWVkb20gdG8gdXNlIHNvbWV0aGluZyBzaW1pbGFyIHRvIGEgY29h
cnJheSAKICB0eXBlIGNvbXBvbmVudCBmb3IgVEVBTV9UWVBFIChtYXliZSByZXN1bHRpbmcgaW4g
YSByZXF1aXJlbWVudAogIHRoYXQgdGVhbXMgbXVzdCBiZSBzY2FsYXJzLCBvciBhdCBtb3N0IGFy
cmF5cyB3aXRoIGEgc3RhdGljYWxseQogIGRlZmluZWQgc2l6ZSkuIAoKICBUaGVyZWZvcmUsIEkg
c3VnZ2VzdCBhZGRpbmcgc29tZSBhZGRpdGlvbmFsIHByb3BlcnRpZXMgYW5kIAogIHJlc3RyaWN0
aW9ucyB0byBURUFNX1RZUEUgYW5kIGl0cyB1c2FnZToKCiAgKEIuMy4xKSBlYWNoIEZPUk0gU1VC
VEVBTSBtdXN0IHJlZmVyZW5jZSB0aGUgc2FtZSBvYmplY3Qgb2YgCiAgICAgIHR5cGUgVEVBTV9U
WVBFIG9uIGV2ZXJ5IGltYWdlLiBUaGUgc2FtZSBhcHBsaWVzIAogICAgICBmb3IgZWFjaCBDSEFO
R0UgVEVBTSBzdGF0ZW1lbnQuIAogICAgICBGT1JNIFNVQlRFQU0gZGVmaW5lcyBhIGRlY29tcG9z
aXRpb24sIGFuZCBDSEFOR0UgVEVBTSAKICAgICAgYWN0aXZhdGVzIHRoZSBleGVjdXRpbmcgaW1h
Z2UncyB0ZWFtIChsb2NhbGx5KSBhcyBzb29uIAogICAgICBhcyBpdCBlbnRlcnMgdGhlIGNvbnN0
cnVjdC4KICAgICAgKFRoaXMgZmVhdHVyZSBpcyBhbHNvIG5lZWRlZCB0byBtYWtlIE5VTV9URUFN
UygpIC0gc2VlCiAgICAgIChCLjIpIGFib3ZlIC0gd2VsbC1kZWZpbmVkKS4gCgogIChCLjMuMikg
SWYgdGhlIHN5bmNocm9uaXphdGlvbiByZXF1aXJlbWVudHMgb2YgQ0hBTkdFIFRFQU0gYXJlIAog
ICAgICBsb29zZW5lZCBhcyBkZXNjcmliZWQgaW4gKEIuMSkgYWJvdmUsIEZPUk0gU1VCVEVBTSBt
dXN0IAogICAgICBwZXJmb3JtIHN5bmNocm9uaXphdGlvbiBvZiBhbGwgZXhlY3V0aW5nIGltYWdl
cyBhdCB0aGUKICAgICAgZW5kIG9mIGl0cyBpbnZvY2F0aW9uIGluIG9yZGVyIHRvIGFzc3VyZSB0
aGUgZGVjb21wb3NpdGlvbgogICAgICBpcyBmdWxseSBkZWZpbmVkIHdoZW4gdGhlIENIQU5HRSBU
RUFNIGNvbnN0cnVjdCBpcyBmaXJzdCAKICAgICAgZW5jb3VudGVyZWQgYnkgYW4gaW1hZ2U7IGl0
IG1heSBiZSBtb3JlIGFwcHJvcHJpYXRlIHRvCiAgICAgIGNvbnZlcnQgdGhlIHN0YXRlbWVudCBp
bnRvIGFuIGltcHVyZSBlbGVtZW50YWwgY29sbGVjdGl2ZSAKICAgICAgc3Vicm91dGluZSwgYmVj
YXVzZSBzeW5jaHJvbml6YXRpb24gaXMgdGhlbiBvbmx5IGluY3VycmVkCiAgICAgIG9uY2UgZXZl
biBpZiBhIGxhcmdlciBudW1iZXIgb2Ygc3VidGVhbSBkZWNvbXBvc2l0aW9ucyBpcwogICAgICBu
ZWVkZWQuIChJdCBtYXkgYmUgc3VmZmljaWVudCB0byBzeW5jaHJvbml6ZSBvbiBhIHBlci0KICAg
ICAgc3VidGVhbSBiYXNpcywgYnV0IHRoaXMgcHJvYmFibHkgY29tcGxpY2F0ZXMgdGhlIAogICAg
ICBzcGVjaWZpY2F0aW9uKS4KICAgICAgRm9yIGFuYWxvZ291cyByZWFzb24sIHN5bmNocm9uaXph
dGlvbiBtdXN0IG9jY3VyIGJlZm9yZSBhCiAgICAgIHRlYW0gb2JqZWN0IGlzIGZpbmFsaXplZCBi
eSBnb2luZyBvdXQgb2Ygc2NvcGUuIFRoZXJlIGlzIAogICAgICBub3cgbm8gZXhwbGljaXQgZmFj
aWxpdHkgaW4gcGxhY2UgdG8gZG8gdGhpcywgYnV0IEkgY29uc2lkZXIgCiAgICAgIGl0IHVzZWZ1
bCB0byBkZWZpbmUgYSBERUxFVEUgU1VCVEVBTSBpbiBvcmRlciB0bywgc2F5LCBiZSBhYmxlIAog
ICAgICB0byByZWN5Y2xlIGEgc2luZ2xlIHRlYW0gb2JqZWN0IGlmLCBlLmcuLCB0ZWFtIHNpemVz
IGFyZQogICAgICBzdXBwb3NlZCB0byB2YXJ5IGFuIGluZGVmaW5pdGUgbnVtYmVyIG9mIHRpbWVz
IHRocm91Z2hvdXQgCiAgICAgIGl0ZXJhdGVkIGV4ZWN1dGlvbiBvZiBwYXJ0IG9mIHRoZSBwcm9n
cmFtLiBBbHNvLCB0aGUKICAgICAgbmVjZXNzYXJ5IHN5bmNocm9uaXphdGlvbiBpcyB0aGVuIGV4
cGxpY2l0bHkgdmlzaWJsZS4KCiAgU2luY2UgYSB0ZWFtIGRlY29tcG9zaXRpb24gdXN1YWxseSBj
cmVhdGVzIG1vcmUgdGhhbiBvbmUgc3VidGVhbSwgCiAgSSBhbHNvIHN1Z2dlc3QgY2hhbmdpbmcg
dGhlIEZPUk0gU1VCVEVBTSBub21lbmNsYXR1cmUgdG8gCiAgRk9STSBTVUJURUFNUy4KCihCLjQp
IGFkZHJlc3NpbmcgY29hcnJheXMgZGVmaW5lZCBpbiBhbmNlc3RvciB0ZWFtCgpBc3N1bWluZyB0
aGUgaW5pdGlhbCB0ZWFtIGV4ZWN1dGluZyB0aGUgZm9sbG93aW5nIGNvZGUgY29udGFpbnMgZm91
ciBpbWFnZXMuIAoKaW50ZWdlciA6OiBhWypdCnR5cGUodGVhbV90eXBlKSA6OiB0CgphID0gdGhp
c19pbWFnZSgpCnN5bmMgYWxsCgppZCA9IDEKaWYgKHRoaXNfaW1hZ2UoKSA9PSAzKSBpZCA9IDIK
Zm9ybSBzdWJ0ZWFtKGlkLCB0KQoKY2hhbmdlIHRlYW0odCkKICBzZWxlY3QgY2FzZShpZCkKICBj
YXNlICgxKQogICAgaWYgKHRoaXNfaW1hZ2UoKSA9PSAyKSB3cml0ZSgqLCopIGEsIGFbM10KICAg
IGlmICh0aGlzX2ltYWdlKCkgPT0gMykgd3JpdGUoKiwqKSBhLCBhWzJdCiAgZW5kIHNlbGVjdApl
bmQgdGVhbQoKUXVlc3Rpb25zOgoKKEIuNC4xKSBJcyB0aGUgY29pbmRleGVkIHJlZmVyZW5jZSB0
byB0aGUgY29hcnJheSAiYSIgaW5oZXJpdGVkIGZyb20gdGhlCiAgICBhbmNlc3RvciB0ZWFtIGlu
dGVuZGVkIHRvIGJlIGNvbmZvcm1pbmc/CklmIHllcywgCihCLjQuMikgV2hhdCBleGFjdGx5IHdp
bGwgdGhlIHdyaXRlIHN0YXRlbWVudHMgcHJpbnQ/CihCLjQuMykgQXNzdW1pbmcsIHRoYXQgZnJv
bSBhbnkgaW1hZ2UgZXhlY3V0aW5nIHRoZSBjYXNlKDEpIGJsb2NrLCAKICAgIG9uZSB3aXNoZXMg
dG8gYWNjZXNzIHRoYXQgb2JqZWN0IGNvcnJlc3BvbmRpbmcgdG8gYVsyXSBpbiB0aGUgYW5jZXN0
b3IKICAgIHRlYW0uIEhvdyBjYW4gdGhpcyBiZSBkb25lPwpGdXJ0aGVybW9yZSwgCihCLjQuNCkg
SXMgaXQgYWxsb3dlZCB0byB1c2UgdGhlIERJU1RBTkNFIGFyZ3VtZW50IGluIFRISVNfSU1BR0Uo
KSBpZiBhIGNvYXJyYXkKICAgIGFyZ3VtZW50IGlzIGFsc28gc3BlY2lmaWVkPwoKVGhlbiwgY29u
c2lkZXIgdGhlIGZvbGxvd2luZyBjb2RlICg0IGltYWdlcyk6CgppbnRlZ2VyLCBhbGxvY2F0YWJs
ZSA6OiBiWzosOl0KdHlwZSh0ZWFtX3R5cGUpIDo6IHUKCmFsbG9jYXRlKGJbMiwqXSwgc291cmNl
PXRoaXNfaW1hZ2UoKSkKCmlkID0gMQppZiAodGhpc19pbWFnZSgpID09IDMpIGlkID0gMgpmb3Jt
IHN1YnRlYW0oaWQsIHUpCgpjaGFuZ2UgdGVhbSh1KQogIHNlbGVjdCBjYXNlKGlkKQogIGNhc2Ug
KDEpCiAgICBpZiAodGhpc19pbWFnZSgpID09IDMpIHdyaXRlKCosKikgYlsxLDJdCiAgZW5kIHNl
bGVjdAplbmQgdGVhbQoKUXVlc3Rpb246IAooQi40LjUpIEFzc3VtaW5nIChhcyBwYXJ0IG9mIHRo
ZSBhbnN3ZXIgdG8gcXVlc3Rpb24gQi40LjIgYWJvdmUpIHRoYXQgCiAgICAgICAgdGhlIGltYWdl
IGluZGljZXMgYXJlIG1hcHBlZCBpbnRvIHRoZSB0ZWFtIGFzIDEgLT4gMSwgMiAtPiAyLCAKICAg
ICAgICA0IC0+IDMsIGhvdyBhcmUgdGhlIGNvaW5kaWNlcyBvZiB0aGUgY29yYW5rIDIgY29hcnJh
eSAiYiIgbWFwcGVkPyAKCk9uZSBjb3VsZCBzaW1wbHkgY29tcHJlc3MgdGhlIGNvaW5kaWNlcyBp
bnRvIGEgZmxhdHRlbmVkIHNlcXVlbmNlOiAKWzEsMV0gLT4gWzEsMV0sIFsyLDFdIC0+IFsyLDFd
LCBbMiwyXSAtPiBbMSwyXS4gSG93ZXZlciwgdGhpcyBkb2VzIG5vdCAKcHJlc2VydmUgdGhlIGNh
cnRlc2lhbiBjb21tdW5pY2F0aW9uIHN0cnVjdHVyZSB0aGF0IHdhcyBpbnRlbmRlZCBieSB0aGlz
IApmZWF0dXJlLCBhbmQgaXMgdGhlcmVmb3JlIGJvdW5kIHRvIGJlY29tZSBwcmV0dHkgY29uZnVz
aW5nIHdpdGggZ3Jvd2luZyAKY29yYW5rLiBBbiBhbHRlcm5hdGl2ZSB3b3VsZCBiZSB0byByZXRh
aW4gY29pbmRleGluZyBvZgphIGNvYXJyYXkgYXMgaWYgYWNjZXNzZXMgaGFwcGVuIGluIHRoZSB0
ZWFtIGl0IHdhcyBjcmVhdGVkIGluOgpbMSwxXSAtPiBbMSwxXSwgWzIsMV0gLT4gWzIsMV0sIFsy
LDJdIC0+IFsyLDJdCldvdWxkIGFuIGFjY2VzcyB0byBbMSwyXSAodXBkYXRpbmcgYW4gb2JqZWN0
IG91dHNpZGUgdGhlIGN1cnJlbnQgdGVhbSkgCnRoZW4gYmUgdmFsaWQgb3IgaW52YWxpZCAoVDIg
d291bGQgaW5kaWNhdGUgdGhlIGxhdHRlcik/IEluIGFueSBjYXNlLCAKdGhlIGFkZGl0aW9uYWwg
Ym9va2tlZXBpbmcgbmVlZGVkIHRvIGtlZXAgdHJhY2sgb2YgY29hcnJheSBkaXN0YW5jZSAKYW5k
IGltYWdlIGluZGljZXMgd291bGQgYXBwZWFyIHRvIG1ha2UgY29kaW5nIG9mIGNvbW11bmljYXRp
b24gcmF0aGVyIApjb21wbGljYXRlZC4KCkl0IG1heSBzYXZlIEozIGFzIHdlbGwgYXMgcHJvZ3Jh
bW1lcnMgYSBsb3Qgb2YgZ3JpZWYgdG8gc2ltcGx5IGRpc2FsbG93IApjb2luZGV4aW5nIG9uIGNv
YXJyYXlzIGluaGVyaXRlZCBmcm9tIGFuIGFuY2VzdG9yIHRlYW07IGR1ZSB0byB0aGUgCmV4aXN0
ZW5jZSBvZiBnbG9iYWwgdmFyaWFibGVzIHRoaXMgd291bGQgbmVlZCB0byBiZSBhIHJlc3RyaWN0
aW9uIHRoYXQgaW4KZ2VuZXJhbCByZXF1aXJlcyBhIHJ1bi10aW1lIGNoZWNrLiBUaGVyZWZvcmUs
IGl0IHdvdWxkIGJlIHVzZWZ1bCB0byBhbHNvIAphbGxvdyBhIGNvYXJyYXkgYXJndW1lbnQgZm9y
IHRoZSBuZXcgVEVBTV9ERVBUSCBpbnRyaW5zaWMsIGluIG9yZGVyIHRvIApndWFyZCBjb2RlIHN1
Y2ggYXMKCmlmICh0ZWFtX2RlcHRoKCkgPT0gdGVhbV9kZXB0aChhKSkgdGhlbgogIGFbaV0gPSAu
Li4gICEgY29hcnJheSBhIGhhcyB0aGUgU0FWRSBhdHRyaWJ1dGUuCmVsc2UKICBlcnJvciBzdG9w
ICdFeGVjdXRpbmcgdGVhbSBpcyBub3QgdGhlIG9uZSB0aGF0IGNyZWF0ZWQgYS4nCmVuZCBpZgoK
SWYgdGhlIGFib3ZlIHJlc3RyaWN0aW9uIGlzIGludHJvZHVjZWQsIGFsc28gZHVtbXkgY29hcnJh
eSBhcmd1bWVudHMgCnNob3VsZCBub3QgYmUgYWxsb3dlZCB0byBiZSBhc3NvY2lhdGVkIHdpdGgg
YSBjb2FycmF5IHRoYXQgaXMgCmluaGVyaXRlZCBmcm9tIGFuIGFuY2VzdG9yIHRlYW0uIFJlYXNv
bjogVGhpcyBhdm9pZHMKdGhlIG5lZWQgZm9yIHRoZSBhYm92ZSBndWFyZCBjb2RlIGZvciBzdWNo
IGR1bW15IGFyZ3VtZW50cy4KClRoZSBoaWdoZXN0IHBvc3NpYmxlIHByaWNlIGFwcGxpY2F0aW9u
IHByb2dyYW1tZXJzIG5lZWQgdG8gcGF5IGZvciB0aGlzIApyZXN0cmljdGlvbiBpcyBhbGxvY2F0
aW9uIChhbmQgZGVhbGxvY2F0aW9uKSBvZiBhIHRlYW0tbG9jYWwgY29hcnJheSBhbmQgCmEgbWVt
b3J5IGNvcHkgKG9yIHR3bykuIFRoZSBzaWduaWZpY2FudCBiZW5lZml0IGlzIHRoYXQgY2xlYXJl
ciBjb2RpbmcKaXMgZW5mb3JjZWQuCgoKKEIuNSkgUHJvcGFnYXRpb24gb2Ygbm9ybWFsIHRlcm1p
bmF0aW9uCgogIElmIFdHNSBkZWNpZGVzIHRvIGtlZXAgdGhlIHN5bmNocm9uaXphdGlvbiByZXF1
aXJlbWVudHMgZm9yIHRoZQogIENIQU5HRSBURUFNIGNvbnN0cnVjdCwgRU5EIFRFQU0gbXVzdCBh
bHNvIGJlIGFibGUgdG8gc3BlY2lmeSBhIAogIDxzeW5jLXN0YXQtbGlzdD4uCgogIENvbnZlcnNl
bHksIGlmIHRoZSBzeW5jaHJvbml6YXRpb24gcmVxdWlyZW1lbnQgaXMgcmVtb3ZlZCwgdGhlIAog
IDxzeW5jLXN0YXQtbGlzdD4gc2hvdWxkIGJlIGRlbGV0ZWQgZnJvbSB0aGUgQ0hBTkdFIFRFQU0g
c3RhdGVtZW50LgogIChsb29raW5nIGF0IFNZTkMgTUVNT1JZLCBJIHNlZSB0aGF0IHRoaXMgbWF5
IG5lZWQgdG8gYmUgcmV0YWluZWQgYWZ0ZXIgYWxsLCAKICAgYnV0IHdvbmRlciB3aGF0IGl0IGRv
ZXMgLi4uIGNoZWNraW5nIGl0c2VsZiBmb3IgaGF2aW5nIGJlZW4gc3RvcHBlZD8pCgooQi42KSBQ
b3RlbnRpYWwgcHJvYmxlbXMgZHVlIHRvIGZhbmNpZnVsIGJsb2NrIHN0cnVjdHVyZSBuZXN0aW5n
CgpDb25zaWRlciB0aGUgZm9sbG93aW5nIChJIGhvcGUsIGNvbmZvcm1pbmcgYWNjb3JkaW5nIHRv
IFRTIGRyYWZ0KSBleGFtcGxlOgoKY2hhbmdlIHRlYW0gKG0pCiAgYmxvY2sKICAgIHJlYWwsIGFs
bG9jYXRhYmxlIDo6IGEoOilbOl0sIGIoOilbOl0KCiAgICBhbGxvY2F0ZShhKDUpWypdKQogICAg
c2VsZWN0IGNhc2UgKHN1YnRlYW1faWQoKSkKICAgIGNhc2UgKDEpCiAgICAgIGFsbG9jYXRlKGIo
MylbKl0pCiAgICAgIDogISBjYWxjdWxhdGUKICAgICAgZGVhbGxvY2F0ZShiKQogICAgZW5kIHNl
bGVjdAogICAgZGVhbGxvY2F0ZShhKQogIGVuZCBibG9jawplbmQgdGVhbQoKVGhlIChkZSlhbGxv
Y2F0aW9uIHN0YXRlbWVudHMsIHdoaWxlIHN5bnRhY3RpY2FsbHkgaWRlbnRpY2FsLCBhcmUgZG9p
bmcKc2VtYW50aWNhbGx5IGRpZmZlcmVudCB0aGluZ3MgaGVyZS4gTmFtZWx5LCBjb2FycmF5ICJh
IiBpcyBiZWluZyBhbGxvY2F0ZWQKb24gZWFjaCBzdWJ0ZWFtIHN0b3JlZCBpbiB0aGUgdGVhbSBk
ZWNvbXBvc2l0aW9uICJtIiwgd2hpbGUgY29hcnJheSAiYiIKaXMgb25seSBiZWluZyBhbGxvY2F0
ZWQgb24gc3VidGVhbSB3aXRoIGlkIDEuIEFwYXJ0IGZyb20gdGhlIHNsaWdodCAKdHVtbXktYWNo
ZSB0aGF0IHRoZSBjb250ZXh0LWRlcGVuZGVudCBtZWFuaW5nIG9mIHRoaXMgaW5kdWNlcywgdGhl
cmUKaXMgcG90ZW50aWFsIGZvciBlYXNpbHkgaW50cm9kdWNpbmcgYnVncyBpbiBtb3JlIGNvbXBs
ZXggY29kZSB0aGF0IAp3b3VsZCBjYXVzZSB0aGUgYXBwbGljYXRpb24gdG8gaGFuZyBvciBjcmFz
aC4gRm9yIGV4YW1wbGUsICJkZWFsbG9jYXRlKGIpIiAKbWlnaHQgYmUgcGxhY2VkIG91dHNpZGUg
dGhlIHNlbGVjdCBjYXNlIGJsb2NrIGJ5IG1pc3Rha2UuIEZ1cnRoZXJtb3JlLCAKdGhlIHN5bmNo
cm9uaXphdGlvbiBzZW1hbnRpY3MgYXBwZWFyIHRvIGJlIHVuY2xlYXI6IGRvZXMgdGhlIGFsbG9j
YXRpb24Kb2YgImEiIHN5bmNocm9uaXplIGFjcm9zcyB0aGUgdW5pb24gb2YgYWxsIHN1YnRlYW0g
aW1hZ2VzLCBvciBvbmx5IG92ZXIKZWFjaCBzdWJ0ZWFtIGluZGl2aWR1YWxseT8KUGVyaGFwcyBp
dCBpcyBuZWNlc3NhcnkgYWZ0ZXIgYWxsIHRvIGVuZm9yY2Ugc2VsZWN0aW9uIHNlbWFudGljcyBv
biAKImNoYW5nZSB0ZWFtIiBpdHNlbGYsIHRoZXJlYnkgZGlzYWxsb3dpbmcgdGhlIHBvc3NpYmls
aXR5IHRvIAppbnRlcmxlYXZlIGEgYmxvY2sgY29uc3RydWN0IChvciwgd29yc2UsIGEgbGlicmFy
eSBjYWxsIGNvbnRhaW5pbmcgCmV4cGxpY2l0IG9yIGltcGxpY2l0IHN5bmNocm9uaXphdGlvbnMp
IGluIHRoZSBtYW5uZXIgaWxsdXN0cmF0ZWQgYWJvdmU6CgpjaGFuZ2UgdGVhbSAobSkgISBtdXN0
IGhhdmUgYSBzdWJ0ZWFtIG9yIGRlZmF1bHQgc3RhdGVtZW50IGZvbGxvd2luZwpzdWJ0ZWFtICgx
KSAKICBibG9jawogICAgcmVhbCwgYWxsb2NhdGFibGUgOjogYSg6KVs6XSwgYig6KVs6XQogICAg
YWxsb2NhdGUoYSg1KVsqXSxiKDMpWypdKQogICAgOiAhIGRvIHN0dWZmICAgCiAgICBkZWFsbG9j
YXRlKGEsIGIpICEgb3IgcmVseSBvbiBhdXRvbWF0aWMgZGVhbGxvY2F0aW9uCiAgZW5kIGJsb2Nr
CmRlZmF1bHQgICAgICAgICAhIGd1YXJhbnRlZSBzZXBhcmF0ZSBjb250ZXh0IGZvciBlYWNoIGlk
IAogIGJsb2NrICAgIAogICAgcmVhbCwgYWxsb2NhdGFibGUgOjogYSg6KVs6XQogICAgYWxsb2Nh
dGUoYSg1KVsqXSkgIAogICAgOiAhIGRvIHN0dWZmCiAgICBkZWFsbG9jYXRlKGEpICAgICEgb3Ig
cmVseSBvbiBhdXRvbWF0aWMgZGVhbGxvY2F0aW9uCiAgZW5kIGJsb2NrCmVuZCB0ZWFtCgoKKEMp
IE4xOTY3IC8gRXZlbnRzOgp+fn5+fn5+fn5+fn5+fn5+fn5+CgooQy4xKSBBdG9taWNpdHkgb2Yg
ZXZlbnQgY291bnQKCiAgVGhlIGRlc2NyaXB0aW9uIG9mIGV2ZW50cyBhcHBlYXJzIHRvIGltcGx5
IHRoYXQgaXQgaXMgYWxsb3dlZCB0byBkbwogIG11bHRpcGxlIHBvc3RzIG9uIGEgZ2l2ZW4gZXZl
bnQuIEhvd2V2ZXIsIGdpdmVuIHRoZSBzeW5jaHJvbml6YXRpb24gCiAgcnVsZXMsIHRoZSBmb2xs
b3dpbmcgc2VlbXMgdG8gYmUgZGlzYWxsb3dlZCBpZiBleGVjdXRlZCB3aXRoCiAgbW9yZSB0aGFu
IG9uZSBpbWFnZToKCiAgdHlwZShldmVudF90eXBlKSA6OiBwWypdCgogIGV2ZW50IHBvc3QgKHBb
MV0pICEgVXBkYXRpbmcgcFsxXSBpbiB1bm9yZGVyZWQgc2VnbWVudHMKCiAgQnV0IHNpbmNlIGEg
c3RhdGVtZW50IGlzIHVzZWQgZm9yIGV2ZW50IHVwZGF0ZXMgYW55d2F5LCB3aHkgbm90IGxldAog
IHRoZW0gYWN0IGF0b21pY2FsbHkgKGkuZS4sIGVmZmVjdGl2ZWx5IHVzZSBBVE9NSUNfQUREIGZv
ciB0aGUgdXBkYXRlcyk/IAogIEluIHBhcnRpY3VsYXIsIHRoaXMgd291bGQgaW1wbHkgdGhhdCAK
CiAgdHlwZShldmVudF90eXBlKSA6OiBxWypdCgogIHNlbGVjdCBjYXNlKHRoaXNfaW1hZ2UoKSkK
ICAgIGNhc2UoMSkKICAgIGV2ZW50IHBvc3QgKHEpICAhICgxKQogICAgOiAhIGRvIHNvbWV0aGlu
ZyB0aGF0IGV4ZWN1dGVzIGZvciBhIGNvbnNpZGVyYWJsZSBsZW5ndGggb2YgdGltZQogICAgZXZl
bnQgcG9zdCAocSkgICEgKDIpCiAgICBjYXNlKDI6MykKICAgIGV2ZW50IHdhaXQgKHFbMV0pCiAg
ZW5kIHNlbGVjdAoKICBpcyBjb25mb3JtaW5nLCB0aGF0IGV4YWN0bHkgb25lIG9mIHRoZSBpbWFn
ZXMgMiBvciAzICh3aGljaCBvbmUgaXMgCiAgdW5kZXRlcm1pbmVkKSB3aWxsIGNvbnRpbnVlIGV4
ZWN1dGluZyBpbW1lZGlhdGVseSBhZnRlciBpbWFnZSAxCiAgZXhlY3V0ZXMgc3RhdGVtZW50ICgx
KSwgYW5kIHRoZSBvdGhlciBvbmUgd2lsbCBjb250aW51ZSBleGVjdXRpbmcKICBhZnRlciBpbWFn
ZSAxIGV4ZWN1dGVzIHN0YXRlbWVudCAoMikuCgogIFNlZSBhbHNvIHRoZSBzcGxpdCBwaGFzZSBi
YXJyaWVyIGJlbG93IGZvciBhbiBhcHBsaWNhdGlvbiBvZiB0aGlzCiAgdGhhdCBkb2VzIG5vdCBu
ZWVkIGFuIGluZmxhdGlvbiBvZiBldmVudCB2YXJpYWJsZXMuCgooQy4yKSBTcGxpdCBwaGFzZSBi
YXJyaWVyCgogIFVzaW5nIExPQ0FMX0VWRU5UX1RZUEUgb2JqZWN0cyBhbmQgYXNzdW1pbmcgdGhh
dCBwb3N0cyBhbmQgd2FpdHMgYWN0IAogIGF0b21pY2FsbHksIGl0IGlzIHBvc3NpYmxlIHRvIHdy
aXRlIGEgc3BsaXQtcGhhc2UgYmFycmllciBhcyBmb2xsb3dzIAoKICB0eXBlKGxvY2FsX2V2ZW50
X3R5cGUpIDo6IGJhcnJpZXJbKl0KCiAgZG8gaT0xLCBudW1faW1hZ2VzKCkKICAgIGV2ZW50IHBv
c3QoIGJhcnJpZXJbaV0gKQogIGVuZCBkbwkKICA6ICEgZG8gd29yayB0aGF0IGRvZXMgbm90IHZp
b2xhdGUgcnVsZXMKICBkbyBpPTEsIG51bV9pbWFnZXMoKQogICAgZXZlbnQgd2FpdCggYmFycmll
ciApCiAgZW5kIGRvCgogIEFuIGltcGxlbWVudGF0aW9uIHdvdWxkIGJlIGNhcGFibGUgb2YgZG9p
bmcgdGhlIGFib3ZlIG11Y2ggbW9yZSBlZmZpY2llbnRseQogIGlmIGEgY29sbGVjdGl2ZSBmYWNp
bGl0eSBsaWtlCgogIGV2ZW50IHBvc3RhbGwgKGJhcnJpZXIpIAogIDogISBkbyB3b3JrIHRoYXQg
ZG9lcyBub3QgdmlvbGF0ZSBydWxlcwogIGV2ZW50IHdhaXRhbGwgKGJhcnJpZXIpIAoKICB3ZXJl
IGF2YWlsYWJsZS4KCihDLjMpIEV2ZW50cyBhcyB0eXBlIGNvbXBvbmVudHMKCiAgQ29uc3RyYWlu
dCBDNjAzIGFwcGVhcnMgdG8gaGF2ZSBiZWVuIG1hbmdsZWQsIHRyYW5zZm9ybWluZyBpdHMgbWVh
bmluZyB0bwogIHRoZSBvcHBvc2l0ZSBvZiB3aGF0IGl0IHByZXN1bWFibHkgc2hvdWxkIGJlLiAK
CiAgRWRpdCBbMTMuMjJdOiBJbiAidmFyaWFibGUgZGVmaW5pdGlvbiBjb250ZXh0LCIgcmVwbGFj
ZSB0aGUgY29tbWEgYnkKICAiIGV4Y2VwdCIuCgoKKEQpIE4xOTY3IC8gQ29sbGVjdGl2ZXM6Cn5+
fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoKKEQuMSkgQWRkIENPX01VTFQgZm9yIGVmZmljaWVuY3kK
Ck5vd2FkYXlzIGludGVyY29ubmVjdHMgaGF2ZSBzdXBwb3J0IGZvciBvZmZsb2FkaW5nIGNlcnRh
aW4gb3BlcmF0aW9ucwp0byB0aGUgaW5mcmFzdHJ1Y3R1cmUgKGUuZy4sIEZDQSBha2EgImZhYnJp
YyBjb2xsZWN0aXZlIGFjY2VsZXJhdGlvbiIpLCAKdGhlcmVieSBjb25zaWRlcmFibHkgaW1wcm92
aW5nIHBlcmZvcm1hbmNlLgpIb3dldmVyLCBpdCBhcHBlYXJzIHVubGlrZWx5IHRoYXQgdGhlIHJl
bGF0aXZlbHkgZ2VuZXJhbCBDT19SRURVQ0UgCmZhY2lsaXR5IHdvdWxkIGJlIGFibGUgdG8gc3Vw
cG9ydCB0aGlzIGZhY2lsaXR5LiBUaGVyZWZvcmUsIGl0IG1heQpiZSBkZXNpcmFibGUgdG8gYWxz
byBwcm92aWRlIGEgQ09fTVVMVCBjb2xsZWN0aXZlIGZvciBhcmd1bWVudHMgb2YgCm51bWVyaWMg
dHlwZSB0aGF0IHN1cHBvcnRzIG11bHRpcGxpY2F0aXZlIHJlZHVjdGlvbnMsIGluIG9yZGVyIHRv
IApvYnRhaW4gdGhlIHNhbWUgbGV2ZWwgb2YgcGVyZm9ybWFuY2UgZm9yIGFsbCBiYXNpYyBudW1l
cmljIG9wZXJhdGlvbnMuCgooRC4yKSBBc3luY2hyb25vdXMgZXhlY3V0aW9uCgpCeSB1c2luZyBs
b2NhbF9ldmVudF90eXBlIGFuZCBwb3NzaWJseSB0aGUgQVNZTkNIUk9OT1VTIGF0dHJpYnV0ZSwg
dGhlCmNvbGxlY3RpdmUgZnVuY3Rpb25zIGNvdWxkIGJlIG1hZGUgdG8gc3VwcG9ydCBhc3ljaHJv
bm91cyBleGVjdXRpb24uIApUaGlzIHdvdWxkIGFsbG93IG92ZXJsYXAgb2YgY29tbXVuaWNhdGlv
biBhbmQgY29tcHV0YXRpb24gYWxzbyBmb3IKdGhlIGNvbGxlY3RpdmUgZnVuY3Rpb25zLiBGb3Ig
ZXhhbXBsZSwgCgpzdWJyb3V0aW5lIGZvbyhldiwgcmVkdSwgLi4uKQogIHR5cGUobG9jYWxfZXZl
bnRfdHlwZSksIGludGVudChpbm91dCkgOjogZXZbKl0KICByZWFsLCBpbnRlbnQob3V0KSA6OiBy
ZWR1CiAgOgogIGNhbGwgY29fc3VtKHNvdXJjZT14LCByZXN1bHQ9cmVkdSwgcG9zdGVkX2V2ZW50
PWV2KQohIHJlZHUgYW5kIHggaW1wbGljaXRseSBoYXZlIHRoZSBBU1lOQ0hST05PVVMgYXR0cmli
dXRlCiEgYmVjYXVzZSBjb19zdW0gdGFrZXMgYSBQT1NURURfRVZFTlQgYXJndW1lbnQKICA6CmVu
ZCBzdWJyb3V0aW5lIGZvbwoKc3Vicm91dGluZSBiYXIoZXYsIHJlZHUsIC4uLikKICB0eXBlKGxv
Y2FsX2V2ZW50X3R5cGUpLCBpbnRlbnQoaW5vdXQpIDo6IGV2WypdCiAgcmVhbCwgYXN5bmNocm9u
b3VzIDo6IHJlZHUKICA6CiAgZXZlbnQgd2FpdGFsbCAoZXYpICAhIENmIChDLjIpIGFib3ZlCiAg
Li4uID0gcmVkdSAuLi4gICAgICAhIG1heSBub3cgYmUgYWJsZSB0byBzYWZlbHkgcmVmZXJlbmNl
IHJlZHUKZW5kIHN1YnJvdXRpbmUKICAKVGhlIHByb2dyYW0gaW52b2tpbmcgdGhlIHR3byBhYm92
ZSB3b3VsZCBuZWVkIHRvIGxvb2sgbGlrZSB0aGlzOgoKdHlwZShsb2NhbF9ldmVudF90eXBlKSA6
OiBteWV2CnJlYWwsIGFzeW5jaHJvbm91cyA6OiB4CgpjYWxsIGZvbyhteWV2LCB4LCAuLi4pCjog
ISBkbyBvdGhlciBjb21wdXRhdGlvbnMKY2FsbCBiYXIobXlldiwgeCwgLi4uKQoKKEUpIE4xOTY3
IC8gQXRvbWljIGZ1bmN0aW9uczoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCihFLjEp
IE9MRCBhcmd1bWVudCBpbiBhdG9taWMgZnVuY3Rpb25zCgpJdCBzaG91bGQgYmUgY2xhcmlmaWVk
IHRoYXQgdGhpcyBhcmd1bWVudCBvZiBhbiBhdG9taWMgZnVuY3Rpb24KaXMgbm90IHVwZGF0ZWQg
YXRvbWljYWxseS4gUGVyaGFwcyB1c2luZyBjb2luZGV4ZWQgZW50aXRpZXMgc2hvdWxkIGJlCnBy
b2hpYml0ZWQgaGVyZT8KCgooRikgUGFydGlhbCBzeW5jaHJvbml6YXRpb24gYW5kIHRlYW1zCn5+
fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KClRoaXMgc2VjdGlvbiBhdHRlbXB0
cyBhIGRpc2N1c3Npb24gb2YgdGhlIGNvbnNlcXVlbmNlcyBvZiByZWxheGluZwp0aGUgc3luY2hy
b25pemF0aW9uIHByb3BlcnRpZXMgb2YgQ0hBTkdFIFRFQU0gd2l0aCByZXNwZWN0IHRvCnBhcnRp
YWwtc3luY2hyb25pemF0aW9uIGltYWdlIGNvbnRyb2wgc3RhdGVtZW50cy4gVGhlIGZvbGxvd2lu
Zwp0ZXh0LCB1bmxlc3MgZXhwbGljaXRseSBzdGF0ZWQgb3RoZXJ3aXNlLCBhc3N1bWVzIHRoYXQg
dGhlIGdsb2JhbCAKYmFycmllciBhdCB0aGUgYmVnaW5uaW5nIGFuZCBlbmQgb2YgYSBDSEFOR0Ug
VEVBTSBibG9jayBjb25zdHJ1Y3QgCmlzIHJlbW92ZWQsIGFuZCBvbmx5IFNZTkMgTUVNT1JZIGlz
IHBlcmZvcm1lZCBvbiBhbGwgaW1hZ2VzLgoKSW4gb3JkZXIgdG8gYWNoaWV2ZSB0aGUgYWltIHN0
YXRlZCBpbiBOMTkzMC9UMSwgIldoZW4gYSBibG9jayBvZiAKY29kZSBpcyBleGVjdXRlZCBvbiBp
bWFnZXMgZXhlY3V0aW5nIGFzIGEgdGVhbSwgaXQgc2hvdWxkIGV4ZWN1dGUgb24KdGhvc2UgaW1h
Z2VzIGFzIGlmIHRoZSBwcm9ncmFtIGNvbnRhaW5lZCBubyBvdGhlciBpbWFnZXMiLCB0aGUgCmZv
bGxvd2luZyB0aGlyZCBzdWItaXRlbSBuZWVkcyB0byBiZSBhZGRlZCB0byBUMTogCgotIEFjdGl2
aXRpZXMgdGhhdCBpbnZvbHZlIHBhcnRpYWwgc3luY2hyb25pemF0aW9uIG9mIGltYWdlcyBpbnNp
ZGUgYSAKICB0ZWFtLCBzdWNoIGFzIFNZTkMgSU1BR0VTLCBldmVudHMgYW5kIGxvY2tzLCBuZWVk
IHRvIGJlIGNsZWFybHkgCiAgc2VwYXJhdGVkIGZyb20gYW55IHN1Y2ggYWN0aXZpdGllcyB0aGF0
IGFyZSBpbnZva2VkIGluIGEgcGFyZW50CiAgdGVhbS4KClRoZSBmb2xsb3dpbmcgc3Vic2VjdGlv
bnMgc3VnZ2VzdCB1c2FnZSByZXN0cmljdGlvbnMgb24gdGhlIHBhcnRpYWwKc3luY2hyb25pemF0
aW9uIGNvbnN0cnVjdHMgdGhhdCBhcmUgbmVjZXNzYXJ5IHRvIGd1YXJhbnRlZSB0aGlzLgoKKEYu
MSkgRXZlbnRzCgpGb3IgYSBmaXJzdCBleGFtcGxlLCBhc3N1bWUgdGhhdCB0aGUgZm9sbG93aW5n
IHByb2dyYW0gaXMgZXhlY3V0ZWQgYnkKMyBpbWFnZXM6CgppbnRlZ2VyIDo6IGRhdGFbKl0sIGlk
CnR5cGUobG9jYWxfZXZlbnRfdHlwZSkgOjogZXZbKl0KdHlwZSh0ZWFtX3R5cGUpIDo6IHRtCgpk
YXRhID0gdGhpc19pbWFnZSgpCgppZCA9IDEgOyBpZiAoZGF0YSA9PSAzKSBpZCA9IDIgCmZvcm0g
dGVhbSAoIGlkLCB0bSApIAohIG9uZSBzdWJ0ZWFtLCBhc3N1bWUgaW1hZ2UgbnVtYmVyaW5nIDEg
LS0+IDEsIDIgLS0+IDIgZm9yIGZpcnN0IHRlYW0gCgppZiAoZGF0YSA9PSAxKSB0aGVuIAogIGRh
dGFbM10gPSA0CiAgZXZlbnQgcG9zdCAoZXZbMl0pICAgICAgICAgICAgICAgISAoMSkKZW5kIGlm
CgpjaGFuZ2UgdGVhbSAodG0pCiAgaWYgKGRhdGEgPT0gMikgZXZlbnQgd2FpdChldikgICAgISAo
MikKZW5kIHRlYW0KCmlmIChkYXRhID09IDIpIHdyaXRlKCosKikgZGF0YVszXSAgISAoMykKClR3
byBxdWVzdGlvbnMgYXJpc2UgaGVyZTogCgoqIElzIHRoZSBldmVudCBwb3N0IC8gd2FpdCBzZXF1
ZW5jZSAoMSksICgyKSB0aGF0IGNyb3NzZXMgdGVhbSAKICBleGVjdXRpb24gY29udGV4dHMgdmFs
aWQ/CiogSWYgeWVzLCBpcyB0aGUgY29pbmRleGVkIGFjY2VzcyBpbiAoMykgdmFsaWQ/CgpJIHRo
aW5rIHRoYXQgdGhlIGFuc3dlciB0byB0aGUgZmlyc3QgcXVlc3Rpb24gc2hvdWxkIGJlICJubyIs
IGJlY2F1c2UgCm90aGVyd2lzZSBlaXRoZXIgdGhlIGFuc3dlciB0byB0aGUgc2Vjb25kIHF1ZXN0
aW9uIHdvdWxkIGJlICJubyIKKHNvbWV3aGF0IGNvdW50ZXJpbnR1aXRpdmUgZm9yIHRoZSBwcm9n
cmFtbWVyKSwgb3Igc3RhdGVtZW50ICgyKQp3b3VsZCBlZmZlY3RpdmVseSBuZWVkIHRvIHBlcmZv
cm0gc3luY2hyb25pemF0aW9uIHRoYXQgZXh0ZW5kcyBvdXRzaWRlCnRoZSBjdXJyZW50bHkgZXhl
Y3V0aW5nIHRlYW0uIAoKVGhlcmVmb3JlLCB0aGUgZm9sbG93aW5nIHJlc3RyaWN0aW9uIHNob3Vs
ZCBiZSBhZGRlZDoKCiogVGhlIGV2ZW50IHZhcmlhYmxlIHVzZWQgaW4gRVZFTlQgUE9TVCBvciBF
VkVOVCBXQUlUIHN0YXRlbWVudHMgbXVzdCAKICBiZSBhc3NvY2lhdGVkIHdpdGggdGhlIHRlYW0g
dGhhdCBleGVjdXRlcyB0aGVzZSBzdGF0ZW1lbnRzLgoKQXMgYSBjb25zZXF1ZW5jZSwgYW4gRVZF
TlQgV0FJVCBzdGF0ZW1lbnQgdGhhdCBjYW4gbWF0Y2ggYW4gCkVWRU5UIFBPU1Qgc3RhdGVtZW50
IG11c3QgYmUgZXhlY3V0ZWQgaW4gdGhlIHNhbWUgY3VycmVudCB0ZWFtLgpOb3RlIHRoYXQgImFz
c29jaWF0ZWQgd2l0aCIgYXMgdXNlZCBhYm92ZSB3aWxsIG5lZWQgYSBwcm9wZXIgCmRlZmluaXRp
b24uIEFsc28sIHRoZSByZXN0cmljdGlvbiB3b3VsZCBlc3NlbnRpYWxseSBiZSBpbXBsaWVkIGlm
IHRoZSAKY29pbmRleGluZyBzdXBwcmVzc2lvbiBzdWdnZXN0ZWQgaW4gKEIuNCkgaXMgYWNjZXB0
ZWQuIAoKTm90ZSB0aGF0IHRoZSBmb2xsb3dpbmcgdHdvIHVzYWdlIHBhdHRlcm5zIHdvdWxkIGJl
IHBlcm1pdHRlZAoKaWYgKCkgZXZlbnQgcG9zdCAgICAgICAgICAgICAgaWYgKCkgZXZlbnQgd2Fp
dApjaGFuZ2UgdGVhbSAgICAgICAgICAgICAgICAgICBjaGFuZ2UgdGVhbQogIDogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDoKZW5kIHRlYW0gICAgICAgICAgICAgICAgICAgICAgZW5kIHRl
YW0KaWYgKCkgZXZlbnQgd2FpdCAgICAgICAgICAgICAgaWYgKCkgZXZlbnQgcG9zdAoKKFRoZSBm
aXJzdCB3b3VsZCBhbHNvIGJlIHBlcm1pdHRlZCB3aXRoIHRoZSBiaWcgYmFycmllciBpbiBwbGFj
ZSwgYnV0IAogd291bGQgaGF2ZSBubyBlZmZlY3QuIFRoZSBzZWNvbmQgb25lIHdvdWxkIGFsd2F5
cyBkZWFkbG9jayB3aXRoIHRoZSAKIHByZXNlbnQgc2VtYW50aWNzOyBpdCBtYXkgb3IgbWF5IG5v
dCBkZWFkbG9jayB1bmRlciByZWxheGVkIHN5bmNocm9uaS0KIHphdGlvbiwgZGVwZW5kaW5nIG9u
IHdoYXQgc3luY3MgYXJlIGFwcGxpZWQgaW5zaWRlIHRoZSBDSEFOR0UgVEVBTSAKIGJsb2NrLiBB
IGRlYWRsb2NrIGRldGVjdGlvbiB0b29sIHdpbGwgYmUgaGVscGZ1bCBpbiBpZGVudGlmeWluZwog
c3VjaCBpc3N1ZXMuKQoKKEYuMikgTG9ja3MgYW5kIENSSVRJQ0FMIGJsb2NrcwoKRm9yIGxvY2tz
LCB0aGUgc2FtZSByZXN0cmljdGlvbiB3aWxsIGJlIG5lZWRlZCBhcyBmb3IgZXZlbnRzOgoKKiBB
IGxvY2sgdmFyaWFibGUgdXNlZCBpbiBMT0NLIG9yIFVOTE9DSyBzdGF0ZW1lbnRzIG11c3QgCiAg
YmUgYXNzb2NpYXRlZCB3aXRoIHRoZSB0ZWFtIHRoYXQgZXhlY3V0ZXMgdGhlc2Ugc3RhdGVtZW50
cy4KClNpbmNlIENIQU5HRSBURUFNIGlzIGEgKGNvbGxlY3RpdmVseSBleGVjdXRlZCkgaW1hZ2Ug
Y29udHJvbCBzdGF0ZW1lbnQsIAppdHMgYXBwZWFyYW5jZSBpbnNpZGUgYSBDUklUSUNBTCBibG9j
ayBpcyBhbHJlYWR5IHByb2hpYml0ZWQgdmlhIHRoZSAKcnVsZXMgaW4gc2VjdGlvbiA4LjEuNSBv
ZiBOMTgzMC4gVGhlIGdlbmVyYWwgcnVsZXMgb24gYmxvY2sgc3RydWN0dXJlIApuZXN0aW5nIHBy
ZXZlbnQgdW5kZXNpcmFibGUgaW50ZXJsZWF2aW5nIG9mIENIQU5HRSBURUFNIGFuZCBDUklUSUNB
TC4KCgooRi4zKSBTWU5DIElNQUdFUwoKVGhpcyBzdGF0ZW1lbnQgY2FuIGJlIHVuZGVyc3Rvb2Qg
aW4gdGVybSBvZiBwYWlyd2lzZSBub3RpZnlpbmcgCmV2ZW50czsgaW4gRm9ydHJhbiAyMDA4IGEg
c2luZ2xlIGdsb2JhbCBldmVudCB2YXJpYWJsZSB3b3VsZCBiZSAKYXZhaWxhYmxlLiBJbiBvcmRl
ciB0byBhdm9pZCBpbnRlcmZlcmVuY2Ugb2YgU1lOQyBJTUFHRVMgc3RhdGVtZW50cwp0aGF0IGFw
cGVhciBvdXRzaWRlIGFuZCBpbnNpZGUgYSBDSEFOR0UgVEVBTSBibG9jaywgaXQgbXVzdCBiZSAK
ZXhwbGljaXRseSBzcGVsbGVkIG91dCB0aGF0IG9uIGVhY2ggdGVhbSwgU1lOQyBJTUFHRVMgZ2V0
cyAgaXRzIApvd24gc3luY2hyb25pemF0aW9uIGNvbnRleHQgKGkuZS4gYSB0ZWFtLXNwZWNpZmlj
IGV2ZW50IHZhcmlhYmxlLCAKdGhhdCBtaWdodCBiZSBjcmVhdGVkIHdoZW4gRk9STSBURUFNIGlz
IGV4ZWN1dGVkKS4KCkFzIGFuIGV4YW1wbGUsIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY29kZSwg
cnVuIHdpdGggMyBpbWFnZXMgYW5kIAooaW4gb3JkZXIgdG8gYXZvaWQgY29tcGxpY2F0aW9ucyBk
dWUgdG8gaW1hZ2UgcmVpbmRleGluZykgYSAKc3VidGVhbSBkZWNvbXBvc2l0aW9uIHRoYXQgY29u
dGFpbnMgYSBzaW5nbGUgdGVhbSB3aXRoIHRoZSBzYW1lIAozIGltYWdlczoKCm1lID0gdGhpc19p
bWFnZSgpCgppZiAobWUgPT0gMSkgc3luYyBpbWFnZXMgKFsyXSkKY2hhbmdlIHRlYW0gKC4uLikK
ICBzeW5jIGltYWdlcyAoWzEsM10pICAhIChYKQplbmQgdGVhbQppZiAobWUgPT0gMikgc3luYyBp
bWFnZXMgKFsxXSkKClRoaXMgY29kZSB3b3VsZCBleGVjdXRlIGp1c3QgZmluZSwgd2hpbGUgaXQg
d291bGQgZGVhZGxvY2sgaWYgdGhlIApiYXJyaWVyIG9uIENIQU5HRSBURUFNIGlzIGluIHBsYWNl
LiBJdCB3b3VsZCBhbHNvIGJlIGNvbnNpZGVyZWQKImJhZCBwcmFjdGljZSIsIGJlY2F1c2UgaXQg
aXMgdmVyeSBsaWtlbHkgdG8gcHJvZHVjZSBkZWFkbG9ja3MsIApmb3IgZXhhbXBsZSBieSByZXBs
YWNpbmcgWzEsM10gYnkgWzEsMl0gaW4gc3RhdGVtZW50IChYKS4gTm90ZSAKdGhhdCB3aXRob3V0
IHNlcGFyYXRlZCBjb250ZXh0cywgdGhlIGxhdHRlciB3b3VsZCBub3QgZGVhZGxvY2ssIApidXQg
dmVyeSBsaWtlbHkgbm90IHByb2R1Y2UgdGhlIGRlc2lyZWQgcmVzdWx0cy4KCgooRi40KSBUZWFt
IHZhcmlhYmxlcyBhbmQgQ0hBTkdFIFRFQU0gY29uc3RydWN0CgpGb3IgcHJvcGVyIG5lc3Rpbmcg
b2YgQ0hBTkdFIFRFQU0gY29uc3RydWN0cyB0aGUgc3RhdGVtZW50IHNlcXVlbmNlCgpmb3JtIHN1
YnRlYW0gKGEpCmNoYW5nZSB0ZWFtIChhKQogIGZvcm0gc3VidGVhbSAoYikKICBjaGFuZ2UgdGVh
bSAoYikKICBlbmQgdGVhbQplbmQgdGVhbQoKc2hvdWxkIGJlIGVuZm9yY2VkIGJ5IHJlcXVpcmlu
ZyB0aGF0IGEgdGVhbSBkZWNvbXBvc2l0aW9uIGlzIGNyZWF0ZWQgCihhbmQgcGVyaGFwcyBldmVu
IGRlY2xhcmVkKSBpbiB0aGUgc2FtZSBjb250ZXh0IChjdXJyZW50IHRlYW0pIHRoYXQgCnVzZXMg
aXQuIEZvciBuZXN0ZWQgdGVhbSB1c2UgdGhpcyBlZmZlY3RpdmVseSBicmluZ3MgYmFjayB0aGUg
YmlnCmJhcnJpZXIsIHVubGVzcyBGT1JNIFNVQlRFQU1TIG9ubHkgc3luY2hyb25pemVzIGJ5IHN1
YnRlYW0gKGNmIAooQi4zLjIpKTsgaXQgbWF5IGJlIG1vcmUgYXBwcm9wcmlhdGUgdG8gY29uc2lk
ZXIgYSBtb3JlIHBvd2VyZnVsIApmb3JtIG9mIEZPUk0gU1VCVEVBTVMgaW4gdGhlIGZ1dHVyZSB0
aGF0IGlzIGNhcGFibGUgb2YgZ2VuZXJhdGluZwpuZXN0ZWQgc3VidGVhbSBzZXF1ZW5jZXMgd2l0
aCBhIHNpbmdsZSBpbnZvY2F0aW9uLgoKRmluYWxseSwgY29uc2lkZXIgdGhlIGZvbGxvd2luZyBz
aXR1YXRpb246CgpyZWFsLCBhbGxvY2F0YWJsZSwgc2F2ZSA6OiBhKDopWypdCnR5cGUodGVhbV90
eXBlKSA6OiB0CmludGVnZXIgOjogaWQKCmlmICh0aGlzX2ltYWdlKCkgPT0gMSkgdGhlbgogICBp
ZCA9IDEKZWxzZQogICBpZCA9IDIKZW5kIGlmCmZvcm0gc3VidGVhbXMoaWQsIHQpIAoKY2hhbmdl
IHRlYW0gKHQpCiBpZiAoaWQgPT0gMikgdGhlbgogICBhbGxvY2F0ZShhKDEwMDApWypdKSAhIHN1
YnRlYW0gMiBvbmx5CiAgIDogISB3b3JrIHdpdGggYQogICBkZWFsbG9jYXRlKGEpCiBlbmQgaWYK
ZW5kIHRlYW0KCmFsbG9jYXRlKGEoMjAwMClbKl0pICAgICEgYWxsIGltYWdlcwoKSGVyZSBpbWFn
ZSAxIHByb2NlZWRzIHRvIHRoZSBzZWNvbmQgQUxMT0NBVEUgc3RhdGVtZW50LCB3aGlsZSAKYWxs
IG90aGVyIGltYWdlcyBleGVjdXRlIHRoZSBjb2RlIGluc2lkZSB0aGUgQ0hBTkdFIFRFQU0KYmxv
Y2suCkZyb20gdGhlIGFwcGxpY2F0aW9uIHBvaW50IG9mIHZpZXcgdGhpcyBpcyBmaW5lOiBzaW5j
ZSB0aGUgCnNlY29uZCBBTExPQ0FURSBzdGF0ZW1lbnQgcGVyZm9ybXMgc3luY2hyb25pemF0aW9u
IG9uIGV4aXQsIAppdCB3aWxsIG9ubHkgY29tcGxldGUgb25jZSBhbGwgaW1hZ2VzIGhhdmUgZXhl
Y3V0ZWQgaXQuIApIb3dldmVyLCB0aGVyZSBtYXkgKGRlcGVuZGluZyBvbiB0aGUgaW1wbGVtZW50
YXRpb24pIGV4aXN0IAphIHJhY2UgY29uZGl0aW9uIG9uIHRoZSBkZXNjcmlwdG9yIGZvciBhLCB3
aGljaCBjYW4gb25seSBiZSAKcHJldmVudGVkIGJ5IGFsc28gc3luY2hyb25pemluZyB1cG9uIGVu
dHJ5IHRvIEFMTE9DQVRFLgpUaGlzIGhvd2V2ZXIgaXMgYW4gaW1wbGVtZW50YXRpb24gaXNzdWUs
IGFuZCBwcmVzY3JpYmluZyAKQ0hBTkdFIFRFQU0gdG8gYmUgZXhlY3V0ZWQgY29sbGVjdGl2ZWx5
IGdpdmVzIHRoZSBpbXBsZW1lbnRhdGlvbiAKdGhlIG9wcG9ydHVuaXR5IHRvIGRvIHRoZSBuZWNl
c3NhcnkgKGltYWdlLWxvY2FsKSBib29ra2VlcGluZwp0aGF0IGhlbHBzIHRvIGRlY2lkZSB3aGV0
aGVyIG9yIG5vdCB0byBwZXJmb3JtIHN1Y2ggYW4gCmV4dHJhIHN5bmNocm9uaXphdGlvbi4K

--_002_166ED263DF83324D9A3BA67FB6772B2B59F2B317BADWLRZSWMBX11a_--

