From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ffmpeg-devel-bounces@ffmpeg.org>
Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100])
	by master.gitmailbox.com (Postfix) with ESMTPS id A25144038A
	for <ffmpegdev@gitmailbox.com>; Sat, 22 Mar 2025 13:17:10 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 48AFA687C11;
	Sat, 22 Mar 2025 15:17:06 +0200 (EET)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05olkn2057.outbound.protection.outlook.com [40.92.91.57])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 15BC8687AD6
 for <ffmpeg-devel@ffmpeg.org>; Sat, 22 Mar 2025 15:17:00 +0200 (EET)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=tlHS5P9Ksb1wa7jDxzaZZGBOAcD7mNfDEmzlUbkZzDMkZFJnfu5xUDWFpOjADUNZQ7gyDiKzLNwTMtTzEFqDDRuYUB7BE62GYrna0tKcLarsGI/xXaDUoTMpOQuBPbY7z36puUcW9nDM/1MACWIjeYqbAhog6oNZyEw8C6ssmmeJ8C9hk1O0/UdC/wm9bopVjHf+zwvj9Hlo8Pbpp2QDeMi9r41Em4eepsuG/0Jigmoj4xQJJv6DL5TIHX1/M/FO/nhbR2tw5vuzJAgZ0JDQ6VeS6MmTHPa0w8MmnUKI7VwBcTo4kgBtrdj+O426zQ64d32y6FnkGJ+fS2w0K1QsTQ==
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=1gAUxz1Oek6SgklZaSIXex1ibkNL7WyCMeHPG+JPhQI=;
 b=n0hL9grfEX6YvjaDZ7BBcX7IRSO2PSZ/2zOvpffXRHwOyGCiKj7EzrAR0bmP/IJLvCOST3dPa1JlOxlf1Xby/0/G1+QWWDd0Hv8ETNqmBBtrf9NDyg6u01u1C+PMKR+D9/i+HKl8bbEduwE3pJyYvENpmfo0iMaHQv46YZFoobao8aDIvSOe4LtSk4pFlivE5aAZuih6IHqoIkQ3WoIrNHKX9eO6zsLFljP3Xy3chuQUXVPdEAP8Jn/WVIjnMbK3KG6exRd06N8zq6mHS0LCg4FJeM6zXaVg9uejIkaPPDXL38espG09VdJ5JdjgLjUiKziXKKS0w8paUVnx/cuNbg==
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=1gAUxz1Oek6SgklZaSIXex1ibkNL7WyCMeHPG+JPhQI=;
 b=mlQnXCH9FquY6D9PFYcWmwkguiLG23b0jJbyrRaaOAShbuidgVh52bjbZQdgHviW9zST/lg3QpGK3Niwuv9cl07n+OEWmWW78zlFkvrX6SU02BTxdr9egeTgh+a85siK2tEWvaDAP1pnYBAQpH3bgRT+xRQId/+dbQXYOHTLFmDOleUQLpk8i2la1SMHiB5OTL3JLxPKHPkPHFvSfmF0Elw+8de1gsad6BW/mMY3eQahVsIOfae2agHKtzkGtLV1Sh6Hb/7j14CdDZG5ZMrSGm9Qg0XwqZO+Sss0FzMdg1ftAlPdcpEoLkjmRfcLbhuHySNC7V+d7IV2g127bPQ8ng==
Received: from GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8b::16) by
 DU0P250MB0843.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3e6::10) with
 Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.8583.17; Sat, 22 Mar 2025 13:16:56 +0000
Received: from GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM
 ([fe80::2e14:af18:9569:bc54]) by GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM
 ([fe80::2e14:af18:9569:bc54%5]) with mapi id 15.20.8583.010; Sat, 22 Mar 2025
 13:16:56 +0000
Content-Type: multipart/mixed; boundary="------------PyKgxVR1YM9xYOGqePwE4Dc1"
Message-ID: <GV1SPRMB003675F14FD6B01A4B42D87F8FDA2@GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM>
Date: Sat, 22 Mar 2025 14:16:55 +0100
User-Agent: Mozilla Thunderbird
To: ffmpeg-devel@ffmpeg.org
References: <AS8P250MB0744A8DBC25ABEC4F82344B58FD92@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM>
 <20250322003428.GK4991@pb2>
Content-Language: en-US
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
In-Reply-To: <20250322003428.GK4991@pb2>
X-ClientProxiedBy: FR4P281CA0084.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:cd::6) To GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM
 (2603:10a6:150:8b::16)
X-Microsoft-Original-Message-ID: <2e078dab-c1c0-4ab1-953e-a45ba4862a51@outlook.com>
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: GV1SPRMB0036:EE_|DU0P250MB0843:EE_
X-MS-Office365-Filtering-Correlation-Id: 53f86137-03a2-4e91-a162-08dd6943d20a
X-Microsoft-Antispam: BCL:0;
 ARA:14566002|8060799006|15080799006|6092099012|7092599003|461199028|19110799003|12121999004|5072599009|1602099012|440099028|4302099013|3412199025|20055399003;
X-Microsoft-Antispam-Message-Info: =?utf-8?B?cTBSL0lobW5qbjcxcHFpQitseUxqejluWWNDMG5VR0ptUTcwamFDbUU2SG9K?=
 =?utf-8?B?eWV5L2ZCRnZOUSs0M3M0NXZvYjYvUEVvblJCdml3WFlxeUVtUVRxa3VURDFC?=
 =?utf-8?B?cUdJdk43aEg0T3FFcGxsSnlqSDl5cnMxckFnQlh2V01uOWpUVjNBQTAxcGxT?=
 =?utf-8?B?YWtuVC9RTDEyeER5RTV5dmpIWXV6dkRXeGRYdjdHR0ZFem1OUzJmSzh0V081?=
 =?utf-8?B?NWZDcmRTbVduRTdzZ3UxbGl5U0piWjg1ckNWNXFDTDN2RG5vY3E4cEkvQ0JI?=
 =?utf-8?B?OU9wYWNURDZhR2FpYXdQeWhxTDV4bGt5V1NOeWRzTkZHVVVUTWc2TXgvK1Rq?=
 =?utf-8?B?OXUyYk9nWU9RQUpubkxCZUpFS3BSVGNORFRtQnI4eFVRRy9GZU9yWjgwd3U4?=
 =?utf-8?B?QUZkU1lTa2VEMWNzU3EyYk0weHdOQnlnaFhtR1ZJbm0vQ0V3S2QwTWUxMUFm?=
 =?utf-8?B?cGZmMjNQR3J0VmZIWXlBV0d2NUZIZjdJTkhpa2s5MERWMFFOL1ZjSnNBMElD?=
 =?utf-8?B?WEdnMHRiakEzWUlPTTh2K1h2U05ML0R1Zy9PN2hxZ3g4ZmM2RlFBMFBsbU1y?=
 =?utf-8?B?T0ZHeld3djFuaDNIbmhWM2RhS3cyT2NqdW5qK0tjZ3g2R0Y0K0FFSW15Q3kr?=
 =?utf-8?B?K3dwN1o5QWdWdHhkSEUydFZrSy9FdVZaZEFiRUFwd1JOSjBHU0VNdktYRUxw?=
 =?utf-8?B?VUI2czhrSGI2N2ZWbHpMQ3RySjUzRXhGWEdhdm1Ja2QweWh6NkdtU3QrZEtI?=
 =?utf-8?B?U2ZNN2tRLzM3b05NdzF4VmZjVzlpNVZ4WjlSZWtLNnBzUGNjNVBqZmppR0Jz?=
 =?utf-8?B?ZWlwVVJWdWtHU0FocEhkcUxDZzJnZEMvOWd1TnV3aS8xeUdZd0dWWWVKMVVv?=
 =?utf-8?B?TDZ1ZUJyRnhJdkRjUTNTSFB2dHU1QW14KyszMEllM0ZpWDlhMFIrTWR4WU9D?=
 =?utf-8?B?bk1RTVF2bWtiQnFwVjk3bHQ1QXFrZ0MxMXNzZ1hic29YMUp3K3BPYjVSeUdB?=
 =?utf-8?B?TG03KzdqK2lyakZVRmtNRldoaEdVM0J4dFhNTzJ4ZWx6R3RCa1Q1VzYvaWo3?=
 =?utf-8?B?KzV3WGRKZmVDOHA2c0JZNDFqU2lKZG1DNUhReHJIc2gxMmNEcFduNDg5WHIr?=
 =?utf-8?B?SkFFOTl3VHFoUFlRRHRKQ2ZEZTJuaVJhY01lNmpYbUtIZzVoaVBtOThKTWM4?=
 =?utf-8?B?R2Q0UUd3elJ6Ymg2eVJESVV4VDduVjQ1Zi9USEdDajM0L1pmK3JqRmRuRW5i?=
 =?utf-8?B?M0pBQmJWY3RtLytmSmJiQStKNXJpNmhxbHNHanF0bHVxVENLSjBXWmcxRUJw?=
 =?utf-8?B?VFlCWXlCUmZ6NWN6SDVTK2xQL09uMGc2QXFjcjNudEQrQTZMOTFsODhrOHFl?=
 =?utf-8?B?ZG1ZN2tUalRWUzQrTXdQd2V4WjN2eU05cldDS21YZldJV1N3cVFuemhKT3RG?=
 =?utf-8?B?VE9VaCt4Uzl4OWZnWG5jYWFOeWlKd01PT0lxQ3RVdmNWSStoL2lNdXlkc3BF?=
 =?utf-8?B?by9HVmJ0TXZiNExmcHI0WmF3YTRhMStOWkZsTUhCTWUrdGYzS0dCOXkzZHRn?=
 =?utf-8?B?ZkdQUUlZR3REZlc0Mkd2MFkvOXl6dVJMZHRmYkI4WDBPbThZVFJ0dkhWTUdl?=
 =?utf-8?B?NGRUN2hLTHZqWEdWQjA0WnhjUkdEbnpZZkNJWHEvVzJ6S2xqYTdyQ0tPUVh6?=
 =?utf-8?B?a3RqZmlibURGRkVMeFZrVG9JakxPeTgxbWhkRjNrTjJuMktHNUtsTGN4YmZX?=
 =?utf-8?B?WEtsdFUzSkdpd1VYNUl5WUN5Wnd1UmlvSVZ6L3EvTEU2SjVONWt2UnIzTWxi?=
 =?utf-8?B?cXF1QXE0bHovQTJaK0h1dz09?=
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dnQ0SlgxYmRUTFFtNmJQdGUrSzFDTkdSTS9rTmcwdVZDUHM3a0pjK3lXUGpT?=
 =?utf-8?B?d0NibUxUQ2Y3ZTRONERWUHFtRUduZGk5Q3NPUFRjVjUwdUpVMWxxMDNUSjR3?=
 =?utf-8?B?dUNmdDdtTDVWTS9zbWhRSkFVM01ZL3JTSm1TZVRSNDJPdzk0UXNEOVRxWUQr?=
 =?utf-8?B?MEhjWjdsdWhlV2c5TmFRb213NEdtM0Fzbi9tT05vYUlMVFFMUEhpOHpJVDEz?=
 =?utf-8?B?cTNDZ2QvSC80dlhXKzNQMUpMak5oK3dTNlUyWkhINnpieTdmVlIybFlzME0x?=
 =?utf-8?B?empsUUVKZ0p3QUwxNUpnanEzQ0x2ZGFoUEM4V0w2WVlvaEpGM3NzcjcvdGIr?=
 =?utf-8?B?YXFrNml6QXNLUkZLN1hOMVJvRlVjbzl6WElqTkNkbUJwSHEzWU9pOVczcnBp?=
 =?utf-8?B?T0xvSnBqSGpVdWsvVGR6MEowS2ozTy9CK1hmOTgwQjNIaXlqeWNRbjVXUTJR?=
 =?utf-8?B?MnlrTk1LeWV4ZTBCU3NSbG1yY3J4RjA2SEhaS2xxV0ZIQ1NTeTJCdmNnSGQ5?=
 =?utf-8?B?TW10SkZsOHU0UDZad0FXcThmbHM4L3JmUjBHcjZzSTEvUkd0S3NicncyUFpx?=
 =?utf-8?B?Y1NqbG12RXlVUEU1eFd5RUl5VTZsQS9RYjRsN1prQUllcmNGaTc3UytxclRi?=
 =?utf-8?B?ZDE2WkNjSkY3ZlV4NUJzK2p1YUVDd0pwTlIzbUVVVHg0a1E0Mm55MDdQbTMw?=
 =?utf-8?B?SzE4Qzl2UFM2N0NyR3dldUF5SlhMeVhTNTdQeDRBWVJ0bTk5MTVZRXMySXNh?=
 =?utf-8?B?Wkt2ZUl4MVVHdDc5cWxTM3RtWnY3SzlRUFhJTkl0dGl2YXhKaHArb0NCcGNa?=
 =?utf-8?B?QWFhMlZtNnpaN3BPMnFxQXNIR1pBbHVwdnJlTVdzeFdQaDQyckVxUmRLaUx3?=
 =?utf-8?B?VzhDcXVqa2U0SEdWUFMzM2RZekxzb0JGNmxzWU4zMmhzVTB1anFKYURrRjFR?=
 =?utf-8?B?NVhDVFAwK1NQM3BkOUQ0QmM5NTZ6emZTTDZoRlBXK1MyMTJQN3gyUzd4aURT?=
 =?utf-8?B?UDJsbXFmdVBpeWhKaEwvODlFYmhZdlRJZ2tsbXJIdWhaNjN3UjRUclZ6cGQ3?=
 =?utf-8?B?UDNjeG5DUzBsVFU0WjJyOEl4UFNJczVCME80LzNndW1icHhjUHJhYW9yQ3N4?=
 =?utf-8?B?bFNzTlBNaEwyT3BiM0dzOE80NDdqYmNPNXdZKytwK3o2dCtmZTBKOEN0L29F?=
 =?utf-8?B?V29qeUlSekRLbUVLbnZ4QndLNmNvVmNKQW1lSHM5cTgrVTZYOU5VMENlMlhl?=
 =?utf-8?B?Y2haRkFOV0I4WFlBVnBDRUpmSUVwK2RyTFpkNEMreHVwQ0p0V2NjcmV0WXZ6?=
 =?utf-8?B?ZEh5TmhSQ0hLY2NXL2hmenpMWjczN1IrNHA3ZWNYK2ppSm5HTThITlJsTHhB?=
 =?utf-8?B?ZzVuS3BsbHhDT3JYR3NmQ0FXN3NVWkhsZzN3VEtKbmlwMVVNNkNLaWN3WkJr?=
 =?utf-8?B?Q0tUcWREV0ttdVUwWHZNSmhUTnV3NU1WYzY0Y3ZUZUc0bkNuaTVkdG55QjFO?=
 =?utf-8?B?QmZuajVIZmYram9peEtGWHFTbTJObldaYXZXN0xQVFpqU0dJWVFzU1JCTnRO?=
 =?utf-8?B?RUhQbkF1WXczSWg4dlA4OWdzZmhaSENJZVNoUUNKd2lRb2tGZ2lvemw5SE1Y?=
 =?utf-8?B?cWxrRnUwY3BlKzg5VnI5cmpJWSsrQlF1Z2Z6MDg5Q3Boc1lRYktPc0FuSjhz?=
 =?utf-8?B?dTA5SGFjeUkvSVJyb05oYmR5aE5kNGYxb0pjMXhFOXE1TGpDeE9ET2x3PT0=?=
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 53f86137-03a2-4e91-a162-08dd6943d20a
X-MS-Exchange-CrossTenant-AuthSource: GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2025 13:16:56.6743 (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: DU0P250MB0843
Subject: Re: [FFmpeg-devel] [PATCH 01/77] avcodec/mpegvideo(_enc)?: Mark
 init, close functions as, av_cold
X-BeenThere: ffmpeg-devel@ffmpeg.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org>
List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe>
List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel>
List-Post: <mailto:ffmpeg-devel@ffmpeg.org>
List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help>
List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe>
Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/GV1SPRMB003675F14FD6B01A4B42D87F8FDA2@GV1SPRMB0036.EURP250.PROD.OUTLOOK.COM/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Michael Niedermayer:
> On Wed, Mar 19, 2025 at 10:18:38PM +0100, Andreas Rheinhardt wrote:
>> First part of a patchset; the second part will be sent separately
>> because the complete set crosses the ML thresholds ("Message body is too
>> big: 1731572 bytes with a limit of 1000 KB"). A complete branch can be
> 
>> found here: https://github.com/mkver/FFmpeg/tree/mpvenc
> 
> tested the branch on mips:
> 
> make -k
> CC	libavcodec/mpegvideo_unquantize.o
> src/libavcodec/mpegvideo_unquantize.c: In function ‘ff_mpv_unquantize_init’:
> src/libavcodec/mpegvideo_unquantize.c:272:34: error: ‘s’ is a pointer; did you mean to use ‘->’?
>      ff_mpv_unquantize_init_mips(s. avctx, q_scale_type);
>                                   ^
>                                   ->
> src/libavcodec/mpegvideo_unquantize.c:272:43: warning: passing argument 2 of ‘ff_mpv_unquantize_init_mips’ makes pointer from integer without a cast [-Wint-conversion]
>      ff_mpv_unquantize_init_mips(s. avctx, q_scale_type);
>                                            ^~~~~~~~~~~~
> In file included from src/libavcodec/mpegvideo_unquantize.c:34:0:
> src/libavcodec/mpegvideo_unquantize.h:60:6: note: expected ‘AVCodecContext * {aka struct AVCodecContext *}’ but argument is of type ‘int’
>  void ff_mpv_unquantize_init_mips(MPVUnquantDSPContext *s, AVCodecContext *avctx,
>       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> src/libavcodec/mpegvideo_unquantize.c:272:5: error: too few arguments to function ‘ff_mpv_unquantize_init_mips’
>      ff_mpv_unquantize_init_mips(s. avctx, q_scale_type);
>      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from src/libavcodec/mpegvideo_unquantize.c:34:0:
> src/libavcodec/mpegvideo_unquantize.h:60:6: note: declared here
>  void ff_mpv_unquantize_init_mips(MPVUnquantDSPContext *s, AVCodecContext *avctx,
>       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> make: *** [src/ffbuild/common.mak:81: libavcodec/mpegvideo_unquantize.o] Error 1
> make: Target 'all' not remade because of errors.
> 
> [...]

Thanks. I fixed this as well as a bug in the ppc/altivec unquantize
functions and force pushed my branch. Please replace the last two
patches with the ones attached here (or just look at the github branch).

- Andreas

PS: Both mips as well as arm (neon) always use the inter scantable. This
works because the derived raster_end for inter is always >= the
raster_end for intra. I didn't fix MIPS, because I can't seem to compile
MMI; and I didn't change ARM, because it would entail tinkering with
external assembly.

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/x-patch; charset=UTF-8;
 name="0076-avcodec-mpegvideo-Move-unquantize-functions-into-a-f.patch"
Content-Disposition: attachment;
 filename*0="0076-avcodec-mpegvideo-Move-unquantize-functions-into-a-f.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSAzYzFhMWUzZDRmZTBhMmY1OGE5ODc3YmUwOWRhNTYzNDkwNGQ2MTExIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAyIE1hciAyMDI1IDA1OjQ0OjA5ICswMTAwClN1Ympl
Y3Q6IFtQQVRDSCA3Ni84MV0gYXZjb2RlYy9tcGVndmlkZW86IE1vdmUgdW5xdWFudGl6ZSBmdW5j
dGlvbnMgaW50byBhCiBmaWxlIG9mIHRoZWlyIG93bgoKVGhpcyBpcyBpbiBwcmVwYXJhdGlvbiBm
b3Igb25seSBrZWVwaW5nIHRoZSBhY3R1YWxseSB1c2VkCnVucXVhbnRpemUgZnVuY3Rpb25zIGlu
IE1wZWdFbmNDb250ZXh0LgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRy
ZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9NYWtlZmlsZSAgICAg
ICAgICAgICAgICAgICB8ICAgMSArCiBsaWJhdmNvZGVjL2FybS9tcGVndmlkZW9fYXJtLmMgICAg
ICAgIHwgICAxICsKIGxpYmF2Y29kZWMvbWlwcy9tcGVndmlkZW9faW5pdF9taXBzLmMgfCAgIDEg
KwogbGliYXZjb2RlYy9tcGVndmlkZW8uYyAgICAgICAgICAgICAgICB8IDIzNyArLS0tLS0tLS0t
LS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlby5oICAgICAgICAgICAgICAgIHwgICA1
IC0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuYyAgICAgfCAyNzMgKysrKysrKysr
KysrKysrKysrKysrKysrKysKIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuaCAgICAg
fCAgMzcgKysrKwogbGliYXZjb2RlYy9uZW9uL21wZWd2aWRlby5jICAgICAgICAgICB8ICAgMSAr
CiBsaWJhdmNvZGVjL3BwYy9tcGVndmlkZW9fYWx0aXZlYy5jICAgIHwgICAxICsKIGxpYmF2Y29k
ZWMveDg2L21wZWd2aWRlby5jICAgICAgICAgICAgfCAgIDEgKwogMTAgZmlsZXMgY2hhbmdlZCwg
MzE4IGluc2VydGlvbnMoKyksIDI0MCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBs
aWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJh
dmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmgKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL01h
a2VmaWxlIGIvbGliYXZjb2RlYy9NYWtlZmlsZQppbmRleCAzN2IyMDFlYzRhLi5iMmFiYjNiODYz
IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL01ha2VmaWxlCisrKyBiL2xpYmF2Y29kZWMvTWFrZWZp
bGUKQEAgLTE0Nyw2ICsxNDcsNyBAQCBPQkpTLSQoQ09ORklHX01QRUdBVURJT0hFQURFUikgICAg
ICAgICArPSBtcGVnYXVkaW9kZWNoZWFkZXIubyBtcGVnYXVkaW90YWJzLm8KIE9CSlMtJChDT05G
SUdfTVBFRzRBVURJTykgICAgICAgICAgICAgICs9IG1wZWc0YXVkaW8ubyBtcGVnNGF1ZGlvX3Nh
bXBsZV9yYXRlcy5vCiBPQkpTLSQoQ09ORklHX01QRUdWSURFTykgICAgICAgICAgICAgICArPSBt
cGVndmlkZW8ubyBybC5vIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG1wZWd2aWRlb19tb3Rpb24ubyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtcGVndmlkZW9fdW5xdWFudGl6ZS5vIFwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1wZWd2aWRlb2RhdGEubyBtcGVncGljdHVyZS5vICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b191cHBlcjQubwogT0JK
Uy0kKENPTkZJR19NUEVHVklERU9ERUMpICAgICAgICAgICAgKz0gbXBlZ3ZpZGVvX2RlYy5vIG1w
ZWd1dGlscy5vCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2FybS9tcGVndmlkZW9fYXJtLmMgYi9s
aWJhdmNvZGVjL2FybS9tcGVndmlkZW9fYXJtLmMKaW5kZXggMjhhM2YyY2RkOS4uZTMyNDUxYjU1
NCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVvX2FybS5jCisrKyBiL2xpYmF2
Y29kZWMvYXJtL21wZWd2aWRlb19hcm0uYwpAQCAtMjQsNiArMjQsNyBAQAogI2luY2x1ZGUgImxp
YmF2dXRpbC9hcm0vY3B1LmgiCiAjaW5jbHVkZSAibGliYXZjb2RlYy9hdmNvZGVjLmgiCiAjaW5j
bHVkZSAibGliYXZjb2RlYy9tcGVndmlkZW8uaCIKKyNpbmNsdWRlICJsaWJhdmNvZGVjL21wZWd2
aWRlb191bnF1YW50aXplLmgiCiAjaW5jbHVkZSAibXBlZ3ZpZGVvX2FybS5oIgogI2luY2x1ZGUg
ImFzbS1vZmZzZXRzLmgiCiAKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbWlwcy9tcGVndmlkZW9f
aW5pdF9taXBzLmMgYi9saWJhdmNvZGVjL21pcHMvbXBlZ3ZpZGVvX2luaXRfbWlwcy5jCmluZGV4
IDFkMDJiMGM5MzcuLmE5YWNhZTk0Y2UgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbWlwcy9tcGVn
dmlkZW9faW5pdF9taXBzLmMKKysrIGIvbGliYXZjb2RlYy9taXBzL21wZWd2aWRlb19pbml0X21p
cHMuYwpAQCAtMjAsNiArMjAsNyBAQAogCiAjaW5jbHVkZSAibGliYXZ1dGlsL2F0dHJpYnV0ZXMu
aCIKICNpbmNsdWRlICJsaWJhdnV0aWwvbWlwcy9jcHUuaCIKKyNpbmNsdWRlICJsaWJhdmNvZGVj
L21wZWd2aWRlb191bnF1YW50aXplLmgiCiAjaW5jbHVkZSAiaDI2M2RzcF9taXBzLmgiCiAjaW5j
bHVkZSAibXBlZ3ZpZGVvX21pcHMuaCIKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlk
ZW8uYyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMKaW5kZXggZWZjOWVlMjRkNi4uOWE0MDkzN2Ji
ZCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW8uYworKysgYi9saWJhdmNvZGVjL21w
ZWd2aWRlby5jCkBAIC00MSwyMjEgKzQxLDkgQEAKICNpbmNsdWRlICJtcGVndXRpbHMuaCIKICNp
bmNsdWRlICJtcGVndmlkZW8uaCIKICNpbmNsdWRlICJtcGVndmlkZW9kYXRhLmgiCisjaW5jbHVk
ZSAibXBlZ3ZpZGVvX3VucXVhbnRpemUuaCIKICNpbmNsdWRlICJsaWJhdnV0aWwvcmVmc3RydWN0
LmgiCiAKLXN0YXRpYyB2b2lkIGRjdF91bnF1YW50aXplX21wZWcxX2ludHJhX2MoTXBlZ0VuY0Nv
bnRleHQgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJs
b2NrLCBpbnQgbiwgaW50IHFzY2FsZSkKLXsKLSAgICBpbnQgaSwgbGV2ZWwsIG5Db2VmZnM7Ci0g
ICAgY29uc3QgdWludDE2X3QgKnF1YW50X21hdHJpeDsKLQotICAgIG5Db2VmZnM9IHMtPmJsb2Nr
X2xhc3RfaW5kZXhbbl07Ci0KLSAgICBibG9ja1swXSAqPSBuIDwgNCA/IHMtPnlfZGNfc2NhbGUg
OiBzLT5jX2RjX3NjYWxlOwotICAgIC8qIFhYWDogb25seSBNUEVHLTEgKi8KLSAgICBxdWFudF9t
YXRyaXggPSBzLT5pbnRyYV9tYXRyaXg7Ci0gICAgZm9yKGk9MTtpPD1uQ29lZmZzO2krKykgewot
ICAgICAgICBpbnQgaj0gcy0+aW50cmFfc2NhbnRhYmxlLnBlcm11dGF0ZWRbaV07Ci0gICAgICAg
IGxldmVsID0gYmxvY2tbal07Ci0gICAgICAgIGlmIChsZXZlbCkgewotICAgICAgICAgICAgaWYg
KGxldmVsIDwgMCkgewotICAgICAgICAgICAgICAgIGxldmVsID0gLWxldmVsOwotICAgICAgICAg
ICAgICAgIGxldmVsID0gKGludCkobGV2ZWwgKiBxc2NhbGUgKiBxdWFudF9tYXRyaXhbal0pID4+
IDM7Ci0gICAgICAgICAgICAgICAgbGV2ZWwgPSAobGV2ZWwgLSAxKSB8IDE7Ci0gICAgICAgICAg
ICAgICAgbGV2ZWwgPSAtbGV2ZWw7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
ICAgIGxldmVsID0gKGludCkobGV2ZWwgKiBxc2NhbGUgKiBxdWFudF9tYXRyaXhbal0pID4+IDM7
Ci0gICAgICAgICAgICAgICAgbGV2ZWwgPSAobGV2ZWwgLSAxKSB8IDE7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICBibG9ja1tqXSA9IGxldmVsOwotICAgICAgICB9Ci0gICAgfQotfQotCi1z
dGF0aWMgdm9pZCBkY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRlcl9jKE1wZWdFbmNDb250ZXh0ICpz
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQxNl90ICpibG9jaywgaW50
IG4sIGludCBxc2NhbGUpCi17Ci0gICAgaW50IGksIGxldmVsLCBuQ29lZmZzOwotICAgIGNvbnN0
IHVpbnQxNl90ICpxdWFudF9tYXRyaXg7Ci0KLSAgICBuQ29lZmZzPSBzLT5ibG9ja19sYXN0X2lu
ZGV4W25dOwotCi0gICAgcXVhbnRfbWF0cml4ID0gcy0+aW50ZXJfbWF0cml4OwotICAgIGZvcihp
PTA7IGk8PW5Db2VmZnM7IGkrKykgewotICAgICAgICBpbnQgaj0gcy0+aW50cmFfc2NhbnRhYmxl
LnBlcm11dGF0ZWRbaV07Ci0gICAgICAgIGxldmVsID0gYmxvY2tbal07Ci0gICAgICAgIGlmIChs
ZXZlbCkgewotICAgICAgICAgICAgaWYgKGxldmVsIDwgMCkgewotICAgICAgICAgICAgICAgIGxl
dmVsID0gLWxldmVsOwotICAgICAgICAgICAgICAgIGxldmVsID0gKCgobGV2ZWwgPDwgMSkgKyAx
KSAqIHFzY2FsZSAqCi0gICAgICAgICAgICAgICAgICAgICAgICAgKChpbnQpIChxdWFudF9tYXRy
aXhbal0pKSkgPj4gNDsKLSAgICAgICAgICAgICAgICBsZXZlbCA9IChsZXZlbCAtIDEpIHwgMTsK
LSAgICAgICAgICAgICAgICBsZXZlbCA9IC1sZXZlbDsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0g
ICAgICAgICAgICAgICAgbGV2ZWwgPSAoKChsZXZlbCA8PCAxKSArIDEpICogcXNjYWxlICoKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAoKGludCkgKHF1YW50X21hdHJpeFtqXSkpKSA+PiA0Owot
ICAgICAgICAgICAgICAgIGxldmVsID0gKGxldmVsIC0gMSkgfCAxOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgYmxvY2tbal0gPSBsZXZlbDsKLSAgICAgICAgfQotICAgIH0KLX0KLQotc3Rh
dGljIHZvaWQgZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmFfYyhNcGVnRW5jQ29udGV4dCAqcywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2ssIGludCBu
LCBpbnQgcXNjYWxlKQotewotICAgIGludCBpLCBsZXZlbCwgbkNvZWZmczsKLSAgICBjb25zdCB1
aW50MTZfdCAqcXVhbnRfbWF0cml4OwotCi0gICAgaWYgKHMtPnFfc2NhbGVfdHlwZSkgcXNjYWxl
ID0gZmZfbXBlZzJfbm9uX2xpbmVhcl9xc2NhbGVbcXNjYWxlXTsKLSAgICBlbHNlICAgICAgICAg
ICAgICAgICBxc2NhbGUgPDw9IDE7Ci0KLSAgICBuQ29lZmZzPSBzLT5ibG9ja19sYXN0X2luZGV4
W25dOwotCi0gICAgYmxvY2tbMF0gKj0gbiA8IDQgPyBzLT55X2RjX3NjYWxlIDogcy0+Y19kY19z
Y2FsZTsKLSAgICBxdWFudF9tYXRyaXggPSBzLT5pbnRyYV9tYXRyaXg7Ci0gICAgZm9yKGk9MTtp
PD1uQ29lZmZzO2krKykgewotICAgICAgICBpbnQgaj0gcy0+aW50cmFfc2NhbnRhYmxlLnBlcm11
dGF0ZWRbaV07Ci0gICAgICAgIGxldmVsID0gYmxvY2tbal07Ci0gICAgICAgIGlmIChsZXZlbCkg
ewotICAgICAgICAgICAgaWYgKGxldmVsIDwgMCkgewotICAgICAgICAgICAgICAgIGxldmVsID0g
LWxldmVsOwotICAgICAgICAgICAgICAgIGxldmVsID0gKGludCkobGV2ZWwgKiBxc2NhbGUgKiBx
dWFudF9tYXRyaXhbal0pID4+IDQ7Ci0gICAgICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7Ci0g
ICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGxldmVsID0gKGludCkobGV2ZWwg
KiBxc2NhbGUgKiBxdWFudF9tYXRyaXhbal0pID4+IDQ7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICBibG9ja1tqXSA9IGxldmVsOwotICAgICAgICB9Ci0gICAgfQotfQotCi1zdGF0aWMgdm9p
ZCBkY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRyYV9iaXRleGFjdChNcGVnRW5jQ29udGV4dCAqcywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2ssIGludCBu
LCBpbnQgcXNjYWxlKQotewotICAgIGludCBpLCBsZXZlbCwgbkNvZWZmczsKLSAgICBjb25zdCB1
aW50MTZfdCAqcXVhbnRfbWF0cml4OwotICAgIGludCBzdW09LTE7Ci0KLSAgICBpZiAocy0+cV9z
Y2FsZV90eXBlKSBxc2NhbGUgPSBmZl9tcGVnMl9ub25fbGluZWFyX3FzY2FsZVtxc2NhbGVdOwot
ICAgIGVsc2UgICAgICAgICAgICAgICAgIHFzY2FsZSA8PD0gMTsKLQotICAgIG5Db2VmZnM9IHMt
PmJsb2NrX2xhc3RfaW5kZXhbbl07Ci0KLSAgICBibG9ja1swXSAqPSBuIDwgNCA/IHMtPnlfZGNf
c2NhbGUgOiBzLT5jX2RjX3NjYWxlOwotICAgIHN1bSArPSBibG9ja1swXTsKLSAgICBxdWFudF9t
YXRyaXggPSBzLT5pbnRyYV9tYXRyaXg7Ci0gICAgZm9yKGk9MTtpPD1uQ29lZmZzO2krKykgewot
ICAgICAgICBpbnQgaj0gcy0+aW50cmFfc2NhbnRhYmxlLnBlcm11dGF0ZWRbaV07Ci0gICAgICAg
IGxldmVsID0gYmxvY2tbal07Ci0gICAgICAgIGlmIChsZXZlbCkgewotICAgICAgICAgICAgaWYg
KGxldmVsIDwgMCkgewotICAgICAgICAgICAgICAgIGxldmVsID0gLWxldmVsOwotICAgICAgICAg
ICAgICAgIGxldmVsID0gKGludCkobGV2ZWwgKiBxc2NhbGUgKiBxdWFudF9tYXRyaXhbal0pID4+
IDQ7Ci0gICAgICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7Ci0gICAgICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgICAgICAgIGxldmVsID0gKGludCkobGV2ZWwgKiBxc2NhbGUgKiBxdWFudF9t
YXRyaXhbal0pID4+IDQ7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBibG9ja1tqXSA9IGxl
dmVsOwotICAgICAgICAgICAgc3VtKz1sZXZlbDsKLSAgICAgICAgfQotICAgIH0KLSAgICBibG9j
a1s2M11ePXN1bSYxOwotfQotCi1zdGF0aWMgdm9pZCBkY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRl
cl9jKE1wZWdFbmNDb250ZXh0ICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnQxNl90ICpibG9jaywgaW50IG4sIGludCBxc2NhbGUpCi17Ci0gICAgaW50IGksIGxldmVs
LCBuQ29lZmZzOwotICAgIGNvbnN0IHVpbnQxNl90ICpxdWFudF9tYXRyaXg7Ci0gICAgaW50IHN1
bT0tMTsKLQotICAgIGlmIChzLT5xX3NjYWxlX3R5cGUpIHFzY2FsZSA9IGZmX21wZWcyX25vbl9s
aW5lYXJfcXNjYWxlW3FzY2FsZV07Ci0gICAgZWxzZSAgICAgICAgICAgICAgICAgcXNjYWxlIDw8
PSAxOwotCi0gICAgbkNvZWZmcz0gcy0+YmxvY2tfbGFzdF9pbmRleFtuXTsKLQotICAgIHF1YW50
X21hdHJpeCA9IHMtPmludGVyX21hdHJpeDsKLSAgICBmb3IoaT0wOyBpPD1uQ29lZmZzOyBpKysp
IHsKLSAgICAgICAgaW50IGo9IHMtPmludHJhX3NjYW50YWJsZS5wZXJtdXRhdGVkW2ldOwotICAg
ICAgICBsZXZlbCA9IGJsb2NrW2pdOwotICAgICAgICBpZiAobGV2ZWwpIHsKLSAgICAgICAgICAg
IGlmIChsZXZlbCA8IDApIHsKLSAgICAgICAgICAgICAgICBsZXZlbCA9IC1sZXZlbDsKLSAgICAg
ICAgICAgICAgICBsZXZlbCA9ICgoKGxldmVsIDw8IDEpICsgMSkgKiBxc2NhbGUgKgotICAgICAg
ICAgICAgICAgICAgICAgICAgICgoaW50KSAocXVhbnRfbWF0cml4W2pdKSkpID4+IDU7Ci0gICAg
ICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgICAgICAgIGxldmVsID0gKCgobGV2ZWwgPDwgMSkgKyAxKSAqIHFzY2FsZSAqCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgKChpbnQpIChxdWFudF9tYXRyaXhbal0pKSkgPj4gNTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIGJsb2NrW2pdID0gbGV2ZWw7Ci0gICAgICAgICAgICBzdW0r
PWxldmVsOwotICAgICAgICB9Ci0gICAgfQotICAgIGJsb2NrWzYzXV49c3VtJjE7Ci19Ci0KLXN0
YXRpYyB2b2lkIGRjdF91bnF1YW50aXplX2gyNjNfaW50cmFfYyhNcGVnRW5jQ29udGV4dCAqcywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQxNl90ICpibG9jaywgaW50IG4s
IGludCBxc2NhbGUpCi17Ci0gICAgaW50IGksIGxldmVsLCBxbXVsLCBxYWRkOwotICAgIGludCBu
Q29lZmZzOwotCi0gICAgYXZfYXNzZXJ0MihzLT5ibG9ja19sYXN0X2luZGV4W25dPj0wIHx8IHMt
PmgyNjNfYWljKTsKLQotICAgIHFtdWwgPSBxc2NhbGUgPDwgMTsKLQotICAgIGlmICghcy0+aDI2
M19haWMpIHsKLSAgICAgICAgYmxvY2tbMF0gKj0gbiA8IDQgPyBzLT55X2RjX3NjYWxlIDogcy0+
Y19kY19zY2FsZTsKLSAgICAgICAgcWFkZCA9IChxc2NhbGUgLSAxKSB8IDE7Ci0gICAgfWVsc2V7
Ci0gICAgICAgIHFhZGQgPSAwOwotICAgIH0KLSAgICBpZihzLT5hY19wcmVkKQotICAgICAgICBu
Q29lZmZzPTYzOwotICAgIGVsc2UKLSAgICAgICAgbkNvZWZmcz0gcy0+aW50cmFfc2NhbnRhYmxl
LnJhc3Rlcl9lbmRbIHMtPmJsb2NrX2xhc3RfaW5kZXhbbl0gXTsKLQotICAgIGZvcihpPTE7IGk8
PW5Db2VmZnM7IGkrKykgewotICAgICAgICBsZXZlbCA9IGJsb2NrW2ldOwotICAgICAgICBpZiAo
bGV2ZWwpIHsKLSAgICAgICAgICAgIGlmIChsZXZlbCA8IDApIHsKLSAgICAgICAgICAgICAgICBs
ZXZlbCA9IGxldmVsICogcW11bCAtIHFhZGQ7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgICAgICAgIGxldmVsID0gbGV2ZWwgKiBxbXVsICsgcWFkZDsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIGJsb2NrW2ldID0gbGV2ZWw7Ci0gICAgICAgIH0KLSAgICB9Ci19Ci0KLXN0YXRp
YyB2b2lkIGRjdF91bnF1YW50aXplX2gyNjNfaW50ZXJfYyhNcGVnRW5jQ29udGV4dCAqcywKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQxNl90ICpibG9jaywgaW50IG4sIGlu
dCBxc2NhbGUpCi17Ci0gICAgaW50IGksIGxldmVsLCBxbXVsLCBxYWRkOwotICAgIGludCBuQ29l
ZmZzOwotCi0gICAgYXZfYXNzZXJ0MihzLT5ibG9ja19sYXN0X2luZGV4W25dPj0wKTsKLQotICAg
IHFhZGQgPSAocXNjYWxlIC0gMSkgfCAxOwotICAgIHFtdWwgPSBxc2NhbGUgPDwgMTsKLQotICAg
IG5Db2VmZnM9IHMtPmludGVyX3NjYW50YWJsZS5yYXN0ZXJfZW5kWyBzLT5ibG9ja19sYXN0X2lu
ZGV4W25dIF07Ci0KLSAgICBmb3IoaT0wOyBpPD1uQ29lZmZzOyBpKyspIHsKLSAgICAgICAgbGV2
ZWwgPSBibG9ja1tpXTsKLSAgICAgICAgaWYgKGxldmVsKSB7Ci0gICAgICAgICAgICBpZiAobGV2
ZWwgPCAwKSB7Ci0gICAgICAgICAgICAgICAgbGV2ZWwgPSBsZXZlbCAqIHFtdWwgLSBxYWRkOwot
ICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBsZXZlbCA9IGxldmVsICogcW11
bCArIHFhZGQ7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBibG9ja1tpXSA9IGxldmVsOwot
ICAgICAgICB9Ci0gICAgfQotfQotCiAKIHN0YXRpYyB2b2lkIGdyYXkxNih1aW50OF90ICpkc3Qs
IGNvbnN0IHVpbnQ4X3QgKnNyYywgcHRyZGlmZl90IGxpbmVzaXplLCBpbnQgaCkKIHsKQEAgLTMy
NSwyOCArMTEzLDcgQEAgYXZfY29sZCB2b2lkIGZmX21wdl9pZGN0X2luaXQoTXBlZ0VuY0NvbnRl
eHQgKnMpCiAgICAgZmZfcGVybXV0ZV9zY2FudGFibGUocy0+cGVybXV0YXRlZF9pbnRyYV92X3Nj
YW50YWJsZSwgZmZfYWx0ZXJuYXRlX3ZlcnRpY2FsX3NjYW4sCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgcy0+aWRzcC5pZGN0X3Blcm11dGF0aW9uKTsKIAotICAgIHMtPmRjdF91bnF1YW50aXpl
X2gyNjNfaW50cmEgID0gZGN0X3VucXVhbnRpemVfaDI2M19pbnRyYV9jOwotICAgIHMtPmRjdF91
bnF1YW50aXplX2gyNjNfaW50ZXIgID0gZGN0X3VucXVhbnRpemVfaDI2M19pbnRlcl9jOwotICAg
IHMtPmRjdF91bnF1YW50aXplX21wZWcxX2ludHJhID0gZGN0X3VucXVhbnRpemVfbXBlZzFfaW50
cmFfYzsKLSAgICBzLT5kY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRlciA9IGRjdF91bnF1YW50aXpl
X21wZWcxX2ludGVyX2M7Ci0gICAgcy0+ZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmEgPSBkY3Rf
dW5xdWFudGl6ZV9tcGVnMl9pbnRyYV9jOwotICAgIGlmIChzLT5hdmN0eC0+ZmxhZ3MgJiBBVl9D
T0RFQ19GTEFHX0JJVEVYQUNUKQotICAgICAgICBzLT5kY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRy
YSA9IGRjdF91bnF1YW50aXplX21wZWcyX2ludHJhX2JpdGV4YWN0OwotICAgIHMtPmRjdF91bnF1
YW50aXplX21wZWcyX2ludGVyID0gZGN0X3VucXVhbnRpemVfbXBlZzJfaW50ZXJfYzsKLQotI2lm
IEhBVkVfSU5UUklOU0lDU19ORU9OCi0gICAgZmZfbXB2X2NvbW1vbl9pbml0X25lb24ocyk7Ci0j
ZW5kaWYKLQotI2lmIEFSQ0hfQVJNCi0gICAgZmZfbXB2X2NvbW1vbl9pbml0X2FybShzKTsKLSNl
bGlmIEFSQ0hfUFBDCi0gICAgZmZfbXB2X2NvbW1vbl9pbml0X3BwYyhzKTsKLSNlbGlmIEFSQ0hf
WDg2Ci0gICAgZmZfbXB2X2NvbW1vbl9pbml0X3g4NihzKTsKLSNlbGlmIEFSQ0hfTUlQUwotICAg
IGZmX21wdl9jb21tb25faW5pdF9taXBzKHMpOwotI2VuZGlmCisgICAgZmZfbXB2X3VucXVhbnRp
emVfaW5pdChzKTsKIH0KIAogc3RhdGljIGF2X2NvbGQgaW50IGluaXRfZHVwbGljYXRlX2NvbnRl
eHQoTXBlZ0VuY0NvbnRleHQgKnMpCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5o
IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCAxZGNmY2E2YjAzLi43Mzc5MTYwMTU5IDEw
MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp
ZGVvLmgKQEAgLTM2MiwxMSArMzYyLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQg
ewogdm9pZCBmZl9tcHZfY29tbW9uX2RlZmF1bHRzKE1wZWdFbmNDb250ZXh0ICpzKTsKIAogaW50
IGZmX21wdl9jb21tb25faW5pdChNcGVnRW5jQ29udGV4dCAqcyk7Ci12b2lkIGZmX21wdl9jb21t
b25faW5pdF9hcm0oTXBlZ0VuY0NvbnRleHQgKnMpOwotdm9pZCBmZl9tcHZfY29tbW9uX2luaXRf
bmVvbihNcGVnRW5jQ29udGV4dCAqcyk7Ci12b2lkIGZmX21wdl9jb21tb25faW5pdF9wcGMoTXBl
Z0VuY0NvbnRleHQgKnMpOwotdm9pZCBmZl9tcHZfY29tbW9uX2luaXRfeDg2KE1wZWdFbmNDb250
ZXh0ICpzKTsKLXZvaWQgZmZfbXB2X2NvbW1vbl9pbml0X21pcHMoTXBlZ0VuY0NvbnRleHQgKnMp
OwogLyoqCiAgKiBJbml0aWFsaXplIGFuIE1wZWdFbmNDb250ZXh0J3MgdGhyZWFkIGNvbnRleHRz
LiBQcmVzdW1lcyB0aGF0CiAgKiBzbGljZV9jb250ZXh0X2NvdW50IGlzIGFscmVhZHkgc2V0IGFu
ZCB0aGF0IGFsbCB0aGUgZmllbGRzCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb191
bnF1YW50aXplLmMgYi9saWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uMTJiYWNkZjQyNAotLS0gL2Rldi9udWxsCisr
KyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuYwpAQCAtMCwwICsxLDI3MyBAQAor
LyoKKyAqIFVucXVhbnRpemUgZnVuY3Rpb25zIGZvciBtcGVndmlkZW8KKyAqIENvcHlyaWdodCAo
YykgMjAwMCwyMDAxIEZhYnJpY2UgQmVsbGFyZAorICogQ29weXJpZ2h0IChjKSAyMDAyLTIwMDQg
TWljaGFlbCBOaWVkZXJtYXllciA8bWljaGFlbG5pQGdteC5hdD4KKyAqCisgKiA0TVYgJiBocSAm
IEItZnJhbWUgZW5jb2Rpbmcgc3R1ZmYgYnkgTWljaGFlbCBOaWVkZXJtYXllciA8bWljaGFlbG5p
QGdteC5hdD4KKyAqCisgKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBGRm1wZWcuCisgKgorICogRkZt
cGVnIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICog
bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp
YworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0
aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBGRm1wZWcgaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisg
KiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggRkZtcGVnOyBpZiBub3QsIHdyaXRlIHRv
IHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl
ZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BIDAyMTEwLTEzMDEgVVNBCisgKi8KKworI2luY2x1
ZGUgPHN0ZGludC5oPgorCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlICJsaWJhdnV0
aWwvYXR0cmlidXRlcy5oIgorI2luY2x1ZGUgImxpYmF2dXRpbC9hdmFzc2VydC5oIgorI2luY2x1
ZGUgImF2Y29kZWMuaCIKKyNpbmNsdWRlICJtcGVndmlkZW8uaCIKKyNpbmNsdWRlICJtcGVndmlk
ZW9kYXRhLmgiCisjaW5jbHVkZSAibXBlZ3ZpZGVvX3VucXVhbnRpemUuaCIKKworc3RhdGljIHZv
aWQgZGN0X3VucXVhbnRpemVfbXBlZzFfaW50cmFfYyhNcGVnRW5jQ29udGV4dCAqcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2ssIGludCBuLCBpbnQg
cXNjYWxlKQoreworICAgIGludCBpLCBsZXZlbCwgbkNvZWZmczsKKyAgICBjb25zdCB1aW50MTZf
dCAqcXVhbnRfbWF0cml4OworCisgICAgbkNvZWZmcz0gcy0+YmxvY2tfbGFzdF9pbmRleFtuXTsK
KworICAgIGJsb2NrWzBdICo9IG4gPCA0ID8gcy0+eV9kY19zY2FsZSA6IHMtPmNfZGNfc2NhbGU7
CisgICAgLyogWFhYOiBvbmx5IE1QRUctMSAqLworICAgIHF1YW50X21hdHJpeCA9IHMtPmludHJh
X21hdHJpeDsKKyAgICBmb3IoaT0xO2k8PW5Db2VmZnM7aSsrKSB7CisgICAgICAgIGludCBqPSBz
LT5pbnRyYV9zY2FudGFibGUucGVybXV0YXRlZFtpXTsKKyAgICAgICAgbGV2ZWwgPSBibG9ja1tq
XTsKKyAgICAgICAgaWYgKGxldmVsKSB7CisgICAgICAgICAgICBpZiAobGV2ZWwgPCAwKSB7Cisg
ICAgICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7CisgICAgICAgICAgICAgICAgbGV2ZWwgPSAo
aW50KShsZXZlbCAqIHFzY2FsZSAqIHF1YW50X21hdHJpeFtqXSkgPj4gMzsKKyAgICAgICAgICAg
ICAgICBsZXZlbCA9IChsZXZlbCAtIDEpIHwgMTsKKyAgICAgICAgICAgICAgICBsZXZlbCA9IC1s
ZXZlbDsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbGV2ZWwgPSAoaW50
KShsZXZlbCAqIHFzY2FsZSAqIHF1YW50X21hdHJpeFtqXSkgPj4gMzsKKyAgICAgICAgICAgICAg
ICBsZXZlbCA9IChsZXZlbCAtIDEpIHwgMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJs
b2NrW2pdID0gbGV2ZWw7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N0YXRpYyB2b2lkIGRjdF91
bnF1YW50aXplX21wZWcxX2ludGVyX2MoTXBlZ0VuY0NvbnRleHQgKnMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrLCBpbnQgbiwgaW50IHFzY2FsZSkK
K3sKKyAgICBpbnQgaSwgbGV2ZWwsIG5Db2VmZnM7CisgICAgY29uc3QgdWludDE2X3QgKnF1YW50
X21hdHJpeDsKKworICAgIG5Db2VmZnM9IHMtPmJsb2NrX2xhc3RfaW5kZXhbbl07CisKKyAgICBx
dWFudF9tYXRyaXggPSBzLT5pbnRlcl9tYXRyaXg7CisgICAgZm9yKGk9MDsgaTw9bkNvZWZmczsg
aSsrKSB7CisgICAgICAgIGludCBqPSBzLT5pbnRyYV9zY2FudGFibGUucGVybXV0YXRlZFtpXTsK
KyAgICAgICAgbGV2ZWwgPSBibG9ja1tqXTsKKyAgICAgICAgaWYgKGxldmVsKSB7CisgICAgICAg
ICAgICBpZiAobGV2ZWwgPCAwKSB7CisgICAgICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7Cisg
ICAgICAgICAgICAgICAgbGV2ZWwgPSAoKChsZXZlbCA8PCAxKSArIDEpICogcXNjYWxlICoKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAoKGludCkgKHF1YW50X21hdHJpeFtqXSkpKSA+PiA0Owor
ICAgICAgICAgICAgICAgIGxldmVsID0gKGxldmVsIC0gMSkgfCAxOworICAgICAgICAgICAgICAg
IGxldmVsID0gLWxldmVsOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBs
ZXZlbCA9ICgoKGxldmVsIDw8IDEpICsgMSkgKiBxc2NhbGUgKgorICAgICAgICAgICAgICAgICAg
ICAgICAgICgoaW50KSAocXVhbnRfbWF0cml4W2pdKSkpID4+IDQ7CisgICAgICAgICAgICAgICAg
bGV2ZWwgPSAobGV2ZWwgLSAxKSB8IDE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBibG9j
a1tqXSA9IGxldmVsOworICAgICAgICB9CisgICAgfQorfQorCitzdGF0aWMgdm9pZCBkY3RfdW5x
dWFudGl6ZV9tcGVnMl9pbnRyYV9jKE1wZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQxNl90ICpibG9jaywgaW50IG4sIGludCBxc2NhbGUpCit7
CisgICAgaW50IGksIGxldmVsLCBuQ29lZmZzOworICAgIGNvbnN0IHVpbnQxNl90ICpxdWFudF9t
YXRyaXg7CisKKyAgICBpZiAocy0+cV9zY2FsZV90eXBlKSBxc2NhbGUgPSBmZl9tcGVnMl9ub25f
bGluZWFyX3FzY2FsZVtxc2NhbGVdOworICAgIGVsc2UgICAgICAgICAgICAgICAgIHFzY2FsZSA8
PD0gMTsKKworICAgIG5Db2VmZnM9IHMtPmJsb2NrX2xhc3RfaW5kZXhbbl07CisKKyAgICBibG9j
a1swXSAqPSBuIDwgNCA/IHMtPnlfZGNfc2NhbGUgOiBzLT5jX2RjX3NjYWxlOworICAgIHF1YW50
X21hdHJpeCA9IHMtPmludHJhX21hdHJpeDsKKyAgICBmb3IoaT0xO2k8PW5Db2VmZnM7aSsrKSB7
CisgICAgICAgIGludCBqPSBzLT5pbnRyYV9zY2FudGFibGUucGVybXV0YXRlZFtpXTsKKyAgICAg
ICAgbGV2ZWwgPSBibG9ja1tqXTsKKyAgICAgICAgaWYgKGxldmVsKSB7CisgICAgICAgICAgICBp
ZiAobGV2ZWwgPCAwKSB7CisgICAgICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7CisgICAgICAg
ICAgICAgICAgbGV2ZWwgPSAoaW50KShsZXZlbCAqIHFzY2FsZSAqIHF1YW50X21hdHJpeFtqXSkg
Pj4gNDsKKyAgICAgICAgICAgICAgICBsZXZlbCA9IC1sZXZlbDsKKyAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgbGV2ZWwgPSAoaW50KShsZXZlbCAqIHFzY2FsZSAqIHF1YW50
X21hdHJpeFtqXSkgPj4gNDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJsb2NrW2pdID0g
bGV2ZWw7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N0YXRpYyB2b2lkIGRjdF91bnF1YW50aXpl
X21wZWcyX2ludHJhX2JpdGV4YWN0KE1wZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQxNl90ICpibG9jaywgaW50IG4sIGludCBxc2NhbGUpCit7
CisgICAgaW50IGksIGxldmVsLCBuQ29lZmZzOworICAgIGNvbnN0IHVpbnQxNl90ICpxdWFudF9t
YXRyaXg7CisgICAgaW50IHN1bT0tMTsKKworICAgIGlmIChzLT5xX3NjYWxlX3R5cGUpIHFzY2Fs
ZSA9IGZmX21wZWcyX25vbl9saW5lYXJfcXNjYWxlW3FzY2FsZV07CisgICAgZWxzZSAgICAgICAg
ICAgICAgICAgcXNjYWxlIDw8PSAxOworCisgICAgbkNvZWZmcz0gcy0+YmxvY2tfbGFzdF9pbmRl
eFtuXTsKKworICAgIGJsb2NrWzBdICo9IG4gPCA0ID8gcy0+eV9kY19zY2FsZSA6IHMtPmNfZGNf
c2NhbGU7CisgICAgc3VtICs9IGJsb2NrWzBdOworICAgIHF1YW50X21hdHJpeCA9IHMtPmludHJh
X21hdHJpeDsKKyAgICBmb3IoaT0xO2k8PW5Db2VmZnM7aSsrKSB7CisgICAgICAgIGludCBqPSBz
LT5pbnRyYV9zY2FudGFibGUucGVybXV0YXRlZFtpXTsKKyAgICAgICAgbGV2ZWwgPSBibG9ja1tq
XTsKKyAgICAgICAgaWYgKGxldmVsKSB7CisgICAgICAgICAgICBpZiAobGV2ZWwgPCAwKSB7Cisg
ICAgICAgICAgICAgICAgbGV2ZWwgPSAtbGV2ZWw7CisgICAgICAgICAgICAgICAgbGV2ZWwgPSAo
aW50KShsZXZlbCAqIHFzY2FsZSAqIHF1YW50X21hdHJpeFtqXSkgPj4gNDsKKyAgICAgICAgICAg
ICAgICBsZXZlbCA9IC1sZXZlbDsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAg
ICAgbGV2ZWwgPSAoaW50KShsZXZlbCAqIHFzY2FsZSAqIHF1YW50X21hdHJpeFtqXSkgPj4gNDsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJsb2NrW2pdID0gbGV2ZWw7CisgICAgICAgICAg
ICBzdW0rPWxldmVsOworICAgICAgICB9CisgICAgfQorICAgIGJsb2NrWzYzXV49c3VtJjE7Cit9
CisKK3N0YXRpYyB2b2lkIGRjdF91bnF1YW50aXplX21wZWcyX2ludGVyX2MoTXBlZ0VuY0NvbnRl
eHQgKnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2Nr
LCBpbnQgbiwgaW50IHFzY2FsZSkKK3sKKyAgICBpbnQgaSwgbGV2ZWwsIG5Db2VmZnM7CisgICAg
Y29uc3QgdWludDE2X3QgKnF1YW50X21hdHJpeDsKKyAgICBpbnQgc3VtPS0xOworCisgICAgaWYg
KHMtPnFfc2NhbGVfdHlwZSkgcXNjYWxlID0gZmZfbXBlZzJfbm9uX2xpbmVhcl9xc2NhbGVbcXNj
YWxlXTsKKyAgICBlbHNlICAgICAgICAgICAgICAgICBxc2NhbGUgPDw9IDE7CisKKyAgICBuQ29l
ZmZzPSBzLT5ibG9ja19sYXN0X2luZGV4W25dOworCisgICAgcXVhbnRfbWF0cml4ID0gcy0+aW50
ZXJfbWF0cml4OworICAgIGZvcihpPTA7IGk8PW5Db2VmZnM7IGkrKykgeworICAgICAgICBpbnQg
aj0gcy0+aW50cmFfc2NhbnRhYmxlLnBlcm11dGF0ZWRbaV07CisgICAgICAgIGxldmVsID0gYmxv
Y2tbal07CisgICAgICAgIGlmIChsZXZlbCkgeworICAgICAgICAgICAgaWYgKGxldmVsIDwgMCkg
eworICAgICAgICAgICAgICAgIGxldmVsID0gLWxldmVsOworICAgICAgICAgICAgICAgIGxldmVs
ID0gKCgobGV2ZWwgPDwgMSkgKyAxKSAqIHFzY2FsZSAqCisgICAgICAgICAgICAgICAgICAgICAg
ICAgKChpbnQpIChxdWFudF9tYXRyaXhbal0pKSkgPj4gNTsKKyAgICAgICAgICAgICAgICBsZXZl
bCA9IC1sZXZlbDsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbGV2ZWwg
PSAoKChsZXZlbCA8PCAxKSArIDEpICogcXNjYWxlICoKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAoKGludCkgKHF1YW50X21hdHJpeFtqXSkpKSA+PiA1OworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgYmxvY2tbal0gPSBsZXZlbDsKKyAgICAgICAgICAgIHN1bSs9bGV2ZWw7CisgICAgICAg
IH0KKyAgICB9CisgICAgYmxvY2tbNjNdXj1zdW0mMTsKK30KKworc3RhdGljIHZvaWQgZGN0X3Vu
cXVhbnRpemVfaDI2M19pbnRyYV9jKE1wZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrLCBpbnQgbiwgaW50IHFzY2FsZSkKK3sK
KyAgICBpbnQgaSwgbGV2ZWwsIHFtdWwsIHFhZGQ7CisgICAgaW50IG5Db2VmZnM7CisKKyAgICBh
dl9hc3NlcnQyKHMtPmJsb2NrX2xhc3RfaW5kZXhbbl0+PTAgfHwgcy0+aDI2M19haWMpOworCisg
ICAgcW11bCA9IHFzY2FsZSA8PCAxOworCisgICAgaWYgKCFzLT5oMjYzX2FpYykgeworICAgICAg
ICBibG9ja1swXSAqPSBuIDwgNCA/IHMtPnlfZGNfc2NhbGUgOiBzLT5jX2RjX3NjYWxlOworICAg
ICAgICBxYWRkID0gKHFzY2FsZSAtIDEpIHwgMTsKKyAgICB9ZWxzZXsKKyAgICAgICAgcWFkZCA9
IDA7CisgICAgfQorICAgIGlmKHMtPmFjX3ByZWQpCisgICAgICAgIG5Db2VmZnM9NjM7CisgICAg
ZWxzZQorICAgICAgICBuQ29lZmZzPSBzLT5pbnRyYV9zY2FudGFibGUucmFzdGVyX2VuZFsgcy0+
YmxvY2tfbGFzdF9pbmRleFtuXSBdOworCisgICAgZm9yKGk9MTsgaTw9bkNvZWZmczsgaSsrKSB7
CisgICAgICAgIGxldmVsID0gYmxvY2tbaV07CisgICAgICAgIGlmIChsZXZlbCkgeworICAgICAg
ICAgICAgaWYgKGxldmVsIDwgMCkgeworICAgICAgICAgICAgICAgIGxldmVsID0gbGV2ZWwgKiBx
bXVsIC0gcWFkZDsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbGV2ZWwg
PSBsZXZlbCAqIHFtdWwgKyBxYWRkOworICAgICAgICAgICAgfQorICAgICAgICAgICAgYmxvY2tb
aV0gPSBsZXZlbDsKKyAgICAgICAgfQorICAgIH0KK30KKworc3RhdGljIHZvaWQgZGN0X3VucXVh
bnRpemVfaDI2M19pbnRlcl9jKE1wZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrLCBpbnQgbiwgaW50IHFzY2FsZSkKK3sKKyAg
ICBpbnQgaSwgbGV2ZWwsIHFtdWwsIHFhZGQ7CisgICAgaW50IG5Db2VmZnM7CisKKyAgICBhdl9h
c3NlcnQyKHMtPmJsb2NrX2xhc3RfaW5kZXhbbl0+PTApOworCisgICAgcWFkZCA9IChxc2NhbGUg
LSAxKSB8IDE7CisgICAgcW11bCA9IHFzY2FsZSA8PCAxOworCisgICAgbkNvZWZmcz0gcy0+aW50
ZXJfc2NhbnRhYmxlLnJhc3Rlcl9lbmRbIHMtPmJsb2NrX2xhc3RfaW5kZXhbbl0gXTsKKworICAg
IGZvcihpPTA7IGk8PW5Db2VmZnM7IGkrKykgeworICAgICAgICBsZXZlbCA9IGJsb2NrW2ldOwor
ICAgICAgICBpZiAobGV2ZWwpIHsKKyAgICAgICAgICAgIGlmIChsZXZlbCA8IDApIHsKKyAgICAg
ICAgICAgICAgICBsZXZlbCA9IGxldmVsICogcW11bCAtIHFhZGQ7CisgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgIGxldmVsID0gbGV2ZWwgKiBxbXVsICsgcWFkZDsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIGJsb2NrW2ldID0gbGV2ZWw7CisgICAgICAgIH0KKyAgICB9
Cit9CisKK2F2X2NvbGQgdm9pZCBmZl9tcHZfdW5xdWFudGl6ZV9pbml0KE1wZWdFbmNDb250ZXh0
ICpzKQoreworICAgIHMtPmRjdF91bnF1YW50aXplX2gyNjNfaW50cmEgID0gZGN0X3VucXVhbnRp
emVfaDI2M19pbnRyYV9jOworICAgIHMtPmRjdF91bnF1YW50aXplX2gyNjNfaW50ZXIgID0gZGN0
X3VucXVhbnRpemVfaDI2M19pbnRlcl9jOworICAgIHMtPmRjdF91bnF1YW50aXplX21wZWcxX2lu
dHJhID0gZGN0X3VucXVhbnRpemVfbXBlZzFfaW50cmFfYzsKKyAgICBzLT5kY3RfdW5xdWFudGl6
ZV9tcGVnMV9pbnRlciA9IGRjdF91bnF1YW50aXplX21wZWcxX2ludGVyX2M7CisgICAgcy0+ZGN0
X3VucXVhbnRpemVfbXBlZzJfaW50cmEgPSBkY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRyYV9jOwor
ICAgIGlmIChzLT5hdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX0JJVEVYQUNUKQorICAgICAg
ICBzLT5kY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRyYSA9IGRjdF91bnF1YW50aXplX21wZWcyX2lu
dHJhX2JpdGV4YWN0OworICAgIHMtPmRjdF91bnF1YW50aXplX21wZWcyX2ludGVyID0gZGN0X3Vu
cXVhbnRpemVfbXBlZzJfaW50ZXJfYzsKKworI2lmIEhBVkVfSU5UUklOU0lDU19ORU9OCisgICAg
ZmZfbXB2X2NvbW1vbl9pbml0X25lb24ocyk7CisjZW5kaWYKKworI2lmIEFSQ0hfQVJNCisgICAg
ZmZfbXB2X2NvbW1vbl9pbml0X2FybShzKTsKKyNlbGlmIEFSQ0hfUFBDCisgICAgZmZfbXB2X2Nv
bW1vbl9pbml0X3BwYyhzKTsKKyNlbGlmIEFSQ0hfWDg2CisgICAgZmZfbXB2X2NvbW1vbl9pbml0
X3g4NihzKTsKKyNlbGlmIEFSQ0hfTUlQUworICAgIGZmX21wdl9jb21tb25faW5pdF9taXBzKHMp
OworI2VuZGlmCit9CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXpl
LmggYi9saWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMC4uMWU3NTkwNTYxYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmF2
Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuaApAQCAtMCwwICsxLDM3IEBACisvKgorICogVW5x
dWFudGl6ZSBmdW5jdGlvbnMgZm9yIG1wZWd2aWRlbworICogQ29weXJpZ2h0IChjKSAyMDAwLDIw
MDEgRmFicmljZSBCZWxsYXJkCisgKiBDb3B5cmlnaHQgKGMpIDIwMDItMjAwNCBNaWNoYWVsIE5p
ZWRlcm1heWVyIDxtaWNoYWVsbmlAZ214LmF0PgorICoKKyAqIDRNViAmIGhxICYgQi1mcmFtZSBl
bmNvZGluZyBzdHVmZiBieSBNaWNoYWVsIE5pZWRlcm1heWVyIDxtaWNoYWVsbmlAZ214LmF0Pgor
ICoKKyAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEZGbXBlZy4KKyAqCisgKiBGRm1wZWcgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgorICoKKyAqIEZGbXBlZyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo
b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMZXNzZXIg
R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91
bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMK
KyAqIExpY2Vuc2UgYWxvbmcgd2l0aCBGRm1wZWc7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUg
U29mdHdhcmUKKyAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSBVU0EKKyAqLworCisjaWZuZGVmIEFWQ09ERUNf
TVBFR1ZJREVPX1VOUVVBTlRJWkVfSAorI2RlZmluZSBBVkNPREVDX01QRUdWSURFT19VTlFVQU5U
SVpFX0gKKwordHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgTXBlZ0VuY0NvbnRleHQ7CisK
K3ZvaWQgZmZfbXB2X3VucXVhbnRpemVfaW5pdChNcGVnRW5jQ29udGV4dCAqcyk7Cit2b2lkIGZm
X21wdl9jb21tb25faW5pdF9hcm0oTXBlZ0VuY0NvbnRleHQgKnMpOwordm9pZCBmZl9tcHZfY29t
bW9uX2luaXRfbmVvbihNcGVnRW5jQ29udGV4dCAqcyk7Cit2b2lkIGZmX21wdl9jb21tb25faW5p
dF9wcGMoTXBlZ0VuY0NvbnRleHQgKnMpOwordm9pZCBmZl9tcHZfY29tbW9uX2luaXRfeDg2KE1w
ZWdFbmNDb250ZXh0ICpzKTsKK3ZvaWQgZmZfbXB2X2NvbW1vbl9pbml0X21pcHMoTXBlZ0VuY0Nv
bnRleHQgKnMpOworCisjZW5kaWYgLyogQVZDT0RFQ19NUEVHVklERU9fVU5RVUFOVElaRV9IICov
CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL25lb24vbXBlZ3ZpZGVvLmMgYi9saWJhdmNvZGVjL25l
b24vbXBlZ3ZpZGVvLmMKaW5kZXggOGYwNWQ3N2E2NS4uYThiMmEwNjA2ZCAxMDA2NDQKLS0tIGEv
bGliYXZjb2RlYy9uZW9uL21wZWd2aWRlby5jCisrKyBiL2xpYmF2Y29kZWMvbmVvbi9tcGVndmlk
ZW8uYwpAQCAtMzIsNiArMzIsNyBAQAogI2VuZGlmCiAKICNpbmNsdWRlICJsaWJhdmNvZGVjL21w
ZWd2aWRlby5oIgorI2luY2x1ZGUgImxpYmF2Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuaCIK
IAogc3RhdGljIHZvaWQgaW5saW5lIGZmX2RjdF91bnF1YW50aXplX2gyNjNfbmVvbihpbnQgcXNj
YWxlLCBpbnQgcWFkZCwgaW50IG5Db2VmZnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrKQpkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl
Yy9wcGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYyBiL2xpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRp
dmVjLmMKaW5kZXggYmNiNTliYTg0NS4uYzM2MWNhNzg1NyAxMDA2NDQKLS0tIGEvbGliYXZjb2Rl
Yy9wcGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYworKysgYi9saWJhdmNvZGVjL3BwYy9tcGVndmlkZW9f
YWx0aXZlYy5jCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAibGliYXZ1dGlsL3BwYy91dGls
X2FsdGl2ZWMuaCIKIAogI2luY2x1ZGUgImxpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgiCisjaW5jbHVk
ZSAibGliYXZjb2RlYy9tcGVndmlkZW9fdW5xdWFudGl6ZS5oIgogCiAjaWYgSEFWRV9BTFRJVkVD
CiAKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMveDg2L21wZWd2aWRlby5jIGIvbGliYXZjb2RlYy94
ODYvbXBlZ3ZpZGVvLmMKaW5kZXggOTg3ODYwN2E4MS4uMTFhNWVlNDc0YiAxMDA2NDQKLS0tIGEv
bGliYXZjb2RlYy94ODYvbXBlZ3ZpZGVvLmMKKysrIGIvbGliYXZjb2RlYy94ODYvbXBlZ3ZpZGVv
LmMKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJsaWJhdmNvZGVjL2F2Y29kZWMuaCIKICNp
bmNsdWRlICJsaWJhdmNvZGVjL21wZWd2aWRlby5oIgogI2luY2x1ZGUgImxpYmF2Y29kZWMvbXBl
Z3ZpZGVvZGF0YS5oIgorI2luY2x1ZGUgImxpYmF2Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUu
aCIKIAogI2lmIEhBVkVfTU1YX0lOTElORQogCi0tIAoyLjQ1LjIKCg==

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/x-patch; charset=UTF-8;
 name="0077-avcodec-ppc-mpegvideo_altivec-Use-correct-inter-scan.patch"
Content-Disposition: attachment;
 filename*0="0077-avcodec-ppc-mpegvideo_altivec-Use-correct-inter-scan.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSBiYjJiOGRkN2M1MmJiODViMjg5YzAwNjljYjcwZDIxODg4NjAyNTUyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAyMiBNYXIgMjAyNSAwNjo1MToyOCArMDEwMApTdWJq
ZWN0OiBbUEFUQ0ggNzcvODFdIGF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjOiBVc2UgY29y
cmVjdCBpbnRlcgogc2NhbnRhYmxlCgpUaGlzIGFmZmVjdGVkIHRoZSBXTVYxLzIgZW5jb2RlcnMg
KGJ1dCBub3Qgd2hlbiBydW5uaW5nIEZBVEUgYmVjYXVzZQp0aGUgZW5jb2RpbmcgcGFydCB1c2Vz
IHRoZSBmYXN0aW50IGRjdCwgc28gdGhpcyBjb2RlIGlzbid0IHVzZWQKdGhlbiBhbnl3YXkpLgoK
SXQgZGlkIG5vdCBhZmZlY3QgYW55dGhpbmcgZWxzZSwgYmVjYXVzZSBhKSBvbmx5IFdNVjEvMiB1
c2UgZGlmZmVyZW50CnNjYW50YWJsZXMsIGIpIGZmX21zbXBlZzRfZGVjb2RlX2Jsb2NrKCkgKGFu
ZCB0aGVyZWZvcmUgdGhlIFdNVjEKZGVjb2RlcikgYWxyZWFkeSB1bnF1YW50aXplIGludGVyIG1h
Y3JvYmxvY2tzIGFzIHRoZXkgYXJlIHBhcnNlZApjKSB0aGUgV01WMiBkZWNvZGVyIGRvZXMgbm90
IHVzZSB0aGUgdW5xdWFudGl6ZSBmdW5jdGlvbnMgZm9yIGludGVyCm1hY3JvYmxvY2tzIGF0IGFs
bC4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0
QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMgfCAy
ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg
LS1naXQgYS9saWJhdmNvZGVjL3BwYy9tcGVndmlkZW9fYWx0aXZlYy5jIGIvbGliYXZjb2RlYy9w
cGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYwppbmRleCBjMzYxY2E3ODU3Li42MDA2ZDA0ODRkIDEwMDY0
NAotLS0gYS9saWJhdmNvZGVjL3BwYy9tcGVndmlkZW9fYWx0aXZlYy5jCisrKyBiL2xpYmF2Y29k
ZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMKQEAgLTYxLDcgKzYxLDcgQEAgc3RhdGljIHZvaWQg
ZGN0X3VucXVhbnRpemVfaDI2M19hbHRpdmVjKE1wZWdFbmNDb250ZXh0ICpzLAogICAgIH0gZWxz
ZSB7CiAgICAgICAgIGkgPSAwOwogICAgICAgICBhdl9hc3NlcnQyKHMtPmJsb2NrX2xhc3RfaW5k
ZXhbbl0+PTApOwotICAgICAgICBuQ29lZmZzPSBzLT5pbnRyYV9zY2FudGFibGUucmFzdGVyX2Vu
ZFsgcy0+YmxvY2tfbGFzdF9pbmRleFtuXSBdOworICAgICAgICBuQ29lZmZzID0gcy0+aW50ZXJf
c2NhbnRhYmxlLnJhc3Rlcl9lbmRbcy0+YmxvY2tfbGFzdF9pbmRleFtuXV07CiAgICAgfQogCiAg
ICAgewotLSAKMi40NS4yCgo=

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/x-patch; charset=UTF-8;
 name="0078-avcodec-ppc-mpegvideo_altivec-Set-unquantize-functio.patch"
Content-Disposition: attachment;
 filename*0="0078-avcodec-ppc-mpegvideo_altivec-Set-unquantize-functio.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSAxOGE2ZjhjYzAxMzIxNmNlOGUzZGUzYjEyNmU4MmUyMTgyYjFlMjBlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAyMiBNYXIgMjAyNSAwNDoyMDoxNCArMDEwMApTdWJq
ZWN0OiBbUEFUQ0ggNzgvODFdIGF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjOiBTZXQgdW5x
dWFudGl6ZSBmdW5jdGlvbnMKIHVuY29uZGl0aW9uYWxseQoKRG9uJ3QgZG8gaXQgZGVwZW5kaW5n
IHVwb24gZGN0X2FsZ28sIGFzIHRoaXMgaXMgbm90IHN1cHBvc2VkCnRvIGluZmx1ZW5jZSB0aGUg
dW5xdWFudGl6ZSBmdW5jdGlvbiBzZWxlY3Rpb24uCihUaGlzIGNoZWNrIG9yaWdpbmF0ZWQgaW4g
MDVjNDA3MmI0NWYzY2RlMTE4NWRlNmVjY2ZlN2ZlYmY5MWQ5ZjhmZAp3aGVyZSBpdCB3YXMgdXNl
ZCBmb3IgdGhlIGRjdF9xdWFudGl6ZSBmdW5jdGlvbiBvbmx5LikKClNpZ25lZC1vZmYtYnk6IEFu
ZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxp
YmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMgfCA3ICsrLS0tLS0KIDEgZmlsZSBjaGFu
Z2VkLCAyIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZj
b2RlYy9wcGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYyBiL2xpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19h
bHRpdmVjLmMKaW5kZXggNjAwNmQwNDg0ZC4uMjNiNzcwMWZkNiAxMDA2NDQKLS0tIGEvbGliYXZj
b2RlYy9wcGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYworKysgYi9saWJhdmNvZGVjL3BwYy9tcGVndmlk
ZW9fYWx0aXZlYy5jCkBAIC0xMjMsMTAgKzEyMyw3IEBAIGF2X2NvbGQgdm9pZCBmZl9tcHZfY29t
bW9uX2luaXRfcHBjKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIGlmICghUFBDX0FMVElWRUMoYXZf
Z2V0X2NwdV9mbGFncygpKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKChzLT5hdmN0eC0+
ZGN0X2FsZ28gPT0gRkZfRENUX0FVVE8pIHx8Ci0gICAgICAgIChzLT5hdmN0eC0+ZGN0X2FsZ28g
PT0gRkZfRENUX0FMVElWRUMpKSB7Ci0gICAgICAgIHMtPmRjdF91bnF1YW50aXplX2gyNjNfaW50
cmEgPSBkY3RfdW5xdWFudGl6ZV9oMjYzX2FsdGl2ZWM7Ci0gICAgICAgIHMtPmRjdF91bnF1YW50
aXplX2gyNjNfaW50ZXIgPSBkY3RfdW5xdWFudGl6ZV9oMjYzX2FsdGl2ZWM7Ci0gICAgfQorICAg
IHMtPmRjdF91bnF1YW50aXplX2gyNjNfaW50cmEgPSBkY3RfdW5xdWFudGl6ZV9oMjYzX2FsdGl2
ZWM7CisgICAgcy0+ZGN0X3VucXVhbnRpemVfaDI2M19pbnRlciA9IGRjdF91bnF1YW50aXplX2gy
NjNfYWx0aXZlYzsKICNlbmRpZiAvKiBIQVZFX0FMVElWRUMgKi8KIH0KLS0gCjIuNDUuMgoK

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/x-patch; charset=UTF-8;
 name="0079-avcodec-ppc-mpegvideo_altivec-Don-t-process-unnecess.patch"
Content-Disposition: attachment;
 filename*0="0079-avcodec-ppc-mpegvideo_altivec-Don-t-process-unnecess.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSBkNmUwMDU5MjQxMzNkNjc5YWYxYWYwOGQxNmM2NGY4NDU2YmZjMzQ1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAyMiBNYXIgMjAyNSAwNzozMTozMCArMDEwMApTdWJq
ZWN0OiBbUEFUQ0ggNzkvODFdIGF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjOiBEb24ndCBw
cm9jZXNzCiB1bm5lY2Vzc2FyaWx5IG1hbnkgY29lZmZzCgpVc2UgdGhlIHNhbWUgbnVtYmVyIGFz
IHRoZSBDIHZlcnNpb24uCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJl
YXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL3BwYy9tcGVndmlkZW9f
YWx0aXZlYy5jIHwgNSArKysrLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBk
ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVj
LmMgYi9saWJhdmNvZGVjL3BwYy9tcGVndmlkZW9fYWx0aXZlYy5jCmluZGV4IDIzYjc3MDFmZDYu
LjdlM2RiNmY3NmEgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVj
LmMKKysrIGIvbGliYXZjb2RlYy9wcGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYwpAQCAtNTcsNyArNTcs
MTAgQEAgc3RhdGljIHZvaWQgZGN0X3VucXVhbnRpemVfaDI2M19hbHRpdmVjKE1wZWdFbmNDb250
ZXh0ICpzLAogICAgICAgICB9ZWxzZQogICAgICAgICAgICAgcWFkZCA9IDA7CiAgICAgICAgIGkg
PSAxOwotICAgICAgICBuQ29lZmZzPSA2MzsgLy9kb2VzIG5vdCBhbHdheXMgdXNlIHppZ3phZyB0
YWJsZQorICAgICAgICBpZiAocy0+YWNfcHJlZCkKKyAgICAgICAgICAgIG5Db2VmZnMgPSA2MzsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgbkNvZWZmcyA9IHMtPmludHJhX3NjYW50YWJsZS5y
YXN0ZXJfZW5kW3MtPmJsb2NrX2xhc3RfaW5kZXhbbl1dOwogICAgIH0gZWxzZSB7CiAgICAgICAg
IGkgPSAwOwogICAgICAgICBhdl9hc3NlcnQyKHMtPmJsb2NrX2xhc3RfaW5kZXhbbl0+PTApOwot
LSAKMi40NS4yCgo=

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/x-patch; charset=UTF-8;
 name="0080-avcodec-ppc-mpegvideo_altivec-Don-t-process-coeffs-a.patch"
Content-Disposition: attachment;
 filename*0="0080-avcodec-ppc-mpegvideo_altivec-Don-t-process-coeffs-a.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSA2ZDM5ZjI2MjRjYTc4MDQzMmQ0OTFjYjllYzlkYzk1NzZlMjZiZWNhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAyMiBNYXIgMjAyNSAwNzo1MzozNCArMDEwMApTdWJq
ZWN0OiBbUEFUQ0ggODAvODFdIGF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjOiBEb24ndCBw
cm9jZXNzIGNvZWZmcyBhcwogc2NhbGFycwoKYmxvY2tfbGFzdF9pbmRleCBhbmQgbkNvZWZmcyBp
cyBhbiBvcHRpbWl6YXRpb24gZGVzaWduZWQKdG8gYXZvaWQgcHJvY2Vzc2luZyB1bm5lY2Vzc2Fy
aWx5IG1hbnkgY29lZmZpY2llbnRzOyB5ZXQKaXQgd291bGQgYmUgbGVnYWwgdG8gYWx3YXlzIHBy
b2Nlc3MgYWxsIGNvZWZmaWNpZW50cwooYWxsIGNvZWZmaWNpZW50cyBiZXlvbmQgbkNvZWZmcyBh
cmUgemVybyBhbnl3YXkgYW5kCnplcm9zIGFyZSBhbHdheXMgdW5xdWFudGl6ZWQgdG8gemVyb3Mp
LiBUaGVyZWZvcmUKb25lIGRvZXMgbm90IG5lZWQgYSBzY2FsYXIgdGFpbC4KClNpZ25lZC1vZmYt
Ynk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgot
LS0KIGxpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMgfCAyMSArKy0tLS0tLS0tLS0t
LS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMgYi9saWJh
dmNvZGVjL3BwYy9tcGVndmlkZW9fYWx0aXZlYy5jCmluZGV4IDdlM2RiNmY3NmEuLmE0NTVjYWRj
NGIgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMKKysrIGIv
bGliYXZjb2RlYy9wcGMvbXBlZ3ZpZGVvX2FsdGl2ZWMuYwpAQCAtNDIsNyArNDIsNyBAQAogc3Rh
dGljIHZvaWQgZGN0X3VucXVhbnRpemVfaDI2M19hbHRpdmVjKE1wZWdFbmNDb250ZXh0ICpzLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2ssIGludCBuLCBp
bnQgcXNjYWxlKQogewotICAgIGludCBpLCBsZXZlbCwgcW11bCwgcWFkZDsKKyAgICBpbnQgaSwg
cW11bCwgcWFkZDsKICAgICBpbnQgbkNvZWZmczsKIAogICAgIHFhZGQgPSAocXNjYWxlIC0gMSkg
fCAxOwpAQCAtNzQsNyArNzQsNiBAQCBzdGF0aWMgdm9pZCBkY3RfdW5xdWFudGl6ZV9oMjYzX2Fs
dGl2ZWMoTXBlZ0VuY0NvbnRleHQgKnMsCiAgICAgICAgIHJlZ2lzdGVyIHZlY3RvciBzaWduZWQg
c2hvcnQgYmxvY2t2LCBxbXVsdiwgcWFkZHYsIG5xYWRkdiwgdGVtcDE7CiAgICAgICAgIHJlZ2lz
dGVyIHZlY3RvciBib29sIHNob3J0IGJsb2Nrdl9udWxsLCBibG9ja3ZfbmVnOwogICAgICAgICBy
ZWdpc3RlciBzaG9ydCBiYWNrdXBfMCA9IGJsb2NrWzBdOwotICAgICAgICByZWdpc3RlciBpbnQg
aiA9IDA7CiAKICAgICAgICAgcW11bHYgPSB2ZWNfc3BsYXQoKHZlY19zMTYpdmVjX2xkZSgwLCAm
cW11bDgpLCAwKTsKICAgICAgICAgcWFkZHYgPSB2ZWNfc3BsYXQoKHZlY19zMTYpdmVjX2xkZSgw
LCAmcWFkZDgpLCAwKTsKQEAgLTgyLDcgKzgxLDcgQEAgc3RhdGljIHZvaWQgZGN0X3VucXVhbnRp
emVfaDI2M19hbHRpdmVjKE1wZWdFbmNDb250ZXh0ICpzLAogCiAgICAgICAgIC8vIHZlY3Rvcml6
ZSBhbGwgdGhlIDE2IGJ5dGVzLWFsaWduZWQgYmxvY2tzCiAgICAgICAgIC8vIG9mIDggZWxlbWVu
dHMKLSAgICAgICAgZm9yKDsgKGogKyA3KSA8PSBuQ29lZmZzIDsgais9OCkgeworICAgICAgICBm
b3IgKHJlZ2lzdGVyIGludCBqID0gMDsgaiA8PSBuQ29lZmZzIDsgaiArPSA4KSB7CiAgICAgICAg
ICAgICBibG9ja3YgPSB2ZWNfbGQoaiA8PCAxLCBibG9jayk7CiAgICAgICAgICAgICBibG9ja3Zf
bmVnID0gdmVjX2NtcGx0KGJsb2NrdiwgdmN6ZXJvKTsKICAgICAgICAgICAgIGJsb2Nrdl9udWxs
ID0gdmVjX2NtcGVxKGJsb2NrdiwgdmN6ZXJvKTsKQEAgLTk1LDIyICs5NCw2IEBAIHN0YXRpYyB2
b2lkIGRjdF91bnF1YW50aXplX2gyNjNfYWx0aXZlYyhNcGVnRW5jQ29udGV4dCAqcywKICAgICAg
ICAgICAgIHZlY19zdChibG9ja3YsIGogPDwgMSwgYmxvY2spOwogICAgICAgICB9CiAKLSAgICAg
ICAgLy8gaWYgbkNvZWZmcyBpc24ndCBhIG11bHRpcGxlIG9mIDgsIGZpbmlzaCB0aGUgam9iCi0g
ICAgICAgIC8vIHVzaW5nIGdvb2Qgb2xkIHNjYWxhciB1bml0cy4KLSAgICAgICAgLy8gKHdlIGNv
dWxkIGRvIGl0IHVzaW5nIGEgdHJ1bmNhdGVkIHZlY3RvciwKLSAgICAgICAgLy8gYnV0IEknbSBu
b3Qgc3VyZSBpdCdzIHdvcnRoIHRoZSBoYXNzbGUpCi0gICAgICAgIGZvcig7IGogPD0gbkNvZWZm
cyA7IGorKykgewotICAgICAgICAgICAgbGV2ZWwgPSBibG9ja1tqXTsKLSAgICAgICAgICAgIGlm
IChsZXZlbCkgewotICAgICAgICAgICAgICAgIGlmIChsZXZlbCA8IDApIHsKLSAgICAgICAgICAg
ICAgICAgICAgbGV2ZWwgPSBsZXZlbCAqIHFtdWwgLSBxYWRkOwotICAgICAgICAgICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIGxldmVsID0gbGV2ZWwgKiBxbXVsICsgcWFkZDsK
LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgYmxvY2tbal0gPSBsZXZlbDsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgfQotCiAgICAgICAgIGlmIChpID09IDEpIHsKICAgICAgICAg
ICAgIC8vIGNoZWF0LiB0aGlzIGF2b2lkIHNwZWNpYWwtY2FzaW5nIHRoZSBmaXJzdCBpdGVyYXRp
b24KICAgICAgICAgICAgIGJsb2NrWzBdID0gYmFja3VwXzA7Ci0tIAoyLjQ1LjIKCg==

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/x-patch; charset=UTF-8;
 name="0081-avcodec-mpegvideo-Only-keep-the-actually-used-unquan.patch"
Content-Disposition: attachment;
 filename*0="0081-avcodec-mpegvideo-Only-keep-the-actually-used-unquan.pa";
 filename*1="tch"
Content-Transfer-Encoding: base64

RnJvbSBkOWQyODI0ODlmZTI2MmE2MjlmNTkwMDdlM2MwNWY4NTI1ODgwOTU4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAxOSBNYXIgMjAyNSAxNToyNDo1NyArMDEwMApTdWJq
ZWN0OiBbUEFUQ0ggODEvODFdIGF2Y29kZWMvbXBlZ3ZpZGVvOiBPbmx5IGtlZXAgdGhlIGFjdHVh
bGx5IHVzZWQKIHVucXVhbnRpemUgZnVuY3MKCkZvciBhbGwgZW5jb2RlcnMgYW5kIGFsbCBkZWNv
ZGVycyBleGNlcHQgTVBFRy00IHRoZSB1bnF1YW50aXplCmZ1bmN0aW9ucyB0byB1c2UgZG9uJ3Qg
Y2hhbmdlIGF0IGFsbCBhbmQgdGhlcmVmb3JlIG5lZWRuJ3QgYmUKa2VwdCBpbiB0aGUgY29udGV4
dC4gU28gZGlzY2FyZCB0aGVtIGFmdGVyIHNldHRpbmcgdGhlbTsKZm9yIE1QRUctNCwgdGhlIGZ1
bmN0aW9ucyBnZXQgYXNzaWduZWQgb24gYSBwZXItZnJhbWUgYmFzaXMuCgpEZWNvZGVycyBub3Qg
dXNpbmcgYW55IHVucXVhbnRpemUgZnVuY3Rpb25zIChILjI2MSwgTVBFRy0xLzIpCmFzIHdlbGwg
YXMgZGVjb2RlcnMgdGhhdCBvbmx5IGNhbGwgZmZfbXB2X3JlY29uc3RydWN0X21iKCkKdGhyb3Vn
aCBlcnJvciByZXNpbGllbmNlIChSVjMwLzQwLCB0aGUgVkMtMSBmYW1pbHkpIGRvbid0IGhhdmUK
dGhlIHJlbWFpbmluZyBwb2ludGVycyBzZXQgYXQgYWxsLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVh
cyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZj
b2RlYy9hcm0vbXBlZ3ZpZGVvX2FybS5jICAgICAgICB8ICA0ICstLQogbGliYXZjb2RlYy9hcm0v
bXBlZ3ZpZGVvX2FybS5oICAgICAgICB8ICA0ICstLQogbGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVv
X2FybXY1dGUuYyAgICB8ICAyICstCiBsaWJhdmNvZGVjL2gyNjNkZWMuYyAgICAgICAgICAgICAg
ICAgIHwgMTYgKysrKystLS0tLS0tCiBsaWJhdmNvZGVjL21pcHMvbXBlZ3ZpZGVvX2luaXRfbWlw
cy5jIHwgIDkgKysrKy0tLQogbGliYXZjb2RlYy9tcGVnNHZpZGVvZGVjLmMgICAgICAgICAgICB8
IDE0ICsrKysrKysrKysKIGxpYmF2Y29kZWMvbXBlZzR2aWRlb2RlYy5oICAgICAgICAgICAgfCAg
NSArKysrCiBsaWJhdmNvZGVjL21wZWd2aWRlby5jICAgICAgICAgICAgICAgIHwgIDIgLS0KIGxp
YmF2Y29kZWMvbXBlZ3ZpZGVvLmggICAgICAgICAgICAgICAgfCAxMiAtLS0tLS0tLS0KIGxpYmF2
Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jICAgICAgICAgICAgfCAzMiArKysrKysrKysrKysrKystLS0t
LS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9fdW5xdWFudGl6ZS5jICAgICB8IDE1ICsrKysrKy0t
LS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmggICAgIHwgMzcgKysrKysrKysr
KysrKysrKysrKysrKy0tLS0tCiBsaWJhdmNvZGVjL25lb24vbXBlZ3ZpZGVvLmMgICAgICAgICAg
IHwgIDIgKy0KIGxpYmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMgICAgfCAgMiArLQog
bGliYXZjb2RlYy94ODYvbXBlZ3ZpZGVvLmMgICAgICAgICAgICB8ICA0ICstLQogMTUgZmlsZXMg
Y2hhbmdlZCwgOTkgaW5zZXJ0aW9ucygrKSwgNjEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
bGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVvX2FybS5jIGIvbGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVv
X2FybS5jCmluZGV4IGUzMjQ1MWI1NTQuLjVjOTZjOWRmMmMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29k
ZWMvYXJtL21wZWd2aWRlb19hcm0uYworKysgYi9saWJhdmNvZGVjL2FybS9tcGVndmlkZW9fYXJt
LmMKQEAgLTQ2LDEyICs0NiwxMiBAQCB2b2lkIGZmX2RjdF91bnF1YW50aXplX2gyNjNfaW50ZXJf
bmVvbihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCAqYmxvY2ssCiB2b2lkIGZmX2RjdF91bnF1
YW50aXplX2gyNjNfaW50cmFfbmVvbihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCAqYmxvY2ss
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbiwgaW50IHFzY2Fs
ZSk7CiAKLWF2X2NvbGQgdm9pZCBmZl9tcHZfY29tbW9uX2luaXRfYXJtKE1wZWdFbmNDb250ZXh0
ICpzKQorYXZfY29sZCB2b2lkIGZmX21wdl91bnF1YW50aXplX2luaXRfYXJtKE1QVlVucXVhbnRE
U1BDb250ZXh0ICpzLCBpbnQgYml0ZXhhY3QpCiB7CiAgICAgaW50IGNwdV9mbGFncyA9IGF2X2dl
dF9jcHVfZmxhZ3MoKTsKIAogICAgIGlmIChoYXZlX2FybXY1dGUoY3B1X2ZsYWdzKSkKLSAgICAg
ICAgZmZfbXB2X2NvbW1vbl9pbml0X2FybXY1dGUocyk7CisgICAgICAgIGZmX21wdl91bnF1YW50
aXplX2luaXRfYXJtdjV0ZShzKTsKIAogICAgIGlmIChoYXZlX25lb24oY3B1X2ZsYWdzKSkgewog
ICAgICAgICBzLT5kY3RfdW5xdWFudGl6ZV9oMjYzX2ludHJhID0gZmZfZGN0X3VucXVhbnRpemVf
aDI2M19pbnRyYV9uZW9uOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVvX2Fy
bS5oIGIvbGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVvX2FybS5oCmluZGV4IDcwOWFlNmIyNDcuLjkz
ZGE3YTU2NjQgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvYXJtL21wZWd2aWRlb19hcm0uaAorKysg
Yi9saWJhdmNvZGVjL2FybS9tcGVndmlkZW9fYXJtLmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5k
ZWYgQVZDT0RFQ19BUk1fTVBFR1ZJREVPX0FSTV9ICiAjZGVmaW5lIEFWQ09ERUNfQVJNX01QRUdW
SURFT19BUk1fSAogCi0jaW5jbHVkZSAibGliYXZjb2RlYy9tcGVndmlkZW8uaCIKKyNpbmNsdWRl
ICJsaWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmgiCiAKLXZvaWQgZmZfbXB2X2NvbW1v
bl9pbml0X2FybXY1dGUoTXBlZ0VuY0NvbnRleHQgKnMpOwordm9pZCBmZl9tcHZfdW5xdWFudGl6
ZV9pbml0X2FybXY1dGUoTVBWVW5xdWFudERTUENvbnRleHQgKnMpOwogCiAjZW5kaWYgLyogQVZD
T0RFQ19BUk1fTVBFR1ZJREVPX0FSTV9IICovCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2FybS9t
cGVndmlkZW9fYXJtdjV0ZS5jIGIvbGliYXZjb2RlYy9hcm0vbXBlZ3ZpZGVvX2FybXY1dGUuYwpp
bmRleCBlMjBiYjRjNjQ1Li4yNzM3ZjY4NjQzIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2FybS9t
cGVndmlkZW9fYXJtdjV0ZS5jCisrKyBiL2xpYmF2Y29kZWMvYXJtL21wZWd2aWRlb19hcm12NXRl
LmMKQEAgLTk1LDcgKzk1LDcgQEAgc3RhdGljIHZvaWQgZGN0X3VucXVhbnRpemVfaDI2M19pbnRl
cl9hcm12NXRlKE1wZWdFbmNDb250ZXh0ICpzLAogICAgIGZmX2RjdF91bnF1YW50aXplX2gyNjNf
YXJtdjV0ZShibG9jaywgcW11bCwgcWFkZCwgbkNvZWZmcyArIDEpOwogfQogCi1hdl9jb2xkIHZv
aWQgZmZfbXB2X2NvbW1vbl9pbml0X2FybXY1dGUoTXBlZ0VuY0NvbnRleHQgKnMpCithdl9jb2xk
IHZvaWQgZmZfbXB2X3VucXVhbnRpemVfaW5pdF9hcm12NXRlKE1QVlVucXVhbnREU1BDb250ZXh0
ICpzKQogewogICAgIHMtPmRjdF91bnF1YW50aXplX2gyNjNfaW50cmEgPSBkY3RfdW5xdWFudGl6
ZV9oMjYzX2ludHJhX2FybXY1dGU7CiAgICAgcy0+ZGN0X3VucXVhbnRpemVfaDI2M19pbnRlciA9
IGRjdF91bnF1YW50aXplX2gyNjNfaW50ZXJfYXJtdjV0ZTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29k
ZWMvaDI2M2RlYy5jIGIvbGliYXZjb2RlYy9oMjYzZGVjLmMKaW5kZXggODQzNGY2ZTdjZi4uZGRi
YWRhOTg0MSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9oMjYzZGVjLmMKKysrIGIvbGliYXZjb2Rl
Yy9oMjYzZGVjLmMKQEAgLTQ0LDYgKzQ0LDcgQEAKICNpbmNsdWRlICJtcGVndmlkZW8uaCIKICNp
bmNsdWRlICJtcGVndmlkZW9kYXRhLmgiCiAjaW5jbHVkZSAibXBlZ3ZpZGVvZGVjLmgiCisjaW5j
bHVkZSAibXBlZ3ZpZGVvX3VucXVhbnRpemUuaCIKICNpbmNsdWRlICJtc21wZWc0ZGVjLmgiCiAj
aW5jbHVkZSAidGhyZWFkLmgiCiAjaW5jbHVkZSAid212MmRlYy5oIgpAQCAtOTAsNiArOTEsNyBA
QCBzdGF0aWMgZW51bSBBVlBpeGVsRm9ybWF0IGgyNjNfZ2V0X2Zvcm1hdChBVkNvZGVjQ29udGV4
dCAqYXZjdHgpCiBhdl9jb2xkIGludCBmZl9oMjYzX2RlY29kZV9pbml0KEFWQ29kZWNDb250ZXh0
ICphdmN0eCkKIHsKICAgICBNcGVnRW5jQ29udGV4dCAqcyA9IGF2Y3R4LT5wcml2X2RhdGE7Cisg
ICAgTVBWVW5xdWFudERTUENvbnRleHQgdW5xdWFudF9kc3BfY3R4OwogICAgIGludCByZXQ7CiAK
ICAgICBzLT5vdXRfZm9ybWF0ICAgICAgPSBGTVRfSDI2MzsKQEAgLTEwNSwxMCArMTA3LDEyIEBA
IGF2X2NvbGQgaW50IGZmX2gyNjNfZGVjb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQog
ICAgIHMtPnlfZGNfc2NhbGVfdGFibGUgPQogICAgIHMtPmNfZGNfc2NhbGVfdGFibGUgPSBmZl9t
cGVnMV9kY19zY2FsZV90YWJsZTsKIAorICAgIGZmX21wdl91bnF1YW50aXplX2luaXQoJnVucXVh
bnRfZHNwX2N0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2Y3R4LT5mbGFncyAmIEFW
X0NPREVDX0ZMQUdfQklURVhBQ1QsIDApOwogICAgIC8vIGRjdF91bnF1YW50aXplIGRlZmF1bHRz
IGZvciBILjI2MzsKICAgICAvLyB0aGV5IG1pZ2h0IGNoYW5nZSBvbiBhIHBlci1mcmFtZSBiYXNp
cyBmb3IgTVBFRy00LgotICAgIHMtPmRjdF91bnF1YW50aXplX2ludHJhID0gcy0+ZGN0X3VucXVh
bnRpemVfaDI2M19pbnRyYTsKLSAgICBzLT5kY3RfdW5xdWFudGl6ZV9pbnRlciA9IHMtPmRjdF91
bnF1YW50aXplX2gyNjNfaW50ZXI7CisgICAgcy0+ZGN0X3VucXVhbnRpemVfaW50cmEgPSB1bnF1
YW50X2RzcF9jdHguZGN0X3VucXVhbnRpemVfaDI2M19pbnRyYTsKKyAgICBzLT5kY3RfdW5xdWFu
dGl6ZV9pbnRlciA9IHVucXVhbnRfZHNwX2N0eC5kY3RfdW5xdWFudGl6ZV9oMjYzX2ludGVyOwog
CiAgICAgLyogc2VsZWN0IHN1YiBjb2RlYyAqLwogICAgIHN3aXRjaCAoYXZjdHgtPmNvZGVjLT5p
ZCkgewpAQCAtMTE3LDkgKzEyMSw2IEBAIGF2X2NvbGQgaW50IGZmX2gyNjNfZGVjb2RlX2luaXQo
QVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAgICBhdmN0eC0+Y2hyb21hX3NhbXBsZV9sb2Nh
dGlvbiA9IEFWQ0hST01BX0xPQ19DRU5URVI7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQVZf
Q09ERUNfSURfTVBFRzQ6Ci0gICAgICAgIC8vIGRjdF91bnF1YW50aXplX2ludGVyIGlzIG9ubHkg
dXNlZCB3aXRoIE1QRUctMiBxdWFudGl6ZXJzLAotICAgICAgICAvLyBzbyB3ZSBjYW4gYWxyZWFk
eSBzZXQgZGN0X3VucXVhbnRpemVfaW50ZXIgaGVyZSBvbmNlIGFuZCBmb3IgYWxsLgotICAgICAg
ICBzLT5kY3RfdW5xdWFudGl6ZV9pbnRlciA9IHMtPmRjdF91bnF1YW50aXplX21wZWcyX2ludGVy
OwogICAgICAgICBicmVhazsKICAgICBjYXNlIEFWX0NPREVDX0lEX01TTVBFRzRWMToKICAgICAg
ICAgcy0+aDI2M19wcmVkICAgICAgID0gMTsKQEAgLTUwOCwxMSArNTA5LDYgQEAgcmV0cnk6CiAg
ICAgICAgICAgICBnb3RvIHJldHJ5OwogICAgICAgICBpZiAocy0+c3R1ZGlvX3Byb2ZpbGUgIT0g
KHMtPmlkc3AuaWRjdCA9PSBOVUxMKSkKICAgICAgICAgICAgIGZmX21wdl9pZGN0X2luaXQocyk7
Ci0gICAgICAgIGlmIChzLT5tcGVnX3F1YW50KSB7Ci0gICAgICAgICAgICBzLT5kY3RfdW5xdWFu
dGl6ZV9pbnRyYSA9IHMtPmRjdF91bnF1YW50aXplX21wZWcyX2ludHJhOwotICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfaW50cmEgPSBzLT5kY3RfdW5xdWFu
dGl6ZV9oMjYzX2ludHJhOwotICAgICAgICB9CiAgICAgfQogCiAgICAgLyogQWZ0ZXIgSC4yNjMg
JiBNUEVHLTQgaGVhZGVyIGRlY29kZSB3ZSBoYXZlIHRoZSBoZWlnaHQsIHdpZHRoLApkaWZmIC0t
Z2l0IGEvbGliYXZjb2RlYy9taXBzL21wZWd2aWRlb19pbml0X21pcHMuYyBiL2xpYmF2Y29kZWMv
bWlwcy9tcGVndmlkZW9faW5pdF9taXBzLmMKaW5kZXggYTlhY2FlOTRjZS4uNzVjODhhMTMxNyAx
MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9taXBzL21wZWd2aWRlb19pbml0X21pcHMuYworKysgYi9s
aWJhdmNvZGVjL21pcHMvbXBlZ3ZpZGVvX2luaXRfbWlwcy5jCkBAIC0yNCw3ICsyNCw4IEBACiAj
aW5jbHVkZSAiaDI2M2RzcF9taXBzLmgiCiAjaW5jbHVkZSAibXBlZ3ZpZGVvX21pcHMuaCIKIAot
YXZfY29sZCB2b2lkIGZmX21wdl9jb21tb25faW5pdF9taXBzKE1wZWdFbmNDb250ZXh0ICpzKQor
YXZfY29sZCB2b2lkIGZmX21wdl91bnF1YW50aXplX2luaXRfbWlwcyhNUFZVbnF1YW50RFNQQ29u
dGV4dCAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJp
dGV4YWN0LCBpbnQgcV9zY2FsZV90eXBlKQogewogICAgIGludCBjcHVfZmxhZ3MgPSBhdl9nZXRf
Y3B1X2ZsYWdzKCk7CiAKQEAgLTM0LDE1ICszNSwxNSBAQCBhdl9jb2xkIHZvaWQgZmZfbXB2X2Nv
bW1vbl9pbml0X21pcHMoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgICAgIHMtPmRjdF91bnF1YW50
aXplX21wZWcxX2ludHJhID0gZmZfZGN0X3VucXVhbnRpemVfbXBlZzFfaW50cmFfbW1pOwogICAg
ICAgICBzLT5kY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRlciA9IGZmX2RjdF91bnF1YW50aXplX21w
ZWcxX2ludGVyX21taTsKIAotICAgICAgICBpZiAoIShzLT5hdmN0eC0+ZmxhZ3MgJiBBVl9DT0RF
Q19GTEFHX0JJVEVYQUNUKSkKLSAgICAgICAgICAgIGlmICghcy0+cV9zY2FsZV90eXBlKQorICAg
ICAgICBpZiAoIWJpdGV4YWN0KQorICAgICAgICAgICAgaWYgKCFxX3NjYWxlX3R5cGUpCiAgICAg
ICAgICAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmEgPSBmZl9kY3RfdW5xdWFu
dGl6ZV9tcGVnMl9pbnRyYV9tbWk7CiAgICAgfQogCiAgICAgaWYgKGhhdmVfbXNhKGNwdV9mbGFn
cykpIHsKICAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfaDI2M19pbnRyYSA9IGZmX2RjdF91bnF1
YW50aXplX2gyNjNfaW50cmFfbXNhOwogICAgICAgICBzLT5kY3RfdW5xdWFudGl6ZV9oMjYzX2lu
dGVyID0gZmZfZGN0X3VucXVhbnRpemVfaDI2M19pbnRlcl9tc2E7Ci0gICAgICAgIGlmICghcy0+
cV9zY2FsZV90eXBlKQorICAgICAgICBpZiAoIXFfc2NhbGVfdHlwZSkKICAgICAgICAgICAgIHMt
PmRjdF91bnF1YW50aXplX21wZWcyX2ludGVyID0gZmZfZGN0X3VucXVhbnRpemVfbXBlZzJfaW50
ZXJfbXNhOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZzR2aWRlb2RlYy5j
IGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZGVjLmMKaW5kZXggMTM5YjZkNGIwOC4uN2Q1YWY5Yjg3
NyAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZGVjLmMKKysrIGIvbGliYXZjb2Rl
Yy9tcGVnNHZpZGVvZGVjLmMKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJtcGVndmlkZW8u
aCIKICNpbmNsdWRlICJtcGVndmlkZW9kYXRhLmgiCiAjaW5jbHVkZSAibXBlZ3ZpZGVvZGVjLmgi
CisjaW5jbHVkZSAibXBlZ3ZpZGVvX3VucXVhbnRpemUuaCIKICNpbmNsdWRlICJtcGVnNHZpZGVv
LmgiCiAjaW5jbHVkZSAibXBlZzR2aWRlb2RhdGEuaCIKICNpbmNsdWRlICJtcGVnNHZpZGVvZGVj
LmgiCkBAIC0zMzkwLDYgKzMzOTEsOSBAQCBzdGF0aWMgaW50IGRlY29kZV92b3BfaGVhZGVyKE1w
ZWc0RGVjQ29udGV4dCAqY3R4LCBHZXRCaXRDb250ZXh0ICpnYiwKICAgICAgICAgfQogICAgIH0K
IAorICAgIHMtPmRjdF91bnF1YW50aXplX2ludHJhID0gcy0+bXBlZ19xdWFudCA/IGN0eC0+ZGN0
X3VucXVhbnRpemVfbXBlZzJfaW50cmEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgOiBjdHgtPmRjdF91bnF1YW50aXplX2gyNjNfaW50cmE7CisKIGVuZDoKICAg
ICAvKiBkZXRlY3QgYnVnZ3kgZW5jb2RlcnMgd2hpY2ggZG9uJ3Qgc2V0IHRoZSBsb3dfZGVsYXkg
ZmxhZwogICAgICAqIChkaXZ4NC94dmlkL29wZW5kaXZ4KS4gTm90ZSB3ZSBjYW5ub3QgZGV0ZWN0
IGRpdng1IHdpdGhvdXQgQi1mcmFtZXMKQEAgLTM4NjIsNiArMzg2Niw3IEBAIHN0YXRpYyBhdl9j
b2xkIGludCBkZWNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgc3RhdGljIEFW
T25jZSBpbml0X3N0YXRpY19vbmNlID0gQVZfT05DRV9JTklUOwogICAgIE1wZWc0RGVjQ29udGV4
dCAqY3R4ID0gYXZjdHgtPnByaXZfZGF0YTsKICAgICBNcGVnRW5jQ29udGV4dCAqcyA9ICZjdHgt
Pm07CisgICAgTVBWVW5xdWFudERTUENvbnRleHQgdW5xdWFudF9kc3BfY3R4OwogICAgIGludCBy
ZXQ7CiAKICAgICBjdHgtPmRpdnhfdmVyc2lvbiA9CkBAIC0zODcyLDYgKzM4NzcsMTUgQEAgc3Rh
dGljIGF2X2NvbGQgaW50IGRlY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBp
ZiAoKHJldCA9IGZmX2gyNjNfZGVjb2RlX2luaXQoYXZjdHgpKSA8IDApCiAgICAgICAgIHJldHVy
biByZXQ7CiAKKyAgICBmZl9tcHZfdW5xdWFudGl6ZV9pbml0KCZ1bnF1YW50X2RzcF9jdHgsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICBhdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX0JJ
VEVYQUNULCAwKTsKKworICAgIGN0eC0+ZGN0X3VucXVhbnRpemVfaDI2M19pbnRyYSAgPSB1bnF1
YW50X2RzcF9jdHguZGN0X3VucXVhbnRpemVfaDI2M19pbnRyYTsKKyAgICBjdHgtPmRjdF91bnF1
YW50aXplX21wZWcyX2ludHJhID0gdW5xdWFudF9kc3BfY3R4LmRjdF91bnF1YW50aXplX21wZWcy
X2ludHJhOworICAgIC8vIGRjdF91bnF1YW50aXplX2ludGVyIGlzIG9ubHkgdXNlZCB3aXRoIE1Q
RUctMiBxdWFudGl6ZXJzLAorICAgIC8vIHNvIHdlIGNhbiBhbHJlYWR5IHNldCBkY3RfdW5xdWFu
dGl6ZV9pbnRlciBoZXJlIG9uY2UgYW5kIGZvciBhbGwuCisgICAgcy0+ZGN0X3VucXVhbnRpemVf
aW50ZXIgPSB1bnF1YW50X2RzcF9jdHguZGN0X3VucXVhbnRpemVfbXBlZzJfaW50ZXI7CisKICAg
ICBzLT5oMjYzX3ByZWQgPSAxOwogICAgIHMtPmxvd19kZWxheSA9IDA7IC8qIGRlZmF1bHQsIG1p
Z2h0IGJlIG92ZXJyaWRkZW4gaW4gdGhlIHZvbCBoZWFkZXIgZHVyaW5nIGhlYWRlciBwYXJzaW5n
ICovCiAgICAgcy0+ZGVjb2RlX21iID0gbXBlZzRfZGVjb2RlX21iOwpkaWZmIC0tZ2l0IGEvbGli
YXZjb2RlYy9tcGVnNHZpZGVvZGVjLmggYi9saWJhdmNvZGVjL21wZWc0dmlkZW9kZWMuaAppbmRl
eCBiYjE0ZDI0Yzg4Li5kM2RlODFjNWE5IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWc0dmlk
ZW9kZWMuaAorKysgYi9saWJhdmNvZGVjL21wZWc0dmlkZW9kZWMuaApAQCAtODgsNiArODgsMTEg
QEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZzREZWNDb250ZXh0IHsKIAogICAgIE1wZWc0VmlkZW9EU1BD
b250ZXh0IG1kc3A7CiAKKyAgICB2b2lkICgqZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmEpKE1w
ZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW50MTZfdCAqYmxvY2ssIGludCBuLCBpbnQgcXNjYWxlKTsKKyAgICB2b2lkICgqZGN0X3VucXVh
bnRpemVfaDI2M19pbnRyYSkoTXBlZ0VuY0NvbnRleHQgKnMsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrLCBpbnQgbiwgaW50IHFzY2FsZSk7CisK
ICAgICBERUNMQVJFX0FMSUdORUQoOCwgaW50MzJfdCwgYmxvY2szMilbMTJdWzY0XTsKICAgICAv
LyAwID0gRENULCAxID0gRFBDTSB0b3AgdG8gYm90dG9tIHNjYW4sIC0xID0gRFBDTSBib3R0b20g
dG8gdG9wIHNjYW4KICAgICBpbnQgZHBjbV9kaXJlY3Rpb247CmRpZmYgLS1naXQgYS9saWJhdmNv
ZGVjL21wZWd2aWRlby5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uYwppbmRleCA5YTQwOTM3YmJk
Li43OTRiMmQwZjY2IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5jCisrKyBiL2xp
YmF2Y29kZWMvbXBlZ3ZpZGVvLmMKQEAgLTExMiw4ICsxMTIsNiBAQCBhdl9jb2xkIHZvaWQgZmZf
bXB2X2lkY3RfaW5pdChNcGVnRW5jQ29udGV4dCAqcykKICAgICAgICAgICAgICAgICAgICAgICAg
ICBzLT5pZHNwLmlkY3RfcGVybXV0YXRpb24pOwogICAgIGZmX3Blcm11dGVfc2NhbnRhYmxlKHMt
PnBlcm11dGF0ZWRfaW50cmFfdl9zY2FudGFibGUsIGZmX2FsdGVybmF0ZV92ZXJ0aWNhbF9zY2Fu
LAogICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmlkc3AuaWRjdF9wZXJtdXRhdGlvbik7Ci0K
LSAgICBmZl9tcHZfdW5xdWFudGl6ZV9pbml0KHMpOwogfQogCiBzdGF0aWMgYXZfY29sZCBpbnQg
aW5pdF9kdXBsaWNhdGVfY29udGV4dChNcGVnRW5jQ29udGV4dCAqcykKZGlmZiAtLWdpdCBhL2xp
YmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVjL21wZWd2aWRlby5oCmluZGV4IDczNzkx
NjAxNTkuLjJkNjBjOWRkZjAgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysr
IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAtMzI2LDE4ICszMjYsNiBAQCB0eXBlZGVmIHN0
cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAjZGVmaW5lIFNMSUNFX0VORCAgICAgICAtMiAvLy88ZW5k
IG1hcmtlciBmb3VuZAogI2RlZmluZSBTTElDRV9OT0VORCAgICAgLTMgLy8vPG5vIGVuZCBtYXJr
ZXIgb3IgZXJyb3IgZm91bmQgYnV0IG1iIGNvdW50IGV4Y2VlZGVkCiAKLSAgICB2b2lkICgqZGN0
X3VucXVhbnRpemVfbXBlZzFfaW50cmEpKHN0cnVjdCBNcGVnRW5jQ29udGV4dCAqcywKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrLyphbGlnbiAxNiovLCBpbnQgbiwg
aW50IHFzY2FsZSk7Ci0gICAgdm9pZCAoKmRjdF91bnF1YW50aXplX21wZWcxX2ludGVyKShzdHJ1
Y3QgTXBlZ0VuY0NvbnRleHQgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQxNl90
ICpibG9jay8qYWxpZ24gMTYqLywgaW50IG4sIGludCBxc2NhbGUpOwotICAgIHZvaWQgKCpkY3Rf
dW5xdWFudGl6ZV9tcGVnMl9pbnRyYSkoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2svKmFsaWduIDE2Ki8sIGludCBuLCBp
bnQgcXNjYWxlKTsKLSAgICB2b2lkICgqZGN0X3VucXVhbnRpemVfbXBlZzJfaW50ZXIpKHN0cnVj
dCBNcGVnRW5jQ29udGV4dCAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDE2X3Qg
KmJsb2NrLyphbGlnbiAxNiovLCBpbnQgbiwgaW50IHFzY2FsZSk7Ci0gICAgdm9pZCAoKmRjdF91
bnF1YW50aXplX2gyNjNfaW50cmEpKHN0cnVjdCBNcGVnRW5jQ29udGV4dCAqcywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJsb2NrLyphbGlnbiAxNiovLCBpbnQgbiwgaW50
IHFzY2FsZSk7Ci0gICAgdm9pZCAoKmRjdF91bnF1YW50aXplX2gyNjNfaW50ZXIpKHN0cnVjdCBN
cGVnRW5jQ29udGV4dCAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDE2X3QgKmJs
b2NrLyphbGlnbiAxNiovLCBpbnQgbiwgaW50IHFzY2FsZSk7CiAgICAgdm9pZCAoKmRjdF91bnF1
YW50aXplX2ludHJhKShzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgKnMsIC8vIHVucXVhbnRpemVyIHRv
IHVzZSAoTVBFRy00IGNhbiB1c2UgYm90aCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dDE2X3QgKmJsb2NrLyphbGlnbiAxNiovLCBpbnQgbiwgaW50IHFzY2FsZSk7CiAgICAgdm9pZCAo
KmRjdF91bnF1YW50aXplX2ludGVyKShzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgKnMsIC8vIHVucXVh
bnRpemVyIHRvIHVzZSAoTVBFRy00IGNhbiB1c2UgYm90aCkKZGlmZiAtLWdpdCBhL2xpYmF2Y29k
ZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggOTVk
Nzc0MTU1YS4uZTc5NDUyNzBmNSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5j
LmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTYwLDYgKzYwLDcgQEAKICNp
bmNsdWRlICJtanBlZ2VuY19jb21tb24uaCIKICNpbmNsdWRlICJtYXRob3BzLmgiCiAjaW5jbHVk
ZSAibXBlZ3V0aWxzLmgiCisjaW5jbHVkZSAibXBlZ3ZpZGVvX3VucXVhbnRpemUuaCIKICNpbmNs
dWRlICJtanBlZ2VuYy5oIgogI2luY2x1ZGUgInNwZWVkaHFlbmMuaCIKICNpbmNsdWRlICJtc21w
ZWc0ZW5jLmgiCkBAIC0zMTAsNiArMzExLDI1IEBAIGF2X2NvbGQgdm9pZCBmZl9kY3RfZW5jb2Rl
X2luaXQoTVBWRW5jQ29udGV4dCAqY29uc3QgcykKICAgICAgICAgcy0+ZGN0X3F1YW50aXplICA9
IGRjdF9xdWFudGl6ZV90cmVsbGlzX2M7CiB9CiAKK3N0YXRpYyBhdl9jb2xkIHZvaWQgaW5pdF91
bnF1YW50aXplKE1wZWdFbmNDb250ZXh0ICpjb25zdCBzLCBBVkNvZGVjQ29udGV4dCAqYXZjdHgp
Cit7CisgICAgTVBWVW5xdWFudERTUENvbnRleHQgdW5xdWFudF9kc3BfY3R4OworCisgICAgZmZf
bXB2X3VucXVhbnRpemVfaW5pdCgmdW5xdWFudF9kc3BfY3R4LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19CSVRFWEFDVCwgcy0+cV9zY2Fs
ZV90eXBlKTsKKworICAgIGlmIChzLT5tcGVnX3F1YW50IHx8IHMtPmNvZGVjX2lkID09IEFWX0NP
REVDX0lEX01QRUcyVklERU8pIHsKKyAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfaW50cmEgPSB1
bnF1YW50X2RzcF9jdHguZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmE7CisgICAgICAgIHMtPmRj
dF91bnF1YW50aXplX2ludGVyID0gdW5xdWFudF9kc3BfY3R4LmRjdF91bnF1YW50aXplX21wZWcy
X2ludGVyOworICAgIH0gZWxzZSBpZiAocy0+b3V0X2Zvcm1hdCA9PSBGTVRfSDI2MyB8fCBzLT5v
dXRfZm9ybWF0ID09IEZNVF9IMjYxKSB7CisgICAgICAgIHMtPmRjdF91bnF1YW50aXplX2ludHJh
ID0gdW5xdWFudF9kc3BfY3R4LmRjdF91bnF1YW50aXplX2gyNjNfaW50cmE7CisgICAgICAgIHMt
PmRjdF91bnF1YW50aXplX2ludGVyID0gdW5xdWFudF9kc3BfY3R4LmRjdF91bnF1YW50aXplX2gy
NjNfaW50ZXI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfaW50cmEg
PSB1bnF1YW50X2RzcF9jdHguZGN0X3VucXVhbnRpemVfbXBlZzFfaW50cmE7CisgICAgICAgIHMt
PmRjdF91bnF1YW50aXplX2ludGVyID0gdW5xdWFudF9kc3BfY3R4LmRjdF91bnF1YW50aXplX21w
ZWcxX2ludGVyOworICAgIH0KK30KKwogc3RhdGljIGF2X2NvbGQgaW50IG1lX2NtcF9pbml0KE1Q
Vk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7CiAgICAg
TVBWRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwpAQCAtMTAxMyw2ICsxMDMzLDcgQEAgYXZf
Y29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAg
KiB0byB0aGUgc2xpY2UgY29udGV4dHMsIHNvIHdlIGluaXRpYWxpemUgdmFyaW91cyBmaWVsZHMg
b2YgaXQKICAgICAgKiBiZWZvcmUgY2FsbGluZyBmZl9tcHZfY29tbW9uX2luaXQoKS4gKi8KICAg
ICBmZl9tcHZfaWRjdF9pbml0KCZzLT5jKTsKKyAgICBpbml0X3VucXVhbnRpemUoJnMtPmMsIGF2
Y3R4KTsKICAgICBmZl9mZGN0ZHNwX2luaXQoJnMtPmZkc3AsIGF2Y3R4KTsKICAgICBmZl9tcGVn
dmlkZW9lbmNkc3BfaW5pdCgmcy0+bXB2ZW5jZHNwLCBhdmN0eCk7CiAgICAgZmZfcGl4YmxvY2tk
c3BfaW5pdCgmcy0+cGRzcCwgYXZjdHgpOwpAQCAtMTAzMSwxNyArMTA1Miw2IEBAIGF2X2NvbGQg
aW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAKICAgICBmZl9k
Y3RfZW5jb2RlX2luaXQocyk7CiAKLSAgICBpZiAocy0+Yy5tcGVnX3F1YW50IHx8IHMtPmMuY29k
ZWNfaWQgPT0gQVZfQ09ERUNfSURfTVBFRzJWSURFTykgewotICAgICAgICBzLT5jLmRjdF91bnF1
YW50aXplX2ludHJhID0gcy0+Yy5kY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRyYTsKLSAgICAgICAg
cy0+Yy5kY3RfdW5xdWFudGl6ZV9pbnRlciA9IHMtPmMuZGN0X3VucXVhbnRpemVfbXBlZzJfaW50
ZXI7Ci0gICAgfSBlbHNlIGlmIChzLT5jLm91dF9mb3JtYXQgPT0gRk1UX0gyNjMgfHwgcy0+Yy5v
dXRfZm9ybWF0ID09IEZNVF9IMjYxKSB7Ci0gICAgICAgIHMtPmMuZGN0X3VucXVhbnRpemVfaW50
cmEgPSBzLT5jLmRjdF91bnF1YW50aXplX2gyNjNfaW50cmE7Ci0gICAgICAgIHMtPmMuZGN0X3Vu
cXVhbnRpemVfaW50ZXIgPSBzLT5jLmRjdF91bnF1YW50aXplX2gyNjNfaW50ZXI7Ci0gICAgfSBl
bHNlIHsKLSAgICAgICAgcy0+Yy5kY3RfdW5xdWFudGl6ZV9pbnRyYSA9IHMtPmMuZGN0X3VucXVh
bnRpemVfbXBlZzFfaW50cmE7Ci0gICAgICAgIHMtPmMuZGN0X3VucXVhbnRpemVfaW50ZXIgPSBz
LT5jLmRjdF91bnF1YW50aXplX21wZWcxX2ludGVyOwotICAgIH0KLQogICAgIGlmIChDT05GSUdf
SDI2M19FTkNPREVSICYmIHMtPmMub3V0X2Zvcm1hdCA9PSBGTVRfSDI2MykgewogICAgICAgICBm
Zl9oMjYzX2VuY29kZV9pbml0KG0pOwogI2lmIENPTkZJR19NU01QRUc0RU5DCmRpZmYgLS1naXQg
YS9saWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmMgYi9saWJhdmNvZGVjL21wZWd2aWRl
b191bnF1YW50aXplLmMKaW5kZXggMTJiYWNkZjQyNC4uMjEzZTM3YTUxNCAxMDA2NDQKLS0tIGEv
bGliYXZjb2RlYy9tcGVndmlkZW9fdW5xdWFudGl6ZS5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp
ZGVvX3VucXVhbnRpemUuYwpAQCAtMjQ2LDI4ICsyNDYsMjkgQEAgc3RhdGljIHZvaWQgZGN0X3Vu
cXVhbnRpemVfaDI2M19pbnRlcl9jKE1wZWdFbmNDb250ZXh0ICpzLAogICAgIH0KIH0KIAotYXZf
Y29sZCB2b2lkIGZmX21wdl91bnF1YW50aXplX2luaXQoTXBlZ0VuY0NvbnRleHQgKnMpCithdl9j
b2xkIHZvaWQgZmZfbXB2X3VucXVhbnRpemVfaW5pdChNUFZVbnF1YW50RFNQQ29udGV4dCAqcywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBiaXRleGFjdCwgaW50IHFf
c2NhbGVfdHlwZSkKIHsKICAgICBzLT5kY3RfdW5xdWFudGl6ZV9oMjYzX2ludHJhICA9IGRjdF91
bnF1YW50aXplX2gyNjNfaW50cmFfYzsKICAgICBzLT5kY3RfdW5xdWFudGl6ZV9oMjYzX2ludGVy
ICA9IGRjdF91bnF1YW50aXplX2gyNjNfaW50ZXJfYzsKICAgICBzLT5kY3RfdW5xdWFudGl6ZV9t
cGVnMV9pbnRyYSA9IGRjdF91bnF1YW50aXplX21wZWcxX2ludHJhX2M7CiAgICAgcy0+ZGN0X3Vu
cXVhbnRpemVfbXBlZzFfaW50ZXIgPSBkY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRlcl9jOwogICAg
IHMtPmRjdF91bnF1YW50aXplX21wZWcyX2ludHJhID0gZGN0X3VucXVhbnRpemVfbXBlZzJfaW50
cmFfYzsKLSAgICBpZiAocy0+YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19CSVRFWEFDVCkK
KyAgICBpZiAoYml0ZXhhY3QpCiAgICAgICAgIHMtPmRjdF91bnF1YW50aXplX21wZWcyX2ludHJh
ID0gZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmFfYml0ZXhhY3Q7CiAgICAgcy0+ZGN0X3VucXVh
bnRpemVfbXBlZzJfaW50ZXIgPSBkY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRlcl9jOwogCiAjaWYg
SEFWRV9JTlRSSU5TSUNTX05FT04KLSAgICBmZl9tcHZfY29tbW9uX2luaXRfbmVvbihzKTsKKyAg
ICBmZl9tcHZfdW5xdWFudGl6ZV9pbml0X25lb24ocywgYml0ZXhhY3QpOwogI2VuZGlmCiAKICNp
ZiBBUkNIX0FSTQotICAgIGZmX21wdl9jb21tb25faW5pdF9hcm0ocyk7CisgICAgZmZfbXB2X3Vu
cXVhbnRpemVfaW5pdF9hcm0ocywgYml0ZXhhY3QpOwogI2VsaWYgQVJDSF9QUEMKLSAgICBmZl9t
cHZfY29tbW9uX2luaXRfcHBjKHMpOworICAgIGZmX21wdl91bnF1YW50aXplX2luaXRfcHBjKHMs
IGJpdGV4YWN0KTsKICNlbGlmIEFSQ0hfWDg2Ci0gICAgZmZfbXB2X2NvbW1vbl9pbml0X3g4Nihz
KTsKKyAgICBmZl9tcHZfdW5xdWFudGl6ZV9pbml0X3g4NihzLCBiaXRleGFjdCk7CiAjZWxpZiBB
UkNIX01JUFMKLSAgICBmZl9tcHZfY29tbW9uX2luaXRfbWlwcyhzKTsKKyAgICBmZl9tcHZfdW5x
dWFudGl6ZV9pbml0X21pcHMocywgYml0ZXhhY3QsIHFfc2NhbGVfdHlwZSk7CiAjZW5kaWYKIH0K
ZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuaCBiL2xpYmF2Y29k
ZWMvbXBlZ3ZpZGVvX3VucXVhbnRpemUuaAppbmRleCAxZTc1OTA1NjFjLi4zZTZkOGFlZGY3IDEw
MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb191bnF1YW50aXplLmgKKysrIGIvbGliYXZj
b2RlYy9tcGVndmlkZW9fdW5xdWFudGl6ZS5oCkBAIC0yNSwxMyArMjUsMzggQEAKICNpZm5kZWYg
QVZDT0RFQ19NUEVHVklERU9fVU5RVUFOVElaRV9ICiAjZGVmaW5lIEFWQ09ERUNfTVBFR1ZJREVP
X1VOUVVBTlRJWkVfSAogCisjaW5jbHVkZSA8c3RkaW50Lmg+CisKKyNpbmNsdWRlICJjb25maWcu
aCIKKwogdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgTXBlZ0VuY0NvbnRleHQ7CiAKLXZv
aWQgZmZfbXB2X3VucXVhbnRpemVfaW5pdChNcGVnRW5jQ29udGV4dCAqcyk7Ci12b2lkIGZmX21w
dl9jb21tb25faW5pdF9hcm0oTXBlZ0VuY0NvbnRleHQgKnMpOwotdm9pZCBmZl9tcHZfY29tbW9u
X2luaXRfbmVvbihNcGVnRW5jQ29udGV4dCAqcyk7Ci12b2lkIGZmX21wdl9jb21tb25faW5pdF9w
cGMoTXBlZ0VuY0NvbnRleHQgKnMpOwotdm9pZCBmZl9tcHZfY29tbW9uX2luaXRfeDg2KE1wZWdF
bmNDb250ZXh0ICpzKTsKLXZvaWQgZmZfbXB2X2NvbW1vbl9pbml0X21pcHMoTXBlZ0VuY0NvbnRl
eHQgKnMpOwordHlwZWRlZiBzdHJ1Y3QgTVBWVW5xdWFudERTUENvbnRleHQgeworICAgIHZvaWQg
KCpkY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRyYSkoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2svKmFsaWduIDE2Ki8sIGlu
dCBuLCBpbnQgcXNjYWxlKTsKKyAgICB2b2lkICgqZGN0X3VucXVhbnRpemVfbXBlZzFfaW50ZXIp
KHN0cnVjdCBNcGVnRW5jQ29udGV4dCAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dDE2X3QgKmJsb2NrLyphbGlnbiAxNiovLCBpbnQgbiwgaW50IHFzY2FsZSk7CisgICAgdm9pZCAo
KmRjdF91bnF1YW50aXplX21wZWcyX2ludHJhKShzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgKnMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQxNl90ICpibG9jay8qYWxpZ24gMTYqLywgaW50
IG4sIGludCBxc2NhbGUpOworICAgIHZvaWQgKCpkY3RfdW5xdWFudGl6ZV9tcGVnMl9pbnRlciko
c3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
MTZfdCAqYmxvY2svKmFsaWduIDE2Ki8sIGludCBuLCBpbnQgcXNjYWxlKTsKKyAgICB2b2lkICgq
ZGN0X3VucXVhbnRpemVfaDI2M19pbnRyYSkoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZfdCAqYmxvY2svKmFsaWduIDE2Ki8sIGludCBu
LCBpbnQgcXNjYWxlKTsKKyAgICB2b2lkICgqZGN0X3VucXVhbnRpemVfaDI2M19pbnRlcikoc3Ry
dWN0IE1wZWdFbmNDb250ZXh0ICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZf
dCAqYmxvY2svKmFsaWduIDE2Ki8sIGludCBuLCBpbnQgcXNjYWxlKTsKK30gTVBWVW5xdWFudERT
UENvbnRleHQ7CisKKyNpZiAhQVJDSF9NSVBTCisjZGVmaW5lIGZmX21wdl91bnF1YW50aXplX2lu
aXQocywgYml0ZXhhY3QsIHFfc2NhbGVfdHlwZSkgZmZfbXB2X3VucXVhbnRpemVfaW5pdChzLCBi
aXRleGFjdCkKKyNlbmRpZgorCit2b2lkIGZmX21wdl91bnF1YW50aXplX2luaXQoTVBWVW5xdWFu
dERTUENvbnRleHQgKnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJpdGV4YWN0
LCBpbnQgcV9zY2FsZV90eXBlKTsKK3ZvaWQgZmZfbXB2X3VucXVhbnRpemVfaW5pdF9hcm0gKE1Q
VlVucXVhbnREU1BDb250ZXh0ICpzLCBpbnQgYml0ZXhhY3QpOwordm9pZCBmZl9tcHZfdW5xdWFu
dGl6ZV9pbml0X25lb24oTVBWVW5xdWFudERTUENvbnRleHQgKnMsIGludCBiaXRleGFjdCk7Cit2
b2lkIGZmX21wdl91bnF1YW50aXplX2luaXRfcHBjIChNUFZVbnF1YW50RFNQQ29udGV4dCAqcywg
aW50IGJpdGV4YWN0KTsKK3ZvaWQgZmZfbXB2X3VucXVhbnRpemVfaW5pdF94ODYgKE1QVlVucXVh
bnREU1BDb250ZXh0ICpzLCBpbnQgYml0ZXhhY3QpOwordm9pZCBmZl9tcHZfdW5xdWFudGl6ZV9p
bml0X21pcHMoTVBWVW5xdWFudERTUENvbnRleHQgKnMsIGludCBiaXRleGFjdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBxX3NjYWxlX3R5cGUpOwogCiAjZW5kaWYgLyog
QVZDT0RFQ19NUEVHVklERU9fVU5RVUFOVElaRV9IICovCmRpZmYgLS1naXQgYS9saWJhdmNvZGVj
L25lb24vbXBlZ3ZpZGVvLmMgYi9saWJhdmNvZGVjL25lb24vbXBlZ3ZpZGVvLmMKaW5kZXggYThi
MmEwNjA2ZC4uYTAyNzZhZDgwOCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9uZW9uL21wZWd2aWRl
by5jCisrKyBiL2xpYmF2Y29kZWMvbmVvbi9tcGVndmlkZW8uYwpAQCAtMTI1LDcgKzEyNSw3IEBA
IHN0YXRpYyB2b2lkIGRjdF91bnF1YW50aXplX2gyNjNfaW50cmFfbmVvbihNcGVnRW5jQ29udGV4
dCAqcywgaW50MTZfdCAqYmxvY2ssCiB9CiAKIAotYXZfY29sZCB2b2lkIGZmX21wdl9jb21tb25f
aW5pdF9uZW9uKE1wZWdFbmNDb250ZXh0ICpzKQorYXZfY29sZCB2b2lkIGZmX21wdl91bnF1YW50
aXplX2luaXRfbmVvbihNUFZVbnF1YW50RFNQQ29udGV4dCAqcywgaW50IGJpdGV4YWN0KQogewog
ICAgIGludCBjcHVfZmxhZ3MgPSBhdl9nZXRfY3B1X2ZsYWdzKCk7CiAKZGlmZiAtLWdpdCBhL2xp
YmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMgYi9saWJhdmNvZGVjL3BwYy9tcGVndmlk
ZW9fYWx0aXZlYy5jCmluZGV4IGE0NTVjYWRjNGIuLjhjYzIxM2VmZTQgMTAwNjQ0Ci0tLSBhL2xp
YmF2Y29kZWMvcHBjL21wZWd2aWRlb19hbHRpdmVjLmMKKysrIGIvbGliYXZjb2RlYy9wcGMvbXBl
Z3ZpZGVvX2FsdGl2ZWMuYwpAQCAtMTAzLDcgKzEwMyw3IEBAIHN0YXRpYyB2b2lkIGRjdF91bnF1
YW50aXplX2gyNjNfYWx0aXZlYyhNcGVnRW5jQ29udGV4dCAqcywKIAogI2VuZGlmIC8qIEhBVkVf
QUxUSVZFQyAqLwogCi1hdl9jb2xkIHZvaWQgZmZfbXB2X2NvbW1vbl9pbml0X3BwYyhNcGVnRW5j
Q29udGV4dCAqcykKK2F2X2NvbGQgdm9pZCBmZl9tcHZfdW5xdWFudGl6ZV9pbml0X3BwYyhNUFZV
bnF1YW50RFNQQ29udGV4dCAqcywgaW50IGJpdGV4YWN0KQogewogI2lmIEhBVkVfQUxUSVZFQwog
ICAgIGlmICghUFBDX0FMVElWRUMoYXZfZ2V0X2NwdV9mbGFncygpKSkKZGlmZiAtLWdpdCBhL2xp
YmF2Y29kZWMveDg2L21wZWd2aWRlby5jIGIvbGliYXZjb2RlYy94ODYvbXBlZ3ZpZGVvLmMKaW5k
ZXggMTFhNWVlNDc0Yi4uMjRmMWUxNDAwNyAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy94ODYvbXBl
Z3ZpZGVvLmMKKysrIGIvbGliYXZjb2RlYy94ODYvbXBlZ3ZpZGVvLmMKQEAgLTQ1MCw3ICs0NTAs
NyBAQCBfX2FzbV9fIHZvbGF0aWxlKAogCiAjZW5kaWYgLyogSEFWRV9NTVhfSU5MSU5FICovCiAK
LWF2X2NvbGQgdm9pZCBmZl9tcHZfY29tbW9uX2luaXRfeDg2KE1wZWdFbmNDb250ZXh0ICpzKQor
YXZfY29sZCB2b2lkIGZmX21wdl91bnF1YW50aXplX2luaXRfeDg2KE1QVlVucXVhbnREU1BDb250
ZXh0ICpzLCBpbnQgYml0ZXhhY3QpCiB7CiAjaWYgSEFWRV9NTVhfSU5MSU5FCiAgICAgaW50IGNw
dV9mbGFncyA9IGF2X2dldF9jcHVfZmxhZ3MoKTsKQEAgLTQ2MCw3ICs0NjAsNyBAQCBhdl9jb2xk
IHZvaWQgZmZfbXB2X2NvbW1vbl9pbml0X3g4NihNcGVnRW5jQ29udGV4dCAqcykKICAgICAgICAg
cy0+ZGN0X3VucXVhbnRpemVfaDI2M19pbnRlciA9IGRjdF91bnF1YW50aXplX2gyNjNfaW50ZXJf
bW14OwogICAgICAgICBzLT5kY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRyYSA9IGRjdF91bnF1YW50
aXplX21wZWcxX2ludHJhX21teDsKICAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfbXBlZzFfaW50
ZXIgPSBkY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRlcl9tbXg7Ci0gICAgICAgIGlmICghKHMtPmF2
Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfQklURVhBQ1QpKQorICAgICAgICBpZiAoIWJpdGV4
YWN0KQogICAgICAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfbXBlZzJfaW50cmEgPSBkY3RfdW5x
dWFudGl6ZV9tcGVnMl9pbnRyYV9tbXg7CiAgICAgICAgIHMtPmRjdF91bnF1YW50aXplX21wZWcy
X2ludGVyID0gZGN0X3VucXVhbnRpemVfbXBlZzJfaW50ZXJfbW14OwogICAgIH0KLS0gCjIuNDUu
MgoK

--------------PyKgxVR1YM9xYOGqePwE4Dc1
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

--------------PyKgxVR1YM9xYOGqePwE4Dc1--