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 E761DA0597; Thu, 9 Apr 2020 11:37:27 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B4FDF1C1EF; Thu, 9 Apr 2020 11:37:26 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 4E7CA1C1E0 for ; Thu, 9 Apr 2020 11:37:25 +0200 (CEST) IronPort-SDR: ZNbl1ItW9E9U+sQwUaJ/RisM/UR5Nd0UAcs9O1+VHcQQo5gypJxdTF0+qeqXgH8slJeEwec5ss 4csVvLgA/t5w== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Apr 2020 02:37:24 -0700 IronPort-SDR: MJeqCq0zHB7abUTXsDEoGHkWbLRQyUgZgkUdfaYgbZUnu6UV0iq9rw0iYygR3weaDmXTrhWaZ6 XbhQjGPHwQ9A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,362,1580803200"; d="scan'208";a="453109848" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by fmsmga006.fm.intel.com with ESMTP; 09 Apr 2020 02:37:24 -0700 Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 9 Apr 2020 02:37:24 -0700 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 9 Apr 2020 02:37:23 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 9 Apr 2020 02:37:23 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.177) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 9 Apr 2020 02:37:22 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bNSLCt34fJ10rKCqzjYZ3PhS4f6IPFv/hRYnsJhxxTGVrs/1lSQZBPF+tnjBiO15NumbOJkcJMowdnZTNnvMybv+mb6BP2O2qX8WlL+cv7KvxhJRgCNCVNwX0qnX+ARwPBK45YCR7HlvjpFztHVnip7KPrGGzlzzK4pMMzvAKpo8A3K4inqcTF3aPPXVHLgdEnpDA3GzjEw6xdm6ZwIVg7iehyryfv038Z/w91QxBaNNhqWgLUmTFdYpamzXWTxQTJ7RywkwlEKmYFPTbxvx1dMF3hesd7geKWC70V/P7LJngobco7naerSYoWNkDdFvgdwEDw44CcoHs8LbLkHaqA== 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=xseOsy8qv+lY6nXKvo5Cz+EvkReCphKlshloHFEyCXw=; b=nO07LodOpYn5qzp6rH2zK/jE/npaNjnh38bXyKS4pIfZTa8o+CAVKhoYViXFLlvn9PvcJFl553q9CO2PLrik7pY9vMQWGKajOjLM4uDAxHL5ZrLbprEi9BpB21/oHVEhv0FCapaVXhU9aHM4nq6H8J8hyFDL4hCJ0TmJnbjYULUn6U2DVoiqQUt1/RFG8FNTwSKxGVPsbAd6eZ6gNO51vI30LLEg78i0GFRyAhgV8oEaqzonTVgwoGw+HRz6m9NFghME/l4wPmKtaAWBonQmilumznJPBTfPj3Ps8rXPGIoSeaU3/Y4rmSVftXqbley879lXyqoRYEyRk2i7ozf4Tw== 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=xseOsy8qv+lY6nXKvo5Cz+EvkReCphKlshloHFEyCXw=; b=BfxQDDRSxZp3P2GnaFmSZ2SymU6K3BMHcF0nAI+ARGY/svN/WOXivknpV5ii+H+vqgO4hktR9s8Gjb/QB3yXQ+aZQBnWXj2EzBred+dfN6FMbR7CrHLJ0+IgspvkMy+A93NZKxBvfFTSf5BSUQxWG/t/jl/EQLUX8wfmCSTEdcQ= Received: from SN6PR11MB2880.namprd11.prod.outlook.com (2603:10b6:805:58::15) by SN6PR11MB3214.namprd11.prod.outlook.com (2603:10b6:805:c7::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.15; Thu, 9 Apr 2020 09:37:19 +0000 Received: from SN6PR11MB2880.namprd11.prod.outlook.com ([fe80::1893:aaa5:545f:5272]) by SN6PR11MB2880.namprd11.prod.outlook.com ([fe80::1893:aaa5:545f:5272%7]) with mapi id 15.20.2878.021; Thu, 9 Apr 2020 09:37:19 +0000 From: "Trahe, Fiona" To: "Coyle, David" , "Yigit, Ferruh" , "dev@dpdk.org" CC: "Doherty, Declan" , "De Lara Guarch, Pablo" , "Ryan, Brendan" , "shreyansh.jain@nxp.com" , "hemant.agrawal@nxp.com" , Akhil Goyal , "O'loingsigh, Mairtin" , "Trahe, Fiona" Thread-Topic: [dpdk-dev] [PATCH v2 0/4] introduce multi-function processing support Thread-Index: AQHWCdfUIAqVjs8sXEep9ytdiYELCKhsK5iAgAFf5oCAAFg+YIACqkOAgAACUkA= Date: Thu, 9 Apr 2020 09:37:18 +0000 Message-ID: References: <20200403163656.60545-1-david.coyle@intel.com> <02531729-4eee-3789-d1b7-54075312e66b@intel.com> 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.2.0.6 authentication-results: spf=none (sender IP is ) smtp.mailfrom=fiona.trahe@intel.com; x-originating-ip: [192.198.151.181] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: df265bc4-b2bc-43f1-ea12-08d7dc6998ea x-ms-traffictypediagnostic: SN6PR11MB3214: 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: 0368E78B5B x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB2880.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10019020)(136003)(346002)(39860400002)(366004)(376002)(396003)(316002)(8676002)(110136005)(107886003)(4326008)(81156014)(7696005)(53546011)(66946007)(66446008)(66556008)(54906003)(64756008)(76116006)(66476007)(6506007)(71200400001)(8936002)(9686003)(2906002)(478600001)(86362001)(55016002)(5660300002)(81166007)(33656002)(26005)(186003)(52536014)(21314003); DIR:OUT; SFP:1102; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: LCm4k6Wzgi8/lJa6NV0YjpWXCtIpayEmTc2sCHcQlORBCgN7/A2Nz0+9XfGqp/27I+8X6M1vn8s67ycKPs5Gkeud5QnudCbukLfXirHi3MmPtcpKSXEOSNIvz0LKyfi8hO9SmPiZl155u7S9DfuqvRX51ehy5h1CnuTs2gKPZoqh4J6sUf79/FRPjXrAhSJHCPGpBBPTf/JsseC7b4LC4X8HyuGSjoRUf0+0gpEyJKAkenhEaid3ufazveWIXRdmsInD8/6d2Rv25/UFt0GMZZUrZ7LEuh1jye6dFZQ++eqRma6y+Rs/t1/EH0eNtYRMl2Mk8+rx0asijaM2f0lfP20jP1uBB8SuRhEbq7K57eLGTkorAl85jV7bzBP7pBRGvmJfZAYQ1lh6/legi85vGYrhmsZUJ/VC36/pweU2S2uvC3OUe3UHn8aE3J1nB47vYpLUlsQb2/NkLglkD7dM/hez25CmyxNBK2BbHqGMGRccNbxjpNKjRYBKPhUHpCZi x-ms-exchange-antispam-messagedata: kmiTe6y7U7k31M9VHRO6iSbWztrrIQVuOWaadKuFy0w8CHA0+Or2BLxlchx2A9HkRvSHbU8Yc2w31jntxgyAm6l1/jMhGRdt8wjGf1289NuEjlEBY8r0+1Cwks8Zjjc4rFTq773zJvcAJiNpVHBLmQ== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: df265bc4-b2bc-43f1-ea12-08d7dc6998ea X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Apr 2020 09:37:18.9774 (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: 7hqhaE3ojbAqRpRhiXqvJzz/eMtFiDdhb8kXGiW7U64S7jPB6ye8V1eG46pf8GqdKX4zwlo0UCeuW6nEPDJIrg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3214 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v2 0/4] introduce multi-function processing support 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" SGkgRGF2aWQsDQoNCkFuc3dlciBpbmxpbmUgYmVsb3cNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KPiBGcm9tOiBDb3lsZSwgRGF2aWQgPGRhdmlkLmNveWxlQGludGVsLmNvbT4NCj4g U2VudDogVGh1cnNkYXksIEFwcmlsIDksIDIwMjAgMTA6MjYgQU0NCj4gVG86IFRyYWhlLCBGaW9u YSA8ZmlvbmEudHJhaGVAaW50ZWwuY29tPjsgWWlnaXQsIEZlcnJ1aCA8ZmVycnVoLnlpZ2l0QGlu dGVsLmNvbT47IGRldkBkcGRrLm9yZw0KPiBDYzogRG9oZXJ0eSwgRGVjbGFuIDxkZWNsYW4uZG9o ZXJ0eUBpbnRlbC5jb20+OyBEZSBMYXJhIEd1YXJjaCwgUGFibG8NCj4gPHBhYmxvLmRlLmxhcmEu Z3VhcmNoQGludGVsLmNvbT47IFJ5YW4sIEJyZW5kYW4gPGJyZW5kYW4ucnlhbkBpbnRlbC5jb20+ Ow0KPiBzaHJleWFuc2guamFpbkBueHAuY29tOyBoZW1hbnQuYWdyYXdhbEBueHAuY29tOyBBa2hp bCBHb3lhbCA8YWtoaWwuZ295YWxAbnhwLmNvbT47DQo+IE8nbG9pbmdzaWdoLCBNYWlydGluIDxt YWlydGluLm9sb2luZ3NpZ2hAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTogW2RwZGstZGV2XSBb UEFUQ0ggdjIgMC80XSBpbnRyb2R1Y2UgbXVsdGktZnVuY3Rpb24gcHJvY2Vzc2luZyBzdXBwb3J0 DQo+IA0KPiBUaGFua3MgZm9yIHRoZSBkZXRhaWxlZCByZXZpZXcgRmlvbmEuDQo+IA0KPiBCYXNl ZCBvbiB5b3VyIGZlZWRiYWNrLCB3ZSB3aWxsIHJlZHVjZSB0aGUgc2NvcGUgb2Ygb3VyIHBsYW5z IGZvciBtdWx0aS1mdW5jdGlvbiBwcm9jZXNzaW5nIHN1cHBvcnQNCj4gaW4gRFBESy4NCj4gDQo+ IFdlIHdpbGwgZm9jdXMgb24gaW1wbGVtZW50aW5nIGEgcmF3ZGV2LWJhc2VkIEFFU05JLU1CIFBN RCBmb3IgQ3J5cHRvLUNSQyBhbmQgQ3J5cHRvLUNSQy1CSVANCj4gcHJvY2Vzc2luZyBhbmQgd2Ug d2lsbCBhZGQgUUFUIENyeXB0by1DUkMgc3VwcG9ydCBpbiBhIGxhdGVyIHJlbGVhc2UuDQo+IFRo aXMgZnVuY3Rpb25hbGl0eSBpcyBzcGVjaWZpYyB0byBhY2NlbGVyYXRlZCBkYXRhcGxhbmUgcHJv Y2Vzc2luZyBmb3IgRE9DU0lTIGFuZCBQT04gTUFDIHdvcmtsb2Fkcy4NCj4gDQo+IFdlIGFsc28g bm90ZSB0aGF0IHRoZXJlIGhhc24ndCBiZWVuIG11Y2ggY29tbXVuaXR5IGVuZ2FnZW1lbnQgaW4g dGhlIGJyb2FkZXIgc2NvcGUsIHNvIHRoZXNlDQo+IHNpbXBsZXIgcmF3ZGV2IFBNRHMgc2hvdWxk IGJlIHN1ZmZpY2llbnQuDQo+IElmIHRoZSBEUERLIGNvbW11bml0eSBpcyBpbnRlcmVzdGVkIGlu IGV4cGFuZGluZyB0aGlzIGNvbmNlcHQgbGF0ZXIsIHRoZW4gdGhpcyBjYW4gYmUgZXhwbG9yZWQs IGJ1dCBpdA0KPiB3b3VsZCBub3Qgc2VlbSBuZWNlc3NhcnkgZm9yIG5vdy4NCj4gDQo+IFdlIHdp bGwgYWxzbyByZW1vdmUgY3J5cHRvLXBlcmYtdGVzdGVyIHVwZGF0ZXMgdG8gdGVzdCByYXdkZXYg bXVsdGktZnVuY3Rpb24gcHJvY2Vzc2luZyBhcyB0aGlzIHdvdWxkDQo+IHNlZW0gbGlrZSB0b28g bXVjaCBjb2RlIGNodXJuIG9uIHRoYXQgdGVzdCB0b29sLg0KDQpbRmlvbmFdIFRoYXQgc291bmRz IGxpa2UgYSBnb29kIGlkZWEuIEluIHRoYXQgY2FzZSBteSBjb21tZW50cyBCLCBEIGFuZCBFIGFy ZSBub3QgcmVsZXZhbnQgYXMgYXNzdW1pbmcgYSBicm9hZGVyIHNjb3BlLg0KQ29tbWVudHMgQSwg QyBhbmQgRiBjYW4gc3RpbGwgYmUgY29uc2lkZXJlZCwgYnV0IGFyZSBqdXN0IHN1Z2dlc3Rpb25z LCBub3QgYmxvY2tlcnMgdG8gdGhpcyBiZWluZyANCmFwcGxpZWQgaW4gMjAuMDUsIHRoZXkgY291 bGQgZWFzaWx5IGJlIGRvbmUgaW4gYSBsYXRlciByZWxlYXNlLg0KDQovLy9zbmlwLy8vDQoNCj4g PiBJIGRvIGhhdmUgc29tZSBjb25jZXJucywgYnV0IHRoZXNlIGFyZSByZXNvbHZhYmxlIGluIG15 IG9waW5pb24uDQo+ID4gICAgIChBKSAgICBhcyB0aGVyZSdzIG5vIHJhd2RldiBjYXBhYmlsaXR5 IEFQSXMgYW5kIGNhcGFiaWxpdGllcyBhcmUgZXNzZW50aWFsbHkNCj4gPiBvcGFxdWUgdG8gdGhl IHJhd2RldiBBUEksIHRoZSBhcHBsaWNhdGlvbiB1c2VzIGV4cGxpY2l0IGRldmljZSBuYW1pbmcg dG8NCj4gPiBjcmVhdGUgb3IgZmluZCBhIGRldmljZSB0aGF0IGl0IGtub3dzIHdpbGwgZnVsZmls IHRoZSBtdWx0aWZ1bmN0aW9uIEFQSXMuIEkgY2FuIHNlZQ0KPiA+IGhvdyB0aGlzIHdvcmtzIGZv ciByYXdkZXZzIHdoaWNoIGV4cGVjdCB0byBoYXZlIG9ubHkgb25lIFBNRCB0aGF0IHdpbGwNCj4g PiBmdWxmaWwgdGhlIHNlcnZpY2UsIGhvd2V2ZXIgSSdkIGV4cGVjdCBtdWx0aS1mbiB0byBoYXZl IGF0IGxlYXN0IDIgZHJpdmVyIHR5cGVzLA0KPiA+IHByb2JhYmx5IG1vcmUgZXZlbnR1YWxseS4g VG8gYmUgZXh0ZW5zaWJsZSBJJ2Qgc3VnZ2VzdCBhIG5hbWluZyBjb252ZW50aW9uDQo+ID4gZm9y IGEgY2xhc3Mgb2YgZGV2aWNlcy4gRS5nLiBhbGwgZGV2aWNlcyBhbmQgZHJpdmVycyB0aGF0IGlt cGxlbWVudCBtdWx0aS1mbg0KPiA+IHNob3VsZCBjcmVhdGUgYSByYXdkZXYgbmFtZWQgbWZuX3h4 eCwgZS5nLiBtZm5fYWVzbmlfbWIsIG1mbl9xYXQuIFRoZQ0KPiA+ICJtZm5fIiBzdHJpbmcgc2hv dWxkIGJlIGRlZmluZWQgaW4gdGhlIG1mbiBoZHIuIFRoaXMgd291bGQgYWxsb3cgY3JlYXRpb24g b2YNCj4gPiBhcGlzIGxpa2UgcnRlX211bHRpX2ZuX2NvdW50KCkgd2hpY2ggY291bGQgZmluZCBy YXdkZXZzIHdoaWNoIGltcGxlbWVudA0KPiA+IG1mbl8gd2l0aG91dCBoYXJkY29kaW5nIHNwZWNp ZmljIGRyaXZlciBuYW1lcy4NCj4gPiAgICAgKEIpICAgIHZlcnNpb24gY29udHJvbCBvZiB0aGUg bXVsdGktZnVuY3Rpb24gQVBJcy4gUHV0dGluZyB0aGUgbXVsdGlmbiBBUEkgaW50bw0KPiA+IHRo ZSBkcml2ZXJzL3Jhdy9jb21tb24gZGlyZWN0b3J5IGdpdmVzIGEgbG90IG9mIGZyZWVkb20gd2hp bGUgaXQncw0KPiA+IGV4cGVyaW1lbnRhbC4gQnV0IGNhbiBpdCBiZW5lZml0IGZyb20gQVBJL0FC SSBicmVha2FnZSBpbmZyYXN0cnVjdHVyZSBvbmNlDQo+ID4gdGhlIGV4cGVyaW1lbnRhbCB0YWcg aXMgcmVtb3ZlZD8gSXMgdGhlcmUgYW55IHJlYXNvbiBub3QgdG8gbW92ZSB0aGUNCj4gPiBjb21t b24gZmlsZXMgdG8gYSBsaWIvbGlicnRlX211bHRpX2ZuIEFQST8NCj4gPiAgICAgKEMpICAgIHhz dGF0IG5hbWUgc3RyaW5ncyBzaG91bGQgYmUgbW92ZWQgZnJvbSBhZXNuaV9tYiBQTUQgdG8gY29t bW9uDQo+ID4gYW5kIG1heWJlIHVzZSBzYW1lIG5hbWluZyBjb252ZW50aW9uLCBzbyBhcHBsIGNh biBxdWVyeSBzYW1lIHN0YXRzIGZyb20NCj4gPiBhbnkgZGV2aWNlLCBlLmcuICJtZm5fc3VjY2Vz c2Z1bF9lbnF1ZXVlcyIgY291bGQgYmUgaW1wbGVtZW50ZWQgYnkgYWxsDQo+ID4gUE1Ecy4gSWYg UE1EcyB3YW50IHRvIGFkZCBkcml2ZXItc3BlY2lmaWMgc3RhdHMgdGhleSBjYW4gYWRkIHRoZWly IG93bg0KPiA+IHdpdGhvdXQgdGhlIG1mbl8sIGluc3RlYWQgY3JlYXRlIHRoZWlyIG93biB1bmlx dWUgc3RhdCBuYW1lLg0KPiA+ICAgICAoRCkgICAgVGhlIHVuaXQgdGVzdCBjb2RlIGlzIG5vdCBl eHRlbnNpYmxlIC0gYWdhaW4gcHJvYmFibHkgYXMgYmFzZWQgb24NCj4gPiBwcmV2aW91cyByYXdk ZXZzIHdoZXJlIHRoZXJlJ3Mgb25seSAxIGltcGxlbWVudGF0aW9uLiBGb3IgbWZuIEknZCBzdWdn ZXN0DQo+ID4gcmVwbGFjaW5nIHRlc3RfcmF3ZGV2X3NlbGZ0ZXN0X2Flc25pX21iKCkgd2l0aCBh DQo+ID4gdGVzdF9yYXdkZXZfc2VsZnRlc3RfbXVsdGlfZnVuY3Rpb24oKSwgd2hpY2ggZmluZHMg YW5kL29yIGNyZWF0ZXMgYWxsIHRoZQ0KPiA+IHJhdyBQTURzIGltcGxlbWVudGluZyB0aGUgbWZu IEFQSSBhbmQgcnVucyBhIHRlc3Qgb24gZWFjaC4gQW5kIG1vdmUgdGhlDQo+ID4gdGVzdCBmaWxl cyBmcm9tIHRoZSBkcml2ZXJzL3Jhdy9hZXNuaV9tYiBkaXIgdG8gYXBwL3Rlc3QgYW5kIG1ha2Ug Z2VuZXJpYyBzbw0KPiA+IGNhbiBydW4gYWdhaW5zdCBhbnkgZGV2aWNlIG5hbWVkIG1mbl94eHgN Cj4gPiAgICAgKEUpICAgIHRoZSBtYWluIHJlYXNvbiB0byBwaWdneWJhY2sgb250byBjcnlwdG9f cGVyZl90b29sIGlzIHRvIGdldCB0aGUNCj4gPiBiZW5lZml0IG9mIHBhcnNpbmcgYW5kIG9mIGFs bCB0aGUgY3J5cHRvIHNldHVwLiAgSG93ZXZlciB0aGlzIGNvZGUgaGFzIGJlZW4NCj4gPiBpbmZs YXRlZCBhIGxvdCwgaW4gcGFydCBkdWUgdG8gbmFtZSBkaWZmcyBsaWtlIHJ0ZV9jcnlwdG9kZXZf ZW5xdWV1ZV9idXJzdCgpDQo+ID4gdnMgcnRlX211bHRpX2ZuX2VucXVldWVfYnVyc3QoKS4gTWF5 YmUgY291bGQgYmUgYSBsb3Qgc2xpbW1lciB3aXRoDQo+ID4gbWFjcm9zIGxpa2UgRU5RVUVVRV9C VVJTVChkZXYsIHFwLCB2b2lkICpvcCwgYnVyc3Rfc2l6ZSkgPyB3b3VsZCBtZWFuIGENCj4gPiBj b21waWxlIHRpbWUgZGVjaXNpb24gdG8gZG8gZWl0aGVyIG11bHRpZm4gT1IgY3J5cHRvZGV2IEFQ SSBjYWxscywgYnV0IEkgdGhpbmsNCj4gPiB0aGF0IG1heSB3b3JrIGFuZCBzaW1wbGlmeSBpdC4N Cj4gPiAgICAgKEYpICAgIG9rLCB0aGlzIGlzIGEgYml0IHBlZGFudGljLCAoc29ycnkgRGF2aWQh KSBidXQgc2hvdWxkIHRoZSBhZXNuaV9tYg0KPiA+IHJhd2RldiBiZSByZW5hbWVkIGFlc25pX21i X21mbiB0aHJvdWdob3V0IChmaWxlcywgZm5zLCBkZXYgYW5kIGRyaXZlcg0KPiA+IG5hbWUpLiBJ IG1lYW4gaXQncyBpbXBsZW1lbnRpbmcgdGhlIG1mbiB0eXBlIG9mIHJhd2Rldi4gSSdtIHRoaW5r aW5nIGFoZWFkDQo+ID4gdG8gUUFUIC0gaXQgY2FuIGltcGxlbWVudCBhIHN5bSBkZXZpY2UsIGFu IGFzeW0gZGV2aWNlLCBhIGNvbXByZXNzaW9uDQo+ID4gZGV2aWNlIGFuZCBpbiBmdXR1cmUgYSBt dWx0aS1mbiBkZXZpY2UuIEknZCBwcm9wb3NlIHRvIG5hbWUgaXQgcWF0X211bHRpZm4gaW4NCj4g PiBjYXNlIHRoZXJlJ2xsIGJlIHNvbWUgb3RoZXIga2luZCBvZiByYXdkZXYgZGV2aWNlIGl0IGNv dWxkIGFsc28gaW1wbGVtZW50IGluDQo+ID4gZnV0dXJlLiBTbyB0aGUgbmFtZSBxYXRfcmF3IHdv dWxkbid0IGJlIHNvIGhlbHBmdWwuICh3ZSBtYWRlIHRoYXQgbWlzdGFrZQ0KPiA+IHdpdGggcWF0 X2NyeXB0bywgd2hpY2ggc2hvdWxkIHByb2JhYmx5IGhhdmUgYmVlbiBxYXRfc3ltX2NyeXB0byAt IGluIG15DQo+ID4gb3BpbmlvbiBtb3JlIHNwZWNpZmljIG5hbWVzIGFyZSBiZXR0ZXIpDQo+ID4N Cj4gPiBJIGhhdmUgYSBmZXcgbWlub3IgY29tbWVudC0gSSdsbCByZXBseSBvbiBzcGVjaWZpYyBw YXRjaGVzLg0KDQo=