[#110185] [Ruby master Bug#19037] [Ruby 3.1.2] irb output color as literal when set IRB.conf[:USE_COLORIZE] = true (it is default) — "zw963 (Wei Zheng)" <noreply@...>

SXNzdWUgIzE5MDM3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHp3OTYzIChXZWkgWmhlbmcpLgoKLS0t

6 messages 2022/10/05

[#110211] [Ruby master Misc#19040] DevMeeting-2022-10-20 — "mame (Yusuke Endoh)" <noreply@...>

SXNzdWUgIzE5MDQwIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1hbWUgKFl1c3VrZSBFbmRvaCkuCgot

9 messages 2022/10/06

[#110218] [Ruby master Bug#19041] Weakref is still alive after major garbage collection — "parker (Parker Finch)" <noreply@...>

SXNzdWUgIzE5MDQxIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHBhcmtlciAoUGFya2VyIEZpbmNoKS4K

9 messages 2022/10/06

[#110250] [Ruby master Bug#19047] DelegateClass displays "method redefined" warning when overriding methods — "jonathanhefner (Jonathan Hefner)" <noreply@...>

SXNzdWUgIzE5MDQ3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGpvbmF0aGFuaGVmbmVyIChKb25hdGhh

14 messages 2022/10/10

[#110287] [Ruby master Bug#19055] Regexp.new(regexp, timeout: nil) is intrupted by Regexp.timeout — "jaruga (Jun Aruga)" <noreply@...>

SXNzdWUgIzE5MDU1IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGphcnVnYSAoSnVuIEFydWdhKS4KCi0t

9 messages 2022/10/14

[#110293] [Ruby master Bug#19056] Introduce `Fiber.annotation` for attaching messages to fibers. — "ioquatix (Samuel Williams)" <noreply@...>

SXNzdWUgIzE5MDU2IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh

12 messages 2022/10/14

[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>

SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh

53 messages 2022/10/15

[#110312] [Ruby master Feature#19061] Proposal: make a concept of "consuming enumerator" explicit — "zverok (Victor Shepelev)" <noreply@...>

SXNzdWUgIzE5MDYxIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHp2ZXJvayAoVmljdG9yIFNoZXBlbGV2

12 messages 2022/10/15

[#110320] [Ruby master Bug#19062] Introduce `Fiber#locals` for shared inheritable state. — "ioquatix (Samuel Williams)" <noreply@...>

SXNzdWUgIzE5MDYyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh

33 messages 2022/10/16

[#110324] [Ruby master Feature#19063] Hash.new with non-value objects should be less confusing — "baweaver (Brandon Weaver)" <noreply@...>

SXNzdWUgIzE5MDYzIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGJhd2VhdmVyIChCcmFuZG9uIFdlYXZl

35 messages 2022/10/16

[#110378] [Ruby master Bug#19067] `private_constant` does not work at toplevel in wrapped module context — "shioyama (Chris Salzberg)" <noreply@...>

SXNzdWUgIzE5MDY3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHNoaW95YW1hIChDaHJpcyBTYWx6YmVy

8 messages 2022/10/18

[#110383] [Ruby master Feature#19068] Print NODE type with yydebug option — "yui-knk (Kaneko Yuichiro)" <noreply@...>

SXNzdWUgIzE5MDY4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHl1aS1rbmsgKEthbmVrbyBZdWljaGly

9 messages 2022/10/18

[#110422] [Ruby master Feature#19071] Add Time#deconstruct, #deconstruct_keys, and #to_h — "zverok (Victor Shepelev)" <noreply@...>

SXNzdWUgIzE5MDcxIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHp2ZXJvayAoVmljdG9yIFNoZXBlbGV2

9 messages 2022/10/19

[#110461] [Ruby master Misc#19074] DevMeeting-2022-11-17 — "mame (Yusuke Endoh)" <noreply@...>

SXNzdWUgIzE5MDc0IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1hbWUgKFl1c3VrZSBFbmRvaCkuCgot

17 messages 2022/10/21

[#110473] [Ruby master Feature#19075] Add Array#bsearch_last and #bsearch_last_index — "kyanagi (Kouhei Yanagita)" <noreply@...>

SXNzdWUgIzE5MDc1IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGt5YW5hZ2kgKEtvdWhlaSBZYW5hZ2l0

16 messages 2022/10/21

[#110481] [Ruby master Bug#19078] Introduce `Fiber#storage` for inheritable fiber-scoped variables. — "ioquatix (Samuel Williams)" <noreply@...>

SXNzdWUgIzE5MDc4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh

30 messages 2022/10/22

[#110502] [Ruby master Bug#19082] Recent change in the ruby_3_1 branch prevents some gems from being installed on Apple Silicon — "monfresh (Moncef Belyamani)" <noreply@...>

SXNzdWUgIzE5MDgyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1vbmZyZXNoIChNb25jZWYgQmVseWFt

8 messages 2022/10/24

[#110529] [Ruby master Feature#19089] Load bundler/setup in gem_prelude.rb when "bundle exec" is used — "mame (Yusuke Endoh)" <noreply@...>

SXNzdWUgIzE5MDg5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1hbWUgKFl1c3VrZSBFbmRvaCkuCgot

13 messages 2022/10/28

[#110542] [Ruby master Feature#19090] Do not duplicate an unescaped string in CGI.escapeHTML — "k0kubun (Takashi Kokubun)" <noreply@...>

SXNzdWUgIzE5MDkwIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGswa3VidW4gKFRha2FzaGkgS29rdWJ1

15 messages 2022/10/29

[#110554] [Ruby master Bug#19094] `sleep(nil)` vs `sleep()` and replicating the default implementation. — "ioquatix (Samuel Williams)" <noreply@...>

SXNzdWUgIzE5MDk0IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh

8 messages 2022/10/31

[ruby-core:110253] [Ruby master Feature#19024] Proposal: Import Modules

From: "shioyama (Chris Salzberg)" <noreply@...>
Date: 2022-10-11 02:51:26 UTC
List: ruby-core #110253
SXNzdWUgIzE5MDI0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgc2hpb3lhbWEgKENocmlzIFNhbHpiZXJn
KS4KCgpAamVyZW15ZXZhbnMwCgpUaGFua3MgZm9yIHlvdXIgdGhvdWdodGZ1bCByZXNwb25zZSEK
Cj4gRm9yIHNpbWlsYXIgcmVhc29ucywgbWFraW5nIHJlcXVpcmUgaW1wbGljaXRseSBzdXBwb3J0
IHRoZSBjdXJyZW50bHkgd3JhcHBpbmcgbW9kdWxlIHdvdWxkIGJyZWFrIGlkZW1wb3RlbmN5IGFu
ZCB0aGVyZWZvcmUgSSBkbyBub3QgdGhpbmsgaXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQuCgpJIGFn
cmVlLCBhbmQgZnJvbSB0aGUgYmVnaW5uaW5nIEkgaGF2ZSBub3QgYWR2b2NhdGVkIGFsbG93aW5n
IHBhc3NpbmcgZXh0cmEgcGFyYW1ldGVycyB0byBgcmVxdWlyZWAuIEl0IHNlZW1zIHRoYXQgZXZl
cnlvbmUgaGVyZSBhZ3JlZXMgdGhhdCBjaGFuZ2luZyBgcmVxdWlyZWAgaW4gYWxtb3N0IGFueSB3
YXkgdGhhdCBhbHRlcnMgaXRzIGJhc2ljIHByZW1pc2VzIGlzIGZ1bmRhbWVudGFsbHkgYSBuby1n
by4KCkdpdmVuIHRoYXQsIHdvdWxkbid0IGl0IG1ha2Ugc2Vuc2UgdG8gY2xvc2UgWyMxMDMyMF0o
aHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzEwMzIwKSwgaWRlYWxseSB3aXRoIGEg
bm90ZSBleHBsYWluaW5nIHdoeSB0aGUgcHJvcG9zYWwgdGhlcmUgaXMgbm90IGZlYXNpYmxlPyBB
bHRob3VnaCBzaW1pbGFyIGluIHNwaXJpdCB0byB0aGlzIGlzc3VlLCB0aGF0IG9uZSBlbnRpcmVs
eSBjZW50ZXJzIG9uIGNoYW5naW5nIGByZXF1aXJlYCBpbiBzdWNoIGEgd2F5IHRoYXQsIGFzIEkg
cmVhZCBpdCwgaXQgaXMgbm8gbG9uZ2VyIGV4Y2x1c2l2ZWx5IGlkZW1wb3RlbnQuCgpJIGFzayBi
ZWNhdXNlIGxlYXZpbmcgdGhhdCBpc3N1ZSBvcGVuIGludml0ZXMgdGhlIGludGVycHJldGF0aW9u
IChwZXJoYXBzIG1pc3Rha2VuKSB0aGF0IHRoZSBwcm9wb3NhbCB0aGVyZSBpcyBmZWFzaWJsZSBn
aXZlbiB0aGUgcmlnaHQgaW1wbGVtZW50YXRpb24sIHdoZXJlYXMgYXMgSSBzZWUgaXQgZnJvbSBk
aXNjdXNzaW9ucyBoZXJlIGl0IHNlZW1zIGFsbW9zdCBlbnRpcmVseSBfaW5mZWFzaWJsZV8gdW5k
ZXIgYW55IGNpcmN1bXN0YW5jZXMuCgo+IFdoaWxlIEkgdW5kZXJzdGFuZCB0aGUgZ29hbCBvZiBy
ZWR1Y2luZyBuYW1lc3BhY2UgImJvaWxlcnBsYXRlIiwgSSB0aGluayBpdCBpcyBpbXBvcnRhbnQg
dG8gdW5kZXJzdGFuZCB0aGF0IHJlbW92aW5nIGV4cGxpY2l0IG5hbWVzcGFjZXMgaXMgYSB0cmFk
ZW9mZi4gSWYgeW91IGRvIG5vdCBsZWF2ZSB0aGUgbmFtZXNwYWNlcyBpbiB0aGUgZmlsZSwgYnV0
IGluc3RlYWQgbGV0IHRoZW0gYmUgaW1wbGljaXQsIHRoZSBjb2RlIGxpa2VseSBiZWNvbWVzIG1v
cmUgZGlmZmljdWx0IHRvIHVuZGVyc3RhbmQuIFlvdSBzdGF0ZSB0aGF0IHByb2dyYW1tZXJzIHdv
dWxkIG5hdHVyYWxseSBwcmVmZXIgaW1wbGljaXQgbmFtZXNwYWNlcyBvdmVyIGV4cGxpY2l0IG5h
bWVzcGFjZXMsIGJ1dCBJJ20gbm90IHN1cmUgdGhhdCBpcyB0cnVlLiBJbXBsaWNpdCBjb2RlIGlz
IG5vdCBuZWNlc3NhcmlseSBiZXR0ZXIgdGhhbiBleHBsaWNpdCBjb2RlLiBXaGF0IHlvdSBjb25z
aWRlciAiaXJyZWxldmFudCIgbWF5IGJlIHZlcnkgcmVsZXZhbnQgdG8gc29tZW9uZSB3aG8gaXNu
J3QgZmFtaWxpYXIgd2l0aCB0aGUgY29kZSBhbiBhbGwgb2YgdGhlIGltcGxpY2l0IG5hbWVzcGFj
ZXMgYmVpbmcgZGVhbHQgd2l0aC4KCkkgYWdyZWUgdGhhdCB0aGVyZSBpcyBhIHRyYWRlb2ZmLCBh
cyBAZnhuIGVhcmxpZXIgY29tbWVudGVkIHdoZW4gaGUgd3JvdGUgdGhhdCB0aGUgaWRlYSBicmVh
a3MgdGhlIGZ1bmRhbWVudGFsIGFzc3VtcHRpb24gdGhhdCAiYnkgbG9va2luZyBhdCB5b3VyIHNv
dXJjZSBjb2RlLCB5b3Uga25vdyB0aGUgbmVzdGluZy4iIAoKQnV0IHRoaXMgaXMgYWJvdXQgbXVj
aCBtb3JlIHRoYW4gcmVkdWNpbmcgYm9pbGVycGxhdGUuIEl0IGlzIGFib3V0IGEgZnVuZGFtZW50
YWwgc2hpZnQgaW4gcGVyc3BlY3RpdmUsIGZyb20gb25lIHdoZXJlIGV2ZXJ5dGhpbmcgaXMgdmlz
aWJsZSBldmVyeXdoZXJlLCB0byBvbmUgd2hlcmUgdGhlICJwZXJzcGVjdGl2ZSIgaXMgaXRzZWxm
IHNvbWV0aGluZyB0aGF0IGNhbiBiZSBjcmVhdGVkLCBuZXN0ZWQgYW5kIGlzb2xhdGVkLgoKWW91
IHdyaXRlICJpbXBsaWNpdCBjb2RlIGlzIG5vdCBuZWNlc3NhcmlseSBiZXR0ZXIgdGhhbiBleHBs
aWNpdCBjb2RlIi4gSSBhZ3JlZS4gQXV0b2xvYWRpbmcsIGZvciBleGFtcGxlLCBtYWtlcyBhIHNp
bWlsYXIgdHJhZGVvZmYgb2YgaW1wbGljaXQgb3ZlciBleHBsaWNpdCwgYW5kIHRoYXQgdHJhZGVv
ZmYgbGlrZXdpc2UgaGFzIG5vbi10cml2aWFsIGRvd25zaWRlcy4gQXV0b2xvYWRpbmcgY2FuIGFs
c28gYmUgc2VlbiBhcyByZWR1Y2luZyBib2lsZXJwbGF0ZSAoYWxsIHRob3NlIGByZXF1aXJlYHMg
d2Ugbm8gbG9uZ2VyIG5lZWQpLCBidXQgY2xlYXJseSBpdCBpcyBhYm91dCBtb3JlIHRoYW4gdGhh
dC4KClJ1YnkgaGFzIG1hbnkgc2hhcnAga25pdmVzIGxpa2UgdGhpcywgYW5kIHRoZSB3YXkgd2Ug
aGFuZGxlIHRob3NlIGtuaXZlcyBpcyBieSBjcmVhdGluZyBjb252ZW50aW9ucyBhcm91bmQgdGhl
aXIgdXNhZ2UuIE11Y2ggdGhlIHdheSBaZWl0d2VyayAoYW5kIFJhaWxzKSBwcm92aWRlZCBmaWxl
IG9yZ2FuaXphdGlvbiBjb252ZW50aW9ucyBhcm91bmQgYXV0b2xvYWRpbmcsIGFueSBtZWNoYW5p
c20gaW4gUnVieSB0aGF0IHdvdWxkIGFsbG93IGNvZGUgdG8gYmUgaW1wb3J0ZWQgaW4gdGhlIHdh
eSBJJ20gZGVzY3JpYmluZyB3b3VsZCBhbHNvIGludml0ZSBzb21lIGtpbmQgb2YgY29udmVudGlv
bnMgYXJvdW5kIGl0cyB1c2FnZSB0byBtYWtlIGl0IG1vcmUgdXNlZnVsLgoKSSBhZG1pdCB0aGF0
IHRoaXMgaXMgdmVyeSBoYW5kLXdhdnksIGFuZCBJIG5lZWQgdG8gcHJvdmlkZSBhIGNsZWFyZXIg
ZGVtb25zdHJhdGlvbiBvZiB3aGF0IHRob3NlIGNvbnZlbnRpb25zIG1pZ2h0IGxvb2sgbGlrZS4g
VGhpcyBpcyBzb21ldGhpbmcgdGhhdCBpcyBsYWNraW5nIGZyb20gdGhpcyBwcm9wb3NhbCwgYW5k
IHNvbWV0aGluZyBJIGFtIHRoaW5raW5nIGEgbG90IGFib3V0LiBJIHdpbGwgY29tZSBiYWNrIHRv
IHRoaXMgcG9pbnQuCgo+IFlvdSBkZXNjcmliZSB0aGUgY3VycmVudCBzdGF0ZSBvZiBhZmZhaXJz
IGFzIGEgInRlcnJpYmxlIHRyYWRlb2ZmIiwgYnV0IHRoYXQgc2VlbXMgaHlwZXJib2xpYyB0byBt
ZS4gQXQgbW9zdCwgaGF2aW5nIHRvIHVzZSBleHBsaWNpdCBuYW1lc3BhY2VzIHNob3VsZCBiZSBt
aWxkbHkgYW5ub3lpbmcsIGV2ZW4gaWYgeW91IGhhdmUgZnVsbCB1bmRlcnN0YW5kaW5nIG9mIHRo
ZSBjb2RlIGFuZCBjYW4gZGVhbCB3aXRoIGltcGxpY2l0IG5hbWVzcGFjZXMuCgpJIGNhbiBzZWUg
aG93IHlvdSBzZWUgdGhhdCBzdGF0ZW1lbnQgYXMgaHlwZXJib2xpYywgYnV0IEkgZG9uJ3Qgc2Vl
IGl0IHRoYXQgd2F5LiBNYXliZSBJIHNob3VsZCBoYXZlIHF1YWxpZmllZCB0aGUgInRlcnJpYmxl
Ii1uZXNzIG9mIHRoZSB0cmFkZW9mZiBhcyBiZWluZyByZWxhdGl2ZSB0byB0aGUgc2l6ZSBvZiB0
aGUgY29kZSBzcGFjZSBpbnZvbHZlZDsgaW4gYSBjb2RlYmFzZSBvZiBhIGRvemVuIGZpbGVzIHRo
aXMgaXMgbm90IHRlcnJpYmxlLgoKT1RPSCBzb2x2aW5nIGEgIm1pbGRseSBhbm5veWluZyIgcHJv
YmxlbSBpcyBub3QgdG8gbWUgYW4gYXBwcm9wcmlhdGUgY2hhcmFjdGVyaXphdGlvbiBvZiB3aGF0
IEkgYW0gZGVzY3JpYmluZy4gTWF5YmUgdGhhdCdzIGJlY2F1c2UgZWFjaCB0aW1lIEkgcHJlc2Vu
dCBvbmUgYXNwZWN0IG9mIHdoYXQgSSBzZWUgYXMgYSBiaWdnZXIgcGljdHVyZSBjaGFuZ2UuCgpJ
bXBvcnRzIGFzIGEgY29uY2VwdCB0YWNrbGVzIHNldmVyYWwgaGFyZCBwcm9ibGVtcyBhdCBvbmNl
LCBpbmNsdWRpbmc6CgotIGxpdGVyYWwgbmFtZXNwYWNlcyBhbmQgY29kZSBncm91cGluZywgYW5k
IHRoZSBtaXNhbGlnbm1lbnQgb2YgaW5jZW50aXZlcyBpbnZvbHZlZCAoYXMgZGVzY3JpYmVkKQot
IGVuY2Fwc3VsYXRpb24vaXNvbGF0aW9uIChpLmUuIFBhY2t3ZXJrLCBwYWNrYWdlcyBldGMuKQot
IG5hbWVzcGFjZSBjb2xsaXNpb25zL2NvbmZsaWN0cyAoSSB3YW50IGEgc2VtYW50aWNhbGx5LW1l
YW5pbmdmdWwgYFBsYXRmb3JtYCBpbiBteSBhcHBsaWNhdGlvbiBidXQgaXQgY29uZmxpY3RzIHdp
dGggdGhlIGBwbGF0Zm9ybWAgZ2VtKQoKVGhlIGxhc3Qgb25lIGhlcmUsIHdoaWNoIEkgaGF2ZSBi
YXJlbHkgdG91Y2hlZCBvbiwgaXMgYSBwcm9ibGVtIHdlIGp1c3QgbGl2ZSB3aXRoIGFzIFJ1Ynlp
c3RzLCBhbmQgdG8gc29tZSBkZWdyZWUgSSB0aGluayBzaW1wbHkgaW50ZXJuYWxpemUgYXMgInRo
ZSB3YXkgdGhpbmdzIHdvcmsiLiBCdXQgdGhpcyBpcyBhIHJlYWwgcHJvYmxlbSB0aGF0IGRlc2Vy
dmVzIGEgcHJvcGVyIHNvbHV0aW9uLgoKPiBOb3RlIHRoYXQgeW91IGNhbiBjdXJyZW50bHkgc3Vw
cG9ydCBtdWx0aXBsZSBuYW1lc3BhY2VzIHVzaW5nIGBldmFsYC4gCgpJdCdzIGludGVyZXN0aW5n
IHlvdSBicm91Z2h0IHVwIHRoaXMgZXhhbXBsZSwgYmVjYXVzZSBJIGhhdmUgY29uc2lkZXJlZCBp
bXBsZW1lbnRhdGlvbnMgZm9yIGBpbXBvcnRgIHVzaW5nIGBldmFsYCBhdCBsZWFzdCBhcyBhIHBy
b29mLW9mLWNvbmNlcHQsIGJ1dCBpdCBkb2Vzbid0IHdvcmsgZm9yIHRoZSB2ZXJ5IGltcG9ydGFu
dCBjYXNlIHdoZXJlIEkgd2FudCB0byBldmFsdWF0ZSB1bmRlciBhbiBhbm9ueW1vdXMgbW9kdWxl
IG5hbWVzcGFjZTsgaW4geW91ciBleGFtcGxlLCB5b3UgbmVlZCB0byBzdXBwbHkgYSBkZWRpY2F0
ZWQgbmFtZWQgY29udGV4dCAoYFBheW1lbnRzOjpOZXN0ZWRgKSB0byBsb2FkIHRoZSBjb2RlIGlu
dG8uIFRoaXMgbWF5IHNlZW0gbGlrZSBhIG1pbm9yIHBvaW50IGJ1dCBJIGRvbid0IGJlbGlldmUg
aXQgaXMuCgpPbmx5IHdpdGggYW4gYW5vbnltb3VzLXJvb3RlZCBuYW1lc3BhY2UgY2FuIHdlIGF2
b2lkIHBvbGx1dGluZyB0aGUgcGFyZW50IGxvYWQgY29udGV4dCdzIG5hbWVzcGFjZSwgYW5kIGF2
b2lkIHBvdGVudGlhbCBjb25mbGljdHMgd2l0aCBvdGhlciBsb2FkZWQgY29uc3RhbnRzIGluIHRo
YXQgc2FtZSBuYW1lc3BhY2UuCgppLmUuIEkgd2FudCB0aGlzOgoKYGBgcnVieQptb2R1bGUgUGF5
bWVudHMKICBmb29fY2xpZW50ID0gTW9kdWxlLm5ldyBkbwogICAgZm9vX3BhdGggPSBGaWxlLmV4
cGFuZF9wYXRoKCJhcGlfY2xpZW50cy9mb29fY2xpZW50LnJiIiwgX19kaXJfXykpCiAgICBldmFs
IEZpbGUucmVhZChmb29fcGF0aCksIGJpbmRpbmcsIGZvb19wYXRoCiAgZW5kCgogICMgZG8gc29t
ZXRoaW5nIHdpdGggZm9vX2NsaWVudDo6Rm9vQ2xpZW50CmVuZApgYGAKCmJ1dCB0aGlzIGFjdHVh
bGx5IHRyYW5zbGF0ZXMgdG8gdGhpczoKCmBgYHJ1YnkKbW9kdWxlIFBheW1lbnRzCiAgZm9vX2Ns
aWVudCA9IE1vZHVsZS5uZXcgZG8KICAgIGNsYXNzIEZvb0NsaWVudCA8IE15Q2xpZW50R2VtOjpB
cGlDbGllbnQKICAgICAgIyAuLi4KICAgIGVuZAogIGVuZAplbmQKYGBgCgpUaGlzIGRvZXMgbm90
IGRlZmluZSBgZm9vX2NsaWVudDo6Rm9vQ2xpZW50YCwgYnV0IHJhdGhlciBgOjpQYXltZW50czo6
Rm9vQ2xpZW50YCwgYmVjYXVzZSBhbnkgY2FsbCB0byBgbW9kdWxlYCBvciBgY2xhc3NgIGluIHRo
ZSBldmFsdWF0ZWQgZmlsZSB3aWxsIHJlc29sdmUgYmFjayB0byB0aGUgY2xvc2VzdCBfbmFtZWRf
IGNvbnRleHQsIGluIHRoaXMgY2FzZSBgUGF5bWVudHNgLgoKYGxvYWRgIHdpdGggdGhlIHdyYXAg
bW9kdWxlIGlzIGRpZmZlcmVudCBiZWNhdXNlIGl0IHJlc29sdmVzIGBtb2R1bGVgIGFuZCBgY2xh
c3NgIGRlZmluaXRpb25zIHRvIHRoZSB3cmFwIG1vZHVsZSwgX3JlZ2FyZGxlc3Mgb2Ygd2hldGhl
ciB0aGF0IG1vZHVsZSBpcyBhbm9ueW1vdXNfLiBBcyBmYXIgYXMgSSBjYW4gdGVsbCB0aGVyZSBp
cyBubyBvdGhlciB3YXkgKGluY2x1ZGluZyAidWdseSIgaGFja3MgbGlrZSBgZXZhbGAgb24gZmls
ZSBjb250ZW50cykgaW4gUnVieSB0byBkbyB0aGlzLiBJdCBpcyB0aGlzICh1bmludGVuZGVkPykg
ImZlYXR1cmUiIHRoYXQgSSBhbSBhdHRlcG10aW5nIHRvIGxldmVyYWdlIGhlcmUsIHRvIG1ha2Ug
aXQgbW9yZSBwb3dlcmZ1bC4KCkkgbG92ZSB0aGF0IHRoaXMgY29uY2VwdCBvZiBhbiAidW5yb290
ZWQiIG5lc3RlZCBuYW1lc3BhY2UgKHdoYXQgSSBhbSBsb29zZWx5IHJlZmVycmluZyB0byBhcyBh
biAiaW1wb3J0IiBoZXJlKSBpcyBhY3R1YWxseSBzb21ldGhpbmcgdGhhdCBhbHJlYWR5IGV4aXN0
cyBpbiBSdWJ5LiBJdCBkb2VzIG5vdCBuZWVkIHRvIGJlIGFkZGVkLCBpdCBzaW1wbHkgbmVlZHMg
dG8gYmUgdHdlYWtlZCB0byBtYWtlIGl0IGlzb2xhdGVkIGZyb20gaXRzIHBhcmVudC4KCj4gSSB0
aGluayBpdCB3b3VsZCBiZSBoZWxwZnVsIGlmLCBmb3IgZWFjaCBvZiB0aGUgcGF0Y2hlcyB5b3Ug
YXJlIHByb3Bvc2luZywgeW91IGluY2x1ZGUgdGVzdHMgdG8gbWFrZSBpdCBlYXNpZXIgdG8gc2Vl
IHdoYXQgZWFjaCBwYXRjaCBhbGxvd3MgYW5kIGhvdyB0aGUgYmVoYXZpb3IgY2hhbmdlcy4gCgpU
aGFua3MsIEkgd2lsbCBkbyB0aGlzLiBUaGVyZSBhcmUgbm90IG1hbnkgb2YgdGhlc2U7IHRoZXJl
IG1heSBpbiBmYWN0IG9ubHkgYmUgb25lIG9yIHR3by4KCkp1c3QgdG8gY2xhcmlmeSB0aG91Z2g6
IEkgaGFkIG9yaWdpbmFsbHkgaW50ZW5kZWQgdG8gYWN0dWFsbHkgZG8ganVzdCB0aGlzLiBCdXQg
YWZ0ZXIgZGlzY3Vzc2lvbiBhdCB0aGUgRGV2ZWxvcGVycyBNZWV0aW5nIGl0IHdhcyByZWNvbW1l
bmRlZCB0aGF0IEkgbGF5IG91dCB0aGUgYmlnZ2VyIHBpY3R1cmUgaW4gYSBuZXcgaXNzdWUgc2Vw
YXJhdGUgZnJvbSBbIzEwMzIwXShodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTAz
MjApLCB0byBtb3RpdmF0ZSBpbmRpdmlkdWFsIGNoYW5nZXMsIHNvIHRoYXQgaXMgd2hhdCBJIGhh
dmUgZG9uZS4gQW5kIGluZGVlZCwgSSBub3cgdGhpbmsgdGhhdCBoYXZpbmcgdGhlIGJpZyBwaWN0
dXJlIGlzIHZlcnkgaW1wb3J0YW50IGluIHVuZGVyc3RhbmRpbmcgdGhlIGluZGl2aWR1YWwgY2hh
bmdlcywgc28gSSB3aWxsIGxpbmsgYmFjayBoZXJlIHRvIGNvbnRleHR1YWxpemUgYW5kIG1vdGl2
YXRlIGVhY2ggb2YgdGhlbS4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KRmVhdHVyZSAjMTkwMjQ6IFByb3Bvc2FsOiBJbXBvcnQgTW9kdWxlcwpodHRwczovL2J1Z3Mu
cnVieS1sYW5nLm9yZy9pc3N1ZXMvMTkwMjQjY2hhbmdlLTk5NTQyCgoqIEF1dGhvcjogc2hpb3lh
bWEgKENocmlzIFNhbHpiZXJnKQoqIFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpUaGVyZSBpcyBubyBnZW5lcmFs
IHdheSBpbiBSdWJ5IHRvIGxvYWQgY29kZSBvdXRzaWRlIG9mIHRoZSBnbG9iYWxseS1zaGFyZWQg
bmFtZXNwYWNlLiBUaGlzIG1ha2VzIGl0IGhhcmQgdG8gaXNvbGF0ZSBjb21wb25lbnRzIG9mIGFu
IGFwcGxpY2F0aW9uIGZyb20gZWFjaCBvdGhlciBhbmQgZnJvbSB0aGUgYXBwbGljYXRpb24gaXRz
ZWxmLCBsZWFkaW5nIHRvIGNvbXBsaWNhdGVkIHJlbGF0aW9uc2hpcHMgdGhhdCBjYW4gYmVjb21l
IGludHJhY3RhYmxlIGFzIGFwcGxpY2F0aW9ucyBncm93IGluIHNpemUuCgpUaGUgZ3Jvd2luZyBw
b3B1bGFyaXR5IG9mIGEgZ2VtIGxpa2UgW1BhY2t3ZXJrXShodHRwczovL2dpdGh1Yi5jb20vc2hv
cGlmeS9wYWNrd2VyayksIHdoaWNoIHByb3ZpZGVzIGEgbmV3IGNvbmNlcHQgb2YgInBhY2thZ2Ui
IHRvIGVuZm9jZSBib3VuZGFyaWVzIHN0YXRpY2FsbHkgaW4gQ0ksIGlzIGV2aWRlbmNlIHRoYXQg
dGhpcyBpcyBhIHJlYWwgcHJvYmxlbS4gQnV0IGludHJvZHVjaW5nIGEgbmV3IHBhY2thZ2luZyBj
b25jZXB0IGFuZCBDSSBzdGVwIGlzIGF0IGJlc3Qgb25seSBhIHBhcnRpYWwgc29sdXRpb24sIHdp
dGggZG93bnNpZGVzOiBpdCBhZGRzIGNvbXBsZXhpdHkgYW5kIGNvZ25pdGl2ZSBvdmVyaGVhZCB0
aGF0IHdvdWxkbid0IGJlIG5lY2Vzc2FyeSBpZiBSdWJ5IHByb3ZpZGVkIGJldHRlciBwYWNrYWdp
bmcgaXRzZWxmIChhcyBNYXR6IGhhcyBzdWdnZXN0ZWQgW2l0IHNob3VsZF0oaHR0cHM6Ly95b3V0
dS5iZS9EcDEyYTNLR05Gdz90PTI5NTYpKS4KClRoZXJlIGlzIF9vbmVfIGxpbWl0ZWQgd2F5IGlu
IFJ1YnkgY3VycmVudGx5IHRvIGxvYWQgY29kZSB3aXRob3V0IHBvbGx1dGluZyB0aGUgZ2xvYmFs
IG5hbWVzcGFjZTogYGxvYWRgIHdpdGggdGhlIGB3cmFwYCBwYXJhbWV0ZXIsIHdoaWNoIGFzIG9m
IGh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy82MjEwIGNhbiBub3cgYmUgYSBtb2R1
bGUuIEhvd2V2ZXIsIHRoaXMgb3B0aW9uIGRvZXMgbm90IGFwcGx5IHRyYW5zaXRpdmVseSB0byBg
cmVxdWlyZWAgY2FsbHMgd2l0aGluIHRoZSBsb2FkZWQgZmlsZSwgc28gaXRzIHVzZWZ1bG5lc3Mg
aXMgbGltaXRlZC4KCk15IHByb3Bvc2FsIGhlcmUgaXMgdG8gZW5hYmxlIG1vZHVsZSBpbXBvcnRz
IGJ5IGRvaW5nIHRoZSBmb2xsb3dpbmc6CgoxLiBhcHBseSB0aGUgYHdyYXBgIG1vZHVsZSBuYW1l
c3BhY2UgdHJhbnNpdGl2ZWx5IHRvIGByZXF1aXJlYHMgaW5zaWRlIHRoZSBsb2FkZWQgY29kZSwg
aW5jbHVkaW5nIG5hdGl2ZSBleHRlbnNpb25zIChvciBwcm92aWRlIGEgbmV3IGZsYWcgb3IgbWV0
aG9kIHRoYXQgd291bGQgZG8gdGhpcyksCjIuIG1ha2UgdGhlIGB3cmFwYCBtb2R1bGUgdGhlIHRv
cGxldmVsIGNvbnRleHQgZm9yIGNvZGUgbG9hZGVkIHVuZGVyIGl0LCBzbyBgOjpGb29gIHJlc29s
dmVzIHRvIGA8dG9wX3dyYXBwZXI+OjpGb29gIGluIGxvYWRlZCBjb2RlIChvciwgYWdhaW4sIHBy
b3ZpZGUgYSBuZXcgZmxhZyBvciBtZXRob2QgdGhhdCB3b3VsZCBkbyB0aGlzKS4gX0Fsc28gbWFr
ZSB0aGlzIGFwcGx5IHdoZW4gY29kZSB1bmRlciB0aGUgd3JhcHBlciBtb2R1bGUgaXMgY2FsbGVk
IG91dHNpZGUgb2YgdGhlIGxvYWQgcHJvY2VzcyAod2hlbiBgdG9wX3dyYXBwZXJgIGlzIG5vIGxv
bmdlciBzZXQpICZtZGFzaDsgdGhpcyBtYXkgYmUgcXVpdGUgaGFyZCB0byBkb18uCjMuIHJlc29s
dmUgYG5hbWVgIG9uIGFub255bW91cyBtb2R1bGVzIHVuZGVyIHRoZSB3cmFwcGVkIG1vZHVsZSB0
byB0aGVpciBuYW1lcyB3aXRob3V0IHRoZSB0b3Agd3JhcHBlciBtb2R1bGUsIHNvIGA8dG9wX3dy
YXBwZXI+OjpGb28ubmFtZWAgZXZhbHVhdGVzIHRvIGAiRm9vImAuIFRoZXJlIG1heSBiZSBvdGhl
ciB3YXlzIHRvIGhhbmRsZSB0aGlzIHByb2JsZW0sIGJ1dCBhIGdlbSBsaWtlIFJhaWxzIHVzZXMg
YG5hbWVgIHRvIHJlc29sdmUgZmlsZW5hbWVzIGFuZCBmYWlscyB3aGVuIGFub255bW91cyBtb2R1
bGVzIHJldHVybiBzb21ldGhpbmcgbGlrZSBgIzxNb2R1bGU6IC4uLj46OkFjdGl2ZVJlY29yZGAg
aW5zdGVhZCBvZiBqdXN0IGBBY3RpdmVSZWNvcmRgLgoKSSBoYXZlIHJvdWdobHkgaW1wbGVtZW50
ZWQgdGhlc2UgdGhyZWUgdGhpbmdzIGluIFt0aGlzIHBhdGNoXShodHRwczovL2dpdGh1Yi5jb20v
cnVieS9ydWJ5L2NvbXBhcmUvbWFzdGVyLi4uc2hpb3lhbWE6cnVieTppbXBvcnRfbW9kdWxlcyku
IFRoaXMgaW1wbGVtZW50YXRpb24gaXMgaW5jb21wbGV0ZSAoaXQgZG9lcyBub3QgY292ZXIgdGhl
IGxhc3QgaGlnaGxpZ2h0ZWQgcGFydCBvZiAyKSBidXQgcHJvdmlkZXMgZW5vdWdoIG9mIGEgYmFz
aXMgdG8gaW1wbGVtZW50IGFuIGBpbXBvcnRgIG1ldGhvZCwgd2hpY2ggSSBoYXZlIGRvbmUgaW4g
YSBnZW0gY2FsbGVkIFtJbV0oaHR0cHM6Ly9naXRodWIuY29tL3NoaW95YW1hL2ltKS4KCkltIHBy
b3ZpZGVzIGFuIGBpbXBvcnRgIG1ldGhvZCB3aGljaCBjYW4gYmUgdXNlZCB0byBpbXBvcnQgZ2Vt
IGNvZGUgdW5kZXIgYSBuYW1lc3BhY2U6CgpgYGBydWJ5CnJlcXVpcmUgImltIgpleHRlbmQgSW0K
CmFjdGl2ZV9tb2RlbCA9IGltcG9ydCAiYWN0aXZlX21vZGVsIgojPT4gPCNJbTo6SW1wb3J0IHJv
b3Q6IGFjdGl2ZV9tb2RlbD4KCkFjdGl2ZU1vZGVsCiM9PiBOYW1lRXJyb3IKCmFjdGl2ZV9tb2Rl
bDo6QWN0aXZlTW9kZWwKIz0+IEFjdGl2ZU1vZGVsCgphY3RpdmVfcmVjb3JkID0gaW1wb3J0ICJh
Y3RpdmVfcmVjb3JkIgojPT4gPCNJbTo6SW1wb3J0IHJvb3Q6IGFjdGl2ZV9yZWNvcmQ+CgojIENv
bnN0YW50cyBkZWZpbmVkIGluIHRoZSBzYW1lIGZpbGUgdW5kZXIgZGlmZmVyZW50IGltcG9ydHMg
cG9pbnQgdG8gdGhlIHNhbWUgb2JqZWN0cwphY3RpdmVfcmVjb3JkOjpBY3RpdmVNb2RlbCA9PSBh
Y3RpdmVfbW9kZWw6OkFjdGl2ZU1vZGVsCiM9PiB0cnVlCmBgYAoKV2l0aCB0aGUgY29uc3RhbnRz
IGFsbCBsb2FkZWQgdW5kZXIgYW4gYW5vbnltb3VzIG5hbWVzcGFjZSwgYW55IGNvZGUgaW1wb3J0
aW5nIHRoZSBnZW0gY2FuIG5hbWUgY29uc3RhbnRzIGhvd2V2ZXIgaXQgbGlrZXM6CgpgYGBydWJ5
CmNsYXNzIFBvc3QgPCBhY3RpdmVfcmVjb3JkOjpBY3RpdmVSZWNvcmQ6OkJhc2UKZW5kCgpBUiA9
IGFjdGl2ZV9yZWNvcmQ6OkFjdGl2ZVJlY29yZAoKUG9zdC5zdXBlcmNsYXNzCiM9PiBBUjo6QmFz
ZQpgYGAKCk5vdGUgdGhhdCB0aGlzIGVuYWJsZXMgdGhlIGltcG9ydGVyIHRvIGNvbXBsZXRlbHkg
ZGV0ZXJtaW5lIHRoZSBuYW1pbmcgZm9yIGV2ZXJ5IGNvbnN0YW50IGl0IGltcG9ydHMuIFNvIGdl
bXMgY2FuIG9wdCB0byBoaWRlIHRoZWlyIGRlcGVuZGVuY2llcyBieSAiYW5jaG9yaW5nIiB0aGVt
IGluc2lkZSB0aGVpciBvd24gbmFtZXNwYWNlLCBsaWtlIHRoaXM6CgpgYGBydWJ5CiMgaW4gbGli
L215X2dlbS5yYgptb2R1bGUgTXlHZW0KICBkZXAgPSBpbXBvcnQgIm15X2dlbV9kZXBlbmRlbmN5
IgoKICAjIG15X2dlbV9kZXBlbmRlbmN5IGlzICJhbmNob3JlZCIgdW5kZXIgdGhlIE15R2VtIG5h
bWVzcGFjZSwgc28gbm90IGV4cG9zZWQgdG8gdXNlcnMKICAjIG9mIHRoZSBnZW0gdW5sZXNzIHRo
ZXkgYWxzbyByZXF1aXJlIGl0LgogIE15R2VtRGVwZW5kZW5jeSA9IGRlcAoKICAjLi4uCmVuZApg
YGAKClRoZXJlIGFyZSBhIGNvdXBsZSBpbXBvcnRhbnQgaW1wbGVtZW50YXRpb24gZGVjaXNpb25z
IGluIHRoZSBnZW06CgoxLiBfT25seSBsb2FkIGNvZGUgb25jZS5fIFdoZW4gdGhlIHNhbWUgZmls
ZSBpcyBpbXBvcnRlZCBhZ2FpbiAoZWl0aGVyIGRpcmVjdGx5IG9yIHRyYW5zaXRpdmVseSksICJj
b3B5IiBjb25zdGFudHMgZnJvbSBwcmV2aW91c2x5IGltcG9ydGVkIG5hbWVzcGFjZSB0byB0aGUg
bmV3IG5hbWVzcGFjZSB1c2luZyBhIHJlZ2lzdHJ5IHdoaWNoIG1hcHMgd2hpY2ggbmFtZXNwYWNl
IChpbXBvcnQpIHdhcyB1c2VkIHRvIGxvYWQgd2hpY2ggZmlsZSAoYXMgc2hvd24gYWJvdmUgd2l0
aCBhY3RpdmVyZWNvcmQvYWN0aXZlbW9kZWwpLiBUaGlzIGlzIG5lY2Vzc2FyeSB0byBlbnN1cmUg
dGhhdCBkaWZmZXJlbnQgaW1wb3J0cyBjYW4gInNlZSIgc2hhcmVkIGZpbGVzLiBBIHNpbWlsYXIg
cmVnaXN0cnkgaXMgdXNlZCB0byB0cmFjayBhdXRvbG9hZHMgc28gdGhhdCB0aGV5IHdvcmsgY29y
cmVjdGx5IHdoZW4gdXNlZCBmcm9tIGltcG9ydGVkIGNvZGUuCjIuIFRvcGxldmVsIGNvcmUgdHlw
ZXMgKGBOaWxDbGFzc2AsIGBUcnVlQ2xhc3NgLCBgRmFsc2VDbGFzc2AsIGBTdHJpbmdgLCBldGMp
IGFyZSAiYWxpYXNlZCIgdG8gY29uc3RhbnRzIHVuZGVyIGVhY2ggaW1wb3J0IG1vZHVsZSB0byBt
YWtlIHRoZW0gYXZhaWxhYmxlLiBUaHVzIHRoZXJlIGNhbiBiZSBzaWRlLWVmZmVjdHMgb2YgaW1w
b3J0aW5nIGNvZGUsIGJ1dCB0aGlzIGFsbG93cyBhIGdlbSBsaWtlIFJhaWxzIHRvIG1vbmtleXBh
dGNoIGNvcmUgY2xhc3NlcyB3aGljaCBpdCBuZWVkcyB0byBkbyBmb3IgaXQgdG8gd29yay4KMy4g
YE9iamVjdC5jb25zdF9taXNzaW5nYCBpcyBwYXRjaGVkIHRvIGNoZWNrIHRoZSBjYWxsZXIgbG9j
YXRpb24gYW5kIHJlc29sdmUgdG8gdGhlIGNvbnN0YW50IGRlZmluZWQgdW5kZXIgYW4gaW1wb3J0
LCBpZiB0aGVyZSBpcyBhbiBpbXBvcnQgZGVmaW5lZCBmb3IgdGhhdCBmaWxlLgoKVG8gYmUgY2xl
YXI6ICoqSSB0aGluayAxKSBzaG91bGQgYmUgaW1wbGVtZW50ZWQgaW4gUnVieSwgYnV0IG5vdCAy
KSBhbmQgMykuKiogVGhlIGxhc3Qgb25lIChgT2JqZWN0LmNvbnN0X21pc3NpbmdgKSBpcyBhIGhh
Y2sgdG8gc3VwcG9ydCB0aGUgY2FzZSB3aGVyZSBhIHRvcGxldmVsIGNvbnN0YW50IGlzIHJlZmVy
ZW5jZWQgZnJvbSBhIG1ldGhvZCBjYWxsZWQgaW4gaW1wb3J0ZWQgY29kZSAoYXQgd2hpY2ggcG9p
bnQgdGhlIGB0b3Bfd3JhcHBlcmAgaXMgbm90IGFjdGl2ZS4pCgpJIGtub3cgdGhpcyBpcyBhIGJp
ZyBwcm9wb3NhbCwgYW5kIHRoZXJlIGFyZSBzdHJvbmcgb3BpbmlvbnMgaGVsZC4gSSB3b3VsZCBy
ZWFsbHkgYXBwcmVjaWF0ZSBjb25zdHJ1Y3RpdmUgZmVlZGJhY2sgb24gdGhpcyBnZW5lcmFsIGlk
ZWEuCgpTZWUgYWxzbyBzaW1pbGFyIGRpc2N1c3Npb24gaW46IGh0dHBzOi8vYnVncy5ydWJ5LWxh
bmcub3JnL2lzc3Vlcy8xMDMyMAoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpV
bnN1YnNjcmliZTogPG1haWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1Ympl
Y3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxt
YW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==

In This Thread