From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-4319.protonmail.ch (mail-4319.protonmail.ch [185.70.43.19]) by sourceware.org (Postfix) with ESMTPS id E0E903857805 for ; Tue, 7 Sep 2021 17:58:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E0E903857805 Date: Tue, 07 Sep 2021 17:58:46 +0000 To: Phil Eaton From: spellcard199 Cc: Per Bothner , kawa mailing list Reply-To: spellcard199 Subject: Re: Receiver class does not define or inherit an implementation of the resolved method Message-ID: <5hzGa_Y5K9Av5y0olKFg4Qb_A8LuHAwRZiCNDB2oN17IDMHkgCxAhIGYUV0ttSsfsL82Krtjbc2I1AteZ5wQWGRBTMYf-dV1PHINjmezWa4=@protonmail.com> In-Reply-To: References: MIME-Version: 1.0 X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00, BODY_8BITS, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, FREEMAIL_REPLYTO_END_DIGIT, HTML_MESSAGE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: kawa@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Kawa mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Sep 2021 17:58:53 -0000 SSBjbG9uZWQgeW91ciByZXBvLCBjZCdlZCBpbnRvIGFiY2wsIHJ1biBtdm4gaW5zdGFsbCBhbmQg dGhlbiBtYWtlLiBJCnN0aWxsIGhhZCB0byBjb3B5LXBhc3RlIHlvdXIgbWFpbi5saXNwIGluIHRo ZSByZXBsIGJ1dCBpdAp3b3JrZWQuIEFmdGVyIGNvbW1lbnRpbmcgb3V0IGVhY2ggb2YgdGhlIDIg YXBwbHkgbWV0aG9kcyBJIGNvdWxkIHNlZQp3aGF0IHByb2JsZW0geW91IGhhdmUuCgpJZiBJIHVu ZGVyc3RhbmQgY29ycmVjdGx5LCBiYXNpY2FsbHkgd2hhdCB5b3UgYXJlIHRyeWluZyB0byBkbyBp cwpyZXBsaWNhdGUgYXQgYSBsYW5ndWFnZSBsZXZlbCB3aGF0IEpvb2J5IGFscmVhZHkgZG9lcyBp biBwdXJlCkphdmEuCgpNeSBvcGluaW9uIGFzIGEgbm90LWV4cGVyaWVuY2VkIHByb2dyYW1tZXIg dGhhdCBoYXMgbmV2ZXIgdXNlZCBKb29ieQppcyB0aGF0IHRoZXJlIG1heSBiZSBzb21lIG90aGVy IHdheSB0byB1c2UgdGhlIEpvb2J5IGFwaS4gV2h5CnJlLXNvbHZpbmcgd2l0aCBhIGxhbmd1YWdl LXNwZWNpZmljIHNvbHV0aW9uIGEgcHJvYmxlbSB0aGF0IHNvbWV3aGVyZQppbiBKb29ieSBoYXMg YWxyZWFkeSBiZWVuIGltcGxlbWVudGVkPyBTaW5jZSBpdCBpcyBhIEphdmEgbGlicmFyeSBhbmQs CmFzIEkgc3VwcG9zZWQsIEphdmEgZG9lcyBub3QgYWxsb3cgdG8gaGF2ZSAyIG1ldGhvZHMgd2l0 aCB0aGUgc2FtZQpuYW1lIGFuZCBwYXJhbWV0ZXIgdHlwZXMgWzFdWzJdLCBpZiBJIHdlcmUgaW4g eW91IEkgd291bGQgZmlyc3QgdHJ5IHRvCnRyYW5zbGF0ZSB5b3VyIGV4YW1wbGUgdG8gcGxhaW4g SmF2YSB3aXRob3V0IEpvb2J5J3MgYW5ub3RhdGlvbnMgKEkKZG9uJ3Qga25vdyBob3cgdG8gZG8g aXQpLiBNYXliZSBhc2tpbmcgdGhlIHBlb3BsZSB3b3JraW5nIG9uIEpvb2J5IG1heQpiZSBhbiBv cHRpb24/Cgo+IEkgZ3Vlc3MgdGhhdCdzIG5vdCB0aGUgcGxhY2Ugd2hlcmUgdGhlIG1ldGhvZCBu YW1lIGlzIGdlbmVyYXRlZCBmb3IKPiBieXRlY29kZSBjb21waWxhdGlvbi4gSWYgYW55b25lIGNv dWxkIHBvaW50IG1lIGF0IHdoZXJlIHRoYXQgaGFwcGVucwo+IHRoYXQgd291bGQgaGVscC4KCkp1 c3Qgb3V0IG9mIGN1cmlvc2l0eS4uLiBJJ3ZlIG5vdCB0ZXN0ZWQgaXQsIGJ1dCBJIHRoaW5rIGl0 IGhhcHBlbnMgaW4KZ251LmV4cHIuTGFtYmRhRXhwLmFkZE1ldGhvZEZvciwgYXJvdW5kIGxpbmUg MTE0NC4KCj4gVGhhbmtzIQoKbnAsIGJ1dCBJIHdhc24ndCB2ZXJ5IGhlbHBmdWwgPS8uCgpbMV0g aHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMjQzOTc4Mi9vdmVybG9hZC13aXRo LWRpZmZlcmVudC1yZXR1cm4tdHlwZS1pbi1qYXZhClsyXSBodHRwczovL3N0YWNrb3ZlcmZsb3cu Y29tL3F1ZXN0aW9ucy81NTYxNDM2L2Nhbi10d28tamF2YS1tZXRob2RzLWhhdmUtc2FtZS1uYW1l LXdpdGgtZGlmZmVyZW50LXJldHVybi10eXBlcwoK4oCQ4oCQ4oCQ4oCQ4oCQ4oCQ4oCQIE9yaWdp bmFsIE1lc3NhZ2Ug4oCQ4oCQ4oCQ4oCQ4oCQ4oCQ4oCQCk9uIFR1ZXNkYXksIFNlcHRlbWJlciA3 dGgsIDIwMjEgYXQgMzowMiBQTSwgUGhpbCBFYXRvbiA8cGhpbEBlYXRvbnBoaWwuY29tPiB3cm90 ZToKCj4gR29vZCBxdWVzdGlvbiEgSSBkb24ndCBrbm93IGhvdyB0byBnZXQgdGhlIEFCQ0wtZW1p dHRlZCBieXRlY29kZSBvdGhlcndpc2UgSSB3b3VsZCBoYXZlIGp1c3QgcG9zdGVkIHRoYXQuCj4K PiBCdXQgSSBjYW4gZGVzY3JpYmUgdG8geW91IHRoZSBiZWhhdmlvciB0aGF0IG1ha2VzIG1lIHNh eSBpdCBlbWl0cyB0d28gZnVuY3Rpb25zIHdpdGggdGhlIHNhbWUgbmFtZS4KPgo+IEhlcmUgaXMg bXkgQUJDTCBjb2RlOiBodHRwczovL2dpdGh1Yi5jb20vZWF0b25waGlsL2p2bS1saXNwLWV4YW1w bGVzL2Jsb2IvbWFpbi9hYmNsL21haW4ubGlzcCNMMjIuCj4KPiBJbiB0aGlzIGNvZGUgSSBkZWZp bmUgdHdvIG1ldGhvZHMgb2YgdGhlIHNhbWUgbmFtZS4gVGhlICJmYWtlIiBtZXRob2QgY29tZXMg Zmlyc3QuIFRoaXMgaXMgZm91bmQgd2hlbiB0aGUgam9vYnkgbGlicmFyeSBkb2VzIHJlZmxlY3Rp b24hIEJ1dCBpdCBpcyBub3QgdGhlIG9uZSBjYWxsZWQgYnkgSm9vYnkuIFRoZSBzZWNvbmQgbWV0 aG9kIHRoYXQgcmV0dXJucyBhbiBPYmplY3QgKHRoZSBvbmUgdGhhdCBhY3R1YWxseSBpbXBsZW1l bnRzIHRoZSBpbnRlcmZhY2UpIGlzIHRoZSBvbmUgdGhhdCBpcyBjYWxsZWQuCj4KPiBTZXBhcmF0 ZWx5LCBJIHdhcyBtZXNzaW5nIGFyb3VuZCBpbiBLYXdhIHRyeWluZyB0byB1bmRlcnN0YW5kIHdo ZXJlIHRoaXMgJFggc3VmZml4IGlzIGdlbmVyYXRlZCBvbiBkdXBsaWNhdGUgbWV0aG9kcy4gSSBk aWQgZmluZCBmaXhQYXJhbU5hbWVzIGluIGdudS9ieXRlY29kZS9TY29wZS5qYXZhOjExMC4gSXQg aGFzIGEgbm90ZSBzYXlpbmcgdGhhdCAkWCBzdWZmaXggd2FzIHJlcXVpcmVkIGJlY2F1c2Ugb2Yg X0FuZHJvaWRfL2RleC4gSSBjb21tZW50ZWQgdGhpcyBtZXRob2Qgb3V0IGFuZCByZWNvbXBpbGVk IGFuZCByYW4gbXkgZXhhbXBsZSBidXQgaXQgc3RpbGwgZ2VuZXJhdGVkIHRoZSAkWCBzdWZmaXgu IFNvIEkgZ3Vlc3MgdGhhdCdzIG5vdCB0aGUgcGxhY2Ugd2hlcmUgdGhlIG1ldGhvZCBuYW1lIGlz IGdlbmVyYXRlZCBmb3IgYnl0ZWNvZGUgY29tcGlsYXRpb24uIElmIGFueW9uZSBjb3VsZCBwb2lu dCBtZSBhdCB3aGVyZSB0aGF0IGhhcHBlbnMgdGhhdCB3b3VsZCBoZWxwLgo+Cj4gVGhhbmtzIQo+ Cj4gT24gVHVlLCBTZXAgNywgMjAyMSBhdCA2OjU5IEFNIHNwZWxsY2FyZDE5OSA8c3BlbGxjYXJk MTk5QHByb3Rvbm1haWwuY29tPiB3cm90ZToKPgo+PiBIZWxsby4KPj4KPj4+IEZvciB3aGF0IGl0 J3Mgd29ydGggdGhpcyBraW5kIG9mIHJlZGVmaW5pdGlvbiBvZiB0aGUgc2FtZSBtZXRob2QKPj4g d29ya2VkIGZvciBtZSBpbiBBQkNMIGxpc3AuIFNvIEkga25vdyBpdCdzIGRlZmluaXRlbHkgcG9z c2libGUgdG8KPj4gZXhwcmVzcyBpbiBKYXZhLgo+Pgo+PiBJIGtub3cgbm90aGluZyBhYm91dCBB QkNMIHNvIEkgdHJ1c3QgeW91IG9uIHRoZSBmYWN0IEFCQ0wgaGFuZGxlcwo+PiB0aGlzIGRpZmZl cmVudGx5IGZyb20gS2F3YSwgYnV0IEkgZG9uJ3QgdGhpbmsgaW4gSmF2YSB5b3UgZG8gaXQuCj4+ Cj4+IElmIEkgdHJ5IHRvIHdyaXRlIHRoZSBmb2xsb3dpbmcgY2xhc3MgaW4gcGxhaW4gSmF2YS4u Lgo+Pgo+PiBwdWJsaWMgY2xhc3MgTWFpbiB7Cj4+IHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0 cmluZ1tdIGFyZ3MpIHsKPj4gTWFpbiBtYWluID0gbmV3IE1haW4oKTsKPj4gU3lzdGVtLm91dC5w cmludGxuKG1haW4uYXBwbHkoIngiKSk7Cj4+IH0KPj4gcHVibGljIGphdmEubGFuZy5DaGFyU2Vx dWVuY2UgYXBwbHkoU3RyaW5nIHMpIHsKPj4gcmV0dXJuIHMuY29uY2F0KHMpOwo+PiB9Cj4+IHB1 YmxpYyBqYXZhLmxhbmcuT2JqZWN0IGFwcGx5KFN0cmluZyBzKSB7Cj4+IHJldHVybiBzLmNvbmNh dChzKS5jb25jYXQocyk7Cj4+IH0KPj4gfQo+Pgo+PiAuLi4gaXQgZ2l2ZXMgYSBjb21waWxlIHRp bWUgZXJyb3I6Cj4+Cj4+IGFwcGx5KFN0cmluZykgaXMgYWxyZWFkeSBkZWZpbmVkIGluICdNYWlu Jwo+Pgo+PiBBbmQgdGhlIHNhbWUgdGhpbmcgaGFwcGVucyB3aGVuIHRoZSBtZXRob2RzIGFyZSBz dGF0aWMuCj4+Cj4+IEkgc3VwcG9zZSBpbiBwbGFpbiBKYXZhIHlvdSBjYW4ndCBoYXZlIG1vcmUg dGhhbiBvbmUgbWV0aG9kIHdpdGggYm90aAo+PiB0aGUgc2FtZToKPj4gLSBuYW1lCj4+IC0gaW5w dXQgdHlwZXMKPj4KPj4gSSByZW1lbWJlciBiZWluZyBjb25mdXNlZCBieSB0aGlzIHRoZSBmaXJz dCB0aW1lIEkgc2F3IGl0LCBidXQgaW4KPj4gaGluZHNpZ2h0IGl0IG1ha2VzIHNlbnNlOiBpZiB0 aGVyZSB3ZXJlIDIgbWV0aG9kcyB3aXRoIHRoZSBzYW1lIG5hbWUKPj4gYW5kIGlucHV0IHR5cGVz LCBob3cgY291bGQgSmF2YSBrbm93IHdoaWNoIG9uZSBzaG91bGQgYmUgY2FsbGVkIHdoZW4KPj4g YXBwbGllZCB0byBhcmd1bWVudHM/Cj4+Cj4+IFNvIG15IHF1ZXN0aW9uIGlzOiBkb2VzIEFCQ0wg cmVhbGx5IGxldCB5b3UgaGF2ZSBib3RoIG1ldGhvZHMgYXQgdGhlCj4+IHNhbWUgdGltZSBvciBq dXN0IHRoZSBsYXN0bHkgZGVmaW5lZCBvbmU/Cj4+Cj4+IOKAkOKAkOKAkOKAkOKAkOKAkOKAkCBP cmlnaW5hbCBNZXNzYWdlIOKAkOKAkOKAkOKAkOKAkOKAkOKAkAo+Pgo+PiBPbiBUdWVzZGF5LCBB dWd1c3QgMzFzdCwgMjAyMSBhdCAxOjE4IEFNLCBQaGlsIEVhdG9uIDxwaGlsQGVhdG9ucGhpbC5j b20+IHdyb3RlOgo+Pgo+Pj4gSSBzcG9rZSB0b28gc29vbi4gVGhlIGlzc3VlIGlzIHRoYXQgSSB0 cnVseSBkbyBuZWVkIGJvdGggb2YgdGhlc2UgbWV0aG9kcwo+Pj4KPj4+IHRvIGJlIGNhbGxlZCBg YXBwbHlgIG5vdCBgYXBwbHlgIGFuZCBgYXBwbHkkMWAuCj4+Pgo+Pj4gRm9yIHdoYXQgaXQncyB3 b3J0aCB0aGlzIGtpbmQgb2YgcmVkZWZpbml0aW9uIG9mIHRoZSBzYW1lIG1ldGhvZCB3b3JrZWQg Zm9yCj4+Pgo+Pj4gbWUgaW4gQUJDTCBsaXNwLiBTbyBJIGtub3cgaXQncyBkZWZpbml0ZWx5IHBv c3NpYmxlIHRvIGV4cHJlc3MgaW4gSmF2YS4KPj4+Cj4+PiBPbiBNb24sIEF1ZyAzMCwgMjAyMSBh dCA3OjA5IFBNIFBoaWwgRWF0b24gcGhpbEBlYXRvbnBoaWwuY29tIHdyb3RlOgo+Pj4KPj4+ID4g QWhhISBJdCBnYXZlIG15IHNlY29uZCBhcHBseSBtZXRob2QgYSBkaWZmZXJlbnQgc3VmZml4LiBC eSByZW9yZGVyaW5nCj4+PiA+Cj4+PiA+IHRoZXNlIHR3byBtZXRob2RzIHRoZSB3aG9sZSB0aGlu ZyBzb21laG93IHdvcmtzLgo+Pj4gPgo+Pj4gPiAkIGphdmFwIG1haW5cJDAuY2xhc3MKPj4+ID4K Pj4+ID4gQ29tcGlsZWQgZnJvbSAibWFpbi5zY20iCj4+PiA+Cj4+PiA+IHB1YmxpYyBjbGFzcyBt YWluJDAgaW1wbGVtZW50cyBpby5qb29ieS5Sb3V0ZSRIYW5kbGVyIHsKPj4+ID4KPj4+ID4gbWFp biRmcmFtZSB0aGlzJDA7Cj4+PiA+Cj4+PiA+IHB1YmxpYyBqYXZhLmxhbmcuQ2hhclNlcXVlbmNl IGFwcGx5KGlvLmpvb2J5LkNvbnRleHQpOwo+Pj4gPgo+Pj4gPiBwdWJsaWMgamF2YS5sYW5nLk9i amVjdCBhcHBseSQxKGlvLmpvb2J5LkNvbnRleHQpOwo+Pj4gPgo+Pj4gPiBwdWJsaWMgbWFpbiQw KG1haW4kZnJhbWUpOwo+Pj4gPgo+Pj4gPiB9Cj4+PiA+Cj4+PiA+IEl0J3Mgd2VpcmQgYnV0IEkn bGwgdGFrZSBpdC4KPj4+ID4KPj4+ID4gT24gTW9uLCBBdWcgMzAsIDIwMjEgYXQgMTI6NDAgUE0g UGVyIEJvdGhuZXIgcGVyQGJvdGhuZXIuY29tIHdyb3RlOgo+Pj4gPgo+Pj4gPiA+IE9uIDgvMjkv MjEgMTI6MDMgUE0sIFBoaWwgRWF0b24gd3JvdGU6PiBTdGlsbCBuZXcgdG8gS2F3YS4gSSdtIHRy eWluZyB0bwo+Pj4gPiA+Cj4+PiA+ID4gaW1wbGVtZW50IGFuIGludGVyZmFjZSAoCj4+PiA+ID4K Pj4+ID4gPiA+IGlvLmpvb2J5LlJvdXRlJEhhbmRsZXIKPj4+ID4gPiA+Cj4+PiA+ID4gPiA8Cj4+ PiA+ID4gPgo+Pj4gPiA+ID4gaHR0cHM6Ly9naXRodWIuY29tL2pvb2J5LXByb2plY3Qvam9vYnkv YmxvYi8yLngvam9vYnkvc3JjL21haW4vamF2YS9pby9qb29ieS9Sb3V0ZS5qYXZhI0wyNDcKPj4+ ID4gPiA+Cj4+PiA+ID4gPiApLgo+Pj4gPiA+ID4KPj4+ID4gPiA+IEl0IG9ubHkgaGFzIGEgc2lu Z2xlIG5vbi1kZWZhdWx0IG1ldGhvZCwgYXBwbHkuCj4+PiA+ID4gPgo+Pj4gPiA+ID4gSGVyZSdz IHdoYXQgSSd2ZSBnb3QKPj4+ID4gPiA+Cj4+PiA+ID4gPiAoZGVmaW5lIChyb3V0ZSBhcHAgbWV0 aG9kIHBhdGggaGFuZGxlcikKPj4+ID4gPiA+Cj4+PiA+ID4gPiAobGV0ICgoaGFuZGxlciAob2Jq ZWN0IChpby5qb29ieS5Sb3V0ZSRIYW5kbGVyKQo+Pj4gPiA+ID4KPj4+ID4gPiA+ICN8IFRoaXMg bWV0aG9kIGV4aXN0cyBqdXN0IHRvIHN0b3AgSm9vYnkgZnJvbQo+Pj4gPiA+ID4KPj4+ID4gPiA+ IHRyeWluZyB0byBpbnRyb3NwZWN0IEphdmEgY29kZSB0aGF0IGRvZXNuJ3QgZXhpc3QgYmVjYXVz ZSB0aGlzIGlzbid0Cj4+PiA+ID4gPgo+Pj4gPiA+ID4gd3JpdHRlbiBpbiBKYXZhLiB8Iwo+Pj4g PiA+ID4KPj4+ID4gPiA+ICgoYXBwbHkgKGN0eCA6OmlvLmpvb2J5LkNvbnRleHQpKSA6OnN0cmlu Zwo+Pj4gPiA+ID4KPj4+ID4gPiA+ICMhbnVsbCkKPj4+ID4gPiA+Cj4+PiA+ID4gPiAoKGFwcGx5 IChjdHggOjppby5qb29ieS5Db250ZXh0KSkKPj4+ID4gPiA+Cj4+PiA+ID4gPiA6OmphdmEubGFu Zy5PYmplY3QKPj4+ID4gPiA+Cj4+PiA+ID4gPiAoaGFuZGxlciBjdHgpKSkpKQo+Pj4gPiA+ID4K Pj4+ID4gPiA+IChhcHA6cm91dGUgbWV0aG9kIHBhdGggaGFuZGxlcikpKQo+Pj4gPiA+ID4KPj4+ ID4gPiA+IEJ1dCB3aGVuIHRoaXMgZ2V0cyBleGVyY2lzZWQsIEkgZ2V0Ogo+Pj4gPiA+ID4KPj4+ ID4gPiA+IFt3b3JrZXItMS0zXSBFUlJPUiBpby5qb29ieS5Kb29ieSAtIEdFVCAvaGVsbG8td29y bGQgNTAwIFNlcnZlciBFcnJvcgo+Pj4gPiA+ID4KPj4+ID4gPiA+IGphdmEubGFuZy5BYnN0cmFj dE1ldGhvZEVycm9yOiBSZWNlaXZlciBjbGFzcyBtYWluJDAgZG9lcyBub3QgZGVmaW5lIG9yCj4+ PiA+ID4gPgo+Pj4gPiA+ID4gaW5oZXJpdCBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcmVzb2x2 ZWQgbWV0aG9kICdhYnN0cmFjdAo+Pj4gPiA+ID4KPj4+ID4gPiA+IGphdmEubGFuZy5PYmplY3QK Pj4+ID4gPiA+Cj4+PiA+ID4gPiBhcHBseShpby5qb29ieS5Db250ZXh0KScgb2YgaW50ZXJmYWNl IGlvLmpvb2J5LlJvdXRlJEhhbmRsZXIuCj4+PiA+ID4KPj4+ID4gPiBJIGRvbid0IHNlZSBhbnl0 aGluZyBvYnZpb3VzbHkgd3JvbmcuIE9uZSB0aGluZyB0byB0cnkgaXMgaW5zdGVhZCBvZiBhbgo+ Pj4gPiA+Cj4+PiA+ID4gYW5vbnltb3VzIGNsYXNzICh3aXRoIG9iamVjdCkgdXNlIGEgbmFtZWQg Y2xhc3MgKHdpdGgKPj4+ID4gPgo+Pj4gPiA+IGRlZmluZS1zaW1wbGUtY2xhc3MpLgo+Pj4gPiA+ Cj4+PiA+ID4gVGhlIGFub255bW91cyBjbGFzcyBpcyBtb3JlIGNvbnZlbmllbnQgb2YgY291cnNl IHRoZXJlIGlzIHNvbWUgZXh0cmEKPj4+ID4gPgo+Pj4gPiA+ICJtYWdpYyIKPj4+ID4gPgo+Pj4g PiA+IChzdWNoIGFzIGludmlzaWJsZSBmaWVsZHMpIHRoYXQgbWlnaHQgY29tcGxpY2F0ZSB0aGlu Z3MuCj4+PiA+ID4KPj4+ID4gPiA+IEFsc28gb24gYSB0YW5nZW50LCBJIHdhcyBleGNpdGVkIGFi b3V0IHRoZSBsYW1iZGEgc2hvcnRoYW5kIGZvciBzaW5nbGUKPj4+ID4gPiA+Cj4+PiA+ID4gPiBt ZXRob2Qgb2JqZWN0cy4gTGlrZSBJIHNhaWQgdGhpcyBpbnRlcmZhY2Ugb25seSBoYXMgYSBzaW5n bGUgbm9uLWRlZmF1bHQKPj4+ID4gPiA+Cj4+PiA+ID4gPiBtZXRob2Q6IGFwcGx5LiBCdXQgSSB0 cmllZCBqdXN0IGNhbGxpbmcgYChhcHA6cm91dGUgbWV0aG9kIGhhbmRsZXIpYAo+Pj4gPiA+ID4K Pj4+ID4gPiA+IHdpdGhvdXQgd3JhcHBpbmcgaXQgaW4gdGhlIGlvLmpvb2J5LlJvdXRlJEhhbmRs ZXIgb2JqZWN0IGJ1dCBpdCBzdGlsbAo+Pj4gPiA+ID4KPj4+ID4gPiA+IGZhaWxlZC4gSSBndWVz cyBpdCBjb3VsZG4ndCBmaWd1cmUgb3V0IHRoaXMgb25lIG1ldGhvZC4KPj4+ID4gPgo+Pj4gPiA+ IEthd2EgaGFzIHRvIGJlIGFibGUgdG8gZmlndXJlIG91dCBhdCBjb21waWxlIHRpbWUgdGhhdCBh IHNwZWNpZmljCj4+PiA+ID4KPj4+ID4gPiBjbGFzcy9pbnRlcmZhY2UKPj4+ID4gPgo+Pj4gPiA+ IGlzIHJlcXVpcmVkIGJlZm9yZSBpdCBjYW4gY29udmVydCB0aGUgbGFtYmRhIHRvIGFuIG9iamVj dC4gKEFzIGZhciBhcyBJCj4+PiA+ID4KPj4+ID4gPiBjYW4KPj4+ID4gPgo+Pj4gPiA+IHJlbWVt YmVyLCBkb2luZyB0aGlzIGNvbnZlcnNpb24gYXQgcnVuLXRpbWUgaXNuJ3QgaW1wbGVtZW50ZWQs IGFuZCB3b3VsZAo+Pj4gPiA+Cj4+PiA+ID4gYmUKPj4+ID4gPgo+Pj4gPiA+IGZhaXJseSBjb21w bGljYXRlZC4pIFNvIHlvdSBtYXkgbmVlZCB0byBhZGQgc29tZSBtb3JlIHR5cGUtc3BlY2lmaWVy cy4KPj4+ID4gPgo+Pj4gPiA+IEkgc3VnZ2VzdCB1c2luZyBqYXZhcCB0byBsb29rIGF0IHRoZSBn ZW5lcmF0ZWQgY2xhc3NlcywgdG8gc2VlIHdoYXQgaXMKPj4+ID4gPgo+Pj4gPiA+IGdvaW5nIG9u Lgo+Pj4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+Pj4gPiA+Cj4+PiA+ID4gLS1QZXIg Qm90aG5lcgo+Pj4gPiA+Cj4+PiA+ID4KPj4+ID4gPiBwZXJAYm90aG5lci5jb20gaHR0cDovL3Bl ci5ib3RobmVyLmNvbS8=