[#111472] [Ruby master Bug#19274] Error installing ruby 3.2.0 on RH 8 — "aalllop (Alberto Allegue) via ruby-core" <ruby-core@...>
Issue #19274 has been reported by aalllop (Alberto Allegue).
5 messages
2022/12/28
[#111508] Data support for versions before 3.2.0 — Eustáquio Rangel via ruby-core <ruby-core@...>
I was wondering that every piece of code (gems, etc) that use the new Data =
3 messages
2022/12/29
[ruby-core:111197] [Ruby master Feature#17942] Add a `initialize(public @a, private @b)` shortcut syntax for defining public/private accessors for instance vars as part of constructor
From:
"sawa (Tsuyoshi Sawada)" <noreply@...>
Date:
2022-12-04 06:44:28 UTC
List:
ruby-core #111197
SXNzdWUgIzE3OTQyIGhhcyBiZWVuIHVwZGF0ZWQgYnkgc2F3YSAoVHN1eW9zaGkgU2F3YWRhKS4N DQoNDQoNDQpMZXZMdWtvbXNreWkgKExldiBMdWtvbXNreWkpIHdyb3RlIGluICNub3RlLTY6DQ0K DQ0KPiBbWV1vdSBhcmUgZm9yY2VkIHRvIGNyZWF0ZSBhIGxvdCBvZiBkdXBsaWNhdGlvbiBbLi4u XQ0NCj4NDQo+ICAgICBjbGFzcyBQb2xsSXRlbTo6VG9nZ2xlVm90ZQ0NCj4gICAgICAgYXR0cl9y ZWFkZXIgOnBvbGxfaXRlbSwgOnVzZXIsIDp2b3RlZCwgOmlwX2FkZHJlc3MNDQo+DQ0KPiAgICAg ICBkZWYgaW5pdGlhbGl6ZShwb2xsX2l0ZW0sIHVzZXIsIHZvdGVkLCBpcF9hZGRyZXNzOikNDQo+ ICAgICAgICAgQHBvbGxfaXRlbSA9IHBvbGxfaXRlbQ0NCj4gICAgICAgICBAdXNlciA9IHVzZXIN DQo+ICAgICAgICAgQHZvdGVkID0gdm90ZWQNDQo+ICAgICAgICAgQGlwX2FkZHJlc3MgPSBpcF9h ZGRyZXNzDQ0KPiAgICAgICBlbmQNDQo+IEhlcmUgd2Ugc2VlIGBwb2xsX2l0ZW1gLCBgdXNlcmAs IGB2b3RlZGAsIGBpcF9hZGRyZXNzYCBuYW1lcyBhcmUgZHVwbGljYXRlZCA0IHRpbWVzDQ0KDQ0K Tm90IG5lY2Vzc2FyaWx5LiBZb3UgY2FuIGRvIHdpdGggMiB0aW1lcyAoY291bnRpbmcgdGhlIHVz ZSB3aXRoIGBhdHRyX3JlYWRlcmApOg0NCg0NCiAgICAgIGRlZiBpbml0aWFsaXplKCphcmdzKQ0N CiAgICAgICAgQHBvbGxfaXRlbSwgQHVzZXIsIEB2b3RlZCwgQGlwX2FkZHJlc3MgPSBhcmdzDQ0K ICAgICAgZW5kDQ0KDQ0KPiBJIHNhdyAqKk1hdHogd2FzIGFnYWluc3QgdGhpcyBmZWF0dXJlKios IHRoZSBtYWluIHBvaW50IHdhczoNDQo+IA0NCj4gPiAgICAgZGVmIGluaXRpYWxpemUoQGZvbywg QGJhcikNDQo+ICA+ICAgICBlbmQNDQo+ID4gZG9lcyBub3QgZXhwcmVzcyBpbnRlbnRpb24gb2Yg aW5zdGFuY2UgdmFyaWFibGUgaW5pdGlhbGl6YXRpb24NDQo+IA0NCj4gQnV0IOKAkyAqKml0IGRv ZXMgZXhwcmVzcyoqIOKAkyB0aGVyZSBpcyBhIHdvcmQgYGluaXRpYWxpemVgIGFuZCB0aGVuIGdv ZXMgYEBmb29gLCBpdCBtZWFucyAiUGxlYXNlIGluaXRpYWxpemUgQGZvbyB3aXRoIHdoYXRldmVy IGlzIHBhc3NlZCBoZXJlIi4NDQoNDQpObywgaXQgZG9lc24ndC4gSXQgbWVhbnMgInBsZWFzZSBp bml0aWFsaXplICoqdGhlIG5ld2x5IGNyZWF0ZWQgaW5zdGFuY2UqKiB3aXRoIHdoYXRldmVyIGlz IHBhc3NlZCBoZXJlIGFzIHRoZSB2YWx1ZSBvZiBgQGZvb2AuIiBJbiBnZW5lcmFsLCBSdWJ5IGNv ZGUgYGZvby5iYXIoYmF6KWAgdHJhbnNsYXRlcyB0byBFbmdsaXNoIGFzICJkbyBiYXIgdG8gZm9v IHVzaW5nIGJheiIsIG5vdCAiZm9vIGRvZXMgYmFyIHRvIGJhei4iDQ0KDQ0KLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0NCkZlYXR1cmUgIzE3OTQyOiBBZGQgYSBgaW5p dGlhbGl6ZShwdWJsaWMgQGEsIHByaXZhdGUgQGIpYCBzaG9ydGN1dCBzeW50YXggZm9yIGRlZmlu aW5nIHB1YmxpYy9wcml2YXRlIGFjY2Vzc29ycyBmb3IgaW5zdGFuY2UgdmFycyBhcyBwYXJ0IG9m IGNvbnN0cnVjdG9yDQ0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE3OTQyI2No YW5nZS0xMDA0ODANDQoNDQoqIEF1dGhvcjogVHlsZXJSaWNrIChUeWxlciBSaWNrKQ0NCiogU3Rh dHVzOiBPcGVuDQ0KKiBQcmlvcml0eTogTm9ybWFsDQ0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0NClRoaXMgcHJvcG9zYWwgYnVpbGRzIG9uIHRoZSBwcm9wb3NlZCBg aW5pdGlhbGl6ZShAYSwgQGIpYCBpbnN0YW5jZSB2YXIgYXNzaWdubWVudCBzaG9ydGN1dCBzeW50 YXggZGVzY3JpYmVkIGluICMxNTE5Mi4NDQoNDQoxLiBJdCBhbGxvd3MgeW91IHRvIGFkZCBhbiAq b3B0aW9uYWwqIGBwdWJsaWNgL2Bwcm90ZWN0ZWRgL2Bwcml2YXRlYCBtb2RpZmllciBiZWZvcmUg YW55IGluc3RhbmNlIHZhciBwYXJhbWV0ZXIuIERvaW5nIHNvIGF1dG9tYXRpY2FsbHkgZGVmaW5l cyAqYWNjZXNzb3IgbWV0aG9kcyogKHdpdGggdGhlIGdpdmVuIGFjY2VzcyBtb2RpZmllcjsgZXF1 aXZhbGVudCB0byBgYXR0cl9hY2Nlc3NvcmAgaW5zaWRlIG9mIGEgIGBwdWJsaWNgL2Bwcm90ZWN0 ZWRgL2Bwcml2YXRlYCBibG9jaykgZm9yIHRoZSBpbnN0YW5jZSB2YXIgaXQgcHJlY2VkZXMuDQ0K Mi4gSWYgdGhlIHZpc2liaWxpdHkgbW9kaWZpZXIgaXMgb21pdHRlZCwgdGhlbiBpdCBkZWZhdWx0 cyB0byBhdXRvbWF0aWNhbGx5IF9ub18gZ2V0dGVyL3NldHRlciBtZXRob2RzIGZvciB0aGF0IGlu c3RhbmNlIHZhciAoaXQgX29ubHlfIGRvZXMgYW4gYXNzaWdubWVudCBvZiB0aGF0IGFscmVhZHkt cHJpdmF0ZSBpbnN0YW5jZSB2YXIpLg0NCg0NCiMjIFBhcmFtZXRlciBwcm9wZXJ0aWVzIGluIFR5 cGVTY3JpcHQgbGFuZ3VhZ2UNDQoNDQpUaGlzIGlzIGluc3BpcmVkIGJ5IFR5cGVTY3JpcHQncyBg Y29uc3RydWN0b3IocHVibGljIGEsIHByaXZhdGUgYilgIHN5bnRheCwgd2hpY2ggYWxsb3dzIHlv dSB0byB3cml0ZSB0aGlzIChbUkVQTF0oaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL3Bs YXk/I2NvZGUvTVlHd2hnemhBRUJpRDI5b0c4QlEwUFdQQWRoQUxnRTRDdXcrOGhBRkFBN0VCR0lB bHNOR0FGdzdFQzJkQXBvUUJwb3RCczJoME8zUG9PR0ZHQU56RDVlV1NUMzRCS0ZPa3dCZlZQcUEp KToNDQpgYGBqcw0NCmNsYXNzIEZvbyB7DQ0KICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBhOm51bWJl ciwgcHVibGljIGI6bnVtYmVyLCBwcml2YXRlIGM6bnVtYmVyKSB7DQ0KICAgIH0NDQp9DQ0KYGBg DQ0KaW5zdGVhZCBvZiB0aGlzOg0NCmBgYGpzDQ0KY2xhc3MgRm9vIHsNDQogICAgY29uc3RydWN0 b3IoYSwgYiwgYykgew0NCiAgICAgICAgdGhpcy5hID0gYTsNDQogICAgICAgIHRoaXMuYiA9IGI7 DQ0KICAgICAgICB0aGlzLmMgPSBjOw0NCiAgICB9DQ0KfQ0NCmBgYA0NCg0NCihUaGUgYHB1Ymxp Y2AvYHByaXZhdGVgIGFjY2VzcyBtb2RpZmllcnMgYWN0dWFsbHkgZGlzYXBwZWFyIGluIHRoZSB0 cmFuc3BpbGVkIEphdmFTY3JpcHQgY29kZSBiZWNhdXNlIGl0J3Mgb25seSB0aGUgVHlwZVNjcmlw dCBjb21waWxlciB0aGF0IGVuZm9yY2VzIHRob3NlIGFjY2VzcyBtb2RpZmllcnMsIGFuZCBpdCBk b2VzIHNvIGF0ICpjb21waWxlKiB0aW1lIHJhdGhlciB0aGFuIGF0IHJ1biB0aW1lLikNDQoNDQpG dXJ0aGVyIHJlYWRpbmc6DQ0KLSBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9o YW5kYm9vay8yL2NsYXNzZXMuaHRtbCNwYXJhbWV0ZXItcHJvcGVydGllcw0NCi0gaHR0cHM6Ly9i YXNhcmF0LmdpdGJvb2suaW8vdHlwZXNjcmlwdC9mdXR1cmUtamF2YXNjcmlwdC9jbGFzc2VzI2Rl ZmluZS11c2luZy1jb25zdHJ1Y3Rvcg0NCi0gaHR0cHM6Ly9rZW5kYWxlaXYuY29tL3R5cGVzY3Jp cHQtY29uc3RydWN0b3ItYXNzaWdubWVudC1wdWJsaWMtYW5kLXByaXZhdGUta2V5d29yZHMvDQ0K DQ0KDQ0KIyMgRGlmZmVyZW5jZXMgZnJvbSBUeXBlU2NyaXB0DQ0KDQ0KSSBwcm9wb3NlIGFkZGlu ZyBhIHNpbWlsYXIgZmVhdHVyZSB0byBSdWJ5LCBidXQgd2l0aCBmb2xsb3dpbmcgZGlmZmVyZW5j ZXMgZnJvbSBUeXBlU2NyaXB0Og0NCg0NCjEuIFVzZSAqKmBAYWAqKiBpbnN0ZWFkIG9mIGJhcmUg YGFgLiBUaGlzIG1ha2VzIGl0ICptdWNoKiBjbGVhcmVyIHRoYXQgeW91IGFyZSBhc3NpZ25pbmcg ZGlyZWN0bHkgdG8gaW5zdGFuY2UgdmFyaWFibGVzIGluc3RlYWQgb2YgdG8gbG9jYWxzLg0NCiAg ICAtIFJhdGlvbmFsZTogVGhlIGBAYCBpcyBhY3R1YWxseSBfcGFydF8gb2YgdGhlIGluc3RhbmNl IHZhcmlhYmxlIG5hbWUsIGFuZCBpcyBpbnNlcGFyYWJsZSBmcm9tIGl0LiAoVGhpcyBpcyBhbHNv IGNvbnNpc3RlbnQgd2l0aCBob3cgdGhlIGAjYCBpcyBwYXJ0IG9mIHRoZSBuYW1lIGl0c2VsZiBp biBKYXZhU2NyaXB0J3MgWyhQcml2YXRlIGluc3RhbmNlIGZpZWxkcyldKGh0dHBzOi8vZGV2ZWxv cGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0NsYXNz ZXMvUHJpdmF0ZV9jbGFzc19maWVsZHMjcHJpdmF0ZV9pbnN0YW5jZV9maWVsZHMpLikNDQogICAg LSAoYHB1YmxpYyBhYCB3b3VsZCBiZSBhIHN5bnRheCBlcnJvciBiZWNhdXNlIHRoZXJlJ3Mgbm8g c3VjaCB0aGluZyBhcyBhY2Nlc3MgbW9kaWZpZXJzIGZvciBsb2NhbHMuIE9rYXksIEkgZ3Vlc3Mg dGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIGFjY2VzcyBtb2RpZmllcnMgZm9yIGluc3RhbmNlIHZh cnMgZWl0aGVyLCB3aGljaCBpcyB3aHkuLi4pDQ0KDQ0KMS4gTWFrZSB0aGUgc3ludGF4IGZvciAq Kiphc3NpZ25pbmcqKiogdG8gaW5zdGFuY2UgdmFycyAoYEBhYCkgKHRoZSBwcm9wb3NhbCBpbiAj MTUxOTIpIGFuZCBkZWZpbmluZyAqKiphY2Nlc3NvciBtZXRob2RzKioqIGZvciB0aG9zZSBpbnN0 YW5jZSB2YXJzIChgcHVibGljYC9gcHJpdmF0ZWApIHNlcGFyYXRlL2Rpc3RpbmN0Lg0NCiAgICAt IEluIG90aGVyIHdvcmRzLCByYXRoZXIgdGhhbiBtYWtlIHRoZSBgcHVibGljYC9gcHJpdmF0ZWAg a2V5d29yZHMgYSAqcmVxdWlyZWQqIHBhcnQgb2YgdGhlIHN5bnRheCBsaWtlIGl0IGlzIGZvciBU eXBlU2NyaXB0IFtwYXJhbWV0ZXIgcHJvcGVydGllc10oaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxh bmcub3JnL2RvY3MvaGFuZGJvb2svMi9jbGFzc2VzLmh0bWwjcGFyYW1ldGVyLXByb3BlcnRpZXMp LCB5b3UgY291bGQgb21pdCB0aGUgbW9kaWZpZXIgYW5kIGl0IHdvdWxkIHN0aWxsIGRvIHRoZSBp bnN0YW5jZSB2YXIgX2Fzc2lnbm1lbnQqLg0NCiAgICAtIFRoZSBgcHVibGljYC9gcHJpdmF0ZWAg YWNjZXNzIG1vZGlmaWVycyBiZSBhbiBhZGRpdGlvbmFsICgqb3B0aW9uYWwqKSBzaG9ydGN1dCB3 aGVuIHlvdSB3YW50IHRvIGFkZCBhbiAqKiphY2Nlc3NvciBtZXRob2QqKiogaW4gKmFkZGl0aW9u KiB0byBkb2luZyBhbiAqKiphc3NpZ25tZW50KioqIC4NDQogICAgLSBVbmxpa2UgSmF2YSBhbmQg VHlwZVNjcmlwdCB3aGVyZSB5b3UgX2Nhbl8gYWRkIGFjY2VzcyBtb2RpZmllcnMgdG8gaW5zdGFu Y2UgdmFyaWFibGVzLCBpbiBSdWJ5LCBgcHVibGljYC9gcHJpdmF0ZWAgX2Nhbid0XyBiZSBhcHBs aWVkIHRvIGluc3RhbmNlIHZhcmlhYmxlcyAoZGlyZWN0IGFjY2VzcyBpcyBvbmx5IHBvc3NpYmxl IGZyb20gd2l0aGluIHRoZSBpbnN0YW5jZSkuIFNvIGlmIHdlJ3JlIGdvaW5nIHRvIGFsbG93IGEg YHB1YmxpY2AvYHByaXZhdGVgIG1vZGlmaWVyIGhlcmUgYXQgYWxsLCBUaGV5IF9tdXN0XyByZWZl ciB0byBtZXRob2RzLCBzcGVjaWZpY2FsbHkgYWNjZXNzb3IgbWV0aG9kcyBmb3IgdGhvc2UgaW5z dGFuY2UgdmFyaWFibGVzLg0NCg0NCjEuIEtlZXAgaXQgKipwcml2YXRlKiogYnkgZGVmYXVsdCAo d2hpY2ggb2YgY291cnNlIGBAYWAgYnkgaXRzZWxmIGltcGxpZXPigJRpdCBfaXNfIHByaXZhdGUg dW5sZXNzIHlvdSBhZGQgYSBwdWJsaWMgYWNjZXNzb3IpLg0NCiAgICAtIChSYXRoZXIgdGhhbiBt YWtlIGl0IGBwdWJsaWNgIGJ5IGRlZmF1bHQgbGlrZSBpdCBpcyBpbiBUeXBlU2NyaXB0LikNDQog ICAgLSBLZWVwaW5nIGluc3RhbmNlIHZhcmlhYmxlcyBjb21wbGV0ZWx5IHByaXZhdGUgaXMgcHJv YmFibHkgd2hhdCBwZW9wbGUgd2lsbCB3YW50IG1vc3Qgb2YgdGhlIHRpbWUsIGFuZCB3ZSBzaG91 bGQgb3B0aW1pemUgdGhlIGVyZ29ub21pY3MgZm9yIHRoZSBtb3N0IGNvbW1vbiBjYXNlLg0NCiAg ICAtIFByaXZhdGUgaXMgYSBzYWZlciBkZWZhdWx0LCBhbmQgc2hvdWxkIGJlIGFzc3VtZWQgdW5s ZXNzIHlvdSBleHBsaWNpdGx5IGFzayBmb3IgYSBwdWJsaWMgYWNjZXNzb3IgdG8gYmUgYWRkZWQu DQ0KICAgIC0gSSBiZXQgVHlwZVNjcmlwdCBtYWRlIHRoZSBgcHVibGljYCB0aGUgZGVmYXVsdCBt b3N0bHkgdG8gYmUgY29uc2lzdGVudCB3aXRoIEphdmFTY3JpcHQgKHdoaWNoIFR5cGVTY3JpcHQg Y29tcGlsZXMgdG8pOiBKYXZhU2NyaXB0IChhbG9uZyB3aXRoIG90aGVyIGxhbmd1YWdlcyBsaWtl IEphdmEpIGFsbG93cyBkaXJlY3QgYWNjZXNzIChubyBnZXR0ZXIvc2V0dGVyIG5lZWRlKSB0byBp bnN0YW5jZSBwcm9wZXJ0aWVzL3ZhcmlhYmxlcyBmcm9tIG9iamVjdHMgb3V0c2lkZSB0aGUgaW5z dGFuY2UuIEphdmFTY3JpcHQgZG9lc24ndCBldmVuIF9oYXZlXyBhIHdheSB0byBtYWtlIGluc3Rh bmNlIHZhcmlhYmxlcyBwcml2YXRlIChidXQgaG9wZWZ1bGx5IHdpbGwgc29vbiB3aXRoIHRoaXMg W3Byb3Bvc2FsXShodHRwczovL2dpdGh1Yi5jb20vdGMzOS9wcm9wb3NhbC1wcml2YXRlLW1ldGhv ZHMpIHRvIGFkZCBgI2FgIHN5bnRheCBmb3IgcHJpdmF0ZSBwcm9wZXJ0aWVzKS4NDQoNDQpTbyB0 aGlzOg0NCg0NCmBgYHJ1YnkNDQpjbGFzcyBUaGluZw0NCiAgZGVmIGluaXRpYWxpemUocHVibGlj IEBhLCBwdWJsaWMgQGIsIEBjKQ0NCiAgZW5kDQ0KZW5kDQ0KYGBgDQ0KDQ0Kd291bGQgYmUgZXF1 aXZhbGVudCB0byB0aGlzOg0NCg0NCmBgYHJ1YnkNDQpjbGFzcyBUaGluZw0NCiAgYXR0cl9hY2Nl c3NvciA6YSwgOmINDQoNDQogIGRlZiBpbml0aWFsaXplKGEsIGIsIGMpDQ0KICAgIEBhID0gYQ0N CiAgICBAYiA9IGINDQogICAgQGMgPSBjDQ0KICBlbmQNDQpgYGANDQoNDQojIyBIb3cgaXMgYGlu aXRpYWxpemUocHJpdmF0ZSBAYSlgIGRpZmZlcmVudCBmcm9tIGBpbml0aWFsaXplKEBhKWA/DQ0K DQ0KRXZlbiB0aG91Z2ggYEBhYCBieSBpdHNlbGYgaXMgYWxyZWFkeSBwcml2YXRlLi4uDQ0KMS4g VGhpcyBkZWZpbmVzIGEgcHJpdmF0ZSBhY2Nlc3NvciBmb3IgdGhhdCBpbnN0YW5jZSB2YXIsIHdo aWNoIGxldHMgeW91IHdyaXRlIGBzZWxmLmEgPWAgaW5zdGVhZCBvZiBgQGEgPWAgKGlmIHlvdSB3 YW50KS4NDQoyLiBIYXZpbmcgYSBjb25jaXNlIHdheSB0byBkbyB0aGF0IGlzIGhlbHBmdWwsIGZv ciBleGFtcGxlIGlmIHlvdSB3YW50IHRvIG1ha2UgaXQgYSBtYXR0ZXIgb2YgcHJhY3RpY2UvcG9s aWN5IHRvIG9ubHkgc2V0IGFuIGluc3RhbmNlIHZhcmlhYmxlIGJ5IGdvaW5nIHRocm91Z2ggaXRz ICpzZXR0ZXIgbWV0aG9kKi4gKFNlZSBbZGlzY3Vzc2lvbiBoZXJlXShodHRwczovL3N0YWNrb3Zl cmZsb3cuY29tL3F1ZXN0aW9ucy8yNTU3MTY0Mi9ydWJ5LXByaXZhdGUtYW5kLXB1YmxpYy1hY2Nl c3NvcnMpLikNDQoNDQoNDQpXaHkgbm90IGp1c3QgdXNlIGBpbml0aWFsaXplKHByaXZhdGUgQGEp YCB0byBiZSBjb25zaXN0ZW50IHdpdGggVHlwZVNjcmlwdCBzcGVjPw0NCi0gVHlwZVNjcmlwdCdz IGBwdWJsaWNgL2Bwcml2YXRlYCBpcyBub3Qgc3RhbmRhcmQgSmF2YVNjcmlwdC4gSW4gZmFjdCwg aWYgdGhlIFtwcml2YXRlIG1ldGhvZHMvZmllbGRzIHByb3Bvc2FsXShodHRwczovL2dpdGh1Yi5j b20vdGMzOS9wcm9wb3NhbC1wcml2YXRlLW1ldGhvZHMpIGhhZCBleGlzdGVkIHdoZW4gVHlwZVNj cmlwdCBhZGRlZCBbcGFyYW1ldGVyIHByb3BlcnRpZXNdKGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRs YW5nLm9yZy9kb2NzL2hhbmRib29rLzIvY2xhc3Nlcy5odG1sI3BhcmFtZXRlci1wcm9wZXJ0aWVz KSwgSSdkIGxpa2UgdG8gdGhpbmsgdGhhdCB0aGV5IG1pZ2h0IGhhdmUgYWN0dWFsbHkgKm1hZGUg dXNlKiBvZiB0aGUgbmV3IGAjYmAgc3ludGF4IGFuZCBnb25lIHdpdGggYSB0ZXJzZXIgc3ludGF4 IGxpa2UgYGNvbnN0cnVjdG9yKHB1YmxpYyBhLCAjYilgIGluc3RlYWQgb2YgYGBjb25zdHJ1Y3Rv cihwdWJsaWMgYSwgcHJpdmF0ZSBiKWAuDQ0KDQ0KDQ0KIyMgVXBzaWRlcyBvZiB0aGlzIHByb3Bv c2FsDQ0KDQ0KMS4gUmVtb3ZlcyBldmVuIG1vcmUgYm9pbGVycGxhdGUgKGFsbCB0aG9zZSBgYXR0 cl9hY2Nlc3NvcmAgbGluZXMpLCBtdWNoIG9mIHRoZSB0aW1lDQ0KDQ0KIyMgRG93bnNpZGVzIG9m IHRoaXMgcHJvcG9zYWwNDQoNDQoxLiBPbmx5IHByb3ZpZGVzIGEgd2F5IHRvIGRlZmluZSBib3Ro IGdldHRlciBhbmQgc2V0dGVyIGF0IG9uY2UuIERvZXNuJ3QgcHJvdmlkZSBhIHdheSB0byBfanVz dF8gZGVmaW5lIGEgZ2V0dGVyIGFuZCBub3QgYSBzZXR0ZXIsIGZvciBleGFtcGxlLg0NCiAgICAt IERvZXNuJ3Qgc2VlbSBsaWtlIGEgYmlnIGRlYWwsIGhvd2V2ZXIuIFlvdSBjYW4ganVzdCBub3Qg dXNlIHRoaXMgZmVhdHVyZSBhbmQgZGVmaW5lIHRoZSBnZXR0ZXIgd2l0aCBgYXR0cl9yZWFkZXIg OmFgIGluc3RlYWQuIE9yIGRlZmluZSBwcml2YXRlIGdldHRlci9zZXR0ZXIgd2l0aCBgcHJpdmF0 ZSBAYWAgYW5kIHRoZW4gb3ZlcnJpZGUgd2l0aCBgYXR0cl9yZWFkZXIgOmFgIHRvIGFkZCBhIHB1 YmxpYyBnZXR0ZXIgKHdoaWxlIGtlZXBpbmcgdGhlIHByaXZhdGUgc2V0dGVyKS4NDQoNDQoNDQoN DQoNDQotLSANDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NDQogX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwogcnVieS1jb3JlIG1haWxpbmcgbGlzdCAt LSBydWJ5LWNvcmVAbWwucnVieS1sYW5nLm9yZwogVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFp bCB0byBydWJ5LWNvcmUtbGVhdmVAbWwucnVieS1sYW5nLm9yZwogcnVieS1jb3JlIGluZm8gLS0g aHR0cHM6Ly9tbC5ydWJ5LWxhbmcub3JnL21haWxtYW4zL3Bvc3Rvcml1cy9saXN0cy9ydWJ5LWNv cmUubWwucnVieS1sYW5nLm9yZy8=