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 7509845499; Thu, 20 Jun 2024 11:07:12 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6091C410FA; Thu, 20 Jun 2024 11:07:12 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id D11F1402D0 for ; Thu, 20 Jun 2024 11:07:10 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45JMwedf027314; Thu, 20 Jun 2024 02:07:10 -0700 Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2171.outbound.protection.outlook.com [104.47.55.171]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3yutyc43j9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 20 Jun 2024 02:07:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=datkY22X5/G3BFmRGZxHEeW3sI6ZsI2M7lFA5OziUzN6CV0+kGZjpLF8jN64IHTftbt1By6u2fWwQIjPaD39eIRJAislwnNgdnW4tRNFUDVo+5WnKtp/u19UKAai6IeXc1N5bA9GdFbZPzUhFiHa1B8QNKNVX54NnZ0aAequEL3RFnFZP7Z6WHob7uF4a4/rcMBrA6uFWqQQxFset4lYEE1OZJ7Cp36q1QB5Tkr7FYnu0g5fovVxxzJamH2UVg1RxCXNfyKuy0u32Mm53x7HT/KHt/RF9phlolchLA+RClxQv019yaVYdvkXzZuARgSTbrOeKxXLQXrhQSSi5ZL4wg== 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=0gKgSm97dnIq9Sn3DqSZSIkEikxQODPzRTzIOm3omZg=; b=V8cN0u+XTmAwuBitBDwxlfOOiGwp4Qsug2EboVv0BhymKLHrftp6KtjW5lDqULkhIEEMotN9qu2IUvCBwFu+FOWXnqQTuqPUp8DhlSEeVTlKyPzakOsVjUKNPxUuo/INiFkRmTBQE/x24v6q2fWm9SDJSsfyYGU1N/BXNl2d/E+o+LgryKrctBbaHiU9rW4Kzlz+ZdvQZTzzS+C6e2AYOqC6rAKn5pHGaUqLRMpCIjLpzW2pRCI0ANe2tLlZSSOigmTUues9nM7m62p3FBX8z6J/Obfvmjh+nbk3ZlFC7aNtVgqdbDzb78yckU2wzmoWjBIsCEuPk0JDfOPVtp9fjg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0gKgSm97dnIq9Sn3DqSZSIkEikxQODPzRTzIOm3omZg=; b=EurdmIUCgi9729lCEAqfVZ14jbWD1wkdK/+rRJwIILkVPVavsVHdY+DfzNKIdE38pXyS/VImcN2C0KQkoT8tlkDO97rmsLO//6KQOwlePLTTTGlQkQvkBZyWYczojSEhTWeBWYvS0wvbriyb0Plof/GWud4KXf4m2aj3FHAEZ/U= Received: from CO6PR18MB4484.namprd18.prod.outlook.com (2603:10b6:5:359::9) by DS1PR18MB6318.namprd18.prod.outlook.com (2603:10b6:8:1ec::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7698.19; Thu, 20 Jun 2024 09:06:48 +0000 Received: from CO6PR18MB4484.namprd18.prod.outlook.com ([fe80::3c98:dd36:4897:a51d]) by CO6PR18MB4484.namprd18.prod.outlook.com ([fe80::3c98:dd36:4897:a51d%6]) with mapi id 15.20.7698.020; Thu, 20 Jun 2024 09:06:44 +0000 From: Akhil Goyal To: Suanming Mou , Matan Azrad CC: "dev@dpdk.org" Subject: RE: [EXTERNAL] [PATCH v2 1/2] crypto/mlx5: optimize AES-GCM IPsec operation Thread-Topic: [EXTERNAL] [PATCH v2 1/2] crypto/mlx5: optimize AES-GCM IPsec operation Thread-Index: AQHavfIq/wjJ6a5c+EyGc9lyqVndIrHG0H9AgAAI0gCAABtFYIAACwwAgAlH4pCAABDUgIAAChFg Date: Thu, 20 Jun 2024 09:06:44 +0000 Message-ID: References: <20240530072413.1602343-1-suanmingm@nvidia.com> <20240614003031.2006131-1-suanmingm@nvidia.com> <20240614003031.2006131-2-suanmingm@nvidia.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO6PR18MB4484:EE_|DS1PR18MB6318:EE_ x-ms-office365-filtering-correlation-id: e922f75b-d76a-4ecc-2fb7-08dc91084ee8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230037|366013|376011|1800799021|38070700015; x-microsoft-antispam-message-info: =?utf-8?B?S1NSTXlRaWVNT0l1MXhKZlpYMTczTi9mRUZVQjNIaWZaVUdPcHhtRTlxYi9Z?= =?utf-8?B?SWtZRUxzdytjdEZDQnQ0Z25OZWpFWjZ2Lzh0S1ZCdnNvTnN1YTcrSFZxSHBH?= =?utf-8?B?VHAyV0t1Nk1CLzBpajZSMmE0akNjZ3ZCRDlhTVVYSGdleWNWcGtzR1I0b2JV?= =?utf-8?B?R1ZQZklVSDJPRFAyVmhPMHphWE9qRmk2aDl3Slc5OEhMa0tsQzRvckE1c3lE?= =?utf-8?B?aXpBN1VaMFJDalk1L1BRUnN3dmlyNjh5RGs0V2ZTWVkzN1RoQUJFcVcyMk1v?= =?utf-8?B?TE9qQkIrNll2MG04MW05bjdHdi9CaUlGcy9RZS9WVElMSHpEMFB0WStoMENE?= =?utf-8?B?QmNQTHIrM0JlMW95WlJLcDNkZmVJKzdqUEIrandSbnVoSTNTUkY0eXhacS9B?= =?utf-8?B?V1MzencyblJ6VVdGYW9nZEhyYk8zYTJaVlVNVmE0K2RhaDl2bmxKZHdRMjV1?= =?utf-8?B?emt5QWx0K1JOSmdnVkdvTFZFS3lONk8wdEVRbmlxUkJ0SHExclhmZ3VPbUF5?= =?utf-8?B?aFNlSEdZVmd0ZjlBQ3oxZjl6WXcxWVVQcFNQakUrQWdTUE9US0duNmVlK0p6?= =?utf-8?B?TlNSc2Z6eStsT3JDSUMyTHVqZFJjUFFjMHlNMm8xdUMySXI0YUxXL3lkdytD?= =?utf-8?B?K3QwQzYyUWNFc1FlektwcFR5WWpRRGg2cTgyZ25KMExVQ1M1bzR5MGJlbXU4?= =?utf-8?B?THN4ZUFVeStIK21VRHJzSG9iOHlYSkZYcFVwZzNMam5UbGw2c21ITnNESmlh?= =?utf-8?B?RzZGV2NVNFE5dU1zM3pZd1pBT1hybHVUc2gxTE5MVkxuektzMFYydXZ1K0VR?= =?utf-8?B?bm5vWEFhTDZYMk9oQzF2RUJzMUNLZEs2N21kMjRsMXRDUjlZN2VzSXpUcmdO?= =?utf-8?B?YUtMbG0ySThzeDR1MXZtWTJlcXYrN2lmTDJMdW53N0FpZGxXZVZ0UDhhRFIy?= =?utf-8?B?cE8vbEJubklnZUYzQUIyRlBLbllUejA4U1JSeUtrQWk1S29NMTVJVmE5S1Iv?= =?utf-8?B?Ykc2U3d1VEIzYndPWGtPODBuSCttd0FxZjA5SS8ySG5wZjFzSjB1Slp2YWhq?= =?utf-8?B?Mi9vWnlnRElFS0FqNTdKMkswM0J3K2p1WnlxVHhpY1BiZWxHdEgxQ0l4UlEx?= =?utf-8?B?N2tPOEpVOERqdEp0Z2ZNYzlvazUvRkJFaTlGRFBIZVI4QjJZWXVNd0FBZnhW?= =?utf-8?B?K1k2WHpnQmRYZUptdTZ3RnRxVFg2S1hTeDloRjBrZUMzQkRWek5XZEZPVU95?= =?utf-8?B?bzFwY05oVGhIK3Bkb1NORjI0U0FTbk4yYlNNYlpseGY0UkFHcCtpQkpDdUNm?= =?utf-8?B?QVNvQVBIZytXY2RUQzRIUzJkY09QcTZzOFpkRUQ4ZmplZkJkMzhNcU9YTU0x?= =?utf-8?B?NVJVZmkxSG1nYWxFZXRqR1B5bXZrbDk2akE4YUhGQjJqdFVJcGxPc0cvdkhF?= =?utf-8?B?MG9PcmYzTjJLZU8zVGxwck9oUWdFaStTckFabmtldU5WL3RPM3pXcG9xdmFw?= =?utf-8?B?SnBKVUJWUnNYVWNscFRsMEFTaDdlQ0d3Qm1lQWlDRlFkTlljMmlwaFR0M1BM?= =?utf-8?B?MThraWFNemIxVkF0NlhuTkZ6alY3NUZ3RTJYeG01U1Bac3lYcDFuZ281Tk1Q?= =?utf-8?B?dWhWWEhGVnVsNnIwbVVhSmRoK0RCUCtTU3g2anZ5a3FqR3l6YlFoWFFWNzZN?= =?utf-8?B?Z0V6R1NMY3Azbk5BOGdaM3phUVI0WGlmdGtRT1FDU3hJcDJORnhINTMyQjl1?= =?utf-8?B?Q3hDODZRRys0eVBuaHA3b2JsbzZjeVpxbDVaNklwNE91RFNNaks5SjB0VzRJ?= =?utf-8?Q?TGcGloEklmuo/IirtDq/S5+0jAMW/r/xMJQXU=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CO6PR18MB4484.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230037)(366013)(376011)(1800799021)(38070700015); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Y0J2ZkI5NmlROXV0djFMSTFnS0lkUTZ2cUhjbmxHa2dUblc4YnBrZ2NOdUVP?= =?utf-8?B?NmYxUkNwK1NnNUpNdy80K3pLTUZFUitQdzBaTFZadWk4emRLL3JISDJoUGFp?= =?utf-8?B?Wm5Ddm9JNmY5Rkp0SUtCQ2MreDdVWE9Ic0pIaDBlb0RNOFRhb3hJTUlsRkM2?= =?utf-8?B?cjJubFp0aG1DTldLSkNqLzNrR05GNkRUM0REaG5JcVhlT2E4SjdNNFlyRzNR?= =?utf-8?B?ckRmNksxY1JEdnc4bGZxTXdKbC81WHFoSllZSHkrcXN0MmZRbytKY3JUWHZR?= =?utf-8?B?Q2s2RklkbTJPQVRxRitDUTgvam52K09FbkhpbjluSm1SYTVBY0lORE5aMUlv?= =?utf-8?B?YXBYeXFrQlZ5M3JPSmE0RURPMTJHR2FsRTEyb3hDVHh1NjlldEs4d2tmcDBt?= =?utf-8?B?UXVIK3UzdldJemVpVHJFTjE3Slo5OGFRMWdlMWhHbEhCT2hML3dweGlUVnV0?= =?utf-8?B?YUpCaC9UdlZlM3JkWVl5cGM0WGRMeEFUUkpTOWozRTAzcS9lakZNb3NQQnY4?= =?utf-8?B?SnZXeGllZ2FwOEQ4Q0FLR0gvNnFhTGtNNkhoenkza2EweTZvKzBWUUpzVGNy?= =?utf-8?B?aXhWY2pUNnc1dWZ0U3VHSFVLcHpqemJuUTJwaFNVeTF2cCtpUFVkT3FQSDFw?= =?utf-8?B?bU95V1ZnSG8xM2lrQ0I0NW5zUDFEdnF6NVg2SVNqRGdMNkxocnY4MUpIZ3dr?= =?utf-8?B?YlFlb3RxRkRXQVk0dE9UeGFyQlBwS3NnQ2h5bmRuNFFZTWhkdUN2ckhtdGVz?= =?utf-8?B?bXYvZkZ2eHlGY1l3OEhESk9UNi9HZ3c0Q1UxcnRYMjBCSXBhbDU3WG5aUjd3?= =?utf-8?B?Rlo2aW50dExKMjNZekJueDVGbFd5cC9PWjkycTJ6dW4ybkR0T2Vvbmlwa2lX?= =?utf-8?B?V1Zad3F4ODJVQzh5OHNOcC9XUXVQMzNDeDUxbXFMczBjSkxxZlR1NERwaW85?= =?utf-8?B?b0hCcDM4TFdGRThKdjMwejJlZzZFbHQreU5tcmdPeC91TTd3UTZOL2xpRktp?= =?utf-8?B?bWtEdkxPalYveCszME1GL2tLVHJNbW5jZmdPYW0yc1lDN2pPK2VlRlhZMkp1?= =?utf-8?B?eGxzcGc1ZUQ1K3ltZDFFKzljMEhmeFlUclNDS2R0eS9OUUNxSnQ4TFRwWU5N?= =?utf-8?B?SEgvdi9VTmpCMnEwWUorUGJCWHUwRmpmQmdhWVNEU1A5dkJydzdTN3p3Y3RE?= =?utf-8?B?M0trNDFoa0hhd0x4TmMzd3dnUVFJd1IvUE0zeW9MZi9WOFY4aVQybnJEQ3Zv?= =?utf-8?B?aUFXUnlLTGkvRVp3SG5oeTNHWWQ5OHdHT0VKS3Y3bjhXRzVVaXA5dlFEbkxG?= =?utf-8?B?SDJ4TXI4UHVkS1ZaZjVEL2V1NVJNMXc2YWQ4N1lha2tlMnErZUFDVjByK3NG?= =?utf-8?B?NFN0bGlYUFJIQ0JWQ0lhTXR4MHVXSnA2aW5wU1RyRHl1RVQzNEJkUnFGbmpi?= =?utf-8?B?dFFDTmh2SEFIbVBTSkplajBUc2ZSbGpIWjcrb2NjY1FadzhLZ1pZejNFNUlK?= =?utf-8?B?TFNNK3R4cDI0a0RjV3V1ekRhNGc4QVp3WCtJd053RlE4WDFjQWxLZEdDOUxW?= =?utf-8?B?MGFYZUxuMzA0VDlBRDJGL1NQL3kwOEVmeGE4VG1Sc1Z3UmRQbUxHR3d5MmNh?= =?utf-8?B?OU04WWVhL3p6RXdIdW9EdzRscmhJYmJxalhJTEFmQVFtSDlKM096bmltNWxD?= =?utf-8?B?SldJQ0hJYm15Tmo3bXlVTnd2NnJDSm9TMUZHRGs5ZjJ1K2o0QjdZS3FaNjla?= =?utf-8?B?WHdzMHNGa3dhNGVvSy8yelozS21vR1ZpTlZEb01RMXRsa0ZZbjdjeFJjOGl4?= =?utf-8?B?dTVkVGdVVHhHSExlRWtlRGljMEc3S2Eyd0lnbndjUjl4R0J3NXhMUzJXc0lI?= =?utf-8?B?bC94YlluckNpNzBsVkdWNGVIQ3dhSzZBRHhTMDJwckVza2hDR2ozSnZIb1k1?= =?utf-8?B?c3JCZkphUmRvaFVPM3pnaEd1N1FXTUkyOXJ3RkxPVDRBOXJVZjV4NzVNZmkr?= =?utf-8?B?TEpyZktnS1paS3RUTUJxanMxRkJsUDBCbUl0NzlFQ3RWeEdIVkNaZG1ibDRv?= =?utf-8?B?RjdzNkZvbS9JaTdTTVEwQlU5Y2dhTXB4SVNEeEFNS3RSbEVYMExoTHV2ZDJK?= =?utf-8?Q?FeGM=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO6PR18MB4484.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e922f75b-d76a-4ecc-2fb7-08dc91084ee8 X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Jun 2024 09:06:44.9201 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: KhLltZGLbDFwyFYwuBBb84Thf41uacU06vDrbH46w0AW8fMG2E5f2FTuNwLAgFTj6osMWAP5tJWTmWSX/pfWdA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS1PR18MB6318 X-Proofpoint-ORIG-GUID: tGyT3Fqjrc7dH_ZEwMGjlvFqBpZFwqPO X-Proofpoint-GUID: tGyT3Fqjrc7dH_ZEwMGjlvFqBpZFwqPO X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-20_06,2024-06-19_01,2024-05-17_01 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 PiA+IFN1YmplY3Q6IFJFOiBbRVhURVJOQUxdIFtQQVRDSCB2MiAxLzJdIGNyeXB0by9tbHg1OiBv cHRpbWl6ZSBBRVMtR0NNDQo+ID4gSVBzZWMgb3BlcmF0aW9uDQo+ID4NCj4gPiA+IEhpLA0KPiA+ ID4NCj4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gRnJvbTogQWto aWwgR295YWwgPGdha2hpbEBtYXJ2ZWxsLmNvbT4NCj4gPiA+ID4gU2VudDogRnJpZGF5LCBKdW5l IDE0LCAyMDI0IDU6MDcgUE0NCj4gPiA+ID4gVG86IFN1YW5taW5nIE1vdSA8c3Vhbm1pbmdtQG52 aWRpYS5jb20+OyBNYXRhbiBBenJhZA0KPiA+ID4gPiA8bWF0YW5AbnZpZGlhLmNvbT4NCj4gPiA+ ID4gQ2M6IGRldkBkcGRrLm9yZw0KPiA+ID4gPiBTdWJqZWN0OiBSRTogW0VYVEVSTkFMXSBbUEFU Q0ggdjIgMS8yXSBjcnlwdG8vbWx4NTogb3B0aW1pemUgQUVTLUdDTQ0KPiA+ID4gPiBJUHNlYyBv cGVyYXRpb24NCj4gPiA+ID4NCj4gPiA+ID4gPiBIaSBBa2hpbCwNCj4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+IEZyb206IEFraGls IEdveWFsIDxnYWtoaWxAbWFydmVsbC5jb20+DQo+ID4gPiA+ID4gPiBTZW50OiBGcmlkYXksIEp1 bmUgMTQsIDIwMjQgMjo0OSBQTQ0KPiA+ID4gPiA+ID4gVG86IFN1YW5taW5nIE1vdSA8c3Vhbm1p bmdtQG52aWRpYS5jb20+OyBNYXRhbiBBenJhZA0KPiA+ID4gPiA+ID4gPG1hdGFuQG52aWRpYS5j b20+DQo+ID4gPiA+ID4gPiBDYzogZGV2QGRwZGsub3JnDQo+ID4gPiA+ID4gPiBTdWJqZWN0OiBS RTogW0VYVEVSTkFMXSBbUEFUQ0ggdjIgMS8yXSBjcnlwdG8vbWx4NTogb3B0aW1pemUNCj4gPiA+ ID4gPiA+IEFFUy1HQ00gSVBzZWMgb3BlcmF0aW9uDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g PiBUbyBvcHRpbWl6ZSBBRVMtR0NNIElQc2VjIG9wZXJhdGlvbiB3aXRoaW4gY3J5cHRvL21seDUs IHRoZQ0KPiA+ID4gPiA+ID4gPiBEUERLIEFQSSB0eXBpY2FsbHkgc3VwcGxpZXMgQUVTX0dDTSBB QUQvUGF5bG9hZC9EaWdlc3QgaW4NCj4gPiA+ID4gPiA+ID4gc2VwYXJhdGUgbG9jYXRpb25zLCBw b3RlbnRpYWxseSBkaXNydXB0aW5nIHRoZWlyIGNvbnRpZ3VvdXMNCj4gPiA+ID4gPiA+ID4gbGF5 b3V0LiBJbiBjYXNlcyB3aGVyZSB0aGUgbWVtb3J5IGxheW91dCBmYWlscyB0byBtZWV0DQo+ID4g PiA+ID4gPiA+IGhhcmR3YXJlIChIVykgcmVxdWlyZW1lbnRzLCBhbiBVTVIgV1FFIGlzIGluaXRp YXRlZCBhaGVhZCBvZg0KPiA+ID4gPiA+ID4gPiB0aGUgR0NNJ3MgR0dBIFdRRSB0byBlc3RhYmxp c2ggYSBjb250aW51b3VzIEFBRC9QYXlsb2FkL0RpZ2VzdA0KPiA+ID4gPiA+ID4gPiB2aXJ0dWFs IG1lbW9yeSBzcGFjZSBmb3INCj4gPiA+IHRoZQ0KPiA+ID4gPiBIVyBNTVUuDQo+ID4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiA+IEZvciBJUHNlYyBzY2VuYXJpb3MsIHdoZXJlIHRoZSBtZW1vcnkg bGF5b3V0IGNvbnNpc3RlbnRseQ0KPiA+ID4gPiA+ID4gPiBhZGhlcmVzIHRvIHRoZSBmaXhlZCBv cmRlciBvZiBBQUQvSVYvUGF5bG9hZC9EaWdlc3QsIGRpcmVjdGx5DQo+ID4gPiA+ID4gPiA+IHNo cmlua2luZyBtZW1vcnkgZm9yIEFBRCBwcm92ZXMgbW9yZSBlZmZpY2llbnQgdGhhbiBwcmVwYXJp bmcNCj4gPiA+ID4gPiA+ID4gYSBVTVIgV1FFLiBUbyBhZGRyZXNzIHRoaXMsIGEgbmV3IGRldmFy ZyAiY3J5cHRvX21vZGUiIHdpdGgNCj4gPiA+ID4gPiA+ID4gbW9kZSAiaXBzZWNfb3B0IiBpcyBp bnRyb2R1Y2VkIGluIHRoZSBjb21taXQsIG9mZmVyaW5nIGFuDQo+ID4gPiA+ID4gPiA+IG9wdGlt aXphdGlvbiBoaW50IHNwZWNpZmljYWxseSBmb3IgSVBzZWMgY2FzZXMuIFdoZW4gZW5hYmxlZCwN Cj4gPiA+ID4gPiA+ID4gdGhlIFBNRCBjb3BpZXMgQUFEIGRpcmVjdGx5IGJlZm9yZSBQYXlsb2Fk IGluIHRoZQ0KPiA+ID4gPiA+ID4gPiBlbnF1ZXVlX2J1cnN0IGZ1bmN0aW9uIGluc3RlYWQgb2Yg ZW1wbG95aW5nIHRoZSBVTVIgV1FFLg0KPiA+ID4gPiA+ID4gPiBTdWJzZXF1ZW50bHksIGluIHRo ZSBkZXF1ZXVlX2J1cnN0IGZ1bmN0aW9uLCB0aGUgb3ZlcnJpZGRlbiBJVg0KPiA+ID4gPiA+ID4g PiBiZWZvcmUgUGF5bG9hZCBpcyByZXN0b3JlZCBmcm9tIHRoZSBHR0EgV1FFLiBJdCdzIGNydWNp YWwgZm9yDQo+ID4gPiA+ID4gPiA+IHVzZXJzIHRvIGF2b2lkIHV0aWxpemluZyB0aGUgaW5wdXQg bWJ1ZiBkYXRhDQo+ID4gPiBkdXJpbmcNCj4gPiA+ID4gcHJvY2Vzc2luZy4NCj4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiBUaGlzIHNlZW1zIHZlcnkgc3BlY2lmaWMgdG8gbWx4NSBhbmQgaXMgbm90 IGFzIHBlciB0aGUNCj4gPiA+ID4gPiA+IGV4cGVjdGF0aW9ucyBvZiBjcnlwdG9kZXYgQVBJcy4N Cj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJdCBzZWVtcyB5b3UgYXJlIGFza2luZyB0byBhbHRl ciB0aGUgdXNlciBhcHBsaWNhdGlvbiB0bw0KPiA+ID4gPiA+ID4gYWNjb21tb2RhdGUgdGhpcyB0 byBzdXBwb3J0IElQc2VjLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IENyeXB0b2RldiBBUElz IGFyZSBmb3IgZ2VuZXJpYyBjcnlwdG8gcHJvY2Vzc2luZyBvZiBkYXRhIGFzDQo+ID4gPiA+ID4g PiBkZWZpbmVkIGluIHJ0ZV9jcnlwdG9fb3AuDQo+ID4gPiA+ID4gPiBXaXRoIHlvdXIgcHJvcG9z ZWQgY2hhbmdlcywgaXQgc2VlbXMgdGhlIGJlaGF2aW9yIG9mIHRoZSBjcnlwdG8NCj4gPiA+ID4g PiA+IEFQSXMgd2lsbCBiZSBkaWZmZXJlbnQgaW4gY2FzZSBvZiBtbHg1IHdoaWNoIEkgYmVsaWV2 ZSBpcyBub3QgY29ycmVjdC4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJcyBpdCBub3QgcG9z c2libGUgZm9yIHlvdSB0byB1c2UgcnRlX3NlY3VyaXR5IElQc2VjIHBhdGg/DQo+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gU29ycnkgSSBkb24ndCB1bmRlcnN0YW5kIHdoeSB0aGF0 IGNvbmZsaWN0cyB0aGUgQVBJLCBJSVVDIGNyeXB0bw0KPiA+ID4gPiA+IEFQSSBvbmx5IGp1c3Qg ZGVmaW5lcyB0aGUgQUFEL1BheWxvYWQvRGlnZXN0IGluIHN0cnVjdA0KPiA+ID4gPiA+IHJ0ZV9j cnlwdG9fc3ltX29wLCBidXQgbm90IHJlc3RyaWN0IHRoZSBzZXF1ZW5jZSwgYW5kDQo+ID4gPiA+ ID4gQUFEL1BheWxvYWQvRGlnZXN0IG1heSBjb21lIGZyb20NCj4gPiA+ID4gZGlmZmVyZW5jZSBt ZW1vcnkgc3BhY2UuDQo+ID4gPiA+ID4gQW0gSSBtaXNzaW5nIHNvbWV0aGluZyBoZXJlPw0KPiA+ ID4gPg0KPiA+ID4gPiBZZXMgeW91IGFyZSBjb3JyZWN0IHRoYXQgdGhlcmUgaXMgbm8gcmVzdHJp Y3Rpb24gdGhlcmUuDQo+ID4gPiA+DQo+ID4gPiA+ID4gVGhlIGlucHV0IHJlcXVpcmVtZW50cyBm cm9tIG1seDUgSFcgaXMgQUFEL1BheWxvYWQvRGlnZXN0DQo+ID4gPiA+ID4gc2VxdWVuY2UsIGlm IHRoZSBpbnB1dCBtZW1vcnkgb2YgQUFEL1BheWxvYWQvRGlnZXN0IGRvZXMgbm90IG1lZXQNCj4g PiA+ID4gPiB0aGUgcmVxdWlyZW1lbnRzLCBQTUQgd2lsbCB0cnkgdG8gY29tYmluZSB0aGUgbWVt b3J5IGFkZHJlc3Mgc3BhY2UNCj4gPiA+ID4gPiB3aXRoIFVNUiBXUUUgYXMgdGhhdCBjb21taXQg ZG9lcyBieSBzb2Z0d2FyZSBzaHJpbmsuDQo+ID4gPiA+DQo+ID4gPiA+IEFuZCBoZXJlLCB5b3Ug YXJlIGFkZGluZyBhIHJlc3RyaWN0aW9uIGZvciBJUHNlYyBjYXNlLg0KPiA+ID4gPiBJIGJlbGll dmUgeW91IG5lZWQgYSB3YXkgdG8gaWRlbnRpZnkgSVBzZWMgY2FzZSB3aXRoIG5vbi1pcHNlYyBj YXNlIGluIGRhdGENCj4gPiBwYXRoLg0KPiA+ID4gPiBGb3IgdGhhdCwgaW5zdGVhZCBvZiB1c2lu ZyBhIGRldmFyZyh3aGljaCBpcyBhIHNwZWNpZmljIGNhc2UgZm9yDQo+ID4gPiA+IG1seDUpLCB5 b3UgY2FuIHVzZSBnZW5lcmljIHJ0ZV9zZWN1cml0eSBzZXNzaW9uIHdpdGggYWN0aW9uIHR5cGUN Cj4gPiA+ID4gUlRFX1NFQ1VSSVRZX0FDVElPTl9UWVBFX05PTkUuDQo+ID4gPg0KPiA+ID4gSnVz dCB0byBlbXBoYXNpemUsIHRoaXMgaXMgbm90IGEgcmVzdHJpY3Rpb24sIHdlIGRvbid0IHJlc3Ry aWN0IHVzZXINCj4gPiA+IG11c3QgdXNlIHRoYXQgZGV2YXJnIGZvciBJUFNFQyBjYXNlLg0KPiA+ ID4gVGhlIHdheSB0byBpZGVudGlmeSBvciBhcHBseSB0aGF0IG9wdGltaXphdGlvbiBpcyB1c2Vy J3MgZGV2YXJnIG9mDQo+ID4gImlwc2VjX29wdCIuDQo+ID4gPiBXaXRob3V0IHRoYXQgaGludCBm cm9tIGRldmFyZywgcG1kIHdpbGwgd29yayBpbiBVTVIgbW9kZSB0byBjb21iaW5lDQo+ID4gPiB0 aGUgbWVtb3J5IGFkZHJlc3Nlcy4NCj4gPg0KPiA+IEV2ZW4gaWYgaXQgaXMgYW4gb3B0aW9uYWwg dGhpbmcuDQo+ID4gQWZ0ZXIgYWRkaW5nIHRoZSBkZXZhcmcsIHRoZSB1c2VyIGlzIGV4cGVjdGVk IHRvIHVzZSB0aGUgYnVmZmVycyB0aGUgd2F5IHlvdXINCj4gPiBQTUQgaXMgZXhwZWN0aW5nLiBT bywgdGhpcyBpcyBhIHJlc3RyaWN0aW9uLiBSaWdodD8NCj4gDQo+IFRoZSBkZXZhcmcgaXMgbm90 IGVuYWJsZWQgYnkgZGVmYXVsdCwgaWYgdXNlciBhZGRzIHRoZSBkZXZhcmcsIHRoYXQgbWVhbnMg dXNlcg0KPiBrbm93IHdoYXQgaGUgaXMgZG9pbmcsIGFuZCB0aGUgaW5wdXQgaXMgc3VpdGFibGUg Zm9yIHRoYXQgb3B0aW1pemF0aW9uLg0KPiBQTUQgZG9lc24ndCByZXN0cmljdCB1c2VyIG11c3Qg dXNlIHRoYXQgaGludCB0byBoYW5kbGUgSVBzZWMgY2FzZSwgdXNlciB3aWxsIHN0aWxsIGJlDQo+ IGFibGUgdG8gaGFuZGxlIElQc2VjIG9wZXJhdGlvbiB3aXRob3V0IHRoYXQgZGV2YXJnLg0KDQpE ZXZhcmcgaXMgb3B0aW9uYWwgYW5kIG5vdCBlbmFibGVkIGJ5IGRlZmF1bHQuIFRoYXQgaXMgY2xl YXIgdG8gbWUgYXQgdGhlIGZpcnN0IHBsYWNlLg0KDQpUaGUgcG9pbnQgaXMgUE1EIGRldmFyZyBj YW4gZGljdGF0ZSB0aGUgYmVoYXZpb3Igb2YgUE1EIGFuZCBOT1QgdGhlIHVzZXIuDQpUaGUgc3Rh bmRhcmQgQVBJcyBhcmUgdGhlIG9uZXMgd2hpY2ggdXNlciBtdXN0IGFkaGVyZSB0by4NCg0KWW91 IGNhbm5vdCBleHBlY3QgYSB1c2VyIHRvIGNoYW5nZSBpdHMgY29kZSB3aGVuIGl0IHdhbnRzIHRv IHVzZSB0aGUgZGV2YXJnIG9wdGltaXphdGlvbi4NCg0KPiBJZiB1c2VyIGhhcyBtaXhlZCBjYXNl cywganVzdCBsZWF2ZSB0aGUgZGV2YXJnIGF3YXksIGRvZXMgdGhhdCBtYWtlIHNlbnNlPw0KPiAN Cj4gPg0KPiA+IFdoYXQgd291bGQgYmUgdGhlIGJlaGF2aW9yIGlmIGRldmFyZyBpcyBzZXQgYnV0 IHRoZSBidWZmZXJzIGFyZSBjb25maWd1cmVkIHRoZQ0KPiA+IHNhbWUgd2F5IGFzIGJlZm9yZT8N Cj4gPg0KPiA+ID4gSSBhZ3JlZSBtb3ZlIHRvIG90aGVyIEFQSSB3aWxsIGFsc28gbWFrZSB0aGUg aGludCB3b3JrLiBCdXQgaWYNCj4gPiA+IHByb3ZpZGluZyBvbmUgaGludCBkZXZhcmcgaGVyZSBk b2VzIG5vdCBjb25mbGljdCB0aGUgQVBJIGFuZCBicmluZw0KPiA+ID4gYmV0dGVyIGNvbXBhdGli aWxpdHksIGl0IGRvZXMgbm90IGh1cnQuDQo+ID4NCj4gPiBJIGRvIG5vdCB1bmRlcnN0YW5kIGhv dyBpdCBpcyBicmluZ2luZyBiZXR0ZXIgY29tcGF0aWJpbGl0eS4NCj4gPg0KPiA+IFRoZSBkZXZh cmcgdGhhdCBpcyBhZGRlZCBmb3IgaXBzZWNfb3B0IHNlZW1zIHJlZHVuZGFudC4NCj4gPiBXZSBz aG91bGQgdXNlIHN0YW5kYXJkIEFQSXMgd2hlbiB0aGV5IGFyZSBhdmFpbGFibGUuDQo+ID4gRGV2 YXJncyBhcmUgYWRkZWQgdG8gcGFzcyBvbiBhZGRpdGlvbmFsIHJ1biB0aW1lIGNvbmZpZ3VyYXRp b24gd2hpY2ggaXMgbm90DQo+ID4gcGFydCBvZiBzdGFuZGFyZCBBUEkgc2V0IGFuZCBpcyBzcGVj aWZpYyB0byBhIHBhcnRpY3VsYXIgUE1ELg0KPiA+IEJ1dCBpbiB0aGlzIGNhc2UsIHdlIGRvIGhh dmUgcnRlX3NlY3VyaXR5IGFuZCBydGVfaXBzZWMgQVBJcyB0byBjb25maWd1cmUgSVBzZWMNCj4g PiBzcGVjaWZpYyByZXF1aXJlbWVudHMuDQo+IA0KPiBPSywgSSBhc3N1bWUgeW91IGFncmVlZCBi ZWZvcmUgdGhhdCB0aGUgc3RhbmRhcmQgQVBJIGRvZXMgbm90IGRlZmluZSB0aGUNCj4gbWVtb3J5 IGxheW91dCwgcmlnaHQ/DQpZZXMgaXQgZG9lcyBub3QgZm9yIGNyeXB0byBBUElzLg0KDQpCdXQg aWYgd2UgdXNlIHJ0ZV9zZWN1cml0eSBhbmQgcnRlX2lwc2VjIEFQSXMsIGZvcm1hdCBvZiBwYWNr ZXRzIHNob3VsZCBiZSBhcyBwZXIgSVBzZWMgcmVxdWlyZW1lbnQuDQpUaGF0IGlzIGltcGxpY2l0 IGZvciB0aGUgYXBwbGljYXRpb24gdG8gaW1wcm92ZSBwZXJmb3JtYW5jZS4NCg0KPiBBQUQsIElW IGFuZCBwYXlsb2FkIGFyZSBhbGwgZGVmaW5lZCBzZXBhcmF0ZWx5LiBUaGUgQVBJIGlzIG5vdCBh ZmZlY3RlZC4gTGV0J3MgYWxpZ24NCj4gdGhlIHBhdGNoIGRvZXMgbm90IGJyZWFrIHRoZSBBUEku DQo+IEFuZCBhbm90aGVyIHJlYXNvbiB0byBoYXZlIGl0IGlzIGR1ZSB0byBBRVNfR0NNIGNhbiBh bHNvIGJlIHVzZSBhcyBJUHNlYw0KPiBtZWNoYW5pc20odGhhdCBpcyB3aGF0IGhhcyBiZWVuIG1l cmdlZCkuIFdoYXQgZG8geW91IHRoaW5rPw0KDQpUaGF0IGlzIHN1cHBvcnRlZCBhbmQgdGVzdGVk IHVzaW5nIGlwc2VjLXNlY2d3IGFzIHdlbGwgYXMgZHBkay10ZXN0IGFwcGxpY2F0aW9uLg0KQnV0 IGFkZGluZyBhIFBNRCBkZXZhcmcgZm9yIGV4cGxpY2l0bHkgc3VwcG9ydGluZyBJUHNlYyBpcyBu b3QgcmVxdWlyZWQuDQpVc2VyIGNhbm5vdCBiZSBkaWN0YXRlZCBieSB0aGUgUE1EIGRldmFyZyB0 byBhbGlnbiBpdHMgYnVmZmVycy4NCg0KPiBBbmQgYWdhaW4sIEkgc3RpbGwgYWdyZWUgd2l0aCB5 b3Ugb3RoZXIgQVBJIG1heSBhbHNvIGJlIGFibGUgdG8gYWNoaWV2ZSB0aGF0LiBCdXQNCj4gdGhh dCdzIGFub3RoZXIgdG9waWMsIGZvciBub3csIHdlIGV4cGVjdCBtbHg1IFBNRCBBRVNfR0NNIGNh biBzZXJ2ZSBJUHNlYw0KPiB3aXRoIGFuZCB3aXRob3V0IHRoZSBoaW50KGFmdGVyIHRoYXQgcGF0 Y2gpLg0KPiANCj4gVGhhbmtzLA0KPiBTdWFubWluZw0K