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 7C9EEA0523; Thu, 2 Jul 2020 09:17:02 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E9DE51D6B5; Thu, 2 Jul 2020 09:17:01 +0200 (CEST) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60040.outbound.protection.outlook.com [40.107.6.40]) by dpdk.org (Postfix) with ESMTP id 8C04C1D6B0 for ; Thu, 2 Jul 2020 09:17:00 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GmzzhJiH9NTXXvBL39JOD2q4Q9pp7BkkJ2bjQiONpnCbNwrJOTTzKF6+C5YKwLmr1F1nQro3eec1UYNO1QwIvykPGE8P8meNK4mIESPErj8KXrIy6xeUpzL6AQWQOrN9banaS6J7Ks4IbEeVC1dEFnVGD0seiDzYEQyxCPx8eVyfD2jfA473zGe4umZvA6dxVoc7CBSwoL+n3yeVqShMrWgwzgRuMvb9Lp0kgDOwLWvqCCWGLvXYYyO3h8u4BQncg3RYhIHM6t5LYyAmEFuHruKgrZPeuA96vcaIoj5m2mCRCPMZPzr4X29wn8YbURmswYUfqHSlrYGNeTdmCLMJ7g== 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=HSnwQ7sfttOcD6OZnVFj78TjpG+oxM+I6CpboyQZqn8=; b=DHBaJ9GhLSKO7VHaNdp7YybXNJfTIxx/44YyXvhb2tYfn6uWUbWMiS7USNuOTmDzdrrygfma7M5PrCpOWdxAYen5hmCgef0IC+mr7AXhzTYsZ+J52K6vM/eNQJP9unJ3wvFvtCjJgKhUuNYZ/yMjXO6IzsmQcdP7VIsgGvQSPaeq2i+HS9CmeMx9XD6IUC5Re80IIP5FpxQvgKWsBrxZjTlGH6XM6L4tNS4doeon01Pn4dVxfRuyeIOy4aSM+gs97MXF7LVteZbYfILSJ6iIjZxOepUgyRjdCUk4pDoyK5WAnQXapP7k0mTbJAASMDTAh535YzeZ4AP9Qww+JYh7Dg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HSnwQ7sfttOcD6OZnVFj78TjpG+oxM+I6CpboyQZqn8=; b=XMF4A9UPPHim83M5+MuBbxqOn2u5j+yws+EF79iLzP2q48AoAnh/HzFwCOsjzgree+gP9UcQ22NgqXL0qpXRXZbUXQDM/r/4LpbG+f8CEmX9oiUxFiZ1+PgzkWHh8CQnpMo1exmRnT6gLWwqTU7Nr4BL3bSXhvf/b+izPZ4CnBY= Received: from AM6PR05MB5176.eurprd05.prod.outlook.com (2603:10a6:20b:63::30) by AM6PR05MB6310.eurprd05.prod.outlook.com (2603:10a6:20b:b5::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3131.21; Thu, 2 Jul 2020 07:16:59 +0000 Received: from AM6PR05MB5176.eurprd05.prod.outlook.com ([fe80::9024:accb:4d6b:805f]) by AM6PR05MB5176.eurprd05.prod.outlook.com ([fe80::9024:accb:4d6b:805f%3]) with mapi id 15.20.3131.030; Thu, 2 Jul 2020 07:16:59 +0000 From: Ori Kam To: Stephen Hemminger , "Jiawei(Jonny) Wang" CC: Jerin Jacob , Thomas Monjalon , Slava Ovsiienko , Matan Azrad , dpdk-dev , Raslan Darawsheh , "ian.stokes@intel.com" , "fbl@redhat.com" , Ferruh Yigit , Andrew Rybchenko Thread-Topic: [dpdk-dev] [PATCH 1/8] ethdev: introduce sample action for rte flow Thread-Index: AQHWSxDCyLojAHjlU0ugMUl3sJ+yrajpnV4AgAAaUICAAP0sgIAAAvaAgAAG24CAA0fYAIAABf8AgAAlmoCABURNAIAAcUBQ Date: Thu, 2 Jul 2020 07:16:59 +0000 Message-ID: References: <1593102379-400132-1-git-send-email-jiaweiw@mellanox.com> <17660414.AQMWyGVKyv@thomas> <7719744.nB5e5IOROX@thomas> <20200701171812.075ead92@hermes.lan> In-Reply-To: <20200701171812.075ead92@hermes.lan> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: networkplumber.org; dkim=none (message not signed) header.d=none;networkplumber.org; dmarc=none action=none header.from=mellanox.com; x-originating-ip: [147.236.152.129] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 347f8d80-c431-4fb8-0afb-08d81e57e90b x-ms-traffictypediagnostic: AM6PR05MB6310: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtFwd,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0452022BE1 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: hO2Qcb0guh8o7RiDacDe1cjBLaqDy4PTgFAgGU/GFcBgIAilqCxXMg9GKvDMXqXGmZiBQVGepOg8SdlhxjGHLbwTmRDnwHe8BlTNnVGvvc9zO9nm4DWkDE/RhqoItX4kHHUgYmKQaybo8//lwRvUEtkb9LiXIzB+ZaYSwl953B1HWbua8eqnVAoNX6K/o0wLbe0M1QZWZZtGbHoARxMWFzDhwtetASjVAoIyZ3F2+ngvYXwHJ/YiYlKQcDx1Maw+6mdfQZQjeSwk806EAoYXvtIhQF3O4kwuTQa9MqezwfjurAo2lmODmLOjAveBJr0lZ1T0i65C8VT287hwfFWlIQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM6PR05MB5176.eurprd05.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(136003)(39850400004)(366004)(396003)(376002)(346002)(6636002)(478600001)(52536014)(5660300002)(66556008)(7696005)(186003)(66476007)(83380400001)(33656002)(66946007)(76116006)(316002)(8676002)(8936002)(55016002)(86362001)(4326008)(6506007)(9686003)(53546011)(71200400001)(2906002)(110136005)(54906003)(66446008)(64756008)(26005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: PjyMYfCMbe+lqWimEPD+2GDIh4+IfWfjutFvDyQts+4aeiKl6EgkXNy9z5YryZcmIr6bFBNQuLthozh5nY4SFfY46JfT8mYnwCyWkRYv0wexu3EHPOPBq/CNEBP29khoEKRgLYr37yFZZ5qjVcjWbWkbIBNJzo5jA2g58qjwjcBXXu/SZMv455kvsNYFFsNd76G6I41tbFwUYijXVSIWPMkCT7NNYqVFimvqfDh6afnMl4of1amF7irehb2hEaPjfJhk/UcdFPuWgmzrtxU49/fB4rnlTRx4OLXy8VibXfKaNVgc861nykMQSS3T3y+2JETSEI3PaDoMJpbonJ79RiG9/jBjbtyCxn4YJ9MiJ1Pr4EgQQjlID+lypN5kidb2M+vKMWNRnAbKb4zoFOkEQBsziMmzJT9dBhyP9bSgDodIPKYH49f/AX4DUSAAfnPOiDlE9Ly9s1ZED2efh0Zcce1+OTyZxpTCzIPmDJjsSiaU3E50RUvwSNRWqgV6GZ2r Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM6PR05MB5176.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 347f8d80-c431-4fb8-0afb-08d81e57e90b X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Jul 2020 07:16:59.1869 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: mp5flGqNZlIm4IDaexJ2Ub74CQ2f3o9XAgIhR8hI70ngBYKaw1UGK7dr5F7rOd1IXdIMX1IleHEEV1Qp5JT6Kg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR05MB6310 Subject: Re: [dpdk-dev] [PATCH 1/8] ethdev: introduce sample action for rte flow 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" SGkgU3RlcGhlbiwNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBTdGVw aGVuIEhlbW1pbmdlciA8c3RlcGhlbkBuZXR3b3JrcGx1bWJlci5vcmc+DQo+IFNlbnQ6IFRodXJz ZGF5LCBKdWx5IDIsIDIwMjAgMzoxOCBBTQ0KPiBUbzogSmlhd2VpKEpvbm55KSBXYW5nIDxqaWF3 ZWl3QG1lbGxhbm94LmNvbT4NCj4gQ2M6IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5j b20+OyBUaG9tYXMgTW9uamFsb24NCj4gPHRob21hc0Btb25qYWxvbi5uZXQ+OyBPcmkgS2FtIDxv cmlrYUBtZWxsYW5veC5jb20+OyBTbGF2YSBPdnNpaWVua28NCj4gPHZpYWNoZXNsYXZvQG1lbGxh bm94LmNvbT47IE1hdGFuIEF6cmFkIDxtYXRhbkBtZWxsYW5veC5jb20+OyBkcGRrLQ0KPiBkZXYg PGRldkBkcGRrLm9yZz47IFJhc2xhbiBEYXJhd3NoZWggPHJhc2xhbmRAbWVsbGFub3guY29tPjsN Cj4gaWFuLnN0b2tlc0BpbnRlbC5jb207IGZibEByZWRoYXQuY29tOyBGZXJydWggWWlnaXQgPGZl cnJ1aC55aWdpdEBpbnRlbC5jb20+Ow0KPiBBbmRyZXcgUnliY2hlbmtvIDxhcnliY2hlbmtvQHNv bGFyZmxhcmUuY29tPg0KPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggMS84XSBldGhk ZXY6IGludHJvZHVjZSBzYW1wbGUgYWN0aW9uIGZvciBydGUNCj4gZmxvdw0KPiANCj4gT24gU3Vu LCAyOCBKdW4gMjAyMCAxNTo1MjoyNyArMDAwMA0KPiAiSmlhd2VpKEpvbm55KSBXYW5nIiA8amlh d2Vpd0BtZWxsYW5veC5jb20+IHdyb3RlOg0KPiANCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+ID4gPiBGcm9tOiBKZXJpbiBKYWNvYiA8amVyaW5qYWNvYmtAZ21haWwuY29tPg0K PiA+ID4gU2VudDogU3VuZGF5LCBKdW5lIDI4LCAyMDIwIDk6MzggUE0NCj4gPiA+IFRvOiBKaWF3 ZWkoSm9ubnkpIFdhbmcgPGppYXdlaXdAbWVsbGFub3guY29tPg0KPiA+ID4gQ2M6IFRob21hcyBN b25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5ldD47IE9yaSBLYW0NCj4gPiA+IDxvcmlrYUBtZWxs YW5veC5jb20+OyBTbGF2YSBPdnNpaWVua28gPHZpYWNoZXNsYXZvQG1lbGxhbm94LmNvbT47DQo+ ID4gPiBNYXRhbiBBenJhZCA8bWF0YW5AbWVsbGFub3guY29tPjsgZHBkay1kZXYgPGRldkBkcGRr Lm9yZz47IFJhc2xhbg0KPiA+ID4gRGFyYXdzaGVoIDxyYXNsYW5kQG1lbGxhbm94LmNvbT47IGlh bi5zdG9rZXNAaW50ZWwuY29tOw0KPiA+ID4gZmJsQHJlZGhhdC5jb207IEZlcnJ1aCBZaWdpdCA8 ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IEFuZHJldyBSeWJjaGVua28NCj4gPiA+IDxhcnliY2hl bmtvQHNvbGFyZmxhcmUuY29tPg0KPiA+ID4gU3ViamVjdDogUmU6IFtkcGRrLWRldl0gW1BBVENI IDEvOF0gZXRoZGV2OiBpbnRyb2R1Y2Ugc2FtcGxlIGFjdGlvbiBmb3IgcnRlDQo+ID4gPiBmbG93 DQo+ID4gPg0KPiA+ID4gT24gU3VuLCBKdW4gMjgsIDIwMjAgYXQgNjo0NiBQTSBKaWF3ZWkoSm9u bnkpIFdhbmcNCj4gPiA+IDxqaWF3ZWl3QG1lbGxhbm94LmNvbT4gd3JvdGU6DQo+ID4gPiA+DQo+ ID4gPiA+DQo+ID4gPiA+IE9uIEZyaWRheSwgSnVuZSAyNiwgMjAyMCA3OjEwIFBNIEplcmluIEph Y29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4gPiBXcm90ZToNCj4gPiA+ID4gPg0KPiA+ ID4gPiA+IE9uIEZyaSwgSnVuIDI2LCAyMDIwIGF0IDQ6MTYgUE0gVGhvbWFzIE1vbmphbG9uDQo+ ID4gPiA+ID4gPHRob21hc0Btb25qYWxvbi5uZXQ+DQo+ID4gPiA+ID4gd3JvdGU6DQo+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gMjYvMDYvMjAyMCAxMjozNSwgSmVyaW4gSmFjb2I6DQo+ID4gPiA+ ID4gPiA+IE9uIEZyaSwgSnVuIDI2LCAyMDIwIGF0IDEyOjU5IEFNIFRob21hcyBNb25qYWxvbg0K PiA+ID4gPiA+IDx0aG9tYXNAbW9uamFsb24ubmV0PiB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiA+IDI1LzA2LzIwMjAgMTk6NTUsIEplcmluIEphY29iOg0KPiA+ID4gPiA+ ID4gPiA+ID4gT24gVGh1LCBKdW4gMjUsIDIwMjAgYXQgMTA6MjAgUE0gSmlhd2VpIFdhbmcNCj4g PiA+ID4gPiA8amlhd2Vpd0BtZWxsYW5veC5jb20+IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gPiA+ID4gPiBXaGVuIHVzaW5nIGZ1bGwgb2ZmbG9hZCwgYWxsIHRyYWZm aWMgd2lsbCBiZSBoYW5kbGVkIGJ5DQo+ID4gPiA+ID4gPiA+ID4gPiA+IHRoZSBIVywgYW5kIGRp cmVjdGVkIHRvIHRoZSByZXF1ZXN0ZWQgdmYgb3Igd2lyZSwgdGhlDQo+ID4gPiA+ID4gPiA+ID4g PiA+IGNvbnRyb2wgYXBwbGljYXRpb24gbG9zZXMgdmlzaWJpbGl0eSBvbiB0aGUgdHJhZmZpYy4N Cj4gPiA+ID4gPiA+ID4gPiA+ID4gU28gdGhlcmUncyBhIG5lZWQgZm9yIGFuIGFjdGlvbiB0aGF0 IHdpbGwgZW5hYmxlIHRoZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBjb250cm9sIGFwcGxpY2F0aW9u IHNvbWUgdmlzaWJpbGl0eS4NCj4gPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+ ID4gVGhlIHNvbHV0aW9uIGlzIGludHJvZHVjZWQgYSBuZXcgYWN0aW9uIHRoYXQgd2lsbCBzYW1w bGUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gdGhlIGluY29taW5nIHRyYWZmaWMgYW5kIHNlbmQgYSBk dXBsaWNhdGVkIHRyYWZmaWMgaW4gc29tZQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBwcmVkZWZpbmVk IHJhdGlvIHRvIHRoZSBhcHBsaWNhdGlvbiwgd2hpbGUgdGhlIG9yaWdpbmFsDQo+ID4gPiA+ID4g PiA+ID4gPiA+IHBhY2tldCB3aWxsIGNvbnRpbnVlIHRvIHRoZSB0YXJnZXQgZGVzdGluYXRpb24u DQo+ID4gPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gPiA+IFRoZSBwYWNrZXRzIHNh bXBsZWQgZXF1YWxzIGlzICcxL3JhdGlvJywgaWYgdGhlIHJhdGlvDQo+ID4gPiA+ID4gPiA+ID4g PiA+IHZhbHVlIGJlIHNldCB0byAxICwgbWVhbnMgdGhhdCB0aGUgcGFja2V0cyB3b3VsZCBiZQ0K PiA+ID4gPiA+ID4gPiA+ID4gPiBjb21wbGV0ZWx5IG1pcnJvcmVkLiBUaGUgc2FtcGxlIHBhY2tl dCBjYW4gYmUgYXNzaWduZWQNCj4gPiA+ID4gPiA+ID4gPiA+ID4gd2l0aCBkaWZmZXJlbnQgc2V0 IG9mDQo+ID4gPiA+ID4gYWN0aW9ucyBmcm9tIHRoZSBvcmlnaW5hbCBwYWNrZXQuDQo+ID4gPiA+ ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gPiA+IEluIG9yZGVyIHRvIHN1cHBvcnQgdGhl IHNhbXBsZSBwYWNrZXQgaW4gcnRlX2Zsb3csIG5ldw0KPiA+ID4gPiA+ID4gPiA+ID4gPiBydGVf ZmxvdyBhY3Rpb24gZGVmaW5pdGlvbiBSVEVfRkxPV19BQ1RJT05fVFlQRV9TQU1QTEUNCj4gPiA+ IGFuZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiBzdHJ1Y3R1cmUgcnRlX2Zsb3dfYWN0aW9uX3NhbXBs ZQ0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+IElzbid0IG1pcnJvcmluZyB0 aGUgcGFja2V0PyBIb3cgYWJvdXQsDQo+ID4gPiA+ID4gPiA+ID4gPiBSVEVfRkxPV19BQ1RJT05f VFlQRV9NSVJST1IgSSBhbSBub3QgYWJsZSB0byB1bmRlcnN0YW5kLA0KPiA+ID4gV2h5DQo+ID4g PiA+ID4gaXQgaXMgY2FsbGVkIHNhbXBsZS4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g PiA+IFNhbXBsaW5nIGlzIGEgcGFydGlhbCBtaXJyb3JpbmcuDQo+ID4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPiA+IEkgdGhpbmssIEJ5IGRlZmluaXRpb24sIF9zYW1wbGluZ18gaXMgdGhlIF9zZWxl Y3Rpb25fIG9mIGl0ZW1zDQo+ID4gPiA+ID4gPiA+IGZyb20gYSBzcGVjaWZpYyBncm91cC4NCj4g PiA+ID4gPiA+ID4gSSB0aGluaywgX3NhbXBsaW5nXyBpcyBub3QgZGljdGF0aW5nLCB3aGF0IGlz IHRoZSByZWFsIGFjdGlvbg0KPiA+ID4gPiA+ID4gPiBmb3IgdGhlICJzZWxlY3RlZCIgIGl0ZW1z Lg0KPiA+ID4gPiA+ID4gPiBPbmUgY2FuIGdldCBjb25mdXNlZCB3aXRoIHRoZSBzZWxlY3RlZCBv bmVzIGNhbiBiZSBmb3IgZm9yd2FyZCwNCj4gPiA+ID4gPiA+ID4gZHJvcCBhbnkgb3RoZXIgYWN0 aW9uLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IEkgc2VlLiBHb29kIGRlc2lnbiBxdWVzdGlv biAoSSB3aWxsIGxldCBvdGhlcnMgcmVwbHkpLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4g U28gSU1PLCBleHBsaWNpdCBtaXJyb3Iga2V5d29yZCB1c2FnZSBtYWtlcyBpdCBpcyBjbGVhci4N Cj4gPiA+ID4NCj4gPiA+ID4gU2FtcGxlZCBwYWNrZXQgaXMgZHVwbGljYXRlZCBmcm9tIGluY29t aW5nIHRyYWZmaWMgYXQgc3BlY2lmaWMgcmF0aW8NCj4gPiA+ID4gYW5kIHdpbGwgZ28gdG8gZGlm ZmVyZW50IHNhbXBsZSBhY3Rpb25zOw0KPiA+ID4gPiByYXRpbz0xIGlzIDEwMCUgZHVwbGljYXRp b24gb3IgbWlycm9yaW5nLg0KPiA+ID4gPiBBbGwgcGFja2V0cyB3aWxsIGNvbnRpbnVlIHRvIGdv IHRvIGRlZmF1bHQgZmxvdyBhY3Rpb25zLg0KPiA+ID4NCj4gPiA+IEZ1bmN0aW9uYWxpdHkgaXMg Y2xlYXIgZnJvbSB0aGUgZ2l0IGNvbW1pdCBsb2coTm90IGZyb20gYWN0aW9uIG5hbWUpLg0KPiA+ ID4gVGhlIG9ubHkgcXVlc3Rpb24gaXMgd2hhdCB3b3VsZCBiZSB0aGUgYXBwcm9wcmlhdGUgbmFt ZSBmb3IgdGhpcyBhY3Rpb24uDQo+ID4gPiBSVEVfRkxPV19BQ1RJT05fVFlQRV9TQU1QTEUgdnMg UlRFX0ZMT1dfQUNUSU9OX1RZUEVfTUlSUk9SDQo+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gPiBTb21lIG1vcmUgcmVsYXRlZCBxdWVzdGlvbnM6DQo+ID4gPiA+ID4g PiA+IDEpIFdoYXQgaXMgdGhlIHJlYWwgdXNlIGNhc2UgZm9yIHJhdGlvPyBJIGFtIG5vdCBhZ2Fp bnN0IGFkZGluZw0KPiA+ID4gPiA+ID4gPiBhIHJhdGlvIGF0dHJpYnV0ZSBpZiB0aGUgTUxYIGhh cmR3YXJlIHN1cHBvcnRzIGl0LiBJdCB3aWxsIGJlDQo+ID4gPiA+ID4gPiA+IGdvb2QgdG8ga25v dyB0aGUgdXNlIGNhc2UgZnJvbSB0aGUgYXBwbGljYXRpb24gcGVyc3BlY3RpdmU/IEFuZA0KPiA+ ID4gPiA+ID4gPiB3aGF0IGJhc2ljcyBhcHBsaWNhdGlvbiBzZXQgcmF0aW8gIT0gMT8NCj4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiBJZiBJIHVuZGVyc3RhbmQgd2VsbCwgc29tZSBhcHBsaWNhdGlv bnMgd2FudCB0byBjaGVjaywgYnkgcGlja2luZw0KPiA+ID4gPiA+ID4gcmFuZG9tIHBhY2tldHMs IHRoYXQgdGhlIHByb2Nlc3NpbmcgaXMgbm90IGZhaWxpbmcuDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiBOb3QgY2xlYXIgdG8gbWUuIEkgd2lsbCB3YWl0IGZvciBhbm90aGVyIGV4cGxhbmF0aW9uIGlm IGFueS4NCj4gPiA+ID4gPiBJbiB3aGF0IGJhc2ljcyBhcHBsaWNhdGlvbiBzZXQgLjEgdnMgLjg/ DQo+ID4gPiA+DQo+ID4gPiA+IFRoZSByZWFsIGNhc2UgaXMgbGlrZSBtb25pdG9yIHRoZSB0cmFm ZmljIHdpdGggZnVsbC1vZmZsb2FkLg0KPiA+ID4gPiBXaGlsZSBwYWNrZXQgaGl0IHRoZSBzYW1w bGUgZmxvdywgdGhlIG1hdGNoaW5nIHBhY2tldHMgd2lsbCBiZSBzYW1wbGVkDQo+ID4gPiA+IGFu ZCBzZW50IHRvIHNwZWNpZmljIFF1ZXVlLCBhbGlnbiB3aXRoIE9WUyBzZmxvdyBwcm9iYWJpbGl0 eSwgdXNlcg0KPiA+ID4gYXBwbGljYXRpb24gY2FuIHNldCBpdCBkaWZmZXJlbnQgdmFsdWUuDQo+ ID4gPg0KPiA+ID4gSSB1bmRlcnN0YW5kIHRoZSB1c2UgY2FzZSBmb3IgbWlycm9yIGFuZCBzdXBw b3J0ZWQgaW4gYSBsb3Qgb2YgSFcuDQo+ID4gPiBXaGF0IEkgd291bGQgbGlrZSB0byB1bmRlcnN0 YW5kIGlzIHRoZSB1c2UgY2FzZSBmb3IgInJhdGlvIj8NCj4gPiA+IElzIHRoZSAicmF0aW8iIHBh cnQgb2YgT3BlbkZsb3cgc3BlYz8gT3IgSXMgaXQgYW4gTUxYIGhhcmR3YXJlIGZlYXR1cmU/DQo+ ID4gPg0KPiA+IFRoZSBzYW1lIHVzYWdlIG9mIHRoZSAncHJvYmFiaWxpdHknIHZhcmlhYmxlIG9m IG92cyBzYW1wbGUgYWN0aW9uOw0KPiA+IE1MWCBIVyBpbXBsZW1lbnRlZCBpdC4NCj4gPiA+DQo+ ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiAyKSBJ ZiBpdCBpcyBmb3IgInJhdGUtbGltaXRpbmciIG9yICJwb2xpY2luZyIsIHdoeSBub3QgdXNlDQo+ ID4gPiA+ID4gPiA+IHJ0ZV9tdHIgb2JqZWN0IChydGVfbXRyLmgpIHZpYSBydGVfZmxvdyBhY3Rp b24uDQo+ID4gPiA+DQo+ID4gPiA+IFRoZSBzYW1wbGUgcmF0aW8gaXNu4oCZdCB0aGUgc2FtZSBh cyDigJxtZXRlcuKAmSwgdGhlIHJhdGlvIG9mIHNhbXBsaW5nIHdpbGwgYmUNCj4gPiA+IGNhbGN1 bGF0ZWQgd2l0aCBpbmNvbWluZyBwYWNrZXRzIG1hc2sgKGV2ZXJ5IHNvbWUgcGFja2V0cyBzYW1w bGVkIDEpLg0KPiA+ID4gVGhlbiB0aGUgcGFja2V0cyB3aWxsIGJlIGR1cGxpY2F0ZWQgYW5kIGdv IHRvIGRvIHRoZSBvdGhlciBzYW1wbGUgYWN0aW9ucy4NCj4gPiA+DQo+ID4gPiBXaGF0IEkgbWVh bnQgaGVyZSBpcyAsIElmIHRoZSByYXRpbyBpcyB1c2VkIGZvciByYXRlLWxpbWl0aW5nIHRoZW4g aGF2aW5nIGENCj4gPiA+IGNhc2NhZGUgcnVsZSBsaWtlIFJURV9GTE9XX0FDVElPTl9UWVBFX01J UlJPUiwNCj4gPiA+IFJURV9GTE9XX0FDVElPTl9UWVBFX01UUiB3aWxsIGRvIHRoZSBqb2IuDQo+ ID4gPg0KPiA+IFRoZSByYXRpbyBtZWFucyB0aGUgcHJvYmFiaWxpdHkgd2l0aCBwYWNrZXQgcmVw bGljYXRpb24sIHdlIGRvbid0IG5lZWQgYWRkDQo+IE1FVEVSIGFjdGlvbiBoZXJlLg0KPiA+ID4g Pg0KPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiAzKSBPbmUgb2YgdGhlIGlzc3VlIGZvciBkcml2ZXIg ZGV2ZWxvcGVycyBhbmQgYXBwbGljYXRpb24NCj4gPiA+ID4gPiA+ID4gd3JpdGVycyBhcmUgb3Zl cmxhcHBpbmcgQVBJcy4gVGhpcyB3b3VsZCBvdmVybGFwIHdpdGgNCj4gPiA+ID4gPiA+ID4gcnRl X2V0aF9taXJyb3JfcnVsZV9zZXQoKSBBUEkuDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ IENhbiB3ZSBkZXByZWNhdGUgcnRlX2V0aF9taXJyb3JfcnVsZV9zZXQoKSBBUEk/IEl0IHdpbGwg YmUgYQ0KPiA+ID4gPiA+ID4gPiBwYWluIGZvciBhbGwgdG8gaGF2ZSBvdmVybGFwcGluZyBBUElz LiBXZSBoYXZlIG5vdCBmaXhlZCB0aGUNCj4gPiA+ID4gPiA+ID4gVkxBTiBmaWx0ZXIgQVBJIG92 ZXJsYXAgd2l0aCBydGVfZmxvdyBpbiBldGhkZXYuIEl0cyBiZWluZyBUT0RPDQo+ID4gPiA+ID4g PiA+IGZvciBtdWx0aXBsZSByZWxlYXNlcyBub3cuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g T29vb29vb29oIHllcyENCj4gPiA+ID4gPiA+IEkgdGhpbmsgZmxvdy1iYXNlZCBBUEkgaXMgbW9y ZSBwb3dlcmZ1bCwgYW5kIHNob3VsZCBkZXByZWNhdGUgb2xkDQo+ID4gPiA+ID4gPiBwb3J0LWJh c2VkIEFQSS4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICsxIGZyb20gbWUuDQo+ID4gPiA+ID4NCj4g PiA+ID4gPiBpdCBpcyB0YWtpbmcgdG9vIG11Y2ggZWZmb3J0IGFuZCB0aW1lIHRvIG1ha2Ugc3Vw cG9ydCBkdXBsaWNhdGUgQVBJcy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gSSB3YW50IHRvIGhl bHAgZGVwcmVjYXRpbmcgc3VjaCBBUEkgaW4gMjAuMTEgaWYgcG9zc2libGUuDQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiBQbGVhc2Ugc3RhcnQgdGhhdCBkaXNjdXNzaW9uLiBJbiB0aGlzIGNhc2UsIGl0 IGlzIGNsZWFyIEFQSSBvdmVybGFwDQo+ID4gPiA+ID4gd2l0aCBydGVfZXRoX21pcnJvcl9ydWxl X3NldCgpLg0KPiA+ID4gPiA+IFdlIHNob3VsZCBub3QgaGF2ZSB0d28gc2VwYXJhdGUgcGF0aHMg Zm9yIHRoZSBzYW1lIGZ1bmN0aW9uIGluIHRoZQ0KPiA+ID4gPiA+IHNhbWUgZXRoZGV2IGxpYnJh cnkuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gPiA+IEZ1bGwgbWlycm9yaW5nIGlzIHNhbXBsaW5nIDEwMCUgcGFja2V0cyAocmF0aW8g PSAxKS4NCj4gPiA+ID4gPiA+ID4gPiBUaGF0J3Mgd2h5IG9ubHkgb25lIGFjdGlvbiBpcyBlbm91 Z2guDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+DQo+IA0KPiBPbmUgdXNl IGNhc2Ugd291bGQgYmUgc2ltdWxhdGluZyBwYWNrZXQgbG9zcyBvciBkdXBsaWNhdGlvbi4gKGxp a2UgbmV0ZW0gZG9lcykuDQo+IEluIHRoYXQgdXNlIGNhc2UsIHRoZSBzYW1wbGUgYWN0aW9uIHdv dWxkIGhhdmUgdG8gbm90IGhhdmUgYW4gaW1wbGljaXQgY29weS4NCj4gDQo+IENvdWxkIHNhbXBs ZSBiZSBkZWZpbmVkIGFzICJpZiByYW5kb20gbnVtYmVyIGhpdHMgdGhlIHJhdGlvIiB0aGVuIGV4 ZWN1dGUNCj4gdGhpcyBhbHRlcm5hdGl2ZSBydWxlLCBvdGhlcndpc2UgZ28gdG8gbmV4dCBydWxl Lg0KPiANCj4gVGhlIHRoZSBhbHRlcm5hdGl2ZSBydWxlIGNvdWxkIG1pcnJvciBpZiBpdCB3YW50 ZWQsIG9yIGRyb3AsIG9yIGNvdW50LCBvciAuLi4NCj4gDQo+IEl0IGNvdWxkIGV2ZW4gYmUgdXNl ZCBhcyBhIGZvcm0gb2YgdHJhbnNtaXQgbG9hZCBiYWxhbmNpbmcuDQoNCkkgdGhpbmsgd2hhdCB5 b3UgYXJlIHN1Z2dlc3RpbmcgaXMgYSBkaWZmZXJlbnQgYWN0aW9uLCBieSBkZWZpbml0aW9uIChh dCBsZWFzdCBpbiBrZXJuZWwpDQpUaGUgc2FtcGxlIGlzIGEgZHVwbGljYXRpb24gb2YgYSBwYWNr ZXQsIGl0IGNvbWVzIHRvIHNvbHZlIHRoZSBsYWNrIG9mIHZpc2liaWxpdHkgd2hlbiBkb2luZyBm dWxsIG9mZmxvYWQuDQpXaGF0IHlvdSBhcmUgc3VnZ2VzdGluZyBpcyB0byBhZGQgMiBmbG93cywg bGlrZSBkaXNjdXNzZWQgaW4gYSBkaWZmZXJlbnQgdGhyZWFkIHdpbGwgaGF2ZSBtYWpvciBpbXBh Y3Qgb24gcGVyZm9ybWFuY2UNCihkdXBsaWNhdGUgdGhlIG1hdGNoaW5nLCB3YXN0ZSB0d28gZmxv d3Mgc2luY2UgbnVtYmVyIG9mIEhXIGhhdmUgbGltaXRlZCBydWxlcyBjYXBhYmlsaXRpZXMgKQ0K QWxzbyBpdCBzZWVtcyBhIGJ1ZyB0aGF0IGFwcGxpY2F0aW9uIGNhbid0IHJlbGF5IHRvIHdoZXJl IHRoZSBwYWNrZXQgd2lsbCBnZXQgdG8uIEl0IHdpbGwgYnJlYWsgYXBwbGljYXRpb25zIHRoYXQg YXJlDQpjb3VudGluZyBvbiB0cmFmZmljIHRvIGdldCB0byBhIHNwZWNpZmljIHF1ZXVlLg0KDQpC ZXN0LA0KT3JpDQoNCg0KDQo=