[ruby-core:96947] [Ruby master Feature#16511] Staged warnings for keyword arguments

From: daniel@...42.com
Date: 2020-01-20 00:51:56 UTC
List: ruby-core #96947
SXNzdWUgIzE2NTExIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRGFuMDA0MiAoRGFuaWVsIERlTG9ybWUp
Lg0KDQpEZXNjcmlwdGlvbiB1cGRhdGVkDQpTdWJqZWN0IGNoYW5nZWQgZnJvbSBTdWJjbGFzcyBv
ZiBIYXNoIGZvciBrZXl3b3JkIGFyZ3VtZW50cyB0byBTdGFnZWQgd2FybmluZ3MgZm9yIGtleXdv
cmQgYXJndW1lbnRzDQoNCkknbSBhZGp1c3RpbmcgdGhlIHByb3Bvc2FsIHRvIGZvY3VzIG9uIHRo
ZSBnb2FsIChmbGV4aWJsZSBkZXByZWNhdGlvbikgcmF0aGVyIHRoYW4gdGhlIG1lYW5zIChzdWJj
bGFzcyBvciBmbGFnKQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
DQpGZWF0dXJlICMxNjUxMTogU3RhZ2VkIHdhcm5pbmdzIGZvciBrZXl3b3JkIGFyZ3VtZW50cw0K
aHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE2NTExI2NoYW5nZS04Mzk3NA0KDQoq
IEF1dGhvcjogRGFuMDA0MiAoRGFuaWVsIERlTG9ybWUpDQoqIFN0YXR1czogT3Blbg0KKiBQcmlv
cml0eTogTm9ybWFsDQoqIEFzc2lnbmVlOiANCiogVGFyZ2V0IHZlcnNpb246IA0KLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KQXMgYW4gYWx0ZXJuYXRpdmUgdG8gIzE2
NDYzIGFuZCAjMTY0OTQgSSdkIGxpa2UgdG8gcHJvcG9zZSB0aGlzIGFwcHJvYWNoLCB3aGljaCBJ
IGJlbGlldmUgYWxsb3dzIGEgKiptdWNoKiogbW9yZSBmbGV4aWJsZSBwYXRoIGZvciBtaWdyYXRp
b24gb2Yga2V5d29yZCBhcmd1bWVudHMuDQoNClRoZSBpZGVhIGlzIHRvIGluZGljYXRlIGZvciBl
dmVyeSBIYXNoIG9iamVjdCBpZiBpdCdzIGludGVuZGVkIHRvIHJlcHJlc2VudCBhIF9rZXl3b3Jk
XyBoYXNoIG9yIGEgX2RhdGFfIGhhc2guIFRoaXMgZXh0cmEgaW5mb3JtYXRpb24gaXMgdGhlbiB1
c2VkIHRvIGdlbmVyYXRlIG1vcmUgZ3JhbnVsYXIgd2FybmluZ3MgZGVwZW5kaW5nIG9uIGEgdXNl
cidzIGNvbXBhdGliaWxpdHkgbmVlZHMuDQoNClRoZSAia2V5d29yZG5lc3MiIG9mIGEgaGFzaCB3
b3VsZCBiZSBpbmRpY2F0ZWQgYnkgYSAqKmZsYWcqKiBvbiB0aGUgSGFzaCBvYmplY3Q7IHRoaXMg
aXMgYWxyZWFkeSBpbXBsZW1lbnRlZCBpbiAyLjcgYW5kIGlzIHRoZSBhcHByb2FjaCBmYXZvcmVk
IGJ5IE1hdHouIExldCdzIGNhbGwgdGhpcyBmbGFnZ2VkIGhhc2ggYSAiS3dIYXNoIiwgYW5kIGEg
bm9uLWZsYWdnZWQgaGFzaCBpcyBqdXN0IGEgIkhhc2giLiBOb3RlOiB0aGlzIGNvdWxkIGFsc28g
YmUgaW1wbGVtZW50ZWQgdmlhIGEgKipzdWJjbGFzcyoqIG9mIEhhc2ggKEkgcGVyc29uYWxseSBm
YXZvciB0aGlzIG9iamVjdC1vcmllbnRlZCBhcHByb2FjaCkgd2hpY2ggd2FzIHRoZSBvcmlnaW5h
bCBpZGVhIGluIHRoaXMgcHJvcG9zYWwuDQoNCkknbGwgdHJ5IHRvIGRlc2NyaWJlIHRoZSBpZGVh
IGluIGRldGFpbCBieSBicmVha2luZyBpdCBkb3duIGludG8gZmlndXJhdGl2ZSBzdGVwcy4gKFNr
aXAgdG8gIlB1dHRpbmcgaXQgYWxsIHRvZ2V0aGVyIiBmb3IgdGhlIFRMO0RSIHZlcnNpb24uKSBJ
bWFnaW5lIHN0YXJ0aW5nIHdpdGggcnVieSAyLjYgYW5kIHRoZW46DQoNCiMjIyBTdGVwIDENCg0K
V2hlbiBhIGRvdWJsZS1zcGxhdCBvciBhIGJyYWNlLWxlc3MgaGFzaCBpcyB1c2VkLCBpbnN0ZWFk
IG9mIGEgSGFzaCBpdCBjcmVhdGVzIGEgS3dIYXNoLg0KDQpgYGBydWJ5DQpkZWYgZm9vKHgpIHgg
ZW5kDQpmb28oazoxKS5jbGFzcyAgICAgICM9PiBLd0hhc2gNCmZvbygqKmhhc2gpLmNsYXNzICAg
Iz0+IEt3SGFzaA0KW2s6MV0ubGFzdC5jbGFzcyAgICAjPT4gS3dIYXNoDQpbKipoYXNoXS5sYXN0
LmNsYXNzICM9PiBLd0hhc2gNCnsqKmhhc2h9LmNsYXNzICAgICAgIz0+IEhhc2gNCmBgYA0KDQpB
dCB0aGlzIHBvaW50IHdlIGhhdmVuJ3QgaW50cm9kdWNlZCBhbnkgcmVhbCBjaGFuZ2UuIEV2ZXJ5
dGhpbmcgdGhhdCB3b3JrZWQgYmVmb3JlIGlzIHN0aWxsIHdvcmtpbmcgdGhlIHNhbWUgd2F5Lg0K
KFdpdGggYSBtaW5vciBleGNlcHRpb24gaWYgdXNpbmcgdGhlIHN1YmNsYXNzIGFwcHJvYWNoOiB1
bnVzdWFsIGNvZGUgbGlrZSBga3cuY2xhc3MgPT0gSGFzaGAgd291bGQgbm93IHJldHVybiBmYWxz
ZS4pDQoNCiMjIyBTdGVwIDINCg0KV2hlbiB0aGVyZSBpcyBhbWJpZ3VpdHkgZHVlIHRvIG9wdGlv
bmFsIHZzIGtleXdvcmQgYXJndW1lbnQsIHdlIHJlbHkgb24gdGhlIGxhc3QgYXJndW1lbnQgYmVp
bmcgSGFzaCBvciBLd0hhc2ggdG8gZGlzYW1iaWd1YXRlLg0KDQpgYGBydWJ5DQpkZWYgZm9vKHg9
bmlsLCAqKmt3KQ0KICBbeCxrd10NCmVuZA0KZm9vKHtrOjF9KSAjPT4gW3trOjF9LHt9XQ0KZm9v
KGs6MSkgICAjPT4gW25pbCx7azoxfV0NCmBgYA0KDQpUaGlzIGlzIHRoZSBfbWluaW11bV8gYW1v
dW50IG9mIGluY29tcGF0aWJpbGl0eSByZXF1aXJlZCB0byBzb2x2ZSBBTEwgYnVncyBwcmV2aW91
c2x5IHJlcG9ydGVkIHdpdGgga2V5d29yZCBhcmd1bWVudHMuICgjODA0MCwgIzgzMTYsICM5ODk4
LCAjMTA4NTYsICMxMTIzNiwgIzExOTY3LCAjMTIxMDQsICMxMjcxNywgIzEyODIxLCAjMTMzMzYs
ICMxMzY0NywgIzE0MTMwLCBldGMuKSANCg0KVGhlIHdhcm5pbmdzIGZvciB0aGlzIHdvdWxkIGJl
IGFib3V0IGFuIGltcGVuZGluZyBfY2hhbmdlIG9mIGJlaGF2aW9yXyBpbiB0aGUgX25leHQgcnVi
eSB2ZXJzaW9uXywgd2hlcmUgYGZvbyh7azoxfSlgIGlzIG5vIGxvbmdlciBpbnRlcnByZXRlZCBh
cyBrZXl3b3JkIGFyZ3VtZW50Lg0KDQojIyMgU3RlcCAzDQoNCkludHJvZHVjZSBhZGRpdGlvbmFs
IGluY29tcGF0aWJpbGl0eSB0byBpbXByb3ZlIGNsYXJpdHkgb2YgZGVzaWduLiBIZXJlIHdlIGRl
cHJlY2F0ZSB0aGUgYXV0b21hdGljIGNvbnZlcnNpb24gb2YgSGFzaCB0byBrZXl3b3JkIGFyZ3Vt
ZW50OyBvbmx5IEt3SGFzaCBpcyBhY2NlcHRlZC4gV2l0aCBhIGRlcHJlY2F0aW9uL3dhcm5pbmcg
cGhhc2UsIG9mIGNvdXJzZS4gVGhlICJhdXRvbWF0aWMiIHByb21vdGlvbiBvZiBhIEt3SGFzaCB0
byBhIGtleXdvcmQgYXJndW1lbnQgZm9sbG93cyB0aGUgc2FtZSBydWxlcyBhcyBhIEhhc2ggaW4g
Mi42OyBzaW5jZSB0aGUgS3dIYXNoIGlzIGNvbmNlcHR1YWxseSBpbnRlbmRlZCB0byByZXByZXNl
bnQga2V5d29yZCBhcmd1bWVudHMsIHRoaXMgY29udmVyc2lvbiBtYWtlcyBzZW5zZSBpbiBhIHdh
eSB0aGF0IGEgbm9ybWFsIGRhdGEgSGFzaCBkb2Vzbid0LiBXZSd2ZSB0YWtlbiB0aGUgImxhc3Qg
cG9zaXRpb25hbCBoYXNoIiBjb25jZXB0IGFuZCBzcGxpdCBpdCBpbnRvICJjb25jZXB0dWFsbHkg
YSBoYXNoIiBhbmQgImNvbmNlcHR1YWxseSBrZXl3b3JkIGFyZ3VtZW50cyIuIF9Nb3N0IGltcG9y
dGFudGx5XywgYWxsIHRoZSBjaGFuZ2VzIHJlcXVpcmVkIHRvIHNpbGVuY2UgdGhlc2Ugd2Fybmlu
Z3MgYXJlIF9jb21wYXRpYmxlIHdpdGggMi42Xy4NCg0KYGBgcnVieQ0KZGVmIGZvbyh4LCAqKmt3
KTsgZW5kDQpmb28oazoxKSAgICAgICMgQXJndW1lbnRFcnJvciBiZWNhdXNlIHggbm90IHNwZWNp
ZmllZA0KZm9vKDEsIHtrOjF9KSAjIEFyZ3VtZW50RXJyb3IgYmVjYXVzZSB0b28gbWFueSBhcmd1
bWVudHM7IEhhc2ggY2Fubm90IGJlIGNvbnZlcnRlZCB0byBLd0hhc2hzDQpvcHRzID0gW2s6MV0u
Zmlyc3QNCmZvbyhvcHRzKSAgICAgIyBvcHRzIGlzIGEgS3dIYXNoIHRoZXJlZm9yZSB1c2VkIGFz
IGtleXdvcmQgYXJndW1lbnQ7IEFyZ3VtZW50RXJyb3IgYmVjYXVzZSB4IG5vdCBzcGVjaWZpZWQN
CmZvbygxLCBvcHRzKSAgIyBvcHRzIGlzIGEgS3dIYXNoIHRoZXJlZm9yZSB1c2VkIGFzIGtleXdv
cmQgYXJndW1lbnQNCmBgYA0KDQpUaGUgd2FybmluZ3MgZm9yIHRoaXMgd291bGQgYmUgYWJvdXQg
dXBjb21pbmcgX2Vycm9yc18gZm9yIHBvc2l0aW9uYWwgYXJndW1lbnRzOiBgZm9vKHg6MSlgIHdp
bGwgYmUgImdpdmVuIDAsIGV4cGVjdGVkIDEiIGFuZCBgZm9vKDEse3g6Mn0pYCB3aWxsIGJlICJn
aXZlbiAyLCBleHBlY3RlZCAxIi4gU3VjaCBlcnJvcnMgYXJlIHVzZWZ1bCB3aGVuIGRldmVsb3Bp
bmcsIGJ1dCB0aGVyZSBpcyBubyBuZXcgZnVuY3Rpb25hbGl0eSBwZXIgc2UsIGp1c3QgYSBzdHJp
Y3RlciBzeW50YXguIFNvIGl0J3MgbGVzcyBpbXBvcnRhbnQgdG8gZXNjYWxhdGUgdG8gYW4gZXJy
b3IgYW5kIHdlIGNhbiBrZWVwIHRoZSB3YXJuaW5ncyBmb3IgbG9uZ2VyIHRoYW4gU3RlcCAyLg0K
DQpBdCB0aGlzIHBvaW50IHdlIGhhdmUgYWNoaWV2ZWQgX2FsbW9zdC1mdWxsXyAqKmR5bmFtaWMq
KiBrZXl3b3JkIHNlcGFyYXRpb24sIGFzIG9wcG9zZWQgdG8gdGhlIGN1cnJlbnQgX2FsbW9zdC1m
dWxsXyAqKnN0YXRpYyoqIGFwcHJvYWNoLiBJIHdhbnQgdG8gbWFrZSB0aGUgcG9pbnQgaGVyZSB0
aGF0LCB5ZXMsIGtleXdvcmQgYXJndW1lbnRzICoqYXJlKiogc2VwYXJhdGVkLCBpdCdzIGp1c3Qg
YSBkaWZmZXJlbnQgcGFyYWRpZ20uIFdpdGggc3RhdGljIHNlcGFyYXRpb24sIGEga2V5d29yZCBh
cmd1bWVudCBpcyBkZWZpbmVkIGxleGljYWxseSBieSBhIGRvdWJsZS1zcGxhdC4gV2l0aCBkeW5h
bWljIHNlcGFyYXRpb24sIGEga2V5d29yZCBhcmd1bWVudCBpcyB3aGVuIHRoZSBsYXN0IGFyZ3Vt
ZW50IGlzIGEgS3dIYXNoLiB7e05vdGU6IEknbSBzYXlpbmcgImFsbW9zdC1mdWxsIiBiZWNhdXNl
IEt3SGFzaCBpcyBub3QgcHJvbW90ZWQgdG8ga2V5d29yZHMgaW4gYGRlZiBmb28oYSwqKmt3KTtl
bmQ7Zm9vKHg6MSlgIGFuZCBiZWNhdXNlIHN0YXRpYyBrZXl3b3JkcyBhcmUgYXV0by1kZW1vdGVk
IHRvIHBvc2l0aW9uYWwgaW4gYGRlZiBmb28oYSk7ZW5kO2Zvbyh4OjEpYH19DQoNCkFueSBmb3Jt
IG9mIGRlbGVnYXRpb24gd29ya3Mgd2l0aCBubyBjaGFuZ2UgcmVxdWlyZWQuIFRoaXMgcHJlc2Vy
dmVzIHRoZSBiZWhhdmlvciBvZiAyLjYgYnV0IG9ubHkgZm9yIEt3SGFzaCBvYmplY3RzLiBUaGlz
IGlzIHNpbWlsYXIgdG8gaGF2aW5nIDIuNyB3aXRoIGBydWJ5Ml9rZXl3b3Jkc2AgZW5hYmxlZCBi
eSBkZWZhdWx0LiBCdXQgYWxzbyBkaWZmZXJlbnQgaW4gc29tZSB3YXlzOyBtb3N0IG5vdGFibHkg
aXQgYWxsb3dzIHRoZSBjYXNlIHNob3duIGluICMxNjQ5NCB0byB3b3JrIGJ5IGRlZmF1bHQ6DQoN
CmBgYHJ1YnkNCmFycmF5ID0gW3g6MV0NCmFycmF5LnB1c2goeDoyKQ0KYXJyYXkubWFweyB8eDp8
IHggfSAjPT4gWzEsMl0NClt7eDozfV0ubWFweyB8eDp8IHggfSAjPT4gYnV0IHRoaXMgd2FybnMs
IGFzIGl0IHNob3VsZA0KYGBgDQoNClRoZSBjdXJyZW50IGFwcHJvYWNoIGRvZXMgbm90IGFsbG93
IHRoaXMgdG8gd29yayBhdCBhbGwuIFRoZSBzb2x1dGlvbiBwcm9wb3NlZCBpbiAjMTY0OTQgaGFz
IGFsbCB0aGUgc2FtZSBmbGF3cyBhcyBIYXNoLWJhc2VkIGtleXdvcmQgYXJndW1lbnRzOyB3aGF0
IGhhcHBlbnMgdG8gYGVhY2h7IHx4PW5pbCwqKmt3fCB9YCA/IFRoaXMgc29sdXRpb24gYWxsb3dz
IGEgS3dIYXNoIHRvIGJlIGNvbnZlcnRlZCB0by4uLiBrZXl3b3Jkcy4gVmVyeSB1bnN1cnByaXNp
bmcuDQoNCkdpdmVuIHRoYXQgcnVieSBpcyBhIGR5bmFtaWNhbGx5LXR5cGVkIGxhbmd1YWdlIEkg
ZmVlbCB0aGF0IGR5bmFtaWMgdHlwaW5nIG9mIGtleXdvcmRzIGlmIGEgbW9yZSBuYXR1cmFsIGZp
dCB0aGFuIHN0YXRpYyB0eXBpbmcuIEJ1dCBJIHJlYWxpemUgdGhhdCBtYW55IGRpc2FncmVlIHdp
dGggdGhhdCwgd2hpY2ggaXMgd2h5IHdlIGNvbnRpbnVlIHRvLi4uDQoNCiMjIyBTdGVwIDQNCg0K
SW50cm9kdWNlIGFkZGl0aW9uYWwgaW5jb21wYXRpYmlsaXR5IHRvIHJlYWNoIHN0YXRpYy9sZXhp
Y2FsIHNlcGFyYXRpb24gb2Yga2V5d29yZCBhcmd1bWVudHMuIEhlcmUgd2UgcmVxdWlyZSB0aGF0
IGV2ZW4gYSBLd0hhc2ggc2hvdWxkIGJlIHBhc3NlZCB3aXRoIGEgZG91YmxlLXNwbGF0IGluIG9y
ZGVyIHRvIHF1YWxpZnkgYXMgYSBrZXl3b3JkIGFyZ3VtZW50Lg0KDQpgYGBydWJ5DQpkZWYgYmFy
KCoqa3cpDQplbmQNCmRlZiBmb28oKiprdykNCiAgYmFyKGt3KSAgICM9PiBlcnJvcjsgS3dIYXNo
IHBhc3NlZCB3aXRob3V0ICoqDQogIGJhcigqKmt3KSAjPT4gb2sNCmVuZA0KYGBgDQoNCkF0IHRo
aXMgcG9pbnQgd2UndmUgcmVhY2hlZCB0aGUgc2FtZSBiZWhhdmlvciBhcyAyLjcuIERlbGVnYXRp
b24gbmVlZHMgdG8gYmUgZml4ZWQsIGJ1dCBhcyB3ZSBrbm93IHRoZSBjaGFuZ2VzIHJlcXVpcmVk
IHRvIHNpbGVuY2UgdGhlc2Ugd2FybmluZ3MgYXJlICoqbm90KiogY29tcGF0aWJsZSB3aXRoIDIu
NiBvciAyLjcuIFRoZSB3YXJuaW5ncyBmb3IgdGhpcyBhcmUgX2Z1bmRhbWVudGFsbHkgbm90IGZp
eGFibGVfIGFzIGxvbmcgYXMgU3RlcCAyIGhhcyBub3QgYmVlbiBmaXhlZC4gVGhpcyBpcyB0aGUg
Y29yZSByZWFzb24gd2h5IGBydWJ5Ml9rZXl3b3Jkc2AgaXMgY3VycmVudGx5IG5lY2Vzc2FyeSBp
biAyLjcuIFNvIGluIHRoZSB2ZXJzaW9uIGFmdGVyIDIuNyB3ZSBjYW4gZW5hYmxlIHRoZXNlIHdh
cm5pbmdzIGJ5IGRlZmF1bHQgc2luY2UgaXQncyBub3cgcG9zc2libGUgdG8gZml4IGRlbGVnYXRp
b24gdG8gdXNlIHN0YXRpYyBrZXl3b3Jkcy4gRXhjZXB0IHRoYXQgZ2VtIGF1dGhvcnMgd2hvIG5l
ZWQgdG8gc3RheSBjb21wYXRpYmxlIHdpdGgg4omkMi43IGNhbm5vdCB5ZXQgbWFrZSB0aGVzZSBj
aGFuZ2VzLCBzbyB3ZSBpbnRyb2R1Y2UgYSB3YXkgdG8gX3NpbGVuY2UgKipvbmx5KiogdGhlc2Ug
IlN0ZXAgNCIgd2FybmluZ3NfLCBmb3IgcGVvcGxlIHdobyBuZWVkIHRvIHJlbWFpbiBjb21wYXRp
YmxlIHdpdGgg4omkMi43LiBBbmQgd2Uga2VlcCB0aGVtIGFzIHdhcm5pbmdzIGluc3RlYWQgb2Yg
ZXJyb3JzIHVudGlsIHJ1YnkgMi43IGlzIEVPTC4NCg0KU28gaW5zdGVhZCBvZiBoYXZpbmcgdG8g
dXBkYXRlIGEgYnVuY2ggb2YgcGxhY2VzIHdpdGggYHJ1YnkyX2tleXdvcmRzYCBqdXN0IHRvIHRl
bXBvcmFyaWx5IHNpbGVuY2Ugd2FybmluZ3MsIGl0J3MgYSBzaW5nbGUgZmxhZyBsaWtlIGBXYXJu
aW5nWzpydWJ5M19rZXl3b3Jkc11gLiBPbmNlIHJ1YnkgMi43IGlzIEVPTCB0aGVzZSBiZWNvbWUg
Y29udHJvbGxlZCBieSBgV2FybmluZ1s6ZGVwcmVjYXRlZF1gIHdoaWNoIHRlbGxzIHBlb3BsZSB0
aGV5ICoqaGF2ZSoqIHRvIGZpeCB0aGVpciBjb2RlLiBXaGljaCBpcyBqdXN0IGxpa2UgdGhlIGV2
ZW50dWFsIGRlcHJlY2F0aW9uIG9mIGBydWJ5Ml9rZXl3b3Jkc2AsIGp1c3Qgd2l0aG91dCB0aGUg
YnVzeSB3b3JrIG9mIGFkZGluZyBgcnVieTJfa2V5d29yZHNgIHN0YXRlbWVudHMgaW4gdGhlIGZp
cnN0IHBsYWNlLiBCdXQgYWdhaW4sIHRoaXMgaW50cm9kdWNlcyBubyBuZXcgZnVuY3Rpb25hbGl0
eSwganVzdCBhIHN0cmljdGVyIHN5bnRheC4gU28gd2UgY2FuIHBsYXkgbmljZSBhbmQgbGVhdmUg
dGhlIHdhcm5pbmdzIGZvciBhIGZldyB5ZWFycyBiZWZvcmUgY2hhbmdpbmcgdG8gZXJyb3JzLg0K
DQpUaGUgcXVlc3Rpb24gcmVtYWlucyBvZiBob3cgdG8gaGFuZGxlICMxNjQ5NCBoZXJlLiBFaXRo
ZXIgZGlzYWxsb3cgaXQgZW50aXJlbHksIGJ1dCBJIHRoaW5rIHRoYXQgd291bGQgYmUgYSBzaGFt
ZS4gT3IganVzdCBsaWtlICMxNjQ5NCBzdWdnZXN0cywgYWxsb3cgaGFzaCB1bnBhY2tpbmcgaW4g
bm9uLWxhbWJkYSBQcm9jLiBFeGNlcHQgdGhhdCBub3cgaXQgY2FuIGJlIGEgS3dIYXNoIGluc3Rl
YWQgb2YgYSBIYXNoLCB3aGljaCBhdCBsZWFzdCBwcmVzZXJ2ZXMgZHluYW1pYyBrZXl3b3JkIHNl
cGFyYXRpb24uDQoNCiMjIFB1dHRpbmcgaXQgYWxsIHRvZ2V0aGVyIChUTDtEUikNCg0KVGhlIGlk
ZWEgaXMgX25vdF8gdG8gcmVpbXBsZW1lbnQga2V5d29yZCBhcmd1bWVudCBzZXBhcmF0aW9uOyBh
bGwgdGhhdCBpcyBuZWVkZWQgaXMgdG8gaW1wbGVtZW50IHRoZSB0aGluZ3MgYWJvdmUgdGhhdCBh
cmUgbm90IGluIDIuNzoNCiogQ3JlYXRlIGEgS3dIYXNoIG9iamVjdCBmb3IgYnJhY2UtbGVzcyBh
bmQgZG91YmxlLXNwbGF0dGVkIGhhc2hlcy4NCiogRGlmZmVyZW50aWF0ZSB0aGUgdmFyaW91cyB0
eXBlcyBvZiB3YXJuaW5ncyBhbmQgYWxsb3cgdG8gdG9nZ2xlIG9uL29mZiBzZXBhcmF0ZWx5DQog
ICogU3RlcCAyIHdhcm5pbmdzIF9tdXN0XyBiZSBmaXhlZCBub3c7IGNhbm5vdCB0b2dnbGUgb2Zm
DQogICogU3RlcCAzIHdhcm5pbmdzIF9zaG91bGRfIGJlIGZpeGVkIG5vdyBidXQgeW91IGRvbid0
IGFic29sdXRlbHkgbmVlZCB0byB1cGdyYWRlIHlvdXIgZ2VtcyBqdXN0IGZvciB0aGF0DQogICog
U3RlcCA0IHdhcm5pbmdzIF9zaG91bGRfIGJlIGZpeGVkIGluIG5leHQgdmVyc2lvbiB1bmxlc3Mg
eW91IG5lZWQgdG8gc3VwcG9ydCDiiaQyLjcNCg0KSSB0aGluayB0aGF0J3MgYWxsLCByZWFsbHku
Li4NCg0KIyMjIFByb3MNCiogQ2xlYW5lciB3YXkgdG8gc29sdmUgIzE2NDk0DQoqIEJldHRlciBj
b21wYXRpYmlsaXR5IChhdCBsZWFzdCB1bnRpbCAyLjYgaXMgRU9MKQ0KICAgKiBkZWxlZ2F0aW9u
DQogICAqIHN0b3JpbmcgYW4gYXJndW1lbnQgbGlzdCB0aGF0IGVuZHMgd2l0aCBhIEt3SGFzaA0K
ICAgKiBkZXN0cnVjdHVyaW5nIGl0ZXJhdGlvbiAoIzE2NDk0KQ0KKiBXZSBjYW4gYXZvaWQgdGhl
ICJ1bmZvcnR1bmF0ZSBjb3JuZXIgY2FzZSIgYXMgZGVzY3JpYmVkIGluIHRoZSBbcmVsZWFzZSBu
b3Rlc10oaHR0cHM6Ly93d3cucnVieS1sYW5nLm9yZy9lbi9uZXdzLzIwMTkvMTIvMTIvc2VwYXJh
dGlvbi1vZi1wb3NpdGlvbmFsLWFuZC1rZXl3b3JkLWFyZ3VtZW50cy1pbi1ydWJ5LTMtMC8pDQog
ICAqIGluIDIuNyBvbmx5IGRvIG5vdCBvdXRwdXQgIlN0ZXAgNCIgd2FybmluZ3MsIGxlYXZlIGRl
bGVnYXRpb24gbGlrZSBpdCB3YXMNCiAgICogaW4gMi44IHRoZSAiU3RlcCAzIiB3YXJuaW5ncyBo
YXZlIGJlZW4gZml4ZWQgYW5kIGEgSGFzaCB3aWxsIG5vdCBiZSBjb252ZXJ0ZWQgdG8ga2V5d29y
ZCBhcmd1bWVudHMNCiAgICogZGVsZWdhdGlvbiBjYW4gbm93IHNhZmVseSBiZSBmaXhlZCB0byB1
c2UgdGhlIGAqKmAgc3ludGF4DQoqIHJ1YnkyX2tleXdvcmRzIGlzIG5vdCByZXF1aXJlZCwgd2hp
Y2ggaXMgZGVzaXJhYmxlIGJlY2F1c2UNCiAgICogaXQncyBhIGhpZGRlbiBmbGFnIF9oYWNrXw0K
ICAgKiBpdCByZXF1aXJlcyB0byBjaGFuZ2UgdGhlIGNvZGUgbm93LCBhbmQgY2hhbmdlIGl0IF9h
Z2Fpbl8gd2hlbiBydWJ5Ml9rZXl3b3JkcyBpcyBkZXByZWNhdGVkOyB0d2ljZSB0aGUgd29yazsg
dHdpY2UgdGhlIGdlbSB1cGdyYWRlcw0KICAgKiBpdCB3YXMgc3VwcG9zZWQgdG8gYmUgdXNlZCBv
bmx5IGZvciBwZW9wbGUgd2hvIG5lZWQgdG8gc3VwcG9ydCAyLjYgb3IgYmVsb3csIGJ1dCBpdCdz
IGJlaW5nIG1pc3VuZGVyc3Rvb2QgYXMgYW4gYWNjZXB0YWJsZSB3YXkgdG8gZml4IGRlbGVnYXRp
b24gaW4gZ2VuZXJhbA0KICAgKiB0aGVyZSdzIHRoZSBub24temVybyByaXNrIHRoYXQgcnVieTJf
a2V5d29yZHMgd2lsbCBuZXZlciBiZSByZW1vdmVkLCBsZWF2aW5nIHVzIHdpdGggYSBwZXJtYW5l
bnQgImhhY2sgbW9kZSINCiAgICAgICogZHluYW1pYyBrZXl3b3JkcyBhcmUgYnkgZmFyIHByZWZl
cmFibGUgdG8gc3VwcG9ydGluZyBydWJ5Ml9rZXl3b3JkcyBmb3JldmVyDQoqIExpa2VseSBfYmV0
dGVyIHBlcmZvcm1hbmNlXywgYXMgdGhlIEt3SGFzaCBjbGFzcyBjYW4gYmUgb3B0aW1pemVkIHNw
ZWNpZmljYWxseSBmb3IgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiBrZXl3b3JkIGFyZ3VtZW50cy4N
CiogTW9yZSBmbGV4aWJsZSBtaWdyYXRpb24NCiAgICogQWxsb3cgbW9yZSB0aW1lIHRvIHVwZ3Jh
ZGUgdGhlIGhhcmQgc3R1ZmYgaW4gU3RlcCA0DQogICAqIENhbiByZWFjaCB0aGUgX3NhbWVfIGdv
YWwgYXMgdGhlIGN1cnJlbnQgc3RhdGljIGFwcHJvYWNoDQogICAqIExhcmdlciAic3VwcG9ydCB6
b25lIiBodHRwczovL3hrY2QuY29tLzIyMjQvDQogICAqIEluc3RlYWQgb2Ygd2lkZS1yYW5naW5n
IGluY29tcGF0aWJpbGl0aWVzIGFsbCBhdCBvbmNlLCB0aGVyZSdzIHRoZSBfcG9zc2liaWxpdHlf
IG9mIG1ha2luZyBpdCBmaW5lci1ncmFpbmVkIGFuZCBtb3JlIGdyYWR1YWwNCiAgICAgICogcnVi
eWlzdHMgY2FuIF9jaG9vc2VfIHRvIG1pZ3JhdGUgYWxsIGF0IG9uY2Ugb3IgaW4gc21hbGxlciBj
aHVua3MNCiAgICogSXQgaGVkZ2VzIHRoZSByaXNrcyBieSBrZWVwaW5nIG1vcmUgcG9zc2liaWxp
dGllcyBvcGVuIGZvciBub3cuDQogICAqIEl0IGFsbG93cyB0byBjb3Atb3V0IGF0IFN0ZXAgMyBp
ZiBTdGVwIDQgdHVybnMgb3V0IHRvbyBoYXJkIGJlY2F1c2UgaXQgYnJlYWtzIHRvbyBtdWNoIHN0
dWZmDQoNCiMjIyBDb25zDQoqIEl0IGFsbG93cyB0byBjb3Atb3V0IGF0IFN0ZXAgMyBpZiBTdGVw
IDQgdHVybnMgb3V0IHRvbyBoYXJkIGJlY2F1c2UgaXQgYnJlYWtzIHRvbyBtdWNoIHN0dWZmDQoN
Cg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvDQoKVW5zdWJzY3JpYmU6IDxt
YWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJl
Pgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVi
eS1jb3JlPgo=

In This Thread

Prev Next