[#110568] [Ruby master Misc#19096] [Question] Time with `-00:00` offset is in UTC — "andrykonchin (Andrew Konchin)" <noreply@...>

SXNzdWUgIzE5MDk2IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGFuZHJ5a29uY2hpbiAoQW5kcmV3IEtv

10 messages 2022/11/01

[#110578] [Ruby master Feature#19099] Support `private_constant` for an undefined constant — "ujihisa (Tatsuhiro Ujihisa)" <noreply@...>

SXNzdWUgIzE5MDk5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHVqaWhpc2EgKFRhdHN1aGlybyBVamlo

7 messages 2022/11/02

[#110621] [Ruby master Feature#19104] Introduce the cache-based optimization for Regexp matching — "make_now_just (Kitsune TSUYUSATO)" <noreply@...>

SXNzdWUgIzE5MTA0IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1ha2Vfbm93X2p1c3QgKEtpdHN1bmUg

8 messages 2022/11/05

[#110636] [Ruby master Bug#19108] Format routines like pack blindly treat a string as ASCII-encoded — "chrisseaton (Chris Seaton)" <noreply@...>

SXNzdWUgIzE5MTA4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGNocmlzc2VhdG9uIChDaHJpcyBTZWF0

8 messages 2022/11/07

[#110663] [Ruby master Bug#19113] Inconsistency in retention of compare_by_identity flag in Hash methods — "jeremyevans0 (Jeremy Evans)" <noreply@...>

SXNzdWUgIzE5MTEzIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGplcmVteWV2YW5zMCAoSmVyZW15IEV2

10 messages 2022/11/09

[#110670] [Ruby master Bug#19115] OpenSSL fails to autoload (macOS) — "thomthom (Thomas Thomassen)" <noreply@...>

SXNzdWUgIzE5MTE1IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHRob210aG9tIChUaG9tYXMgVGhvbWFz

10 messages 2022/11/09

[#110683] [Ruby master Feature#19117] Include the method owner in backtraces, not just the method name — "byroot (Jean Boussier)" <noreply@...>

SXNzdWUgIzE5MTE3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGJ5cm9vdCAoSmVhbiBCb3Vzc2llciku

53 messages 2022/11/10

[#110689] [Ruby master Bug#19119] Add an interface for out-of-process profiling tools to access Ruby information — "kjtsanaktsidis (KJ Tsanaktsidis)" <noreply@...>

SXNzdWUgIzE5MTE5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGtqdHNhbmFrdHNpZGlzIChLSiBUc2Fu

7 messages 2022/11/10

[#110708] [Ruby master Misc#19122] Use MADV_DONTNEED instead of MADV_FREE when freeing a Fiber's stack — "smcgivern (Sean McGivern)" <noreply@...>

SXNzdWUgIzE5MTIyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHNtY2dpdmVybiAoU2VhbiBNY0dpdmVy

8 messages 2022/11/11

[#110737] [Ruby master Bug#19130] MRI failing when executing shell builtins with Errno::ENOENT — "ifiht (Mikal R)" <noreply@...>

SXNzdWUgIzE5MTMwIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlmaWh0IChNaWthbCBSKS4NCg0KLS0t

9 messages 2022/11/14

[#110843] [Ruby master Feature#19141] Add thread-owned Monitor to protect thread-local resources — "wildmaples (Maple Ong)" <noreply@...>

SXNzdWUgIzE5MTQxIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHdpbGRtYXBsZXMgKE1hcGxlIE9uZyku

10 messages 2022/11/21

[#110870] [Ruby master Bug#19144] Ruby should set AI_V4MAPPED | AI_ADDRCONFIG getaddrinfo flags by default — "kjtsanaktsidis (KJ Tsanaktsidis)" <noreply@...>

SXNzdWUgIzE5MTQ0IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGtqdHNhbmFrdHNpZGlzIChLSiBUc2Fu

7 messages 2022/11/24

[#110876] [Ruby master Bug#19147] `TestFileExhaustive#test_expand_path_for_existent_username` and `TestDir#test_home` fails on i686 — "vo.x (Vit Ondruch)" <noreply@...>

SXNzdWUgIzE5MTQ3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHZvLnggKFZpdCBPbmRydWNoKS4KCi0t

6 messages 2022/11/24

[#111027] [Ruby master Bug#19154] Specify require and autoload guarantees in ractors — "fxn (Xavier Noria)" <noreply@...>

Issue #19154 has been reported by fxn (Xavier Noria).

14 messages 2022/11/26

[#111036] [Ruby master Bug#19156] ObjectSpace.dump_all segfault during string inspection — mk <noreply@...>

Issue #19156 has been reported by mk (Matthias K=E4ppler).

25 messages 2022/11/28

[#111053] [Ruby master Bug#19158] Ruby 3.1.3 installs wrong gemspec for debug gem — deivid <noreply@...>

Issue #19158 has been reported by deivid (David Rodr=EDguez).

10 messages 2022/11/29

[#111075] [Ruby master Bug#19161] Cannot compile 3.0.5 or 3.1.3 on Red Hat 7 — "werebus (Matt Moretti)" <noreply@...>

SXNzdWUgIzE5MTYxIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHdlcmVidXMgKE1hdHQgTW9yZXR0aSku

15 messages 2022/11/29

[ruby-core:110754] [Ruby master Bug#19119] Add an interface for out-of-process profiling tools to access Ruby information

From: "byroot (Jean Boussier)" <noreply@...>
Date: 2022-11-14 12:11:13 UTC
List: ruby-core #110754
SXNzdWUgIzE5MTE5IGhhcyBiZWVuIHVwZGF0ZWQgYnkgYnlyb290IChKZWFuIEJvdXNzaWVyKS4K
Cgo+IHRoZSBSdWJ5IGludGVycHJldGVyIHNob3VsZCBiZSBzdXNwZW5kZWQgYXQgYSBzYWZlIHBs
YWNlIGJlZm9yZSByZWFkaW5nLgoKVGhhdCBpcyB3aGF0IGBzdGFja3Byb2ZgIGhhcyBiZWVuIGRv
aW5nIGhpc3RvcmljYWxseSwgdGhlIHByb2JsZW0gd2l0aCB0aGlzIGlzIHRoYXQgaXQgdGVuZCB0
byBza2V3IHRoZSBwcm9maWxpbmcgcmVzdWx0cyBhbmQgYXR0cmlidXRlIG1vcmUgd2VpZ2h0IHRv
IG1ldGhvZHMgaW1wbGVtZW50ZWQgaW4gQyB0aGFuIHJlZ3VsYXIgbWV0aG9kcy4KClNpbmNlIGFi
b3V0IGEgeWVhciBhZ28gaG93ZXZlciwgd2hlbiBvbiBSdWJ5IDMuMCsgKGFuZCB3aGVuIFlKSVQg
aXMgbm90IGVuYWJsZWQpLCBgc3RhY2twcm9mYCBkb2VzIGNvbGxlY3QgdGhlIHN0YWNrdHJhY2Ug
ZGlyZWN0bHkgZnJvbSB0aGUgc2lnbmFsIGhhbmRsZXIgKHNlZSBodHRwczovL2dpdGh1Yi5jb20v
dG1tMS9zdGFja3Byb2YvcHVsbC8xNTAgY2MgQGpoYXd0aG9ybiAmIEB0ZW5kZXJsb3ZlbWFraW5n
KS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQnVnICMxOTExOTog
QWRkIGFuIGludGVyZmFjZSBmb3Igb3V0LW9mLXByb2Nlc3MgcHJvZmlsaW5nIHRvb2xzIHRvIGFj
Y2VzcyBSdWJ5IGluZm9ybWF0aW9uCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8x
OTExOSNjaGFuZ2UtMTAwMDkyCgoqIEF1dGhvcjoga2p0c2FuYWt0c2lkaXMgKEtKIFRzYW5ha3Rz
aWRpcykKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCiogQmFja3BvcnQ6IDIuNzog
VU5LTk9XTiwgMy4wOiBVTktOT1dOLCAzLjE6IFVOS05PV04KLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQoKV2FybmluZzogdGhpcyBpcyBhIHZlcnkgbG9uZyBwcm9wb3Nh
bCA6KCBJIGRvbid0IHJlYWxseSBrbm93IHdoYXQgdGhlIG1vc3QgcHJvZHVjdGl2ZSB3YXkgdG8g
ZW5nYWdlIHdpdGggdGhlIFJ1YnkgY29tbXVuaXR5IGFib3V0IHRoaXMgaXMgLSBpZiB0aGVyZSdz
IGEgYmV0dGVyIHBsYWNlIHRvIHRha2UgdGhpcywgcGxlYXNlIGxldCBtZSBrbm93IQoKSSBhbHNv
IHdhbnQgdG8gYWNrbm93bGVkZ2UgQGl2b2Fuam8gZm9yIGNvbnRyaWJ1dGluZyB0byB0aGlzIHBy
b3Bvc2FsIC0gSSBib3VuY2VkIG1hbnkgaWRlYXMgYWJvdXQgcHJvZmlsaW5nIG9mZiBoaW0gYW5k
IHRoZSBpbXByb3ZlZC1iYWNrdHJhY2Ugc3R1ZmYgaXMgYWxsIGJhc2VkIG9uIGhpcyBbYmFja3Ry
YWNpZV0oaHR0cHM6Ly9naXRodWIuY29tL2l2b2Fuam8vYmFja3RyYWNpZSkgZ2VtLgoKIyMgTW90
aXZhdGlvbgoKV2hlbiBkZWFsaW5nIHdpdGggbGFyZ2UgYW5kIG9sZCBSdWJ5IGFwcHMsIHRoZXJl
IGlzIG9mdGVuIGJvdGggYSBuZWVkIHRvIGltcHJvdmUgdGhlIHBlcmZvcm1hbmNlIG9mIHNvbWUg
b3BlcmF0aW9ucywgYXMgd2VsbCBhcyBhIGxhY2sgb2YgdW5kZXJzdGFuZGluZyBhcyB0byBob3cs
IHByZWNpc2VseSwgdGhlIGNvZGUgd29ya3MsIGFuZCB3aGF0IGFzcGVjdCBvZiBpdCBpcyBhY3R1
YWxseSBzbG93LiBGdXJ0aGVybW9yZSwgdGhlIHBlcmZvcm1hbmNlIGlzc3VlcyBpbiBxdWVzdGlv
biBvZnRlbiBvbmx5IGFwcGVhciBpbiBhIGxpdmUsIHByb2R1Y3Rpb24gZW52aXJvbm1lbnQsIHdo
ZXJlIHRoZXJlIGlzIHNvbWUgdHJhZmZpYyBwYXR0ZXJuIG9yIHVzZXIgZGF0YSBjYXVzaW5nIHRo
ZSBwcm9ibGVtLiBJbiBzaXR1YXRpb25zIGxpa2UgdGhpcywgcHJvZmlsaW5nIHRvb2xzIGNhbiBw
cm92ZSBpbnZhbHVhYmxlIGluIGhlbHBpbmcgdG8gdW5kZXJzdGFuZCBhcHBsaWNhdGlvbiBwZXJm
b3JtYW5jZSBpbi1zaXR1IGluIHByb2R1Y3Rpb24uCgpUaGUgdGhpbmdzIHdoaWNoIGFuIGVuZ2lu
ZWVyIG1pZ2h0IHVzZSBhIHByb2ZpbGVyIHRvIG1lYXN1cmUgaW5jbHVkZToKICAqIFdhbGwgY2xv
Y2sgdGltZTsgaG93IGxvbmcgZG8gcGFydGljdWxhciBtZXRob2QgY2FsbHMgdGFrZT8KICAqIENQ
VSB0aW1lOyBvZiB0aGUgdGltZSBhIG1ldGhvZCB0YWtlcywgaG93IGxvbmcgaXMgc3BlbnQgYWN0
dWFsbHkgX3J1bm5pbmdfIG9uIHRoZSBDUFUsIGFuZCBob3cgbXVjaCBpcyBzcGVudCBibG9ja2Vk
IHdhaXRpbmcgZm9yIGUuZy4gYSBuZXR3b3JrIHJlc3BvbnNlPwogICogR1ZMIGNvbnRlbnRpb247
IGlzIGFuIGFwcGxpY2F0aW9uIHVzaW5nIGxvdHMgb2YgdGhyZWFkcyBqdXN0IHdhaXRpbmcgZm9y
IHRoZSBHVkwgdG8gYmVjb21lIGF2YWlsYWJsZT8KICAqIEdDIHRpbWU7IGlzIGEgcGFydGljdWxh
ciBwaWVjZSBvZiBjb2RlIF9hY3R1YWxseV8gc2xvdywgb3IgaXMgaXRzIHNsb3duZXNzIGp1c3Qg
YSByZXN1bHQgb2YgX290aGVyXyBjb2RlIGNhdXNpbmcgdGhlIEdDIHRvIGJlIGludm9rZWQ/CiAg
KiBBbGxvY2F0aW9uczsgaG93IG1hbnkgb2JqZWN0cyBpcyBhIHBhcnRpY3VsYXIgcGllY2Ugb2Yg
Y29kZSBhbGxvY2F0aW5nLCBhbmQgd2hhdCBpbXBhY3QgaXMgdGhpcyBoYXZpbmcgb24gR0M/CiAg
KiBIZWFwOyBvZiB0aGUgb2JqZWN0cyBhIHBhcnRpY3VsYXIgcGllY2Ugb2YgY29kZSBhbGxvY2F0
ZWQsIGhvdyBtYW55IG9mIHRoZW0gYXJlIHN0aWxsIGxpdmU/IElzIHRoZXJlIHNvbWUga2luZCBv
ZiBsZWFrPwoKR2VuZXJhbGx5LCBpbiBvcmRlciB0byBjb2xsZWN0IHRoaXMgaW5mb3JtYXRpb24g
ZnJvbSBwcm9kdWN0aW9uIGluIGEgbWluaW1hbGx5LWltcGFjdGZ1bCB3YXksIGEgc2FtcGxpbmcg
YXBwcm9hY2ggaXMgdXNlZC4gQSBwcm9maWxpbmcgdG9vbCBwZXJpb2RpY2FsbHkgdGFrZXMgYSBz
bmFwc2hvdCBvZiB0aGUgY3VycmVudCBjYWxsLXN0YWNrIG9mIGEgUnVieSBwcm9ncmFtOyBkZXBl
bmRpbmcgb24gd2hhdCBpcyBiZWluZyBtZWFzdXJlZCwgdGhpcyBwZXJpb2RpY2l0eSBtaWdodCBi
ZSBlLmcuIHNpbXBseSBldmVyeSBOIG1zIChmb3Igd2FsbC1jbG9jayBwcm9maWxpbmcpLCBldmVy
eSBOIGFsbG9jYXRpb25zIChmb3IgYWxsb2NhdGlvbiBwcm9maWxpbmcpLCBldGMuIFRoZW4sIHRo
ZSBkYXRhIHdpbGwgZ2VuZXJhbGx5IGJlIGNvbWJpbmVkIGFjcm9zcyBtYW55IGluc3RhbmNlcyBv
ZiBhIHByb2dyYW0gdG8gZ2V0IGFuIGFnZ3JlZ2F0ZSB2aWV3ICh0aHJvdWdoIGUuZy4gYSBmbGFt
ZSBncmFwaCkuCgpJbiBhZGRpdGlvbiB0byB0aGlzIGZsZWV0LXdpZGUgYWdncmVnYXRpb24sIGl0
J3Mgc29tZXRpbWVzIHVzZWZ1bCB0byBwcm9maWxlIGEgcGFydGljdWxhciBwcm9jZXNzIHdoaWNo
IGhhcyBzdWRkZW5seSBzdGFydGVkIGRpc3BsYXlpbmcgc29tZSBwYXRob2xvZ3kgb2YgaW50ZXJl
c3QuIEZvciBleGFtcGxlLCBpZiB5b3UgaGFkIGEgd2Vic2VydmVyIHByb2Nlc3MgdGhhdCBoYWQg
c3VkZGVubHkgYmVjb21lIHN0dWNrLCB5b3UgbWlnaHQgd2FudCB0byBhdHRhY2ggYSBwcm9maWxl
ciB0byBmaW5kIG91dCBfd2h5Xy4gSW4gc2NlbmFyaW9zIGxpa2UgdGhpcywgaXQncyBvZnRlbiBp
bXBvc3NpYmxlIHRvIG1ha2Ugc29tZSBhZGp1c3RtZW50IHRvIHRoZSBwcm9ncmFtIHRvIGVuYWJs
ZSBwcm9maWxpbmcgYW5kIHJlc3RhcnQgaXQ7IHRoZSBhY3Qgb2YgcmVzdGFydGluZyBpdCB3b3Vs
ZCBtYWtlIHRoZSBwcm9ibGVtIGdvIGF3YXkgKGZvciBub3chKS4KCiMjIEN1cnJlbnQgc3RhdGUg
b2YgdGhlIGFydAoKVGhpcyByZXByZXNlbnRzIG15IGJlc3QgdW5kZXJzdGFuZGluZyBvZiB0aGUg
d2F5cyBpbiB3aGljaCBtb3N0IFJ1YnkgcHJvZmlsaW5nIHRvb2xzIHdvcmsgdG9kYXkuIEknbSBz
dXJlIEkndmUgbWlzc2VkIHNvbWUgaW1wb3J0YW50IGRldGFpbHMgYW5kIG90aGVyIHRvb2xzLCBm
b3Igd2hpY2ggSSdtIGRlZXBseSBzb3JyeS4KCiMjIyBTaWduYWwtYmFzZWQgcHJvZmlsaW5nCgpT
aWduYWwtYmFzZWQgcHJvZmlsZXJzIGNhbiBiZSB1c2VkIHRvIG1lYXN1cmUgQ1BVIGFuZCB3YWxs
IGNsb2NrIHRpbWUuIEluIHRoaXMgc2NoZW1lLCBhIHByb2ZpbGVyIChpbiB0aGUgZm9ybSBvZiBh
biBleHRlbnNpb24gZ2VtKSBzZXRzIHVwIGEgc2lnbmFsIGhhbmRsZXIgZm9yIFNJR1BST0YgaW4g
QywgYW5kIHRoZW4gYXJyYW5nZXMgZm9yIFNJR1BST0YgdG8gYmUgZGVsaXZlcmVkIHRvIHRoZSBw
cm9jZXNzIHJlcGVhdGVkbHkgaW4gc29tZSBraW5kIG9mIGxvb3AuIFRoZSBzaWduYWwgaGFuZGxl
ciB0aGVuIGNhcHR1cmVzIGEgc3RhY2sgdHJhY2UgdXNpbmcgdGhlIGByYl9wcm9maWxlX2ZyYW1l
c2AgQVBJIGZyb20gdGhlIEMgZXh0ZW5zaW9uIGFuZCByZWNvcmRzIHRoaXMgYXMgYSBzaW5nbGUg
c2FtcGxlLgoKVGhpcyBpcyB0aGUgbWVjaGFuaXNtIHVzZWQgZm9yIENQVS93YWxsIGNsb2NrIHBy
b2ZpbGluZyBpbiBbU3RhY2twcm9mXShodHRwczovL2dpdGh1Yi5jb20vdG1tMS9zdGFja3Byb2Yp
LCB0aGUgW0RhdGFkb2cgY29udGludW91cyBwcm9maWxlcl0oaHR0cHM6Ly9naXRodWIuY29tL0Rh
dGFEb2cvZGQtdHJhY2UtcmIpLCBhbmQgSSdtIHN1cmUgb3RoZXJzLiBJdCdzIGFsc28gYSB3ZWxs
LWtub3duIG1lY2hhbmlzbSB1c2VkIGluIG90aGVyIG5vbi1SdWJ5IHRvb2xzIGxpa2UgW2dwZXJm
dG9vbHNdKGh0dHBzOi8vZ3BlcmZ0b29scy5naXRodWIuaW8vZ3BlcmZ0b29scy9jcHVwcm9maWxl
Lmh0bWwpCgpPbmUgYmVuZWZpdCBvZiB0aGlzIG1lY2hhbmlzbSBpcyB0aGF0IGl0IHNob3VsZCBi
ZSBxdWl0ZSBmYXN0LiBUcmlnZ2VyaW5nIHRoZSBzaWduYWwgY2F1c2VzIGEgY29udGV4dCBzd2l0
Y2ggaW50byB0aGUga2VybmVsICYgYmFjayBpbnRvIHRoZSBoYW5kbGVyLCBidXQgZXhlY3V0aW9u
IHN0YXlzIGluc2lkZSB0aGUgY3VycmVudCBwcm9ncmFtOyB0aGVyZSdzIG5vIG5lZWQgZm9yIHRo
ZSBleGVjdXRpb24gdG8gc3dpdGNoIHRvIGFub3RoZXIgcHJvZ3JhbSAoYW5kIGNvbnNlcXVlbnRs
eSBjaGFuZ2UgYWRkcmVzcyBzcGFjZSkuCgpUaGUgZG93bnNpZGUgb2YgdGhpcyBhcHByb2FjaCBp
cyB0aGF0IGl0IHJlcXVpcmVzIHNvbWUgbGV2ZWwgb2YgY29vcGVyYXRpb24gZnJvbSB0aGUgcHJv
Z3JhbSBiZWluZyBwcm9maWxlZC4gU29tZXRoaW5nIGluc2lkZSB0aGUgcHJvY2VzcyBtdXN0IGlu
c3RhbGwgdGhlIFNJR1BST0YgaGFuZGxlcjsgaWYgeW91IGhhdmUgc29tZSBleGlzdGluZywgcnVu
bmluZyBSdWJ5IHByb2Nlc3MgZm9yIHdoaWNoIGEgcHJvZmlsZXIgaXMgbm90IGxvYWRlZCwgeW91
IGNhbm5vdCBiZWdpbiBwcm9maWxpbmcgaXQgd2l0aG91dCByZXN0YXJ0aW5nIGl0IChhbmQgdXNp
bmcgc29tZSBtZWNoYW5pc20gbGlrZSBhIGAtcm15X3Byb2ZpbGVyL2F1dG9sb2FkYCBmbGFnKS4K
CkFub3RoZXIgcHJvYmxlbSB3aXRoIHRoaXMgYXBwcm9hY2ggaXMgdGhlIGVmZmVjdCB0aGVzZSBT
SUdQUk9GIHNpZ25hbHMgaGF2ZSBvbiB0aGUgYXBwbGljYXRpb24uIE5vcm1hbGx5LCB0aGUgcHJv
ZmlsZXIgaW5zdGFsbHMgdGhlIHNpZ25hbCBoYW5kbGVyIHdpdGggdGhlIFNBX1JFU1RBUlQgZmxh
ZzsgdGhpcyBfc2hvdWxkXyBtZWFuIHRoYXQgYW55IGluLXByb2dyZXNzIHN5c3RlbSBjYWxsIHRo
ZSBhcHBsaWNhdGlvbiBpcyBkb2luZyB3aGVuIHRoZSBTSUdQUk9GIGFycml2ZXMgZ2V0cyB0cmFu
c3BhcmVudGx5IHJlc3RhcnRlZCB3aGVuIHRoZSBoYW5kbGVyIGZpbmlzaGVzIGNvbGxlY3Rpbmcg
aXRzIHNhbXBsZS4gSG93ZXZlciwgb24gTGludXggYXQgbGVhc3QsIHRoZXJlIGFyZSBzb21lIHN5
c3RlbSBjYWxscyB3aGljaCBhcmUgX05PVF8gcmVzdGFydGVkIHdoZW4gU0FfUkVTVEFSVCBoYXBw
ZW5zIC0gbm90YWJseSBzb21lIG5ldHdvcmsgcmVsYXRlZCBvbmVzIGxpa2UgcG9sbCwgZXBvbGws
IGFuZCBzZW5kL3JlY3Ygd2hlbiBhIHNvY2tldCB0aW1lb3V0IGlzIHNldC4gVGhlc2Ugc3lzdGVt
IGNhbGxzIHdpbGwgaW5zdGVhZCBmYWlsIHdpdGggRUlOVFI7IHdlbGwgYmVoYXZlZCBwcm9ncmFt
cyBhbmQgbGlicmFyaWVzIF9TSE9VTERfIHJldHJ5IHRoaXMuCgpTYWRseSwgaG93ZXZlciwgdGhl
IHJlcGVhdGVkIGRlbGl2ZXJ5IG9mIFNJR1BST0YgdGVucyBvciBodW5kcmVkcyBvZiB0aW1lcyBw
ZXIgc2Vjb25kIGRvZXMgaGF2ZSBhIHdheSBvZiBzaGFraW5nIG91dCBjb3JuZXItY2FzZXMgaW4g
bGlicmFyaWVzIHdoZXJlIHRoaXMgaXNuJ3QgYmVpbmcgZG9uZSBwcm9wZXJseS4gRm9yIGV4YW1w
bGUsIEkgaGF2ZSBwZXJzb25hbGx5IGRpc2NvdmVyZWQgdGhlIGhhcmQgd2F5IHRoYXQgbGlibXlz
cWxjbGllbnQgdmVyc2lvbiA1LjcgZG9lcyB0aGlzIHdyb25nIGluIG9uZSBwbGFjZSwgc28gZW5h
YmxpbmcgYSBTSUdQUk9GLWJhc2VkIHByb2ZpbGVyIGNhbiBjYXVzZSBsaWJteXNxbGNsaWVudCB0
byBlcnJvbmVvdXNseSB0aGluayB0aGF0IGRhdGFiYXNlIGNvbm5lY3Rpb25zIHdlcmUgY2xvc2Vk
LiBUaGlzIGlzIHVuZG91YnRlZGx5IGEgYnVnIGluIGxpYm15c3FsY2xpZW50ICh3aGljaCwgYnkg
dGhlIHdheSwgc2VlbXMgdG8gYmUgZml4ZWQgaW4gdmVyc2lvbiA4KSwgdGhhdCBfY291bGRfIGJl
IHRyaWdnZXJlZCBieSBhbnkgb3RoZXIgc2lnbmFsLiBUaGVyZSdzIG5vIGRlbnlpbmcgdGhvdWdo
IHRoYXQgU0lHUFJPRi1iYXNlZCBwcm9maWxpbmcgaXMgYSByZWFsIHRvcnR1cmUtdGVzdCBmb3Ig
RUlOVFIgaGFuZGxpbmcsIGFuZCB0aGVyZSB1bmRvdWJ0ZWRseSBfYXJlXyBidWdneSBsaWJyYXJp
ZXMgb3V0IHRoZXJlIGluIHRoZSB3aWxkIHRoYXQgcGVvcGxlIGFyZSB1c2luZyBpbiB0aGVpciBh
cHBsaWNhdGlvbnMuIEl0IHdvdWxkIGJlIG5pY2UgaWYgUnVieSBwcm9maWxlcnMgY291bGQgd29y
ayBhcm91bmQgdGhpcyBwcm9ibGVtLgoKIyMjIFJVQllfSU5URVJOQUxfRVZFTlRfTkVXT0JKIHBy
b2ZpbGluZwoKQ29sbGVjdGlvbiBvZiBzdGFja3MgZnJvbSBTSUdQUk9GIHdvcmtzIGZvciBDUFUv
d2FsbCB0aW1lIHByb2ZpbGluZywgYnV0IGEgZGlmZmVyZW50IGFwcHJvYWNoIGlzIG5lZWRlZCBm
b3IgaW4tcHJvY2VzcyBwcm9maWxlcnMgdG8gY29sbGVjdCBhbGxvY2F0aW9uIHByb2ZpbGVzLiBU
aGlzIGlzIG5vcm1hbGx5IGRvbmUgYnkgcmVnaXN0ZXJpbmcgYSB0cmFjZXBvaW50IGhhbmRsZXIg
Zm9yIFJVQllfSU5URVJOQUxfRVZFTlRfTkVXT0JKIGluIHRoZSBwcm9maWxlciBleHRlbnNpb24g
Z2VtOyB0aGlzIGlzIGNhbGxlZCBldmVyeSB0aW1lIGEgUnVieSBvYmplY3QgaXMgYWxsb2NhdGVk
LiBGcm9tIHRoaXMgaGFuZGxlciwgdGhlIHByb2ZpbGVyIGNhbiB1c2UgYHJiX3Byb2ZpbGVfZnJh
bWVzYCBhZ2FpbiB0byBjb2xsZWN0IGEgUnVieSBiYWNrdHJhY2Ugb2YgdGhlIGNvZGUgcmVzcG9u
c2libGUgZm9yIGFsbG9jYXRpbmcgdGhpcyBvYmplY3QuCgojIyMgUHRyYWNlLWJhc2VkIHByb2Zp
bGluZwoKQW5vdGhlciBhcHByb2FjaCB0aGF0IGhhcyBiZWVuIHVzZWQgaXMgdG8gY29udHJvbCB0
aGUgUnVieSBwcm9ncmFtIHRvIGJlIHByb2ZpbGVkIHdpdGggYW5vdGhlciwgc2VwYXJhdGUgcHJv
Y2VzcywgdXNpbmcgYW4gYXBwcm9wcmlhdGUgcGxhdGZvcm0gQVBJIChlLmcuIHB0cmFjZSBvbiBM
aW51eCkuIFBlcmlvZGljYWxseSwgdGhlIHByb2ZpbGVyIHByb2Nlc3MgY2FuIHVzZSBwdHJhY2Ug
dG8gc3VzcGVuZCBleGVjdXRpb24gb2YgdGhlIHRhcmdldCBSdWJ5IHByb2dyYW0sIGFuZCBjb2xs
ZWN0IGEgc3RhY2sgdHJhY2Ugb2YgaXQuIFRoaXMgaXMgdGhlIGFwcHJvYWNoIHVzZWQgYnkgdGhl
IFtyYnNweV0oaHR0cHM6Ly9naXRodWIuY29tL3Jic3B5L3Jic3B5KSBwcm9maWxlciwgd2hpY2gg
aXMgaXRzZWxmIGFjdHVhbGx5IGEgUnVzdCBwcm9ncmFtLgoKVGhlIG1haW4gc3RyZW5ndGggb2Yg
dGhpcyBhcHByb2FjaCBpcyB0aGF0IGl0IGFsbG93cyBvbmUgdG8gYmVnaW4gdHJhY2luZyBhIFJ1
YnkgcHJvZ3JhbSB3aGljaCBpcyBhbHJlYWR5IHJ1bm5pbmcsIF93aXRob3V0IHJlc3RhcnRpbmcg
aXRfOyByYnNweSBjYW4gcHRyYWNlLWF0dGFjaCB0byBhIHJ1bm5pbmcgcHJvY2VzcyBhbmQgYmVn
aW4gY29sbGVjdGluZyBzYW1wbGVzIHN0cmFpZ2h0IGF3YXkuIFRoaXMgYWxsb3dzIG9uZSB0byBn
YWluIGluc2lnaHQgaW50byBpbnRlcm1pdHRlbnQgcHJvYmxlbXMgb25jZSB0aGV5IHN0YXJ0IGhh
cHBlbmluZyEKClVuZm9ydHVuYXRlbHksICJjb2xsZWN0IGEgc3RhY2sgdHJhY2UiIGlzIHF1aXRl
IHRyaWNreSB0byBkbyBmcm9tIG91dHNpZGUgdGhlIHByb2Nlc3M7IHdlIHdhbnQgdGhlIF9SdWJ5
XyBsZXZlbCBzdGFjayB0cmFjZSwgbm90IChvciBhdCBsZWFzdCwgYXMgd2VsbCBhcykgdGhlIG1h
Y2hpbmUgc3RhY2sgdHJhY2UgKHdoaWNoIGNvdWxkIGJlIGNvbGxlY3RlZCBlLmcuIHZpYSBEV0FS
RiB1bndpbmRpbmcgb3IgZnJhbWUtcG9pbnRlciBjaGFzaW5nKS4gVG8gZ2V0IHRoZSBSdWJ5IHN0
YWNrIHRyYWNlIHJlcXVpcmVzIHJ1bW1hZ2luZyBhcm91bmQgaW5zaWRlIHRoZSBtZW1vcnkgb2Yg
dGhlIHRhcmdldCBwcm9jZXNzIChlLmcuIHdpdGggYC9wcm9jL3twaWR9L21lbWAgb24gTGludXgp
LCB0byBmaW5kIHRoZSByZWxldmFudCBgcmJfY29udHJvbF9mcmFtZV90YCBzdHJ1Y3R1cmVzLiBS
YnNweSBjb250YWlucyBhIGh1Z2UgbGlzdCBvZiBzdHJ1Y3R1cmUgZGVmaW5pdGlvbnMgZm9yIHZh
cmlvdXMgdmVyc2lvbnMgb2YgUnVieSB0byBtYWtlIHRoaXMgcG9zc2libGUsIGJ1dCBhbnkgdGlt
ZSBhIG5ldyB2ZXJzaW9uIG9mIFJ1YnkgaXMgcmVsZWFzZWQsIGEgbmV3IHZlcnNpb24gb2YgUmJz
cHkgbXVzdCBhbHNvIGJlIHJlbGVhc2VkIHRvIGFjY291bnQgZm9yIGFueSBjaGFuZ2VzIHRvIHRo
ZSBsYXlvdXQgb2YgUnVieSdzIGludGVybmFsIHN0cnVjdHVyZXMuCgpJbiB0aGVvcnksIHRoZSBw
dHJhY2UgYXBwcm9hY2ggaXMgYWxzbyB3b3JzZSBmcm9tIGEgcGVyZm9ybWFuY2UgcGVyc3BlY3Rp
dmU7IHRvIGNvbGxlY3QgYSBzYW1wbGUsIGV4ZWN1dGlvbiBtdXN0IHN3aXRjaCBmcm9tIHRoZSBw
cm9jZXNzIHRvIGJlIHByb2ZpbGVkIHRvIHRoZSBwcm9maWxlciBwcm9jZXNzLCB3aGljaCByZXF1
aXJlcyBzd2l0Y2hpbmcgbWVtb3J5IG1hcHBpbmdzLiBSZWNhbGwgdGhhdCB3aXRoIGluLXByb2Nl
c3MgU0lHUFJPRiBwcm9maWxpbmcsIHRoZSBwcm9maWxlciB3b3JrIGlzIGRvbmUgaW4gdGhlIHNh
bWUgcHJvY2VzcyB3aXRoIHRoZSBzYW1lIG1lbW9yeSBtYXBwaW5ncy4gSG93ZXZlciwgdGhpcyBj
b25jZXJuIHNlZW1zIHRvIGJlIGxhcmdlbHkgdGhlb3JldGljYWw7IEkgaGF2ZSBub3QgX2FjdHVh
bGx5XyBzZWVuIG9yIGhlYXJkIG9mIGFueWJvZHkgc2F5aW5nIHRoYXQgdGhpcyBpcyBtYWtpbmcg
cmJzcHkgdG9vIHNsb3cgZm9yIHRoZWlyIHVzZWNhc2UuCgpGaW5hbGx5LCBhbHRob3VnaCBwdHJh
Y2UtYmFzZWQgcHJvZmlsaW5nIGdldHMgdXMgX2Nsb3NlXyB0byB0aGUgaWRlYWwgb2Ygbm90IHJl
cXVpcmluZyBhbnkgZm9yZXNpZ2h0IHRvIGJlZ2luIHByb2ZpbGluZyBhIHJ1bm5pbmcgcHJvZ3Jh
bSwgdGhlcmUgaXMgX29uZV8gc21hbGwgcmVxdWlyZW1lbnQgd2hpY2ggbXVzdCBiZSBzYXRpc2Zp
ZWQgYWhlYWQgb2YgdGltZSAtIHRoZSBSdWJ5IGludGVycHJldGVyIG5lZWRzIHRvIGhhdmUgbm90
IGhhZCBpdHMgc3ltYm9scyBzdHJpcHBlZCBzbyB0aGF0IHJic3B5IGNhbiBmaW5kIHRoZSBgcnVi
eV9jdXJyZW50X3ZtX3B0cmAgZ2xvYmFsLiBJIGJlbGlldmUgcmJzcHkgbWFrZXMgYW4gX2F0dGVt
cHRfIHRvIGZpbmQgaXQgd2l0aG91dCB0aGUgc3ltYm9sIGJ1dCBpdCBkb2VzIG5vdCBjbGFpbSB0
byBiZSByZWxpYWJsZS4KCiMjIyBBbGxvY2F0aW9uIHNhbXBsaW5nIGZyb20gcHRyYWNlLWJhc2Vk
IHByb2ZpbGluZwoKVG8gcGVyZm9ybSBhbGxvY2F0aW9uIHByb2ZpbGluZyBmcm9tIG91dHNpZGUg
dGhlIFJ1YnkgcHJvY2Vzcywgd2Ugd291bGQgbmVlZCBzb21lIGFuYWxvZ3VlIHRvIFJVQllfSU5U
RVJOQUxfRVZFTlRfTkVXT0JKLiBJIGJlbGlldmUgdGhpcyBfY291bGRfIGJlIGFjaGlldmVkIGJ5
IGNvbXBpbGluZyBSdWJ5IHdpdGggZHRyYWNlL3N5c3RlbXRhcC9VU0RUIHByb2JlcyBlbmFibGVk
LCBhbmQgaGF2aW5nIHRoZSBwcm9maWxlciBwcm9jZXNzIHdyaXRlIGEgdHJhcCBpbnN0cnVjdGlv
biBvdmVyIHRoZSB0b3Agb2YgdGhlIHByb2JlICh3aGljaCBpcyBob3cgZS5nLiBkZWJ1Z2dlcnMg
d29yaykuIEkgZG9uJ3QgYmVsaWV2ZSByYnNweSBvciBhbnkgb3RoZXIgcHJvZmlsZXIgdGhhdCBJ
IGZvdW5kIGFjdHVhbGx5IGRvZXMgdGhpcyB0aG91Z2guCgojIyMgUGVyZi1iYXNlZCBwcm9maWxp
bmcKCkxpbnV4IGhhcyBhIGRlZGljYXRlZCBzdWJzeXN0ZW0gY2FsbGVkIHBlcmYgd2hpY2ggKGFt
b25nc3QgbWFueSBvdGhlciB0aGluZ3MpIGNhbiBkbyBsb3ctb3ZlcmhlYWQgcHJvZmlsaW5nIG9m
IGFyYml0cmFyeSBwcm9jZXNzZXMuIFRoZSBzYW1wbGluZyBpcyBkb25lIGluc2lkZSB0aGUga2Vy
bmVsLCBzbyBsaWtlIFNJR1BST0YgKGFuZCB1bmxpa2UgcHRyYWNlKSBjb2xsZWN0aW5nIGEgc2Ft
cGxlIHJlcXVpcmVzIG5vIHN3aXRjaCBvZiBhZGRyZXNzIHNwYWNlLiBIb3dldmVyLCBvZiBjb3Vy
c2UsIHBlcmYgb25seSB1bmRlcnN0YW5kcyB0aGUgbWFjaGluZSBzdGFjaywgbm90IHRoZSBSdWJ5
IHN0YWNrLCBzbyB1c2luZyBwZXJmIHRvIHByb2ZpbGUgYSBSdWJ5IHByb2dyYW0gaXMgbm90IGN1
cnJlbnRseSBleHRyYW9yZGluYXJpbHkgdXNlZnVsICh1bmxlc3MgeW91J3JlIHByb2ZpbGluZyB0
aGUgUnVieSBWTSBpdHNlbGYgb3IgYSBDIGV4dGVuc2lvbikuCgpQZXJmIGFjdHVhbGx5IGhhcyBh
IFttZWNoYW5pc21dKGh0dHBzOi8vd3d3LmJyZW5kYW5ncmVnZy5jb20vcGVyZi5odG1sI0pJVF9T
eW1ib2xzKSB0byBoZWxwIGdpdmUgbWVhbmluZ2Z1bCBzdGFjayB0cmFjZXMgZm9yIGxhbmd1YWdl
cyB3aXRoIEpJVHM7IHRoZSBhcHBsaWNhdGlvbiBpcyBleHBlY3RlZCB0byB3cml0ZSBvdXQgYSBt
YXBwaW5nIG9mIGZ1bmN0aW9uIGFkZHJlc3MgLT4gbmFtZSB0byBhIGZpbGUgYC90bXAvcGVyZi0k
UElELm1hcGA7IHBlcmYgd2lsbCB1c2UgdGhpcyBmaWxlIHRvIHN5bWJvbGljYXRlIHN0YWNrcy4g
UHl0aG9uIFtyZWNlbnRseSBhZGRlZF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvZGV2L2hvd3Rv
L3BlcmZfcHJvZmlsaW5nLmh0bWwpIHN1cHBvcnQgZm9yIHRoaXMgbWVjaGFuaXNtIGFzIHdlbGw7
IGhvd2V2ZXIsIGJlY2F1c2UgQ1B5dGhvbiBkb2VzIG5vdCBoYXZlIGEgSklULCBpdCB3b3JrcyBi
eSBnZW5lcmF0aW5nIGEgbmF0aXZlIHRyYW1wb2xpbmUgZm9yIGVhY2ggZnVuY3Rpb24gKHdpdGgg
YSB1bmlxdWUgYWRkcmVzcyksIGFuZCBjYWxsaW5nIHRoZSBhcHByb3ByaWF0ZSB0cmFtcG9saW5l
cyBkdXJpbmcgUHl0aG9uIG1ldGhvZCBleGVjdXRpb24gdG8gbWFrZSB0aGUgbWFjaGluZSBzdGFj
ayBtaXJyb3IgdGhlIFZNIG9uZS4gVGhpcyBtZWNoYW5pc20gaXMgbm90IGltcGxlbWVudGVkIGlu
IENSdWJ5IGN1cnJlbnRseS4KCiMjIFRoZSBwcm9wb3NhbDogcHJvdmlkZSBhbiAiZXh0ZXJuYWwg
ZGVidWcgc2VjdGlvbiIKCldlIGlkZWFsbHkgd291bGQgbGlrZSB0byBoYXZlIGEgd2F5IHRvIHBy
b2ZpbGUgUnVieSBhcHBsaWNhdGlvbnMgd2hpY2ggY29tYmluZXMgdGhlIGJlbmVmaXRzIG9mIHRo
ZSBTSUdQUk9GIG1lY2hhbmlzbSAoZWFzeSwgZG9jdW1lbnRlZCBhY2Nlc3MgdG8gUnVieSBjYWxs
IHN0YWNrcyksIHRoZSBwdHJhY2UgbWVjaGFuaXNtICh0aGUgYWJpbGl0eSB0byBhdHRhY2ggdG8g
cnVubmluZyBwcm9jZXNzZXMgd2l0aCBhIG1pbmltdW0gb2YgZm9yZXNpZ2h0IHJlcXVpcmVkKSwg
YW5kIHRoZSBwZXJmIG1lY2hhbmlzbSAobG93IG92ZXJoZWFkIHNhbXBsZSBjb2xsZWN0aW9uIHdp
dGhvdXQgcmVxdWlyaW5nIGEgcHJvY2VzcyBhZGRyZXNzIHNwYWNlIHN3aXRjaCkuIFRoaXMgcHJv
cG9zYWwgYWltcyB0byBwcm92aWRlIGV4YWN0bHkgdGhhdC4KClRoZSBSdWJ5IGludGVycHJldGVy
IHdvdWxkIGhhdmUgYSBuZXcgZ2xvYmFsIHZhcmlhYmxlIGByYl9kZWJ1Z19leHRfc2VjdGlvbmAs
IHdoaWNoIGlzIGRlZmluZWQgd2l0aCBgX19hdHRyaWJ1dGVfXygoc2VjdGlvbigicmJfZGVidWdf
ZXh0IikpKWAgc28gdGhhdCBpdCBhcHBlYXJlZCBpbiBhIHNlcGFyYXRlIHNlY3Rpb24gaW4gdGhl
IEVMRiBiaW5hcnkuIFRoaXMgdmFyaWFibGUgd291bGQgYmUgY29uc3RhbnRseSBrZXB0IHBvcHVs
YXRlZCB3aXRoIHVwLXRvLWRhdGUgaW5mb3JtYXRpb24gYWJvdXQgYWxsIHRoZSBjYWxsLXN0YWNr
cyBvZiBhbGwgdGhyZWFkcy9maWJlcnMgaW4gdGhlIHByb2dyYW0uIEFuIGV4dGVybmFsIGRlYnVn
Z2luZyB0b29sIGNvdWxkIGVhc2lseSAoImVhc2lseSIpIHB0cmFjZSBhIHJ1bm5pbmcgUnVieSBw
cm9ncmFtLCBhbmQgZmluZCB0aGUgYWRkcmVzcyBvZiB0aGlzIHNlY3Rpb24gaW4gaXRzIHJ1bm5p
bmcgbWVtb3J5LCBldmVuIGlmIHN5bWJvbHMgaGF2ZSBiZWVuIHN0cmlwcGVkLiBPbmNlIGFuIGV4
dGVybmFsIHRvb2wgaGFzIGZvdW5kIHRoaXMgdmFyaWFibGUsIGl0IG5lZWRzIHRvIG1ha2Ugc2Vu
c2Ugb2YgaXQuIFJ1Ynkgd291bGQgcHJvdmlkZSBhIG5ldyBoZWFkZXIgZmlsZSBgaW5jbHVkZS9y
dWJ5L2RlYnVnX2V4dGVybmFsLmhgIHdoaWNoIGRlc2NyaWJlZCB0aGUgbGF5b3V0IG9mIHRoaXMg
c3RydWN0dXJlLgoKVGhlIHNpbXBsZSwgc2xvdyB2ZXJzaW9uIG9mIGFuIGV4dGVybmFsIHByb2Zp
bGVyIHVzaW5nIHRoaXMgaW50ZXJmYWNlIHdvdWxkIGJlIGEgbG90IGxpa2UgcmJzcHk7IGl0IHdv
dWxkIHVzZSBwdHJhY2UgdG8gcGVyaW9kaWNhbGx5IHN0b3AgdGhlIFJ1YnkgcHJvY2VzcywgYW5k
IHRoZW4gdXNlIHRoZSBjb250ZW50cyBvZiBgcmJfZGVidWdfZXh0X3NlY3Rpb25gIHRvIGNvbGxl
Y3QgUnVieSBiYWNrdHJhY2VzIGZvciBDUFUvd2FsbC1jbG9jayBwcm9maWxpbmcuIFRoZSBiZW5l
Zml0LCBvZiBjb3Vyc2UsIGlzIHRoYXQgaXQncyB1c2luZyBhIGRvY3VtZW50ZWQgaW50ZXJmYWNl
IHRoYXQgY2FuIGJlIHZlcnNpb25lZCBhbmQga2VwdCBiYWNrd2FyZHMgY29tcGF0aWJsZSwgcmF0
aGVyIHRoYW4gaGF2aW5nIHRvIGNvbnN0YW50bHkgY2hhc2UgYnJlYWtpbmcgY2hhbmdlcyB0byBp
bnRlcm5hbCBSdWJ5IFZNIHN0cnVjdHVyZXMuCgpIb3dldmVyLCB0aGUgYmVuZWZpdCBvZiB0aGlz
IGFwcHJvYWNoIGlzIHRoYXQgd2UgY2FuIGRvIGJldHRlciEgVGhlIHBlcmYgc3Vic3lzdGVtIG9u
IExpbnV4IGlzIGFibGUgdG8gaW52b2tlIGFuIGVCUEYgcHJvZ3JhbSB0byBhY3R1YWxseSBjb2xs
ZWN0IHNhbXBsZXMgKHVzaW5nLCBJIHRoaW5rLCBgUEVSRl9FVkVOVF9JT0NfU0VUX0JQRmAgYnV0
IEknbSBub3QgMTAwJSBzdXJlKSBhbmQgd3JpdGUgdGhlbSB0byBhIHJpbmctYnVmZmVyLiBUaGUg
ZUJQRiBwcm9ncmFtIGNhbiBhY3R1YWxseSB1c2UgdGhlIGBkZWJ1Z19leHRlcm5hbC5oYCBoZWFk
ZXIgZmlsZSB0byBmaWd1cmUgb3V0IHRoZSBjdXJyZW50IFJ1Ynkgc3RhY2sgdHJhY2UocykgaXRz
ZWxmLCB3aXRob3V0IG5lZWRpbmcgdG8gc3dpdGNoIGJhY2sgaW50byB0aGUgcHJvZmlsZXIgYWRk
cmVzcyBzcGFjZSEgVGhlIHByb2ZpbGVyIHByb2dyYW0gb25seSBuZWVkcyB0byBydW4gcGVyaW9k
aWNhbGx5IHRvIGVtcHR5IHRoZSByaW5nLWJ1ZmZlciBhbmQgd3JpdGUgc2FtcGxlcyB0byBkaXNr
LgoKIyMgVGhlIHJpZGVyOiBiZXR0ZXIgc3RhY2sgdHJhY2Ugb3V0cHV0CgpTbyBmYXIsIHdlJ3Zl
IG1lbnRpb25lZCB0aGF0IHRoZSBwcm9maWxlciBwcm9jZXNzIHdpbGwgZXh0cmFjdCBhIHN0YWNr
IHRyYWNlIG91dCBvZiBgcmJfZGVidWdfZXh0X3NlY3Rpb25gLiBMZXQncyB0dXJuIG91ciBhdHRl
bnRpb24gdG8gd2hhdCB0aGF0IHN0YWNrIHRyYWNlIHdvdWxkIGFjdHVhbGx5IF9iZV8uCgpUcmFk
aXRpb25hbCBwcm9maWxpbmcgdG9vbHMgZm9yIG5vbi1keW5hbWljIGxhbmd1YWdlcyB1c3VhbGx5
IHdvcmsgYnkgY2FwdHVyaW5nIG1lbW9yeSBhZGRyZXNzZXMgZm9yIGZ1bmN0aW9ucywgYW5kIHRo
ZW4gZGVmZXJyaW5nIHRoZSB0cmFuc2xhdGlvbiBvZiBhZGRyZXNzZXMgLT4gbmFtZXMgdW50aWwg
bGF0ZXIgKHBvc3NpYmx5IGV2ZW4gb24gYSBkaWZmZXJlbnQgbWFjaGluZSkuIFJ1YnksIGhvd2V2
ZXIsIGlzIEkgYmVsaWV2ZSBtdWNoIHRvbyBkeW5hbWljIGZvciBhIHNpbWlsYXIgYXBwcm9hY2gu
IE1ldGhvZHMgYW5kIGNsYXNzZXMgY2FuIGJlIGRlZmluZWQgYW5kIHVuZGVmaW5lZCBkeW5hbWlj
YWxseSBvdmVyIHRoZSBsaWZldGltZSBvZiB0aGUgcHJvZ3JhbS4gSW5zdHJ1Y3Rpb24gc2VxdWVu
Y2VzIGNhbiBiZSBjcmVhdGVkIGFuZCBHQydkIGFzIGEgcmVzdWx0IG9mIHVzaW5nIHRoaW5ncyBs
aWtlIGBldmFsYC4gQSBtZW1vcnkgYWRkcmVzcyBvY2N1cGllZCBieSBvbmUgY2xhc3Mgb3IgaXNl
cSBtaWdodCBsYXRlciBiZSBvY2N1cGllZCBieSBhIGRpZmZlcmVudCBvbmUgLSBlc3BlY2lhbGx5
IGJlY2F1c2Ugd2Ugbm93IGhhdmUgR0MgY29tcGFjdGlvbi4KClRodXMsIEkgdGhpbmsgdGhlIG9u
bHkgc2Vuc2libGUgdGhpbmcgdG8gZG8gaXMgdG8gc3RvcmUgc3RyaW5ncyBpbiB0aGUgYHJiX2Rl
YnVnX2V4dF9zZWN0aW9uYCBzdHJ1Y3R1cmUuIFRoZXNlIHN0cmluZ3MgbmVlZCB0byBiZSB2YWxp
ZCwgZXNzZW50aWFsbHksIHdoaWxzdCB0aGUgY2FsbGVkIG1ldGhvZC9pc2VxIGlzIHN0aWxsIG9u
IHRoZSBzdGFjayAtIHRoZXJlJ3Mgbm8gcmVxdWlyZW1lbnQgdG8gcmV0YWluIHRoZW0gdW50aWwg
bGF0ZXIuIFRoZSBleHRlcm5hbCB0b29sIHdvdWxkIG5lZWQgdG8gY29weSB0aGVzZSBzdHJpbmdz
IGludG8gaXRzIG93biBwcm9jZXNzLgoKV2hhdCBzaG91bGQgdGhvc2UgYWN0dWFsbHkgX2NvbnRh
aW5fPyBBIHRyYWRpdGlvbmFsIFJ1YnkgYmFja3RyYWNlIGNvbnRhaW5zIGEgZmlsZSwgbGluZSBu
dW1iZXIsIGEgbWV0aG9kIG5hbWUgKGlmIGF2YWlsYWJsZSksIGFuZCBzb21lIG90aGVyIGRldGFp
bHMgYWJvdXQgdGhlIGlzZXEgaWYgcHJlc2VudCAoZS5nLiB3aGV0aGVyIGl0J3MgYSBibG9jayBv
ciBldmFsLCB3aGV0aGVyIGl0J3MgPG1haW4+LCBldGMpLgoKYGBgcnVieQppcmIjMShtYWluKTow
MDM6MD4gZGVmIGZvbzsgcmFpc2UgIm9oIG5vIjsgZW5kOwo9PiA6Zm9vCmlyYiMxKG1haW4pOjAw
NDowPiBmb28KKGlyYiMxKTozOmluIGBmb28nOiBvaCBubyAoUnVudGltZUVycm9yKQoJZnJvbSAo
aXJiIzEpOjQ6aW4gYDxtYWluPicKYGBgCgpJIGRvIG5vdCBiZWxpZXZlIHRoaXMgaXMgdGhlIG1v
c3QgdXNlZnVsIHdheSB0byBwcmVzZW50IHRoaXMgaW5mb3JtYXRpb24gZnJvbSBhIHByb2ZpbGlu
ZyBwZXJzcGVjdGl2ZSwgaG93ZXZlci4gV2hlbiBkZWFsaW5nIHdpdGggYSBsYXJnZSBtb25vbGl0
aGljIGFwcGxpY2F0aW9uLCBwcm9maWxlcyB3aWxsIGJlIGNvbGxlY3RlZCBwcm9jZXNzLXdpZGUg
YW5kIGFnZ3JlZ2F0ZWQgb24gc29tZSBraW5kIG9mIGNlbnRyYWwgZGFzaGJvYXJkOyB0aGVyZSBj
b3VsZCBiZSBtYW55IG1ldGhvZHMgY2FsbGVkIHRoZSBzYW1lIHRoaW5nICh0aGluayBgZGVmIGNy
ZWF0ZWAgaW4gYSBSYWlscyBjb250cm9sbGVyLCBmb3IgZXhhbXBsZSkuIFRoZSBmaWxlbmFtZSBj
YW4gaGVscCBkaXNhbWJpZ3VhdGUgaW4gY2lyY3Vtc3RhbmNlcyBsaWtlIHRoaXMsIGJ1dCBDIGZ1
bmN0aW9ucyBkb24ndCBldmVuIF9oYXZlXyBhIGZpbGVuYW1lLCBzbyBqdXN0IHByaW50IHRoZSBm
aWxlbmFtZSBvZiB0aGUgdGhpbmcgdGhhdCBjYWxsZWQgdGhlbToKCmBgYHJ1YnkKaXJiIzEobWFp
bik6MDA1OjA+IDEudGltZXMgeyByYWlzZSAib2ggbm8iIH0KKGlyYiMxKTo1OmluIGBibG9jayBp
biA8bWFpbj4nOiBvaCBubyAoUnVudGltZUVycm9yKQoJZnJvbSAoaXJiIzEpOjU6aW4gYHRpbWVz
JyAjIEkgZGlkIG5vdCBkZWZpbmUgSW50ZWdlciN0aW1lcyBpbiBJUkIhCglmcm9tIChpcmIjMSk6
NTppbiBgPG1haW4+JwpgYGAKCkFsbCBvZiB0aGlzIGNhbiBiZSBnZW5lcmFsbHkgZmlndXJlZCBv
dXQgYnkgbG9va2luZyBhdCB0aGUgY29kZSwgYnV0IG9mdGVuIHdoZW4gd2UncmUgbG9va2luZyBh
dCBlLmcuIGEgcHJvZmlsaW5nIGRhc2hib2FyZCwgaGF2aW5nIHRvIGtlZXAgbG9va2luZyBiZXR3
ZWVuIHRoZSBmbGFtZSBncmFwaCBhbmQgdGhlIGNvZGUgY2FuIGJlIHJhdGhlciBhbm5veWluZy4K
Ckl0IHdvdWxkIGJlIG5pY2UgaWYgaW5zdGVhZCwgb3VyIHByb2ZpbGVzIGNvbnRhaW5lZCB0aGUg
bmFtZSBvZiB0aGUgY2xhc3Mgb24gd2hpY2ggYSBtZXRob2QgaXMgZGVmaW5lZDsgc29tZXRoaW5n
IGxpa2UgYEZvb0NsYXNzI3RoZV9tZXRob2RgLiBSdWJ5IGhhcyBhIG1ldGhvZCBgcmJfcHJvZmls
ZV9mcmFtZV9xdWFsaWZpZWRfbWV0aG9kX25hbWVgIHdoaWNoIGNhbiBnaXZlIHVzZWZ1bCBvdXRw
dXQgbGlrZSB0aGlzIGluIG1hbnkgY2FzZXMuIEhvd2V2ZXIsIGluIG1hbnkgY29tbW9uIGNhc2Vz
IGxpa2UgZS5nLiBhbm9ueW1vdXMgY2xhc3NlcywgaXQgd2lsbCBwcmVzZW50IHRoZSBuYW1lIG9m
IHRoZSBjbGFzcyBhcyBzb21ldGhpbmcgbGlrZSAiIzxDbGFzczoweDAwMDAwMDAwMDBkYjQ4ZTA+
Ii4gVGhpcyBpcyB3b3JzZSB0aGFuIHVzZWxlc3MgZm9yIHByb2ZpbGluZzsgdGhhdCBhZGRyZXNz
IHdpbGwgYmUgZGlmZmVyZW50IGFtb25nc3QgZGlmZmVyZW50IHByb2Nlc3NlcyBiZWluZyBwcm9m
aWxlZCwgc28gbXVsdGlwbGUgcHJvZmlsZXMgY2FuJ3QgYmUgYWdncmVnYXRlZCB0b2dldGhlci4g
SW4gZmFjdCwgdGhhdCBhZGRyZXNzIGlzbid0IGV2ZW4gZ3VhcmFudGVlZCB0byBiZSBjb25zdGFu
dCB3aXRoaW4gdGhlIHNhbWUgcHJvY2VzcyBhbnltb3JlLCBiZWNhdXNlIG9mIGNvbXBhY3Rpb24u
CgpJIHdvdWxkIHByb3Bvc2UgdGhhdCB3ZSBoYXZlIGEgbmV3IHdheSBvZiBuYW1pbmcgbWV0aG9k
cyB3aGljaCBwcm9kdWNlcyB1c2VmdWwgc3RyaW5ncyBpbiBhbGwgY2FzZXMsIHdpdGhvdXQgYW55
IGFkZHJlc3NlcyBpbiB0aGVtLiBUaGUgcnVsZXMgSSBoYXZlIGNvbWUgdXAgd2l0aCBzbyBmYXIg
YXJlOgoKKiBgIiM8cmVmaW5lbWVudCBGb28gb2YgQmFyPiJgIGZvciBhIHJlZmluZW1lbnQgbW9k
dWxlIGFkZGluZyBtZXRob2RzIHRvCiAgQmFyCiogYCIjPGluc3RhbmNlIG9mIEZvbz4iYCBmb3Ig
YSBwYXJ0aWN1bGFyIGluc3RhbmNlIG9mIEZvbwoqIGAiIzxzaW5nbGV0b24gb2YgRm9vPiJgIGZv
ciBGb28ncyBzaW5nbGV0b24gY2xhc3MuCiogYCIjPGFub255bW91cyBzdWJjbGFzcyBvZiBGb28+
ImAgZm9yIGFuIGFub255bW91cyBzdWJjbGFzcwoqIFRoZSB1c3VhbCBjbGFzc3BhdGggc3RyaW5n
IG90aGVyd2lzZQoKTm90ZSB0aGF0IG5lc3RpbmcgaXMgT0sgdG9vIC0gc28gYSBtZXRob2QgZGVm
aW5lZCBvbiB0aGUgc2luZ2xldG9uIGNsYXNzIG9mIGEgcGFydGljdWxhciBGb28gb2JqZWN0IHdv
dWxkIGJlICIjPHNpbmdsZXRvbiBvZiAjPGluc3RhbmNlIG9mIEZvbz4+I3RoZV9tZXRob2QiLgoK
U28sIG15IHByb3Bvc2FsIGlzIHRoYXQgdGhpcyBpcyB0aGUgZm9ybWF0IG9mIHRoZSBtZXRob2Qg
bmFtZSB0aGF0IGFwcGVhcnMgaW4gdGhlIGByYl9kZWJ1Z19leHRfc2VjdGlvbmAgc3RydWN0dXJl
LgoKIyMgV2hlcmUgaGF2ZSBJIGdvdCB0byBzbyBmYXI/CgpPSywgc28gSSBoYXZlIGEgZHJhZnQg
UFIgdXAgd2hpY2ggc2hvdWxkIGhvcGVmdWxseSBoZWxwIG1ha2Ugc29tZSBvZiB0aGlzIGNsZWFy
ZXI6IGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC82NzA2LiBJdCBpcyBvZiBjb3Vy
c2UgaW4gbm8gd2F5IGV2ZW4gY2xvc2UgdG8gbWVyZ2UgcmVhZHksIGJ1dCBJJ20gaG9waW5nIGl0
IGhlbHBzIGlsbHVzdHJhdGUgc29tZSBvZiBteSBpZGVhcyBoZXJlOgoKKiBbVGhlIGRlYnVnX2V4
dGVybmFsLmggZmlsZV0oaHR0cHM6Ly9naXRodWIuY29tL3J1YnkvcnVieS9wdWxsLzY3MDYvZmls
ZXMjZGlmZi02NjFmOTI2OTAwOWVjODI3MTg1ZWFmYTVlZTA1YmQ3MjUxYmJlMGE1NWRlYzM2MWM5
YzVjMjViYjJhNDNhMDk4KSB0aGF0IGRlZmluZXMgdGhlIGV4dGVybmFsbHktdmlzaWJsZSBzdHJ1
Y3R1cmVzCiogV2hlcmUgdGhyZWFkcyBhcmUgW2FkZGVkXShodHRwczovL2dpdGh1Yi5jb20vcnVi
eS9ydWJ5L3B1bGwvNjcwNi9maWxlcyNkaWZmLWFhMmFkZGI5Mjk3NDlhNGEwMzMwYjkzY2VlY2Vj
NWJjNTQ4NTc1MWEzNjI1MjRmNWNiMzdiZjIyZGZmMTkzNmVSNjUpIGFuZCBbcmVtb3ZlZF0oaHR0
cHM6Ly9naXRodWIuY29tL3J1YnkvcnVieS9wdWxsLzY3MDYvZmlsZXMjZGlmZi1hYTJhZGRiOTI5
NzQ5YTRhMDMzMGI5M2NlZWNlYzViYzU0ODU3NTFhMzYyNTI0ZjVjYjM3YmYyMmRmZjE5MzZlUjEx
MCkgZnJvbSB0aGUgYHJiX2RlYnVnX2V4dF9zZWN0aW9uYCBzdHJ1Y3R1cmUKKiBXaGVyZSBmcmFt
ZXMgYXJlIFtwdXNoZWRdKGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC82NzA2L2Zp
bGVzI2RpZmYtZjhjMTc0MzQ3ZTZlYTg4ODliNTAzNjA2NGExZmY0ZmU1ZTdjNTNhODIxYmVmYTli
ZGM1Y2NiZjE3ODAwYTY0OVI0MDcpIGFuZCBbcG9wcGVkXShodHRwczovL2dpdGh1Yi5jb20vcnVi
eS9ydWJ5L3B1bGwvNjcwNi9maWxlcyNkaWZmLWY4YzE3NDM0N2U2ZWE4ODg5YjUwMzYwNjRhMWZm
NGZlNWU3YzUzYTgyMWJlZmE5YmRjNWNjYmYxNzgwMGE2NDlSNDM3KSBmcm9tIHRoZSBgcmJfZGVi
dWdfZXh0X3NlY3Rpb25gIHN0cnVjdHVyZQoqIFRoZSBbdGVzdHNdKGh0dHBzOi8vZ2l0aHViLmNv
bS9ydWJ5L3J1YnkvcHVsbC82NzA2L2ZpbGVzI2RpZmYtODlhNjdhNGQ1YjM0OGFjNmY5Y2FiZTU2
ZDI4NDc1NDViZTY3ODA5YjAxZDg1NmIzNTQxZTk2NDcxMDE0YmQ5OVI1NzMpIGlsbHVzdHJhdGUg
d2hhdCB0aGUgbmV3IHF1YWxpZmllZCBtZXRob2QgbmFtZSBvdXRwdXQgbG9va3MgbGlrZS4KCiMj
IFdoYXQgZG8gSSB3YW50IGZlZWRiYWNrIG9uPwoKVGhpcyB3aG9sZSBwcm9qZWN0IGlzIG9idmlv
dXNseSBzdGlsbCBhYm91dCAyMCUgY29va2VkLCBzbywgYW55dGhpbmcgYW5kIGV2ZXJ5dGhpbmcu
IEJ1dCBtb3JlIHNwZWNpZmljYWxseSwgdGhlc2UgYXJlIHRoZSBxdWVzdGlvbnMgSSB3b3VsZCBy
ZWFsbHkgbGlrZSBzb21lIGhlbHAgd2l0aCA6KQoKKiBEb2VzIHRoaXMgX2FwcHJvYWNoXyBzZWVt
IHNlbnNpYmxlPyBJcyB0aGUgYmFzaWMgX2lkZWFfIG9mICJleHBvc2Ugc29tZSBkb2N1bWVudGVk
IGRhdGEgc3RydWN0dXJlIHRvIG90aGVyIHByb2Nlc3NlcyB0aGF0IGFyZSBhYmxlIHRvIHJlYWQg
bXkgbWVtb3J5IiBhIHNvdW5kIG9uZT8KKiBXaGF0IHNob3VsZCBJIGRvIHdpdGggdGhlIHF1YWxp
ZmllZC1tZXRob2QtbmFtZS13aXRob3V0LWFkZHJlc3NlcyB3b3JrPyBBdCB0aGUgbW9tZW50IEkg
ZXhwb3NlZCB0aGF0IGxvZ2ljIGJlaGluZCBuZXcgbWV0aG9kcyBgTWV0aG9kI2RlYnVnX25hbWVg
IGFuZCBgVGhyZWFkOjpCYWNrdHJhY2U6OkV4dGVybmFsI2RlYnVnX2xhYmVsYC4gSXMgdGhlcmUg
c29tZSBhcHBldGl0ZSB0byBvcGVuIGEgcHJvcG9zYWwgdG8gaGF2ZSB0aGF0IGluIENSdWJ5Pwoq
IFNob3VsZCB3ZSBldmVuIGNvbnNpZGVyIF9jaGFuZ2luZyB0aGUgZGVmYXVsdCBvdXRwdXRfIG9m
IHRocmVhZCBiYWNrdHJhY2VzIHRvIHByaW50IHRoZXNlIHF1YWxpZmllZCBuYW1lcz8KKiBUaGVy
ZSBhcmUgc29tZSAnaW5mcmFzdHJ1Y3R1cmFsJyBjb21taXRzIG9uIHRoYXQgYnJhbmNoIG9mIG1p
bmUgLSBvbmUgdG8gW2ZpbmQgc29tZSBleHRyYSBzcGFjZSBpbiBgcmJfbWV0aG9kX2VudHJ5X3Rg
XShodHRwczovL2dpdGh1Yi5jb20vcnVieS9ydWJ5L3B1bGwvNjcwNi9jb21taXRzL2Y0NDZmNTI4
MWY1OGU4NzYxZDE4MjZiNmIxYzRhOThmYWNkMDQ3MmUpIGFuZCBvbmUgdG8gW2FkZCBzb21lIG5l
dyBhdG9taWMgaGVscGVyc10oYGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC82NzA2
L2NvbW1pdHMvMTdkNGIxNTZjZmU4ZjBjMzI5MTA5MDg4NTNjMThjN2ZjODAxMjFlY2ApLiBJcyB0
aGlzIHRoZSBzb3J0IG9mIHRoaW5nIHRoYXQgd291bGQgbWFrZSBzZW5zZSB0byB0cnkgYW5kIGxh
bmQgbm93IG9yIG9ubHkgd2hlbiB0aGlzIGlzIGFsbCBjbG9zZXIgdG8gZG9uZT8KKiBJIGhhdmVu
J3QgeWV0IGFjdHVhbGx5IGltcGxlbWVudGVkIGFueXRoaW5nIHRvIHRyeSBhbmQgX3JlYWRfIHRo
aXMgZXh0ZXJuYWwgZGVidWcgc2VjdGlvbi4gU2hvdWxkIGl0IGJlCiAgMSkgc29tZSBleHRlcm5h
bCByZXBvLCBpbiBhIG5vbi1SdWJ5IGxhbmd1YWdlIGUuZy4gUnVzdCBvciBzb21ldGhpbmc/CiAg
MikgQSBSdWJ5IGdlbSwgd2l0aCBhIEMgZXh0ZW5zaW9uIHRvIGhhbmRsZSBhbGwgdGhlIHB0cmFj
ZS9icGYneSBiaXRzPwogIDMpIFRoZSBnZW0sIGJ1dCBpbnNpZGUgdGhlIENSdWJ5IHNvdXJjZSB0
cmVlPwogIEknbSBsZWFuaW5nIHRvd2FyZHMgMiwgYnV0IG5vdCByZWFsbHkgc3VyZS4KClRoYW5r
IHlvdSwgdG8gYW55Ym9keSB3aG8gYWN0dWFsbHkgZ290IHRvIHRoZSBib3R0b20gb2YgdGhpcyB3
YWxsIG9mIHRleHQsIGFuZCB0aGFua3MgZG91Ymx5IHRvIGFueWJvZHkgd2hvIHByb3ZpZGVzIGZl
ZWRiYWNrIQoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTog
PG1haWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3Jp
YmU+CjxodHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9y
dWJ5LWNvcmU+Cg==

In This Thread