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 A78EEA0C4C; Tue, 28 Sep 2021 15:25:32 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 30AA540E3C; Tue, 28 Sep 2021 15:25:32 +0200 (CEST) Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam08on2080.outbound.protection.outlook.com [40.107.100.80]) by mails.dpdk.org (Postfix) with ESMTP id 3247B40DF6 for ; Tue, 28 Sep 2021 15:25:30 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WDApkXYvikfK6EhZDWx+OM2KvE6Vcm7qlUWgC3VIyV7tV1lN3HlEMzxTHS69vTzLMKf+dLq0z6enj2+56ao6jcdC3n6cI/C6cqbxdgN62/2ZiYE9obs6ApciFXh85LfIT63e/yqUa934Z5BeTQ+LkDh5q3naMXA6Wv05ucF5rx92CLFgCml3O1reacs6pbjGZBmeanbCzIZptktr/A+YmuMISH0Q10gy45hkXCsi9+Iu42pzwFHKL66icveGA+gezkOrZwbg/kltKqFY5DmtvJ0Ki2RUv5vg1n0pSmEAoBD05ULQ5U6N3AJstvTCNt87NGSpSkT15slA2toYqBSimA== 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=V+cFCuhCDk0a49k0kwGCdv5l+VprhkLWOT5znbCrCGA=; b=ddh/lwtJZy/MlPcaoUKGCvqmOzhnGWVtDtFXXXdUgHsWPcG2dOGJjmENYCLkIzIC+H7zUC1NW3+vsxFuT83v+cUg05oryxKk9ooqf3b/jl3zb1tz9IkVYDp6p+KO5dfQ94ELOpv4/X8dXsNgkReIHB45oqCA2TCY5nLgFhxhv6zkGYoVODJSm4AumKftL/2IMXd4+BXQDvOQvrSCNSBM0eCeZCXgDPMRHpJO5mRrepMW3PMX8DVKX33GUVj5/ae7YaG1JKJqse8BM+chJIZQm3cPGxxO5c8K4uJk+Dt6QXx3pzSbQ4j/WUEdt7bg5PBL3XCOuBzvKbUtpnEzChYYgQ== 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=V+cFCuhCDk0a49k0kwGCdv5l+VprhkLWOT5znbCrCGA=; b=cwJCkejKkcQiknqU3MorVhc7FD+2qJZWVrXKXGV0CfnJP9LeJVWixfq5CE/VCPyoa2VM9pnTnJDM9z43fD+m2iHJjhhgkCPG5zGqU1LSMH+gIqDfWqkRBJuTrt5OvI4YvJ8NtmRCTOP8Wha4B0B2eR4fvQh4Ko2UapNHd1LmS6Xd+W6ZKL5OswPsneExiVoSa9HDz/2zN5KZfUgQ2l3BnOjF5THmZuEx2KlLJWCdXWUNpyFNGPTaDIdYX5ojHZwk6UVY8zOanfXnmx28kkunxRUS0bf2BQYFbq6X4EMp8KAIDdBCsqqhlP/EcQzsA5VOQAgVHgLgzk43CNXm0Gx9EA== Received: from DM4PR12MB5373.namprd12.prod.outlook.com (2603:10b6:5:39a::17) by DM4PR12MB5072.namprd12.prod.outlook.com (2603:10b6:5:38b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4566.13; Tue, 28 Sep 2021 13:25:27 +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 13:25:27 +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/vYCARM3YgIAGeHkAgAAiNICAABZuAIAAB6MA Date: Tue, 28 Sep 2021 13:25:27 +0000 Message-ID: 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: 86fd5b54-d692-487a-7e63-08d982836f79 x-ms-traffictypediagnostic: DM4PR12MB5072: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: N3xRKsT4p3fUyGFogjFIFVPwErsqLIuFv0iXqmntvqSHAE50nhg2RcXRNunavmDxnVBM36VA+njzrqyCv/MzmeVsDwAgu9mozmzLwL9VQ7JWe3TbsjpC5G685/yyTn4b6goL+liU8SD6WaVxUdNwH0XXnpNjTLKkbxPd1SAuY+4tsteWLvHwRWPflqGipd3Abay+EhS+KXKYJbdHWY+JSszNJNPrEF1ttQVTyVjIVEm8pfDJMZ5XZntfI4trbVIumFmI2BDmi1tqN9uV1koV2Q6Cm/SVYs5WzFAgX154pGvvcS55KmdGxNC/XxHQHQsislMvDJVXWkl9OWGIHIOJmE9KUDVMmWS+IZTak+XYNxut43Rx61aLPI9kaShI1noNOi72Txu7g6yrEdsmV3cQdt92g1sIhFupIym6NMmGvUe4ixdKMODLBdm7eZLduASaUANEN68aJKRpvwg3AUrUJ7AIdZU6M0mXcWmGNSKCLKng8uDYW1vb15Cl0Yqhw35nSUjs5nORltZRxa2/DVQTedptfETqRzEG9qdrxlFTqH6/I7LD90TD2W4hlBZme9a2zDrP1jsuO9i2DzVuLfPPowWWAjSKhjB82PFas7Fdb6wQQCPJDRzYmo0ijC1WOtEDrPxv/mgzIfT1QpsCX6fPW5qoQiXheQZ90//fCs6D5Wh0XF4HU7j+C8FoKJR04mhP8ArbDzfObf9qTAg6fScBc/q6bVYlIWQ68KZMUOOaYHzgGuulI2AySIbbCrzcGei66TcwkHIw379z167m17IIvib79i1UD2Ner7UKR2JCe3M= 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)(6916009)(38070700005)(86362001)(26005)(6486002)(186003)(122000001)(53546011)(2616005)(6506007)(36756003)(4326008)(83380400001)(91956017)(38100700002)(508600001)(2906002)(6512007)(8936002)(54906003)(71200400001)(316002)(8676002)(66556008)(64756008)(66476007)(66946007)(76116006)(66446008)(5660300002)(30864003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SzJjRTVWVWFTN05KWC92M0xia2FNbVJCNWRWTDhldU05ZllDcHVFRTkwRXpX?= =?utf-8?B?STdNMVphaytnbkh2VEVrN2hJcEIvSHR4Q3F0ZXRnVU1xT2Q5Ym9MYnBPV0FY?= =?utf-8?B?T2wrOHFaOXRBMHRPbmg0Z1F1WEhhUVkremNHdmw0bWZTOGRQSXVHWHpyNGxC?= =?utf-8?B?TjFraG9LdExEKzhiRmd5RFNubnZQSDhXTEFSbFI5UzVFc056MHlxcHU5SXRP?= =?utf-8?B?ZnljQlJnWm5HT2NjTWlQUmxxQWxhZG9LRy9LdmdjVmdRcU1lRUVDbFNJdHFn?= =?utf-8?B?ck5xRmZrWExaQkxQTEZkUVJNRS9LZFRWcHBKUktqcW1wcERSeGpqQnE4Tnhv?= =?utf-8?B?SU4xNy90QXJ4b3IzYWxxelloL1ZYK3pEamFPd2JCaUN6dHVnY2Z5UHlPeits?= =?utf-8?B?RjNkaTZPbVNid1JlV1BoWEdNRlRtaTFRRkI2K1dLQ0dZbXViNVowZTdHaWl4?= =?utf-8?B?bmlYY20wa1pZS1NLTFZZMVJvOHlIU2FlekNsdjFqTmZjVERQd2tRVkFxa1pG?= =?utf-8?B?VmhiTGJWczlDQXFKTDRzM0haVGVvWldrODRrNTVBYkkwNmx6ckJyNzF4MUdh?= =?utf-8?B?OEFudmxwTDhIMW9RQW02bEg2YVBtc2t0QzNFZ3Y4SWFkeTFZQ1RpcnlobG55?= =?utf-8?B?MEhVSlhEWmFXMzVpbldVNTQzUGZKcUhybjF4bmk2QVBCQkZNUi9wU2VuVmdJ?= =?utf-8?B?NjlnSGtuVjBaUmZYY2xtUTlGOTVCRXRtejB0ZFVyOUNPR3JubzJnSEJiYWY5?= =?utf-8?B?NXlEbWkyeUxwdGRvRkVoQjJSRHJHSGFCWUpnQUFZT0xQcHZiRzBJNVM5eEhF?= =?utf-8?B?N2xOcjBvaXpNRlRMNFlLeWIra3FvZjNuZWVMZDhLV1JES1Z2RVZha0FVRjJj?= =?utf-8?B?eW9mZVNxbFkzLzZnenJxaXpkMW1UQmtiNnR6MXNHL3cwNElFNis2bUFhaEVz?= =?utf-8?B?RG5DNC9jam9TOVk2STBiN1RIUDk2NG5wdEJ2b21oSXFJOW13VDgyM1ZxR0xx?= =?utf-8?B?OG5MQ3VuaXVQSktEZG1abEFPaGIyVHJJZXNtaTlucDg0bThVVVRmL1JzYktB?= =?utf-8?B?anFrNVpZNmZxREk4bkplcmpyQnFpamwweHJRN2tua1Y2RmRTZlBTV2txSEFz?= =?utf-8?B?UitDV1Npak4rRnhieWhQQXVHVlAvRmE3SHJZRkhpa2MycElEMnJ6TWx4TVpm?= =?utf-8?B?S2hrMVBqcDhEdjYxZ3grVzRuc3k0YnJ6SXdWK2N0Z2F3OHoyN0JLNHhldGFJ?= =?utf-8?B?OENKakI4eXA3UG5ocE9uZEhzRXNuak92YWxJUy9mRGdxRHk5QWsySDB5djB2?= =?utf-8?B?MnR5U3VKdDEvVkJLVDJ6b1kvQzBPcjMveEl2R1pHR1VaMmVIaDZYVThNOEpG?= =?utf-8?B?RVJVVnVIY0Zzbm9kNkpsWGVVKzdTaEJaSzJWY2VuRGQ2ZW1KTzVyV25LWS9x?= =?utf-8?B?QVJPcFVWZWFtRHpYODk0eU94NDFRL0lITWlwS0lqYzBjMkJqY0pZWEVHMHly?= =?utf-8?B?aUFreVQxbGQ3d3RJNXp0NW9UY2puT0Z3a09yMlphd2RkdmZ0RkZEUXg2YlVU?= =?utf-8?B?K0tQbUU2N2RMMXpRcDYyY1FQL1hDQXJDUVh0T21ya0VJSGkxNE16R01veERT?= =?utf-8?B?eE0zOGd6WkgyaERaamdPYXoyK0JiTVJTd2FnVFJlTnFnTWMzOUozTm0xSU5x?= =?utf-8?B?NytqU3E4U1ZMMWk3UHdvL1FwR3JYK05qVlRkc2lwT1k0TDJEb2pLU0FHZHpF?= =?utf-8?B?cjFpOEFseFJHdktlM1UyRXc5aGRaZnE3N1NTeXFhVFNQRkQzckxKUThaU3Yz?= =?utf-8?B?cDE4NDlwcXQzYWgxV3N2Zz09?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <29D374D52D321841B6BCAA77E0289440@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: 86fd5b54-d692-487a-7e63-08d982836f79 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Sep 2021 13:25:27.0781 (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: hp6c9rOlBrNO7SV6RxpSp2bCZLmWYzLLyPUl4S9etIIW1QY7J9KSRRu4rz8iVlZATLYiLPKrK3RdrUN22QPSGw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5072 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" T24gVHVlLCAyMDIxLTA5LTI4IGF0IDE4OjI4ICswNTMwLCBKZXJpbiBKYWNvYiB3cm90ZToNCj4g T24gVHVlLCBTZXAgMjgsIDIwMjEgYXQgNTowNyBQTSBYdWVtaW5nKFN0ZXZlbikgTGkgPHh1ZW1p bmdsQG52aWRpYS5jb20+IHdyb3RlOg0KPiA+IA0KPiA+IE9uIFR1ZSwgMjAyMS0wOS0yOCBhdCAx NTowNSArMDUzMCwgSmVyaW4gSmFjb2Igd3JvdGU6DQo+ID4gPiBPbiBTdW4sIFNlcCAyNiwgMjAy MSBhdCAxMTowNiBBTSBYdWVtaW5nKFN0ZXZlbikgTGkgPHh1ZW1pbmdsQG52aWRpYS5jb20+IHdy b3RlOg0KPiA+ID4gPiANCj4gPiA+ID4gT24gV2VkLCAyMDIxLTA4LTExIGF0IDEzOjA0ICswMTAw LCBGZXJydWggWWlnaXQgd3JvdGU6DQo+ID4gPiA+ID4gT24gOC8xMS8yMDIxIDk6MjggQU0sIFh1 ZW1pbmcoU3RldmVuKSBMaSB3cm90ZToNCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gDQo+ID4g PiA+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+ID4gPiA+IEZyb206 IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4gPiA+ID4gPiA+IFNlbnQ6 IFdlZG5lc2RheSwgQXVndXN0IDExLCAyMDIxIDQ6MDMgUE0NCj4gPiA+ID4gPiA+ID4gVG86IFh1 ZW1pbmcoU3RldmVuKSBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT4NCj4gPiA+ID4gPiA+ID4gQ2M6 IGRwZGstZGV2IDxkZXZAZHBkay5vcmc+OyBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBpbnRl bC5jb20+OyBOQlUtQ29udGFjdC1UaG9tYXMgTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+ Ow0KPiA+ID4gPiA+ID4gPiBBbmRyZXcgUnliY2hlbmtvIDxhbmRyZXcucnliY2hlbmtvQG9rdGV0 bGFicy5ydT4NCj4gPiA+ID4gPiA+ID4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENIIHYx XSBldGhkZXY6IGludHJvZHVjZSBzaGFyZWQgUnggcXVldWUNCj4gPiA+ID4gPiA+ID4gDQo+ID4g PiA+ID4gPiA+IE9uIE1vbiwgQXVnIDksIDIwMjEgYXQgNzo0NiBQTSBYdWVtaW5nKFN0ZXZlbikg TGkgPHh1ZW1pbmdsQG52aWRpYS5jb20+IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4g PiA+ID4gPiA+IEhpLA0KPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+ID4gPiA+IEZyb206IEplcmluIEphY29i IDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4gPiA+ID4gPiA+ID4gPiBTZW50OiBNb25kYXks IEF1Z3VzdCA5LCAyMDIxIDk6NTEgUE0NCj4gPiA+ID4gPiA+ID4gPiA+IFRvOiBYdWVtaW5nKFN0 ZXZlbikgTGkgPHh1ZW1pbmdsQG52aWRpYS5jb20+DQo+ID4gPiA+ID4gPiA+ID4gPiBDYzogZHBk ay1kZXYgPGRldkBkcGRrLm9yZz47IEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGludGVsLmNv bT47DQo+ID4gPiA+ID4gPiA+ID4gPiBOQlUtQ29udGFjdC1UaG9tYXMgTW9uamFsb24gPHRob21h c0Btb25qYWxvbi5uZXQ+OyBBbmRyZXcgUnliY2hlbmtvDQo+ID4gPiA+ID4gPiA+ID4gPiA8YW5k cmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+DQo+ID4gPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBS ZTogW2RwZGstZGV2XSBbUEFUQ0ggdjFdIGV0aGRldjogaW50cm9kdWNlIHNoYXJlZCBSeCBxdWV1 ZQ0KPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiBPbiBNb24sIEF1ZyA5LCAy MDIxIGF0IDU6MTggUE0gWHVlbWluZyBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT4gd3JvdGU6DQo+ ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBJbiBjdXJyZW50IERQREsg ZnJhbWV3b3JrLCBlYWNoIFJYIHF1ZXVlIGlzIHByZS1sb2FkZWQgd2l0aCBtYnVmcw0KPiA+ID4g PiA+ID4gPiA+ID4gPiBmb3IgaW5jb21pbmcgcGFja2V0cy4gV2hlbiBudW1iZXIgb2YgcmVwcmVz ZW50b3JzIHNjYWxlIG91dCBpbiBhDQo+ID4gPiA+ID4gPiA+ID4gPiA+IHN3aXRjaCBkb21haW4s IHRoZSBtZW1vcnkgY29uc3VtcHRpb24gYmVjYW1lIHNpZ25pZmljYW50LiBNb3N0DQo+ID4gPiA+ ID4gPiA+ID4gPiA+IGltcG9ydGFudCwgcG9sbGluZyBhbGwgcG9ydHMgbGVhZHMgdG8gaGlnaCBj YWNoZSBtaXNzLCBoaWdoDQo+ID4gPiA+ID4gPiA+ID4gPiA+IGxhdGVuY3kgYW5kIGxvdyB0aHJv dWdocHV0Lg0KPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gVGhpcyBw YXRjaCBpbnRyb2R1Y2VzIHNoYXJlZCBSWCBxdWV1ZS4gUG9ydHMgd2l0aCBzYW1lDQo+ID4gPiA+ ID4gPiA+ID4gPiA+IGNvbmZpZ3VyYXRpb24gaW4gYSBzd2l0Y2ggZG9tYWluIGNvdWxkIHNoYXJl IFJYIHF1ZXVlIHNldCBieSBzcGVjaWZ5aW5nIHNoYXJpbmcgZ3JvdXAuDQo+ID4gPiA+ID4gPiA+ ID4gPiA+IFBvbGxpbmcgYW55IHF1ZXVlIHVzaW5nIHNhbWUgc2hhcmVkIFJYIHF1ZXVlIHJlY2Vp dmVzIHBhY2tldHMgZnJvbQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBhbGwgbWVtYmVyIHBvcnRzLiBT b3VyY2UgcG9ydCBpcyBpZGVudGlmaWVkIGJ5IG1idWYtPnBvcnQuDQo+ID4gPiA+ID4gPiA+ID4g PiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBQb3J0IHF1ZXVlIG51bWJlciBpbiBhIHNoYXJlZCBn cm91cCBzaG91bGQgYmUgaWRlbnRpY2FsLiBRdWV1ZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBpbmRl eCBpcw0KPiA+ID4gPiA+ID4gPiA+ID4gPiAxOjEgbWFwcGVkIGluIHNoYXJlZCBncm91cC4NCj4g PiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IFNoYXJlIFJYIHF1ZXVlIGlz IHN1cHBvc2VkIHRvIGJlIHBvbGxlZCBvbiBzYW1lIHRocmVhZC4NCj4gPiA+ID4gPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IE11bHRpcGxlIGdyb3VwcyBpcyBzdXBwb3J0ZWQgYnkg Z3JvdXAgSUQuDQo+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+IElzIHRoaXMg b2ZmbG9hZCBzcGVjaWZpYyB0byB0aGUgcmVwcmVzZW50b3I/IElmIHNvIGNhbiB0aGlzIG5hbWUg YmUgY2hhbmdlZCBzcGVjaWZpY2FsbHkgdG8gcmVwcmVzZW50b3I/DQo+ID4gPiA+ID4gPiA+ID4g DQo+ID4gPiA+ID4gPiA+ID4gWWVzLCBQRiBhbmQgcmVwcmVzZW50b3IgaW4gc3dpdGNoIGRvbWFp biBjb3VsZCB0YWtlIGFkdmFudGFnZS4NCj4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4g PiA+IElmIGl0IGlzIGZvciBhIGdlbmVyaWMgY2FzZSwgaG93IHRoZSBmbG93IG9yZGVyaW5nIHdp bGwgYmUgbWFpbnRhaW5lZD8NCj4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiBOb3Qg cXVpdGUgc3VyZSB0aGF0IEkgdW5kZXJzdG9vZCB5b3VyIHF1ZXN0aW9uLiBUaGUgY29udHJvbCBw YXRoIG9mIGlzDQo+ID4gPiA+ID4gPiA+ID4gYWxtb3N0IHNhbWUgYXMgYmVmb3JlLCBQRiBhbmQg cmVwcmVzZW50b3IgcG9ydCBzdGlsbCBuZWVkZWQsIHJ0ZSBmbG93cyBub3QgaW1wYWN0ZWQuDQo+ ID4gPiA+ID4gPiA+ID4gUXVldWVzIHN0aWxsIG5lZWRlZCBmb3IgZWFjaCBtZW1iZXIgcG9ydCwg ZGVzY3JpcHRvcnMobWJ1Zikgd2lsbCBiZQ0KPiA+ID4gPiA+ID4gPiA+IHN1cHBsaWVkIGZyb20g c2hhcmVkIFJ4IHF1ZXVlIGluIG15IFBNRCBpbXBsZW1lbnRhdGlvbi4NCj4gPiA+ID4gPiA+ID4g DQo+ID4gPiA+ID4gPiA+IE15IHF1ZXN0aW9uIHdhcyBpZiBjcmVhdGUgYSBnZW5lcmljIFJURV9F VEhfUlhfT0ZGTE9BRF9TSEFSRURfUlhRIG9mZmxvYWQsIG11bHRpcGxlIGV0aGRldiByZWNlaXZl IHF1ZXVlcyBsYW5kIGludG8gdGhlIHNhbWUNCj4gPiA+ID4gPiA+ID4gcmVjZWl2ZSBxdWV1ZSwg SW4gdGhhdCBjYXNlLCBob3cgdGhlIGZsb3cgb3JkZXIgaXMgbWFpbnRhaW5lZCBmb3IgcmVzcGVj dGl2ZSByZWNlaXZlIHF1ZXVlcy4NCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gSSBndWVzcyB0 aGUgcXVlc3Rpb24gaXMgdGVzdHBtZCBmb3J3YXJkIHN0cmVhbT8gVGhlIGZvcndhcmRpbmcgbG9n aWMgaGFzIHRvIGJlIGNoYW5nZWQgc2xpZ2h0bHkgaW4gY2FzZSBvZiBzaGFyZWQgcnhxLg0KPiA+ ID4gPiA+ID4gYmFzaWNhbGx5IGZvciBlYWNoIHBhY2tldCBpbiByeF9idXJzdCByZXN1bHQsIGxv b2t1cCBzb3VyY2Ugc3RyZWFtIGFjY29yZGluZyB0byBtYnVmLT5wb3J0LCBmb3J3YXJkaW5nIHRv IHRhcmdldCBmcy4NCj4gPiA+ID4gPiA+IFBhY2tldHMgZnJvbSBzYW1lIHNvdXJjZSBwb3J0IGNv dWxkIGJlIGdyb3VwZWQgYXMgYSBzbWFsbCBidXJzdCB0byBwcm9jZXNzLCB0aGlzIHdpbGwgYWNj ZWxlcmF0ZXMgdGhlIHBlcmZvcm1hbmNlIGlmIHRyYWZmaWMgY29tZSBmcm9tDQo+ID4gPiA+ID4g PiBsaW1pdGVkIHBvcnRzLiBJJ2xsIGludHJvZHVjZSBzb21lIGNvbW1vbiBhcGkgdG8gZG8gc2hh cmQgcnhxIGZvcndhcmRpbmcsIGNhbGwgaXQgd2l0aCBwYWNrZXRzIGhhbmRsaW5nIGNhbGxiYWNr LCBzbyBpdCBzdWl0ZXMgZm9yDQo+ID4gPiA+ID4gPiBhbGwgZm9yd2FyZGluZyBlbmdpbmUuIFdp bGwgc2VudCBwYXRjaGVzIHNvb24uDQo+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiANCj4gPiA+ID4g PiBBbGwgcG9ydHMgd2lsbCBwdXQgdGhlIHBhY2tldHMgaW4gdG8gdGhlIHNhbWUgcXVldWUgKHNo YXJlIHF1ZXVlKSwgcmlnaHQ/IERvZXMNCj4gPiA+ID4gPiB0aGlzIG1lYW5zIG9ubHkgc2luZ2xl IGNvcmUgd2lsbCBwb2xsIG9ubHksIHdoYXQgd2lsbCBoYXBwZW4gaWYgdGhlcmUgYXJlDQo+ID4g PiA+ID4gbXVsdGlwbGUgY29yZXMgcG9sbGluZywgd29uJ3QgaXQgY2F1c2UgcHJvYmxlbT8NCj4g PiA+ID4gPiANCj4gPiA+ID4gPiBBbmQgaWYgdGhpcyByZXF1aXJlcyBzcGVjaWZpYyBjaGFuZ2Vz IGluIHRoZSBhcHBsaWNhdGlvbiwgSSBhbSBub3Qgc3VyZSBhYm91dA0KPiA+ID4gPiA+IHRoZSBz b2x1dGlvbiwgY2FuJ3QgdGhpcyB3b3JrIGluIGEgdHJhbnNwYXJlbnQgd2F5IHRvIHRoZSBhcHBs aWNhdGlvbj8NCj4gPiA+ID4gDQo+ID4gPiA+IERpc2N1c3NlZCB3aXRoIEplcmluLCBuZXcgQVBJ IGludHJvZHVjZWQgaW4gdjMgMi84IHRoYXQgYWdncmVnYXRlIHBvcnRzDQo+ID4gPiA+IGluIHNh bWUgZ3JvdXAgaW50byBvbmUgbmV3IHBvcnQuIFVzZXJzIGNvdWxkIHNjaGVkdWxlIHBvbGxpbmcg b24gdGhlDQo+ID4gPiA+IGFnZ3JlZ2F0ZWQgcG9ydCBpbnN0ZWFkIG9mIGFsbCBtZW1iZXIgcG9y dHMuDQo+ID4gPiANCj4gPiA+IFRoZSB2MyBzdGlsbCBoYXMgdGVzdHBtZCBjaGFuZ2VzIGluIGZh c3RwYXRoLiBSaWdodD8gSU1PLCBGb3IgdGhpcw0KPiA+ID4gZmVhdHVyZSwgd2Ugc2hvdWxkIG5v dCBjaGFuZ2UgZmFzdHBhdGggb2YgdGVzdHBtZA0KPiA+ID4gYXBwbGljYXRpb24uIEluc3RlYWQs IHRlc3RwbWQgY2FuIHVzZSBhZ2dyZWdhdGVkIHBvcnRzIHByb2JhYmx5IGFzDQo+ID4gPiBzZXBh cmF0ZSBmd2RfZW5naW5lIHRvIHNob3cgaG93IHRvIHVzZSB0aGlzIGZlYXR1cmUuDQo+ID4gDQo+ ID4gR29vZCBwb2ludCB0byBkaXNjdXNzIDopIFRoZXJlIGFyZSB0d28gc3RyYXRlZ2llcyB0byBw b2xsaW5nIGEgc2hhcmVkDQo+ID4gUnhxOg0KPiA+IDEuIHBvbGxpbmcgZWFjaCBtZW1iZXIgcG9y dA0KPiA+ICAgIEFsbCBmb3J3YXJkaW5nIGVuZ2luZXMgY2FuIGJlIHJldXNlZCB0byB3b3JrIGFz IGJlZm9yZS4NCj4gPiAgICBNeSB0ZXN0cG1kIHBhdGNoZXMgYXJlIGVmZm9ydHMgdG93YXJkcyB0 aGlzIGRpcmVjdGlvbi4NCj4gPiAgICBEb2VzIHlvdXIgUE1EIHN1cHBvcnQgdGhpcz8NCj4gDQo+ IE5vdCB1bmZvcnR1bmF0ZWx5LiBNb3JlIHRoYW4gdGhhdCwgZXZlcnkgYXBwbGljYXRpb24gbmVl ZHMgdG8gY2hhbmdlDQo+IHRvIHN1cHBvcnQgdGhpcyBtb2RlbC4NCg0KQm90aCBzdHJhdGVnaWVz IG5lZWQgdXNlciBhcHBsaWNhdGlvbiB0byByZXNvbHZlIHBvcnQgSUQgZnJvbSBtYnVmIGFuZA0K cHJvY2VzcyBhY2NvcmRpbmdseS4NClRoaXMgb25lIGRvZXNuJ3QgZGVtYW5kIGFnZ3JlZ2F0ZWQg cG9ydCwgbm8gcG9sbGluZyBzY2hlZHVsZSBjaGFuZ2UuDQoNCj4gDQo+ID4gMi4gcG9sbGluZyBh Z2dyZWdhdGVkIHBvcnQNCj4gPiAgICBCZXNpZGVzIGZvcndhcmRpbmcgZW5naW5lLCBuZWVkIG1v cmUgd29yayB0byB0byBkZW1vIGl0Lg0KPiA+ICAgIFRoaXMgaXMgYW4gb3B0aW9uYWwgQVBJLCBu b3Qgc3VwcG9ydGVkIGJ5IG15IFBNRCB5ZXQuDQo+IA0KPiBXZSBhcmUgdGhpbmtpbmcgb2YgaW1w bGVtZW50aW5nIHRoaXMgUE1EIHdoZW4gaXQgY29tZXMgdG8gaXQsIGllLg0KPiB3aXRob3V0IGFw cGxpY2F0aW9uIGNoYW5nZSBpbiBmYXN0cGF0aA0KPiBsb2dpYy4NCg0KRmFzdHBhdGggaGF2ZSB0 byByZXNvbHZlIHBvcnQgSUQgYW55d2F5IGFuZCBmb3J3YXJkaW5nIGFjY29yZGluZyB0bw0KbG9n aWMuIEZvcndhcmRpbmcgZW5naW5lIG5lZWQgdG8gYWRhcHQgdG8gc3VwcG9ydCBzaGFyZCBSeHEu DQpGb3J0dW5hdGVseSwgaW4gdGVzdHBtZCwgdGhpcyBjYW4gYmUgZG9uZSB3aXRoIGFuIGFic3Ry YWN0IEFQSS4NCg0KTGV0J3MgZGVmZXIgcGFydCAyIHVudGlsIHNvbWUgUE1EIHJlYWxseSBzdXBw b3J0IGl0IGFuZCB0ZXN0ZWQsIGhvdyBkbw0KeW91IHRoaW5rPw0KDQo+IA0KPiA+IA0KPiA+IA0K PiA+ID4gDQo+ID4gPiA+IA0KPiA+ID4gPiA+IA0KPiA+ID4gPiA+IE92ZXJhbGwsIGlzIHRoaXMg Zm9yIG9wdGltaXppbmcgbWVtb3J5IGZvciB0aGUgcG9ydCByZXByZXNvbnRvcnM/IElmIHNvIGNh bid0IHdlDQo+ID4gPiA+ID4gaGF2ZSBhIHBvcnQgcmVwcmVzZW50b3Igc3BlY2lmaWMgc29sdXRp b24sIHJlZHVjaW5nIHNjb3BlIGNhbiByZWR1Y2UgdGhlDQo+ID4gPiA+ID4gY29tcGxleGl0eSBp dCBicmluZ3M/DQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IElmIHRoaXMgb2ZmbG9hZCBpcyBv bmx5IHVzZWZ1bCBmb3IgcmVwcmVzZW50b3IgY2FzZSwgQ2FuIHdlIG1ha2UgdGhpcyBvZmZsb2Fk IHNwZWNpZmljIHRvIHJlcHJlc2VudG9yIHRoZSBjYXNlIGJ5IGNoYW5naW5nIGl0cyBuYW1lIGFu ZA0KPiA+ID4gPiA+ID4gPiBzY29wZS4NCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gSXQgd29y a3MgZm9yIGJvdGggUEYgYW5kIHJlcHJlc2VudG9ycyBpbiBzYW1lIHN3aXRjaCBkb21haW4sIGZv ciBhcHBsaWNhdGlvbiBsaWtlIE9WUywgZmV3IGNoYW5nZXMgdG8gYXBwbHkuDQo+ID4gPiA+ID4g PiANCj4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+IA0KPiA+ ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4g PiBTaWduZWQtb2ZmLWJ5OiBYdWVtaW5nIExpIDx4dWVtaW5nbEBudmlkaWEuY29tPg0KPiA+ID4g PiA+ID4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiA+ID4gPiA+ID4gIGRvYy9ndWlkZXMvbmljcy9m ZWF0dXJlcy5yc3QgICAgICAgICAgICAgICAgICAgIHwgMTEgKysrKysrKysrKysNCj4gPiA+ID4g PiA+ID4gPiA+ID4gIGRvYy9ndWlkZXMvbmljcy9mZWF0dXJlcy9kZWZhdWx0LmluaSAgICAgICAg ICAgIHwgIDEgKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3N3 aXRjaF9yZXByZXNlbnRhdGlvbi5yc3QgfCAxMCArKysrKysrKysrDQo+ID4gPiA+ID4gPiA+ID4g PiA+ICBsaWIvZXRoZGV2L3J0ZV9ldGhkZXYuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAx ICsNCj4gPiA+ID4gPiA+ID4gPiA+ID4gIGxpYi9ldGhkZXYvcnRlX2V0aGRldi5oICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDcgKysrKysrKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgNSBmaWxl cyBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCspDQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4g PiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9uaWNzL2ZlYXR1cmVzLnJzdA0K PiA+ID4gPiA+ID4gPiA+ID4gPiBiL2RvYy9ndWlkZXMvbmljcy9mZWF0dXJlcy5yc3QgaW5kZXgg YTk2ZTEyZDE1NS4uMmUyYTliMTU1NCAxMDA2NDQNCj4gPiA+ID4gPiA+ID4gPiA+ID4gLS0tIGEv ZG9jL2d1aWRlcy9uaWNzL2ZlYXR1cmVzLnJzdA0KPiA+ID4gPiA+ID4gPiA+ID4gPiArKysgYi9k b2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMucnN0DQo+ID4gPiA+ID4gPiA+ID4gPiA+IEBAIC02MjQs NiArNjI0LDE3IEBAIFN1cHBvcnRzIGlubmVyIHBhY2tldCBMNCBjaGVja3N1bS4NCj4gPiA+ID4g PiA+ID4gPiA+ID4gICAgYGB0eF9vZmZsb2FkX2NhcGEsdHhfcXVldWVfb2ZmbG9hZF9jYXBhOkRF Vl9UWF9PRkZMT0FEX09VVEVSX1VEUF9DS1NVTWBgLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4g PiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICsuLiBfbmljX2ZlYXR1cmVz X3NoYXJlZF9yeF9xdWV1ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ ID4gPiArU2hhcmVkIFJ4IHF1ZXVlDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICstLS0tLS0tLS0tLS0t LS0NCj4gPiA+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ID4gPiArU3VwcG9ydHMg c2hhcmVkIFJ4IHF1ZXVlIGZvciBwb3J0cyBpbiBzYW1lIHN3aXRjaCBkb21haW4uDQo+ID4gPiA+ ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ID4gPiA+ID4gKyogKipbdXNlc10gICAgIHJ0ZV9l dGhfcnhjb25mLHJ0ZV9ldGhfcnhtb2RlKio6IGBgb2ZmbG9hZHM6UlRFX0VUSF9SWF9PRkZMT0FE X1NIQVJFRF9SWFFgYC4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gKyogKipbcHJvdmlkZXNdIG1idWYq KjogYGBtYnVmLnBvcnRgYC4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICAuLiBfbmljX2ZlYXR1cmVzX3BhY2tldF90eXBl X3BhcnNpbmc6DQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgUGFj a2V0IHR5cGUgcGFyc2luZw0KPiA+ID4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZG9jL2d1 aWRlcy9uaWNzL2ZlYXR1cmVzL2RlZmF1bHQuaW5pDQo+ID4gPiA+ID4gPiA+ID4gPiA+IGIvZG9j L2d1aWRlcy9uaWNzL2ZlYXR1cmVzL2RlZmF1bHQuaW5pDQo+ID4gPiA+ID4gPiA+ID4gPiA+IGlu ZGV4IDc1NDE4NGRkZDQuLmViZWI0YzE4NTEgMTAwNjQ0DQo+ID4gPiA+ID4gPiA+ID4gPiA+IC0t LSBhL2RvYy9ndWlkZXMvbmljcy9mZWF0dXJlcy9kZWZhdWx0LmluaQ0KPiA+ID4gPiA+ID4gPiA+ ID4gPiArKysgYi9kb2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMvZGVmYXVsdC5pbmkNCj4gPiA+ID4g PiA+ID4gPiA+ID4gQEAgLTE5LDYgKzE5LDcgQEAgRnJlZSBUeCBtYnVmIG9uIGRlbWFuZCA9DQo+ ID4gPiA+ID4gPiA+ID4gPiA+ICBRdWV1ZSBzdGFydC9zdG9wICAgICA9DQo+ID4gPiA+ID4gPiA+ ID4gPiA+ICBSdW50aW1lIFJ4IHF1ZXVlIHNldHVwID0NCj4gPiA+ID4gPiA+ID4gPiA+ID4gIFJ1 bnRpbWUgVHggcXVldWUgc2V0dXAgPQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiArU2hhcmVkIFJ4IHF1 ZXVlICAgICAgPQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgQnVyc3QgbW9kZSBpbmZvICAgICAgPQ0K PiA+ID4gPiA+ID4gPiA+ID4gPiAgUG93ZXIgbWdtdCBhZGRyZXNzIG1vbml0b3IgPQ0KPiA+ID4g PiA+ID4gPiA+ID4gPiAgTVRVIHVwZGF0ZSAgICAgICAgICAgPQ0KPiA+ID4gPiA+ID4gPiA+ID4g PiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3N3aXRjaF9yZXByZXNlbnRhdGlv bi5yc3QNCj4gPiA+ID4gPiA+ID4gPiA+ID4gYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvc3dpdGNo X3JlcHJlc2VudGF0aW9uLnJzdA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBpbmRleCBmZjZhYTkxYzgw Li40NWJmNWEzYTEwIDEwMDY0NA0KPiA+ID4gPiA+ID4gPiA+ID4gPiAtLS0gYS9kb2MvZ3VpZGVz L3Byb2dfZ3VpZGUvc3dpdGNoX3JlcHJlc2VudGF0aW9uLnJzdA0KPiA+ID4gPiA+ID4gPiA+ID4g PiArKysgYi9kb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvc3dpdGNoX3JlcHJlc2VudGF0aW9uLnJzdA0K PiA+ID4gPiA+ID4gPiA+ID4gPiBAQCAtMTIzLDYgKzEyMywxNiBAQCB0aG91Z2h0IGFzIGEgc29m dHdhcmUgInBhdGNoIHBhbmVsIiBmcm9udC1lbmQgZm9yIGFwcGxpY2F0aW9ucy4NCj4gPiA+ID4g PiA+ID4gPiA+ID4gIC4uIFsxXSBgRXRoZXJuZXQgc3dpdGNoIGRldmljZSBkcml2ZXIgbW9kZWwg KHN3aXRjaGRldikNCj4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+IDxo dHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9Eb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvc3dpdGNo ZGV2LnR4dA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGBfDQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiA+ID4gPiArLSBNZW1vcnkgdXNhZ2Ugb2YgcmVwcmVzZW50b3JzIGlzIGh1 Z2Ugd2hlbiBudW1iZXIgb2YgcmVwcmVzZW50b3INCj4gPiA+ID4gPiA+ID4gPiA+ID4gK2dyb3dz LA0KPiA+ID4gPiA+ID4gPiA+ID4gPiArICBiZWNhdXNlIFBNRCBhbHdheXMgYWxsb2NhdGUgbWJ1 ZiBmb3IgZWFjaCBkZXNjcmlwdG9yIG9mIFJ4IHF1ZXVlLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiAr ICBQb2xsaW5nIHRoZSBsYXJnZSBudW1iZXIgb2YgcG9ydHMgYnJpbmdzIG1vcmUgQ1BVIGxvYWQs IGNhY2hlDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICttaXNzIGFuZA0KPiA+ID4gPiA+ID4gPiA+ID4g PiArICBsYXRlbmN5LiBTaGFyZWQgUnggcXVldWUgY2FuIGJlIHVzZWQgdG8gc2hhcmUgUnggcXVl dWUgYmV0d2Vlbg0KPiA+ID4gPiA+ID4gPiA+ID4gPiArUEYgYW5kDQo+ID4gPiA+ID4gPiA+ID4g PiA+ICsgIHJlcHJlc2VudG9ycyBpbiBzYW1lIHN3aXRjaCBkb21haW4uDQo+ID4gPiA+ID4gPiA+ ID4gPiA+ICtgYFJURV9FVEhfUlhfT0ZGTE9BRF9TSEFSRURfUlhRYGANCj4gPiA+ID4gPiA+ID4g PiA+ID4gKyAgaXMgcHJlc2VudCBpbiBSeCBvZmZsb2FkaW5nIGNhcGFiaWxpdHkgb2YgZGV2aWNl IGluZm8uIFNldHRpbmcNCj4gPiA+ID4gPiA+ID4gPiA+ID4gK3RoZQ0KPiA+ID4gPiA+ID4gPiA+ ID4gPiArICBvZmZsb2FkaW5nIGZsYWcgaW4gZGV2aWNlIFJ4IG1vZGUgb3IgUnggcXVldWUgY29u ZmlndXJhdGlvbiB0bw0KPiA+ID4gPiA+ID4gPiA+ID4gPiArZW5hYmxlDQo+ID4gPiA+ID4gPiA+ ID4gPiA+ICsgIHNoYXJlZCBSeCBxdWV1ZS4gUG9sbGluZyBhbnkgbWVtYmVyIHBvcnQgb2Ygc2hh cmVkIFJ4IHF1ZXVlIGNhbg0KPiA+ID4gPiA+ID4gPiA+ID4gPiArcmV0dXJuDQo+ID4gPiA+ID4g PiA+ID4gPiA+ICsgIHBhY2tldHMgb2YgYWxsIHBvcnRzIGluIGdyb3VwLCBwb3J0IElEIGlzIHNh dmVkIGluIGBgbWJ1Zi5wb3J0YGAuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ ID4gPiA+ID4gIEJhc2ljIFNSLUlPVg0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgLS0tLS0tLS0tLS0t DQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEv bGliL2V0aGRldi9ydGVfZXRoZGV2LmMgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4g PiA+ID4gPiA+ID4gPiBpbmRleCA5ZDk1Y2QxMWUxLi4xMzYxZmY3NTlhIDEwMDY0NA0KPiA+ID4g PiA+ID4gPiA+ID4gPiAtLS0gYS9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gPiA+ID4g PiA+ID4gPiArKysgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuYw0KPiA+ID4gPiA+ID4gPiA+ID4g PiBAQCAtMTI3LDYgKzEyNyw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgew0KPiA+ID4gPiA+ID4g PiA+ID4gPiAgICAgICAgIFJURV9SWF9PRkZMT0FEX0JJVDJTVFIoT1VURVJfVURQX0NLU1VNKSwN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICBSVEVfUlhfT0ZGTE9BRF9CSVQyU1RSKFJTU19I QVNIKSwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICBSVEVfRVRIX1JYX09GRkxPQURfQklU MlNUUihCVUZGRVJfU1BMSVQpLA0KPiA+ID4gPiA+ID4gPiA+ID4gPiArICAgICAgIFJURV9FVEhf UlhfT0ZGTE9BRF9CSVQyU1RSKFNIQVJFRF9SWFEpLA0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgfTsN Cj4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICAjdW5kZWYgUlRFX1JY X09GRkxPQURfQklUMlNUUg0KPiA+ID4gPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2V0 aGRldi9ydGVfZXRoZGV2LmggYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuaA0KPiA+ID4gPiA+ID4g PiA+ID4gPiBpbmRleCBkMmIyN2MzNTFmLi5hNTc4YzlkYjlkIDEwMDY0NA0KPiA+ID4gPiA+ID4g PiA+ID4gPiAtLS0gYS9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuaA0KPiA+ID4gPiA+ID4gPiA+ID4g PiArKysgYi9saWIvZXRoZGV2L3J0ZV9ldGhkZXYuaA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBAQCAt MTA0Nyw2ICsxMDQ3LDcgQEAgc3RydWN0IHJ0ZV9ldGhfcnhjb25mIHsNCj4gPiA+ID4gPiA+ID4g PiA+ID4gICAgICAgICB1aW50OF90IHJ4X2Ryb3BfZW47IC8qKjwgRHJvcCBwYWNrZXRzIGlmIG5v IGRlc2NyaXB0b3JzIGFyZSBhdmFpbGFibGUuICovDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICAgICAg ICAgdWludDhfdCByeF9kZWZlcnJlZF9zdGFydDsgLyoqPCBEbyBub3Qgc3RhcnQgcXVldWUgd2l0 aCBydGVfZXRoX2Rldl9zdGFydCgpLiAqLw0KPiA+ID4gPiA+ID4gPiA+ID4gPiAgICAgICAgIHVp bnQxNl90IHJ4X25zZWc7IC8qKjwgTnVtYmVyIG9mIGRlc2NyaXB0aW9ucyBpbiByeF9zZWcgYXJy YXkuDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICovDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICsgICAgICAg dWludDMyX3Qgc2hhcmVkX2dyb3VwOyAvKio8IFNoYXJlZCBwb3J0IGdyb3VwIGluZGV4IGluDQo+ ID4gPiA+ID4gPiA+ID4gPiA+ICsgc3dpdGNoIGRvbWFpbi4gKi8NCj4gPiA+ID4gPiA+ID4gPiA+ ID4gICAgICAgICAvKioNCj4gPiA+ID4gPiA+ID4gPiA+ID4gICAgICAgICAgKiBQZXItcXVldWUg Unggb2ZmbG9hZHMgdG8gYmUgc2V0IHVzaW5nIERFVl9SWF9PRkZMT0FEXyogZmxhZ3MuDQo+ID4g PiA+ID4gPiA+ID4gPiA+ICAgICAgICAgICogT25seSBvZmZsb2FkcyBzZXQgb24gcnhfcXVldWVf b2ZmbG9hZF9jYXBhIG9yDQo+ID4gPiA+ID4gPiA+ID4gPiA+IHJ4X29mZmxvYWRfY2FwYSBAQCAt MTM3Myw2ICsxMzc0LDEyIEBAIHN0cnVjdCBydGVfZXRoX2NvbmYgew0KPiA+ID4gPiA+ID4gPiA+ ID4gPiAjZGVmaW5lIERFVl9SWF9PRkZMT0FEX09VVEVSX1VEUF9DS1NVTSAgMHgwMDA0MDAwMA0K PiA+ID4gPiA+ID4gPiA+ID4gPiAgI2RlZmluZSBERVZfUlhfT0ZGTE9BRF9SU1NfSEFTSCAgICAg ICAgICAgICAgICAweDAwMDgwMDAwDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICAjZGVmaW5lIFJURV9F VEhfUlhfT0ZGTE9BRF9CVUZGRVJfU1BMSVQgMHgwMDEwMDAwMA0KPiA+ID4gPiA+ID4gPiA+ID4g PiArLyoqDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICsgKiBSeCBxdWV1ZSBpcyBzaGFyZWQgYW1vbmcg cG9ydHMgaW4gc2FtZSBzd2l0Y2ggZG9tYWluIHRvIHNhdmUNCj4gPiA+ID4gPiA+ID4gPiA+ID4g K21lbW9yeSwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gKyAqIGF2b2lkIHBvbGxpbmcgZWFjaCBwb3J0 LiBBbnkgcG9ydCBpbiBncm91cCBjYW4gYmUgdXNlZCB0byByZWNlaXZlIHBhY2tldHMuDQo+ID4g PiA+ID4gPiA+ID4gPiA+ICsgKiBSZWFsIHNvdXJjZSBwb3J0IG51bWJlciBzYXZlZCBpbiBtYnVm LT5wb3J0IGZpZWxkLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiArICovDQo+ID4gPiA+ID4gPiA+ID4g PiA+ICsjZGVmaW5lIFJURV9FVEhfUlhfT0ZGTE9BRF9TSEFSRURfUlhRICAgMHgwMDIwMDAwMA0K PiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gICNkZWZpbmUgREVWX1JY X09GRkxPQURfQ0hFQ0tTVU0gKERFVl9SWF9PRkZMT0FEX0lQVjRfQ0tTVU0gfCBcDQo+ID4gPiA+ ID4gPiA+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERFVl9SWF9PRkZM T0FEX1VEUF9DS1NVTSB8IFwNCj4gPiA+ID4gPiA+ID4gPiA+ID4gLS0NCj4gPiA+ID4gPiA+ID4g PiA+ID4gMi4yNS4xDQo+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+IA0KPiA+ID4gPiAN Cj4gPiANCj4gPiANCg0K