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 EE7AAA034C; Wed, 21 Dec 2022 13:05:04 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D5F6A40A7F; Wed, 21 Dec 2022 13:05:04 +0100 (CET) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2067.outbound.protection.outlook.com [40.107.220.67]) by mails.dpdk.org (Postfix) with ESMTP id AB9D340A7A for ; Wed, 21 Dec 2022 13:05:03 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OdeqIuDlmVwxsfto4bsvM8HEzwXAWUVpWJJGS6OZHbzlkK4nR4M+OPeLS62IsFmryUlgqjeRwf2wALzMBfHxEXg2d5KfCBPT7iuSRgzAmShpsUEvofio8XuDkoa6jJIRm2ermiwFeUfxvBvO0GXf09sW07/zsJ2F8RsCxbQfskk9Ru//o0r+cVuH9L58BMF0TFfJo8ctXF8LLXYQ/pgiU8PDvwc27ZZGDISltFEBtdiMOv5jvXXPMyW8XJ0FZ5BzMKkCbMDIuceXVlL70KhYqFYnG24/bajfilNW4Ai8EFSmZy0U5dTeX/GambSO6GRb0DZGFBmYDB89Ro3K0Joe6A== 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=b1cnAcnpz6U4TzCC0eO28VU2vPA6FyFPQkSpQOQ5k2U=; b=Po38GOUdP8XUBJ5T5mc5SYX3dj04FNlR1nvV81B0mj8+isWOTrhxeKainfnACR10RZxL5stfS5S/TQzQjjBpK84pVVUIe0l1iQ+Wkif3AhAIJZ8SQxIcOfISOdVAsOXSEQ66B+rBfmgxSvcGtn2B4MgJju2jXqzOphaUBpF9uve/IjiVnrAIJgA8JwfXlHx6tk+ZoPyvssGufJk9x95Wq9PfEiAYMN5SLgt+iiUHr/e1XdV1aDtlWM3boynI3Pq0pKv69h3hv/FbkOssnBLeXzngAKnvhuQsNV6jWDHWzpOVOPr7MVgndNjbVEYOjr/DpC6OkU6a31yhslkYYBWWlA== 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=b1cnAcnpz6U4TzCC0eO28VU2vPA6FyFPQkSpQOQ5k2U=; b=kh1d5s2IhMZXniPKPQ3+3YpI8HCYDbbVO5shwYEFyaVu6IFXFiDHurrwvtVZQQId1a2THSkRnIgV7qh19pwPXCVeRX6XdGoxYsRIkPpssofiHLUWiGiqvd5INsiTFYr0n6Kg73ElZ5BQ6aT/spfBZ3PCevlbGShsn3Gbby59llOVZS1nX4RPAMXnXcQmWA+T25E2fNG3VKLKHoGFCf+GcgUtNcTKHEJblO/14mPoGG1gbHUKGS7ZiRd3yfeHrbV14i5dbN36JufzMZemUUJb3IXQH6/1D9M/hIBOa7b3r5nw28w3IP9KQ480Mkj2iRLx1iZI3YVdEyuZMFffJdgZrQ== Received: from BN9PR12MB5273.namprd12.prod.outlook.com (2603:10b6:408:11e::22) by DM4PR12MB5359.namprd12.prod.outlook.com (2603:10b6:5:39e::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5924.16; Wed, 21 Dec 2022 12:05:01 +0000 Received: from BN9PR12MB5273.namprd12.prod.outlook.com ([fe80::c7ec:b36b:cd8c:48b6]) by BN9PR12MB5273.namprd12.prod.outlook.com ([fe80::c7ec:b36b:cd8c:48b6%3]) with mapi id 15.20.5924.016; Wed, 21 Dec 2022 12:05:01 +0000 From: Rongwei Liu To: Jerin Jacob CC: Matan Azrad , Slava Ovsiienko , Ori Kam , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Ferruh Yigit , Andrew Rybchenko , "dev@dpdk.org" , Raslan Darawsheh Subject: RE: [RFC v3 2/2] ethdev: add API to set process to active or standby Thread-Topic: [RFC v3 2/2] ethdev: add API to set process to active or standby Thread-Index: AQHZFRrB1sypb2CUskudWNEf9hQD1q54DqAAgAABBPCAABzcAIAADmmw Date: Wed, 21 Dec 2022 12:05:01 +0000 Message-ID: References: <20221205215416.7ac53a55@hermes.local> <20221221090017.3715030-1-rongweil@nvidia.com> <20221221090017.3715030-3-rongweil@nvidia.com> In-Reply-To: Accept-Language: zh-CN, 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: BN9PR12MB5273:EE_|DM4PR12MB5359:EE_ x-ms-office365-filtering-correlation-id: 43074cce-a15b-4c8a-8ae1-08dae34b9695 x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xjQEoMiTxKe82OlJ2B5QrbI1d5mEwKKoUkblTMdgQkp3Djs3bz4X3h5XWtZyEJIjrJ8XFidAUffWja7HQMu6+lUVAZgw54I2qbc/E6RQVetq5dK1gufTyqCBALiFfw3g8nWXv/5Am8HYY4f23dBSmARvEApwK2U0s2sVchoAqWZacmLgrzDKxbn0QinKtB/WibN6qnybnuINQOHOxUmtBXAzX7nz6OT6HGeZv0vwTjyjSEX4ZyQiEJSyXT37kur18yV7aNAXZV31HNfbrFa5zO0Mh6AxYN75ZWKBTjyfzsf1AduAFUZNQTWuzWieWVjeiFQutCdL9d9uiVCCPfDyfB+HpLMk3G9GuM9EYrOZaNGBOrne9qDvKB/JdZJhzz/uhmZUvl8jgjZlt2VfSftYkg5JcCH7wD6jfF7OXOMzfv2iXOJbJfEb5GrE+p72G6ZiR2Dkrzp/i/3E0180KZ1YlW81QF4fOa7CPv25fzBpcFW7ImMbXuOEgxjiVpVwcuc7RMaL+X/7oXBTZ9DNeRiJPrv2riGKRrLHnA3ixVpyMDiEdGD+FSYkAp3XrfShGIkkZrL8OMHVWem5/b0V56ZRd05XuxeqxH2ow2Wu8Va/HCVaEeMX1d4FLBHeIiTfSyHHWVLGRDyQo/0WAxXNxhsH+w1zo6QRdWBnDS+6evKv/N32Z64JkFlwKAtHsZkO10rvK7fkMn/36tPlyHJALBKFRw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR12MB5273.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(346002)(136003)(376002)(366004)(39860400002)(396003)(451199015)(478600001)(8676002)(66446008)(64756008)(66476007)(4326008)(86362001)(66556008)(76116006)(66946007)(186003)(71200400001)(26005)(9686003)(6506007)(7696005)(6916009)(55016003)(54906003)(33656002)(53546011)(55236004)(316002)(122000001)(107886003)(2906002)(52536014)(8936002)(41300700001)(38100700002)(38070700005)(5660300002)(83380400001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YUdHNmRoSC8xa3VFUjVJdlNsRkFIYWtmeWZhN3pNcEs3MlZEeXNnQUV5Y3l1?= =?utf-8?B?T0FmOFhidWE3anNkeEE4eGlHZy9PL1JYMDZYQ3E0a2lwMEEzek1IWW5lMHVk?= =?utf-8?B?VjJPLzdhQ0x3bWVueHI2SWFEWUNEOWtrOVlOQkpnbzN1d01rYy8zVzM2V2o2?= =?utf-8?B?RzQrVzcyUXJzMStDRDdJRTArQVJ5WW1MZ05ES1Y5YWpVZzE1TXZkMW5VNFU0?= =?utf-8?B?d3MxSUZlVWpSRUJ2T3UxN2YxMzFIZmpkYWNudlVBY09BelhvbzA3MSt0TUhp?= =?utf-8?B?M0wwR0M1L3BtTlRIeHpnQXBFOU4yL29KK3gwUDlFQXdaMmJkcDRxMHVEOWFv?= =?utf-8?B?d29QMXEzRVArK1ZtR1NwYWVxY3BsSFpqcFA0V2V4aWx1OWNQQm0yTEMyN1lO?= =?utf-8?B?OWYzMUlaMkZOampFWmhBTkpCbW4vQ0VaRjZneXUwaTFIdXZsZ1ZBcFA2VDYy?= =?utf-8?B?YXlEVEpyLzEraXpIR3duT0pxZW5sNnp1MXd1MURKQjhnZHhzaCtSd0hsMzBP?= =?utf-8?B?YVF5dTlKV3dJd0g5M016VXdSb04zcE5MTTFLSjZKQVZjTm1sRUlxTExaeDk4?= =?utf-8?B?TXBwVFRJaGM1MkpsL3VLTHprVnlGTGtsRHBQeC81OWRtOEhTdFhuZmo2MU9Y?= =?utf-8?B?N2k2ajVBU0p2VnRreUJjWHBrT2dsRWVQMko1Uk1ibnNVOUIybno5ckJyR3lD?= =?utf-8?B?bi9LSUNxVjVTSVd6RWhkK05FVXNaSk9QL21UK3RqT3NFU0hkU0V6VGVRRmcw?= =?utf-8?B?UjB1bGw5NGVyVEhEMm5idlFFelNwS3hOQjdlWlN3SUwzMTlQVE90NFlEaEt4?= =?utf-8?B?R1JRMlpEaVI3OUtHKzh4aEFSWjhMVDdQUFRBck1mSTlndVA5ZXFyaE54R1hW?= =?utf-8?B?dFY2aTVZUjJTa1V3UFFyb0ZQVEthNlVjQ3phK3NZQ0tKdXZXSWlXSURQUjVn?= =?utf-8?B?eWthK25BWlE1K3l1Y3JncTBKdEFFUGhwdU43UC9OaVQ4Zmo0enphaFl6dllt?= =?utf-8?B?RXNkQlBDd2NOSlBFQ3NkSmt4L0VNa2VuNDNjVVFBVkxZTGtmT1FhekwvUkNx?= =?utf-8?B?b0h3eVI3blRHaFhKSzY0dUZ0TzZ5S0VZTlh0YUpZaEhwclNjVEoyUmUvbjM3?= =?utf-8?B?NXdGakM5aWdlU0Jna0ZrSUtmT2VaQWFQZjI0ZVNzNFJYeGFESkxCMTd6QmVq?= =?utf-8?B?d2paTkY5WmZjbE1LVjJCSHYvY0wvRkl2NXA1SFhYSlFQWkFMQTE4eGw2OVl3?= =?utf-8?B?b3I5Y1BwWjV2TXZadTBJWGkwbzQ1UWh0VzJ0QThIWERlVzRSRzN0N205N0lo?= =?utf-8?B?bE9waXVJTkdKcFYzRkdtckV5QllMaW5ic2ZEeGs1UTZRU1dZS0hRbkZyTk40?= =?utf-8?B?bXJBMkdXY0xLYlpMN3pmRXQ3YUl3a2NRS1IzbTY0R2VWWm5GUHkvNVJnRHZT?= =?utf-8?B?bnpXaTZ5d29EdXBQU0dUQUUwSEdNbGhPVHhJZ3NJMGt2KzV4MXZaVEVqWkYx?= =?utf-8?B?Tm5GOEozaURHZE1TV1lYdzk4d0hWdm4wc0tBWExWckxlMzk0SjdiZ0hCSDBx?= =?utf-8?B?bVVPREtiMDFVMG85Vzl1WVdzcEZBR2FvRTZvZU96bXl0SUJlZEF2VXJYcVF2?= =?utf-8?B?c0pITnpwQ2hHdWxrSlhDM3M5UWQyc28xOHRLbGZxZUdGeFJkNEIzRmVjVzFh?= =?utf-8?B?MWRJV211cjdZb2xiSkFyNWpvNFV3ZkhlNWZNSDc0c0xPcCt3enpSNXluWS8x?= =?utf-8?B?N21mbytpOGt5WUFaYm9yWE0vSTlXdXU2VGV1a0ZMcVZMY3JTd2RmalZvd3pJ?= =?utf-8?B?VjdMdUxpbDd1UnpQakx2Zko2VEpteWc1QW5aY0xsUFc4NjhHYjJiU2ZEQVgw?= =?utf-8?B?N1VDWENHeEpaeXorZWZqa08zbkZNU2xYTmtndHpESHdNdzh3WlIvTDAwemQx?= =?utf-8?B?czRMdm9kQURSdWVzdGljc2pBQTdLMm9qRTYxeW5PZVpYcHVRajhsOFlLUGk5?= =?utf-8?B?WEZrWlAvR25UNFVlQ0FKMTlzNTdleS9kRDZyb2t6eElydmtrbWVpYW9EMGwz?= =?utf-8?B?dmN4aENZaUQ4amYyc1RZWjJNaWMraDFZSUxOa1FQNFlTM2NtSzBvSko0SjQ5?= =?utf-8?Q?uWNs=3D?= 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: BN9PR12MB5273.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 43074cce-a15b-4c8a-8ae1-08dae34b9695 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Dec 2022 12:05:01.4625 (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: zdj5hbdKirMFsdMpPvcOf8fFJTq2BKgwgD9gNkHoi1p5OlS2IssjBGqhyPGoLtn4dWckHJGsY8DIYIJyrHEN4g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5359 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org SGkgSmVyaW46DQoNCkJSDQpSb25nd2VpDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gRnJvbTogSmVyaW4gSmFjb2IgPGplcmluamFjb2JrQGdtYWlsLmNvbT4NCj4gU2VudDogV2Vk bmVzZGF5LCBEZWNlbWJlciAyMSwgMjAyMiAxOTowMA0KPiBUbzogUm9uZ3dlaSBMaXUgPHJvbmd3 ZWlsQG52aWRpYS5jb20+DQo+IENjOiBNYXRhbiBBenJhZCA8bWF0YW5AbnZpZGlhLmNvbT47IFNs YXZhIE92c2lpZW5rbw0KPiA8dmlhY2hlc2xhdm9AbnZpZGlhLmNvbT47IE9yaSBLYW0gPG9yaWth QG52aWRpYS5jb20+OyBOQlUtQ29udGFjdC0NCj4gVGhvbWFzIE1vbmphbG9uIChFWFRFUk5BTCkg PHRob21hc0Btb25qYWxvbi5uZXQ+OyBGZXJydWggWWlnaXQNCj4gPGZlcnJ1aC55aWdpdEBhbWQu Y29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+ OyBkZXZAZHBkay5vcmc7IFJhc2xhbiBEYXJhd3NoZWgNCj4gPHJhc2xhbmRAbnZpZGlhLmNvbT4N Cj4gU3ViamVjdDogUmU6IFtSRkMgdjMgMi8yXSBldGhkZXY6IGFkZCBBUEkgdG8gc2V0IHByb2Nl c3MgdG8gYWN0aXZlIG9yIHN0YW5kYnkNCj4gDQo+IEV4dGVybmFsIGVtYWlsOiBVc2UgY2F1dGlv biBvcGVuaW5nIGxpbmtzIG9yIGF0dGFjaG1lbnRzDQo+IA0KPiANCj4gT24gV2VkLCBEZWMgMjEs IDIwMjIgYXQgMzowMiBQTSBSb25nd2VpIExpdSA8cm9uZ3dlaWxAbnZpZGlhLmNvbT4gd3JvdGU6 DQo+ID4NCj4gPiBISSBKZXJpbjoNCj4gPg0KPiANCj4gSGkgUm9uZ3dlaQ0KPiANCj4gPiBCUg0K PiA+IFJvbmd3ZWkNCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ IEZyb206IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+DQo+ID4gPiBTZW50OiBX ZWRuZXNkYXksIERlY2VtYmVyIDIxLCAyMDIyIDE3OjEzDQo+ID4gPiBUbzogUm9uZ3dlaSBMaXUg PHJvbmd3ZWlsQG52aWRpYS5jb20+DQo+ID4gPiBDYzogTWF0YW4gQXpyYWQgPG1hdGFuQG52aWRp YS5jb20+OyBTbGF2YSBPdnNpaWVua28NCj4gPiA+IDx2aWFjaGVzbGF2b0BudmlkaWEuY29tPjsg T3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47IE5CVS1Db250YWN0LQ0KPiA+ID4gVGhvbWFzIE1v bmphbG9uIChFWFRFUk5BTCkgPHRob21hc0Btb25qYWxvbi5uZXQ+OyBGZXJydWggWWlnaXQNCj4g PiA+IDxmZXJydWgueWlnaXRAYW1kLmNvbT47IEFuZHJldyBSeWJjaGVua28NCj4gPiA+IDxhbmRy ZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IGRldkBkcGRrLm9yZzsgUmFzbGFuIERhcmF3c2hl aA0KPiA+ID4gPHJhc2xhbmRAbnZpZGlhLmNvbT4NCj4gPiA+IFN1YmplY3Q6IFJlOiBbUkZDIHYz IDIvMl0gZXRoZGV2OiBhZGQgQVBJIHRvIHNldCBwcm9jZXNzIHRvIGFjdGl2ZQ0KPiA+ID4gb3Ig c3RhbmRieQ0KPiA+ID4NCj4gPiA+IEV4dGVybmFsIGVtYWlsOiBVc2UgY2F1dGlvbiBvcGVuaW5n IGxpbmtzIG9yIGF0dGFjaG1lbnRzDQo+ID4gPg0KPiA+ID4NCj4gPiA+IE9uIFdlZCwgRGVjIDIx LCAyMDIyIGF0IDI6MzEgUE0gUm9uZ3dlaSBMaXUgPHJvbmd3ZWlsQG52aWRpYS5jb20+DQo+IHdy b3RlOg0KPiA+ID4gPg0KPiA+ID4gPiBVc2VycyBtYXkgd2FudCB0byBjaGFuZ2UgdGhlIERQREsg cHJvY2VzcyB0byBkaWZmZXJlbnQgdmVyc2lvbnMNCj4gPiA+DQo+ID4gPiBEaWZmZXJlbnQgdmVy c2lvbiBvZiBEUERLPyBJZiB0aGVyZSBpcyBhbnkgQUJJIGNoYW5nZSBob3cgdG8gc3VwcG9ydCB0 aGlzPw0KPiA+ID4NCj4gPiBUaGVyZSBpcyBhIG5ldyBtZW1iZXIgd2hpY2ggd2FzIGludHJvZHVj ZWQgaW50byBydGVfZXRoX2Rldl9pbmZvIGJ1dCBpdA0KPiBzaG91bGRu4oCZdCBiZSBBQkkgYnJl YWtpbmcgc2luY2UgdXNpbmcgcmVzZXJ2ZWQgZmllbGRzLg0KPiANCj4gVGhhdCBpcyBqdXN0IGZv ciBydGVfZXRoX2Rldl9pbmZvLiBXaGF0IGFib3V0IHRoZSBBQkkgY2hhbmdlIGluIGRpZmZlcmVu dA0KPiBldGhkZXYgc3RydWN0dXJlIGFuZCBydGVfZmxvdyBzdHJ1Y3R1cmVzIGFjcm9zcyBkaWZm ZXJlbnQgRFBESyBBQkkgdmVyc2lvbnMuDQo+IA0KQmVzaWRlcyB0aGlzLCB0aGVyZSBpcyBubyBv dGhlciBBQkkgY2hhbmdlcyBkZXBlbmRlbmN5Lg0KDQpBc3N1bWUgdGhlcmUgaXMgYSBEUERLIHBy b2Nlc3MgQSBydW5uaW5nIHdpdGggdmVyc2lvbiB2MjEuMTEgYW5kIHBsYW4gdG8gdXBncmFkZSB0 bw0KdmVyc2lvbiB2MjIuMTEuIExldCcgY2FsbCB2MjIuMTEgYXMgcHJvY2VzcyBCLg0KDQpOb3cs IHByb2Nlc3MgQSBoYXMgYmVlbiBydW5uaW5nIGZvciBsb25nIHRpbWUgYW5kIGhhcyBsb3Qgb2Yg cnVsZXMgY29uZmlndXJlZC4gSXQnICJhY3RpdmUiIHJvbGUgcGVyIHRoaXMgQVBJIGRlZmluaXRp b24uDQpQcm9jZXNzIEIgc3RhcnRzIGFuZCBpdCBzaG91bGQgY2FsbCB0aGlzIEFQSSBhbmQgc2V0 IGl0c2VsZiB0byAic3RhbmRieSIgcm9sZSBhbmQgdXNlciBjYW4gcHJvZ3JhbSB0aGUgZmxvdyBy dWxlcyBhcyB0aGV5IHdhbnQNCmFuZCBkaWZmZXJlbnQgTklDIHZlbmRvcnMgbWF5IGhhdmUgZGlm ZmVyZW50IHJlY29tbWVuZGF0aW9ucy4gTnZpZGlhIHN1Z2dlc3RzIG9ubHkgcHJvZ3JhbSBwcm9j ZXNzIEIgd2l0aCBncm91cCAwJyBydWxlcyBub3cuDQoNClRoZSB1c2VyIHNob3VsZCBzeW5jIGFs bCBkZXNpcmVkIGNvbmZpZ3VyYXRpb25zIGZyb20gcHJvY2VzcyBBIHRvIHByb2Nlc3MgQiwgYW5k IHByb2Nlc3MgQSBzdGFydHMgdG8geWllbGQgdHJhZmZpYyBsaWtlICJkZWxldGUgYWxsIGdyb3Vw IDANCnJ1bGVzIGZvciBOdmlkaWEnIE5JQ3MiIG9yIHF1aXQuDQpBZnRlciB0aGF0IHByb2Nlc3Mg QiBjYWxscyB0aGlzIEFQSSBhbmQgc2V0IGl0c2VsZiB0byAiYWN0aXZlIiByb2xlLCBub3cgdGhl IGhvdC11cGdyYWRlIGZpbmlzaGVzLg0KDQo+ID4gPiA+IHN1Y2ggYXMgaG90IHVwZ3JhZGUuDQo+ ID4gPiA+IFRoZXJlIGlzIGEgc3Ryb25nIHJlcXVpcmVtZW50IHRvIHNpbXBsaWZ5IHRoZSBsb2dp YyBhbmQgc2hvcnRlbg0KPiA+ID4gPiB0aGUgdHJhZmZpYyBkb3dudGltZSBhcyBtdWNoIGFzIHBv c3NpYmxlLg0KPiA+ID4gPg0KPiA+ID4gPiBUaGlzIHVwZGF0ZSBpbnRyb2R1Y2VzIG5ldyBydGVf ZXRoIHByb2Nlc3Mgcm9sZSBkZWZpbml0aW9uczoNCj4gPiA+ID4gYWN0aXZlIG9yIHN0YW5kYnku DQo+ID4gPiA+DQo+ID4gPiA+IFRoZSBhY3RpdmUgcm9sZSBtZWFucyBydWxlcyBhcmUgcHJvZ3Jh bW1lZCB0byBIVyBpbW1lZGlhdGVseSwgYW5kDQo+ID4gPiA+IG5vDQo+ID4gPg0KPiA+ID4gV2h5 IGl0IGhhcyB0byBiZSBzcGVjaWZpYyBvbmx5IHRvIHJ0ZV9mbG93IHJ1bGU/IElmIGl0IHNwZWRp ZWljIHRvDQo+ID4gPiBydGVfZmxvdywgd2h5IGl0IGlzIGluIHJ0ZV9ldGhfcHJvY2Vzc18gbmFt ZSBzcGFjZT8NCj4gPiBGb3Igbm93LCB0aGlzIGRlc2lnbiBmb2N1c2VzIG9uIHRoZSBmbG93IHJ1 bGUgb2ZmbG9hZGluZyBhbmQgdHJhZmZpYw0KPiByZWRpcmVjdGlvbi4NCj4gPiBXaGVuIHN3aXRj aGluZyBwcm9jZXNzIHZlcnNpb24sIGl0JyBpbXBvcnRhbnQgdG8gbWFrZSBzdXJlIHdoaWNoDQo+ IGFwcGxpY2F0aW9uIHJlY2VpdmVzIGFuZCBoYW5kbGVzIHRoZSB0cmFmZmljLg0KPiANCj4gQ2hh bmdpbmcgdGhlIERQREsgdmVyc2lvbiBydW50aW1lIGlzIGp1c3QgYmV5b25kIHJ0ZV9mbG93IGRy aXZlci4NCg0KSXQnIG5vdCBhYm91dCBjaGFuZ2luZyBEUERLIHZlcnNpb24gYnV0IHVwZ3JhZGlu ZyBEUERLIGZyb20gb25lIFBNRCB2ZXJzaW9uIHRvIGFub3RoZXIgb25lLg0KRG9lcyB0aGUgcHJl Y2VkaW5nIGV4YW1wbGUgYW5zd2VyIHlvdXIgcXVlc3Rpb24/DQo+IA0KPiA+IFRoZSBjaGFuZ2lu ZyBzaG91bGQgYmUgZWZmZWN0aXZlIGFjcm9zcyBhbGwgcHJvYmluZyBldGggZGV2aWNlcywgdGhh dCcgd2h5IGl0DQo+IHdhcyBwdXQgdW5kZXIgcnRlX2V0aF9wcm9jZXNzXyAoZm9yIGFsbCBydGVf ZXRoX2RldikgbmFtZSBzcGFjZS4NCj4gPiA+DQo+ID4gPiBBbHNvLCBpZiB3ZSBhcmUgbW92aW5n IHRoZSBzdGFuZGJ5LCBXaGF0IGFib3V0IHRoZSBydWxlIHdob3NlIEFCSSBpcw0KPiA+ID4gY2hh bmdlZCBiZXR3ZWVuIHZlcnNpb25zPw0KPiA+DQo+ID4gTGlrZSB0aGUgY29tbWVudHMgbWVudGlv bmVkOiAiIEJlZm9yZSByb2xlIHRyYW5zaXRpb24sIGFsbCB0aGUgcnVsZXMgc2V0IGJ5DQo+IHRo ZSBhY3RpdmUgcHJvY2VzcyBzaG91bGQgYmUgZmx1c2hlZCBmaXJzdC4gIg0KPiANCj4gV2hhdCBo YXBwZW5zIHRvIHJ0ZV9mbG93IGZsb3cgaGFuZGxlcyBmb3IgZXhpc3Rpbmcgb25lcyAgd2hpY2gg aXMgY3JlYXRlZCB3aXRoDQo+IHZlcnNpb24gWD8NCj4gQWxzbyBXaGF0IGlmIG5ldyB2ZXJzaW9u IFkgaGFzIEFCSSBjaGFuZ2UgaW4gcnRlX2Zsb3dfcGF0dGVybiBhbmQNCj4gcnRlX2Zsb3dfYWN0 aW9uIHN0cnVjdHVyZT8NCj4gDQo+IEZvciBtZSwgSWYgRFBESyB2ZXJzaW9uIGNoYW5nZSBpcyBu ZWVkZWQsIHNpbXBseSByZWxvYWQgdGhlIGFwcGxpY2F0aW9uLiBUaGlzDQo+IEFQSSB3aWxsIHNv b24gYmxvYXQsIGFuZCBpdCB3aWxsIGJlIGEgbWVzcyBpZiB0byBzdGFydCBoYW5kbGluZyBEaWZm ZXJlbnQgRFBESw0KPiB2ZXJzaW9uIHdoaWNoIGlzIG5vdCBBQkkgY29tcGF0aWJsZSBhdCBhbGwu DQo+IA0KWWVzLCB5b3UgYXJlIHJpZ2h0LiBSZWxvYWRpbmcgdGhlIGFwcGxpY2F0aW9uIGlzIHRo ZSBlYXNpZXN0IHdheSBidXQgaXQgbWF5IGhhdmUgYSBsb25nIHRpbWUNCldpbmRvdyB0aGF0IHRy YWZmaWMgaXMgbG9zdC4gTm8gdHJhZmZpYyBhcnJpdmVzIGF0IHByb2Nlc3MgQSBvciBwcm9jZXNz IEIuIA0KV2UgYXJlIHRyeWluZyB0byBzaW1wbGlmeSB0aGUgcmVsb2FkaW5nIGxvZ2ljIGFuZCBt aW5pbWl6ZSB0aGUgdHJhZmZpYyBkb3duIHRpbWUgYXMgbXVjaCBhcyBwb3NzaWJsZS4NClRoZSBh cHByb2FjaCBtYXkgZGlmZmVyZW50aWF0ZSBodWdlbHkgYmV0d2VlbiBkaWZmZXJlbnQgTklDIHZl bmRvcnMsIHNvIEkgdGhpbmsgaXQgc2hvdWxkIGJlIGJldHRlciBpZiANCkRQREsgY2FuIHByb3Zp ZGUgYW4gYWJzdHJhY3QgQVBJLg0KDQpJZiBwcm9jZXNzIEEgYW5kIHByb2Nlc3MgQiBhcmUgQUJJ IGRpZmZlcmVudCwgaXQgZG9lc24ndCBtYXR0ZXIuIA0KMS4gQ2FsbCB0aGlzIEFQSSB3aXRoIHBy b2Nlc3MgQSBtZWFucyBvbGRlciBBQkkuDQoyLiBDYWxsIHRoaXMgQVBJIHdpdGggcHJvY2VzcyBC IG1lYW5zIG5ld2VyIEFCSS4NCkl0JyBoYXZlIHByb2Nlc3MgY29uY2VwdCBhbmQgd29ya2luZyBz Y29wZS4gDQoNCj4gDQo+IA0KPiANCj4gPiA+ID4gYmVoYXZpb3IgY2hhbmdlZC4gVGhpcyBpcyB0 aGUgZGVmYXVsdCBzdGF0ZS4NCj4gPiA+ID4gVGhlIHN0YW5kYnkgcm9sZSBtZWFucyBydWxlcyBh cmUgcXVldWVkIGluIHRoZSBIVy4gSWYgbm8gYWN0aXZlDQo+ID4gPiA+IHJvbGVzIGFsaXZlIG9y IGJhY2sgdG8gYWN0aXZlLCB0aGUgcnVsZXMgYXJlIGVmZmVjdGl2ZSBpbW1lZGlhdGVseS4NCj4g PiA+ID4NCj4gPiA+ID4gU2lnbmVkLW9mZi1ieTogUm9uZ3dlaSBMaXUgPHJvbmd3ZWlsQG52aWRp YS5jb20+DQo=