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 BF3C54CB12 for ; Tue, 11 Feb 2025 13:02:46 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3AA0368BDB1; Tue, 11 Feb 2025 15:02:41 +0200 (EET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2066.outbound.protection.outlook.com [40.92.89.66]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9F1E768B7F5 for ; Tue, 11 Feb 2025 15:02:34 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fkGvVCJXwLd6ZeQXlF+XbfDJBkMiGsF7BClGux28VZbEafvoBhlfy4oCkqjzEvFa5vGVWRaqvjIrv2AugvfKWmAooR6kfTvEUgtTK9pCC9Y1zc892p6vLYZ1xXS1QuZd6+3EKtbKtjf66Q0U5bF6mlXb87VnZ/1S3x3QKZFcgJYzy5nrSuZZHojOsURtsWRZ1LvdPB3gWyKvyaV32jEldGt9PrBqICD6HD00MvOSRbovF5n3G0CMPb+A9oHtvULlrl8DntlmhLMLi6HLSBN4gXoA/xroVNh8cj10Y/6eeOKtRR7KuaeSB3uLLMQdx8SJ5qTu3NZysOauvOCG5ZAPeg== 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=SUqh4w/J1tuFPUtSFcjXfF6gDzBiJPqMqppRRwbNfNc=; b=cuilC2yJOChss+HStlIhGwWOuH0jVTFc1GPYiGJb/I7NFN4wispLbVG/kdr8pSa67+FHPXCvnT23AHydht5NijAWUyrBtb4h20QOjJl15SL0D0/qCkBth/qg6dYHNLtRQ2B74KsnMXwjgH0vsGbTE1CencQTsOhry8qIBHD8BbqiESmmI5nQKJcErYHZT7zMQEmzYX3GONwiLQWUJPE1SEO+KtWgvhVnX/QB81fPbQuPHqcMWWkcLNJCDypyK4JoHwRUkcE3brk9how53Ggt/Iisr8kUsPsCZa8OI4QdzQCbTKKm10pz6CCCVekab84v1T7saovnTbdTb3tG+vgpPA== 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=SUqh4w/J1tuFPUtSFcjXfF6gDzBiJPqMqppRRwbNfNc=; b=rhZuQRpRjWzItH5nG6g3EXdwDRMAh9av6m3saLMDTKe3WGJT2clZuzzqbH6MxKxX8Ea+zUMnVb9cEAb9TsiVR+2HkFIcOCykbx3dXJwISAG4nLfflFdScHFBaq9G+uKuHCcJzfRKh84kWYbNKSpsFDGO+l4RFD297OkpDZ3BesBQPP7gL1rnkvxcWrDQOXm9ZRdKIx13E0ARsGvlSsSMD2iPdfcV2dPyA2PT9/GrVFbjjCZ/fJ8pLCL8Ij0EiEk3mfgWeHjOGrFglCGKrreqBf+nVims0z1FWVzkBH434lh6do468N0KpETm7DsPvH/8wOuz766yRMy6vagHADpfjg== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by PR3P250MB0163.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:176::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.19; Tue, 11 Feb 2025 13:02:32 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.8422.015; Tue, 11 Feb 2025 13:02:32 +0000 Message-ID: Date: Tue, 11 Feb 2025 14:02:30 +0100 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-ClientProxiedBy: ZR0P278CA0090.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:22::23) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <8bda2ef1-aa6d-413b-8d66-0dd32f4eee59@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|PR3P250MB0163:EE_ X-MS-Office365-Filtering-Correlation-Id: 05a75f07-e1f8-4235-0050-08dd4a9c58ea X-Microsoft-Antispam: BCL:0; ARA:14566002|7092599003|8060799006|15080799006|5072599009|461199028|19110799003|6090799003|440099028|3412199025|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?SmtCdTZuWWxtQTlyV0ZFd0R2RnpuODZzZnhyejVqaXNrY1g2cnk5M3FOQm1H?= =?utf-8?B?M21PYm5Ma2diR3JtQjczcSt2VVMwSWZNeDlPVndFQTZ3dUo3dEM1N0ZxdWZh?= =?utf-8?B?T2ZmNlFPcjdBdlhKYUVPcFFWalgzWVZwcklreHpNc2JNRElzci9PUmU1WDFi?= =?utf-8?B?NFUyemNxZjQwMW95blpvQnROSDU5b1E3a0tXQUQzZTQzRmZNKzM1UjFCbkl5?= =?utf-8?B?dW43MG9FdEoyK20wNFVmTXgxWmEwMmtvN3pua3BKSHYyYlFJbWUyOGhHdDlZ?= =?utf-8?B?L1FQaGYzWEpNMy9CckE5NVlTS3RQTXlaSUZIUFVWYUNjNTBwSm9vRFR1YS8r?= =?utf-8?B?M0RRN3ExTHB0Q1BzUHArU1hzUUx2VFI2OTF0Rk1PU3dpMlNNVmRPZjBOVVhz?= =?utf-8?B?amUxUGNvcHRDNEdRRmJQeGEyMVk2eHdaQklSSzFrOC9ycTZPSUhtakN3RVJF?= =?utf-8?B?encwc3M4RVRqaDRCYThxek9zbmlYQUJZSFJQTzRvcGgzSnNoTDVXQjFaOTho?= =?utf-8?B?Uy9uMElFVXF6TElOZHc4MGhjTUNnYnFVeUdaM1c5b21MRllHZi9Gc292bVVw?= =?utf-8?B?N1E5UDMwaFJ6MzZwVW1aQW5Qc2U5RlpNT2xyV3hWK1lBQU13Yy9meVNSaldv?= =?utf-8?B?d1JSdDQ1MzNMNVZ5bnhoZ3ZuZjhyNkwzVXFJeWNVckhCZUphY1ExMzh5ZytQ?= =?utf-8?B?a083SlB3eFE0TnJwR3FzYlNVWlBmUkx3Q084YThGVzNSNjd6V0lrbzVyUXNu?= =?utf-8?B?UEZvdzNOaHZGbkdTb084cjF1NExxVmVkTEgvZnFhSktuSSs3SzFnU1o2QmVv?= =?utf-8?B?bElQZjlLeklkL2hhUXhyK1JJdXMxWlN1VWRaU3RoNjBhbVhxYzRNSUNOVzNH?= =?utf-8?B?Q0xBcTQ1UUVQL2ZzSmxsRU5KaGRMdGsxMGxxN3RJcGdzeGozTVNIUWhySFRj?= =?utf-8?B?UkJyd05NQlJ2cXNtc0FvWkx2ZXF4ZXNMQmxEa0dqVjVLS05tamVIdWo1L1po?= =?utf-8?B?SWprRTNKVWYzOGZBN2dkY256ZzcrU01qdHhyRXZ0bHV1MkRVOTU3L1dyYmRM?= =?utf-8?B?bFAzVXBiSTJSUWRoNklSVkpXbk9IZ1U2Umt3WnhYUVp1ZUZ1UTlpcVA1WW5Q?= =?utf-8?B?TGNkTkkwT1FwTGlXY0ZzRm9LaVQydmFSUEtNUUQ4cU5OUFhYN210Z2ZKbWpm?= =?utf-8?B?eHV2aTV6UEg1eHNRelpxaUw1YnIraGt0bUlNa1ZxOGU5bnJpakplVHExb3c3?= =?utf-8?B?SFROT1Z5dEI2KzZhemxsZXN3Ukt1NEE0TzBWcUZkUUZuUkxVNENVYURBdU9Y?= =?utf-8?B?aThlSE5hQ1NCVXEvNGtNcmpBY2pxcVJtaWxlRWJhbXVkTXU5dkZtOXVWK2Fm?= =?utf-8?B?MlQrTHRiZkFLdzJxbmh0NnFmTHBqSWVYc3c2RVk4Qm9YWXhNQ3grK013UXJC?= =?utf-8?B?WjkwaUNrbUwxaytEOEhReGZSdEZPN20wRjdkcmRlUmt2N1Nrd1pPV0RoTkE4?= =?utf-8?B?QldxMU9nV3poaTdRa05GZ3BnM0txcFFacW5iamxnSE9XNHZiZjRjVkZSV1Iv?= =?utf-8?B?RVhuZz09?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NTZZV0dGSHNyaUxZR1h3YXVkTUlCZ2J1cUhMajZxQ3ViR2FvRDZSNDJ0VVJj?= =?utf-8?B?TUtqWWxUcnNkclp0bmNTcE90a3F2Uk4yK0V1Rk5NZG1pdVUwaGh1YUNlV3g2?= =?utf-8?B?YncrRnlkRnpJMkRNdFV1YkNyR2o5TXREdEtVVjNnRGtYaTM0WUt1bW81V20r?= =?utf-8?B?eGtzbnlsUHNRZ0xrT0JvQXpJWjVGTE1ZajNkVzhvMDRBZWQ0WEh5NDk5aFFC?= =?utf-8?B?TURjWFp5TnoyWndPSUQwVTk5MnhPM0RNblpPbVd2RjBHRndsajZRZmNlK2l5?= =?utf-8?B?bjdhY1VKbExGbEdKbWRCVWtRVjE4QW5kaS9vMUhqNW9wRkZnNFZsQ1hldVRN?= =?utf-8?B?U3RwVUUvS2g0ampsZXFLN1NHZFhMMkpudzNSQ1k4ZVlmK250emNmbVdSZGZv?= =?utf-8?B?UWxsZ2FaSWRCcVVTTzJ3UkVVREw2TlBPTnFZYkJxYXZSTUZGNnc0UVBCenJU?= =?utf-8?B?ZkZlb09VcjMxWXhraDRJK3pXS2xMN1hjVXlJVUYxNUxxN0RseUVDWUplRjNs?= =?utf-8?B?WGQ1SzBEN1lkRW1hT1l6bWJFUldzaTZ4VUcwS1VIU0puUUJnaFQ1eThzd1Ji?= =?utf-8?B?bTlYOFV4T3JUMjQvT0s2Wk9CS2gyaGtwWnBmdEpGSnI1NHpRSjEvWUxKbk1l?= =?utf-8?B?ODd4OW01R1RCd2JySW1PR2pEaEtLeFlKTWR1WTFmTGVpOEhEc3lkKzAzUnB0?= =?utf-8?B?WWN4aTlheXNKUUZBL1F6R0FQeXdjdmVOSlRQcHlxRWlpakwvdXlZN0Y5TkJt?= =?utf-8?B?WHVRUnRwdHN3OW54WDRqOU5lMDJnaXBTN3kzQytudHRzR01hVytQWXFRdGZM?= =?utf-8?B?TTZNcTVOU3BNTGYrZjlOWTZkSXJnRnBDYk5TYnBrcG1oaldsZG4rdXJJTmda?= =?utf-8?B?c1hEWEVRazRpY2xVdGxzYzZQTDR6b2EzU25UcUQyNCtMUmVoLy9LZUQ1WTVr?= =?utf-8?B?OGNoMUZTcHkvV3ltbVlFUFlIYUJTNUVLN1d4YzN0K3VJUU9JM2oxK3ZxWHZK?= =?utf-8?B?WEJyeXJSeGtIR3hpazZTNEZHWms3VWpVekxDTzdUenZ3K2s2R3B6MjBkd20v?= =?utf-8?B?Q1N4K0h0L245SkR0MzVlT2VkdGkveTBiZlNjWXgrMjFTb25mdzVweWVmR3E0?= =?utf-8?B?bFo1MDZoM0JYNHp6ZjlPVVQ3TjBRdkVlNzdldTdPeHpkeTVDeTZJcStLMHkw?= =?utf-8?B?c01DOVhaTUxhSmhQZ2o4THJST01WUCtTUUxUYzEyK1lkeGUxcFRsakM3NTkr?= =?utf-8?B?TzhjTUhwbS85bFR5ODdnWk5qVWovQ0VBK2hpVURqKzRDY2E0VUpBbllHSytB?= =?utf-8?B?QmJSMXBRN1U3QlUyd3ZxRTlQMThJeW1PcEZXeC9MRTVPcFlvWnZoTEdXUXBv?= =?utf-8?B?K0hXWlJSNmlkWk4waktDYTNOaklUV0FFSFBjV2tPU2FCV1RYRkNXcWpQNEh6?= =?utf-8?B?ZWdHVHVVUTN4cDF1RzJYV1FJK3Z0eDVIb3FJb0JnK2xpUzhvejlVM09xWmdi?= =?utf-8?B?aEtEMkJPYTM1YXVYeXlhOHdFcXloUjJZcVBpQVAzWjFtMDhTOWdNWGloUXVD?= =?utf-8?B?enlTOTI1R256NVdvVHJoMGhFVTdycEV3Rm5GbkRMZ0NXeE1TcGxSdi9RVERs?= =?utf-8?B?cUkyZzRsWFpqRFdDdnZkOTJ2MTZ6K01lTmxqc28wS3Z5TWdUZmhPUVY5UW5q?= =?utf-8?B?RUZ1SWl1d3QxMGpQSjJ4MTBUQitiZVNHU3BZanJ3akpmbjZpM2thSzBRPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 05a75f07-e1f8-4235-0050-08dd4a9c58ea X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Feb 2025 13:02:32.7510 (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: PR3P250MB0163 Subject: Re: [FFmpeg-devel] [PATCH v6 3/3] avcodec/hevc: Add alpha layer support 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: WmhhbyBaaGlsaToKPiAKPiAKPj4gT24gRmViIDExLCAyMDI1LCBhdCAyMDoxMiwgQW5kcmVhcyBS aGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+IHdyb3RlOgo+Pgo+PiBa aGFvIFpoaWxpOgo+Pj4KPj4+Cj4+Pj4gT24gRmViIDExLCAyMDI1LCBhdCAxOToyMywgQW5kcmVh cyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+IHdyb3RlOgo+Pj4+ Cj4+Pj4gWmhhbyBaaGlsaToKPj4+Pj4gRnJvbTogWmhhbyBaaGlsaSA8emhpbGl6aGFvQHRlbmNl bnQuY29tPgo+Pj4+Pgo+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBaaGFvIFpoaWxpIDx6aGlsaXpoYW9A dGVuY2VudC5jb20+Cj4+Pj4+IC0tLQo+Pj4+PiBsaWJhdmNvZGVjL2hldmMvaGV2Y2RlYy5jIHwg NzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCj4+Pj4+IGxpYmF2Y29k ZWMvaGV2Yy9oZXZjZGVjLmggfCAgMiArKwo+Pj4+PiBsaWJhdmNvZGVjL2hldmMvcmVmcy5jICAg IHwgMzQgKysrKysrKysrKysrKysrKystCj4+Pj4+IDMgZmlsZXMgY2hhbmdlZCwgMTA3IGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4+Pj4+Cj4+Pj4+IGRpZmYgLS1naXQgYS9saWJhdmNv ZGVjL2hldmMvaGV2Y2RlYy5jIGIvbGliYXZjb2RlYy9oZXZjL2hldmNkZWMuYwo+Pj4+PiBpbmRl eCBlOWMwNDVmN2ExLi5mNzFlZGYyMTNiIDEwMDY0NAo+Pj4+PiAtLS0gYS9saWJhdmNvZGVjL2hl dmMvaGV2Y2RlYy5jCj4+Pj4+ICsrKyBiL2xpYmF2Y29kZWMvaGV2Yy9oZXZjZGVjLmMKPj4+Pj4g QEAgLTQ2Niw2ICs0NjYsMjUgQEAgc3RhdGljIGludCBleHBvcnRfbXVsdGlsYXllcihIRVZDQ29u dGV4dCAqcywgY29uc3QgSEVWQ1ZQUyAqdnBzKQo+Pj4+PiAgICByZXR1cm4gMDsKPj4+Pj4gfQo+ Pj4+Pgo+Pj4+PiAraW50IGZmX2hldmNfaXNfYWxwaGFfdmlkZW8oY29uc3QgSEVWQ0NvbnRleHQg KnMpCj4+Pj4+ICt7Cj4+Pj4+ICsgICAgY29uc3QgSEVWQ1ZQUyAqdnBzID0gcy0+dnBzOwo+Pj4+ PiArICAgIGludCByZXQgPSAwOwo+Pj4+PiArCj4+Pj4+ICsgICAgaWYgKHZwcy0+bmJfbGF5ZXJz ICE9IDIgfHwgIXZwcy0+bGF5ZXJfaWRfaW5fbnVoWzFdKQo+Pj4+PiArICAgICAgICByZXR1cm4g MDsKPj4+Pj4gKwo+Pj4+PiArICAgIC8qIGRlY29kZV92cHNfZXh0KCkgZ3VhcmFudGVlcyB0aGF0 IFNDQUxBQklMSVRZX0FVWElMSUFSWSB3aXRoIEF1eElkIG90aGVyCj4+Pj4+ICsgICAgICogdGhh biBhbHBoYSBjYW5ub3QgcmVhY2ggaGVyZS4KPj4+Pj4gKyAgICAgKi8KPj4+Pj4gKyAgICByZXQg PSAocy0+dnBzLT5zY2FsYWJpbGl0eV9tYXNrX2ZsYWcgJiBIRVZDX1NDQUxBQklMSVRZX0FVWElM SUFSWSk7Cj4+Pj4+ICsKPj4+Pj4gKyAgICBhdl9sb2cocy0+YXZjdHgsIEFWX0xPR19ERUJVRywg Ik11bHRpIGxheWVyIHZpZGVvLCAlcyBhbHBoYSB2aWRlb1xuIiwKPj4+Pj4gKyAgICAgICAgICAg cmV0ID8gImlzIiA6ICJub3QiKTsKPj4+Pj4gKwo+Pj4+PiArICAgIHJldHVybiByZXQ7Cj4+Pj4+ ICt9Cj4+Pj4+ICsKPj4+Pj4gc3RhdGljIGludCBzZXR1cF9tdWx0aWxheWVyKEhFVkNDb250ZXh0 ICpzLCBjb25zdCBIRVZDVlBTICp2cHMpCj4+Pj4+IHsKPj4+Pj4gICAgdW5zaWduZWQgbGF5ZXJz X2FjdGl2ZV9vdXRwdXQgPSAwLCBoaWdoZXN0X2xheWVyOwo+Pj4+PiBAQCAtNDczLDYgKzQ5Miwx OCBAQCBzdGF0aWMgaW50IHNldHVwX211bHRpbGF5ZXIoSEVWQ0NvbnRleHQgKnMsIGNvbnN0IEhF VkNWUFMgKnZwcykKPj4+Pj4gICAgcy0+bGF5ZXJzX2FjdGl2ZV9vdXRwdXQgPSAxOwo+Pj4+PiAg ICBzLT5sYXllcnNfYWN0aXZlX2RlY29kZSA9IDE7Cj4+Pj4+Cj4+Pj4+ICsgICAgaWYgKGZmX2hl dmNfaXNfYWxwaGFfdmlkZW8ocykpIHsKPj4+Pj4gKyAgICAgICAgY29uc3QgQVZQaXhGbXREZXNj cmlwdG9yICpkZXNjID0gYXZfcGl4X2ZtdF9kZXNjX2dldChzLT5hdmN0eC0+cGl4X2ZtdCk7Cj4+ Pj4+ICsKPj4+Pj4gKyAgICAgICAgaWYgKCEoZGVzYy0+ZmxhZ3MgJiBBVl9QSVhfRk1UX0ZMQUdf QUxQSEEpKQo+Pj4+PiArICAgICAgICAgICAgcmV0dXJuIDA7Cj4+Pj4+ICsKPj4+Pj4gKyAgICAg ICAgcy0+bGF5ZXJzX2FjdGl2ZV9kZWNvZGUgPSAoMSA8PCB2cHMtPm5iX2xheWVycykgLSAxOwo+ Pj4+PiArICAgICAgICBzLT5sYXllcnNfYWN0aXZlX291dHB1dCA9IDE7Cj4+Pj4+ICsKPj4+Pj4g KyAgICAgICAgcmV0dXJuIDA7Cj4+Pj4+ICsgICAgfQo+Pj4+PiArCj4+Pj4+ICAgIC8vIG5vdGhp bmcgcmVxdWVzdGVkIC0gZGVjb2RlIGJhc2UgbGF5ZXIgb25seQo+Pj4+PiAgICBpZiAoIXMtPm5i X3ZpZXdfaWRzKQo+Pj4+PiAgICAgICAgcmV0dXJuIDA7Cj4+Pj4+IEBAIC01MzAsNiArNTYxLDM0 IEBAIHN0YXRpYyBpbnQgc2V0dXBfbXVsdGlsYXllcihIRVZDQ29udGV4dCAqcywgY29uc3QgSEVW Q1ZQUyAqdnBzKQo+Pj4+PiAgICByZXR1cm4gMDsKPj4+Pj4gfQo+Pj4+Pgo+Pj4+PiArc3RhdGlj IGVudW0gQVZQaXhlbEZvcm1hdCBtYXBfdG9fYWxwaGFfZm9ybWF0KEhFVkNDb250ZXh0ICpzLAo+ Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0g QVZQaXhlbEZvcm1hdCBwaXhfZm10KQo+Pj4+PiArewo+Pj4+PiArICAgIHN3aXRjaCAocGl4X2Zt dCkgewo+Pj4+PiArICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjBQOgo+Pj4+PiArICAgIGNhc2Ug QVZfUElYX0ZNVF9ZVVZKNDIwUDoKPj4+Pj4gKyAgICAgICAgcmV0dXJuIEFWX1BJWF9GTVRfWVVW QTQyMFA7Cj4+Pj4+ICsgICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQyMFAxMDoKPj4+Pj4gKyAgICAg ICAgcmV0dXJuIEFWX1BJWF9GTVRfWVVWQTQyMFAxMDsKPj4+Pj4gKyAgICBjYXNlIEFWX1BJWF9G TVRfWVVWNDQ0UDoKPj4+Pj4gKyAgICAgICAgcmV0dXJuIEFWX1BJWF9GTVRfWVVWQTQ0NFA7Cj4+ Pj4+ICsgICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQyMlA6Cj4+Pj4+ICsgICAgICAgIHJldHVybiBB Vl9QSVhfRk1UX1lVVkE0MjJQOwo+Pj4+PiArICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjJQMTBM RToKPj4+Pj4gKyAgICAgICAgcmV0dXJuIEFWX1BJWF9GTVRfWVVWQTQyMlAxMExFOwo+Pj4+PiAr ICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0NDRQMTA6Cj4+Pj4+ICsgICAgICAgIHJldHVybiBBVl9Q SVhfRk1UX1lVVkE0NDRQMTA7Cj4+Pj4+ICsgICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQ0NFAxMjoK Pj4+Pj4gKyAgICAgICAgcmV0dXJuIEFWX1BJWF9GTVRfWVVWQTQ0NFAxMjsKPj4+Pj4gKyAgICBj YXNlIEFWX1BJWF9GTVRfWVVWNDIyUDEyOgo+Pj4+PiArICAgICAgICByZXR1cm4gQVZfUElYX0ZN VF9ZVVZBNDIyUDEyOwo+Pj4+PiArICAgIGRlZmF1bHQ6Cj4+Pj4+ICsgICAgICAgIGF2X2xvZyhz LT5hdmN0eCwgQVZfTE9HX1dBUk5JTkcsICJObyBhbHBoYSBwaXhlbCBmb3JtYXQgbWFwIGZvciAl c1xuIiwKPj4+Pj4gKyAgICAgICAgICAgICAgIGF2X2dldF9waXhfZm10X25hbWUocGl4X2ZtdCkp Owo+Pj4+PiArICAgICAgICByZXR1cm4gQVZfUElYX0ZNVF9OT05FOwo+Pj4+PiArICAgIH0KPj4+ Pj4gK30KPj4+Pj4gKwo+Pj4+PiBzdGF0aWMgZW51bSBBVlBpeGVsRm9ybWF0IGdldF9mb3JtYXQo SEVWQ0NvbnRleHQgKnMsIGNvbnN0IEhFVkNTUFMgKnNwcykKPj4+Pj4gewo+Pj4+PiAjZGVmaW5l IEhXQUNDRUxfTUFYIChDT05GSUdfSEVWQ19EWFZBMl9IV0FDQ0VMICsgXAo+Pj4+PiBAQCAtNTQw LDkgKzU5OSwxMyBAQCBzdGF0aWMgZW51bSBBVlBpeGVsRm9ybWF0IGdldF9mb3JtYXQoSEVWQ0Nv bnRleHQgKnMsIGNvbnN0IEhFVkNTUFMgKnNwcykKPj4+Pj4gICAgICAgICAgICAgICAgICAgICBD T05GSUdfSEVWQ19WSURFT1RPT0xCT1hfSFdBQ0NFTCArIFwKPj4+Pj4gICAgICAgICAgICAgICAg ICAgICBDT05GSUdfSEVWQ19WRFBBVV9IV0FDQ0VMICsgXAo+Pj4+PiAgICAgICAgICAgICAgICAg ICAgIENPTkZJR19IRVZDX1ZVTEtBTl9IV0FDQ0VMKQo+Pj4+PiAtICAgIGVudW0gQVZQaXhlbEZv cm1hdCBwaXhfZm10c1tIV0FDQ0VMX01BWCArIDJdLCAqZm10ID0gcGl4X2ZtdHM7Cj4+Pj4+ICsg ICAgZW51bSBBVlBpeGVsRm9ybWF0IHBpeF9mbXRzW0hXQUNDRUxfTUFYICsgM10sICpmbXQgPSBw aXhfZm10czsKPj4+Pj4gKyAgICBlbnVtIEFWUGl4ZWxGb3JtYXQgYWxwaGFfZm10ID0gQVZfUElY X0ZNVF9OT05FOwo+Pj4+PiAgICBpbnQgcmV0Owo+Pj4+Pgo+Pj4+PiArICAgIGlmIChmZl9oZXZj X2lzX2FscGhhX3ZpZGVvKHMpKQo+Pj4+PiArICAgICAgICBhbHBoYV9mbXQgPSBtYXBfdG9fYWxw aGFfZm9ybWF0KHMsIHNwcy0+cGl4X2ZtdCk7Cj4+Pj4+ICsKPj4+Pj4gICAgc3dpdGNoIChzcHMt PnBpeF9mbXQpIHsKPj4+Pj4gICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQyMFA6Cj4+Pj4+ICAgIGNh c2UgQVZfUElYX0ZNVF9ZVVZKNDIwUDoKPj4+Pj4gQEAgLTY2NCw2ICs3MjcsOCBAQCBzdGF0aWMg ZW51bSBBVlBpeGVsRm9ybWF0IGdldF9mb3JtYXQoSEVWQ0NvbnRleHQgKnMsIGNvbnN0IEhFVkNT UFMgKnNwcykKPj4+Pj4gICAgICAgIGJyZWFrOwo+Pj4+PiAgICB9Cj4+Pj4+Cj4+Pj4+ICsgICAg aWYgKGFscGhhX2ZtdCAhPSBBVl9QSVhfRk1UX05PTkUpCj4+Pj4+ICsgICAgICAgICpmbXQrKyA9 IGFscGhhX2ZtdDsKPj4+Pj4gICAgKmZtdCsrID0gc3BzLT5waXhfZm10Owo+Pj4+PiAgICAqZm10 ID0gQVZfUElYX0ZNVF9OT05FOwo+Pj4+Pgo+Pj4+PiBAQCAtMzE5NCw2ICszMjU5LDEyIEBAIHN0 YXRpYyBpbnQgaGV2Y19mcmFtZV9zdGFydChIRVZDQ29udGV4dCAqcywgSEVWQ0xheWVyQ29udGV4 dCAqbCwKPj4+Pj4gICAgICAgICAgICAgICAgIXNwcy0+dnVpLmNvbW1vbi52aWRlb19zaWduYWxf dHlwZV9wcmVzZW50X2ZsYWcpCj4+Pj4+ICAgICAgICAgICAgICAgIHBpeF9mbXQgPSBzcHNfYmFz ZS0+cGl4X2ZtdDsKPj4+Pj4KPj4+Pj4gKyAgICAgICAgICAgIC8vIElnbm9yZSByYW5nZSBtaXNt YXRjaCBiZXR3ZWVuIGJhc2UgbGF5ZXIgYW5kIGFscGhhIGxheWVyCj4+Pj4+ICsgICAgICAgICAg ICBpZiAoZmZfaGV2Y19pc19hbHBoYV92aWRlbyhzKSAmJgo+Pj4+PiArICAgICAgICAgICAgICAg IHNwc19iYXNlLT5waXhfZm10ID09IEFWX1BJWF9GTVRfWVVWNDIwUCAmJgo+Pj4+PiArICAgICAg ICAgICAgICAgIHBpeF9mbXQgPT0gQVZfUElYX0ZNVF9ZVVZKNDIwUCkKPj4+Pj4gKyAgICAgICAg ICAgICAgICBwaXhfZm10ID0gc3BzX2Jhc2UtPnBpeF9mbXQ7Cj4+Pj4+ICsKPj4+Pj4gICAgICAg ICAgICBpZiAocGl4X2ZtdCAgICAgIT0gc3BzX2Jhc2UtPnBpeF9mbXQgfHwKPj4+Pj4gICAgICAg ICAgICAgICAgc3BzLT53aWR0aCAgIT0gc3BzX2Jhc2UtPndpZHRoICAgfHwKPj4+Pj4gICAgICAg ICAgICAgICAgc3BzLT5oZWlnaHQgIT0gc3BzX2Jhc2UtPmhlaWdodCkgewo+Pj4+PiBkaWZmIC0t Z2l0IGEvbGliYXZjb2RlYy9oZXZjL2hldmNkZWMuaCBiL2xpYmF2Y29kZWMvaGV2Yy9oZXZjZGVj LmgKPj4+Pj4gaW5kZXggNGU5NTAzNTY4OC4uYjJiNzI1YjVjZCAxMDA2NDQKPj4+Pj4gLS0tIGEv bGliYXZjb2RlYy9oZXZjL2hldmNkZWMuaAo+Pj4+PiArKysgYi9saWJhdmNvZGVjL2hldmMvaGV2 Y2RlYy5oCj4+Pj4+IEBAIC03MTQsNiArNzE0LDggQEAgdm9pZCBmZl9oZXZjX2hsc19yZXNpZHVh bF9jb2RpbmcoSEVWQ0xvY2FsQ29udGV4dCAqbGMsIGNvbnN0IEhFVkNQUFMgKnBwcywKPj4+Pj4K Pj4+Pj4gdm9pZCBmZl9oZXZjX2hsc19tdmRfY29kaW5nKEhFVkNMb2NhbENvbnRleHQgKmxjLCBp bnQgeDAsIGludCB5MCwgaW50IGxvZzJfY2Jfc2l6ZSk7Cj4+Pj4+Cj4+Pj4+ICtpbnQgZmZfaGV2 Y19pc19hbHBoYV92aWRlbyhjb25zdCBIRVZDQ29udGV4dCAqcyk7Cj4+Pj4+ICsKPj4+Pj4gZXh0 ZXJuIGNvbnN0IHVpbnQ4X3QgZmZfaGV2Y19xcGVsX2V4dHJhX2JlZm9yZVs0XTsKPj4+Pj4gZXh0 ZXJuIGNvbnN0IHVpbnQ4X3QgZmZfaGV2Y19xcGVsX2V4dHJhX2FmdGVyWzRdOwo+Pj4+PiBleHRl cm4gY29uc3QgdWludDhfdCBmZl9oZXZjX3FwZWxfZXh0cmFbNF07Cj4+Pj4+IGRpZmYgLS1naXQg YS9saWJhdmNvZGVjL2hldmMvcmVmcy5jIGIvbGliYXZjb2RlYy9oZXZjL3JlZnMuYwo+Pj4+PiBp bmRleCBkZDdmN2Y5NWE4Li5kYTBiYWM4ZDljIDEwMDY0NAo+Pj4+PiAtLS0gYS9saWJhdmNvZGVj L2hldmMvcmVmcy5jCj4+Pj4+ICsrKyBiL2xpYmF2Y29kZWMvaGV2Yy9yZWZzLmMKPj4+Pj4gQEAg LTc5LDYgKzc5LDMwIEBAIHZvaWQgZmZfaGV2Y19mbHVzaF9kcGIoSEVWQ0NvbnRleHQgKnMpCj4+ Pj4+ICAgIH0KPj4+Pj4gfQo+Pj4+Pgo+Pj4+PiArc3RhdGljIGludCByZXBsYWNlX2FscGhhX3Bs YW5lKEFWRnJhbWUgKmFscGhhLCBBVkZyYW1lICpiYXNlKQo+Pj4+PiArewo+Pj4+PiArICAgIEFW QnVmZmVyUmVmICpiYXNlX2EgPSBhdl9mcmFtZV9nZXRfcGxhbmVfYnVmZmVyKGJhc2UsIDMpOwo+ Pj4+PiArICAgIHVpbnQ4X3QgKmRhdGEgPSBhbHBoYS0+ZGF0YVswXTsKPj4+Pj4gKyAgICBpbnQg cmV0Owo+Pj4+PiArCj4+Pj4+ICsgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBGRl9BUlJBWV9FTEVN UyhhbHBoYS0+YnVmKSAmJiBhbHBoYS0+YnVmW2ldOyBpKyspIHsKPj4+Pj4gKyAgICAgICAgQVZC dWZmZXJSZWYgKmJ1ZiA9IGFscGhhLT5idWZbaV07Cj4+Pj4+ICsKPj4+Pj4gKyAgICAgICAgaWYg KGRhdGEgPj0gYnVmLT5kYXRhICYmIGRhdGEgPCBidWYtPmRhdGEgKyBidWYtPnNpemUpIHsKPj4+ Pgo+Pj4+IFBvaW50ZXIgY29tcGFyaXNvbnMgKG90aGVyIHRoYW4gZXF1YWxpdHkvaW5xdWFsaXR5 IGNvbXBhcmlzb25zKSBhcmUKPj4+PiB1bmRlZmluZWQgYmVoYXZpb3IgdW5sZXNzIHRoZSB0d28g cG9pbnRlcnMgcG9pbnQgaW50byB0aGUgc2FtZSBhcnJheSAob3IKPj4+PiBvbmUgcGFzdCB0aGUg bGFzdCBlbGVtZW50IG9mIGFuIGFycmF5KS4KPj4+Cj4+PiBhdl9mcmFtZV9nZXRfcGxhbmVfYnVm ZmVyIGRvZXMgdGhlIHNhbWUgY29tcGFyZS4gQW55IGlkZWEgdG8gZml4IHRoaXMgVUI/Cj4+Cj4+ IElTTyBDIGRvZXMgbm90IGhhdmUgYSBwb3J0YWJsZSB3YXkgdG8gYWNoaWV2ZSB0aGlzIChleGNl cHQgaXRlcmF0aW5nCj4+IG92ZXIgYnVmLT5kYXRhWzAuLmJ1Zi0+c2l6ZV0gYW5kIGNoZWNraW5n IHZpYSA9PSkuCj4+IEluIHByYWN0aWNlIChpbiBhIGZsYXQgbWVtb3J5IHNwYWNlKSBjYXN0aW5n IHRvIHVpbnRwdHJfdCBzaG91bGQgd29yay4KPiAKPiBXaGF04oCZcyB0aGUgZGlmZmVyZW5jZSB3 aXRoIGFuZCB3aXRob3V0IGNhc3QgaW4gcHJhY3RpY2U/CgpJIGRvbid0IGtub3cgYW55IGF0bTsg bWF5YmUgZnV0dXJlIHZlcnNpb25zIG9mIFVTYW4gd2lsbCB3YXJuIGFib3V0CmludmFsaWQgcG9p bnRlciBjb21wYXJpc29ucz8KCj4gCj4+Cj4+Pgo+Pj4+Cj4+Pj4+ICsgICAgICAgICAgICByZXQg PSBhdl9idWZmZXJfcmVwbGFjZSgmYWxwaGEtPmJ1ZltpXSwgYmFzZV9hKTsKPj4+Pj4gKyAgICAg ICAgICAgIGlmIChyZXQgPCAwKQo+Pj4+PiArICAgICAgICAgICAgICAgIHJldHVybiByZXQ7Cj4+ Pj4+ICsKPj4+Pj4gKyAgICAgICAgICAgIGFscGhhLT5saW5lc2l6ZVswXSA9IGJhc2UtPmxpbmVz aXplWzNdOwo+Pj4+PiArICAgICAgICAgICAgYWxwaGEtPmRhdGFbMF0gPSBiYXNlLT5kYXRhWzNd Owo+Pj4+PiArCj4+Pj4+ICsgICAgICAgICAgICByZXR1cm4gMDsKPj4+Pj4gKyAgICAgICAgfQo+ Pj4+PiArICAgIH0KPj4+Pj4gKwo+Pj4+PiArICAgIHJldHVybiBBVkVSUk9SX0JVRzsKPj4+Pj4g K30KPj4+Pj4gKwo+Pj4+PiBzdGF0aWMgSEVWQ0ZyYW1lICphbGxvY19mcmFtZShIRVZDQ29udGV4 dCAqcywgSEVWQ0xheWVyQ29udGV4dCAqbCkKPj4+Pj4gewo+Pj4+PiAgICBjb25zdCBIRVZDVlBT ICp2cHMgPSBsLT5zcHMtPnZwczsKPj4+Pj4gQEAgLTEwMyw3ICsxMjcsNyBAQCBzdGF0aWMgSEVW Q0ZyYW1lICphbGxvY19mcmFtZShIRVZDQ29udGV4dCAqcywgSEVWQ0xheWVyQ29udGV4dCAqbCkK Pj4+Pj4gICAgICAgIH0KPj4+Pj4KPj4+Pj4gICAgICAgIC8vIGFkZCB2aWV3IElEIHNpZGUgZGF0 YSBpZiBpdCdzIG5vbnRyaXZpYWwKPj4+Pj4gLSAgICAgICAgaWYgKHZwcy0+bmJfbGF5ZXJzID4g MSB8fCB2aWV3X2lkKSB7Cj4+Pj4+ICsgICAgICAgIGlmICghZmZfaGV2Y19pc19hbHBoYV92aWRl byhzKSAmJiAodnBzLT5uYl9sYXllcnMgPiAxIHx8IHZpZXdfaWQpKSB7Cj4+Pj4+ICAgICAgICAg ICAgSEVWQ1NFSVREUkRJICp0ZHJkaSA9ICZzLT5zZWkudGRyZGk7Cj4+Pj4+ICAgICAgICAgICAg QVZGcmFtZVNpZGVEYXRhICpzZCA9IGF2X2ZyYW1lX3NpZGVfZGF0YV9uZXcoJmZyYW1lLT5mLT5z aWRlX2RhdGEsCj4+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJmZyYW1lLT5mLT5uYl9zaWRlX2RhdGEsCj4+Pj4+IEBAIC0xNjEsNyAr MTg1LDE1IEBAIHN0YXRpYyBIRVZDRnJhbWUgKmFsbG9jX2ZyYW1lKEhFVkNDb250ZXh0ICpzLCBI RVZDTGF5ZXJDb250ZXh0ICpsKQo+Pj4+PiAgICAgICAgaWYgKHJldCA8IDApCj4+Pj4+ICAgICAg ICAgICAgZ290byBmYWlsOwo+Pj4+Pgo+Pj4+PiArCj4+Pj4+ICAgICAgICBmcmFtZS0+cHBzID0g YXZfcmVmc3RydWN0X3JlZl9jKHMtPnBwcyk7Cj4+Pj4+ICsgICAgICAgIGlmIChsICE9ICZzLT5s YXllcnNbMF0gJiYgZmZfaGV2Y19pc19hbHBoYV92aWRlbyhzKSkgewo+Pj4+PiArICAgICAgICAg ICAgQVZGcmFtZSAqYWxwaGEgPSBmcmFtZS0+ZjsKPj4+Pj4gKyAgICAgICAgICAgIEFWRnJhbWUg KmJhc2UgPSBzLT5sYXllcnNbMF0uY3VyX2ZyYW1lLT5mOwo+Pj4+PiArICAgICAgICAgICAgcmV0 ID0gcmVwbGFjZV9hbHBoYV9wbGFuZShhbHBoYSwgYmFzZSk7Cj4+Pj4+ICsgICAgICAgICAgICBp ZiAocmV0IDwgMCkKPj4+Pj4gKyAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Cj4+Pj4+ICsgICAg ICAgIH0KPj4+Pj4KPj4+Pj4gICAgICAgIHJldHVybiBmcmFtZTsKPj4+Pj4gZmFpbDoKPj4+Pgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2 ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxp bmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBz dWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==