From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 1B4F34F320 for ; Mon, 16 Jun 2025 11:03:18 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 3095E68DB81; Mon, 16 Jun 2025 14:03:15 +0300 (EEST) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2053.outbound.protection.outlook.com [40.92.89.53]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id CA7D768D630 for ; Mon, 16 Jun 2025 14:03:08 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lQDEL5AAWbUjtLmPxePtAR1ydSZjrjS/nPxOW/kme6fslok72y+5C4JKvWl31uOvSn/x/TnaSzJ4PFj2k1VHhxLNpQEH6iCuRcDm9592Wml++qUcXUVO+/4iSm9eL5EiLCU6ma0SJ0louCaa3s5I1wBNy7m1Yn8ZtNmvHGejzWi2fy7WYLvrKUkz+kR6LId6ltWDwtva6L/6DWTKdDjDyJjJwWL2TiIFwpNL2DggCOSxQ1wNF/SDnOm0LfyCR8H1MM6f9du3ezncOcsD9hl1h5oTIZiQOxvtKeNVd/SInAlZtEDK0ubxS8cn/tOuFTg8FHy6tURg4rG94UW2NrZzLw== 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=OWcOtMf4JyBofCSKh4epinnNCjznCrlz388C+3vCpWo=; b=l4xzbyouyeFJ+9Y7iBrr4nXcYkZXAQiB6zNNCvifm0WUWLz1d8EewrPb5UQ6nDs2j3Bx3wdfoQgVR/uLWTPL1UQzD/oJ1y6cubnKmj7xOx0KrWgFeg4bvO1wrgkJMSwJCzubNGgxUgtXgVClBiek/2zAVlNHp/9rFGaiXdfUOpqRxSbcI9uadvNpISNHNDHQMpgpzDOko5c9WR4G3QQNWVC4MYKN23ZA9dJRxK58E3r3c27kLerNZic6/lU+3Xw4uQM4avWLq0iJY25VC/H8vpWZWOZyKSSw/ylcBc8rsSsgRnisqgwIfBwdLxZKUZDOYuU04DOzyZdovAEZv09tsw== 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=OWcOtMf4JyBofCSKh4epinnNCjznCrlz388C+3vCpWo=; b=ACloLc2Vd709WiH8CoYbsX6Em6bXcf3uToff4shyGwFzW5JYQsXWNp0SwzoA7+VqK4xcmGnPHLYQzihDDaKBYGeRmpkea141Kfm2o8GP12ZzmFNa8BVml+fC+8Eu+KwKIMgqmCi5PRgZaMTji2BplMJZO9mz3AOM1L71vxkhMfesRZmWsqoPSdMZZP0fBwcYq0j+1KvDobOLlHqNDnZI8UhEImJTYuM8iSZGohibYYd3V4XF28WL7G/KEIGv+2R36JD6nZ/rIjx7uvA5+6UliLmXfKIaHVKMWeTTM2XVWG/sjFZi7altux65Om6tQzUh4hLqgg1El4U9m6OagjQhGw== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by GV2P250MB0997.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:d7::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8835.28; Mon, 16 Jun 2025 11:03:07 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::d6a1:e3af:a5f1:b614%7]) with mapi id 15.20.8835.027; Mon, 16 Jun 2025 11:03:07 +0000 Message-ID: Date: Mon, 16 Jun 2025 13:03:05 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-ClientProxiedBy: FR4P281CA0205.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:e5::14) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <785cb71f-3e0d-4c07-ac58-c7e63b6ecf6d@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|GV2P250MB0997:EE_ X-MS-Office365-Filtering-Correlation-Id: d56bb255-dcb4-40b8-3f61-08ddacc55f91 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9XmpirIBHktUo1qChFBbx+NYsLZnFljaGuZIBA6F+NbgPPv7Jvnongq70oveSnPCx+GYZ7Gx21I5c0+1x0sC0tU9v7+JGnlO2h2FB+AUfbPMnqAIfiUdOsKDot0hB7ZdQcsPBcPIIMLzCDMnSJvNIfGKZ2yAM+fD3GoMetsWNAWf23ob64ge2Td8ghUPY34G3FTL1J5cIvEPN+GT81ZBtJtF/7jG7CEk0U1McLIRg8UDzOp21Zebo2pCfpiLjQKyp4Fs7+mIAJeuKk0zri8yryvF58xCkIc66nTIh/GAyOhscDcvrv53PDqvAoMMGXGj9sf7iJbmnGjMMnohE/Q4Mb3NB+WIlSKTUUF3cf0V1zgS4f4JLyNK0Yh5XGRxkmNwMJj7diG4+cNaLRUua/pz+Fi483sDwop/J8F2OGcfMD/FDUweCn5bWHBu1VniWTPm0gRaHJToONlb4UpQOcm+H3rA6e+CrFFS5K5/azDZJ8xl/eEtU2rw6rF+shbwiUjngNZQfxDQY/5pYvCV9nCZc8CJX3OLu6AU9YpkYHESDmS91lKyvN5kB5U+oB1JlFz1/rk9Khc8u0uAxgx8it8B+OnQhry7WfTi89vej7TXVb2JXjjrcHr/ErNXG46/P4dTlGOIgsN6Lq8Oxszrq7fFf8GwDHc3sq/3CQFxYvMq9jsmrD9F0aw+fZg1UzY56hiqttfbzcP6GEXTzhSLPZy9T1w6c+tkdM1rUBh3TB2TNzrruzCNW7HjzPvMA/nWO9ypunkQ= X-Microsoft-Antispam: BCL:0; ARA:14566002|5072599009|6090799003|461199028|15080799009|19110799006|7092599006|8060799009|3412199025|440099028|40105399003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?TDQxYmo3Nk1maTNlWUEvakZUOFdSY2VTdkxTb1lGTDV0QWdJM2NjUG5mc0I4?= =?utf-8?B?eGR1NDJtK1hyc0crL1VmRkFYTVYrcXB3RUZkZkRYa1NtL1NmVFlhYW5kZENM?= =?utf-8?B?SWNZMk8zQWtPUXU3aFdrWUJxWlFPVWVWcHgwczZxcHluUEVoc3kzUHJKRUVT?= =?utf-8?B?Smc5dTRKVGRqa1FJT2xobDRPMDJOc0dMRDAxYTJZd2RiRFRUTWNZb0lhbFd1?= =?utf-8?B?My9CNlVWTkFobW9MR3NtQ0ExWTQwNDJKenBNUW1XeTNWYmNlZ1VkUUwrZE02?= =?utf-8?B?eXQ0VHF6UmVFVTEvdnJwTXRWOU45alo1YWQzeUdmTUJGZTQ3d3hIMFdvNmhl?= =?utf-8?B?Y2gwVGVKVXd0V1Y4dEhlVGE0TWFTNDR4eGNyQ0tFdGZQZGJGaXV6dkVDYWE1?= =?utf-8?B?cTl4d3lqelpBaTRqWmQvdStyV1ZGbHIzNkZ4QVpMakwreUVuLzUyNWtEM1l3?= =?utf-8?B?MUhQWkFLK3BuVmpORHdRZys5ZVBWV1g5MTdseStBY3FmMDcwYjNwNmI4UTBI?= =?utf-8?B?ZlBYRGd0NTJYL015UmpXS2RQODN1UjRyY241Z2RzMlJZMXR2NC9MWitTRG5T?= =?utf-8?B?cGoyRVkxdTNBMitIemlJRWF4eHVXeW01S2NIZDJrREpIamNhYXpDdnpUZ2kz?= =?utf-8?B?TkxFT2RQWDdOdjJOb1RyamIybUtnV2lxdis5TERzcnVUVngweUxXZ2duRDdQ?= =?utf-8?B?aTVqSDVET29qMEpDbTdFVFdQeVM0dTkrd3VKTXZYN0pIbFNBSVpCSDNNZVVt?= =?utf-8?B?VSs1b29rUVRKU0M5ZVBhc28yb2JiZ1VtTWs4SDRqQWVsZmkwNGlaQzBuaG5o?= =?utf-8?B?RTBOa0hYR3ZKNlRoT21EaFc0aUxEcGdNNUVyRTlQVWlHOU0wTmdMcFpjckFs?= =?utf-8?B?Q3VVa0t2TkE1eVFZL1RkVjZSdmJvM0NLUDZoeEY2Z0RmbUNuNkxGODBCM1li?= =?utf-8?B?L28xYnVSa2svQ1NiSzFvUEJLSjdwYXVhcytxc1pYOWM2ZDlhUEEyRW03blRR?= =?utf-8?B?TWxkK0ZJaHBNcitJOGRycUtnNU9nSFNtdlhZUHQ2MTg1ZkZvdmY3TGErT1Mx?= =?utf-8?B?cE5YT0RBZThySGtTeFNKekhtR3N5MXNrQVpmL25hTVIvVGxvbTMwendxaUlZ?= =?utf-8?B?elVNM21vcDZiY2dDazJqQWwrMm5rTUJ1TktwYThTUFlieUR6SW1OS1V4ajJv?= =?utf-8?B?VlJjaSs5d29JK0ttL2xJemphN2R0QVU1VlFTdTIvcTJNRUp6SkNjRGwwSWJG?= =?utf-8?B?dFlGT0lzRWE0WHR2N0dlNlZHTCttMkM0THJUUWtYUjA5NFcraFVMTUtQOTIv?= =?utf-8?B?S1pPSTZaaDhlN1lrcVdEUFlZTDYzNVFENFVvWmJBeWtYZURDNjQ4TVVkUUti?= =?utf-8?B?SEVKUXN3OUphV0dCeFl2ZlFtSERhcFdHdFNzV25KRDI2WFNHWGluWkN5b2Zs?= =?utf-8?B?YVFYLzFYc0VnSWREZm1vSjBTQUxUMWxlU3BVa1NaWjVqY21ndTJNRUhQcmhZ?= =?utf-8?B?bVNhQVJoUnpZNzU2a3JPM1kzWVdCZEpwZHhxc3lnYXpKdjh6K2lwK0d2ZjRQ?= =?utf-8?Q?2IQpbkxQEQJ6qN6J9o+k5ap9g=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VktMYmg4bUFkUUdOT3ozUGN0aWNnMlJWUTJtUXQzbEVUSVBSVWhlZW1hOWx5?= =?utf-8?B?dUZDd1ZuYUYvL3pIb0J1dnM4d2dFM1V1c1RaUFlXbGhMTGNIOEY4YmZwZlo5?= =?utf-8?B?dS9OUi9KZ2RZaGlUalpjWGw1c0hCUFJ3Qm5UNkNnVVF3cFVJcWNBbXV5N0l5?= =?utf-8?B?bU15N2FZVnlramVoYkt6RmJuZml5djdEeGVJZ2xLNEFaODNBbDdpUWRxZmlT?= =?utf-8?B?dis4bWJacFNJRldlZWp5Y1gvRGlCZmZBUGZ2OUUyMEovQVhGbUdOQVdQL2Z4?= =?utf-8?B?SDZDdkZPbHgrMSt5dE41RzFrdFlVd0V5dThwdENmL29rdzBxZXg0V1JUNXpC?= =?utf-8?B?OXdDRkpINGp2UFlYNTVhZzRiQ1lIeGFrUWNGNlJQeDNHQkFzKzZHSjlKSzdP?= =?utf-8?B?S0x2UnI1K1lYaEhTYThibjF0ZGVKRXROMGNMVHJKWGpKWExCQkVoYVZkdkU5?= =?utf-8?B?YjZueU1HaW43eHJQYzkwemM2SlVUcjJlTUFUV1hwbVgxMFVhckxEUmpPdS8z?= =?utf-8?B?Y1I1YzNPMjVUTzFPei9PLzh3djlrc1RSN09PUVRVdWhFVTNTOFoyV0RLZzAx?= =?utf-8?B?akNGZytDSk1QQ3RrK2dXMzNBUHlaWHgxT0tOd0hjRi8wa3FQRzVGZjZzRTNs?= =?utf-8?B?NkVjQk0zT0NpMjd0dG8zWTduQmRlMjJFelpZOEo4UXhidEU0SmpWRUY5Y2JK?= =?utf-8?B?TkFJMzEyTk5Ed3NJdFFjREhiTnhSR1VCSUhSV3FYZS9FVCs4aVNNcktLSnBD?= =?utf-8?B?MjNZMWN3RmxMOXY1aysvaURLS0trSk1sVlVJUld5V0hSaVpSTERrZVIrQVFF?= =?utf-8?B?Z29GWWZkZlQzeUhwS2EvdjBEd1Badm1kUnB2VDR1QklHL09Oc3lvRXAxekRO?= =?utf-8?B?ZUhRNWVYbHBHZlNiSkdCN3I3OWwydVFDYlhFdTFBL2ptMnp1ZmxGZ1Z2Q1dy?= =?utf-8?B?ZHcvaDhSV2dtcGpSSDEyQVUvZ3dlU01XWVhXMHRucS80NHpSOCtnbnZCbit2?= =?utf-8?B?Q0RrTFhpb1J5cXNMOFFtN1VCZmQ0M3lYZ3EyNnZldW9iRi9qaWJvYjRSWFJH?= =?utf-8?B?RGo5ZFk3WHNKYW5pM2hBaXNLakhYZDBtVTZ0NW45eHpsSDRwSCs3eDlXcCtZ?= =?utf-8?B?Q1l0SS9RWXg0RDhvOTVCK1A5b2FIRzNFZVh0TVVLdjJQMk5saEg2MHMwaUIv?= =?utf-8?B?TmM3UE9SczhabXJmeEYxK3ZWd2ZOLzNHUE1KN3NNaUZYczRaVWFqZWt2blh5?= =?utf-8?B?WTlFTW9VZUZoNVpnY2NmR0JtRkhWUzA1QTVGZ0picVJrbXVhS3M4eVlkbHdS?= =?utf-8?B?eGo3dVRHbi9VK1g4QkcwOUNsZXZibFpaTktpQTJReVlWaWhjckdVVUMwNmdT?= =?utf-8?B?S2t4VXBrcjRIa2U1Qk0yMjhPZW16dTkvVkM4SWwyVTcwSHVpQVlsbTdkWDEw?= =?utf-8?B?L0N0ODltNDJ5WHdjR25WY0FTTkk0UUxCUkxpOHUzRGQ4T3p3MjN1c0l4QXU3?= =?utf-8?B?Tmx6ME0wQUVUODJ2QytqNW5LTlRCOVZlc3l3Y2hwT1ZvVEV3bTNla0pUaFZT?= =?utf-8?B?WThFd0k2QzV5Y29obFpldmhtSlJiYWE1dzFHdFlVdXpLWFJxUXJDT3g1TFNT?= =?utf-8?B?L0lGdW5oSzBrZ2FuWFVjUlFkRWVodWlKVVduMlJ0L0tlbGR3ZXhiTHlFUExx?= =?utf-8?B?WFdJMU52b1plbFc1bUpNSWpEUlc1cjNYVDI5aDY0UGd2VmlMa0YyRmxRRnVD?= =?utf-8?B?MFI0ZkdlTStSVE9Pb1ZyS0hCUUMxS3pvOXRuT1dZQytzWEtLd1NldXZKejVR?= =?utf-8?B?djlyanQ4TGpjQzVoTEZadz09?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d56bb255-dcb4-40b8-3f61-08ddacc55f91 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2025 11:03:07.2513 (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: GV2P250MB0997 Subject: Re: [FFmpeg-devel] [PATCH v3] checkasm/h264dsp: Fix stack overflow in check_idct_dequant 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: WmhhbyBaaGlsaToKPiAKPiAKPj4gT24gSnVuIDE2LCAyMDI1LCBhdCAxNzo0NiwgQW5kcmVhcyBS aGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+IHdyb3RlOgo+Pgo+PiBa aGFvIFpoaWxpOgo+Pj4gRnJvbTogWmhhbyBaaGlsaSA8emhpbGl6aGFvQHRlbmNlbnQuY29tPgo+ Pj4KPj4+IC0tLQo+Pj4gdGVzdHMvY2hlY2thc20vaDI2NGRzcC5jIHwgMjAgKysrKysrKysrKysr KysrLS0tLS0KPj4+IDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9u cygtKQo+Pj4KPj4+IGRpZmYgLS1naXQgYS90ZXN0cy9jaGVja2FzbS9oMjY0ZHNwLmMgYi90ZXN0 cy9jaGVja2FzbS9oMjY0ZHNwLmMKPj4+IGluZGV4IGY1Zjk2NTAyMjQuLmEwZjhmZDg1OGEgMTAw NjQ0Cj4+PiAtLS0gYS90ZXN0cy9jaGVja2FzbS9oMjY0ZHNwLmMKPj4+ICsrKyBiL3Rlc3RzL2No ZWNrYXNtL2gyNjRkc3AuYwo+Pj4gQEAgLTMyOCwyNSArMzI4LDM1IEBAIHN0YXRpYyB2b2lkIGNo ZWNrX2lkY3RfbXVsdGlwbGUodm9pZCkKPj4+IHN0YXRpYyB2b2lkIGNoZWNrX2lkY3RfZGVxdWFu dCh2b2lkKQo+Pj4gewo+Pj4gICAgIHN0YXRpYyBjb25zdCBpbnQgZGVwdGhzWzVdID0geyA4LCA5 LCAxMCwgMTIsIDE0IH07Cj4+PiAtICAgIExPQ0FMX0FMSUdORURfMTYoaW50MTZfdCwgc3JjLCBb MTZdKTsKPj4+IC0gICAgLyogRW5zdXJlIGRzdCBidWZmZXJzIGFyZSBsYXJnZSBlbm91Z2ggdG8g aG9sZCBkY3Rjb2VmcyBvZiBhbGwgYml0LWRlcHRocy4gKi8KPj4+ICsgICAgLyogRW5zdXJlIGJ1 ZmZlcnMgYXJlIGxhcmdlIGVub3VnaCB0byBob2xkIGRjdGNvZWZzIG9mIGFsbCBiaXQtZGVwdGhz LiAqLwo+Pj4gKyAgICBMT0NBTF9BTElHTkVEXzE2KHVpbnQ4X3QsIHNyY19idWYsIFsxNiAqIHNp emVvZihpbnQzMl90KV0pOwo+Pj4gICAgIExPQ0FMX0FMSUdORURfMTYodWludDhfdCwgZHN0MCwg WzE2ICogMTYgKiBzaXplb2YoaW50MzJfdCldKTsKPj4+ICAgICBMT0NBTF9BTElHTkVEXzE2KHVp bnQ4X3QsIGRzdDEsIFsxNiAqIDE2ICogc2l6ZW9mKGludDMyX3QpXSk7Cj4+PiArICAgIGludDE2 X3QgKnNyYyA9IChpbnQxNl90ICopc3JjX2J1ZjsKPj4+ICAgICBpbnQxNl90ICpkc3RfcmVmID0g KGludDE2X3QgKilkc3QwOwo+Pj4gICAgIGludDE2X3QgKmRzdF9uZXcgPSAoaW50MTZfdCAqKWRz dDE7Cj4+PiAgICAgSDI2NERTUENvbnRleHQgaDsKPj4+ICAgICBpbnQgYml0X2RlcHRoLCBpLCBx bXVsOwo+Pj4gICAgIGRlY2xhcmVfZnVuY19lbW1zKEFWX0NQVV9GTEFHX01NWCB8IEFWX0NQVV9G TEFHX1NTRTIsIHZvaWQsIGludDE2X3QgKm91dHB1dCwgaW50MTZfdCAqaW5wdXQsIGludCBxbXVs KTsKPj4+Cj4+PiAtICAgIGZvciAoaW50IGogPSAwOyBqIDwgMTY7IGorKykKPj4+IC0gICAgICAg IHNyY1tqXSA9IChybmQoKSAlIDUxMikgLSAyNTY7Cj4+PiAtCj4+PiAgICAgcW11bCA9IHJuZCgp ICUgNDA5NjsKPj4+Cj4+PiAgICAgZm9yIChpID0gMDsgaSA8IEZGX0FSUkFZX0VMRU1TKGRlcHRo cyk7IGkrKykgewo+Pj4gICAgICAgICBiaXRfZGVwdGggPSBkZXB0aHNbaV07Cj4+PiAgICAgICAg IGZmX2gyNjRkc3BfaW5pdCgmaCwgYml0X2RlcHRoLCAxKTsKPj4+Cj4+PiArICAgICAgICBpZiAo Yml0X2RlcHRoID09IDgpIHsKPj4+ICsgICAgICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8 IDE2OyBqKyspIHsKPj4+ICsgICAgICAgICAgICAgICAgaW50MTZfdCByID0gKHJuZCgpICUgNTEy KSAtIDI1NjsKPj4+ICsgICAgICAgICAgICAgICAgQVZfV04xNkEoJnNyY19idWZbaiA8PCAxXSwg cik7Cj4+PiArICAgICAgICAgICAgfQo+Pj4gKyAgICAgICAgfSBlbHNlIHsKPj4+ICsgICAgICAg ICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IDE2OyBqKyspIHsKPj4+ICsgICAgICAgICAgICAg ICAgaW50MzJfdCByID0gKHJuZCgpICUgKDEgPDwgKGJpdF9kZXB0aCArIDEpKSkgLSAoMSA8PCBi aXRfZGVwdGgpOwo+Pj4gKyAgICAgICAgICAgICAgICBBVl9XTjMyQSgmc3JjX2J1ZltqIDw8IDJd LCByKTsKPj4+ICsgICAgICAgICAgICB9Cj4+PiArICAgICAgICB9Cj4+PiArCj4+PiAgICAgICAg IG1lbXNldChkc3QwLCAwLCAxNiAqIDE2ICogU0laRU9GX0NPRUYpOwo+Pj4gICAgICAgICBtZW1z ZXQoZHN0MSwgMCwgMTYgKiAxNiAqIFNJWkVPRl9DT0VGKTsKPj4+Cj4+Cj4+IFRoaXMgc3RpbGwg aGFzIGFuIGVmZmVjdGl2ZS10eXBlIHZpb2xhdGlvbjogc3JjX2J1ZiBpcyBvZiB0eXBlIHVpbnQ4 X3QsCj4+IHlldCB0aGUgZmZfaDI2NF9sdW1hX2RjX2RlcXVhbnRfaWRjdCBmdW5jdGlvbnMgd2ls bCByZWFkIGl0IGFzCj4+IGludDE2X3QvaW50MzJfdC4gSXQgYWxzbyBzdGlsbCBoYXMgdGhlIGRv d25zaWRlIHRoYXQgYnVmZmVyIG92ZXJmbG93cwo+PiBmb3IgdGhlIDhiaXQgY2FzZSBjYW4gZ28g dW5kZXRlY3RlZC4KPiAKPiBBIGJ1bmNoIG9mIHRlbXBsYXRlIGhhcyBjYXN0IGxpa2UgCj4gCj4g ICAgIHBpeGVsICpkc3QgPSAocGl4ZWwgKilfZHN0Owo+ICAgICBjb25zdCBwaXhlbCAqc3JjID0g KGNvbnN0IHBpeGVsICopX3NyYzsKPiAKPiB0aGVuIHJlYWQgYW5kIHdyaXRlIGFzIGludDE2X3Qu Cj4gCj4gQW5kIGEgYnVuY2ggb2YgY2hlY2thc20gdXNlIHVpbnQ4X3RbXSBhcnJheSBvbiBzdGFj ayBhcyBzcmMgYW5kIGRzdCwKPiB3aGljaCBsZWFkaW5nIHRvIFVCLgo+IAo+IFRoaXMgcGF0Y2gg aXNu4oCZdCBzcGVjaWZpYy4gQW5kIHRoaXMgcGF0Y2ggYWRkIHplcm8gVUIgKGl04oCZcyB0aGVy ZSBiZWZvcmUgdGhlIHBhdGNoLAo+IGJvdGggc3JjIGFuZCBkc3QgYXJlIGFjY2Vzc2VkIGFzIGlu dDMyX3QvaW50MTZfdCB3aGlsZSB0aGV5IGFyZSBpbnQxNl90IGFuZCB1aW50OF90KS4KPiAKClRo aXMgcGF0Y2ggYWRkcyBVQjogc3JjIHdhcyBpbnQxNl90IGJlZm9yZSwgc28gdGhhdCB0aGUgYWNj ZXNzZXMgaW4gdGhlCmVpZ2h0IGJpdCBmdW5jdGlvbiB3ZXJlIGZpbmUsIGJ1dCBhcmUgbm90IHdp dGggdGhpcyBwYXRjaC4gQW55d2F5LCBpdCBpcwppcnJlbGV2YW50IG5vdy4KCi0gQW5kcmVhcwoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRl dmVsIG1haWxpbmcgbGlzdApmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5v cmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWctZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBs aW5rIGFib3ZlLCBvciBlbWFpbApmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGgg c3ViamVjdCAidW5zdWJzY3JpYmUiLgo=