[ruby-core:115147] [Ruby master Feature#19744] Namespace on read
From:
"fxn (Xavier Noria) via ruby-core" <ruby-core@...>
Date:
2023-10-24 13:12:25 UTC
List:
ruby-core #115147
SXNzdWUgIzE5NzQ0IGhhcyBiZWVuIHVwZGF0ZWQgYnkgZnhuIChYYXZpZXIgTm9yaWEpLg0NCg0N Cg0NCkB0YWdvbW9yaXMgUmVnYXJkaW5nIHRoZSBgQmFzaWNPYmplY3RgIGV4YW1wbGUsIHllcywg UnVieSBhbGxvd3MgeW91IHRvIHJlLWFzc2lnbiB0byBidWlsdGluIGNvbnN0YW50cywgYnV0IGl0 IGlzIGEgZGlmZmVyZW50IGxldmVsIG9mIGxhY2sgb2YgZ3VhcmFudGVlIGluIHByYWN0aWNlLCB0 aGUgd2F5IEkgc2VlIGl0LiBQZXJoYXBzIHRoZXJlIGFyZSBfbGV2ZWxzXyBvZiBkZXRlcm1pbmlz bT8g8J+YhQ0NCg0NCk5vd2FkYXlzLCB1bmRlciBub3JtYWwgY2lyY3Vtc3RhbmNlcyB5b3UgZXhw ZWN0DQ0KDQ0KYGBgcnVieQ0NCmNsYXNzIFN0cmluZw0NCiAgYWxpYXMgYmxhbms/IGVtcHR5Pw0N CmVuZA0NCmBgYA0NCg0NCnRvIHJlb3BlbiB0aGUgY2xhc3Mgb2JqZWN0IHN0b3JlZCBvcmlnaW5h bGx5IGluIGBTdHJpbmdgLiBJZiB0aGF0IGRlcGVuZHMgb24gaG93IHlvdSBhcmUgbG9hZGVkLCB5 b3VyIHdvbid0IHdvcmsgYXMgeW91IHByb2dyYW1tZWQgaXQuDQ0KDQ0KLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0NCkZlYXR1cmUgIzE5NzQ0OiBOYW1lc3BhY2Ugb24g cmVhZA0NCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xOTc0NCNjaGFuZ2UtMTA1 MDUzDQ0KDQ0KKiBBdXRob3I6IHRhZ29tb3JpcyAoU2F0b3NoaSBUYWdvbW9yaSkNDQoqIFN0YXR1 czogT3Blbg0NCiogUHJpb3JpdHk6IE5vcm1hbA0NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NDQojIFdoYXQgaXMgdGhlICJOYW1lc3BhY2Ugb24gcmVhZCINDQoNDQpU aGlzIHByb3Bvc2VzIGEgbmV3IGZlYXR1cmUgdG8gZGVmaW5lIHZpcnR1YWwgdG9wLWxldmVsIG5h bWVzcGFjZXMgaW4gUnVieS4gVGhvc2UgbmFtZXNwYWNlcyBjYW4gcmVxdWlyZS9sb2FkIGxpYnJh cmllcyAoZWl0aGVyIC5yYiBvciBuYXRpdmUgZXh0ZW5zaW9uKSBzZXBhcmF0ZWx5IGZyb20gdGhl IGdsb2JhbCBuYW1lc3BhY2UuIERlcGVuZGVuY2llcyBvZiByZXF1aXJlZC9sb2FkZWQgbGlicmFy aWVzIGFyZSBhbHNvIHJlcXVpcmVkL2xvYWRlZCBpbiB0aGUgbmFtZXNwYWNlLg0NCg0NCiMjIyBN b3RpdmF0aW9uDQ0KDQ0KVGhlICJuYW1lc3BhY2Ugb24gcmVhZCIgY2FuIHNvbHZlIHRoZSAyIHBy b2JsZW1zIGJlbG93LCBhbmQgY2FuIG1ha2UgYSBwYXRoIHRvIHNvbHZlIGFub3RoZXIgcHJvYmxl bToNDQpUaGUgZGV0YWlscyBvZiB0aG9zZSBtb3RpdmF0aW9ucyBhcmUgZGVzY3JpYmVkIGluIHRo ZSBiZWxvdyBzZWN0aW9uICgiTW90aXZhdGlvbiBkZXRhaWxzIikuDQ0KDQ0KIyMjIyBBdm9pZGlu ZyBuYW1lIGNvbmZsaWN0cyBiZXR3ZWVuIGxpYnJhcmllcw0NCg0NCkFwcGxpY2F0aW9ucyBjYW4g cmVxdWlyZSB0d28gZGlmZmVyZW50IGxpYnJhcmllcyBzYWZlbHkgd2hpY2ggdXNlIHRoZSBzYW1l IG1vZHVsZSBuYW1lLg0NCg0NCiMjIyMgQXZvaWRpbmcgdW5leHBlY3RlZCBnbG9iYWxseSBzaGFy ZWQgbW9kdWxlcy9vYmplY3RzDQ0KDQ0KQXBwbGljYXRpb25zIGNhbiBtYWtlIGFuIGluZGVwZW5k ZW50L3Vuc2hhcmVkIG1vZHVsZSBpbnN0YW5jZS4NDQoNDQojIyMjIChJbiB0aGUgZnV0dXJlKSBN dWx0aXBsZSB2ZXJzaW9ucyBvZiBnZW1zIGNhbiBiZSByZXF1aXJlZA0NCg0NCkFwcGxpY2F0aW9u IGRldmVsb3BlcnMgd2lsbCBoYXZlIGZld2VyIHZlcnNpb24gY29uZmxpY3RzIGJldHdlZW4gZ2Vt IGRlcGVuZGVuY2llcyBpZiBydWJ5Z2Vtcy9idW5kbGVyIHdpbGwgc3VwcG9ydCB0aGUgbmFtZXNw YWNlIG9uIHJlYWQuDQ0KDQ0KIyMjIEV4YW1wbGUgY29kZSB3aXRoIHRoaXMgZmVhdHVyZQ0NCg0N CmBgYHJ1YnkNDQojIHlvdXJfbW9kdWxlLnJiDQ0KbW9kdWxlIFlvdXJNb2R1bGUNDQplbmQNDQoN DQojIG15X21vZHVsZS5yYg0NCnJlcXVpcmUgJ3lvdXJfbW9kdWxlJw0NCg0NCm1vZHVsZSBNeU1v ZHVsZQ0NCmVuZA0NCg0NCiMgZXhhbXBsZS5yYg0NCm5hbWVzcGFjZTEgPSBOYW1lU3BhY2UubmV3 DQ0KbmFtZXNwYWNlMS5yZXF1aXJlKCdteV9tb2R1bGUnKSAjPT4gdHJ1ZQ0NCg0NCm5hbWVzcGFj ZTE6Ok15TW9kdWxlICM9PiAjPE1vZHVsZToweDAwMDAwMDAxMDI3ZWE2NTA+OjpNeU1vZHVsZSAo b3IgIzxOYW1lU3BhY2U6MHgwMC4uLj46Ok15TW9kdWxlID8pDQ0KbmFtZXNwYWNlMTo6WW91ck1v ZHVsZSAjIHNpbWlsYXIgdG8gdGhlIGFib3ZlDQ0KDQ0KTXlNb2R1bGUgIyBOYW1lRXJyb3INDQpZ b3VyTW9kdWxlICMgTmFtZUVycm9yDQ0KDQ0KbmFtZXNwYWNlMiA9IE5hbWVTcGFjZS5uZXcgICAg ICAjIEFueSBudW1iZXIgb2YgbmFtZXNwYWNlcyBjYW4gYmUgZGVmaW5lZA0NCm5hbWVzcGFjZTIu cmVxdWlyZSgnbXlfbW9kdWxlJykgIyBEaWZmZXJlbnQgbGlicmFyeSAiaW5zdGFuY2UiIGZyb20g bmFtZXNwYWNlMQ0NCg0NCnJlcXVpcmUgJ215X21vZHVsZScgIyByZXF1aXJlIGluIHRoZSBnbG9i YWwgbmFtZXNwYWNlDQ0KDQ0KTXlNb2R1bGUub2JqZWN0X2lkICE9IG5hbWVzcGFjZTE6Ok15TW9k dWxlLm9iamVjdF9pZCAjPT4gdHJ1ZQ0NCm5hbWVzcGFjZTE6Ok15TW9kdWxlLm9iamVjdF9pZCAh PSBuYW1lc3BhY2UyOjpNeU1vZHVsZS5vYmplY3RfaWQNDQpgYGANDQoNDQpUaGUgcmVxdWlyZWQv bG9hZGVkIGxpYnJhcmllcyB3aWxsIGRlZmluZSBkaWZmZXJlbnQgImluc3RhbmNlcyIgb2YgbW9k dWxlcy9jbGFzc2VzIGluIHRob3NlIG5hbWVzcGFjZXMgKGp1c3QgbGlrZSB0aGUgIndyYXBwZXIi IDJuZCBhcmd1bWVudCBvZiBgS2VybmVsLmxvYWRgKS4gVGhpcyBkb2Vzbid0IGludHJvZHVjZSBj b21wYXRpYmlsaXR5IHByb2JsZW1zIGlmIGFsbCBsaWJyYXJpZXMgdXNlIHJlbGF0aXZlIG5hbWUg cmVzb2x1dGlvbiAod2l0aG91dCBmb3JjZWQgdG9wLWxldmVsIHJlZmVyZW5jZSBsaWtlIGA6Ok5h bWVgKS4NDQoNDQojICJPbiByZWFkIjogb3B0aW9uYWwsIHVzZXItZHJpdmVuIGZlYXR1cmUNDQoN DQoiT24gcmVhZCIgaXMgYSBrZXkgdGhpbmcgb2YgdGhpcyBmZWF0dXJlLiBUaGF0IG1lYW5zOg0N Cg0NCiogTm8gY2hhbmdlcyBhcmUgcmVxdWlyZWQgaW4gZXhpc3RpbmcvbmV3IGxpYnJhcmllcyAo ZXhjZXB0IGZvciBsaW1pdGVkIGNhc2VzLCBkZXNjcmliZWQgYmVsb3cpDQ0KKiBObyBjaGFuZ2Vz IGFyZSByZXF1aXJlZCBpbiBhcHBsaWNhdGlvbnMgaWYgaXQgZG9lc24ndCBuZWVkIG5hbWVzcGFj ZXMNDQoqIFVzZXJzIGNhbiBlbmFibGUvdXNlIG5hbWVzcGFjZXMganVzdCBmb3IgbGltaXRlZCBj b2RlIGluIHRoZSB3aG9sZSBsaWJyYXJ5L2FwcGxpY2F0aW9uDQ0KDQ0KVXNlcnMgY2FuIHN0YXJ0 IHVzaW5nIHRoaXMgZmVhdHVyZSBzdGVwIGJ5IHN0ZXAgKGlmIHRoZXkgd2FudCBpdCkgd2l0aG91 dCBhbnkgYmlnIGp1bXBzLg0NCg0NCiMjIE1vdGl2YXRpb24gZGV0YWlscw0NCg0NClRoaXMgZmVh dHVyZSBjYW4gc29sdmUgbXVsdGlwbGUgcHJvYmxlbXMgSSBoYXZlIGluIHdyaXRpbmcvZXhlY3V0 aW5nIFJ1YnkgY29kZS4gVGhvc2UgYXJlIGZyb20gdGhlIDMgcHJvYmxlbXMgSSBtZW50aW9uZWQg YWJvdmU6IG5hbWUgY29uZmxpY3RzLCBnbG9iYWxseSBzaGFyZWQgbW9kdWxlcywgYW5kIGxpYnJh cnkgdmVyc2lvbiBjb25mbGljdHMgYmV0d2VlbiBkZXBlbmRlbmNpZXMuIEknbGwgZGVzY3JpYmUg NCBzY2VuYXJpb3MgYWJvdXQgdGhvc2UgcHJvYmxlbXMuDQ0KDQ0KIyMjIFJ1bm5pbmcgbXVsdGlw bGUgYXBwbGljYXRpb25zIG9uIGEgUnVieSBwcm9jZXNzDQ0KDQ0KTW9kZXJuIGNvbXB1dGVycyBo YXZlIG1hbnkgQ1BVIGNvcmVzIGFuZCBsYXJnZSBtZW1vcnkgc3BhY2VzLiBXZSBzb21ldGltZXMg d2FudCB0byBoYXZlIG1hbnkgc2VwYXJhdGUgYXBwbGljYXRpb25zIChlaXRoZXIgbWljcm8tc2Vy dmljZSBhcmNoaXRlY3R1cmUgb3IgbW9kdWxhciBtb25vbGl0aCkuIEN1cnJlbnRseSwgcnVubmlu ZyB0aG9zZSBhcHBsaWNhdGlvbnMgcmVxdWlyZSBkaWZmZXJlbnQgcHJvY2Vzc2VzLiBJdCByZXF1 aXJlcyBhZGRpdGlvbmFsIGNvbXB1dGF0aW9uIGNvc3RzIChlc3BlY2lhbGx5IGluIGRldmVsb3Bp bmcgdGhvc2UgYXBwbGljYXRpb25zKS4NDQoNDQpJZiB3ZSBoYXZlIGlzb2xhdGVkIG5hbWVzcGFj ZXMgYW5kIGNhbiBsb2FkIGFwcGxpY2F0aW9ucyBpbiB0aG9zZSBuYW1lc3BhY2VzLCB3ZSdsbCBi ZSBhYmxlIHRvIHJ1biBhcHBzIG9uIGEgcHJvY2Vzcywgd2l0aCBsZXNzIG92ZXJoZWFkLg0NCg0N CihJIHdhbnQgdG8gcnVuIG1hbnkgQVdTIExhbWJkYSBhcHBsaWNhdGlvbnMgb24gYSBwcm9jZXNz IGluIGlzb2xhdGVkIG5hbWVzcGFjZXMuKQ0NCg0NCiMjIyBSdW5uaW5nIHRlc3RzIGluIGlzb2xh dGVkIG5hbWVzcGFjZXMNDQoNDQpUZXN0cyB0aGF0IHJlcXVpcmUgZXh0ZXJuYWwgbGlicmFyaWVz IG5lZWQgbWFueSBoYWNrcyB0bzoNDQoNDQoqIHJlcXVpcmUgYSBsaWJyYXJ5IG11bHRpcGxlIHRp bWVzDQ0KKiByZXF1aXJlIG1hbnkgZGlmZmVyZW50IDNyZCBwYXJ0eSBsaWJyYXJpZXMgaW50byBp c29sYXRlZCBzcGFjZXMgKHRob3NlIG1heSBjb25mbGljdCB3aXRoIGVhY2ggb3RoZXIpDQ0KDQ0K U29mdHdhcmUgd2l0aCBwbHVnaW4gc3lzdGVtcyAoZm9yIGV4YW1wbGUsIEZsdWVudGQpIHdpbGwg Z2V0IGJlbmVmaXQgZnJvbSBuYW1lc3BhY2VzLg0NCg0NCkluIGFkZGl0aW9uIHRvIGl0LCBhcHBs aWNhdGlvbiB0ZXN0cyBjYW4gYXZvaWQgdW5leHBlY3RlZCBzaWRlIGVmZmVjdHMgaWYgdGVzdHMg YXJlIGV4ZWN1dGVkIGluIGlzb2xhdGVkIG5hbWVzcGFjZXMuDQ0KDQ0KIyMjIFNhZmVseSBpc29s YXRlZCBsaWJyYXJ5IGluc3RhbmNlcw0NCg0NCkxpYnJhcmllcyBtYXkgaGF2ZSBnbG9iYWxseSBz aGFyZWQgc3RhdGVzLiBGb3IgZXhhbXBsZSwgW09qXShodHRwczovL2dpdGh1Yi5jb20vb2hsZXI1 NS9vaikgaGFzIGEgZ2xvYmFsIGBPYmouZGVmYXVsdF9vcHRpb25zYCBvYmplY3QgdG8gY2hhbmdl IHRoZSBsaWJyYXJ5IGJlaGF2aW9yLiBUaG9zZSBvcHRpb25zIG1heSBiZSBjaGFuZ2VkIGJ5IGFu eSBkZXBlbmRlbmN5IGxpYnJhcmllcyBvciBhcHBsaWNhdGlvbnMsIGFuZCBpdCBjaGFuZ2VzIHRo ZSBiZWhhdmlvciBvZiBgT2pgIGdsb2JhbGx5LCB1bmV4cGVjdGVkbHkuDQ0KDQ0KRm9yIHN1Y2gg bGlicmFyaWVzLCB3ZSdsbCBiZSBhYmxlIHRvIGluc3RhbnRpYXRlIGEgc2FmZSBsaWJyYXJ5IGlu c3RhbmNlIGluIGFuIGlzb2xhdGVkIG5hbWVzcGFjZS4NDQoNDQojIyMgQXZvaWRpbmcgZGVwZW5k ZW5jeSBoZWxscw0NCg0NCk1vZGVybiBhcHBsaWNhdGlvbnMgdXNlIG1hbnkgbGlicmFyaWVzLCBh bmQgdGhvc2UgbGlicmFyaWVzIHJlcXVpcmUgbXVjaCBtb3JlIGRlcGVuZGVuY2llcy4gVGhvc2Ug ZGVwZW5kZW5jaWVzIHdpbGwgY2F1c2UgdmVyc2lvbiBjb25mbGljdHMgdmVyeSBvZnRlbi4gSW4g c3VjaCBjYXNlcywgYXBwbGljYXRpb24gZGV2ZWxvcGVycyBzaG91bGQgcmVzb2x2ZSB0aG9zZSBi eSB1cGRhdGluZyBlYWNoIGxpYnJhcmllcywgb3Igc2hvdWxkIGp1c3Qgd2FpdCBmb3IgdGhlIG5l dyByZWxlYXNlIG9mIGxpYnJhcmllcyB0byBjb25mbGljdCB0aG9zZSBsaWJyYXJpZXMuIFNvbWV0 aW1lcywgbGlicmFyeSBtYWludGFpbmVycyBkb24ndCByZWxlYXNlIHVwZGF0ZWQgdmVyc2lvbnMs IGFuZCBhcHBsaWNhdGlvbiBkZXZlbG9wZXJzIGNhbiBkbyBub3RoaW5nLg0NCg0NCklmIG5hbWVz cGFjZXMgY2FuIHJlcXVpcmUvbG9hZCBhIGxpYnJhcnkgbXVsdGlwbGUgdGltZXMsIGl0IGFsc28g ZW5hYmxlcyB0byByZXF1aXJlL2xvYWQgZGlmZmVyZW50IHZlcnNpb25zIG9mIGEgbGlicmFyeSBp biBhIHByb2Nlc3MuIEl0IHJlcXVpcmVzIHRoZSBzdXBwb3J0IG9mIHJ1YnlnZW1zLCBidXQgbmFt ZXNwYWNlcyBzaG91bGQgYmUgYSBnb29kIGZ1bmRhbWVudGFsIG9mIGl0Lg0NCg0NCiMjIEV4cGVj dGVkIHByb2JsZW1zDQ0KDQ0KIyMjIFVzZSBvZiB0b3AtbGV2ZWwgcmVmZXJlbmNlcw0NCg0NCklu IG15IGV4cGVjdGF0aW9uLCBgOjpOYW1lYCBzaG91bGQgcmVmZXIgdGhlIHRvcC1sZXZlbCBgTmFt ZWAgaW4gdGhlIGdsb2JhbCBuYW1lc3BhY2UuIEkgZXhwZWN0IHRoYXQgYDo6RU5WYCBzaG91bGQg Y29udGFpbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLiBCdXQgaXQgbWF5IGNhdXNlIGNvbXBh dGliaWxpdHkgcHJvYmxlbXMgaWYgbGlicmFyeSBjb2RlIHVzZXMgYDo6TXlMaWJyYXJ5YCB0byBy ZWZlciB0aGVtc2VsdmVzIGluIHRoZWlyIGRlZXBseSBuZXN0ZWQgbGlicmFyeSBjb2RlLg0NCg0N CiMjIyBBZGRpdGlvbmFsIG1lbW9yeSBjb25zdW1wdGlvbg0NCg0NCkFuIGV4dGVuc2lvbiBsaWJy YXJ5IChkeW5hbWljYWxseSBsaW5rZWQgbGlicmFyeSkgbWF5IGJlIGxvYWRlZCBtdWx0aXBsZSB0 aW1lcyAoYnkgYGRsb3BlbmAgZm9yIHRlbXBvcmFyaWx5IGNvcGllZCBkbGwgZmlsZXMpIHRvIGxv YWQgaXNvbGF0ZWQgbGlicmFyeSAiaW5zdGFuY2VzIiBpZiBkaWZmZXJlbnQgbmFtZXNwYWNlcyBy ZXF1aXJlIHRoZSBzYW1lIGV4dGVuc2lvbiBsaWJyYXJ5LiBUaGF0IGNvbnN1bWVzIGFkZGl0aW9u YWwgbWVtb3J5Lg0NCg0NCkluIG15IG9waW5pb24sIGFkZGl0aW9uYWwgbWVtb3J5IGNvbnN1bXB0 aW9uIGlzIGEgbWluaW11bSBjb3N0IHRvIHJlYWxpemUgbG9hZGluZyBleHRlbnNpb24gbGlicmFy aWVzIG11bHRpcGxlIHRpbWVzIHdpdGhvdXQgY29tcGF0aWJpbGl0eSBpc3N1ZXMuDQ0KDQ0KVGhp cyBvY2N1cnMgb25seSB3aGVuIHByb2dyYW1tZXJzIHVzZSBuYW1lc3BhY2VzLiBBbmQgaXQncyBv bmx5IGFib3V0IGxpYnJhcmllcyB0aGF0IGFyZSB1c2VkIGluIDIgb3IgbW9yZSBuYW1lc3BhY2Vz Lg0NCg0NCiMjIyBUaGUgY2hhbmdlIG9mIGBkbG9wZW5gIGZsYWcgYWJvdXQgZXh0ZW5zaW9uIGxp YnJhcmllcw0NCg0NClRvIGxvYWQgYW4gZXh0ZW5zaW9uIGxpYnJhcnkgbXVsdGlwbGUgdGltZXMg d2l0aG91dCBjb25mbGljdGluZyBzeW1ib2xzLCBhbGwgZXh0ZW5zaW9ucyBzaG91bGQgc3RvcCBz aGFyaW5nIHN5bWJvbHMgZ2xvYmFsbHkuIExpYnJhcmllcyByZWZlcnJpbmcgc3ltYm9scyBmcm9t IG90aGVyIGV4dGVuc2lvbiBsaWJyYXJpZXMgd2lsbCBoYXZlIHRvIGNoYW5nZSBjb2RlICYgZGVw ZW5kZW5jaWVzLg0NCg0NCihBYm91dCB0aGUgdGhpbmdzIGFib3V0IGV4dGVuc2lvbiBsaWJyYXJp ZXMsIFtOYXJ1c2UgYWxzbyB3cm90ZSBhbiBlbnRyeV0oaHR0cHM6Ly9uYXJ1c2UuaGF0ZWJsby5q cC9lbnRyeS8yMDIzLzA1LzIyLzE5MzQxMSkuKQ0NCg0NCiMgTWlzYw0NCg0NClRoZSBwcm9vZi1v Zi1jb25jZXB0IGJyYW5jaCBpcyBoZXJlOiBodHRwczovL2dpdGh1Yi5jb20vdGFnb21vcmlzL3J1 YnkvcHVsbC8xDQ0KSXQncyBzdGlsbCB3b3JrLWluLXByb2dyZXNzIGJyYW5jaCwgZXNwZWNpYWxs eSBmb3IgZXh0ZW5zaW9uIGxpYnJhcmllcy4NDQoNDQoNDQoNDQoNDQotLSANDQpodHRwczovL2J1 Z3MucnVieS1sYW5nLm9yZy8NDQogX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwogcnVieS1jb3JlIG1haWxpbmcgbGlzdCAtLSBydWJ5LWNvcmVAbWwucnVieS1s YW5nLm9yZwogVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBydWJ5LWNvcmUtbGVhdmVA bWwucnVieS1sYW5nLm9yZwogcnVieS1jb3JlIGluZm8gLS0gaHR0cHM6Ly9tbC5ydWJ5LWxhbmcu b3JnL21haWxtYW4zL3Bvc3Rvcml1cy9saXN0cy9ydWJ5LWNvcmUubWwucnVieS1sYW5nLm9yZy8=