From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id F1D9D428F5 for ; Tue, 5 Apr 2022 21:36:04 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C751C68B211; Wed, 6 Apr 2022 00:36:01 +0300 (EEST) Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 19EF568B1F4 for ; Wed, 6 Apr 2022 00:35:55 +0300 (EEST) Received: by mail-wr1-f43.google.com with SMTP id b19so386832wrh.11 for ; Tue, 05 Apr 2022 14:35:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=wUVcL432u/GkH95PHNQYzpKCtVVNlaneHVdZ2zDeQsc=; b=FzD95aH9reUU0RzH+jXg93W4HbsB7dhkv1pFCWJFHfiOnEO/BWqI80F7y6MprMyVDI yWtxvdPPyb8cIhz1N0qDt+HwzOamXrtZ8A1SMfKurhhHVrtNDILCmmpvoo/HnrQXAoAh Eo+jJOEDEJqO+nq2BtsuAg86T2hieRHIWKenUXLmLM8FOs1PgVDUVG24fgcmbRgdfewP iyzM3mqFuXzswt+OblciB1Z5NuIgT4SLoWDVta4IQWO/sG1ssvMSo5se/dX+ZJBn/tkz 9NU5OyGKi6ztXSH8LmqtwADKeC7dJhaDERVeekdzuisneuLH9Ni8gyQCEDjvv46Glxxc n5CQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=wUVcL432u/GkH95PHNQYzpKCtVVNlaneHVdZ2zDeQsc=; b=NRKX9sM6kZLVXfOt9W1APMtZjobICyovXbXowCzBKEi2rPjz6Sf/8V0VSCqqjJxbzK B5g9i6TjXlamk7yPVuHGsLZoEw+gRhE5+O3bDKsojLtCQmwCzPC2WJFBubiXVEzBpFnt qj82QV6w8FMQE3Bkgg9Ou41qCHzLZFcv4x++ih1GS95PjOFEsOwHG34ZaH7gFpCJI89J 2hUXCNKoHCKJqbFeptr8FsD4M0rYl0hBXToN/TGhNZuBv2Mu5e8EdoyP5YgCjxb+gUpx MmeG2BLcJ8MX8y4L+UJr4yvmhPtem2XO239K492OBXwDIIzrh0mY0YviBS/aysSFl9sU Vi1Q== X-Gm-Message-State: AOAM530RnOgmwnIOd5+jjg/s8XYi7bjQawZduNgyGo2nNeUFGbiLU25S jdiRZEA2jeyRAe3+6ugvguQRt5Hn/Sorg7px2ksmZl+t X-Google-Smtp-Source: ABdhPJzMNxXe4akE1uGKCQv5vnNnH2apRjfO4179h2OAgx+VkBexPPhpm0yjzWWE571om8ph8aU/OVYiZD3Nq0omlLk= X-Received: by 2002:a5d:4311:0:b0:205:f26b:fb98 with SMTP id h17-20020a5d4311000000b00205f26bfb98mr4238005wrq.202.1649194554030; Tue, 05 Apr 2022 14:35:54 -0700 (PDT) MIME-Version: 1.0 References: <20220403223825.26764-1-markg85@gmail.com> <20220403223825.26764-2-markg85@gmail.com> <20220405210105.GY2829255@pb2> In-Reply-To: From: Mark Gaiser Date: Tue, 5 Apr 2022 23:34:40 +0200 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] [PATCH v12 1/1] avformat: Add IPFS protocol support. X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: michael@niedermayer.cc Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gVHVlLCBBcHIgNSwgMjAyMiBhdCAxMToyNyBQTSBNYXJrIEdhaXNlciA8bWFya2c4NUBnbWFp bC5jb20+IHdyb3RlOgoKPgo+Cj4gT24gVHVlLCBBcHIgNSwgMjAyMiBhdCAxMTowMSBQTSBNaWNo YWVsIE5pZWRlcm1heWVyIDwKPiBtaWNoYWVsQG5pZWRlcm1heWVyLmNjPiB3cm90ZToKPgo+PiBP biBNb24sIEFwciAwNCwgMjAyMiBhdCAxMjozODoyNUFNICswMjAwLCBNYXJrIEdhaXNlciB3cm90 ZToKPj4gPiBUaGlzIHBhdGNoIGFkZHMgc3VwcG9ydCBmb3I6Cj4+ID4gLSBmZnBsYXkgaXBmczov LzxjaWQ+Cj4+ID4gLSBmZnBsYXkgaXBuczovLzxjaWQ+Cj4+ID4KPj4gPiBJUEZTIGRhdGEgY2Fu IGJlIHBsYXllZCBmcm9tIHNvIGNhbGxlZCAiaXBmcyBnYXRld2F5cyIuCj4+ID4gQSBnYXRld2F5 IGlzIGVzc2VudGlhbGx5IGEgd2Vic2VydmVyIHRoYXQgZ2l2ZXMgYWNjZXNzIHRvIHRoZQo+PiA+ IGRpc3RyaWJ1dGVkIElQRlMgbmV0d29yay4KPj4gPgo+PiA+IFRoaXMgcHJvdG9jb2wgc3VwcG9y dCAoaXBmcyBhbmQgaXBucykgdGhlcmVmb3JlIHRyYW5zbGF0ZXMKPj4gPiBpcGZzOi8vIGFuZCBp cG5zOi8vIHRvIGEgaHR0cDovLyB1cmwuIFRoaXMgcmVzdWx0aW5nIHVybCBpcwo+PiA+IHRoZW4g aGFuZGxlZCBieSB0aGUgaHR0cCBwcm90b2NvbC4gSXQgY291bGQgYWxzbyBiZSBodHRwcwo+PiA+ IGRlcGVuZGluZyBvbiB0aGUgZ2F0ZXdheSBwcm92aWRlZC4KPj4gPgo+PiA+IFRvIHVzZSB0aGlz IHByb3RvY29sLCBhIGdhdGV3YXkgbXVzdCBiZSBwcm92aWRlZC4KPj4gPiBJZiB5b3UgZG8gbm90 aGluZyBpdCB3aWxsIHRyeSB0byBmaW5kIGl0IGluIHlvdXIKPj4gPiAkSE9NRS8uaXBmcy9nYXRl d2F5IGZpbGUuIFRoZSB3YXlzIHRvIHNldCBpdCBtYW51YWxseSBhcmU6Cj4+ID4gMS4gRGVmaW5l IGEgLWdhdGV3YXkgPHVybD4gdG8gdGhlIGdhdGV3YXkuCj4+ID4gMi4gRGVmaW5lICRJUEZTX0dB VEVXQVkgd2l0aCB0aGUgZnVsbCBodHRwIGxpbmsgdG8gdGhlIGdhdGV3YXkuCj4+ID4gMy4gRGVm aW5lICRJUEZTX1BBVEggYW5kIHBvaW50IGl0IHRvIHRoZSBJUEZTIGRhdGEgcGF0aC4KPj4gPiA0 LiBIYXZlIElQRlMgcnVubmluZyBpbiB5b3VyIGxvY2FsIHVzZXIgZm9sZGVyICh1bmRlciAkSE9N RS8uaXBmcykuCj4+ID4KPj4gWy4uLl0KPj4KPj4gPiArICAgICAgICBnb3RvIGVycjsKPj4gPiAr ICAgIH0KPj4gPiArCj4+ID4gKyAgICAvLyBSZWFkIGEgc2luZ2xlIGxpbmUgKGZnZXRzIHN0b3Bz IGF0IG5ldyBsaW5lIG1hcmspLgo+PiA+ICsgICAgaWYgKCFmZ2V0cyhjLT5nYXRld2F5X2J1ZmZl ciwgc2l6ZW9mKGMtPmdhdGV3YXlfYnVmZmVyKSAtIDEsCj4+IGdhdGV3YXlfZmlsZSkpIHsKPj4g PiArICAgICAgYXZfbG9nKGgsIEFWX0xPR19XQVJOSU5HLCAiVW5hYmxlIHRvIHJlYWQgZnJvbSBm aWxlIChmdWxsIHVyaToKPj4gJXMpLlxuIiwKPj4gPiArICAgICAgICAgICAgIGlwZnNfZ2F0ZXdh eV9maWxlKTsKPj4gPiArICAgICAgcmV0ID0gQVZFUlJPUihFTk9FTlQpOwo+PiA+ICsgICAgICBn b3RvIGVycjsKPj4gPiArICAgIH0KPj4KPj4gVGhlIGluZGVudGlvbiBpcyBub3QgY29uc2lzdGVu dAo+Pgo+Cj4gV2hhdCdzIHRoZSBpbnRlbmRlZCBpbmRlbnRhdGlvbiBoZXJlPwo+IEluIG15IGVk aXRvciAoUXRDcmVhdG9yLCBpdCdzIHNldCB0byAyIHNwYWNlcyBmb3IgdGFicykgdGhlCj4gImlw ZnNfZ2F0ZXdheV9maWxlIiBpcyBhbGlnbmVkIGRpcmVjdGx5IHVuZGVybmVhdGggdGhlIGZpcnN0 IGFyZ3VtZW50IG9mCj4gYXZfbG9nLgo+IFRoYXQgaXMgYXMgaXQgc2hvdWxkIGJlLCByaWdodD8K Pgo+IEZvciB0aGlzIGFuZCB5b3VyIG90aGVyIGNvbW1lbnRzLCBJIHNlZSBubyBpc3N1ZSBvbiBt eSBzaWRlLiBBbHNvIG5vCj4gdHJhaWxpbmcgd2hpdGVzcGFjZS4KPgo+IEhlcmUncyBhbiBpbWFn ZSBvZiB3aGF0IGkgc2VlIHdpdGggc3BhY2VzIHZpc3VhbGl6ZXM6Cj4gaHR0cHM6Ly9pLmltZ3Vy LmNvbS8zN2s2OFJILnBuZwo+IElzIHRoZXJlIHNvbWV0aGluZyB3cm9uZyBvbiBteSBlbmQ/Cj4K Ckp1c3QgY2hlY2tlZCBwYXRjaHdvcms6Cmh0dHBzOi8vcGF0Y2h3b3JrLmZmbXBlZy5vcmcvcHJv amVjdC9mZm1wZWcvcGF0Y2gvMjAyMjA0MDMyMjM4MjUuMjY3NjQtMi1tYXJrZzg1QGdtYWlsLmNv bS8KSXQgYWxzbyBzaG93cyB0aGUgaW5kZW50YXRpb24gYXMgSSBpbnRlbmRlZCB3aGljaCBzaG91 bGQgYmUgYWNjb3JkaW5nIHRvCnRoZSBmZm1wZWcgY29kaW5nIHN0eWxlIGd1aWRlbGluZXMuCgpT YW1lIHdpdGg6Cmh0dHBzOi8vZmZtcGVnLm9yZy9waXBlcm1haWwvZmZtcGVnLWRldmVsLzIwMjIt QXByaWwvMjk0OTMyLmh0bWwKCgo+Cj4KPj4KPj4KPj4gWy4uLl0KPj4gPiArICAgIC8vIFBvcHVs YXRlIGMtPmdhdGV3YXlfYnVmZmVyIHdpdGggd2hhdGV2ZXIgaXMgaW4gYy0+Z2F0ZXdheQo+PiA+ ICsgICAgaWYgKGMtPmdhdGV3YXkgIT0gTlVMTCkgewo+PiA+ICsgICAgICAgIGlmIChzbnByaW50 ZihjLT5nYXRld2F5X2J1ZmZlciwgc2l6ZW9mKGMtPmdhdGV3YXlfYnVmZmVyKSwKPj4gIiVzIiwK Pj4gPiArICAgICAgICAgICAgICAgICAgICAgYy0+Z2F0ZXdheSkgPj0gc2l6ZW9mKGMtPmdhdGV3 YXlfYnVmZmVyKSkgewo+PiA+ICsgICAgICAgICAgICBhdl9sb2coaCwgQVZfTE9HX1dBUk5JTkcs ICJUaGUgLWdhdGV3YXkgcGFyYW1ldGVyIGlzIHRvbwo+PiBsb25nLiAiCj4+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIldlIGFsbG93IGEgbWF4IG9mICV6dQo+PiBj aGFyYWN0ZXJzXG4iLAo+PiA+ICsgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGMtPmdhdGV3YXlf YnVmZmVyKSk7Cj4+ID4gKyAgICAgICAgICAgIHJldCA9IEFWRVJST1IoRUlOVkFMKTsKPj4gPiAr ICAgICAgICAgICAgZ290byBlcnI7Cj4+ID4gKyAgICAgICAgfQo+PiA+ICsgICAgfSBlbHNlIHsK Pj4gPiArICAgICAgICAvLyBQb3B1bGF0ZSB0aGUgSVBGUyBnYXRld2F5IGlmIHdlIGhhdmUgYW55 Lgo+PiA+ICsgICAgICAgIC8vIElmIG5vdCwgaW5mb3JtIHRoZSB1c2VyIGhvdyB0byBwcm9wZXJs eSBzZXQgb25lLgo+PiA+ICsgICAgICAgIHJldCA9IHBvcHVsYXRlX2lwZnNfZ2F0ZXdheShoKTsK Pj4gPiArCj4+ID4gKyAgICAgICAgaWYgKHJldCA8IDEpIHsKPj4gPiArICAgICAgICAgICAgLy8g V2UgZmFsbGJhY2sgb24gZHdlYi5saW5rIChtYW5hZ2VkIGJ5IFByb3RvY29sIExhYnMpLgo+PiA+ ICsgICAgICAgICAgICBzbnByaW50ZihjLT5nYXRld2F5X2J1ZmZlciwgc2l6ZW9mKGMtPmdhdGV3 YXlfYnVmZmVyKSwgIgo+PiBodHRwczovL2R3ZWIubGluayIpOwo+PiA+ICsKPj4gPiArICAgICAg ICAgICAgYXZfbG9nKGgsIEFWX0xPR19XQVJOSU5HLCAiSVBGUyBkb2VzIG5vdCBhcHBlYXIgdG8g YmUKPj4gcnVubmluZy4gIgo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJZb3XigJlyZSBub3cgdXNpbmcgdGhlIHB1YmxpYwo+PiBnYXRld2F5IGF0IGR3ZWIubGlu ay5cbiIpOwo+PiA+ICsgICAgICAgICAgICBhdl9sb2coaCwgQVZfTE9HX0lORk8sICJJbnN0YWxs aW5nIElQRlMgbG9jYWxseSBpcwo+PiByZWNvbW1lbmRlZCB0byAiCj4+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgImltcHJvdmUgcGVyZm9ybWFuY2UgYW5kCj4+IHJlbGlh YmlsaXR5LCAiCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFuZCBu b3Qgc2hhcmUgYWxsIHlvdXIgYWN0aXZpdHkKPj4gd2l0aCBhIHNpbmdsZSBJUEZTIGdhdGV3YXku XG4iCj4+ID4gKyAgICAgICAgICAgICAgICAgICAiVGhlcmUgYXJlIG11bHRpcGxlIG9wdGlvbnMg dG8gZGVmaW5lIHRoaXMKPj4gZ2F0ZXdheS5cbiIKPj4gPiArICAgICAgICAgICAgICAgICAgICIx LiBDYWxsIGZmbXBlZyB3aXRoIGEgZ2F0ZXdheSBwYXJhbSwgIgo+PiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJ3aXRob3V0IGEgdHJhaWxpbmcgc2xhc2g6IC1nYXRld2F5 Cj4+IDx1cmw+LlxuIgo+PiA+ICsgICAgICAgICAgICAgICAgICAgIjIuIERlZmluZSBhbiAkSVBG U19HQVRFV0FZIGVudmlyb25tZW50IHZhcmlhYmxlCj4+IHdpdGggdGhlICIKPj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnVsbCBIVFRQIFVSTCB0byB0aGUgZ2F0ZXdh eSAiCj4+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndpdGhvdXQgdHJh aWxpbmcgZm9yd2FyZCBzbGFzaC5cbiIKPj4gPiArICAgICAgICAgICAgICAgICAgICIzLiBEZWZp bmUgYW4gJElQRlNfUEFUSCBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCj4+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgImFuZCBwb2ludCBpdCB0byB0aGUgSVBGUyBkYXRhIHBh dGgKPj4gIgo+PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICItIHRoaXMg aXMgdHlwaWNhbGx5IH4vLmlwZnNcbiIpOwo+PiA+ICsgICAgICAgIH0KPj4gPiArICAgIH0KPj4K Pj4gVGhpcyB3aWxsIHByaW50IHRoZSB3YXJuaW5nIGV2ZXJ5IHRpbWUgYSBpcGZzIHVybCBpcyBv cGVuZWQuIE5vdCBqdXN0IG9uY2UKPj4gaXMgdGhhdCBpbnRlbmRlZCA/Cj4+Cj4KPiBZZXMuCj4K PiBPciByYXRoZXIsIEkgZG9uJ3Qgc2VlIGhvdyB0byBtYWtlIGl0IHBlcnNpc3RlbnQgaW4gYSBu aWNlIGludHVpdGl2ZSB3YXkuCj4gQnkgbmljZSBpbnR1aXRpdmUgSSBtZWFuIHNob3dpbmcgaXQg Zm9yLCBsZXRzIHNheSwgMTAgdGltZXMgeW91IHVzZSBmZm1wZWcKPiB0byBiZSAic3VyZSIgeW91 J3ZlIHNlZW4gaXQgYmVmb3JlIGl0IGNhbiBzdG9wIGFubm95aW5nIHRoZSB1c2VyIGFib3V0IGl0 Lgo+Cj4gQWRkaW5nIGNvbXBsZXhpdHkgZm9yIHRoYXQgZG9lc24ndCBzZWVtIHRvIGJlIHdvcnRo IGl0IHRvIG1lLgo+Cj4KPj4KPj4KPj4KPj4gPiArCj4+ID4gKyAgICAvLyBUZXN0IGlmIHRoZSBn YXRld2F5IHN0YXJ0cyB3aXRoIGVpdGhlciBodHRwOi8vIG9yIGh0dHBzOi8vCj4+ID4gKyAgICBp ZiAoYXZfc3RyaXN0YXJ0KGMtPmdhdGV3YXlfYnVmZmVyLCAiaHR0cDovLyIsIE5VTEwpID09IDAK Pj4gPiArICAgICAgICAmJiBhdl9zdHJpc3RhcnQoYy0+Z2F0ZXdheV9idWZmZXIsICJodHRwczov LyIsIE5VTEwpID09IDApIHsKPj4gPiArICAgICAgICBhdl9sb2coaCwgQVZfTE9HX1dBUk5JTkcs ICJUaGUgZ2F0ZXdheSBVUkwgZGlkbid0IHN0YXJ0IHdpdGgKPj4gaHR0cDovLyBvciAiCj4+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaHR0cHM6Ly8gYW5kIGlzIHRoZXJl Zm9yZQo+PiBpbnZhbGlkLlxuIik7Cj4+ID4gKyAgICAgICAgcmV0ID0gQVZFUlJPUihFSUxTRVEp Owo+PiA+ICsgICAgICAgIGdvdG8gZXJyOwo+PiA+ICsgICAgfQo+PiA+ICsKPj4gPiArICAgIC8v IENvbmNhdGVuYXRlIHRoZSB1cmwuCj4+ID4gKyAgICAvLyBUaGlzIGVuZHMgdXAgd2l0aCBzb21l dGhpbmcgbGlrZToKPj4gaHR0cDovL2xvY2FsaG9zdDo4MDgwL2lwZnMvUW0uLi4uLgo+PiA+ICsg ICAgLy8gVGhlIGZvcm1hdCBvZiAiJXMlcyVzJXMiIGlzIHRoZSBmb2xsb3dpbmc6Cj4+ID4gKyAg ICAvLyAxc3QgJXMgPSBUaGUgZ2F0ZXdheS4KPj4gPiArICAgIC8vIDJuZCAlcyA9IElmIHRoZSBn YXRld2F5IGRpZG4ndCBlbmQgaW4gYSBzbGFzaCwgYWRkIGEgIi8iLgo+PiBPdGhlcndpc2UgaXQn cyBhbiBlbXB0eSBzdHJpbmcKPj4gPiArICAgIC8vIDNyZCAlcyA9IEVpdGhlciBpcG5zLyBvciBp cGZzLy4KPj4gPiArICAgIC8vIDR0aCAlcyA9IFRoZSBJUEZTIENJRCAoUW0uLi4sIGJhZnkuLi4s IC4uLikuCj4+ID4gKyAgICBmdWxsdXJpID0gYXZfYXNwcmludGYoIiVzJXMlcyVzIiwKPj4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICBjLT5nYXRld2F5X2J1ZmZlciwKPj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAoYy0+Z2F0ZXdheV9idWZmZXJbc3RybGVuKGMtPmdhdGV3YXlf YnVmZmVyKQo+PiAtIDFdID09ICcvJykgPyAiIiA6ICIvIiwKPj4gPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAoaXNfaXBucykgPyAiaXBucy8iIDogImlwZnMvIiwKPj4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgICBpcGZzX2NpZCk7Cj4+ID4gKwo+PiA+ICsgICAgaWYgKCFmdWxsdXJp KSB7Cj4+ID4gKyAgICAgIGF2X2xvZyhoLCBBVl9MT0dfRVJST1IsICJGYWlsZWQgdG8gY29tcG9z ZSB0aGUgVVJMXG4iKTsKPj4gPiArICAgICAgcmV0ID0gQVZFUlJPUihFTk9NRU0pOwo+PiA+ICsg ICAgICBnb3RvIGVycjsKPj4gPiArICAgIH0KPj4KPj4gYW5vdGhlciBpbmRlbnRpb24gY2FzZQo+ Pgo+PiBUaGVyZXMgYWxzbyBzb21lIHRyYWlsaW5nIHdoaXRlc3BhY2UgaW4gdGhlIHBhdGNoIGxl ZnQKPj4KPj4KPj4gTm8gbW9yZSBjb21tZW50cyBmcm9tIG1lLiBMR1RNIGFmdGVyIHRoZXNlIHRv IG1lIGkgdGhpbmsKPj4KPgo+IEF3ZXNvbWUhCj4gU3RpbGwgYSBWMTMgbWlnaHQgYmUgbmVlZGVk Li4uCj4gVGhvdWdoIHRoYXQgbWlnaHQgZGVwZW5kIG9uIHlvdXIgYW5zd2VyIHRvIG15IGNvbW1l bnQgYWJvdmUgd2l0aCB0aGUgaW1hZ2UKPiBsaW5rLgo+Cj4KPj4KPj4gdGh4Cj4+Cj4+IFsuLi5d Cj4+IC0tCj4+IE1pY2hhZWwgICAgIEdudVBHIGZpbmdlcnByaW50OiA5RkYyMTI4QjE0N0VGNjcz MEJBREYxMzM2MTFFQzc4NzA0MEIwRkFCCj4+Cj4+IE1hbnkgdGhhdCBsaXZlIGRlc2VydmUgZGVh dGguIEFuZCBzb21lIHRoYXQgZGllIGRlc2VydmUgbGlmZS4gQ2FuIHlvdSBnaXZlCj4+IGl0IHRv IHRoZW0/IFRoZW4gZG8gbm90IGJlIHRvbyBlYWdlciB0byBkZWFsIG91dCBkZWF0aCBpbiBqdWRn ZW1lbnQuIEZvcgo+PiBldmVuIHRoZSB2ZXJ5IHdpc2UgY2Fubm90IHNlZSBhbGwgZW5kcy4gLS0g R2FuZGFsZgo+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xwo+PiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0Cj4+IGZmbXBlZy1kZXZlbEBmZm1wZWcub3Jn Cj4+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAo+Pgo+ PiBUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKPj4gZmZtcGVnLWRl dmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4KPj4KPgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2 ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxp bmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBz dWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==