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 7E5684E5C4 for ; Thu, 13 Mar 2025 04:57:19 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CF60168DFB4; Thu, 13 Mar 2025 06:57:15 +0200 (EET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2090.outbound.protection.outlook.com [40.92.89.90]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9688368DF4B for ; Thu, 13 Mar 2025 06:57:09 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wgBP1OKtmnHfrWRKmBJ/oEckG2+hLzT6ukZEypABaU2pDFpi4qVGRQiWmQir0bpSTjqytHwNjEHODfoc1hDuNMMZyWPQJxNZUhePrev7XOet5s+fstLHRy8pf3HpHvRanK0E3D9PmoZTzAC/8JOXwUoEmJss3ba8SY5SmJIs9J1rfEw5xdoi2OtJfGp3G5RRUfFmyM9UftU2Jh9KGz9oxiSY646w1szR1bNKUZGIzLMij7mw2fRiho6DM2AhDZ3czLQSEAISvIROP+O7kpgU3XhJlYWjjg6cDI75zfYkGWIRY6aH1wUbSjyD0riXTa1odY3TmfY2GV1dktx+73e9/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=6a3S4+o/R8YD2MZAPS2nvEF4YcYJjnLv9s+OiKv0ZmI=; b=L8hIAwHNoNujWOjiO8Gmh65KlELkuIZjufa+c8nEQoBBRkNGUpl3GhLq9OSXReyrXAs3xNf0boCbUJlh8YwEIt+zB/8ZVab8NYwN6eHUxkD7ZkZavzqHTTEUEKxFqjTSfZSb8a9yVLdFOuKw6s5L53TRpjHvbjal36LgFz02G9PmXd743vGxUlKIps8N12Hql+mli5aQtMAc+DEdWNzlnfXujX6ODXvZs5Hz3gHi3+sY1axLHXwCcKCsSgzXfX46ZOIthKfy6ELjwIZPUl8kB5Ffa1QheALFI/hSqqk+WUEMWsW215P6xmDio/HAhwed6XN2cIsrBJT+s5BUhM3r/Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6a3S4+o/R8YD2MZAPS2nvEF4YcYJjnLv9s+OiKv0ZmI=; b=KY3NGugF2S7bKvFpAQezCDYxnK9n5/BNXUfaKjMisokmRFKCMOgmjgxGgYNh2zMiHRmbA4aXHQCkyRewVuIP8szCvyZb8Z7quOTMNKmu9Un5hoN5xF7upQOI5njIx1aPqB2peTQBzX7Ls8Zta8nftufncP+5mZpIYRdI/4xDssgUy7kMgYldkCl0gTqKvDFi9sKyfnylQrip+zNGSgMMLw6SKmXspCDP3zTe0qtckM/cfHbFH5vVlg0QihOXzfShh6P5WIboGR6PyStGmJ0kxUE+vtbF8fwuloODsVGOdqQswzaHAUsZo26bL0d5ACCKcAjmQ5OI3IzeUmyEfQh/Nw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AS4P250MB0847.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:586::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.28; Thu, 13 Mar 2025 04:57:07 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%5]) with mapi id 15.20.8534.024; Thu, 13 Mar 2025 04:57:07 +0000 Message-ID: Date: Thu, 13 Mar 2025 05:57:06 +0100 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250310030837.60814-1-dev@lynne.ee> <20250310030912.60902-1-dev@lynne.ee> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-ClientProxiedBy: ZR0P278CA0185.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:44::18) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <302314a8-f681-421a-a233-4fb248b14fdb@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AS4P250MB0847:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d1aa354-b25c-4663-b291-08dd61eb8173 X-Microsoft-Antispam: BCL:0; ARA:14566002|8060799006|5072599009|7092599003|15080799006|19110799003|461199028|6090799003|440099028|3412199025|12091999003|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?WmJQeDRSQXpXRG1MbitPbHhxb2htcXRrK0JsZlpISHMwdkc4VG0rU0sxWHFK?= =?utf-8?B?UWh1Z20xR0NxMjhXTU5ZUnB6TnE4Y2g4MlRsYVY5cklvY3NvYUZESlg3QUVm?= =?utf-8?B?dVZQdStjTWVtREhrRXJGSkV2TFNHV29yT1NzQTJQRUZTUGNNWXlFTFdtK0Rp?= =?utf-8?B?S2UyKzVJNzQrYTh1R2gvSGd3UklYZDFpdzRBYWNhanUzcE42MXdBVkpZcndQ?= =?utf-8?B?bEZBN3RDcmNSNzlsVGNQdkNzSnUzRWZYTVkyVGxLRHN0UXhPZ1RlUllhRWND?= =?utf-8?B?NDNOZHE4ZHFTbXltc1NJc2k4NktVdEpXcDg3d0NLa0ExNThWRHNubFJDaHU1?= =?utf-8?B?bHR4bHZRMEkyQkhISFdTOU9Wb2IreTQwd29taTB6SWxHODkrb3V1M2hJeEZ5?= =?utf-8?B?enVINDBiNjhESkliNjk1OHUwMDVsd1YvbWJMb1BjTTZsL1BEYXdlRWlNN3pH?= =?utf-8?B?VFB0c3hiL3V0UnZYOUZVcFVqTTF2UTI1a0srZDVid1RzTzhkQitkUEhmc2gw?= =?utf-8?B?aCs0b0V1ZTNRYnZTYjFJRllzMmtvcWFjbENmZ2FxakprUGZwWUtVT2FPNTU3?= =?utf-8?B?cmljTC82b3V1Nnl2Y3FiN3hBUFVxN0R0QnBJdU81L2tsOGF6eGYzeDNzcm0w?= =?utf-8?B?VDY1aGhJekZ3UGRiNEVHaTkzTytodHRTUW96QU9Ib2xYbkVOajRUalNIV24w?= =?utf-8?B?UDZRL3I4cFlBM0UyQ043Q0phcnk0eUJOYnRQcFZ1QnFhQmVUSWtzNVJzWHM1?= =?utf-8?B?eU45cDE4Z1ZQZVNVRHZYTVh1R3U4Rm0vOHYwYnhiVnM1RkdZSmNOYUtuU3Rk?= =?utf-8?B?bTc3N2oycDl1UitBNDZZZStjVU5aSGZGZk5ZakpzWnV5QTRJNEtvditPV2JS?= =?utf-8?B?Z1dFQndveUFEWjdIMVhSb2RxUktLZWtob2pUcFhoZlRPemFEZUlhMGdISlhq?= =?utf-8?B?ZEVIam5LQXlxU1BTMUIwT0pyS3dRQlBkbmEwdDhkdVVMMlR6YXlLU0EwUXM4?= =?utf-8?B?U0pyMDJMaXRocGFtS3RYc0drQ2pXenBvblpCc1BCaWMwSUVoU3BrUzc4WXBX?= =?utf-8?B?ZXpPbFI5MlFXTVhsd2lPZkIvVjM1eTE2dDhlaWVwMGdEbTF1blBxM2JjNnN6?= =?utf-8?B?d2JZK3liWThma2NGdGdpRTBFSERjWU8rQXZ2TVB1dGg2WEFFSUhHb0N5MldU?= =?utf-8?B?cWdaeWphSGtBQ1J4TnpHNGQ5a1VFOTR0R0ZNYm5nY3dkenJqUUxtc2NrYUF0?= =?utf-8?B?UmViRDFPQnNxUmhRTDZKVDVXdWtUTzdYcFhPL3VuaXdwbGRQTURQdGd6Nmpk?= =?utf-8?B?YXB0VTRoRGV1Zmxwc3l6ZWYwY0RLOFZpRVh1bXczRkFxOS9VNXE5WEUyRSty?= =?utf-8?B?Z21kY0k0NGI2THZGS0hpMW9LL1d4TytVK21hNmw2aWlPQzBZVWhaSkh1dVdG?= =?utf-8?B?bXNJNmtCeVY5VGlWU0Znek0zWmZBVzg0YmovZVo3N3VlekplWnl0b2ZuZHd6?= =?utf-8?B?V1Y2eXRXSU90ZnRnRkFDZ0h4dFJDa0Q0NGR6MytJU0VOMndUZmlYTXUrTUNa?= =?utf-8?Q?twLAIKpK7tDgLF0rJhpUpHzKA=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z2sxRE5ObmdKSlE1Y1d2L0pYQndyVFh5VjhFWjFSR2VqdmNobzgrbzNKcThE?= =?utf-8?B?NENZckM5cTlGd29vb2tKQWtMMXRqVXN6ekVZWmlpbG5BaEtybk5VOFNlTXha?= =?utf-8?B?S1F4N1VMMCtycU5HbDhhMzJodnpFdjRjYURqcmoxUWZnOE1VcytQSmMwalFJ?= =?utf-8?B?NndTbW1JNGFPVHpWdmxEdUkwb0ZZZjBBbGVoK25ONW13enJjTzM0aUhMYytt?= =?utf-8?B?SGdVYmVOTmhRZGltdW9yakp5aGUyczdPUVc5b0hEQ2FtUnJqOXdkR0I3bFJ4?= =?utf-8?B?L3JqU25KbWh0Um9KZXJYWHdROUxPaGN3U1JkbnU5bWhQaVpGVm1WSWkzcEh5?= =?utf-8?B?SlN4ckV0VFJ5NzB2WS85WEhRUkY5Mjl3a3hRbG84YnB5enJ1bUMrUzVoK0tV?= =?utf-8?B?aHpjNE50bGhUUkhTSTB0N3ZnVHBCM25tM2hYYWk1bDlHWC9NNG1ublo3YWJR?= =?utf-8?B?dXBITDBGZlk4OWhSaTZJY25HYXhGb3kydmdWeG95OHVGK1JISzVZUWpqMGp4?= =?utf-8?B?WmYwZ09LSm9RN1V0bWZYckRKWHU4L2M4eGU4STUxMnIrSk5SYXUxUENEOXRi?= =?utf-8?B?aDAxWEhWQis0OTVSM2Qybm1EaElmNmNVK05pMDhVVVV2MkE1WDUyWndHNll6?= =?utf-8?B?emkyc3ZmMWNMT3J5bGdqOWZtWFVDZDNKKzVJelpwZzBGU2FYVWphN01mZU1h?= =?utf-8?B?VzUxaGp5T3VpWkdOM3E4S3gzdGFRbVVCQWVxaGxmeElKMGRYc0hsaFpXSFBv?= =?utf-8?B?UktqUzFCWjIxaHl0MmZ5MTZKamVIbXlyMXFybDVNYm1PTU5FalB5ZVhCcE0w?= =?utf-8?B?Y29sR0ZPV3NGMEYvUSt4a1dqTk8vSjJic1dsa3R5R0tCWUtWL3RnVW40MHE5?= =?utf-8?B?SWNVdWFyR1FHckhkYkJON0VZRm5uaVMycGZycVljazBRRVEybVF0dUJuN29Y?= =?utf-8?B?VDhsWWlIT3UyaXQwMVVlUXFyaDhlR1ZIYTAvdFpzRnRpRW53ZWhheEUyY3FO?= =?utf-8?B?MTNQRGZDYzhITmRFL3gvSHhIV3RDN0I4UHFSRjJHYkNzS2xzSUVJTlJNd1JI?= =?utf-8?B?Nk4yWmVzeW5lTm5LMkZFbEZkUUNXK1puRmhlU3VRQWQ4V053Ynd6MnhwTExh?= =?utf-8?B?S1QvdmRTdVdDL1RyZTBlMy9QTUtLM1QrWEowMGozS2psdTVLZkVPdStzNDk3?= =?utf-8?B?aHVpWC9Ja2VKYS9zODl6YjF2M21NZkprZUdPTk1TRXU5THNtRU5sZk5FdmZm?= =?utf-8?B?NGl3Y3RJbExlQXVCZlNTRlBCUHhMWHllVSt2V0NWMTR2M2dEd1V3ZzNERGNW?= =?utf-8?B?blZhc0poWVArZXRpTlZPUzZaOHA0cXlhV0hYMTA5Wk1USFU2SEYwSTF6RG1i?= =?utf-8?B?RTFVY3RQK094T0ZvMlBuNUUyQW9udDZDNHZGT3BIT04yRGIrOVFiYVZpbTNN?= =?utf-8?B?cUh4V1lwdDJNSTZFSlllY1VNYlNGZmkwdlVMRHlMQTdROEJrdmUxYVdWMzBB?= =?utf-8?B?a0RQTjdPZlFOYnl2aFFjVXlLR1pNSzMxT2ZjVHhlWENuNFFaWUFTalRTRmxV?= =?utf-8?B?Q21yQ0VPc3NlazZsOTM1bnczWjNjem5zU3hTOElFbm9tQlMvWU5JVmU3bW03?= =?utf-8?B?S0VqZm9vUitUMkR2WS9DbitWSW1zUGtseUJtdGhyK0J3SUYraW9ETjg1elBD?= =?utf-8?B?ZTZsT1Z3enYwSU1jaUZpdDNJeG9MRHZlNUU1dkxCZnRlTlFmVFdmMytRPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2d1aa354-b25c-4663-b291-08dd61eb8173 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Mar 2025 04:57:07.6670 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4P250MB0847 Subject: Re: [FFmpeg-devel] [PATCH 11/13] ffv1dec: reference the current packet into the main context 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: THlubmU6Cj4gCj4gCj4gT24gMTMvMDMvMjAyNSAwMjoyNCwgQW5kcmVhcyBSaGVpbmhhcmR0IHdy b3RlOgo+PiBMeW5uZToKPj4+IE9uIDEwLzAzLzIwMjUgMTg6NDIsIEx5bm5lIHdyb3RlOgo+Pj4+ IE9uIDEwLzAzLzIwMjUgMDQ6MTQsIEFuZHJlYXMgUmhlaW5oYXJkdCB3cm90ZToKPj4+Pj4gTHlu bmU6Cj4+Pj4+PiAtLS0KPj4+Pj4+IMKgwqAgbGliYXZjb2RlYy9mZnYxLmjCoMKgwqAgfMKgIDMg KysrCj4+Pj4+PiDCoMKgIGxpYmF2Y29kZWMvZmZ2MWRlYy5jIHwgMTkgKysrKysrKysrKysrKysr KystLQo+Pj4+Pj4gwqDCoCAyIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCj4+Pj4+Pgo+Pj4+Pj4gZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvZmZ2MS5oIGIv bGliYXZjb2RlYy9mZnYxLmgKPj4+Pj4+IGluZGV4IDhjMGU3MTI4NGQuLjg2MGE1YzE0YjEgMTAw NjQ0Cj4+Pj4+PiAtLS0gYS9saWJhdmNvZGVjL2ZmdjEuaAo+Pj4+Pj4gKysrIGIvbGliYXZjb2Rl Yy9mZnYxLmgKPj4+Pj4+IEBAIC0xNzQsNiArMTc0LDkgQEAgdHlwZWRlZiBzdHJ1Y3QgRkZWMUNv bnRleHQgewo+Pj4+Pj4gwqDCoMKgwqDCoMKgwqAgKiBOT1Qgc2hhcmVkIGJldHdlZW4gZnJhbWUg dGhyZWFkcy4KPj4+Pj4+IMKgwqDCoMKgwqDCoMKgICovCj4+Pj4+PiDCoMKgwqDCoMKgwqAgdWlu dDhfdMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZyYW1lX2RhbWFnZWQ7Cj4+Pj4+PiArCj4+Pj4+PiAr wqDCoMKgIC8qIFJlZmVyZW5jZSB0byB0aGUgY3VycmVudCBwYWNrZXQgKi8KPj4+Pj4+ICvCoMKg wqAgQVZQYWNrZXQgKnBrdF9yZWY7Cj4+Pj4+PiDCoMKgIH0gRkZWMUNvbnRleHQ7Cj4+Pj4+PiDC oMKgIGludCBmZl9mZnYxX2NvbW1vbl9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCwgRkZWMUNv bnRleHQgKnMpOwo+Pj4+Pj4gZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvZmZ2MWRlYy5jIGIvbGli YXZjb2RlYy9mZnYxZGVjLmMKPj4+Pj4+IGluZGV4IGVhYTIxZWViZGYuLjYzOTZmMjJmNzkgMTAw NjQ0Cj4+Pj4+PiAtLS0gYS9saWJhdmNvZGVjL2ZmdjFkZWMuYwo+Pj4+Pj4gKysrIGIvbGliYXZj b2RlYy9mZnYxZGVjLmMKPj4+Pj4+IEBAIC00NjksNiArNDY5LDEwIEBAIHN0YXRpYyBhdl9jb2xk IGludCBkZWNvZGVfaW5pdChBVkNvZGVjQ29udGV4dAo+Pj4+Pj4gKmF2Y3R4KQo+Pj4+Pj4gwqDC oMKgwqDCoMKgIGYtPnBpeF9mbXQgPSBBVl9QSVhfRk1UX05PTkU7Cj4+Pj4+PiDCoMKgwqDCoMKg wqAgZi0+Y29uZmlndXJlZF9waXhfZm10ID0gQVZfUElYX0ZNVF9OT05FOwo+Pj4+Pj4gK8KgwqDC oCBmLT5wa3RfcmVmID0gYXZfcGFja2V0X2FsbG9jKCk7Cj4+Pj4+PiArwqDCoMKgIGlmICghZi0+ cGt0X3JlZikKPj4+Pj4+ICvCoMKgwqDCoMKgwqDCoCByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwo+ Pj4+Pj4gKwo+Pj4+Pj4gwqDCoMKgwqDCoMKgIGlmICgocmV0ID0gZmZfZmZ2MV9jb21tb25faW5p dChhdmN0eCwgZikpIDwgMCkKPj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiByZXQ7 Cj4+Pj4+PiBAQCAtNzAxLDYgKzcwNSwxMCBAQCBzdGF0aWMgaW50IGRlY29kZV9mcmFtZShBVkNv ZGVjQ29udGV4dCAqYXZjdHgsCj4+Pj4+PiBBVkZyYW1lICpyZnJhbWUsCj4+Pj4+PiDCoMKgwqDC oMKgwqAgLyogU3RhcnQgKi8KPj4+Pj4+IMKgwqDCoMKgwqDCoCBpZiAoaHdhY2NlbCkgewo+Pj4+ Pj4gK8KgwqDCoMKgwqDCoMKgIHJldCA9IGF2X3BhY2tldF9yZWYoZi0+cGt0X3JlZiwgYXZwa3Qp Owo+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGlmIChyZXQgPCAwKQo+Pj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgcmV0dXJuIHJldDsKPj4+Pj4+ICsKPj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqDC oMKgIHJldCA9IGh3YWNjZWwtPnN0YXJ0X2ZyYW1lKGF2Y3R4LCBhdnBrdC0+ZGF0YSwgYXZwa3Qt Cj4+Pj4+PiA+c2l6ZSk7Cj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAocmV0IDwgMCkK Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHJldDsKPj4+Pj4+IEBA IC03MjAsMTUgKzcyOCwyMSBAQCBzdGF0aWMgaW50IGRlY29kZV9mcmFtZShBVkNvZGVjQ29udGV4 dCAqYXZjdHgsCj4+Pj4+PiBBVkZyYW1lICpyZnJhbWUsCj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHVpbnQzMl90IGxlbjsKPj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcmV0ID0gZmluZF9uZXh0X3NsaWNlKGF2Y3R4LCBhdnBrdC0+ZGF0YSwgYnVmX2VuZCwg aSwKPj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAmcG9zLCAmbGVuKTsKPj4+Pj4+IC3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGlmIChyZXQgPCAwKQo+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAg aWYgKHJldCA8IDApIHsKPj4+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYXZf cGFja2V0X3VucmVmKGYtPnBrdF9yZWYpOwo+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHJldHVybiByZXQ7Cj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9 Cj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGJ1Zl9lbmQgLT0gbGVuOwo+Pj4+ Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXQgPSBod2FjY2VsLT5kZWNvZGVfc2xp Y2UoYXZjdHgsIHBvcywgbGVuKTsKPj4+Pj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChy ZXQgPCAwKQo+Pj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKHJldCA8IDApIHsKPj4+ Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYXZfcGFja2V0X3VucmVmKGYtPnBr dF9yZWYpOwo+Pj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVy biByZXQ7Cj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4+Pj4+PiDCoMKgwqDCoMKg wqDCoMKgwqDCoCB9Cj4+Pj4+PiArCj4+Pj4+PiArwqDCoMKgwqDCoMKgwqAgYXZfcGFja2V0X3Vu cmVmKGYtPnBrdF9yZWYpOwo+Pj4+Pj4gwqDCoMKgwqDCoMKgIH0gZWxzZSB7Cj4+Pj4+PiDCoMKg wqDCoMKgwqDCoMKgwqDCoCByZXQgPSBkZWNvZGVfc2xpY2VzKGF2Y3R4LCBjLCBhdnBrdCk7Cj4+ Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAocmV0IDwgMCkKPj4+Pj4+IEBAIC04MjcsNiAr ODQxLDcgQEAgc3RhdGljIGF2X2NvbGQgaW50Cj4+Pj4+PiBmZnYxX2RlY29kZV9jbG9zZShBVkNv ZGVjQ29udGV4dCAqYXZjdHgpCj4+Pj4+PiDCoMKgwqDCoMKgwqAgZmZfcHJvZ3Jlc3NfZnJhbWVf dW5yZWYoJnMtPmxhc3RfcGljdHVyZSk7Cj4+Pj4+PiDCoMKgwqDCoMKgwqAgYXZfcmVmc3RydWN0 X3VucmVmKCZzLT5od2FjY2VsX2xhc3RfcGljdHVyZV9wcml2YXRlKTsKPj4+Pj4+ICvCoMKgwqAg YXZfcGFja2V0X2ZyZWUoJnMtPnBrdF9yZWYpOwo+Pj4+Pj4gwqDCoMKgwqDCoMKgIGZmX2ZmdjFf Y2xvc2Uocyk7Cj4+Pj4+PiDCoMKgwqDCoMKgwqAgcmV0dXJuIDA7Cj4+Pj4+Cj4+Pj4+IFdoeSBu b3Qgc2ltcGx5IHVzZSBhIGNvbnN0IEFWUGFja2V0Kj8KPj4+Pgo+Pj4+IE5vIHJlYXNvbi4gRml4 ZWQgbG9jYWxseS4KPj4+PiBUaGFua3MuCj4+Pgo+Pj4gKnJldmVydGVkIHRoaXMgY2hhbmdlLgo+ Pj4gV2UgbmVlZCB0byByZWYgdGhlIHBhY2tldCwgc2luY2Ugd2UgbWFwIGl0cyBtZW1vcnkgYW5k IGxldCB0aGUgR1BVIHVzZQo+Pj4gaXQgZGlyZWN0bHkgd2l0aG91dCBjb3B5aW5nIHRoZSBjb250 ZW50cy4gNmsxNmJpdCBjb250ZW50IGF0IDI0ZnBzIGlzCj4+PiB0eXBpY2FsbHkgYXJvdW5kIDJH YnBzIHdoZW4gY29tcHJlc3NlZCwgc28gYXZvaWRpbmcgY29waWVzIGlzIGltcG9ydGFudC4KPj4K Pj4gSG93IGxvbmcgZG9lcyB0aGUgaHdhY2NlbCBuZWVkIHRoaXMgZGF0YT8KPiAKPiBVbnRpbCB0 aGUgZnJhbWUgaGFzIGJlZW4gYXN5bmNocm9ub3VzbHkgZGVjb2RlZC4gV2UgZ2l2ZSBhbiBvdXRw dXQgZnJhbWUKPiB3aXRoIGEgc2VtYXBob3JlIHRoYXQgcmVjZWl2ZXJzIG5lZWQgdG8gd2FpdCBv biB0byBkZXRlcm1pbmUgd2hlbiB0aGF0IGlzLgo+IAo+IE9uIHRoZSBkZWNvZGVyLXNpZGUsIHRo ZSBoYXJkd2FyZSBoYXMgYSBmaXhlZCBudW1iZXIgb2YgcXVldWVzIHdoZXJlCj4gc3VibWlzc2lv bnMgY2FuIGJlIHNlbnQgdG8gYXN5bmNocm9ub3VzbHkuIFdlIHRyZWF0IGl0IGFzIGEgcmluZyBi dWZmZXIKPiBhbmQga2VlcCBhIHJlZmVyZW5jZSB0byBhbGwgcmVzb3VyY2VzIG91ciBzaWRlIGZv ciBlYWNoIHN1Ym1pc3Npb24sCj4gdW50aWwgd2UgbmVlZCB0byByZXVzZSB0aGUgc2xvdCwgYXQg d2hpY2ggcG9pbnQgd2Ugd2FpdCBvbiB0aGUgZnJhbWUKPiBkZWNvZGluZyB0byBjb21wbGV0ZSAo d2hpY2ggaXQgdXN1YWxseSBoYXMpLCBhbmQgd2UgcmVsZWFzZSBhbGwKPiByZXNvdXJjZXMgdXNl ZC4KPiAKPiBPdXRwdXQgZnJhbWVzIGFsc28gaGF2ZSBhIGJpdCBvZiBzdGF0ZSB0aGF0IGhhcyB0 byBiZSBmcmVlZCBvbmNlIHRoZQo+IGZyYW1lIGlzIG1hcmtlZCAodW5yZWZlcmVuY2VkKSBieSB0 aGUgZGVjb2RlciBhcyBubyBsb25nZXIgYmVpbmcgbmVlZGVkCj4gYXMgYSByZWZlcmVuY2UsIHRo aXMgaXMgZG9uZSBpbiB0aGUgRkZIV0FjY2VsLmZyZWVfZnJhbWVfcHJpdiBjYWxsYmFjay4KPiBU aGVyZSwgd2UgaGF2ZSB0byB3YWl0IGZvciB0aGUgbGFzdCBpbnRlcm5hbCB1c2Ugb2YgdGhlIGZy YW1lIHRvIGJlCj4gZmluaXNoZWQgKGRvbmUgdmlhIHRoZSB2cC0+d2FpdF9zZW1hcGhvcmVzKCkg Y2FsbCBpbiB2dWxrYW5fZGVjb2RlLmMpLgo+IAo+IFRoaXMgaXMgdmFsaWQgZm9yIGJvdGggQVNJ QyBoYXJkd2FyZSBkZWNvZGVycyBhbmQgYSBjb21wdXRlIHNoYWRlciBiYXNlZAo+IGltcGxlbWVu dGF0aW9uLCBzaW5jZSB0aGUgdHdvIHNoYXJlIHRoZSBzYW1lIGNvZGUsIGV4Y2VwdCBmb3IgZGVj b2RlCj4gc3VibWlzc2lvbnMuCgoxLiBJZiB5b3UgbmVlZCBhIHJlZmVyZW5jZSB0byB0aGUgcGFj a2V0J3MgZGF0YSwgdGhlbiByZWZlcmVuY2UKQVZQYWNrZXQuYnVmLCBub3QgdGhlIHdob2xlIEFW UGFja2V0LiBUaGlzIGF2b2lkcyBhbGxvY2F0aW5nIGEgc3BhcmUKQVZQYWNrZXQgYXMgd2VsbCBh cyBjb3B5aW5nIHNpZGUgZGF0YS4KMi4gSXQgc291bmRzIHZlcnkgd3JvbmcgYW5kIGZyYWdpbGUg dGhhdCB0aGUgZGVjb2RlciBoYXMgdG8ga2VlcCBhCnJlZmVyZW5jZSBiZWNhdXNlIHRoZSBod2Fj Y2VsIG1pZ2h0IG5lZWQgaXQuIFRoZXJlIG1heSBiZSBmdXR1cmUKaHdhY2NlbHMgdGhhdCBkb24n dCBuZWVkIHN1Y2ggYSByZWZlcmVuY2UgZXRjLiBJdCBzZWVtcyBiZXR0ZXIgdG8gZXh0ZW5kCmUu Zy4gdGhlIHN0YXJ0X2ZyYW1lIGNhbGxiYWNrIGFuZCBwYXNzIGEgcmVmZXJlbmNlIHRvIHRoZSBp bnB1dCBkYXRhIChubwpuZWVkIHRvIGNoYW5nZSB0aGlzIGZvciBhbGwgb3RoZXIgc3RhcnRfZnJh bWUgY2FsbHM7IHRoZXkgY2FuIHBhc3MgTlVMTAp1bnRpbCBuZWVkZWQpLgozLiBJZiB0aGUgdXNl ciBjbG9zZXMgdGhlIGRlY29kZXIgKHdoaWNoIGlzIGFsbG93ZWQgYXQgYW55IHRpbWUsIGV2ZW4K d2l0aG91dCBkcmFpbmluZyB0aGUgZGVjb2RlciksIGZmX2NvZGVjX2Nsb3NlKCkgdW5pbml0aWFs aXplcyB0aGUKaHdhY2NlbCBhZnRlciBjYWxsaW5nIHRoZSBkZWNvZGVyJ3MgY2xvc2UgZnVuY3Rp b247IHRoZSBsYXR0ZXIKdW5yZWZlcmVuY2VzIHRoZSByZWZlcmVuY2UgdG8gdGhlIHBhY2tldC4g SXMgdGhpcyByZWFsbHkgc2FmZT8KCi0gQW5kcmVhcwoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdApmZm1wZWct ZGV2ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1w ZWctZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbApmZm1w ZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVjdCAidW5zdWJzY3JpYmUiLgo=