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 0C30D4C303 for ; Tue, 11 Feb 2025 16:10:36 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0D35B68B5C8; Tue, 11 Feb 2025 18:10:33 +0200 (EET) Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02olkn2062.outbound.protection.outlook.com [40.92.49.62]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8CA4468B32E for ; Tue, 11 Feb 2025 18:10:26 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KXrXVxiZvshydMyf85mWkEZqUWV31G4FoAH09TUrAYnUuv4KcaEyxIqaH12VlMHLC+cbyWsZJQKykmjGzk8sECkbgjDlyOCFzZq/YJd3kW9c3L57ES5y5VCY5kjMaIwTz3AyME8kCVMg+aWrPt2zzfo+emIB60xMPsmUzCjtfodxyPKBagMzbocsDX481ZDThx13o5WDvZYmttrJdkvlGtCEMmMqgI/MyrAab8821VsC/ap4RqsTTBwB/1ujMJH9IVUgtiejJ7ANmkCHJlKt+h1cZ/TrcblAeZAhmLeMZUx6wK8e3Rnv7dsz1CGqzOPluxpDFU9GUuE1MQyYyrWf5Q== 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=aHfrEVhnUtzmHcACNyWIDaY6uWaixb6yFeqyJL8tVjs=; b=NISNljBy84+PaYx7Cn7l+LiNYSwX0OMozutMOhKRndoYnVnW9GlFGJcmog92PlLeIe+Wdk1RvcnY1mrwlPpzGeH+r+/XhAjVanoSAgQ0CFCle0T4PVEkILX+KWkcamW8+Z3tbaiRFlikU4cui3dQ4JSv+8j8lYgyIzQPViDprmV2l6kgeYb9+JJmJUtNnvLB2A8sClMt+wXMx32ZnvSASFvc1gneSPUNPc1EHFWUz+LitqJUicAi2+GRpSDTYAcAfMhWCmas4mPqgrymcLQyQTZVXOtDzUbhnuaWhR377yqFcdcLYZ5IMXIwLkhm80aq57Y/ZKHJt3b7ryoRplBBrQ== 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=aHfrEVhnUtzmHcACNyWIDaY6uWaixb6yFeqyJL8tVjs=; b=PXLyjRXbghH4CMZsZgBbWtxscJbOV8l34FjuKdk3b+UZ95vcvDNgZi1O+OSIjT9EUOTNPScz6xFvMl8AoQ7zjzt5P5Ar2nRxO4o8eWcDj+rukWaURvcqMchXVcwcPws1C7piTsJvFR0ZIRCohsNs3Dol2nyIj9v52X1RjrybrDURpBz6pU+5v9wlOw+cNd9ony1hbDhx99RFIRB/9yTCopT9icpOw4dA194DfPFXg6SuTjqlmBWLkPe4xZd3YQj7lKKMV7sTynLX2zKYQ0vnwPfN9QP2Ve0wf1Bh03rbsGHe46mGfiUx9BlZ7xplkcdo0e9ullKHBW37m1i3mdRrCA== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AS1P250MB0527.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:4a0::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.18; Tue, 11 Feb 2025 16:10:24 +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 16:10:24 +0000 Message-ID: Date: Tue, 11 Feb 2025 17:10:22 +0100 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-ClientProxiedBy: ZRAP278CA0013.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:10::23) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <3f7b748d-71e1-4ab0-8df6-3b2ccfbc1244@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AS1P250MB0527:EE_ X-MS-Office365-Filtering-Correlation-Id: a1546c29-61d7-45f1-57b5-08dd4ab69742 X-Microsoft-Antispam: BCL:0; ARA:14566002|7092599003|461199028|15080799006|8060799006|6090799003|19110799003|5072599009|56899033|3412199025|10035399004|440099028|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?WU9TUlR1eWs3TzZoSDNmUHlwWHJHQVlZcEltUWZJdG1UL3FhMnBIbXNzbWdy?= =?utf-8?B?OHhMenpDbHNUQklIY081MTlITTZlY3V3SU9zU1RzTDVERU1ucHFJSjJTb1lt?= =?utf-8?B?YXM0NFhjWXpzNVU2SlEvRlN0UnNqY1VhcWdDYzM4Q3ZsRXV5V0s3bGRZVlJZ?= =?utf-8?B?emFHTllMb0lpcXZscGFVUkxNOGNKbTJMREk3Si9VNU94RUQ3em9mTXNFYWlP?= =?utf-8?B?NnJSaytiUDY4V2o0NE1acUJDc2pqeXFicmpyVUF1WExkSEtMRFhCdU1GWjVT?= =?utf-8?B?bHE3RWMyRlhPVU9xc1k5TjQvYVhDK1RnTUgxRTZqUEFJdFF0T01GMmxwWDdI?= =?utf-8?B?RVZ1SllCTUdPQ3hveFpzMytiTTJ5OTV6czdJM1BqdTc0dlpWb0t5OGZKVFJF?= =?utf-8?B?L0FEUVcvT0t2ZENPaTRzeXlDQlplbnZLSUduQ2prbHFobXUxWWxIUU5ncTFh?= =?utf-8?B?MGRlVy8zVUZiM21JRzVGZGRZSTVjT2pnbUlOMGMzOVFCNk1vMjVDZ0l4VjRQ?= =?utf-8?B?S1dsUU5mUkZ3V3BmVGlad3RTaFBkajJNbG5DWjVodldLZm5ORVZCQ0xWRUVF?= =?utf-8?B?NVcvb1c5V3JGajZSSjhPcXJKRGFqN29tNTlBaWtYWXVzb2U2a0JXOWxEdmVw?= =?utf-8?B?cVFTMERHRXVvcGVkZHExYUFCeGxLQkRXc2dvM3FpeldvTmxhdCtxOEVrVFQ4?= =?utf-8?B?cmpJeXVBZFU0U3ByOGxmYmpWSktuU09NMUMzODdWVmZuV2xPMWFsdzUrTFgv?= =?utf-8?B?TUVXZ2FSMTdJbjBLRk9QL2NYaDF1U1dxUkRnRlFoZGsvSS9LaHI3cDdkUVEz?= =?utf-8?B?dVRRdlVHYngzNVpBRjNuaWZoWjJHck0rV2o3NkUreFRFRHpSbmFqakcwNG9m?= =?utf-8?B?TisxRjBrejIyRGx4VUxiRmloeDgza01lMGVuVC9ET2M1TmFCVnZBcmozdjRa?= =?utf-8?B?V1dtWHBEbjNTbFl2QjVtN3JRYjdaVTBrTFpjbzlGenZKZ0I0Z0h1a200K2ZM?= =?utf-8?B?ZCtEM1JWY2ZSTDE0TUljQnJDeHk5bzY1Z2JxVGhvRVJZZGVhQnVSNG5CMVU4?= =?utf-8?B?ellPbDVYOXpDNWhzZHFFUG4xZUFwSHo3ZUZqcVF2MnBJcHBjdmZHRGxnRFlX?= =?utf-8?B?Y05PZmVZWEJHRldRbHVtdDhiK1VWUzhsVzZ3MXlOalVob2lVT3g4OFpmWDN6?= =?utf-8?B?azljQmJuSVdENDhKRjJjTWdKeTRwdTJnUC9WZGxUWW1iaDc5Y3pSQ2VnUUtx?= =?utf-8?B?MmIxdFBvQXVoVFkxL1BmblB5ZThub3ZYSDlEK1FqR2FFNmp6aHFMR0dGcDFz?= =?utf-8?B?cktMbEZ2TUQ5T3ZPcmV1QjNpZ05LSFBIaU5jNzdNaDlCcjM5QVdTQnhhbXR6?= =?utf-8?B?MWZBdWtmWUJTTVYzRXlEN3VHZ1VRcjhNU0ZrRFZ3cFNzUnhDS01xTTNranE5?= =?utf-8?B?UnBLK0tjQTVBZGhjNEgrY1RCL0djUnlZd2owdVRhOWkyZ244Ly9kYTBDdVJM?= =?utf-8?B?USt2eUtkMitvcEYwbXpGdERrMHh6ZUVOckhCenJFUTUxUldLVEtNWDJTendw?= =?utf-8?Q?55VGDQ7VOfFMUUb2taH7PypEgLQZY1l/fG+Fe9cprVx22a?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?S2tjMXBVOThhTWJKaFhFczFrOFNZaVNzdFF1Tlk3ditsTlBINDkzRWdJWUM4?= =?utf-8?B?bDRCcVdmRUhrSTBkU1M1M1Z0akZBMU5TTExrd2w2NThNU1pXK01USW5lY1BP?= =?utf-8?B?MlpTOUNGL0FQaktlRElNam5ZVjNCVmlFUWkybVY4UjZaWGwxMzJ1SUkramtv?= =?utf-8?B?VnR3UlRFc1FJdHQza094cFRhRWxuMGthN1ovOUtIQmExRlVmeUZCU0JSd1Ba?= =?utf-8?B?a2orUGdmSmtvQ2UvZlg0cjY4bW5ySGpmMmYxdjV4dVRsN3ZmMEM1cWdXeFdT?= =?utf-8?B?T1BldE1jWTBLdUt6VlNMUVpyVllwRWQxNDZqTy9FdDNkS21yS0dNd2srL3o1?= =?utf-8?B?UzdBSGVFUjVZTWJuUDA4V2xtZkhFWlhhcWw1MTVaTWh5ZWhOUlNaeTlQSGsz?= =?utf-8?B?QmlTZm9neGVESDFwdG01MmxGL2Nxcy83M2xSWTI1dDg3TVoxZjVRc0lFYk1W?= =?utf-8?B?TDV6Z1UyRXF0c2MyVkpwZjZzTVRYKzh0bDlSa3pBMFBIeXpZOUd5cDRtSWNM?= =?utf-8?B?d1BFNTczcW9mMHZjODZTUmJDSUMyWUxLNi9xeWpqMVFONHRDSWg4QW80dE1C?= =?utf-8?B?cE9CRUdxOGVSQXRZUnM0bzJmaFoxbFJkaFlwck4vb2VYZnZCd3czSmhJWnhM?= =?utf-8?B?RVNCK09qc2RMNjR6TGNsYjJQM0NPUWNKY0JjVlpxSEV6Umt5V0xUMTU3Um9D?= =?utf-8?B?RWxRNWlxZzZrZmV4L0RaOXdLa0lyRVBMbFBUOG1QMndMTTdHUkUwTkZNcHdY?= =?utf-8?B?SUN0VGVSU3NJS3dhYTd3TEVhRnB0eHl4K0xpUW1OeFVSRmZqMU1GRUFSZTB3?= =?utf-8?B?T0lIczVBSEFqVkU0UTlXVDRDT0QxOVY1bE1haEpTNzJRM0xEbEFJMjdQN3ZI?= =?utf-8?B?SFlSMzhOczNFL1BIUXFlVXlkd0Yya3hyaFpKajBoY3JVaGxzMVJraStEeVBu?= =?utf-8?B?NzJneFhTK2dxTGUyUExwV3lJUTEzR3pPdHpOektJUHpSM2lQYXRJeEhuOWgy?= =?utf-8?B?ZC9sN3U0aXpsb25rZFh0TnFFSVh6U1c0eWxRN2xlZFZ4ZGpQNWF5L1UzaFR2?= =?utf-8?B?VVZZV1pJQitCeTQ3QkVkaDZqQWhqbk5pTWQ3N0oySUFSSXRWeGFCd1JQeHQ0?= =?utf-8?B?T0FQNjlKbVpiekgvbkF5WGVVWGhGMmpTMlRzb3hOLzdZSFBwdE5oL3o1ZE1Y?= =?utf-8?B?bnBkWTZwc2d1TlF5SXpTelNVTHJnZUVVRlNOTGs0a3ViR21UODNncVlOUFVl?= =?utf-8?B?ZVpNTWhCU2N3Zk81VXBmMkJzelBDb0NaeURmVU5pdjB2MUpaOVBEQVgrL0JY?= =?utf-8?B?ZUtBQWRqR2t5YWYwa2NQaGZsdHVUS3JUemtabXpiNGhDMVJGenV4eFRtVXQz?= =?utf-8?B?N29RZGR3THI3ZCtzOU9zRitWallmNzB5anY2OHVWRzBpQ215dkliejZlNEhI?= =?utf-8?B?NUwwRVlFVU5HUytnb0E1WVIvY1pQblpkMEMvK01McTlseGN1c215Qk94a3p6?= =?utf-8?B?ekJnT0REM0NaWVRRdmRnblJQMW90UU5HbGVnalRPNlNKTE9HbjUyajdkbElN?= =?utf-8?B?TkFPbU04dWZIc1I0Zi8rTm92L3NvSEpYYmlWTkNkaEl6L2pZRDNlUHRyekdN?= =?utf-8?B?dWlsMUlscEFrWStHSjNidG1qdDVCSUdzTXY2QllPSWQ0QVdWMUVxQ0FsNFQ4?= =?utf-8?B?VjNvRS9JY1BWODkwZHEwc2FyTHB0NEg2RUpLL0VIRE5UelU0L2h3ZUhRPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a1546c29-61d7-45f1-57b5-08dd4ab69742 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Feb 2025 16:10:24.2725 (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: AS1P250MB0527 Subject: Re: [FFmpeg-devel] [PATCH v7 3/4] 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: WmhhbyBaaGlsaToKPiAKPiAKPj4gT24gRmViIDExLCAyMDI1LCBhdCAyMzozNywgQW5kcmVhcyBS aGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+IHdyb3RlOgo+Pgo+PiBa aGFvIFpoaWxpOgo+Pj4gRnJvbTogWmhhbyBaaGlsaSA8emhpbGl6aGFvQHRlbmNlbnQuY29tPgo+ Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IFpoYW8gWmhpbGkgPHpoaWxpemhhb0B0ZW5jZW50LmNvbT4K Pj4+IC0tLQo+Pj4gbGliYXZjb2RlYy9oZXZjL2hldmNkZWMuYyB8IDczICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLQo+Pj4gbGliYXZjb2RlYy9oZXZjL2hldmNkZWMuaCB8 ICAyICsrCj4+PiBsaWJhdmNvZGVjL2hldmMvcmVmcy5jICAgIHwgMzUgKysrKysrKysrKysrKysr KysrLQo+Pj4gMyBmaWxlcyBjaGFuZ2VkLCAxMDggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9oZXZjL2hldmNkZWMuYyBiL2xpYmF2 Y29kZWMvaGV2Yy9oZXZjZGVjLmMKPj4+IGluZGV4IGU5YzA0NWY3YTEuLmY3MWVkZjIxM2IgMTAw NjQ0Cj4+PiAtLS0gYS9saWJhdmNvZGVjL2hldmMvaGV2Y2RlYy5jCj4+PiArKysgYi9saWJhdmNv ZGVjL2hldmMvaGV2Y2RlYy5jCj4+PiBAQCAtNDY2LDYgKzQ2NiwyNSBAQCBzdGF0aWMgaW50IGV4 cG9ydF9tdWx0aWxheWVyKEhFVkNDb250ZXh0ICpzLCBjb25zdCBIRVZDVlBTICp2cHMpCj4+PiAg ICAgcmV0dXJuIDA7Cj4+PiB9Cj4+Pgo+Pj4gK2ludCBmZl9oZXZjX2lzX2FscGhhX3ZpZGVvKGNv bnN0IEhFVkNDb250ZXh0ICpzKQo+Pj4gK3sKPj4+ICsgICAgY29uc3QgSEVWQ1ZQUyAqdnBzID0g cy0+dnBzOwo+Pj4gKyAgICBpbnQgcmV0ID0gMDsKPj4+ICsKPj4+ICsgICAgaWYgKHZwcy0+bmJf bGF5ZXJzICE9IDIgfHwgIXZwcy0+bGF5ZXJfaWRfaW5fbnVoWzFdKQo+Pj4gKyAgICAgICAgcmV0 dXJuIDA7Cj4+PiArCj4+PiArICAgIC8qIGRlY29kZV92cHNfZXh0KCkgZ3VhcmFudGVlcyB0aGF0 IFNDQUxBQklMSVRZX0FVWElMSUFSWSB3aXRoIEF1eElkIG90aGVyCj4+PiArICAgICAqIHRoYW4g YWxwaGEgY2Fubm90IHJlYWNoIGhlcmUuCj4+PiArICAgICAqLwo+Pj4gKyAgICByZXQgPSAocy0+ dnBzLT5zY2FsYWJpbGl0eV9tYXNrX2ZsYWcgJiBIRVZDX1NDQUxBQklMSVRZX0FVWElMSUFSWSk7 Cj4+PiArCj4+PiArICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0RFQlVHLCAiTXVsdGkgbGF5 ZXIgdmlkZW8sICVzIGFscGhhIHZpZGVvXG4iLAo+Pj4gKyAgICAgICAgICAgcmV0ID8gImlzIiA6 ICJub3QiKTsKPj4+ICsKPj4+ICsgICAgcmV0dXJuIHJldDsKPj4+ICt9Cj4+PiArCj4+PiBzdGF0 aWMgaW50IHNldHVwX211bHRpbGF5ZXIoSEVWQ0NvbnRleHQgKnMsIGNvbnN0IEhFVkNWUFMgKnZw cykKPj4+IHsKPj4+ICAgICB1bnNpZ25lZCBsYXllcnNfYWN0aXZlX291dHB1dCA9IDAsIGhpZ2hl c3RfbGF5ZXI7Cj4+PiBAQCAtNDczLDYgKzQ5MiwxOCBAQCBzdGF0aWMgaW50IHNldHVwX211bHRp bGF5ZXIoSEVWQ0NvbnRleHQgKnMsIGNvbnN0IEhFVkNWUFMgKnZwcykKPj4+ICAgICBzLT5sYXll cnNfYWN0aXZlX291dHB1dCA9IDE7Cj4+PiAgICAgcy0+bGF5ZXJzX2FjdGl2ZV9kZWNvZGUgPSAx Owo+Pj4KPj4+ICsgICAgaWYgKGZmX2hldmNfaXNfYWxwaGFfdmlkZW8ocykpIHsKPj4+ICsgICAg ICAgIGNvbnN0IEFWUGl4Rm10RGVzY3JpcHRvciAqZGVzYyA9IGF2X3BpeF9mbXRfZGVzY19nZXQo cy0+YXZjdHgtPnBpeF9mbXQpOwo+Pj4gKwo+Pj4gKyAgICAgICAgaWYgKCEoZGVzYy0+ZmxhZ3Mg JiBBVl9QSVhfRk1UX0ZMQUdfQUxQSEEpKQo+Pj4gKyAgICAgICAgICAgIHJldHVybiAwOwo+Pj4g Kwo+Pj4gKyAgICAgICAgcy0+bGF5ZXJzX2FjdGl2ZV9kZWNvZGUgPSAoMSA8PCB2cHMtPm5iX2xh eWVycykgLSAxOwo+Pj4gKyAgICAgICAgcy0+bGF5ZXJzX2FjdGl2ZV9vdXRwdXQgPSAxOwo+Pj4g Kwo+Pj4gKyAgICAgICAgcmV0dXJuIDA7Cj4+PiArICAgIH0KPj4+ICsKPj4+ICAgICAvLyBub3Ro aW5nIHJlcXVlc3RlZCAtIGRlY29kZSBiYXNlIGxheWVyIG9ubHkKPj4+ICAgICBpZiAoIXMtPm5i X3ZpZXdfaWRzKQo+Pj4gICAgICAgICByZXR1cm4gMDsKPj4+IEBAIC01MzAsNiArNTYxLDM0IEBA IHN0YXRpYyBpbnQgc2V0dXBfbXVsdGlsYXllcihIRVZDQ29udGV4dCAqcywgY29uc3QgSEVWQ1ZQ UyAqdnBzKQo+Pj4gICAgIHJldHVybiAwOwo+Pj4gfQo+Pj4KPj4+ICtzdGF0aWMgZW51bSBBVlBp eGVsRm9ybWF0IG1hcF90b19hbHBoYV9mb3JtYXQoSEVWQ0NvbnRleHQgKnMsCj4+PiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gQVZQaXhlbEZvcm1h dCBwaXhfZm10KQo+Pj4gK3sKPj4+ICsgICAgc3dpdGNoIChwaXhfZm10KSB7Cj4+PiArICAgIGNh c2UgQVZfUElYX0ZNVF9ZVVY0MjBQOgo+Pj4gKyAgICBjYXNlIEFWX1BJWF9GTVRfWVVWSjQyMFA6 Cj4+PiArICAgICAgICByZXR1cm4gQVZfUElYX0ZNVF9ZVVZBNDIwUDsKPj4+ICsgICAgY2FzZSBB Vl9QSVhfRk1UX1lVVjQyMFAxMDoKPj4+ICsgICAgICAgIHJldHVybiBBVl9QSVhfRk1UX1lVVkE0 MjBQMTA7Cj4+PiArICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0NDRQOgo+Pj4gKyAgICAgICAgcmV0 dXJuIEFWX1BJWF9GTVRfWVVWQTQ0NFA7Cj4+PiArICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjJQ Ogo+Pj4gKyAgICAgICAgcmV0dXJuIEFWX1BJWF9GTVRfWVVWQTQyMlA7Cj4+PiArICAgIGNhc2Ug QVZfUElYX0ZNVF9ZVVY0MjJQMTBMRToKPj4+ICsgICAgICAgIHJldHVybiBBVl9QSVhfRk1UX1lV VkE0MjJQMTBMRTsKPj4+ICsgICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQ0NFAxMDoKPj4+ICsgICAg ICAgIHJldHVybiBBVl9QSVhfRk1UX1lVVkE0NDRQMTA7Cj4+PiArICAgIGNhc2UgQVZfUElYX0ZN VF9ZVVY0NDRQMTI6Cj4+PiArICAgICAgICByZXR1cm4gQVZfUElYX0ZNVF9ZVVZBNDQ0UDEyOwo+ Pj4gKyAgICBjYXNlIEFWX1BJWF9GTVRfWVVWNDIyUDEyOgo+Pj4gKyAgICAgICAgcmV0dXJuIEFW X1BJWF9GTVRfWVVWQTQyMlAxMjsKPj4+ICsgICAgZGVmYXVsdDoKPj4+ICsgICAgICAgIGF2X2xv ZyhzLT5hdmN0eCwgQVZfTE9HX1dBUk5JTkcsICJObyBhbHBoYSBwaXhlbCBmb3JtYXQgbWFwIGZv ciAlc1xuIiwKPj4+ICsgICAgICAgICAgICAgICBhdl9nZXRfcGl4X2ZtdF9uYW1lKHBpeF9mbXQp KTsKPj4+ICsgICAgICAgIHJldHVybiBBVl9QSVhfRk1UX05PTkU7Cj4+PiArICAgIH0KPj4+ICt9 Cj4+PiArCj4+PiBzdGF0aWMgZW51bSBBVlBpeGVsRm9ybWF0IGdldF9mb3JtYXQoSEVWQ0NvbnRl eHQgKnMsIGNvbnN0IEhFVkNTUFMgKnNwcykKPj4+IHsKPj4+ICNkZWZpbmUgSFdBQ0NFTF9NQVgg KENPTkZJR19IRVZDX0RYVkEyX0hXQUNDRUwgKyBcCj4+PiBAQCAtNTQwLDkgKzU5OSwxMyBAQCBz dGF0aWMgZW51bSBBVlBpeGVsRm9ybWF0IGdldF9mb3JtYXQoSEVWQ0NvbnRleHQgKnMsIGNvbnN0 IEhFVkNTUFMgKnNwcykKPj4+ICAgICAgICAgICAgICAgICAgICAgIENPTkZJR19IRVZDX1ZJREVP VE9PTEJPWF9IV0FDQ0VMICsgXAo+Pj4gICAgICAgICAgICAgICAgICAgICAgQ09ORklHX0hFVkNf VkRQQVVfSFdBQ0NFTCArIFwKPj4+ICAgICAgICAgICAgICAgICAgICAgIENPTkZJR19IRVZDX1ZV TEtBTl9IV0FDQ0VMKQo+Pj4gLSAgICBlbnVtIEFWUGl4ZWxGb3JtYXQgcGl4X2ZtdHNbSFdBQ0NF TF9NQVggKyAyXSwgKmZtdCA9IHBpeF9mbXRzOwo+Pj4gKyAgICBlbnVtIEFWUGl4ZWxGb3JtYXQg cGl4X2ZtdHNbSFdBQ0NFTF9NQVggKyAzXSwgKmZtdCA9IHBpeF9mbXRzOwo+Pj4gKyAgICBlbnVt IEFWUGl4ZWxGb3JtYXQgYWxwaGFfZm10ID0gQVZfUElYX0ZNVF9OT05FOwo+Pj4gICAgIGludCBy ZXQ7Cj4+Pgo+Pj4gKyAgICBpZiAoZmZfaGV2Y19pc19hbHBoYV92aWRlbyhzKSkKPj4+ICsgICAg ICAgIGFscGhhX2ZtdCA9IG1hcF90b19hbHBoYV9mb3JtYXQocywgc3BzLT5waXhfZm10KTsKPj4+ ICsKPj4+ICAgICBzd2l0Y2ggKHNwcy0+cGl4X2ZtdCkgewo+Pj4gICAgIGNhc2UgQVZfUElYX0ZN VF9ZVVY0MjBQOgo+Pj4gICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVZKNDIwUDoKPj4+IEBAIC02NjQs NiArNzI3LDggQEAgc3RhdGljIGVudW0gQVZQaXhlbEZvcm1hdCBnZXRfZm9ybWF0KEhFVkNDb250 ZXh0ICpzLCBjb25zdCBIRVZDU1BTICpzcHMpCj4+PiAgICAgICAgIGJyZWFrOwo+Pj4gICAgIH0K Pj4+Cj4+PiArICAgIGlmIChhbHBoYV9mbXQgIT0gQVZfUElYX0ZNVF9OT05FKQo+Pj4gKyAgICAg ICAgKmZtdCsrID0gYWxwaGFfZm10Owo+Pj4gICAgICpmbXQrKyA9IHNwcy0+cGl4X2ZtdDsKPj4+ ICAgICAqZm10ID0gQVZfUElYX0ZNVF9OT05FOwo+Pj4KPj4+IEBAIC0zMTk0LDYgKzMyNTksMTIg QEAgc3RhdGljIGludCBoZXZjX2ZyYW1lX3N0YXJ0KEhFVkNDb250ZXh0ICpzLCBIRVZDTGF5ZXJD b250ZXh0ICpsLAo+Pj4gICAgICAgICAgICAgICAgICFzcHMtPnZ1aS5jb21tb24udmlkZW9fc2ln bmFsX3R5cGVfcHJlc2VudF9mbGFnKQo+Pj4gICAgICAgICAgICAgICAgIHBpeF9mbXQgPSBzcHNf YmFzZS0+cGl4X2ZtdDsKPj4+Cj4+PiArICAgICAgICAgICAgLy8gSWdub3JlIHJhbmdlIG1pc21h dGNoIGJldHdlZW4gYmFzZSBsYXllciBhbmQgYWxwaGEgbGF5ZXIKPj4+ICsgICAgICAgICAgICBp ZiAoZmZfaGV2Y19pc19hbHBoYV92aWRlbyhzKSAmJgo+Pj4gKyAgICAgICAgICAgICAgICBzcHNf YmFzZS0+cGl4X2ZtdCA9PSBBVl9QSVhfRk1UX1lVVjQyMFAgJiYKPj4+ICsgICAgICAgICAgICAg ICAgcGl4X2ZtdCA9PSBBVl9QSVhfRk1UX1lVVko0MjBQKQo+Pj4gKyAgICAgICAgICAgICAgICBw aXhfZm10ID0gc3BzX2Jhc2UtPnBpeF9mbXQ7Cj4+PiArCj4+PiAgICAgICAgICAgICBpZiAocGl4 X2ZtdCAgICAgIT0gc3BzX2Jhc2UtPnBpeF9mbXQgfHwKPj4+ICAgICAgICAgICAgICAgICBzcHMt PndpZHRoICAhPSBzcHNfYmFzZS0+d2lkdGggICB8fAo+Pj4gICAgICAgICAgICAgICAgIHNwcy0+ aGVpZ2h0ICE9IHNwc19iYXNlLT5oZWlnaHQpIHsKPj4+IGRpZmYgLS1naXQgYS9saWJhdmNvZGVj L2hldmMvaGV2Y2RlYy5oIGIvbGliYXZjb2RlYy9oZXZjL2hldmNkZWMuaAo+Pj4gaW5kZXggNGU5 NTAzNTY4OC4uYjJiNzI1YjVjZCAxMDA2NDQKPj4+IC0tLSBhL2xpYmF2Y29kZWMvaGV2Yy9oZXZj ZGVjLmgKPj4+ICsrKyBiL2xpYmF2Y29kZWMvaGV2Yy9oZXZjZGVjLmgKPj4+IEBAIC03MTQsNiAr NzE0LDggQEAgdm9pZCBmZl9oZXZjX2hsc19yZXNpZHVhbF9jb2RpbmcoSEVWQ0xvY2FsQ29udGV4 dCAqbGMsIGNvbnN0IEhFVkNQUFMgKnBwcywKPj4+Cj4+PiB2b2lkIGZmX2hldmNfaGxzX212ZF9j b2RpbmcoSEVWQ0xvY2FsQ29udGV4dCAqbGMsIGludCB4MCwgaW50IHkwLCBpbnQgbG9nMl9jYl9z aXplKTsKPj4+Cj4+PiAraW50IGZmX2hldmNfaXNfYWxwaGFfdmlkZW8oY29uc3QgSEVWQ0NvbnRl eHQgKnMpOwo+Pj4gKwo+Pj4gZXh0ZXJuIGNvbnN0IHVpbnQ4X3QgZmZfaGV2Y19xcGVsX2V4dHJh X2JlZm9yZVs0XTsKPj4+IGV4dGVybiBjb25zdCB1aW50OF90IGZmX2hldmNfcXBlbF9leHRyYV9h ZnRlcls0XTsKPj4+IGV4dGVybiBjb25zdCB1aW50OF90IGZmX2hldmNfcXBlbF9leHRyYVs0XTsK Pj4+IGRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2hldmMvcmVmcy5jIGIvbGliYXZjb2RlYy9oZXZj L3JlZnMuYwo+Pj4gaW5kZXggZGQ3ZjdmOTVhOC4uNmYxMGVmZDBhYyAxMDA2NDQKPj4+IC0tLSBh L2xpYmF2Y29kZWMvaGV2Yy9yZWZzLmMKPj4+ICsrKyBiL2xpYmF2Y29kZWMvaGV2Yy9yZWZzLmMK Pj4+IEBAIC03OSw2ICs3OSwzMSBAQCB2b2lkIGZmX2hldmNfZmx1c2hfZHBiKEhFVkNDb250ZXh0 ICpzKQo+Pj4gICAgIH0KPj4+IH0KPj4+Cj4+PiArc3RhdGljIGludCByZXBsYWNlX2FscGhhX3Bs YW5lKEFWRnJhbWUgKmFscGhhLCBBVkZyYW1lICpiYXNlKQo+Pj4gK3sKPj4+ICsgICAgQVZCdWZm ZXJSZWYgKmJhc2VfYSA9IGF2X2ZyYW1lX2dldF9wbGFuZV9idWZmZXIoYmFzZSwgMyk7Cj4+PiAr ICAgIHVpbnRwdHJfdCBkYXRhID0gKHVpbnRwdHJfdClhbHBoYS0+ZGF0YVswXTsKPj4+ICsgICAg aW50IHJldDsKPj4+ICsKPj4+ICsgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBGRl9BUlJBWV9FTEVN UyhhbHBoYS0+YnVmKSAmJiBhbHBoYS0+YnVmW2ldOyBpKyspIHsKPj4+ICsgICAgICAgIEFWQnVm ZmVyUmVmICpidWYgPSBhbHBoYS0+YnVmW2ldOwo+Pj4gKyAgICAgICAgdWludHB0cl90IGJ1Zl9i ZWdpbiA9ICh1aW50cHRyX3QpYnVmLT5kYXRhOwo+Pj4gKwo+Pj4gKyAgICAgICAgaWYgKGRhdGEg Pj0gIGJ1Zl9iZWdpbiAmJiBkYXRhIDwgYnVmX2JlZ2luICsgYnVmLT5zaXplKSB7Cj4+PiArICAg ICAgICAgICAgcmV0ID0gYXZfYnVmZmVyX3JlcGxhY2UoJmFscGhhLT5idWZbaV0sIGJhc2VfYSk7 Cj4+PiArICAgICAgICAgICAgaWYgKHJldCA8IDApCj4+PiArICAgICAgICAgICAgICAgIHJldHVy biByZXQ7Cj4+PiArCj4+PiArICAgICAgICAgICAgYWxwaGEtPmxpbmVzaXplWzBdID0gYmFzZS0+ bGluZXNpemVbM107Cj4+PiArICAgICAgICAgICAgYWxwaGEtPmRhdGFbMF0gPSBiYXNlLT5kYXRh WzNdOwo+Pj4gKwo+Pj4gKyAgICAgICAgICAgIHJldHVybiAwOwo+Pj4gKyAgICAgICAgfQo+Pj4g KyAgICB9Cj4+Cj4+IFdoeSBkb2VzIHRoZSBkZWNvZGluZyBwcm9jZXNzIGFjdHVhbGx5IG5lZWQg bXVsdGlwbGUgcmVmZXJlbmNlcyB0byB0aGUKPj4gYnVmZmVyIG9mIHRoZSBhbHBoYSBwbGFuZT8K PiAKPiBJ4oCZbSBub3Qgc3VyZSBpZiBJIHVuZGVyc3RhbmQgeW91ciBxdWVzdGlvbiBjb3JyZWN0 bHkuCj4gCj4gMS4gQm90aCB0aGUgYmFzZSBsYXllciBhbmQgdGhlIGFscGhhIGxheWVyIGFyZSBk ZWNvZGVkIGFzIHl1djQyMHAuCj4gMi4gVGhlIHkgcGxhbmUgb2YgYWxwaGEgbGF5ZXIgaXMgYWN0 dWFsbHkgYWxwaGEuCj4gMy4gVGhlIGRlY29kZXIgZmluYWxseSBvdXRwdXQgeXV2YSwgbm90IHR3 byB5dXY0MjBwLgo+IAo+IFNvIGhlcmUgbWFrZSB5IHBsYW5lIG9mIGFscGhhIGZyYW1lIHJlZmVy ZW5jZSB0aGUgYWxwaGEgcGxhbmUgb2YgYmFzZSBmcmFtZS4KPiBXaGVuIG91dHB1dCwgdGhlIGJh c2UgZnJhbWUgd2lsbCBjb250YWluIFlVViBhbmQgYWxwaGEgZnJvbSB0d28gbGF5ZXJzLgo+IAoK VGhlIGJhc2UgbGF5ZXIgQVZGcmFtZSBhbHJlYWR5IGNvbnRhaW5zIGEgcmVmZXJlbmNlIHRvIHRo ZSBhbHBoYSBwbGFuZTsKc28gd2h5IGRvIHdlIG5lZWQgYW5vdGhlciBvbmU/IERvZXMgdGhlIGJh c2UgQVZGcmFtZSBnZXQgdW5yZWZlcmVuY2VkCmJlZm9yZSB0aGUgYWxwaGEgcGxhbmUgaXMgZmlu aXNoZWQgZGVjb2Rpbmc/Cgo+Pgo+Pj4gKwo+Pj4gKyAgICByZXR1cm4gQVZFUlJPUl9CVUc7Cj4+ PiArfQo+Pj4gKwo+Pj4gc3RhdGljIEhFVkNGcmFtZSAqYWxsb2NfZnJhbWUoSEVWQ0NvbnRleHQg KnMsIEhFVkNMYXllckNvbnRleHQgKmwpCj4+PiB7Cj4+PiAgICAgY29uc3QgSEVWQ1ZQUyAqdnBz ID0gbC0+c3BzLT52cHM7Cj4+PiBAQCAtMTAzLDcgKzEyOCw3IEBAIHN0YXRpYyBIRVZDRnJhbWUg KmFsbG9jX2ZyYW1lKEhFVkNDb250ZXh0ICpzLCBIRVZDTGF5ZXJDb250ZXh0ICpsKQo+Pj4gICAg ICAgICB9Cj4+Pgo+Pj4gICAgICAgICAvLyBhZGQgdmlldyBJRCBzaWRlIGRhdGEgaWYgaXQncyBu b250cml2aWFsCj4+PiAtICAgICAgICBpZiAodnBzLT5uYl9sYXllcnMgPiAxIHx8IHZpZXdfaWQp IHsKPj4+ICsgICAgICAgIGlmICghZmZfaGV2Y19pc19hbHBoYV92aWRlbyhzKSAmJiAodnBzLT5u Yl9sYXllcnMgPiAxIHx8IHZpZXdfaWQpKSB7Cj4+PiAgICAgICAgICAgICBIRVZDU0VJVERSREkg KnRkcmRpID0gJnMtPnNlaS50ZHJkaTsKPj4+ICAgICAgICAgICAgIEFWRnJhbWVTaWRlRGF0YSAq c2QgPSBhdl9mcmFtZV9zaWRlX2RhdGFfbmV3KCZmcmFtZS0+Zi0+c2lkZV9kYXRhLAo+Pj4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZy YW1lLT5mLT5uYl9zaWRlX2RhdGEsCj4+PiBAQCAtMTYxLDcgKzE4NiwxNSBAQCBzdGF0aWMgSEVW Q0ZyYW1lICphbGxvY19mcmFtZShIRVZDQ29udGV4dCAqcywgSEVWQ0xheWVyQ29udGV4dCAqbCkK Pj4+ICAgICAgICAgaWYgKHJldCA8IDApCj4+PiAgICAgICAgICAgICBnb3RvIGZhaWw7Cj4+Pgo+ Pj4gKwo+Pj4gICAgICAgICBmcmFtZS0+cHBzID0gYXZfcmVmc3RydWN0X3JlZl9jKHMtPnBwcyk7 Cj4+PiArICAgICAgICBpZiAobCAhPSAmcy0+bGF5ZXJzWzBdICYmIGZmX2hldmNfaXNfYWxwaGFf dmlkZW8ocykpIHsKPj4+ICsgICAgICAgICAgICBBVkZyYW1lICphbHBoYSA9IGZyYW1lLT5mOwo+ Pj4gKyAgICAgICAgICAgIEFWRnJhbWUgKmJhc2UgPSBzLT5sYXllcnNbMF0uY3VyX2ZyYW1lLT5m Owo+Pj4gKyAgICAgICAgICAgIHJldCA9IHJlcGxhY2VfYWxwaGFfcGxhbmUoYWxwaGEsIGJhc2Up Owo+Pj4gKyAgICAgICAgICAgIGlmIChyZXQgPCAwKQo+Pj4gKyAgICAgICAgICAgICAgICBnb3Rv IGZhaWw7Cj4+PiArICAgICAgICB9Cj4+Pgo+Pj4gICAgICAgICByZXR1cm4gZnJhbWU7Cj4+PiBm YWlsOgo+Pgo+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xwo+PiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0Cj4+IGZmbXBlZy1kZXZlbEBmZm1wZWcub3Jn Cj4+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAo+Pgo+ PiBUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKPj4gZmZtcGVnLWRl dmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4KPiAKPiBf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IGZmbXBlZy1k ZXZlbCBtYWlsaW5nIGxpc3QKPiBmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwo+IGh0dHBzOi8vZmZt cGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAo+IAo+IFRvIHVuc3Vic2NyaWJl LCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+IGZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBl Zy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBl Zy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Zm bXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZm bXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIu Cg==