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 DE1CDA0542; Mon, 6 Jun 2022 11:48:08 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8CAE040A81; Mon, 6 Jun 2022 11:48:08 +0200 (CEST) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2046.outbound.protection.outlook.com [40.107.244.46]) by mails.dpdk.org (Postfix) with ESMTP id 1EBF840150 for ; Mon, 6 Jun 2022 11:48:07 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZLY/O/KQEf4EQqiMEJOkhmULI3fDvFOKxYvtoG0YbW+kCanYUsceCBI9RpOYqy4NKjllZzQKJ6WZlg9o7mxnKH2eQkNbNIbzPLCSRRFNOzGr11/OxtE5ILcpCOAqeo3Z9Kl8Rav2OxUcyJxBd7l0WfskJB9dJAiUvezWCjLATKHrE/0V6rCRrSDWjfs7hIE1HAqGOi7tfkVah21Mwg99G8i5h6TrxwqJWWA5OFegoQR1uo2IBp4yApld3NLsdDjs09PVPDi5iufStjqnZfVX3Gyn1CNs2+bRHPn9eaoSN5omaLpzI4jCWch+eP9BtRlDmqRSsKktLx5BwWwpAn4XSA== 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=Shrpq4heoCYP8gxtNZdUUurwreOORYkv1OSxzYBHtD0=; b=GtPJlJCnA8jIjIQ9D7lmwSlekkAcz+5mFLBsyHR8wB2L7TIFbDMwjaPLdNU2P5u8Q6f+TvXZ2pgdDgMsNGdR12zuc6XcNcJcULRQ7SsCeh8gI2Qkg198FIoWTDNnGQf1eNMa0i/BnBGNlFc80pcqDXaGn6fy7hxpV+C9/9BF6HYkr8FC3EE2jOCGJNdmEv3IE//on1kEfds21Zp4ffCMymzO74YgyZE7C86c8Lx7m4p9zLQrpIn1gA/MoimhiNOVs1vCPwHpopHpFyi0I+7YvdDaGfZbCzNN10QdIIIxCkDOCNhmcD8YQhKwssX7qYymhbyqZPIpdIeDx80POZnbuA== 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=Shrpq4heoCYP8gxtNZdUUurwreOORYkv1OSxzYBHtD0=; b=myZQbSBOJtLnAVmxJe34WMFrMCnpLZluxTq535+N7Q+eL0lK37B3PXqNxKybgKhGGDdxHbIxPuXr41Ax6pxxHc6hfca3ItAcAdqC4yHyvXI7k9AcCcoyBZIzPXHML2FqwMd8NzWG7i5HKSRZnJ2ODXzIu7ptcDGxMVgX1sCXP4lRnLG0F4pz2kBv/bKwrnaJPpmxOBsPOLWkP2hi0askmophl+m4T4FLxFPCUOSpYg4Ewn7IdpLbRRtyWbSWC/ivZTxtei454xbgyvqFmqCxU7TTjBsqSuXsoXWzcQwZC90orLwq2K0c1z2039w9zG99BRZztn32lUbiUROwd9nFQw== Received: from MW2PR12MB4666.namprd12.prod.outlook.com (2603:10b6:302:13::22) by BN6PR12MB1809.namprd12.prod.outlook.com (2603:10b6:404:106::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5314.12; Mon, 6 Jun 2022 09:48:04 +0000 Received: from MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::edeb:4144:1ee4:83a1]) by MW2PR12MB4666.namprd12.prod.outlook.com ([fe80::edeb:4144:1ee4:83a1%6]) with mapi id 15.20.5314.019; Mon, 6 Jun 2022 09:47:56 +0000 From: Ori Kam To: Jack Min , Andrew Rybchenko , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Ferruh Yigit CC: "dev@dpdk.org" Subject: RE: [RFC v2 2/2] ethdev: queue-based flow aged report Thread-Topic: [RFC v2 2/2] ethdev: queue-based flow aged report Thread-Index: AQHYdYrL0udDNOeDSUeL/UYp3JxDva063aCAgADA03CAAEwugIAGPW9g Date: Mon, 6 Jun 2022 09:47:56 +0000 Message-ID: References: <7a45693f478b1b721b4e05131141b526185a175c.1654063912.git.jackmin@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: 816f7d3e-e435-42a1-5be9-08da47a1a218 x-ms-traffictypediagnostic: BN6PR12MB1809:EE_ x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr 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: nsJvHQkqm9BW0OoYNRzLJmdqYX4mYc6nlM9FxXQc9W2qFf5RVIt03AHTqQGKFQi+GNStGqAq+1mWUWN1KBGp6zAJ+ytw83ChMnSb2kNdBuyeJ7yk3jHiXERY7ndmFWNEh0eJnf/w3i4Om2ts47wMHS3Pf5okXVhi4vxf2qgvoSdvagmqX2DbwJCNC+FnfKwRdsSUrA6kFYXCMW/SD2WCC7fVNrcZZ6uWhcsWklwqxxoF0em1YfshlHHESRmS/o58p85XNQUjgp0dswaQsvB1I5p/pFJgbT+CLq0J85kcNWcpBl2O0t/qTEK0MToSJFL0WxIw9kRoKR4kcRCKQogLHakuhodE+sT02j5gP/sQarf+aD1xG+4oaNMxpZIKWweI4+5o3GCif3P+tYC4dwU0I0NPb1Qyu3HMwzknvIQFYnyjkPuuhFyb9nysnBmX3bE/dYtqUXwDGty2Hw8fRhu4IC+m6+dO+lBBC6UjaCfhQDfVsFJaltAy9he2RxxiQEmv0djlTirc9izSZhL2Ej7uaFjSwTkKwezgZOYBw9ptcDjZFMzyxm7IpOlktHXVPMloyPsmeD3g8Vdo81yjI9//HOIN+FXDJ/H/0B/p5jWVKEzZSQg5AEFGuWC2NiT+QMeDcFx3OoOOkflZ1WJ9eWQFkLQUBdTTYFTVOoS8xHQBQzyT9xkV/VT/LOdNY6kmveeTUtKsMCdGiDeBX/g8eu/jAg== 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:(13230001)(4636009)(366004)(83380400001)(508600001)(122000001)(76116006)(66446008)(66556008)(71200400001)(8676002)(66476007)(2906002)(4326008)(66946007)(64756008)(38100700002)(5660300002)(38070700005)(8936002)(6506007)(186003)(9686003)(55016003)(53546011)(7696005)(110136005)(9326002)(86362001)(52536014)(33656002)(316002)(26005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UmxSUk51c2ZrZ2d0dDhDeFJBeWhnMzBPTHRWQ3ZGTDFNSFFZd2dMQ3dsWkht?= =?utf-8?B?WnNuRS9hcm9nWXhMZFUwdXhTWG9obVR4M0ttVEpNVE9kLzRMeWhoZmNISnd2?= =?utf-8?B?ZVFIa2ZLNWgyK3FKWllEdXo3S0pOTUdWMFQwUEdTTDJxa2JlQ01Nc0hnZm9D?= =?utf-8?B?STFKSXZ0NjMzdkQvRXVTd1BJMjJxbUVBTXBFbDNYa3lQUHN2T2krS1gwcVMw?= =?utf-8?B?b0ZkaC9veHlKUGplS010MWg0WU00WkxnMjFDNTEwWmhKdXBZN2tZTWhud3RK?= =?utf-8?B?YWRzSDl4VWYvQ0JDZVdNTDYwNXNSaGJSUkQ3bDFNVUs0Z3FpdlRFdlorV1FE?= =?utf-8?B?M1YrbDAyL3JrcC82SnZUeHRnMlFnUFFON251TXNVbFpUVURWUll3MGF2aGNP?= =?utf-8?B?WjZkWjRNZVVLb0IzODV2M3U5RFpMbCt6U1gvREgxRGVQemFVUGJnNTh4cmZn?= =?utf-8?B?cU9QV1dlQWNwZnFSa2FCU0QxRlR1ZC9uR1hxTUFRMGlsazh3TXI5dUJ6b1hr?= =?utf-8?B?NWNMc0JhY1BmQ3Yrb0dETWo5dEt5a294MTE4TndoWmJLcy80YVpjYnMwbFJu?= =?utf-8?B?TWx1eTJ6MXBianVSMXpuNXA4akJraUtQSjdxVzNqWGM1QWJ5MGlDU2pVZldX?= =?utf-8?B?VzkwaTV2VVFMZmhtZSt2VThpdSt6YWNleklZcXhqWkp0Q1ozbVc1TnJPMGhW?= =?utf-8?B?NmMvZ0lLeStkVFlwR2tTZnFtWm9vYVQ1RFl0UExIaytxb2ZkTGxEWVQ4VE15?= =?utf-8?B?N2k1NHViZVEvVUQ0OFpBYTJmUnJDMUVRcm9oZjF5aGtYVGN1c2g2emFOcDcy?= =?utf-8?B?MmlwVjAwY0prRUhJWTJheTY1TjlPUGZzeW9YQnhmUS81cEFVRmNXeXpjS3Zs?= =?utf-8?B?aS9pMVIvcVhBREZhUlNpeUIzRTdSblhRaVFmR0tiOG4yL2NGb04yTC9JN2hM?= =?utf-8?B?bWt1RU9ubzBPblFoaFRlaExnZUpmb25uMHNUbW4zdktqeXRxNDZIeE9vdFF4?= =?utf-8?B?UjRiNzMvdHFHTTFIdjgxOU5JY3pVY2E0Ym9TOFUvcmE2U2VwUFJVc3BLL3JZ?= =?utf-8?B?MWxhVFYraWhlK1RISWtxZkdZc1JGWUpOenJMTUliZEZNMFBmb1JacU5ha1hh?= =?utf-8?B?NDBYSkJBdEcwL3crS1FoTzJsdGExV3JsdmZlaXpZdzBDOXJsNjJCanZJVSs2?= =?utf-8?B?RGs1anNiVUYySThqeGZvQXlST01SU0dwSnBIRGViYm1seDN0UThQdTNDTEw0?= =?utf-8?B?clp2cDlKM3F0YjdHa1pZdzJ1REQ1ZjEvZDRVc3gzTDdJdERwOXZQZUJCcTU5?= =?utf-8?B?RVMvNVY2d0tvUlVtaGxkbElzOU5CbjBLKy82MVkzUHVIbVNBMVg5RXBPSWlo?= =?utf-8?B?aGxzZTF0bTd1eGxCZlZIckpUQ0FYM0IxVXVmZXNmZ3JkckY4RHZyLzhyWnNy?= =?utf-8?B?OHlPNlR3ODNseHZWc2h3cjI3dU92SzJuQ002bFkveGZRaS95enVndEpXdTZh?= =?utf-8?B?SFVkUEpHUXhDS0ZaRG1CdVBLMFVYQ2lzRjVXTE91YmJGM3E1OWxjdXNJM3R4?= =?utf-8?B?b0owQ1Bha3poVVFZYlJXS2Q4QkQydHkvNk1xUzRHanNaSitTM1dKK1hFR3k1?= =?utf-8?B?TVRlMGlaN0RCNVdURkNOTzl2MWVYY2ZIcW5uSnRONThJL2ZITUczc21SRStP?= =?utf-8?B?TzQxZ2NOL0x1VExsTVVHRFl5ZWJNd3VRMzkyS2RpaTAyYU1LaURWdGdHbzJi?= =?utf-8?B?c25iZ2J0b21vdkt5b0w0WnFxOGl1VkhhMlhtSTZ1dCtWTGRxcUFkOEJKbUU5?= =?utf-8?B?b2pLN1hoZXdnT2dYd1h3dDl4bTMrRzhJdGNXMzNGM3ZtNTVmN3NKVTFMRFN0?= =?utf-8?B?VjJlUzRLcXg0Q08xWkpvb1pCanVGeEsyTVlRbytxWVNHZHFoMFk1SURMbkI2?= =?utf-8?B?NDlBeUpqSzdaL2RtVmhkZWljOGhHK3h3SG5XemZ1UVFLVGZWdnp4V05RRGVz?= =?utf-8?B?UjR0Tk85Y1dTZU02N21tNmN1dkdJNStreUR0Y1kvWUFZVDJZS3RlZVV3VEh1?= =?utf-8?B?NkFaeG4xUDF6UXVwRllDTXBnVFU1MFI2VkZFV09nd2xrUGRoTGJuaVJwbms4?= =?utf-8?B?YUNLSXdheDRtTDZjMHgyVGVzc25QMjhVTTBKcXovT3AxVDRib0s1Q2d4RFhw?= =?utf-8?B?SXlvLzdYaDlzOUNBcTFDaFRlZUladmVURXJxb29GaERadHNaMDlTVGoxaDFl?= =?utf-8?B?SURyU2ZWM1VxcXVnSHI1a2p4RjNFRDRYZkJLYzg0ai9FS3VyVnpYM0hTdUhk?= =?utf-8?Q?YJEbVPP8WPllLDRuhL?= Content-Type: multipart/alternative; boundary="_000_MW2PR12MB4666719111ADC1877DCC4021D6A29MW2PR12MB4666namp_" 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: 816f7d3e-e435-42a1-5be9-08da47a1a218 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Jun 2022 09:47:56.0533 (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: szyfQsw/3t1dycT/JhQS0gmvv5PCUkYo1VxBqYYGpALrIdw7JjS+R/FI0u0qFiaiG9e2Kiozf/Mb6jdyYo0dFg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR12MB1809 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_MW2PR12MB4666719111ADC1877DCC4021D6A29MW2PR12MB4666namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGksDQpGb3Igc29tZSByZWFzb24gdGhpcyBtYWlsIHN0b3BwZWQgYmVpbmcgcGxhaW4gdGV4dC4N ClBsZWFzIGZpbmQgbXkgY29tbWVudCBtYXJrZWQgd2l0aCBbT3JpXQ0KDQpCZXN0LA0KT3JpDQoN CkZyb206IEphY2sgTWluIDxqYWNrbWluQG52aWRpYS5jb20+DQpTZW50OiBUaHVyc2RheSwgSnVu ZSAyLCAyMDIyIDE6MjQgUE0NClRvOiBPcmkgS2FtIDxvcmlrYUBudmlkaWEuY29tPjsgQW5kcmV3 IFJ5YmNoZW5rbyA8YW5kcmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+OyBOQlUtQ29udGFjdC1U aG9tYXMgTW9uamFsb24gKEVYVEVSTkFMKSA8dGhvbWFzQG1vbmphbG9uLm5ldD47IEZlcnJ1aCBZ aWdpdCA8ZmVycnVoLnlpZ2l0QHhpbGlueC5jb20+DQpDYzogZGV2QGRwZGsub3JnDQpTdWJqZWN0 OiBSZTogW1JGQyB2MiAyLzJdIGV0aGRldjogcXVldWUtYmFzZWQgZmxvdyBhZ2VkIHJlcG9ydA0K DQpPbiA2LzIvMjIgMTQ6MTAsIE9yaSBLYW0gd3JvdGU6DQoNCkhpLA0KSGVsbG8sDQoNCg0KDQoN Cg0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KDQpGcm9tOiBBbmRyZXcgUnliY2hlbmtv IDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT48bWFpbHRvOmFuZHJldy5yeWJjaGVua29A b2t0ZXRsYWJzLnJ1Pg0KDQpTZW50OiBXZWRuZXNkYXksIEp1bmUgMSwgMjAyMiA5OjIxIFBNDQoN ClN1YmplY3Q6IFJlOiBbUkZDIHYyIDIvMl0gZXRoZGV2OiBxdWV1ZS1iYXNlZCBmbG93IGFnZWQg cmVwb3J0DQoNCg0KDQpBZ2Fpbiwgc3VtbWFyeSBtdXN0IG5vdCBiZSBhIHN0YXRlbWVudC4NCg0K DQoNCk9uIDYvMS8yMiAxMDozOSwgWGlhb3l1IE1pbiB3cm90ZToNCg0KV2hlbiBhcHBsaWNhdGlv biB1c2UgcXVldWUtYmFzZWQgZmxvdyBydWxlIG1hbmFnZW1lbnQgYW5kIG9wZXJhdGUgdGhlDQoN CnNhbWUgZmxvdyBydWxlIG9uIHRoZSBzYW1lIHF1ZXVlLCBlLmcgY3JlYXRlL2Rlc3Ryb3kvcXVl cnksIEFQSSBvZg0KDQpxdWVyeWluZyBhZ2VkIGZsb3cgcnVsZXMgc2hvdWxkIGFsc28gaGF2ZSBx dWV1ZSBpZCBwYXJhbWV0ZXIganVzdCBsaWtlDQoNCm90aGVyIHF1ZXVlLWJhc2VkIGZsb3cgQVBJ cy4NCg0KDQoNCkJ5IHRoaXMgd2F5LCBQTUQgY2FuIHdvcmsgaW4gbW9yZSBvcHRpbWl6ZWQgd2F5 IHNpbmNlIHJlc291cmNlcyBhcmUNCg0KaXNvbGF0ZWQgYnkgcXVldWUgYW5kIG5lZWRuJ3Qgc3lu Y2hyb25pemUuDQoNCg0KDQpJZiBhcHBsaWNhdGlvbiBkbyB1c2UgcXVldWUtYmFzZWQgZmxvdyBt YW5hZ2VtZW50IGJ1dCBjb25maWd1cmUgcG9ydA0KDQp3aXRob3V0IFJURV9GTE9XX1BPUlRfRkxB R19TVFJJQ1RfUVVFVUUsIHdoaWNoIG1lYW5zIGFwcGxpY2F0aW9uIG9wZXJhdGUNCg0KYSBnaXZl biBmbG93IHJ1bGUgb24gZGlmZmVyZW50IHF1ZXVlcywgdGhlIHF1ZXVlIGlkIHBhcmFtZXRlciB3 aWxsDQoNCmJlIGlnbm9yZWQuDQoNCg0KDQpJbiBhZGRpdGlvbiB0byB0aGUgYWJvdmUgY2hhbmdl LCBhbm90aGVyIG5ldyBBUEkgaXMgYWRkZWQgd2hpY2ggaGVscCB0aGUNCg0KYXBwbGljYXRpb24g Z2V0IGluZm9ybWF0aW9uIGFib3V0IHdoaWNoIHF1ZXVlcyBoYXZlIGFnZWQgb3V0IGZsb3dzIGFm dGVyDQoNClJURV9FVEhfRVZFTlRfRkxPV19BR0VEIGV2ZW50IHJlY2VpdmVkLiBUaGUgcXVlcmll ZCBxdWV1ZSBpZCBjYW4gYmUNCg0KdXNlZCBpbiB0aGUgYWJvdmUgcXVldWUgYmFzZWQgcXVlcnkg YWdlZCBmbG93cyBBUEkuDQoNCg0KDQpTaWduZWQtb2ZmLWJ5OiBYaWFveXUgTWluIDxqYWNrbWlu QG52aWRpYS5jb20+PG1haWx0bzpqYWNrbWluQG52aWRpYS5jb20+DQoNCi0tLQ0KDQogIGxpYi9l dGhkZXYvcnRlX2Zsb3cuaCAgICAgICAgfCA4MiArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysNCg0KICBsaWIvZXRoZGV2L3J0ZV9mbG93X2RyaXZlci5oIHwgMTMgKysrKysrDQoN CiAgMiBmaWxlcyBjaGFuZ2VkLCA5NSBpbnNlcnRpb25zKCspDQoNCg0KDQpkaWZmIC0tZ2l0IGEv bGliL2V0aGRldi9ydGVfZmxvdy5oIGIvbGliL2V0aGRldi9ydGVfZmxvdy5oDQoNCmluZGV4IDM4 NDM5ZmNkMWQuLmExMmJlY2ZlM2IgMTAwNjQ0DQoNCi0tLSBhL2xpYi9ldGhkZXYvcnRlX2Zsb3cu aA0KDQorKysgYi9saWIvZXRoZGV2L3J0ZV9mbG93LmgNCg0KQEAgLTI4MTAsNiArMjgxMCw3IEBA IGVudW0gcnRlX2Zsb3dfYWN0aW9uX3R5cGUgew0KDQogICAgICogU2VlIGZ1bmN0aW9uIHJ0ZV9m bG93X2dldF9hZ2VkX2Zsb3dzDQoNCiAgICAgKiBzZWUgZW51bSBSVEVfRVRIX0VWRU5UX0ZMT1df QUdFRA0KDQogICAgICogU2VlIHN0cnVjdCBydGVfZmxvd19xdWVyeV9hZ2UNCg0KKyAgICAqIFNl ZSBmdW5jdGlvbiBydGVfZmxvd19nZXRfcV9hZ2VkX2Zsb3dzDQoNCiAgICAgKi8NCg0KICAgUlRF X0ZMT1dfQUNUSU9OX1RZUEVfQUdFLA0KDQoNCg0KQEAgLTU2MjQsNiArNTYyNSw4NyBAQCBydGVf Zmxvd19hc3luY19hY3Rpb25faGFuZGxlX3VwZGF0ZSh1aW50MTZfdCBwb3J0X2lkLA0KDQogICAg ICAgICAgICBjb25zdCB2b2lkICp1cGRhdGUsDQoNCiAgICAgICAgICAgIHZvaWQgKnVzZXJfZGF0 YSwNCg0KICAgICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7DQoNCisNCg0K Ky8qKg0KDQorICogQHdhcm5pbmcNCg0KKyAqIEBiIEVYUEVSSU1FTlRBTDogdGhpcyBBUEkgbWF5 IGNoYW5nZSB3aXRob3V0IHByaW9yIG5vdGljZS4NCg0KKyAqDQoNCisgKiBHZXQgZmxvdyBxdWV1 ZXMgd2hpY2ggaGF2ZSBhZ2VkIG91dCBmbG93cyBvbiBhIGdpdmVuIHBvcnQuDQoNCisgKg0KDQor ICogVGhlIGFwcGxpY2F0aW9uIGNhbiB1c2UgdGhpcyBmdW5jdGlvbiB0byBxdWVyeSB3aGljaCBx dWV1ZXMgaGF2ZSBhZ2VkIG91dCBmbG93cyBhZnRlcg0KDQorICogYSBSVEVfRVRIX0VWRU5UX0ZM T1dfQUdFRCBldmVudCBpcyByZWNlaXZlZCBzbyB0aGUgcmV0dXJuZWQgcXVldWUgaWQgY2FuIGJl IHVzZWQgdG8NCg0KKyAqIGdldCBhZ2VkIG91dCBmbG93cyBvbiB0aGlzIGdpdmVuIHF1ZXVlIGJ5 IGNhbGwgcnRlX2Zsb3dfZ2V0X3FfYWdlZF9mbG93cy4NCg0KKyAqDQoNCisgKiBUaGlzIGZ1bmN0 aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSB0aGUgZXZlbnQgY2FsbGJhY2sgb3Igc3luY2hyb25vdXNs eSByZWdhcmRsZXNzIG9mIHRoZSBldmVudC4NCg0KKyAqDQoNCisgKiBAcGFyYW0gcG9ydF9pZA0K DQorICogICBQb3J0IGlkZW50aWZpZXIgb2YgRXRoZXJuZXQgZGV2aWNlLg0KDQorICogQHBhcmFt W2luLCBvdXRdIHF1ZXVlX2lkDQoNCisgKiAgIEFycmF5IG9mIHF1ZXVlIGlkIHRoYXQgd2lsbCBi ZSBzZXQuDQoNCisgKiBAcGFyYW1baW5dIG5iX3F1ZXVlX2lkDQoNCisgKiAgIE1heGltdW0gbnVt YmVyIG9mIHRoZSBxdWV1ZSBpZCB0aGF0IGNhbiBiZSByZXR1cm5lZC4NCg0KKyAqICAgVGhpcyB2 YWx1ZSBzaG91bGQgYmUgZXF1YWwgdG8gdGhlIHNpemUgb2YgdGhlIHF1ZXVlX2lkIGFycmF5Lg0K DQorICogQHBhcmFtW291dF0gZXJyb3INCg0KKyAqICAgUGVyZm9ybSB2ZXJib3NlIGVycm9yIHJl cG9ydGluZyBpZiBub3QgTlVMTC4gSW5pdGlhbGl6ZWQgaW4gY2FzZSBvZg0KDQorICogICBlcnJv ciBvbmx5Lg0KDQorICoNCg0KKyAqIEByZXR1cm4NCg0KKyAqICAgaWYgbmJfcXVldWVfaWQgaXMg MCwgcmV0dXJuIHRoZSBhbW91bnQgb2YgYWxsIHF1ZXVlcyB3aGljaCBoYXZlIGFnZWQgb3V0IGZs b3dzLg0KDQorICogICBpZiBuYl9xdWV1ZV9pZCBpcyBub3QgMCAsIHJldHVybiB0aGUgYW1vdW50 IG9mIHF1ZXVlcyB3aGljaCBoYXZlIGFnZWQgb3V0IGZsb3dzDQoNCisgKiAgIHJlcG9ydGVkIGlu IHRoZSBxdWV1ZV9pZCBhcnJheSwgb3RoZXJ3aXNlIG5lZ2F0aXZlIGVycm5vIHZhbHVlLg0KDQoN Cg0KSSdtIHNvcnJ5LCBidXQgaXQgaXMgdW5jbGVhciBmb3IgbWUgd2hhdCBoYXBwZW5zIGlmIHBy b3ZpZGVkIGFycmF5IGlzDQoNCmluc3VmZmljaWVudCB0byByZXR1cm4gYWxsIHF1ZXVlcy4gSU1I Tywgd2Ugc3RpbGwgc2hvdWxkIHByb3ZpZGUgYXMNCg0KbXVjaCBhcyB3ZSBjYW4uIFRoZSBxdWVz dGlvbiBpcyBob3cgdG8gcmVwb3J0IHRoYXQgd2UgaGF2ZSBtb3JlIHF1ZXVlcy4NCg0KSXQgbG9v a3MgbGlrZSB0aGUgb25seSBzZW5zaWJsZSB3YXkgaXMgdG8gcmV0dXJuIHZhbHVlIGdyZWF0ZXIg dGhhbg0KDQpuYl9xdWV1ZV9pZC4NCg0KDQoNCkkgdGhpbmsgdGhhdCBqdXN0IGxpa2UgYW55IG90 aGVyIGZ1bmN0aW9uLCB0aGlzIGZ1bmN0aW9uIHNob3VsZCByZXR1cm4gdGhlIG1heCBiYXNlZCBv biB0aGUgcmVxdWVzdGVkIG51bWJlci4NCg0KUmV0dXJuaW5nIGJpZ2dlciBudW1iZXIgbWF5IHJl c3VsdCBpbiBvdXQgb2YgYnVmIGlzc3Vlcywgb3IgcmVxdWlyZSBleHRyYSB2YWxpZGF0aW9uIHN0 ZXAgZnJvbSBhcHBsaWNhdGlvbi4NCg0KSW4gYWRkaXRpb24gYXMgZmFyIGFzIEkgY2FuIHNlZSB0 aGUgY29tbW9uIHByYWN0aWNlIGluIERQREsgaXMgdG8gcmV0dXJuIHRoZSByZXF1ZXN0ZWQgbnVt YmVyLg0KWWVzLCBpdCBqdXN0IGxpa2VzIG90aGVyIGZ1bmN0aW9ucy4NCg0KDQoNCg0KSSBoYXZl IG90aGVyIGNvbmNlcm4gd2l0aCB0aGlzIGZ1bmN0aW9uLCBmcm9tIG15IHVuZGVyc3RhbmRpbmcg dGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCBvbiB0aGUgc2VydmljZSB0aHJlYWQNCg0KdGhh dCBoYW5kZWxzIHRoZSBhZ2luZyBldmVudCwgYWZ0ZXIgY2FsbGluZyB0aGlzIGZ1bmN0aW9uIHRo ZSBhcHBsaWNhdGlvbiBzdGlsbCBuZWVkcyB0byBwcm9wYWdhdGUgdGhlIGV2ZW50IHRvIHRoZQ0K DQpjb3JyZWN0IHRocmVhZHMuDQoNCkkgdGhpbmsgaXQgd2lsbCBiZSBiZXR0ZXIgaWYgdGhlIGV2 ZW50IGl0c2VsZiB3aWxsIGhvbGQgd2hpY2ggcXVldWUgdHJpZ2dlcmVkIHRoZSBhZ2luZy4gT3Ig ZXZlbiBiZXR0ZXIgdG8gZ2V0IHRoZQ0KDQpBcyBkaXNjdXNzZWQgaW4gdjEsIHRoZXJlIHNlZW1z IG5vIGdvb2QgcGxhY2UgaW4gdGhlIGN1cnJlbnQgY2FsbGJhY2sgZnVuY3Rpb24gdG8gcGFzcyB0 aGlzIGtpbmQgb2YgaW5mb3JtYXRpb24gZnJvbSBkcml2ZXIgdG8gYXBwbGljYXRpb24uDQoNCk9y IHlvdSBoYXZlIGEgYmV0dGVyIGlkZWE/DQoNCltPcmldIE1heWJlIHVzZSB0aGUgbmV3IHF1ZXVl cywgZm9yIGV4YW1wbGUgbWF5YmUgYXBwbGljYXRpb24gY2FuIGdldCB0aGUgbm90aWZpY2F0aW9u IGFzIHBhcnQgb2YgdGhlIHBvbGxpbmcgZnVuY3Rpb24uDQptYXliZSBpdCBjYW4gZXZlbiBnZXQg dGhlIGFnZWQgcnVsZXMuDQoNCg0KDQpub3RpZmljYXRpb24gb24gdGhlIGNvcnJlY3QgdGhyZWFk LiAoSSBrbm93IGl0IGlzIG11Y2ggbW9yZSBjb21wbGljYXRlZCBidXQgbWF5YmUgaXQgaXMgd29y dGggdGhlIGVmZm9ydCwNCg0Kc2luY2UgdGhpcyBjYW4gYmUgdXNlZCBmb3Igb3RoZXIgY2FzZXMp DQoNClllcyB0aGlzIHdpbGwgYmUgYmV0dGVyIGJ1dCBJIGRvbid0IHJlYWxseSBrbm93IGhvdyB0 byBpbmZvcm0gdGhlIGNvcnJlY3QgdGhyZWFkLg0KDQpPciB3ZSBqdXN0IGxldCBhcHBsaWNhdGlv biByZWdpc3RlciBjYWxsYmFjayBwZXIgZmxvdyBxdWV1ZT8NCg0KU29tZXRoaW5nIGxpa2U6IHJ0 ZV9mbG93X3F1ZXVlX2NhbGxiYWNrX3JlZ2lzdGVyKCksIGFuZCBQTUQgY2FsbCBydGVfZmxvd19x dWV1ZV9jYWxsYmFja19wcm9jZXNzKCkgdG8gaW52b2tlDQoNCnRoZSBjYWxsYmFjayBmdW5jdGlv bnMgcmVnaXN0ZXJlZCB0byB0aGlzIHF1ZXVlIG9ubHk/DQoNCltPcmldIHRoYXQgaXMgYSBnb29k IHN1Z2dlc3Rpb24gb3IgdGhlIG9uZSBJIHN1Z2dlc3RlZCBhYm92ZS4gQW5kIHdlIGNhbiBhbHNv IGltcHJvdmUgdGhlIGN1cnJlbnQgZXZlbnQsIHRoZSBxdWVzdGlvbiBpcyB3aGF0DQphcmUgdGhl IGFkdmFudGFnZXMgb2YgYW55IGFwcHJvYWNoIGFuZCB3aGF0IGFyZSB0aGUgZG93bnNpZGVzLg0K DQoNCg0KDQoNCg0KDQorICoNCg0KKyAqIEBzZWUgcnRlX2Zsb3dfYWN0aW9uX2FnZQ0KDQorICog QHNlZSBSVEVfRVRIX0VWRU5UX0ZMT1dfQUdFRA0KDQorICovDQoNCisNCg0KK19fcnRlX2V4cGVy aW1lbnRhbA0KDQoraW50DQoNCitydGVfZmxvd19nZXRfYWdlZF9xdWV1ZXModWludDE2X3QgcG9y dF9pZCwgdWludDMyX3QgcXVldWVfaWRbXSwgdWludDMyX3QgbmJfcXVldWVfaWQsDQoNCisgICAg ICAgICAgICAgICAgICAgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7DQoNCisNCg0KKy8q Kg0KDQorICogQHdhcm5pbmcNCg0KKyAqIEBiIEVYUEVSSU1FTlRBTDogdGhpcyBBUEkgbWF5IGNo YW5nZSB3aXRob3V0IHByaW9yIG5vdGljZS4NCg0KKyAqDQoNCisgKiBHZXQgYWdlZC1vdXQgZmxv d3Mgb2YgYSBnaXZlbiBwb3J0IG9uIHRoZSBnaXZlbiBmbG93IHF1ZXVlLg0KDQorICoNCg0KKyAq IFJURV9FVEhfRVZFTlRfRkxPV19BR0VEIGV2ZW50IHdpbGwgYmUgdHJpZ2dlcmVkIGF0IGxlYXN0 IG9uZSBuZXcgYWdlZCBvdXQgZmxvdyB3YXMNCg0KKyAqIGRldGVjdGVkIG9uIGFueSBmbG93IHF1 ZXVlIGFmdGVyIHRoZSBsYXN0IGNhbGwgdG8gcnRlX2Zsb3dfZ2V0X3FfYWdlZF9mbG93cy4NCg0K KyAqDQoNCisgKiBUaGUgYXBwbGljYXRpb24gY2FuIHVzZSBydGVfZmxvd19nZXRfYWdlZF9xdWV1 ZXMgdG8gcXVlcnkgd2hpY2ggcXVldWVzIGhhdmUgYWdlZA0KDQorICogb3V0IGZsb3dzIGFmdGVy IFJURV9FVEhfRVZFTl9GTE9XX0FHRUQgZXZlbnQuDQoNCisgKg0KDQorICogSWYgYXBwbGljYXRp b24gY29uZmlndXJlIHBvcnQgYXR0cmlidXRlIHdpdGhvdXQgUlRFX0ZMT1dfUE9SVF9GTEFHX1NU UklDVF9RVUVVRQ0KDQorICogdGhlIEBwIHF1ZXVlX2lkIHdpbGwgYmUgaWdub3JlZC4NCg0KKyAq IFRoaXMgZnVuY3Rpb24gY2FuIGJlIGNhbGxlZCB0byBnZXQgdGhlIGFnZWQgZmxvd3MgYXN5bmNo cm9ub3VzbHkgZnJvbSB0aGUNCg0KKyAqIGV2ZW50IGNhbGxiYWNrIG9yIHN5bmNocm9ub3VzbHkg cmVnYXJkbGVzcyB0aGUgZXZlbnQuDQoNCisgKg0KDQorICogQHBhcmFtIHBvcnRfaWQNCg0KKyAq ICAgUG9ydCBpZGVudGlmaWVyIG9mIEV0aGVybmV0IGRldmljZS4NCg0KKyAqIEBwYXJhbSBxdWV1 ZV9pZA0KDQorICogICBGbG93IHF1ZXVlIHRvIHF1ZXJ5LiBJZ25vcmVkIHdoZW4gUlRFX0ZMT1df UE9SVF9GTEFHX1NUUklDVF9RVUVVRSBub3Qgc2V0Lg0KDQorICogQHBhcmFtW2luLCBvdXRdIGNv bnRleHRzDQoNCisgKiAgIFRoZSBhZGRyZXNzIG9mIGFuIGFycmF5IG9mIHBvaW50ZXJzIHRvIHRo ZSBhZ2VkLW91dCBmbG93cyBjb250ZXh0cy4NCg0KKyAqIEBwYXJhbVtpbl0gbmJfY29udGV4dHMN Cg0KKyAqICAgVGhlIGxlbmd0aCBvZiBjb250ZXh0IGFycmF5IHBvaW50ZXJzLg0KDQorICogQHBh cmFtW291dF0gZXJyb3INCg0KKyAqICAgUGVyZm9ybSB2ZXJib3NlIGVycm9yIHJlcG9ydGluZyBp ZiBub3QgTlVMTC4gSW5pdGlhbGl6ZWQgaW4gY2FzZSBvZg0KDQorICogICBlcnJvciBvbmx5Lg0K DQorICoNCg0KKyAqIEByZXR1cm4NCg0KKyAqICAgaWYgbmJfY29udGV4dHMgaXMgMCwgcmV0dXJu IHRoZSBhbW91bnQgb2YgYWxsIGFnZWQgY29udGV4dHMuDQoNCisgKiAgIGlmIG5iX2NvbnRleHRz IGlzIG5vdCAwICwgcmV0dXJuIHRoZSBhbW91bnQgb2YgYWdlZCBmbG93cyByZXBvcnRlZA0KDQor ICogICBpbiB0aGUgY29udGV4dCBhcnJheSwgb3RoZXJ3aXNlIG5lZ2F0aXZlIGVycm5vIHZhbHVl Lg0KDQorICoNCg0KKyAqIEBzZWUgcnRlX2Zsb3dfYWN0aW9uX2FnZQ0KDQorICogQHNlZSBSVEVf RVRIX0VWRU5UX0ZMT1dfQUdFRA0KDQorICogQHNlZSBydGVfZmxvd19wb3J0X2ZsYWcNCg0KKyAq Lw0KDQorDQoNCitfX3J0ZV9leHBlcmltZW50YWwNCg0KK2ludA0KDQorcnRlX2Zsb3dfZ2V0X3Ff YWdlZF9mbG93cyh1aW50MTZfdCBwb3J0X2lkLCB1aW50MzJfdCBxdWV1ZV9pZCwgdm9pZCAqKmNv bnRleHRzLA0KDQorICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBuYl9jb250ZXh0cywgc3Ry dWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7DQoNCiAgI2lmZGVmIF9fY3BsdXNwbHVzDQoNCiAg fQ0KDQogICNlbmRpZg0KDQpkaWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ydGVfZmxvd19kcml2ZXIu aCBiL2xpYi9ldGhkZXYvcnRlX2Zsb3dfZHJpdmVyLmgNCg0KaW5kZXggMmJmZjczMmQ2YS4uYjY2 NTE3MGJmNCAxMDA2NDQNCg0KLS0tIGEvbGliL2V0aGRldi9ydGVfZmxvd19kcml2ZXIuaA0KDQor KysgYi9saWIvZXRoZGV2L3J0ZV9mbG93X2RyaXZlci5oDQoNCkBAIC0yNjAsNiArMjYwLDE5IEBA IHN0cnVjdCBydGVfZmxvd19vcHMgew0KDQogICAgICAgICAgICAgY29uc3Qgdm9pZCAqdXBkYXRl LA0KDQogICAgICAgICAgICAgdm9pZCAqdXNlcl9kYXRhLA0KDQogICAgICAgICAgICAgc3RydWN0 IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7DQoNCisgICAvKiogU2VlIHJ0ZV9mbG93X2dldF9hZ2Vk X3F1ZXVlcygpICovDQoNCisgICBpbnQgKCpnZXRfYWdlZF9xdWV1ZXMpDQoNCisgICAgICAgKHVp bnQxNl90IHBvcnRfaWQsDQoNCisgICAgICAgICAgICB1aW50MzJfdCBxdWV1ZV9pZFtdLA0KDQor ICAgICAgICAgICAgdWludDMyX3QgbmJfcXVldWVfaWQsDQoNCisgICAgICAgICAgICBzdHJ1Y3Qg cnRlX2Zsb3dfZXJyb3IgKmVycm9yKTsNCg0KKyAgIC8qKiBTZWUgcnRlX2Zsb3dfZ2V0X3FfYWdl ZF9mbG93cygpICovDQoNCisgICBpbnQgKCpnZXRfcV9hZ2VkX2Zsb3dzKQ0KDQorICAgICAgICh1 aW50MTZfdCBwb3J0X2lkLA0KDQorICAgICAgICAgICAgdWludDMyX3QgcXVldWVfaWQsDQoNCisg ICAgICAgICAgICB2b2lkICoqY29udGV4dHMsDQoNCisgICAgICAgICAgICB1aW50MzJfdCBuYl9j b250ZXh0cywNCg0KKyAgICAgICAgICAgIHN0cnVjdCBydGVfZmxvd19lcnJvciAqZXJyb3IpOw0K DQogIH07DQoNCg0KDQogIC8qKg0KDQoNCg== --_000_MW2PR12MB4666719111ADC1877DCC4021D6A29MW2PR12MB4666namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1m YWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAy IDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDb25zb2xhczsNCglwYW5vc2UtMToyIDEx IDYgOSAyIDIgNCAzIDIgNDt9DQovKiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWws IGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXttYXJnaW46MGluOw0KCWZvbnQtc2l6ZTox MS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7fQ0KYTpsaW5rLCBzcGFu Lk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0 ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCnByZQ0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7 DQoJbXNvLXN0eWxlLWxpbms6IkhUTUwgUHJlZm9ybWF0dGVkIENoYXIiOw0KCW1hcmdpbjowaW47 DQoJZm9udC1zaXplOjEwLjBwdDsNCglmb250LWZhbWlseToiQ291cmllciBOZXciO30NCnNwYW4u SFRNTFByZWZvcm1hdHRlZENoYXINCgl7bXNvLXN0eWxlLW5hbWU6IkhUTUwgUHJlZm9ybWF0dGVk IENoYXIiOw0KCW1zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtbGluazoiSFRNTCBQ cmVmb3JtYXR0ZWQiOw0KCWZvbnQtZmFtaWx5OkNvbnNvbGFzO30NCnNwYW4uRW1haWxTdHlsZTIx DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsLXJlcGx5Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJp IixzYW5zLXNlcmlmOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNv LXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJZm9udC1zaXplOjEwLjBwdDt9DQpAcGFnZSBXb3Jk U2VjdGlvbjENCgl7c2l6ZTo4LjVpbiAxMS4waW47DQoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGlu IDEuMGluO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLS0+PC9z dHlsZT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVk aXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28g OV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0PSJl ZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0KPC9o ZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiIHN0eWxl PSJ3b3JkLXdyYXA6YnJlYWstd29yZCI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+SGksPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs Ij5Gb3Igc29tZSByZWFzb24gdGhpcyBtYWlsIHN0b3BwZWQgYmVpbmcgcGxhaW4gdGV4dC48bzpw PjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlBsZWFzIGZpbmQgbXkgY29tbWVudCBt YXJrZWQgd2l0aCBbT3JpXTxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86 cD4mbmJzcDs8L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5CZXN0LDxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T3JpPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25l O2JvcmRlci1sZWZ0OnNvbGlkIGJsdWUgMS41cHQ7cGFkZGluZzowaW4gMGluIDBpbiA0LjBwdCI+ DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjRTFFMUUx IDEuMHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+ PGI+RnJvbTo8L2I+IEphY2sgTWluICZsdDtqYWNrbWluQG52aWRpYS5jb20mZ3Q7IDxicj4NCjxi PlNlbnQ6PC9iPiBUaHVyc2RheSwgSnVuZSAyLCAyMDIyIDE6MjQgUE08YnI+DQo8Yj5Ubzo8L2I+ IE9yaSBLYW0gJmx0O29yaWthQG52aWRpYS5jb20mZ3Q7OyBBbmRyZXcgUnliY2hlbmtvICZsdDth bmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydSZndDs7IE5CVS1Db250YWN0LVRob21hcyBNb25q YWxvbiAoRVhURVJOQUwpICZsdDt0aG9tYXNAbW9uamFsb24ubmV0Jmd0OzsgRmVycnVoIFlpZ2l0 ICZsdDtmZXJydWgueWlnaXRAeGlsaW54LmNvbSZndDs8YnI+DQo8Yj5DYzo8L2I+IGRldkBkcGRr Lm9yZzxicj4NCjxiPlN1YmplY3Q6PC9iPiBSZTogW1JGQyB2MiAyLzJdIGV0aGRldjogcXVldWUt YmFzZWQgZmxvdyBhZ2VkIHJlcG9ydDxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPk9uIDYvMi8yMiAxNDoxMCwgT3JpIEthbSB3cm90ZTo8bzpwPjwvbzpwPjwv cD4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJv dHRvbTo1LjBwdCI+DQo8cHJlPkhpLDxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIj5IZWxsbyw8YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4NCjxi bG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQiPg0K PHByZT48bzpwPiZuYnNwOzwvbzpwPjwvcHJlPg0KPHByZT48bzpwPiZuYnNwOzwvbzpwPjwvcHJl Pg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBw dCI+DQo8cHJlPi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tPG86cD48L286cD48L3ByZT4NCjxw cmU+RnJvbTogQW5kcmV3IFJ5YmNoZW5rbyA8YSBocmVmPSJtYWlsdG86YW5kcmV3LnJ5YmNoZW5r b0Bva3RldGxhYnMucnUiPiZsdDthbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydSZndDs8L2E+ PG86cD48L286cD48L3ByZT4NCjxwcmU+U2VudDogV2VkbmVzZGF5LCBKdW5lIDEsIDIwMjIgOToy MSBQTTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPlN1YmplY3Q6IFJlOiBbUkZDIHYyIDIvMl0gZXRo ZGV2OiBxdWV1ZS1iYXNlZCBmbG93IGFnZWQgcmVwb3J0PG86cD48L286cD48L3ByZT4NCjxwcmU+ PG86cD4mbmJzcDs8L286cD48L3ByZT4NCjxwcmU+QWdhaW4sIHN1bW1hcnkgbXVzdCBub3QgYmUg YSBzdGF0ZW1lbnQuPG86cD48L286cD48L3ByZT4NCjxwcmU+PG86cD4mbmJzcDs8L286cD48L3By ZT4NCjxwcmU+T24gNi8xLzIyIDEwOjM5LCBYaWFveXUgTWluIHdyb3RlOjxvOnA+PC9vOnA+PC9w cmU+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUu MHB0Ij4NCjxwcmU+V2hlbiBhcHBsaWNhdGlvbiB1c2UgcXVldWUtYmFzZWQgZmxvdyBydWxlIG1h bmFnZW1lbnQgYW5kIG9wZXJhdGUgdGhlPG86cD48L286cD48L3ByZT4NCjxwcmU+c2FtZSBmbG93 IHJ1bGUgb24gdGhlIHNhbWUgcXVldWUsIGUuZyBjcmVhdGUvZGVzdHJveS9xdWVyeSwgQVBJIG9m PG86cD48L286cD48L3ByZT4NCjxwcmU+cXVlcnlpbmcgYWdlZCBmbG93IHJ1bGVzIHNob3VsZCBh bHNvIGhhdmUgcXVldWUgaWQgcGFyYW1ldGVyIGp1c3QgbGlrZTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPm90aGVyIHF1ZXVlLWJhc2VkIGZsb3cgQVBJcy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48 bzpwPiZuYnNwOzwvbzpwPjwvcHJlPg0KPHByZT5CeSB0aGlzIHdheSwgUE1EIGNhbiB3b3JrIGlu IG1vcmUgb3B0aW1pemVkIHdheSBzaW5jZSByZXNvdXJjZXMgYXJlPG86cD48L286cD48L3ByZT4N CjxwcmU+aXNvbGF0ZWQgYnkgcXVldWUgYW5kIG5lZWRuJ3Qgc3luY2hyb25pemUuPG86cD48L286 cD48L3ByZT4NCjxwcmU+PG86cD4mbmJzcDs8L286cD48L3ByZT4NCjxwcmU+SWYgYXBwbGljYXRp b24gZG8gdXNlIHF1ZXVlLWJhc2VkIGZsb3cgbWFuYWdlbWVudCBidXQgY29uZmlndXJlIHBvcnQ8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT53aXRob3V0IFJURV9GTE9XX1BPUlRfRkxBR19TVFJJQ1Rf UVVFVUUsIHdoaWNoIG1lYW5zIGFwcGxpY2F0aW9uIG9wZXJhdGU8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT5hIGdpdmVuIGZsb3cgcnVsZSBvbiBkaWZmZXJlbnQgcXVldWVzLCB0aGUgcXVldWUgaWQg cGFyYW1ldGVyIHdpbGw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5iZSBpZ25vcmVkLjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9wcmU+DQo8cHJlPkluIGFkZGl0aW9u IHRvIHRoZSBhYm92ZSBjaGFuZ2UsIGFub3RoZXIgbmV3IEFQSSBpcyBhZGRlZCB3aGljaCBoZWxw IHRoZTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPmFwcGxpY2F0aW9uIGdldCBpbmZvcm1hdGlvbiBh Ym91dCB3aGljaCBxdWV1ZXMgaGF2ZSBhZ2VkIG91dCBmbG93cyBhZnRlcjxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPlJURV9FVEhfRVZFTlRfRkxPV19BR0VEIGV2ZW50IHJlY2VpdmVkLiBUaGUgcXVl cmllZCBxdWV1ZSBpZCBjYW4gYmU8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT51c2VkIGluIHRoZSBh Ym92ZSBxdWV1ZSBiYXNlZCBxdWVyeSBhZ2VkIGZsb3dzIEFQSS48bzpwPjwvbzpwPjwvcHJlPg0K PHByZT48bzpwPiZuYnNwOzwvbzpwPjwvcHJlPg0KPHByZT5TaWduZWQtb2ZmLWJ5OiBYaWFveXUg TWluIDxhIGhyZWY9Im1haWx0bzpqYWNrbWluQG52aWRpYS5jb20iPiZsdDtqYWNrbWluQG52aWRp YS5jb20mZ3Q7PC9hPjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi0tLTxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPiZuYnNwOyBsaWIvZXRoZGV2L3J0ZV9mbG93LmgmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgfCA4MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKys8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsgbGliL2V0aGRldi9ydGVfZmxvd19k cml2ZXIuaCB8IDEzICsrKysrKzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyAyIGZpbGVz IGNoYW5nZWQsIDk1IGluc2VydGlvbnMoKyk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT48bzpwPiZu YnNwOzwvbzpwPjwvcHJlPg0KPHByZT5kaWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ydGVfZmxvdy5o IGIvbGliL2V0aGRldi9ydGVfZmxvdy5oPG86cD48L286cD48L3ByZT4NCjxwcmU+aW5kZXggMzg0 MzlmY2QxZC4uYTEyYmVjZmUzYiAxMDA2NDQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4tLS0gYS9s aWIvZXRoZGV2L3J0ZV9mbG93Lmg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKysgYi9saWIvZXRo ZGV2L3J0ZV9mbG93Lmg8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5AQCAtMjgxMCw2ICsyODEwLDcg QEAgZW51bSBydGVfZmxvd19hY3Rpb25fdHlwZSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5i c3A7ICZuYnNwOyAmbmJzcDsqIFNlZSBmdW5jdGlvbiBydGVfZmxvd19nZXRfYWdlZF9mbG93czxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyAmbmJzcDsgJm5ic3A7KiBzZWUgZW51bSBSVEVf RVRIX0VWRU5UX0ZMT1dfQUdFRDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyAmbmJzcDsg Jm5ic3A7KiBTZWUgc3RydWN0IHJ0ZV9mbG93X3F1ZXJ5X2FnZTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsgICogU2VlIGZ1bmN0aW9uIHJ0ZV9mbG93X2dldF9xX2FnZWRfZmxv d3M8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsgJm5ic3A7ICZuYnNwOyovPG86cD48L286 cD48L3ByZT4NCjxwcmU+Jm5ic3A7ICBSVEVfRkxPV19BQ1RJT05fVFlQRV9BR0UsPG86cD48L286 cD48L3ByZT4NCjxwcmU+PG86cD4mbmJzcDs8L286cD48L3ByZT4NCjxwcmU+QEAgLTU2MjQsNiAr NTYyNSw4NyBAQCBydGVfZmxvd19hc3luY19hY3Rpb25faGFuZGxlX3VwZGF0ZSh1aW50MTZfdCBw b3J0X2lkLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgY29uc3Qgdm9pZCAqdXBkYXRlLDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdm9pZCAqdXNlcl9kYXRhLDxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPiZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisvKio8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rICogQHdhcm5pbmc8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogQGIgRVhQRVJJ TUVOVEFMOiB0aGlzIEFQSSBtYXkgY2hhbmdlIHdpdGhvdXQgcHJpb3Igbm90aWNlLjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPisgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBHZXQgZmxvdyBx dWV1ZXMgd2hpY2ggaGF2ZSBhZ2VkIG91dCBmbG93cyBvbiBhIGdpdmVuIHBvcnQuPG86cD48L286 cD48L3ByZT4NCjxwcmU+KyAqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqIFRoZSBhcHBsaWNh dGlvbiBjYW4gdXNlIHRoaXMgZnVuY3Rpb24gdG8gcXVlcnkgd2hpY2ggcXVldWVzIGhhdmUgYWdl ZCBvdXQgZmxvd3MgYWZ0ZXI8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogYSBSVEVfRVRIX0VW RU5UX0ZMT1dfQUdFRCBldmVudCBpcyByZWNlaXZlZCBzbyB0aGUgcmV0dXJuZWQgcXVldWUgaWQg Y2FuIGJlIHVzZWQgdG88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogZ2V0IGFnZWQgb3V0IGZs b3dzIG9uIHRoaXMgZ2l2ZW4gcXVldWUgYnkgY2FsbCBydGVfZmxvd19nZXRfcV9hZ2VkX2Zsb3dz LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBU aGlzIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSB0aGUgZXZlbnQgY2FsbGJhY2sgb3Igc3lu Y2hyb25vdXNseSByZWdhcmRsZXNzIG9mIHRoZSBldmVudC48bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rICo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogQHBhcmFtIHBvcnRfaWQ8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rICombmJzcDsmbmJzcDsgUG9ydCBpZGVudGlmaWVyIG9mIEV0aGVybmV0 IGRldmljZS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogQHBhcmFtW2luLCBvdXRdIHF1ZXVl X2lkPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqJm5ic3A7Jm5ic3A7IEFycmF5IG9mIHF1ZXVl IGlkIHRoYXQgd2lsbCBiZSBzZXQuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqIEBwYXJhbVtp bl0gbmJfcXVldWVfaWQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICombmJzcDsmbmJzcDsgTWF4 aW11bSBudW1iZXIgb2YgdGhlIHF1ZXVlIGlkIHRoYXQgY2FuIGJlIHJldHVybmVkLjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPisgKiZuYnNwOyZuYnNwOyBUaGlzIHZhbHVlIHNob3VsZCBiZSBlcXVh bCB0byB0aGUgc2l6ZSBvZiB0aGUgcXVldWVfaWQgYXJyYXkuPG86cD48L286cD48L3ByZT4NCjxw cmU+KyAqIEBwYXJhbVtvdXRdIGVycm9yPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqJm5ic3A7 Jm5ic3A7IFBlcmZvcm0gdmVyYm9zZSBlcnJvciByZXBvcnRpbmcgaWYgbm90IE5VTEwuIEluaXRp YWxpemVkIGluIGNhc2Ugb2Y8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICombmJzcDsmbmJzcDsg ZXJyb3Igb25seS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICo8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rICogQHJldHVybjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiZuYnNwOyZuYnNwOyBp ZiBuYl9xdWV1ZV9pZCBpcyAwLCByZXR1cm4gdGhlIGFtb3VudCBvZiBhbGwgcXVldWVzIHdoaWNo IGhhdmUgYWdlZCBvdXQgZmxvd3MuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqJm5ic3A7Jm5i c3A7IGlmIG5iX3F1ZXVlX2lkIGlzIG5vdCAwICwgcmV0dXJuIHRoZSBhbW91bnQgb2YgcXVldWVz IHdoaWNoIGhhdmUgYWdlZCBvdXQgZmxvd3M8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICombmJz cDsmbmJzcDsgcmVwb3J0ZWQgaW4gdGhlIHF1ZXVlX2lkIGFycmF5LCBvdGhlcndpc2UgbmVnYXRp dmUgZXJybm8gdmFsdWUuPG86cD48L286cD48L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwcmU+PG86 cD4mbmJzcDs8L286cD48L3ByZT4NCjxwcmU+SSdtIHNvcnJ5LCBidXQgaXQgaXMgdW5jbGVhciBm b3IgbWUgd2hhdCBoYXBwZW5zIGlmIHByb3ZpZGVkIGFycmF5IGlzPG86cD48L286cD48L3ByZT4N CjxwcmU+aW5zdWZmaWNpZW50IHRvIHJldHVybiBhbGwgcXVldWVzLiBJTUhPLCB3ZSBzdGlsbCBz aG91bGQgcHJvdmlkZSBhczxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPm11Y2ggYXMgd2UgY2FuLiBU aGUgcXVlc3Rpb24gaXMgaG93IHRvIHJlcG9ydCB0aGF0IHdlIGhhdmUgbW9yZSBxdWV1ZXMuPG86 cD48L286cD48L3ByZT4NCjxwcmU+SXQgbG9va3MgbGlrZSB0aGUgb25seSBzZW5zaWJsZSB3YXkg aXMgdG8gcmV0dXJuIHZhbHVlIGdyZWF0ZXIgdGhhbjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPm5i X3F1ZXVlX2lkLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9wcmU+ DQo8L2Jsb2NrcXVvdGU+DQo8cHJlPkkgdGhpbmsgdGhhdCBqdXN0IGxpa2UgYW55IG90aGVyIGZ1 bmN0aW9uLCB0aGlzIGZ1bmN0aW9uIHNob3VsZCByZXR1cm4gdGhlIG1heCBiYXNlZCBvbiB0aGUg cmVxdWVzdGVkIG51bWJlci48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5SZXR1cm5pbmcgYmlnZ2Vy IG51bWJlciBtYXkgcmVzdWx0IGluIG91dCBvZiBidWYgaXNzdWVzLCBvciByZXF1aXJlIGV4dHJh IHZhbGlkYXRpb24gc3RlcCBmcm9tIGFwcGxpY2F0aW9uLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PkluIGFkZGl0aW9uIGFzIGZhciBhcyBJIGNhbiBzZWUgdGhlIGNvbW1vbiBwcmFjdGljZSBpbiBE UERLIGlzIHRvIHJldHVybiB0aGUgcmVxdWVzdGVkIG51bWJlci48bzpwPjwvbzpwPjwvcHJlPg0K PC9ibG9ja3F1b3RlPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+WWVzLCBpdCBqdXN0IGxpa2VzIG90 aGVyIGZ1bmN0aW9ucy48YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4NCjxibG9ja3F1b3RlIHN0 eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHByZT48bzpwPiZu YnNwOzwvbzpwPjwvcHJlPg0KPHByZT5JIGhhdmUgb3RoZXIgY29uY2VybiB3aXRoIHRoaXMgZnVu Y3Rpb24sIGZyb20gbXkgdW5kZXJzdGFuZGluZyB0aGlzIGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVk IG9uIHRoZSBzZXJ2aWNlIHRocmVhZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPnRoYXQgaGFuZGVs cyB0aGUgYWdpbmcgZXZlbnQsIGFmdGVyIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiB0aGUgYXBwbGlj YXRpb24gc3RpbGwgbmVlZHMgdG8gcHJvcGFnYXRlIHRoZSBldmVudCB0byB0aGU8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT5jb3JyZWN0IHRocmVhZHMuPG86cD48L286cD48L3ByZT4NCjxwcmU+SSB0 aGluayBpdCB3aWxsIGJlIGJldHRlciBpZiB0aGUgZXZlbnQgaXRzZWxmIHdpbGwgaG9sZCB3aGlj aCBxdWV1ZSB0cmlnZ2VyZWQgdGhlIGFnaW5nLiBPciBldmVuIGJldHRlciB0byBnZXQgdGhlPG86 cD48L286cD48L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwPkFzIGRpc2N1c3NlZCBpbiB2MSwgdGhl cmUgc2VlbXMgbm8gZ29vZCBwbGFjZSBpbiB0aGUgY3VycmVudCBjYWxsYmFjayBmdW5jdGlvbiB0 byBwYXNzIHRoaXMga2luZCBvZiBpbmZvcm1hdGlvbiBmcm9tIGRyaXZlciB0byBhcHBsaWNhdGlv bi48bzpwPjwvbzpwPjwvcD4NCjxwPk9yIHlvdSBoYXZlIGEgYmV0dGVyIGlkZWE/PG86cD48L286 cD48L3A+DQo8cD5bT3JpXSBNYXliZSB1c2UgdGhlIG5ldyBxdWV1ZXMsIGZvciBleGFtcGxlIG1h eWJlIGFwcGxpY2F0aW9uIGNhbiBnZXQgdGhlIG5vdGlmaWNhdGlvbiBhcyBwYXJ0IG9mIHRoZSBw b2xsaW5nIGZ1bmN0aW9uLjxicj4NCm1heWJlIGl0IGNhbiBldmVuIGdldCB0aGUgYWdlZCBydWxl cy48bzpwPjwvbzpwPjwvcD4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21h cmdpbi1ib3R0b206NS4wcHQiPg0KPHByZT48bzpwPiZuYnNwOzwvbzpwPjwvcHJlPg0KPHByZT5u b3RpZmljYXRpb24gb24gdGhlIGNvcnJlY3QgdGhyZWFkLiAoSSBrbm93IGl0IGlzIG11Y2ggbW9y ZSBjb21wbGljYXRlZCBidXQgbWF5YmUgaXQgaXMgd29ydGggdGhlIGVmZm9ydCw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT5zaW5jZSB0aGlzIGNhbiBiZSB1c2VkIGZvciBvdGhlciBjYXNlcyk8bzpw PjwvbzpwPjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0KPHA+WWVzIHRoaXMgd2lsbCBiZSBiZXR0ZXIg YnV0IEkgZG9uJ3QgcmVhbGx5IGtub3cgaG93IHRvIGluZm9ybSB0aGUgY29ycmVjdCB0aHJlYWQu Jm5ic3A7PG86cD48L286cD48L3A+DQo8cD5PciB3ZSBqdXN0IGxldCBhcHBsaWNhdGlvbiByZWdp c3RlciBjYWxsYmFjayBwZXIgZmxvdyBxdWV1ZT88bzpwPjwvbzpwPjwvcD4NCjxwPlNvbWV0aGlu ZyBsaWtlOiBydGVfZmxvd19xdWV1ZV9jYWxsYmFja19yZWdpc3RlcigpLCBhbmQgUE1EIGNhbGwg cnRlX2Zsb3dfcXVldWVfY2FsbGJhY2tfcHJvY2VzcygpIHRvIGludm9rZTxvOnA+PC9vOnA+PC9w Pg0KPHA+dGhlIGNhbGxiYWNrIGZ1bmN0aW9ucyByZWdpc3RlcmVkIHRvIHRoaXMgcXVldWUgb25s eT88bzpwPjwvbzpwPjwvcD4NCjxwPltPcmldIHRoYXQgaXMgYSBnb29kIHN1Z2dlc3Rpb24gb3Ig dGhlIG9uZSBJIHN1Z2dlc3RlZCBhYm92ZS4gQW5kIHdlIGNhbiBhbHNvIGltcHJvdmUgdGhlIGN1 cnJlbnQgZXZlbnQsIHRoZSBxdWVzdGlvbiBpcyB3aGF0PGJyPg0KYXJlIHRoZSBhZHZhbnRhZ2Vz IG9mIGFueSBhcHByb2FjaCBhbmQgd2hhdCBhcmUgdGhlIGRvd25zaWRlcy48bzpwPjwvbzpwPjwv cD4NCjxwPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10 b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9w cmU+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9wcmU+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFy Z2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxibG9ja3F1b3RlIHN0eWxlPSJt YXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHByZT4rICo8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rICogQHNlZSBydGVfZmxvd19hY3Rpb25fYWdlPG86cD48L286cD48L3By ZT4NCjxwcmU+KyAqIEBzZWUgUlRFX0VUSF9FVkVOVF9GTE9XX0FHRUQ8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rICovPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPitfX3J0ZV9leHBlcmltZW50YWw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4raW50PG86cD48 L286cD48L3ByZT4NCjxwcmU+K3J0ZV9mbG93X2dldF9hZ2VkX3F1ZXVlcyh1aW50MTZfdCBwb3J0 X2lkLCB1aW50MzJfdCBxdWV1ZV9pZFtdLCB1aW50MzJfdCBuYl9xdWV1ZV9pZCw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7ICBzdHJ1Y3QgcnRlX2Zsb3dfZXJyb3IgKmVycm9yKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+Ky8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisg KiBAd2FybmluZzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBAYiBFWFBFUklNRU5UQUw6IHRo aXMgQVBJIG1heSBjaGFuZ2Ugd2l0aG91dCBwcmlvciBub3RpY2UuPG86cD48L286cD48L3ByZT4N CjxwcmU+KyAqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqIEdldCBhZ2VkLW91dCBmbG93cyBv ZiBhIGdpdmVuIHBvcnQgb24gdGhlIGdpdmVuIGZsb3cgcXVldWUuPG86cD48L286cD48L3ByZT4N CjxwcmU+KyAqPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqIFJURV9FVEhfRVZFTlRfRkxPV19B R0VEIGV2ZW50IHdpbGwgYmUgdHJpZ2dlcmVkIGF0IGxlYXN0IG9uZSBuZXcgYWdlZCBvdXQgZmxv dyB3YXM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogZGV0ZWN0ZWQgb24gYW55IGZsb3cgcXVl dWUgYWZ0ZXIgdGhlIGxhc3QgY2FsbCB0byBydGVfZmxvd19nZXRfcV9hZ2VkX2Zsb3dzLjxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBUaGUgYXBw bGljYXRpb24gY2FuIHVzZSBydGVfZmxvd19nZXRfYWdlZF9xdWV1ZXMgdG8gcXVlcnkgd2hpY2gg cXVldWVzIGhhdmUgYWdlZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBvdXQgZmxvd3MgYWZ0 ZXIgUlRFX0VUSF9FVkVOX0ZMT1dfQUdFRCBldmVudC48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r ICo8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogSWYgYXBwbGljYXRpb24gY29uZmlndXJlIHBv cnQgYXR0cmlidXRlIHdpdGhvdXQgUlRFX0ZMT1dfUE9SVF9GTEFHX1NUUklDVF9RVUVVRTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPisgKiB0aGUgQHAgcXVldWVfaWQgd2lsbCBiZSBpZ25vcmVkLjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBUaGlzIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgdG8g Z2V0IHRoZSBhZ2VkIGZsb3dzIGFzeW5jaHJvbm91c2x5IGZyb20gdGhlPG86cD48L286cD48L3By ZT4NCjxwcmU+KyAqIGV2ZW50IGNhbGxiYWNrIG9yIHN5bmNocm9ub3VzbHkgcmVnYXJkbGVzcyB0 aGUgZXZlbnQuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqPG86cD48L286cD48L3ByZT4NCjxw cmU+KyAqIEBwYXJhbSBwb3J0X2lkPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqJm5ic3A7Jm5i c3A7IFBvcnQgaWRlbnRpZmllciBvZiBFdGhlcm5ldCBkZXZpY2UuPG86cD48L286cD48L3ByZT4N CjxwcmU+KyAqIEBwYXJhbSBxdWV1ZV9pZDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiZuYnNw OyZuYnNwOyBGbG93IHF1ZXVlIHRvIHF1ZXJ5LiBJZ25vcmVkIHdoZW4gUlRFX0ZMT1dfUE9SVF9G TEFHX1NUUklDVF9RVUVVRSBub3Qgc2V0LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBAcGFy YW1baW4sIG91dF0gY29udGV4dHM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICombmJzcDsmbmJz cDsgVGhlIGFkZHJlc3Mgb2YgYW4gYXJyYXkgb2YgcG9pbnRlcnMgdG8gdGhlIGFnZWQtb3V0IGZs b3dzIGNvbnRleHRzLjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBAcGFyYW1baW5dIG5iX2Nv bnRleHRzPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqJm5ic3A7Jm5ic3A7IFRoZSBsZW5ndGgg b2YgY29udGV4dCBhcnJheSBwb2ludGVycy48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICogQHBh cmFtW291dF0gZXJyb3I8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICombmJzcDsmbmJzcDsgUGVy Zm9ybSB2ZXJib3NlIGVycm9yIHJlcG9ydGluZyBpZiBub3QgTlVMTC4gSW5pdGlhbGl6ZWQgaW4g Y2FzZSBvZjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiZuYnNwOyZuYnNwOyBlcnJvciBvbmx5 LjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPisgKiBA cmV0dXJuPG86cD48L286cD48L3ByZT4NCjxwcmU+KyAqJm5ic3A7Jm5ic3A7IGlmIG5iX2NvbnRl eHRzIGlzIDAsIHJldHVybiB0aGUgYW1vdW50IG9mIGFsbCBhZ2VkIGNvbnRleHRzLjxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPisgKiZuYnNwOyZuYnNwOyBpZiBuYl9jb250ZXh0cyBpcyBub3QgMCAs IHJldHVybiB0aGUgYW1vdW50IG9mIGFnZWQgZmxvd3MgcmVwb3J0ZWQ8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rICombmJzcDsmbmJzcDsgaW4gdGhlIGNvbnRleHQgYXJyYXksIG90aGVyd2lzZSBu ZWdhdGl2ZSBlcnJubyB2YWx1ZS48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rICo8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rICogQHNlZSBydGVfZmxvd19hY3Rpb25fYWdlPG86cD48L286cD48L3By ZT4NCjxwcmU+KyAqIEBzZWUgUlRFX0VUSF9FVkVOVF9GTE9XX0FHRUQ8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rICogQHNlZSBydGVfZmxvd19wb3J0X2ZsYWc8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rICovPG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitf X3J0ZV9leHBlcmltZW50YWw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4raW50PG86cD48L286cD48 L3ByZT4NCjxwcmU+K3J0ZV9mbG93X2dldF9xX2FnZWRfZmxvd3ModWludDE2X3QgcG9ydF9pZCwg dWludDMyX3QgcXVldWVfaWQsIHZvaWQgKipjb250ZXh0cyw8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyB1 aW50MzJfdCBuYl9jb250ZXh0cywgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7PG86cD48 L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7ICNpZmRlZiBfX2NwbHVzcGx1czxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPiZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7ICNlbmRpZjxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPmRpZmYgLS1naXQgYS9saWIvZXRoZGV2L3J0ZV9mbG93X2Ry aXZlci5oIGIvbGliL2V0aGRldi9ydGVfZmxvd19kcml2ZXIuaDxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPmluZGV4IDJiZmY3MzJkNmEuLmI2NjUxNzBiZjQgMTAwNjQ0PG86cD48L286cD48L3ByZT4N CjxwcmU+LS0tIGEvbGliL2V0aGRldi9ydGVfZmxvd19kcml2ZXIuaDxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPisrKyBiL2xpYi9ldGhkZXYvcnRlX2Zsb3dfZHJpdmVyLmg8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT5AQCAtMjYwLDYgKzI2MCwxOSBAQCBzdHJ1Y3QgcnRlX2Zsb3dfb3BzIHs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4mbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO2NvbnN0IHZvaWQgKnVwZGF0ZSw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4mbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwO3ZvaWQgKnVzZXJfZGF0YSw8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4mbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7ICZuYnNwO3N0cnVjdCBydGVfZmxvd19lcnJvciAqZXJyb3IpOzxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsgLyoqIFNlZSBydGVfZmxvd19nZXRfYWdlZF9x dWV1ZXMoKSAqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsgaW50ICgqZ2V0 X2FnZWRfcXVldWVzKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsgJm5ic3A7 Jm5ic3A7Jm5ic3A7ICh1aW50MTZfdCBwb3J0X2lkLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgIHVpbnQzMl90IHF1ZXVlX2lkW10sPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAgdWlu dDMyX3QgbmJfcXVldWVfaWQsPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAgc3RydWN0IHJ0 ZV9mbG93X2Vycm9yICplcnJvcik7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNw OyAvKiogU2VlIHJ0ZV9mbG93X2dldF9xX2FnZWRfZmxvd3MoKSAqLzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsmbmJzcDsgaW50ICgqZ2V0X3FfYWdlZF9mbG93cyk8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyAodWludDE2X3QgcG9y dF9pZCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICB1aW50MzJfdCBxdWV1ZV9pZCw8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICB2b2lkICoqY29udGV4dHMsPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyAgdWludDMyX3QgbmJfY29udGV4dHMsPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyAgc3RydWN0IHJ0ZV9mbG93X2Vycm9yICplcnJvcik7PG86cD48L286cD48L3ByZT4N CjxwcmU+Jm5ic3A7IH07PG86cD48L286cD48L3ByZT4NCjxwcmU+PG86cD4mbmJzcDs8L286cD48 L3ByZT4NCjxwcmU+Jm5ic3A7IC8qKjxvOnA+PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+DQo8 L2Jsb2NrcXVvdGU+DQo8cHJlPjxvOnA+Jm5ic3A7PC9vOnA+PC9wcmU+DQo8L2Jsb2NrcXVvdGU+ DQo8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K --_000_MW2PR12MB4666719111ADC1877DCC4021D6A29MW2PR12MB4666namp_--