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 71FA741BAA; Thu, 2 Feb 2023 08:31:47 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 54BC942B7E; Thu, 2 Feb 2023 08:31:47 +0100 (CET) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2059.outbound.protection.outlook.com [40.107.237.59]) by mails.dpdk.org (Postfix) with ESMTP id D36B3406A2 for ; Thu, 2 Feb 2023 08:31:45 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kDiZuaAbxvCbE4T3GilRhBfHifbf/TrxsRlhT8dZhoaXwPlvpRsNnZBIF0GV6CyQEBpXGTYJ+qYj6k6sGr4wIqsXULNxUa9SWI4k3e6dLlu615J+V4xGEmE/8yanMf1QhRolQs9xSf22mZ5wz3FKNrIZHBRN1BzEypxfnrzopD5VQCwQz8WYx1N8QamXJrIkB3WOe2RferKkIrVf7khUGKHDiYEcbhfOa+skOeIlgpjdLqMLThStp7kKwOV84gZ4uRyQRKufMDEkidnrNCoJKi4gz8qjZjRPZSWJ7M9yNTapOccskFjNiIFD90bRLSVhoRaNW6FfHYesT9pvsmt3/A== 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=drjfMeI7eJMUKgP28ISbPtDk2Ke15gd2CVur0GzuWBw=; b=ejh6YTK6XLGb0oDavORR4GyaTmyrac2vqzzpi+yGYcCGLadzcU++hLWqTxIwtHs4wv6K/n/s+XnmtUpGw/JcdwlGFp0myswSPnEpBAlttEBknS44cll5NRWayWcwYJpMxT4PQ6mKXYmRkSoNqbV1vHIm/kHAkwcktU+Q48uIvLeDPNONtNpmFoR6n1P92cjMZjS8NSNtmZ6gajbWtaiMTD0lti+TA6lAHIQQupvAgzcdCvRyN0S/Vzmim6kv9XwMDjZPRRz4rR6aoXCx9uh0hZEDCDgCKUxD3vxcvjOh++W/uDQsUhqhkFsXC4jF1a06U6xqt6zHPFyEwxDXb+NmcA== 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=drjfMeI7eJMUKgP28ISbPtDk2Ke15gd2CVur0GzuWBw=; b=MKR/0nsdICfwdQ12zRL8ksIzFyrXxIm7zmSi441U2yZYbxp6wij+PkyKaw3uwWRIl6S2dZWAUXf2Vc/oL4/ZT4+QF3ODbcgfGDJ/OO9UpyWKT0bFK3I/EctvOo8OJ2QktflZ47wRgSi/OoBDKkyPTklKmR4OMJzPeQH0As4rNY2Tv1v6hmD7QZz4OgVyu6v+YLLsmg7SR+cIPuuaSSqSevEBQaIBSYTY8UbITWzE39x8UUClK24LeOqM8rUseGfXyckN8Sr3LJ4GV6hzXAJZAWRue5SkTFYdUKs/ajmyRMD1wUQjuaOH/FiUrzk/+F1i02bo1tKyJ1twBik1J6p5Sg== Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) by DM4PR12MB6278.namprd12.prod.outlook.com (2603:10b6:8:a4::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.24; Thu, 2 Feb 2023 07:31:42 +0000 Received: from MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::6ba4:b9e8:d439:59e4]) by MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::6ba4:b9e8:d439:59e4%4]) with mapi id 15.20.6043.036; Thu, 2 Feb 2023 07:31:42 +0000 From: Ori Kam To: Jerin Jacob CC: Rakesh Kudurumalla , Stephen Hemminger , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Ferruh Yigit , Andrew Rybchenko , "dev@dpdk.org" , "NBU-Contact-Adrien Mazarguil (EXTERNAL)" Subject: RE: [PATCH 1/3] lib: dpdk spec to skip red for ingress policer Thread-Topic: [PATCH 1/3] lib: dpdk spec to skip red for ingress policer Thread-Index: AQHZFaY403El80LSekW+xRZ5HitWoK55OCAAgAAouYCABwcXgIAW6hiAgAyrIgCADQdlIIAA/9UAgAia3XCAAA3mAIAA1mTg Date: Thu, 2 Feb 2023 07:31:42 +0000 Message-ID: References: <20221222013904.692922-1-rkudurumalla@marvell.com> <20221221190140.399996e0@hermes.local> 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-traffictypediagnostic: MW2PR12MB4666:EE_|DM4PR12MB6278:EE_ x-ms-office365-filtering-correlation-id: 73e927ce-2fed-4ce8-68e4-08db04ef87a2 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: 6k23c82w8mFtukmE2Ip2UqP7nzMzSwM9VBbz+bCttteCppdOoVXeOvY5hC1wtwHuDqe2cechzQ/NicUH+6g328UFqbUYQMzVP3JaHGvPfqsT77Pa8PvhHfvQW+mlLMQYqaCmn+8jkfBQmu9Eztw81RLUSWioLTj0BurZjkyji7bCHEOoPVQwJEKcDIS1np29oF2g9614BxgvV7WxJnDFnVrDZeUtAXNXDdUwMgYHSWenTlKEFG9OilWZprkbZQ4DYxX2Qjsty3FKymuTFZVhXpA+ESBM8E56s/fi4drD6ymsqHM+wdV1xYQNG1StZeuC1qz9Qal1sg1WprXh6bpf6uLMb/46JxWCSzHlJ3/eripGizSvAWDFOuqVkdnag0g8ktxr9MvxoLwGMgWRBg5yKJWB0GZAgeJl3ASd3Sjiml1QQHpNXJLggxKpqYn/Dgvc6XNs2+ManGnLYBryjFtkyGAT3iZm9lAWXrbif7j6aigyiSafmuPW9j7sjNuTQA/yhe9MiomhOWxX7Z+uvrWvlj4S9/+YslIF3nUTihVxRjPmIS6y/RWSNsz/ldfOu+2wcmhPcxrmSnopJ0vgM1bcN8o9WieqC+s3k+Ob4ZrA+26SECOU8VNw/wSctPbxeSSM0WdCaLeA+DFSYnAvrw1QvN40n2IRVTCC2ghcO00PRL5prPdyFR374OGW2HwGMvHefze5QOBw9AEpVx7EGQD6UQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW2PR12MB4666.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(4636009)(366004)(346002)(396003)(376002)(39860400002)(136003)(451199018)(8936002)(5660300002)(52536014)(41300700001)(38100700002)(122000001)(38070700005)(33656002)(55016003)(86362001)(478600001)(2906002)(7696005)(71200400001)(53546011)(6506007)(186003)(9686003)(26005)(64756008)(76116006)(8676002)(4326008)(6916009)(66446008)(66946007)(66556008)(316002)(66476007)(83380400001)(54906003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?N05KKzE3STRKcW91eU5vUUYzZjhUbTFFSzFsaFJ1SHcrbU5qS1N3d2dvSFdQ?= =?utf-8?B?Q29mYjA0WUx2Qndna1NCTm9KSVhidEtPRysrUytCaHpXVEVSdnpEVnk1WS9a?= =?utf-8?B?SmZGbWcrRUhCTnluVU9naHF2Z1RwYVdibDcxYWI1Q093YlpLdVRSTEpQY1VV?= =?utf-8?B?UFNWczh2b1RrcFZZMWtXR3BDa1BLYTRoSkpQaG81aEk0a3UrM1RjMzcvN0Fi?= =?utf-8?B?STZCRldRUWlwWkN5R3V0L2dZcnkyTDBqdzdnbnVXYVd5bzFuUmk1MXpRV0hq?= =?utf-8?B?cTVnSEVKVGVpZGZmTENvMmw5S2hYeFVlbU9pQi9nQk5Ma211bUcyU2dsWURO?= =?utf-8?B?Qyt0cWNNNjJmMURFQjlrS0pIK2NuWVA1TTdWNkppaFJCdXE4N3BVdm1sQ2JC?= =?utf-8?B?RXJ6c3JlNnFRc3c3eVErZyt1bkVydStEN21mb1dRN2ZYSXhpbXZuQTJVSzZr?= =?utf-8?B?Q3BoZ3lSK29KYkwzNk9ycy9ZOVprT0VvVDhPa0VjQ2psRnhzUDZHV3dUUC84?= =?utf-8?B?ZGdVNzZQdy91c0R5NDd3RE1rNmt1UVhaU0V5MDBtSmF0MUdncDBTa2hXcjVz?= =?utf-8?B?M0dDNWFWeEdhVDBMMlk0SVFIUkowQkNOSW9LSGhTQXRVTnRhcDBMTTZ0WVA5?= =?utf-8?B?ZGRuT2dlUTFUd2JNZFlCNVVSZkFTbjlOZWYxOElSSFVSbm9na0U1bjZqbTBE?= =?utf-8?B?VTRybFo1MlM1eE95c1M5aUVXL1V6bmVnTmRVMWRUWFF5eVR5SVU2QzkzR2Yz?= =?utf-8?B?R2lWbVV4aEx4cDRSTmxRdmdXSDRnQzBvejcyZGh6SXRRTkJZY2JpMFk3TVND?= =?utf-8?B?akVFcU9SdUQxRVFkU2VmbnFIUFZYTnVkejc2aXFTTTdDSDE0dUNkcUkycEd5?= =?utf-8?B?aVNGK3l4cC8rNS9QTXNXczZ2TVhkZTJ5S0dkTjFDT1ZlM0oyL3RIQmJndGVs?= =?utf-8?B?dldITzYwMU14eTllSHc3OTN1VUdOSHVYSDdRL085eENTNFhTVzhpcHJmc3ZC?= =?utf-8?B?TEpkckVyRzd2U3VKWjc1TkpFTnJseXpla2w5QzlXYys3c2F1UE5TL2hKVjd4?= =?utf-8?B?THphNjBIbXRza3JGV1ZMYlpJRGZTTTQyS0h1UW04SllGRzBtM250VUIwZmxG?= =?utf-8?B?dnZqRW5EOUhFSHdMenZ2Z3VpM0Iyb2YrQnE2bVdqdUNDMmhHeENOcG0yVDJX?= =?utf-8?B?Zk90bW1xSDFwOWlxZzRKTFN3ZWJMekdIYUg5UUI1VFo4MnJFY3NldHV0Y3N4?= =?utf-8?B?RWVSKzZLUTFiTm9VSXJ3RWdabVpTR1V0MDRBVWhveTF0VjQ0MitONG5NbVZV?= =?utf-8?B?N1haS1crZjNXTld3aDJrNWZ6T0RoUm1ZcGRSUTRkTForZkk2VVJnZnUzbXhl?= =?utf-8?B?ZXBxOHNQak5WM1hQVFdTQjR0MTJYUE85d1BWa2hqNTVJaXkvdmc0VlBsU29D?= =?utf-8?B?a2VvRm1JVm1aVmNCbXNvYmttcW9DTEJlbnVJYS9ydUZvUHY2Rk8yRmhRNG5w?= =?utf-8?B?MmJKNU9waU9vczZybzRBMnZPTzFHcFJudW93a3VvNER6NC9SaGFMQnZQM1Ev?= =?utf-8?B?aXpyRDZUNlZIeEtKSWVoK1NuYVRtcDBrOEZLSzNPem92eTBhM0FkSDM5cTlt?= =?utf-8?B?ZExnMmkxbzlXU1lDcTFQakVIZWNzVGk1dk1KcWhOTjhhWWpVeExETWtza3pY?= =?utf-8?B?aXJXbFlXbHd4RWpwQktINmFBUTEyZ0pyQXZTZHFMOHpiZ21FS1JuWm5EM3dr?= =?utf-8?B?V2hFNVcvRXRIT1BhSVFWekV4R2c0Ymo5cGNJcnlVYkhBZE82Nk5rNEgyZGZK?= =?utf-8?B?NmJDRWhxak9WdFc2eVZQcWdoTWJpSVBBK1hXTVF2cGNUR2h2ZGVnNW5QcGNm?= =?utf-8?B?K2wwdWYvWGFWMGJLR0ROMGhMaWJiZHR3Zys5VW1tdWVnSW5wanVBOWJRZis3?= =?utf-8?B?dzcwNDFUQk8rdkhPU3hnNXpXWitoMWNHa0k5MGZkd2Y2RURRMWphTmdNVW1U?= =?utf-8?B?OC9zek5PdEtpY2VNNFFtQzdXVnZ3UzZxWGtyczVxMElKNGYrOFJXZWdsbEhX?= =?utf-8?B?SkFjUk4zODdsUVdsV1Rab2FuMEVRNXJ5WkV2WkxJZTUwb3BCN2s5VGp3ZzZ5?= =?utf-8?Q?uo+I6T8WpBJpuzmIdl64S2YTa?= 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: MW2PR12MB4666.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 73e927ce-2fed-4ce8-68e4-08db04ef87a2 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Feb 2023 07:31:42.1851 (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: B0SyntD/Mt8sTxzIQyWNwRJiZ7cQublm6vQCwYnn2xuHUqZ//VcTkAQtOL8KNt00qVGY82xugKEZFLZpuoK6yw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6278 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSmVyaW4gSmFjb2IgPGpl cmluamFjb2JrQGdtYWlsLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCAxIEZlYnJ1YXJ5IDIwMjMg MjA6MzcNCj4gDQo+IE9uIFdlZCwgRmViIDEsIDIwMjMgYXQgMTE6MTkgUE0gT3JpIEthbSA8b3Jp a2FAbnZpZGlhLmNvbT4gd3JvdGU6DQo+ID4NCj4gPg0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogSmVyaW4gSmFjb2IgPGplcmluamFjb2JrQGdtYWls LmNvbT4NCj4gPiA+IFNlbnQ6IEZyaWRheSwgMjcgSmFudWFyeSAyMDIzIDg6MjMNCj4gPiA+IFRv OiBPcmkgS2FtIDxvcmlrYUBudmlkaWEuY29tPg0KPiA+ID4gQ2M6IFJha2VzaCBLdWR1cnVtYWxs YSA8cmt1ZHVydW1hbGxhQG1hcnZlbGwuY29tPjsgU3RlcGhlbg0KPiBIZW1taW5nZXINCj4gPiA+ IDxzdGVwaGVuQG5ldHdvcmtwbHVtYmVyLm9yZz47IE5CVS1Db250YWN0LVRob21hcyBNb25qYWxv bg0KPiA+ID4gKEVYVEVSTkFMKSA8dGhvbWFzQG1vbmphbG9uLm5ldD47IEZlcnJ1aCBZaWdpdA0K PiA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+Ow0KPiA+ID4gQW5kcmV3IFJ5YmNoZW5rbyA8YW5kcmV3 LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+OyBkZXZAZHBkay5vcmc7DQo+ID4gPiBOQlUtQ29udGFj dC1BZHJpZW4gTWF6YXJndWlsIChFWFRFUk5BTCkNCj4gPGFkcmllbi5tYXphcmd1aWxANndpbmQu Y29tPg0KPiA+ID4gU3ViamVjdDogUmU6IFtQQVRDSCAxLzNdIGxpYjogZHBkayBzcGVjIHRvIHNr aXAgcmVkIGZvciBpbmdyZXNzIHBvbGljZXINCj4gPiA+DQo+ID4gPiBPbiBUaHUsIEphbiAyNiwg MjAyMyBhdCA4OjQzIFBNIE9yaSBLYW0gPG9yaWthQG52aWRpYS5jb20+IHdyb3RlOg0KPiA+ID4g Pg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+ID4gPiA+ID4gRnJvbTogUmFrZXNoIEt1ZHVydW1hbGxhIDxya3VkdXJ1bWFsbGFAbWFydmVs bC5jb20+DQo+ID4gPiA+ID4gU2VudDogV2VkbmVzZGF5LCAxOCBKYW51YXJ5IDIwMjMgMTA6MTAN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPiA+ID4gPiA+ID4gRnJvbTogUmFrZXNoIEt1ZHVydW1hbGxhDQo+ID4gPiA+ID4gPiBT ZW50OiBUdWVzZGF5LCBKYW51YXJ5IDEwLCAyMDIzIDEyOjEyIFBNDQo+ID4gPiA+ID4gPiBUbzog T3JpIEthbSA8b3Jpa2FAbnZpZGlhLmNvbT47IEplcmluIEphY29iDQo+IDxqZXJpbmphY29ia0Bn bWFpbC5jb20+Ow0KPiA+ID4gPiA+ID4gU3RlcGhlbiBIZW1taW5nZXIgPHN0ZXBoZW5AbmV0d29y a3BsdW1iZXIub3JnPg0KPiA+ID4gPiA+ID4gQ2M6IE5CVS1Db250YWN0LVRob21hcyBNb25qYWxv biAoRVhURVJOQUwpDQo+ID4gPiA8dGhvbWFzQG1vbmphbG9uLm5ldD47DQo+ID4gPiA+ID4gPiBG ZXJydWggWWlnaXQgPGZlcnJ1aC55aWdpdEBhbWQuY29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA+ ID4gPiA+ID4gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1PjsgZGV2QGRwZGsub3JnOyBO QlUtQ29udGFjdC0NCj4gPiA+IEFkcmllbg0KPiA+ID4gPiA+ID4gTWF6YXJndWlsIChFWFRFUk5B TCkgPGFkcmllbi5tYXphcmd1aWxANndpbmQuY29tPg0KPiA+ID4gPiA+ID4gU3ViamVjdDogUkU6 IFtQQVRDSCAxLzNdIGxpYjogZHBkayBzcGVjIHRvIHNraXAgcmVkIGZvciBpbmdyZXNzIHBvbGlj ZXINCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+ID4gRnJvbTogT3JpIEthbSA8 b3Jpa2FAbnZpZGlhLmNvbT4NCj4gPiA+ID4gPiA+ID4gU2VudDogTW9uZGF5LCBEZWNlbWJlciAy NiwgMjAyMiAxMDozMCBQTQ0KPiA+ID4gPiA+ID4gPiBUbzogSmVyaW4gSmFjb2IgPGplcmluamFj b2JrQGdtYWlsLmNvbT47IFN0ZXBoZW4gSGVtbWluZ2VyDQo+ID4gPiA+ID4gPiA+IDxzdGVwaGVu QG5ldHdvcmtwbHVtYmVyLm9yZz4NCj4gPiA+ID4gPiA+ID4gQ2M6IFJha2VzaCBLdWR1cnVtYWxs YSA8cmt1ZHVydW1hbGxhQG1hcnZlbGwuY29tPjsgTkJVLQ0KPiBDb250YWN0LQ0KPiA+ID4gPiA+ ID4gVGhvbWFzDQo+ID4gPiA+ID4gPiA+IE1vbmphbG9uIChFWFRFUk5BTCkgPHRob21hc0Btb25q YWxvbi5uZXQ+OyBGZXJydWggWWlnaXQNCj4gPiA+ID4gPiA+ID4gPGZlcnJ1aC55aWdpdEBhbWQu Y29tPjsgQW5kcmV3IFJ5YmNoZW5rbw0KPiA+ID4gPiA+ID4gPiA8YW5kcmV3LnJ5YmNoZW5rb0Bv a3RldGxhYnMucnU+OyBkZXZAZHBkay5vcmc7IE5CVS0NCj4gQ29udGFjdC0NCj4gPiA+ID4gPiBB ZHJpZW4NCj4gPiA+ID4gPiA+ID4gTWF6YXJndWlsIChFWFRFUk5BTCkgPGFkcmllbi5tYXphcmd1 aWxANndpbmQuY29tPg0KPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBbRVhUXSBSRTogW1BBVENIIDEv M10gbGliOiBkcGRrIHNwZWMgdG8gc2tpcCByZWQgZm9yIGluZ3Jlc3MNCj4gPiA+ID4gPiA+ID4g cG9saWNlcg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBFeHRlcm5hbCBFbWFpbA0KPiA+ ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gPiA+ID4gPiA+IEhp IEFsbCwNCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KPiA+ID4gPiA+ID4gPiA+IEZyb206IEplcmluIEphY29iIDxqZXJpbmphY29ia0Bn bWFpbC5jb20+DQo+ID4gPiA+ID4gPiA+ID4gU2VudDogVGh1cnNkYXksIDIyIERlY2VtYmVyIDIw MjIgNzoyNw0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gT24gVGh1LCBEZWMgMjIs IDIwMjIgYXQgODozMiBBTSBTdGVwaGVuIEhlbW1pbmdlcg0KPiA+ID4gPiA+ID4gPiA+IDxzdGVw aGVuQG5ldHdvcmtwbHVtYmVyLm9yZz4gd3JvdGU6DQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gPiA+ID4gT24gVGh1LCAyMiBEZWMgMjAyMiAwNzowOTowMiArMDUzMCBSYWtlc2ggS3Vk dXJ1bWFsbGENCj4gPiA+ID4gPiA+ID4gPiA+IDxya3VkdXJ1bWFsbGFAbWFydmVsbC5jb20+IHdy b3RlOg0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+ID4gRHJvcHBpbmcgb2Yg cGFja2V0cyBiYXNlZCBvbiBSRUQgY2FuIGJlIHNraXBwZWQgd2l0aA0KPiBtZXRlcg0KPiA+ID4g PiA+ID4gPiA+ID4gPiBhY3Rpb24sIHdoZW4gUkVEIGlzIGNvbmZpZ3VyZWQgdXNpbmcNCj4gPiA+ ID4gPiA+ID4gPiA+ID4gcnRlX2V0aF9jbWFuX2NvbmZpZ19zZXQoKQ0KPiA+ID4gPiA+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBSYWtlc2ggS3VkdXJ1bWFs bGENCj4gPiA+IDxya3VkdXJ1bWFsbGFAbWFydmVsbC5jb20+DQo+ID4gPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiA+ID4gU2hvdWxkIHRoaXMgYmUgbW9yZSBnZW5lcmFsIGFuZCBhcHBseSB0 byBhbGwgY29uZ2VzdGlvbg0KPiA+ID4gbWFuYWdlbWVudA0KPiA+ID4gPiA+ID4gPiA+ID4gb3B0 aW9ucy4gQXNzdW1pbmcgdGhlIGhhcmR3YXJlIGNhbiBkbyBzb21ldGhpbmcgYmV0dGVyIHRoYW4N Cj4gPiA+IFJFRC4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IFllcy4gV2UgY2Fu IHVzZSAiZW51bSBydGVfY21hbl9tb2RlIG1vZGUiIGluIHRoZQ0KPiBkZXNjcmlwdG9yIHRvDQo+ ID4gPiA+ID4gPiA+ID4gZnV0dXJlLSBwcm9vZi4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ ID4gSSdtIG1pc3NpbmcgdGhlIGlkZWEgb2YgdGhpcyBuZXcgYWN0aW9uLCBJIHVuZGVyc3RhbmQg dGhhdCBpcyByZWxhdGVkDQo+ID4gPiA+ID4gPiA+IHRvIEplcmluIGNvbmdlc3Rpb24gcGF0Y2hl cy4NCj4gPiA+ID4gPiA+ID4gQnV0IEkgZmFpbCB0byBzZWUgd2h5IHdlIG5lZWQgaXQ/IElzIGl0 IHRvIG1hcmsgc29tZSBtZXRhZGF0YSB0aGF0DQo+ID4gPiA+ID4gPiA+IHdpbGwgaGF2ZSBzb21l IGVmZmVjdCBvbiB0aGUgY29uZ2VzdGlvbiByZXN1bHQ/IChJIGFzc3VtZSB0aGUNCj4gc3lzdGVt DQo+ID4gPiA+ID4gPiA+IGlzIGltcGxlbWVudGVkIGluIHRoZSBIVykNCj4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiBZZXMuIEl0IGlzIGltcGxlbWVudGVkIGluIEhXLiBDb25nZXN0aW9uIG1hbmFn ZW1lbnQgaXMgYXBwbGllZCBvbg0KPiA+ID4gPiA+IGV0aGRldg0KPiA+ID4gPiA+ID4gUnggcXVl dWUgdXNpbmcgcnRlX2V0aF9jbWFuX2NvbmZpZygpIEFQSS4gT25jZSBpdCBpcyBjb25maWd1cmVk LCBpdA0KPiA+ID4gYXBwbGllcw0KPiA+ID4gPiA+IHRvDQo+ID4gPiA+ID4gPiBhbGwgdGhlIHBh Y2tldHMgdGhhdCBzdGVlciB0b3dhcmRzIHRoYXQgcGFydGljdWxhciBldGhkZXYgUnggcXVldWUu DQo+IFRoaXMNCj4gPiA+ID4gPiA+IGZlYXR1cmUgaGVscCB0byBza2lwIHRoZSBjb25nZXN0aW9u IG1hbmFnZW1lbnQgcHJvY2Vzc2luZyBiYXNlZA0KPiBvbg0KPiA+ID4gdGhlDQo+ID4gPiA+ID4g PiBwYWNrZXQgY29sb3IgaWRlbnRpZmllZCBieSB0aGUgcnRlX2Zsb3cgbWV0ZXIgb2JqZWN0LiBG b3IgZXhhbXBsZSwNCj4gSWYNCj4gPiA+IG9uZQ0KPiA+ID4gPiA+IFJ4DQo+ID4gPiA+ID4gPiBx dWV1ZSBjb25maWd1cmVkIGFzIFJFRCBjb25nZXN0aW9uICBhbmQgYXBwbGljYXRpb24gd2FudHMg dG8NCj4gYnlwYXNzDQo+ID4gPiB0aGUNCj4gPiA+ID4gPiA+IFJFRCBjb25nZXN0aW9uICBwcm9j ZXNzaW5nIGZvciBhbGwgR1JFRU4gY29sb3IgcGFja2V0IGNhbiBiZQ0KPiBleHByZXNzZWQNCj4g PiA+ID4gPiA+IHRob3VnaCB0aGlzIEFQSSBwcm9wb3NhbC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ IEhpIE9yaSBLYW0sDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBMZXQgbWUga25vdyBpZiBhYm92ZSBp bmZvcm1hdGlvbiAgd291bGQgZ2l2ZSBjbGVhciBpZGVhIG9uIHNraXAgUkVEDQo+ID4gPiBhY3Rp b24NCj4gPiA+ID4NCj4gPiA+ID4gSSB0aGluayBzbywgdG8gcHV0IGl0IGluIG15IG93biB3b3Jk cywgIHdoZW4gc2V0dGluZyB0aGlzIHRoZSBzZWxlY3RlZA0KPiBwYWNrZXQNCj4gPiA+IGlzIHRy ZWF0ZWQgYXMNCj4gPiA+ID4gZ3JlZW4gcGFja2V0Pw0KPiA+ID4gPg0KPiA+ID4gPiBJZiBzbywg Y2FuIHdlIHVzZSB0aGUgbWV0ZXJfY29sb3IgZmllbGQ/IElmIHlvdSB3YW50IHRoZSBwYWNrZXQg dG8gYmUNCj4gZ3JlZW4NCj4gPiA+IGp1c3Qgc2V0IHRoZQ0KPiA+ID4gPiBmaWVsZCB0byBncmVl bj8NCj4gPiA+DQo+ID4gPiBJdCBpcyBhbHJlYWR5IHRoZXJlIGluIG9uZSBmb3JtLiBTZWUgZm9s bG93aW5nIGluIGV4aXN0aW5nIGhlYWRlciBmaWxlLg0KPiA+ID4NCj4gPiA+IC8qKg0KPiA+ID4g ICogTWV0ZXIgcG9saWN5DQo+ID4gPiAgKi8NCj4gPiA+IHN0cnVjdCBydGVfbXRyX21ldGVyX3Bv bGljeV9wYXJhbXMgew0KPiA+ID4gICAgICAgICAvKioNCj4gPiA+ICAgICAgICAgICogUG9saWN5 IGFjdGlvbiBsaXN0IHBlciBjb2xvci4NCj4gPiA+ICAgICAgICAgICogYWN0aW9uc1tpXSBwb3Rl bnRpYWxseSByZXByZXNlbnRzIGEgY2hhaW4gb2YgcnRlX2Zsb3cgYWN0aW9ucw0KPiA+ID4gICAg ICAgICAgKiB0ZXJtaW5hdGVkIGJ5IHRoZSBFTkQgYWN0aW9uLCBleGFjdGx5IGFzIHNwZWNpZmll ZCBieSB0aGUgcnRlX2Zsb3cNCj4gPiA+ICAgICAgICAgICogQVBJIGZvciB0aGUgZmxvdyBkZWZp bml0aW9uLCBhbmQgbm90IGp1c3QgYSBzaW5nbGUgYWN0aW9uLg0KPiA+ID4gICAgICAgICAgKi8N Cj4gPiA+ICAgICAgICAgY29uc3Qgc3RydWN0IHJ0ZV9mbG93X2FjdGlvbiAqYWN0aW9uc1tSVEVf Q09MT1JTXTsNCj4gPiA+IH07DQo+ID4gPg0KPiA+ID4NCj4gPiBTb3JyeSBJJ20gbm90IHN1cmUg SSB1bmRlcnN0YW5kLA0KPiA+IEkga25vdyB3ZSBjYW4gaGF2ZSBjb2xvcnMgaW4gdGhlIG1ldGVy LCBidXQgdGhpcyBmZWF0dXJlIGlzIGFib3V0DQo+ID4gc29tZWhvdyB0ZWxsaW5nIHRoZSByeHEg dG8gc2tpcCB0aGUgcmVkIHBhY2tldCBhbmQgdHJlYXQgaXQgYXMgZ3JlZW4gcmlnaHQ/DQo+IA0K PiBZZXMuIFdoZW4gcnRlX210cl9tZXRlcl9wb2xpY3lfcGFyYW1zOjphY3Rpb25zW1JURV9DT0xP Ul9HUkVFTl0gc2V0DQo+IGFzDQo+IFJURV9GTE9XX0FDVElPTl9UWVBFX1NLSVBfQ01BTiBmb3Ig dGhlIGdpdmVuIG1ldGVyIG9iamVjdCwNCj4gaXQgaXMgaW5kaWNhdGluZyB0byBTS0lQIHRoZSBD TUFOIGNvbmZpZ3VyYXRpb24gYXBwbGllZCB0byB0aGUgcnhxIG9uDQo+IHRoZSBkb3duc3RyZWFt IHBhdGggaWYgbWV0ZXIgYXNzaWducyBhIEdSRUVOIGNvbG9yLg0KPiAoUlEgc2VjdGlvbiBpcyBh cyB1c3VhbCBhcyBleGlzdGluZyBwYXRoLCBlaXRoZXIgdmlhIGV0aGRldiBSU1Mgb3INCj4gcnRl X2Zsb3cgUlNTIGFjdGlvbiBvciBydGVfZm93IFF1ZXVlIGFjdGlvbikuDQo+IA0KDQpTb3JyeSBm b3IgYWxsIG15IHF1ZXN0aW9ucyBqdXN0IHRyeWluZyB0byBmaW5kIHRoZSBiZXN0IHNvbHV0aW9u LA0KU29tZSBmb2xsb3cgdXAgcXVlc3Rpb25zLA0KMS4gZXhjZXB0IHRoZSBza2lwX2NtYW4gd2hh dCBvdGhlciBhY3Rpb25zIGlzIGdvaW5nIHRvIGJlIGluIHRoZSBhY3Rpb24gbGlzdD8gUXVldWU/ IEp1bXA/DQoyLiB3aHkgY2FuJ3Qgd2UgdXNlIHRoZSBtZXRlciBjb2xvciBhcyBpbnB1dCBpZiB0 aGUgY21hbiBzaG91bGQgYmUgc2tpcHBlZCBvciBub3Q/DQoNClRoYW5rcywNCk9yaQ0KDQo+ID4N Cj4gPiA+ID4NCj4gPiA+ID4gQmVzdCwNCj4gPiA+ID4gT3JpDQo+ID4gPiA+DQo=