From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8C90BA0C43; Tue, 28 Sep 2021 16:51:26 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1A0C440E3C; Tue, 28 Sep 2021 16:51:26 +0200 (CEST) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2043.outbound.protection.outlook.com [40.107.220.43]) by mails.dpdk.org (Postfix) with ESMTP id 8544D40DF6 for ; Tue, 28 Sep 2021 16:51:24 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q72NhrmIBGsXFzYDPKrGVnjOzfIAjggSf3hx2xr6/0yNAJfaW/o/xlH7ga/gT+LawZWmfrtFaTxAYkqxO0ljABBq31FmqytVsaOwTeRTcgcyGyktiXDc7SKhCMJWAaUXfV0/RnpQtQkWfHDDkW9rrWnQwK3Vngz5ZBYujwbjgGoaRJTrosn0hcuAqLK0M0ZjTh9irwBI1HkH1P/JMcdfoB6Niltvt4a6P1QtKw+7mUpWoxuTxMtcYpUxs2xhOYWOTE3qedr+FTfuPWw52egxiZK2dyBJFXERmS+gco/kfiAT/5V1laWpCXWX1lHqAqdn8EMqKOSxU6GUt3JqAl5ljg== 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; bh=U6gNDAiEmNiQ6V031/T7JFFX3MUymU26Rht5uWy3k/c=; b=aGzo0bZcOnXmeDXKkm5O8gukOLPW0eYmhGvcuQfvp1qik4nsCHwrx3sUCAsDPC+KDirQQBo5ln0kSOs7pXv3t/z2K129XUIF4DKvmBapUUSfka5LyC11lpjw0ngFTp6+PFWcTut5wYM7V1+mxfPF/1c0fKqjqWpKf/f/HHtl4oF1IYGV5YtAqGKjuHLSuSjOTXUHBTbO0gHkS6QA2fuvx3jxhJU+ZRNblVbhSSqDlvA++4yveFkppp7MAVWklppAoBc+Yv4yZVQyvgIISjzD/59PPafopxBup+sJjRxrOESfOzP16eorMIvi9v5PkBscHnPIRIheGvBa16LQImAdqA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U6gNDAiEmNiQ6V031/T7JFFX3MUymU26Rht5uWy3k/c=; b=DZtuT8hPdXi4U0uMT87sb7V3zAob2GxGXwS9UrSokGlu2EvgtBvTG+060/F413DO+6v3fSfozBi8jOTg+ICqmggKml7C8FkyMAG3DBlUsCT4WmLkGU2fpfqTg+fS5CGK6SJKH9TwdgGNawVV+4Bq1/SZZp34kGeU0Wvg30FHu0426I6DSmG+WU8aBtrLNejRhukxPfR9mEbEprBMIOTiHsFAA4b72DW2Ob7TKW3fv2ApC59SGUmiJB+KR6LDdrTCL4OlQdsRJh4KNb86dsIuAGDSOljCkXzJTTPYLlgxxSRz+wIAkPdUE7OP1mTBc2a2NRyssHofj7knHSwnh1uSiw== Received: from DM4PR12MB5373.namprd12.prod.outlook.com (2603:10b6:5:39a::17) by DM4PR12MB5358.namprd12.prod.outlook.com (2603:10b6:5:39c::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.14; Tue, 28 Sep 2021 14:51:22 +0000 Received: from DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::584f:672a:653f:fe25]) by DM4PR12MB5373.namprd12.prod.outlook.com ([fe80::584f:672a:653f:fe25%5]) with mapi id 15.20.4544.022; Tue, 28 Sep 2021 14:51:22 +0000 From: "Xueming(Steven) Li" To: "jerinjacobk@gmail.com" CC: NBU-Contact-Thomas Monjalon , "andrew.rybchenko@oktetlabs.ru" , "dev@dpdk.org" , "ferruh.yigit@intel.com" Thread-Topic: [dpdk-dev] [PATCH v1] ethdev: introduce shared Rx queue Thread-Index: AQHXjRRw90lOFVUh8UWJorWd1QGccqtrMQAAgAAFuiCAAr2ogIAAA7rAgAA/vYCARM3YgIAGeHkAgAAiNICAABZuAIAAB6MAgAADvwCAABRBAA== Date: Tue, 28 Sep 2021 14:51:22 +0000 Message-ID: <912494a7d15878bd5db1febae5bc7c7b7c01b18f.camel@nvidia.com> References: <20210727034204.20649-1-xuemingl@nvidia.com> <20210809114716.22035-1-xuemingl@nvidia.com> <6d4308c307a72d62b0be4d61f70f8d0c64a4e7ba.camel@nvidia.com> <15b1590a8899d85e85bb4f7c104b9399654ee160.camel@nvidia.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.40.4 authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: eca4c36f-e93d-4f25-a35f-08d9828f7017 x-ms-traffictypediagnostic: DM4PR12MB5358: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /grI6bkQ3MNXQARTz0NbCmd0uTQnFahq7v6dp7hr1FG1+jb/slVYcwksydTgHaCNbdX0u68ZKcMaH8z38O/RgCWrHYadbs3GdbTbzldZRNjgnF3usuAroWOteq+LhO1uyMlx9ztEh59AbZxJF1V1VcRCPS849erJMzcyKNXe3coZGRI1izlSmmFF5vfS1RAvXYYWCXcH2vs7LSvQGJ1m8zhjvOzbI0/QpY4iXjp8pl4ZD0CfpAFRyg+wN67jrQPqGBqlEK5eXwjtYr2qedvZ9aPBcT2KQxHHss3oPeX1P9aJD3+De3ALU59f3i3A86FArqXYxFvCy3IOW+229lizsBhL4nBDxiyuVP/3Cy/3df9SqwGpxsQFV5FYSjl1j9Z3ghWegcK9B5pPkZOUC9lTNvhxmWGBYr2Jtn2/70J7YuRAqw+n5/rBiSYCi6Nr9zl3lMPSa1hLngHm2W9nYWLWZusT5dyhUYf44oFAmC91OIFQ3GkwMaw0Gcz/+SfC+H1ik4YnChD/ikSceo6qevx2xCTXuHWrvEg8aIUVQD9/CGwsG2E8O6LSIf/ql5PLUqrJIfFu/jsKSvz3MFAi1+IMELK1SZrEShTAy9/4Wm5TAHsTaLZnpz6C+ItMvMSbTglJfFMHFAIbDr7GZNBHZJH+7y6ueOR3tZ6uRaZccQHZRJwfc3ZO5MbybvSfB4SsAqT1SeQ33wBfTDHt/7s4shleztSY/TgKQhcApjYhi6g0JgH31V2HLepvb98MVaB9tZhevUSXEI4m1j7BXK5Q3e1+FjVsgzSyMawI6cK12OFOaL8= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5373.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(66946007)(53546011)(6506007)(91956017)(76116006)(66476007)(66556008)(64756008)(66446008)(30864003)(71200400001)(4326008)(6916009)(508600001)(83380400001)(8676002)(6512007)(316002)(5660300002)(36756003)(54906003)(8936002)(2906002)(6486002)(122000001)(38070700005)(2616005)(38100700002)(186003)(26005)(86362001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Z01TbXJOSFBNR0FCK2JJUTZGN2xsSGpNQnZSUGUwajRkc3BndVpiTThjdmdo?= =?utf-8?B?YitwcGE3VGZBUlZoTVNySlhhdmxlRy9wLzViK3h5ekx6NHpmc3RKNTFBUm8v?= =?utf-8?B?UkppV3l1bHhyVXpWdE9zVG5iVXVicVlCR3czOU1WdDVlMElJRXVJNWlkbFcw?= =?utf-8?B?NEN6dm5uY1FlbHNoblg4b05kdmVTNFY2ZzJCTDlET1BwdUJ0L2NHYTI1dDMz?= =?utf-8?B?VGs1cTJtaEhiRVYzRmxRQkRHRlU3RWxsajdYYXNkRzdiYks3bmN3T2lpM3I0?= =?utf-8?B?VHVYR0M2cXJqS1N0MnhIM2hIWnVJNVd5WDNIRVJrblJEOG4zSmhyUkhmaVg1?= =?utf-8?B?ZDdUZndwRE9JZGJXMHgwU2E4ZlZqc1FNUytRbVcxNXhDL00zMVFCM1dUMHFk?= =?utf-8?B?RGJPbUVlQVhLZTB4SDduZUhlMTRGUDBOMHZwa3FsYTk0UDRmdDNnWGpxaC9Q?= =?utf-8?B?TitSdFd3U2VheS9jblVMazJXcExPeHpZeWo3S0ZTL0daVEVjaWFjWUpuNjA0?= =?utf-8?B?M3hHb0VvNHptaGxaWkNNWEl2TlIyeSt4b1hrUTNIemNXaGZkN3lqWWM5LzlW?= =?utf-8?B?NVBsSit6ME9JdjNvOVBsK3lDUmhnMG1NMlJjb1NtTFZ4SUlzazJUSmZGa1Y0?= =?utf-8?B?anZLenpKazVBc3hROG1iZUVFSHN0NWluNjBlU09ZMkZCL2Y5QjNWTVRsK2JD?= =?utf-8?B?RVhVUzEyQk00ZGR2MG56bEpTVHZoTzNoMFRhSDF1M3cycnlRd1pnNkhkWjNz?= =?utf-8?B?U3M0emIrWVFSb2Z1U1c0MHlRcXlvL0FnRGhOd21tZWRPb2JTL2hhdnNGSGFN?= =?utf-8?B?blEwVG9JNWszdzJiRGdWVlhHVzk2b094aHg3LzFUYnBVdXhPd1k3ZERYM3Z5?= =?utf-8?B?RmhMYzgxMEQzbGtlWDhUTWNlUVkrZUt4QXEyMzQraDRrbjR4MFk5TW5YSWNv?= =?utf-8?B?UnJpemdYeDNsNFdObmpkMkF0ejduM1pnUkxlQUVsSDR1elRtd3VDR1BoL3hZ?= =?utf-8?B?dG01NmhCRDA1dUwwR0NuSXN3WnB6RnlqT3pmVmZ1R2JOMTFjOFZROUZQM2Nl?= =?utf-8?B?OXVYeWFhNnRkUVVsdWIyZjhSU2IwZFpOc0ZHKzI1SDM4RzFPd3g4TlRiR0ZD?= =?utf-8?B?SGhSd1JNNEFmS0lVUlhYN1Uyc09oaVlXWnVNcUhSWHVRQVhNN0h6R1Jqc3JF?= =?utf-8?B?UEhXSTNDUUVhRXUvUnF3Um1VWm1McGQ5VGZ5L0hERXBRalVVdzVYdXVDRlRv?= =?utf-8?B?dXM3cDZmc0Fjb1FhWnRwaHZQTmMzK1JPaWExQ3ZtNzNBa1FoRnM3dEZLUHht?= =?utf-8?B?a0pmTHhncDJRMHhVV0toRXdlSUpKdEYzd2Z6aC9SKzJiWnhwK29YRTY0eE1q?= =?utf-8?B?cVFpdXh1K1pCaXloeXNzb2RyLzhmeVBHSUhDUERQZXBJQWQ1RUhJY010ZDh0?= =?utf-8?B?czFkZEh3STE3dnZxUTZkamNYV1l0VWtzOXdSZ0wyTTZ3QjRITFVBN1VUMHNr?= =?utf-8?B?ZGtIK2pRU1VYaFljdHBiaGptU0x1QzZRVlVOc2lqOEhiQ3QxbVpDeHd3ZkFG?= =?utf-8?B?ZTJaRWdmL2V2K3Bqakdtb0x4TURMSWt4YjY0dGlmcm5yQkFEZXpIVGF3ODVj?= =?utf-8?B?WGhtZEl1a3BoaHV6WkV6YmR2SWdCUkFwSG1uVEQ0aXNJODRpUVdsTjIwR3Fu?= =?utf-8?B?ZnBzcTA5WERLeFJVcnVMSC9ISFNHSHJySzhaL3dZKzF3cHdBWXVqNzNUTWVO?= =?utf-8?B?TlYvSVlCWnhRbFVrVThoaGc1dEJ3cFN3NStOcTJsc1BkNVhjblBtaXF2djVX?= =?utf-8?B?Zk1tbm4yandvYWduRC9rdz09?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <514EED5A48A63E4B9C9827427FC38720@namprd12.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5373.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eca4c36f-e93d-4f25-a35f-08d9828f7017 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Sep 2021 14:51:22.0554 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Nd815DBBSIMbXdESreQMrgYfgPaHEUARWki7c1b6gCNSZmj3VP0zDoDCWI8SlnVWTtrESnHNZRhmLukN0gwcJA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5358 Subject: Re: [dpdk-dev] [PATCH v1] ethdev: introduce shared Rx queue X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" T24gVHVlLCAyMDIxLTA5LTI4IGF0IDE5OjA4ICswNTMwLCBKZXJpbiBKYWNvYiB3cm90ZToNCj4g T24gVHVlLCBTZXAgMjgsIDIwMjEgYXQgNjo1NSBQTSBYdWVtaW5nKFN0ZXZlbikgTGkgPHh1ZW1p bmdsQG52aWRpYS5jb20+IHdyb3RlOg0KPiA+IA0KPiA+IE9uIFR1ZSwgMjAyMS0wOS0yOCBhdCAx ODoyOCArMDUzMCwgSmVyaW4gSmFjb2Igd3JvdGU6DQo+ID4gPiBPbiBUdWUsIFNlcCAyOCwgMjAy MSBhdCA1OjA3IFBNIFh1ZW1pbmcoU3RldmVuKSBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT4gd3Jv dGU6DQo+ID4gPiA+IA0KPiA+ID4gPiBPbiBUdWUsIDIwMjEtMDktMjggYXQgMTU6MDUgKzA1MzAs IEplcmluIEphY29iIHdyb3RlOg0KPiA+ID4gPiA+IE9uIFN1biwgU2VwIDI2LCAyMDIxIGF0IDEx OjA2IEFNIFh1ZW1pbmcoU3RldmVuKSBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT4gd3JvdGU6DQo+ ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+IE9uIFdlZCwgMjAyMS0wOC0xMSBhdCAxMzowNCArMDEw MCwgRmVycnVoIFlpZ2l0IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiBPbiA4LzExLzIwMjEgOToyOCBB TSwgWHVlbWluZyhTdGV2ZW4pIExpIHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g PiA+ID4gPiA+ID4gPiA+IEZyb206IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+ DQo+ID4gPiA+ID4gPiA+ID4gPiBTZW50OiBXZWRuZXNkYXksIEF1Z3VzdCAxMSwgMjAyMSA0OjAz IFBNDQo+ID4gPiA+ID4gPiA+ID4gPiBUbzogWHVlbWluZyhTdGV2ZW4pIExpIDx4dWVtaW5nbEBu dmlkaWEuY29tPg0KPiA+ID4gPiA+ID4gPiA+ID4gQ2M6IGRwZGstZGV2IDxkZXZAZHBkay5vcmc+ OyBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+OyBOQlUtQ29udGFjdC1UaG9t YXMgTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+Ow0KPiA+ID4gPiA+ID4gPiA+ID4gQW5k cmV3IFJ5YmNoZW5rbyA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+DQo+ID4gPiA+ID4g PiA+ID4gPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjFdIGV0aGRldjogaW50cm9k dWNlIHNoYXJlZCBSeCBxdWV1ZQ0KPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4g PiBPbiBNb24sIEF1ZyA5LCAyMDIxIGF0IDc6NDYgUE0gWHVlbWluZyhTdGV2ZW4pIExpIDx4dWVt aW5nbEBudmlkaWEuY29tPiB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4g PiA+ID4gPiA+IEhpLA0KPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IEZyb206 IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gU2VudDogTW9uZGF5LCBBdWd1c3QgOSwgMjAyMSA5OjUxIFBNDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gVG86IFh1ZW1pbmcoU3RldmVuKSBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT4NCj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiBDYzogZHBkay1kZXYgPGRldkBkcGRrLm9yZz47IEZlcnJ1aCBZaWdp dCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gTkJVLUNv bnRhY3QtVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PjsgQW5kcmV3IFJ5YmNo ZW5rbw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5y dT4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0gg djFdIGV0aGRldjogaW50cm9kdWNlIHNoYXJlZCBSeCBxdWV1ZQ0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IE9uIE1vbiwgQXVnIDksIDIwMjEgYXQgNToxOCBQ TSBYdWVtaW5nIExpIDx4dWVtaW5nbEBudmlkaWEuY29tPiB3cm90ZToNCj4gPiA+ID4gPiA+ID4g PiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gSW4gY3VycmVudCBEUERLIGZyYW1l d29yaywgZWFjaCBSWCBxdWV1ZSBpcyBwcmUtbG9hZGVkIHdpdGggbWJ1ZnMNCj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IGZvciBpbmNvbWluZyBwYWNrZXRzLiBXaGVuIG51bWJlciBvZiByZXByZXNl bnRvcnMgc2NhbGUgb3V0IGluIGENCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHN3aXRjaCBkb21h aW4sIHRoZSBtZW1vcnkgY29uc3VtcHRpb24gYmVjYW1lIHNpZ25pZmljYW50LiBNb3N0DQo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiBpbXBvcnRhbnQsIHBvbGxpbmcgYWxsIHBvcnRzIGxlYWRzIHRv IGhpZ2ggY2FjaGUgbWlzcywgaGlnaA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gbGF0ZW5jeSBh bmQgbG93IHRocm91Z2hwdXQuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IFRoaXMgcGF0Y2ggaW50cm9kdWNlcyBzaGFyZWQgUlggcXVldWUuIFBvcnRz IHdpdGggc2FtZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gY29uZmlndXJhdGlvbiBpbiBhIHN3 aXRjaCBkb21haW4gY291bGQgc2hhcmUgUlggcXVldWUgc2V0IGJ5IHNwZWNpZnlpbmcgc2hhcmlu ZyBncm91cC4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IFBvbGxpbmcgYW55IHF1ZXVlIHVzaW5n IHNhbWUgc2hhcmVkIFJYIHF1ZXVlIHJlY2VpdmVzIHBhY2tldHMgZnJvbQ0KPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gYWxsIG1lbWJlciBwb3J0cy4gU291cmNlIHBvcnQgaXMgaWRlbnRpZmllZCBi eSBtYnVmLT5wb3J0Lg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiBQb3J0IHF1ZXVlIG51bWJlciBpbiBhIHNoYXJlZCBncm91cCBzaG91bGQgYmUgaWRl bnRpY2FsLiBRdWV1ZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gaW5kZXggaXMNCj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+IDE6MSBtYXBwZWQgaW4gc2hhcmVkIGdyb3VwLg0KPiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBTaGFyZSBSWCBxdWV1ZSBpcyBz dXBwb3NlZCB0byBiZSBwb2xsZWQgb24gc2FtZSB0aHJlYWQuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IE11bHRpcGxlIGdyb3VwcyBpcyBzdXBwb3J0 ZWQgYnkgZ3JvdXAgSUQuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gSXMgdGhpcyBvZmZsb2FkIHNwZWNpZmljIHRvIHRoZSByZXByZXNlbnRvcj8gSWYgc28g Y2FuIHRoaXMgbmFtZSBiZSBjaGFuZ2VkIHNwZWNpZmljYWxseSB0byByZXByZXNlbnRvcj8NCj4g PiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IFllcywgUEYgYW5kIHJlcHJl c2VudG9yIGluIHN3aXRjaCBkb21haW4gY291bGQgdGFrZSBhZHZhbnRhZ2UuDQo+ID4gPiA+ID4g PiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IElmIGl0IGlzIGZvciBhIGdlbmVyaWMg Y2FzZSwgaG93IHRoZSBmbG93IG9yZGVyaW5nIHdpbGwgYmUgbWFpbnRhaW5lZD8NCj4gPiA+ID4g PiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IE5vdCBxdWl0ZSBzdXJlIHRoYXQgSSB1 bmRlcnN0b29kIHlvdXIgcXVlc3Rpb24uIFRoZSBjb250cm9sIHBhdGggb2YgaXMNCj4gPiA+ID4g PiA+ID4gPiA+ID4gYWxtb3N0IHNhbWUgYXMgYmVmb3JlLCBQRiBhbmQgcmVwcmVzZW50b3IgcG9y dCBzdGlsbCBuZWVkZWQsIHJ0ZSBmbG93cyBub3QgaW1wYWN0ZWQuDQo+ID4gPiA+ID4gPiA+ID4g PiA+IFF1ZXVlcyBzdGlsbCBuZWVkZWQgZm9yIGVhY2ggbWVtYmVyIHBvcnQsIGRlc2NyaXB0b3Jz KG1idWYpIHdpbGwgYmUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gc3VwcGxpZWQgZnJvbSBzaGFyZWQg UnggcXVldWUgaW4gbXkgUE1EIGltcGxlbWVudGF0aW9uLg0KPiA+ID4gPiA+ID4gPiA+ID4gDQo+ ID4gPiA+ID4gPiA+ID4gPiBNeSBxdWVzdGlvbiB3YXMgaWYgY3JlYXRlIGEgZ2VuZXJpYyBSVEVf RVRIX1JYX09GRkxPQURfU0hBUkVEX1JYUSBvZmZsb2FkLCBtdWx0aXBsZSBldGhkZXYgcmVjZWl2 ZSBxdWV1ZXMgbGFuZCBpbnRvIHRoZSBzYW1lDQo+ID4gPiA+ID4gPiA+ID4gPiByZWNlaXZlIHF1 ZXVlLCBJbiB0aGF0IGNhc2UsIGhvdyB0aGUgZmxvdyBvcmRlciBpcyBtYWludGFpbmVkIGZvciBy ZXNwZWN0aXZlIHJlY2VpdmUgcXVldWVzLg0KPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4g PiA+IEkgZ3Vlc3MgdGhlIHF1ZXN0aW9uIGlzIHRlc3RwbWQgZm9yd2FyZCBzdHJlYW0/IFRoZSBm b3J3YXJkaW5nIGxvZ2ljIGhhcyB0byBiZSBjaGFuZ2VkIHNsaWdodGx5IGluIGNhc2Ugb2Ygc2hh cmVkIHJ4cS4NCj4gPiA+ID4gPiA+ID4gPiBiYXNpY2FsbHkgZm9yIGVhY2ggcGFja2V0IGluIHJ4 X2J1cnN0IHJlc3VsdCwgbG9va3VwIHNvdXJjZSBzdHJlYW0gYWNjb3JkaW5nIHRvIG1idWYtPnBv cnQsIGZvcndhcmRpbmcgdG8gdGFyZ2V0IGZzLg0KPiA+ID4gPiA+ID4gPiA+IFBhY2tldHMgZnJv bSBzYW1lIHNvdXJjZSBwb3J0IGNvdWxkIGJlIGdyb3VwZWQgYXMgYSBzbWFsbCBidXJzdCB0byBw cm9jZXNzLCB0aGlzIHdpbGwgYWNjZWxlcmF0ZXMgdGhlIHBlcmZvcm1hbmNlIGlmIHRyYWZmaWMg Y29tZSBmcm9tDQo+ID4gPiA+ID4gPiA+ID4gbGltaXRlZCBwb3J0cy4gSSdsbCBpbnRyb2R1Y2Ug c29tZSBjb21tb24gYXBpIHRvIGRvIHNoYXJkIHJ4cSBmb3J3YXJkaW5nLCBjYWxsIGl0IHdpdGgg cGFja2V0cyBoYW5kbGluZyBjYWxsYmFjaywgc28gaXQgc3VpdGVzIGZvcg0KPiA+ID4gPiA+ID4g PiA+IGFsbCBmb3J3YXJkaW5nIGVuZ2luZS4gV2lsbCBzZW50IHBhdGNoZXMgc29vbi4NCj4gPiA+ ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IEFsbCBwb3J0cyB3aWxs IHB1dCB0aGUgcGFja2V0cyBpbiB0byB0aGUgc2FtZSBxdWV1ZSAoc2hhcmUgcXVldWUpLCByaWdo dD8gRG9lcw0KPiA+ID4gPiA+ID4gPiB0aGlzIG1lYW5zIG9ubHkgc2luZ2xlIGNvcmUgd2lsbCBw b2xsIG9ubHksIHdoYXQgd2lsbCBoYXBwZW4gaWYgdGhlcmUgYXJlDQo+ID4gPiA+ID4gPiA+IG11 bHRpcGxlIGNvcmVzIHBvbGxpbmcsIHdvbid0IGl0IGNhdXNlIHByb2JsZW0/DQo+ID4gPiA+ID4g PiA+IA0KPiA+ID4gPiA+ID4gPiBBbmQgaWYgdGhpcyByZXF1aXJlcyBzcGVjaWZpYyBjaGFuZ2Vz IGluIHRoZSBhcHBsaWNhdGlvbiwgSSBhbSBub3Qgc3VyZSBhYm91dA0KPiA+ID4gPiA+ID4gPiB0 aGUgc29sdXRpb24sIGNhbid0IHRoaXMgd29yayBpbiBhIHRyYW5zcGFyZW50IHdheSB0byB0aGUg YXBwbGljYXRpb24/DQo+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+IERpc2N1c3NlZCB3aXRoIEpl cmluLCBuZXcgQVBJIGludHJvZHVjZWQgaW4gdjMgMi84IHRoYXQgYWdncmVnYXRlIHBvcnRzDQo+ ID4gPiA+ID4gPiBpbiBzYW1lIGdyb3VwIGludG8gb25lIG5ldyBwb3J0LiBVc2VycyBjb3VsZCBz Y2hlZHVsZSBwb2xsaW5nIG9uIHRoZQ0KPiA+ID4gPiA+ID4gYWdncmVnYXRlZCBwb3J0IGluc3Rl YWQgb2YgYWxsIG1lbWJlciBwb3J0cy4NCj4gPiA+ID4gPiANCj4gPiA+ID4gPiBUaGUgdjMgc3Rp bGwgaGFzIHRlc3RwbWQgY2hhbmdlcyBpbiBmYXN0cGF0aC4gUmlnaHQ/IElNTywgRm9yIHRoaXMN Cj4gPiA+ID4gPiBmZWF0dXJlLCB3ZSBzaG91bGQgbm90IGNoYW5nZSBmYXN0cGF0aCBvZiB0ZXN0 cG1kDQo+ID4gPiA+ID4gYXBwbGljYXRpb24uIEluc3RlYWQsIHRlc3RwbWQgY2FuIHVzZSBhZ2dy ZWdhdGVkIHBvcnRzIHByb2JhYmx5IGFzDQo+ID4gPiA+ID4gc2VwYXJhdGUgZndkX2VuZ2luZSB0 byBzaG93IGhvdyB0byB1c2UgdGhpcyBmZWF0dXJlLg0KPiA+ID4gPiANCj4gPiA+ID4gR29vZCBw b2ludCB0byBkaXNjdXNzIDopIFRoZXJlIGFyZSB0d28gc3RyYXRlZ2llcyB0byBwb2xsaW5nIGEg c2hhcmVkDQo+ID4gPiA+IFJ4cToNCj4gPiA+ID4gMS4gcG9sbGluZyBlYWNoIG1lbWJlciBwb3J0 DQo+ID4gPiA+ICAgIEFsbCBmb3J3YXJkaW5nIGVuZ2luZXMgY2FuIGJlIHJldXNlZCB0byB3b3Jr IGFzIGJlZm9yZS4NCj4gPiA+ID4gICAgTXkgdGVzdHBtZCBwYXRjaGVzIGFyZSBlZmZvcnRzIHRv d2FyZHMgdGhpcyBkaXJlY3Rpb24uDQo+ID4gPiA+ICAgIERvZXMgeW91ciBQTUQgc3VwcG9ydCB0 aGlzPw0KPiA+ID4gDQo+ID4gPiBOb3QgdW5mb3J0dW5hdGVseS4gTW9yZSB0aGFuIHRoYXQsIGV2 ZXJ5IGFwcGxpY2F0aW9uIG5lZWRzIHRvIGNoYW5nZQ0KPiA+ID4gdG8gc3VwcG9ydCB0aGlzIG1v ZGVsLg0KPiA+IA0KPiA+IEJvdGggc3RyYXRlZ2llcyBuZWVkIHVzZXIgYXBwbGljYXRpb24gdG8g cmVzb2x2ZSBwb3J0IElEIGZyb20gbWJ1ZiBhbmQNCj4gPiBwcm9jZXNzIGFjY29yZGluZ2x5Lg0K PiA+IFRoaXMgb25lIGRvZXNuJ3QgZGVtYW5kIGFnZ3JlZ2F0ZWQgcG9ydCwgbm8gcG9sbGluZyBz Y2hlZHVsZSBjaGFuZ2UuDQo+IA0KPiBJIHdhcyB0aGlua2luZywgbWJ1ZiB3aWxsIGJlIHVwZGF0 ZWQgZnJvbSBkcml2ZXIvYWdncmVnYXRvciBwb3J0IGFzIHdoZW4gaXQNCj4gY29tZXMgdG8gYXBw bGljYXRpb24uDQo+IA0KPiA+IA0KPiA+ID4gDQo+ID4gPiA+IDIuIHBvbGxpbmcgYWdncmVnYXRl ZCBwb3J0DQo+ID4gPiA+ICAgIEJlc2lkZXMgZm9yd2FyZGluZyBlbmdpbmUsIG5lZWQgbW9yZSB3 b3JrIHRvIHRvIGRlbW8gaXQuDQo+ID4gPiA+ICAgIFRoaXMgaXMgYW4gb3B0aW9uYWwgQVBJLCBu b3Qgc3VwcG9ydGVkIGJ5IG15IFBNRCB5ZXQuDQo+ID4gPiANCj4gPiA+IFdlIGFyZSB0aGlua2lu ZyBvZiBpbXBsZW1lbnRpbmcgdGhpcyBQTUQgd2hlbiBpdCBjb21lcyB0byBpdCwgaWUuDQo+ID4g PiB3aXRob3V0IGFwcGxpY2F0aW9uIGNoYW5nZSBpbiBmYXN0cGF0aA0KPiA+ID4gbG9naWMuDQo+ ID4gDQo+ID4gRmFzdHBhdGggaGF2ZSB0byByZXNvbHZlIHBvcnQgSUQgYW55d2F5IGFuZCBmb3J3 YXJkaW5nIGFjY29yZGluZyB0bw0KPiA+IGxvZ2ljLiBGb3J3YXJkaW5nIGVuZ2luZSBuZWVkIHRv IGFkYXB0IHRvIHN1cHBvcnQgc2hhcmQgUnhxLg0KPiA+IEZvcnR1bmF0ZWx5LCBpbiB0ZXN0cG1k LCB0aGlzIGNhbiBiZSBkb25lIHdpdGggYW4gYWJzdHJhY3QgQVBJLg0KPiA+IA0KPiA+IExldCdz IGRlZmVyIHBhcnQgMiB1bnRpbCBzb21lIFBNRCByZWFsbHkgc3VwcG9ydCBpdCBhbmQgdGVzdGVk LCBob3cgZG8NCj4gPiB5b3UgdGhpbms/DQo+IA0KPiBXZSBhcmUgbm90IHBsYW5uaW5nIHRvIHVz ZSB0aGlzIGZlYXR1cmUgc28gZWl0aGVyIHdheSBpdCBpcyBPSyB0byBtZS4NCj4gSSBsZWF2ZSB0 byBldGhkZXYgbWFpbnRhaW5lcnMgZGVjaWRlIGJldHdlZW4gMSB2cyAyLg0KDQpBIGJldHRlciBk cml2ZXIgc2hvdWxkIHN1cHBvcnQgYm90aCwgYnV0IHNwZWNpZmljIGRyaXZlciBjb3VsZCBzZWxl Y3QNCmVpdGhlciBvbmUuIDEgYnJpbmdzIGxlc3MgY2hhbmdlcyB0byBhcHBsaWNhdGlvbiwgMiBi cmluZ3MgYmV0dGVyDQpwZXJmb3JtYW5jZSB3aXRoIGFkZGl0aW9uYWwgc3RlcHMuDQoNCj4gDQo+ IEkgZG8gaGF2ZSBhIHN0cm9uZyBvcGluaW9uIG5vdCBjaGFuZ2luZyB0aGUgdGVzdHBtZCBiYXNp YyBmb3J3YXJkIGVuZ2luZXMNCj4gZm9yIHRoaXMgZmVhdHVyZS5JIHdvdWxkIGxpa2UgdG8ga2Vl cCBpdCBzaW1wbGUgYXMgZmFzdHBhdGggb3B0aW1pemVkIGFuZCB3b3VsZA0KPiBsaWtlIHRvIGFk ZCBhIHNlcGFyYXRlIEZvcndhcmRpbmcgZW5naW5lIGFzIG1lYW5zIHRvIHZlcmlmeSB0aGlzIGZl YXR1cmUuDQo+IA0KPiANCj4gDQo+ID4gDQo+ID4gPiANCj4gPiA+ID4gDQo+ID4gPiA+IA0KPiA+ ID4gPiA+IA0KPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiBPdmVy YWxsLCBpcyB0aGlzIGZvciBvcHRpbWl6aW5nIG1lbW9yeSBmb3IgdGhlIHBvcnQgcmVwcmVzb250 b3JzPyBJZiBzbyBjYW4ndCB3ZQ0KPiA+ID4gPiA+ID4gPiBoYXZlIGEgcG9ydCByZXByZXNlbnRv ciBzcGVjaWZpYyBzb2x1dGlvbiwgcmVkdWNpbmcgc2NvcGUgY2FuIHJlZHVjZSB0aGUNCj4gPiA+ ID4gPiA+ID4gY29tcGxleGl0eSBpdCBicmluZ3M/DQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ ID4gPiA+ID4gSWYgdGhpcyBvZmZsb2FkIGlzIG9ubHkgdXNlZnVsIGZvciByZXByZXNlbnRvciBj YXNlLCBDYW4gd2UgbWFrZSB0aGlzIG9mZmxvYWQgc3BlY2lmaWMgdG8gcmVwcmVzZW50b3IgdGhl IGNhc2UgYnkgY2hhbmdpbmcgaXRzIG5hbWUgYW5kDQo+ID4gPiA+ID4gPiA+ID4gPiBzY29wZS4N Cj4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiBJdCB3b3JrcyBmb3IgYm90aCBQRiBh bmQgcmVwcmVzZW50b3JzIGluIHNhbWUgc3dpdGNoIGRvbWFpbiwgZm9yIGFwcGxpY2F0aW9uIGxp a2UgT1ZTLCBmZXcgY2hhbmdlcyB0byBhcHBseS4NCj4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4g PiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBYdWVtaW5nIExpIDx4dWVtaW5nbEBudmlkaWEu Y29tPg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gLS0tDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiAgZG9jL2d1aWRlcy9uaWNzL2ZlYXR1cmVzLnJzdCAgICAgICAgICAgICAgICAgICAgfCAxMSAr KysrKysrKysrKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gIGRvYy9ndWlkZXMvbmljcy9mZWF0 dXJlcy9kZWZhdWx0LmluaSAgICAgICAgICAgIHwgIDEgKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gIGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9zd2l0Y2hfcmVwcmVzZW50YXRpb24ucnN0IHwgMTAg KysrKysrKysrKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gIGxpYi9ldGhkZXYvcnRlX2V0aGRl di5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gIGxpYi9ldGhkZXYvcnRlX2V0aGRldi5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDcg KysrKysrKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gIDUgZmlsZXMgY2hhbmdlZCwgMzAgaW5z ZXJ0aW9ucygrKQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9uaWNzL2ZlYXR1cmVzLnJzdA0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gYi9kb2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMucnN0IGluZGV4IGE5NmUx MmQxNTUuLjJlMmE5YjE1NTQgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtLS0gYS9k b2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMucnN0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysg Yi9kb2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMucnN0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBA QCAtNjI0LDYgKzYyNCwxNyBAQCBTdXBwb3J0cyBpbm5lciBwYWNrZXQgTDQgY2hlY2tzdW0uDQo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICBgYHR4X29mZmxvYWRfY2FwYSx0eF9xdWV1ZV9vZmZs b2FkX2NhcGE6REVWX1RYX09GRkxPQURfT1VURVJfVURQX0NLU1VNYGAuDQo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gKy4uIF9uaWNfZmVhdHVyZXNfc2hhcmVkX3J4X3F1ZXVlOg0KPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gK1NoYXJlZCBSeCBxdWV1ZQ0KPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gKy0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gK1N1cHBvcnRzIHNoYXJlZCBSeCBxdWV1 ZSBmb3IgcG9ydHMgaW4gc2FtZSBzd2l0Y2ggZG9tYWluLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyogKipbdXNlc10gICAgIHJ0ZV9ldGhfcnhj b25mLHJ0ZV9ldGhfcnhtb2RlKio6IGBgb2ZmbG9hZHM6UlRFX0VUSF9SWF9PRkZMT0FEX1NIQVJF RF9SWFFgYC4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsqICoqW3Byb3ZpZGVzXSBtYnVmKio6 IGBgbWJ1Zi5wb3J0YGAuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgLi4gX25pY19mZWF0dXJlc19w YWNrZXRfdHlwZV9wYXJzaW5nOg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiAgUGFja2V0IHR5cGUgcGFyc2luZw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gZGlmZiAtLWdpdCBhL2RvYy9ndWlkZXMvbmljcy9mZWF0dXJlcy9kZWZhdWx0LmluaQ0KPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gYi9kb2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMvZGVmYXVsdC5p bmkNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGluZGV4IDc1NDE4NGRkZDQuLmViZWI0YzE4NTEg MTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAtLS0gYS9kb2MvZ3VpZGVzL25pY3MvZmVh dHVyZXMvZGVmYXVsdC5pbmkNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsrKyBiL2RvYy9ndWlk ZXMvbmljcy9mZWF0dXJlcy9kZWZhdWx0LmluaQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAg LTE5LDYgKzE5LDcgQEAgRnJlZSBUeCBtYnVmIG9uIGRlbWFuZCA9DQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiAgUXVldWUgc3RhcnQvc3RvcCAgICAgPQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g IFJ1bnRpbWUgUnggcXVldWUgc2V0dXAgPQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gIFJ1bnRp bWUgVHggcXVldWUgc2V0dXAgPQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gK1NoYXJlZCBSeCBx dWV1ZSAgICAgID0NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICBCdXJzdCBtb2RlIGluZm8gICAg ICA9DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgUG93ZXIgbWdtdCBhZGRyZXNzIG1vbml0b3Ig PQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gIE1UVSB1cGRhdGUgICAgICAgICAgID0NCj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvc3dp dGNoX3JlcHJlc2VudGF0aW9uLnJzdA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gYi9kb2MvZ3Vp ZGVzL3Byb2dfZ3VpZGUvc3dpdGNoX3JlcHJlc2VudGF0aW9uLnJzdA0KPiA+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gaW5kZXggZmY2YWE5MWM4MC4uNDViZjVhM2ExMCAxMDA2NDQNCj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IC0tLSBhL2RvYy9ndWlkZXMvcHJvZ19ndWlkZS9zd2l0Y2hfcmVwcmVzZW50 YXRpb24ucnN0DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysgYi9kb2MvZ3VpZGVzL3Byb2df Z3VpZGUvc3dpdGNoX3JlcHJlc2VudGF0aW9uLnJzdA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g QEAgLTEyMyw2ICsxMjMsMTYgQEAgdGhvdWdodCBhcyBhIHNvZnR3YXJlICJwYXRjaCBwYW5lbCIg ZnJvbnQtZW5kIGZvciBhcHBsaWNhdGlvbnMuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgLi4g WzFdIGBFdGhlcm5ldCBzd2l0Y2ggZGV2aWNlIGRyaXZlciBtb2RlbCAoc3dpdGNoZGV2KQ0KPiA+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA8aHR0cHM6Ly93 d3cua2VybmVsLm9yZy9kb2MvRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL3N3aXRjaGRldi50eHQN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gYF8NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKy0gTWVtb3J5IHVzYWdlIG9mIHJlcHJlc2VudG9ycyBp cyBodWdlIHdoZW4gbnVtYmVyIG9mIHJlcHJlc2VudG9yDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiArZ3Jvd3MsDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICBiZWNhdXNlIFBNRCBhbHdheXMg YWxsb2NhdGUgbWJ1ZiBmb3IgZWFjaCBkZXNjcmlwdG9yIG9mIFJ4IHF1ZXVlLg0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gKyAgUG9sbGluZyB0aGUgbGFyZ2UgbnVtYmVyIG9mIHBvcnRzIGJyaW5n cyBtb3JlIENQVSBsb2FkLCBjYWNoZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gK21pc3MgYW5k DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICBsYXRlbmN5LiBTaGFyZWQgUnggcXVldWUgY2Fu IGJlIHVzZWQgdG8gc2hhcmUgUnggcXVldWUgYmV0d2Vlbg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gK1BGIGFuZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKyAgcmVwcmVzZW50b3JzIGluIHNh bWUgc3dpdGNoIGRvbWFpbi4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICtgYFJURV9FVEhfUlhf T0ZGTE9BRF9TSEFSRURfUlhRYGANCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsgIGlzIHByZXNl bnQgaW4gUnggb2ZmbG9hZGluZyBjYXBhYmlsaXR5IG9mIGRldmljZSBpbmZvLiBTZXR0aW5nDQo+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArdGhlDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArICBv ZmZsb2FkaW5nIGZsYWcgaW4gZGV2aWNlIFJ4IG1vZGUgb3IgUnggcXVldWUgY29uZmlndXJhdGlv biB0bw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gK2VuYWJsZQ0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gKyAgc2hhcmVkIFJ4IHF1ZXVlLiBQb2xsaW5nIGFueSBtZW1iZXIgcG9ydCBvZiBzaGFy ZWQgUnggcXVldWUgY2FuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArcmV0dXJuDQo+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiArICBwYWNrZXRzIG9mIGFsbCBwb3J0cyBpbiBncm91cCwgcG9ydCBJ RCBpcyBzYXZlZCBpbiBgYG1idWYucG9ydGBgLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gKw0K PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gIEJhc2ljIFNSLUlPVg0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+ID4gIC0tLS0tLS0tLS0tLQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ydGVfZXRoZGV2LmMgYi9saWIv ZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gaW5kZXggOWQ5NWNk MTFlMS4uMTM2MWZmNzU5YSAxMDA2NDQNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0tLSBhL2xp Yi9ldGhkZXYvcnRlX2V0aGRldi5jDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysgYi9saWIv ZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAgLTEyNyw2ICsx MjcsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHsNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAg ICAgICAgUlRFX1JYX09GRkxPQURfQklUMlNUUihPVVRFUl9VRFBfQ0tTVU0pLA0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gICAgICAgICBSVEVfUlhfT0ZGTE9BRF9CSVQyU1RSKFJTU19IQVNIKSwN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgUlRFX0VUSF9SWF9PRkZMT0FEX0JJVDJT VFIoQlVGRkVSX1NQTElUKSwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgUlRFX0VU SF9SWF9PRkZMT0FEX0JJVDJTVFIoU0hBUkVEX1JYUSksDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiAgfTsNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4g ICN1bmRlZiBSVEVfUlhfT0ZGTE9BRF9CSVQyU1RSDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBk aWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ydGVfZXRoZGV2LmggYi9saWIvZXRoZGV2L3J0ZV9ldGhk ZXYuaA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gaW5kZXggZDJiMjdjMzUxZi4uYTU3OGM5ZGI5 ZCAxMDA2NDQNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2V0 aGRldi5oDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArKysgYi9saWIvZXRoZGV2L3J0ZV9ldGhk ZXYuaA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gQEAgLTEwNDcsNiArMTA0Nyw3IEBAIHN0cnVj dCBydGVfZXRoX3J4Y29uZiB7DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgIHVpbnQ4 X3QgcnhfZHJvcF9lbjsgLyoqPCBEcm9wIHBhY2tldHMgaWYgbm8gZGVzY3JpcHRvcnMgYXJlIGF2 YWlsYWJsZS4gKi8NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgdWludDhfdCByeF9k ZWZlcnJlZF9zdGFydDsgLyoqPCBEbyBub3Qgc3RhcnQgcXVldWUgd2l0aCBydGVfZXRoX2Rldl9z dGFydCgpLiAqLw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICB1aW50MTZfdCByeF9u c2VnOyAvKio8IE51bWJlciBvZiBkZXNjcmlwdGlvbnMgaW4gcnhfc2VnIGFycmF5Lg0KPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gKi8NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsgICAgICAgdWlu dDMyX3Qgc2hhcmVkX2dyb3VwOyAvKio8IFNoYXJlZCBwb3J0IGdyb3VwIGluZGV4IGluDQo+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiArIHN3aXRjaCBkb21haW4uICovDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiAgICAgICAgIC8qKg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAgKiBQ ZXItcXVldWUgUnggb2ZmbG9hZHMgdG8gYmUgc2V0IHVzaW5nIERFVl9SWF9PRkZMT0FEXyogZmxh Z3MuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgICAqIE9ubHkgb2ZmbG9hZHMgc2V0 IG9uIHJ4X3F1ZXVlX29mZmxvYWRfY2FwYSBvcg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gcnhf b2ZmbG9hZF9jYXBhIEBAIC0xMzczLDYgKzEzNzQsMTIgQEAgc3RydWN0IHJ0ZV9ldGhfY29uZiB7 DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAjZGVmaW5lIERFVl9SWF9PRkZMT0FEX09VVEVSX1VE UF9DS1NVTSAgMHgwMDA0MDAwMA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gICNkZWZpbmUgREVW X1JYX09GRkxPQURfUlNTX0hBU0ggICAgICAgICAgICAgICAgMHgwMDA4MDAwMA0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gICNkZWZpbmUgUlRFX0VUSF9SWF9PRkZMT0FEX0JVRkZFUl9TUExJVCAw eDAwMTAwMDAwDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArLyoqDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiArICogUnggcXVldWUgaXMgc2hhcmVkIGFtb25nIHBvcnRzIGluIHNhbWUgc3dpdGNo IGRvbWFpbiB0byBzYXZlDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiArbWVtb3J5LA0KPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gKyAqIGF2b2lkIHBvbGxpbmcgZWFjaCBwb3J0LiBBbnkgcG9ydCBp biBncm91cCBjYW4gYmUgdXNlZCB0byByZWNlaXZlIHBhY2tldHMuDQo+ID4gPiA+ID4gPiA+ID4g PiA+ID4gPiArICogUmVhbCBzb3VyY2UgcG9ydCBudW1iZXIgc2F2ZWQgaW4gbWJ1Zi0+cG9ydCBm aWVsZC4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICsgKi8NCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+ICsjZGVmaW5lIFJURV9FVEhfUlhfT0ZGTE9BRF9TSEFSRURfUlhRICAgMHgwMDIwMDAwMA0K PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAgI2RlZmlu ZSBERVZfUlhfT0ZGTE9BRF9DSEVDS1NVTSAoREVWX1JYX09GRkxPQURfSVBWNF9DS1NVTSB8IFwN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IERFVl9SWF9PRkZMT0FEX1VEUF9DS1NVTSB8IFwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IC0t DQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAyLjI1LjENCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ IA0KPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiANCj4gPiA+ID4gDQo+ID4g DQoNCg==