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 D32FD43D2C for <ffmpegdev@gitmailbox.com>; Wed, 19 Mar 2025 21:19:00 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 78FDE687B4D; Wed, 19 Mar 2025 23:18:56 +0200 (EET) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2032.outbound.protection.outlook.com [40.92.89.32]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B5ED368097C for <ffmpeg-devel@ffmpeg.org>; Wed, 19 Mar 2025 23:18:48 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=br29pKLQ23G7AAnJabpqc2+s/eJF4YGoIH21IjsBcQMkrZaCsmuD8BBHgzXZ97yXcJ07r/215So1ACAGDImlU4yI+za4ewDlKN7oUXfyXZ+CAtEirIXKaoPTHHkjA5esvH+y9gQ9XzvFFh4RRSJTy2PZOaabqAWHrGEKFJMZsi2lyii4enDUfHrkdr5tUMNkzkdgh/rjrUcLAHWmpxkpJc/Q4B28SbHxI9No2SELDgTzC6+zaY1x+SiCeByc4F1lxdcFasX6JVuk6baoUVDciYB9atDCtWScRZ13k7rQs1YuIqvaxe/DZjasXaQBVUA/4aytT2LvuN9Q+pGLCPp0+Q== 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=B/lYdxKkik+jRrj0rQvUmpp9lrD5df4BT9lXPmMoYGQ=; b=Pd/uJ00xJLx+dxYdoRHbfidlZsiUOS7x1c8SQ5QSOPo0wbMyMB/Wd2/Bcy/qWSE3y6l5jpKWZLF39/R03k7gZT80ztL5KO/o0FuyzA5mtqjDG1NkYYVeuoFmKZcxC1bGcgQgGrMVF+5WjP/z4EVbKQO2TDcWDtQWYc6MBaYFJACM0Q4CltblrCHu7OCzU38lC/Bf5URsTI74XNOow0rciIi2Y1rodHwot92cG0xHj65nPJW4px+bAD/kmursMxny+A/Kaj77b7giDEjp0P6tlMWp6RBRRrwhDDEqPcbXYYpUtY8AYoItv4/rrgDwtxPEOdYjOki8tzsdY+mbpGRXKQ== 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=B/lYdxKkik+jRrj0rQvUmpp9lrD5df4BT9lXPmMoYGQ=; b=f+j5SWO80jRholyVatcOetXU1TXk/skrP8yx3u5TWxhNE9f2rCh+ufDgTCYzdJzKeBYUCm1sCALVgNMxAsmUrKfff/LCrvnS4zSyRu2PlvIbDGBRsQ3iHjK3RiRY3OBqhlsqky51Dk4/gufx+COWHsSara1llVfYufuiR3ZuH+I6hqa9OLFVpCHevC99BgDyHOx1YQlW0sEPrcQWZLn4+YngvuPyVxa61AVGH7ekeBOc3k7R8dEp0fx9kt0F42EeKDe4y+KczVk7E31BhdNhOV8j/3CUrE0KP3jC/2AbZPxwMI5+p8hAbS7bGs8QhlzBF3VZ6kUqkBfXHrBSsAACVQ== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by GV2P250MB0850.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:ae::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.33; Wed, 19 Mar 2025 21:18:43 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%5]) with mapi id 15.20.8534.034; Wed, 19 Mar 2025 21:18:43 +0000 Content-Type: multipart/mixed; boundary="------------PzUc6nAvbCeik5GlmZwMxh8X" Message-ID: <AS8P250MB0744A8DBC25ABEC4F82344B58FD92@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM> Date: Wed, 19 Mar 2025 22:18:38 +0100 User-Agent: Mozilla Thunderbird Content-Language: en-US To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> X-ClientProxiedBy: ZR2P278CA0051.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:53::6) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <17aed332-158a-4db5-9267-c7aecd104ffd@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|GV2P250MB0850:EE_ X-MS-Office365-Filtering-Correlation-Id: 0a4a08d1-72c6-4aa9-128a-08dd672b9eee X-Microsoft-Antispam: BCL:0; ARA:14566002|19110799003|15080799006|5072599009|7092599003|6092099012|461199028|12121999004|8060799006|1602099012|4302099013|440099028|3412199025|20055399003|41001999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?SFlGUDRwUkYySElIRHN0bFhrdDZCSHd0M1IrZWowQzRMV1VGd0dZSWZCM3VS?= =?utf-8?B?SzZseVNnYU5jUGh2czJ0aHA0ZFRzY1dNSGlMYkFTVUZPRDlXZXZzUHJSQkpI?= =?utf-8?B?V0s3YjhQcnVsU3poQlBWaW1TSVRmdkRkdUp1UVJMbi83TWRtUkUvekN5UmVs?= =?utf-8?B?bjFNTG1lR3RjbEhaSmdEdGJvb2o1R1FiOUN2bHB5cFpQUkR6OGhiYm1iWnBs?= =?utf-8?B?eVlhWkNYU201Zkl1Zzh4UzV1MFZOL2dXNHY2Y1YvR1EvZytYUUtaa3Y0cWpD?= =?utf-8?B?RXhMOFp1dEcvVmtnQjFIaXI5U3E5YVJ1bVpYVTc1Z3hiVmg5ZnRkMzdGbXNI?= =?utf-8?B?UEVxRzRHbm5jNjE0OTZaQnpRUG1WN25pUU1selcyOVorVG9LQklDd01rOVYy?= =?utf-8?B?NWtWeDdFOG1MeGtMRkNWeUU0NktzTFJRakd5cWRvdHpyYWJnY2oyaGJodjUv?= =?utf-8?B?RVRMSU9PU2dGSkVFTUdidXNwU0dsQjRkRXdJVzUwL2xoSktGRHkzMWhiYkJx?= =?utf-8?B?Qk9JM2lwa28wMnBENjVENkpiTTFveWY4RWVsb0dsSElaeVBuR214Ni9JdVAv?= =?utf-8?B?TkVycDlQamhudWg3cVdqV3JxZWlKRmpRa1VlYUQvdENLTi9lZWxONzI5d0Zz?= =?utf-8?B?Mm5RcFJXN2xOMzNBK3J4UnJoV25VTFdjQURLbXBLY3VYMnUyeDJaVHBJZTNZ?= =?utf-8?B?T0lhM0pJb24vajJ1b3h2bjRjczMzMlE4SzQxcUh6aUhmOEhWVkhEbHVHei9Z?= =?utf-8?B?S2dTRE9xSlNlNkU4b1FkUFB3UTUyS3FPTVJOUUkvQklPakNkUTNuSjRQdmR6?= =?utf-8?B?MXl4eVFnQ09XS0VTZzI4YmFYQ2NjZUVpU3ZvbDVCd1JBbXcwRDF5VmNMY0ty?= =?utf-8?B?WWNsL2FCTjhYYTdyTEVUZll1eUxxZGtueHUyOWl6TlgxYjVnUkxybFVwZUlu?= =?utf-8?B?T2cvRzQ4U0R4K0cvMU5ZNFdpTWkzVmt1Q2tqNTBBbkI2QityMlIrT2NVVmZN?= =?utf-8?B?VVliTGdIRG5hek9tekJKdmE5WTJhaGRPcFhSSDdzZFZWL0dJZjZOa1lOU0Ix?= =?utf-8?B?b3VoQWVvY1ZkNEpoZFlvVXZ5N0F1eG1uemFuMklMYm5jQTlpcFJaYVB1RW1m?= =?utf-8?B?TElURXJDT2tySDFWM0p5Z2x0QThCanAyVGFHVTVEUGZVMTdQa1pJWWV1QU9W?= =?utf-8?B?OExEcWRKaDdlcndSckQ2aWRmYWd0cnlEQ0grVENkWTZTNjFKQXk5NWhvemtN?= =?utf-8?B?VnN0YXlnQzJDQkM1eTNjb05tUk81M3IwNlkrRFh6enQrTS81U0QrK1VLemRW?= =?utf-8?B?WHpldW5oZXdMZ0xBbEc1bjdnNHFjeHFhRkRYYUphZkdaYkRhaUVlMzVSUDhx?= =?utf-8?B?VlJpaVN3cmRzRWhSZDNZUDFUU01CbDQxbEZZMlNIYXpPZFhnS1d3bmhnU1NP?= =?utf-8?B?bXhzMTNzaThaL1FZQ3NFc05TbDQ2bC9pNVBwa1JOYVB2dS9EVEE5MFh4TTJ4?= =?utf-8?B?eWFkMW45aHVzOUdzdklSdEZGMmxHZTJib0NxbUZQWTcxS0lhTkZtV1QwRjd0?= =?utf-8?B?dXZOWEFieG9QUVVVKy9nVGVXTHNqMkFkdDc2Q3ZwNHVDY1JHSmlXQUppV0s2?= =?utf-8?B?MzZ1anB1c3I5Q3BodmxEYlNKV25qTUMrZ01uNTI2aXVIVHk4aE5Za1lZQ2lV?= =?utf-8?B?MWZwQlRWblhRSU0vaEMxWlN0aTNzSjdaZHVkSWRXRE80aTl2anluSDBUWVk3?= =?utf-8?B?MGJpNFI0YkNQdEVQNi8wU2JEOWhJSmhFS0FZUjZERmI1SU1GT1JIRHEzQWYy?= =?utf-8?B?eVdQelhzY0U4aWFlSGoyT2RaU2U5SElLb0lxbVRaTGNWS1V4dVdlb1dWZFBW?= =?utf-8?Q?h1Sf3DUmlYeCN?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?b1Q0UWIwR3BtblVxald4ZXBReS81eDZwZHl3Y21kR0EySXJyRGgxTERLSktK?= =?utf-8?B?aHByWitOYjhuZG5SZjM2d2JQeDExOGZFaXF6bHZJSFpNdUtNOGp0Rm9aZnlt?= =?utf-8?B?aDU3WjlyY2Y2VU9MZnFuMmdTdDdETFlEUG9XVWtTOFFmZjdNWXJiYjhzRTkz?= =?utf-8?B?L2dBSEVzeDdDV0R1c01zU1RrVVVENlU1TDZkY05vbXRyN3NWQnVkVFZDc2tr?= =?utf-8?B?bnFydGpoTkdxc083bCt5SFgxbTM4eGk3aC9kRFgzQXVmK1JDRDExRkFEekZL?= =?utf-8?B?NWNlVENhUnQ1MGFCN0tsMDRvSUZCTFIwZmZDQ0ovcGpoSHVkdU1nWTB6RjYw?= =?utf-8?B?cUJXZFJkOVJjVnNldUkxN0t6R3dDYit2YXJiaXhDUnQwQUxpMUNBMllKRm5X?= =?utf-8?B?Ui9tTjV0Y2xPTXZxTnBHS0NmZ3p1RDB4R0Y4bFVHUlNrQ0l5YkhVMjhrMGMz?= =?utf-8?B?ZUx5UmVBUittMUxjMW4zb1lzU2JwMHhkdmk2Z3Znb00zSkx5SFR0bXRleERB?= =?utf-8?B?bWFMQTFHUTZJOGJrMlNtOGpCMHEwa2lnaVN0QTY2NG9uNnhxR1JkTXorbGJv?= =?utf-8?B?VmR3em9qSXlFM01ZOFJiYzhFQ2pHQW5xTzh3UnorNmhOL1BCenZxcGRUeThB?= =?utf-8?B?QXc4cktsb2F0NDMwVmxvZ0hqaUdacHExbk15RXJZMVhLVWNrd2pmS0ovSXpS?= =?utf-8?B?Nm83WWJqS293bG5aZlQybmtpZHc3NFZScFNHQzBUM2Z1dE0vR0NFVjRNbm1S?= =?utf-8?B?c2tBUWo2ODI0TVRHaUJ1bDMrSm5KTXhqQW5rNElFRzF6YU5XRExRdjZNNGd5?= =?utf-8?B?eTkvVnZjVzlybVdEWUF6eDRrSjJ3RWc2aitucGFaK3BUZHpCdW1UUERwUGlR?= =?utf-8?B?cnhrQjhnWkh4aUFJTmF2R1VRdmVqbENKUG96Q1RndDJDbGxxWjV4MmZ2Znly?= =?utf-8?B?aXRza2Yvc3h1R0lEbUF0K2xSL0VIZlh0bWRlVkhsb0M0TElJSzE5bUppb3FJ?= =?utf-8?B?enhGL1Q5TGVBQ0JzdU56Tlh6U0Rpa3RTVW82YzBBc3JXSDRvN2Rsc1Y4NjhJ?= =?utf-8?B?ZlNVVXBkcytKaWdGYUtCRUFpb3FIekdzVzFNcDRDWkZiQ0xWRmMvVnRJdVEy?= =?utf-8?B?TlNNZTFNNytWN0pMWksybHg0eDV3UTdIeVczK2hjQ1VxaitIbC90VC9HdWdh?= =?utf-8?B?VEV1RDVhRVRUeXBCTFo2R1laWlR6dVA5Z1lVRDFWMUF1Zjh6SGFBN2ZXVWsy?= =?utf-8?B?MTJYN3RNdVRZS3NCKzNrSXBydGZwL0hsT1p4VUkxVEcwK3YzVlVxQkRHQ2JH?= =?utf-8?B?UE5oNWEwWE91cmtSQktMNjVFcWpLbndPMUIralduY2JkMk90cjlWL3p3Tyti?= =?utf-8?B?c1BJdE9xb3NyNUg3YjdXZGMvRHRtcTNqRmFXeUFpbXdvbWp6eVBzU1pqTUhs?= =?utf-8?B?Y09FSGQzb0Zlajd4OTZEOUJYdUhsemFpUGYwNm5pd0NqQ0JwdStZcVB6aCt3?= =?utf-8?B?VmRmQ3owQVRrOVgzR1R5ZURNTHBHaVBsK2U4OVREZlNoS3NZOENwS0hqQzFM?= =?utf-8?B?SWVQNkFZUFFXKzdsQVdQeEZ4RHhhNHBrOEdTcjUyeURrZGNLUzlDMXhkSVd0?= =?utf-8?B?ZWlMak5tN2VqUnNNS3E4b3UwVGRBWGx3Q3VIK1J3L2ZkNzN1S1ZhbkxIYlEr?= =?utf-8?B?YzNMdVowTHlKanBJUFQ4Q0RJQThtRnlJVkkyTUNDcm5NUjhCMVNnWGZBPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0a4a08d1-72c6-4aa9-128a-08dd672b9eee X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Mar 2025 21:18:41.0876 (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: GV2P250MB0850 Subject: [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/AS8P250MB0744A8DBC25ABEC4F82344B58FD92@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM/> List-Archive: <https://master.gitmailbox.com/ffmpegdev/> List-Post: <mailto:ffmpegdev@gitmailbox.com> --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit 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 - Andreas --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0001-avcodec-mpegvideo-_enc-Mark-init-close-functions-as-.patch" Content-Disposition: attachment; filename*0="0001-avcodec-mpegvideo-_enc-Mark-init-close-functions-as-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBiMjMyYzM3ZTIxZTdhODc1OTU0NmY4MjFlMTk4ZWY4M2NmNTQ4YTJmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAwNDo1ODoyNyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDEvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvKF9lbmMpPzogTWFyayBpbml0LCBj bG9zZSBmdW5jdGlvbnMgYXMKIGF2X2NvbGQKClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5o YXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBl Z3ZpZGVvLmMgICAgIHwgMTYgKysrKysrKystLS0tLS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9f ZW5jLmMgfCAgNCArKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDEwIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMgYi9saWJhdmNv ZGVjL21wZWd2aWRlby5jCmluZGV4IGYxMTRkZDhjMGMuLjRiNjliNWI2NWMgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uYwpAQCAt MzQ5LDcgKzM0OSw3IEBAIGF2X2NvbGQgdm9pZCBmZl9tcHZfaWRjdF9pbml0KE1wZWdFbmNDb250 ZXh0ICpzKQogI2VuZGlmCiB9CiAKLXN0YXRpYyBpbnQgaW5pdF9kdXBsaWNhdGVfY29udGV4dChN cGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyBhdl9jb2xkIGludCBpbml0X2R1cGxpY2F0ZV9jb250 ZXh0KE1wZWdFbmNDb250ZXh0ICpzKQogewogICAgIGlmIChzLT5lbmNvZGluZykgewogICAgICAg ICBzLT5tZS5tYXAgPSBhdl9tYWxsb2N6KDIgKiBNRV9NQVBfU0laRSAqIHNpemVvZigqcy0+bWUu bWFwKSk7CkBAIC0zODMsNyArMzgzLDcgQEAgc3RhdGljIGludCBpbml0X2R1cGxpY2F0ZV9jb250 ZXh0KE1wZWdFbmNDb250ZXh0ICpzKQogICAgIHJldHVybiAwOwogfQogCi1pbnQgZmZfbXB2X2lu aXRfZHVwbGljYXRlX2NvbnRleHRzKE1wZWdFbmNDb250ZXh0ICpzKQorYXZfY29sZCBpbnQgZmZf bXB2X2luaXRfZHVwbGljYXRlX2NvbnRleHRzKE1wZWdFbmNDb250ZXh0ICpzKQogewogICAgIGlu dCBuYl9zbGljZXMgPSBzLT5zbGljZV9jb250ZXh0X2NvdW50LCByZXQ7CiAKQEAgLTQwNyw3ICs0 MDcsNyBAQCBpbnQgZmZfbXB2X2luaXRfZHVwbGljYXRlX2NvbnRleHRzKE1wZWdFbmNDb250ZXh0 ICpzKQogICAgIHJldHVybiBpbml0X2R1cGxpY2F0ZV9jb250ZXh0KHMpOwogfQogCi1zdGF0aWMg dm9pZCBmcmVlX2R1cGxpY2F0ZV9jb250ZXh0KE1wZWdFbmNDb250ZXh0ICpzKQorc3RhdGljIGF2 X2NvbGQgdm9pZCBmcmVlX2R1cGxpY2F0ZV9jb250ZXh0KE1wZWdFbmNDb250ZXh0ICpzKQogewog ICAgIGlmICghcykKICAgICAgICAgcmV0dXJuOwpAQCAtNDI2LDcgKzQyNiw3IEBAIHN0YXRpYyB2 b2lkIGZyZWVfZHVwbGljYXRlX2NvbnRleHQoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgcy0+Ymxv Y2sgPSBOVUxMOwogfQogCi1zdGF0aWMgdm9pZCBmcmVlX2R1cGxpY2F0ZV9jb250ZXh0cyhNcGVn RW5jQ29udGV4dCAqcykKK3N0YXRpYyBhdl9jb2xkIHZvaWQgZnJlZV9kdXBsaWNhdGVfY29udGV4 dHMoTXBlZ0VuY0NvbnRleHQgKnMpCiB7CiAgICAgZm9yIChpbnQgaSA9IDE7IGkgPCBzLT5zbGlj ZV9jb250ZXh0X2NvdW50OyBpKyspIHsKICAgICAgICAgZnJlZV9kdXBsaWNhdGVfY29udGV4dChz LT50aHJlYWRfY29udGV4dFtpXSk7CkBAIC00OTcsNyArNDk3LDcgQEAgYXZfY29sZCB2b2lkIGZm X21wdl9jb21tb25fZGVmYXVsdHMoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgcy0+c2xpY2VfY29u dGV4dF9jb3VudCAgID0gMTsKIH0KIAotc3RhdGljIHZvaWQgZnJlZV9idWZmZXJfcG9vbHMoQnVm ZmVyUG9vbENvbnRleHQgKnBvb2xzKQorc3RhdGljIGF2X2NvbGQgdm9pZCBmcmVlX2J1ZmZlcl9w b29scyhCdWZmZXJQb29sQ29udGV4dCAqcG9vbHMpCiB7CiAgICAgYXZfcmVmc3RydWN0X3Bvb2xf dW5pbml0KCZwb29scy0+bWJza2lwX3RhYmxlX3Bvb2wpOwogICAgIGF2X3JlZnN0cnVjdF9wb29s X3VuaW5pdCgmcG9vbHMtPnFzY2FsZV90YWJsZV9wb29sKTsKQEAgLTUwNyw3ICs1MDcsNyBAQCBz dGF0aWMgdm9pZCBmcmVlX2J1ZmZlcl9wb29scyhCdWZmZXJQb29sQ29udGV4dCAqcG9vbHMpCiAg ICAgcG9vbHMtPmFsbG9jX21iX2hlaWdodCA9IHBvb2xzLT5hbGxvY19tYl93aWR0aCA9IHBvb2xz LT5hbGxvY19tYl9zdHJpZGUgPSAwOwogfQogCi1pbnQgZmZfbXB2X2luaXRfY29udGV4dF9mcmFt ZShNcGVnRW5jQ29udGV4dCAqcykKK2F2X2NvbGQgaW50IGZmX21wdl9pbml0X2NvbnRleHRfZnJh bWUoTXBlZ0VuY0NvbnRleHQgKnMpCiB7CiAgICAgQnVmZmVyUG9vbENvbnRleHQgKmNvbnN0IHBv b2xzID0gJnMtPmJ1ZmZlcl9wb29sczsKICAgICBpbnQgeV9zaXplLCBjX3NpemUsIHljX3NpemUs IGksIG1iX2FycmF5X3NpemUsIG12X3RhYmxlX3NpemUsIHgsIHk7CkBAIC03NDQsNyArNzQ0LDcg QEAgYXZfY29sZCBpbnQgZmZfbXB2X2NvbW1vbl9pbml0KE1wZWdFbmNDb250ZXh0ICpzKQogICAg IHJldHVybiByZXQ7CiB9CiAKLXZvaWQgZmZfbXB2X2ZyZWVfY29udGV4dF9mcmFtZShNcGVnRW5j Q29udGV4dCAqcykKK2F2X2NvbGQgdm9pZCBmZl9tcHZfZnJlZV9jb250ZXh0X2ZyYW1lKE1wZWdF bmNDb250ZXh0ICpzKQogewogICAgIGZyZWVfZHVwbGljYXRlX2NvbnRleHRzKHMpOwogCkBAIC03 NjksNyArNzY5LDcgQEAgdm9pZCBmZl9tcHZfZnJlZV9jb250ZXh0X2ZyYW1lKE1wZWdFbmNDb250 ZXh0ICpzKQogICAgIHMtPmxpbmVzaXplID0gcy0+dXZsaW5lc2l6ZSA9IDA7CiB9CiAKLXZvaWQg ZmZfbXB2X2NvbW1vbl9lbmQoTXBlZ0VuY0NvbnRleHQgKnMpCithdl9jb2xkIHZvaWQgZmZfbXB2 X2NvbW1vbl9lbmQoTXBlZ0VuY0NvbnRleHQgKnMpCiB7CiAgICAgZmZfbXB2X2ZyZWVfY29udGV4 dF9mcmFtZShzKTsKICAgICBpZiAocy0+c2xpY2VfY29udGV4dF9jb3VudCA+IDEpCmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2Vu Yy5jCmluZGV4IDQ5M2EzZWRkZTYuLjcyMGRlZDQ5YzIgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCkBAIC0yNjgs NyArMjY4LDcgQEAgc3RhdGljIHZvaWQgdXBkYXRlX2R1cGxpY2F0ZV9jb250ZXh0X2FmdGVyX21l KE1wZWdFbmNDb250ZXh0ICpkc3QsCiAjdW5kZWYgQ09QWQogfQogCi1zdGF0aWMgdm9pZCBtcHZf ZW5jb2RlX2luaXRfc3RhdGljKHZvaWQpCitzdGF0aWMgYXZfY29sZCB2b2lkIG1wdl9lbmNvZGVf aW5pdF9zdGF0aWModm9pZCkKIHsKICAgIGZvciAoaW50IGkgPSAtMTY7IGkgPCAxNjsgaSsrKQog ICAgICAgICBkZWZhdWx0X2Zjb2RlX3RhYltpICsgTUFYX01WXSA9IDE7CkBAIC0yNzgsNyArMjc4 LDcgQEAgc3RhdGljIHZvaWQgbXB2X2VuY29kZV9pbml0X3N0YXRpYyh2b2lkKQogICogU2V0IHRo ZSBnaXZlbiBNcGVnRW5jQ29udGV4dCB0byBkZWZhdWx0cyBmb3IgZW5jb2RpbmcuCiAgKiB0aGUg Y2hhbmdlZCBmaWVsZHMgd2lsbCBub3QgZGVwZW5kIHVwb24gdGhlIHByaW9yIHN0YXRlIG9mIHRo ZSBNcGVnRW5jQ29udGV4dC4KICAqLwotc3RhdGljIHZvaWQgbXB2X2VuY29kZV9kZWZhdWx0cyhN cGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyBhdl9jb2xkIHZvaWQgbXB2X2VuY29kZV9kZWZhdWx0 cyhNcGVnRW5jQ29udGV4dCAqcykKIHsKICAgICBzdGF0aWMgQVZPbmNlIGluaXRfc3RhdGljX29u Y2UgPSBBVl9PTkNFX0lOSVQ7CiAKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0002-avcodec-mpegvideoenc-Add-MPVMainEncContext.patch" Content-Disposition: attachment; filename="0002-avcodec-mpegvideoenc-Add-MPVMainEncContext.patch" Content-Transfer-Encoding: base64 RnJvbSAwNWY1MjMzMTg4MmFjNTFiNTg5YmRlNWJiNzEwZDUxMjE5NDUzYTVmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAyOCBGZWIgMjAyNSAxODo1NjoxNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDIvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvZW5jOiBBZGQgTVBWTWFpbkVuY0Nv bnRleHQKClRoaXMgaXMgaW4gcHJlcGFyYXRpb24gZm9yIG1vdmluZyBhbGwgdGhlIGVsZW1lbnRz IGZyb20KTXBlZ0VuY0NvbnRleHQgdGhhdCBhcmUgb25seSB1c2VkIGJ5IHRoZSBtYWluIGVuY29k ZXIgdGhyZWFkCnRvIE1QVk1haW5FbmNDb250ZXh0LgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBS aGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2Rl Yy9mbHZlbmMuYyAgICAgICAgfCAyICstCiBsaWJhdmNvZGVjL2gyNjFlbmMuYyAgICAgICB8IDQg KystLQogbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMgICAgfCA0ICsrLS0KIGxpYmF2Y29kZWMvbWpw ZWdlbmMuYyAgICAgIHwgMiArLQogbGliYXZjb2RlYy9tcGVnMTJlbmMuYyAgICAgfCA0ICsrLS0K IGxpYmF2Y29kZWMvbXBlZzR2aWRlb2VuYy5jIHwgMiArLQogbGliYXZjb2RlYy9tcGVndmlkZW9l bmMuaCAgfCA0ICsrKysKIGxpYmF2Y29kZWMvbXNtcGVnNGVuYy5jICAgIHwgMiArLQogbGliYXZj b2RlYy9tc21wZWc0ZW5jLmggICAgfCA0ICsrLS0KIGxpYmF2Y29kZWMvcnYxMGVuYy5jICAgICAg IHwgMiArLQogbGliYXZjb2RlYy9ydjIwZW5jLmMgICAgICAgfCAyICstCiBsaWJhdmNvZGVjL3Nw ZWVkaHFlbmMuYyAgICB8IDIgKy0KIGxpYmF2Y29kZWMvd212MmVuYy5jICAgICAgIHwgNCArKy0t CiAxMyBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9saWJhdmNvZGVjL2ZsdmVuYy5jIGIvbGliYXZjb2RlYy9mbHZlbmMuYwppbmRl eCBiNmY5ZDFjNmRiLi4wY2QyMGYwMjZkIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2ZsdmVuYy5j CisrKyBiL2xpYmF2Y29kZWMvZmx2ZW5jLmMKQEAgLTg5LDcgKzg5LDcgQEAgY29uc3QgRkZDb2Rl YyBmZl9mbHZfZW5jb2RlciA9IHsKICAgICAucC5pZCAgICAgICAgICAgPSBBVl9DT0RFQ19JRF9G TFYxLAogICAgIC5wLnByaXZfY2xhc3MgICA9ICZmZl9tcHZfZW5jX2NsYXNzLAogICAgIC5wLmNh cGFiaWxpdGllcyA9IEFWX0NPREVDX0NBUF9EUjEgfCBBVl9DT0RFQ19DQVBfRU5DT0RFUl9SRU9S REVSRURfT1BBUVVFLAotICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNcGVnRW5jQ29udGV4 dCksCisgICAgLnByaXZfZGF0YV9zaXplID0gc2l6ZW9mKE1QVk1haW5FbmNDb250ZXh0KSwKICAg ICAuaW5pdCAgICAgICAgICAgPSBmZl9tcHZfZW5jb2RlX2luaXQsCiAgICAgRkZfQ09ERUNfRU5D T0RFX0NCKGZmX21wdl9lbmNvZGVfcGljdHVyZSksCiAgICAgLmNsb3NlICAgICAgICAgID0gZmZf bXB2X2VuY29kZV9lbmQsCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2gyNjFlbmMuYyBiL2xpYmF2 Y29kZWMvaDI2MWVuYy5jCmluZGV4IDM2NDM2ZWU2MGYuLjI2NGVmYjBhYTMgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvaDI2MWVuYy5jCisrKyBiL2xpYmF2Y29kZWMvaDI2MWVuYy5jCkBAIC01NSw3 ICs1NSw3IEBAIHN0YXRpYyB1aW50OF90IHVuaV9oMjYxX3JsX2xlbl9sYXN0WzY0ICogMTI4XTsK IHN0YXRpYyB1aW50OF90IGgyNjFfbXZfY29kZXNbNjRdWzJdOwogCiB0eXBlZGVmIHN0cnVjdCBI MjYxRW5jQ29udGV4dCB7Ci0gICAgTXBlZ0VuY0NvbnRleHQgczsKKyAgICBNUFZNYWluRW5jQ29u dGV4dCBzOwogCiAgICAgSDI2MUNvbnRleHQgY29tbW9uOwogCkBAIC0xNjcsNyArMTY3LDcgQEAg c3RhdGljIGlubGluZSBpbnQgZ2V0X2NicChNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9j a1s2XVs2NF0pCiAgKi8KIHN0YXRpYyB2b2lkIGgyNjFfZW5jb2RlX2Jsb2NrKEgyNjFFbmNDb250 ZXh0ICpoLCBpbnQxNl90ICpibG9jaywgaW50IG4pCiB7Ci0gICAgTXBlZ0VuY0NvbnRleHQgKmNv bnN0IHMgPSAmaC0+czsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZoLT5zLnM7CiAg ICAgaW50IGxldmVsLCBydW4sIGksIGosIGxhc3RfaW5kZXgsIGxhc3Rfbm9uX3plcm87CiAKICAg ICBpZiAocy0+bWJfaW50cmEpIHsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvaXR1aDI2M2VuYy5j IGIvbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMKaW5kZXggYTgxYmZiN2M3OS4uODI1YjM5ODQ1NSAx MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMKKysrIGIvbGliYXZjb2RlYy9pdHVo MjYzZW5jLmMKQEAgLTkwOCw3ICs5MDgsNyBAQCBjb25zdCBGRkNvZGVjIGZmX2gyNjNfZW5jb2Rl ciA9IHsKICAgICAucC5wcml2X2NsYXNzICAgPSAmaDI2M19jbGFzcywKICAgICAucC5jYXBhYmls aXRpZXMgPSBBVl9DT0RFQ19DQVBfRFIxIHwgQVZfQ09ERUNfQ0FQX0VOQ09ERVJfUkVPUkRFUkVE X09QQVFVRSwKICAgICAuY2Fwc19pbnRlcm5hbCAgPSBGRl9DT0RFQ19DQVBfSU5JVF9DTEVBTlVQ LAotICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNcGVnRW5jQ29udGV4dCksCisgICAgLnBy aXZfZGF0YV9zaXplID0gc2l6ZW9mKE1QVk1haW5FbmNDb250ZXh0KSwKICAgICAuaW5pdCAgICAg ICAgICAgPSBmZl9tcHZfZW5jb2RlX2luaXQsCiAgICAgRkZfQ09ERUNfRU5DT0RFX0NCKGZmX21w dl9lbmNvZGVfcGljdHVyZSksCiAgICAgLmNsb3NlICAgICAgICAgID0gZmZfbXB2X2VuY29kZV9l bmQsCkBAIC05NDEsNyArOTQxLDcgQEAgY29uc3QgRkZDb2RlYyBmZl9oMjYzcF9lbmNvZGVyID0g ewogICAgIC5wLmNhcGFiaWxpdGllcyA9IEFWX0NPREVDX0NBUF9EUjEgfCBBVl9DT0RFQ19DQVBf U0xJQ0VfVEhSRUFEUyB8CiAgICAgICAgICAgICAgICAgICAgICAgQVZfQ09ERUNfQ0FQX0VOQ09E RVJfUkVPUkRFUkVEX09QQVFVRSwKICAgICAuY2Fwc19pbnRlcm5hbCAgPSBGRl9DT0RFQ19DQVBf SU5JVF9DTEVBTlVQLAotICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNcGVnRW5jQ29udGV4 dCksCisgICAgLnByaXZfZGF0YV9zaXplID0gc2l6ZW9mKE1QVk1haW5FbmNDb250ZXh0KSwKICAg ICAuaW5pdCAgICAgICAgICAgPSBmZl9tcHZfZW5jb2RlX2luaXQsCiAgICAgRkZfQ09ERUNfRU5D T0RFX0NCKGZmX21wdl9lbmNvZGVfcGljdHVyZSksCiAgICAgLmNsb3NlICAgICAgICAgID0gZmZf bXB2X2VuY29kZV9lbmQsCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21qcGVnZW5jLmMgYi9saWJh dmNvZGVjL21qcGVnZW5jLmMKaW5kZXggMzBmMmM5OTAwZC4uMGEyZDZlZWJkMyAxMDA2NDQKLS0t IGEvbGliYXZjb2RlYy9tanBlZ2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbWpwZWdlbmMuYwpAQCAt NjQsNyArNjQsNyBAQCB0eXBlZGVmIHN0cnVjdCBNSnBlZ0h1ZmZtYW5Db2RlIHsKICAqIE1wZWdF bmNDb250ZXh0IGlzIGZvbGxvd2VkIGJ5IGEgTWpwZWdDb250ZXh0OyB0aGUgb3RoZXIgdGhyZWFk cwogICogY2FuIGFjY2VzcyB0aGlzIHNoYXJlZCBjb250ZXh0IHZpYSBNcGVnRW5jQ29udGV4dC5t anBlZy4gKi8KIHR5cGVkZWYgc3RydWN0IE1KUEVHRW5jQ29udGV4dCB7Ci0gICAgTXBlZ0VuY0Nv bnRleHQgbXBlZzsKKyAgICBNUFZNYWluRW5jQ29udGV4dCBtcGVnOwogICAgIE1KcGVnQ29udGV4 dCAgIG1qcGVnOwogfSBNSlBFR0VuY0NvbnRleHQ7CiAKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXBlZzEyZW5jLmMgYi9saWJhdmNvZGVjL21wZWcxMmVuYy5jCmluZGV4IDE1NjNjZWZkMjMuLmJi NjFiNGY0ZmUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKKysrIGIvbGliYXZj b2RlYy9tcGVnMTJlbmMuYwpAQCAtNzIsNyArNzIsNyBAQCBzdGF0aWMgdWludDMyX3QgbXBlZzFf bHVtX2RjX3VuaVs1MTJdOwogc3RhdGljIHVpbnQzMl90IG1wZWcxX2Nocl9kY191bmlbNTEyXTsK IAogdHlwZWRlZiBzdHJ1Y3QgTVBFRzEyRW5jQ29udGV4dCB7Ci0gICAgTXBlZ0VuY0NvbnRleHQg bXBlZzsKKyAgICBNUFZNYWluRW5jQ29udGV4dCBtcGVnOwogICAgIEFWUmF0aW9uYWwgZnJhbWVf cmF0ZV9leHQ7CiAgICAgdW5zaWduZWQgZnJhbWVfcmF0ZV9pbmRleDsKIApAQCAtMjAxLDcgKzIw MSw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZj dHgpCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAobXBlZzEyLT5tcGVnLnFfc2NhbGVfdHlw ZSA9PSAxKSB7CisgICAgaWYgKG1wZWcxMi0+bXBlZy5zLnFfc2NhbGVfdHlwZSA9PSAxKSB7CiAg ICAgICAgIGlmIChhdmN0eC0+cW1heCA+IDI4KSB7CiAgICAgICAgICAgICBhdl9sb2coYXZjdHgs IEFWX0xPR19FUlJPUiwKICAgICAgICAgICAgICAgICAgICAibm9uIGxpbmVhciBxdWFudCBvbmx5 IHN1cHBvcnRzIHFtYXggPD0gMjggY3VycmVudGx5XG4iKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29k ZWMvbXBlZzR2aWRlb2VuYy5jIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKaW5kZXggM2Iz MTI5MTViNC4uMTE4NzJmMjllYiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5j LmMKKysrIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKQEAgLTEzOTUsNyArMTM5NSw3IEBA IGNvbnN0IEZGQ29kZWMgZmZfbXBlZzRfZW5jb2RlciA9IHsKICAgICBDT0RFQ19MT05HX05BTUUo Ik1QRUctNCBwYXJ0IDIiKSwKICAgICAucC50eXBlICAgICAgICAgPSBBVk1FRElBX1RZUEVfVklE RU8sCiAgICAgLnAuaWQgICAgICAgICAgID0gQVZfQ09ERUNfSURfTVBFRzQsCi0gICAgLnByaXZf ZGF0YV9zaXplID0gc2l6ZW9mKE1wZWdFbmNDb250ZXh0KSwKKyAgICAucHJpdl9kYXRhX3NpemUg PSBzaXplb2YoTVBWTWFpbkVuY0NvbnRleHQpLAogICAgIC5pbml0ICAgICAgICAgICA9IGVuY29k ZV9pbml0LAogICAgIEZGX0NPREVDX0VOQ09ERV9DQihmZl9tcHZfZW5jb2RlX3BpY3R1cmUpLAog ICAgIC5jbG9zZSAgICAgICAgICA9IGZmX21wdl9lbmNvZGVfZW5kLApkaWZmIC0tZ2l0IGEvbGli YXZjb2RlYy9tcGVndmlkZW9lbmMuaCBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKaW5kZXgg NmRkMzgyYTNjNi4uZjdhYWQxNzY1MCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9l bmMuaAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCkBAIC0zMyw2ICszMywxMCBAQAog I2luY2x1ZGUgImxpYmF2dXRpbC9vcHQuaCIKICNpbmNsdWRlICJtcGVndmlkZW8uaCIKIAordHlw ZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgeworICAgIE1wZWdFbmNDb250ZXh0IHM7ICAv Ly88IFRoZSBtYWluIHNsaWNlY29udGV4dAorfSBNUFZNYWluRW5jQ29udGV4dDsKKwogI2RlZmlu ZSBNQVhfRkNPREUgICAgICAgIDcKICNkZWZpbmUgVU5JX0FDX0VOQ19JTkRFWChydW4sbGV2ZWwp ICgocnVuKSoxMjggKyAobGV2ZWwpKQogI2RlZmluZSBJTlBMQUNFX09GRlNFVCAxNgpkaWZmIC0t Z2l0IGEvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmMgYi9saWJhdmNvZGVjL21zbXBlZzRlbmMuYwpp bmRleCA4MzEwZTBhNTc4Li45OGI3MmU0ZDU4IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21zbXBl ZzRlbmMuYworKysgYi9saWJhdmNvZGVjL21zbXBlZzRlbmMuYwpAQCAtMTUxLDcgKzE1MSw3IEBA IGF2X2NvbGQgdm9pZCBmZl9tc21wZWc0X2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0ICpzKQog CiBzdGF0aWMgdm9pZCBmaW5kX2Jlc3RfdGFibGVzKE1TTVBFRzRFbmNDb250ZXh0ICptcykKIHsK LSAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtcy0+czsKKyAgICBNcGVnRW5jQ29udGV4 dCAqY29uc3QgcyA9ICZtcy0+bS5zOwogICAgIGludCBpOwogICAgIGludCBiZXN0ICAgICAgICA9 IDAsIGJlc3Rfc2l6ZSAgICAgICAgPSBJTlRfTUFYOwogICAgIGludCBjaHJvbWFfYmVzdCA9IDAs IGJlc3RfY2hyb21hX3NpemUgPSBJTlRfTUFYOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tc21w ZWc0ZW5jLmggYi9saWJhdmNvZGVjL21zbXBlZzRlbmMuaAppbmRleCBkYTlhNDViNTg5Li43Mjk5 MjE3NmRlIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21zbXBlZzRlbmMuaAorKysgYi9saWJhdmNv ZGVjL21zbXBlZzRlbmMuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjaWZuZGVmIEFWQ09ERUNfTVNN UEVHNEVOQ19ICiAjZGVmaW5lIEFWQ09ERUNfTVNNUEVHNEVOQ19ICiAKLSNpbmNsdWRlICJtcGVn dmlkZW8uaCIKKyNpbmNsdWRlICJtcGVndmlkZW9lbmMuaCIKICNpbmNsdWRlICJwdXRfYml0cy5o IgogI2luY2x1ZGUgInJsLmgiCiAKIHR5cGVkZWYgc3RydWN0IE1TTVBFRzRFbmNDb250ZXh0IHsK LSAgICBNcGVnRW5jQ29udGV4dCBzOworICAgIE1QVk1haW5FbmNDb250ZXh0IG07CiAKICAgICAv KiogW21iX2ludHJhXVtpc0Nocm9tYV1bbGV2ZWxdW3J1bl1bbGFzdF0gKi8KICAgICB1bnNpZ25l ZCBhY19zdGF0c1syXVsyXVtNQVhfTEVWRUwgKyAxXVtNQVhfUlVOICsgMV1bMl07CmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL3J2MTBlbmMuYyBiL2xpYmF2Y29kZWMvcnYxMGVuYy5jCmluZGV4IDUz NDYzZGQwNjguLmQ1NWZhN2MyYjAgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcnYxMGVuYy5jCisr KyBiL2xpYmF2Y29kZWMvcnYxMGVuYy5jCkBAIC03Miw3ICs3Miw3IEBAIGNvbnN0IEZGQ29kZWMg ZmZfcnYxMF9lbmNvZGVyID0gewogICAgIC5wLmlkICAgICAgICAgICA9IEFWX0NPREVDX0lEX1JW MTAsCiAgICAgLnAucHJpdl9jbGFzcyAgID0gJmZmX21wdl9lbmNfY2xhc3MsCiAgICAgLnAuY2Fw YWJpbGl0aWVzID0gQVZfQ09ERUNfQ0FQX0RSMSB8IEFWX0NPREVDX0NBUF9FTkNPREVSX1JFT1JE RVJFRF9PUEFRVUUsCi0gICAgLnByaXZfZGF0YV9zaXplID0gc2l6ZW9mKE1wZWdFbmNDb250ZXh0 KSwKKyAgICAucHJpdl9kYXRhX3NpemUgPSBzaXplb2YoTVBWTWFpbkVuY0NvbnRleHQpLAogICAg IC5pbml0ICAgICAgICAgICA9IGZmX21wdl9lbmNvZGVfaW5pdCwKICAgICBGRl9DT0RFQ19FTkNP REVfQ0IoZmZfbXB2X2VuY29kZV9waWN0dXJlKSwKICAgICAuY2xvc2UgICAgICAgICAgPSBmZl9t cHZfZW5jb2RlX2VuZCwKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcnYyMGVuYy5jIGIvbGliYXZj b2RlYy9ydjIwZW5jLmMKaW5kZXggY2YyN2ZmMDRlYS4uY2FjZGE2ZmRkYSAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy9ydjIwZW5jLmMKKysrIGIvbGliYXZjb2RlYy9ydjIwZW5jLmMKQEAgLTY5LDcg KzY5LDcgQEAgY29uc3QgRkZDb2RlYyBmZl9ydjIwX2VuY29kZXIgPSB7CiAgICAgLnAuaWQgICAg ICAgICAgID0gQVZfQ09ERUNfSURfUlYyMCwKICAgICAucC5wcml2X2NsYXNzICAgPSAmZmZfbXB2 X2VuY19jbGFzcywKICAgICAucC5jYXBhYmlsaXRpZXMgPSBBVl9DT0RFQ19DQVBfRFIxIHwgQVZf Q09ERUNfQ0FQX0VOQ09ERVJfUkVPUkRFUkVEX09QQVFVRSwKLSAgICAucHJpdl9kYXRhX3NpemUg PSBzaXplb2YoTXBlZ0VuY0NvbnRleHQpLAorICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihN UFZNYWluRW5jQ29udGV4dCksCiAgICAgLmluaXQgICAgICAgICAgID0gZmZfbXB2X2VuY29kZV9p bml0LAogICAgIEZGX0NPREVDX0VOQ09ERV9DQihmZl9tcHZfZW5jb2RlX3BpY3R1cmUpLAogICAg IC5jbG9zZSAgICAgICAgICA9IGZmX21wdl9lbmNvZGVfZW5kLApkaWZmIC0tZ2l0IGEvbGliYXZj b2RlYy9zcGVlZGhxZW5jLmMgYi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuYwppbmRleCA1MzZkZGMw YmYxLi5hMGJhYTg2OWNjIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3NwZWVkaHFlbmMuYworKysg Yi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuYwpAQCAtNTksNyArNTksNyBAQCBzdGF0aWMgdWludDMy X3Qgc3BlZWRocV9jaHJfZGNfdW5pWzUxMl07CiBzdGF0aWMgdWludDhfdCB1bmlfc3BlZWRocV9h Y192bGNfbGVuWzY0ICogNjQgKiAyXTsKIAogdHlwZWRlZiBzdHJ1Y3QgU3BlZWRIUUVuY0NvbnRl eHQgewotICAgIE1wZWdFbmNDb250ZXh0IG07CisgICAgTVBWTWFpbkVuY0NvbnRleHQgbTsKIAog ICAgIGludCBzbGljZV9zdGFydDsKIH0gU3BlZWRIUUVuY0NvbnRleHQ7CmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL3dtdjJlbmMuYyBiL2xpYmF2Y29kZWMvd212MmVuYy5jCmluZGV4IDgyNWFiOTFh MDUuLjMzNTY5YTZkMzkgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvd212MmVuYy5jCisrKyBiL2xp YmF2Y29kZWMvd212MmVuYy5jCkBAIC00OSw3ICs0OSw3IEBAIHR5cGVkZWYgc3RydWN0IFdNVjJF bmNDb250ZXh0IHsKIAogc3RhdGljIGludCBlbmNvZGVfZXh0X2hlYWRlcihXTVYyRW5jQ29udGV4 dCAqdykKIHsKLSAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZ3LT5tc21wZWc0LnM7Cisg ICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmdy0+bXNtcGVnNC5tLnM7CiAgICAgUHV0Qml0 Q29udGV4dCBwYjsKICAgICBpbnQgY29kZTsKIApAQCAtNzYsNyArNzYsNyBAQCBzdGF0aWMgaW50 IGVuY29kZV9leHRfaGVhZGVyKFdNVjJFbmNDb250ZXh0ICp3KQogc3RhdGljIGF2X2NvbGQgaW50 IHdtdjJfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogewogICAgIFdNVjJFbmND b250ZXh0ICpjb25zdCB3ID0gYXZjdHgtPnByaXZfZGF0YTsKLSAgICBNcGVnRW5jQ29udGV4dCAq Y29uc3QgcyA9ICZ3LT5tc21wZWc0LnM7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAm dy0+bXNtcGVnNC5tLnM7CiAKICAgICBzLT5wcml2YXRlX2N0eCA9ICZ3LT5jb21tb247CiAgICAg aWYgKGZmX21wdl9lbmNvZGVfaW5pdChhdmN0eCkgPCAwKQotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0003-avcodec-mpegvideoenc-Move-tmp-bframes-to-MPVMainEncC.patch" Content-Disposition: attachment; filename*0="0003-avcodec-mpegvideoenc-Move-tmp-bframes-to-MPVMainEncC.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5MmRkMDgyNTgwMDIyN2MzNjRmYjJlNWIwZDdmOWQyM2RkZGU2NjYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAyOCBKYW4gMjAyMiAyMDoyNDoxOCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDMvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvZW5jOiBNb3ZlIHRtcCBiZnJhbWVz IHRvCiBNUFZNYWluRW5jQ29udGV4dAoKQWxzbyBtb3ZlIGJfZnJhbWVfc3RyYXRlZ3kgYW5kIGJf c2Vuc2l0aXZpdHkgYW5kIGJyZF9zY2FsZTsKdGhleSBhcmUgYWxsIG9ubHkgdXNlZCBieSBhbiBl bmNvZGVyJ3MgbWFpbiB0aHJlYWQgd2hlbgpiX2ZyYW1lX3N0cmF0ZWd5ID09IDIuCgpTaWduZWQt b2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNv bT4KLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlby5oICAgICB8ICAgOCAtLS0KIGxpYmF2Y29kZWMv bXBlZ3ZpZGVvX2VuYy5jIHwgMTE0ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggIHwgIDE1ICsrKystCiAzIGZpbGVzIGNoYW5n ZWQsIDczIGluc2VydGlvbnMoKyksIDY0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVjL21wZWd2aWRlby5oCmluZGV4IGFmZDE4NTkx YzQuLjEwOTFjOTNkOTUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIv bGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAtNDgsOCArNDgsNiBAQAogCiAjZGVmaW5lIE1BWF9U SFJFQURTIDMyCiAKLSNkZWZpbmUgTUFYX0JfRlJBTUVTIDE2Ci0KIC8qKgogICogU2NhbnRhYmxl LgogICovCkBAIC00NDYsNyArNDQ0LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQg ewogICAgIGludCB0b3BfZmllbGRfZmlyc3Q7CiAgICAgaW50IGNvbmNlYWxtZW50X21vdGlvbl92 ZWN0b3JzOwogICAgIGludCBxX3NjYWxlX3R5cGU7Ci0gICAgaW50IGJyZF9zY2FsZTsKICAgICBp bnQgaW50cmFfdmxjX2Zvcm1hdDsKICAgICBpbnQgYWx0ZXJuYXRlX3NjYW47CiAgICAgaW50IHJl cGVhdF9maXJzdF9maWVsZDsKQEAgLTUxOCwxMSArNTE1LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBl Z0VuY0NvbnRleHQgewogCiAgICAgaW50IGVycm9yX3JhdGU7CiAKLSAgICAvKiB0ZW1wb3Jhcnkg ZnJhbWVzIHVzZWQgYnkgYl9mcmFtZV9zdHJhdGVneSA9IDIgKi8KLSAgICBBVkZyYW1lICp0bXBf ZnJhbWVzW01BWF9CX0ZSQU1FUyArIDJdOwotICAgIGludCBiX2ZyYW1lX3N0cmF0ZWd5OwotICAg IGludCBiX3NlbnNpdGl2aXR5OwotCiAgICAgLyogZnJhbWUgc2tpcCBvcHRpb25zIGZvciBlbmNv ZGluZyAqLwogICAgIGludCBmcmFtZV9za2lwX3RocmVzaG9sZDsKICAgICBpbnQgZnJhbWVfc2tp cF9mYWN0b3I7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCmluZGV4IDcyMGRlZDQ5YzIuLmZmYTk0ODQ2NjkgMTAwNjQ0 Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jCkBAIC00MTksNyArNDE5LDggQEAgc3RhdGljIGF2X2NvbGQgaW50IGluaXRfbWF0 cmljZXMoTXBlZ0VuY0NvbnRleHQgKnMsIEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIC8qIGluaXQg dmlkZW8gZW5jb2RlciAqLwogYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWND b250ZXh0ICphdmN0eCkKIHsKLSAgICBNcGVnRW5jQ29udGV4dCAqcyA9IGF2Y3R4LT5wcml2X2Rh dGE7CisgICAgTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0gPSBhdmN0eC0+cHJpdl9kYXRhOwor ICAgIE1wZWdFbmNDb250ZXh0ICAgICpjb25zdCBzID0gJm0tPnM7CiAgICAgQVZDUEJQcm9wZXJ0 aWVzICpjcGJfcHJvcHM7CiAgICAgaW50IGksIHJldDsKICAgICBpbnQgbWJfYXJyYXlfc2l6ZSwg bXZfdGFibGVfc2l6ZTsKQEAgLTQ1NiwxMCArNDU3LDEwIEBAIGF2X2NvbGQgaW50IGZmX21wdl9l bmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgfQogICAgIHMtPmdvcF9zaXpl ICAgICA9IGF2Y3R4LT5nb3Bfc2l6ZTsKICAgICBzLT5hdmN0eCAgICAgICAgPSBhdmN0eDsKLSAg ICBpZiAoYXZjdHgtPm1heF9iX2ZyYW1lcyA+IE1BWF9CX0ZSQU1FUykgeworICAgIGlmIChhdmN0 eC0+bWF4X2JfZnJhbWVzID4gTVBWRU5DX01BWF9CX0ZSQU1FUykgewogICAgICAgICBhdl9sb2co YXZjdHgsIEFWX0xPR19FUlJPUiwgIlRvbyBtYW55IEItZnJhbWVzIHJlcXVlc3RlZCwgbWF4aW11 bSAiCi0gICAgICAgICAgICAgICAiaXMgJWQuXG4iLCBNQVhfQl9GUkFNRVMpOwotICAgICAgICBh dmN0eC0+bWF4X2JfZnJhbWVzID0gTUFYX0JfRlJBTUVTOworICAgICAgICAgICAgICAgImlzICIg QVZfU1RSSU5HSUZZKE1QVkVOQ19NQVhfQl9GUkFNRVMpICIuXG4iKTsKKyAgICAgICAgYXZjdHgt Pm1heF9iX2ZyYW1lcyA9IE1QVkVOQ19NQVhfQl9GUkFNRVM7CiAgICAgfSBlbHNlIGlmIChhdmN0 eC0+bWF4X2JfZnJhbWVzIDwgMCkgewogICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJP UiwKICAgICAgICAgICAgICAgICJtYXggYiBmcmFtZXMgbXVzdCBiZSAwIG9yIHBvc2l0aXZlIGZv ciBtcGVndmlkZW8gYmFzZWQgZW5jb2RlcnNcbiIpOwpAQCAtNzAwLDEwICs3MDEsMTAgQEAgYXZf Y29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAg ICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKICAgICB9CiAKLSAgICBpZiAocy0+Yl9mcmFtZV9z dHJhdGVneSAmJiAoYXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19QQVNTMikpIHsKKyAgICBp ZiAobS0+Yl9mcmFtZV9zdHJhdGVneSAmJiAoYXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19Q QVNTMikpIHsKICAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfSU5GTywKICAgICAgICAgICAg ICAgICJub3RpY2U6IGJfZnJhbWVfc3RyYXRlZ3kgb25seSBhZmZlY3RzIHRoZSBmaXJzdCBwYXNz XG4iKTsKLSAgICAgICAgcy0+Yl9mcmFtZV9zdHJhdGVneSA9IDA7CisgICAgICAgIG0tPmJfZnJh bWVfc3RyYXRlZ3kgPSAwOwogICAgIH0KIAogICAgIGkgPSBhdl9nY2QoYXZjdHgtPnRpbWVfYmFz ZS5kZW4sIGF2Y3R4LT50aW1lX2Jhc2UubnVtKTsKQEAgLTkxNCw4ICs5MTUsOCBAQCBhdl9jb2xk IGludCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAgICBy ZXR1cm4gcmV0OwogCiAgICAgaWYgKCEoYXZjdHgtPnN0YXRzX291dCA9IGF2X21hbGxvY3ooMjU2 KSkgICAgICAgICAgICAgICB8fAotICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPmlu cHV0X3BpY3R1cmUsICAgICAgICAgICBNQVhfQl9GUkFNRVMgKyAxKSB8fAotICAgICAgICAhRkZf QUxMT0NaX1RZUEVEX0FSUkFZKHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlLCBNQVhfQl9GUkFN RVMgKyAxKSB8fAorICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPmlucHV0X3BpY3R1 cmUsICAgICAgICAgICBNUFZFTkNfTUFYX0JfRlJBTUVTICsgMSkgfHwKKyAgICAgICAgIUZGX0FM TE9DWl9UWVBFRF9BUlJBWShzLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZSwgTVBWRU5DX01BWF9C X0ZSQU1FUyArIDEpIHx8CiAgICAgICAgICEocy0+bmV3X3BpYyA9IGF2X2ZyYW1lX2FsbG9jKCkp IHx8CiAgICAgICAgICEocy0+cGljdHVyZV9wb29sID0gZmZfbXB2X2FsbG9jX3BpY19wb29sKDAp KSkKICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKQEAgLTEwMTAsMTcgKzEwMTEsMTcg QEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkK ICAgICBpZiAoKHJldCA9IGZmX3JhdGVfY29udHJvbF9pbml0KHMpKSA8IDApCiAgICAgICAgIHJl dHVybiByZXQ7CiAKLSAgICBpZiAocy0+Yl9mcmFtZV9zdHJhdGVneSA9PSAyKSB7CisgICAgaWYg KG0tPmJfZnJhbWVfc3RyYXRlZ3kgPT0gMikgewogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcy0+ bWF4X2JfZnJhbWVzICsgMjsgaSsrKSB7Ci0gICAgICAgICAgICBzLT50bXBfZnJhbWVzW2ldID0g YXZfZnJhbWVfYWxsb2MoKTsKLSAgICAgICAgICAgIGlmICghcy0+dG1wX2ZyYW1lc1tpXSkKKyAg ICAgICAgICAgIG0tPnRtcF9mcmFtZXNbaV0gPSBhdl9mcmFtZV9hbGxvYygpOworICAgICAgICAg ICAgaWYgKCFtLT50bXBfZnJhbWVzW2ldKQogICAgICAgICAgICAgICAgIHJldHVybiBBVkVSUk9S KEVOT01FTSk7CiAKLSAgICAgICAgICAgIHMtPnRtcF9mcmFtZXNbaV0tPmZvcm1hdCA9IEFWX1BJ WF9GTVRfWVVWNDIwUDsKLSAgICAgICAgICAgIHMtPnRtcF9mcmFtZXNbaV0tPndpZHRoICA9IHMt PndpZHRoICA+PiBzLT5icmRfc2NhbGU7Ci0gICAgICAgICAgICBzLT50bXBfZnJhbWVzW2ldLT5o ZWlnaHQgPSBzLT5oZWlnaHQgPj4gcy0+YnJkX3NjYWxlOworICAgICAgICAgICAgbS0+dG1wX2Zy YW1lc1tpXS0+Zm9ybWF0ID0gQVZfUElYX0ZNVF9ZVVY0MjBQOworICAgICAgICAgICAgbS0+dG1w X2ZyYW1lc1tpXS0+d2lkdGggID0gcy0+d2lkdGggID4+IG0tPmJyZF9zY2FsZTsKKyAgICAgICAg ICAgIG0tPnRtcF9mcmFtZXNbaV0tPmhlaWdodCA9IHMtPmhlaWdodCA+PiBtLT5icmRfc2NhbGU7 CiAKLSAgICAgICAgICAgIHJldCA9IGF2X2ZyYW1lX2dldF9idWZmZXIocy0+dG1wX2ZyYW1lc1tp XSwgMCk7CisgICAgICAgICAgICByZXQgPSBhdl9mcmFtZV9nZXRfYnVmZmVyKG0tPnRtcF9mcmFt ZXNbaV0sIDApOwogICAgICAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgICAgICAgcmV0 dXJuIHJldDsKICAgICAgICAgfQpAQCAtMTAzOSw4ICsxMDQwLDggQEAgYXZfY29sZCBpbnQgZmZf bXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIAogYXZfY29sZCBpbnQgZmZf bXB2X2VuY29kZV9lbmQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogewotICAgIE1wZWdFbmNDb250 ZXh0ICpzID0gYXZjdHgtPnByaXZfZGF0YTsKLSAgICBpbnQgaTsKKyAgICBNUFZNYWluRW5jQ29u dGV4dCAqY29uc3QgbSA9IGF2Y3R4LT5wcml2X2RhdGE7CisgICAgTXBlZ0VuY0NvbnRleHQgICAg KmNvbnN0IHMgPSAmbS0+czsKIAogICAgIGZmX3JhdGVfY29udHJvbF91bmluaXQoJnMtPnJjX2Nv bnRleHQpOwogCkBAIC0xMDQ4LDEzICsxMDQ5LDEzIEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNv ZGVfZW5kKEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBhdl9yZWZzdHJ1Y3RfcG9vbF91bmlu aXQoJnMtPnBpY3R1cmVfcG9vbCk7CiAKICAgICBpZiAocy0+aW5wdXRfcGljdHVyZSAmJiBzLT5y ZW9yZGVyZWRfaW5wdXRfcGljdHVyZSkgewotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IE1B WF9CX0ZSQU1FUyArIDE7IGkrKykgeworICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IE1QVkVO Q19NQVhfQl9GUkFNRVMgKyAxOyBpKyspIHsKICAgICAgICAgICAgIGF2X3JlZnN0cnVjdF91bnJl Zigmcy0+aW5wdXRfcGljdHVyZVtpXSk7CiAgICAgICAgICAgICBhdl9yZWZzdHJ1Y3RfdW5yZWYo JnMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlW2ldKTsKICAgICAgICAgfQogICAgIH0KLSAgICBm b3IgKGkgPSAwOyBpIDwgRkZfQVJSQVlfRUxFTVMocy0+dG1wX2ZyYW1lcyk7IGkrKykKLSAgICAg ICAgYXZfZnJhbWVfZnJlZSgmcy0+dG1wX2ZyYW1lc1tpXSk7CisgICAgZm9yIChpbnQgaSA9IDA7 IGkgPCBGRl9BUlJBWV9FTEVNUyhtLT50bXBfZnJhbWVzKTsgaSsrKQorICAgICAgICBhdl9mcmFt ZV9mcmVlKCZtLT50bXBfZnJhbWVzW2ldKTsKIAogICAgIGF2X2ZyYW1lX2ZyZWUoJnMtPm5ld19w aWMpOwogCkBAIC0xMjQ5LDggKzEyNTAsOSBAQCBzdGF0aWMgaW50IHByZXBhcmVfcGljdHVyZShN cGVnRW5jQ29udGV4dCAqcywgQVZGcmFtZSAqZiwgY29uc3QgQVZGcmFtZSAqcHJvcHNfZgogICAg IHJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGxvYWRfaW5wdXRfcGljdHVyZShNcGVnRW5jQ29u dGV4dCAqcywgY29uc3QgQVZGcmFtZSAqcGljX2FyZykKK3N0YXRpYyBpbnQgbG9hZF9pbnB1dF9w aWN0dXJlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBjb25zdCBBVkZyYW1lICpwaWNfYXJn KQogeworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CiAgICAgTVBWUGljdHVy ZSAqcGljID0gTlVMTDsKICAgICBpbnQ2NF90IHB0czsKICAgICBpbnQgZGlzcGxheV9waWN0dXJl X251bWJlciA9IDAsIHJldDsKQEAgLTEzNzYsOSArMTM3OCw5IEBAIHN0YXRpYyBpbnQgbG9hZF9p bnB1dF9waWN0dXJlKE1wZWdFbmNDb250ZXh0ICpzLCBjb25zdCBBVkZyYW1lICpwaWNfYXJnKQog ICAgIH0KIAogICAgIC8qIHNoaWZ0IGJ1ZmZlciBlbnRyaWVzICovCi0gICAgZm9yIChpbnQgaSA9 IGZsdXNoX29mZnNldDsgaSA8PSBNQVhfQl9GUkFNRVM7IGkrKykKKyAgICBmb3IgKGludCBpID0g Zmx1c2hfb2Zmc2V0OyBpIDw9IE1QVkVOQ19NQVhfQl9GUkFNRVM7IGkrKykKICAgICAgICAgcy0+ aW5wdXRfcGljdHVyZVtpIC0gZmx1c2hfb2Zmc2V0XSA9IHMtPmlucHV0X3BpY3R1cmVbaV07Ci0g ICAgZm9yIChpbnQgaSA9IE1BWF9CX0ZSQU1FUyArIDEgLSBmbHVzaF9vZmZzZXQ7IGkgPD0gTUFY X0JfRlJBTUVTOyBpKyspCisgICAgZm9yIChpbnQgaSA9IE1QVkVOQ19NQVhfQl9GUkFNRVMgKyAx IC0gZmx1c2hfb2Zmc2V0OyBpIDw9IE1QVkVOQ19NQVhfQl9GUkFNRVM7IGkrKykKICAgICAgICAg cy0+aW5wdXRfcGljdHVyZVtpXSA9IE5VTEw7CiAKICAgICBzLT5pbnB1dF9waWN0dXJlW2VuY29k aW5nX2RlbGF5XSA9IHBpYzsKQEAgLTE0NTEsMTAgKzE0NTMsMTEgQEAgc3RhdGljIGludCBlbmNv ZGVfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmMsIGNvbnN0IEFWRnJhbWUgKmZyYW1lLCBBVlBhY2tl dCAqcGt0KQogICAgIHJldHVybiBzaXplOwogfQogCi1zdGF0aWMgaW50IGVzdGltYXRlX2Jlc3Rf Yl9jb3VudChNcGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyBpbnQgZXN0aW1hdGVfYmVzdF9iX2Nv dW50KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogeworICAgIE1wZWdFbmNDb250ZXh0ICpj b25zdCBzID0gJm0tPnM7CiAgICAgQVZQYWNrZXQgKnBrdDsKLSAgICBjb25zdCBpbnQgc2NhbGUg PSBzLT5icmRfc2NhbGU7CisgICAgY29uc3QgaW50IHNjYWxlID0gbS0+YnJkX3NjYWxlOwogICAg IGludCB3aWR0aCAgPSBzLT53aWR0aCAgPj4gc2NhbGU7CiAgICAgaW50IGhlaWdodCA9IHMtPmhl aWdodCA+PiBzY2FsZTsKICAgICBpbnQgaSwgaiwgb3V0X3NpemUsIHBfbGFtYmRhLCBiX2xhbWJk YSwgbGFtYmRhMjsKQEAgLTE0OTEsMTggKzE0OTQsMTggQEAgc3RhdGljIGludCBlc3RpbWF0ZV9i ZXN0X2JfY291bnQoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgICAgICAgICAgICAgZGF0YVsyXSAr PSBJTlBMQUNFX09GRlNFVDsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgcy0+bXB2ZW5j ZHNwLnNocmlua1tzY2FsZV0ocy0+dG1wX2ZyYW1lc1tpXS0+ZGF0YVswXSwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPnRtcF9mcmFtZXNbaV0tPmxpbmVzaXplWzBd LAorICAgICAgICAgICAgcy0+bXB2ZW5jZHNwLnNocmlua1tzY2FsZV0obS0+dG1wX2ZyYW1lc1tp XS0+ZGF0YVswXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0tPnRt cF9mcmFtZXNbaV0tPmxpbmVzaXplWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZGF0YVswXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHByZV9pbnB1dF9wdHItPmYtPmxpbmVzaXplWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgd2lkdGgsIGhlaWdodCk7Ci0gICAgICAgICAgICBzLT5tcHZlbmNkc3Au c2hyaW5rW3NjYWxlXShzLT50bXBfZnJhbWVzW2ldLT5kYXRhWzFdLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcy0+dG1wX2ZyYW1lc1tpXS0+bGluZXNpemVbMV0sCisg ICAgICAgICAgICBzLT5tcHZlbmNkc3Auc2hyaW5rW3NjYWxlXShtLT50bXBfZnJhbWVzW2ldLT5k YXRhWzFdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbS0+dG1wX2Zy YW1lc1tpXS0+bGluZXNpemVbMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBkYXRhWzFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJl X2lucHV0X3B0ci0+Zi0+bGluZXNpemVbMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB3aWR0aCA+PiAxLCBoZWlnaHQgPj4gMSk7Ci0gICAgICAgICAgICBzLT5tcHZl bmNkc3Auc2hyaW5rW3NjYWxlXShzLT50bXBfZnJhbWVzW2ldLT5kYXRhWzJdLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+dG1wX2ZyYW1lc1tpXS0+bGluZXNpemVb Ml0sCisgICAgICAgICAgICBzLT5tcHZlbmNkc3Auc2hyaW5rW3NjYWxlXShtLT50bXBfZnJhbWVz W2ldLT5kYXRhWzJdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbS0+ dG1wX2ZyYW1lc1tpXS0+bGluZXNpemVbMl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBkYXRhWzJdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcHJlX2lucHV0X3B0ci0+Zi0+bGluZXNpemVbMl0sCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB3aWR0aCA+PiAxLCBoZWlnaHQgPj4gMSk7CkBAIC0xNTM5LDEwICsx NTQyLDEwIEBAIHN0YXRpYyBpbnQgZXN0aW1hdGVfYmVzdF9iX2NvdW50KE1wZWdFbmNDb250ZXh0 ICpzKQogICAgICAgICAgICAgZ290byBmYWlsOwogCiAKLSAgICAgICAgcy0+dG1wX2ZyYW1lc1sw XS0+cGljdF90eXBlID0gQVZfUElDVFVSRV9UWVBFX0k7Ci0gICAgICAgIHMtPnRtcF9mcmFtZXNb MF0tPnF1YWxpdHkgICA9IDEgKiBGRl9RUDJMQU1CREE7CisgICAgICAgIG0tPnRtcF9mcmFtZXNb MF0tPnBpY3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQRV9JOworICAgICAgICBtLT50bXBfZnJhbWVz WzBdLT5xdWFsaXR5ICAgPSAxICogRkZfUVAyTEFNQkRBOwogCi0gICAgICAgIG91dF9zaXplID0g ZW5jb2RlX2ZyYW1lKGMsIHMtPnRtcF9mcmFtZXNbMF0sIHBrdCk7CisgICAgICAgIG91dF9zaXpl ID0gZW5jb2RlX2ZyYW1lKGMsIG0tPnRtcF9mcmFtZXNbMF0sIHBrdCk7CiAgICAgICAgIGlmIChv dXRfc2l6ZSA8IDApIHsKICAgICAgICAgICAgIHJldCA9IG91dF9zaXplOwogICAgICAgICAgICAg Z290byBmYWlsOwpAQCAtMTU1MywxMSArMTU1NiwxMSBAQCBzdGF0aWMgaW50IGVzdGltYXRlX2Jl c3RfYl9jb3VudChNcGVnRW5jQ29udGV4dCAqcykKICAgICAgICAgZm9yIChpID0gMDsgaSA8IHMt Pm1heF9iX2ZyYW1lcyArIDE7IGkrKykgewogICAgICAgICAgICAgaW50IGlzX3AgPSBpICUgKGog KyAxKSA9PSBqIHx8IGkgPT0gcy0+bWF4X2JfZnJhbWVzOwogCi0gICAgICAgICAgICBzLT50bXBf ZnJhbWVzW2kgKyAxXS0+cGljdF90eXBlID0gaXNfcCA/CisgICAgICAgICAgICBtLT50bXBfZnJh bWVzW2kgKyAxXS0+cGljdF90eXBlID0gaXNfcCA/CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgQVZfUElDVFVSRV9UWVBFX1AgOiBBVl9QSUNUVVJFX1RZUEVfQjsKLSAgICAg ICAgICAgIHMtPnRtcF9mcmFtZXNbaSArIDFdLT5xdWFsaXR5ICAgPSBpc19wID8gcF9sYW1iZGEg OiBiX2xhbWJkYTsKKyAgICAgICAgICAgIG0tPnRtcF9mcmFtZXNbaSArIDFdLT5xdWFsaXR5ICAg PSBpc19wID8gcF9sYW1iZGEgOiBiX2xhbWJkYTsKIAotICAgICAgICAgICAgb3V0X3NpemUgPSBl bmNvZGVfZnJhbWUoYywgcy0+dG1wX2ZyYW1lc1tpICsgMV0sIHBrdCk7CisgICAgICAgICAgICBv dXRfc2l6ZSA9IGVuY29kZV9mcmFtZShjLCBtLT50bXBfZnJhbWVzW2kgKyAxXSwgcGt0KTsKICAg ICAgICAgICAgIGlmIChvdXRfc2l6ZSA8IDApIHsKICAgICAgICAgICAgICAgICByZXQgPSBvdXRf c2l6ZTsKICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CkBAIC0xNjAzLDggKzE2MDYsMTAgQEAg ZmFpbDoKICAqIGlucHV0X3BpY3R1cmVbMF0gaXMgYWx3YXlzIE5VTEwgd2hlbiBleGl0aW5nIHRo aXMgZnVuY3Rpb24sIGV2ZW4gb24gZXJyb3I7CiAgKiByZW9yZGVyZWRfaW5wdXRfcGljdHVyZVsw XSBpcyBhbHdheXMgTlVMTCB3aGVuIGV4aXRpbmcgdGhpcyBmdW5jdGlvbiBvbiBlcnJvci4KICAq Lwotc3RhdGljIGludCBzZXRfYmZyYW1lX2NoYWluX2xlbmd0aChNcGVnRW5jQ29udGV4dCAqcykK K3N0YXRpYyBpbnQgc2V0X2JmcmFtZV9jaGFpbl9sZW5ndGgoTVBWTWFpbkVuY0NvbnRleHQgKmNv bnN0IG0pCiB7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKKwogICAgIC8q IEVpdGhlciBub3RoaW5nIHRvIGRvIG9yIGNhbid0IGRvIGFueXRoaW5nICovCiAgICAgaWYgKHMt PnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdIHx8ICFzLT5pbnB1dF9waWN0dXJlWzBdKQogICAg ICAgICByZXR1cm4gMDsKQEAgLTE2NDksMTEgKzE2NTQsMTEgQEAgc3RhdGljIGludCBzZXRfYmZy YW1lX2NoYWluX2xlbmd0aChNcGVnRW5jQ29udGV4dCAqcykKICAgICAgICAgICAgIH0KICAgICAg ICAgfQogCi0gICAgICAgIGlmIChzLT5iX2ZyYW1lX3N0cmF0ZWd5ID09IDApIHsKKyAgICAgICAg aWYgKG0tPmJfZnJhbWVfc3RyYXRlZ3kgPT0gMCkgewogICAgICAgICAgICAgYl9mcmFtZXMgPSBz LT5tYXhfYl9mcmFtZXM7CiAgICAgICAgICAgICB3aGlsZSAoYl9mcmFtZXMgJiYgIXMtPmlucHV0 X3BpY3R1cmVbYl9mcmFtZXNdKQogICAgICAgICAgICAgICAgIGJfZnJhbWVzLS07Ci0gICAgICAg IH0gZWxzZSBpZiAocy0+Yl9mcmFtZV9zdHJhdGVneSA9PSAxKSB7CisgICAgICAgIH0gZWxzZSBp ZiAobS0+Yl9mcmFtZV9zdHJhdGVneSA9PSAxKSB7CiAgICAgICAgICAgICBpbnQgaTsKICAgICAg ICAgICAgIGZvciAoaSA9IDE7IGkgPCBzLT5tYXhfYl9mcmFtZXMgKyAxOyBpKyspIHsKICAgICAg ICAgICAgICAgICBpZiAocy0+aW5wdXRfcGljdHVyZVtpXSAmJgpAQCAtMTY2OCw3ICsxNjczLDcg QEAgc3RhdGljIGludCBzZXRfYmZyYW1lX2NoYWluX2xlbmd0aChNcGVnRW5jQ29udGV4dCAqcykK ICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBzLT5tYXhfYl9mcmFtZXMgKyAxOyBpKyspIHsK ICAgICAgICAgICAgICAgICBpZiAoIXMtPmlucHV0X3BpY3R1cmVbaV0gfHwKICAgICAgICAgICAg ICAgICAgICAgcy0+aW5wdXRfcGljdHVyZVtpXS0+Yl9mcmFtZV9zY29yZSAtIDEgPgotICAgICAg ICAgICAgICAgICAgICAgICAgcy0+bWJfbnVtIC8gcy0+Yl9zZW5zaXRpdml0eSkKKyAgICAgICAg ICAgICAgICAgICAgICAgIHMtPm1iX251bSAvIG0tPmJfc2Vuc2l0aXZpdHkpCiAgICAgICAgICAg ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogCkBAIC0xNjc4LDggKzE2ODMsOCBAQCBz dGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3RoKE1wZWdFbmNDb250ZXh0ICpzKQogICAg ICAgICAgICAgZm9yIChpID0gMDsgaSA8IGJfZnJhbWVzICsgMTsgaSsrKSB7CiAgICAgICAgICAg ICAgICAgcy0+aW5wdXRfcGljdHVyZVtpXS0+Yl9mcmFtZV9zY29yZSA9IDA7CiAgICAgICAgICAg ICB9Ci0gICAgICAgIH0gZWxzZSBpZiAocy0+Yl9mcmFtZV9zdHJhdGVneSA9PSAyKSB7Ci0gICAg ICAgICAgICBiX2ZyYW1lcyA9IGVzdGltYXRlX2Jlc3RfYl9jb3VudChzKTsKKyAgICAgICAgfSBl bHNlIGlmIChtLT5iX2ZyYW1lX3N0cmF0ZWd5ID09IDIpIHsKKyAgICAgICAgICAgIGJfZnJhbWVz ID0gZXN0aW1hdGVfYmVzdF9iX2NvdW50KG0pOwogICAgICAgICAgICAgaWYgKGJfZnJhbWVzIDwg MCkgewogICAgICAgICAgICAgICAgIGF2X3JlZnN0cnVjdF91bnJlZigmcy0+aW5wdXRfcGljdHVy ZVswXSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIGJfZnJhbWVzOwpAQCAtMTczMywxNyArMTcz OCwxOCBAQCBzdGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3RoKE1wZWdFbmNDb250ZXh0 ICpzKQogICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IHNlbGVjdF9pbnB1dF9waWN0dXJl KE1wZWdFbmNDb250ZXh0ICpzKQorc3RhdGljIGludCBzZWxlY3RfaW5wdXRfcGljdHVyZShNUFZN YWluRW5jQ29udGV4dCAqY29uc3QgbSkKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9 ICZtLT5zOwogICAgIGludCByZXQ7CiAKICAgICBhdl9hc3NlcnQxKCFzLT5yZW9yZGVyZWRfaW5w dXRfcGljdHVyZVswXSk7CiAKLSAgICBmb3IgKGludCBpID0gMTsgaSA8PSBNQVhfQl9GUkFNRVM7 IGkrKykKKyAgICBmb3IgKGludCBpID0gMTsgaSA8PSBNUFZFTkNfTUFYX0JfRlJBTUVTOyBpKysp CiAgICAgICAgIHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlW2kgLSAxXSA9IHMtPnJlb3JkZXJl ZF9pbnB1dF9waWN0dXJlW2ldOwotICAgIHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlW01BWF9C X0ZSQU1FU10gPSBOVUxMOworICAgIHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlW01QVkVOQ19N QVhfQl9GUkFNRVNdID0gTlVMTDsKIAotICAgIHJldCA9IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3Ro KHMpOworICAgIHJldCA9IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3RoKG0pOwogICAgIGF2X2Fzc2Vy dDEoIXMtPmlucHV0X3BpY3R1cmVbMF0pOwogICAgIGlmIChyZXQgPCAwKQogICAgICAgICByZXR1 cm4gcmV0OwpAQCAtMTg2Nyw3ICsxODczLDggQEAgc3RhdGljIHZvaWQgZnJhbWVfc3RhcnQoTXBl Z0VuY0NvbnRleHQgKnMpCiBpbnQgZmZfbXB2X2VuY29kZV9waWN0dXJlKEFWQ29kZWNDb250ZXh0 ICphdmN0eCwgQVZQYWNrZXQgKnBrdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg QVZGcmFtZSAqcGljX2FyZywgaW50ICpnb3RfcGFja2V0KQogewotICAgIE1wZWdFbmNDb250ZXh0 ICpzID0gYXZjdHgtPnByaXZfZGF0YTsKKyAgICBNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSA9 IGF2Y3R4LT5wcml2X2RhdGE7CisgICAgTXBlZ0VuY0NvbnRleHQgICAgKmNvbnN0IHMgPSAmbS0+ czsKICAgICBpbnQgc3R1ZmZpbmdfY291bnQsIHJldDsKICAgICBpbnQgY29udGV4dF9jb3VudCA9 IHMtPnNsaWNlX2NvbnRleHRfY291bnQ7CiAKQEAgLTE4NzcsMTIgKzE4ODQsMTMgQEAgaW50IGZm X21wdl9lbmNvZGVfcGljdHVyZShBVkNvZGVjQ29udGV4dCAqYXZjdHgsIEFWUGFja2V0ICpwa3Qs CiAKICAgICBzLT5waWN0dXJlX2luX2dvcF9udW1iZXIrKzsKIAotICAgIGlmIChsb2FkX2lucHV0 X3BpY3R1cmUocywgcGljX2FyZykgPCAwKQotICAgICAgICByZXR1cm4gLTE7CisgICAgcmV0ID0g bG9hZF9pbnB1dF9waWN0dXJlKG0sIHBpY19hcmcpOworICAgIGlmIChyZXQgPCAwKQorICAgICAg ICByZXR1cm4gcmV0OwogCi0gICAgaWYgKHNlbGVjdF9pbnB1dF9waWN0dXJlKHMpIDwgMCkgewot ICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQorICAgIHJldCA9IHNlbGVjdF9pbnB1dF9waWN0dXJl KG0pOworICAgIGlmIChyZXQgPCAwKQorICAgICAgICByZXR1cm4gcmV0OwogCiAgICAgLyogb3V0 cHV0PyAqLwogICAgIGlmIChzLT5uZXdfcGljLT5kYXRhWzBdKSB7CmRpZmYgLS1naXQgYS9saWJh dmNvZGVjL21wZWd2aWRlb2VuYy5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAppbmRleCBm N2FhZDE3NjUwLi43YjU2MzVlNTBlIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb2Vu Yy5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKQEAgLTMzLDggKzMzLDE2IEBACiAj aW5jbHVkZSAibGliYXZ1dGlsL29wdC5oIgogI2luY2x1ZGUgIm1wZWd2aWRlby5oIgogCisjZGVm aW5lIE1QVkVOQ19NQVhfQl9GUkFNRVMgMTYKKwogdHlwZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0Nv bnRleHQgewogICAgIE1wZWdFbmNDb250ZXh0IHM7ICAvLy88IFRoZSBtYWluIHNsaWNlY29udGV4 dAorCisgICAgLy8vIHRlbXBvcmFyeSBmcmFtZXMgdXNlZCBieSBiX2ZyYW1lX3N0cmF0ZWd5ID0g MgorICAgIEFWRnJhbWUgKnRtcF9mcmFtZXNbTVBWRU5DX01BWF9CX0ZSQU1FUyArIDJdOworICAg IGludCBiX2ZyYW1lX3N0cmF0ZWd5OworICAgIGludCBiX3NlbnNpdGl2aXR5OworICAgIGludCBi cmRfc2NhbGU7CiB9IE1QVk1haW5FbmNDb250ZXh0OwogCiAjZGVmaW5lIE1BWF9GQ09ERSAgICAg ICAgNwpAQCAtODUsNiArOTMsNyBAQCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7 CiB7ICJtc2FkIiwgICAiU3VtIG9mIGFic29sdXRlIGRpZmZlcmVuY2VzLCBtZWRpYW4gcHJlZGlj dGVkIiwgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsuaTY0ID0gRkZfQ01QX01FRElBTl9TQUQgfSwg SU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUywgLnVuaXQgPSAiY21wX2Z1bmMiIH0K IAogI2RlZmluZSBGRl9NUFZfT0ZGU0VUKHgpIG9mZnNldG9mKE1wZWdFbmNDb250ZXh0LCB4KQor I2RlZmluZSBGRl9NUFZfTUFJTl9PRkZTRVQoeCkgb2Zmc2V0b2YoTVBWTWFpbkVuY0NvbnRleHQs IHgpCiAjZGVmaW5lIEZGX1JDX09GRlNFVCh4KSAgb2Zmc2V0b2YoTXBlZ0VuY0NvbnRleHQsIHJj X2NvbnRleHQueCkKICNkZWZpbmUgRkZfTVBWX09QVF9GTEFHUyAoQVZfT1BUX0ZMQUdfVklERU9f UEFSQU0gfCBBVl9PUFRfRkxBR19FTkNPRElOR19QQVJBTSkKICNkZWZpbmUgRkZfTVBWX0NPTU1P Tl9PUFRTIFwKQEAgLTEyNiw5ICsxMzUsOSBAQCBGRl9NUFZfT1BUX0NNUF9GVU5DLCBcCiB7InBz IiwgIlJUUCBwYXlsb2FkIHNpemUgaW4gYnl0ZXMiLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgRkZfTVBWX09GRlNFVChydHBfcGF5bG9hZF9zaXplKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2 NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCiAKICNkZWZp bmUgRkZfTVBWX0NPTU1PTl9CRlJBTUVfT1BUUyBcCi17ImJfc3RyYXRlZ3kiLCAiU3RyYXRlZ3kg dG8gY2hvb3NlIGJldHdlZW4gSS9QL0ItZnJhbWVzIiwgICAgICBGRl9NUFZfT0ZGU0VUKGJfZnJh bWVfc3RyYXRlZ3kpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMCB9LCAwLCAyLCBGRl9NUFZf T1BUX0ZMQUdTIH0sIFwKLXsiYl9zZW5zaXRpdml0eSIsICJBZGp1c3Qgc2Vuc2l0aXZpdHkgb2Yg Yl9mcmFtZV9zdHJhdGVneSAxIiwgIEZGX01QVl9PRkZTRVQoYl9zZW5zaXRpdml0eSksIEFWX09Q VF9UWVBFX0lOVCwgey5pNjQgPSA0MCB9LCAxLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTIH0s IFwKLXsiYnJkX3NjYWxlIiwgIkRvd25zY2FsZSBmcmFtZXMgZm9yIGR5bmFtaWMgQi1mcmFtZSBk ZWNpc2lvbiIsIEZGX01QVl9PRkZTRVQoYnJkX3NjYWxlKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2 NCA9IDAgfSwgMCwgMywgRkZfTVBWX09QVF9GTEFHUyB9LAoreyJiX3N0cmF0ZWd5IiwgIlN0cmF0 ZWd5IHRvIGNob29zZSBiZXR3ZWVuIEkvUC9CLWZyYW1lcyIsICAgICAgRkZfTVBWX01BSU5fT0ZG U0VUKGJfZnJhbWVfc3RyYXRlZ3kpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMCB9LCAwLCAy LCBGRl9NUFZfT1BUX0ZMQUdTIH0sIFwKK3siYl9zZW5zaXRpdml0eSIsICJBZGp1c3Qgc2Vuc2l0 aXZpdHkgb2YgYl9mcmFtZV9zdHJhdGVneSAxIiwgIEZGX01QVl9NQUlOX09GRlNFVChiX3NlbnNp dGl2aXR5KSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDQwIH0sIDEsIElOVF9NQVgsIEZGX01Q Vl9PUFRfRkxBR1MgfSwgXAoreyJicmRfc2NhbGUiLCAiRG93bnNjYWxlIGZyYW1lcyBmb3IgZHlu YW1pYyBCLWZyYW1lIGRlY2lzaW9uIiwgRkZfTVBWX01BSU5fT0ZGU0VUKGJyZF9zY2FsZSksIEFW X09QVF9UWVBFX0lOVCwgey5pNjQgPSAwIH0sIDAsIDMsIEZGX01QVl9PUFRfRkxBR1MgfSwKIAog I2RlZmluZSBGRl9NUFZfQ09NTU9OX01PVElPTl9FU1RfT1BUUyBcCiB7Im1vdGlvbl9lc3QiLCAi bW90aW9uIGVzdGltYXRpb24gYWxnb3JpdGhtIiwgICAgICAgICAgICAgICAgICAgICAgIEZGX01Q Vl9PRkZTRVQobW90aW9uX2VzdCksIEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSBGRl9NRV9FUFpT IH0sIEZGX01FX1pFUk8sIEZGX01FX1hPTkUsIEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0gIm1v dGlvbl9lc3QiIH0sICAgXAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0004-avcodec-mpegvideoenc-Move-ratecontrol-to-MPVMainEncC.patch" Content-Disposition: attachment; filename*0="0004-avcodec-mpegvideoenc-Move-ratecontrol-to-MPVMainEncC.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAwYmJmNDYwNGY3NDdiODk0ZWZjZDdhZGZkMjE0OWVkYmZiNThkOTdmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAyOCBKYW4gMjAyMiAyMDo0Mzo1NCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDQvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvZW5jOiBNb3ZlIHJhdGVjb250cm9s IHRvCiBNUFZNYWluRW5jQ29udGV4dAoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0 IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVndmlk ZW8uaCAgICAgfCAgOCAtLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyB8IDczICsrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAg fCAxMCArKysrLQogbGliYXZjb2RlYy9yYXRlY29udHJvbC5jICAgfCA3NSArKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVjL3JhdGVjb250cm9sLmggICB8IDEyICsr Ky0tLQogbGliYXZjb2RlYy9zbm93ZW5jLmMgICAgICAgfCA4MiArKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLQogNiBmaWxlcyBjaGFuZ2VkLCAxNDAgaW5zZXJ0aW9ucygrKSwg MTIwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9s aWJhdmNvZGVjL21wZWd2aWRlby5oCmluZGV4IDEwOTFjOTNkOTUuLjc1YjFmZmYyNDUgMTAwNjQ0 Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8u aApAQCAtNDIsNyArNDIsNiBAQAogI2luY2x1ZGUgIm1wZWd2aWRlb2VuY2RzcC5oIgogI2luY2x1 ZGUgInBpeGJsb2NrZHNwLmgiCiAjaW5jbHVkZSAicHV0X2JpdHMuaCIKLSNpbmNsdWRlICJyYXRl Y29udHJvbC5oIgogI2luY2x1ZGUgInFwZWxkc3AuaCIKICNpbmNsdWRlICJ2aWRlb2RzcC5oIgog CkBAIC0zMjcsMTMgKzMyNiw2IEBAIHR5cGVkZWYgc3RydWN0IE1wZWdFbmNDb250ZXh0IHsKICAg ICBpbnQgZGN0X2NvdW50WzJdOwogICAgIHVpbnQxNl90ICgqZGN0X29mZnNldClbNjRdOwogCi0g ICAgLyogYml0IHJhdGUgY29udHJvbCAqLwotICAgIGludDY0X3QgdG90YWxfYml0czsKLSAgICBp bnQgZnJhbWVfYml0czsgICAgICAgICAgICAgICAgLy8vPCBiaXRzIHVzZWQgZm9yIHRoZSBjdXJy ZW50IGZyYW1lCi0gICAgaW50IHN0dWZmaW5nX2JpdHM7ICAgICAgICAgICAgIC8vLzwgYml0cyB1 c2VkIGZvciBzdHVmZmluZwotICAgIGludCBuZXh0X2xhbWJkYTsgICAgICAgICAgICAgICAvLy88 IG5leHQgbGFtYmRhIHVzZWQgZm9yIHJldHJ5aW5nIHRvIGVuY29kZSBhIGZyYW1lCi0gICAgUmF0 ZUNvbnRyb2xDb250ZXh0IHJjX2NvbnRleHQ7IC8vLzwgY29udGFpbnMgc3R1ZmYgb25seSBhY2Nl c3NlZCBpbiByYXRlY29udHJvbC5jCi0KICAgICAvKiBzdGF0aXN0aWNzLCB1c2VkIGZvciAyLXBh c3MgZW5jb2RpbmcgKi8KICAgICBpbnQgbXZfYml0czsKICAgICBpbnQgaGVhZGVyX2JpdHM7CmRp ZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jCmluZGV4IGZmYTk0ODQ2NjkuLjdmMjRjMWJhYTYgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCkBA IC04NCw3ICs4NCw3IEBACiAjZGVmaW5lIFFNQVRfU0hJRlRfTU1YIDE2CiAjZGVmaW5lIFFNQVRf U0hJRlQgMjEKIAotc3RhdGljIGludCBlbmNvZGVfcGljdHVyZShNcGVnRW5jQ29udGV4dCAqcywg Y29uc3QgQVZQYWNrZXQgKnBrdCk7CitzdGF0aWMgaW50IGVuY29kZV9waWN0dXJlKE1QVk1haW5F bmNDb250ZXh0ICpjb25zdCBzLCBjb25zdCBBVlBhY2tldCAqcGt0KTsKIHN0YXRpYyBpbnQgZGN0 X3F1YW50aXplX3JlZmluZShNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCAqYmxvY2ssIGludDE2 X3QgKndlaWdodCwgaW50MTZfdCAqb3JpZywgaW50IG4sIGludCBxc2NhbGUpOwogc3RhdGljIGlu dCBzc2VfbWIoTXBlZ0VuY0NvbnRleHQgKnMpOwogc3RhdGljIHZvaWQgZGVub2lzZV9kY3RfYyhN cGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCAqYmxvY2spOwpAQCAtMTAwOCw3ICsxMDA4LDggQEAg YXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICNl bmRpZgogICAgIH0KIAotICAgIGlmICgocmV0ID0gZmZfcmF0ZV9jb250cm9sX2luaXQocykpIDwg MCkKKyAgICByZXQgPSBmZl9yYXRlX2NvbnRyb2xfaW5pdChtKTsKKyAgICBpZiAocmV0IDwgMCkK ICAgICAgICAgcmV0dXJuIHJldDsKIAogICAgIGlmIChtLT5iX2ZyYW1lX3N0cmF0ZWd5ID09IDIp IHsKQEAgLTEwNDMsNyArMTA0NCw3IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfZW5kKEFW Q29kZWNDb250ZXh0ICphdmN0eCkKICAgICBNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSA9IGF2 Y3R4LT5wcml2X2RhdGE7CiAgICAgTXBlZ0VuY0NvbnRleHQgICAgKmNvbnN0IHMgPSAmbS0+czsK IAotICAgIGZmX3JhdGVfY29udHJvbF91bmluaXQoJnMtPnJjX2NvbnRleHQpOworICAgIGZmX3Jh dGVfY29udHJvbF91bmluaXQoJm0tPnJjX2NvbnRleHQpOwogCiAgICAgZmZfbXB2X2NvbW1vbl9l bmQocyk7CiAgICAgYXZfcmVmc3RydWN0X3Bvb2xfdW5pbml0KCZzLT5waWN0dXJlX3Bvb2wpOwpA QCAtMTYyMiw3ICsxNjIzLDcgQEAgc3RhdGljIGludCBzZXRfYmZyYW1lX2NoYWluX2xlbmd0aChN UFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAgICAgIC8vIEZJWE1FIGNoZWNrIHRo YXQgdGhlIGdvcCBjaGVjayBhYm92ZSBpcyArLTEgY29ycmVjdAogICAgICAgICAgICAgYXZfcmVm c3RydWN0X3VucmVmKCZzLT5pbnB1dF9waWN0dXJlWzBdKTsKIAotICAgICAgICAgICAgZmZfdmJ2 X3VwZGF0ZShzLCAwKTsKKyAgICAgICAgICAgIGZmX3Zidl91cGRhdGUobSwgMCk7CiAKICAgICAg ICAgICAgIHJldHVybiAwOwogICAgICAgICB9CkBAIC0xNjQyLDE1ICsxNjQzLDE1IEBAIHN0YXRp YyBpbnQgc2V0X2JmcmFtZV9jaGFpbl9sZW5ndGgoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0p CiAgICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHMtPm1heF9iX2ZyYW1lcyArIDE7IGkr KykgewogICAgICAgICAgICAgICAgIGludCBwaWN0X251bSA9IHMtPmlucHV0X3BpY3R1cmVbMF0t PmRpc3BsYXlfcGljdHVyZV9udW1iZXIgKyBpOwogCi0gICAgICAgICAgICAgICAgaWYgKHBpY3Rf bnVtID49IHMtPnJjX2NvbnRleHQubnVtX2VudHJpZXMpCisgICAgICAgICAgICAgICAgaWYgKHBp Y3RfbnVtID49IG0tPnJjX2NvbnRleHQubnVtX2VudHJpZXMpCiAgICAgICAgICAgICAgICAgICAg IGJyZWFrOwogICAgICAgICAgICAgICAgIGlmICghcy0+aW5wdXRfcGljdHVyZVtpXSkgewotICAg ICAgICAgICAgICAgICAgICBzLT5yY19jb250ZXh0LmVudHJ5W3BpY3RfbnVtIC0gMV0ubmV3X3Bp Y3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQRV9QOworICAgICAgICAgICAgICAgICAgICBtLT5yY19j b250ZXh0LmVudHJ5W3BpY3RfbnVtIC0gMV0ubmV3X3BpY3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQ RV9QOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9CiAKICAg ICAgICAgICAgICAgICBzLT5pbnB1dF9waWN0dXJlW2ldLT5mLT5waWN0X3R5cGUgPQotICAgICAg ICAgICAgICAgICAgICBzLT5yY19jb250ZXh0LmVudHJ5W3BpY3RfbnVtXS5uZXdfcGljdF90eXBl OworICAgICAgICAgICAgICAgICAgICBtLT5yY19jb250ZXh0LmVudHJ5W3BpY3RfbnVtXS5uZXdf cGljdF90eXBlOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAKQEAgLTE5MTgsNyArMTkxOSw3 IEBAIGludCBmZl9tcHZfZW5jb2RlX3BpY3R1cmUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVlBh Y2tldCAqcGt0LAogICAgICAgICAvL2VtbXNfYygpOwogICAgICAgICBmcmFtZV9zdGFydChzKTsK IHZidl9yZXRyeToKLSAgICAgICAgcmV0ID0gZW5jb2RlX3BpY3R1cmUocywgcGt0KTsKKyAgICAg ICAgcmV0ID0gZW5jb2RlX3BpY3R1cmUobSwgcGt0KTsKICAgICAgICAgaWYgKGdyb3dpbmdfYnVm ZmVyKSB7CiAgICAgICAgICAgICBhdl9hc3NlcnQwKHMtPnBiLmJ1ZiA9PSBhdmN0eC0+aW50ZXJu YWwtPmJ5dGVfYnVmZmVyKTsKICAgICAgICAgICAgIHBrdC0+ZGF0YSA9IHMtPnBiLmJ1ZjsKQEAg LTE5MzMsMTQgKzE5MzQsMTQgQEAgdmJ2X3JldHJ5OgogICAgICAgICAgICAgZmZfbWpwZWdfZW5j b2RlX3BpY3R1cmVfdHJhaWxlcigmcy0+cGIsIHMtPmhlYWRlcl9iaXRzKTsKIAogICAgICAgICBp ZiAoYXZjdHgtPnJjX2J1ZmZlcl9zaXplKSB7Ci0gICAgICAgICAgICBSYXRlQ29udHJvbENvbnRl eHQgKnJjYyA9ICZzLT5yY19jb250ZXh0OworICAgICAgICAgICAgUmF0ZUNvbnRyb2xDb250ZXh0 ICpyY2MgPSAmbS0+cmNfY29udGV4dDsKICAgICAgICAgICAgIGludCBtYXhfc2l6ZSA9IEZGTUFY KHJjYy0+YnVmZmVyX2luZGV4ICogYXZjdHgtPnJjX21heF9hdmFpbGFibGVfdmJ2X3VzZSwgcmNj LT5idWZmZXJfaW5kZXggLSA1MDApOwogICAgICAgICAgICAgaW50IGhxID0gKGF2Y3R4LT5tYl9k ZWNpc2lvbiA9PSBGRl9NQl9ERUNJU0lPTl9SRCB8fCBhdmN0eC0+dHJlbGxpcyk7CiAgICAgICAg ICAgICBpbnQgbWluX3N0ZXAgPSBocSA/IDEgOiAoMTw8KEZGX0xBTUJEQV9TSElGVCArIDcpKS8x Mzk7CiAKICAgICAgICAgICAgIGlmIChwdXRfYml0c19jb3VudCgmcy0+cGIpID4gbWF4X3NpemUg JiYKICAgICAgICAgICAgICAgICBzLT5sYW1iZGEgPCBzLT5sbWF4KSB7Ci0gICAgICAgICAgICAg ICAgcy0+bmV4dF9sYW1iZGEgPSBGRk1BWChzLT5sYW1iZGEgKyBtaW5fc3RlcCwgcy0+bGFtYmRh ICoKKyAgICAgICAgICAgICAgICBtLT5uZXh0X2xhbWJkYSA9IEZGTUFYKHMtPmxhbWJkYSArIG1p bl9zdGVwLCBzLT5sYW1iZGEgKgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKHMtPnFzY2FsZSArIDEpIC8gcy0+cXNjYWxlKTsKICAgICAgICAgICAgICAgICBpZiAocy0+ YWRhcHRpdmVfcXVhbnQpIHsKICAgICAgICAgICAgICAgICAgICAgaW50IGk7CkBAIC0xOTY4LDcg KzE5NjksNyBAQCB2YnZfcmV0cnk6CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoYXZjdHgtPmZs YWdzICYgQVZfQ09ERUNfRkxBR19QQVNTMSkKLSAgICAgICAgICAgIGZmX3dyaXRlX3Bhc3MxX3N0 YXRzKHMpOworICAgICAgICAgICAgZmZfd3JpdGVfcGFzczFfc3RhdHMobSk7CiAKICAgICAgICAg Zm9yIChpbnQgaSA9IDA7IGkgPCBNUFZfTUFYX1BMQU5FUzsgaSsrKQogICAgICAgICAgICAgYXZj dHgtPmVycm9yW2ldICs9IHMtPmVuY29kaW5nX2Vycm9yW2ldOwpAQCAtMTk4MiwxMCArMTk4Mywx MCBAQCB2YnZfcmV0cnk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzLT5taXNjX2JpdHMgKyBzLT5pX3RleF9iaXRzICsKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHMtPnBfdGV4X2JpdHMpOwogICAgICAgICBmbHVzaF9w dXRfYml0cygmcy0+cGIpOwotICAgICAgICBzLT5mcmFtZV9iaXRzICA9IHB1dF9iaXRzX2NvdW50 KCZzLT5wYik7CisgICAgICAgIG0tPmZyYW1lX2JpdHMgID0gcHV0X2JpdHNfY291bnQoJnMtPnBi KTsKIAotICAgICAgICBzdHVmZmluZ19jb3VudCA9IGZmX3Zidl91cGRhdGUocywgcy0+ZnJhbWVf Yml0cyk7Ci0gICAgICAgIHMtPnN0dWZmaW5nX2JpdHMgPSA4KnN0dWZmaW5nX2NvdW50OworICAg ICAgICBzdHVmZmluZ19jb3VudCA9IGZmX3Zidl91cGRhdGUobSwgbS0+ZnJhbWVfYml0cyk7Cisg ICAgICAgIG0tPnN0dWZmaW5nX2JpdHMgPSA4KnN0dWZmaW5nX2NvdW50OwogICAgICAgICBpZiAo c3R1ZmZpbmdfY291bnQpIHsKICAgICAgICAgICAgIGlmIChwdXRfYnl0ZXNfbGVmdCgmcy0+cGIs IDApIDwgc3R1ZmZpbmdfY291bnQgKyA1MCkgewogICAgICAgICAgICAgICAgIGF2X2xvZyhhdmN0 eCwgQVZfTE9HX0VSUk9SLCAic3R1ZmZpbmcgdG9vIGxhcmdlXG4iKTsKQEAgLTIwMDksMTAgKzIw MTAsMTAgQEAgdmJ2X3JldHJ5OgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBkZWZh dWx0OgogICAgICAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAidmJ2IGJ1 ZmZlciBvdmVyZmxvd1xuIik7Ci0gICAgICAgICAgICAgICAgcy0+c3R1ZmZpbmdfYml0cyA9IDA7 CisgICAgICAgICAgICAgICAgbS0+c3R1ZmZpbmdfYml0cyA9IDA7CiAgICAgICAgICAgICB9CiAg ICAgICAgICAgICBmbHVzaF9wdXRfYml0cygmcy0+cGIpOwotICAgICAgICAgICAgcy0+ZnJhbWVf Yml0cyAgPSBwdXRfYml0c19jb3VudCgmcy0+cGIpOworICAgICAgICAgICAgbS0+ZnJhbWVfYml0 cyAgPSBwdXRfYml0c19jb3VudCgmcy0+cGIpOwogICAgICAgICB9CiAKICAgICAgICAgLyogdXBk YXRlIE1QRUctMS8yIHZidl9kZWxheSBmb3IgQ0JSICovCkBAIC0yMDI3LDkgKzIwMjgsOSBAQCB2 YnZfcmV0cnk6CiAgICAgICAgICAgICBpbnQgdmJ2X2RlbGF5LCBtaW5fZGVsYXk7CiAgICAgICAg ICAgICBkb3VibGUgaW5iaXRzICA9IGF2Y3R4LT5yY19tYXhfcmF0ZSAqCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGF2X3EyZChhdmN0eC0+dGltZV9iYXNlKTsKLSAgICAgICAgICAgIGlu dCAgICBtaW5iaXRzID0gcy0+ZnJhbWVfYml0cyAtIDggKgorICAgICAgICAgICAgaW50ICAgIG1p bmJpdHMgPSBtLT5mcmFtZV9iaXRzIC0gOCAqCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IChzLT52YnZfZGVsYXlfcG9zIC0gMSk7Ci0gICAgICAgICAgICBkb3VibGUgYml0cyAgICA9IHMt PnJjX2NvbnRleHQuYnVmZmVyX2luZGV4ICsgbWluYml0cyAtIGluYml0czsKKyAgICAgICAgICAg IGRvdWJsZSBiaXRzICAgID0gbS0+cmNfY29udGV4dC5idWZmZXJfaW5kZXggKyBtaW5iaXRzIC0g aW5iaXRzOwogICAgICAgICAgICAgdWludDhfdCAqY29uc3QgdmJ2X2RlbGF5X3B0ciA9IHMtPnBi LmJ1ZiArIHMtPnZidl9kZWxheV9wb3M7CiAKICAgICAgICAgICAgIGlmIChiaXRzIDwgMCkKQEAg LTIwNjQsNyArMjA2NSw3IEBAIHZidl9yZXRyeToKICAgICAgICAgICAgICAgICByZXR1cm4gcmV0 OwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIHMtPnRvdGFsX2JpdHMgICAgICs9 IHMtPmZyYW1lX2JpdHM7CisgICAgICAgIG0tPnRvdGFsX2JpdHMgKz0gbS0+ZnJhbWVfYml0czsK IAogICAgICAgICBwa3QtPnB0cyA9IHMtPmN1cl9waWMucHRyLT5mLT5wdHM7CiAgICAgICAgIHBr dC0+ZHVyYXRpb24gPSBzLT5jdXJfcGljLnB0ci0+Zi0+ZHVyYXRpb247CkBAIC0yMDg5LDE0ICsy MDkwLDE0IEBAIHZidl9yZXRyeToKICAgICAgICAgaWYgKHMtPm1iX2luZm8pCiAgICAgICAgICAg ICBhdl9wYWNrZXRfc2hyaW5rX3NpZGVfZGF0YShwa3QsIEFWX1BLVF9EQVRBX0gyNjNfTUJfSU5G Tywgcy0+bWJfaW5mb19zaXplKTsKICAgICB9IGVsc2UgewotICAgICAgICBzLT5mcmFtZV9iaXRz ID0gMDsKKyAgICAgICAgbS0+ZnJhbWVfYml0cyA9IDA7CiAgICAgfQogCiAgICAgZmZfbXB2X3Vu cmVmX3BpY3R1cmUoJnMtPmN1cl9waWMpOwogCi0gICAgYXZfYXNzZXJ0MSgocy0+ZnJhbWVfYml0 cyAmIDcpID09IDApOworICAgIGF2X2Fzc2VydDEoKG0tPmZyYW1lX2JpdHMgJiA3KSA9PSAwKTsK IAotICAgIHBrdC0+c2l6ZSA9IHMtPmZyYW1lX2JpdHMgLyA4OworICAgIHBrdC0+c2l6ZSA9IG0t PmZyYW1lX2JpdHMgLyA4OwogICAgICpnb3RfcGFja2V0ID0gISFwa3QtPnNpemU7CiAgICAgcmV0 dXJuIDA7CiB9CkBAIC0zNjExLDEyICszNjEyLDE1IEBAIHN0YXRpYyB2b2lkIG1lcmdlX2NvbnRl eHRfYWZ0ZXJfZW5jb2RlKE1wZWdFbmNDb250ZXh0ICpkc3QsIE1wZWdFbmNDb250ZXh0ICpzcmMp CiAgICAgZmx1c2hfcHV0X2JpdHMoJmRzdC0+cGIpOwogfQogCi1zdGF0aWMgaW50IGVzdGltYXRl X3FwKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQgZHJ5X3J1bil7Ci0gICAgaWYgKHMtPm5leHRfbGFt YmRhKXsKLSAgICAgICAgcy0+Y3VyX3BpYy5wdHItPmYtPnF1YWxpdHkgPSBzLT5uZXh0X2xhbWJk YTsKLSAgICAgICAgaWYoIWRyeV9ydW4pIHMtPm5leHRfbGFtYmRhPSAwOworc3RhdGljIGludCBl c3RpbWF0ZV9xcChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IGRyeV9ydW4pCit7Cisg ICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKKworICAgIGlmIChtLT5uZXh0X2xh bWJkYSl7CisgICAgICAgIHMtPmN1cl9waWMucHRyLT5mLT5xdWFsaXR5ID0gbS0+bmV4dF9sYW1i ZGE7CisgICAgICAgIGlmKCFkcnlfcnVuKSBtLT5uZXh0X2xhbWJkYT0gMDsKICAgICB9IGVsc2Ug aWYgKCFzLT5maXhlZF9xc2NhbGUpIHsKLSAgICAgICAgaW50IHF1YWxpdHkgPSBmZl9yYXRlX2Vz dGltYXRlX3FzY2FsZShzLCBkcnlfcnVuKTsKKyAgICAgICAgaW50IHF1YWxpdHkgPSBmZl9yYXRl X2VzdGltYXRlX3FzY2FsZShtLCBkcnlfcnVuKTsKICAgICAgICAgcy0+Y3VyX3BpYy5wdHItPmYt PnF1YWxpdHkgPSBxdWFsaXR5OwogICAgICAgICBpZiAocy0+Y3VyX3BpYy5wdHItPmYtPnF1YWxp dHkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMzY2MSw4ICszNjY1LDkgQEAgc3Rh dGljIHZvaWQgc2V0X2ZyYW1lX2Rpc3RhbmNlcyhNcGVnRW5jQ29udGV4dCAqIHMpewogICAgIH0K IH0KIAotc3RhdGljIGludCBlbmNvZGVfcGljdHVyZShNcGVnRW5jQ29udGV4dCAqcywgY29uc3Qg QVZQYWNrZXQgKnBrdCkKK3N0YXRpYyBpbnQgZW5jb2RlX3BpY3R1cmUoTVBWTWFpbkVuY0NvbnRl eHQgKmNvbnN0IG0sIGNvbnN0IEFWUGFja2V0ICpwa3QpCiB7CisgICAgTXBlZ0VuY0NvbnRleHQg KmNvbnN0IHMgPSAmbS0+czsKICAgICBpbnQgaSwgcmV0OwogICAgIGludCBiaXRzOwogICAgIGlu dCBjb250ZXh0X2NvdW50ID0gcy0+c2xpY2VfY29udGV4dF9jb3VudDsKQEAgLTM2ODksOSArMzY5 NCwxMCBAQCBzdGF0aWMgaW50IGVuY29kZV9waWN0dXJlKE1wZWdFbmNDb250ZXh0ICpzLCBjb25z dCBBVlBhY2tldCAqcGt0KQogICAgIH0KIAogICAgIGlmIChzLT5hdmN0eC0+ZmxhZ3MgJiBBVl9D T0RFQ19GTEFHX1BBU1MyKSB7Ci0gICAgICAgIGlmIChlc3RpbWF0ZV9xcChzLDEpIDwgMCkKLSAg ICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgZmZfZ2V0XzJwYXNzX2Zjb2RlKHMpOworICAg ICAgICByZXQgPSBlc3RpbWF0ZV9xcChtLCAxKTsKKyAgICAgICAgaWYgKHJldCA8IDApCisgICAg ICAgICAgICByZXR1cm4gcmV0OworICAgICAgICBmZl9nZXRfMnBhc3NfZmNvZGUobSk7CiAgICAg fSBlbHNlIGlmICghKHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfUVNDQUxFKSkgewog ICAgICAgICBpZihzLT5waWN0X3R5cGU9PUFWX1BJQ1RVUkVfVFlQRV9CKQogICAgICAgICAgICAg cy0+bGFtYmRhPSBzLT5sYXN0X2xhbWJkYV9mb3Jbcy0+cGljdF90eXBlXTsKQEAgLTM4MTQsOCAr MzgyMCw5IEBAIHN0YXRpYyBpbnQgZW5jb2RlX3BpY3R1cmUoTXBlZ0VuY0NvbnRleHQgKnMsIGNv bnN0IEFWUGFja2V0ICpwa3QpCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAoZXN0aW1hdGVf cXAocywgMCkgPCAwKQotICAgICAgICByZXR1cm4gLTE7CisgICAgcmV0ID0gZXN0aW1hdGVfcXAo bSwgMCk7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIHJldHVybiByZXQ7CiAKICAgICBpZiAo cy0+cXNjYWxlIDwgMyAmJiBzLT5tYXhfcWNvZWZmIDw9IDEyOCAmJgogICAgICAgICBzLT5waWN0 X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kgJiYKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBl Z3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IDdiNTYzNWU1MGUu LmMxZDI4MjEwMzggMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIv bGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtMzIsNiArMzIsNyBAQAogCiAjaW5jbHVkZSAi bGliYXZ1dGlsL29wdC5oIgogI2luY2x1ZGUgIm1wZWd2aWRlby5oIgorI2luY2x1ZGUgInJhdGVj b250cm9sLmgiCiAKICNkZWZpbmUgTVBWRU5DX01BWF9CX0ZSQU1FUyAxNgogCkBAIC00Myw2ICs0 NCwxMyBAQCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAgICAgaW50IGJfZnJh bWVfc3RyYXRlZ3k7CiAgICAgaW50IGJfc2Vuc2l0aXZpdHk7CiAgICAgaW50IGJyZF9zY2FsZTsK KworICAgIC8qIGJpdCByYXRlIGNvbnRyb2wgKi8KKyAgICBpbnQ2NF90IHRvdGFsX2JpdHM7Cisg ICAgaW50IGZyYW1lX2JpdHM7ICAgICAgICAgICAgICAgIC8vLzwgYml0cyB1c2VkIGZvciB0aGUg Y3VycmVudCBmcmFtZQorICAgIGludCBzdHVmZmluZ19iaXRzOyAgICAgICAgICAgICAvLy88IGJp dHMgdXNlZCBmb3Igc3R1ZmZpbmcKKyAgICBpbnQgbmV4dF9sYW1iZGE7ICAgICAgICAgICAgICAg Ly8vPCBuZXh0IGxhbWJkYSB1c2VkIGZvciByZXRyeWluZyB0byBlbmNvZGUgYSBmcmFtZQorICAg IFJhdGVDb250cm9sQ29udGV4dCByY19jb250ZXh0OyAvLy88IGNvbnRhaW5zIHN0dWZmIG9ubHkg YWNjZXNzZWQgaW4gcmF0ZWNvbnRyb2wuYwogfSBNUFZNYWluRW5jQ29udGV4dDsKIAogI2RlZmlu ZSBNQVhfRkNPREUgICAgICAgIDcKQEAgLTk0LDcgKzEwMiw3IEBAIHR5cGVkZWYgc3RydWN0IE1Q Vk1haW5FbmNDb250ZXh0IHsKIAogI2RlZmluZSBGRl9NUFZfT0ZGU0VUKHgpIG9mZnNldG9mKE1w ZWdFbmNDb250ZXh0LCB4KQogI2RlZmluZSBGRl9NUFZfTUFJTl9PRkZTRVQoeCkgb2Zmc2V0b2Yo TVBWTWFpbkVuY0NvbnRleHQsIHgpCi0jZGVmaW5lIEZGX1JDX09GRlNFVCh4KSAgb2Zmc2V0b2Yo TXBlZ0VuY0NvbnRleHQsIHJjX2NvbnRleHQueCkKKyNkZWZpbmUgRkZfUkNfT0ZGU0VUKHgpICBv ZmZzZXRvZihNUFZNYWluRW5jQ29udGV4dCwgcmNfY29udGV4dC54KQogI2RlZmluZSBGRl9NUFZf T1BUX0ZMQUdTIChBVl9PUFRfRkxBR19WSURFT19QQVJBTSB8IEFWX09QVF9GTEFHX0VOQ09ESU5H X1BBUkFNKQogI2RlZmluZSBGRl9NUFZfQ09NTU9OX09QVFMgXAogRkZfTVBWX09QVF9DTVBfRlVO QywgXApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9yYXRlY29udHJvbC5jIGIvbGliYXZjb2RlYy9y YXRlY29udHJvbC5jCmluZGV4IGY1ZTBiNzBhOWEuLmViYzNhMzBmYzEgMTAwNjQ0Ci0tLSBhL2xp YmF2Y29kZWMvcmF0ZWNvbnRyb2wuYworKysgYi9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMKQEAg LTM1LDggKzM1LDkgQEAKICNpbmNsdWRlICJtcGVndmlkZW9lbmMuaCIKICNpbmNsdWRlICJsaWJh dnV0aWwvZXZhbC5oIgogCi12b2lkIGZmX3dyaXRlX3Bhc3MxX3N0YXRzKE1wZWdFbmNDb250ZXh0 ICpzKQordm9pZCBmZl93cml0ZV9wYXNzMV9zdGF0cyhNUFZNYWluRW5jQ29udGV4dCAqY29uc3Qg bSkKIHsKKyAgICBjb25zdCBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwogICAgIHNu cHJpbnRmKHMtPmF2Y3R4LT5zdGF0c19vdXQsIDI1NiwKICAgICAgICAgICAgICAiaW46JWQgb3V0 OiVkIHR5cGU6JWQgcTolZCBpdGV4OiVkIHB0ZXg6JWQgbXY6JWQgbWlzYzolZCAiCiAgICAgICAg ICAgICAgImZjb2RlOiVkIGJjb2RlOiVkIG1jLXZhcjolIlBSSWQ2NCIgdmFyOiUiUFJJZDY0IiBp Y291bnQ6JWQgaGJpdHM6JWQ7XG4iLApAQCAtMTAxLDkgKzEwMiwxMCBAQCBzdGF0aWMgZG91Ymxl IGJpdHMycXBfY2Iodm9pZCAqcmNlLCBkb3VibGUgcXApCiAgICAgcmV0dXJuIGJpdHMycXAocmNl LCBxcCk7CiB9CiAKLXN0YXRpYyBkb3VibGUgZ2V0X2RpZmZfbGltaXRlZF9xKE1wZWdFbmNDb250 ZXh0ICpzLCBjb25zdCBSYXRlQ29udHJvbEVudHJ5ICpyY2UsIGRvdWJsZSBxKQorc3RhdGljIGRv dWJsZSBnZXRfZGlmZl9saW1pdGVkX3EoTVBWTWFpbkVuY0NvbnRleHQgKm0sIGNvbnN0IFJhdGVD b250cm9sRW50cnkgKnJjZSwgZG91YmxlIHEpCiB7Ci0gICAgUmF0ZUNvbnRyb2xDb250ZXh0ICpy Y2MgICA9ICZzLT5yY19jb250ZXh0OworICAgIE1wZWdFbmNDb250ZXh0ICAgICAqY29uc3QgICBz ID0gJm0tPnM7CisgICAgUmF0ZUNvbnRyb2xDb250ZXh0ICpjb25zdCByY2MgPSAmbS0+cmNfY29u dGV4dDsKICAgICBBVkNvZGVjQ29udGV4dCAqYSAgICAgICAgID0gcy0+YXZjdHg7CiAgICAgY29u c3QgaW50IHBpY3RfdHlwZSAgICAgICA9IHJjZS0+bmV3X3BpY3RfdHlwZTsKICAgICBjb25zdCBk b3VibGUgbGFzdF9wX3EgICAgID0gcmNjLT5sYXN0X3FzY2FsZV9mb3JbQVZfUElDVFVSRV9UWVBF X1BdOwpAQCAtMTY4LDEwICsxNzAsMTEgQEAgc3RhdGljIHZvaWQgZ2V0X3FtaW5tYXgoaW50ICpx bWluX3JldCwgaW50ICpxbWF4X3JldCwgTXBlZ0VuY0NvbnRleHQgKnMsIGludCBwaWMKICAgICAq cW1heF9yZXQgPSBxbWF4OwogfQogCi1zdGF0aWMgZG91YmxlIG1vZGlmeV9xc2NhbGUoTXBlZ0Vu Y0NvbnRleHQgKnMsIGNvbnN0IFJhdGVDb250cm9sRW50cnkgKnJjZSwKK3N0YXRpYyBkb3VibGUg bW9kaWZ5X3FzY2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3QgUmF0ZUNvbnRy b2xFbnRyeSAqcmNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdWJsZSBxLCBpbnQg ZnJhbWVfbnVtKQogewotICAgIFJhdGVDb250cm9sQ29udGV4dCAqcmNjICA9ICZzLT5yY19jb250 ZXh0OworICAgIE1wZWdFbmNDb250ZXh0ICAgICAqY29uc3QgICBzID0gJm0tPnM7CisgICAgUmF0 ZUNvbnRyb2xDb250ZXh0ICpjb25zdCByY2MgPSAmbS0+cmNfY29udGV4dDsKICAgICBjb25zdCBk b3VibGUgYnVmZmVyX3NpemUgPSBzLT5hdmN0eC0+cmNfYnVmZmVyX3NpemU7CiAgICAgY29uc3Qg ZG91YmxlIGZwcyAgICAgICAgID0gZ2V0X2ZwcyhzLT5hdmN0eCk7CiAgICAgY29uc3QgZG91Ymxl IG1pbl9yYXRlICAgID0gcy0+YXZjdHgtPnJjX21pbl9yYXRlIC8gZnBzOwpAQCAtMjU5LDEwICsy NjIsMTEgQEAgc3RhdGljIGRvdWJsZSBtb2RpZnlfcXNjYWxlKE1wZWdFbmNDb250ZXh0ICpzLCBj b25zdCBSYXRlQ29udHJvbEVudHJ5ICpyY2UsCiAvKioKICAqIE1vZGlmeSB0aGUgYml0cmF0ZSBj dXJ2ZSBmcm9tIHBhc3MxIGZvciBvbmUgZnJhbWUuCiAgKi8KLXN0YXRpYyBkb3VibGUgZ2V0X3Fz Y2FsZShNcGVnRW5jQ29udGV4dCAqcywgUmF0ZUNvbnRyb2xFbnRyeSAqcmNlLAorc3RhdGljIGRv dWJsZSBnZXRfcXNjYWxlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBSYXRlQ29udHJvbEVu dHJ5ICpyY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgZG91YmxlIHJhdGVfZmFjdG9yLCBp bnQgZnJhbWVfbnVtKQogewotICAgIFJhdGVDb250cm9sQ29udGV4dCAqcmNjID0gJnMtPnJjX2Nv bnRleHQ7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKKyAgICBSYXRlQ29u dHJvbENvbnRleHQgKnJjYyA9ICZtLT5yY19jb250ZXh0OwogICAgIEFWQ29kZWNDb250ZXh0ICph ICAgICAgID0gcy0+YXZjdHg7CiAgICAgY29uc3QgaW50IHBpY3RfdHlwZSAgICAgPSByY2UtPm5l d19waWN0X3R5cGU7CiAgICAgY29uc3QgZG91YmxlIG1iX251bSAgICAgPSBzLT5tYl9udW07CkBA IC0zMzIsOSArMzM2LDEwIEBAIHN0YXRpYyBkb3VibGUgZ2V0X3FzY2FsZShNcGVnRW5jQ29udGV4 dCAqcywgUmF0ZUNvbnRyb2xFbnRyeSAqcmNlLAogICAgIHJldHVybiBxOwogfQogCi1zdGF0aWMg aW50IGluaXRfcGFzczIoTXBlZ0VuY0NvbnRleHQgKnMpCitzdGF0aWMgaW50IGluaXRfcGFzczIo TVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiB7Ci0gICAgUmF0ZUNvbnRyb2xDb250ZXh0ICpy Y2MgPSAmcy0+cmNfY29udGV4dDsKKyAgICBSYXRlQ29udHJvbENvbnRleHQgKmNvbnN0IHJjYyA9 ICZtLT5yY19jb250ZXh0OworICAgIE1wZWdFbmNDb250ZXh0ICAgICAqY29uc3QgICBzID0gJm0t PnM7CiAgICAgQVZDb2RlY0NvbnRleHQgKmEgICAgICAgPSBzLT5hdmN0eDsKICAgICBpbnQgaSwg dG9vYmlnOwogICAgIEFWUmF0aW9uYWwgZnBzICAgICAgICAgPSBnZXRfZnBzUShzLT5hdmN0eCk7 CkBAIC0zOTMsNyArMzk4LDcgQEAgc3RhdGljIGludCBpbml0X3Bhc3MyKE1wZWdFbmNDb250ZXh0 ICpzKQogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcmNjLT5udW1fZW50cmllczsgaSsrKSB7CiAg ICAgICAgICAgICBjb25zdCBSYXRlQ29udHJvbEVudHJ5ICpyY2UgPSAmcmNjLT5lbnRyeVtpXTsK IAotICAgICAgICAgICAgcXNjYWxlW2ldID0gZ2V0X3FzY2FsZShzLCAmcmNjLT5lbnRyeVtpXSwg cmF0ZV9mYWN0b3IsIGkpOworICAgICAgICAgICAgcXNjYWxlW2ldID0gZ2V0X3FzY2FsZShtLCAm cmNjLT5lbnRyeVtpXSwgcmF0ZV9mYWN0b3IsIGkpOwogICAgICAgICAgICAgcmNjLT5sYXN0X3Fz Y2FsZV9mb3JbcmNlLT5waWN0X3R5cGVdID0gcXNjYWxlW2ldOwogICAgICAgICB9CiAgICAgICAg IGF2X2Fzc2VydDAoZmlsdGVyX3NpemUgJSAyID09IDEpOwpAQCAtNDAyLDEzICs0MDcsMTMgQEAg c3RhdGljIGludCBpbml0X3Bhc3MyKE1wZWdFbmNDb250ZXh0ICpzKQogICAgICAgICBmb3IgKGkg PSBGRk1BWCgwLCByY2MtPm51bV9lbnRyaWVzIC0gMzAwKTsgaSA8IHJjYy0+bnVtX2VudHJpZXM7 IGkrKykgewogICAgICAgICAgICAgY29uc3QgUmF0ZUNvbnRyb2xFbnRyeSAqcmNlID0gJnJjYy0+ ZW50cnlbaV07CiAKLSAgICAgICAgICAgIHFzY2FsZVtpXSA9IGdldF9kaWZmX2xpbWl0ZWRfcShz LCByY2UsIHFzY2FsZVtpXSk7CisgICAgICAgICAgICBxc2NhbGVbaV0gPSBnZXRfZGlmZl9saW1p dGVkX3EobSwgcmNlLCBxc2NhbGVbaV0pOwogICAgICAgICB9CiAKICAgICAgICAgZm9yIChpID0g cmNjLT5udW1fZW50cmllcyAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICBjb25zdCBS YXRlQ29udHJvbEVudHJ5ICpyY2UgPSAmcmNjLT5lbnRyeVtpXTsKIAotICAgICAgICAgICAgcXNj YWxlW2ldID0gZ2V0X2RpZmZfbGltaXRlZF9xKHMsIHJjZSwgcXNjYWxlW2ldKTsKKyAgICAgICAg ICAgIHFzY2FsZVtpXSA9IGdldF9kaWZmX2xpbWl0ZWRfcShtLCByY2UsIHFzY2FsZVtpXSk7CiAg ICAgICAgIH0KIAogICAgICAgICAvKiBzbW9vdGggY3VydmUgKi8KQEAgLTQzOCwxMCArNDQzLDEw IEBAIHN0YXRpYyBpbnQgaW5pdF9wYXNzMihNcGVnRW5jQ29udGV4dCAqcykKICAgICAgICAgICAg IFJhdGVDb250cm9sRW50cnkgKnJjZSA9ICZyY2MtPmVudHJ5W2ldOwogICAgICAgICAgICAgZG91 YmxlIGJpdHM7CiAKLSAgICAgICAgICAgIHJjZS0+bmV3X3FzY2FsZSA9IG1vZGlmeV9xc2NhbGUo cywgcmNlLCBibHVycmVkX3FzY2FsZVtpXSwgaSk7CisgICAgICAgICAgICByY2UtPm5ld19xc2Nh bGUgPSBtb2RpZnlfcXNjYWxlKG0sIHJjZSwgYmx1cnJlZF9xc2NhbGVbaV0sIGkpOwogCiAgICAg ICAgICAgICBiaXRzICA9IHFwMmJpdHMocmNlLCByY2UtPm5ld19xc2NhbGUpICsgcmNlLT5tdl9i aXRzICsgcmNlLT5taXNjX2JpdHM7Ci0gICAgICAgICAgICBiaXRzICs9IDggKiBmZl92YnZfdXBk YXRlKHMsIGJpdHMpOworICAgICAgICAgICAgYml0cyArPSA4ICogZmZfdmJ2X3VwZGF0ZShtLCBi aXRzKTsKIAogICAgICAgICAgICAgcmNlLT5leHBlY3RlZF9iaXRzID0gZXhwZWN0ZWRfYml0czsK ICAgICAgICAgICAgIGV4cGVjdGVkX2JpdHMgICAgICs9IGJpdHM7CkBAIC00OTQsOSArNDk5LDEw IEBAIHN0YXRpYyBpbnQgaW5pdF9wYXNzMihNcGVnRW5jQ29udGV4dCAqcykKICAgICByZXR1cm4g MDsKIH0KIAotYXZfY29sZCBpbnQgZmZfcmF0ZV9jb250cm9sX2luaXQoTXBlZ0VuY0NvbnRleHQg KnMpCithdl9jb2xkIGludCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSkKIHsKLSAgICBSYXRlQ29udHJvbENvbnRleHQgKnJjYyA9ICZzLT5yY19jb250ZXh0 OworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CisgICAgUmF0ZUNvbnRyb2xD b250ZXh0ICpyY2MgPSAmbS0+cmNfY29udGV4dDsKICAgICBpbnQgaSwgcmVzOwogICAgIHN0YXRp YyBjb25zdCBjaGFyICogY29uc3QgY29uc3RfbmFtZXNbXSA9IHsKICAgICAgICAgIlBJIiwKQEAg LTYzMiw3ICs2MzgsNyBAQCBhdl9jb2xkIGludCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNcGVnRW5j Q29udGV4dCAqcykKICAgICAgICAgICAgIHAgPSBuZXh0OwogICAgICAgICB9CiAKLSAgICAgICAg cmVzID0gaW5pdF9wYXNzMihzKTsKKyAgICAgICAgcmVzID0gaW5pdF9wYXNzMihtKTsKICAgICAg ICAgaWYgKHJlcyA8IDApCiAgICAgICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KQEAgLTY4Niw3 ICs2OTIsNyBAQCBhdl9jb2xkIGludCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNcGVnRW5jQ29udGV4 dCAqcykKICAgICAgICAgICAgICAgICByY2MtPm12X2JpdHNfc3VtW3JjZS5waWN0X3R5cGVdICs9 IHJjZS5tdl9iaXRzOwogICAgICAgICAgICAgICAgIHJjYy0+ZnJhbWVfY291bnRbcmNlLnBpY3Rf dHlwZV0rKzsKIAotICAgICAgICAgICAgICAgIGdldF9xc2NhbGUocywgJnJjZSwgcmNjLT5wYXNz MV93YW50ZWRfYml0cyAvIHJjYy0+cGFzczFfcmNfZXFfb3V0cHV0X3N1bSwgaSk7CisgICAgICAg ICAgICAgICAgZ2V0X3FzY2FsZShtLCAmcmNlLCByY2MtPnBhc3MxX3dhbnRlZF9iaXRzIC8gcmNj LT5wYXNzMV9yY19lcV9vdXRwdXRfc3VtLCBpKTsKIAogICAgICAgICAgICAgICAgIC8vIEZJWE1F IG1pc2JlaGF2ZXMgYSBsaXR0bGUgZm9yIHZhcmlhYmxlIGZwcwogICAgICAgICAgICAgICAgIHJj Yy0+cGFzczFfd2FudGVkX2JpdHMgKz0gcy0+Yml0X3JhdGUgLyBnZXRfZnBzKHMtPmF2Y3R4KTsK QEAgLTcxNyw5ICs3MjMsMTAgQEAgYXZfY29sZCB2b2lkIGZmX3JhdGVfY29udHJvbF91bmluaXQo UmF0ZUNvbnRyb2xDb250ZXh0ICpyY2MpCiAgICAgYXZfZnJlZXAoJnJjYy0+Y3BseF90YWIpOwog fQogCi1pbnQgZmZfdmJ2X3VwZGF0ZShNcGVnRW5jQ29udGV4dCAqcywgaW50IGZyYW1lX3NpemUp CitpbnQgZmZfdmJ2X3VwZGF0ZShNUFZNYWluRW5jQ29udGV4dCAqbSwgaW50IGZyYW1lX3NpemUp CiB7Ci0gICAgUmF0ZUNvbnRyb2xDb250ZXh0ICpyY2MgPSAmcy0+cmNfY29udGV4dDsKKyAgICBN cGVnRW5jQ29udGV4dCAgICAgKmNvbnN0ICAgcyA9ICZtLT5zOworICAgIFJhdGVDb250cm9sQ29u dGV4dCAqY29uc3QgcmNjID0gJm0tPnJjX2NvbnRleHQ7CiAgICAgY29uc3QgZG91YmxlIGZwcyAg ICAgICAgPSBnZXRfZnBzKHMtPmF2Y3R4KTsKICAgICBjb25zdCBpbnQgYnVmZmVyX3NpemUgICA9 IHMtPmF2Y3R4LT5yY19idWZmZXJfc2l6ZTsKICAgICBjb25zdCBkb3VibGUgbWluX3JhdGUgICA9 IHMtPmF2Y3R4LT5yY19taW5fcmF0ZSAvIGZwczsKQEAgLTg5Myw5ICs5MDAsMTAgQEAgc3RhdGlj IHZvaWQgYWRhcHRpdmVfcXVhbnRpemF0aW9uKFJhdGVDb250cm9sQ29udGV4dCAqY29uc3QgcmNj LAogICAgIH0KIH0KIAotdm9pZCBmZl9nZXRfMnBhc3NfZmNvZGUoTXBlZ0VuY0NvbnRleHQgKnMp Cit2b2lkIGZmX2dldF8ycGFzc19mY29kZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIHsK LSAgICBjb25zdCBSYXRlQ29udHJvbENvbnRleHQgKnJjYyA9ICZzLT5yY19jb250ZXh0OworICAg IE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CisgICAgY29uc3QgUmF0ZUNvbnRyb2xD b250ZXh0ICpyY2MgPSAmbS0+cmNfY29udGV4dDsKICAgICBjb25zdCBSYXRlQ29udHJvbEVudHJ5 ICAgKnJjZSA9ICZyY2MtPmVudHJ5W3MtPnBpY3R1cmVfbnVtYmVyXTsKIAogICAgIHMtPmZfY29k ZSA9IHJjZS0+Zl9jb2RlOwpAQCAtOTA0LDggKzkxMiwxMCBAQCB2b2lkIGZmX2dldF8ycGFzc19m Y29kZShNcGVnRW5jQ29udGV4dCAqcykKIAogLy8gRklYTUUgcmQgb3IgYXQgbGVhc3QgYXBwcm94 IGZvciBkcXVhbnQKIAotZmxvYXQgZmZfcmF0ZV9lc3RpbWF0ZV9xc2NhbGUoTXBlZ0VuY0NvbnRl eHQgKnMsIGludCBkcnlfcnVuKQorZmxvYXQgZmZfcmF0ZV9lc3RpbWF0ZV9xc2NhbGUoTVBWTWFp bkVuY0NvbnRleHQgKmNvbnN0IG0sIGludCBkcnlfcnVuKQogeworICAgIE1wZWdFbmNDb250ZXh0 ICpjb25zdCBzID0gJm0tPnM7CisgICAgUmF0ZUNvbnRyb2xDb250ZXh0ICpyY2MgPSAmbS0+cmNf Y29udGV4dDsKICAgICBmbG9hdCBxOwogICAgIGludCBxbWluLCBxbWF4OwogICAgIGZsb2F0IGJy X2NvbXBlbnNhdGlvbjsKQEAgLTkxNCw3ICs5MjQsNiBAQCBmbG9hdCBmZl9yYXRlX2VzdGltYXRl X3FzY2FsZShNcGVnRW5jQ29udGV4dCAqcywgaW50IGRyeV9ydW4pCiAgICAgZG91YmxlIGZwczsK ICAgICBpbnQgcGljdHVyZV9udW1iZXIgPSBzLT5waWN0dXJlX251bWJlcjsKICAgICBpbnQ2NF90 IHdhbnRlZF9iaXRzOwotICAgIFJhdGVDb250cm9sQ29udGV4dCAqcmNjID0gJnMtPnJjX2NvbnRl eHQ7CiAgICAgQVZDb2RlY0NvbnRleHQgKmEgICAgICAgPSBzLT5hdmN0eDsKICAgICBSYXRlQ29u dHJvbEVudHJ5IGxvY2FsX3JjZSwgKnJjZTsKICAgICBkb3VibGUgYml0czsKQEAgLTkzMSwxMSAr OTQwLDExIEBAIGZsb2F0IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKE1wZWdFbmNDb250ZXh0ICpz LCBpbnQgZHJ5X3J1bikKICAgICAgICAgY29uc3QgaW50NjRfdCBsYXN0X3ZhciA9CiAgICAgICAg ICAgICBzLT5sYXN0X3BpY3RfdHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfSSA/IHJjYy0+bGFzdF9t Yl92YXJfc3VtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA6IHJjYy0+bGFzdF9tY19tYl92YXJfc3VtOwotICAgICAgICBhdl9hc3NlcnQxKHMtPmZy YW1lX2JpdHMgPj0gcy0+c3R1ZmZpbmdfYml0cyk7CisgICAgICAgIGF2X2Fzc2VydDEobS0+ZnJh bWVfYml0cyA+PSBtLT5zdHVmZmluZ19iaXRzKTsKICAgICAgICAgdXBkYXRlX3ByZWRpY3Rvcigm cmNjLT5wcmVkW3MtPmxhc3RfcGljdF90eXBlXSwKICAgICAgICAgICAgICAgICAgICAgICAgICBy Y2MtPmxhc3RfcXNjYWxlLAogICAgICAgICAgICAgICAgICAgICAgICAgIHNxcnQobGFzdF92YXIp LAotICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmZyYW1lX2JpdHMgLSBzLT5zdHVmZmluZ19i aXRzKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICBtLT5mcmFtZV9iaXRzIC0gbS0+c3R1ZmZp bmdfYml0cyk7CiAgICAgfQogCiAgICAgaWYgKHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZM QUdfUEFTUzIpIHsKQEAgLTk3MCw3ICs5NzksNyBAQCBmbG9hdCBmZl9yYXRlX2VzdGltYXRlX3Fz Y2FsZShNcGVnRW5jQ29udGV4dCAqcywgaW50IGRyeV9ydW4pCiAgICAgICAgICAgICB3YW50ZWRf Yml0cyA9IChpbnQ2NF90KXdhbnRlZF9iaXRzX2RvdWJsZTsKICAgICB9CiAKLSAgICBkaWZmID0g cy0+dG90YWxfYml0cyAtIHdhbnRlZF9iaXRzOworICAgIGRpZmYgPSBtLT50b3RhbF9iaXRzIC0g d2FudGVkX2JpdHM7CiAgICAgYnJfY29tcGVuc2F0aW9uID0gKGEtPmJpdF9yYXRlX3RvbGVyYW5j ZSAtIGRpZmYpIC8gYS0+Yml0X3JhdGVfdG9sZXJhbmNlOwogICAgIGlmIChicl9jb21wZW5zYXRp b24gPD0gMC4wKQogICAgICAgICBicl9jb21wZW5zYXRpb24gPSAwLjAwMTsKQEAgLTk4NCw3ICs5 OTMsNyBAQCBmbG9hdCBmZl9yYXRlX2VzdGltYXRlX3FzY2FsZShNcGVnRW5jQ29udGV4dCAqcywg aW50IGRyeV9ydW4pCiAKICAgICAgICAgcSA9IHJjZS0+bmV3X3FzY2FsZSAvIGJyX2NvbXBlbnNh dGlvbjsKICAgICAgICAgZmZfZGxvZyhzLT5hdmN0eCwgIiVmICVmICVmIGxhc3Q6JWQgdmFyOiUi UFJJZDY0IiB0eXBlOiVkLy9cbiIsIHEsIHJjZS0+bmV3X3FzY2FsZSwKLSAgICAgICAgICAgICAg ICBicl9jb21wZW5zYXRpb24sIHMtPmZyYW1lX2JpdHMsIHZhciwgcGljdF90eXBlKTsKKyAgICAg ICAgICAgICAgICBicl9jb21wZW5zYXRpb24sIG0tPmZyYW1lX2JpdHMsIHZhciwgcGljdF90eXBl KTsKICAgICB9IGVsc2UgewogICAgICAgICByY2UtPnBpY3RfdHlwZSAgICAgPQogICAgICAgICBy Y2UtPm5ld19waWN0X3R5cGUgPSBwaWN0X3R5cGU7CkBAIC0xMDE1LDEyICsxMDI0LDEyIEBAIGZs b2F0IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQgZHJ5X3J1 bikKICAgICAgICAgcmF0ZV9mYWN0b3IgPSByY2MtPnBhc3MxX3dhbnRlZF9iaXRzIC8KICAgICAg ICAgICAgICAgICAgICAgICByY2MtPnBhc3MxX3JjX2VxX291dHB1dF9zdW0gKiBicl9jb21wZW5z YXRpb247CiAKLSAgICAgICAgcSA9IGdldF9xc2NhbGUocywgcmNlLCByYXRlX2ZhY3RvciwgcGlj dHVyZV9udW1iZXIpOworICAgICAgICBxID0gZ2V0X3FzY2FsZShtLCByY2UsIHJhdGVfZmFjdG9y LCBwaWN0dXJlX251bWJlcik7CiAgICAgICAgIGlmIChxIDwgMCkKICAgICAgICAgICAgIHJldHVy biAtMTsKIAogICAgICAgICBhdl9hc3NlcnQwKHEgPiAwLjApOwotICAgICAgICBxID0gZ2V0X2Rp ZmZfbGltaXRlZF9xKHMsIHJjZSwgcSk7CisgICAgICAgIHEgPSBnZXRfZGlmZl9saW1pdGVkX3Eo bSwgcmNlLCBxKTsKICAgICAgICAgYXZfYXNzZXJ0MChxID4gMC4wKTsKIAogICAgICAgICAvLyBG SVhNRSB0eXBlIGRlcGVuZGVudCBibHVyIGxpa2UgaW4gMi1wYXNzCkBAIC0xMDM0LDcgKzEwNDMs NyBAQCBmbG9hdCBmZl9yYXRlX2VzdGltYXRlX3FzY2FsZShNcGVnRW5jQ29udGV4dCAqcywgaW50 IGRyeV9ydW4pCiAgICAgICAgIH0KICAgICAgICAgYXZfYXNzZXJ0MChxID4gMC4wKTsKIAotICAg ICAgICBxID0gbW9kaWZ5X3FzY2FsZShzLCByY2UsIHEsIHBpY3R1cmVfbnVtYmVyKTsKKyAgICAg ICAgcSA9IG1vZGlmeV9xc2NhbGUobSwgcmNlLCBxLCBwaWN0dXJlX251bWJlcik7CiAKICAgICAg ICAgcmNjLT5wYXNzMV93YW50ZWRfYml0cyArPSBzLT5iaXRfcmF0ZSAvIGZwczsKIApAQCAtMTA0 Nyw4ICsxMDU2LDggQEAgZmxvYXQgZmZfcmF0ZV9lc3RpbWF0ZV9xc2NhbGUoTXBlZ0VuY0NvbnRl eHQgKnMsIGludCBkcnlfcnVuKQogICAgICAgICAgICAgICAgInNpemU6JWQgdmFyOiUiUFJJZDY0 Ii8lIlBSSWQ2NCIgYnI6JSJQUklkNjQiIGZwczolZFxuIiwKICAgICAgICAgICAgICAgIGF2X2dl dF9waWN0dXJlX3R5cGVfY2hhcihwaWN0X3R5cGUpLAogICAgICAgICAgICAgICAgcW1pbiwgcSwg cW1heCwgcGljdHVyZV9udW1iZXIsCi0gICAgICAgICAgICAgICB3YW50ZWRfYml0cyAvIDEwMDAs IHMtPnRvdGFsX2JpdHMgLyAxMDAwLAotICAgICAgICAgICAgICAgYnJfY29tcGVuc2F0aW9uLCBz aG9ydF90ZXJtX3EsIHMtPmZyYW1lX2JpdHMsCisgICAgICAgICAgICAgICB3YW50ZWRfYml0cyAv IDEwMDAsIG0tPnRvdGFsX2JpdHMgLyAxMDAwLAorICAgICAgICAgICAgICAgYnJfY29tcGVuc2F0 aW9uLCBzaG9ydF90ZXJtX3EsIG0tPmZyYW1lX2JpdHMsCiAgICAgICAgICAgICAgICBzLT5tYl92 YXJfc3VtLCBzLT5tY19tYl92YXJfc3VtLAogICAgICAgICAgICAgICAgcy0+Yml0X3JhdGUgLyAx MDAwLCAoaW50KWZwcyk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9yYXRlY29udHJv bC5oIGIvbGliYXZjb2RlYy9yYXRlY29udHJvbC5oCmluZGV4IGI4ODk0OTEzMzUuLjNiY2ZhNTY1 OGEgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wuaAorKysgYi9saWJhdmNvZGVj L3JhdGVjb250cm9sLmgKQEAgLTkzLDE0ICs5MywxNCBAQCB0eXBlZGVmIHN0cnVjdCBSYXRlQ29u dHJvbENvbnRleHR7CiAgICAgZmxvYXQgKmNwbHhfdGFiLCAqYml0c190YWI7CiB9UmF0ZUNvbnRy b2xDb250ZXh0OwogCi1zdHJ1Y3QgTXBlZ0VuY0NvbnRleHQ7Cit0eXBlZGVmIHN0cnVjdCBNUFZN YWluRW5jQ29udGV4dCBNUFZNYWluRW5jQ29udGV4dDsKIAogLyogcmF0ZSBjb250cm9sICovCi1p bnQgZmZfcmF0ZV9jb250cm9sX2luaXQoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzKTsKLWZsb2F0 IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKHN0cnVjdCBNcGVnRW5jQ29udGV4dCAqcywgaW50IGRy eV9ydW4pOwotdm9pZCBmZl93cml0ZV9wYXNzMV9zdGF0cyhzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQg KnMpOwotaW50IGZmX3Zidl91cGRhdGUoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLCBpbnQgZnJh bWVfc2l6ZSk7Ci12b2lkIGZmX2dldF8ycGFzc19mY29kZShzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQg KnMpOworaW50IGZmX3JhdGVfY29udHJvbF9pbml0KE1QVk1haW5FbmNDb250ZXh0ICptKTsKK2Zs b2F0IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKE1QVk1haW5FbmNDb250ZXh0ICptLCBpbnQgZHJ5 X3J1bik7Cit2b2lkIGZmX3dyaXRlX3Bhc3MxX3N0YXRzKE1QVk1haW5FbmNDb250ZXh0ICptKTsK K2ludCBmZl92YnZfdXBkYXRlKE1QVk1haW5FbmNDb250ZXh0ICptLCBpbnQgZnJhbWVfc2l6ZSk7 Cit2b2lkIGZmX2dldF8ycGFzc19mY29kZShNUFZNYWluRW5jQ29udGV4dCAqbSk7CiB2b2lkIGZm X3JhdGVfY29udHJvbF91bmluaXQoUmF0ZUNvbnRyb2xDb250ZXh0ICpyY2MpOwogCiAjZW5kaWYg LyogQVZDT0RFQ19SQVRFQ09OVFJPTF9IICovCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3Nub3dl bmMuYyBiL2xpYmF2Y29kZWMvc25vd2VuYy5jCmluZGV4IDRkNjljMzA1M2QuLjgzMGY2ZjUwOTYg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvc25vd2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvc25vd2Vu Yy5jCkBAIC02MSw3ICs2MSw3IEBAIHR5cGVkZWYgc3RydWN0IFNub3dFbmNDb250ZXh0IHsKICAg ICBpbnQgc2NlbmVjaGFuZ2VfdGhyZXNob2xkOwogCiAgICAgTUVDbXBDb250ZXh0IG1lY2M7Ci0g ICAgTXBlZ0VuY0NvbnRleHQgbTsgLy8gbmVlZGVkIGZvciBtb3Rpb24gZXN0aW1hdGlvbiwgc2hv dWxkIG5vdCBiZSB1c2VkIGZvciBhbnl0aGluZyBlbHNlLCB0aGUgaWRlYSBpcyB0byBldmVudHVh bGx5IG1ha2UgdGhlIG1vdGlvbiBlc3RpbWF0aW9uIGluZGVwZW5kZW50IG9mIE1wZWdFbmNDb250 ZXh0LCBzbyB0aGlzIHdpbGwgYmUgcmVtb3ZlZCB0aGVuIChGSVhNRS9YWFgpCisgICAgTVBWTWFp bkVuY0NvbnRleHQgbTsgLy8gbmVlZGVkIGZvciBtb3Rpb24gZXN0aW1hdGlvbiwgc2hvdWxkIG5v dCBiZSB1c2VkIGZvciBhbnl0aGluZyBlbHNlLCB0aGUgaWRlYSBpcyB0byBldmVudHVhbGx5IG1h a2UgdGhlIG1vdGlvbiBlc3RpbWF0aW9uIGluZGVwZW5kZW50IG9mIE1wZWdFbmNDb250ZXh0LCBz byB0aGlzIHdpbGwgYmUgcmVtb3ZlZCB0aGVuIChGSVhNRS9YWFgpCiAgICAgTVBWUGljdHVyZSBj dXJfcGljLCBsYXN0X3BpYzsKICNkZWZpbmUgTUVfQ0FDSEVfU0laRSAxMDI0CiAgICAgdW5zaWdu ZWQgbWVfY2FjaGVbTUVfQ0FDSEVfU0laRV07CkBAIC0xNjAsNyArMTYwLDcgQEAgc3RhdGljIGF2 X2NvbGQgaW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIHsKICAgICBTbm93 RW5jQ29udGV4dCAqY29uc3QgZW5jID0gYXZjdHgtPnByaXZfZGF0YTsKICAgICBTbm93Q29udGV4 dCAqY29uc3QgcyA9ICZlbmMtPmNvbTsKLSAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgbXB2ID0g JmVuYy0+bTsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgbXB2ID0gJmVuYy0+bS5zOwogICAg IGludCBwbGFuZV9pbmRleCwgcmV0OwogICAgIGludCBpOwogCkBAIC0yMTcsNyArMjE3LDcgQEAg c3RhdGljIGF2X2NvbGQgaW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAg ICBtY2YoMTIsMTIpCiAKICAgICBmZl9tZV9jbXBfaW5pdCgmZW5jLT5tZWNjLCBhdmN0eCk7Ci0g ICAgcmV0ID0gZmZfbWVfaW5pdCgmZW5jLT5tLm1lLCBhdmN0eCwgJmVuYy0+bWVjYywgMCk7Cisg ICAgcmV0ID0gZmZfbWVfaW5pdCgmbXB2LT5tZSwgYXZjdHgsICZlbmMtPm1lY2MsIDApOwogICAg IGlmIChyZXQgPCAwKQogICAgICAgICByZXR1cm4gcmV0OwogICAgIGZmX21wZWd2aWRlb2VuY2Rz cF9pbml0KCZlbmMtPm1wdmVuY2RzcCwgYXZjdHgpOwpAQCAtMjUyLDcgKzI1Miw3IEBAIHN0YXRp YyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAg ICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAgIH0KICAgICBpZigoYXZjdHgtPmZsYWdz JkFWX0NPREVDX0ZMQUdfUEFTUzIpIHx8ICEoYXZjdHgtPmZsYWdzJkFWX0NPREVDX0ZMQUdfUVND QUxFKSl7Ci0gICAgICAgIHJldCA9IGZmX3JhdGVfY29udHJvbF9pbml0KG1wdik7CisgICAgICAg IHJldCA9IGZmX3JhdGVfY29udHJvbF9pbml0KCZlbmMtPm0pOwogICAgICAgICBpZihyZXQgPCAw KQogICAgICAgICAgICAgcmV0dXJuIHJldDsKICAgICB9CkBAIC0zNjksNyArMzY5LDcgQEAgc3Rh dGljIGlubGluZSBpbnQgZ2V0X3BlbmFsdHlfZmFjdG9yKGludCBsYW1iZGEsIGludCBsYW1iZGEy LCBpbnQgdHlwZSl7CiBzdGF0aWMgaW50IGVuY29kZV9xX2JyYW5jaChTbm93RW5jQ29udGV4dCAq ZW5jLCBpbnQgbGV2ZWwsIGludCB4LCBpbnQgeSkKIHsKICAgICBTbm93Q29udGV4dCAgICAgICpj b25zdCBzID0gJmVuYy0+Y29tOwotICAgIE1vdGlvbkVzdENvbnRleHQgKmNvbnN0IGMgPSAmZW5j LT5tLm1lOworICAgIE1vdGlvbkVzdENvbnRleHQgKmNvbnN0IGMgPSAmZW5jLT5tLnMubWU7CiAg ICAgdWludDhfdCBwX2J1ZmZlclsxMDI0XTsKICAgICB1aW50OF90IGlfYnVmZmVyWzEwMjRdOwog ICAgIHVpbnQ4X3QgcF9zdGF0ZVtzaXplb2Yocy0+YmxvY2tfc3RhdGUpXTsKQEAgLTQzNSw5ICs0 MzUsOSBAQCBzdGF0aWMgaW50IGVuY29kZV9xX2JyYW5jaChTbm93RW5jQ29udGV4dCAqZW5jLCBp bnQgbGV2ZWwsIGludCB4LCBpbnQgeSkKICAgICBsYXN0X212WzJdWzBdPSBib3R0b20tPm14Owog ICAgIGxhc3RfbXZbMl1bMV09IGJvdHRvbS0+bXk7CiAKLSAgICBlbmMtPm0ubWJfc3RyaWRlID0g MjsKLSAgICBlbmMtPm0ubWJfeCA9Ci0gICAgZW5jLT5tLm1iX3kgPSAwOworICAgIGVuYy0+bS5z Lm1iX3N0cmlkZSA9IDI7CisgICAgZW5jLT5tLnMubWJfeCA9CisgICAgZW5jLT5tLnMubWJfeSA9 IDA7CiAgICAgYy0+c2tpcD0gMDsKIAogICAgIGF2X2Fzc2VydDEoYy0+ICBzdHJpZGUgPT0gICBz dHJpZGUpOwpAQCAtNDQ2LDcgKzQ0Niw3IEBAIHN0YXRpYyBpbnQgZW5jb2RlX3FfYnJhbmNoKFNu b3dFbmNDb250ZXh0ICplbmMsIGludCBsZXZlbCwgaW50IHgsIGludCB5KQogICAgIGMtPnBlbmFs dHlfZmFjdG9yICAgID0gZ2V0X3BlbmFsdHlfZmFjdG9yKGVuYy0+bGFtYmRhLCBlbmMtPmxhbWJk YTIsIGMtPmF2Y3R4LT5tZV9jbXApOwogICAgIGMtPnN1Yl9wZW5hbHR5X2ZhY3Rvcj0gZ2V0X3Bl bmFsdHlfZmFjdG9yKGVuYy0+bGFtYmRhLCBlbmMtPmxhbWJkYTIsIGMtPmF2Y3R4LT5tZV9zdWJf Y21wKTsKICAgICBjLT5tYl9wZW5hbHR5X2ZhY3RvciA9IGdldF9wZW5hbHR5X2ZhY3RvcihlbmMt PmxhbWJkYSwgZW5jLT5sYW1iZGEyLCBjLT5hdmN0eC0+bWJfY21wKTsKLSAgICBjLT5jdXJyZW50 X212X3BlbmFsdHkgPSBjLT5tdl9wZW5hbHR5W2VuYy0+bS5mX2NvZGU9MV0gKyBNQVhfRE1WOwor ICAgIGMtPmN1cnJlbnRfbXZfcGVuYWx0eSA9IGMtPm12X3BlbmFsdHlbZW5jLT5tLnMuZl9jb2Rl PTFdICsgTUFYX0RNVjsKIAogICAgIGMtPnhtaW4gPSAtIHgqYmxvY2tfdyAtIDE2KzM7CiAgICAg Yy0+eW1pbiA9IC0geSpibG9ja193IC0gMTYrMzsKQEAgLTQ4Miw3ICs0ODIsNyBAQCBzdGF0aWMg aW50IGVuY29kZV9xX2JyYW5jaChTbm93RW5jQ29udGV4dCAqZW5jLCBpbnQgbGV2ZWwsIGludCB4 LCBpbnQgeSkKICAgICBmb3IocmVmPTA7IHJlZjxzLT5yZWZfZnJhbWVzOyByZWYrKyl7CiAgICAg ICAgIGluaXRfcmVmKGMsIGN1cnJlbnRfZGF0YSwgcy0+bGFzdF9waWN0dXJlW3JlZl0tPmRhdGEs IE5VTEwsIGJsb2NrX3cqeCwgYmxvY2tfdyp5LCAwKTsKIAotICAgICAgICByZWZfc2NvcmU9IGZm X2VwenNfbW90aW9uX3NlYXJjaCgmZW5jLT5tLCAmcmVmX214LCAmcmVmX215LCBQLCAwLCAvKnJl Zl9pbmRleCovIDAsIGxhc3RfbXYsCisgICAgICAgIHJlZl9zY29yZSA9IGZmX2VwenNfbW90aW9u X3NlYXJjaCgmZW5jLT5tLnMsICZyZWZfbXgsICZyZWZfbXksIFAsIDAsIC8qcmVmX2luZGV4Ki8g MCwgbGFzdF9tdiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE8 PDE2KT4+c2hpZnQsIGxldmVsLUxPRzJfTUJfU0laRSs0LCBibG9ja193KTsKIAogICAgICAgICBh dl9hc3NlcnQyKHJlZl9teCA+PSBjLT54bWluKTsKQEAgLTQ5MCw4ICs0OTAsMTAgQEAgc3RhdGlj IGludCBlbmNvZGVfcV9icmFuY2goU25vd0VuY0NvbnRleHQgKmVuYywgaW50IGxldmVsLCBpbnQg eCwgaW50IHkpCiAgICAgICAgIGF2X2Fzc2VydDIocmVmX215ID49IGMtPnltaW4pOwogICAgICAg ICBhdl9hc3NlcnQyKHJlZl9teSA8PSBjLT55bWF4KTsKIAotICAgICAgICByZWZfc2NvcmU9IGMt PnN1Yl9tb3Rpb25fc2VhcmNoKCZlbmMtPm0sICZyZWZfbXgsICZyZWZfbXksIHJlZl9zY29yZSwg MCwgMCwgbGV2ZWwtTE9HMl9NQl9TSVpFKzQsIGJsb2NrX3cpOwotICAgICAgICByZWZfc2NvcmU9 IGZmX2dldF9tYl9zY29yZSgmZW5jLT5tLCByZWZfbXgsIHJlZl9teSwgMCwgMCwgbGV2ZWwtTE9H Ml9NQl9TSVpFKzQsIGJsb2NrX3csIDApOworICAgICAgICByZWZfc2NvcmUgPSBjLT5zdWJfbW90 aW9uX3NlYXJjaCgmZW5jLT5tLnMsICZyZWZfbXgsICZyZWZfbXksIHJlZl9zY29yZSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgbGV2ZWwtTE9HMl9NQl9T SVpFKzQsIGJsb2NrX3cpOworICAgICAgICByZWZfc2NvcmUgPSBmZl9nZXRfbWJfc2NvcmUoJmVu Yy0+bS5zLCByZWZfbXgsIHJlZl9teSwgMCwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGxldmVsLUxPRzJfTUJfU0laRSs0LCBibG9ja193LCAwKTsKICAgICAgICAgcmVm X3Njb3JlKz0gMiphdl9sb2cyKDIqcmVmKSpjLT5wZW5hbHR5X2ZhY3RvcjsKICAgICAgICAgaWYo cy0+cmVmX212c1tyZWZdKXsKICAgICAgICAgICAgIHMtPnJlZl9tdnNbcmVmXVtpbmRleF1bMF09 IHJlZl9teDsKQEAgLTU2Nyw3ICs1NjksNyBAQCBzdGF0aWMgaW50IGVuY29kZV9xX2JyYW5jaChT bm93RW5jQ29udGV4dCAqZW5jLCBpbnQgbGV2ZWwsIGludCB4LCBpbnQgeSkKICAgICAgICAgaWYg KHZhcmQgPD0gNjQgfHwgdmFyZCA8IHZhcmMpCiAgICAgICAgICAgICBjLT5zY2VuZV9jaGFuZ2Vf c2NvcmUrPSBmZl9zcXJ0KHZhcmQpIC0gZmZfc3FydCh2YXJjKTsKICAgICAgICAgZWxzZQotICAg ICAgICAgICAgYy0+c2NlbmVfY2hhbmdlX3Njb3JlICs9IGVuYy0+bS5xc2NhbGU7CisgICAgICAg ICAgICBjLT5zY2VuZV9jaGFuZ2Vfc2NvcmUgKz0gZW5jLT5tLnMucXNjYWxlOwogICAgIH0KIAog ICAgIGlmKGxldmVsIT1zLT5ibG9ja19tYXhfZGVwdGgpewpAQCAtNjcwLDcgKzY3Miw3IEBAIHN0 YXRpYyBpbnQgZ2V0X2RjKFNub3dFbmNDb250ZXh0ICplbmMsIGludCBtYl94LCBpbnQgbWJfeSwg aW50IHBsYW5lX2luZGV4KQogICAgIGNvbnN0IGludCBvYm1jX3N0cmlkZT0gcGxhbmVfaW5kZXgg PyAoMipibG9ja19zaXplKT4+cy0+Y2hyb21hX2hfc2hpZnQgOiAyKmJsb2NrX3NpemU7CiAgICAg Y29uc3QgaW50IHJlZl9zdHJpZGU9IHMtPmN1cnJlbnRfcGljdHVyZS0+bGluZXNpemVbcGxhbmVf aW5kZXhdOwogICAgIGNvbnN0IHVpbnQ4X3QgKnNyYyA9IHMtPmlucHV0X3BpY3R1cmUtPmRhdGFb cGxhbmVfaW5kZXhdOwotICAgIElEV1RFTEVNICpkc3Q9IChJRFdURUxFTSopZW5jLT5tLnNjLm9i bWNfc2NyYXRjaHBhZCArIHBsYW5lX2luZGV4KmJsb2NrX3NpemUqYmxvY2tfc2l6ZSo0OyAvL0ZJ WE1FIGNoYW5nZSB0byB1bnNpZ25lZAorICAgIElEV1RFTEVNICpkc3Q9IChJRFdURUxFTSopZW5j LT5tLnMuc2Mub2JtY19zY3JhdGNocGFkICsgcGxhbmVfaW5kZXgqYmxvY2tfc2l6ZSpibG9ja19z aXplKjQ7IC8vRklYTUUgY2hhbmdlIHRvIHVuc2lnbmVkCiAgICAgY29uc3QgaW50IGJfc3RyaWRl ID0gcy0+Yl93aWR0aCA8PCBzLT5ibG9ja19tYXhfZGVwdGg7CiAgICAgY29uc3QgaW50IHc9IHAt PndpZHRoOwogICAgIGNvbnN0IGludCBoPSBwLT5oZWlnaHQ7CkBAIC03NjgsNyArNzcwLDcgQEAg c3RhdGljIGludCBnZXRfYmxvY2tfcmQoU25vd0VuY0NvbnRleHQgKmVuYywgaW50IG1iX3gsIGlu dCBtYl95LAogICAgIGNvbnN0IGludCByZWZfc3RyaWRlPSBzLT5jdXJyZW50X3BpY3R1cmUtPmxp bmVzaXplW3BsYW5lX2luZGV4XTsKICAgICB1aW50OF90ICpkc3Q9IHMtPmN1cnJlbnRfcGljdHVy ZS0+ZGF0YVtwbGFuZV9pbmRleF07CiAgICAgY29uc3QgdWludDhfdCAqc3JjID0gcy0+aW5wdXRf cGljdHVyZS0+ZGF0YVtwbGFuZV9pbmRleF07Ci0gICAgSURXVEVMRU0gKnByZWQ9IChJRFdURUxF TSopZW5jLT5tLnNjLm9ibWNfc2NyYXRjaHBhZCArIHBsYW5lX2luZGV4KmJsb2NrX3NpemUqYmxv Y2tfc2l6ZSo0OworICAgIElEV1RFTEVNICpwcmVkPSAoSURXVEVMRU0qKWVuYy0+bS5zLnNjLm9i bWNfc2NyYXRjaHBhZCArIHBsYW5lX2luZGV4KmJsb2NrX3NpemUqYmxvY2tfc2l6ZSo0OwogICAg IHVpbnQ4X3QgKmN1ciA9IHMtPnNjcmF0Y2hidWY7CiAgICAgdWludDhfdCAqdG1wID0gcy0+ZW11 X2VkZ2VfYnVmZmVyOwogICAgIGNvbnN0IGludCBiX3N0cmlkZSA9IHMtPmJfd2lkdGggPDwgcy0+ YmxvY2tfbWF4X2RlcHRoOwpAQCAtODMxLDE5ICs4MzMsMTkgQEAgc3RhdGljIGludCBnZXRfYmxv Y2tfcmQoU25vd0VuY0NvbnRleHQgKmVuYywgaW50IG1iX3gsIGludCBtYl95LAogICAgICAgICAg KiB0byBpbXByb3ZlIHRoZSBzY29yZSBvZiB0aGUgd2hvbGUgZnJhbWUsIHRodXMgaXRlcmF0aXZl IG1vdGlvbgogICAgICAgICAgKiBlc3RpbWF0aW9uIGRvZXMgbm90IGFsd2F5cyBjb252ZXJnZS4g Ki8KICAgICAgICAgaWYocy0+YXZjdHgtPm1lX2NtcCA9PSBGRl9DTVBfVzk3KQotICAgICAgICAg ICAgZGlzdG9ydGlvbiA9IGZmX3c5N18zMl9jKCZlbmMtPm0sIHNyYyArIHN4ICsgc3kqcmVmX3N0 cmlkZSwgZHN0ICsgc3ggKyBzeSpyZWZfc3RyaWRlLCByZWZfc3RyaWRlLCAzMik7CisgICAgICAg ICAgICBkaXN0b3J0aW9uID0gZmZfdzk3XzMyX2MoJmVuYy0+bS5zLCBzcmMgKyBzeCArIHN5KnJl Zl9zdHJpZGUsIGRzdCArIHN4ICsgc3kqcmVmX3N0cmlkZSwgcmVmX3N0cmlkZSwgMzIpOwogICAg ICAgICBlbHNlIGlmKHMtPmF2Y3R4LT5tZV9jbXAgPT0gRkZfQ01QX1c1MykKLSAgICAgICAgICAg IGRpc3RvcnRpb24gPSBmZl93NTNfMzJfYygmZW5jLT5tLCBzcmMgKyBzeCArIHN5KnJlZl9zdHJp ZGUsIGRzdCArIHN4ICsgc3kqcmVmX3N0cmlkZSwgcmVmX3N0cmlkZSwgMzIpOworICAgICAgICAg ICAgZGlzdG9ydGlvbiA9IGZmX3c1M18zMl9jKCZlbmMtPm0ucywgc3JjICsgc3ggKyBzeSpyZWZf c3RyaWRlLCBkc3QgKyBzeCArIHN5KnJlZl9zdHJpZGUsIHJlZl9zdHJpZGUsIDMyKTsKICAgICAg ICAgZWxzZXsKICAgICAgICAgICAgIGRpc3RvcnRpb24gPSAwOwogICAgICAgICAgICAgZm9yKGk9 MDsgaTw0OyBpKyspewogICAgICAgICAgICAgICAgIGludCBvZmYgPSBzeCsxNiooaSYxKSArIChz eSsxNiooaT4+MSkpKnJlZl9zdHJpZGU7Ci0gICAgICAgICAgICAgICAgZGlzdG9ydGlvbiArPSBl bmMtPm0ubWUubWVfY21wWzBdKCZlbmMtPm0sIHNyYyArIG9mZiwgZHN0ICsgb2ZmLCByZWZfc3Ry aWRlLCAxNik7CisgICAgICAgICAgICAgICAgZGlzdG9ydGlvbiArPSBlbmMtPm0ucy5tZS5tZV9j bXBbMF0oJmVuYy0+bS5zLCBzcmMgKyBvZmYsIGRzdCArIG9mZiwgcmVmX3N0cmlkZSwgMTYpOwog ICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfWVsc2V7CiAgICAgICAgIGF2X2Fzc2VydDIo YmxvY2tfdz09OCk7Ci0gICAgICAgIGRpc3RvcnRpb24gPSBlbmMtPm0ubWUubWVfY21wWzBdKCZl bmMtPm0sIHNyYyArIHN4ICsgc3kqcmVmX3N0cmlkZSwgZHN0ICsgc3ggKyBzeSpyZWZfc3RyaWRl LCByZWZfc3RyaWRlLCBibG9ja193KjIpOworICAgICAgICBkaXN0b3J0aW9uID0gZW5jLT5tLnMu bWUubWVfY21wWzBdKCZlbmMtPm0ucywgc3JjICsgc3ggKyBzeSpyZWZfc3RyaWRlLCBkc3QgKyBz eCArIHN5KnJlZl9zdHJpZGUsIHJlZl9zdHJpZGUsIGJsb2NrX3cqMik7CiAgICAgfQogCiAgICAg aWYocGxhbmVfaW5kZXg9PTApewpAQCAtOTA5LDcgKzkxMSw3IEBAIHN0YXRpYyBpbnQgZ2V0XzRi bG9ja19yZChTbm93RW5jQ29udGV4dCAqZW5jLCBpbnQgbWJfeCwgaW50IG1iX3ksIGludCBwbGFu ZV9pbmRlCiAgICAgICAgIH0KIAogICAgICAgICBhdl9hc3NlcnQxKGJsb2NrX3c9PSA4IHx8IGJs b2NrX3c9PTE2KTsKLSAgICAgICAgZGlzdG9ydGlvbiArPSBlbmMtPm0ubWUubWVfY21wW2Jsb2Nr X3c9PThdKCZlbmMtPm0sIHNyYyArIHggKyB5KnJlZl9zdHJpZGUsIGRzdCArIHggKyB5KnJlZl9z dHJpZGUsIHJlZl9zdHJpZGUsIGJsb2NrX2gpOworICAgICAgICBkaXN0b3J0aW9uICs9IGVuYy0+ bS5zLm1lLm1lX2NtcFtibG9ja193PT04XSgmZW5jLT5tLnMsIHNyYyArIHggKyB5KnJlZl9zdHJp ZGUsIGRzdCArIHggKyB5KnJlZl9zdHJpZGUsIHJlZl9zdHJpZGUsIGJsb2NrX2gpOwogICAgIH0K IAogICAgIGlmKHBsYW5lX2luZGV4PT0wKXsKQEAgLTE3MDYsMTEgKzE3MDgsMTEgQEAgc3RhdGlj IGludCByYXRlY29udHJvbF8xcGFzcyhTbm93RW5jQ29udGV4dCAqZW5jLCBBVkZyYW1lICpwaWN0 KQogICAgIGNvZWZfc3VtID0gKHVpbnQ2NF90KWNvZWZfc3VtICogY29lZl9zdW0gPj4gMTY7CiAK ICAgICBpZihwaWN0LT5waWN0X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kpewotICAgICAgICBl bmMtPm0ubWJfdmFyX3N1bSAgICA9IGNvZWZfc3VtOwotICAgICAgICBlbmMtPm0ubWNfbWJfdmFy X3N1bSA9IDA7CisgICAgICAgIGVuYy0+bS5zLm1iX3Zhcl9zdW0gICAgPSBjb2VmX3N1bTsKKyAg ICAgICAgZW5jLT5tLnMubWNfbWJfdmFyX3N1bSA9IDA7CiAgICAgfWVsc2V7Ci0gICAgICAgIGVu Yy0+bS5tY19tYl92YXJfc3VtID0gY29lZl9zdW07Ci0gICAgICAgIGVuYy0+bS5tYl92YXJfc3Vt ICAgID0gMDsKKyAgICAgICAgZW5jLT5tLnMubWNfbWJfdmFyX3N1bSA9IGNvZWZfc3VtOworICAg ICAgICBlbmMtPm0ucy5tYl92YXJfc3VtICAgID0gMDsKICAgICB9CiAKICAgICBwaWN0LT5xdWFs aXR5PSBmZl9yYXRlX2VzdGltYXRlX3FzY2FsZSgmZW5jLT5tLCAxKTsKQEAgLTE3NTcsNyArMTc1 OSw3IEBAIHN0YXRpYyBpbnQgZW5jb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZQ YWNrZXQgKnBrdCwKIHsKICAgICBTbm93RW5jQ29udGV4dCAqY29uc3QgZW5jID0gYXZjdHgtPnBy aXZfZGF0YTsKICAgICBTbm93Q29udGV4dCAqY29uc3QgcyA9ICZlbmMtPmNvbTsKLSAgICBNcGVn RW5jQ29udGV4dCAqY29uc3QgbXB2ID0gJmVuYy0+bTsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29u c3QgbXB2ID0gJmVuYy0+bS5zOwogICAgIFJhbmdlQ29kZXIgKiBjb25zdCBjPSAmcy0+YzsKICAg ICBBVkNvZGVjSW50ZXJuYWwgKmF2Y2kgPSBhdmN0eC0+aW50ZXJuYWw7CiAgICAgQVZGcmFtZSAq cGljOwpAQCAtMTc5MywxMCArMTc5NSwxMCBAQCBzdGF0aWMgaW50IGVuY29kZV9mcmFtZShBVkNv ZGVjQ29udGV4dCAqYXZjdHgsIEFWUGFja2V0ICpwa3QsCiAKICAgICBtcHYtPnBpY3R1cmVfbnVt YmVyID0gYXZjdHgtPmZyYW1lX251bTsKICAgICBpZihhdmN0eC0+ZmxhZ3MmQVZfQ09ERUNfRkxB R19QQVNTMil7Ci0gICAgICAgIG1wdi0+cGljdF90eXBlID0gcGljLT5waWN0X3R5cGUgPSBtcHYt PnJjX2NvbnRleHQuZW50cnlbYXZjdHgtPmZyYW1lX251bV0ubmV3X3BpY3RfdHlwZTsKKyAgICAg ICAgbXB2LT5waWN0X3R5cGUgPSBwaWMtPnBpY3RfdHlwZSA9IGVuYy0+bS5yY19jb250ZXh0LmVu dHJ5W2F2Y3R4LT5mcmFtZV9udW1dLm5ld19waWN0X3R5cGU7CiAgICAgICAgIHMtPmtleWZyYW1l ID0gcGljLT5waWN0X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0k7CiAgICAgICAgIGlmKCEoYXZj dHgtPmZsYWdzJkFWX0NPREVDX0ZMQUdfUVNDQUxFKSkgewotICAgICAgICAgICAgcGljLT5xdWFs aXR5ID0gZmZfcmF0ZV9lc3RpbWF0ZV9xc2NhbGUobXB2LCAwKTsKKyAgICAgICAgICAgIHBpYy0+ cXVhbGl0eSA9IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKCZlbmMtPm0sIDApOwogICAgICAgICAg ICAgaWYgKHBpYy0+cXVhbGl0eSA8IDApCiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAg ICAgICB9CkBAIC0xODc3LDcgKzE4NzksNyBAQCBzdGF0aWMgaW50IGVuY29kZV9mcmFtZShBVkNv ZGVjQ29udGV4dCAqYXZjdHgsIEFWUGFja2V0ICpwa3QsCiAKICAgICAgICAgbXB2LT5xZHNwID0g ZW5jLT5xZHNwOyAvL21vdmUKICAgICAgICAgbXB2LT5oZHNwID0gcy0+aGRzcDsKLSAgICAgICAg ZmZfbWVfaW5pdF9waWMoJmVuYy0+bSk7CisgICAgICAgIGZmX21lX2luaXRfcGljKG1wdik7CiAg ICAgICAgIHMtPmhkc3AgPSBtcHYtPmhkc3A7CiAgICAgfQogCkBAIC0yMDQzLDE3ICsyMDQ1LDE5 IEBAIHJlZG9fZnJhbWU6CiAKICAgICBzLT5jdXJyZW50X3BpY3R1cmUtPnBpY3RfdHlwZSA9IHBp Yy0+cGljdF90eXBlOwogICAgIHMtPmN1cnJlbnRfcGljdHVyZS0+cXVhbGl0eSA9IHBpYy0+cXVh bGl0eTsKLSAgICBtcHYtPmZyYW1lX2JpdHMgPSA4ICogKHMtPmMuYnl0ZXN0cmVhbSAtIHMtPmMu Ynl0ZXN0cmVhbV9zdGFydCk7Ci0gICAgbXB2LT5wX3RleF9iaXRzID0gbXB2LT5mcmFtZV9iaXRz IC0gbXB2LT5taXNjX2JpdHMgLSBtcHYtPm12X2JpdHM7Ci0gICAgbXB2LT50b3RhbF9iaXRzICs9 IDgqKHMtPmMuYnl0ZXN0cmVhbSAtIHMtPmMuYnl0ZXN0cmVhbV9zdGFydCk7CisgICAgZW5jLT5t LmZyYW1lX2JpdHMgPSA4ICogKHMtPmMuYnl0ZXN0cmVhbSAtIHMtPmMuYnl0ZXN0cmVhbV9zdGFy dCk7CisgICAgbXB2LT5wX3RleF9iaXRzID0gZW5jLT5tLmZyYW1lX2JpdHMgLSBtcHYtPm1pc2Nf Yml0cyAtIG1wdi0+bXZfYml0czsKKyAgICBlbmMtPm0udG90YWxfYml0cyArPSA4KihzLT5jLmJ5 dGVzdHJlYW0gLSBzLT5jLmJ5dGVzdHJlYW1fc3RhcnQpOwogICAgIGVuYy0+Y3VyX3BpYy5kaXNw bGF5X3BpY3R1cmVfbnVtYmVyID0KICAgICBlbmMtPmN1cl9waWMuY29kZWRfcGljdHVyZV9udW1i ZXIgICA9IGF2Y3R4LT5mcmFtZV9udW07CiAgICAgZW5jLT5jdXJfcGljLmYtPnF1YWxpdHkgICAg ICAgICAgICAgPSBwaWMtPnF1YWxpdHk7Ci0gICAgaWYgKGVuYy0+cGFzczFfcmMpCi0gICAgICAg IGlmIChmZl9yYXRlX2VzdGltYXRlX3FzY2FsZShtcHYsIDApIDwgMCkKLSAgICAgICAgICAgIHJl dHVybiAtMTsKKyAgICBpZiAoZW5jLT5wYXNzMV9yYykgeworICAgICAgICByZXQgPSBmZl9yYXRl X2VzdGltYXRlX3FzY2FsZSgmZW5jLT5tLCAwKTsKKyAgICAgICAgaWYgKHJldCA8IDApCisgICAg ICAgICAgICByZXR1cm4gcmV0OworICAgIH0KICAgICBpZihhdmN0eC0+ZmxhZ3MmQVZfQ09ERUNf RkxBR19QQVNTMSkKLSAgICAgICAgZmZfd3JpdGVfcGFzczFfc3RhdHMobXB2KTsKKyAgICAgICAg ZmZfd3JpdGVfcGFzczFfc3RhdHMoJmVuYy0+bSk7CiAgICAgbXB2LT5sYXN0X3BpY3RfdHlwZSA9 IG1wdi0+cGljdF90eXBlOwogCiAgICAgZW1tc19jKCk7CkBAIC0yMDg4LDEwICsyMDkyLDEwIEBA IHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfZW5kKEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAg ICAgICAgYXZfZnJlZXAoJnMtPnJlZl9zY29yZXNbaV0pOwogICAgIH0KIAotICAgIGVuYy0+bS5t ZS50ZW1wID0gTlVMTDsKLSAgICBhdl9mcmVlcCgmZW5jLT5tLm1lLnNjcmF0Y2hwYWQpOwotICAg IGF2X2ZyZWVwKCZlbmMtPm0ubWUubWFwKTsKLSAgICBhdl9mcmVlcCgmZW5jLT5tLnNjLm9ibWNf c2NyYXRjaHBhZCk7CisgICAgZW5jLT5tLnMubWUudGVtcCA9IE5VTEw7CisgICAgYXZfZnJlZXAo JmVuYy0+bS5zLm1lLnNjcmF0Y2hwYWQpOworICAgIGF2X2ZyZWVwKCZlbmMtPm0ucy5tZS5tYXAp OworICAgIGF2X2ZyZWVwKCZlbmMtPm0ucy5zYy5vYm1jX3NjcmF0Y2hwYWQpOwogCiAgICAgYXZf ZnJlZXAoJmF2Y3R4LT5zdGF0c19vdXQpOwogCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0005-avcodec-mpegvideo_enc-Precalculate-which-frames-to-r.patch" Content-Disposition: attachment; filename*0="0005-avcodec-mpegvideo_enc-Precalculate-which-frames-to-r.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBiYzM5ZTllMDM5NzVjNTBjY2U1YjczNjI5YWUyYmExMjY2MDIxYjk4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxIE1hciAyMDI1IDAxOjQ4OjA4ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwNS83N10gYXZjb2RlYy9tcGVndmlkZW9fZW5jOiBQcmVjYWxjdWxhdGUgd2hp Y2ggZnJhbWVzIHRvCiByZWNvbnN0cnVjdAoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhh cmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVn dmlkZW8uaCAgICAgfCAgMyArKysKIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgMTYgKysr KysrKysrKysrKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVj L21wZWd2aWRlby5oCmluZGV4IDc1YjFmZmYyNDUuLjBiYjEyYTM0M2UgMTAwNjQ0Ci0tLSBhL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAtNDk5 LDYgKzQ5OSw5IEBAIHR5cGVkZWYgc3RydWN0IE1wZWdFbmNDb250ZXh0IHsKICAgICBpbnQgbG1p biwgbG1heDsKICAgICBpbnQgdmJ2X2lnbm9yZV9xbWF4OwogCisgICAgLy8vIEJpdGZpZWxkIGNv bnRhaW5pbmcgaW5mb3JtYXRpb24gd2hpY2ggZnJhbWVzIHRvIHJlY29uc3RydWN0LgorICAgIGlu dCBmcmFtZV9yZWNvbnN0cnVjdGlvbl9iaXRmaWVsZDsKKwogICAgIC8qIGZsYWcgdG8gaW5kaWNh dGUgYSByZWluaXRpYWxpemF0aW9uIGlzIHJlcXVpcmVkLCBlLmcuIGFmdGVyCiAgICAgICogYSBm cmFtZSBzaXplIGNoYW5nZSAqLwogICAgIGludCBjb250ZXh0X3JlaW5pdDsKZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMK aW5kZXggN2YyNGMxYmFhNi4uZDJiZDZmNGExOCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVn dmlkZW9fZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTg5Nyw2ICs4 OTcsMTggQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICph dmN0eCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFW X0NPREVDX0ZMQUdfSU5URVJMQUNFRF9NRSkgfHwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcy0+YWx0ZXJuYXRlX3NjYW4pOwogCisgICAgaWYgKGF2Y3R4LT5mbGFncyAmIEFWX0NP REVDX0ZMQUdfUFNOUiB8fCBhdmN0eC0+bWJfZGVjaXNpb24gPT0gRkZfTUJfREVDSVNJT05fUkQg fHwKKyAgICAgICAgcy0+ZnJhbWVfc2tpcF90aHJlc2hvbGQgfHwgcy0+ZnJhbWVfc2tpcF9mYWN0 b3IpIHsKKyAgICAgICAgcy0+ZnJhbWVfcmVjb25zdHJ1Y3Rpb25fYml0ZmllbGQgPSAoMSA8PCBB Vl9QSUNUVVJFX1RZUEVfSSkgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICgxIDw8IEFWX1BJQ1RVUkVfVFlQRV9QKSB8CisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKDEgPDwgQVZfUElDVFVSRV9UWVBFX0IpOworICAgIH0gZWxz ZSBpZiAoIXMtPmludHJhX29ubHkpIHsKKyAgICAgICAgcy0+ZnJhbWVfcmVjb25zdHJ1Y3Rpb25f Yml0ZmllbGQgPSAoMSA8PCBBVl9QSUNUVVJFX1RZUEVfSSkgfAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICgxIDw8IEFWX1BJQ1RVUkVfVFlQRV9QKTsKKyAgICB9 IGVsc2UgeworICAgICAgICBzLT5mcmFtZV9yZWNvbnN0cnVjdGlvbl9iaXRmaWVsZCA9IDA7Cisg ICAgfQorCiAgICAgaWYgKHMtPmxtaW4gPiBzLT5sbWF4KSB7CiAgICAgICAgIGF2X2xvZyhhdmN0 eCwgQVZfTE9HX1dBUk5JTkcsICJDbGlwcGluZyBsbWluIHZhbHVlIHRvICVkXG4iLCBzLT5sbWF4 KTsKICAgICAgICAgcy0+bG1pbiA9IHMtPmxtYXg7CkBAIC0xMTIyLDkgKzExMzQsNyBAQCBzdGF0 aWMgdm9pZCBtcHZfcmVjb25zdHJ1Y3RfbWIoTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgYmxv Y2tbMTJdWzY0XSkKICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKChzLT5hdmN0eC0+ZmxhZ3Mg JiBBVl9DT0RFQ19GTEFHX1BTTlIpIHx8IHMtPmZyYW1lX3NraXBfdGhyZXNob2xkIHx8IHMtPmZy YW1lX3NraXBfZmFjdG9yIHx8Ci0gICAgICAgICEoKHMtPmludHJhX29ubHkgfHwgcy0+cGljdF90 eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9CKSAmJgotICAgICAgICAgIHMtPmF2Y3R4LT5tYl9kZWNp c2lvbiAhPSBGRl9NQl9ERUNJU0lPTl9SRCkpIHsgLy8gRklYTUUgcHJlY2FsYworICAgIGlmICgo MSA8PCBzLT5waWN0X3R5cGUpICYgcy0+ZnJhbWVfcmVjb25zdHJ1Y3Rpb25fYml0ZmllbGQpIHsK ICAgICAgICAgdWludDhfdCAqZGVzdF95ID0gcy0+ZGVzdFswXSwgKmRlc3RfY2IgPSBzLT5kZXN0 WzFdLCAqZGVzdF9jciA9IHMtPmRlc3RbMl07CiAgICAgICAgIGludCBkY3RfbGluZXNpemUsIGRj dF9vZmZzZXQ7CiAgICAgICAgIGNvbnN0IGludCBsaW5lc2l6ZSAgID0gcy0+Y3VyX3BpYy5saW5l c2l6ZVswXTsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0006-avcodec-mpegvideo-Move-frame_skip_-fields-to-MPVMain.patch" Content-Disposition: attachment; filename*0="0006-avcodec-mpegvideo-Move-frame_skip_-fields-to-MPVMain.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAwY2M1OGM1MTUyNzZjY2IwYzZjNmZiZjFkNTgyOGRjNGY3MmI1MTBhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxIE1hciAyMDI1IDAyOjA0OjQxICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwNi83N10gYXZjb2RlYy9tcGVndmlkZW86IE1vdmUgZnJhbWVfc2tpcF8qIGZp ZWxkcyB0bwogTVBWTWFpbkVuY0NvbnRleHQKClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5o YXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBl Z3ZpZGVvLmggICAgIHwgIDcgLS0tLS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgfCAz MSArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb2Vu Yy5oICB8IDE1ICsrKysrKysrKysrLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25z KCspLCAyNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5o IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCAwYmIxMmEzNDNlLi4yY2M2ZGJmNTM0IDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvLmgKQEAgLTUxMCwxMyArNTEwLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQg ewogCiAgICAgaW50IGVycm9yX3JhdGU7CiAKLSAgICAvKiBmcmFtZSBza2lwIG9wdGlvbnMgZm9y IGVuY29kaW5nICovCi0gICAgaW50IGZyYW1lX3NraXBfdGhyZXNob2xkOwotICAgIGludCBmcmFt ZV9za2lwX2ZhY3RvcjsKLSAgICBpbnQgZnJhbWVfc2tpcF9leHA7Ci0gICAgaW50IGZyYW1lX3Nr aXBfY21wOwotICAgIG1lX2NtcF9mdW5jIGZyYW1lX3NraXBfY21wX2ZuOwotCiAgICAgaW50IHNj ZW5lY2hhbmdlX3RocmVzaG9sZDsKICAgICBpbnQgbm9pc2VfcmVkdWN0aW9uOwogCmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2Vu Yy5jCmluZGV4IGQyYmQ2ZjRhMTguLjFiN2E0YzEyMzYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCkBAIC0zMDcs OCArMzA3LDkgQEAgYXZfY29sZCB2b2lkIGZmX2RjdF9lbmNvZGVfaW5pdChNcGVnRW5jQ29udGV4 dCAqcykKICAgICAgICAgcy0+ZGN0X3F1YW50aXplICA9IGRjdF9xdWFudGl6ZV90cmVsbGlzX2M7 CiB9CiAKLXN0YXRpYyBhdl9jb2xkIGludCBtZV9jbXBfaW5pdChNcGVnRW5jQ29udGV4dCAqcywg QVZDb2RlY0NvbnRleHQgKmF2Y3R4KQorc3RhdGljIGF2X2NvbGQgaW50IG1lX2NtcF9pbml0KE1Q Vk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7CisgICAg TXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKICAgICBNRUNtcENvbnRleHQgbWVjYzsK ICAgICBtZV9jbXBfZnVuYyBtZV9jbXBbNl07CiAgICAgaW50IHJldDsKQEAgLTMxNywxMCArMzE4 LDEwIEBAIHN0YXRpYyBhdl9jb2xkIGludCBtZV9jbXBfaW5pdChNcGVnRW5jQ29udGV4dCAqcywg QVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIHJldCA9IGZmX21lX2luaXQoJnMtPm1lLCBhdmN0 eCwgJm1lY2MsIDEpOwogICAgIGlmIChyZXQgPCAwKQogICAgICAgICByZXR1cm4gcmV0OwotICAg IHJldCA9IGZmX3NldF9jbXAoJm1lY2MsIG1lX2NtcCwgcy0+ZnJhbWVfc2tpcF9jbXAsIDEpOwor ICAgIHJldCA9IGZmX3NldF9jbXAoJm1lY2MsIG1lX2NtcCwgbS0+ZnJhbWVfc2tpcF9jbXAsIDEp OwogICAgIGlmIChyZXQgPCAwKQogICAgICAgICByZXR1cm4gcmV0OwotICAgIHMtPmZyYW1lX3Nr aXBfY21wX2ZuID0gbWVfY21wWzFdOworICAgIG0tPmZyYW1lX3NraXBfY21wX2ZuID0gbWVfY21w WzFdOwogICAgIGlmIChhdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX0lOVEVSTEFDRURfRENU KSB7CiAgICAgICAgIHJldCA9IGZmX3NldF9jbXAoJm1lY2MsIG1lX2NtcCwgYXZjdHgtPmlsZGN0 X2NtcCwgMSk7CiAgICAgICAgIGlmIChyZXQgPCAwKQpAQCAtODk4LDcgKzg5OSw3IEBAIGF2X2Nv bGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmFsdGVybmF0ZV9zY2FuKTsKIAogICAgIGlmIChh dmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX1BTTlIgfHwgYXZjdHgtPm1iX2RlY2lzaW9uID09 IEZGX01CX0RFQ0lTSU9OX1JEIHx8Ci0gICAgICAgIHMtPmZyYW1lX3NraXBfdGhyZXNob2xkIHx8 IHMtPmZyYW1lX3NraXBfZmFjdG9yKSB7CisgICAgICAgIG0tPmZyYW1lX3NraXBfdGhyZXNob2xk IHx8IG0tPmZyYW1lX3NraXBfZmFjdG9yKSB7CiAgICAgICAgIHMtPmZyYW1lX3JlY29uc3RydWN0 aW9uX2JpdGZpZWxkID0gKDEgPDwgQVZfUElDVFVSRV9UWVBFX0kpIHwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCBBVl9QSUNUVVJFX1RZUEVfUCkgfAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxIDw8IEFWX1BJQ1RV UkVfVFlQRV9CKTsKQEAgLTkyMiw3ICs5MjMsNyBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5jb2Rl X2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIGZmX2ZkY3Rkc3BfaW5pdCgmcy0+ZmRz cCwgYXZjdHgpOwogICAgIGZmX21wZWd2aWRlb2VuY2RzcF9pbml0KCZzLT5tcHZlbmNkc3AsIGF2 Y3R4KTsKICAgICBmZl9waXhibG9ja2RzcF9pbml0KCZzLT5wZHNwLCBhdmN0eCk7Ci0gICAgcmV0 ID0gbWVfY21wX2luaXQocywgYXZjdHgpOworICAgIHJldCA9IG1lX2NtcF9pbml0KG0sIGF2Y3R4 KTsKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsKIApAQCAtMTQwMiw4ICsx NDAzLDEwIEBAIGZhaWw6CiAgICAgcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBza2lwX2No ZWNrKE1wZWdFbmNDb250ZXh0ICpzLCBjb25zdCBNUFZQaWN0dXJlICpwLCBjb25zdCBNUFZQaWN0 dXJlICpyZWYpCitzdGF0aWMgaW50IHNraXBfY2hlY2soTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0 IG0sCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgTVBWUGljdHVyZSAqcCwgY29uc3QgTVBW UGljdHVyZSAqcmVmKQogeworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CiAg ICAgaW50IHgsIHksIHBsYW5lOwogICAgIGludCBzY29yZSA9IDA7CiAgICAgaW50NjRfdCBzY29y ZTY0ID0gMDsKQEAgLTE0MTYsOSArMTQxOSw5IEBAIHN0YXRpYyBpbnQgc2tpcF9jaGVjayhNcGVn RW5jQ29udGV4dCAqcywgY29uc3QgTVBWUGljdHVyZSAqcCwgY29uc3QgTVBWUGljdHVyZSAqCiAg ICAgICAgICAgICAgICAgaW50IG9mZiA9IHAtPnNoYXJlZCA/IDAgOiAxNjsKICAgICAgICAgICAg ICAgICBjb25zdCB1aW50OF90ICpkcHRyID0gcC0+Zi0+ZGF0YVtwbGFuZV0gKyA4ICogKHggKyB5 ICogc3RyaWRlKSArIG9mZjsKICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICpycHRyID0g cmVmLT5mLT5kYXRhW3BsYW5lXSArIDggKiAoeCArIHkgKiBzdHJpZGUpOwotICAgICAgICAgICAg ICAgIGludCB2ID0gcy0+ZnJhbWVfc2tpcF9jbXBfZm4ocywgZHB0ciwgcnB0ciwgc3RyaWRlLCA4 KTsKKyAgICAgICAgICAgICAgICBpbnQgdiA9IG0tPmZyYW1lX3NraXBfY21wX2ZuKHMsIGRwdHIs IHJwdHIsIHN0cmlkZSwgOCk7CiAKLSAgICAgICAgICAgICAgICBzd2l0Y2ggKEZGQUJTKHMtPmZy YW1lX3NraXBfZXhwKSkgeworICAgICAgICAgICAgICAgIHN3aXRjaCAoRkZBQlMobS0+ZnJhbWVf c2tpcF9leHApKSB7CiAgICAgICAgICAgICAgICAgY2FzZSAwOiBzY29yZSAgICA9ICBGRk1BWChz Y29yZSwgdik7ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIGNhc2UgMTogc2NvcmUg ICArPSBGRkFCUyh2KTsgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICBj YXNlIDI6IHNjb3JlNjQgKz0gdiAqIChpbnQ2NF90KXY7ICAgICAgICAgICAgICAgICAgICAgICBi cmVhazsKQEAgLTE0MzIsMTMgKzE0MzUsMTMgQEAgc3RhdGljIGludCBza2lwX2NoZWNrKE1wZWdF bmNDb250ZXh0ICpzLCBjb25zdCBNUFZQaWN0dXJlICpwLCBjb25zdCBNUFZQaWN0dXJlICoKIAog ICAgIGlmIChzY29yZSkKICAgICAgICAgc2NvcmU2NCA9IHNjb3JlOwotICAgIGlmIChzLT5mcmFt ZV9za2lwX2V4cCA8IDApCisgICAgaWYgKG0tPmZyYW1lX3NraXBfZXhwIDwgMCkKICAgICAgICAg c2NvcmU2NCA9IHBvdyhzY29yZTY0IC8gKGRvdWJsZSkocy0+bWJfd2lkdGggKiBzLT5tYl9oZWln aHQpLAotICAgICAgICAgICAgICAgICAgICAgIC0xLjAvcy0+ZnJhbWVfc2tpcF9leHApOworICAg ICAgICAgICAgICAgICAgICAgIC0xLjAvbS0+ZnJhbWVfc2tpcF9leHApOwogCi0gICAgaWYgKHNj b3JlNjQgPCBzLT5mcmFtZV9za2lwX3RocmVzaG9sZCkKKyAgICBpZiAoc2NvcmU2NCA8IG0tPmZy YW1lX3NraXBfdGhyZXNob2xkKQogICAgICAgICByZXR1cm4gMTsKLSAgICBpZiAoc2NvcmU2NCA8 ICgocy0+ZnJhbWVfc2tpcF9mYWN0b3IgKiAoaW50NjRfdCkgcy0+bGFtYmRhKSA+PiA4KSkKKyAg ICBpZiAoc2NvcmU2NCA8ICgobS0+ZnJhbWVfc2tpcF9mYWN0b3IgKiAoaW50NjRfdCkgcy0+bGFt YmRhKSA+PiA4KSkKICAgICAgICAgcmV0dXJuIDE7CiAgICAgcmV0dXJuIDA7CiB9CkBAIC0xNjI2 LDEwICsxNjI5LDEwIEBAIHN0YXRpYyBpbnQgc2V0X2JmcmFtZV9jaGFpbl9sZW5ndGgoTVBWTWFp bkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgLyogc2V0IG5l eHQgcGljdHVyZSB0eXBlICYgb3JkZXJpbmcgKi8KLSAgICBpZiAocy0+ZnJhbWVfc2tpcF90aHJl c2hvbGQgfHwgcy0+ZnJhbWVfc2tpcF9mYWN0b3IpIHsKKyAgICBpZiAobS0+ZnJhbWVfc2tpcF90 aHJlc2hvbGQgfHwgbS0+ZnJhbWVfc2tpcF9mYWN0b3IpIHsKICAgICAgICAgaWYgKHMtPnBpY3R1 cmVfaW5fZ29wX251bWJlciA8IHMtPmdvcF9zaXplICYmCiAgICAgICAgICAgICBzLT5uZXh0X3Bp Yy5wdHIgJiYKLSAgICAgICAgICAgIHNraXBfY2hlY2socywgcy0+aW5wdXRfcGljdHVyZVswXSwg cy0+bmV4dF9waWMucHRyKSkgeworICAgICAgICAgICAgc2tpcF9jaGVjayhtLCBzLT5pbnB1dF9w aWN0dXJlWzBdLCBzLT5uZXh0X3BpYy5wdHIpKSB7CiAgICAgICAgICAgICAvLyBGSVhNRSBjaGVj ayB0aGF0IHRoZSBnb3AgY2hlY2sgYWJvdmUgaXMgKy0xIGNvcnJlY3QKICAgICAgICAgICAgIGF2 X3JlZnN0cnVjdF91bnJlZigmcy0+aW5wdXRfcGljdHVyZVswXSk7CiAKZGlmZiAtLWdpdCBhL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4 IGMxZDI4MjEwMzguLjlmMGQ2M2MzMWUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVv ZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtNDUsNiArNDUsMTMgQEAg dHlwZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgewogICAgIGludCBiX3NlbnNpdGl2aXR5 OwogICAgIGludCBicmRfc2NhbGU7CiAKKyAgICAvKiBmcmFtZSBza2lwIG9wdGlvbnMgKi8KKyAg ICBpbnQgZnJhbWVfc2tpcF90aHJlc2hvbGQ7CisgICAgaW50IGZyYW1lX3NraXBfZmFjdG9yOwor ICAgIGludCBmcmFtZV9za2lwX2V4cDsKKyAgICBpbnQgZnJhbWVfc2tpcF9jbXA7CisgICAgbWVf Y21wX2Z1bmMgZnJhbWVfc2tpcF9jbXBfZm47CisKICAgICAvKiBiaXQgcmF0ZSBjb250cm9sICov CiAgICAgaW50NjRfdCB0b3RhbF9iaXRzOwogICAgIGludCBmcmFtZV9iaXRzOyAgICAgICAgICAg ICAgICAvLy88IGJpdHMgdXNlZCBmb3IgdGhlIGN1cnJlbnQgZnJhbWUKQEAgLTEzNCwxMCArMTQx LDEwIEBAIEZGX01QVl9PUFRfQ01QX0ZVTkMsIFwKIHsiYm9yZGVyX21hc2siLCAiaW5jcmVhc2Ug dGhlIHF1YW50aXplciBmb3IgbWFjcm9ibG9ja3MgY2xvc2UgdG8gYm9yZGVycyIsIEZGX01QVl9P RkZTRVQoYm9yZGVyX21hc2tpbmcpLCBBVl9PUFRfVFlQRV9GTE9BVCwgey5kYmwgPSAwIH0sIC1G TFRfTUFYLCBGTFRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTfSwgICAgXAogeyJsbWluIiwgIm1pbmlt dW0gTGFncmFuZ2UgZmFjdG9yIChWQlIpIiwgICAgICAgICAgICAgICAgICAgICAgICAgICBGRl9N UFZfT0ZGU0VUKGxtaW4pLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gIDIqRkZfUVAyTEFNQkRB IH0sIDAsIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgICAgICAgICAgICBcCiB7ImxtYXgi LCAibWF4aW11bSBMYWdyYW5nZSBmYWN0b3IgKFZCUikiLCAgICAgICAgICAgICAgICAgICAgICAg ICAgIEZGX01QVl9PRkZTRVQobG1heCksIEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAzMSpGRl9R UDJMQU1CREEgfSwgMCwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCAgICAgICAgICAgIFwK LXsic2tpcF90aHJlc2hvbGQiLCAiRnJhbWUgc2tpcCB0aHJlc2hvbGQiLCAgICAgICAgICAgICAg ICAgICAgICAgICAgRkZfTVBWX09GRlNFVChmcmFtZV9za2lwX3RocmVzaG9sZCksIEFWX09QVF9U WVBFX0lOVCwgey5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1Mg fSwgXAoteyJza2lwX2ZhY3RvciIsICJGcmFtZSBza2lwIGZhY3RvciIsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBGRl9NUFZfT0ZGU0VUKGZyYW1lX3NraXBfZmFjdG9yKSwgQVZfT1BU X1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFH UyB9LCBcCi17InNraXBfZXhwIiwgIkZyYW1lIHNraXAgZXhwb25lbnQiLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEZGX01QVl9PRkZTRVQoZnJhbWVfc2tpcF9leHApLCBBVl9PUFRf VFlQRV9JTlQsIHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdT IH0sIFwKLXsic2tpcF9jbXAiLCAiRnJhbWUgc2tpcCBjb21wYXJlIGZ1bmN0aW9uIiwgICAgICAg ICAgICAgICAgICAgICAgICAgRkZfTVBWX09GRlNFVChmcmFtZV9za2lwX2NtcCksIEFWX09QVF9U WVBFX0lOVCwgey5pNjQgPSBGRl9DTVBfRENUTUFYIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01Q Vl9PUFRfRkxBR1MsIC51bml0ID0gImNtcF9mdW5jIiB9LCBcCit7InNraXBfdGhyZXNob2xkIiwg IkZyYW1lIHNraXAgdGhyZXNob2xkIiwgICAgICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9N QUlOX09GRlNFVChmcmFtZV9za2lwX3RocmVzaG9sZCksIEFWX09QVF9UWVBFX0lOVCwgey5pNjQg PSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgXAoreyJza2lwX2Zh Y3RvciIsICJGcmFtZSBza2lwIGZhY3RvciIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBGRl9NUFZfTUFJTl9PRkZTRVQoZnJhbWVfc2tpcF9mYWN0b3IpLCBBVl9PUFRfVFlQRV9JTlQs IHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTIH0sIFwKK3si c2tpcF9leHAiLCAiRnJhbWUgc2tpcCBleHBvbmVudCIsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgRkZfTVBWX01BSU5fT0ZGU0VUKGZyYW1lX3NraXBfZXhwKSwgQVZfT1BUX1RZUEVf SU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBc Cit7InNraXBfY21wIiwgIkZyYW1lIHNraXAgY29tcGFyZSBmdW5jdGlvbiIsICAgICAgICAgICAg ICAgICAgICAgICAgIEZGX01QVl9NQUlOX09GRlNFVChmcmFtZV9za2lwX2NtcCksIEFWX09QVF9U WVBFX0lOVCwgey5pNjQgPSBGRl9DTVBfRENUTUFYIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01Q Vl9PUFRfRkxBR1MsIC51bml0ID0gImNtcF9mdW5jIiB9LCBcCiB7InNjX3RocmVzaG9sZCIsICJT Y2VuZSBjaGFuZ2UgdGhyZXNob2xkIiwgICAgICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9P RkZTRVQoc2NlbmVjaGFuZ2VfdGhyZXNob2xkKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAg fSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCiB7Im5vaXNlX3JlZHVj dGlvbiIsICJOb2lzZSByZWR1Y3Rpb24iLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZG X01QVl9PRkZTRVQobm9pc2VfcmVkdWN0aW9uKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAg fSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCiB7InBzIiwgIlJUUCBw YXlsb2FkIHNpemUgaW4gYnl0ZXMiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRkZfTVBW X09GRlNFVChydHBfcGF5bG9hZF9zaXplKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwg SU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0007-avcodec-h261enc-Make-h261_encode_init-call-ff_mpv_en.patch" Content-Disposition: attachment; filename*0="0007-avcodec-h261enc-Make-h261_encode_init-call-ff_mpv_en.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4ZjU1MjMyMDBhMDg2ZjA5MjIxOGU4N2NhMmYyYjNhZWViZDA0MGI4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxIE1hciAyMDI1IDIzOjM3OjUwICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwNy83N10gYXZjb2RlYy9oMjYxZW5jOiBNYWtlIGgyNjFfZW5jb2RlX2luaXQo KSBjYWxsCiBmZl9tcHZfZW5jb2RlX2luaXQoKQoKUmlnaHQgbm93LCBmZl9tcHZfZW5jb2RlX2lu aXQoKSBpcyBzZXQgYXMgRkZDb2RlYy5pbml0IGFuZApjYWxscyBmZl9oMjYxX2VuY29kZV9pbml0 KCkuIFRoZSBvcHBvc2l0ZSBpcyBtb3JlIG5hdHVyYWwKYW5kIGF2b2lkcyBhIG5vbi1zdGF0aWMg ZnVuY3Rpb24uCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhl aW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL2gyNjFlbmMuYyAgICAgICB8IDE3 ICsrKysrKysrKy0tLS0tLS0tCiBsaWJhdmNvZGVjL2gyNjFlbmMuaCAgICAgICB8ICAxIC0KIGxp YmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgIDUgLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgOSBp bnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2gy NjFlbmMuYyBiL2xpYmF2Y29kZWMvaDI2MWVuYy5jCmluZGV4IDI2NGVmYjBhYTMuLjM2YzUwZGI2 ZGYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvaDI2MWVuYy5jCisrKyBiL2xpYmF2Y29kZWMvaDI2 MWVuYy5jCkBAIC0zNTIsMjAgKzM1MiwyMSBAQCBzdGF0aWMgYXZfY29sZCB2b2lkIGgyNjFfZW5j b2RlX2luaXRfc3RhdGljKHZvaWQpCiAgICAgbXZfY29kZXNbMF1bMV0gPSAxOwogfQogCi1hdl9j b2xkIGludCBmZl9oMjYxX2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0ICpzKQorc3RhdGljIGF2 X2NvbGQgaW50IGgyNjFfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogewotICAg IEgyNjFFbmNDb250ZXh0ICpjb25zdCBoID0gKEgyNjFFbmNDb250ZXh0KilzOwogICAgIHN0YXRp YyBBVk9uY2UgaW5pdF9zdGF0aWNfb25jZSA9IEFWX09OQ0VfSU5JVDsKKyAgICBIMjYxRW5jQ29u dGV4dCAqY29uc3QgaCA9IGF2Y3R4LT5wcml2X2RhdGE7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNv bnN0IHMgPSAmaC0+cy5zOwogCi0gICAgaWYgKHMtPndpZHRoID09IDE3NiAmJiBzLT5oZWlnaHQg PT0gMTQ0KSB7CisgICAgaWYgKGF2Y3R4LT53aWR0aCA9PSAxNzYgJiYgYXZjdHgtPmhlaWdodCA9 PSAxNDQpIHsKICAgICAgICAgaC0+Zm9ybWF0ID0gSDI2MV9RQ0lGOwotICAgIH0gZWxzZSBpZiAo cy0+d2lkdGggPT0gMzUyICYmIHMtPmhlaWdodCA9PSAyODgpIHsKKyAgICB9IGVsc2UgaWYgKGF2 Y3R4LT53aWR0aCA9PSAzNTIgJiYgYXZjdHgtPmhlaWdodCA9PSAyODgpIHsKICAgICAgICAgaC0+ Zm9ybWF0ID0gSDI2MV9DSUY7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgYXZfbG9nKHMtPmF2Y3R4 LCBBVl9MT0dfRVJST1IsCisgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLAogICAg ICAgICAgICAgICAgICJUaGUgc3BlY2lmaWVkIHBpY3R1cmUgc2l6ZSBvZiAlZHglZCBpcyBub3Qg dmFsaWQgZm9yIHRoZSAiCiAgICAgICAgICAgICAgICAgIkguMjYxIGNvZGVjLlxuVmFsaWQgc2l6 ZXMgYXJlIDE3NngxNDQsIDM1MngyODhcbiIsCi0gICAgICAgICAgICAgICAgcy0+d2lkdGgsIHMt PmhlaWdodCk7CisgICAgICAgICAgICAgICBhdmN0eC0+d2lkdGgsIGF2Y3R4LT5oZWlnaHQpOwog ICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwogICAgIH0KICAgICBzLT5wcml2YXRlX2N0 eCA9ICZoLT5jb21tb247CkBAIC0zODAsNyArMzgxLDcgQEAgYXZfY29sZCBpbnQgZmZfaDI2MV9l bmNvZGVfaW5pdChNcGVnRW5jQ29udGV4dCAqcykKICAgICBzLT5pbnRyYV9hY192bGNfbGFzdF9s ZW5ndGggPSBzLT5pbnRlcl9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfaDI2MV9ybF9sZW5fbGFz dDsKICAgICBmZl90aHJlYWRfb25jZSgmaW5pdF9zdGF0aWNfb25jZSwgaDI2MV9lbmNvZGVfaW5p dF9zdGF0aWMpOwogCi0gICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIGZmX21wdl9lbmNvZGVfaW5p dChhdmN0eCk7CiB9CiAKIGNvbnN0IEZGQ29kZWMgZmZfaDI2MV9lbmNvZGVyID0gewpAQCAtMzkx LDcgKzM5Miw3IEBAIGNvbnN0IEZGQ29kZWMgZmZfaDI2MV9lbmNvZGVyID0gewogICAgIC5wLnBy aXZfY2xhc3MgICA9ICZmZl9tcHZfZW5jX2NsYXNzLAogICAgIC5wLmNhcGFiaWxpdGllcyA9IEFW X0NPREVDX0NBUF9EUjEgfCBBVl9DT0RFQ19DQVBfRU5DT0RFUl9SRU9SREVSRURfT1BBUVVFLAog ICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihIMjYxRW5jQ29udGV4dCksCi0gICAgLmluaXQg ICAgICAgICAgID0gZmZfbXB2X2VuY29kZV9pbml0LAorICAgIC5pbml0ICAgICAgICAgICA9IGgy NjFfZW5jb2RlX2luaXQsCiAgICAgRkZfQ09ERUNfRU5DT0RFX0NCKGZmX21wdl9lbmNvZGVfcGlj dHVyZSksCiAgICAgLmNsb3NlICAgICAgICAgID0gZmZfbXB2X2VuY29kZV9lbmQsCiAgICAgLmNh cHNfaW50ZXJuYWwgID0gRkZfQ09ERUNfQ0FQX0lOSVRfQ0xFQU5VUCwKZGlmZiAtLWdpdCBhL2xp YmF2Y29kZWMvaDI2MWVuYy5oIGIvbGliYXZjb2RlYy9oMjYxZW5jLmgKaW5kZXggZDhmZGNhZDdh YS4uNzg3N2Q4YWE5ZCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9oMjYxZW5jLmgKKysrIGIvbGli YXZjb2RlYy9oMjYxZW5jLmgKQEAgLTM0LDYgKzM0LDUgQEAgdm9pZCBmZl9oMjYxX3Jlb3JkZXJf bWJfaW5kZXgoTXBlZ0VuY0NvbnRleHQgKnMpOwogdm9pZCBmZl9oMjYxX2VuY29kZV9tYihNcGVn RW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9ja1s2XVs2NF0sCiAgICAgICAgICAgICAgICAgICAg ICAgIGludCBtb3Rpb25feCwgaW50IG1vdGlvbl95KTsKIHZvaWQgZmZfaDI2MV9lbmNvZGVfcGlj dHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpOwotaW50IGZmX2gyNjFfZW5jb2RlX2luaXQo TXBlZ0VuY0NvbnRleHQgKnMpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBl Z3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggMWI3YTRjMTIz Ni4uNWMyZjczYjJkMSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysr IGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTc3OCwxMSArNzc4LDYgQEAgYXZfY29s ZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAgICAg cy0+bG93X2RlbGF5ID0gMTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBBVl9DT0RFQ19JRF9I MjYxOgotICAgICAgICBpZiAoIUNPTkZJR19IMjYxX0VOQ09ERVIpCi0gICAgICAgICAgICByZXR1 cm4gQVZFUlJPUl9FTkNPREVSX05PVF9GT1VORDsKLSAgICAgICAgcmV0ID0gZmZfaDI2MV9lbmNv ZGVfaW5pdChzKTsKLSAgICAgICAgaWYgKHJldCA8IDApCi0gICAgICAgICAgICByZXR1cm4gcmV0 OwogICAgICAgICBzLT5vdXRfZm9ybWF0ID0gRk1UX0gyNjE7CiAgICAgICAgIGF2Y3R4LT5kZWxh eSAgPSAwOwogICAgICAgICBzLT5sb3dfZGVsYXkgID0gMTsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0008-avcodec-mpegvideo-Don-t-initialize-yc-_dc_scale_tabl.patch" Content-Disposition: attachment; filename*0="0008-avcodec-mpegvideo-Don-t-initialize-yc-_dc_scale_tabl.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBiNzdkZTRmYjNiMjUzYzhhYjk0NTk4NTNkMDkyODI1ZGRkZDlhZjFiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDE3OjI2OjAwICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwOC83N10gYXZjb2RlYy9tcGVndmlkZW86IERvbid0IGluaXRpYWxpemUgW3lj XV9kY19zY2FsZV90YWJsZQogYnkgZGVmYXVsdAoKT25seSB0aGUgSC4yNjMtYmFzZWQgZGVjb2Rl cnMgYXMgd2VsbCBhcyB0aGUgZW5jb2RlcnMgbmVlZCBpdDsKc28gbW92ZSBpdCB0byBmZl9oMjYz X2RlY29kZV9pbml0KCkgYXMgd2VsbCBhcyBmZl9tcHZfZW5jb2RlX2luaXQoKS4KQWxzbyBmb3Ig dGhlIGxhdHRlciBtYWtlIGl0IG9ubHkgc2V0IHRoZXNlIHRhYmxlcyBpZiBub25lIGFyZQphbHJl YWR5IHNldC4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVp bmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvaDI2M2RlYy5jICAgICAgIHwgNSAr KysrLQogbGliYXZjb2RlYy9tcGVndmlkZW8uYyAgICAgfCAyIC0tCiBsaWJhdmNvZGVjL21wZWd2 aWRlb19lbmMuYyB8IDYgKysrKystCiAzIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwg NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2gyNjNkZWMuYyBiL2xpYmF2 Y29kZWMvaDI2M2RlYy5jCmluZGV4IDJkODA2ZmM3MDMuLjg0MzRmNmU3Y2YgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvaDI2M2RlYy5jCisrKyBiL2xpYmF2Y29kZWMvaDI2M2RlYy5jCkBAIC00MSw4 ICs0MSw4IEBACiAjaW5jbHVkZSAibXBlZ19lci5oIgogI2luY2x1ZGUgIm1wZWc0dmlkZW8uaCIK ICNpbmNsdWRlICJtcGVnNHZpZGVvZGVjLmgiCi0jaW5jbHVkZSAibXBlZzR2aWRlb2RlZnMuaCIK ICNpbmNsdWRlICJtcGVndmlkZW8uaCIKKyNpbmNsdWRlICJtcGVndmlkZW9kYXRhLmgiCiAjaW5j bHVkZSAibXBlZ3ZpZGVvZGVjLmgiCiAjaW5jbHVkZSAibXNtcGVnNGRlYy5oIgogI2luY2x1ZGUg InRocmVhZC5oIgpAQCAtMTAyLDYgKzEwMiw5IEBAIGF2X2NvbGQgaW50IGZmX2gyNjNfZGVjb2Rl X2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIHMtPmRlY29kZV9tYiAgICAgICA9IGZm X2gyNjNfZGVjb2RlX21iOwogICAgIHMtPmxvd19kZWxheSAgICAgICA9IDE7CiAKKyAgICBzLT55 X2RjX3NjYWxlX3RhYmxlID0KKyAgICBzLT5jX2RjX3NjYWxlX3RhYmxlID0gZmZfbXBlZzFfZGNf c2NhbGVfdGFibGU7CisKICAgICAvLyBkY3RfdW5xdWFudGl6ZSBkZWZhdWx0cyBmb3IgSC4yNjM7 CiAgICAgLy8gdGhleSBtaWdodCBjaGFuZ2Ugb24gYSBwZXItZnJhbWUgYmFzaXMgZm9yIE1QRUct NC4KICAgICBzLT5kY3RfdW5xdWFudGl6ZV9pbnRyYSA9IHMtPmRjdF91bnF1YW50aXplX2gyNjNf aW50cmE7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5jIGIvbGliYXZjb2RlYy9t cGVndmlkZW8uYwppbmRleCA0YjY5YjViNjVjLi45Y2Q2NzE1MWFhIDEwMDY0NAotLS0gYS9saWJh dmNvZGVjL21wZWd2aWRlby5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMKQEAgLTQ4Miw4 ICs0ODIsNiBAQCBpbnQgZmZfdXBkYXRlX2R1cGxpY2F0ZV9jb250ZXh0KE1wZWdFbmNDb250ZXh0 ICpkc3QsIGNvbnN0IE1wZWdFbmNDb250ZXh0ICpzcmMpCiAgKi8KIGF2X2NvbGQgdm9pZCBmZl9t cHZfY29tbW9uX2RlZmF1bHRzKE1wZWdFbmNDb250ZXh0ICpzKQogewotICAgIHMtPnlfZGNfc2Nh bGVfdGFibGUgICAgICA9Ci0gICAgcy0+Y19kY19zY2FsZV90YWJsZSAgICAgID0gZmZfbXBlZzFf ZGNfc2NhbGVfdGFibGU7CiAgICAgcy0+Y2hyb21hX3FzY2FsZV90YWJsZSAgID0gZmZfZGVmYXVs dF9jaHJvbWFfcXNjYWxlX3RhYmxlOwogICAgIHMtPnByb2dyZXNzaXZlX2ZyYW1lICAgICA9IDE7 CiAgICAgcy0+cHJvZ3Jlc3NpdmVfc2VxdWVuY2UgID0gMTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggNWMy ZjczYjJkMS4uN2ViMzgxYWYzNiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5j LmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTI3Niw3ICsyNzYsNiBAQCBz dGF0aWMgYXZfY29sZCB2b2lkIG1wdl9lbmNvZGVfaW5pdF9zdGF0aWModm9pZCkKIAogLyoqCiAg KiBTZXQgdGhlIGdpdmVuIE1wZWdFbmNDb250ZXh0IHRvIGRlZmF1bHRzIGZvciBlbmNvZGluZy4K LSAqIHRoZSBjaGFuZ2VkIGZpZWxkcyB3aWxsIG5vdCBkZXBlbmQgdXBvbiB0aGUgcHJpb3Igc3Rh dGUgb2YgdGhlIE1wZWdFbmNDb250ZXh0LgogICovCiBzdGF0aWMgYXZfY29sZCB2b2lkIG1wdl9l bmNvZGVfZGVmYXVsdHMoTXBlZ0VuY0NvbnRleHQgKnMpCiB7CkBAIC0yODgsNiArMjg3LDExIEBA IHN0YXRpYyBhdl9jb2xkIHZvaWQgbXB2X2VuY29kZV9kZWZhdWx0cyhNcGVnRW5jQ29udGV4dCAq cykKIAogICAgIHMtPmZjb2RlX3RhYiAgICAgPSBkZWZhdWx0X2Zjb2RlX3RhYiArIE1BWF9NVjsK IAorICAgIGlmICghcy0+eV9kY19zY2FsZV90YWJsZSkgeworICAgICAgICBzLT55X2RjX3NjYWxl X3RhYmxlID0KKyAgICAgICAgcy0+Y19kY19zY2FsZV90YWJsZSA9IGZmX21wZWcxX2RjX3NjYWxl X3RhYmxlOworICAgIH0KKwogICAgIHMtPmlucHV0X3BpY3R1cmVfbnVtYmVyICA9IDA7CiAgICAg cy0+cGljdHVyZV9pbl9nb3BfbnVtYmVyID0gMDsKIH0KLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0009-avcodec-speedhqenc-Make-speedhq_encode_init-call-ff_.patch" Content-Disposition: attachment; filename*0="0009-avcodec-speedhqenc-Make-speedhq_encode_init-call-ff_.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBjM2UzM2Q5ODg1YTNlNGEzMWY2NTdlZjliMWZiNTIzMTFhYzVkOTIxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxIE1hciAyMDI1IDIzOjM3OjUwICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwOS83N10gYXZjb2RlYy9zcGVlZGhxZW5jOiBNYWtlIHNwZWVkaHFfZW5jb2Rl X2luaXQoKSBjYWxsCiBmZl9tcHZfZW5jb2RlX2luaXQoKQoKUmlnaHQgbm93LCBmZl9tcHZfZW5j b2RlX2luaXQoKSBpcyBzZXQgYXMgRkZDb2RlYy5pbml0IGFuZApjYWxscyBmZl9zcGVlZGhxX2Vu Y29kZV9pbml0KCkuIFRoZSBvcHBvc2l0ZSBpcyBtb3JlIG5hdHVyYWwKYW5kIGF2b2lkcyBhIG5v bi1zdGF0aWMgZnVuY3Rpb24uCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFu ZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb19l bmMuYyB8ICA0IC0tLS0KIGxpYmF2Y29kZWMvc3BlZWRocWVuYy5jICAgIHwgMjIgKysrKysrKysr KysrKystLS0tLS0tLQogbGliYXZjb2RlYy9zcGVlZGhxZW5jLmggICAgfCAgMSAtCiAzIGZpbGVz IGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMK aW5kZXggN2ViMzgxYWYzNi4uMWY1NTUxMjY3NCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVn dmlkZW9fZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTc3NCwxMCAr Nzc0LDYgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICph dmN0eCkKICAgICBjYXNlIEFWX0NPREVDX0lEX1NQRUVESFE6CiAgICAgICAgIHMtPm91dF9mb3Jt YXQgPSBGTVRfU1BFRURIUTsKICAgICAgICAgcy0+aW50cmFfb25seSA9IDE7IC8qIGZvcmNlIGlu dHJhIG9ubHkgZm9yIFNIUSAqLwotICAgICAgICBpZiAoIUNPTkZJR19TUEVFREhRX0VOQ09ERVIp Ci0gICAgICAgICAgICByZXR1cm4gQVZFUlJPUl9FTkNPREVSX05PVF9GT1VORDsKLSAgICAgICAg aWYgKChyZXQgPSBmZl9zcGVlZGhxX2VuY29kZV9pbml0KHMpKSA8IDApCi0gICAgICAgICAgICBy ZXR1cm4gcmV0OwogICAgICAgICBhdmN0eC0+ZGVsYXkgPSAwOwogICAgICAgICBzLT5sb3dfZGVs YXkgPSAxOwogICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvc3BlZWRocWVu Yy5jIGIvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKaW5kZXggYTBiYWE4NjljYy4uZGUxYmMwY2Zj YSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKKysrIGIvbGliYXZjb2RlYy9z cGVlZGhxZW5jLmMKQEAgLTk1LDI2ICs5NSwyNiBAQCBzdGF0aWMgYXZfY29sZCB2b2lkIHNwZWVk aHFfaW5pdF9zdGF0aWNfZGF0YSh2b2lkKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm Zl9zcGVlZGhxX3ZsY190YWJsZSwgdW5pX3NwZWVkaHFfYWNfdmxjX2xlbik7CiB9CiAKLWF2X2Nv bGQgaW50IGZmX3NwZWVkaHFfZW5jb2RlX2luaXQoTXBlZ0VuY0NvbnRleHQgKnMpCitzdGF0aWMg YXZfY29sZCBpbnQgc3BlZWRocV9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7 CiAgICAgc3RhdGljIEFWT25jZSBpbml0X3N0YXRpY19vbmNlID0gQVZfT05DRV9JTklUOworICAg IE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gYXZjdHgtPnByaXZfZGF0YTsKKyAgICBpbnQgcmV0 OwogCi0gICAgaWYgKHMtPndpZHRoID4gNjU1MDAgfHwgcy0+aGVpZ2h0ID4gNjU1MDApIHsKLSAg ICAgICAgYXZfbG9nKHMtPmF2Y3R4LCBBVl9MT0dfRVJST1IsICJTcGVlZEhRIGRvZXMgbm90IHN1 cHBvcnQgcmVzb2x1dGlvbnMgYWJvdmUgNjU1MDB4NjU1MDBcbiIpOworICAgIGlmIChhdmN0eC0+ d2lkdGggPiA2NTUwMCB8fCBhdmN0eC0+aGVpZ2h0ID4gNjU1MDApIHsKKyAgICAgICAgYXZfbG9n KGF2Y3R4LCBBVl9MT0dfRVJST1IsICJTcGVlZEhRIGRvZXMgbm90IHN1cHBvcnQgcmVzb2x1dGlv bnMgYWJvdmUgNjU1MDB4NjU1MDBcbiIpOwogICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwp OwogICAgIH0KIAogICAgIC8vIGJvcmRlciBpcyBub3QgaW1wbGVtZW50ZWQgY29ycmVjdGx5IGF0 IHRoZSBtb21lbnQsIHNlZSB0aWNrZXQgIzEwMDc4Ci0gICAgaWYgKHMtPndpZHRoICUgMTYpIHsK LSAgICAgICAgYXZfbG9nKHMtPmF2Y3R4LCBBVl9MT0dfRVJST1IsICJ3aWR0aCBtdXN0IGJlIGEg bXVsdGlwbGUgb2YgMTZcbiIpOworICAgIGlmIChhdmN0eC0+d2lkdGggJSAxNikgeworICAgICAg ICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwgIndpZHRoIG11c3QgYmUgYSBtdWx0aXBsZSBv ZiAxNlxuIik7CiAgICAgICAgIHJldHVybiBBVkVSUk9SX1BBVENIV0VMQ09NRTsKICAgICB9CiAK ICAgICBzLT5taW5fcWNvZWZmID0gLTIwNDg7CiAgICAgcy0+bWF4X3Fjb2VmZiA9IDIwNDc7CiAK LSAgICBmZl90aHJlYWRfb25jZSgmaW5pdF9zdGF0aWNfb25jZSwgc3BlZWRocV9pbml0X3N0YXRp Y19kYXRhKTsKLQogICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGggICAgICA9CiAgICAgcy0+aW50 cmFfYWNfdmxjX2xhc3RfbGVuZ3RoID0KICAgICBzLT5pbnRyYV9jaHJvbWFfYWNfdmxjX2xlbmd0 aCAgICAgID0KQEAgLTEyMyw2ICsxMjMsMTIgQEAgYXZfY29sZCBpbnQgZmZfc3BlZWRocV9lbmNv ZGVfaW5pdChNcGVnRW5jQ29udGV4dCAqcykKICAgICBzLT55X2RjX3NjYWxlX3RhYmxlID0KICAg ICBzLT5jX2RjX3NjYWxlX3RhYmxlID0gZmZfbXBlZzEyX2RjX3NjYWxlX3RhYmxlWzNdOwogCisg ICAgcmV0ID0gZmZfbXB2X2VuY29kZV9pbml0KGF2Y3R4KTsKKyAgICBpZiAocmV0IDwgMCkKKyAg ICAgICAgcmV0dXJuIHJldDsKKworICAgIGZmX3RocmVhZF9vbmNlKCZpbml0X3N0YXRpY19vbmNl LCBzcGVlZGhxX2luaXRfc3RhdGljX2RhdGEpOworCiAgICAgc3dpdGNoIChzLT5hdmN0eC0+cGl4 X2ZtdCkgewogICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjBQOgogICAgICAgICBzLT5hdmN0eC0+ Y29kZWNfdGFnID0gTUtUQUcoJ1MnLCdIJywnUScsJzAnKTsKQEAgLTI4MCw3ICsyODYsNyBAQCBj b25zdCBGRkNvZGVjIGZmX3NwZWVkaHFfZW5jb2RlciA9IHsKICAgICAucC5wcml2X2NsYXNzICAg PSAmZmZfbXB2X2VuY19jbGFzcywKICAgICAucC5jYXBhYmlsaXRpZXMgPSBBVl9DT0RFQ19DQVBf RFIxIHwgQVZfQ09ERUNfQ0FQX0VOQ09ERVJfUkVPUkRFUkVEX09QQVFVRSwKICAgICAucHJpdl9k YXRhX3NpemUgPSBzaXplb2YoU3BlZWRIUUVuY0NvbnRleHQpLAotICAgIC5pbml0ICAgICAgICAg ICA9IGZmX21wdl9lbmNvZGVfaW5pdCwKKyAgICAuaW5pdCAgICAgICAgICAgPSBzcGVlZGhxX2Vu Y29kZV9pbml0LAogICAgIEZGX0NPREVDX0VOQ09ERV9DQihmZl9tcHZfZW5jb2RlX3BpY3R1cmUp LAogICAgIC5jbG9zZSAgICAgICAgICA9IGZmX21wdl9lbmNvZGVfZW5kLAogICAgIC5jYXBzX2lu dGVybmFsICA9IEZGX0NPREVDX0NBUF9JTklUX0NMRUFOVVAsCmRpZmYgLS1naXQgYS9saWJhdmNv ZGVjL3NwZWVkaHFlbmMuaCBiL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5oCmluZGV4IDE1YmU5NzY0 ZDcuLjY2ZWY3ZWUwMjMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5oCisrKyBi L2xpYmF2Y29kZWMvc3BlZWRocWVuYy5oCkBAIC0zMyw3ICszMyw2IEBACiAKICNpbmNsdWRlICJt cGVndmlkZW8uaCIKIAotaW50ICBmZl9zcGVlZGhxX2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0 ICpzKTsKIHZvaWQgZmZfc3BlZWRocV9lbmNvZGVfY2xvc2UoTXBlZ0VuY0NvbnRleHQgKnMpOwog dm9pZCBmZl9zcGVlZGhxX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9j a1sxMl1bNjRdKTsKIAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0010-avcodec-speedhqenc-Avoid-indirection.patch" Content-Disposition: attachment; filename="0010-avcodec-speedhqenc-Avoid-indirection.patch" Content-Transfer-Encoding: base64 RnJvbSA2N2JlNWIzMTJhYzViMmY1Y2EyODEzMWM2ZDcyYmEyMjU0Yzk1NWE4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAyIE1hciAyMDI1IDAwOjM0OjE5ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxMC83N10gYXZjb2RlYy9zcGVlZGhxZW5jOiBBdm9pZCBpbmRpcmVjdGlvbgoK TmFtZWx5IHVzZSBhdmN0eCBkaXJlY3RseSBpbnN0ZWFkIG9mIHMtPmF2Y3R4LiBXaGlsZSBqdXN0 IGF0IGl0LAphbHNvIG1vdmUgdGhlIHN3aXRjaCB0byB0aGUgb3RoZXIgY2hlY2tzIGludm9sdmlu ZyBhdmN0eC4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVp bmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvc3BlZWRocWVuYy5jIHwgMjggKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE0IGluc2VydGlvbnMo KyksIDE0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5j IGIvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKaW5kZXggZGUxYmMwY2ZjYS4uMmUwOTAxNjkzNSAx MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKKysrIGIvbGliYXZjb2RlYy9zcGVl ZGhxZW5jLmMKQEAgLTExMiw2ICsxMTIsMjAgQEAgc3RhdGljIGF2X2NvbGQgaW50IHNwZWVkaHFf ZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAgICByZXR1cm4gQVZFUlJP Ul9QQVRDSFdFTENPTUU7CiAgICAgfQogCisgICAgc3dpdGNoIChhdmN0eC0+cGl4X2ZtdCkgewor ICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjBQOgorICAgICAgICBhdmN0eC0+Y29kZWNfdGFnID0g TUtUQUcoJ1MnLCdIJywnUScsJzAnKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBBVl9QSVhf Rk1UX1lVVjQyMlA6CisgICAgICAgIGF2Y3R4LT5jb2RlY190YWcgPSBNS1RBRygnUycsJ0gnLCdR JywnMicpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIEFWX1BJWF9GTVRfWVVWNDQ0UDoKKyAg ICAgICAgYXZjdHgtPmNvZGVjX3RhZyA9IE1LVEFHKCdTJywnSCcsJ1EnLCc0Jyk7CisgICAgICAg IGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGF2X2Fzc2VydDAoMCk7CisgICAgfQorCiAg ICAgcy0+bWluX3Fjb2VmZiA9IC0yMDQ4OwogICAgIHMtPm1heF9xY29lZmYgPSAyMDQ3OwogCkBA IC0xMjksMjAgKzE0Myw2IEBAIHN0YXRpYyBhdl9jb2xkIGludCBzcGVlZGhxX2VuY29kZV9pbml0 KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIAogICAgIGZmX3RocmVhZF9vbmNlKCZpbml0X3N0YXRp Y19vbmNlLCBzcGVlZGhxX2luaXRfc3RhdGljX2RhdGEpOwogCi0gICAgc3dpdGNoIChzLT5hdmN0 eC0+cGl4X2ZtdCkgewotICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjBQOgotICAgICAgICBzLT5h dmN0eC0+Y29kZWNfdGFnID0gTUtUQUcoJ1MnLCdIJywnUScsJzAnKTsKLSAgICAgICAgYnJlYWs7 Ci0gICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQyMlA6Ci0gICAgICAgIHMtPmF2Y3R4LT5jb2RlY190 YWcgPSBNS1RBRygnUycsJ0gnLCdRJywnMicpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEFW X1BJWF9GTVRfWVVWNDQ0UDoKLSAgICAgICAgcy0+YXZjdHgtPmNvZGVjX3RhZyA9IE1LVEFHKCdT JywnSCcsJ1EnLCc0Jyk7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIGF2 X2Fzc2VydDAoMCk7Ci0gICAgfQotCiAgICAgcmV0dXJuIDA7CiB9CiAKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0011-avcodec-mjpegenc-Make-mjpeg_encode_init-call-ff_mpv_.patch" Content-Disposition: attachment; filename*0="0011-avcodec-mjpegenc-Make-mjpeg_encode_init-call-ff_mpv_.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBlZTJkNzEzOTAzZDc4MjYyYzBiMWM3NzAwMzE4YmYwZWM1ZmYxYWE3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDAyOjEzOjMxICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxMS83N10gYXZjb2RlYy9tanBlZ2VuYzogTWFrZSBtanBlZ19lbmNvZGVfaW5p dCgpIGNhbGwKIGZmX21wdl9lbmNvZGVfaW5pdCgpCgpSaWdodCBub3csIGZmX21wdl9lbmNvZGVf aW5pdCgpIGlzIHNldCBhcyBGRkNvZGVjLmluaXQgYW5kCmNhbGxzIGZmX3NwZWVkaHFfZW5jb2Rl X2luaXQoKS4gVGhlIG9wcG9zaXRlIGlzIG1vcmUgbmF0dXJhbCwKYXZvaWRzIGEgbm9uLXN0YXRp YyBmdW5jdGlvbiBhbmQgYWxsb3dzIHRvIHJldXNlIGUuZy4Kc2xpY2VfY29udGV4dF9jb3VudCBp bnN0ZWFkIG9mIGR1cGxpY2F0aW5nIHRoZSBsb2dpYyBmcm9tCmZmX21wdl9jb21tb25faW5pdCgp LgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRA b3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tanBlZ2VuYy5jICAgICAgfCAzNyArKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVjL21qcGVnZW5jLmggICAg ICB8ICAxIC0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgIDIgLS0KIDMgZmlsZXMgY2hh bmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGli YXZjb2RlYy9tanBlZ2VuYy5jIGIvbGliYXZjb2RlYy9tanBlZ2VuYy5jCmluZGV4IDBhMmQ2ZWVi ZDMuLmYzNGU4OTIzNWQgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbWpwZWdlbmMuYworKysgYi9s aWJhdmNvZGVjL21qcGVnZW5jLmMKQEAgLTI4MywxMCArMjgzLDYgQEAgc3RhdGljIGludCBhbGxv Y19odWZmbWFuKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIHNpemVfdCBudW1fbWJzLCBudW1fYmxv Y2tzLCBudW1fY29kZXM7CiAgICAgaW50IGJsb2Nrc19wZXJfbWI7CiAKLSAgICAvLyBXZSBuZWVk IHRvIGluaXQgdGhpcyBoZXJlIGFzIHRoZSBtanBlZyBpbml0IGlzIGNhbGxlZCBiZWZvcmUgdGhl IGNvbW1vbiBpbml0LAotICAgIHMtPm1iX3dpZHRoICA9IChzLT53aWR0aCAgKyAxNSkgLyAxNjsK LSAgICBzLT5tYl9oZWlnaHQgPSAocy0+aGVpZ2h0ICsgMTUpIC8gMTY7Ci0KICAgICBzd2l0Y2gg KHMtPmNocm9tYV9mb3JtYXQpIHsKICAgICBjYXNlIENIUk9NQV80MjA6IGJsb2Nrc19wZXJfbWIg PSAgNjsgYnJlYWs7CiAgICAgY2FzZSBDSFJPTUFfNDIyOiBibG9ja3NfcGVyX21iID0gIDg7IGJy ZWFrOwpAQCAtMzA1LDM0ICszMDEsMzAgQEAgc3RhdGljIGludCBhbGxvY19odWZmbWFuKE1wZWdF bmNDb250ZXh0ICpzKQogICAgIHJldHVybiAwOwogfQogCi1hdl9jb2xkIGludCBmZl9tanBlZ19l bmNvZGVfaW5pdChNcGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyBhdl9jb2xkIGludCBtanBlZ19l bmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7Ci0gICAgTUpwZWdDb250ZXh0ICpj b25zdCBtID0gJigoTUpQRUdFbmNDb250ZXh0KilzKS0+bWpwZWc7Ci0gICAgaW50IHJldCwgdXNl X3NsaWNlczsKKyAgICBNSlBFR0VuY0NvbnRleHQgKmNvbnN0IG0yID0gYXZjdHgtPnByaXZfZGF0 YTsKKyAgICBNSnBlZ0NvbnRleHQgICAgKmNvbnN0IG0gID0gJm0yLT5tanBlZzsKKyAgICBNcGVn RW5jQ29udGV4dCAgKmNvbnN0IHMgID0gJm0yLT5tcGVnLnM7CisgICAgaW50IHJldDsKIAogICAg IHMtPm1qcGVnX2N0eCA9IG07Ci0gICAgdXNlX3NsaWNlcyA9IHMtPmF2Y3R4LT5zbGljZXMgPiAw ID8gcy0+YXZjdHgtPnNsaWNlcyA+IDEgOgotICAgICAgICAgICAgICAgICAocy0+YXZjdHgtPmFj dGl2ZV90aHJlYWRfdHlwZSAmIEZGX1RIUkVBRF9TTElDRSkgJiYKLSAgICAgICAgICAgICAgICAg cy0+YXZjdHgtPnRocmVhZF9jb3VudCA+IDE7Ci0KLSAgICBpZiAodXNlX3NsaWNlcykKLSAgICAg ICAgbS0+aHVmZm1hbiA9IEhVRkZNQU5fVEFCTEVfREVGQVVMVDsKIAogICAgIGlmIChzLT5tcHZf ZmxhZ3MgJiBGRl9NUFZfRkxBR19RUF9SRCkgewogICAgICAgICAvLyBVc2VkIHRvIHByb2R1Y2Ug Z2FyYmFnZSB3aXRoIE1KUEVHLgotICAgICAgICBhdl9sb2cocy0+YXZjdHgsIEFWX0xPR19FUlJP UiwKKyAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfRVJST1IsCiAgICAgICAgICAgICAgICAi UVAgUkQgaXMgbm8gbG9uZ2VyIGNvbXBhdGlibGUgd2l0aCBNSlBFRyBvciBBTVZcbiIpOwogICAg ICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwogICAgIH0KIAogICAgIC8qIFRoZSBmb2xsb3dp bmcgY2hlY2sgaXMgYXV0b21hdGljYWxseSB0cnVlIGZvciBBTVYsCiAgICAgICogYnV0IGl0IGRv ZXNuJ3QgaHVydCBlaXRoZXIuICovCi0gICAgcmV0ID0gZmZfbWpwZWdfZW5jb2RlX2NoZWNrX3Bp eF9mbXQocy0+YXZjdHgpOworICAgIHJldCA9IGZmX21qcGVnX2VuY29kZV9jaGVja19waXhfZm10 KGF2Y3R4KTsKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsKIAotICAgIGlm IChzLT53aWR0aCA+IDY1NTAwIHx8IHMtPmhlaWdodCA+IDY1NTAwKSB7Ci0gICAgICAgIGF2X2xv ZyhzLT5hdmN0eCwgQVZfTE9HX0VSUk9SLCAiSlBFRyBkb2VzIG5vdCBzdXBwb3J0IHJlc29sdXRp b25zIGFib3ZlIDY1NTAweDY1NTAwXG4iKTsKKyAgICBpZiAoYXZjdHgtPndpZHRoID4gNjU1MDAg fHwgYXZjdHgtPmhlaWdodCA+IDY1NTAwKSB7CisgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9H X0VSUk9SLCAiSlBFRyBkb2VzIG5vdCBzdXBwb3J0IHJlc29sdXRpb25zIGFib3ZlIDY1NTAweDY1 NTAwXG4iKTsKICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKICAgICB9CiAKQEAgLTM2 Niw5ICszNTgsMTYgQEAgYXZfY29sZCBpbnQgZmZfbWpwZWdfZW5jb2RlX2luaXQoTXBlZ0VuY0Nv bnRleHQgKnMpCiAgICAgcy0+aW50cmFfY2hyb21hX2FjX3ZsY19sZW5ndGggICAgICA9CiAgICAg cy0+aW50cmFfY2hyb21hX2FjX3ZsY19sYXN0X2xlbmd0aCA9IG0tPnVuaV9jaHJvbWFfYWNfdmxj X2xlbjsKIAorICAgIHJldCA9IGZmX21wdl9lbmNvZGVfaW5pdChhdmN0eCk7CisgICAgaWYgKHJl dCA8IDApCisgICAgICAgIHJldHVybiByZXQ7CisKICAgICAvLyBCdWZmZXJzIHN0YXJ0IG91dCBl bXB0eS4KICAgICBtLT5odWZmX25jb2RlID0gMDsKIAorICAgIGlmIChzLT5zbGljZV9jb250ZXh0 X2NvdW50ID4gMSkKKyAgICAgICAgbS0+aHVmZm1hbiA9IEhVRkZNQU5fVEFCTEVfREVGQVVMVDsK KwogICAgIGlmIChtLT5odWZmbWFuID09IEhVRkZNQU5fVEFCTEVfT1BUSU1BTCkKICAgICAgICAg cmV0dXJuIGFsbG9jX2h1ZmZtYW4ocyk7CiAKQEAgLTY4MSw3ICs2ODAsNyBAQCBjb25zdCBGRkNv ZGVjIGZmX21qcGVnX2VuY29kZXIgPSB7CiAgICAgLnAudHlwZSAgICAgICAgID0gQVZNRURJQV9U WVBFX1ZJREVPLAogICAgIC5wLmlkICAgICAgICAgICA9IEFWX0NPREVDX0lEX01KUEVHLAogICAg IC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNSlBFR0VuY0NvbnRleHQpLAotICAgIC5pbml0ICAg ICAgICAgICA9IGZmX21wdl9lbmNvZGVfaW5pdCwKKyAgICAuaW5pdCAgICAgICAgICAgPSBtanBl Z19lbmNvZGVfaW5pdCwKICAgICBGRl9DT0RFQ19FTkNPREVfQ0IoZmZfbXB2X2VuY29kZV9waWN0 dXJlKSwKICAgICAuY2xvc2UgICAgICAgICAgPSBtanBlZ19lbmNvZGVfY2xvc2UsCiAgICAgLnAu Y2FwYWJpbGl0aWVzID0gQVZfQ09ERUNfQ0FQX0RSMSB8CkBAIC03MTEsNyArNzEwLDcgQEAgY29u c3QgRkZDb2RlYyBmZl9hbXZfZW5jb2RlciA9IHsKICAgICAucC5pZCAgICAgICAgICAgPSBBVl9D T0RFQ19JRF9BTVYsCiAgICAgLnAuY2FwYWJpbGl0aWVzID0gQVZfQ09ERUNfQ0FQX0RSMSB8IEFW X0NPREVDX0NBUF9FTkNPREVSX1JFT1JERVJFRF9PUEFRVUUsCiAgICAgLnByaXZfZGF0YV9zaXpl ID0gc2l6ZW9mKE1KUEVHRW5jQ29udGV4dCksCi0gICAgLmluaXQgICAgICAgICAgID0gZmZfbXB2 X2VuY29kZV9pbml0LAorICAgIC5pbml0ICAgICAgICAgICA9IG1qcGVnX2VuY29kZV9pbml0LAog ICAgIEZGX0NPREVDX0VOQ09ERV9DQihhbXZfZW5jb2RlX3BpY3R1cmUpLAogICAgIC5jbG9zZSAg ICAgICAgICA9IG1qcGVnX2VuY29kZV9jbG9zZSwKICAgICAuY2Fwc19pbnRlcm5hbCAgPSBGRl9D T0RFQ19DQVBfSU5JVF9DTEVBTlVQLApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tanBlZ2VuYy5o IGIvbGliYXZjb2RlYy9tanBlZ2VuYy5oCmluZGV4IDFhYzBkNmRlN2UuLjJjOThkZTA1N2EgMTAw NjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbWpwZWdlbmMuaAorKysgYi9saWJhdmNvZGVjL21qcGVnZW5j LmgKQEAgLTk0LDcgKzk0LDYgQEAgc3RhdGljIGlubGluZSB2b2lkIHB1dF9tYXJrZXIoUHV0Qml0 Q29udGV4dCAqcCwgZW51bSBKcGVnTWFya2VyIGNvZGUpCiAKIHR5cGVkZWYgc3RydWN0IE1wZWdF bmNDb250ZXh0IE1wZWdFbmNDb250ZXh0OwogCi1pbnQgIGZmX21qcGVnX2VuY29kZV9pbml0KE1w ZWdFbmNDb250ZXh0ICpzKTsKIHZvaWQgZmZfbWpwZWdfYW12X2VuY29kZV9waWN0dXJlX2hlYWRl cihNcGVnRW5jQ29udGV4dCAqcyk7CiB2b2lkIGZmX21qcGVnX2VuY29kZV9tYihNcGVnRW5jQ29u dGV4dCAqcywgaW50MTZfdCBibG9ja1sxMl1bNjRdKTsKIGludCAgZmZfbWpwZWdfZW5jb2RlX3N0 dWZmaW5nKE1wZWdFbmNDb250ZXh0ICpzKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggMWY1NTUxMjY3NC4u ZDJlM2VkMWQ4YyAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysrIGIv bGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTc2NSw4ICs3NjUsNiBAQCBhdl9jb2xkIGlu dCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIGNhc2UgQVZf Q09ERUNfSURfQU1WOgogICAgICAgICBzLT5vdXRfZm9ybWF0ID0gRk1UX01KUEVHOwogICAgICAg ICBzLT5pbnRyYV9vbmx5ID0gMTsgLyogZm9yY2UgaW50cmEgb25seSBmb3IganBlZyAqLwotICAg ICAgICBpZiAoKHJldCA9IGZmX21qcGVnX2VuY29kZV9pbml0KHMpKSA8IDApCi0gICAgICAgICAg ICByZXR1cm4gcmV0OwogICAgICAgICBhdmN0eC0+ZGVsYXkgPSAwOwogICAgICAgICBzLT5sb3df ZGVsYXkgPSAxOwogICAgICAgICBicmVhazsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0012-avcodec-mjpegenc-Simplify-allocating-huffman-table.patch" Content-Disposition: attachment; filename*0="0012-avcodec-mjpegenc-Simplify-allocating-huffman-table.patc"; filename*1="h" Content-Transfer-Encoding: base64 RnJvbSBkMWM1MjQ4M2FlZWFiNTU4NGE2ODUxNDZhYjg2Zjc0NmNjOTQxODM0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDAyOjM2OjU1ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxMi83N10gYXZjb2RlYy9tanBlZ2VuYzogU2ltcGxpZnkgYWxsb2NhdGluZyBo dWZmbWFuIHRhYmxlCgpSZXVzZSB0aGUgYWxyZWFkeSBjb21wdXRlZCB2YWx1ZSBvZiBtYWNyb2Js b2NrczsgdXNlIGFuIGFycmF5Cmluc3RlYWQgb2YgYSBzd2l0Y2gsIGV2YWx1YXRlIDY0ICogc2l6 ZW9mKE1KcGVnSHVmZm1hbkNvZGUpCmF0IGNvbXBpbGUtdGltZS4KClNpZ25lZC1vZmYtYnk6IEFu ZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxp YmF2Y29kZWMvbWpwZWdlbmMuYyB8IDI0ICsrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxl IGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvbWpwZWdlbmMuYyBiL2xpYmF2Y29kZWMvbWpwZWdlbmMuYwppbmRleCBmMzRl ODkyMzVkLi42Zjk4MThiYWYyIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21qcGVnZW5jLmMKKysr IGIvbGliYXZjb2RlYy9tanBlZ2VuYy5jCkBAIC0yNzcsMjUgKzI3NywyMSBAQCBmYWlsOgogICAg IHJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgYWxsb2NfaHVmZm1hbihNcGVnRW5jQ29udGV4 dCAqcykKK3N0YXRpYyBpbnQgYWxsb2NfaHVmZm1hbihNSlBFR0VuY0NvbnRleHQgKmNvbnN0IG0y KQogewotICAgIE1KcGVnQ29udGV4dCAqbSA9IHMtPm1qcGVnX2N0eDsKLSAgICBzaXplX3QgbnVt X21icywgbnVtX2Jsb2NrcywgbnVtX2NvZGVzOwotICAgIGludCBibG9ja3NfcGVyX21iOwotCi0g ICAgc3dpdGNoIChzLT5jaHJvbWFfZm9ybWF0KSB7Ci0gICAgY2FzZSBDSFJPTUFfNDIwOiBibG9j a3NfcGVyX21iID0gIDY7IGJyZWFrOwotICAgIGNhc2UgQ0hST01BXzQyMjogYmxvY2tzX3Blcl9t YiA9ICA4OyBicmVhazsKLSAgICBjYXNlIENIUk9NQV80NDQ6IGJsb2Nrc19wZXJfbWIgPSAxMjsg YnJlYWs7Ci0gICAgZGVmYXVsdDogYXZfYXNzZXJ0MCgwKTsKKyAgICBNSnBlZ0NvbnRleHQgICAq Y29uc3QgbSA9ICZtMi0+bWpwZWc7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbTIt Pm1wZWcuczsKKyAgICBzdGF0aWMgY29uc3QgY2hhciBibG9ja3NfcGVyX21iW10gPSB7CisgICAg ICAgIFtDSFJPTUFfNDIwXSA9IDYsIFtDSFJPTUFfNDIyXSA9IDgsIFtDSFJPTUFfNDQ0XSA9IDEy CiAgICAgfTsKKyAgICBzaXplX3QgbnVtX2Jsb2NrcywgbnVtX2NvZGVzOwogCiAgICAgLy8gTWFr ZSBzdXJlIHdlIGhhdmUgZW5vdWdoIHNwYWNlIHRvIGhvbGQgdGhpcyBmcmFtZS4KLSAgICBudW1f bWJzID0gcy0+bWJfd2lkdGggKiBzLT5tYl9oZWlnaHQ7Ci0gICAgbnVtX2Jsb2NrcyA9IG51bV9t YnMgKiBibG9ja3NfcGVyX21iOworICAgIG51bV9ibG9ja3MgPSBzLT5tYl9udW0gKiBibG9ja3Nf cGVyX21iW3MtPmNocm9tYV9mb3JtYXRdOwogICAgIG51bV9jb2RlcyA9IG51bV9ibG9ja3MgKiA2 NDsKIAotICAgIG0tPmh1ZmZfYnVmZmVyID0gYXZfbWFsbG9jX2FycmF5KG51bV9jb2Rlcywgc2l6 ZW9mKE1KcGVnSHVmZm1hbkNvZGUpKTsKKyAgICBtLT5odWZmX2J1ZmZlciA9IGF2X21hbGxvY19h cnJheShudW1fY29kZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNjQg LyogY29kZXMgcGVyIE1CICovICogc2l6ZW9mKE1KcGVnSHVmZm1hbkNvZGUpKTsKICAgICBpZiAo IW0tPmh1ZmZfYnVmZmVyKQogICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAgIHJl dHVybiAwOwpAQCAtMzY5LDcgKzM2NSw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBtanBlZ19lbmNv ZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgIG0tPmh1ZmZtYW4gPSBIVUZG TUFOX1RBQkxFX0RFRkFVTFQ7CiAKICAgICBpZiAobS0+aHVmZm1hbiA9PSBIVUZGTUFOX1RBQkxF X09QVElNQUwpCi0gICAgICAgIHJldHVybiBhbGxvY19odWZmbWFuKHMpOworICAgICAgICByZXR1 cm4gYWxsb2NfaHVmZm1hbihtMik7CiAKICAgICByZXR1cm4gMDsKIH0KLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0013-avcodec-mpegvideo_enc-Only-set-fcode_tab-if-unset.patch" Content-Disposition: attachment; filename*0="0013-avcodec-mpegvideo_enc-Only-set-fcode_tab-if-unset.patch" Content-Transfer-Encoding: base64 RnJvbSBmYmQ3NzI0ZDAxMmM5ZmY4MzNjNzhkMWU2OTQ0ZDdhNmRhNDgwOWI4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDE4OjA3OjAyICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxMy83N10gYXZjb2RlYy9tcGVndmlkZW9fZW5jOiBPbmx5IHNldCBmY29kZV90 YWIgaWYgdW5zZXQKClRoaXMgaXMgaW4gcHJlcGFyYXRpb24gZm9yIG1lcmdpbmcgZmZfbXBlZzFf ZW5jb2RlX2luaXQoKQppbnRvIHRoZSBNUEVHLTEvMiBlbmNvZGVyJ3MgaW5pdCBmdW5jdGlvbi4K ClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91 dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgOCArKysrLS0tLQog MSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2Vu Yy5jCmluZGV4IGQyZTNlZDFkOGMuLjM5OGIwNmQ5MjkgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCkBAIC0yODMs MTAgKzI4MywxMCBAQCBzdGF0aWMgYXZfY29sZCB2b2lkIG1wdl9lbmNvZGVfZGVmYXVsdHMoTXBl Z0VuY0NvbnRleHQgKnMpCiAKICAgICBmZl9tcHZfY29tbW9uX2RlZmF1bHRzKHMpOwogCi0gICAg ZmZfdGhyZWFkX29uY2UoJmluaXRfc3RhdGljX29uY2UsIG1wdl9lbmNvZGVfaW5pdF9zdGF0aWMp OwotCi0gICAgcy0+ZmNvZGVfdGFiICAgICA9IGRlZmF1bHRfZmNvZGVfdGFiICsgTUFYX01WOwot CisgICAgaWYgKCFzLT5mY29kZV90YWIpIHsKKyAgICAgICAgcy0+ZmNvZGVfdGFiID0gZGVmYXVs dF9mY29kZV90YWIgKyBNQVhfTVY7CisgICAgICAgIGZmX3RocmVhZF9vbmNlKCZpbml0X3N0YXRp Y19vbmNlLCBtcHZfZW5jb2RlX2luaXRfc3RhdGljKTsKKyAgICB9CiAgICAgaWYgKCFzLT55X2Rj X3NjYWxlX3RhYmxlKSB7CiAgICAgICAgIHMtPnlfZGNfc2NhbGVfdGFibGUgPQogICAgICAgICBz LT5jX2RjX3NjYWxlX3RhYmxlID0gZmZfbXBlZzFfZGNfc2NhbGVfdGFibGU7Ci0tIAoyLjQ1LjIK Cg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0014-avcodec-mpeg12enc-Move-encode_init-to-the-end-of-the.patch" Content-Disposition: attachment; filename*0="0014-avcodec-mpeg12enc-Move-encode_init-to-the-end-of-the.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2N2I0MTk0MDA2YzQwNjE4ZDIwYWRmZTUzODYzYmRhMjM2NGZhYTU5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDE4OjExOjEwICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxNC83N10gYXZjb2RlYy9tcGVnMTJlbmM6IE1vdmUgZW5jb2RlX2luaXQoKSB0 byB0aGUgZW5kIG9mIHRoZQogZmlsZQoKV2lsbCBhdm9pZCBmb3J3YXJkIGRlY2xhcmF0aW9ucyBs YXRlci4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhh cmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZzEyZW5jLmMgfCAyOTggKysrKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNDkg aW5zZXJ0aW9ucygrKSwgMTQ5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXBlZzEyZW5jLmMgYi9saWJhdmNvZGVjL21wZWcxMmVuYy5jCmluZGV4IGJiNjFiNGY0ZmUuLjcz MGUwNDExYzcgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKKysrIGIvbGliYXZj b2RlYy9tcGVnMTJlbmMuYwpAQCAtMTM3LDE1NSArMTM3LDYgQEAgYXZfY29sZCB2b2lkIGZmX21w ZWcxX2luaXRfdW5pX2FjX3ZsYyhjb25zdCBpbnQ4X3QgbWF4X2xldmVsW10sCiB9CiAKICNpZiBD T05GSUdfTVBFRzFWSURFT19FTkNPREVSIHx8IENPTkZJR19NUEVHMlZJREVPX0VOQ09ERVIKLXN0 YXRpYyBpbnQgZmluZF9mcmFtZV9yYXRlX2luZGV4KEFWQ29kZWNDb250ZXh0ICphdmN0eCwgTVBF RzEyRW5jQ29udGV4dCAqbXBlZzEyKQotewotICAgIGludCBpOwotICAgIEFWUmF0aW9uYWwgYmVz dHEgPSAoQVZSYXRpb25hbCkgezAsIDB9OwotICAgIEFWUmF0aW9uYWwgZXh0OwotICAgIEFWUmF0 aW9uYWwgdGFyZ2V0ID0gYXZfaW52X3EoYXZjdHgtPnRpbWVfYmFzZSk7Ci0KLSAgICBmb3IgKGkg PSAxOyBpIDwgMTQ7IGkrKykgewotICAgICAgICBpZiAoYXZjdHgtPnN0cmljdF9zdGRfY29tcGxp YW5jZSA+IEZGX0NPTVBMSUFOQ0VfVU5PRkZJQ0lBTCAmJgotICAgICAgICAgICAgaSA+PSA5KQot ICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgZm9yIChleHQubnVtPTE7IGV4dC5udW0gPD0g NDsgZXh0Lm51bSsrKSB7Ci0gICAgICAgICAgICBmb3IgKGV4dC5kZW49MTsgZXh0LmRlbiA8PSAz MjsgZXh0LmRlbisrKSB7Ci0gICAgICAgICAgICAgICAgQVZSYXRpb25hbCBxID0gYXZfbXVsX3Eo ZXh0LCBmZl9tcGVnMTJfZnJhbWVfcmF0ZV90YWJbaV0pOwotCi0gICAgICAgICAgICAgICAgaWYg KGF2Y3R4LT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9NUEVHMlZJREVPICYmIChleHQuZGVuIT0x IHx8IGV4dC5udW0hPTEpKQotICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg ICAgICAgICBpZiAoYXZfZ2NkKGV4dC5kZW4sIGV4dC5udW0pICE9IDEpCi0gICAgICAgICAgICAg ICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgICAgICAgICAgaWYgKCAgICBiZXN0cS5udW09PTAK LSAgICAgICAgICAgICAgICAgICAgfHwgYXZfbmVhcmVyX3EodGFyZ2V0LCBiZXN0cSwgcSkgPCAw Ci0gICAgICAgICAgICAgICAgICAgIHx8IGV4dC5udW09PTEgJiYgZXh0LmRlbj09MSAmJiBhdl9u ZWFyZXJfcSh0YXJnZXQsIGJlc3RxLCBxKSA9PSAwKSB7Ci0gICAgICAgICAgICAgICAgICAgIGJl c3RxICAgICAgICAgICAgICAgPSBxOwotICAgICAgICAgICAgICAgICAgICBtcGVnMTItPmZyYW1l X3JhdGVfaW5kZXggICA9IGk7Ci0gICAgICAgICAgICAgICAgICAgIG1wZWcxMi0+ZnJhbWVfcmF0 ZV9leHQubnVtID0gZXh0Lm51bTsKLSAgICAgICAgICAgICAgICAgICAgbXBlZzEyLT5mcmFtZV9y YXRlX2V4dC5kZW4gPSBleHQuZGVuOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0K LSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChhdl9jbXBfcSh0YXJnZXQsIGJlc3RxKSkKLSAg ICAgICAgcmV0dXJuIC0xOwotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIDA7Ci19Ci0KLXN0YXRp YyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCi17Ci0gICAg TVBFRzEyRW5jQ29udGV4dCAqY29uc3QgbXBlZzEyID0gYXZjdHgtPnByaXZfZGF0YTsKLSAgICBp bnQgcmV0OwotICAgIGludCBtYXhfc2l6ZSA9IGF2Y3R4LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19J RF9NUEVHMlZJREVPID8gMTYzODMgOiA0MDk1OwotCi0gICAgaWYgKGF2Y3R4LT53aWR0aCA+IG1h eF9zaXplIHx8IGF2Y3R4LT5oZWlnaHQgPiBtYXhfc2l6ZSkgewotICAgICAgICBhdl9sb2coYXZj dHgsIEFWX0xPR19FUlJPUiwgIiVzIGRvZXMgbm90IHN1cHBvcnQgcmVzb2x1dGlvbnMgYWJvdmUg JWR4JWRcbiIsCi0gICAgICAgICAgICAgICBDT05GSUdfU01BTEwgPyBhdmN0eC0+Y29kZWMtPm5h bWUgOiBhdmN0eC0+Y29kZWMtPmxvbmdfbmFtZSwKLSAgICAgICAgICAgICAgIG1heF9zaXplLCBt YXhfc2l6ZSk7Ci0gICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7Ci0gICAgfQotICAgIGlm ICgoYXZjdHgtPndpZHRoICYgMHhGRkYpID09IDAgJiYgKGF2Y3R4LT5oZWlnaHQgJiAweEZGRikg PT0gMSkgewotICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwgIldpZHRoIC8gSGVp Z2h0IGlzIGludmFsaWQgZm9yIE1QRUcyXG4iKTsKLSAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlO VkFMKTsKLSAgICB9Ci0KLSAgICBpZiAoYXZjdHgtPnN0cmljdF9zdGRfY29tcGxpYW5jZSA+IEZG X0NPTVBMSUFOQ0VfVU5PRkZJQ0lBTCkgewotICAgICAgICBpZiAoKGF2Y3R4LT53aWR0aCAmIDB4 RkZGKSA9PSAwIHx8IChhdmN0eC0+aGVpZ2h0ICYgMHhGRkYpID09IDApIHsKLSAgICAgICAgICAg IGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAiV2lkdGggb3IgSGVpZ2h0IGFyZSBub3QgYWxs b3dlZCB0byBiZSBtdWx0aXBsZXMgb2YgNDA5NlxuIgotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJhZGQgJy1zdHJpY3QgJWQnIGlmIHlvdSB3YW50IHRvIHVzZSB0aGVt IGFueXdheS5cbiIsIEZGX0NPTVBMSUFOQ0VfVU5PRkZJQ0lBTCk7Ci0gICAgICAgICAgICByZXR1 cm4gQVZFUlJPUihFSU5WQUwpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKG1wZWcxMi0+ bXBlZy5zLnFfc2NhbGVfdHlwZSA9PSAxKSB7Ci0gICAgICAgIGlmIChhdmN0eC0+cW1heCA+IDI4 KSB7Ci0gICAgICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwKLSAgICAgICAgICAg ICAgICAgICAibm9uIGxpbmVhciBxdWFudCBvbmx5IHN1cHBvcnRzIHFtYXggPD0gMjggY3VycmVu dGx5XG4iKTsKLSAgICAgICAgICAgIHJldHVybiBBVkVSUk9SX1BBVENIV0VMQ09NRTsKLSAgICAg ICAgfQotICAgIH0KLQotICAgIGlmIChhdmN0eC0+cHJvZmlsZSA9PSBBVl9QUk9GSUxFX1VOS05P V04pIHsKLSAgICAgICAgaWYgKGF2Y3R4LT5sZXZlbCAhPSBBVl9MRVZFTF9VTktOT1dOKSB7Ci0g ICAgICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwgIlNldCBwcm9maWxlIGFuZCBs ZXZlbFxuIik7Ci0gICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwotICAgICAgICB9 Ci0gICAgICAgIC8qIE1haW4gb3IgNDoyOjIgKi8KLSAgICAgICAgYXZjdHgtPnByb2ZpbGUgPSBh dmN0eC0+cGl4X2ZtdCA9PSBBVl9QSVhfRk1UX1lVVjQyMFAgPyBBVl9QUk9GSUxFX01QRUcyX01B SU4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOiBBVl9QUk9GSUxFX01QRUcyXzQyMjsKLSAgICB9Ci0gICAgaWYgKGF2Y3R4LT5s ZXZlbCA9PSBBVl9MRVZFTF9VTktOT1dOKSB7Ci0gICAgICAgIGlmIChhdmN0eC0+cHJvZmlsZSA9 PSBBVl9QUk9GSUxFX01QRUcyXzQyMikgeyAgIC8qIDQ6MjoyICovCi0gICAgICAgICAgICBpZiAo YXZjdHgtPndpZHRoIDw9IDcyMCAmJiBhdmN0eC0+aGVpZ2h0IDw9IDYwOCkKLSAgICAgICAgICAg ICAgICBhdmN0eC0+bGV2ZWwgPSA1OyAgICAgICAgICAgICAgICAgICAvKiBNYWluICovCi0gICAg ICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgYXZjdHgtPmxldmVsID0gMjsgICAgICAgICAg ICAgICAgICAgLyogSGlnaCAqLwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgaWYgKGF2 Y3R4LT5wcm9maWxlICE9IEFWX1BST0ZJTEVfTVBFRzJfSElHSCAmJgotICAgICAgICAgICAgICAg IGF2Y3R4LT5waXhfZm10ICE9IEFWX1BJWF9GTVRfWVVWNDIwUCkgewotICAgICAgICAgICAgICAg IGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLAotICAgICAgICAgICAgICAgICAgICAgICAiT25s eSBIaWdoKDEpIGFuZCA0OjI6MigwKSBwcm9maWxlcyBzdXBwb3J0IDQ6MjoyIGNvbG9yIHNhbXBs aW5nXG4iKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwotICAgICAg ICAgICAgfQotICAgICAgICAgICAgaWYgKGF2Y3R4LT53aWR0aCA8PSA3MjAgJiYgYXZjdHgtPmhl aWdodCA8PSA1NzYpCi0gICAgICAgICAgICAgICAgYXZjdHgtPmxldmVsID0gODsgICAgICAgICAg ICAgICAgICAgLyogTWFpbiAqLwotICAgICAgICAgICAgZWxzZSBpZiAoYXZjdHgtPndpZHRoIDw9 IDE0NDApCi0gICAgICAgICAgICAgICAgYXZjdHgtPmxldmVsID0gNjsgICAgICAgICAgICAgICAg ICAgLyogSGlnaCAxNDQwICovCi0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgYXZj dHgtPmxldmVsID0gNDsgICAgICAgICAgICAgICAgICAgLyogSGlnaCAqLwotICAgICAgICB9Ci0g ICAgfQotCi0gICAgaWYgKChyZXQgPSBmZl9tcHZfZW5jb2RlX2luaXQoYXZjdHgpKSA8IDApCi0g ICAgICAgIHJldHVybiByZXQ7Ci0KLSAgICBpZiAoZmluZF9mcmFtZV9yYXRlX2luZGV4KGF2Y3R4 LCBtcGVnMTIpIDwgMCkgewotICAgICAgICBpZiAoYXZjdHgtPnN0cmljdF9zdGRfY29tcGxpYW5j ZSA+IEZGX0NPTVBMSUFOQ0VfRVhQRVJJTUVOVEFMKSB7Ci0gICAgICAgICAgICBhdl9sb2coYXZj dHgsIEFWX0xPR19FUlJPUiwgIk1QRUctMS8yIGRvZXMgbm90IHN1cHBvcnQgJWQvJWQgZnBzXG4i LAotICAgICAgICAgICAgICAgICAgIGF2Y3R4LT50aW1lX2Jhc2UuZGVuLCBhdmN0eC0+dGltZV9i YXNlLm51bSk7Ci0gICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwotICAgICAgICB9 IGVsc2UgewotICAgICAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfSU5GTywKLSAgICAgICAg ICAgICAgICAgICAiTVBFRy0xLzIgZG9lcyBub3Qgc3VwcG9ydCAlZC8lZCBmcHMsIHRoZXJlIG1h eSBiZSBBViBzeW5jIGlzc3Vlc1xuIiwKLSAgICAgICAgICAgICAgICAgICBhdmN0eC0+dGltZV9i YXNlLmRlbiwgYXZjdHgtPnRpbWVfYmFzZS5udW0pOwotICAgICAgICB9Ci0gICAgfQotCi0gICAg aWYgKGF2Y3R4LT5yY19tYXhfcmF0ZSAmJgotICAgICAgICBhdmN0eC0+cmNfbWluX3JhdGUgPT0g YXZjdHgtPnJjX21heF9yYXRlICYmCi0gICAgICAgIDkwMDAwTEwgKiAoYXZjdHgtPnJjX2J1ZmZl cl9zaXplIC0gMSkgPgotICAgICAgICAgICAgYXZjdHgtPnJjX21heF9yYXRlICogMHhGRkZGTEwp IHsKLSAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfSU5GTywKLSAgICAgICAgICAgICAgICJX YXJuaW5nIHZidl9kZWxheSB3aWxsIGJlIHNldCB0byAweEZGRkYgKD1WQlIpIGFzIHRoZSAiCi0g ICAgICAgICAgICAgICAic3BlY2lmaWVkIHZidiBidWZmZXIgaXMgdG9vIGxhcmdlIGZvciB0aGUg Z2l2ZW4gYml0cmF0ZSFcbiIpOwotICAgIH0KLQotICAgIGlmIChtcGVnMTItPmRyb3BfZnJhbWVf dGltZWNvZGUpCi0gICAgICAgIG1wZWcxMi0+dGMuZmxhZ3MgfD0gQVZfVElNRUNPREVfRkxBR19E Uk9QRlJBTUU7Ci0gICAgaWYgKG1wZWcxMi0+ZHJvcF9mcmFtZV90aW1lY29kZSAmJiBtcGVnMTIt PmZyYW1lX3JhdGVfaW5kZXggIT0gNCkgewotICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19F UlJPUiwKLSAgICAgICAgICAgICAgICJEcm9wIGZyYW1lIHRpbWUgY29kZSBvbmx5IGFsbG93ZWQg d2l0aCAxMDAxLzMwMDAwIGZwc1xuIik7Ci0gICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7 Ci0gICAgfQotCi0gICAgaWYgKG1wZWcxMi0+dGNfb3B0X3N0cikgewotICAgICAgICBBVlJhdGlv bmFsIHJhdGUgPSBmZl9tcGVnMTJfZnJhbWVfcmF0ZV90YWJbbXBlZzEyLT5mcmFtZV9yYXRlX2lu ZGV4XTsKLSAgICAgICAgaW50IHJldCA9IGF2X3RpbWVjb2RlX2luaXRfZnJvbV9zdHJpbmcoJm1w ZWcxMi0+dGMsIHJhdGUsIG1wZWcxMi0+dGNfb3B0X3N0ciwgYXZjdHgpOwotICAgICAgICBpZiAo cmV0IDwgMCkKLSAgICAgICAgICAgIHJldHVybiByZXQ7Ci0gICAgICAgIG1wZWcxMi0+ZHJvcF9m cmFtZV90aW1lY29kZSAgPSAhIShtcGVnMTItPnRjLmZsYWdzICYgQVZfVElNRUNPREVfRkxBR19E Uk9QRlJBTUUpOwotICAgICAgICBtcGVnMTItPnRpbWVjb2RlX2ZyYW1lX3N0YXJ0ID0gbXBlZzEy LT50Yy5zdGFydDsKLSAgICB9IGVsc2UgewotICAgICAgICBtcGVnMTItPnRpbWVjb2RlX2ZyYW1l X3N0YXJ0ID0gMDsgLy8gZGVmYXVsdCBpcyAtMQotICAgIH0KLQotICAgIHJldHVybiAwOwotfQot CiBzdGF0aWMgdm9pZCBwdXRfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzLCB1aW50MzJfdCBoZWFk ZXIpCiB7CiAgICAgYWxpZ25fcHV0X2JpdHMoJnMtPnBiKTsKQEAgLTExNzksNiArMTAzMCwxNTUg QEAgYXZfY29sZCB2b2lkIGZmX21wZWcxX2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0ICpzKQog ICAgIGZmX3RocmVhZF9vbmNlKCZpbml0X3N0YXRpY19vbmNlLCBtcGVnMTJfZW5jb2RlX2luaXRf c3RhdGljKTsKIH0KIAorc3RhdGljIGF2X2NvbGQgaW50IGZpbmRfZnJhbWVfcmF0ZV9pbmRleChB VkNvZGVjQ29udGV4dCAqYXZjdHgsIE1QRUcxMkVuY0NvbnRleHQgKm1wZWcxMikKK3sKKyAgICBB VlJhdGlvbmFsIGJlc3RxID0gKEFWUmF0aW9uYWwpIHswLCAwfTsKKyAgICBBVlJhdGlvbmFsIGV4 dDsKKyAgICBBVlJhdGlvbmFsIHRhcmdldCA9IGF2X2ludl9xKGF2Y3R4LT50aW1lX2Jhc2UpOwor CisgICAgZm9yIChpbnQgaSA9IDE7IGkgPCAxNDsgaSsrKSB7CisgICAgICAgIGlmIChhdmN0eC0+ c3RyaWN0X3N0ZF9jb21wbGlhbmNlID4gRkZfQ09NUExJQU5DRV9VTk9GRklDSUFMICYmCisgICAg ICAgICAgICBpID49IDkpCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBmb3IgKGV4dC5u dW0gPSAxOyBleHQubnVtIDw9IDQ7IGV4dC5udW0rKykgeworICAgICAgICAgICAgZm9yIChleHQu ZGVuID0gMTsgZXh0LmRlbiA8PSAzMjsgZXh0LmRlbisrKSB7CisgICAgICAgICAgICAgICAgQVZS YXRpb25hbCBxID0gYXZfbXVsX3EoZXh0LCBmZl9tcGVnMTJfZnJhbWVfcmF0ZV90YWJbaV0pOwor CisgICAgICAgICAgICAgICAgaWYgKGF2Y3R4LT5jb2RlY19pZCAhPSBBVl9DT0RFQ19JRF9NUEVH MlZJREVPICYmIChleHQuZGVuIT0xIHx8IGV4dC5udW0hPTEpKQorICAgICAgICAgICAgICAgICAg ICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICBpZiAoYXZfZ2NkKGV4dC5kZW4sIGV4dC5udW0p ICE9IDEpCisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICAgICAg aWYgKCAgICBiZXN0cS5udW09PTAKKyAgICAgICAgICAgICAgICAgICAgfHwgYXZfbmVhcmVyX3Eo dGFyZ2V0LCBiZXN0cSwgcSkgPCAwCisgICAgICAgICAgICAgICAgICAgIHx8IGV4dC5udW09PTEg JiYgZXh0LmRlbj09MSAmJiBhdl9uZWFyZXJfcSh0YXJnZXQsIGJlc3RxLCBxKSA9PSAwKSB7Cisg ICAgICAgICAgICAgICAgICAgIGJlc3RxICAgICAgICAgICAgICAgPSBxOworICAgICAgICAgICAg ICAgICAgICBtcGVnMTItPmZyYW1lX3JhdGVfaW5kZXggICA9IGk7CisgICAgICAgICAgICAgICAg ICAgIG1wZWcxMi0+ZnJhbWVfcmF0ZV9leHQubnVtID0gZXh0Lm51bTsKKyAgICAgICAgICAgICAg ICAgICAgbXBlZzEyLT5mcmFtZV9yYXRlX2V4dC5kZW4gPSBleHQuZGVuOworICAgICAgICAgICAg ICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChhdl9jbXBf cSh0YXJnZXQsIGJlc3RxKSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGVsc2UKKyAgICAgICAg cmV0dXJuIDA7Cit9CisKK3N0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29u dGV4dCAqYXZjdHgpCit7CisgICAgTVBFRzEyRW5jQ29udGV4dCAqY29uc3QgbXBlZzEyID0gYXZj dHgtPnByaXZfZGF0YTsKKyAgICBpbnQgcmV0OworICAgIGludCBtYXhfc2l6ZSA9IGF2Y3R4LT5j b2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHMlZJREVPID8gMTYzODMgOiA0MDk1OworCisgICAg aWYgKGF2Y3R4LT53aWR0aCA+IG1heF9zaXplIHx8IGF2Y3R4LT5oZWlnaHQgPiBtYXhfc2l6ZSkg eworICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwgIiVzIGRvZXMgbm90IHN1cHBv cnQgcmVzb2x1dGlvbnMgYWJvdmUgJWR4JWRcbiIsCisgICAgICAgICAgICAgICBDT05GSUdfU01B TEwgPyBhdmN0eC0+Y29kZWMtPm5hbWUgOiBhdmN0eC0+Y29kZWMtPmxvbmdfbmFtZSwKKyAgICAg ICAgICAgICAgIG1heF9zaXplLCBtYXhfc2l6ZSk7CisgICAgICAgIHJldHVybiBBVkVSUk9SKEVJ TlZBTCk7CisgICAgfQorICAgIGlmICgoYXZjdHgtPndpZHRoICYgMHhGRkYpID09IDAgJiYgKGF2 Y3R4LT5oZWlnaHQgJiAweEZGRikgPT0gMSkgeworICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xP R19FUlJPUiwgIldpZHRoIC8gSGVpZ2h0IGlzIGludmFsaWQgZm9yIE1QRUcyXG4iKTsKKyAgICAg ICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKKyAgICB9CisKKyAgICBpZiAoYXZjdHgtPnN0cmlj dF9zdGRfY29tcGxpYW5jZSA+IEZGX0NPTVBMSUFOQ0VfVU5PRkZJQ0lBTCkgeworICAgICAgICBp ZiAoKGF2Y3R4LT53aWR0aCAmIDB4RkZGKSA9PSAwIHx8IChhdmN0eC0+aGVpZ2h0ICYgMHhGRkYp ID09IDApIHsKKyAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAiV2lkdGgg b3IgSGVpZ2h0IGFyZSBub3QgYWxsb3dlZCB0byBiZSBtdWx0aXBsZXMgb2YgNDA5NlxuIgorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhZGQgJy1zdHJpY3QgJWQnIGlm IHlvdSB3YW50IHRvIHVzZSB0aGVtIGFueXdheS5cbiIsIEZGX0NPTVBMSUFOQ0VfVU5PRkZJQ0lB TCk7CisgICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOworICAgICAgICB9CisgICAg fQorCisgICAgaWYgKG1wZWcxMi0+bXBlZy5zLnFfc2NhbGVfdHlwZSA9PSAxKSB7CisgICAgICAg IGlmIChhdmN0eC0+cW1heCA+IDI4KSB7CisgICAgICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xP R19FUlJPUiwKKyAgICAgICAgICAgICAgICAgICAibm9uIGxpbmVhciBxdWFudCBvbmx5IHN1cHBv cnRzIHFtYXggPD0gMjggY3VycmVudGx5XG4iKTsKKyAgICAgICAgICAgIHJldHVybiBBVkVSUk9S X1BBVENIV0VMQ09NRTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChhdmN0eC0+cHJvZmls ZSA9PSBBVl9QUk9GSUxFX1VOS05PV04pIHsKKyAgICAgICAgaWYgKGF2Y3R4LT5sZXZlbCAhPSBB Vl9MRVZFTF9VTktOT1dOKSB7CisgICAgICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJP UiwgIlNldCBwcm9maWxlIGFuZCBsZXZlbFxuIik7CisgICAgICAgICAgICByZXR1cm4gQVZFUlJP UihFSU5WQUwpOworICAgICAgICB9CisgICAgICAgIC8qIE1haW4gb3IgNDoyOjIgKi8KKyAgICAg ICAgYXZjdHgtPnByb2ZpbGUgPSBhdmN0eC0+cGl4X2ZtdCA9PSBBVl9QSVhfRk1UX1lVVjQyMFAg PyBBVl9QUk9GSUxFX01QRUcyX01BSU4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBBVl9QUk9GSUxFX01QRUcyXzQyMjsKKyAg ICB9CisgICAgaWYgKGF2Y3R4LT5sZXZlbCA9PSBBVl9MRVZFTF9VTktOT1dOKSB7CisgICAgICAg IGlmIChhdmN0eC0+cHJvZmlsZSA9PSBBVl9QUk9GSUxFX01QRUcyXzQyMikgeyAgIC8qIDQ6Mjoy ICovCisgICAgICAgICAgICBpZiAoYXZjdHgtPndpZHRoIDw9IDcyMCAmJiBhdmN0eC0+aGVpZ2h0 IDw9IDYwOCkKKyAgICAgICAgICAgICAgICBhdmN0eC0+bGV2ZWwgPSA1OyAgICAgICAgICAgICAg ICAgICAvKiBNYWluICovCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgYXZjdHgt PmxldmVsID0gMjsgICAgICAgICAgICAgICAgICAgLyogSGlnaCAqLworICAgICAgICB9IGVsc2Ug eworICAgICAgICAgICAgaWYgKGF2Y3R4LT5wcm9maWxlICE9IEFWX1BST0ZJTEVfTVBFRzJfSElH SCAmJgorICAgICAgICAgICAgICAgIGF2Y3R4LT5waXhfZm10ICE9IEFWX1BJWF9GTVRfWVVWNDIw UCkgeworICAgICAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLAorICAgICAg ICAgICAgICAgICAgICAgICAiT25seSBIaWdoKDEpIGFuZCA0OjI6MigwKSBwcm9maWxlcyBzdXBw b3J0IDQ6MjoyIGNvbG9yIHNhbXBsaW5nXG4iKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gQVZF UlJPUihFSU5WQUwpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGF2Y3R4LT53aWR0 aCA8PSA3MjAgJiYgYXZjdHgtPmhlaWdodCA8PSA1NzYpCisgICAgICAgICAgICAgICAgYXZjdHgt PmxldmVsID0gODsgICAgICAgICAgICAgICAgICAgLyogTWFpbiAqLworICAgICAgICAgICAgZWxz ZSBpZiAoYXZjdHgtPndpZHRoIDw9IDE0NDApCisgICAgICAgICAgICAgICAgYXZjdHgtPmxldmVs ID0gNjsgICAgICAgICAgICAgICAgICAgLyogSGlnaCAxNDQwICovCisgICAgICAgICAgICBlbHNl CisgICAgICAgICAgICAgICAgYXZjdHgtPmxldmVsID0gNDsgICAgICAgICAgICAgICAgICAgLyog SGlnaCAqLworICAgICAgICB9CisgICAgfQorCisgICAgcmV0ID0gZmZfbXB2X2VuY29kZV9pbml0 KGF2Y3R4KTsKKyAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIHJldDsKKworICAgIGlm IChmaW5kX2ZyYW1lX3JhdGVfaW5kZXgoYXZjdHgsIG1wZWcxMikgPCAwKSB7CisgICAgICAgIGlm IChhdmN0eC0+c3RyaWN0X3N0ZF9jb21wbGlhbmNlID4gRkZfQ09NUExJQU5DRV9FWFBFUklNRU5U QUwpIHsKKyAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAiTVBFRy0xLzIg ZG9lcyBub3Qgc3VwcG9ydCAlZC8lZCBmcHNcbiIsCisgICAgICAgICAgICAgICAgICAgYXZjdHgt PnRpbWVfYmFzZS5kZW4sIGF2Y3R4LT50aW1lX2Jhc2UubnVtKTsKKyAgICAgICAgICAgIHJldHVy biBBVkVSUk9SKEVJTlZBTCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBhdl9sb2co YXZjdHgsIEFWX0xPR19JTkZPLAorICAgICAgICAgICAgICAgICAgICJNUEVHLTEvMiBkb2VzIG5v dCBzdXBwb3J0ICVkLyVkIGZwcywgdGhlcmUgbWF5IGJlIEFWIHN5bmMgaXNzdWVzXG4iLAorICAg ICAgICAgICAgICAgICAgIGF2Y3R4LT50aW1lX2Jhc2UuZGVuLCBhdmN0eC0+dGltZV9iYXNlLm51 bSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoYXZjdHgtPnJjX21heF9yYXRlICYmCisg ICAgICAgIGF2Y3R4LT5yY19taW5fcmF0ZSA9PSBhdmN0eC0+cmNfbWF4X3JhdGUgJiYKKyAgICAg ICAgOTAwMDBMTCAqIChhdmN0eC0+cmNfYnVmZmVyX3NpemUgLSAxKSA+CisgICAgICAgICAgICBh dmN0eC0+cmNfbWF4X3JhdGUgKiAweEZGRkZMTCkgeworICAgICAgICBhdl9sb2coYXZjdHgsIEFW X0xPR19JTkZPLAorICAgICAgICAgICAgICAgIldhcm5pbmcgdmJ2X2RlbGF5IHdpbGwgYmUgc2V0 IHRvIDB4RkZGRiAoPVZCUikgYXMgdGhlICIKKyAgICAgICAgICAgICAgICJzcGVjaWZpZWQgdmJ2 IGJ1ZmZlciBpcyB0b28gbGFyZ2UgZm9yIHRoZSBnaXZlbiBiaXRyYXRlIVxuIik7CisgICAgfQor CisgICAgaWYgKG1wZWcxMi0+ZHJvcF9mcmFtZV90aW1lY29kZSkKKyAgICAgICAgbXBlZzEyLT50 Yy5mbGFncyB8PSBBVl9USU1FQ09ERV9GTEFHX0RST1BGUkFNRTsKKyAgICBpZiAobXBlZzEyLT5k cm9wX2ZyYW1lX3RpbWVjb2RlICYmIG1wZWcxMi0+ZnJhbWVfcmF0ZV9pbmRleCAhPSA0KSB7Cisg ICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLAorICAgICAgICAgICAgICAgIkRyb3Ag ZnJhbWUgdGltZSBjb2RlIG9ubHkgYWxsb3dlZCB3aXRoIDEwMDEvMzAwMDAgZnBzXG4iKTsKKyAg ICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKKyAgICB9CisKKyAgICBpZiAobXBlZzEyLT50 Y19vcHRfc3RyKSB7CisgICAgICAgIEFWUmF0aW9uYWwgcmF0ZSA9IGZmX21wZWcxMl9mcmFtZV9y YXRlX3RhYlttcGVnMTItPmZyYW1lX3JhdGVfaW5kZXhdOworICAgICAgICBpbnQgcmV0ID0gYXZf dGltZWNvZGVfaW5pdF9mcm9tX3N0cmluZygmbXBlZzEyLT50YywgcmF0ZSwgbXBlZzEyLT50Y19v cHRfc3RyLCBhdmN0eCk7CisgICAgICAgIGlmIChyZXQgPCAwKQorICAgICAgICAgICAgcmV0dXJu IHJldDsKKyAgICAgICAgbXBlZzEyLT5kcm9wX2ZyYW1lX3RpbWVjb2RlICA9ICEhKG1wZWcxMi0+ dGMuZmxhZ3MgJiBBVl9USU1FQ09ERV9GTEFHX0RST1BGUkFNRSk7CisgICAgICAgIG1wZWcxMi0+ dGltZWNvZGVfZnJhbWVfc3RhcnQgPSBtcGVnMTItPnRjLnN0YXJ0OworICAgIH0gZWxzZSB7Cisg ICAgICAgIG1wZWcxMi0+dGltZWNvZGVfZnJhbWVfc3RhcnQgPSAwOyAvLyBkZWZhdWx0IGlzIC0x CisgICAgfQorCisgICAgcmV0dXJuIDA7Cit9CisKICNkZWZpbmUgT0ZGU0VUKHgpIG9mZnNldG9m KE1QRUcxMkVuY0NvbnRleHQsIHgpCiAjZGVmaW5lIFZFIEFWX09QVF9GTEFHX0VOQ09ESU5HX1BB UkFNIHwgQVZfT1BUX0ZMQUdfVklERU9fUEFSQU0KICNkZWZpbmUgQ09NTU9OX09QVFMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLS0g CjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0015-avcodec-mpeg12enc-Merge-ff_mpeg1_encode_init-into-or.patch" Content-Disposition: attachment; filename*0="0015-avcodec-mpeg12enc-Merge-ff_mpeg1_encode_init-into-or.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAyNGI3ZjJhMmQxMGQyZTYyYjU0YmQyY2VhOTdmZTI5NDkyY2NlZDc1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDE4OjI4OjEzICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAxNS83N10gYXZjb2RlYy9tcGVnMTJlbmM6IE1lcmdlIGZmX21wZWcxX2VuY29k ZV9pbml0KCkgaW50bwogb3JkaW5hcnkgaW5pdAoKRXZlcnl0aGluZyBleGNlcHQgc2V0dGluZyB0 aGUgZGNfc2NhbGVfdGFibGVzIGNhbiBiZSBkb25lCmJlZm9yZSBjYWxsaW5nIGZmX21wdl9lbmNv ZGVfaW5pdCgpOyBzZXR0aW5nIHRoZSBkY19zY2FsZV90YWJsZXMKdW5mb3J0dW5hdGVseSBzdGls bCBoYXMgdG8gYmUgcGVyZm9ybWVkIHZpYSBhIChub3cgaW5saW5lZCkKY2FsbGJhY2sgcGVyZm9y bWVkIGJ5IGZmX21wdl9lbmNvZGVfaW5pdCgpIGFzIGl0IHJlbGllcwpvbiBpbnRyYV9kY19wcmVj aXNpb24gaGF2aW5nIGJlZW4gc2FuaXRpemVkLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVp bmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9t cGVnMTJlbmMuYyB8IDU4ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogbGliYXZjb2RlYy9tcGVnMTJlbmMuaCB8ICA5ICsrKysrKy0KIDIgZmlsZXMgY2hhbmdlZCwg MzQgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9tcGVnMTJlbmMuYyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKaW5kZXggNzMwZTA0MTFjNy4u YzFlNmNjODRkYiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnMTJlbmMuYworKysgYi9saWJh dmNvZGVjL21wZWcxMmVuYy5jCkBAIC00Niw3ICs0Niw2IEBACiAjaW5jbHVkZSAibXBlZzEydmxj LmgiCiAjaW5jbHVkZSAibXBlZ3V0aWxzLmgiCiAjaW5jbHVkZSAibXBlZ3ZpZGVvLmgiCi0jaW5j bHVkZSAibXBlZ3ZpZGVvZGF0YS5oIgogI2luY2x1ZGUgIm1wZWd2aWRlb2VuYy5oIgogI2luY2x1 ZGUgInByb2ZpbGVzLmgiCiAjaW5jbHVkZSAicmwuaCIKQEAgLTEwMDAsMzYgKzk5OSw2IEBAIHN0 YXRpYyBhdl9jb2xkIHZvaWQgbXBlZzEyX2VuY29kZV9pbml0X3N0YXRpYyh2b2lkKQogICAgICAg ICAgICAgZmNvZGVfdGFiW212ICsgTUFYX01WXSA9IGZfY29kZTsKIH0KIAotYXZfY29sZCB2b2lk IGZmX21wZWcxX2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0ICpzKQotewotICAgIHN0YXRpYyBB Vk9uY2UgaW5pdF9zdGF0aWNfb25jZSA9IEFWX09OQ0VfSU5JVDsKLQotICAgIHMtPnlfZGNfc2Nh bGVfdGFibGUgPQotICAgIHMtPmNfZGNfc2NhbGVfdGFibGUgPSBmZl9tcGVnMTJfZGNfc2NhbGVf dGFibGVbcy0+aW50cmFfZGNfcHJlY2lzaW9uXTsKLQotICAgIHMtPm1lLm12X3BlbmFsdHkgPSBt dl9wZW5hbHR5OwotICAgIHMtPmZjb2RlX3RhYiAgICAgPSBmY29kZV90YWIgKyBNQVhfTVY7Ci0g ICAgaWYgKHMtPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX01QRUcxVklERU8pIHsKLSAgICAgICAg cy0+bWluX3Fjb2VmZiA9IC0yNTU7Ci0gICAgICAgIHMtPm1heF9xY29lZmYgPSAyNTU7Ci0gICAg fSBlbHNlIHsKLSAgICAgICAgcy0+bWluX3Fjb2VmZiA9IC0yMDQ3OwotICAgICAgICBzLT5tYXhf cWNvZWZmID0gMjA0NzsKLSAgICAgICAgcy0+bXBlZ19xdWFudCA9IDE7Ci0gICAgfQotICAgIGlm IChzLT5pbnRyYV92bGNfZm9ybWF0KSB7Ci0gICAgICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGgg ICAgICA9Ci0gICAgICAgIHMtPmludHJhX2FjX3ZsY19sYXN0X2xlbmd0aCA9IHVuaV9tcGVnMl9h Y192bGNfbGVuOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGgg ICAgICA9Ci0gICAgICAgIHMtPmludHJhX2FjX3ZsY19sYXN0X2xlbmd0aCA9IHVuaV9tcGVnMV9h Y192bGNfbGVuOwotICAgIH0KLSAgICBzLT5pbnRlcl9hY192bGNfbGVuZ3RoICAgICAgPQotICAg IHMtPmludGVyX2FjX3ZsY19sYXN0X2xlbmd0aCA9IHVuaV9tcGVnMV9hY192bGNfbGVuOwotCi0g ICAgZmZfdGhyZWFkX29uY2UoJmluaXRfc3RhdGljX29uY2UsIG1wZWcxMl9lbmNvZGVfaW5pdF9z dGF0aWMpOwotfQotCiBzdGF0aWMgYXZfY29sZCBpbnQgZmluZF9mcmFtZV9yYXRlX2luZGV4KEFW Q29kZWNDb250ZXh0ICphdmN0eCwgTVBFRzEyRW5jQ29udGV4dCAqbXBlZzEyKQogewogICAgIEFW UmF0aW9uYWwgYmVzdHEgPSAoQVZSYXRpb25hbCkgezAsIDB9OwpAQCAtMTA3MCw3ICsxMDM5LDEw IEBAIHN0YXRpYyBhdl9jb2xkIGludCBmaW5kX2ZyYW1lX3JhdGVfaW5kZXgoQVZDb2RlY0NvbnRl eHQgKmF2Y3R4LCBNUEVHMTJFbmNDb250ZXh0CiAKIHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVf aW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7CisgICAgc3RhdGljIEFWT25jZSBpbml0X3N0 YXRpY19vbmNlID0gQVZfT05DRV9JTklUOwogICAgIE1QRUcxMkVuY0NvbnRleHQgKmNvbnN0IG1w ZWcxMiA9IGF2Y3R4LT5wcml2X2RhdGE7CisgICAgTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0g PSAmbXBlZzEyLT5tcGVnOworICAgIE1wZWdFbmNDb250ZXh0ICAgICpjb25zdCBzID0gJm0tPnM7 CiAgICAgaW50IHJldDsKICAgICBpbnQgbWF4X3NpemUgPSBhdmN0eC0+Y29kZWNfaWQgPT0gQVZf Q09ERUNfSURfTVBFRzJWSURFTyA/IDE2MzgzIDogNDA5NTsKIApAQCAtMTA5Myw3ICsxMDY1LDcg QEAgc3RhdGljIGF2X2NvbGQgaW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkK ICAgICAgICAgfQogICAgIH0KIAotICAgIGlmIChtcGVnMTItPm1wZWcucy5xX3NjYWxlX3R5cGUg PT0gMSkgeworICAgIGlmIChzLT5xX3NjYWxlX3R5cGUgPT0gMSkgewogICAgICAgICBpZiAoYXZj dHgtPnFtYXggPiAyOCkgewogICAgICAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfRVJST1Is CiAgICAgICAgICAgICAgICAgICAgIm5vbiBsaW5lYXIgcXVhbnQgb25seSBzdXBwb3J0cyBxbWF4 IDw9IDI4IGN1cnJlbnRseVxuIik7CkBAIC0xMTMyLDYgKzExMDQsMjYgQEAgc3RhdGljIGF2X2Nv bGQgaW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAgICAgfQogICAg IH0KIAorICAgIHMtPm1lLm12X3BlbmFsdHkgPSBtdl9wZW5hbHR5OworICAgIHMtPmZjb2RlX3Rh YiAgICAgPSBmY29kZV90YWIgKyBNQVhfTVY7CisgICAgaWYgKGF2Y3R4LT5jb2RlY19pZCA9PSBB Vl9DT0RFQ19JRF9NUEVHMVZJREVPKSB7CisgICAgICAgIHMtPm1pbl9xY29lZmYgPSAtMjU1Owor ICAgICAgICBzLT5tYXhfcWNvZWZmID0gMjU1OworICAgIH0gZWxzZSB7CisgICAgICAgIHMtPm1p bl9xY29lZmYgPSAtMjA0NzsKKyAgICAgICAgcy0+bWF4X3Fjb2VmZiA9IDIwNDc7CisgICAgICAg IHMtPm1wZWdfcXVhbnQgPSAxOworICAgIH0KKyAgICBpZiAocy0+aW50cmFfdmxjX2Zvcm1hdCkg eworICAgICAgICBzLT5pbnRyYV9hY192bGNfbGVuZ3RoICAgICAgPQorICAgICAgICBzLT5pbnRy YV9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfbXBlZzJfYWNfdmxjX2xlbjsKKyAgICB9IGVsc2Ug eworICAgICAgICBzLT5pbnRyYV9hY192bGNfbGVuZ3RoICAgICAgPQorICAgICAgICBzLT5pbnRy YV9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfbXBlZzFfYWNfdmxjX2xlbjsKKyAgICB9CisgICAg cy0+aW50ZXJfYWNfdmxjX2xlbmd0aCAgICAgID0KKyAgICBzLT5pbnRlcl9hY192bGNfbGFzdF9s ZW5ndGggPSB1bmlfbXBlZzFfYWNfdmxjX2xlbjsKKwogICAgIHJldCA9IGZmX21wdl9lbmNvZGVf aW5pdChhdmN0eCk7CiAgICAgaWYgKHJldCA8IDApCiAgICAgICAgIHJldHVybiByZXQ7CkBAIC0x MTc2LDYgKzExNjgsOCBAQCBzdGF0aWMgYXZfY29sZCBpbnQgZW5jb2RlX2luaXQoQVZDb2RlY0Nv bnRleHQgKmF2Y3R4KQogICAgICAgICBtcGVnMTItPnRpbWVjb2RlX2ZyYW1lX3N0YXJ0ID0gMDsg Ly8gZGVmYXVsdCBpcyAtMQogICAgIH0KIAorICAgIGZmX3RocmVhZF9vbmNlKCZpbml0X3N0YXRp Y19vbmNlLCBtcGVnMTJfZW5jb2RlX2luaXRfc3RhdGljKTsKKwogICAgIHJldHVybiAwOwogfQog CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWcxMmVuYy5oIGIvbGliYXZjb2RlYy9tcGVnMTJl bmMuaAppbmRleCAwYjM1YWY4YTMwLi45MDg5NzE5MDVkIDEwMDY0NAotLS0gYS9saWJhdmNvZGVj L21wZWcxMmVuYy5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmgKQEAgLTI1LDExICsyNSwx OCBAQAogI2luY2x1ZGUgPHN0ZGludC5oPgogCiAjaW5jbHVkZSAibXBlZ3ZpZGVvLmgiCisjaW5j bHVkZSAibXBlZ3ZpZGVvZGF0YS5oIgogCiB2b2lkIGZmX21wZWcxX2VuY29kZV9waWN0dXJlX2hl YWRlcihNcGVnRW5jQ29udGV4dCAqcyk7CiB2b2lkIGZmX21wZWcxX2VuY29kZV9tYihNcGVnRW5j Q29udGV4dCAqcywgaW50MTZfdCBibG9ja1s4XVs2NF0sCiAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQgbW90aW9uX3gsIGludCBtb3Rpb25feSk7Ci12b2lkIGZmX21wZWcxX2VuY29kZV9pbml0 KE1wZWdFbmNDb250ZXh0ICpzKTsKIHZvaWQgZmZfbXBlZzFfZW5jb2RlX3NsaWNlX2hlYWRlcihN cGVnRW5jQ29udGV4dCAqcyk7CiAKKy8vIE11c3Qgbm90IGJlIGNhbGxlZCBiZWZvcmUgaW50cmFf ZGNfcHJlY2lzaW9uIGhhcyBiZWVuIHNhbml0aXplZCBpbiBmZl9tcHZfZW5jb2RlX2luaXQoKQor c3RhdGljIGlubGluZSB2b2lkIGZmX21wZWcxX2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0ICpz KQoreworICAgIHMtPnlfZGNfc2NhbGVfdGFibGUgPQorICAgIHMtPmNfZGNfc2NhbGVfdGFibGUg PSBmZl9tcGVnMTJfZGNfc2NhbGVfdGFibGVbcy0+aW50cmFfZGNfcHJlY2lzaW9uXTsKK30KKwog I2VuZGlmIC8qIEFWQ09ERUNfTVBFRzEyRU5DX0ggKi8KLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0016-avcodec-mpeg12enc-Don-t-write-invalid-MPEG-1-slice-h.patch" Content-Disposition: attachment; filename*0="0016-avcodec-mpeg12enc-Don-t-write-invalid-MPEG-1-slice-h.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAwNmNlNGI4NjQ3MDk3NDg5YWM0ZDU2ZjdmODA2OTM0MzAxMzJmZWIyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNDozMDoxMSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTYvNzddIGF2Y29kZWMvbXBlZzEyZW5jOiBEb24ndCB3cml0ZSBpbnZhbGlk IE1QRUctMSBzbGljZQogaGVhZGVycwoKVGhlIHZhbGlkIHZhbHVlcyBmb3Igc2xpY2Vfc3RhcnRf Y29kZSBhcmUgMHgxLi4weEFGLCB3aGljaCBpbXBsaWVzCnRoYXQgb25lIGNhbid0IHN0YXJ0IGEg c2xpY2Ugd2l0aCByb3cgbmIgPiAxNzQgKHplcm8tYmFzZWQpLgpUaGlzIHByb2JsZW0gY2FuIGJl IGVuY291bnRlcmVkIHdpdGggZmlsZXMgb2Ygc3VmZmljaWVudCBoZWlnaHQKKG1vcmUgdGhhbiAy ODAwIHBpeGVscykgZWl0aGVyIGJ5IHVzaW5nIHRoZSBzbGljZSBvcHRpb24gb3IgYnkKaW1wb3Np bmcgYW4gUlRQIHBheWxvYWQgbGltaXQuCgpGaXggdGhpcyBieSBtYWtpbmcgdGhlIGxhc3Qgc2xp Y2Ugc3RhcnQgb24gdGhlIG1heGltdW0gYWxsb3dlZApzbGljZSByb3cgaWYgbmVjZXNzYXJ5IGFu ZCBkaXZpZGUgdGhlIGZpcnN0IDE3NCByb3dzIHRvIHRoZSByZW1haW5pbmcKc2xpY2VzLiBUaGlz IHdpbGwgaW1wZWRlIHBhcmFsbGVsaXNtIGJvdGggaW4gdGhlIGRlY29kZXIgYW5kIGVuY29kZXIs CmJ1dCB0aGF0IGlzIHVuYXZvaWRhYmxlLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhh cmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVn MTJlbmMuYyAgICAgfCAyNiArKysrKysrKysrKysrKysrKysrKysrKysrKwogbGliYXZjb2RlYy9t cGVndmlkZW9fZW5jLmMgfCAgNCArKystCiAyIGZpbGVzIGNoYW5nZWQsIDI5IGluc2VydGlvbnMo KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWcxMmVuYy5jIGIv bGliYXZjb2RlYy9tcGVnMTJlbmMuYwppbmRleCBjMWU2Y2M4NGRiLi5kODRkNjI4NTYzIDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL21wZWcxMmVuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5j LmMKQEAgLTI1LDYgKzI1LDcgQEAKICAqIE1QRUctMS8yIGVuY29kZXIKICAqLwogCisjaW5jbHVk ZSA8YXNzZXJ0Lmg+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAKICNpbmNsdWRlICJjb25maWcuaCIK QEAgLTMyNCw2ICszMjUsNyBAQCB2b2lkIGZmX21wZWcxX2VuY29kZV9zbGljZV9oZWFkZXIoTXBl Z0VuY0NvbnRleHQgKnMpCiAgICAgICAgIC8qIHNsaWNlX3ZlcnRpY2FsX3Bvc2l0aW9uX2V4dGVu c2lvbiAqLwogICAgICAgICBwdXRfYml0cygmcy0+cGIsIDMsIHMtPm1iX3kgPj4gNyk7CiAgICAg fSBlbHNlIHsKKyAgICAgICAgYXZfYXNzZXJ0MShzLT5tYl95IDw9IFNMSUNFX01BWF9TVEFSVF9D T0RFIC0gU0xJQ0VfTUlOX1NUQVJUX0NPREUpOwogICAgICAgICBwdXRfaGVhZGVyKHMsIFNMSUNF X01JTl9TVEFSVF9DT0RFICsgcy0+bWJfeSk7CiAgICAgfQogICAgIHB1dF9xc2NhbGUocyk7CkBA IC0xMTI4LDYgKzExMzAsMzAgQEAgc3RhdGljIGF2X2NvbGQgaW50IGVuY29kZV9pbml0KEFWQ29k ZWNDb250ZXh0ICphdmN0eCkKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsK IAorICAgIGlmIChhdmN0eC0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfTVBFRzFWSURFTyAmJgor ICAgICAgICBzLT50aHJlYWRfY29udGV4dFtzLT5zbGljZV9jb250ZXh0X2NvdW50IC0gMV0tPnN0 YXJ0X21iX3kgPgorICAgICAgICAgICAgU0xJQ0VfTUFYX1NUQVJUX0NPREUgLSBTTElDRV9NSU5f U1RBUlRfQ09ERSkgeworICAgICAgICAvLyBNUEVHLTEgc2xpY2VzIG11c3Qgbm90IHN0YXJ0IGF0 IGEgTUIgcm93IG51bWJlciB0aGF0IHdvdWxkIG1ha2UKKyAgICAgICAgLy8gdGhlaXIgc3RhcnQg Y29kZSA+IFNMSUNFX01BWF9TVEFSVF9DT0RFLiBTbyBtYWtlIHRoZSBsYXN0IHNsaWNlCisgICAg ICAgIC8vIGJpZ2dlciBpZiBuZWVkZWQgYW5kIGV2ZW5seSBkaXN0cmlidXRlIHRoZSBmaXJzdCAx NzQgcm93cy4KKyAgICAgICAgc3RhdGljX2Fzc2VydChNQVhfVEhSRUFEUyA8PSAxICsgU0xJQ0Vf TUFYX1NUQVJUX0NPREUgLSBTTElDRV9NSU5fU1RBUlRfQ09ERSwKKyAgICAgICAgICAgICAgICAg ICAgICAiV2l0aCBtb3JlIHRoYW4gMTc1IHNsaWNlIGNvbnRleHRzLCB3ZSBoYXZlIHRvIGhhbmRs ZSAiCisgICAgICAgICAgICAgICAgICAgICAgInRoZSBjYXNlIGluIHdoaWNoIHRoZXJlIGlzIG5v IHdvcmsgdG8gZG8gZm9yIHNvbWUgIgorICAgICAgICAgICAgICAgICAgICAgICJzbGljZSBjb250 ZXh0cy4iKTsKKyAgICAgICAgY29uc3QgaW50IG1iX2hlaWdodCA9IFNMSUNFX01BWF9TVEFSVF9D T0RFIC0gU0xJQ0VfTUlOX1NUQVJUX0NPREU7CisgICAgICAgIGNvbnN0IGludCBuYl9zbGljZXMg PSBzLT5zbGljZV9jb250ZXh0X2NvdW50IC0gMTsKKworICAgICAgICBzLT50aHJlYWRfY29udGV4 dFtuYl9zbGljZXNdLT5zdGFydF9tYl95ID0gbWJfaGVpZ2h0OworCisgICAgICAgIGF2X2Fzc2Vy dDEobmJfc2xpY2VzID49IDEpOworICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG5iX3NsaWNl czsgaSsrKSB7CisgICAgICAgICAgICBzLT50aHJlYWRfY29udGV4dFtpXS0+c3RhcnRfbWJfeSA9 CisgICAgICAgICAgICAgICAgKG1iX2hlaWdodCAqIChpICAgICkgKyBuYl9zbGljZXMgLyAyKSAv IG5iX3NsaWNlczsKKyAgICAgICAgICAgIHMtPnRocmVhZF9jb250ZXh0W2ldLT5lbmRfbWJfeSAg ID0KKyAgICAgICAgICAgICAgICAobWJfaGVpZ2h0ICogKGkgKyAxKSArIG5iX3NsaWNlcyAvIDIp IC8gbmJfc2xpY2VzOworICAgICAgICB9CisgICAgfQorCiAgICAgaWYgKGZpbmRfZnJhbWVfcmF0 ZV9pbmRleChhdmN0eCwgbXBlZzEyKSA8IDApIHsKICAgICAgICAgaWYgKGF2Y3R4LT5zdHJpY3Rf c3RkX2NvbXBsaWFuY2UgPiBGRl9DT01QTElBTkNFX0VYUEVSSU1FTlRBTCkgewogICAgICAgICAg ICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfRVJST1IsICJNUEVHLTEvMiBkb2VzIG5vdCBzdXBwb3J0 ICVkLyVkIGZwc1xuIiwKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIGIv bGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggMzk4YjA2ZDkyOS4uMmNiYTRkZWNhMyAx MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysrIGIvbGliYXZjb2RlYy9t cGVndmlkZW9fZW5jLmMKQEAgLTMwNzcsNyArMzA3Nyw5IEBAIHN0YXRpYyBpbnQgZW5jb2RlX3Ro cmVhZChBVkNvZGVjQ29udGV4dCAqYywgdm9pZCAqYXJnKXsKICAgICAgICAgICAgICAgICBjYXNl IEFWX0NPREVDX0lEX01QRUcyVklERU86CiAgICAgICAgICAgICAgICAgICAgIGlmKHMtPm1iX3g9 PTAgJiYgcy0+bWJfeSE9MCkgaXNfZ29iX3N0YXJ0PTE7CiAgICAgICAgICAgICAgICAgY2FzZSBB Vl9DT0RFQ19JRF9NUEVHMVZJREVPOgotICAgICAgICAgICAgICAgICAgICBpZihzLT5tYl9za2lw X3J1bikgaXNfZ29iX3N0YXJ0PTA7CisgICAgICAgICAgICAgICAgICAgIGlmIChzLT5jb2RlY19p ZCA9PSBBVl9DT0RFQ19JRF9NUEVHMVZJREVPICYmIHMtPm1iX3kgPj0gMTc1IHx8CisgICAgICAg ICAgICAgICAgICAgICAgICBzLT5tYl9za2lwX3J1bikKKyAgICAgICAgICAgICAgICAgICAgICAg IGlzX2dvYl9zdGFydD0wOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAg ICAgICBjYXNlIEFWX0NPREVDX0lEX01KUEVHOgogICAgICAgICAgICAgICAgICAgICBpZihzLT5t Yl94PT0wICYmIHMtPm1iX3khPTApIGlzX2dvYl9zdGFydD0xOwotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0017-avcodec-pthread_slice-Remove-MPEG-1-height-hack.patch" Content-Disposition: attachment; filename*0="0017-avcodec-pthread_slice-Remove-MPEG-1-height-hack.patch" Content-Transfer-Encoding: base64 RnJvbSBkMDQ1ZGY5ZDUxYjUxNjJmYTI5ZWNkMmNjYjkyNTg4ZWU1OTc2YjVjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNDo1OTo1NSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTcvNzddIGF2Y29kZWMvcHRocmVhZF9zbGljZTogUmVtb3ZlIE1QRUctMSBo ZWlnaHQgaGFjawoKVGhpcyBpcyBubyBsb25nZXIgbmVjZXNzYXJ5IGdpdmVuIHRoYXQgdGhlIE1Q RUctMSBlbmNvZGVyCm5vdyBhZGFwdHMgdGhlIHNpemUgb2YgdGhlIGxhc3Qgc2xpY2UgdG8gZW5z dXJlIHRoYXQKbm8gc2xpY2UgaGVhZGVyIGhhcyBhbiBpbnZhbGlkIHNsaWNlX3N0YXJ0X2NvZGUu CgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBv dXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL3B0aHJlYWRfc2xpY2UuYyB8IDYgLS0tLS0tCiAx IGZpbGUgY2hhbmdlZCwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3B0 aHJlYWRfc2xpY2UuYyBiL2xpYmF2Y29kZWMvcHRocmVhZF9zbGljZS5jCmluZGV4IDhmZDNmZGFm ZDMuLjQ3MTRmZWYxMDYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcHRocmVhZF9zbGljZS5jCisr KyBiL2xpYmF2Y29kZWMvcHRocmVhZF9zbGljZS5jCkBAIC0xMTUsMTIgKzExNSw2IEBAIGF2X2Nv bGQgaW50IGZmX3NsaWNlX3RocmVhZF9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBp bnQgdGhyZWFkX2NvdW50ID0gYXZjdHgtPnRocmVhZF9jb3VudDsKICAgICB2b2lkICgqbWFpbmZ1 bmMpKHZvaWQgKik7CiAKLSAgICAvLyBXZSBjYW5ub3QgZG8gdGhpcyBpbiB0aGUgZW5jb2RlciBp bml0IGFzIHRoZSB0aHJlYWRzIGFyZSBjcmVhdGVkIGJlZm9yZQotICAgIGlmIChmZl9jb2RlY19p c19lbmNvZGVyKGF2Y3R4LT5jb2RlYykgJiYKLSAgICAgICAgYXZjdHgtPmNvZGVjX2lkID09IEFW X0NPREVDX0lEX01QRUcxVklERU8gJiYKLSAgICAgICAgYXZjdHgtPmhlaWdodCA+IDI4MDApCi0g ICAgICAgIHRocmVhZF9jb3VudCA9IGF2Y3R4LT50aHJlYWRfY291bnQgPSAxOwotCiAgICAgaWYg KCF0aHJlYWRfY291bnQpIHsKICAgICAgICAgaW50IG5iX2NwdXMgPSBhdl9jcHVfY291bnQoKTsK ICAgICAgICAgaWYgIChhdmN0eC0+aGVpZ2h0KQotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0018-avcodec-pthread_slice-Return-error-on-error.patch" Content-Disposition: attachment; filename="0018-avcodec-pthread_slice-Return-error-on-error.patch" Content-Transfer-Encoding: base64 RnJvbSBkODBmMjU1ZTEwZTdhNWVmMTRkZjY0NzkxMTRhOTJkYmQxYzFjMzdmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNToyNDo1MSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTgvNzddIGF2Y29kZWMvcHRocmVhZF9zbGljZTogUmV0dXJuIGVycm9yIG9u IGVycm9yCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5o YXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL3B0aHJlYWRfc2xpY2UuYyB8IDEyICsr KysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3B0aHJlYWRfc2xpY2UuYyBiL2xpYmF2Y29kZWMv cHRocmVhZF9zbGljZS5jCmluZGV4IDQ3MTRmZWYxMDYuLmY5ZGE2NzA3MzUgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvcHRocmVhZF9zbGljZS5jCisrKyBiL2xpYmF2Y29kZWMvcHRocmVhZF9zbGlj ZS5jCkBAIC0xMzIsMTQgKzEzMiwxNiBAQCBhdl9jb2xkIGludCBmZl9zbGljZV90aHJlYWRfaW5p dChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgfQogCiAgICAgYXZjdHgtPmludGVybmFsLT50 aHJlYWRfY3R4ID0gYyA9IGF2X21hbGxvY3ooc2l6ZW9mKCpjKSk7CisgICAgaWYgKCFjKQorICAg ICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAgIG1haW5mdW5jID0gZmZjb2RlYyhhdmN0 eC0+Y29kZWMpLT5jYXBzX2ludGVybmFsICYgRkZfQ09ERUNfQ0FQX1NMSUNFX1RIUkVBRF9IQVNf TUYgPyAmbWFpbl9mdW5jdGlvbiA6IE5VTEw7Ci0gICAgaWYgKCFjIHx8ICh0aHJlYWRfY291bnQg PSBhdnByaXZfc2xpY2V0aHJlYWRfY3JlYXRlKCZjLT50aHJlYWQsIGF2Y3R4LCB3b3JrZXJfZnVu YywgbWFpbmZ1bmMsIHRocmVhZF9jb3VudCkpIDw9IDEpIHsKLSAgICAgICAgaWYgKGMpCi0gICAg ICAgICAgICBhdnByaXZfc2xpY2V0aHJlYWRfZnJlZSgmYy0+dGhyZWFkKTsKLSAgICAgICAgYXZf ZnJlZXAoJmF2Y3R4LT5pbnRlcm5hbC0+dGhyZWFkX2N0eCk7CisgICAgdGhyZWFkX2NvdW50ID0g YXZwcml2X3NsaWNldGhyZWFkX2NyZWF0ZSgmYy0+dGhyZWFkLCBhdmN0eCwgd29ya2VyX2Z1bmMs CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWluZnVuYywg dGhyZWFkX2NvdW50KTsKKyAgICBpZiAodGhyZWFkX2NvdW50IDw9IDEpIHsKKyAgICAgICAgZmZf c2xpY2VfdGhyZWFkX2ZyZWUoYXZjdHgpOwogICAgICAgICBhdmN0eC0+dGhyZWFkX2NvdW50ID0g MTsKICAgICAgICAgYXZjdHgtPmFjdGl2ZV90aHJlYWRfdHlwZSA9IDA7Ci0gICAgICAgIHJldHVy biAwOworICAgICAgICByZXR1cm4gdGhyZWFkX2NvdW50IDwgMCA/IHRocmVhZF9jb3VudCA6IDA7 CiAgICAgfQogICAgIGF2Y3R4LT50aHJlYWRfY291bnQgPSB0aHJlYWRfY291bnQ7CiAKLS0gCjIu NDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0019-avutil-slicethread-Remove-NULL-pointer-check-when-fr.patch" Content-Disposition: attachment; filename*0="0019-avutil-slicethread-Remove-NULL-pointer-check-when-fr.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAzNTFjNDZiNGRjM2ExZDYzYzE0OGFhZjYxMWJmOWJkZTNkZTM0NTk4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNTozMDoxNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTkvNzddIGF2dXRpbC9zbGljZXRocmVhZDogUmVtb3ZlIE5VTEwgcG9pbnRl ciBjaGVjayB3aGVuCiBmcmVlaW5nCgphdnByaXZfc2xpY2V0aHJlYWRfZnJlZSgpIGlzIG9uZSBv ZiBvdXIgZnVuY3Rpb25zIHRoYXQgdGFrZXMKYSBwb2ludGVyIHRvIGEgcG9pbnRlciBhbmQgcmVz ZXRzIHRoZSBwb2ludGVyIHdoZW4gZG9uZS4KSXQgaXMgbGVnYWwgZm9yIHN1Y2ggZnVuY3Rpb25z IHRvIGJlIHBhc3NlZCBhIHBvaW50ZXIgdG8gYSBOVUxMCnBvaW50ZXIsIHlldCBwYXNzaW5nIGEg TlVMTCBwb2ludGVyIHdvdWxkIGJlIGluc2FuZSBhbmQgc2hvdWxkCm5vdCBiZSB0b2xlcmF0ZWQu CgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBv dXRsb29rLmNvbT4KLS0tCiBsaWJhdnV0aWwvc2xpY2V0aHJlYWQuYyB8IDUgKystLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv bGliYXZ1dGlsL3NsaWNldGhyZWFkLmMgYi9saWJhdnV0aWwvc2xpY2V0aHJlYWQuYwppbmRleCBl NmI4MmUzMWI2Li42NTkzZDU4YWJjIDEwMDY0NAotLS0gYS9saWJhdnV0aWwvc2xpY2V0aHJlYWQu YworKysgYi9saWJhdnV0aWwvc2xpY2V0aHJlYWQuYwpAQCAtMjI0LDEzICsyMjQsMTIgQEAgdm9p ZCBhdnByaXZfc2xpY2V0aHJlYWRfZXhlY3V0ZShBVlNsaWNlVGhyZWFkICpjdHgsIGludCBuYl9q b2JzLCBpbnQgZXhlY3V0ZV9tYWkKIAogdm9pZCBhdnByaXZfc2xpY2V0aHJlYWRfZnJlZShBVlNs aWNlVGhyZWFkICoqcGN0eCkKIHsKLSAgICBBVlNsaWNlVGhyZWFkICpjdHg7CisgICAgQVZTbGlj ZVRocmVhZCAqY3R4ID0gKnBjdHg7CiAgICAgaW50IG5iX3dvcmtlcnMsIGk7CiAKLSAgICBpZiAo IXBjdHggfHwgISpwY3R4KQorICAgIGlmICghY3R4KQogICAgICAgICByZXR1cm47CiAKLSAgICBj dHggPSAqcGN0eDsKICAgICBuYl93b3JrZXJzID0gY3R4LT5uYl90aHJlYWRzOwogICAgIGlmICgh Y3R4LT5tYWluX2Z1bmMpCiAgICAgICAgIG5iX3dvcmtlcnMtLTsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0020-avutil-slicethread-Mark-avpriv_slicethread_-create-f.patch" Content-Disposition: attachment; filename*0="0020-avutil-slicethread-Mark-avpriv_slicethread_-create-f.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4MDM2ODAyMzdlOTdhODZkMWQ3ZjJjOWFmY2Y4ODIzZDY2ZGVjODE5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNTozNDoyOSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMjAvNzddIGF2dXRpbC9zbGljZXRocmVhZDogTWFyawogYXZwcml2X3NsaWNl dGhyZWFkX3tjcmVhdGUsZnJlZX0gYXMgYXZfY29sZAoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBS aGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZ1dGls L3NsaWNldGhyZWFkLmMgfCAzICsrLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2xpYmF2dXRpbC9zbGljZXRocmVhZC5jIGIvbGli YXZ1dGlsL3NsaWNldGhyZWFkLmMKaW5kZXggNjU5M2Q1OGFiYy4uNzY1MGZjNjZhZCAxMDA2NDQK LS0tIGEvbGliYXZ1dGlsL3NsaWNldGhyZWFkLmMKKysrIGIvbGliYXZ1dGlsL3NsaWNldGhyZWFk LmMKQEAgLTk1LDYgKzk1LDcgQEAgc3RhdGljIHZvaWQgKmF0dHJpYnV0ZV9hbGlnbl9hcmcgdGhy ZWFkX3dvcmtlcih2b2lkICp2KQogICAgIH0KIH0KIAorYXZfY29sZAogaW50IGF2cHJpdl9zbGlj ZXRocmVhZF9jcmVhdGUoQVZTbGljZVRocmVhZCAqKnBjdHgsIHZvaWQgKnByaXYsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICgqd29ya2VyX2Z1bmMpKHZvaWQgKnByaXYsIGlu dCBqb2JuciwgaW50IHRocmVhZG5yLCBpbnQgbmJfam9icywgaW50IG5iX3RocmVhZHMpLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAoKm1haW5fZnVuYykodm9pZCAqcHJpdiks CkBAIC0yMjIsNyArMjIzLDcgQEAgdm9pZCBhdnByaXZfc2xpY2V0aHJlYWRfZXhlY3V0ZShBVlNs aWNlVGhyZWFkICpjdHgsIGludCBuYl9qb2JzLCBpbnQgZXhlY3V0ZV9tYWkKICAgICB9CiB9CiAK LXZvaWQgYXZwcml2X3NsaWNldGhyZWFkX2ZyZWUoQVZTbGljZVRocmVhZCAqKnBjdHgpCithdl9j b2xkIHZvaWQgYXZwcml2X3NsaWNldGhyZWFkX2ZyZWUoQVZTbGljZVRocmVhZCAqKnBjdHgpCiB7 CiAgICAgQVZTbGljZVRocmVhZCAqY3R4ID0gKnBjdHg7CiAgICAgaW50IG5iX3dvcmtlcnMsIGk7 Ci0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0021-avcodec-mpeg4videoenc-Add-Mpeg4EncContext-and-move-t.patch" Content-Disposition: attachment; filename*0="0021-avcodec-mpeg4videoenc-Add-Mpeg4EncContext-and-move-t.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBlZTY3MWQxNDg5OGZjMzExMTUyZjM3ZmJkMWQ4MTcxOWE5MTcyODQ4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAyIE1hciAyMDI1IDAxOjAzOjEwICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAyMS83N10gYXZjb2RlYy9tcGVnNHZpZGVvZW5jOiBBZGQgTXBlZzRFbmNDb250 ZXh0IGFuZCBtb3ZlCiB0aW1lX2luY3JlbWVudF9iaXRzCgpJdCBpcyBvbmx5IGV2ZXIgdXNlZCBi eSB0aGUgbWFpbiBlbmNvZGVyIHRocmVhZC4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5o YXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBl ZzR2aWRlb2VuYy5jIHwgMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCiBs aWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaCB8ICA0ICsrLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVv LmggICAgIHwgIDIgLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgIDMgKy0tCiA0IGZp bGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2xpYmF2Y29kZWMvbXBlZzR2aWRlb2VuYy5jIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5j LmMKaW5kZXggMTE4NzJmMjllYi4uMThmOTdiYjgxZCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9t cGVnNHZpZGVvZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKQEAgLTcxLDYg KzcxLDE3IEBAIHN0YXRpYyB1aW50OF90ICB1bmlfbXBlZzRfaW50ZXJfcmxfbGVuWzY0ICogNjQg KiAyICogMl07CiAgKiBtYXggcnVuOiAyOS80MQogICovCiAKK3R5cGVkZWYgc3RydWN0IE1wZWc0 RW5jQ29udGV4dCB7CisgICAgTVBWTWFpbkVuY0NvbnRleHQgbTsKKyAgICAvLy8gbnVtYmVyIG9m IGJpdHMgdG8gcmVwcmVzZW50IHRoZSBmcmFjdGlvbmFsIHBhcnQgb2YgdGltZQorICAgIGludCB0 aW1lX2luY3JlbWVudF9iaXRzOworfSBNcGVnNEVuY0NvbnRleHQ7CisKK3N0YXRpYyBpbmxpbmUg TXBlZzRFbmNDb250ZXh0ICptYWluY3R4X3RvX21wZWc0KE1QVk1haW5FbmNDb250ZXh0ICptKQor eworICAgIHJldHVybiAoTXBlZzRFbmNDb250ZXh0KiltOworfQorCiAvKioKICAqIFJldHVybiB0 aGUgbnVtYmVyIG9mIGJpdHMgdGhhdCBlbmNvZGluZyB0aGUgOHg4IGJsb2NrIGluIGJsb2NrIHdv dWxkIG5lZWQuCiAgKiBAcGFyYW1baW5dICBibG9ja19sYXN0X2luZGV4IGxhc3QgaW5kZXggaW4g c2NhbnRhYmxlIG9yZGVyIHRoYXQgcmVmZXJzIHRvIGEgbm9uIHplcm8gZWxlbWVudCBpbiBibG9j ay4KQEAgLTk2MCwxMCArOTcxLDExIEBAIHN0YXRpYyB2b2lkIG1wZWc0X2VuY29kZV92aXN1YWxf b2JqZWN0X2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcykKICAgICBmZl9tcGVnNF9zdHVmZmluZygm cy0+cGIpOwogfQogCi1zdGF0aWMgdm9pZCBtcGVnNF9lbmNvZGVfdm9sX2hlYWRlcihNcGVnRW5j Q29udGV4dCAqcywKK3N0YXRpYyB2b2lkIG1wZWc0X2VuY29kZV92b2xfaGVhZGVyKE1wZWc0RW5j Q29udGV4dCAqY29uc3QgbTQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgdm9fbnVtYmVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHZv bF9udW1iZXIpCiB7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbTQtPm0uczsKICAg ICBpbnQgdm9fdmVyX2lkLCB2b190eXBlLCBhc3BlY3RfcmF0aW9faW5mbzsKIAogICAgIGlmIChz LT5tYXhfYl9mcmFtZXMgfHwgcy0+cXVhcnRlcl9zYW1wbGUpIHsKQEAgLTEwMDIsOCArMTAxNCw4 IEBAIHN0YXRpYyB2b2lkIG1wZWc0X2VuY29kZV92b2xfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpz LAogICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwgMSk7ICAgICAgICAgICAgIC8qIG1hcmtlciBiaXQg Ki8KIAogICAgIHB1dF9iaXRzKCZzLT5wYiwgMTYsIHMtPmF2Y3R4LT50aW1lX2Jhc2UuZGVuKTsK LSAgICBpZiAocy0+dGltZV9pbmNyZW1lbnRfYml0cyA8IDEpCi0gICAgICAgIHMtPnRpbWVfaW5j cmVtZW50X2JpdHMgPSAxOworICAgIGlmIChtNC0+dGltZV9pbmNyZW1lbnRfYml0cyA8IDEpCisg ICAgICAgIG00LT50aW1lX2luY3JlbWVudF9iaXRzID0gMTsKICAgICBwdXRfYml0cygmcy0+cGIs IDEsIDEpOyAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICovCiAgICAgcHV0X2JpdHMoJnMtPnBi LCAxLCAwKTsgICAgICAgICAgICAgLyogZml4ZWQgdm9wIHJhdGU9bm8gKi8KICAgICBwdXRfYml0 cygmcy0+cGIsIDEsIDEpOyAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICovCkBAIC0xMDUwLDgg KzEwNjIsMTAgQEAgc3RhdGljIHZvaWQgbXBlZzRfZW5jb2RlX3ZvbF9oZWFkZXIoTXBlZ0VuY0Nv bnRleHQgKnMsCiB9CiAKIC8qIHdyaXRlIE1QRUctNCBWT1AgaGVhZGVyICovCi1pbnQgZmZfbXBl ZzRfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKQoraW50IGZmX21wZWc0 X2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIHsKKyAg ICBNcGVnNEVuY0NvbnRleHQgKmNvbnN0IG00ID0gbWFpbmN0eF90b19tcGVnNChtKTsKKyAgICBN cGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwogICAgIHVpbnQ2NF90IHRpbWVfaW5jcjsK ICAgICBpbnQ2NF90IHRpbWVfZGl2LCB0aW1lX21vZDsKIApAQCAtMTA2MCw3ICsxMDc0LDcgQEAg aW50IGZmX21wZWc0X2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcykKICAg ICAgICAgICAgIGlmIChzLT5hdmN0eC0+c3RyaWN0X3N0ZF9jb21wbGlhbmNlIDwgRkZfQ09NUExJ QU5DRV9WRVJZX1NUUklDVCkgIC8vIEhBQ0ssIHRoZSByZWZlcmVuY2Ugc3cgaXMgYnVnZ3kKICAg ICAgICAgICAgICAgICBtcGVnNF9lbmNvZGVfdmlzdWFsX29iamVjdF9oZWFkZXIocyk7CiAgICAg ICAgICAgICBpZiAocy0+YXZjdHgtPnN0cmljdF9zdGRfY29tcGxpYW5jZSA8IEZGX0NPTVBMSUFO Q0VfVkVSWV9TVFJJQ1QgfHwgcy0+cGljdHVyZV9udW1iZXIgPT0gMCkgIC8vIEhBQ0ssIHRoZSBy ZWZlcmVuY2Ugc3cgaXMgYnVnZ3kKLSAgICAgICAgICAgICAgICBtcGVnNF9lbmNvZGVfdm9sX2hl YWRlcihzLCAwLCAwKTsKKyAgICAgICAgICAgICAgICBtcGVnNF9lbmNvZGVfdm9sX2hlYWRlciht NCwgMCwgMCk7CiAgICAgICAgIH0KICAgICAgICAgbXBlZzRfZW5jb2RlX2dvcF9oZWFkZXIocyk7 CiAgICAgfQpAQCAtMTA4NSw3ICsxMDk5LDcgQEAgaW50IGZmX21wZWc0X2VuY29kZV9waWN0dXJl X2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcykKICAgICBwdXRfYml0cygmcy0+cGIsIDEsIDApOwog CiAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCAxKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC8qIG1hcmtlciAqLwotICAgIHB1dF9iaXRzKCZzLT5wYiwgcy0+dGltZV9pbmNyZW1lbnRfYml0 cywgdGltZV9tb2QpOyAvKiB0aW1lIGluY3JlbWVudCAqLworICAgIHB1dF9iaXRzKCZzLT5wYiwg bTQtPnRpbWVfaW5jcmVtZW50X2JpdHMsIHRpbWVfbW9kKTsgLyogdGltZSBpbmNyZW1lbnQgKi8K ICAgICBwdXRfYml0cygmcy0+cGIsIDEsIDEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LyogbWFya2VyICovCiAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCAxKTsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8qIHZvcCBjb2RlZCAqLwogICAgIGlmIChzLT5waWN0X3R5cGUgPT0gQVZf UElDVFVSRV9UWVBFX1ApIHsKQEAgLTEyNzYsNyArMTI5MCw4IEBAIHN0YXRpYyBhdl9jb2xkIHZv aWQgbXBlZzRfZW5jb2RlX2luaXRfc3RhdGljKHZvaWQpCiBzdGF0aWMgYXZfY29sZCBpbnQgZW5j b2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogewogICAgIHN0YXRpYyBBVk9uY2UgaW5p dF9zdGF0aWNfb25jZSA9IEFWX09OQ0VfSU5JVDsKLSAgICBNcGVnRW5jQ29udGV4dCAqcyA9IGF2 Y3R4LT5wcml2X2RhdGE7CisgICAgTXBlZzRFbmNDb250ZXh0ICpjb25zdCBtNCA9IGF2Y3R4LT5w cml2X2RhdGE7CisgICAgTXBlZ0VuY0NvbnRleHQgICpjb25zdCAgcyA9ICZtNC0+bS5zOwogICAg IGludCByZXQ7CiAKICAgICBpZiAoYXZjdHgtPndpZHRoID49ICgxPDwxMykgfHwgYXZjdHgtPmhl aWdodCA+PSAoMTw8MTMpKSB7CkBAIC0xMjkwLDcgKzEzMDUsMTAgQEAgc3RhdGljIGF2X2NvbGQg aW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIAogICAgIGZmX3RocmVhZF9v bmNlKCZpbml0X3N0YXRpY19vbmNlLCBtcGVnNF9lbmNvZGVfaW5pdF9zdGF0aWMpOwogCisgICAg bTQtPnRpbWVfaW5jcmVtZW50X2JpdHMgICAgID0gYXZfbG9nMihhdmN0eC0+dGltZV9iYXNlLmRl biAtIDEpICsgMTsKKwogICAgIHMtPmZjb2RlX3RhYiAgICAgICAgICAgICAgICA9IGZjb2RlX3Rh YiArIE1BWF9NVjsKKwogICAgIHMtPm1pbl9xY29lZmYgICAgICAgICAgICAgICA9IC0yMDQ4Owog ICAgIHMtPm1heF9xY29lZmYgICAgICAgICAgICAgICA9IDIwNDc7CiAgICAgcy0+aW50cmFfYWNf dmxjX2xlbmd0aCAgICAgID0gdW5pX21wZWc0X2ludHJhX3JsX2xlbjsKQEAgLTEzMDksNyArMTMy Nyw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZj dHgpCiAgICAgICAgIGluaXRfcHV0X2JpdHMoJnMtPnBiLCBzLT5hdmN0eC0+ZXh0cmFkYXRhLCAx MDI0KTsKIAogICAgICAgICBtcGVnNF9lbmNvZGVfdmlzdWFsX29iamVjdF9oZWFkZXIocyk7Ci0g ICAgICAgIG1wZWc0X2VuY29kZV92b2xfaGVhZGVyKHMsIDAsIDApOworICAgICAgICBtcGVnNF9l bmNvZGVfdm9sX2hlYWRlcihtNCwgMCwgMCk7CiAKIC8vICAgICAgICAgICAgZmZfbXBlZzRfc3R1 ZmZpbmcoJnMtPnBiKTsgPwogICAgICAgICBmbHVzaF9wdXRfYml0cygmcy0+cGIpOwpAQCAtMTM5 NSw3ICsxNDEzLDcgQEAgY29uc3QgRkZDb2RlYyBmZl9tcGVnNF9lbmNvZGVyID0gewogICAgIENP REVDX0xPTkdfTkFNRSgiTVBFRy00IHBhcnQgMiIpLAogICAgIC5wLnR5cGUgICAgICAgICA9IEFW TUVESUFfVFlQRV9WSURFTywKICAgICAucC5pZCAgICAgICAgICAgPSBBVl9DT0RFQ19JRF9NUEVH NCwKLSAgICAucHJpdl9kYXRhX3NpemUgPSBzaXplb2YoTVBWTWFpbkVuY0NvbnRleHQpLAorICAg IC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNcGVnNEVuY0NvbnRleHQpLAogICAgIC5pbml0ICAg ICAgICAgICA9IGVuY29kZV9pbml0LAogICAgIEZGX0NPREVDX0VOQ09ERV9DQihmZl9tcHZfZW5j b2RlX3BpY3R1cmUpLAogICAgIC5jbG9zZSAgICAgICAgICA9IGZmX21wdl9lbmNvZGVfZW5kLApk aWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWc0 dmlkZW9lbmMuaAppbmRleCBmMGQ1YzNkMDc3Li4xYzUzY2U0ZWRlIDEwMDY0NAotLS0gYS9saWJh dmNvZGVjL21wZWc0dmlkZW9lbmMuaAorKysgYi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaApA QCAtMjUsMTQgKzI1LDE0IEBACiAKICNpbmNsdWRlIDxzdGRpbnQuaD4KIAotI2luY2x1ZGUgIm1w ZWd2aWRlby5oIgorI2luY2x1ZGUgIm1wZWd2aWRlb2VuYy5oIgogI2luY2x1ZGUgInB1dF9iaXRz LmgiCiAKIHZvaWQgZmZfbXBlZzRfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLAogICAgICAg ICAgICAgICAgICAgICAgICAgaW50MTZfdCBibG9ja1s2XVs2NF0sCiAgICAgICAgICAgICAgICAg ICAgICAgICBpbnQgbW90aW9uX3gsIGludCBtb3Rpb25feSk7CiB2b2lkIGZmX3NldF9tcGVnNF90 aW1lKE1wZWdFbmNDb250ZXh0ICpzKTsKLWludCBmZl9tcGVnNF9lbmNvZGVfcGljdHVyZV9oZWFk ZXIoTXBlZ0VuY0NvbnRleHQgKnMpOworaW50IGZmX21wZWc0X2VuY29kZV9waWN0dXJlX2hlYWRl cihNUFZNYWluRW5jQ29udGV4dCAqbSk7CiAKIHZvaWQgZmZfbXBlZzRfZW5jb2RlX3ZpZGVvX3Bh Y2tldF9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpOwogdm9pZCBmZl9tcGVnNF9zdHVmZmluZyhQ dXRCaXRDb250ZXh0ICpwYmMpOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW8uaCBi L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKaW5kZXggMmNjNmRiZjUzNC4uYjUzMjA4ODczMCAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW8uaAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRl by5oCkBAIC0zNjIsOCArMzYyLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgewog ICAgIC8qIE1QRUctNCBzcGVjaWZpYyAqLwogICAgIGludCBzdHVkaW9fcHJvZmlsZTsKICAgICBp bnQgZGN0X3ByZWNpc2lvbjsKLSAgICAvLy8gbnVtYmVyIG9mIGJpdHMgdG8gcmVwcmVzZW50IHRo ZSBmcmFjdGlvbmFsIHBhcnQgb2YgdGltZSAoZW5jb2RlciBvbmx5KQotICAgIGludCB0aW1lX2lu Y3JlbWVudF9iaXRzOwogICAgIGludCBsYXN0X3RpbWVfYmFzZTsKICAgICBpbnQgdGltZV9iYXNl OyAgICAgICAgICAgICAgICAgIC8vLzwgdGltZSBpbiBzZWNvbmRzIG9mIGxhc3QgSSxQLFMgRnJh bWUKICAgICBpbnQ2NF90IHRpbWU7ICAgICAgICAgICAgICAgICAgIC8vLzwgdGltZSBvZiBjdXJy ZW50IGZyYW1lCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCmluZGV4IDJjYmE0ZGVjYTMuLmFiNjdmNTQ0NGQgMTAwNjQ0 Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jCkBAIC03NDYsNyArNzQ2LDYgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9p bml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAgICAgICAgICAgICgxIDw8IDE2KSAtIDEp OwogICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwogICAgIH0KLSAgICBzLT50aW1lX2lu Y3JlbWVudF9iaXRzID0gYXZfbG9nMihhdmN0eC0+dGltZV9iYXNlLmRlbiAtIDEpICsgMTsKIAog ICAgIHN3aXRjaCAoYXZjdHgtPmNvZGVjLT5pZCkgewogI2lmIENPTkZJR19NUEVHMVZJREVPX0VO Q09ERVIgfHwgQ09ORklHX01QRUcyVklERU9fRU5DT0RFUgpAQCAtMzkxOSw3ICszOTE4LDcgQEAg c3RhdGljIGludCBlbmNvZGVfcGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29u c3QgQVZQYWNrZXQgKnBrdCkKICAgICAgICAgICAgIGZmX21zbXBlZzRfZW5jb2RlX3BpY3R1cmVf aGVhZGVyKHMpOwogI2VuZGlmCiAgICAgICAgIGVsc2UgaWYgKENPTkZJR19NUEVHNF9FTkNPREVS ICYmIHMtPmgyNjNfcHJlZCkgewotICAgICAgICAgICAgcmV0ID0gZmZfbXBlZzRfZW5jb2RlX3Bp Y3R1cmVfaGVhZGVyKHMpOworICAgICAgICAgICAgcmV0ID0gZmZfbXBlZzRfZW5jb2RlX3BpY3R1 cmVfaGVhZGVyKG0pOwogICAgICAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgICAgICAg cmV0dXJuIHJldDsKICAgICAgICAgfSBlbHNlIGlmIChDT05GSUdfUlYxMF9FTkNPREVSICYmIHMt PmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1JWMTApIHsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0022-avcodec-mpegvideo_enc-Move-MPEG-4-specific-check-to-.patch" Content-Disposition: attachment; filename*0="0022-avcodec-mpegvideo_enc-Move-MPEG-4-specific-check-to-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2NTNlZjI1YzBkMzI4Y2M3MDUxNDRmMDYwMWRhODEyMzg5MTVlMTczIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAyIE1hciAyMDI1IDAyOjIwOjAzICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAyMi83N10gYXZjb2RlYy9tcGVndmlkZW9fZW5jOiBNb3ZlIE1QRUctNCBzcGVj aWZpYyBjaGVjayB0bwogbXBlZzR2aWRlb2VuYy5jCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJo ZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVj L21wZWc0dmlkZW9lbmMuYyB8ICA5ICsrKysrKysrKwogbGliYXZjb2RlYy9tcGVndmlkZW9fZW5j LmMgfCAxMCAtLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTAg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMgYi9s aWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYwppbmRleCAxOGY5N2JiODFkLi5jMjY1MzE2ZWQ2IDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYworKysgYi9saWJhdmNvZGVjL21w ZWc0dmlkZW9lbmMuYwpAQCAtMTMwNSw2ICsxMzA1LDE1IEBAIHN0YXRpYyBhdl9jb2xkIGludCBl bmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAKICAgICBmZl90aHJlYWRfb25jZSgm aW5pdF9zdGF0aWNfb25jZSwgbXBlZzRfZW5jb2RlX2luaXRfc3RhdGljKTsKIAorICAgIGlmIChh dmN0eC0+dGltZV9iYXNlLmRlbiA+ICgxIDw8IDE2KSAtIDEpIHsKKyAgICAgICAgYXZfbG9nKGF2 Y3R4LCBBVl9MT0dfRVJST1IsCisgICAgICAgICAgICAgICAidGltZWJhc2UgJWQvJWQgbm90IHN1 cHBvcnRlZCBieSBNUEVHIDQgc3RhbmRhcmQsICIKKyAgICAgICAgICAgICAgICJ0aGUgbWF4aW11 bSBhZG1pdHRlZCB2YWx1ZSBmb3IgdGhlIHRpbWViYXNlIGRlbm9taW5hdG9yICIKKyAgICAgICAg ICAgICAgICJpcyAlZFxuIiwgYXZjdHgtPnRpbWVfYmFzZS5udW0sIGF2Y3R4LT50aW1lX2Jhc2Uu ZGVuLAorICAgICAgICAgICAgICAgKDEgPDwgMTYpIC0gMSk7CisgICAgICAgIHJldHVybiBBVkVS Uk9SKEVJTlZBTCk7CisgICAgfQorCiAgICAgbTQtPnRpbWVfaW5jcmVtZW50X2JpdHMgICAgID0g YXZfbG9nMihhdmN0eC0+dGltZV9iYXNlLmRlbiAtIDEpICsgMTsKIAogICAgIHMtPmZjb2RlX3Rh YiAgICAgICAgICAgICAgICA9IGZjb2RlX3RhYiArIE1BWF9NVjsKZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXgg YWI2N2Y1NDQ0ZC4uMGE5YzE4ZmY3OSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9f ZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTczNywxNiArNzM3LDYg QEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkK IAogICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0RFQlVHLCAiaW50cmFfcXVhbnRfYmlhcyA9ICVk IGludGVyX3F1YW50X2JpYXMgPSAlZFxuIixzLT5pbnRyYV9xdWFudF9iaWFzLHMtPmludGVyX3F1 YW50X2JpYXMpOwogCi0gICAgaWYgKGF2Y3R4LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVH NCAmJgotICAgICAgICBhdmN0eC0+dGltZV9iYXNlLmRlbiA+ICgxIDw8IDE2KSAtIDEpIHsKLSAg ICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfRVJST1IsCi0gICAgICAgICAgICAgICAidGltZWJh c2UgJWQvJWQgbm90IHN1cHBvcnRlZCBieSBNUEVHIDQgc3RhbmRhcmQsICIKLSAgICAgICAgICAg ICAgICJ0aGUgbWF4aW11bSBhZG1pdHRlZCB2YWx1ZSBmb3IgdGhlIHRpbWViYXNlIGRlbm9taW5h dG9yICIKLSAgICAgICAgICAgICAgICJpcyAlZFxuIiwgYXZjdHgtPnRpbWVfYmFzZS5udW0sIGF2 Y3R4LT50aW1lX2Jhc2UuZGVuLAotICAgICAgICAgICAgICAgKDEgPDwgMTYpIC0gMSk7Ci0gICAg ICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7Ci0gICAgfQotCiAgICAgc3dpdGNoIChhdmN0eC0+ Y29kZWMtPmlkKSB7CiAjaWYgQ09ORklHX01QRUcxVklERU9fRU5DT0RFUiB8fCBDT05GSUdfTVBF RzJWSURFT19FTkNPREVSCiAgICAgY2FzZSBBVl9DT0RFQ19JRF9NUEVHMlZJREVPOgotLSAKMi40 NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0023-avcodec-mpegvideo-Move-sequence-level-properties-to-.patch" Content-Disposition: attachment; filename*0="0023-avcodec-mpegvideo-Move-sequence-level-properties-to-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA3N2FiMTU3ODAwM2E4ODU4N2M4M2VmOWQ4Y2M1MmNhODM3ZTYzMzdjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAyIE1hciAyMDI1IDAyOjU1OjA0ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAyMy83N10gYXZjb2RlYy9tcGVndmlkZW86IE1vdmUgc2VxdWVuY2UtbGV2ZWwg cHJvcGVydGllcyB0bwogTVBWTWFpbkVuY0NvbnRleHQKClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMg UmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29k ZWMvbXBlZzEyZW5jLmMgICAgIHwgMTQgKysrKy0tLQogbGliYXZjb2RlYy9tcGVnMTJlbmMuaCAg ICAgfCAgNCArLQogbGliYXZjb2RlYy9tcGVndmlkZW8uaCAgICAgfCAxNSAtLS0tLS0tCiBsaWJh dmNvZGVjL21wZWd2aWRlb19lbmMuYyB8IDg2ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0tLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oICB8IDE2ICsrKysrKysKIGxpYmF2 Y29kZWMvcmF0ZWNvbnRyb2wuYyAgIHwgIDQgKy0KIDYgZmlsZXMgY2hhbmdlZCwgNzEgaW5zZXJ0 aW9ucygrKSwgNjggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVnMTJl bmMuYyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKaW5kZXggZDg0ZDYyODU2My4uZWQyYzYzMDg2 ZiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnMTJlbmMuYworKysgYi9saWJhdmNvZGVjL21w ZWcxMmVuYy5jCkBAIC0xNDQsOSArMTQ0LDkgQEAgc3RhdGljIHZvaWQgcHV0X2hlYWRlcihNcGVn RW5jQ29udGV4dCAqcywgdWludDMyX3QgaGVhZGVyKQogfQogCiAvKiBwdXQgc2VxdWVuY2UgaGVh ZGVyIGlmIG5lZWRlZCAqLwotc3RhdGljIHZvaWQgbXBlZzFfZW5jb2RlX3NlcXVlbmNlX2hlYWRl cihNcGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyB2b2lkIG1wZWcxX2VuY29kZV9zZXF1ZW5jZV9o ZWFkZXIoTVBFRzEyRW5jQ29udGV4dCAqbXBlZzEyKQogewotICAgIE1QRUcxMkVuY0NvbnRleHQg KmNvbnN0IG1wZWcxMiA9IChNUEVHMTJFbmNDb250ZXh0KilzOworICAgIE1wZWdFbmNDb250ZXh0 ICpjb25zdCBzID0gJm1wZWcxMi0+bXBlZy5zOwogICAgIHVuc2lnbmVkIGludCB2YnZfYnVmZmVy X3NpemUsIGZwcywgdjsKICAgICBpbnQgY29uc3RyYWludF9wYXJhbWV0ZXJfZmxhZzsKICAgICBB VlJhdGlvbmFsIGZyYW1lcmF0ZSA9IGZmX21wZWcxMl9mcmFtZV9yYXRlX3RhYlttcGVnMTItPmZy YW1lX3JhdGVfaW5kZXhdOwpAQCAtMjk5LDcgKzI5OSw3IEBAIHN0YXRpYyB2b2lkIG1wZWcxX2Vu Y29kZV9zZXF1ZW5jZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgcHV0X2JpdHMoJnMt PnBiLCA2LCAodWludDMyX3QpKCh0aW1lX2NvZGUgLyBmcHMpICUgNjApKTsKICAgICBwdXRfYml0 cygmcy0+cGIsIDYsICh1aW50MzJfdCkoKHRpbWVfY29kZSAlIGZwcykpKTsKICAgICBwdXRfYml0 cygmcy0+cGIsIDEsICEhKHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfQ0xPU0VEX0dP UCkgfHwKLSAgICAgICAgICAgICAgICAgICAgICAgIHMtPmludHJhX29ubHkgfHwgIW1wZWcxMi0+ Z29wX3BpY3R1cmVfbnVtYmVyKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIG1wZWcxMi0+bXBl Zy5pbnRyYV9vbmx5IHx8ICFtcGVnMTItPmdvcF9waWN0dXJlX251bWJlcik7CiAgICAgcHV0X2Jp dHMoJnMtPnBiLCAxLCAwKTsgICAgICAgICAgICAgICAgICAgICAvLyBicm9rZW4gbGluawogfQog CkBAIC0zMzMsMTEgKzMzMywxMyBAQCB2b2lkIGZmX21wZWcxX2VuY29kZV9zbGljZV9oZWFkZXIo TXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCAwKTsKIH0KIAotdm9p ZCBmZl9tcGVnMV9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpCit2b2lk IGZmX21wZWcxX2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAqY29uc3Qg bSkKIHsKLSAgICBNUEVHMTJFbmNDb250ZXh0ICpjb25zdCBtcGVnMTIgPSAoTVBFRzEyRW5jQ29u dGV4dCopczsKKyAgICBNUEVHMTJFbmNDb250ZXh0ICpjb25zdCBtcGVnMTIgPSAoTVBFRzEyRW5j Q29udGV4dCopbTsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwogICAgIGNv bnN0IEFWRnJhbWVTaWRlRGF0YSAqc2lkZV9kYXRhOwotICAgIG1wZWcxX2VuY29kZV9zZXF1ZW5j ZV9oZWFkZXIocyk7CisKKyAgICBtcGVnMV9lbmNvZGVfc2VxdWVuY2VfaGVhZGVyKG1wZWcxMik7 CiAKICAgICAvKiBNUEVHLTEgcGljdHVyZSBoZWFkZXIgKi8KICAgICBwdXRfaGVhZGVyKHMsIFBJ Q1RVUkVfU1RBUlRfQ09ERSk7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWcxMmVuYy5oIGIv bGliYXZjb2RlYy9tcGVnMTJlbmMuaAppbmRleCA5MDg5NzE5MDVkLi5mYTE1MDQxNzdhIDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL21wZWcxMmVuYy5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5j LmgKQEAgLTI0LDEwICsyNCwxMCBAQAogCiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAKLSNpbmNsdWRl ICJtcGVndmlkZW8uaCIKKyNpbmNsdWRlICJtcGVndmlkZW9lbmMuaCIKICNpbmNsdWRlICJtcGVn dmlkZW9kYXRhLmgiCiAKLXZvaWQgZmZfbXBlZzFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdF bmNDb250ZXh0ICpzKTsKK3ZvaWQgZmZfbXBlZzFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1h aW5FbmNDb250ZXh0ICptKTsKIHZvaWQgZmZfbXBlZzFfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0 ICpzLCBpbnQxNl90IGJsb2NrWzhdWzY0XSwKICAgICAgICAgICAgICAgICAgICAgICAgIGludCBt b3Rpb25feCwgaW50IG1vdGlvbl95KTsKIHZvaWQgZmZfbXBlZzFfZW5jb2RlX3NsaWNlX2hlYWRl cihNcGVnRW5jQ29udGV4dCAqcyk7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5o IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCBiNTMyMDg4NzMwLi4zMjU5YzExMTdjIDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvLmgKQEAgLTkxLDggKzkxLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgewog ICAgIHZvaWQgKnByaXZhdGVfY3R4OwogICAgIC8qIHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVycyBt dXN0IGJlIGluaXRpYWxpemVkIGJlZm9yZSBlbmNvZGluZyAqLwogICAgIGludCB3aWR0aCwgaGVp Z2h0Oy8vLzwgcGljdHVyZSBzaXplLiBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgMTYKLSAgICBpbnQg Z29wX3NpemU7Ci0gICAgaW50IGludHJhX29ubHk7ICAgLy8vPCBpZiB0cnVlLCBvbmx5IGludHJh IHBpY3R1cmVzIGFyZSBnZW5lcmF0ZWQKICAgICBpbnQ2NF90IGJpdF9yYXRlOyAvLy88IHdhbnRl ZCBiaXQgcmF0ZQogICAgIGVudW0gT3V0cHV0Rm9ybWF0IG91dF9mb3JtYXQ7IC8vLzwgb3V0cHV0 IGZvcm1hdAogICAgIGludCBoMjYzX3ByZWQ7ICAgIC8vLzwgdXNlIE1QRUctNC9ILjI2MyBhYy9k YyBwcmVkaWN0aW9ucwpAQCAtMTE0LDEwICsxMTIsNyBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5j Q29udGV4dCB7CiAKICAgICAvKiBzZXF1ZW5jZSBwYXJhbWV0ZXJzICovCiAgICAgaW50IGNvbnRl eHRfaW5pdGlhbGl6ZWQ7Ci0gICAgaW50IGlucHV0X3BpY3R1cmVfbnVtYmVyOyAgLy8vPCB1c2Vk IHRvIHNldCBwaWMtPmRpc3BsYXlfcGljdHVyZV9udW1iZXIsIHNob3VsZCBub3QgYmUgdXNlZCBm b3IvYnkgYW55dGhpbmcgZWxzZQotICAgIGludCBjb2RlZF9waWN0dXJlX251bWJlcjsgIC8vLzwg dXNlZCB0byBzZXQgcGljLT5jb2RlZF9waWN0dXJlX251bWJlciwgc2hvdWxkIG5vdCBiZSB1c2Vk IGZvci9ieSBhbnl0aGluZyBlbHNlCiAgICAgaW50IHBpY3R1cmVfbnVtYmVyOyAgICAgICAvL0ZJ WE1FIHJlbW92ZSwgdW5jbGVhciBkZWZpbml0aW9uCi0gICAgaW50IHBpY3R1cmVfaW5fZ29wX251 bWJlcjsgLy8vPCAwLT4gZmlyc3QgcGljIGluIGdvcCwgLi4uCiAgICAgaW50IG1iX3dpZHRoLCBt Yl9oZWlnaHQ7ICAgLy8vPCBudW1iZXIgb2YgTUJzIGhvcml6b250YWxseSAmIHZlcnRpY2FsbHkK ICAgICBpbnQgbWJfc3RyaWRlOyAgICAgICAgICAgICAvLy88IG1iX3dpZHRoKzEgdXNlZCBmb3Ig c29tZSBhcnJheXMgdG8gYWxsb3cgc2ltcGxlIGFkZHJlc3Npbmcgb2YgbGVmdCAmIHRvcCBNQnMg d2l0aG91dCBzaWcxMQogICAgIGludCBiOF9zdHJpZGU7ICAgICAgICAgICAgIC8vLzwgMiptYl93 aWR0aCsxIHVzZWQgZm9yIHNvbWUgOHg4IGJsb2NrIGFycmF5cyB0byBhbGxvdyBzaW1wbGUgYWRk cmVzc2luZwpAQCAtMTMxLDE2ICsxMjYsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4 dCB7CiAKICAgICBCdWZmZXJQb29sQ29udGV4dCBidWZmZXJfcG9vbHM7CiAKLSAgICBpbnQ2NF90 IHVzZXJfc3BlY2lmaWVkX3B0czsgLy8vPCBsYXN0IG5vbi16ZXJvIHB0cyBmcm9tIEFWRnJhbWUg d2hpY2ggd2FzIHBhc3NlZCBpbnRvIGF2Y29kZWNfc2VuZF9mcmFtZSgpCi0gICAgLyoqCi0gICAg ICogcHRzIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgZmlyc3QgYW5kIHNlY29uZCBpbnB1dCBmcmFt ZSwgdXNlZCBmb3IKLSAgICAgKiBjYWxjdWxhdGluZyBkdHMgb2YgdGhlIGZpcnN0IGZyYW1lIHdo ZW4gdGhlcmUncyBhIGRlbGF5ICovCi0gICAgaW50NjRfdCBkdHNfZGVsdGE7Ci0gICAgLyoqCi0g ICAgICogcmVvcmRlcmVkIHB0cyB0byBiZSB1c2VkIGFzIGR0cyBmb3IgdGhlIG5leHQgb3V0cHV0 IGZyYW1lIHdoZW4gdGhlcmUncwotICAgICAqIGEgZGVsYXkgKi8KLSAgICBpbnQ2NF90IHJlb3Jk ZXJlZF9wdHM7Ci0KICAgICAvKiogYml0IG91dHB1dCAqLwogICAgIFB1dEJpdENvbnRleHQgcGI7 CiAKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9t cGVndmlkZW9fZW5jLmMKaW5kZXggMGE5YzE4ZmY3OS4uY2MzYzdhNzQ1ZiAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5j LmMKQEAgLTI5MSw5ICsyOTEsNiBAQCBzdGF0aWMgYXZfY29sZCB2b2lkIG1wdl9lbmNvZGVfZGVm YXVsdHMoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgICAgIHMtPnlfZGNfc2NhbGVfdGFibGUgPQog ICAgICAgICBzLT5jX2RjX3NjYWxlX3RhYmxlID0gZmZfbXBlZzFfZGNfc2NhbGVfdGFibGU7CiAg ICAgfQotCi0gICAgcy0+aW5wdXRfcGljdHVyZV9udW1iZXIgID0gMDsKLSAgICBzLT5waWN0dXJl X2luX2dvcF9udW1iZXIgPSAwOwogfQogCiBhdl9jb2xkIHZvaWQgZmZfZGN0X2VuY29kZV9pbml0 KE1wZWdFbmNDb250ZXh0ICpzKQpAQCAtMzU0LDkgKzM1MSwxMCBAQCBzdGF0aWMgYXZfY29sZCBp bnQgbWVfY21wX2luaXQoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIEFWQ29kZWNDb250ZXh0 ICphdmN0eAogfQogCiAjZGVmaW5lIEFMTE9DWl9BUlJBWVMocCwgbXVsdCwgbnVtYikgKChwKSA9 IGF2X2NhbGxvYyhudW1iLCBtdWx0ICogc2l6ZW9mKCoocCkpKSkKLXN0YXRpYyBhdl9jb2xkIGlu dCBpbml0X21hdHJpY2VzKE1wZWdFbmNDb250ZXh0ICpzLCBBVkNvZGVjQ29udGV4dCAqYXZjdHgp CitzdGF0aWMgYXZfY29sZCBpbnQgaW5pdF9tYXRyaWNlcyhNUFZNYWluRW5jQ29udGV4dCAqY29u c3QgbSwgQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogewotICAgIGNvbnN0IGludCBuYl9tYXRyaWNl cyA9IDEgKyAocy0+b3V0X2Zvcm1hdCA9PSBGTVRfTUpQRUcpICsgIXMtPmludHJhX29ubHk7Cisg ICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKKyAgICBjb25zdCBpbnQgbmJfbWF0 cmljZXMgPSAxICsgKHMtPm91dF9mb3JtYXQgPT0gRk1UX01KUEVHKSArICFtLT5pbnRyYV9vbmx5 OwogICAgIGNvbnN0IHVpbnQxNl90ICppbnRyYV9tYXRyaXgsICppbnRlcl9tYXRyaXg7CiAgICAg aW50IHJldDsKIApAQCAtMzY4LDE0ICszNjYsMTQgQEAgc3RhdGljIGF2X2NvbGQgaW50IGluaXRf bWF0cmljZXMoTXBlZ0VuY0NvbnRleHQgKnMsIEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAg ICAgcy0+cV9jaHJvbWFfaW50cmFfbWF0cml4ICAgPSBzLT5xX2ludHJhX21hdHJpeCAgICsgMzI7 CiAgICAgICAgIHMtPnFfY2hyb21hX2ludHJhX21hdHJpeDE2ID0gcy0+cV9pbnRyYV9tYXRyaXgx NiArIDMyOwogICAgICAgICAvLyBObyBuZWVkIHRvIHNldCBxX2ludGVyX21hdHJpeAotICAgICAg ICBhdl9hc3NlcnQxKHMtPmludHJhX29ubHkpOworICAgICAgICBhdl9hc3NlcnQxKG0tPmludHJh X29ubHkpOwogICAgICAgICAvLyBpbnRyYV9tYXRyaXgsIGNocm9tYV9pbnRyYV9tYXRyaXggd2ls bCBiZSBzZXQgbGF0ZXIgZm9yIE1KUEVHLgogICAgICAgICByZXR1cm4gMDsKICAgICB9IGVsc2Ug ewogICAgICAgICBzLT5xX2Nocm9tYV9pbnRyYV9tYXRyaXggICA9IHMtPnFfaW50cmFfbWF0cml4 OwogICAgICAgICBzLT5xX2Nocm9tYV9pbnRyYV9tYXRyaXgxNiA9IHMtPnFfaW50cmFfbWF0cml4 MTY7CiAgICAgfQotICAgIGlmICghcy0+aW50cmFfb25seSkgeworICAgIGlmICghbS0+aW50cmFf b25seSkgewogICAgICAgICBzLT5xX2ludGVyX21hdHJpeCAgID0gcy0+cV9pbnRyYV9tYXRyaXgg ICArIDMyOwogICAgICAgICBzLT5xX2ludGVyX21hdHJpeDE2ID0gcy0+cV9pbnRyYV9tYXRyaXgx NiArIDMyOwogICAgIH0KQEAgLTQ2MCw3ICs0NTgsNyBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5j b2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAgICAgICAgICAgYXZjdHgtPmdv cF9zaXplLCA2MDApOwogICAgICAgICBhdmN0eC0+Z29wX3NpemUgPSA2MDA7CiAgICAgfQotICAg IHMtPmdvcF9zaXplICAgICA9IGF2Y3R4LT5nb3Bfc2l6ZTsKKyAgICBtLT5nb3Bfc2l6ZSAgICAg PSBhdmN0eC0+Z29wX3NpemU7CiAgICAgcy0+YXZjdHggICAgICAgID0gYXZjdHg7CiAgICAgaWYg KGF2Y3R4LT5tYXhfYl9mcmFtZXMgPiBNUFZFTkNfTUFYX0JfRlJBTUVTKSB7CiAgICAgICAgIGF2 X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAiVG9vIG1hbnkgQi1mcmFtZXMgcmVxdWVzdGVkLCBt YXhpbXVtICIKQEAgLTQ5OSwxMyArNDk3LDEzIEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVf aW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9H X0VSUk9SLCAiaW50cmEgZGMgcHJlY2lzaW9uIHRvbyBsYXJnZVxuIik7CiAgICAgICAgIHJldHVy biBBVkVSUk9SKEVJTlZBTCk7CiAgICAgfQotICAgIHMtPnVzZXJfc3BlY2lmaWVkX3B0cyA9IEFW X05PUFRTX1ZBTFVFOworICAgIG0tPnVzZXJfc3BlY2lmaWVkX3B0cyA9IEFWX05PUFRTX1ZBTFVF OwogCi0gICAgaWYgKHMtPmdvcF9zaXplIDw9IDEpIHsKLSAgICAgICAgcy0+aW50cmFfb25seSA9 IDE7Ci0gICAgICAgIHMtPmdvcF9zaXplICAgPSAxMjsKKyAgICBpZiAobS0+Z29wX3NpemUgPD0g MSkgeworICAgICAgICBtLT5pbnRyYV9vbmx5ID0gMTsKKyAgICAgICAgbS0+Z29wX3NpemUgICA9 IDEyOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIHMtPmludHJhX29ubHkgPSAwOworICAgICAgICBt LT5pbnRyYV9vbmx5ID0gMDsKICAgICB9CiAKICAgICAvKiBGaXhlZCBRU0NBTEUgKi8KQEAgLTc1 MywxNCArNzUxLDE0IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29u dGV4dCAqYXZjdHgpCiAgICAgY2FzZSBBVl9DT0RFQ19JRF9NSlBFRzoKICAgICBjYXNlIEFWX0NP REVDX0lEX0FNVjoKICAgICAgICAgcy0+b3V0X2Zvcm1hdCA9IEZNVF9NSlBFRzsKLSAgICAgICAg cy0+aW50cmFfb25seSA9IDE7IC8qIGZvcmNlIGludHJhIG9ubHkgZm9yIGpwZWcgKi8KKyAgICAg ICAgbS0+aW50cmFfb25seSA9IDE7IC8qIGZvcmNlIGludHJhIG9ubHkgZm9yIGpwZWcgKi8KICAg ICAgICAgYXZjdHgtPmRlbGF5ID0gMDsKICAgICAgICAgcy0+bG93X2RlbGF5ID0gMTsKICAgICAg ICAgYnJlYWs7CiAjZW5kaWYKICAgICBjYXNlIEFWX0NPREVDX0lEX1NQRUVESFE6CiAgICAgICAg IHMtPm91dF9mb3JtYXQgPSBGTVRfU1BFRURIUTsKLSAgICAgICAgcy0+aW50cmFfb25seSA9IDE7 IC8qIGZvcmNlIGludHJhIG9ubHkgZm9yIFNIUSAqLworICAgICAgICBtLT5pbnRyYV9vbmx5ID0g MTsgLyogZm9yY2UgaW50cmEgb25seSBmb3IgU0hRICovCiAgICAgICAgIGF2Y3R4LT5kZWxheSA9 IDA7CiAgICAgICAgIHMtPmxvd19kZWxheSA9IDE7CiAgICAgICAgIGJyZWFrOwpAQCAtODg1LDcg Kzg4Myw3IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAq YXZjdHgpCiAgICAgICAgIHMtPmZyYW1lX3JlY29uc3RydWN0aW9uX2JpdGZpZWxkID0gKDEgPDwg QVZfUElDVFVSRV9UWVBFX0kpIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoMSA8PCBBVl9QSUNUVVJFX1RZUEVfUCkgfAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICgxIDw8IEFWX1BJQ1RVUkVfVFlQRV9CKTsKLSAgICB9IGVs c2UgaWYgKCFzLT5pbnRyYV9vbmx5KSB7CisgICAgfSBlbHNlIGlmICghbS0+aW50cmFfb25seSkg ewogICAgICAgICBzLT5mcmFtZV9yZWNvbnN0cnVjdGlvbl9iaXRmaWVsZCA9ICgxIDw8IEFWX1BJ Q1RVUkVfVFlQRV9JKSB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKDEgPDwgQVZfUElDVFVSRV9UWVBFX1ApOwogICAgIH0gZWxzZSB7CkBAIC05MTYsNyArOTE0 LDcgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0 eCkKICAgICAgICAgIShzLT5waWN0dXJlX3Bvb2wgPSBmZl9tcHZfYWxsb2NfcGljX3Bvb2woMCkp KQogICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogCi0gICAgcmV0ID0gaW5pdF9tYXRy aWNlcyhzLCBhdmN0eCk7CisgICAgcmV0ID0gaW5pdF9tYXRyaWNlcyhtLCBhdmN0eCk7CiAgICAg aWYgKHJldCA8IDApCiAgICAgICAgIHJldHVybiByZXQ7CiAKQEAgLTEyNTksMTEgKzEyNTcsMTEg QEAgc3RhdGljIGludCBsb2FkX2lucHV0X3BpY3R1cmUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0 IG0sIGNvbnN0IEFWRnJhbWUgKnBpY19hcmcKIAogICAgIGlmIChwaWNfYXJnKSB7CiAgICAgICAg IHB0cyA9IHBpY19hcmctPnB0czsKLSAgICAgICAgZGlzcGxheV9waWN0dXJlX251bWJlciA9IHMt PmlucHV0X3BpY3R1cmVfbnVtYmVyKys7CisgICAgICAgIGRpc3BsYXlfcGljdHVyZV9udW1iZXIg PSBtLT5pbnB1dF9waWN0dXJlX251bWJlcisrOwogCiAgICAgICAgIGlmIChwdHMgIT0gQVZfTk9Q VFNfVkFMVUUpIHsKLSAgICAgICAgICAgIGlmIChzLT51c2VyX3NwZWNpZmllZF9wdHMgIT0gQVZf Tk9QVFNfVkFMVUUpIHsKLSAgICAgICAgICAgICAgICBpbnQ2NF90IGxhc3QgPSBzLT51c2VyX3Nw ZWNpZmllZF9wdHM7CisgICAgICAgICAgICBpZiAobS0+dXNlcl9zcGVjaWZpZWRfcHRzICE9IEFW X05PUFRTX1ZBTFVFKSB7CisgICAgICAgICAgICAgICAgaW50NjRfdCBsYXN0ID0gbS0+dXNlcl9z cGVjaWZpZWRfcHRzOwogCiAgICAgICAgICAgICAgICAgaWYgKHB0cyA8PSBsYXN0KSB7CiAgICAg ICAgICAgICAgICAgICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0VSUk9SLApAQCAtMTI3Mywx MyArMTI3MSwxMyBAQCBzdGF0aWMgaW50IGxvYWRfaW5wdXRfcGljdHVyZShNUFZNYWluRW5jQ29u dGV4dCAqY29uc3QgbSwgY29uc3QgQVZGcmFtZSAqcGljX2FyZwogICAgICAgICAgICAgICAgIH0K IAogICAgICAgICAgICAgICAgIGlmICghcy0+bG93X2RlbGF5ICYmIGRpc3BsYXlfcGljdHVyZV9u dW1iZXIgPT0gMSkKLSAgICAgICAgICAgICAgICAgICAgcy0+ZHRzX2RlbHRhID0gcHRzIC0gbGFz dDsKKyAgICAgICAgICAgICAgICAgICAgbS0+ZHRzX2RlbHRhID0gcHRzIC0gbGFzdDsKICAgICAg ICAgICAgIH0KLSAgICAgICAgICAgIHMtPnVzZXJfc3BlY2lmaWVkX3B0cyA9IHB0czsKKyAgICAg ICAgICAgIG0tPnVzZXJfc3BlY2lmaWVkX3B0cyA9IHB0czsKICAgICAgICAgfSBlbHNlIHsKLSAg ICAgICAgICAgIGlmIChzLT51c2VyX3NwZWNpZmllZF9wdHMgIT0gQVZfTk9QVFNfVkFMVUUpIHsK LSAgICAgICAgICAgICAgICBzLT51c2VyX3NwZWNpZmllZF9wdHMgPQotICAgICAgICAgICAgICAg IHB0cyA9IHMtPnVzZXJfc3BlY2lmaWVkX3B0cyArIDE7CisgICAgICAgICAgICBpZiAobS0+dXNl cl9zcGVjaWZpZWRfcHRzICE9IEFWX05PUFRTX1ZBTFVFKSB7CisgICAgICAgICAgICAgICAgbS0+ dXNlcl9zcGVjaWZpZWRfcHRzID0KKyAgICAgICAgICAgICAgICBwdHMgPSBtLT51c2VyX3NwZWNp ZmllZF9wdHMgKyAxOwogICAgICAgICAgICAgICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0lO Rk8sCiAgICAgICAgICAgICAgICAgICAgICAgICJXYXJuaW5nOiBBVkZyYW1lLnB0cz0/IHRyeWlu ZyB0byBndWVzcyAoJSJQUklkNjQiKVxuIiwKICAgICAgICAgICAgICAgICAgICAgICAgcHRzKTsK QEAgLTE2MTIsNyArMTYxMCw3IEBAIHN0YXRpYyBpbnQgc2V0X2JmcmFtZV9jaGFpbl9sZW5ndGgo TVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAKICAgICAvKiBzZXQgbmV4dCBwaWN0dXJlIHR5 cGUgJiBvcmRlcmluZyAqLwogICAgIGlmIChtLT5mcmFtZV9za2lwX3RocmVzaG9sZCB8fCBtLT5m cmFtZV9za2lwX2ZhY3RvcikgewotICAgICAgICBpZiAocy0+cGljdHVyZV9pbl9nb3BfbnVtYmVy IDwgcy0+Z29wX3NpemUgJiYKKyAgICAgICAgaWYgKG0tPnBpY3R1cmVfaW5fZ29wX251bWJlciA8 IG0tPmdvcF9zaXplICYmCiAgICAgICAgICAgICBzLT5uZXh0X3BpYy5wdHIgJiYKICAgICAgICAg ICAgIHNraXBfY2hlY2sobSwgcy0+aW5wdXRfcGljdHVyZVswXSwgcy0+bmV4dF9waWMucHRyKSkg ewogICAgICAgICAgICAgLy8gRklYTUUgY2hlY2sgdGhhdCB0aGUgZ29wIGNoZWNrIGFib3ZlIGlz ICstMSBjb3JyZWN0CkBAIC0xNjI0LDEzICsxNjIyLDEzIEBAIHN0YXRpYyBpbnQgc2V0X2JmcmFt ZV9jaGFpbl9sZW5ndGgoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgICAgIH0KICAg ICB9CiAKLSAgICBpZiAoLypzLT5waWN0dXJlX2luX2dvcF9udW1iZXIgPj0gcy0+Z29wX3NpemUg fHwqLwotICAgICAgICAhcy0+bmV4dF9waWMucHRyIHx8IHMtPmludHJhX29ubHkpIHsKKyAgICBp ZiAoLyogbS0+cGljdHVyZV9pbl9nb3BfbnVtYmVyID49IG0tPmdvcF9zaXplIHx8ICovCisgICAg ICAgICFzLT5uZXh0X3BpYy5wdHIgfHwgbS0+aW50cmFfb25seSkgewogICAgICAgICBzLT5yZW9y ZGVyZWRfaW5wdXRfcGljdHVyZVswXSA9IHMtPmlucHV0X3BpY3R1cmVbMF07CiAgICAgICAgIHMt PmlucHV0X3BpY3R1cmVbMF0gPSBOVUxMOwogICAgICAgICBzLT5yZW9yZGVyZWRfaW5wdXRfcGlj dHVyZVswXS0+Zi0+cGljdF90eXBlID0gQVZfUElDVFVSRV9UWVBFX0k7CiAgICAgICAgIHMtPnJl b3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdLT5jb2RlZF9waWN0dXJlX251bWJlciA9Ci0gICAgICAg ICAgICBzLT5jb2RlZF9waWN0dXJlX251bWJlcisrOworICAgICAgICAgICAgbS0+Y29kZWRfcGlj dHVyZV9udW1iZXIrKzsKICAgICB9IGVsc2UgewogICAgICAgICBpbnQgYl9mcmFtZXMgPSAwOwog CkBAIC0xNzAwLDEwICsxNjk4LDEwIEBAIHN0YXRpYyBpbnQgc2V0X2JmcmFtZV9jaGFpbl9sZW5n dGgoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgICAgICAgICAgICAgICAgICJ3YXJu aW5nLCB0b28gbWFueSBCLWZyYW1lcyBpbiBhIHJvd1xuIik7CiAgICAgICAgIH0KIAotICAgICAg ICBpZiAocy0+cGljdHVyZV9pbl9nb3BfbnVtYmVyICsgYl9mcmFtZXMgPj0gcy0+Z29wX3NpemUp IHsKKyAgICAgICAgaWYgKG0tPnBpY3R1cmVfaW5fZ29wX251bWJlciArIGJfZnJhbWVzID49IG0t PmdvcF9zaXplKSB7CiAgICAgICAgICAgICBpZiAoKHMtPm1wdl9mbGFncyAmIEZGX01QVl9GTEFH X1NUUklDVF9HT1ApICYmCi0gICAgICAgICAgICAgICAgcy0+Z29wX3NpemUgPiBzLT5waWN0dXJl X2luX2dvcF9udW1iZXIpIHsKLSAgICAgICAgICAgICAgICBiX2ZyYW1lcyA9IHMtPmdvcF9zaXpl IC0gcy0+cGljdHVyZV9pbl9nb3BfbnVtYmVyIC0gMTsKKyAgICAgICAgICAgICAgICBtLT5nb3Bf c2l6ZSA+IG0tPnBpY3R1cmVfaW5fZ29wX251bWJlcikgeworICAgICAgICAgICAgICAgIGJfZnJh bWVzID0gbS0+Z29wX3NpemUgLSBtLT5waWN0dXJlX2luX2dvcF9udW1iZXIgLSAxOwogICAgICAg ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBpZiAocy0+YXZjdHgtPmZsYWdzICYgQVZf Q09ERUNfRkxBR19DTE9TRURfR09QKQogICAgICAgICAgICAgICAgICAgICBiX2ZyYW1lcyA9IDA7 CkBAIC0xNzIwLDE0ICsxNzE4LDE0IEBAIHN0YXRpYyBpbnQgc2V0X2JmcmFtZV9jaGFpbl9sZW5n dGgoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgICAgIGlmIChzLT5yZW9yZGVyZWRf aW5wdXRfcGljdHVyZVswXS0+Zi0+cGljdF90eXBlICE9IEFWX1BJQ1RVUkVfVFlQRV9JKQogICAg ICAgICAgICAgcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0tPmYtPnBpY3RfdHlwZSA9IEFW X1BJQ1RVUkVfVFlQRV9QOwogICAgICAgICBzLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+ Y29kZWRfcGljdHVyZV9udW1iZXIgPQotICAgICAgICAgICAgcy0+Y29kZWRfcGljdHVyZV9udW1i ZXIrKzsKKyAgICAgICAgICAgIG0tPmNvZGVkX3BpY3R1cmVfbnVtYmVyKys7CiAgICAgICAgIGZv ciAoaW50IGkgPSAwOyBpIDwgYl9mcmFtZXM7IGkrKykgewogICAgICAgICAgICAgcy0+cmVvcmRl cmVkX2lucHV0X3BpY3R1cmVbaSArIDFdID0gcy0+aW5wdXRfcGljdHVyZVtpXTsKICAgICAgICAg ICAgIHMtPmlucHV0X3BpY3R1cmVbaV0gICAgICAgICAgICAgICA9IE5VTEw7CiAgICAgICAgICAg ICBzLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVtpICsgMV0tPmYtPnBpY3RfdHlwZSA9CiAgICAg ICAgICAgICAgICAgQVZfUElDVFVSRV9UWVBFX0I7CiAgICAgICAgICAgICBzLT5yZW9yZGVyZWRf aW5wdXRfcGljdHVyZVtpICsgMV0tPmNvZGVkX3BpY3R1cmVfbnVtYmVyID0KLSAgICAgICAgICAg ICAgICBzLT5jb2RlZF9waWN0dXJlX251bWJlcisrOworICAgICAgICAgICAgICAgIG0tPmNvZGVk X3BpY3R1cmVfbnVtYmVyKys7CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTE3OTQsMTEgKzE3OTIs MTMgQEAgZmFpbDoKICAgICByZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgdm9pZCBmcmFtZV9lbmQo TXBlZ0VuY0NvbnRleHQgKnMpCitzdGF0aWMgdm9pZCBmcmFtZV9lbmQoTVBWTWFpbkVuY0NvbnRl eHQgKmNvbnN0IG0pCiB7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKKwog ICAgIGlmIChzLT51bnJlc3RyaWN0ZWRfbXYgJiYKICAgICAgICAgcy0+Y3VyX3BpYy5yZWZlcmVu Y2UgJiYKLSAgICAgICAgIXMtPmludHJhX29ubHkpIHsKKyAgICAgICAgIW0tPmludHJhX29ubHkp IHsKICAgICAgICAgaW50IGhzaGlmdCA9IHMtPmNocm9tYV94X3NoaWZ0OwogICAgICAgICBpbnQg dnNoaWZ0ID0gcy0+Y2hyb21hX3lfc2hpZnQ7CiAgICAgICAgIHMtPm1wdmVuY2RzcC5kcmF3X2Vk Z2VzKHMtPmN1cl9waWMuZGF0YVswXSwKQEAgLTE4NzgsNyArMTg3OCw3IEBAIGludCBmZl9tcHZf ZW5jb2RlX3BpY3R1cmUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVlBhY2tldCAqcGt0LAogCiAg ICAgcy0+dmJ2X2lnbm9yZV9xbWF4ID0gMDsKIAotICAgIHMtPnBpY3R1cmVfaW5fZ29wX251bWJl cisrOworICAgIG0tPnBpY3R1cmVfaW5fZ29wX251bWJlcisrOwogCiAgICAgcmV0ID0gbG9hZF9p bnB1dF9waWN0dXJlKG0sIHBpY19hcmcpOwogICAgIGlmIChyZXQgPCAwKQpAQCAtMTkyMyw3ICsx OTIzLDcgQEAgdmJ2X3JldHJ5OgogICAgICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgICAgIHJl dHVybiAtMTsKIAotICAgICAgICBmcmFtZV9lbmQocyk7CisgICAgICAgIGZyYW1lX2VuZChtKTsK IAogICAgICAgIGlmICgoQ09ORklHX01KUEVHX0VOQ09ERVIgfHwgQ09ORklHX0FNVl9FTkNPREVS KSAmJiBzLT5vdXRfZm9ybWF0ID09IEZNVF9NSlBFRykKICAgICAgICAgICAgIGZmX21qcGVnX2Vu Y29kZV9waWN0dXJlX3RyYWlsZXIoJnMtPnBiLCBzLT5oZWFkZXJfYml0cyk7CkBAIC0yMDY2LDEw ICsyMDY2LDEwIEBAIHZidl9yZXRyeToKICAgICAgICAgcGt0LT5kdXJhdGlvbiA9IHMtPmN1cl9w aWMucHRyLT5mLT5kdXJhdGlvbjsKICAgICAgICAgaWYgKCFzLT5sb3dfZGVsYXkgJiYgcy0+cGlj dF90eXBlICE9IEFWX1BJQ1RVUkVfVFlQRV9CKSB7CiAgICAgICAgICAgICBpZiAoIXMtPmN1cl9w aWMucHRyLT5jb2RlZF9waWN0dXJlX251bWJlcikKLSAgICAgICAgICAgICAgICBwa3QtPmR0cyA9 IHBrdC0+cHRzIC0gcy0+ZHRzX2RlbHRhOworICAgICAgICAgICAgICAgIHBrdC0+ZHRzID0gcGt0 LT5wdHMgLSBtLT5kdHNfZGVsdGE7CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAg cGt0LT5kdHMgPSBzLT5yZW9yZGVyZWRfcHRzOwotICAgICAgICAgICAgcy0+cmVvcmRlcmVkX3B0 cyA9IHBrdC0+cHRzOworICAgICAgICAgICAgICAgIHBrdC0+ZHRzID0gbS0+cmVvcmRlcmVkX3B0 czsKKyAgICAgICAgICAgIG0tPnJlb3JkZXJlZF9wdHMgPSBwa3QtPnB0czsKICAgICAgICAgfSBl bHNlCiAgICAgICAgICAgICBwa3QtPmR0cyA9IHBrdC0+cHRzOwogCkBAIC0zODgyLDcgKzM4ODIs NyBAQCBzdGF0aWMgaW50IGVuY29kZV9waWN0dXJlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBt LCBjb25zdCBBVlBhY2tldCAqcGt0KQogICAgIHMtPmN1cl9waWMucHRyLT5mLT5waWN0X3R5cGUg PSBzLT5waWN0X3R5cGU7CiAKICAgICBpZiAocy0+Y3VyX3BpYy5wdHItPmYtPmZsYWdzICYgQVZf RlJBTUVfRkxBR19LRVkpCi0gICAgICAgIHMtPnBpY3R1cmVfaW5fZ29wX251bWJlcj0wOworICAg ICAgICBtLT5waWN0dXJlX2luX2dvcF9udW1iZXIgPSAwOwogCiAgICAgcy0+bWJfeCA9IHMtPm1i X3kgPSAwOwogICAgIHMtPmxhc3RfYml0cz0gcHV0X2JpdHNfY291bnQoJnMtPnBiKTsKQEAgLTM5 MjUsNyArMzkyNSw3IEBAIHN0YXRpYyBpbnQgZW5jb2RlX3BpY3R1cmUoTVBWTWFpbkVuY0NvbnRl eHQgKmNvbnN0IG0sIGNvbnN0IEFWUGFja2V0ICpwa3QpCiAgICAgICAgIGJyZWFrOwogICAgIGNh c2UgRk1UX01QRUcxOgogICAgICAgICBpZiAoQ09ORklHX01QRUcxVklERU9fRU5DT0RFUiB8fCBD T05GSUdfTVBFRzJWSURFT19FTkNPREVSKQotICAgICAgICAgICAgZmZfbXBlZzFfZW5jb2RlX3Bp Y3R1cmVfaGVhZGVyKHMpOworICAgICAgICAgICAgZmZfbXBlZzFfZW5jb2RlX3BpY3R1cmVfaGVh ZGVyKG0pOwogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBhdl9hc3NlcnQw KDApOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCBiL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvZW5jLmgKaW5kZXggOWYwZDYzYzMxZS4uYTc2ZDE3ZjYzZSAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5o CkBAIC0zOSw2ICszOSwyMiBAQAogdHlwZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgewog ICAgIE1wZWdFbmNDb250ZXh0IHM7ICAvLy88IFRoZSBtYWluIHNsaWNlY29udGV4dAogCisgICAg aW50IGludHJhX29ubHk7ICAgICAgICAgICAgICAgIC8vLzwgaWYgdHJ1ZSwgb25seSBpbnRyYSBw aWN0dXJlcyBhcmUgZ2VuZXJhdGVkCisgICAgaW50IGdvcF9zaXplOworICAgIGludCBwaWN0dXJl X2luX2dvcF9udW1iZXI7ICAgICAvLy88IDAtPiBmaXJzdCBwaWMgaW4gZ29wLCAuLi4KKyAgICBp bnQgaW5wdXRfcGljdHVyZV9udW1iZXI7ICAgICAgLy8vPCB1c2VkIHRvIHNldCBwaWMtPmRpc3Bs YXlfcGljdHVyZV9udW1iZXIKKyAgICBpbnQgY29kZWRfcGljdHVyZV9udW1iZXI7ICAgICAgLy8v PCB1c2VkIHRvIHNldCBwaWMtPmNvZGVkX3BpY3R1cmVfbnVtYmVyCisKKyAgICBpbnQ2NF90IHVz ZXJfc3BlY2lmaWVkX3B0czsgICAgLy8vPCBsYXN0IG5vbi16ZXJvIHB0cyBmcm9tIHVzZXItc3Vw cGxpZWQgQVZGcmFtZQorICAgIC8qKgorICAgICAqIHB0cyBkaWZmZXJlbmNlIGJldHdlZW4gdGhl IGZpcnN0IGFuZCBzZWNvbmQgaW5wdXQgZnJhbWUsIHVzZWQgZm9yCisgICAgICogY2FsY3VsYXRp bmcgZHRzIG9mIHRoZSBmaXJzdCBmcmFtZSB3aGVuIHRoZXJlJ3MgYSBkZWxheSAqLworICAgIGlu dDY0X3QgZHRzX2RlbHRhOworICAgIC8qKgorICAgICAqIHJlb3JkZXJlZCBwdHMgdG8gYmUgdXNl ZCBhcyBkdHMgZm9yIHRoZSBuZXh0IG91dHB1dCBmcmFtZSB3aGVuIHRoZXJlJ3MKKyAgICAgKiBh IGRlbGF5ICovCisgICAgaW50NjRfdCByZW9yZGVyZWRfcHRzOworCiAgICAgLy8vIHRlbXBvcmFy eSBmcmFtZXMgdXNlZCBieSBiX2ZyYW1lX3N0cmF0ZWd5ID0gMgogICAgIEFWRnJhbWUgKnRtcF9m cmFtZXNbTVBWRU5DX01BWF9CX0ZSQU1FUyArIDJdOwogICAgIGludCBiX2ZyYW1lX3N0cmF0ZWd5 OwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9yYXRlY29udHJvbC5jIGIvbGliYXZjb2RlYy9yYXRl Y29udHJvbC5jCmluZGV4IGViYzNhMzBmYzEuLjRhYTM1OGE0ZTUgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvcmF0ZWNvbnRyb2wuYworKysgYi9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMKQEAgLTY2 MCw3ICs2NjAsNyBAQCBhdl9jb2xkIGludCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNUFZNYWluRW5j Q29udGV4dCAqY29uc3QgbSkKICAgICAgICAgICAgICAgICBkb3VibGUgYml0cyA9IHJjYy0+aW5p dGlhbF9jcGx4ICogKGkgLyAxMDAwMC4wICsgMS4wKSAqIHMtPm1iX251bTsKICAgICAgICAgICAg ICAgICBSYXRlQ29udHJvbEVudHJ5IHJjZTsKIAotICAgICAgICAgICAgICAgIGlmIChpICUgKChz LT5nb3Bfc2l6ZSArIDMpIC8gNCkgPT0gMCkKKyAgICAgICAgICAgICAgICBpZiAoaSAlICgobS0+ Z29wX3NpemUgKyAzKSAvIDQpID09IDApCiAgICAgICAgICAgICAgICAgICAgIHJjZS5waWN0X3R5 cGUgPSBBVl9QSUNUVVJFX1RZUEVfSTsKICAgICAgICAgICAgICAgICBlbHNlIGlmIChpICUgKHMt Pm1heF9iX2ZyYW1lcyArIDEpKQogICAgICAgICAgICAgICAgICAgICByY2UucGljdF90eXBlID0g QVZfUElDVFVSRV9UWVBFX0I7CkBAIC0xMDMzLDcgKzEwMzMsNyBAQCBmbG9hdCBmZl9yYXRlX2Vz dGltYXRlX3FzY2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IGRyeV9ydW4pCiAg ICAgICAgIGF2X2Fzc2VydDAocSA+IDAuMCk7CiAKICAgICAgICAgLy8gRklYTUUgdHlwZSBkZXBl bmRlbnQgYmx1ciBsaWtlIGluIDItcGFzcwotICAgICAgICBpZiAocGljdF90eXBlID09IEFWX1BJ Q1RVUkVfVFlQRV9QIHx8IHMtPmludHJhX29ubHkpIHsKKyAgICAgICAgaWYgKHBpY3RfdHlwZSA9 PSBBVl9QSUNUVVJFX1RZUEVfUCB8fCBtLT5pbnRyYV9vbmx5KSB7CiAgICAgICAgICAgICByY2Mt PnNob3J0X3Rlcm1fcXN1bSAgICo9IGEtPnFibHVyOwogICAgICAgICAgICAgcmNjLT5zaG9ydF90 ZXJtX3Fjb3VudCAqPSBhLT5xYmx1cjsKIAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0024-avcodec-mpegvideo-Move-ratecontrol-adjacent-fields-t.patch" Content-Disposition: attachment; filename*0="0024-avcodec-mpegvideo-Move-ratecontrol-adjacent-fields-t.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmMWVlNjRiOWUyYjgwMGZmNmU0ZjU4ZWZkMTYxYjlkM2E2YmNkZWZlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAyIE1hciAyMDI1IDA0OjAxOjI0ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAyNC83N10gYXZjb2RlYy9tcGVndmlkZW86IE1vdmUgcmF0ZWNvbnRyb2wtYWRq YWNlbnQgZmllbGRzIHRvCiBNUFZNYWluRW5jQ29udGV4dAoKU2lnbmVkLW9mZi1ieTogQW5kcmVh cyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZj b2RlYy9tcGVndmlkZW8uaCAgICAgfCAgNiAtLS0tLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2Vu Yy5jIHwgNDAgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KIGxpYmF2Y29k ZWMvbXBlZ3ZpZGVvZW5jLmggIHwgMTUgKysrKysrKysrKy0tLS0KIGxpYmF2Y29kZWMvcmF0ZWNv bnRyb2wuYyAgIHwgMTggKysrKysrKysrLS0tLS0tLS0KIGxpYmF2Y29kZWMvc25vd2VuYy5jICAg ICAgIHwgIDQgKystLQogNSBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCAzOSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5oIGIvbGliYXZjb2Rl Yy9tcGVndmlkZW8uaAppbmRleCAzMjU5YzExMTdjLi42YzcxZDliYzAxIDEwMDY0NAotLS0gYS9s aWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKQEAgLTEw MSw3ICsxMDEsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAgICAgaW50IGgy NjNfZmx2OyAgICAgLy8vPCB1c2UgZmx2IEguMjYzIGhlYWRlcgogCiAgICAgZW51bSBBVkNvZGVj SUQgY29kZWNfaWQ7ICAgICAvKiBzZWUgQVZfQ09ERUNfSURfeHh4ICovCi0gICAgaW50IGZpeGVk X3FzY2FsZTsgLy8vPCBmaXhlZCBxc2NhbGUgaWYgbm9uIHplcm8KICAgICBpbnQgZW5jb2Rpbmc7 ICAgICAvLy88IHRydWUgaWYgd2UgYXJlIGVuY29kaW5nICh2cyBkZWNvZGluZykKICAgICBpbnQg bWF4X2JfZnJhbWVzOyAvLy88IG1heCBudW1iZXIgb2YgQi1mcmFtZXMgZm9yIGVuY29kaW5nCiAg ICAgaW50IGx1bWFfZWxpbV90aHJlc2hvbGQ7CkBAIC00NzgsMTAgKzQ3Nyw2IEBAIHR5cGVkZWYg c3RydWN0IE1wZWdFbmNDb250ZXh0IHsKICAgICBtZV9jbXBfZnVuYyBzc2VfY21wWzJdOwogICAg IGludCAoKnN1bV9hYnNfZGN0ZWxlbSkoY29uc3QgaW50MTZfdCAqYmxvY2spOwogCi0gICAgZmxv YXQgYm9yZGVyX21hc2tpbmc7Ci0gICAgaW50IGxtaW4sIGxtYXg7Ci0gICAgaW50IHZidl9pZ25v cmVfcW1heDsKLQogICAgIC8vLyBCaXRmaWVsZCBjb250YWluaW5nIGluZm9ybWF0aW9uIHdoaWNo IGZyYW1lcyB0byByZWNvbnN0cnVjdC4KICAgICBpbnQgZnJhbWVfcmVjb25zdHJ1Y3Rpb25fYml0 ZmllbGQ7CiAKQEAgLTQ5Myw3ICs0ODgsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4 dCB7CiAKICAgICBpbnQgZXJyb3JfcmF0ZTsKIAotICAgIGludCBzY2VuZWNoYW5nZV90aHJlc2hv bGQ7CiAgICAgaW50IG5vaXNlX3JlZHVjdGlvbjsKIAogICAgIGludCBpbnRyYV9wZW5hbHR5Owpk aWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJhdmNvZGVjL21wZWd2 aWRlb19lbmMuYwppbmRleCBjYzNjN2E3NDVmLi4wNjMxNGRjNjAyIDEwMDY0NAotLS0gYS9saWJh dmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwpA QCAtMTk1LDggKzE5NSwxMCBAQCB2b2lkIGZmX2NvbnZlcnRfbWF0cml4KE1wZWdFbmNDb250ZXh0 ICpzLCBpbnQgKCpxbWF0KVs2NF0sCiAgICAgfQogfQogCi1zdGF0aWMgaW5saW5lIHZvaWQgdXBk YXRlX3FzY2FsZShNcGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyBpbmxpbmUgdm9pZCB1cGRhdGVf cXNjYWxlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogeworICAgIE1wZWdFbmNDb250ZXh0 ICpjb25zdCBzID0gJm0tPnM7CisKICAgICBpZiAocy0+cV9zY2FsZV90eXBlID09IDEgJiYgMCkg ewogICAgICAgICBpbnQgaTsKICAgICAgICAgaW50IGJlc3RkaWZmPUlOVF9NQVg7CkBAIC0yMDUs NyArMjA3LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHVwZGF0ZV9xc2NhbGUoTXBlZ0VuY0NvbnRl eHQgKnMpCiAgICAgICAgIGZvciAoaSA9IDAgOyBpPEZGX0FSUkFZX0VMRU1TKGZmX21wZWcyX25v bl9saW5lYXJfcXNjYWxlKTsgaSsrKSB7CiAgICAgICAgICAgICBpbnQgZGlmZiA9IEZGQUJTKChm Zl9tcGVnMl9ub25fbGluZWFyX3FzY2FsZVtpXTw8KEZGX0xBTUJEQV9TSElGVCArIDYpKSAtIChp bnQpcy0+bGFtYmRhICogMTM5KTsKICAgICAgICAgICAgIGlmIChmZl9tcGVnMl9ub25fbGluZWFy X3FzY2FsZVtpXSA8IHMtPmF2Y3R4LT5xbWluIHx8Ci0gICAgICAgICAgICAgICAgKGZmX21wZWcy X25vbl9saW5lYXJfcXNjYWxlW2ldID4gcy0+YXZjdHgtPnFtYXggJiYgIXMtPnZidl9pZ25vcmVf cW1heCkpCisgICAgICAgICAgICAgICAgKGZmX21wZWcyX25vbl9saW5lYXJfcXNjYWxlW2ldID4g cy0+YXZjdHgtPnFtYXggJiYgIW0tPnZidl9pZ25vcmVfcW1heCkpCiAgICAgICAgICAgICAgICAg Y29udGludWU7CiAgICAgICAgICAgICBpZiAoZGlmZiA8IGJlc3RkaWZmKSB7CiAgICAgICAgICAg ICAgICAgYmVzdGRpZmYgPSBkaWZmOwpAQCAtMjE2LDcgKzIxOCw3IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCB1cGRhdGVfcXNjYWxlKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIH0gZWxzZSB7CiAgICAg ICAgIHMtPnFzY2FsZSA9IChzLT5sYW1iZGEgKiAxMzkgKyBGRl9MQU1CREFfU0NBTEUgKiA2NCkg Pj4KICAgICAgICAgICAgICAgICAgICAgKEZGX0xBTUJEQV9TSElGVCArIDcpOwotICAgICAgICBz LT5xc2NhbGUgPSBhdl9jbGlwKHMtPnFzY2FsZSwgcy0+YXZjdHgtPnFtaW4sIHMtPnZidl9pZ25v cmVfcW1heCA/IDMxIDogcy0+YXZjdHgtPnFtYXgpOworICAgICAgICBzLT5xc2NhbGUgPSBhdl9j bGlwKHMtPnFzY2FsZSwgcy0+YXZjdHgtPnFtaW4sIG0tPnZidl9pZ25vcmVfcW1heCA/IDMxIDog cy0+YXZjdHgtPnFtYXgpOwogICAgIH0KIAogICAgIHMtPmxhbWJkYTIgPSAocy0+bGFtYmRhICog cy0+bGFtYmRhICsgRkZfTEFNQkRBX1NDQUxFIC8gMikgPj4KQEAgLTUwNywxNiArNTA5LDE2IEBA IGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAg ICAgfQogCiAgICAgLyogRml4ZWQgUVNDQUxFICovCi0gICAgcy0+Zml4ZWRfcXNjYWxlID0gISEo YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19RU0NBTEUpOworICAgIG0tPmZpeGVkX3FzY2Fs ZSA9ICEhKGF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfUVNDQUxFKTsKIAogICAgIHMtPmFk YXB0aXZlX3F1YW50ID0gKGF2Y3R4LT5sdW1pX21hc2tpbmcgfHwKICAgICAgICAgICAgICAgICAg ICAgICAgICBhdmN0eC0+ZGFya19tYXNraW5nIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAg YXZjdHgtPnRlbXBvcmFsX2NwbHhfbWFza2luZyB8fAogICAgICAgICAgICAgICAgICAgICAgICAg IGF2Y3R4LT5zcGF0aWFsX2NwbHhfbWFza2luZyAgfHwKICAgICAgICAgICAgICAgICAgICAgICAg ICBhdmN0eC0+cF9tYXNraW5nICAgICAgfHwKLSAgICAgICAgICAgICAgICAgICAgICAgICBzLT5i b3JkZXJfbWFza2luZyB8fAorICAgICAgICAgICAgICAgICAgICAgICAgIG0tPmJvcmRlcl9tYXNr aW5nIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgKHMtPm1wdl9mbGFncyAmIEZGX01QVl9G TEFHX1FQX1JEKSkgJiYKLSAgICAgICAgICAgICAgICAgICAgICAgICFzLT5maXhlZF9xc2NhbGU7 CisgICAgICAgICAgICAgICAgICAgICAgICAhbS0+Zml4ZWRfcXNjYWxlOwogCiAgICAgcy0+bG9v cF9maWx0ZXIgPSAhIShhdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX0xPT1BfRklMVEVSKTsK IApAQCAtNTgwLDcgKzU4Miw3IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNv ZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7CiAgICAg fQogCi0gICAgaWYgKCFzLT5maXhlZF9xc2NhbGUgJiYKKyAgICBpZiAoIW0tPmZpeGVkX3FzY2Fs ZSAmJgogICAgICAgICBhdmN0eC0+Yml0X3JhdGUgKiBhdl9xMmQoYXZjdHgtPnRpbWVfYmFzZSkg PgogICAgICAgICAgICAgYXZjdHgtPmJpdF9yYXRlX3RvbGVyYW5jZSkgewogICAgICAgICBkb3Vi bGUgbmJ0ID0gYXZjdHgtPmJpdF9yYXRlICogYXZfcTJkKGF2Y3R4LT50aW1lX2Jhc2UpICogNTsK QEAgLTY3NSw3ICs2NzcsNyBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2Rl Y0NvbnRleHQgKmF2Y3R4KQogICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwogICAgIH0K IAotICAgIGlmIChzLT5zY2VuZWNoYW5nZV90aHJlc2hvbGQgPCAxMDAwMDAwMDAwICYmCisgICAg aWYgKG0tPnNjZW5lY2hhbmdlX3RocmVzaG9sZCA8IDEwMDAwMDAwMDAgJiYKICAgICAgICAgKGF2 Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfQ0xPU0VEX0dPUCkpIHsKICAgICAgICAgYXZfbG9n KGF2Y3R4LCBBVl9MT0dfRVJST1IsCiAgICAgICAgICAgICAgICAiY2xvc2VkIGdvcCB3aXRoIHNj ZW5lIGNoYW5nZSBkZXRlY3Rpb24gYXJlIG5vdCBzdXBwb3J0ZWQgeWV0LCAiCkBAIC04OTAsOSAr ODkyLDkgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICph dmN0eCkKICAgICAgICAgcy0+ZnJhbWVfcmVjb25zdHJ1Y3Rpb25fYml0ZmllbGQgPSAwOwogICAg IH0KIAotICAgIGlmIChzLT5sbWluID4gcy0+bG1heCkgewotICAgICAgICBhdl9sb2coYXZjdHgs IEFWX0xPR19XQVJOSU5HLCAiQ2xpcHBpbmcgbG1pbiB2YWx1ZSB0byAlZFxuIiwgcy0+bG1heCk7 Ci0gICAgICAgIHMtPmxtaW4gPSBzLT5sbWF4OworICAgIGlmIChtLT5sbWluID4gbS0+bG1heCkg eworICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19XQVJOSU5HLCAiQ2xpcHBpbmcgbG1pbiB2 YWx1ZSB0byAlZFxuIiwgbS0+bG1heCk7CisgICAgICAgIG0tPmxtaW4gPSBtLT5sbWF4OwogICAg IH0KIAogICAgIC8qIGluaXQgKi8KQEAgLTE4NzYsNyArMTg3OCw3IEBAIGludCBmZl9tcHZfZW5j b2RlX3BpY3R1cmUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVlBhY2tldCAqcGt0LAogCiAgICAg ZmZfbXB2X3VucmVmX3BpY3R1cmUoJnMtPmN1cl9waWMpOwogCi0gICAgcy0+dmJ2X2lnbm9yZV9x bWF4ID0gMDsKKyAgICBtLT52YnZfaWdub3JlX3FtYXggPSAwOwogCiAgICAgbS0+cGljdHVyZV9p bl9nb3BfbnVtYmVyKys7CiAKQEAgLTE5MzUsNyArMTkzNyw3IEBAIHZidl9yZXRyeToKICAgICAg ICAgICAgIGludCBtaW5fc3RlcCA9IGhxID8gMSA6ICgxPDwoRkZfTEFNQkRBX1NISUZUICsgNykp LzEzOTsKIAogICAgICAgICAgICAgaWYgKHB1dF9iaXRzX2NvdW50KCZzLT5wYikgPiBtYXhfc2l6 ZSAmJgotICAgICAgICAgICAgICAgIHMtPmxhbWJkYSA8IHMtPmxtYXgpIHsKKyAgICAgICAgICAg ICAgICBzLT5sYW1iZGEgPCBtLT5sbWF4KSB7CiAgICAgICAgICAgICAgICAgbS0+bmV4dF9sYW1i ZGEgPSBGRk1BWChzLT5sYW1iZGEgKyBtaW5fc3RlcCwgcy0+bGFtYmRhICoKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzLT5xc2NhbGUgKyAxKSAvIHMtPnFzY2FsZSk7 CiAgICAgICAgICAgICAgICAgaWYgKHMtPmFkYXB0aXZlX3F1YW50KSB7CkBAIC0xOTU1LDcgKzE5 NTcsNyBAQCB2YnZfcmV0cnk6CiAgICAgICAgICAgICAgICAgICAgIHMtPnRpbWVfYmFzZSAgICAg ICA9IHMtPmxhc3RfdGltZV9iYXNlOwogICAgICAgICAgICAgICAgICAgICBzLT5sYXN0X25vbl9i X3RpbWUgPSBzLT50aW1lIC0gcy0+cHBfdGltZTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAg ICAgICAgICAgcy0+dmJ2X2lnbm9yZV9xbWF4ID0gMTsKKyAgICAgICAgICAgICAgICBtLT52YnZf aWdub3JlX3FtYXggPSAxOwogICAgICAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX1ZF UkJPU0UsICJyZWVuY29kaW5nIGZyYW1lIGR1ZSB0byBWQlZcbiIpOwogICAgICAgICAgICAgICAg IGdvdG8gdmJ2X3JldHJ5OwogICAgICAgICAgICAgfQpAQCAtMzYxNiw3ICszNjE4LDcgQEAgc3Rh dGljIGludCBlc3RpbWF0ZV9xcChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IGRyeV9y dW4pCiAgICAgaWYgKG0tPm5leHRfbGFtYmRhKXsKICAgICAgICAgcy0+Y3VyX3BpYy5wdHItPmYt PnF1YWxpdHkgPSBtLT5uZXh0X2xhbWJkYTsKICAgICAgICAgaWYoIWRyeV9ydW4pIG0tPm5leHRf bGFtYmRhPSAwOwotICAgIH0gZWxzZSBpZiAoIXMtPmZpeGVkX3FzY2FsZSkgeworICAgIH0gZWxz ZSBpZiAoIW0tPmZpeGVkX3FzY2FsZSkgewogICAgICAgICBpbnQgcXVhbGl0eSA9IGZmX3JhdGVf ZXN0aW1hdGVfcXNjYWxlKG0sIGRyeV9ydW4pOwogICAgICAgICBzLT5jdXJfcGljLnB0ci0+Zi0+ cXVhbGl0eSA9IHF1YWxpdHk7CiAgICAgICAgIGlmIChzLT5jdXJfcGljLnB0ci0+Zi0+cXVhbGl0 eSA8IDApCkBAIC0zNjQzLDcgKzM2NDUsNyBAQCBzdGF0aWMgaW50IGVzdGltYXRlX3FwKE1QVk1h aW5FbmNDb250ZXh0ICpjb25zdCBtLCBpbnQgZHJ5X3J1bikKICAgICAgICAgLy9GSVhNRSBicm9r ZW4KICAgICB9ZWxzZQogICAgICAgICBzLT5sYW1iZGEgPSBzLT5jdXJfcGljLnB0ci0+Zi0+cXVh bGl0eTsKLSAgICB1cGRhdGVfcXNjYWxlKHMpOworICAgIHVwZGF0ZV9xc2NhbGUobSk7CiAgICAg cmV0dXJuIDA7CiB9CiAKQEAgLTM3MDAsNyArMzcwMiw3IEBAIHN0YXRpYyBpbnQgZW5jb2RlX3Bp Y3R1cmUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIGNvbnN0IEFWUGFja2V0ICpwa3QpCiAg ICAgICAgICAgICBzLT5sYW1iZGE9IHMtPmxhc3RfbGFtYmRhX2ZvcltzLT5waWN0X3R5cGVdOwog ICAgICAgICBlbHNlCiAgICAgICAgICAgICBzLT5sYW1iZGE9IHMtPmxhc3RfbGFtYmRhX2Zvcltz LT5sYXN0X25vbl9iX3BpY3RfdHlwZV07Ci0gICAgICAgIHVwZGF0ZV9xc2NhbGUocyk7CisgICAg ICAgIHVwZGF0ZV9xc2NhbGUobSk7CiAgICAgfQogCiAgICAgZmZfbWVfaW5pdF9waWMocyk7CkBA IC0zNzQyLDcgKzM3NDQsNyBAQCBzdGF0aWMgaW50IGVuY29kZV9waWN0dXJlKE1QVk1haW5FbmND b250ZXh0ICpjb25zdCBtLCBjb25zdCBBVlBhY2tldCAqcGt0KQogICAgICAgICBmb3IoaT0wOyBp PHMtPm1iX3N0cmlkZSpzLT5tYl9oZWlnaHQ7IGkrKykKICAgICAgICAgICAgIHMtPm1iX3R5cGVb aV09IENBTkRJREFURV9NQl9UWVBFX0lOVFJBOwogCi0gICAgICAgIGlmKCFzLT5maXhlZF9xc2Nh bGUpeworICAgICAgICBpZiAoIW0tPmZpeGVkX3FzY2FsZSkgewogICAgICAgICAgICAgLyogZmlu ZGluZyBzcGF0aWFsIGNvbXBsZXhpdHkgZm9yIEktZnJhbWUgcmF0ZSBjb250cm9sICovCiAgICAg ICAgICAgICBzLT5hdmN0eC0+ZXhlY3V0ZShzLT5hdmN0eCwgbWJfdmFyX3RocmVhZCwgJnMtPnRo cmVhZF9jb250ZXh0WzBdLCBOVUxMLCBjb250ZXh0X2NvdW50LCBzaXplb2Yodm9pZCopKTsKICAg ICAgICAgfQpAQCAtMzc1NCw3ICszNzU2LDcgQEAgc3RhdGljIGludCBlbmNvZGVfcGljdHVyZShN UFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3QgQVZQYWNrZXQgKnBrdCkKICAgICBzLT5t Yl92YXJfc3VtICAgID0gcy0+bWUuICAgbWJfdmFyX3N1bV90ZW1wOwogICAgIGVtbXNfYygpOwog Ci0gICAgaWYgKHMtPm1lLnNjZW5lX2NoYW5nZV9zY29yZSA+IHMtPnNjZW5lY2hhbmdlX3RocmVz aG9sZCAmJgorICAgIGlmIChzLT5tZS5zY2VuZV9jaGFuZ2Vfc2NvcmUgPiBtLT5zY2VuZWNoYW5n ZV90aHJlc2hvbGQgJiYKICAgICAgICAgcy0+cGljdF90eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9Q KSB7CiAgICAgICAgIHMtPnBpY3RfdHlwZT0gQVZfUElDVFVSRV9UWVBFX0k7CiAgICAgICAgIGZv cihpPTA7IGk8cy0+bWJfc3RyaWRlKnMtPm1iX2hlaWdodDsgaSsrKQpkaWZmIC0tZ2l0IGEvbGli YXZjb2RlYy9tcGVndmlkZW9lbmMuaCBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKaW5kZXgg YTc2ZDE3ZjYzZS4uMWZiZTU1OTBkZiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9l bmMuaAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCkBAIC0zOSw2ICszOSw4IEBACiB0 eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAgICAgTXBlZ0VuY0NvbnRleHQgczsg IC8vLzwgVGhlIG1haW4gc2xpY2Vjb250ZXh0CiAKKyAgICBpbnQgc2NlbmVjaGFuZ2VfdGhyZXNo b2xkOworCiAgICAgaW50IGludHJhX29ubHk7ICAgICAgICAgICAgICAgIC8vLzwgaWYgdHJ1ZSwg b25seSBpbnRyYSBwaWN0dXJlcyBhcmUgZ2VuZXJhdGVkCiAgICAgaW50IGdvcF9zaXplOwogICAg IGludCBwaWN0dXJlX2luX2dvcF9udW1iZXI7ICAgICAvLy88IDAtPiBmaXJzdCBwaWMgaW4gZ29w LCAuLi4KQEAgLTYxLDYgKzYzLDEwIEBAIHR5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250ZXh0 IHsKICAgICBpbnQgYl9zZW5zaXRpdml0eTsKICAgICBpbnQgYnJkX3NjYWxlOwogCisgICAgZmxv YXQgYm9yZGVyX21hc2tpbmc7CisgICAgaW50IGxtaW4sIGxtYXg7CisgICAgaW50IHZidl9pZ25v cmVfcW1heDsKKwogICAgIC8qIGZyYW1lIHNraXAgb3B0aW9ucyAqLwogICAgIGludCBmcmFtZV9z a2lwX3RocmVzaG9sZDsKICAgICBpbnQgZnJhbWVfc2tpcF9mYWN0b3I7CkBAIC03Myw2ICs3OSw3 IEBAIHR5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250ZXh0IHsKICAgICBpbnQgZnJhbWVfYml0 czsgICAgICAgICAgICAgICAgLy8vPCBiaXRzIHVzZWQgZm9yIHRoZSBjdXJyZW50IGZyYW1lCiAg ICAgaW50IHN0dWZmaW5nX2JpdHM7ICAgICAgICAgICAgIC8vLzwgYml0cyB1c2VkIGZvciBzdHVm ZmluZwogICAgIGludCBuZXh0X2xhbWJkYTsgICAgICAgICAgICAgICAvLy88IG5leHQgbGFtYmRh IHVzZWQgZm9yIHJldHJ5aW5nIHRvIGVuY29kZSBhIGZyYW1lCisgICAgaW50IGZpeGVkX3FzY2Fs ZTsgICAgICAgICAgICAgIC8vLzwgZml4ZWQgcXNjYWxlIGlmIG5vbiB6ZXJvCiAgICAgUmF0ZUNv bnRyb2xDb250ZXh0IHJjX2NvbnRleHQ7IC8vLzwgY29udGFpbnMgc3R1ZmYgb25seSBhY2Nlc3Nl ZCBpbiByYXRlY29udHJvbC5jCiB9IE1QVk1haW5FbmNDb250ZXh0OwogCkBAIC0xNTQsMTQgKzE2 MSwxNCBAQCBGRl9NUFZfT1BUX0NNUF9GVU5DLCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZGX1JDX09GRlNFVChy Y19lcSksIEFWX09QVF9UWVBFX1NUUklORywgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmxh Z3MgPSBGRl9NUFZfT1BUX0ZMQUdTIH0sICAgICAgICAgICAgXAogeyJyY19pbml0X2NwbHgiLCAi aW5pdGlhbCBjb21wbGV4aXR5IGZvciAxLXBhc3MgZW5jb2RpbmciLCAgICAgICAgICBGRl9SQ19P RkZTRVQoaW5pdGlhbF9jcGx4KSwgQVZfT1BUX1RZUEVfRkxPQVQsIHsuZGJsID0gMCB9LCAtRkxU X01BWCwgRkxUX01BWCwgRkZfTVBWX09QVF9GTEFHU30sICAgICAgIFwKIHsicmNfYnVmX2FnZ3Jl c3Npdml0eSIsICJjdXJyZW50bHkgdXNlbGVzcyIsICAgICAgICAgICAgICAgICAgICAgICAgRkZf UkNfT0ZGU0VUKGJ1ZmZlcl9hZ2dyZXNzaXZpdHkpLCBBVl9PUFRfVFlQRV9GTE9BVCwgey5kYmwg PSAxLjAgfSwgLUZMVF9NQVgsIEZMVF9NQVgsIEZGX01QVl9PUFRfRkxBR1N9LCBcCi17ImJvcmRl cl9tYXNrIiwgImluY3JlYXNlIHRoZSBxdWFudGl6ZXIgZm9yIG1hY3JvYmxvY2tzIGNsb3NlIHRv IGJvcmRlcnMiLCBGRl9NUFZfT0ZGU0VUKGJvcmRlcl9tYXNraW5nKSwgQVZfT1BUX1RZUEVfRkxP QVQsIHsuZGJsID0gMCB9LCAtRkxUX01BWCwgRkxUX01BWCwgRkZfTVBWX09QVF9GTEFHU30sICAg IFwKLXsibG1pbiIsICJtaW5pbXVtIExhZ3JhbmdlIGZhY3RvciAoVkJSKSIsICAgICAgICAgICAg ICAgICAgICAgICAgICAgRkZfTVBWX09GRlNFVChsbWluKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2 NCA9ICAyKkZGX1FQMkxBTUJEQSB9LCAwLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTIH0sICAg ICAgICAgICAgXAoteyJsbWF4IiwgIm1heGltdW0gTGFncmFuZ2UgZmFjdG9yIChWQlIpIiwgICAg ICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfT0ZGU0VUKGxtYXgpLCBBVl9PUFRfVFlQRV9J TlQsIHsuaTY0ID0gMzEqRkZfUVAyTEFNQkRBIH0sIDAsIElOVF9NQVgsIEZGX01QVl9PUFRfRkxB R1MgfSwgICAgICAgICAgICBcCit7ImJvcmRlcl9tYXNrIiwgImluY3JlYXNlIHRoZSBxdWFudGl6 ZXIgZm9yIG1hY3JvYmxvY2tzIGNsb3NlIHRvIGJvcmRlcnMiLCBGRl9NUFZfTUFJTl9PRkZTRVQo Ym9yZGVyX21hc2tpbmcpLCBBVl9PUFRfVFlQRV9GTE9BVCwgey5kYmwgPSAwIH0sIC1GTFRfTUFY LCBGTFRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTfSwgICAgXAoreyJsbWluIiwgIm1pbmltdW0gTGFn cmFuZ2UgZmFjdG9yIChWQlIpIiwgICAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfTUFJ Tl9PRkZTRVQobG1pbiksIEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAgMipGRl9RUDJMQU1CREEg fSwgMCwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCAgICAgICAgICAgIFwKK3sibG1heCIs ICJtYXhpbXVtIExhZ3JhbmdlIGZhY3RvciAoVkJSKSIsICAgICAgICAgICAgICAgICAgICAgICAg ICAgRkZfTVBWX01BSU5fT0ZGU0VUKGxtYXgpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMzEq RkZfUVAyTEFNQkRBIH0sIDAsIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgICAgICAgICAg ICBcCiB7InNraXBfdGhyZXNob2xkIiwgIkZyYW1lIHNraXAgdGhyZXNob2xkIiwgICAgICAgICAg ICAgICAgICAgICAgICAgIEZGX01QVl9NQUlOX09GRlNFVChmcmFtZV9za2lwX3RocmVzaG9sZCks IEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9P UFRfRkxBR1MgfSwgXAogeyJza2lwX2ZhY3RvciIsICJGcmFtZSBza2lwIGZhY3RvciIsICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfTUFJTl9PRkZTRVQoZnJhbWVfc2tpcF9m YWN0b3IpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBG Rl9NUFZfT1BUX0ZMQUdTIH0sIFwKIHsic2tpcF9leHAiLCAiRnJhbWUgc2tpcCBleHBvbmVudCIs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRkZfTVBWX01BSU5fT0ZGU0VUKGZyYW1l X3NraXBfZXhwKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01B WCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCiB7InNraXBfY21wIiwgIkZyYW1lIHNraXAgY29tcGFy ZSBmdW5jdGlvbiIsICAgICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9NQUlOX09GRlNFVChm cmFtZV9za2lwX2NtcCksIEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSBGRl9DTVBfRENUTUFYIH0s IElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0gImNtcF9mdW5jIiB9 LCBcCi17InNjX3RocmVzaG9sZCIsICJTY2VuZSBjaGFuZ2UgdGhyZXNob2xkIiwgICAgICAgICAg ICAgICAgICAgICAgICAgIEZGX01QVl9PRkZTRVQoc2NlbmVjaGFuZ2VfdGhyZXNob2xkKSwgQVZf T1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9G TEFHUyB9LCBcCit7InNjX3RocmVzaG9sZCIsICJTY2VuZSBjaGFuZ2UgdGhyZXNob2xkIiwgICAg ICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9NQUlOX09GRlNFVChzY2VuZWNoYW5nZV90aHJl c2hvbGQpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBG Rl9NUFZfT1BUX0ZMQUdTIH0sIFwKIHsibm9pc2VfcmVkdWN0aW9uIiwgIk5vaXNlIHJlZHVjdGlv biIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRkZfTVBWX09GRlNFVChub2lzZV9yZWR1 Y3Rpb24pLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBG Rl9NUFZfT1BUX0ZMQUdTIH0sIFwKIHsicHMiLCAiUlRQIHBheWxvYWQgc2l6ZSBpbiBieXRlcyIs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfT0ZGU0VUKHJ0cF9wYXlsb2FkX3Np emUpLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBGRl9N UFZfT1BUX0ZMQUdTIH0sIFwKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9yYXRlY29udHJvbC5j IGIvbGliYXZjb2RlYy9yYXRlY29udHJvbC5jCmluZGV4IDRhYTM1OGE0ZTUuLmY0ZGY2N2FhYjAg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wuYworKysgYi9saWJhdmNvZGVjL3Jh dGVjb250cm9sLmMKQEAgLTE0MiwxMCArMTQyLDExIEBAIHN0YXRpYyBkb3VibGUgZ2V0X2RpZmZf bGltaXRlZF9xKE1QVk1haW5FbmNDb250ZXh0ICptLCBjb25zdCBSYXRlQ29udHJvbEVudHJ5ICpy CiAvKioKICAqIEdldCB0aGUgcW1pbiAmIHFtYXggZm9yIHBpY3RfdHlwZS4KICAqLwotc3RhdGlj IHZvaWQgZ2V0X3FtaW5tYXgoaW50ICpxbWluX3JldCwgaW50ICpxbWF4X3JldCwgTXBlZ0VuY0Nv bnRleHQgKnMsIGludCBwaWN0X3R5cGUpCitzdGF0aWMgdm9pZCBnZXRfcW1pbm1heChpbnQgKnFt aW5fcmV0LCBpbnQgKnFtYXhfcmV0LCBNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IHBp Y3RfdHlwZSkKIHsKLSAgICBpbnQgcW1pbiA9IHMtPmxtaW47Ci0gICAgaW50IHFtYXggPSBzLT5s bWF4OworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CisgICAgaW50IHFtaW4g PSBtLT5sbWluOworICAgIGludCBxbWF4ID0gbS0+bG1heDsKIAogICAgIGF2X2Fzc2VydDAocW1p biA8PSBxbWF4KTsKIApAQCAtMTgyLDcgKzE4Myw3IEBAIHN0YXRpYyBkb3VibGUgbW9kaWZ5X3Fz Y2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3QgUmF0ZUNvbnRyb2xFbnRyeSAq CiAgICAgY29uc3QgaW50IHBpY3RfdHlwZSAgICAgID0gcmNlLT5uZXdfcGljdF90eXBlOwogICAg IGludCBxbWluLCBxbWF4OwogCi0gICAgZ2V0X3FtaW5tYXgoJnFtaW4sICZxbWF4LCBzLCBwaWN0 X3R5cGUpOworICAgIGdldF9xbWlubWF4KCZxbWluLCAmcW1heCwgbSwgcGljdF90eXBlKTsKIAog ICAgIC8qIG1vZHVsYXRpb24gKi8KICAgICBpZiAocmNjLT5xbW9kX2ZyZXEgJiYKQEAgLTc4NCwx NSArNzg1LDE2IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9wcmVkaWN0b3IoUHJlZGljdG9yICpwLCBk b3VibGUgcSwgZG91YmxlIHZhciwgZG91YmxlIHNpemUpCiB9CiAKIHN0YXRpYyB2b2lkIGFkYXB0 aXZlX3F1YW50aXphdGlvbihSYXRlQ29udHJvbENvbnRleHQgKmNvbnN0IHJjYywKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcywgZG91Ymxl IHEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTVBWTWFpbkVuY0NvbnRleHQg KmNvbnN0IG0sIGRvdWJsZSBxKQogeworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0t PnM7CiAgICAgaW50IGk7CiAgICAgY29uc3QgZmxvYXQgbHVtaV9tYXNraW5nICAgICAgICAgPSBz LT5hdmN0eC0+bHVtaV9tYXNraW5nIC8gKDEyOC4wICogMTI4LjApOwogICAgIGNvbnN0IGZsb2F0 IGRhcmtfbWFza2luZyAgICAgICAgID0gcy0+YXZjdHgtPmRhcmtfbWFza2luZyAvICgxMjguMCAq IDEyOC4wKTsKICAgICBjb25zdCBmbG9hdCB0ZW1wX2NwbHhfbWFza2luZyAgICA9IHMtPmF2Y3R4 LT50ZW1wb3JhbF9jcGx4X21hc2tpbmc7CiAgICAgY29uc3QgZmxvYXQgc3BhdGlhbF9jcGx4X21h c2tpbmcgPSBzLT5hdmN0eC0+c3BhdGlhbF9jcGx4X21hc2tpbmc7CiAgICAgY29uc3QgZmxvYXQg cF9tYXNraW5nICAgICAgICAgICAgPSBzLT5hdmN0eC0+cF9tYXNraW5nOwotICAgIGNvbnN0IGZs b2F0IGJvcmRlcl9tYXNraW5nICAgICAgID0gcy0+Ym9yZGVyX21hc2tpbmc7CisgICAgY29uc3Qg ZmxvYXQgYm9yZGVyX21hc2tpbmcgICAgICAgPSBtLT5ib3JkZXJfbWFza2luZzsKICAgICBmbG9h dCBiaXRzX3N1bSAgICAgICAgICAgICAgICAgICA9IDAuMDsKICAgICBmbG9hdCBjcGx4X3N1bSAg ICAgICAgICAgICAgICAgICA9IDAuMDsKICAgICBmbG9hdCAqY3BseF90YWIgICAgICAgICAgICAg ICAgICA9IHJjYy0+Y3BseF90YWI7CkBAIC05MzIsNyArOTM0LDcgQEAgZmxvYXQgZmZfcmF0ZV9l c3RpbWF0ZV9xc2NhbGUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIGludCBkcnlfcnVuKQog ICAgIGNvbnN0IGludCBwaWN0X3R5cGUgPSBzLT5waWN0X3R5cGU7CiAgICAgZW1tc19jKCk7CiAK LSAgICBnZXRfcW1pbm1heCgmcW1pbiwgJnFtYXgsIHMsIHBpY3RfdHlwZSk7CisgICAgZ2V0X3Ft aW5tYXgoJnFtaW4sICZxbWF4LCBtLCBwaWN0X3R5cGUpOwogCiAgICAgZnBzID0gZ2V0X2Zwcyhz LT5hdmN0eCk7CiAgICAgLyogdXBkYXRlIHByZWRpY3RvcnMgKi8KQEAgLTEwNjgsNyArMTA3MCw3 IEBAIGZsb2F0IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKE1QVk1haW5FbmNDb250ZXh0ICpjb25z dCBtLCBpbnQgZHJ5X3J1bikKICAgICAgICAgcSA9IHFtYXg7CiAKICAgICBpZiAocy0+YWRhcHRp dmVfcXVhbnQpCi0gICAgICAgIGFkYXB0aXZlX3F1YW50aXphdGlvbihyY2MsIHMsIHEpOworICAg ICAgICBhZGFwdGl2ZV9xdWFudGl6YXRpb24ocmNjLCBtLCBxKTsKICAgICBlbHNlCiAgICAgICAg IHEgPSAoaW50KShxICsgMC41KTsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9zbm93ZW5jLmMg Yi9saWJhdmNvZGVjL3Nub3dlbmMuYwppbmRleCA4MzBmNmY1MDk2Li5kOTc0YTEyZjZiIDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL3Nub3dlbmMuYworKysgYi9saWJhdmNvZGVjL3Nub3dlbmMuYwpA QCAtMjI4LDggKzIyOCw4IEBAIHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVj Q29udGV4dCAqYXZjdHgpCiAKICAgICBtcHYtPmF2Y3R4ICAgPSBhdmN0eDsKICAgICBtcHYtPmJp dF9yYXRlPSBhdmN0eC0+Yml0X3JhdGU7Ci0gICAgbXB2LT5sbWluICAgID0gYXZjdHgtPm1iX2xt aW47Ci0gICAgbXB2LT5sbWF4ICAgID0gYXZjdHgtPm1iX2xtYXg7CisgICAgZW5jLT5tLmxtaW4g ID0gYXZjdHgtPm1iX2xtaW47CisgICAgZW5jLT5tLmxtYXggID0gYXZjdHgtPm1iX2xtYXg7CiAg ICAgbXB2LT5tYl9udW0gID0gKGF2Y3R4LT53aWR0aCAqIGF2Y3R4LT5oZWlnaHQgKyAyNTUpIC8g MjU2OyAvLyBGb3IgcmF0ZWNvbnRyb2wKIAogICAgIG1wdi0+bWUudGVtcCAgICAgID0KLS0gCjIu NDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0025-avcodec-mpegvideoenc-Disable-scenechange-threshold-o.patch" Content-Disposition: attachment; filename*0="0025-avcodec-mpegvideoenc-Disable-scenechange-threshold-o.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBiYmVhN2NhYTI0MzY4ZjA1NDNmOGJmZjkzOTU3NDFkMzQyMDFlODNiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNjoyOTozNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMjUvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvZW5jOiBEaXNhYmxlIHNjZW5lY2hh bmdlIHRocmVzaG9sZCBvcHQKIGZvciBNSlBFRywgQU1WCgpJdCBtYWtlcyBubyBzZW5zZSBmb3Ig dGhlbS4gQWxzbyBkbyB0aGUgc2FtZSBmb3IgdGhlIG12MCBmbGFnLgoKU2lnbmVkLW9mZi1ieTog QW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQog bGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5z ZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2 aWRlb2VuYy5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAppbmRleCAxZmJlNTU5MGRmLi4x N2JmNTA0NDNkIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCisrKyBiL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKQEAgLTE0Miw3ICsxNDIsNiBAQCBGRl9NUFZfT1BUX0NN UF9GVU5DLCBcCiB7ICJxcF9yZCIsICAgICAgICAgICJVc2UgcmF0ZSBkaXN0b3J0aW9uIG9wdGlt aXphdGlvbiBmb3IgcXAgc2VsZWN0aW9uIiwgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsgLmk2NCA9 IEZGX01QVl9GTEFHX1FQX1JEIH0sICAwLCAwLCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJt cHZfZmxhZ3MiIH0sXAogeyAiY2JwX3JkIiwgICAgICAgICAidXNlIHJhdGUgZGlzdG9ydGlvbiBv cHRpbWl6YXRpb24gZm9yIENCUCIsICAgICAgICAgIDAsIEFWX09QVF9UWVBFX0NPTlNULCB7IC5p NjQgPSBGRl9NUFZfRkxBR19DQlBfUkQgfSwgMCwgMCwgRkZfTVBWX09QVF9GTEFHUywgLnVuaXQg PSAibXB2X2ZsYWdzIiB9LFwKIHsgIm5hcSIsICAgICAgICAgICAgIm5vcm1hbGl6ZSBhZGFwdGl2 ZSBxdWFudGl6YXRpb24iLCAgICAgICAgICAgICAgICAgICAwLCBBVl9PUFRfVFlQRV9DT05TVCwg eyAuaTY0ID0gRkZfTVBWX0ZMQUdfTkFRIH0sICAgIDAsIDAsIEZGX01QVl9PUFRfRkxBR1MsIC51 bml0ID0gIm1wdl9mbGFncyIgfSxcCi17ICJtdjAiLCAgICAgICAgICAgICJhbHdheXMgdHJ5IGEg bWIgd2l0aCBtdj08MCwwPiIsICAgICAgICAgICAgICAgICAgICAgMCwgQVZfT1BUX1RZUEVfQ09O U1QsIHsgLmk2NCA9IEZGX01QVl9GTEFHX01WMCB9LCAgICAwLCAwLCBGRl9NUFZfT1BUX0ZMQUdT LCAudW5pdCA9ICJtcHZfZmxhZ3MiIH0sXAogeyAibHVtYV9lbGltX3RocmVzaG9sZCIsICAgInNp bmdsZSBjb2VmZmljaWVudCBlbGltaW5hdGlvbiB0aHJlc2hvbGQgZm9yIGx1bWluYW5jZSAobmVn YXRpdmUgdmFsdWVzIGFsc28gY29uc2lkZXIgZGMgY29lZmZpY2llbnQpIixcCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgRkZfTVBWX09GRlNFVChsdW1hX2VsaW1fdGhyZXNob2xkKSwgQVZfT1BUX1RZUEVfSU5ULCB7 IC5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSxcCiB7ICJj aHJvbWFfZWxpbV90aHJlc2hvbGQiLCAic2luZ2xlIGNvZWZmaWNpZW50IGVsaW1pbmF0aW9uIHRo cmVzaG9sZCBmb3IgY2hyb21pbmFuY2UgKG5lZ2F0aXZlIHZhbHVlcyBhbHNvIGNvbnNpZGVyIGRj IGNvZWZmaWNpZW50KSIsXApAQCAtMTY4LDcgKzE2Nyw2IEBAIEZGX01QVl9PUFRfQ01QX0ZVTkMs IFwKIHsic2tpcF9mYWN0b3IiLCAiRnJhbWUgc2tpcCBmYWN0b3IiLCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgRkZfTVBWX01BSU5fT0ZGU0VUKGZyYW1lX3NraXBfZmFjdG9yKSwgQVZf T1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9G TEFHUyB9LCBcCiB7InNraXBfZXhwIiwgIkZyYW1lIHNraXAgZXhwb25lbnQiLCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9NQUlOX09GRlNFVChmcmFtZV9za2lwX2V4cCks IEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9P UFRfRkxBR1MgfSwgXAogeyJza2lwX2NtcCIsICJGcmFtZSBza2lwIGNvbXBhcmUgZnVuY3Rpb24i LCAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfTUFJTl9PRkZTRVQoZnJhbWVfc2tpcF9j bXApLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gRkZfQ01QX0RDVE1BWCB9LCBJTlRfTUlOLCBJ TlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJjbXBfZnVuYyIgfSwgXAoteyJzY190 aHJlc2hvbGQiLCAiU2NlbmUgY2hhbmdlIHRocmVzaG9sZCIsICAgICAgICAgICAgICAgICAgICAg ICAgICBGRl9NUFZfTUFJTl9PRkZTRVQoc2NlbmVjaGFuZ2VfdGhyZXNob2xkKSwgQVZfT1BUX1RZ UEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9 LCBcCiB7Im5vaXNlX3JlZHVjdGlvbiIsICJOb2lzZSByZWR1Y3Rpb24iLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEZGX01QVl9PRkZTRVQobm9pc2VfcmVkdWN0aW9uKSwgQVZfT1BUX1RZ UEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9 LCBcCiB7InBzIiwgIlJUUCBwYXlsb2FkIHNpemUgaW4gYnl0ZXMiLCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgRkZfTVBWX09GRlNFVChydHBfcGF5bG9hZF9zaXplKSwgQVZfT1BUX1RZUEVf SU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBc CiAKQEAgLTE3OCw2ICsxNzYsNyBAQCBGRl9NUFZfT1BUX0NNUF9GVU5DLCBcCiB7ImJyZF9zY2Fs ZSIsICJEb3duc2NhbGUgZnJhbWVzIGZvciBkeW5hbWljIEItZnJhbWUgZGVjaXNpb24iLCBGRl9N UFZfTUFJTl9PRkZTRVQoYnJkX3NjYWxlKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwg MCwgMywgRkZfTVBWX09QVF9GTEFHUyB9LAogCiAjZGVmaW5lIEZGX01QVl9DT01NT05fTU9USU9O X0VTVF9PUFRTIFwKK3sgIm12MCIsICAgICAgICAgICAgImFsd2F5cyB0cnkgYSBtYiB3aXRoIG12 PTwwLDA+IiwgICAgICAgICAgICAgICAgICAgICAwLCBBVl9PUFRfVFlQRV9DT05TVCwgeyAuaTY0 ID0gRkZfTVBWX0ZMQUdfTVYwIH0sICAgIDAsIDAsIEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0g Im1wdl9mbGFncyIgfSxcCiB7Im1vdGlvbl9lc3QiLCAibW90aW9uIGVzdGltYXRpb24gYWxnb3Jp dGhtIiwgICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9PRkZTRVQobW90aW9uX2VzdCksIEFW X09QVF9UWVBFX0lOVCwgey5pNjQgPSBGRl9NRV9FUFpTIH0sIEZGX01FX1pFUk8sIEZGX01FX1hP TkUsIEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0gIm1vdGlvbl9lc3QiIH0sICAgXAogeyAiemVy byIsIE5VTEwsIDAsIEFWX09QVF9UWVBFX0NPTlNULCB7IC5pNjQgPSBGRl9NRV9aRVJPIH0sIDAs IDAsIEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0gIm1vdGlvbl9lc3QiIH0sIFwKIHsgImVwenMi LCBOVUxMLCAwLCBBVl9PUFRfVFlQRV9DT05TVCwgeyAuaTY0ID0gRkZfTUVfRVBaUyB9LCAwLCAw LCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJtb3Rpb25fZXN0IiB9LCBcCkBAIC0xODUsNiAr MTg0LDcgQEAgRkZfTVBWX09QVF9DTVBfRlVOQywgXAogeyJtZXBjIiwgIk1vdGlvbiBlc3RpbWF0 aW9uIGJpdHJhdGUgcGVuYWx0eSBjb21wZW5zYXRpb24gKDEuMCA9IDI1NikiLCBGRl9NUFZfT0ZG U0VUKG1lX3BlbmFsdHlfY29tcGVuc2F0aW9uKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDI1 NiB9LCBJTlRfTUlOLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTIH0sIFwKIHsibWVwcmUiLCAi cHJlIG1vdGlvbiBlc3RpbWF0aW9uIiwgRkZfTVBWX09GRlNFVChtZV9wcmUpLCBBVl9PUFRfVFlQ RV9JTlQsIHsuaTY0ID0gMCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTIH0s IFwKIHsiaW50cmFfcGVuYWx0eSIsICJQZW5hbHR5IGZvciBpbnRyYSBibG9ja3MgaW4gYmxvY2sg ZGVjaXNpb24iLCBGRl9NUFZfT0ZGU0VUKGludHJhX3BlbmFsdHkpLCBBVl9PUFRfVFlQRV9JTlQs IHsuaTY0ID0gMCB9LCAwLCBJTlRfTUFYLzIsIEZGX01QVl9PUFRfRkxBR1MgfSwgXAoreyJzY190 aHJlc2hvbGQiLCAiU2NlbmUgY2hhbmdlIHRocmVzaG9sZCIsICAgICAgICAgICAgICAgICAgICAg ICAgICBGRl9NUFZfTUFJTl9PRkZTRVQoc2NlbmVjaGFuZ2VfdGhyZXNob2xkKSwgQVZfT1BUX1RZ UEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9 LCBcCiAKIGV4dGVybiBjb25zdCBBVkNsYXNzIGZmX21wdl9lbmNfY2xhc3M7CiAKLS0gCjIuNDUu MgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0026-avcodec-mpegvideo-Move-macroblock-variance-stats-to-.patch" Content-Disposition: attachment; filename*0="0026-avcodec-mpegvideo-Move-macroblock-variance-stats-to-.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5MjJlNTM3ODFiNDQyYWRkMjFhMzgxZGE3ZWY3MTNlNzJjYThhZGI4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAxMyBPY3QgMjAyMiAwMjoxNTo0NiArMDIwMApTdWJq ZWN0OiBbUEFUQ0ggMjYvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIG1hY3JvYmxvY2stdmFy aWFuY2Ugc3RhdHMgdG8KIE1QVk1haW5FbmNDb250ZXh0CgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFz IFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNv ZGVjL21wZWd2aWRlby5oICAgICB8ICAyIC0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyB8 ICA2ICsrKy0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAgfCAgMyArKysKIGxpYmF2Y29k ZWMvcmF0ZWNvbnRyb2wuYyAgIHwgMTYgKysrKysrKystLS0tLS0tLQogbGliYXZjb2RlYy9zbm93 ZW5jLmMgICAgICAgfCAgOCArKysrLS0tLQogNSBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25z KCspLCAxNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5o IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCA2YzcxZDliYzAxLi5iZGQzMTk2MDYwIDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvLmgKQEAgLTIzMCw4ICsyMzAsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7 CiAgICAgdWludDE2X3QgKm1iX3ZhcjsgICAgICAgICAgIC8vLzwgVGFibGUgZm9yIE1CIHZhcmlh bmNlcwogICAgIHVpbnQxNl90ICptY19tYl92YXI7ICAgICAgICAvLy88IFRhYmxlIGZvciBtb3Rp b24gY29tcGVuc2F0ZWQgTUIgdmFyaWFuY2VzCiAgICAgdWludDhfdCAqbWJfbWVhbjsgICAgICAg ICAgIC8vLzwgVGFibGUgZm9yIE1CIGx1bWluYW5jZQotICAgIGludDY0X3QgbWJfdmFyX3N1bTsg ICAgICAgICAvLy88IHN1bSBvZiBNQiB2YXJpYW5jZSBmb3IgY3VycmVudCBmcmFtZQotICAgIGlu dDY0X3QgbWNfbWJfdmFyX3N1bTsgICAgICAvLy88IG1vdGlvbiBjb21wZW5zYXRlZCBNQiB2YXJp YW5jZSBmb3IgY3VycmVudCBmcmFtZQogICAgIHVpbnQ2NF90IGVuY29kaW5nX2Vycm9yW01QVl9N QVhfUExBTkVTXTsKIAogICAgIGludCBtb3Rpb25fZXN0OyAgICAgICAgICAgICAgICAgICAgICAv Ly88IE1FIGFsZ29yaXRobQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMg Yi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwppbmRleCAwNjMxNGRjNjAyLi40NGJhZDllYjUy IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVj L21wZWd2aWRlb19lbmMuYwpAQCAtMzc1Miw4ICszNzUyLDggQEAgc3RhdGljIGludCBlbmNvZGVf cGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3QgQVZQYWNrZXQgKnBrdCkK ICAgICBmb3IoaT0xOyBpPGNvbnRleHRfY291bnQ7IGkrKyl7CiAgICAgICAgIG1lcmdlX2NvbnRl eHRfYWZ0ZXJfbWUocywgcy0+dGhyZWFkX2NvbnRleHRbaV0pOwogICAgIH0KLSAgICBzLT5tY19t Yl92YXJfc3VtID0gcy0+bWUubWNfbWJfdmFyX3N1bV90ZW1wOwotICAgIHMtPm1iX3Zhcl9zdW0g ICAgPSBzLT5tZS4gICBtYl92YXJfc3VtX3RlbXA7CisgICAgbS0+bWNfbWJfdmFyX3N1bSA9IHMt Pm1lLm1jX21iX3Zhcl9zdW1fdGVtcDsKKyAgICBtLT5tYl92YXJfc3VtICAgID0gcy0+bWUuICAg bWJfdmFyX3N1bV90ZW1wOwogICAgIGVtbXNfYygpOwogCiAgICAgaWYgKHMtPm1lLnNjZW5lX2No YW5nZV9zY29yZSA+IG0tPnNjZW5lY2hhbmdlX3RocmVzaG9sZCAmJgpAQCAtMzc2NCw3ICszNzY0 LDcgQEAgc3RhdGljIGludCBlbmNvZGVfcGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3Qg bSwgY29uc3QgQVZQYWNrZXQgKnBrdCkKICAgICAgICAgaWYgKHMtPm1zbXBlZzRfdmVyc2lvbiA+ PSBNU01QNF9WMykKICAgICAgICAgICAgIHMtPm5vX3JvdW5kaW5nPTE7CiAgICAgICAgIGZmX2Rs b2cocy0+YXZjdHgsICJTY2VuZSBjaGFuZ2UgZGV0ZWN0ZWQsIGVuY29kaW5nIGFzIEkgRnJhbWUg JSJQUklkNjQiICUiUFJJZDY0IlxuIiwKLSAgICAgICAgICAgICAgICBzLT5tYl92YXJfc3VtLCBz LT5tY19tYl92YXJfc3VtKTsKKyAgICAgICAgICAgICAgICBtLT5tYl92YXJfc3VtLCBtLT5tY19t Yl92YXJfc3VtKTsKICAgICB9CiAKICAgICBpZighcy0+dW12cGx1cyl7CmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAppbmRl eCAxN2JmNTA0NDNkLi4yODNmYThmNzA1IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRl b2VuYy5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKQEAgLTgxLDYgKzgxLDkgQEAg dHlwZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgewogICAgIGludCBuZXh0X2xhbWJkYTsg ICAgICAgICAgICAgICAvLy88IG5leHQgbGFtYmRhIHVzZWQgZm9yIHJldHJ5aW5nIHRvIGVuY29k ZSBhIGZyYW1lCiAgICAgaW50IGZpeGVkX3FzY2FsZTsgICAgICAgICAgICAgIC8vLzwgZml4ZWQg cXNjYWxlIGlmIG5vbiB6ZXJvCiAgICAgUmF0ZUNvbnRyb2xDb250ZXh0IHJjX2NvbnRleHQ7IC8v LzwgY29udGFpbnMgc3R1ZmYgb25seSBhY2Nlc3NlZCBpbiByYXRlY29udHJvbC5jCisKKyAgICBp bnQ2NF90IG1iX3Zhcl9zdW07ICAgICAgICAgICAgLy8vPCBzdW0gb2YgTUIgdmFyaWFuY2UgZm9y IGN1cnJlbnQgZnJhbWUKKyAgICBpbnQ2NF90IG1jX21iX3Zhcl9zdW07ICAgICAgICAgLy8vPCBt b3Rpb24gY29tcGVuc2F0ZWQgTUIgdmFyaWFuY2UgZm9yIGN1cnJlbnQgZnJhbWUKIH0gTVBWTWFp bkVuY0NvbnRleHQ7CiAKICNkZWZpbmUgTUFYX0ZDT0RFICAgICAgICA3CmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL3JhdGVjb250cm9sLmMgYi9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMKaW5kZXgg ZjRkZjY3YWFiMC4uOWM1ZDM0ZGZkZSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9yYXRlY29udHJv bC5jCisrKyBiL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wuYwpAQCAtNTEsOCArNTEsOCBAQCB2b2lk IGZmX3dyaXRlX3Bhc3MxX3N0YXRzKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAg ICAgICAgIHMtPm1pc2NfYml0cywKICAgICAgICAgICAgICBzLT5mX2NvZGUsCiAgICAgICAgICAg ICAgcy0+Yl9jb2RlLAotICAgICAgICAgICAgIHMtPm1jX21iX3Zhcl9zdW0sCi0gICAgICAgICAg ICAgcy0+bWJfdmFyX3N1bSwKKyAgICAgICAgICAgICBtLT5tY19tYl92YXJfc3VtLAorICAgICAg ICAgICAgIG0tPm1iX3Zhcl9zdW0sCiAgICAgICAgICAgICAgcy0+aV9jb3VudCwKICAgICAgICAg ICAgICBzLT5oZWFkZXJfYml0cyk7CiB9CkBAIC05ODYsNyArOTg2LDcgQEAgZmxvYXQgZmZfcmF0 ZV9lc3RpbWF0ZV9xc2NhbGUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIGludCBkcnlfcnVu KQogICAgIGlmIChicl9jb21wZW5zYXRpb24gPD0gMC4wKQogICAgICAgICBicl9jb21wZW5zYXRp b24gPSAwLjAwMTsKIAotICAgIHZhciA9IHBpY3RfdHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfSSA/ IHMtPm1iX3Zhcl9zdW0gOiBzLT5tY19tYl92YXJfc3VtOworICAgIHZhciA9IHBpY3RfdHlwZSA9 PSBBVl9QSUNUVVJFX1RZUEVfSSA/IG0tPm1iX3Zhcl9zdW0gOiBtLT5tY19tYl92YXJfc3VtOwog CiAgICAgc2hvcnRfdGVybV9xID0gMDsgLyogYXZvaWQgd2FybmluZyAqLwogICAgIGlmIChzLT5h dmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX1BBU1MyKSB7CkBAIC05OTksOCArOTk5LDggQEAg ZmxvYXQgZmZfcmF0ZV9lc3RpbWF0ZV9xc2NhbGUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0s IGludCBkcnlfcnVuKQogICAgIH0gZWxzZSB7CiAgICAgICAgIHJjZS0+cGljdF90eXBlICAgICA9 CiAgICAgICAgIHJjZS0+bmV3X3BpY3RfdHlwZSA9IHBpY3RfdHlwZTsKLSAgICAgICAgcmNlLT5t Y19tYl92YXJfc3VtID0gcy0+bWNfbWJfdmFyX3N1bTsKLSAgICAgICAgcmNlLT5tYl92YXJfc3Vt ICAgID0gcy0+bWJfdmFyX3N1bTsKKyAgICAgICAgcmNlLT5tY19tYl92YXJfc3VtID0gbS0+bWNf bWJfdmFyX3N1bTsKKyAgICAgICAgcmNlLT5tYl92YXJfc3VtICAgID0gbS0+bWJfdmFyX3N1bTsK ICAgICAgICAgcmNlLT5xc2NhbGUgICAgICAgID0gRkZfUVAyTEFNQkRBICogMjsKICAgICAgICAg cmNlLT5mX2NvZGUgICAgICAgID0gcy0+Zl9jb2RlOwogICAgICAgICByY2UtPmJfY29kZSAgICAg ICAgPSBzLT5iX2NvZGU7CkBAIC0xMDYwLDcgKzEwNjAsNyBAQCBmbG9hdCBmZl9yYXRlX2VzdGlt YXRlX3FzY2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IGRyeV9ydW4pCiAgICAg ICAgICAgICAgICBxbWluLCBxLCBxbWF4LCBwaWN0dXJlX251bWJlciwKICAgICAgICAgICAgICAg IHdhbnRlZF9iaXRzIC8gMTAwMCwgbS0+dG90YWxfYml0cyAvIDEwMDAsCiAgICAgICAgICAgICAg ICBicl9jb21wZW5zYXRpb24sIHNob3J0X3Rlcm1fcSwgbS0+ZnJhbWVfYml0cywKLSAgICAgICAg ICAgICAgIHMtPm1iX3Zhcl9zdW0sIHMtPm1jX21iX3Zhcl9zdW0sCisgICAgICAgICAgICAgICBt LT5tYl92YXJfc3VtLCBtLT5tY19tYl92YXJfc3VtLAogICAgICAgICAgICAgICAgcy0+Yml0X3Jh dGUgLyAxMDAwLCAoaW50KWZwcyk7CiAgICAgfQogCkBAIC0xMDc2LDggKzEwNzYsOCBAQCBmbG9h dCBmZl9yYXRlX2VzdGltYXRlX3FzY2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50 IGRyeV9ydW4pCiAKICAgICBpZiAoIWRyeV9ydW4pIHsKICAgICAgICAgcmNjLT5sYXN0X3FzY2Fs ZSAgICAgICAgPSBxOwotICAgICAgICByY2MtPmxhc3RfbWNfbWJfdmFyX3N1bSA9IHMtPm1jX21i X3Zhcl9zdW07Ci0gICAgICAgIHJjYy0+bGFzdF9tYl92YXJfc3VtICAgID0gcy0+bWJfdmFyX3N1 bTsKKyAgICAgICAgcmNjLT5sYXN0X21jX21iX3Zhcl9zdW0gPSBtLT5tY19tYl92YXJfc3VtOwor ICAgICAgICByY2MtPmxhc3RfbWJfdmFyX3N1bSAgICA9IG0tPm1iX3Zhcl9zdW07CiAgICAgfQog ICAgIHJldHVybiBxOwogfQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9zbm93ZW5jLmMgYi9saWJh dmNvZGVjL3Nub3dlbmMuYwppbmRleCBkOTc0YTEyZjZiLi5lMDc0ZTg3OGQ2IDEwMDY0NAotLS0g YS9saWJhdmNvZGVjL3Nub3dlbmMuYworKysgYi9saWJhdmNvZGVjL3Nub3dlbmMuYwpAQCAtMTcw OCwxMSArMTcwOCwxMSBAQCBzdGF0aWMgaW50IHJhdGVjb250cm9sXzFwYXNzKFNub3dFbmNDb250 ZXh0ICplbmMsIEFWRnJhbWUgKnBpY3QpCiAgICAgY29lZl9zdW0gPSAodWludDY0X3QpY29lZl9z dW0gKiBjb2VmX3N1bSA+PiAxNjsKIAogICAgIGlmKHBpY3QtPnBpY3RfdHlwZSA9PSBBVl9QSUNU VVJFX1RZUEVfSSl7Ci0gICAgICAgIGVuYy0+bS5zLm1iX3Zhcl9zdW0gICAgPSBjb2VmX3N1bTsK LSAgICAgICAgZW5jLT5tLnMubWNfbWJfdmFyX3N1bSA9IDA7CisgICAgICAgIGVuYy0+bS5tYl92 YXJfc3VtICAgID0gY29lZl9zdW07CisgICAgICAgIGVuYy0+bS5tY19tYl92YXJfc3VtID0gMDsK ICAgICB9ZWxzZXsKLSAgICAgICAgZW5jLT5tLnMubWNfbWJfdmFyX3N1bSA9IGNvZWZfc3VtOwot ICAgICAgICBlbmMtPm0ucy5tYl92YXJfc3VtICAgID0gMDsKKyAgICAgICAgZW5jLT5tLm1jX21i X3Zhcl9zdW0gPSBjb2VmX3N1bTsKKyAgICAgICAgZW5jLT5tLm1iX3Zhcl9zdW0gICAgPSAwOwog ICAgIH0KIAogICAgIHBpY3QtPnF1YWxpdHk9IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKCZlbmMt Pm0sIDEpOwotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0027-avcodec-mpegvideo-Move-header_bits-to-MPVMainEncCont.patch" Content-Disposition: attachment; filename*0="0027-avcodec-mpegvideo-Move-header_bits-to-MPVMainEncCont.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2MjZiOGVjZjBlOTc2N2ExMWNhNDE5YWIwZTU2YTI5MjZjNzQ0ZGQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAyOSBKYW4gMjAyMiAwNTozNDoxNCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMjcvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIGhlYWRlcl9iaXRzIHRv CiBNUFZNYWluRW5jQ29udGV4dAoKVGhlIGhlYWRlciBpcyBhbHdheXMgd3JpdHRlbiBieSB0aGUg bWFpbiB0aHJlYWQsIHNvIGl0IGlzCm5vdCBzdXJwcmlzaW5nIHRoYXQgaGVhZGVyX2JpdHMgY2Fu IGJlIG1vdmVkIHRvIE1QVk1haW5FbmNDb250ZXh0CmFzIHdlbGwuCgpTaWduZWQtb2ZmLWJ5OiBB bmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBs aWJhdmNvZGVjL21qcGVnZW5jLmMgICAgICB8IDEwICsrKysrKystLS0KIGxpYmF2Y29kZWMvbXBl Z3ZpZGVvLmggICAgIHwgIDEgLQogbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgfCAgNiArKyst LS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggIHwgIDEgKwogbGliYXZjb2RlYy9yYXRlY29u dHJvbC5jICAgfCAgMiArLQogNSBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA4IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbWpwZWdlbmMuYyBiL2xpYmF2Y29k ZWMvbWpwZWdlbmMuYwppbmRleCA2Zjk4MThiYWYyLi5hNzdhNzAzZjUzIDEwMDY0NAotLS0gYS9s aWJhdmNvZGVjL21qcGVnZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tanBlZ2VuYy5jCkBAIC0xMTks OCArMTE5LDkgQEAgdm9pZCBmZl9tanBlZ19hbXZfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdF bmNDb250ZXh0ICpzKQogICoKICAqIEBwYXJhbSBzIFRoZSBNcGVnRW5jQ29udGV4dC4KICAqLwot c3RhdGljIHZvaWQgbWpwZWdfZW5jb2RlX3BpY3R1cmVfZnJhbWUoTXBlZ0VuY0NvbnRleHQgKnMp CitzdGF0aWMgdm9pZCBtanBlZ19lbmNvZGVfcGljdHVyZV9mcmFtZShNUFZNYWluRW5jQ29udGV4 dCAqY29uc3QgbWFpbikKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtYWluLT5z OwogICAgIGludCBuYml0cywgY29kZSwgdGFibGVfaWQ7CiAgICAgTUpwZWdDb250ZXh0ICptID0g cy0+bWpwZWdfY3R4OwogICAgIHVpbnQ4X3QgICpodWZmX3NpemVbNF0gPSB7IG0tPmh1ZmZfc2l6 ZV9kY19sdW1pbmFuY2UsCkBAIC0xMzQsNyArMTM1LDcgQEAgc3RhdGljIHZvaWQgbWpwZWdfZW5j b2RlX3BpY3R1cmVfZnJhbWUoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgc2l6ZV90IHRvdGFsX2Jp dHMgPSAwOwogICAgIHNpemVfdCBieXRlc19uZWVkZWQ7CiAKLSAgICBzLT5oZWFkZXJfYml0cyA9 IGdldF9iaXRzX2RpZmYocyk7CisgICAgbWFpbi0+aGVhZGVyX2JpdHMgPSBnZXRfYml0c19kaWZm KHMpOwogICAgIC8vIEVzdGltYXRlIHRoZSB0b3RhbCBzaXplIGZpcnN0CiAgICAgZm9yIChpbnQg aSA9IDA7IGkgPCBtLT5odWZmX25jb2RlOyBpKyspIHsKICAgICAgICAgdGFibGVfaWQgPSBtLT5o dWZmX2J1ZmZlcltpXS50YWJsZV9pZDsKQEAgLTI0MCw2ICsyNDEsOSBAQCBpbnQgZmZfbWpwZWdf ZW5jb2RlX3N0dWZmaW5nKE1wZWdFbmNDb250ZXh0ICpzKQogCiAjaWYgQ09ORklHX01KUEVHX0VO Q09ERVIKICAgICBpZiAobS0+aHVmZm1hbiA9PSBIVUZGTUFOX1RBQkxFX09QVElNQUwpIHsKKyAg ICAgICAgLyogSFVGRk1BTl9UQUJMRV9PUFRJTUFMIGlzIGluY29tcGF0aWJsZSB3aXRoIHNsaWNl IHRocmVhZGluZywKKyAgICAgICAgICogdGhlcmVmb3JlIHRoZSBmb2xsb3dpbmcgY2FzdCBpcyBh bGxvd2VkLiAqLworICAgICAgICBNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbWFpbiA9IChNUFZN YWluRW5jQ29udGV4dCopczsKIAogICAgICAgICBtanBlZ19idWlsZF9vcHRpbWFsX2h1ZmZtYW4o bSk7CiAKQEAgLTI1Myw3ICsyNTcsNyBAQCBpbnQgZmZfbWpwZWdfZW5jb2RlX3N0dWZmaW5nKE1w ZWdFbmNDb250ZXh0ICpzKQogICAgICAgICBzLT5pbnRyYV9jaHJvbWFfYWNfdmxjX2xhc3RfbGVu Z3RoID0gbS0+dW5pX2Nocm9tYV9hY192bGNfbGVuOwogCiAgICAgICAgIG1qcGVnX2VuY29kZV9w aWN0dXJlX2hlYWRlcihzKTsKLSAgICAgICAgbWpwZWdfZW5jb2RlX3BpY3R1cmVfZnJhbWUocyk7 CisgICAgICAgIG1qcGVnX2VuY29kZV9waWN0dXJlX2ZyYW1lKG1haW4pOwogICAgIH0KICNlbmRp ZgogCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5oIGIvbGliYXZjb2RlYy9tcGVn dmlkZW8uaAppbmRleCBiZGQzMTk2MDYwLi5mY2M1MWFmNDFhIDEwMDY0NAotLS0gYS9saWJhdmNv ZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKQEAgLTMxMCw3ICsz MTAsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAKICAgICAvKiBzdGF0aXN0 aWNzLCB1c2VkIGZvciAyLXBhc3MgZW5jb2RpbmcgKi8KICAgICBpbnQgbXZfYml0czsKLSAgICBp bnQgaGVhZGVyX2JpdHM7CiAgICAgaW50IGlfdGV4X2JpdHM7CiAgICAgaW50IHBfdGV4X2JpdHM7 CiAgICAgaW50IGlfY291bnQ7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMu YyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCmluZGV4IDQ0YmFkOWViNTIuLmQ0ZjRmODI1 ZmYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvX2VuYy5jCkBAIC0xOTI4LDcgKzE5MjgsNyBAQCB2YnZfcmV0cnk6CiAgICAg ICAgIGZyYW1lX2VuZChtKTsKIAogICAgICAgIGlmICgoQ09ORklHX01KUEVHX0VOQ09ERVIgfHwg Q09ORklHX0FNVl9FTkNPREVSKSAmJiBzLT5vdXRfZm9ybWF0ID09IEZNVF9NSlBFRykKLSAgICAg ICAgICAgIGZmX21qcGVnX2VuY29kZV9waWN0dXJlX3RyYWlsZXIoJnMtPnBiLCBzLT5oZWFkZXJf Yml0cyk7CisgICAgICAgICAgICBmZl9tanBlZ19lbmNvZGVfcGljdHVyZV90cmFpbGVyKCZzLT5w YiwgbS0+aGVhZGVyX2JpdHMpOwogCiAgICAgICAgIGlmIChhdmN0eC0+cmNfYnVmZmVyX3NpemUp IHsKICAgICAgICAgICAgIFJhdGVDb250cm9sQ29udGV4dCAqcmNjID0gJm0tPnJjX2NvbnRleHQ7 CkBAIC0xOTc2LDcgKzE5NzYsNyBAQCB2YnZfcmV0cnk6CiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzLT5waWN0X3R5cGUpOwogCiAgICAgICAgIGlmIChhdmN0eC0+Zmxh Z3MgJiBBVl9DT0RFQ19GTEFHX1BBU1MxKQotICAgICAgICAgICAgYXNzZXJ0KHB1dF9iaXRzX2Nv dW50KCZzLT5wYikgPT0gcy0+aGVhZGVyX2JpdHMgKyBzLT5tdl9iaXRzICsKKyAgICAgICAgICAg IGFzc2VydChwdXRfYml0c19jb3VudCgmcy0+cGIpID09IG0tPmhlYWRlcl9iaXRzICsgcy0+bXZf Yml0cyArCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5t aXNjX2JpdHMgKyBzLT5pX3RleF9iaXRzICsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHMtPnBfdGV4X2JpdHMpOwogICAgICAgICBmbHVzaF9wdXRfYml0cygm cy0+cGIpOwpAQCAtMzkzMyw3ICszOTMzLDcgQEAgc3RhdGljIGludCBlbmNvZGVfcGljdHVyZShN UFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3QgQVZQYWNrZXQgKnBrdCkKICAgICAgICAg YXZfYXNzZXJ0MCgwKTsKICAgICB9CiAgICAgYml0cz0gcHV0X2JpdHNfY291bnQoJnMtPnBiKTsK LSAgICBzLT5oZWFkZXJfYml0cz0gYml0cyAtIHMtPmxhc3RfYml0czsKKyAgICBtLT5oZWFkZXJf Yml0cyA9IGJpdHMgLSBzLT5sYXN0X2JpdHM7CiAKICAgICBmb3IoaT0xOyBpPGNvbnRleHRfY291 bnQ7IGkrKyl7CiAgICAgICAgIHVwZGF0ZV9kdXBsaWNhdGVfY29udGV4dF9hZnRlcl9tZShzLT50 aHJlYWRfY29udGV4dFtpXSwgcyk7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb2Vu Yy5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAppbmRleCAyODNmYThmNzA1Li45YzcwZmU2 ZDcxIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCisrKyBiL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvZW5jLmgKQEAgLTc3LDYgKzc3LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgTVBWTWFp bkVuY0NvbnRleHQgewogICAgIC8qIGJpdCByYXRlIGNvbnRyb2wgKi8KICAgICBpbnQ2NF90IHRv dGFsX2JpdHM7CiAgICAgaW50IGZyYW1lX2JpdHM7ICAgICAgICAgICAgICAgIC8vLzwgYml0cyB1 c2VkIGZvciB0aGUgY3VycmVudCBmcmFtZQorICAgIGludCBoZWFkZXJfYml0czsKICAgICBpbnQg c3R1ZmZpbmdfYml0czsgICAgICAgICAgICAgLy8vPCBiaXRzIHVzZWQgZm9yIHN0dWZmaW5nCiAg ICAgaW50IG5leHRfbGFtYmRhOyAgICAgICAgICAgICAgIC8vLzwgbmV4dCBsYW1iZGEgdXNlZCBm b3IgcmV0cnlpbmcgdG8gZW5jb2RlIGEgZnJhbWUKICAgICBpbnQgZml4ZWRfcXNjYWxlOyAgICAg ICAgICAgICAgLy8vPCBmaXhlZCBxc2NhbGUgaWYgbm9uIHplcm8KZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvcmF0ZWNvbnRyb2wuYyBiL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wuYwppbmRleCA5YzVk MzRkZmRlLi44OTVlNTU3ODc3IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMK KysrIGIvbGliYXZjb2RlYy9yYXRlY29udHJvbC5jCkBAIC01NCw3ICs1NCw3IEBAIHZvaWQgZmZf d3JpdGVfcGFzczFfc3RhdHMoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgICAgICAg ICAgbS0+bWNfbWJfdmFyX3N1bSwKICAgICAgICAgICAgICBtLT5tYl92YXJfc3VtLAogICAgICAg ICAgICAgIHMtPmlfY291bnQsCi0gICAgICAgICAgICAgcy0+aGVhZGVyX2JpdHMpOworICAgICAg ICAgICAgIG0tPmhlYWRlcl9iaXRzKTsKIH0KIAogc3RhdGljIEFWUmF0aW9uYWwgZ2V0X2Zwc1Eo QVZDb2RlY0NvbnRleHQgKmF2Y3R4KQotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0028-avcodec-speedhqenc-Move-speedhq_encode_init-down.patch" Content-Disposition: attachment; filename*0="0028-avcodec-speedhqenc-Move-speedhq_encode_init-down.patch" Content-Transfer-Encoding: base64 RnJvbSA3NTIyZjBlYjAzOTc3MjcxMDU3ZjY3MjUyYjBmNzAzOTNmYjdkMDBjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDE5OjI0OjI1ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAyOC83N10gYXZjb2RlYy9zcGVlZGhxZW5jOiBNb3ZlIHNwZWVkaHFfZW5jb2Rl X2luaXQoKSBkb3duCgpXaWxsIGF2b2lkIGZvcndhcmQgZGVjbGFyYXRpb25zIGxhdGVyLgoKU2ln bmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9v ay5jb20+Ci0tLQogbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMgfCAxMDIgKysrKysrKysrKysrKysr KysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUxIGluc2VydGlvbnMo KyksIDUxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5j IGIvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKaW5kZXggMmUwOTAxNjkzNS4uZGFjY2QwYzNiZiAx MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKKysrIGIvbGliYXZjb2RlYy9zcGVl ZGhxZW5jLmMKQEAgLTk1LDU3ICs5NSw2IEBAIHN0YXRpYyBhdl9jb2xkIHZvaWQgc3BlZWRocV9p bml0X3N0YXRpY19kYXRhKHZvaWQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZmX3Nw ZWVkaHFfdmxjX3RhYmxlLCB1bmlfc3BlZWRocV9hY192bGNfbGVuKTsKIH0KIAotc3RhdGljIGF2 X2NvbGQgaW50IHNwZWVkaHFfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQotewot ICAgIHN0YXRpYyBBVk9uY2UgaW5pdF9zdGF0aWNfb25jZSA9IEFWX09OQ0VfSU5JVDsKLSAgICBN cGVnRW5jQ29udGV4dCAqY29uc3QgcyA9IGF2Y3R4LT5wcml2X2RhdGE7Ci0gICAgaW50IHJldDsK LQotICAgIGlmIChhdmN0eC0+d2lkdGggPiA2NTUwMCB8fCBhdmN0eC0+aGVpZ2h0ID4gNjU1MDAp IHsKLSAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfRVJST1IsICJTcGVlZEhRIGRvZXMgbm90 IHN1cHBvcnQgcmVzb2x1dGlvbnMgYWJvdmUgNjU1MDB4NjU1MDBcbiIpOwotICAgICAgICByZXR1 cm4gQVZFUlJPUihFSU5WQUwpOwotICAgIH0KLQotICAgIC8vIGJvcmRlciBpcyBub3QgaW1wbGVt ZW50ZWQgY29ycmVjdGx5IGF0IHRoZSBtb21lbnQsIHNlZSB0aWNrZXQgIzEwMDc4Ci0gICAgaWYg KGF2Y3R4LT53aWR0aCAlIDE2KSB7Ci0gICAgICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9S LCAid2lkdGggbXVzdCBiZSBhIG11bHRpcGxlIG9mIDE2XG4iKTsKLSAgICAgICAgcmV0dXJuIEFW RVJST1JfUEFUQ0hXRUxDT01FOwotICAgIH0KLQotICAgIHN3aXRjaCAoYXZjdHgtPnBpeF9mbXQp IHsKLSAgICBjYXNlIEFWX1BJWF9GTVRfWVVWNDIwUDoKLSAgICAgICAgYXZjdHgtPmNvZGVjX3Rh ZyA9IE1LVEFHKCdTJywnSCcsJ1EnLCcwJyk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQVZf UElYX0ZNVF9ZVVY0MjJQOgotICAgICAgICBhdmN0eC0+Y29kZWNfdGFnID0gTUtUQUcoJ1MnLCdI JywnUScsJzInKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBBVl9QSVhfRk1UX1lVVjQ0NFA6 Ci0gICAgICAgIGF2Y3R4LT5jb2RlY190YWcgPSBNS1RBRygnUycsJ0gnLCdRJywnNCcpOwotICAg ICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBhdl9hc3NlcnQwKDApOwotICAgIH0K LQotICAgIHMtPm1pbl9xY29lZmYgPSAtMjA0ODsKLSAgICBzLT5tYXhfcWNvZWZmID0gMjA0NzsK LQotICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGggICAgICA9Ci0gICAgcy0+aW50cmFfYWNfdmxj X2xhc3RfbGVuZ3RoID0KLSAgICBzLT5pbnRyYV9jaHJvbWFfYWNfdmxjX2xlbmd0aCAgICAgID0K LSAgICBzLT5pbnRyYV9jaHJvbWFfYWNfdmxjX2xhc3RfbGVuZ3RoID0gdW5pX3NwZWVkaHFfYWNf dmxjX2xlbjsKLQotICAgIHMtPnlfZGNfc2NhbGVfdGFibGUgPQotICAgIHMtPmNfZGNfc2NhbGVf dGFibGUgPSBmZl9tcGVnMTJfZGNfc2NhbGVfdGFibGVbM107Ci0KLSAgICByZXQgPSBmZl9tcHZf ZW5jb2RlX2luaXQoYXZjdHgpOwotICAgIGlmIChyZXQgPCAwKQotICAgICAgICByZXR1cm4gcmV0 OwotCi0gICAgZmZfdGhyZWFkX29uY2UoJmluaXRfc3RhdGljX29uY2UsIHNwZWVkaHFfaW5pdF9z dGF0aWNfZGF0YSk7Ci0KLSAgICByZXR1cm4gMDsKLX0KLQogdm9pZCBmZl9zcGVlZGhxX2VuY29k ZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcykKIHsKICAgICBTcGVlZEhRRW5jQ29u dGV4dCAqY3R4ID0gKFNwZWVkSFFFbmNDb250ZXh0KilzOwpAQCAtMjc4LDYgKzIyNyw1NyBAQCB2 b2lkIGZmX3NwZWVkaHFfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2Nr WzEyXVs2NF0pCiAgICAgcy0+aV90ZXhfYml0cyArPSBnZXRfYml0c19kaWZmKHMpOwogfQogCitz dGF0aWMgYXZfY29sZCBpbnQgc3BlZWRocV9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZj dHgpCit7CisgICAgc3RhdGljIEFWT25jZSBpbml0X3N0YXRpY19vbmNlID0gQVZfT05DRV9JTklU OworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gYXZjdHgtPnByaXZfZGF0YTsKKyAgICBp bnQgcmV0OworCisgICAgaWYgKGF2Y3R4LT53aWR0aCA+IDY1NTAwIHx8IGF2Y3R4LT5oZWlnaHQg PiA2NTUwMCkgeworICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwgIlNwZWVkSFEg ZG9lcyBub3Qgc3VwcG9ydCByZXNvbHV0aW9ucyBhYm92ZSA2NTUwMHg2NTUwMFxuIik7CisgICAg ICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7CisgICAgfQorCisgICAgLy8gYm9yZGVyIGlzIG5v dCBpbXBsZW1lbnRlZCBjb3JyZWN0bHkgYXQgdGhlIG1vbWVudCwgc2VlIHRpY2tldCAjMTAwNzgK KyAgICBpZiAoYXZjdHgtPndpZHRoICUgMTYpIHsKKyAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9M T0dfRVJST1IsICJ3aWR0aCBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgMTZcbiIpOworICAgICAgICBy ZXR1cm4gQVZFUlJPUl9QQVRDSFdFTENPTUU7CisgICAgfQorCisgICAgc3dpdGNoIChhdmN0eC0+ cGl4X2ZtdCkgeworICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVY0MjBQOgorICAgICAgICBhdmN0eC0+ Y29kZWNfdGFnID0gTUtUQUcoJ1MnLCdIJywnUScsJzAnKTsKKyAgICAgICAgYnJlYWs7CisgICAg Y2FzZSBBVl9QSVhfRk1UX1lVVjQyMlA6CisgICAgICAgIGF2Y3R4LT5jb2RlY190YWcgPSBNS1RB RygnUycsJ0gnLCdRJywnMicpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIEFWX1BJWF9GTVRf WVVWNDQ0UDoKKyAgICAgICAgYXZjdHgtPmNvZGVjX3RhZyA9IE1LVEFHKCdTJywnSCcsJ1EnLCc0 Jyk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGF2X2Fzc2VydDAoMCk7 CisgICAgfQorCisgICAgcy0+bWluX3Fjb2VmZiA9IC0yMDQ4OworICAgIHMtPm1heF9xY29lZmYg PSAyMDQ3OworCisgICAgcy0+aW50cmFfYWNfdmxjX2xlbmd0aCAgICAgID0KKyAgICBzLT5pbnRy YV9hY192bGNfbGFzdF9sZW5ndGggPQorICAgIHMtPmludHJhX2Nocm9tYV9hY192bGNfbGVuZ3Ro ICAgICAgPQorICAgIHMtPmludHJhX2Nocm9tYV9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfc3Bl ZWRocV9hY192bGNfbGVuOworCisgICAgcy0+eV9kY19zY2FsZV90YWJsZSA9CisgICAgcy0+Y19k Y19zY2FsZV90YWJsZSA9IGZmX21wZWcxMl9kY19zY2FsZV90YWJsZVszXTsKKworICAgIHJldCA9 IGZmX21wdl9lbmNvZGVfaW5pdChhdmN0eCk7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIHJl dHVybiByZXQ7CisKKyAgICBmZl90aHJlYWRfb25jZSgmaW5pdF9zdGF0aWNfb25jZSwgc3BlZWRo cV9pbml0X3N0YXRpY19kYXRhKTsKKworICAgIHJldHVybiAwOworfQorCiBjb25zdCBGRkNvZGVj IGZmX3NwZWVkaHFfZW5jb2RlciA9IHsKICAgICAucC5uYW1lICAgICAgICAgPSAic3BlZWRocSIs CiAgICAgQ09ERUNfTE9OR19OQU1FKCJOZXdUZWsgU3BlZWRIUSIpLAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0029-avcodec-wmv2enc-Move-wmv2_encode_init-down.patch" Content-Disposition: attachment; filename="0029-avcodec-wmv2enc-Move-wmv2_encode_init-down.patch" Content-Transfer-Encoding: base64 RnJvbSBjMzJhNjkxZDNhMjIxNWZhNmI3MTRhYTBkNzNiMWM0OTRhYTk5YWVkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDE5OjI4OjQxICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAyOS83N10gYXZjb2RlYy93bXYyZW5jOiBNb3ZlIHdtdjJfZW5jb2RlX2luaXQo KSBkb3duCgpXaWxsIGF2b2lkIGZvcndhcmQgZGVjbGFyYXRpb25zIGxhdGVyLgpXaGlsZSBqdXN0 IGF0IGl0LCBmb3J3YXJkIGZmX21wdl9lbmNvZGVfaW5pdCgpIGVycm9ycy4KClNpZ25lZC1vZmYt Ynk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgot LS0KIGxpYmF2Y29kZWMvd212MmVuYy5jIHwgNDQgKysrKysrKysrKysrKysrKysrKysrKystLS0t LS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAyMSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3dtdjJlbmMuYyBiL2xpYmF2Y29k ZWMvd212MmVuYy5jCmluZGV4IDMzNTY5YTZkMzkuLjU1ZmNjOTE0ODQgMTAwNjQ0Ci0tLSBhL2xp YmF2Y29kZWMvd212MmVuYy5jCisrKyBiL2xpYmF2Y29kZWMvd212MmVuYy5jCkBAIC03MywyNyAr NzMsNiBAQCBzdGF0aWMgaW50IGVuY29kZV9leHRfaGVhZGVyKFdNVjJFbmNDb250ZXh0ICp3KQog ICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgYXZfY29sZCBpbnQgd212Ml9lbmNvZGVfaW5pdChB VkNvZGVjQ29udGV4dCAqYXZjdHgpCi17Ci0gICAgV01WMkVuY0NvbnRleHQgKmNvbnN0IHcgPSBh dmN0eC0+cHJpdl9kYXRhOwotICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJnctPm1zbXBl ZzQubS5zOwotCi0gICAgcy0+cHJpdmF0ZV9jdHggPSAmdy0+Y29tbW9uOwotICAgIGlmIChmZl9t cHZfZW5jb2RlX2luaXQoYXZjdHgpIDwgMCkKLSAgICAgICAgcmV0dXJuIC0xOwotCi0gICAgZmZf d212Ml9jb21tb25faW5pdChzKTsKLQotICAgIGF2Y3R4LT5leHRyYWRhdGFfc2l6ZSA9IFdNVjJf RVhUUkFEQVRBX1NJWkU7Ci0gICAgYXZjdHgtPmV4dHJhZGF0YSAgICAgID0gYXZfbWFsbG9jeihh dmN0eC0+ZXh0cmFkYXRhX3NpemUgKyBBVl9JTlBVVF9CVUZGRVJfUEFERElOR19TSVpFKTsKLSAg ICBpZiAoIWF2Y3R4LT5leHRyYWRhdGEpCi0gICAgICAgIHJldHVybiBBVkVSUk9SKEVOT01FTSk7 Ci0KLSAgICBlbmNvZGVfZXh0X2hlYWRlcih3KTsKLQotICAgIHJldHVybiAwOwotfQotCiBpbnQg ZmZfd212Ml9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpCiB7CiAgICAg V01WMkVuY0NvbnRleHQgKmNvbnN0IHcgPSAoV01WMkVuY0NvbnRleHQgKikgczsKQEAgLTIzNyw2 ICsyMTYsMjkgQEAgdm9pZCBmZl93bXYyX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50 MTZfdCBibG9ja1s2XVs2NF0sCiAgICAgICAgIHMtPnBfdGV4X2JpdHMgKz0gZ2V0X2JpdHNfZGlm ZihzKTsKIH0KIAorc3RhdGljIGF2X2NvbGQgaW50IHdtdjJfZW5jb2RlX2luaXQoQVZDb2RlY0Nv bnRleHQgKmF2Y3R4KQoreworICAgIFdNVjJFbmNDb250ZXh0ICpjb25zdCB3ID0gYXZjdHgtPnBy aXZfZGF0YTsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZ3LT5tc21wZWc0Lm0uczsK KyAgICBpbnQgcmV0OworCisgICAgcy0+cHJpdmF0ZV9jdHggPSAmdy0+Y29tbW9uOworICAgIHJl dCA9IGZmX21wdl9lbmNvZGVfaW5pdChhdmN0eCk7CisgICAgaWYgKHJldCA8IDApCisgICAgICAg IHJldHVybiByZXQ7CisKKyAgICBmZl93bXYyX2NvbW1vbl9pbml0KHMpOworCisgICAgYXZjdHgt PmV4dHJhZGF0YV9zaXplID0gV01WMl9FWFRSQURBVEFfU0laRTsKKyAgICBhdmN0eC0+ZXh0cmFk YXRhICAgICAgPSBhdl9tYWxsb2N6KGF2Y3R4LT5leHRyYWRhdGFfc2l6ZSArIEFWX0lOUFVUX0JV RkZFUl9QQURESU5HX1NJWkUpOworICAgIGlmICghYXZjdHgtPmV4dHJhZGF0YSkKKyAgICAgICAg cmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKKworICAgIGVuY29kZV9leHRfaGVhZGVyKHcpOworCisg ICAgcmV0dXJuIDA7Cit9CisKIGNvbnN0IEZGQ29kZWMgZmZfd212Ml9lbmNvZGVyID0gewogICAg IC5wLm5hbWUgICAgICAgICA9ICJ3bXYyIiwKICAgICBDT0RFQ19MT05HX05BTUUoIldpbmRvd3Mg TWVkaWEgVmlkZW8gOCIpLAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0030-avcodec-mpegvideo_enc-Use-function-ptr-for-encode_pi.patch" Content-Disposition: attachment; filename*0="0030-avcodec-mpegvideo_enc-Use-function-ptr-for-encode_pi.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2NDA4ZGZiNThmZmQwZjA2Zjg1Y2UwZTNiMjM2NjY3NWNmOWU5NTM5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAzIE1hciAyMDI1IDIzOjM1OjAxICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAzMC83N10gYXZjb2RlYy9tcGVndmlkZW9fZW5jOiBVc2UgZnVuY3Rpb24gcHRy IGZvcgogZW5jb2RlX3BpY3R1cmVfaGVhZGVyCgpUaGlzIGdldHMgcmlkIG9mIGEgc3dpdGNoIGFu ZCAoaW4gY2FzZSBvZiBGTVRfSDI2Mykgc2V2ZXJhbAppZnMuCgpTaWduZWQtb2ZmLWJ5OiBBbmRy ZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJh dmNvZGVjL2ZsdmVuYy5jICAgICAgICB8ICA1ICsrKy0KIGxpYmF2Y29kZWMvZmx2ZW5jLmggICAg ICAgIHwgIDUgKystLQogbGliYXZjb2RlYy9oMjYxZW5jLmMgICAgICAgfCAgOCArKysrLS0KIGxp YmF2Y29kZWMvaDI2MWVuYy5oICAgICAgIHwgIDEgLQogbGliYXZjb2RlYy9oMjYzZW5jLmggICAg ICAgfCAgMyArLQogbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMgICAgfCAxMyArKysrKysrLS0KIGxp YmF2Y29kZWMvbWpwZWdlbmMuYyAgICAgIHwgMTIgKysrKystLS0KIGxpYmF2Y29kZWMvbWpwZWdl bmMuaCAgICAgIHwgIDEgLQogbGliYXZjb2RlYy9tcGVnMTJlbmMuYyAgICAgfCAgNiArKystCiBs aWJhdmNvZGVjL21wZWcxMmVuYy5oICAgICB8ICAzICstCiBsaWJhdmNvZGVjL21wZWc0dmlkZW9l bmMuYyB8ICA3ICsrKy0tCiBsaWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaCB8ICA0ICstLQogbGli YXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgfCA1OCArKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAgfCAgMiArKwogbGliYXZjb2Rl Yy9tc21wZWc0ZW5jLmMgICAgfCA0MCArKysrKysrKysrKysrKystLS0tLS0tLS0tLQogbGliYXZj b2RlYy9tc21wZWc0ZW5jLmggICAgfCAgMyArLQogbGliYXZjb2RlYy9ydjEwZW5jLmMgICAgICAg fCAgMyArLQogbGliYXZjb2RlYy9ydjEwZW5jLmggICAgICAgfCAgNiArKy0tCiBsaWJhdmNvZGVj L3J2MjBlbmMuYyAgICAgICB8ICA2ICsrKy0KIGxpYmF2Y29kZWMvc3BlZWRocWVuYy5jICAgIHwg MTIgKysrKysrLS0KIGxpYmF2Y29kZWMvc3BlZWRocWVuYy5oICAgIHwgIDEgLQogbGliYXZjb2Rl Yy93bXYyZW5jLmMgICAgICAgfCAgNiArKy0tCiBsaWJhdmNvZGVjL3dtdjJlbmMuaCAgICAgICB8 ICAxIC0KIDIzIGZpbGVzIGNoYW5nZWQsIDEwNyBpbnNlcnRpb25zKCspLCA5OSBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2ZsdmVuYy5jIGIvbGliYXZjb2RlYy9mbHZlbmMu YwppbmRleCAwY2QyMGYwMjZkLi5iNGEzMGZlNTU4IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2Zs dmVuYy5jCisrKyBiL2xpYmF2Y29kZWMvZmx2ZW5jLmMKQEAgLTIzLDggKzIzLDkgQEAKICNpbmNs dWRlICJtcGVndmlkZW8uaCIKICNpbmNsdWRlICJtcGVndmlkZW9lbmMuaCIKIAotdm9pZCBmZl9m bHZfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKQoraW50IGZmX2Zsdl9l bmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiB7CisgICAg TXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKICAgICBpbnQgZm9ybWF0OwogCiAgICAg YWxpZ25fcHV0X2JpdHMoJnMtPnBiKTsKQEAgLTYxLDYgKzYyLDggQEAgdm9pZCBmZl9mbHZfZW5j b2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIHB1dF9iaXRzKCZzLT5w YiwgMSwgMSk7ICAgLyogRGVibG9ja2luZ0ZsYWc6IG9uICovCiAgICAgcHV0X2JpdHMoJnMtPnBi LCA1LCBzLT5xc2NhbGUpOyAgIC8qIFF1YW50aXplciAqLwogICAgIHB1dF9iaXRzKCZzLT5wYiwg MSwgMCk7ICAgLyogRXh0cmFJbmZvcm1hdGlvbiAqLworCisgICAgcmV0dXJuIDA7CiB9CiAKIHZv aWQgZmZfZmx2Ml9lbmNvZGVfYWNfZXNjKFB1dEJpdENvbnRleHQgKnBiLCBpbnQgc2xldmVsLCBp bnQgbGV2ZWwsCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2ZsdmVuYy5oIGIvbGliYXZjb2RlYy9m bHZlbmMuaAppbmRleCAxZWNiYjQ2YjE3Li4zZGM3NDgwMzc2IDEwMDY0NAotLS0gYS9saWJhdmNv ZGVjL2ZsdmVuYy5oCisrKyBiL2xpYmF2Y29kZWMvZmx2ZW5jLmgKQEAgLTIxLDEwICsyMSwxMSBA QAogI2lmbmRlZiBBVkNPREVDX0ZMVkVOQ19ICiAjZGVmaW5lIEFWQ09ERUNfRkxWRU5DX0gKIAot I2luY2x1ZGUgIm1wZWd2aWRlby5oIgogI2luY2x1ZGUgInB1dF9iaXRzLmgiCiAKLXZvaWQgZmZf Zmx2X2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcyk7Cit0eXBlZGVmIHN0 cnVjdCBNUFZNYWluRW5jQ29udGV4dCBNUFZNYWluRW5jQ29udGV4dDsKKworaW50IGZmX2Zsdl9l bmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pOwogdm9pZCBm Zl9mbHYyX2VuY29kZV9hY19lc2MoUHV0Qml0Q29udGV4dCAqcGIsIGludCBzbGV2ZWwsIGludCBs ZXZlbCwgaW50IHJ1biwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBsYXN0KTsKIApk aWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9oMjYxZW5jLmMgYi9saWJhdmNvZGVjL2gyNjFlbmMuYwpp bmRleCAzNmM1MGRiNmRmLi5iZmU4MDViY2RmIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2gyNjFl bmMuYworKysgYi9saWJhdmNvZGVjL2gyNjFlbmMuYwpAQCAtNjYsOSArNjYsMTAgQEAgdHlwZWRl ZiBzdHJ1Y3QgSDI2MUVuY0NvbnRleHQgewogICAgIH0gZm9ybWF0OwogfSBIMjYxRW5jQ29udGV4 dDsKIAotdm9pZCBmZl9oMjYxX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAq cykKK3N0YXRpYyBpbnQgaDI2MV9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVuY0NvbnRl eHQgKmNvbnN0IG0pCiB7Ci0gICAgSDI2MUVuY0NvbnRleHQgKmNvbnN0IGggPSAoSDI2MUVuY0Nv bnRleHQgKilzOworICAgIEgyNjFFbmNDb250ZXh0ICpjb25zdCBoID0gKEgyNjFFbmNDb250ZXh0 ICopbTsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZoLT5zLnM7CiAgICAgaW50IHRl bXBfcmVmOwogCiAgICAgYWxpZ25fcHV0X2JpdHMoJnMtPnBiKTsKQEAgLTk0LDYgKzk1LDggQEAg dm9pZCBmZl9oMjYxX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcykKICAg ICBwdXRfYml0cygmcy0+cGIsIDEsIDApOyAvKiBubyBQRUkgKi8KICAgICBoLT5nb2JfbnVtYmVy ID0gaC0+Zm9ybWF0IC0gMTsKICAgICBzLT5tYl9za2lwX3J1biA9IDA7CisKKyAgICByZXR1cm4g MDsKIH0KIAogLyoqCkBAIC0zNzAsNiArMzczLDcgQEAgc3RhdGljIGF2X2NvbGQgaW50IGgyNjFf ZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAgICByZXR1cm4gQVZFUlJP UihFSU5WQUwpOwogICAgIH0KICAgICBzLT5wcml2YXRlX2N0eCA9ICZoLT5jb21tb247CisgICAg aC0+cy5lbmNvZGVfcGljdHVyZV9oZWFkZXIgPSBoMjYxX2VuY29kZV9waWN0dXJlX2hlYWRlcjsK IAogICAgIHMtPm1pbl9xY29lZmYgICAgICAgPSAtMTI3OwogICAgIHMtPm1heF9xY29lZmYgICAg ICAgPSAxMjc7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2gyNjFlbmMuaCBiL2xpYmF2Y29kZWMv aDI2MWVuYy5oCmluZGV4IDc4NzdkOGFhOWQuLjA5MjM2M2I2ZjMgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvaDI2MWVuYy5oCisrKyBiL2xpYmF2Y29kZWMvaDI2MWVuYy5oCkBAIC0zMyw2ICszMyw1 IEBACiB2b2lkIGZmX2gyNjFfcmVvcmRlcl9tYl9pbmRleChNcGVnRW5jQ29udGV4dCAqcyk7CiB2 b2lkIGZmX2gyNjFfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzZd WzY0XSwKICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vdGlvbl94LCBpbnQgbW90aW9uX3kp Owotdm9pZCBmZl9oMjYxX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcyk7 CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9oMjYzZW5jLmggYi9saWJhdmNvZGVj L2gyNjNlbmMuaAppbmRleCA3MWUzMDkzMWFhLi4yOWE3ODVkZmViIDEwMDY0NAotLS0gYS9saWJh dmNvZGVjL2gyNjNlbmMuaAorKysgYi9saWJhdmNvZGVjL2gyNjNlbmMuaApAQCAtMjYsOCArMjYs NyBAQAogCiBjb25zdCB1aW50OF90ICgqZmZfaDI2M19nZXRfbXZfcGVuYWx0eSh2b2lkKSlbTUFY X0RNVioyKzFdOwogCi12b2lkIGZmX2gyNjNfZW5jb2RlX2luaXQoTXBlZ0VuY0NvbnRleHQgKnMp Owotdm9pZCBmZl9oMjYzX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcyk7 Cit2b2lkIGZmX2gyNjNfZW5jb2RlX2luaXQoTVBWTWFpbkVuY0NvbnRleHQgKm0pOwogdm9pZCBm Zl9oMjYzX2VuY29kZV9nb2JfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICogcywgaW50IG1iX2xpbmUp Owogdm9pZCBmZl9oMjYzX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywKICAgICAgICAgICAg ICAgICAgICAgICAgaW50MTZfdCBibG9ja1s2XVs2NF0sCmRpZmYgLS1naXQgYS9saWJhdmNvZGVj L2l0dWgyNjNlbmMuYyBiL2xpYmF2Y29kZWMvaXR1aDI2M2VuYy5jCmluZGV4IDgyNWIzOTg0NTUu LmM4MmUwY2VmZmQgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvaXR1aDI2M2VuYy5jCisrKyBiL2xp YmF2Y29kZWMvaXR1aDI2M2VuYy5jCkBAIC0yMjEsOCArMjIxLDkgQEAgYXZfY29uc3QgaW50IGZm X2gyNjNfYXNwZWN0X3RvX2luZm8oQVZSYXRpb25hbCBhc3BlY3QpewogICAgIHJldHVybiBGRl9B U1BFQ1RfRVhURU5ERUQ7CiB9CiAKLXZvaWQgZmZfaDI2M19lbmNvZGVfcGljdHVyZV9oZWFkZXIo TXBlZ0VuY0NvbnRleHQgKiBzKQorc3RhdGljIGludCBoMjYzX2VuY29kZV9waWN0dXJlX2hlYWRl cihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29u c3QgcyA9ICZtLT5zOwogICAgIGludCBmb3JtYXQsIGNvZGVkX2ZyYW1lX3JhdGUsIGNvZGVkX2Zy YW1lX3JhdGVfYmFzZSwgaSwgdGVtcF9yZWY7CiAgICAgaW50IGJlc3RfY2xvY2tfY29kZT0xOwog ICAgIGludCBiZXN0X2Rpdmlzb3I9NjA7CkBAIC0zNTQsNiArMzU1LDggQEAgdm9pZCBmZl9oMjYz X2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqIHMpCiAKICAgICAgICAgcHV0 X2JpdHMoJnMtPnBiLCAxLCAxKTsKICAgICB9CisKKyAgICByZXR1cm4gMDsKIH0KIAogLyoqCkBA IC04MTksOCArODIyLDEwIEBAIHZvaWQgZmZfaDI2M191cGRhdGVfbWIoTXBlZ0VuY0NvbnRleHQg KnMpCiAgICAgZmZfaDI2M191cGRhdGVfbW90aW9uX3ZhbChzKTsKIH0KIAotYXZfY29sZCB2b2lk IGZmX2gyNjNfZW5jb2RlX2luaXQoTXBlZ0VuY0NvbnRleHQgKnMpCithdl9jb2xkIHZvaWQgZmZf aDI2M19lbmNvZGVfaW5pdChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIHsKKyAgICBNcGVn RW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOworCiAgICAgcy0+bWUubXZfcGVuYWx0eSA9IGZm X2gyNjNfZ2V0X212X3BlbmFsdHkoKTsgLy8gRklYTUUgZXhhY3QgdGFibGUgZm9yIE1TTVBFRzQg JiBILjI2MysKIAogICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGggICAgID1zLT5pbnRlcl9hY192 bGNfbGVuZ3RoICAgICA9IHVuaV9oMjYzX2ludGVyX3JsX2xlbjsKQEAgLTg1NCw2ICs4NTksNyBA QCBhdl9jb2xkIHZvaWQgZmZfaDI2M19lbmNvZGVfaW5pdChNcGVnRW5jQ29udGV4dCAqcykKICAg ICAgICAgYnJlYWs7CiAgICAgICAgIC8vIE5vdGUgZm9yIE1QRUctNCAmIEguMjYzIHRoZSBkYy1z Y2FsZSB0YWJsZSB3aWxsIGJlIHNldCBwZXIgZnJhbWUgYXMgbmVlZGVkIGxhdGVyCiAgICAgY2Fz ZSBBVl9DT0RFQ19JRF9GTFYxOgorICAgICAgICBtLT5lbmNvZGVfcGljdHVyZV9oZWFkZXIgPSBm Zl9mbHZfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOwogICAgICAgICBpZiAocy0+aDI2M19mbHYgPiAx KSB7CiAgICAgICAgICAgICBzLT5taW5fcWNvZWZmPSAtMTAyMzsKICAgICAgICAgICAgIHMtPm1h eF9xY29lZmY9ICAxMDIzOwpAQCAtODY2LDYgKzg3Miw5IEBAIGF2X2NvbGQgdm9pZCBmZl9oMjYz X2VuY29kZV9pbml0KE1wZWdFbmNDb250ZXh0ICpzKQogICAgICAgICBzLT5taW5fcWNvZWZmPSAt MTI3OwogICAgICAgICBzLT5tYXhfcWNvZWZmPSAgMTI3OwogICAgIH0KKyAgICAvLyBILjI2Mywg SC4yNjMrOyB3aWxsIGJlIG92ZXJ3cml0dGVuIGZvciBNU01QRUctNCBsYXRlcgorICAgIGlmICgh bS0+ZW5jb2RlX3BpY3R1cmVfaGVhZGVyKQorICAgICAgICBtLT5lbmNvZGVfcGljdHVyZV9oZWFk ZXIgPSBoMjYzX2VuY29kZV9waWN0dXJlX2hlYWRlcjsKIAogICAgIGZmX2gyNjNkc3BfaW5pdCgm cy0+aDI2M2RzcCk7CiB9CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21qcGVnZW5jLmMgYi9saWJh dmNvZGVjL21qcGVnZW5jLmMKaW5kZXggYTc3YTcwM2Y1My4uNzcwNmY1MjE0OCAxMDA2NDQKLS0t IGEvbGliYXZjb2RlYy9tanBlZ2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbWpwZWdlbmMuYwpAQCAt MTA0LDEzICsxMDQsMTYgQEAgc3RhdGljIHZvaWQgbWpwZWdfZW5jb2RlX3BpY3R1cmVfaGVhZGVy KE1wZWdFbmNDb250ZXh0ICpzKQogICAgICAgICBzLT50aHJlYWRfY29udGV4dFtpXS0+ZXNjX3Bv cyA9IDA7CiB9CiAKLXZvaWQgZmZfbWpwZWdfYW12X2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVn RW5jQ29udGV4dCAqcykKK3N0YXRpYyBpbnQgbWpwZWdfYW12X2VuY29kZV9waWN0dXJlX2hlYWRl cihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIHsKLSAgICBNSlBFR0VuY0NvbnRleHQgKmNv bnN0IG0gPSAoTUpQRUdFbmNDb250ZXh0KilzOwotICAgIGF2X2Fzc2VydDIocy0+bWpwZWdfY3R4 ID09ICZtLT5tanBlZyk7CisgICAgTUpQRUdFbmNDb250ZXh0ICpjb25zdCBtMiA9IChNSlBFR0Vu Y0NvbnRleHQqKW07CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKKyAgICBh dl9hc3NlcnQyKHMtPm1qcGVnX2N0eCA9PSAmbTItPm1qcGVnKTsKICAgICAvKiBzLT5odWZmbWFu ID09IEhVRkZNQU5fVEFCTEVfT1BUSU1BTCBjYW4gb25seSBiZSB0cnVlIGZvciBNSlBFRy4gKi8K LSAgICBpZiAoIUNPTkZJR19NSlBFR19FTkNPREVSIHx8IG0tPm1qcGVnLmh1ZmZtYW4gIT0gSFVG Rk1BTl9UQUJMRV9PUFRJTUFMKQorICAgIGlmICghQ09ORklHX01KUEVHX0VOQ09ERVIgfHwgbTIt Pm1qcGVnLmh1ZmZtYW4gIT0gSFVGRk1BTl9UQUJMRV9PUFRJTUFMKQogICAgICAgICBtanBlZ19l bmNvZGVfcGljdHVyZV9oZWFkZXIocyk7CisKKyAgICByZXR1cm4gMDsKIH0KIAogI2lmIENPTkZJ R19NSlBFR19FTkNPREVSCkBAIC0zMDksNiArMzEyLDcgQEAgc3RhdGljIGF2X2NvbGQgaW50IG1q cGVnX2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBpbnQgcmV0OwogCiAg ICAgcy0+bWpwZWdfY3R4ID0gbTsKKyAgICBtMi0+bXBlZy5lbmNvZGVfcGljdHVyZV9oZWFkZXIg PSBtanBlZ19hbXZfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOwogCiAgICAgaWYgKHMtPm1wdl9mbGFn cyAmIEZGX01QVl9GTEFHX1FQX1JEKSB7CiAgICAgICAgIC8vIFVzZWQgdG8gcHJvZHVjZSBnYXJi YWdlIHdpdGggTUpQRUcuCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21qcGVnZW5jLmggYi9saWJh dmNvZGVjL21qcGVnZW5jLmgKaW5kZXggMmM5OGRlMDU3YS4uOTYxMDY1NmFhYSAxMDA2NDQKLS0t IGEvbGliYXZjb2RlYy9tanBlZ2VuYy5oCisrKyBiL2xpYmF2Y29kZWMvbWpwZWdlbmMuaApAQCAt OTQsNyArOTQsNiBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcHV0X21hcmtlcihQdXRCaXRDb250ZXh0 ICpwLCBlbnVtIEpwZWdNYXJrZXIgY29kZSkKIAogdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRl eHQgTXBlZ0VuY0NvbnRleHQ7CiAKLXZvaWQgZmZfbWpwZWdfYW12X2VuY29kZV9waWN0dXJlX2hl YWRlcihNcGVnRW5jQ29udGV4dCAqcyk7CiB2b2lkIGZmX21qcGVnX2VuY29kZV9tYihNcGVnRW5j Q29udGV4dCAqcywgaW50MTZfdCBibG9ja1sxMl1bNjRdKTsKIGludCAgZmZfbWpwZWdfZW5jb2Rl X3N0dWZmaW5nKE1wZWdFbmNDb250ZXh0ICpzKTsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9t cGVnMTJlbmMuYyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKaW5kZXggZWQyYzYzMDg2Zi4uZjI4 YTQxZjVmZiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnMTJlbmMuYworKysgYi9saWJhdmNv ZGVjL21wZWcxMmVuYy5jCkBAIC0zMzMsNyArMzMzLDcgQEAgdm9pZCBmZl9tcGVnMV9lbmNvZGVf c2xpY2VfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwg MCk7CiB9CiAKLXZvaWQgZmZfbXBlZzFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmND b250ZXh0ICpjb25zdCBtKQorc3RhdGljIGludCBtcGVnMV9lbmNvZGVfcGljdHVyZV9oZWFkZXIo TVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiB7CiAgICAgTVBFRzEyRW5jQ29udGV4dCAqY29u c3QgbXBlZzEyID0gKE1QRUcxMkVuY0NvbnRleHQqKW07CiAgICAgTXBlZ0VuY0NvbnRleHQgKmNv bnN0IHMgPSAmbS0+czsKQEAgLTQ4NSw2ICs0ODUsOCBAQCB2b2lkIGZmX21wZWcxX2VuY29kZV9w aWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIAogICAgIHMtPm1iX3kg PSAwOwogICAgIGZmX21wZWcxX2VuY29kZV9zbGljZV9oZWFkZXIocyk7CisKKyAgICByZXR1cm4g MDsKIH0KIAogc3RhdGljIGlubGluZSB2b2lkIHB1dF9tYl9tb2RlcyhNcGVnRW5jQ29udGV4dCAq cywgaW50IG4sIGludCBiaXRzLApAQCAtMTEwOCw2ICsxMTEwLDggQEAgc3RhdGljIGF2X2NvbGQg aW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAgICAgfQogICAgIH0K IAorICAgIG0tPmVuY29kZV9waWN0dXJlX2hlYWRlciA9IG1wZWcxX2VuY29kZV9waWN0dXJlX2hl YWRlcjsKKwogICAgIHMtPm1lLm12X3BlbmFsdHkgPSBtdl9wZW5hbHR5OwogICAgIHMtPmZjb2Rl X3RhYiAgICAgPSBmY29kZV90YWIgKyBNQVhfTVY7CiAgICAgaWYgKGF2Y3R4LT5jb2RlY19pZCA9 PSBBVl9DT0RFQ19JRF9NUEVHMVZJREVPKSB7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWcx MmVuYy5oIGIvbGliYXZjb2RlYy9tcGVnMTJlbmMuaAppbmRleCBmYTE1MDQxNzdhLi42YzM3MDli YmZmIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWcxMmVuYy5oCisrKyBiL2xpYmF2Y29kZWMv bXBlZzEyZW5jLmgKQEAgLTI0LDEwICsyNCw5IEBACiAKICNpbmNsdWRlIDxzdGRpbnQuaD4KIAot I2luY2x1ZGUgIm1wZWd2aWRlb2VuYy5oIgorI2luY2x1ZGUgIm1wZWd2aWRlby5oIgogI2luY2x1 ZGUgIm1wZWd2aWRlb2RhdGEuaCIKIAotdm9pZCBmZl9tcGVnMV9lbmNvZGVfcGljdHVyZV9oZWFk ZXIoTVBWTWFpbkVuY0NvbnRleHQgKm0pOwogdm9pZCBmZl9tcGVnMV9lbmNvZGVfbWIoTXBlZ0Vu Y0NvbnRleHQgKnMsIGludDE2X3QgYmxvY2tbOF1bNjRdLAogICAgICAgICAgICAgICAgICAgICAg ICAgaW50IG1vdGlvbl94LCBpbnQgbW90aW9uX3kpOwogdm9pZCBmZl9tcGVnMV9lbmNvZGVfc2xp Y2VfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBl ZzR2aWRlb2VuYy5jIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKaW5kZXggYzI2NTMxNmVk Ni4uZjM0ZWExZmNiNCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKKysr IGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKQEAgLTEwNjIsNyArMTA2Miw3IEBAIHN0YXRp YyB2b2lkIG1wZWc0X2VuY29kZV92b2xfaGVhZGVyKE1wZWc0RW5jQ29udGV4dCAqY29uc3QgbTQs CiB9CiAKIC8qIHdyaXRlIE1QRUctNCBWT1AgaGVhZGVyICovCi1pbnQgZmZfbXBlZzRfZW5jb2Rl X3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQorc3RhdGljIGludCBt cGVnNF9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiB7 CiAgICAgTXBlZzRFbmNDb250ZXh0ICpjb25zdCBtNCA9IG1haW5jdHhfdG9fbXBlZzQobSk7CiAg ICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKQEAgLTEyOTEsNyArMTI5MSw4IEBA IHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7 CiAgICAgc3RhdGljIEFWT25jZSBpbml0X3N0YXRpY19vbmNlID0gQVZfT05DRV9JTklUOwogICAg IE1wZWc0RW5jQ29udGV4dCAqY29uc3QgbTQgPSBhdmN0eC0+cHJpdl9kYXRhOwotICAgIE1wZWdF bmNDb250ZXh0ICAqY29uc3QgIHMgPSAmbTQtPm0uczsKKyAgICBNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSA9ICZtNC0+bTsKKyAgICBNcGVnRW5jQ29udGV4dCAgKmNvbnN0ICBzID0gJm0tPnM7 CiAgICAgaW50IHJldDsKIAogICAgIGlmIChhdmN0eC0+d2lkdGggPj0gKDE8PDEzKSB8fCBhdmN0 eC0+aGVpZ2h0ID49ICgxPDwxMykpIHsKQEAgLTEyOTksNiArMTMwMCw4IEBAIHN0YXRpYyBhdl9j b2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgIHJldHVy biBBVkVSUk9SKEVJTlZBTCk7CiAgICAgfQogCisgICAgbS0+ZW5jb2RlX3BpY3R1cmVfaGVhZGVy ID0gbXBlZzRfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOworCiAgICAgZmZfcXBlbGRzcF9pbml0KCZz LT5xZHNwKTsKICAgICBpZiAoKHJldCA9IGZmX21wdl9lbmNvZGVfaW5pdChhdmN0eCkpIDwgMCkK ICAgICAgICAgcmV0dXJuIHJldDsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZzR2aWRlb2Vu Yy5oIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmgKaW5kZXggMWM1M2NlNGVkZS4uNDU2NWE1 MThiMiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmgKKysrIGIvbGliYXZj b2RlYy9tcGVnNHZpZGVvZW5jLmgKQEAgLTI1LDE0ICsyNSwxNCBAQAogCiAjaW5jbHVkZSA8c3Rk aW50Lmg+CiAKLSNpbmNsdWRlICJtcGVndmlkZW9lbmMuaCIKICNpbmNsdWRlICJwdXRfYml0cy5o IgogCit0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCBNcGVnRW5jQ29udGV4dDsKKwogdm9p ZCBmZl9tcGVnNF9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMsCiAgICAgICAgICAgICAgICAg ICAgICAgICBpbnQxNl90IGJsb2NrWzZdWzY0XSwKICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCBtb3Rpb25feCwgaW50IG1vdGlvbl95KTsKIHZvaWQgZmZfc2V0X21wZWc0X3RpbWUoTXBlZ0Vu Y0NvbnRleHQgKnMpOwotaW50IGZmX21wZWc0X2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWlu RW5jQ29udGV4dCAqbSk7CiAKIHZvaWQgZmZfbXBlZzRfZW5jb2RlX3ZpZGVvX3BhY2tldF9oZWFk ZXIoTXBlZ0VuY0NvbnRleHQgKnMpOwogdm9pZCBmZl9tcGVnNF9zdHVmZmluZyhQdXRCaXRDb250 ZXh0ICpwYmMpOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJh dmNvZGVjL21wZWd2aWRlb19lbmMuYwppbmRleCBkNGY0ZjgyNWZmLi4wM2E4YWUyNjg3IDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2 aWRlb19lbmMuYwpAQCAtNjYsNyArNjYsNiBAQAogI2luY2x1ZGUgInFwZWxkc3AuaCIKICNpbmNs dWRlICJmYWFuZGN0LmgiCiAjaW5jbHVkZSAiYWFuZGN0dGFiLmgiCi0jaW5jbHVkZSAiZmx2ZW5j LmgiCiAjaW5jbHVkZSAibXBlZzR2aWRlby5oIgogI2luY2x1ZGUgIm1wZWc0dmlkZW9kYXRhLmgi CiAjaW5jbHVkZSAibXBlZzR2aWRlb2VuYy5oIgpAQCAtODA5LDEyICs4MDgsMTcgQEAgYXZfY29s ZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAgICAg YXZjdHgtPmRlbGF5ID0gMDsKICAgICAgICAgcy0+bG93X2RlbGF5ID0gMTsKICAgICAgICAgYnJl YWs7CisjaWYgQ09ORklHX1JWMTBfRU5DT0RFUgogICAgIGNhc2UgQVZfQ09ERUNfSURfUlYxMDoK KyAgICAgICAgbS0+ZW5jb2RlX3BpY3R1cmVfaGVhZGVyID0gZmZfcnYxMF9lbmNvZGVfcGljdHVy ZV9oZWFkZXI7CiAgICAgICAgIHMtPm91dF9mb3JtYXQgPSBGTVRfSDI2MzsKICAgICAgICAgYXZj dHgtPmRlbGF5ICA9IDA7CiAgICAgICAgIHMtPmxvd19kZWxheSAgPSAxOwogICAgICAgICBicmVh azsKKyNlbmRpZgorI2lmIENPTkZJR19SVjIwX0VOQ09ERVIKICAgICBjYXNlIEFWX0NPREVDX0lE X1JWMjA6CisgICAgICAgIG0tPmVuY29kZV9waWN0dXJlX2hlYWRlciA9IGZmX3J2MjBfZW5jb2Rl X3BpY3R1cmVfaGVhZGVyOwogICAgICAgICBzLT5vdXRfZm9ybWF0ICAgICAgPSBGTVRfSDI2MzsK ICAgICAgICAgYXZjdHgtPmRlbGF5ICAgICAgID0gMDsKICAgICAgICAgcy0+bG93X2RlbGF5ICAg ICAgID0gMTsKQEAgLTgyNCw2ICs4MjgsNyBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5jb2RlX2lu aXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgICAgICBzLT5sb29wX2ZpbHRlciAgICAgPSAx OwogICAgICAgICBzLT51bnJlc3RyaWN0ZWRfbXYgPSAwOwogICAgICAgICBicmVhazsKKyNlbmRp ZgogICAgIGNhc2UgQVZfQ09ERUNfSURfTVBFRzQ6CiAgICAgICAgIHMtPm91dF9mb3JtYXQgICAg ICA9IEZNVF9IMjYzOwogICAgICAgICBzLT5oMjYzX3ByZWQgICAgICAgPSAxOwpAQCAtOTk2LDEw ICsxMDAxLDEwIEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4 dCAqYXZjdHgpCiAgICAgfQogCiAgICAgaWYgKENPTkZJR19IMjYzX0VOQ09ERVIgJiYgcy0+b3V0 X2Zvcm1hdCA9PSBGTVRfSDI2MykgewotICAgICAgICBmZl9oMjYzX2VuY29kZV9pbml0KHMpOwor ICAgICAgICBmZl9oMjYzX2VuY29kZV9pbml0KG0pOwogI2lmIENPTkZJR19NU01QRUc0RU5DCiAg ICAgICAgIGlmIChzLT5tc21wZWc0X3ZlcnNpb24gIT0gTVNNUDRfVU5VU0VEKQotICAgICAgICAg ICAgZmZfbXNtcGVnNF9lbmNvZGVfaW5pdChzKTsKKyAgICAgICAgICAgIGZmX21zbXBlZzRfZW5j b2RlX2luaXQobSk7CiAjZW5kaWYKICAgICB9CiAKQEAgLTM4ODgsNTAgKzM4OTMsOSBAQCBzdGF0 aWMgaW50IGVuY29kZV9waWN0dXJlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBjb25zdCBB VlBhY2tldCAqcGt0KQogCiAgICAgcy0+bWJfeCA9IHMtPm1iX3kgPSAwOwogICAgIHMtPmxhc3Rf Yml0cz0gcHV0X2JpdHNfY291bnQoJnMtPnBiKTsKLSAgICBzd2l0Y2gocy0+b3V0X2Zvcm1hdCkg ewotI2lmIENPTkZJR19NSlBFR19FTkNPREVSIHx8IENPTkZJR19BTVZfRU5DT0RFUgotICAgIGNh c2UgRk1UX01KUEVHOgotICAgICAgICBmZl9tanBlZ19hbXZfZW5jb2RlX3BpY3R1cmVfaGVhZGVy KHMpOwotICAgICAgICBicmVhazsKLSNlbmRpZgotICAgIGNhc2UgRk1UX1NQRUVESFE6Ci0gICAg ICAgIGlmIChDT05GSUdfU1BFRURIUV9FTkNPREVSKQotICAgICAgICAgICAgZmZfc3BlZWRocV9l bmNvZGVfcGljdHVyZV9oZWFkZXIocyk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgRk1UX0gy NjE6Ci0gICAgICAgIGlmIChDT05GSUdfSDI2MV9FTkNPREVSKQotICAgICAgICAgICAgZmZfaDI2 MV9lbmNvZGVfcGljdHVyZV9oZWFkZXIocyk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgRk1U X0gyNjM6Ci0gICAgICAgIGlmIChDT05GSUdfV01WMl9FTkNPREVSICYmIHMtPmNvZGVjX2lkID09 IEFWX0NPREVDX0lEX1dNVjIpCi0gICAgICAgICAgICBmZl93bXYyX2VuY29kZV9waWN0dXJlX2hl YWRlcihzKTsKLSNpZiBDT05GSUdfTVNNUEVHNEVOQwotICAgICAgICBlbHNlIGlmIChzLT5tc21w ZWc0X3ZlcnNpb24gIT0gTVNNUDRfVU5VU0VEKQotICAgICAgICAgICAgZmZfbXNtcGVnNF9lbmNv ZGVfcGljdHVyZV9oZWFkZXIocyk7Ci0jZW5kaWYKLSAgICAgICAgZWxzZSBpZiAoQ09ORklHX01Q RUc0X0VOQ09ERVIgJiYgcy0+aDI2M19wcmVkKSB7Ci0gICAgICAgICAgICByZXQgPSBmZl9tcGVn NF9lbmNvZGVfcGljdHVyZV9oZWFkZXIobSk7Ci0gICAgICAgICAgICBpZiAocmV0IDwgMCkKLSAg ICAgICAgICAgICAgICByZXR1cm4gcmV0OwotICAgICAgICB9IGVsc2UgaWYgKENPTkZJR19SVjEw X0VOQ09ERVIgJiYgcy0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfUlYxMCkgewotICAgICAgICAg ICAgcmV0ID0gZmZfcnYxMF9lbmNvZGVfcGljdHVyZV9oZWFkZXIocyk7Ci0gICAgICAgICAgICBp ZiAocmV0IDwgMCkKLSAgICAgICAgICAgICAgICByZXR1cm4gcmV0OwotICAgICAgICB9Ci0gICAg ICAgIGVsc2UgaWYgKENPTkZJR19SVjIwX0VOQ09ERVIgJiYgcy0+Y29kZWNfaWQgPT0gQVZfQ09E RUNfSURfUlYyMCkKLSAgICAgICAgICAgIGZmX3J2MjBfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKHMp OwotICAgICAgICBlbHNlIGlmIChDT05GSUdfRkxWX0VOQ09ERVIgJiYgcy0+Y29kZWNfaWQgPT0g QVZfQ09ERUNfSURfRkxWMSkKLSAgICAgICAgICAgIGZmX2Zsdl9lbmNvZGVfcGljdHVyZV9oZWFk ZXIocyk7Ci0gICAgICAgIGVsc2UgaWYgKENPTkZJR19IMjYzX0VOQ09ERVIpCi0gICAgICAgICAg ICBmZl9oMjYzX2VuY29kZV9waWN0dXJlX2hlYWRlcihzKTsKLSAgICAgICAgYnJlYWs7Ci0gICAg Y2FzZSBGTVRfTVBFRzE6Ci0gICAgICAgIGlmIChDT05GSUdfTVBFRzFWSURFT19FTkNPREVSIHx8 IENPTkZJR19NUEVHMlZJREVPX0VOQ09ERVIpCi0gICAgICAgICAgICBmZl9tcGVnMV9lbmNvZGVf cGljdHVyZV9oZWFkZXIobSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAg IGF2X2Fzc2VydDAoMCk7Ci0gICAgfQorICAgIHJldCA9IG0tPmVuY29kZV9waWN0dXJlX2hlYWRl cihtKTsKKyAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIHJldDsKICAgICBiaXRzPSBw dXRfYml0c19jb3VudCgmcy0+cGIpOwogICAgIG0tPmhlYWRlcl9iaXRzID0gYml0cyAtIHMtPmxh c3RfYml0czsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCBiL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKaW5kZXggOWM3MGZlNmQ3MS4uY2Q4MmIxNjU5MCAxMDA2NDQK LS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRl b2VuYy5oCkBAIC03NCw2ICs3NCw4IEBAIHR5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250ZXh0 IHsKICAgICBpbnQgZnJhbWVfc2tpcF9jbXA7CiAgICAgbWVfY21wX2Z1bmMgZnJhbWVfc2tpcF9j bXBfZm47CiAKKyAgICBpbnQgKCplbmNvZGVfcGljdHVyZV9oZWFkZXIpKHN0cnVjdCBNUFZNYWlu RW5jQ29udGV4dCAqbSk7CisKICAgICAvKiBiaXQgcmF0ZSBjb250cm9sICovCiAgICAgaW50NjRf dCB0b3RhbF9iaXRzOwogICAgIGludCBmcmFtZV9iaXRzOyAgICAgICAgICAgICAgICAvLy88IGJp dHMgdXNlZCBmb3IgdGhlIGN1cnJlbnQgZnJhbWUKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXNt cGVnNGVuYy5jIGIvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmMKaW5kZXggOThiNzJlNGQ1OC4uMDFk NTcwNzM3MCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmMKKysrIGIvbGliYXZj b2RlYy9tc21wZWc0ZW5jLmMKQEAgLTEzNSwyMCArMTM1LDYgQEAgc3RhdGljIGF2X2NvbGQgdm9p ZCBtc21wZWc0X2VuY29kZV9pbml0X3N0YXRpYyh2b2lkKQogICAgIH0KIH0KIAotYXZfY29sZCB2 b2lkIGZmX21zbXBlZzRfZW5jb2RlX2luaXQoTXBlZ0VuY0NvbnRleHQgKnMpCi17Ci0gICAgc3Rh dGljIEFWT25jZSBpbml0X3N0YXRpY19vbmNlID0gQVZfT05DRV9JTklUOwotCi0gICAgZmZfbXNt cGVnNF9jb21tb25faW5pdChzKTsKLSAgICBpZiAocy0+bXNtcGVnNF92ZXJzaW9uID49IE1TTVA0 X1dNVjEpIHsKLSAgICAgICAgcy0+bWluX3Fjb2VmZiA9IC0yNTU7Ci0gICAgICAgIHMtPm1heF9x Y29lZmYgPSAgMjU1OwotICAgIH0KLQotICAgIC8qIGluaXQgdmFyaW91cyBlbmNvZGluZyB0YWJs ZXMgKi8KLSAgICBmZl90aHJlYWRfb25jZSgmaW5pdF9zdGF0aWNfb25jZSwgbXNtcGVnNF9lbmNv ZGVfaW5pdF9zdGF0aWMpOwotfQotCiBzdGF0aWMgdm9pZCBmaW5kX2Jlc3RfdGFibGVzKE1TTVBF RzRFbmNDb250ZXh0ICptcykKIHsKICAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtcy0+ bS5zOwpAQCAtMjE1LDkgKzIwMSwxMCBAQCBzdGF0aWMgdm9pZCBmaW5kX2Jlc3RfdGFibGVzKE1T TVBFRzRFbmNDb250ZXh0ICptcykKIH0KIAogLyogd3JpdGUgTVNNUEVHNCBjb21wYXRpYmxlIGZy YW1lIGhlYWRlciAqLwotdm9pZCBmZl9tc21wZWc0X2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVn RW5jQ29udGV4dCAqIHMpCitzdGF0aWMgaW50IG1zbXBlZzRfZW5jb2RlX3BpY3R1cmVfaGVhZGVy KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogewotICAgIE1TTVBFRzRFbmNDb250ZXh0ICpj b25zdCBtcyA9IChNU01QRUc0RW5jQ29udGV4dCopczsKKyAgICBNU01QRUc0RW5jQ29udGV4dCAq Y29uc3QgbXMgPSAoTVNNUEVHNEVuY0NvbnRleHQqKW07CisgICAgTXBlZ0VuY0NvbnRleHQgKmNv bnN0IHMgPSAmbS0+czsKIAogICAgIGZpbmRfYmVzdF90YWJsZXMobXMpOwogCkBAIC0yNzUsNiAr MjYyLDggQEAgdm9pZCBmZl9tc21wZWc0X2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29u dGV4dCAqIHMpCiAKICAgICBzLT5lc2MzX2xldmVsX2xlbmd0aD0gMDsKICAgICBzLT5lc2MzX3J1 bl9sZW5ndGg9IDA7CisKKyAgICByZXR1cm4gMDsKIH0KIAogdm9pZCBmZl9tc21wZWc0X2VuY29k ZV9leHRfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICogcykKQEAgLTY3NCw2ICs2NjMsMjUgQEAgdm9p ZCBmZl9tc21wZWc0X2VuY29kZV9ibG9jayhNcGVnRW5jQ29udGV4dCAqIHMsIGludDE2X3QgKiBi bG9jaywgaW50IG4pCiAgICAgfQogfQogCithdl9jb2xkIHZvaWQgZmZfbXNtcGVnNF9lbmNvZGVf aW5pdChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKK3sKKyAgICBNcGVnRW5jQ29udGV4dCAq Y29uc3QgcyA9ICZtLT5zOworICAgIHN0YXRpYyBBVk9uY2UgaW5pdF9zdGF0aWNfb25jZSA9IEFW X09OQ0VfSU5JVDsKKworICAgIGZmX21zbXBlZzRfY29tbW9uX2luaXQocyk7CisKKyAgICBpZiAo cy0+bXNtcGVnNF92ZXJzaW9uIDw9IE1TTVA0X1dNVjEpCisgICAgICAgIG0tPmVuY29kZV9waWN0 dXJlX2hlYWRlciA9IG1zbXBlZzRfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOworCisgICAgaWYgKHMt Pm1zbXBlZzRfdmVyc2lvbiA+PSBNU01QNF9XTVYxKSB7CisgICAgICAgIHMtPm1pbl9xY29lZmYg PSAtMjU1OworICAgICAgICBzLT5tYXhfcWNvZWZmID0gIDI1NTsKKyAgICB9CisKKyAgICAvKiBp bml0IHZhcmlvdXMgZW5jb2RpbmcgdGFibGVzICovCisgICAgZmZfdGhyZWFkX29uY2UoJmluaXRf c3RhdGljX29uY2UsIG1zbXBlZzRfZW5jb2RlX2luaXRfc3RhdGljKTsKK30KKwogY29uc3QgRkZD b2RlYyBmZl9tc21wZWc0djJfZW5jb2RlciA9IHsKICAgICAucC5uYW1lICAgICAgICAgPSAibXNt cGVnNHYyIiwKICAgICBDT0RFQ19MT05HX05BTUUoIk1QRUctNCBwYXJ0IDIgTWljcm9zb2Z0IHZh cmlhbnQgdmVyc2lvbiAyIiksCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRlbmMuaCBi L2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5oCmluZGV4IDcyOTkyMTc2ZGUuLjU1MTFlMDEyODMgMTAw NjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5oCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVn NGVuYy5oCkBAIC0zMyw4ICszMyw3IEBAIHR5cGVkZWYgc3RydWN0IE1TTVBFRzRFbmNDb250ZXh0 IHsKICAgICB1bnNpZ25lZCBhY19zdGF0c1syXVsyXVtNQVhfTEVWRUwgKyAxXVtNQVhfUlVOICsg MV1bMl07CiB9IE1TTVBFRzRFbmNDb250ZXh0OwogCi12b2lkIGZmX21zbXBlZzRfZW5jb2RlX2lu aXQoTXBlZ0VuY0NvbnRleHQgKnMpOwotdm9pZCBmZl9tc21wZWc0X2VuY29kZV9waWN0dXJlX2hl YWRlcihNcGVnRW5jQ29udGV4dCAqcyk7Cit2b2lkIGZmX21zbXBlZzRfZW5jb2RlX2luaXQoTVBW TWFpbkVuY0NvbnRleHQgKm0pOwogdm9pZCBmZl9tc21wZWc0X2VuY29kZV9leHRfaGVhZGVyKE1w ZWdFbmNDb250ZXh0ICpzKTsKIHZvaWQgZmZfbXNtcGVnNF9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRl eHQgKnMsIGludDE2X3QgYmxvY2tbNl1bNjRdLAogICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgbW90aW9uX3gsIGludCBtb3Rpb25feSk7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3J2MTBl bmMuYyBiL2xpYmF2Y29kZWMvcnYxMGVuYy5jCmluZGV4IGQ1NWZhN2MyYjAuLjBiNTA2NTIxMmQg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcnYxMGVuYy5jCisrKyBiL2xpYmF2Y29kZWMvcnYxMGVu Yy5jCkBAIC0zMSw4ICszMSw5IEBACiAjaW5jbHVkZSAicHV0X2JpdHMuaCIKICNpbmNsdWRlICJy djEwZW5jLmgiCiAKLWludCBmZl9ydjEwX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29u dGV4dCAqcykKK2ludCBmZl9ydjEwX2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29u dGV4dCAqY29uc3QgbSkKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwog ICAgIGludCBmdWxsX2ZyYW1lPSAwOwogCiAgICAgYWxpZ25fcHV0X2JpdHMoJnMtPnBiKTsKZGlm ZiAtLWdpdCBhL2xpYmF2Y29kZWMvcnYxMGVuYy5oIGIvbGliYXZjb2RlYy9ydjEwZW5jLmgKaW5k ZXggZmMzNjY1ZTgzOS4uNWFhNzI1MGU4NyAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9ydjEwZW5j LmgKKysrIGIvbGliYXZjb2RlYy9ydjEwZW5jLmgKQEAgLTIxLDkgKzIxLDkgQEAKICNpZm5kZWYg QVZDT0RFQ19SVjEwRU5DX0gKICNkZWZpbmUgQVZDT0RFQ19SVjEwRU5DX0gKIAotI2luY2x1ZGUg Im1wZWd2aWRlby5oIgordHlwZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgTVBWTWFpbkVu Y0NvbnRleHQ7CiAKLWludCBmZl9ydjEwX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29u dGV4dCAqcyk7Ci12b2lkIGZmX3J2MjBfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250 ZXh0ICpzKTsKK2ludCBmZl9ydjEwX2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29u dGV4dCAqbSk7CitpbnQgZmZfcnYyMF9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVuY0Nv bnRleHQgKm0pOwogCiAjZW5kaWYgLyogQVZDT0RFQ19SVjEwRU5DX0ggKi8KZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvcnYyMGVuYy5jIGIvbGliYXZjb2RlYy9ydjIwZW5jLmMKaW5kZXggY2FjZGE2 ZmRkYS4uMWE1OWZkNGM3MCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9ydjIwZW5jLmMKKysrIGIv bGliYXZjb2RlYy9ydjIwZW5jLmMKQEAgLTM0LDcgKzM0LDEwIEBACiAjaW5jbHVkZSAicHV0X2Jp dHMuaCIKICNpbmNsdWRlICJydjEwZW5jLmgiCiAKLXZvaWQgZmZfcnYyMF9lbmNvZGVfcGljdHVy ZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpIHsKK2ludCBmZl9ydjIwX2VuY29kZV9waWN0dXJl X2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKK3sKKyAgICBNcGVnRW5jQ29udGV4 dCAqY29uc3QgcyA9ICZtLT5zOworCiAgICAgcHV0X2JpdHMoJnMtPnBiLCAyLCBzLT5waWN0X3R5 cGUpOyAvL0kgMCB2cy4gMSA/CiAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCAwKTsgICAgIC8qIHVu a25vd24gYml0ICovCiAgICAgcHV0X2JpdHMoJnMtPnBiLCA1LCBzLT5xc2NhbGUpOwpAQCAtNjAs NiArNjMsNyBAQCB2b2lkIGZmX3J2MjBfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250 ZXh0ICpzKSB7CiAgICAgICAgIHMtPnlfZGNfc2NhbGVfdGFibGU9CiAgICAgICAgIHMtPmNfZGNf c2NhbGVfdGFibGU9IGZmX21wZWcxX2RjX3NjYWxlX3RhYmxlOwogICAgIH0KKyAgICByZXR1cm4g MDsKIH0KIAogY29uc3QgRkZDb2RlYyBmZl9ydjIwX2VuY29kZXIgPSB7CmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL3NwZWVkaHFlbmMuYyBiL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5jCmluZGV4IGRh Y2NkMGMzYmYuLjFiYTVkY2M2OGYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5j CisrKyBiL2xpYmF2Y29kZWMvc3BlZWRocWVuYy5jCkBAIC05NSw5ICs5NSwxMCBAQCBzdGF0aWMg YXZfY29sZCB2b2lkIHNwZWVkaHFfaW5pdF9zdGF0aWNfZGF0YSh2b2lkKQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBmZl9zcGVlZGhxX3ZsY190YWJsZSwgdW5pX3NwZWVkaHFfYWNfdmxj X2xlbik7CiB9CiAKLXZvaWQgZmZfc3BlZWRocV9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0Vu Y0NvbnRleHQgKnMpCitzdGF0aWMgaW50IHNwZWVkaHFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1Q Vk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogewotICAgIFNwZWVkSFFFbmNDb250ZXh0ICpjdHgg PSAoU3BlZWRIUUVuY0NvbnRleHQqKXM7CisgICAgU3BlZWRIUUVuY0NvbnRleHQgKmNvbnN0IGN0 eCA9IChTcGVlZEhRRW5jQ29udGV4dCopbTsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9 ICZtLT5zOwogCiAgICAgcHV0X2JpdHNfbGUoJnMtPnBiLCA4LCAxMDAgLSBzLT5xc2NhbGUgKiAy KTsgIC8qIEZJWE1FIHdoeSBkb3VibGVkICovCiAgICAgcHV0X2JpdHNfbGUoJnMtPnBiLCAyNCwg NCk7ICAvKiBubyBzZWNvbmQgZmllbGQgKi8KQEAgLTEwNSw2ICsxMDYsOCBAQCB2b2lkIGZmX3Nw ZWVkaHFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIGN0eC0+ c2xpY2Vfc3RhcnQgPSA0OwogICAgIC8qIGxlbmd0aCBvZiBmaXJzdCBzbGljZSwgd2lsbCBiZSBm aWxsZWQgb3V0IGxhdGVyICovCiAgICAgcHV0X2JpdHNfbGUoJnMtPnBiLCAyNCwgMCk7CisKKyAg ICByZXR1cm4gMDsKIH0KIAogdm9pZCBmZl9zcGVlZGhxX2VuZF9zbGljZShNcGVnRW5jQ29udGV4 dCAqcykKQEAgLTIzMCw3ICsyMzMsOCBAQCB2b2lkIGZmX3NwZWVkaHFfZW5jb2RlX21iKE1wZWdF bmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzEyXVs2NF0pCiBzdGF0aWMgYXZfY29sZCBpbnQg c3BlZWRocV9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7CiAgICAgc3RhdGlj IEFWT25jZSBpbml0X3N0YXRpY19vbmNlID0gQVZfT05DRV9JTklUOwotICAgIE1wZWdFbmNDb250 ZXh0ICpjb25zdCBzID0gYXZjdHgtPnByaXZfZGF0YTsKKyAgICBNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSA9IGF2Y3R4LT5wcml2X2RhdGE7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMg PSAmbS0+czsKICAgICBpbnQgcmV0OwogCiAgICAgaWYgKGF2Y3R4LT53aWR0aCA+IDY1NTAwIHx8 IGF2Y3R4LT5oZWlnaHQgPiA2NTUwMCkgewpAQCAtMjU4LDYgKzI2Miw4IEBAIHN0YXRpYyBhdl9j b2xkIGludCBzcGVlZGhxX2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICAg ICAgYXZfYXNzZXJ0MCgwKTsKICAgICB9CiAKKyAgICBtLT5lbmNvZGVfcGljdHVyZV9oZWFkZXIg PSBzcGVlZGhxX2VuY29kZV9waWN0dXJlX2hlYWRlcjsKKwogICAgIHMtPm1pbl9xY29lZmYgPSAt MjA0ODsKICAgICBzLT5tYXhfcWNvZWZmID0gMjA0NzsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9zcGVlZGhxZW5jLmggYi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaAppbmRleCA2NmVmN2VlMDIz Li5iMGU2NjYyMjc5IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaAorKysgYi9s aWJhdmNvZGVjL3NwZWVkaHFlbmMuaApAQCAtMzYsNyArMzYsNiBAQAogdm9pZCBmZl9zcGVlZGhx X2VuY29kZV9jbG9zZShNcGVnRW5jQ29udGV4dCAqcyk7CiB2b2lkIGZmX3NwZWVkaHFfZW5jb2Rl X21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzEyXVs2NF0pOwogCi12b2lkIGZm X3NwZWVkaHFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKTsKIHZvaWQg ZmZfc3BlZWRocV9lbmRfc2xpY2UoTXBlZ0VuY0NvbnRleHQgKnMpOwogCiBzdGF0aWMgaW5saW5l IGludCBmZl9zcGVlZGhxX21iX3Jvd3NfaW5fc2xpY2UoaW50IHNsaWNlX251bSwgaW50IG1iX2hl aWdodCkKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvd212MmVuYy5jIGIvbGliYXZjb2RlYy93bXYy ZW5jLmMKaW5kZXggNTVmY2M5MTQ4NC4uZDcwYTY4MGZiMyAxMDA2NDQKLS0tIGEvbGliYXZjb2Rl Yy93bXYyZW5jLmMKKysrIGIvbGliYXZjb2RlYy93bXYyZW5jLmMKQEAgLTczLDkgKzczLDEwIEBA IHN0YXRpYyBpbnQgZW5jb2RlX2V4dF9oZWFkZXIoV01WMkVuY0NvbnRleHQgKncpCiAgICAgcmV0 dXJuIDA7CiB9CiAKLWludCBmZl93bXYyX2VuY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29u dGV4dCAqcykKK3N0YXRpYyBpbnQgd212Ml9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVu Y0NvbnRleHQgKmNvbnN0IG0pCiB7Ci0gICAgV01WMkVuY0NvbnRleHQgKmNvbnN0IHcgPSAoV01W MkVuY0NvbnRleHQgKikgczsKKyAgICBXTVYyRW5jQ29udGV4dCAqY29uc3QgdyA9IChXTVYyRW5j Q29udGV4dCAqKSBtOworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CiAKICAg ICBwdXRfYml0cygmcy0+cGIsIDEsIHMtPnBpY3RfdHlwZSAtIDEpOwogICAgIGlmIChzLT5waWN0 X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kpCkBAIC0yMjIsNiArMjIzLDcgQEAgc3RhdGljIGF2 X2NvbGQgaW50IHdtdjJfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIE1w ZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJnctPm1zbXBlZzQubS5zOwogICAgIGludCByZXQ7CiAK KyAgICB3LT5tc21wZWc0Lm0uZW5jb2RlX3BpY3R1cmVfaGVhZGVyID0gd212Ml9lbmNvZGVfcGlj dHVyZV9oZWFkZXI7CiAgICAgcy0+cHJpdmF0ZV9jdHggPSAmdy0+Y29tbW9uOwogICAgIHJldCA9 IGZmX21wdl9lbmNvZGVfaW5pdChhdmN0eCk7CiAgICAgaWYgKHJldCA8IDApCmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL3dtdjJlbmMuaCBiL2xpYmF2Y29kZWMvd212MmVuYy5oCmluZGV4IDI2MzI2 NWFjZjMuLjU5MDQ2YzZhMDcgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvd212MmVuYy5oCisrKyBi L2xpYmF2Y29kZWMvd212MmVuYy5oCkBAIC0yMyw3ICsyMyw2IEBACiAKICNpbmNsdWRlICJtcGVn dmlkZW8uaCIKIAotaW50IGZmX3dtdjJfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250 ZXh0ICogcyk7CiB2b2lkIGZmX3dtdjJfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICogcywgaW50 MTZfdCBibG9ja1s2XVs2NF0sCiAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25feCwg aW50IG1vdGlvbl95KTsKIAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0031-avcodec-mpegvideo-Move-fcode_tab-to-MPVMainEncContex.patch" Content-Disposition: attachment; filename*0="0031-avcodec-mpegvideo-Move-fcode_tab-to-MPVMainEncContex.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA0NzEyYzVhOWQ1ODNjNTI5ZWVlZGYyMWI2ZjA2ZWRkMDQyNWY1ZDBjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCA3IEZlYiAyMDIyIDEwOjI0OjM4ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAzMS83N10gYXZjb2RlYy9tcGVndmlkZW86IE1vdmUgZmNvZGVfdGFiIHRvIE1Q Vk1haW5FbmNDb250ZXh0CgpPbmx5IHVzZWQgYnkgdGhlIG1haW4gZW5jb2RpbmcgdGhyZWFkLgoK U2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0 bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMgICAgfCAgMiArLQogbGliYXZj b2RlYy9tb3Rpb25fZXN0LmMgICAgfCAgNiArKysrLS0KIGxpYmF2Y29kZWMvbW90aW9uX2VzdC5o ICAgIHwgIDMgKystCiBsaWJhdmNvZGVjL21wZWcxMmVuYy5jICAgICB8ICAyICstCiBsaWJhdmNv ZGVjL21wZWc0dmlkZW9lbmMuYyB8ICAyICstCiBsaWJhdmNvZGVjL21wZWd2aWRlby5oICAgICB8 ICAxIC0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgMjMgKysrKysrKysrKysrLS0tLS0t LS0tLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggIHwgIDIgKysKIDggZmlsZXMgY2hhbmdl ZCwgMjMgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZj b2RlYy9pdHVoMjYzZW5jLmMgYi9saWJhdmNvZGVjL2l0dWgyNjNlbmMuYwppbmRleCBjODJlMGNl ZmZkLi43MzlmOTU5ZTQwIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2l0dWgyNjNlbmMuYworKysg Yi9saWJhdmNvZGVjL2l0dWgyNjNlbmMuYwpAQCAtODQ4LDcgKzg0OCw3IEBAIGF2X2NvbGQgdm9p ZCBmZl9oMjYzX2VuY29kZV9pbml0KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAg ICBicmVhazsKICAgICBjYXNlIEFWX0NPREVDX0lEX0gyNjNQOgogICAgICAgICBpZihzLT51bXZw bHVzKQotICAgICAgICAgICAgcy0+ZmNvZGVfdGFiID0gdW12X2Zjb2RlX3RhYiArIE1BWF9NVjsK KyAgICAgICAgICAgIG0tPmZjb2RlX3RhYiA9IHVtdl9mY29kZV90YWIgKyBNQVhfTVY7CiAgICAg ICAgIGlmKHMtPm1vZGlmaWVkX3F1YW50KXsKICAgICAgICAgICAgIHMtPm1pbl9xY29lZmY9IC0y MDQ3OwogICAgICAgICAgICAgcy0+bWF4X3Fjb2VmZj0gIDIwNDc7CmRpZmYgLS1naXQgYS9saWJh dmNvZGVjL21vdGlvbl9lc3QuYyBiL2xpYmF2Y29kZWMvbW90aW9uX2VzdC5jCmluZGV4IGY3Yzgz MDU4NDcuLjdjMDhmZTUzZWIgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbW90aW9uX2VzdC5jCisr KyBiL2xpYmF2Y29kZWMvbW90aW9uX2VzdC5jCkBAIC0xNTk2LDEyICsxNTk2LDE0IEBAIHZvaWQg ZmZfZXN0aW1hdGVfYl9mcmFtZV9tb3Rpb24oTXBlZ0VuY0NvbnRleHQgKiBzLAogfQogCiAvKiBm aW5kIGJlc3QgZl9jb2RlIGZvciBNRSB3aGljaCBkbyB1bmxpbWl0ZWQgc2VhcmNoZXMgKi8KLWlu dCBmZl9nZXRfYmVzdF9mY29kZShNcGVnRW5jQ29udGV4dCAqIHMsIGNvbnN0IGludDE2X3QgKCpt dl90YWJsZSlbMl0sIGludCB0eXBlKQoraW50IGZmX2dldF9iZXN0X2Zjb2RlKE1QVk1haW5FbmND b250ZXh0ICpjb25zdCBtLCBjb25zdCBpbnQxNl90ICgqbXZfdGFibGUpWzJdLCBpbnQgdHlwZSkK IHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOworCiAgICAgaWYgKHMtPm1v dGlvbl9lc3QgIT0gRkZfTUVfWkVSTykgewogICAgICAgICBpbnQgc2NvcmVbOF07CiAgICAgICAg IGludCBpLCB5LCByYW5nZT0gcy0+YXZjdHgtPm1lX3JhbmdlID8gcy0+YXZjdHgtPm1lX3Jhbmdl IDogKElOVF9NQVgvMik7Ci0gICAgICAgIGNvbnN0IHVpbnQ4X3QgKiBmY29kZV90YWIgPSBzLT5m Y29kZV90YWI7CisgICAgICAgIGNvbnN0IHVpbnQ4X3QgKiBmY29kZV90YWIgPSBtLT5mY29kZV90 YWI7CiAgICAgICAgIGludCBiZXN0X2Zjb2RlPS0xOwogICAgICAgICBpbnQgYmVzdF9zY29yZT0t MTAwMDAwMDA7CiAKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbW90aW9uX2VzdC5oIGIvbGliYXZj b2RlYy9tb3Rpb25fZXN0LmgKaW5kZXggMTJmN2NkNDNhYi4uZDhhMmNhYjNhMCAxMDA2NDQKLS0t IGEvbGliYXZjb2RlYy9tb3Rpb25fZXN0LmgKKysrIGIvbGliYXZjb2RlYy9tb3Rpb25fZXN0LmgK QEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJxcGVsZHNwLmgiCiAKIHN0cnVjdCBNcGVnRW5j Q29udGV4dDsKK3R5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250ZXh0IE1QVk1haW5FbmNDb250 ZXh0OwogCiAjaWYgQVJDSF9JQTY0IC8vIExpbWl0IHN0YXRpYyBhcnJheXMgdG8gYXZvaWQgZ2Nj IGZhaWxpbmcgInNob3J0IGRhdGEgc2VnbWVudCBvdmVyZmxvd2VkIgogI2RlZmluZSBNQVhfTVYg MTAyNApAQCAtMTM2LDcgKzEzNyw3IEBAIGludCBmZl9lcHpzX21vdGlvbl9zZWFyY2goc3RydWN0 IE1wZWdFbmNDb250ZXh0ICpzLCBpbnQgKm14X3B0ciwgaW50ICpteV9wdHIsCiBpbnQgZmZfZ2V0 X21iX3Njb3JlKHN0cnVjdCBNcGVnRW5jQ29udGV4dCAqcywgaW50IG14LCBpbnQgbXksIGludCBz cmNfaW5kZXgsCiAgICAgICAgICAgICAgICAgICAgIGludCByZWZfaW5kZXgsIGludCBzaXplLCBp bnQgaCwgaW50IGFkZF9yYXRlKTsKIAotaW50IGZmX2dldF9iZXN0X2Zjb2RlKHN0cnVjdCBNcGVn RW5jQ29udGV4dCAqcywKK2ludCBmZl9nZXRfYmVzdF9mY29kZShNUFZNYWluRW5jQ29udGV4dCAq bSwKICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQxNl90ICgqbXZfdGFibGUpWzJdLCBp bnQgdHlwZSk7CiAKIHZvaWQgZmZfZml4X2xvbmdfcF9tdnMoc3RydWN0IE1wZWdFbmNDb250ZXh0 ICpzLCBpbnQgdHlwZSk7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWcxMmVuYy5jIGIvbGli YXZjb2RlYy9tcGVnMTJlbmMuYwppbmRleCBmMjhhNDFmNWZmLi5iNjdmNzBjNWNkIDEwMDY0NAot LS0gYS9saWJhdmNvZGVjL21wZWcxMmVuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMK QEAgLTExMTMsNyArMTExMyw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNv ZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgbS0+ZW5jb2RlX3BpY3R1cmVfaGVhZGVyID0gbXBlZzFf ZW5jb2RlX3BpY3R1cmVfaGVhZGVyOwogCiAgICAgcy0+bWUubXZfcGVuYWx0eSA9IG12X3BlbmFs dHk7Ci0gICAgcy0+ZmNvZGVfdGFiICAgICA9IGZjb2RlX3RhYiArIE1BWF9NVjsKKyAgICBtLT5m Y29kZV90YWIgICAgID0gZmNvZGVfdGFiICsgTUFYX01WOwogICAgIGlmIChhdmN0eC0+Y29kZWNf aWQgPT0gQVZfQ09ERUNfSURfTVBFRzFWSURFTykgewogICAgICAgICBzLT5taW5fcWNvZWZmID0g LTI1NTsKICAgICAgICAgcy0+bWF4X3Fjb2VmZiA9IDI1NTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29k ZWMvbXBlZzR2aWRlb2VuYy5jIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKaW5kZXggZjM0 ZWExZmNiNC4uY2MzYzY3NmUxOCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5j LmMKKysrIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKQEAgLTEzMTksNyArMTMxOSw3IEBA IHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAK ICAgICBtNC0+dGltZV9pbmNyZW1lbnRfYml0cyAgICAgPSBhdl9sb2cyKGF2Y3R4LT50aW1lX2Jh c2UuZGVuIC0gMSkgKyAxOwogCi0gICAgcy0+ZmNvZGVfdGFiICAgICAgICAgICAgICAgID0gZmNv ZGVfdGFiICsgTUFYX01WOworICAgIG0tPmZjb2RlX3RhYiAgICAgICAgICAgICAgICA9IGZjb2Rl X3RhYiArIE1BWF9NVjsKIAogICAgIHMtPm1pbl9xY29lZmYgICAgICAgICAgICAgICA9IC0yMDQ4 OwogICAgIHMtPm1heF9xY29lZmYgICAgICAgICAgICAgICA9IDIwNDc7CmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL21wZWd2aWRlby5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCBmY2M1 MWFmNDFhLi40OWU4MTU5NzY5IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisr KyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKQEAgLTI1Myw3ICsyNTMsNiBAQCB0eXBlZGVmIHN0 cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAgICAgaW50IG12WzJdWzRdWzJdOwogICAgIGludCBmaWVs ZF9zZWxlY3RbMl1bMl07CiAgICAgaW50IGxhc3RfbXZbMl1bMl1bMl07ICAgICAgICAgICAgIC8v LzwgbGFzdCBNViwgdXNlZCBmb3IgTVYgcHJlZGljdGlvbiBpbiBNUEVHLTEgJiBCLWZyYW1lIE1Q RUctNAotICAgIGNvbnN0IHVpbnQ4X3QgKmZjb2RlX3RhYjsgICAgICAgICAvLy88IHNtYWxsZXN0 IGZjb2RlIG5lZWRlZCBmb3IgZWFjaCBNVgogICAgIGludDE2X3QgZGlyZWN0X3NjYWxlX212WzJd WzY0XTsgICAvLy88IHByZWNvbXB1dGVkIHRvIGF2b2lkIGRpdmlzaW9ucyBpbiBmZl9tcGVnNF9z ZXRfZGlyZWN0X212CiAKICAgICBNb3Rpb25Fc3RDb250ZXh0IG1lOwpkaWZmIC0tZ2l0IGEvbGli YXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwppbmRl eCAwM2E4YWUyNjg3Li4wOGZjNzJlZGI0IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRl b19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwpAQCAtMjc4LDE0ICsyNzgs MTUgQEAgc3RhdGljIGF2X2NvbGQgdm9pZCBtcHZfZW5jb2RlX2luaXRfc3RhdGljKHZvaWQpCiAv KioKICAqIFNldCB0aGUgZ2l2ZW4gTXBlZ0VuY0NvbnRleHQgdG8gZGVmYXVsdHMgZm9yIGVuY29k aW5nLgogICovCi1zdGF0aWMgYXZfY29sZCB2b2lkIG1wdl9lbmNvZGVfZGVmYXVsdHMoTXBlZ0Vu Y0NvbnRleHQgKnMpCitzdGF0aWMgYXZfY29sZCB2b2lkIG1wdl9lbmNvZGVfZGVmYXVsdHMoTVBW TWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiB7CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMg PSAmbS0+czsKICAgICBzdGF0aWMgQVZPbmNlIGluaXRfc3RhdGljX29uY2UgPSBBVl9PTkNFX0lO SVQ7CiAKICAgICBmZl9tcHZfY29tbW9uX2RlZmF1bHRzKHMpOwogCi0gICAgaWYgKCFzLT5mY29k ZV90YWIpIHsKLSAgICAgICAgcy0+ZmNvZGVfdGFiID0gZGVmYXVsdF9mY29kZV90YWIgKyBNQVhf TVY7CisgICAgaWYgKCFtLT5mY29kZV90YWIpIHsKKyAgICAgICAgbS0+ZmNvZGVfdGFiID0gZGVm YXVsdF9mY29kZV90YWIgKyBNQVhfTVY7CiAgICAgICAgIGZmX3RocmVhZF9vbmNlKCZpbml0X3N0 YXRpY19vbmNlLCBtcHZfZW5jb2RlX2luaXRfc3RhdGljKTsKICAgICB9CiAgICAgaWYgKCFzLT55 X2RjX3NjYWxlX3RhYmxlKSB7CkBAIC00MjksNyArNDMwLDcgQEAgYXZfY29sZCBpbnQgZmZfbXB2 X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBpbnQgaSwgcmV0OwogICAg IGludCBtYl9hcnJheV9zaXplLCBtdl90YWJsZV9zaXplOwogCi0gICAgbXB2X2VuY29kZV9kZWZh dWx0cyhzKTsKKyAgICBtcHZfZW5jb2RlX2RlZmF1bHRzKG0pOwogCiAgICAgc3dpdGNoIChhdmN0 eC0+cGl4X2ZtdCkgewogICAgIGNhc2UgQVZfUElYX0ZNVF9ZVVZKNDQ0UDoKQEAgLTM3NzQsMTIg KzM3NzUsMTIgQEAgc3RhdGljIGludCBlbmNvZGVfcGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSwgY29uc3QgQVZQYWNrZXQgKnBrdCkKIAogICAgIGlmKCFzLT51bXZwbHVzKXsKICAg ICAgICAgaWYocy0+cGljdF90eXBlPT1BVl9QSUNUVVJFX1RZUEVfUCB8fCBzLT5waWN0X3R5cGU9 PUFWX1BJQ1RVUkVfVFlQRV9TKSB7Ci0gICAgICAgICAgICBzLT5mX2NvZGU9IGZmX2dldF9iZXN0 X2Zjb2RlKHMsIHMtPnBfbXZfdGFibGUsIENBTkRJREFURV9NQl9UWVBFX0lOVEVSKTsKKyAgICAg ICAgICAgIHMtPmZfY29kZSA9IGZmX2dldF9iZXN0X2Zjb2RlKG0sIHMtPnBfbXZfdGFibGUsIENB TkRJREFURV9NQl9UWVBFX0lOVEVSKTsKIAogICAgICAgICAgICAgaWYgKHMtPmF2Y3R4LT5mbGFn cyAmIEFWX0NPREVDX0ZMQUdfSU5URVJMQUNFRF9NRSkgewogICAgICAgICAgICAgICAgIGludCBh LGI7Ci0gICAgICAgICAgICAgICAgYT0gZmZfZ2V0X2Jlc3RfZmNvZGUocywgcy0+cF9maWVsZF9t dl90YWJsZVswXVswXSwgQ0FORElEQVRFX01CX1RZUEVfSU5URVJfSSk7IC8vRklYTUUgZmllbGRf c2VsZWN0Ci0gICAgICAgICAgICAgICAgYj0gZmZfZ2V0X2Jlc3RfZmNvZGUocywgcy0+cF9maWVs ZF9tdl90YWJsZVsxXVsxXSwgQ0FORElEQVRFX01CX1RZUEVfSU5URVJfSSk7CisgICAgICAgICAg ICAgICAgYSA9IGZmX2dldF9iZXN0X2Zjb2RlKG0sIHMtPnBfZmllbGRfbXZfdGFibGVbMF1bMF0s IENBTkRJREFURV9NQl9UWVBFX0lOVEVSX0kpOyAvL0ZJWE1FIGZpZWxkX3NlbGVjdAorICAgICAg ICAgICAgICAgIGIgPSBmZl9nZXRfYmVzdF9mY29kZShtLCBzLT5wX2ZpZWxkX212X3RhYmxlWzFd WzFdLCBDQU5ESURBVEVfTUJfVFlQRV9JTlRFUl9JKTsKICAgICAgICAgICAgICAgICBzLT5mX2Nv ZGU9IEZGTUFYMyhzLT5mX2NvZGUsIGEsIGIpOwogICAgICAgICAgICAgfQogCkBAIC0zNzk2LDEy ICszNzk3LDEyIEBAIHN0YXRpYyBpbnQgZW5jb2RlX3BpY3R1cmUoTVBWTWFpbkVuY0NvbnRleHQg KmNvbnN0IG0sIGNvbnN0IEFWUGFja2V0ICpwa3QpCiAgICAgICAgIH0gZWxzZSBpZiAocy0+cGlj dF90eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9CKSB7CiAgICAgICAgICAgICBpbnQgYSwgYjsKIAot ICAgICAgICAgICAgYSA9IGZmX2dldF9iZXN0X2Zjb2RlKHMsIHMtPmJfZm9yd19tdl90YWJsZSwg Q0FORElEQVRFX01CX1RZUEVfRk9SV0FSRCk7Ci0gICAgICAgICAgICBiID0gZmZfZ2V0X2Jlc3Rf ZmNvZGUocywgcy0+Yl9iaWRpcl9mb3J3X212X3RhYmxlLCBDQU5ESURBVEVfTUJfVFlQRV9CSURJ Uik7CisgICAgICAgICAgICBhID0gZmZfZ2V0X2Jlc3RfZmNvZGUobSwgcy0+Yl9mb3J3X212X3Rh YmxlLCBDQU5ESURBVEVfTUJfVFlQRV9GT1JXQVJEKTsKKyAgICAgICAgICAgIGIgPSBmZl9nZXRf YmVzdF9mY29kZShtLCBzLT5iX2JpZGlyX2ZvcndfbXZfdGFibGUsIENBTkRJREFURV9NQl9UWVBF X0JJRElSKTsKICAgICAgICAgICAgIHMtPmZfY29kZSA9IEZGTUFYKGEsIGIpOwogCi0gICAgICAg ICAgICBhID0gZmZfZ2V0X2Jlc3RfZmNvZGUocywgcy0+Yl9iYWNrX212X3RhYmxlLCBDQU5ESURB VEVfTUJfVFlQRV9CQUNLV0FSRCk7Ci0gICAgICAgICAgICBiID0gZmZfZ2V0X2Jlc3RfZmNvZGUo cywgcy0+Yl9iaWRpcl9iYWNrX212X3RhYmxlLCBDQU5ESURBVEVfTUJfVFlQRV9CSURJUik7Cisg ICAgICAgICAgICBhID0gZmZfZ2V0X2Jlc3RfZmNvZGUobSwgcy0+Yl9iYWNrX212X3RhYmxlLCBD QU5ESURBVEVfTUJfVFlQRV9CQUNLV0FSRCk7CisgICAgICAgICAgICBiID0gZmZfZ2V0X2Jlc3Rf ZmNvZGUobSwgcy0+Yl9iaWRpcl9iYWNrX212X3RhYmxlLCBDQU5ESURBVEVfTUJfVFlQRV9CSURJ Uik7CiAgICAgICAgICAgICBzLT5iX2NvZGUgPSBGRk1BWChhLCBiKTsKIAogICAgICAgICAgICAg ZmZfZml4X2xvbmdfbXZzKHMsIE5VTEwsIDAsIHMtPmJfZm9yd19tdl90YWJsZSwgcy0+Zl9jb2Rl LCBDQU5ESURBVEVfTUJfVFlQRV9GT1JXQVJELCAxKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IGNkODJiMTY1 OTAuLjRiNzRmOGViNDYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysr IGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtNjcsNiArNjcsOCBAQCB0eXBlZGVmIHN0 cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAgICAgaW50IGxtaW4sIGxtYXg7CiAgICAgaW50IHZi dl9pZ25vcmVfcW1heDsKIAorICAgIGNvbnN0IHVpbnQ4X3QgKmZjb2RlX3RhYjsgICAgICAvLy88 IHNtYWxsZXN0IGZjb2RlIG5lZWRlZCBmb3IgZWFjaCBNVgorCiAgICAgLyogZnJhbWUgc2tpcCBv cHRpb25zICovCiAgICAgaW50IGZyYW1lX3NraXBfdGhyZXNob2xkOwogICAgIGludCBmcmFtZV9z a2lwX2ZhY3RvcjsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0032-avcodec-speedhqenc-Remove-declaration-of-non-existen.patch" Content-Disposition: attachment; filename*0="0032-avcodec-speedhqenc-Remove-declaration-of-non-existen.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4ZDA4NmQxM2EzY2RhOWVjMjc1YmRkZWJlZmYxNmVkMzMxYjExMjllIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA0IE1hciAyMDI1IDE4OjQwOjExICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAzMi83N10gYXZjb2RlYy9zcGVlZGhxZW5jOiBSZW1vdmUgZGVjbGFyYXRpb24g b2Ygbm9uLWV4aXN0ZW50CiBmdW5jdGlvbgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhh cmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9zcGVl ZGhxZW5jLmggfCAxIC0KIDEgZmlsZSBjaGFuZ2VkLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmggYi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaAppbmRl eCBiMGU2NjYyMjc5Li5mMDJmYTFmNTFhIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3NwZWVkaHFl bmMuaAorKysgYi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaApAQCAtMzMsNyArMzMsNiBAQAogCiAj aW5jbHVkZSAibXBlZ3ZpZGVvLmgiCiAKLXZvaWQgZmZfc3BlZWRocV9lbmNvZGVfY2xvc2UoTXBl Z0VuY0NvbnRleHQgKnMpOwogdm9pZCBmZl9zcGVlZGhxX2VuY29kZV9tYihNcGVnRW5jQ29udGV4 dCAqcywgaW50MTZfdCBibG9ja1sxMl1bNjRdKTsKIAogdm9pZCBmZl9zcGVlZGhxX2VuZF9zbGlj ZShNcGVnRW5jQ29udGV4dCAqcyk7Ci0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0033-avcodec-mjpegenc-Move-mjpeg_encode_init-down.patch" Content-Disposition: attachment; filename="0033-avcodec-mjpegenc-Move-mjpeg_encode_init-down.patch" Content-Transfer-Encoding: base64 RnJvbSAxMjYwOTYxNzVkZTk2ZGZkMWQ5Yjc1ZGZmZDRiMzFmZDZiZmUxYTYzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA0IE1hciAyMDI1IDE4OjQyOjQ0ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAzMy83N10gYXZjb2RlYy9tanBlZ2VuYzogTW92ZSBtanBlZ19lbmNvZGVfaW5p dCgpIGRvd24KCldpbGwgYXZvaWQgYSBmb3J3YXJkIGRlY2xhcmF0aW9uIGxhdGVyLgoKU2lnbmVk LW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5j b20+Ci0tLQogbGliYXZjb2RlYy9tanBlZ2VuYy5jIHwgMTQ5ICsrKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKyks IDc0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbWpwZWdlbmMuYyBiL2xp YmF2Y29kZWMvbWpwZWdlbmMuYwppbmRleCA3NzA2ZjUyMTQ4Li40YzdhMjU4MzJiIDEwMDY0NAot LS0gYS9saWJhdmNvZGVjL21qcGVnZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tanBlZ2VuYy5jCkBA IC0zMDQsODAgKzMwNCw2IEBAIHN0YXRpYyBpbnQgYWxsb2NfaHVmZm1hbihNSlBFR0VuY0NvbnRl eHQgKmNvbnN0IG0yKQogICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgYXZfY29sZCBpbnQgbWpw ZWdfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQotewotICAgIE1KUEVHRW5jQ29u dGV4dCAqY29uc3QgbTIgPSBhdmN0eC0+cHJpdl9kYXRhOwotICAgIE1KcGVnQ29udGV4dCAgICAq Y29uc3QgbSAgPSAmbTItPm1qcGVnOwotICAgIE1wZWdFbmNDb250ZXh0ICAqY29uc3QgcyAgPSAm bTItPm1wZWcuczsKLSAgICBpbnQgcmV0OwotCi0gICAgcy0+bWpwZWdfY3R4ID0gbTsKLSAgICBt Mi0+bXBlZy5lbmNvZGVfcGljdHVyZV9oZWFkZXIgPSBtanBlZ19hbXZfZW5jb2RlX3BpY3R1cmVf aGVhZGVyOwotCi0gICAgaWYgKHMtPm1wdl9mbGFncyAmIEZGX01QVl9GTEFHX1FQX1JEKSB7Ci0g ICAgICAgIC8vIFVzZWQgdG8gcHJvZHVjZSBnYXJiYWdlIHdpdGggTUpQRUcuCi0gICAgICAgIGF2 X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLAotICAgICAgICAgICAgICAgIlFQIFJEIGlzIG5vIGxv bmdlciBjb21wYXRpYmxlIHdpdGggTUpQRUcgb3IgQU1WXG4iKTsKLSAgICAgICAgcmV0dXJuIEFW RVJST1IoRUlOVkFMKTsKLSAgICB9Ci0KLSAgICAvKiBUaGUgZm9sbG93aW5nIGNoZWNrIGlzIGF1 dG9tYXRpY2FsbHkgdHJ1ZSBmb3IgQU1WLAotICAgICAqIGJ1dCBpdCBkb2Vzbid0IGh1cnQgZWl0 aGVyLiAqLwotICAgIHJldCA9IGZmX21qcGVnX2VuY29kZV9jaGVja19waXhfZm10KGF2Y3R4KTsK LSAgICBpZiAocmV0IDwgMCkKLSAgICAgICAgcmV0dXJuIHJldDsKLQotICAgIGlmIChhdmN0eC0+ d2lkdGggPiA2NTUwMCB8fCBhdmN0eC0+aGVpZ2h0ID4gNjU1MDApIHsKLSAgICAgICAgYXZfbG9n KGF2Y3R4LCBBVl9MT0dfRVJST1IsICJKUEVHIGRvZXMgbm90IHN1cHBvcnQgcmVzb2x1dGlvbnMg YWJvdmUgNjU1MDB4NjU1MDBcbiIpOwotICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOwot ICAgIH0KLQotICAgIHMtPm1pbl9xY29lZmY9LTEwMjM7Ci0gICAgcy0+bWF4X3Fjb2VmZj0gMTAy MzsKLQotICAgIC8vIEJ1aWxkIGRlZmF1bHQgSHVmZm1hbiB0YWJsZXMuCi0gICAgLy8gVGhlc2Ug bWF5IGJlIG92ZXJ3cml0dGVuIGxhdGVyIHdpdGggbW9yZSBvcHRpbWFsIEh1ZmZtYW4gdGFibGVz LCBidXQKLSAgICAvLyB0aGV5IGFyZSBuZWVkZWQgYXQgbGVhc3QgcmlnaHQgbm93IGZvciBzb21l IHByb2Nlc3NlcyBsaWtlIHRyZWxsaXMuCi0gICAgZmZfbWpwZWdfYnVpbGRfaHVmZm1hbl9jb2Rl cyhtLT5odWZmX3NpemVfZGNfbHVtaW5hbmNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbS0+aHVmZl9jb2RlX2RjX2x1bWluYW5jZSwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZmX21qcGVnX2JpdHNfZGNfbHVtaW5hbmNlLAotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZmZfbWpwZWdfdmFsX2RjKTsKLSAgICBmZl9tanBlZ19idWlsZF9odWZm bWFuX2NvZGVzKG0tPmh1ZmZfc2l6ZV9kY19jaHJvbWluYW5jZSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG0tPmh1ZmZfY29kZV9kY19jaHJvbWluYW5jZSwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGZmX21qcGVnX2JpdHNfZGNfY2hyb21pbmFuY2UsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZl9tanBlZ192YWxfZGMpOwotICAgIGZmX21q cGVnX2J1aWxkX2h1ZmZtYW5fY29kZXMobS0+aHVmZl9zaXplX2FjX2x1bWluYW5jZSwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0tPmh1ZmZfY29kZV9hY19sdW1pbmFuY2UsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZl9tanBlZ19iaXRzX2FjX2x1bWluYW5j ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZmX21qcGVnX3ZhbF9hY19sdW1p bmFuY2UpOwotICAgIGZmX21qcGVnX2J1aWxkX2h1ZmZtYW5fY29kZXMobS0+aHVmZl9zaXplX2Fj X2Nocm9taW5hbmNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbS0+aHVmZl9j b2RlX2FjX2Nocm9taW5hbmNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmZf bWpwZWdfYml0c19hY19jaHJvbWluYW5jZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZmX21qcGVnX3ZhbF9hY19jaHJvbWluYW5jZSk7Ci0KLSAgICBpbml0X3VuaV9hY192bGMo bS0+aHVmZl9zaXplX2FjX2x1bWluYW5jZSwgICBtLT51bmlfYWNfdmxjX2xlbik7Ci0gICAgaW5p dF91bmlfYWNfdmxjKG0tPmh1ZmZfc2l6ZV9hY19jaHJvbWluYW5jZSwgbS0+dW5pX2Nocm9tYV9h Y192bGNfbGVuKTsKLSAgICBzLT5pbnRyYV9hY192bGNfbGVuZ3RoICAgICAgPQotICAgIHMtPmlu dHJhX2FjX3ZsY19sYXN0X2xlbmd0aCA9IG0tPnVuaV9hY192bGNfbGVuOwotICAgIHMtPmludHJh X2Nocm9tYV9hY192bGNfbGVuZ3RoICAgICAgPQotICAgIHMtPmludHJhX2Nocm9tYV9hY192bGNf bGFzdF9sZW5ndGggPSBtLT51bmlfY2hyb21hX2FjX3ZsY19sZW47Ci0KLSAgICByZXQgPSBmZl9t cHZfZW5jb2RlX2luaXQoYXZjdHgpOwotICAgIGlmIChyZXQgPCAwKQotICAgICAgICByZXR1cm4g cmV0OwotCi0gICAgLy8gQnVmZmVycyBzdGFydCBvdXQgZW1wdHkuCi0gICAgbS0+aHVmZl9uY29k ZSA9IDA7Ci0KLSAgICBpZiAocy0+c2xpY2VfY29udGV4dF9jb3VudCA+IDEpCi0gICAgICAgIG0t Pmh1ZmZtYW4gPSBIVUZGTUFOX1RBQkxFX0RFRkFVTFQ7Ci0KLSAgICBpZiAobS0+aHVmZm1hbiA9 PSBIVUZGTUFOX1RBQkxFX09QVElNQUwpCi0gICAgICAgIHJldHVybiBhbGxvY19odWZmbWFuKG0y KTsKLQotICAgIHJldHVybiAwOwotfQotCiBzdGF0aWMgYXZfY29sZCBpbnQgbWpwZWdfZW5jb2Rl X2Nsb3NlKEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIHsKICAgICBNSlBFR0VuY0NvbnRleHQgKmNv bnN0IG1qcGVnID0gYXZjdHgtPnByaXZfZGF0YTsKQEAgLTYwMyw2ICs1MjksODEgQEAgdm9pZCBm Zl9tanBlZ19lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgYmxvY2tbMTJdWzY0 XSkKICAgICB9CiB9CiAKK3N0YXRpYyBhdl9jb2xkIGludCBtanBlZ19lbmNvZGVfaW5pdChBVkNv ZGVjQ29udGV4dCAqYXZjdHgpCit7CisgICAgTUpQRUdFbmNDb250ZXh0ICpjb25zdCBtMiA9IGF2 Y3R4LT5wcml2X2RhdGE7CisgICAgTUpwZWdDb250ZXh0ICAgICpjb25zdCBtICA9ICZtMi0+bWpw ZWc7CisgICAgTXBlZ0VuY0NvbnRleHQgICpjb25zdCBzICA9ICZtMi0+bXBlZy5zOworICAgIGlu dCByZXQ7CisKKyAgICBzLT5tanBlZ19jdHggPSBtOworICAgIG0yLT5tcGVnLmVuY29kZV9waWN0 dXJlX2hlYWRlciA9IG1qcGVnX2Ftdl9lbmNvZGVfcGljdHVyZV9oZWFkZXI7CisKKyAgICBpZiAo cy0+bXB2X2ZsYWdzICYgRkZfTVBWX0ZMQUdfUVBfUkQpIHsKKyAgICAgICAgLy8gVXNlZCB0byBw cm9kdWNlIGdhcmJhZ2Ugd2l0aCBNSlBFRy4KKyAgICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0df RVJST1IsCisgICAgICAgICAgICAgICAiUVAgUkQgaXMgbm8gbG9uZ2VyIGNvbXBhdGlibGUgd2l0 aCBNSlBFRyBvciBBTVZcbiIpOworICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOworICAg IH0KKworICAgIC8qIFRoZSBmb2xsb3dpbmcgY2hlY2sgaXMgYXV0b21hdGljYWxseSB0cnVlIGZv ciBBTVYsCisgICAgICogYnV0IGl0IGRvZXNuJ3QgaHVydCBlaXRoZXIuICovCisgICAgcmV0ID0g ZmZfbWpwZWdfZW5jb2RlX2NoZWNrX3BpeF9mbXQoYXZjdHgpOworICAgIGlmIChyZXQgPCAwKQor ICAgICAgICByZXR1cm4gcmV0OworCisgICAgaWYgKGF2Y3R4LT53aWR0aCA+IDY1NTAwIHx8IGF2 Y3R4LT5oZWlnaHQgPiA2NTUwMCkgeworICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJP UiwgIkpQRUcgZG9lcyBub3Qgc3VwcG9ydCByZXNvbHV0aW9ucyBhYm92ZSA2NTUwMHg2NTUwMFxu Iik7CisgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7CisgICAgfQorCisgICAgLy8gQnVp bGQgZGVmYXVsdCBIdWZmbWFuIHRhYmxlcy4KKyAgICAvLyBUaGVzZSBtYXkgYmUgb3ZlcndyaXR0 ZW4gbGF0ZXIgd2l0aCBtb3JlIG9wdGltYWwgSHVmZm1hbiB0YWJsZXMsIGJ1dAorICAgIC8vIHRo ZXkgYXJlIG5lZWRlZCBhdCBsZWFzdCByaWdodCBub3cgZm9yIHNvbWUgcHJvY2Vzc2VzIGxpa2Ug dHJlbGxpcy4KKyAgICBmZl9tanBlZ19idWlsZF9odWZmbWFuX2NvZGVzKG0tPmh1ZmZfc2l6ZV9k Y19sdW1pbmFuY2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtLT5odWZmX2Nv ZGVfZGNfbHVtaW5hbmNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmZfbWpw ZWdfYml0c19kY19sdW1pbmFuY2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm Zl9tanBlZ192YWxfZGMpOworICAgIGZmX21qcGVnX2J1aWxkX2h1ZmZtYW5fY29kZXMobS0+aHVm Zl9zaXplX2RjX2Nocm9taW5hbmNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bS0+aHVmZl9jb2RlX2RjX2Nocm9taW5hbmNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmZfbWpwZWdfYml0c19kY19jaHJvbWluYW5jZSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGZmX21qcGVnX3ZhbF9kYyk7CisgICAgZmZfbWpwZWdfYnVpbGRfaHVmZm1h bl9jb2RlcyhtLT5odWZmX3NpemVfYWNfbHVtaW5hbmNlLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbS0+aHVmZl9jb2RlX2FjX2x1bWluYW5jZSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGZmX21qcGVnX2JpdHNfYWNfbHVtaW5hbmNlLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZmZfbWpwZWdfdmFsX2FjX2x1bWluYW5jZSk7CisgICAgZmZf bWpwZWdfYnVpbGRfaHVmZm1hbl9jb2RlcyhtLT5odWZmX3NpemVfYWNfY2hyb21pbmFuY2UsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtLT5odWZmX2NvZGVfYWNfY2hyb21pbmFu Y2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZl9tanBlZ19iaXRzX2FjX2No cm9taW5hbmNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmZfbWpwZWdfdmFs X2FjX2Nocm9taW5hbmNlKTsKKworICAgIGluaXRfdW5pX2FjX3ZsYyhtLT5odWZmX3NpemVfYWNf bHVtaW5hbmNlLCAgIG0tPnVuaV9hY192bGNfbGVuKTsKKyAgICBpbml0X3VuaV9hY192bGMobS0+ aHVmZl9zaXplX2FjX2Nocm9taW5hbmNlLCBtLT51bmlfY2hyb21hX2FjX3ZsY19sZW4pOworCisg ICAgcy0+bWluX3Fjb2VmZiA9IC0xMDIzOworICAgIHMtPm1heF9xY29lZmYgPSAgMTAyMzsKKwor ICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGggICAgICA9CisgICAgcy0+aW50cmFfYWNfdmxjX2xh c3RfbGVuZ3RoID0gbS0+dW5pX2FjX3ZsY19sZW47CisgICAgcy0+aW50cmFfY2hyb21hX2FjX3Zs Y19sZW5ndGggICAgICA9CisgICAgcy0+aW50cmFfY2hyb21hX2FjX3ZsY19sYXN0X2xlbmd0aCA9 IG0tPnVuaV9jaHJvbWFfYWNfdmxjX2xlbjsKKworICAgIHJldCA9IGZmX21wdl9lbmNvZGVfaW5p dChhdmN0eCk7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICAv LyBCdWZmZXJzIHN0YXJ0IG91dCBlbXB0eS4KKyAgICBtLT5odWZmX25jb2RlID0gMDsKKworICAg IGlmIChzLT5zbGljZV9jb250ZXh0X2NvdW50ID4gMSkKKyAgICAgICAgbS0+aHVmZm1hbiA9IEhV RkZNQU5fVEFCTEVfREVGQVVMVDsKKworICAgIGlmIChtLT5odWZmbWFuID09IEhVRkZNQU5fVEFC TEVfT1BUSU1BTCkKKyAgICAgICAgcmV0dXJuIGFsbG9jX2h1ZmZtYW4obTIpOworCisgICAgcmV0 dXJuIDA7Cit9CisKICNpZiBDT05GSUdfQU1WX0VOQ09ERVIKIC8vIG1heGltdW0gb3ZlciBzLT5t anBlZ192c2FtcGxlW2ldCiAjZGVmaW5lIFZfTUFYIDIKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0034-avcodec-mpegvideo_enc-Use-func-ptr-for-encoding-macr.patch" Content-Disposition: attachment; filename*0="0034-avcodec-mpegvideo_enc-Use-func-ptr-for-encoding-macr.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmZjBkZmZmM2ZhNGFmOThhZTkwOGVkYzE4MjQ5MjkzYWFjYmM1MGEyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA0IE1hciAyMDI1IDE5OjA5OjI0ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAzNC83N10gYXZjb2RlYy9tcGVndmlkZW9fZW5jOiBVc2UgZnVuYyBwdHIgZm9y IGVuY29kaW5nCiBtYWNyb2Jsb2NrcwoKSXQgZ2V0cyByaWQgb2YgYSBzd2l0Y2ggKHdpdGggYWNj b21wYW55aW5nIENPTkZJR18qX0VOQ09ERVIgY2hlY2tzKTsKZm9yIE1KUEVHLCBpdCBldmVuIGxl dHMgb25lIHBlcmZvcm0gdGhlIGNoZWNrIGZvciB3aGV0aGVyIG9uZSBpcwpyZWFsbHkgZW5jb2Rp bmcgb3Igb25seSByZWNvcmRpbmcgdGhlIG1hY3JvYmxvY2sgb25jZSBkdXJpbmcgaW5pdC4KCkZ1 cnRoZXJtb3JlLCB0aGUgc3dpdGNoIGFjdHVhbGx5IGNvbnRhaW5lZCBsb3RzIG9mIGRlYWQgY29k ZSAtLQppdCBpcyBjb21waWxlZCB0aHJlZSB0aW1lcyAoZm9yIGRpZmZlcmVudCBwaXhlbCBmb3Jt YXRzOiA0MjAsIDQyMiwgNDQ0KSwKeWV0IG1vc3QgZW5jb2RlcnMgb25seSBzdXBwb3J0IDQyMC4g VGhlIGFwcHJvYWNoIHVzZWQgaGVyZSBhdXRvbWF0aWNhbGx5CmZpeGVzIHRoaXMuCgpTaWduZWQt b2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNv bT4KLS0tCiBsaWJhdmNvZGVjL2gyNjFlbmMuYyAgICAgICB8ICA1ICsrLS0KIGxpYmF2Y29kZWMv aDI2MWVuYy5oICAgICAgIHwgIDIgLS0KIGxpYmF2Y29kZWMvaDI2M2VuYy5oICAgICAgIHwgIDMg LS0tCiBsaWJhdmNvZGVjL2l0dWgyNjNlbmMuYyAgICB8ICA4ICsrKystLS0KIGxpYmF2Y29kZWMv bWpwZWdlbmMuYyAgICAgIHwgMTkgKysrKysrKysrKystLS0tCiBsaWJhdmNvZGVjL21qcGVnZW5j LmggICAgICB8ICAxIC0KIGxpYmF2Y29kZWMvbXBlZzEyZW5jLmMgICAgIHwgIDUgKystLQogbGli YXZjb2RlYy9tcGVnMTJlbmMuaCAgICAgfCAgMiAtLQogbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5j LmMgfCAgNSArKy0tCiBsaWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaCB8ICAzIC0tLQogbGliYXZj b2RlYy9tcGVndmlkZW8uaCAgICAgfCAgNCArKysrCiBsaWJhdmNvZGVjL21wZWd2aWRlb19lbmMu YyB8IDQ4ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVj L21zbXBlZzRlbmMuYyAgICB8IDEwICsrKystLS0tCiBsaWJhdmNvZGVjL21zbXBlZzRlbmMuaCAg ICB8ICAyIC0tCiBsaWJhdmNvZGVjL3NwZWVkaHFlbmMuYyAgICB8ICA0ICsrKy0KIGxpYmF2Y29k ZWMvc3BlZWRocWVuYy5oICAgIHwgIDIgLS0KIGxpYmF2Y29kZWMvd212MmVuYy5jICAgICAgIHwg IDYgKystLS0KIGxpYmF2Y29kZWMvd212MmVuYy5oICAgICAgIHwgMzAgLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiAxOCBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAxMTQgZGVsZXRp b25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgbGliYXZjb2RlYy93bXYyZW5jLmgKCmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL2gyNjFlbmMuYyBiL2xpYmF2Y29kZWMvaDI2MWVuYy5jCmluZGV4IGJm ZTgwNWJjZGYuLjgxNzExYjNhMTYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvaDI2MWVuYy5jCisr KyBiL2xpYmF2Y29kZWMvaDI2MWVuYy5jCkBAIC0yMjgsOCArMjI4LDggQEAgc3RhdGljIHZvaWQg aDI2MV9lbmNvZGVfYmxvY2soSDI2MUVuY0NvbnRleHQgKmgsIGludDE2X3QgKmJsb2NrLCBpbnQg bikKICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAyLCAweDIpOyAvLyBFT0IKIH0KIAotdm9pZCBm Zl9oMjYxX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9ja1s2XVs2NF0s Ci0gICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25feCwgaW50IG1vdGlvbl95KQorc3Rh dGljIHZvaWQgaDI2MV9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMsIGludDE2X3Qg YmxvY2tbNl1bNjRdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vdGlvbl94LCBp bnQgbW90aW9uX3kpCiB7CiAgICAgLyogVGhlIGZvbGxvd2luZyBpcyBvbmx5IGFsbG93ZWQgYmVj YXVzZSB0aGlzIGVuY29kZXIKICAgICAgKiBkb2VzIG5vdCB1c2Ugc2xpY2UgdGhyZWFkaW5nLiAq LwpAQCAtMzc0LDYgKzM3NCw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBoMjYxX2VuY29kZV9pbml0 KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICB9CiAgICAgcy0+cHJpdmF0ZV9jdHggPSAmaC0+ Y29tbW9uOwogICAgIGgtPnMuZW5jb2RlX3BpY3R1cmVfaGVhZGVyID0gaDI2MV9lbmNvZGVfcGlj dHVyZV9oZWFkZXI7CisgICAgcy0+ZW5jb2RlX21iICAgICAgICAgICAgICAgPSBoMjYxX2VuY29k ZV9tYjsKIAogICAgIHMtPm1pbl9xY29lZmYgICAgICAgPSAtMTI3OwogICAgIHMtPm1heF9xY29l ZmYgICAgICAgPSAxMjc7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2gyNjFlbmMuaCBiL2xpYmF2 Y29kZWMvaDI2MWVuYy5oCmluZGV4IDA5MjM2M2I2ZjMuLjc5Y2RkMzFjMmYgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvaDI2MWVuYy5oCisrKyBiL2xpYmF2Y29kZWMvaDI2MWVuYy5oCkBAIC0zMSw3 ICszMSw1IEBACiAjaW5jbHVkZSAibXBlZ3ZpZGVvLmgiCiAKIHZvaWQgZmZfaDI2MV9yZW9yZGVy X21iX2luZGV4KE1wZWdFbmNDb250ZXh0ICpzKTsKLXZvaWQgZmZfaDI2MV9lbmNvZGVfbWIoTXBl Z0VuY0NvbnRleHQgKnMsIGludDE2X3QgYmxvY2tbNl1bNjRdLAotICAgICAgICAgICAgICAgICAg ICAgICBpbnQgbW90aW9uX3gsIGludCBtb3Rpb25feSk7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEv bGliYXZjb2RlYy9oMjYzZW5jLmggYi9saWJhdmNvZGVjL2gyNjNlbmMuaAppbmRleCAyOWE3ODVk ZmViLi5kZDljYWE3OTY5IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2gyNjNlbmMuaAorKysgYi9s aWJhdmNvZGVjL2gyNjNlbmMuaApAQCAtMjgsOSArMjgsNiBAQCBjb25zdCB1aW50OF90ICgqZmZf aDI2M19nZXRfbXZfcGVuYWx0eSh2b2lkKSlbTUFYX0RNVioyKzFdOwogCiB2b2lkIGZmX2gyNjNf ZW5jb2RlX2luaXQoTVBWTWFpbkVuY0NvbnRleHQgKm0pOwogdm9pZCBmZl9oMjYzX2VuY29kZV9n b2JfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICogcywgaW50IG1iX2xpbmUpOwotdm9pZCBmZl9oMjYz X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgaW50 MTZfdCBibG9ja1s2XVs2NF0sCi0gICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25feCwg aW50IG1vdGlvbl95KTsKIHZvaWQgZmZfaDI2M19lbmNvZGVfbWJhKE1wZWdFbmNDb250ZXh0ICpz KTsKIAogdm9pZCBmZl9jbGVhbl9oMjYzX3FzY2FsZXMoTXBlZ0VuY0NvbnRleHQgKnMpOwpkaWZm IC0tZ2l0IGEvbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMgYi9saWJhdmNvZGVjL2l0dWgyNjNlbmMu YwppbmRleCA3MzlmOTU5ZTQwLi5kZWFmN2RjNWM2IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL2l0 dWgyNjNlbmMuYworKysgYi9saWJhdmNvZGVjL2l0dWgyNjNlbmMuYwpAQCAtNjA4LDkgKzYwOCw5 IEBAIHN0YXRpYyBpbnQgaDI2M19wcmVkX2RjKE1wZWdFbmNDb250ZXh0ICogcywgaW50IG4sIGlu dDE2X3QgKipkY192YWxfcHRyKQogICAgIHJldHVybiBwcmVkX2RjOwogfQogCi12b2lkIGZmX2gy NjNfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICogcywKLSAgICAgICAgICAgICAgICAgICAgICAg aW50MTZfdCBibG9ja1s2XVs2NF0sCi0gICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25f eCwgaW50IG1vdGlvbl95KQorc3RhdGljIHZvaWQgaDI2M19lbmNvZGVfbWIoTXBlZ0VuY0NvbnRl eHQgKmNvbnN0IHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQxNl90IGJsb2NrW11b NjRdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vdGlvbl94LCBpbnQgbW90aW9u X3kpCiB7CiAgICAgaW50IGNicGMsIGNicHksIGksIGNicCwgcHJlZF94LCBwcmVkX3k7CiAgICAg aW50MTZfdCBwcmVkX2RjOwpAQCAtODc1LDYgKzg3NSw4IEBAIGF2X2NvbGQgdm9pZCBmZl9oMjYz X2VuY29kZV9pbml0KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgIC8vIEguMjYzLCBI LjI2Mys7IHdpbGwgYmUgb3ZlcndyaXR0ZW4gZm9yIE1TTVBFRy00IGxhdGVyCiAgICAgaWYgKCFt LT5lbmNvZGVfcGljdHVyZV9oZWFkZXIpCiAgICAgICAgIG0tPmVuY29kZV9waWN0dXJlX2hlYWRl ciA9IGgyNjNfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOworICAgIGlmICghcy0+ZW5jb2RlX21iKQor ICAgICAgICBzLT5lbmNvZGVfbWIgPSBoMjYzX2VuY29kZV9tYjsKIAogICAgIGZmX2gyNjNkc3Bf aW5pdCgmcy0+aDI2M2RzcCk7CiB9CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21qcGVnZW5jLmMg Yi9saWJhdmNvZGVjL21qcGVnZW5jLmMKaW5kZXggNGM3YTI1ODMyYi4uNmM1OGMwNDg5MiAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tanBlZ2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbWpwZWdlbmMu YwpAQCAtNDYzLDEwICs0NjMsMTAgQEAgc3RhdGljIHZvaWQgZW5jb2RlX2Jsb2NrKE1wZWdFbmND b250ZXh0ICpzLCBpbnQxNl90ICpibG9jaywgaW50IG4pCiAgICAgICAgIHB1dF9iaXRzKCZzLT5w YiwgaHVmZl9zaXplX2FjWzBdLCBodWZmX2NvZGVfYWNbMF0pOwogfQogCi12b2lkIGZmX21qcGVn X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9ja1sxMl1bNjRdKQorc3Rh dGljIHZvaWQgbWpwZWdfcmVjb3JkX21iKE1wZWdFbmNDb250ZXh0ICpjb25zdCBzLCBpbnQxNl90 IGJsb2NrW11bNjRdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB1bnVzZWRfeCwg aW50IHVudXNlZF95KQogewogICAgIGludCBpOwotICAgIGlmIChzLT5tanBlZ19jdHgtPmh1ZmZt YW4gPT0gSFVGRk1BTl9UQUJMRV9PUFRJTUFMKSB7CiAgICAgICAgIGlmIChzLT5jaHJvbWFfZm9y bWF0ID09IENIUk9NQV80NDQpIHsKICAgICAgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1sw XSwgMCk7CiAgICAgICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbMl0sIDIpOwpAQCAtNDk1 LDcgKzQ5NSwxMiBAQCB2b2lkIGZmX21qcGVnX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywg aW50MTZfdCBibG9ja1sxMl1bNjRdKQogICAgICAgICAgICAgICAgIHJlY29yZF9ibG9jayhzLCBi bG9ja1s3XSwgNyk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICB9IGVsc2UgeworfQor CitzdGF0aWMgdm9pZCBtanBlZ19lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMsIGlu dDE2X3QgYmxvY2tbXVs2NF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHVudXNl ZF94LCBpbnQgdW51c2VkX3kpCit7CisgICAgaW50IGk7CiAgICAgICAgIGlmIChzLT5jaHJvbWFf Zm9ybWF0ID09IENIUk9NQV80NDQpIHsKICAgICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBibG9j a1swXSwgMCk7CiAgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbMl0sIDIpOwpAQCAt NTI2LDcgKzUzMSw2IEBAIHZvaWQgZmZfbWpwZWdfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpz LCBpbnQxNl90IGJsb2NrWzEyXVs2NF0pCiAgICAgICAgIH0KIAogICAgICAgICBzLT5pX3RleF9i aXRzICs9IGdldF9iaXRzX2RpZmYocyk7Ci0gICAgfQogfQogCiBzdGF0aWMgYXZfY29sZCBpbnQg bWpwZWdfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQpAQCAtNTM4LDYgKzU0Miw4 IEBAIHN0YXRpYyBhdl9jb2xkIGludCBtanBlZ19lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAq YXZjdHgpCiAKICAgICBzLT5tanBlZ19jdHggPSBtOwogICAgIG0yLT5tcGVnLmVuY29kZV9waWN0 dXJlX2hlYWRlciA9IG1qcGVnX2Ftdl9lbmNvZGVfcGljdHVyZV9oZWFkZXI7CisgICAgLy8gTWF5 IGJlIG92ZXJyaWRkZW4gYmVsb3cKKyAgICBzLT5lbmNvZGVfbWIgICAgICAgICAgICAgICAgICAg PSBtanBlZ19lbmNvZGVfbWI7CiAKICAgICBpZiAocy0+bXB2X2ZsYWdzICYgRkZfTVBWX0ZMQUdf UVBfUkQpIHsKICAgICAgICAgLy8gVXNlZCB0byBwcm9kdWNlIGdhcmJhZ2Ugd2l0aCBNSlBFRy4K QEAgLTU5OCw4ICs2MDQsMTEgQEAgc3RhdGljIGF2X2NvbGQgaW50IG1qcGVnX2VuY29kZV9pbml0 KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBpZiAocy0+c2xpY2VfY29udGV4dF9jb3VudCA+ IDEpCiAgICAgICAgIG0tPmh1ZmZtYW4gPSBIVUZGTUFOX1RBQkxFX0RFRkFVTFQ7CiAKLSAgICBp ZiAobS0+aHVmZm1hbiA9PSBIVUZGTUFOX1RBQkxFX09QVElNQUwpCisgICAgaWYgKG0tPmh1ZmZt YW4gPT0gSFVGRk1BTl9UQUJMRV9PUFRJTUFMKSB7CisgICAgICAgIC8vIElmIHdlIGFyZSBoZXJl LCB3ZSBoYXZlIG9ubHkgb25lIHNsaWNlX2NvbnRleHQuIFNvIG5vIGxvb3AgbmVjZXNzYXJ5Lgor ICAgICAgICBzLT5lbmNvZGVfbWIgPSBtanBlZ19yZWNvcmRfbWI7CiAgICAgICAgIHJldHVybiBh bGxvY19odWZmbWFuKG0yKTsKKyAgICB9CiAKICAgICByZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvbWpwZWdlbmMuaCBiL2xpYmF2Y29kZWMvbWpwZWdlbmMuaAppbmRleCA5NjEw NjU2YWFhLi5jZWFjYmE5ODkzIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21qcGVnZW5jLmgKKysr IGIvbGliYXZjb2RlYy9tanBlZ2VuYy5oCkBAIC05NCw3ICs5NCw2IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBwdXRfbWFya2VyKFB1dEJpdENvbnRleHQgKnAsIGVudW0gSnBlZ01hcmtlciBjb2RlKQog CiB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCBNcGVnRW5jQ29udGV4dDsKIAotdm9pZCBm Zl9tanBlZ19lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgYmxvY2tbMTJdWzY0 XSk7CiBpbnQgIGZmX21qcGVnX2VuY29kZV9zdHVmZmluZyhNcGVnRW5jQ29udGV4dCAqcyk7CiAK ICNlbmRpZiAvKiBBVkNPREVDX01KUEVHRU5DX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXBlZzEyZW5jLmMgYi9saWJhdmNvZGVjL21wZWcxMmVuYy5jCmluZGV4IGI2N2Y3MGM1Y2QuLjFl Zjg4ZDIzYjggMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKKysrIGIvbGliYXZj b2RlYy9tcGVnMTJlbmMuYwpAQCAtOTI5LDggKzkyOSw4IEBAIHN0YXRpYyBhdl9hbHdheXNfaW5s aW5lIHZvaWQgbXBlZzFfZW5jb2RlX21iX2ludGVybmFsKE1wZWdFbmNDb250ZXh0ICpzLAogICAg IH0KIH0KIAotdm9pZCBmZl9tcGVnMV9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2 X3QgYmxvY2tbOF1bNjRdLAotICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vdGlvbl94LCBp bnQgbW90aW9uX3kpCitzdGF0aWMgdm9pZCBtcGVnMTJfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0 ICpzLCBpbnQxNl90IGJsb2NrW11bNjRdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgbW90aW9uX3gsIGludCBtb3Rpb25feSkKIHsKICAgICBpZiAoIXMtPm1iX2ludHJhKQogICAg ICAgICBzLT5sYXN0X2RjWzBdID0gcy0+bGFzdF9kY1sxXSA9IHMtPmxhc3RfZGNbMl0gPSAxMjgg PDwgcy0+aW50cmFfZGNfcHJlY2lzaW9uOwpAQCAtMTExMSw2ICsxMTExLDcgQEAgc3RhdGljIGF2 X2NvbGQgaW50IGVuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICB9CiAKICAg ICBtLT5lbmNvZGVfcGljdHVyZV9oZWFkZXIgPSBtcGVnMV9lbmNvZGVfcGljdHVyZV9oZWFkZXI7 CisgICAgcy0+ZW5jb2RlX21iICAgICAgICAgICAgID0gbXBlZzEyX2VuY29kZV9tYjsKIAogICAg IHMtPm1lLm12X3BlbmFsdHkgPSBtdl9wZW5hbHR5OwogICAgIG0tPmZjb2RlX3RhYiAgICAgPSBm Y29kZV90YWIgKyBNQVhfTVY7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWcxMmVuYy5oIGIv bGliYXZjb2RlYy9tcGVnMTJlbmMuaAppbmRleCA2YzM3MDliYmZmLi44ZmZhNDcxYTYzIDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL21wZWcxMmVuYy5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZzEyZW5j LmgKQEAgLTI3LDggKzI3LDYgQEAKICNpbmNsdWRlICJtcGVndmlkZW8uaCIKICNpbmNsdWRlICJt cGVndmlkZW9kYXRhLmgiCiAKLXZvaWQgZmZfbXBlZzFfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0 ICpzLCBpbnQxNl90IGJsb2NrWzhdWzY0XSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGludCBt b3Rpb25feCwgaW50IG1vdGlvbl95KTsKIHZvaWQgZmZfbXBlZzFfZW5jb2RlX3NsaWNlX2hlYWRl cihNcGVnRW5jQ29udGV4dCAqcyk7CiAKIC8vIE11c3Qgbm90IGJlIGNhbGxlZCBiZWZvcmUgaW50 cmFfZGNfcHJlY2lzaW9uIGhhcyBiZWVuIHNhbml0aXplZCBpbiBmZl9tcHZfZW5jb2RlX2luaXQo KQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMgYi9saWJhdmNvZGVjL21w ZWc0dmlkZW9lbmMuYwppbmRleCBjYzNjNjc2ZTE4Li40Zjk3MTk5ZWJhIDEwMDY0NAotLS0gYS9s aWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMu YwpAQCAtNDk5LDggKzQ5OSw4IEBAIHN0YXRpYyBpbmxpbmUgaW50IGdldF9iX2NicChNcGVnRW5j Q29udGV4dCAqcywgaW50MTZfdCBibG9ja1s2XVs2NF0sCiAvLyBGSVhNRSB0aGlzIGlzIGR1cGxp Y2F0ZWQgdG8gaDI2My5jCiBzdGF0aWMgY29uc3QgaW50IGRxdWFudF9jb2RlWzVdID0geyAxLCAw LCA5LCAyLCAzIH07CiAKLXZvaWQgZmZfbXBlZzRfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpz LCBpbnQxNl90IGJsb2NrWzZdWzY0XSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rp b25feCwgaW50IG1vdGlvbl95KQorc3RhdGljIHZvaWQgbXBlZzRfZW5jb2RlX21iKE1wZWdFbmND b250ZXh0ICpjb25zdCBzLCBpbnQxNl90IGJsb2NrW11bNjRdLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGludCBtb3Rpb25feCwgaW50IG1vdGlvbl95KQogewogICAgIGludCBjYnBjLCBj YnB5LCBwcmVkX3gsIHByZWRfeTsKICAgICBQdXRCaXRDb250ZXh0ICpjb25zdCBwYjIgICAgPSBz LT5kYXRhX3BhcnRpdGlvbmluZyA/ICZzLT5wYjIgOiAmcy0+cGI7CkBAIC0xMzAxLDYgKzEzMDEs NyBAQCBzdGF0aWMgYXZfY29sZCBpbnQgZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4 KQogICAgIH0KIAogICAgIG0tPmVuY29kZV9waWN0dXJlX2hlYWRlciA9IG1wZWc0X2VuY29kZV9w aWN0dXJlX2hlYWRlcjsKKyAgICBzLT5lbmNvZGVfbWIgICAgICAgICAgICAgPSBtcGVnNF9lbmNv ZGVfbWI7CiAKICAgICBmZl9xcGVsZHNwX2luaXQoJnMtPnFkc3ApOwogICAgIGlmICgocmV0ID0g ZmZfbXB2X2VuY29kZV9pbml0KGF2Y3R4KSkgPCAwKQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9t cGVnNHZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaAppbmRleCA0NTY1YTUx OGIyLi4wNzI3YmU2NzUwIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaAor KysgYi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuaApAQCAtMjksOSArMjksNiBAQAogCiB0eXBl ZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCBNcGVnRW5jQ29udGV4dDsKIAotdm9pZCBmZl9tcGVn NF9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICBp bnQxNl90IGJsb2NrWzZdWzY0XSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25f eCwgaW50IG1vdGlvbl95KTsKIHZvaWQgZmZfc2V0X21wZWc0X3RpbWUoTXBlZ0VuY0NvbnRleHQg KnMpOwogCiB2b2lkIGZmX21wZWc0X2VuY29kZV92aWRlb19wYWNrZXRfaGVhZGVyKE1wZWdFbmND b250ZXh0ICpzKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNv ZGVjL21wZWd2aWRlby5oCmluZGV4IDQ5ZTgxNTk3NjkuLmJkYWI3ODJiMjkgMTAwNjQ0Ci0tLSBh L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAt NDM4LDcgKzQzOCwxMSBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAKICAgICBp bnQxNl90ICgqYmxvY2spWzY0XTsgLy8vPCBwb2ludHMgdG8gb25lIG9mIHRoZSBmb2xsb3dpbmcg YmxvY2tzCiAgICAgaW50MTZfdCAoKmJsb2NrcylbMTJdWzY0XTsgLy8gZm9yIEhRIG1vZGUgd2Ug bmVlZCB0byBrZWVwIHRoZSBiZXN0IGJsb2NrCisgICAgdW5pb24gewogICAgIGludCAoKmRlY29k ZV9tYikoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzEyXVs2NF0pOyAv LyB1c2VkIGJ5IHNvbWUgY29kZWNzIHRvIGF2b2lkIGEgc3dpdGNoKCkKKyAgICAgICAgdm9pZCAo KmVuY29kZV9tYikoc3RydWN0IE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrW11bNjRd LAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW90aW9uX3gsIGludCBtb3Rpb25feSk7 CisgICAgfTsKIAogI2RlZmluZSBTTElDRV9PSyAgICAgICAgIDAKICNkZWZpbmUgU0xJQ0VfRVJS T1IgICAgIC0xCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCmluZGV4IDA4ZmM3MmVkYjQuLjY2NTBlNWIzNWQgMTAwNjQ0 Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jCkBAIC03MSw3ICs3MSw2IEBACiAjaW5jbHVkZSAibXBlZzR2aWRlb2VuYy5oIgog I2luY2x1ZGUgImludGVybmFsLmgiCiAjaW5jbHVkZSAiYnl0ZXN0cmVhbS5oIgotI2luY2x1ZGUg IndtdjJlbmMuaCIKICNpbmNsdWRlICJydjEwZW5jLmgiCiAjaW5jbHVkZSAicGFja2V0X2ludGVy bmFsLmgiCiAjaW5jbHVkZSAibGliYXZ1dGlsL3JlZnN0cnVjdC5oIgpAQCAtMjU2Miw1MiArMjU2 MSw3IEBAIHN0YXRpYyBhdl9hbHdheXNfaW5saW5lIHZvaWQgZW5jb2RlX21iX2ludGVybmFsKE1w ZWdFbmNDb250ZXh0ICpzLAogICAgICAgICB9CiAgICAgfQogCi0gICAgLyogaHVmZm1hbiBlbmNv ZGUgKi8KLSAgICBzd2l0Y2gocy0+Y29kZWNfaWQpeyAvL0ZJWE1FIGZ1bmN0IHB0ciBjb3VsZCBi ZSBzbGlnaHRseSBmYXN0ZXIKLSAgICBjYXNlIEFWX0NPREVDX0lEX01QRUcxVklERU86Ci0gICAg Y2FzZSBBVl9DT0RFQ19JRF9NUEVHMlZJREVPOgotICAgICAgICBpZiAoQ09ORklHX01QRUcxVklE RU9fRU5DT0RFUiB8fCBDT05GSUdfTVBFRzJWSURFT19FTkNPREVSKQotICAgICAgICAgICAgZmZf bXBlZzFfZW5jb2RlX21iKHMsIHMtPmJsb2NrLCBtb3Rpb25feCwgbW90aW9uX3kpOwotICAgICAg ICBicmVhazsKLSAgICBjYXNlIEFWX0NPREVDX0lEX01QRUc0OgotICAgICAgICBpZiAoQ09ORklH X01QRUc0X0VOQ09ERVIpCi0gICAgICAgICAgICBmZl9tcGVnNF9lbmNvZGVfbWIocywgcy0+Ymxv Y2ssIG1vdGlvbl94LCBtb3Rpb25feSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQVZfQ09E RUNfSURfTVNNUEVHNFYyOgotICAgIGNhc2UgQVZfQ09ERUNfSURfTVNNUEVHNFYzOgotICAgIGNh c2UgQVZfQ09ERUNfSURfV01WMToKLSAgICAgICAgaWYgKENPTkZJR19NU01QRUc0RU5DKQotICAg ICAgICAgICAgZmZfbXNtcGVnNF9lbmNvZGVfbWIocywgcy0+YmxvY2ssIG1vdGlvbl94LCBtb3Rp b25feSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQVZfQ09ERUNfSURfV01WMjoKLSAgICAg ICAgaWYgKENPTkZJR19XTVYyX0VOQ09ERVIpCi0gICAgICAgICAgICBmZl93bXYyX2VuY29kZV9t YihzLCBzLT5ibG9jaywgbW90aW9uX3gsIG1vdGlvbl95KTsKLSAgICAgICAgYnJlYWs7Ci0gICAg Y2FzZSBBVl9DT0RFQ19JRF9IMjYxOgotICAgICAgICBpZiAoQ09ORklHX0gyNjFfRU5DT0RFUikK LSAgICAgICAgICAgIGZmX2gyNjFfZW5jb2RlX21iKHMsIHMtPmJsb2NrLCBtb3Rpb25feCwgbW90 aW9uX3kpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIEFWX0NPREVDX0lEX0gyNjM6Ci0gICAg Y2FzZSBBVl9DT0RFQ19JRF9IMjYzUDoKLSAgICBjYXNlIEFWX0NPREVDX0lEX0ZMVjE6Ci0gICAg Y2FzZSBBVl9DT0RFQ19JRF9SVjEwOgotICAgIGNhc2UgQVZfQ09ERUNfSURfUlYyMDoKLSAgICAg ICAgaWYgKENPTkZJR19IMjYzX0VOQ09ERVIpCi0gICAgICAgICAgICBmZl9oMjYzX2VuY29kZV9t YihzLCBzLT5ibG9jaywgbW90aW9uX3gsIG1vdGlvbl95KTsKLSAgICAgICAgYnJlYWs7Ci0jaWYg Q09ORklHX01KUEVHX0VOQ09ERVIgfHwgQ09ORklHX0FNVl9FTkNPREVSCi0gICAgY2FzZSBBVl9D T0RFQ19JRF9NSlBFRzoKLSAgICBjYXNlIEFWX0NPREVDX0lEX0FNVjoKLSAgICAgICAgZmZfbWpw ZWdfZW5jb2RlX21iKHMsIHMtPmJsb2NrKTsKLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLSAgICBj YXNlIEFWX0NPREVDX0lEX1NQRUVESFE6Ci0gICAgICAgIGlmIChDT05GSUdfU1BFRURIUV9FTkNP REVSKQotICAgICAgICAgICAgZmZfc3BlZWRocV9lbmNvZGVfbWIocywgcy0+YmxvY2spOwotICAg ICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBhdl9hc3NlcnQxKDApOwotICAgIH0K KyAgICBzLT5lbmNvZGVfbWIocywgcy0+YmxvY2ssIG1vdGlvbl94LCBtb3Rpb25feSk7CiB9CiAK IHN0YXRpYyB2b2lkIGVuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50IG1vdGlvbl94LCBp bnQgbW90aW9uX3kpCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRlbmMuYyBiL2xpYmF2 Y29kZWMvbXNtcGVnNGVuYy5jCmluZGV4IDAxZDU3MDczNzAuLjllNThhOTFhODAgMTAwNjQ0Ci0t LSBhL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5j CkBAIC0zNzAsOSArMzcwLDkgQEAgc3RhdGljIHZvaWQgbXNtcGVnNHYyX2VuY29kZV9tb3Rpb24o TXBlZ0VuY0NvbnRleHQgKiBzLCBpbnQgdmFsKQogICAgIH0KIH0KIAotdm9pZCBmZl9tc21wZWc0 X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqIHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAg IGludDE2X3QgYmxvY2tbNl1bNjRdLAotICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW90 aW9uX3gsIGludCBtb3Rpb25feSkKK3N0YXRpYyB2b2lkIG1zbXBlZzRfZW5jb2RlX21iKE1wZWdF bmNDb250ZXh0ICpjb25zdCBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MTZf dCBibG9ja1tdWzY0XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25f eCwgaW50IG1vdGlvbl95KQogewogICAgIGludCBjYnAsIGNvZGVkX2NicCwgaTsKICAgICBpbnQg cHJlZF94LCBwcmVkX3k7CkBAIC02NzAsOCArNjcwLDEwIEBAIGF2X2NvbGQgdm9pZCBmZl9tc21w ZWc0X2VuY29kZV9pbml0KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAgICAgZmZfbXNt cGVnNF9jb21tb25faW5pdChzKTsKIAotICAgIGlmIChzLT5tc21wZWc0X3ZlcnNpb24gPD0gTVNN UDRfV01WMSkKKyAgICBpZiAocy0+bXNtcGVnNF92ZXJzaW9uIDw9IE1TTVA0X1dNVjEpIHsKICAg ICAgICAgbS0+ZW5jb2RlX3BpY3R1cmVfaGVhZGVyID0gbXNtcGVnNF9lbmNvZGVfcGljdHVyZV9o ZWFkZXI7CisgICAgICAgIHMtPmVuY29kZV9tYiAgICAgICAgICAgICA9IG1zbXBlZzRfZW5jb2Rl X21iOworICAgIH0KIAogICAgIGlmIChzLT5tc21wZWc0X3ZlcnNpb24gPj0gTVNNUDRfV01WMSkg ewogICAgICAgICBzLT5taW5fcWNvZWZmID0gLTI1NTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXNtcGVnNGVuYy5oIGIvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmgKaW5kZXggNTUxMWUwMTI4My4u ZGRlMWZiNmI5MyAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmgKKysrIGIvbGli YXZjb2RlYy9tc21wZWc0ZW5jLmgKQEAgLTM1LDggKzM1LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgTVNN UEVHNEVuY0NvbnRleHQgewogCiB2b2lkIGZmX21zbXBlZzRfZW5jb2RlX2luaXQoTVBWTWFpbkVu Y0NvbnRleHQgKm0pOwogdm9pZCBmZl9tc21wZWc0X2VuY29kZV9leHRfaGVhZGVyKE1wZWdFbmND b250ZXh0ICpzKTsKLXZvaWQgZmZfbXNtcGVnNF9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMs IGludDE2X3QgYmxvY2tbNl1bNjRdLAotICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW90 aW9uX3gsIGludCBtb3Rpb25feSk7CiB2b2lkIGZmX21zbXBlZzRfZW5jb2RlX2Jsb2NrKE1wZWdF bmNDb250ZXh0ICogcywgaW50MTZfdCAqIGJsb2NrLCBpbnQgbik7CiB2b2lkIGZmX21zbXBlZzRf aGFuZGxlX3NsaWNlcyhNcGVnRW5jQ29udGV4dCAqcyk7CiB2b2lkIGZmX21zbXBlZzRfZW5jb2Rl X21vdGlvbihNcGVnRW5jQ29udGV4dCAqIHMsIGludCBteCwgaW50IG15KTsKZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvc3BlZWRocWVuYy5jIGIvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKaW5kZXgg MWJhNWRjYzY4Zi4uMWUyODcwMmYxOCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9zcGVlZGhxZW5j LmMKKysrIGIvbGliYXZjb2RlYy9zcGVlZGhxZW5jLmMKQEAgLTIwNyw3ICsyMDcsOCBAQCBzdGF0 aWMgdm9pZCBlbmNvZGVfYmxvY2soTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgKmJsb2NrLCBp bnQgbikKICAgICBwdXRfYml0c19sZSgmcy0+cGIsIDQsIDYpOwogfQogCi12b2lkIGZmX3NwZWVk aHFfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzEyXVs2NF0pCitz dGF0aWMgdm9pZCBzcGVlZGhxX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqY29uc3QgcywgaW50 MTZfdCBibG9ja1sxMl1bNjRdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHVu dXNlZF94LCBpbnQgdW51c2VkX3kpCiB7CiAgICAgaW50IGk7CiAgICAgZm9yKGk9MDtpPDY7aSsr KSB7CkBAIC0yNjMsNiArMjY0LDcgQEAgc3RhdGljIGF2X2NvbGQgaW50IHNwZWVkaHFfZW5jb2Rl X2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIH0KIAogICAgIG0tPmVuY29kZV9waWN0 dXJlX2hlYWRlciA9IHNwZWVkaHFfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOworICAgIHMtPmVuY29k ZV9tYiAgICAgICAgICAgICA9IHNwZWVkaHFfZW5jb2RlX21iOwogCiAgICAgcy0+bWluX3Fjb2Vm ZiA9IC0yMDQ4OwogICAgIHMtPm1heF9xY29lZmYgPSAyMDQ3OwpkaWZmIC0tZ2l0IGEvbGliYXZj b2RlYy9zcGVlZGhxZW5jLmggYi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaAppbmRleCBmMDJmYTFm NTFhLi5lODA0Y2U3MTRhIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaAorKysg Yi9saWJhdmNvZGVjL3NwZWVkaHFlbmMuaApAQCAtMzMsOCArMzMsNiBAQAogCiAjaW5jbHVkZSAi bXBlZ3ZpZGVvLmgiCiAKLXZvaWQgZmZfc3BlZWRocV9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQg KnMsIGludDE2X3QgYmxvY2tbMTJdWzY0XSk7Ci0KIHZvaWQgZmZfc3BlZWRocV9lbmRfc2xpY2Uo TXBlZ0VuY0NvbnRleHQgKnMpOwogCiBzdGF0aWMgaW5saW5lIGludCBmZl9zcGVlZGhxX21iX3Jv d3NfaW5fc2xpY2UoaW50IHNsaWNlX251bSwgaW50IG1iX2hlaWdodCkKZGlmZiAtLWdpdCBhL2xp YmF2Y29kZWMvd212MmVuYy5jIGIvbGliYXZjb2RlYy93bXYyZW5jLmMKaW5kZXggZDcwYTY4MGZi My4uM2FiM2U3NTcyMiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy93bXYyZW5jLmMKKysrIGIvbGli YXZjb2RlYy93bXYyZW5jLmMKQEAgLTI5LDcgKzI5LDYgQEAKICNpbmNsdWRlICJtc21wZWc0ZGF0 YS5oIgogI2luY2x1ZGUgIm1zbXBlZzRfdmMxX2RhdGEuaCIKICNpbmNsdWRlICJ3bXYyLmgiCi0j aW5jbHVkZSAid212MmVuYy5oIgogCiAjZGVmaW5lIFdNVjJfRVhUUkFEQVRBX1NJWkUgNAogCkBA IC0xNDcsOCArMTQ2LDggQEAgc3RhdGljIGludCB3bXYyX2VuY29kZV9waWN0dXJlX2hlYWRlcihN UFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIC8qIE5lYXJseSBpZGVudGljYWwgdG8gd212MSBi dXQgdGhhdCBpcyBqdXN0IGJlY2F1c2Ugd2UgZG8gbm90IHVzZSB0aGUKICAqIHVzZWxlc3MgTSQg Y3JhcCBmZWF0dXJlcy4gSXQgaXMgZHVwbGljYXRlZCBoZXJlIGluIGNhc2Ugc29tZW9uZSB3YW50 cwogICogdG8gYWRkIHN1cHBvcnQgZm9yIHRoZXNlIGNyYXAgZmVhdHVyZXMuICovCi12b2lkIGZm X3dtdjJfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzZdWzY0XSwK LSAgICAgICAgICAgICAgICAgICAgICAgaW50IG1vdGlvbl94LCBpbnQgbW90aW9uX3kpCitzdGF0 aWMgdm9pZCB3bXYyX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqY29uc3QgcywgaW50MTZfdCBi bG9ja1tdWzY0XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtb3Rpb25feCwgaW50 IG1vdGlvbl95KQogewogICAgIFdNVjJFbmNDb250ZXh0ICpjb25zdCB3ID0gKFdNVjJFbmNDb250 ZXh0ICopIHM7CiAgICAgaW50IGNicCwgY29kZWRfY2JwLCBpOwpAQCAtMjI0LDYgKzIyMyw3IEBA IHN0YXRpYyBhdl9jb2xkIGludCB3bXYyX2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0 eCkKICAgICBpbnQgcmV0OwogCiAgICAgdy0+bXNtcGVnNC5tLmVuY29kZV9waWN0dXJlX2hlYWRl ciA9IHdtdjJfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOworICAgIHMtPmVuY29kZV9tYiAgICAgICAg ICAgICAgICAgICAgICAgPSB3bXYyX2VuY29kZV9tYjsKICAgICBzLT5wcml2YXRlX2N0eCA9ICZ3 LT5jb21tb247CiAgICAgcmV0ID0gZmZfbXB2X2VuY29kZV9pbml0KGF2Y3R4KTsKICAgICBpZiAo cmV0IDwgMCkKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvd212MmVuYy5oIGIvbGliYXZjb2RlYy93 bXYyZW5jLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU5MDQ2YzZhMDcuLjAwMDAw MDAwMDAKLS0tIGEvbGliYXZjb2RlYy93bXYyZW5jLmgKKysrIC9kZXYvbnVsbApAQCAtMSwzMCAr MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAyIFRoZSBGRm1wZWcgUHJvamVjdAotICoK LSAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEZGbXBlZy4KLSAqCi0gKiBGRm1wZWcgaXMgZnJlZSBz b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiBtb2RpZnkgaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCi0gKiBMaWNlbnNl IGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKLSAq IHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgotICoKLSAqIEZGbXBlZyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLAotICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRO RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCi0gKiBMZXNzZXIgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgotICoKLSAqIFlvdSBzaG91bGQg aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKLSAq IExpY2Vuc2UgYWxvbmcgd2l0aCBGRm1wZWc7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29m dHdhcmUKLSAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxv b3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSBVU0EKLSAqLwotCi0jaWZuZGVmIEFWQ09ERUNfV01W MkVOQ19ICi0jZGVmaW5lIEFWQ09ERUNfV01WMkVOQ19ICi0KLSNpbmNsdWRlICJtcGVndmlkZW8u aCIKLQotdm9pZCBmZl93bXYyX2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqIHMsIGludDE2X3Qg YmxvY2tbNl1bNjRdLAotICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW90aW9uX3gsIGludCBt b3Rpb25feSk7Ci0KLQotI2VuZGlmCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0035-avcodec-mjpegenc-Reindent-after-the-previous-commit.patch" Content-Disposition: attachment; filename*0="0035-avcodec-mjpegenc-Reindent-after-the-previous-commit.pat"; filename*1="ch" Content-Transfer-Encoding: base64 RnJvbSA4NWE0OGM5MWQ3ZGY4NGFlZGNiN2RlMGEzZWY4NmMzMjM0ZjUxZDY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA0IE1hciAyMDI1IDE5OjI2OjUwICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAzNS83N10gYXZjb2RlYy9tanBlZ2VuYzogUmVpbmRlbnQgYWZ0ZXIgdGhlIHBy ZXZpb3VzIGNvbW1pdAoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFz LnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tanBlZ2VuYy5jIHwgMTAy ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDQ5IGluc2VydGlvbnMoKyksIDUzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvbWpwZWdlbmMuYyBiL2xpYmF2Y29kZWMvbWpwZWdlbmMuYwppbmRleCA2YzU4YzA0ODky Li5hNmYyMDJkYTBhIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21qcGVnZW5jLmMKKysrIGIvbGli YXZjb2RlYy9tanBlZ2VuYy5jCkBAIC00NjYsNzEgKzQ2Niw2NyBAQCBzdGF0aWMgdm9pZCBlbmNv ZGVfYmxvY2soTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgKmJsb2NrLCBpbnQgbikKIHN0YXRp YyB2b2lkIG1qcGVnX3JlY29yZF9tYihNcGVnRW5jQ29udGV4dCAqY29uc3QgcywgaW50MTZfdCBi bG9ja1tdWzY0XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdW51c2VkX3gsIGlu dCB1bnVzZWRfeSkKIHsKLSAgICBpbnQgaTsKLSAgICAgICAgaWYgKHMtPmNocm9tYV9mb3JtYXQg PT0gQ0hST01BXzQ0NCkgewotICAgICAgICAgICAgcmVjb3JkX2Jsb2NrKHMsIGJsb2NrWzBdLCAw KTsKLSAgICAgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1syXSwgMik7Ci0gICAgICAgICAg ICByZWNvcmRfYmxvY2socywgYmxvY2tbNF0sIDQpOwotICAgICAgICAgICAgcmVjb3JkX2Jsb2Nr KHMsIGJsb2NrWzhdLCA4KTsKKyAgICBpZiAocy0+Y2hyb21hX2Zvcm1hdCA9PSBDSFJPTUFfNDQ0 KSB7CisgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1swXSwgMCk7CisgICAgICAgIHJlY29y ZF9ibG9jayhzLCBibG9ja1syXSwgMik7CisgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1s0 XSwgNCk7CisgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1s4XSwgOCk7CisgICAgICAgIHJl Y29yZF9ibG9jayhzLCBibG9ja1s1XSwgNSk7CisgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9j a1s5XSwgOSk7CisKKyAgICAgICAgaWYgKDE2KnMtPm1iX3grOCA8IHMtPndpZHRoKSB7CisgICAg ICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbMV0sICAgMSk7CisgICAgICAgICAgICByZWNv cmRfYmxvY2socywgYmxvY2tbM10sICAgMyk7CisgICAgICAgICAgICByZWNvcmRfYmxvY2socywg YmxvY2tbNl0sICAgNik7CisgICAgICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbMTBdLCAx MCk7CisgICAgICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbN10sICAgNyk7CisgICAgICAg ICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbMTFdLCAxMSk7CisgICAgICAgIH0KKyAgICB9IGVs c2UgeworICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IDU7IGkrKykKKyAgICAgICAgICAgIHJl Y29yZF9ibG9jayhzLCBibG9ja1tpXSwgaSk7CisgICAgICAgIGlmIChzLT5jaHJvbWFfZm9ybWF0 ID09IENIUk9NQV80MjApIHsKICAgICAgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1s1XSwg NSk7Ci0gICAgICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbOV0sIDkpOwotCi0gICAgICAg ICAgICBpZiAoMTYqcy0+bWJfeCs4IDwgcy0+d2lkdGgpIHsKLSAgICAgICAgICAgICAgICByZWNv cmRfYmxvY2socywgYmxvY2tbMV0sIDEpOwotICAgICAgICAgICAgICAgIHJlY29yZF9ibG9jayhz LCBibG9ja1szXSwgMyk7Ci0gICAgICAgICAgICAgICAgcmVjb3JkX2Jsb2NrKHMsIGJsb2NrWzZd LCA2KTsKLSAgICAgICAgICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbMTBdLCAxMCk7Ci0g ICAgICAgICAgICAgICAgcmVjb3JkX2Jsb2NrKHMsIGJsb2NrWzddLCA3KTsKLSAgICAgICAgICAg ICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbMTFdLCAxMSk7Ci0gICAgICAgICAgICB9CiAgICAg ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBmb3IoaT0wO2k8NTtpKyspIHsKLSAgICAgICAgICAg ICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbaV0sIGkpOwotICAgICAgICAgICAgfQotICAgICAg ICAgICAgaWYgKHMtPmNocm9tYV9mb3JtYXQgPT0gQ0hST01BXzQyMCkgewotICAgICAgICAgICAg ICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1s1XSwgNSk7Ci0gICAgICAgICAgICB9IGVsc2Ugewot ICAgICAgICAgICAgICAgIHJlY29yZF9ibG9jayhzLCBibG9ja1s2XSwgNik7Ci0gICAgICAgICAg ICAgICAgcmVjb3JkX2Jsb2NrKHMsIGJsb2NrWzVdLCA1KTsKLSAgICAgICAgICAgICAgICByZWNv cmRfYmxvY2socywgYmxvY2tbN10sIDcpOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgcmVj b3JkX2Jsb2NrKHMsIGJsb2NrWzZdLCA2KTsKKyAgICAgICAgICAgIHJlY29yZF9ibG9jayhzLCBi bG9ja1s1XSwgNSk7CisgICAgICAgICAgICByZWNvcmRfYmxvY2socywgYmxvY2tbN10sIDcpOwog ICAgICAgICB9CisgICAgfQogfQogCiBzdGF0aWMgdm9pZCBtanBlZ19lbmNvZGVfbWIoTXBlZ0Vu Y0NvbnRleHQgKmNvbnN0IHMsIGludDE2X3QgYmxvY2tbXVs2NF0sCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaW50IHVudXNlZF94LCBpbnQgdW51c2VkX3kpCiB7Ci0gICAgaW50IGk7Ci0g ICAgICAgIGlmIChzLT5jaHJvbWFfZm9ybWF0ID09IENIUk9NQV80NDQpIHsKLSAgICAgICAgICAg IGVuY29kZV9ibG9jayhzLCBibG9ja1swXSwgMCk7Ci0gICAgICAgICAgICBlbmNvZGVfYmxvY2so cywgYmxvY2tbMl0sIDIpOwotICAgICAgICAgICAgZW5jb2RlX2Jsb2NrKHMsIGJsb2NrWzRdLCA0 KTsKLSAgICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBibG9ja1s4XSwgOCk7CisgICAgaWYgKHMt PmNocm9tYV9mb3JtYXQgPT0gQ0hST01BXzQ0NCkgeworICAgICAgICBlbmNvZGVfYmxvY2socywg YmxvY2tbMF0sIDApOworICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbMl0sIDIpOworICAg ICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbNF0sIDQpOworICAgICAgICBlbmNvZGVfYmxvY2so cywgYmxvY2tbOF0sIDgpOworICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbNV0sIDUpOwor ICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbOV0sIDkpOworCisgICAgICAgIGlmICgxNiAq IHMtPm1iX3ggKyA4IDwgcy0+d2lkdGgpIHsKKyAgICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBi bG9ja1sxXSwgMSk7CisgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbM10sIDMpOwor ICAgICAgICAgICAgZW5jb2RlX2Jsb2NrKHMsIGJsb2NrWzZdLCA2KTsKKyAgICAgICAgICAgIGVu Y29kZV9ibG9jayhzLCBibG9ja1sxMF0sIDEwKTsKKyAgICAgICAgICAgIGVuY29kZV9ibG9jayhz LCBibG9ja1s3XSwgNyk7CisgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbMTFdLCAx MSk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8 IDU7IGkrKykKKyAgICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBibG9ja1tpXSwgaSk7CisgICAg ICAgIGlmIChzLT5jaHJvbWFfZm9ybWF0ID09IENIUk9NQV80MjApIHsKICAgICAgICAgICAgIGVu Y29kZV9ibG9jayhzLCBibG9ja1s1XSwgNSk7Ci0gICAgICAgICAgICBlbmNvZGVfYmxvY2socywg YmxvY2tbOV0sIDkpOwotCi0gICAgICAgICAgICBpZiAoMTYqcy0+bWJfeCs4IDwgcy0+d2lkdGgp IHsKLSAgICAgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbMV0sIDEpOwotICAgICAg ICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBibG9ja1szXSwgMyk7Ci0gICAgICAgICAgICAgICAg ZW5jb2RlX2Jsb2NrKHMsIGJsb2NrWzZdLCA2KTsKLSAgICAgICAgICAgICAgICBlbmNvZGVfYmxv Y2socywgYmxvY2tbMTBdLCAxMCk7Ci0gICAgICAgICAgICAgICAgZW5jb2RlX2Jsb2NrKHMsIGJs b2NrWzddLCA3KTsKLSAgICAgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbMTFdLCAx MSk7Ci0gICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBmb3IoaT0w O2k8NTtpKyspIHsKLSAgICAgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbaV0sIGkp OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKHMtPmNocm9tYV9mb3JtYXQgPT0gQ0hS T01BXzQyMCkgewotICAgICAgICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBibG9ja1s1XSwgNSk7 Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGVuY29kZV9ibG9jayhzLCBi bG9ja1s2XSwgNik7Ci0gICAgICAgICAgICAgICAgZW5jb2RlX2Jsb2NrKHMsIGJsb2NrWzVdLCA1 KTsKLSAgICAgICAgICAgICAgICBlbmNvZGVfYmxvY2socywgYmxvY2tbN10sIDcpOwotICAgICAg ICAgICAgfQorICAgICAgICAgICAgZW5jb2RlX2Jsb2NrKHMsIGJsb2NrWzZdLCA2KTsKKyAgICAg ICAgICAgIGVuY29kZV9ibG9jayhzLCBibG9ja1s1XSwgNSk7CisgICAgICAgICAgICBlbmNvZGVf YmxvY2socywgYmxvY2tbN10sIDcpOwogICAgICAgICB9CisgICAgfQogCi0gICAgICAgIHMtPmlf dGV4X2JpdHMgKz0gZ2V0X2JpdHNfZGlmZihzKTsKKyAgICBzLT5pX3RleF9iaXRzICs9IGdldF9i aXRzX2RpZmYocyk7CiB9CiAKIHN0YXRpYyBhdl9jb2xkIGludCBtanBlZ19lbmNvZGVfaW5pdChB VkNvZGVjQ29udGV4dCAqYXZjdHgpCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0036-avcodec-mpegvideo-Add-pointer-to-main-context-to-sli.patch" Content-Disposition: attachment; filename*0="0036-avcodec-mpegvideo-Add-pointer-to-main-context-to-sli.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmMGFiZmQ5NDI2MzA4MjI4NGM2ZTQzNGQ5OGRjOWEwOTNjOWUxNzBkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNzoxNjozMyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMzYvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBBZGQgcG9pbnRlciB0byBtYWlu IGNvbnRleHQgdG8gc2xpY2UKIGNvbnRleHRzCgpJdCBpcyBhIHBvaW50ZXIgdG8gY29uc3QgdG8g YWxsb3cgdGhlIHNsaWNlIHRocmVhZHMgdG8gaW5zcGVjdAp2YWx1ZXMgd2l0aG91dCBtb2RpZnlp bmcgdGhlbTsgYWxzbyBtYWtlIGl0IGEgc2ltcGxlIGNhc3QKZm9yIGNvZGVjcyB0aGF0IGRvbid0 IHN1cHBvcnQgc2xpY2UgdGhyZWFkaW5nLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhh cmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVn dmlkZW8uYyAgICB8ICAyICsrCiBsaWJhdmNvZGVjL21wZWd2aWRlby5oICAgIHwgIDQgKysrKwog bGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCB8IDEyICsrKysrKysrKysrKwogMyBmaWxlcyBjaGFu Z2VkLCAxOCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW8u YyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMKaW5kZXggOWNkNjcxNTFhYS4uYmMzNjdmYmEwNyAx MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW8uYworKysgYi9saWJhdmNvZGVjL21wZWd2 aWRlby5jCkBAIC0zODcsNiArMzg3LDggQEAgYXZfY29sZCBpbnQgZmZfbXB2X2luaXRfZHVwbGlj YXRlX2NvbnRleHRzKE1wZWdFbmNDb250ZXh0ICpzKQogewogICAgIGludCBuYl9zbGljZXMgPSBz LT5zbGljZV9jb250ZXh0X2NvdW50LCByZXQ7CiAKKyAgICBzLT5wYXJlbnQgPSBzOworCiAgICAg LyogV2UgaW5pdGlhbGl6ZSB0aGUgY29waWVzIGJlZm9yZSB0aGUgb3JpZ2luYWwgc28gdGhhdAog ICAgICAqIGZpZWxkcyBhbGxvY2F0ZWQgaW4gaW5pdF9kdXBsaWNhdGVfY29udGV4dCBhcmUgTlVM TCBhZnRlcgogICAgICAqIGNvcHlpbmcuIFRoaXMgcHJldmVudHMgZG91YmxlLWZyZWVzIHVwb24g YWxsb2NhdGlvbiBlcnJvci4gKi8KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgg Yi9saWJhdmNvZGVjL21wZWd2aWRlby5oCmluZGV4IGJkYWI3ODJiMjkuLjA0ZWFkZTEzYWEgMTAw NjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlk ZW8uaApAQCAtODYsNiArODYsMTAgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgewog ICAgIHVpbnQ4X3QgcGVybXV0YXRlZF9pbnRyYV92X3NjYW50YWJsZVs2NF07CiAKICAgICBzdHJ1 Y3QgQVZDb2RlY0NvbnRleHQgKmF2Y3R4OworICAgIHVuaW9uIHsKKyAgICAgICAgY29uc3Qgc3Ry dWN0IE1wZWdFbmNDb250ZXh0ICpwYXJlbnQ7CisgICAgICAgIGNvbnN0IHN0cnVjdCBNUFZNYWlu RW5jQ29udGV4dCAqZW5jcGFyZW50OworICAgIH07CiAgICAgLyogVGhlIGZvbGxvd2luZyBwb2lu dGVyIGlzIGludGVuZGVkIGZvciBjb2RlY3Mgc2hhcmluZyBjb2RlCiAgICAgICogYmV0d2VlbiBk ZWNvZGVyIGFuZCBlbmNvZGVyIGFuZCBpbiBuZWVkIG9mIGEgY29tbW9uIGNvbnRleHQgdG8gZG8g c28uICovCiAgICAgdm9pZCAqcHJpdmF0ZV9jdHg7CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21w ZWd2aWRlb2VuYy5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAppbmRleCA0Yjc0ZjhlYjQ2 Li42NWJiMzQ0N2IzIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCisrKyBi L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUg PGZsb2F0Lmg+CiAKKyNpbmNsdWRlICJsaWJhdnV0aWwvYXZhc3NlcnQuaCIKICNpbmNsdWRlICJs aWJhdnV0aWwvb3B0LmgiCiAjaW5jbHVkZSAibXBlZ3ZpZGVvLmgiCiAjaW5jbHVkZSAicmF0ZWNv bnRyb2wuaCIKQEAgLTkxLDYgKzkyLDE3IEBAIHR5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250 ZXh0IHsKICAgICBpbnQ2NF90IG1jX21iX3Zhcl9zdW07ICAgICAgICAgLy8vPCBtb3Rpb24gY29t cGVuc2F0ZWQgTUIgdmFyaWFuY2UgZm9yIGN1cnJlbnQgZnJhbWUKIH0gTVBWTWFpbkVuY0NvbnRl eHQ7CiAKK3N0YXRpYyBpbmxpbmUgY29uc3QgTVBWTWFpbkVuY0NvbnRleHQgKnNsaWNlX3RvX21h aW5lbmMoY29uc3QgTXBlZ0VuY0NvbnRleHQgKnMpCit7CisjaWZkZWYgTk9fU0xJQ0VfVEhSRUFE SU5HX0hFUkUKKyAgICBhdl9hc3NlcnQyKHMtPnNsaWNlX2NvbnRleHRfY291bnQgPD0gMSAmJgor ICAgICAgICAgICAgICAgIShzLT5hdmN0eC0+Y29kZWMtPmNhcGFiaWxpdGllcyAmIEFWX0NPREVD X0NBUF9TTElDRV9USFJFQURTKSk7CisgICAgcmV0dXJuIChjb25zdCBNUFZNYWluRW5jQ29udGV4 dCopczsKKyNlbHNlCisgICAgcmV0dXJuIHMtPmVuY3BhcmVudDsKKyNlbmRpZgorfQorCiAjZGVm aW5lIE1BWF9GQ09ERSAgICAgICAgNwogI2RlZmluZSBVTklfQUNfRU5DX0lOREVYKHJ1bixsZXZl bCkgKChydW4pKjEyOCArIChsZXZlbCkpCiAjZGVmaW5lIElOUExBQ0VfT0ZGU0VUIDE2Ci0tIAoy LjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0037-avcodec-mpegvideo-Move-max_b_frames-to-MPVMainEncCon.patch" Content-Disposition: attachment; filename*0="0037-avcodec-mpegvideo-Move-max_b_frames-to-MPVMainEncCon.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA0NWYxOWVkMDNkNGMxN2RmYmMwYjhhYjVlMDRmYTljMWQxMWE2ZmU4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxMToyMDoyNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMzcvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIG1heF9iX2ZyYW1lcyB0 bwogTVBWTWFpbkVuY0NvbnRleHQKClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8 YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZzR2aWRl b2VuYy5jIHwgMTcgKysrKysrKy0tLS0tLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggICAgIHwg IDEgLQogbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgfCA0OCArKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tLS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAgfCAgMSArCiBs aWJhdmNvZGVjL3JhdGVjb250cm9sLmMgICB8ICA2ICsrLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDM2 IGluc2VydGlvbnMoKyksIDM3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXBlZzR2aWRlb2VuYy5jIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKaW5kZXggNGY5NzE5 OWViYS4uZDU0MDY0Y2Q4OSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMK KysrIGIvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMKQEAgLTY1MCwxMSArNjUwLDExIEBAIHN0 YXRpYyB2b2lkIG1wZWc0X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqY29uc3QgcywgaW50MTZf dCBibG9ja1tdWzY0XSwKIAogICAgICAgICAgICAgaWYgKChjYnAgfCBtb3Rpb25feCB8IG1vdGlv bl95IHwgcy0+ZHF1YW50KSA9PSAwICYmCiAgICAgICAgICAgICAgICAgcy0+bXZfdHlwZSA9PSBN Vl9UWVBFXzE2WDE2KSB7CisgICAgICAgICAgICAgICAgY29uc3QgTVBWTWFpbkVuY0NvbnRleHQg KmNvbnN0IG0gPSBzbGljZV90b19tYWluZW5jKHMpOwogICAgICAgICAgICAgICAgIC8qIENoZWNr IGlmIHRoZSBCLWZyYW1lcyBjYW4gc2tpcCBpdCB0b28sIGFzIHdlIG11c3Qgc2tpcCBpdAogICAg ICAgICAgICAgICAgICAqIGlmIHdlIHNraXAgaGVyZSB3aHkgZGlkbid0IHRoZXkganVzdCBjb21w cmVzcwogICAgICAgICAgICAgICAgICAqIHRoZSBza2lwLW1iIGJpdHMgaW5zdGVhZCBvZiByZXVz aW5nIHRoZW0gPyEgKi8KLSAgICAgICAgICAgICAgICBpZiAocy0+bWF4X2JfZnJhbWVzID4gMCkg ewotICAgICAgICAgICAgICAgICAgICBpbnQgaTsKKyAgICAgICAgICAgICAgICBpZiAobS0+bWF4 X2JfZnJhbWVzID4gMCkgewogICAgICAgICAgICAgICAgICAgICBpbnQgeCwgeSwgb2Zmc2V0Owog ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICpwX3BpYzsKIApAQCAtNjY1LDcgKzY2 NSw3IEBAIHN0YXRpYyB2b2lkIG1wZWc0X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqY29uc3Qg cywgaW50MTZfdCBibG9ja1tdWzY0XSwKICAgICAgICAgICAgICAgICAgICAgcF9waWMgID0gcy0+ bmV3X3BpYy0+ZGF0YVswXSArIG9mZnNldDsKIAogICAgICAgICAgICAgICAgICAgICBzLT5tYl9z a2lwcGVkID0gMTsKLSAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHMtPm1heF9i X2ZyYW1lczsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwg bS0+bWF4X2JfZnJhbWVzOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVp bnQ4X3QgKmJfcGljOwogICAgICAgICAgICAgICAgICAgICAgICAgaW50IGRpZmY7CiAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBNUFZQaWN0dXJlICpwaWMgPSBzLT5yZW9yZGVyZWRfaW5w dXRfcGljdHVyZVtpICsgMV07CkBAIC05MjksMTQgKzkyOSwxNSBAQCBzdGF0aWMgdm9pZCBtcGVn NF9lbmNvZGVfZ29wX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqcykKICAgICBmZl9tcGVnNF9zdHVm ZmluZygmcy0+cGIpOwogfQogCi1zdGF0aWMgdm9pZCBtcGVnNF9lbmNvZGVfdmlzdWFsX29iamVj dF9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpCitzdGF0aWMgdm9pZCBtcGVnNF9lbmNvZGVfdmlz dWFsX29iamVjdF9oZWFkZXIoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiB7CisgICAgTXBl Z0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKICAgICBpbnQgcHJvZmlsZV9hbmRfbGV2ZWxf aW5kaWNhdGlvbjsKICAgICBpbnQgdm9fdmVyX2lkOwogCiAgICAgaWYgKHMtPmF2Y3R4LT5wcm9m aWxlICE9IEFWX1BST0ZJTEVfVU5LTk9XTikgewogICAgICAgICBwcm9maWxlX2FuZF9sZXZlbF9p bmRpY2F0aW9uID0gcy0+YXZjdHgtPnByb2ZpbGUgPDwgNDsKLSAgICB9IGVsc2UgaWYgKHMtPm1h eF9iX2ZyYW1lcyB8fCBzLT5xdWFydGVyX3NhbXBsZSkgeworICAgIH0gZWxzZSBpZiAobS0+bWF4 X2JfZnJhbWVzIHx8IHMtPnF1YXJ0ZXJfc2FtcGxlKSB7CiAgICAgICAgIHByb2ZpbGVfYW5kX2xl dmVsX2luZGljYXRpb24gPSAweEYwOyAgLy8gYWR2IHNpbXBsZQogICAgIH0gZWxzZSB7CiAgICAg ICAgIHByb2ZpbGVfYW5kX2xldmVsX2luZGljYXRpb24gPSAweDAwOyAgLy8gc2ltcGxlCkBAIC05 NzgsNyArOTc5LDcgQEAgc3RhdGljIHZvaWQgbXBlZzRfZW5jb2RlX3ZvbF9oZWFkZXIoTXBlZzRF bmNDb250ZXh0ICpjb25zdCBtNCwKICAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtNC0+ bS5zOwogICAgIGludCB2b192ZXJfaWQsIHZvX3R5cGUsIGFzcGVjdF9yYXRpb19pbmZvOwogCi0g ICAgaWYgKHMtPm1heF9iX2ZyYW1lcyB8fCBzLT5xdWFydGVyX3NhbXBsZSkgeworICAgIGlmICht NC0+bS5tYXhfYl9mcmFtZXMgfHwgcy0+cXVhcnRlcl9zYW1wbGUpIHsKICAgICAgICAgdm9fdmVy X2lkICA9IDU7CiAgICAgICAgIHZvX3R5cGUgPSBBRFZfU0lNUExFX1ZPX1RZUEU7CiAgICAgfSBl bHNlIHsKQEAgLTEwNzIsNyArMTA3Myw3IEBAIHN0YXRpYyBpbnQgbXBlZzRfZW5jb2RlX3BpY3R1 cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgIGlmIChzLT5waWN0X3R5 cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kpIHsKICAgICAgICAgaWYgKCEocy0+YXZjdHgtPmZsYWdz ICYgQVZfQ09ERUNfRkxBR19HTE9CQUxfSEVBREVSKSkgewogICAgICAgICAgICAgaWYgKHMtPmF2 Y3R4LT5zdHJpY3Rfc3RkX2NvbXBsaWFuY2UgPCBGRl9DT01QTElBTkNFX1ZFUllfU1RSSUNUKSAg Ly8gSEFDSywgdGhlIHJlZmVyZW5jZSBzdyBpcyBidWdneQotICAgICAgICAgICAgICAgIG1wZWc0 X2VuY29kZV92aXN1YWxfb2JqZWN0X2hlYWRlcihzKTsKKyAgICAgICAgICAgICAgICBtcGVnNF9l bmNvZGVfdmlzdWFsX29iamVjdF9oZWFkZXIobSk7CiAgICAgICAgICAgICBpZiAocy0+YXZjdHgt PnN0cmljdF9zdGRfY29tcGxpYW5jZSA8IEZGX0NPTVBMSUFOQ0VfVkVSWV9TVFJJQ1QgfHwgcy0+ cGljdHVyZV9udW1iZXIgPT0gMCkgIC8vIEhBQ0ssIHRoZSByZWZlcmVuY2Ugc3cgaXMgYnVnZ3kK ICAgICAgICAgICAgICAgICBtcGVnNF9lbmNvZGVfdm9sX2hlYWRlcihtNCwgMCwgMCk7CiAgICAg ICAgIH0KQEAgLTEzMzksNyArMTM0MCw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBlbmNvZGVfaW5p dChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9N RU0pOwogICAgICAgICBpbml0X3B1dF9iaXRzKCZzLT5wYiwgcy0+YXZjdHgtPmV4dHJhZGF0YSwg MTAyNCk7CiAKLSAgICAgICAgbXBlZzRfZW5jb2RlX3Zpc3VhbF9vYmplY3RfaGVhZGVyKHMpOwor ICAgICAgICBtcGVnNF9lbmNvZGVfdmlzdWFsX29iamVjdF9oZWFkZXIobSk7CiAgICAgICAgIG1w ZWc0X2VuY29kZV92b2xfaGVhZGVyKG00LCAwLCAwKTsKIAogLy8gICAgICAgICAgICBmZl9tcGVn NF9zdHVmZmluZygmcy0+cGIpOyA/CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5o IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCAwNGVhZGUxM2FhLi5kMjViNWNkZjNhIDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvLmgKQEAgLTEwNiw3ICsxMDYsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7 CiAKICAgICBlbnVtIEFWQ29kZWNJRCBjb2RlY19pZDsgICAgIC8qIHNlZSBBVl9DT0RFQ19JRF94 eHggKi8KICAgICBpbnQgZW5jb2Rpbmc7ICAgICAvLy88IHRydWUgaWYgd2UgYXJlIGVuY29kaW5n ICh2cyBkZWNvZGluZykKLSAgICBpbnQgbWF4X2JfZnJhbWVzOyAvLy88IG1heCBudW1iZXIgb2Yg Qi1mcmFtZXMgZm9yIGVuY29kaW5nCiAgICAgaW50IGx1bWFfZWxpbV90aHJlc2hvbGQ7CiAgICAg aW50IGNocm9tYV9lbGltX3RocmVzaG9sZDsKICAgICBpbnQgd29ya2Fyb3VuZF9idWdzOyAgICAg ICAvLy88IHdvcmthcm91bmQgYnVncyBpbiBlbmNvZGVycyB3aGljaCBjYW5ub3QgYmUgZGV0ZWN0 ZWQgYXV0b21hdGljYWxseQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMg Yi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwppbmRleCA2NjUwZTViMzVkLi5mZmE2NTJkMDJk IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVj L21wZWd2aWRlb19lbmMuYwpAQCAtNDcwLDkgKzQ3MCw5IEBAIGF2X2NvbGQgaW50IGZmX21wdl9l bmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgICAgICAgICAibWF4IGIg ZnJhbWVzIG11c3QgYmUgMCBvciBwb3NpdGl2ZSBmb3IgbXBlZ3ZpZGVvIGJhc2VkIGVuY29kZXJz XG4iKTsKICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKICAgICB9Ci0gICAgcy0+bWF4 X2JfZnJhbWVzID0gYXZjdHgtPm1heF9iX2ZyYW1lczsKKyAgICBtLT5tYXhfYl9mcmFtZXMgPSBh dmN0eC0+bWF4X2JfZnJhbWVzOwogICAgIHMtPmNvZGVjX2lkICAgICA9IGF2Y3R4LT5jb2RlYy0+ aWQ7Ci0gICAgaWYgKHMtPm1heF9iX2ZyYW1lcyAmJiAhKGF2Y3R4LT5jb2RlYy0+Y2FwYWJpbGl0 aWVzICYgQVZfQ09ERUNfQ0FQX0RFTEFZKSkgeworICAgIGlmIChtLT5tYXhfYl9mcmFtZXMgJiYg IShhdmN0eC0+Y29kZWMtPmNhcGFiaWxpdGllcyAmIEFWX0NPREVDX0NBUF9ERUxBWSkpIHsKICAg ICAgICAgYXZfbG9nKGF2Y3R4LCBBVl9MT0dfRVJST1IsICJCLWZyYW1lcyBub3Qgc3VwcG9ydGVk IGJ5IGNvZGVjXG4iKTsKICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKICAgICB9CkBA IC02OTIsNyArNjkyLDcgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWND b250ZXh0ICphdmN0eCkKICAgICAgICAgICAgICAgICAgICAic2V0IHN0cmljdF9zdGRfY29tcGxp YW5jZSB0byAndW5vZmZpY2lhbCcgb3IgbG93ZXIgaW4gb3JkZXIgdG8gYWxsb3cgaXRcbiIpOwog ICAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKICAgICAgICAgfQotICAgICAgICBp ZiAocy0+bWF4X2JfZnJhbWVzICE9IDApIHsKKyAgICAgICAgaWYgKG0tPm1heF9iX2ZyYW1lcyAh PSAwKSB7CiAgICAgICAgICAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19FUlJPUiwKICAgICAgICAg ICAgICAgICAgICAiQi1mcmFtZXMgY2Fubm90IGJlIHVzZWQgd2l0aCBsb3cgZGVsYXlcbiIpOwog ICAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKQEAgLTc0NCw3ICs3NDQsNyBAQCBh dl9jb2xkIGludCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAg IGNhc2UgQVZfQ09ERUNfSURfTVBFRzFWSURFTzoKICAgICAgICAgcy0+b3V0X2Zvcm1hdCA9IEZN VF9NUEVHMTsKICAgICAgICAgcy0+bG93X2RlbGF5ICA9ICEhKGF2Y3R4LT5mbGFncyAmIEFWX0NP REVDX0ZMQUdfTE9XX0RFTEFZKTsKLSAgICAgICAgYXZjdHgtPmRlbGF5ICA9IHMtPmxvd19kZWxh eSA/IDAgOiAocy0+bWF4X2JfZnJhbWVzICsgMSk7CisgICAgICAgIGF2Y3R4LT5kZWxheSAgPSBz LT5sb3dfZGVsYXkgPyAwIDogKG0tPm1heF9iX2ZyYW1lcyArIDEpOwogICAgICAgICBmZl9tcGVn MV9lbmNvZGVfaW5pdChzKTsKICAgICAgICAgYnJlYWs7CiAjZW5kaWYKQEAgLTgzNCw4ICs4MzQs OCBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4 KQogICAgICAgICBzLT5oMjYzX3ByZWQgICAgICAgPSAxOwogICAgICAgICBzLT51bnJlc3RyaWN0 ZWRfbXYgPSAxOwogICAgICAgICBzLT5mbGlwZmxvcF9yb3VuZGluZyA9IDE7Ci0gICAgICAgIHMt Pmxvd19kZWxheSAgICAgICA9IHMtPm1heF9iX2ZyYW1lcyA/IDAgOiAxOwotICAgICAgICBhdmN0 eC0+ZGVsYXkgICAgICAgPSBzLT5sb3dfZGVsYXkgPyAwIDogKHMtPm1heF9iX2ZyYW1lcyArIDEp OworICAgICAgICBzLT5sb3dfZGVsYXkgICAgICAgPSBtLT5tYXhfYl9mcmFtZXMgPyAwIDogMTsK KyAgICAgICAgYXZjdHgtPmRlbGF5ICAgICAgID0gcy0+bG93X2RlbGF5ID8gMCA6IChtLT5tYXhf Yl9mcmFtZXMgKyAxKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBBVl9DT0RFQ19JRF9NU01Q RUc0VjI6CiAgICAgICAgIHMtPm91dF9mb3JtYXQgICAgICA9IEZNVF9IMjYzOwpAQCAtMTAxMyw3 ICsxMDEzLDcgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWNDb250ZXh0 ICphdmN0eCkKICAgICAgICAgcmV0dXJuIHJldDsKIAogICAgIGlmIChtLT5iX2ZyYW1lX3N0cmF0 ZWd5ID09IDIpIHsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IHMtPm1heF9iX2ZyYW1lcyArIDI7 IGkrKykgeworICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG0tPm1heF9iX2ZyYW1lcyArIDI7 IGkrKykgewogICAgICAgICAgICAgbS0+dG1wX2ZyYW1lc1tpXSA9IGF2X2ZyYW1lX2FsbG9jKCk7 CiAgICAgICAgICAgICBpZiAoIW0tPnRtcF9mcmFtZXNbaV0pCiAgICAgICAgICAgICAgICAgcmV0 dXJuIEFWRVJST1IoRU5PTUVNKTsKQEAgLTEyNTUsNyArMTI1NSw3IEBAIHN0YXRpYyBpbnQgbG9h ZF9pbnB1dF9waWN0dXJlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBjb25zdCBBVkZyYW1l ICpwaWNfYXJnCiAgICAgTVBWUGljdHVyZSAqcGljID0gTlVMTDsKICAgICBpbnQ2NF90IHB0czsK ICAgICBpbnQgZGlzcGxheV9waWN0dXJlX251bWJlciA9IDAsIHJldDsKLSAgICBpbnQgZW5jb2Rp bmdfZGVsYXkgPSBzLT5tYXhfYl9mcmFtZXMgPyBzLT5tYXhfYl9mcmFtZXMKKyAgICBpbnQgZW5j b2RpbmdfZGVsYXkgPSBtLT5tYXhfYl9mcmFtZXMgPyBtLT5tYXhfYl9mcmFtZXMKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAocy0+bG93X2RlbGF5ID8gMCA6IDEp OwogICAgIGludCBmbHVzaF9vZmZzZXQgPSAxOwogICAgIGludCBkaXJlY3QgPSAxOwpAQCAtMTQ2 MSw3ICsxNDYxLDcgQEAgc3RhdGljIGludCBlc3RpbWF0ZV9iZXN0X2JfY291bnQoTVBWTWFpbkVu Y0NvbnRleHQgKmNvbnN0IG0pCiAgICAgY29uc3QgaW50IHNjYWxlID0gbS0+YnJkX3NjYWxlOwog ICAgIGludCB3aWR0aCAgPSBzLT53aWR0aCAgPj4gc2NhbGU7CiAgICAgaW50IGhlaWdodCA9IHMt PmhlaWdodCA+PiBzY2FsZTsKLSAgICBpbnQgaSwgaiwgb3V0X3NpemUsIHBfbGFtYmRhLCBiX2xh bWJkYSwgbGFtYmRhMjsKKyAgICBpbnQgb3V0X3NpemUsIHBfbGFtYmRhLCBiX2xhbWJkYSwgbGFt YmRhMjsKICAgICBpbnQ2NF90IGJlc3RfcmQgID0gSU5UNjRfTUFYOwogICAgIGludCBiZXN0X2Jf Y291bnQgPSAtMTsKICAgICBpbnQgcmV0ID0gMDsKQEAgLTE0ODEsNyArMTQ4MSw3IEBAIHN0YXRp YyBpbnQgZXN0aW1hdGVfYmVzdF9iX2NvdW50KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQog ICAgIGxhbWJkYTIgID0gKGJfbGFtYmRhICogYl9sYW1iZGEgKyAoMSA8PCBGRl9MQU1CREFfU0hJ RlQpIC8gMikgPj4KICAgICAgICAgICAgICAgIEZGX0xBTUJEQV9TSElGVDsKIAotICAgIGZvciAo aSA9IDA7IGkgPCBzLT5tYXhfYl9mcmFtZXMgKyAyOyBpKyspIHsKKyAgICBmb3IgKGludCBpID0g MDsgaSA8IG0tPm1heF9iX2ZyYW1lcyArIDI7IGkrKykgewogICAgICAgICBjb25zdCBNUFZQaWN0 dXJlICpwcmVfaW5wdXRfcHRyID0gaSA/IHMtPmlucHV0X3BpY3R1cmVbaSAtIDFdIDoKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5uZXh0X3BpYy5wdHI7CiAK QEAgLTE1MTMsNyArMTUxMyw3IEBAIHN0YXRpYyBpbnQgZXN0aW1hdGVfYmVzdF9iX2NvdW50KE1Q Vk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAgICB9CiAgICAgfQogCi0gICAgZm9yIChq ID0gMDsgaiA8IHMtPm1heF9iX2ZyYW1lcyArIDE7IGorKykgeworICAgIGZvciAoaW50IGogPSAw OyBqIDwgbS0+bWF4X2JfZnJhbWVzICsgMTsgaisrKSB7CiAgICAgICAgIEFWQ29kZWNDb250ZXh0 ICpjOwogICAgICAgICBpbnQ2NF90IHJkID0gMDsKIApAQCAtMTUzNiw3ICsxNTM2LDcgQEAgc3Rh dGljIGludCBlc3RpbWF0ZV9iZXN0X2JfY291bnQoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0p CiAgICAgICAgIGMtPm1lX3N1Yl9jbXAgICA9IHMtPmF2Y3R4LT5tZV9zdWJfY21wOwogICAgICAg ICBjLT5waXhfZm10ICAgICAgPSBBVl9QSVhfRk1UX1lVVjQyMFA7CiAgICAgICAgIGMtPnRpbWVf YmFzZSAgICA9IHMtPmF2Y3R4LT50aW1lX2Jhc2U7Ci0gICAgICAgIGMtPm1heF9iX2ZyYW1lcyA9 IHMtPm1heF9iX2ZyYW1lczsKKyAgICAgICAgYy0+bWF4X2JfZnJhbWVzID0gbS0+bWF4X2JfZnJh bWVzOwogCiAgICAgICAgIHJldCA9IGF2Y29kZWNfb3BlbjIoYywgcy0+YXZjdHgtPmNvZGVjLCBO VUxMKTsKICAgICAgICAgaWYgKHJldCA8IDApCkBAIC0xNTU0LDggKzE1NTQsOCBAQCBzdGF0aWMg aW50IGVzdGltYXRlX2Jlc3RfYl9jb3VudChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIAog ICAgICAgICAvL3JkICs9IChvdXRfc2l6ZSAqIGxhbWJkYTIpID4+IEZGX0xBTUJEQV9TSElGVDsK IAotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcy0+bWF4X2JfZnJhbWVzICsgMTsgaSsrKSB7Ci0g ICAgICAgICAgICBpbnQgaXNfcCA9IGkgJSAoaiArIDEpID09IGogfHwgaSA9PSBzLT5tYXhfYl9m cmFtZXM7CisgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbS0+bWF4X2JfZnJhbWVzICsgMTsg aSsrKSB7CisgICAgICAgICAgICBpbnQgaXNfcCA9IGkgJSAoaiArIDEpID09IGogfHwgaSA9PSBt LT5tYXhfYl9mcmFtZXM7CiAKICAgICAgICAgICAgIG0tPnRtcF9mcmFtZXNbaSArIDFdLT5waWN0 X3R5cGUgPSBpc19wID8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBVl9Q SUNUVVJFX1RZUEVfUCA6IEFWX1BJQ1RVUkVfVFlQRV9COwpAQCAtMTY0MCw3ICsxNjQwLDcgQEAg c3RhdGljIGludCBzZXRfYmZyYW1lX2NoYWluX2xlbmd0aChNUFZNYWluRW5jQ29udGV4dCAqY29u c3QgbSkKICAgICAgICAgaW50IGJfZnJhbWVzID0gMDsKIAogICAgICAgICBpZiAocy0+YXZjdHgt PmZsYWdzICYgQVZfQ09ERUNfRkxBR19QQVNTMikgewotICAgICAgICAgICAgZm9yIChpbnQgaSA9 IDA7IGkgPCBzLT5tYXhfYl9mcmFtZXMgKyAxOyBpKyspIHsKKyAgICAgICAgICAgIGZvciAoaW50 IGkgPSAwOyBpIDwgbS0+bWF4X2JfZnJhbWVzICsgMTsgaSsrKSB7CiAgICAgICAgICAgICAgICAg aW50IHBpY3RfbnVtID0gcy0+aW5wdXRfcGljdHVyZVswXS0+ZGlzcGxheV9waWN0dXJlX251bWJl ciArIGk7CiAKICAgICAgICAgICAgICAgICBpZiAocGljdF9udW0gPj0gbS0+cmNfY29udGV4dC5u dW1fZW50cmllcykKQEAgLTE2NTYsMTIgKzE2NTYsMTEgQEAgc3RhdGljIGludCBzZXRfYmZyYW1l X2NoYWluX2xlbmd0aChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAgfQogCiAg ICAgICAgIGlmIChtLT5iX2ZyYW1lX3N0cmF0ZWd5ID09IDApIHsKLSAgICAgICAgICAgIGJfZnJh bWVzID0gcy0+bWF4X2JfZnJhbWVzOworICAgICAgICAgICAgYl9mcmFtZXMgPSBtLT5tYXhfYl9m cmFtZXM7CiAgICAgICAgICAgICB3aGlsZSAoYl9mcmFtZXMgJiYgIXMtPmlucHV0X3BpY3R1cmVb Yl9mcmFtZXNdKQogICAgICAgICAgICAgICAgIGJfZnJhbWVzLS07CiAgICAgICAgIH0gZWxzZSBp ZiAobS0+Yl9mcmFtZV9zdHJhdGVneSA9PSAxKSB7Ci0gICAgICAgICAgICBpbnQgaTsKLSAgICAg ICAgICAgIGZvciAoaSA9IDE7IGkgPCBzLT5tYXhfYl9mcmFtZXMgKyAxOyBpKyspIHsKKyAgICAg ICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDwgbS0+bWF4X2JfZnJhbWVzICsgMTsgaSsrKSB7CiAg ICAgICAgICAgICAgICAgaWYgKHMtPmlucHV0X3BpY3R1cmVbaV0gJiYKICAgICAgICAgICAgICAg ICAgICAgcy0+aW5wdXRfcGljdHVyZVtpXS0+Yl9mcmFtZV9zY29yZSA9PSAwKSB7CiAgICAgICAg ICAgICAgICAgICAgIHMtPmlucHV0X3BpY3R1cmVbaV0tPmJfZnJhbWVfc2NvcmUgPQpAQCAtMTY3 MSwxOSArMTY3MCwxOCBAQCBzdGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3RoKE1QVk1h aW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHMtPmxpbmVzaXplKSArIDE7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg fQotICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHMtPm1heF9iX2ZyYW1lcyArIDE7IGkrKykg eworICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtLT5tYXhfYl9mcmFtZXMgKyAxOyBp KyspIHsKICAgICAgICAgICAgICAgICBpZiAoIXMtPmlucHV0X3BpY3R1cmVbaV0gfHwKICAgICAg ICAgICAgICAgICAgICAgcy0+aW5wdXRfcGljdHVyZVtpXS0+Yl9mcmFtZV9zY29yZSAtIDEgPgot ICAgICAgICAgICAgICAgICAgICAgICAgcy0+bWJfbnVtIC8gbS0+Yl9zZW5zaXRpdml0eSkKKyAg ICAgICAgICAgICAgICAgICAgICAgIHMtPm1iX251bSAvIG0tPmJfc2Vuc2l0aXZpdHkpIHsKKyAg ICAgICAgICAgICAgICAgICAgYl9mcmFtZXMgPSBGRk1BWCgwLCBpIC0gMSk7CiAgICAgICAgICAg ICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KIAotICAg ICAgICAgICAgYl9mcmFtZXMgPSBGRk1BWCgwLCBpIC0gMSk7Ci0KICAgICAgICAgICAgIC8qIHJl c2V0IHNjb3JlcyAqLwotICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGJfZnJhbWVzICsgMTsg aSsrKSB7CisgICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGJfZnJhbWVzICsgMTsgaSsr KQogICAgICAgICAgICAgICAgIHMtPmlucHV0X3BpY3R1cmVbaV0tPmJfZnJhbWVfc2NvcmUgPSAw OwotICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UgaWYgKG0tPmJfZnJhbWVfc3RyYXRlZ3kg PT0gMikgewogICAgICAgICAgICAgYl9mcmFtZXMgPSBlc3RpbWF0ZV9iZXN0X2JfY291bnQobSk7 CiAgICAgICAgICAgICBpZiAoYl9mcmFtZXMgPCAwKSB7CkBAIC0xNzAwLDcgKzE2OTgsNyBAQCBz dGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3RoKE1QVk1haW5FbmNDb250ZXh0ICpjb25z dCBtKQogICAgICAgICAgICAgICAgIGJfZnJhbWVzID0gaTsKICAgICAgICAgfQogICAgICAgICBp ZiAocy0+aW5wdXRfcGljdHVyZVtiX2ZyYW1lc10tPmYtPnBpY3RfdHlwZSA9PSBBVl9QSUNUVVJF X1RZUEVfQiAmJgotICAgICAgICAgICAgYl9mcmFtZXMgPT0gcy0+bWF4X2JfZnJhbWVzKSB7Cisg ICAgICAgICAgICBiX2ZyYW1lcyA9PSBtLT5tYXhfYl9mcmFtZXMpIHsKICAgICAgICAgICAgIGF2 X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0VSUk9SLAogICAgICAgICAgICAgICAgICAgICAid2Fybmlu ZywgdG9vIG1hbnkgQi1mcmFtZXMgaW4gYSByb3dcbiIpOwogICAgICAgICB9CmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApp bmRleCA2NWJiMzQ0N2IzLi4yN2JkMDk5YWFkIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2 aWRlb2VuYy5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKQEAgLTQ0LDYgKzQ0LDcg QEAgdHlwZWRlZiBzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgewogCiAgICAgaW50IGludHJhX29u bHk7ICAgICAgICAgICAgICAgIC8vLzwgaWYgdHJ1ZSwgb25seSBpbnRyYSBwaWN0dXJlcyBhcmUg Z2VuZXJhdGVkCiAgICAgaW50IGdvcF9zaXplOworICAgIGludCBtYXhfYl9mcmFtZXM7ICAgICAg ICAgICAgICAvLy88IG1heCBudW1iZXIgb2YgQi1mcmFtZXMKICAgICBpbnQgcGljdHVyZV9pbl9n b3BfbnVtYmVyOyAgICAgLy8vPCAwLT4gZmlyc3QgcGljIGluIGdvcCwgLi4uCiAgICAgaW50IGlu cHV0X3BpY3R1cmVfbnVtYmVyOyAgICAgIC8vLzwgdXNlZCB0byBzZXQgcGljLT5kaXNwbGF5X3Bp Y3R1cmVfbnVtYmVyCiAgICAgaW50IGNvZGVkX3BpY3R1cmVfbnVtYmVyOyAgICAgIC8vLzwgdXNl ZCB0byBzZXQgcGljLT5jb2RlZF9waWN0dXJlX251bWJlcgpkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9yYXRlY29udHJvbC5jIGIvbGliYXZjb2RlYy9yYXRlY29udHJvbC5jCmluZGV4IDg5NWU1NTc4 NzcuLjIwZTNjY2FiZjggMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wuYworKysg Yi9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMKQEAgLTU4MSw3ICs1ODEsNyBAQCBhdl9jb2xkIGlu dCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAg ICAgcCA9IHMtPmF2Y3R4LT5zdGF0c19pbjsKICAgICAgICAgZm9yIChpID0gLTE7IHA7IGkrKykK ICAgICAgICAgICAgIHAgPSBzdHJjaHIocCArIDEsICc7Jyk7Ci0gICAgICAgIGkgKz0gcy0+bWF4 X2JfZnJhbWVzOworICAgICAgICBpICs9IG0tPm1heF9iX2ZyYW1lczsKICAgICAgICAgaWYgKGkg PD0gMCB8fCBpID49IElOVF9NQVggLyBzaXplb2YoUmF0ZUNvbnRyb2xFbnRyeSkpCiAgICAgICAg ICAgICByZXR1cm4gLTE7CiAgICAgICAgIHJjYy0+ZW50cnkgICAgICAgPSBhdl9tYWxsb2N6KGkg KiBzaXplb2YoUmF0ZUNvbnRyb2xFbnRyeSkpOwpAQCAtNjAyLDcgKzYwMiw3IEBAIGF2X2NvbGQg aW50IGZmX3JhdGVfY29udHJvbF9pbml0KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAg ICAgICAgIC8qIHJlYWQgc3RhdHMgKi8KICAgICAgICAgcCA9IHMtPmF2Y3R4LT5zdGF0c19pbjsK LSAgICAgICAgZm9yIChpID0gMDsgaSA8IHJjYy0+bnVtX2VudHJpZXMgLSBzLT5tYXhfYl9mcmFt ZXM7IGkrKykgeworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcmNjLT5udW1fZW50cmllcyAtIG0t Pm1heF9iX2ZyYW1lczsgaSsrKSB7CiAgICAgICAgICAgICBSYXRlQ29udHJvbEVudHJ5ICpyY2U7 CiAgICAgICAgICAgICBpbnQgcGljdHVyZV9udW1iZXI7CiAgICAgICAgICAgICBpbnQgZTsKQEAg LTY2Myw3ICs2NjMsNyBAQCBhdl9jb2xkIGludCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNUFZNYWlu RW5jQ29udGV4dCAqY29uc3QgbSkKIAogICAgICAgICAgICAgICAgIGlmIChpICUgKChtLT5nb3Bf c2l6ZSArIDMpIC8gNCkgPT0gMCkKICAgICAgICAgICAgICAgICAgICAgcmNlLnBpY3RfdHlwZSA9 IEFWX1BJQ1RVUkVfVFlQRV9JOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGkgJSAocy0+bWF4 X2JfZnJhbWVzICsgMSkpCisgICAgICAgICAgICAgICAgZWxzZSBpZiAoaSAlIChtLT5tYXhfYl9m cmFtZXMgKyAxKSkKICAgICAgICAgICAgICAgICAgICAgcmNlLnBpY3RfdHlwZSA9IEFWX1BJQ1RV UkVfVFlQRV9COwogICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgcmNl LnBpY3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQRV9QOwotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0038-avcodec-mpegvideo-Move-MPVPicture-arrays-to-MPVMainE.patch" Content-Disposition: attachment; filename*0="0038-avcodec-mpegvideo-Move-MPVPicture-arrays-to-MPVMainE.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5YTEyNjUwM2Y1NDljZDVmOGYzOWYxYzliZjUxNTYzMzQ4OWFkZmMxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxMTo0Nzo1OCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMzgvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIE1QVlBpY3R1cmUgYXJy YXlzIHRvCiBNUFZNYWluRW5jQ29udGV4dAoKQWxzbyBhdm9pZCBhbGxvY2F0aW9ucyB3aGlsZSBh dCBpdC4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhh cmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZzR2aWRlb2VuYy5jIHwgIDExICsr LS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggICAgIHwgICAyIC0KIGxpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jIHwgMTI0ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KIGxp YmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggIHwgICAzICsKIDQgZmlsZXMgY2hhbmdlZCwgNjggaW5z ZXJ0aW9ucygrKSwgNzIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVn NHZpZGVvZW5jLmMgYi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYwppbmRleCBkNTQwNjRjZDg5 Li40YzMxZTdlOWM4IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYworKysg Yi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYwpAQCAtNjY4LDcgKzY2OCw3IEBAIHN0YXRpYyB2 b2lkIG1wZWc0X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqY29uc3QgcywgaW50MTZfdCBibG9j a1tdWzY0XSwKICAgICAgICAgICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBtLT5tYXhf Yl9mcmFtZXM7IGkrKykgewogICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAq Yl9waWM7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZGlmZjsKLSAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IE1QVlBpY3R1cmUgKnBpYyA9IHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0 dXJlW2kgKyAxXTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IE1QVlBpY3R1cmUgKnBp YyA9IG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlW2kgKyAxXTsKIAogICAgICAgICAgICAgICAg ICAgICAgICAgaWYgKCFwaWMgfHwgcGljLT5mLT5waWN0X3R5cGUgIT0gQVZfUElDVFVSRV9UWVBF X0IpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC05MDAsMTYgKzkwMCwx NyBAQCB2b2lkIGZmX3NldF9tcGVnNF90aW1lKE1wZWdFbmNDb250ZXh0ICpzKQogICAgIH0KIH0K IAotc3RhdGljIHZvaWQgbXBlZzRfZW5jb2RlX2dvcF9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMp CitzdGF0aWMgdm9pZCBtcGVnNF9lbmNvZGVfZ29wX2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSkKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwogICAgIGlu dDY0X3QgaG91cnMsIG1pbnV0ZXMsIHNlY29uZHM7CiAgICAgaW50NjRfdCB0aW1lOwogCiAgICAg cHV0X2JpdHMzMigmcy0+cGIsIEdPUF9TVEFSVENPREUpOwogCiAgICAgdGltZSA9IHMtPmN1cl9w aWMucHRyLT5mLT5wdHM7Ci0gICAgaWYgKHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzFdKQot ICAgICAgICB0aW1lID0gRkZNSU4odGltZSwgcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMV0t PmYtPnB0cyk7CisgICAgaWYgKG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzFdKQorICAgICAg ICB0aW1lID0gRkZNSU4odGltZSwgbS0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMV0tPmYtPnB0 cyk7CiAgICAgdGltZSA9IHRpbWUgKiBzLT5hdmN0eC0+dGltZV9iYXNlLm51bTsKICAgICBzLT5s YXN0X3RpbWVfYmFzZSA9IEZGVURJVih0aW1lLCBzLT5hdmN0eC0+dGltZV9iYXNlLmRlbik7CiAK QEAgLTEwNzcsNyArMTA3OCw3IEBAIHN0YXRpYyBpbnQgbXBlZzRfZW5jb2RlX3BpY3R1cmVfaGVh ZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAgICAgICAgaWYgKHMtPmF2Y3R4 LT5zdHJpY3Rfc3RkX2NvbXBsaWFuY2UgPCBGRl9DT01QTElBTkNFX1ZFUllfU1RSSUNUIHx8IHMt PnBpY3R1cmVfbnVtYmVyID09IDApICAvLyBIQUNLLCB0aGUgcmVmZXJlbmNlIHN3IGlzIGJ1Z2d5 CiAgICAgICAgICAgICAgICAgbXBlZzRfZW5jb2RlX3ZvbF9oZWFkZXIobTQsIDAsIDApOwogICAg ICAgICB9Ci0gICAgICAgIG1wZWc0X2VuY29kZV9nb3BfaGVhZGVyKHMpOworICAgICAgICBtcGVn NF9lbmNvZGVfZ29wX2hlYWRlcihtKTsKICAgICB9CiAKICAgICBzLT5wYXJ0aXRpb25lZF9mcmFt ZSA9IHMtPmRhdGFfcGFydGl0aW9uaW5nICYmIHMtPnBpY3RfdHlwZSAhPSBBVl9QSUNUVVJFX1RZ UEVfQjsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVjL21w ZWd2aWRlby5oCmluZGV4IGQyNWI1Y2RmM2EuLjEyY2I4ZmMzZDUgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAtMTIzLDgg KzEyMyw2IEBAIHR5cGVkZWYgc3RydWN0IE1wZWdFbmNDb250ZXh0IHsKICAgICBwdHJkaWZmX3Qg bGluZXNpemU7ICAgICAgICAvLy88IGxpbmUgc2l6ZSwgaW4gYnl0ZXMsIG1heSBiZSBkaWZmZXJl bnQgZnJvbSB3aWR0aAogICAgIHB0cmRpZmZfdCB1dmxpbmVzaXplOyAgICAgIC8vLzwgbGluZSBz aXplLCBmb3IgY2hyb21hIGluIGJ5dGVzLCBtYXkgYmUgZGlmZmVyZW50IGZyb20gd2lkdGgKICAg ICBzdHJ1Y3QgQVZSZWZTdHJ1Y3RQb29sICpwaWN0dXJlX3Bvb2w7IC8vLzwgUG9vbCBmb3IgTVBW UGljdHVyZXMKLSAgICBNUFZQaWN0dXJlICoqaW5wdXRfcGljdHVyZTsvLy88IG5leHQgcGljdHVy ZXMgb24gZGlzcGxheSBvcmRlciBmb3IgZW5jb2RpbmcKLSAgICBNUFZQaWN0dXJlICoqcmVvcmRl cmVkX2lucHV0X3BpY3R1cmU7IC8vLzwgcG9pbnRlciB0byB0aGUgbmV4dCBwaWN0dXJlcyBpbiBj b2RlZCBvcmRlciBmb3IgZW5jb2RpbmcKIAogICAgIEJ1ZmZlclBvb2xDb250ZXh0IGJ1ZmZlcl9w b29sczsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJhdmNv ZGVjL21wZWd2aWRlb19lbmMuYwppbmRleCBmZmE2NTJkMDJkLi44YWY1NzJhNjllIDEwMDY0NAot LS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2aWRl b19lbmMuYwpAQCAtOTE1LDggKzkxNSw2IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5p dChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgICAgIHJldHVybiByZXQ7CiAKICAgICBpZiAo IShhdmN0eC0+c3RhdHNfb3V0ID0gYXZfbWFsbG9jeigyNTYpKSAgICAgICAgICAgICAgIHx8Ci0g ICAgICAgICFGRl9BTExPQ1pfVFlQRURfQVJSQVkocy0+aW5wdXRfcGljdHVyZSwgICAgICAgICAg IE1QVkVOQ19NQVhfQl9GUkFNRVMgKyAxKSB8fAotICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FS UkFZKHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlLCBNUFZFTkNfTUFYX0JfRlJBTUVTICsgMSkg fHwKICAgICAgICAgIShzLT5uZXdfcGljID0gYXZfZnJhbWVfYWxsb2MoKSkgfHwKICAgICAgICAg IShzLT5waWN0dXJlX3Bvb2wgPSBmZl9tcHZfYWxsb2NfcGljX3Bvb2woMCkpKQogICAgICAgICBy ZXR1cm4gQVZFUlJPUihFTk9NRU0pOwpAQCAtMTA0OSwxMSArMTA0Nyw5IEBAIGF2X2NvbGQgaW50 IGZmX21wdl9lbmNvZGVfZW5kKEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICBmZl9tcHZfY29t bW9uX2VuZChzKTsKICAgICBhdl9yZWZzdHJ1Y3RfcG9vbF91bmluaXQoJnMtPnBpY3R1cmVfcG9v bCk7CiAKLSAgICBpZiAocy0+aW5wdXRfcGljdHVyZSAmJiBzLT5yZW9yZGVyZWRfaW5wdXRfcGlj dHVyZSkgewotICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IE1QVkVOQ19NQVhfQl9GUkFNRVMg KyAxOyBpKyspIHsKLSAgICAgICAgICAgIGF2X3JlZnN0cnVjdF91bnJlZigmcy0+aW5wdXRfcGlj dHVyZVtpXSk7Ci0gICAgICAgICAgICBhdl9yZWZzdHJ1Y3RfdW5yZWYoJnMtPnJlb3JkZXJlZF9p bnB1dF9waWN0dXJlW2ldKTsKLSAgICAgICAgfQorICAgIGZvciAoaW50IGkgPSAwOyBpIDwgTVBW RU5DX01BWF9CX0ZSQU1FUyArIDE7IGkrKykgeworICAgICAgICBhdl9yZWZzdHJ1Y3RfdW5yZWYo Jm0tPmlucHV0X3BpY3R1cmVbaV0pOworICAgICAgICBhdl9yZWZzdHJ1Y3RfdW5yZWYoJm0tPnJl b3JkZXJlZF9pbnB1dF9waWN0dXJlW2ldKTsKICAgICB9CiAgICAgZm9yIChpbnQgaSA9IDA7IGkg PCBGRl9BUlJBWV9FTEVNUyhtLT50bXBfZnJhbWVzKTsgaSsrKQogICAgICAgICBhdl9mcmFtZV9m cmVlKCZtLT50bXBfZnJhbWVzW2ldKTsKQEAgLTEwNzcsOCArMTA3Myw2IEBAIGF2X2NvbGQgaW50 IGZmX21wdl9lbmNvZGVfZW5kKEFWQ29kZWNDb250ZXh0ICphdmN0eCkKIAogICAgIGF2X2ZyZWVw KCZzLT5xX2ludHJhX21hdHJpeCk7CiAgICAgYXZfZnJlZXAoJnMtPnFfaW50cmFfbWF0cml4MTYp OwotICAgIGF2X2ZyZWVwKCZzLT5pbnB1dF9waWN0dXJlKTsKLSAgICBhdl9mcmVlcCgmcy0+cmVv cmRlcmVkX2lucHV0X3BpY3R1cmUpOwogICAgIGF2X2ZyZWVwKCZzLT5kY3Rfb2Zmc2V0KTsKICAg ICBhdl9mcmVlcCgmcy0+bWJfdmFyKTsKICAgICBhdl9mcmVlcCgmcy0+bWNfbWJfdmFyKTsKQEAg LTEyNjAsNyArMTI1NCw3IEBAIHN0YXRpYyBpbnQgbG9hZF9pbnB1dF9waWN0dXJlKE1QVk1haW5F bmNDb250ZXh0ICpjb25zdCBtLCBjb25zdCBBVkZyYW1lICpwaWNfYXJnCiAgICAgaW50IGZsdXNo X29mZnNldCA9IDE7CiAgICAgaW50IGRpcmVjdCA9IDE7CiAKLSAgICBhdl9hc3NlcnQxKCFzLT5p bnB1dF9waWN0dXJlWzBdKTsKKyAgICBhdl9hc3NlcnQxKCFtLT5pbnB1dF9waWN0dXJlWzBdKTsK IAogICAgIGlmIChwaWNfYXJnKSB7CiAgICAgICAgIHB0cyA9IHBpY19hcmctPnB0czsKQEAgLTEz NjMsMTQgKzEzNTcsMTQgQEAgc3RhdGljIGludCBsb2FkX2lucHV0X3BpY3R1cmUoTVBWTWFpbkVu Y0NvbnRleHQgKmNvbnN0IG0sIGNvbnN0IEFWRnJhbWUgKnBpY19hcmcKIAogICAgICAgICBwaWMt PmRpc3BsYXlfcGljdHVyZV9udW1iZXIgPSBkaXNwbGF5X3BpY3R1cmVfbnVtYmVyOwogICAgICAg ICBwaWMtPmYtPnB0cyA9IHB0czsgLy8gd2Ugc2V0IHRoaXMgaGVyZSB0byBhdm9pZCBtb2RpZnlp bmcgcGljX2FyZwotICAgIH0gZWxzZSBpZiAoIXMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzFd KSB7CisgICAgfSBlbHNlIGlmICghbS0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMV0pIHsKICAg ICAgICAgLyogRmx1c2hpbmc6IFdoZW4gdGhlIGFib3ZlIGNoZWNrIGlzIHRydWUsIHRoZSBlbmNv ZGVyIGlzIGFib3V0IHRvIHJ1bgogICAgICAgICAgKiBvdXQgb2YgZnJhbWVzIHRvIGVuY29kZS4g Q2hlY2sgaWYgdGhlcmUgYXJlIGlucHV0X3BpY3R1cmVzIGxlZnQ7Ci0gICAgICAgICAqIGlmIHNv LCBlbnN1cmUgcy0+aW5wdXRfcGljdHVyZVswXSBjb250YWlucyB0aGUgZmlyc3QgcGljdHVyZS4K KyAgICAgICAgICogaWYgc28sIGVuc3VyZSBtLT5pbnB1dF9waWN0dXJlWzBdIGNvbnRhaW5zIHRo ZSBmaXJzdCBwaWN0dXJlLgogICAgICAgICAgKiBBIGZsdXNoX29mZnNldCAhPSAxIHdpbGwgb25s eSBoYXBwZW4gaWYgd2UgZGlkIG5vdCByZWNlaXZlIGVub3VnaAogICAgICAgICAgKiBpbnB1dCBm cmFtZXMuICovCiAgICAgICAgIGZvciAoZmx1c2hfb2Zmc2V0ID0gMDsgZmx1c2hfb2Zmc2V0IDwg ZW5jb2RpbmdfZGVsYXkgKyAxOyBmbHVzaF9vZmZzZXQrKykKLSAgICAgICAgICAgIGlmIChzLT5p bnB1dF9waWN0dXJlW2ZsdXNoX29mZnNldF0pCisgICAgICAgICAgICBpZiAobS0+aW5wdXRfcGlj dHVyZVtmbHVzaF9vZmZzZXRdKQogICAgICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGVu Y29kaW5nX2RlbGF5IC09IGZsdXNoX29mZnNldCAtIDE7CkBAIC0xMzc4LDExICsxMzcyLDExIEBA IHN0YXRpYyBpbnQgbG9hZF9pbnB1dF9waWN0dXJlKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBt LCBjb25zdCBBVkZyYW1lICpwaWNfYXJnCiAKICAgICAvKiBzaGlmdCBidWZmZXIgZW50cmllcyAq LwogICAgIGZvciAoaW50IGkgPSBmbHVzaF9vZmZzZXQ7IGkgPD0gTVBWRU5DX01BWF9CX0ZSQU1F UzsgaSsrKQotICAgICAgICBzLT5pbnB1dF9waWN0dXJlW2kgLSBmbHVzaF9vZmZzZXRdID0gcy0+ aW5wdXRfcGljdHVyZVtpXTsKKyAgICAgICAgbS0+aW5wdXRfcGljdHVyZVtpIC0gZmx1c2hfb2Zm c2V0XSA9IG0tPmlucHV0X3BpY3R1cmVbaV07CiAgICAgZm9yIChpbnQgaSA9IE1QVkVOQ19NQVhf Ql9GUkFNRVMgKyAxIC0gZmx1c2hfb2Zmc2V0OyBpIDw9IE1QVkVOQ19NQVhfQl9GUkFNRVM7IGkr KykKLSAgICAgICAgcy0+aW5wdXRfcGljdHVyZVtpXSA9IE5VTEw7CisgICAgICAgIG0tPmlucHV0 X3BpY3R1cmVbaV0gPSBOVUxMOwogCi0gICAgcy0+aW5wdXRfcGljdHVyZVtlbmNvZGluZ19kZWxh eV0gPSBwaWM7CisgICAgbS0+aW5wdXRfcGljdHVyZVtlbmNvZGluZ19kZWxheV0gPSBwaWM7CiAK ICAgICByZXR1cm4gMDsKIGZhaWw6CkBAIC0xNDgyLDcgKzE0NzYsNyBAQCBzdGF0aWMgaW50IGVz dGltYXRlX2Jlc3RfYl9jb3VudChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAg ICAgICAgIEZGX0xBTUJEQV9TSElGVDsKIAogICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbS0+bWF4 X2JfZnJhbWVzICsgMjsgaSsrKSB7Ci0gICAgICAgIGNvbnN0IE1QVlBpY3R1cmUgKnByZV9pbnB1 dF9wdHIgPSBpID8gcy0+aW5wdXRfcGljdHVyZVtpIC0gMV0gOgorICAgICAgICBjb25zdCBNUFZQ aWN0dXJlICpwcmVfaW5wdXRfcHRyID0gaSA/IG0tPmlucHV0X3BpY3R1cmVbaSAtIDFdIDoKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5uZXh0X3BpYy5wdHI7 CiAKICAgICAgICAgaWYgKHByZV9pbnB1dF9wdHIpIHsKQEAgLTE1MTcsNyArMTUxMSw3IEBAIHN0 YXRpYyBpbnQgZXN0aW1hdGVfYmVzdF9iX2NvdW50KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBt KQogICAgICAgICBBVkNvZGVjQ29udGV4dCAqYzsKICAgICAgICAgaW50NjRfdCByZCA9IDA7CiAK LSAgICAgICAgaWYgKCFzLT5pbnB1dF9waWN0dXJlW2pdKQorICAgICAgICBpZiAoIW0tPmlucHV0 X3BpY3R1cmVbal0pCiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjID0gYXZjb2RlY19h bGxvY19jb250ZXh0MyhOVUxMKTsKQEAgLTE2MTIsMTYgKzE2MDYsMTYgQEAgc3RhdGljIGludCBz ZXRfYmZyYW1lX2NoYWluX2xlbmd0aChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICBN cGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5zOwogCiAgICAgLyogRWl0aGVyIG5vdGhpbmcg dG8gZG8gb3IgY2FuJ3QgZG8gYW55dGhpbmcgKi8KLSAgICBpZiAocy0+cmVvcmRlcmVkX2lucHV0 X3BpY3R1cmVbMF0gfHwgIXMtPmlucHV0X3BpY3R1cmVbMF0pCisgICAgaWYgKG0tPnJlb3JkZXJl ZF9pbnB1dF9waWN0dXJlWzBdIHx8ICFtLT5pbnB1dF9waWN0dXJlWzBdKQogICAgICAgICByZXR1 cm4gMDsKIAogICAgIC8qIHNldCBuZXh0IHBpY3R1cmUgdHlwZSAmIG9yZGVyaW5nICovCiAgICAg aWYgKG0tPmZyYW1lX3NraXBfdGhyZXNob2xkIHx8IG0tPmZyYW1lX3NraXBfZmFjdG9yKSB7CiAg ICAgICAgIGlmIChtLT5waWN0dXJlX2luX2dvcF9udW1iZXIgPCBtLT5nb3Bfc2l6ZSAmJgogICAg ICAgICAgICAgcy0+bmV4dF9waWMucHRyICYmCi0gICAgICAgICAgICBza2lwX2NoZWNrKG0sIHMt PmlucHV0X3BpY3R1cmVbMF0sIHMtPm5leHRfcGljLnB0cikpIHsKKyAgICAgICAgICAgIHNraXBf Y2hlY2sobSwgbS0+aW5wdXRfcGljdHVyZVswXSwgcy0+bmV4dF9waWMucHRyKSkgewogICAgICAg ICAgICAgLy8gRklYTUUgY2hlY2sgdGhhdCB0aGUgZ29wIGNoZWNrIGFib3ZlIGlzICstMSBjb3Jy ZWN0Ci0gICAgICAgICAgICBhdl9yZWZzdHJ1Y3RfdW5yZWYoJnMtPmlucHV0X3BpY3R1cmVbMF0p OworICAgICAgICAgICAgYXZfcmVmc3RydWN0X3VucmVmKCZtLT5pbnB1dF9waWN0dXJlWzBdKTsK IAogICAgICAgICAgICAgZmZfdmJ2X3VwZGF0ZShtLCAwKTsKIApAQCAtMTYzMSw0OCArMTYyNSw0 OCBAQCBzdGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3RoKE1QVk1haW5FbmNDb250ZXh0 ICpjb25zdCBtKQogCiAgICAgaWYgKC8qIG0tPnBpY3R1cmVfaW5fZ29wX251bWJlciA+PSBtLT5n b3Bfc2l6ZSB8fCAqLwogICAgICAgICAhcy0+bmV4dF9waWMucHRyIHx8IG0tPmludHJhX29ubHkp IHsKLSAgICAgICAgcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0gPSBzLT5pbnB1dF9waWN0 dXJlWzBdOwotICAgICAgICBzLT5pbnB1dF9waWN0dXJlWzBdID0gTlVMTDsKLSAgICAgICAgcy0+ cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0tPmYtPnBpY3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQ RV9JOwotICAgICAgICBzLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+Y29kZWRfcGljdHVy ZV9udW1iZXIgPQorICAgICAgICBtLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXSA9IG0tPmlu cHV0X3BpY3R1cmVbMF07CisgICAgICAgIG0tPmlucHV0X3BpY3R1cmVbMF0gPSBOVUxMOworICAg ICAgICBtLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+Zi0+cGljdF90eXBlID0gQVZfUElD VFVSRV9UWVBFX0k7CisgICAgICAgIG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdLT5jb2Rl ZF9waWN0dXJlX251bWJlciA9CiAgICAgICAgICAgICBtLT5jb2RlZF9waWN0dXJlX251bWJlcisr OwogICAgIH0gZWxzZSB7CiAgICAgICAgIGludCBiX2ZyYW1lcyA9IDA7CiAKICAgICAgICAgaWYg KHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfUEFTUzIpIHsKICAgICAgICAgICAgIGZv ciAoaW50IGkgPSAwOyBpIDwgbS0+bWF4X2JfZnJhbWVzICsgMTsgaSsrKSB7Ci0gICAgICAgICAg ICAgICAgaW50IHBpY3RfbnVtID0gcy0+aW5wdXRfcGljdHVyZVswXS0+ZGlzcGxheV9waWN0dXJl X251bWJlciArIGk7CisgICAgICAgICAgICAgICAgaW50IHBpY3RfbnVtID0gbS0+aW5wdXRfcGlj dHVyZVswXS0+ZGlzcGxheV9waWN0dXJlX251bWJlciArIGk7CiAKICAgICAgICAgICAgICAgICBp ZiAocGljdF9udW0gPj0gbS0+cmNfY29udGV4dC5udW1fZW50cmllcykKICAgICAgICAgICAgICAg ICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgaWYgKCFzLT5pbnB1dF9waWN0dXJlW2ldKSB7 CisgICAgICAgICAgICAgICAgaWYgKCFtLT5pbnB1dF9waWN0dXJlW2ldKSB7CiAgICAgICAgICAg ICAgICAgICAgIG0tPnJjX2NvbnRleHQuZW50cnlbcGljdF9udW0gLSAxXS5uZXdfcGljdF90eXBl ID0gQVZfUElDVFVSRV9UWVBFX1A7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAg ICAgICAgICAgIH0KIAotICAgICAgICAgICAgICAgIHMtPmlucHV0X3BpY3R1cmVbaV0tPmYtPnBp Y3RfdHlwZSA9CisgICAgICAgICAgICAgICAgbS0+aW5wdXRfcGljdHVyZVtpXS0+Zi0+cGljdF90 eXBlID0KICAgICAgICAgICAgICAgICAgICAgbS0+cmNfY29udGV4dC5lbnRyeVtwaWN0X251bV0u bmV3X3BpY3RfdHlwZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAgICAgIGlmICht LT5iX2ZyYW1lX3N0cmF0ZWd5ID09IDApIHsKICAgICAgICAgICAgIGJfZnJhbWVzID0gbS0+bWF4 X2JfZnJhbWVzOwotICAgICAgICAgICAgd2hpbGUgKGJfZnJhbWVzICYmICFzLT5pbnB1dF9waWN0 dXJlW2JfZnJhbWVzXSkKKyAgICAgICAgICAgIHdoaWxlIChiX2ZyYW1lcyAmJiAhbS0+aW5wdXRf cGljdHVyZVtiX2ZyYW1lc10pCiAgICAgICAgICAgICAgICAgYl9mcmFtZXMtLTsKICAgICAgICAg fSBlbHNlIGlmIChtLT5iX2ZyYW1lX3N0cmF0ZWd5ID09IDEpIHsKICAgICAgICAgICAgIGZvciAo aW50IGkgPSAxOyBpIDwgbS0+bWF4X2JfZnJhbWVzICsgMTsgaSsrKSB7Ci0gICAgICAgICAgICAg ICAgaWYgKHMtPmlucHV0X3BpY3R1cmVbaV0gJiYKLSAgICAgICAgICAgICAgICAgICAgcy0+aW5w dXRfcGljdHVyZVtpXS0+Yl9mcmFtZV9zY29yZSA9PSAwKSB7Ci0gICAgICAgICAgICAgICAgICAg IHMtPmlucHV0X3BpY3R1cmVbaV0tPmJfZnJhbWVfc2NvcmUgPQorICAgICAgICAgICAgICAgIGlm IChtLT5pbnB1dF9waWN0dXJlW2ldICYmCisgICAgICAgICAgICAgICAgICAgIG0tPmlucHV0X3Bp Y3R1cmVbaV0tPmJfZnJhbWVfc2NvcmUgPT0gMCkgeworICAgICAgICAgICAgICAgICAgICBtLT5p bnB1dF9waWN0dXJlW2ldLT5iX2ZyYW1lX3Njb3JlID0KICAgICAgICAgICAgICAgICAgICAgICAg IGdldF9pbnRyYV9jb3VudChzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHMtPmlucHV0X3BpY3R1cmVbaSAgICBdLT5mLT5kYXRhWzBdLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmlucHV0X3BpY3R1cmVbaSAtIDFdLT5mLT5kYXRh WzBdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0tPmlucHV0X3Bp Y3R1cmVbaSAgICBdLT5mLT5kYXRhWzBdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG0tPmlucHV0X3BpY3R1cmVbaSAtIDFdLT5mLT5kYXRhWzBdLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmxpbmVzaXplKSArIDE7CiAgICAgICAg ICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkg PCBtLT5tYXhfYl9mcmFtZXMgKyAxOyBpKyspIHsKLSAgICAgICAgICAgICAgICBpZiAoIXMtPmlu cHV0X3BpY3R1cmVbaV0gfHwKLSAgICAgICAgICAgICAgICAgICAgcy0+aW5wdXRfcGljdHVyZVtp XS0+Yl9mcmFtZV9zY29yZSAtIDEgPgorICAgICAgICAgICAgICAgIGlmICghbS0+aW5wdXRfcGlj dHVyZVtpXSB8fAorICAgICAgICAgICAgICAgICAgICBtLT5pbnB1dF9waWN0dXJlW2ldLT5iX2Zy YW1lX3Njb3JlIC0gMSA+CiAgICAgICAgICAgICAgICAgICAgICAgICBzLT5tYl9udW0gLyBtLT5i X3NlbnNpdGl2aXR5KSB7CiAgICAgICAgICAgICAgICAgICAgIGJfZnJhbWVzID0gRkZNQVgoMCwg aSAtIDEpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTE2ODEsMTEgKzE2NzUsMTEg QEAgc3RhdGljIGludCBzZXRfYmZyYW1lX2NoYWluX2xlbmd0aChNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSkKIAogICAgICAgICAgICAgLyogcmVzZXQgc2NvcmVzICovCiAgICAgICAgICAgICBm b3IgKGludCBpID0gMDsgaSA8IGJfZnJhbWVzICsgMTsgaSsrKQotICAgICAgICAgICAgICAgIHMt PmlucHV0X3BpY3R1cmVbaV0tPmJfZnJhbWVfc2NvcmUgPSAwOworICAgICAgICAgICAgICAgIG0t PmlucHV0X3BpY3R1cmVbaV0tPmJfZnJhbWVfc2NvcmUgPSAwOwogICAgICAgICB9IGVsc2UgaWYg KG0tPmJfZnJhbWVfc3RyYXRlZ3kgPT0gMikgewogICAgICAgICAgICAgYl9mcmFtZXMgPSBlc3Rp bWF0ZV9iZXN0X2JfY291bnQobSk7CiAgICAgICAgICAgICBpZiAoYl9mcmFtZXMgPCAwKSB7Ci0g ICAgICAgICAgICAgICAgYXZfcmVmc3RydWN0X3VucmVmKCZzLT5pbnB1dF9waWN0dXJlWzBdKTsK KyAgICAgICAgICAgICAgICBhdl9yZWZzdHJ1Y3RfdW5yZWYoJm0tPmlucHV0X3BpY3R1cmVbMF0p OwogICAgICAgICAgICAgICAgIHJldHVybiBiX2ZyYW1lczsKICAgICAgICAgICAgIH0KICAgICAg ICAgfQpAQCAtMTY5MywxMSArMTY4NywxMSBAQCBzdGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5f bGVuZ3RoKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAgICBlbW1zX2MoKTsKIAog ICAgICAgICBmb3IgKGludCBpID0gYl9mcmFtZXMgLSAxOyBpID49IDA7IGktLSkgewotICAgICAg ICAgICAgaW50IHR5cGUgPSBzLT5pbnB1dF9waWN0dXJlW2ldLT5mLT5waWN0X3R5cGU7CisgICAg ICAgICAgICBpbnQgdHlwZSA9IG0tPmlucHV0X3BpY3R1cmVbaV0tPmYtPnBpY3RfdHlwZTsKICAg ICAgICAgICAgIGlmICh0eXBlICYmIHR5cGUgIT0gQVZfUElDVFVSRV9UWVBFX0IpCiAgICAgICAg ICAgICAgICAgYl9mcmFtZXMgPSBpOwogICAgICAgICB9Ci0gICAgICAgIGlmIChzLT5pbnB1dF9w aWN0dXJlW2JfZnJhbWVzXS0+Zi0+cGljdF90eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9CICYmCisg ICAgICAgIGlmIChtLT5pbnB1dF9waWN0dXJlW2JfZnJhbWVzXS0+Zi0+cGljdF90eXBlID09IEFW X1BJQ1RVUkVfVFlQRV9CICYmCiAgICAgICAgICAgICBiX2ZyYW1lcyA9PSBtLT5tYXhfYl9mcmFt ZXMpIHsKICAgICAgICAgICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0VSUk9SLAogICAgICAg ICAgICAgICAgICAgICAid2FybmluZywgdG9vIG1hbnkgQi1mcmFtZXMgaW4gYSByb3dcbiIpOwpA QCAtMTcxMCwyNiArMTcwNCwyNiBAQCBzdGF0aWMgaW50IHNldF9iZnJhbWVfY2hhaW5fbGVuZ3Ro KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAg ICAgICAgICAgICBpZiAocy0+YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19DTE9TRURfR09Q KQogICAgICAgICAgICAgICAgICAgICBiX2ZyYW1lcyA9IDA7Ci0gICAgICAgICAgICAgICAgcy0+ aW5wdXRfcGljdHVyZVtiX2ZyYW1lc10tPmYtPnBpY3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQRV9J OworICAgICAgICAgICAgICAgIG0tPmlucHV0X3BpY3R1cmVbYl9mcmFtZXNdLT5mLT5waWN0X3R5 cGUgPSBBVl9QSUNUVVJFX1RZUEVfSTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAg ICAgIGlmICgocy0+YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19DTE9TRURfR09QKSAmJiBi X2ZyYW1lcyAmJgotICAgICAgICAgICAgcy0+aW5wdXRfcGljdHVyZVtiX2ZyYW1lc10tPmYtPnBp Y3RfdHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfSSkKKyAgICAgICAgICAgIG0tPmlucHV0X3BpY3R1 cmVbYl9mcmFtZXNdLT5mLT5waWN0X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kpCiAgICAgICAg ICAgICBiX2ZyYW1lcy0tOwogCi0gICAgICAgIHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBd ID0gcy0+aW5wdXRfcGljdHVyZVtiX2ZyYW1lc107Ci0gICAgICAgIHMtPmlucHV0X3BpY3R1cmVb Yl9mcmFtZXNdICAgID0gTlVMTDsKLSAgICAgICAgaWYgKHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0 dXJlWzBdLT5mLT5waWN0X3R5cGUgIT0gQVZfUElDVFVSRV9UWVBFX0kpCi0gICAgICAgICAgICBz LT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+Zi0+cGljdF90eXBlID0gQVZfUElDVFVSRV9U WVBFX1A7Ci0gICAgICAgIHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdLT5jb2RlZF9waWN0 dXJlX251bWJlciA9CisgICAgICAgIG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdID0gbS0+ aW5wdXRfcGljdHVyZVtiX2ZyYW1lc107CisgICAgICAgIG0tPmlucHV0X3BpY3R1cmVbYl9mcmFt ZXNdICAgID0gTlVMTDsKKyAgICAgICAgaWYgKG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBd LT5mLT5waWN0X3R5cGUgIT0gQVZfUElDVFVSRV9UWVBFX0kpCisgICAgICAgICAgICBtLT5yZW9y ZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+Zi0+cGljdF90eXBlID0gQVZfUElDVFVSRV9UWVBFX1A7 CisgICAgICAgIG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdLT5jb2RlZF9waWN0dXJlX251 bWJlciA9CiAgICAgICAgICAgICBtLT5jb2RlZF9waWN0dXJlX251bWJlcisrOwogICAgICAgICBm b3IgKGludCBpID0gMDsgaSA8IGJfZnJhbWVzOyBpKyspIHsKLSAgICAgICAgICAgIHMtPnJlb3Jk ZXJlZF9pbnB1dF9waWN0dXJlW2kgKyAxXSA9IHMtPmlucHV0X3BpY3R1cmVbaV07Ci0gICAgICAg ICAgICBzLT5pbnB1dF9waWN0dXJlW2ldICAgICAgICAgICAgICAgPSBOVUxMOwotICAgICAgICAg ICAgcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbaSArIDFdLT5mLT5waWN0X3R5cGUgPQorICAg ICAgICAgICAgbS0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbaSArIDFdID0gbS0+aW5wdXRfcGlj dHVyZVtpXTsKKyAgICAgICAgICAgIG0tPmlucHV0X3BpY3R1cmVbaV0gICAgICAgICAgICAgICA9 IE5VTEw7CisgICAgICAgICAgICBtLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVtpICsgMV0tPmYt PnBpY3RfdHlwZSA9CiAgICAgICAgICAgICAgICAgQVZfUElDVFVSRV9UWVBFX0I7Ci0gICAgICAg ICAgICBzLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVtpICsgMV0tPmNvZGVkX3BpY3R1cmVfbnVt YmVyID0KKyAgICAgICAgICAgIG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlW2kgKyAxXS0+Y29k ZWRfcGljdHVyZV9udW1iZXIgPQogICAgICAgICAgICAgICAgIG0tPmNvZGVkX3BpY3R1cmVfbnVt YmVyKys7CiAgICAgICAgIH0KICAgICB9CkBAIC0xNzQyLDM0ICsxNzM2LDM0IEBAIHN0YXRpYyBp bnQgc2VsZWN0X2lucHV0X3BpY3R1cmUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAg TXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbS0+czsKICAgICBpbnQgcmV0OwogCi0gICAgYXZf YXNzZXJ0MSghcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0pOworICAgIGF2X2Fzc2VydDEo IW0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdKTsKIAogICAgIGZvciAoaW50IGkgPSAxOyBp IDw9IE1QVkVOQ19NQVhfQl9GUkFNRVM7IGkrKykKLSAgICAgICAgcy0+cmVvcmRlcmVkX2lucHV0 X3BpY3R1cmVbaSAtIDFdID0gcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbaV07Ci0gICAgcy0+ cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbTVBWRU5DX01BWF9CX0ZSQU1FU10gPSBOVUxMOworICAg ICAgICBtLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVtpIC0gMV0gPSBtLT5yZW9yZGVyZWRfaW5w dXRfcGljdHVyZVtpXTsKKyAgICBtLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVtNUFZFTkNfTUFY X0JfRlJBTUVTXSA9IE5VTEw7CiAKICAgICByZXQgPSBzZXRfYmZyYW1lX2NoYWluX2xlbmd0aCht KTsKLSAgICBhdl9hc3NlcnQxKCFzLT5pbnB1dF9waWN0dXJlWzBdKTsKKyAgICBhdl9hc3NlcnQx KCFtLT5pbnB1dF9waWN0dXJlWzBdKTsKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJu IHJldDsKIAogICAgIGF2X2ZyYW1lX3VucmVmKHMtPm5ld19waWMpOwogCi0gICAgaWYgKHMtPnJl b3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdKSB7Ci0gICAgICAgIHMtPnJlb3JkZXJlZF9pbnB1dF9w aWN0dXJlWzBdLT5yZWZlcmVuY2UgPQotICAgICAgICAgICBzLT5yZW9yZGVyZWRfaW5wdXRfcGlj dHVyZVswXS0+Zi0+cGljdF90eXBlICE9IEFWX1BJQ1RVUkVfVFlQRV9COworICAgIGlmIChtLT5y ZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXSkgeworICAgICAgICBtLT5yZW9yZGVyZWRfaW5wdXRf cGljdHVyZVswXS0+cmVmZXJlbmNlID0KKyAgICAgICAgICAgbS0+cmVvcmRlcmVkX2lucHV0X3Bp Y3R1cmVbMF0tPmYtPnBpY3RfdHlwZSAhPSBBVl9QSUNUVVJFX1RZUEVfQjsKIAotICAgICAgICBp ZiAocy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0tPnNoYXJlZCB8fCBzLT5hdmN0eC0+cmNf YnVmZmVyX3NpemUpIHsKKyAgICAgICAgaWYgKG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBd LT5zaGFyZWQgfHwgcy0+YXZjdHgtPnJjX2J1ZmZlcl9zaXplKSB7CiAgICAgICAgICAgICAvLyBp bnB1dCBpcyBhIHNoYXJlZCBwaXgsIHNvIHdlIGNhbid0IG1vZGlmeSBpdCAtPiBhbGxvY2F0ZSBh IG5ldwogICAgICAgICAgICAgLy8gb25lICYgZW5zdXJlIHRoYXQgdGhlIHNoYXJlZCBvbmUgaXMg cmV1c2VhYmxlCi0gICAgICAgICAgICBhdl9mcmFtZV9tb3ZlX3JlZihzLT5uZXdfcGljLCBzLT5y ZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+Zik7CisgICAgICAgICAgICBhdl9mcmFtZV9tb3Zl X3JlZihzLT5uZXdfcGljLCBtLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXS0+Zik7CiAKLSAg ICAgICAgICAgIHJldCA9IHByZXBhcmVfcGljdHVyZShzLCBzLT5yZW9yZGVyZWRfaW5wdXRfcGlj dHVyZVswXS0+Ziwgcy0+bmV3X3BpYyk7CisgICAgICAgICAgICByZXQgPSBwcmVwYXJlX3BpY3R1 cmUocywgbS0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0tPmYsIHMtPm5ld19waWMpOwogICAg ICAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAg ICB9IGVsc2UgewogICAgICAgICAgICAgLy8gaW5wdXQgaXMgbm90IGEgc2hhcmVkIHBpeCAtPiBy ZXVzZSBidWZmZXIgZm9yIGN1cnJlbnRfcGl4Ci0gICAgICAgICAgICByZXQgPSBhdl9mcmFtZV9y ZWYocy0+bmV3X3BpYywgcy0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF0tPmYpOworICAgICAg ICAgICAgcmV0ID0gYXZfZnJhbWVfcmVmKHMtPm5ld19waWMsIG0tPnJlb3JkZXJlZF9pbnB1dF9w aWN0dXJlWzBdLT5mKTsKICAgICAgICAgICAgIGlmIChyZXQgPCAwKQogICAgICAgICAgICAgICAg IGdvdG8gZmFpbDsKICAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgTVBWX01BWF9QTEFO RVM7IGkrKykgewpAQCAtMTc3Nyw4ICsxNzcxLDggQEAgc3RhdGljIGludCBzZWxlY3RfaW5wdXRf cGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAgICAgICAgICAgICAg cy0+bmV3X3BpYy0+ZGF0YVtpXSArPSBJTlBMQUNFX09GRlNFVDsKICAgICAgICAgICAgIH0KICAg ICAgICAgfQotICAgICAgICBzLT5jdXJfcGljLnB0ciA9IHMtPnJlb3JkZXJlZF9pbnB1dF9waWN0 dXJlWzBdOwotICAgICAgICBzLT5yZW9yZGVyZWRfaW5wdXRfcGljdHVyZVswXSA9IE5VTEw7Cisg ICAgICAgIHMtPmN1cl9waWMucHRyID0gbS0+cmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbMF07Cisg ICAgICAgIG0tPnJlb3JkZXJlZF9pbnB1dF9waWN0dXJlWzBdID0gTlVMTDsKICAgICAgICAgYXZf YXNzZXJ0MShzLT5tYl93aWR0aCAgPT0gcy0+YnVmZmVyX3Bvb2xzLmFsbG9jX21iX3dpZHRoKTsK ICAgICAgICAgYXZfYXNzZXJ0MShzLT5tYl9oZWlnaHQgPT0gcy0+YnVmZmVyX3Bvb2xzLmFsbG9j X21iX2hlaWdodCk7CiAgICAgICAgIGF2X2Fzc2VydDEocy0+bWJfc3RyaWRlID09IHMtPmJ1ZmZl cl9wb29scy5hbGxvY19tYl9zdHJpZGUpOwpAQCAtMTc5Myw3ICsxNzg3LDcgQEAgc3RhdGljIGlu dCBzZWxlY3RfaW5wdXRfcGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICB9 CiAgICAgcmV0dXJuIDA7CiBmYWlsOgotICAgIGF2X3JlZnN0cnVjdF91bnJlZigmcy0+cmVvcmRl cmVkX2lucHV0X3BpY3R1cmVbMF0pOworICAgIGF2X3JlZnN0cnVjdF91bnJlZigmbS0+cmVvcmRl cmVkX2lucHV0X3BpY3R1cmVbMF0pOwogICAgIHJldHVybiByZXQ7CiB9CiAKZGlmZiAtLWdpdCBh L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmlu ZGV4IDI3YmQwOTlhYWQuLmYwMjcwOGU3ZWMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtNDksNiArNDksOSBA QCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAgICAgaW50IGlucHV0X3BpY3R1 cmVfbnVtYmVyOyAgICAgIC8vLzwgdXNlZCB0byBzZXQgcGljLT5kaXNwbGF5X3BpY3R1cmVfbnVt YmVyCiAgICAgaW50IGNvZGVkX3BpY3R1cmVfbnVtYmVyOyAgICAgIC8vLzwgdXNlZCB0byBzZXQg cGljLT5jb2RlZF9waWN0dXJlX251bWJlcgogCisgICAgTVBWUGljdHVyZSAqaW5wdXRfcGljdHVy ZVtNUFZFTkNfTUFYX0JfRlJBTUVTICsgMV07IC8vLzwgbmV4dCBwaWN0dXJlcyBpbiBkaXNwbGF5 IG9yZGVyCisgICAgTVBWUGljdHVyZSAqcmVvcmRlcmVkX2lucHV0X3BpY3R1cmVbTVBWRU5DX01B WF9CX0ZSQU1FUyArIDFdOyAvLy88IG5leHQgcGljdHVyZXMgaW4gY29kZWQgb3JkZXIKKwogICAg IGludDY0X3QgdXNlcl9zcGVjaWZpZWRfcHRzOyAgICAvLy88IGxhc3Qgbm9uLXplcm8gcHRzIGZy b20gdXNlci1zdXBwbGllZCBBVkZyYW1lCiAgICAgLyoqCiAgICAgICogcHRzIGRpZmZlcmVuY2Ug YmV0d2VlbiB0aGUgZmlyc3QgYW5kIHNlY29uZCBpbnB1dCBmcmFtZSwgdXNlZCBmb3IKLS0gCjIu NDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0039-avcodec-mpegvideo-Move-vbv_delay_pos-to-MPVMainEncCo.patch" Content-Disposition: attachment; filename*0="0039-avcodec-mpegvideo-Move-vbv_delay_pos-to-MPVMainEncCo.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2MTg4MzI3MmEwODZmZmY5NTUwZjFkZjNmOTMyYTQzOGI5ZWQ2NTE3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxMTo1MjoyMCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMzkvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIHZidl9kZWxheV9wb3Mg dG8KIE1QVk1haW5FbmNDb250ZXh0CgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQg PGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL21wZWcxMmVu Yy5jICAgICB8IDIgKy0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggICAgIHwgMSAtCiBsaWJhdmNv ZGVjL21wZWd2aWRlb19lbmMuYyB8IDQgKystLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAg fCAzICsrKwogNCBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVnMTJlbmMuYyBiL2xpYmF2Y29kZWMvbXBlZzEy ZW5jLmMKaW5kZXggMWVmODhkMjNiOC4uNDNhZGRjZmRhOSAxMDA2NDQKLS0tIGEvbGliYXZjb2Rl Yy9tcGVnMTJlbmMuYworKysgYi9saWJhdmNvZGVjL21wZWcxMmVuYy5jCkBAIC0zNTAsNyArMzUw LDcgQEAgc3RhdGljIGludCBtcGVnMV9lbmNvZGVfcGljdHVyZV9oZWFkZXIoTVBWTWFpbkVuY0Nv bnRleHQgKmNvbnN0IG0pCiAgICAgICAgICAgICAgKHMtPnBpY3R1cmVfbnVtYmVyIC0gbXBlZzEy LT5nb3BfcGljdHVyZV9udW1iZXIpICYgMHgzZmYpOwogICAgIHB1dF9iaXRzKCZzLT5wYiwgMywg cy0+cGljdF90eXBlKTsKIAotICAgIHMtPnZidl9kZWxheV9wb3MgPSBwdXRfYnl0ZXNfY291bnQo JnMtPnBiLCAwKTsKKyAgICBtLT52YnZfZGVsYXlfcG9zID0gcHV0X2J5dGVzX2NvdW50KCZzLT5w YiwgMCk7CiAgICAgcHV0X2JpdHMoJnMtPnBiLCAxNiwgMHhGRkZGKTsgICAgICAgICAgICAgICAv KiB2YnZfZGVsYXkgKi8KIAogICAgIC8vIFJBTDogRm9yd2FyZCBmX2NvZGUgYWxzbyBuZWVkZWQg Zm9yIEItZnJhbWVzCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5oIGIvbGliYXZj b2RlYy9tcGVndmlkZW8uaAppbmRleCAxMmNiOGZjM2Q1Li5lZDkyMjRkMmZlIDEwMDY0NAotLS0g YS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKQEAg LTQwMSw3ICs0MDEsNiBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAKICAgICAv KiBNUEVHLTEgc3BlY2lmaWMgKi8KICAgICBpbnQgbGFzdF9tdl9kaXI7ICAgICAgICAgLy8vPCBs YXN0IG12X2RpciwgdXNlZCBmb3IgQi1mcmFtZSBlbmNvZGluZwotICAgIGludCB2YnZfZGVsYXlf cG9zOyAgICAgICAvLy88IG9mZnNldCBvZiB2YnZfZGVsYXkgaW4gdGhlIGJpdHN0cmVhbQogCiAg ICAgLyogTVBFRy0yLXNwZWNpZmljIC0gSSB3aXNoZWQgbm90IHRvIGhhdmUgdG8gc3VwcG9ydCB0 aGlzIG1lc3MuICovCiAgICAgaW50IHByb2dyZXNzaXZlX3NlcXVlbmNlOwpkaWZmIC0tZ2l0IGEv bGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwpp bmRleCA4YWY1NzJhNjllLi5jYjFjZjk3MmQ4IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2 aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYwpAQCAtMjAyMyw5ICsy MDIzLDkgQEAgdmJ2X3JldHJ5OgogICAgICAgICAgICAgZG91YmxlIGluYml0cyAgPSBhdmN0eC0+ cmNfbWF4X3JhdGUgKgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdl9xMmQoYXZjdHgt PnRpbWVfYmFzZSk7CiAgICAgICAgICAgICBpbnQgICAgbWluYml0cyA9IG0tPmZyYW1lX2JpdHMg LSA4ICoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHMtPnZidl9kZWxheV9wb3MgLSAx KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG0tPnZidl9kZWxheV9wb3MgLSAxKTsK ICAgICAgICAgICAgIGRvdWJsZSBiaXRzICAgID0gbS0+cmNfY29udGV4dC5idWZmZXJfaW5kZXgg KyBtaW5iaXRzIC0gaW5iaXRzOwotICAgICAgICAgICAgdWludDhfdCAqY29uc3QgdmJ2X2RlbGF5 X3B0ciA9IHMtPnBiLmJ1ZiArIHMtPnZidl9kZWxheV9wb3M7CisgICAgICAgICAgICB1aW50OF90 ICpjb25zdCB2YnZfZGVsYXlfcHRyID0gcy0+cGIuYnVmICsgbS0+dmJ2X2RlbGF5X3BvczsKIAog ICAgICAgICAgICAgaWYgKGJpdHMgPCAwKQogICAgICAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwg QVZfTE9HX0VSUk9SLApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCBiL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKaW5kZXggZjAyNzA4ZTdlYy4uMTg3NDFlOWMyMiAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAorKysgYi9saWJhdmNvZGVjL21wZWd2 aWRlb2VuYy5oCkBAIC03Miw2ICs3Miw5IEBAIHR5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250 ZXh0IHsKICAgICBpbnQgbG1pbiwgbG1heDsKICAgICBpbnQgdmJ2X2lnbm9yZV9xbWF4OwogCisg ICAgLyogTVBFRy0xLzIgc3BlY2lmaWMgKi8KKyAgICBpbnQgdmJ2X2RlbGF5X3BvczsgICAgICAg ICAgICAgLy8vPCBvZmZzZXQgb2YgdmJ2X2RlbGF5IGluIHRoZSBiaXRzdHJlYW0KKwogICAgIGNv bnN0IHVpbnQ4X3QgKmZjb2RlX3RhYjsgICAgICAvLy88IHNtYWxsZXN0IGZjb2RlIG5lZWRlZCBm b3IgZWFjaCBNVgogCiAgICAgLyogZnJhbWUgc2tpcCBvcHRpb25zICovCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0040-avcodec-mpegvideoenc-Add-bit_rate-to-MPVMainEncConte.patch" Content-Disposition: attachment; filename*0="0040-avcodec-mpegvideoenc-Add-bit_rate-to-MPVMainEncConte.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBhMjhiNDQ4MDY3NmM3NTMzM2I4NGY5NWY0NTBjNmUyZDFlZmU5ZTY0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNzoyNToxNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDAvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvZW5jOiBBZGQgYml0X3JhdGUgdG8g TVBWTWFpbkVuY0NvbnRleHQKClVzZSBpdCBpbnN0ZWFkIG9mIHRoZSBNcGVnRW5jQ29udGV4dCBm aWVsZCB3aGljaCB3aWxsCmJlIHJlbW92ZWQgc29vbi4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMg UmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29k ZWMvbXBlZzEyZW5jLmMgICAgIHwgIDIgKy0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwg IDIgKy0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggIHwgIDEgKwogbGliYXZjb2RlYy9tc21w ZWc0ZW5jLmMgICAgfCAxNSArKysrKysrKysrLS0tLS0KIGxpYmF2Y29kZWMvcmF0ZWNvbnRyb2wu YyAgIHwgMTYgKysrKysrKystLS0tLS0tLQogbGliYXZjb2RlYy9zbm93ZW5jLmMgICAgICAgfCAg MiArLQogbGliYXZjb2RlYy93bXYyZW5jLmMgICAgICAgfCAgNCArKy0tCiA3IGZpbGVzIGNoYW5n ZWQsIDI0IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvbXBlZzEyZW5jLmMgYi9saWJhdmNvZGVjL21wZWcxMmVuYy5jCmluZGV4IDQzYWRkY2Zk YTkuLmFlODdmMjhkNjYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZzEyZW5jLmMKKysrIGIv bGliYXZjb2RlYy9tcGVnMTJlbmMuYwpAQCAtMTk4LDcgKzE5OCw3IEBAIHN0YXRpYyB2b2lkIG1w ZWcxX2VuY29kZV9zZXF1ZW5jZV9oZWFkZXIoTVBFRzEyRW5jQ29udGV4dCAqbXBlZzEyKQogICAg IGVsc2UKICAgICAgICAgLyogVkJWIGNhbGN1bGF0aW9uOiBTY2FsZWQgc28gdGhhdCBhIFZDRCBo YXMgdGhlIHByb3BlcgogICAgICAgICAgKiBWQlYgc2l6ZSBvZiA0MCBraWxvYnl0ZXMgKi8KLSAg ICAgICAgdmJ2X2J1ZmZlcl9zaXplID0gYXZfcmVzY2FsZV9ybmQocy0+Yml0X3JhdGUsIDIwLCAx MTUxOTI5IC8gMiwgQVZfUk9VTkRfWkVSTykgKiA4ICogMTAyNDsKKyAgICAgICAgdmJ2X2J1ZmZl cl9zaXplID0gYXZfcmVzY2FsZV9ybmQobXBlZzEyLT5tcGVnLmJpdF9yYXRlLCAyMCwgMTE1MTky OSAvIDIsIEFWX1JPVU5EX1pFUk8pICogOCAqIDEwMjQ7CiAgICAgdmJ2X2J1ZmZlcl9zaXplID0g KHZidl9idWZmZXJfc2l6ZSArIDE2MzgzKSAvIDE2Mzg0OwogCiAgICAgcHV0X3NiaXRzKCZzLT5w YiwgMTgsIHYpOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJh dmNvZGVjL21wZWd2aWRlb19lbmMuYwppbmRleCBjYjFjZjk3MmQ4Li4xMTZjOTc0MDk4IDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2 aWRlb19lbmMuYwpAQCAtNDQ5LDcgKzQ0OSw3IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVf aW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAKICAgICBhdmN0eC0+Yml0c19wZXJfcmF3X3Nh bXBsZSA9IGF2X2NsaXAoYXZjdHgtPmJpdHNfcGVyX3Jhd19zYW1wbGUsIDAsIDgpOwogCi0gICAg cy0+Yml0X3JhdGUgPSBhdmN0eC0+Yml0X3JhdGU7CisgICAgbS0+Yml0X3JhdGUgPSBhdmN0eC0+ Yml0X3JhdGU7CiAgICAgcy0+d2lkdGggICAgPSBhdmN0eC0+d2lkdGg7CiAgICAgcy0+aGVpZ2h0 ICAgPSBhdmN0eC0+aGVpZ2h0OwogICAgIGlmIChhdmN0eC0+Z29wX3NpemUgPiA2MDAgJiYKZGlm ZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRl b2VuYy5oCmluZGV4IDE4NzQxZTljMjIuLjU3YjkxZDE2OWEgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtODcs NiArODcsNyBAQCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAgICAgaW50ICgq ZW5jb2RlX3BpY3R1cmVfaGVhZGVyKShzdHJ1Y3QgTVBWTWFpbkVuY0NvbnRleHQgKm0pOwogCiAg ICAgLyogYml0IHJhdGUgY29udHJvbCAqLworICAgIGludDY0X3QgYml0X3JhdGU7CiAgICAgaW50 NjRfdCB0b3RhbF9iaXRzOwogICAgIGludCBmcmFtZV9iaXRzOyAgICAgICAgICAgICAgICAvLy88 IGJpdHMgdXNlZCBmb3IgdGhlIGN1cnJlbnQgZnJhbWUKICAgICBpbnQgaGVhZGVyX2JpdHM7CmRp ZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRlbmMuYyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVu Yy5jCmluZGV4IDllNThhOTFhODAuLmU1NTAxZTVlMzIgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMv bXNtcGVnNGVuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCkBAIC0zMCw2ICszMCw4 IEBACiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAKKyNkZWZpbmUg Tk9fU0xJQ0VfVEhSRUFESU5HX0hFUkUKKwogI2luY2x1ZGUgImxpYmF2dXRpbC9hdHRyaWJ1dGVz LmgiCiAjaW5jbHVkZSAibGliYXZ1dGlsL2F2dXRpbC5oIgogI2luY2x1ZGUgImxpYmF2dXRpbC90 aHJlYWQuaCIKQEAgLTIyMiw4ICsyMjQsMTAgQEAgc3RhdGljIGludCBtc21wZWc0X2VuY29kZV9w aWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICBzLT51c2Vfc2tp cF9tYl9jb2RlID0gMTsgLyogb25seSBpZiBQLWZyYW1lICovCiAgICAgcy0+cGVyX21iX3JsX3Rh YmxlID0gMDsKICAgICBpZiAocy0+bXNtcGVnNF92ZXJzaW9uID09IE1TTVA0X1dNVjEpCi0gICAg ICAgIHMtPmludGVyX2ludHJhX3ByZWQ9IChzLT53aWR0aCpzLT5oZWlnaHQgPCAzMjAqMjQwICYm IHMtPmJpdF9yYXRlPD1JSV9CSVRSQVRFICYmIHMtPnBpY3RfdHlwZT09QVZfUElDVFVSRV9UWVBF X1ApOwotICAgIGZmX2Rsb2cocy0+YXZjdHgsICIlZCAlIlBSSWQ2NCIgJWQgJWQgJWRcbiIsIHMt PnBpY3RfdHlwZSwgcy0+Yml0X3JhdGUsCisgICAgICAgIHMtPmludGVyX2ludHJhX3ByZWQgPSBz LT53aWR0aCAqIHMtPmhlaWdodCA8IDMyMCoyNDAgJiYKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG0tPmJpdF9yYXRlICA8PSBJSV9CSVRSQVRFICAgICAmJgorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcy0+cGljdF90eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9QOworICAgIGZm X2Rsb2cocy0+YXZjdHgsICIlZCAlIlBSSWQ2NCIgJWQgJWQgJWRcbiIsIHMtPnBpY3RfdHlwZSwg bS0+Yml0X3JhdGUsCiAgICAgICAgICAgICBzLT5pbnRlcl9pbnRyYV9wcmVkLCBzLT53aWR0aCwg cy0+aGVpZ2h0KTsKIAogICAgIGlmIChzLT5waWN0X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kp IHsKQEAgLTIzMiw3ICsyMzYsNyBAQCBzdGF0aWMgaW50IG1zbXBlZzRfZW5jb2RlX3BpY3R1cmVf aGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAgICAgICAgIGlmIChzLT5tc21w ZWc0X3ZlcnNpb24gPT0gTVNNUDRfV01WMSkgewogICAgICAgICAgICAgZmZfbXNtcGVnNF9lbmNv ZGVfZXh0X2hlYWRlcihzKTsKLSAgICAgICAgICAgIGlmKHMtPmJpdF9yYXRlPk1CQUNfQklUUkFU RSkKKyAgICAgICAgICAgIGlmIChtLT5iaXRfcmF0ZSA+IE1CQUNfQklUUkFURSkKICAgICAgICAg ICAgICAgICBwdXRfYml0cygmcy0+cGIsIDEsIHMtPnBlcl9tYl9ybF90YWJsZSk7CiAgICAgICAg IH0KIApAQCAtMjQ3LDcgKzI1MSw3IEBAIHN0YXRpYyBpbnQgbXNtcGVnNF9lbmNvZGVfcGljdHVy ZV9oZWFkZXIoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgfSBlbHNlIHsKICAgICAg ICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBzLT51c2Vfc2tpcF9tYl9jb2RlKTsKIAotICAgICAgICBp ZiAocy0+bXNtcGVnNF92ZXJzaW9uID09IE1TTVA0X1dNVjEgJiYgcy0+Yml0X3JhdGUgPiBNQkFD X0JJVFJBVEUpCisgICAgICAgIGlmIChzLT5tc21wZWc0X3ZlcnNpb24gPT0gTVNNUDRfV01WMSAm JiBtLT5iaXRfcmF0ZSA+IE1CQUNfQklUUkFURSkKICAgICAgICAgICAgIHB1dF9iaXRzKCZzLT5w YiwgMSwgcy0+cGVyX21iX3JsX3RhYmxlKTsKIAogICAgICAgICBpZiAocy0+bXNtcGVnNF92ZXJz aW9uID4gTVNNUDRfVjIpIHsKQEAgLTI2OCw2ICsyNzIsNyBAQCBzdGF0aWMgaW50IG1zbXBlZzRf ZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiB2b2lk IGZmX21zbXBlZzRfZW5jb2RlX2V4dF9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKiBzKQogeworICAg IGNvbnN0IE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtID0gc2xpY2VfdG9fbWFpbmVuYyhzKTsK ICAgICB1bnNpZ25lZCBmcHM7CiAKICAgICBpZiAocy0+YXZjdHgtPmZyYW1lcmF0ZS5udW0gPiAw ICYmIHMtPmF2Y3R4LT5mcmFtZXJhdGUuZGVuID4gMCkKQEAgLTI4NCw3ICsyODksNyBAQCBGRl9F TkFCTEVfREVQUkVDQVRJT05fV0FSTklOR1MKIAogICAgIHB1dF9iaXRzKCZzLT5wYiwgNSwgRkZN SU4oZnBzLCAzMSkpOyAvL3llcyAyOS45NyAtPiAyOQogCi0gICAgcHV0X2JpdHMoJnMtPnBiLCAx MSwgRkZNSU4ocy0+Yml0X3JhdGUgLyAxMDI0LCAyMDQ3KSk7CisgICAgcHV0X2JpdHMoJnMtPnBi LCAxMSwgRkZNSU4obS0+Yml0X3JhdGUgLyAxMDI0LCAyMDQ3KSk7CiAKICAgICBpZiAocy0+bXNt cGVnNF92ZXJzaW9uID49IE1TTVA0X1YzKQogICAgICAgICBwdXRfYml0cygmcy0+cGIsIDEsIHMt PmZsaXBmbG9wX3JvdW5kaW5nKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wu YyBiL2xpYmF2Y29kZWMvcmF0ZWNvbnRyb2wuYwppbmRleCAyMGUzY2NhYmY4Li4wZDJiZjhmYjMw IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMKKysrIGIvbGliYXZjb2RlYy9y YXRlY29udHJvbC5jCkBAIC0zNDcsNyArMzQ3LDcgQEAgc3RhdGljIGludCBpbml0X3Bhc3MyKE1Q Vk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgIGRvdWJsZSBjb21wbGV4aXR5WzVdICAgPSB7 IDAgfTsgLy8gYXBwcm94aW1hdGUgYml0cyBhdCBxdWFudD0xCiAgICAgdWludDY0X3QgY29uc3Rf Yml0c1s1XSA9IHsgMCB9OyAvLyBxdWFudGl6ZXIgaW5kZXBlbmRlbnQgYml0cwogICAgIHVpbnQ2 NF90IGFsbF9jb25zdF9iaXRzOwotICAgIHVpbnQ2NF90IGFsbF9hdmFpbGFibGVfYml0cyA9IGF2 X3Jlc2NhbGVfcShzLT5iaXRfcmF0ZSwKKyAgICB1aW50NjRfdCBhbGxfYXZhaWxhYmxlX2JpdHMg PSBhdl9yZXNjYWxlX3EobS0+Yml0X3JhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIChBVlJhdGlvbmFsKXtyY2MtPm51bV9lbnRyaWVzLDF9LAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcHMpOwogICAgIGRv dWJsZSByYXRlX2ZhY3RvciAgICAgICAgICA9IDA7CkBAIC00NzcsOCArNDc3LDggQEAgc3RhdGlj IGludCBpbml0X3Bhc3MyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgIGF2X2Fzc2Vy dDAodG9vYmlnIDw9IDQwKTsKICAgICBhdl9sb2cocy0+YXZjdHgsIEFWX0xPR19ERUJVRywKICAg ICAgICAgICAgIltsYXZjIHJjXSByZXF1ZXN0ZWQgYml0cmF0ZTogJSJQUklkNjQiIGJwcyAgZXhw ZWN0ZWQgYml0cmF0ZTogJSJQUklkNjQiIGJwc1xuIiwKLSAgICAgICAgICAgcy0+Yml0X3JhdGUs Ci0gICAgICAgICAgIChpbnQ2NF90KShleHBlY3RlZF9iaXRzIC8gKChkb3VibGUpYWxsX2F2YWls YWJsZV9iaXRzIC8gcy0+Yml0X3JhdGUpKSk7CisgICAgICAgICAgIG0tPmJpdF9yYXRlLAorICAg ICAgICAgICAoaW50NjRfdCkoZXhwZWN0ZWRfYml0cyAvICgoZG91YmxlKWFsbF9hdmFpbGFibGVf Yml0cyAvIG0tPmJpdF9yYXRlKSkpOwogICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0RFQlVH LAogICAgICAgICAgICAiW2xhdmMgcmNdIGVzdGltYXRlZCB0YXJnZXQgYXZlcmFnZSBxcDogJS4z ZlxuIiwKICAgICAgICAgICAgKGZsb2F0KXFzY2FsZV9zdW0gLyByY2MtPm51bV9lbnRyaWVzKTsK QEAgLTY5Niw3ICs2OTYsNyBAQCBhdl9jb2xkIGludCBmZl9yYXRlX2NvbnRyb2xfaW5pdChNUFZN YWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAgICAgICAgICBnZXRfcXNjYWxlKG0sICZy Y2UsIHJjYy0+cGFzczFfd2FudGVkX2JpdHMgLyByY2MtPnBhc3MxX3JjX2VxX291dHB1dF9zdW0s IGkpOwogCiAgICAgICAgICAgICAgICAgLy8gRklYTUUgbWlzYmVoYXZlcyBhIGxpdHRsZSBmb3Ig dmFyaWFibGUgZnBzCi0gICAgICAgICAgICAgICAgcmNjLT5wYXNzMV93YW50ZWRfYml0cyArPSBz LT5iaXRfcmF0ZSAvIGdldF9mcHMocy0+YXZjdHgpOworICAgICAgICAgICAgICAgIHJjYy0+cGFz czFfd2FudGVkX2JpdHMgKz0gbS0+Yml0X3JhdGUgLyBnZXRfZnBzKHMtPmF2Y3R4KTsKICAgICAg ICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTk3MSw5ICs5NzEsOSBAQCBmbG9hdCBmZl9y YXRlX2VzdGltYXRlX3FzY2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IGRyeV9y dW4pCiAgICAgICAgICAgICBkdHNfcGljID0gcy0+bGFzdF9waWMucHRyOwogCiAgICAgICAgIGlm ICghZHRzX3BpYyB8fCBkdHNfcGljLT5mLT5wdHMgPT0gQVZfTk9QVFNfVkFMVUUpCi0gICAgICAg ICAgICB3YW50ZWRfYml0c19kb3VibGUgPSBzLT5iaXRfcmF0ZSAqIChkb3VibGUpcGljdHVyZV9u dW1iZXIgLyBmcHM7CisgICAgICAgICAgICB3YW50ZWRfYml0c19kb3VibGUgPSBtLT5iaXRfcmF0 ZSAqIChkb3VibGUpcGljdHVyZV9udW1iZXIgLyBmcHM7CiAgICAgICAgIGVsc2UKLSAgICAgICAg ICAgIHdhbnRlZF9iaXRzX2RvdWJsZSA9IHMtPmJpdF9yYXRlICogKGRvdWJsZSlkdHNfcGljLT5m LT5wdHMgLyBmcHM7CisgICAgICAgICAgICB3YW50ZWRfYml0c19kb3VibGUgPSBtLT5iaXRfcmF0 ZSAqIChkb3VibGUpZHRzX3BpYy0+Zi0+cHRzIC8gZnBzOwogICAgICAgICBpZiAod2FudGVkX2Jp dHNfZG91YmxlID4gSU5UNjRfTUFYKSB7CiAgICAgICAgICAgICBhdl9sb2cocy0+YXZjdHgsIEFW X0xPR19XQVJOSU5HLCAiQml0cyBleGNlZWQgNjRiaXQgcmFuZ2VcbiIpOwogICAgICAgICAgICAg d2FudGVkX2JpdHMgPSBJTlQ2NF9NQVg7CkBAIC0xMDQ3LDcgKzEwNDcsNyBAQCBmbG9hdCBmZl9y YXRlX2VzdGltYXRlX3FzY2FsZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgaW50IGRyeV9y dW4pCiAKICAgICAgICAgcSA9IG1vZGlmeV9xc2NhbGUobSwgcmNlLCBxLCBwaWN0dXJlX251bWJl cik7CiAKLSAgICAgICAgcmNjLT5wYXNzMV93YW50ZWRfYml0cyArPSBzLT5iaXRfcmF0ZSAvIGZw czsKKyAgICAgICAgcmNjLT5wYXNzMV93YW50ZWRfYml0cyArPSBtLT5iaXRfcmF0ZSAvIGZwczsK IAogICAgICAgICBhdl9hc3NlcnQwKHEgPiAwLjApOwogICAgIH0KQEAgLTEwNjEsNyArMTA2MSw3 IEBAIGZsb2F0IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKE1QVk1haW5FbmNDb250ZXh0ICpjb25z dCBtLCBpbnQgZHJ5X3J1bikKICAgICAgICAgICAgICAgIHdhbnRlZF9iaXRzIC8gMTAwMCwgbS0+ dG90YWxfYml0cyAvIDEwMDAsCiAgICAgICAgICAgICAgICBicl9jb21wZW5zYXRpb24sIHNob3J0 X3Rlcm1fcSwgbS0+ZnJhbWVfYml0cywKICAgICAgICAgICAgICAgIG0tPm1iX3Zhcl9zdW0sIG0t Pm1jX21iX3Zhcl9zdW0sCi0gICAgICAgICAgICAgICBzLT5iaXRfcmF0ZSAvIDEwMDAsIChpbnQp ZnBzKTsKKyAgICAgICAgICAgICAgIG0tPmJpdF9yYXRlIC8gMTAwMCwgKGludClmcHMpOwogICAg IH0KIAogICAgIGlmIChxIDwgcW1pbikKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvc25vd2VuYy5j IGIvbGliYXZjb2RlYy9zbm93ZW5jLmMKaW5kZXggZTA3NGU4NzhkNi4uYjRhMzI5MTU4ZiAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9zbm93ZW5jLmMKKysrIGIvbGliYXZjb2RlYy9zbm93ZW5jLmMK QEAgLTIyNyw3ICsyMjcsNyBAQCBzdGF0aWMgYXZfY29sZCBpbnQgZW5jb2RlX2luaXQoQVZDb2Rl Y0NvbnRleHQgKmF2Y3R4KQogICAgIHMtPnZlcnNpb249MDsKIAogICAgIG1wdi0+YXZjdHggICA9 IGF2Y3R4OwotICAgIG1wdi0+Yml0X3JhdGU9IGF2Y3R4LT5iaXRfcmF0ZTsKKyAgICBlbmMtPm0u Yml0X3JhdGUgPSBhdmN0eC0+Yml0X3JhdGU7CiAgICAgZW5jLT5tLmxtaW4gID0gYXZjdHgtPm1i X2xtaW47CiAgICAgZW5jLT5tLmxtYXggID0gYXZjdHgtPm1iX2xtYXg7CiAgICAgbXB2LT5tYl9u dW0gID0gKGF2Y3R4LT53aWR0aCAqIGF2Y3R4LT5oZWlnaHQgKyAyNTUpIC8gMjU2OyAvLyBGb3Ig cmF0ZWNvbnRyb2wKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvd212MmVuYy5jIGIvbGliYXZjb2Rl Yy93bXYyZW5jLmMKaW5kZXggM2FiM2U3NTcyMi4uNmVkYTM4ZDA1ZiAxMDA2NDQKLS0tIGEvbGli YXZjb2RlYy93bXYyZW5jLmMKKysrIGIvbGliYXZjb2RlYy93bXYyZW5jLmMKQEAgLTU1LDcgKzU1 LDcgQEAgc3RhdGljIGludCBlbmNvZGVfZXh0X2hlYWRlcihXTVYyRW5jQ29udGV4dCAqdykKICAg ICBpbml0X3B1dF9iaXRzKCZwYiwgcy0+YXZjdHgtPmV4dHJhZGF0YSwgV01WMl9FWFRSQURBVEFf U0laRSk7CiAKICAgICBwdXRfYml0cygmcGIsIDUsIHMtPmF2Y3R4LT50aW1lX2Jhc2UuZGVuIC8g cy0+YXZjdHgtPnRpbWVfYmFzZS5udW0pOyAvLyB5ZXMgMjkuOTcgLT4gMjkKLSAgICBwdXRfYml0 cygmcGIsIDExLCBGRk1JTihzLT5iaXRfcmF0ZSAvIDEwMjQsIDIwNDcpKTsKKyAgICBwdXRfYml0 cygmcGIsIDExLCBGRk1JTih3LT5tc21wZWc0Lm0uYml0X3JhdGUgLyAxMDI0LCAyMDQ3KSk7CiAK ICAgICBwdXRfYml0cygmcGIsIDEsIHctPm1zcGVsX2JpdCAgICAgICAgPSAxKTsKICAgICBwdXRf Yml0cygmcGIsIDEsIHMtPmxvb3BfZmlsdGVyKTsKQEAgLTEzNSw3ICsxMzUsNyBAQCBzdGF0aWMg aW50IHdtdjJfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBt KQogICAgICAgICBwdXRfYml0cygmcy0+cGIsIDEsIHMtPmRjX3RhYmxlX2luZGV4KTsKICAgICAg ICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBzLT5tdl90YWJsZV9pbmRleCk7CiAKLSAgICAgICAgcy0+ aW50ZXJfaW50cmFfcHJlZCA9IDA7IC8vIChzLT53aWR0aCAqIHMtPmhlaWdodCA8IDMyMCAqIDI0 MCAmJiBzLT5iaXRfcmF0ZSA8PSBJSV9CSVRSQVRFKTsKKyAgICAgICAgcy0+aW50ZXJfaW50cmFf cHJlZCA9IDA7IC8vIChzLT53aWR0aCAqIHMtPmhlaWdodCA8IDMyMCAqIDI0MCAmJiBtLT5iaXRf cmF0ZSA8PSBJSV9CSVRSQVRFKTsKICAgICB9CiAgICAgcy0+ZXNjM19sZXZlbF9sZW5ndGggPSAw OwogICAgIHMtPmVzYzNfcnVuX2xlbmd0aCAgID0gMDsKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0041-avcodec-mpeg12dec-Add-bit_rate-field-to-Mpeg1Context.patch" Content-Disposition: attachment; filename*0="0041-avcodec-mpeg12dec-Add-bit_rate-field-to-Mpeg1Context.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBkNTVmNTQ0Y2RkZTJiMjMxZDFmMGY1NGYxY2JhNzA2ZDM4M2VkZDA0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNzoyODoxMyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDEvNzddIGF2Y29kZWMvbXBlZzEyZGVjOiBBZGQgYml0X3JhdGUgZmllbGQg dG8gTXBlZzFDb250ZXh0CgpVc2UgaXQgaW5zdGVhZCBvZiBNcGVnRW5jQ29udGV4dC5iaXRfcmF0 ZSB3aGljaCB3aWxsIGJlIHJlbW92ZWQgc29vbi4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhl aW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMv bXBlZzEyZGVjLmMgfCAyMSArKysrKysrKysrKy0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAx MSBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVj L21wZWcxMmRlYy5jIGIvbGliYXZjb2RlYy9tcGVnMTJkZWMuYwppbmRleCA4MWNjNTQzNDI0Li5l ZDczOWJlNTM4IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWcxMmRlYy5jCisrKyBiL2xpYmF2 Y29kZWMvbXBlZzEyZGVjLmMKQEAgLTkxLDYgKzkxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZzFD b250ZXh0IHsKICAgICBpbnQgZmlyc3Rfc2xpY2U7CiAgICAgaW50IGV4dHJhZGF0YV9kZWNvZGVk OwogICAgIGludCB2YnZfZGVsYXk7CisgICAgaW50NjRfdCBiaXRfcmF0ZTsKICAgICBpbnQ2NF90 IHRpbWVjb2RlX2ZyYW1lX3N0YXJ0OyAgLyo8IEdPUCB0aW1lY29kZSBmcmFtZSBzdGFydCBudW1i ZXIsIGluIG5vbiBkcm9wIGZyYW1lIGZvcm1hdCAqLwogfSBNcGVnMUNvbnRleHQ7CiAKQEAgLTk1 MCwxMiArOTUxLDEyIEBAIHN0YXRpYyBpbnQgbXBlZ19kZWNvZGVfcG9zdGluaXQoQVZDb2RlY0Nv bnRleHQgKmF2Y3R4KQogICAgICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgICAgIHJldHVybiBy ZXQ7CiAKLSAgICAgICAgaWYgKGF2Y3R4LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHMlZJ REVPICYmIHMtPmJpdF9yYXRlICYmCi0gICAgICAgICAgICAocy0+Yml0X3JhdGUgIT0gMHgzRkZG Rio0MDApKSB7Ci0gICAgICAgICAgICBhdmN0eC0+cmNfbWF4X3JhdGUgPSBzLT5iaXRfcmF0ZTsK LSAgICAgICAgfSBlbHNlIGlmIChhdmN0eC0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfTVBFRzFW SURFTyAmJiBzLT5iaXRfcmF0ZSAmJgotICAgICAgICAgICAgICAgICAgIChzLT5iaXRfcmF0ZSAh PSAweDNGRkZGKjQwMCB8fCBzMS0+dmJ2X2RlbGF5ICE9IDB4RkZGRikpIHsKLSAgICAgICAgICAg IGF2Y3R4LT5iaXRfcmF0ZSA9IHMtPmJpdF9yYXRlOworICAgICAgICBpZiAoYXZjdHgtPmNvZGVj X2lkID09IEFWX0NPREVDX0lEX01QRUcyVklERU8gJiYgczEtPmJpdF9yYXRlICYmCisgICAgICAg ICAgICAoczEtPmJpdF9yYXRlICE9IDB4M0ZGRkYqNDAwKSkgeworICAgICAgICAgICAgYXZjdHgt PnJjX21heF9yYXRlID0gczEtPmJpdF9yYXRlOworICAgICAgICB9IGVsc2UgaWYgKGF2Y3R4LT5j b2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHMVZJREVPICYmIHMxLT5iaXRfcmF0ZSAmJgorICAg ICAgICAgICAgICAgICAgIChzMS0+Yml0X3JhdGUgIT0gMHgzRkZGRio0MDAgfHwgczEtPnZidl9k ZWxheSAhPSAweEZGRkYpKSB7CisgICAgICAgICAgICBhdmN0eC0+Yml0X3JhdGUgPSBzMS0+Yml0 X3JhdGU7CiAgICAgICAgIH0KICAgICAgICAgczEtPnNhdmVfYXNwZWN0ICAgICAgICAgID0gcy0+ YXZjdHgtPnNhbXBsZV9hc3BlY3RfcmF0aW87CiAgICAgICAgIHMxLT5zYXZlX3dpZHRoICAgICAg ICAgICA9IHMtPndpZHRoOwpAQCAtMTA3NSw3ICsxMDc2LDcgQEAgc3RhdGljIHZvaWQgbXBlZ19k ZWNvZGVfc2VxdWVuY2VfZXh0ZW5zaW9uKE1wZWcxQ29udGV4dCAqczEpCiAgICAgcy0+d2lkdGgg IHw9IChob3Jpel9zaXplX2V4dCA8PCAxMik7CiAgICAgcy0+aGVpZ2h0IHw9ICh2ZXJ0X3NpemVf ZXh0ICA8PCAxMik7CiAgICAgYml0X3JhdGVfZXh0ID0gZ2V0X2JpdHMoJnMtPmdiLCAxMik7ICAv KiBYWFg6IGhhbmRsZSBpdCAqLwotICAgIHMtPmJpdF9yYXRlICs9IChiaXRfcmF0ZV9leHQgPDwg MTgpICogNDAwTEw7CisgICAgczEtPmJpdF9yYXRlICs9IChiaXRfcmF0ZV9leHQgPDwgMTgpICog NDAwTEw7CiAgICAgY2hlY2tfbWFya2VyKHMtPmF2Y3R4LCAmcy0+Z2IsICJhZnRlciBiaXQgcmF0 ZSBleHRlbnNpb24iKTsKICAgICBzLT5hdmN0eC0+cmNfYnVmZmVyX3NpemUgKz0gZ2V0X2JpdHMo JnMtPmdiLCA4KSAqIDEwMjQgKiAxNiA8PCAxMDsKIApAQCAtMTA5Myw3ICsxMDk0LDcgQEAgc3Rh dGljIHZvaWQgbXBlZ19kZWNvZGVfc2VxdWVuY2VfZXh0ZW5zaW9uKE1wZWcxQ29udGV4dCAqczEp CiAgICAgICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0RFQlVHLAogICAgICAgICAgICAgICAg InByb2ZpbGU6ICVkLCBsZXZlbDogJWQgcHM6ICVkIGNmOiVkIHZidiBidWZmZXI6ICVkLCBiaXRy YXRlOiUiUFJJZDY0IlxuIiwKICAgICAgICAgICAgICAgIHMtPmF2Y3R4LT5wcm9maWxlLCBzLT5h dmN0eC0+bGV2ZWwsIHMtPnByb2dyZXNzaXZlX3NlcXVlbmNlLCBzLT5jaHJvbWFfZm9ybWF0LAot ICAgICAgICAgICAgICAgcy0+YXZjdHgtPnJjX2J1ZmZlcl9zaXplLCBzLT5iaXRfcmF0ZSk7Cisg ICAgICAgICAgICAgICBzLT5hdmN0eC0+cmNfYnVmZmVyX3NpemUsIHMxLT5iaXRfcmF0ZSk7CiB9 CiAKIHN0YXRpYyB2b2lkIG1wZWdfZGVjb2RlX3NlcXVlbmNlX2Rpc3BsYXlfZXh0ZW5zaW9uKE1w ZWcxQ29udGV4dCAqczEpCkBAIC0xNzk5LDcgKzE4MDAsNyBAQCBzdGF0aWMgaW50IG1wZWcxX2Rl Y29kZV9zZXF1ZW5jZShBVkNvZGVjQ29udGV4dCAqYXZjdHgsCiAgICAgICAgICAgICAgICAiZnJh bWVfcmF0ZV9pbmRleCAlZCBpcyBpbnZhbGlkXG4iLCBzMS0+ZnJhbWVfcmF0ZV9pbmRleCk7CiAg ICAgICAgIHMxLT5mcmFtZV9yYXRlX2luZGV4ID0gMTsKICAgICB9Ci0gICAgcy0+Yml0X3JhdGUg PSBnZXRfYml0cygmcy0+Z2IsIDE4KSAqIDQwMExMOworICAgIHMxLT5iaXRfcmF0ZSA9IGdldF9i aXRzKCZzLT5nYiwgMTgpICogNDAwOwogICAgIGlmIChjaGVja19tYXJrZXIocy0+YXZjdHgsICZz LT5nYiwgImluIHNlcXVlbmNlIGhlYWRlciIpID09IDApIHsKICAgICAgICAgcmV0dXJuIEFWRVJS T1JfSU5WQUxJRERBVEE7CiAgICAgfQpAQCAtMTg1MSw3ICsxODUyLDcgQEAgc3RhdGljIGludCBt cGVnMV9kZWNvZGVfc2VxdWVuY2UoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LAogCiAgICAgaWYgKHMt PmF2Y3R4LT5kZWJ1ZyAmIEZGX0RFQlVHX1BJQ1RfSU5GTykKICAgICAgICAgYXZfbG9nKHMtPmF2 Y3R4LCBBVl9MT0dfREVCVUcsICJ2YnYgYnVmZmVyOiAlZCwgYml0cmF0ZTolIlBSSWQ2NCIsIGFz cGVjdF9yYXRpb19pbmZvOiAlZCBcbiIsCi0gICAgICAgICAgICAgICBzLT5hdmN0eC0+cmNfYnVm ZmVyX3NpemUsIHMtPmJpdF9yYXRlLCBzMS0+YXNwZWN0X3JhdGlvX2luZm8pOworICAgICAgICAg ICAgICAgcy0+YXZjdHgtPnJjX2J1ZmZlcl9zaXplLCBzMS0+Yml0X3JhdGUsIHMxLT5hc3BlY3Rf cmF0aW9faW5mbyk7CiAKICAgICByZXR1cm4gMDsKIH0KLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0042-avcodec-msmpeg4dec-Add-MSMPEG4DecContext.patch" Content-Disposition: attachment; filename="0042-avcodec-msmpeg4dec-Add-MSMPEG4DecContext.patch" Content-Transfer-Encoding: base64 RnJvbSAzNGY0YjA2ZGU5N2NkOTk4MDZkOTg0N2UyNTMyZjgxMTk5ZDJkZTFjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNzo0MjoyNiArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDIvNzddIGF2Y29kZWMvbXNtcGVnNGRlYzogQWRkIE1TTVBFRzREZWNDb250 ZXh0CgpUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBmdXJ0aGVyIGNvbW1pdHMuCgpTaWduZWQt b2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNv bT4KLS0tCiBsaWJhdmNvZGVjL21zbXBlZzRkZWMuYyB8ICA4ICsrKystLS0tCiBsaWJhdmNvZGVj L21zbXBlZzRkZWMuaCB8IDEwICsrKysrKysrKysKIGxpYmF2Y29kZWMvd212MmRlYy5jICAgIHwg MjQgKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlv bnMoKyksIDE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXNtcGVnNGRl Yy5jIGIvbGliYXZjb2RlYy9tc21wZWc0ZGVjLmMKaW5kZXggMDYwNGRjODk2My4uYjdmZjYxMjZi MSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0ZGVjLmMKKysrIGIvbGliYXZjb2RlYy9t c21wZWc0ZGVjLmMKQEAgLTg0NSw3ICs4NDUsNyBAQCBjb25zdCBGRkNvZGVjIGZmX21zbXBlZzR2 MV9kZWNvZGVyID0gewogICAgIENPREVDX0xPTkdfTkFNRSgiTVBFRy00IHBhcnQgMiBNaWNyb3Nv ZnQgdmFyaWFudCB2ZXJzaW9uIDEiKSwKICAgICAucC50eXBlICAgICAgICAgPSBBVk1FRElBX1RZ UEVfVklERU8sCiAgICAgLnAuaWQgICAgICAgICAgID0gQVZfQ09ERUNfSURfTVNNUEVHNFYxLAot ICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNcGVnRW5jQ29udGV4dCksCisgICAgLnByaXZf ZGF0YV9zaXplID0gc2l6ZW9mKE1TTVA0RGVjQ29udGV4dCksCiAgICAgLmluaXQgICAgICAgICAg ID0gZmZfbXNtcGVnNF9kZWNvZGVfaW5pdCwKICAgICBGRl9DT0RFQ19ERUNPREVfQ0IoZmZfaDI2 M19kZWNvZGVfZnJhbWUpLAogICAgIC5jbG9zZSAgICAgICAgICA9IGZmX21wdl9kZWNvZGVfY2xv c2UsCkBAIC04NjAsNyArODYwLDcgQEAgY29uc3QgRkZDb2RlYyBmZl9tc21wZWc0djJfZGVjb2Rl ciA9IHsKICAgICBDT0RFQ19MT05HX05BTUUoIk1QRUctNCBwYXJ0IDIgTWljcm9zb2Z0IHZhcmlh bnQgdmVyc2lvbiAyIiksCiAgICAgLnAudHlwZSAgICAgICAgID0gQVZNRURJQV9UWVBFX1ZJREVP LAogICAgIC5wLmlkICAgICAgICAgICA9IEFWX0NPREVDX0lEX01TTVBFRzRWMiwKLSAgICAucHJp dl9kYXRhX3NpemUgPSBzaXplb2YoTXBlZ0VuY0NvbnRleHQpLAorICAgIC5wcml2X2RhdGFfc2l6 ZSA9IHNpemVvZihNU01QNERlY0NvbnRleHQpLAogICAgIC5pbml0ICAgICAgICAgICA9IGZmX21z bXBlZzRfZGVjb2RlX2luaXQsCiAgICAgRkZfQ09ERUNfREVDT0RFX0NCKGZmX2gyNjNfZGVjb2Rl X2ZyYW1lKSwKICAgICAuY2xvc2UgICAgICAgICAgPSBmZl9tcHZfZGVjb2RlX2Nsb3NlLApAQCAt ODc1LDcgKzg3NSw3IEBAIGNvbnN0IEZGQ29kZWMgZmZfbXNtcGVnNHYzX2RlY29kZXIgPSB7CiAg ICAgQ09ERUNfTE9OR19OQU1FKCJNUEVHLTQgcGFydCAyIE1pY3Jvc29mdCB2YXJpYW50IHZlcnNp b24gMyIpLAogICAgIC5wLnR5cGUgICAgICAgICA9IEFWTUVESUFfVFlQRV9WSURFTywKICAgICAu cC5pZCAgICAgICAgICAgPSBBVl9DT0RFQ19JRF9NU01QRUc0VjMsCi0gICAgLnByaXZfZGF0YV9z aXplID0gc2l6ZW9mKE1wZWdFbmNDb250ZXh0KSwKKyAgICAucHJpdl9kYXRhX3NpemUgPSBzaXpl b2YoTVNNUDREZWNDb250ZXh0KSwKICAgICAuaW5pdCAgICAgICAgICAgPSBmZl9tc21wZWc0X2Rl Y29kZV9pbml0LAogICAgIEZGX0NPREVDX0RFQ09ERV9DQihmZl9oMjYzX2RlY29kZV9mcmFtZSks CiAgICAgLmNsb3NlICAgICAgICAgID0gZmZfbXB2X2RlY29kZV9jbG9zZSwKQEAgLTg5MCw3ICs4 OTAsNyBAQCBjb25zdCBGRkNvZGVjIGZmX3dtdjFfZGVjb2RlciA9IHsKICAgICBDT0RFQ19MT05H X05BTUUoIldpbmRvd3MgTWVkaWEgVmlkZW8gNyIpLAogICAgIC5wLnR5cGUgICAgICAgICA9IEFW TUVESUFfVFlQRV9WSURFTywKICAgICAucC5pZCAgICAgICAgICAgPSBBVl9DT0RFQ19JRF9XTVYx LAotICAgIC5wcml2X2RhdGFfc2l6ZSA9IHNpemVvZihNcGVnRW5jQ29udGV4dCksCisgICAgLnBy aXZfZGF0YV9zaXplID0gc2l6ZW9mKE1TTVA0RGVjQ29udGV4dCksCiAgICAgLmluaXQgICAgICAg ICAgID0gZmZfbXNtcGVnNF9kZWNvZGVfaW5pdCwKICAgICBGRl9DT0RFQ19ERUNPREVfQ0IoZmZf aDI2M19kZWNvZGVfZnJhbWUpLAogICAgIC5jbG9zZSAgICAgICAgICA9IGZmX21wdl9kZWNvZGVf Y2xvc2UsCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRkZWMuaCBiL2xpYmF2Y29kZWMv bXNtcGVnNGRlYy5oCmluZGV4IDVkYWE3YzZiYzMuLmQwMjQ2NzRmMGQgMTAwNjQ0Ci0tLSBhL2xp YmF2Y29kZWMvbXNtcGVnNGRlYy5oCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGRlYy5oCkBAIC0y OCw2ICsyOCwxNiBAQAogI2RlZmluZSBJTlRFUl9JTlRSQV9WTENfQklUUyAzCiAjZGVmaW5lIE1C X05PTl9JTlRSQV9WTENfQklUUyA5CiAKK3R5cGVkZWYgc3RydWN0IE1TTVA0RGVjQ29udGV4dCB7 CisgICAgTXBlZ0VuY0NvbnRleHQgbTsKK30gTVNNUDREZWNDb250ZXh0OworCitzdGF0aWMgaW5s aW5lIE1TTVA0RGVjQ29udGV4dCAqbXB2X3RvX21zbXBlZzQoTXBlZ0VuY0NvbnRleHQgKnMpCit7 CisgICAgLy8gT25seSBsZWdhbCBiZWNhdXNlIG5vIE1TTVBFRy00IGRlY29kZXIgdXNlcyBzbGlj ZS10aHJlYWRpbmcuCisgICAgcmV0dXJuIChNU01QNERlY0NvbnRleHQqKXM7Cit9CisKIGV4dGVy biBjb25zdCBWTENFbGVtICpmZl9tYl9ub25faW50cmFfdmxjWzRdOwogZXh0ZXJuIFZMQ0VsZW0g ZmZfaW50ZXJfaW50cmFfdmxjWzhdOwogCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3dtdjJkZWMu YyBiL2xpYmF2Y29kZWMvd212MmRlYy5jCmluZGV4IDdmNDNhNWMwYmEuLjVhYjYxOWMyY2EgMTAw NjQ0Ci0tLSBhL2xpYmF2Y29kZWMvd212MmRlYy5jCisrKyBiL2xpYmF2Y29kZWMvd212MmRlYy5j CkBAIC0zNyw3ICszNyw3IEBACiAjaW5jbHVkZSAid212MmRlYy5oIgogCiB0eXBlZGVmIHN0cnVj dCBXTVYyRGVjQ29udGV4dCB7Ci0gICAgTXBlZ0VuY0NvbnRleHQgczsKKyAgICBNU01QNERlY0Nv bnRleHQgbXM7CiAgICAgV01WMkNvbnRleHQgY29tbW9uOwogICAgIEludHJhWDhDb250ZXh0IHg4 OwogICAgIGludCBqX3R5cGVfYml0OwpAQCAtNTksNyArNTksNyBAQCB0eXBlZGVmIHN0cnVjdCBX TVYyRGVjQ29udGV4dCB7CiBzdGF0aWMgdm9pZCB3bXYyX2FkZF9ibG9jayhXTVYyRGVjQ29udGV4 dCAqdywgaW50MTZfdCAqYmxvY2sxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhf dCAqZHN0LCBpbnQgc3RyaWRlLCBpbnQgbikKIHsKLSAgICBNcGVnRW5jQ29udGV4dCAqY29uc3Qg cyA9ICZ3LT5zOworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJnctPm1zLm07CiAKICAg ICBpZiAocy0+YmxvY2tfbGFzdF9pbmRleFtuXSA+PSAwKSB7CiAgICAgICAgIHN3aXRjaCAody0+ YWJ0X3R5cGVfdGFibGVbbl0pIHsKQEAgLTEwMyw3ICsxMDMsNyBAQCBzdGF0aWMgaW50IHBhcnNl X21iX3NraXAoV01WMkRlY0NvbnRleHQgKncpCiB7CiAgICAgaW50IG1iX3gsIG1iX3k7CiAgICAg aW50IGNvZGVkX21iX2NvdW50ID0gMDsKLSAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZ3 LT5zOworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJnctPm1zLm07CiAgICAgdWludDMy X3QgKmNvbnN0IG1iX3R5cGUgPSBzLT5jdXJfcGljLm1iX3R5cGU7CiAKICAgICB3LT5za2lwX3R5 cGUgPSBnZXRfYml0cygmcy0+Z2IsIDIpOwpAQCAtMTY2LDcgKzE2Niw3IEBAIHN0YXRpYyBpbnQg cGFyc2VfbWJfc2tpcChXTVYyRGVjQ29udGV4dCAqdykKIAogc3RhdGljIGludCBkZWNvZGVfZXh0 X2hlYWRlcihXTVYyRGVjQ29udGV4dCAqdykKIHsKLSAgICBNcGVnRW5jQ29udGV4dCAqY29uc3Qg cyA9ICZ3LT5zOworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJnctPm1zLm07CiAgICAg R2V0Qml0Q29udGV4dCBnYjsKICAgICBpbnQgZnBzOwogICAgIGludCBjb2RlOwpAQCAtMzM2LDgg KzMzNiw4IEBAIGludCBmZl93bXYyX2RlY29kZV9zZWNvbmRhcnlfcGljdHVyZV9oZWFkZXIoTXBl Z0VuY0NvbnRleHQgKnMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAqIHMt PnFzY2FsZSwgKHMtPnFzY2FsZSAtIDEpIHwgMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzLT5sb29wX2ZpbHRlciwgcy0+bG93X2RlbGF5KTsKIAotICAgICAgICBmZl9lcl9h ZGRfc2xpY2UoJnctPnMuZXIsIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAody0+cy5t Yl94ID4+IDEpIC0gMSwgKHctPnMubWJfeSA+PiAxKSAtIDEsCisgICAgICAgIGZmX2VyX2FkZF9z bGljZSgmcy0+ZXIsIDAsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAocy0+bWJfeCA+PiAx KSAtIDEsIChzLT5tYl95ID4+IDEpIC0gMSwKICAgICAgICAgICAgICAgICAgICAgICAgIEVSX01C X0VORCk7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KQEAgLTM0Nyw3ICszNDcsNyBAQCBpbnQg ZmZfd212Ml9kZWNvZGVfc2Vjb25kYXJ5X3BpY3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpz KQogCiBzdGF0aWMgaW5saW5lIHZvaWQgd212Ml9kZWNvZGVfbW90aW9uKFdNVjJEZWNDb250ZXh0 ICp3LCBpbnQgKm14X3B0ciwgaW50ICpteV9wdHIpCiB7Ci0gICAgTXBlZ0VuY0NvbnRleHQgKmNv bnN0IHMgPSAmdy0+czsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZ3LT5tcy5tOwog CiAgICAgZmZfbXNtcGVnNF9kZWNvZGVfbW90aW9uKHMsIG14X3B0ciwgbXlfcHRyKTsKIApAQCAt MzU5LDcgKzM1OSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCB3bXYyX2RlY29kZV9tb3Rpb24oV01W MkRlY0NvbnRleHQgKncsIGludCAqbXhfcHRyLCBpbnQgKm15X3B0CiAKIHN0YXRpYyBpbnQxNl90 ICp3bXYyX3ByZWRfbW90aW9uKFdNVjJEZWNDb250ZXh0ICp3LCBpbnQgKnB4LCBpbnQgKnB5KQog ewotICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJnctPnM7CisgICAgTXBlZ0VuY0NvbnRl eHQgKmNvbnN0IHMgPSAmdy0+bXMubTsKICAgICBpbnQgeHksIHdyYXAsIGRpZmYsIHR5cGU7CiAg ICAgaW50MTZfdCAqQSwgKkIsICpDLCAqbW90X3ZhbDsKIApAQCAtNDA1LDcgKzQwNSw3IEBAIHN0 YXRpYyBpbnQxNl90ICp3bXYyX3ByZWRfbW90aW9uKFdNVjJEZWNDb250ZXh0ICp3LCBpbnQgKnB4 LCBpbnQgKnB5KQogc3RhdGljIGlubGluZSBpbnQgd212Ml9kZWNvZGVfaW50ZXJfYmxvY2soV01W MkRlY0NvbnRleHQgKncsIGludDE2X3QgKmJsb2NrLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IG4sIGludCBjYnApCiB7Ci0gICAgTXBlZ0VuY0NvbnRleHQg KmNvbnN0IHMgPSAmdy0+czsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZ3LT5tcy5t OwogICAgIHN0YXRpYyBjb25zdCBpbnQgc3ViX2NicF90YWJsZVszXSA9IHsgMiwgMywgMSB9Owog ICAgIGludCBzdWJfY2JwLCByZXQ7CiAKQEAgLTU2MSw3ICs1NjEsNyBAQCBzdGF0aWMgaW50IHdt djJfZGVjb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzZdWzY0XSkKIHN0 YXRpYyBhdl9jb2xkIGludCB3bXYyX2RlY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkK IHsKICAgICBXTVYyRGVjQ29udGV4dCAqY29uc3QgdyA9IGF2Y3R4LT5wcml2X2RhdGE7Ci0gICAg TXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmdy0+czsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29u c3QgcyA9ICZ3LT5tcy5tOwogICAgIGludCByZXQ7CiAKICAgICBzLT5wcml2YXRlX2N0eCA9ICZ3 LT5jb21tb247CkBAIC01NzUsOCArNTc1LDggQEAgc3RhdGljIGF2X2NvbGQgaW50IHdtdjJfZGVj b2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogCiAgICAgZGVjb2RlX2V4dF9oZWFkZXIo dyk7CiAKLSAgICByZXR1cm4gZmZfaW50cmF4OF9jb21tb25faW5pdChhdmN0eCwgJnctPng4LCB3 LT5zLmJsb2NrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHctPnMubWJfd2lk dGgsIHctPnMubWJfaGVpZ2h0KTsKKyAgICByZXR1cm4gZmZfaW50cmF4OF9jb21tb25faW5pdChh dmN0eCwgJnctPng4LCBzLT5ibG9jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzLT5tYl93aWR0aCwgcy0+bWJfaGVpZ2h0KTsKIH0KIAogc3RhdGljIGF2X2NvbGQgaW50IHdt djJfZGVjb2RlX2VuZChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0043-avcodec-mpegvideo-Move-bit_rate-field-to-MSMP4DecCon.patch" Content-Disposition: attachment; filename*0="0043-avcodec-mpegvideo-Move-bit_rate-field-to-MSMP4DecCon.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAwOGEwNmE5ZDZkMWMzYzIwODlhMzJjMGI0NjQ1MTc2MjY2Y2E2NjMwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwNzo1OTo0NyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDMvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIGJpdF9yYXRlIGZpZWxk IHRvCiBNU01QNERlY0NvbnRleHQKCkFsc28gbWFrZSBpdCBhbiBpbnQgYXMgdGhhdCBpcyBhbGwg TVNNUDQgbmVlZHMuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMu cmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlby5oICB8ICAx IC0KIGxpYmF2Y29kZWMvbXNtcGVnNGRlYy5jIHwgMjEgKysrKysrKysrKysrKystLS0tLS0tCiBs aWJhdmNvZGVjL21zbXBlZzRkZWMuaCB8ICAxICsKIGxpYmF2Y29kZWMvd212MmRlYy5jICAgIHwg IDggKysrKy0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW8uaCBiL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvLmgKaW5kZXggZWQ5MjI0ZDJmZS4uMTM2YjliMThhNyAxMDA2NDQKLS0tIGEvbGli YXZjb2RlYy9tcGVndmlkZW8uaAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRlby5oCkBAIC05NSw3 ICs5NSw2IEBAIHR5cGVkZWYgc3RydWN0IE1wZWdFbmNDb250ZXh0IHsKICAgICB2b2lkICpwcml2 YXRlX2N0eDsKICAgICAvKiB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnMgbXVzdCBiZSBpbml0aWFs aXplZCBiZWZvcmUgZW5jb2RpbmcgKi8KICAgICBpbnQgd2lkdGgsIGhlaWdodDsvLy88IHBpY3R1 cmUgc2l6ZS4gbXVzdCBiZSBhIG11bHRpcGxlIG9mIDE2Ci0gICAgaW50NjRfdCBiaXRfcmF0ZTsg Ly8vPCB3YW50ZWQgYml0IHJhdGUKICAgICBlbnVtIE91dHB1dEZvcm1hdCBvdXRfZm9ybWF0OyAv Ly88IG91dHB1dCBmb3JtYXQKICAgICBpbnQgaDI2M19wcmVkOyAgICAvLy88IHVzZSBNUEVHLTQv SC4yNjMgYWMvZGMgcHJlZGljdGlvbnMKICAgICBpbnQgcGJfZnJhbWU7ICAgICAvLy88IFBCLWZy YW1lIG1vZGUgKDAgPSBub25lLCAxID0gYmFzZSwgMiA9IGltcHJvdmVkKQpkaWZmIC0tZ2l0IGEv bGliYXZjb2RlYy9tc21wZWc0ZGVjLmMgYi9saWJhdmNvZGVjL21zbXBlZzRkZWMuYwppbmRleCBi N2ZmNjEyNmIxLi5hYWMxMjg4MmQ3IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21zbXBlZzRkZWMu YworKysgYi9saWJhdmNvZGVjL21zbXBlZzRkZWMuYwpAQCAtMzg5LDYgKzM4OSw3IEBAIGF2X2Nv bGQgaW50IGZmX21zbXBlZzRfZGVjb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogCiBp bnQgZmZfbXNtcGVnNF9kZWNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKiBzKQog eworICAgIE1TTVA0RGVjQ29udGV4dCAqY29uc3QgbXMgPSBtcHZfdG9fbXNtcGVnNChzKTsKICAg ICBpbnQgY29kZTsKIAogICAgIC8vIGF0IG1pbmltdW0gb25lIGJpdCBwZXIgbWFjcm9ibG9jayBp cyByZXF1aXJlZCBhdCBsZWFzdCBpbiBhIHZhbGlkIGZyYW1lLApAQCAtNDU3LDggKzQ1OCwxMCBA QCBpbnQgZmZfbXNtcGVnNF9kZWNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKiBz KQogICAgICAgICBjYXNlIE1TTVA0X1dNVjE6CiAgICAgICAgICAgICBmZl9tc21wZWc0X2RlY29k ZV9leHRfaGVhZGVyKHMsICgyKzUrNSsxNys3KS84KTsKIAotICAgICAgICAgICAgaWYocy0+Yml0 X3JhdGUgPiBNQkFDX0JJVFJBVEUpIHMtPnBlcl9tYl9ybF90YWJsZT0gZ2V0X2JpdHMxKCZzLT5n Yik7Ci0gICAgICAgICAgICBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+cGVyX21i X3JsX3RhYmxlPSAwOworICAgICAgICAgICAgaWYgKG1zLT5iaXRfcmF0ZSA+IE1CQUNfQklUUkFU RSkKKyAgICAgICAgICAgICAgICBzLT5wZXJfbWJfcmxfdGFibGUgPSBnZXRfYml0czEoJnMtPmdi KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBzLT5wZXJfbWJfcmxfdGFibGUg PSAwOwogCiAgICAgICAgICAgICBpZighcy0+cGVyX21iX3JsX3RhYmxlKXsKICAgICAgICAgICAg ICAgICBzLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSBkZWNvZGUwMTIoJnMtPmdiKTsKQEAgLTUw Myw4ICs1MDYsMTAgQEAgaW50IGZmX21zbXBlZzRfZGVjb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdF bmNDb250ZXh0ICogcykKICAgICAgICAgY2FzZSBNU01QNF9XTVYxOgogICAgICAgICAgICAgcy0+ dXNlX3NraXBfbWJfY29kZSA9IGdldF9iaXRzMSgmcy0+Z2IpOwogCi0gICAgICAgICAgICBpZihz LT5iaXRfcmF0ZSA+IE1CQUNfQklUUkFURSkgcy0+cGVyX21iX3JsX3RhYmxlPSBnZXRfYml0czEo JnMtPmdiKTsKLSAgICAgICAgICAgIGVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5w ZXJfbWJfcmxfdGFibGU9IDA7CisgICAgICAgICAgICBpZiAobXMtPmJpdF9yYXRlID4gTUJBQ19C SVRSQVRFKQorICAgICAgICAgICAgICAgIHMtPnBlcl9tYl9ybF90YWJsZSA9IGdldF9iaXRzMSgm cy0+Z2IpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHMtPnBlcl9tYl9ybF90 YWJsZSA9IDA7CiAKICAgICAgICAgICAgIGlmKCFzLT5wZXJfbWJfcmxfdGFibGUpewogICAgICAg ICAgICAgICAgIHMtPnJsX3RhYmxlX2luZGV4ID0gZGVjb2RlMDEyKCZzLT5nYik7CkBAIC01MTQs NyArNTE5LDggQEAgaW50IGZmX21zbXBlZzRfZGVjb2RlX3BpY3R1cmVfaGVhZGVyKE1wZWdFbmND b250ZXh0ICogcykKICAgICAgICAgICAgIHMtPmRjX3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMxKCZz LT5nYik7CiAKICAgICAgICAgICAgIHMtPm12X3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMxKCZzLT5n Yik7Ci0gICAgICAgICAgICBzLT5pbnRlcl9pbnRyYV9wcmVkPSAocy0+d2lkdGgqcy0+aGVpZ2h0 IDwgMzIwKjI0MCAmJiBzLT5iaXRfcmF0ZTw9SUlfQklUUkFURSk7CisgICAgICAgICAgICBzLT5p bnRlcl9pbnRyYV9wcmVkID0gcy0+d2lkdGgqcy0+aGVpZ2h0IDwgMzIwKjI0MCAmJgorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zLT5iaXRfcmF0ZSA8PSBJSV9CSVRSQVRFOwog ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIApAQCAtNTM0LDcgKzU0MCw3IEBAIGludCBm Zl9tc21wZWc0X2RlY29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqIHMpCiAgICAg ICAgICAgICBzLT5ub19yb3VuZGluZyA9IDA7CiAgICAgICAgIH0KICAgICB9Ci0gICAgZmZfZGxv ZyhzLT5hdmN0eCwgIiVkICUiUFJJZDY0IiAlZCAlZCAlZFxuIiwgcy0+cGljdF90eXBlLCBzLT5i aXRfcmF0ZSwKKyAgICBmZl9kbG9nKHMtPmF2Y3R4LCAiJWQgJWQgJWQgJWQgJWRcbiIsIHMtPnBp Y3RfdHlwZSwgbXMtPmJpdF9yYXRlLAogICAgICAgICAgICAgcy0+aW50ZXJfaW50cmFfcHJlZCwg cy0+d2lkdGgsIHMtPmhlaWdodCk7CiAKICAgICBzLT5lc2MzX2xldmVsX2xlbmd0aD0gMDsKQEAg LTU0NSwxMyArNTUxLDE0IEBAIGludCBmZl9tc21wZWc0X2RlY29kZV9waWN0dXJlX2hlYWRlcihN cGVnRW5jQ29udGV4dCAqIHMpCiAKIGludCBmZl9tc21wZWc0X2RlY29kZV9leHRfaGVhZGVyKE1w ZWdFbmNDb250ZXh0ICogcywgaW50IGJ1Zl9zaXplKQogeworICAgIE1TTVA0RGVjQ29udGV4dCAq Y29uc3QgbXMgPSBtcHZfdG9fbXNtcGVnNChzKTsKICAgICBpbnQgbGVmdD0gYnVmX3NpemUqOCAt IGdldF9iaXRzX2NvdW50KCZzLT5nYik7CiAgICAgaW50IGxlbmd0aCA9IHMtPm1zbXBlZzRfdmVy c2lvbiA+PSBNU01QNF9WMyA/IDE3IDogMTY7CiAgICAgLyogdGhlIGFsdF9iaXRzdHJlYW0gcmVh ZGVyIGNvdWxkIHJlYWQgb3ZlciB0aGUgZW5kIHNvIHdlIG5lZWQgdG8gY2hlY2sgaXQgKi8KICAg ICBpZihsZWZ0Pj1sZW5ndGggJiYgbGVmdDxsZW5ndGgrOCkKICAgICB7CiAgICAgICAgIHNraXBf Yml0cygmcy0+Z2IsIDUpOyAvKiBmcHMgKi8KLSAgICAgICAgcy0+Yml0X3JhdGU9IGdldF9iaXRz KCZzLT5nYiwgMTEpKjEwMjQ7CisgICAgICAgIG1zLT5iaXRfcmF0ZSA9IGdldF9iaXRzKCZzLT5n YiwgMTEpICogMTAyNDsKICAgICAgICAgaWYgKHMtPm1zbXBlZzRfdmVyc2lvbiA+PSBNU01QNF9W MykKICAgICAgICAgICAgIHMtPmZsaXBmbG9wX3JvdW5kaW5nPSBnZXRfYml0czEoJnMtPmdiKTsK ICAgICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tc21wZWc0ZGVjLmggYi9saWJh dmNvZGVjL21zbXBlZzRkZWMuaAppbmRleCBkMDI0Njc0ZjBkLi40N2M0NDk1ZjFkIDEwMDY0NAot LS0gYS9saWJhdmNvZGVjL21zbXBlZzRkZWMuaAorKysgYi9saWJhdmNvZGVjL21zbXBlZzRkZWMu aApAQCAtMzAsNiArMzAsNyBAQAogCiB0eXBlZGVmIHN0cnVjdCBNU01QNERlY0NvbnRleHQgewog ICAgIE1wZWdFbmNDb250ZXh0IG07CisgICAgaW50IGJpdF9yYXRlOwogfSBNU01QNERlY0NvbnRl eHQ7CiAKIHN0YXRpYyBpbmxpbmUgTVNNUDREZWNDb250ZXh0ICptcHZfdG9fbXNtcGVnNChNcGVn RW5jQ29udGV4dCAqcykKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvd212MmRlYy5jIGIvbGliYXZj b2RlYy93bXYyZGVjLmMKaW5kZXggNWFiNjE5YzJjYS4uMDJjM2RjMjUzNSAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy93bXYyZGVjLmMKKysrIGIvbGliYXZjb2RlYy93bXYyZGVjLmMKQEAgLTE3Nyw3 ICsxNzcsNyBAQCBzdGF0aWMgaW50IGRlY29kZV9leHRfaGVhZGVyKFdNVjJEZWNDb250ZXh0ICp3 KQogICAgIGluaXRfZ2V0X2JpdHMoJmdiLCBzLT5hdmN0eC0+ZXh0cmFkYXRhLCAzMik7CiAKICAg ICBmcHMgICAgICAgICAgICAgICAgID0gZ2V0X2JpdHMoJmdiLCA1KTsKLSAgICBzLT5iaXRfcmF0 ZSAgICAgICAgID0gZ2V0X2JpdHMoJmdiLCAxMSkgKiAxMDI0OworICAgIHctPm1zLmJpdF9yYXRl ICAgICAgPSBnZXRfYml0cygmZ2IsIDExKSAqIDEwMjQ7CiAgICAgdy0+bXNwZWxfYml0ICAgICAg ICA9IGdldF9iaXRzMSgmZ2IpOwogICAgIHMtPmxvb3BfZmlsdGVyICAgICAgPSBnZXRfYml0czEo JmdiKTsKICAgICB3LT5hYnRfZmxhZyAgICAgICAgID0gZ2V0X2JpdHMxKCZnYik7CkBAIC0xOTMs MTAgKzE5MywxMCBAQCBzdGF0aWMgaW50IGRlY29kZV9leHRfaGVhZGVyKFdNVjJEZWNDb250ZXh0 ICp3KQogCiAgICAgaWYgKHMtPmF2Y3R4LT5kZWJ1ZyAmIEZGX0RFQlVHX1BJQ1RfSU5GTykKICAg ICAgICAgYXZfbG9nKHMtPmF2Y3R4LCBBVl9MT0dfREVCVUcsCi0gICAgICAgICAgICAgICAiZnBz OiVkLCBicjolIlBSSWQ2NCIsIHFwYml0OiVkLCBhYnRfZmxhZzolZCwgal90eXBlX2JpdDolZCwg IgorICAgICAgICAgICAgICAgImZwczolZCwgYnI6JWQsIHFwYml0OiVkLCBhYnRfZmxhZzolZCwg al90eXBlX2JpdDolZCwgIgogICAgICAgICAgICAgICAgInRsX212X2ZsYWc6JWQsIG1icmxfYml0 OiVkLCBjb2RlOiVkLCBsb29wX2ZpbHRlcjolZCwgIgogICAgICAgICAgICAgICAgInNsaWNlczol ZFxuIiwKLSAgICAgICAgICAgICAgIGZwcywgcy0+Yml0X3JhdGUsIHctPm1zcGVsX2JpdCwgdy0+ YWJ0X2ZsYWcsIHctPmpfdHlwZV9iaXQsCisgICAgICAgICAgICAgICBmcHMsIHctPm1zLmJpdF9y YXRlLCB3LT5tc3BlbF9iaXQsIHctPmFidF9mbGFnLCB3LT5qX3R5cGVfYml0LAogICAgICAgICAg ICAgICAgdy0+dG9wX2xlZnRfbXZfZmxhZywgdy0+cGVyX21iX3JsX2JpdCwgY29kZSwgcy0+bG9v cF9maWx0ZXIsCiAgICAgICAgICAgICAgICBjb2RlKTsKICAgICByZXR1cm4gMDsKQEAgLTMxMyw3 ICszMTMsNyBAQCBpbnQgZmZfd212Ml9kZWNvZGVfc2Vjb25kYXJ5X3BpY3R1cmVfaGVhZGVyKE1w ZWdFbmNDb250ZXh0ICpzKQogICAgICAgICBzLT5kY190YWJsZV9pbmRleCAgID0gZ2V0X2JpdHMx KCZzLT5nYik7CiAgICAgICAgIHMtPm12X3RhYmxlX2luZGV4ICAgPSBnZXRfYml0czEoJnMtPmdi KTsKIAotICAgICAgICBzLT5pbnRlcl9pbnRyYV9wcmVkID0gMDsgLy8gKHMtPndpZHRoICogcy0+ aGVpZ2h0IDwgMzIwICogMjQwICYmIHMtPmJpdF9yYXRlIDw9IElJX0JJVFJBVEUpOworICAgICAg ICBzLT5pbnRlcl9pbnRyYV9wcmVkID0gMDsgLy8gKHMtPndpZHRoICogcy0+aGVpZ2h0IDwgMzIw ICogMjQwICYmIHctPm1zLmJpdF9yYXRlIDw9IElJX0JJVFJBVEUpOwogICAgICAgICBzLT5ub19y b3VuZGluZyAgICAgXj0gMTsKIAogICAgICAgICBpZiAocy0+YXZjdHgtPmRlYnVnICYgRkZfREVC VUdfUElDVF9JTkZPKSB7Ci0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0044-avcodec-msmpeg4enc-Use-LUT-to-write-motion-vectors.patch" Content-Disposition: attachment; filename*0="0044-avcodec-msmpeg4enc-Use-LUT-to-write-motion-vectors.patc"; filename*1="h" Content-Transfer-Encoding: base64 RnJvbSBkNThiMjFlMWMxODA1MDQyODUwNWQ2ZjRlODQ5MjRiMzA3MTIxNDM5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAwODoyNToyNCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDQvNzddIGF2Y29kZWMvbXNtcGVnNGVuYzogVXNlIExVVCB0byB3cml0ZSBt b3Rpb24gdmVjdG9ycwoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFz LnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tc21wZWc0ZGF0YS5oIHwg IDEgLQogbGliYXZjb2RlYy9tc21wZWc0ZW5jLmMgIHwgNDMgKysrKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCAy NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRkYXRhLmggYi9s aWJhdmNvZGVjL21zbXBlZzRkYXRhLmgKaW5kZXggYWE0Y2E4NmEwNS4uNDkyMTU0OGQwYyAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0ZGF0YS5oCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVn NGRhdGEuaApAQCAtNDMsNyArNDMsNiBAQCB0eXBlZGVmIHN0cnVjdCBNVlRhYmxlIHsKICAgICBj b25zdCB1aW50OF90ICp0YWJsZV9tdl9iaXRzOwogICAgIGNvbnN0IHVpbnQ4X3QgKnRhYmxlX212 eDsKICAgICBjb25zdCB1aW50OF90ICp0YWJsZV9tdnk7Ci0gICAgdWludDE2X3QgKnRhYmxlX212 X2luZGV4OyAvKiBlbmNvZGluZzogY29udmVydCBtdiB0byBpbmRleCBpbiB0YWJsZV9tdiAqLwog ICAgIGNvbnN0IFZMQ0VsZW0gKnZsYzsgICAgICAgLyogZGVjb2Rpbmc6IHZsYyAqLwogfSBNVlRh YmxlOwogCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRlbmMuYyBiL2xpYmF2Y29kZWMv bXNtcGVnNGVuYy5jCmluZGV4IGU1NTAxZTVlMzIuLmI1ZGE5OGYwM2IgMTAwNjQ0Ci0tLSBhL2xp YmF2Y29kZWMvbXNtcGVnNGVuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCkBAIC01 MCwyMSArNTAsMjcgQEAKIAogc3RhdGljIHVpbnQ4X3QgcmxfbGVuZ3RoW05CX1JMX1RBQkxFU11b TUFYX0xFVkVMKzFdW01BWF9SVU4rMV1bMl07CiAKKy8vIFRoZSBsb3dlc3QgOCBiaXRzIG9mIGVh Y2ggZW50cnkgYXJlIGxlbmd0aCwgdGhlIG90aGVyIGJpdHMgYXJlIHRoZSBjb2RlLgorLy8gVGhl IGluZGV4IG9mIHRoZSAobXgsIG15KSBlbnRyeSBpcyAobXggKiA2NCkgKyBteS4KK3N0YXRpYyB1 aW50MzJfdCBtdl92ZWN0b3JfdGFibGVzWzJdWzQwOTZdOworCiAvKiBidWlsZCB0aGUgdGFibGUg d2hpY2ggYXNzb2NpYXRlIGEgKHgseSkgbW90aW9uIHZlY3RvciB0byBhIHZsYyAqLwotc3RhdGlj IGF2X2NvbGQgdm9pZCBpbml0X212X3RhYmxlKE1WVGFibGUgKnRhYiwgdWludDE2X3QgdGFibGVf bXZfaW5kZXhbNDA5Nl0pCitzdGF0aWMgYXZfY29sZCB2b2lkIGluaXRfbXZfdGFibGUoY29uc3Qg TVZUYWJsZSAqdGFiLCB1aW50MzJfdCBtdl92ZWN0b3JfdGFibGVbNDA5Nl0sCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgZXNjYXBlX2NvZGUsIGludCBlc2NhcGVf bGVuZ3RoKQogewogICAgIGludCBpLCB4LCB5OwogCi0gICAgdGFiLT50YWJsZV9tdl9pbmRleCA9 IHRhYmxlX212X2luZGV4OwotCi0gICAgLyogbWFyayBhbGwgZW50cmllcyBhcyBub3QgdXNlZCAq LwotICAgIGZvcihpPTA7aTw0MDk2O2krKykKLSAgICAgICAgdGFiLT50YWJsZV9tdl9pbmRleFtp XSA9IE1TTVBFRzRfTVZfVEFCTEVTX05CX0VMRU1TOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwg NDA5NjsgaSsrKSB7CisgICAgICAgIC8vIEluaXRpYWxpemUgdG8gdGhlIHRhYmxlIHRvICJlc2Nh cGVkIi4gVGhpcyBjb2RlIGlzIGVxdWl2YWxlbnQgdG8KKyAgICAgICAgLy8gdGhlIGZvbGxvd2lu ZyBkb3VibGUgbG9vcCAod2l0aCB4IGFuZCB5IHJhbmdpbmcgb3ZlciAwLi42Myk6CisgICAgICAg IC8vIHRhYlt4ICogNjQgKyB5XSA9IChlc2NfY29kZSA8PCAyMCkgfCAoeCA8PCAxNCkgfCAoeSA8 PCA4KSB8IGVzY19sZW5ndGgKKyAgICAgICAgbXZfdmVjdG9yX3RhYmxlW2ldID0gKGVzY2FwZV9j b2RlIDw8IDIwKSB8IChpIDw8IDgpIHwgZXNjYXBlX2xlbmd0aDsKKyAgICB9CiAKICAgICBmb3Ig KGkgPSAwOyBpIDwgTVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVM7IGkrKykgewogICAgICAgICB4 ID0gdGFiLT50YWJsZV9tdnhbaV07CiAgICAgICAgIHkgPSB0YWItPnRhYmxlX212eVtpXTsKLSAg ICAgICAgdGFiLT50YWJsZV9tdl9pbmRleFsoeCA8PCA2KSB8IHldID0gaTsKKyAgICAgICAgbXZf dmVjdG9yX3RhYmxlWyh4IDw8IDYpIHwgeV0gPSAodGFiLT50YWJsZV9tdl9jb2RlW2ldIDw8IDgp IHwgdGFiLT50YWJsZV9tdl9iaXRzW2ldOwogICAgIH0KIH0KIApAQCAtMTIyLDkgKzEyOCw4IEBA IHN0YXRpYyBpbnQgZ2V0X3NpemVfb2ZfY29kZShjb25zdCBSTFRhYmxlICpybCwgaW50IGxhc3Qs IGludCBydW4sCiAKIHN0YXRpYyBhdl9jb2xkIHZvaWQgbXNtcGVnNF9lbmNvZGVfaW5pdF9zdGF0 aWModm9pZCkKIHsKLSAgICBzdGF0aWMgdWludDE2X3QgbXZfaW5kZXhfdGFibGVzWzJdWzQwOTZd OwotICAgIGluaXRfbXZfdGFibGUoJmZmX212X3RhYmxlc1swXSwgbXZfaW5kZXhfdGFibGVzWzBd KTsKLSAgICBpbml0X212X3RhYmxlKCZmZl9tdl90YWJsZXNbMV0sIG12X2luZGV4X3RhYmxlc1sx XSk7CisgICAgaW5pdF9tdl90YWJsZSgmZmZfbXZfdGFibGVzWzBdLCBtdl92ZWN0b3JfdGFibGVz WzBdLCAweDAwMDAsIDggKyAxMik7CisgICAgaW5pdF9tdl90YWJsZSgmZmZfbXZfdGFibGVzWzFd LCBtdl92ZWN0b3JfdGFibGVzWzFdLCAweDAwMGIsIDQgKyAxMik7CiAKICAgICBmb3IgKGludCBp ID0gMDsgaSA8IE5CX1JMX1RBQkxFUzsgaSsrKSB7CiAgICAgICAgIGZvciAoaW50IGxldmVsID0g MTsgbGV2ZWwgPD0gTUFYX0xFVkVMOyBsZXZlbCsrKSB7CkBAIC0zMDAsOCArMzA1LDggQEAgRkZf RU5BQkxFX0RFUFJFQ0FUSU9OX1dBUk5JTkdTCiB2b2lkIGZmX21zbXBlZzRfZW5jb2RlX21vdGlv bihNcGVnRW5jQ29udGV4dCAqIHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg aW50IG14LCBpbnQgbXkpCiB7Ci0gICAgaW50IGNvZGU7Ci0gICAgTVZUYWJsZSAqbXY7CisgICAg Y29uc3QgdWludDMyX3QgKmNvbnN0IG12X3ZlY3Rvcl90YWJsZSA9IG12X3ZlY3Rvcl90YWJsZXNb cy0+bXZfdGFibGVfaW5kZXhdOworICAgIHVpbnQzMl90IGNvZGU7CiAKICAgICAvKiBtb2R1bG8g ZW5jb2RpbmcgKi8KICAgICAvKiBXQVJOSU5HIDogeW91IGNhbm5vdCByZWFjaCBhbGwgdGhlIE1W cyBldmVuIHdpdGggdGhlIG1vZHVsbwpAQCAtMzE3LDE3ICszMjIsOSBAQCB2b2lkIGZmX21zbXBl ZzRfZW5jb2RlX21vdGlvbihNcGVnRW5jQ29udGV4dCAqIHMsCiAKICAgICBteCArPSAzMjsKICAg ICBteSArPSAzMjsKLSAgICBtdiA9ICZmZl9tdl90YWJsZXNbcy0+bXZfdGFibGVfaW5kZXhdOwot Ci0gICAgY29kZSA9IG12LT50YWJsZV9tdl9pbmRleFsobXggPDwgNikgfCBteV07Ci0gICAgcHV0 X2JpdHMoJnMtPnBiLAotICAgICAgICAgICAgIG12LT50YWJsZV9tdl9iaXRzW2NvZGVdLAotICAg ICAgICAgICAgIG12LT50YWJsZV9tdl9jb2RlW2NvZGVdKTsKLSAgICBpZiAoY29kZSA9PSBNU01Q RUc0X01WX1RBQkxFU19OQl9FTEVNUykgewotICAgICAgICAvKiBlc2NhcGUgOiBjb2RlIGxpdGVy YWxseSAqLwotICAgICAgICBwdXRfYml0cygmcy0+cGIsIDYsIG14KTsKLSAgICAgICAgcHV0X2Jp dHMoJnMtPnBiLCA2LCBteSk7Ci0gICAgfQorCisgICAgY29kZSA9IG12X3ZlY3Rvcl90YWJsZVso bXggPDwgNikgfCBteV07CisgICAgcHV0X2JpdHMoJnMtPnBiLCBjb2RlICYgMHhmZiwgY29kZSA+ PiA4KTsKIH0KIAogdm9pZCBmZl9tc21wZWc0X2hhbmRsZV9zbGljZXMoTXBlZ0VuY0NvbnRleHQg KnMpewotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0045-avcodec-msmpeg4dec-Avoid-lookups-when-decoding-motio.patch" Content-Disposition: attachment; filename*0="0045-avcodec-msmpeg4dec-Avoid-lookups-when-decoding-motio.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAxMzA3YjAxN2U1ZWNlMjk5MjEwMTBhMDY3NTA0ZjNiMGMyMDczNzhjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAxMDoyODowNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDUvNzddIGF2Y29kZWMvbXNtcGVnNGRlYzogQXZvaWQgbG9va3VwcyB3aGVu IGRlY29kaW5nIG1vdGlvbgogdmVjdG9yCgpVcCB1bnRpbCBub3csIHRoZSBkZWNvZGVyIHVzZXMg VkxDcyB0byBkZXRlcm1pbmUgd2hldGhlcgp0aGlzIGlzIGFuIGVzY2FwZSBlbGVtZW50IG9yIGFu IGluZGV4IGluIHR3byBzZXBhcmF0ZSB0YWJsZXMKZ2l2aW5nIHRoZSB4IGFuZCB5IGNvbXBvbmVu dHMgb2YgdGhlIG1vdGlvbiB2ZWN0b3IuCkdpdmVuIHRoYXQgYm90aCB0aGVzZSBjb21wb25lbnRz IGZpdCBpbnRvIGFuIGludDE2X3QgYW5kIHRoZXJlZm9yZQppbnRvIGEgVkxDRWxlbSdzIHN5bWJv bCBvbmUgY2FuIHNpbXBseSB1c2UgYSBzeW1ib2wgdGFibGUKdG8gYXZvaWQgdGhlIGxhdHRlciBs b29rdXBzLgoKVGhpcyBuZWNlc3NpdGF0ZWQgdG8gY29tYmluZSB0aGUgdHdvIHRhYmxlcyBmb3Ig eCBhbmQgeSBjb21wb25lbnRzLgpXaGlsZSBqdXN0IGF0IGl0LCBhbHNvIHN3aXRjaCB0byBmZl92 bGNfaW5pdF90YWJsZXNfZnJvbV9sZW5ndGhzKCkuClRoaXMgd2lsbCBhbGxvdyB0byBnZXQgcmlk IG9mIHRoZSBjb2RlIHRhYmxlcyAoYWJvdXQgNEtpQikgb25jZQp0aGUgZW5jb2RlciBoYXMgYmVl biBwb3J0ZWQsIHRvby4KClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVh cy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXNtcGVnNGRhdGEuYyB8 IDUxMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIGxpYmF2Y29kZWMv bXNtcGVnNGRhdGEuaCB8ICAgNyArLQogbGliYXZjb2RlYy9tc21wZWc0ZGVjLmMgIHwgIDQyICsr LS0KIGxpYmF2Y29kZWMvbXNtcGVnNGVuYy5jICB8ICAgMiArLQogNCBmaWxlcyBjaGFuZ2VkLCA1 MzYgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9tc21wZWc0ZGF0YS5jIGIvbGliYXZjb2RlYy9tc21wZWc0ZGF0YS5jCmluZGV4IDY1NTQ2ZGE2 NmUuLmFhYzc1YWJkN2MgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXNtcGVnNGRhdGEuYworKysg Yi9saWJhdmNvZGVjL21zbXBlZzRkYXRhLmMKQEAgLTQ4MSw2ICs0ODEsNTE1IEBAIFJMVGFibGUg ZmZfcmxfdGFibGVbTkJfUkxfVEFCTEVTXSA9IHsKIAogLyogbW90aW9uIHZlY3RvciB0YWJsZSAw ICovCiAKKyNkZWZpbmUgRShtdngsIG12eSkgKChtdnggPDwgOCkgfCBtdnkpCisjZGVmaW5lIEVT Q0FQRSAwCisKK2NvbnN0IHVpbnQxNl90IGZmX21zbXA0X212X3RhYmxlMFtNU01QRUc0X01WX1RB QkxFU19OQl9FTEVNU10gPSB7CisgICAgRVNDQVBFLCAgICBFKDMxLCAzOSksIEUoMzgsIDMxKSwg RSgyNCwgMzIpLCBFKDIzLCAzMCksIEUoMzQsIDIwKSwKKyAgICBFKDMzLCAyMiksIEUoMjEsIDI5 KSwgRSgyOCwgMzQpLCBFKDMzLCAyNCksIEUoNDksIDMyKSwgRSgyNywgNDEpLAorICAgIEUoMzIs ICAyKSwgRSg0MCwgMzMpLCBFKDM0LCAzOSksIEUoMzcsIDI1KSwgRSgyOSwgMjYpLCBFKDM4LCAy OCksCisgICAgRSg0MywgMzEpLCBFKDM3LCAzMyksIEUoMzEsIDM1KSwgRSgzMiwgMzUpLCBFKDI1 LCAyOSksIEUoMjYsIDI4KSwKKyAgICBFKDMyLCA0MiksIEUoMzMsIDIzKSwgRSg0MiwgMzEpLCBF KDM1LCAzNiksIEUoMjcsIDMxKSwgRSgzNiwgMzApLAorICAgIEUoMjEsIDMyKSwgRSgyMywgMzIp LCBFKDQzLCAzMiksIEUoMzYsIDMyKSwgRSgzOSwgMjkpLCBFKDM4LCAzMCksCisgICAgRSgzNiwg MzQpLCBFKDM0LCAzNiksIEUoMTksIDMwKSwgRSgyMCwgMzgpLCBFKDQxLCA0MSksIEUoMjYsIDQ0 KSwKKyAgICBFKDQxLCA1MyksIEUoNDIsIDExKSwgRSg0MiwgMjApLCBFKDQyLCAyNSksIEUoMjYs IDQ1KSwgRSgyNiwgNDYpLAorICAgIEUoMjYsIDQ3KSwgRSgyNiwgNDgpLCBFKCAxLCAzOSksIEUo MjYsIDUyKSwgRSgzNywgNDYpLCBFKDM3LCA0OSksCisgICAgRSgzNywgNjMpLCBFKDIzLCA1NSks IEUoMzQsIDQ0KSwgRSg0MiwgMzgpLCBFKDI3LCAxMyksIEUoNDMsIDEzKSwKKyAgICBFKDM0LCA1 NyksIEUoMjcsIDIyKSwgRSgzMSwgNTEpLCBFKDI0LCAxNiksIEUoMzMsIDEyKSwgRSgxNiwgMjgp LAorICAgIEUoIDMsIDM1KSwgRSgzMSwgNTcpLCBFKDI0LCAyNSksIEUoMzEsIDMzKSwgRSgzMywg MzMpLCBFKDM0LCAzMiksCisgICAgRSgzMSwgMzQpLCBFKDM0LCAzMSksIEUoMzMsIDIwKSwgRSgy NCwgMjYpLCBFKCA0LCAyOCksIEUoNDQsIDI4KSwKKyAgICBFKDQ0LCAyOSksIEUoMTEsIDMyKSwg RSg0NCwgMzEpLCBFKDMxLCA2MiksIEUoMTMsIDM0KSwgRSgxMywgMzUpLAorICAgIEUoNDQsIDM1 KSwgRSg0NSwgMTkpLCBFKDEzLCA0OSksIEUoMjUsIDQ4KSwgRSgyMiwgMzkpLCBFKDM4LCA0MCks CisgICAgRSgyNiwgMTgpLCBFKDM4LCA0MyksIEUoMzgsIDQ2KSwgRSgzOSwgMTEpLCBFKDMyLCAg NiksIEUoMzAsIDQ4KSwKKyAgICBFKDM5LCAxOSksIEUoMzAsIDQ5KSwgRSgyMiwgNDEpLCBFKDMy LCAxMCksIEUoMjYsIDIzKSwgRSgzMCwgNTgpLAorICAgIEUoNDcsIDE3KSwgRSg0NywgMjEpLCBF KDQ3LCAyMyksIEUoMTksIDM0KSwgRSg0NywgMzApLCBFKDMwLCA2MCksCisgICAgRSgzMSwgIDAp LCBFKDM1LCA0NCksIEUoIDgsIDM0KSwgRSgyMywgMjYpLCBFKDQ3LCAzNyksIEUoNDcsIDQ2KSwK KyAgICBFKDI3LCA0MyksIEUoMzUsIDQ5KSwgRSg0NywgNTkpLCBFKDMxLCAgNCksIEUoNDgsIDM0 KSwgRSgzNSwgNTkpLAorICAgIEUoMTksIDM3KSwgRSgzNiwgMjIpLCBFKDQ5LCAyNSksIEUoNDks IDI4KSwgRSgzMywgNDYpLCBFKDMxLCAgNiksCisgICAgRSgzOSwgNDApLCBFKDI3LCA1OSksIEUo MzksIDQyKSwgRSg0OSwgMzYpLCBFKDQ5LCA2MSksIEUoNTAsIDI4KSwKKyAgICBFKDUwLCAzMCks IEUoNTAsIDMxKSwgRSgzOSwgNDMpLCBFKDMxLCAxMCksIEUoNTEsIDIyKSwgRSg1MSwgMjMpLAor ICAgIEUoMzksIDQ3KSwgRSgyOCwgMjApLCBFKDMzLCA1MiksIEUoMzMsIDU1KSwgRSgyMSwgMzYp LCBFKDQwLCAyNSksCisgICAgRSgzMSwgMTYpLCBFKDUyLCAgMSksIEUoNTMsIDExKSwgRSg0MCwg MjcpLCBFKDUzLCAyOSksIEUoIDksICA1KSwKKyAgICBFKDMzLCA2MyksIEUoMzEsIDE4KSwgRSg1 MywgNDEpLCBFKDU0LCAzMSksIEUoNTQsIDM0KSwgRSg1NCwgMzgpLAorICAgIEUoNTUsICAxKSwg RSg1NSwgIDUpLCBFKDM0LCAxMyksIEUoMTUsIDI4KSwgRSg1NiwgMzEpLCBFKDI1LCAxNyksCisg ICAgRSg1NiwgMzgpLCBFKDIxLCAzOSksIEUoMjEsIDQxKSwgRSg0MCwgMzYpLCBFKDQwLCAzNyks IEUoMjUsIDIyKSwKKyAgICBFKDQwLCAzOSksIEUoNTgsIDMzKSwgRSgzNiwgNDMpLCBFKCA1LCA0 MyksIEUoNDEsIDE1KSwgRSg0MSwgMTcpLAorICAgIEUoMTIsIDQ5KSwgRSg2MCwgMzApLCBFKDQx LCAyMSksIEUoNDEsIDIyKSwgRSgzNywgMjApLCBFKDIyLCAxMCksCisgICAgRSg2MSwgMTcpLCBF KDE4LCAyNSksIEUoMjksIDU0KSwgRSgyOSwgNTcpLCBFKDMwLCAgMyksIEUoNjEsIDM0KSwKKyAg ICBFKDMwLCAgOCksIEUoNjEsIDM2KSwgRSg2MiwgMjUpLCBFKDYyLCAzMSksIEUoMzAsIDE0KSwg RSgzMCwgMTUpLAorICAgIEUoNjMsIDE5KSwgRSgxOCwgMjkpLCBFKDEzLCAyNSksIEUoMzAsIDE4 KSwgRSg0NSwgMzApLCBFKCAxLCA2MyksCisgICAgRSgzNCwgMTYpLCBFKDMxLCA0MiksIEUoMjIs IDI4KSwgRSgzNSwgMTMpLCBFKDE1LCAzMyksIEUoNDYsIDMzKSwKKyAgICBFKDQ2LCAzNSksIEUo MzUsIDE5KSwgRSgzMSwgNDYpLCBFKDI4LCA0MyksIEUoMjksIDE3KSwgRSgyOSwgMTkpLAorICAg IEUoMjMsIDM2KSwgRSg0MSwgMzkpLCBFKDI3LCAyNCksIEUoMTQsIDMxKSwgRSg1MywgMzIpLCBF KDUzLCAzMyksCisgICAgRSgyNywgMjYpLCBFKDI0LCAyOCksIEUoMzIsIDYyKSwgRSg1NywgMzMp LCBFKDMyLCA2MyksIEUoMTcsIDMzKSwKKyAgICBFKDQyLCAzOSksIEUoMzcsIDE5KSwgRSgyOSwg NDkpLCBFKDMzLCAxNyksIEUoIDEsIDMxKSwgRSgyNSwgNDMpLAorICAgIEUoMzIsIDEzKSwgRSgz MiwgMTUpLCBFKDYzLCAyOSksIEUoMjYsIDI1KSwgRSg0MCwgMzUpLCBFKDIzLCAzNCksCisgICAg RSgyNywgMjUpLCBFKDIyLCAzMyksIEUoMjQsIDI5KSwgRSgyMiwgMzEpLCBFKDM5LCAzOSksIEUo NDMsIDM1KSwKKyAgICBFKDI3LCAzNiksIEUoMzcsIDI0KSwgRSggNiwgMzIpLCBFKDQyLCAzMCks IEUoMjQsIDMzKSwgRSg0MCwgMzEpLAorICAgIEUoMjgsIDM5KSwgRSgzMiwgIDEpLCBFKDMyLCA0 MSksIEUoNDEsIDMyKSwgRSgzNiwgMzEpLCBFKDI4LCAzMiksCisgICAgRSgzNSwgMzEpLCBFKDI5 LCAzMSksIEUoMzgsIDMyKSwgRSgyMywgMzEpLCBFKDI3LCAzMCksIEUoMzIsIDU5KSwKKyAgICBF KDMyLCAyMiksIEUoMzIsIDIxKSwgRSgzMCwgMzkpLCBFKDM1LCAyNSksIEUoMjYsIDM0KSwgRSgz NCwgMzgpLAorICAgIEUoMzAsIDI4KSwgRSg0NCwgMzMpLCBFKDM2LCAyMyksIEUoNDcsIDMzKSwg RSgyNiwgMjcpLCBFKDMwLCA0NCksCisgICAgRSgzMSwgNjApLCBFKDQxLCAzMCksIEUoMzksIDM2 KSwgRSgzMywgMTkpLCBFKDMzLCAyOSksIEUoMzIsIDM2KSwKKyAgICBFKDIyLCAzNCksIEUoNDUs IDMxKSwgRSgzNiwgMjQpLCBFKDMyLCAxNiksIEUoNDUsIDM1KSwgRSgxOSwgMzIpLAorICAgIEUo MzYsIDI3KSwgRSgzMiwgIDQpLCBFKDQzLCAzMyksIEUoNjAsIDMyKSwgRSgzNywgMzEpLCBFKDM1 LCAzMyksCisgICAgRSgzNSwgMzIpLCBFKDM0LCAyOSksIEUoMzMsIDI4KSwgRSgyNSwgMzMpLCBF KDI1LCAzNCksIEUoMjEsIDMzKSwKKyAgICBFKDM2LCAzNSksIEUoMzcsIDMyKSwgRSgyOSwgMzkp LCBFKDMxLCAyNCksIEUoMzAsIDQxKSwgRSgzMSwgIDMpLAorICAgIEUoNDEsIDM1KSwgRSgyMiwg MzIpLCBFKDMyLCAzOSksIEUoMzIsIDMwKSwgRSgzMywgMzIpLCBFKDMyLCAyOSksCisgICAgRSgz MywgMzUpLCBFKDMxLCAyOCksIEUoMjgsIDMwKSwgRSgyNiwgMzMpLCBFKDMxLCA0OSksIEUoMzks IDQxKSwKKyAgICBFKDIwLCAyOCksIEUoMjAsIDI5KSwgRSg0NCwgMzQpLCBFKDIzLCAzOCksIEUo MzMsICA3KSwgRSgzNCwgNjEpLAorICAgIEUoMjksIDI5KSwgRSgzMSwgMzgpLCBFKDM1LCAxMSks IEUoMzMsIDUwKSwgRSgzMywgMTMpLCBFKDI4LCA0MSksCisgICAgRSg0MSwgMTkpLCBFKDIzLCA0 NyksIEUoNDEsIDI1KSwgRSg0MSwgMjYpLCBFKDI5LCAxNSksIEUoMjUsIDQyKSwKKyAgICBFKDI2 LCA0MSksIEUoNDksIDI5KSwgRSgyOSwgNDUpLCBFKDI0LCAyNyksIEUoMzcsIDE3KSwgRSg0OSwg MzUpLAorICAgIEUoMzQsIDMzKSwgRSgzMCwgMzUpLCBFKDUwLCAzMiksIEUoNTEsIDI5KSwgRSg1 MSwgMzIpLCBFKDI2LCAyNCksCisgICAgRSgzOSwgMTMpLCBFKDI1LCAyNiksIEUoMjYsIDI2KSwg RSgxNSwgMzEpLCBFKDM5LCAyNCksIEUoMTgsIDMzKSwKKyAgICBFKDQyLCAyOCksIEUoMTcsIDMw KSwgRSggNCwgMzEpLCBFKDMxLCAxMSksIEUoMzIsIDQ1KSwgRSgzMiwgNDYpLAorICAgIEUoNjAs IDMzKSwgRSggMSwgMzMpLCBFKDQyLCAzNSksIEUoMzIsIDU3KSwgRSggMCwgMzIpLCBFKDEyLCAz MiksCisgICAgRSgxOSwgMzUpLCBFKDM1LCA0NSksIEUoMjIsIDM4KSwgRSgzMCwgMjEpLCBFKCA1 LCAzMyksIEUoIDUsIDMxKSwKKyAgICBFKDE3LCAzMSksIEUoMjksIDIxKSwgRSgyMiwgMzUpLCBF KDMxLCAgNSksIEUoMzEsIDE3KSwgRSg0MywgMjkpLAorICAgIEUoMzcsIDM4KSwgRSgyNywgMzgp LCBFKDMyLCAxOCksIEUoMzIsIDU4KSwgRSgzMiwgMTkpLCBFKDMzLCA0MyksCisgICAgRSgyOSwg NDEpLCBFKDMzLCA0MSksIEUoMzEsIDM3KSwgRSgzMCwgMzcpLCBFKDQxLCAzMyksIEUoIDcsIDMy KSwKKyAgICBFKDI4LCAzMSksIEUoMzQsIDI3KSwgRSgzMCwgMjcpLCBFKDM3LCAyOCksIEUoMjYs IDM2KSwgRSgzNCwgMzApLAorICAgIEUoMzEsIDI5KSwgRSgzMywgMzApLCBFKDI3LCAzMiksIEUo MzgsIDI5KSwgRSgzMCwgMjUpLCBFKDM2LCAyOCksCisgICAgRSgzNywgMzYpLCBFKDIxLCAzNCks IEUoMjMsIDM5KSwgRSgxOSwgNTMpLCBFKDM0LCA0MSksIEUoMzYsIDMzKSwKKyAgICBFKDMyLCAy OCksIEUoMjUsIDMyKSwgRSgyOSwgMzIpLCBFKDI5LCAzMyksIEUoMzMsIDI3KSwgRSgyOSwgMjcp LAorICAgIEUoNDMsIDMwKSwgRSgzNSwgNDEpLCBFKDI5LCA0MyksIEUoMjYsIDM5KSwgRSgyMiwg MjkpLCBFKDMyLCAgNyksCisgICAgRSgxOSwgMjkpLCBFKDMyLCAxNyksIEUoMjUsIDI4KSwgRSgz MSwgMTkpLCBFKDQxLCAyOCksIEUoNDksIDMxKSwKKyAgICBFKDI4LCAyNSksIEUoMzQsIDE5KSwg RSgyOCwgNDApLCBFKDM5LCAyNiksIEUoMzQsIDIxKSwgRSgxOSwgMzMpLAorICAgIEUoMzcsIDM5 KSwgRSgzOCwgMjMpLCBFKDI5LCA0MCksIEUoMjEsIDMwKSwgRSgzNiwgMzkpLCBFKDQyLCAzNCks CisgICAgRSgyNywgMjgpLCBFKDU5LCAzMyksIEUoMzgsIDMzKSwgRSgzNSwgMjgpLCBFKDMzLCAz NCksIEUoMzAsIDMyKSwKKyAgICBFKDMwLCAzNiksIEUoMjMsIDM1KSwgRSgzMywgMjEpLCBFKDM1 LCAyMyksIEUoMzEsIDIxKSwgRSgzMCwgMjYpLAorICAgIEUoNDEsIDMxKSwgRSgzOSwgMzIpLCBF KDMyLCAyNyksIEUoMjYsIDMwKSwgRSgzMSwgMjIpLCBFKDM3LCAzNyksCisgICAgRSgzOCwgMjcp LCBFKDM5LCAyNyksIEUoMzIsIDQzKSwgRSgyMywgMjkpLCBFKDMyLCA2MCksIEUoMjcsIDM5KSwK KyAgICBFKDI1LCAzNSksIEUoNjEsIDMyKSwgRSgzMCwgMzMpLCBFKDMwLCAzNCksIEUoMzQsIDI4 KSwgRSgzMywgMzYpLAorICAgIEUoMzcsIDI3KSwgRSgyMCwgMjIpLCBFKDIwLCAyNyksIEUoNDEs IDIwKSwgRSgxMywgMjkpLCBFKCAyLCAzMyksCisgICAgRSggNSwgNDEpLCBFKCA1LCA0MiksIEUo IDEsIDM1KSwgRSgzMiwgMjQpLCBFKDM0LCAyNCksIEUoIDUsIDYyKSwKKyAgICBFKDMyLCA1MCks IEUoIDYsIDI5KSwgRSgzMiwgNTMpLCBFKDM1LCA1MCksIEUoMjAsIDM1KSwgRSgzNSwgNTUpLAor ICAgIEUoMjcsIDQyKSwgRSgzNSwgNjEpLCBFKDM1LCA2MyksIEUoMzYsICA0KSwgRSgzNiwgIDcp LCBFKDEzLCA0MiksCisgICAgRSgzNiwgMjEpLCBFKDQxLCA0NiksIEUoNDEsIDQ3KSwgRSgzMywg MzcpLCBFKDI4LCAzMyksIEUoNDEsIDQ5KSwKKyAgICBFKCAzLCAyNyksIEUoMzAsIDQ2KSwgRSg0 MiwgMTcpLCBFKDI3LCA1NSksIEUoMjAsIDQxKSwgRSgzMCwgNTApLAorICAgIEUoMjcsIDYzKSwg RSgyOCwgIDQpLCBFKDMwLCA1NiksIEUoMjEsIDE4KSwgRSgzMywgIDgpLCBFKDMzLCAxMCksCisg ICAgRSgxNCwgMTgpLCBFKDI0LCA1MSksIEUoMzAsIDYzKSwgRSg0MiwgMzYpLCBFKDI0LCA1NSks IEUoMzMsIDE4KSwKKyAgICBFKDI1LCAgNSksIEUoNDIsIDU1KSwgRSg0MywgIDkpLCBFKDE0LCAy OSksIEUoNDMsIDE3KSwgRSg0MywgMjEpLAorICAgIEUoMTQsIDMwKSwgRSg0MywgMjcpLCBFKCA3 LCAgMSksIEUoMzYsIDU5KSwgRSgzNywgIDcpLCBFKDM3LCAxMSksCisgICAgRSgzNywgMTIpLCBF KDM3LCAxNSksIEUoIDcsICA1KSwgRSgxNCwgNDIpLCBFKDI1LCAyNCksIEUoNDMsIDQxKSwKKyAg ICBFKDQzLCA0MyksIEUoNDQsICA3KSwgRSgxNSwgMjcpLCBFKDM3LCAyMiksIEUoIDcsIDI1KSwg RSggNywgMzEpLAorICAgIEUoIDMsIDMwKSwgRSggMSwgMzcpLCBFKCA4LCAyMiksIEUoMTUsIDM5 KSwgRSgxNSwgNTMpLCBFKCA4LCAyOSksCisgICAgRSg0NCwgMzYpLCBFKDQ0LCAzNyksIEUoNDQs IDQ4KSwgRSg0NSwgIDApLCBFKDQ1LCAgNSksIEUoNDUsIDEzKSwKKyAgICBFKDQ1LCAxNyksIEUo IDgsIDMxKSwgRSggOCwgMzIpLCBFKDQ1LCAyNiksIEUoMjEsIDQ2KSwgRSg0NSwgMjgpLAorICAg IEUoMjgsIDQ0KSwgRSgyOCwgNDUpLCBFKDI4LCA0NiksIEUoMjEsIDUzKSwgRSgyOCwgNDkpLCBF KDI4LCA1MSksCisgICAgRSgyMiwgIDMpLCBFKDM3LCA0MSksIEUoNDYsICAzKSwgRSg0NiwgMjIp LCBFKDM3LCA0MiksIEUoIDgsIDMzKSwKKyAgICBFKDI5LCAgNSksIEUoMzcsIDQ1KSwgRSgyOSwg IDcpLCBFKDIyLCAyMiksIEUoNDYsIDQwKSwgRSgzNywgNTMpLAorICAgIEUoMjIsIDI0KSwgRSgy OSwgMTQpLCBFKDQ3LCAyNSksIEUoNDcsIDI3KSwgRSgzOCwgMTApLCBFKDM4LCAxMiksCisgICAg RSgxNiwgMzQpLCBFKDM4LCAxNiksIEUoMzgsIDE3KSwgRSgzMywgNTMpLCBFKDM4LCAyMCksIEUo MjIsIDI2KSwKKyAgICBFKDQ3LCAzOSksIEUoNDcsIDQ1KSwgRSgyOSwgMTgpLCBFKDI1LCA0NSks IEUoMTYsIDM1KSwgRSggMCwgMzMpLAorICAgIEUoNDgsIDMxKSwgRSggMSwgNDkpLCBFKDM0LCAg NCksIEUoNDgsIDM5KSwgRSg0OCwgNDIpLCBFKDM0LCAxMSksCisgICAgRSgyNSwgNTEpLCBFKDI2 LCAgNSksIEUoMjYsIDEzKSwgRSg0OSwgMjYpLCBFKDQ5LCAyNyksIEUoMjYsIDE3KSwKKyAgICBF KCAxLCA1MiksIEUoNDksIDMwKSwgRSggNCwgIDApLCBFKDI2LCAyMiksIEUoIDQsIDEyKSwgRSg0 OSwgMzQpLAorICAgIEUoIDEsIDYyKSwgRSggOSwgMzYpLCBFKDQ5LCAzOCksIEUoNDksIDQxKSwg RSg0OSwgNDcpLCBFKDEwLCAzMCksCisgICAgRSg0OSwgNjMpLCBFKDE3LCAzOCksIEUoMzgsIDQx KSwgRSgxNywgNDMpLCBFKDE3LCA1OSksIEUoNTAsIDMzKSwKKyAgICBFKDM4LCA0NSksIEUoNTAs IDM3KSwgRSg1MCwgMzgpLCBFKDIyLCA0MCksIEUoMzgsIDQ3KSwgRSg1MSwgMjQpLAorICAgIEUo MzgsIDQ4KSwgRSgzOCwgNDkpLCBFKDUxLCAzMCksIEUoMzksICAxKSwgRSgzOSwgMTApLCBFKDE4 LCAyMiksCisgICAgRSgyMiwgNDkpLCBFKDM5LCAxNSksIEUoNTEsIDM5KSwgRSgyMiwgNTkpLCBF KDUyLCAzMSksIEUoNTIsIDMyKSwKKyAgICBFKDUyLCAzMyksIEUoMzksIDE4KSwgRSg1MywgMTMp LCBFKDUzLCAxNSksIEUoMTAsIDMxKSwgRSgyMywgMjEpLAorICAgIEUoMTgsIDI3KSwgRSgyOSwg NDQpLCBFKDEwLCA0MiksIEUoNTMsIDM5KSwgRSgyOSwgNDYpLCBFKDU0LCAxNyksCisgICAgRSgx MSwgMjYpLCBFKDU0LCAzMiksIEUoMTEsIDMwKSwgRSgxMSwgMzEpLCBFKDU1LCAgMCksIEUoIDEs IDMwKSwKKyAgICBFKDE4LCAzNCksIEUoNTUsICA5KSwgRSg1NSwgMTIpLCBFKDU1LCAxMyksIEUo NTUsIDI1KSwgRSg1NSwgMzEpLAorICAgIEUoNTUsIDMyKSwgRSgyOSwgNTUpLCBFKDM0LCA0Myks IEUoMTgsIDM1KSwgRSgyOSwgNjEpLCBFKDU2LCAzMyksCisgICAgRSg1NiwgMzUpLCBFKDM0LCA0 NiksIEUoNTcsIDI1KSwgRSgzNCwgNDcpLCBFKDM0LCA0OCksIEUoMjksIDYyKSwKKyAgICBFKDI5 LCA2MyksIEUoNTcsIDM4KSwgRSg1NywgNjEpLCBFKDM1LCAgMSksIEUoMzUsICAyKSwgRSgzNSwg IDUpLAorICAgIEUoMzUsICA3KSwgRSgzNSwgIDkpLCBFKDM5LCA0NiksIEUoMzUsIDEwKSwgRSg1 OSwgMzQpLCBFKDU5LCAzNSksCisgICAgRSgxOCwgMzYpLCBFKDU5LCA1NSksIEUoMzksIDUxKSwg RSgzMCwgIDcpLCBFKDE4LCA0MCksIEUoNDAsIDIzKSwKKyAgICBFKDYwLCAzNCksIEUoNjAsIDM3 KSwgRSg2MSwgIDUpLCBFKDMwLCAxMyksIEUoMTgsIDQyKSwgRSg2MSwgMTgpLAorICAgIEUoNjEs IDI1KSwgRSgxOSwgMjcpLCBFKDE5LCAyOCksIEUoNDEsIDExKSwgRSgxNywgMzcpLCBFKDI2LCA0 MiksCisgICAgRSgyMCwgMzkpLCBFKDQ1LCAzNyksIEUoNDYsIDMxKSwgRSgzMiwgNDkpLCBFKDM3 LCAyMSksIEUoMjIsIDI3KSwKKyAgICBFKDQ3LCAyOSksIEUoMjksIDQ3KSwgRSgzMSwgNTMpLCBF KDI3LCA0MCksIEUoMjksIDUxKSwgRSgzMCwgMTYpLAorICAgIEUoMjEsIDI2KSwgRSgzMywgIDEp LCBFKDM1LCA0MCksIEUoMTgsIDMwKSwgRSgyNSwgNDEpLCBFKDMzLCA0NCksCisgICAgRSg1MCwg MzQpLCBFKDUxLCAyNSksIEUoNDIsIDI3KSwgRSggMiwgMzEpLCBFKDE1LCAzNSksIEUoNTEsIDM1 KSwKKyAgICBFKDUzLCAzMSksIEUoMzMsIDE1KSwgRSgyNSwgNDkpLCBFKDI5LCAgMSksIEUoNTUs IDM1KSwgRSgzNywgNDApLAorICAgIEUoMzgsICA1KSwgRSgzMywgNTgpLCBFKDM4LCAyMSksIEUo NTksIDI5KSwgRSgzOCwgMjIpLCBFKDMzLCA1OSksCisgICAgRSgzOSwgNDUpLCBFKDEzLCAzMSks IEUoMzIsICA5KSwgRSg0MCwgMjYpLCBFKDYxLCAgOSksIEUoNjEsIDI5KSwKKyAgICBFKDMyLCAx MSksIEUoIDksIDMyKSwgRSg0NCwgMzApLCBFKCAzLCAgMyksIEUoMzEsIDEzKSwgRSgyOSwgMjAp LAorICAgIEUoMjUsIDE4KSwgRSgyNCwgMzUpLCBFKDQ4LCAzMiksIEUoMTYsIDMyKSwgRSgyOCwg MjQpLCBFKDQ5LCAzMyksCisgICAgRSgyMiwgMzApLCBFKDM0LCA0MCksIEUoMzEsIDQ3KSwgRSgz OCwgMzkpLCBFKDM5LCAzNyksIEUoNDQsIDMyKSwKKyAgICBFKDExLCAzMyksIEUoMzUsIDI0KSwg RSgzMCwgMjMpLCBFKDMzLCA0NSksIEUoMzMsIDQ3KSwgRSgzNiwgMjUpLAorICAgIEUoMzEsIDU5 KSwgRSg0MCwgMzQpLCBFKDI1LCAyNyksIEUoMjcsIDI3KSwgRSgzOCwgMjYpLCBFKDMxLCA0MCks CisgICAgRSgzNiwgMzcpLCBFKDI4LCAyNyksIEUoMzIsIDMxKSwgRSgzMSwgMzEpLCBFKDM0LCAz NSksIEUoMzIsIDM3KSwKKyAgICBFKDM0LCAzNCksIEUoMjQsIDMxKSwgRSgzOSwgMzQpLCBFKDM0 LCAzNyksIEUoMjcsIDMzKSwgRSgyOCwgMzUpLAorICAgIEUoMzEsIDYxKSwgRSgzNiwgMjYpLCBF KDI1LCAzOSksIEUoNDUsIDMzKSwgRSgyNSwgMzEpLCBFKDM1LCAzNCksCisgICAgRSggMywgMzEp LCBFKDM0LCAyMiksIEUoMzgsIDM3KSwgRSgzOSwgMjUpLCBFKDQwLCAzMCksIEUoMzgsIDI1KSwK KyAgICBFKCAxLCAzMiksIEUoMjUsIDMwKSwgRSgzOSwgMzUpLCBFKDMwLCAzOCksIEUoMzcsIDI5 KSwgRSgzMiwgNDApLAorICAgIEUoMjgsIDI4KSwgRSgyOSwgMzgpLCBFKDMyLCAgNSksIEUoMzcs IDM0KSwgRSgzMSwgMjcpLCBFKDM1LCAyNyksCisgICAgRSgyNywgMjkpLCBFKDIzLCAyNyksIEUo MjgsIDIzKSwgRSgzMywgNDIpLCBFKDQ2LCAzMiksIEUoMTUsIDMyKSwKKyAgICBFKDEzLCAzMyks IEUoMjQsIDM2KSwgRSg0MSwgMzcpLCBFKDI0LCAzNyksIEUoMzQsIDE3KSwgRSgzNCwgMTgpLAor ICAgIEUoMzAsIDIyKSwgRSgyNiwgNDApLCBFKDI0LCAzOCksIEUoMTQsIDMyKSwgRSg2MCwgMzEp LCBFKDIxLCAzNSksCisgICAgRSgyOSwgMjQpLCBFKDM5LCAxNyksIEUoMjMsIDI1KSwgRSgzNSwg MTcpLCBFKDM3LCAyMyksIEUoMzAsIDI0KSwKKyAgICBFKDMyLCA2MSksIEUoMTksIDMxKSwgRSgy NCwgMzQpLCBFKDI1LCAyNSksIEUoMjYsIDM4KSwgRSg0NSwgMzIpLAorICAgIEUoMzgsIDM1KSwg RSgzNiwgMjkpLCBFKCAzLCAzMiksIEUoMjYsIDI5KSwgRSgzNiwgMzYpLCBFKDMwLCAzMSksCisg ICAgRSg1OSwgMzIpLCBFKDI4LCAzNiksIEUoNjMsIDMyKSwgRSgyNiwgMzIpLCBFKDM4LCAzNCks IEUoNjMsIDMzKSwKKyAgICBFKDMxLCAyMCksIEUoMjcsIDExKSwgRSgyMCwgMzIpLCBFKDI0LCAz MCksIEUoMzMsICAzKSwgRSgzNywgMzUpLAorICAgIEUoMjgsIDM4KSwgRSgzOSwgMzApLCBFKDMy LCAgMyksIEUoMzEsIDI2KSwgRSgzOSwgMzEpLCBFKDM1LCAyOSksCisgICAgRSgzMSwgMzApLCBF KDMyLCAzOCksIEUoMjMsIDMzKSwgRSgyMywgIDMpLCBFKCA5LCAyOSksIEUoMjUsIDQwKSwKKyAg ICBFKCA5LCAzMSksIEUoMjksIDUzKSwgRSgyMCwgMzApLCBFKDMwLCAxNyksIEUoMzAsIDIwKSwg RSg0MiwgMzcpLAorICAgIEUoMTgsIDMxKSwgRSgyOCwgNDIpLCBFKDI1LCA0NyksIEUoMjgsIDQ3 KSwgRSgyOCwgNTQpLCBFKDIxLCAzOCksCisgICAgRSgyOSwgIDkpLCBFKDQzLCAzNCksIEUoMjks IDEzKSwgRSg0MywgMzcpLCBFKDI2LCAyMSksIEUoNDQsIDI1KSwKKyAgICBFKDQ0LCAyNyksIEUo MjEsIDQzKSwgRSgzOCwgNDIpLCBFKDM1LCAzMCksIEUoMjEsIDQ1KSwgRSgyNCwgNDApLAorICAg IEUoNDUsIDI1KSwgRSg0NSwgMjcpLCBFKDM1LCA0NiksIEUoMzksIDIyKSwgRSgyMiwgMjUpLCBF KDM1LCA1MyksCisgICAgRSgzNiwgMjApLCBFKDM0LCAgMiksIEUoMzQsIDE0KSwgRSg0NSwgMzkp LCBFKDM0LCAxNSksIEUoMjksIDIyKSwKKyAgICBFKDMxLCA0NCksIEUoNDYsIDM0KSwgRSgyNSwg MjEpLCBFKDQ2LCAzOCksIEUoMTYsIDMzKSwgRSgxNywgMjcpLAorICAgIEUoMzEsIDQ4KSwgRSgy MCwgMzQpLCBFKDMyLCA1MiksIEUoNDcsIDM1KSwgRSg0NywgNDcpLCBFKDQ3LCA0OSksCisgICAg RSgzMiwgNTQpLCBFKDQ5LCAgMiksIEUoNDksIDEzKSwgRSg0OSwgMjMpLCBFKDMxLCA1MiksIEUo IDEsIDI5KSwKKyAgICBFKDI3LCA0NSksIEUoMjgsIDIyKSwgRSgzOSwgNDkpLCBFKDM5LCA1NCks IEUoMjEsIDIxKSwgRSgzNiwgNDApLAorICAgIEUoMjMsIDQyKSwgRSg1MSwgMzEpLCBFKCAyLCAz MCksIEUoNDAsIDI5KSwgRSg1MSwgMzQpLCBFKDMyLCAgMCksCisgICAgRSg1MywgMjUpLCBFKDI0 LCAyMyksIEUoMzAsIDUxKSwgRSgyNCwgMjQpLCBFKDMwLCA1OSksIEUoMjEsIDI4KSwKKyAgICBF KDQwLCAzOCksIEUoNTcsIDI5KSwgRSg1NywgMzEpLCBFKDMxLCAgMiksIEUoNDEsIDEzKSwgRSg1 OCwgMzEpLAorICAgIEUoMzIsICA4KSwgRSgxMiwgMzEpLCBFKCA0LCAzMyksIEUoMzIsIDEyKSwg RSgzNCwgNDUpLCBFKDU5LCA0MSksCisgICAgRSgzMSwgIDcpLCBFKDMyLCAxNCksIEUoMTMsIDMw KSwgRSggOSwgMjUpLCBFKDM1LCAxOCksIEUoMjYsIDQzKSwKKyAgICBFKDM1LCAyMCksIEUoMzcs IDQzKSwgRSg2MSwgMzUpLCBFKDM3LCA0NCksIEUoNjMsICAxKSwgRSgyNiwgNDkpLAorICAgIEUo MjksIDQyKSwgRSg0MSwgNDIpLCBFKDQ1LCAzNCksIEUoMzMsIDUxKSwgRSgzNCwgNDIpLCBFKDQ3 LCAzMSksCisgICAgRSg0MSwgMzYpLCBFKDIyLCAzNiksIEUoNDIsIDI5KSwgRSgzNSwgMjEpLCBF KDM1LCAyMiksIEUoMjMsIDM3KSwKKyAgICBFKDMyLCA0NCksIEUoMzUsIDQzKSwgRSg0MywgMjUp LCBFKDMyLCA0NyksIEUoIDcsIDMzKSwgRSgzMSwgNDUpLAorICAgIEUoNDEsIDI3KSwgRSgyMCwg MzEpLCBFKDMxLCA1OCksIEUoMTYsIDMxKSwgRSgxMywgMzIpLCBFKDYzLCAzMSksCisgICAgRSgy NSwgMzgpLCBFKDMwLCA0MyksIEUoMzMsIDYxKSwgRSgzMSwgNDMpLCBFKDQxLCAyOSksIEUoMzQs IDIzKSwKKyAgICBFKDM5LCAyOCksIEUoNDcsIDMyKSwgRSg0MCwgMjgpLCBFKDU4LCAzMiksIEUo NTksIDMxKSwgRSg0MSwgMzQpLAorICAgIEUoMzMsICA1KSwgRSggMywgMzMpLCBFKDE3LCAzMiks IEUoNjEsIDMzKSwgRSg0MiwgMzMpLCBFKDIxLCAzMSksCisgICAgRSgyNiwgMzUpLCBFKDM1LCAy NiksIEUoMjksIDM2KSwgRSgyNiwgMzEpLCBFKDMzLCAzOCksIEUoMzAsIDMwKSwKKyAgICBFKDMx LCAzMiksIEUoMzMsIDMxKSwgRSgzNywgMzApLCBFKDMxLCAyMyksIEUoMzAsIDQyKSwgRSgyNiwg MzcpLAorICAgIEUoMzMsIDI2KSwgRSgyNywgMzUpLCBFKDMxLCAzNiksIEUoMjcsIDM0KSwgRSgz NSwgMzcpLCBFKDI5LCAyMyksCisgICAgRSgzNiwgMzgpLCBFKDYxLCAzMSksIEUoMzMsIDQwKSwg RSgzNywgMjYpLCBFKDYyLCAzMiksIEUoMzUsIDM4KSwKKyAgICBFKDU3LCAzMiksIEUoMzEsIDQx KSwgRSgzNCwgMjYpLCBFKDM0LCAyNSksIEUoNDAsIDMyKSwgRSgzNSwgMzUpLAorICAgIEUoMjks IDM0KSwgRSgzMiwgMjUpLCBFKDI5LCAzMCksIEUoMjgsIDI2KSwgRSgzOCwgMTgpLCBFKDIzLCA0 MSksCisgICAgRSgzMiwgMjApLCBFKDI5LCAyOCksIEUoMjksIDI1KSwgRSgyOCwgMzcpLCBFKDQy LCAzMiksIEUoMzMsIDM5KSwKKyAgICBFKDMyLCAyNiksIEUoMzEsIDI1KSwgRSgzMCwgNDApLCBF KDM1LCA0NyksIEUoMzAsIDQ1KSwgRSgzMCwgNTQpLAorICAgIEUoMzEsICAxKSwgRSgzMiwgMjMp LCBFKDMzLCAyNSksIEUoNDIsIDI2KSwgRSg0NywgMzQpLCBFKDM5LCAzOCksCisgICAgRSgzOCwg MTQpLCBFKDQwLCAyMiksIEUoNDAsIDI0KSwgRSg1MSwgMzMpLCBFKDU1LCAzNCksIEUoNTYsIDMy KSwKKyAgICBFKDE4LCAzMiksIEUoMjEsIDM3KSwgRSgzOSwgMjEpLCBFKDM5LCAyMyksIEUoMzMs IDQ5KSwgRSgxNywgMzUpLAorICAgIEUoNDEsIDIzKSwgRSgyMywgMjgpLCBFKDI0LCAzOSksIEUo NDMsIDM5KSwgRSgyNSwgMjMpLCBFKDMxLCA1NSksCisgICAgRSgyMCwgMzMpLCBFKDI1LCAzNyks IEUoMzgsIDM4KSwgRSgyNSwgMzYpLCBFKDI3LCAzNyksIEUoMjksIDM3KSwKKyAgICBFKCA0LCAz MiksIEUoMzksIDMzKSwgRSggNSwgMzIpLCBFKDI4LCAyOSksIEUoMzgsIDI0KSwgRSgxNywgMjkp LAorICAgIEUoMzUsIDM5KSwgRSggMiwgMzIpLCBFKDM4LCAzNiksIEUoMzAsIDI5KSwgRSgyOSwg MzUpLCBFKDMyLCAzNCksCisgICAgRSgzMiwgMzMpLCBFKDMyLCAzMiksCit9OworCitjb25zdCB1 aW50OF90IGZmX21zbXA0X212X3RhYmxlMF9sZW5zW01TTVBFRzRfTVZfVEFCTEVTX05CX0VMRU1T XSA9IHsKKyAgICAgOCwgMTIsIDEyLCAxMywgMTUsIDE1LCAxNSwgMTUsIDEyLCAxNSwgMTUsIDE1 LCAxNSwgMTQsIDE0LCAxNCwgMTQsIDE0LAorICAgIDE0LCAxMSwgIDksICA4LCAxMywgMTQsIDE0 LCAxNCwgMTQsIDEzLCAxMSwgMTIsIDEyLCAxMiwgMTIsIDEwLCAxMywgMTMsCisgICAgMTIsIDEy LCAxNiwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywKKyAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAgNiwgIDYsICA3LAorICAgICA4LCAgOCwgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCisgICAgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywKKyAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCisgICAg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywKKyAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAorICAgIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNiwgMTYsCisg ICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2 LCAxNiwgMTYsIDE2LCAxNiwKKyAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2 LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE1LAorICAgIDE1LCAxNSwgMTUsIDE1 LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEyLCAxMSwgMTAs CisgICAgIDksICA5LCAxMSwgMTMsIDEzLCAxNCwgMTQsIDEzLCAxMywgMTMsIDEzLCAxMywgMTIs IDE2LCAxNiwgMTUsIDE1LCAxNSwKKyAgICAxNSwgMTUsIDE1LCAxNSwgIDksIDEwLCAxNSwgMTUs IDE1LCAxNSwgMTUsIDE1LCAxNCwgMTQsIDE0LCAxMywgMTEsICA5LAorICAgICA4LCAxMCwgMTEs IDEyLCAxNCwgMTQsIDEzLCAxMCwgMTMsIDE0LCAxNCwgMTQsIDE0LCAxMywgMTEsICA3LCAgNSwg IDgsCisgICAgIDksIDExLCAxMiwgMTMsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTEsIDEyLCAxNiwgMTYsIDE2LCAxNiwKKyAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAgOCwgMTAsIDE2LCAxNiwgMTYsIDE2LAorICAgIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAx NiwgMTYsCisgICAgMTYsIDE2LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAx NSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKKyAgICAxNCwgMTQsIDExLCAxMiwgMTMsIDEzLCAx MSwgMTIsIDEzLCAxNCwgMTQsICA5LCAgOSwgIDgsIDEwLCAxMywgMTMsIDEzLAorICAgIDE0LCAx NiwgMTcsIDE3LCAxNSwgMTEsIDEwLCAxMCwgIDgsICA5LCAxMSwgMTMsIDE1LCAxNSwgMTUsIDE1 LCAxNSwgMTUsCisgICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1 LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKKyAgICAxNCwgMTQsIDEyLCAxMiwgIDgsICA3 LCAxMSwgMTQsIDE0LCAxNCwgMTQsIDEzLCAxMywgMTAsIDEwLCAxMywgMTQsIDE0LAorICAgIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDEzLCAxMiwgIDgsICA5LCAxMSwgMTEsIDE0LCAxNywgMTcs IDE3LCAxNywgMTcsCisgICAgMTcsIDE3LCAxNywgMTMsIDEzLCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKKyAgICAxNywgMTcsIDE3LCAxMSwgMTEs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAorICAg IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKKyAgICAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAor ICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKKyAgICAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3 LAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3 LCAxNywgMTcsIDE3LCAxNywgMTcsCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3 LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKKyAgICAxNywgMTcsIDE3 LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTYsIDE2LCAxNiwKKyAgICAxNiwgMTYs IDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LAorICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCisgICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE1LCAxNSwgMTUsIDE1LCAxNSwKKyAgICAxNSwg MTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LAorICAgIDE0LCAxNCwgIDQsICA1LCAxMCwgMTAsICA5LCAxMywgMTMsIDEyLCAx MSwgMTIsIDE0LCAxNCwgMTQsIDE0LCAxMSwgMTAsCisgICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTMsIDEzLCAxMywgMTIsIDEyLCAxMywgMTMsIDEzLCAxMywgMTIsIDExLCAxMiwKKyAgICAx MiwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1 LCAxNSwgMTUsIDE1LAorICAgIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDEzLCAxMiwgMTIsIDEzLCAxMywgIDgsCisgICAgMTIsIDEzLCAxMywgMTEsIDEy LCAxNSwgMTYsIDE2LCAxNCwgMTQsIDE0LCAxMiwgMTMsIDEzLCAxMiwgMTIsIDExLCAxMCwKKyAg ICAgOCwgMTEsIDEzLCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYs IDE2LCAxNiwgMTYsIDE2LAorICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYs IDEwLCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCisgICAgMTYsIDE2LCAxNiwgMTYs IDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwK KyAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LAorICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCisgICAgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNSwgMTUsIDE1LCAx NSwKKyAgICAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAx NSwgMTUsIDE1LCAxNSwgMTUsIDE1LAorICAgIDE1LCAxNSwgMTQsIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTMsCisgICAgMTMsIDEzLCAx MiwgMTIsIDEyLCAgOSwgIDQsICA1LCAxMiwgMTMsIDE0LCAxNCwgMTIsIDEyLCAxMCwgMTIsIDEy LCAxNCwKKyAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDEzLCAxMywgMTMsIDEyLCAxMiwgMTIsIDEw LCAxMCwgMTAsIDEwLCAxNCwgMTYsIDE2LAorICAgIDE1LCAxMywgMTMsIDEzLCAxMiwgMTIsIDEx LCAxMSwgMTMsIDE1LCAxNSwgMTUsIDE1LCAxMiwgMTEsIDE1LCAxNSwgMTUsCisgICAgMTUsIDE1 LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUs IDE1LCAxNSwKKyAgICAxNSwgMTQsIDE0LCAxNCwgMTMsIDEyLCAxMiwgMTEsIDEyLCAxMiwgMTQs IDE0LCAxMywgMTMsIDEzLCAxMCwgMTAsICA2LAorICAgICA0LCAgMSwKK307CisKKy8qIG1vdGlv biB2ZWN0b3IgdGFibGUgMSAqLworCitjb25zdCB1aW50MTZfdCBmZl9tc21wNF9tdl90YWJsZTFb TVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVNdID0geworICAgIEUoMzIsIDMyKSwgRSg0MiwgMzkp LCBFKDM1LCA1MyksIEUoIDMsIDI4KSwgRSg1MSwgMzkpLCBFKDM1LCA1NyksCisgICAgRSgxNiwg NDYpLCBFKDM1LCAxMCksIEUoMzAsIDUyKSwgRSg2MywgMjcpLCBFKDU3LCAzNSksIEUoMzksIDQy KSwKKyAgICBFKDM5LCA0NSksIEUoMjUsIDU5KSwgRSgzNSwgMTUpLCBFKDUxLCAzNCksIEUoMzEs ICA5KSwgRSg0OCwgMzQpLAorICAgIEUoIDIsIDMzKSwgRSggNiwgMzEpLCBFKDM0LCA0OSksIEUo MzAsIDQzKSwgRSgyOCwgNDIpLCBFKDMzLCA1MSksCisgICAgRSgzOSwgMjcpLCBFKDMzLCA0Miks IEUoMzcsIDI1KSwgRSg2MCwgMzQpLCBFKDM4LCA2MCksIEUoIDksIDM4KSwKKyAgICBFKDM4LCAz MyksIEUoNTEsIDMyKSwgRSgzMCwgMjIpLCBFKDMzLCAyMyksIEUoMzIsIDI0KSwgRSgzMiwgMjYp LAorICAgIEUoMzIsIDI5KSwgRSg0MCwgMjkpLCBFKDI3LCAyMyksIEUoNDYsIDI5KSwgRSgzMSwg MTQpLCBFKCA5LCAzMCksCisgICAgRSgzNSwgNDUpLCBFKDI5LCA0OSksIEUoMzEsIDExKSwgRSg0 NywgMzIpLCBFKDMyLCA0OCksIEUoMzksIDM1KSwKKyAgICBFKDM3LCAzMSksIEUoMjUsIDM0KSwg RSgzMCwgMjUpLCBFKDI0LCAzMCksIEUoMzUsIDI1KSwgRSg2MSwgMzIpLAorICAgIEUoMzksIDI0 KSwgRSgxNiwgMjQpLCBFKDM2LCAyMyksIEUoNTAsIDMyKSwgRSgzMiwgNDUpLCBFKDE5LCAzMyks CisgICAgRSg1OSwgMzMpLCBFKDI5LCAyNSksIEUoMzAsIDM2KSwgRSg2MywgMzMpLCBFKDQ1LCAz OSksIEUoMzEsIDEyKSwKKyAgICBFKDYwLCAyOSksIEUoMTQsIDI0KSwgRSgzNCwgIDApLCBFKDQy LCAyMCksIEUoMjQsIDE2KSwgRSggMCwgMjgpLAorICAgIEUoMzcsIDQzKSwgRSgxOCwgMzUpLCBF KDYxLCAyOCksIEUoNTcsICAxKSwgRSgzMCwgMzApLCBFKDMxLCAzMyksCisgICAgRSgzMSwgMzUp LCBFKDI2LCAzMiksIEUoMzcsIDQ5KSwgRSgyOCwgIDQpLCBFKDUzLCAyMSksIEUoMjAsIDQyKSwK KyAgICBFKDQ2LCAzOSksIEUoMTQsIDI5KSwgRSg0NywgIDMpLCBFKDM4LCA0NCksIEUoMzgsIDIx KSwgRSgzOCwgNTMpLAorICAgIEUoIDksIDU1KSwgRSgzNCwgMTEpLCBFKDM5LCAgNSksIEUoNDMs ICAzKSwgRSgxNywgMzkpLCBFKDM5LCA1MyksCisgICAgRSg1OSwgMjgpLCBFKCA1LCAyNSksIEUo MjcsIDE5KSwgRSggMCwgMzQpLCBFKDU1LCAzMSksIEUoNDYsIDI4KSwKKyAgICBFKDE5LCAzNSks IEUoMzcsIDQxKSwgRSg2MiwgMzApLCBFKDM0LCA0NCksIEUoMzAsIDE4KSwgRSgxNiwgMjkpLAor ICAgIEUoMTksIDM0KSwgRSg0OSwgMzUpLCBFKDMwLCA0MSksIEUoMjUsIDI3KSwgRSg0MywgMzIp LCBFKCA0LCAzMiksCisgICAgRSgzNCwgMjUpLCBFKDI3LCAyNSksIEUoMzMsIDE5KSwgRSgzMiwg NDEpLCBFKDI1LCAyOSksIEUoNjIsIDMxKSwKKyAgICBFKDI0LCAzNSksIEUoMzIsIDM4KSwgRSgz MCwgMzIpLCBFKDM0LCAzMyksIEUoMzQsIDI5KSwgRSg0MSwgMzYpLAorICAgIEUoMTIsIDI4KSwg RSgyNywgMjEpLCBFKDQxLCAyNSksIEUoMzksIDI2KSwgRSgzMCwgMjQpLCBFKDM3LCAyMSksCisg ICAgRSgxNCwgMzEpLCBFKCA1LCAzMCksIEUoMTMsIDM0KSwgRSgzNSwgMTkpLCBFKDU1LCAzNCks IEUoMzAsIDQ0KSwKKyAgICBFKDQwLCAzNiksIEUoNDAsIDM4KSwgRSg0MiwgMjUpLCBFKDMxLCAx OSksIEUoMjcsIDM2KSwgRSgzMCwgNDIpLAorICAgIEUoMzcsIDI3KSwgRSgzMSwgMTcpLCBFKDIx LCAzMyksIEUoNDUsIDMxKSwgRSgzMiwgNDQpLCBFKDM5LCAyOCksCisgICAgRSgyMCwgMzMpLCBF KDQ2LCAzMyksIEUoNDcsIDMxKSwgRSgzNSwgMjMpLCBFKDE5LCAzMSksIEUoMzMsIDMwKSwKKyAg ICBFKDI4LCAzMiksIEUoMzYsIDMyKSwgRSgzMywgMzIpLCBFKDM0LCA0MCksIEUoIDgsIDMxKSwg RSgyMCwgMjgpLAorICAgIEUoMzUsIDM5KSwgRSg0MywgMzMpLCBFKDI1LCAyMyksIEUoNDUsIDM3 KSwgRSgzNSwgIDMpLCBFKDMzLCA1NSksCisgICAgRSgzNSwgMjkpLCBFKDM2LCA0MSksIEUoNTQs IDMwKSwgRSgzOCwgMjIpLCBFKDI3LCA0MSksIEUoMzcsIDI0KSwKKyAgICBFKDYyLCAzMyksIEUo NDAsIDI2KSwgRSgxNSwgMzUpLCBFKDU5LCAzNSksIEUoNDksIDMwKSwgRSggMSwgMzMpLAorICAg IEUoNDAsIDMzKSwgRSgzMiwgIDApLCBFKDI5LCAzNyksIEUoMzIsICAyKSwgRSggMywgMzIpLCBF KDQyLCAzMiksCisgICAgRSg0OSwgMzEpLCBFKDIxLCAzNCksIEUoMjEsIDMwKSwgRSgxNCwgMzIp LCBFKCA1LCAzMSksIEUoMjgsIDM2KSwKKyAgICBFKDMxLCAyMSksIEUoNTEsIDMzKSwgRSgzMSwg NTUpLCBFKDI5LCA1MSksIEUoMzEsIDM4KSwgRSg2MiwgMzIpLAorICAgIEUoMzQsIDQ3KSwgRSgz NCwgNDgpLCBFKDM5LCAzOCksIEUoMjQsIDI0KSwgRSgzMiwgMzApLCBFKDI5LCAzMiksCisgICAg RSgzMCwgMzQpLCBFKDM1LCAzNCksIEUoMjksIDE1KSwgRSgyNSwgMjEpLCBFKDI2LCAzNiksIEUo MzMsIDYxKSwKKyAgICBFKDMxLCAyNiksIEUoMzIsIDM0KSwgRSgzMCwgMzMpLCBFKDI3LCAzMSks IEUoMjMsIDM1KSwgRSgyOSwgNTApLAorICAgIEUoMjEsIDI1KSwgRSgzMSwgNDcpLCBFKDM2LCAz NyksIEUoMzUsIDQxKSwgRSg1OCwgMzEpLCBFKDI5LCAyMyksCisgICAgRSgyOSwgNDEpLCBFKDIx LCAyOSksIEUoMjAsIDMwKSwgRSgzMywgMjQpLCBFKDMyLCAyMiksIEUoNDIsIDM1KSwKKyAgICBF KDI5LCA0NiksIEUoMTAsIDMwKSwgRSg2MSwgMjkpLCBFKDMzLCAxMCksIEUoNDksIDM0KSwgRSgz NSwgNDIpLAorICAgIEUoMzQsIDQ1KSwgRSggMywgMjkpLCBFKDM4LCA0MiksIEUoMzksIDIyKSwg RSgyOSwgIDMpLCBFKCA3LCAzMyksCisgICAgRSg0MSwgMjcpLCBFKCAxLCAzNCksIEUoMzAsIDMx KSwgRSgxMywgMzIpLCBFKDI4LCAyNSksIEUoMTIsIDMyKSwKKyAgICBFKDQwLCAyOCksIEUoMjUs IDM1KSwgRSgzMSwgNjEpLCBFKDI4LCAzMSksIEUoMjksIDM0KSwgRSgzNCwgMzUpLAorICAgIEUo MjgsIDMzKSwgRSgyNiwgMzMpLCBFKDM1LCAgMSksIEUoIDQsIDM0KSwgRSgzMSwgNTgpLCBFKDMz LCAgMiksCisgICAgRSgzOSwgMzcpLCBFKDIxLCAzMSksIEUoNjAsIDMzKSwgRSgyMywgMjgpLCBF KDE1LCAzNCksIEUoMzgsIDMwKSwKKyAgICBFKDM3LCAzMyksIEUoMzQsIDM0KSwgRSgzMSwgMjgp LCBFKDIzLCAzNiksIEUoMTEsIDM1KSwgRSgzNywgMjMpLAorICAgIEUoMjgsIDIzKSwgRSgzNSwg MTMpLCBFKDMwLCA1OCksIEUoMzAsICAzKSwgRSgyNCwgMjYpLCBFKCAxLCA2MyksCisgICAgRSg0 MywgMjUpLCBFKDU2LCAzMSksIEUoIDgsIDM0KSwgRSgzMiwgMTQpLCBFKDQ0LCAzMyksIEUoMzIs IDM1KSwKKyAgICBFKDI2LCAzMSksIEUoMzEsICA1KSwgRSgzMywgNDkpLCBFKDMxLCAyMCksIEUo MzYsIDMzKSwgRSgzMiwgIDEpLAorICAgIEUoMjcsIDMzKSwgRSgzMSwgMzQpLCBFKDMxLCAzMCks IEUoMjgsIDM5KSwgRSgzNywgMzYpLCBFKDQzLCAzMSksCisgICAgRSgzMSwgNTkpLCBFKDM0LCAz OSksIEUoMzEsIDI3KSwgRSgzNCwgNjEpLCBFKDQyLCAzOCksIEUoMjQsIDM5KSwKKyAgICBFKDQ1 LCAyNSksIEUoMzAsIDYxKSwgRSgyMCwgMjkpLCBFKDIzLCAzNyksIEUoIDgsIDMwKSwgRSgzOCwg NDEpLAorICAgIEUoMjIsIDI2KSwgRSgzMywgNDgpLCBFKDE3LCAyOCksIEUoNTIsIDMzKSwgRSgz NCwgNTApLCBFKDI5LCAyMSksCisgICAgRSgzMiwgIDkpLCBFKDMwLCAyMyksIEUoNDksIDMzKSwg RSg0MywgMzUpLCBFKDI4LCAyNCksIEUoMzksIDM5KSwKKyAgICBFKDMzLCAyMSksIEUoMzMsIDM0 KSwgRSgzMiwgMjgpLCBFKDMwLCAyOSksIEUoMjUsIDM3KSwgRSgzMiwgMTEpLAorICAgIEUoNDgs IDMzKSwgRSggMiwgMzApLCBFKDE1LCAzMSksIEUoMjAsIDMxKSwgRSgyMiwgMzUpLCBFKDUzLCAz MCksCisgICAgRSg0MywgMzcpLCBFKDQ0LCAyOSksIEUoMjksIDMwKSwgRSggMSwgMjkpLCBFKDI3 LCA0MCksIEUoMzEsICA2KSwKKyAgICBFKDQxLCAzOSksIEUoNDMsIDI4KSwgRSg0MSwgMjgpLCBF KDMwLCAxOSksIEUoMzEsICA4KSwgRSgzNiwgMjIpLAorICAgIEUoMzAsIDQ1KSwgRSgyNSwgMjgp LCBFKDMxLCA1MSksIEUoMjgsIDQwKSwgRSgzMiwgMjUpLCBFKDIxLCAzNSksCisgICAgRSgyNCwg MjkpLCBFKDI1LCAyNSksIEUoMTUsIDMzKSwgRSgyMCwgMzIpLCBFKDQwLCAzMCksIEUoMzksIDM0 KSwKKyAgICBFKDMxLCA0NiksIEUoMTcsIDM1KSwgRSgyMiwgMzIpLCBFKDM5LCAzMSksIEUoMzMs IDI4KSwgRSgyOSwgMjkpLAorICAgIEUoMjEsIDMyKSwgRSgzNywgMzcpLCBFKDQzLCAzMCksIEUo MTgsIDMwKSwgRSgzMiwgIDgpLCBFKDM3LCAzMiksCisgICAgRSgzMSwgMzIpLCBFKDMxLCAyMiks IEUoMzEsIDQwKSwgRSg1NywgMzIpLCBFKDM4LCAyOSksIEUoMzMsIDM3KSwKKyAgICBFKDM1LCAz NSksIEUoMzMsIDYzKSwgRSggNSwgMzQpLCBFKDU1LCAzNSksIEUoMzEsIDEwKSwgRSgzMywgNTgp LAorICAgIEUoMzAsIDE3KSwgRSg0MCwgMzcpLCBFKDIzLCAzOSksIEUoMTUsIDMwKSwgRSgyOSwg MTgpLCBFKDM0LCA1NCksCisgICAgRSgzNCwgMTQpLCBFKDU5LCAyOSksIEUoMzQsIDE2KSwgRSgz MCwgNTkpLCBFKDExLCAzMCksIEUoMTMsIDM1KSwKKyAgICBFKDM4LCAyMyksIEUoIDUsIDM1KSwg RSgyNCwgMjgpLCBFKDMzLCAxNSksIEUoMzcsIDMwKSwgRSgyNSwgMzEpLAorICAgIEUoMzYsIDQw KSwgRSgxMywgMzMpLCBFKDMzLCA0NSksIEUoMzEsIDQ5KSwgRSgzMiwgMTYpLCBFKDQyLCAzMSks CisgICAgRSgyNSwgMzMpLCBFKDMyLCAzNiksIEUoMzksIDI1KSwgRSgxMSwgMzIpLCBFKDMzLCAg NSksIEUoNjEsIDMxKSwKKyAgICBFKDYzLCAzMiksIEUoMzEsICA0KSwgRSggMCwgMzApLCBFKDMw LCA0NyksIEUoMzIsIDYyKSwgRSgzNywgMjkpLAorICAgIEUoMzEsICAyKSwgRSg0MiwgMzYpLCBF KCA1LCAyOSksIEUoMzAsIDU1KSwgRSgyOSwgMjApLCBFKDI5LCAzNSksCisgICAgRSgzNCwgMTIp LCBFKDEwLCAzMSksIEUoNDQsIDM1KSwgRSgzMCwgMTQpLCBFKDYzLCAyOSksIEUoMzUsIDE4KSwK KyAgICBFKDEyLCAzNCksIEUoIDMsIDM0KSwgRSgzMywgNDcpLCBFKDMyLCA1MSksIEUoMzksIDM2 KSwgRSgzNywgMzkpLAorICAgIEUoMzIsIDUzKSwgRSgzMiwgMTApLCBFKDI5LCAyNCksIEUoMTcs IDI5KSwgRSgzMiwgMjApLCBFKDI5LCAzOSksCisgICAgRSgzMywgMjcpLCBFKDMxLCAzNiksIEUo MzIsIDI3KSwgRSgzMSwgIDMpLCBFKDMwLCAzOSksIEUoNDQsIDMyKSwKKyAgICBFKDMxLCAzNyks IEUoIDUsIDMzKSwgRSg0NCwgMzApLCBFKDQ2LCAzMSksIEUoMzIsIDQwKSwgRSgzNiwgMjUpLAor ICAgIEUoMzUsIDQwKSwgRSgyNiwgMzgpLCBFKDM3LCAzOCksIEUoMzMsIDM4KSwgRSgyNSwgMzIp LCBFKCAyLCAzMiksCisgICAgRSg1OCwgMzMpLCBFKDI2LCAyNCksIEUoMTUsIDI5KSwgRSgzMSwg IDEpLCBFKDMxLCAyNSksIEUoMTcsIDI2KSwKKyAgICBFKDI1LCAyMiksIEUoMzQsICAyKSwgRSg0 MywgMjcpLCBFKDM5LCAyMyksIEUoMzQsICA4KSwgRSg1NiwgMzApLAorICAgIEUoMjksIDU1KSwg RSgyMywgMzgpLCBFKDMwLCA2MCksIEUoMTIsIDMxKSwgRSgzMCwgIDQpLCBFKDEwLCAzNCksCisg ICAgRSgzNSwgNDkpLCBFKCA5LCAzNCksIEUoMjQsIDI3KSwgRSg1OCwgMzQpLCBFKDEwLCAzMyks IEUoMTIsIDMwKSwKKyAgICBFKDU0LCAzMSksIEUoMzIsIDU2KSwgRSgzNCwgMjMpLCBFKDM4LCAy NyksIEUoIDgsIDMyKSwgRSgyMiwgMzEpLAorICAgIEUoMzQsIDI0KSwgRSgzNiwgMzYpLCBFKDE3 LCAzMiksIEUoMzgsIDM2KSwgRSgzMywgMjUpLCBFKDMyLCAzMyksCisgICAgRSgzMiwgMzEpLCBF KDU4LCAzMiksIEUoMzgsIDI4KSwgRSgzOCwgMzcpLCBFKDM4LCAyNiksIEUoMjIsIDI5KSwKKyAg ICBFKDI5LCA0MyksIEUoMzIsIDYxKSwgRSgyNSwgMzYpLCBFKDE2LCAzMyksIEUoMzUsIDI0KSwg RSgzMiwgNTUpLAorICAgIEUoMzUsIDQzKSwgRSgzMywgIDkpLCBFKDQzLCAyOSksIEUoMTgsIDM0 KSwgRSg0NiwgMzQpLCBFKDM4LCAyNCksCisgICAgRSgzNSwgMjYpLCBFKDMyLCAgNiksIEUoNjAs IDMxKSwgRSggMSwgMzIpLCBFKDIzLCAzMyksIEUoMzAsIDM1KSwKKyAgICBFKDI3LCAzMiksIEUo MzMsIDI2KSwgRSg0MSwgMzEpLCBFKDM1LCAzOCksIEUoMzMsIDU0KSwgRSgzNywgNDIpLAorICAg IEUoMjAsIDM1KSwgRSg0MSwgMzgpLCBFKDM1LCA0NiksIEUoMjksIDQ0KSwgRSgxOCwgMjYpLCBF KDYxLCAyNyksCisgICAgRSgzMCwgIDkpLCBFKDQwLCAzOSksIEUoMjQsIDI1KSwgRSgzOSwgMjEp LCBFKDM5LCAzMiksIEUoNTMsIDI5KSwKKyAgICBFKDYyLCAyOCksIEUoMjYsIDQyKSwgRSgyOSwg MTMpLCBFKDMzLCAgMCksIEUoMzQsICA1KSwgRSg1MywgMzQpLAorICAgIEUoNDksIDM3KSwgRSgy MSwgMjgpLCBFKDI3LCAyNCksIEUoMTEsIDI5KSwgRSg2MywgNjMpLCBFKDUwLCAzMyksCisgICAg RSgzMywgMTgpLCBFKDE4LCAzMyksIEUoNTMsIDMzKSwgRSg2MCwgMzApLCBFKDEzLCAzMSksIEUo MzIsIDUwKSwKKyAgICBFKDM2LCAyNCksIEUoMjQsIDM0KSwgRSgyNywgMzQpLCBFKDMyLCA1OCks IEUoMzgsIDM1KSwgRSgzNSwgMjgpLAorICAgIEUoMTYsIDMyKSwgRSgzMywgNjApLCBFKDUxLCAz MCksIEUoMzIsICA0KSwgRSgzNiwgMzkpLCBFKDQzLCAzNCksCisgICAgRSg0NSwgMzApLCBFKDI3 LCAzOSksIEUoNDUsIDMzKSwgRSg0MiwgMzMpLCBFKDMwLCAzOCksIEUoMzIsIDE3KSwKKyAgICBF KDMxLCA0MyksIEUoMjAsIDI2KSwgRSgyNiwgMjIpLCBFKDIzLCAyNyksIEUoIDcsIDI5KSwgRSgx MywgMjUpLAorICAgIEUoIDYsIDMzKSwgRSg0NywgMjUpLCBFKDI5LCA2MSksIEUoMzAsICAwKSwg RSggOSwgMzUpLCBFKDUxLCAyNSksCisgICAgRSgyMiwgMzYpLCBFKDM0LCAxNSksIEUoMjEsIDI3 KSwgRSgyNSwgNDApLCBFKDMzLCA1MyksIEUoMzIsIDM3KSwKKyAgICBFKDU2LCAzMyksIEUoNTcs ICAzKSwgRSgzMCwgMTApLCBFKDM4LCAxNiksIEUoNTEsIDM3KSwgRSg1MSwgMzgpLAorICAgIEUo MzgsIDE4KSwgRSg2MywgMzApLCBFKDI4LCA0NiksIEUoNDAsIDI3KSwgRSgzNSwgIDkpLCBFKDMz LCAgNiksCisgICAgRSg0MiwgMjgpLCBFKDI5LCAyMiksIEUoMjQsIDM4KSwgRSgzMCwgIDIpLCBF KDI1LCAyNiksIEUoMzEsIDYzKSwKKyAgICBFKDUyLCAzMiksIEUoMzEsIDU3KSwgRSgyOSwgMjYp LCBFKDM1LCAzMSksIEUoMzIsICA1KSwgRSg0MSwgMzIpLAorICAgIEUoMzUsIDIxKSwgRSgzOCwg MzkpLCBFKCA0LCAzMSksIEUoMzAsIDQwKSwgRSgxNywgMzEpLCBFKCA5LCAzMyksCisgICAgRSgy MiwgMjgpLCBFKDM0LCAxOCksIEUoIDQsIDMwKSwgRSgxNywgMzQpLCBFKDI4LCAyMiksIEUoNTUs IDMzKSwKKyAgICBFKDQyLCAyOSksIEUoNDAsIDM0KSwgRSg0NiwgMzIpLCBFKDM4LCAzNCksIEUo NDgsIDMyKSwgRSg2MywgMzEpLAorICAgIEUoMjMsIDMxKSwgRSgzOSwgMzMpLCBFKDMzLCAgMyks IEUoIDMsIDMxKSwgRSgxOCwgMjkpLCBFKDMzLCA2MiksCisgICAgRSgzMywgIDgpLCBFKDI0LCA0 MiksIEUoNTgsIDI4KSwgRSg1OCwgMjkpLCBFKDM0LCAgMyksIEUoNDksIDI1KSwKKyAgICBFKDI5 LCAxNiksIEUoNDMsIDI2KSwgRSggNCwgMjkpLCBFKCAxLCAzNSksIEUoIDQsIDI4KSwgRSg0Miwg MjcpLAorICAgIEUoMzUsIDUxKSwgRSgzNSwgNjEpLCBFKDMwLCA0OCksIEUoMTcsIDM3KSwgRSgg NSwgIDkpLCBFKDU2LCAzNCksCisgICAgRSgyNSwgNDEpLCBFKDE3LCAzMCksIEUoMjAsIDM0KSwg RSg0NywgMzUpLCBFKDM0LCAyMSksIEUoMzMsIDEzKSwKKyAgICBFKDE2LCAzNCksIEUoNDAsIDM1 KSwgRSgzMiwgMTkpLCBFKDI4LCAzNSksIEUoMzMsIDM2KSwgRSgzNiwgMzApLAorICAgIEUoMjUs IDM5KSwgRSgxNiwgMzApLCBFKDQyLCAzMCksIEUoMTksIDMyKSwgRSgzMCwgNDYpLCBFKDUzLCAz MiksCisgICAgRSgzMiwgMjMpLCBFKDI5LCA0MiksIEUoMTAsIDMyKSwgRSgxMSwgMzEpLCBFKDE0 LCAzMyksIEUoMzQsIDM4KSwKKyAgICBFKDMyLCAzOSksIEUoNDEsIDI5KSwgRSgyNiwgMjYpLCBF KDYxLCAgNyksIEUoMjUsIDQ5KSwgRSgyMiwgMzMpLAorICAgIEUoMjgsIDM4KSwgRSgzNiwgMzgp LCBFKDQ1LCAzMiksIEUoMzQsIDI3KSwgRSgyOCwgMzApLCBFKDM0LCAyOCksCisgICAgRSgzMywg NTkpLCBFKDM3LCA0NSksIEUoMzYsIDIwKSwgRSg1NSwgMjkpLCBFKDI4LCAyMSksIEUoMzUsICA1 KSwKKyAgICBFKDI5LCAgNSksIEUoNTAsIDI5KSwgRSg0OCwgMjgpLCBFKDUyLCAzNCksIEUoIDIs IDI5KSwgRSg0MiwgMjQpLAorICAgIEUoMzQsIDEwKSwgRSg0MCwgMjQpLCBFKDQ2LCAzNSksIEUo NDYsIDM2KSwgRSg0MywgMzgpLCBFKDMzLCAxMSksCisgICAgRSggNCwgMzMpLCBFKDMzLCA0MCks IEUoMzIsIDE4KSwgRSgzNiwgMzQpLCBFKDI3LCAzNSksIEUoMzUsIDIyKSwKKyAgICBFKDM1LCA1 NSksIEUoMjksIDExKSwgRSgyOSwgMzgpLCBFKDQxLCAzMyksIEUoMjksIDI4KSwgRSggNywgMzIp LAorICAgIEUoNDQsIDMxKSwgRSgyNiwgMjUpLCBFKDM5LCAyOSksIEUoMzIsICAzKSwgRSgxNiwg MzEpLCBFKDMxLCA1MyksCisgICAgRSgyNiwgMjcpLCBFKDM0LCA0MyksIEUoMzgsIDI1KSwgRSgy OSwgNDApLCBFKDQxLCAzNSksIEUoMzUsIDI3KSwKKyAgICBFKDM2LCAyOSksIEUoMzgsIDMxKSwg RSgyOSwgMjcpLCBFKDMyLCA0MyksIEUoMjcsIDI5KSwgRSgzMCwgMzcpLAorICAgIEUoMjQsIDMy KSwgRVNDQVBFLCAgICBFKDMyLCA2MyksIEUoMjQsIDMxKSwgRSg0MiwgMzQpLCBFKDQ4LCAzNiks CisgICAgRSgyMCwgMzgpLCBFKDI5LCA1MyksIEUoMzEsIDU0KSwgRSg2MSwgMzMpLCBFKDQxLCAy NiksIEUoIDcsIDMwKSwKKyAgICBFKDMwLCA0OSksIEUoMzUsIDIwKSwgRSgxOSwgMjcpLCBFKDE0 LCAzMCksIEUoMjEsIDM5KSwgRSggOCwgMzMpLAorICAgIEUoMzksIDQxKSwgRSgzOSwgNDkpLCBF KDQwLCAyMiksIEUoNDYsIDM4KSwgRSg1NSwgMzgpLCBFKDM0LCAgNCksCisgICAgRSggNiwgMzAp LCBFKDMwLCAgOCksIEUoMzQsICA5KSwgRSgzNywgIDMpLCBFKDI1LCAyNCksIEUoMzcsIDIyKSwK KyAgICBFKDMzLCA1MCksIEUoMjIsIDM3KSwgRSg0NCwgMzYpLCBFKDUyLCAzMSksIEUoMTcsIDI3 KSwgRSgzNSwgIDIpLAorICAgIEUoMzEsIDUwKSwgRSgzMCwgMjEpLCBFKDI0LCAzNiksIEUoMzUs IDMzKSwgRSgyMiwgMzgpLCBFKDYxLCAzMCksCisgICAgRSgzMiwgMTIpLCBFKCA5LCAzMSksIEUo NDUsIDM0KSwgRSgzNCwgMjApLCBFKDMxLCAxNSksIEUoMTksIDI5KSwKKyAgICBFKCA5LCAzMiks IEUoMzEsIDYyKSwgRSgxOCwgMzIpLCBFKDMzLCAxNyksIEUoMzMsICAxKSwgRSgzNywgMzQpLAor ICAgIEUoMzIsIDE1KSwgRSgyMiwgMzApLCBFKDI2LCAzMCksIEUoNTksIDMxKSwgRSgyOSwgIDkp LCBFKDM2LCA0MiksCisgICAgRSg0NiwgMzApLCBFKDMxLCAxMyksIEUoMzUsIDE3KSwgRSg1NCwg MzIpLCBFKDI5LCAxOSksIEUoNTcsIDMxKSwKKyAgICBFKDMwLCAyMCksIEUoNTAsIDMxKSwgRSgg MywgMzApLCBFKDMxLCAgNyksIEUoNjMsICAxKSwgRSgzNCwgMTcpLAorICAgIEUoNDcsIDM0KSwg RSg0MSwgMzcpLCBFKDM1LCA2MyksIEUoNDAsIDI1KSwgRSgyNSwgMzApLCBFKDM3LCAyOCksCisg ICAgRSggMSwgMzEpLCBFKDI2LCAyOCksIEUoMjIsIDM0KSwgRSgzNSwgMzcpLCBFKDM0LCAzMiks IEUoNjAsIDMyKSwKKyAgICBFKDI3LCAzMCksIEUoMzcsIDE5KSwgRSgyOCwgNDQpLCBFKDMwLCAg MSksIEUoNTAsIDI4KSwgRSgxNCwgMjgpLAorICAgIEUoMjgsIDQ4KSwgRSg1NSwgMzApLCBFKCA2 LCAzNCksIEUoMjMsIDQxKSwgRSgxOSwgNDEpLCBFKDE0LCAzOCksCisgICAgRSgzMCwgMTIpLCBF KCAzLCAyNyksIEUoMzAsIDE1KSwgRSgyOCwgIDApLCBFKDI4LCAxNiksIEUoNjEsIDM0KSwKKyAg ICBFKDYxLCAzNSksIEUoNDcsIDM4KSwgRSg0NSwgMjgpLCBFKDQ4LCAyOSksIEUoNDAsIDQwKSwg RSg0MCwgNDIpLAorICAgIEUoMzQsIDUxKSwgRSgzNCwgNTIpLCBFKDI1LCA0NSksIEUoMzAsIDU0 KSwgRSgyOSwgNTkpLCBFKDM1LCA1OSksCisgICAgRSggNCwgNDIpLCBFKDUxLCAzMSksIEUoMTgs IDMxKSwgRSgzMSwgNDQpLCBFKDE0LCAzNCksIEUoMzcsIDI2KSwKKyAgICBFKDM2LCAzNSksIEUo MzcsIDM1KSwgRSgzMCwgMjYpLCBFKDMxLCA0MSksIEUoMzEsIDM5KSwgRSgyMywgMzIpLAorICAg IEUoMjMsIDI5KSwgRSgzOCwgNDApLCBFKDMxLCAxNiksIEUoMjQsIDM3KSwgRSgzMiwgNTIpLCBF KDMxLCA0OCksCisgICAgRSg1MCwgMzApLCBFKDI4LCAzNCksIEUoMzIsIDIxKSwgRSgzMywgMjAp LCBFKDMxLCAxOCksIEUoNDksIDMyKSwKKyAgICBFKDM0LCAzNyksIEUoMzMsIDI5KSwgRSgzMSwg MjkpLCBFKDQwLCAzMSksIEUoIDMsIDMzKSwgRSgyOCwgMjcpLAorICAgIEUoMjYsIDM1KSwgRSgy OCwgMjgpLCBFKDMzLCAzOSksIEUoMzQsIDI2KSwgRSgyNiwgNDQpLCBFKDUzLCAzNyksCisgICAg RSg1MCwgMjYpLCBFKDI2LCA0NiksIEUoNDEsIDI0KSwgRSgyNywgMTUpLCBFKDU5LCAzOSksIEUo MjcsIDIyKSwKKyAgICBFKDI5LCAzMSksIEUoMzgsIDQ2KSwgRSgzOSwgMTkpLCBFKCAzLCAzNSks IEUoNTAsIDM4KSwgRSg0MywgMTcpLAorICAgIEUoNDcsIDM3KSwgRSgyMywgMjMpLCBFKDMzLCA1 MiksIEUoNTUsIDU1KSwgRSgzNSwgNTApLCBFKDIxLCAzNyksCisgICAgRSgyMywgMjYpLCBFKDM1 LCAxMSksIEUoNjEsIDM3KSwgRSgzMywgMTIpLCBFKDQ2LCAyNCksIEUoNTIsIDMwKSwKKyAgICBF KDM1LCAxNiksIEUoMzQsIDEzKSwgRSgyNCwgMjIpLCBFKDMwLCAxMyksIEUoNDMsIDM2KSwgRSgx NiwgMzUpLAorICAgIEUoMzcsIDQwKSwgRSgyMSwgNDEpLCBFKCAyLCAzNCksIEUoNTQsIDMzKSwg RSgyNywgMzgpLCBFKCA5LCAyOSksCisgICAgRSgzMywgIDcpLCBFKDIzLCAyNSksIEUoMTksIDMw KSwgRSgzMiwgNTQpLCBFKDI5LCA0NSksIEUoMjksIDQ3KSwKKyAgICBFKDMzLCA0NiksIEUoMjgs IDQxKSwgRSgyNywgMjcpLCBFKDMyLCA0OSksIEUoMzksIDMwKSwgRSgzMywgMzEpLAorICAgIEUo NTksIDMyKSwgRSgzMiwgNDIpLCBFKDMzLCAyMiksIEUoNDcsIDI5KSwgRSg0OSwgMjkpLCBFKDMy LCA1OSksCisgICAgRSg0MCwgMzIpLCBFKDMxLCAyNCksIEUoMjcsIDM3KSwgRSgyMywgMzQpLCBF KDI4LCAzNyksIEUoMzYsIDI2KSwKKyAgICBFKDMyLCAgNyksIEUoMzgsIDMyKSwgRSgyOSwgMzMp LCBFKDE1LCAzMiksIEUoMzAsIDE2KSwgRSg0NywgMzApLAorICAgIEUoMzMsIDE0KSwgRSgyNywg MjYpLCBFKDI1LCAzOCksIEUoNTQsIDM0KSwgRSg0NCwgMzQpLCBFKDQ1LCAyOSksCisgICAgRSg1 MCwgMzQpLCBFKDU4LCAzMCksIEUoNTEsIDI5KSwgRSg0OCwgMzApLCBFKDMzLCA1NyksIEUoNTks IDMwKSwKKyAgICBFKCA2LCAzMiksIEUoMzQsIDIyKSwgRSgyNywgMjgpLCBFKDMxLCA0NSksIEUo MzAsIDI3KSwgRSgyNCwgMzMpLAorICAgIEUoMjYsIDI5KSwgRSgzMywgIDQpLCBFKDI0LCA0MSks IEUoNDUsIDI2KSwgRSgyMywgMzApLCBFKCAyLCAzMSksCisgICAgRSgyOCwgMjkpLCBFKDM1LCAz NiksIEUoMzAsIDI4KSwgRSgzNCwgNTMpLCBFKDMwLCA1MSksIEUoNTUsICA1KSwKKyAgICBFKDU1 LCAyMSksIEUoIDEsIDMwKSwgRSgyOSwgIDIpLCBFKDI5LCA2MyksIEUoMjYsIDQxKSwgRSgyOCwg MjApLAorICAgIEUoMjUsICAxKSwgRSgzMSwgNTYpLCBFKDM2LCAyMSksIEUoMjIsIDI0KSwgRSgx NywgMjUpLCBFKDMwLCAgNSksCisgICAgRSg1MiwgMjgpLCBFKCAyLCAzNSksIEUoNDQsIDI2KSwg RSg0NCwgMjgpLCBFKDU3LCAzMCksIEUoMjYsIDE4KSwKKyAgICBFKDYyLCAyOSksIEUoNDEsIDIz KSwgRSgzOSwgNDApLCBFKDU3LCAzNCksIEUoMjYsIDIwKSwgRSg0NiwgNDIpLAorICAgIEUoNDks IDM5KSwgRSgxMSwgMzQpLCBFKDE2LCAyOCksIEUoMTksIDYxKSwgRSggNSwgMzgpLCBFKDM0LCA0 NiksCisgICAgRSg1NywgMzMpLCBFKDEzLCAyOSksIEUoMjYsIDM5KSwgRSgzMywgNDQpLCBFKDEz LCAzMCksIEUoNDgsIDMxKSwKKyAgICBFKDMwLCA1MCksIEUoMTEsIDMzKSwgRSggNywgMzEpLCBF KDU2LCAzMiksIEUoMzQsIDE5KSwgRSgzMywgNDMpLAorICAgIEUoMzIsIDQ2KSwgRSgzNCwgNDEp LCBFKDQxLCAzMCksIEUoMzYsIDI4KSwgRSgzNCwgMzEpLCBFKDMzLCAzMyksCisgICAgRSgzMywg MzUpLCBFKDI2LCAzNCksIEUoMjgsIDI2KSwgRSgzMiwgMTMpLCBFKDQxLCAzNCksIEUoIDAsIDMy KSwKKyAgICBFKDMyLCA1NyksIEUoMzUsIDMwKSwgRSgzNSwgMzIpLCBFKDU1LCAzMiksIEUoMjYs IDQwKSwgRSggMCwgMzEpLAorICAgIEUoMjYsIDM3KSwgRSgzNSwgNDcpLCBFKCAxLCAgMSksIEUo NTEsIDM1KSwgRSgzMywgMTYpLCBFKDUzLCAzMSksCisgICAgRSgzMSwgIDApLCBFKDQ1LCAzNSks IEUoMTIsIDMzKSwgRSgyOSwgIDEpLCBFKDI5LCAxNyksIEUoMzYsIDI3KSwKKyAgICBFKCA1LCAz MiksIEUoMzgsIDM4KSwgRSg1OSwgMjcpLCBFKDM4LCA2MiksIEUoMzksICA5KSwgRSg1OCwgMzYp LAorICAgIEUoMzQsIDQyKSwgRSgzMSwgNDIpLCBFKDM2LCAzMSksIEUoNDcsIDMzKSwgRSgzMiwg NDcpLCBFKDE3LCAzMyksCisgICAgRSgzMSwgNjApLCBFKDMxLCAyMyksIEUoMzMsIDQxKSwgRSgz NCwgMzApLCBFKDM0LCAzNiksIEUoMzIsIDYwKSwKKyAgICBFKDI5LCAzNiksIEUoMzgsIDE3KSwg RSgyNSwgIDkpLCBFKDQ5LCA0OSksIEUoNTAsIDI0KSwgRSgyMiwgMjUpLAorICAgIEUoMjgsIDU0 KSwgRSg1OSwgMzQpLCBFKCA5LCAzOSksIEUoNTksIDM3KSwgRSggNywgIDMpLCBFKDI4LCAgMSks CisgICAgRSg1NSwgMjUpLCBFKDE3LCAzOCksIEUoIDQsIDM4KSwgRSgzNSwgNDQpLCBFKDUwLCAz NSksIEUoMjEsIDM2KSwKKyAgICBFKDI5LCAxMiksIEUoNDQsIDYwKSwgRSg0NywgMzYpLCBFKDE4 LCAzOCksIEUoMjQsIDQwKSwgRSgxOSwgMjUpLAorICAgIEUoMjUsIDQzKSwgRSgzMSwgMzEpLAor fTsKKworY29uc3QgdWludDhfdCBmZl9tc21wNF9tdl90YWJsZTFfbGVuc1tNU01QRUc0X01WX1RB QkxFU19OQl9FTEVNU10gPSB7CisgICAgIDIsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAx NSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTQsIDE0LCAxNCwKKyAgICAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LCAxMywgMTMsIDEzLCAxNCwgMTUsIDE1LCAxMSwgMTMsIDEzLCAxMiwgMTEsIDEw LAorICAgICA4LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDEzLCAxMywgMTIsIDEw LCAxMiwgMTIsIDEyLCAxMiwgMTAsCisgICAgMTQsIDE1LCAxNSwgMTMsIDEzLCAxMywgMTIsIDEy LCAxMSwgMTMsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKKyAgICAxNSwgMTUsIDE1 LCAxNSwgIDksICA2LCAgOSwgMTAsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUs IDE1LAorICAgIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCisgICAgMTQsIDE0LCAxMywgMTMsIDExLCAxMSwgMTIs IDEzLCAxMywgMTEsIDEyLCAxMywgMTMsIDEwLCAgNywgIDgsIDEwLCAxNCwKKyAgICAxNSwgMTUs IDE0LCAxNCwgMTIsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxMywg MTMsIDEzLAorICAgIDEzLCAxMywgMTIsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywg IDgsICA5LCAgOSwgIDUsIDEzLCAxNCwgMTQsCisgICAgMTIsIDEyLCAxNCwgMTQsIDE0LCAxNCwg MTAsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxMywKKyAgICAxMiwg MTIsIDEyLCAxMSwgMTAsIDExLCAxMywgMTMsIDEzLCAxMywgMTIsIDEyLCAxMiwgMTMsIDE0LCAx NCwgMTEsIDEyLAorICAgIDE0LCAxNCwgMTQsIDE0LCAgNywgIDgsICA5LCAxMCwgMTQsIDE0LCAx MywgMTIsIDExLCAgNywgIDgsIDEwLCAxMywgMTQsCisgICAgMTQsIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsIDEzLCAxMywgMTIsIDExLCAxMywgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKKyAgICAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsICA4LCAxMywgMTMsIDEzLCAxMywgMTIsIDEy LCAxMCwgMTAsIDEwLAorICAgIDEwLCAxMSwgMTQsIDE0LCAxMywgMTMsIDEzLCAxMiwgMTMsIDE0 LCAxNCwgMTEsIDEwLCAgOSwgMTAsIDE0LCAxNCwgMTQsCisgICAgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEzLCAgOCwgMTEsIDEyLCAxMywgMTMsIDEwLCAxMCwKKyAg ICAxMCwgIDgsICA4LCAxMywgMTMsIDEyLCAxMiwgMTIsIDEwLCAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LAorICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEzLCAxMywgMTMs IDEzLCAxMywgMTMsIDEyLCAgOCwgIDksIDEwLCAxMywgMTMsCisgICAgMTMsIDEzLCAxMywgMTMs IDE0LCAxNCwgMTQsIDE0LCAxMCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwK KyAgICAxNCwgMTMsIDEzLCAxMywgIDksIDEzLCAxMywgMTMsIDEzLCAxMiwgMTIsIDEyLCAxMywg MTMsIDExLCAxMCwgMTAsIDEwLAorICAgIDExLCAxMywgMTMsIDEzLCAxMywgIDksICA0LCAxMiwg MTIsIDEyLCAxMiwgMTAsIDEwLCAxMywgMTQsIDE0LCAxNCwgMTQsCisgICAgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxMywgMTMsIDExLCAx MCwKKyAgICAxMywgMTMsIDEzLCAxMywgMTIsIDEyLCAxMCwgIDksIDEzLCAxMywgMTIsIDExLCAx MSwgMTMsIDE0LCAxNCwgMTIsIDExLAorICAgIDEyLCAxNCwgMTQsIDE0LCAxNCwgMTAsIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEzLCAxMywgMTMsCisgICAgMTMsIDEzLCAx MywgMTMsIDEyLCAxMiwgMTAsIDEwLCAgOSwgMTEsIDEyLCAxMiwgMTAsIDEyLCAxMywgMTMsIDEx LCAxMywKKyAgICAxMywgMTMsIDEzLCAxMSwgIDksIDExLCAxMywgMTQsIDE0LCAxMiwgMTAsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAorICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxMywgMTMsIDEzLCAxMywgMTIsCisgICAgMTIsIDEy LCAxMiwgMTIsIDEwLCAgNSwgIDQsIDEyLCAxMiwgMTMsIDEzLCAxMywgMTMsIDEwLCAxMywgMTMs IDEzLCAxMywKKyAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMiwgMTIsIDEyLCAxMSwgMTEs IDEwLCAgOSwgMTEsIDExLCAxMiwgMTQsIDE0LAorICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LCAgOSwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCisgICAgMTQs IDE0LCAxNCwgMTQsIDE0LCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEyLCAxMSwg MTIsIDEyLCAxMSwKKyAgICAxMiwgMTMsIDEzLCAxMCwgMTMsIDEzLCAxMywgMTMsIDEyLCAxMiwg MTEsIDEyLCAxMiwgMTQsIDE0LCAxNCwgMTQsIDE0LAorICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgIDksIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCisgICAg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAx MiwgIDgsIDEwLCAxMCwKKyAgICAxMywgMTMsIDEyLCAxMiwgMTIsIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsIDEzLCAxMywgMTIsIDEyLCAxMSwgMTIsIDEyLAorICAgIDExLCAxMCwgMTEsIDExLCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCisg ICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEz LCAxMiwgMTEsIDEwLCAxMCwKKyAgICAxMywgMTMsIDEyLCAxMiwgMTMsIDEzLCAxMCwgMTMsIDEz LCAxMywgMTMsIDExLCAgOSwgMTIsIDEzLCAxNCwgMTQsIDEyLAorICAgIDEyLCAxMiwgMTIsIDEx LCAxMCwgMTAsIDEyLCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs CisgICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxMywgMTMsIDEyLCAxMiwgMTAsIDExLCAxMywgMTQs IDE0LCAxMiwgMTEsIDExLCAxMiwKKyAgICAxMywgMTMsIDExLCAgOSwgMTMsIDEzLCAxMywgMTMs IDEzLCAxMywgMTIsIDExLCAxMSwgMTAsIDExLCAxMSwgMTEsIDExLAorICAgIDEwLCAgNCwgMTEs IDExLCAxMiwgMTQsIDE0LCAxNCwgMTQsIDExLCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsCisgICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKKyAgICAxMywgMTMsIDEzLCAgOCwgMTMsIDEzLCAxMywg MTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEyLCAxMiwgMTIsIDExLAorICAgIDEyLCAxMiwg MTEsIDExLCAxNCwgMTQsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsCisgICAgMTMsIDEzLCAxNCwgMTQsIDExLCAxMiwgMTIsIDEyLCAxMiwgMTEsICA2LCAx MCwgMTEsIDE0LCAxNCwgMTQsIDE0LCAxNCwKKyAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAorICAgIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxMywgMTMsIDEzLCAxMywgMTMsIDExLCAxMSwgMTEsIDEx LCAxMCwgMTAsCisgICAgMTIsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEwLCAxMCwgMTMsIDEz LCAxMiwgMTEsICA4LCAgOCwgMTEsIDExLCAxMiwKKyAgICAxMiwgMTEsIDEwLCAxMSwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAgOCwgMTQsIDE0LCAxNCwgMTQsIDE0LAorICAgIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LCAxNCwgMTQsCisgICAgMTQsIDE0LCAxNCwgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMs IDEzLCAxMywgMTMsIDEzLCAxMiwgMTIsIDExLCAgNSwKKyAgICAxMCwgMTEsIDEyLCAxMywgMTMs IDEwLCAxMCwgMTEsIDEyLCAxMiwgMTIsIDEyLCAxMSwgIDksICA4LCAxMiwgMTMsIDEzLAorICAg IDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEyLCAxMiwg MTIsIDEyLCAxMSwgMTEsCisgICAgMTIsIDEzLCAxNCwgMTQsIDEyLCAxMiwgMTEsIDExLCAxMCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKKyAgICAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAor ICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsIDEzLCAxMywgMTIsCisgICAgMTIsIDEyLCAxMiwgMTEsICA3LCAgNSwgIDgsIDExLCAx MiwgMTIsIDEyLCAxMiwgMTEsICA5LCAgNywgMTMsIDEzLCAxMywKKyAgICAxMywgMTMsIDEzLCAx MywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEyLCAxMCwgMTIsIDE0LCAxNCwgMTQsIDE0 LAorICAgIDEyLCAxMiwgIDksIDEyLCAxMiwgMTIsIDEyLCAxMSwgMTEsICA4LCAxMCwgMTAsIDEx LCAxNCwgMTQsIDE0LCAxNCwgMTQsCisgICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKKyAgICAxNCwgIDQsCit9 OworCiBzdGF0aWMgY29uc3QgdWludDE2X3QgdGFibGUwX212X2NvZGVbMTEwMF0gPSB7CiAgICAg MHgwMDAxLCAweDAwMDMsIDB4MDAwNSwgMHgwMDA3LCAweDAwMDMsIDB4MDAwOCwgMHgwMDBjLCAw eDAwMDEsCiAgICAgMHgwMDAyLCAweDAwMWIsIDB4MDAwNiwgMHgwMDBiLCAweDAwMTUsIDB4MDAw MiwgMHgwMDBlLCAweDAwMGYsCkBAIC0xMDQ1LDcgKzE1NTQsNiBAQCBzdGF0aWMgY29uc3QgdWlu dDhfdCB0YWJsZTBfbXZ5WzEwOTldID0gewogICAgIDI1LCAyNywgMjgsCiB9OwogCi0vKiBtb3Rp b24gdmVjdG9yIHRhYmxlIDEgKi8KIHN0YXRpYyBjb25zdCB1aW50MTZfdCB0YWJsZTFfbXZfY29k ZVsxMTAwXSA9IHsKICAgICAweDAwMDAsIDB4MDAwNywgMHgwMDA5LCAweDAwMGYsIDB4MDAwYSwg MHgwMDExLCAweDAwMWEsIDB4MDAxYywKICAgICAweDAwMTEsIDB4MDAzMSwgMHgwMDI1LCAweDAw MmQsIDB4MDAyZiwgMHgwMDZmLCAweDAwNzUsIDB4MDA0MSwKZGlmZiAtLWdpdCBhL2xpYmF2Y29k ZWMvbXNtcGVnNGRhdGEuaCBiL2xpYmF2Y29kZWMvbXNtcGVnNGRhdGEuaAppbmRleCA0OTIxNTQ4 ZDBjLi4yMjE3YjVlYTQ4IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21zbXBlZzRkYXRhLmgKKysr IGIvbGliYXZjb2RlYy9tc21wZWc0ZGF0YS5oCkBAIC01OCw3ICs1OCwxMiBAQCBleHRlcm4gY29u c3QgdWludDhfdCBmZl93bXYxX3lfZGNfc2NhbGVfdGFibGVbMzJdOwogZXh0ZXJuIGNvbnN0IHVp bnQ4X3QgZmZfd212MV9jX2RjX3NjYWxlX3RhYmxlWzMyXTsKIGV4dGVybiBjb25zdCB1aW50OF90 IGZmX29sZF9mZl95X2RjX3NjYWxlX3RhYmxlWzMyXTsKIAotI2RlZmluZSBNU01QRUc0X01WX1RB QkxFU19OQl9FTEVNUyAxMDk5CisjZGVmaW5lIE1TTVBFRzRfTVZfVEFCTEVTX05CX0VMRU1TIDEx MDAKKy8vLyBUaGUgZW50cmllcyBhcmUgb2YgdGhlIGZvcm0gKDggPDwgbXZ4KSB8IG12eS4gRXNj YXBlIHZhbHVlIGlzIHplcm8uCitleHRlcm4gY29uc3QgdWludDE2X3QgZmZfbXNtcDRfbXZfdGFi bGUwW01TTVBFRzRfTVZfVEFCTEVTX05CX0VMRU1TXTsKK2V4dGVybiBjb25zdCB1aW50OF90ICBm Zl9tc21wNF9tdl90YWJsZTBfbGVuc1tNU01QRUc0X01WX1RBQkxFU19OQl9FTEVNU107CitleHRl cm4gY29uc3QgdWludDE2X3QgZmZfbXNtcDRfbXZfdGFibGUxW01TTVBFRzRfTVZfVEFCTEVTX05C X0VMRU1TXTsKK2V4dGVybiBjb25zdCB1aW50OF90ICBmZl9tc21wNF9tdl90YWJsZTFfbGVuc1tN U01QRUc0X01WX1RBQkxFU19OQl9FTEVNU107CiBleHRlcm4gTVZUYWJsZSBmZl9tdl90YWJsZXNb Ml07CiAKIGV4dGVybiBjb25zdCB1aW50OF90IGZmX3YyX21iX3R5cGVbOF1bMl07CmRpZmYgLS1n aXQgYS9saWJhdmNvZGVjL21zbXBlZzRkZWMuYyBiL2xpYmF2Y29kZWMvbXNtcGVnNGRlYy5jCmlu ZGV4IGFhYzEyODgyZDcuLmI2MGUyMThmNmEgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXNtcGVn NGRlYy5jCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGRlYy5jCkBAIC00Niw2ICs0Niw4IEBACiAK ICNkZWZpbmUgREVGQVVMVF9JTlRFUl9JTkRFWCAzCiAKK3N0YXRpYyBjb25zdCBWTENFbGVtICpt dl90YWJsZXNbMl07CisKIHN0YXRpYyBpbmxpbmUgaW50IG1zbXBlZzR2MV9wcmVkX2RjKE1wZWdF bmNDb250ZXh0ICogcywgaW50IG4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQzMl90ICoqZGNfdmFsX3B0cikKIHsKQEAgLTMwMCw3ICszMDIsNiBAQCBzdGF0aWMgYXZf Y29sZCB2b2lkIG1zbXBlZzRfZGVjb2RlX2luaXRfc3RhdGljKHZvaWQpCiB7CiAgICAgc3RhdGlj IFZMQ0VsZW0gdmxjX2J1ZlszNzE0ICsgMjY5NCArIDE2MzYgKyAyNjQ4ICsgMTUzMiArIDI0ODhd OwogICAgIFZMQ0luaXRTdGF0ZSBzdGF0ZSA9IFZMQ19JTklUX1NUQVRFKHZsY19idWYpOwotICAg IE1WVGFibGUgKm12OwogCiAgICAgSU5JVF9GSVJTVF9WTENfUkwoZmZfcmxfdGFibGVbMF0sIDY0 Mik7CiAgICAgSU5JVF9GSVJTVF9WTENfUkwoZmZfcmxfdGFibGVbMV0sIDExMDQpOwpAQCAtMzI2 LDE4ICszMjcsMTYgQEAgc3RhdGljIGF2X2NvbGQgdm9pZCBtc21wZWc0X2RlY29kZV9pbml0X3N0 YXRpYyh2b2lkKQogICAgICAgICAgICAgICAgICAgICAgICAgICAmZmZfdjJfbWJfdHlwZVswXVsx XSwgMiwgMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZmX3YyX21iX3R5cGVbMF1bMF0s IDIsIDEsIDApOwogCi0gICAgbXYgPSAmZmZfbXZfdGFibGVzWzBdOwotICAgIG12LT52bGMgPSBm Zl92bGNfaW5pdF90YWJsZXNfc3BhcnNlKCZzdGF0ZSwgTVZfVkxDX0JJVFMsCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVMg KyAxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG12LT50YWJsZV9t dl9iaXRzLCAxLCAxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG12 LT50YWJsZV9tdl9jb2RlLCAyLCAyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIDAsIDAsIDApOwotICAgIG12ID0gJmZmX212X3RhYmxlc1sxXTsKLSAgICBt di0+dmxjID0gZmZfdmxjX2luaXRfdGFibGVzX3NwYXJzZSgmc3RhdGUsIE1WX1ZMQ19CSVRTLAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1TTVBFRzRfTVZfVEFCTEVT X05CX0VMRU1TICsgMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt di0+dGFibGVfbXZfYml0cywgMSwgMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBtdi0+dGFibGVfbXZfY29kZSwgMiwgMiwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAwLCAwLCAwKTsKKyAgICBtdl90YWJsZXNbMF0gPSBmZl92 bGNfaW5pdF90YWJsZXNfZnJvbV9sZW5ndGhzKCZzdGF0ZSwgTVZfVkxDX0JJVFMsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNU01QRUc0X01WX1RB QkxFU19OQl9FTEVNUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZmX21zbXA0X212X3RhYmxlMF9sZW5zLCAxLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmZfbXNtcDRfbXZfdGFibGUwLCAyLCAy LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwg MCk7CisgICAgbXZfdGFibGVzWzFdID0gZmZfdmxjX2luaXRfdGFibGVzX2Zyb21fbGVuZ3Rocygm c3RhdGUsIE1WX1ZMQ19CSVRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVMsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZl9tc21wNF9tdl90YWJsZTFf bGVucywgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZmX21zbXA0X212X3RhYmxlMSwgMiwgMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDApOwogCiAgICAgZm9yICh1bnNpZ25lZCBpID0g MDsgaSA8IDQ7IGkrKykgewogICAgICAgICBmZl9tYl9ub25faW50cmFfdmxjW2ldID0KQEAgLTgx NywxOCArODE2LDE3IEBAIGludCBmZl9tc21wZWc0X2RlY29kZV9ibG9jayhNcGVnRW5jQ29udGV4 dCAqIHMsIGludDE2X3QgKiBibG9jaywKIAogdm9pZCBmZl9tc21wZWc0X2RlY29kZV9tb3Rpb24o TXBlZ0VuY0NvbnRleHQgKnMsIGludCAqbXhfcHRyLCBpbnQgKm15X3B0cikKIHsKLSAgICBjb25z dCBNVlRhYmxlICptdjsKLSAgICBpbnQgY29kZSwgbXgsIG15OwotCi0gICAgbXYgPSAmZmZfbXZf dGFibGVzW3MtPm12X3RhYmxlX2luZGV4XTsKKyAgICBjb25zdCBWTENFbGVtICpjb25zdCBtdl92 bGMgPSBtdl90YWJsZXNbcy0+bXZfdGFibGVfaW5kZXhdOworICAgIGludCBzeW0sIG14LCBteTsK IAotICAgIGNvZGUgPSBnZXRfdmxjMigmcy0+Z2IsIG12LT52bGMsIE1WX1ZMQ19CSVRTLCAyKTsK LSAgICBpZiAoY29kZSA9PSBNU01QRUc0X01WX1RBQkxFU19OQl9FTEVNUykgeworICAgIHN5bSA9 IGdldF92bGMyKCZzLT5nYiwgbXZfdmxjLCBNVl9WTENfQklUUywgMik7CisgICAgaWYgKHN5bSkg eworICAgICAgICBteCA9IHN5bSA+PiA4OworICAgICAgICBteSA9IHN5bSAmIDB4RkY7CisgICAg fSBlbHNlIHsKKyAgICAgICAgLyogRXNjYXBlICovCiAgICAgICAgIG14ID0gZ2V0X2JpdHMoJnMt PmdiLCA2KTsKICAgICAgICAgbXkgPSBnZXRfYml0cygmcy0+Z2IsIDYpOwotICAgIH0gZWxzZSB7 Ci0gICAgICAgIG14ID0gbXYtPnRhYmxlX212eFtjb2RlXTsKLSAgICAgICAgbXkgPSBtdi0+dGFi bGVfbXZ5W2NvZGVdOwogICAgIH0KIAogICAgIG14ICs9ICpteF9wdHIgLSAzMjsKZGlmZiAtLWdp dCBhL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jIGIvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmMKaW5k ZXggYjVkYTk4ZjAzYi4uNWNlNTRhOGQxNiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0 ZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmMKQEAgLTY3LDcgKzY3LDcgQEAgc3Rh dGljIGF2X2NvbGQgdm9pZCBpbml0X212X3RhYmxlKGNvbnN0IE1WVGFibGUgKnRhYiwgdWludDMy X3QgbXZfdmVjdG9yX3RhYmxlWzQKICAgICAgICAgbXZfdmVjdG9yX3RhYmxlW2ldID0gKGVzY2Fw ZV9jb2RlIDw8IDIwKSB8IChpIDw8IDgpIHwgZXNjYXBlX2xlbmd0aDsKICAgICB9CiAKLSAgICBm b3IgKGkgPSAwOyBpIDwgTVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVM7IGkrKykgeworICAgIGZv ciAoaSA9IDA7IGkgPCBNU01QRUc0X01WX1RBQkxFU19OQl9FTEVNUyAtIDE7IGkrKykgewogICAg ICAgICB4ID0gdGFiLT50YWJsZV9tdnhbaV07CiAgICAgICAgIHkgPSB0YWItPnRhYmxlX212eVtp XTsKICAgICAgICAgbXZfdmVjdG9yX3RhYmxlWyh4IDw8IDYpIHwgeV0gPSAodGFiLT50YWJsZV9t dl9jb2RlW2ldIDw8IDgpIHwgdGFiLT50YWJsZV9tdl9iaXRzW2ldOwotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0046-avcodec-msmpeg4enc-Avoid-using-MVTable.patch" Content-Disposition: attachment; filename="0046-avcodec-msmpeg4enc-Avoid-using-MVTable.patch" Content-Transfer-Encoding: base64 RnJvbSAyYjE0YmQxODU4ZGU1ZTE0MWE5ZDYzYjA2MDFiNjlhMGU4OWIxMmU0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAxNSBNYXIgMjAyNSAxMTowODozOCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDYvNzddIGF2Y29kZWMvbXNtcGVnNGVuYzogQXZvaWQgdXNpbmcgTVZUYWJs ZQoKU3dpdGNoIHRvIHVzaW5nIHRoZSBsZW5ndGgrc3ltYm9sIHRhYmxlIGNvbWJpbmF0aW9uIHRo YXQgaXMKYWxzbyB1c2VkIGJ5IHRoZSBkZWNvZGVyIGFuZCByZW1vdmUgTVZUYWJsZSBhcyB3ZWxs IGFzCnRoZSBvbGQgdGFibGVzIGFsdG9nZXRoZXIuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJo ZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVj L21zbXBlZzRkYXRhLmMgfCAxMTM5IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiBsaWJhdmNvZGVjL21zbXBlZzRkYXRhLmggfCAgIDExIC0KIGxpYmF2Y29kZWMvbXNtcGVn NGVuYy5jICB8ICAgMjQgKy0KIDMgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTE1 OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRkYXRhLmMgYi9s aWJhdmNvZGVjL21zbXBlZzRkYXRhLmMKaW5kZXggYWFjNzVhYmQ3Yy4uYjM2MDNmN2RiMSAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0ZGF0YS5jCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVn NGRhdGEuYwpAQCAtOTkwLDExNDUgKzk5MCw2IEBAIGNvbnN0IHVpbnQ4X3QgZmZfbXNtcDRfbXZf dGFibGUxX2xlbnNbTVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVNdID0gewogICAgIDE0LCAgNCwK IH07CiAKLXN0YXRpYyBjb25zdCB1aW50MTZfdCB0YWJsZTBfbXZfY29kZVsxMTAwXSA9IHsKLSAg ICAweDAwMDEsIDB4MDAwMywgMHgwMDA1LCAweDAwMDcsIDB4MDAwMywgMHgwMDA4LCAweDAwMGMs IDB4MDAwMSwKLSAgICAweDAwMDIsIDB4MDAxYiwgMHgwMDA2LCAweDAwMGIsIDB4MDAxNSwgMHgw MDAyLCAweDAwMGUsIDB4MDAwZiwKLSAgICAweDAwMTQsIDB4MDAyMCwgMHgwMDIyLCAweDAwMjUs IDB4MDAyNywgMHgwMDI5LCAweDAwMmQsIDB4MDA0YiwKLSAgICAweDAwNGQsIDB4MDAwMywgMHgw MDIyLCAweDAwMjMsIDB4MDAyNSwgMHgwMDI3LCAweDAwNDIsIDB4MDA0OCwKLSAgICAweDAwNDks IDB4MDA1MCwgMHgwMDVjLCAweDAwOTEsIDB4MDA5ZiwgMHgwMDBlLCAweDAwNDMsIDB4MDA0YywK LSAgICAweDAwNTQsIDB4MDA1NiwgMHgwMDhjLCAweDAwOTgsIDB4MDA5YSwgMHgwMDliLCAweDAw YjEsIDB4MDBiMiwKLSAgICAweDAxMjAsIDB4MDEyMSwgMHgwMTI2LCAweDAxMzMsIDB4MDEzOSwg MHgwMWExLCAweDAxYTQsIDB4MDFhNSwKLSAgICAweDAxYTYsIDB4MDFhNywgMHgwMWFlLCAweDAx YWYsIDB4MDAwYiwgMHgwMDE5LCAweDAwODUsIDB4MDA5MCwKLSAgICAweDAwOWIsIDB4MDBhYSwg MHgwMGFmLCAweDAxMGMsIDB4MDEwZSwgMHgwMTFjLCAweDAxMWUsIDB4MDEzMywKLSAgICAweDAx NDQsIDB4MDE2MCwgMHgwMTc0LCAweDAxNzUsIDB4MDE3NywgMHgwMTc4LCAweDAyNDksIDB4MDI0 YiwKLSAgICAweDAyNTIsIDB4MDI2MSwgMHgwMjY1LCAweDAyNzAsIDB4MDM1MiwgMHgwMzUzLCAw eDAzNTUsIDB4MDM1OSwKLSAgICAweDAwMTAsIDB4MDAxMSwgMHgwMDEzLCAweDAwMzQsIDB4MDAz NSwgMHgwMDM2LCAweDAwMzcsIDB4MDAzZCwKLSAgICAweDAwM2UsIDB4MDEwOSwgMHgwMTI2LCAw eDAxNTYsIDB4MDIxYSwgMHgwMjFlLCAweDAyM2EsIDB4MDIzZSwKLSAgICAweDAyOGUsIDB4MDI4 ZiwgMHgwMmNmLCAweDA0OTEsIDB4MDQ5NCwgMHgwNDlmLCAweDA0YTAsIDB4MDRhMywKLSAgICAw eDA0YTYsIDB4MDRhNywgMHgwNGFkLCAweDA0YWUsIDB4MDRjMCwgMHgwNGM0LCAweDA0YzYsIDB4 MDRjOCwKLSAgICAweDA0YzksIDB4MDRmNSwgMHgwNGY2LCAweDA0ZjcsIDB4MDY4MCwgMHgwNjgy LCAweDA2ODMsIDB4MDY4OCwKLSAgICAweDA2ODksIDB4MDY4ZCwgMHgwNjhlLCAweDA2OGYsIDB4 MDZhMiwgMHgwNmEzLCAweDA2YTksIDB4MDZiMCwKLSAgICAweDA2YjEsIDB4MDZiNCwgMHgwNmI1 LCAweDAwMjQsIDB4MDA2MCwgMHgwMDYzLCAweDAwNzgsIDB4MDA3OSwKLSAgICAweDAyMTEsIDB4 MDI0NCwgMHgwMjQ1LCAweDAyNDcsIDB4MDI0OCwgMHgwMjQ5LCAweDAyNGEsIDB4MDI0YiwKLSAg ICAweDAyNmIsIDB4MDJhZiwgMHgwMmI4LCAweDAyYmIsIDB4MDQzNiwgMHgwNDc2LCAweDA0Nzcs IDB4MDQ3ZSwKLSAgICAweDA0YzgsIDB4MDRjOSwgMHgwNGNhLCAweDA1MTQsIDB4MDU4NiwgMHgw NTg3LCAweDA1OTgsIDB4MDU5ZCwKLSAgICAweDA1ZDksIDB4MDVkYSwgMHgwOTIwLCAweDA5MjEs IDB4MDkzYiwgMHgwOTNjLCAweDA5M2QsIDB4MDk0MiwKLSAgICAweDA5NDMsIDB4MDk0NCwgMHgw OTQ1LCAweDA5NTksIDB4MDk1ZSwgMHgwOTVmLCAweDA5ODIsIDB4MDk4MywKLSAgICAweDA5OGUs IDB4MDk4ZiwgMHgwOWM0LCAweDA5ZTcsIDB4MDllOCwgMHgwOWU5LCAweDBkMDIsIDB4MGQxNywK LSAgICAweDBkMTgsIDB4MGQxOSwgMHgwZDQxLCAweDBkNDIsIDB4MGQ0MywgMHgwZDUwLCAweDBk NWYsIDB4MGQ2ZCwKLSAgICAweDBkNmUsIDB4MGQ2ZiwgMHgwMDUyLCAweDAwNTMsIDB4MDA1NCwg MHgwMDU1LCAweDAwNTYsIDB4MDA1NywKLSAgICAweDAwYzIsIDB4MDBjMywgMHgwMGM0LCAweDAw YzUsIDB4MDQxZSwgMHgwNDFmLCAweDA0MjAsIDB4MDQyMSwKLSAgICAweDA0OGMsIDB4MDQ4ZCwg MHgwNGQzLCAweDA0ZDQsIDB4MDRkNSwgMHgwNTVjLCAweDA1NWQsIDB4MDU3MiwKLSAgICAweDA1 NzMsIDB4MDU3NCwgMHgwNTc1LCAweDA4ZGUsIDB4MDhkZiwgMHgwOGZlLCAweDA4ZmYsIDB4MDk5 NiwKLSAgICAweDBhMzYsIDB4MGEzNywgMHgwYjA4LCAweDBiMDksIDB4MGIwYSwgMHgwYjBiLCAw eDBiMzIsIDB4MGIzMywKLSAgICAweDBiMzQsIDB4MGIzNSwgMHgwYjM2LCAweDBiMzcsIDB4MGIz OCwgMHgwYjM5LCAweDBiYjAsIDB4MGJmNywKLSAgICAweDBiZjgsIDB4MGJmOSwgMHgwYmZhLCAw eDBiZmIsIDB4MGJmYywgMHgwYmZkLCAweDBiZmUsIDB4MGJmZiwKLSAgICAweDEyNTQsIDB4MTI1 NSwgMHgxMjU2LCAweDEyNTcsIDB4MTI3MCwgMHgxMjcxLCAweDEyNzIsIDB4MTI3MywKLSAgICAw eDEyNzQsIDB4MTI3NSwgMHgxMmFiLCAweDEyYWMsIDB4MTJhZCwgMHgxMmFlLCAweDEyYWYsIDB4 MTJiMCwKLSAgICAweDEyYjEsIDB4MTMxNSwgMHgxMzE2LCAweDEzMTcsIDB4MTNiZiwgMHgxM2Mw LCAweDEzYzEsIDB4MTNjMiwKLSAgICAweDEzYzMsIDB4MTNjNCwgMHgxM2M1LCAweDEzYzYsIDB4 MTNjNywgMHgxM2M4LCAweDEzYzksIDB4MTNjYSwKLSAgICAweDEzY2IsIDB4MTNjYywgMHgxM2Nk LCAweDFhMDYsIDB4MWEwNywgMHgxYTI4LCAweDFhMjksIDB4MWEyYSwKLSAgICAweDFhMmIsIDB4 MWEyYywgMHgxYTJkLCAweDFhODAsIDB4MWFiYiwgMHgxYWJjLCAweDFhYmQsIDB4MWFkOCwKLSAg ICAweDFhZDksIDB4MDA5NCwgMHgwMDk1LCAweDAwOTYsIDB4MDA5NywgMHgwMGEwLCAweDAwYTEs IDB4MDBhMiwKLSAgICAweDAwYTMsIDB4MDgzMSwgMHgwODMyLCAweDA4MzMsIDB4MDgzNCwgMHgw ODM1LCAweDA4MzYsIDB4MDgzNywKLSAgICAweDA4MzgsIDB4MDgzOSwgMHgwODNhLCAweDA4M2Is IDB4MDkzOSwgMHgwOTNhLCAweDA5M2IsIDB4MDkzYywKLSAgICAweDA5M2QsIDB4MDkzZSwgMHgw OTNmLCAweDA5YTAsIDB4MDlhMSwgMHgwOWEyLCAweDA5YTMsIDB4MDlhNCwKLSAgICAweDA5YTUs IDB4MTFhYywgMHgxMWFkLCAweDExYWUsIDB4MTFhZiwgMHgxMWIwLCAweDExYjEsIDB4MTFiMiwK LSAgICAweDExYjMsIDB4MTFiNCwgMHgxMWI1LCAweDExYjYsIDB4MTFiNywgMHgxMWI4LCAweDEx YjksIDB4MTFiYSwKLSAgICAweDExYmIsIDB4MTMyZiwgMHgxNDU0LCAweDE0NTUsIDB4MTQ1Niwg MHgxNDU3LCAweDE0NTgsIDB4MTQ1OSwKLSAgICAweDE0NWEsIDB4MTQ1YiwgMHgxNDVjLCAweDE0 NWQsIDB4MTQ1ZSwgMHgxNDVmLCAweDE0NjAsIDB4MTQ2MSwKLSAgICAweDE0NjIsIDB4MTQ2Mywg MHgxNDY0LCAweDE0NjUsIDB4MTQ2NiwgMHgxNDY3LCAweDE0NjgsIDB4MTQ2OSwKLSAgICAweDE0 NmEsIDB4MTQ2YiwgMHgxN2RlLCAweDE3ZGYsIDB4MTdlMCwgMHgxN2UxLCAweDE3ZTIsIDB4MTdl MywKLSAgICAweDE3ZTQsIDB4MTdlNSwgMHgxN2U2LCAweDE3ZTcsIDB4MTdlOCwgMHgxN2U5LCAw eDE3ZWEsIDB4MTdlYiwKLSAgICAweDE3ZWMsIDB4MTdlZCwgMHgyNTQwLCAweDI1NDEsIDB4MjU0 MiwgMHgyNTQzLCAweDI1NDQsIDB4MjU0NSwKLSAgICAweDI1NDYsIDB4MjU0NywgMHgyNTQ4LCAw eDI1NDksIDB4MjU0YSwgMHgyNTRiLCAweDI1NGMsIDB4MjU0ZCwKLSAgICAweDI1NGUsIDB4MjU0 ZiwgMHgyNTUwLCAweDI1NTEsIDB4MjU1MiwgMHgyNTUzLCAweDI1NTQsIDB4MjU1NSwKLSAgICAw eDI2MjgsIDB4Mjc2NiwgMHgyNzY3LCAweDI3NjgsIDB4Mjc2OSwgMHgyNzZhLCAweDI3NmIsIDB4 Mjc2YywKLSAgICAweDI3NmQsIDB4Mjc2ZSwgMHgyNzZmLCAweDI3NzAsIDB4Mjc3MSwgMHgyNzcy LCAweDI3NzMsIDB4Mjc3NCwKLSAgICAweDI3NzUsIDB4Mjc3NiwgMHgyNzc3LCAweDI3NzgsIDB4 Mjc3OSwgMHgyNzdhLCAweDI3N2IsIDB4Mjc3YywKLSAgICAweDI3N2QsIDB4MzUwMywgMHgzNTQ0 LCAweDM1NDUsIDB4MzU0NiwgMHgzNTQ3LCAweDM1NjAsIDB4MzU2MSwKLSAgICAweDM1NjIsIDB4 MzU2MywgMHgzNTY0LCAweDM1NjUsIDB4MzU2NiwgMHgzNTY3LCAweDM1NjgsIDB4MzU2OSwKLSAg ICAweDM1NmEsIDB4MzU2YiwgMHgzNTZjLCAweDM1NmQsIDB4MzU2ZSwgMHgzNTZmLCAweDM1NzAs IDB4MzU3MSwKLSAgICAweDM1NzIsIDB4MzU3MywgMHgzNTc0LCAweDM1NzUsIDB4MDNmMCwgMHgx MDNkLCAweDEwM2UsIDB4MTAzZiwKLSAgICAweDEwNDAsIDB4MTA0MSwgMHgxMDQyLCAweDEwNDMs IDB4MTA0NCwgMHgxMDQ1LCAweDEwNDYsIDB4MTA0NywKLSAgICAweDEwNDgsIDB4MTA0OSwgMHgx MDRhLCAweDEwNGIsIDB4MTA0YywgMHgxMDRkLCAweDEwNGUsIDB4MTA0ZiwKLSAgICAweDEwNTAs IDB4MTA1MSwgMHgxMDUyLCAweDEwNTMsIDB4MTA1NCwgMHgxMDU1LCAweDEwNTYsIDB4MTA1NywK LSAgICAweDEwNTgsIDB4MTA1OSwgMHgxMDVhLCAweDEwNWIsIDB4MTA1YywgMHgxMDVkLCAweDEw NWUsIDB4MTA1ZiwKLSAgICAweDEwNjAsIDB4MTA2MSwgMHgxMjcwLCAweDEyNzEsIDB4MjFiOCwg MHgyMWI5LCAweDIxYmEsIDB4MjFiYiwKLSAgICAweDIxYmMsIDB4MjFiZCwgMHgyMWJlLCAweDIx YmYsIDB4MjFmMCwgMHgyMWYxLCAweDIxZjIsIDB4MjFmMywKLSAgICAweDIxZjQsIDB4MjFmNSwg MHgyMWY2LCAweDIxZjcsIDB4MjFmOCwgMHgyMWY5LCAweDIxZmEsIDB4MjFmYiwKLSAgICAweDIx ZmMsIDB4MjFmZCwgMHgyMWZlLCAweDIxZmYsIDB4MjM0MCwgMHgyMzQxLCAweDIzNDIsIDB4MjM0 MywKLSAgICAweDIzNDQsIDB4MjM0NSwgMHgyMzQ2LCAweDIzNDcsIDB4MjM0OCwgMHgyMzQ5LCAw eDIzNGEsIDB4MjM0YiwKLSAgICAweDIzNGMsIDB4MjM0ZCwgMHgyMzRlLCAweDIzNGYsIDB4MjM1 MCwgMHgyMzUxLCAweDIzNTIsIDB4MjM1MywKLSAgICAweDIzNTQsIDB4MjM1NSwgMHgyMzU2LCAw eDIzNTcsIDB4MjY1YywgMHgyZjg4LCAweDJmODksIDB4MmY4YSwKLSAgICAweDJmOGIsIDB4MmY4 YywgMHgyZjhkLCAweDJmOGUsIDB4MmY4ZiwgMHgyZjkwLCAweDJmOTEsIDB4MmY5MiwKLSAgICAw eDJmOTMsIDB4MmY5NCwgMHgyZjk1LCAweDJmOTYsIDB4MmY5NywgMHgyZjk4LCAweDJmOTksIDB4 MmY5YSwKLSAgICAweDJmOWIsIDB4MmY5YywgMHgyZjlkLCAweDJmOWUsIDB4MmY5ZiwgMHgyZmEw LCAweDJmYTEsIDB4MmZhMiwKLSAgICAweDJmYTMsIDB4MmZhNCwgMHgyZmE1LCAweDJmYTYsIDB4 MmZhNywgMHgyZmE4LCAweDJmYTksIDB4MmZhYSwKLSAgICAweDJmYWIsIDB4MmZhYywgMHgyZmFk LCAweDJmYWUsIDB4MmZhZiwgMHgyZmIwLCAweDJmYjEsIDB4MmZiMiwKLSAgICAweDJmYjMsIDB4 MmZiNCwgMHgyZmI1LCAweDJmYjYsIDB4MmZiNywgMHgyZmI4LCAweDJmYjksIDB4MmZiYSwKLSAg ICAweDJmYmIsIDB4NGM1MiwgMHg0YzUzLCAweDRlMjgsIDB4NGUyOSwgMHg0ZTJhLCAweDRlMmIs IDB4NGUyYywKLSAgICAweDRlMmQsIDB4NGUyZSwgMHg0ZTJmLCAweDRlMzAsIDB4NGUzMSwgMHg0 ZTMyLCAweDRlMzMsIDB4NGUzNCwKLSAgICAweDRlMzUsIDB4NGUzNiwgMHg0ZTM3LCAweDRlMzgs IDB4NGUzOSwgMHg0ZTNhLCAweDRlM2IsIDB4NGUzYywKLSAgICAweDRlM2QsIDB4NGUzZSwgMHg0 ZTNmLCAweDRlODAsIDB4NGU4MSwgMHg0ZTgyLCAweDRlODMsIDB4NGU4NCwKLSAgICAweDRlODUs IDB4NGU4NiwgMHg0ZTg3LCAweDRlODgsIDB4NGU4OSwgMHg0ZThhLCAweDRlOGIsIDB4NGU4YywK LSAgICAweDRlOGQsIDB4NGU4ZSwgMHg0ZThmLCAweDRlOTAsIDB4NGU5MSwgMHg0ZTkyLCAweDRl OTMsIDB4NGU5NCwKLSAgICAweDRlOTUsIDB4NGU5NiwgMHg0ZTk3LCAweDRlOTgsIDB4NGU5OSwg MHg0ZTlhLCAweDRlOWIsIDB4NGU5YywKLSAgICAweDRlOWQsIDB4NGU5ZSwgMHg0ZTlmLCAweDRl YTAsIDB4NGVhMSwgMHg0ZWEyLCAweDRlYTMsIDB4NGVhNCwKLSAgICAweDRlYTUsIDB4NGVhNiwg MHg0ZWE3LCAweDRlYTgsIDB4NGVhOSwgMHg0ZWFhLCAweDRlYWIsIDB4NGVhYywKLSAgICAweDRl YWQsIDB4NGVhZSwgMHg0ZWFmLCAweDRlYjAsIDB4NGViMSwgMHg0ZWIyLCAweDRlYjMsIDB4NGVi NCwKLSAgICAweDRlYjUsIDB4NGViNiwgMHg0ZWI3LCAweDRlYjgsIDB4NGViOSwgMHg0ZWJhLCAw eDRlYmIsIDB4NGViYywKLSAgICAweDRlYmQsIDB4NGViZSwgMHg0ZWJmLCAweDRlYzAsIDB4NGVj MSwgMHg0ZWMyLCAweDRlYzMsIDB4NGVjNCwKLSAgICAweDRlYzUsIDB4NGVjNiwgMHg0ZWM3LCAw eDRlYzgsIDB4NGVjOSwgMHg0ZWNhLCAweDRlY2IsIDB4NmEwNCwKLSAgICAweDZhMDUsIDB4MDdl MiwgMHgwN2UzLCAweDA3ZTQsIDB4MDdlNSwgMHgwN2U2LCAweDA3ZTcsIDB4MDdlOCwKLSAgICAw eDA3ZTksIDB4MDdlYSwgMHgwN2ViLCAweDA3ZWMsIDB4MDdlZCwgMHgwN2VlLCAweDA3ZWYsIDB4 MDdmMCwKLSAgICAweDA3ZjEsIDB4MDdmMiwgMHgwN2YzLCAweDA3ZjQsIDB4MDdmNSwgMHgwN2Y2 LCAweDA3ZjcsIDB4MDdmOCwKLSAgICAweDA3ZjksIDB4MDdmYSwgMHgwN2ZiLCAweDA3ZmMsIDB4 MDdmZCwgMHgwN2ZlLCAweDA3ZmYsIDB4MjAwMCwKLSAgICAweDIwMDEsIDB4MjAwMiwgMHgyMDAz LCAweDIwMDQsIDB4MjAwNSwgMHgyMDA2LCAweDIwMDcsIDB4MjAwOCwKLSAgICAweDIwMDksIDB4 MjAwYSwgMHgyMDBiLCAweDIwMGMsIDB4MjAwZCwgMHgyMDBlLCAweDIwMGYsIDB4MjAxMCwKLSAg ICAweDIwMTEsIDB4MjAxMiwgMHgyMDEzLCAweDIwMTQsIDB4MjAxNSwgMHgyMDE2LCAweDIwMTcs IDB4MjAxOCwKLSAgICAweDIwMTksIDB4MjAxYSwgMHgyMDFiLCAweDIwMWMsIDB4MjAxZCwgMHgy MDFlLCAweDIwMWYsIDB4MjAyMCwKLSAgICAweDIwMjEsIDB4MjAyMiwgMHgyMDIzLCAweDIwMjQs IDB4MjAyNSwgMHgyMDI2LCAweDIwMjcsIDB4MjAyOCwKLSAgICAweDIwMjksIDB4MjAyYSwgMHgy MDJiLCAweDIwMmMsIDB4MjAyZCwgMHgyMDJlLCAweDIwMmYsIDB4MjAzMCwKLSAgICAweDIwMzEs IDB4MjAzMiwgMHgyMDMzLCAweDIwMzQsIDB4MjAzNSwgMHgyMDM2LCAweDIwMzcsIDB4MjAzOCwK LSAgICAweDIwMzksIDB4MjAzYSwgMHgyMDNiLCAweDIwM2MsIDB4MjAzZCwgMHgyMDNlLCAweDIw M2YsIDB4MjA0MCwKLSAgICAweDIwNDEsIDB4MjA0MiwgMHgyMDQzLCAweDIwNDQsIDB4MjA0NSwg MHgyMDQ2LCAweDIwNDcsIDB4MjA0OCwKLSAgICAweDIwNDksIDB4MjA0YSwgMHgyMDRiLCAweDIw NGMsIDB4MjA0ZCwgMHgyMDRlLCAweDIwNGYsIDB4MjA1MCwKLSAgICAweDIwNTEsIDB4MjA1Miwg MHgyMDUzLCAweDIwNTQsIDB4MjA1NSwgMHgyMDU2LCAweDIwNTcsIDB4MjA1OCwKLSAgICAweDIw NTksIDB4MjA1YSwgMHgyMDViLCAweDIwNWMsIDB4MjA1ZCwgMHgyMDVlLCAweDIwNWYsIDB4MjA2 MCwKLSAgICAweDIwNjEsIDB4MjA2MiwgMHgyMDYzLCAweDIwNjQsIDB4MjA2NSwgMHgyMDY2LCAw eDIwNjcsIDB4MjA2OCwKLSAgICAweDIwNjksIDB4MjA2YSwgMHgyMDZiLCAweDIwNmMsIDB4MjA2 ZCwgMHgyMDZlLCAweDIwNmYsIDB4MjA3MCwKLSAgICAweDIwNzEsIDB4MjA3MiwgMHgyMDczLCAw eDIwNzQsIDB4MjA3NSwgMHgyMDc2LCAweDIwNzcsIDB4MjA3OCwKLSAgICAweDIwNzksIDB4NGNi YSwgMHg0Y2JiLCAweDVkODgsIDB4NWQ4OSwgMHg1ZDhhLCAweDVkOGIsIDB4NWQ4YywKLSAgICAw eDVkOGQsIDB4NWQ4ZSwgMHg1ZDhmLCAweDVkYjAsIDB4NWRiMSwgMHg1ZGIyLCAweDVkYjMsIDB4 NWRiNCwKLSAgICAweDVkYjUsIDB4NWRiNiwgMHg1ZGI3LCAweDVkYjgsIDB4NWRiOSwgMHg1ZGJh LCAweDVkYmIsIDB4NWRiYywKLSAgICAweDVkYmQsIDB4NWRiZSwgMHg1ZGJmLCAweDVlNDAsIDB4 NWU0MSwgMHg1ZTQyLCAweDVlNDMsIDB4NWU0NCwKLSAgICAweDVlNDUsIDB4NWU0NiwgMHg1ZTQ3 LCAweDVlNDgsIDB4NWU0OSwgMHg1ZTRhLCAweDVlNGIsIDB4NWU0YywKLSAgICAweDVlNGQsIDB4 NWU0ZSwgMHg1ZTRmLCAweDVlNTAsIDB4NWU1MSwgMHg1ZTUyLCAweDVlNTMsIDB4NWU1NCwKLSAg ICAweDVlNTUsIDB4NWU1NiwgMHg1ZTU3LCAweDVlNTgsIDB4NWU1OSwgMHg1ZTVhLCAweDVlNWIs IDB4NWU1YywKLSAgICAweDVlNWQsIDB4NWU1ZSwgMHg1ZTVmLCAweDVlNjAsIDB4NWU2MSwgMHg1 ZTYyLCAweDVlNjMsIDB4NWU2NCwKLSAgICAweDVlNjUsIDB4NWU2NiwgMHg1ZTY3LCAweDVlNjgs IDB4NWU2OSwgMHg1ZTZhLCAweDVlNmIsIDB4NWU2YywKLSAgICAweDVlNmQsIDB4NWU2ZSwgMHg1 ZTZmLCAweDVlNzAsIDB4NWU3MSwgMHg1ZTcyLCAweDVlNzMsIDB4NWU3NCwKLSAgICAweDVlNzUs IDB4NWU3NiwgMHg1ZTc3LCAweDVlNzgsIDB4NWU3OSwgMHg1ZTdhLCAweDVlN2IsIDB4NWU3YywK LSAgICAweDVlN2QsIDB4NWU3ZSwgMHg1ZTdmLCAweDVlODAsIDB4NWU4MSwgMHg1ZTgyLCAweDVl ODMsIDB4NWU4NCwKLSAgICAweDVlODUsIDB4NWU4NiwgMHg1ZTg3LCAweDVlODgsIDB4NWU4OSwg MHg1ZThhLCAweDVlOGIsIDB4NWU4YywKLSAgICAweDVlOGQsIDB4NWU4ZSwgMHg1ZThmLCAweDVl OTAsIDB4NWU5MSwgMHg1ZTkyLCAweDVlOTMsIDB4NWU5NCwKLSAgICAweDVlOTUsIDB4NWU5Niwg MHg1ZTk3LCAweDVlOTgsIDB4NWU5OSwgMHg1ZTlhLCAweDVlOWIsIDB4NWU5YywKLSAgICAweDVl OWQsIDB4NWU5ZSwgMHg1ZTlmLCAweDVlYTAsIDB4NWVhMSwgMHg1ZWEyLCAweDVlYTMsIDB4NWVh NCwKLSAgICAweDVlYTUsIDB4NWVhNiwgMHg1ZWE3LCAweDVlYTgsIDB4NWVhOSwgMHg1ZWFhLCAw eDVlYWIsIDB4NWVhYywKLSAgICAweDVlYWQsIDB4NWVhZSwgMHg1ZWFmLCAweDVlYjAsIDB4NWVi MSwgMHg1ZWIyLCAweDVlYjMsIDB4NWViNCwKLSAgICAweDVlYjUsIDB4NWViNiwgMHg1ZWI3LCAw eDVlYjgsIDB4NWViOSwgMHg1ZWJhLCAweDVlYmIsIDB4NWViYywKLSAgICAweDVlYmQsIDB4NWVi ZSwgMHg1ZWJmLCAweDVlYzAsIDB4NWVjMSwgMHg1ZWMyLCAweDVlYzMsIDB4NWVjNCwKLSAgICAw eDVlYzUsIDB4NWVjNiwgMHg1ZWM3LCAweDVlYzgsIDB4NWVjOSwgMHg1ZWNhLCAweDVlY2IsIDB4 NWVjYywKLSAgICAweDVlY2QsIDB4NWVjZSwgMHg1ZWNmLCAweDVlZDAsIDB4NWVkMSwgMHg1ZWQy LCAweDVlZDMsIDB4NWVkNCwKLSAgICAweDVlZDUsIDB4NWVkNiwgMHg1ZWQ3LCAweDVlZDgsIDB4 NWVkOSwgMHg1ZWRhLCAweDVlZGIsIDB4NWVkYywKLSAgICAweDVlZGQsIDB4NWVkZSwgMHg1ZWRm LCAweDVlZTAsIDB4NWVlMSwgMHg1ZWUyLCAweDVlZTMsIDB4NWVlNCwKLSAgICAweDVlZTUsIDB4 NWVlNiwgMHg1ZWU3LCAweDVlZTgsIDB4NWVlOSwgMHg1ZWVhLCAweDVlZWIsIDB4NWVlYywKLSAg ICAweDVlZWQsIDB4NWVlZSwgMHg1ZWVmLCAweDVlZjAsIDB4NWVmMSwgMHg1ZWYyLCAweDVlZjMs IDB4NWVmNCwKLSAgICAweDVlZjUsIDB4NWVmNiwgMHg1ZWY3LCAweDVlZjgsIDB4NWVmOSwgMHg1 ZWZhLCAweDVlZmIsIDB4NWVmYywKLSAgICAweDVlZmQsIDB4NWVmZSwgMHg1ZWZmLCAweDVmMDAs IDB4NWYwMSwgMHg1ZjAyLCAweDVmMDMsIDB4NWYwNCwKLSAgICAweDVmMDUsIDB4NWYwNiwgMHg1 ZjA3LCAweDVmMDgsIDB4NWYwOSwgMHg1ZjBhLCAweDVmMGIsIDB4NWYwYywKLSAgICAweDVmMGQs IDB4NWYwZSwgMHg1ZjBmLCAweDAwMDAsCi19OwotCi1zdGF0aWMgY29uc3QgdWludDhfdCB0YWJs ZTBfbXZfYml0c1sxMTAwXSA9IHsKLSAgICAgMSwgIDQsICA0LCAgNCwgIDUsICA1LCAgNSwgIDYs Ci0gICAgIDYsICA2LCAgNywgIDcsICA3LCAgOCwgIDgsICA4LAotICAgICA4LCAgOCwgIDgsICA4 LCAgOCwgIDgsICA4LCAgOCwKLSAgICAgOCwgIDksICA5LCAgOSwgIDksICA5LCAgOSwgIDksCi0g ICAgIDksICA5LCAgOSwgIDksICA5LCAxMCwgMTAsIDEwLAotICAgIDEwLCAxMCwgMTAsIDEwLCAx MCwgMTAsIDEwLCAxMCwKLSAgICAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAxMCwgMTAsCi0gICAg MTAsIDEwLCAxMCwgMTAsIDExLCAxMSwgMTEsIDExLAotICAgIDExLCAxMSwgMTEsIDExLCAxMSwg MTEsIDExLCAxMSwKLSAgICAxMSwgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsCi0gICAgMTEs IDExLCAxMSwgMTEsIDExLCAxMSwgMTEsIDExLAotICAgIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIs IDEyLCAxMiwKLSAgICAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsCi0gICAgMTIsIDEy LCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLAotICAgIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEy LCAxMiwKLSAgICAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsCi0gICAgMTIsIDEyLCAx MiwgMTIsIDEyLCAxMiwgMTIsIDEyLAotICAgIDEyLCAxMiwgMTIsIDEzLCAxMywgMTMsIDEzLCAx MywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxMywg MTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywK LSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxMywgMTMs IDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywKLSAg ICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0 LAotICAgIDE0LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAx NSwgMTUsIDE1LCAxNSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LAot ICAgIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAxNSwg MTUsIDE1LCAxNSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LAotICAg IDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAxNSwgMTUs IDE1LCAxNSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LAotICAgIDE1 LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1 LCAxNSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LAotICAgIDE1LCAx NSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAx NSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LAotICAgIDE1LCAxNSwg MTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwg MTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LAotICAgIDE1LCAxNSwgMTUs IDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUs Ci0gICAgMTUsIDE1LCAxNSwgMTUsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2 LCAxNiwgMTYsIDE2LCAxNiwKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0g ICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAx NiwgMTYsIDE2LCAxNiwKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYs IDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYs IDE2LCAxNiwKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2 LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2 LCAxNiwKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2LCAx NiwgMTYsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAx NiwKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2LCAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwK LSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2LCAxNiwgMTYs IDE2LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwKLSAg ICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2 LCAxNiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwKLSAgICAx NiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAx NiwgMTYsIDE2LAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwKLSAgICAxNiwg MTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwg MTYsIDE2LAotICAgIDE2LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3 LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3 LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAot ICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAg IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3 LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3 LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs Ci0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3 LCAxNywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0g ICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAg MTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcs IDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3 LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3 LCAxNywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAx NywgMTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAx NywKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywg MTcsIDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywK LSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsCi0gICAgMTcsIDE3LCAxNywgMTcs IDE3LCAxNywgMTcsIDE3LAotICAgIDE3LCAxNywgMTcsICA4LAotfTsKLQotc3RhdGljIGNvbnN0 IHVpbnQ4X3QgdGFibGUwX212eFsxMDk5XSA9IHsKLSAgICAzMiwgMzIsIDMxLCAzMiwgMzMsIDMx LCAzMywgMzEsCi0gICAgMzMsIDMyLCAzNCwgMzIsIDMwLCAzMiwgMzEsIDM0LAotICAgIDM1LCAz MiwgMzQsIDMzLCAyOSwgMzMsIDMwLCAzMCwKLSAgICAzMSwgMzEsIDM1LCAyOSwgMzMsIDM1LCAz MywgMzQsCi0gICAgMzEsIDI5LCAzMCwgMzQsIDMwLCAzNiwgMjgsIDMyLAotICAgIDM0LCAzNywg MzAsIDI3LCAzMiwgMjUsIDM5LCAzMiwKLSAgICAzNCwgMzIsIDM1LCAzNSwgMzUsIDMxLCAzNSwg MjksCi0gICAgMzIsIDI5LCAzMCwgMjksIDM3LCAyNywgMzYsIDM4LAotICAgIDM3LCAzMywgMzIs IDMxLCAyOSwgMzEsIDI4LCAzNiwKLSAgICAzMywgMzAsIDM0LCAzMywgMzMsIDI4LCAyNywgMjUs Ci0gICAgMzEsIDI2LCAzOSwgMzIsIDMyLCAzMSwgMzMsIDM5LAotICAgIDMxLCAzOCwgMjgsIDM2 LCAyMSwgMjMsIDQzLCAzNiwKLSAgICAzNCwgNDEsIDMwLCAyNSwgMjgsIDMxLCAzMCwgMzQsCi0g ICAgMzgsIDM1LCA2MSwgMzQsIDI4LCAzMCwgMzcsIDM3LAotICAgIDM1LCAyNywgMzYsICAzLCA1 OSwgMzgsIDM3LCAzMiwKLSAgICAzMSwgMjksIDI2LCAzMywgMzcsIDMzLCAyNywgMjcsCi0gICAg MzUsIDM0LCAzNCwgNDAsIDQyLCAzMywgMzIsIDI5LAotICAgICA0LCAgNSwgMjgsIDI0LCAyNSwg MzUsIDM5LCAzOCwKLSAgICAzMiwgMjMsIDI3LCAzMiwgMzAsIDM1LCAyNiwgMzQsCi0gICAgNjAs IDM2LCAyOSwgMjIsIDI2LCA0MSwgIDcsIDMwLAotICAgIDM4LCAzMCwgMzYsIDI5LCAzMCwgNDEs IDI2LCAyNSwKLSAgICAzMiwgMzQsIDI0LCAzOSwgIDEsIDI1LCAzOSwgMzIsCi0gICAgMjgsIDI5 LCAzMiwgMzgsIDI2LCAzNiwgMjgsIDYzLAotICAgIDI4LCAzOSwgMjMsIDIxLCAyNiwgMzUsIDMx LCAzNSwKLSAgICA1NywgMzEsIDI5LCAyOSwgMjgsIDMwLCAyNywgMzUsCi0gICAgIDIsIDM4LCA0 MCwgMzQsIDM3LCAyOSwgMzgsIDQzLAotICAgIDI2LCAzMiwgMzMsIDQyLCAyNCwgNDAsIDI4LCAz MiwKLSAgICAzMiwgMzIsIDM2LCAzMiwgNDMsIDI1LCAyMSwgMzEsCi0gICAgMzAsIDMxLCA0MSwg MjksIDMzLCAzNywgMjYsIDM3LAotICAgIDI3LCA1OSwgMjMsIDMzLCAzNSwgMzEsIDMxLCAzNywK LSAgICAzOCwgMzksIDMyLCAyMywgMzIsIDI3LCAzNywgMzYsCi0gICAgMzEsIDQwLCAyNSwgMjcs IDM4LCAzMSwgMzYsIDI4LAotICAgIDMxLCAzNiwgMjUsIDQ1LCAgMywgMzQsIDM4LCAzOSwKLSAg ICA0MCwgMzgsIDMwLCAzMiwgMTksIDI0LCAyNSwgMjYsCi0gICAgNDUsIDIwLCAyNCwgMzMsIDMz LCAzMSwgNDEsIDM0LAotICAgIDM5LCA0NywgNDAsIDU4LCA1OSwgNDEsIDMzLCAgMywKLSAgICAx NywgNjEsIDQyLCAzMCwgMjYsIDI5LCAzNiwgNjEsCi0gICAgMzMsIDM3LCA2MiwgMjgsIDI1LCAz OCwgMjUsIDM4LAotICAgIDE3LCAyMywgMzQsIDMzLCAyMSwgMzMsIDQ5LCAyNywKLSAgICAzMiwg MjMsIDI3LCAyMiwgMjQsIDIyLCAzOSwgNDMsCi0gICAgMjcsIDM3LCAgNiwgNDIsIDQ3LCAyNiwg MzAsIDMxLAotICAgIDQxLCAzOSwgMzMsIDIyLCA0NSwgMzYsIDMyLCA0NSwKLSAgICAxOSwgMjIs IDMwLCAgNSwgIDUsIDE3LCAyOSwgMjIsCi0gICAgMzEsIDMxLCA0MywgMzcsIDI3LCAzMiwgMzIs IDMyLAotICAgIDMzLCAzNCwgNDMsIDM1LCAyOSwgMjYsIDIyLCAzMiwKLSAgICAxOSwgMzIsIDI1 LCAzMSwgNDEsIDQ5LCAyOCwgMzQsCi0gICAgMjgsIDM5LCAzNCwgMTksIDM3LCAzOCwgMjksIDIx LAotICAgIDM2LCA0MiwgMjQsIDQ4LCAxNiwgMjgsIDQ5LCAyMiwKLSAgICAzNCwgMzEsIDM4LCAz OSwgNDQsIDExLCAzNSwgMzAsCi0gICAgMzMsIDMzLCAyMywgMjgsIDMzLCA0NiwgMTUsIDEzLAot ICAgIDI0LCA0MSwgMjQsIDM0LCAzNCwgMzAsIDI2LCAyNCwKLSAgICAxNCwgNjAsIDIxLCAyOSwg MzksIDIzLCAzNSwgMzcsCi0gICAgNjMsIDQ1LCAzMywgMzQsIDQ3LCA0MSwgMjIsIDQyLAotICAg IDM1LCAzNSwgMjMsIDMyLCAzNSwgNDMsIDMyLCAgNywKLSAgICAzMSwgNDEsIDIwLCAzMSwgMTYs IDEzLCA2MywgMjUsCi0gICAgMzAsIDMyLCAzNSwgMzAsIDMwLCAzMSwgNDIsIDQ3LAotICAgIDM5 LCAzOCwgNDAsIDQwLCA1MSwgNTUsIDU2LCAxOCwKLSAgICAyMSwgMzksIDM5LCAzMywgMTcsIDQx LCAyMywgMjQsCi0gICAgNDMsIDI1LCAzMSwgMjAsIDE5LCA0NSwgIDEsIDM0LAotICAgIDMxLCAy MiwgMzUsIDE1LCA0NiwgNDYsIDM1LCAzMSwKLSAgICAyOCwgMjksIDI5LCAyMywgNDEsIDI3LCAx NCwgNTMsCi0gICAgNTMsIDI3LCAyNCwgMzIsIDU3LCAzMiwgMTcsIDQyLAotICAgIDM3LCAyOSwg MzMsICAxLCAyNSwgMzIsIDMyLCA2MywKLSAgICAyNiwgNDAsIDQ0LCAzNiwgMzEsIDM5LCAyMCwg MjAsCi0gICAgNDQsIDIzLCAzMywgMzQsIDM1LCAzMywgMzMsIDI4LAotICAgIDQxLCAyMywgNDEs IDQxLCAyOSwgMjUsIDI2LCA0OSwKLSAgICAyOSwgMjQsIDM3LCA0OSwgNTAsIDUxLCA1MSwgMjYs Ci0gICAgMzksIDI1LCAyNiwgMTUsIDM5LCAxOCwgNDIsIDE3LAotICAgICA0LCAzMSwgMzIsIDMy LCA2MCwgIDEsIDQyLCAzMiwKLSAgICAgMCwgMTIsIDE5LCAzNSwgMjEsIDQxLCAxNywgMjYsCi0g ICAgMjAsIDQ1LCA0NiwgMzIsIDM3LCAyMiwgNDcsIDI5LAotICAgIDMxLCAyNywgMjksIDMwLCAy MSwgMzMsIDM1LCAxOCwKLSAgICAyNSwgMzMsIDUwLCA1MSwgNDIsICAyLCAxNSwgNTEsCi0gICAg NTMsIDMzLCAyNSwgMjksIDU1LCAzNywgMzgsIDMzLAotICAgIDM4LCA1OSwgMzgsIDMzLCAzOSwg MTMsIDMyLCA0MCwKLSAgICA2MSwgNjEsIDMyLCAgOSwgNDQsICAzLCAzMSwgMjksCi0gICAgMjUs IDMxLCAyNywgMjMsICA5LCAyNSwgIDksIDI5LAotICAgIDIwLCAzMCwgMzAsIDQyLCAxOCwgMjgs IDI1LCAyOCwKLSAgICAyOCwgMjEsIDI5LCA0MywgMjksIDQzLCAyNiwgNDQsCi0gICAgNDQsIDIx LCAzOCwgMjEsIDI0LCA0NSwgNDUsIDM1LAotICAgIDM5LCAyMiwgMzUsIDM2LCAzNCwgMzQsIDQ1 LCAzNCwKLSAgICAyOSwgMzEsIDQ2LCAyNSwgNDYsIDE2LCAxNywgMzEsCi0gICAgMjAsIDMyLCA0 NywgNDcsIDQ3LCAzMiwgNDksIDQ5LAotICAgIDQ5LCAzMSwgIDEsIDI3LCAyOCwgMzksIDM5LCAy MSwKLSAgICAzNiwgMjMsIDUxLCAgMiwgNDAsIDUxLCAzMiwgNTMsCi0gICAgMjQsIDMwLCAyNCwg MzAsIDIxLCA0MCwgNTcsIDU3LAotICAgIDMxLCA0MSwgNTgsIDMyLCAxMiwgIDQsIDMyLCAzNCwK LSAgICA1OSwgMzEsIDMyLCAxMywgIDksIDM1LCAyNiwgMzUsCi0gICAgMzcsIDYxLCAzNywgNjMs IDI2LCAyOSwgNDEsIDM4LAotICAgIDIzLCAyMCwgNDEsIDI2LCA0MSwgNDIsIDQyLCA0MiwKLSAg ICAyNiwgMjYsIDI2LCAyNiwgIDEsIDI2LCAzNywgMzcsCi0gICAgMzcsIDIzLCAzNCwgNDIsIDI3 LCA0MywgMzQsIDI3LAotICAgIDMxLCAyNCwgMzMsIDE2LCAgMywgMzEsIDI0LCAzMywKLSAgICAy NCwgIDQsIDQ0LCA0NCwgMTEsIDQ0LCAzMSwgMTMsCi0gICAgMTMsIDQ0LCA0NSwgMTMsIDI1LCAy MiwgMzgsIDI2LAotICAgIDM4LCAzOCwgMzksIDMyLCAzMCwgMzksIDMwLCAyMiwKLSAgICAzMiwg MjYsIDMwLCA0NywgNDcsIDQ3LCAxOSwgNDcsCi0gICAgMzAsIDMxLCAzNSwgIDgsIDIzLCA0Nywg NDcsIDI3LAotICAgIDM1LCA0NywgMzEsIDQ4LCAzNSwgMTksIDM2LCA0OSwKLSAgICA0OSwgMzMs IDMxLCAzOSwgMjcsIDM5LCA0OSwgNDksCi0gICAgNTAsIDUwLCA1MCwgMzksIDMxLCA1MSwgNTEs IDM5LAotICAgIDI4LCAzMywgMzMsIDIxLCA0MCwgMzEsIDUyLCA1MywKLSAgICA0MCwgNTMsICA5 LCAzMywgMzEsIDUzLCA1NCwgNTQsCi0gICAgNTQsIDU1LCA1NSwgMzQsIDE1LCA1NiwgMjUsIDU2 LAotICAgIDIxLCAyMSwgNDAsIDQwLCAyNSwgNDAsIDU4LCAzNiwKLSAgICAgNSwgNDEsIDQxLCAx MiwgNjAsIDQxLCA0MSwgMzcsCi0gICAgMjIsIDYxLCAxOCwgMjksIDI5LCAzMCwgNjEsIDMwLAot ICAgIDYxLCA2MiwgNjIsIDMwLCAzMCwgNjMsIDE4LCAxMywKLSAgICAzMCwgMjMsIDE5LCAyMCwg MjAsIDQxLCAxMywgIDIsCi0gICAgIDUsICA1LCAgMSwgIDUsIDMyLCAgNiwgMzIsIDM1LAotICAg IDIwLCAzNSwgMjcsIDM1LCAzNSwgMzYsIDM2LCAxMywKLSAgICAzNiwgNDEsIDQxLCA0MSwgIDMs IDMwLCA0MiwgMjcsCi0gICAgMjAsIDMwLCAyNywgMjgsIDMwLCAyMSwgMzMsIDMzLAotICAgIDE0 LCAyNCwgMzAsIDQyLCAyNCwgMzMsIDI1LCA0MiwKLSAgICA0MywgMTQsIDQzLCA0MywgMTQsIDQz LCAgNywgMzYsCi0gICAgMzcsIDM3LCAzNywgMzcsICA3LCAxNCwgMjUsIDQzLAotICAgIDQzLCA0 NCwgMTUsIDM3LCAgNywgIDcsICAzLCAgMSwKLSAgICAgOCwgMTUsIDE1LCAgOCwgNDQsIDQ0LCA0 NCwgNDUsCi0gICAgNDUsIDQ1LCA0NSwgIDgsICA4LCA0NSwgMjEsIDQ1LAotICAgIDI4LCAyOCwg MjgsIDIxLCAyOCwgMjgsIDIyLCAzNywKLSAgICA0NiwgNDYsIDM3LCAgOCwgMjksIDM3LCAyOSwg MjIsCi0gICAgNDYsIDM3LCAyMiwgMjksIDQ3LCA0NywgMzgsIDM4LAotICAgIDE2LCAzOCwgMzgs IDMzLCAzOCwgMjIsIDQ3LCA0NywKLSAgICAyOSwgMjUsIDE2LCAgMCwgNDgsICAxLCAzNCwgNDgs Ci0gICAgNDgsIDM0LCAyNSwgMjYsIDI2LCA0OSwgNDksIDI2LAotICAgICAxLCA0OSwgIDQsIDI2 LCAgNCwgNDksICAxLCAgOSwKLSAgICA0OSwgNDksIDQ5LCAxMCwgNDksIDE3LCAzOCwgMTcsCi0g ICAgMTcsIDUwLCAzOCwgNTAsIDUwLCAyMiwgMzgsIDUxLAotICAgIDM4LCAzOCwgNTEsIDM5LCAz OSwgMTgsIDIyLCAzOSwKLSAgICA1MSwgMjIsIDUyLCA1MiwgNTIsIDM5LCA1MywgNTMsCi0gICAg MTAsIDIzLCAxOCwgMjksIDEwLCA1MywgMjksIDU0LAotICAgIDExLCA1NCwgMTEsIDExLCA1NSwg IDEsIDE4LCA1NSwKLSAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI5LCAzNCwgMTgsCi0gICAgMjks IDU2LCA1NiwgMzQsIDU3LCAzNCwgMzQsIDI5LAotICAgIDI5LCA1NywgNTcsIDM1LCAzNSwgMzUs IDM1LCAzNSwKLSAgICAzOSwgMzUsIDU5LCA1OSwgMTgsIDU5LCAzOSwgMzAsCi0gICAgMTgsIDQw LCA2MCwgNjAsIDYxLCAzMCwgMTgsIDYxLAotICAgIDYxLCAxOSwgMTksCi19OwotCi1zdGF0aWMg Y29uc3QgdWludDhfdCB0YWJsZTBfbXZ5WzEwOTldID0gewotICAgIDMyLCAzMSwgMzIsIDMzLCAz MiwgMzEsIDMxLCAzMywKLSAgICAzMywgMzQsIDMyLCAzMCwgMzIsIDM1LCAzNCwgMzEsCi0gICAg MzIsIDI5LCAzMywgMzAsIDMyLCAzNCwgMzMsIDMxLAotICAgIDMwLCAzNSwgMzEsIDMxLCAyOSwg MzMsIDM1LCAzMCwKLSAgICAyOSwgMzMsIDM0LCAzNCwgMzAsIDMyLCAzMiwgMzYsCi0gICAgMjks IDMyLCAzNSwgMzIsIDI4LCAzMiwgMzIsIDI3LAotICAgIDM1LCAzNywgMzQsIDI5LCAzMCwgMzYs IDM1LCAzNCwKLSAgICAyNSwgMzAsIDI5LCAzNSwgMzMsIDMxLCAzMSwgMzIsCi0gICAgMzEsIDI4 LCAzOSwgMjgsIDI5LCAzNywgMzEsIDMzLAotICAgIDI3LCAzNiwgMjgsIDM2LCAzNywgMzMsIDMz LCAzMSwKLSAgICAyNywgMzIsIDMxLCAzOCwgMjYsIDI1LCAyNSwgMzMsCi0gICAgMzksIDMxLCAz NCwgMzAsIDMyLCAzMiwgMzIsIDM0LAotICAgIDM2LCAzMiwgMjgsIDMzLCAzMCwgMzgsIDM3LCAy NywKLSAgICAzMywgMjgsIDMyLCAzNywgMzUsIDM4LCAyOSwgMzQsCi0gICAgMjcsIDI5LCAyOSwg MzIsIDMyLCAzNCwgMzUsICAzLAotICAgIDI2LCAzNiwgMzEsIDM4LCAzMCwgMjYsIDM1LCAzNCwK LSAgICAzNywgMjYsIDI1LCAzMiwgMzIsIDM5LCAyMywgMzcsCi0gICAgMzIsIDMyLCAyOSwgMzIs IDI5LCAzNiwgMjksIDMwLAotICAgIDQxLCAzMSwgMzAsIDIxLCAzOSwgMjUsIDM0LCAzOCwKLSAg ICAzMiwgMzUsIDM5LCAzMiwgMzMsIDMzLCAzMiwgMjcsCi0gICAgMjksIDI1LCAyOCwgMjcsIDI2 LCAzMSwgMzAsIDM1LAotICAgIDI0LCAyNCwgMzEsIDM0LCAzMiwgMzAsIDM1LCA0MCwKLSAgICAy OCwgMzgsICA1LCAzNSwgMjksIDM2LCAzNiwgMzIsCi0gICAgMzgsIDMwLCAzMywgMzEsIDM1LCAy NiwgMjMsIDM4LAotICAgIDMyLCA0MSwgMjgsIDI1LCAzNywgNDAsIDM3LCAzOSwKLSAgICAzMiwg MzYsIDMzLCAzOSwgMjUsIDI2LCAyOCwgMzEsCi0gICAgMjgsIDQyLCAyMywgMzEsIDMzLCAzMSwg MzksICAxLAotICAgIDU5LCAyMiwgMjcsICA0LCAzMywgMzQsIDMzLCAyNCwKLSAgICA0MSwgIDMs IDM1LCA0MSwgNDEsIDI4LCAzNiwgMzYsCi0gICAgMjgsIDMzLCAzNSwgMjEsIDIzLCAyMSwgMjIs IDM3LAotICAgIDI3LCAyNywgNDMsIDI5LCA2MCwgMzksIDI3LCAyNSwKLSAgICA1OSwgMzQsIDI3 LCAyNywgMjYsIDQwLCAzNywgMjcsCi0gICAgNjEsIDI2LCAzOSwgMzMsIDMxLCAyMiwgMzcsIDI1 LAotICAgIDMwLCAyNSwgMjQsIDYxLCAzMSwgMzQsIDI1LCAzOCwKLSAgICAzMiwgMzIsIDMwLCAg MywgNjEsIDQzLCAyOSwgMjMsCi0gICAgMjgsIDMyLCAyOCwgMzIsIDMxLCAzNCwgIDUsIDMzLAot ICAgIDMyLCAzMywgMzMsIDQyLCAzNywgMjMsIDM4LCAzMSwKLSAgICA0MCwgMjYsIDMyLCAyNiwg MzcsIDM4LCAzNiwgMjQsCi0gICAgMjksIDMwLCAyMCwgMjIsIDI5LCAyNCwgMzIsIDQxLAotICAg ICAyLCAzNCwgMjUsIDMzLCAyOSwgMzEsIDM5LCAzNSwKLSAgICAzNiwgMjQsIDMyLCAzMCwgMzMs IDI3LCA0NCwgNjAsCi0gICAgMzAsIDM2LCAxOSwgMzQsIDMxLCAyNCwgMTYsIDM1LAotICAgIDMy LCAzOCwgMjEsIDMzLCAzMSwgMzEsIDIxLCAzNSwKLSAgICAgNSwgMTcsIDI5LCAzOCwgMzgsIDE4 LCA1OCwgMTksCi0gICAgNDMsIDQxLCAzMCwgNDEsIDQzLCAzOSwgMjksICA3LAotICAgIDI5LCAx NywgMjgsIDE5LCAyOCwgMzEsIDI1LCAxOSwKLSAgICA0MCwgMjYsIDIxLCAzMywgMzksIDIzLCA0 MCwgMzAsCi0gICAgMzksIDM0LCAzNSwgMzIsIDMyLCAyNCwgMzMsIDMwLAotICAgIDQwLCA0Nywg MzksIDM3LCAzMiwgMzMsIDI0LCAyMywKLSAgICA0NSwgNDcsIDI3LCAyMywgNDIsIDMyLCAzMiwg MzMsCi0gICAgMzYsIDM3LCAzNywgMTcsIDE4LCAyMiwgNDAsIDM4LAotICAgIDMyLCAzMSwgMzUs IDI0LCAxNywgMjUsIDE3LCAyMywKLSAgICAzMywgMzQsIDUxLCA0MiwgMzEsIDM2LCAzNiwgMjks Ci0gICAgMjEsIDIyLCAzNywgNDQsIDQzLCAyNSwgNDcsIDMzLAotICAgIDQ1LCAyNywgMzEsIDU4 LCAzMSwgMzIsIDMxLCAzOCwKLSAgICA0MywgMjAsIDQ3LCA0NSwgNTQsICAxLCAyNiwgMzQsCi0g ICAgMzgsIDE0LCAyMiwgMjQsIDMzLCAzNCwgMzIsIDMyLAotICAgIDM3LCAyMSwgMjMsIDQ5LCAz NSwgMjMsIDI4LCAzOSwKLSAgICAzOSwgMjMsIDU1LCAzMywgMzAsIDMwLCA2MywgMTYsCi0gICAg NDIsIDI4LCAxMywgMzMsIDMzLCAzNSwgMTksIDQ2LAotICAgIDQzLCAxNywgMTksIDM2LCAzOSwg MjQsIDMxLCAzMiwKLSAgICAzMywgMjYsIDI4LCA2MiwgMzMsIDYzLCAzMywgMzksCi0gICAgMTks IDQ5LCAxNywgMzEsIDQzLCAxMywgMTUsIDI5LAotICAgIDI1LCAzNSwgMzMsIDIzLCA0OSwgNDEs IDI4LCAyOSwKLSAgICAzNCwgMzgsICA3LCA2MSwgMTEsIDUwLCAxMywgNDEsCi0gICAgMTksIDQ3 LCAyNSwgMjYsIDE1LCA0MiwgNDEsIDI5LAotICAgIDQ1LCAyNywgMTcsIDM1LCAzMiwgMjksIDMy LCAyNCwKLSAgICAxMywgMjYsIDI2LCAzMSwgMjQsIDMzLCAyOCwgMzAsCi0gICAgMzEsIDExLCA0 NSwgNDYsIDMzLCAzMywgMzUsIDU3LAotICAgIDMyLCAzMiwgMzUsIDQ1LCAzNCwgMTEsIDM3LCA0 MiwKLSAgICAzOSwgMzcsIDMxLCA0OSwgMjEsIDI3LCAyOSwgNDcsCi0gICAgNTMsIDQwLCA1MSwg MTYsIDI2LCAgMSwgNDAsIDMwLAotICAgIDQxLCA0NCwgMzQsIDI1LCAyNywgMzEsIDM1LCAzNSwK LSAgICAzMSwgMTUsIDQ5LCAgMSwgMzUsIDQwLCAgNSwgNTgsCi0gICAgMjEsIDI5LCAyMiwgNTks IDQ1LCAzMSwgIDksIDI2LAotICAgICA5LCAyOSwgMTEsIDMyLCAzMCwgIDMsIDEzLCAyMCwKLSAg ICAxOCwgMjAsIDExLCAgMywgMjksIDQwLCAzMSwgNTMsCi0gICAgMzAsIDE3LCAyMCwgMzcsIDMx LCA0MiwgNDcsIDQ3LAotICAgIDU0LCAzOCwgIDksIDM0LCAxMywgMzcsIDIxLCAyNSwKLSAgICAy NywgNDMsIDQyLCA0NSwgNDAsIDI1LCAyNywgNDYsCi0gICAgMjIsIDI1LCA1MywgMjAsICAyLCAx NCwgMzksIDE1LAotICAgIDIyLCA0NCwgMzQsIDIxLCAzOCwgMzMsIDI3LCA0OCwKLSAgICAzNCwg NTIsIDM1LCA0NywgNDksIDU0LCAgMiwgMTMsCi0gICAgMjMsIDUyLCAyOSwgNDUsIDIyLCA0OSwg NTQsIDIxLAotICAgIDQwLCA0MiwgMzEsIDMwLCAyOSwgMzQsICAwLCAyNSwKLSAgICAyMywgNTEs IDI0LCA1OSwgMjgsIDM4LCAyOSwgMzEsCi0gICAgIDIsIDEzLCAzMSwgIDgsIDMxLCAzMywgMTIs IDQ1LAotICAgIDQxLCAgNywgMTQsIDMwLCAyNSwgMTgsIDQzLCAyMCwKLSAgICA0MywgMzUsIDQ0 LCAgMSwgNDksIDQyLCA0MiwgMTgsCi0gICAgNDEsIDM4LCA0MSwgNDQsIDUzLCAxMSwgMjAsIDI1 LAotICAgIDQ1LCA0NiwgNDcsIDQ4LCAzOSwgNTIsIDQ2LCA0OSwKLSAgICA2MywgNTUsIDQ0LCAz OCwgMTMsIDEzLCA1NywgMjIsCi0gICAgNTEsIDE2LCAxMiwgMjgsIDM1LCA1NywgMjUsIDIwLAot ICAgIDI2LCAyOCwgMjgsIDI5LCAzMiwgMzEsIDYyLCAzNCwKLSAgICAzNSwgMzUsIDE5LCA0OSwg NDgsIDM5LCA0MCwgMTgsCi0gICAgNDMsIDQ2LCAxMSwgIDYsIDQ4LCAxOSwgNDksIDQxLAotICAg IDEwLCAyMywgNTgsIDE3LCAyMSwgMjMsIDM0LCAzMCwKLSAgICA2MCwgIDAsIDQ0LCAzNCwgMjYs IDM3LCA0NiwgNDMsCi0gICAgNDksIDU5LCAgNCwgMzQsIDU5LCAzNywgMjIsIDI1LAotICAgIDI4 LCA0NiwgIDYsIDQwLCA1OSwgNDIsIDM2LCA2MSwKLSAgICAyOCwgMzAsIDMxLCA0MywgMTAsIDIy LCAyMywgNDcsCi0gICAgMjAsIDUyLCA1NSwgMzYsIDI1LCAxNiwgIDEsIDExLAotICAgIDI3LCAy OSwgIDUsIDYzLCAxOCwgNDEsIDMxLCAzNCwKLSAgICAzOCwgIDEsICA1LCAxMywgMjgsIDMxLCAx NywgMzgsCi0gICAgMzksIDQxLCAzNiwgMzcsIDIyLCAzOSwgMzMsIDQzLAotICAgIDQzLCAxNSwg MTcsIDQ5LCAzMCwgMjEsIDIyLCAyMCwKLSAgICAxMCwgMTcsIDI1LCA1NCwgNTcsICAzLCAzNCwg IDgsCi0gICAgMzYsIDI1LCAzMSwgMTQsIDE1LCAxOSwgMjksIDI1LAotICAgIDE4LCAzOSwgNTMs IDIyLCAyNywgMjAsIDI5LCAzMywKLSAgICA0MSwgNDIsIDM1LCA2MiwgNTAsIDI5LCA1MywgNTAs Ci0gICAgMzUsIDU1LCA0MiwgNjEsIDYzLCAgNCwgIDcsIDQyLAotICAgIDIxLCA0NiwgNDcsIDQ5 LCAyNywgNDYsIDE3LCA1NSwKLSAgICA0MSwgNTAsIDYzLCAgNCwgNTYsIDE4LCAgOCwgMTAsCi0g ICAgMTgsIDUxLCA2MywgMzYsIDU1LCAxOCwgIDUsIDU1LAotICAgICA5LCAyOSwgMTcsIDIxLCAz MCwgMjcsICAxLCA1OSwKLSAgICAgNywgMTEsIDEyLCAxNSwgIDUsIDQyLCAyNCwgNDEsCi0gICAg NDMsICA3LCAyNywgMjIsIDI1LCAzMSwgMzAsIDM3LAotICAgIDIyLCAzOSwgNTMsIDI5LCAzNiwg MzcsIDQ4LCAgMCwKLSAgICAgNSwgMTMsIDE3LCAzMSwgMzIsIDI2LCA0NiwgMjgsCi0gICAgNDQs IDQ1LCA0NiwgNTMsIDQ5LCA1MSwgIDMsIDQxLAotICAgICAzLCAyMiwgNDIsIDMzLCAgNSwgNDUs ICA3LCAyMiwKLSAgICA0MCwgNTMsIDI0LCAxNCwgMjUsIDI3LCAxMCwgMTIsCi0gICAgMzQsIDE2 LCAxNywgNTMsIDIwLCAyNiwgMzksIDQ1LAotICAgIDE4LCA0NSwgMzUsIDMzLCAzMSwgNDksICA0 LCAzOSwKLSAgICA0MiwgMTEsIDUxLCAgNSwgMTMsIDI2LCAyNywgMTcsCi0gICAgNTIsIDMwLCAg MCwgMjIsIDEyLCAzNCwgNjIsIDM2LAotICAgIDM4LCA0MSwgNDcsIDMwLCA2MywgMzgsIDQxLCA0 MywKLSAgICA1OSwgMzMsIDQ1LCAzNywgMzgsIDQwLCA0NywgMjQsCi0gICAgNDgsIDQ5LCAzMCwg IDEsIDEwLCAyMiwgNDksIDE1LAotICAgIDM5LCA1OSwgMzEsIDMyLCAzMywgMTgsIDEzLCAxNSwK LSAgICAzMSwgMjEsIDI3LCA0NCwgNDIsIDM5LCA0NiwgMTcsCi0gICAgMjYsIDMyLCAzMCwgMzEs ICAwLCAzMCwgMzQsICA5LAotICAgIDEyLCAxMywgMjUsIDMxLCAzMiwgNTUsIDQzLCAzNSwKLSAg ICA2MSwgMzMsIDM1LCA0NiwgMjUsIDQ3LCA0OCwgNjIsCi0gICAgNjMsIDM4LCA2MSwgIDEsICAy LCAgNSwgIDcsICA5LAotICAgIDQ2LCAxMCwgMzQsIDM1LCAzNiwgNTUsIDUxLCAgNywKLSAgICA0 MCwgMjMsIDM0LCAzNywgIDUsIDEzLCA0MiwgMTgsCi0gICAgMjUsIDI3LCAyOCwKLX07Ci0KLXN0 YXRpYyBjb25zdCB1aW50MTZfdCB0YWJsZTFfbXZfY29kZVsxMTAwXSA9IHsKLSAgICAweDAwMDAs IDB4MDAwNywgMHgwMDA5LCAweDAwMGYsIDB4MDAwYSwgMHgwMDExLCAweDAwMWEsIDB4MDAxYywK LSAgICAweDAwMTEsIDB4MDAzMSwgMHgwMDI1LCAweDAwMmQsIDB4MDAyZiwgMHgwMDZmLCAweDAw NzUsIDB4MDA0MSwKLSAgICAweDAwNGMsIDB4MDA0ZSwgMHgwMDVjLCAweDAwNjAsIDB4MDA2Miwg MHgwMDY2LCAweDAwNjgsIDB4MDA2OSwKLSAgICAweDAwNmIsIDB4MDBhNiwgMHgwMGMxLCAweDAw Y2IsIDB4MDBjYywgMHgwMGNlLCAweDAwZGEsIDB4MDBlOCwKLSAgICAweDAwZWUsIDB4MDA4Nywg MHgwMDkwLCAweDAwOWUsIDB4MDA5ZiwgMHgwMGJhLCAweDAwY2EsIDB4MDBkOCwKLSAgICAweDAw ZGIsIDB4MDBkZiwgMHgwMTA0LCAweDAxMDksIDB4MDEwYywgMHgwMTQzLCAweDAxNDUsIDB4MDE0 YSwKLSAgICAweDAxNTYsIDB4MDE1YywgMHgwMWIzLCAweDAxZDMsIDB4MDFkYSwgMHgwMTAzLCAw eDAxMDksIDB4MDEwYiwKLSAgICAweDAxMjIsIDB4MDEyNywgMHgwMTM0LCAweDAxNjEsIDB4MDE2 NCwgMHgwMTc2LCAweDAxODQsIDB4MDE4ZCwKLSAgICAweDAxOGUsIDB4MDE4ZiwgMHgwMTkwLCAw eDAxOTMsIDB4MDE5NiwgMHgwMTlkLCAweDAxOWUsIDB4MDE5ZiwKLSAgICAweDAxYTksIDB4MDFi MiwgMHgwMWI0LCAweDAxYmEsIDB4MDFiYiwgMHgwMWJjLCAweDAyMDEsIDB4MDIwMiwKLSAgICAw eDAyMDUsIDB4MDIwNywgMHgwMjBkLCAweDAyMTAsIDB4MDIxMSwgMHgwMjE1LCAweDAyMWIsIDB4 MDIxZiwKLSAgICAweDAyODEsIDB4MDI4NSwgMHgwMjkwLCAweDAyOWMsIDB4MDI5ZCwgMHgwMmEy LCAweDAyYTcsIDB4MDJhOCwKLSAgICAweDAyYWEsIDB4MDJiMCwgMHgwMmIxLCAweDAyYjQsIDB4 MDJiYywgMHgwMmJmLCAweDAzMjAsIDB4MDMyNiwKLSAgICAweDAzMjcsIDB4MDMyOSwgMHgwMzJh LCAweDAzMzYsIDB4MDM2MCwgMHgwMzYyLCAweDAzNjMsIDB4MDM3MiwKLSAgICAweDAzYjIsIDB4 MDNiYywgMHgwM2JkLCAweDAyMDMsIDB4MDIwNSwgMHgwMjFhLCAweDAyNDksIDB4MDI0YSwKLSAg ICAweDAyNGMsIDB4MDJjNywgMHgwMmNhLCAweDAyY2UsIDB4MDJlZiwgMHgwMzBkLCAweDAzMjIs IDB4MDMyNSwKLSAgICAweDAzMzgsIDB4MDM3MywgMHgwMzdhLCAweDA0MDksIDB4MDQxNSwgMHgw NDE2LCAweDA0MTgsIDB4MDQyOCwKLSAgICAweDA0MmQsIDB4MDQyZiwgMHgwNDM0LCAweDA1MDgs IDB4MDUwOSwgMHgwNTEwLCAweDA1MTEsIDB4MDUxYywKLSAgICAweDA1MWUsIDB4MDUyNCwgMHgw NTQxLCAweDA1NDMsIDB4MDU0NiwgMHgwNTQ3LCAweDA1NGQsIDB4MDU1NywKLSAgICAweDA1NWYs IDB4MDU2YSwgMHgwNTZjLCAweDA1NmQsIDB4MDU2ZiwgMHgwNTc2LCAweDA1NzcsIDB4MDU3YSwK LSAgICAweDA1N2IsIDB4MDU3YywgMHgwNTdkLCAweDA2MDAsIDB4MDYwMSwgMHgwNjAzLCAweDA2 MTQsIDB4MDYxNiwKLSAgICAweDA2MTcsIDB4MDYxYywgMHgwNjFmLCAweDA2NDIsIDB4MDY0OCwg MHgwNjQ5LCAweDA2NGEsIDB4MDY0YiwKLSAgICAweDA2NTcsIDB4MDY2OCwgMHgwNjY5LCAweDA2 NmIsIDB4MDY2ZSwgMHgwNjdmLCAweDA2YzIsIDB4MDZjOCwKLSAgICAweDA2Y2IsIDB4MDZkZSwg MHgwNmRmLCAweDA2ZTIsIDB4MDZlMywgMHgwNmVmLCAweDA3NDgsIDB4MDc0YiwKLSAgICAweDA3 NmUsIDB4MDc2ZiwgMHgwNzdjLCAweDA0MDksIDB4MDQyMywgMHgwNDI4LCAweDA0MjksIDB4MDQy YSwKLSAgICAweDA0MmIsIDB4MDQzMiwgMHgwNDMzLCAweDA0OTYsIDB4MDQ5YSwgMHgwNGQ1LCAw eDA0ZGIsIDB4MDU4MSwKLSAgICAweDA1ODIsIDB4MDU4YiwgMHgwNThjLCAweDA1OGQsIDB4MDU5 OCwgMHgwNTk5LCAweDA1OWEsIDB4MDU5ZSwKLSAgICAweDA1ZGQsIDB4MDYxOSwgMHgwNjMyLCAw eDA2MzMsIDB4MDY0OCwgMHgwNjcyLCAweDA2YTEsIDB4MDZhMiwKLSAgICAweDA2YTMsIDB4MDZh ZiwgMHgwNmUyLCAweDA2ZTMsIDB4MDZlNCwgMHgwODAwLCAweDA4MDEsIDB4MDgwMiwKLSAgICAw eDA4MDMsIDB4MDgxYSwgMHgwODFiLCAweDA4MjksIDB4MDgyZiwgMHgwODMyLCAweDA4M2UsIDB4 MDgzZiwKLSAgICAweDA4NTIsIDB4MDg1MywgMHgwODU4LCAweDA4NmIsIDB4MDg3NywgMHgwODc4 LCAweDA4NzksIDB4MDg3YSwKLSAgICAweDA4N2IsIDB4MGEwMCwgMHgwYTAxLCAweDBhMGQsIDB4 MGEwZSwgMHgwYTBmLCAweDBhMjQsIDB4MGEzNywKLSAgICAweDBhM2EsIDB4MGEzYiwgMHgwYTNl LCAweDBhNDYsIDB4MGE0NywgMHgwYTRhLCAweDBhNGIsIDB4MGE1ZiwKLSAgICAweDBhNzksIDB4 MGE3YSwgMHgwYTdiLCAweDBhODAsIDB4MGE4MSwgMHgwYTg0LCAweDBhODUsIDB4MGE5OSwKLSAg ICAweDBhYTUsIDB4MGFhNiwgMHgwYWI4LCAweDBhYmEsIDB4MGFiYiwgMHgwYWJjLCAweDBhYmQs IDB4MGFjOCwKLSAgICAweDBhY2UsIDB4MGFjZiwgMHgwYWQ3LCAweDBhZGMsIDB4MGFlYiwgMHgw YzA0LCAweDBjMjUsIDB4MGMyNiwKLSAgICAweDBjMjcsIDB4MGMyYSwgMHgwYzJiLCAweDBjM2Es IDB4MGMzYiwgMHgwYzNjLCAweDBjM2QsIDB4MGNhMCwKLSAgICAweDBjYWQsIDB4MGNkNCwgMHgw Y2Q1LCAweDBjZmMsIDB4MGNmZCwgMHgwZDg2LCAweDBkOTIsIDB4MGQ5MywKLSAgICAweDBkOTQs IDB4MGQ5NSwgMHgwZGIwLCAweDBkYjgsIDB4MGRiOSwgMHgwZGJhLCAweDBkYmIsIDB4MGRjMCwK LSAgICAweDBkYzIsIDB4MGRjMywgMHgwZGRhLCAweDBkZGIsIDB4MGRkYywgMHgwZGRkLCAweDBl OTIsIDB4MGU5MywKLSAgICAweDBlOTQsIDB4MGU5NSwgMHgwZWM3LCAweDBlY2MsIDB4MGVjZSwg MHgwZWNmLCAweDBlZDgsIDB4MGVkOSwKLSAgICAweDBlZGEsIDB4MGVkYiwgMHgwODA4LCAweDA4 MDksIDB4MDgwYSwgMHgwODEwLCAweDA4MTEsIDB4MDg0NCwKLSAgICAweDA4NDUsIDB4MDg2MSwg MHgwODYyLCAweDA4NjMsIDB4MDg2YywgMHgwOTIyLCAweDA5MjMsIDB4MDkyZSwKLSAgICAweDA5 MmYsIDB4MDkzNiwgMHgwOTM3LCAweDA5YjEsIDB4MDliMiwgMHgwOWIzLCAweDA5YjQsIDB4MDli NSwKLSAgICAweDA5YjgsIDB4MDliOSwgMHgwOWJhLCAweDA5YmIsIDB4MDliYywgMHgwOWJkLCAw eDA5YmUsIDB4MDliZiwKLSAgICAweDBiMDAsIDB4MGIxNSwgMHgwYjJjLCAweDBiMmQsIDB4MGIy ZSwgMHgwYjJmLCAweDBiMzYsIDB4MGJiOSwKLSAgICAweDBjMjgsIDB4MGMyYSwgMHgwYzJiLCAw eDBjMmMsIDB4MGMyZCwgMHgwYzJlLCAweDBjMmYsIDB4MGMzMCwKLSAgICAweDBjMzEsIDB4MGMz OCwgMHgwYzYwLCAweDBjNjEsIDB4MGM2MiwgMHgwYzYzLCAweDBjOGQsIDB4MGM4ZSwKLSAgICAw eDBjOGYsIDB4MGM5MiwgMHgwY2JlLCAweDBjYmYsIDB4MGNlNiwgMHgwY2U3LCAweDBkNDAsIDB4 MGQ0MSwKLSAgICAweDBkNTcsIDB4MGQ1OCwgMHgwZDU5LCAweDBkNWEsIDB4MGQ1YiwgMHgwZDVj LCAweDBkNWQsIDB4MGQ5OCwKLSAgICAweDBkOTksIDB4MGQ5YSwgMHgwZDliLCAweDBkOWMsIDB4 MGQ5ZCwgMHgwZGFkLCAweDBkYWUsIDB4MGRhZiwKLSAgICAweDBkYzAsIDB4MGRjMSwgMHgwZGMy LCAweDBkYzMsIDB4MGRjYSwgMHgwZGNiLCAweDBkZWMsIDB4MGRlZCwKLSAgICAweDBkZWUsIDB4 MGRlZiwgMHgxMDE4LCAweDEwMjIsIDB4MTAyMywgMHgxMDMwLCAweDEwMzEsIDB4MTAzMiwKLSAg ICAweDEwMzMsIDB4MTA1MCwgMHgxMDUxLCAweDEwNWMsIDB4MTA3NCwgMHgxMDc1LCAweDEwNzYs IDB4MTA3NywKLSAgICAweDEwNzgsIDB4MTA3OSwgMHgxMDdhLCAweDEwN2IsIDB4MTBiMiwgMHgx MGIzLCAweDEwYjgsIDB4MTBiOSwKLSAgICAweDEwYmEsIDB4MTBiYiwgMHgxMGQ0LCAweDEwZWEs IDB4MTBlYiwgMHgxMGVjLCAweDEwZWQsIDB4MTQwNCwKLSAgICAweDE0MDUsIDB4MTQwNiwgMHgx NDA3LCAweDE0MTAsIDB4MTQxMSwgMHgxNDEyLCAweDE0MTMsIDB4MTQxNCwKLSAgICAweDE0MTUs IDB4MTQxNiwgMHgxNDE3LCAweDE0MTgsIDB4MTQxOSwgMHgxNDY2LCAweDE0NjcsIDB4MTQ2OCwK LSAgICAweDE0NjksIDB4MTQ2YSwgMHgxNDZiLCAweDE0NmMsIDB4MTQ2ZCwgMHgxNDdlLCAweDE0 N2YsIDB4MTQ4OCwKLSAgICAweDE0ODksIDB4MTQ4YSwgMHgxNDhiLCAweDE0YjYsIDB4MTRiNywg MHgxNGI4LCAweDE0YjksIDB4MTRiYSwKLSAgICAweDE0YmIsIDB4MTRiYywgMHgxNGJkLCAweDE0 ZjAsIDB4MTRmMSwgMHgxNGY4LCAweDE0ZjksIDB4MTRmYSwKLSAgICAweDE0ZmIsIDB4MTRmYywg MHgxNGZkLCAweDE0ZmUsIDB4MTRmZiwgMHgxNTJhLCAweDE1MmIsIDB4MTUyYywKLSAgICAweDE1 MmQsIDB4MTUyZSwgMHgxNTJmLCAweDE1MzAsIDB4MTUzMSwgMHgxNTQ4LCAweDE1NDksIDB4MTU0 ZSwKLSAgICAweDE1NGYsIDB4MTU1OCwgMHgxNTU5LCAweDE1NWEsIDB4MTU1YiwgMHgxNTcyLCAw eDE1OWEsIDB4MTU5YiwKLSAgICAweDE1YWMsIDB4MTViYSwgMHgxNWJiLCAweDE1ZDAsIDB4MTVk MSwgMHgxNWQyLCAweDE1ZDMsIDB4MTVkNCwKLSAgICAweDE1ZDUsIDB4MTgxZCwgMHgxODFlLCAw eDE4MWYsIDB4MTg0MCwgMHgxODQxLCAweDE4NDIsIDB4MTg0MywKLSAgICAweDE4NDQsIDB4MTg0 NSwgMHgxODQ2LCAweDE4NDcsIDB4MTg0OCwgMHgxODQ5LCAweDE4NjEsIDB4MTg2MiwKLSAgICAw eDE4NjMsIDB4MTg2NCwgMHgxODY1LCAweDE4NjYsIDB4MTg2NywgMHgxODY4LCAweDE4NjksIDB4 MTg2YSwKLSAgICAweDE4NmIsIDB4MTg2YywgMHgxODZkLCAweDE4NmUsIDB4MTkxYiwgMHgxOTFj LCAweDE5MWQsIDB4MTkxZSwKLSAgICAweDE5MWYsIDB4MTk0MiwgMHgxOTQzLCAweDE5NDQsIDB4 MTk0NSwgMHgxOTQ2LCAweDE5NDcsIDB4MTk1OCwKLSAgICAweDE5NTksIDB4MTllZCwgMHgxOWVl LCAweDE5ZWYsIDB4MTlmMCwgMHgxOWYxLCAweDE5ZjIsIDB4MTlmMywKLSAgICAweDE5ZjQsIDB4 MTlmNSwgMHgxOWY2LCAweDE5ZjcsIDB4MWIwZSwgMHgxYjBmLCAweDFiNjIsIDB4MWI2MywKLSAg ICAweDFiNjQsIDB4MWI2NSwgMHgxYjY2LCAweDFiNjcsIDB4MWI2OCwgMHgxYjY5LCAweDFiNmEs IDB4MWI2YiwKLSAgICAweDFiNmMsIDB4MWI2ZCwgMHgxYjZlLCAweDFiNmYsIDB4MWI4MiwgMHgx YmE4LCAweDFiYTksIDB4MWJhYSwKLSAgICAweDFiYWIsIDB4MWJhYywgMHgxYmFkLCAweDFiYWUs IDB4MWJhZiwgMHgxYmIwLCAweDFiYjEsIDB4MWJiMiwKLSAgICAweDFiYjMsIDB4MWQ4MCwgMHgx ZDgxLCAweDFkODIsIDB4MWQ4MywgMHgxZDg0LCAweDFkODUsIDB4MWQ4NiwKLSAgICAweDFkODcs IDB4MWQ4OCwgMHgxZDg5LCAweDFkOGEsIDB4MWQ4YiwgMHgxZDhjLCAweDFkOGQsIDB4MTAwNywK LSAgICAweDEwMDgsIDB4MTAwOSwgMHgxMDBhLCAweDEwMGIsIDB4MTAwYywgMHgxMDBkLCAweDEw MGUsIDB4MTAwZiwKLSAgICAweDEwMTYsIDB4MTA4MCwgMHgxMDgxLCAweDEwODIsIDB4MTA4Mywg MHgxMDg0LCAweDEwODUsIDB4MTA4NiwKLSAgICAweDEwODcsIDB4MTBjMCwgMHgxMjNhLCAweDEy M2IsIDB4MTIzYywgMHgxMjNkLCAweDEyM2UsIDB4MTIzZiwKLSAgICAweDEyNDAsIDB4MTI0MSwg MHgxMjQyLCAweDEyNDMsIDB4MTM1MCwgMHgxMzUyLCAweDEzNTMsIDB4MTM1OCwKLSAgICAweDEz NTksIDB4MTM1YSwgMHgxMzViLCAweDEzNWMsIDB4MTM1ZCwgMHgxMzVlLCAweDEzNWYsIDB4MTM2 MCwKLSAgICAweDEzNjEsIDB4MTYwMiwgMHgxNjAzLCAweDE2MGMsIDB4MTYwZCwgMHgxNjBlLCAw eDE2MGYsIDB4MTYyMCwKLSAgICAweDE2MjEsIDB4MTYyMiwgMHgxNjIzLCAweDE2MjQsIDB4MTYy NSwgMHgxNjI2LCAweDE2MjcsIDB4MTYyOCwKLSAgICAweDE2MjksIDB4MTY2ZSwgMHgxNjZmLCAw eDE2N2MsIDB4MTY3ZCwgMHgxNjdlLCAweDE2N2YsIDB4MTc3MCwKLSAgICAweDE3NzEsIDB4MTg1 MiwgMHgxODUzLCAweDE4NzIsIDB4MTg3MywgMHgxODc0LCAweDE4NzUsIDB4MTg3NiwKLSAgICAw eDE4NzcsIDB4MTg3OCwgMHgxODc5LCAweDE4N2EsIDB4MTg3YiwgMHgxODdjLCAweDE4N2QsIDB4 MTg3ZSwKLSAgICAweDE4N2YsIDB4MTkxOCwgMHgxOTE5LCAweDE5MjYsIDB4MTkyNywgMHgxOTcw LCAweDE5NzEsIDB4MTk3MiwKLSAgICAweDE5NzMsIDB4MTk3NCwgMHgxOTc1LCAweDE5NzYsIDB4 MTk3NywgMHgxOTc4LCAweDE5NzksIDB4MTk3YSwKLSAgICAweDE5N2IsIDB4MWFhMCwgMHgxYWEx LCAweDFhYTIsIDB4MWFhMywgMHgxYWE0LCAweDFhYTUsIDB4MWFhNiwKLSAgICAweDFhYTcsIDB4 MWFhOCwgMHgxYWE5LCAweDFhYWEsIDB4MWFhYiwgMHgxYWFjLCAweDFhYWQsIDB4MWIzYywKLSAg ICAweDFiM2QsIDB4MWIzZSwgMHgxYjNmLCAweDFiNTAsIDB4MWI1MSwgMHgxYjUyLCAweDFiNTMs IDB4MWI1NCwKLSAgICAweDFiNTUsIDB4MWI1NiwgMHgxYjU3LCAweDFiNTgsIDB4MWI1OSwgMHgy MDMyLCAweDIwMzMsIDB4MjAzNCwKLSAgICAweDIwMzUsIDB4MjAzNiwgMHgyMDM3LCAweDIwMzgs IDB4MjAzOSwgMHgyMDNhLCAweDIwM2IsIDB4MjAzYywKLSAgICAweDIwM2QsIDB4MjAzZSwgMHgy MDNmLCAweDIwNDAsIDB4MjA0MSwgMHgyMDQyLCAweDIwNDMsIDB4MjBiYSwKLSAgICAweDIwYmIs IDB4MjBjYywgMHgyMGNkLCAweDIwY2UsIDB4MjBjZiwgMHgyMGUwLCAweDIwZTEsIDB4MjBlMiwK LSAgICAweDIwZTMsIDB4MjBlNCwgMHgyMGU1LCAweDIwZTYsIDB4MjBlNywgMHgyMWFhLCAweDIx YWIsIDB4MjFjMCwKLSAgICAweDIxYzEsIDB4MjFjMiwgMHgyMWMzLCAweDIxYzQsIDB4MjFjNSwg MHgyMWM2LCAweDIxYzcsIDB4MjFjOCwKLSAgICAweDIxYzksIDB4MjFjYSwgMHgyMWNiLCAweDIx Y2MsIDB4MjFjZCwgMHgyMWNlLCAweDIxY2YsIDB4MjFkMCwKLSAgICAweDIxZDEsIDB4MjFkMiwg MHgyMWQzLCAweDI4OTQsIDB4Mjg5NSwgMHgyODk2LCAweDI4OTcsIDB4Mjg5OCwKLSAgICAweDI4 OTksIDB4Mjg5YSwgMHgyODliLCAweDI4OWMsIDB4Mjg5ZCwgMHgyODllLCAweDI4OWYsIDB4Mjhj MCwKLSAgICAweDI4YzEsIDB4MjhjMiwgMHgyOGMzLCAweDI4YzQsIDB4MjhjNSwgMHgyOGM2LCAw eDI4YzcsIDB4MjhjOCwKLSAgICAweDI4YzksIDB4MjhjYSwgMHgyOGNiLCAweDI5MzAsIDB4Mjkz MSwgMHgyOTMyLCAweDI5MzMsIDB4MjkzNCwKLSAgICAweDI5MzUsIDB4MjkzNiwgMHgyOTM3LCAw eDI5MzgsIDB4MjkzOSwgMHgyOTNhLCAweDI5M2IsIDB4MjkzYywKLSAgICAweDI5M2QsIDB4Mjkz ZSwgMHgyOTNmLCAweDI5NjAsIDB4Mjk2MSwgMHgyOTYyLCAweDI5NjMsIDB4Mjk2NCwKLSAgICAw eDI5NjUsIDB4Mjk2NiwgMHgyOTY3LCAweDI5NjgsIDB4Mjk2OSwgMHgyOTZhLCAweDI5NmIsIDB4 MmE0MCwKLSAgICAweDJhNDEsIDB4MmE0MiwgMHgyYTQzLCAweDJhNDQsIDB4MmE0NSwgMHgyYTQ2 LCAweDJhNDcsIDB4MmE0OCwKLSAgICAweDJhNDksIDB4MmE0YSwgMHgyYTRiLCAweDJhNGMsIDB4 MmE0ZCwgMHgyYTRlLCAweDJhNGYsIDB4MmE1MCwKLSAgICAweDJhNTEsIDB4MmE1MiwgMHgyYTUz LCAweDJhZTYsIDB4MmFlNywgMHgyYjI0LCAweDJiMjUsIDB4MmIyNiwKLSAgICAweDJiMjcsIDB4 MmIyOCwgMHgyYjI5LCAweDJiMmEsIDB4MmIyYiwgMHgyYjJjLCAweDJiMmQsIDB4MmIyZSwKLSAg ICAweDJiMmYsIDB4MmIzMCwgMHgyYjMxLCAweDJiMzIsIDB4MmIzMywgMHgyYjVhLCAweDJiNWIs IDB4MzAxNCwKLSAgICAweDMwMTUsIDB4MzAxNiwgMHgzMDE3LCAweDMwMjAsIDB4MzAyMSwgMHgz MDIyLCAweDMwMjMsIDB4MzAyNCwKLSAgICAweDMwMjUsIDB4MzAyNiwgMHgzMDI3LCAweDMwMjgs IDB4MzAyOSwgMHgzMDJhLCAweDMwMmIsIDB4MzAyYywKLSAgICAweDMwMmQsIDB4MzAyZSwgMHgz MDJmLCAweDMwMzAsIDB4MzAzMSwgMHgzMDMyLCAweDMwMzMsIDB4MzAzNCwKLSAgICAweDMwMzUs IDB4MzAzNiwgMHgzMDM3LCAweDMwMzgsIDB4MzAzOSwgMHgzMGMwLCAweDMwYzEsIDB4MzBkZSwK LSAgICAweDMwZGYsIDB4MzIxOCwgMHgzMjE5LCAweDMyMWEsIDB4MzIxYiwgMHgzMjFjLCAweDMy MWQsIDB4MzIxZSwKLSAgICAweDMyMWYsIDB4MzIyMCwgMHgzMjIxLCAweDMyMjIsIDB4MzIyMywg MHgzMjI0LCAweDMyMjUsIDB4MzIyNiwKLSAgICAweDMyMjcsIDB4MzIyOCwgMHgzMjI5LCAweDMy MmEsIDB4MzIyYiwgMHgzMjJjLCAweDMyMmQsIDB4MzIyZSwKLSAgICAweDMyMmYsIDB4MzIzMCwg MHgzMjMxLCAweDMyMzIsIDB4MzIzMywgMHgzMjM0LCAweDMyMzUsIDB4MzM3OCwKLSAgICAweDMz NzksIDB4MzM3YSwgMHgzMzdiLCAweDMzN2MsIDB4MzM3ZCwgMHgzMzdlLCAweDMzN2YsIDB4MzNj MCwKLSAgICAweDMzYzEsIDB4MzNjMiwgMHgzM2MzLCAweDMzYzQsIDB4MzNjNSwgMHgzM2M2LCAw eDMzYzcsIDB4MzNjOCwKLSAgICAweDMzYzksIDB4MzNjYSwgMHgzM2NiLCAweDMzY2MsIDB4MzNj ZCwgMHgzM2NlLCAweDMzY2YsIDB4MzNkMCwKLSAgICAweDMzZDEsIDB4MzNkMiwgMHgzM2QzLCAw eDMzZDQsIDB4MzNkNSwgMHgzM2Q2LCAweDMzZDcsIDB4MzNkOCwKLSAgICAweDMzZDksIDB4Mzcw NiwgMHgzNzA3LCAweDM3MzAsIDB4MzczMSwgMHgzNzMyLCAweDM3MzMsIDB4MzczNCwKLSAgICAw eDM3MzUsIDB4MzczNiwgMHgzNzM3LCAweDM3MzgsIDB4MzczOSwgMHgzNzNhLCAweDM3M2IsIDB4 MzczYywKLSAgICAweDM3M2QsIDB4MzczZSwgMHgzNzNmLCAweDM3NDAsIDB4Mzc0MSwgMHgzNzQy LCAweDM3NDMsIDB4Mzc0NCwKLSAgICAweDM3NDUsIDB4Mzc0NiwgMHgzNzQ3LCAweDM3NDgsIDB4 Mzc0OSwgMHgzNzRhLCAweDM3NGIsIDB4Mzc0YywKLSAgICAweDM3NGQsIDB4Mzc0ZSwgMHgzNzRm LCAweDNiMzQsIDB4M2IzNSwgMHgzYjM2LCAweDNiMzcsIDB4M2JlOCwKLSAgICAweDNiZTksIDB4 M2JlYSwgMHgzYmViLCAweDNiZWMsIDB4M2JlZCwgMHgzYmVlLCAweDNiZWYsIDB4M2JmMCwKLSAg ICAweDNiZjEsIDB4M2JmMiwgMHgzYmYzLCAweDNiZjQsIDB4M2JmNSwgMHgzYmY2LCAweDNiZjcs IDB4M2JmOCwKLSAgICAweDNiZjksIDB4M2JmYSwgMHgzYmZiLCAweDNiZmMsIDB4M2JmZCwgMHgz YmZlLCAweDNiZmYsIDB4MjAwMCwKLSAgICAweDIwMDEsIDB4MjAwMiwgMHgyMDAzLCAweDIwMDQs IDB4MjAwNSwgMHgyMDA2LCAweDIwMDcsIDB4MjAwOCwKLSAgICAweDIwMDksIDB4MjAwYSwgMHgy MDBiLCAweDIwMGMsIDB4MjAwZCwgMHgyMDJlLCAweDIwMmYsIDB4MjE4MiwKLSAgICAweDIxODMs IDB4MjFiNCwgMHgyMWI1LCAweDIxYjYsIDB4MjFiNywgMHgyMWI4LCAweDIxYjksIDB4MjFiYSwK LSAgICAweDIxYmIsIDB4MjFiYywgMHgyMWJkLCAweDIxYmUsIDB4MjFiZiwgMHgyNDYwLCAweDI0 NjEsIDB4MjQ2MiwKLSAgICAweDI0NjMsIDB4MjQ2NCwgMHgyNDY1LCAweDI0NjYsIDB4MjQ2Nywg MHgyNDY4LCAweDI0NjksIDB4MjQ2YSwKLSAgICAweDI0NmIsIDB4MjQ2YywgMHgyNDZkLCAweDI0 NmUsIDB4MjQ2ZiwgMHgyNDcwLCAweDI0NzEsIDB4MjQ3MiwKLSAgICAweDI0NzMsIDB4MjZhMiwg MHgyNmEzLCAweDAwMGIsCi19OwotCi1zdGF0aWMgY29uc3QgdWludDhfdCB0YWJsZTFfbXZfYml0 c1sxMTAwXSA9IHsKLSAgICAgMiwgIDQsICA0LCAgNCwgIDUsICA1LCAgNSwgIDUsCi0gICAgIDYs ICA2LCAgNywgIDcsICA3LCAgNywgIDcsICA4LAotICAgICA4LCAgOCwgIDgsICA4LCAgOCwgIDgs ICA4LCAgOCwKLSAgICAgOCwgIDgsICA4LCAgOCwgIDgsICA4LCAgOCwgIDgsCi0gICAgIDgsICA5 LCAgOSwgIDksICA5LCAgOSwgIDksICA5LAotICAgICA5LCAgOSwgIDksICA5LCAgOSwgIDksICA5 LCAgOSwKLSAgICAgOSwgIDksICA5LCAgOSwgIDksIDEwLCAxMCwgMTAsCi0gICAgMTAsIDEwLCAx MCwgMTAsIDEwLCAxMCwgMTAsIDEwLAotICAgIDEwLCAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAx MCwKLSAgICAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAxMCwgMTAsCi0gICAgMTAsIDEwLCAxMCwg MTAsIDEwLCAxMCwgMTAsIDEwLAotICAgIDEwLCAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAxMCwK LSAgICAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAxMCwgMTAsCi0gICAgMTAsIDEwLCAxMCwgMTAs IDEwLCAxMCwgMTAsIDEwLAotICAgIDEwLCAxMCwgMTAsIDExLCAxMSwgMTEsIDExLCAxMSwKLSAg ICAxMSwgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsCi0gICAgMTEsIDExLCAxMSwgMTEsIDEx LCAxMSwgMTEsIDExLAotICAgIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwKLSAgICAx MSwgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsCi0gICAgMTEsIDExLCAxMSwgMTEsIDExLCAx MSwgMTEsIDExLAotICAgIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwKLSAgICAxMSwg MTEsIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsCi0gICAgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwg MTEsIDExLAotICAgIDExLCAxMSwgMTEsIDExLCAxMSwgMTEsIDExLCAxMSwKLSAgICAxMSwgMTEs IDExLCAxMiwgMTIsIDEyLCAxMiwgMTIsCi0gICAgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIs IDEyLAotICAgIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwKLSAgICAxMiwgMTIsIDEy LCAxMiwgMTIsIDEyLCAxMiwgMTIsCi0gICAgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEy LAotICAgIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwKLSAgICAxMiwgMTIsIDEyLCAx MiwgMTIsIDEyLCAxMiwgMTIsCi0gICAgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLAot ICAgIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwKLSAgICAxMiwgMTIsIDEyLCAxMiwg MTIsIDEyLCAxMiwgMTIsCi0gICAgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLAotICAg IDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwKLSAgICAxMiwgMTIsIDEyLCAxMiwgMTIs IDEyLCAxMiwgMTIsCi0gICAgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLAotICAgIDEy LCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwKLSAgICAxMiwgMTIsIDEyLCAxMiwgMTIsIDEy LCAxMiwgMTIsCi0gICAgMTIsIDEyLCAxMiwgMTIsIDEyLCAxMiwgMTIsIDEyLAotICAgIDEyLCAx MiwgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsCi0gICAgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywg MTMsIDEzLCAxMywgMTMsIDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywg MTMsCi0gICAgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMs IDEzLCAxMywgMTMsIDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMs Ci0gICAgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEz LCAxMywgMTMsIDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0g ICAgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsIDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAg MTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywg MTMsIDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMs IDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMs IDEzLCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEz LCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEz LCAxMywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAx MywgMTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAx MywKLSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxMywg MTMsIDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywK LSAgICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxMywgMTMs IDEzLCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywKLSAg ICAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxMywgMTMsIDEz LCAxMywgMTMsIDEzLAotICAgIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywKLSAgICAx MywgMTMsIDEzLCAxMywgMTMsIDEzLCAxMywgMTMsCi0gICAgMTMsIDEzLCAxMywgMTMsIDEzLCAx MywgMTMsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0 LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAot ICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAg IDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs Ci0gICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0g ICAgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAx NCwgMTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAg MTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQs IDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQs IDE0LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0 LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAx NCwgMTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAx NCwKLSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwg MTQsIDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwK LSAgICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQs IDE0LCAxNCwgMTQsIDE0LAotICAgIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwKLSAg ICAxNCwgMTQsIDE0LCAxNCwgMTQsIDE0LCAxNCwgMTQsCi0gICAgMTQsIDE0LCAxNCwgMTQsIDE0 LCAxNCwgMTQsIDE1LAotICAgIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAx NSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAx NSwgMTUsIDE1LAotICAgIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwKLSAgICAxNSwg MTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwgMTUsCi0gICAgMTUsIDE1LCAxNSwgMTUsIDE1LCAxNSwg MTUsIDE1LAotICAgIDE1LCAxNSwgMTUsICA0LAotfTsKLQotc3RhdGljIGNvbnN0IHVpbnQ4X3Qg dGFibGUxX212eFsxMDk5XSA9IHsKLSAgICAzMiwgMzEsIDMyLCAzMSwgMzMsIDMyLCAzMywgMzMs Ci0gICAgMzEsIDM0LCAzMCwgMzIsIDMyLCAzNCwgMzUsIDMyLAotICAgIDM0LCAzMywgMjksIDMw LCAzMCwgMzIsIDMxLCAzMSwKLSAgICAzMywgMzUsIDM1LCAzMywgMzEsIDI5LCAyOSwgMzMsCi0g ICAgMzQsIDMwLCAzMSwgMjgsIDM2LCAzMCwgMzQsIDMyLAotICAgIDMyLCAzNywgMzIsIDMyLCAy NSwgMjcsIDM5LCAzMiwKLSAgICAzMiwgMzIsIDM4LCAzNSwgMzYsIDMyLCAzNywgNjEsCi0gICAg MjYsIDMyLCAzNCwgMzUsICAzLCAzNSwgMjcsIDI4LAotICAgIDI5LCAzNCwgMjgsIDM3LCAzMSwg MzYsIDMyLCAyNywKLSAgICAzMSwgMzAsIDI5LCAzOSwgMzMsIDI5LCAzMywgMzUsCi0gICAgMjUs IDI1LCAyOSwgMzMsIDMxLCAzMSwgMzEsIDMzLAotICAgIDMyLCAzMCwgMzIsIDMyLCA0MSwgMzks IDMzLCAzNiwKLSAgICAzMiwgMjgsIDM0LCAzNiwgMzgsIDI0LCA2MCwgMzEsCi0gICAgMjMsIDI4 LCAzMiwgMzMsIDU5LCAzMiwgNDAsIDMwLAotICAgICA1LCAzNCwgMzIsIDM4LCAzMiwgMzAsIDQz LCAgNCwKLSAgICAzMiwgMzIsIDQyLCAzMSwgMzEsIDMyLCAyNiwgMzgsCi0gICAgMjYsIDIyLCAy MSwgMzcsIDYxLCA2MywgMzcsIDMxLAotICAgIDMyLCAzMywgIDIsICAxLCAyMywgMzMsIDQxLCAy NywKLSAgICAzNSwgMzAsIDM4LCAyMywgMzMsICAzLCAyOCwgMzQsCi0gICAgMzQsIDI3LCA0MSwg MjksIDM5LCAzNSwgMzYsIDI5LAotICAgIDMyLCAyNywgMzAsIDMyLCAyNCwgNjEsIDM3LCAyNiwK LSAgICA1OSwgMjUsIDM1LCAyNywgMzYsIDM3LCAzMCwgMzEsCi0gICAgMzQsIDQwLCAgMywgMjgs IDM0LCAzOSwgMzIsIDMxLAotICAgIDMyLCAzMCwgMjQsIDI4LCAzNSwgMzYsIDI2LCAzMiwKLSAg ICAzMSwgMzMsIDI5LCAzMywgMzksIDI1LCAzMCwgMjQsCi0gICAgMzUsIDU5LCAyOSwgMzQsIDI1 LCAzMCwgMjEsIDM1LAotICAgIDQzLCA0MCwgMzIsIDI5LCAgNSwgMjgsIDMxLCA2MiwKLSAgICAz MywgMzMsIDI1LCAzMSwgMjEsIDMxLCA0MywgMzEsCi0gICAgMzQsIDMzLCAyMCwgNDAsIDM5LCAz MSwgMzEsIDU3LAotICAgIDM4LCAzMiwgNDIsIDMzLCAzMiwgMzEsIDMyLCAyOSwKLSAgICAzMCwg NDQsICA1LCAzMSwgMjIsIDM0LCAzNiwgMTcsCi0gICAgMzgsIDU4LCAzOCwgMzUsIDMyLCA2MCwg MzUsIDI0LAotICAgIDMyLCAzOCwgMTYsIDQ1LCA0MiwgMzIsIDMxLCAyOSwKLSAgICAgNCwgMzAs IDE3LCA0MCwgNDYsIDQ4LCA2MywgMzIsCi0gICAgNDIsIDE5LCA0MSwgMjIsIDI4LCAzNiwgNDUs IDMzLAotICAgIDMzLCAzMiwgMjksICA3LCA0MSwgNDIsIDE4LCAzMywKLSAgICAzMywgMzIsIDIy LCAzNywgIDEsIDI2LCAyMiwgMjMsCi0gICAgNDksIDI4LCAyNiwgMjcsIDMyLCAzMywgMjcsIDIz LAotICAgIDI4LCAzNiwgMTUsICA2LCAzNCwgMjcsIDMxLCAyNiwKLSAgICAyMywgIDIsIDMzLCAz MiwgMzQsIDQxLCAyOCwgMzIsCi0gICAgNDEsICAwLCAzNiwgMzgsIDM0LCAzMSwgNDcsIDMyLAot ICAgIDE3LCAzMSwgMzksIDMzLCAzNywgNTEsIDMwLCA0NywKLSAgICAzMiwgNTAsIDMyLCAxOSwg NjMsIDMwLCAyNSwgMjcsCi0gICAgMzMsIDYyLCAyNCwgMzEsIDI3LCAzMCwgMzcsIDMxLAotICAg IDQ1LCAzMiwgMzksIDIwLCA0NiwgNDcsIDM1LCAxOSwKLSAgICAzNCwgIDEsIDQ5LCAyMSwgMjEs IDE0LCA1MSwgMjYsCi0gICAgMjMsIDMxLCAzNiwgMzUsIDU4LCAyOSwgMjksIDIxLAotICAgIDIw LCA0MiwgMTMsIDI4LCAxMiwgNDAsIDMxLCAzMywKLSAgICAzOSwgNjAsIDMyLCA0NCwgMzMsIDMx LCAyOCwgMzcsCi0gICAgMjksIDMyLCAzMCwgNDksIDQzLCAyOCwgMzksIDI1LAotICAgIDMyLCA0 OCwgIDIsIDE1LCAyMCwgMjUsIDMxLCAyOCwKLSAgICAyMSwgMjQsIDI1LCAxNSwgMzEsIDE3LCAz NywgNDMsCi0gICAgMTgsIDMyLCAzMywgMjQsIDMzLCAzNiwgMTMsIDMzLAotICAgIDMxLCAzOSwg MTEsIDMxLCAzMywgMzIsIDM5LCAzNywKLSAgICAzMiwgMzIsIDI5LCAxNywgNDQsIDQ2LCAzNiwg MzUsCi0gICAgMjYsIDM3LCA1OCwgMzIsIDM0LCAzOCwgIDgsIDM4LAotICAgIDM4LCAyMiwgMjks IDI1LCAxNiwgMzUsIDMyLCAzNSwKLSAgICAzMywgNDMsIDE4LCA0NiwgMzgsIDUwLCAzMywgMTgs Ci0gICAgNTMsIDYwLCAxMywgMzIsIDM2LCAzMywgNTEsIDM2LAotICAgIDQzLCA0NSwgMjcsIDQy LCAyOSwgMjQsIDMwLCAyNSwKLSAgICAzMSwgNTIsIDMxLCAzNSwgMzgsICA5LCAyMiwgMzQsCi0g ICAgIDQsIDE3LCAyOCwgNTUsIDQyLCAyNSwgMTcsIDIwLAotICAgIDQ3LCAzNCwgMzMsIDE2LCA0 MCwgMjUsIDE2LCAzMCwKLSAgICA1MywgMjksIDEwLCAxMSwgMTQsIDI2LCAzMywgIDQsCi0gICAg MzUsIDQ0LCAyNiwgMTYsIDMxLCAyNiwgMzQsIDM4LAotICAgIDI5LCAzMSwgMzAsIDI0LCAyMiwg NjEsIDMyLCAgOSwKLSAgICA0NSwgMzQsIDMxLCAxOSwgIDksIDMxLCA0NiwgMzEsCi0gICAgMzUs IDU0LCAyOSwgNTcsIDMwLCA1MCwgIDMsIDMxLAotICAgIDYzLCAzNCwgNDcsIDQxLCA1MSwgMTgs IDMxLCAxNCwKLSAgICAzNywgMzgsIDMxLCAyNCwgMzIsIDMxLCA1MCwgMzMsCi0gICAgMzEsIDU0 LCAyNywgIDksIDMzLCAyMywgMTksIDMyLAotICAgIDI5LCAyOSwgMzMsIDI4LCA0NywgNDksIDMw LCA0NywKLSAgICAzMywgMjcsIDI1LCA1NCwgNDQsIDQ1LCA1MCwgNTgsCi0gICAgNTEsIDQ4LCAz MywgNTksIDMzLCAzNCwgNTcsIDEzLAotICAgIDI2LCAzMywgMTMsIDQ4LCAzMCwgMTEsICA3LCA1 NiwKLSAgICAzNCwgNTUsIDI2LCAgMCwgMjYsIDM1LCAgMSwgNTEsCi0gICAgMzMsIDUzLCAzMSwg NDUsIDEyLCAyOSwgMjksIDUxLAotICAgIDMxLCA0OCwgIDIsICA2LCAzNCwgMzAsIDI4LCAzMywK LSAgICA2MCwgNDAsIDI3LCA0NiwgMzEsICA5LCAzNSwgMjksCi0gICAgMzEsIDM5LCA1NSwgNDYs IDE5LCAzNywgNjIsIDM0LAotICAgIDMwLCAxNiwgMTksIDQ5LCA0MSwgNDEsIDM5LCAzNywKLSAg ICAxNCwgIDUsIDEzLCAzNSwgNTUsIDMwLCA0MCwgNDAsCi0gICAgNDIsICA4LCAyMCwgMjUsIDQ1 LCAzNSwgMzMsIDM2LAotICAgIDU0LCAzOCwgMjcsIDM3LCA2MiwgNDAsIDE1LCA1OSwKLSAgICA0 OSwgMzEsIDI5LCAzNCwgMzQsIDM5LCAyNCwgMjksCi0gICAgMjUsIDI5LCAyMSwgMjksIDEwLCA2 MSwgMzMsIDQ5LAotICAgIDM1LCAzNCwgIDMsIDM4LCAzOSwgMjksICA3LCA0MSwKLSAgICAgMSwg MzUsICA0LCAyMywgMTUsIDIzLCAxMSwgMzcsCi0gICAgMjgsIDM1LCAzMCwgMzAsIDI0LCAgMSwg NDMsIDU2LAotICAgICA4LCAzNCwgNDIsIDI0LCA0NSwgMzAsIDIwLCAyMywKLSAgICAgOCwgMzgs IDIyLCAzMywgMTcsIDUyLCAzNCwgMjIsCi0gICAgNTMsIDQzLCA0NCwgIDEsIDI3LCAzMSwgNDEs IDQzLAotICAgIDQxLCAzMCwgMzEsIDM2LCAzMCwgIDUsIDU1LCAzMSwKLSAgICAzMywgMzAsIDQw LCAyMywgMTUsIDI5LCAzNCwgMzQsCi0gICAgNTksIDM0LCAzMCwgMTEsIDEzLCAzOCwgIDUsICAw LAotICAgIDMwLCA0MiwgIDUsIDMwLCAyOSwgMzQsIDEwLCA0NCwKLSAgICAzMCwgNjMsIDM1LCAx MiwgIDMsIDI2LCAxNSwgMTcsCi0gICAgMjUsIDM0LCA0MywgMzksIDM0LCA1NiwgMjksIDIzLAot ICAgIDMwLCAxMiwgMzAsIDEwLCAzNSwgIDksIDI0LCA1OCwKLSAgICAxMCwgMTIsIDU0LCAzMywg MzcsIDIwLCA0MSwgMzUsCi0gICAgMjksIDE4LCA2MSwgMzAsIDQwLCAyNCwgMzksIDUzLAotICAg IDYyLCAyNiwgMjksIDMzLCAzNCwgNTMsIDQ5LCAyMSwKLSAgICAyNywgMTEsIDYzLCAyMCwgMjYs IDIzLCAgNywgMTMsCi0gICAgIDYsIDQ3LCAyOSwgMzAsICA5LCA1MSwgMjIsIDM0LAotICAgIDIx LCAyNSwgMzMsIDU2LCA1NywgMzAsIDM4LCA1MSwKLSAgICA1MSwgMzgsIDYzLCAyOCwgNDAsIDM1 LCAzMywgMTgsCi0gICAgMzMsIDMzLCAyNCwgNTgsIDU4LCAzNCwgNDksIDI5LAotICAgIDQzLCAg NCwgIDEsICA0LCA0MiwgMzUsIDM1LCAzMCwKLSAgICAxNywgIDUsIDU2LCA2MSwgMjUsIDM3LCAz NiwgNTUsCi0gICAgMjgsIDM1LCAyOSwgNTAsIDQ4LCA1MiwgIDIsIDQyLAotICAgIDM0LCA0MCwg NDYsIDQ2LCA0MywgMzUsIDI5LCA0OCwKLSAgICAyMCwgMjksIDMxLCA0MSwgIDcsIDMwLCAzNSwg MTksCi0gICAgMTQsIDIxLCAgOCwgMzksIDM5LCA0MCwgNDYsIDU1LAotICAgIDM0LCAgNiwgMzAs IDM0LCAzNywgMjUsIDM3LCAzMywKLSAgICAyMiwgNDQsIDUyLCAxNywgMzUsIDI5LCAzNiwgMzUs Ci0gICAgNDAsIDM3LCAyOCwgMzAsIDUwLCAxNCwgMjgsIDU1LAotICAgICA2LCAyMywgMTksIDE0 LCAzMCwgIDMsIDMwLCAyOCwKLSAgICAyOCwgNjEsIDYxLCA0NywgNDUsIDQ4LCA0MCwgNDAsCi0g ICAgMzQsIDM0LCAyNSwgMzAsIDI5LCAzNSwgIDQsIDI2LAotICAgIDUzLCA1MCwgMjYsIDQxLCAy NywgNTksIDI3LCAzOCwKLSAgICAzOSwgIDMsIDUwLCA0MywgNDcsIDIzLCAzMywgNTUsCi0gICAg MzUsIDIxLCAyMywgMzUsIDYxLCAzMywgNDYsIDUyLAotICAgIDM1LCAzNCwgMjQsIDMwLCA0Mywg MTYsIDM3LCAyMSwKLSAgICAgMiwgMjQsIDQ1LCAzNCwgMzAsIDU1LCA1NSwgIDEsCi0gICAgMjks IDI5LCAyNiwgMjgsIDI1LCAzMSwgMzYsIDIyLAotICAgIDE3LCAzMCwgNTIsICAyLCA0NCwgNDQs IDU3LCAyNiwKLSAgICA2MiwgNDEsIDM5LCA1NywgMjYsIDQ2LCA0OSwgMTEsCi0gICAgMTYsIDE5 LCAgNSwgNTksIDM4LCAzOSwgNTgsIDM4LAotICAgIDI1LCA0OSwgNTAsIDIyLCAyOCwgNTksICA5 LCA1OSwKLSAgICAgNywgMjgsIDU1LCAxNywgIDQsIDM1LCA1MCwgMjEsCi0gICAgMjksIDQ0LCA0 NywgMTgsIDI0LCAxOSwgMjUsIDQyLAotICAgIDM1LCAgMywgNTEsIDM1LCAxNiwgMzUsIDMwLCA2 MywKLSAgICA1NywgMzksIDM5LCAyNSwgMzUsIDM4LCAgOSwgMTYsCi0gICAgMzYsIDQ1LCAzMSwg NjAsIDE0LCAzNCwgNDIsIDI0LAotICAgICAwLCAzNywgMTgsIDYxLCA1NywgMzcsIDI4LCA1MywK LSAgICAyMCwgNDYsIDE0LCA0NywgMzgsIDM4LCAzOCwgIDksCi0gICAgMzQsIDM5LCA0MywgMTcs IDM5LCA1OSwgIDUsIDI3LAotICAgICAwLCAxMiwgMjcsCi19OwotCi1zdGF0aWMgY29uc3QgdWlu dDhfdCB0YWJsZTFfbXZ5WzEwOTldID0gewotICAgIDMyLCAzMiwgMzEsIDMxLCAzMiwgMzMsIDMx LCAzMywKLSAgICAzMywgMzIsIDMyLCAzMCwgMzQsIDMxLCAzMiwgMjksCi0gICAgMzMsIDMwLCAz MiwgMzMsIDMxLCAzNSwgMzQsIDMwLAotICAgIDM0LCAzMSwgMzMsIDI5LCAyOSwgMzEsIDMzLCAz NSwKLSAgICAzMCwgMzAsIDM1LCAzMiwgMzIsIDM0LCAzNCwgMjgsCi0gICAgMjUsIDMyLCAzNiwg MjcsIDMyLCAzMiwgMzIsIDM3LAotICAgIDM5LCAgMywgMzIsIDMwLCAzMSwgMjYsIDMxLCAzMiwK LSAgICAzMiwgMzgsIDI5LCAyOSwgMzIsIDM0LCAzMSwgMzEsCi0gICAgMzQsIDM1LCAzMywgMzMs IDI4LCAzMywgIDEsIDMzLAotICAgIDI3LCAyOSwgMzAsIDMxLCAyOCwgMjksIDM3LCAzNSwKLSAg ICAzMSwgMzMsIDM1LCAyNywgMzYsIDM3LCAyNSwgMjUsCi0gICAgNjEsIDM1LCAgNCwgIDUsIDMy LCAzMywgMzYsIDMwLAotICAgIDIzLCAzMCwgMjgsIDM0LCAzMSwgMzIsIDMyLCAzOSwKLSAgICAz MiwgMzQsIDIxLCAzOSwgMzIsIDU5LCAzMiwgMjgsCi0gICAgMzIsIDM2LCA2MCwgMzMsIDI0LCAz NiwgMzIsIDMyLAotICAgIDQxLCAgMiwgMzIsIDM4LCAyNiwgMjIsIDMzLCAzMCwKLSAgICAzMSwg MzIsIDMyLCAzMCwgMzEsIDMyLCAyOSwgIDMsCi0gICAgNDAsIDM4LCAzMiwgMzIsIDMzLCAyNiwg MzEsIDM0LAotICAgIDI4LCAzOCwgMzQsIDMxLCAgMywgMzEsIDM1LCAzOCwKLSAgICAyNywgMzUs IDMzLCAyOCwgMjksIDI3LCAyOSwgMjcsCi0gICAgNDMsIDI5LCAzNywgNjMsIDMxLCAzMywgMzQs IDMwLAotICAgIDMxLCAzMCwgMzcsIDMwLCAzNSwgMzUsIDI2LCA0MSwKLSAgICAzNywgMzEsIDMz LCAyOCwgMjYsIDMwLCA0MiwgMjQsCi0gICAgIDcsIDI3LCAzMywgMjksIDM2LCAyOCwgMzQsIDU3 LAotICAgIDIzLCA0MSwgMzYsIDIzLCAzNSwgMzQsIDI1LCAzMCwKLSAgICAyNSwgMzMsIDI1LCAy NSwgMjksIDI0LCAzMywgMzksCi0gICAgMzMsIDMzLCAgMCwgMzcsIDMxLCAzNiwgMjEsIDMyLAot ICAgIDYxLCAyNCwgMzUsIDYxLCAzMSwgIDUsIDMxLCA1OSwKLSAgICAzOSwgMjEsIDMyLCAzMCwg MzQsIDIyLCA0MCwgMzIsCi0gICAgMjksIDE2LCAzMSwgIDUsIDYyLCAgMiwgMjAsIDM5LAotICAg IDM5LCAzMiwgMzMsICAxLCAzMSwgMjQsIDM2LCAzMiwKLSAgICAzNiwgMzIsIDI4LCAyNiwgIDYs IDMxLCAzOCwgMzQsCi0gICAgNTgsIDM1LCAzMiwgMzMsIDMzLCAxNywgNDMsIDI2LAotICAgIDMx LCA0MCwgMzEsIDM0LCAzMiwgMzIsIDMxLCAxOSwKLSAgICAzMCwgMzIsIDI5LCAzMywgMzgsIDM4 LCAzMiwgNTksCi0gICAgNDAsIDE4LCAzOCwgMzIsIDM1LCAzNCwgMzIsIDE3LAotICAgICAxLCAx NSwgMzAsIDI4LCAzMSwgMjgsIDM0LCAyOSwKLSAgICAzMiwgMjcsIDM1LCAyNywgNDksIDIyLCAz NywgMzQsCi0gICAgMzcsIDI2LCAzMiwgMzIsIDIyLCAyOCwgNDUsIDI5LAotICAgIDMwLCAzMSwg NDMsIDQ2LCA0MSwgMzAsIDI2LCAxMywKLSAgICAzNCwgMzIsIDI3LCAzOCwgNDIsIDQyLCAzMywg NDcsCi0gICAgMzMsIDYwLCAyNywgNDIsIDI1LCAzMiwgMjIsIDMyLAotICAgIDQ4LCAzMiwgNDUs IDMzLCAzMywgNDEsIDI3LCAyNSwKLSAgICAxOSwgMzEsIDM1LCAxOSwgMzYsIDQyLCAyNywgMTcs Ci0gICAgMzEsIDQ0LCAyOCwgMzMsIDMzLCAzMSwgMjMsIDMxLAotICAgIDQwLCAzMywgMzEsIDM0 LCAzMCwgMzIsIDMzLCAzNiwKLSAgICAzNSwgNDcsIDM3LCA0MSwgMzEsIDIzLCA0MSwgMjksCi0g ICAgMzAsIDM1LCAzMiwgMjUsIDMyLCAyOCwgNTgsICAyLAotICAgIDM3LCAzMywgMTQsIDMzLCA0 OSwgMjAsIDM5LCAzNiwKLSAgICAyMSwgIDksIDIzLCAzMywgMzUsIDI0LCAzOSwgMzcsCi0gICAg MTEsIDMzLCAzMCwgMzEsIDMxLCAyOCwgNTEsIDQwLAotICAgIDM1LCAyOSwgMjUsIDMzLCA0Niwg MzUsIDM3LCAzMCwKLSAgICAzMCwgIDgsIDYzLCAyOCwgMTUsIDQwLCAzMywgNDUsCi0gICAgNDks IDI1LCAzMiwgIDQsIDQ3LCA1MSwgMzYsIDM5LAotICAgIDUzLCAxMCwgMjQsIDI5LCAzMCwgMzEs IDI1LCA0MCwKLSAgICAzOCwgMzgsIDMzLCA1NiwgMjMsIDI3LCAzMiwgMzcsCi0gICAgMjYsIDI5 LCA0MywgMzYsIDMzLCAyNCwgNTUsIDQzLAotICAgICA5LCAyOSwgMzQsIDM0LCAyNCwgMzMsIDE4 LCAzMywKLSAgICAzMywgMzAsIDMxLCA1MCwgMjQsIDYwLCAzMCwgMzksCi0gICAgMzQsIDMwLCAz OSwgMjgsIDIyLCAzOCwgIDIsIDI2LAotICAgIDYzLCAzMiwgNTcsIDIxLCAzOSwgMzMsIDI4LCAx OCwKLSAgICAzMCwgMzQsIDIyLCAzMywgMjksIDQxLCAzMCwgMzQsCi0gICAgMzUsIDIxLCAxMywg MzQsIDM1LCAzOSwgMzAsIDQ2LAotICAgIDMyLCA0MiwgMzIsIDMxLCAzMywgMjYsIDExLCAzMywK LSAgICAyMiwgMzEsIDI1LCAzMSwgNTMsIDI3LCA0MywgMjUsCi0gICAgNDAsIDUwLCAyMSwgMzYs IDM4LCAzMCwgMTIsIDMxLAotICAgIDM0LCAyMCwgMTUsIDI5LCAzMiwgNjIsIDMwLCAxMywKLSAg ICAxNywgMzIsIDE5LCAzMSwgMjAsIDMxLCAzMCwgIDcsCi0gICAgIDEsIDE3LCAzNCwgMzcsIDMx LCAzMSwgNDQsIDM0LAotICAgIDI2LCA0MCwgMTYsIDM3LCA1MiwgNDgsIDMwLCAyMCwKLSAgICAx OCwgMzMsIDM4LCAyOSwgIDcsIDI1LCAzMCwgNTQsCi0gICAgNDUsIDQ3LCA0NiwgNDEsIDI5LCAy OSwgMTYsIDMwLAotICAgIDE0LCAyNiwgMzgsIDM0LCAzNCwgMjksIDM0LCAzMCwKLSAgICAyOSwg MzAsIDU3LCAzMCwgIDQsIDQ2LCAzMywgMjksCi0gICAgMzksIDQ0LCAzMCwgMzEsIDUwLCAzMywg MzEsIDMyLAotICAgIDE5LCAzMiwgNDAsIDMxLCAzNywgNDcsICAxLCAzNSwKLSAgICAxNiwgMzEs ICAwLCAzNSwgMzMsICAxLCAxNywgMzQsCi0gICAgIDksIDM0LCAzMywgMzEsIDQ5LCA0MywgNDIs IDUxLAotICAgIDM0LCAyOSwgMjMsIDI5LCAxNCwgMzAsIDQ1LCA0OSwKLSAgICAxMSwgMjQsIDMx LCAyOCwgMzUsIDQxLCAzMCwgNDQsCi0gICAgMTgsIDI5LCAzNCwgMzUsIDM2LCAyNSwgMjYsIDIx LAotICAgIDMxLCAzMCwgMzQsIDE5LCAzNCwgNDQsIDM2LCAzOCwKLSAgICAyNSwgMzEsIDI4LCAy MywgMzcsICAzLCA1NSwgNDEsCi0gICAgMzAsIDIyLCA0MSwgMjQsIDMzLCAyNiwgMzUsIDM1LAot ICAgIDMwLCA1NSwgNTEsIDQ3LCA0OCwgMzgsIDI0LCAxNSwKLSAgICAyMSwgNTAsIDI1LCA0Niwg MzAsIDI5LCAxMCwgMzQsCi0gICAgNDIsIDQ1LCAyOSwgNDIsIDIyLCAgMywgMzMsIDI3LAotICAg IDM0LCAgMSwgMzQsIDI4LCAzNCwgMzYsIDM1LCAyMywKLSAgICAyMywgMTMsIDU4LCAgMywgMjYs IDYzLCAyNSwgMzEsCi0gICAgMzQsIDYxLCAzOCwgMzksIDI1LCA2MSwgMjksIDM3LAotICAgIDMw LCA0MSwgMjYsIDQ4LCAyOCwgMzMsIDUwLCAzNSwKLSAgICAzMCwgMzcsIDI5LCAyOSwgNDAsICA2 LCAzOSwgMjgsCi0gICAgMjgsIDE5LCAgOCwgMjIsIDQ1LCAzNCwgMzUsIDEwLAotICAgIDU4LCAx NywgMzcsIDM5LCAzMCwgMTgsIDU0LCAxNCwKLSAgICAyOSwgMTYsIDU5LCAzMCwgMzUsIDIzLCAz NSwgMzAsCi0gICAgNDcsIDM2LCAyOSwgNTUsIDIwLCAxMiwgMzEsIDM1LAotICAgIDE0LCAyOSwg MTgsIDM0LCAzNCwgMjQsIDI5LCAyNiwKLSAgICAyMiwgIDIsIDI3LCAyMywgIDgsIDMwLCA1NSwg MzgsCi0gICAgNjAsIDMxLCAgNCwgMzQsIDQ5LCAzNCwgMjcsIDM0LAotICAgIDMzLCAzMCwgMzEs IDU0LCA0MiwgMzUsIDM4LCA0NiwKLSAgICA0NCwgMjYsIDI3LCAgOSwgMzksIDI1LCAyMSwgMjks Ci0gICAgMjgsIDQyLCAxMywgIDAsICA1LCAzNCwgMzcsIDI4LAotICAgIDI0LCAyOSwgNjMsIDI2 LCAyMiwgMjcsIDI5LCAyNSwKLSAgICAzMywgMjUsIDYxLCAgMCwgMzUsIDI1LCAzNiwgMTUsCi0g ICAgMjcsIDQwLCA1MywgMzMsICAzLCAxMCwgMTYsIDM3LAotICAgIDM4LCAxOCwgMzAsIDQ2LCAy NywgIDksICA2LCAyOSwKLSAgICA2MiwgIDgsIDQyLCAyOCwgMjksICAzLCAyNSwgMTYsCi0gICAg MjYsIDI5LCAzNSwgMjgsIDI3LCA1MSwgNjEsIDQ4LAotICAgIDM3LCAgOSwgMzQsICA3LCA0OSwg NDUsIDIwLCAyOSwKLSAgICAyMSwgIDUsICA1LCAyOSwgMjgsIDM0LCAyOSwgMjQsCi0gICAgMTAs IDI0LCAzNSwgMzYsIDM4LCA1NSwgMTEsIDM2LAotICAgIDM4LCA1MywgNTQsIDI2LCAzMCwgNDks IDIwLCAyNywKLSAgICAzMCwgMzksIDMzLCA0MSwgNDksIDIyLCAzOCwgMzgsCi0gICAgIDQsIDMw LCAgOCwgIDksICAzLCAyNCwgMjIsIDUwLAotICAgIDM3LCAzNiwgMzEsIDI3LCAgMiwgIDksIDQy LCA2MywKLSAgICAyNSwgMTksIDQ0LCAgMSwgMjgsIDI4LCA0OCwgMzAsCi0gICAgMzQsIDQxLCA0 MSwgMzgsIDEyLCAyNywgMTUsICAwLAotICAgIDE2LCAzNCwgMzUsIDM4LCAyOCwgMjksIDQwLCA0 MiwKLSAgICA1MSwgNTIsIDQ1LCA1NCwgNTksIDU5LCA0MiwgNDQsCi0gICAgMzcsIDI2LCA0Niwg MjQsIDE1LCAzOSwgMjIsIDQ2LAotICAgIDE5LCAzNSwgMzgsIDE3LCAzNywgMjMsIDUyLCA1NSwK LSAgICA1MCwgMzcsIDI2LCAxMSwgMzcsIDEyLCAyNCwgMzAsCi0gICAgMTYsIDEzLCAyMiwgMTMs IDM2LCAzNSwgNDAsIDQxLAotICAgIDM0LCA0MSwgMjYsIDUzLCA1MSwgIDUsIDIxLCAzMCwKLSAg ICAgMiwgNjMsIDQxLCAyMCwgIDEsIDU2LCAyMSwgMjQsCi0gICAgMjUsICA1LCAyOCwgMzUsIDI2 LCAyOCwgMzAsIDE4LAotICAgIDI5LCAyMywgNDAsIDM0LCAyMCwgNDIsIDM5LCAzNCwKLSAgICAy OCwgNjEsIDM4LCAyNywgNjIsICA5LCAzNiwgMTcsCi0gICAgIDksIDQ5LCAyNCwgMjUsIDU0LCAz NCwgMzksIDM3LAotICAgICAzLCAgMSwgMjUsIDM4LCAzOCwgNDQsIDM1LCAzNiwKLSAgICAxMiwg NjAsIDM2LCAzOCwgNDAsIDI1LCA0MywgMzksCi0gICAgNTMsIDI4LCAzOSwgNTcsIDQ2LCAxMCwg NTIsIDI3LAotICAgIDM1LCA0MiwgNDUsIDU5LCAxNSwgNjAsIDM4LCAyNCwKLSAgICAyMywgMzks IDEyLCAyOSwgMjQsICAwLCAyMCwgMTYsCi0gICAgMjgsIDQzLCAzNSwgMjgsICAxLCA0OSwgIDQs IDIxLAotICAgIDQyLCAzOSwgMjksICAzLCA0NCwgMjEsIDUzLCA1NSwKLSAgICAxMSwgIDUsICAz LCAzOSwgNTMsIDI4LCAyNSwgMTksCi0gICAgMzQsIDI4LCAyMSwKLX07Ci0KLU1WVGFibGUgZmZf bXZfdGFibGVzWzJdID0gewotICAgIHsgdGFibGUwX212X2NvZGUsCi0gICAgICB0YWJsZTBfbXZf Yml0cywKLSAgICAgIHRhYmxlMF9tdngsCi0gICAgICB0YWJsZTBfbXZ5LCB9LAotICAgIHsgdGFi bGUxX212X2NvZGUsCi0gICAgICB0YWJsZTFfbXZfYml0cywKLSAgICAgIHRhYmxlMV9tdngsCi0g ICAgICB0YWJsZTFfbXZ5LCB9Ci19OwotCiBjb25zdCB1aW50OF90IGZmX3YyX21iX3R5cGVbOF1b Ml0gPSB7CiAgICAgeyAxLCAxIH0sIHsgICAgMCwgMiB9LCB7ICAgIDMsIDMgfSwgeyAgICA5LCA1 IH0sCiAgICAgeyA1LCA0IH0sIHsgMHgyMSwgNyB9LCB7IDB4MjAsIDcgfSwgeyAweDExLCA2IH0s CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRkYXRhLmggYi9saWJhdmNvZGVjL21zbXBl ZzRkYXRhLmgKaW5kZXggMjIxN2I1ZWE0OC4uMTMyNjdkMjVjMSAxMDA2NDQKLS0tIGEvbGliYXZj b2RlYy9tc21wZWc0ZGF0YS5oCisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGRhdGEuaApAQCAtMzUs MTYgKzM1LDYgQEAKICNpbmNsdWRlICJsaWJhdnV0aWwvYXR0cmlidXRlc19pbnRlcm5hbC5oIgog CiAjaW5jbHVkZSAicmwuaCIKLSNpbmNsdWRlICJ2bGMuaCIKLQotLyogbW90aW9uIHZlY3RvciB0 YWJsZSAqLwotdHlwZWRlZiBzdHJ1Y3QgTVZUYWJsZSB7Ci0gICAgY29uc3QgdWludDE2X3QgKnRh YmxlX212X2NvZGU7Ci0gICAgY29uc3QgdWludDhfdCAqdGFibGVfbXZfYml0czsKLSAgICBjb25z dCB1aW50OF90ICp0YWJsZV9tdng7Ci0gICAgY29uc3QgdWludDhfdCAqdGFibGVfbXZ5OwotICAg IGNvbnN0IFZMQ0VsZW0gKnZsYzsgICAgICAgLyogZGVjb2Rpbmc6IHZsYyAqLwotfSBNVlRhYmxl OwogCiBGRl9WSVNJQklMSVRZX1BVU0hfSElEREVOCiAjZGVmaW5lIE5CX1JMX1RBQkxFUyAgNgpA QCAtNjQsNyArNTQsNiBAQCBleHRlcm4gY29uc3QgdWludDE2X3QgZmZfbXNtcDRfbXZfdGFibGUw W01TTVBFRzRfTVZfVEFCTEVTX05CX0VMRU1TXTsKIGV4dGVybiBjb25zdCB1aW50OF90ICBmZl9t c21wNF9tdl90YWJsZTBfbGVuc1tNU01QRUc0X01WX1RBQkxFU19OQl9FTEVNU107CiBleHRlcm4g Y29uc3QgdWludDE2X3QgZmZfbXNtcDRfbXZfdGFibGUxW01TTVBFRzRfTVZfVEFCTEVTX05CX0VM RU1TXTsKIGV4dGVybiBjb25zdCB1aW50OF90ICBmZl9tc21wNF9tdl90YWJsZTFfbGVuc1tNU01Q RUc0X01WX1RBQkxFU19OQl9FTEVNU107Ci1leHRlcm4gTVZUYWJsZSBmZl9tdl90YWJsZXNbMl07 CiAKIGV4dGVybiBjb25zdCB1aW50OF90IGZmX3YyX21iX3R5cGVbOF1bMl07CiBleHRlcm4gY29u c3QgdWludDhfdCBmZl92Ml9pbnRyYV9jYnBjWzRdWzJdOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2Rl Yy9tc21wZWc0ZW5jLmMgYi9saWJhdmNvZGVjL21zbXBlZzRlbmMuYwppbmRleCA1Y2U1NGE4ZDE2 Li4wYWIyZTQ3M2FhIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21zbXBlZzRlbmMuYworKysgYi9s aWJhdmNvZGVjL21zbXBlZzRlbmMuYwpAQCAtNTUsMTEgKzU1LDEwIEBAIHN0YXRpYyB1aW50OF90 IHJsX2xlbmd0aFtOQl9STF9UQUJMRVNdW01BWF9MRVZFTCsxXVtNQVhfUlVOKzFdWzJdOwogc3Rh dGljIHVpbnQzMl90IG12X3ZlY3Rvcl90YWJsZXNbMl1bNDA5Nl07CiAKIC8qIGJ1aWxkIHRoZSB0 YWJsZSB3aGljaCBhc3NvY2lhdGUgYSAoeCx5KSBtb3Rpb24gdmVjdG9yIHRvIGEgdmxjICovCi1z dGF0aWMgYXZfY29sZCB2b2lkIGluaXRfbXZfdGFibGUoY29uc3QgTVZUYWJsZSAqdGFiLCB1aW50 MzJfdCBtdl92ZWN0b3JfdGFibGVbNDA5Nl0sCitzdGF0aWMgYXZfY29sZCB2b2lkIGluaXRfbXZf dGFibGUoY29uc3QgdWludDE2X3QgbXZfdGFibGVbXSwgY29uc3QgdWludDhfdCBtdl90YWJsZV9s ZW5zW10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbXZfdmVj dG9yX3RhYmxlWzQwOTZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGVzY2FwZV9jb2RlLCBpbnQgZXNjYXBlX2xlbmd0aCkKIHsKLSAgICBpbnQgaSwgeCwgeTsK LQogICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNDA5NjsgaSsrKSB7CiAgICAgICAgIC8vIEluaXRp YWxpemUgdG8gdGhlIHRhYmxlIHRvICJlc2NhcGVkIi4gVGhpcyBjb2RlIGlzIGVxdWl2YWxlbnQg dG8KICAgICAgICAgLy8gdGhlIGZvbGxvd2luZyBkb3VibGUgbG9vcCAod2l0aCB4IGFuZCB5IHJh bmdpbmcgb3ZlciAwLi42Myk6CkBAIC02NywxMSArNjYsMTYgQEAgc3RhdGljIGF2X2NvbGQgdm9p ZCBpbml0X212X3RhYmxlKGNvbnN0IE1WVGFibGUgKnRhYiwgdWludDMyX3QgbXZfdmVjdG9yX3Rh YmxlWzQKICAgICAgICAgbXZfdmVjdG9yX3RhYmxlW2ldID0gKGVzY2FwZV9jb2RlIDw8IDIwKSB8 IChpIDw8IDgpIHwgZXNjYXBlX2xlbmd0aDsKICAgICB9CiAKLSAgICBmb3IgKGkgPSAwOyBpIDwg TVNNUEVHNF9NVl9UQUJMRVNfTkJfRUxFTVMgLSAxOyBpKyspIHsKLSAgICAgICAgeCA9IHRhYi0+ dGFibGVfbXZ4W2ldOwotICAgICAgICB5ID0gdGFiLT50YWJsZV9tdnlbaV07Ci0gICAgICAgIG12 X3ZlY3Rvcl90YWJsZVsoeCA8PCA2KSB8IHldID0gKHRhYi0+dGFibGVfbXZfY29kZVtpXSA8PCA4 KSB8IHRhYi0+dGFibGVfbXZfYml0c1tpXTsKKyAgICBmb3IgKHVpbnQzMl90IGkgPSAwLCBjb2Rl ID0gMDsgaSA8IE1TTVBFRzRfTVZfVEFCTEVTX05CX0VMRU1TOyBpKyspIHsKKyAgICAgICAgaW50 IHN5bSA9IG12X3RhYmxlW2ldOworICAgICAgICBpbnQgbGVuID0gbXZfdGFibGVfbGVuc1tpXTsK KyAgICAgICAgaW50IHggPSBzeW0gPj4gODsKKyAgICAgICAgaW50IHkgPSBzeW0gJiAweEZGOwor ICAgICAgICAvLyBXZSBpZ25vcmUgdGhlIGVzY2FwZSB2YWx1ZSBoZXJlIGFuZCByZXN0b3JlIGl0 IGFmdGVyIHRoZSBsb29wLgorICAgICAgICBtdl92ZWN0b3JfdGFibGVbKHggPDwgNikgfCB5XSA9 IChjb2RlID4+ICgyNCAtIGxlbikpIHwgbGVuOworICAgICAgICBjb2RlICs9IDFVIDw8ICgzMiAt IGxlbik7CiAgICAgfQorICAgIG12X3ZlY3Rvcl90YWJsZVswXSA9IChlc2NhcGVfY29kZSA8PCAy MCkgfCBlc2NhcGVfbGVuZ3RoOwogfQogCiB2b2lkIGZmX21zbXBlZzRfY29kZTAxMihQdXRCaXRD b250ZXh0ICpwYiwgaW50IG4pCkBAIC0xMjgsOCArMTMyLDEwIEBAIHN0YXRpYyBpbnQgZ2V0X3Np emVfb2ZfY29kZShjb25zdCBSTFRhYmxlICpybCwgaW50IGxhc3QsIGludCBydW4sCiAKIHN0YXRp YyBhdl9jb2xkIHZvaWQgbXNtcGVnNF9lbmNvZGVfaW5pdF9zdGF0aWModm9pZCkKIHsKLSAgICBp bml0X212X3RhYmxlKCZmZl9tdl90YWJsZXNbMF0sIG12X3ZlY3Rvcl90YWJsZXNbMF0sIDB4MDAw MCwgOCArIDEyKTsKLSAgICBpbml0X212X3RhYmxlKCZmZl9tdl90YWJsZXNbMV0sIG12X3ZlY3Rv cl90YWJsZXNbMV0sIDB4MDAwYiwgNCArIDEyKTsKKyAgICBpbml0X212X3RhYmxlKGZmX21zbXA0 X212X3RhYmxlMCwgZmZfbXNtcDRfbXZfdGFibGUwX2xlbnMsCisgICAgICAgICAgICAgICAgICBt dl92ZWN0b3JfdGFibGVzWzBdLCAweDAwMDAsIDggKyAxMik7CisgICAgaW5pdF9tdl90YWJsZShm Zl9tc21wNF9tdl90YWJsZTEsIGZmX21zbXA0X212X3RhYmxlMV9sZW5zLAorICAgICAgICAgICAg ICAgICAgbXZfdmVjdG9yX3RhYmxlc1sxXSwgMHgwMDBiLCA0ICsgMTIpOwogCiAgICAgZm9yIChp bnQgaSA9IDA7IGkgPCBOQl9STF9UQUJMRVM7IGkrKykgewogICAgICAgICBmb3IgKGludCBsZXZl bCA9IDE7IGxldmVsIDw9IE1BWF9MRVZFTDsgbGV2ZWwrKykgewotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0047-avcodec-mpegvideo-Move-MSMPEG4-fields-to-MSMPEG4-con.patch" Content-Disposition: attachment; filename*0="0047-avcodec-mpegvideo-Move-MSMPEG4-fields-to-MSMPEG4-con.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAyZjY2NDIxYzM0NzA2Mzk5MDRiYWVkODBhMjUwOTRkNzNjMmFiYzE5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxMzoyMToyMyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDcvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIE1TTVBFRzQgZmllbGRz IHRvIE1TTVBFRzQKIGNvbnRleHRzCgpTZXZlcmFsIGZpZWxkcyBhcmUgbm90IHVzZWQgYnkgYW55 IGdlbmVyaWMgY29kZSBhbmQgY2FuIHRoZXJlZm9yZQpiZSBtb3ZlZCB0byBtb3JlIHNwZWNpYWxp emVkIGNvbnRleHRzLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFz LnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVndmlkZW8uaCAgfCAg IDcgLS0KIGxpYmF2Y29kZWMvbXNtcGVnNGRlYy5jIHwgMTQ1ICsrKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLS0KIGxpYmF2Y29kZWMvbXNtcGVnNGRlYy5oIHwgIDEyICsrKy0K IGxpYmF2Y29kZWMvbXNtcGVnNGVuYy5jIHwgIDg5ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQog bGliYXZjb2RlYy9tc21wZWc0ZW5jLmggfCAgMTYgKysrKy0KIGxpYmF2Y29kZWMvdmFhcGlfdmMx LmMgIHwgICA0ICstCiBsaWJhdmNvZGVjL3ZjMS5jICAgICAgICB8ICAxMiArKy0tCiBsaWJhdmNv ZGVjL3ZjMS5oICAgICAgICB8ICAgNCArKwogbGliYXZjb2RlYy92YzFfYmxvY2suYyAgfCAgMjYg KysrLS0tLQogbGliYXZjb2RlYy93bXYyZGVjLmMgICAgfCAgNzIgKysrKysrKysrKystLS0tLS0t LS0KIGxpYmF2Y29kZWMvd212MmVuYy5jICAgIHwgIDMzICsrKystLS0tLQogMTEgZmlsZXMgY2hh bmdlZCwgMjI3IGluc2VydGlvbnMoKyksIDE5MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL21wZWd2aWRlby5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCAxMzZi OWIxOGE3Li4zOWNhNGIzZDFhIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisr KyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKQEAgLTM3MiwxMSArMzcyLDYgQEAgdHlwZWRlZiBz dHJ1Y3QgTXBlZ0VuY0NvbnRleHQgewogICAgIGludCBlc2NfcG9zOwogCiAgICAgLyogTVNNUEVH NCBzcGVjaWZpYyAqLwotICAgIGludCBtdl90YWJsZV9pbmRleDsKLSAgICBpbnQgcmxfdGFibGVf aW5kZXg7Ci0gICAgaW50IHJsX2Nocm9tYV90YWJsZV9pbmRleDsKLSAgICBpbnQgZGNfdGFibGVf aW5kZXg7Ci0gICAgaW50IHVzZV9za2lwX21iX2NvZGU7CiAgICAgaW50IHNsaWNlX2hlaWdodDsg ICAgICAvLy88IGluIG1hY3JvYmxvY2tzCiAgICAgaW50IGZpcnN0X3NsaWNlX2xpbmU7ICAvLy88 IHVzZWQgaW4gTVBFRy00IHRvbyB0byBoYW5kbGUgcmVzeW5jIG1hcmtlcnMKICAgICBpbnQgZmxp cGZsb3Bfcm91bmRpbmc7CkBAIC0zODksOSArMzg0LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0Vu Y0NvbnRleHQgewogICAgICAgICBNU01QNF9XTVYyLAogICAgICAgICBNU01QNF9WQzEsICAgICAg ICAvLy88IGZvciBWQzEgKGltYWdlKSwgV01WMyAoaW1hZ2UpIGFuZCBNU1MyLgogICAgIH0gbXNt cGVnNF92ZXJzaW9uOwotICAgIGludCBwZXJfbWJfcmxfdGFibGU7CiAgICAgaW50IGVzYzNfbGV2 ZWxfbGVuZ3RoOwotICAgIGludCBlc2MzX3J1bl9sZW5ndGg7CiAgICAgaW50IGludGVyX2ludHJh X3ByZWQ7CiAgICAgaW50IG1zcGVsOwogCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRk ZWMuYyBiL2xpYmF2Y29kZWMvbXNtcGVnNGRlYy5jCmluZGV4IGI2MGUyMThmNmEuLmRmNjdkNDM1 NDIgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXNtcGVnNGRlYy5jCisrKyBiL2xpYmF2Y29kZWMv bXNtcGVnNGRlYy5jCkBAIC0xMDcsMTEgKzEwNywxMiBAQCBzdGF0aWMgaW50IG1zbXBlZzR2Ml9k ZWNvZGVfbW90aW9uKE1wZWdFbmNDb250ZXh0ICogcywgaW50IHByZWQsIGludCBmX2NvZGUpCiAK IHN0YXRpYyBpbnQgbXNtcGVnNHYxMl9kZWNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKnMsIGludDE2 X3QgYmxvY2tbNl1bNjRdKQogeworICAgIE1TTVA0RGVjQ29udGV4dCAqY29uc3QgbXMgPSBtcHZf dG9fbXNtcGVnNChzKTsKICAgICBpbnQgY2JwLCBjb2RlLCBpOwogICAgIHVpbnQzMl90ICogY29u c3QgbWJfdHlwZV9wdHIgPSAmcy0+Y3VyX3BpYy5tYl90eXBlW3MtPm1iX3ggKyBzLT5tYl95KnMt Pm1iX3N0cmlkZV07CiAKICAgICBpZiAocy0+cGljdF90eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9Q KSB7Ci0gICAgICAgIGlmIChzLT51c2Vfc2tpcF9tYl9jb2RlKSB7CisgICAgICAgIGlmIChtcy0+ dXNlX3NraXBfbWJfY29kZSkgewogICAgICAgICAgICAgaWYgKGdldF9iaXRzMSgmcy0+Z2IpKSB7 CiAgICAgICAgICAgICAgICAgLyogc2tpcCBtYiAqLwogICAgICAgICAgICAgICAgIHMtPm1iX2lu dHJhID0gMDsKQEAgLTE5OCw3ICsxOTksNyBAQCBzdGF0aWMgaW50IG1zbXBlZzR2MTJfZGVjb2Rl X21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQxNl90IGJsb2NrWzZdWzY0XSkKIAogICAgIHMtPmJk c3AuY2xlYXJfYmxvY2tzKHMtPmJsb2NrWzBdKTsKICAgICBmb3IgKGkgPSAwOyBpIDwgNjsgaSsr KSB7Ci0gICAgICAgIGlmIChmZl9tc21wZWc0X2RlY29kZV9ibG9jayhzLCBibG9ja1tpXSwgaSwg KGNicCA+PiAoNSAtIGkpKSAmIDEsIE5VTEwpIDwgMCkKKyAgICAgICAgaWYgKGZmX21zbXBlZzRf ZGVjb2RlX2Jsb2NrKG1zLCBibG9ja1tpXSwgaSwgKGNicCA+PiAoNSAtIGkpKSAmIDEsIE5VTEwp IDwgMCkKICAgICAgICAgewogICAgICAgICAgICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0VS Uk9SLCAiXG5lcnJvciB3aGlsZSBkZWNvZGluZyBibG9jazogJWQgeCAlZCAoJWQpXG4iLCBzLT5t Yl94LCBzLT5tYl95LCBpKTsKICAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0yMDksNiArMjEw LDcgQEAgc3RhdGljIGludCBtc21wZWc0djEyX2RlY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywg aW50MTZfdCBibG9ja1s2XVs2NF0pCiAKIHN0YXRpYyBpbnQgbXNtcGVnNHYzNF9kZWNvZGVfbWIo TXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgYmxvY2tbNl1bNjRdKQogeworICAgIE1TTVA0RGVj Q29udGV4dCAqY29uc3QgbXMgPSBtcHZfdG9fbXNtcGVnNChzKTsKICAgICBpbnQgY2JwLCBjb2Rl LCBpOwogICAgIHVpbnQ4X3QgKmNvZGVkX3ZhbDsKICAgICB1aW50MzJfdCAqIGNvbnN0IG1iX3R5 cGVfcHRyID0gJnMtPmN1cl9waWMubWJfdHlwZVtzLT5tYl94ICsgcy0+bWJfeSpzLT5tYl9zdHJp ZGVdOwpAQCAtMjE3LDcgKzIxOSw3IEBAIHN0YXRpYyBpbnQgbXNtcGVnNHYzNF9kZWNvZGVfbWIo TXBlZ0VuY0NvbnRleHQgKnMsIGludDE2X3QgYmxvY2tbNl1bNjRdKQogICAgICAgICByZXR1cm4g QVZFUlJPUl9JTlZBTElEREFUQTsKIAogICAgIGlmIChzLT5waWN0X3R5cGUgPT0gQVZfUElDVFVS RV9UWVBFX1ApIHsKLSAgICAgICAgaWYgKHMtPnVzZV9za2lwX21iX2NvZGUpIHsKKyAgICAgICAg aWYgKG1zLT51c2Vfc2tpcF9tYl9jb2RlKSB7CiAgICAgICAgICAgICBpZiAoZ2V0X2JpdHMxKCZz LT5nYikpIHsKICAgICAgICAgICAgICAgICAvKiBza2lwIG1iICovCiAgICAgICAgICAgICAgICAg cy0+bWJfaW50cmEgPSAwOwpAQCAtMjU3LDEyICsyNTksMTIgQEAgc3RhdGljIGludCBtc21wZWc0 djM0X2RlY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9ja1s2XVs2NF0pCiAK ICAgICBpZiAoIXMtPm1iX2ludHJhKSB7CiAgICAgICAgIGludCBteCwgbXk7Ci0gICAgICAgIGlm KHMtPnBlcl9tYl9ybF90YWJsZSAmJiBjYnApewotICAgICAgICAgICAgcy0+cmxfdGFibGVfaW5k ZXggPSBkZWNvZGUwMTIoJnMtPmdiKTsKLSAgICAgICAgICAgIHMtPnJsX2Nocm9tYV90YWJsZV9p bmRleCA9IHMtPnJsX3RhYmxlX2luZGV4OworICAgICAgICBpZiAobXMtPnBlcl9tYl9ybF90YWJs ZSAmJiBjYnApIHsKKyAgICAgICAgICAgIG1zLT5ybF90YWJsZV9pbmRleCA9IGRlY29kZTAxMigm cy0+Z2IpOworICAgICAgICAgICAgbXMtPnJsX2Nocm9tYV90YWJsZV9pbmRleCA9IG1zLT5ybF90 YWJsZV9pbmRleDsKICAgICAgICAgfQogICAgICAgICBmZl9oMjYzX3ByZWRfbW90aW9uKHMsIDAs IDAsICZteCwgJm15KTsKLSAgICAgICAgZmZfbXNtcGVnNF9kZWNvZGVfbW90aW9uKHMsICZteCwg Jm15KTsKKyAgICAgICAgZmZfbXNtcGVnNF9kZWNvZGVfbW90aW9uKG1zLCAmbXgsICZteSk7CiAg ICAgICAgIHMtPm12X2RpciA9IE1WX0RJUl9GT1JXQVJEOwogICAgICAgICBzLT5tdl90eXBlID0g TVZfVFlQRV8xNlgxNjsKICAgICAgICAgcy0+bXZbMF1bMF1bMF0gPSBteDsKQEAgLTI3OSwxNSAr MjgxLDE1IEBAIHN0YXRpYyBpbnQgbXNtcGVnNHYzNF9kZWNvZGVfbWIoTXBlZ0VuY0NvbnRleHQg KnMsIGludDE2X3QgYmxvY2tbNl1bNjRdKQogICAgICAgICAgICAgZmZfZGxvZyhzLT5hdmN0eCwg IiVkJWQgJWQgJWQvIiwKICAgICAgICAgICAgICAgICAgICAgcy0+YWNfcHJlZCwgcy0+aDI2M19h aWNfZGlyLCBzLT5tYl94LCBzLT5tYl95KTsKICAgICAgICAgfQotICAgICAgICBpZihzLT5wZXJf bWJfcmxfdGFibGUgJiYgY2JwKXsKLSAgICAgICAgICAgIHMtPnJsX3RhYmxlX2luZGV4ID0gZGVj b2RlMDEyKCZzLT5nYik7Ci0gICAgICAgICAgICBzLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSBz LT5ybF90YWJsZV9pbmRleDsKKyAgICAgICAgaWYgKG1zLT5wZXJfbWJfcmxfdGFibGUgJiYgY2Jw KSB7CisgICAgICAgICAgICBtcy0+cmxfdGFibGVfaW5kZXggPSBkZWNvZGUwMTIoJnMtPmdiKTsK KyAgICAgICAgICAgIG1zLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSBtcy0+cmxfdGFibGVfaW5k ZXg7CiAgICAgICAgIH0KICAgICB9CiAKICAgICBzLT5iZHNwLmNsZWFyX2Jsb2NrcyhzLT5ibG9j a1swXSk7CiAgICAgZm9yIChpID0gMDsgaSA8IDY7IGkrKykgewotICAgICAgICBpZiAoZmZfbXNt cGVnNF9kZWNvZGVfYmxvY2socywgYmxvY2tbaV0sIGksIChjYnAgPj4gKDUgLSBpKSkgJiAxLCBO VUxMKSA8IDApCisgICAgICAgIGlmIChmZl9tc21wZWc0X2RlY29kZV9ibG9jayhtcywgYmxvY2tb aV0sIGksIChjYnAgPj4gKDUgLSBpKSkgJiAxLCBOVUxMKSA8IDApCiAgICAgICAgIHsKICAgICAg ICAgICAgIGF2X2xvZyhzLT5hdmN0eCwgQVZfTE9HX0VSUk9SLCAiXG5lcnJvciB3aGlsZSBkZWNv ZGluZyBibG9jazogJWQgeCAlZCAoJWQpXG4iLCBzLT5tYl94LCBzLT5tYl95LCBpKTsKICAgICAg ICAgICAgIHJldHVybiAtMTsKQEAgLTQ0MywzMSArNDQ1LDMxIEBAIGludCBmZl9tc21wZWc0X2Rl Y29kZV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAqIHMpCiAgICAgICAgIHN3aXRjaChz LT5tc21wZWc0X3ZlcnNpb24pewogICAgICAgICBjYXNlIE1TTVA0X1YxOgogICAgICAgICBjYXNl IE1TTVA0X1YyOgotICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gMjsKLSAg ICAgICAgICAgIHMtPnJsX3RhYmxlX2luZGV4ID0gMjsKKyAgICAgICAgICAgIG1zLT5ybF9jaHJv bWFfdGFibGVfaW5kZXggPSAyOworICAgICAgICAgICAgbXMtPnJsX3RhYmxlX2luZGV4ID0gMjsK IAotICAgICAgICAgICAgcy0+ZGNfdGFibGVfaW5kZXggPSAwOyAvL25vdCB1c2VkCisgICAgICAg ICAgICBtcy0+ZGNfdGFibGVfaW5kZXggPSAwOyAvL25vdCB1c2VkCiAgICAgICAgICAgICBicmVh azsKICAgICAgICAgY2FzZSBNU01QNF9WMzoKLSAgICAgICAgICAgIHMtPnJsX2Nocm9tYV90YWJs ZV9pbmRleCA9IGRlY29kZTAxMigmcy0+Z2IpOwotICAgICAgICAgICAgcy0+cmxfdGFibGVfaW5k ZXggPSBkZWNvZGUwMTIoJnMtPmdiKTsKKyAgICAgICAgICAgIG1zLT5ybF9jaHJvbWFfdGFibGVf aW5kZXggPSBkZWNvZGUwMTIoJnMtPmdiKTsKKyAgICAgICAgICAgIG1zLT5ybF90YWJsZV9pbmRl eCA9IGRlY29kZTAxMigmcy0+Z2IpOwogCi0gICAgICAgICAgICBzLT5kY190YWJsZV9pbmRleCA9 IGdldF9iaXRzMSgmcy0+Z2IpOworICAgICAgICAgICAgbXMtPmRjX3RhYmxlX2luZGV4ID0gZ2V0 X2JpdHMxKCZzLT5nYik7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBNU01QNF9X TVYxOgogICAgICAgICAgICAgZmZfbXNtcGVnNF9kZWNvZGVfZXh0X2hlYWRlcihzLCAoMis1KzUr MTcrNykvOCk7CiAKICAgICAgICAgICAgIGlmIChtcy0+Yml0X3JhdGUgPiBNQkFDX0JJVFJBVEUp Ci0gICAgICAgICAgICAgICAgcy0+cGVyX21iX3JsX3RhYmxlID0gZ2V0X2JpdHMxKCZzLT5nYik7 CisgICAgICAgICAgICAgICAgbXMtPnBlcl9tYl9ybF90YWJsZSA9IGdldF9iaXRzMSgmcy0+Z2Ip OwogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHMtPnBlcl9tYl9ybF90YWJsZSA9 IDA7CisgICAgICAgICAgICAgICAgbXMtPnBlcl9tYl9ybF90YWJsZSA9IDA7CiAKLSAgICAgICAg ICAgIGlmKCFzLT5wZXJfbWJfcmxfdGFibGUpewotICAgICAgICAgICAgICAgIHMtPnJsX2Nocm9t YV90YWJsZV9pbmRleCA9IGRlY29kZTAxMigmcy0+Z2IpOwotICAgICAgICAgICAgICAgIHMtPnJs X3RhYmxlX2luZGV4ID0gZGVjb2RlMDEyKCZzLT5nYik7CisgICAgICAgICAgICBpZiAoIW1zLT5w ZXJfbWJfcmxfdGFibGUpIHsKKyAgICAgICAgICAgICAgICBtcy0+cmxfY2hyb21hX3RhYmxlX2lu ZGV4ID0gZGVjb2RlMDEyKCZzLT5nYik7CisgICAgICAgICAgICAgICAgbXMtPnJsX3RhYmxlX2lu ZGV4ICAgICAgICA9IGRlY29kZTAxMigmcy0+Z2IpOwogICAgICAgICAgICAgfQogCi0gICAgICAg ICAgICBzLT5kY190YWJsZV9pbmRleCA9IGdldF9iaXRzMSgmcy0+Z2IpOworICAgICAgICAgICAg bXMtPmRjX3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMxKCZzLT5nYik7CiAgICAgICAgICAgICBzLT5p bnRlcl9pbnRyYV9wcmVkPSAwOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAgLTQ3 NSw0OSArNDc3LDQ5IEBAIGludCBmZl9tc21wZWc0X2RlY29kZV9waWN0dXJlX2hlYWRlcihNcGVn RW5jQ29udGV4dCAqIHMpCiAgICAgICAgIGlmKHMtPmF2Y3R4LT5kZWJ1ZyZGRl9ERUJVR19QSUNU X0lORk8pCiAgICAgICAgICAgICBhdl9sb2cocy0+YXZjdHgsIEFWX0xPR19ERUJVRywgInFzY2Fs ZTolZCBybGM6JWQgcmw6JWQgZGM6JWQgbWJybDolZCBzbGljZTolZCAgIFxuIiwKICAgICAgICAg ICAgICAgICBzLT5xc2NhbGUsCi0gICAgICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2lu ZGV4LAotICAgICAgICAgICAgICAgIHMtPnJsX3RhYmxlX2luZGV4LAotICAgICAgICAgICAgICAg IHMtPmRjX3RhYmxlX2luZGV4LAotICAgICAgICAgICAgICAgIHMtPnBlcl9tYl9ybF90YWJsZSwK KyAgICAgICAgICAgICAgICBtcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4LAorICAgICAgICAgICAg ICAgIG1zLT5ybF90YWJsZV9pbmRleCwKKyAgICAgICAgICAgICAgICBtcy0+ZGNfdGFibGVfaW5k ZXgsCisgICAgICAgICAgICAgICAgbXMtPnBlcl9tYl9ybF90YWJsZSwKICAgICAgICAgICAgICAg ICBzLT5zbGljZV9oZWlnaHQpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHN3aXRjaChzLT5tc21w ZWc0X3ZlcnNpb24pewogICAgICAgICBjYXNlIE1TTVA0X1YxOgogICAgICAgICBjYXNlIE1TTVA0 X1YyOgogICAgICAgICAgICAgaWYgKHMtPm1zbXBlZzRfdmVyc2lvbiA9PSBNU01QNF9WMSkKLSAg ICAgICAgICAgICAgICBzLT51c2Vfc2tpcF9tYl9jb2RlID0gMTsKKyAgICAgICAgICAgICAgICBt cy0+dXNlX3NraXBfbWJfY29kZSA9IDE7CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAg ICAgcy0+dXNlX3NraXBfbWJfY29kZSA9IGdldF9iaXRzMSgmcy0+Z2IpOwotICAgICAgICAgICAg cy0+cmxfdGFibGVfaW5kZXggPSAyOwotICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2lu ZGV4ID0gcy0+cmxfdGFibGVfaW5kZXg7Ci0gICAgICAgICAgICBzLT5kY190YWJsZV9pbmRleCA9 IDA7IC8vbm90IHVzZWQKLSAgICAgICAgICAgIHMtPm12X3RhYmxlX2luZGV4ID0gMDsKKyAgICAg ICAgICAgICAgICBtcy0+dXNlX3NraXBfbWJfY29kZSA9IGdldF9iaXRzMSgmcy0+Z2IpOworICAg ICAgICAgICAgbXMtPnJsX3RhYmxlX2luZGV4ID0gMjsKKyAgICAgICAgICAgIG1zLT5ybF9jaHJv bWFfdGFibGVfaW5kZXggPSBtcy0+cmxfdGFibGVfaW5kZXg7CisgICAgICAgICAgICBtcy0+ZGNf dGFibGVfaW5kZXggPSAwOyAvL25vdCB1c2VkCisgICAgICAgICAgICBtcy0+bXZfdGFibGVfaW5k ZXggPSAwOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgTVNNUDRfVjM6Ci0gICAg ICAgICAgICBzLT51c2Vfc2tpcF9tYl9jb2RlID0gZ2V0X2JpdHMxKCZzLT5nYik7Ci0gICAgICAg ICAgICBzLT5ybF90YWJsZV9pbmRleCA9IGRlY29kZTAxMigmcy0+Z2IpOwotICAgICAgICAgICAg cy0+cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gcy0+cmxfdGFibGVfaW5kZXg7CisgICAgICAgICAg ICBtcy0+dXNlX3NraXBfbWJfY29kZSA9IGdldF9iaXRzMSgmcy0+Z2IpOworICAgICAgICAgICAg bXMtPnJsX3RhYmxlX2luZGV4ID0gZGVjb2RlMDEyKCZzLT5nYik7CisgICAgICAgICAgICBtcy0+ cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gbXMtPnJsX3RhYmxlX2luZGV4OwogCi0gICAgICAgICAg ICBzLT5kY190YWJsZV9pbmRleCA9IGdldF9iaXRzMSgmcy0+Z2IpOworICAgICAgICAgICAgbXMt PmRjX3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMxKCZzLT5nYik7CiAKLSAgICAgICAgICAgIHMtPm12 X3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMxKCZzLT5nYik7CisgICAgICAgICAgICBtcy0+bXZfdGFi bGVfaW5kZXggPSBnZXRfYml0czEoJnMtPmdiKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg ICBjYXNlIE1TTVA0X1dNVjE6Ci0gICAgICAgICAgICBzLT51c2Vfc2tpcF9tYl9jb2RlID0gZ2V0 X2JpdHMxKCZzLT5nYik7CisgICAgICAgICAgICBtcy0+dXNlX3NraXBfbWJfY29kZSA9IGdldF9i aXRzMSgmcy0+Z2IpOwogCiAgICAgICAgICAgICBpZiAobXMtPmJpdF9yYXRlID4gTUJBQ19CSVRS QVRFKQotICAgICAgICAgICAgICAgIHMtPnBlcl9tYl9ybF90YWJsZSA9IGdldF9iaXRzMSgmcy0+ Z2IpOworICAgICAgICAgICAgICAgIG1zLT5wZXJfbWJfcmxfdGFibGUgPSBnZXRfYml0czEoJnMt PmdiKTsKICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBzLT5wZXJfbWJfcmxfdGFi bGUgPSAwOworICAgICAgICAgICAgICAgIG1zLT5wZXJfbWJfcmxfdGFibGUgPSAwOwogCi0gICAg ICAgICAgICBpZighcy0+cGVyX21iX3JsX3RhYmxlKXsKLSAgICAgICAgICAgICAgICBzLT5ybF90 YWJsZV9pbmRleCA9IGRlY29kZTAxMigmcy0+Z2IpOwotICAgICAgICAgICAgICAgIHMtPnJsX2No cm9tYV90YWJsZV9pbmRleCA9IHMtPnJsX3RhYmxlX2luZGV4OworICAgICAgICAgICAgaWYgKCFt cy0+cGVyX21iX3JsX3RhYmxlKSB7CisgICAgICAgICAgICAgICAgbXMtPnJsX3RhYmxlX2luZGV4 ID0gZGVjb2RlMDEyKCZzLT5nYik7CisgICAgICAgICAgICAgICAgbXMtPnJsX2Nocm9tYV90YWJs ZV9pbmRleCA9IG1zLT5ybF90YWJsZV9pbmRleDsKICAgICAgICAgICAgIH0KIAotICAgICAgICAg ICAgcy0+ZGNfdGFibGVfaW5kZXggPSBnZXRfYml0czEoJnMtPmdiKTsKKyAgICAgICAgICAgIG1z LT5kY190YWJsZV9pbmRleCA9IGdldF9iaXRzMSgmcy0+Z2IpOwogCi0gICAgICAgICAgICBzLT5t dl90YWJsZV9pbmRleCA9IGdldF9iaXRzMSgmcy0+Z2IpOworICAgICAgICAgICAgbXMtPm12X3Rh YmxlX2luZGV4ID0gZ2V0X2JpdHMxKCZzLT5nYik7CiAgICAgICAgICAgICBzLT5pbnRlcl9pbnRy YV9wcmVkID0gcy0+d2lkdGgqcy0+aGVpZ2h0IDwgMzIwKjI0MCAmJgogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIG1zLT5iaXRfcmF0ZSA8PSBJSV9CSVRSQVRFOwogICAgICAgICAg ICAgYnJlYWs7CkBAIC01MjUsMTIgKzUyNywxMiBAQCBpbnQgZmZfbXNtcGVnNF9kZWNvZGVfcGlj dHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKiBzKQogCiAgICAgICAgIGlmKHMtPmF2Y3R4LT5k ZWJ1ZyZGRl9ERUJVR19QSUNUX0lORk8pCiAgICAgICAgICAgICBhdl9sb2cocy0+YXZjdHgsIEFW X0xPR19ERUJVRywgInNraXA6JWQgcmw6JWQgcmxjOiVkIGRjOiVkIG12OiVkIG1icmw6JWQgcXA6 JWQgICBcbiIsCi0gICAgICAgICAgICAgICAgcy0+dXNlX3NraXBfbWJfY29kZSwKLSAgICAgICAg ICAgICAgICBzLT5ybF90YWJsZV9pbmRleCwKLSAgICAgICAgICAgICAgICBzLT5ybF9jaHJvbWFf dGFibGVfaW5kZXgsCi0gICAgICAgICAgICAgICAgcy0+ZGNfdGFibGVfaW5kZXgsCi0gICAgICAg ICAgICAgICAgcy0+bXZfdGFibGVfaW5kZXgsCi0gICAgICAgICAgICAgICAgcy0+cGVyX21iX3Js X3RhYmxlLAorICAgICAgICAgICAgICAgIG1zLT51c2Vfc2tpcF9tYl9jb2RlLAorICAgICAgICAg ICAgICAgIG1zLT5ybF90YWJsZV9pbmRleCwKKyAgICAgICAgICAgICAgICBtcy0+cmxfY2hyb21h X3RhYmxlX2luZGV4LAorICAgICAgICAgICAgICAgIG1zLT5kY190YWJsZV9pbmRleCwKKyAgICAg ICAgICAgICAgICBtcy0+bXZfdGFibGVfaW5kZXgsCisgICAgICAgICAgICAgICAgbXMtPnBlcl9t Yl9ybF90YWJsZSwKICAgICAgICAgICAgICAgICBzLT5xc2NhbGUpOwogCiAgICAgICAgIGlmKHMt PmZsaXBmbG9wX3JvdW5kaW5nKXsKQEAgLTU0Miw4ICs1NDQsOCBAQCBpbnQgZmZfbXNtcGVnNF9k ZWNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKiBzKQogICAgIGZmX2Rsb2cocy0+ YXZjdHgsICIlZCAlZCAlZCAlZCAlZFxuIiwgcy0+cGljdF90eXBlLCBtcy0+Yml0X3JhdGUsCiAg ICAgICAgICAgICBzLT5pbnRlcl9pbnRyYV9wcmVkLCBzLT53aWR0aCwgcy0+aGVpZ2h0KTsKIAot ICAgIHMtPmVzYzNfbGV2ZWxfbGVuZ3RoPSAwOwotICAgIHMtPmVzYzNfcnVuX2xlbmd0aD0gMDsK KyAgICBtcy0+ZXNjM19sZXZlbF9sZW5ndGggPSAwOworICAgIG1zLT5lc2MzX3J1bl9sZW5ndGgg ICA9IDA7CiAKICAgICByZXR1cm4gMDsKIH0KQEAgLTU3Nyw4ICs1NzksOSBAQCBpbnQgZmZfbXNt cGVnNF9kZWNvZGVfZXh0X2hlYWRlcihNcGVnRW5jQ29udGV4dCAqIHMsIGludCBidWZfc2l6ZSkK ICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBtc21wZWc0X2RlY29kZV9kYyhNcGVnRW5j Q29udGV4dCAqIHMsIGludCBuLCBpbnQgKmRpcl9wdHIpCitzdGF0aWMgaW50IG1zbXBlZzRfZGVj b2RlX2RjKE1TTVA0RGVjQ29udGV4dCAqY29uc3QgbXMsIGludCBuLCBpbnQgKmRpcl9wdHIpCiB7 CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbXMtPm07CiAgICAgaW50IGxldmVsLCBw cmVkOwogCiAgICAgaWYgKHMtPm1zbXBlZzRfdmVyc2lvbiA8PSBNU01QNF9WMikgewpAQCAtNTk0 LDcgKzU5Nyw3IEBAIHN0YXRpYyBpbnQgbXNtcGVnNF9kZWNvZGVfZGMoTXBlZ0VuY0NvbnRleHQg KiBzLCBpbnQgbiwgaW50ICpkaXJfcHRyKQogICAgICAgICB9CiAgICAgICAgIGxldmVsLT0yNTY7 CiAgICAgfSBlbHNlIHsKLSAgICAgICAgbGV2ZWwgPSBnZXRfdmxjMigmcy0+Z2IsIGZmX21zbXA0 X2RjX3ZsY1tzLT5kY190YWJsZV9pbmRleF1bbiA+PSA0XSwKKyAgICAgICAgbGV2ZWwgPSBnZXRf dmxjMigmcy0+Z2IsIGZmX21zbXA0X2RjX3ZsY1ttcy0+ZGNfdGFibGVfaW5kZXhdW24gPj0gNF0s CiAgICAgICAgICAgICAgICAgICAgICAgICAgTVNNUDRfRENfVkxDX0JJVFMsIDMpOwogCiAgICAg ICAgIGlmIChsZXZlbCA9PSBEQ19NQVgpIHsKQEAgLTYzMCw5ICs2MzMsMTAgQEAgc3RhdGljIGlu dCBtc21wZWc0X2RlY29kZV9kYyhNcGVnRW5jQ29udGV4dCAqIHMsIGludCBuLCBpbnQgKmRpcl9w dHIpCiAgICAgcmV0dXJuIGxldmVsOwogfQogCi1pbnQgZmZfbXNtcGVnNF9kZWNvZGVfYmxvY2so TXBlZ0VuY0NvbnRleHQgKiBzLCBpbnQxNl90ICogYmxvY2ssCitpbnQgZmZfbXNtcGVnNF9kZWNv ZGVfYmxvY2soTVNNUDREZWNDb250ZXh0ICpjb25zdCBtcywgaW50MTZfdCAqIGJsb2NrLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG4sIGludCBjb2RlZCwgY29uc3QgdWludDhf dCAqc2Nhbl90YWJsZSkKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtcy0+bTsK ICAgICBpbnQgbGV2ZWwsIGksIGxhc3QsIHJ1biwgcnVuX2RpZmY7CiAgICAgaW50IGRjX3ByZWRf ZGlyID0gLTE7IC8vdW51c2VkIGJ1dCBpdHMgcGFzc2VkIGFyb3VuZCwgc28gaXQgbmVlZHMgdG8g YmUgaW5pdGlhbGl6ZWQKICAgICBjb25zdCBSTFRhYmxlICpybDsKQEAgLTY0NCwyMCArNjQ4LDIw IEBAIGludCBmZl9tc21wZWc0X2RlY29kZV9ibG9jayhNcGVnRW5jQ29udGV4dCAqIHMsIGludDE2 X3QgKiBibG9jaywKICAgICAgICAgcWFkZD0wOwogCiAgICAgICAgIC8qIERDIGNvZWYgKi8KLSAg ICAgICAgbGV2ZWwgPSBtc21wZWc0X2RlY29kZV9kYyhzLCBuLCAmZGNfcHJlZF9kaXIpOworICAg ICAgICBsZXZlbCA9IG1zbXBlZzRfZGVjb2RlX2RjKG1zLCBuLCAmZGNfcHJlZF9kaXIpOwogCiAg ICAgICAgIGlmIChsZXZlbCA8IDApewogICAgICAgICAgICAgYXZfbG9nKHMtPmF2Y3R4LCBBVl9M T0dfRVJST1IsICJkYyBvdmVyZmxvdy0gYmxvY2s6ICVkIHFzY2FsZTogJWQvL1xuIiwgbiwgcy0+ cXNjYWxlKTsKICAgICAgICAgICAgIGlmKHMtPmludGVyX2ludHJhX3ByZWQpIGxldmVsPTA7CiAg ICAgICAgIH0KICAgICAgICAgaWYgKG4gPCA0KSB7Ci0gICAgICAgICAgICBybCA9ICZmZl9ybF90 YWJsZVtzLT5ybF90YWJsZV9pbmRleF07CisgICAgICAgICAgICBybCA9ICZmZl9ybF90YWJsZVtt cy0+cmxfdGFibGVfaW5kZXhdOwogICAgICAgICAgICAgaWYobGV2ZWwgPiAyNTYqcy0+eV9kY19z Y2FsZSl7CiAgICAgICAgICAgICAgICAgYXZfbG9nKHMtPmF2Y3R4LCBBVl9MT0dfRVJST1IsICJk YyBvdmVyZmxvdysgTCBxc2NhbGU6ICVkLy9cbiIsIHMtPnFzY2FsZSk7CiAgICAgICAgICAgICAg ICAgaWYoIXMtPmludGVyX2ludHJhX3ByZWQpIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KICAg ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHJsID0gJmZmX3JsX3RhYmxlWzMgKyBzLT5ybF9j aHJvbWFfdGFibGVfaW5kZXhdOworICAgICAgICAgICAgcmwgPSAmZmZfcmxfdGFibGVbMyArIG1z LT5ybF9jaHJvbWFfdGFibGVfaW5kZXhdOwogICAgICAgICAgICAgaWYobGV2ZWwgPiAyNTYqcy0+ Y19kY19zY2FsZSl7CiAgICAgICAgICAgICAgICAgYXZfbG9nKHMtPmF2Y3R4LCBBVl9MT0dfRVJS T1IsICJkYyBvdmVyZmxvdysgQyBxc2NhbGU6ICVkLy9cbiIsIHMtPnFzY2FsZSk7CiAgICAgICAg ICAgICAgICAgaWYoIXMtPmludGVyX2ludHJhX3ByZWQpIHJldHVybiAtMTsKQEAgLTY4Myw3ICs2 ODcsNyBAQCBpbnQgZmZfbXNtcGVnNF9kZWNvZGVfYmxvY2soTXBlZ0VuY0NvbnRleHQgKiBzLCBp bnQxNl90ICogYmxvY2ssCiAgICAgICAgIHFtdWwgPSBzLT5xc2NhbGUgPDwgMTsKICAgICAgICAg cWFkZCA9IChzLT5xc2NhbGUgLSAxKSB8IDE7CiAgICAgICAgIGkgPSAtMTsKLSAgICAgICAgcmwg PSAmZmZfcmxfdGFibGVbMyArIHMtPnJsX3RhYmxlX2luZGV4XTsKKyAgICAgICAgcmwgPSAmZmZf cmxfdGFibGVbMyArIG1zLT5ybF90YWJsZV9pbmRleF07CiAKICAgICAgICAgaWYgKHMtPm1zbXBl ZzRfdmVyc2lvbiA9PSBNU01QNF9WMikKICAgICAgICAgICAgIHJ1bl9kaWZmID0gMDsKQEAgLTcy MSw3ICs3MjUsNyBAQCBpbnQgZmZfbXNtcGVnNF9kZWNvZGVfYmxvY2soTXBlZ0VuY0NvbnRleHQg KiBzLCBpbnQxNl90ICogYmxvY2ssCiAgICAgICAgICAgICAgICAgICAgIH1lbHNlewogICAgICAg ICAgICAgICAgICAgICAgICAgaW50IHNpZ247CiAgICAgICAgICAgICAgICAgICAgICAgICBsYXN0 PSAgU0hPV19VQklUUyhyZSwgJnMtPmdiLCAxKTsgU0tJUF9CSVRTKHJlLCAmcy0+Z2IsIDEpOwot ICAgICAgICAgICAgICAgICAgICAgICAgaWYoIXMtPmVzYzNfbGV2ZWxfbGVuZ3RoKXsKKyAgICAg ICAgICAgICAgICAgICAgICAgIGlmICghbXMtPmVzYzNfbGV2ZWxfbGVuZ3RoKSB7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50IGxsOwogICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZmX2Rsb2cocy0+YXZjdHgsICJFU0MtMyAlWCBhdCAlZCAlZFxuIiwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHNob3dfYml0cygmcy0+Z2IsIDI0KSwgcy0+bWJfeCwgcy0+ bWJfeSk7CkBAIC03MzksMTggKzc0MywxOCBAQCBpbnQgZmZfbXNtcGVnNF9kZWNvZGVfYmxvY2so TXBlZ0VuY0NvbnRleHQgKiBzLCBpbnQxNl90ICogYmxvY2ssCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGlmKGxsPDgpIFNLSVBfQklUUyhyZSwgJnMtPmdiLCAxKTsKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5l c2MzX2xldmVsX2xlbmd0aD0gbGw7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+ZXNj M19ydW5fbGVuZ3RoPSBTSE9XX1VCSVRTKHJlLCAmcy0+Z2IsIDIpICsgMzsgU0tJUF9CSVRTKHJl LCAmcy0+Z2IsIDIpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zLT5lc2MzX2xldmVs X2xlbmd0aCA9IGxsOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zLT5lc2MzX3J1bl9s ZW5ndGggICA9IFNIT1dfVUJJVFMocmUsICZzLT5nYiwgMikgKyAzOyBTS0lQX0JJVFMocmUsICZz LT5nYiwgMik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVVBEQVRFX0NBQ0hFKHJlLCAm cy0+Z2IpOwogICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAg ICAgcnVuPSAgIFNIT1dfVUJJVFMocmUsICZzLT5nYiwgcy0+ZXNjM19ydW5fbGVuZ3RoKTsKLSAg ICAgICAgICAgICAgICAgICAgICAgIFNLSVBfQklUUyhyZSwgJnMtPmdiLCBzLT5lc2MzX3J1bl9s ZW5ndGgpOworICAgICAgICAgICAgICAgICAgICAgICAgcnVuICAgPSBTSE9XX1VCSVRTKHJlLCAm cy0+Z2IsIG1zLT5lc2MzX3J1bl9sZW5ndGgpOworICAgICAgICAgICAgICAgICAgICAgICAgU0tJ UF9CSVRTKHJlLCAmcy0+Z2IsIG1zLT5lc2MzX3J1bl9sZW5ndGgpOwogCiAgICAgICAgICAgICAg ICAgICAgICAgICBzaWduPSAgU0hPV19VQklUUyhyZSwgJnMtPmdiLCAxKTsKICAgICAgICAgICAg ICAgICAgICAgICAgIFNLSVBfQklUUyhyZSwgJnMtPmdiLCAxKTsKIAotICAgICAgICAgICAgICAg ICAgICAgICAgbGV2ZWw9IFNIT1dfVUJJVFMocmUsICZzLT5nYiwgcy0+ZXNjM19sZXZlbF9sZW5n dGgpOwotICAgICAgICAgICAgICAgICAgICAgICAgU0tJUF9CSVRTKHJlLCAmcy0+Z2IsIHMtPmVz YzNfbGV2ZWxfbGVuZ3RoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGxldmVsID0gU0hPV19V QklUUyhyZSwgJnMtPmdiLCBtcy0+ZXNjM19sZXZlbF9sZW5ndGgpOworICAgICAgICAgICAgICAg ICAgICAgICAgU0tJUF9CSVRTKHJlLCAmcy0+Z2IsIG1zLT5lc2MzX2xldmVsX2xlbmd0aCk7CiAg ICAgICAgICAgICAgICAgICAgICAgICBpZihzaWduKSBsZXZlbD0gLWxldmVsOwogICAgICAgICAg ICAgICAgICAgICB9CiAKQEAgLTgxNCw5ICs4MTgsMTAgQEAgaW50IGZmX21zbXBlZzRfZGVjb2Rl X2Jsb2NrKE1wZWdFbmNDb250ZXh0ICogcywgaW50MTZfdCAqIGJsb2NrLAogICAgIHJldHVybiAw OwogfQogCi12b2lkIGZmX21zbXBlZzRfZGVjb2RlX21vdGlvbihNcGVnRW5jQ29udGV4dCAqcywg aW50ICpteF9wdHIsIGludCAqbXlfcHRyKQordm9pZCBmZl9tc21wZWc0X2RlY29kZV9tb3Rpb24o TVNNUDREZWNDb250ZXh0ICpjb25zdCBtcywgaW50ICpteF9wdHIsIGludCAqbXlfcHRyKQogewot ICAgIGNvbnN0IFZMQ0VsZW0gKmNvbnN0IG12X3ZsYyA9IG12X3RhYmxlc1tzLT5tdl90YWJsZV9p bmRleF07CisgICAgY29uc3QgVkxDRWxlbSAqY29uc3QgbXZfdmxjID0gbXZfdGFibGVzW21zLT5t dl90YWJsZV9pbmRleF07CisgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbXMtPm07CiAg ICAgaW50IHN5bSwgbXgsIG15OwogCiAgICAgc3ltID0gZ2V0X3ZsYzIoJnMtPmdiLCBtdl92bGMs IE1WX1ZMQ19CSVRTLCAyKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXNtcGVnNGRlYy5oIGIv bGliYXZjb2RlYy9tc21wZWc0ZGVjLmgKaW5kZXggNDdjNDQ5NWYxZC4uYjA0MzMxZmQ0NyAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tc21wZWc0ZGVjLmgKKysrIGIvbGliYXZjb2RlYy9tc21wZWc0 ZGVjLmgKQEAgLTMxLDYgKzMxLDE0IEBACiB0eXBlZGVmIHN0cnVjdCBNU01QNERlY0NvbnRleHQg ewogICAgIE1wZWdFbmNDb250ZXh0IG07CiAgICAgaW50IGJpdF9yYXRlOworICAgIGludCBtdl90 YWJsZV9pbmRleDsKKyAgICBpbnQgcmxfdGFibGVfaW5kZXg7CisgICAgaW50IHJsX2Nocm9tYV90 YWJsZV9pbmRleDsKKyAgICBpbnQgZGNfdGFibGVfaW5kZXg7CisgICAgaW50IHVzZV9za2lwX21i X2NvZGU7CisgICAgaW50IHBlcl9tYl9ybF90YWJsZTsKKyAgICBpbnQgZXNjM19sZXZlbF9sZW5n dGg7CisgICAgaW50IGVzYzNfcnVuX2xlbmd0aDsKIH0gTVNNUDREZWNDb250ZXh0OwogCiBzdGF0 aWMgaW5saW5lIE1TTVA0RGVjQ29udGV4dCAqbXB2X3RvX21zbXBlZzQoTXBlZ0VuY0NvbnRleHQg KnMpCkBAIC00NSw4ICs1Myw4IEBAIGV4dGVybiBWTENFbGVtIGZmX2ludGVyX2ludHJhX3ZsY1s4 XTsKIGludCBmZl9tc21wZWc0X2RlY29kZV9pbml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCk7CiBp bnQgZmZfbXNtcGVnNF9kZWNvZGVfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpOwog aW50IGZmX21zbXBlZzRfZGVjb2RlX2V4dF9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMsIGludCBi dWZfc2l6ZSk7Ci12b2lkIGZmX21zbXBlZzRfZGVjb2RlX21vdGlvbihNcGVnRW5jQ29udGV4dCAq IHMsIGludCAqbXhfcHRyLCBpbnQgKm15X3B0cik7Ci1pbnQgZmZfbXNtcGVnNF9kZWNvZGVfYmxv Y2soTXBlZ0VuY0NvbnRleHQgKiBzLCBpbnQxNl90ICogYmxvY2ssCit2b2lkIGZmX21zbXBlZzRf ZGVjb2RlX21vdGlvbihNU01QNERlY0NvbnRleHQgKm1zLCBpbnQgKm14X3B0ciwgaW50ICpteV9w dHIpOworaW50IGZmX21zbXBlZzRfZGVjb2RlX2Jsb2NrKE1TTVA0RGVjQ29udGV4dCAqbXMsIGlu dDE2X3QgKiBibG9jaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbiwgaW50IGNv ZGVkLCBjb25zdCB1aW50OF90ICpzY2FuX3RhYmxlKTsKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL21zbXBlZzRlbmMuYyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCmluZGV4IDBh YjJlNDczYWEuLjc4MTk3NzU2YWUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5j CisrKyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCkBAIC0yMDAsMTUgKzIwMCwxNSBAQCBzdGF0 aWMgdm9pZCBmaW5kX2Jlc3RfdGFibGVzKE1TTVBFRzRFbmNDb250ZXh0ICptcykKIAogICAgIG1l bXNldChtcy0+YWNfc3RhdHMsIDAsIHNpemVvZihtcy0+YWNfc3RhdHMpKTsKIAotICAgIHMtPnJs X3RhYmxlX2luZGV4ICAgICAgID0gICAgICAgIGJlc3Q7Ci0gICAgcy0+cmxfY2hyb21hX3RhYmxl X2luZGV4PSBjaHJvbWFfYmVzdDsKKyAgICBtcy0+cmxfdGFibGVfaW5kZXggICAgICAgID0gICAg ICAgIGJlc3Q7CisgICAgbXMtPnJsX2Nocm9tYV90YWJsZV9pbmRleCA9IGNocm9tYV9iZXN0Owog CiAgICAgaWYocy0+cGljdF90eXBlICE9IHMtPmxhc3Rfbm9uX2JfcGljdF90eXBlKXsKLSAgICAg ICAgcy0+cmxfdGFibGVfaW5kZXg9IDI7CisgICAgICAgIG1zLT5ybF90YWJsZV9pbmRleCA9IDI7 CiAgICAgICAgIGlmKHMtPnBpY3RfdHlwZT09QVZfUElDVFVSRV9UWVBFX0kpCi0gICAgICAgICAg ICBzLT5ybF9jaHJvbWFfdGFibGVfaW5kZXg9IDE7CisgICAgICAgICAgICBtcy0+cmxfY2hyb21h X3RhYmxlX2luZGV4ID0gMTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgcy0+cmxfY2hyb21h X3RhYmxlX2luZGV4PSAyOworICAgICAgICAgICAgbXMtPnJsX2Nocm9tYV90YWJsZV9pbmRleCA9 IDI7CiAgICAgfQogCiB9CkBAIC0yMjYsMTQgKzIyNiwxNCBAQCBzdGF0aWMgaW50IG1zbXBlZzRf ZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAgICAg cHV0X2JpdHMoJnMtPnBiLCA1LCBzLT5xc2NhbGUpOwogICAgIGlmIChzLT5tc21wZWc0X3ZlcnNp b24gPD0gTVNNUDRfVjIpIHsKLSAgICAgICAgcy0+cmxfdGFibGVfaW5kZXggPSAyOwotICAgICAg ICBzLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSAyOworICAgICAgICBtcy0+cmxfdGFibGVfaW5k ZXggPSAyOworICAgICAgICBtcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gMjsKICAgICB9CiAK LSAgICBzLT5kY190YWJsZV9pbmRleCA9IDE7Ci0gICAgcy0+bXZfdGFibGVfaW5kZXggPSAxOyAv KiBvbmx5IGlmIFAtZnJhbWUgKi8KLSAgICBzLT51c2Vfc2tpcF9tYl9jb2RlID0gMTsgLyogb25s eSBpZiBQLWZyYW1lICovCi0gICAgcy0+cGVyX21iX3JsX3RhYmxlID0gMDsKKyAgICBtcy0+ZGNf dGFibGVfaW5kZXggICA9IDE7CisgICAgbXMtPm12X3RhYmxlX2luZGV4ICAgPSAxOyAvKiBvbmx5 IGlmIFAtZnJhbWUgKi8KKyAgICBtcy0+dXNlX3NraXBfbWJfY29kZSA9IDE7IC8qIG9ubHkgaWYg UC1mcmFtZSAqLworICAgIG1zLT5wZXJfbWJfcmxfdGFibGUgID0gMDsKICAgICBpZiAocy0+bXNt cGVnNF92ZXJzaW9uID09IE1TTVA0X1dNVjEpCiAgICAgICAgIHMtPmludGVyX2ludHJhX3ByZWQg PSBzLT53aWR0aCAqIHMtPmhlaWdodCA8IDMyMCoyNDAgJiYKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG0tPmJpdF9yYXRlICA8PSBJSV9CSVRSQVRFICAgICAmJgpAQCAtMjQ4LDM1ICsy NDgsMzUgQEAgc3RhdGljIGludCBtc21wZWc0X2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWlu RW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAgaWYgKHMtPm1zbXBlZzRfdmVyc2lvbiA9PSBN U01QNF9XTVYxKSB7CiAgICAgICAgICAgICBmZl9tc21wZWc0X2VuY29kZV9leHRfaGVhZGVyKHMp OwogICAgICAgICAgICAgaWYgKG0tPmJpdF9yYXRlID4gTUJBQ19CSVRSQVRFKQotICAgICAgICAg ICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwgcy0+cGVyX21iX3JsX3RhYmxlKTsKKyAgICAgICAg ICAgICAgICBwdXRfYml0cygmcy0+cGIsIDEsIG1zLT5wZXJfbWJfcmxfdGFibGUpOwogICAgICAg ICB9CiAKICAgICAgICAgaWYgKHMtPm1zbXBlZzRfdmVyc2lvbiA+IE1TTVA0X1YyKSB7Ci0gICAg ICAgICAgICBpZighcy0+cGVyX21iX3JsX3RhYmxlKXsKLSAgICAgICAgICAgICAgICBmZl9tc21w ZWc0X2NvZGUwMTIoJnMtPnBiLCBzLT5ybF9jaHJvbWFfdGFibGVfaW5kZXgpOwotICAgICAgICAg ICAgICAgIGZmX21zbXBlZzRfY29kZTAxMigmcy0+cGIsIHMtPnJsX3RhYmxlX2luZGV4KTsKKyAg ICAgICAgICAgIGlmICghbXMtPnBlcl9tYl9ybF90YWJsZSl7CisgICAgICAgICAgICAgICAgZmZf bXNtcGVnNF9jb2RlMDEyKCZzLT5wYiwgbXMtPnJsX2Nocm9tYV90YWJsZV9pbmRleCk7CisgICAg ICAgICAgICAgICAgZmZfbXNtcGVnNF9jb2RlMDEyKCZzLT5wYiwgbXMtPnJsX3RhYmxlX2luZGV4 KTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBzLT5k Y190YWJsZV9pbmRleCk7CisgICAgICAgICAgICBwdXRfYml0cygmcy0+cGIsIDEsIG1zLT5kY190 YWJsZV9pbmRleCk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgICBwdXRfYml0cygm cy0+cGIsIDEsIHMtPnVzZV9za2lwX21iX2NvZGUpOworICAgICAgICBwdXRfYml0cygmcy0+cGIs IDEsIG1zLT51c2Vfc2tpcF9tYl9jb2RlKTsKIAogICAgICAgICBpZiAocy0+bXNtcGVnNF92ZXJz aW9uID09IE1TTVA0X1dNVjEgJiYgbS0+Yml0X3JhdGUgPiBNQkFDX0JJVFJBVEUpCi0gICAgICAg ICAgICBwdXRfYml0cygmcy0+cGIsIDEsIHMtPnBlcl9tYl9ybF90YWJsZSk7CisgICAgICAgICAg ICBwdXRfYml0cygmcy0+cGIsIDEsIG1zLT5wZXJfbWJfcmxfdGFibGUpOwogCiAgICAgICAgIGlm IChzLT5tc21wZWc0X3ZlcnNpb24gPiBNU01QNF9WMikgewotICAgICAgICAgICAgaWYoIXMtPnBl cl9tYl9ybF90YWJsZSkKLSAgICAgICAgICAgICAgICBmZl9tc21wZWc0X2NvZGUwMTIoJnMtPnBi LCBzLT5ybF90YWJsZV9pbmRleCk7CisgICAgICAgICAgICBpZiAoIW1zLT5wZXJfbWJfcmxfdGFi bGUpCisgICAgICAgICAgICAgICAgZmZfbXNtcGVnNF9jb2RlMDEyKCZzLT5wYiwgbXMtPnJsX3Rh YmxlX2luZGV4KTsKIAotICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBzLT5kY190YWJs ZV9pbmRleCk7CisgICAgICAgICAgICBwdXRfYml0cygmcy0+cGIsIDEsIG1zLT5kY190YWJsZV9p bmRleCk7CiAKLSAgICAgICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwgcy0+bXZfdGFibGVfaW5k ZXgpOworICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBtcy0+bXZfdGFibGVfaW5kZXgp OwogICAgICAgICB9CiAgICAgfQogCi0gICAgcy0+ZXNjM19sZXZlbF9sZW5ndGg9IDA7Ci0gICAg cy0+ZXNjM19ydW5fbGVuZ3RoPSAwOworICAgIHMtPmVzYzNfbGV2ZWxfbGVuZ3RoID0gMDsKKyAg ICBtcy0+ZXNjM19ydW5fbGVuZ3RoICA9IDA7CiAKICAgICByZXR1cm4gMDsKIH0KQEAgLTMwOCwx MCArMzA4LDExIEBAIEZGX0VOQUJMRV9ERVBSRUNBVElPTl9XQVJOSU5HUwogICAgICAgICBhdl9h c3NlcnQwKCFzLT5mbGlwZmxvcF9yb3VuZGluZyk7CiB9CiAKLXZvaWQgZmZfbXNtcGVnNF9lbmNv ZGVfbW90aW9uKE1wZWdFbmNDb250ZXh0ICogcywKK3ZvaWQgZmZfbXNtcGVnNF9lbmNvZGVfbW90 aW9uKE1TTVBFRzRFbmNDb250ZXh0ICpjb25zdCBtcywKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQgbXgsIGludCBteSkKIHsKLSAgICBjb25zdCB1aW50MzJfdCAqY29uc3Qg bXZfdmVjdG9yX3RhYmxlID0gbXZfdmVjdG9yX3RhYmxlc1tzLT5tdl90YWJsZV9pbmRleF07Cisg ICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMgPSAmbXMtPm0uczsKKyAgICBjb25zdCB1aW50MzJf dCAqY29uc3QgbXZfdmVjdG9yX3RhYmxlID0gbXZfdmVjdG9yX3RhYmxlc1ttcy0+bXZfdGFibGVf aW5kZXhdOwogICAgIHVpbnQzMl90IGNvZGU7CiAKICAgICAvKiBtb2R1bG8gZW5jb2RpbmcgKi8K QEAgLTM4Miw2ICszODMsNyBAQCBzdGF0aWMgdm9pZCBtc21wZWc0X2VuY29kZV9tYihNcGVnRW5j Q29udGV4dCAqY29uc3QgcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDE2X3Qg YmxvY2tbXVs2NF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbW90aW9uX3gs IGludCBtb3Rpb25feSkKIHsKKyAgICBNU01QRUc0RW5jQ29udGV4dCAqY29uc3QgbXMgPSBtcHZf dG9fbXNtcGVnNChzKTsKICAgICBpbnQgY2JwLCBjb2RlZF9jYnAsIGk7CiAgICAgaW50IHByZWRf eCwgcHJlZF95OwogCkBAIC0zOTQsNyArMzk2LDcgQEAgc3RhdGljIHZvaWQgbXNtcGVnNF9lbmNv ZGVfbWIoTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMsCiAgICAgICAgICAgICBpZiAocy0+YmxvY2tf bGFzdF9pbmRleFtpXSA+PSAwKQogICAgICAgICAgICAgICAgIGNicCB8PSAxIDw8ICg1IC0gaSk7 CiAgICAgICAgIH0KLSAgICAgICAgaWYgKHMtPnVzZV9za2lwX21iX2NvZGUgJiYgKGNicCB8IG1v dGlvbl94IHwgbW90aW9uX3kpID09IDApIHsKKyAgICAgICAgaWYgKG1zLT51c2Vfc2tpcF9tYl9j b2RlICYmIChjYnAgfCBtb3Rpb25feCB8IG1vdGlvbl95KSA9PSAwKSB7CiAgICAgICAgICAgICAv KiBza2lwIG1hY3JvYmxvY2sgKi8KICAgICAgICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwgMSk7 CiAgICAgICAgICAgICBzLT5sYXN0X2JpdHMrKzsKQEAgLTQwMiw3ICs0MDQsNyBAQCBzdGF0aWMg dm9pZCBtc21wZWc0X2VuY29kZV9tYihNcGVnRW5jQ29udGV4dCAqY29uc3QgcywKIAogICAgICAg ICAgICAgcmV0dXJuOwogICAgICAgICB9Ci0gICAgICAgIGlmIChzLT51c2Vfc2tpcF9tYl9jb2Rl KQorICAgICAgICBpZiAobXMtPnVzZV9za2lwX21iX2NvZGUpCiAgICAgICAgICAgICBwdXRfYml0 cygmcy0+cGIsIDEsIDApOyAgICAgLyogbWIgY29kZWQgKi8KIAogICAgICAgICBpZiAocy0+bXNt cGVnNF92ZXJzaW9uIDw9IE1TTVA0X1YyKSB7CkBAIC00MzAsOCArNDMyLDggQEAgc3RhdGljIHZv aWQgbXNtcGVnNF9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMsCiAKICAgICAgICAg ICAgIC8qIG1vdGlvbiB2ZWN0b3IgKi8KICAgICAgICAgICAgIGZmX2gyNjNfcHJlZF9tb3Rpb24o cywgMCwgMCwgJnByZWRfeCwgJnByZWRfeSk7Ci0gICAgICAgICAgICBmZl9tc21wZWc0X2VuY29k ZV9tb3Rpb24ocywgbW90aW9uX3ggLSBwcmVkX3gsCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgbW90aW9uX3kgLSBwcmVkX3kpOworICAgICAgICAgICAgZmZfbXNtcGVnNF9lbmNv ZGVfbW90aW9uKG1zLCBtb3Rpb25feCAtIHByZWRfeCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtb3Rpb25feSAtIHByZWRfeSk7CiAgICAgICAgIH0KIAogICAgICAgICBz LT5tdl9iaXRzICs9IGdldF9iaXRzX2RpZmYocyk7CkBAIC00NTIsNyArNDU0LDcgQEAgc3RhdGlj IHZvaWQgbXNtcGVnNF9lbmNvZGVfbWIoTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMsCiAgICAgICAg ICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLAogICAgICAgICAgICAgICAgICAgICAgICAgIGZmX3Yy X2ludHJhX2NicGNbY2JwJjNdWzFdLCBmZl92Ml9pbnRyYV9jYnBjW2NicCYzXVswXSk7CiAgICAg ICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGlmIChzLT51c2Vfc2tpcF9tYl9jb2Rl KQorICAgICAgICAgICAgICAgIGlmIChtcy0+dXNlX3NraXBfbWJfY29kZSkKICAgICAgICAgICAg ICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCAwKTsgICAgIC8qIG1iIGNvZGVkICovCiAgICAg ICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLAogICAgICAgICAgICAgICAgICAgICAgICAgIGZm X3YyX21iX3R5cGVbKGNicCYzKSArIDRdWzFdLApAQCAtNDc5LDcgKzQ4MSw3IEBAIHN0YXRpYyB2 b2lkIG1zbXBlZzRfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpjb25zdCBzLAogICAgICAgICAg ICAgICAgIHB1dF9iaXRzKCZzLT5wYiwKICAgICAgICAgICAgICAgICAgICAgICAgICBmZl9tc21w NF9tYl9pX3RhYmxlW2NvZGVkX2NicF1bMV0sIGZmX21zbXA0X21iX2lfdGFibGVbY29kZWRfY2Jw XVswXSk7CiAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGlmIChzLT51c2Vf c2tpcF9tYl9jb2RlKQorICAgICAgICAgICAgICAgIGlmIChtcy0+dXNlX3NraXBfbWJfY29kZSkK ICAgICAgICAgICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCAwKTsgICAgIC8qIG1iIGNv ZGVkICovCiAgICAgICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLAogICAgICAgICAgICAgICAg ICAgICAgICAgIGZmX3RhYmxlX21iX25vbl9pbnRyYVtjYnBdWzFdLApAQCAtNTAxLDggKzUwMyw5 IEBAIHN0YXRpYyB2b2lkIG1zbXBlZzRfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpjb25zdCBz LAogICAgIH0KIH0KIAotc3RhdGljIHZvaWQgbXNtcGVnNF9lbmNvZGVfZGMoTXBlZ0VuY0NvbnRl eHQgKiBzLCBpbnQgbGV2ZWwsIGludCBuLCBpbnQgKmRpcl9wdHIpCitzdGF0aWMgdm9pZCBtc21w ZWc0X2VuY29kZV9kYyhNU01QRUc0RW5jQ29udGV4dCAqY29uc3QgbXMsIGludCBsZXZlbCwgaW50 IG4sIGludCAqZGlyX3B0cikKIHsKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtcy0+ bS5zOwogICAgIGludCBzaWduLCBjb2RlOwogICAgIGludCBwcmVkOwogCkBAIC01MzksOCArNTQy LDggQEAgc3RhdGljIHZvaWQgbXNtcGVnNF9lbmNvZGVfZGMoTXBlZ0VuY0NvbnRleHQgKiBzLCBp bnQgbGV2ZWwsIGludCBuLCBpbnQgKmRpcl9wdHIKICAgICAgICAgaWYgKGNvZGUgPiBEQ19NQVgp CiAgICAgICAgICAgICBjb2RlID0gRENfTUFYOwogCi0gICAgICAgIHB1dF9iaXRzKCZzLT5wYiwg ZmZfbXNtcDRfZGNfdGFibGVzW3MtPmRjX3RhYmxlX2luZGV4XVtuID49IDRdW2NvZGVdWzFdLAot ICAgICAgICAgICAgICAgICAgICAgICAgIGZmX21zbXA0X2RjX3RhYmxlc1tzLT5kY190YWJsZV9p bmRleF1bbiA+PSA0XVtjb2RlXVswXSk7CisgICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgZmZfbXNt cDRfZGNfdGFibGVzW21zLT5kY190YWJsZV9pbmRleF1bbiA+PSA0XVtjb2RlXVsxXSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICBmZl9tc21wNF9kY190YWJsZXNbbXMtPmRjX3RhYmxlX2luZGV4 XVtuID49IDRdW2NvZGVdWzBdKTsKIAogICAgICAgICBpZiAoY29kZSA9PSBEQ19NQVgpCiAgICAg ICAgICAgICBwdXRfYml0cygmcy0+cGIsIDgsIGxldmVsKTsKQEAgLTU2MywxOCArNTY2LDE4IEBA IHZvaWQgZmZfbXNtcGVnNF9lbmNvZGVfYmxvY2soTXBlZ0VuY0NvbnRleHQgKiBzLCBpbnQxNl90 ICogYmxvY2ssIGludCBuKQogICAgIGNvbnN0IHVpbnQ4X3QgKnNjYW50YWJsZTsKIAogICAgIGlm IChzLT5tYl9pbnRyYSkgewotICAgICAgICBtc21wZWc0X2VuY29kZV9kYyhzLCBibG9ja1swXSwg biwgJmRjX3ByZWRfZGlyKTsKKyAgICAgICAgbXNtcGVnNF9lbmNvZGVfZGMobXMsIGJsb2NrWzBd LCBuLCAmZGNfcHJlZF9kaXIpOwogICAgICAgICBpID0gMTsKICAgICAgICAgaWYgKG4gPCA0KSB7 Ci0gICAgICAgICAgICBybCA9ICZmZl9ybF90YWJsZVtzLT5ybF90YWJsZV9pbmRleF07CisgICAg ICAgICAgICBybCA9ICZmZl9ybF90YWJsZVttcy0+cmxfdGFibGVfaW5kZXhdOwogICAgICAgICB9 IGVsc2UgewotICAgICAgICAgICAgcmwgPSAmZmZfcmxfdGFibGVbMyArIHMtPnJsX2Nocm9tYV90 YWJsZV9pbmRleF07CisgICAgICAgICAgICBybCA9ICZmZl9ybF90YWJsZVszICsgbXMtPnJsX2No cm9tYV90YWJsZV9pbmRleF07CiAgICAgICAgIH0KICAgICAgICAgcnVuX2RpZmYgPSBzLT5tc21w ZWc0X3ZlcnNpb24gPj0gTVNNUDRfV01WMTsKICAgICAgICAgc2NhbnRhYmxlPSBzLT5pbnRyYV9z Y2FudGFibGUucGVybXV0YXRlZDsKICAgICB9IGVsc2UgewogICAgICAgICBpID0gMDsKLSAgICAg ICAgcmwgPSAmZmZfcmxfdGFibGVbMyArIHMtPnJsX3RhYmxlX2luZGV4XTsKKyAgICAgICAgcmwg PSAmZmZfcmxfdGFibGVbMyArIG1zLT5ybF90YWJsZV9pbmRleF07CiAgICAgICAgIHJ1bl9kaWZm ID0gcy0+bXNtcGVnNF92ZXJzaW9uID4gTVNNUDRfVjI7CiAgICAgICAgIHNjYW50YWJsZT0gcy0+ aW50ZXJfc2NhbnRhYmxlLnBlcm11dGF0ZWQ7CiAgICAgfQpAQCAtNjM1LDE2ICs2MzgsMTYgQEAg dm9pZCBmZl9tc21wZWc0X2VuY29kZV9ibG9jayhNcGVnRW5jQ29udGV4dCAqIHMsIGludDE2X3Qg KiBibG9jaywgaW50IG4pCiAgICAgICAgICAgICAgICAgICAgICAgICBwdXRfYml0cygmcy0+cGIs IDEsIDApOwogICAgICAgICAgICAgICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBsYXN0 KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzLT5tc21wZWc0X3ZlcnNpb24gPj0gTVNN UDRfV01WMSkgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKHMtPmVzYzNfbGV2ZWxf bGVuZ3RoPT0wKXsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+ZXNjM19sZXZl bF9sZW5ndGg9ODsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+ZXNjM19ydW5f bGVuZ3RoPSA2OworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzLT5lc2MzX2xldmVs X2xlbmd0aCA9PSAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmVzYzNf bGV2ZWxfbGVuZ3RoID0gODsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXMtPmVz YzNfcnVuX2xlbmd0aCAgPSA2OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL0VT Q0xWTFNaICsgRVNDUlVOU1oKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYocy0+ cXNjYWxlPDgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRfYml0cygm cy0+cGIsIDYsIDMpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRfYml0cygmcy0+cGIsIDgsIDMpOwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICBwdXRfYml0cygmcy0+cGIsIHMtPmVzYzNfcnVuX2xlbmd0aCwgcnVuKTsKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwdXRfYml0cygmcy0+cGIsIG1zLT5lc2MzX3J1bl9sZW5ndGgsIHJ1 bik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBzaWdu KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRfYml0cygmcy0+cGIsIHMtPmVzYzNf bGV2ZWxfbGVuZ3RoLCBsZXZlbCk7CiAgICAgICAgICAgICAgICAgICAgICAgICB9ZWxzZXsKZGlm ZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5oIGIvbGliYXZjb2RlYy9tc21wZWc0ZW5j LmgKaW5kZXggZGRlMWZiNmI5My4uYmNlMTI2NWJiNSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9t c21wZWc0ZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tc21wZWc0ZW5jLmgKQEAgLTI5LDE1ICsyOSwy OSBAQAogdHlwZWRlZiBzdHJ1Y3QgTVNNUEVHNEVuY0NvbnRleHQgewogICAgIE1QVk1haW5FbmND b250ZXh0IG07CiAKKyAgICBpbnQgbXZfdGFibGVfaW5kZXg7CisgICAgaW50IHJsX3RhYmxlX2lu ZGV4OworICAgIGludCBybF9jaHJvbWFfdGFibGVfaW5kZXg7CisgICAgaW50IGRjX3RhYmxlX2lu ZGV4OworICAgIGludCB1c2Vfc2tpcF9tYl9jb2RlOworICAgIGludCBwZXJfbWJfcmxfdGFibGU7 CisgICAgaW50IGVzYzNfcnVuX2xlbmd0aDsKKwogICAgIC8qKiBbbWJfaW50cmFdW2lzQ2hyb21h XVtsZXZlbF1bcnVuXVtsYXN0XSAqLwogICAgIHVuc2lnbmVkIGFjX3N0YXRzWzJdWzJdW01BWF9M RVZFTCArIDFdW01BWF9SVU4gKyAxXVsyXTsKIH0gTVNNUEVHNEVuY0NvbnRleHQ7CiAKK3N0YXRp YyBpbmxpbmUgTVNNUEVHNEVuY0NvbnRleHQgKm1wdl90b19tc21wZWc0KE1wZWdFbmNDb250ZXh0 ICpzKQoreworICAgIC8vIE9ubHkgbGVnYWwgYmVjYXVzZSBubyBNU01QRUctNCBkZWNvZGVyIHVz ZXMgc2xpY2UtdGhyZWFkaW5nLgorICAgIHJldHVybiAoTVNNUEVHNEVuY0NvbnRleHQqKXM7Cit9 CisKIHZvaWQgZmZfbXNtcGVnNF9lbmNvZGVfaW5pdChNUFZNYWluRW5jQ29udGV4dCAqbSk7CiB2 b2lkIGZmX21zbXBlZzRfZW5jb2RlX2V4dF9oZWFkZXIoTXBlZ0VuY0NvbnRleHQgKnMpOwogdm9p ZCBmZl9tc21wZWc0X2VuY29kZV9ibG9jayhNcGVnRW5jQ29udGV4dCAqIHMsIGludDE2X3QgKiBi bG9jaywgaW50IG4pOwogdm9pZCBmZl9tc21wZWc0X2hhbmRsZV9zbGljZXMoTXBlZ0VuY0NvbnRl eHQgKnMpOwotdm9pZCBmZl9tc21wZWc0X2VuY29kZV9tb3Rpb24oTXBlZ0VuY0NvbnRleHQgKiBz LCBpbnQgbXgsIGludCBteSk7Cit2b2lkIGZmX21zbXBlZzRfZW5jb2RlX21vdGlvbihNU01QRUc0 RW5jQ29udGV4dCAqbXMsIGludCBteCwgaW50IG15KTsKIAogdm9pZCBmZl9tc21wZWc0X2NvZGUw MTIoUHV0Qml0Q29udGV4dCAqcGIsIGludCBuKTsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92 YWFwaV92YzEuYyBiL2xpYmF2Y29kZWMvdmFhcGlfdmMxLmMKaW5kZXggNmMyNWZkYjVmYS4uZjIy ODVjMzk2YiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy92YWFwaV92YzEuYworKysgYi9saWJhdmNv ZGVjL3ZhYXBpX3ZjMS5jCkBAIC0zNDMsNyArMzQzLDcgQEAgc3RhdGljIGludCB2YWFwaV92YzFf c3RhcnRfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LAogICAgICAgICAubXZfZmllbGRzLmJp dHMgPSB7CiAgICAgICAgICAgICAubXZfbW9kZSAgICAgICAgICAgICAgICAgICAgICAgPSB2YzFf Z2V0X01WTU9ERSh2KSwKICAgICAgICAgICAgIC5tdl9tb2RlMiAgICAgICAgICAgICAgICAgICAg ICA9IHZjMV9nZXRfTVZNT0RFMih2KSwKLSAgICAgICAgICAgIC5tdl90YWJsZSAgICAgICAgICAg ICAgICAgICAgICA9ICh2LT5mY20gPT0gUFJPR1JFU1NJVkUgPyBzLT5tdl90YWJsZV9pbmRleCA6 IHYtPmltdnRhYiksCisgICAgICAgICAgICAubXZfdGFibGUgICAgICAgICAgICAgICAgICAgICAg PSAodi0+ZmNtID09IFBST0dSRVNTSVZFID8gdi0+bXZfdGFibGVfaW5kZXggOiB2LT5pbXZ0YWIp LAogICAgICAgICAgICAgLnR3b19tdl9ibG9ja19wYXR0ZXJuX3RhYmxlICAgID0gdi0+dHdvbXZi cHRhYiwKICAgICAgICAgICAgIC5mb3VyX212X3N3aXRjaCAgICAgICAgICAgICAgICA9IHYtPmZv dXJtdnN3aXRjaCwKICAgICAgICAgICAgIC5mb3VyX212X2Jsb2NrX3BhdHRlcm5fdGFibGUgICA9 IHYtPmZvdXJtdmJwdGFiLApAQCAtMzcxLDcgKzM3MSw3IEBAIHN0YXRpYyBpbnQgdmFhcGlfdmMx X3N0YXJ0X2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwKICAgICAgICAgICAgIC5mcmFtZV9s ZXZlbF90cmFuc2Zvcm1fdHlwZSAgICA9IHZjMV9nZXRfVFRGUk0odiksCiAgICAgICAgICAgICAu dHJhbnNmb3JtX2FjX2NvZGluZ3NldF9pZHgxICAgPSB2LT5jX2FjX3RhYmxlX2luZGV4LAogICAg ICAgICAgICAgLnRyYW5zZm9ybV9hY19jb2RpbmdzZXRfaWR4MiAgID0gdi0+eV9hY190YWJsZV9p bmRleCwKLSAgICAgICAgICAgIC5pbnRyYV90cmFuc2Zvcm1fZGNfdGFibGUgICAgICA9IHYtPnMu ZGNfdGFibGVfaW5kZXgsCisgICAgICAgICAgICAuaW50cmFfdHJhbnNmb3JtX2RjX3RhYmxlICAg ICAgPSB2LT5kY190YWJsZV9pbmRleCwKICAgICAgICAgfSwKICAgICB9OwogCmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL3ZjMS5jIGIvbGliYXZjb2RlYy92YzEuYwppbmRleCBkZWMzZTE2ZWEyLi4x ZDY0MmNjN2Y2IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3ZjMS5jCisrKyBiL2xpYmF2Y29kZWMv dmMxLmMKQEAgLTc2NSw3ICs3NjUsNyBAQCBpbnQgZmZfdmMxX3BhcnNlX2ZyYW1lX2hlYWRlcihW QzFDb250ZXh0ICp2LCBHZXRCaXRDb250ZXh0KiBnYikKICAgICAgICAgICAgIHJldHVybiBBVkVS Uk9SX0lOVkFMSUREQVRBOwogCiAgICAgICAgIC8qIEhvcGVmdWxseSB0aGlzIGlzIGNvcnJlY3Qg Zm9yIFAtZnJhbWVzICovCi0gICAgICAgIHYtPnMubXZfdGFibGVfaW5kZXggPSBnZXRfYml0cyhn YiwgMik7IC8vYnV0IHVzaW5nIGZmX3ZjMV8gdGFibGVzCisgICAgICAgIHYtPm12X3RhYmxlX2lu ZGV4ID0gZ2V0X2JpdHMoZ2IsIDIpOyAvL2J1dCB1c2luZyBmZl92YzFfIHRhYmxlcwogICAgICAg ICB2LT5jYnB0YWIgPSBnZXRfYml0cyhnYiwgMik7CiAgICAgICAgIHYtPmNicGN5X3ZsYyA9IGZm X3ZjMV9jYnBjeV9wX3ZsY1t2LT5jYnB0YWJdOwogCkBAIC04MDQsNyArODA0LDcgQEAgaW50IGZm X3ZjMV9wYXJzZV9mcmFtZV9oZWFkZXIoVkMxQ29udGV4dCAqdiwgR2V0Qml0Q29udGV4dCogZ2Ip CiAgICAgICAgIGF2X2xvZyh2LT5zLmF2Y3R4LCBBVl9MT0dfREVCVUcsICJNQiBTa2lwIHBsYW5l IGVuY29kaW5nOiAiCiAgICAgICAgICAgICAgICAiSW1vZGU6ICVpLCBJbnZlcnQ6ICVpXG4iLCBz dGF0dXM+PjEsIHN0YXR1cyYxKTsKIAotICAgICAgICB2LT5zLm12X3RhYmxlX2luZGV4ID0gZ2V0 X2JpdHMoZ2IsIDIpOworICAgICAgICB2LT5tdl90YWJsZV9pbmRleCAgID0gZ2V0X2JpdHMoZ2Is IDIpOwogICAgICAgICB2LT5jYnB0YWIgICAgICAgICAgID0gZ2V0X2JpdHMoZ2IsIDIpOwogICAg ICAgICB2LT5jYnBjeV92bGMgICAgICAgID0gZmZfdmMxX2NicGN5X3BfdmxjW3YtPmNicHRhYl07 CiAKQEAgLTgzMyw3ICs4MzMsNyBAQCBpbnQgZmZfdmMxX3BhcnNlX2ZyYW1lX2hlYWRlcihWQzFD b250ZXh0ICp2LCBHZXRCaXRDb250ZXh0KiBnYikKICAgICAgICAgICAgIHYtPnlfYWNfdGFibGVf aW5kZXggPSBkZWNvZGUwMTIoZ2IpOwogICAgICAgICB9CiAgICAgICAgIC8qIERDIFN5bnRheCAq LwotICAgICAgICB2LT5zLmRjX3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMxKGdiKTsKKyAgICAgICAg di0+ZGNfdGFibGVfaW5kZXggPSBnZXRfYml0czEoZ2IpOwogICAgIH0KIAogICAgIGlmICh2LT5z LnBpY3RfdHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfQkkpIHsKQEAgLTExNTgsNyArMTE1OCw3IEBA IGludCBmZl92YzFfcGFyc2VfZnJhbWVfaGVhZGVyX2FkdihWQzFDb250ZXh0ICp2LCBHZXRCaXRD b250ZXh0KiBnYikKICAgICAgICAgICAgICAgICAgICAiSW1vZGU6ICVpLCBJbnZlcnQ6ICVpXG4i LCBzdGF0dXM+PjEsIHN0YXR1cyYxKTsKIAogICAgICAgICAgICAgLyogSG9wZWZ1bGx5IHRoaXMg aXMgY29ycmVjdCBmb3IgUC1mcmFtZXMgKi8KLSAgICAgICAgICAgIHYtPnMubXZfdGFibGVfaW5k ZXggPSBnZXRfYml0cyhnYiwgMik7IC8vYnV0IHVzaW5nIGZmX3ZjMV8gdGFibGVzCisgICAgICAg ICAgICB2LT5tdl90YWJsZV9pbmRleCAgID0gZ2V0X2JpdHMoZ2IsIDIpOyAvL2J1dCB1c2luZyBm Zl92YzFfIHRhYmxlcwogICAgICAgICAgICAgdi0+Y2JwdGFiICAgICAgICAgICA9IGdldF9iaXRz KGdiLCAyKTsKICAgICAgICAgICAgIHYtPmNicGN5X3ZsYyAgICAgICAgPSBmZl92YzFfY2JwY3lf cF92bGNbdi0+Y2JwdGFiXTsKICAgICAgICAgfSBlbHNlIGlmICh2LT5mY20gPT0gSUxBQ0VfRlJB TUUpIHsgLy8gZnJhbWUgaW50ZXJsYWNlZApAQCAtMTI5NSw3ICsxMjk1LDcgQEAgaW50IGZmX3Zj MV9wYXJzZV9mcmFtZV9oZWFkZXJfYWR2KFZDMUNvbnRleHQgKnYsIEdldEJpdENvbnRleHQqIGdi KQogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIGF2X2xvZyh2LT5zLmF2 Y3R4LCBBVl9MT0dfREVCVUcsICJNQiBTa2lwIHBsYW5lIGVuY29kaW5nOiAiCiAgICAgICAgICAg ICAgICAgICAgIkltb2RlOiAlaSwgSW52ZXJ0OiAlaVxuIiwgc3RhdHVzPj4xLCBzdGF0dXMmMSk7 Ci0gICAgICAgICAgICB2LT5zLm12X3RhYmxlX2luZGV4ID0gZ2V0X2JpdHMoZ2IsIDIpOworICAg ICAgICAgICAgdi0+bXZfdGFibGVfaW5kZXggPSBnZXRfYml0cyhnYiwgMik7CiAgICAgICAgICAg ICB2LT5jYnB0YWIgPSBnZXRfYml0cyhnYiwgMik7CiAgICAgICAgICAgICB2LT5jYnBjeV92bGMg PSBmZl92YzFfY2JwY3lfcF92bGNbdi0+Y2JwdGFiXTsKICAgICAgICAgfQpAQCAtMTMzMCw3ICsx MzMwLDcgQEAgaW50IGZmX3ZjMV9wYXJzZV9mcmFtZV9oZWFkZXJfYWR2KFZDMUNvbnRleHQgKnYs IEdldEJpdENvbnRleHQqIGdiKQogICAgIH0KIAogICAgIC8qIERDIFN5bnRheCAqLwotICAgIHYt PnMuZGNfdGFibGVfaW5kZXggPSBnZXRfYml0czEoZ2IpOworICAgIHYtPmRjX3RhYmxlX2luZGV4 ID0gZ2V0X2JpdHMxKGdiKTsKICAgICBpZiAoKHYtPnMucGljdF90eXBlID09IEFWX1BJQ1RVUkVf VFlQRV9JIHx8IHYtPnMucGljdF90eXBlID09IEFWX1BJQ1RVUkVfVFlQRV9CSSkKICAgICAgICAg JiYgdi0+ZHF1YW50KSB7CiAgICAgICAgIGF2X2xvZyh2LT5zLmF2Y3R4LCBBVl9MT0dfREVCVUcs ICJWT1AgRFF1YW50IGluZm9cbiIpOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92YzEuaCBiL2xp YmF2Y29kZWMvdmMxLmgKaW5kZXggYjczMzliY2Q1Zi4uZTg3NjIzNTBhMiAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy92YzEuaAorKysgYi9saWJhdmNvZGVjL3ZjMS5oCkBAIC0yNDYsNiArMjQ2LDcg QEAgdHlwZWRlZiBzdHJ1Y3QgVkMxQ29udGV4dHsKICAgICB1aW50OF90IGRxc2JlZGdlOwogICAg IHVpbnQ4X3QgZHFiaWxldmVsOwogICAgIC8vQH0KKyAgICBpbnQgZGNfdGFibGVfaW5kZXg7CiAg ICAgLyoqIEFDIGNvZGluZyBzZXQgaW5kZXhlcwogICAgICAqIEBzZWUgOC4xLjEuMTAsIHAoMSkx MAogICAgICAqLwpAQCAtMjUzLDYgKzI1NCw4IEBAIHR5cGVkZWYgc3RydWN0IFZDMUNvbnRleHR7 CiAgICAgaW50IGNfYWNfdGFibGVfaW5kZXg7ICAgIC8vLzwgQ2hyb21hIGluZGV4IGZyb20gQUNG Uk0gZWxlbWVudAogICAgIGludCB5X2FjX3RhYmxlX2luZGV4OyAgICAvLy88IEx1bWEgaW5kZXgg ZnJvbSBBQzJGUk0gZWxlbWVudAogICAgIC8vQH0KKyAgICBpbnQgZXNjM19sZXZlbF9sZW5ndGg7 CisgICAgaW50IGVzYzNfcnVuX2xlbmd0aDsKICAgICBpbnQgdHRmcm07ICAgICAgICAgICAgICAg Ly8vPCBUcmFuc2Zvcm0gdHlwZSBpbmZvIHByZXNlbnQgYXQgZnJhbWUgbGV2ZWwKICAgICB1aW50 OF90IHR0bWJmOyAgICAgICAgICAgLy8vPCBUcmFuc2Zvcm0gdHlwZSBmbGFnCiAgICAgaW50ICp0 dGJsa19iYXNlLCAqdHRibGs7IC8vLzwgVHJhbnNmb3JtIHR5cGUgYXQgdGhlIGJsb2NrIGxldmVs CkBAIC0yODIsNiArMjg1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgVkMxQ29udGV4dHsKICAgICB1aW50 OF90IHBxdWFudGl6ZXI7ICAgICAgICAgICAgIC8vLzwgVW5pZm9ybSAob3ZlciBzZXF1ZW5jZSkg cXVhbnRpemVyIGluIHVzZQogICAgIGNvbnN0IFZMQ0VsZW0gKmNicGN5X3ZsYzsgICAgICAgLy8v PCBDQlBDWSBWTEMgdGFibGUKICAgICBpbnQgdHRfaW5kZXg7ICAgICAgICAgICAgICAgICAgIC8v LzwgSW5kZXggZm9yIFRyYW5zZm9ybSBUeXBlIHRhYmxlcyAodG8gZGVjb2RlIFRUTUIpCisgICAg aW50IG12X3RhYmxlX2luZGV4OwogICAgIHVpbnQ4X3QqIG12X3R5cGVfbWJfcGxhbmU7ICAgICAg Ly8vPCBiaXRwbGFuZSBmb3IgbXZfdHlwZSA9PSAoNE1WKQogICAgIHVpbnQ4X3QqIGRpcmVjdF9t Yl9wbGFuZTsgICAgICAgLy8vPCBiaXRwbGFuZSBmb3IgImRpcmVjdCIgTUJzCiAgICAgdWludDhf dCogZm9yd2FyZF9tYl9wbGFuZTsgICAgICAvLy88IGJpdHBsYW5lIGZvciAiZm9yd2FyZCIgTUJz CmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3ZjMV9ibG9jay5jIGIvbGliYXZjb2RlYy92YzFfYmxv Y2suYwppbmRleCAyNmFkZmJjYTFkLi4xNjYxZmRkNzQyIDEwMDY0NAotLS0gYS9saWJhdmNvZGVj L3ZjMV9ibG9jay5jCisrKyBiL2xpYmF2Y29kZWMvdmMxX2Jsb2NrLmMKQEAgLTIyNyw3ICsyMjcs NyBAQCBzdGF0aWMgdm9pZCB2YzFfcHV0X2Jsb2Nrc19jbGFtcGVkKFZDMUNvbnRleHQgKnYsIGlu dCBwdXRfc2lnbmVkKQogICogQHBhcmFtIF9kbXZfeSBWZXJ0aWNhbCBkaWZmZXJlbnRpYWwgZm9y IGRlY29kZWQgTVYKICAqLwogI2RlZmluZSBHRVRfTVZEQVRBKF9kbXZfeCwgX2Rtdl95KSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIGluZGV4ID0gMSArIGdldF92 bGMyKGdiLCBmZl92YzFfbXZfZGlmZl92bGNbcy0+bXZfdGFibGVfaW5kZXhdLCAgICAgXAorICAg IGluZGV4ID0gMSArIGdldF92bGMyKGdiLCBmZl92YzFfbXZfZGlmZl92bGNbdi0+bXZfdGFibGVf aW5kZXhdLCAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgIFZDMV9NVl9ESUZGX1ZMQ19C SVRTLCAyKTsgICAgICAgICAgICAgICAgICAgICAgXAogICAgIGlmIChpbmRleCA+IDM2KSB7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAg ICBtYl9oYXNfY29lZmZzID0gMTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXApAQCAtNTQ5LDE5ICs1NDksMTkgQEAgc3RhdGljIGludCB2YzFfZGVjb2RlX2Fj X2NvZWZmKFZDMUNvbnRleHQgKnYsIGludCAqbGFzdCwgaW50ICpza2lwLAogICAgICAgICAgICAg c2lnbiA9IGdldF9iaXRzMShnYik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBsc3Qg PSBnZXRfYml0czEoZ2IpOwotICAgICAgICAgICAgaWYgKHYtPnMuZXNjM19sZXZlbF9sZW5ndGgg PT0gMCkgeworICAgICAgICAgICAgaWYgKHYtPmVzYzNfbGV2ZWxfbGVuZ3RoID09IDApIHsKICAg ICAgICAgICAgICAgICBpZiAodi0+cHEgPCA4IHx8IHYtPmRxdWFudGZybSkgeyAvLyB0YWJsZSA1 OQotICAgICAgICAgICAgICAgICAgICB2LT5zLmVzYzNfbGV2ZWxfbGVuZ3RoID0gZ2V0X2JpdHMo Z2IsIDMpOwotICAgICAgICAgICAgICAgICAgICBpZiAoIXYtPnMuZXNjM19sZXZlbF9sZW5ndGgp Ci0gICAgICAgICAgICAgICAgICAgICAgICB2LT5zLmVzYzNfbGV2ZWxfbGVuZ3RoID0gZ2V0X2Jp dHMoZ2IsIDIpICsgODsKKyAgICAgICAgICAgICAgICAgICAgdi0+ZXNjM19sZXZlbF9sZW5ndGgg PSBnZXRfYml0cyhnYiwgMyk7CisgICAgICAgICAgICAgICAgICAgIGlmICghdi0+ZXNjM19sZXZl bF9sZW5ndGgpCisgICAgICAgICAgICAgICAgICAgICAgICB2LT5lc2MzX2xldmVsX2xlbmd0aCA9 IGdldF9iaXRzKGdiLCAyKSArIDg7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsgLy8gdGFibGUg NjAKLSAgICAgICAgICAgICAgICAgICAgdi0+cy5lc2MzX2xldmVsX2xlbmd0aCA9IGdldF91bmFy eShnYiwgMSwgNikgKyAyOworICAgICAgICAgICAgICAgICAgICB2LT5lc2MzX2xldmVsX2xlbmd0 aCA9IGdldF91bmFyeShnYiwgMSwgNikgKyAyOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAg ICAgICAgICB2LT5zLmVzYzNfcnVuX2xlbmd0aCA9IDMgKyBnZXRfYml0cyhnYiwgMik7CisgICAg ICAgICAgICAgICAgdi0+ZXNjM19ydW5fbGVuZ3RoID0gMyArIGdldF9iaXRzKGdiLCAyKTsKICAg ICAgICAgICAgIH0KLSAgICAgICAgICAgIHJ1biAgID0gZ2V0X2JpdHMoZ2IsIHYtPnMuZXNjM19y dW5fbGVuZ3RoKTsKKyAgICAgICAgICAgIHJ1biAgID0gZ2V0X2JpdHMoZ2IsIHYtPmVzYzNfcnVu X2xlbmd0aCk7CiAgICAgICAgICAgICBzaWduICA9IGdldF9iaXRzMShnYik7Ci0gICAgICAgICAg ICBsZXZlbCA9IGdldF9iaXRzKGdiLCB2LT5zLmVzYzNfbGV2ZWxfbGVuZ3RoKTsKKyAgICAgICAg ICAgIGxldmVsID0gZ2V0X2JpdHMoZ2IsIHYtPmVzYzNfbGV2ZWxfbGVuZ3RoKTsKICAgICAgICAg fQogICAgIH0KIApAQCAtNTkwLDcgKzU5MCw3IEBAIHN0YXRpYyBpbnQgdmMxX2RlY29kZV9pX2Js b2NrKFZDMUNvbnRleHQgKnYsIGludDE2X3QgYmxvY2tbNjRdLCBpbnQgbiwKICAgICBpbnQgZGNk aWZmLCBzY2FsZTsKIAogICAgIC8qIEdldCBEQyBkaWZmZXJlbnRpYWwgKi8KLSAgICBkY2RpZmYg PSBnZXRfdmxjMigmcy0+Z2IsIGZmX21zbXA0X2RjX3ZsY1tzLT5kY190YWJsZV9pbmRleF1bbiA+ PSA0XSwKKyAgICBkY2RpZmYgPSBnZXRfdmxjMigmcy0+Z2IsIGZmX21zbXA0X2RjX3ZsY1t2LT5k Y190YWJsZV9pbmRleF1bbiA+PSA0XSwKICAgICAgICAgICAgICAgICAgICAgICBNU01QNF9EQ19W TENfQklUUywgMyk7CiAgICAgaWYgKGRjZGlmZikgewogICAgICAgICBjb25zdCBpbnQgbSA9ICh2 LT5wcSA9PSAxIHx8IHYtPnBxID09IDIpID8gMyAtIHYtPnBxIDogMDsKQEAgLTcyMyw3ICs3MjMs NyBAQCBzdGF0aWMgaW50IHZjMV9kZWNvZGVfaV9ibG9ja19hZHYoVkMxQ29udGV4dCAqdiwgaW50 MTZfdCBibG9ja1s2NF0sIGludCBuLAogICAgIGludCBxdWFudCA9IEZGQUJTKG1xdWFudCk7CiAK ICAgICAvKiBHZXQgREMgZGlmZmVyZW50aWFsICovCi0gICAgZGNkaWZmID0gZ2V0X3ZsYzIoJnMt PmdiLCBmZl9tc21wNF9kY192bGNbcy0+ZGNfdGFibGVfaW5kZXhdW24gPj0gNF0sCisgICAgZGNk aWZmID0gZ2V0X3ZsYzIoJnMtPmdiLCBmZl9tc21wNF9kY192bGNbdi0+ZGNfdGFibGVfaW5kZXhd W24gPj0gNF0sCiAgICAgICAgICAgICAgICAgICAgICAgTVNNUDRfRENfVkxDX0JJVFMsIDMpOwog ICAgIGlmIChkY2RpZmYpIHsKICAgICAgICAgY29uc3QgaW50IG0gPSAocXVhbnQgPT0gMSB8fCBx dWFudCA9PSAyKSA/IDMgLSBxdWFudCA6IDA7CkBAIC05MTEsNyArOTExLDcgQEAgc3RhdGljIGlu dCB2YzFfZGVjb2RlX2ludHJhX2Jsb2NrKFZDMUNvbnRleHQgKnYsIGludDE2X3QgYmxvY2tbNjRd LCBpbnQgbiwKICAgICBzLT55X2RjX3NjYWxlID0gZmZfd212M19kY19zY2FsZV90YWJsZVtxdWFu dF07CiAKICAgICAvKiBHZXQgREMgZGlmZmVyZW50aWFsICovCi0gICAgZGNkaWZmID0gZ2V0X3Zs YzIoJnMtPmdiLCBmZl9tc21wNF9kY192bGNbcy0+ZGNfdGFibGVfaW5kZXhdW24gPj0gNF0sCisg ICAgZGNkaWZmID0gZ2V0X3ZsYzIoJnMtPmdiLCBmZl9tc21wNF9kY192bGNbdi0+ZGNfdGFibGVf aW5kZXhdW24gPj0gNF0sCiAgICAgICAgICAgICAgICAgICAgICAgTVNNUDRfRENfVkxDX0JJVFMs IDMpOwogICAgIGlmIChkY2RpZmYpIHsKICAgICAgICAgY29uc3QgaW50IG0gPSAocXVhbnQgPT0g MSB8fCBxdWFudCA9PSAyKSA/IDMgLSBxdWFudCA6IDA7CkBAIC0yOTQ2LDcgKzI5NDYsNyBAQCBz dGF0aWMgdm9pZCB2YzFfZGVjb2RlX3NraXBfYmxvY2tzKFZDMUNvbnRleHQgKnYpCiB2b2lkIGZm X3ZjMV9kZWNvZGVfYmxvY2tzKFZDMUNvbnRleHQgKnYpCiB7CiAKLSAgICB2LT5zLmVzYzNfbGV2 ZWxfbGVuZ3RoID0gMDsKKyAgICB2LT5lc2MzX2xldmVsX2xlbmd0aCA9IDA7CiAgICAgaWYgKHYt Png4X3R5cGUpIHsKICAgICAgICAgZmZfaW50cmF4OF9kZWNvZGVfcGljdHVyZSgmdi0+eDgsIHYt PnMuY3VyX3BpYy5wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnYtPnMu Z2IsICZ2LT5zLm1iX3gsICZ2LT5zLm1iX3ksCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3dtdjJk ZWMuYyBiL2xpYmF2Y29kZWMvd212MmRlYy5jCmluZGV4IDAyYzNkYzI1MzUuLjk2NGQ2YTRjMDYg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvd212MmRlYy5jCisrKyBiL2xpYmF2Y29kZWMvd212MmRl Yy5jCkBAIC0yNDgsMTYgKzI0OCwxNiBAQCBpbnQgZmZfd212Ml9kZWNvZGVfc2Vjb25kYXJ5X3Bp Y3R1cmVfaGVhZGVyKE1wZWdFbmNDb250ZXh0ICpzKQogCiAgICAgICAgIGlmICghdy0+al90eXBl KSB7CiAgICAgICAgICAgICBpZiAody0+cGVyX21iX3JsX2JpdCkKLSAgICAgICAgICAgICAgICBz LT5wZXJfbWJfcmxfdGFibGUgPSBnZXRfYml0czEoJnMtPmdiKTsKKyAgICAgICAgICAgICAgICB3 LT5tcy5wZXJfbWJfcmxfdGFibGUgPSBnZXRfYml0czEoJnMtPmdiKTsKICAgICAgICAgICAgIGVs c2UKLSAgICAgICAgICAgICAgICBzLT5wZXJfbWJfcmxfdGFibGUgPSAwOworICAgICAgICAgICAg ICAgIHctPm1zLnBlcl9tYl9ybF90YWJsZSA9IDA7CiAKLSAgICAgICAgICAgIGlmICghcy0+cGVy X21iX3JsX3RhYmxlKSB7Ci0gICAgICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4 ID0gZGVjb2RlMDEyKCZzLT5nYik7Ci0gICAgICAgICAgICAgICAgcy0+cmxfdGFibGVfaW5kZXgg ICAgICAgID0gZGVjb2RlMDEyKCZzLT5nYik7CisgICAgICAgICAgICBpZiAoIXctPm1zLnBlcl9t Yl9ybF90YWJsZSkgeworICAgICAgICAgICAgICAgIHctPm1zLnJsX2Nocm9tYV90YWJsZV9pbmRl eCA9IGRlY29kZTAxMigmcy0+Z2IpOworICAgICAgICAgICAgICAgIHctPm1zLnJsX3RhYmxlX2lu ZGV4ICAgICAgICA9IGRlY29kZTAxMigmcy0+Z2IpOwogICAgICAgICAgICAgfQogCi0gICAgICAg ICAgICBzLT5kY190YWJsZV9pbmRleCA9IGdldF9iaXRzMSgmcy0+Z2IpOworICAgICAgICAgICAg dy0+bXMuZGNfdGFibGVfaW5kZXggPSBnZXRfYml0czEoJnMtPmdiKTsKIAogICAgICAgICAgICAg Ly8gYXQgbWluaW11bSBvbmUgYml0IHBlciBtYWNyb2Jsb2NrIGlzIHJlcXVpcmVkIGF0IGxlYXN0 IGluIGEgdmFsaWQgZnJhbWUsCiAgICAgICAgICAgICAvLyB3ZSBkaXNjYXJkIGZyYW1lcyBtdWNo IHNtYWxsZXIgdGhhbiB0aGlzLiBGcmFtZXMgc21hbGxlciB0aGFuIDEvOCBvZiB0aGUKQEAgLTI3 Miw4ICsyNzIsOCBAQCBpbnQgZmZfd212Ml9kZWNvZGVfc2Vjb25kYXJ5X3BpY3R1cmVfaGVhZGVy KE1wZWdFbmNDb250ZXh0ICpzKQogICAgICAgICBpZiAocy0+YXZjdHgtPmRlYnVnICYgRkZfREVC VUdfUElDVF9JTkZPKSB7CiAgICAgICAgICAgICBhdl9sb2cocy0+YXZjdHgsIEFWX0xPR19ERUJV RywKICAgICAgICAgICAgICAgICAgICAicXNjYWxlOiVkIHJsYzolZCBybDolZCBkYzolZCBtYnJs OiVkIGpfdHlwZTolZCBcbiIsCi0gICAgICAgICAgICAgICAgICAgcy0+cXNjYWxlLCBzLT5ybF9j aHJvbWFfdGFibGVfaW5kZXgsIHMtPnJsX3RhYmxlX2luZGV4LAotICAgICAgICAgICAgICAgICAg IHMtPmRjX3RhYmxlX2luZGV4LCBzLT5wZXJfbWJfcmxfdGFibGUsIHctPmpfdHlwZSk7CisgICAg ICAgICAgICAgICAgICAgcy0+cXNjYWxlLCB3LT5tcy5ybF9jaHJvbWFfdGFibGVfaW5kZXgsIHct Pm1zLnJsX3RhYmxlX2luZGV4LAorICAgICAgICAgICAgICAgICAgIHctPm1zLmRjX3RhYmxlX2lu ZGV4LCB3LT5tcy5wZXJfbWJfcmxfdGFibGUsIHctPmpfdHlwZSk7CiAgICAgICAgIH0KICAgICB9 IGVsc2UgewogICAgICAgICBpbnQgY2JwX2luZGV4OwpAQCAtMjk4LDIwICsyOTgsMjAgQEAgaW50 IGZmX3dtdjJfZGVjb2RlX3NlY29uZGFyeV9waWN0dXJlX2hlYWRlcihNcGVnRW5jQ29udGV4dCAq cykKICAgICAgICAgfQogCiAgICAgICAgIGlmICh3LT5wZXJfbWJfcmxfYml0KQotICAgICAgICAg ICAgcy0+cGVyX21iX3JsX3RhYmxlID0gZ2V0X2JpdHMxKCZzLT5nYik7CisgICAgICAgICAgICB3 LT5tcy5wZXJfbWJfcmxfdGFibGUgPSBnZXRfYml0czEoJnMtPmdiKTsKICAgICAgICAgZWxzZQot ICAgICAgICAgICAgcy0+cGVyX21iX3JsX3RhYmxlID0gMDsKKyAgICAgICAgICAgIHctPm1zLnBl cl9tYl9ybF90YWJsZSA9IDA7CiAKLSAgICAgICAgaWYgKCFzLT5wZXJfbWJfcmxfdGFibGUpIHsK LSAgICAgICAgICAgIHMtPnJsX3RhYmxlX2luZGV4ICAgICAgICA9IGRlY29kZTAxMigmcy0+Z2Ip OwotICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gcy0+cmxfdGFibGVfaW5k ZXg7CisgICAgICAgIGlmICghdy0+bXMucGVyX21iX3JsX3RhYmxlKSB7CisgICAgICAgICAgICB3 LT5tcy5ybF90YWJsZV9pbmRleCAgICAgICAgPSBkZWNvZGUwMTIoJnMtPmdiKTsKKyAgICAgICAg ICAgIHctPm1zLnJsX2Nocm9tYV90YWJsZV9pbmRleCA9IHctPm1zLnJsX3RhYmxlX2luZGV4Owog ICAgICAgICB9CiAKICAgICAgICAgaWYgKGdldF9iaXRzX2xlZnQoJnMtPmdiKSA8IDIpCiAgICAg ICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKIAotICAgICAgICBzLT5kY190YWJs ZV9pbmRleCAgID0gZ2V0X2JpdHMxKCZzLT5nYik7Ci0gICAgICAgIHMtPm12X3RhYmxlX2luZGV4 ICAgPSBnZXRfYml0czEoJnMtPmdiKTsKKyAgICAgICAgdy0+bXMuZGNfdGFibGVfaW5kZXggPSBn ZXRfYml0czEoJnMtPmdiKTsKKyAgICAgICAgdy0+bXMubXZfdGFibGVfaW5kZXggPSBnZXRfYml0 czEoJnMtPmdiKTsKIAogICAgICAgICBzLT5pbnRlcl9pbnRyYV9wcmVkID0gMDsgLy8gKHMtPndp ZHRoICogcy0+aGVpZ2h0IDwgMzIwICogMjQwICYmIHctPm1zLmJpdF9yYXRlIDw9IElJX0JJVFJB VEUpOwogICAgICAgICBzLT5ub19yb3VuZGluZyAgICAgXj0gMTsKQEAgLTMyMCwxNSArMzIwLDE1 IEBAIGludCBmZl93bXYyX2RlY29kZV9zZWNvbmRhcnlfcGljdHVyZV9oZWFkZXIoTXBlZ0VuY0Nv bnRleHQgKnMpCiAgICAgICAgICAgICBhdl9sb2cocy0+YXZjdHgsIEFWX0xPR19ERUJVRywKICAg ICAgICAgICAgICAgICAgICAicmw6JWQgcmxjOiVkIGRjOiVkIG12OiVkIG1icmw6JWQgcXA6JWQg bXNwZWw6JWQgIgogICAgICAgICAgICAgICAgICAgICJwZXJfbWJfYWJ0OiVkIGFidF90eXBlOiVk IGNicDolZCBpaTolZFxuIiwKLSAgICAgICAgICAgICAgICAgICBzLT5ybF90YWJsZV9pbmRleCwg cy0+cmxfY2hyb21hX3RhYmxlX2luZGV4LAotICAgICAgICAgICAgICAgICAgIHMtPmRjX3RhYmxl X2luZGV4LCBzLT5tdl90YWJsZV9pbmRleCwKLSAgICAgICAgICAgICAgICAgICBzLT5wZXJfbWJf cmxfdGFibGUsIHMtPnFzY2FsZSwgcy0+bXNwZWwsCisgICAgICAgICAgICAgICAgICAgdy0+bXMu cmxfdGFibGVfaW5kZXgsIHctPm1zLnJsX2Nocm9tYV90YWJsZV9pbmRleCwKKyAgICAgICAgICAg ICAgICAgICB3LT5tcy5kY190YWJsZV9pbmRleCwgdy0+bXMubXZfdGFibGVfaW5kZXgsCisgICAg ICAgICAgICAgICAgICAgdy0+bXMucGVyX21iX3JsX3RhYmxlLCBzLT5xc2NhbGUsIHMtPm1zcGVs LAogICAgICAgICAgICAgICAgICAgIHctPnBlcl9tYl9hYnQsIHctPmFidF90eXBlLCB3LT5jYnBf dGFibGVfaW5kZXgsCiAgICAgICAgICAgICAgICAgICAgcy0+aW50ZXJfaW50cmFfcHJlZCk7CiAg ICAgICAgIH0KICAgICB9Ci0gICAgcy0+ZXNjM19sZXZlbF9sZW5ndGggPSAwOwotICAgIHMtPmVz YzNfcnVuX2xlbmd0aCAgID0gMDsKKyAgICB3LT5tcy5lc2MzX2xldmVsX2xlbmd0aCA9IDA7Cisg ICAgdy0+bXMuZXNjM19ydW5fbGVuZ3RoICAgPSAwOwogCiAgICAgaWYgKHctPmpfdHlwZSkgewog ICAgICAgICBmZl9pbnRyYXg4X2RlY29kZV9waWN0dXJlKCZ3LT54OCwgcy0+Y3VyX3BpYy5wdHIs CkBAIC0zNDksNyArMzQ5LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHdtdjJfZGVjb2RlX21vdGlv bihXTVYyRGVjQ29udGV4dCAqdywgaW50ICpteF9wdHIsIGludCAqbXlfcHQKIHsKICAgICBNcGVn RW5jQ29udGV4dCAqY29uc3QgcyA9ICZ3LT5tcy5tOwogCi0gICAgZmZfbXNtcGVnNF9kZWNvZGVf bW90aW9uKHMsIG14X3B0ciwgbXlfcHRyKTsKKyAgICBmZl9tc21wZWc0X2RlY29kZV9tb3Rpb24o JnctPm1zLCBteF9wdHIsIG15X3B0cik7CiAKICAgICBpZiAoKCgoKm14X3B0cikgfCAoKm15X3B0 cikpICYgMSkgJiYgcy0+bXNwZWwpCiAgICAgICAgIHctPmNvbW1vbi5oc2hpZnQgPSBnZXRfYml0 czEoJnMtPmdiKTsKQEAgLTQyMywxOSArNDIzLDIzIEBAIHN0YXRpYyBpbmxpbmUgaW50IHdtdjJf ZGVjb2RlX2ludGVyX2Jsb2NrKFdNVjJEZWNDb250ZXh0ICp3LCBpbnQxNl90ICpibG9jaywKIAog ICAgICAgICBzdWJfY2JwID0gc3ViX2NicF90YWJsZVtkZWNvZGUwMTIoJnMtPmdiKV07CiAKLSAg ICAgICAgaWYgKHN1Yl9jYnAgJiAxKQotICAgICAgICAgICAgaWYgKChyZXQgPSBmZl9tc21wZWc0 X2RlY29kZV9ibG9jayhzLCBibG9jaywgbiwgMSwgc2NhbnRhYmxlKSkgPCAwKQorICAgICAgICBp ZiAoc3ViX2NicCAmIDEpIHsKKyAgICAgICAgICAgIHJldCA9IGZmX21zbXBlZzRfZGVjb2RlX2Js b2NrKCZ3LT5tcywgYmxvY2ssIG4sIDEsIHNjYW50YWJsZSk7CisgICAgICAgICAgICBpZiAocmV0 IDwgMCkKICAgICAgICAgICAgICAgICByZXR1cm4gcmV0OworICAgICAgICB9CiAKLSAgICAgICAg aWYgKHN1Yl9jYnAgJiAyKQotICAgICAgICAgICAgaWYgKChyZXQgPSBmZl9tc21wZWc0X2RlY29k ZV9ibG9jayhzLCB3LT5hYnRfYmxvY2syW25dLCBuLCAxLCBzY2FudGFibGUpKSA8IDApCisgICAg ICAgIGlmIChzdWJfY2JwICYgMikgeworICAgICAgICAgICAgcmV0ID0gZmZfbXNtcGVnNF9kZWNv ZGVfYmxvY2soJnctPm1zLCB3LT5hYnRfYmxvY2syW25dLCBuLCAxLCBzY2FudGFibGUpOworICAg ICAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAgICAg ICAgfQogCiAgICAgICAgIHMtPmJsb2NrX2xhc3RfaW5kZXhbbl0gPSA2MzsKIAogICAgICAgICBy ZXR1cm4gMDsKICAgICB9IGVsc2UgewotICAgICAgICByZXR1cm4gZmZfbXNtcGVnNF9kZWNvZGVf YmxvY2socywgYmxvY2ssIG4sIDEsCisgICAgICAgIHJldHVybiBmZl9tc21wZWc0X2RlY29kZV9i bG9jaygmdy0+bXMsIGJsb2NrLCBuLCAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcy0+aW50ZXJfc2NhbnRhYmxlLnBlcm11dGF0ZWQpOwogICAgIH0KIH0KQEAgLTQ0 NSw2ICs0NDksNyBAQCBzdGF0aWMgaW50IHdtdjJfZGVjb2RlX21iKE1wZWdFbmNDb250ZXh0ICpz LCBpbnQxNl90IGJsb2NrWzZdWzY0XSkKICAgICAvKiBUaGUgZm9sbG93aW5nIGlzIG9ubHkgYWxs b3dlZCBiZWNhdXNlIHRoaXMgZW5jb2RlcgogICAgICAqIGRvZXMgbm90IHVzZSBzbGljZSB0aHJl YWRpbmcuICovCiAgICAgV01WMkRlY0NvbnRleHQgKmNvbnN0IHcgPSAoV01WMkRlY0NvbnRleHQg KikgczsKKyAgICBNU01QNERlY0NvbnRleHQgKmNvbnN0IG1zID0gJnctPm1zOwogICAgIGludCBj YnAsIGNvZGUsIGksIHJldDsKICAgICB1aW50OF90ICpjb2RlZF92YWw7CiAKQEAgLTQ5OCw5ICs1 MDMsOSBAQCBzdGF0aWMgaW50IHdtdjJfZGVjb2RlX21iKE1wZWdFbmNDb250ZXh0ICpzLCBpbnQx Nl90IGJsb2NrWzZdWzY0XSkKIAogICAgICAgICBpZiAoY2JwKSB7CiAgICAgICAgICAgICBzLT5i ZHNwLmNsZWFyX2Jsb2NrcyhzLT5ibG9ja1swXSk7Ci0gICAgICAgICAgICBpZiAocy0+cGVyX21i X3JsX3RhYmxlKSB7Ci0gICAgICAgICAgICAgICAgcy0+cmxfdGFibGVfaW5kZXggICAgICAgID0g ZGVjb2RlMDEyKCZzLT5nYik7Ci0gICAgICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2lu ZGV4ID0gcy0+cmxfdGFibGVfaW5kZXg7CisgICAgICAgICAgICBpZiAobXMtPnBlcl9tYl9ybF90 YWJsZSkgeworICAgICAgICAgICAgICAgIG1zLT5ybF90YWJsZV9pbmRleCAgICAgICAgPSBkZWNv ZGUwMTIoJnMtPmdiKTsKKyAgICAgICAgICAgICAgICBtcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4 ID0gbXMtPnJsX3RhYmxlX2luZGV4OwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBpZiAo dy0+YWJ0X2ZsYWcgJiYgdy0+cGVyX21iX2FidCkgewpAQCAtNTM5LDE0ICs1NDQsMTUgQEAgc3Rh dGljIGludCB3bXYyX2RlY29kZV9tYihNcGVnRW5jQ29udGV4dCAqcywgaW50MTZfdCBibG9ja1s2 XVs2NF0pCiAgICAgICAgICAgICBmZl9kbG9nKHMtPmF2Y3R4LCAiJWQlZCAlZCAlZC8iLAogICAg ICAgICAgICAgICAgICAgICBzLT5hY19wcmVkLCBzLT5oMjYzX2FpY19kaXIsIHMtPm1iX3gsIHMt Pm1iX3kpOwogICAgICAgICB9Ci0gICAgICAgIGlmIChzLT5wZXJfbWJfcmxfdGFibGUgJiYgY2Jw KSB7Ci0gICAgICAgICAgICBzLT5ybF90YWJsZV9pbmRleCAgICAgICAgPSBkZWNvZGUwMTIoJnMt PmdiKTsKLSAgICAgICAgICAgIHMtPnJsX2Nocm9tYV90YWJsZV9pbmRleCA9IHMtPnJsX3RhYmxl X2luZGV4OworICAgICAgICBpZiAobXMtPnBlcl9tYl9ybF90YWJsZSAmJiBjYnApIHsKKyAgICAg ICAgICAgIG1zLT5ybF90YWJsZV9pbmRleCAgICAgICAgPSBkZWNvZGUwMTIoJnMtPmdiKTsKKyAg ICAgICAgICAgIG1zLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSBtcy0+cmxfdGFibGVfaW5kZXg7 CiAgICAgICAgIH0KIAogICAgICAgICBzLT5iZHNwLmNsZWFyX2Jsb2NrcyhzLT5ibG9ja1swXSk7 CiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCA2OyBpKyspIHsKLSAgICAgICAgICAgIGlmICgocmV0 ID0gZmZfbXNtcGVnNF9kZWNvZGVfYmxvY2socywgYmxvY2tbaV0sIGksIChjYnAgPj4gKDUgLSBp KSkgJiAxLCBOVUxMKSkgPCAwKSB7CisgICAgICAgICAgICByZXQgPSBmZl9tc21wZWc0X2RlY29k ZV9ibG9jayhtcywgYmxvY2tbaV0sIGksIChjYnAgPj4gKDUgLSBpKSkgJiAxLCBOVUxMKTsKKyAg ICAgICAgICAgIGlmIChyZXQgPCAwKSB7CiAgICAgICAgICAgICAgICAgYXZfbG9nKHMtPmF2Y3R4 LCBBVl9MT0dfRVJST1IsCiAgICAgICAgICAgICAgICAgICAgICAgICJcbmVycm9yIHdoaWxlIGRl Y29kaW5nIGludHJhIGJsb2NrOiAlZCB4ICVkICglZClcbiIsCiAgICAgICAgICAgICAgICAgICAg ICAgIHMtPm1iX3gsIHMtPm1iX3ksIGkpOwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy93bXYyZW5j LmMgYi9saWJhdmNvZGVjL3dtdjJlbmMuYwppbmRleCA2ZWRhMzhkMDVmLi44MWIwYWNlMDUzIDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL3dtdjJlbmMuYworKysgYi9saWJhdmNvZGVjL3dtdjJlbmMu YwpAQCAtNzUsNiArNzUsNyBAQCBzdGF0aWMgaW50IGVuY29kZV9leHRfaGVhZGVyKFdNVjJFbmND b250ZXh0ICp3KQogc3RhdGljIGludCB3bXYyX2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWlu RW5jQ29udGV4dCAqY29uc3QgbSkKIHsKICAgICBXTVYyRW5jQ29udGV4dCAqY29uc3QgdyA9IChX TVYyRW5jQ29udGV4dCAqKSBtOworICAgIE1TTVBFRzRFbmNDb250ZXh0ICpjb25zdCBtcyA9ICZ3 LT5tc21wZWc0OwogICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CiAKICAgICBw dXRfYml0cygmcy0+cGIsIDEsIHMtPnBpY3RfdHlwZSAtIDEpOwpAQCAtODIsOSArODMsOSBAQCBz dGF0aWMgaW50IHdtdjJfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpj b25zdCBtKQogICAgICAgICBwdXRfYml0cygmcy0+cGIsIDcsIDApOwogICAgIHB1dF9iaXRzKCZz LT5wYiwgNSwgcy0+cXNjYWxlKTsKIAotICAgIHMtPmRjX3RhYmxlX2luZGV4ICA9IDE7Ci0gICAg cy0+bXZfdGFibGVfaW5kZXggID0gMTsgLyogb25seSBpZiBQLWZyYW1lICovCi0gICAgcy0+cGVy X21iX3JsX3RhYmxlID0gMDsKKyAgICBtcy0+ZGNfdGFibGVfaW5kZXggID0gMTsKKyAgICBtcy0+ bXZfdGFibGVfaW5kZXggID0gMTsgLyogb25seSBpZiBQLWZyYW1lICovCisgICAgbXMtPnBlcl9t Yl9ybF90YWJsZSA9IDA7CiAgICAgcy0+bXNwZWwgICAgICAgICAgID0gMDsKICAgICB3LT5wZXJf bWJfYWJ0ICAgICAgPSAwOwogICAgIHctPmFidF90eXBlICAgICAgICA9IDA7CkBAIC05OCwxNCAr OTksMTQgQEAgc3RhdGljIGludCB3bXYyX2VuY29kZV9waWN0dXJlX2hlYWRlcihNUFZNYWluRW5j Q29udGV4dCAqY29uc3QgbSkKICAgICAgICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwgdy0+al90 eXBlKTsKIAogICAgICAgICBpZiAody0+cGVyX21iX3JsX2JpdCkKLSAgICAgICAgICAgIHB1dF9i aXRzKCZzLT5wYiwgMSwgcy0+cGVyX21iX3JsX3RhYmxlKTsKKyAgICAgICAgICAgIHB1dF9iaXRz KCZzLT5wYiwgMSwgbXMtPnBlcl9tYl9ybF90YWJsZSk7CiAKLSAgICAgICAgaWYgKCFzLT5wZXJf bWJfcmxfdGFibGUpIHsKLSAgICAgICAgICAgIGZmX21zbXBlZzRfY29kZTAxMigmcy0+cGIsIHMt PnJsX2Nocm9tYV90YWJsZV9pbmRleCk7Ci0gICAgICAgICAgICBmZl9tc21wZWc0X2NvZGUwMTIo JnMtPnBiLCBzLT5ybF90YWJsZV9pbmRleCk7CisgICAgICAgIGlmICghbXMtPnBlcl9tYl9ybF90 YWJsZSkgeworICAgICAgICAgICAgZmZfbXNtcGVnNF9jb2RlMDEyKCZzLT5wYiwgbXMtPnJsX2No cm9tYV90YWJsZV9pbmRleCk7CisgICAgICAgICAgICBmZl9tc21wZWc0X2NvZGUwMTIoJnMtPnBi LCBtcy0+cmxfdGFibGVfaW5kZXgpOwogICAgICAgICB9CiAKLSAgICAgICAgcHV0X2JpdHMoJnMt PnBiLCAxLCBzLT5kY190YWJsZV9pbmRleCk7CisgICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwg bXMtPmRjX3RhYmxlX2luZGV4KTsKIAogICAgICAgICBzLT5pbnRlcl9pbnRyYV9wcmVkID0gMDsK ICAgICB9IGVsc2UgewpAQCAtMTI2LDE5ICsxMjcsMTkgQEAgc3RhdGljIGludCB3bXYyX2VuY29k ZV9waWN0dXJlX2hlYWRlcihNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKICAgICAgICAgfQog CiAgICAgICAgIGlmICh3LT5wZXJfbWJfcmxfYml0KQotICAgICAgICAgICAgcHV0X2JpdHMoJnMt PnBiLCAxLCBzLT5wZXJfbWJfcmxfdGFibGUpOworICAgICAgICAgICAgcHV0X2JpdHMoJnMtPnBi LCAxLCBtcy0+cGVyX21iX3JsX3RhYmxlKTsKIAotICAgICAgICBpZiAoIXMtPnBlcl9tYl9ybF90 YWJsZSkgewotICAgICAgICAgICAgZmZfbXNtcGVnNF9jb2RlMDEyKCZzLT5wYiwgcy0+cmxfdGFi bGVfaW5kZXgpOwotICAgICAgICAgICAgcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gcy0+cmxf dGFibGVfaW5kZXg7CisgICAgICAgIGlmICghbXMtPnBlcl9tYl9ybF90YWJsZSkgeworICAgICAg ICAgICAgZmZfbXNtcGVnNF9jb2RlMDEyKCZzLT5wYiwgbXMtPnJsX3RhYmxlX2luZGV4KTsKKyAg ICAgICAgICAgIG1zLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSBtcy0+cmxfdGFibGVfaW5kZXg7 CiAgICAgICAgIH0KLSAgICAgICAgcHV0X2JpdHMoJnMtPnBiLCAxLCBzLT5kY190YWJsZV9pbmRl eCk7Ci0gICAgICAgIHB1dF9iaXRzKCZzLT5wYiwgMSwgcy0+bXZfdGFibGVfaW5kZXgpOworICAg ICAgICBwdXRfYml0cygmcy0+cGIsIDEsIG1zLT5kY190YWJsZV9pbmRleCk7CisgICAgICAgIHB1 dF9iaXRzKCZzLT5wYiwgMSwgbXMtPm12X3RhYmxlX2luZGV4KTsKIAogICAgICAgICBzLT5pbnRl cl9pbnRyYV9wcmVkID0gMDsgLy8gKHMtPndpZHRoICogcy0+aGVpZ2h0IDwgMzIwICogMjQwICYm IG0tPmJpdF9yYXRlIDw9IElJX0JJVFJBVEUpOwogICAgIH0KICAgICBzLT5lc2MzX2xldmVsX2xl bmd0aCA9IDA7Ci0gICAgcy0+ZXNjM19ydW5fbGVuZ3RoICAgPSAwOworICAgIG1zLT5lc2MzX3J1 bl9sZW5ndGggID0gMDsKIAogICAgIHJldHVybiAwOwogfQpAQCAtMTcwLDcgKzE3MSw3IEBAIHN0 YXRpYyB2b2lkIHdtdjJfZW5jb2RlX21iKE1wZWdFbmNDb250ZXh0ICpjb25zdCBzLCBpbnQxNl90 IGJsb2NrW11bNjRdLAogICAgICAgICBzLT5taXNjX2JpdHMgKz0gZ2V0X2JpdHNfZGlmZihzKTsK ICAgICAgICAgLyogbW90aW9uIHZlY3RvciAqLwogICAgICAgICBmZl9oMjYzX3ByZWRfbW90aW9u KHMsIDAsIDAsICZwcmVkX3gsICZwcmVkX3kpOwotICAgICAgICBmZl9tc21wZWc0X2VuY29kZV9t b3Rpb24ocywgbW90aW9uX3ggLSBwcmVkX3gsCisgICAgICAgIGZmX21zbXBlZzRfZW5jb2RlX21v dGlvbigmdy0+bXNtcGVnNCwgbW90aW9uX3ggLSBwcmVkX3gsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtb3Rpb25feSAtIHByZWRfeSk7CiAgICAgICAgIHMtPm12X2JpdHMgKz0g Z2V0X2JpdHNfZGlmZihzKTsKICAgICB9IGVsc2UgewotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0048-avcodec-mpegvideo-Move-allocating-encoder-buffers-to.patch" Content-Disposition: attachment; filename*0="0048-avcodec-mpegvideo-Move-allocating-encoder-buffers-to.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAwZmFhM2NmNDg3MDgxNzc2YTliNTc3YjBmZGZiMjBjNGQ5NDk0Y2E3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAyNSBPY3QgMjAyMiAxODoyNzoxNyArMDIwMApTdWJq ZWN0OiBbUEFUQ0ggNDgvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIGFsbG9jYXRpbmcgZW5j b2RlciBidWZmZXJzIHRvCiBtcGVndmlkZW9lbmMuYwoKZGN0X2Vycm9yX3N1bSBhbmQgbWUubWFw IGFyZSBhbGxvY2F0ZWQgcGVyIHNsaWNlLWNvbnRleHQKYW5kIHRoZXJlZm9yZSB0aGVpciBhbGxv Y2F0aW9uIGhhcyBub3QgYmVlbiBtb3ZlZCB0bwptcGVndmlkZW9lbmMuYyBpbiAwMTU0ZmI0M2Uz MjhiMTNkYTg5NDNlNjZiMzhkYzFiNWFiOTMxNWFmLgoKVGhpcyBjb21taXQgY2hhbmdlcyB0aGlz IGJ5IGFsbG9jYXRpbmcgdGhlbSBqb2ludGx5IGFuZAptb3Zpbmcgc2FpZCBhbGxvY2F0aW9ucyB0 byBtcGVndmlkZW9fZW5jLmMgbGlrZSB0aGUgb3RoZXIKZW5jb2Rlci1vbmx5IGJ1ZmZlcnMuClRo ZSBidWZmZXJzIGFyZSBzdWl0YWJseSBhbGlnbmVkIHRvIGVuc3VyZSB0aGF0IG5vIGZhbHNlCnNo YXJpbmcgb2NjdXJzLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFz LnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVndmlkZW8uYyAgICAg fCAxNyAtLS0tLS0tLS0tLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgNTQgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5j LmggIHwgIDMgKysrCiAzIGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMoKyksIDE3IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMgYi9saWJhdmNvZGVj L21wZWd2aWRlby5jCmluZGV4IGJjMzY3ZmJhMDcuLjgwNTVlNmMwZTIgMTAwNjQ0Ci0tLSBhL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uYwpAQCAtMzUx LDE3ICszNTEsNiBAQCBhdl9jb2xkIHZvaWQgZmZfbXB2X2lkY3RfaW5pdChNcGVnRW5jQ29udGV4 dCAqcykKIAogc3RhdGljIGF2X2NvbGQgaW50IGluaXRfZHVwbGljYXRlX2NvbnRleHQoTXBlZ0Vu Y0NvbnRleHQgKnMpCiB7Ci0gICAgaWYgKHMtPmVuY29kaW5nKSB7Ci0gICAgICAgIHMtPm1lLm1h cCA9IGF2X21hbGxvY3ooMiAqIE1FX01BUF9TSVpFICogc2l6ZW9mKCpzLT5tZS5tYXApKTsKLSAg ICAgICAgaWYgKCFzLT5tZS5tYXApCi0gICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0p OwotICAgICAgICBzLT5tZS5zY29yZV9tYXAgPSBzLT5tZS5tYXAgKyBNRV9NQVBfU0laRTsKLQot ICAgICAgICBpZiAocy0+bm9pc2VfcmVkdWN0aW9uKSB7Ci0gICAgICAgICAgICBpZiAoIUZGX0FM TE9DWl9UWVBFRF9BUlJBWShzLT5kY3RfZXJyb3Jfc3VtLCAgMikpCi0gICAgICAgICAgICAgICAg cmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKLSAgICAgICAgfQotICAgIH0KICAgICBpZiAoIUZGX0FM TE9DWl9UWVBFRF9BUlJBWShzLT5ibG9ja3MsICAxICsgcy0+ZW5jb2RpbmcpKQogICAgICAgICBy ZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAgIHMtPmJsb2NrID0gcy0+YmxvY2tzWzBdOwpAQCAt NDIwLDkgKzQwOSw2IEBAIHN0YXRpYyBhdl9jb2xkIHZvaWQgZnJlZV9kdXBsaWNhdGVfY29udGV4 dChNcGVnRW5jQ29udGV4dCAqcykKICAgICBzLT5zYy5vYm1jX3NjcmF0Y2hwYWQgPSBOVUxMOwog ICAgIHMtPnNjLmxpbmVzaXplID0gMDsKIAotICAgIGF2X2ZyZWVwKCZzLT5kY3RfZXJyb3Jfc3Vt KTsKLSAgICBhdl9mcmVlcCgmcy0+bWUubWFwKTsKLSAgICBzLT5tZS5zY29yZV9tYXAgPSBOVUxM OwogICAgIGF2X2ZyZWVwKCZzLT5ibG9ja3MpOwogICAgIGF2X2ZyZWVwKCZzLT5hY192YWxfYmFz ZSk7CiAgICAgcy0+YmxvY2sgPSBOVUxMOwpAQCAtNjQ2LDkgKzYzMiw2IEBAIHN0YXRpYyB2b2lk IGNsZWFyX2NvbnRleHQoTXBlZ0VuY0NvbnRleHQgKnMpCiAKICAgICBtZW1zZXQocy0+dGhyZWFk X2NvbnRleHQsIDAsIHNpemVvZihzLT50aHJlYWRfY29udGV4dCkpOwogCi0gICAgcy0+bWUubWFw ID0gTlVMTDsKLSAgICBzLT5tZS5zY29yZV9tYXAgPSBOVUxMOwotICAgIHMtPmRjdF9lcnJvcl9z dW0gPSBOVUxMOwogICAgIHMtPmJsb2NrID0gTlVMTDsKICAgICBzLT5ibG9ja3MgPSBOVUxMOwog ICAgIHMtPmFjX3ZhbF9iYXNlID0gTlVMTDsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggMTE2Yzk3NDA5OC4u ZjZiZDliZTU2YiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysrIGIv bGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTMzLDYgKzMzLDcgQEAKIAogI2luY2x1ZGUg ImNvbmZpZ19jb21wb25lbnRzLmgiCiAKKyNpbmNsdWRlIDxhc3NlcnQuaD4KICNpbmNsdWRlIDxz dGRpbnQuaD4KIAogI2luY2x1ZGUgImxpYmF2dXRpbC9lbW1zLmgiCkBAIC00MjAsNiArNDIxLDUz IEBAIHN0YXRpYyBhdl9jb2xkIGludCBpbml0X21hdHJpY2VzKE1QVk1haW5FbmNDb250ZXh0ICpj b25zdCBtLCBBVkNvZGVjQ29udGV4dCAqYXZjCiAgICAgcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBh dl9jb2xkIGludCBpbml0X2J1ZmZlcnMoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIEFWQ29k ZWNDb250ZXh0ICphdmN0eCkKK3sKKyAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgcyA9ICZtLT5z OworICAgIC8vIEFsaWduIHRoZSBmb2xsb3dpbmcgcGVyLXRocmVhZCBidWZmZXJzIHRvIGF2b2lk IGZhbHNlIHNoYXJpbmcuCisgICAgZW51bSB7CisjaWZuZGVmIF9NU0NfVkVSCisgICAgICAgIC8v LyBUaGUgbnVtYmVyIGlzIHN1cHBvc2VkIHRvIG1hdGNoL2V4Y2VlZCB0aGUgY2FjaGUtbGluZSBz aXplLgorICAgICAgICBBTElHTiA9IEZGTUFYKDEyOCwgX0FsaWdub2YobWF4X2FsaWduX3QpKSwK KyNlbHNlCisgICAgICAgIEFMSUdOID0gMTI4LAorI2VuZGlmCisgICAgICAgIE1FX01BUF9BTExP Q19TSVpFID0gRkZBTElHTigyICogTUVfTUFQX1NJWkUgKiBzaXplb2YoKnMtPm1lLm1hcCksIEFM SUdOKSwKKyAgICAgICAgRENUX0VSUk9SX1NJWkUgICAgPSBGRkFMSUdOKDIgKiBzaXplb2YoKnMt PmRjdF9lcnJvcl9zdW0pLCBBTElHTiksCisgICAgfTsKKyAgICBzdGF0aWNfYXNzZXJ0KEZGTUFY KE1FX01BUF9BTExPQ19TSVpFLCBEQ1RfRVJST1JfU0laRSkgKiBNQVhfVEhSRUFEUyArIEFMSUdO IC0gMSA8PSBTSVpFX01BWCwKKyAgICAgICAgICAgICAgICAgICJOZWVkIGNoZWNrcyBmb3IgcG90 ZW50aWFsIG92ZXJmbG93LiIpOworICAgIHVuc2lnbmVkIG5iX3NsaWNlcyA9IHMtPnNsaWNlX2Nv bnRleHRfY291bnQ7CisgICAgY2hhciAqZGN0X2Vycm9yID0gTlVMTCwgKm1lX21hcDsKKworICAg IGlmIChzLT5ub2lzZV9yZWR1Y3Rpb24pIHsKKyAgICAgICAgZGN0X2Vycm9yID0gYXZfbWFsbG9j eihBTElHTiAtIDEgKyBuYl9zbGljZXMgKiBEQ1RfRVJST1JfU0laRSk7CisgICAgICAgIGlmICgh ZGN0X2Vycm9yKQorICAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKKyAgICAgICAg bS0+ZGN0X2Vycm9yX3N1bV9iYXNlID0gZGN0X2Vycm9yOworICAgICAgICBkY3RfZXJyb3IgKz0g RkZBTElHTigodWludHB0cl90KWRjdF9lcnJvciwgQUxJR04pIC0gKHVpbnRwdHJfdClkY3RfZXJy b3I7CisgICAgfQorICAgIG1lX21hcCA9IGF2X21hbGxvY3ooQUxJR04gLSAxICsgbmJfc2xpY2Vz ICogTUVfTUFQX0FMTE9DX1NJWkUpOworICAgIGlmICghbWVfbWFwKQorICAgICAgICByZXR1cm4g QVZFUlJPUihFTk9NRU0pOworICAgIG0tPm1lX21hcF9iYXNlID0gbWVfbWFwOworICAgIG1lX21h cCArPSBGRkFMSUdOKCh1aW50cHRyX3QpbWVfbWFwLCBBTElHTikgLSAodWludHB0cl90KW1lX21h cDsKKworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBuYl9zbGljZXM7ICsraSkgeworICAg ICAgICBNcGVnRW5jQ29udGV4dCAqY29uc3QgczIgPSBzLT50aHJlYWRfY29udGV4dFtpXTsKKwor ICAgICAgICBpZiAoZGN0X2Vycm9yKSB7CisgICAgICAgICAgICBzMi0+ZGN0X2Vycm9yX3N1bSA9 ICh2b2lkKilkY3RfZXJyb3I7CisgICAgICAgICAgICBkY3RfZXJyb3IgICAgICAgICs9IERDVF9F UlJPUl9TSVpFOworICAgICAgICB9CisgICAgICAgIHMyLT5tZS5tYXAgICAgICAgPSAodWludDMy X3QqKW1lX21hcDsKKyAgICAgICAgczItPm1lLnNjb3JlX21hcCA9IHMyLT5tZS5tYXAgKyBNRV9N QVBfU0laRTsKKyAgICAgICAgbWVfbWFwICAgICAgICAgICs9IE1FX01BUF9BTExPQ19TSVpFOwor ICAgIH0KKworICAgIHJldHVybiAwOworfQorCiAvKiBpbml0IHZpZGVvIGVuY29kZXIgKi8KIGF2 X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7CkBA IC05MjMsNiArOTcxLDEwIEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVj Q29udGV4dCAqYXZjdHgpCiAgICAgaWYgKHJldCA8IDApCiAgICAgICAgIHJldHVybiByZXQ7CiAK KyAgICByZXQgPSBpbml0X2J1ZmZlcnMobSwgYXZjdHgpOworICAgIGlmIChyZXQgPCAwKQorICAg ICAgICByZXR1cm4gcmV0OworCiAgICAgLyogQWxsb2NhdGUgTVYgdGFibGVzOyB0aGUgTVYgYW5k IE1CIHRhYmxlcyB3aWxsIGJlIGNvcGllZAogICAgICAqIHRvIHNsaWNlIGNvbnRleHRzIGJ5IGZm X3VwZGF0ZV9kdXBsaWNhdGVfY29udGV4dCgpLiAgKi8KICAgICBtdl90YWJsZV9zaXplID0gKHMt Pm1iX2hlaWdodCArIDIpICogcy0+bWJfc3RyaWRlICsgMTsKQEAgLTEwNjcsNiArMTExOSw4IEBA IGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfZW5kKEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAg ICBhdl9mcmVlcCgmcy0+Yl9maWVsZF9tdl90YWJsZV9iYXNlKTsKICAgICBhdl9mcmVlcCgmcy0+ Yl9maWVsZF9zZWxlY3RfdGFibGVbMF1bMF0pOwogICAgIGF2X2ZyZWVwKCZzLT5wX2ZpZWxkX3Nl bGVjdF90YWJsZVswXSk7CisgICAgYXZfZnJlZXAoJm0tPmRjdF9lcnJvcl9zdW1fYmFzZSk7Cisg ICAgYXZfZnJlZXAoJm0tPm1lX21hcF9iYXNlKTsKIAogICAgIGF2X2ZyZWVwKCZzLT5tYl90eXBl KTsKICAgICBhdl9mcmVlcCgmcy0+bGFtYmRhX3RhYmxlKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IDU3Yjkx ZDE2OWEuLmRmZDg2ZDc2Y2MgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgK KysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtOTgsNiArOTgsOSBAQCB0eXBlZGVm IHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAKICAgICBpbnQ2NF90IG1iX3Zhcl9zdW07ICAg ICAgICAgICAgLy8vPCBzdW0gb2YgTUIgdmFyaWFuY2UgZm9yIGN1cnJlbnQgZnJhbWUKICAgICBp bnQ2NF90IG1jX21iX3Zhcl9zdW07ICAgICAgICAgLy8vPCBtb3Rpb24gY29tcGVuc2F0ZWQgTUIg dmFyaWFuY2UgZm9yIGN1cnJlbnQgZnJhbWUKKworICAgIGNoYXIgKm1lX21hcF9iYXNlOyAgICAg ICAgICAgICAvLy88IGJhY2tzIE1vdGlvbkVzdENvbnRleHQuKG1hcHxzY29yZV9tYXApCisgICAg Y2hhciAqZGN0X2Vycm9yX3N1bV9iYXNlOyAgICAgIC8vLzwgYmFja3MgZGN0X2Vycm9yX3N1bQog fSBNUFZNYWluRW5jQ29udGV4dDsKIAogc3RhdGljIGlubGluZSBjb25zdCBNUFZNYWluRW5jQ29u dGV4dCAqc2xpY2VfdG9fbWFpbmVuYyhjb25zdCBNcGVnRW5jQ29udGV4dCAqcykKLS0gCjIuNDUu MgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0049-avcodec-mpegvideo-Move-encoder-only-base-arrays-to-M.patch" Content-Disposition: attachment; filename*0="0049-avcodec-mpegvideo-Move-encoder-only-base-arrays-to-M.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAxYzBlYzllZDZhNzIzNGZlZmFiZGE0NDA4NmY4NWNhNGNhMmRiMzFkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAwOTowMjowNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNDkvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIGVuY29kZXItb25seSBi YXNlIGFycmF5cyB0bwogTVBWTWFpbkVuY0NvbnRleHQKCkFsc28gYWxsb2NhdGUgdGhlbSBqb2lu dGx5ICh0aGVyZWJ5IHJlZHVjaW5nIHRoZSBudW1iZXIgb2YgYmFzZQphcnJheXMgY29uc2lkZXJh Ymx5KSBhbmQgYWxyZWFkeSBzZXQgdGhlbSBvbiBhbGwgc2xpY2UgY29udGV4dHM7CmRvbid0IHJl bHkgb24gZmZfdXBkYXRlX2R1cGxpY2F0ZV9jb250ZXh0KCkuCgpTaWduZWQtb2ZmLWJ5OiBBbmRy ZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJh dmNvZGVjL21wZWd2aWRlby5oICAgICB8ICA5ICstLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2Vu Yy5jIHwgOTIgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGxpYmF2Y29k ZWMvbXBlZ3ZpZGVvZW5jLmggIHwgIDEgKwogMyBmaWxlcyBjaGFuZ2VkLCA0MyBpbnNlcnRpb25z KCspLCA1OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlby5o IGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCAzOWNhNGIzZDFhLi42MDkwNTI3ODZlIDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvLmgKQEAgLTIwNywxNCArMjA3LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQg ewogICAgIEgyNjNEU1BDb250ZXh0IGgyNjNkc3A7CiAgICAgaW50IGZfY29kZTsgICAgICAgICAg ICAgICAgIC8vLzwgZm9yd2FyZCBNViByZXNvbHV0aW9uCiAgICAgaW50IGJfY29kZTsgICAgICAg ICAgICAgICAgIC8vLzwgYmFja3dhcmQgTVYgcmVzb2x1dGlvbiBmb3IgQi1mcmFtZXMgKE1QRUct NCkKLSAgICBpbnQxNl90ICgqcF9tdl90YWJsZV9iYXNlKVsyXTsKLSAgICBpbnQxNl90ICgqYl9m b3J3X212X3RhYmxlX2Jhc2UpWzJdOwotICAgIGludDE2X3QgKCpiX2JhY2tfbXZfdGFibGVfYmFz ZSlbMl07Ci0gICAgaW50MTZfdCAoKmJfYmlkaXJfZm9yd19tdl90YWJsZV9iYXNlKVsyXTsKLSAg ICBpbnQxNl90ICgqYl9iaWRpcl9iYWNrX212X3RhYmxlX2Jhc2UpWzJdOwotICAgIGludDE2X3Qg KCpiX2RpcmVjdF9tdl90YWJsZV9iYXNlKVsyXTsKICAgICBpbnQxNl90ICgqcF9maWVsZF9tdl90 YWJsZV9iYXNlKVsyXTsKLSAgICBpbnQxNl90ICgqYl9maWVsZF9tdl90YWJsZV9iYXNlKVsyXTsK ICAgICBpbnQxNl90ICgqcF9tdl90YWJsZSlbMl07ICAgICAgICAgICAgLy8vPCBNViB0YWJsZSAo MU1WIHBlciBNQikgUC1mcmFtZSBlbmNvZGluZwogICAgIGludDE2X3QgKCpiX2ZvcndfbXZfdGFi bGUpWzJdOyAgICAgICAvLy88IE1WIHRhYmxlICgxTVYgcGVyIE1CKSBmb3J3YXJkIG1vZGUgQi1m cmFtZSBlbmNvZGluZwogICAgIGludDE2X3QgKCpiX2JhY2tfbXZfdGFibGUpWzJdOyAgICAgICAv Ly88IE1WIHRhYmxlICgxTVYgcGVyIE1CKSBiYWNrd2FyZCBtb2RlIEItZnJhbWUgZW5jb2RpbmcK QEAgLTIyNCw3ICsyMTcsNyBAQCB0eXBlZGVmIHN0cnVjdCBNcGVnRW5jQ29udGV4dCB7CiAgICAg aW50MTZfdCAoKnBfZmllbGRfbXZfdGFibGVbMl1bMl0pWzJdOyAgIC8vLzwgTVYgdGFibGUgKDJN ViBwZXIgTUIpIGludGVybGFjZWQgUC1mcmFtZSBlbmNvZGluZwogICAgIGludDE2X3QgKCpiX2Zp ZWxkX212X3RhYmxlWzJdWzJdWzJdKVsyXTsvLy88IE1WIHRhYmxlICg0TVYgcGVyIE1CKSBpbnRl cmxhY2VkIEItZnJhbWUgZW5jb2RpbmcKICAgICB1aW50OF90ICgqcF9maWVsZF9zZWxlY3RfdGFi bGVbMl0pOyAgLy8vPCBPbmx5IHRoZSBmaXJzdCBlbGVtZW50IGlzIGFsbG9jYXRlZAotICAgIHVp bnQ4X3QgKCpiX2ZpZWxkX3NlbGVjdF90YWJsZVsyXVsyXSk7IC8vLzwgT25seSB0aGUgZmlyc3Qg ZWxlbWVudCBpcyBhbGxvY2F0ZWQKKyAgICB1aW50OF90ICgqYl9maWVsZF9zZWxlY3RfdGFibGVb Ml1bMl0pOyAvLy88IGFsbG9jYXRlZCBqb2ludGx5IHdpdGggcF9maWVsZF9zZWxlY3RfdGFibGUK IAogICAgIC8qIFRoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBlbmNvZGVyLW9ubHkgKi8KICAgICB1 aW50MTZfdCAqbWJfdmFyOyAgICAgICAgICAgLy8vPCBUYWJsZSBmb3IgTUIgdmFyaWFuY2VzCmRp ZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jCmluZGV4IGY2YmQ5YmU1NmIuLjIzMzFiYmJiMDYgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCkBA IC00MzcsOCArNDM3LDEwIEBAIHN0YXRpYyBhdl9jb2xkIGludCBpbml0X2J1ZmZlcnMoTVBWTWFp bkVuY0NvbnRleHQgKmNvbnN0IG0sIEFWQ29kZWNDb250ZXh0ICphdmN0CiAgICAgfTsKICAgICBz dGF0aWNfYXNzZXJ0KEZGTUFYKE1FX01BUF9BTExPQ19TSVpFLCBEQ1RfRVJST1JfU0laRSkgKiBN QVhfVEhSRUFEUyArIEFMSUdOIC0gMSA8PSBTSVpFX01BWCwKICAgICAgICAgICAgICAgICAgICJO ZWVkIGNoZWNrcyBmb3IgcG90ZW50aWFsIG92ZXJmbG93LiIpOwotICAgIHVuc2lnbmVkIG5iX3Ns aWNlcyA9IHMtPnNsaWNlX2NvbnRleHRfY291bnQ7CisgICAgdW5zaWduZWQgbmJfc2xpY2VzID0g cy0+c2xpY2VfY29udGV4dF9jb3VudCwgbXZfdGFibGVfc2l6ZTsKICAgICBjaGFyICpkY3RfZXJy b3IgPSBOVUxMLCAqbWVfbWFwOworICAgIGludCBuYl9tdl90YWJsZXMgPSA2OworICAgIGludDE2 X3QgKCptdl90YWJsZSlbMl07CiAKICAgICBpZiAocy0+bm9pc2VfcmVkdWN0aW9uKSB7CiAgICAg ICAgIGRjdF9lcnJvciA9IGF2X21hbGxvY3ooQUxJR04gLSAxICsgbmJfc2xpY2VzICogRENUX0VS Uk9SX1NJWkUpOwpAQCAtNDUzLDggKzQ1NSwyMyBAQCBzdGF0aWMgYXZfY29sZCBpbnQgaW5pdF9i dWZmZXJzKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBBVkNvZGVjQ29udGV4dCAqYXZjdAog ICAgIG0tPm1lX21hcF9iYXNlID0gbWVfbWFwOwogICAgIG1lX21hcCArPSBGRkFMSUdOKCh1aW50 cHRyX3QpbWVfbWFwLCBBTElHTikgLSAodWludHB0cl90KW1lX21hcDsKIAorICAgIG12X3RhYmxl X3NpemUgPSAocy0+bWJfaGVpZ2h0ICsgMikgKiBzLT5tYl9zdHJpZGUgKyAxOworICAgIGlmIChz LT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHNCB8fAorICAgICAgICAocy0+YXZjdHgtPmZs YWdzICYgQVZfQ09ERUNfRkxBR19JTlRFUkxBQ0VEX01FKSkgeworICAgICAgICBuYl9tdl90YWJs ZXMgKz0gODsKKyAgICAgICAgaWYgKCFBTExPQ1pfQVJSQVlTKHMtPnBfZmllbGRfc2VsZWN0X3Rh YmxlWzBdLCAyICogKDIgKyA0KSwgbXZfdGFibGVfc2l6ZSkpCisgICAgICAgICAgICByZXR1cm4g QVZFUlJPUihFTk9NRU0pOworICAgIH0KKworICAgIG12X3RhYmxlID0gYXZfY2FsbG9jKG12X3Rh YmxlX3NpemUsIG5iX212X3RhYmxlcyAqIHNpemVvZigqbXZfdGFibGUpKTsKKyAgICBpZiAoIW12 X3RhYmxlKQorICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOworICAgIG0tPm12X3RhYmxl X2Jhc2UgPSBtdl90YWJsZTsKKyAgICBtdl90YWJsZSArPSBzLT5tYl9zdHJpZGUgKyAxOworCiAg ICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG5iX3NsaWNlczsgKytpKSB7CiAgICAgICAgIE1w ZWdFbmNDb250ZXh0ICpjb25zdCBzMiA9IHMtPnRocmVhZF9jb250ZXh0W2ldOworICAgICAgICBp bnQxNl90ICgqdG1wX212X3RhYmxlKVsyXSA9IG12X3RhYmxlOwogCiAgICAgICAgIGlmIChkY3Rf ZXJyb3IpIHsKICAgICAgICAgICAgIHMyLT5kY3RfZXJyb3Jfc3VtID0gKHZvaWQqKWRjdF9lcnJv cjsKQEAgLTQ2Myw2ICs0ODAsMjcgQEAgc3RhdGljIGF2X2NvbGQgaW50IGluaXRfYnVmZmVycyhN UFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgQVZDb2RlY0NvbnRleHQgKmF2Y3QKICAgICAgICAg czItPm1lLm1hcCAgICAgICA9ICh1aW50MzJfdCopbWVfbWFwOwogICAgICAgICBzMi0+bWUuc2Nv cmVfbWFwID0gczItPm1lLm1hcCArIE1FX01BUF9TSVpFOwogICAgICAgICBtZV9tYXAgICAgICAg ICAgKz0gTUVfTUFQX0FMTE9DX1NJWkU7CisKKyAgICAgICAgczItPnBfbXZfdGFibGUgICAgICAg ICAgICA9IHRtcF9tdl90YWJsZTsKKyAgICAgICAgczItPmJfZm9yd19tdl90YWJsZSAgICAgICA9 IHRtcF9tdl90YWJsZSArPSBtdl90YWJsZV9zaXplOworICAgICAgICBzMi0+Yl9iYWNrX212X3Rh YmxlICAgICAgID0gdG1wX212X3RhYmxlICs9IG12X3RhYmxlX3NpemU7CisgICAgICAgIHMyLT5i X2JpZGlyX2ZvcndfbXZfdGFibGUgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6ZTsKKyAg ICAgICAgczItPmJfYmlkaXJfYmFja19tdl90YWJsZSA9IHRtcF9tdl90YWJsZSArPSBtdl90YWJs ZV9zaXplOworICAgICAgICBzMi0+Yl9kaXJlY3RfbXZfdGFibGUgICAgID0gdG1wX212X3RhYmxl ICs9IG12X3RhYmxlX3NpemU7CisKKyAgICAgICAgaWYgKHMtPnBfZmllbGRfc2VsZWN0X3RhYmxl WzBdKSB7IC8vIE1QRUctNCBvciBJTlRFUkxBQ0VEX01FIGFib3ZlCisgICAgICAgICAgICB1aW50 OF90ICpmaWVsZF9zZWxlY3QgPSBzLT5wX2ZpZWxkX3NlbGVjdF90YWJsZVswXTsKKyAgICAgICAg ICAgIHMyLT5wX2ZpZWxkX3NlbGVjdF90YWJsZVswXSA9IGZpZWxkX3NlbGVjdDsKKyAgICAgICAg ICAgIHMyLT5wX2ZpZWxkX3NlbGVjdF90YWJsZVsxXSA9IGZpZWxkX3NlbGVjdCArPSAyICogbXZf dGFibGVfc2l6ZTsKKworICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCAyOyBqKyspIHsK KyAgICAgICAgICAgICAgICBmb3IgKGludCBrID0gMDsgayA8IDI7IGsrKykgeworICAgICAgICAg ICAgICAgICAgICBmb3IgKGludCBsID0gMDsgbCA8IDI7IGwrKykKKyAgICAgICAgICAgICAgICAg ICAgICAgIHMyLT5iX2ZpZWxkX212X3RhYmxlW2pdW2tdW2xdID0gdG1wX212X3RhYmxlICs9IG12 X3RhYmxlX3NpemU7CisgICAgICAgICAgICAgICAgICAgIHMyLT5iX2ZpZWxkX3NlbGVjdF90YWJs ZVtqXVtrXSA9IGZpZWxkX3NlbGVjdCArPSAyICogbXZfdGFibGVfc2l6ZTsKKyAgICAgICAgICAg ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gMDsK QEAgLTQ3NSw3ICs1MTMsNyBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2Rl Y0NvbnRleHQgKmF2Y3R4KQogICAgIE1wZWdFbmNDb250ZXh0ICAgICpjb25zdCBzID0gJm0tPnM7 CiAgICAgQVZDUEJQcm9wZXJ0aWVzICpjcGJfcHJvcHM7CiAgICAgaW50IGksIHJldDsKLSAgICBp bnQgbWJfYXJyYXlfc2l6ZSwgbXZfdGFibGVfc2l6ZTsKKyAgICBpbnQgbWJfYXJyYXlfc2l6ZTsK IAogICAgIG1wdl9lbmNvZGVfZGVmYXVsdHMobSk7CiAKQEAgLTk3NSwyMyArMTAxMyw2IEBAIGF2 X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAg aWYgKHJldCA8IDApCiAgICAgICAgIHJldHVybiByZXQ7CiAKLSAgICAvKiBBbGxvY2F0ZSBNViB0 YWJsZXM7IHRoZSBNViBhbmQgTUIgdGFibGVzIHdpbGwgYmUgY29waWVkCi0gICAgICogdG8gc2xp Y2UgY29udGV4dHMgYnkgZmZfdXBkYXRlX2R1cGxpY2F0ZV9jb250ZXh0KCkuICAqLwotICAgIG12 X3RhYmxlX3NpemUgPSAocy0+bWJfaGVpZ2h0ICsgMikgKiBzLT5tYl9zdHJpZGUgKyAxOwotICAg IGlmICghRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPnBfbXZfdGFibGVfYmFzZSwgICAgICAgICAg ICBtdl90YWJsZV9zaXplKSB8fAotICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPmJf Zm9yd19tdl90YWJsZV9iYXNlLCAgICAgICBtdl90YWJsZV9zaXplKSB8fAotICAgICAgICAhRkZf QUxMT0NaX1RZUEVEX0FSUkFZKHMtPmJfYmFja19tdl90YWJsZV9iYXNlLCAgICAgICBtdl90YWJs ZV9zaXplKSB8fAotICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPmJfYmlkaXJfZm9y d19tdl90YWJsZV9iYXNlLCBtdl90YWJsZV9zaXplKSB8fAotICAgICAgICAhRkZfQUxMT0NaX1RZ UEVEX0FSUkFZKHMtPmJfYmlkaXJfYmFja19tdl90YWJsZV9iYXNlLCBtdl90YWJsZV9zaXplKSB8 fAotICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPmJfZGlyZWN0X212X3RhYmxlX2Jh c2UsICAgICBtdl90YWJsZV9zaXplKSkKLSAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsK LSAgICBzLT5wX212X3RhYmxlICAgICAgICAgICAgPSBzLT5wX212X3RhYmxlX2Jhc2UgKyBzLT5t Yl9zdHJpZGUgKyAxOwotICAgIHMtPmJfZm9yd19tdl90YWJsZSAgICAgICA9IHMtPmJfZm9yd19t dl90YWJsZV9iYXNlICsgcy0+bWJfc3RyaWRlICsgMTsKLSAgICBzLT5iX2JhY2tfbXZfdGFibGUg ICAgICAgPSBzLT5iX2JhY2tfbXZfdGFibGVfYmFzZSArIHMtPm1iX3N0cmlkZSArIDE7Ci0gICAg cy0+Yl9iaWRpcl9mb3J3X212X3RhYmxlID0gcy0+Yl9iaWRpcl9mb3J3X212X3RhYmxlX2Jhc2Ug KyBzLT5tYl9zdHJpZGUgKyAxOwotICAgIHMtPmJfYmlkaXJfYmFja19tdl90YWJsZSA9IHMtPmJf YmlkaXJfYmFja19tdl90YWJsZV9iYXNlICsgcy0+bWJfc3RyaWRlICsgMTsKLSAgICBzLT5iX2Rp cmVjdF9tdl90YWJsZSAgICAgPSBzLT5iX2RpcmVjdF9tdl90YWJsZV9iYXNlICsgcy0+bWJfc3Ry aWRlICsgMTsKLQogICAgIC8qIEFsbG9jYXRlIE1CIHR5cGUgdGFibGUgKi8KICAgICBtYl9hcnJh eV9zaXplID0gcy0+bWJfc3RyaWRlICogcy0+bWJfaGVpZ2h0OwogICAgIGlmICghRkZfQUxMT0Na X1RZUEVEX0FSUkFZKHMtPm1iX3R5cGUsICAgICAgbWJfYXJyYXlfc2l6ZSkgfHwKQEAgLTEwMDEs MzAgKzEwMjIsNiBAQCBhdl9jb2xkIGludCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRl eHQgKmF2Y3R4KQogICAgICAgICAhKHMtPm1iX21lYW4gPSBhdl9tYWxsb2N6KG1iX2FycmF5X3Np emUpKSkKICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKIAotICAgIGlmIChzLT5jb2Rl Y19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHNCB8fAotICAgICAgICAocy0+YXZjdHgtPmZsYWdzICYg QVZfQ09ERUNfRkxBR19JTlRFUkxBQ0VEX01FKSkgewotICAgICAgICBpbnQxNl90ICgqdG1wMSlb Ml07Ci0gICAgICAgIHVpbnQ4X3QgKnRtcDI7Ci0gICAgICAgIGlmICghKHRtcDEgPSBBTExPQ1pf QVJSQVlTKHMtPmJfZmllbGRfbXZfdGFibGVfYmFzZSwgOCwgbXZfdGFibGVfc2l6ZSkpIHx8Ci0g ICAgICAgICAgICAhKHRtcDIgPSBBTExPQ1pfQVJSQVlTKHMtPmJfZmllbGRfc2VsZWN0X3RhYmxl WzBdWzBdLCAyICogNCwgbXZfdGFibGVfc2l6ZSkpIHx8Ci0gICAgICAgICAgICAhQUxMT0NaX0FS UkFZUyhzLT5wX2ZpZWxkX3NlbGVjdF90YWJsZVswXSwgMiAqIDIsIG12X3RhYmxlX3NpemUpKQot ICAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKLQotICAgICAgICBzLT5wX2ZpZWxk X3NlbGVjdF90YWJsZVsxXSA9IHMtPnBfZmllbGRfc2VsZWN0X3RhYmxlWzBdICsgMiAqIG12X3Rh YmxlX3NpemU7Ci0gICAgICAgIHRtcDEgKz0gcy0+bWJfc3RyaWRlICsgMTsKLQotICAgICAgICBm b3IgKGludCBpID0gMDsgaSA8IDI7IGkrKykgewotICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7 IGogPCAyOyBqKyspIHsKLSAgICAgICAgICAgICAgICBmb3IgKGludCBrID0gMDsgayA8IDI7IGsr KykgewotICAgICAgICAgICAgICAgICAgICBzLT5iX2ZpZWxkX212X3RhYmxlW2ldW2pdW2tdID0g dG1wMTsKLSAgICAgICAgICAgICAgICAgICAgdG1wMSArPSBtdl90YWJsZV9zaXplOwotICAgICAg ICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzLT5iX2ZpZWxkX3NlbGVjdF90YWJsZVtpXVtq XSA9IHRtcDI7Ci0gICAgICAgICAgICAgICAgdG1wMiArPSAyICogbXZfdGFibGVfc2l6ZTsKLSAg ICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQogICAgIGlmIChzLT5ub2lzZV9yZWR1Y3Rp b24pIHsKICAgICAgICAgaWYgKCFGRl9BTExPQ1pfVFlQRURfQVJSQVkocy0+ZGN0X29mZnNldCwg MikpCiAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwpAQCAtMTExMCwxNCArMTEw Nyw3IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfZW5kKEFWQ29kZWNDb250ZXh0ICphdmN0 eCkKIAogICAgIGF2X2ZyZWVwKCZhdmN0eC0+c3RhdHNfb3V0KTsKIAotICAgIGF2X2ZyZWVwKCZz LT5wX212X3RhYmxlX2Jhc2UpOwotICAgIGF2X2ZyZWVwKCZzLT5iX2ZvcndfbXZfdGFibGVfYmFz ZSk7Ci0gICAgYXZfZnJlZXAoJnMtPmJfYmFja19tdl90YWJsZV9iYXNlKTsKLSAgICBhdl9mcmVl cCgmcy0+Yl9iaWRpcl9mb3J3X212X3RhYmxlX2Jhc2UpOwotICAgIGF2X2ZyZWVwKCZzLT5iX2Jp ZGlyX2JhY2tfbXZfdGFibGVfYmFzZSk7Ci0gICAgYXZfZnJlZXAoJnMtPmJfZGlyZWN0X212X3Rh YmxlX2Jhc2UpOwotICAgIGF2X2ZyZWVwKCZzLT5iX2ZpZWxkX212X3RhYmxlX2Jhc2UpOwotICAg IGF2X2ZyZWVwKCZzLT5iX2ZpZWxkX3NlbGVjdF90YWJsZVswXVswXSk7CisgICAgYXZfZnJlZXAo Jm0tPm12X3RhYmxlX2Jhc2UpOwogICAgIGF2X2ZyZWVwKCZzLT5wX2ZpZWxkX3NlbGVjdF90YWJs ZVswXSk7CiAgICAgYXZfZnJlZXAoJm0tPmRjdF9lcnJvcl9zdW1fYmFzZSk7CiAgICAgYXZfZnJl ZXAoJm0tPm1lX21hcF9iYXNlKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5j LmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IGRmZDg2ZDc2Y2MuLjYwOTdlYTdh OWMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIvbGliYXZjb2Rl Yy9tcGVndmlkZW9lbmMuaApAQCAtMTAxLDYgKzEwMSw3IEBAIHR5cGVkZWYgc3RydWN0IE1QVk1h aW5FbmNDb250ZXh0IHsKIAogICAgIGNoYXIgKm1lX21hcF9iYXNlOyAgICAgICAgICAgICAvLy88 IGJhY2tzIE1vdGlvbkVzdENvbnRleHQuKG1hcHxzY29yZV9tYXApCiAgICAgY2hhciAqZGN0X2Vy cm9yX3N1bV9iYXNlOyAgICAgIC8vLzwgYmFja3MgZGN0X2Vycm9yX3N1bQorICAgIGludDE2X3Qg KCptdl90YWJsZV9iYXNlKVsyXTsKIH0gTVBWTWFpbkVuY0NvbnRleHQ7CiAKIHN0YXRpYyBpbmxp bmUgY29uc3QgTVBWTWFpbkVuY0NvbnRleHQgKnNsaWNlX3RvX21haW5lbmMoY29uc3QgTXBlZ0Vu Y0NvbnRleHQgKnMpCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0050-avcodec-mpegvideo_enc-Don-t-allocate-B-frame-bufs-wi.patch" Content-Disposition: attachment; filename*0="0050-avcodec-mpegvideo_enc-Don-t-allocate-B-frame-bufs-wi.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmYWY2MmZjOGZiN2M1YTM0NjI2NTU4NzIyNzRiNGNkNjZhNzU1ZDliIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAwOToxODo0MSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTAvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvX2VuYzogRG9uJ3QgYWxsb2NhdGUg Qi1mcmFtZSBidWZzCiB3aXRob3V0IEIgZnJhbWVzCgooQ2hlY2tpbmcgaW4gdGhlIHNhbWUgd2F5 IGZvciBpbnRyYV9vbmx5IGlzIG5vdCBzdHJhaWdodGZvcndhcmQsCmJlY2F1c2UgYXQgbGVhc3Qg cF9tdl90YWJsZSBpcyB3cml0dGVuIHRvIGV2ZW4gaW4gaW50cmFfb25seQptb2RlLikKClNpZ25l ZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2su Y29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgMTAgKysrKysrKy0tLQogMSBm aWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5j CmluZGV4IDIzMzFiYmJiMDYuLjY4MGNlN2QxNTMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBl Z3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCkBAIC00MzksNyAr NDM5LDcgQEAgc3RhdGljIGF2X2NvbGQgaW50IGluaXRfYnVmZmVycyhNUFZNYWluRW5jQ29udGV4 dCAqY29uc3QgbSwgQVZDb2RlY0NvbnRleHQgKmF2Y3QKICAgICAgICAgICAgICAgICAgICJOZWVk IGNoZWNrcyBmb3IgcG90ZW50aWFsIG92ZXJmbG93LiIpOwogICAgIHVuc2lnbmVkIG5iX3NsaWNl cyA9IHMtPnNsaWNlX2NvbnRleHRfY291bnQsIG12X3RhYmxlX3NpemU7CiAgICAgY2hhciAqZGN0 X2Vycm9yID0gTlVMTCwgKm1lX21hcDsKLSAgICBpbnQgbmJfbXZfdGFibGVzID0gNjsKKyAgICBp bnQgaGFzX2JfZnJhbWVzID0gISFtLT5tYXhfYl9mcmFtZXMsIG5iX212X3RhYmxlcyA9IDEgKyA1 ICogaGFzX2JfZnJhbWVzOwogICAgIGludDE2X3QgKCptdl90YWJsZSlbMl07CiAKICAgICBpZiAo cy0+bm9pc2VfcmVkdWN0aW9uKSB7CkBAIC00NTgsOCArNDU4LDggQEAgc3RhdGljIGF2X2NvbGQg aW50IGluaXRfYnVmZmVycyhNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgQVZDb2RlY0NvbnRl eHQgKmF2Y3QKICAgICBtdl90YWJsZV9zaXplID0gKHMtPm1iX2hlaWdodCArIDIpICogcy0+bWJf c3RyaWRlICsgMTsKICAgICBpZiAocy0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfTVBFRzQgfHwK ICAgICAgICAgKHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfSU5URVJMQUNFRF9NRSkp IHsKLSAgICAgICAgbmJfbXZfdGFibGVzICs9IDg7Ci0gICAgICAgIGlmICghQUxMT0NaX0FSUkFZ UyhzLT5wX2ZpZWxkX3NlbGVjdF90YWJsZVswXSwgMiAqICgyICsgNCksIG12X3RhYmxlX3NpemUp KQorICAgICAgICBuYl9tdl90YWJsZXMgKz0gOCAqIGhhc19iX2ZyYW1lczsKKyAgICAgICAgaWYg KCFBTExPQ1pfQVJSQVlTKHMtPnBfZmllbGRfc2VsZWN0X3RhYmxlWzBdLCAyICogKDIgKyA0ICog aGFzX2JfZnJhbWVzKSwgbXZfdGFibGVfc2l6ZSkpCiAgICAgICAgICAgICByZXR1cm4gQVZFUlJP UihFTk9NRU0pOwogICAgIH0KIApAQCAtNDgyLDE3ICs0ODIsMjAgQEAgc3RhdGljIGF2X2NvbGQg aW50IGluaXRfYnVmZmVycyhNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgQVZDb2RlY0NvbnRl eHQgKmF2Y3QKICAgICAgICAgbWVfbWFwICAgICAgICAgICs9IE1FX01BUF9BTExPQ19TSVpFOwog CiAgICAgICAgIHMyLT5wX212X3RhYmxlICAgICAgICAgICAgPSB0bXBfbXZfdGFibGU7CisgICAg ICAgIGlmIChoYXNfYl9mcmFtZXMpIHsKICAgICAgICAgczItPmJfZm9yd19tdl90YWJsZSAgICAg ICA9IHRtcF9tdl90YWJsZSArPSBtdl90YWJsZV9zaXplOwogICAgICAgICBzMi0+Yl9iYWNrX212 X3RhYmxlICAgICAgID0gdG1wX212X3RhYmxlICs9IG12X3RhYmxlX3NpemU7CiAgICAgICAgIHMy LT5iX2JpZGlyX2ZvcndfbXZfdGFibGUgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6ZTsK ICAgICAgICAgczItPmJfYmlkaXJfYmFja19tdl90YWJsZSA9IHRtcF9tdl90YWJsZSArPSBtdl90 YWJsZV9zaXplOwogICAgICAgICBzMi0+Yl9kaXJlY3RfbXZfdGFibGUgICAgID0gdG1wX212X3Rh YmxlICs9IG12X3RhYmxlX3NpemU7CisgICAgICAgIH0KIAogICAgICAgICBpZiAocy0+cF9maWVs ZF9zZWxlY3RfdGFibGVbMF0pIHsgLy8gTVBFRy00IG9yIElOVEVSTEFDRURfTUUgYWJvdmUKICAg ICAgICAgICAgIHVpbnQ4X3QgKmZpZWxkX3NlbGVjdCA9IHMtPnBfZmllbGRfc2VsZWN0X3RhYmxl WzBdOwogICAgICAgICAgICAgczItPnBfZmllbGRfc2VsZWN0X3RhYmxlWzBdID0gZmllbGRfc2Vs ZWN0OwogICAgICAgICAgICAgczItPnBfZmllbGRfc2VsZWN0X3RhYmxlWzFdID0gZmllbGRfc2Vs ZWN0ICs9IDIgKiBtdl90YWJsZV9zaXplOwogCisgICAgICAgICAgICBpZiAoaGFzX2JfZnJhbWVz KSB7CiAgICAgICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IDI7IGorKykgewogICAgICAgICAg ICAgICAgIGZvciAoaW50IGsgPSAwOyBrIDwgMjsgaysrKSB7CiAgICAgICAgICAgICAgICAgICAg IGZvciAoaW50IGwgPSAwOyBsIDwgMjsgbCsrKQpAQCAtNTAwLDYgKzUwMyw3IEBAIHN0YXRpYyBh dl9jb2xkIGludCBpbml0X2J1ZmZlcnMoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIEFWQ29k ZWNDb250ZXh0ICphdmN0CiAgICAgICAgICAgICAgICAgICAgIHMyLT5iX2ZpZWxkX3NlbGVjdF90 YWJsZVtqXVtrXSA9IGZpZWxkX3NlbGVjdCArPSAyICogbXZfdGFibGVfc2l6ZTsKICAgICAgICAg ICAgICAgICB9CiAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9 CiAKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0051-avcodec-mpegvideo_enc-Reindent-after-the-previous-co.patch" Content-Disposition: attachment; filename*0="0051-avcodec-mpegvideo_enc-Reindent-after-the-previous-co.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBjN2U3MDc2ZWZiZDRjYzEyMWNlNTVhNjMxNmNkNDAxNmU2Y2ZiZmY5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAwOTozOTozNyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTEvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvX2VuYzogUmVpbmRlbnQgYWZ0ZXIg dGhlIHByZXZpb3VzCiBjb21taXQKClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8 YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVv X2VuYy5jIHwgMjIgKysrKysrKysrKystLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDExIGlu c2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBl Z3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggNjgwY2U3ZDE1 My4uODVkNmIxZmFmZiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysr IGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTQ4MywxMSArNDgzLDExIEBAIHN0YXRp YyBhdl9jb2xkIGludCBpbml0X2J1ZmZlcnMoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIEFW Q29kZWNDb250ZXh0ICphdmN0CiAKICAgICAgICAgczItPnBfbXZfdGFibGUgICAgICAgICAgICA9 IHRtcF9tdl90YWJsZTsKICAgICAgICAgaWYgKGhhc19iX2ZyYW1lcykgewotICAgICAgICBzMi0+ Yl9mb3J3X212X3RhYmxlICAgICAgID0gdG1wX212X3RhYmxlICs9IG12X3RhYmxlX3NpemU7Ci0g ICAgICAgIHMyLT5iX2JhY2tfbXZfdGFibGUgICAgICAgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFi bGVfc2l6ZTsKLSAgICAgICAgczItPmJfYmlkaXJfZm9yd19tdl90YWJsZSA9IHRtcF9tdl90YWJs ZSArPSBtdl90YWJsZV9zaXplOwotICAgICAgICBzMi0+Yl9iaWRpcl9iYWNrX212X3RhYmxlID0g dG1wX212X3RhYmxlICs9IG12X3RhYmxlX3NpemU7Ci0gICAgICAgIHMyLT5iX2RpcmVjdF9tdl90 YWJsZSAgICAgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6ZTsKKyAgICAgICAgICAgIHMy LT5iX2ZvcndfbXZfdGFibGUgICAgICAgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6ZTsK KyAgICAgICAgICAgIHMyLT5iX2JhY2tfbXZfdGFibGUgICAgICAgPSB0bXBfbXZfdGFibGUgKz0g bXZfdGFibGVfc2l6ZTsKKyAgICAgICAgICAgIHMyLT5iX2JpZGlyX2ZvcndfbXZfdGFibGUgPSB0 bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6ZTsKKyAgICAgICAgICAgIHMyLT5iX2JpZGlyX2Jh Y2tfbXZfdGFibGUgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6ZTsKKyAgICAgICAgICAg IHMyLT5iX2RpcmVjdF9tdl90YWJsZSAgICAgPSB0bXBfbXZfdGFibGUgKz0gbXZfdGFibGVfc2l6 ZTsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChzLT5wX2ZpZWxkX3NlbGVjdF90YWJsZVswXSkg eyAvLyBNUEVHLTQgb3IgSU5URVJMQUNFRF9NRSBhYm92ZQpAQCAtNDk2LDE0ICs0OTYsMTQgQEAg c3RhdGljIGF2X2NvbGQgaW50IGluaXRfYnVmZmVycyhNUFZNYWluRW5jQ29udGV4dCAqY29uc3Qg bSwgQVZDb2RlY0NvbnRleHQgKmF2Y3QKICAgICAgICAgICAgIHMyLT5wX2ZpZWxkX3NlbGVjdF90 YWJsZVsxXSA9IGZpZWxkX3NlbGVjdCArPSAyICogbXZfdGFibGVfc2l6ZTsKIAogICAgICAgICAg ICAgaWYgKGhhc19iX2ZyYW1lcykgewotICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCAy OyBqKyspIHsKLSAgICAgICAgICAgICAgICBmb3IgKGludCBrID0gMDsgayA8IDI7IGsrKykgewot ICAgICAgICAgICAgICAgICAgICBmb3IgKGludCBsID0gMDsgbCA8IDI7IGwrKykKLSAgICAgICAg ICAgICAgICAgICAgICAgIHMyLT5iX2ZpZWxkX212X3RhYmxlW2pdW2tdW2xdID0gdG1wX212X3Rh YmxlICs9IG12X3RhYmxlX3NpemU7Ci0gICAgICAgICAgICAgICAgICAgIHMyLT5iX2ZpZWxkX3Nl bGVjdF90YWJsZVtqXVtrXSA9IGZpZWxkX3NlbGVjdCArPSAyICogbXZfdGFibGVfc2l6ZTsKKyAg ICAgICAgICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IDI7IGorKykgeworICAgICAgICAgICAg ICAgICAgICBmb3IgKGludCBrID0gMDsgayA8IDI7IGsrKykgeworICAgICAgICAgICAgICAgICAg ICAgICAgZm9yIChpbnQgbCA9IDA7IGwgPCAyOyBsKyspCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgczItPmJfZmllbGRfbXZfdGFibGVbal1ba11bbF0gPSB0bXBfbXZfdGFibGUgKz0gbXZf dGFibGVfc2l6ZTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHMyLT5iX2ZpZWxkX3NlbGVjdF90 YWJsZVtqXVtrXSA9IGZpZWxkX3NlbGVjdCArPSAyICogbXZfdGFibGVfc2l6ZTsKKyAgICAgICAg ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAg ICAgIH0KICAgICAgICAgfQogICAgIH0KIAotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0052-avcodec-mpegvideo_enc-Move-allocating-remaining-buff.patch" Content-Disposition: attachment; filename*0="0052-avcodec-mpegvideo_enc-Move-allocating-remaining-buff.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAwZjk3MzIyYWI5NjZkMTI2NWU0Y2Y3ZTA3YWRlNjhjM2JmNzNlYmI5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAxMDoyMTozMCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTIvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvX2VuYzogTW92ZSBhbGxvY2F0aW5n IHJlbWFpbmluZwogYnVmZmVycyB0byBpbml0X2J1ZmZlcnMKCkFsc28gYWxsb2NhdGUgbWJfdHlw ZSwgbWNfbWJfdmFyLCBtYl92YXIgYW5kIG1iX21lYW4gam9pbnRseQp3aGlsZSBqdXN0IGF0IGl0 LgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFyZHRA b3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgfCAzOCArKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE5IGluc2Vy dGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3Zp ZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggODVkNmIxZmFmZi4u MGMyZWQyZTkzMSAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysrIGIv bGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTQzNywxMiArNDM3LDE0IEBAIHN0YXRpYyBh dl9jb2xkIGludCBpbml0X2J1ZmZlcnMoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIEFWQ29k ZWNDb250ZXh0ICphdmN0CiAgICAgfTsKICAgICBzdGF0aWNfYXNzZXJ0KEZGTUFYKE1FX01BUF9B TExPQ19TSVpFLCBEQ1RfRVJST1JfU0laRSkgKiBNQVhfVEhSRUFEUyArIEFMSUdOIC0gMSA8PSBT SVpFX01BWCwKICAgICAgICAgICAgICAgICAgICJOZWVkIGNoZWNrcyBmb3IgcG90ZW50aWFsIG92 ZXJmbG93LiIpOwotICAgIHVuc2lnbmVkIG5iX3NsaWNlcyA9IHMtPnNsaWNlX2NvbnRleHRfY291 bnQsIG12X3RhYmxlX3NpemU7CisgICAgdW5zaWduZWQgbmJfc2xpY2VzID0gcy0+c2xpY2VfY29u dGV4dF9jb3VudCwgbXZfdGFibGVfc2l6ZSwgbWJfYXJyYXlfc2l6ZTsKICAgICBjaGFyICpkY3Rf ZXJyb3IgPSBOVUxMLCAqbWVfbWFwOwogICAgIGludCBoYXNfYl9mcmFtZXMgPSAhIW0tPm1heF9i X2ZyYW1lcywgbmJfbXZfdGFibGVzID0gMSArIDUgKiBoYXNfYl9mcmFtZXM7CiAgICAgaW50MTZf dCAoKm12X3RhYmxlKVsyXTsKIAogICAgIGlmIChzLT5ub2lzZV9yZWR1Y3Rpb24pIHsKKyAgICAg ICAgaWYgKCFGRl9BTExPQ1pfVFlQRURfQVJSQVkocy0+ZGN0X29mZnNldCwgMikpCisgICAgICAg ICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAgICAgICBkY3RfZXJyb3IgPSBhdl9tYWxs b2N6KEFMSUdOIC0gMSArIG5iX3NsaWNlcyAqIERDVF9FUlJPUl9TSVpFKTsKICAgICAgICAgaWYg KCFkY3RfZXJyb3IpCiAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwpAQCAtNDU1 LDYgKzQ1NywxNCBAQCBzdGF0aWMgYXZfY29sZCBpbnQgaW5pdF9idWZmZXJzKE1QVk1haW5FbmND b250ZXh0ICpjb25zdCBtLCBBVkNvZGVjQ29udGV4dCAqYXZjdAogICAgIG0tPm1lX21hcF9iYXNl ID0gbWVfbWFwOwogICAgIG1lX21hcCArPSBGRkFMSUdOKCh1aW50cHRyX3QpbWVfbWFwLCBBTElH TikgLSAodWludHB0cl90KW1lX21hcDsKIAorICAgIC8qIEFsbG9jYXRlIE1CIHR5cGUgdGFibGUg Ki8KKyAgICBtYl9hcnJheV9zaXplID0gcy0+bWJfc3RyaWRlICogcy0+bWJfaGVpZ2h0OworICAg IHMtPm1iX3R5cGUgPSBhdl9jYWxsb2MobWJfYXJyYXlfc2l6ZSwgMyAqIHNpemVvZigqcy0+bWJf dHlwZSkgKyBzaXplb2YoKnMtPm1iX21lYW4pKTsKKyAgICBpZiAoIXMtPm1iX3R5cGUpCisgICAg ICAgIHJldHVybiBBVkVSUk9SKEVOT01FTSk7CisgICAgaWYgKCFGRl9BTExPQ1pfVFlQRURfQVJS QVkocy0+bGFtYmRhX3RhYmxlLCBtYl9hcnJheV9zaXplKSkKKyAgICAgICAgcmV0dXJuIEFWRVJS T1IoRU5PTUVNKTsKKwogICAgIG12X3RhYmxlX3NpemUgPSAocy0+bWJfaGVpZ2h0ICsgMikgKiBz LT5tYl9zdHJpZGUgKyAxOwogICAgIGlmIChzLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVH NCB8fAogICAgICAgICAocy0+YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19JTlRFUkxBQ0VE X01FKSkgewpAQCAtNDc0LDkgKzQ4NCwxNyBAQCBzdGF0aWMgYXZfY29sZCBpbnQgaW5pdF9idWZm ZXJzKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtLCBBVkNvZGVjQ29udGV4dCAqYXZjdAogICAg ICAgICBpbnQxNl90ICgqdG1wX212X3RhYmxlKVsyXSA9IG12X3RhYmxlOwogCiAgICAgICAgIGlm IChkY3RfZXJyb3IpIHsKKyAgICAgICAgICAgIHMyLT5kY3Rfb2Zmc2V0ICAgID0gcy0+ZGN0X29m ZnNldDsKICAgICAgICAgICAgIHMyLT5kY3RfZXJyb3Jfc3VtID0gKHZvaWQqKWRjdF9lcnJvcjsK ICAgICAgICAgICAgIGRjdF9lcnJvciAgICAgICAgKz0gRENUX0VSUk9SX1NJWkU7CiAgICAgICAg IH0KKworICAgICAgICBzMi0+bWJfdHlwZSAgICAgID0gcy0+bWJfdHlwZTsKKyAgICAgICAgczIt Pm1jX21iX3ZhciAgICA9IHMyLT5tYl90eXBlICAgKyBtYl9hcnJheV9zaXplOworICAgICAgICBz Mi0+bWJfdmFyICAgICAgID0gczItPm1jX21iX3ZhciArIG1iX2FycmF5X3NpemU7CisgICAgICAg IHMyLT5tYl9tZWFuICAgICAgPSAodWludDhfdCopKHMyLT5tYl92YXIgKyBtYl9hcnJheV9zaXpl KTsKKyAgICAgICAgczItPmxhbWJkYV90YWJsZSA9IHMtPmxhbWJkYV90YWJsZTsKKwogICAgICAg ICBzMi0+bWUubWFwICAgICAgID0gKHVpbnQzMl90KiltZV9tYXA7CiAgICAgICAgIHMyLT5tZS5z Y29yZV9tYXAgPSBzMi0+bWUubWFwICsgTUVfTUFQX1NJWkU7CiAgICAgICAgIG1lX21hcCAgICAg ICAgICArPSBNRV9NQVBfQUxMT0NfU0laRTsKQEAgLTUxNyw3ICs1MzUsNiBAQCBhdl9jb2xkIGlu dCBmZl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIE1wZWdFbmND b250ZXh0ICAgICpjb25zdCBzID0gJm0tPnM7CiAgICAgQVZDUEJQcm9wZXJ0aWVzICpjcGJfcHJv cHM7CiAgICAgaW50IGksIHJldDsKLSAgICBpbnQgbWJfYXJyYXlfc2l6ZTsKIAogICAgIG1wdl9l bmNvZGVfZGVmYXVsdHMobSk7CiAKQEAgLTEwMTcsMjAgKzEwMzQsNiBAQCBhdl9jb2xkIGludCBm Zl9tcHZfZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogICAgIGlmIChyZXQgPCAw KQogICAgICAgICByZXR1cm4gcmV0OwogCi0gICAgLyogQWxsb2NhdGUgTUIgdHlwZSB0YWJsZSAq LwotICAgIG1iX2FycmF5X3NpemUgPSBzLT5tYl9zdHJpZGUgKiBzLT5tYl9oZWlnaHQ7Ci0gICAg aWYgKCFGRl9BTExPQ1pfVFlQRURfQVJSQVkocy0+bWJfdHlwZSwgICAgICBtYl9hcnJheV9zaXpl KSB8fAotICAgICAgICAhRkZfQUxMT0NaX1RZUEVEX0FSUkFZKHMtPmxhbWJkYV90YWJsZSwgbWJf YXJyYXlfc2l6ZSkgfHwKLSAgICAgICAgIUZGX0FMTE9DWl9UWVBFRF9BUlJBWShzLT5tY19tYl92 YXIsICAgIG1iX2FycmF5X3NpemUpIHx8Ci0gICAgICAgICFGRl9BTExPQ1pfVFlQRURfQVJSQVko cy0+bWJfdmFyLCBtYl9hcnJheV9zaXplKSB8fAotICAgICAgICAhKHMtPm1iX21lYW4gPSBhdl9t YWxsb2N6KG1iX2FycmF5X3NpemUpKSkKLSAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsK LQotICAgIGlmIChzLT5ub2lzZV9yZWR1Y3Rpb24pIHsKLSAgICAgICAgaWYgKCFGRl9BTExPQ1pf VFlQRURfQVJSQVkocy0+ZGN0X29mZnNldCwgMikpCi0gICAgICAgICAgICByZXR1cm4gQVZFUlJP UihFTk9NRU0pOwotICAgIH0KLQogICAgIGZmX2RjdF9lbmNvZGVfaW5pdChzKTsKIAogICAgIGlm IChzLT5tcGVnX3F1YW50IHx8IHMtPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX01QRUcyVklERU8p IHsKQEAgLTExMjIsOSArMTEyNSw2IEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfZW5kKEFW Q29kZWNDb250ZXh0ICphdmN0eCkKICAgICBhdl9mcmVlcCgmcy0+cV9pbnRyYV9tYXRyaXgpOwog ICAgIGF2X2ZyZWVwKCZzLT5xX2ludHJhX21hdHJpeDE2KTsKICAgICBhdl9mcmVlcCgmcy0+ZGN0 X29mZnNldCk7Ci0gICAgYXZfZnJlZXAoJnMtPm1iX3Zhcik7Ci0gICAgYXZfZnJlZXAoJnMtPm1j X21iX3Zhcik7Ci0gICAgYXZfZnJlZXAoJnMtPm1iX21lYW4pOwogCiAgICAgcmV0dXJuIDA7CiB9 Ci0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0053-avcodec-mpegvideo-Move-noise_reduction-to-MPVMainEnc.patch" Content-Disposition: attachment; filename*0="0053-avcodec-mpegvideo-Move-noise_reduction-to-MPVMainEnc.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2MjA0MzYxYmFhNWQ5NGQ2NmVjZWQzZTIxZWUyMTgwY2U1NjFlOGZkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAxMDozMDo0OCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTMvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIG5vaXNlX3JlZHVjdGlv biB0bwogTVBWTWFpbkVuY0NvbnRleHQKClNpZ25lZC1vZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJk dCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2Y29kZWMvbXBlZ3Zp ZGVvLmggICAgIHwgIDIgLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgMTkgKysrKysr KysrKystLS0tLS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAgfCAgNCArKystCiAzIGZp bGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVjL21wZWd2aWRlby5oCmluZGV4 IDYwOTA1Mjc4NmUuLjY5ZWZjODEwOTYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVv LmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAtNDczLDggKzQ3Myw2IEBAIHR5cGVk ZWYgc3RydWN0IE1wZWdFbmNDb250ZXh0IHsKIAogICAgIGludCBlcnJvcl9yYXRlOwogCi0gICAg aW50IG5vaXNlX3JlZHVjdGlvbjsKLQogICAgIGludCBpbnRyYV9wZW5hbHR5OwogfSBNcGVnRW5j Q29udGV4dDsKIApkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMgYi9saWJh dmNvZGVjL21wZWd2aWRlb19lbmMuYwppbmRleCAwYzJlZDJlOTMxLi5iMzJiOGZlNzY4IDEwMDY0 NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYworKysgYi9saWJhdmNvZGVjL21wZWd2 aWRlb19lbmMuYwpAQCAtNDQyLDcgKzQ0Miw3IEBAIHN0YXRpYyBhdl9jb2xkIGludCBpbml0X2J1 ZmZlcnMoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0sIEFWQ29kZWNDb250ZXh0ICphdmN0CiAg ICAgaW50IGhhc19iX2ZyYW1lcyA9ICEhbS0+bWF4X2JfZnJhbWVzLCBuYl9tdl90YWJsZXMgPSAx ICsgNSAqIGhhc19iX2ZyYW1lczsKICAgICBpbnQxNl90ICgqbXZfdGFibGUpWzJdOwogCi0gICAg aWYgKHMtPm5vaXNlX3JlZHVjdGlvbikgeworICAgIGlmIChtLT5ub2lzZV9yZWR1Y3Rpb24pIHsK ICAgICAgICAgaWYgKCFGRl9BTExPQ1pfVFlQRURfQVJSQVkocy0+ZGN0X29mZnNldCwgMikpCiAg ICAgICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOwogICAgICAgICBkY3RfZXJyb3IgPSBh dl9tYWxsb2N6KEFMSUdOIC0gMSArIG5iX3NsaWNlcyAqIERDVF9FUlJPUl9TSVpFKTsKQEAgLTE4 NzcsOCArMTg3Nyw5IEBAIHN0YXRpYyB2b2lkIGZyYW1lX2VuZChNUFZNYWluRW5jQ29udGV4dCAq Y29uc3QgbSkKICAgICAgICAgcy0+bGFzdF9ub25fYl9waWN0X3R5cGUgPSBzLT5waWN0X3R5cGU7 CiB9CiAKLXN0YXRpYyB2b2lkIHVwZGF0ZV9ub2lzZV9yZWR1Y3Rpb24oTXBlZ0VuY0NvbnRleHQg KnMpCitzdGF0aWMgdm9pZCB1cGRhdGVfbm9pc2VfcmVkdWN0aW9uKE1QVk1haW5FbmNDb250ZXh0 ICpjb25zdCBtKQogeworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7CiAgICAg aW50IGludHJhLCBpOwogCiAgICAgZm9yIChpbnRyYSA9IDA7IGludHJhIDwgMjsgaW50cmErKykg ewpAQCAtMTg5MCw3ICsxODkxLDcgQEAgc3RhdGljIHZvaWQgdXBkYXRlX25vaXNlX3JlZHVjdGlv bihNcGVnRW5jQ29udGV4dCAqcykKICAgICAgICAgfQogCiAgICAgICAgIGZvciAoaSA9IDA7IGkg PCA2NDsgaSsrKSB7Ci0gICAgICAgICAgICBzLT5kY3Rfb2Zmc2V0W2ludHJhXVtpXSA9IChzLT5u b2lzZV9yZWR1Y3Rpb24gKgorICAgICAgICAgICAgcy0+ZGN0X29mZnNldFtpbnRyYV1baV0gPSAo bS0+bm9pc2VfcmVkdWN0aW9uICoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHMtPmRjdF9jb3VudFtpbnRyYV0gKwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcy0+ZGN0X2Vycm9yX3N1bVtpbnRyYV1baV0gLyAyKSAvCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChzLT5kY3RfZXJyb3Jfc3VtW2ludHJhXVtpXSArIDEp OwpAQCAtMTg5OCw4ICsxODk5LDEwIEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9ub2lzZV9yZWR1Y3Rp b24oTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAgfQogfQogCi1zdGF0aWMgdm9pZCBmcmFtZV9zdGFy dChNcGVnRW5jQ29udGV4dCAqcykKK3N0YXRpYyB2b2lkIGZyYW1lX3N0YXJ0KE1QVk1haW5FbmND b250ZXh0ICpjb25zdCBtKQogeworICAgIE1wZWdFbmNDb250ZXh0ICpjb25zdCBzID0gJm0tPnM7 CisKICAgICBzLT5jdXJfcGljLnB0ci0+Zi0+cGljdF90eXBlID0gcy0+cGljdF90eXBlOwogCiAg ICAgaWYgKHMtPnBpY3RfdHlwZSAhPSBBVl9QSUNUVVJFX1RZUEVfQikgewpAQCAtMTkwNyw5ICsx OTEwLDkgQEAgc3RhdGljIHZvaWQgZnJhbWVfc3RhcnQoTXBlZ0VuY0NvbnRleHQgKnMpCiAgICAg ICAgIGZmX21wdl9yZXBsYWNlX3BpY3R1cmUoJnMtPm5leHRfcGljLCAmcy0+Y3VyX3BpYyk7CiAg ICAgfQogCisgICAgYXZfYXNzZXJ0MighIW0tPm5vaXNlX3JlZHVjdGlvbiA9PSAhIXMtPmRjdF9l cnJvcl9zdW0pOwogICAgIGlmIChzLT5kY3RfZXJyb3Jfc3VtKSB7Ci0gICAgICAgIGF2X2Fzc2Vy dDIocy0+bm9pc2VfcmVkdWN0aW9uICYmIHMtPmVuY29kaW5nKTsKLSAgICAgICAgdXBkYXRlX25v aXNlX3JlZHVjdGlvbihzKTsKKyAgICAgICAgdXBkYXRlX25vaXNlX3JlZHVjdGlvbihtKTsKICAg ICB9CiB9CiAKQEAgLTE5NTksNyArMTk2Miw3IEBAIGludCBmZl9tcHZfZW5jb2RlX3BpY3R1cmUo QVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVlBhY2tldCAqcGt0LAogCiAgICAgICAgIHMtPnBpY3Rf dHlwZSA9IHMtPm5ld19waWMtPnBpY3RfdHlwZTsKICAgICAgICAgLy9lbW1zX2MoKTsKLSAgICAg ICAgZnJhbWVfc3RhcnQocyk7CisgICAgICAgIGZyYW1lX3N0YXJ0KG0pOwogdmJ2X3JldHJ5Ogog ICAgICAgICByZXQgPSBlbmNvZGVfcGljdHVyZShtLCBwa3QpOwogICAgICAgICBpZiAoZ3Jvd2lu Z19idWZmZXIpIHsKQEAgLTM1OTgsNyArMzYwMSw3IEBAIHN0YXRpYyB2b2lkIG1lcmdlX2NvbnRl eHRfYWZ0ZXJfZW5jb2RlKE1wZWdFbmNDb250ZXh0ICpkc3QsIE1wZWdFbmNDb250ZXh0ICpzcmMp CiAgICAgTUVSR0UoZW5jb2RpbmdfZXJyb3JbMV0pOwogICAgIE1FUkdFKGVuY29kaW5nX2Vycm9y WzJdKTsKIAotICAgIGlmIChkc3QtPm5vaXNlX3JlZHVjdGlvbil7CisgICAgaWYgKGRzdC0+ZGN0 X2Vycm9yX3N1bSkgewogICAgICAgICBmb3IoaT0wOyBpPDY0OyBpKyspewogICAgICAgICAgICAg TUVSR0UoZGN0X2Vycm9yX3N1bVswXVtpXSk7CiAgICAgICAgICAgICBNRVJHRShkY3RfZXJyb3Jf c3VtWzFdW2ldKTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJh dmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IDYwOTdlYTdhOWMuLmQxMDFjOTJjYmIgMTAwNjQ0 Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlk ZW9lbmMuaApAQCAtNjgsNiArNjgsOCBAQCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4 dCB7CiAgICAgaW50IGJfc2Vuc2l0aXZpdHk7CiAgICAgaW50IGJyZF9zY2FsZTsKIAorICAgIGlu dCBub2lzZV9yZWR1Y3Rpb247CisKICAgICBmbG9hdCBib3JkZXJfbWFza2luZzsKICAgICBpbnQg bG1pbiwgbG1heDsKICAgICBpbnQgdmJ2X2lnbm9yZV9xbWF4OwpAQCAtMTk5LDcgKzIwMSw3IEBA IEZGX01QVl9PUFRfQ01QX0ZVTkMsIFwKIHsic2tpcF9mYWN0b3IiLCAiRnJhbWUgc2tpcCBmYWN0 b3IiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRkZfTVBWX01BSU5fT0ZGU0VUKGZy YW1lX3NraXBfZmFjdG9yKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwg SU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCiB7InNraXBfZXhwIiwgIkZyYW1lIHNraXAg ZXhwb25lbnQiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZGX01QVl9NQUlOX09G RlNFVChmcmFtZV9za2lwX2V4cCksIEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAwIH0sIElOVF9N SU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgXAogeyJza2lwX2NtcCIsICJGcmFtZSBz a2lwIGNvbXBhcmUgZnVuY3Rpb24iLCAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfTUFJ Tl9PRkZTRVQoZnJhbWVfc2tpcF9jbXApLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gRkZfQ01Q X0RDVE1BWCB9LCBJTlRfTUlOLCBJTlRfTUFYLCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJj bXBfZnVuYyIgfSwgXAoteyJub2lzZV9yZWR1Y3Rpb24iLCAiTm9pc2UgcmVkdWN0aW9uIiwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfT0ZGU0VUKG5vaXNlX3JlZHVjdGlvbiks IEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9P UFRfRkxBR1MgfSwgXAoreyJub2lzZV9yZWR1Y3Rpb24iLCAiTm9pc2UgcmVkdWN0aW9uIiwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBGRl9NUFZfTUFJTl9PRkZTRVQobm9pc2VfcmVkdWN0 aW9uKSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZf TVBWX09QVF9GTEFHUyB9LCBcCiB7InBzIiwgIlJUUCBwYXlsb2FkIHNpemUgaW4gYnl0ZXMiLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgRkZfTVBWX09GRlNFVChydHBfcGF5bG9hZF9zaXpl KSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBW X09QVF9GTEFHUyB9LCBcCiAKICNkZWZpbmUgRkZfTVBWX0NPTU1PTl9CRlJBTUVfT1BUUyBcCi0t IAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0054-avcodec-mpegvideo-Support-custom-slice-context-sizes.patch" Content-Disposition: attachment; filename*0="0054-avcodec-mpegvideo-Support-custom-slice-context-sizes.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBkZDNhOTczZGQyNDgwYTc3ZjA0NjczZmY5NWZmNGU4YzJhNzUyNmM1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAxNDo1MjozNiArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTQvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBTdXBwb3J0IGN1c3RvbSBzbGlj ZSBjb250ZXh0IHNpemVzCgpUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBhZGRpbmcgYSBzcGVj aWFsIHNsaWNlIGNvbnRleHQgZm9yCnRoZSBlbmNvZGVycyBhbmQgbW92aW5nIGFsbCB0aGUgZW5j b2Rlci1zcGVjaWZpYyBmaWVsZHMgdG8gaXQuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWlu aGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL21w ZWd2aWRlby5jIHwgMyArKy0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggfCAzICsrKwogMiBmaWxl cyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL21wZWd2aWRlby5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uYwppbmRleCA4MDU1 ZTZjMGUyLi4xMjZmZWZhMWJlIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5jCisr KyBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmMKQEAgLTM3NSw2ICszNzUsNyBAQCBzdGF0aWMgYXZf Y29sZCBpbnQgaW5pdF9kdXBsaWNhdGVfY29udGV4dChNcGVnRW5jQ29udGV4dCAqcykKIGF2X2Nv bGQgaW50IGZmX21wdl9pbml0X2R1cGxpY2F0ZV9jb250ZXh0cyhNcGVnRW5jQ29udGV4dCAqcykK IHsKICAgICBpbnQgbmJfc2xpY2VzID0gcy0+c2xpY2VfY29udGV4dF9jb3VudCwgcmV0OworICAg IHNpemVfdCBzbGljZV9zaXplID0gcy0+c2xpY2VfY3R4X3NpemUgPyBzLT5zbGljZV9jdHhfc2l6 ZSA6IHNpemVvZigqcyk7CiAKICAgICBzLT5wYXJlbnQgPSBzOwogCkBAIC0zODIsNyArMzgzLDcg QEAgYXZfY29sZCBpbnQgZmZfbXB2X2luaXRfZHVwbGljYXRlX2NvbnRleHRzKE1wZWdFbmNDb250 ZXh0ICpzKQogICAgICAqIGZpZWxkcyBhbGxvY2F0ZWQgaW4gaW5pdF9kdXBsaWNhdGVfY29udGV4 dCBhcmUgTlVMTCBhZnRlcgogICAgICAqIGNvcHlpbmcuIFRoaXMgcHJldmVudHMgZG91YmxlLWZy ZWVzIHVwb24gYWxsb2NhdGlvbiBlcnJvci4gKi8KICAgICBmb3IgKGludCBpID0gMTsgaSA8IG5i X3NsaWNlczsgaSsrKSB7Ci0gICAgICAgIHMtPnRocmVhZF9jb250ZXh0W2ldID0gYXZfbWVtZHVw KHMsIHNpemVvZihNcGVnRW5jQ29udGV4dCkpOworICAgICAgICBzLT50aHJlYWRfY29udGV4dFtp XSA9IGF2X21lbWR1cChzLCBzbGljZV9zaXplKTsKICAgICAgICAgaWYgKCFzLT50aHJlYWRfY29u dGV4dFtpXSkKICAgICAgICAgICAgIHJldHVybiBBVkVSUk9SKEVOT01FTSk7CiAgICAgICAgIGlm ICgocmV0ID0gaW5pdF9kdXBsaWNhdGVfY29udGV4dChzLT50aHJlYWRfY29udGV4dFtpXSkpIDwg MCkKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVjL21wZWd2 aWRlby5oCmluZGV4IDY5ZWZjODEwOTYuLjAyODk0Y2U2OGYgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaApAQCAtNDY5LDYgKzQ2 OSw5IEBAIHR5cGVkZWYgc3RydWN0IE1wZWdFbmNDb250ZXh0IHsKICAgICAgKiBhIGZyYW1lIHNp emUgY2hhbmdlICovCiAgICAgaW50IGNvbnRleHRfcmVpbml0OwogCisgICAgLy8vIElmIHNldCwg ZmZfbXB2X2NvbW1vbl9pbml0KCkgd2lsbCBhbGxvY2F0ZSBzbGljZSBjb250ZXh0cyBvZiB0aGlz IHNpemUKKyAgICB1bnNpZ25lZCBzbGljZV9jdHhfc2l6ZTsKKwogICAgIEVSQ29udGV4dCBlcjsK IAogICAgIGludCBlcnJvcl9yYXRlOwotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0055-avcodec-mpegvideo-Move-last-pic-information-to-MPVMa.patch" Content-Disposition: attachment; filename*0="0055-avcodec-mpegvideo-Move-last-pic-information-to-MPVMa.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBjYjAwYmNlM2M3ZGU1MDM3MTFjZjgzMTgzZWU4ZThjNDRlNDhmMTY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU2F0LCAyOSBKYW4gMjAyMiAwNToyNToyNSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTUvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIGxhc3QtcGljIGluZm9y bWF0aW9uIHRvCiBNUFZNYWluRW5jQ29udGV4dAoKbGFzdF9waWN0X3R5cGUsIGxhc3Rfbm9uX2Jf cGljdF90eXBlIGFuZCBsYXN0X2xhbWJkYV9mb3IKYXJlIG9ubHkgdXNlZCBieSB0aGUgZW5jb2Rl cidzIG1haW4gdGhyZWFkLgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRy ZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tcGVndmlkZW8uaCAg ICAgfCAgMyAtLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIHwgMTYgKysrKysrKystLS0t LS0tLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCAgfCAgMyArKysKIGxpYmF2Y29kZWMvbXNt cGVnNGVuYy5jICAgIHwgIDQgKystLQogbGliYXZjb2RlYy9yYXRlY29udHJvbC5jICAgfCAgNCAr Ky0tCiBsaWJhdmNvZGVjL3Nub3dlbmMuYyAgICAgICB8ICAyICstCiA2IGZpbGVzIGNoYW5nZWQs IDE2IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29k ZWMvbXBlZ3ZpZGVvLmggYi9saWJhdmNvZGVjL21wZWd2aWRlby5oCmluZGV4IDAyODk0Y2U2OGYu LmMxNmZiMWM3MDMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKKysrIGIvbGli YXZjb2RlYy9tcGVndmlkZW8uaApAQCAtMTg1LDEwICsxODUsNyBAQCB0eXBlZGVmIHN0cnVjdCBN cGVnRW5jQ29udGV4dCB7CiAgICAgaW50IGFkYXB0aXZlX3F1YW50OyAgICAgICAgIC8vLzwgdXNl IGFkYXB0aXZlIHF1YW50aXphdGlvbgogICAgIGludCBkcXVhbnQ7ICAgICAgICAgICAgICAgICAv Ly88IHFzY2FsZSBkaWZmZXJlbmNlIHRvIHByZXYgcXNjYWxlCiAgICAgaW50IHBpY3RfdHlwZTsg ICAgICAgICAgICAgIC8vLzwgQVZfUElDVFVSRV9UWVBFX0ksIEFWX1BJQ1RVUkVfVFlQRV9QLCBB Vl9QSUNUVVJFX1RZUEVfQiwgLi4uCi0gICAgaW50IGxhc3RfcGljdF90eXBlOyAvL0ZJWE1FIHJl bW92ZXMKLSAgICBpbnQgbGFzdF9ub25fYl9waWN0X3R5cGU7ICAgLy8vPCB1c2VkIGZvciBNUEVH LTQgZ21jIEItZnJhbWVzICYgcmF0ZWNvbnRyb2wKICAgICBpbnQgZHJvcHBhYmxlOwotICAgIGlu dCBsYXN0X2xhbWJkYV9mb3JbNV07ICAgICAvLy88IGxhc3QgbGFtYmRhIGZvciBhIHNwZWNpZmlj IHBpY3QgdHlwZQogICAgIGludCBza2lwZGN0OyAgICAgICAgICAgICAgICAvLy88IHNraXAgZGN0 IGFuZCBjb2RlIHplcm8gcmVzaWR1YWwKIAogICAgIC8qIG1vdGlvbiBjb21wZW5zYXRpb24gKi8K ZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVn dmlkZW9fZW5jLmMKaW5kZXggYjMyYjhmZTc2OC4uOWY0NGMzN2IzZCAxMDA2NDQKLS0tIGEvbGli YXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMK QEAgLTE1MTUsOSArMTUxNSw5IEBAIHN0YXRpYyBpbnQgZXN0aW1hdGVfYmVzdF9iX2NvdW50KE1Q Vk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0p OwogCiAgICAgLy9lbW1zX2MoKTsKLSAgICBwX2xhbWJkYSA9IHMtPmxhc3RfbGFtYmRhX2ZvcltB Vl9QSUNUVVJFX1RZUEVfUF07CisgICAgcF9sYW1iZGEgPSBtLT5sYXN0X2xhbWJkYV9mb3JbQVZf UElDVFVSRV9UWVBFX1BdOwogICAgIC8vcF9sYW1iZGEgKiBGRkFCUyhzLT5hdmN0eC0+Yl9xdWFu dF9mYWN0b3IpICsgcy0+YXZjdHgtPmJfcXVhbnRfb2Zmc2V0OwotICAgIGJfbGFtYmRhID0gcy0+ bGFzdF9sYW1iZGFfZm9yW0FWX1BJQ1RVUkVfVFlQRV9CXTsKKyAgICBiX2xhbWJkYSA9IG0tPmxh c3RfbGFtYmRhX2ZvcltBVl9QSUNUVVJFX1RZUEVfQl07CiAgICAgaWYgKCFiX2xhbWJkYSkgLy8g RklYTUUgd2Ugc2hvdWxkIGRvIHRoaXMgc29tZXdoZXJlIGVsc2UKICAgICAgICAgYl9sYW1iZGEg PSBwX2xhbWJkYTsKICAgICBsYW1iZGEyICA9IChiX2xhbWJkYSAqIGJfbGFtYmRhICsgKDEgPDwg RkZfTEFNQkRBX1NISUZUKSAvIDIpID4+CkBAIC0xODcxLDEwICsxODcxLDEwIEBAIHN0YXRpYyB2 b2lkIGZyYW1lX2VuZChNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSkKIAogICAgIGVtbXNfYygp OwogCi0gICAgcy0+bGFzdF9waWN0X3R5cGUgICAgICAgICAgICAgICAgID0gcy0+cGljdF90eXBl OwotICAgIHMtPmxhc3RfbGFtYmRhX2ZvciBbcy0+cGljdF90eXBlXSA9IHMtPmN1cl9waWMucHRy LT5mLT5xdWFsaXR5OworICAgIG0tPmxhc3RfcGljdF90eXBlICAgICAgICAgICAgICAgID0gcy0+ cGljdF90eXBlOworICAgIG0tPmxhc3RfbGFtYmRhX2ZvcltzLT5waWN0X3R5cGVdID0gcy0+Y3Vy X3BpYy5wdHItPmYtPnF1YWxpdHk7CiAgICAgaWYgKHMtPnBpY3RfdHlwZSE9IEFWX1BJQ1RVUkVf VFlQRV9CKQotICAgICAgICBzLT5sYXN0X25vbl9iX3BpY3RfdHlwZSA9IHMtPnBpY3RfdHlwZTsK KyAgICAgICAgbS0+bGFzdF9ub25fYl9waWN0X3R5cGUgPSBzLT5waWN0X3R5cGU7CiB9CiAKIHN0 YXRpYyB2b2lkIHVwZGF0ZV9ub2lzZV9yZWR1Y3Rpb24oTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0 IG0pCkBAIC0zNzAyLDkgKzM3MDIsOSBAQCBzdGF0aWMgaW50IGVuY29kZV9waWN0dXJlKE1QVk1h aW5FbmNDb250ZXh0ICpjb25zdCBtLCBjb25zdCBBVlBhY2tldCAqcGt0KQogICAgICAgICBmZl9n ZXRfMnBhc3NfZmNvZGUobSk7CiAgICAgfSBlbHNlIGlmICghKHMtPmF2Y3R4LT5mbGFncyAmIEFW X0NPREVDX0ZMQUdfUVNDQUxFKSkgewogICAgICAgICBpZihzLT5waWN0X3R5cGU9PUFWX1BJQ1RV UkVfVFlQRV9CKQotICAgICAgICAgICAgcy0+bGFtYmRhPSBzLT5sYXN0X2xhbWJkYV9mb3Jbcy0+ cGljdF90eXBlXTsKKyAgICAgICAgICAgIHMtPmxhbWJkYSA9IG0tPmxhc3RfbGFtYmRhX2Zvcltz LT5waWN0X3R5cGVdOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBzLT5sYW1iZGE9IHMtPmxh c3RfbGFtYmRhX2ZvcltzLT5sYXN0X25vbl9iX3BpY3RfdHlwZV07CisgICAgICAgICAgICBzLT5s YW1iZGEgPSBtLT5sYXN0X2xhbWJkYV9mb3JbbS0+bGFzdF9ub25fYl9waWN0X3R5cGVdOwogICAg ICAgICB1cGRhdGVfcXNjYWxlKG0pOwogICAgIH0KIApAQCAtMzczNSw3ICszNzM1LDcgQEAgc3Rh dGljIGludCBlbmNvZGVfcGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3Qg QVZQYWNrZXQgKnBrdCkKICAgICAgICAgcy0+bGFtYmRhICA9IChzLT5sYW1iZGEgICogcy0+bWVf cGVuYWx0eV9jb21wZW5zYXRpb24gKyAxMjgpID4+IDg7CiAgICAgICAgIHMtPmxhbWJkYTIgPSAo cy0+bGFtYmRhMiAqIChpbnQ2NF90KSBzLT5tZV9wZW5hbHR5X2NvbXBlbnNhdGlvbiArIDEyOCkg Pj4gODsKICAgICAgICAgaWYgKHMtPnBpY3RfdHlwZSAhPSBBVl9QSUNUVVJFX1RZUEVfQikgewot ICAgICAgICAgICAgaWYgKChzLT5tZV9wcmUgJiYgcy0+bGFzdF9ub25fYl9waWN0X3R5cGUgPT0g QVZfUElDVFVSRV9UWVBFX0kpIHx8CisgICAgICAgICAgICBpZiAoKHMtPm1lX3ByZSAmJiBtLT5s YXN0X25vbl9iX3BpY3RfdHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfSSkgfHwKICAgICAgICAgICAg ICAgICBzLT5tZV9wcmUgPT0gMikgewogICAgICAgICAgICAgICAgIHMtPmF2Y3R4LT5leGVjdXRl KHMtPmF2Y3R4LCBwcmVfZXN0aW1hdGVfbW90aW9uX3RocmVhZCwgJnMtPnRocmVhZF9jb250ZXh0 WzBdLCBOVUxMLCBjb250ZXh0X2NvdW50LCBzaXplb2Yodm9pZCopKTsKICAgICAgICAgICAgIH0K ZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2 aWRlb2VuYy5oCmluZGV4IGQxMDFjOTJjYmIuLjcwNTQ4ODFjMDUgMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAt OTYsNiArOTYsOSBAQCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCB7CiAgICAgaW50 IHN0dWZmaW5nX2JpdHM7ICAgICAgICAgICAgIC8vLzwgYml0cyB1c2VkIGZvciBzdHVmZmluZwog ICAgIGludCBuZXh0X2xhbWJkYTsgICAgICAgICAgICAgICAvLy88IG5leHQgbGFtYmRhIHVzZWQg Zm9yIHJldHJ5aW5nIHRvIGVuY29kZSBhIGZyYW1lCiAgICAgaW50IGZpeGVkX3FzY2FsZTsgICAg ICAgICAgICAgIC8vLzwgZml4ZWQgcXNjYWxlIGlmIG5vbiB6ZXJvCisgICAgaW50IGxhc3RfbGFt YmRhX2Zvcls1XTsgICAgICAgIC8vLzwgbGFzdCBsYW1iZGEgZm9yIGEgc3BlY2lmaWMgcGljdCB0 eXBlCisgICAgaW50IGxhc3RfcGljdF90eXBlOyAgICAgICAgICAgIC8vRklYTUUgcmVtb3Zlcwor ICAgIGludCBsYXN0X25vbl9iX3BpY3RfdHlwZTsgICAgICAvLy88IHVzZWQgZm9yIE1QRUctNCBn bWMgQi1mcmFtZXMgJiByYXRlY29udHJvbAogICAgIFJhdGVDb250cm9sQ29udGV4dCByY19jb250 ZXh0OyAvLy88IGNvbnRhaW5zIHN0dWZmIG9ubHkgYWNjZXNzZWQgaW4gcmF0ZWNvbnRyb2wuYwog CiAgICAgaW50NjRfdCBtYl92YXJfc3VtOyAgICAgICAgICAgIC8vLzwgc3VtIG9mIE1CIHZhcmlh bmNlIGZvciBjdXJyZW50IGZyYW1lCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21zbXBlZzRlbmMu YyBiL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCmluZGV4IDc4MTk3NzU2YWUuLmJiYTA0OTNmMDEg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXNtcGVnNGVuYy5jCisrKyBiL2xpYmF2Y29kZWMvbXNt cGVnNGVuYy5jCkBAIC0yMDMsOCArMjAzLDggQEAgc3RhdGljIHZvaWQgZmluZF9iZXN0X3RhYmxl cyhNU01QRUc0RW5jQ29udGV4dCAqbXMpCiAgICAgbXMtPnJsX3RhYmxlX2luZGV4ICAgICAgICA9 ICAgICAgICBiZXN0OwogICAgIG1zLT5ybF9jaHJvbWFfdGFibGVfaW5kZXggPSBjaHJvbWFfYmVz dDsKIAotICAgIGlmKHMtPnBpY3RfdHlwZSAhPSBzLT5sYXN0X25vbl9iX3BpY3RfdHlwZSl7Ci0g ICAgICAgIG1zLT5ybF90YWJsZV9pbmRleCA9IDI7CisgICAgaWYgKHMtPnBpY3RfdHlwZSAhPSBt cy0+bS5sYXN0X25vbl9iX3BpY3RfdHlwZSkgeworICAgICAgICBtcy0+cmxfdGFibGVfaW5kZXg9 IDI7CiAgICAgICAgIGlmKHMtPnBpY3RfdHlwZT09QVZfUElDVFVSRV9UWVBFX0kpCiAgICAgICAg ICAgICBtcy0+cmxfY2hyb21hX3RhYmxlX2luZGV4ID0gMTsKICAgICAgICAgZWxzZQpkaWZmIC0t Z2l0IGEvbGliYXZjb2RlYy9yYXRlY29udHJvbC5jIGIvbGliYXZjb2RlYy9yYXRlY29udHJvbC5j CmluZGV4IDBkMmJmOGZiMzAuLmIxMzFmNjFiNzAgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvcmF0 ZWNvbnRyb2wuYworKysgYi9saWJhdmNvZGVjL3JhdGVjb250cm9sLmMKQEAgLTk0MCwxMCArOTQw LDEwIEBAIGZsb2F0IGZmX3JhdGVfZXN0aW1hdGVfcXNjYWxlKE1QVk1haW5FbmNDb250ZXh0ICpj b25zdCBtLCBpbnQgZHJ5X3J1bikKICAgICAvKiB1cGRhdGUgcHJlZGljdG9ycyAqLwogICAgIGlm IChwaWN0dXJlX251bWJlciA+IDIgJiYgIWRyeV9ydW4pIHsKICAgICAgICAgY29uc3QgaW50NjRf dCBsYXN0X3ZhciA9Ci0gICAgICAgICAgICBzLT5sYXN0X3BpY3RfdHlwZSA9PSBBVl9QSUNUVVJF X1RZUEVfSSA/IHJjYy0+bGFzdF9tYl92YXJfc3VtCisgICAgICAgICAgICBtLT5sYXN0X3BpY3Rf dHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfSSA/IHJjYy0+bGFzdF9tYl92YXJfc3VtCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHJjYy0+bGFzdF9t Y19tYl92YXJfc3VtOwogICAgICAgICBhdl9hc3NlcnQxKG0tPmZyYW1lX2JpdHMgPj0gbS0+c3R1 ZmZpbmdfYml0cyk7Ci0gICAgICAgIHVwZGF0ZV9wcmVkaWN0b3IoJnJjYy0+cHJlZFtzLT5sYXN0 X3BpY3RfdHlwZV0sCisgICAgICAgIHVwZGF0ZV9wcmVkaWN0b3IoJnJjYy0+cHJlZFttLT5sYXN0 X3BpY3RfdHlwZV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgcmNjLT5sYXN0X3FzY2FsZSwK ICAgICAgICAgICAgICAgICAgICAgICAgICBzcXJ0KGxhc3RfdmFyKSwKICAgICAgICAgICAgICAg ICAgICAgICAgICBtLT5mcmFtZV9iaXRzIC0gbS0+c3R1ZmZpbmdfYml0cyk7CmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL3Nub3dlbmMuYyBiL2xpYmF2Y29kZWMvc25vd2VuYy5jCmluZGV4IGI0YTMy OTE1OGYuLmU2Y2YyYTI5MGMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvc25vd2VuYy5jCisrKyBi L2xpYmF2Y29kZWMvc25vd2VuYy5jCkBAIC0yMDU4LDcgKzIwNTgsNyBAQCByZWRvX2ZyYW1lOgog ICAgIH0KICAgICBpZihhdmN0eC0+ZmxhZ3MmQVZfQ09ERUNfRkxBR19QQVNTMSkKICAgICAgICAg ZmZfd3JpdGVfcGFzczFfc3RhdHMoJmVuYy0+bSk7Ci0gICAgbXB2LT5sYXN0X3BpY3RfdHlwZSA9 IG1wdi0+cGljdF90eXBlOworICAgIGVuYy0+bS5sYXN0X3BpY3RfdHlwZSA9IG1wdi0+cGljdF90 eXBlOwogCiAgICAgZW1tc19jKCk7CiAKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0056-avcodec-h261-ituh263-enc-Don-t-set-ptr_lastgob-unnec.patch" Content-Disposition: attachment; filename*0="0056-avcodec-h261-ituh263-enc-Don-t-set-ptr_lastgob-unnec.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmYjU5NWY0NzA4MzljYjI1NDE0ZTFjMmIzZjQ3ZWUzNzFjZDgwOWVmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxNiBNYXIgMjAyNSAxNTo1MjoyOSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTYvNzddIGF2Y29kZWMve2gyNjEsaXR1aDI2M31lbmM6IERvbid0IHNldCBw dHJfbGFzdGdvYgogdW5uZWNlc3NhcmlseQoKSXQgd2lsbCBiZSBvdmVyd3JpdHRlbiBsYXRlciBp biBlbmNvZGVfdGhyZWFkKCkgYW55d2F5LgoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhh cmR0IDxhbmRyZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9oMjYx ZW5jLmMgICAgfCAzIC0tLQogbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMgfCAyIC0tCiAyIGZpbGVz IGNoYW5nZWQsIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9oMjYxZW5j LmMgYi9saWJhdmNvZGVjL2gyNjFlbmMuYwppbmRleCA4MTcxMWIzYTE2Li5kYTg3MzZhNzhjIDEw MDY0NAotLS0gYS9saWJhdmNvZGVjL2gyNjFlbmMuYworKysgYi9saWJhdmNvZGVjL2gyNjFlbmMu YwpAQCAtNzQsOSArNzQsNiBAQCBzdGF0aWMgaW50IGgyNjFfZW5jb2RlX3BpY3R1cmVfaGVhZGVy KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAgICAgYWxpZ25fcHV0X2JpdHMoJnMtPnBi KTsKIAotICAgIC8qIFVwZGF0ZSB0aGUgcG9pbnRlciB0byBsYXN0IEdPQiAqLwotICAgIHMtPnB0 cl9sYXN0Z29iID0gcHV0X2JpdHNfcHRyKCZzLT5wYik7Ci0KICAgICBwdXRfYml0cygmcy0+cGIs IDIwLCAweDEwKTsgLyogUFNDICovCiAKICAgICB0ZW1wX3JlZiA9IHMtPnBpY3R1cmVfbnVtYmVy ICogMzAwMDBMTCAqIHMtPmF2Y3R4LT50aW1lX2Jhc2UubnVtIC8KZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvaXR1aDI2M2VuYy5jIGIvbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMKaW5kZXggZGVhZjdk YzVjNi4uNWEyYWYwOWIxOCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMKKysr IGIvbGliYXZjb2RlYy9pdHVoMjYzZW5jLmMKQEAgLTI0OSw4ICsyNDksNiBAQCBzdGF0aWMgaW50 IGgyNjNfZW5jb2RlX3BpY3R1cmVfaGVhZGVyKE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQog CiAgICAgYWxpZ25fcHV0X2JpdHMoJnMtPnBiKTsKIAotICAgIC8qIFVwZGF0ZSB0aGUgcG9pbnRl ciB0byBsYXN0IEdPQiAqLwotICAgIHMtPnB0cl9sYXN0Z29iID0gcHV0X2JpdHNfcHRyKCZzLT5w Yik7CiAgICAgcHV0X2JpdHMoJnMtPnBiLCAyMiwgMHgyMCk7IC8qIFBTQyAqLwogICAgIHRlbXBf cmVmPSBzLT5waWN0dXJlX251bWJlciAqIChpbnQ2NF90KWNvZGVkX2ZyYW1lX3JhdGUgKiBzLT5h dmN0eC0+dGltZV9iYXNlLm51bSAvIC8vRklYTUUgdXNlIHRpbWVzdGFtcAogICAgICAgICAgICAg ICAgICAgICAgICAgIChjb2RlZF9mcmFtZV9yYXRlX2Jhc2UgKiAoaW50NjRfdClzLT5hdmN0eC0+ dGltZV9iYXNlLmRlbik7Ci0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0057-avcodec-mpegvideoenc-Remove-declaration-of-inexisten.patch" Content-Disposition: attachment; filename*0="0057-avcodec-mpegvideoenc-Remove-declaration-of-inexisten.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBlYzRlYTgxNmE3OTIzNDlhMGU4OGM1OGEzMjk3MDRkMDQ1NzI0MzY3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxNTowNjowNyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTcvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvZW5jOiBSZW1vdmUgZGVjbGFyYXRp b24gb2YgaW5leGlzdGVudAogZnVuY3Rpb24KCmZmX01QVl9lbmNvZGVfaW5pdF94ODYoKSBoYXMg YmVlbiByZW5hbWVkIHRvIGZmX2RjdF9lbmNvZGVfaW5pdF94ODYoKQppbiA2YjMzZTkxODk5NmU4 YTRlNDAwNzFjYjBhMjczYzIzZGUyMmNlMWZjIGluIEZGbXBlZzsgbGliYXYgcmVuYW1lZAppdCB0 byBmZl9tcHZfZW5jb2RlX2luaXRfeDg2KCkgaW4gY29tbWl0CjZiMzNlOTE4OTk2ZThhNGU0MDA3 MWNiMGEyNzNjMjNkZTIyY2UxZmMuIFRoaXMgaGFzbid0IGJlZW4gbm90aWNlZAppbiBjMWRmNDY3 ZDczZWU4YzZlNzkyZWMyN2MxMjZjNWYwZTJiYzFhZjlkIHdoZW4gbWVyZ2luZy4KClNpZ25lZC1v ZmYtYnk6IEFuZHJlYXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29t PgotLS0KIGxpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggfCAxIC0KIDEgZmlsZSBjaGFuZ2VkLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCBiL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKaW5kZXggNzA1NDg4MWMwNS4uYTA4MjgzMGFiMSAxMDA2 NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaAorKysgYi9saWJhdmNvZGVjL21wZWd2 aWRlb2VuYy5oCkBAIC0yMjYsNyArMjI2LDYgQEAgRkZfTVBWX09QVF9DTVBfRlVOQywgXAogZXh0 ZXJuIGNvbnN0IEFWQ2xhc3MgZmZfbXB2X2VuY19jbGFzczsKIAogaW50IGZmX21wdl9lbmNvZGVf aW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpOwotdm9pZCBmZl9tcHZfZW5jb2RlX2luaXRfeDg2 KE1wZWdFbmNDb250ZXh0ICpzKTsKIAogaW50IGZmX21wdl9lbmNvZGVfZW5kKEFWQ29kZWNDb250 ZXh0ICphdmN0eCk7CiBpbnQgZmZfbXB2X2VuY29kZV9waWN0dXJlKEFWQ29kZWNDb250ZXh0ICph dmN0eCwgQVZQYWNrZXQgKnBrdCwKLS0gCjIuNDUuMgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0058-avcodec-mpegvideo_enc-Call-ff_mpv_common_init-later.patch" Content-Disposition: attachment; filename*0="0058-avcodec-mpegvideo_enc-Call-ff_mpv_common_init-later.pat"; filename*1="ch" Content-Transfer-Encoding: base64 RnJvbSAyYjM4YWIwNmIwZmM4YTc3OGIxMDg0MmVkYTJiMzdjZDE3M2Q4NjM5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxNjoyOTowNyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTgvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvX2VuYzogQ2FsbCBmZl9tcHZfY29t bW9uX2luaXQoKSBsYXRlcgoKTmFtZWx5IGFmdGVyIHRoZSBtYWluIHNsaWNlIGNvbnRleHQgaGFz IGFscmVhZHkgYmVlbiBpbml0aWFsaXplZCwKc28gdGhhdCB0aGlzIGluaXRpYWxpemVkIHN0YXRl IGlzIGRpcmVjdGx5IGNvcGllZCB0byB0aGUgbmV3bHkKY3JlYXRlZCBzbGljZSBjb250ZXh0cyB3 aXRob3V0IHJlbHlpbmcgb24gaXQgYmVpbmcgY29waWVkCmJ5IGZmX3VwZGF0ZV9kdXBsaWNhdGVf Y29udGV4dCgpLiBUaGlzIGlzIGluIHByZXBhcmF0aW9uIGZvciBmdXJ0aGVyCmNvbW1pdHMuCgpT aWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJkdEBvdXRs b29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyB8IDMxICsrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAx NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL21wZWd2aWRlb19lbmMuYyBi L2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCmluZGV4IDlmNDRjMzdiM2QuLmY5YjhkOTZjODMg MTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvX2VuYy5jCisrKyBiL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvX2VuYy5jCkBAIC0xMDExLDkgKzEwMTEsNiBAQCBhdl9jb2xkIGludCBmZl9tcHZf ZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQogCiAgICAgLyogaW5pdCAqLwogICAg IGZmX21wdl9pZGN0X2luaXQocyk7Ci0gICAgaWYgKChyZXQgPSBmZl9tcHZfY29tbW9uX2luaXQo cykpIDwgMCkKLSAgICAgICAgcmV0dXJuIHJldDsKLQogICAgIGZmX2ZkY3Rkc3BfaW5pdCgmcy0+ ZmRzcCwgYXZjdHgpOwogICAgIGZmX21wZWd2aWRlb2VuY2RzcF9pbml0KCZzLT5tcHZlbmNkc3As IGF2Y3R4KTsKICAgICBmZl9waXhibG9ja2RzcF9pbml0KCZzLT5wZHNwLCBhdmN0eCk7CkBAIC0x MDMwLDEwICsxMDI3LDYgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFWQ29kZWND b250ZXh0ICphdmN0eCkKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsKIAot ICAgIHJldCA9IGluaXRfYnVmZmVycyhtLCBhdmN0eCk7Ci0gICAgaWYgKHJldCA8IDApCi0gICAg ICAgIHJldHVybiByZXQ7Ci0KICAgICBmZl9kY3RfZW5jb2RlX2luaXQocyk7CiAKICAgICBpZiAo cy0+bXBlZ19xdWFudCB8fCBzLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHMlZJREVPKSB7 CkBAIC0xMDQ3LDEzICsxMDQwLDYgQEAgYXZfY29sZCBpbnQgZmZfbXB2X2VuY29kZV9pbml0KEFW Q29kZWNDb250ZXh0ICphdmN0eCkKICAgICAgICAgcy0+ZGN0X3VucXVhbnRpemVfaW50ZXIgPSBz LT5kY3RfdW5xdWFudGl6ZV9tcGVnMV9pbnRlcjsKICAgICB9CiAKLSAgICBpZiAocy0+c2xpY2Vf Y29udGV4dF9jb3VudCA+IDEpIHsKLSAgICAgICAgcy0+cnRwX21vZGUgPSAxOwotCi0gICAgICAg IGlmIChhdmN0eC0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSDI2M1ApCi0gICAgICAgICAgICBz LT5oMjYzX3NsaWNlX3N0cnVjdHVyZWQgPSAxOwotICAgIH0KLQogICAgIGlmIChDT05GSUdfSDI2 M19FTkNPREVSICYmIHMtPm91dF9mb3JtYXQgPT0gRk1UX0gyNjMpIHsKICAgICAgICAgZmZfaDI2 M19lbmNvZGVfaW5pdChtKTsKICNpZiBDT05GSUdfTVNNUEVHNEVOQwpAQCAtMTA2Miw2ICsxMDQ4 LDIzIEBAIGF2X2NvbGQgaW50IGZmX21wdl9lbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZj dHgpCiAjZW5kaWYKICAgICB9CiAKKyAgICByZXQgPSBmZl9tcHZfY29tbW9uX2luaXQocyk7Cisg ICAgaWYgKHJldCA8IDApCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICBpZiAocy0+c2xpY2Vf Y29udGV4dF9jb3VudCA+IDEpIHsKKyAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBzLT5zbGlj ZV9jb250ZXh0X2NvdW50OyArK2kpIHsKKyAgICAgICAgICAgIHMtPnRocmVhZF9jb250ZXh0W2ld LT5ydHBfbW9kZSA9IDE7CisKKyAgICAgICAgICAgIGlmIChhdmN0eC0+Y29kZWNfaWQgPT0gQVZf Q09ERUNfSURfSDI2M1ApCisgICAgICAgICAgICAgICAgcy0+dGhyZWFkX2NvbnRleHRbaV0tPmgy NjNfc2xpY2Vfc3RydWN0dXJlZCA9IDE7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXQgPSBp bml0X2J1ZmZlcnMobSwgYXZjdHgpOworICAgIGlmIChyZXQgPCAwKQorICAgICAgICByZXR1cm4g cmV0OworCiAgICAgcmV0ID0gZmZfcmF0ZV9jb250cm9sX2luaXQobSk7CiAgICAgaWYgKHJldCA8 IDApCiAgICAgICAgIHJldHVybiByZXQ7Ci0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0059-avcodec-mpeg4videoenc-Move-initializations-before-ff.patch" Content-Disposition: attachment; filename*0="0059-avcodec-mpeg4videoenc-Move-initializations-before-ff.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5MjU0NjFlMTVmNjBhNWI0NGZjNTlhY2ZjNzkwZmNiNWE2ZTllMTJmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxOCBNYXIgMjAyNSAxODozMjoxOCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNTkvNzddIGF2Y29kZWMvbXBlZzR2aWRlb2VuYzogTW92ZSBpbml0aWFsaXph dGlvbnMgYmVmb3JlCiBmZl9tcHZfZW5jb2RlX2luaXQoKQoKVGhpcyBhdm9pZHMgcmVseWluZyBv biBmZl91cGRhdGVfZHVwbGljYXRlX2NvbnRleHQoKSB0byBjb3B5CnRoZXNlIGZpZWxkcyB0byB0 aGUgc2xpY2UgY29udGV4dHMuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFu ZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL2l0dWgyNjNlbmMu YyAgICB8ICA5ICsrKysrLS0tLQogbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMgfCAyNiArKysr KysrKysrKysrLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCsp LCAxNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL2l0dWgyNjNlbmMuYyBi L2xpYmF2Y29kZWMvaXR1aDI2M2VuYy5jCmluZGV4IDVhMmFmMDliMTguLjg3NmUxNzgwNzAgMTAw NjQ0Ci0tLSBhL2xpYmF2Y29kZWMvaXR1aDI2M2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvaXR1aDI2 M2VuYy5jCkBAIC04MjYsNiArODI2LDExIEBAIGF2X2NvbGQgdm9pZCBmZl9oMjYzX2VuY29kZV9p bml0KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAgICAgcy0+bWUubXZfcGVuYWx0eSA9 IGZmX2gyNjNfZ2V0X212X3BlbmFsdHkoKTsgLy8gRklYTUUgZXhhY3QgdGFibGUgZm9yIE1TTVBF RzQgJiBILjI2MysKIAorICAgIGZmX2gyNjNkc3BfaW5pdCgmcy0+aDI2M2RzcCk7CisKKyAgICBp ZiAocy0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfTVBFRzQpCisgICAgICAgIHJldHVybjsKKwog ICAgIHMtPmludHJhX2FjX3ZsY19sZW5ndGggICAgID1zLT5pbnRlcl9hY192bGNfbGVuZ3RoICAg ICA9IHVuaV9oMjYzX2ludGVyX3JsX2xlbjsKICAgICBzLT5pbnRyYV9hY192bGNfbGFzdF9sZW5n dGg9cy0+aW50ZXJfYWNfdmxjX2xhc3RfbGVuZ3RoPSB1bmlfaDI2M19pbnRlcl9ybF9sZW4gKyAx MjgqNjQ7CiAgICAgaWYocy0+aDI2M19haWMpewpAQCAtODQyLDggKzg0Nyw2IEBAIGF2X2NvbGQg dm9pZCBmZl9oMjYzX2VuY29kZV9pbml0KE1QVk1haW5FbmNDb250ZXh0ICpjb25zdCBtKQogCiAg ICAgLy8gdXNlIGZjb2RlcyA+MSBvbmx5IGZvciBNUEVHLTQgJiBILjI2MyAmIEguMjYzKyBGSVhN RQogICAgIHN3aXRjaChzLT5jb2RlY19pZCl7Ci0gICAgY2FzZSBBVl9DT0RFQ19JRF9NUEVHNDoK LSAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBBVl9DT0RFQ19JRF9IMjYzUDoKICAgICAgICAgaWYo cy0+dW12cGx1cykKICAgICAgICAgICAgIG0tPmZjb2RlX3RhYiA9IHVtdl9mY29kZV90YWIgKyBN QVhfTVY7CkBAIC04NzUsOCArODc4LDYgQEAgYXZfY29sZCB2b2lkIGZmX2gyNjNfZW5jb2RlX2lu aXQoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0IG0pCiAgICAgICAgIG0tPmVuY29kZV9waWN0dXJl X2hlYWRlciA9IGgyNjNfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOwogICAgIGlmICghcy0+ZW5jb2Rl X21iKQogICAgICAgICBzLT5lbmNvZGVfbWIgPSBoMjYzX2VuY29kZV9tYjsKLQotICAgIGZmX2gy NjNkc3BfaW5pdCgmcy0+aDI2M2RzcCk7CiB9CiAKIHZvaWQgZmZfaDI2M19lbmNvZGVfbWJhKE1w ZWdFbmNDb250ZXh0ICpzKQpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tcGVnNHZpZGVvZW5jLmMg Yi9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYwppbmRleCA0YzMxZTdlOWM4Li5kZGI2OTU4MjI5 IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWc0dmlkZW9lbmMuYworKysgYi9saWJhdmNvZGVj L21wZWc0dmlkZW9lbmMuYwpAQCAtMTMwNSw2ICsxMzA1LDE5IEBAIHN0YXRpYyBhdl9jb2xkIGlu dCBlbmNvZGVfaW5pdChBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiAgICAgbS0+ZW5jb2RlX3BpY3R1 cmVfaGVhZGVyID0gbXBlZzRfZW5jb2RlX3BpY3R1cmVfaGVhZGVyOwogICAgIHMtPmVuY29kZV9t YiAgICAgICAgICAgICA9IG1wZWc0X2VuY29kZV9tYjsKIAorICAgIG0tPmZjb2RlX3RhYiAgICAg ICAgICAgICAgICA9IGZjb2RlX3RhYiArIE1BWF9NVjsKKworICAgIHMtPm1pbl9xY29lZmYgICAg ICAgICAgICAgICA9IC0yMDQ4OworICAgIHMtPm1heF9xY29lZmYgICAgICAgICAgICAgICA9IDIw NDc7CisgICAgcy0+aW50cmFfYWNfdmxjX2xlbmd0aCAgICAgID0gdW5pX21wZWc0X2ludHJhX3Js X2xlbjsKKyAgICBzLT5pbnRyYV9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfbXBlZzRfaW50cmFf cmxfbGVuICsgMTI4ICogNjQ7CisgICAgcy0+aW50ZXJfYWNfdmxjX2xlbmd0aCAgICAgID0gdW5p X21wZWc0X2ludGVyX3JsX2xlbjsKKyAgICBzLT5pbnRlcl9hY192bGNfbGFzdF9sZW5ndGggPSB1 bmlfbXBlZzRfaW50ZXJfcmxfbGVuICsgMTI4ICogNjQ7CisgICAgcy0+bHVtYV9kY192bGNfbGVu Z3RoICAgICAgID0gdW5pX0RDdGFiX2x1bV9sZW47CisgICAgcy0+YWNfZXNjX2xlbmd0aCAgICAg ICAgICAgID0gNyArIDIgKyAxICsgNiArIDEgKyAxMiArIDE7CisgICAgcy0+eV9kY19zY2FsZV90 YWJsZSAgICAgICAgID0gZmZfbXBlZzRfeV9kY19zY2FsZV90YWJsZTsKKyAgICBzLT5jX2RjX3Nj YWxlX3RhYmxlICAgICAgICAgPSBmZl9tcGVnNF9jX2RjX3NjYWxlX3RhYmxlOworCiAgICAgZmZf cXBlbGRzcF9pbml0KCZzLT5xZHNwKTsKICAgICBpZiAoKHJldCA9IGZmX21wdl9lbmNvZGVfaW5p dChhdmN0eCkpIDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsKQEAgLTEzMjIsMTkgKzEzMzUsNiBA QCBzdGF0aWMgYXZfY29sZCBpbnQgZW5jb2RlX2luaXQoQVZDb2RlY0NvbnRleHQgKmF2Y3R4KQog CiAgICAgbTQtPnRpbWVfaW5jcmVtZW50X2JpdHMgICAgID0gYXZfbG9nMihhdmN0eC0+dGltZV9i YXNlLmRlbiAtIDEpICsgMTsKIAotICAgIG0tPmZjb2RlX3RhYiAgICAgICAgICAgICAgICA9IGZj b2RlX3RhYiArIE1BWF9NVjsKLQotICAgIHMtPm1pbl9xY29lZmYgICAgICAgICAgICAgICA9IC0y MDQ4OwotICAgIHMtPm1heF9xY29lZmYgICAgICAgICAgICAgICA9IDIwNDc7Ci0gICAgcy0+aW50 cmFfYWNfdmxjX2xlbmd0aCAgICAgID0gdW5pX21wZWc0X2ludHJhX3JsX2xlbjsKLSAgICBzLT5p bnRyYV9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfbXBlZzRfaW50cmFfcmxfbGVuICsgMTI4ICog NjQ7Ci0gICAgcy0+aW50ZXJfYWNfdmxjX2xlbmd0aCAgICAgID0gdW5pX21wZWc0X2ludGVyX3Js X2xlbjsKLSAgICBzLT5pbnRlcl9hY192bGNfbGFzdF9sZW5ndGggPSB1bmlfbXBlZzRfaW50ZXJf cmxfbGVuICsgMTI4ICogNjQ7Ci0gICAgcy0+bHVtYV9kY192bGNfbGVuZ3RoICAgICAgID0gdW5p X0RDdGFiX2x1bV9sZW47Ci0gICAgcy0+YWNfZXNjX2xlbmd0aCAgICAgICAgICAgID0gNyArIDIg KyAxICsgNiArIDEgKyAxMiArIDE7Ci0gICAgcy0+eV9kY19zY2FsZV90YWJsZSAgICAgICAgID0g ZmZfbXBlZzRfeV9kY19zY2FsZV90YWJsZTsKLSAgICBzLT5jX2RjX3NjYWxlX3RhYmxlICAgICAg ICAgPSBmZl9tcGVnNF9jX2RjX3NjYWxlX3RhYmxlOwotCiAgICAgaWYgKHMtPmF2Y3R4LT5mbGFn cyAmIEFWX0NPREVDX0ZMQUdfR0xPQkFMX0hFQURFUikgewogICAgICAgICBzLT5hdmN0eC0+ZXh0 cmFkYXRhID0gYXZfbWFsbG9jKDEwMjQpOwogICAgICAgICBpZiAoIXMtPmF2Y3R4LT5leHRyYWRh dGEpCi0tIAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0060-avcodec-mpegvideo-Move-me_pre-me_penalty_compensatio.patch" Content-Disposition: attachment; filename*0="0060-avcodec-mpegvideo-Move-me_pre-me_penalty_compensatio.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmMmVkNjcyZjJlZjRmMTU3YTYwYWQxNWNjNjgzM2E5ZjlkNTYxMDhjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAxOSBNYXIgMjAyNSAwMDozOTozMSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNjAvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIG1lX3ByZSwgbWVfcGVu YWx0eV9jb21wZW5zYXRpb24KIHRvIE1QVk1haW5FbmNDdHgKClNpZ25lZC1vZmYtYnk6IEFuZHJl YXMgUmhlaW5oYXJkdCA8YW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPgotLS0KIGxpYmF2 Y29kZWMvbXBlZ3ZpZGVvLmggICAgIHwgMiAtLQogbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMg fCA4ICsrKystLS0tCiBsaWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oICB8IDcgKysrKystLQogMyBm aWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvbGliYXZjb2RlYy9tcGVndmlkZW8uaCBiL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvLmgKaW5kZXgg YzE2ZmIxYzcwMy4uMWZmMjkyNDA1MiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW8u aAorKysgYi9saWJhdmNvZGVjL21wZWd2aWRlby5oCkBAIC0yMjMsOCArMjIzLDYgQEAgdHlwZWRl ZiBzdHJ1Y3QgTXBlZ0VuY0NvbnRleHQgewogICAgIHVpbnQ2NF90IGVuY29kaW5nX2Vycm9yW01Q Vl9NQVhfUExBTkVTXTsKIAogICAgIGludCBtb3Rpb25fZXN0OyAgICAgICAgICAgICAgICAgICAg ICAvLy88IE1FIGFsZ29yaXRobQotICAgIGludCBtZV9wZW5hbHR5X2NvbXBlbnNhdGlvbjsKLSAg ICBpbnQgbWVfcHJlOyAgICAgICAgICAgICAgICAgICAgICAgICAgLy8vPCBwcmVwYXNzIGZvciBt b3Rpb24gZXN0aW1hdGlvbgogICAgIGludCBtdl9kaXI7CiAjZGVmaW5lIE1WX0RJUl9GT1JXQVJE ICAgMQogI2RlZmluZSBNVl9ESVJfQkFDS1dBUkQgIDIKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMv bXBlZ3ZpZGVvX2VuYy5jIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKaW5kZXggZjliOGQ5 NmM4My4uMzMyNDFkNmNiMCAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMK KysrIGIvbGliYXZjb2RlYy9tcGVndmlkZW9fZW5jLmMKQEAgLTM3MzUsMTEgKzM3MzUsMTEgQEAg c3RhdGljIGludCBlbmNvZGVfcGljdHVyZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29u c3QgQVZQYWNrZXQgKnBrdCkKIAogICAgIC8qIEVzdGltYXRlIG1vdGlvbiBmb3IgZXZlcnkgTUIg Ki8KICAgICBpZihzLT5waWN0X3R5cGUgIT0gQVZfUElDVFVSRV9UWVBFX0kpewotICAgICAgICBz LT5sYW1iZGEgID0gKHMtPmxhbWJkYSAgKiBzLT5tZV9wZW5hbHR5X2NvbXBlbnNhdGlvbiArIDEy OCkgPj4gODsKLSAgICAgICAgcy0+bGFtYmRhMiA9IChzLT5sYW1iZGEyICogKGludDY0X3QpIHMt Pm1lX3BlbmFsdHlfY29tcGVuc2F0aW9uICsgMTI4KSA+PiA4OworICAgICAgICBzLT5sYW1iZGEg ID0gKHMtPmxhbWJkYSAgKiBtLT5tZV9wZW5hbHR5X2NvbXBlbnNhdGlvbiArIDEyOCkgPj4gODsK KyAgICAgICAgcy0+bGFtYmRhMiA9IChzLT5sYW1iZGEyICogKGludDY0X3QpIG0tPm1lX3BlbmFs dHlfY29tcGVuc2F0aW9uICsgMTI4KSA+PiA4OwogICAgICAgICBpZiAocy0+cGljdF90eXBlICE9 IEFWX1BJQ1RVUkVfVFlQRV9CKSB7Ci0gICAgICAgICAgICBpZiAoKHMtPm1lX3ByZSAmJiBtLT5s YXN0X25vbl9iX3BpY3RfdHlwZSA9PSBBVl9QSUNUVVJFX1RZUEVfSSkgfHwKLSAgICAgICAgICAg ICAgICBzLT5tZV9wcmUgPT0gMikgeworICAgICAgICAgICAgaWYgKChtLT5tZV9wcmUgJiYgbS0+ bGFzdF9ub25fYl9waWN0X3R5cGUgPT0gQVZfUElDVFVSRV9UWVBFX0kpIHx8CisgICAgICAgICAg ICAgICAgbS0+bWVfcHJlID09IDIpIHsKICAgICAgICAgICAgICAgICBzLT5hdmN0eC0+ZXhlY3V0 ZShzLT5hdmN0eCwgcHJlX2VzdGltYXRlX21vdGlvbl90aHJlYWQsICZzLT50aHJlYWRfY29udGV4 dFswXSwgTlVMTCwgY29udGV4dF9jb3VudCwgc2l6ZW9mKHZvaWQqKSk7CiAgICAgICAgICAgICB9 CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmggYi9saWJh dmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IGEwODI4MzBhYjEuLjM3ZTE1NDZiNTAgMTAwNjQ0 Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIvbGliYXZjb2RlYy9tcGVndmlk ZW9lbmMuaApAQCAtMTAxLDYgKzEwMSw5IEBAIHR5cGVkZWYgc3RydWN0IE1QVk1haW5FbmNDb250 ZXh0IHsKICAgICBpbnQgbGFzdF9ub25fYl9waWN0X3R5cGU7ICAgICAgLy8vPCB1c2VkIGZvciBN UEVHLTQgZ21jIEItZnJhbWVzICYgcmF0ZWNvbnRyb2wKICAgICBSYXRlQ29udHJvbENvbnRleHQg cmNfY29udGV4dDsgLy8vPCBjb250YWlucyBzdHVmZiBvbmx5IGFjY2Vzc2VkIGluIHJhdGVjb250 cm9sLmMKIAorICAgIGludCBtZV9wZW5hbHR5X2NvbXBlbnNhdGlvbjsKKyAgICBpbnQgbWVfcHJl OyAgICAgICAgICAgICAgICAgICAgICAgICAgLy8vPCBwcmVwYXNzIGZvciBtb3Rpb24gZXN0aW1h dGlvbgorCiAgICAgaW50NjRfdCBtYl92YXJfc3VtOyAgICAgICAgICAgIC8vLzwgc3VtIG9mIE1C IHZhcmlhbmNlIGZvciBjdXJyZW50IGZyYW1lCiAgICAgaW50NjRfdCBtY19tYl92YXJfc3VtOyAg ICAgICAgIC8vLzwgbW90aW9uIGNvbXBlbnNhdGVkIE1CIHZhcmlhbmNlIGZvciBjdXJyZW50IGZy YW1lCiAKQEAgLTIxOCw4ICsyMjEsOCBAQCBGRl9NUFZfT1BUX0NNUF9GVU5DLCBcCiB7ICJ6ZXJv IiwgTlVMTCwgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsgLmk2NCA9IEZGX01FX1pFUk8gfSwgMCwg MCwgRkZfTVBWX09QVF9GTEFHUywgLnVuaXQgPSAibW90aW9uX2VzdCIgfSwgXAogeyAiZXB6cyIs IE5VTEwsIDAsIEFWX09QVF9UWVBFX0NPTlNULCB7IC5pNjQgPSBGRl9NRV9FUFpTIH0sIDAsIDAs IEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0gIm1vdGlvbl9lc3QiIH0sIFwKIHsgInhvbmUiLCBO VUxMLCAwLCBBVl9PUFRfVFlQRV9DT05TVCwgeyAuaTY0ID0gRkZfTUVfWE9ORSB9LCAwLCAwLCBG Rl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJtb3Rpb25fZXN0IiB9LCBcCi17Im1lcGMiLCAiTW90 aW9uIGVzdGltYXRpb24gYml0cmF0ZSBwZW5hbHR5IGNvbXBlbnNhdGlvbiAoMS4wID0gMjU2KSIs IEZGX01QVl9PRkZTRVQobWVfcGVuYWx0eV9jb21wZW5zYXRpb24pLCBBVl9PUFRfVFlQRV9JTlQs IHsuaTY0ID0gMjU2IH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgXAot eyJtZXByZSIsICJwcmUgbW90aW9uIGVzdGltYXRpb24iLCBGRl9NUFZfT0ZGU0VUKG1lX3ByZSks IEFWX09QVF9UWVBFX0lOVCwgey5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9P UFRfRkxBR1MgfSwgXAoreyJtZXBjIiwgIk1vdGlvbiBlc3RpbWF0aW9uIGJpdHJhdGUgcGVuYWx0 eSBjb21wZW5zYXRpb24gKDEuMCA9IDI1NikiLCBGRl9NUFZfTUFJTl9PRkZTRVQobWVfcGVuYWx0 eV9jb21wZW5zYXRpb24pLCBBVl9PUFRfVFlQRV9JTlQsIHsuaTY0ID0gMjU2IH0sIElOVF9NSU4s IElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgXAoreyJtZXByZSIsICJwcmUgbW90aW9uIGVz dGltYXRpb24iLCBGRl9NUFZfTUFJTl9PRkZTRVQobWVfcHJlKSwgQVZfT1BUX1RZUEVfSU5ULCB7 Lmk2NCA9IDAgfSwgSU5UX01JTiwgSU5UX01BWCwgRkZfTVBWX09QVF9GTEFHUyB9LCBcCiB7Imlu dHJhX3BlbmFsdHkiLCAiUGVuYWx0eSBmb3IgaW50cmEgYmxvY2tzIGluIGJsb2NrIGRlY2lzaW9u IiwgRkZfTVBWX09GRlNFVChpbnRyYV9wZW5hbHR5KSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9 IDAgfSwgMCwgSU5UX01BWC8yLCBGRl9NUFZfT1BUX0ZMQUdTIH0sIFwKIHsic2NfdGhyZXNob2xk IiwgIlNjZW5lIGNoYW5nZSB0aHJlc2hvbGQiLCAgICAgICAgICAgICAgICAgICAgICAgICAgRkZf TVBWX01BSU5fT0ZGU0VUKHNjZW5lY2hhbmdlX3RocmVzaG9sZCksIEFWX09QVF9UWVBFX0lOVCwg ey5pNjQgPSAwIH0sIElOVF9NSU4sIElOVF9NQVgsIEZGX01QVl9PUFRfRkxBR1MgfSwgXAogCi0t IAoyLjQ1LjIKCg== --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0061-avcodec-mpegvideo-Move-motion_est-to-MotionEstContex.patch" Content-Disposition: attachment; filename*0="0061-avcodec-mpegvideo-Move-motion_est-to-MotionEstContex.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA2MjMzMGJhNjE5YjUyNmZmNzMwNDU3ZTVmNjA4NGI5MTQzMzQyNWZmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAxOSBNYXIgMjAyNSAwMDo0ODozMyArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNjEvNzddIGF2Y29kZWMvbXBlZ3ZpZGVvOiBNb3ZlIG1vdGlvbl9lc3QgdG8g TW90aW9uRXN0Q29udGV4dAoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRy ZWFzLnJoZWluaGFyZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZjb2RlYy9tb3Rpb25fZXN0LmMg ICB8IDcgKysrKy0tLQogbGliYXZjb2RlYy9tb3Rpb25fZXN0LmggICB8IDEgKwogbGliYXZjb2Rl Yy9tcGVndmlkZW8uaCAgICB8IDEgLQogbGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaCB8IDIgKy0K IGxpYmF2Y29kZWMvc25vd2VuYy5jICAgICAgfCAyICstCiBsaWJhdmNvZGVjL3N2cTFlbmMuYyAg ICAgIHwgNSArLS0tLQogNiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEwIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbW90aW9uX2VzdC5jIGIvbGliYXZjb2Rl Yy9tb3Rpb25fZXN0LmMKaW5kZXggN2MwOGZlNTNlYi4uODgxNjRkZTZhNSAxMDA2NDQKLS0tIGEv bGliYXZjb2RlYy9tb3Rpb25fZXN0LmMKKysrIGIvbGliYXZjb2RlYy9tb3Rpb25fZXN0LmMKQEAg LTkxOSw3ICs5MTksNyBAQCB2b2lkIGZmX2VzdGltYXRlX3BfZnJhbWVfbW90aW9uKE1wZWdFbmND b250ZXh0ICogcywKICAgICBzLT5tYl92YXIgW3MtPm1iX3N0cmlkZSAqIG1iX3kgKyBtYl94XSA9 ICh2YXJjKzEyOCk+Pjg7CiAgICAgYy0+bWJfdmFyX3N1bV90ZW1wICs9ICh2YXJjKzEyOCk+Pjg7 CiAKLSAgICBpZiAocy0+bW90aW9uX2VzdCAhPSBGRl9NRV9aRVJPKSB7CisgICAgaWYgKGMtPm1v dGlvbl9lc3QgIT0gRkZfTUVfWkVSTykgewogICAgICAgICBjb25zdCBpbnQgbW90X3N0cmlkZSA9 IHMtPmI4X3N0cmlkZTsKICAgICAgICAgY29uc3QgaW50IG1vdF94eSA9IHMtPmJsb2NrX2luZGV4 WzBdOwogCkBAIC0xMTI3LDcgKzExMjcsNyBAQCBzdGF0aWMgaW50IGVzdGltYXRlX21vdGlvbl9i KE1wZWdFbmNDb250ZXh0ICpzLCBpbnQgbWJfeCwgaW50IG1iX3ksCiAKICAgICBnZXRfbGltaXRz KHMsIDE2Km1iX3gsIDE2Km1iX3ksIDEpOwogCi0gICAgaWYgKHMtPm1vdGlvbl9lc3QgIT0gRkZf TUVfWkVSTykgeworICAgIGlmIChjLT5tb3Rpb25fZXN0ICE9IEZGX01FX1pFUk8pIHsKICAgICAg ICAgUF9MRUZUWzBdID0gbXZfdGFibGVbbW90X3h5IC0gMV1bMF07CiAgICAgICAgIFBfTEVGVFsx XSA9IG12X3RhYmxlW21vdF94eSAtIDFdWzFdOwogCkBAIC0xNTk5LDggKzE1OTksOSBAQCB2b2lk IGZmX2VzdGltYXRlX2JfZnJhbWVfbW90aW9uKE1wZWdFbmNDb250ZXh0ICogcywKIGludCBmZl9n ZXRfYmVzdF9mY29kZShNUFZNYWluRW5jQ29udGV4dCAqY29uc3QgbSwgY29uc3QgaW50MTZfdCAo Km12X3RhYmxlKVsyXSwgaW50IHR5cGUpCiB7CiAgICAgTXBlZ0VuY0NvbnRleHQgKmNvbnN0IHMg PSAmbS0+czsKKyAgICBNb3Rpb25Fc3RDb250ZXh0ICpjb25zdCBjID0gJnMtPm1lOwogCi0gICAg aWYgKHMtPm1vdGlvbl9lc3QgIT0gRkZfTUVfWkVSTykgeworICAgIGlmIChjLT5tb3Rpb25fZXN0 ICE9IEZGX01FX1pFUk8pIHsKICAgICAgICAgaW50IHNjb3JlWzhdOwogICAgICAgICBpbnQgaSwg eSwgcmFuZ2U9IHMtPmF2Y3R4LT5tZV9yYW5nZSA/IHMtPmF2Y3R4LT5tZV9yYW5nZSA6IChJTlRf TUFYLzIpOwogICAgICAgICBjb25zdCB1aW50OF90ICogZmNvZGVfdGFiID0gbS0+ZmNvZGVfdGFi OwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9tb3Rpb25fZXN0LmggYi9saWJhdmNvZGVjL21vdGlv bl9lc3QuaAppbmRleCBkOGEyY2FiM2EwLi41ZmE5NjE2MWM2IDEwMDY0NAotLS0gYS9saWJhdmNv ZGVjL21vdGlvbl9lc3QuaAorKysgYi9saWJhdmNvZGVjL21vdGlvbl9lc3QuaApAQCAtNDgsNiAr NDgsNyBAQCB0eXBlZGVmIHN0cnVjdCBNUFZNYWluRW5jQ29udGV4dCBNUFZNYWluRW5jQ29udGV4 dDsKICAqLwogdHlwZWRlZiBzdHJ1Y3QgTW90aW9uRXN0Q29udGV4dCB7CiAgICAgQVZDb2RlY0Nv bnRleHQgKmF2Y3R4OworICAgIGludCBtb3Rpb25fZXN0OyAgICAgICAgICAgICAgICAgLy8vPCBN RSBhbGdvcml0aG0KICAgICBpbnQgc2tpcDsgICAgICAgICAgICAgICAgICAgICAgIC8vLzwgc2V0 IGlmIE1FIGlzIHNraXBwZWQgZm9yIHRoZSBjdXJyZW50IE1CCiAgICAgaW50IGNvX2xvY2F0ZWRf bXZbNF1bMl07ICAgICAgICAvLy88IG12IGZyb20gbGFzdCBQLWZyYW1lIGZvciBkaXJlY3QgbW9k ZSBNRQogICAgIGludCBkaXJlY3RfYmFzaXNfbXZbNF1bMl07CmRpZmYgLS1naXQgYS9saWJhdmNv ZGVjL21wZWd2aWRlby5oIGIvbGliYXZjb2RlYy9tcGVndmlkZW8uaAppbmRleCAxZmYyOTI0MDUy Li44NTIyN2ZkYjhmIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL21wZWd2aWRlby5oCisrKyBiL2xp YmF2Y29kZWMvbXBlZ3ZpZGVvLmgKQEAgLTIyMiw3ICsyMjIsNiBAQCB0eXBlZGVmIHN0cnVjdCBN cGVnRW5jQ29udGV4dCB7CiAgICAgdWludDhfdCAqbWJfbWVhbjsgICAgICAgICAgIC8vLzwgVGFi bGUgZm9yIE1CIGx1bWluYW5jZQogICAgIHVpbnQ2NF90IGVuY29kaW5nX2Vycm9yW01QVl9NQVhf UExBTkVTXTsKIAotICAgIGludCBtb3Rpb25fZXN0OyAgICAgICAgICAgICAgICAgICAgICAvLy88 IE1FIGFsZ29yaXRobQogICAgIGludCBtdl9kaXI7CiAjZGVmaW5lIE1WX0RJUl9GT1JXQVJEICAg MQogI2RlZmluZSBNVl9ESVJfQkFDS1dBUkQgIDIKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbXBl Z3ZpZGVvZW5jLmggYi9saWJhdmNvZGVjL21wZWd2aWRlb2VuYy5oCmluZGV4IDM3ZTE1NDZiNTAu LmJjOGEzZTgwZDUgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvbXBlZ3ZpZGVvZW5jLmgKKysrIGIv bGliYXZjb2RlYy9tcGVndmlkZW9lbmMuaApAQCAtMjE3LDcgKzIxNyw3IEBAIEZGX01QVl9PUFRf Q01QX0ZVTkMsIFwKIAogI2RlZmluZSBGRl9NUFZfQ09NTU9OX01PVElPTl9FU1RfT1BUUyBcCiB7 ICJtdjAiLCAgICAgICAgICAgICJhbHdheXMgdHJ5IGEgbWIgd2l0aCBtdj08MCwwPiIsICAgICAg ICAgICAgICAgICAgICAgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsgLmk2NCA9IEZGX01QVl9GTEFH X01WMCB9LCAgICAwLCAwLCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJtcHZfZmxhZ3MiIH0s XAoteyJtb3Rpb25fZXN0IiwgIm1vdGlvbiBlc3RpbWF0aW9uIGFsZ29yaXRobSIsICAgICAgICAg ICAgICAgICAgICAgICBGRl9NUFZfT0ZGU0VUKG1vdGlvbl9lc3QpLCBBVl9PUFRfVFlQRV9JTlQs IHsuaTY0ID0gRkZfTUVfRVBaUyB9LCBGRl9NRV9aRVJPLCBGRl9NRV9YT05FLCBGRl9NUFZfT1BU X0ZMQUdTLCAudW5pdCA9ICJtb3Rpb25fZXN0IiB9LCAgIFwKK3sibW90aW9uX2VzdCIsICJtb3Rp b24gZXN0aW1hdGlvbiBhbGdvcml0aG0iLCAgICAgICAgICAgICAgICAgICAgICAgRkZfTVBWX09G RlNFVChtZS5tb3Rpb25fZXN0KSwgQVZfT1BUX1RZUEVfSU5ULCB7Lmk2NCA9IEZGX01FX0VQWlMg fSwgRkZfTUVfWkVSTywgRkZfTUVfWE9ORSwgRkZfTVBWX09QVF9GTEFHUywgLnVuaXQgPSAibW90 aW9uX2VzdCIgfSwgICBcCiB7ICJ6ZXJvIiwgTlVMTCwgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsg Lmk2NCA9IEZGX01FX1pFUk8gfSwgMCwgMCwgRkZfTVBWX09QVF9GTEFHUywgLnVuaXQgPSAibW90 aW9uX2VzdCIgfSwgXAogeyAiZXB6cyIsIE5VTEwsIDAsIEFWX09QVF9UWVBFX0NPTlNULCB7IC5p NjQgPSBGRl9NRV9FUFpTIH0sIDAsIDAsIEZGX01QVl9PUFRfRkxBR1MsIC51bml0ID0gIm1vdGlv bl9lc3QiIH0sIFwKIHsgInhvbmUiLCBOVUxMLCAwLCBBVl9PUFRfVFlQRV9DT05TVCwgeyAuaTY0 ID0gRkZfTUVfWE9ORSB9LCAwLCAwLCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJtb3Rpb25f ZXN0IiB9LCBcCmRpZmYgLS1naXQgYS9saWJhdmNvZGVjL3Nub3dlbmMuYyBiL2xpYmF2Y29kZWMv c25vd2VuYy5jCmluZGV4IGU2Y2YyYTI5MGMuLmZjMmE1NmE4MDggMTAwNjQ0Ci0tLSBhL2xpYmF2 Y29kZWMvc25vd2VuYy5jCisrKyBiL2xpYmF2Y29kZWMvc25vd2VuYy5jCkBAIC0xODY2LDcgKzE4 NjYsNyBAQCBzdGF0aWMgaW50IGVuY29kZV9mcmFtZShBVkNvZGVjQ29udGV4dCAqYXZjdHgsIEFW UGFja2V0ICpwa3QsCiAgICAgICAgIG1wdi0+Yjhfc3RyaWRlICA9IDIgKiBtcHYtPm1iX3dpZHRo ICsgMTsKICAgICAgICAgbXB2LT5mX2NvZGUgICAgID0gMTsKICAgICAgICAgbXB2LT5waWN0X3R5 cGUgID0gcGljLT5waWN0X3R5cGU7Ci0gICAgICAgIG1wdi0+bW90aW9uX2VzdCA9IGVuYy0+bW90 aW9uX2VzdDsKKyAgICAgICAgbXB2LT5tZS5tb3Rpb25fZXN0ID0gZW5jLT5tb3Rpb25fZXN0Owog ICAgICAgICBtcHYtPm1lLnNjZW5lX2NoYW5nZV9zY29yZSA9IDA7CiAgICAgICAgIG1wdi0+bWUu ZGlhX3NpemUgPSBhdmN0eC0+ZGlhX3NpemU7CiAgICAgICAgIG1wdi0+cXVhcnRlcl9zYW1wbGUg ID0gKHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfUVBFTCkhPTA7CmRpZmYgLS1naXQg YS9saWJhdmNvZGVjL3N2cTFlbmMuYyBiL2xpYmF2Y29kZWMvc3ZxMWVuYy5jCmluZGV4IDQwZTNm ZDAwNDUuLjY1MmRjMTFiMDMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvc3ZxMWVuYy5jCisrKyBi L2xpYmF2Y29kZWMvc3ZxMWVuYy5jCkBAIC05Niw4ICs5Niw2IEBAIHR5cGVkZWYgc3RydWN0IFNW UTFFbmNDb250ZXh0IHsKIAogICAgIHVpbnQ4X3QgKnNjcmF0Y2hidWY7CiAKLSAgICBpbnQgbW90 aW9uX2VzdDsKLQogICAgIFNWUTFFbmNEU1BDb250ZXh0IHN2cTFlbmNkc3A7CiB9IFNWUTFFbmND b250ZXh0OwogCkBAIC0zMzksNyArMzM3LDYgQEAgc3RhdGljIGludCBzdnExX2VuY29kZV9wbGFu ZShTVlExRW5jQ29udGV4dCAqcywgaW50IHBsYW5lLAogICAgICAgICBzLT5tLmI4X3N0cmlkZSAg ICAgICAgICAgICAgICAgICAgID0gMiAqIHMtPm0ubWJfd2lkdGggKyAxOwogICAgICAgICBzLT5t LmZfY29kZSAgICAgICAgICAgICAgICAgICAgICAgID0gMTsKICAgICAgICAgcy0+bS5waWN0X3R5 cGUgICAgICAgICAgICAgICAgICAgICA9IHMtPnBpY3RfdHlwZTsKLSAgICAgICAgcy0+bS5tb3Rp b25fZXN0ICAgICAgICAgICAgICAgICAgICA9IHMtPm1vdGlvbl9lc3Q7CiAgICAgICAgIHMtPm0u bWUuc2NlbmVfY2hhbmdlX3Njb3JlICAgICAgICAgPSAwOwogICAgICAgICAvLyBzLT5tLm91dF9m b3JtYXQgICAgICAgICAgICAgICAgICAgID0gRk1UX0gyNjM7CiAgICAgICAgIC8vIHMtPm0udW5y ZXN0cmljdGVkX212ICAgICAgICAgICAgICAgPSAxOwpAQCAtNzE5LDcgKzcxNiw3IEBAIHN0YXRp YyBpbnQgc3ZxMV9lbmNvZGVfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVlBhY2tldCAq cGt0LAogI2RlZmluZSBPRkZTRVQoeCkgb2Zmc2V0b2Yoc3RydWN0IFNWUTFFbmNDb250ZXh0LCB4 KQogI2RlZmluZSBWRSBBVl9PUFRfRkxBR19WSURFT19QQVJBTSB8IEFWX09QVF9GTEFHX0VOQ09E SU5HX1BBUkFNCiBzdGF0aWMgY29uc3QgQVZPcHRpb24gb3B0aW9uc1tdID0gewotICAgIHsgIm1v dGlvbi1lc3QiLCAiTW90aW9uIGVzdGltYXRpb24gYWxnb3JpdGhtIiwgT0ZGU0VUKG1vdGlvbl9l c3QpLCBBVl9PUFRfVFlQRV9JTlQsIHsgLmk2NCA9IEZGX01FX0VQWlMgfSwgRkZfTUVfWkVSTywg RkZfTUVfWE9ORSwgVkUsIC51bml0ID0gIm1vdGlvbi1lc3QifSwKKyAgICB7ICJtb3Rpb24tZXN0 IiwgIk1vdGlvbiBlc3RpbWF0aW9uIGFsZ29yaXRobSIsIE9GRlNFVChtLm1lLm1vdGlvbl9lc3Qp LCBBVl9PUFRfVFlQRV9JTlQsIHsgLmk2NCA9IEZGX01FX0VQWlMgfSwgRkZfTUVfWkVSTywgRkZf TUVfWE9ORSwgVkUsIC51bml0ID0gIm1vdGlvbi1lc3QifSwKICAgICAgICAgeyAiemVybyIsIE5V TEwsIDAsIEFWX09QVF9UWVBFX0NPTlNULCB7IC5pNjQgPSBGRl9NRV9aRVJPIH0sIDAsIDAsIEZG X01QVl9PUFRfRkxBR1MsIC51bml0ID0gIm1vdGlvbi1lc3QiIH0sCiAgICAgICAgIHsgImVwenMi LCBOVUxMLCAwLCBBVl9PUFRfVFlQRV9DT05TVCwgeyAuaTY0ID0gRkZfTUVfRVBaUyB9LCAwLCAw LCBGRl9NUFZfT1BUX0ZMQUdTLCAudW5pdCA9ICJtb3Rpb24tZXN0IiB9LAogICAgICAgICB7ICJ4 b25lIiwgTlVMTCwgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsgLmk2NCA9IEZGX01FX1hPTkUgfSwg MCwgMCwgRkZfTVBWX09QVF9GTEFHUywgLnVuaXQgPSAibW90aW9uLWVzdCIgfSwKLS0gCjIuNDUu MgoK --------------PzUc6nAvbCeik5GlmZwMxh8X Content-Type: text/x-patch; charset=UTF-8; name="0062-avcodec-motion_est-Don-t-use-MpegEncContext.avctx.patch" Content-Disposition: attachment; filename*0="0062-avcodec-motion_est-Don-t-use-MpegEncContext.avctx.patch" Content-Transfer-Encoding: base64 RnJvbSBiNmEwMWVjMDkzM2ExNjlmMjA0YmIyMjUwOTEwMzJiMDNkMThlNzgxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogV2VkLCAxOSBNYXIgMjAyNSAwMToyNjoxOCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggNjIvNzddIGF2Y29kZWMvbW90aW9uX2VzdDogRG9uJ3QgdXNlIE1wZWdFbmND b250ZXh0LmF2Y3R4CgpTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMu cmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KLS0tCiBsaWJhdmNvZGVjL21vdGlvbl9lc3QuYyAgICAg ICAgICB8IDI5ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCiBsaWJhdmNvZGVjL21vdGlv bl9lc3RfdGVtcGxhdGUuYyB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMo KyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbW90aW9uX2VzdC5j IGIvbGliYXZjb2RlYy9tb3Rpb25fZXN0LmMKaW5kZXggODgxNjRkZTZhNS4uZmZhZDNkYmM3OSAx MDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tb3Rpb25fZXN0LmMKKysrIGIvbGliYXZjb2RlYy9tb3Rp b25fZXN0LmMKQEAgLTM3Miw3ICszNzIsNyBAQCB2b2lkIGZmX21lX2luaXRfcGljKE1wZWdFbmND b250ZXh0ICpzKQogICAgIE1vdGlvbkVzdENvbnRleHQgKiBjb25zdCBjPSAmcy0+bWU7CiAKIC8q RklYTUUgcy0+bm9fcm91bmRpbmcgYl90eXBlKi8KLSAgICBpZiAocy0+YXZjdHgtPmZsYWdzICYg QVZfQ09ERUNfRkxBR19RUEVMKSB7CisgICAgaWYgKGMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVD X0ZMQUdfUVBFTCkgewogICAgICAgICBjLT5xcGVsX2F2ZyA9IHMtPnFkc3AuYXZnX3FwZWxfcGl4 ZWxzX3RhYjsKICAgICAgICAgaWYgKHMtPm5vX3JvdW5kaW5nKQogICAgICAgICAgICAgYy0+cXBl bF9wdXQgPSBzLT5xZHNwLnB1dF9ub19ybmRfcXBlbF9waXhlbHNfdGFiOwpAQCAtOTg0LDcgKzk4 NCw3IEBAIHZvaWQgZmZfZXN0aW1hdGVfcF9mcmFtZV9tb3Rpb24oTXBlZ0VuY0NvbnRleHQgKiBz LAogICAgICAgICAgICAgbXggKj0gMSA8PCBzaGlmdDsKICAgICAgICAgICAgIG15ICo9IDEgPDwg c2hpZnQ7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKChzLT5hdmN0eC0+ZmxhZ3MgJiBBVl9DT0RF Q19GTEFHXzRNVikKKyAgICAgICAgaWYgKChjLT5hdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFH XzRNVikKICAgICAgICAgICAgJiYgIWMtPnNraXAgJiYgdmFyYz41MDw8OCAmJiB2YXJkPjEwPDw4 KXsKICAgICAgICAgICAgIGlmKGgyNjNfbXY0X3NlYXJjaChzLCBteCwgbXksIHNoaWZ0KSA8IElO VF9NQVgpCiAgICAgICAgICAgICAgICAgbWJfdHlwZXw9Q0FORElEQVRFX01CX1RZUEVfSU5URVI0 VjsKQEAgLTk5Miw3ICs5OTIsNyBAQCB2b2lkIGZmX2VzdGltYXRlX3BfZnJhbWVfbW90aW9uKE1w ZWdFbmNDb250ZXh0ICogcywKICAgICAgICAgICAgIHNldF9wX212X3RhYmxlcyhzLCBteCwgbXks IDApOwogICAgICAgICB9ZWxzZQogICAgICAgICAgICAgc2V0X3BfbXZfdGFibGVzKHMsIG14LCBt eSwgMSk7Ci0gICAgICAgIGlmICgocy0+YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR19JTlRF UkxBQ0VEX01FKQorICAgICAgICBpZiAoKGMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdf SU5URVJMQUNFRF9NRSkKICAgICAgICAgICAgJiYgIWMtPnNraXApeyAvL0ZJWE1FIHZhcmMvZCBj aGVja3MKICAgICAgICAgICAgIGlmKGludGVybGFjZWRfc2VhcmNoKHMsIDAsIHMtPnBfZmllbGRf bXZfdGFibGUsIHMtPnBfZmllbGRfc2VsZWN0X3RhYmxlLCBteCwgbXksIDApIDwgSU5UX01BWCkK ICAgICAgICAgICAgICAgICBtYl90eXBlIHw9IENBTkRJREFURV9NQl9UWVBFX0lOVEVSX0k7CkBA IC0xMDA1LDcgKzEwMDUsNyBAQCB2b2lkIGZmX2VzdGltYXRlX3BfZnJhbWVfbW90aW9uKE1wZWdF bmNDb250ZXh0ICogcywKICAgICAgICAgaWYoYy0+YXZjdHgtPm1lX3N1Yl9jbXAgIT0gYy0+YXZj dHgtPm1iX2NtcCAmJiAhYy0+c2tpcCkKICAgICAgICAgICAgIGRtaW49IGdldF9tYl9zY29yZShz LCBteCwgbXksIDAsIDAsIDAsIDE2LCAxKTsKIAotICAgICAgICBpZiAoKHMtPmF2Y3R4LT5mbGFn cyAmIEFWX0NPREVDX0ZMQUdfNE1WKQorICAgICAgICBpZiAoKGMtPmF2Y3R4LT5mbGFncyAmIEFW X0NPREVDX0ZMQUdfNE1WKQogICAgICAgICAgICAmJiAhYy0+c2tpcCAmJiB2YXJjPjUwPDw4ICYm IHZhcmQ+MTA8PDgpewogICAgICAgICAgICAgaW50IGRtaW40PSBoMjYzX212NF9zZWFyY2gocywg bXgsIG15LCBzaGlmdCk7CiAgICAgICAgICAgICBpZihkbWluNCA8IGRtaW4pewpAQCAtMTAxMyw3 ICsxMDEzLDcgQEAgdm9pZCBmZl9lc3RpbWF0ZV9wX2ZyYW1lX21vdGlvbihNcGVnRW5jQ29udGV4 dCAqIHMsCiAgICAgICAgICAgICAgICAgZG1pbj1kbWluNDsKICAgICAgICAgICAgIH0KICAgICAg ICAgfQotICAgICAgICBpZiAoKHMtPmF2Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfSU5URVJM QUNFRF9NRSkKKyAgICAgICAgaWYgKChjLT5hdmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX0lO VEVSTEFDRURfTUUpCiAgICAgICAgICAgICYmICFjLT5za2lwKXsgLy9GSVhNRSB2YXJjL2QgY2hl Y2tzCiAgICAgICAgICAgICBpbnQgZG1pbl9pPSBpbnRlcmxhY2VkX3NlYXJjaChzLCAwLCBzLT5w X2ZpZWxkX212X3RhYmxlLCBzLT5wX2ZpZWxkX3NlbGVjdF90YWJsZSwgbXgsIG15LCAwKTsKICAg ICAgICAgICAgIGlmKGRtaW5faSA8IGRtaW4pewpAQCAtMTI2OSwxMCArMTI2OSwxMCBAQCBzdGF0 aWMgaW5saW5lIGludCBiaWRpcl9yZWZpbmUoTXBlZ0VuY0NvbnRleHQgKiBzLCBpbnQgbWJfeCwg aW50IG1iX3kpCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWRfYngsIHByZWRfYnksCiAg ICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDE2KTsKIAotICAgIGlmKHMtPmF2Y3R4LT5iaWRp cl9yZWZpbmUpeworICAgIGlmIChjLT5hdmN0eC0+YmlkaXJfcmVmaW5lKSB7CiAgICAgICAgIGlu dCBlbmQ7CiAgICAgICAgIHN0YXRpYyBjb25zdCB1aW50OF90IGxpbWl0dGFiWzVdPXswLDgsMzIs NjQsODB9OwotICAgICAgICBjb25zdCBpbnQgbGltaXQ9IGxpbWl0dGFiW3MtPmF2Y3R4LT5iaWRp cl9yZWZpbmVdOworICAgICAgICBjb25zdCBpbnQgbGltaXQgPSBsaW1pdHRhYltjLT5hdmN0eC0+ YmlkaXJfcmVmaW5lXTsKICAgICAgICAgc3RhdGljIGNvbnN0IGludDhfdCB2ZWN0W11bNF09ewog eyAwLCAwLCAwLCAxfSwgeyAwLCAwLCAwLC0xfSwgeyAwLCAwLCAxLCAwfSwgeyAwLCAwLC0xLCAw fSwgeyAwLCAxLCAwLCAwfSwgeyAwLC0xLCAwLCAwfSwgeyAxLCAwLCAwLCAwfSwgey0xLCAwLCAw LCAwfSwKIApAQCAtMTUyNiwxMyArMTUyNiwxMyBAQCB2b2lkIGZmX2VzdGltYXRlX2JfZnJhbWVf bW90aW9uKE1wZWdFbmNDb250ZXh0ICogcywKICAgICBjLT5za2lwPTA7CiAgICAgYm1pbiA9IGVz dGltYXRlX21vdGlvbl9iKHMsIG1iX3gsIG1iX3ksIHMtPmJfYmFja19tdl90YWJsZSwgMiwgcy0+ Yl9jb2RlKSArCiAgICAgICAgICAgIDIgKiBjLT5tYl9wZW5hbHR5X2ZhY3RvcjsKLSAgICBmZl9k bG9nKHMtPmF2Y3R4LCAiICVkICVkICIsIHMtPmJfZm9yd19tdl90YWJsZVt4eV1bMF0sIHMtPmJf Zm9yd19tdl90YWJsZVt4eV1bMV0pOworICAgIGZmX2Rsb2coYy0+YXZjdHgsICIgJWQgJWQgIiwg cy0+Yl9mb3J3X212X3RhYmxlW3h5XVswXSwgcy0+Yl9mb3J3X212X3RhYmxlW3h5XVsxXSk7CiAK ICAgICBjLT5za2lwPTA7CiAgICAgZmJtaW49IGJpZGlyX3JlZmluZShzLCBtYl94LCBtYl95KSAr IGMtPm1iX3BlbmFsdHlfZmFjdG9yOwotICAgIGZmX2Rsb2cocy0+YXZjdHgsICIlZCAlZCAlZCAl ZFxuIiwgZG1pbiwgZm1pbiwgYm1pbiwgZmJtaW4pOworICAgIGZmX2Rsb2coYy0+YXZjdHgsICIl ZCAlZCAlZCAlZFxuIiwgZG1pbiwgZm1pbiwgYm1pbiwgZmJtaW4pOwogCi0gICAgaWYgKHMtPmF2 Y3R4LT5mbGFncyAmIEFWX0NPREVDX0ZMQUdfSU5URVJMQUNFRF9NRSkgeworICAgIGlmIChjLT5h dmN0eC0+ZmxhZ3MgJiBBVl9DT0RFQ19GTEFHX0lOVEVSTEFDRURfTUUpIHsKIC8vRklYTUUgbWIg dHlwZSBwZW5hbHR5CiAgICAgICAgIGMtPnNraXA9MDsKICAgICAgICAgYy0+Y3VycmVudF9tdl9w ZW5hbHR5PSBjLT5tdl9wZW5hbHR5W3MtPmZfY29kZV0gKyBNQVhfRE1WOwpAQCAtMTYwMywxNCAr MTYwMywxNSBAQCBpbnQgZmZfZ2V0X2Jlc3RfZmNvZGUoTVBWTWFpbkVuY0NvbnRleHQgKmNvbnN0 IG0sIGNvbnN0IGludDE2X3QgKCptdl90YWJsZSlbMl0sCiAKICAgICBpZiAoYy0+bW90aW9uX2Vz dCAhPSBGRl9NRV9aRVJPKSB7CiAgICAgICAgIGludCBzY29yZVs4XTsKLSAgICAgICAgaW50IGks IHksIHJhbmdlPSBzLT5hdmN0eC0+bWVfcmFuZ2UgPyBzLT5hdmN0eC0+bWVfcmFuZ2UgOiAoSU5U X01BWC8yKTsKKyAgICAgICAgaW50IGksIHksIHJhbmdlID0gYy0+YXZjdHgtPm1lX3JhbmdlID8g Yy0+YXZjdHgtPm1lX3JhbmdlIDogKElOVF9NQVgvMik7CiAgICAgICAgIGNvbnN0IHVpbnQ4X3Qg KiBmY29kZV90YWIgPSBtLT5mY29kZV90YWI7CiAgICAgICAgIGludCBiZXN0X2Zjb2RlPS0xOwog ICAgICAgICBpbnQgYmVzdF9zY29yZT0tMTAwMDAwMDA7CiAKICAgICAgICAgaWYgKHMtPm1zbXBl ZzRfdmVyc2lvbiAhPSBNU01QNF9VTlVTRUQpCiAgICAgICAgICAgICByYW5nZT0gRkZNSU4ocmFu Z2UsIDE2KTsKLSAgICAgICAgZWxzZSBpZihzLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVH MlZJREVPICYmIHMtPmF2Y3R4LT5zdHJpY3Rfc3RkX2NvbXBsaWFuY2UgPj0gRkZfQ09NUExJQU5D RV9OT1JNQUwpCisgICAgICAgIGVsc2UgaWYgKHMtPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX01Q RUcyVklERU8gJiYKKyAgICAgICAgICAgICAgICAgYy0+YXZjdHgtPnN0cmljdF9zdGRfY29tcGxp YW5jZSA+PSBGRl9DT01QTElBTkNFX05PUk1BTCkKICAgICAgICAgICAgIHJhbmdlPSBGRk1JTihy YW5nZSwgMjU2KTsKIAogICAgICAgICBmb3IoaT0wOyBpPDg7IGkrKykgc2NvcmVbaV09IHMtPm1i X251bSooOC1pKTsKQEAgLTE2NjEsMTEgKzE2NjIsMTEgQEAgdm9pZCBmZl9maXhfbG9uZ19wX212 cyhNcGVnRW5jQ29udGV4dCAqIHMsIGludCB0eXBlKQogICAgIHJhbmdlID0gKCgocy0+b3V0X2Zv cm1hdCA9PSBGTVRfTVBFRzEgfHwgcy0+bXNtcGVnNF92ZXJzaW9uICE9IE1TTVA0X1VOVVNFRCkg PyA4IDogMTYpIDw8IGZfY29kZSk7CiAKICAgICBhdl9hc3NlcnQwKHJhbmdlIDw9IDE2IHx8IHMt Pm1zbXBlZzRfdmVyc2lvbiA9PSBNU01QNF9VTlVTRUQpOwotICAgIGF2X2Fzc2VydDAocmFuZ2Ug PD0yNTYgfHwgIShzLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9NUEVHMlZJREVPICYmIHMtPmF2 Y3R4LT5zdHJpY3Rfc3RkX2NvbXBsaWFuY2UgPj0gRkZfQ09NUExJQU5DRV9OT1JNQUwpKTsKKyAg ICBhdl9hc3NlcnQwKHJhbmdlIDw9MjU2IHx8ICEocy0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURf TVBFRzJWSURFTyAmJiBjLT5hdmN0eC0+c3RyaWN0X3N0ZF9jb21wbGlhbmNlID49IEZGX0NPTVBM SUFOQ0VfTk9STUFMKSk7CiAKICAgICBpZihjLT5hdmN0eC0+bWVfcmFuZ2UgJiYgcmFuZ2UgPiBj LT5hdmN0eC0+bWVfcmFuZ2UpIHJhbmdlPSBjLT5hdmN0eC0+bWVfcmFuZ2U7CiAKLSAgICBpZiAo cy0+YXZjdHgtPmZsYWdzICYgQVZfQ09ERUNfRkxBR180TVYpIHsKKyAgICBpZiAoYy0+YXZjdHgt PmZsYWdzICYgQVZfQ09ERUNfRkxBR180TVYpIHsKICAgICAgICAgY29uc3QgaW50IHdyYXA9IHMt PmI4X3N0cmlkZTsKIAogICAgICAgICAvKiBjbGlwIC8gY29udmVydCB0byBpbnRyYSA4eDggdHlw ZSBNVnMgKi8KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvbW90aW9uX2VzdF90ZW1wbGF0ZS5jIGIv bGliYXZjb2RlYy9tb3Rpb25fZXN0X3RlbXBsYXRlLmMKaW5kZXggYjI3MDFhYTMyZS4uNTQ5OGY5 Yzk4MiAxMDA2NDQKLS0tIGEvbGliYXZjb2RlYy9tb3Rpb25fZXN0X3RlbXBsYXRlLmMKKysrIGIv bGliYXZjb2RlYy9tb3Rpb25fZXN0X3RlbXBsYXRlLmMKQEAgLTkwNiw3ICs5MDYsNyBAQCBzdGF0 aWMgYXZfYWx3YXlzX2lubGluZSBpbnQgZXB6c19tb3Rpb25fc2VhcmNoX2ludGVybmFsKE1wZWdF bmNDb250ZXh0ICogcywgaW50CiAgICAgICAgIENIRUNLX0NMSVBQRURfTVYoKGxhc3RfbXZbcmVm X212X3h5XVswXSpyZWZfbXZfc2NhbGUgKyAoMTw8MTUpKT4+MTYsCiAgICAgICAgICAgICAgICAg ICAgICAgICAobGFzdF9tdltyZWZfbXZfeHldWzFdKnJlZl9tdl9zY2FsZSArICgxPDwxNSkpPj4x NikKICAgICB9ZWxzZXsKLSAgICAgICAgaWYoZG1pbjwoKGgqaCpzLT5hdmN0eC0+bXYwX3RocmVz aG9sZCk+PjgpCisgICAgICAgIGlmIChkbWluIDwgKChoICogaCAqIGMtPmF2Y3R4LT5tdjBfdGhy ZXNob2xkKSA+PiA4KQogICAgICAgICAgICAgICAgICAgICAmJiAoIFBfTEVGVFswXSAgICB8UF9M RUZUWzFdCiAgICAgICAgICAgICAgICAgICAgICAgICB8UF9UT1BbMF0gICAgIHxQX1RPUFsxXQog ICAgICAgICAgICAgICAgICAgICAgICAgfFBfVE9QUklHSFRbMF18UF9UT1BSSUdIVFsxXSk9PTAp ewotLSAKMi40NS4yCgo= --------------PzUc6nAvbCeik5GlmZwMxh8X 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". --------------PzUc6nAvbCeik5GlmZwMxh8X--