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 50636A00C2; Wed, 24 Aug 2022 10:41:38 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id F02CE40DFD; Wed, 24 Aug 2022 10:41:37 +0200 (CEST) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60077.outbound.protection.outlook.com [40.107.6.77]) by mails.dpdk.org (Postfix) with ESMTP id C223140DDE for ; Wed, 24 Aug 2022 10:41:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KTt0sniQuKskzoBCoa25Igq05FsPNJ33QGQ50oGUbYNPNnAg425ShZ3f4wXEpPzcJ1Z3mP/bNiXgOaT2/XQfg0cuHLingA3YWObGwkOVyzm5VgSCYEZ+bCLi3df7U4uhasy/gpJU/PPUIR1J1l6i+0m4OlvZD7Au1erqKKhpg/IEpE10RjHUpB6lkFpF1ocObnw+3vHkRKFGc7QN9VJ1qpzRANuKZp5eUAKFipxnQSaOmHCutXX6MK7CqCGVxTXk8ezwgKBCEUStA2tZdRutLicBUWaH9Qmr1VU4fR/8XuVpKzTGgFpAU7gxHOjCl0l127ryCU+gFiZxgjzlZHmjlw== 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=huniL3ohbh1BQ/XtBWqCNdvWALh1qy66wJ1b6AVs1tQ=; b=iS3BaXNmR2q9vbkGMkgNp8PYSIycwobZGvnRcv+PAqu1U4b8bAg1c0dNTZk2NBam8c3Vcz5hkddaNm7EvT9yJRzdUzJUFd7qbLqDE5HkCTkwyRrlEWyesvE8DHnP6d47zb/kXjdw83iMNhuwyiCxlPkViXrDEuc0UFmYGpcAzrCzvuMejOzdeyCh01sYfxRlrI5LR0iouYkPWzDpH7LosQyLuleXqp5SdjsqtB9qmshK3YVXD0Yuq0Ng4xweij/cxDoSsRMyMF7UaQ0epA0M1X0YSkiHToocp5TLsZSwl27/avgevqzhUhzRTlWdnmGZDcfDWrOHWL6o1NufqkKp+Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=huniL3ohbh1BQ/XtBWqCNdvWALh1qy66wJ1b6AVs1tQ=; b=BVtFRRupvqvg+TiOE4toDHpOmimZokhbSdntaHtcW6AGB4SNOE0SDaXJfmdDmTPMRsJgVJ1tsTYNRESFWW99NhreqflpEoq+N89ZeF4tiSK60fT3PDSNxkfMd5o0fFLUtQpvVBcyQx6kA/A9DFx9cmUfU1b9vM29ozvDHhKeaS0= Received: from DB7PR07MB5978.eurprd07.prod.outlook.com (2603:10a6:10:80::15) by AS1PR07MB8592.eurprd07.prod.outlook.com (2603:10a6:20b:473::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.3; Wed, 24 Aug 2022 08:41:35 +0000 Received: from DB7PR07MB5978.eurprd07.prod.outlook.com ([fe80::9ccd:46bc:71ee:8bfa]) by DB7PR07MB5978.eurprd07.prod.outlook.com ([fe80::9ccd:46bc:71ee:8bfa%7]) with mapi id 15.20.5566.014; Wed, 24 Aug 2022 08:41:35 +0000 From: =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= To: Pavan Nikhilesh Bhagavatula , =?utf-8?B?TWF0dGlhcyBSw7ZubmJsb20=?= , Jerin Jacob Kollanukkaran , Jay Jayatheerthan CC: "dev@dpdk.org" , "erik.g.carrillo@intel.com" , "abhinandan.gujjar@intel.com" , "timothy.mcdaniel@intel.com" , Shijith Thotton , "hemant.agrawal@nxp.com" , "nipun.gupta@nxp.com" , "harry.van.haaren@intel.com" , "liangma@liangbit.com" , "peter.mccarthy@intel.com" Subject: Re: [EXT] Re: [PATCH 1/3] eventdev: add element offset to event vector Thread-Topic: [EXT] Re: [PATCH 1/3] eventdev: add element offset to event vector Thread-Index: AQHYsYfVmmI/lMeFXkK8nRuisQdcDq203BCAgAgh44CAAMmeAA== Date: Wed, 24 Aug 2022 08:41:34 +0000 Message-ID: <1d04373d-dc1c-997a-1baa-23d59eb173b8@ericsson.com> References: <20220816154932.10168-1-pbhagavatula@marvell.com> <353e3a65-271b-e1bb-6b10-7608aaefa716@lysator.liu.se> In-Reply-To: Accept-Language: en-US, sv-SE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ericsson.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 77b66d49-212e-4277-ce95-08da85ac73af x-ms-traffictypediagnostic: AS1PR07MB8592:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: eg6BwEp9VKn7ukBq7x+EYs4IpC1s8sMkri5GYOnRQFUltq8uRRWX3BXVvVmu5NLGMpXD2v5K4Y7SRORRxa01BeY/1yMSJLM4NRCkBoMNjIiXKPTKvouarI/Ym1A8wcdAlLsRbo+myY18IumdzbWct20E2gb2hUFbeWUK50idvW9Rgca87XB4xiqfPJGXjvg6uJ/niZJBSUW86sWvAnffP4PoeCBqQ/bCxJzi75Nnk4XmbHQEuG8YSPDZK20fTqm/2SRIgJBqOV6mO6beDsC2gjYQssv4++AB5M8yj1gNiyeiNKP13Zb0SwmMbfkIIFQYcJ7X+DJsBEXfUgDnfTa5F54wkxaogdtP6gonTX1Qc3MAiaIloozD+DtVuD14i7PQrXTK81FOfG1rpyo9LcHQ48pC2++/tmkkyvfJUp7V8nHg5NHZdReFDAdOuTimiOYuDZ9D7ZAV7D25mwb7Yu76CRiXRT/2Q+CtKiuZTigzlupaeArjXFxwcV6cz80hhRYlKFz9+etRLiF0kTCxCQX+AZ4RyP7GXoJHfWajXWbXLr0SdvATg/nLgOUubKJrDfUf+Kg2P/LOSmJq9doeR2/+Bh8wIwjrTYRb4vJkbl4qWaxPTfg+6JxHyrwSTzadju3RBt1qfy4KzRYFnxAIwRbxytAVbpXJVZasx+mNYGy0By+kRL2ENB4x9N3sDMxvFYeNCSo702+7NzP7Sgc6rMBDRdkZ1kH4JJnJa397qJesQlQ8CB0inJrjwtHZ5sCHUbols58j/iUGOcIJHU8PPuoQ7AH0VPO98wkW44L4OnbKqnOA+YInskYxDawbGDvfwXiwP/ai0wSISdcR/ML2p0EzRA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR07MB5978.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(136003)(366004)(376002)(39860400002)(396003)(346002)(2616005)(31696002)(82960400001)(86362001)(38070700005)(186003)(122000001)(38100700002)(4326008)(83380400001)(66556008)(76116006)(66946007)(66476007)(66446008)(64756008)(8676002)(316002)(31686004)(91956017)(85202003)(8936002)(5660300002)(7416002)(85182001)(2906002)(478600001)(41300700001)(6486002)(36756003)(53546011)(26005)(6512007)(6506007)(71200400001)(110136005)(54906003)(43740500002)(45980500001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a0hkMWhObld1cHI3ellwT0FaakUxQUVWUjAvcTVmTldpU3h3VjZBaWlVNlRV?= =?utf-8?B?Tis5VkhpZWdoV3NiM0h0QjRDRlkxc1hJYmlmdnlVYWFOS3FSTFQ5eTVHemVS?= =?utf-8?B?UVpQQVlWL21DWGhUM3MyVmhOcjhWYTVGVE81dlBvY0oySnZxdE1BZ3BBYjNu?= =?utf-8?B?cEFRRDBBa3Q2MEFGYk9uTm9WRFRERjBRS0ZUem5jb1Y5c2g0NHoyMGNVcDFj?= =?utf-8?B?UUNWU0Npb3BXcFBuWmZpeUNoSzdHWkh4ck1TcmdzeFBycWVSd2FsNCtVbU84?= =?utf-8?B?UHIxbGdQSEFHTE0vakRiUHB4UGQrZHEzanNyOEJnV2FwWjNKRVV1Ly9DcVA5?= =?utf-8?B?R05lQmxpYkRnQXo1ODhBYU93WXNzSTJhZk13dzIvdVZ1SGkvVHFJUzRKNlFJ?= =?utf-8?B?RjQ1aEFIenhURnZFbXVZSTJCenY3QXJ5Zk1WNFRhNUVmczB4K2JBTHBrQXdm?= =?utf-8?B?dVphOWUrMENNdjNWTjJrbFg5NXlCR0cySk9BTDhyQ3dDRzY5endxbkhUTXc3?= =?utf-8?B?Uno0N3l6MWtBMlg4QXRvNld5TE5wdUVhS25PNFdEVVJtMkllUUJVSTlnOXZJ?= =?utf-8?B?SWxoWDdteW5mTFgxNk91VXVhczgwUWtzTVRpNVR6RmIrTUxyeFJwSFpRQ1FP?= =?utf-8?B?WjBWQlR3UzUyVDRvNXJoL1pwWHFvU1huUGVLYjNSS2FVQkl6a0tBNkk2STll?= =?utf-8?B?TDUxb2pBdW5mb3E0NUlJSWFkWExnVCtTVUEyUFZFK3BUK1NEemNvUEpZZ1Ri?= =?utf-8?B?RE5MRGtuQVg4dWZGSXFjVytyVTBDeWFYblBsbWtjZHBxRTZLL0hqN1c3TE1F?= =?utf-8?B?VWR3SFJCa1dQbzk2NlFnNW4yWDRHNFJsZ20xSWE5c0NDUFdPR3BNVDJHd3l1?= =?utf-8?B?UnBHdVpJTTQ4cXh5QVlyWk83QnFPWTNwOXR2NjBXYXN4WGRLSlU2ZjlMOWVI?= =?utf-8?B?aG9xUENXNGdtamVadjVnUVRGQ0ZCZ3lGaHA2MjkvMnFQamNSQVpsQ3U1cTR4?= =?utf-8?B?TVZWQjd4dkdSTVd0SXhKRm14QWJscFZNWHlucjBhci84UEU2SWdRS1U1TE4w?= =?utf-8?B?VkQrcDV3NWprcFZVQ0JQMDZtWDVhWXU5VEVkb1ZneWtnS2gzdTRmdDg0TmRQ?= =?utf-8?B?bnYrdDNway94NE9vMjh3VDF3ZW5jSGE3Nko2b0ZWWnFxQ2RBQ2VYRjJWUTNn?= =?utf-8?B?OVJnTnlTL0RtZm5OeFFHaVJDa1NWTkhoNkg5YzlPbW92OUZSQmRZVEZTb1lF?= =?utf-8?B?VDQrcFBxODVGdG1lMmpiOUF0M3RLb3NIYUJSL1dhTjExUmFDOUlFdGZSazRO?= =?utf-8?B?YVlENUdzOFE0VEUyWGpkRmZHem0zWHRQMExwRndhaC9TVXJUT1NZRm5rQ2JR?= =?utf-8?B?SUFSTjZ6Y3FyVFBXQnVMNVpDVk12aEpqMkJKQmJNQ0U5eERjT1VCOE5LV2JD?= =?utf-8?B?aHlRNWwydWEwS0xsWVlRSjdJakozYk9xR3YrUStNVlBVK013NGdsUnRHaGhF?= =?utf-8?B?U01BTzNjb1VUUWZXV2VSUmNPOFR2WFB5aWZHU1hSRkE3aEkxck5UZC9LTEUw?= =?utf-8?B?ZVhnOElYL2NaRlVkc2c3blIwb2dvcjZDbnZhNzllU3R3bkQ3cUxxM0V6aXJ3?= =?utf-8?B?WTJPWFFuTEJxRllwZm1WbHp1RXJjRktHUWVWQkdFN1pVRkVoTUJ3K01oOCtK?= =?utf-8?B?UWlrY01LMXdHYjZJd1lmSE11cVY4MUVFdldRV1NVOHpKN0MvZjdZd1UxQ0hE?= =?utf-8?B?ZThzaTU2Q2h1REx3eXd4S1JyVitQUWNOWjQ3c3ZoUVlTMXZKNWF4TDVXV2pJ?= =?utf-8?B?dkt0dkZOZWYzTkI5SEhSMzEzeXUxL3AzcnhSVlpUWS83dlVuSi9oU2hyYVd4?= =?utf-8?B?Um10TlZoaVk5ai9LcTEzQ0lMU3dKVXhMZWNkazdDUzFuUjMzNmhKQUxYaFFy?= =?utf-8?B?S3ZEdm9EWVEzSWFUVHJCNjd0bTFDZGdyMm5YNWc1VDlRWldOSjdIaXhMRTc2?= =?utf-8?B?NzFXS2NNeTV4VFFtVzZqczZ5dkZSY0dWL2NxdVdYSDFuV3kyRkRERU5wRmc2?= =?utf-8?B?clBSaWtaR0pQOXE1L3FTak9QSk90c2hiOE9EZUNQdHNZUVdSNzRmTVJMY2lv?= =?utf-8?B?Q3ZXL2REeG9hN1o4Y0tqV1pFeUdOamh2R01wYkFBb0h2angwdWdTaEVTeTlE?= =?utf-8?B?eGc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: ericsson.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DB7PR07MB5978.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 77b66d49-212e-4277-ce95-08da85ac73af X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Aug 2022 08:41:34.7960 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: QIBt4eEIEPpGxtB1ucFDoZYa8OgW5hydQFlERYTubt8eJbn4Fi928hkwb61aygNPy3CfgL5qtprm2r9S4d5pm67jbXodIFIMjTUn3hxzpnA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR07MB8592 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 T24gMjAyMi0wOC0yMyAyMjozOSwgUGF2YW4gTmlraGlsZXNoIEJoYWdhdmF0dWxhIHdyb3RlOg0K Pj4gT24gMjAyMi0wOC0xNiAxNzo0OSwgcGJoYWdhdmF0dWxhQG1hcnZlbGwuY29tIHdyb3RlOg0K Pj4+IEZyb206IFBhdmFuIE5pa2hpbGVzaCA8cGJoYWdhdmF0dWxhQG1hcnZlbGwuY29tPg0KPj4+ DQo+Pj4gQWRkIGBgZWxlbV9vZmZzZXQ6MTJgYCBiaXQgZmllbGQgZXZlbnQgdmVjdG9yIHN0cnVj dHVyZQ0KPj4+IHRoZSBiaXRzIGFyZSB0YWtlbiBmcm9tIGBgcnN2ZDoxNWBgLg0KPj4+IFRoZSBl bGVtZW50IG9mZnNldCBkZWZpbmVzIHRoZSBvZmZzZXQgaW50byB0aGUgdmVjdG9yIGFycmF5DQo+ Pj4gYXQgd2hpY2ggdmFsaWQgZWxlbWVudHMgc3RhcnQuDQo+Pj4gVGhlIHZhbGlkIGVsZW1lbnRz IGNvdW50IHdpbGwgYmUgZXF1YWwgdG8gbmJfZWxlbSAtIGVsZW1fb2Zmc2V0Lg0KPj4+DQo+Pg0K Pj4gSSdtIG1pc3NpbmcgYSByYXRpb25hbGUgd2h5IHRoaXMgY2hhbmdlIGlzIGEgZ29vZCBpZGVh LiAoSSBjYW4gZ3Vlc3MsDQo+PiBidXQgSSB0aGluayBpdCdzIGJldHRlciB0byBzcGVsbCBpdCBv dXQuKQ0KPj4NCj4gDQo+IFN1cmUsIEkgd2lsbCBhZGQgaXQgaW4gdGhlIG5leHQgdmVyc2lvbi4N Cj4gDQo+Pj4gVXBkYXRlIFJ4L1R4IGFkYXB0ZXIgU1cgaW1wbGVtZW50YXRpb24gdG8gdXNlIGVs ZW1fb2Zmc2V0Lg0KPj4+DQo+Pj4gU2lnbmVkLW9mZi1ieTogUGF2YW4gTmlraGlsZXNoIDxwYmhh Z2F2YXR1bGFAbWFydmVsbC5jb20+DQo+Pj4gLS0tDQo+Pj4gICAgbGliL2V2ZW50ZGV2L3J0ZV9l dmVudF9ldGhfcnhfYWRhcHRlci5jIHwgMSArDQo+Pj4gICAgbGliL2V2ZW50ZGV2L3J0ZV9ldmVu dF9ldGhfdHhfYWRhcHRlci5jIHwgNyArKysrLS0tDQo+Pj4gICAgbGliL2V2ZW50ZGV2L3J0ZV9l dmVudGRldi5oICAgICAgICAgICAgIHwgOCArKysrKystLQ0KPj4+ICAgIDMgZmlsZXMgY2hhbmdl ZCwgMTEgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkNCj4+Pg0KPj4+IGRpZmYgLS1naXQg YS9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyLmMNCj4+IGIvbGliL2V2ZW50 ZGV2L3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5jDQo+Pj4gaW5kZXggYmY4NzQxZDJlYS4uYmQ3 MmY5Yjg0NSAxMDA2NDQNCj4+PiAtLS0gYS9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF9yeF9h ZGFwdGVyLmMNCj4+PiArKysgYi9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVy LmMNCj4+PiBAQCAtODU1LDYgKzg1NSw3IEBAIHJ4YV9pbml0X3ZlY3RvcihzdHJ1Y3QgZXZlbnRf ZXRoX3J4X2FkYXB0ZXINCj4+ICpyeF9hZGFwdGVyLA0KPj4+ICAgIAl2ZWMtPnZlY3Rvcl9ldi0+ cG9ydCA9IHZlYy0+cG9ydDsNCj4+PiAgICAJdmVjLT52ZWN0b3JfZXYtPnF1ZXVlID0gdmVjLT5x dWV1ZTsNCj4+PiAgICAJdmVjLT52ZWN0b3JfZXYtPmF0dHJfdmFsaWQgPSB0cnVlOw0KPj4+ICsJ dmVjLT52ZWN0b3JfZXYtPmVsZW1fb2Zmc2V0ID0gMDsNCj4+PiAgICAJVEFJTFFfSU5TRVJUX1RB SUwoJnJ4X2FkYXB0ZXItPnZlY3Rvcl9saXN0LCB2ZWMsIG5leHQpOw0KPj4+ICAgIH0NCj4+Pg0K Pj4+IGRpZmYgLS1naXQgYS9saWIvZXZlbnRkZXYvcnRlX2V2ZW50X2V0aF90eF9hZGFwdGVyLmMN Cj4+IGIvbGliL2V2ZW50ZGV2L3J0ZV9ldmVudF9ldGhfdHhfYWRhcHRlci5jDQo+Pj4gaW5kZXgg YjRiMzdmMWNhZS4uZGE3MDg4M2UwZCAxMDA2NDQNCj4+PiAtLS0gYS9saWIvZXZlbnRkZXYvcnRl X2V2ZW50X2V0aF90eF9hZGFwdGVyLmMNCj4+PiArKysgYi9saWIvZXZlbnRkZXYvcnRlX2V2ZW50 X2V0aF90eF9hZGFwdGVyLmMNCj4+PiBAQCAtNTI0LDE2ICs1MjQsMTcgQEAgdHhhX3Byb2Nlc3Nf ZXZlbnRfdmVjdG9yKHN0cnVjdA0KPj4gdHhhX3NlcnZpY2VfZGF0YSAqdHhhLA0KPj4+ICAgIAkJ cXVldWUgPSB2ZWMtPnF1ZXVlOw0KPj4+ICAgIAkJdHFpID0gdHhhX3NlcnZpY2VfcXVldWUodHhh LCBwb3J0LCBxdWV1ZSk7DQo+Pj4gICAgCQlpZiAodW5saWtlbHkodHFpID09IE5VTEwgfHwgIXRx aS0+YWRkZWQpKSB7DQo+Pj4gLQkJCXJ0ZV9wa3RtYnVmX2ZyZWVfYnVsayhtYnVmcywgdmVjLT5u Yl9lbGVtKTsNCj4+PiArCQkJcnRlX3BrdG1idWZfZnJlZV9idWxrKCZtYnVmc1t2ZWMtPmVsZW1f b2Zmc2V0XSwNCj4+PiArCQkJCQkgICAgICB2ZWMtPm5iX2VsZW0gLSB2ZWMtDQo+Pj4gZWxlbV9v ZmZzZXQpOw0KPj4+ICAgIAkJCXJ0ZV9tZW1wb29sX3B1dChydGVfbWVtcG9vbF9mcm9tX29iaih2 ZWMpLA0KPj4gdmVjKTsNCj4+PiAgICAJCQlyZXR1cm4gMDsNCj4+PiAgICAJCX0NCj4+PiAtCQlm b3IgKGkgPSAwOyBpIDwgdmVjLT5uYl9lbGVtOyBpKyspIHsNCj4+PiArCQlmb3IgKGkgPSB2ZWMt PmVsZW1fb2Zmc2V0OyBpIDwgdmVjLT5uYl9lbGVtOyBpKyspIHsNCj4+PiAgICAJCQluYl90eCAr PSBydGVfZXRoX3R4X2J1ZmZlcihwb3J0LCBxdWV1ZSwgdHFpLQ0KPj4+IHR4X2J1ZiwNCj4+PiAg ICAJCQkJCQkgICBtYnVmc1tpXSk7DQo+Pj4gICAgCQl9DQo+Pj4gICAgCX0gZWxzZSB7DQo+Pj4g LQkJZm9yIChpID0gMDsgaSA8IHZlYy0+bmJfZWxlbTsgaSsrKSB7DQo+Pj4gKwkJZm9yIChpID0g dmVjLT5lbGVtX29mZnNldDsgaSA8IHZlYy0+bmJfZWxlbTsgaSsrKSB7DQo+Pj4gICAgCQkJcG9y dCA9IG1idWZzW2ldLT5wb3J0Ow0KPj4+ICAgIAkJCXF1ZXVlID0NCj4+IHJ0ZV9ldmVudF9ldGhf dHhfYWRhcHRlcl90eHFfZ2V0KG1idWZzW2ldKTsNCj4+PiAgICAJCQl0cWkgPSB0eGFfc2Vydmlj ZV9xdWV1ZSh0eGEsIHBvcnQsIHF1ZXVlKTsNCj4+PiBkaWZmIC0tZ2l0IGEvbGliL2V2ZW50ZGV2 L3J0ZV9ldmVudGRldi5oIGIvbGliL2V2ZW50ZGV2L3J0ZV9ldmVudGRldi5oDQo+Pj4gaW5kZXgg NmE2ZjZlYTRjMS4uYjA2OThmZTc0OCAxMDA2NDQNCj4+PiAtLS0gYS9saWIvZXZlbnRkZXYvcnRl X2V2ZW50ZGV2LmgNCj4+PiArKysgYi9saWIvZXZlbnRkZXYvcnRlX2V2ZW50ZGV2LmgNCj4+PiBA QCAtMTA2MCw4ICsxMDYwLDEyIEBAIHJ0ZV9ldmVudF9kZXZfY2xvc2UodWludDhfdCBkZXZfaWQp Ow0KPj4+ICAgICAqLw0KPj4+ICAgIHN0cnVjdCBydGVfZXZlbnRfdmVjdG9yIHsNCj4+PiAgICAJ dWludDE2X3QgbmJfZWxlbTsNCj4+PiAtCS8qKjwgTnVtYmVyIG9mIGVsZW1lbnRzIGluIHRoaXMg ZXZlbnQgdmVjdG9yLiAqLw0KPj4+IC0JdWludDE2X3QgcnN2ZCA6IDE1Ow0KPj4+ICsJLyoqPCBU b3RhbCBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhpcyBldmVudCB2ZWN0b3IuICovDQo+Pg0KPj4g SSdtIG5vdCBzdXJlICJ0b3RhbCIgYWRkcyBhbnl0aGluZyBoZXJlLiBEaWRuJ3QgdGhlIG9sZCBu Yl9lbGVtIGFsc28NCj4+IGluY2x1ZGUgdGhlIHRvdGFsIG51bWJlciBvZiBlbGVtZW50cz8NCj4+ DQo+IA0KPiBZZXMsIEkgYWRkZWQgaXQgdG8gY2xhcmlmeSB0aGF0IGl0IGluY2x1ZGVzIHNsb3Rz IHRoYXQgZG9u4oCZdCBoYXZlIHZhbGlkIGVsZW1lbnRzLg0KPiBJIHdpbGwgdXBkYXRlIHRoZSBj b21tZW50IHRvIGNvbnZleSB0aGF0IGl0IGluY2x1ZGVzIGVsZW1lbnRzIGJlZm9yZSBvZmZzZXQu DQo+IA0KDQpUaGUgaXNzdWUgaXMgdGhhdCBpdCBkb2Vzbid0IGNsYXJpZnkgYW55dGhpbmcuIENo YW5nZSB0aGUgbmFtZSwgb3IgDQpjaGFuZ2UgdGhlIHNlbWFudGljcyB0byBmaXQgdGhlIG5hbWUs IGluc3RlYWQgb2YgZXhwbGFpbmluZyBhIHBvb3IgbmFtZSANCmluIGEgY29tbWVudC4NCg0KPj4g bmJfZWxlbSBkb2Vzbid0IHJlcHJlc2VudCB0aGUgbnVtYmVyIG9mIGVsZW1lbnRzIGluIHRoZSB2 ZWN0b3IgYW55IG1vcmUsDQo+PiBkb2VzIGl0Pw0KPj4NCj4+IFdoeSBub3QganVzdCBrZWVwIHRo ZSBvbGQgc2VtYW50aWNzLCBhbmQgbGV0IGl0IHJlcHJlc2VudCB0aGUgbnVtYmVyIG9mDQo+PiB1 c2VkIHNsb3RzIGluIHRoZSB2ZWN0b3IgYXJyYXk/IEFzIG9wcG9zZWQgdG8gYmVpbmcgdGhlIDxs YXN0IHVzZWQNCj4+IGluZGV4PiArIDEuDQo+IA0KPiBJIHRoaW5rIGl0cyBzaW1wbGVyIHRvIGp1 c3QgbWFuYWdlIHVwZGF0ZXMgdG8gdGhlIHZlY3RvciBieSB1cGRhdGluZyBlbGVtX29mZnNldCBh bmQga2VlcGluZw0KPiBuYl9lbGVtIGFzIGEgY29uc3RhbnQsIHZhbGlkIGVsZW1lbnRzIGNvdW50 IGNhbiBzaW1wbHkgYmUgY2FsY3VsYXRlZCB2aWEgbmJfZWxlbSAtIGVsZW1fb2Zmc2V0Lg0KPiBW ZWN0b3IgaXMgZW1wdHkgd2hlbiBuYl9lbGVtID0gZWxlbV9vZmZzZXQgYW5kIGNhbiBiZSByZXVz ZWQgc2ltcGx5IGJ5IHNldHRpbmcgZWxlbV9vZmZzZXQgdG8gMC4NCj4gDQo+IEhhdmluZyB0byB1 cGRhdGUgYm90aCBuYl9lbGVtIGFuZCBlbGVtX29mZnNldCBtaWdodCBiZSBhIHRhZCBiaXQgZXJy b3IgcHJvbmUuDQo+IA0KDQpJIHRoaW5rIHlvdSBzaG91bGQgZm9jdXMgbW9yZSBvbiB0aGUgZW5k IHJlc3VsdCwgcmF0aGVyIGhvdyBlYXNpbHkgeW91IA0KY2FuIGdldCB0aGVyZS4gSW4gbXkgZXhw ZXJpZW5jZSwgaW4gdGhlIGxvbmcgcnVuLCB0aGF0J3Mgd2hhdCBwYXlzIG9mZiANCmlzIHRvIGtl ZXAgdGhlIGRlc2lnbiBjbGVhbiBhbmQgcmVkdWNlIHRoZSBvdmVyYWxsIGNvbXBsZXhpdHkuDQoN CllvdSBkb24ndCB0aGluayBoYXZpbmcgYSBmaWVsZCBjYWxsZWQgIm5iX2VsZW0iIHdoaWNoIHZh bHVlIGRvZXNuJ3QgDQpyZXByZXNlbnQgdGhlIG51bWJlciBvZiBlbGVtZW50cywgYnV0IHJhdGhl ciBzb21ldGhpbmcgZWxzZSwgaXMgZXJyb3IgcHJvbmU/DQoNCj4+DQo+Pj4gKwl1aW50MTZfdCBl bGVtX29mZnNldCA6IDEyOw0KPj4+ICsJLyoqPCBPZmZzZXQgaW50byB0aGUgdmVjdG9yIGFycmF5 IHdoZXJlIHZhbGlkIGVsZW1lbnRzIHN0YXJ0IGZyb20uDQo+Pj4gKwkgKiBUaGUgdmFsaWQgZWxl bWVudHMgY291bnQgd291bGQgYmUgbmJfZWxlbSAtIGVsZW1fb2Zmc2V0Lg0KPj4+ICsJICovDQo+ Pj4gKwl1aW50MTZfdCByc3ZkIDogMzsNCj4+PiAgICAJLyoqPCBSZXNlcnZlZCBmb3IgZnV0dXJl IHVzZSAqLw0KPj4+ICAgIAl1aW50MTZfdCBhdHRyX3ZhbGlkIDogMTsNCj4+PiAgICAJLyoqPCBJ bmRpY2F0ZXMgdGhhdCB0aGUgYmVsb3cgdW5pb24gYXR0cmlidXRlcyBoYXZlIHZhbGlkDQo+PiBp bmZvcm1hdGlvbi4NCj4+PiAtLQ0KPj4+IDIuMjUuMQ0KPj4+DQoNCg==