From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id CF2EDA0598; Tue, 21 Apr 2020 19:23:14 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id AD9E31D147; Tue, 21 Apr 2020 19:23:14 +0200 (CEST) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 7CBD7F72; Tue, 21 Apr 2020 19:23:10 +0200 (CEST) IronPort-SDR: x/4m9FtS2m8CaMNcT5bff/qnRO6oXi4/jfjvqxfDTzAdxeojuzmHhXHptc+uFJvgbkiGwtFNVg Vhap8LBnVmvA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Apr 2020 10:23:09 -0700 IronPort-SDR: htlETo9Ja6iGvv49MB1XiJskIBYg6k8thSTRi2r6CfDkRwtRhY1ZI3j1cMcqjdsfW0gGjlgJN/ 6NK8/BgGydnQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,411,1580803200"; d="scan'208";a="290539312" Received: from orsmsx107.amr.corp.intel.com ([10.22.240.5]) by fmsmga002.fm.intel.com with ESMTP; 21 Apr 2020 10:23:08 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) by ORSMSX107.amr.corp.intel.com (10.22.240.5) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 21 Apr 2020 10:23:08 -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.1713.5; Tue, 21 Apr 2020 10:23:07 -0700 Received: from ORSEDG001.ED.cps.intel.com (10.7.248.4) by orsmsx606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 21 Apr 2020 10:23:07 -0700 Received: from NAM04-BN3-obe.outbound.protection.outlook.com (104.47.46.58) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 21 Apr 2020 10:23:06 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qrh5HTM7hpB8YoNEkO4l4OldJTbsVs9yL/sktyzLoofIPKt/fVBttSOrjkyaVCafCW4ObDnqiDLJ2glKgGbi88Mquzy/2VTf0V5rUy64f7aDhiwHMZgI42Q4tz+cCNTOqyxLqEYguipa3JplgBvHr3M1rA/stCTuP72TExoy+j238gaIU4DJbCxseZ6gV5LUqJbOPP6d2gI3TX3QJMKXSwb36dbU84KMmU5WlEwL3YPRIu8GUAXDCJC1M3RhXyuyVOaliLQHDNcn7qnjj8rhgtT7sEDOLTyVWDLThFQvdYCWHH3k37TTa9+xreW1a0Hw5EPG7O7yZ+xsMgV6kzc/hA== 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-SenderADCheck; bh=vbQWiAcYMeEwY6KVeluqg6WocqV3dz3tj3WKMaz1hjA=; b=Guu4RbncUmtC8/8nih19XGOQmpbFLG8qXt6yDfPHQeRJNJsjymTR4iqZxWwCZ/hwDym9SEwHCuOcqIlfAzlO/K8vXjOBlClE376xMryI5mog4+dBGMnMOTyssuGUwDk8IKD7ki+nOqLla7EH9bB3jUTyx+ysaArmUOM7v2F9dMS0K24CDRPvpgUMK3h0T2eIm5bYM/LR59/ZzC2TDLo8yH438uOXD/5b+qzNVwR9huS0QY1Pe4FdlSh1hkOVAFjwmL+2hShaYa1p60vIJiQRzBfhZYXd/wKs44q3myb24Hsi19v70RYnL/zich+RxO7gqNhqBkA6+LiZy61xOZKy0A== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vbQWiAcYMeEwY6KVeluqg6WocqV3dz3tj3WKMaz1hjA=; b=ys+IRBNnd8HB0XDtt9DYpnWjX4O78Xwyr4DKl7cMmJL6WxkRJLL/M3nDkXkH2Euh0SNhLVIWZ44ZnyOAtiBeNI9Qt2qmNnuD5AQwF+MUI/zhouXDXDj9YraYNlE03SP21NNhbqXeC4H+RPEVJio4cgCvP9USZd+g3g7xvHqNcaE= Received: from MN2PR11MB3550.namprd11.prod.outlook.com (2603:10b6:208:ee::21) by MN2PR11MB4693.namprd11.prod.outlook.com (2603:10b6:208:261::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.29; Tue, 21 Apr 2020 17:23:02 +0000 Received: from MN2PR11MB3550.namprd11.prod.outlook.com ([fe80::8418:9aea:e601:4470]) by MN2PR11MB3550.namprd11.prod.outlook.com ([fe80::8418:9aea:e601:4470%6]) with mapi id 15.20.2937.012; Tue, 21 Apr 2020 17:23:02 +0000 From: "Coyle, David" To: "Doherty, Declan" , Thomas Monjalon , "Yigit, Ferruh" , "Trahe, Fiona" CC: "techboard@dpdk.org" , "dev@dpdk.org" , "De Lara Guarch, Pablo" , "Ryan, Brendan" , "shreyansh.jain@nxp.com" , "hemant.agrawal@nxp.com" , "akhil.goyal@nxp.com" , Anoob Joseph , Ruifeng Wang , Liron Himi , Nagadheeraj Rottela , Srikanth Jampala , Gagandeep Singh , Jay Zhou , "Ravi Kumar" , "Richardson, Bruce" , "olivier.matz@6wind.com" , "honnappa.nagarahalli@arm.com" , Stephen Hemminger , "alexr@mellanox.com" Thread-Topic: [dpdk-dev] [PATCH v3 0/4] add AESNI-MB rawdev for multi-function processing Thread-Index: AQHWD0YSKRAUuvHdZUmfm4csrp+okahy99iAgAV2poCAAALdAIAAKoOAgAAFkQCAAArIAIAAC6GAgAIRlQCAAAO0gIAJDR2AgAABscA= Date: Tue, 21 Apr 2020 17:23:02 +0000 Message-ID: References: <20200410142757.31508-1-david.coyle@intel.com> <4421330.vfdyTQepKt@thomas> <2fa52616-2e81-4eae-a28b-4549154742fe@intel.com> <8017884.aoefvbuG5b@thomas> <45cf0e87-2021-cc8c-82b5-60c0b1e11fb7@intel.com> In-Reply-To: <45cf0e87-2021-cc8c-82b5-60c0b1e11fb7@intel.com> Accept-Language: en-IE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.2.0.6 dlp-product: dlpe-windows authentication-results: spf=none (sender IP is ) smtp.mailfrom=david.coyle@intel.com; x-originating-ip: [192.198.151.165] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: cb3c84de-2bcb-4747-1f57-08d7e618a58b x-ms-traffictypediagnostic: MN2PR11MB4693: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 038002787A x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB3550.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10019020)(396003)(346002)(376002)(39860400002)(366004)(136003)(86362001)(52536014)(76116006)(66476007)(66556008)(64756008)(66446008)(66946007)(5660300002)(33656002)(71200400001)(316002)(45080400002)(26005)(2906002)(7696005)(53546011)(6506007)(966005)(54906003)(110136005)(478600001)(6636002)(7416002)(4326008)(186003)(55016002)(9686003)(8936002)(8676002)(81156014); DIR:OUT; SFP:1102; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qjAHIcF4dDqPktVKNRQsTLi4abJOyB8DycefSn8iLLOOTQ5/yzFBTdGWH6mBqqRn0Zs5yK49eORVzVSxNyAD2KTiAqil9pT1Yf2FE7AbCgn+ATR7++ovgjvEkun4VyRSDh9ubRnlTwKrCuEG4SiqVK35SooZdYRMxlieeZ0PC6RvvAxW16NdCSRXT1SrwE9iqhscb8INyaQXzv0md3wXeWrzVN/UYSaBIh8gMdgcpg4rcwB+nVXnPr2pV5xrGdMO+zOlRxVu/7qwrX0mxrtcmvfLdg4Oc6YIKWw7kajdbsIXAKRICj+7FumES4A+67OjdGeX6dl2fqojHKXjDlhw0eVvOb70kxed/MY/9wet0K0p9g2S9jWdAXeVBgBZDHlrGl7rSy5uFrx4IYSXYUdpT4PjU08Mm9w+LCVmC4SxojOIvQl5Ys9tYV40PSIRaxyu1LU/kFzNG7iKKSHaKsttFgrGlr7HsoxkyE4TLBxeywVRmlAEug7yjsGFMnZ77R269r4NJzum73uUmyt5Womcbw== x-ms-exchange-antispam-messagedata: MOJP/B4xtjlewwQWWZSbAdJn6r1aVdeqckYoRdzELYNg4Gmx/SB+W5zuRGLjtyrCtqOJor8T1UklhikxhJ7c5gn+KhSvymVPyKTpnN06sZX2lRFJO2yBoqN1GMhd2n91P9D4upXJs3libqDXgMcm5Q== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: cb3c84de-2bcb-4747-1f57-08d7e618a58b X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Apr 2020 17:23:02.3918 (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: 5Tmot8QBvSgy+edcfzp/LL0b/eRXZm44Hvc4QPY2gBxDSgh0lQvnMNSa02Joz3Cswkb021RtlwIDzp39d7LSQw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4693 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v3 0/4] add AESNI-MB rawdev for multi-function processing X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" VGhhbmsgeW91IFRob21hcyBmb3IgeW91ciBpbnB1dC4NCg0KV2Ugd291bGQgbGlrZSB0byByZXF1 ZXN0IHRoYXQgdGhlIFRlY2gtQm9hcmQgKENDJ2VkKSBhbHNvIHJldmlldyB0aGUgcHJvcG9zYWwg dG8gaGVscCB1cyByZWFjaCBhIGNvbnNlbnN1cy4NCiANCklmIHRoZSBjdXJyZW50IHByb3Bvc2Fs IGlzIG5vdCBhY2NlcHRhYmxlLCB3ZSB3b3VsZCB3ZWxjb21lIGZlZWRiYWNrIGZyb20gdGhlIGJv YXJkIG9uIGhvdyB0byByZXdvcmsgb3VyDQpwcm9wb3NhbCB0byBzb21ldGhpbmcgdGhhdCB3b3Vs ZCBiZSBhY2NlcHRhYmxlLg0KIA0KRm9yIHRoZSBiZW5lZml0IG9mIHRoZSBUZWNoLUJvYXJkIGhl cmUgaXMgdGhlIGJhY2stZ3JvdW5kIHRvIG91ciBwcm9wb3NhbCBmb3IgUmF3ZGV2LWJhc2VkIG11 bHRpLWZ1bmN0aW9uDQpwcm9jZXNzaW5nOg0KLSBUaGUgcHJpbWFyeSBvYmplY3RpdmUgaXMgdG8g c3VwcG9ydCB0aGUgQUVTTkkgTUIgY29tYmluZWQgQ3J5cHRvLUNSQyBwcm9jZXNzaW5nIGNhcGFi aWxpdHkgaW4gRFBESyBhbmQNCiAgIGluIGZ1dHVyZSB0byBhZGQgc3VwcG9ydCBmb3IgY29tYmlu ZWQgQ3J5cHRvLUNSQyBzdXBwb3J0IGluIFFBVC4NCi0gVGhlIGNyeXB0b2RldiBBUEkgd2FzIGNv bnNpZGVyZWQgdW5zdWl0YWJsZSBiZWNhdXNlIENSQyBpcyBub3QgYSBjcnlwdG9ncmFwaGljIG9w ZXJhdGlvbiwgYW5kIHRoaXMgd291bGQNCiAgIGFsc28gcHJlY2x1ZGUgb3RoZXIgbm9uLWNyeXB0 byBvcGVyYXRpb25zIGluIHRoZSBmdXR1cmUgc3VjaCBhcyBjb21wcmVzc2lvbi4NCi0gVGhlIHJ0 ZV9zZWN1cml0eSBBUEkgd2FzIGFsc28gbm90IGNvbnNpZGVyZWQgc3VpdGFibGUgZm9yIGNoYWlu aW5nIG9mIG5vbi1jcnlwdG8gb3BlcmF0aW9ucyBzdWNoIGFzIENSQywNCiAgIGFzIERlY2xhbiBw b2ludGVkIG91dCBiZWxvdy4NCi0gQSBuZXcgQWNjZWxlcmF0b3IgQVBJIHdhcyBwcm9wb3NlZCBh cyBhbiBSRkMgYnV0IHdhcyBub3QgcHVyc3VlZCBkdWUgdG8gY29tbXVuaXR5IGZlZWRiYWNrIHRo YXQgYQ0KICAgbmV3IEFQSSB3b3VsZCBub3QgYmUgd2VsY29tZSBmb3IgYSBzaW5nbGUgdXNlLWNh c2UuDQotIFVzaW5nIFJhd2RldiBmb3IgbXVsdGktZnVuY3Rpb24gcHJvY2Vzc2luZyB3YXMgdGhl biBwcm9wb3NlZCBhbmQsIGluaXRpYWxseSwgYXMgdGhlcmUgd2FzIG5vIG9wcG9zaXRpb24NCiAg IHdlIGltcGxlbWVudGVkIGEgcGF0Y2gtc2V0IGZvciB0aGlzIGFwcHJvYWNoLg0KIA0KSXQgd2Fz IGNvbnNpZGVyZWQgdGhhdCBhIFJhd2Rldi1iYXNlZCBtdWx0aS1mdW5jdGlvbiBhcHByb2FjaCB3 b3VsZCBiZSBzdWl0YWJsZSBmb3IgdGhlIGZvbGxvd2luZyByZWFzb25zOg0KMSkgTXVsdGktZnVu Y3Rpb24gcHJvY2Vzc2luZyBmb3IgQ3J5cHRvLUNSQyBjYXNlcyBpcyBub3QgYSBnb29kIGZpdCBm b3IgYW55IG9mIHRoZSBleGlzdGluZyBEUERLIGNsYXNzZXMuDQoyKSBSYXdkZXYgd2FzIGludGVu ZGVkIGZvciBzdWNoIHNwZWNpYWxpemVkIGFjY2VsZXJhdGlvbiBwcm9jZXNzaW5nIHRoYXQgYXJl IG5vdCBhIGdvb2QgZml0IGZvciBleGlzdGluZyBEUERLDQogICAgIGNsYXNzZXMuDQozKSBSYXdk ZXYgd2FzIGFsc28gaW50ZW5kZWQgYXMgc29tZXdoZXJlIHRoYXQgbmV3IHVzZS1jYXNlcyBsaWtl IHRoaXMgY291bGQgYmUgcHJvdG90eXBlZCBhbmQgZGV2ZWxvcGVkLA0KICAgICBzdWNoIGFzIERl Y2xhbiBtZW50aW9ucyBiZWxvdw0KNCkgVGhlIFJhd2Rldi1iYXNlZCBtdWx0aS1mdW5jdGlvbiBw cm9wb3NhbCBpcyBleHRlbnNpYmxlIGFuZCB3ZSB3b3VsZCBob3BlIHRoYXQgaXQgY2FuIGV2b2x2 ZSB0byBzdXBwb3J0DQogICAgIG5ldyB1c2UtY2FzZXMgYW5kIHRhcmdldCBuZXcgZGV2aWNlcyBp biB0aGUgZnV0dXJlIHdpdGggdGhlIGNvbW11bml0aWVzIGludm9sdmVtZW50Lg0KDQoNCj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRG9oZXJ0eSwgRGVjbGFuIDxkZWNsYW4u ZG9oZXJ0eUBpbnRlbC5jb20+DQo+IFNlbnQ6IFR1ZXNkYXksIEFwcmlsIDIxLCAyMDIwIDU6NDYg UE0NCj4gDQo+IE9uIDE1LzA0LzIwMjAgMTE6MzMgUE0sIFRob21hcyBNb25qYWxvbiB3cm90ZToN Cj4gPiAxNi8wNC8yMDIwIDAwOjE5LCBEb2hlcnR5LCBEZWNsYW46DQo+ID4+IE9uIDE0LzA0LzIw MjAgMzo0NCBQTSwgVGhvbWFzIE1vbmphbG9uIHdyb3RlOg0KPiA+Pj4gMTQvMDQvMjAyMCAxNjow MiwgVHJhaGUsIEZpb25hOg0KPiA+Pj4+IEZyb206IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1v bmphbG9uLm5ldD4NCj4gPj4+Pj4gMTQvMDQvMjAyMCAxNTowNCwgVHJhaGUsIEZpb25hOg0KPiA+ Pj4+Pj4+IDE0LzA0LzIwMjAgMTI6MjEsIEZlcnJ1aCBZaWdpdDoNCj4gPj4+Pj4+Pg0KPiA+Pj4+ Pg0KPiBodHRwOi8vaW5ib3guZHBkay5vcmcvZGV2L01OMlBSMTFNQjM1NTA3RDRCOTY2NzdBNDFF NjY0NDBDNUUzQzMwDQo+IEBNDQo+ID4+Pj4+IE4yUFIxMU1CMzU1MC5uYQ0KPiA+Pj4+Pj4+IG1w cmQxMS5wcm9kLm91dGxvb2suY29tLw0KPiA+Pj4+Pj4+DQo+ID4+Pj4+Pj4gSSBhbSBub3QgY29u dmluY2VkLg0KPiA+Pj4+Pj4+IEkgZG9uJ3QgbGlrZSByYXdkZXYgaW4gZ2VuZXJhbC4NCj4gPj4+ Pj4+PiBSYXdkZXYgaXMgZ29vZCBvbmx5IGZvciBoYXJkd2FyZSBzdXBwb3J0IHdoaWNoIGNhbm5v dCBiZSBnZW5lcmljDQo+ID4+Pj4+Pj4gbGlrZSBTb0MsIEZQR0EgbWFuYWdlbWVudCBvciBETUEg ZW5naW5lLg0KPiA+Pj4+Pj4NCj4gPj4+Pj4+IFtGaW9uYV0gQ1JDIGFuZCBCSVAgYXJlIG5vdCBj cnlwdG8gYWxnb3JpdGhtcywgdGhleSBhcmUgZXJyb3INCj4gZGV0ZWN0aW9uIHByb2Nlc3Nlcy4N Cj4gPj4+Pj4+IFNvIHRoZXJlIGlzIG5vIGNsYXNzIGluIERQREsgdGhhdCB0aGVzZSByZWFkaWx5 IGZpdCBpbnRvLg0KPiA+Pj4+Pj4gVGhlcmUgd2FzIHJlc2lzdGFuY2UgdG8gYWRkaW5nIGFub3Ro ZXIgeHh4ZGRldiwgYW5kIGV2ZW4gaWYgb25lDQo+ID4+Pj4+PiBoYWQgYmVlbiBhZGRlZCBmb3Ig ZXJyb3JfZGV0ZWN0aW9uX2RldiwgdGhlcmUgd291bGQgc3RpbGwgaGF2ZQ0KPiA+Pj4+Pj4gYmVl biBhbm90aGVyIGxheWVyIG5lZWRlZCB0byBjb3VwbGUgdGhpcyB3aXRoIGNyeXB0b2Rldi4gVmFy aW91cw0KPiA+Pj4+Pj4gcHJvcG9zYWxzIGZvciB0aGlzIGhhdmUgYmVlbiBkaXNjdXNzZWQgb24g dGhlIE1MIGluIFJGQyBhbmQgcmVjZW50DQo+IHBhdGNoZXMsIHRoZXJlIGRvZXNuJ3Qgc2VlbSB0 byBiZSBhbiBhcHBldGl0ZSBmb3IgdGhpcyBhcyBhIGdlbmVyaWMgQVBJLg0KPiA+Pj4+Pj4gU28g aXQgc2VlbXMgdGhhdCBvbmx5IEludGVsIGhhcyBzb2Z0d2FyZSBhbmQgaGFyZHdhcmUgZW5naW5l cw0KPiA+Pj4+Pj4gdGhhdCBwcm92aWRlIHRoaXMgc3BlY2lhbGlzZWQgZmVhdHVyZSBjb3VwbGlu Zy4gSW4gdGhhdCBjYXNlDQo+ID4+Pj4+PiByYXdkZXYgc2VlbXMgbGlrZSB0aGUgbW9zdCBhcHBy b3ByaWF0ZSB2ZWhpY2xlIHRvIGV4cG9zZSB0aGlzLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBBZGRpbmcg c29tZSB2ZW5kb3Itc3BlY2lmaWMgQVBJIGlzIG5vdCBhIGdvb2QgYW5zd2VyLg0KPiA+Pj4+PiBJ dCB3aWxsIHdvcmsgaW4gc29tZSBjYXNlcywgYnV0IGl0IHdvbid0IG1ha2UgRFBESyBiZXR0ZXIu DQo+ID4+Pj4+IFdoYXQncyB0aGUgcHVycG9zZSBvZiBEUERLIGlmIGl0J3Mgbm90IHNvbHZpbmcg YSBjb21tb24gcHJvYmxlbQ0KPiA+Pj4+PiBmb3IgZGlmZmVyZW50IGhhcmR3YXJlPw0KPiA+Pj4+ DQo+ID4+IFRoZSBjdXJyZW50IHByb3Bvc2FsIGluIHJhd2RldiBjb3VsZCBlYXNpbHkgYmUgc3Vw cG9ydGVkIGJ5IGFueQ0KPiA+PiBoYXJkd2FyZSB3aGljaCBzdXBwb3J0cyBjaGFpbmluZyBtdWx0 aXBsZSBmdW5jdGlvbnMvc2VydmljZXMgaW50byBhDQo+ID4+IHNpbmdsZSBvcGVyYXRpb24sIGlu IHRoaXMgY2FzZSBzeW1tZXRyaWMgY3J5cHRvIGFuZCBlcnJvciBkZXRlY3Rpb24sDQo+ID4+IGJ1 dCBpdCBjb3VsZCBjb25jZWl2YWJseSBzdXBwb3J0IGNoYWluaW5nIHN5bW1ldHJpYy9hc3ltbWV0 cmljIGNyeXB0bw0KPiA+PiBvcGVyYXRpb25zIG9yIGNoYWluaW5nIHN5bW1ldHJpYyBjcnlwdG8g YW5kIGNvbXByZXNzaW9uIG9wZXJhdGlvbnMuDQo+ID4+DQo+ID4+Pj4gW0Zpb25hXSBCYXNlZCBv biB0aGF0IGxvZ2ljIHJhd2RldiBzaG91bGQgYmUgZGVwcmVjYXRlZC4NCj4gPj4+PiBCdXQgdGhl IGNvbW11bml0eSBoYXMgYWdyZWVkIHRoYXQgaXQgaGFzIGEgcGxhY2UuDQo+ID4+Pg0KPiA+Pj4g Tm8sIGFzIEkgc2FpZCBhYm92ZSwgcmF3ZGV2IGlzIGdvb2QgZm9yIFNvQywgRlBHQSBtYW5hZ2Vt ZW50IG9yIERNQQ0KPiBlbmdpbmUuDQo+ID4+DQo+ID4+IEkgZGlzdGluY3RseSByZW1lbWJlciB3 aGVuIHJhd2RldiB3YXMgYmVpbmcgcHJvcG9zZWQgb25lIG9mIHRoZSB1c2VzDQo+ID4+IGNhc2Vz IHByb3Bvc2VkIHdhcyB0aGF0IGEgbmV3IGNsYXNzZXMgb2YgQVBJcyBjb3VsZCBiZSBwcm90b3R5 cGVkIGFuZA0KPiA+PiBkZXZlbG9wZWQgdW5kZXIgcmF3ZGV2IGFuZCB3aGVuIGEgc29saWQgY29u c2Vuc3VzIHdhcyByZWFjaGVkIHRoZW4NCj4gPj4gbWlncmF0ZWQgdG8gYSBtYWluc3RyZWFtIERQ REsgbGlicmFyeS4gSSB0aGluayBldmVyeSBlZmZvcnQgaGFzIGJlZW4NCj4gPj4gbWFkZSBoZXJl IHRvIGVuZ2FnZSB0aGUgY29tbXVuaXR5IHRvIGRldmVsb3AgYSBnZW5lcmljIGFwcHJvYWNoLiBB cw0KPiA+PiBGaW9uYSBub3RlcyB0aGVyZSBoYXNuJ3QgcmVhbGx5IGJlZW4gbXVjaCBvZiBhbiBh cHBldGl0ZSBmb3IgdGhpcy4NCj4gPj4NCj4gPj4gVGhlcmVmb3JlIEkgdGhpbmsgdGhlIG9wdGlv biB0byB1c2UgcmF3ZGV2IG1ha2VzIHNlbnNlLCBpdCBhbGxvd3MgYW4NCj4gPj4gaW5pdGlhbCBw cm9wb3NhbCB0byBiZSBkZXBsb3llZCwgIHdpdGhvdXQgYSBnZW5lcmljIHNvbHV0aW9uDQo+ID4+ IGFncmVlbWVudCwgaXQgd2lsbCBhbHNvIGdpdmUgb3RoZXJzIGluIHRoZSBjb21tdW5pdHkgdG8g c2VlIGhvdyB0aGlzDQo+ID4+IGFwcHJvYWNoIGNhbiB3b3JrIGFuZCBob3BlZnVsbHkgbGVhZCB0 byBtb3JlIGVuZ2FnZW1lbnQgb24gYSBnZW5lcmljDQo+ID4+IHNvbHV0aW9uLiBBbHNvIGFzIEFQ SXMgaW4gcmF3ZGV2IGFyZSBlc3NlbnRpYWxseSB0cmVhdGVkIGFzIHByaXZhdGUNCj4gPj4gQVBJ cyB0aGUgb251cyBpcyBvbiBJbnRlbCB0byBzdXBwb3J0IHRoaXMgZ29pbmcgZm9yd2FyZC4NCj4g Pg0KPiA+IEJlY2F1c2UgaGFyZHdhcmUgc3VwcG9ydCBpcyBwZW5kaW5nLA0KPiA+IHdlIHNob3Vs ZCBhY2NlcHQgYW4gSW50ZWwtb25seSAidGVtcG9yYXJ5IiBzb2x1dGlvbiwgb3BlbmluZyB0aGUg ZG9vcg0KPiA+IHRvIG1vcmUgdmVuZG9yLXNwZWNpZmljIEFQSXM/DQo+ID4NCj4gPiBXaGF0IGlz IHRoZSBiZW5lZml0IGZvciB0aGUgRFBESyBwcm9qZWN0Pw0KPiA+DQo+IFNvcnJ5IEkgZG9uJ3Qg YWdyZWUgd2l0aCB0aGlzIHNlbnRpbWVudCwgRGF2aWQgaGFzIG1hZGUgZXZlcnkgYXR0ZW1wdCB0 bw0KPiBzb2xpY2l0IGZlZWRiYWNrIGFuZCB0byBlbmdhZ2UgdGhlIGNvbW11bml0eSBpbiB0aGlz Lg0KPiANCj4gSSBhbHNvIGRvbid0IGFncmVlIGluIGNsYXNzaWZ5aW5nIHRoaXMgYXMgYSAidGVt cG9yYXJ5IHNvbHV0aW9uIiBhcyB0aGlzIGlzIGEgc29saWQNCj4gcHJvcG9zYWwgZm9yIGFuIGFw cHJvYWNoIHRvIGNoYWluaW5nIG11bHRpcGxlIG9wZXJhdGlvbnMgdG9nZXRoZXIsIGJ1dCBJDQo+ IGd1ZXNzIHRoZSBmYWN0IHJlbWFpbnMgdGhhdCB3ZSBvbmx5IGN1cnJlbnRseSBoYXZlIGEgc2lu Z2xlIHVzZS1jYXNlLCBidXQgaXQgaXMNCj4gZGlmZmljdWx0IHRvIGdlbmVyYXRlIGEgZ2VuZXJp YyBzb2x1dGlvbiBpbiB0aGlzIGNhc2UuDQo+IA0KPiBXaGlsZSB0aGVyZSBpcyBvbmx5IGEgc2lu Z2xlIHVzZSBjYXNlIGl0IGlzIHRhcmdldGluZyB0d28gZGV2aWNlcyBzbyB0aGF0IGRyb3ZlDQo+ IHRoZSBuZWVkIGZvciBhIGNvbW1vbiBpbnRlcmZhY2Ugd2l0aGluIHJhd2Rldi4NCj4gDQo+IFRo ZSBhZHZhbnRhZ2Ugb2YgdXNpbmcgcmF3ZGV2IGlzIHRoYXQgaXQgYWxsb3dzIHRoaXMgdG8gYmUg Y29uc3VtZWQgdGhyb3VnaA0KPiBEUERLLCB3aGljaCBlbmFibGVzIERQREsgcHJvamVjdCBjb25z dW1lcnMsIGJ1dCBhbHNvIGxlYXZlcyB0aGUgZG9vciBvcGVuDQo+IHRvIG90aGVyIGNvbnRyaWJ1 dG9ycyB0byBoYXZlIHRoZWlyIHNheSBvbiBob3cgdGhpcyBzaG91bGQgZXZvbHZlLiBGb3INCj4g ZXhhbXBsZSB0aGlzIGV4YWN0IHByb2Nlc3Mgc2VlbXMgdG8gYmUgb2NjdXJyaW5nIHdpdGggRE1B IGVuZ2luZXMgaW4NCj4gcmF3ZGV2IHRvZGF5LCB3aXRoIGEgY3JpdGljYWwgbWFzcyBvZiBpbXBs ZW1lbnRhdGlvbnMgd2hpY2ggbm93IGlzIGdpdmluZyB0aGUNCj4gaW1wZXR1cyB0byBjcmVhdGUg YSBnZW5lcmljIHNvbHV0aW9uLCBhcyB3ZSB3b3VsZCBob3BlIGNhbiBvY2N1ciBoZXJlIHRvbyBp bg0KPiB0aGUgZnV0dXJlLg0KPiANCj4gDQo+ID4+Pj4gQW5kIHRoZSBjb21tb24gcHJvYmxlbSBo ZXJlIGlzIGRldmljZSBleHBvc3VyZS4NCj4gPj4+PiBXaXRoIGEgc3BlY2lhbGlzZWQgc2Vydmlj ZSBvbiB0b3AuDQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pj4+Pj4+IEhlcmUgdGhlIGludGVudCBpcyB0 byB1c2UgcmF3ZGV2IGJlY2F1c2Ugd2UgZG9uJ3QgZmluZCBhIGdvb2QgQVBJLg0KPiA+Pj4+Pj4+ IEFQSSBkZWZlYXQgaXMgYSBuby1nby4NCj4gPj4+Pj4+DQo+ID4+Pj4+PiBbRmlvbmFdIEl0J3Mg bm90IHRoYXQgd2UgaGF2ZW4ndCBmb3VuZCBhIGdvb2QgQVBJLCBidXQgdGhhdCB0aGVyZQ0KPiA+ Pj4+Pj4gZG9lc24ndCBzZWVtIHRvIGJlIGEgZ2VuZXJhbCByZXF1aXJlbWVudCBmb3Igc3VjaCBh IHNwZWNpYWxpc2VkDQo+ID4+Pj4+PiBBUEkNCj4gPj4+Pj4NCj4gPj4+Pj4gVGhlcmUgaXMgYSBy ZXF1aXJlbWVudCB0byBjb21iaW5lIGZlYXR1cmVzIG9mIGRpZmZlcmVudCBjbGFzc2VzLg0KPiA+ Pj4+DQo+ID4+Pj4gW0Zpb25hXSBDYW4geW91IHBvaW50IG1lIHRvIHRoYXQgcmVxdWlyZW1lbnQg cGxlYXNlPw0KPiA+Pj4NCj4gPj4+IFllcywgcnRlX3NlY3VyaXR5IGlzIHRyeWluZyB0byBhZGRy ZXNzIHRoaXMgZXhhY3QgaXNzdWUuDQo+ID4+Pg0KPiA+Pg0KPiA+PiBJIGRvbid0IGFncmVlIHJ0 ZV9zZWN1cml0eSBhZGRyZXNzZXMgdGhlIHByb2JsZW0gb2YgZGlmZmVyZW50IGRldmljZQ0KPiA+ PiB0eXBlcyBzdXBwb3J0aW5nIHRoZSBzYW1lIHNlcnZpY2VzLiBUaGUgcHJvYmxlbSBiZWluZyBh ZGRyZXNzZWQgaGVyZQ0KPiA+PiBpcyBhIHNpbmdsZSBkZXZpY2Ugd2hpY2ggc3VwcG9ydHMgdGhl IGNoYWluaW5nIG9mIG11bHRpcGxlIHNlcnZpY2VzDQo+ID4+IChzeW0gY3J5cHRvICYgZXJyb3Ig ZGV0ZWN0aW9uKQ0KPiA+DQo+ID4gRG9pbmcgSVBzZWMgcHJvY2Vzc2luZyBpbiBSeCBvciBUeCBv ZiBhIE5JQyBpcyBub3QgY2hhaW5pbmc/DQo+ID4NCj4gSSB3b3VsZG4ndCBjb25zaWRlciBhbiBp bmxpbmUgY3J5cHRvIG9mZmxvYWQgb3IgZnVsbCBJUHNlYyBvZmZsb2FkIGEgY2hhaW5lZA0KPiBv cGVyYXRpb24gaW4gdGhlIHZlaW4gYmVpbmcgcHJvcG9zZWQgaGVyZSB3aGVyZSBjb21wbGV0ZWx5 IGluZGVwZW5kZW50DQo+IHNlcnZpY2VzIChpbiB0aGUgdmlldyBvZiBEUERLIHdoaWNoIGFyZSBj dXJyZW50bHkgb24gaW5kZXBlbmRlbnQgZGV2aWNlcw0KPiBhbmQgQVBJcykgYXJlIGxpbmtlZCB0 b2dldGhlci4NCj4gDQo+IFdlIGRpZCBsb29rIGF0IHVzaW5nIHJ0ZV9zZWN1cml0eSBoZXJlIGJ1 dCBpdCB3YXNuJ3QgY29uc2lkZXJlZCBzdWl0YWJsZSBmb3IgYQ0KPiBjaGFpbmluZyBvZiBub24t Y3J5cHRvIG9wZXJhdGlvbnMgc3VjaCBhcyBDUkMgb3IgcG9zc2libHkgY29tcHJlc3Npb24gaW4g dGhlDQo+IGZ1dHVyZSwgYXMgaXQgd291bGQgc3RpbGwgcnVuIGludG8gdGhlIGlzc3VlIG9mIGhh dmluZyB0byB1c2UgdGhlIGNyeXB0b2Rldg0KPiBlbnEvZGVxIEFQSSBpbiB0aGUgbG9va2FzaWRl IG9mZmxvYWQgY2FzZS4NCj4gDQo+IA0KPiA+Pj4+IFdlIHN1Z2dlc3RlZCBpdCwgYnV0IGRpZCBu b3QgZ2V0IGNvbW11bml0eSBlbmdhZ2VtZW50IGFuZCBoYXZlDQo+ID4+Pj4gZHJvcHBlZCBvdXIg Z2VuZXJpYyBBUEkgcmVxdWlyZW1lbnQsIGluc3RlYWQgZm9jdXNzaW5nIG9uIHRoaXMNCj4gc3Bl Y2lhbGlzZWQgY2FzZS4NCj4gPj4+DQo+ID4+PiBJIGRpZCBub3Qgc2VlIHN1Y2ggZ2VuZXJpYyBw cm9wb3NhbCwgc29ycnkuDQo+ID4+Pg0KPiA+Pj4+PiBJbiB0aGUgcGFzdCwgcnRlX3NlY3VyaXR5 IHdhcyBhbiAiYW5zd2VyIiB0byB0aGlzIGlzc3VlIHdpdGggY3J5cHRvIGFuZA0KPiBldGhkZXYu DQo+ID4+Pj4+IFRoaXMgaXMgYSByZWFsIHRvcGljLCBwbGVhc2UgbGV0J3MgZmluZCBhIGdlbmVy aWMgZWxlZ2FudCBzb2x1dGlvbi4NCj4gPg0KPiA+DQo+ID4NCg==