From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3AB5042BA9 for ; Fri, 26 May 2023 10:05:40 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 32265410FA; Fri, 26 May 2023 10:05:40 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2041.outbound.protection.outlook.com [40.107.94.41]) by mails.dpdk.org (Postfix) with ESMTP id CE26640DDA; Fri, 26 May 2023 10:05:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jZHgbECvWY/qMR4sFxH/c2rdnQ4Ceg2qrCTKHlsZvIJtyNgHsU1nlhV4oxklClAkOLI79K2eTlrIezIcGHb0BJsEJdmHxpYi1oplrwptuX+YlKk/Tz+akh2jN2cbWuQDE5oTGPpbgr/4SOpNXcHkZILcUg6u50/jvKRhyISVGIgqQn4cDbqjVNLXsG1p61BmMn2GTyWWZI00mvdd9pB7fi2EkTNOGRly2thA+aE7kPoF2mAcs+Xh19tOq2Pfh6kRFzEPyvEEBWCesCliunDil/uEKA88XgweRtx3VUpRhnRtkuIR9/ccg7VBC+x3I4rGzgTTj3NKNMSl0haUxSqxFw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=xELQr/idbTiX2Q19M9AQ9PfgzpdblYO6ER+ORtoPvXg=; b=Rk1ZGg//NvpsWL3KiDCajRkFMNPdvDag4wg40FjZrlYlIHjN0g6NqRUjiDZV6nnIOOeX1oDO3VY6GXVXQZKbVAeQJNr3OSxXJZqhAhoVNLxoZJbVtESI5rdGnzFGTeFvRDc49uzsvrMjvVS15HuVH+Mi6zBDLHIgtkEdbc4mjL7bEurvf1xjV/2WA/PKYOjnzzzHONPqyJ0vMVNrsH0gX2badlrIlf+11yxDVohurgeYhgFgO2vBSDZwH5xGjyakcKrBCqV8MPVW+s1ZPLxIPb58BoaLy38NUSiB+fFLfEuHzbVw6XKtph8GmoMl8K5KDX19TDajAv7FOTE7ggW0Mg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xELQr/idbTiX2Q19M9AQ9PfgzpdblYO6ER+ORtoPvXg=; b=V3KXfRorpiwle3siU3W72wqiQEYN6jX2mpV5H1GPjHqit4l8YsryPM7ySZakyREPJxvUTguLhFIwNtv7f+gRH3DoMTA7pCZgangkdjnIBaHsimBQJBDGRY+X+cbqLCkQNwGXnlpZoqtBFs8L0SRzl+01Qez7YN/vwriudcFuFAaPH+yv+XdFivJa5AoHi54ApxyF2OOlZR0Qe5By4ypw0e0iaen/yLdVzO9Rce5auKDKpiOXBmFoZOnNeptMExZCtX09sUAqkxlnrOdRKi9GdumzRoy/ytP2qZf+NHxYZqoc1LNmqBbZUtC4daNpVRK3uLAS6zGXh4oyVSadnRZDsg== Received: from DM6PR12MB3753.namprd12.prod.outlook.com (2603:10b6:5:1c7::18) by MN6PR12MB8492.namprd12.prod.outlook.com (2603:10b6:208:472::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.18; Fri, 26 May 2023 08:05:34 +0000 Received: from DM6PR12MB3753.namprd12.prod.outlook.com ([fe80::ab87:3bac:b8e:a23d]) by DM6PR12MB3753.namprd12.prod.outlook.com ([fe80::ab87:3bac:b8e:a23d%3]) with mapi id 15.20.6433.018; Fri, 26 May 2023 08:05:34 +0000 From: Slava Ovsiienko To: Stephen Hemminger CC: Erez Ferber , "dev@dpdk.org" , Matan Azrad , Raslan Darawsheh , "stable@dpdk.org" Subject: RE: [PATCH] common/mlx5: adjust fork call with the new kernel API Thread-Topic: [PATCH] common/mlx5: adjust fork call with the new kernel API Thread-Index: AQHZjjehQ1BI7EMvH0SkYKpM3IDy3a9pgaeAgAEheDCAAHtmgIABE92A Date: Fri, 26 May 2023 08:05:34 +0000 Message-ID: References: <20230524120140.416144-1-erezf@nvidia.com> <20230524075013.3c2f7b6e@hermes.local> <20230525082756.630ab7f6@hermes.local> In-Reply-To: <20230525082756.630ab7f6@hermes.local> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR12MB3753:EE_|MN6PR12MB8492:EE_ x-ms-office365-filtering-correlation-id: 7dd3fba5-7e44-4829-80cd-08db5dbffb9b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1GEAVqNHZfkwRXoHQ9tJ+ycrk+ULBkvHfaodEyCEhCe9MyBt2RNJb1EEBIc7iUJAR3snMYwowdWtoNQbB+YX8evG3UJa7Muz2a99eCKW4Lr9B0CYfpEWJMGtI9fC5J7jUNy1l/1Kpo34LpB1oSxeen7JQU/PdAJ0Ybe/agEnsErY7tcMz0aLa+ffvbTQgpGCZTMC56LCHlmtITGzZHzqSRM0sybWAJP4no/v590HYOR9801E7dIkEXP4WHM/BOaeV0geyhqMFRkqf+Clz9Vkvr0JNrW5YKwWBYDbczMqc6qZEiXtNqHr8IMyOdfe2Ow7pgBH7qjb46YorAAVDV3ZiVxEeQ2D/lgG+RpKlA88aTPwQe39ixF7emfpP4L3X1JKDeq0mqquDZEzL/v2UA6fLzuXyygjKEiQoC/dbnB/+F0kg4o0Gvkv8769TLuoeUgfdTJ8OBK9B1niovFuCtgDd2kRG66wJ6EXymrk799ASwE8C4/azJY7APsixY8O18fEgcLySQu+fkQx6XpQABqcxyNC34ujB0lNGZ1mNlMQVSyhWU3/OVJ8BRHtoGLFqkggbRD9UkLouFAcZKvD1BxMStrbU1oPmLfdMO2+xXrHLA7raq0139l6gKiu+tiqYTdR x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR12MB3753.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(366004)(396003)(346002)(39860400002)(136003)(376002)(451199021)(86362001)(38070700005)(2906002)(186003)(66946007)(4326008)(76116006)(41300700001)(66556008)(66476007)(66446008)(64756008)(6916009)(6506007)(9686003)(53546011)(26005)(83380400001)(8936002)(5660300002)(33656002)(8676002)(38100700002)(52536014)(55016003)(71200400001)(122000001)(7696005)(316002)(478600001)(54906003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?L0hlcmdzRmlWRVNVSEpsMitnS3J5dnR0UGF0YnpNR3FIOCtwQzNXazErTjA0?= =?utf-8?B?MHBuL25RWS8zSkZ4ZFNnWWFlV1REZGQ1dXFsSGVnc3hDdEJDcEJjay9mcm1i?= =?utf-8?B?bHZGb1lFSThuSjM0UW5pR3FtMW43ejNTT1ZBdmlRbWtkem53dkVjTFdVMWlV?= =?utf-8?B?NHE4NUthVDBGWnNKZHUzNXM0azFHWDRtbW1oekEyZ1ZOdnJONnhVVFpBQllr?= =?utf-8?B?NWVTSlpvUHhvZlZpUFIwQ3BGSW9wS20rNXZ1Mm1PUjRQNWlic2YwdWpxV2Nu?= =?utf-8?B?ckJqeE55eE5yOG16OWlQMndYWm5aTTNDQ080L2hNTzNTR3p3TG8vNlg3dU5w?= =?utf-8?B?QTdOc3lNeVpvaGFVMWlocHd0b1A0Z0pOSkR5VForKzFxaUIzOWdQcnhUUUo4?= =?utf-8?B?Wm1PNUxhUXNBRUdPeW5hQVpXQ2NISE9xcFpCbmJkdWFnMjNXVVZ2RWhrYVBy?= =?utf-8?B?S1NyZzFGTzAwdWxpK3pEWXNGdWZJUVhJeGE5ZkNrYXFrdE56OUNHNkZkbWFE?= =?utf-8?B?R2xVaURzdVQvYkh2UFU1SmY2N0ZkNXJMdTZuNUNBVjc3MkV2Vyt1Qlcwdll1?= =?utf-8?B?cXZGRWtmcEZWVUU4VTl4dW1EamFPeVdxRW5rSUN5ZlEyWlZBVDhDVlRNV3pF?= =?utf-8?B?amhRS1FyVUZ3Wno2WmFSOERzaUh5b3N4aCs0WHBaWjJNVW9kSDdNOW1RYndp?= =?utf-8?B?U0lvUjVlK21QZU8xNmRVVDRSVlZNYlB3NXBJZDVWRkIrTlNjRlRhUFJSVzNh?= =?utf-8?B?UjYwZGFSOG5Gd3VHNWQ4VE84M0hXVTBuUjJNU3Y5bFZmLzlWVjd3b3V1bGFX?= =?utf-8?B?MFFlanF6dng1K1V6elNWM0xmNFZkUW56VENPcWtYalYrN3RJclBrZHpTay9h?= =?utf-8?B?Mm9OZlRwQnJsMzFKUGgzcEdjckhycytncS9qTnFIMzVKRThrOFhvVklkVEk1?= =?utf-8?B?N0kwSkxHdTVleVhicDRRL2E4ZFBMaEVTaDNSRHJtYlpUYW9FUGlKU0xxdm54?= =?utf-8?B?a3NwNE9HejFhVTNXdmQzWFl2NWM2WmxFL0JKMktQQUV4MmZySkxPaWVqTXk5?= =?utf-8?B?M0k4U3RYaDdZM01KT2pUei9HWUQyb1VMZlB5TllDN2JFYTVUYUlFZUkra0ps?= =?utf-8?B?b01YUzVaWHU4M0t1V0thMi8wcEF4U1ZCRGVPQmxUcHZRaW5FeWJUOGtxL2Ju?= =?utf-8?B?ejd6dlNETGNkMkRKZm52ZERreGJIbFY3RUMzbG1NWnNia2xsYTZENGo4YUIx?= =?utf-8?B?akJQVVI4THhYM3lHaS9RZ3RhZHNRWkd2OStQZmlJMWEyUW1iOTY4NEl1SzMr?= =?utf-8?B?M3B3dlZMb0U3NlJGRWpCTlRwUnUrT0tnVTdndFJpVjd5b25aeXU3RW1NYUpW?= =?utf-8?B?czcvbGo1WEJwS2tlOWM3eUZ6U2RlZURpTit0Q2xoY3VPcks4ZDFPS05FYmNa?= =?utf-8?B?UFJjMkRhbVFCYjUxZVJCUzJtdzVQSmRVZTlZcVdFNFAxUEhEKzh5WmxWNEJP?= =?utf-8?B?dUl4MWxqZlJwMlUrQ3VsaXdadzVSQ0x2T2N5cFROVDVwNEN6U21yY3NtdCtl?= =?utf-8?B?aVk3ZVFLSWhtUzFKdDR0c1FJemVPMVpEMkdTL1Z1NFJMd1pHR1VPZWFJd2hD?= =?utf-8?B?Ym5VZERUYjd2amtGa3VudDR3UTRaVGQwdWxyQm8vY2swUTlWMzFBbmd3eXhy?= =?utf-8?B?aEF1SzVpeHdhWlhYVGNRazdnaTVvYUwvUzhieStSZzNmUzhGY0c3UTY3eUV0?= =?utf-8?B?NlovR2J3UzFHNmtUYmp4S003OWFEN002eG9VOElKaWZBa25RZkxmZE5sNEdN?= =?utf-8?B?c09xRzdwajVmaUVISHlEa2EvMFA2djFtNFhQN0xsV0NkR3JaUWxYVjFKRFoy?= =?utf-8?B?SlJJMnM0MHZVOEVxT3g2OXBjZTl0TnJScXEyOHNDL2hjN1hZT1pYRi9kdXQw?= =?utf-8?B?V0lSUDhLbTl6Mk53dTZETVAwNUNqVFpxQlF1N0VpQWpuTml4UVVkYnhuQ3lx?= =?utf-8?B?NjRCVmVOYlZlTGxNMTVndlQ0djlwRkR2aGtiYlkyNUh4bmIzMVJ2VnpFUHp5?= =?utf-8?B?ZDZpemx6ZmJMeWFBTk1mdUtpRkVDMTRYWVA3QzFtMnJUOVZuZk1SQ1dqeHhi?= =?utf-8?Q?qEveDPQpsAJWHCaStQskMzopi?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB3753.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7dd3fba5-7e44-4829-80cd-08db5dbffb9b X-MS-Exchange-CrossTenant-originalarrivaltime: 26 May 2023 08:05:34.3874 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: aj8ka0aB8tcIiDG4/+D1K/3gNEGoZQP02n6Sb7Uq0W3F7DE7s0v2WiA2TchJx6O8iSHbozVsYO4Sjzs0cGoE8A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN6PR12MB8492 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBTdGVwaGVuIEhlbW1pbmdlciA8 c3RlcGhlbkBuZXR3b3JrcGx1bWJlci5vcmc+DQo+IFNlbnQ6IFRodXJzZGF5LCBNYXkgMjUsIDIw MjMgNjoyOCBQTQ0KPiBUbzogU2xhdmEgT3ZzaWllbmtvIDx2aWFjaGVzbGF2b0BudmlkaWEuY29t Pg0KPiBDYzogRXJleiBGZXJiZXIgPGVyZXpmQG52aWRpYS5jb20+OyBkZXZAZHBkay5vcmc7IE1h dGFuIEF6cmFkDQo+IDxtYXRhbkBudmlkaWEuY29tPjsgUmFzbGFuIERhcmF3c2hlaCA8cmFzbGFu ZEBudmlkaWEuY29tPjsNCj4gc3RhYmxlQGRwZGsub3JnDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0hd IGNvbW1vbi9tbHg1OiBhZGp1c3QgZm9yayBjYWxsIHdpdGggdGhlIG5ldyBrZXJuZWwgQVBJDQo+ IA0KPiBPbiBUaHUsIDI1IE1heSAyMDIzIDA4OjEwOjAzICswMDAwDQo+IFNsYXZhIE92c2lpZW5r byA8dmlhY2hlc2xhdm9AbnZpZGlhLmNvbT4gd3JvdGU6DQo+IA0KPiA+ID4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gPiA+IEZyb206IFN0ZXBoZW4gSGVtbWluZ2VyIDxzdGVwaGVuQG5l dHdvcmtwbHVtYmVyLm9yZz4NCj4gPiA+IFNlbnQ6IFdlZG5lc2RheSwgTWF5IDI0LCAyMDIzIDU6 NTAgUE0NCj4gPiA+IFRvOiBFcmV6IEZlcmJlciA8ZXJlemZAbnZpZGlhLmNvbT4NCj4gPiA+IENj OiBkZXZAZHBkay5vcmc7IFNsYXZhIE92c2lpZW5rbyA8dmlhY2hlc2xhdm9AbnZpZGlhLmNvbT47 IE1hdGFuDQo+ID4gPiBBenJhZCA8bWF0YW5AbnZpZGlhLmNvbT47IFJhc2xhbiBEYXJhd3NoZWgg PHJhc2xhbmRAbnZpZGlhLmNvbT47DQo+ID4gPiBzdGFibGVAZHBkay5vcmcNCj4gPiA+IFN1Ympl Y3Q6IFJlOiBbUEFUQ0hdIGNvbW1vbi9tbHg1OiBhZGp1c3QgZm9yayBjYWxsIHdpdGggdGhlIG5l dw0KPiA+ID4ga2VybmVsIEFQSQ0KPiA+ID4NCj4gPiA+IE9uIFdlZCwgMjQgTWF5IDIwMjMgMTU6 MDE6NDAgKzAzMDANCj4gPiA+IDxlcmV6ZkBudmlkaWEuY29tPiB3cm90ZToNCj4gPiA+DQo+ID4g PiA+IEZyb206IEVyZXogRmVyYmVyIDxlcmV6ZkBudmlkaWEuY29tPg0KPiA+ID4gPg0KPiA+ID4g PiBXaGlsZSBkb2luZyBwcm9jZXNzIGZvcmsoKSB0aGUgb3BlcmF0aW5nIHN5c3RlbSByZW1hcHMg YWxsIHRoZQ0KPiA+ID4gPiBwYXJlbnQgcHJvY2VzcydzIG1lbW9yeSB0byB0aGUgYWRkcmVzcyBz cGFjZSBvZiB0aGUgY2hpbGQgcHJvY2Vzcw0KPiA+ID4gPiBhbmQgYWN0aXZhdGVzIHRoZSBDb3B5 LW9uLVdyaXRlIG1lY2hhbmljcyAtIGl0IGR1cGxpY2F0ZXMgcGh5c2ljYWwNCj4gPiA+ID4gcGFn ZXMgb25jZSBtZW1vcnkgd3JpdGluZyBoYXBwZW5zIGluIHRoZSBjaGlsZCBwcm9jZXNzLiBTb21l dGltZXMNCj4gPiA+ID4gbWVtb3J5IGR1cGxpY2F0aW9uIGlzIG5vdCBhbGxvd2VkIC0gZm9yIGV4 YW1wbGUsIGlmIHRoZSBwYWdlDQo+ID4gPiA+IGNvbnRhaW5zIGhhcmR3YXJlIHF1ZXVlIGRlc2Ny aXB0b3JzLiBUbyBoYW5kbGUgc2ltaWxhciBpc3N1ZXMgdGhlDQo+ID4gPiA+IHJkbWEtY29yZSBs aWJyYXJ5IHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgZm9ya2luZy4NCj4gPiA+ID4NCj4gPiA+ID4g VGhlIGlidl9mb3JrX2luaXQoKSBwcmVwYXJlcyB0aGUgbGlicmFyeSB0byB0cmFjayBhbGwgdGhl IHJlbGF0ZWQNCj4gPiA+ID4gbWVtb3J5IGFuZCBwcmV2ZW50IGl0IGZyb20gZm9ya2luZyB1c2lu ZyBtYWR2aXNlKCkgc3lzdGVtIEFQSS4NCj4gPiA+ID4gVGhpcyBhcHByb2FjaCBhbGxvd3MgZm9y aywgYnV0IG5vdCBhbGwgdGhlIG1lbW9yeSBpcyBmb3JrZWQgdG8gdGhlDQo+ID4gPiA+IGNoaWxk IHByb2Nlc3MgYW5kLCBhcHBsaWNhdGlvbiBzaG91bGQgY2FyZSBub3QgdG8gdG91Y2ggcGFnZXMN Cj4gPiA+ID4gd2hlcmUgdGhlIHBhcmVudCBhcHBsaWNhdGlvbiBhbGxvY2F0ZWQgdGhlIHJkbWEt Y29yZSBvYmplY3RzLg0KPiA+ID4gPg0KPiA+ID4gPiBUaGUgbmV3ZXIga2VybmVscyBwcm9wb3Nl IGFuIG9wdGlvbiBvZiBjb3B5LW9uLWZvcmsgZm9yIERNQSBwYWdlcw0KPiA+ID4gPiBhbmQgdHJh Y2tpbmcgYWxsIHRoZSBtZW1vcnkgYW5kIGRpc2FibGluZyBpdCBmb3IgdGhlIGZvcmtpbmcgaXMg bm8NCj4gPiA+ID4gbG9uZ2VyIG5lZWRlZC4gVGhlIG5ldyBBUEkgcm91dGluZSBpYnZfaXNfZm9y a19pbml0aWFsaXplZCgpDQo+ID4gPiA+IHNob3VsZCBiZSBpbnZvbHZlZCB0byBkZWNpZGUgaWYg bGlicmFyeSBpbml0aWFsaXphdGlvbiBmb3IgZm9ya2luZyBpcw0KPiByZXF1aXJlZC4NCj4gPiA+ ID4NCj4gPiA+ID4gRml4ZXM6IDBlODNiOGU1MzYgKCJuZXQvbWx4NTogbW92ZSByZG1hLWNvcmUg Y2FsbHMgdG8gc2VwYXJhdGUNCj4gPiA+ID4gZmlsZSIpDQo+ID4gPiA+IENjOiBzdGFibGVAZHBk ay5vcmcNCj4gPiA+ID4gU2lnbmVkLW9mZi1ieTogRXJleiBGZXJiZXIgPGVyZXpmQG52aWRpYS5j b20+DQo+ID4gPg0KPiA+IEhpLA0KPiA+DQo+ID4gPiBJIGRvbid0IHRoaW5rIERQREsgYXBwbGlj YXRpb25zIHNob3VsZCBmb3JrKCksIGFuZCBsb3RzIG90aGVyIHBhcnRzDQo+ID4gPiBvZiB0aGUg c2hhcmVkIGh1Z2UgcGFnZXMgd2lsbCBicmVhayBpZiBhbiBhcHBsaWNhdGlvbiBkb2VzIHRoaXMu DQo+ID4NCj4gPiBJIGFncmVlIC0gYXBwbGljYXRpb24gc2hvdWxkIG5vdCwgd2UgaGF2ZSB0aGUg c2Vjb25kYXJ5L3ByaW1hcnkgcHJvY2Vzc2VzDQo+IGFwcHJvYWNoLg0KPiA+IE5vbmV0aGVsZXNz LCB3ZSBoYXZlIHRoZSByZWFsIHVzZSBjYXNlIC0gRFBESyBhcHBsaWNhdGlvbiBkb2VzIGZvcmso KSBhbmQNCj4gd29ya3Mgd2VsbC4NCj4gPiBXaXRob3V0IG1seDUgUE1EIPCfmIouIFdpdGggbWx4 NSBpdCByYW4gaW50byBzb21lIHRyb3VibGVzLiBOb3cgd2UgaGF2ZQ0KPiB0aGUgc29sdXRpb24u DQo+IA0KPiBUaGUgcHJvYmxlbSBpcyB5b3UgYXJlIGFsbG93aW5nIGZvcmsoKS4gQW5kIG1hbnkg b3RoZXIgbGlicmFyaWVzIG1heSBicmVhay4NCj4gSW1hZ2luZSBhIERQREsgbGlicmFyeSB3aGlj aCBoYXMgc29tZSBsb2NhbCBtdXRleCBhbmQgaHVnZXBhZ2VzLg0KPiBJZiB0d28gZm9ya2VkIHBy b2Nlc3NlcyB1c2UgaXQgdGhlbiB0aGUgbG9ja3Mgd29uJ3Qgd29yayBhbmQgaHVnZXBhZ2UgZGF0 YQ0KPiB3aWxsIGJlIGNvcnJ1cHRlZC4NCg0KSU1PLCB0aGlzIHByb2JsZW0gaXMgbm90IGZvcmso KSBzcGVjaWZpYyAtIGFwcGxpY2F0aW9ucy9saWJyYXJpZXMgc3VwcG9ydGluZyANCnNlY29uZGFy eS9wcmltYXJ5IHByb2Nlc3MgYXBwcm9hY2ggc2hvdWxkIGJlIGRldmVsb3BlZCB3aXRoIHRoZSBz aW1pbGFyDQpwcmVjYXV0aW9ucy4NCg0KQW5kLCBJSVJDLCBmb3JrKCkgaXMgbmVpdGhlciBkaXNh bGxvd2VkIG5vciBkaXNjb3VyYWdlZCBpbiBEUERLIGRvY3VtZW50YXRpb24uDQpNb3Jlb3Zlciwg c29tZSBsaWJyYXJ5IHVuaXQgdGVzdHMgZW5zdXJlIGZvcmsoKSB3b3Jrcy4gTm8gd29uZGVyIHVz ZXJzDQptYXkgZGV2ZWxvcCBhcHBsaWNhdGlvbnMgdXNpbmcgZm9yaygpLiBUaGV5IGRvLCBhbmQg YXBwIHdvcmtzIHdlbGwsIGJlc2lkZSBtbHg1IFBNRC4NCkFsc28sIHRoZSByZWNvbW1lbmRhdGlv bnMgdG8gcmUtZGVzaWduIHdpdGggcHJpL3NlYyBhcHByb2FjaCB3YXMgZ2l2ZW4uDQoNCldpdGgg YmVzdCByZWdhcmRzLA0KU2xhdmENCiANCg0KDQo=