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 C63A94A703 for ; Thu, 4 Apr 2024 14:52:18 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9719D68D056; Thu, 4 Apr 2024 17:52:15 +0300 (EEST) Received: from MRZP264CU002.outbound.protection.outlook.com (mail-francesouthazon11020002.outbound.protection.outlook.com [52.101.165.2]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9205168CD83 for ; Thu, 4 Apr 2024 17:52:09 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=holq/ENPCOnpGU1kqgFB0QzcFDhdRWMwjhYYL5Fjkbzx6vmOs9M8V46x3kYILmSlgBAsfyO0ZFyDHsqAjkHsnmi58bbY5uwLa240OUxmla/KyNiMRN4ZtoZjszEw83v30lvp1+h7P5iWWWfYmUwydqZBpHc3dG6NJI8XcyCQtJkBjX+H14+Z4wOSyti3FfbpL/idjudnfTV/s+4bGfGGxTyIID55XIGyYiQKy8M246xyfw77Fd7TUK53a9VFtwb5z6qVfFP3sfP4Wtz4AVA+msw6J+0L9psg2pAh274nTIVrQkijDsNtP+sshNtKGjHkyLF9hHbwt9nYYlYg7u7yoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oscfY5iMFIHcgUXS/0oVlpsSdQ4GUG5Y564QAtcbFgc=; b=XMeR3RXc/Zk4JeJNVqnRxN7xbRp92l0xhJx+vxnbcgKMaxO5h3M0tR0ebNJURGexxJJVophIdZhTRiP03GIEAYzyenisv7AGykC5HjBI/hw6GEzn5JjuPj3V356VBhM/esgHfBiC++BdF4pDMgtD2WarKZHaBV1m4RmvWSyc0xw67qd6KYYPjTpqKuuvEpcGHObSEX7nAIY8w1kMqq/T78ARJ3UGNX2uxpHUSWx8050dI0EyQ3c3Sq3ZQnVhsju9XVFT8vzb5RCx0+7gE0BR3inq2rzQ+v7N3HC/Jbc77WN26f8KYVb6UPpfJzl7BuT07OscsYMcoYVqX0AE4OAkdA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cji.paris; dmarc=pass action=none header.from=cji.paris; dkim=pass header.d=cji.paris; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cjiparis.onmicrosoft.com; s=selector1-cjiparis-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oscfY5iMFIHcgUXS/0oVlpsSdQ4GUG5Y564QAtcbFgc=; b=RQzP9CBwAUvgox+9ds1y/9SqQZS8vUAsjzhQB+L0EQlLH4B1Rsn1NS9WH3AOcA0A+ZPUuUYfdpLP1tPVcijpok2eyMdqsvqAlZRe1jd+LlvRGV2p+DeA0F3LQesctsgSP2qrryo/aFAvI8IodGcBD2139GZtaDb005ktCRdCqAR+ecDPVgzaFh1vfI0sxkPhjKXABnPM93zRKh580KjrGBPThXDNjzvBIM/uaZh0o44LrA5nJTtxNQlCS++b2Bb2l7SzSaJR3v8iHNE69kHqG+H9apyAyOaBMeTizf7BBRNNP/Osczt3g+aIXgZLNQIBxKz8lxuilOIx4dQCUSZg6Q== Received: from MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:34::23) by PR0P264MB2839.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1d2::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Thu, 4 Apr 2024 14:52:06 +0000 Received: from MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM ([fe80::74a1:99ad:46ef:4441]) by MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM ([fe80::74a1:99ad:46ef:4441%2]) with mapi id 15.20.7409.042; Thu, 4 Apr 2024 14:52:06 +0000 From: Nicolas Gaullier To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v3 2/2] avfilter/vf_colorspace: Use colorspace negotiation API Thread-Index: AQHahP6J7tnZ+eSzI0GwY0y6tzDTOrFX6NuAgAAPDhCAABmSgIAAD1AA Date: Thu, 4 Apr 2024 14:52:06 +0000 Message-ID: References: <20240402130559.382049-1-nicolas.gaullier@cji.paris> <20240402130559.382049-3-nicolas.gaullier@cji.paris> <20240404121823.GC8505@haasn.xyz> <20240404144347.GB44852@haasn.xyz> In-Reply-To: <20240404144347.GB44852@haasn.xyz> Accept-Language: fr-FR, en-US Content-Language: fr-FR X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MR1P264MB2483:EE_|PR0P264MB2839:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 3bN9z/5/zIKFBce2L70dduNSh26xbwFaPdnkQPMoS33+bBknDMqHv9jcGQXNy+g9aWu9n9/+e4mkC1c8e6x4MLdlKNdURWbSD7YGg+lf7QJmXgBlMNIO6a0QR0zeZe5E9NxR3QAgTyTlVnmdsVyPlnRUFVaTPHIGL5mxrkFp5iC4MnEoIkWYR0VpDtHInnPPYFH7VMfsCyEcfT2ynRCnQsB3+dA5HlCemAoBPIa1vvY5F2+5N+y9PgGKdvu/w+obGp8zDkrndSALM6tdKGZBHuP9GYA8iF0KrvLLz5T2OJW020q0j9NapPtEFIIlRHBvxJFarzMgnHRA1OY31DK751lfhdSZBqMY+8ZzCJAHGYj7DJp/vw+t5v7i0n7B722cj3zohrhIS2kErqWoE9lKpvPM5TwZbrCMNCLfzhWgvgLAKtLbdV3owmOzzZcU0iBPLYiB4rr58DphIgWW1z2VKWrJvBvUcpo/cV6ngYB/QO/MUjXQrJWmKc/Pztfifa4nkLsQsCmFpL2rrXiayq2ZKqRf5Nvw6stPpzIunwkc03onmI0vsO26vXYX8DFvIdvbWI66Ph13uuTsP/v30hXJOrgDESL1TWbeXtbLPKx5AUcge3k6PXIvNQnsYLDPALZBsXN5oolUaaYhXds+ufi6fotEmWojkBOW0iBqFDPcDjc= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230031)(376005)(366007)(1800799015); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Y2tIQzZqUGlzbEYxM0ZXcXNHckhKcEpWZVBtYVhPUk8wVXhhdk9aaXZnZDFh?= =?utf-8?B?TUVLQ0Z6d1Rkd1dIWEFXV210KzhhSldldnUwMU1yS1BvNFR3cTVuT1psazdV?= =?utf-8?B?d0JCaFluaVo1Yk9tQy9XbnYyS082ZHF0RlhvRUJVd3lGLzFnTm5nYmEwNFls?= =?utf-8?B?M2dGTURVcEtORmV2MXByUjliSkZNSHJ0VFV5dUo1c0pPMUVlczMyR0N6YVVP?= =?utf-8?B?bThSVXkxVnBpRFZxTngzNzJpeHlQL0pYMnNQOVcvYTVjMytNVHJVZ0I2T0lq?= =?utf-8?B?YzZwR3liV0dLWmtDUng1Qk05L3c1dE4yTHY0Ly9WbGFTcVlHSExPMDh1QnVB?= =?utf-8?B?bC9kbUZ6T0g1cXhDZW5SS21PTVhhQUp5bXBZaHVQcTdPT0lKSGliU3g1Y2Z4?= =?utf-8?B?TjY5SlhIeTloL2t0WXlwdVZrVkFNcU0vVGVWUlpEZmZlZGtpOFZCcHg0UFE0?= =?utf-8?B?TXpJcU5qWlJybzArWnkrZmxGWFFaZFBLTHJPY2tCcDh6TjV4c0xETm5PSHZF?= =?utf-8?B?WWhzVndWY0ZrNmNqZ0oyOC9JUUo3MVM3R1RmYVhqSmRLSFdrRGdQZWlOdyty?= =?utf-8?B?V3lkVGtBSEZqQjl3WUJyZmN2b0NQWklZS2djckZVdVZoaG9EUG5BYmtDd0NW?= =?utf-8?B?UitmekdTek1CQnFqbnNibElCQnp2YXk1VHpjQnpHaVZidU5PQWFUVVVCY3o4?= =?utf-8?B?S2tKQWZDLzRQbEJpdXRrcyt5M3VWYnpQUk5GR3JRYTUzR2xBaVJzdk5KRld3?= =?utf-8?B?S3JlbWRkTi9Tczl6K0FjbzRJS2l0ZXNLUnQ1aHNWaEFIamk3bnhFNnRvTVhl?= =?utf-8?B?dXZWSGhkOEpsV0c2NGRJdDlWZFNGUzF1MVk3ZlIwdE53VHZhK3VYSHFRYmQv?= =?utf-8?B?VzRmWEpDVCtjNmdROEhsUmdDeXZuNVV4VmFVWFFXcGVmMll0citOMlQ5R1Uy?= =?utf-8?B?ZFB4Y3lqbHIxRkFpR0l0UHV1bkVzWW93V2xwa2lTdmExK2EzazlMYWYzY2RI?= =?utf-8?B?aXdkR0o5bFUwenZoTlhpeUxsSEE3T0ptTm9EUk50ZVUvaTY1K3pVbXY0S25h?= =?utf-8?B?MjNQTGJ5dktYdlpXNHl1YWdRY0Z5MkZ4aXRxV2kzSFIzVFM3NnRzWi9LV2hH?= =?utf-8?B?ajJKZjUvVjZwckg5WVovTUYxa3Z2RURvVHlwdTlzRWYyOHZ4ZVlxL01XOEdB?= =?utf-8?B?S3Fya3N3Ky9DbnBlamQxVGdlMWJKTUxKUVJselVzVlppb1RDdHN1UmNVSFI5?= =?utf-8?B?SzNpU2tvelU1Y0tzSnlya3VGVjdUbmNLK1BCeDFQekF3TnFMSnY3WmM3VkFj?= =?utf-8?B?VGRramJLcnlIbVQvN2ErdWRtQlVvSG5RVlVsSkpyajFPTmw1Y3k2RitXKyt6?= =?utf-8?B?cTlBZEVoV01ZT3BaSCtZTnE1ZW1XKzZIMzNuQXdXRDJQbDJkeW8wdjlyQTRi?= =?utf-8?B?WjU0M2g0ZW52amp6cTdKRTNkTEtXNmlZMmpJRExvQTZHZUt1ejRPVlBTU2J4?= =?utf-8?B?VXp5UVQrK2h6b1pXZEtGMUtxRVhGQlhCWEwvYXBaZ3dlTmNTK1RTYUZXR1RZ?= =?utf-8?B?TWdjbVYrbWp0SVNXeTNpR08wN2tFcDhSTHRkdGNxT05wQmphb0hSdUpJMkJq?= =?utf-8?B?QkliQW1xZ2NGblkxTzd6ZDRONXJRS3NBbzdCRS9leWE5N2xLV1JtRElLZE1t?= =?utf-8?B?R0dhd1diNzQ1Z3ZOVDNCaG9PbFhTVVExZEJId2hQbUp6MEVmZ3BkaG1WNWZa?= =?utf-8?B?ZXQrNjVvV3RBUTV4VDUzSm1jNjRQbmN3TmRHM3l1WDduNmNHY3NIbDNhVlVG?= =?utf-8?B?SzhqQlF4VTVCV05vUkpWSjdLRUxSa2g4VjFxRHZ5R01RTFA2ZFdXN3pqQ3Nm?= =?utf-8?B?NU90dnBvZFFSVEd5QlI4eUZ2ekI2K3JoejRkamkxcXZ6RjNmNnd0cEdSazE5?= =?utf-8?B?VEYxWERRY1dQOTczRURTdHYyaCtOaC9aUHNXdTAyUUwwelo3RUNFT0QzYzEz?= =?utf-8?B?TGFUQlRtR2JjWmlGRmpRWjJOWktNOHZPck9QYlJoNTROM094aExLb3g3R1dT?= =?utf-8?B?TlZXMmNHbmFLYWs0SmRwc3g4Y01XN2gyUTVuSGdiYmltZFJtZkxqazhnbkFj?= =?utf-8?Q?be4TEWcjp3UeKZnC/PCWRUvBB?= MIME-Version: 1.0 X-OriginatorOrg: cji.paris X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MR1P264MB2483.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 5a6e1ab3-659a-4b86-41d9-08dc54b6cc08 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Apr 2024 14:52:06.3444 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fc5390bc-7da7-4e42-b72b-a373be305b62 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4OxhKZlSjrXZjr8z3qAWSeMoZ1/gWFZpDVCjQaFrZ60adP8w+7/rk0Kjf88sVjFSTGeZhGsXxkjDlOTcdIuAXhAsAvquA3BspSgtza/7Pvs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR0P264MB2839 Subject: Re: [FFmpeg-devel] [PATCH v3 2/2] avfilter/vf_colorspace: Use colorspace negotiation API 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: 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: PkRlwqA6IGZmbXBlZy1kZXZlbCA8ZmZtcGVnLWRldmVsLWJvdW5jZXNAZmZtcGVnLm9yZz4gRGUg bGEgcGFydCBkZSBOaWtsYXMgSGFhcw0KPkVudm95w6nCoDogamV1ZGkgNCBhdnJpbCAyMDI0IDE0 OjQ0DQo+DQo+PiA+PiBAQCAtNzM1LDYgKzczNiw5IEBAIHN0YXRpYyBpbnQgZmlsdGVyX2ZyYW1l KEFWRmlsdGVyTGluayAqbGluaywgQVZGcmFtZSAqaW4pDQo+PiA+PiAgICAgICAgICByZXR1cm4g cmVzOw0KPj4gPj4gICAgICB9DQo+PiA+PiAgDQo+PiA+PiArICAgIG91dC0+Y29sb3JzcGFjZSA9 IHMtPm91dF9jc3A7DQo+PiA+PiArICAgIG91dGxpbmstPmNvbG9yX3JhbmdlID0gcy0+dXNlcl9y bmcgIT0gQVZDT0xfUkFOR0VfVU5TUEVDSUZJRUQgPyBzLT51c2VyX3JuZyA6IGluLT5jb2xvcl9y YW5nZTsNCj4+ID4+ICsgICAgb3V0LT5jb2xvcl9yYW5nZSA9IG91dGxpbmstPmNvbG9yX3Jhbmdl Ow0KPj4gPg0KPj4gPkNoYW5naW5nIG91dGxpbmsgZHluYW1pY2FsbHkgbGlrZSB0aGlzIHNlZW1z IG5vdCBjb3JyZWN0IHRvIG1lICh3aGF0IGlmIHRoZSBuZXh0IGZpbHRlciBpbiB0aGUgY2hhaW4g b25seSBzdXBwb3J0cyBvbmUgY29sb3IgcmFuZ2U/KS4gQ2hhbmdpbmcgdGhlIHJhbmdlIG9uIHRo ZSBmbHkgd291bGQgYXQgdGhlIG1pbmltdW0gcmVxdWlyZSByZWNvbmZpZ3VyaW5nIHRoZSBmaWx0 ZXIgZ3JhcGgsIGFuZCA+PnBvc3NpYmx5IGluc2VydGlvbiBvZiBtb3JlIGF1dG8tc2NhbGUgZmls dGVycy4NCj4+IFRoaXMgaXMgdGhlIGtpbmQgb2YgcXVlc3Rpb25pbmcgSSBoYWQgd2hlbiB3b3Jr aW5nIG9uIHRoaXMgaXNzdWUuIFRoaXMgc2VlbXMgdmVyeSBhbm5veWluZyBhbmQgb3Zlcmx5IGNv bXBsZXggZm9yIGEgdmVyeSB1bmNvbW1vbiBzY2VuYXJpbzsgaXMgaXQgZXZlbiBwb3NzaWJsZSB3 aXRoaW4gdGhlIGZpbHRlciB0byBhc2sgZm9yIGEgcmVjb25maWd1cmF0aW9uIG9mIHRoZSBmaWx0 ZXIgZ3JhcGggPw0KPg0KPk5vLCByZWNvbmZpZ3VyaW5nIHRoZSBmaWx0ZXIgZ3JhcGggaXMgKGN1 cnJlbnRseSkgdGhlIEFQSSB1c2VyJ3MgcmVzcG9uc2liaWxpdHkuIChTZWUgZmZ0b29scy9mZm1w ZWdfZmlsdGVyLmMgZm9yIGFuIGV4YW1wbGUpDQo+DQo+dmZfYnVmZmVyc3JjIGV2ZW4gd2FybnMg eW91IGlmIHlvdSB0cnkgYW5kIGNoYW5nZSBjb2xvcnNwYWNlIHByb3BlcnRpZXMgbWlkLXN0cmVh bSwgYW5kIGZvciBnb29kIHJlYXNvbiAtIElNTyB0aGVyZSBpcyBubyBnZW5lcmFsIGV4cGVjdGF0 aW9uIHRoYXQgZmlsdGVycyBzaG91bGQgYmUgYWJsZSB0byBoYW5kbGUgZHluYW1pY2FsbHkgY2hh bmdpbmcgY29sb3JzcGFjZSBwcm9wZXJ0aWVzLiAoVGhpcyBpcyA+YSBmZWF0dXJlLCBub3QgYSBi dWcpDQo+DQo+VGhlcmUgKmFyZSogc29tZSBmaWx0ZXJzIHRoYXQgaGFuZGxlIGR5bmFtaWNhbGx5 IGNoYW5naW5nIGlucHV0IHByb3BlcnRpZXMgKGUuZy4gc2NhbGUsIHpzY2FsZSwgbGlicGxhY2Vi byksIGJ1dCB0aGVzZSBhcmUgdGhlIGV4Y2VwdGlvbiByYXRoZXIgdGhhbiB0aGUgbm9ybSwgYW5k IGl0J3Mgb25seSBiZWNhdXNlIHRoZXkncmUgYWxyZWFkeSB3cml0dGVuIGluIGEgd2F5IHRoYXQg Y2FuIHRyaXZpYWxseSA+aGFuZGxlIGR5bmFtaWMgY29udmVyc2lvbnMuDQo+DQo+SWYgaXQncyBk aWZmaWN1bHQgdG8gZG8gZnJvbSB3aXRoaW4gdmZfY29sb3JzcGFjZSwgdGhlcmUncyBubyBuZWVk IHRvIGRvIHNvLiBGZWVsIGZyZWUgdG8gYXNzdW1lIHRoYXQgZnJhbWUtPmNvbG9yc3BhY2UgPT0g aW5saW5rLT5jb2xvcnNwYWNlID09IGNvbnN0YW50LiAoRGl0dG8gY29sb3JfcmFuZ2UpDQoNClRo YW5rIHlvdSwgdGhpcyBpcyBwcmV0dHkgY2xlYXIuIEkgYWdyZWUgZHluYW1pYyBjaGFuZ2Ugb2Yg Y29sb3IgcmFuZ2Ugc291bmRzIHdlaXJkIGFuZCBJIGFtIHBsZWFzZWQgaXQgY2FuIGJlIGFzc3Vt ZWQgY29uc3RhbnQuDQpJbiBteSBwYXRjaCwgaXQgbWVhbnMgdGhlIHByb2JsZW1hdGljICJvdXRs aW5rLT5jb2xvcl9yYW5nZSA9IHh4eCIgeW91IHBvaW50ZWQgYXQgY2FuIGJlIGRyb3BwZWQuIE5p Y2UuDQoNCj4+IA0KPj4gPlRoZSBsb2dpYyB0aGF0IGlzIHVzZWQgaW4gdGhlIG90aGVyIFlVViBu ZWdvdGlhdGlvbiBhd2FyZSBmaWx0ZXJzIGlzIHRvIGp1c3Qgc2V0IGBvdXQtPmNvbG9yc3BhY2Ug PSBvdXRsaW5rLT5jb2xvcnNwYWNlYCBhbmQgYG91dC0+Y29sb3JfcmFuZ2UgPSBvdXRsaW5rLT5j b2xvcl9yYW5nZWAsIHNpbmNlIHRoZSBsaW5rIHByb3BlcnRpZXMgYXJlIGF1dGhvcml0YXRpdmUu DQo+PiBUaGlzIGlzIHRoZSBraW5kIG9mIGVhc3kgbG9naWMgSSB0cmllZCBhdCB0aGUgYmVnaW5u aW5nLiBTb21lIHdhdGVyIGhhcyBmbG93ZWQgdW5kZXIgdGhlIGJyaWRnZSwgbm90YWJseSBiODll ZTI2NTM5LCBidXQgSSBqdXN0IHRyaWVkIGF0IHRoZSBtb21lbnQgKHdpdGggY3VycmVudCBjb2Rl KSBhbiBlYXN5IHBhdGNoIHdpdGgganVzdCB0aGVzZSB0d28gbGluZXMsIGFuZCBpdCBzdGlsbCBk b2VzIG5vdCA+d29yayBhcyAiSSIgZXhwZWN0ZWQuDQo+PiBNb3JlIHNwZWNpZmljYWxseToNCj4+ IFdoZW4gcnVubmluZzogLi9mZnByb2JlIC1mIGxhdmZpIC1pIA0KPj4geXV2dGVzdHNyYyxzZXRw YXJhbXM9Y29sb3JfcHJpbWFyaWVzPWJ0NDcwYmc6Y29sb3JfdHJjPXNtcHRlMTcwbTpjb2xvcg0K Pj4gc3BhY2U9YnQ0NzBiZyxjb2xvcnNwYWNlPWJ0NzA5OnJhbmdlPXR2LHNjYWxlLHNob3dpbmZv DQo+PiBBdCB0aGUgZW50cnkgb2YgZmlsdGVyX2ZyYW1lKCksIHRoZSBvdXRsaW5rIHZhbHVlcyBh cmUgaW5jb3JyZWN0Og0KPj4gY29sb3JzcGFjZSA9IEFWQ09MX1NQQ19CVDQ3MEJHDQo+PiBBbmQg Y29sb3JfcmFuZ2UgPSBBVkNPTF9SQU5HRV9VTlNQRUNJRklFRCBTbywgdGhpcyBpcyB3aHkgSSBp bnRyb2R1Y2VkIA0KPj4gdGhlIG5lZ290aWF0aW9uIGZvciB0aGUgY29sb3JzcGFjZSB0byBlYXJs eSBzZXQgYW5kIHBlcnNpc3QgdGhpcyBvdXRsaW5rIHByb3BlcnR5Lg0KPj4gQnV0IGZvciB0aGUg cmFuZ2UsIEkgYW0gYml0IGNvbmZ1c2VkIHdpdGggdGhlIGRvY3VtZW50YXRpb24sIGl0IGlzIG5v dCBjbGVhciB0byBtZSwgYnV0IHBvc3NpYmx5IGl0IGlzIGV4cGVjdGVkIHRvIHBhc3MgdGhyb3Vn aD8gc28gaXQgY2Fubm90IGJlIG5lZ290aWF0ZWQsIHNvIEkgYW0gc3RpY2tlZCBpZiB0aGUgb3V0 bGluayByYW5nZSBjYW5ub3QgYmUgY2hhbmdlZCBkeW5hbWljYWxseS4uLg0KPg0KPk5vdGU6IHBh c3NpbmcgdGhyb3VnaCB0aGUgcmFuZ2UgdW50b3VjaGVkICppcyogdGhlIGRlZmF1bHQgYmVoYXZp b3IgKHZpYSBmZl9kZWZhdWx0X3F1ZXJ5X2Zvcm1hdHMpLiBTbyBJIHRoaW5rIHRoZSBjb3JyZWN0 IGxvZ2ljIGNhbiBiZSBjb25kZW5zZWQgaW50byBqdXN0Og0KPg0KPmlmIChvdXRfcm5nICE9IFVO U1BFQykgew0KPiAgICByZXQgPSBzZXRfY29tbW9uX2NvbG9yX3JhbmdlcyhtYWtlX3NpbmdsZXRv bihvdXRfcm5nKSk7DQo+ICAgIGlmIChyZXQgPCAwKQ0KPiAgICAgICAgcmV0dXJuIHJldDsNCj59 DQo+DQo+VGhhdCB3YXksIGlmIHRoZSB1c2VyIHBhc3NlcyB1bnNwZWMsIGl0J3MgZ3VhcmFudGVl ZCB0aGF0IHRoZSBpbnB1dCByYW5nZSA9PSBvdXRwdXRfcmFuZ2UgKGJ1dCB3aXRoIG5vIHByZWZl cmVuY2UgZm9yIGFueSBzcGVjaWZpYyByYW5nZSk7IGJ1dCBpZiB0aGUgdXNlciBwYXNzZXMgYSBz cGVjaWZpYyByYW5nZSwgYm90aCB0aGUgaW5wdXQgYW5kIG91dHB1dCBvZiB0aGUgZmlsdGVyIGFy ZSBmb3JjZWQgdG8gYmUgPnRoaXMgcmFuZ2UuDQoNCldlbGwsIHRoaXMgaXMgd2hlcmUgSSBzdGls bCBub3QgZmVlbCBjb25maWRlbnQuIER5bmFtaWMgaW5wdXQgcmFuZ2UgaXMgbm90IGV4cGVjdGVk IGJ1dCBzb21ld2hhdCBzdGlsbCBzdXBwb3J0ZWQuDQpGaXJzdCB0aGluZzogaW4gbXkgdW5kZXJz dGFuZGluZywgdGhlIGNvbG9yc3BhY2UgZmlsdGVyIGlzIGFpbWVkIGF0IGNvbnZlcnRpbmcgZnJv bSBhbnkgaW5wdXQgcmFuZ2UgdG8gdGhlIGRlc2lyZWQgb3V0cHV0IHJhbmdlIChpZiBzcGVjaWZp ZWQpLCBhbmQgSSB0aGluayBteSBwYXRjaCBpcyBvayB3aXRoIHRoZSBjdXJyZW50ICJmZl9mb3Jt YXRzX3JlZihmZl9tYWtlX2Zvcm1hdHNfbGlzdF9zaW5nbGV0b24ocy0+dXNlcl9ybmcpLCAmb3V0 bGluay0+aW5jZmcuY29sb3JfcmFuZ2VzKSIuIEkgZG9uJ3QgdGhpbmsgdGhleSBhcmUgaXNzdWVz IGFnYWluc3QgaXQsIHNvIEkgd2lsbCBrZWVwIGl0IHRoYXQgd2F5IHVubGVzcyB5b3Ugb2JqZWN0 Lg0KU2Vjb25kIHRoaW5nOiBJIHVuZGVyc3RhbmQgdGhlIGRlZmF1bHQgYmVoYXZpb3VyIGlzIHRv IHBhc3MgdGhyb3VnaCAoSSBtZWFuL2d1ZXNzIGR5bmFtaWNhbGx5KSB0aGUgcmFuZ2UsIGJ1dCBp dCBpcyBub3Qgd2hhdCBJIGV4cGVyaWVuY2UuIFRvIHRlc3QgdGhpcywgbXkgcGF0Y2ggc2VyaWUg aW5jbHVkZXMgYSBmaXJzdCBwYXRjaCB0byBtYWtlIHNldHBhcmFtcyBzdXBwb3J0IHRpbWVsaW5l IGFuZCBoZXJlIGl0IGlzIHdoZW4gcnVubmluZyBhICJkeW5hbWljIGlucHV0IHJhbmdlIGlucHV0 IjoNCmZmbXBlZyAtZiBsYXZmaSAtaSB5dXZ0ZXN0c3JjIC12ZiAic2V0cGFyYW1zPWNvbG9yX3By aW1hcmllcz1idDQ3MGJnOmNvbG9yX3RyYz1zbXB0ZTE3MG06Y29sb3JzcGFjZT1idDQ3MGJnOnJh bmdlPXVua25vd24sDQpzZXRwYXJhbXM9cmFuZ2U9cGM6ZW5hYmxlPSdiZXR3ZWVuKG4sMSwyKScs DQpzZXRwYXJhbXM9cmFuZ2U9dHY6ZW5hYmxlPSdiZXR3ZWVuKG4sMiwzKScsDQpjb2xvcnNwYWNl PWJ0NzA5LHNjYWxlLHNob3dpbmZvIiAtZiBudWxsIC1mcmFtZXMgMyAtIDI+JjF8YXdrICIvY29s b3JfLyB7cHJpbnQgXCQ0IFwiIFwiIFwkNX0iDQoNCkN1cnJlbnQgbWFzdGVyIChzb2xlbHkgcGF0 Y2hlZCBmb3IgdGltZWxpbmUgc3VwcG9ydCBpbiBzZXRwYXJhbXMpOg0KCWNvbG9yX3JhbmdlOnR2 IGNvbG9yX3NwYWNlOmJ0NDcwYmcNCgljb2xvcl9yYW5nZTp0diBjb2xvcl9zcGFjZTpidDQ3MGJn DQoJY29sb3JfcmFuZ2U6dHYgY29sb3Jfc3BhY2U6YnQ0NzBiZw0KTXkgY3VycmVudCBwYXRjaDoN Cgljb2xvcl9yYW5nZTp1bmtub3duIGNvbG9yX3NwYWNlOmJ0NzA5DQoJY29sb3JfcmFuZ2U6cGMg Y29sb3Jfc3BhY2U6YnQ3MDkNCgljb2xvcl9yYW5nZTp0diBjb2xvcl9zcGFjZTpidDcwOQ0KUmVs ZWFzZSB0YWcgNi4xIChzb2xlbHkgcGF0Y2hlZCBmb3IgdGltZWxpbmUgc3VwcG9ydCBpbiBzZXRw YXJhbXMpOg0KCWNvbG9yX3JhbmdlOnVua25vd24gY29sb3Jfc3BhY2U6YnQ3MDkNCgljb2xvcl9y YW5nZTpwYyBjb2xvcl9zcGFjZTpidDcwOQ0KCWNvbG9yX3JhbmdlOnR2IGNvbG9yX3NwYWNlOmJ0 NzA5DQpNeSBjdXJyZW50IHBhdGNoIHdpdGhvdXQgdGhlIHByb2JsZW1hdGljICJvdXRsaW5rLT5j b2xvcl9yYW5nZSA9IHh4eCINCgljb2xvcl9yYW5nZTp0diBjb2xvcl9zcGFjZTpidDcwOQ0KCWNv bG9yX3JhbmdlOnR2IGNvbG9yX3NwYWNlOmJ0NzA5DQoJY29sb3JfcmFuZ2U6dHYgY29sb3Jfc3Bh Y2U6YnQ3MDkNCg0KU28sIEkgY2FuIHJlbW92ZSB0aGUgcHJvYmxlbWF0aWMgb3V0bGluayBjaGFu Z2UsIGJ1dCBpdCBjYXVzZXMgbW9yZSBvciBsZXNzIGEgc3VidGxlIDw8cmVncmVzc2lvbj4+OyBJ IGRvbid0IHRoaW5rIGl0IGlzIHRoZSBnb29kIHdvcmQgZm9yIGl0IHNpbmNlIHdoYXQgaGFzIGJl ZW4gc2FpZCBhYm92ZS4uLg0KPT4gSWYgSSByZWFkIHlvdSBjb3JyZWN0bHksIEkgcmVhbGx5IGhh dmUgdG8gZHJvcCB0aGlzIHByb2JsZW1hdGljIG91dGxpbmsgc2V0dGluZywgYW5kIHRoZSByZXN1 bHRpbmcgc2xpZ2h0IGNoYW5nZSBpbiB0aGUgY29sb3JzcGFjZSBmaWx0ZXIgYmVoYXZpb3VyIGlz IG9rYXkuDQo9PiBBdCB0aGUgZW5kLCBpZiBJIGRyb3AgdGhlIG91dGxpbmsgc2V0dGluZywgY2xl YXIgdGhlIG5pdHMgYW5kIHVwZGF0ZSB0aGUgY29tbWl0IG1zZyB0byByZW1vdmUgdGhlICJkeW5h bWljIGlucHV0IHJhbmdlIHNjZW5hcmlvIiwgSSB3b3VsZCBiZSBvbiB0aGUgcmlnaHQgdHJhY2ss IHNvIHRoaXMgaXMgdG8gYmUgbXkgbmV4dCB2ZXJzaW9uLg0KDQo+SG9wZWZ1bGx5IHRoYXQgY2xl YXJzIHVwIHNvbWUgY29uZnVzaW9uPw0KU3VyZSEgU29tZSBkZWZpbml0ZSBjb25maXJtYXRpb25z IHJlbWFpbiBidXQgdGhhbmsgeW91IGFscmVhZHkgZm9yIGFsbCB0aGlzLg0KDQpOaWNvbGFzDQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2 ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxp bmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBz dWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==