From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id EA2154B3B3 for ; Wed, 10 Jul 2024 02:03:04 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2E80C68DA43; Wed, 10 Jul 2024 05:03:02 +0300 (EEST) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.18]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A6B6868C178 for ; Wed, 10 Jul 2024 05:02:54 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1720576980; x=1752112980; h=from:to:subject:date:message-id:references:in-reply-to: content-id:content-transfer-encoding:mime-version; bh=q9we4TdyXbh574SjJkz8xULNkMBfTIaU7/3eNpwZlDM=; b=jXhsm77d2g/s6DsyCDa4cmkZAm9KqubO01t0tAjdtYPR5b5MBrwPlitp krqVWj4WKISekI0AfeZmIJE3x76Fhwyk6Mp+MWuqVDt1NR7i8rgxJeb81 TlAHX6z1izvUdBXwU3fTdYjQ/lATEtZp0cpC7yxviPlFZFAGYxQOK4vq6 1CHtRO0k6xjPm+mxVDEnCAVWxPQyg+zOAQlLEg39fTopNtwhxDrvXlGEM orguBfB0rpFfeiiua3fI78ZZ/GyzJQQGuP0Fb6lwVTL+Jn57mbKPQESKe kuLwrk9dEg8lT31TUjRzHXp979+lXNHrC4jWQHiSU+VmxZECIMqPhsb7e w==; X-CSE-ConnectionGUID: s4WT79aVSXWhYNZ0XLT0aQ== X-CSE-MsgGUID: /Ks4Yg11RKCuKHCJg4k40Q== X-IronPort-AV: E=McAfee;i="6700,10204,11128"; a="18011223" X-IronPort-AV: E=Sophos;i="6.09,196,1716274800"; d="scan'208";a="18011223" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by orvoesa110.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2024 19:02:52 -0700 X-CSE-ConnectionGUID: D1ofCGehQg+EiDFpgaNkdg== X-CSE-MsgGUID: PEePt7cQRdix5BAvm/Bk2Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.09,196,1716274800"; d="scan'208";a="48783189" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orviesa008.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 09 Jul 2024 19:02:52 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Tue, 9 Jul 2024 19:02:51 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Tue, 9 Jul 2024 19:02:51 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Tue, 9 Jul 2024 19:02:51 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.169) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Tue, 9 Jul 2024 19:02:50 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cGvcgP3tiolZBnKFlDxJMnIWV2THkDcHuf/9HpMh5MYtF8YD4LNRsl+fvvuCnCX5i9rxkA4PO/mXQG3pxFHDwAed9oS2f2A2wM0xeME2I6ehpNnRuIX4uT+/Xq38EOggkjV5wn1FWF2GOFlDnq6Qds20IR50OoXhqhvMVHPCO46FSBpUepr5VXDQpTowzU1Bysh7oe3T37aemKPJSVZO3LPzAcDWy3IUYU2MNr0IHh8yE8LCTVV3usk5Wy6nyYcccR5DixCCytTl/aMRiW5QwqFaf40is+1t4ikPNUXiUy6ykbJe7pdpBqbjyh5xh1FPBUL0L/8r3PF66WJ9ICjdqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=q9we4TdyXbh574SjJkz8xULNkMBfTIaU7/3eNpwZlDM=; b=jGDS9F67YACqbdf+HaSVgSgJFgQmo452yc0q9sHMnkRToSEHtA44QylmyCIoRj6Teyr5THZZRvA2z35esZNyEJ3lCYDxDewpPesCY58l3YTrGkGLNotKzJeZJOlTTywKmaLXUj225bsWgbl4MNhz88QSpeHPrAVN7/c1nAfL8tymC8wjn8OS+/m0lhsQh3KE/ULf7iyH0xazLACET/D8BKotsXM8d61Ns0MayWTQNiK6RIUeJ1y2z8IeN1gHf+F/UpY/S35+WhvCG6luhQDMRfkuor4blsij7HGahk5/1ROtDHRLOeJBQFWCxQxVAjDRwklY8q9dI9rDcj5/nLjyGQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from PH0PR11MB5030.namprd11.prod.outlook.com (2603:10b6:510:41::5) by IA1PR11MB6244.namprd11.prod.outlook.com (2603:10b6:208:3e6::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7741.35; Wed, 10 Jul 2024 02:02:48 +0000 Received: from PH0PR11MB5030.namprd11.prod.outlook.com ([fe80::a4fd:ad50:41fb:fe31]) by PH0PR11MB5030.namprd11.prod.outlook.com ([fe80::a4fd:ad50:41fb:fe31%6]) with mapi id 15.20.7762.016; Wed, 10 Jul 2024 02:02:48 +0000 From: "Wang, Fei W" To: "ffmpeg-devel@ffmpeg.org" Thread-Topic: [FFmpeg-devel] [PATCH v3 3/3] lavc/vaapi_hevc: Don't require exact profiles Thread-Index: AQHat4L8hxEj8xSJ2EqJ9NUo7CgLdrHvbB8A Date: Wed, 10 Jul 2024 02:02:48 +0000 Message-ID: References: <20240605195950.2297433-1-sw@jkqxz.net> <20240605195950.2297433-3-sw@jkqxz.net> In-Reply-To: <20240605195950.2297433-3-sw@jkqxz.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu2 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR11MB5030:EE_|IA1PR11MB6244:EE_ x-ms-office365-filtering-correlation-id: 7368daf5-4568-4e37-310c-08dca08465eb x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?NTRJdXB2ZldTU0NDMHJLTk8yY2dtN3JTZTlUNTUvOWIwSUZCRWJubkhjSkxN?= =?utf-8?B?NmJRY2ZqL0FZQXRLYStVOTZKMTgrdktrNnMyblBkQ2JPalNLODl0UkYzUEI2?= =?utf-8?B?Y2ZmTytDVzh6dHRiMU9QYUdxUVZCb0o1ckZuRE9CSXlNMjhFZnRNMDNNZkRB?= =?utf-8?B?K2t3bXkyRFZoenlzWVRSdGpKeGt4Zys5ZHovOHFTeUhVZ290Y2xzSit4VElS?= =?utf-8?B?Z3Q0ZnRhNlNpUlpxY3gxZXloaHBtK2FaS3o4ZU1JZEY1dXlUQnphVDR2b0Jy?= =?utf-8?B?R3FxM2hEVnFxcmh3OTVFWVJxS25sWUtZYW9GRXBtTkdlM3lhbGxhNmoySVh0?= =?utf-8?B?dDcxSlNLUmFTMzJURnBkQStEcWpwRVc2WktWckVPNm9UWHZ0a1htdktKQnZG?= =?utf-8?B?RnIyMm4rbzJUODk4eGFVdEhUeE5wclpVK0dLTWdnb2dMYktxb3RMc3dlempp?= =?utf-8?B?WHNoV0pnTS9ZcmswR1VtSUYxSHpTelp0MW43c29SVEJDL1RqcEpvbnB4Q3lo?= =?utf-8?B?emREd0RhbHJtemp0QUNURmhyMkdiVjFEa3Iza2ZGTlg2VUpSTGhBNXozQ1Zz?= =?utf-8?B?NnNrWS9uUFd0cEJSMERueGc3SlhQM3dNMnd5bVY1b0E0MWFvc3k5QkRnNWs1?= =?utf-8?B?RlNIdlpkeUE1ZnlsQWsvWDVTdzlVVDhvU1ZCKysxRUVYeGlpK21jRmNxQWhs?= =?utf-8?B?NFIrUDJZRUNPMWw0VzQyTmE5cTBHT3JEaUlSc1RHQzhaNkZRcDcyRkRHNFBr?= =?utf-8?B?Szg0dk1YK3F4b3M3RkxyR2psaGlvbXBSb0dqRzhqU0xTbE4rajJLTDU3K1Fj?= =?utf-8?B?YjFPRFRaL3gzRDMvTmFNVzYvemFDbm1xMStOYmY5clBrb2x5Z3EwYzVUNGg2?= =?utf-8?B?YU5MeGMvYytpa1lYWFdyYVVJaUhOemlNRWZ5dzJob2I0MzN3RjYzTldOYitY?= =?utf-8?B?UzhpQ1NkRVluYXNDd2NTQlllRjg4OU15U2dYUnRoekpiYVBmWnorN0tTMEpF?= =?utf-8?B?OGVNUEpubVlsM3lvMjFWd0JTNWVxT0FySUNPMlZtaTNFOXNWK2JienlCclFW?= =?utf-8?B?M2ZhdE9EOFRYdHdHczlSMjVjVXFzMzRudmsyVlJXYjJ6SjEwZHZmZm50S25M?= =?utf-8?B?Rm4zb0o4SU9qczRJYmFTWDVHYU9tV0VyOTFIYnRiWHh1eW1GeWlEdGprdzhT?= =?utf-8?B?dEZoMUluVGM0SVNxQkg4Tzl5dnlYU1BpTkRIVkN2aVcralVyTXAyNEZqMlI0?= =?utf-8?B?L2FrWndOek00SElVWmNlb2V4bmRJa1JZMHpKU09mSnJWQ3Q2RmhaSEJPTWtN?= =?utf-8?B?dXdOeWptYlhlZk84REdxZ3pmakRXWERTM1dmc1hkbFV4VFYvVUxWRnQyVjIr?= =?utf-8?B?SmpOY0V3ZWJTaTRtS0trNTBqaHA1MXd6cjgveFIwSlBsZVRyUHNWeTYvc0lG?= =?utf-8?B?TUNSM2lhbVZ4V0pEbDVYSHlKY1JEQlErWnV0OERKM2hWbno1TGR6Q2xQcXhp?= =?utf-8?B?NnpmWExBUURDYmRuejE4TUQ5eHNjWWV6bVdubGNFeXUrZDlmOUVKZ00yd2RR?= =?utf-8?B?N1Fya2xndEtidFc3RVNQYk9NNlplRkpaZW12VEdXOGRMNjF0UlhMSE42djFi?= =?utf-8?B?Qis0UGxjOEdtenc5SXNBN0tvUlFrVExRM29HUkZGVC9jRlZzYjlndHNpT3oz?= =?utf-8?B?UTZRMXFTSHdIQTZ1N3VablhESXptQUxQS3Z2bXhCMWtBNFJsV3ZDOFhIRU0w?= =?utf-8?B?eG9CQjBDdDVvM2l2QTdqY1RTTFNCaVdnS3psbmROaWJFcHJaUG9zVnJpOGxk?= =?utf-8?B?T0JXb05teXlsRGsyeEN4aFJUbFZoY0RZSDFvSEVlSVpJSVUzaytPT0ErU1VO?= =?utf-8?B?bU1OZU0vZGR0bDJ6QmswaVZ1dnY0Q3ZhZm1PTWlpRWU3N1E9PQ==?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR11MB5030.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(376014)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YkQ5THdkd013QnBsejZNV0J2WkozeGpxaHNKcVp1QWJRaEFLRVlhL0x0dlFX?= =?utf-8?B?dVJRSHUyTTBpZ044NHg0b1RXYkxZejNabFZtS0NsTUdEMW95d3JWRThrM0NT?= =?utf-8?B?YXprdkh4aW5SMElMZ2ZQeG0yczBQQjNxUzlXa1U2Zy9vRFRKMWxRWng4ZGlM?= =?utf-8?B?R01jSGNnRlQza0FmTHlSYXVzck05eDc1dUlUL2dXNm52L3dqa0lGWGxUbFZr?= =?utf-8?B?Rmg5QWtqa2pBV0VwZmpyeUVyNGUxeUVKK213WGp2WElJZUkzUTFlVU83QXZH?= =?utf-8?B?TDh5aCs2aWE1UmJsUzcrc1YvQXZSYmNOcG4yaXVRZUZPSFpEemZFREVtd2VY?= =?utf-8?B?VGluZU9SOXdEWVdtVWlIMTdObmVpeGhORXBHNUJ0d3hOekJESW4rVzR3VzZw?= =?utf-8?B?MkFQV2tqZHBxem1EVmVnaGJLNmZSU1VYL3krT09XSHdhVk1kNFZ5N05wbGVi?= =?utf-8?B?N1l5Z1MxNko0cFZveER3bE5kWGh5ZUhwMkdSaEVVUm5mUk9XQ0NXUWRKUDBa?= =?utf-8?B?TWhlOHgxRWlkK2VqYXlpQjlJcEJaYnBQcnNtYkpxTDhDR1RWaXRobkw4WWs0?= =?utf-8?B?TjR1d2hkczZXNnNzUUd5N1MrNFdwSTRCQlJsSVZvVDJFNkRoODRBbGQvd0pl?= =?utf-8?B?MVV1L21XMDBNbmk1b0YySmVSaS8zbCt2ZlhVYnRRbU1jeWhCZE5uOFdRdUN1?= =?utf-8?B?ZmNIZWlLOFI1TDJvSDdwK1c0TUJjVnZ1anZDT1g5MS8raWRRUWc2UDN6UkVV?= =?utf-8?B?dCtwajJmTEIxd05LUXZoM2hsNUZ0bG1DVlloUWlMMmZkc2hKY2FIb3ZXeDlC?= =?utf-8?B?TWcrK1VSeHZXMFZDSWNUVmlDZkl1ZUdKQ05reVlkR3hrRExHLzRPQ2twRXcy?= =?utf-8?B?dFhKbkFIa2t1SHJSR0NSRWs5RDhIeDM5azZwQkZTTmVWek04YUhMbGdGdzRv?= =?utf-8?B?SnpzTTBMQzdsOFlPT1ppN01vYTJqdEF6U1N0L0RteFB1VWRYeFN5a0wyYTNK?= =?utf-8?B?T1d2MVdxS25wUDF6Q2ZKTStYNFFKNXAzRjNqb2VxOWlCNkVCeE5SdHdqV1Fr?= =?utf-8?B?d1lyaW14UTJuTU9XeHpDZ1NGV214MGVsdUM1b0JkNUN6eVBvQzBmRUdYOEFV?= =?utf-8?B?c2dteFZzSThiR1pvK1lvYVExd0pqMjJKckpKaTV6NDJNdXNENEVwSDRPdGJv?= =?utf-8?B?R0VERWREOEhWWjYxQ052RnM5T05jUWRZNnlNWCtkZ1A1eHJUSnVsTjNQcXpk?= =?utf-8?B?NER2YUlIREp4a3JINis3T2dIZ3B0UThWcndsWE9ybjBEMGM1WUZKbVJ4UzJh?= =?utf-8?B?cEdlS3Z1MEVyTldhYmNhdVhIOWFSUU5NOUdmZmtLOERFUzFoblhmb1ZTSDZ5?= =?utf-8?B?U29vL1lBQmpFVTJ5dE9RSHgyVThyanVtUGpBRlI1ZGJzZEtNaHh4M3NUME1Y?= =?utf-8?B?dG4wT0VCTSs4bHgrTUExY2pzKzcxcDNrRFhWVkJPdnB5THMrMVJJNXVmNi9w?= =?utf-8?B?ZVNjRFhWWkZrVVRFQUJUZlRoTk5TNnZ6R3V3TkRLSnNiWndhc3lkalN3OStt?= =?utf-8?B?WktEV2RiQ0FINWR4UWxoTHlIdUZPSThKY1N3c0w1c0FoVHBVTFVHbzlKcmFR?= =?utf-8?B?SklPUEk1bnR5UVNzYVF6eGV1a05XbUhwMmxBSDdXRWlWSEs5Vmk1b0FGWDRL?= =?utf-8?B?OVdZa0IzbWFsamxKbFZLQnJPTFRxcDlvVzlzemlyUmN6ZkxKY25WNnRwTUo4?= =?utf-8?B?S0NEOGtjVnpiNURpa2RydWg4YlZCME1MT3dyRU16UW1LNGFpVVc5YlVYRWln?= =?utf-8?B?TXBKdXJGK0JQcTQyN3pBelBsdUw4NmlYcEswSkVHU01GQnNyRUF3L3RsZmlK?= =?utf-8?B?WFdqVk5pU2JlNlhBblYzQ0VDT2hDKzBQdmpSam9LeFVXeW0zYzhJbWJTdk1z?= =?utf-8?B?cVV4L1c3aldtUUpnTllNQUtJaFFmaXpRL25OV0FtNUMrd1I2MDZZUFFYRnlY?= =?utf-8?B?T3VxTlYzckx2QVk3NU1tbDRJd0hDVHZpaTVDZGQwTEVwWjlwVzFwOEMwMTdh?= =?utf-8?B?cUVQcWErQkpRLzcrQThFVGo4NUlkalUxa2NuUWxDY1dRSWhuUWN5TEI2MU9U?= =?utf-8?B?UUtSZ2dZbUNoNk9KRW1zVXFodUIwK1dUaWtsbW9OVUo1cGZUWk1Yd3Z5OEhp?= =?utf-8?B?TWc9PQ==?= Content-ID: <945AC29538C29740B49B5DD1210DA03C@namprd11.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5030.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7368daf5-4568-4e37-310c-08dca08465eb X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jul 2024 02:02:48.5187 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: yjRfBECc1Jk1ORv87sZ514EvxxUym9Tt4q7Rj+RWdHRCqqVeEA0K1rLp2nTuXB7K2E9TzuJQyXE8BLkFwPihQg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB6244 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH v3 3/3] lavc/vaapi_hevc: Don't require exact profiles X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gV2VkLCAyMDI0LTA2LTA1IGF0IDIwOjU5ICswMTAwLCBNYXJrIFRob21wc29uIHdyb3RlOgo+ IFJhdGhlciB0aGFuIHR1cm5pbmcgdGhlIGNvbnN0cmFpbnQgZmxhZ3MgaW50byBhIHNpbmdsZSBw cm9maWxlIGFuZAo+IHRoZW4KPiBzZWFyY2hpbmcgZm9yIHRoYXQgcHJvZmlsZSAoYW5kIGZhaWxp bmcgaWYgaXQgZG9lc24ndCBtYXRjaCBhbnkKPiBwcm9maWxlCj4gZXhhY3RseSksIGluc3RlYWQg c2VhcmNoIGFsbCBzdXBwb3J0ZWQgcHJvZmlsZXMgYW5kIHVzZSB0aGUgZmlyc3Qgb25lCj4gd2hp Y2ggc3VwcG9ydHMgdGhlIGdpdmVuIHNldCBvZiBjb25zdHJhaW50IGZsYWdzLgo+IC0tLQo+IMKg bGliYXZjb2RlYy92YWFwaV9kZWNvZGUuYyB8IDQ1ICsrKysrKysrKysrLS0tLS0tLQo+IMKgbGli YXZjb2RlYy92YWFwaV9oZXZjLmPCoMKgIHwgOTkgKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLQo+IC0tCj4gwqBsaWJhdmNvZGVjL3ZhYXBpX2hldmMuaMKgwqAgfMKgIDQgKy0K PiDCoDMgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwgNjEgZGVsZXRpb25zKC0pCgpU ZXN0IGdvb2QgZm9yIG1lLiBUaGFua3MuCgotLQpGZWkKCj4gCj4gZGlmZiAtLWdpdCBhL2xpYmF2 Y29kZWMvdmFhcGlfZGVjb2RlLmMgYi9saWJhdmNvZGVjL3ZhYXBpX2RlY29kZS5jCj4gaW5kZXgg N2M5MWQ1MGY3Yi4uYzlkOGFkZDY5ZiAxMDA2NDQKPiAtLS0gYS9saWJhdmNvZGVjL3ZhYXBpX2Rl Y29kZS5jCj4gKysrIGIvbGliYXZjb2RlYy92YWFwaV9kZWNvZGUuYwo+IEBAIC0zOTMsNyArMzkz LDkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCB7Cj4gwqDCoMKgwqAgZW51bSBBVkNvZGVjSUQgY29k ZWNfaWQ7Cj4gwqDCoMKgwqAgaW50IGNvZGVjX3Byb2ZpbGU7Cj4gwqDCoMKgwqAgVkFQcm9maWxl IHZhX3Byb2ZpbGU7Cj4gLcKgwqDCoCBWQVByb2ZpbGUgKCpwcm9maWxlX3BhcnNlcikoQVZDb2Rl Y0NvbnRleHQgKmF2Y3R4KTsKPiArwqDCoMKgIFZBUHJvZmlsZSAoKm1hdGNoX3Byb2ZpbGUpKEFW Q29kZWNDb250ZXh0ICphdmN0eCwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IFZBUHJvZmlsZSAqcHJvZmlsZV9saXN0 LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgaW50IHByb2ZpbGVfY291bnQpOwo+IMKgfSB2YWFwaV9wcm9maWxlX21hcFtdID0g ewo+IMKgI2RlZmluZSBNQVAoYywgcCwgdiwgLi4uKSB7IEFWX0NPREVDX0lEXyAjIyBjLCBBVl9Q Uk9GSUxFXyAjIyBwLAo+IFZBUHJvZmlsZSAjIyB2LCBfX1ZBX0FSR1NfXyB9Cj4gwqDCoMKgwqAg TUFQKE1QRUcyVklERU8swqAgTVBFRzJfU0lNUExFLMKgwqDCoCBNUEVHMlNpbXBsZSApLAo+IEBA IC00MjAsOSArNDIyLDkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCB7Cj4gwqAjZW5kaWYKPiDCoCNp ZiBWQV9DSEVDS19WRVJTSU9OKDEsIDIsIDApICYmIENPTkZJR19IRVZDX1ZBQVBJX0hXQUNDRUwK PiDCoMKgwqDCoCBNQVAoSEVWQyzCoMKgwqDCoMKgwqDCoCBIRVZDX1JFWFQswqDCoMKgwqDCoMKg IE5vbmUsCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGZmX3ZhYXBpX3BhcnNl X2hldmNfcmV4dF9zY2NfcHJvZmlsZSApLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZmZf dmFhcGlfaGV2Y19tYXRjaF9yZXh0X3NjY19wcm9maWxlICksCj4gwqDCoMKgwqAgTUFQKEhFVkMs wqDCoMKgwqDCoMKgwqAgSEVWQ19TQ0MswqDCoMKgwqDCoMKgwqAgTm9uZSwKPiAtwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZmZfdmFhcGlfcGFyc2VfaGV2Y19yZXh0X3NjY19wcm9m aWxlICksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmZl92YWFwaV9oZXZjX21hdGNoX3Jl eHRfc2NjX3Byb2ZpbGUgKSwKPiDCoCNlbmRpZgo+IMKgwqDCoMKgIE1BUChNSlBFRyzCoMKgwqDC oMKgwqAgTUpQRUdfSFVGRk1BTl9CQVNFTElORV9EQ1QsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBK UEVHQmFzZWxpbmUpLAo+IEBAIC01MDUsMjIgKzUwNywzMyBAQCBzdGF0aWMgaW50Cj4gdmFhcGlf ZGVjb2RlX21ha2VfY29uZmlnKEFWQ29kZWNDb250ZXh0ICphdmN0eCwKPiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgdmFhcGlfcHJvZmlsZV9tYXBbaV0uY29kZWNfcHJvZmlsZSA9PQo+IEFWX1BS T0ZJTEVfVU5LTk9XTikKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcHJvZmlsZV9tYXRjaCA9 IDE7Cj4gwqAKPiAtwqDCoMKgwqDCoMKgwqAgdmFfcHJvZmlsZSA9IHZhYXBpX3Byb2ZpbGVfbWFw W2ldLnByb2ZpbGVfcGFyc2VyID8KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCB2YWFwaV9wcm9maWxlX21hcFtpXS5wcm9maWxlX3BhcnNlcihhdmN0eCkgOgo+IC3C oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZhYXBpX3Byb2ZpbGVfbWFw W2ldLnZhX3Byb2ZpbGU7Cj4gwqDCoMKgwqDCoMKgwqDCoCBjb2RlY19wcm9maWxlID0gdmFhcGlf cHJvZmlsZV9tYXBbaV0uY29kZWNfcHJvZmlsZTsKPiAtCj4gLcKgwqDCoMKgwqDCoMKgIGZvciAo aiA9IDA7IGogPCBwcm9maWxlX2NvdW50OyBqKyspIHsKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBpZiAodmFfcHJvZmlsZSA9PSBwcm9maWxlX2xpc3Rbal0pIHsKPiAtwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIGV4YWN0X21hdGNoID0gcHJvZmlsZV9tYXRjaDsKPiArwqDCoMKgwqDC oMKgwqAgaWYgKHZhYXBpX3Byb2ZpbGVfbWFwW2ldLm1hdGNoX3Byb2ZpbGUpIHsKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB2YV9wcm9maWxlID0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHZhYXBpX3Byb2ZpbGVfbWFwW2ldLm1hdGNoX3Byb2ZpbGUoYXZjdHgsCj4gcHJvZmls ZV9saXN0LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHBy b2ZpbGVfY291bnQpOwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmICh2YV9wcm9maWxlICE9 IFZBUHJvZmlsZU5vbmUpIHsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG1hdGNo ZWRfdmFfcHJvZmlsZSA9IHZhX3Byb2ZpbGU7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBtYXRjaGVkX2ZmX3Byb2ZpbGUgPSBjb2RlY19wcm9maWxlOwo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgZXhhY3RfbWF0Y2ggPSAxOwo+IMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGJyZWFrOwo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4gLcKgwqDC oMKgwqDCoMKgIH0KPiAtwqDCoMKgwqDCoMKgwqAgaWYgKGogPCBwcm9maWxlX2NvdW50KSB7Cj4g LcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWF0Y2hlZF92YV9wcm9maWxlID0gdmFfcHJvZmlsZTsK PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBtYXRjaGVkX2ZmX3Byb2ZpbGUgPSBjb2RlY19wcm9m aWxlOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChleGFjdF9tYXRjaCkKPiAtwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGJyZWFrOwo+ICvCoMKgwqDCoMKgwqDCoCB9IGVsc2Ug ewo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZhX3Byb2ZpbGUgPSB2YWFwaV9wcm9maWxlX21h cFtpXS52YV9wcm9maWxlOwo+ICsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmb3IgKGogPSAw OyBqIDwgcHJvZmlsZV9jb3VudDsgaisrKSB7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBpZiAodmFfcHJvZmlsZSA9PSBwcm9maWxlX2xpc3Rbal0pIHsKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZXhhY3RfbWF0Y2ggPSBwcm9maWxlX21hdGNoOwo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4g Kwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGlmIChqIDwgcHJvZmlsZV9jb3VudCkgewo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWF0Y2hlZF92YV9wcm9maWxlID0gdmFfcHJv ZmlsZTsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG1hdGNoZWRfZmZfcHJvZmls ZSA9IGNvZGVjX3Byb2ZpbGU7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAo ZXhhY3RfbWF0Y2gpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGJy ZWFrOwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0KPiDCoMKgwqDCoMKgwqDCoMKgIH0KPiDC oMKgwqDCoCB9Cj4gwqDCoMKgwqAgYXZfZnJlZXAoJnByb2ZpbGVfbGlzdCk7Cj4gZGlmZiAtLWdp dCBhL2xpYmF2Y29kZWMvdmFhcGlfaGV2Yy5jIGIvbGliYXZjb2RlYy92YWFwaV9oZXZjLmMKPiBp bmRleCA2MTY0YTFkMjIzLi43MTZhNGE0YjQzIDEwMDY0NAo+IC0tLSBhL2xpYmF2Y29kZWMvdmFh cGlfaGV2Yy5jCj4gKysrIGIvbGliYXZjb2RlYy92YWFwaV9oZXZjLmMKPiBAQCAtNTg5LDYzICs1 ODksNzQgQEAgc3RhdGljIGludCBwdGxfY29udmVydChjb25zdCBQVExDb21tb24KPiAqZ2VuZXJh bF9wdGwsIEgyNjVSYXdQcm9maWxlVGllckxldmVsICpoMgo+IMKgfQo+IMKgCj4gwqAvKgo+IC0g KiBGaW5kIGV4YWN0IHZhX3Byb2ZpbGUgZm9yIEhFVkMgUmFuZ2UgRXh0ZW5zaW9uIGFuZCBTY3Jl ZW4gQ29udGVudAo+IENvZGluZyBFeHRlbnNpb24KPiArICogRmluZCBjb21wYXRpYmxlIHZhX3By b2ZpbGUgZm9yIEhFVkMgUmFuZ2UgRXh0ZW5zaW9uIGFuZCBTY3JlZW4KPiArICogQ29udGVudCBD b2RpbmcgRXh0ZW5zaW9uIHByb2ZpbGVzLgo+IMKgICovCj4gLVZBUHJvZmlsZSBmZl92YWFwaV9w YXJzZV9oZXZjX3JleHRfc2NjX3Byb2ZpbGUoQVZDb2RlY0NvbnRleHQKPiAqYXZjdHgpCj4gK1ZB UHJvZmlsZSBmZl92YWFwaV9oZXZjX21hdGNoX3JleHRfc2NjX3Byb2ZpbGUoQVZDb2RlY0NvbnRl eHQKPiAqYXZjdHgsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0 IFZBUHJvZmlsZQo+ICpwcm9maWxlX2xpc3QsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIGludCBwcm9maWxlX2NvdW50KQo+IMKgewo+IMKgwqDCoMKgIGNvbnN0IEhFVkND b250ZXh0ICpoID0gYXZjdHgtPnByaXZfZGF0YTsKPiDCoMKgwqDCoCBjb25zdCBIRVZDU1BTICpz cHMgPSBoLT5wcy5zcHM7Cj4gwqDCoMKgwqAgY29uc3QgUFRMICpwdGwgPSAmc3BzLT5wdGw7Cj4g wqDCoMKgwqAgY29uc3QgUFRMQ29tbW9uICpnZW5lcmFsX3B0bCA9ICZwdGwtPmdlbmVyYWxfcHRs Owo+IC3CoMKgwqAgY29uc3QgSDI2NVByb2ZpbGVEZXNjcmlwdG9yICpwcm9maWxlOwo+IMKgwqDC oMKgIEgyNjVSYXdQcm9maWxlVGllckxldmVsIGgyNjVfcmF3X3B0bCA9IHswfTsKPiDCoAo+ICvC oMKgwqAgc3RhdGljIGNvbnN0IHN0cnVjdCB7Cj4gK8KgwqDCoMKgwqDCoMKgIGVudW0gSDI2NVBy b2ZpbGUgcHJvZmlsZTsKPiArwqDCoMKgwqDCoMKgwqAgVkFQcm9maWxlwqDCoMKgwqAgdmFfcHJv ZmlsZTsKPiArwqDCoMKgIH0gbWFwW10gPSB7Cj4gKyNpZiBWQV9DSEVDS19WRVJTSU9OKDEsIDIs IDApCj4gK8KgwqDCoMKgwqDCoMKgIHsgSDI2NV9QUk9GSUxFX01BSU5fMTIsCj4gK8KgwqDCoMKg wqDCoMKgwqDCoCBWQVByb2ZpbGVIRVZDTWFpbjEyIH0sCj4gK8KgwqDCoMKgwqDCoMKgIHsgSDI2 NV9QUk9GSUxFX01BSU5fNDIyXzEwLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgVkFQcm9maWxlSEVW Q01haW40MjJfMTAgfSwKPiArwqDCoMKgwqDCoMKgwqAgeyBIMjY1X1BST0ZJTEVfTUFJTl80MjJf MTIsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCBWQVByb2ZpbGVIRVZDTWFpbjQyMl8xMiB9LAo+ICvC oMKgwqDCoMKgwqDCoCB7IEgyNjVfUFJPRklMRV9NQUlOXzQ0NCwKPiArwqDCoMKgwqDCoMKgwqDC oMKgIFZBUHJvZmlsZUhFVkNNYWluNDQ0IH0sCj4gK8KgwqDCoMKgwqDCoMKgIHsgSDI2NV9QUk9G SUxFX01BSU5fNDQ0XzEwLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgVkFQcm9maWxlSEVWQ01haW40 NDRfMTAgfSwKPiArwqDCoMKgwqDCoMKgwqAgeyBIMjY1X1BST0ZJTEVfTUFJTl80NDRfMTIsCj4g K8KgwqDCoMKgwqDCoMKgwqDCoCBWQVByb2ZpbGVIRVZDTWFpbjQ0NF8xMiB9LAo+ICvCoMKgwqDC oMKgwqDCoCB7IEgyNjVfUFJPRklMRV9TQ1JFRU5fRVhURU5ERURfTUFJTiwKPiArwqDCoMKgwqDC oMKgwqDCoMKgIFZBUHJvZmlsZUhFVkNTY2NNYWluIH0sCj4gK8KgwqDCoMKgwqDCoMKgIHsgSDI2 NV9QUk9GSUxFX1NDUkVFTl9FWFRFTkRFRF9NQUlOXzEwLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqAg VkFQcm9maWxlSEVWQ1NjY01haW4xMCB9LAo+ICvCoMKgwqDCoMKgwqDCoCB7IEgyNjVfUFJPRklM RV9TQ1JFRU5fRVhURU5ERURfTUFJTl80NDQsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCBWQVByb2Zp bGVIRVZDU2NjTWFpbjQ0NCB9LAo+ICsjZW5kaWYKPiArI2lmIFZBX0NIRUNLX1ZFUlNJT04oMSwg OCwgMCkKPiArwqDCoMKgwqDCoMKgwqAgeyBIMjY1X1BST0ZJTEVfU0NSRUVOX0VYVEVOREVEX01B SU5fNDQ0XzEwLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgVkFQcm9maWxlSEVWQ1NjY01haW40NDRf MTAgfSwKPiArI2VuZGlmCj4gK8KgwqDCoCB9Owo+ICsKPiDCoMKgwqDCoCAvKiBjb252ZXJ0IFBU TENvbW1vbiB0byBIMjY1UmF3UHJvZmlsZVRpZXJMZXZlbCAqLwo+IMKgwqDCoMKgIHB0bF9jb252 ZXJ0KGdlbmVyYWxfcHRsLCAmaDI2NV9yYXdfcHRsKTsKPiDCoAo+IC3CoMKgwqAgcHJvZmlsZSA9 IGZmX2gyNjVfZmluZF9wcm9maWxlKCZoMjY1X3Jhd19wdGwpOwo+IC3CoMKgwqAgaWYgKCFwcm9m aWxlKSB7Cj4gLcKgwqDCoMKgwqDCoMKgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX1dBUk5JTkcsICJI RVZDIHByb2ZpbGUgaXMgbm90Cj4gZm91bmQuXG4iKTsKPiAtwqDCoMKgwqDCoMKgwqAgZ290byBl bmQ7Cj4gLcKgwqDCoCB9IGVsc2Ugewo+IC3CoMKgwqDCoMKgwqDCoCBhdl9sb2coYXZjdHgsIEFW X0xPR19WRVJCT1NFLCAiSEVWQyBwcm9maWxlICVzIGlzIGZvdW5kLlxuIiwKPiBwcm9maWxlLT5u YW1lKTsKPiArwqDCoMKgIGZvciAoaW50IGkgPSAwOyBpIDwgRkZfQVJSQVlfRUxFTVMobWFwKTsg aSsrKSB7Cj4gK8KgwqDCoMKgwqDCoMKgIGludCBhdmFpbGFibGUgPSAwOwo+ICvCoMKgwqDCoMKg wqDCoCBmb3IgKGludCBqID0gMDsgaiA8IHByb2ZpbGVfY291bnQ7IGorKykgewo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIGlmIChwcm9maWxlX2xpc3Rbal0gPT0gbWFwW2ldLnZhX3Byb2ZpbGUp IHsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGF2YWlsYWJsZSA9IDE7Cj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBicmVhazsKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB9Cj4gK8KgwqDCoMKgwqDCoMKgIH0KPiArwqDCoMKgwqDCoMKgwqAgaWYgKCFhdmFpbGFi bGUpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29udGludWU7Cj4gKwo+ICvCoMKgwqDCoMKg wqDCoCBpZiAoZmZfaDI2NV9wcm9maWxlX2NvbXBhdGlibGUoJmgyNjVfcmF3X3B0bCwKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBtYXBbaV0ucHJvZmlsZSkpIHsKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBjb25zdCBIMjY1UHJvZmlsZURlc2NyaXB0b3IgKnByb2ZpbGVfZGVzYyA9Cj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmZl9oMjY1X2dldF9wcm9maWxlKG1hcFtpXS5wcm9m aWxlKTsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBhdl9sb2coYXZjdHgsIEFWX0xPR19WRVJC T1NFLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIkRlY29kaW5nIHdp dGggSEVWQyBwcm9maWxlICVzLlxuIiwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHByb2ZpbGVfZGVzYy0+bmFtZSk7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0 dXJuIG1hcFtpXS52YV9wcm9maWxlOwo+ICvCoMKgwqDCoMKgwqDCoCB9Cj4gwqDCoMKgwqAgfQo+ IMKgCj4gLSNpZiBWQV9DSEVDS19WRVJTSU9OKDEsIDIsIDApCj4gLcKgwqDCoCBpZiAoIXN0cmNt cChwcm9maWxlLT5uYW1lLCAiTWFpbiAxMiIpIHx8Cj4gLcKgwqDCoMKgwqDCoMKgICFzdHJjbXAo cHJvZmlsZS0+bmFtZSwgIk1haW4gMTIgSW50cmEiKSkKPiAtwqDCoMKgwqDCoMKgwqAgcmV0dXJu IFZBUHJvZmlsZUhFVkNNYWluMTI7Cj4gLcKgwqDCoCBlbHNlIGlmICghc3RyY21wKHByb2ZpbGUt Pm5hbWUsICJNYWluIDQ6MjoyIDEwIikgfHwKPiAtwqDCoMKgwqDCoMKgwqAgIXN0cmNtcChwcm9m aWxlLT5uYW1lLCAiTWFpbiA0OjI6MiAxMCBJbnRyYSIpKQo+IC3CoMKgwqDCoMKgwqDCoCByZXR1 cm4gVkFQcm9maWxlSEVWQ01haW40MjJfMTA7Cj4gLcKgwqDCoCBlbHNlIGlmICghc3RyY21wKHBy b2ZpbGUtPm5hbWUsICJNYWluIDQ6MjoyIDEyIikgfHwKPiAtwqDCoMKgwqDCoMKgwqAgIXN0cmNt cChwcm9maWxlLT5uYW1lLCAiTWFpbiA0OjI6MiAxMiBJbnRyYSIpKQo+IC3CoMKgwqDCoMKgwqDC oCByZXR1cm4gVkFQcm9maWxlSEVWQ01haW40MjJfMTI7Cj4gLcKgwqDCoCBlbHNlIGlmICghc3Ry Y21wKHByb2ZpbGUtPm5hbWUsICJNYWluIDQ6NDo0IikgfHwKPiAtwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICFzdHJjbXAocHJvZmlsZS0+bmFtZSwgIk1haW4gNDo0OjQgSW50cmEiKSkKPiAtwqDC oMKgwqDCoMKgwqAgcmV0dXJuIFZBUHJvZmlsZUhFVkNNYWluNDQ0Owo+IC3CoMKgwqAgZWxzZSBp ZiAoIXN0cmNtcChwcm9maWxlLT5uYW1lLCAiTWFpbiA0OjQ6NCAxMCIpIHx8Cj4gLcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAhc3RyY21wKHByb2ZpbGUtPm5hbWUsICJNYWluIDQ6NDo0IDEwIElu dHJhIikpCj4gLcKgwqDCoMKgwqDCoMKgIHJldHVybiBWQVByb2ZpbGVIRVZDTWFpbjQ0NF8xMDsK PiAtwqDCoMKgIGVsc2UgaWYgKCFzdHJjbXAocHJvZmlsZS0+bmFtZSwgIk1haW4gNDo0OjQgMTIi KSB8fAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIXN0cmNtcChwcm9maWxlLT5uYW1lLCAi TWFpbiA0OjQ6NCAxMiBJbnRyYSIpKQo+IC3CoMKgwqDCoMKgwqDCoCByZXR1cm4gVkFQcm9maWxl SEVWQ01haW40NDRfMTI7Cj4gLcKgwqDCoCBlbHNlIGlmICghc3RyY21wKHByb2ZpbGUtPm5hbWUs ICJTY3JlZW4tRXh0ZW5kZWQgTWFpbiIpKQo+IC3CoMKgwqDCoMKgwqDCoCByZXR1cm4gVkFQcm9m aWxlSEVWQ1NjY01haW47Cj4gLcKgwqDCoCBlbHNlIGlmICghc3RyY21wKHByb2ZpbGUtPm5hbWUs ICJTY3JlZW4tRXh0ZW5kZWQgTWFpbiAxMCIpKQo+IC3CoMKgwqDCoMKgwqDCoCByZXR1cm4gVkFQ cm9maWxlSEVWQ1NjY01haW4xMDsKPiAtwqDCoMKgIGVsc2UgaWYgKCFzdHJjbXAocHJvZmlsZS0+ bmFtZSwgIlNjcmVlbi1FeHRlbmRlZCBNYWluIDQ6NDo0IikpCj4gLcKgwqDCoMKgwqDCoMKgIHJl dHVybiBWQVByb2ZpbGVIRVZDU2NjTWFpbjQ0NDsKPiAtI2lmIFZBX0NIRUNLX1ZFUlNJT04oMSwg OCwgMCkKPiAtwqDCoMKgIGVsc2UgaWYgKCFzdHJjbXAocHJvZmlsZS0+bmFtZSwgIlNjcmVlbi1F eHRlbmRlZCBNYWluIDQ6NDo0Cj4gMTAiKSkKPiAtwqDCoMKgwqDCoMKgwqAgcmV0dXJuIFZBUHJv ZmlsZUhFVkNTY2NNYWluNDQ0XzEwOwo+IC0jZW5kaWYKPiAtI2Vsc2UKPiAtwqDCoMKgIGF2X2xv ZyhhdmN0eCwgQVZfTE9HX1dBUk5JTkcsICJIRVZDIHByb2ZpbGUgJXMgaXMgIgo+IC3CoMKgwqDC oMKgwqDCoMKgwqDCoCAibm90IHN1cHBvcnRlZCB3aXRoIHRoaXMgVkEgdmVyc2lvbi5cbiIsIHBy b2ZpbGUtPm5hbWUpOwo+IC0jZW5kaWYKPiAtCj4gLWVuZDoKPiDCoMKgwqDCoCBpZiAoYXZjdHgt Pmh3YWNjZWxfZmxhZ3MgJgo+IEFWX0hXQUNDRUxfRkxBR19BTExPV19QUk9GSUxFX01JU01BVENI KSB7Cj4gwqDCoMKgwqDCoMKgwqDCoCAvLyBEZWZhdWx0IHRvIHNlbGVjdGluZyBNYWluIHByb2Zp bGUgaWYgcHJvZmlsZSBtaXNtYXRjaCBpcwo+IGFsbG93ZWQKPiDCoMKgwqDCoMKgwqDCoMKgIHJl dHVybiBWQVByb2ZpbGVIRVZDTWFpbjsKPiBkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92YWFwaV9o ZXZjLmggYi9saWJhdmNvZGVjL3ZhYXBpX2hldmMuaAo+IGluZGV4IDQ0OTYzNWQwZDcuLjQ1NWM2 OGU2YmEgMTAwNjQ0Cj4gLS0tIGEvbGliYXZjb2RlYy92YWFwaV9oZXZjLmgKPiArKysgYi9saWJh dmNvZGVjL3ZhYXBpX2hldmMuaAo+IEBAIC0yMiw2ICsyMiw4IEBACj4gwqAjaW5jbHVkZSA8dmEv dmEuaD4KPiDCoCNpbmNsdWRlICJhdmNvZGVjLmgiCj4gwqAKPiAtVkFQcm9maWxlIGZmX3ZhYXBp X3BhcnNlX2hldmNfcmV4dF9zY2NfcHJvZmlsZShBVkNvZGVjQ29udGV4dAo+ICphdmN0eCk7Cj4g K1ZBUHJvZmlsZSBmZl92YWFwaV9oZXZjX21hdGNoX3JleHRfc2NjX3Byb2ZpbGUoQVZDb2RlY0Nv bnRleHQKPiAqYXZjdHgsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNv bnN0IFZBUHJvZmlsZQo+ICpwcm9maWxlX2xpc3QsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGludCBwcm9maWxlX2NvdW50KTsKPiDCoAo+IMKgI2VuZGlmIC8qIEFWQ09E RUNfVkFBUElfSEVWQ19IICovCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcu b3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8g dW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1 ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==