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 1B6EBA0C47 for ; Sun, 25 Jul 2021 06:53:41 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 80505410E7; Sun, 25 Jul 2021 06:53:38 +0200 (CEST) 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 4F6694003F; Sun, 25 Jul 2021 06:53:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GXuowJ0SY7E0neI4OW7d2WIF1YU4ccqJQ/DNp7wFOXrsKiRTsEFFPXCI5/i1yRylD+5BkmN2pPasT1jEgFotCHHj5fipDWoqE+fdL1Vbfnqfrr9uFRuEpHkgVosjjxo+EWg0eOMHV2g8Sz2itnQyN4ChexprQng3OLWtT4IaFLOCrteR0XKqcx1k9O0ydQsoOjWs72XkMHk7EGl8deAmCHme53V6kramF9ZnqMbF8MFGQreVtrD/DFY37j6P4MiIjS5yEexrpefqDBAE0bhCp6SNZ5Ys4nYwQTuPlmJ+9yIG2Fy1MQntlDsu2pdxq4iNBRjoXpHvx7gDo0i1i+GmXA== 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-SenderADCheck; bh=XmLpTvJoJRbQCxv+65r04owm7CtGYYnzwakHiO3bIAM=; b=ZroPEvWFkAfjJ/YbA3swM9W+iytSb/fctLUYoxKI07qe1ivD1MKmhnC+XtxmYYLc++1sATfvpcivkhCurdHOQznyMK6rD2NqYqohFhH/v8MS4RJbdEGINagv9nSgkTq9281TsodIjuRJivhn86CXlvuomWSng2bawgvg80RlbwMdlbXdtx1A9s3dUoL+GUJpyU3arP0dTvqk01zvA8MBwlboi/6nyEey726/zfPnNJD1s4e0C9+fAeKiY4X5odxQs5wFY5VtW4Ttm/VKnGwXkRo34k75RQZ+6LCF6rmfR/DxKbG8Z5OkHLka6xXxyizkbtd0PjL/x+f5DNCzc+Ckbw== 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=XmLpTvJoJRbQCxv+65r04owm7CtGYYnzwakHiO3bIAM=; b=crAwPCwsDDCmpld4K2oYeupm1LV5B7Irb9CVmQ+p52Y4GxaCdEA7PSH9tcg5bfSj0j699NEWYZbKuAzHa5quKTGrRHCjowh+tvNWp1KLniV79xWM+u+6obTvb8hDeIQicv5CPehbwmDBU9VM+yA0P7NbEun4ZfoctwU0IJQNnu81dCZztc1ebJqNB8YVo5lbVFkKUIEpNzlaRucmhPvvpOt4ajQ4v64DJUHq/U5zhMfxFENmNEZdvB33QfyPlkGYjgMkGhcS60mmyZ9RweV7EV40ifjAT2dq4wlzxuyl86uBuVLQgMovZ9QtqNViClDJ+rX1luuRVnDF2uvFVvzHpA== Received: from DM8PR12MB5494.namprd12.prod.outlook.com (2603:10b6:8:24::9) by DM8PR12MB5413.namprd12.prod.outlook.com (2603:10b6:8:3b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4352.25; Sun, 25 Jul 2021 04:53:31 +0000 Received: from DM8PR12MB5494.namprd12.prod.outlook.com ([fe80::2424:ff5f:bba6:42b1]) by DM8PR12MB5494.namprd12.prod.outlook.com ([fe80::2424:ff5f:bba6:42b1%6]) with mapi id 15.20.4352.030; Sun, 25 Jul 2021 04:53:31 +0000 From: Asaf Penso To: Ferruh Yigit , Ajit Khaparde , NBU-Contact-Thomas Monjalon CC: "users@dpdk.org" , dpdk-dev , David Marchand , Bruce Richardson , Jerin Jacob Kollanukkaran , Akhil Goyal , Maxime Coquelin , Honnappa Nagarahalli , "Tu, Lijuan" Thread-Topic: [dpdk-users] [DISCUSSION] code snippet documentation Thread-Index: Add5RxapGnpY5D0tS4m/cC+5PYBHHAF8T7UAAAdw0YAAGS3xgABVUEIg Date: Sun, 25 Jul 2021 04:53:31 +0000 Message-ID: References: <2236865.drsZmlonQt@thomas> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 262c691f-3038-44c6-c299-08d94f28268b x-ms-traffictypediagnostic: DM8PR12MB5413: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5797; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ATuped34E89O6EIKxf7qAih2btBHHv37wyhrKu+ZkoMbbT2CrgPlB3Mf/VNJsQ2PjV0htUbcAxClKEcain/tvDu3bv3MUYEOVnmOIWSovzyybUUCSyK93bw2+6NgP1FjGKkKNBNMqNUoC/sbJWyl+OEszeU32OJBxTcDlmLPdxXsXR+IiXGZTZPVM0LgMZjILxyQOd0IvdjrWGfBQqyUxWQCC5+iASfUZFZBJJjMITIX3YHtnVtW70FlEBMXefr0dvVynuhetooc1wsBpkffQC8vr9DpPHNBspSuWJaZb/GQjxiahRLYAtRxU1JTDBGmS1bcjOSuD5GazhQGqvlsVQ4cIuv3ah7wnSRB8W6NqfzxMnguhJg/awEvNypSryo0s9oVqARizyS1I1l3u/hkeQUuXuiJX06j4cMwTC7edjfhsiwe9tvFZ5WZZnaOt1+m7WXbZ0d5d/aTPNamU61ghWqH1KogRYRmYuokLoSW9v8gcONcDP+w1M6vsif3yeUg51057e94InRjqwhreHbOx+R+j5P8bdiB2u0YyHuVp391/38CSey5mZRUDxqskUV8jIYzze4rrUQm0pEsORBtQxAQgLzpOffGyDP8eDI8gmDs47tRyFotUtKfIueAcWNTYBH1yoq5OPn+HyFzcx8bGoMvyGmoPH1JJ/aRt64opsz60zDBVqxAygpEXgnaOBkjvz7OU7rqaTKGA01r/3W86w== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM8PR12MB5494.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(39860400002)(136003)(396003)(366004)(376002)(54906003)(478600001)(55016002)(110136005)(9686003)(4326008)(86362001)(6506007)(8936002)(7696005)(186003)(8676002)(316002)(7416002)(26005)(122000001)(76116006)(2906002)(38100700002)(66556008)(64756008)(33656002)(5660300002)(52536014)(66476007)(66946007)(83380400001)(66446008)(71200400001)(38070700004); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NmxmdkRveGVPZmVJcm9TRWdUZHRUUTRCL0VUMnljVkx6TEJ0OTRWcm9NMmpV?= =?utf-8?B?VC94bmtyUlZJUHVaMGtXSi9laG5YQ0dCR1A2aUVCdmx2enVxR3Zxc3l0dy9D?= =?utf-8?B?Z2kwRnJQcVpYZkZzNENHdk94UmFXVTR3TVJHWm5hVkNnT0NrUlU5MWFScXlp?= =?utf-8?B?c2ZKR0xGUmJDR2QrKzZIZW1BWld4N0lkYzJvazZuTFFRbFN0N05RQ3NoVHRF?= =?utf-8?B?RFBhdWo4RU44emFaTzhydE8zR21TaUloQ0xNWHNCRDNUL1MvdlhUWHR5amF0?= =?utf-8?B?RXpTKzJsWUJITjA3NDJFNW5ndFg2UlNTck9BT0lYMDN6cTI2RC8zY2tKY055?= =?utf-8?B?aWdEU3VNTk1OYVlQeGpiN1ZmTlI1NUYzeFQ4cC84TzZaZnpicTYyMkR5eEJP?= =?utf-8?B?U2JkZlVXS3FvbWQ3WmM1RGd3bHlOK1dIc2pBaWFhYlVaMU0zYldOUWFwZEJY?= =?utf-8?B?YjhGVnAwejh3bVNzbndpcE1RNUo3eGszRm1veG55TGk5N3ZEQmozMWQxU3Bl?= =?utf-8?B?UkdkZzYvdUYxVVF3Mk15UDJIbkk4SjlvbGoySXR3VjBtS3ZGcG9BYzBHVjRC?= =?utf-8?B?SE8rMFZXNDg3OW1yVVQrM0V5NElKSWNoNUtEWW00dmVZaE5NZDA2R2pUd0ZY?= =?utf-8?B?Mk5nRHdzem04bTVmdzZid0pLYk5ZZ0NtMEU2RnpQVE1xQVZJOXBkcVpTUkc4?= =?utf-8?B?cWVjL3FhYUVaRmRIN01tV082YTUyQkE0dGpuVlNOeGNCbGJpN2c1cXRsQVhV?= =?utf-8?B?ckF5TXVWZ2YxaHkyUjM1bTdNUTRXZjQ5NHVueXk2aEovT3BKWXhPbEtCeWxu?= =?utf-8?B?YkZKWERDR1ExNGQvOGtnZ3E5L1lVTEZyZko2dkdOMmZNY1NRR2VvMFREb2V4?= =?utf-8?B?TFNrdTBwZWQ5SVhYcHJQNTZtSmRIZEIyZVkyVy9NWWl2WjZqOHhHREpMRmFp?= =?utf-8?B?Zi84RkRveHhrU2tEUHdlYmtqRjh2Q3lhOVJYV05kOVROUXcxckhiNWlCVk5q?= =?utf-8?B?elpVZzVzUWVRZUdJc2FmanNVbmJDSVR2cE13Ymc2cTl3UW8rbk5PcEpoN00r?= =?utf-8?B?TVBIVTVRRXNnRmgzTnAzSlBIcjRXRGcrSUtqZGdHbVlER0lWTElkeXo2U2ZR?= =?utf-8?B?S1BBcmo0YVNySUJNbVpUYXNrWnEyQXVJdGxRVEw0cENpN3diTjZ2MVJXN01M?= =?utf-8?B?SW95SDUyYXN1dDZQSHJGOFJEeTRxc3hJNEs3R3N3cmt6eCtGcllIZ3hqcmhy?= =?utf-8?B?TWpRYmp5TEhFTUc2cytOYVBVSEs3MzlJdVJFUzk5VmswT1V2RUlXWjQyd2pU?= =?utf-8?B?NXNrODBaTU9YWW1KK3gyeFdUMjB5MndqdGZtQTlWNUNROFZLMnB6YjBGdVI2?= =?utf-8?B?UTVmd2hta3pXZ1h3bjBvSEsrdHVPWFlDcS9yZ2JMU012UkExUFJ2QlBsY3R2?= =?utf-8?B?RXEvZ1ROeFVFa1YvZTR3S1paK2tYdktmT1VFL0tCQmFQc1Y2TlppSmVZNjli?= =?utf-8?B?S3lnYVh1d1BmcUdWK255SmVlVlZuTUNJK2FnUXd1WWdPMG04azY5UnJUQnRq?= =?utf-8?B?MVVMYTFiTUJXUm1Eb1BIZEJHbTFmM3FEZnpRWkJISGJpdkV5dlc5N1dmbDMr?= =?utf-8?B?L2xKKzlzM1dFb3FzRDFjeExJU3l0ZFE1N0k5dE5FNWRQN1ljS1hKQ3c4cmNB?= =?utf-8?B?ZWtyMHVySXNHOVA5dmZXd0ovTmROQ1dtM1V0dkM1ckU1aTNGTndHOTkxdSs3?= =?utf-8?Q?YmpyxHbfweiVxHDIHBfe9uJUKtsTZrN+EkH08FJ?= x-ms-exchange-transport-forked: True 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: DM8PR12MB5494.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 262c691f-3038-44c6-c299-08d94f28268b X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jul 2021 04:53:31.2649 (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: aLznG6+GofN3JHtBfwaVq7te7Mh292s3jaMHy39fE5QlEAcevxvMk/GOvBad46EkFGTHWGGS3i2r45l8nyYA3g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5413 Subject: Re: [dpdk-users] [DISCUSSION] code snippet documentation X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: users-bounces@dpdk.org Sender: "users" UmVnYXJkcywNCkFzYWYgUGVuc28NCg0KPi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+RnJv bTogRmVycnVoIFlpZ2l0IDxmZXJydWgueWlnaXRAaW50ZWwuY29tPg0KPlNlbnQ6IEZyaWRheSwg SnVseSAyMywgMjAyMSAzOjA0IFBNDQo+VG86IEFqaXQgS2hhcGFyZGUgPGFqaXQua2hhcGFyZGVA YnJvYWRjb20uY29tPjsgTkJVLUNvbnRhY3QtVGhvbWFzDQo+TW9uamFsb24gPHRob21hc0Btb25q YWxvbi5uZXQ+DQo+Q2M6IEFzYWYgUGVuc28gPGFzYWZwQG52aWRpYS5jb20+OyB1c2Vyc0BkcGRr Lm9yZzsgZHBkay1kZXYNCj48ZGV2QGRwZGsub3JnPjsgRGF2aWQgTWFyY2hhbmQgPGRhdmlkLm1h cmNoYW5kQHJlZGhhdC5jb20+OyBCcnVjZQ0KPlJpY2hhcmRzb24gPGJydWNlLnJpY2hhcmRzb25A aW50ZWwuY29tPjsgSmVyaW4gSmFjb2IgS29sbGFudWtrYXJhbg0KPjxqZXJpbmpAbWFydmVsbC5j b20+OyBBa2hpbCBHb3lhbCA8Z2FraGlsQG1hcnZlbGwuY29tPjsgTWF4aW1lIENvcXVlbGluDQo+ PG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPjsgSG9ubmFwcGEgTmFnYXJhaGFsbGkNCj48SG9u bmFwcGEuTmFnYXJhaGFsbGlAYXJtLmNvbT47IFR1LCBMaWp1YW4gPGxpanVhbi50dUBpbnRlbC5j b20+DQo+U3ViamVjdDogUmU6IFtkcGRrLXVzZXJzXSBbRElTQ1VTU0lPTl0gY29kZSBzbmlwcGV0 IGRvY3VtZW50YXRpb24NCj4NCj5PbiA3LzIzLzIwMjEgMTowMiBBTSwgQWppdCBLaGFwYXJkZSB3 cm90ZToNCj4+IE9uIFRodSwgSnVsIDIyLCAyMDIxIGF0IDE6MjkgUE0gVGhvbWFzIE1vbmphbG9u IDx0aG9tYXNAbW9uamFsb24ubmV0Pg0KPndyb3RlOg0KPj4+DQo+Pj4gMTUvMDcvMjAyMSAwOTow MSwgQXNhZiBQZW5zbzoNCj4+Pj4gSGVsbG8gRFBESyBjb21tdW5pdHksDQo+Pj4+DQo+Pj4+IEkg d291bGQgbGlrZSB0byBicmluZyB1cCBhIGRpc2N1c3Npb24gYWJvdXQgYSB3YXkgdG8gaGF2ZSBj b2RlIHNuaXBwZXRzIGFzIGFuDQo+ZXhhbXBsZSBmb3IgcHJvcGVyIHVzYWdlLg0KPj4+PiBUaGUg RFBESyB0cmVlIGlzIGZpbGxlZCB3aXRoIGdyZWF0IHBpZWNlcyBvZiBjb2RlIHRoYXQgYXJlIHdl bGwgZG9jdW1lbnRlZA0KPmFuZCBtYWludGFpbmVkIGluIGhpZ2ggcXVhbGl0eS4NCj4+Pj4gSSBm ZWVsIHdlIGFyZSBhIGJpdCBiZWhpbmQgd2hlbiB3ZSB0YWxrIGFib3V0IHVzYWdlIGV4YW1wbGVz Lg0KPj4+Pg0KPj4+PiBPbmUgd2F5LCB3aGVuZXZlciB3ZSBpbXBsZW1lbnQgYSBuZXcgZmVhdHVy ZSwgaXMgdG8gZXh0ZW5kIG9uZSBvZiB0aGUNCj50ZXN0LSogdW5kZXIgdGhlICJhcHAiIGZvbGRl ci4NCj4+Pj4gVGhpcywgaG93ZXZlciwgcHJvdmlkZXMgbWVhbnMgdG8gdGVzdCBidXQgZG9lc24n dCBwcm92aWRlIGEgZ29vZCB1c2FnZQ0KPmV4YW1wbGUuDQo+Pj4+DQo+Pj4+IEFub3RoZXIgd2F5 IGlzIHRvIGNoZWNrIHRoZSBjb250ZW50IG9mIHRoZSAiZXhhbXBsZSIgZm9sZGVyIGFuZCB3aGVu ZXZlcg0KPndlIGhhdmUgYSBCSUcgbmV3IGZlYXR1cmUgaXQgc2VlbXMgbGlrZSBhIGdvb2QgcGxh Y2UuDQo+Pj4+IFRoaXMsIGhvd2V2ZXIsIGRvZXNuJ3QgcHJvdmlkZSBhIGdvb2Qgb3B0aW9uIHdo ZW4gd2UgdGFsayBhYm91dCBzbWFsbA0KPmZlYXR1cmVzLg0KPj4+PiBJZiwgZm9yIGV4YW1wbGUs IHdlIGV4dGVuZCBydGVfZmxvdyB3aXRoIGFuIGV4dHJhIGFjdGlvbiB0aGVuIHByb3ZpZGluZyBh IGZ1bGwtDQo+Ymxvd24gZXhhbXBsZSBhcHBsaWNhdGlvbiBpcyBzb21ld2hhdCBhbiBlbnRyeSBi YXJyaWVyLg0KPj4+Pg0KPj4+PiBBIHRoaXJkIG9wdGlvbiBjb3VsZCBiZSB0byBkb2N1bWVudCBp dCBpbiBvbmUgb2YgdGhlIC5yc3QgZmlsZXMgd2UgaGF2ZS4NCj4+Pj4gT2J2aW91c2x5LCB0aGlz IHJlcXVpcmVzIGhpZ2ggbWFpbnRlbmFuY2UgYW5kIG5vIG9wdGlvbiB0byBhc3N1cmUgaXQgc3Rp bGwNCj5jb21waWxlcy4NCj4+Pj4NCj4+Pj4gSSdkIGxpa2UgdG8gcHJvcG9zZSBhbm90aGVyIGFw cHJvYWNoIHRoYXQgd2lsbCBhZGRyZXNzIHRoZSBtYWluIHR3byBpc3N1ZXM6DQo+cmVtb3ZlIHRo ZSBlbnRyeSBiYXJyaWVyIGFuZCBhc3N1cmUgY29tcGlsYXRpb24uDQo+Pj4+IEluIHRoaXMgYXBw cm9hY2gsIGluc2lkZSB0aGUgImV4YW1wbGVzIiBmb2xkZXIgd2UnbGwgY3JlYXRlIGFub3RoZXIg Zm9sZGVyIGZvcg0KPiJzbmlwcGV0cyIuDQo+Pj4+IEluc2lkZSAic25pcHBldHMiIHdlJ2xsIGhh dmUgc2V2ZXJhbCBmaWxlcyBwZXIgY2F0ZWdvcnksIGZvcg0KPj4+PiBleGFtcGxlLCBydGVfZmxv d19zbmlwcGV0cy5jIEVhY2ggLmMgZmlsZSB3aWxsIGluY2x1ZGUgYSBtYWluIGZ1bmN0aW9uIHRo YXQNCj5jYWxscyB0aGUgZGlmZmVyZW50IHVzZSBjYXNlcyB3ZSB3YW50IHRvIGdpdmUgYXMgYW4g ZXhhbXBsZS4NCj4+Pj4gVGhlIHB1cnBvc2UgaXMgbm90IHRvIGdlbmVyYXRlIHRyYWZmaWMgbm9y IHJlYWQgcngvdHggcGFja2V0cyBmcm9tIHRoZSBEUERLDQo+cG9ydHMuDQo+Pj4+IFRoZSBwdXJw b3NlIGlzIHRvIGhhdmUgYSBnb29kIGV4YW1wbGUgdGhhdCBjb21waWxlcyBwcm9wZXJseS4NCj4+ Pj4NCj4+Pj4gVGFraW5nIHRoZSBydGVfZmxvd19zbmlwcGV0cy5jIGFzIGFuIGV4YW1wbGUgaXRz IG1haW4gZnVuY3Rpb24gd291bGQgbG9vaw0KPmxpa2UgdGhpczoNCj4+Pj4NCj4+Pj4gaW50DQo+ Pj4+IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0KPj4+PiB7DQo+Pj4+ICAgICAgIHJ0ZV9m bG93X3NuaXBwZXRfbWF0Y2hfNXR1cGxlX2FuZF9kcm9wKCk7DQo+Pj4+ICAgICAgIHJ0ZV9mbG93 X3NuaXBwZXRfbWF0Y2hfZ2VuZXZlX29wZV9hbmRfcnNzKCk7DQo+Pj4+ICAgICAgIC4uLg0KPj4+ PiAgICAgICBSZXR1cm4gMDsNCj4+Pj4gfQ0KPj4+DQo+Pj4gSSB0aGluayB3ZSBuZWVkIHRvIGhh dmUgYSBwb2xpY3kgb3IganVzdGlmaWNhdGlvbiBhYm91dCB3aGljaCBzbmlwcGV0DQo+Pj4gaXMg d29ydGggdG8gaGF2ZS4NCj4+PiBNeSB0aG91Z2h0IGlzIHRvIGF2b2lkIGNyZWF0aW5nIHNuaXBw ZXRzIHdoaWNoIGhhdmUgbm8gb3RoZXIgdmFsdWUNCj4+PiB0aGFuIHNob3dpbmcgYSBmdW5jdGlv biBjYWxsLg0KPj4+IEkgdGhpbmsgdGhlcmUgaXMgYSB2YWx1ZSBpZiB0aGUgY29udGV4dCBpcyBu b3Qgc2ltcGxlLg0KPj4NCj4+IEkgYWdyZWUuIE90aGVyd2lzZSBpdCB3aWxsIGJlIGNsdXR0ZXJl ZCB3aXRoIHNuaXBwZXRzLg0KPj4NCj4NCj5JIHNvbWV0aW1lcyB1c2UgRFRTIGNvZGUgYXMgc2Ft cGxlIGZvciBhbiBBUEksIHRoYXQgaGFzIGxpbWl0ZWQgY29udGV4dCAod2hpY2ggSQ0KPmJlbGll dmUgc29tZXRpbWVzIG5lZWRlZCB0byB1bmRlcnN0YW5kIEFQSSBwcm9wZXJseSkgYW5kIG9mIGNv dXJzZSBjb21waWxlcw0KPmZpbmUuDQo+DQo+V2hhdCBhYm91dCBtYWtpbmcgbWFuZGF0b3J5IHRv IGFkZCBhIHRlc3QgdG8gRFRTIGZvciBlYWNoIEFQSS9mZWF0dXJlLCB0aGF0DQo+ZW5zdXJlcyBh IHJlYXNvbmFibGUgc2FtcGxlIGZvciB0aGUgQVBJIGNhbGwuDQo+DQo+QW5kIGlmIHRoZSBpbnRl bnQgaXMganVzdCB0byBwcm92aWRlIHNhbXBsZSBmb3IgQVBJIGNhbGwgd2l0aG91dCBjb250ZXh0 LCBJIGJlbGlldmUNCj50ZXN0LSogY2FuIGhlbHAgb24gdGhhdCwgaXQgY2xhcmlmaWVzIGdvb2Qg JiBiYWQgaW5wdXQgZm9yIGFuIEFQSS4NCj4NCg0KVGhhbmsgeW91IEZlcnJ1aCwgQWppdCwgYW5k IFRob21hcyBmb3IgeW91ciByZXBsaWVzLg0KSSB0aGluayB0aGUgbW9yZSBzbmlwcGV0cyB0aGUg bWVycmllciBhbmQgd2UgY2FuIGNhdGVnb3JpemUgdGhlbSBmb3IgYmV0dGVyIHZpc2liaWxpdHkg aW5zaWRlIHRoZSBmaWxlIGFuZCBhbW9uZyBkaWZmZXJlbnQgZmlsZXMuDQpMaW1pdGluZyB3b3Vs ZCBtaXNzIHRoZSBwb2ludCBvZiBoYXZpbmcgdmFsaWQgY29kZSBleGFtcGxlcyBmb3IgYSB2YXJp ZXR5IG9mIGNhc2VzLg0KRm9yIGNvbXBsZXggY29kZSBzbmlwcGV0cyBJIGZ1bGx5IHRoaW5rIHRo YXQgYSBkZWRpY2F0ZWQgdGVzdC9leGFtcGxlIGFwcCBzaG91bGQgYmUgd3JpdHRlbiBidXQgbXkg aW50ZW50aW9uIG9mIHRoZSBzbmlwcGV0cyBpcyBzb21ldGhpbmcgc2ltcGxlci4NClJlYWRpbmcg b25seSBkb2N1bWVudGF0aW9uIGlzIG5vdCBwcmFjdGljYWwgZW5vdWdoIGFuZCByZXZpZXdpbmcg YW4gZXhhbXBsZSBhcHAgcmVxdWlyZXMgdG9vIG11Y2ggZWZmb3J0LiBTbmlwcGV0IGlzIGEgZ3Jl YXQgdG9vbCBpbiBiZXR3ZWVuLg0KV3JpdHRlbiBEVFMgdGVzdCBjYW4gYmUgYW4gb3B0aW9uIGJ1 dCBJIHRoaW5rIGl0IGlzIHRvbyBtdWNoIG92ZXJoZWFkIGlmIG9uZSBqdXN0IHdhbnRzIHRvIHNo b3cgaG93IHRvIHVzZSBhIGZ1bmN0aW9uIG9yIGFuIG9iamVjdCwgd2l0aG91dCBwdXR0aW5nIGVm Zm9ydCBmb3IgdGhlICJhZG1pbmlzdHJhdGl2ZSIgdG9waWNzIGFyb3VuZCB0aGUgc25pcHBldC4N Cg0KPj4+DQo+Pj4NCj4+PiBQbGVhc2UgY291bGQgeW91IHByb3ZpZGUgYSBtb3JlIGNvbXBsZXgg ZXhhbXBsZT8NCj4+Pg0KPj4+DQoNCg==