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 E3DA6A04BA; Thu, 1 Oct 2020 19:22:26 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 24C1F1C231; Thu, 1 Oct 2020 19:22:25 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 779911C22B for ; Thu, 1 Oct 2020 19:22:23 +0200 (CEST) IronPort-SDR: n/ye9FhHUGdRYyoj5iIKTe7rpP02BWTcxKDybcDMOCnVA9QuAvwhE7+CfgLVn9UuIK0Q1nFEKi d9FChxx7WrnA== X-IronPort-AV: E=McAfee;i="6000,8403,9761"; a="142186791" X-IronPort-AV: E=Sophos;i="5.77,324,1596524400"; d="scan'208";a="142186791" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2020 10:22:18 -0700 IronPort-SDR: uTznsYHoJBoDakoeEUg9EUiY+HmPQMj6p4y3gXIMyM1E8YbsRGq74oQd30AYdzzx1cpWSPI+xO qjwNLA3Rfr+A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,324,1596524400"; d="scan'208";a="385609286" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga001.jf.intel.com with ESMTP; 01 Oct 2020 10:22:18 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 1 Oct 2020 10:22:18 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 1 Oct 2020 10:22:17 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 1 Oct 2020 10:22:17 -0700 Received: from NAM04-CO1-obe.outbound.protection.outlook.com (104.47.45.59) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Thu, 1 Oct 2020 10:22:17 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XW9pDsL6rtDfgq+PY1bOXovMZrQwrMEptt9G7uLZ0G4LaGUivQRBYzLnrZQ39Ul3Zq21medYSzB/QpA64CEfTegT5kQPxXTPPcjeLli572YQlLIROQz2AlKhYpc9hfVqucY8+7UGkHLihp5rz0sNZkHTI4Cm7Sgr4E+WWNUAHT1tMWlr+vcLxbXYM3o5eGK7SvN9bKb/1/FKL+3X/BGBakrVM6+3vfUT7ybjcyx6zlhlduV5tOqe9KdaHzcweDTNbBlKQUZvqbKMtaeUdNXVFmL72BFq4NbGJx9M7uC0VLKZ3r+rxOUlrDg+mz5314ekK1O/zW4CHry98zdPSi7YGQ== 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=hpvAgrGcMdP1TrDDXBPaQTEnxXuHrQg5iSTfboYOi0g=; b=BK4d8DX925HQUoVhxDvAmsb6B6vMDO+DMZcoUEn+l6YNffZku+RE7zvYWd1chlt4voqJwddFq3gCf+E6dXh4f3Nbabq7EYbdU3pWoiZGhUkGdu06PmxA/lNldqtDEiEumk/0pCj/zWYQkRsvQ/9DAPU5Y6FH8w/QeKL5+9+jgL9RO68aZucpoZAVaY/vd35ZFZZyG07h8kCpNzRwpm95l39g8g3bJ4iymRt7yjrk0jcDk7UVzCt0HBxPB0OSF93MPVY9wyIN+A3uTA3mqNatURBFGuZBJJchPtKe/sjuUL+Xwe0K5J3/GEO++W6ydALCwyWFyrU+G1BZXEbxJVoJZA== 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=hpvAgrGcMdP1TrDDXBPaQTEnxXuHrQg5iSTfboYOi0g=; b=JU3d8NLhmeQuuaDJmUhjHY2Tn+yt3v4XDnzlyjw8uvZxH5P4BfhLK4vtmRKdOqvvsamNpLga9Ql4X1J0H4/1gmdFyYimc1XnnaM4E9sPuXnvN3H/qs6uS2uNI5mb9jNd67OLHuGP2f8Ud+Q5wxcl7mQunkQXCkx9ie13t/RCMqs= Received: from CY4PR11MB1702.namprd11.prod.outlook.com (2603:10b6:903:2e::8) by CY4PR11MB1878.namprd11.prod.outlook.com (2603:10b6:903:11f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.32; Thu, 1 Oct 2020 17:22:16 +0000 Received: from CY4PR11MB1702.namprd11.prod.outlook.com ([fe80::ddb:33e0:ba2a:e390]) by CY4PR11MB1702.namprd11.prod.outlook.com ([fe80::ddb:33e0:ba2a:e390%4]) with mapi id 15.20.3433.037; Thu, 1 Oct 2020 17:22:16 +0000 From: "Dumitrescu, Cristian" To: David Marchand CC: dev , Thomas Monjalon Thread-Topic: [PATCH v7 00/42] Pipeline alignment with the P4 language Thread-Index: AQHWmBapmbVRLq2J00GMhhlMOUE1RqmC/ojQ Date: Thu, 1 Oct 2020 17:22:16 +0000 Message-ID: References: <20200930063416.68428-2-cristian.dumitrescu@intel.com> <20201001102010.36861-1-cristian.dumitrescu@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-reaction: no-action dlp-product: dlpe-windows authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [109.79.102.18] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d71ec400-ebd6-41db-8947-08d8662e8b67 x-ms-traffictypediagnostic: CY4PR11MB1878: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4502; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: x/vHx4Z2RnZ6vXRBtSEzr4HSSbDH98YSE3rUPr0sDc98MF+yURhDqjJc7JJX4MOKEmldJ7uowiNlFJPmEzM0tLJ+Um2R465IxPN+Fymc6mYhIoUYKVFfZ9SpsqIPp/BxmTEtwsK0m1/B0haGgNH5+eCUk8+zPeFD2NeyHHnT6LGbo9wlljetI4CswkW6xcuMIS73ipnDq1Wa4R0c4JMJcprZblOgmW2HI1ryFlfKUhPORyvZWfAAi5gCwXERiGSX325HzRfuJ5xIUrgH0ZMTVzRk8hQbNoL5CTEOMUUzTS7SEb8/3xcgyrEEqSNYrFu/jGr/HsBk64mYYLBfHlNZ63CV2ZB7JW1O55cPqpbaP1Yh8R5VTs75+3nW2eyXEA3tF/A1PU9Zt/yCohIx6IyVBw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CY4PR11MB1702.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(136003)(366004)(39860400002)(346002)(376002)(83380400001)(966005)(66476007)(66946007)(64756008)(66446008)(53546011)(66556008)(186003)(6506007)(4326008)(71200400001)(26005)(76116006)(8676002)(55016002)(86362001)(478600001)(5660300002)(52536014)(6916009)(2906002)(316002)(7696005)(33656002)(54906003)(9686003)(83080400001)(8936002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: eR3WyQX85d9QtHSJSw1Tsn/5c4RzIo1GNM9TFN7ISTVqnRNVdNt2xlqX/cIur80y6icQErZX6ovEF+eZ73HDsDttEgZglySbdLQAwa6ujpkFQWUK/eNMiVMTik9BoSL4aGX2E21GR4/F4uO4B69VL5kW/C1q/f3Q8FDlK34wy26fVS1EE3mxA235yI51dn/JcsMoOg/nrGeRq+rTZwa6cPDyDEDJwrPm4ckweMcUHUPRVCjXH//d6k3fFws7JyZIDp1/nJ7w9sfNrm/kxyb2MFaRxmNvnUTZaPkE7QeC8Bo0jyK0iTVwkywuWVyL5uRA0Hl+iXZgVQfTRctLGva1uRJEDY2K3fu4BsvY4ctjLL6VA/hnQC6tzThJIzadbIh20lzvkGohXJYzKTzW6JJZgB8q8o+QWW9Ekr94On7aG9SZjOv0e3yCcLQ9EUjX9YuwYYK0aUw5xulBF5hmsc/RzwkSPmKlu7muwmdZTVn533IBQn6j9/LrPtk692l9hI7OZlZRMUP6cKBbAYMWRBZQ2lXlK+17W45k7vLQSNYhTuL90LCUENKNRRCazIRK0ILmLmOKpoFjzeLKaKKEJF5LdU2KVNVLTd5pOO8pD4YY4jS2YIZPdbqsjeX8IalTQTeSVZJaCi6kwd9gB7R+XwODbQ== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY4PR11MB1702.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d71ec400-ebd6-41db-8947-08d8662e8b67 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Oct 2020 17:22:16.5682 (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: wB4HWBBSVRDm5suEJp4+vv5v6SHsHI4SYwzZkPhDPnmH89/1ZcJ9YYGFJRCCEZXXHTp/D7zPG7wf0+j/mDccX15CIP5D6gN1lRIdY15EKq4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR11MB1878 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v7 00/42] Pipeline alignment with the P4 language 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" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRGF2aWQgTWFyY2hhbmQg PGRhdmlkLm1hcmNoYW5kQHJlZGhhdC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBPY3RvYmVyIDEs IDIwMjAgNjoxNiBQTQ0KPiBUbzogRHVtaXRyZXNjdSwgQ3Jpc3RpYW4gPGNyaXN0aWFuLmR1bWl0 cmVzY3VAaW50ZWwuY29tPg0KPiBDYzogZGV2IDxkZXZAZHBkay5vcmc+OyBUaG9tYXMgTW9uamFs b24gPHRob21hc0Btb25qYWxvbi5uZXQ+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjcgMDAvNDJd IFBpcGVsaW5lIGFsaWdubWVudCB3aXRoIHRoZSBQNCBsYW5ndWFnZQ0KPiANCj4gT24gVGh1LCBP Y3QgMSwgMjAyMCBhdCAxMjoyMCBQTSBDcmlzdGlhbiBEdW1pdHJlc2N1DQo+IDxjcmlzdGlhbi5k dW1pdHJlc2N1QGludGVsLmNvbT4gd3JvdGU6DQo+ID4NCj4gPiBUaGlzIHBhdGNoIHNldCBpbnRy b2R1Y2VzIGEgbmV3IHBpcGVsaW5lIHR5cGUgdGhhdCBjb21iaW5lcyB0aGUgRFBESw0KPiA+IHBl cmZvcm1hbmNlIHdpdGggdGhlIGZsZXhpYmlsaXR5IG9mIHRoZSBQNC0xNiBsYW5ndWFnZVsxXS4g VGhlIG5ldyBBUEkNCj4gPiBjYW4gYmUgdXNlZCBlaXRoZXIgYnkgaXRzZWxmIHRvIGNvZGUgYSBj b21wbGV0ZSBzb2Z0d2FyZSBzd2l0Y2ggKFNXWCkNCj4gPiBvciBkYXRhIHBsYW5lIGFwcCwgb3Ig aW4gY29tYmluYXRpb24gd2l0aCB0aGUgb3Blbi1zb3VyY2UgUDQgY29tcGlsZXINCj4gPiBQNEMg WzJdLCBwb3RlbnRpYWxseSBhY3RpbmcgYXMgYSBQNEMgYmFjay1lbmQsIHRodXMgYWxsb3dpbmcg dGhlIFA0DQo+ID4gcHJvZ3JhbXMgdG8gYmUgdHJhbnNsYXRlZCB0byB0aGUgRFBESyBBUEkgYW5k IHJ1biBvbiBtdWx0aS1jb3JlIENQVXMuDQo+ID4NCj4gPiBNYWluIG5ldyBmZWF0dXJlczoNCj4g Pg0KPiA+ICogTm90aGluZyBpcyBoYXJkLXdpcmVkLCBldmVyeXRoaW5nIGlzIGR5bmFtaWNhbGx5 IGRlZmluZWQ6IFRoZSBwYWNrZXQNCj4gPiAgIGhlYWRlcnMgKGkuZS4gcHJvdG9jb2xzKSwgdGhl IHBhY2tldCBtZXRhLWRhdGEsIHRoZSBhY3Rpb25zLCB0aGUNCj4gPiAgIHRhYmxlcyBhbmQgdGhl IHBpcGVsaW5lIGl0c2VsZiBhcmUgZHluYW1pY2FsbHkgZGVmaW5lZCBpbnN0ZWFkIG9mDQo+ID4g ICBoYXZpbmcgdG8gYmUgc2VsZWN0ZWQgZnJvbSBhIHByZS1kZWZpbmVkIHNldC4NCj4gPg0KPiA+ ICogSW5zdHJ1Y3Rpb25zOiBUaGUgYWN0aW9ucyBhbmQgdGhlIGxpZmUgb2YgdGhlIHBhY2tldCB0 aHJvdWdoIHRoZQ0KPiA+ICAgcGlwZWxpbmUgYXJlIGRlZmluZWQgd2l0aCBpbnN0cnVjdGlvbnMg dGhhdCBtYW5pcHVsYXRlIHRoZSBwaXBlbGluZQ0KPiA+ICAgb2JqZWN0cyBtZW50aW9uZWQgYWJv dmUuIFRoZSBwaXBlbGluZSBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiB0aGUNCj4gPiAgIHBhY2tl dCBwcm9ncmFtLCB3aXRoIGFjdGlvbnMgYXMgc3Vicm91dGluZXMgdHJpZ2dlcmVkIGJ5IHRoZSB0 YWJsZXMuDQo+ID4NCj4gPiAqIENhbGwgZXh0ZXJuYWwgcGx1Z2luczogRXh0ZXJuIG9iamVjdHMg YW5kIGZ1bmN0aW9ucyBjYW4gYmUgZGVmaW5lZA0KPiA+ICAgdG8gY2FsbCBmdW5jdGlvbmFsaXR5 IHRoYXQgY2Fubm90IGJlIGVmZmljaWVudGx5IGltcGxlbWVudGVkIHdpdGgNCj4gPiAgIHRoZSBl eGlzdGluZyBwaXBlbGluZS1vcmllbnRlZCBpbnN0cnVjdGlvbiBzZXQsIHN1Y2ggYXM6IHNwZWNp YWwNCj4gPiAgIGVycm9yIGRldGVjdGluZy9jb3JyZWN0aW5nIGNvZGVzLCBjcnlwdG8sIG1ldGVy cywgc3RhdHMgYXJyYXlzLA0KPiA+ICAgaGV1cmlzdGljcywgZXRjLg0KPiA+DQo+ID4gKiBCZXR0 ZXIgY29udHJvbCBwbGFuZSBpbnRlcmFjdGlvbjogVHJhbnNhY3Rpb24tb3JpZW50ZWQgdGFibGUg dXBkYXRlDQo+ID4gICBtZWNoYW5pc20gdGhhdCBzdXBwb3J0cyBtdWx0aS10YWJsZSBhdG9taWMg dXBkYXRlcy4gTXVsdGlwbGUgdGFibGVzDQo+ID4gICBjYW4gYmUgdXBkYXRlZCBpbiBhIHNpbmds ZSBzdGVwIHdpdGggb25seSB0aGUgYmVmb3JlIGFuZCBhZnRlciB0YWJsZQ0KPiA+ICAgc2V0cyB2 aXNpYmxlIHRvIHRoZSBwYWNrZXRzLiBBbGlnbm1lbnQgd2l0aCBQNFJ1bnRpbWUgWzNdLg0KPiA+ DQo+ID4gKiBQZXJmb3JtYW5jZTogTXVsdGlwbGUgcGFja2V0cyBhcmUgaW4tZmxpZ2h0IHdpdGhp biB0aGUgcGlwZWxpbmUgYXQNCj4gPiAgIGFueSBtb21lbnQuIEVhY2ggcGFja2V0IGlzIG93bmVk IGJ5IGEgZGlmZmVyZW50IHRpbWUtc2hhcmluZyB0aHJlYWQNCj4gPiAgIGluIHJ1bi10by1jb21w bGV0aW9uLCB3aXRoIHRoZSB0aHJlYWQgcGF1c2luZyBiZWZvcmUgbWVtb3J5IGFjY2Vzcw0KPiA+ ICAgb3BlcmF0aW9ucyBzdWNoIGFzIHBhY2tldCBJL08gYW5kIHRhYmxlIGxvb2t1cCB0byBhbGxv dyB0aGUgbWVtb3J5DQo+ID4gICBwcmVmZXRjaCB0byBjb21wbGV0ZS4gVGhlIGluc3RydWN0aW9u cyBhcmUgdmVyaWZpZWQgYW5kIHRyYW5zbGF0ZWQNCj4gPiAgIGF0IGluaXRpYWxpemF0aW9uIHRp bWUgd2l0aCBubyBydW4tdGltZSBpbXBhY3QuIFRoZSBpbnN0cnVjdGlvbnMgYXJlDQo+ID4gICBh bHNvIG9wdGltaXplZCB0byBkZXRlY3QgYW5kICJmdXNlIiBmcmVxdWVudGx5IHVzZWQgcGF0dGVy bnMgaW50bw0KPiA+ICAgdmVjdG9yLWxpa2UgaW5zdHJ1Y3Rpb25zIHRyYW5zcGFyZW50bHkgdG8g dGhlIHVzZXIuDQo+ID4NCj4gPiBBUEkgZGVwcmVjYXRpb24gYW5kIG1hdHVyaW5nIHJvYWRtYXA6 DQo+ID4gKiBUaGUgZXhpc3RpbmcgcGlwZWxpbmUgc3RhYmxlIEFQSSAocnRlX3BpcGVsaW5lLmgp IHRvIGJlIGRlcHJlY2F0ZWQNCj4gPiAgIHByaW9yIHRvIGFuZCByZW1vdmVkIGFzIHBhcnQgb2Yg dGhlIERQREsgMjEuMTEgTFRTIHJlbGVhc2UuDQo+ID4gKiBUaGUgbmV3IFNXWCBwaXBlbGluZSBl eHBlcmltZW50YWwgQVBJIChydGVfc3d4X3BpcGVsaW5lLmgpIHRvIG1hdHVyZQ0KPiA+ICAgYW5k IGJlY29tZSBzdGFibGUgYXMgcGFydCBvZiB0aGUgc2FtZSBEUERLIDIxLjExIExUUyByZWxlYXNl Lg0KPiA+DQo+ID4gVjcgY2hhbmdlczoNCj4gPiAqIFNldCBjb3B5cmlnaHQgeWVhciB0byAyMDIw IGZvciBhbGwgbmV3IGZpbGVzLg0KPiA+ICogRml4ZWQgdHdvIERveHlnZW4gd2FybmluZ3MuDQo+ ID4NCj4gPiBWNiBjaGFuZ2VzOg0KPiA+ICogRml4ZWQgaXNzdWVzIGluIHRoZSBleGFtcGxlIGFw cCBNYWtlZmlsZS4NCj4gPiAqIFVzZWQgcnRlX2V0aF9saW5rX3NwZWVkX3RvX3N0cigpIGluIHRo ZSBleGFtcGxlIGFwcC4NCj4gPiAqIEFkZGVkIHJlbGVhc2Ugbm90ZXMgdXBkYXRlLg0KPiA+DQo+ ID4gVjUgY2hhbmdlczoNCj4gPiAqIFVwcGVyIGNhc2UgYWJiZXJ2aWF0aW9ucyBpbiBzb21lIGNv bW1pdCB0aXRsZXMuDQo+ID4gKiBBZGRlZCBuZXcgZXhhbXBsZSBhcHAgaW4gdGhlIE1BSU5UQUlO RVJTIGZpbGUuDQo+ID4gKiBBYnNvbHV0ZWx5IG5vIGNvZGUgY2hhbmdlcy4NCj4gPg0KPiA+IFY0 IGNoYW5nZXM6DQo+ID4gKiBTcGVsbCBjaGVjayBmaXhlcy4NCj4gPg0KPiA+IFYzIGNoYW5nZXM6 DQo+ID4gKiBSZW1vdmVkIHRoZSBsaWJyYXJ5IE1ha2VmaWxlIHN1cHBvcnQgdG8gYWxpZ24gd2l0 aCB0aGUgbGF0ZXN0IERQREsuDQo+ID4NCj4gPiBWMiBjaGFuZ2VzOg0KPiA+ICogVXBkYXRlZCB0 aGUgdGl0bGUgYW5kIGNvbW1pdCBtZXNzYWdlcyB0byByZWZsZWN0IHRoZSBpbnRyb2R1Y3Rpb24g b2YNCj4gPiAgIHRoZSBuZXcgU1dYIHBpcGVsaW5lIHR5cGUuDQo+ID4gKiBBZGRlZCB0aGUgQVBJ IGRlcHJlY2F0aW9uIGFuZCBtYXR1cmluZyByb2FkbWFwIHRvIHRoZSBjb3ZlciBsZXR0ZXIuDQo+ ID4gKiBBZGRlZCBzdXBwb3J0IGZvciBidWlsZGluZyB0aGUgU1dYIHBpcGVsaW5lIGJhc2VkIG9u IHNwZWNpZmljYXRpb24NCj4gPiAgIGZpbGUgd2l0aCBzeW50YXggYWxpZ25lZCB0byB0aGUgUDQg bGFuZ3VhZ2UuIFRoZSBzcGVjIGZpbGUgbWF5IGJlDQo+ID4gICBnZW5lcmF0ZWQgYnkgdGhlIFA0 QyBjb21waWxlciBpbiB0aGUgZnV0dXJlIChzZWUgcGF0Y2ggMzIpLiBSZXdvcmtlZA0KPiA+ICAg dGhlIGV4YW1wbGVzIGFjY29yZGluZ2x5IChzZWUgcGF0Y2hlcyAzOSwgNDAgYW5kIDQxKS4NCj4g PiAqIEFkZGVkIHN1cHBvcnQgZm9yIHRoZSBTV1ggc2luayBwb3J0ICh1c2VkIGZvciBwYWNrZXQg ZHJvcCBvciBsb2cpDQo+ID4gICB3aGVuIFBDQVAgbGlicmFyeSBpcyBkaXNhYmxlZCBmcm9tIHRo ZSBidWlsZC4NCj4gPiAqIEFkZGVkIGNoZWNrcyB0byB0aGUgYXBwbGljYXRpb24gQ0xJIGNvbW1h bmRzIHRvIHByZXZlbnQgZXhlY3V0aW9uDQo+ID4gICB3aGVuIGRlcGVuZGVuY2llcyBvZiB0aGUg Y3VycmVudCBjb21tYW5kIGhhdmUgcHJldmlvdXNseSBmYWlsZWQgKHNlZQ0KPiA+ICAgcGF0Y2gg MzgpLg0KPiA+ICogRml4ZWQgYnVpbGQgd2FybmluZyBmb3IgMzItYml0IHRhcmdldHMgZHVlIHRv IHRoZSBwcmludGluZyBvZiA2NC1iaXQNCj4gPiAgIHN0YXRpc3RpY3MgY291bnRlcnMgKHNlZSBw YXRjaCAzOCkuDQo+ID4NCj4gPiBbMV0gUDQtMTYgc3BlY2lmaWNhdGlvbjogaHR0cHM6Ly9wNC5v cmcvcDQtc3BlYy9kb2NzL1A0LTE2LXYxLjIuMS5wZGYNCj4gPiBbMl0gUDQtMTYgY29tcGlsZXI6 IGh0dHBzOi8vZ2l0aHViLmNvbS9wNGxhbmcvcDRjDQo+ID4gWzNdIFA0UnVudGltZSBzcGVjaWZp Y2F0aW9uOg0KPiA+ICAgICBodHRwczovL3A0Lm9yZy9wNHJ1bnRpbWUvc3BlYy92MS4yLjAvUDRS dW50aW1lLVNwZWMucGRmDQo+ID4NCj4gPiBDcmlzdGlhbiBEdW1pdHJlc2N1ICg0MSk6DQo+ID4g ICBwaXBlbGluZTogYWRkIG5ldyBTV1ggcGlwZWxpbmUgdHlwZQ0KPiA+ICAgcGlwZWxpbmU6IGFk ZCBTV1ggcGlwZWxpbmUgaW5wdXQgcG9ydA0KPiA+ICAgcGlwZWxpbmU6IGFkZCBTV1ggcGlwZWxp bmUgb3V0cHV0IHBvcnQNCj4gPiAgIHBpcGVsaW5lOiBhZGQgU1dYIGhlYWRlcnMgYW5kIG1ldGEt ZGF0YQ0KPiA+ICAgcGlwZWxpbmU6IGFkZCBTV1ggZXh0ZXJuIG9iamVjdHMgYW5kIGZ1bmNzDQo+ ID4gICBwaXBlbGluZTogYWRkIFNXWCBwaXBlbGluZSBhY3Rpb24NCj4gPiAgIHBpcGVsaW5lOiBh ZGQgU1dYIHBpcGVsaW5lIHRhYmxlcw0KPiA+ICAgcGlwZWxpbmU6IGFkZCBTV1ggcGlwZWxpbmUg aW5zdHJ1Y3Rpb25zDQo+ID4gICBwaXBlbGluZTogYWRkIFNXWCBSeCBhbmQgZXh0cmFjdCBpbnN0 cnVjdGlvbnMNCj4gPiAgIHBpcGVsaW5lOiBhZGQgU1dYIFR4IGFuZCBlbWl0IGluc3RydWN0aW9u cw0KPiA+ICAgcGlwZWxpbmU6IGFkZCBoZWFkZXIgdmFsaWRhdGUgYW5kIGludmFsaWRhdGUgU1dY IGluc3RydWN0aW9ucw0KPiA+ICAgcGlwZWxpbmU6IGFkZCBTV1ggbW92ZSBpbnN0cnVjdGlvbg0K PiA+ICAgcGlwZWxpbmU6IGFkZCBTV1ggRE1BIGluc3RydWN0aW9uDQo+ID4gICBwaXBlbGluZTog aW50cm9kdWNlIFNXWCBhZGQgaW5zdHJ1Y3Rpb24NCj4gPiAgIHBpcGVsaW5lOiBpbnRyb2R1Y2Ug U1dYIHN1YnRyYWN0IGluc3RydWN0aW9uDQo+ID4gICBwaXBlbGluZTogaW50cm9kdWNlIFNXWCBj a2FkZCBpbnN0cnVjdGlvbg0KPiA+ICAgcGlwZWxpbmU6IGludHJvZHVjZSBTV1ggY2tzdWIgaW5z dHJ1Y3Rpb24NCj4gPiAgIHBpcGVsaW5lOiBpbnRyb2R1Y2UgU1dYIGFuZCBpbnN0cnVjdGlvbg0K PiA+ICAgcGlwZWxpbmU6IGludHJvZHVjZSBTV1ggb3IgaW5zdHJ1Y3Rpb24NCj4gPiAgIHBpcGVs aW5lOiBpbnRyb2R1Y2UgU1dYIFhPUiBpbnN0cnVjdGlvbg0KPiA+ICAgcGlwZWxpbmU6IGludHJv ZHVjZSBTV1ggU0hMIGluc3RydWN0aW9uDQo+ID4gICBwaXBlbGluZTogaW50cm9kdWNlIFNXWCBT SFIgaW5zdHJ1Y3Rpb24NCj4gPiAgIHBpcGVsaW5lOiBpbnRyb2R1Y2UgU1dYIHRhYmxlIGluc3Ry dWN0aW9uDQo+ID4gICBwaXBlbGluZTogaW50cm9kdWNlIFNXWCBleHRlcm4gaW5zdHJ1Y3Rpb24N Cj4gPiAgIHBpcGVsaW5lOiBpbnRyb2R1Y2UgU1dYIGp1bXAgYW5kIHJldHVybiBpbnN0cnVjdGlv bnMNCj4gPiAgIHBpcGVsaW5lOiBhZGQgU1dYIGluc3RydWN0aW9uIGRlc2NyaXB0aW9uDQo+ID4g ICBwaXBlbGluZTogYWRkIFNXWCBpbnN0cnVjdGlvbiB2ZXJpZmllcg0KPiA+ICAgcGlwZWxpbmU6 IGFkZCBTV1ggaW5zdHJ1Y3Rpb24gb3B0aW1pemVyDQo+ID4gICBwaXBlbGluZTogYWRkIFNXWCBw aXBlbGluZSBxdWVyeSBBUEkNCj4gPiAgIHBpcGVsaW5lOiBhZGQgU1dYIHBpcGVsaW5lIGZsdXNo DQo+ID4gICBwaXBlbGluZTogYWRkIFNXWCB0YWJsZSB1cGRhdGUgaGlnaCBsZXZlbCBBUEkNCj4g PiAgIHBpcGVsaW5lOiBhZGQgU1dYIHBpcGVsaW5lIHNwZWNpZmljYXRpb24gZmlsZQ0KPiA+ICAg cG9ydDogYWRkIGV0aGVybmV0IGRldmljZSBTV1ggcG9ydA0KPiA+ICAgcG9ydDogYWRkIHNvdXJj ZSBhbmQgc2luayBTV1ggcG9ydHMNCj4gPiAgIHRhYmxlOiBhZGQgZXhhY3QgbWF0Y2ggU1dYIHRh YmxlDQo+ID4gICBleGFtcGxlcy9waXBlbGluZTogYWRkIG5ldyBleGFtcGxlIGFwcGxpY2F0aW9u DQo+ID4gICBleGFtcGxlcy9waXBlbGluZTogYWRkIG1lc3NhZ2UgcGFzc2luZyBtZWNoYW5pc20N Cj4gPiAgIGV4YW1wbGVzL3BpcGVsaW5lOiBhZGQgY29uZmlndXJhdGlvbiBjb21tYW5kcw0KPiA+ ICAgZXhhbXBsZXMvcGlwZWxpbmU6IGFkZCBsMmZ3ZCBleGFtcGxlDQo+ID4gICBleGFtcGxlcy9w aXBlbGluZTogYWRkIGwyZndkIHdpdGggTUFDIHN3YXAgZXhhbXBsZQ0KPiA+ICAgZXhhbXBsZXMv cGlwZWxpbmU6IGFkZCBWWExBTiBlbmNhcHN1bGF0aW9uIGV4YW1wbGUNCj4gPiAgIGRvYzogYWRk IG5ldyBTV1ggcGlwZWxpbmUgdHlwZSB0byByZWxlYXNlIG5vdGVzDQo+ID4NCj4gDQo+IC0gRml4 ZWQgcGlwZWxpbmUgLm1hcCBmaWxlDQo+IC0gQW5ub3RhdGVkL3NvcnRlZCB0aGUgZXhwZXJpbWVu dGFsIHN5bWJvbHMgaW4gLm1hcCBmaWxlcyB0b3VjaGVkIGJ5DQo+IHRoaXMgc2VyaWVzLA0KPiAt IFVwZGF0ZWQgZG94eWdlbiBpbmRleCB0byBpbmNsdWRlIHRoZSBuZXcgaGVhZGVycywNCj4gLSBT d2l0Y2hlZCB0aGUgdnhsYW4gcHl0aG9uIHNjcmlwdCAoY29taW5nIHdpdGggdGhlIHBpcGVsaW5l IGV4YW1wbGUpDQo+IHRvIHB5dGhvbjMgKyBmaXhlZCBzb21lIHB5bGludCB0cml2aWFsIHdhcm5p bmdzLA0KPiANCj4gU2VyaWVzIGFwcGxpZWQuDQo+IA0KPiANCj4gLS0NCj4gRGF2aWQgTWFyY2hh bmQNCg0KVGhhbmtzIGZvciB5b3VyIHN1cHBvcnQsIERhdmlkIQ0K