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 ESMTPS id 0011A4C897 for ; Tue, 11 Mar 2025 19:07:14 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0A90668E1B9; Tue, 11 Mar 2025 21:07:10 +0200 (EET) Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4333168E180 for ; Tue, 11 Mar 2025 21:07:04 +0200 (EET) Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-224100e9a5cso112637995ad.2 for ; Tue, 11 Mar 2025 12:07:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741720022; x=1742324822; darn=ffmpeg.org; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=a4+D6E4RT0yCzpogFUKnP8cJ/NWCVXcwGwHsVIgafZE=; b=R/ujo0zD4KwewYHIn3ct74ic2Cnwz+x65DX9yfJKSrpkWREOhWHvLB7OleoaZQK99k btkGfRkKqbubggltiE/T/vH14EzMGFTMrOthHxdlc32zOAHOD6HUdXUYlzjvfOG46O25 t+7rCHfjRuHnRWzJxuN1E5xdt/fNZIralhE/os1V55DqxbkEOsoMdNZvMXZHeBevaP8p wGMSOMSXqJ/0qbxAzfaB5jCT+wPzZE3nKOdUEOeOPDiwFPYUHuIJhzXjvG5rJEQF9a+W gjBths7JdYS9cWB9vq3GNZtmQvOyIcPHoS5rgEKfs8SNwYHdnaszt93VRY719iL8O2ZL 4jAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741720022; x=1742324822; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=a4+D6E4RT0yCzpogFUKnP8cJ/NWCVXcwGwHsVIgafZE=; b=RaPFT7NI40jJn4h839gUn1M4BULVvyTfI2rEM8SoC4iH6K0SUuMVs7FpbJfoM3wU+J F9jOR1dJScq1OVchaavpC2iIUqCNS/IvWbh9Irz4qNsloUcU3maNKWKqnrx2jhDSluZx DQzhRvQuMLlhRnocaZox0Dra3D98cC5/iFOALZs7zOKf+onFNjTH56DJP4oyU9+sHwea Jg4pOenaISNQFoa1zi7RryDCgc7m+Srmzuk3C+pM4zBq/YSDTOEQBO68mmM53docUAPm fJ+65KsZKh+B2wIZQWD/qn3+d/jotQ4C6qIbrcydLOxt9tIihZuRDXCZH/oV8YxOJavl Ry2A== X-Gm-Message-State: AOJu0YyTzmADU7aJNQrMI7QoSqwJ9+ajItYXiiY++dxTSxbwfuRVPTU7 Udga4F11X7VMDFgm1qPKk1HTz3/y8vwtL08NNdnbZamQbSjFxMNqWIM5FA== X-Gm-Gg: ASbGncsLXbUsAdo+lgX2r3CLSL46AvW36fSV2/Ii17MXsEELNmvWS5Ap3l3yhg9kgTP LYiQGmKHbc4ZRCaiNidM9v7RpyrH0Pv6reaXL/evbKsM780K5EnZxnN24CBABujLVPi0by94OEn tz87HGIFPhw3TSkvaYvi3k3H9odnjYJ6sqyu0dows7z1uySH7lNyCgjFnZwieH/RqKmnJM//AOK XeM2uh6QG79b6/+RGQS+HegsJNqnGdDS7PbyNRMSZq66ZZIwAa+75DSQhXYibdI1/8TkLNkRrtE aFKGGOx2mVdDBkmOqayfYY48QYbow3LneoaPpkFpNd/pOQpS3GmWiOCBRzs5oeTJBG9mcVwY0qK 2swprj3/PYbNo X-Google-Smtp-Source: AGHT+IHTADs3V3KviRDNz9rrweIfx1MMnoCPYKFild515ioSxyNBGqmCqoZkpe9moweqQMSZgtQfdQ== X-Received: by 2002:a17:903:41c2:b0:220:e9f5:4b7c with SMTP id d9443c01a7336-2242889f0abmr274952335ad.17.1741720021420; Tue, 11 Mar 2025 12:07:01 -0700 (PDT) Received: from ?IPV6:2800:2121:b040:c:81f1:6a4b:e33b:1c7? ([2800:2121:b040:c:81f1:6a4b:e33b:1c7]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-22410a91971sm101673375ad.165.2025.03.11.12.06.59 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 11 Mar 2025 12:07:00 -0700 (PDT) Message-ID: <02eb0006-be20-446e-979a-916f1e81e75d@gmail.com> Date: Tue, 11 Mar 2025 16:06:58 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: James Almer To: ffmpeg-devel@ffmpeg.org References: <20250310004552.2980855-1-michael@niedermayer.cc> <20250311005906.GV4991@pb2> <79552cb3-9928-4be1-accf-4a87d39a2849@gmail.com> Content-Language: en-US In-Reply-To: <79552cb3-9928-4be1-accf-4a87d39a2849@gmail.com> Subject: Re: [FFmpeg-devel] [PATCH] ffv1: implement remap for encode/decode_plane() 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-Type: multipart/mixed; boundary="===============3929984710199050123==" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --===============3929984710199050123== Content-Language: en-US Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------PmyzNp00LG5wovGOKGqGuq9U" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------PmyzNp00LG5wovGOKGqGuq9U Content-Type: multipart/mixed; boundary="------------ymvIHT2lbeRhS09GR4ix6W4H"; protected-headers="v1" From: James Almer To: ffmpeg-devel@ffmpeg.org Message-ID: <02eb0006-be20-446e-979a-916f1e81e75d@gmail.com> Subject: Re: [FFmpeg-devel] [PATCH] ffv1: implement remap for encode/decode_plane() References: <20250310004552.2980855-1-michael@niedermayer.cc> <20250311005906.GV4991@pb2> <79552cb3-9928-4be1-accf-4a87d39a2849@gmail.com> In-Reply-To: <79552cb3-9928-4be1-accf-4a87d39a2849@gmail.com> --------------ymvIHT2lbeRhS09GR4ix6W4H Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 DQoNCk9uIDMvMTEvMjAyNSAxMToxMyBBTSwgSmFtZXMgQWxtZXIgd3JvdGU6DQo+IE9uIDMv MTAvMjAyNSA5OjU5IFBNLCBNaWNoYWVsIE5pZWRlcm1heWVyIHdyb3RlOg0KPj4gT24gTW9u LCBNYXIgMTAsIDIwMjUgYXQgMDY6NDg6MjlQTSArMDEwMCwgTHlubmUgd3JvdGU6DQo+Pj4g T24gMTAvMDMvMjAyNSAwMTo0NSwgTWljaGFlbCBOaWVkZXJtYXllciB3cm90ZToNCj4+Pj4g U3BvbnNvcmVkLWJ5OiBTb3ZlcmVpZ24gVGVjaCBGdW5kDQo+Pj4+IFNpZ25lZC1vZmYtYnk6 IE1pY2hhZWwgTmllZGVybWF5ZXIgPG1pY2hhZWxAbmllZGVybWF5ZXIuY2M+DQo+Pj4+IC0t LQ0KPj4+PiDCoMKgIGxpYmF2Y29kZWMvZmZ2MWRlYy5jIHwgMjAgKysrKysrKystLS0tLQ0K Pj4+PiDCoMKgIGxpYmF2Y29kZWMvZmZ2MWVuYy5jIHwgNjcgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKyANCj4+Pj4gKy0tLS0tLQ0KPj4+PiDCoMKgIDIgZmlsZXMg Y2hhbmdlZCwgNzEgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pDQo+Pj4+DQo+Pj4+ IGRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2ZmdjFkZWMuYyBiL2xpYmF2Y29kZWMvZmZ2MWRl Yy5jDQo+Pj4+IGluZGV4IDk3MzhlNGU5YzlmLi43MmM5M2ZjZjBjZCAxMDA2NDQNCj4+Pj4g LS0tIGEvbGliYXZjb2RlYy9mZnYxZGVjLmMNCj4+Pj4gKysrIGIvbGliYXZjb2RlYy9mZnYx ZGVjLmMNCj4+Pj4gQEAgLTkyLDcgKzkyLDcgQEAgc3RhdGljIGludCBpc19pbnB1dF9lbmQo UmFuZ2VDb2RlciAqYywgDQo+Pj4+IEdldEJpdENvbnRleHQgKmdiLCBpbnQgYWMpDQo+Pj4+ IMKgwqAgc3RhdGljIGludCBkZWNvZGVfcGxhbmUoRkZWMUNvbnRleHQgKmYsIEZGVjFTbGlj ZUNvbnRleHQgKnNjLA0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIEdldEJpdENvbnRleHQgKmdiLA0KPj4+PiDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHVpbnQ4X3QgKnNy YywgaW50IHcsIGludCBoLCBpbnQgc3RyaWRlLCANCj4+Pj4gaW50IHBsYW5lX2luZGV4LA0K Pj4+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBp bnQgcGl4ZWxfc3RyaWRlLCBpbnQgYWMpDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGludCByZW1hcF9pbmRleCwgaW50IHBpeGVsX3N0 cmlkZSwgaW50IGFjKQ0KPj4+PiDCoMKgIHsNCj4+Pj4gwqDCoMKgwqDCoMKgIGludCB4LCB5 Ow0KPj4+PiDCoMKgwqDCoMKgwqAgaW50MTZfdCAqc2FtcGxlWzJdOw0KPj4+PiBAQCAtMTE2 LDEyICsxMTYsMTggQEAgc3RhdGljIGludCBkZWNvZGVfcGxhbmUoRkZWMUNvbnRleHQgKmYs IA0KPj4+PiBGRlYxU2xpY2VDb250ZXh0ICpzYywNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBpbnQgcmV0ID0gZGVjb2RlX2xpbmUoZiwgc2MsIGdiLCB3LCBzYW1wbGUs IA0KPj4+PiBwbGFuZV9pbmRleCwgOCwgYWMpOw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIGlmIChyZXQgPCAwKQ0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgcmV0dXJuIHJldDsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg aWYgKHNjLT5yZW1hcCkNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBm b3IgKHggPSAwOyB4IDwgdzsgeCsrKQ0KPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgc2FtcGxlWzFdW3hdID0gc2MtPmZsdG1hcFtyZW1hcF9pbmRleF0g DQo+Pj4+IFtzYW1wbGVbMV1beF1dOw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGZvciAoeCA9IDA7IHggPCB3OyB4KyspDQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBzcmNbeCpwaXhlbF9zdHJpZGUgKyBzdHJpZGUgKiB5XSA9IHNh bXBsZVsxXVt4XTsNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgfSBlbHNlIHsNCj4+Pj4g wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpbnQgcmV0ID0gZGVjb2RlX2xpbmUoZiwg c2MsIGdiLCB3LCBzYW1wbGUsIA0KPj4+PiBwbGFuZV9pbmRleCwgZi0+YXZjdHgtPmJpdHNf cGVyX3Jhd19zYW1wbGUsIGFjKTsNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBpZiAocmV0IDwgMCkNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHJldHVybiByZXQ7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChzYy0+ cmVtYXApDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZm9yICh4ID0g MDsgeCA8IHc7IHgrKykNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHNhbXBsZVsxXVt4XSA9IHNjLT5mbHRtYXBbcmVtYXBfaW5kZXhdIA0KPj4+PiBb c2FtcGxlWzFdW3hdXTsNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAo Zi0+cGFja2VkX2F0X2xzYikgew0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgZm9yICh4ID0gMDsgeCA8IHc7IHgrKykgew0KPj4+PiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoKHVpbnQxNl90Kikoc3JjICsgc3Ry aWRlKnkpKVt4KnBpeGVsX3N0cmlkZV0gDQo+Pj4+ID0gc2FtcGxlWzFdW3hdOw0KPj4+PiBA QCAtMzQ3LDE3ICszNTMsMTcgQEAgc3RhdGljIGludCBkZWNvZGVfc2xpY2UoQVZDb2RlY0Nv bnRleHQgKmMsIA0KPj4+PiB2b2lkICphcmcpDQo+Pj4+IMKgwqDCoMKgwqDCoCBpZiAoZi0+ Y29sb3JzcGFjZSA9PSAwICYmIChmLT5jaHJvbWFfcGxhbmVzIHx8ICFmLSANCj4+Pj4gPnRy YW5zcGFyZW5jeSkpIHsNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29uc3QgaW50IGN4 wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHggPj4gZi0+Y2hyb21hX2hfc2hpZnQ7DQo+Pj4+ IMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IGludCBjecKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgPSB5ID4+IGYtPmNocm9tYV92X3NoaWZ0Ow0KPj4+PiAtwqDCoMKgwqDCoMKgwqAgZGVj b2RlX3BsYW5lKGYsIHNjLCAmZ2IsIHAtPmRhdGFbMF0gKyBwcyp4ICsgeSpwLSANCj4+Pj4g PmxpbmVzaXplWzBdLCB3aWR0aCwgaGVpZ2h0LCBwLT5saW5lc2l6ZVswXSwgMCwgMSwgYWMp Ow0KPj4+PiArwqDCoMKgwqDCoMKgwqAgZGVjb2RlX3BsYW5lKGYsIHNjLCAmZ2IsIHAtPmRh dGFbMF0gKyBwcyp4ICsgeSpwLSANCj4+Pj4gPmxpbmVzaXplWzBdLCB3aWR0aCwgaGVpZ2h0 LCBwLT5saW5lc2l6ZVswXSwgMCwgMCwgMSwgYWMpOw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoCBpZiAoZi0+Y2hyb21hX3BsYW5lcykgew0KPj4+PiAtwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBkZWNvZGVfcGxhbmUoZiwgc2MsICZnYiwgcC0+ZGF0YVsxXSArIHBzKmN4K2N5KnAt IA0KPj4+PiA+bGluZXNpemVbMV0sIGNocm9tYV93aWR0aCwgY2hyb21hX2hlaWdodCwgcC0+ bGluZXNpemVbMV0sIDEsIDEsIGFjKTsNCj4+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg ZGVjb2RlX3BsYW5lKGYsIHNjLCAmZ2IsIHAtPmRhdGFbMl0gKyBwcypjeCtjeSpwLSANCj4+ Pj4gPmxpbmVzaXplWzJdLCBjaHJvbWFfd2lkdGgsIGNocm9tYV9oZWlnaHQsIHAtPmxpbmVz aXplWzJdLCAxLCAxLCBhYyk7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRlY29k ZV9wbGFuZShmLCBzYywgJmdiLCBwLT5kYXRhWzFdICsgcHMqY3grY3kqcC0gDQo+Pj4+ID5s aW5lc2l6ZVsxXSwgY2hyb21hX3dpZHRoLCBjaHJvbWFfaGVpZ2h0LCBwLT5saW5lc2l6ZVsx XSwgMSwgMSwgMSwgDQo+Pj4+IGFjKTsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg ZGVjb2RlX3BsYW5lKGYsIHNjLCAmZ2IsIHAtPmRhdGFbMl0gKyBwcypjeCtjeSpwLSANCj4+ Pj4gPmxpbmVzaXplWzJdLCBjaHJvbWFfd2lkdGgsIGNocm9tYV9oZWlnaHQsIHAtPmxpbmVz aXplWzJdLCAxLCAyLCAxLCANCj4+Pj4gYWMpOw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDC oCB9DQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChmLT50cmFuc3BhcmVuY3kpDQo+ Pj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRlY29kZV9wbGFuZShmLCBzYywgJmdiLCBw LT5kYXRhWzNdICsgcHMqeCArIHkqcC0gDQo+Pj4+ID5saW5lc2l6ZVszXSwgd2lkdGgsIGhl aWdodCwgcC0+bGluZXNpemVbM10sIChmLT52ZXJzaW9uID49IDQgJiYgIWYtIA0KPj4+PiA+ Y2hyb21hX3BsYW5lcykgPyAxIDogMiwgMSwgYWMpOw0KPj4+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBkZWNvZGVfcGxhbmUoZiwgc2MsICZnYiwgcC0+ZGF0YVszXSArIHBzKnggKyB5 KnAtIA0KPj4+PiA+bGluZXNpemVbM10sIHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzNd LCAoZi0+dmVyc2lvbiA+PSA0ICYmICFmLSANCj4+Pj4gPmNocm9tYV9wbGFuZXMpID8gMSA6 IDIsIDIsIDEsIGFjKTsNCj4+Pj4gwqDCoMKgwqDCoMKgIH0gZWxzZSBpZiAoZi0+Y29sb3Jz cGFjZSA9PSAwKSB7DQo+Pj4+IC3CoMKgwqDCoMKgwqDCoMKgIGRlY29kZV9wbGFuZShmLCBz YywgJmdiLCBwLT5kYXRhWzBdICsgcHMqeCArIHkqcC0gDQo+Pj4+ID5saW5lc2l6ZVswXcKg wqDCoCAsIHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzBdLCAwLCAyLCBhYyk7DQo+Pj4+ IC3CoMKgwqDCoMKgwqDCoMKgIGRlY29kZV9wbGFuZShmLCBzYywgJmdiLCBwLT5kYXRhWzBd ICsgcHMqeCArIHkqcC0gDQo+Pj4+ID5saW5lc2l6ZVswXSArIDEsIHdpZHRoLCBoZWlnaHQs IHAtPmxpbmVzaXplWzBdLCAxLCAyLCBhYyk7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgIGRl Y29kZV9wbGFuZShmLCBzYywgJmdiLCBwLT5kYXRhWzBdICsgcHMqeCArIHkqcC0gDQo+Pj4+ ID5saW5lc2l6ZVswXcKgwqDCoCAsIHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzBdLCAw LCAwLCAyLCBhYyk7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgIGRlY29kZV9wbGFuZShmLCBz YywgJmdiLCBwLT5kYXRhWzBdICsgcHMqeCArIHkqcC0gDQo+Pj4+ID5saW5lc2l6ZVswXSAr IDEsIHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzBdLCAxLCAxLCAyLCBhYyk7DQo+Pj4+ IMKgwqDCoMKgwqDCoCB9IGVsc2UgaWYgKGYtPnVzZTMyYml0KSB7DQo+Pj4+IMKgwqDCoMKg wqDCoMKgwqDCoMKgIHVpbnQ4X3QgKnBsYW5lc1s0XSA9IHsgcC0+ZGF0YVswXSArIHBzICog eCArIHkgKiBwLSANCj4+Pj4gPmxpbmVzaXplWzBdLA0KPj4+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcC0+ ZGF0YVsxXSArIHBzICogeCArIHkgKiBwLSANCj4+Pj4gPmxpbmVzaXplWzFdLA0KPj4+PiBk aWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9mZnYxZW5jLmMgYi9saWJhdmNvZGVjL2ZmdjFlbmMu Yw0KPj4+PiBpbmRleCBmMzA0MTIxOWI3MS4uNGM1NWMwMTI2M2IgMTAwNjQ0DQo+Pj4+IC0t LSBhL2xpYmF2Y29kZWMvZmZ2MWVuYy5jDQo+Pj4+ICsrKyBiL2xpYmF2Y29kZWMvZmZ2MWVu Yy5jDQo+Pj4+IEBAIC0yNzIsNyArMjcyLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHB1dF92 bGNfc3ltYm9sKFB1dEJpdENvbnRleHQgDQo+Pj4+ICpwYiwgVmxjU3RhdGUgKmNvbnN0IHN0 YXRlLA0KPj4+PiDCoMKgIHN0YXRpYyBpbnQgZW5jb2RlX3BsYW5lKEZGVjFDb250ZXh0ICpm LCBGRlYxU2xpY2VDb250ZXh0ICpzYywNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCB1aW50OF90ICpzcmMsIGludCB3 LCBpbnQgaCwNCj4+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBpbnQgc3RyaWRlLCBpbnQgcGxhbmVfaW5kZXgsIGludCANCj4+Pj4gcGl4 ZWxfc3RyaWRlLCBpbnQgYWMpDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIGludCBzdHJpZGUsIGludCBwbGFuZV9pbmRleCwgaW50IA0K Pj4+PiByZW1hcF9pbmRleCwgaW50IHBpeGVsX3N0cmlkZSwgaW50IGFjKQ0KPj4+PiDCoMKg IHsNCj4+Pj4gwqDCoMKgwqDCoMKgIGludCB4LCB5LCBpLCByZXQ7DQo+Pj4+IMKgwqDCoMKg wqDCoCBjb25zdCBpbnQgcGFzczEgPSAhIShmLT5hdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19G TEFHX1BBU1MxKTsNCj4+Pj4gQEAgLTI4OCw5ICsyODgsMTQgQEAgc3RhdGljIGludCBlbmNv ZGVfcGxhbmUoRkZWMUNvbnRleHQgKmYsIA0KPj4+PiBGRlYxU2xpY2VDb250ZXh0ICpzYywN Cj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2FtcGxlWzBdWy0xXT0gc2FtcGxlWzFdWzDC oCBdOw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzYW1wbGVbMV1bIHddPSBzYW1wbGVb MV1bdy0xXTsNCj4+Pj4gKw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoZi0+Yml0 c19wZXJfcmF3X3NhbXBsZSA8PSA4KSB7DQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgZm9yICh4ID0gMDsgeCA8IHc7IHgrKykNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHNhbXBsZVswXVt4XSA9IHNyY1t4ICogcGl4ZWxfc3RyaWRl ICsgc3RyaWRlICogeV07DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChzYy0+ cmVtYXApDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZm9yICh4ID0g MDsgeCA8IHc7IHgrKykNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHNhbXBsZVswXVt4XSA9IHNjLT5mbHRtYXBbcmVtYXBfaW5kZXhdIA0KPj4+PiBb IHNhbXBsZVswXVt4XSBdOw0KPj4+PiArDQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgaWYoKHJldCA9IGVuY29kZV9saW5lKGYsIHNjLCBmLT5hdmN0eCwgdywgc2FtcGxl LCANCj4+Pj4gcGxhbmVfaW5kZXgsIDgsIGFjLCBwYXNzMSkpIDwgMCkNCj4+Pj4gwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiByZXQ7DQo+Pj4+IMKgwqDC oMKgwqDCoMKgwqDCoMKgIH0gZWxzZSB7DQo+Pj4+IEBAIC0zMDMsNiArMzA4LDEwIEBAIHN0 YXRpYyBpbnQgZW5jb2RlX3BsYW5lKEZGVjFDb250ZXh0ICpmLCANCj4+Pj4gRkZWMVNsaWNl Q29udGV4dCAqc2MsDQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHNhbXBsZVswXVt4XSA9ICgodWludDE2X3QqKShzcmMgKyBzdHJpZGUqeSkp IA0KPj4+PiBbeF0gPj4gKDE2IC0gZi0+Yml0c19wZXJfcmF3X3NhbXBsZSk7DQo+Pj4+IMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9DQo+Pj4+IMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgfQ0KPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAo c2MtPnJlbWFwKQ0KPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZvciAo eCA9IDA7IHggPCB3OyB4KyspDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBzYW1wbGVbMF1beF0gPSBzYy0+Zmx0bWFwW3JlbWFwX2luZGV4XSANCj4+ Pj4gWyBzYW1wbGVbMF1beF0gXTsNCj4+Pj4gKw0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIGlmKChyZXQgPSBlbmNvZGVfbGluZShmLCBzYywgZi0+YXZjdHgsIHcsIHNh bXBsZSwgDQo+Pj4+IHBsYW5lX2luZGV4LCBmLT5iaXRzX3Blcl9yYXdfc2FtcGxlLCBhYywg cGFzczEpKSA8IDApDQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCByZXR1cm4gcmV0Ow0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9DQo+Pj4+IEBAIC0z MTAsNiArMzE5LDMwIEBAIHN0YXRpYyBpbnQgZW5jb2RlX3BsYW5lKEZGVjFDb250ZXh0ICpm LCANCj4+Pj4gRkZWMVNsaWNlQ29udGV4dCAqc2MsDQo+Pj4+IMKgwqDCoMKgwqDCoCByZXR1 cm4gMDsNCj4+Pj4gwqDCoCB9DQo+Pj4+ICtzdGF0aWMgdm9pZCBsb2FkX3BsYW5lKEZGVjFD b250ZXh0ICpmLCBGRlYxU2xpY2VDb250ZXh0ICpzYywNCj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCB1aW50OF90ICpzcmMsIGludCB3 LCBpbnQgaCwNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBpbnQgc3RyaWRlLCBpbnQgcmVtYXBfaW5kZXgsIGludCBwaXhlbF9zdHJpZGUpDQo+ Pj4+ICt7DQo+Pj4+ICvCoMKgwqAgaW50IHgsIHk7DQo+Pj4+ICsNCj4+Pj4gK8KgwqDCoCBt ZW1zZXQoc2MtPmZsdG1hcFtyZW1hcF9pbmRleF0sIDAsIHNpemVvZihzYy0gDQo+Pj4+ID5m bHRtYXBbcmVtYXBfaW5kZXhdKSk7DQo+Pj4+ICsNCj4+Pj4gK8KgwqDCoCBmb3IgKHkgPSAw OyB5IDwgaDsgeSsrKSB7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAoZi0+Yml0c19wZXJf cmF3X3NhbXBsZSA8PSA4KSB7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZvciAo eCA9IDA7IHggPCB3OyB4KyspDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgc2MtPmZsdG1hcFtyZW1hcF9pbmRleF1bIHNyY1t4ICogcGl4ZWxfc3RyaWRlICsgDQo+ Pj4+IHN0cmlkZSAqIHldIF0gPSAxOw0KPj4+PiArwqDCoMKgwqDCoMKgwqAgfSBlbHNlIHsN Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGYtPnBhY2tlZF9hdF9sc2IpIHsN Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb3IgKHggPSAwOyB4IDwg dzsgeCsrKQ0KPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg c2MtPmZsdG1hcFtyZW1hcF9pbmRleF1bICgodWludDE2X3QqKShzcmMgKyANCj4+Pj4gc3Ry aWRlKnkpKVt4XSBdID0gMTsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfSBlbHNl IHsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb3IgKHggPSAwOyB4 IDwgdzsgeCsrKQ0KPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgc2MtPmZsdG1hcFtyZW1hcF9pbmRleF1bICgodWludDE2X3QqKShzcmMgKyANCj4+Pj4g c3RyaWRlKnkpKVt4XSA+PiAoMTYgLSBmLT5iaXRzX3Blcl9yYXdfc2FtcGxlKSBdID0gMTsN Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfQ0KPj4+PiArwqDCoMKgwqDCoMKgwqAg fQ0KPj4+PiArwqDCoMKgIH0NCj4+Pj4gK30NCj4+Pj4gKw0KPj4+PiDCoMKgIHN0YXRpYyB2 b2lkIHdyaXRlX3F1YW50X3RhYmxlKFJhbmdlQ29kZXIgKmMsIGludDE2X3QgKnF1YW50X3Rh YmxlKQ0KPj4+PiDCoMKgIHsNCj4+Pj4gwqDCoMKgwqDCoMKgIGludCBsYXN0ID0gMDsNCj4+ Pj4gQEAgLTExNzgsOCArMTIxMSwyNCBAQCByZXRyeToNCj4+Pj4gwqDCoMKgwqDCoMKgIH0N Cj4+Pj4gwqDCoMKgwqDCoMKgIGlmIChzYy0+cmVtYXApIHsNCj4+Pj4gLcKgwqDCoMKgwqDC oMKgIGlmIChmLT5jb2xvcnNwYWNlID09IDApIHsNCj4+Pj4gLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgYXZfYXNzZXJ0MCgwKTsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGlmIChmLT5jb2xv cnNwYWNlID09IDAgJiYgYy0+cGl4X2ZtdCAhPSBBVl9QSVhfRk1UX1lBOCkgew0KPj4+PiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBpbnQgY3jCoMKgwqDCoMKgwqDCoMKgwqDC oMKgID0geCA+PiBmLT5jaHJvbWFfaF9zaGlmdDsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgY29uc3QgaW50IGN5wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IHkgPj4gZi0+Y2hy b21hX3Zfc2hpZnQ7DQo+Pj4+ICsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgLy9U T0RPIGRlY2lkZSBvbiB0aGUgb3JkZXIgZm9yIHRoZSBlbmNvZGVkIHJlbWFwcyBhbmQgDQo+ Pj4+IGxvYWRzLiB3aXRoIGdvbG9tYiByaWNlIGl0DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIC8vIGVhc2llciB0byBoYXZlIGFsbCByYW5nZSBjb2RlZCBvbmVzIHRvZ2V0aGVy LCANCj4+Pj4gb3RoZXJ3aXNlIGl0IG1heSBiZSBuaWNlciB0byBoYW5kbGUgZWFjaCBwbGFu ZSBhcyBhIHdob2xlPw0KPj4+PiArDQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxv YWRfcGxhbmUoZiwgc2MsIHAtPmRhdGFbMF0gKyBwcyp4ICsgeSpwLT5saW5lc2l6ZVswXSwg DQo+Pj4+IHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzBdLCAwLCAxKTsNCj4+Pj4gKw0K Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAoZi0+Y2hyb21hX3BsYW5lcykgew0K Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxvYWRfcGxhbmUoZiwgc2Ms IHAtPmRhdGFbMV0gKyBwcypjeCtjeSpwLSANCj4+Pj4gPmxpbmVzaXplWzFdLCBjaHJvbWFf d2lkdGgsIGNocm9tYV9oZWlnaHQsIHAtPmxpbmVzaXplWzFdLCAxLCAxKTsNCj4+Pj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2FkX3BsYW5lKGYsIHNjLCBwLT5kYXRh WzJdICsgcHMqY3grY3kqcC0gDQo+Pj4+ID5saW5lc2l6ZVsyXSwgY2hyb21hX3dpZHRoLCBj aHJvbWFfaGVpZ2h0LCBwLT5saW5lc2l6ZVsyXSwgMiwgMSk7DQo+Pj4+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIH0NCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGYtPnRy YW5zcGFyZW5jeSkNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2Fk X3BsYW5lKGYsIHNjLCBwLT5kYXRhWzNdICsgcHMqeCArIHkqcC0gDQo+Pj4+ID5saW5lc2l6 ZVszXSwgd2lkdGgsIGhlaWdodCwgcC0+bGluZXNpemVbM10sIDMsIDEpOw0KPj4+PiArwqDC oMKgwqDCoMKgwqAgfSBlbHNlIGlmIChjLT5waXhfZm10ID09IEFWX1BJWF9GTVRfWUE4KSB7 DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxvYWRfcGxhbmUoZiwgc2MsIHAtPmRh dGFbMF0gK8KgwqDCoMKgIHBzKnggKyB5KnAtIA0KPj4+PiA+bGluZXNpemVbMF0sIHdpZHRo LCBoZWlnaHQsIHAtPmxpbmVzaXplWzBdLCAwLCAyKTsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgbG9hZF9wbGFuZShmLCBzYywgcC0+ZGF0YVswXSArIDEgKyBwcyp4ICsgeSpw LSANCj4+Pj4gPmxpbmVzaXplWzBdLCB3aWR0aCwgaGVpZ2h0LCBwLT5saW5lc2l6ZVswXSwg MSwgMik7DQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0gZWxzZSBpZiAoZi0+dXNlMzJi aXQpIHsNCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBsb2FkX3JnYl9mcmFt ZTMyKGYsIHNjLCBwbGFuZXMsIHdpZHRoLCBoZWlnaHQsIHAtIA0KPj4+PiA+bGluZXNpemUp Ow0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9IGVsc2UNCj4+Pj4gQEAgLTEyMDYsMTcg KzEyNTUsMTcgQEAgcmV0cnk6DQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IGlu dCBjeMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSB4ID4+IGYtPmNocm9tYV9oX3NoaWZ0Ow0K Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBpbnQgY3nCoMKgwqDCoMKgwqDCoMKg wqDCoMKgID0geSA+PiBmLT5jaHJvbWFfdl9zaGlmdDsNCj4+Pj4gLcKgwqDCoMKgwqDCoMKg IHJldCA9IGVuY29kZV9wbGFuZShmLCBzYywgcC0+ZGF0YVswXSArIHBzKnggKyB5KnAtIA0K Pj4+PiA+bGluZXNpemVbMF0sIHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzBdLCAwLCAx LCBhYyk7DQo+Pj4+ICvCoMKgwqDCoMKgwqDCoCByZXQgPSBlbmNvZGVfcGxhbmUoZiwgc2Ms IHAtPmRhdGFbMF0gKyBwcyp4ICsgeSpwLSANCj4+Pj4gPmxpbmVzaXplWzBdLCB3aWR0aCwg aGVpZ2h0LCBwLT5saW5lc2l6ZVswXSwgMCwgMCwgMSwgYWMpOw0KPj4+PiDCoMKgwqDCoMKg wqDCoMKgwqDCoCBpZiAoZi0+Y2hyb21hX3BsYW5lcykgew0KPj4+PiAtwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCByZXQgfD0gZW5jb2RlX3BsYW5lKGYsIHNjLCBwLT5kYXRhWzFdICsgcHMq Y3grY3kqcC0gDQo+Pj4+ID5saW5lc2l6ZVsxXSwgY2hyb21hX3dpZHRoLCBjaHJvbWFfaGVp Z2h0LCBwLT5saW5lc2l6ZVsxXSwgMSwgMSwgYWMpOw0KPj4+PiAtwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCByZXQgfD0gZW5jb2RlX3BsYW5lKGYsIHNjLCBwLT5kYXRhWzJdICsgcHMqY3gr Y3kqcC0gDQo+Pj4+ID5saW5lc2l6ZVsyXSwgY2hyb21hX3dpZHRoLCBjaHJvbWFfaGVpZ2h0 LCBwLT5saW5lc2l6ZVsyXSwgMSwgMSwgYWMpOw0KPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCByZXQgfD0gZW5jb2RlX3BsYW5lKGYsIHNjLCBwLT5kYXRhWzFdICsgcHMqY3grY3kq cC0gDQo+Pj4+ID5saW5lc2l6ZVsxXSwgY2hyb21hX3dpZHRoLCBjaHJvbWFfaGVpZ2h0LCBw LT5saW5lc2l6ZVsxXSwgMSwgMSwgMSwgDQo+Pj4+IGFjKTsNCj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgcmV0IHw9IGVuY29kZV9wbGFuZShmLCBzYywgcC0+ZGF0YVsyXSArIHBz KmN4K2N5KnAtIA0KPj4+PiA+bGluZXNpemVbMl0sIGNocm9tYV93aWR0aCwgY2hyb21hX2hl aWdodCwgcC0+bGluZXNpemVbMl0sIDEsIDIsIDEsIA0KPj4+PiBhYyk7DQo+Pj4+IMKgwqDC oMKgwqDCoMKgwqDCoMKgIH0NCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKGYtPnRy YW5zcGFyZW5jeSkNCj4+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0IHw9IGVuY29k ZV9wbGFuZShmLCBzYywgcC0+ZGF0YVszXSArIHBzKnggKyB5KnAtIA0KPj4+PiA+bGluZXNp emVbM10sIHdpZHRoLCBoZWlnaHQsIHAtPmxpbmVzaXplWzNdLCAyLCAxLCBhYyk7DQo+Pj4+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldCB8PSBlbmNvZGVfcGxhbmUoZiwgc2MsIHAt PmRhdGFbM10gKyBwcyp4ICsgeSpwLSANCj4+Pj4gPmxpbmVzaXplWzNdLCB3aWR0aCwgaGVp Z2h0LCBwLT5saW5lc2l6ZVszXSwgMiwgMywgMSwgYWMpOw0KPj4+PiDCoMKgwqDCoMKgwqAg fSBlbHNlIGlmIChjLT5waXhfZm10ID09IEFWX1BJWF9GTVRfWUE4KSB7DQo+Pj4+IC3CoMKg wqDCoMKgwqDCoCByZXTCoCA9IGVuY29kZV9wbGFuZShmLCBzYywgcC0+ZGF0YVswXSArwqDC oMKgwqAgcHMqeCArIHkqcC0gDQo+Pj4+ID5saW5lc2l6ZVswXSwgd2lkdGgsIGhlaWdodCwg cC0+bGluZXNpemVbMF0sIDAsIDIsIGFjKTsNCj4+Pj4gLcKgwqDCoMKgwqDCoMKgIHJldCB8 PSBlbmNvZGVfcGxhbmUoZiwgc2MsIHAtPmRhdGFbMF0gKyAxICsgcHMqeCArIHkqcC0gDQo+ Pj4+ID5saW5lc2l6ZVswXSwgd2lkdGgsIGhlaWdodCwgcC0+bGluZXNpemVbMF0sIDEsIDIs IGFjKTsNCj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHJldMKgID0gZW5jb2RlX3BsYW5lKGYsIHNj LCBwLT5kYXRhWzBdICvCoMKgwqDCoCBwcyp4ICsgeSpwLSANCj4+Pj4gPmxpbmVzaXplWzBd LCB3aWR0aCwgaGVpZ2h0LCBwLT5saW5lc2l6ZVswXSwgMCwgMCwgMiwgYWMpOw0KPj4+PiAr wqDCoMKgwqDCoMKgwqAgcmV0IHw9IGVuY29kZV9wbGFuZShmLCBzYywgcC0+ZGF0YVswXSAr IDEgKyBwcyp4ICsgeSpwLSANCj4+Pj4gPmxpbmVzaXplWzBdLCB3aWR0aCwgaGVpZ2h0LCBw LT5saW5lc2l6ZVswXSwgMSwgMSwgMiwgYWMpOw0KPj4+PiDCoMKgwqDCoMKgwqAgfSBlbHNl IGlmIChmLT51c2UzMmJpdCkgew0KPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXQgPSBl bmNvZGVfcmdiX2ZyYW1lMzIoZiwgc2MsIHBsYW5lcywgd2lkdGgsIGhlaWdodCwgcC0gDQo+ Pj4+ID5saW5lc2l6ZSwgYWMpOw0KPj4+PiDCoMKgwqDCoMKgwqAgfSBlbHNlIHsNCj4+Pg0K Pj4+IERvZXNuJ3QgYXBwbHkgcHJvcGVybHkuDQo+Pj4gV2hhdCBkb2VzIGl0IGV2ZW4gZG8/ IERvZXMgdGhlIGN1cnJlbnQgZ2l0IG1hc3RlciBub3QgYWxyZWFkeSBkbyB0aGlzPw0KPj4N Cj4+IG1hc3RlciBpbXBsZW1lbnRzIHJlbWFwIGZvciBlbmNvZGVfcmdiX2ZyYW1lKg0KPj4g VGhpcyBpbXBsZW1lbnRzIGl0IGZvciB0aGUgb3RoZXIgY2FzZXMuDQo+PiBNb3N0IG9mIHRo aXMgaXMgdW50ZXN0ZWQgdGhvdWdoLCBpIGhhdmUgbm8gWVVWIHBsYW5hciBmbG9hdDE2IG1h dGVyaWFsDQo+IFRoZXJlIGlzIG9uZSB2ZXJ5IHRpbnkgZXhyIHNhbXBsZSB0aGF0J3MgWUEg ZmxvYXQxNiwgdGhlIG9uZSBmcm9tIGZhdGUtIA0KPiBleHIteWEtc2NhbmxpbmUtemlwLWhh bGYtMTJ4OC4gTm90IHN1cmUgaG93IHVzZWZ1bCBjYW4gaXQgYmUgY29uc2lkZXJpbmcgDQo+ IGl0J3Mgc28gc21hbGwgYW5kIGhhcyBubyBjaHJvbWEgcGxhbmVzLg0KDQpUaGVyZSdzIGFs c28gDQpodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQWNhZGVteVNvZnR3YXJl Rm91bmRhdGlvbi9vcGVuZXhyLWltYWdlcy9tYWluL0x1bWluYW5jZUNocm9tYS9HYXJkZW4u ZXhyIA0Kd2hpY2ggaXMgZ3JheWYxNi4NCg0K --------------ymvIHT2lbeRhS09GR4ix6W4H-- --------------PmyzNp00LG5wovGOKGqGuq9U Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEd1EujP2UoWlX5pp6FGMBrXN2WeAFAmfQidIFAwAAAAAACgkQFGMBrXN2WeCs aAgAigKM4kfpv2jkssQ8jQL5n1YvbFJQ81riwVFkth2PvPpIzkeFWgpFHgWk6vagyTD+1YmHVR2I I1x34/8Z18eYfCHWG8xOXhhZvirheJWCoDseMr9N+GR1omfUYDQLNGqifAy9A71/6E/s/2njhZnY xp4uZ9XACXuK7CAWOifUs9tNjJGXGzmE9H9/dstJ35fRn/aNg47t0/F84UTiP0JgbZlRM+tg5mjt SaPDW/J2S+x8QHiQOmIfFqyCmIQyCpoFWmT23t5bWPlfTqp36u2oyT5CyV3z6vTT5N4+cbJ4RUYS i8AdiScJbMiDXpvbeAafF/8oPkpkqzlBPHd8db7ROQ== =wxKK -----END PGP SIGNATURE----- --------------PmyzNp00LG5wovGOKGqGuq9U-- --===============3929984710199050123== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --===============3929984710199050123==--