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 C70114B2D2 for ; Mon, 3 Jun 2024 09:39:38 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BA6C068D68A; Mon, 3 Jun 2024 12:39:37 +0300 (EEST) Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 83D4168D2E0 for ; Mon, 3 Jun 2024 12:39:31 +0300 (EEST) Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-42120e3911eso36966415e9.0 for ; Mon, 03 Jun 2024 02:39:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717407570; x=1718012370; darn=ffmpeg.org; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:mail-followup-to :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=hlBAG8b8QmTq5oq7F+P/XUB/no7Cd8BQooW8F634j/M=; b=djQ1RmP7pWshJbGkOys/l4QNu0IpYoJKiQjB6l433+AoQrEXJbIv5PROJzos6m4Dsu J3l6Kq2vsew8Vj1n/h40i6+ViTUFlbUtLUAa8DUBKcoOoB/kHL+u4xrigVwB2mPBH21a /smV3EqtKNpojp0TtCxvMu+BwlQqCjfzaOtOVbuRdwQuHpx+rViFhwYgtbPlWUYeQyIc H3pJeKEwKLCwI6VgcKh8UUj+5GQlIkXgnpqSVq8uSUZnpMW6IeHuYKugOQKV4TquIlSU tfsfJCDpvC5MkaoRp29HxEQED934JLgWjRvHV5Za0n6QWvXUUqvQ4PudjPF2bimaodXA h8qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717407570; x=1718012370; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:mail-followup-to :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hlBAG8b8QmTq5oq7F+P/XUB/no7Cd8BQooW8F634j/M=; b=p07l3n5t1CGY5OEit/KBFpXYBCb0oZnVwVTFvfMzNJX0wvukGaaKZFxnXbTU9mxdjK ECqr5XZRnaC51wrfmtpeX947TO+IU9GRZhl3Xfa7uPFMYANRF3uQU5DvEXcDEMwaWEA6 H1TOSEJMbjZSZnumLzmJ9vDCGUBCR8D80Lcrmyf5I2MWKSli3AZqf+YwoRE0EdqhtfEE VeGnQl0AMvC2Xq6CJQ8o34yMm6y8ZJ668KFxILOcaC4mqAoh0XbGYNL0osZniVZI7ve9 3a+CFS4S7ttFFHGDarIeKdWYVYvfNOJlO4f0+ONHF20zsdh4avRz4eFYnySmHQrsgsJ3 lxqw== X-Gm-Message-State: AOJu0YxY1tcHagUXaQucGfLgEHhe8igK/iPzpgqs4dzqX9G9+DbdbbRa Y87/gyER3gEQJ4PfRYuG+Qc3E2Da74ztN+4SWsThrXOS8KdnV1X28flOaA== X-Google-Smtp-Source: AGHT+IE6alBVhcINBXb193JMBkCTKXS2F4dwUGReNIDCzj1xUwQV6w7tmVU3IEAEFyb04AqK4iN/tg== X-Received: by 2002:a05:600c:1550:b0:420:fff:f4c9 with SMTP id 5b1f17b1804b1-4212e049964mr84800995e9.13.1717407569461; Mon, 03 Jun 2024 02:39:29 -0700 (PDT) Received: from mariano (dynamic-adsl-84-220-189-10.clienti.tiscali.it. [84.220.189.10]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4212b8b5747sm109441225e9.45.2024.06.03.02.39.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 03 Jun 2024 02:39:29 -0700 (PDT) Received: by mariano (Postfix, from userid 1000) id 1A36FBFCE8; Mon, 3 Jun 2024 11:39:28 +0200 (CEST) Date: Mon, 3 Jun 2024 11:39:28 +0200 From: Stefano Sabatini To: FFmpeg development discussions and patches Message-ID: Mail-Followup-To: FFmpeg development discussions and patches , Marcus B Spencer References: <20240603033321.357618-1-marcus@marcusspencer.xyz> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20240603033321.357618-1-marcus@marcusspencer.xyz> User-Agent: Mutt/2.1.4 (2021-12-11) Subject: Re: [FFmpeg-devel] [PATCH v2] avcodec: add farbfeld encoder 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: Marcus B Spencer 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: T24gZGF0ZSBTdW5kYXkgMjAyNC0wNi0wMiAyMjozMzoyMCAtMDUwMCwgTWFyY3VzIEIgU3BlbmNl ciB3cm90ZToKPiBmYXJiZmVsZCBpcyBhbiB1bmNvbXByZXNzZWQgaW1hZ2UgZm9ybWF0IHRoYXQg aXMgYSBwYXJ0IG9mIHN1Y2tsZXNzCj4gdG9vbHMgKGh0dHBzOi8vdG9vbHMuc3Vja2xlc3Mub3Jn KS4KPiAKPiBJdHMgZG9jdW1lbnRhdGlvbiBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly90b29scy5z dWNrbGVzcy5vcmcvZmFyYmZlbGQuCj4gCj4gQWRkIHN1cHBvcnQgZm9yIHRoaXMgaW1hZ2UgZm9y bWF0IGluIGF2Y29kZWMgYW5kIHVwZGF0ZSB0aGUgaW1hZ2UyCj4gZm9ybWF0IGFjY29yZGluZ2x5 Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IE1hcmN1cyBCIFNwZW5jZXIgPG1hcmN1c0BtYXJjdXNzcGVu Y2VyLnh5ej4KPiAtLS0KPiAgQ2hhbmdlbG9nICAgICAgICAgICAgICAgICB8ICAxICsKPiAgZG9j L2dlbmVyYWxfY29udGVudHMudGV4aSB8ICAyICsKPiAgbGliYXZjb2RlYy9NYWtlZmlsZSAgICAg ICB8ICAxICsKPiAgbGliYXZjb2RlYy9hbGxjb2RlY3MuYyAgICB8ICAxICsKPiAgbGliYXZjb2Rl Yy9jb2RlY19kZXNjLmMgICB8ICA3ICsrKysKPiAgbGliYXZjb2RlYy9jb2RlY19pZC5oICAgICB8 ICAxICsKPiAgbGliYXZjb2RlYy9mYXJiZmVsZGVuYy5jICB8IDgzICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwo+ICBsaWJhdmNvZGVjL3ZlcnNpb24uaCAgICAgIHwgIDIg Ky0KPiAgbGliYXZmb3JtYXQvaW1nMi5jICAgICAgICB8ICAxICsKPiAgbGliYXZmb3JtYXQvaW1n MmVuYy5jICAgICB8ICAyICstCj4gIDEwIGZpbGVzIGNoYW5nZWQsIDk5IGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJhdmNvZGVjL2ZhcmJmZWxk ZW5jLmMKPiAKPiBkaWZmIC0tZ2l0IGEvQ2hhbmdlbG9nIGIvQ2hhbmdlbG9nCj4gaW5kZXggMDNk NmIyOWFkOC4uZDJiODMxYzYyMyAxMDA2NDQKPiAtLS0gYS9DaGFuZ2Vsb2cKPiArKysgYi9DaGFu Z2Vsb2cKPiBAQCAtMTIsNiArMTIsNyBAQCB2ZXJzaW9uIDxuZXh0PjoKPiAgLSBxc3ZfcGFyYW1z IG9wdGlvbiBhZGRlZCBmb3IgUVNWIGVuY29kZXJzCj4gIC0gVlZDIGRlY29kZXIgY29tcGF0aWJs ZSB3aXRoIERWQiB0ZXN0IGNvbnRlbnQKPiAgLSB4SEUtQUFDIGRlY29kZXIKPiArLSBmYXJiZmVs ZCBlbmNvZGVyCj4gIAo+ICAKPiAgdmVyc2lvbiA3LjA6Cj4gZGlmZiAtLWdpdCBhL2RvYy9nZW5l cmFsX2NvbnRlbnRzLnRleGkgYi9kb2MvZ2VuZXJhbF9jb250ZW50cy50ZXhpCj4gaW5kZXggZTdj ZjRmODIzOS4uMTI5YTMyNWVjZiAxMDA2NDQKPiAtLS0gYS9kb2MvZ2VuZXJhbF9jb250ZW50cy50 ZXhpCj4gKysrIGIvZG9jL2dlbmVyYWxfY29udGVudHMudGV4aQo+IEBAIC04NTMsNiArODUzLDgg QEAgZm9sbG93aW5nIGltYWdlIGZvcm1hdHMgYXJlIHN1cHBvcnRlZDoKPiAgICAgIEB0YWIgWCBQ aXhNYXAgaW1hZ2UgZm9ybWF0Cj4gIEBpdGVtIFhXRCAgQHRhYiBYIEB0YWIgWAo+ICAgICAgQHRh YiBYIFdpbmRvdyBEdW1wIGltYWdlIGZvcm1hdAo+ICtAaXRlbSBGRiAgICAgICAgICAgQHRhYiBY IEB0YWIKPiArICAgIEB0YWIgZmFyYmZlbGQgdW5jb21wcmVzc2VkIGltYWdlIGZvcm1hdAo+ICBA ZW5kIG11bHRpdGFibGUKPiAgCj4gIEBjb2Rle1h9IG1lYW5zIHRoYXQgdGhlIGZlYXR1cmUgaW4g dGhhdCBjb2x1bW4gKGVuY29kaW5nIC8gZGVjb2RpbmcpIGlzIHN1cHBvcnRlZC4KPiBkaWZmIC0t Z2l0IGEvbGliYXZjb2RlYy9NYWtlZmlsZSBiL2xpYmF2Y29kZWMvTWFrZWZpbGUKPiBpbmRleCAy NDQzZDJjNmZkLi44MDhmMmE1ZDU0IDEwMDY0NAo+IC0tLSBhL2xpYmF2Y29kZWMvTWFrZWZpbGUK PiArKysgYi9saWJhdmNvZGVjL01ha2VmaWxlCj4gQEAgLTM1OSw2ICszNTksNyBAQCBPQkpTLSQo Q09ORklHX0VTQ0FQRTEzMF9ERUNPREVSKSAgICAgICArPSBlc2NhcGUxMzAubwo+ICBPQkpTLSQo Q09ORklHX0VWUkNfREVDT0RFUikgICAgICAgICAgICArPSBldnJjZGVjLm8gYWNlbHBfdmVjdG9y cy5vIGxzcC5vCj4gIE9CSlMtJChDT05GSUdfRVhSX0RFQ09ERVIpICAgICAgICAgICAgICs9IGV4 ci5vIGV4cmRzcC5vIGhhbGYyZmxvYXQubwo+ICBPQkpTLSQoQ09ORklHX0VYUl9FTkNPREVSKSAg ICAgICAgICAgICArPSBleHJlbmMubyBmbG9hdDJoYWxmLm8KPiArT0JKUy0kKENPTkZJR19GQVJC RkVMRF9FTkNPREVSKSAgICAgICAgKz0gZmFyYmZlbGRlbmMubwo+ICBPQkpTLSQoQ09ORklHX0ZB U1RBVURJT19ERUNPREVSKSAgICAgICArPSBmYXN0YXVkaW8ubwo+ICBPQkpTLSQoQ09ORklHX0ZG VjFfREVDT0RFUikgICAgICAgICAgICArPSBmZnYxZGVjLm8gZmZ2MS5vCj4gIE9CSlMtJChDT05G SUdfRkZWMV9FTkNPREVSKSAgICAgICAgICAgICs9IGZmdjFlbmMubyBmZnYxLm8KPiBkaWZmIC0t Z2l0IGEvbGliYXZjb2RlYy9hbGxjb2RlY3MuYyBiL2xpYmF2Y29kZWMvYWxsY29kZWNzLmMKPiBp bmRleCBiMTAyYTgwNjllLi5iMGViYjcyMzk2IDEwMDY0NAo+IC0tLSBhL2xpYmF2Y29kZWMvYWxs Y29kZWNzLmMKPiArKysgYi9saWJhdmNvZGVjL2FsbGNvZGVjcy5jCj4gQEAgLTExNSw2ICsxMTUs NyBAQCBleHRlcm4gY29uc3QgRkZDb2RlYyBmZl9lc2NhcGUxMjRfZGVjb2RlcjsKPiAgZXh0ZXJu IGNvbnN0IEZGQ29kZWMgZmZfZXNjYXBlMTMwX2RlY29kZXI7Cj4gIGV4dGVybiBjb25zdCBGRkNv ZGVjIGZmX2V4cl9lbmNvZGVyOwo+ICBleHRlcm4gY29uc3QgRkZDb2RlYyBmZl9leHJfZGVjb2Rl cjsKPiArZXh0ZXJuIGNvbnN0IEZGQ29kZWMgZmZfZmFyYmZlbGRfZW5jb2RlcjsKPiAgZXh0ZXJu IGNvbnN0IEZGQ29kZWMgZmZfZmZ2MV9lbmNvZGVyOwo+ICBleHRlcm4gY29uc3QgRkZDb2RlYyBm Zl9mZnYxX2RlY29kZXI7Cj4gIGV4dGVybiBjb25zdCBGRkNvZGVjIGZmX2Zmdmh1ZmZfZW5jb2Rl cjsKPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9jb2RlY19kZXNjLmMgYi9saWJhdmNvZGVjL2Nv ZGVjX2Rlc2MuYwo+IGluZGV4IGEyOGVmNjgwNjEuLjMzZGJkMmNlOTQgMTAwNjQ0Cj4gLS0tIGEv bGliYXZjb2RlYy9jb2RlY19kZXNjLmMKPiArKysgYi9saWJhdmNvZGVjL2NvZGVjX2Rlc2MuYwo+ IEBAIC0xOTU5LDYgKzE5NTksMTMgQEAgc3RhdGljIGNvbnN0IEFWQ29kZWNEZXNjcmlwdG9yIGNv ZGVjX2Rlc2NyaXB0b3JzW10gPSB7Cj4gICAgICAgICAgLmxvbmdfbmFtZSA9IE5VTExfSUZfQ09O RklHX1NNQUxMKCJMRUFEIE1DTVAiKSwKPiAgICAgICAgICAucHJvcHMgICAgID0gQVZfQ09ERUNf UFJPUF9JTlRSQV9PTkxZIHwgQVZfQ09ERUNfUFJPUF9MT1NTWSwKPiAgICAgIH0sCj4gKyAgICB7 Cj4gKyAgICAgICAgLmlkICAgICAgICA9IEFWX0NPREVDX0lEX0ZBUkJGRUxELAo+ICsgICAgICAg IC50eXBlICAgICAgPSBBVk1FRElBX1RZUEVfVklERU8sCj4gKyAgICAgICAgLm5hbWUgICAgICA9 ICJmYXJiZmVsZCIsCj4gKyAgICAgICAgLmxvbmdfbmFtZSA9IE5VTExfSUZfQ09ORklHX1NNQUxM KCJmYXJiZmVsZCB1bmNvbXByZXNzZWQgaW1hZ2UiKSwKPiArICAgICAgICAucHJvcHMgICAgID0g QVZfQ09ERUNfUFJPUF9JTlRSQV9PTkxZIHwgQVZfQ09ERUNfUFJPUF9MT1NTTEVTUywKPiArICAg IH0sCj4gIAo+ICAgICAgLyogdmFyaW91cyBQQ00gImNvZGVjcyIgKi8KPiAgICAgIHsKPiBkaWZm IC0tZ2l0IGEvbGliYXZjb2RlYy9jb2RlY19pZC5oIGIvbGliYXZjb2RlYy9jb2RlY19pZC5oCj4g aW5kZXggMGFiMWUzNGE2MS4uZDRiMGQyM2Y3ZSAxMDA2NDQKPiAtLS0gYS9saWJhdmNvZGVjL2Nv ZGVjX2lkLmgKPiArKysgYi9saWJhdmNvZGVjL2NvZGVjX2lkLmgKPiBAQCAtMzIyLDYgKzMyMiw3 IEBAIGVudW0gQVZDb2RlY0lEIHsKPiAgICAgIEFWX0NPREVDX0lEX1JUVjEsCj4gICAgICBBVl9D T0RFQ19JRF9WTUlYLAo+ICAgICAgQVZfQ09ERUNfSURfTEVBRCwKPiArICAgIEFWX0NPREVDX0lE X0ZBUkJGRUxELAo+ICAKPiAgICAgIC8qIHZhcmlvdXMgUENNICJjb2RlY3MiICovCj4gICAgICBB Vl9DT0RFQ19JRF9GSVJTVF9BVURJTyA9IDB4MTAwMDAsICAgICAvLy88IEEgZHVtbXkgaWQgcG9p bnRpbmcgYXQgdGhlIHN0YXJ0IG9mIGF1ZGlvIGNvZGVjcwo+IGRpZmYgLS1naXQgYS9saWJhdmNv ZGVjL2ZhcmJmZWxkZW5jLmMgYi9saWJhdmNvZGVjL2ZhcmJmZWxkZW5jLmMKPiBuZXcgZmlsZSBt b2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAuLjZlZjk3NjNkYWIKPiAtLS0gL2Rldi9udWxs Cj4gKysrIGIvbGliYXZjb2RlYy9mYXJiZmVsZGVuYy5jCj4gQEAgLTAsMCArMSw4MyBAQAo+ICsv Kgo+ICsgKiBDb3B5cmlnaHQgKGMpIDIwMjQgTWFyY3VzIEIgU3BlbmNlciA8bWFyY3VzQG1hcmN1 c3NwZW5jZXIueHl6Pgo+ICsgKgo+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBm cmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5Cj4gKyAqIG9mIHRo aXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIOKAnFNv ZnR3YXJl4oCdKSwgdG8KPiArICogZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmlj dGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUKPiArICogcmlnaHRzIHRvIHVz ZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwg YW5kL29yCj4gKyAqIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBw ZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCj4gKyAqIGZ1cm5pc2hlZCB0byBkbyBzbywg c3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Cj4gKyAqCj4gKyAqIFRoZSBhYm92 ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGlu Y2x1ZGVkIGluCj4gKyAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhl IFNvZnR3YXJlLgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQg4oCcQVMgSVPi gJ0sIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKPiArICogSU1QTElF RCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFO VEFCSUxJVFksCj4gKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05J TkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQo+ICsgKiBBVVRIT1JTIE9SIENPUFlS SUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4g KyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1Ig T1RIRVJXSVNFLCBBUklTSU5HCj4gKyAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJ VEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MKPiArICogSU4gVEhF IFNPRlRXQVJFLgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlICJsaWJhdnV0aWwvaW1ndXRpbHMuaCIK PiArI2luY2x1ZGUgImNvZGVjX2ludGVybmFsLmgiCj4gKyNpbmNsdWRlICJieXRlc3RyZWFtLmgi Cj4gKyNpbmNsdWRlICJhdmNvZGVjLmgiCj4gKyNpbmNsdWRlICJlbmNvZGUuaCIKPiArCj4gKyNk ZWZpbmUgSEVBREVSX1NJWkUgMTYKPiArCj4gK3N0YXRpYyBpbnQgZmFyYmZlbGRfZW5jb2RlX2Zy YW1lKEFWQ29kZWNDb250ZXh0ICpjdHgsIEFWUGFja2V0ICpwa3QsCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IEFWRnJhbWUgKnAsIGludCAqZ290X3BhY2tldCkKPiAr ewo+ICsgICAgaW50IHBrdF9zaXplID0gSEVBREVSX1NJWkUgKyBhdl9pbWFnZV9nZXRfYnVmZmVy X3NpemUoCj4gKyAgICAgICAgcC0+Zm9ybWF0LAo+ICsgICAgICAgIHAtPndpZHRoLAo+ICsgICAg ICAgIHAtPmhlaWdodCwKPiArICAgICAgICAxCj4gKyAgICApOwo+ICsgICAgdWludDhfdCAqYnVm Owo+ICsgICAgaW50IHJldDsKPiArCj4gKyAgICBpZiAocGt0X3NpemUgPCAwKQo+ICsgICAgICAg IHJldHVybiBwa3Rfc2l6ZTsKPiArCj4gKyAgICBpZiAoKHJldCA9IGZmX2dldF9lbmNvZGVfYnVm ZmVyKGN0eCwgcGt0LCBwa3Rfc2l6ZSwgMCkpIDwgMCkKPiArICAgICAgICByZXR1cm4gcmV0Owo+ ICsKPiArICAgIGJ1ZiA9IHBrdC0+ZGF0YTsKPiArCj4gKyAgICBieXRlc3RyZWFtX3B1dF9idWZm ZXIoJmJ1ZiwgImZhcmJmZWxkIiwgOCk7Cj4gKwo+ICsgICAgYnl0ZXN0cmVhbV9wdXRfYmUzMigm YnVmLCBjdHgtPndpZHRoKTsKPiArICAgIGJ5dGVzdHJlYW1fcHV0X2JlMzIoJmJ1ZiwgY3R4LT5o ZWlnaHQpOwo+ICsKPiArICAgIGF2X2ltYWdlX2NvcHlfdG9fYnVmZmVyKAo+ICsgICAgICAgIGJ1 ZiwKCj4gKyAgICAgICAgcGt0X3NpemUgLSBIRUFERVJfU0laRSwKCm5pdCsrOiBmb3IgcmVhZGFi aWxpdHkgaXQgbWlnaHQgaGVscCB0byBoYXZlIGEgZGVkaWNhdGVkIHZhcmlhYmxlCmJ1Zl9zaXpl Cgo+ICsgICAgICAgIChjb25zdCB1aW50OF90ICoqKXAtPmRhdGEsCj4gKyAgICAgICAgcC0+bGlu ZXNpemUsCj4gKyAgICAgICAgcC0+Zm9ybWF0LAo+ICsgICAgICAgIHAtPndpZHRoLAo+ICsgICAg ICAgIHAtPmhlaWdodCwKPiArICAgICAgICAxCj4gKyAgICApOwo+ICsKPiArICAgICpnb3RfcGFj a2V0ID0gMTsKPiArCj4gKyAgICByZXR1cm4gMDsKPiArfQo+ICsKPiArY29uc3QgRkZDb2RlYyBm Zl9mYXJiZmVsZF9lbmNvZGVyID0gewo+ICsgICAgLnAubmFtZSAgICAgICAgID0gImZhcmJmZWxk IiwKPiArICAgIENPREVDX0xPTkdfTkFNRSgiZmFyYmZlbGQgdW5jb21wcmVzc2VkIGltYWdlIiks Cj4gKyAgICAucC50eXBlICAgICAgICAgPSBBVk1FRElBX1RZUEVfVklERU8sCj4gKyAgICAucC5p ZCAgICAgICAgICAgPSBBVl9DT0RFQ19JRF9GQVJCRkVMRCwKPiArICAgIC5wLmNhcGFiaWxpdGll cyA9IEFWX0NPREVDX0NBUF9EUjEsCj4gKyAgICBGRl9DT0RFQ19FTkNPREVfQ0IoZmFyYmZlbGRf ZW5jb2RlX2ZyYW1lKSwKPiArICAgIC5wLnBpeF9mbXRzICAgICA9IChjb25zdCBlbnVtIEFWUGl4 ZWxGb3JtYXRbXSl7Cj4gKyAgICAgICAgQVZfUElYX0ZNVF9SR0JBNjRCRSwKPiArICAgICAgICBB Vl9QSVhfRk1UX05PTkUKPiArICAgIH0sCj4gK307Cj4gZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv dmVyc2lvbi5oIGIvbGliYXZjb2RlYy92ZXJzaW9uLmgKPiBpbmRleCBkYTU0Zjg3ODg3Li43YWNi MjYxYmIzIDEwMDY0NAo+IC0tLSBhL2xpYmF2Y29kZWMvdmVyc2lvbi5oCj4gKysrIGIvbGliYXZj b2RlYy92ZXJzaW9uLmgKPiBAQCAtMjksNyArMjksNyBAQAo+ICAKPiAgI2luY2x1ZGUgInZlcnNp b25fbWFqb3IuaCIKPiAgCj4gLSNkZWZpbmUgTElCQVZDT0RFQ19WRVJTSU9OX01JTk9SICAgNgo+ ICsjZGVmaW5lIExJQkFWQ09ERUNfVkVSU0lPTl9NSU5PUiAgIDcKPiAgI2RlZmluZSBMSUJBVkNP REVDX1ZFUlNJT05fTUlDUk8gMTAwCj4gIAo+ICAjZGVmaW5lIExJQkFWQ09ERUNfVkVSU0lPTl9J TlQgIEFWX1ZFUlNJT05fSU5UKExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUiwgXAo+IGRpZmYgLS1n aXQgYS9saWJhdmZvcm1hdC9pbWcyLmMgYi9saWJhdmZvcm1hdC9pbWcyLmMKPiBpbmRleCA5OTgx ODY3ZjgyLi43N2VkYzdmZjliIDEwMDY0NAo+IC0tLSBhL2xpYmF2Zm9ybWF0L2ltZzIuYwo+ICsr KyBiL2xpYmF2Zm9ybWF0L2ltZzIuYwo+IEBAIC05NSw2ICs5NSw3IEBACj4gICAgICBUQUcoUU9J LCAgICAgICAgICAgICBxb2kgICAgICApIFwKPiAgICAgIFRBRyhSQURJQU5DRV9IRFIsICAgIGhk ciAgICAgICkgXAo+ICAgICAgVEFHKFdCTVAsICAgICAgICAgICAgd2JtcCAgICAgKSBcCj4gKyAg ICBUQUcoRkFSQkZFTEQsICAgICAgICBmZiAgICAgICApIFwKPiAgICAgIFRBRyhOT05FLCAgICAg ICAgICAgICAgICAgICAgICkKCkxvb2tzIGdvb2QgdG8gbWUuCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZt cGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8v ZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwK ZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJl Ii4K