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 7E45AA034C; Sun, 13 Mar 2022 09:45:06 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0EBA740698; Sun, 13 Mar 2022 09:45:06 +0100 (CET) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2081.outbound.protection.outlook.com [40.107.94.81]) by mails.dpdk.org (Postfix) with ESMTP id 70E2D4068A; Sun, 13 Mar 2022 09:45:03 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RYCaUp4dCib/cpXUGyqmK4MXsGuGuYGoWBQYUyM4uORssx4JPaXK0BPh4SQ9ZBQqFxo2EgHYDBhli8wea7kL2B3d5EWvnHthrwjcWo2Wgl2en18AAlLSbIs+kXUYfewXSY7SrQ2Hx0yakbWkO01lAwkliodMA2IqQVSPk1eflz1iGwIA5Qg4HozpEYEwIY24hs8N0biHmFUD8Xxw3SEZwzpS06rBL037IBjsfk+zGG/cDpPJhAiBcGBpAEW3xJnLmes0TLarw5uhXPf9KRrsG0DP0WwEB+nuztMilGrDWutql7pHkhNLx0p7txmVgJLYT3pB+lYoqvjKAZnAAGTyQQ== 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=cBfllXm0OvYcTF/SyJR88k9TxkQMgpR0RwEcqcMEYm0=; b=M5uu36EVY8kc5RqG0DgopfSI02EI8IJA/SfxXKk8N7hknN9swYGDdyF6doI6T0TplHCqRE6F3NxTnCa/UvfBgxXGBMLyZBUewvHLEdrz+SZeMnXqrgPA6gDpUst0JwMV4893ZzwPfOPgOUssw/Zr8iXXZMoiB2PN6izEjsuNeWs50U1I3T5knPr6BRIoS8BKhwuphiKuRBopby4qeLfNGZ49q7ylctAqTW1mKmkNWT8J6/+ZnBqpJj8ewdsLq/Mgzv/Lo6UmtLOqNqUwjnY4flzHtNQhFuGDDGkC9SFSiMPxAmjZmAGznCs/7DM0cxlO/VF66Sunfp//yzflff1sCw== 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=cBfllXm0OvYcTF/SyJR88k9TxkQMgpR0RwEcqcMEYm0=; b=sk71WZejwl85fnzG5RXfY3+9xXqO3/TnhNZ1RUdCD6DvV7ye4nCYp8EEsxKcvMmdS8QCnN/8pr9xFFE5vjAHwNxil3I7lZBNyL0YMvrGLxVDgK07BaSnv2j7fKn6TgM1A4+kVk/FdBQHAhPvTN67dDYFNSbq/um/BpeMa5QLrB5ne61sHGCEnDs+E/5f2e487uQm8AKPt00HisdF2d8aaSJLb17tyEZILWwwA5ozpDq3mgS7Whz4e6z+OBIN7PBEgnxnT9QQUEeTDQEVLyasXjZwSuEnsPl3ZiGivQPKz2RElzKvXW6b4RbhdwWQRnOgaIC24bxo8as2I+SWYYO7tg== Received: from CY4PR12MB1575.namprd12.prod.outlook.com (2603:10b6:910:f::23) by BY5PR12MB3857.namprd12.prod.outlook.com (2603:10b6:a03:196::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.25; Sun, 13 Mar 2022 08:45:00 +0000 Received: from CY4PR12MB1575.namprd12.prod.outlook.com ([fe80::7583:55e6:ad4a:4d19]) by CY4PR12MB1575.namprd12.prod.outlook.com ([fe80::7583:55e6:ad4a:4d19%8]) with mapi id 15.20.5061.026; Sun, 13 Mar 2022 08:45:00 +0000 From: Gregory Etelson To: "Singh, Aman Deep" , "dev@dpdk.org" CC: Matan Azrad , Raslan Darawsheh , "stable@dpdk.org" , Xiaoyun Li , Yuying Zhang , Ting Xu , Ferruh Yigit Subject: RE: [PATCH] app/testpmd: fix GTP header parsing in csum FWD engine Thread-Topic: [PATCH] app/testpmd: fix GTP header parsing in csum FWD engine Thread-Index: AQHYNIoNRitoUTDoW06it5bkx3mKcay6MH4AgALS6IA= Date: Sun, 13 Mar 2022 08:44:59 +0000 Message-ID: References: <20220310142019.13398-1-getelson@nvidia.com> In-Reply-To: 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-office365-filtering-correlation-id: eb27439c-1366-48d0-030a-08da04cdc250 x-ms-traffictypediagnostic: BY5PR12MB3857:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: sFHrNn5mWJSolQzE4UUo3yyrJaRc3+PetOeWoUtk8SpjGO8algoghiIFq57PApQX3U1fKs6AWwfW2EIxD6aKQOzrkU6kw0NFaupm4cAFFZnSDcY88eEHBvQf+kaTQdv9r6BxxiEZDSs99i9aDf9hq5FyAD0z39L8cZfFuT25kICTsydRE/LfLxnrPfs0P8wDjxG65Vc84597QvIVHTIZOyHSyerJSMY5zhTh8bW1YaEfP+Ud4DjpD61I+IHzQmI752Zg+1rC0W4Y3SezlkOo1gMohl0U9Ydh+RG1lrc3Mcc2zNUf3ioIbg1jGsqA9G2/e0ACvVyAX1vsk3uGeH/SK/men/pNjAmhXw32HJg3qUrwz5yhcsTK7Gk92Fk42PZXc6HquEwfwb3wMvx9JV/AUHzd80I7xbu2y7qoVNFjnguKnoQvmrkJz7DWkyqgUhtpHps7jftbtBKbaHKoeKJOePSfL9H98g3XDhFy2d9t5ZC2lBl77Mt6aETMiyWEBDoCtcEtHYmIa92lLiw7oiZ8W1O6E6Tzu28ixQ17rNxCcvidVB42yxZdmhMC5XpsksD5EQ1BD3NCefoJz4wu6b43FPSxqo+mvM7ZYiH2MYDPsqg/7TAgQuF0xV3rYLb4bmlGVxMNkYa9rtqmo0Hd4qjAWZ3SSETacP7cGA/i7dW4+2/8WxQR7i90mS+TlMGFAUm0c76hWYxXa93xBqIBSFHORQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CY4PR12MB1575.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(8936002)(110136005)(76116006)(38100700002)(64756008)(8676002)(66446008)(66476007)(38070700005)(508600001)(54906003)(71200400001)(122000001)(4326008)(55016003)(316002)(66556008)(83380400001)(53546011)(2906002)(86362001)(186003)(66946007)(9326002)(6506007)(7696005)(5660300002)(9686003)(52536014)(33656002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZUxJVGRqS1RSN2NLNytzWllxOWYvaGdZMHhoVTlhNHlxVSsxVEhqM0Q5NXBM?= =?utf-8?B?ditpc1J3TnYwWTZjWllHUnFOcEphMTJmcDE3MlhLN0hSK0dTTWxHVXo2QlNP?= =?utf-8?B?cW9JYVNjYkpmcEhSSzVGUXB6eHlSeFlGdWxHR2xHQXBMNGw4TlBnTld0Mmxs?= =?utf-8?B?RUdOQ010T1FHeU8xS3VYQlRCRVRzdjlzNDBmSDJoMHBteDFaaU5uZmF5RG5z?= =?utf-8?B?RDdOY2V2aExrVHNjdGlkbDUzeXVHYzdlMkdEcHYvRTdQSXlMVHQwZE81UnM3?= =?utf-8?B?OE0yNXVQK2RaWU9IUm9BQ0pvVWJKcXZmdXh5ZGxEVDdRMDVIN3NHUXZsbW9Z?= =?utf-8?B?NlZaQWRzWlBpOWU5V1VOQ0ZlcmZRTjIzamM2eEJaaEZFalZENEl0UTBmUktz?= =?utf-8?B?ZGk2bHdnSVExVS9yMURQUnd2RUpFS1pGMFhtV1hZNyswdWRDYUd2dTNIazBC?= =?utf-8?B?M1lqTTVrV01NRGVBbXU5eHJDZnU2d29nSU1lTG5mUFRkUC8vaC9XT1kxd3l6?= =?utf-8?B?N29WSzRaNG5yS1RTTENOdHFkejM0V244OTNJUmMxWkVQSDRWZ1dyS2lGTWVG?= =?utf-8?B?Z2ZBazVyNmZ3V1NaMkx2ODlnMTdNSnByZkNhdlVFK1BjZXliSmVMUGtYQVEw?= =?utf-8?B?eXBVT0pFRXNYWkxGTUduVXg3dE85SGd2K2VaL21RMmt5a0VORHJrVXhGV1h6?= =?utf-8?B?SnlOa2xaSDBGMG1XNGIyeERBeTRwMXN5QkIxVTZ2RFdIelNBL3pHZVAySnAw?= =?utf-8?B?MnNuTVFqV3RiUGlldFBhbTYzUExkWExTb2NDc1R6T3FMUVRNdHVTN1ZUWUtZ?= =?utf-8?B?MVBlT1B3ZTNwbzZSQjJOc3Q3NHBOYUppMFdoYlM3aUt4eVVRNlBBbWkzUGw1?= =?utf-8?B?V0hrM0pWQXh1KzZYSnRITjBMajZuR1BUakwvK3FmNjZLNzFobk54OTdIZTMr?= =?utf-8?B?dkRZWFhHZnVJY3VINjFjNjJvVU43aE01OWwxb1c0cjM5WENjZDBRbk5MUzdG?= =?utf-8?B?M2s1Z2dPb2lXUnlHZjhYemg1SURGa1JFSEVtcmNuWUJtQ2t1Q2NlYk9aZ1da?= =?utf-8?B?NkFxUXhDdHFpYkVRRUtWYVIrM0JPcGVMY2o0ejh3UTBobHNjMnk4UEp5YzRp?= =?utf-8?B?bXgrN2QyRkZoZnk5dmE3cnd5Skp1YzRzYlNSYUhhV0pjK25DdWtuU1dIVWhy?= =?utf-8?B?UmY1WGs0VklhTlRWeFBXZ0pLeGFyNTVGd1RKbmxsdzhFNVdQTzFGNVNUank5?= =?utf-8?B?UU9BTks0bHZ6OGhnQ24wSEFkNGY5cm1xMURMYldlVEF3LzdGZEVuQXRsU0lV?= =?utf-8?B?ZTNTTk9leW9wcEZicFlzUHFPY20yNEJXZmxQMDZ3QkpocEdJemY4T1FKQnZW?= =?utf-8?B?NFNJZzcwRWVIL3E1RkdZVkpVZ0FReFlDSTRUU1BoL3R1UzUrZ2tkclhMb2t5?= =?utf-8?B?aE9uZFI2QUpDeVpwVVBvUlI2d09wUlBSMjdJM1RETGJ6SkV1N0ZwM0hkZ3dR?= =?utf-8?B?YktGTTV6RjhrQzFwNWxIMTVHQitsSzhjcUh3RndNTEFHVDJOWEQ5eUJsTVpC?= =?utf-8?B?RlNad1oxQmpZTnkzQkJmMndsS3FxeEtsajBZSEtmbGRFeExEUTZWZDhOSVd0?= =?utf-8?B?N3BDOTNWVHVYamVmUEJiS0dUUjhUSG5wN0xSNU14UUpRN2N1UEVOeDluT3Zk?= =?utf-8?B?UDNUNUtONUo0cFd5dWdNLzZrNFNqbDU0RUpEWTBvTjJhNWNXbzlSYytVRnBq?= =?utf-8?B?ekZmME9pd0ZFZk9Sc252VDY1TjRqN2phWSs0aDl2Rjkxbk1qcFFKKytNNk1T?= =?utf-8?B?QWdIUFhqZVNZMEtLdTdUSWJCYi9CaWthbWNhNWZLQjc0bzQ3RzY4b3RQUWEy?= =?utf-8?B?cTlablpVZDVOUjRXenRjcjFGUCthcG9lOWZRMEo4bE8xVDk3cnRmQ24reFlY?= =?utf-8?B?eXljdnU0NE40THBUYW5nZ08xM2RibExzN0JheG4vbExHL3kyaktmUWNsUW4w?= =?utf-8?B?MlBXTXVVK2VIU2E1YXZMM3FraXJvaGdaSkp1QlRYVmo2WmU0OVpkOWxKQ1Zz?= =?utf-8?Q?qltklo?= Content-Type: multipart/alternative; boundary="_000_CY4PR12MB157590B2CE80BEB59A3DD758A50E9CY4PR12MB1575namp_" MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY4PR12MB1575.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eb27439c-1366-48d0-030a-08da04cdc250 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Mar 2022 08:44:59.9458 (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: oNjjTivAn4HCenTu5GH7NVB6v8MJ1nikn1USN6PvdV6Ug88BsJpbP37epFoNmighSFNh0w29aKgopH+bmlq+rQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB3857 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 --_000_CY4PR12MB157590B2CE80BEB59A3DD758A50E9CY4PR12MB1575namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGVsbG8sDQoNCkZyb206IFNpbmdoLCBBbWFuIERlZXAgPGFtYW4uZGVlcC5zaW5naEBpbnRlbC5j b20+DQpTZW50OiBGcmlkYXksIE1hcmNoIDExLCAyMDIyIDE1OjM1DQpUbzogR3JlZ29yeSBFdGVs c29uIDxnZXRlbHNvbkBudmlkaWEuY29tPjsgZGV2QGRwZGsub3JnDQpDYzogTWF0YW4gQXpyYWQg PG1hdGFuQG52aWRpYS5jb20+OyBSYXNsYW4gRGFyYXdzaGVoIDxyYXNsYW5kQG52aWRpYS5jb20+ OyBzdGFibGVAZHBkay5vcmc7IFhpYW95dW4gTGkgPHhpYW95dW4ubGlAaW50ZWwuY29tPjsgWXV5 aW5nIFpoYW5nIDx5dXlpbmcuemhhbmdAaW50ZWwuY29tPjsgVGluZyBYdSA8dGluZy54dUBpbnRl bC5jb20+OyBGZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+DQpTdWJqZWN0OiBS ZTogW1BBVENIXSBhcHAvdGVzdHBtZDogZml4IEdUUCBoZWFkZXIgcGFyc2luZyBpbiBjc3VtIEZX RCBlbmdpbmUNCg0KRXh0ZXJuYWwgZW1haWw6IFVzZSBjYXV0aW9uIG9wZW5pbmcgbGlua3Mgb3Ig YXR0YWNobWVudHMNCg0KDQpMb29rcyBnb29kIHRvIG1lLg0KT24gMy8xMC8yMDIyIDc6NTAgUE0s IEdyZWdvcnkgRXRlbHNvbiB3cm90ZToNCg0KR1RQIGhlYWRlciBjYW4gYmUgZm9sbG93ZWQgYnkg YW4gb3B0aW9uYWwgMzIgYml0cyBleHRlbnNpb24uDQoNCkdUUCBub3RpZmllcyBhYm91dCB0aGUg ZXh0ZW5zaW9uIHByZXNlbmNlIHRocm91Z2ggdGhlIEUsIFMgb3IgUE4NCg0KaGVhZGVyIGJpdHMu DQoNCg0KDQpDc3VtIEdUUCBoZWFkZXIgcGFyc2VyIGRpZCBub3QgY2hlY2sgdGhlIGV4dGVuc2lv biBiaXRzIHZhbHVlLg0KDQoNCg0KVGhlIHBhdGNoIHVwZGF0ZXMgR1RQIGhlYWRlciBsZW5ndGgg aWYgaGVhZGVyIGV4dGVuc2lvbiBiaXRzIGFyZSBzZXQuDQpDYW4gd2UgcmVwaHJhc2UgYWJvdmUg bGluZSAiaWYgYXQtbGVhc3Qgb25lIG9mIHRoZSBleHRlbnNpb24gYml0IGlzIHNldC4iDQpUbyBt YWtlIGl0IG1vcmUgY2xlYXIuDQoNCltHcmVnb3J5XSBJ4oCZbGwgcG9zdCB2MiB3aXRoIHVwZGF0 ZWQgY29tbWVudC4NCg0KDQoNCg0KDQoNCg0KQ2M6IHN0YWJsZUBkcGRrLm9yZzxtYWlsdG86c3Rh YmxlQGRwZGsub3JnPg0KDQoNCg0KRml4ZXM6IGQ4ZTVlNjlmM2E5YiAoImFwcC90ZXN0cG1kOiBh ZGQgR1RQIHBhcnNpbmcgYW5kIFR4IGNoZWNrc3VtIG9mZmxvYWQiKQ0KDQpTaWduZWQtb2ZmLWJ5 OiBHcmVnb3J5IEV0ZWxzb24gPGdldGVsc29uQG52aWRpYS5jb20+PG1haWx0bzpnZXRlbHNvbkBu dmlkaWEuY29tPg0KQWNrZWQtYnk6IEFtYW4gU2luZ2ggPGFtYW4uZGVlcC5zaW5naEBpbnRlbC5j b20+PG1haWx0bzphbWFuLmRlZXAuc2luZ2hAaW50ZWwuY29tPg0KDQoNCg0KLS0tDQoNCiBhcHAv dGVzdC1wbWQvY3N1bW9ubHkuYyB8IDcgKysrLS0tLQ0KDQogMSBmaWxlIGNoYW5nZWQsIDMgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkNCg0KDQoNCmRpZmYgLS1naXQgYS9hcHAvdGVzdC1w bWQvY3N1bW9ubHkuYyBiL2FwcC90ZXN0LXBtZC9jc3Vtb25seS5jDQoNCmluZGV4IDUyNzRkNDk4 ZWUuLmY4YWJjZGVkMmIgMTAwNjQ0DQoNCi0tLSBhL2FwcC90ZXN0LXBtZC9jc3Vtb25seS5jDQoN CisrKyBiL2FwcC90ZXN0LXBtZC9jc3Vtb25seS5jDQoNCkBAIC0yMjMsMTUgKzIyMywxNCBAQCBw YXJzZV9ndHAoc3RydWN0IHJ0ZV91ZHBfaGRyICp1ZHBfaGRyLA0KDQoNCg0KICAgICAgICBndHBf aGRyID0gKHN0cnVjdCBydGVfZ3RwX2hkciAqKSgoY2hhciAqKXVkcF9oZHIgKw0KDQogICAgICAg ICAgICAgICAgICBzaXplb2Yoc3RydWN0IHJ0ZV91ZHBfaGRyKSk7DQoNCi0NCg0KKyAgICAgICBp ZiAoZ3RwX2hkci0+ZSB8fCBndHBfaGRyLT5zIHx8IGd0cF9oZHItPnBuKQ0KDQorICAgICAgICAg ICAgICAgZ3RwX2xlbiArPSBzaXplb2Yoc3RydWN0IHJ0ZV9ndHBfaGRyX2V4dF93b3JkKTsNCg0K ICAgICAgICAvKg0KDQogICAgICAgICAqIENoZWNrIG1lc3NhZ2UgdHlwZS4gSWYgbWVzc2FnZSB0 eXBlIGlzIDB4ZmYsIGl0IGlzDQoNCiAgICAgICAgICogYSBHVFAgZGF0YSBwYWNrZXQuIElmIG5v dCwgaXQgaXMgYSBHVFAgY29udHJvbCBwYWNrZXQNCg0KICAgICAgICAgKi8NCg0KICAgICAgICBp ZiAoZ3RwX2hkci0+bXNnX3R5cGUgPT0gMHhmZikgew0KDQotICAgICAgICAgICAgICAgaXBfdmVy ID0gKih1aW50OF90ICopKChjaGFyICopdWRwX2hkciArDQoNCi0gICAgICAgICAgICAgICAgICAg ICAgICBzaXplb2Yoc3RydWN0IHJ0ZV91ZHBfaGRyKSArDQoNCi0gICAgICAgICAgICAgICAgICAg ICAgICBzaXplb2Yoc3RydWN0IHJ0ZV9ndHBfaGRyKSk7DQoNCisgICAgICAgICAgICAgICBpcF92 ZXIgPSAqKHVpbnQ4X3QgKikoKGNoYXIgKilndHBfaGRyICsgZ3RwX2xlbik7DQoNCiAgICAgICAg ICAgICAgICBpcF92ZXIgPSAoaXBfdmVyKSAmIDB4ZjA7DQoNCg0KDQogICAgICAgICAgICAgICAg aWYgKGlwX3ZlciA9PSBSVEVfR1RQX1RZUEVfSVBWNCkgew0K --_000_CY4PR12MB157590B2CE80BEB59A3DD758A50E9CY4PR12MB1575namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1m YWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAy IDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpWZXJkYW5hOw0KCXBhbm9zZS0xOjIgMTEg NiA0IDMgNSA0IDQgMiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q29uc29sYXM7DQoJ cGFub3NlLTE6MiAxMSA2IDkgMiAyIDQgMyAyIDQ7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8N CnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bWFyZ2luOjBtbTsN Cglmb250LXNpemU6MTEuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmO30N CmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNv bG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQpwcmUNCgl7bXNvLXN0eWxl LXByaW9yaXR5Ojk5Ow0KCW1zby1zdHlsZS1saW5rOiJIVE1MIFByZWZvcm1hdHRlZCBDaGFyIjsN CgltYXJnaW46MG1tOw0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIg TmV3Ijt9DQpzcGFuLkhUTUxQcmVmb3JtYXR0ZWRDaGFyDQoJe21zby1zdHlsZS1uYW1lOiJIVE1M IFByZWZvcm1hdHRlZCBDaGFyIjsNCgltc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJbXNvLXN0eWxl LWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIjsNCglmb250LWZhbWlseToiQ29uc29sYXMiLHNlcmlm O30NCnNwYW4uYWNrZWQtYnkNCgl7bXNvLXN0eWxlLW5hbWU6YWNrZWQtYnk7fQ0Kc3Bhbi5FbWFp bFN0eWxlMjMNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtY29tcG9zZTsNCglmb250LWZhbWls eToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsNCgljb2xvcjp3aW5kb3d0ZXh0O30NCi5Nc29DaHBEZWZh dWx0DQoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7fQ0K QHBhZ2UgV29yZFNlY3Rpb24xDQoJe3NpemU6NjEyLjBwdCA3OTIuMHB0Ow0KCW1hcmdpbjo3Mi4w cHQgNzIuMHB0IDcyLjBwdCA3Mi4wcHQ7fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRT ZWN0aW9uMTt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVk ZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlmXS0t PjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0K PG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+ PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9keSBsYW5nPSJFTi1VUyIgbGluaz0iYmx1ZSIgdmxp bms9InB1cnBsZSIgc3R5bGU9IndvcmQtd3JhcDpicmVhay13b3JkIj4NCjxkaXYgY2xhc3M9Ildv cmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IZWxsbyw8bzpwPjwvbzpwPjwvcD4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0i Ym9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBtbSAwbW0g MG1tIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9wOnNv bGlkICNFMUUxRTEgMS4wcHQ7cGFkZGluZzozLjBwdCAwbW0gMG1tIDBtbSI+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj48Yj5Gcm9tOjwvYj4gU2luZ2gsIEFtYW4gRGVlcCAmbHQ7YW1hbi5kZWVwLnNp bmdoQGludGVsLmNvbSZndDsgPGJyPg0KPGI+U2VudDo8L2I+IEZyaWRheSwgTWFyY2ggMTEsIDIw MjIgMTU6MzU8YnI+DQo8Yj5Ubzo8L2I+IEdyZWdvcnkgRXRlbHNvbiAmbHQ7Z2V0ZWxzb25AbnZp ZGlhLmNvbSZndDs7IGRldkBkcGRrLm9yZzxicj4NCjxiPkNjOjwvYj4gTWF0YW4gQXpyYWQgJmx0 O21hdGFuQG52aWRpYS5jb20mZ3Q7OyBSYXNsYW4gRGFyYXdzaGVoICZsdDtyYXNsYW5kQG52aWRp YS5jb20mZ3Q7OyBzdGFibGVAZHBkay5vcmc7IFhpYW95dW4gTGkgJmx0O3hpYW95dW4ubGlAaW50 ZWwuY29tJmd0OzsgWXV5aW5nIFpoYW5nICZsdDt5dXlpbmcuemhhbmdAaW50ZWwuY29tJmd0Ozsg VGluZyBYdSAmbHQ7dGluZy54dUBpbnRlbC5jb20mZ3Q7OyBGZXJydWggWWlnaXQgJmx0O2ZlcnJ1 aC55aWdpdEBpbnRlbC5jb20mZ3Q7PGJyPg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbUEFUQ0hdIGFw cC90ZXN0cG1kOiBmaXggR1RQIGhlYWRlciBwYXJzaW5nIGluIGNzdW0gRldEIGVuZ2luZTxvOnA+ PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5i c3A7PC9vOnA+PC9wPg0KPHRhYmxlIGNsYXNzPSJNc29Ob3JtYWxUYWJsZSIgYm9yZGVyPSIxIiBj ZWxsc3BhY2luZz0iMyIgY2VsbHBhZGRpbmc9IjAiIHN0eWxlPSJiYWNrZ3JvdW5kOiNGRkVCOUMi Pg0KPHRib2R5Pg0KPHRyPg0KPHRkIHN0eWxlPSJwYWRkaW5nOi43NXB0IC43NXB0IC43NXB0IC43 NXB0Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6Ny41 cHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OyxzYW5zLXNlcmlmO2NvbG9yOmJsYWNr Ij5FeHRlcm5hbCBlbWFpbDogVXNlIGNhdXRpb24gb3BlbmluZyBsaW5rcyBvciBhdHRhY2htZW50 czwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTo3LjVwdDtmb250LWZhbWlseTomcXVv dDtWZXJkYW5hJnF1b3Q7LHNhbnMtc2VyaWY7Y29sb3I6YmxhY2siPg0KPC9zcGFuPjxvOnA+PC9v OnA+PC9wPg0KPC90ZD4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjxwIGNsYXNzPSJNc29O b3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwPkxvb2tzIGdvb2QgdG8gbWUu PG86cD48L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gMy8xMC8yMDIy IDc6NTAgUE0sIEdyZWdvcnkgRXRlbHNvbiB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K PGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+ DQo8cHJlPkdUUCBoZWFkZXIgY2FuIGJlIGZvbGxvd2VkIGJ5IGFuIG9wdGlvbmFsIDMyIGJpdHMg ZXh0ZW5zaW9uLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkdUUCBub3RpZmllcyBhYm91dCB0aGUg ZXh0ZW5zaW9uIHByZXNlbmNlIHRocm91Z2ggdGhlIEUsIFMgb3IgUE48bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT5oZWFkZXIgYml0cy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48bzpwPiZuYnNwOzwv bzpwPjwvcHJlPg0KPHByZT5Dc3VtIEdUUCBoZWFkZXIgcGFyc2VyIGRpZCBub3QgY2hlY2sgdGhl IGV4dGVuc2lvbiBiaXRzIHZhbHVlLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPjxvOnA+Jm5ic3A7 PC9vOnA+PC9wcmU+DQo8cHJlPlRoZSBwYXRjaCB1cGRhdGVzIEdUUCBoZWFkZXIgbGVuZ3RoIGlm IGhlYWRlciBleHRlbnNpb24gYml0cyBhcmUgc2V0LjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2Nr cXVvdGU+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1 b3Q7Q291cmllciBOZXcmcXVvdDsiPkNhbiB3ZSByZXBocmFzZSBhYm92ZSBsaW5lICZxdW90O2lm IGF0LWxlYXN0IG9uZSBvZiB0aGUgZXh0ZW5zaW9uIGJpdCBpcyBzZXQuJnF1b3Q7PGJyPg0KVG8g bWFrZSBpdCBtb3JlIGNsZWFyLjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29O b3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g c3R5bGU9ImNvbG9yOiM1NDgyMzU7bXNvLXN0eWxlLXRleHRmaWxsLWZpbGwtY29sb3I6IzU0ODIz NTttc28tc3R5bGUtdGV4dGZpbGwtZmlsbC1hbHBoYToxMDAuMCUiPltHcmVnb3J5XQ0KPC9zcGFu PknigJlsbCBwb3N0IHYyIHdpdGggdXBkYXRlZCBjb21tZW50LjxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+PGJyPg0KPGJyPg0KPG86cD48L286cD48L3A+DQo8YmxvY2txdW90 ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxwcmU+PG86 cD4mbmJzcDs8L286cD48L3ByZT4NCjxwcmU+PG86cD4mbmJzcDs8L286cD48L3ByZT4NCjxwcmU+ Q2M6IDxhIGhyZWY9Im1haWx0bzpzdGFibGVAZHBkay5vcmciPnN0YWJsZUBkcGRrLm9yZzwvYT48 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48bzpwPiZuYnNwOzwvbzpwPjwvcHJlPg0KPHByZT5GaXhl czogZDhlNWU2OWYzYTliICgmcXVvdDthcHAvdGVzdHBtZDogYWRkIEdUUCBwYXJzaW5nIGFuZCBU eCBjaGVja3N1bSBvZmZsb2FkJnF1b3Q7KTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPlNpZ25lZC1v ZmYtYnk6IEdyZWdvcnkgRXRlbHNvbiA8YSBocmVmPSJtYWlsdG86Z2V0ZWxzb25AbnZpZGlhLmNv bSI+Jmx0O2dldGVsc29uQG52aWRpYS5jb20mZ3Q7PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Js b2NrcXVvdGU+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBjbGFzcz0iYWNrZWQtYnkiPkFj a2VkLWJ5OiBBbWFuIFNpbmdoIDxhIGhyZWY9Im1haWx0bzphbWFuLmRlZXAuc2luZ2hAaW50ZWwu Y29tIj4NCiZsdDthbWFuLmRlZXAuc2luZ2hAaW50ZWwuY29tJmd0OzwvYT48L3NwYW4+IDxvOnA+ PC9vOnA+PC9wPg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJv dHRvbTo1LjBwdCI+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9wcmU+DQo8cHJlPi0tLTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPiBhcHAvdGVzdC1wbWQvY3N1bW9ubHkuYyB8IDcgKysrLS0tLTxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA0 IGRlbGV0aW9ucygtKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9w cmU+DQo8cHJlPmRpZmYgLS1naXQgYS9hcHAvdGVzdC1wbWQvY3N1bW9ubHkuYyBiL2FwcC90ZXN0 LXBtZC9jc3Vtb25seS5jPG86cD48L286cD48L3ByZT4NCjxwcmU+aW5kZXggNTI3NGQ0OThlZS4u ZjhhYmNkZWQyYiAxMDA2NDQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4tLS0gYS9hcHAvdGVzdC1w bWQvY3N1bW9ubHkuYzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL2FwcC90ZXN0LXBtZC9j c3Vtb25seS5jPG86cD48L286cD48L3ByZT4NCjxwcmU+QEAgLTIyMywxNSArMjIzLDE0IEBAIHBh cnNlX2d0cChzdHJ1Y3QgcnRlX3VkcF9oZHIgKnVkcF9oZHIsPG86cD48L286cD48L3ByZT4NCjxw cmU+IDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyBndHBfaGRyID0gKHN0cnVjdCBydGVfZ3RwX2hkciAqKSgoY2hhciAqKXVk cF9oZHIgKzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgJm5ic3A7Jm5ic3A7c2l6ZW9mKHN0cnVjdCBydGVfdWRwX2hkcikpOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPi08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7IGlmIChndHBfaGRyLSZndDtlIHx8IGd0cF9oZHItJmd0O3MgfHwgZ3Rw X2hkci0mZ3Q7cG4pPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBndHBfbGVuICs9IHNpemVvZihzdHJ1Y3QgcnRlX2d0cF9oZHJfZXh0X3dvcmQpOzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgLyo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7ICZuYnNwOyogQ2hlY2sgbWVzc2FnZSB0eXBlLiBJZiBtZXNzYWdlIHR5cGUgaXMg MHhmZiwgaXQgaXM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyogYSBHVFAgZGF0YSBwYWNrZXQuIElmIG5vdCwgaXQgaXMg YSBHVFAgY29udHJvbCBwYWNrZXQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyovPG86cD48L286cD48L3ByZT4NCjxwcmU+ ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoZ3RwX2hkci0mZ3Q7bXNn X3R5cGUgPT0gMHhmZikgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi0mbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgaXBfdmVyID0gKih1aW50OF90ICopKChjaGFyICopdWRwX2hkciArPG86cD48 L286cD48L3ByZT4NCjxwcmU+LSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAgc2l6ZW9mKHN0cnVjdCBydGVf dWRwX2hkcikgKzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi0mbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgIHNp emVvZihzdHJ1Y3QgcnRlX2d0cF9oZHIpKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlwX3ZlciA9ICoodWludDhfdCAqKSgoY2hhciAqKWd0cF9o ZHIgKyBndHBfbGVuKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4gJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IGlwX3ZlciA9IChpcF92ZXIpICZhbXA7IDB4ZjA7PG86cD48L286cD48L3ByZT4N CjxwcmU+IDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyBpZiAoaXBfdmVyID09IFJURV9HVFBfVFlQRV9JUFY0KSB7PG86cD48L286cD48L3By ZT4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvYm9keT4NCjwvaHRt bD4NCg== --_000_CY4PR12MB157590B2CE80BEB59A3DD758A50E9CY4PR12MB1575namp_--