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 058E042DD1 for ; Wed, 12 Jul 2023 11:59:38 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BE6C640A7D; Wed, 12 Jul 2023 11:59:37 +0200 (CEST) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2041.outbound.protection.outlook.com [40.107.236.41]) by mails.dpdk.org (Postfix) with ESMTP id 9BC4F406BA for ; Wed, 12 Jul 2023 11:59:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=U/BEnAdG0/day/CFnNSw2fgA48GK/vBKc9fSVYp4TJ8MHEkDqWV3NnoZheLKdW8qGyAlcEqkp9oCkHxYgEJ/mW/CNJ1hu1xEAthk4XAj44s7386ysvCIjRnli56ODJ+YJZtG+3VT88A8puDvbJk7S5hGC96EL4JxqdmQ0Cp5/5t4kYVDf4KuLkBJ21BQiifPgAg/zaWRrqmvnma/VnZBFiFVF4RE6kwXZn6pKC7hfRGVYHT1N7+eUDlyskwr+cqm9dD2xir4omOTmqVDLqcgCpsg1GAMzXcfT82BU4xTyUcEqkJvEi75UXhvjVcLkpKFkQv6JKBIXc5/IFu/Fkglww== 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=o7Y8daGHW9BQpCrE8PVE+erGxbGuhBmb2nLCX24E0gE=; b=llV5AA+Dn79BA+92YuJj02idSfLyWGPb4a2WtZP5rAPn+LLiQXYraPxvS+fjOZK3DYSyKBOCq8v+6+DFd7mVRJrX6Ie8ITmzrSoQZtKCadTDlF6QWlJgcQkAbhsAj6SC1UeDcyuylN0/R2TPTxXCT5hMNNEFkLqCD7KFrfZulKOUlICs2L/QvLmnM7RsrEhY2d73SXAGaGdshuXvyGkSpTH4ASvx/c6adHcnCo0Oqk/TavqYKGLz+jLW8WL2vfWDBnXYt+krsS4mKyPkmSAlwaMKL00YgU+Y/fdsXlz61w3fA20slQyuOuijIlFX7oYNmNTr1TYy/v/o1zycFxYnbQ== 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=o7Y8daGHW9BQpCrE8PVE+erGxbGuhBmb2nLCX24E0gE=; b=W32Aou9lXvur4ZSHt3VkY0RDkkNjLJ1eyCuBj/vG5wG/KLW451Gh5pNygUD+t9XC+Ec+rnB+wVtht/cnrt3Wx1dkPwy3FWfIjryEWUvijPpueFDvdJ4y7ZbUFEF8cjXGLBhVnNYvzWXWlnFlosd8EEKTvfsheR35CsN3JjVsi2L8BJemBsj/Hf+lcB0mzuguazj7f3W26UCc3Y3aQXOCDAd1QdvY+eVCoW5be4APa3q16NFnjYOSpy89kM9Uqt/HL2VFpBsZDcIm99rthVnpNgSIgYlI0Eapf0cacMRZLJs+yPf4/x+LxkLiNVkj0y4fn2QMMLX9HwgKi3LPpv1VGQ== Received: from IA1PR12MB7544.namprd12.prod.outlook.com (2603:10b6:208:42c::7) by DM4PR12MB6400.namprd12.prod.outlook.com (2603:10b6:8:b9::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.30; Wed, 12 Jul 2023 09:59:32 +0000 Received: from IA1PR12MB7544.namprd12.prod.outlook.com ([fe80::3324:6ab9:eb6c:12d]) by IA1PR12MB7544.namprd12.prod.outlook.com ([fe80::3324:6ab9:eb6c:12d%4]) with mapi id 15.20.6565.028; Wed, 12 Jul 2023 09:59:31 +0000 From: Maayan Kashani To: Tony Hart , "Jiawei(Jonny) Wang" CC: Asaf Penso , "users@dpdk.org" Subject: RE: [External] rte_flow: transfer and sample, is it possible? Thread-Topic: [External] rte_flow: transfer and sample, is it possible? Thread-Index: AQHZUdSqEWrCJ0FcgEqKxBO+fJRppK7zHr0ggAAhpbCABTiFgIC+MiJw Date: Wed, 12 Jul 2023 09:59:31 +0000 Message-ID: References: <5644d4d8-d47b-4a0c-84ec-17ce8d68d922.8b1a23e8-b9b9-4aca-a31a-0d4e4655acbd.64a2ee37-3c38-431e-ae3a-430c3a75e800@emailsignatures365.codetwo.com> <4C91ECC8-84B3-4AA6-97FB-5153693FF007@corero.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-traffictypediagnostic: IA1PR12MB7544:EE_|DM4PR12MB6400:EE_ x-ms-office365-filtering-correlation-id: cd38a544-9cd7-4c40-6f92-08db82beb050 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: vTNGaOArfye/Y18l2SbrXL4H1GNs26Lvd0fousenQG7im9pR4Gc/b9BZ/b9TglxDNouOQ2GhqG4q76DBMjXeDmDu+GeH1N57pWkW6FfB1T0fuy0W8XqMRknW2hOl9O31t9+KYcuptH0g2cJe7TWFnZK5tahXwPMZGb/UvQA/M3foTcdS+wOvvc3dVP9PMIBUHEmlqA4RkMMdwA0FmFbp2g5BKEfzoKix2/6ZxPZq5J5SDiuhXbqi6D7B7IgACGa9DVpcNvFwKQ+9sFxFjoSfwYuRAytIV6cB0VawqAYH8vHmujTXeVPuJSKAGyQww7AyrDDRvJfJuulf6VteSnq9Tnr22E5DB6gtDFoHngKjhFjxqlIlTGTEfL/jE7cbXMY1m8OXJcxWWFnAfLqOYdiQkHF2iujWxGYRZ37ujgT2Yz5KGcVSzIPodeNkzJuMxHnJqPa9vKTP2C4BFdtQMn5ClpmTD+4qCqRMcVF5UBuAGFTgVaNsegXPr4S3Ln16pyG9qcB3BqX+hcxTN2uMDne4KoZMG5X+ovtNw2iMc/PQD0eYRcSLCJQMmuuegXi0MCEQktlQHRwG12EOeYmp9EGwqbGz4WcujIQlmwsc0sxRcDbtfw+jwGiUJlO2zXqWx/ZqDTpGL0dr0MHKZi1Hwwu82ZCuJe6PlwQSh7spUs81G2myLEze/bWxpnXOqNTyvbDg x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:IA1PR12MB7544.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(136003)(366004)(39860400002)(376002)(346002)(396003)(451199021)(66899021)(110136005)(478600001)(7696005)(71200400001)(76116006)(54906003)(33656002)(83380400001)(86362001)(38070700005)(55016003)(2906002)(30864003)(66946007)(53546011)(186003)(6506007)(9686003)(966005)(41300700001)(38100700002)(64756008)(8676002)(122000001)(66476007)(26005)(4326008)(316002)(5660300002)(8936002)(66556008)(6636002)(66446008)(52536014)(562404015); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NjNBcnNheDZhTms5TUsyQVIwL1BGZlNtakU2Z0ZnS0ExWWh2UXBXbDZKYklF?= =?utf-8?B?eFhRQlFoTUM4MjBBRTFxZzI3UU5JSzVWL3pGRGYzN0pBaUt0UjlyZ2czWE1V?= =?utf-8?B?RzdXb3o4bGx2bUNSbGoybC9ZR2owcDJ2MWlzSlprMHlvdFRUVjJQemwyQjZ4?= =?utf-8?B?UlJyT0NINExYMTVZVWRsR3FJSk5DVWlhYmVrMlhvN0o2V2V4UjRpY044VzNi?= =?utf-8?B?V0RQb3BVYVE3RjhrRVoxbUpjZHJrampnSmVEdEtWYjNzSzFuM3R2Ukppdzly?= =?utf-8?B?dkhQdHJtNCsrQ1NKdTRxd0Y3TGYwazNtRC9kb0UyOTdJNW11TU04THREVnFJ?= =?utf-8?B?eHFGRzZTd3VMTnRzSnZNWmtXa3paS3FMNFBVenE2dWRnQmwvQndCVEIvbXJa?= =?utf-8?B?YnFxbzhJSjNaKzRmTkRnd3RqTTJvaUhSOHZocE9PNkUveFkrREJLWlhJdU9s?= =?utf-8?B?L1dQT2IwbkVHbktiNzdPOXA5V1VuVFRFR0FXTXUzckRPOTM4VXA4VDNaUHQw?= =?utf-8?B?Tmlhbkc1R2dKVTFjTytmVVFIc0podXJaR2lRaTlYSnVmTzFKMFZIZHEyeGlT?= =?utf-8?B?ZGFDTDBEYk1DZ3NJTHZaZ0k3Z29vSzhBdWtkWUdkMjEwZ2JET2JPSFBvT3Y0?= =?utf-8?B?UVF1dklEWlNiSTFHMzdoSjJvSmcwd2Ezc1dLZjY4ZTViRi9aZWpMYW44aVl5?= =?utf-8?B?U0k1eGJBNmhDWmFBalZKN0dsRWNYZ1hiejNPbGRBT1JZUUxhc0RQcmY5TGYw?= =?utf-8?B?TEVtcHNFVFhycXhpU1hIcjQrVmxYZk5vWmNoOGZMVE9HWnFveFRPYU1xdkpE?= =?utf-8?B?b2pnZS83dGdabkV3YkVxZ3UxVGlyUVFrNzhzMkl5RFp0ZTFDbVA3TlM2b2Rl?= =?utf-8?B?MWJKUWdHOFk3Wlltdkc5Q2RLaDl1OC9BU2lseUhtN3YvT0VDK0RBa1VKVWNt?= =?utf-8?B?SDFtTjE4MGlrUDNJb2k2YnQrRUZKbCtxZ001eURybXV5cjl4ZVdVaHRDYVl5?= =?utf-8?B?Z25tclEycXRvSzJsaG1qSHRRK0RNbGh4dXByTWRzNnB1L2JSWVoxNE5DUnIv?= =?utf-8?B?dXRKdFZSaXhkUTU1dTlMbjBqb2QwSHcvYlZWN0RMa2JISnRCOHAyOTVBVDJF?= =?utf-8?B?ZitHaXdLcC9UazNhZVRVaEZTcGtSNkg5dWVTM2hXU2pqT0lDVnFaQXh5SWpj?= =?utf-8?B?V0lPc09vUm5IMzlmN3JjWlp2Vm9yTW1vMks3SkNIODgySTlPcHVKWEtYVW11?= =?utf-8?B?WmNEQnRhWWtJbktibVYzMTBkQnEyQW5oWldEekVzd1JvdC81ZzVQMlYrTVBm?= =?utf-8?B?NjN1TFBzVXlhSFZHQytHOXA1Y2ZoSE9YbS9YNVRGbGxyMnVIbnZGNGV1TnBw?= =?utf-8?B?eWxsNTl3Ni9rR3VKSDl4Qk9kcHErYVFNbEtrUGRtZk5nWTNhZ1VCQVh2My9W?= =?utf-8?B?dzJHcXRXYWdwUkZYNVBCRlRZeTQ5SC9xei9HKytYV2s3elNnQnFYWm1FVzgw?= =?utf-8?B?SE1zdUsxSWxIMzRPR1FjcVBrQTFzVXhCWVY0TzM2RUpIenBDMTN1bnFWL1kz?= =?utf-8?B?Y3Byd3UyeUNQRWF2ZDludjRGVlVETUZ6Q21KbGVtcXpFd2RNcUFCa3EvSk5q?= =?utf-8?B?QVNJTURpSFpySWJ0bTBjQXF0VFBmdjFMd2VQYVZaMFVPSmNaSUcyRjJNMHJL?= =?utf-8?B?WDQ3ZXpndWJFbE5NOGxZMC92TUtzWTEwNzMyanZxUlYwQUMxbDk2bDh4dWZl?= =?utf-8?B?TFZObzArVmNBNjMvTW5GU3JwVVAzc3FadEsyZUN6MEl4UnBpa3U0T2VGZzFZ?= =?utf-8?B?Z3ZlR3g5UzMxSm9IWGF2bE1HaFJMVk1zVm05b0hWZVU5WkVpelRpWjc1UTc4?= =?utf-8?B?Q2tJK29SWm5Ed0dUanFBTWIzNGRYSTZ4cDBveTMyVVlBM0ljdmdtVXRocGNL?= =?utf-8?B?Ny8vc09QSnVhZXphdXRNdWRRZVFGWGZGYnlmZEhBZjJRTU5TaHdscmcxb1ZW?= =?utf-8?B?M1FKWFYvcG00QnYzekJSTkJ2WmtZSjRESzFGL2pMMEZ5L1FDZjVSVStRdnZa?= =?utf-8?B?OHJjMDI0QmNoRVNOVHZoT0xGQmw1VGlYNzRSR1pFTnJReGlTVnIyMHFxcHlM?= =?utf-8?Q?hd9B8M5np79AKYct28PqkU7Xx?= 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: IA1PR12MB7544.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: cd38a544-9cd7-4c40-6f92-08db82beb050 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jul 2023 09:59:31.6003 (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: +TJGpFIFav+QyR5vgITje9IP7AEEo/6PE41VJNFqmScginnD1Fs2GYqUVtDjuAi03m0P5WJLLB99INxdg1A3Vg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6400 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 SGksIFRvbnksDQpTb3JyeSBmb3IgdGhlIGxhdGUgcmVwbHksDQoNClJlZ2FyZGluZyB5b3VyIFE6 DQo+IEkgY3VyaW91cyBhYm91dCBpc29sYXRlZCBtb2RlLCBpcyBpdCBtb3JlIGVmZmljaWVudCB0 byB1c2UgdGhhdCBtb2RlIG9uIHRoZQ0KPiBDb25uZWN0eCBpbiB0ZXJtcyBvZiBoYXJkd2FyZSBy ZXNvdXJjZXM/DQoNCkluIHRlcm1zIG9mIHJlc291cmNlIHVzYWdlIGFuZCBwZXJmb3JtYW5jZSAt IGRpZmZlcmVuY2Ugd29uJ3QgYmUgbm90aWNlYWJsZS4NCklzb2xhdGVkIG1vZGUgYmFzaWNhbGx5 IHdpbGwgcmVtb3ZlIHRoZSBkZWZhdWx0IGZsb3cgcnVsZXMgaW4gZ3JvdXAgMCBvbiBSeCwgd2hp Y2ggdGhlcmUgYXJlIGEgZmV3IChsZXNzIHRoYW4gMTApLg0KDQpSZWdhcmRzLA0KTWFheWFuIEth c2hhbmkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBUb255IEhhcnQg PFRvbnkuSGFydEBjb3Jlcm8uY29tPg0KPiBTZW50OiBNb25kYXksIDEzIE1hcmNoIDIwMjMgMTE6 MjkNCj4gVG86IEppYXdlaShKb25ueSkgV2FuZyA8amlhd2Vpd0BudmlkaWEuY29tPg0KPiBDYzog QXNhZiBQZW5zbyA8YXNhZnBAbnZpZGlhLmNvbT47IHVzZXJzQGRwZGsub3JnDQo+IFN1YmplY3Q6 IFJlOiBbRXh0ZXJuYWxdIHJ0ZV9mbG93OiB0cmFuc2ZlciBhbmQgc2FtcGxlLCBpcyBpdCBwb3Nz aWJsZT8NCj4gDQo+IEV4dGVybmFsIGVtYWlsOiBVc2UgY2F1dGlvbiBvcGVuaW5nIGxpbmtzIG9y IGF0dGFjaG1lbnRzDQo+IA0KPiANCj4gSGkgQXNhZiwgSm9ubnksDQo+IA0KPiBUaGFua3MgZm9y IHRoZSBpbmZvcm1hdGlvbiwgdGhhdCBoZWxwZWQsIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgZGlm ZmVyZW5jZQ0KPiBiZXR3ZWVuIHRoZSBpbmdyZXNzIGFuZCB0cmFuc2ZlciBtb2RlcyBleHBsYWlu cyBzb21lIG9mIHRoZSBlcnJvcnMgSSB3YXMNCj4gc2VlaW5nLg0KPiANCj4gQWxzbyBKb25ueeKA mXMgZXhhbXBsZWQgd29ya2VkLg0KPiANCj4gSSBjdXJpb3VzIGFib3V0IGlzb2xhdGVkIG1vZGUs IGlzIGl0IG1vcmUgZWZmaWNpZW50IHRvIHVzZSB0aGF0IG1vZGUgb24gdGhlDQo+IENvbm5lY3R4 IGluIHRlcm1zIG9mIGhhcmR3YXJlIHJlc291cmNlcz8NCj4gDQo+IA0KPiANCj4gVG9ueSBIYXJ0 IHwgQ2hpZWYgQXJjaGl0ZWN0DQo+IFRvbnkuSGFydEBjb3Jlcm8uY29tIDxtYWlsdG86VG9ueS5I YXJ0QGNvcmVyby5jb20+DQo+IA0KPiAgMjkzIEJvc3RvbiBQb3N0IFJvYWQgV2VzdCBTdWl0ZSAz MTAsIE1hcmxib3JvdWdoLCBNQSAwMTc1Mg0KPiANCj4gDQo+IEFjY2VzcyBDb3Jlcm8gTmV0d29y ayBTZWN1cml0eeKAmXMgUHJpdmFjeSBQb2xpY3kgaGVyZQ0KPiA8d3d3LmNvcmVyby5jb20vcHJp dmFjeT4uDQo+IA0KPiANCj4gDQo+IFdlIGFyZSBDb3Jlcm8gTmV0d29yayBTZWN1cml0eSBwbGMg KOKAnENvcmVyb+KAnSksIHJlZ2lzdGVyZWQgaW4gRW5nbGFuZCBhbmQNCj4gV2FsZXMsIHdpdGgg cmVnaXN0ZXJlZCBjb21wYW55IG51bWJlciAwMjY2Mjk3OCwgcmVnaXN0ZXJlZCBvZmZpY2UgYWRk cmVzcw0KPiBSZWd1cyBIb3VzZSBIaWdoYnJpZGdlLCBPeGZvcmQgUm9hZCwgVXhicmlkZ2UsIE1p ZGRsZXNleCwgVUI4IDFIUi4gQ29yZXJvDQo+IGlzIHRoZSBwYXJlbnQgY29tcGFueSBmb3IgQ29y ZXJvIE5ldHdvcmsgU2VjdXJpdHksIEluYy4gYW5kIENvcmVybyBOZXR3b3JrDQo+IFNlY3VyaXR5 IChVSykgTHRkIChhIGNvbXBhbnkgcmVnaXN0ZXJlZCBpbiBFbmdsYW5kIGFuZCBXYWxlcyB3aXRo IHJlZ2lzdGVyZWQNCj4gbnVtYmVyIDA0MDQ3MDkwLCB3aXRoIHRoZSBzYW1lIHJlZ2lzdGVyZWQg b2ZmaWNlIGFkZHJlc3MgYXMgYWJvdmUpIEZvcg0KPiBpbmZvcm1hdGlvbiBhYm91dCBob3cgd2Ug cHJvY2VzcyB5b3VyIGRhdGEsIG9yIHRvIG1hbmFnZSB5b3VyIGRhdGENCj4gcHJlZmVyZW5jZXMs IGNsaWNrIGhlcmUgPGluZm8uY29yZXJvLmNvbS9kYXRhLXByZWZlcmVuY2VzLmh0bWw+Lg0KPiAN Cj4gDQo+IA0KPiA+IE9uIE1hciAxMCwgMjAyMywgYXQgMTozNyBBTSwgSmlhd2VpKEpvbm55KSBX YW5nIDxqaWF3ZWl3QG52aWRpYS5jb20+DQo+IHdyb3RlOg0KPiA+DQo+ID4gSGkgVG9ueSwNCj4g Pg0KPiA+ICINCj4gPiA+V2hhdCBJ4oCZZCBsaWtlIHRvIGRvIGlzDQo+ID4gPmZvcndhcmQgcGFj a2V0cyBmcm9tIHRoZSBwaHlzaWNhbCBwb3J0IHRvIHRoZSBWRjEgYW5kIHZpY2UgdmVyc2EgYXMN Cj4gPiA+ZGVzY3JpYmVkIGluIHRoZSBleGFtcGxlLCBpbiBhZGRpdGlvbiBJ4oCZZCBhbHNvIGxp a2UgdG8gc2VuZCBhIDE6Tg0KPiA+ID5zYW1wbGUgb2YgdGhlIHRyYWZmaWMgcmVjZWl2ZWQgZnJv bSB0aGUgcGh5c2ljYWwgcG9ydCB0byB0aGUNCj4gPiA+4oCcaHlwZXJ2aXNvciBhcHBsaWNhdGlv buKAnSwgaS5lLiB0aGUgRFBESyBhcHAuDQo+ID4gIg0KPiA+IFVuZGVyIHlvdXIgY2FzZSwgRFBE SyBhdHRhY2hlZCB0d28gcG9ydHMsIHBvcnRfaWQgMCBpcyBmb3IgdGhlIHBoeXNpY2FsIHBvcnQs DQo+IGFuZCBwb3J0X2lkIDEgaXMgZm9yIFZGMS1yZXAuDQo+ID4gWW91IGNhbiB0cnkgdGhlIGJl bG93IGZsb3cgcnVsZToNCj4gPg0KPiA+ICMgU2V0IHRoZSBzYW1wbGUgZmxvdyBydWxlIHdpdGgg dHJhbnNmZXIgZW5hYmxlZCwgc2FtcGxlZCBwYWNrZXQgd2l0aCAxMCUsDQo+IGFuZCBhbHNvIGZv cndhcmRlZCB0aGUgb3JpZ2luYWwgcGFja2V0cyB0byBWRjEuDQo+ID4NCj4gPiB0ZXN0cG1kPiBz ZXQgc2FtcGxlX2FjdGlvbnMgMCAvIGVuZA0KPiA+IHRlc3RwbWQ+IGZsb3cgY3JlYXRlIDAgdHJh bnNmZXIgcGF0dGVybiByZXByZXNlbnRlZF9wb3J0DQo+ID4gdGVzdHBtZD4gZXRoZGV2X3BvcnRf aWQgaXMgMCAvIGVuZCBhY3Rpb25zIHNhbXBsZSByYXRpbyAxMCBpbmRleCAwIC8NCj4gPiB0ZXN0 cG1kPiBjb3VudCAvIHJlcHJlc2VudGVkX3BvcnQgZXRoZGV2X3BvcnRfaWQgMSAvIGVuZA0KPiA+ DQo+ID4gKEZvciBFLVN3aXRjaCBTYW1wbGluZyBmbG93IHdpdGggc2FtcGxlIHJhdGlvID4gMSwg YWRkaXRpb25hbCBhY3Rpb25zDQo+ID4gYXJlIG5vdCBzdXBwb3J0ZWQgaW4gdGhlIHNhbXBsZSBh Y3Rpb25zIGxpc3QuKQ0KPiA+DQo+ID4gIyBJZiBEUERLIHdvcmtpbmcgb24gdGhlIGlzb2xhdGUg bW9kZSwgeW91IGFsc28gbmVlZCB0byBjcmVhdGUgdGhlIHJ4IGZsb3cuDQo+ID4gdGVzdHBtZD4g ZmxvdyBjcmVhdGUgMCBpbmdyZXNzIHBhdHRlcm4gZXRoIC8gZW5kIGFjdGlvbnMgcnNzIC8gY291 bnQgLw0KPiA+IHRlc3RwbWQ+IGVuZA0KPiA+DQo+ID4gVGhlbiwgeW91IHNob3VsZCBzZWUgdGhl IHNhbXBsZWQgcGFja2V0IGluIERQREsgU1csIGFuZCBhbHNvIFZGMS4NCj4gPg0KPiA+IFRoYW5r cy4NCj4gPiBKb25ueQ0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ ID4gRnJvbTogQXNhZiBQZW5zbyA8YXNhZnBAbnZpZGlhLmNvbT4NCj4gPiA+IFNlbnQ6IEZyaWRh eSwgTWFyY2ggMTAsIDIwMjMgODowOSBBTQ0KPiA+ID4gVG86IFRvbnkgSGFydCA8VG9ueS5IYXJ0 QGNvcmVyby5jb20+OyB1c2Vyc0BkcGRrLm9yZzsgSmlhd2VpKEpvbm55KQ0KPiA+ID4gV2FuZyA8 amlhd2Vpd0BudmlkaWEuY29tPg0KPiA+ID4gU3ViamVjdDogUkU6IHJ0ZV9mbG93OiB0cmFuc2Zl ciBhbmQgc2FtcGxlLCBpcyBpdCBwb3NzaWJsZT8NCj4gPiA+DQo+ID4gPiBIZWxsbyBUb255LA0K PiA+ID4NCj4gPiA+IEZpcnN0LCBJJ20gYWRkaW5nIEBKaWF3ZWkoSm9ubnkpIFdhbmcsIHdobydz IG91ciBleHBlcnQgZm9yIHRoaXMNCj4gPiA+IGZlYXR1cmUgYW5kIGNhbiBzdXBwb3J0IGFuZCBl bGFib3JhdGUgbW9yZSwgaWYgbmVlZGVkLg0KPiA+ID4NCj4gPiA+IFNlY29uZCwgSSBsb29rZWQg aW50byB5b3VyIHVzZSBjYXNlIGJlbG93IGFuZCBoYXZlIHNldmVyYWwgY29tbWVudHMuDQo+ID4g PiAxLiBJbiB5b3VyIGZpcnN0IHRyeSwgeW91IGNvbmZpZ3VyZSB0aGUgc2FtcGxlIGFjdGlvbiB0 byBiZSBxdWV1ZSwNCj4gPiA+IGJ1dCBpbiB0aGUgY29udGV4dCBvZiBhIHN3aXRjaCAodHJhbnNm ZXIpIHRoZXJlIGlzIG5vIG1lYW5pbmcgZm9yIGEgcXVldWUsDQo+IG9ubHkgZm9yIHBvcnRzLg0K PiA+ID4gVGhpcyBpcyB0aGUgcmVhc29uIHlvdSBnZXQgdGhlIGZhaWx1cmUuDQo+ID4gPiBGcm9t IG91ciBkb2N1bWVudGF0aW9uIFsxXSwgeW91IGNhbiBzZWUgdGhhdDoNCj4gPiA+IFNhbXBsZSBm bG93Og0KPiA+ID4gLi4uDQo+ID4gPiBGb3IgRS1Td2l0Y2ggbWlycm9yaW5nIGZsb3csIHN1cHBv cnRzIFJBVyBFTkNBUCwgUG9ydCBJRCwgVlhMQU4NCj4gPiA+IEVOQ0FQLCBOVkdSRSBFTkNBUCBp biB0aGUgc2FtcGxlIGFjdGlvbnMgbGlzdC4NCj4gPiA+DQo+ID4gPiAyLiBPbiB5b3VyIHNlY29u ZCB0cnksIHRoZXJlIGlzIGNvbmZ1c2lvbiBhYm91dCB0aGUgZ3JvdXBzLg0KPiA+ID4gSWYgeW91 IHNwZWNpZnkgImluZ3Jlc3MsIiBpdCBtZWFucyB5b3UgYXJlIGluIHRoZSBkb21haW4gb2YgdGhl IE5JQw0KPiA+ID4gUlggb2YgdGhlIERQREsgYXBwLiBJZiB5b3Ugc3BlY2lmeSAidHJhbnNmZXIi IHlvdSBhcmUgaW4gdGhlIHN3aXRjaCBkb21haW4uDQo+ID4gPiBFYWNoIGRvbWFpbiBoYXMgaXRz IG93biB0YWJsZXMsIHNvIHdoZW4geW91IGRvIHRoZSBmb2xsb3dpbmcgLCB0aGVzZQ0KPiA+ID4g dGFibGVzIGRvbid0IHJlYWxseSBjb25uZWN0IHRvIG9uZSBhbm90aGVyOg0KPiA+ID4NCj4gPiA+ IGZsb3cgY3JlYXRlIDAgaW5ncmVzcyBwYXR0ZXJuIGVuZCBhY3Rpb25zIGp1bXAgZ3JvdXAgMSAv IGVuZCBmbG93DQo+ID4gPiBjcmVhdGUgMCBpbmdyZXNzIGdyb3VwIDEgcGF0dGVybiBlbmQgYWN0 aW9ucyBzYW1wbGUgcmF0aW8gMTAgaW5kZXggMA0KPiA+ID4gLyBjb3VudCAvIGp1bXAgZ3JvdXAg MiAvIGVuZCBmbG93IGNyZWF0ZSAwIGluZ3Jlc3MgZ3JvdXAgMiBwcmlvcml0eQ0KPiA+ID4gMiBw YXR0ZXJuIGVuZCBhY3Rpb25zIGNvdW50IC8ganVtcCBncm91cCAzIC8gZW5kDQo+ID4gPg0KPiA+ ID4gZmxvdyBjcmVhdGUgMCB0cmFuc2ZlciBncm91cCAyIHBhdHRlcm4gcmVwcmVzZW50ZWRfcG9y dA0KPiA+ID4gZXRoZGV2X3BvcnRfaWQgaXMgMCAvIGVuZCBhY3Rpb25zIGNvdW50IC8gcmVwcmVz ZW50ZWRfcG9ydA0KPiA+ID4gZXRoZGV2X3BvcnRfaWQgMSAvIGVuZA0KPiA+ID4NCj4gPiA+IFdo ZW4gYSBwYWNrZXQgaXMgcmVjZWl2ZWQgaW4gdGhlIHN3aXRjaCBkb21haW4gb24gZ3JvdXAgMCBp dCBsb29rcyBmb3IgYQ0KPiBydWxlLg0KPiA+ID4gSXQgZG9lc24ndCBoYXZlIGFueSBzbyB0aGUg ZGVmYXVsdCBiZWhhdmlvciBpcyBnbyB0byB0aGUgTklDIFJYDQo+ID4gPiBkb21haW4gYW5kIHRo ZXJlIHlvdSBoYXZlIHNhbXBsZS4NCj4gPiA+IEl0ICJ3b3JrcyIgYmVjYXVzZSB5b3UgY29uZmln dXJlIHRvIHNhbXBsZSB0aGUgcGFja2V0IHRvIHF1ZXVlIDAsDQo+ID4gPiBidXQgcGxlYXNlIG5v dGUgdGhlIG9yaWdpbmFsIHBhY2tldCBpcyBkcm9wcGVkIHNpbmNlIHlvdSBqdW1wIHRvDQo+ID4g PiBncm91cCAzIHdoaWNoIGhhcyBubyBydWxlcy4NCj4gPiA+IFRoZSBmbG93IGluIHRoZSBzd2l0 Y2ggaXMgb25seSBpbiBncm91cCAyIGJ1dCB0aGVyZSBpcyBhDQo+ID4gPiBkaXNjb25uZWN0aW9u IGJldHdlZW4gc3dpdGNoIGdyb3VwIDAgYW5kIGdyb3VwIDIgYW5kIHRoaXMgaXMgd2h5IHlvdSBk b24ndA0KPiBzZWUgdGhlIHBhY2tldCBpbiB0aGUgVkYuDQo+ID4gPg0KPiA+ID4gQEppYXdlaShK b25ueSkgV2FuZywgY2FuIHlvdSBzdWdnZXN0IGEgd2F5IHRvIHNlbmQgdGhlIG9yaWdpbmFsDQo+ ID4gPiBwYWNrZXQgdG8gYSBWRiBhbmQgYSBzYW1wbGUgdG8gdGhlIERQREsgYXBwPw0KPiA+ID4N Cj4gPiA+IFsxXSBodHRwOi8vZG9jLmRwZGsub3JnL2d1aWRlcy9uaWNzL21seDUuaHRtbA0KPiA+ ID4NCj4gPiA+IFJlZ2FyZHMsDQo+ID4gPiBBc2FmIFBlbnNvDQo+ID4gPg0KPiA+ID4gPi0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+RnJvbTogVG9ueSBIYXJ0IDxUb255LkhhcnRA Y29yZXJvLmNvbT4NCj4gPiA+ID5TZW50OiBXZWRuZXNkYXksIDggTWFyY2ggMjAyMyAxNzo0Mw0K PiA+ID4gPlRvOiB1c2Vyc0BkcGRrLm9yZw0KPiA+ID4gPlN1YmplY3Q6IHJ0ZV9mbG93OiB0cmFu c2ZlciBhbmQgc2FtcGxlLCBpcyBpdCBwb3NzaWJsZT8NCj4gPiA+ID4NCj4gPiA+ID5J4oCZbSB0 cnlpbmcgdG8gY29uZmlndXJlIGEgc2ltcGxlIHZhcmlhdGlvbiBvbiB0aGUgU3dpdGNoIEV4YW1w bGUgKDE0LjcuDQo+ID4gPiA+U3dpdGNoaW5nIEV4YW1wbGVzKSBpbiB0aGUgUHJvZ3JhbW1lcuKA mXMgR3VpZGUuIFdoYXQgSeKAmWQgbGlrZSB0byBkbw0KPiA+ID4gPmlzIGZvcndhcmQgcGFja2V0 cyBmcm9tIHRoZSBwaHlzaWNhbCBwb3J0IHRvIHRoZSBWRjEgYW5kIHZpY2UgdmVyc2ENCj4gPiA+ ID5hcyBkZXNjcmliZWQgaW4gdGhlIGV4YW1wbGUsIGluIGFkZGl0aW9uIEnigJlkIGFsc28gbGlr ZSB0byBzZW5kIGENCj4gPiA+ID4xOk4gc2FtcGxlIG9mIHRoZSB0cmFmZmljIHJlY2VpdmVkIGZy b20gdGhlIHBoeXNpY2FsIHBvcnQgdG8gdGhlDQo+ID4gPiA+4oCcaHlwZXJ2aXNvciBhcHBsaWNh dGlvbuKAnSwgaS5lLiB0aGUgRFBESyBhcHAuDQo+ID4gPiA+DQo+ID4gPiA+SSBoYXZlIG5vdCBm b3VuZCBhIHdheSB0byBhY2hpZXZlIHRoaXMsIHRoaXMgaXMgd2hhdCBJ4oCZdmUgdHJpZWQuLi4N Cj4gPiA+ID4NCj4gPiA+ID5Ob3RlIG15IERQREsgcG9ydHMgYXJlIDAgKHBoeXNpY2FsKSBhbmQg MSAoVkYxIHJlcHJlc2VudGVyKSByYXRoZXINCj4gPiA+ID50aGFuIHRoZSAzIGFuZCA0IGluIHRo ZSBQcm9ncmFtbWVy4oCZcyBHdWlkZSBleGFtcGxlIGFuZCBJ4oCZbSB1c2luZw0KPiA+ID4gPkRQ REstc3RhYmxlLTIyLjExLjEgd2l0aCBDb25uZWN0WC02IHZlcnNpb24gMjIuMzAuMTAwIChjb25m aWd1cmVkDQo+ID4gPiA+aW4NCj4gPiA+IHN3aXRjaGRldiBtb2RlKS4NCj4gPiA+ID4NCj4gPiA+ ID4NCj4gPiA+ID5TZXR0aW5nIHVwIHRoZSBleGFtcGxlIHdvcmtzIGFzIGV4cGVjdGVkLCB0cmFm ZmljIGlzIGZvcndhcmRlZA0KPiA+ID4gPmJldHdlZW4gcGh5c2ljYWwgYW5kIFZGMSBhbmQgbm90 aGluZyBnb2VzIHRvIERQREsgYXBwLiBJIHVzZWQgdGhlc2UNCj4gPiA+ID50ZXN0cG1kIGNvbW1h bmRzLi4uDQo+ID4gPiA+DQo+ID4gPiA+ZmxvdyBjcmVhdGUgMCB0cmFuc2ZlciBwYXR0ZXJuIHJl cHJlc2VudGVkX3BvcnQgZXRoZGV2X3BvcnRfaWQgaXMgMA0KPiA+ID4gPi8gZW5kIGFjdGlvbnMg cmVwcmVzZW50ZWRfcG9ydCBldGhkZXZfcG9ydF9pZCAxIC8gZW5kIGZsb3cgY3JlYXRlIDANCj4g PiA+ID50cmFuc2ZlciBwYXR0ZXJuIHJlcHJlc2VudGVkX3BvcnQgZXRoZGV2X3BvcnRfaWQgaXMg MSAvIGVuZCBhY3Rpb25zDQo+ID4gPiA+cmVwcmVzZW50ZWRfcG9ydCBldGhkZXZfcG9ydF9pZCAw IC8gZW5kDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+SG93ZXZlciBJIGhhdmVu4oCZdCBiZWVu IGFibGUgdG8gc2V0dXAgdGhlIHNhbXBsaW5nLiBGaXJzdCBJIHRyaWVkDQo+ID4gPiA+KGxlYXZp bmcgb3V0IHRoZSBWRjEgdG8gUEhZIHNldHVwIGZvciBub3cpLi4uDQo+ID4gPiA+DQo+ID4gPiA+ c2V0IHNhbXBsZV9hY3Rpb25zIDAgcXVldWUgaW5kZXggMCAvIGVuZCBmbG93IGNyZWF0ZSAwIHRy YW5zZmVyDQo+ID4gPiA+cGF0dGVybiByZXByZXNlbnRlZF9wb3J0IGV0aGRldl9wb3J0X2lkIGlz IDAgLyBlbmQgYWN0aW9ucyBzYW1wbGUNCj4gPiA+ID5yYXRpbyAxMCBpbmRleCAwIC8gcmVwcmVz ZW50ZWRfcG9ydCBldGhkZXZfcG9ydF9pZCAxIC8gZW5kDQo+ID4gPiA+DQo+ID4gPiA+PnBvcnRf Zmxvd19jb21wbGFpbigpOiBDYXVnaHQgUE1EIGVycm9yIHR5cGUgMTYgKHNwZWNpZmljIGFjdGlv bik6DQo+ID4gPiA+PkUtU3dpdGNoIGRvZXNuJ3Qgc3VwcG9ydCBhbnkgb3B0aW9uYWwgYWN0aW9u IGZvciBzYW1wbGluZzoNCj4gPiA+ID4+T3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQNCj4gPiA+ID4N Cj4gPiA+ID4NCj4gPiA+ID5OZXh0IHRyaWVkIHNhbXBsaW5nIGFmdGVyIHRoZSBmb3J3YXJkaW5n ICh1c2UgcHJpb3JpdHkgdG8gYXZvaWQNCj4gPiA+ID5hbWJpZ3VpdHkpLCBJIG5lZWQgdG8gaGF2 ZSBhIGZhdGUgYWN0aW9uIG9uIHRoZSBzYW1wbGUgbGluZQ0KPiA+ID4gPm90aGVyd2lzZSBJIGdl dCAibm8gZmF0ZSBhY3Rpb24gaXMgZm91bmQ64oCdIGVycm9y4oCmDQo+ID4gPiA+DQo+ID4gPiA+ c2V0IHNhbXBsZV9hY3Rpb25zIDAgcXVldWUgaW5kZXggMCAvIGVuZCBmbG93IGNyZWF0ZSAwIHRy YW5zZmVyDQo+ID4gPiA+cHJpb3JpdHkgMiBwYXR0ZXJuIHJlcHJlc2VudGVkX3BvcnQgZXRoZGV2 X3BvcnRfaWQgaXMgMCAvIGVuZA0KPiA+ID4gPmFjdGlvbnMgcmVwcmVzZW50ZWRfcG9ydCBldGhk ZXZfcG9ydF9pZCAxIC8gZW5kIGZsb3cgY3JlYXRlIDANCj4gPiA+ID5pbmdyZXNzIHBhdHRlcm4g ZW5kIGFjdGlvbnMgc2FtcGxlIHJhdGlvIDEwIGluZGV4IDAgLyBqdW1wIGdyb3VwIDENCj4gPiA+ ID4vIGVuZA0KPiA+ID4gPg0KPiA+ID4gPj5wb3J0X2Zsb3dfY29tcGxhaW4oKTogQ2F1Z2h0IFBN RCBlcnJvciB0eXBlIDEgKGNhdXNlIHVuc3BlY2lmaWVkKToNCj4gPiA+ID4+aGFyZHdhcmUgcmVm dXNlcyB0byBjcmVhdGUgZmxvdzogT3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQNCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID5JIGhhdmUgbm90IGJlZW4gYWJsZSB0byB1c2Ugc2FtcGxpbmcgaW4gZ3Jv dXAgMCwgYnV0IHNlZW1zIHRvIHdvcmsNCj4gPiA+ID5pbg0KPiA+ID4gPm5vbi0wIGdyb3VwLCBT b+KApg0KPiA+ID4gPg0KPiA+ID4gPnNldCBzYW1wbGVfYWN0aW9ucyAwIHF1ZXVlIGluZGV4IDAg LyBlbmQgZmxvdyBjcmVhdGUgMCBpbmdyZXNzDQo+ID4gPiA+cGF0dGVybiBlbmQgYWN0aW9ucyBq dW1wIGdyb3VwIDEgLyBlbmQgZmxvdyBjcmVhdGUgMCBpbmdyZXNzIGdyb3VwDQo+ID4gPiA+MSBw YXR0ZXJuIGVuZCBhY3Rpb25zIHNhbXBsZSByYXRpbyAxMCBpbmRleCAwIC8gY291bnQgLyBqdW1w IGdyb3VwDQo+ID4gPiA+MiAvIGVuZCBmbG93IGNyZWF0ZSAwIHRyYW5zZmVyIGdyb3VwIDIgcGF0 dGVybiByZXByZXNlbnRlZF9wb3J0DQo+ID4gPiA+ZXRoZGV2X3BvcnRfaWQgaXMgMCAvIGVuZCBh Y3Rpb25zIGNvdW50IC8gcmVwcmVzZW50ZWRfcG9ydA0KPiA+ID4gPmV0aGRldl9wb3J0X2lkIDEg LyBlbmQgZmxvdyBjcmVhdGUgMCBpbmdyZXNzIGdyb3VwIDIgcHJpb3JpdHkgMg0KPiA+ID4gPnBh dHRlcm4gZW5kIGFjdGlvbnMgY291bnQgLyBqdW1wIGdyb3VwIDMgLyBlbmQNCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID5ObyBlcnJvcnMhIEFuZCBzYW1wbGVzIHNob3cgdXAgaW4gRFBESyBpbiB0 aGUgMToxMCByYXRpbyBleHBlY3RlZC4NCj4gPiA+ID5Ib3dldmVyIHRoZXJl4oCZcyBubyBmb3J3 YXJkaW5nIGJldHdlZW4gcGh5c2ljYWwgYW5kIFZGMS4gVGhlIGNvdW50ZXINCj4gPiA+ID5mb3Ig dGhlIHRyYW5zZmVyIHJ1bGUgY29uZmlybXMgdGhpcywgaXRzIDAsIGhvd2V2ZXIgdGhlIGNvdW50 ZXIgZm9yDQo+ID4gPiA+dGhlIGxhc3QgcnVsZSBzaG93cyBoaXRzIChhbmQgdGhlIHRyYWZmaWMg aXMgYmxvY2tlZCkuDQo+ID4gPiA+DQo+ID4gPiA+dGVzdHBtZD4gZmxvdyBxdWVyeSAwIDIgY291 bnQNCj4gPiA+ID5DT1VOVDoNCj4gPiA+ID4gaGl0c19zZXQ6IDENCj4gPiA+ID4gYnl0ZXNfc2V0 OiAxDQo+ID4gPiA+IGhpdHM6IDANCj4gPiA+ID4gYnl0ZXM6IDANCj4gPiA+ID50ZXN0cG1kPiBm bG93IHF1ZXJ5IDAgMyBjb3VudA0KPiA+ID4gPkNPVU5UOg0KPiA+ID4gPiBoaXRzX3NldDogMQ0K PiA+ID4gPiBieXRlc19zZXQ6IDENCj4gPiA+ID4gaGl0czogMTE3DQo+ID4gPiA+IGJ5dGVzOiA3 NDg4DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+VGhhbmtzIGZvciBhbnkgaGVs cCwNCj4gPiA+ID5Ub255DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+VG9ueSBIYXJ0IHwgQ2hp ZWYgQXJjaGl0ZWN0DQo+ID4gPiA+VG9ueS5IYXJ0QGNvcmVyby5jb20gPG1haWx0bzpUb255Lkhh cnRAY29yZXJvLmNvbT4NCj4gPiA+ID4NCj4gPiA+ID4gMjkzIEJvc3RvbiBQb3N0IFJvYWQgV2Vz dCBTdWl0ZSAzMTAsIE1hcmxib3JvdWdoLCBNQSAwMTc1Mg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ ID4gPkFjY2VzcyBDb3Jlcm8gTmV0d29yayBTZWN1cml0eeKAmXMgUHJpdmFjeSBQb2xpY3kgaGVy ZQ0KPiA+ID4gPjx3d3cuY29yZXJvLmNvbS9wcml2YWN5Pi4NCj4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID5XZSBhcmUgQ29yZXJvIE5ldHdvcmsgU2VjdXJpdHkgcGxjICjigJxDb3Jl cm/igJ0pLCByZWdpc3RlcmVkIGluDQo+ID4gPiA+RW5nbGFuZCBhbmQgV2FsZXMsIHdpdGggcmVn aXN0ZXJlZCBjb21wYW55IG51bWJlciAwMjY2Mjk3OCwNCj4gPiA+ID5yZWdpc3RlcmVkIG9mZmlj ZSBhZGRyZXNzIFJlZ3VzIEhvdXNlIEhpZ2hicmlkZ2UsIE94Zm9yZCBSb2FkLA0KPiA+ID4gPlV4 YnJpZGdlLCBNaWRkbGVzZXgsIFVCOCAxSFIuIENvcmVybyBpcyB0aGUgcGFyZW50IGNvbXBhbnkg Zm9yDQo+ID4gPiA+Q29yZXJvIE5ldHdvcmsgU2VjdXJpdHksIEluYy4gYW5kIENvcmVybyBOZXR3 b3JrIFNlY3VyaXR5IChVSykgTHRkDQo+ID4gPiA+KGEgY29tcGFueSByZWdpc3RlcmVkIGluIEVu Z2xhbmQgYW5kIFdhbGVzIHdpdGggcmVnaXN0ZXJlZCBudW1iZXINCj4gPiA+ID4wNDA0NzA5MCwg d2l0aCB0aGUgc2FtZSByZWdpc3RlcmVkIG9mZmljZSBhZGRyZXNzIGFzIGFib3ZlKSBGb3INCj4g PiA+ID5pbmZvcm1hdGlvbiBhYm91dCBob3cgd2UgcHJvY2VzcyB5b3VyIGRhdGEsIG9yIHRvIG1h bmFnZSB5b3VyIGRhdGENCj4gPiA+ID5wcmVmZXJlbmNlcywgY2xpY2sgaGVyZSA8aW5mby5jb3Jl cm8uY29tL2RhdGEtDQo+ID4gPiBwcmVmZXJlbmNlcy5odG1sPi4NCj4gPiA+ID4NCj4gPiA+ID4N Cj4gPg0KDQo=