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 09CEE49839 for ; Sat, 20 Apr 2024 12:18:43 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 03D7F68D1E0; Sat, 20 Apr 2024 15:18:41 +0300 (EEST) Received: from b-painless.mh.aa.net.uk (unknown [81.187.30.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1058C68CE03 for ; Sat, 20 Apr 2024 15:18:34 +0300 (EEST) Received: from 3.4.3.5.7.1.0.f.c.9.9.9.9.3.2.a.0.5.8.0.9.1.8.0.0.b.8.0.1.0.0.2.ip6.arpa ([2001:8b0:819:850:a239:999c:f017:5343] helo=[IPV6:fd34:5ae5:dfe:ae11::1]) by painless-b.tch.aa.net.uk with esmtp (Exim 4.96) (envelope-from ) id 1ry9ft-004QXw-18 for ffmpeg-devel@ffmpeg.org; Sat, 20 Apr 2024 13:18:33 +0100 Message-ID: <8c349687-9bba-41f6-afdb-2835ef29f34d@pileofstuff.org> Date: Sat, 20 Apr 2024 13:18:29 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20240418150614.3952107-1-ffmpeg-devel@pileofstuff.org> Content-Language: en-GB From: Andrew Sayers In-Reply-To: Subject: Re: [FFmpeg-devel] [PATCH 1/3] doc: Explain what "context" means 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 Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gMjAvMDQvMjAyNCAwODoyNSwgU3RlZmFubyBTYWJhdGluaSB3cm90ZToKPiBPbiBkYXRlIFRo dXJzZGF5IDIwMjQtMDQtMTggMTY6MDY6MTIgKzAxMDAsIEFuZHJldyBTYXllcnMgd3JvdGU6Cj4+ IEJhc2VkIGxhcmdlbHkgb24gdGhlIGV4cGxhbmF0aW9uIGJ5IFN0ZWZhbm8gU2FiYXRpbmk6Cj4+ IGh0dHBzOi8vZmZtcGVnLm9yZy9waXBlcm1haWwvZmZtcGVnLWRldmVsLzIwMjQtQXByaWwvMzI1 ODU0Lmh0bWwKPj4gLS0tCj4+ICAgZG9jL2phcmdvbi5tZCB8IDk2ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+PiAgIDEgZmlsZSBjaGFuZ2VkLCA5 NiBpbnNlcnRpb25zKCspCj4+ICAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9qYXJnb24ubWQKPj4K Pj4gZGlmZiAtLWdpdCBhL2RvYy9qYXJnb24ubWQgYi9kb2MvamFyZ29uLm1kCj4+IG5ldyBmaWxl IG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAwMDAuLjNiNzhmZmI2MWYKPj4gLS0tIC9kZXYv bnVsbAo+PiArKysgYi9kb2MvamFyZ29uLm1kCj4gV2UgY3VycmVudGx5IGhhdmUgYSBzaW5nbGUg Lm1kIGZpbGUgaW4gZG9jIChmb3IgaGlzdG9yaWNhbCByZWFzb24gd2UKPiBzdGlsbCBzdGljayB0 byB0ZXhpbmZvKS4gQWxzbyBob3cgaXMgdGhpcyBpbnRlZ3JhdGVkIGludG8gZG94eWdlbj8KCkRv eHlnZW4gYXV0b21hdGljYWxseSByZW5kZXJzIGFsbCAvKi5tZCBhbmQgL2RvYy8qLm1kIGZpbGVz IHRvIHBhZ2VzIGF0IFsxXQp3aGljaCBpcyB0aGUgb25seSBwbGFjZSBJJ2Qga25vdyB0byBsb29r IGZvciB0aGlzIHNvcnQgb2YgdGhpbmcuIGl0IHNlZW1zCmxpa2UgdGV4aW5mbyBpcyBtb3JlIGZv ciBtYW4gcGFnZXMgZXRjLiwgd2hpY2ggd291bGQgYmUgaGFyZCB0byBsaW5rIGZyb20KZG94eWdl bj/CoCBCeSB0aGUgd2F5LCBhIGZpbGUgY2FsbGVkICJqYXJnb24iIHNlZW1lZCBsaWtlIGEgYmV0 dGVyIGlkZWEgdGhhbgplLmcuIGEgImRlc2lnbl9wYXR0ZXJucyIgZmlsZSBvciBhIHNlY3Rpb24g aW4gQVZDbGFzcy7CoCBJJ3ZlIHJld3JpdHRlbiB0aGUKZG9jdW1lbnQgY29tcGxldGVseSBiYXNl ZCBvbiB5b3VyIGZlZWRiYWNrIC0gc2FtZSBtYXJrZG93biBmaWxlIGZvciBub3csCmJ1dCBoYXBw eSB0byBtb3ZlL3JlZm9ybWF0LgoKVGhlIHBvaW50cyBiZWxvdyBzaG91bGQgYmUgYWRkcmVzc2Vk IGJ5IHRoZSBuZXcgcGF0Y2gsIHNvIEknbGwgbGV0IHRoYXQKc3BlYWsgZm9yIGl0c2VsZi7CoCBC dXQgdGhlcmUncyBhIGdlbmVyYWwgaXNzdWUgdGhhdCdzIHdvcnRoIG1lbnRpb25pbmcuLi4KClRl Y2huaWNhbGx5LCBpdCBzb3VuZHMgbGlrZSBhIG1vcmUgYWNjdXJhdGUgZGVzY3JpcHRpb24gd291 bGQgYmUgIkNvbnRleHQKaXMgYW4gRkZtcGVnIGNvbnZlbnRpb24gdGhhdCBoYXMgYmVjb21lIGZh aXJseSByaWdvcm91cyBvdmVyIHRoZSB5ZWFycyIuCkJ1dCBJTUhPIHJlYWRlcnMgd291bGQgdW5j aGFyaXRhYmx5IHJlYWQgdGhhdCBhcyAiQ29udGV4dCBpcyBzb21lIHdlaXJkCkZGbXBlZyB0aGlu ZyB0aGV5J3JlIHN0dWNrIHdpdGggYmVjYXVzZSB0aGV5IHBpY2tlZCBhIHByZS1PT1AgbGFuZ3Vh Z2UiLgpBcmd1aW5nICJDb250ZXh0IGlzIGEgZGVzaWduIHBhdHRlcm4gdGhhdCBncm91cHMgb2Jq ZWN0cyBieSBsaWZlc3BhbiIKZW1waGFzaXNlcyB0aGUgbGVzc29ucyBhIG5ld2JpZSBjYW4gdGFr ZSBmcm9tIEZGbXBlZyBhbmQgdXNlIGVsc2V3aGVyZSwKc28gdGhleSBnZXQgbW9yZSB2YWx1ZSBm cm9tIHRoZSB0aW1lIHRoZXkgc3BlbnQgcmVhZGluZyB0aGUgZG9jdW1lbnQuCkkndmUgdHJpZWQg dG8gd3JpdGUgdGhlIGRvY3VtZW50IHRvIHN0YXJ0IHdpdGggdGhlIG1vcmUgdXNlZnVsIGFyZ3Vt ZW50LAp0aGVuIGdyYWR1YWxseSBlYXNlIGluIHRvIHRoZSBtb3JlIGFjY3VyYXRlIG9uZS4KCk5v dGU6IEkgcHJldmlvdXNseSBzZW50IHRoaXMgZnJvbSB0aGUgd3JvbmcgZS1tYWlsIGFkZHJlc3Mg LSBhcG9sb2dpZXMgZm9yCnNwYW0gaWYgdGhlIG90aGVyIG9uZSBtYWtlcyBpdCBwYXN0IG1vZGVy YXRpb24uCgpbMV0gaHR0cHM6Ly9mZm1wZWcub3JnL2RveHlnZW4vdHJ1bmsvcGFnZXMuaHRtbAoK Pgo+PiBAQCAtMCwwICsxLDk2IEBACj4+ICsjIEphcmdvbgo+PiArCj4+ICtUZXJtcyB1c2VkIHRo cm91Z2hvdXQgdGhlIGNvZGUgdGhhdCBkZXZlbG9wZXJzIG1heSBuZWVkIHRvIGtub3cuCj4+ICsK Pj4gK0BhbmNob3IgY29udGV4dAo+PiArCj4+ICsjIyBDb250ZXh0Cj4+ICsKPj4gK0EgZGVzaWdu IHBhdHRlcm4gdGhhdCBzdG9yZXMgdGhlIGNvbnRleHQgKGUuZy4gY29uZmlndXJhdGlvbikgZm9y IGEgc2VyaWVzCj4+ICtvZiBvcGVyYXRpb25zIGluIGEgImNvbnRleHQiIHN0cnVjdHVyZSwgYW5k IG1vdmVzIG90aGVyIGluZm9ybWF0aW9uIGVsc2V3aGVyZS4KPj4gKwo+PiArQ29uc2lkZXIgYSB0 cml2aWFsIHByb2dyYW0gdG8gcHJpbnQgdXBwZXJjYXNlIHRleHQ6Cj4+ICsKPj4gK2BgYGMKPj4g Ky8qCj4+ICsgKiBDb250ZXh0dWFsIGluZm9ybWF0aW9uIGFib3V0IHdoZXJlIHRvIHByaW50IGEg c2VyaWVzIG9mIG1lc3NhZ2VzCj4+ICsgKi8KPiBTdHlsZToKPiAvKioKPiAgICogQ29udGV4dHVh bCBpbmZvcm1hdGlvbiBhYm91dCB3aGVyZSB0byBwcmludCBhIHNlcmllcyBvZiBtZXNzYWdlcwo+ ICAgKi8KPgo+PiArc3RydWN0IFVwcGVyQ2FzZVByaW50ZXJDb250ZXh0IHsKPj4gKyAgICBGSUxF KiBvdXQ7Cj4gaGVyZSBhbmQgYmVsb3csIHVzZToKPiBWQVIgKm91dDsKPgo+IGZvciBvdmVyYWxs IGNvbnNpc3RlbmN5IHdpdGggdGhlIHByb2plY3Qgc3R5bGUuCj4KPj4gK307Cj4+ICsKPj4gKy8q Cj4+ICsgKiBFeHRyYSBpbmZvcm1hdGlvbiBhYm91dCBtZXNzYWdlcyB0byBwcmludC4KPj4gKyAq IFRoaXMgY291bGQgYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyBpbiBhIHNpbmdsZSBjb250ZXh0LAo+ PiArICogb3IgcmV1c2VkIHNldmVyYWwgdGltZXMgYWNyb3NzIG11bHRpcGxlIGNvbnRleHRzLgo+ PiArICovCj4+ICtzdHJ1Y3QgUHJpbnRJbmZvIHsKPj4gKyAgICBjaGFyKiBzdHI7Cj4+ICt9Owo+ PiArCj4+ICt2b2lkIHByaW50KAo+PiArICAgIHN0cnVjdCBVcHBlckNhc2VQcmludGVyQ29udGV4 dCAqIGN0eCwKPj4gKyAgICBzdHJ1Y3QgUHJpbnRJbmZvICogaW5mbwo+PiArKSB7Cj4+ICsgICAg Zm9yICggY2hhciogYyA9IGluZm8tPnN0cjsgKmM7ICsrYyApIHsKPj4gKyAgICAgICAgY2hhciBD ID0gdG91cHBlcigqYyk7Cj4+ICsgICAgICAgIGZ3cml0ZSggJkMsIDEsIDEsIGN0eC0+b3V0ICk7 Cj4+ICsgICAgfQo+PiArfQo+PiArCj4+ICtpbnQgbWFpbigpCj4+ICt7Cj4+ICsgICAgc3RydWN0 IFByaW50SW5mbyBoZWxsbywgd29ybGQ7Cj4+ICsgICAgc3RydWN0IFVwcGVyQ2FzZVByaW50ZXJD b250ZXh0IGN0eDsKPj4gKwo+PiArICAgIGhlbGxvLnN0ciA9ICJoZWxsbywgIjsKPj4gKyAgICB3 b3JsZC5zdHIgPSAid29ybGQhXG4iOwo+PiArCj4+ICsgICAgY3R4Lm91dCA9IHN0ZG91dDsKPj4g Kwo+PiArICAgIHByaW50KCAmY3R4LCAmaGVsbG8gKTsKPj4gKyAgICBwcmludCggJmN0eCwgJndv cmxkICk7Cj4+ICsKPj4gKyAgICByZXR1cm4gMDsKPj4gK30KPiBJJ20gbm90IHN1cmUgdGhpcyBp cyBhIGZpdHRpbmcgZXhhbXBsZS4gVXN1YWxseSB0aGUgY29udGV4dCBpcyBhCj4gcHVibGljIHN0 cnVjdHVyZSBhbmQgdGhlIGludGVybmFsIGNvbnRleHQgKHdoaWNoIGNvcnJlc3BvbmRzIHRvIHRo ZQo+IFByaW50SW5mbyBzdHJ1Y3QpIGlzIHByaXZhdGUgdG8gdGhlIGltcGxlbWVudGF0aW9uLiBJ biB0aGlzIGNhc2UgdGhlCj4gQVBJIHVzZXIgaXMgbm90IGludGVyZXN0ZWQgYXQgYWxsIGF0IGl0 cyBpbXBsbWVudGF0aW9uLgo+Cj4gWW91IGNhbiB0aGluayB0aGUgY29udGV4dCBwcm92aWRlcyB0 aGUgIm9iamVjdCIvaW5zdGFuY2Ugd2hlcmUgc29tZQo+IG9wZXJhdGlvbnMgYXJlIGRvbmUgLSB0 aGlzIGlzIGFsaWtlIGluIG9iamVjdCBvcmllbnRlZCBwcm9ncmFtbWluZywKPiB3aGVyZSB0aGUg Y29udGV4dCBjb3JyZXNwb25kcyB0byB0aGUgc2VsZiwgc28gdGhhdCB5b3UgY3JlYXRlL2FsbG9j YXRlCj4gdGhlIG9iamVjdCwgaW5pdGlhbGl6ZSBpdCwgYW5kIGludm9rZSBvcGVyYXRpb25zIG9u IHRoZSBvYmplY3QuCj4KPiBTbyB1c2luZyB0aGlzIGFuYWxvZ3ksIHRoZSBleGFtcGxlIHdvdWxk IGJlOgo+Cj4gc3RydWN0IFVwcGVyQ2FzZVByaW50ZXJDb250ZXh0IHsuLi59Owo+Cj4gLy8gdGhp cyBjb3JyZXNwb25kcyB0byBhICJtZXRob2QiIGRlZmluZWQgb24gdGhlIGNvbnRleHQvb2JqZWN0 Cj4gdm9pZCB1cHBlcmNhc2VfcHJpbnRlcl9wcmludChVcHBlckNhc2VQcmludGVyQ29udGV4dCAq Y3R4LCBjb25zdCBjaGFyICpzdHIpOwo+Cj4gT3IgbWF5YmUgeW91IHdhbnQgdG8gZGVmaW5lIHRo ZSBwcm9wZXJ0eSBpbiB0aGUgY29udGV4dCBpdHNlbGYsIHNvIHlvdQo+IGRvOgo+IHVwcGVyY2Fz ZV9jdHguc3RyID0gImZvb2JhciI7Cj4KPiB0aGVuIHlvdSBoYXZlOgo+IHZvaWQgdXBwZXJjYXNl X3ByaW50ZXJfcHJpbnQoVXBwZXJDYXNlUHJpbnRlckNvbnRleHQgKmN0eCk7Cj4KPiBPbiBhIHR5 cGljYWwgRkZtcGVnIGNvbnRleHQgeW91IHR5cGljYWxseSBkbyAoc2VlCj4gZG9jL2V4YW1wbGVz L2VuY29kZS5jIGV4YW1wbGUpOgo+ICAgICAgLy8gY3JlYXRlIHRoZSBjb250ZXh0Cj4gICAgICBj ID0gYXZjb2RlY19hbGxvY19jb250ZXh0Myhjb2RlYyk7Cj4KPiAgICAgIC8vIHNldCBwYXJhbWV0 ZXJzLCBlaXRoZXIgaW4gdGhlIGNvbnRleHQgb3IgYnkgdXNpbmcgdGhlIGF2X29wdCBBUEkKPiAg ICAgIGMtPmJpdF9yYXRlID0gNDAwMDAwOwo+ICAgICAgYy0+d2lkdGggPSAzNTI7Cj4gICAgICBj LT5oZWlnaHQgPSAyODg7Cj4gICAgICBjLT50aW1lX2Jhc2UgPSAoQVZSYXRpb25hbCl7MSwgMjV9 Owo+ICAgICAgYy0+ZnJhbWVyYXRlID0gKEFWUmF0aW9uYWwpezI1LCAxfTsKPiAgICAgIC8vIC4u Lgo+Cj4gICAgICAvLyBpbnZva2UgdGhlIG1ldGhvZHMgZGVmaW5lZCBpbiB0aGUgY29udGV4dAo+ ICAgICAgcmV0ID0gYXZjb2RlY19zZW5kX2ZyYW1lKGVuY19jdHgsIGZyYW1lKTsKPiAgICAgIGlm IChyZXQgPCAwKSB7Cj4gICAgICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvciBzZW5kaW5nIGEg ZnJhbWUgZm9yIGVuY29kaW5nXG4iKTsKPiAgICAgICAgICBleGl0KDEpOwo+ICAgICAgfQo+Cj4g ICAgICB3aGlsZSAocmV0ID49IDApIHsKPiAgICAgICAgICByZXQgPSBhdmNvZGVjX3JlY2VpdmVf cGFja2V0KGVuY19jdHgsIHBrdCk7Cj4gICAgICAgICAgaWYgKHJldCA9PSBBVkVSUk9SKEVBR0FJ TikgfHwgcmV0ID09IEFWRVJST1JfRU9GKQo+ICAgICAgICAgICAgICByZXR1cm47Cj4gICAgICAg ICAgZWxzZSBpZiAocmV0IDwgMCkgewo+ICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkVy cm9yIGR1cmluZyBlbmNvZGluZ1xuIik7Cj4gICAgICAgICAgICAgIGV4aXQoMSk7Cj4gICAgICAg ICAgfQo+ICAgICAgICAgIC4uLgo+ICAgICAgICAgIGF2X3BhY2tldF91bnJlZihwa3QpOwo+ICAg ICAgfQo+Cj4gWy4uLl0KPgo+IE5vdGUgYWxzbyB0aGF0ICJjb250ZXh0IiBpbiB0aGUgRkZtcGVn IGphcmdvbiBpcyBub3QgdmVyeSBzcGVjaWZpYwo+IGJlY2F1c2UgaXQgbWlnaHQgYmUgZGlmZmVy ZW50IGRlcGVuZGluZyBvbiB0aGUgaW1wbGVtZW50YXRpb24sIGZvcgo+IGV4YW1wbGUgaXQgbWln aHQgbm90IGhhdmUgYW4gYXZfb3B0XyogaW50ZXJmYWNlIChmb3IgZXhhbXBsZQo+IGxpYmF2dXRp bC9oYXNoLmgpLgo+Cj4+ICtgYGAKPj4gKwo+PiArVGhlIGBVcHBlckNhc2VQcmludGVyQ29udGV4 dGAgb2JqZWN0IGNvbnRhaW5zIHRoZSBpbmZvcm1hdGlvbiB0aGF0J3MgYWJvdXQKPj4gK3RoZSBj b250ZXh0IG9mIHRoZSBjdXJyZW50IGpvYiAoaS5lLiBwcmludGluZyB0aGluZ3MgdG8gc3RhbmRh cmQgb3V0cHV0KS4KPiBJIGZpbmQgdGhpcyBjb25mdXNpbmcsIGl0IGlzIGVzc2VudGlhbGx5IHNh eWluZyB0aGF0IHRoZSBjb250ZXh0ICh0aGUKPiAib2JqZWN0IikgaXMgdGhlIGNvbnRleHQgb2Yg dGhlIGN1cnJlbnQgam9iLgo+Cj4+ICtJbmZvcm1hdGlvbiB3aXRoIGEgbGlmZXRpbWUgZGlmZmVy ZW50IHRoYW4gdGhhdCBvZiB0aGUgY29udGV4dCBpcyBtb3ZlZAo+PiArdG8gdGhlIGBQcmludElu Zm9gIG9iamVjdC4KPj4gKwo+PiArRkZtcGVnJ3MgbWFpbiBjb250ZXh0IHN0cnVjdHVyZXMgYWxs IGhhcHBlbiB0byBmYWNlIHNvbWUgY29tbW9uIHByb2JsZW1zOgo+PiArCj4+ICstIHF1ZXJ5aW5n LCBzZXR0aW5nIGFuZCBnZXR0aW5nIG9wdGlvbnMKPj4gKy0gaGFuZGxpbmcgInByaXZhdGUiIGlu dGVybmFsIGNvbnRleHQsIGluY2x1ZGluZyBvcHRpb25zIGZvcgo+PiArICBhIHBhcnRpY3VsYXIg aW5zdGFuY2Ugb2YgdGhlIGdlbmVyaWMgY29udGV4dAo+PiArLSBjb25maWd1cmluZyBsb2cgbWVz c2FnZSB2ZXJib3NpdHkgYW5kIGNvbnRlbnQKPj4gKwo+PiArRkZtcGVnIGdyYWR1YWxseSBjb252 ZXJnZWQgb24gdGhlIEFWQ2xhc3Mgc3RydWN0IHRvIHN0b3JlIHRoaXMgaW5mb3JtYXRpb24sCj4+ ICt0aGVuIGNvbnZlcmdlZCBvbiB0aGUgQHJlZiBhdm9wdGlvbnMgIkFWT3B0aW9ucyIgc3lzdGVt IHRvIG1hbmlwdWxhdGUgaXQsCj4+ICtzbyBtb2Rlcm4gY29kZSBvZnRlbiB1c2VzIHRoZSB0ZXJt cyAiY29udGV4dCIsICJBVkNsYXNzIGNvbnRleHQgc3RydWN0dXJlIgo+PiArYW5kICJBVk9wdGlv bnMtZW5hYmxlZCBzdHJ1Y3QiIGludGVyY2hhbmdlYWJseS4gIEJ1dCBpdCBpcyBvY2Nhc2lvbmFs bHkKPj4gK25lY2Vzc2FyeSB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIHRoZW0gLSBmb3IgZXhhbXBs ZSwgQVZNZWRpYUNvZGVjQ29udGV4dAo+PiAraXMgYSBjb250ZXh0IHRoYXQgZG9lcyBub3QgdXNl IEFWQ2xhc3MuCj4+ICsKPj4gK1RvIHVuZGVyc3RhbmQgaG93IHRoaXMgYWxsIHdvcmtzLCBjb25z aWRlciBzb21lIHJlcXVpcmVtZW50cyBmb3IgdGhlCj4+ICtgbGlieDI2NGAgZW5jb2RlcjoKPj4g Kwo+PiArLSBpdCBoYXMgdG8gc3VwcG9ydCBjb21tb24gZW5jb2RlciBvcHRpb25zIGxpa2UgImJp dHJhdGUiCj4+ICstIGl0IGhhcyB0byBzdXBwb3J0IGVuY29kZXItc3BlY2lmaWMgb3B0aW9ucyBs aWtlICJwcm9maWxlIgo+PiArLSBpdCBoYXMgdG8gcHJvdmlkZSB1c2VmdWwgZmVlZGJhY2sgYWJv dXQgdW5zdXBwb3J0ZWQgb3B0aW9ucwo+PiArCj4+ICtDb21tb24gZW5jb2RlciBvcHRpb25zIGxp a2UgImJpdHJhdGUiIGFyZSBzdG9yZWQgaW4gdGhlIEFWQ29kZWNDb250ZXh0IGNsYXNzLAo+PiAr d2hpbGUgZW5jb2Rlci1zcGVjaWZpYyBvcHRpb25zIGxpa2UgInByb2ZpbGUiIGFyZSBzdG9yZWQg aW4gYW4gWDI2NENvbnRleHQKPj4gK2luc3RhbmNlIGluIEFWQ29kZWNDb250ZXh0Ojpwcml2X2Rh dGEuICBUaGVzZSBvcHRpb25zIGFyZSB0aGVuIGV4cG9zZWQgdG8KPj4gK3VzZXJzIHRocm91Z2gg YSB0cmVlIG9mIEFWT3B0aW9uIG9iamVjdHMsIHdoaWNoIGluY2x1ZGUgdXNlci12aXNpYmxlIGhl bHAKPj4gK3RleHQgYW5kIG1hY2hpbmUtcmVhZGFibGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG1l bW9yeSBsb2NhdGlvbiB0byByZWFkL3dyaXRlCj4+ICtlYWNoIG9wdGlvbi4gIENvbW1vbiBAcmVm IGF2b3B0aW9ucyAiQVZPcHRpb25zIiBmdW5jdGlvbmFsaXR5IGxldHMgeW91IGdldAo+PiArYW5k IHNldCB0aG9zZSB2YWx1ZXMsIGFuZCBwcm92aWRlcyByZWFkYWJsZSBmZWVkYmFjayBhYm91dCBl cnJvcnMuCj4+IEFsdGhvdWdoIFgyNjRDb250ZXh0IGNhbiBiZSBzZXQgYnkgdXNlcnMsCj4gQ2Fu IGl0PyBUaGUgWDI2NENvbnRleHQgaXMgZGVmaW5lZCB3aXRoaW4gdGhlIGltcGxlbWVudGF0aW9u LCBzbyBpdCBpcwo+IG5vdCBleHBvc2VkIHRvIHRoZSB1c2VyLCB0aGUgb25seSB3YXkgdG8gc2V0 IGl0IGlzIHRocm91Z2ggdGhlIHByaXZhdGUKPiBvcHRpb25zIHRvIGJlIHNldCB0aHJvdWdoIHRo ZSBBVkNvZGVjQ29udGV4dCBvcHRpb25zIHRocm91Z2ggdGhlCj4gYXZfb3B0IEFQSSAtIGluIG90 aGVyIHdvcmRzIHlvdSBjYW5ub3Qgc2V0IHRoZSBjb250ZXh0IGRpcmVjdGx5IGFzIHlvdQo+IGRv IHdpdGggdGhlICJnZW5lcmljIiBvcHRpb25zIGRlZmluZWQgaW4gdGhlIEFWQ29kZWNDb250ZXh0 Lgo+Cj4+IGl0IGlzIG5vdCBwYXJ0IG9mIHRoZSBwdWJsaWMgaW50ZXJmYWNlLCBzbyBuZXcgcmVs ZWFzZXMgY2FuIG1vZGlmeQo+PiBpdCB3aXRob3V0IGFmZmVjdGluZyB0aGUgQVBJIHZlcnNpb24u Cj4gWy4uLl0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xwo+IGZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKPiBmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwo+ IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAo+Cj4gVG8g dW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCj4gZmZtcGVnLWRldmVsLXJl cXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4KPgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGlu ZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUs IG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1 bnN1YnNjcmliZSIuCg==