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 C8E99A04EF; Wed, 3 Jun 2020 10:16:17 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 521BD1C1D7; Wed, 3 Jun 2020 10:16:16 +0200 (CEST) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60064.outbound.protection.outlook.com [40.107.6.64]) by dpdk.org (Postfix) with ESMTP id DFB471C1C2 for ; Wed, 3 Jun 2020 10:16:14 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y7Girj4eDY9KLoE4WQnZSZqIQh5578N3toY8mKUWCeeLqkGtUEfY8jMfCROYPCoudT94UkOqMbb0YH9W3YQNK1lnHhQ3OeSNGJVyF+TVApNIALGIhzDviVmZMMoNews3/XYSs7fMP1TVq3KZ0UNmiuf9i4Kij7bHlUAowM7KY0jCPcninArijp20m4iUNa/bPOT0UYslEMuWfkAbRv86kTBTar7mxCKQjxyFhg8q8WvA1sHkVAGw8d47eVMKHU9kMfJL6HjIVDF1OiZQ2y4JLYYXbB+PuCeJKWUVQmVMaQs8Il8/V0vUDD0vJiXqIVSl/RkZpQkMqu8tc4KJ4lurbA== 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=qggIeZwCT9buxpG4QTi9CHgorW9iyiJXi+O3qLyRo4E=; b=flGrBK92lW/CyQ0Tb+vkzrIDRU9wrYM0fW72t9fJ34aFQNC30AYvrIacH+hKu4iUzmDNvWETtFwbjCG0gfdIYfB9lx7ns8dvjZFAEL1UOuNToWSyw495dK9hxrVuXd5XJrYqsHqbRI2UixozactHNc/j8jMDip7fSXvM9be79aOK1l3tql4KnmUgePvZwi0mQ5dEcDdpOT/UWwYWB6QyOEDhw37xAgt7g3glQcjiARkI2zbTS9NU7EhP+Tsq3eUDw4dHM2UgJ+CMxrelYsiqXoH4/UP9DLoMhWGu0DqzRXwBISxUTYikKKSYIG3wQJWUcBYmsRGbURcdcWfd1Aqzkw== 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=qggIeZwCT9buxpG4QTi9CHgorW9iyiJXi+O3qLyRo4E=; b=iHBtDRBrK50ban5+yVoRpNwNcSJoNREWqYAloRZXjiMxbqrdGVQ6iKubf1oWYm8YECteMy/QnmKDOKUREWz+XiVb52cL+y6hlQFDGAabKgXhzBbRLzy+iCGuZiNHGToHXw1uNbqZphaN+RudCHcF9A8PObaImrYIuPh4UhL6NrQ= Received: from AM6PR05MB5176.eurprd05.prod.outlook.com (2603:10a6:20b:63::30) by AM6PR05MB4389.eurprd05.prod.outlook.com (2603:10a6:209:3f::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3066.18; Wed, 3 Jun 2020 08:16:11 +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.3066.018; Wed, 3 Jun 2020 08:16:11 +0000 From: Ori Kam To: Adrien Mazarguil CC: Andrew Rybchenko , Dekel Peled , "ferruh.yigit@intel.com" , "john.mcnamara@intel.com" , "marko.kovacevic@intel.com" , Asaf Penso , Matan Azrad , Eli Britstein , "dev@dpdk.org" , Ivan Malov Thread-Topic: [RFC] ethdev: add fragment attribute to IPv6 item Thread-Index: AQHWOOqwDHM6oNivA0aWAJPMyldBEqjFm/OggAATaQCAANbSMA== Date: Wed, 3 Jun 2020 08:16:11 +0000 Message-ID: References: <5f9b4d30b81fa68ed875106785419a43cc7a6166.1590935677.git.dekelp@mellanox.com> <20200602190410.GU26320@6wind.com> In-Reply-To: <20200602190410.GU26320@6wind.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: 6wind.com; dkim=none (message not signed) header.d=none;6wind.com; 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: 99335a65-f8ff-4bf7-7872-08d807966082 x-ms-traffictypediagnostic: AM6PR05MB4389: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 04238CD941 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: a6G6tbzgh2zEPd1GS4JKsw00Eq9rMRRywO08Mt+5Q5hs4tMFvSmqIci+olSiTUZmwBkCLsIJLX6u/sBORESDnkEqrGgPGaVbISyQalGBIlfHI1LVrVIbHd+8lhKKzDiFZYWFSF1MYMzX0q3Mhl7K5S8VNcNs/3m2lFJ+ol/TLI9qEbaV3WiCb1Btl9ocyyMQyykjn0KqutHK/p2ByF/0Hyf37f/7O/X2hT9Q5jsraT5rvrYrogpI797Giw5cghwzTBaKgNfJ33/JWFXYbPaaOd6DG4l248CwtLW4dvc90rncg7uBuc62KMOx316LnoQJ 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)(366004)(39860400002)(346002)(376002)(396003)(136003)(5660300002)(8936002)(33656002)(86362001)(8676002)(316002)(54906003)(4326008)(83380400001)(6506007)(53546011)(71200400001)(7696005)(478600001)(52536014)(26005)(66946007)(76116006)(6916009)(2906002)(186003)(55016002)(9686003)(66556008)(64756008)(66476007)(66446008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: wdjitSt+TGxSOjtvzYQdVYU2cfRxCXNfMLIizBN2wasNKJkC0/IhuL9p6YuSlfcNDdsD1NowBXvgeLDewUbVY5LlY+8mCaMLTYz9nZSIanswDS2IdamWL+3WyqdwkYcAJVSF0gmSWJGMbCloWRLZhI0+WptR9Ft3tFKeZxqUV2q7Tv0aYX9Z+3CHqV9oOTyDHbcG2+19pHh+5jSpUK1NjBx2Nq774IhPSM19QWe3rx/Zfy2VT/yL9G15SVcLc5nfrs9XrxUV9zmjlGrQptHVR5tWer9Iuku05QaC+ZMZ3ypLsjgOuFEsl3uMiZU1qI+pPSVHNdznpSqDqn8hgY5EdB8k7YK3fP7ZRnH41NE5ww6wGvCg4gv9XSLd9M2tMNShLGXnop/nhmcaRE3NdIByzDzQD47mHJXhTkspnzAexeIBZ2p6Qpy2MoLPZ1nEziM2NzemCiXsISbocVvJys2ycGB/TxP8bEoZd2uJQIUsy29LGC1ruNwHujp6ixvY313J Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99335a65-f8ff-4bf7-7872-08d807966082 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jun 2020 08:16:11.7008 (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: tCCOZNAWHlO8xSioe1iP//o/q6WOASX/peD0BFmkiBZxhnT926KbEWpPvFgUNecgeOvPwpxg2GpcvKmZ1XiKZA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR05MB4389 Subject: Re: [dpdk-dev] [RFC] ethdev: add fragment attribute to IPv6 item 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" SGkgQWRyaWVuLA0KDQpHcmVhdCB0byBoZWFyIGZyb20geW91IGFnYWluLg0KDQo+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEFkcmllbiBNYXphcmd1aWwgPGFkcmllbi5tYXph cmd1aWxANndpbmQuY29tPg0KPiBTZW50OiBUdWVzZGF5LCBKdW5lIDIsIDIwMjAgMTA6MDQgUE0N Cj4gVG86IE9yaSBLYW0gPG9yaWthQG1lbGxhbm94LmNvbT4NCj4gQ2M6IEFuZHJldyBSeWJjaGVu a28gPGFyeWJjaGVua29Ac29sYXJmbGFyZS5jb20+OyBEZWtlbCBQZWxlZA0KPiA8ZGVrZWxwQG1l bGxhbm94LmNvbT47IGZlcnJ1aC55aWdpdEBpbnRlbC5jb207IGpvaG4ubWNuYW1hcmFAaW50ZWwu Y29tOw0KPiBtYXJrby5rb3ZhY2V2aWNAaW50ZWwuY29tOyBBc2FmIFBlbnNvIDxhc2FmcEBtZWxs YW5veC5jb20+OyBNYXRhbiBBenJhZA0KPiA8bWF0YW5AbWVsbGFub3guY29tPjsgRWxpIEJyaXRz dGVpbiA8ZWxpYnJAbWVsbGFub3guY29tPjsgZGV2QGRwZGsub3JnOw0KPiBJdmFuIE1hbG92IDxJ dmFuLk1hbG92QG9rdGV0bGFicy5ydT4NCj4gU3ViamVjdDogUmU6IFtSRkNdIGV0aGRldjogYWRk IGZyYWdtZW50IGF0dHJpYnV0ZSB0byBJUHY2IGl0ZW0NCj4gDQo+IEhpIE9yaSwgQW5kcmV3LCBE ZWxlaywNCj4gDQo+IChiZWVuIGEgd2hpbGUgZWg/KQ0KPiANCj4gT24gVHVlLCBKdW4gMDIsIDIw MjAgYXQgMDY6Mjg6NDFQTSArMDAwMCwgT3JpIEthbSB3cm90ZToNCj4gPiBIaSBBbmRyZXcsDQo+ ID4NCj4gPiBQU0IsDQo+IFsuLi5dDQo+ID4gPiA+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX2V0 aGRldi9ydGVfZmxvdy5oIGIvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2Zsb3cuaA0KPiA+ID4gPiBp bmRleCBiMGU0MTk5Li4zYmM4Y2UxIDEwMDY0NA0KPiA+ID4gPiAtLS0gYS9saWIvbGlicnRlX2V0 aGRldi9ydGVfZmxvdy5oDQo+ID4gPiA+ICsrKyBiL2xpYi9saWJydGVfZXRoZGV2L3J0ZV9mbG93 LmgNCj4gPiA+ID4gQEAgLTc4Nyw2ICs3ODcsOCBAQCBzdHJ1Y3QgcnRlX2Zsb3dfaXRlbV9pcHY0 IHsNCj4gPiA+ID4gICAqLw0KPiA+ID4gPiAgc3RydWN0IHJ0ZV9mbG93X2l0ZW1faXB2NiB7DQo+ ID4gPiA+ICAJc3RydWN0IHJ0ZV9pcHY2X2hkciBoZHI7IC8qKjwgSVB2NiBoZWFkZXIgZGVmaW5p dGlvbi4gKi8NCj4gPiA+ID4gKwl1aW50MzJfdCBpc19mcmFnOjE7IC8qKjwgSXMgSVB2NiBwYWNr ZXQgZnJhZ21lbnRlZC9ub24tZnJhZ21lbnRlZC4gKi8NCj4gPiA+ID4gKwl1aW50MzJfdCByZXNl cnZlZDozMTsgLyoqPCBSZXNlcnZlZCwgbXVzdCBiZSB6ZXJvLiAqLw0KPiA+ID4NCj4gPiA+IFRo ZSBzb2x1dGlvbiBpcyBzaW1wbGUsIGJ1dCBoYXJkbHkgZ2VuZXJpYyBhbmQgYWRkcyBhbg0KPiA+ ID4gZXhhbXBsZSBmb3IgdGhlIGZ1dHVyZSBleHRlbnNpb25zLiBJIGRvdWJ0IHRoYXQgaXQgaXMg YQ0KPiA+ID4gcmlnaHQgd2F5IHRvIGdvLg0KPiA+ID4NCj4gPiBJIGFncmVlIHdpdGggeW91IHRo YXQgdGhpcyBpcyBub3QgdGhlIG1vc3QgZ2VuZXJpYyB3YXkgcG9zc2libGUsDQo+ID4gYnV0IHRo ZSBJUFY2IGV4dGVuc2lvbnMgYXJlIHZlcnkgdW5pcXVlLiBTbyB0aGUgc29sdXRpb24gaXMgYWxz byB1bmlxdWUuDQo+ID4gSW4gZ2VuZXJhbCwgSSdtIGFsd2F5cyBpbiBmYXZvciBvZiBmaW5kaW5n IHRoZSBtb3N0IGdlbmVyaWMgd2F5LCBidXQNCj4gc29tZXRpbWVzDQo+ID4gaXQgaXMgYmV0dGVy IHRvIGtlZXAgdGhpbmdzIHNpbXBsZSwgYW5kIHNlZSBob3cgaXQgZ29lcy4NCj4gDQo+IFNhbWUg ZmVlbGluZyBoZXJlLCBpdCBkb2Vzbid0IGxvb2sgcmlnaHQuDQo+IA0KPiA+ID4gTWF5IGJlIHdl IHNob3VsZCBhZGQgMjU2LWJpdCBzdHJpbmcgd2l0aCBvbmUgYml0IGZvciBlYWNoDQo+ID4gPiBJ UCBwcm90b2NvbCBudW1iZXIgYW5kIGFwcGx5IGl0IHRvIGV4dGVuc2lvbiBoZWFkZXJzIG9ubHk/ DQo+ID4gPiBJZiBiaXQgQSBpcyBzZXQgaW4gdGhlIG1hc2s6DQo+ID4gPiAgLSBpZiBiaXQgQSBp cyBzZXQgaW4gc3BlYyBhcyB3ZWxsLCBleHRlbnNpb24gaGVhZGVyIHdpdGgNCj4gPiA+ICAgIElQ IHByb3RvY29sICgxIDw8IEEpIG51bWJlciBtdXN0IHByZXNlbnQNCj4gPiA+ICAtIGlmIGJpdCBB IGlzIGNsZWFyIGluIHNwZWMsIGV4dGVuc2lvbiBoZWFkZXIgd2l0aA0KPiA+ID4gICAgSVAgcHJv dG9jb2wgKDEgPDwgQSkgbnVtYmVyIG11c3QgYWJzZW50DQo+ID4gPiBJZiBiaXQgaXMgY2xlYXIg aW4gdGhlIG1hc2ssIGNvcnJlc3BvbmRpbmcgZXh0ZW5zaW9uIGhlYWRlcg0KPiA+ID4gbWF5IHBy ZXNlbnQgYW5kIG1heSBhYnNlbnQgKGkuZS4gZG9uJ3QgY2FyZSkuDQo+ID4gPg0KPiA+IFRoZXJl IGFyZSBvbmx5IDEyIHBvc3NpYmxlIGV4dGVuc2lvbiBoZWFkZXJzIGFuZCBjdXJyZW50bHkgbm9u ZSBvZiB0aGVtDQo+ID4gYXJlIHN1cHBvcnRlZCBpbiBydGVfZmxvdy4gU28gYWRkaW5nIGEgbG9n aWMgdG8gcGFyc2UgdGhlIDI1NiBqdXN0IHRvIGdldCBhIG1heA0KPiBvZiAxMg0KPiA+IHBvc3Np YmxlIHZhbHVlcyBpcyBhbiBvdmVya2lsbC4gQWxzbywgaWYgd2UgZGlzcmVnYXJkIHRoZSBjYXNl IG9mIHRoZSBleHRlbnNpb24sDQo+ID4gdGhlIGFwcGxpY2F0aW9uIG11c3Qgc2VsZWN0IG9ubHkg b25lIG5leHQgcHJvdG8uIEZvciBleGFtcGxlLCB0aGUgYXBwbGljYXRpb24NCj4gPiBjYW4ndCBz ZWxlY3QgdWRwICsgdGNwLiBUaGVyZSBpcyB0aGUgb3B0aW9uIHRvIGFkZCBhIGZsYWcgZm9yIGVh Y2ggb2YgdGhlDQo+ID4gcG9zc2libGUgZXh0ZW5zaW9ucywgZG9lcyBpdCBtYWtlcyBtb3JlIHNl bnNlIHRvIHlvdT8NCj4gDQo+IEVhY2ggb2YgdGhlc2UgZXh0ZW5zaW9uIGhlYWRlcnMgaGFzIGl0 cyBvd24gc3RydWN0dXJlLCB3ZSBmaXJzdCBuZWVkIHRoZQ0KPiBhYmlsaXR5IHRvIG1hdGNoIHRo ZW0gcHJvcGVybHkgYnkgYWRkaW5nIHRoZSBuZWNlc3NhcnkgcGF0dGVybiBpdGVtcy4NCj4gDQo+ ID4gPiBUaGUgUkZDIGluZGlyZWN0bHkgdG91Y2hlcyBJUHY2IHByb3RvIChuZXh0IGhlYWRlcikg bWF0Y2hpbmcNCj4gPiA+IGxvZ2ljLg0KPiA+ID4NCj4gPiA+IElmIGxvZ2ljIHVzZWQgaW4gRVRI K1ZMQU4gaXMgYXBwbGllZCBvbiBJUHY2IGFzIHdlbGwsIGl0IHdvdWxkDQo+ID4gPiBtYWtlIHBh dHRlcm4gc3BlY2lmaWNhdGlvbiBhbmQgaGFuZGxpbmcgY29tcGxpY2F0ZWQuIEUuZy46DQo+ID4g PiAgIGV0aCAvIGlwdjYgLyB1ZHAgLyBlbmQNCj4gPiA+IHNob3VsZCBtYXRjaCBVRFAgb3ZlciBJ UHY2IHdpdGhvdXQgYW55IGV4dGVuc2lvbiBoZWFkZXJzIG9ubHkuDQo+ID4gPg0KPiA+IFRoZSBp c3N1ZSB3aXRoIFZMQU4gSSBhZ3JlZSBpcyBkaWZmZXJlbnQgc2luY2UgYnkgZGVmaW5pdGlvbiBW TEFOIGlzDQo+ID4gbGF5ZXIgMi41LiBXZSBjYW4gYWRkIHRoZSBzYW1lIGxvZ2ljIGFsc28gdG8g dGhlIFZMQU4gY2FzZSwgbWF5YmUgaXQgd2lsbA0KPiA+IGJlIGVhc2llci4NCj4gPiBJbiBhbnkg Y2FzZSwgaW4geW91ciBleGFtcGxlIGFib3ZlIGFuZCBhY2NvcmRpbmcgdG8gdGhlIFJGQyB3ZSB3 aWxsDQo+ID4gZ2V0IGFsbCBpcHY2IHVkcCB0cmFmZmljIHdpdGggYW5kIHdpdGhvdXQgZXh0ZW5z aW9ucy4NCj4gPg0KPiA+ID4gQW5kIGhvdyB0byBzcGVjaWZ5IFVQRCBvdmVyIElQdjYgcmVnYXJk bGVzcyBleHRlbnNpb24gaGVhZGVycz8NCj4gPg0KPiA+IFBsZWFzZSBzZWUgYWJvdmUgdGhlIHJ1 bGUgd2lsbCBiZSBldGggLyBpcHY2IC91ZHAuDQo+ID4NCj4gPiA+ICAgZXRoIC8gaXB2NiAvIGlw djZfZXh0IC8gdWRwIC8gZW5kDQo+ID4gPiB3aXRoIGEgY29udmVudGlvbiB0aGF0IGlwdjZfZXh0 IGlzIG9wdGlvbmFsIGlmIHNwZWMgYW5kIG1hc2sNCj4gPiA+IGFyZSBOVUxMIChvciBtYXNrIGlz IGVtcHR5KS4NCj4gPiA+DQo+ID4gSSB3b3VsZCBndWVzcyB0aGF0IHRoaXMgZmxvdyBzaG91bGQg bWF0Y2ggYWxsIGlwdjYgdGhhdCBoYXMgb25lIGV4dCBhbmQgdGhlDQo+IG5leHQNCj4gPiBwcm90 byBpcyB1ZHAuDQo+IA0KPiBJbiBteSBvcGluaW9uIFJURV9GTE9XX0lURU1fVFlQRV9JUFY2X0VY VCBpcyBhIGJpdCB1c2VsZXNzIG9uIGl0cyBvd24uIEl0J3MNCj4gb25seSBmb3IgbWF0Y2hpbmcg cGFja2V0cyB0aGF0IGNvbnRhaW4gc29tZSBraW5kIG9mIGV4dGVuc2lvbiBoZWFkZXIsIG5vdCBh DQo+IHNwZWNpZmljIG9uZSwgbW9yZSBhYm91dCB0aGF0IGJlbG93Lg0KPiANCj4gPiA+IEknbSB3 b25kZXJpbmcgaWYgYW55IGRyaXZlciB0cmVhdHMgaXQgdGhpcyB3YXk/DQo+ID4gPg0KPiA+IEkn bSBub3Qgc3VyZSwgd2UgY2FuIHN1cHBvcnQgb25seSB0aGUgZnJhZyBleHQgYnkgZGVmYXVsdCwg YnV0IGlmIHJlcXVpcmVkIHdlDQo+IGNhbiBzdXBwb3J0IG90aGVyDQo+ID4gZXh0Lg0KPiA+DQo+ ID4gPiBJIGFncmVlIHRoYXQgdGhlIHByb2JsZW0gcmVhbGx5IGNvbWVzIHdoZW4gd2UnZCBsaWtl IG1hdGNoDQo+ID4gPiBJUHY2IGZyYWdzIG9yIGV2ZW4gd29yc2Ugbm90IGZyYWdtZW50cy4NCj4g PiA+DQo+ID4gPiBUd28gcGF0dGVybnMgZm9yIGZyYWdtZW50czoNCj4gPiA+ICAgZXRoIC8gaXB2 NiAocHJvdG89RlJBR01FTlQpIC8gZW5kDQo+ID4gPiAgIGV0aCAvIGlwdjYgLyBpcHY2X2V4dCAo bmV4dF9oZHI9RlJBR01FTlQpIC8gZW5kDQo+ID4gPg0KPiA+ID4gQW55IHNlbnNpYmxlIHNvbHV0 aW9uIGZvciBub3QtZnJhZ21lbnRzIHdpdGggYW55IG90aGVyDQo+ID4gPiBleHRlbnNpb24gaGVh ZGVycz8NCj4gPiA+DQo+ID4gVGhlIG9uZSBwcm9wb3NlIGluIHRoaXMgbWFpbCDwn5iKDQo+ID4N Cj4gPiA+IElOVkVSVCBleGlzdHMsIGJ1dCBoYXJkbHkgdXNlZnVsLCBzaW5jZSBpdCBzaW1wbHkg c2F5cw0KPiA+ID4gdGhhdCBwYXRjaGVzIHdoaWNoIGRvIG5vdCBtYXRjaCBwYXR0ZXJuIHdpdGhv dXQgSU5WRVJUDQo+ID4gPiBtYXRjaGVzIHRoZSBwYXR0ZXJuIHdpdGggSU5WRVJUIGFuZA0KPiA+ ID4gICBpbnZlcnQgLyBldGggLyBpcHY2IChwcm90bz1GUkFHTUVOVCkgLyBlbmQNCj4gPiA+IHdp bGwgbWF0Y2ggQVJQLCBJUHY0LCBJUHY2IHdpdGggYW4gZXh0ZW5zaW9uIGhlYWRlciBiZWZvcmUN Cj4gPiA+IGZyYWdtZW50IGhlYWRlciBhbmQgc28gb24uDQo+ID4gPg0KPiA+IEkgYWdyZWUgd2l0 aCB5b3UsIElOVkVSVCBpbiB0aGlzIGRvZXNu4oCZdCBoZWxwLg0KPiA+IFdlIHdlcmUgY29uc2lk ZXJpbmcgYWRkaW5nIHNvbWUga2luZCBvZiBub3QgbWFzayAvIGl0ZW0gcGVyIGl0ZW0uDQo+ID4g c29tZSB0aGluayBhcm91bmQgdGhpcyBsaW5lOg0KPiA+IHVzZXIgcmVxdWVzdCBpcHY2IHVuZnJh Z21lbnRlZCB1ZHAgcGFja2V0cy4gVGhlIGZsb3cgd291bGQgbG9vayBzb21ldGhpbmcNCj4gPiBs aWtlIHRoaXM6DQo+ID4gRXRoIC8gaXB2NiAvIE5vdCAoSXB2Ni5wcm90byA9IGZyYWdfcHJvdG8p IC8gdWRwDQo+ID4gQnV0IGl0IG1ha2VzIHRoZSBydWxlcyBtdWNoIGhhcmRlciB0byB1c2UsIGFu ZCBJIGRvbid0IHRoaW5rIHRoYXQgdGhlcmUNCj4gPiBpcyBhbnkgSFcgdGhhdCBzdXBwb3J0IG5v dCwgYW5kIGFkZGluZyBzdWNoIGZlYXR1cmUgdG8gYWxsIGl0ZW1zIGlzIG92ZXJraWxsLg0KPiA+ DQo+ID4NCj4gPiA+IEJpdCBzdHJpbmcgc3VnZ2VzdGVkIGFib3ZlIHdpbGwgYWxsb3cgdG8gbWF0 Y2g6DQo+ID4gPiAgLSBVRFAgb3ZlciBJUHY2IHdpdGggYW55IGV4dGVuc2lvbiBoZWFkZXJzOg0K PiA+ID4gICAgIGV0aCAvIGlwdjYgKGV4dF9oZHJzIG1hc2sgZW1wdHkpIC8gdWRwIC8gZW5kDQo+ ID4gPiAgLSBVRFAgb3ZlciBJUHY2IHdpdGhvdXQgYW55IGV4dGVuc2lvbiBoZWFkZXJzOg0KPiA+ ID4gICAgIGV0aCAvIGlwdjYgKGV4dF9oZHJzIG1hc2sgZnVsbCwgc3BlYyBlbXB0eSkgLyB1ZHAg LyBlbmQNCj4gPiA+ICAtIFVEUCBvdmVyIElQdjYgd2l0aG91dCBmcmFnbWVudCBoZWFkZXI6DQo+ ID4gPiAgICAgZXRoIC8gaXB2NiAoZXh0LnNwZWMgJiB+RlJBR01FTlQsIGV4dC5tYXNrIHwgRlJB R01FTlQpIC8gdWRwIC8gZW5kDQo+ID4gPiAgLSBVRFAgb3ZlciBJUHY2IHdpdGggZnJhZ21lbnQg aGVhZGVyDQo+ID4gPiAgICAgZXRoIC8gaXB2NiAoZXh0LnNwZWMgfCBGUkFHTUVOVCwgZXh0Lm1h c2sgfCBGUkFHTUVOVCkgLyB1ZHAgLyBlbmQNCj4gPiA+DQo+ID4gPiB3aGVyZSBGUkFHTUVOVCBp cyAxIDw8IElQUFJPVE9fRlJBR01FTlQuDQo+ID4gPg0KPiA+IFBsZWFzZSBzZWUgbXkgcmVzcG9u c2UgcmVnYXJkaW5nIHRoaXMgYWJvdmUuDQo+ID4NCj4gPiA+IEFib3ZlIEkgaW50ZW50aW9uYWxs eSBrZWVwICdwcm90bycgdW5zcGVjaWZpZWQgaW4gaXB2Ng0KPiA+ID4gc2luY2Ugb3RoZXJ3aXNl IGl0IHdvdWxkIHNwZWNpZnkgdGhlIG5leHQgaGVhZGVyIGFmdGVyIElQdjYNCj4gPiA+IGhlYWRl ci4NCj4gPiA+DQo+ID4gPiBFeHRlbnNpb24gaGVhZGVycyBtYXNrIHNob3VsZCBiZSBlbXB0eSBi eSBkZWZhdWx0Lg0KPiANCj4gVGhpcyBpcyBhIGRlbGliZXJhdGUgZGVzaWduIGNob2ljZS9pc3N1 ZSB3aXRoIHJ0ZV9mbG93OiBhbiBlbXB0eSBwYXR0ZXJuDQo+IG1hdGNoZXMgZXZlcnl0aGluZzsg YWRkaW5nIGl0ZW1zIG9ubHkgbmFycm93cyB0aGUgc2VsZWN0aW9uLiBBcyBBbmRyZXcgc2FpZA0K PiB0aGVyZSBpcyBjdXJyZW50bHkgbm8gd2F5IHRvIHByb3ZpZGUgYSBzcGVjaWZpYyBpdGVtIHRv IHJlamVjdCwgaXQgY2FuIG9ubHkNCj4gYmUgZG9uZSBnbG9iYWxseSBvbiBhIHBhdHRlcm4gdGhy b3VnaCBJTlZFUlQgdGhhdCBubyBQTUQgaW1wbGVtZW50cyBzbyBmYXIuDQo+IA0KPiBTbyB3ZSBo YXZlIHR3byByZXF1aXJlbWVudHMgaGVyZTogdGhlIGFiaWxpdHkgdG8gc3BlY2lmaWNhbGx5IG1h dGNoIElQdjYNCj4gZnJhZ21lbnQgaGVhZGVycyBhbmQgdGhlIGFiaWxpdHkgdG8gcmVqZWN0IHRo ZW0uDQo+IA0KPiBUbyBtYXRjaCBJUHY2IGZyYWdtZW50IGhlYWRlcnMsIHdlIG5lZWQgYSBkZWRp Y2F0ZWQgcGF0dGVybiBpdGVtLiBUaGUNCj4gZ2VuZXJpYyBSVEVfRkxPV19JVEVNX1RZUEVfSVBW Nl9FWFQgaXMgdXNlbGVzcyBmb3IgdGhhdCBvbiBpdHMgb3duLCBpdCBtdXN0DQo+IGJlIGNvbXBs ZXRlZCB3aXRoIFJURV9GTE9XX0lURU1fVFlQRV9JUFY2X0VYVF9GUkFHIGFuZCBhc3NvY2lhdGVk DQo+IG9iamVjdA0KDQpZZXMsIHdlIG11c3QgYWRkIEVYVF9GUkFHIHRvIGJlIGFibGUgdG8gbWF0 Y2ggb24gdGhlIEZSQUcgYml0cy4NCg0KPiB0byBtYXRjaCBpbmRpdmlkdWFsIGZpZWxkcyBpZiBu ZWVkZWQgKGxpa2UgYWxsIHRoZSBvdGhlcnMNCj4gcHJvdG9jb2xzL2hlYWRlcnMpLg0KPiANCj4g VGhlbiB0byByZWplY3QgYSBwYXR0ZXJuIGl0ZW0uLi4gTXkgcHJlZmVyZW5jZSBnb2VzIHRvIGEg bmV3ICJOT1QiIG1ldGEgaXRlbQ0KPiBhZmZlY3RpbmcgdGhlIG1lYW5pbmcgb2YgdGhlIGl0ZW0g Y29taW5nIGltbWVkaWF0ZWx5IGFmdGVyIGluIHRoZSBwYXR0ZXJuDQo+IGxpc3QuIFRoYXQgd291 bGQgYmUgdWx0cmEgZ2VuZXJpYywgd291bGRuJ3QgYnJlYWsgYW55IEFCSS9BUEkgYW5kIGxpa2UN Cj4gSU5WRVJULCB3b3VsZG4ndCBldmVuIHJlcXVpcmUgYSBuZXcgb2JqZWN0IGFzc29jaWF0ZWQg d2l0aCBpdC4NCj4gDQo+IFRvIG1hdGNoIFVEUHY2IHRyYWZmaWMgd2hlbiB0aGVyZSBpcyBubyBm cmFnbWVudCBoZWFkZXIsIG9uZSBjb3VsZCB0aGVuIGRvDQo+IHNvbWV0aGluZyBsaWtlOg0KPiAN Cj4gIGV0aCAvIGlwdjYgLyBub3QgLyBpcHY2X2V4dF9mcmFnIC8gdWRwDQo+IA0KPiBQTUQgc3Vw cG9ydCB3b3VsZCBiZSB0cml2aWFsIHRvIGltcGxlbWVudCAoSSdtIHN1cmUhKQ0KPiANCkkgYWdy ZWUgd2l0aCB5b3UgYXMgSSBzYWlkIGFib3ZlLiBUaGUgaXNzdWUgaXMgbm90IFBNRCwgdGhlIGlz c3VlcyBhcmU6DQoxLiB0aGluayBhYm91dCB0aGUgcnVsZSB5b3Ugc3RhdGVkIGFib3ZlIGZyb20g bG9naWMgcG9pbnQgdGhlcmUgaXMgc29tZSBjb250cmFkaWN0aW9uLA0KeW91IGFyZSBzYXlpbmcg aXB2NiBuZXh0IHByb3RvIHVkcCBidXQgeW91IGFsc28gc2F5IG5vdCBmcmFnLCB0aGlzIGlzIGxv Z2ljIG9ubHkgZm9yIElQVjYgZXh0Lg0KMi4gSFcgaXNzdWUsIEkgZG9uJ3Qga25vdyBvZiBIVyB0 aGF0IGtub3dzIGhvdyB0byBzdXBwb3J0IG5vdCBvbiBhbiBpdGVtLg0KU28gYWRkaW5nIHNvbWV0 aGluZyBmb3IgYWxsIGl0ZW1zIGZvciBvbmx5IG9uZSBjYXNlIGlzIG92ZXJraWxsLg0KIA0KDQoN Cj4gV2UgbWF5IGxhdGVyIGltcGxlbWVudCBvdGhlciBraW5kcyBvZiAib3BlcmF0b3IiIGl0ZW1z IGFzIEFuZHJldyBzdWdnZXN0ZWQsDQo+IGZvciBiaXQtd2lzZSBzdHVmZiBhbmQgc28gb24uIExl dCdzIGtlZXAgYWRkaW5nIGZlYXR1cmVzIG9uIGEgbmVlZGVkIGJhc2lzDQo+IHRob3VnaC4NCj4g DQo+IC0tDQo+IEFkcmllbiBNYXphcmd1aWwNCj4gNldJTkQNCg0KQmVzdCwNCk9yaQ0K