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 55971A0350; Sun, 28 Jun 2020 16:52:20 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2CC4C1C436; Sun, 28 Jun 2020 16:52:19 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80075.outbound.protection.outlook.com [40.107.8.75]) by dpdk.org (Postfix) with ESMTP id EA4781C435 for ; Sun, 28 Jun 2020 16:52:17 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T0ZX96AuRhdKzPuZxNkPUYjS69IvijM6vq7Mopsg8wLm1zkL3TTlAlyOK+E2ewNEREeQzGhrGTZhwnJiyHVlp5FLezuXALcHDKasDRrWFJ/TklLiRedN35gLmRo3HdI4hNKOEW2vTNiG87PhCT0W47W5Fpu0SBWzceM+BYSKiPSk1owaQVYTCOgXDNt07gzeNaAUDmHJHUASEAQN2jR6QmP2B+S7yzxA/PiZ+hml68tN7IoGyvrXMNNm0rW028aZo7taYjTD4YydlXedYvpW1Xs4q+qNV7B+qkgWE48g+XMrB0Xr7wD9JVWte6pcZN1WqFsmLPRYeE5YNGA7agjWcg== 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=8SPqymqQYTXbZ1+DkOPjydDBojjc3kkkUdwD3YptQrQ=; b=O/3SqRo1ahQpsLVZvhXgWyebi44HwE0XM1xT/Mr6hdqLsPb1CYvS/uDOquuZwWL+Tt8Dqz1FG671mVFXGEBaOPbCXaG/ma+VQgZy9Yf1hyVA3lm1MevMH8B2vCJUr6RcaVFfKDaDap+vi72w+N57TNlP3d60matv2F1RXpDq+c283hoOPxea81bqcG5v5P59LO3A5YZIGZu5ftnY/JIgUhxhJKGBvnPNwJ0zZ7ne0ojx9lcPoyW/gyK79Tudrm3/7CRHAdOO4824m23zS3lGb0/sca1Emx0BtShjli755AviglJbTdHpJq98xZwRpQPPN+4LW2pjvQIIqXQTCdqj8w== 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=8SPqymqQYTXbZ1+DkOPjydDBojjc3kkkUdwD3YptQrQ=; b=Q/wGTkb3pA2o2O21JieYSAEYkzAEL5Kmvm11WBTIrqxWmthLolenJqCIPJ0+YPOsS+VEr2BfvecL31XpARgqAdiRy5TtvX9ywLQG4ye0YBEuj5NPBjXjJDwlxNM50Zhj0CF2298z9Ff6hfatv4AFnNhC9KBvwA37rJB/gqCWftA= Received: from VI1PR05MB5390.eurprd05.prod.outlook.com (2603:10a6:803:8d::23) by VI1PR05MB4110.eurprd05.prod.outlook.com (2603:10a6:803:3f::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3131.20; Sun, 28 Jun 2020 14:52:16 +0000 Received: from VI1PR05MB5390.eurprd05.prod.outlook.com ([fe80::9911:ca83:b819:b3ac]) by VI1PR05MB5390.eurprd05.prod.outlook.com ([fe80::9911:ca83:b819:b3ac%6]) with mapi id 15.20.3131.026; Sun, 28 Jun 2020 14:52:16 +0000 From: Dekel Peled To: Adrien Mazarguil , Ori Kam , Andrew Rybchenko CC: "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: AQHWOOqxKzojhU7BM0Sxd9KtB/qMK6jFpXKAgAAJ6gCAAN1JgIAAP0FQgBc9hwCABPP+8A== Date: Sun, 28 Jun 2020 14:52:16 +0000 Message-ID: References: <5f9b4d30b81fa68ed875106785419a43cc7a6166.1590935677.git.dekelp@mellanox.com> <20200602190410.GU26320@6wind.com> In-Reply-To: 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: [193.47.165.251] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 88e17d7d-33b6-4abd-f275-08d81b72d9ca x-ms-traffictypediagnostic: VI1PR05MB4110: 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: 0448A97BF2 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: SetbpyEOSq+luLPUy6PdPa/WBoiBB0+KTESSCpeyYYRf8sHXrDKMXAqLMQEwEPZ/GLoIeCxc4osqYfmYr+5UlBMV2AiB6HbiNgPOQkAVskrqrz6160draMZGQ+ZB36z89heI7sGZ109ZKn/oQ1gWZrsxcWG2detVQ3MlPYnWT5f8XUQ6zwUbm3mD9x9gCMwhy6ZkWSz0hg9bpskIEAGsoS1lWkz2WzmH8Xt7bkQ5XM9sFyO0yqqprMmHqaVTEBT01k12RajTQi95GVaccu81n+YW/cCaVUmPB+4Lrd0Jy1IVduTTmZfPDrkemYtjNU+sbkQq0I603cK2MtNB5Itj0TwpH15eo5w18cuMCYjWOz4gM4PLEb5uVlKvzTTDyEsHpCVK/vn5tgY2Lc1yMAo3sw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR05MB5390.eurprd05.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(376002)(39860400002)(136003)(346002)(366004)(396003)(66446008)(64756008)(8936002)(316002)(66556008)(26005)(186003)(478600001)(66476007)(7696005)(54906003)(110136005)(6506007)(52536014)(53546011)(86362001)(966005)(66946007)(2906002)(83380400001)(8676002)(76116006)(71200400001)(5660300002)(4326008)(9686003)(30864003)(55016002)(33656002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: 9mrDx7n9cfaaAVG5QsfzTT/3IVLi4UWwUY2PQ9ILMd4Hcg/c4YtUUSCcXgkyinf/SnbsWvwkCsyHs0ZBnH9nLbc0oTpjcjTsi0vsbZCWpaxjfdkCyG0u2xs9F00PCH14tlit8BqVUo7/y8eCPeodjYlJy6sNK8DdCg4Ck2faRdE2fc3a1oKfJDnzkFggh8yN9z4QWmMoHGcUqG9XPyaBFxUeKMX0opMbMiM7icUG0RSATk9cSyVpuw6W0gUbF0kNsCt0O3vMJHQQrGfqk8AdzSQEjaOaoDkbGq3bUzTCCV232ZQmHGguAc+scSmuHN5BKQ1udlNuzlgoLJDjlEG4YUfjkloTrKFOeWj/OifwCiI2xogZzar6/YBImPrcI7b0aFKDP2BQZr66llidTI0dKu83CoMAZzdw5fvKgvj4bYH/MaHKionD6uCXJNbAMLtLmUNcM3m1eAcruBqHf35gISqFYVZAH4zwUw/R0fWUm/0AcYDKQLnH0lGCUxImewSh 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: VI1PR05MB5390.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 88e17d7d-33b6-4abd-f275-08d81b72d9ca X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jun 2020 14:52:16.6013 (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: KPodyUhAD1/CNPJ9oSASewNPDnFEDHxfnmDlUp43RsnKnQpeXVDSlrYCAr3xiTGtb64exu9J31gBrjHD6Tw4Kw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR05MB4110 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" SGksDQoNClRoaXMgY2hhbmdlIGlzIHByb3Bvc2VkIGZvciAyMC4xMS4NCkl0IGlzIHN1Z2dlc3Rl ZCBhZnRlciBpbnRlcm5hbCBkaXNjdXNzaW9ucywgd2hlcmUgbXVsdGlwbGUgc3VnZ2VzdGlvbnMg d2VyZSBjb25zaWRlcmVkLCBzb21lIG9mIHRoZW0gc2ltaWxhciB0byB0aGUgb25lcyBzdWdnZXN0 ZWQgYmVsb3cuIA0KQ29udGludWluZyB0aGUgZWFybGllciBjb3JyZXNwb25kZW5jZSBpbiB0aGlz IHRocmVhZCwgcGxlYXNlIHNlbmQgYW55IG90aGVyIGNvbW1lbnRzL3N1Z2dlc3Rpb25zIHlvdSBo YXZlLg0KDQpSZWdhcmRzLA0KRGVrZWwNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiBGcm9tOiBEZWtlbCBQZWxlZCA8ZGVrZWxwQG1lbGxhbm94LmNvbT4NCj4gU2VudDogVGh1cnNk YXksIEp1bmUgMTgsIDIwMjAgOTo1OSBBTQ0KPiBUbzogQWRyaWVuIE1hemFyZ3VpbCA8YWRyaWVu Lm1hemFyZ3VpbEA2d2luZC5jb20+OyBPcmkgS2FtDQo+IDxvcmlrYUBtZWxsYW5veC5jb20+OyBB bmRyZXcgUnliY2hlbmtvIDxhcnliY2hlbmtvQHNvbGFyZmxhcmUuY29tPg0KPiBDYzogZmVycnVo LnlpZ2l0QGludGVsLmNvbTsgam9obi5tY25hbWFyYUBpbnRlbC5jb207DQo+IG1hcmtvLmtvdmFj ZXZpY0BpbnRlbC5jb207IEFzYWYgUGVuc28gPGFzYWZwQG1lbGxhbm94LmNvbT47IE1hdGFuDQo+ IEF6cmFkIDxtYXRhbkBtZWxsYW5veC5jb20+OyBFbGkgQnJpdHN0ZWluIDxlbGlickBtZWxsYW5v eC5jb20+Ow0KPiBkZXZAZHBkay5vcmc7IEl2YW4gTWFsb3YgPEl2YW4uTWFsb3ZAb2t0ZXRsYWJz LnJ1Pg0KPiBTdWJqZWN0OiBSRTogW1JGQ10gZXRoZGV2OiBhZGQgZnJhZ21lbnQgYXR0cmlidXRl IHRvIElQdjYgaXRlbQ0KPiANCj4gSGksDQo+IA0KPiBLaW5kIHJlbWluZGVyLCBwbGVhc2UgcmVz cG9uZCBvbiB0aGUgcmVjZW50IGNvcnJlc3BvbmRlbmNlIHNvIHdlIGNhbg0KPiBjb25jbHVkZSB0 aGlzIGlzc3VlLg0KPiANCj4gUmVnYXJkcywNCj4gRGVrZWwNCj4gDQo+ID4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBEZWtlbCBQZWxlZCA8ZGVrZWxwQG1lbGxhbm94LmNv bT4NCj4gPiBTZW50OiBXZWRuZXNkYXksIEp1bmUgMywgMjAyMCAzOjExIFBNDQo+ID4gVG86IE9y aSBLYW0gPG9yaWthQG1lbGxhbm94LmNvbT47IEFkcmllbiBNYXphcmd1aWwNCj4gPiA8YWRyaWVu Lm1hemFyZ3VpbEA2d2luZC5jb20+DQo+ID4gQ2M6IEFuZHJldyBSeWJjaGVua28gPGFyeWJjaGVu a29Ac29sYXJmbGFyZS5jb20+Ow0KPiA+IGZlcnJ1aC55aWdpdEBpbnRlbC5jb207IGpvaG4ubWNu YW1hcmFAaW50ZWwuY29tOw0KPiA+IG1hcmtvLmtvdmFjZXZpY0BpbnRlbC5jb207IEFzYWYgUGVu c28gPGFzYWZwQG1lbGxhbm94LmNvbT47IE1hdGFuDQo+ID4gQXpyYWQgPG1hdGFuQG1lbGxhbm94 LmNvbT47IEVsaSBCcml0c3RlaW4gPGVsaWJyQG1lbGxhbm94LmNvbT47DQo+ID4gZGV2QGRwZGsu b3JnOyBJdmFuIE1hbG92IDxJdmFuLk1hbG92QG9rdGV0bGFicy5ydT4NCj4gPiBTdWJqZWN0OiBS RTogW1JGQ10gZXRoZGV2OiBhZGQgZnJhZ21lbnQgYXR0cmlidXRlIHRvIElQdjYgaXRlbQ0KPiA+ DQo+ID4gSGksIFBTQi4NCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g PiA+IEZyb206IE9yaSBLYW0gPG9yaWthQG1lbGxhbm94LmNvbT4NCj4gPiA+IFNlbnQ6IFdlZG5l c2RheSwgSnVuZSAzLCAyMDIwIDExOjE2IEFNDQo+ID4gPiBUbzogQWRyaWVuIE1hemFyZ3VpbCA8 YWRyaWVuLm1hemFyZ3VpbEA2d2luZC5jb20+DQo+ID4gPiBDYzogQW5kcmV3IFJ5YmNoZW5rbyA8 YXJ5YmNoZW5rb0Bzb2xhcmZsYXJlLmNvbT47IERla2VsIFBlbGVkDQo+ID4gPiA8ZGVrZWxwQG1l bGxhbm94LmNvbT47IGZlcnJ1aC55aWdpdEBpbnRlbC5jb207DQo+ID4gPiBqb2huLm1jbmFtYXJh QGludGVsLmNvbTsgbWFya28ua292YWNldmljQGludGVsLmNvbTsgQXNhZiBQZW5zbw0KPiA+ID4g PGFzYWZwQG1lbGxhbm94LmNvbT47IE1hdGFuIEF6cmFkIDxtYXRhbkBtZWxsYW5veC5jb20+OyBF bGkNCj4gPiBCcml0c3RlaW4NCj4gPiA+IDxlbGlickBtZWxsYW5veC5jb20+OyBkZXZAZHBkay5v cmc7IEl2YW4gTWFsb3YNCj4gPiA+IDxJdmFuLk1hbG92QG9rdGV0bGFicy5ydT4NCj4gPiA+IFN1 YmplY3Q6IFJFOiBbUkZDXSBldGhkZXY6IGFkZCBmcmFnbWVudCBhdHRyaWJ1dGUgdG8gSVB2NiBp dGVtDQo+ID4gPg0KPiA+ID4gSGkgQWRyaWVuLA0KPiA+ID4NCj4gPiA+IEdyZWF0IHRvIGhlYXIg ZnJvbSB5b3UgYWdhaW4uDQo+ID4gPg0KPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQ0KPiA+ID4gPiBGcm9tOiBBZHJpZW4gTWF6YXJndWlsIDxhZHJpZW4ubWF6YXJndWlsQDZ3aW5k LmNvbT4NCj4gPiA+ID4gU2VudDogVHVlc2RheSwgSnVuZSAyLCAyMDIwIDEwOjA0IFBNDQo+ID4g PiA+IFRvOiBPcmkgS2FtIDxvcmlrYUBtZWxsYW5veC5jb20+DQo+ID4gPiA+IENjOiBBbmRyZXcg UnliY2hlbmtvIDxhcnliY2hlbmtvQHNvbGFyZmxhcmUuY29tPjsgRGVrZWwgUGVsZWQNCj4gPiA+ ID4gPGRla2VscEBtZWxsYW5veC5jb20+OyBmZXJydWgueWlnaXRAaW50ZWwuY29tOw0KPiA+ID4g PiBqb2huLm1jbmFtYXJhQGludGVsLmNvbTsgbWFya28ua292YWNldmljQGludGVsLmNvbTsgQXNh ZiBQZW5zbw0KPiA+ID4gPiA8YXNhZnBAbWVsbGFub3guY29tPjsgTWF0YW4gQXpyYWQgPG1hdGFu QG1lbGxhbm94LmNvbT47IEVsaQ0KPiA+ID4gQnJpdHN0ZWluDQo+ID4gPiA+IDxlbGlickBtZWxs YW5veC5jb20+OyBkZXZAZHBkay5vcmc7IEl2YW4gTWFsb3YNCj4gPiA+ID4gPEl2YW4uTWFsb3ZA b2t0ZXRsYWJzLnJ1Pg0KPiA+ID4gPiBTdWJqZWN0OiBSZTogW1JGQ10gZXRoZGV2OiBhZGQgZnJh Z21lbnQgYXR0cmlidXRlIHRvIElQdjYgaXRlbQ0KPiA+ID4gPg0KPiA+ID4gPiBIaSBPcmksIEFu ZHJldywgRGVsZWssDQo+ID4NCj4gPiBJdCdzIERla2VsLCBub3QgRGVsZWsgOy0pDQo+ID4NCj4g PiA+ID4NCj4gPiA+ID4gKGJlZW4gYSB3aGlsZSBlaD8pDQo+ID4gPiA+DQo+ID4gPiA+IE9uIFR1 ZSwgSnVuIDAyLCAyMDIwIGF0IDA2OjI4OjQxUE0gKzAwMDAsIE9yaSBLYW0gd3JvdGU6DQo+ID4g PiA+ID4gSGkgQW5kcmV3LA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gUFNCLA0KPiA+ID4gPiBbLi4u XQ0KPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2Zsb3cu aA0KPiA+ID4gPiA+ID4gPiBiL2xpYi9saWJydGVfZXRoZGV2L3J0ZV9mbG93LmggaW5kZXggYjBl NDE5OS4uM2JjOGNlMSAxMDA2NDQNCj4gPiA+ID4gPiA+ID4gLS0tIGEvbGliL2xpYnJ0ZV9ldGhk ZXYvcnRlX2Zsb3cuaA0KPiA+ID4gPiA+ID4gPiArKysgYi9saWIvbGlicnRlX2V0aGRldi9ydGVf Zmxvdy5oDQo+ID4gPiA+ID4gPiA+IEBAIC03ODcsNiArNzg3LDggQEAgc3RydWN0IHJ0ZV9mbG93 X2l0ZW1faXB2NCB7DQo+ID4gPiA+ID4gPiA+ICAgKi8NCj4gPiA+ID4gPiA+ID4gIHN0cnVjdCBy dGVfZmxvd19pdGVtX2lwdjYgew0KPiA+ID4gPiA+ID4gPiAgCXN0cnVjdCBydGVfaXB2Nl9oZHIg aGRyOyAvKio8IElQdjYgaGVhZGVyIGRlZmluaXRpb24uICovDQo+ID4gPiA+ID4gPiA+ICsJdWlu dDMyX3QgaXNfZnJhZzoxOyAvKio8IElzIElQdjYgcGFja2V0IGZyYWdtZW50ZWQvbm9uLQ0KPiA+ ID4gZnJhZ21lbnRlZC4gKi8NCj4gPiA+ID4gPiA+ID4gKwl1aW50MzJfdCByZXNlcnZlZDozMTsg LyoqPCBSZXNlcnZlZCwgbXVzdCBiZSB6ZXJvLiAqLw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ IFRoZSBzb2x1dGlvbiBpcyBzaW1wbGUsIGJ1dCBoYXJkbHkgZ2VuZXJpYyBhbmQgYWRkcyBhbiBl eGFtcGxlDQo+ID4gPiA+ID4gPiBmb3IgdGhlIGZ1dHVyZSBleHRlbnNpb25zLiBJIGRvdWJ0IHRo YXQgaXQgaXMgYSByaWdodCB3YXkgdG8gZ28uDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+IEkgYWdy ZWUgd2l0aCB5b3UgdGhhdCB0aGlzIGlzIG5vdCB0aGUgbW9zdCBnZW5lcmljIHdheSBwb3NzaWJs ZSwNCj4gPiA+ID4gPiBidXQgdGhlIElQVjYgZXh0ZW5zaW9ucyBhcmUgdmVyeSB1bmlxdWUuIFNv IHRoZSBzb2x1dGlvbiBpcyBhbHNvDQo+IHVuaXF1ZS4NCj4gPiA+ID4gPiBJbiBnZW5lcmFsLCBJ J20gYWx3YXlzIGluIGZhdm9yIG9mIGZpbmRpbmcgdGhlIG1vc3QgZ2VuZXJpYyB3YXksDQo+ID4g PiA+ID4gYnV0DQo+ID4gPiA+IHNvbWV0aW1lcw0KPiA+ID4gPiA+IGl0IGlzIGJldHRlciB0byBr ZWVwIHRoaW5ncyBzaW1wbGUsIGFuZCBzZWUgaG93IGl0IGdvZXMuDQo+ID4gPiA+DQo+ID4gPiA+ IFNhbWUgZmVlbGluZyBoZXJlLCBpdCBkb2Vzbid0IGxvb2sgcmlnaHQuDQo+ID4gPiA+DQo+ID4g PiA+ID4gPiBNYXkgYmUgd2Ugc2hvdWxkIGFkZCAyNTYtYml0IHN0cmluZyB3aXRoIG9uZSBiaXQg Zm9yIGVhY2ggSVANCj4gPiA+ID4gPiA+IHByb3RvY29sIG51bWJlciBhbmQgYXBwbHkgaXQgdG8g ZXh0ZW5zaW9uIGhlYWRlcnMgb25seT8NCj4gPiA+ID4gPiA+IElmIGJpdCBBIGlzIHNldCBpbiB0 aGUgbWFzazoNCj4gPiA+ID4gPiA+ICAtIGlmIGJpdCBBIGlzIHNldCBpbiBzcGVjIGFzIHdlbGws IGV4dGVuc2lvbiBoZWFkZXIgd2l0aA0KPiA+ID4gPiA+ID4gICAgSVAgcHJvdG9jb2wgKDEgPDwg QSkgbnVtYmVyIG11c3QgcHJlc2VudA0KPiA+ID4gPiA+ID4gIC0gaWYgYml0IEEgaXMgY2xlYXIg aW4gc3BlYywgZXh0ZW5zaW9uIGhlYWRlciB3aXRoDQo+ID4gPiA+ID4gPiAgICBJUCBwcm90b2Nv bCAoMSA8PCBBKSBudW1iZXIgbXVzdCBhYnNlbnQgSWYgYml0IGlzIGNsZWFyIGluDQo+ID4gPiA+ ID4gPiB0aGUgbWFzaywgY29ycmVzcG9uZGluZyBleHRlbnNpb24gaGVhZGVyIG1heSBwcmVzZW50 IGFuZCBtYXkNCj4gPiA+ID4gPiA+IGFic2VudCAoaS5lLiBkb24ndCBjYXJlKS4NCj4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gVGhlcmUgYXJlIG9ubHkgMTIgcG9zc2libGUgZXh0ZW5zaW9uIGhlYWRl cnMgYW5kIGN1cnJlbnRseSBub25lDQo+ID4gPiA+ID4gb2YgdGhlbSBhcmUgc3VwcG9ydGVkIGlu IHJ0ZV9mbG93LiBTbyBhZGRpbmcgYSBsb2dpYyB0byBwYXJzZQ0KPiA+ID4gPiA+IHRoZSAyNTYg anVzdCB0byBnZXQgYSBtYXgNCj4gPiA+ID4gb2YgMTINCj4gPiA+ID4gPiBwb3NzaWJsZSB2YWx1 ZXMgaXMgYW4gb3ZlcmtpbGwuIEFsc28sIGlmIHdlIGRpc3JlZ2FyZCB0aGUgY2FzZQ0KPiA+ID4g PiA+IG9mIHRoZSBleHRlbnNpb24sIHRoZSBhcHBsaWNhdGlvbiBtdXN0IHNlbGVjdCBvbmx5IG9u ZSBuZXh0IHByb3RvLg0KPiA+ID4gPiA+IEZvciBleGFtcGxlLCB0aGUgYXBwbGljYXRpb24gY2Fu J3Qgc2VsZWN0IHVkcCArIHRjcC4gVGhlcmUgaXMNCj4gPiA+ID4gPiB0aGUgb3B0aW9uIHRvIGFk ZCBhIGZsYWcgZm9yIGVhY2ggb2YgdGhlIHBvc3NpYmxlIGV4dGVuc2lvbnMsDQo+ID4gPiA+ID4g ZG9lcyBpdCBtYWtlcyBtb3JlDQo+ID4gPiBzZW5zZSB0byB5b3U/DQo+ID4gPiA+DQo+ID4gPiA+ IEVhY2ggb2YgdGhlc2UgZXh0ZW5zaW9uIGhlYWRlcnMgaGFzIGl0cyBvd24gc3RydWN0dXJlLCB3 ZSBmaXJzdA0KPiA+ID4gPiBuZWVkIHRoZSBhYmlsaXR5IHRvIG1hdGNoIHRoZW0gcHJvcGVybHkg YnkgYWRkaW5nIHRoZSBuZWNlc3NhcnkNCj4gcGF0dGVybiBpdGVtcy4NCj4gPiA+ID4NCj4gPiA+ ID4gPiA+IFRoZSBSRkMgaW5kaXJlY3RseSB0b3VjaGVzIElQdjYgcHJvdG8gKG5leHQgaGVhZGVy KSBtYXRjaGluZw0KPiA+ID4gPiA+ID4gbG9naWMuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g SWYgbG9naWMgdXNlZCBpbiBFVEgrVkxBTiBpcyBhcHBsaWVkIG9uIElQdjYgYXMgd2VsbCwgaXQg d291bGQNCj4gPiA+ID4gPiA+IG1ha2UgcGF0dGVybiBzcGVjaWZpY2F0aW9uIGFuZCBoYW5kbGlu ZyBjb21wbGljYXRlZC4gRS5nLjoNCj4gPiA+ID4gPiA+ICAgZXRoIC8gaXB2NiAvIHVkcCAvIGVu ZA0KPiA+ID4gPiA+ID4gc2hvdWxkIG1hdGNoIFVEUCBvdmVyIElQdjYgd2l0aG91dCBhbnkgZXh0 ZW5zaW9uIGhlYWRlcnMgb25seS4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gVGhlIGlzc3VlIHdp dGggVkxBTiBJIGFncmVlIGlzIGRpZmZlcmVudCBzaW5jZSBieSBkZWZpbml0aW9uDQo+ID4gPiA+ ID4gVkxBTiBpcyBsYXllciAyLjUuIFdlIGNhbiBhZGQgdGhlIHNhbWUgbG9naWMgYWxzbyB0byB0 aGUgVkxBTg0KPiA+ID4gPiA+IGNhc2UsIG1heWJlIGl0IHdpbGwgYmUgZWFzaWVyLg0KPiA+ID4g PiA+IEluIGFueSBjYXNlLCBpbiB5b3VyIGV4YW1wbGUgYWJvdmUgYW5kIGFjY29yZGluZyB0byB0 aGUgUkZDIHdlDQo+ID4gPiA+ID4gd2lsbCBnZXQgYWxsIGlwdjYgdWRwIHRyYWZmaWMgd2l0aCBh bmQgd2l0aG91dCBleHRlbnNpb25zLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBBbmQgaG93IHRv IHNwZWNpZnkgVVBEIG92ZXIgSVB2NiByZWdhcmRsZXNzIGV4dGVuc2lvbiBoZWFkZXJzPw0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gUGxlYXNlIHNlZSBhYm92ZSB0aGUgcnVsZSB3aWxsIGJlIGV0aCAv IGlwdjYgL3VkcC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gICBldGggLyBpcHY2IC8gaXB2Nl9l eHQgLyB1ZHAgLyBlbmQgd2l0aCBhIGNvbnZlbnRpb24gdGhhdA0KPiA+ID4gPiA+ID4gaXB2Nl9l eHQgaXMgb3B0aW9uYWwgaWYgc3BlYyBhbmQgbWFzayBhcmUgTlVMTCAob3IgbWFzayBpcyBlbXB0 eSkuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+IEkgd291bGQgZ3Vlc3MgdGhhdCB0aGlzIGZsb3cg c2hvdWxkIG1hdGNoIGFsbCBpcHY2IHRoYXQgaGFzIG9uZQ0KPiA+ID4gPiA+IGV4dCBhbmQgdGhl DQo+ID4gPiA+IG5leHQNCj4gPiA+ID4gPiBwcm90byBpcyB1ZHAuDQo+ID4gPiA+DQo+ID4gPiA+ IEluIG15IG9waW5pb24gUlRFX0ZMT1dfSVRFTV9UWVBFX0lQVjZfRVhUIGlzIGEgYml0IHVzZWxl c3Mgb24gaXRzDQo+ID4gb3duLg0KPiA+ID4gPiBJdCdzIG9ubHkgZm9yIG1hdGNoaW5nIHBhY2tl dHMgdGhhdCBjb250YWluIHNvbWUga2luZCBvZiBleHRlbnNpb24NCj4gPiA+ID4gaGVhZGVyLCBu b3QgYSBzcGVjaWZpYyBvbmUsIG1vcmUgYWJvdXQgdGhhdCBiZWxvdy4NCj4gPiA+ID4NCj4gPiA+ ID4gPiA+IEknbSB3b25kZXJpbmcgaWYgYW55IGRyaXZlciB0cmVhdHMgaXQgdGhpcyB3YXk/DQo+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+IEknbSBub3Qgc3VyZSwgd2UgY2FuIHN1cHBvcnQgb25seSB0 aGUgZnJhZyBleHQgYnkgZGVmYXVsdCwgYnV0DQo+ID4gPiA+ID4gaWYgcmVxdWlyZWQgd2UNCj4g PiA+ID4gY2FuIHN1cHBvcnQgb3RoZXINCj4gPiA+ID4gPiBleHQuDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+IEkgYWdyZWUgdGhhdCB0aGUgcHJvYmxlbSByZWFsbHkgY29tZXMgd2hlbiB3ZSdkIGxp a2UgbWF0Y2gNCj4gPiA+ID4gPiA+IElQdjYgZnJhZ3Mgb3IgZXZlbiB3b3JzZSBub3QgZnJhZ21l bnRzLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFR3byBwYXR0ZXJucyBmb3IgZnJhZ21lbnRz Og0KPiA+ID4gPiA+ID4gICBldGggLyBpcHY2IChwcm90bz1GUkFHTUVOVCkgLyBlbmQNCj4gPiA+ ID4gPiA+ICAgZXRoIC8gaXB2NiAvIGlwdjZfZXh0IChuZXh0X2hkcj1GUkFHTUVOVCkgLyBlbmQN Cj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBBbnkgc2Vuc2libGUgc29sdXRpb24gZm9yIG5vdC1m cmFnbWVudHMgd2l0aCBhbnkgb3RoZXINCj4gPiA+ID4gPiA+IGV4dGVuc2lvbiBoZWFkZXJzPw0K PiA+ID4gPiA+ID4NCj4gPiA+ID4gPiBUaGUgb25lIHByb3Bvc2UgaW4gdGhpcyBtYWlsIPCfmIoN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gSU5WRVJUIGV4aXN0cywgYnV0IGhhcmRseSB1c2VmdWws IHNpbmNlIGl0IHNpbXBseSBzYXlzIHRoYXQNCj4gPiA+ID4gPiA+IHBhdGNoZXMgd2hpY2ggZG8g bm90IG1hdGNoIHBhdHRlcm4gd2l0aG91dCBJTlZFUlQgbWF0Y2hlcyB0aGUNCj4gPiA+ID4gPiA+ IHBhdHRlcm4gd2l0aCBJTlZFUlQgYW5kDQo+ID4gPiA+ID4gPiAgIGludmVydCAvIGV0aCAvIGlw djYgKHByb3RvPUZSQUdNRU5UKSAvIGVuZCB3aWxsIG1hdGNoIEFSUCwNCj4gPiA+ID4gPiA+IElQ djQsDQo+ID4gPiA+ID4gPiBJUHY2IHdpdGggYW4gZXh0ZW5zaW9uIGhlYWRlciBiZWZvcmUgZnJh Z21lbnQgaGVhZGVyIGFuZCBzbyBvbi4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gSSBhZ3JlZSB3 aXRoIHlvdSwgSU5WRVJUIGluIHRoaXMgZG9lc27igJl0IGhlbHAuDQo+ID4gPiA+ID4gV2Ugd2Vy ZSBjb25zaWRlcmluZyBhZGRpbmcgc29tZSBraW5kIG9mIG5vdCBtYXNrIC8gaXRlbSBwZXIgaXRl bS4NCj4gPiA+ID4gPiBzb21lIHRoaW5rIGFyb3VuZCB0aGlzIGxpbmU6DQo+ID4gPiA+ID4gdXNl ciByZXF1ZXN0IGlwdjYgdW5mcmFnbWVudGVkIHVkcCBwYWNrZXRzLiBUaGUgZmxvdyB3b3VsZCBs b29rDQo+ID4gPiA+ID4gc29tZXRoaW5nIGxpa2UgdGhpczoNCj4gPiA+ID4gPiBFdGggLyBpcHY2 IC8gTm90IChJcHY2LnByb3RvID0gZnJhZ19wcm90bykgLyB1ZHAgQnV0IGl0IG1ha2VzDQo+ID4g PiA+ID4gdGhlIHJ1bGVzIG11Y2ggaGFyZGVyIHRvIHVzZSwgYW5kIEkgZG9uJ3QgdGhpbmsgdGhh dCB0aGVyZSBpcw0KPiA+ID4gPiA+IGFueSBIVyB0aGF0IHN1cHBvcnQgbm90LCBhbmQgYWRkaW5n IHN1Y2ggZmVhdHVyZSB0byBhbGwgaXRlbXMgaXMNCj4gb3ZlcmtpbGwuDQo+ID4gPiA+ID4NCj4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gQml0IHN0cmluZyBzdWdnZXN0ZWQgYWJvdmUgd2lsbCBhbGxv dyB0byBtYXRjaDoNCj4gPiA+ID4gPiA+ICAtIFVEUCBvdmVyIElQdjYgd2l0aCBhbnkgZXh0ZW5z aW9uIGhlYWRlcnM6DQo+ID4gPiA+ID4gPiAgICAgZXRoIC8gaXB2NiAoZXh0X2hkcnMgbWFzayBl bXB0eSkgLyB1ZHAgLyBlbmQNCj4gPiA+ID4gPiA+ICAtIFVEUCBvdmVyIElQdjYgd2l0aG91dCBh bnkgZXh0ZW5zaW9uIGhlYWRlcnM6DQo+ID4gPiA+ID4gPiAgICAgZXRoIC8gaXB2NiAoZXh0X2hk cnMgbWFzayBmdWxsLCBzcGVjIGVtcHR5KSAvIHVkcCAvIGVuZA0KPiA+ID4gPiA+ID4gIC0gVURQ IG92ZXIgSVB2NiB3aXRob3V0IGZyYWdtZW50IGhlYWRlcjoNCj4gPiA+ID4gPiA+ICAgICBldGgg LyBpcHY2IChleHQuc3BlYyAmIH5GUkFHTUVOVCwgZXh0Lm1hc2sgfCBGUkFHTUVOVCkgLw0KPiA+ ID4gPiA+ID4gdWRwIC8gZW5kDQo+ID4gPiA+ID4gPiAgLSBVRFAgb3ZlciBJUHY2IHdpdGggZnJh Z21lbnQgaGVhZGVyDQo+ID4gPiA+ID4gPiAgICAgZXRoIC8gaXB2NiAoZXh0LnNwZWMgfCBGUkFH TUVOVCwgZXh0Lm1hc2sgfCBGUkFHTUVOVCkgLw0KPiA+ID4gPiA+ID4gdWRwIC8gZW5kDQo+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gd2hlcmUgRlJBR01FTlQgaXMgMSA8PCBJUFBST1RPX0ZSQUdN RU5ULg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiBQbGVhc2Ugc2VlIG15IHJlc3BvbnNlIHJlZ2Fy ZGluZyB0aGlzIGFib3ZlLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBBYm92ZSBJIGludGVudGlv bmFsbHkga2VlcCAncHJvdG8nIHVuc3BlY2lmaWVkIGluIGlwdjYgc2luY2UNCj4gPiA+ID4gPiA+ IG90aGVyd2lzZSBpdCB3b3VsZCBzcGVjaWZ5IHRoZSBuZXh0IGhlYWRlciBhZnRlciBJUHY2IGhl YWRlci4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBFeHRlbnNpb24gaGVhZGVycyBtYXNrIHNo b3VsZCBiZSBlbXB0eSBieSBkZWZhdWx0Lg0KPiA+ID4gPg0KPiA+ID4gPiBUaGlzIGlzIGEgZGVs aWJlcmF0ZSBkZXNpZ24gY2hvaWNlL2lzc3VlIHdpdGggcnRlX2Zsb3c6IGFuIGVtcHR5DQo+ID4g PiA+IHBhdHRlcm4gbWF0Y2hlcyBldmVyeXRoaW5nOyBhZGRpbmcgaXRlbXMgb25seSBuYXJyb3dz IHRoZSBzZWxlY3Rpb24uDQo+ID4gPiA+IEFzIEFuZHJldyBzYWlkIHRoZXJlIGlzIGN1cnJlbnRs eSBubyB3YXkgdG8gcHJvdmlkZSBhIHNwZWNpZmljDQo+ID4gPiA+IGl0ZW0gdG8gcmVqZWN0LCBp dCBjYW4gb25seSBiZSBkb25lIGdsb2JhbGx5IG9uIGEgcGF0dGVybiB0aHJvdWdoDQo+ID4gPiA+ IElOVkVSVCB0aGF0IG5vDQo+ID4gPiBQTUQgaW1wbGVtZW50cyBzbyBmYXIuDQo+ID4gPiA+DQo+ ID4gPiA+IFNvIHdlIGhhdmUgdHdvIHJlcXVpcmVtZW50cyBoZXJlOiB0aGUgYWJpbGl0eSB0byBz cGVjaWZpY2FsbHkNCj4gPiA+ID4gbWF0Y2gNCj4gPiA+ID4gSVB2NiBmcmFnbWVudCBoZWFkZXJz IGFuZCB0aGUgYWJpbGl0eSB0byByZWplY3QgdGhlbS4NCj4gPiA+ID4NCj4gPiA+ID4gVG8gbWF0 Y2ggSVB2NiBmcmFnbWVudCBoZWFkZXJzLCB3ZSBuZWVkIGEgZGVkaWNhdGVkIHBhdHRlcm4gaXRl bS4NCj4gPiA+ID4gVGhlIGdlbmVyaWMgUlRFX0ZMT1dfSVRFTV9UWVBFX0lQVjZfRVhUIGlzIHVz ZWxlc3MgZm9yIHRoYXQgb24gaXRzDQo+ID4gPiA+IG93biwgaXQgbXVzdCBiZSBjb21wbGV0ZWQg d2l0aA0KPiBSVEVfRkxPV19JVEVNX1RZUEVfSVBWNl9FWFRfRlJBRw0KPiA+IGFuZA0KPiA+ID4g YXNzb2NpYXRlZA0KPiA+ID4gPiBvYmplY3QNCj4gPiA+DQo+ID4gPiBZZXMsIHdlIG11c3QgYWRk IEVYVF9GUkFHIHRvIGJlIGFibGUgdG8gbWF0Y2ggb24gdGhlIEZSQUcgYml0cy4NCj4gPiA+DQo+ ID4NCj4gPiBQbGVhc2Ugc2VlIHByZXZpb3VzIFJGQyBJIHNlbnQuDQo+ID4gW1JGQ10gZXRoZGV2 OiBhZGQgSVB2NiBmcmFnbWVudCBleHRlbnNpb24gaGVhZGVyIGl0ZW0NCj4gPiBodHRwOi8vbWFp bHMuZHBkay5vcmcvYXJjaGl2ZXMvZGV2LzIwMjAtTWFyY2gvMTYwMjU1Lmh0bWwNCj4gPiBJdCBp cyBjb21wbGVtZW50ZWQgYnkgdGhpcyBSRkMuDQo+ID4NCj4gPiA+ID4gdG8gbWF0Y2ggaW5kaXZp ZHVhbCBmaWVsZHMgaWYgbmVlZGVkIChsaWtlIGFsbCB0aGUgb3RoZXJzDQo+ID4gPiA+IHByb3Rv Y29scy9oZWFkZXJzKS4NCj4gPiA+ID4NCj4gPiA+ID4gVGhlbiB0byByZWplY3QgYSBwYXR0ZXJu IGl0ZW0uLi4gTXkgcHJlZmVyZW5jZSBnb2VzIHRvIGEgbmV3ICJOT1QiDQo+ID4gPiA+IG1ldGEg aXRlbSBhZmZlY3RpbmcgdGhlIG1lYW5pbmcgb2YgdGhlIGl0ZW0gY29taW5nIGltbWVkaWF0ZWx5 DQo+ID4gPiA+IGFmdGVyIGluIHRoZSBwYXR0ZXJuIGxpc3QuIFRoYXQgd291bGQgYmUgdWx0cmEg Z2VuZXJpYywgd291bGRuJ3QNCj4gPiA+ID4gYnJlYWsgYW55IEFCSS9BUEkgYW5kIGxpa2UgSU5W RVJULCB3b3VsZG4ndCBldmVuIHJlcXVpcmUgYSBuZXcNCj4gPiA+ID4gb2JqZWN0IGFzc29jaWF0 ZWQNCj4gPiA+IHdpdGggaXQuDQo+ID4gPiA+DQo+ID4gPiA+IFRvIG1hdGNoIFVEUHY2IHRyYWZm aWMgd2hlbiB0aGVyZSBpcyBubyBmcmFnbWVudCBoZWFkZXIsIG9uZSBjb3VsZA0KPiA+ID4gPiB0 aGVuIGRvIHNvbWV0aGluZyBsaWtlOg0KPiA+ID4gPg0KPiA+ID4gPiAgZXRoIC8gaXB2NiAvIG5v dCAvIGlwdjZfZXh0X2ZyYWcgLyB1ZHANCj4gPiA+ID4NCj4gPiA+ID4gUE1EIHN1cHBvcnQgd291 bGQgYmUgdHJpdmlhbCB0byBpbXBsZW1lbnQgKEknbSBzdXJlISkNCj4gPiA+ID4NCj4gPiA+IEkg YWdyZWUgd2l0aCB5b3UgYXMgSSBzYWlkIGFib3ZlLiBUaGUgaXNzdWUgaXMgbm90IFBNRCwgdGhl IGlzc3VlcyBhcmU6DQo+ID4gPiAxLiB0aGluayBhYm91dCB0aGUgcnVsZSB5b3Ugc3RhdGVkIGFi b3ZlIGZyb20gbG9naWMgcG9pbnQgdGhlcmUgaXMNCj4gPiA+IHNvbWUgY29udHJhZGljdGlvbiwg eW91IGFyZSBzYXlpbmcgaXB2NiBuZXh0IHByb3RvIHVkcCBidXQgeW91IGFsc28NCj4gPiA+IHNh eSBub3QgZnJhZywgdGhpcyBpcyBsb2dpYyBvbmx5IGZvciBJUFY2IGV4dC4NCj4gPiA+IDIuIEhX IGlzc3VlLCBJIGRvbid0IGtub3cgb2YgSFcgdGhhdCBrbm93cyBob3cgdG8gc3VwcG9ydCBub3Qg b24gYW4NCj4gaXRlbS4NCj4gPiA+IFNvIGFkZGluZyBzb21ldGhpbmcgZm9yIGFsbCBpdGVtcyBm b3Igb25seSBvbmUgY2FzZSBpcyBvdmVya2lsbC4NCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+ ID4gV2UgbWF5IGxhdGVyIGltcGxlbWVudCBvdGhlciBraW5kcyBvZiAib3BlcmF0b3IiIGl0ZW1z IGFzIEFuZHJldw0KPiA+ID4gPiBzdWdnZXN0ZWQsIGZvciBiaXQtd2lzZSBzdHVmZiBhbmQgc28g b24uIExldCdzIGtlZXAgYWRkaW5nDQo+ID4gPiA+IGZlYXR1cmVzIG9uIGEgbmVlZGVkIGJhc2lz IHRob3VnaC4NCj4gPiA+ID4NCj4gPiA+ID4gLS0NCj4gPiA+ID4gQWRyaWVuIE1hemFyZ3VpbA0K PiA+ID4gPiA2V0lORA0KPiA+ID4NCj4gPiA+IEJlc3QsDQo+ID4gPiBPcmkNCg==