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 230D34261C for ; Mon, 21 Mar 2022 08:02:02 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 85C5D68B174; Mon, 21 Mar 2022 10:01:59 +0200 (EET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 25F6B68A67E for ; Mon, 21 Mar 2022 10:01:51 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1647849717; x=1679385717; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=SUWh+d8Hryaam4qzx53YLHx78J3p17TBr3cPAvOA4GY=; b=BozAp2ENWTj+zgNaqHyeHDwp5IaKngyIBfbZGob/zhCD7FhE3aqZ98dm yXj+CtcyunsQwVW9KaAU2vbzKcoPgPlzNhYsZ7YQybPyva2lnz7QKE6I6 jdzDI9KTifndjSCM3zHh1COS8YP6oUeEU+btEVCbuo4ms2mdMPaGyOBrp T38BZvARUSP3V1dieD3P2D72r98nprxFKl1ARHeoQClJ/gx9qCFDpdmdX aHqH7I3frF9nVilKooM5H6xUDNJUzZb7vEGQ3iGce2+MNGpsoMxrIxo7k 1n63rUP9ul+DIuI11Grs1JZd87vQc4z0cppZebLW1aXCzDhn/QTS4D8j9 A==; X-IronPort-AV: E=McAfee;i="6200,9189,10292"; a="257685784" X-IronPort-AV: E=Sophos;i="5.90,198,1643702400"; d="scan'208";a="257685784" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Mar 2022 01:01:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,198,1643702400"; d="scan'208";a="551639052" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by fmsmga007.fm.intel.com with ESMTP; 21 Mar 2022 01:01:49 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Mon, 21 Mar 2022 01:01:48 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21 via Frontend Transport; Mon, 21 Mar 2022 01:01:48 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.105) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.21; Mon, 21 Mar 2022 01:01:48 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iHtpVWmPO444L7s1HVwQZoZk+kpqftDW5zTw36DIcC8HmymzJltiL20k37rRkIddnCSCRw+H2sy01GyXz8HJlIF6bs3Fu4qY5y8xPfA8Kgl47y4dQI+Y3xo7MnWshYtA3iXOK08SAWGaGYzHN0HwFOZ27uJtvFQpQ6Bo3LjxiGkXq4JAv+ll82dTwdQ9M1B01lHNuCEv466G0vTLTNQonpz8r291QUZ5GfbEfbRRj21Pc+2mwmQ44926SNV0pzup7W/rBfUsHLgAnHv+OlqVxqLJzJ/ORL++WVhWvg++iAdgAaAZPqmG2HbW8MN+o0qfuveTMADcuYx1kBPBkKkqPg== 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=SUWh+d8Hryaam4qzx53YLHx78J3p17TBr3cPAvOA4GY=; b=iZulhud1dCkPEyY4kCazgOcdyefNtQhbI9qD5cEFumZ7KQaUIC7ByMokhE+M8mku+WDdJPoU5f6gx2Gc0z+ckV/2LBVYTjPU8KWzHhQDffm9y9PZT8EcqapU8uxHfQJ7SdVPcWM6SUiN5mcKuwLZy9ukADunQZu/rzEnCpbFCWcz8UFHZJnWiYv5iHzuz24IwxwjAM9cEu0sm1icxoX+v+kCbfmeIUb0hyV0wO1KYp/YtwXLCwO5Ikl3CDCoyCrSclNN4pwB4I/YVvy5WCw4IyNRoLClw49HFM19n7w0Iurgfsnz1XfIsa7i+j27HVpEr/OY+tLRof7kMIXIJ7lrsA== 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 BYAPR11MB3559.namprd11.prod.outlook.com (2603:10b6:a03:f7::12) by BY5PR11MB4024.namprd11.prod.outlook.com (2603:10b6:a03:192::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5081.17; Mon, 21 Mar 2022 08:01:46 +0000 Received: from BYAPR11MB3559.namprd11.prod.outlook.com ([fe80::1811:d49a:7914:a0b6]) by BYAPR11MB3559.namprd11.prod.outlook.com ([fe80::1811:d49a:7914:a0b6%3]) with mapi id 15.20.5081.023; Mon, 21 Mar 2022 08:01:46 +0000 From: "He, Fan F" To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH] libavcodec/qsvenc: enable LowDelayBRC and MaxFrameSizeI/MaxFrameSizeP for more accurate bitrate control Thread-Index: AdgkSmbmThki2vGIQD+K13kXSRrnKAYmJVcAAAWYw8A= Date: Mon, 21 Mar 2022 08:01:46 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.401.20 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 34f31ee4-d792-49ae-6c1a-08da0b110bbe x-ms-traffictypediagnostic: BY5PR11MB4024:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: M+XyhjoFysbE9X39W1tVu6dVEBeRXysMaPQBWFNCWum2nINhVMJD1bXLciE1kHFttC6/FoZKhUzMsj0lJHxUEAP2IV6nuwi4rQWYCTzF5JbU4npGVNSwFsaTFXnzlsQ6SrbSjk9ai1cd4rs0ZBs0JrldUMltqyweP5ORD4GaYU0bzUbIqJabU8/L1Spsani3Wo/SPDYCZ7yJhA2RsadZcBzlRQzF67woWAd5SgBgdxQQuBy4mIN/5TPaDhy4ZhTpg7X0E7wDQQ8y4foqm/PoVXDDOoi9awJ6l+70FMJl2Ns9UlVMHzOsQUky5R+7E76yWMSw8NM0KcQ4hZgtphDB4wp7LJ/ecWAYOdfoof1huM9RREnf71qVq7mvPbxkapwjSrRXEf9eE3gxzyNaftKZHZRlfnNOv8HRW5y7kr2rw96coCnyurA/A8u0K5AKsDsJd3DyLnSlcgtf9ucjBFIDfExUR5fKxUJ9hMwXbwbugCj0VTO5WZxYKJmGlzUlnyBW6mcoofA/llTa80k7LcuTNB8OBBqbMe+84++hmCC0qGZ4HnPRqzkyyrQ6qP35GIf8USJEzSu6+8axlXrBHlTxj8lPUoPQPhwZjhzrtiViJYXiHjKSlVJn/hFUnD6dwcSywXz3pffN38aHWb7gknitIt8KhXb3HmctusuvxNKuRTanRjirSDdyiE1esLy9UFtWQzHDRJvRY4EsiFoBllQxmLnUBimD4QRRsyCIRiGf/HFZlxjNxwSlBMW3dGTDby9NwaMLBPwY348Bs8HGxi2KEKsyiKFdBeXqrq65k6alhk4= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR11MB3559.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(38070700005)(83380400001)(966005)(8676002)(66946007)(66556008)(8936002)(66446008)(64756008)(508600001)(66476007)(76116006)(82960400001)(122000001)(52536014)(71200400001)(55016003)(9686003)(38100700002)(2906002)(316002)(53546011)(7696005)(6506007)(26005)(186003)(5660300002)(33656002)(86362001)(6916009); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NkRTRnVJMXN5NU1idHBBbCtCb1JVWllvN2dVUC93eFpaMHBBcmYrU3BJY1lv?= =?utf-8?B?ckUyT2VDZTRoM2c2TjVLOFBIYVUxTm16OG13eml0ZGJxRnZnSnVFTW9IdVRl?= =?utf-8?B?dDJnTlJncEtTc01EUTZxYzllbzhGUmVzeXhrbFAxQmdXVU5IeXAxaE90YXhr?= =?utf-8?B?Z2JyOUJsYmJmZGFYdnI0RjFXTzZHcld3WnV6dUNvTGJ0TU9zRlVRMkU4STNS?= =?utf-8?B?dFR4c1FYdTN2MDk5WUtSM0RYbFRpSlVhemkyU0R5TllhRWxGWFFqbGtGMkll?= =?utf-8?B?STNMVDh2R1FLSTR5OE5CWUlnWHd1ZXVTeEpyWkY1YlhKaS9jLythTDlRb2pM?= =?utf-8?B?UmRwTkgvZ0VVUUwvamVhdmZPcUUzUTRSNTJ1dWllOUJyQkY5K1AxSWZ1UEIr?= =?utf-8?B?Z2JINUc0a3dodFA2OGYrYXV2bEViN3RyTjNTODBod0QyaVhsWVZDWW1GQ1Vi?= =?utf-8?B?SXRtZ3ZueElweFlwOVRvU2hOdWN3WGlFa3NRZ3ZjU2lpUUlwRThtdjZLbjhz?= =?utf-8?B?UTI2TmlXbVc4eTIvcUdwckx5OGxEVHFSOFVoeTc4SDhvQWFiT3FQVXpVUFI0?= =?utf-8?B?RkM4T012S0p4bUVWZk5qK1VmMTRYNHZWcnVMTUlTNW1VTklOM2d4eEgrZHJm?= =?utf-8?B?YUd3SDRhaUh0ZmdLNHZOajR3cW9DeUdNYnFYR0gvUU9aSDZWNlhWemlSTjBU?= =?utf-8?B?QStLSnlhMFJPcGgwNTVRb1ZUa2Yra1NmZDdxSEtKTldGa0haR3UyaFZXYkdQ?= =?utf-8?B?a29tTVZoYzRGL2dkMkU2ZVM1YWJBYzdUQk1sV29YTzFRSnZ1U2U3YVhhL2V4?= =?utf-8?B?NWNRd0pmYS9tL1Q0R1gvelBVd25ZMFltK0pzVDUwUElYV2ovQ3dCUmRsS29l?= =?utf-8?B?elVEbmJFaElkbjVtUmZVOTBnWEk4WGNtUWZ0OW1YSGFXUzV3K0xZY1I5WXBq?= =?utf-8?B?b25BcVp0bjQ5MTNzVlpDTEdFb2RJUitWT2xkSlVTTmdBeXBxMHQvWTVqSlk3?= =?utf-8?B?UXJkWkwrN2tkRm83cFluaGxDazhNb1IvL3FhSjNMN0NtVythNWkzTXcyQTVY?= =?utf-8?B?WVRhY3Y3S2hobmd5STd1U0paNjFmQUpLcVprZVRoSnl3SXhNVEIwcHhxS2th?= =?utf-8?B?dUZ4dGhlLy93R2dXNTJIODQ3eXZYL1VLQS8ycDJTQlo1Sjd6N1M2T3o0bmxr?= =?utf-8?B?TDVBaHgzNzdSOUxuSUVJbHRRcytveld1YXBsalQ4U3FvTXI4WmdIcnZxdmtB?= =?utf-8?B?bG5rdU5kejMyUUhFcFhVMzNuS3duRmZka1dGQksvYTQxTW51d2JHaitZOVlZ?= =?utf-8?B?cjBndlBhQThZcEp0NVdINDVqbURGZlh0eVhTMWU4ZmdFcDJNV1pmU0gzWVE0?= =?utf-8?B?WVBLVUZRZ0FUa2lFdHFiMHFnbk1aL200ZFZRaTlua3FxKzBrWWZkT1ZmZEhY?= =?utf-8?B?THV4allkcmg5QXZuTjhvYUFkR3c3YXArT2dkM1psMVVrdHB3YzRBMnZKWlhP?= =?utf-8?B?MVZTdnlDWG9wbGRrMCtLRkVTMU1SdkF1WVpCWS8xaFh6TTgyY1lKSUtZQllK?= =?utf-8?B?ZityZUJ4cEJaNDdiWXZ6bjNXbmMrZTlJaklEcmowOERJUkx0OHdkOEEzd3Zo?= =?utf-8?B?TUhsZnk4QndtSlRWbDMwczJkR0RvVmhnQSsvaDczRVdHT1VDMEs2VHM1dVda?= =?utf-8?B?a1NwRDlQa0JlVER6bUdmVDEyVHlQNzNpdkJBMW1TQnRRelpaSVFvUEpNOFlt?= =?utf-8?B?QVVZYkhpSWE1MVZ2RFhIYXBIelY5NCt3QmZoM2FmWmpRdmVjTENTMzdlSUJz?= =?utf-8?B?STBoTmttTXd2T2d4NXZlVXpLbEEyZUcwNFBGNzhoUklxdlRoMzdTZHNlZW1K?= =?utf-8?B?ZkJWTzMwc2s4RDhUNFpJcDNZUldTVENLajFJUTFQS0ZGc0RtM1RHQkEzT3pi?= =?utf-8?Q?yJcyLE2pToRy2UlUpuh2hbTlDuzLY2Aj?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB3559.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 34f31ee4-d792-49ae-6c1a-08da0b110bbe X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Mar 2022 08:01:46.4631 (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: r1LPTH1zHpq7AksBS4o686OHIlL1lHJQr+X4FnbLr2w+POjiMceeLOrfe1a39utE9AtBANCgsmjUbdvx9YXeKw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB4024 X-OriginatorOrg: intel.com Subject: Re: [FFmpeg-devel] [PATCH] libavcodec/qsvenc: enable LowDelayBRC and MaxFrameSizeI/MaxFrameSizeP for more accurate bitrate control 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: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZmZtcGVnLWRldmVsIDxm Zm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhhbGYgT2YgInpoaWxpemhhbyg/ Pz8pIg0KPiBTZW50OiBNb25kYXksIE1hcmNoIDIxLCAyMDIyIDE6MTggUE0NCj4gVG86IEZGbXBl ZyBkZXZlbG9wbWVudCBkaXNjdXNzaW9ucyBhbmQgcGF0Y2hlcyA8ZmZtcGVnLWRldmVsQGZmbXBl Zy5vcmc+DQo+IFN1YmplY3Q6IFJlOiBbRkZtcGVnLWRldmVsXSBbUEFUQ0hdIGxpYmF2Y29kZWMv cXN2ZW5jOiBlbmFibGUNCj4gTG93RGVsYXlCUkMgYW5kIE1heEZyYW1lU2l6ZUkvTWF4RnJhbWVT aXplUCBmb3IgbW9yZSBhY2N1cmF0ZSBiaXRyYXRlIGNvbnRyb2wNCj4gDQo+IA0KPiANCj4gPiBP biBNYXIgMTAsIDIwMjIsIGF0IDY6MTEgUE0sIEhlLCBGYW4gRiA8ZmFuLmYuaGUtYXQtaW50ZWwu Y29tQGZmbXBlZy5vcmc+IHdyb3RlOg0KPiA+DQo+ID4gRmVhdHVyZSBpbnRyb2R1Y3Rpb24gb2Yg TG93RGVsYXlCUkMsIE1heEZyYW1lU2l6ZUkgYW5kIE1heEZyYW1lU2l6ZVAgY291bGQgYmUgZm91 bmQgaGVyZToNCj4gPiBodHRwczovL2dpdGh1Yi5jb20vSW50ZWwtTWVkaWEtU0RLL01lZGlhU0RL L2Jsb2IvbWFzdGVyL2RvYy9tZWRpYXNkay1tYW4ubWQNCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6 IERtaXRyeSBFcm1pbG92IDxkbWl0cnkuZXJtaWxvdkBpbnRlbC5jb20+DQo+ID4gU2lnbmVkLW9m Zi1ieTogRmFuIEYgSGUgPGZhbi5mLmhlQGludGVsLmNvbT4NCj4gPiAtLS0NCj4gPiBkb2MvZW5j b2RlcnMudGV4aSAgIHwgMjYgKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiBsaWJhdmNv ZGVjL3FzdmVuYy5jIHwgMTcgKysrKysrKysrKysrKysrKysgbGliYXZjb2RlYy9xc3ZlbmMuaCB8 ICA2DQo+ID4gKysrKysrDQo+ID4gMyBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspDQo+ ID4NCj4gPiBkaWZmIC0tZ2l0IGEvZG9jL2VuY29kZXJzLnRleGkgYi9kb2MvZW5jb2RlcnMudGV4 aSBpbmRleA0KPiA+IDFiZDM4NjcxY2EuLjQ3Yzg1NzdlMDkgMTAwNjQ0DQo+ID4gLS0tIGEvZG9j L2VuY29kZXJzLnRleGkNCj4gPiArKysgYi9kb2MvZW5jb2RlcnMudGV4aQ0KPiA+IEBAIC0zMjY0 LDYgKzMyNjQsMTQgQEAgRW5hYmxlIHJhdGUgZGlzdG9ydGlvbiBvcHRpbWl6YXRpb24uDQo+ID4g QGl0ZW0gQHZhcnttYXhfZnJhbWVfc2l6ZX0NCj4gPiBNYXhpbXVtIGVuY29kZWQgZnJhbWUgc2l6 ZSBpbiBieXRlcy4NCj4gPg0KPiA+ICtAaXRlbSBAdmFye21heF9mcmFtZV9zaXplX2l9DQo+ID4g K01heGltdW0gZW5jb2RlZCBmcmFtZSBzaXplIGZvciBJIGZyYW1lcyBpbiBieXRlcy4gSWYgdGhp cyB2YWx1ZSBpcw0KPiA+ICtzZXQgYXMgbGFyZ2VyIHRoYW4gemVybywgdGhlbiBmb3IgSSBmcmFt ZXMgdGhlIHZhbHVlIHNldCBieSBtYXhfZnJhbWVfc2l6ZSBpcyBpZ25vcmVkLg0KPiA+ICsNCj4g PiArQGl0ZW0gQHZhcnttYXhfZnJhbWVfc2l6ZV9wfQ0KPiA+ICtNYXhpbXVtIGVuY29kZWQgZnJh bWUgc2l6ZSBmb3IgUCBmcmFtZXMgaW4gYnl0ZXMuIElmIHRoaXMgdmFsdWUgaXMNCj4gPiArc2V0 IGFzIGxhcmdlciB0aGFuIHplcm8sIHRoZW4gZm9yIFAgZnJhbWVzIHRoZSB2YWx1ZSBzZXQgYnkg bWF4X2ZyYW1lX3NpemUgaXMgaWdub3JlZC4NCj4gPiArDQo+ID4gQGl0ZW0gQHZhcnttYXhfc2xp Y2Vfc2l6ZX0NCj4gPiBNYXhpbXVtIGVuY29kZWQgc2xpY2Ugc2l6ZSBpbiBieXRlcy4NCj4gPg0K PiA+IEBAIC0zMjgwLDYgKzMyODgsMTEgQEAgU2V0dGluZyB0aGlzIGZsYWcgZW5hYmxlcyBtYWNy b2Jsb2NrIGxldmVsDQo+ID4gYml0cmF0ZSBjb250cm9sIHRoYXQgZ2VuZXJhbGx5IGltcHJvdmVz IHN1YmplY3RpdmUgdmlzdWFsIHF1YWxpdHkuDQo+ID4gRW5hYmxpbmcgdGhpcyBmbGFnIG1heSBo YXZlIG5lZ2F0aXZlIGltcGFjdCBvbiBwZXJmb3JtYW5jZSBhbmQgb2JqZWN0aXZlIHZpc3VhbCBx dWFsaXR5IG1ldHJpYy4NCj4gPg0KPiA+ICtAaXRlbSBAdmFye2xvd19kZWxheV9icmN9DQo+ID4g K1NldHRpbmcgdGhpcyBmbGFnIHR1cm5zIG9uIG9yIG9mZiBMb3dEZWxheUJSQyBmZWF1dHJlIGlu IHFzdiBwbHVnaW4sDQo+ID4gK3doaWNoIHByb3ZpZGVzIG1vcmUgYWNjdXJhdGUgYml0cmF0ZSBj b250cm9sIHRvIG1pbmltaXplIHRoZSB2YXJpYW5jZQ0KPiA+ICtvZiBiaXRzdHJlYW0gc2l6ZSBm cmFtZSBieSBmcmFtZS4gVmFsdWU6IC0xLWRlZmF1bHQgMC1vZmYgMS1vbg0KPiA+ICsNCj4gPiBA aXRlbSBAdmFye2FkYXB0aXZlX2l9DQo+ID4gVGhpcyBmbGFnIGNvbnRyb2xzIGluc2VydGlvbiBv ZiBJIGZyYW1lcyBieSB0aGUgUVNWIGVuY29kZXIuIFR1cm4gT04NCj4gPiB0aGlzIGZsYWcgdG8g YWxsb3cgY2hhbmdpbmcgb2YgZnJhbWUgdHlwZSBmcm9tIFAgYW5kIEIgdG8gSS4NCj4gPiBAQCAt MzM5Miw2ICszNDA1LDE0IEBAIEVuYWJsZSByYXRlIGRpc3RvcnRpb24gb3B0aW1pemF0aW9uLg0K PiA+IEBpdGVtIEB2YXJ7bWF4X2ZyYW1lX3NpemV9DQo+ID4gTWF4aW11bSBlbmNvZGVkIGZyYW1l IHNpemUgaW4gYnl0ZXMuDQo+ID4NCj4gPiArQGl0ZW0gQHZhcnttYXhfZnJhbWVfc2l6ZV9pfQ0K PiA+ICtNYXhpbXVtIGVuY29kZWQgZnJhbWUgc2l6ZSBmb3IgSSBmcmFtZXMgaW4gYnl0ZXMuIElm IHRoaXMgdmFsdWUgaXMNCj4gPiArc2V0IGFzIGxhcmdlciB0aGFuIHplcm8sIHRoZW4gZm9yIEkg ZnJhbWVzIHRoZSB2YWx1ZSBzZXQgYnkgbWF4X2ZyYW1lX3NpemUgaXMgaWdub3JlZC4NCj4gPiAr DQo+ID4gK0BpdGVtIEB2YXJ7bWF4X2ZyYW1lX3NpemVfcH0NCj4gPiArTWF4aW11bSBlbmNvZGVk IGZyYW1lIHNpemUgZm9yIFAgZnJhbWVzIGluIGJ5dGVzLiBJZiB0aGlzIHZhbHVlIGlzDQo+ID4g K3NldCBhcyBsYXJnZXIgdGhhbiB6ZXJvLCB0aGVuIGZvciBQIGZyYW1lcyB0aGUgdmFsdWUgc2V0 IGJ5IG1heF9mcmFtZV9zaXplIGlzIGlnbm9yZWQuDQo+ID4gKw0KPiA+IEBpdGVtIEB2YXJ7bWF4 X3NsaWNlX3NpemV9DQo+ID4gTWF4aW11bSBlbmNvZGVkIHNsaWNlIHNpemUgaW4gYnl0ZXMuDQo+ ID4NCj4gPiBAQCAtMzQwMCw2ICszNDIxLDExIEBAIFNldHRpbmcgdGhpcyBmbGFnIGVuYWJsZXMg bWFjcm9ibG9jayBsZXZlbA0KPiA+IGJpdHJhdGUgY29udHJvbCB0aGF0IGdlbmVyYWxseSBpbXBy b3ZlcyBzdWJqZWN0aXZlIHZpc3VhbCBxdWFsaXR5Lg0KPiA+IEVuYWJsaW5nIHRoaXMgZmxhZyBt YXkgaGF2ZSBuZWdhdGl2ZSBpbXBhY3Qgb24gcGVyZm9ybWFuY2UgYW5kIG9iamVjdGl2ZSB2aXN1 YWwgcXVhbGl0eSBtZXRyaWMuDQo+ID4NCj4gPiArQGl0ZW0gQHZhcntsb3dfZGVsYXlfYnJjfQ0K PiA+ICtTZXR0aW5nIHRoaXMgZmxhZyB0dXJucyBvbiBvciBvZmYgTG93RGVsYXlCUkMgZmVhdXRy ZSBpbiBxc3YgcGx1Z2luLA0KPiA+ICt3aGljaCBwcm92aWRlcyBtb3JlIGFjY3VyYXRlIGJpdHJh dGUgY29udHJvbCB0byBtaW5pbWl6ZSB0aGUgdmFyaWFuY2UNCj4gPiArb2YgYml0c3RyZWFtIHNp emUgZnJhbWUgYnkgZnJhbWUuIFZhbHVlOiAtMS1kZWZhdWx0IDAtb2ZmIDEtb24NCj4gPiArDQo+ ID4gQGl0ZW0gQHZhcntwX3N0cmF0ZWd5fQ0KPiA+IEVuYWJsZSBQLXB5cmFtaWQ6IDAtZGVmYXVs dCAxLXNpbXBsZSAyLXB5cmFtaWQoYmYgbmVlZCB0byBiZSBzZXQgdG8gMCkuDQo+ID4NCj4gPiBk aWZmIC0tZ2l0IGEvbGliYXZjb2RlYy9xc3ZlbmMuYyBiL2xpYmF2Y29kZWMvcXN2ZW5jLmMgaW5k ZXgNCj4gPiA5YjcxNDg3NjY2Li5kNWUyYzVmYjMyIDEwMDY0NA0KPiA+IC0tLSBhL2xpYmF2Y29k ZWMvcXN2ZW5jLmMNCj4gPiArKysgYi9saWJhdmNvZGVjL3FzdmVuYy5jDQo+ID4gQEAgLTM3NCw2 ICszNzQsMTMgQEAgc3RhdGljIHZvaWQgZHVtcF92aWRlb19wYXJhbShBVkNvZGVjQ29udGV4dA0K PiA+ICphdmN0eCwgUVNWRW5jQ29udGV4dCAqcSwgI2lmIFFTVl9WRVJTSU9OX0FUTEVBU1QoMSwg MTYpDQo+ID4gICAgIGF2X2xvZyhhdmN0eCwgQVZfTE9HX1ZFUkJPU0UsICJJbnRSZWZDeWNsZURp c3Q6ICUiUFJJZDE2IlxuIiwNCj4gPiBjbzMtPkludFJlZkN5Y2xlRGlzdCk7ICNlbmRpZg0KPiA+ ICsjaWYgUVNWX1ZFUlNJT05fQVRMRUFTVCgxLCAyMykNCj4gPiArICAgIGF2X2xvZyhhdmN0eCwg QVZfTE9HX1ZFUkJPU0UsICJMb3dEZWxheUJSQzogJXNcbiIsDQo+ID4gK3ByaW50X3RocmVlc3Rh dGUoY28zLT5Mb3dEZWxheUJSQykpOw0KPiA+ICsjZW5kaWYNCj4gPiArI2lmIFFTVl9WRVJTSU9O X0FUTEVBU1QoMSwgMTkpDQo+ID4gKyAgICBhdl9sb2coYXZjdHgsIEFWX0xPR19WRVJCT1NFLCAi TWF4RnJhbWVTaXplSTogJWQ7ICIsIGNvMy0NCj4gPk1heEZyYW1lU2l6ZUkpOw0KPiA+ICsgICAg YXZfbG9nKGF2Y3R4LCBBVl9MT0dfVkVSQk9TRSwgIk1heEZyYW1lU2l6ZVA6ICVkXG4iLA0KPiA+ ICtjbzMtPk1heEZyYW1lU2l6ZVApOyAjZW5kaWYNCj4gPiB9DQo+ID4NCj4gPiBzdGF0aWMgdm9p ZCBkdW1wX3ZpZGVvX3ZwOV9wYXJhbShBVkNvZGVjQ29udGV4dCAqYXZjdHgsIFFTVkVuY0NvbnRl eHQNCj4gPiAqcSwgQEAgLTk4OCw2ICs5OTUsMTYgQEAgc3RhdGljIGludCBpbml0X3ZpZGVvX3Bh cmFtKEFWQ29kZWNDb250ZXh0DQo+ID4gKmF2Y3R4LCBRU1ZFbmNDb250ZXh0ICpxKSAjaWYgUVNW X1ZFUlNJT05fQVRMRUFTVCgxLCAxNikNCj4gPiAgICAgICAgICAgICBpZiAocS0+aW50X3JlZl9j eWNsZV9kaXN0ID49IDApDQo+ID4gICAgICAgICAgICAgICAgIHEtPmV4dGNvMy5JbnRSZWZDeWNs ZURpc3QgPSBxLT5pbnRfcmVmX2N5Y2xlX2Rpc3Q7DQo+ID4gKyNlbmRpZg0KPiA+ICsjaWYgUVNW X1ZFUlNJT05fQVRMRUFTVCgxLCAyMykNCj4gPiArICAgICAgICAgICAgaWYgKHEtPmxvd19kZWxh eV9icmMgPj0gMCkNCj4gPiArICAgICAgICAgICAgICAgIHEtPmV4dGNvMy5Mb3dEZWxheUJSQyA9 IHEtPmxvd19kZWxheV9icmMgPw0KPiA+ICtNRlhfQ09ESU5HT1BUSU9OX09OIDogTUZYX0NPRElO R09QVElPTl9PRkY7ICNlbmRpZiAjaWYNCj4gPiArUVNWX1ZFUlNJT05fQVRMRUFTVCgxLCAxOSkN Cj4gPiArICAgICAgICAgICAgaWYgKHEtPm1heF9mcmFtZV9zaXplX3AgPj0gMCkNCj4gPiArICAg ICAgICAgICAgICAgIHEtPmV4dGNvMy5NYXhGcmFtZVNpemVJID0gcS0+bWF4X2ZyYW1lX3NpemVf aTsNCj4gPiArICAgICAgICAgICAgaWYgKHEtPm1heF9mcmFtZV9zaXplX3AgPj0gMCkNCj4gPiAr ICAgICAgICAgICAgICAgIHEtPmV4dGNvMy5NYXhGcmFtZVNpemVQID0gcS0+bWF4X2ZyYW1lX3Np emVfcDsNCj4gPiAjZW5kaWYNCj4gPiAgICAgICAgIH0NCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9s aWJhdmNvZGVjL3FzdmVuYy5oIGIvbGliYXZjb2RlYy9xc3ZlbmMuaCBpbmRleA0KPiA+IDJiZGE4 NTg0MjcuLjVlMDc1ODAyODkgMTAwNjQ0DQo+ID4gLS0tIGEvbGliYXZjb2RlYy9xc3ZlbmMuaA0K PiA+ICsrKyBiL2xpYmF2Y29kZWMvcXN2ZW5jLmgNCj4gPiBAQCAtOTEsNiArOTEsOCBAQA0KPiA+ IHsgInZlcnlzbG93IiwgICAgTlVMTCwgMCwgQVZfT1BUX1RZUEVfQ09OU1QsIHsgLmk2NCA9DQo+ IE1GWF9UQVJHRVRVU0FHRV9CRVNUX1FVQUxJVFkgIH0sIElOVF9NSU4sIElOVF9NQVgsIFZFLCAi cHJlc2V0IiB9LCBcDQo+ID4geyAicmRvIiwgICAgICAgICAgICAiRW5hYmxlIHJhdGUgZGlzdG9y dGlvbiBvcHRpbWl6YXRpb24iLCAgICBPRkZTRVQocXN2LnJkbyksIEFWX09QVF9UWVBFX0lOVCwg eyAuaTY0ID0gLTEgfSwgLTEsICAgICAgICAgIDEsIFZFIH0sICAgICAgICAgICAgICAgICAgICAg ICAgIFwNCj4gPiB7ICJtYXhfZnJhbWVfc2l6ZSIsICJNYXhpbXVtIGVuY29kZWQgZnJhbWUgc2l6 ZSBpbiBieXRlcyIsIE9GRlNFVChxc3YubWF4X2ZyYW1lX3NpemUpLCBBVl9PUFRfVFlQRV9JTlQs IHsgLmk2NCA9IC0xIH0sIC0xLCBVSU5UMTZfTUFYLCBWRSB9LCAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4gK3sgIm1heF9mcmFtZV9zaXplX2kiLCAiTWF4aW11bSBlbmNvZGVkIEkgZnJh bWUgc2l6ZSBpbiBieXRlcyIsT0ZGU0VUKHFzdi5tYXhfZnJhbWVfc2l6ZV9pKSwgQVZfT1BUX1RZ UEVfSU5ULCB7IC5pNjQgPSAtMSB9LCAtMSwgVUlOVDE2X01BWCwgVkUgfSwgICAgICAgICAgICAg ICAgICAgICAgIFwNCj4gPiAreyAibWF4X2ZyYW1lX3NpemVfcCIsICJNYXhpbXVtIGVuY29kZWQg UCBmcmFtZSBzaXplIGluIGJ5dGVzIixPRkZTRVQocXN2Lm1heF9mcmFtZV9zaXplX3ApLCBBVl9P UFRfVFlQRV9JTlQsIHsgLmk2NCA9IC0xIH0sIC0xLCBVSU5UMTZfTUFYLCBWRSB9LCAgICAgICAg ICAgICAgICAgICAgICAgXA0KPiANCj4gSSBjYW4ndCBmaW5kIHRoZSB0aHJlc2hvbGQgZnJvbSAn bWVkaWFzZGstbWFuLm1k4oCZLg0KPiBEb2VzIGBVSU5UMTZfTUFYYCBjb21lcyBmcm9tIG1lZGlh c2RrLCBvciBqdXN0IGEgcmVhc29uYWJsZSBsaW1pdGF0aW9uDQo+IHNldCBieSB0aGlzIHdyYXBw ZXI/DQo+IA0KVGhhbmtzIGZvciBwb2ludGluZyBpdCBvdXQuIEl0IHNob3VsZCBiZSBJTlQzMl9N QVguIFdpbGwgcmVmaW5lIHRoZSBwYXRjaCBhbmQgc2VuZCBpdCBhZ2Fpbi4NCg0KPiA+IHsgIm1h eF9zbGljZV9zaXplIiwgIk1heGltdW0gZW5jb2RlZCBzbGljZSBzaXplIGluIGJ5dGVzIiwgT0ZG U0VUKHFzdi5tYXhfc2xpY2Vfc2l6ZSksIEFWX09QVF9UWVBFX0lOVCwgeyAuaTY0ID0gLTEgfSwg LTEsIFVJTlQxNl9NQVgsIFZFIH0sICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiB7ICJi aXRyYXRlX2xpbWl0IiwgICJUb2dnbGUgYml0cmF0ZSBsaW1pdGF0aW9ucyIsIE9GRlNFVChxc3Yu Yml0cmF0ZV9saW1pdCksICBBVl9PUFRfVFlQRV9JTlQsIHsgLmk2NCA9IC0xIH0sIC0xLCAgICAg ICAgICAxLCBWRSB9LCBcDQo+ID4geyAibWJicmMiLCAgICAgICAgICAiTUIgbGV2ZWwgYml0cmF0 ZSBjb250cm9sIiwgICAgICAgICAgICAgICBPRkZTRVQocXN2Lm1iYnJjKSwgQVZfT1BUX1RZUEVf SU5ULCB7IC5pNjQgPSAtMSB9LCAtMSwgICAgICAgICAgMSwgVkUgfSwgICAgICAgICAgICAgICAg ICAgICAgICAgXA0KPiA+IEBAIC0xMDIsNiArMTA0LDcgQEANCj4gPiB7ICJmb3JjZWRfaWRyIiwg ICAgICJGb3JjaW5nIEkgZnJhbWVzIGFzIElEUiBmcmFtZXMiLCBPRkZTRVQocXN2LmZvcmNlZF9p ZHIpLCAgICAgQVZfT1BUX1RZUEVfQk9PTCx7IC5pNjQgPSAwICB9LCAgMCwgICAgICAgICAgMSwg VkUgfSwgXA0KPiA+IHsgImxvd19wb3dlciIsICJlbmFibGUgbG93IHBvd2VyIG1vZGUoZXhwZXJp bWVudGFsOiBtYW55IGxpbWl0YXRpb25zIGJ5IG1meCB2ZXJzaW9uLCBCUkMgbW9kZXMsIGV0Yy4p IiwgT0ZGU0VUKHFzdi5sb3dfcG93ZXIpLCBBVl9PUFRfVFlQRV9CT09MLCB7IC5pNjQgPSAtMX0s IC0xLCAxLCBWRX0sXA0KPiA+IHsgImRibGtfaWRjIiwgIlRoaXMgb3B0aW9uIGRpc2FibGUgZGVi bG9ja2luZy4gSXQgaGFzIHZhbHVlIGluIHJhbmdlIDB+Mi4iLCBPRkZTRVQocXN2LmRibGtfaWRj KSwgICBBVl9PUFRfVFlQRV9JTlQsICAgIHsgLmk2NCA9IDAgfSwgICAwLCAgMiwgIFZFfSwgICAg XA0KPiA+ICt7ICJsb3dfZGVsYXlfYnJjIiwgICAiQWxsb3cgdG8gc3RyaWN0bHkgb2JleSBhdmcg ZnJhbWUgc2l6ZSIsIE9GRlNFVChxc3YubG93X2RlbGF5X2JyYyksICBBVl9PUFRfVFlQRV9CT09M LHsgLmk2NCA9IC0xIH0sIC0xLCAgICAgICAgICAxLCBWRSB9LCAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ID4NCj4gPiBleHRlcm4gY29uc3QgQVZDb2RlY0hXQ29uZmlnSW50ZXJuYWwgKmNv bnN0IGZmX3Fzdl9lbmNfaHdfY29uZmlnc1tdOw0KPiA+DQo+ID4gQEAgLTE3Myw2ICsxNzYsOCBA QCB0eXBlZGVmIHN0cnVjdCBRU1ZFbmNDb250ZXh0IHsNCj4gPiAgICAgaW50IHZjbTsNCj4gPiAg ICAgaW50IHJkbzsNCj4gPiAgICAgaW50IG1heF9mcmFtZV9zaXplOw0KPiA+ICsgICAgaW50IG1h eF9mcmFtZV9zaXplX2k7DQo+ID4gKyAgICBpbnQgbWF4X2ZyYW1lX3NpemVfcDsNCj4gPiAgICAg aW50IG1heF9zbGljZV9zaXplOw0KPiA+ICAgICBpbnQgZGJsa19pZGM7DQo+ID4NCj4gPiBAQCAt MjEyLDYgKzIxNyw3IEBAIHR5cGVkZWYgc3RydWN0IFFTVkVuY0NvbnRleHQgew0KPiA+ICAgICBj aGFyICpsb2FkX3BsdWdpbnM7DQo+ID4gICAgIFNldEVuY29kZUN0cmxDQiAqc2V0X2VuY29kZV9j dHJsX2NiOw0KPiA+ICAgICBpbnQgZm9yY2VkX2lkcjsNCj4gPiArICAgIGludCBsb3dfZGVsYXlf YnJjOw0KPiA+IH0gUVNWRW5jQ29udGV4dDsNCj4gPg0KPiA+IGludCBmZl9xc3ZfZW5jX2luaXQo QVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBRU1ZFbmNDb250ZXh0ICpxKTsNCj4gPiAtLQ0KPiA+IDIu MjUuMQ0KPiA+DQo+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18NCj4gPiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0DQo+ID4gZmZtcGVnLWRldmVsQGZm bXBlZy5vcmcNCj4gPiBodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWct ZGV2ZWwNCj4gPg0KPiA+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFp bA0KPiA+IGZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1 YnNjcmliZSIuDQo+IA0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXw0KPiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0DQo+IGZmbXBlZy1kZXZlbEBmZm1w ZWcub3JnDQo+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZl bA0KPiANCj4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsIGZmbXBl Zy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcNCj4gd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIu DQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWct ZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVn Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0 IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0 aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==