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 3E0CEA0093; Sat, 10 Sep 2022 23:48:09 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DF0B84003F; Sat, 10 Sep 2022 23:48:08 +0200 (CEST) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1anam02on2084.outbound.protection.outlook.com [40.107.96.84]) by mails.dpdk.org (Postfix) with ESMTP id DAC084003C; Sat, 10 Sep 2022 23:48:07 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BeOMjPLx61fVPEwUzhRwCVcGV+B0zFP/HQDA+giwfy4MtfW6JSiDPKGviOJ+VoySCKJB58+xsvfHHlfuAGrgGxCyUg8UHhGejdJa7ZkHxNpIiJCFXXI8AsxCjZtEdzxSEIuWTxRkOdQ0vlP2vMgAJ+sLVLiyJHkDt7pofUMtwwckupynHOPMtCzsxczgrB+JFe9Kn+L+zeXphOMBajKm84n/TjdQrCv+Vfr3f/BNYeBxWuSvF00cmcIvGdx+haDdg4EpAwSHxXjnJfeif9yIVBKPBNXSHAsuYI2zuz13MN/qbU0/Hc5goX5tN/2EVZAyo0Q+tXKmosGA7igmeEdw6A== 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=ftWukQ65ZldLIM9gghCEngcpr7sTKtLIp3oJW4Va8RE=; b=nbhRTAHhtb5/+QW51btKd1ZhjVuBYiRSq0JCWLsH8qed/kj/x4jS35SetiKKXGKSW4mIvY/RbsX1d2E+/ZweOYd4X7SHLd6UMJ04Fb59vVkTaZWvp/aWq8lKPhLVARR0ZXvAXdNRhW2qzAylyDQYT1y25p2Y3PCkcQHADJBZyuTN8Vu47AKvMckWwt9wbCsc1+Bdot0ieGXDozA4rzCe6VxkcCOtUFUYAqLUP/WKWnCjA6vcmMZhgeou8K3oOrd0JBAbfMp/vPTOIGhjJ2fwo+s5760ezcb4b0w7RIDsBgeCUy87AtgYX/R6q4J1FNakp+4agaFlZ1kXtqpbXoahMg== 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=ftWukQ65ZldLIM9gghCEngcpr7sTKtLIp3oJW4Va8RE=; b=WMcYK8r2rQ9jEQKS9kxonuLRgyjIvt6W9bprQZOE7fnmWsfFrbr1x/TOhKnj7D5erluWez7cdebTUCD6XG7JHegtjJs/58Fb2LwOG64KkxIP79hi6jmjREE9JvV0bFq4Rc9uB/2v1RqnLcR2dxs0+yvPRpIuhW/7ko1mBqBZG60Y/dxdLjk8PEo9khVlpUfSEYC9Z8+avetH5pSDvXJYX+SpWZsUtYxcl3j7uvkrIROgo414YbYnVLCJMOB9ulW0a6IMM+jEEiJ0kcCO1W0EzyeZCO74Zll1j3GjDLYUVxIXytsESUgFuwDKIrPMkAeDzEiNqPvXEQVlLEAL/cL58Q== Received: from DM5PR1201MB2555.namprd12.prod.outlook.com (2603:10b6:3:ea::14) by MW5PR12MB5622.namprd12.prod.outlook.com (2603:10b6:303:198::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.15; Sat, 10 Sep 2022 21:48:05 +0000 Received: from DM5PR1201MB2555.namprd12.prod.outlook.com ([fe80::d058:557c:b970:48f4]) by DM5PR1201MB2555.namprd12.prod.outlook.com ([fe80::d058:557c:b970:48f4%8]) with mapi id 15.20.5612.022; Sat, 10 Sep 2022 21:48:05 +0000 From: Asaf Penso To: Amiya Mohakud , "NBU-Contact-Thomas Monjalon (EXTERNAL)" CC: dev , "security@dpdk.org" , Matan Azrad , "stable@dpdk.org" , Alexander Kozyrev , Slava Ovsiienko , Shahaf Shuler Subject: RE: [PATCH] net/mlx5: fix Rx queue recovery mechanism Thread-Topic: [PATCH] net/mlx5: fix Rx queue recovery mechanism Thread-Index: AQHYu7od/ZvYPkskvEyLzz7I3KcYqa3Tj2qAgAW2SFA= Date: Sat, 10 Sep 2022 21:48:05 +0000 Message-ID: References: <20220829151436.1909142-1-thomas@monjalon.net> 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: DM5PR1201MB2555:EE_|MW5PR12MB5622:EE_ x-ms-office365-filtering-correlation-id: 724b88b1-1f9d-418b-4f31-08da9376248b 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: JJWhNPkRd/WFfo9bYZKg1X+iPns2T2saWvoQCHEI9C8jfd8wBjUDrPm9RgmEWde7F9Mgvfm2n7jYPAliUxTZPHKpxb9nTYrRM/Aomefge7soaFkErZF+hzKZtXu1Xjb2IePRiNILN9fZ1XFuVL1B/p8qY248jepONw2JWSYRhiqpJ+ijHZj+HOcU9UVBSXUiAe3Ks0SVWCPVVgIlSJ4FuXGbeDSIU6BgqqxZ3nMPtY0hbYh9KlAKFvjr7rBYAoR+z3x5wabU0xeCzP72uPJbBSTxm6UXPejOPHu0hUv7coufGZ2Il263vefi2plIghprKjwOmcZhnsySoEA7AHtLDLsA64fCSQTWmnOz8Gt7tiW743cDCiHhgOPTEevYJakUL8VSkLsS6hxW/bcfpofuPTvcuGJET+B50pv6YNHhTw1DerkZjCt6ESdWSFKArVi5cBGo4aFENaRIvYv4J73cNO+4fT2GHJatCwNi1O+GMeRnRJwanwWhenIeHuA7li43s3vIwkgci584ZWpDzDMr/z1vXOV59r8uz7dQP74CdAI4iQR9/A+WEXS2xnTvK0pUjpjC7GFkaG1z1amJLmhGJ65u9bln0N5b6RrLsEbDUAJLoqbW+XT+67X0OhQYIhoekMh3SWjqm08xhsU2oT89P8Txgd9OVBZhkJgDsAeO2H/2aUEjgIzjnYSFdoh7M3B5F5r0iBITxkCvvbhQOvrBS6Ctn+uujentbbQvIIQau16BeGon5LWWbZqWws2z8ArhDDfpaP7G/tku4WXehJXXbA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM5PR1201MB2555.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(366004)(396003)(39860400002)(136003)(376002)(346002)(26005)(6506007)(107886003)(71200400001)(38070700005)(41300700001)(9686003)(122000001)(53546011)(7696005)(55016003)(83380400001)(478600001)(66946007)(66446008)(38100700002)(186003)(8676002)(64756008)(52536014)(8936002)(86362001)(66476007)(76116006)(66556008)(54906003)(4326008)(316002)(5660300002)(110136005)(33656002)(2906002)(9326002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YnRIeDRBbkl6WGoxTjFoVzdZU2xIM3QwekUyeGpuZWdGL25sazJHRWhRaVVq?= =?utf-8?B?Q1ZOUnZXVElmeHZSeHo1OEdBWFdTVWdOeThUT0cxa290ZGgxTWQ3ZTFMdk1X?= =?utf-8?B?enV3NWhhclliWjRyM2N0VWNycUlqOG85c0srYXAxWGVudXNUZnF3TElPelp4?= =?utf-8?B?Z3ZvVXdIUnpVM3M3b3dROGJXbmIrMmpXdklpdEk0ZDhITzlvc1A5RGNoNkFr?= =?utf-8?B?SlF3V0p6Qk5sNVUzWEVVMDd4UE82SWFuZ3ZFMTZvNFdwNUcweUxBWUN2VkJT?= =?utf-8?B?WGt0UmVSWC9QL3FTWjd0a0NGbEN4NlI0OXpKVkVLMVlDQVp3UVZiMXc4OWI3?= =?utf-8?B?QzA0ckI3YWY2Um4vbjBQVmZjeXl2Y0QyYzczam1tcjlmMEFPWWhMUnJROEFV?= =?utf-8?B?UFVWbWNlR2ZjNjBOOUZqaFpjdFR6QjFPRGZGcG9sbHdZN3FSeDRncWNvS013?= =?utf-8?B?MXBCZlRrTjVROTM1OHhmNlJTM1lUcDQ3RUlKdEF2UitjcEptOGk5OG1rek03?= =?utf-8?B?Mk8zZlozZnVZcmhzNXc3TFhHWDV3R25XTlNla0EzSHBpV3lhbndyeC9GTE9F?= =?utf-8?B?Z0ZkOVFlS0dKTnNNeGZRNTI5T1prdlpTWXFKaTBNVW96WVBMRlBiQk9VRXoz?= =?utf-8?B?T3hGK2M1cmJIQVptajFDRlpHQVRwZFMxaysyWFVjcHRzOUVZdElkUjhTUENS?= =?utf-8?B?K3pVTlRXaE9lbmh5UDg1dUprY2RBa2kzQU9qUngrNCtUdWFaR2pya1RRUEFm?= =?utf-8?B?UXZ1cUlLWU11TUduLy9PSHE3ZXZ0SXVxTGluamVXK1hJVG9Fa2ZwOU9XNC8x?= =?utf-8?B?Rm9pdkYrYk02b2theTV0dmVjdytWSHNFUTZ3THJNcW96Q2c5R1dsWWorS2s0?= =?utf-8?B?RWNEdDNXY2hSczJzdS8xcVhOR0RudzNxeXFPWEd4aWxxaGFyc1RHWFMzZEF6?= =?utf-8?B?Y1ZuZ0kxSEFpeDdIa2M2d3dVZ3l6VXUyaHhoWmpkZVNpVGl2b0Q5OWY5eStm?= =?utf-8?B?S3BKZ0N2K0s0VlBCZ1NnZE85NlJMSWZYNTVOUTF0bVZkcHpGaW00Z2xiWmZr?= =?utf-8?B?ZFdPbmFFbHFDZ2laeFYzV295WmdFM0FwSTZZVlV1OUNYZnQ0NDNJRnp6QlRE?= =?utf-8?B?TWZwY29nWHg5ZjhzRE9QWTg4cEp3NUdRTXJjelpBb3hKWk54WEQwckZzUGxI?= =?utf-8?B?eW1CZGVCdG50djgvS1g5VitQaStFc2wxM25rTGlhdWNmZHFidTdPSjZBL3dw?= =?utf-8?B?WlVyOHh5dHhXdE1RcWpFSFYwQXJHaVQwblN5TlJneVZuZ1gycUZieitGOE1y?= =?utf-8?B?dmd0VnJRUW9TTEdQaFQwWkdmZTdKV3d1Z0lwTUtYMkczMUpoREtYbXk1Ri9p?= =?utf-8?B?RHdQZGF1QlJSOURZRjZzTHp1QkpYSi83TTZvRStHZk9pSzNzM3hNbWQ0V1lH?= =?utf-8?B?M1EwUlNjWElkZndveE9nNnhqSmxMOWJnRG5XQ002MGc3bnBzc1RIU0R6SUM4?= =?utf-8?B?eHZoUS9OdlpBMkU3WExReno2aHBRSjYxVnJic2FKTmdnVkczN3UrZnJRaFFP?= =?utf-8?B?M0dRR2U0dVl2RE1Kd1pub2VySFpJbU1sSWtSb3ZMZUdwOGFja2FIQU5XQUlt?= =?utf-8?B?aXZYREErVC93SWNHL3ZTMWkySDYwWEwzWXZIZFQwTlZoK29iTklzeENyQlda?= =?utf-8?B?NGZYY3JBK2pTVUF5MFpIV1luWUJZVEFtamI4SzFzbFYxSCt4blpQcmVZRHRG?= =?utf-8?B?SG0zeTl1UkkveGlXOXhNVFB6ay9NWlpzbmF5WW9yNDdmblkrU3lQRUhIRjF3?= =?utf-8?B?NkQxNXdudnZmTnZGVzZWMFZmTGJRMG5xd0NIcVprQlB1WGExY1FpNFVLWjBX?= =?utf-8?B?bStRSzQzSGoxeGh6ejJiMHJyb3JZMVU5b1gyOFZhT0pGU1RWQTFWYVJ4U0dD?= =?utf-8?B?ZnJQeVpNa2wxcVBTOTNZZWEvbjdHNlFOb25JUFkwY0ZKdEZNeGhDTGVaMmtL?= =?utf-8?B?NG1mUEpXKzFOWThraTYvV21WdUdpaUIyd05BU3dzMGYyQkIzZ2lxblBKSVVp?= =?utf-8?B?WkI2OTdURFBHWGdUSWhMMTMrZjFzN2V2ZUpscENxcGJvMGF0cXZEeVVmQVBB?= =?utf-8?Q?OcqA=3D?= Content-Type: multipart/alternative; boundary="_000_DM5PR1201MB2555A6873379EE12DAB3BC61CD429DM5PR1201MB2555_" MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM5PR1201MB2555.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 724b88b1-1f9d-418b-4f31-08da9376248b X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Sep 2022 21:48:05.4567 (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: rpyjxp+ryN8/zbcQHYd2ylNIGNnn5Nn3JvjFhZTolNMg/NmYmP6FD2BrI2cPc50A1ScQ4pFZMLuX/AWSZemf/g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR12MB5622 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_DM5PR1201MB2555A6873379EE12DAB3BC61CD429DM5PR1201MB2555_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGVsbG8gQW1peWEsDQoNClRoaXMgZml4IGlzIGZvciBhbiBpc3N1ZSB3aXRoIHRoZSBlcnJvciBy ZWNvdmVyeSBtZWNoYW5pc20uDQoNCkkgYXNzdW1lIHRoZSB1c2UgY2FzZSB5b3XigJlyZSByZWZl cnJpbmcgdG8gaXMgd29ya2luZyB3aXRoIHJ4X3ZlYyBidXJzdCArIGNxZSB6aXBwaW5nIGVuYWJs ZWQgKyBlcnJvciByZWNvdmVyeS4NCklmIHRoYXTigJlzIHRoZSBjYXNlLCB3ZSBtZW50aW9uZWQg aW4gb3VyIG1seDUucnN0IHRoYXQgdGhlIHJlY292ZXJ5IGlzIG5vdCBzdXBwb3J0ZWQuDQpTaW5j ZSB0aGVyZSBpcyBubyB3YXkgdG8gZGlzY2FibGUgdGhlIHJlY292ZXJ5IGluIG91ciBQTUQsIHdl IHN1Z2dlc3RlZCB0byBkaXNhYmxlIGNxZSB6aXBwaW5nLg0KDQpIb3dldmVyLCB0aGVzZSBkYXlz LCB3ZSBhcmUgd29ya2luZyBvbiBhIHBhdGNoIHRvIGFsbG93IHRoZSBhYm92ZSBjb21iaW5hdGlv bi4NCkl0IHNob3VsZCBiZSBzZW50IHRvIHRoZSBNTCBpbiBhIHdlZWsgb3IgdHdvLCBvbmNlIHdl IGZ1bGx5IGZpbmlzaCB0ZXN0aW5nIGl0Lg0KDQpSZWdhcmRzLA0KQXNhZiBQZW5zbw0KDQpGcm9t OiBBbWl5YSBNb2hha3VkIDxhbW9oYWt1ZEBwYWxvYWx0b25ldHdvcmtzLmNvbT4NClNlbnQ6IFdl ZG5lc2RheSwgU2VwdGVtYmVyIDcsIDIwMjIgOTozMSBBTQ0KVG86IE5CVS1Db250YWN0LVRob21h cyBNb25qYWxvbiAoRVhURVJOQUwpIDx0aG9tYXNAbW9uamFsb24ubmV0Pg0KQ2M6IGRldiA8ZGV2 QGRwZGsub3JnPjsgc2VjdXJpdHlAZHBkay5vcmc7IE1hdGFuIEF6cmFkIDxtYXRhbkBudmlkaWEu Y29tPjsgc3RhYmxlQGRwZGsub3JnOyBBbGV4YW5kZXIgS296eXJldiA8YWtvenlyZXZAbnZpZGlh LmNvbT47IFNsYXZhIE92c2lpZW5rbyA8dmlhY2hlc2xhdm9AbnZpZGlhLmNvbT47IFNoYWhhZiBT aHVsZXIgPHNoYWhhZnNAbnZpZGlhLmNvbT4NClN1YmplY3Q6IFJlOiBbUEFUQ0hdIG5ldC9tbHg1 OiBmaXggUnggcXVldWUgcmVjb3ZlcnkgbWVjaGFuaXNtDQoNCkhpIEFsbCwNCg0KSSB3b3VsZCBu ZWVkIHNvbWUgY29uZmlybWF0aW9uIG9uIHRoaXMgcGF0Y2guDQpGb3Igc29tZSBlYXJsaWVyIGlz c3VlcyBlbmNvdW50ZXJlZCBvbiBtbHg1LCB3ZSBoYXZlIGRpc2FibGUgY3FlX2NvbXAgaW4gdGhl IG1seDUgZHJpdmVyLiBJbiB0aGF0IGNhc2UsIGRvIHdlIHN0aWxsIG5lZWQgdGhpcyBmaXggb3Ig ZGlzYWJsaW5nIGNxZV9jb21wIHdpbGwgdGFrZSBjYXJlIG9mIGl0IGFzIHdlbGw/DQoNClJlZ2Fy ZHMNCkFtaXlhDQoNCk9uIE1vbiwgQXVnIDI5LCAyMDIyIGF0IDg6NDUgUE0gVGhvbWFzIE1vbmph bG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PG1haWx0bzp0aG9tYXNAbW9uamFsb24ubmV0Pj4gd3Jv dGU6DQpGcm9tOiBNYXRhbiBBenJhZCA8bWF0YW5AbnZpZGlhLmNvbTxtYWlsdG86bWF0YW5AbnZp ZGlhLmNvbT4+DQoNClRoZSBsb2NhbCB2YXJpYWJsZXMgYXJlIGdldHRpbmcgaW5jb25zaXN0ZW50 IGluIGRhdGEgcmVjZWl2aW5nIHJvdXRpbmVzDQphZnRlciBxdWV1ZSBlcnJvciByZWNvdmVyeS4N ClJlY2VpdmUgcXVldWUgY29uc3VtZXIgaW5kZXggaXMgZ2V0dGluZyB3cm9uZywgbmVlZCB0byBy ZXNldCBvbmUgdG8gdGhlDQpzaXplIG9mIHRoZSBxdWV1ZSAoYXMgUlEgd2FzIGZ1bGx5IHJlcGxl bmlzaGVkIGluIHJlY292ZXJ5IHByb2NlZHVyZSkuDQoNCkluIE1QUlEgY2FzZSwgYWxzbyB0aGUg bG9jYWwgY29uc3VtZWQgc3RyZCB2YXJpYWJsZSBzaG91bGQgYmUgcmVzZXQuDQoNCkNWRS0yMDIy LTI4MTk5DQpGaXhlczogODhjMDczMzUzNWQ2ICgibmV0L21seDU6IGV4dGVuZCBSeCBjb21wbGV0 aW9uIHdpdGggZXJyb3IgaGFuZGxpbmciKQ0KQ2M6IHN0YWJsZUBkcGRrLm9yZzxtYWlsdG86c3Rh YmxlQGRwZGsub3JnPg0KDQpTaWduZWQtb2ZmLWJ5OiBBbGV4YW5kZXIgS296eXJldiA8YWtvenly ZXZAbnZpZGlhLmNvbTxtYWlsdG86YWtvenlyZXZAbnZpZGlhLmNvbT4+DQpTaWduZWQtb2ZmLWJ5 OiBNYXRhbiBBenJhZCA8bWF0YW5AbnZpZGlhLmNvbTxtYWlsdG86bWF0YW5AbnZpZGlhLmNvbT4+ DQotLS0NCg0KQWxyZWFkeSBhcHBsaWVkIGluIG1haW4gYnJhbmNoIGFzIHBhcnQgb2YgdGhlIHB1 YmxpYyBkaXNjbG9zdXJlIHByb2Nlc3MuDQoNCi0tLQ0KIGRyaXZlcnMvbmV0L21seDUvbWx4NV9y eC5jIHwgMzQgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQ0KIDEgZmlsZSBjaGFu Z2VkLCAyNCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L21seDUvbWx4NV9yeC5jIGIvZHJpdmVycy9uZXQvbWx4NS9tbHg1X3J4LmMNCmlu ZGV4IGJiM2NjYzM2ZTUuLjkxN2M1MTdiODMgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9tbHg1 L21seDVfcnguYw0KKysrIGIvZHJpdmVycy9uZXQvbWx4NS9tbHg1X3J4LmMNCkBAIC00MDgsNiAr NDA4LDExIEBAIG1seDVfcnhxX2luaXRpYWxpemUoc3RydWN0IG1seDVfcnhxX2RhdGEgKnJ4cSkN CiAgICAgICAgKnJ4cS0+cnFfZGIgPSBydGVfY3B1X3RvX2JlXzMyKHJ4cS0+cnFfY2kpOw0KIH0N Cg0KKy8qIE11c3QgYmUgbmVnYXRpdmUuICovDQorI2RlZmluZSBNTFg1X0VSUk9SX0NRRV9SRVQg KC0xKQ0KKy8qIE11c3Qgbm90IGJlIG5lZ2F0aXZlLiAqLw0KKyNkZWZpbmUgTUxYNV9SRUNPVkVS WV9FUlJPUl9SRVQgMA0KKw0KIC8qKg0KICAqIEhhbmRsZSBhIFJ4IGVycm9yLg0KICAqIFRoZSBm dW5jdGlvbiBpbnNlcnRzIHRoZSBSUSBzdGF0ZSB0byByZXNldCB3aGVuIHRoZSBmaXJzdCBlcnJv ciBDUUUgaXMNCkBAIC00MjIsNyArNDI3LDcgQEAgbWx4NV9yeHFfaW5pdGlhbGl6ZShzdHJ1Y3Qg bWx4NV9yeHFfZGF0YSAqcnhxKQ0KICAqICAgMCB3aGVuIGNhbGxlZCBmcm9tIG5vbi12ZWN0b3Jp emVkIFJ4IGJ1cnN0Lg0KICAqDQogICogQHJldHVybg0KLSAqICAgLTEgaW4gY2FzZSBvZiByZWNv dmVyeSBlcnJvciwgb3RoZXJ3aXNlIHRoZSBDUUUgc3RhdHVzLg0KKyAqICAgTUxYNV9SRUNPVkVS WV9FUlJPUl9SRVQgaW4gY2FzZSBvZiByZWNvdmVyeSBlcnJvciwgb3RoZXJ3aXNlIHRoZSBDUUUg c3RhdHVzLg0KICAqLw0KIGludA0KIG1seDVfcnhfZXJyX2hhbmRsZShzdHJ1Y3QgbWx4NV9yeHFf ZGF0YSAqcnhxLCB1aW50OF90IHZlYykNCkBAIC00NTEsNyArNDU2LDcgQEAgbWx4NV9yeF9lcnJf aGFuZGxlKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsIHVpbnQ4X3QgdmVjKQ0KICAgICAgICAg ICAgICAgIHNtLnF1ZXVlX2lkID0gcnhxLT5pZHg7DQogICAgICAgICAgICAgICAgc20uc3RhdGUg PSBJQlZfV1FTX1JFU0VUOw0KICAgICAgICAgICAgICAgIGlmIChtbHg1X3F1ZXVlX3N0YXRlX21v ZGlmeShSWFFfREVWKHJ4cV9jdHJsKSwgJnNtKSkNCi0gICAgICAgICAgICAgICAgICAgICAgIHJl dHVybiAtMTsNCisgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBNTFg1X1JFQ09WRVJZX0VS Uk9SX1JFVDsNCiAgICAgICAgICAgICAgICBpZiAocnhxX2N0cmwtPmR1bXBfZmlsZV9uIDwNCiAg ICAgICAgICAgICAgICAgICAgUlhRX1BPUlQocnhxX2N0cmwpLT5jb25maWcubWF4X2R1bXBfZmls ZXNfbnVtKSB7DQogICAgICAgICAgICAgICAgICAgICAgICBNS1NUUihlcnJfc3RyLCAiVW5leHBl Y3RlZCBDUUUgZXJyb3Igc3luZHJvbWUgIg0KQEAgLTQ5MSw3ICs0OTYsNyBAQCBtbHg1X3J4X2Vy cl9oYW5kbGUoc3RydWN0IG1seDVfcnhxX2RhdGEgKnJ4cSwgdWludDhfdCB2ZWMpDQogICAgICAg ICAgICAgICAgICAgICAgICBzbS5xdWV1ZV9pZCA9IHJ4cS0+aWR4Ow0KICAgICAgICAgICAgICAg ICAgICAgICAgc20uc3RhdGUgPSBJQlZfV1FTX1JEWTsNCiAgICAgICAgICAgICAgICAgICAgICAg IGlmIChtbHg1X3F1ZXVlX3N0YXRlX21vZGlmeShSWFFfREVWKHJ4cV9jdHJsKSwgJnNtKSkNCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOw0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICByZXR1cm4gTUxYNV9SRUNPVkVSWV9FUlJPUl9SRVQ7DQogICAgICAg ICAgICAgICAgICAgICAgICBpZiAodmVjKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHVpbnQzMl90IGVsdHNfbiA9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbWx4NV9yeHFfbXBycV9lbmFibGVkKHJ4cSkgPw0KQEAgLTUxOSw3ICs1MjQs NyBAQCBtbHg1X3J4X2Vycl9oYW5kbGUoc3RydWN0IG1seDVfcnhxX2RhdGEgKnJ4cSwgdWludDhf dCB2ZWMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHJ0ZV9wa3RtYnVmX2ZyZWVfc2VnDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCplbHQpOw0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOw0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE1MWDVfUkVDT1ZFUllfRVJS T1JfUkVUOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmb3IgKGkgPSAwOyBpIDwgKGludCllbHRzX247ICsraSkgew0KQEAgLTUzOCw3ICs1NDMs NyBAQCBtbHg1X3J4X2Vycl9oYW5kbGUoc3RydWN0IG1seDVfcnhxX2RhdGEgKnJ4cSwgdWludDhf dCB2ZWMpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIHJldHVybiByZXQ7DQog ICAgICAgIGRlZmF1bHQ6DQotICAgICAgICAgICAgICAgcmV0dXJuIC0xOw0KKyAgICAgICAgICAg ICAgIHJldHVybiBNTFg1X1JFQ09WRVJZX0VSUk9SX1JFVDsNCiAgICAgICAgfQ0KIH0NCg0KQEAg LTU1Niw3ICs1NjEsOSBAQCBtbHg1X3J4X2Vycl9oYW5kbGUoc3RydWN0IG1seDVfcnhxX2RhdGEg KnJ4cSwgdWludDhfdCB2ZWMpDQogICogICB3cml0dGVuLg0KICAqDQogICogQHJldHVybg0KLSAq ICAgMCBpbiBjYXNlIG9mIGVtcHR5IENRRSwgb3RoZXJ3aXNlIHRoZSBwYWNrZXQgc2l6ZSBpbiBi eXRlcy4NCisgKiAgIDAgaW4gY2FzZSBvZiBlbXB0eSBDUUUsIE1MWDVfRVJST1JfQ1FFX1JFVCBp biBjYXNlIG9mIGVycm9yIENRRSwNCisgKiAgIG90aGVyd2lzZSB0aGUgcGFja2V0IHNpemUgaW4g cmVndWxhciBSeFEsIGFuZCBzdHJpZGluZyBieXRlDQorICogICBjb3VudCBmb3JtYXQgaW4gbXBy cSBjYXNlLg0KICAqLw0KIHN0YXRpYyBpbmxpbmUgaW50DQogbWx4NV9yeF9wb2xsX2xlbihzdHJ1 Y3QgbWx4NV9yeHFfZGF0YSAqcnhxLCB2b2xhdGlsZSBzdHJ1Y3QgbWx4NV9jcWUgKmNxZSwNCkBA IC02MjMsOCArNjMwLDggQEAgbWx4NV9yeF9wb2xsX2xlbihzdHJ1Y3QgbWx4NV9yeHFfZGF0YSAq cnhxLCB2b2xhdGlsZSBzdHJ1Y3QgbWx4NV9jcWUgKmNxZSwNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJ4cS0+ZXJyX3N0YXRlKSkgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldCA9IG1seDVfcnhfZXJyX2hhbmRsZShyeHEs IDApOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXQgPT0g TUxYNV9DUUVfU1RBVFVTX0hXX09XTiB8fA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICByZXQgPT0gLTEpDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICByZXR1cm4gMDsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcmV0ID09IE1MWDVfUkVDT1ZFUllfRVJST1JfUkVUKQ0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE1MWDVfRVJST1Jf Q1FFX1JFVDsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KQEAgLTg2OSw4ICs4NzYsMTAgQEAgbWx4NV9yeF9idXJz dCh2b2lkICpkcGRrX3J4cSwgc3RydWN0IHJ0ZV9tYnVmICoqcGt0cywgdWludDE2X3QgcGt0c19u KQ0KICAgICAgICAgICAgICAgIGlmICghcGt0KSB7DQogICAgICAgICAgICAgICAgICAgICAgICBj cWUgPSAmKCpyeHEtPmNxZXMpW3J4cS0+Y3FfY2kgJiBjcWVfY250XTsNCiAgICAgICAgICAgICAg ICAgICAgICAgIGxlbiA9IG1seDVfcnhfcG9sbF9sZW4ocnhxLCBjcWUsIGNxZV9jbnQsICZtY3Fl KTsNCi0gICAgICAgICAgICAgICAgICAgICAgIGlmICghbGVuKSB7DQorICAgICAgICAgICAgICAg ICAgICAgICBpZiAobGVuIDw9IDApIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cnRlX21idWZfcmF3X2ZyZWUocmVwKTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg aWYgKHVubGlrZWx5KGxlbiA9PSBNTFg1X0VSUk9SX0NRRV9SRVQpKQ0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJxX2NpID0gcnhxLT5ycV9jaSA8PCBzZ2VzX247DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgcGt0ID0gc2VnOw0KQEAgLTEwOTMsOCAr MTEwMiwxMyBAQCBtbHg1X3J4X2J1cnN0X21wcnEodm9pZCAqZHBka19yeHEsIHN0cnVjdCBydGVf bWJ1ZiAqKnBrdHMsIHVpbnQxNl90IHBrdHNfbikNCiAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgY3FlID0gJigqcnhxLT5jcWVzKVtyeHEtPmNxX2NpICYgY3FfbWFza107DQogICAg ICAgICAgICAgICAgcmV0ID0gbWx4NV9yeF9wb2xsX2xlbihyeHEsIGNxZSwgY3FfbWFzaywgJm1j cWUpOw0KLSAgICAgICAgICAgICAgIGlmICghcmV0KQ0KKyAgICAgICAgICAgICAgIGlmIChyZXQg PT0gMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KKyAgICAgICAgICAgICAgIGlm ICh1bmxpa2VseShyZXQgPT0gTUxYNV9FUlJPUl9DUUVfUkVUKSkgew0KKyAgICAgICAgICAgICAg ICAgICAgICAgcnFfY2kgPSByeHEtPnJxX2NpOw0KKyAgICAgICAgICAgICAgICAgICAgICAgY29u c3VtZWRfc3RyZCA9IHJ4cS0+Y29uc3VtZWRfc3RyZDsNCisgICAgICAgICAgICAgICAgICAgICAg IGJyZWFrOw0KKyAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBieXRlX2NudCA9IHJl dDsNCiAgICAgICAgICAgICAgICBsZW4gPSAoYnl0ZV9jbnQgJiBNTFg1X01QUlFfTEVOX01BU0sp ID4+IE1MWDVfTVBSUV9MRU5fU0hJRlQ7DQogICAgICAgICAgICAgICAgTUxYNV9BU1NFUlQoKGlu dClsZW4gPj0gKHJ4cS0+Y3JjX3ByZXNlbnQgPDwgMikpOw0KLS0NCjIuMzYuMQ0K --_000_DM5PR1201MB2555A6873379EE12DAB3BC61CD429DM5PR1201MB2555_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1m YWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIgMiAyIDQgMyAy IDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpWZXJkYW5hOw0KCXBhbm9zZS0xOjIgMTEg NiA0IDMgNSA0IDQgMiA0O30NCi8qIFN0eWxlIERlZmluaXRpb25zICovDQpwLk1zb05vcm1hbCwg bGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjowaW47DQoJZm9udC1zaXplOjEx LjBwdDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjt9DQphOmxpbmssIHNwYW4u TXNvSHlwZXJsaW5rDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgljb2xvcjpibHVlOw0KCXRl eHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0Kc3Bhbi5FbWFpbFN0eWxlMTgNCgl7bXNvLXN0eWxl LXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7 DQoJY29sb3I6d2luZG93dGV4dDt9DQouTXNvQ2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpl eHBvcnQtb25seTsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjt9DQpAcGFnZSBX b3JkU2VjdGlvbjENCgl7c2l6ZTo4LjVpbiAxMS4waW47DQoJbWFyZ2luOjEuMGluIDEuMGluIDEu MGluIDEuMGluO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLS0+ PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9 ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBt c28gOV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0 PSJlZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNoYXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0K PC9oZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMiIGxpbms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiIHN0 eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZCI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0K PHAgY2xhc3M9Ik1zb05vcm1hbCI+SGVsbG8gQW1peWEsPG86cD48L286cD48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi PlRoaXMgZml4IGlzIGZvciBhbiBpc3N1ZSB3aXRoIHRoZSBlcnJvciByZWNvdmVyeSBtZWNoYW5p c20uPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpw PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkkgYXNzdW1lIHRoZSB1c2UgY2FzZSB5b3XigJly ZSByZWZlcnJpbmcgdG8gaXMgd29ya2luZyB3aXRoIHJ4X3ZlYyBidXJzdCArIGNxZSB6aXBwaW5n IGVuYWJsZWQgKyBlcnJvciByZWNvdmVyeS48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29O b3JtYWwiPklmIHRoYXTigJlzIHRoZSBjYXNlLCB3ZSBtZW50aW9uZWQgaW4gb3VyIG1seDUucnN0 IHRoYXQgdGhlIHJlY292ZXJ5IGlzIG5vdCBzdXBwb3J0ZWQuPG86cD48L286cD48L3A+DQo8cCBj bGFzcz0iTXNvTm9ybWFsIj5TaW5jZSB0aGVyZSBpcyBubyB3YXkgdG8gZGlzY2FibGUgdGhlIHJl Y292ZXJ5IGluIG91ciBQTUQsIHdlIHN1Z2dlc3RlZCB0byBkaXNhYmxlIGNxZSB6aXBwaW5nLjxv OnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+ DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5Ib3dldmVyLCB0aGVzZSBkYXlzLCB3ZSBhcmUgd29ya2lu ZyBvbiBhIHBhdGNoIHRvIGFsbG93IHRoZSBhYm92ZSBjb21iaW5hdGlvbi48bzpwPjwvbzpwPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkl0IHNob3VsZCBiZSBzZW50IHRvIHRoZSBNTCBpbiBh IHdlZWsgb3IgdHdvLCBvbmNlIHdlIGZ1bGx5IGZpbmlzaCB0ZXN0aW5nIGl0LjxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj5SZWdhcmRzLDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h bCI+QXNhZiBQZW5zbzxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4m bmJzcDs8L286cD48L3A+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xp ZCBibHVlIDEuNXB0O3BhZGRpbmc6MGluIDBpbiAwaW4gNC4wcHQiPg0KPGRpdj4NCjxkaXYgc3R5 bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMu MHB0IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPkZyb206PC9iPiBBbWl5 YSBNb2hha3VkICZsdDthbW9oYWt1ZEBwYWxvYWx0b25ldHdvcmtzLmNvbSZndDsgPGJyPg0KPGI+ U2VudDo8L2I+IFdlZG5lc2RheSwgU2VwdGVtYmVyIDcsIDIwMjIgOTozMSBBTTxicj4NCjxiPlRv OjwvYj4gTkJVLUNvbnRhY3QtVGhvbWFzIE1vbmphbG9uIChFWFRFUk5BTCkgJmx0O3Rob21hc0Bt b25qYWxvbi5uZXQmZ3Q7PGJyPg0KPGI+Q2M6PC9iPiBkZXYgJmx0O2RldkBkcGRrLm9yZyZndDs7 IHNlY3VyaXR5QGRwZGsub3JnOyBNYXRhbiBBenJhZCAmbHQ7bWF0YW5AbnZpZGlhLmNvbSZndDs7 IHN0YWJsZUBkcGRrLm9yZzsgQWxleGFuZGVyIEtvenlyZXYgJmx0O2Frb3p5cmV2QG52aWRpYS5j b20mZ3Q7OyBTbGF2YSBPdnNpaWVua28gJmx0O3ZpYWNoZXNsYXZvQG52aWRpYS5jb20mZ3Q7OyBT aGFoYWYgU2h1bGVyICZsdDtzaGFoYWZzQG52aWRpYS5jb20mZ3Q7PGJyPg0KPGI+U3ViamVjdDo8 L2I+IFJlOiBbUEFUQ0hdIG5ldC9tbHg1OiBmaXggUnggcXVldWUgcmVjb3ZlcnkgbWVjaGFuaXNt PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86 cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz cGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LHNhbnMtc2VyaWYiPkhp IEFsbCw8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90OyxzYW5z LXNlcmlmIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBj bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZx dW90OyxzYW5zLXNlcmlmIj5JIHdvdWxkIG5lZWQgc29tZSBjb25maXJtYXRpb24gb24gdGhpcyBw YXRjaC4mbmJzcDs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7VmVyZGFuYSZxdW90 OyxzYW5zLXNlcmlmIj5Gb3Igc29tZSBlYXJsaWVyIGlzc3VlcyBlbmNvdW50ZXJlZCBvbiBtbHg1 LCB3ZSBoYXZlIGRpc2FibGUgY3FlX2NvbXAgaW4gdGhlIG1seDUgZHJpdmVyLiBJbiB0aGF0IGNh c2UsIGRvIHdlIHN0aWxsIG5lZWQgdGhpcyBmaXggb3IgZGlzYWJsaW5nIGNxZV9jb21wIHdpbGwg dGFrZSBjYXJlIG9mIGl0IGFzIHdlbGw/PG86cD48L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8 ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90 O1ZlcmRhbmEmcXVvdDssc2Fucy1zZXJpZiI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0K PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFt aWx5OiZxdW90O1ZlcmRhbmEmcXVvdDssc2Fucy1zZXJpZiI+UmVnYXJkczxvOnA+PC9vOnA+PC9z cGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxl PSJmb250LWZhbWlseTomcXVvdDtWZXJkYW5hJnF1b3Q7LHNhbnMtc2VyaWYiPkFtaXlhPG86cD48 L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxv OnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5P biBNb24sIEF1ZyAyOSwgMjAyMiBhdCA4OjQ1IFBNIFRob21hcyBNb25qYWxvbiAmbHQ7PGEgaHJl Zj0ibWFpbHRvOnRob21hc0Btb25qYWxvbi5uZXQiPnRob21hc0Btb25qYWxvbi5uZXQ8L2E+Jmd0 OyB3cm90ZTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGJsb2NrcXVvdGUgc3R5bGU9ImJvcmRl cjpub25lO2JvcmRlci1sZWZ0OnNvbGlkICNDQ0NDQ0MgMS4wcHQ7cGFkZGluZzowaW4gMGluIDBp biA2LjBwdDttYXJnaW4tbGVmdDo0LjhwdDttYXJnaW4tcmlnaHQ6MGluIj4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+RnJvbTogTWF0YW4gQXpyYWQg Jmx0OzxhIGhyZWY9Im1haWx0bzptYXRhbkBudmlkaWEuY29tIiB0YXJnZXQ9Il9ibGFuayI+bWF0 YW5AbnZpZGlhLmNvbTwvYT4mZ3Q7PGJyPg0KPGJyPg0KVGhlIGxvY2FsIHZhcmlhYmxlcyBhcmUg Z2V0dGluZyBpbmNvbnNpc3RlbnQgaW4gZGF0YSByZWNlaXZpbmcgcm91dGluZXM8YnI+DQphZnRl ciBxdWV1ZSBlcnJvciByZWNvdmVyeS48YnI+DQpSZWNlaXZlIHF1ZXVlIGNvbnN1bWVyIGluZGV4 IGlzIGdldHRpbmcgd3JvbmcsIG5lZWQgdG8gcmVzZXQgb25lIHRvIHRoZTxicj4NCnNpemUgb2Yg dGhlIHF1ZXVlIChhcyBSUSB3YXMgZnVsbHkgcmVwbGVuaXNoZWQgaW4gcmVjb3ZlcnkgcHJvY2Vk dXJlKS48YnI+DQo8YnI+DQpJbiBNUFJRIGNhc2UsIGFsc28gdGhlIGxvY2FsIGNvbnN1bWVkIHN0 cmQgdmFyaWFibGUgc2hvdWxkIGJlIHJlc2V0Ljxicj4NCjxicj4NCkNWRS0yMDIyLTI4MTk5PGJy Pg0KRml4ZXM6IDg4YzA3MzM1MzVkNiAoJnF1b3Q7bmV0L21seDU6IGV4dGVuZCBSeCBjb21wbGV0 aW9uIHdpdGggZXJyb3IgaGFuZGxpbmcmcXVvdDspPGJyPg0KQ2M6IDxhIGhyZWY9Im1haWx0bzpz dGFibGVAZHBkay5vcmciIHRhcmdldD0iX2JsYW5rIj5zdGFibGVAZHBkay5vcmc8L2E+PGJyPg0K PGJyPg0KU2lnbmVkLW9mZi1ieTogQWxleGFuZGVyIEtvenlyZXYgJmx0OzxhIGhyZWY9Im1haWx0 bzpha296eXJldkBudmlkaWEuY29tIiB0YXJnZXQ9Il9ibGFuayI+YWtvenlyZXZAbnZpZGlhLmNv bTwvYT4mZ3Q7PGJyPg0KU2lnbmVkLW9mZi1ieTogTWF0YW4gQXpyYWQgJmx0OzxhIGhyZWY9Im1h aWx0bzptYXRhbkBudmlkaWEuY29tIiB0YXJnZXQ9Il9ibGFuayI+bWF0YW5AbnZpZGlhLmNvbTwv YT4mZ3Q7PGJyPg0KLS0tPGJyPg0KPGJyPg0KQWxyZWFkeSBhcHBsaWVkIGluIG1haW4gYnJhbmNo IGFzIHBhcnQgb2YgdGhlIHB1YmxpYyBkaXNjbG9zdXJlIHByb2Nlc3MuPGJyPg0KPGJyPg0KLS0t PGJyPg0KJm5ic3A7ZHJpdmVycy9uZXQvbWx4NS9tbHg1X3J4LmMgfCAzNCArKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tPGJyPg0KJm5ic3A7MSBmaWxlIGNoYW5nZWQsIDI0IGluc2Vy dGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKTxicj4NCjxicj4NCmRpZmYgLS1naXQgYS9kcml2ZXJz L25ldC9tbHg1L21seDVfcnguYyBiL2RyaXZlcnMvbmV0L21seDUvbWx4NV9yeC5jPGJyPg0KaW5k ZXggYmIzY2NjMzZlNS4uOTE3YzUxN2I4MyAxMDA2NDQ8YnI+DQotLS0gYS9kcml2ZXJzL25ldC9t bHg1L21seDVfcnguYzxicj4NCisrKyBiL2RyaXZlcnMvbmV0L21seDUvbWx4NV9yeC5jPGJyPg0K QEAgLTQwOCw2ICs0MDgsMTEgQEAgbWx4NV9yeHFfaW5pdGlhbGl6ZShzdHJ1Y3QgbWx4NV9yeHFf ZGF0YSAqcnhxKTxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAqcnhxLSZndDtycV9k YiA9IHJ0ZV9jcHVfdG9fYmVfMzIocnhxLSZndDtycV9jaSk7PGJyPg0KJm5ic3A7fTxicj4NCjxi cj4NCisvKiBNdXN0IGJlIG5lZ2F0aXZlLiAqLzxicj4NCisjZGVmaW5lIE1MWDVfRVJST1JfQ1FF X1JFVCAoLTEpPGJyPg0KKy8qIE11c3Qgbm90IGJlIG5lZ2F0aXZlLiAqLzxicj4NCisjZGVmaW5l IE1MWDVfUkVDT1ZFUllfRVJST1JfUkVUIDA8YnI+DQorPGJyPg0KJm5ic3A7LyoqPGJyPg0KJm5i c3A7ICogSGFuZGxlIGEgUnggZXJyb3IuPGJyPg0KJm5ic3A7ICogVGhlIGZ1bmN0aW9uIGluc2Vy dHMgdGhlIFJRIHN0YXRlIHRvIHJlc2V0IHdoZW4gdGhlIGZpcnN0IGVycm9yIENRRSBpczxicj4N CkBAIC00MjIsNyArNDI3LDcgQEAgbWx4NV9yeHFfaW5pdGlhbGl6ZShzdHJ1Y3QgbWx4NV9yeHFf ZGF0YSAqcnhxKTxicj4NCiZuYnNwOyAqJm5ic3A7ICZuYnNwOzAgd2hlbiBjYWxsZWQgZnJvbSBu b24tdmVjdG9yaXplZCBSeCBidXJzdC48YnI+DQombmJzcDsgKjxicj4NCiZuYnNwOyAqIEByZXR1 cm48YnI+DQotICombmJzcDsgJm5ic3A7LTEgaW4gY2FzZSBvZiByZWNvdmVyeSBlcnJvciwgb3Ro ZXJ3aXNlIHRoZSBDUUUgc3RhdHVzLjxicj4NCisgKiZuYnNwOyAmbmJzcDtNTFg1X1JFQ09WRVJZ X0VSUk9SX1JFVCBpbiBjYXNlIG9mIHJlY292ZXJ5IGVycm9yLCBvdGhlcndpc2UgdGhlIENRRSBz dGF0dXMuPGJyPg0KJm5ic3A7ICovPGJyPg0KJm5ic3A7aW50PGJyPg0KJm5ic3A7bWx4NV9yeF9l cnJfaGFuZGxlKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsIHVpbnQ4X3QgdmVjKTxicj4NCkBA IC00NTEsNyArNDU2LDcgQEAgbWx4NV9yeF9lcnJfaGFuZGxlKHN0cnVjdCBtbHg1X3J4cV9kYXRh ICpyeHEsIHVpbnQ4X3QgdmVjKTxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgc20ucXVldWVfaWQgPSByeHEtJmd0O2lkeDs8YnI+DQom bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHNt LnN0YXRlID0gSUJWX1dRU19SRVNFVDs8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGlmIChtbHg1X3F1ZXVlX3N0YXRlX21vZGlmeShS WFFfREVWKHJ4cV9jdHJsKSwgJmFtcDtzbSkpPGJyPg0KLSZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7cmV0dXJuIC0xOzxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3JldHVybiBNTFg1 X1JFQ09WRVJZX0VSUk9SX1JFVDs8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGlmIChyeHFfY3RybC0mZ3Q7ZHVtcF9maWxlX24gJmx0 Ozxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyBSWFFfUE9SVChyeHFfY3RybCktJmd0O2NvbmZpZy5tYXhfZHVt cF9maWxlc19udW0pIHs8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBNS1NUUihlcnJf c3RyLCAmcXVvdDtVbmV4cGVjdGVkIENRRSBlcnJvciBzeW5kcm9tZSAmcXVvdDs8YnI+DQpAQCAt NDkxLDcgKzQ5Niw3IEBAIG1seDVfcnhfZXJyX2hhbmRsZShzdHJ1Y3QgbWx4NV9yeHFfZGF0YSAq cnhxLCB1aW50OF90IHZlYyk8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBzbS5xdWV1 ZV9pZCA9IHJ4cS0mZ3Q7aWR4Ozxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHNtLnN0 YXRlID0gSUJWX1dRU19SRFk7PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgaWYgKG1s eDVfcXVldWVfc3RhdGVfbW9kaWZ5KFJYUV9ERVYocnhxX2N0cmwpLCAmYW1wO3NtKSk8YnI+DQot Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7cmV0 dXJuIC0xOzxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDtyZXR1cm4gTUxYNV9SRUNPVkVSWV9FUlJPUl9SRVQ7PGJyPg0KJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgaWYgKHZlYykgezxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjb25zdCB1aW50MzJfdCBlbHRzX24gPTxi cj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgbWx4NV9yeHFfbXBycV9lbmFibGVkKHJ4cSkg Pzxicj4NCkBAIC01MTksNyArNTI0LDcgQEAgbWx4NV9yeF9lcnJfaGFuZGxlKHN0cnVjdCBtbHg1 X3J4cV9kYXRhICpyeHEsIHVpbnQ4X3QgdmVjKTxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBydGVfcGt0bWJ1Zl9mcmVlX3NlZzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgKCplbHQpOzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IH08YnI+DQotJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtyZXR1cm4gLTE7PGJyPg0KKyZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7cmV0dXJu IE1MWDVfUkVDT1ZFUllfRVJST1JfUkVUOzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg fTxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyB9PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7IGZvciAoaSA9IDA7IGkgJmx0OyAoaW50KWVsdHNfbjsgKytpKSB7PGJyPg0KQEAg LTUzOCw3ICs1NDMsNyBAQCBtbHg1X3J4X2Vycl9oYW5kbGUoc3RydWN0IG1seDVfcnhxX2RhdGEg KnJ4cSwgdWludDhfdCB2ZWMpPGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB9PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyByZXR1cm4gcmV0Ozxicj4NCiZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyBkZWZhdWx0Ojxicj4NCi0mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7cmV0dXJuIC0xOzxicj4NCismbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7cmV0dXJuIE1MWDVf UkVDT1ZFUllfRVJST1JfUkVUOzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyB9PGJy Pg0KJm5ic3A7fTxicj4NCjxicj4NCkBAIC01NTYsNyArNTYxLDkgQEAgbWx4NV9yeF9lcnJfaGFu ZGxlKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsIHVpbnQ4X3QgdmVjKTxicj4NCiZuYnNwOyAq Jm5ic3A7ICZuYnNwO3dyaXR0ZW4uPGJyPg0KJm5ic3A7ICo8YnI+DQombmJzcDsgKiBAcmV0dXJu PGJyPg0KLSAqJm5ic3A7ICZuYnNwOzAgaW4gY2FzZSBvZiBlbXB0eSBDUUUsIG90aGVyd2lzZSB0 aGUgcGFja2V0IHNpemUgaW4gYnl0ZXMuPGJyPg0KKyAqJm5ic3A7ICZuYnNwOzAgaW4gY2FzZSBv ZiBlbXB0eSBDUUUsIE1MWDVfRVJST1JfQ1FFX1JFVCBpbiBjYXNlIG9mIGVycm9yIENRRSw8YnI+ DQorICombmJzcDsgJm5ic3A7b3RoZXJ3aXNlIHRoZSBwYWNrZXQgc2l6ZSBpbiByZWd1bGFyIFJ4 USwgYW5kIHN0cmlkaW5nIGJ5dGU8YnI+DQorICombmJzcDsgJm5ic3A7Y291bnQgZm9ybWF0IGlu IG1wcnEgY2FzZS48YnI+DQombmJzcDsgKi88YnI+DQombmJzcDtzdGF0aWMgaW5saW5lIGludDxi cj4NCiZuYnNwO21seDVfcnhfcG9sbF9sZW4oc3RydWN0IG1seDVfcnhxX2RhdGEgKnJ4cSwgdm9s YXRpbGUgc3RydWN0IG1seDVfY3FlICpjcWUsPGJyPg0KQEAgLTYyMyw4ICs2MzAsOCBAQCBtbHg1 X3J4X3BvbGxfbGVuKHN0cnVjdCBtbHg1X3J4cV9kYXRhICpyeHEsIHZvbGF0aWxlIHN0cnVjdCBt bHg1X2NxZSAqY3FlLDxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDtyeHEtJmd0O2Vycl9zdGF0ZSkpIHs8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7IHJldCA9IG1seDVfcnhfZXJyX2hhbmRsZShyeHEsIDApOzxicj4NCiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgaWYgKHJldCA9PSBNTFg1X0NRRV9TVEFUVVNfSFdfT1dOIHx8PGJyPg0KLSZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3JldCA9PSAtMSk8YnI+DQotJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtyZXR1cm4g MDs8YnI+DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7cmV0ID09IE1M WDVfUkVDT1ZFUllfRVJST1JfUkVUKTxicj4NCismbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3JldHVybiBNTFg1X0VSUk9SX0NRRV9SRVQ7PGJyPg0K Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IH0g ZWxzZSB7PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyByZXR1cm4gMDs8YnI+DQombmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgfTxicj4N CkBAIC04NjksOCArODc2LDEwIEBAIG1seDVfcnhfYnVyc3Qodm9pZCAqZHBka19yeHEsIHN0cnVj dCBydGVfbWJ1ZiAqKnBrdHMsIHVpbnQxNl90IHBrdHNfbik8YnI+DQombmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGlmICghcGt0KSB7PGJyPg0K Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY3FlID0gJmFtcDsoKnJ4cS0mZ3Q7Y3Flcylbcnhx LSZndDtjcV9jaSAmYW1wOyBjcWVfY250XTs8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyBsZW4gPSBtbHg1X3J4X3BvbGxfbGVuKHJ4cSwgY3FlLCBjcWVfY250LCAmYW1wO21jcWUpOzxi cj4NCi0mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO2lmICghbGVuKSB7PGJyPg0KKyZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7aWYgKGxlbiAmbHQ7PSAwKSB7PGJyPg0KJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHJ0ZV9tYnVmX3Jhd19mcmVl KHJlcCk7PGJyPg0KKyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwO2lmICh1bmxpa2VseShsZW4gPT0gTUxYNV9FUlJPUl9DUUVfUkVUKSk8YnI+DQor Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO3JxX2NpID0gcnhxLSZndDtycV9jaSAmbHQ7Jmx0OyBz Z2VzX247PGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7IGJyZWFrOzxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IH08YnI+DQom bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBwa3QgPSBzZWc7PGJyPg0KQEAgLTEwOTMsOCArMTEw MiwxMyBAQCBtbHg1X3J4X2J1cnN0X21wcnEodm9pZCAqZHBka19yeHEsIHN0cnVjdCBydGVfbWJ1 ZiAqKnBrdHMsIHVpbnQxNl90IHBrdHNfbik8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IH08YnI+DQombmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGNxZSA9ICZhbXA7KCpyeHEtJmd0 O2NxZXMpW3J4cS0mZ3Q7Y3FfY2kgJmFtcDsgY3FfbWFza107PGJyPg0KJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyByZXQgPSBtbHg1X3J4X3Bv bGxfbGVuKHJ4cSwgY3FlLCBjcV9tYXNrLCAmYW1wO21jcWUpOzxicj4NCi0mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7aWYgKCFyZXQpPGJyPg0K KyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtp ZiAocmV0ID09IDApPGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYnJlYWs7PGJyPg0K KyZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtp ZiAodW5saWtlbHkocmV0ID09IE1MWDVfRVJST1JfQ1FFX1JFVCkpIHs8YnI+DQorJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDtycV9jaSA9IHJ4cS0mZ3Q7cnFfY2k7PGJyPg0KKyZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7Y29uc3VtZWRfc3RyZCA9IHJ4cS0mZ3Q7Y29uc3VtZWRfc3RyZDs8YnI+ DQorJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDticmVhazs8YnI+DQorJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO308YnI+DQombmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGJ5dGVfY250ID0g cmV0Ozxicj4NCiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgbGVuID0gKGJ5dGVfY250ICZhbXA7IE1MWDVfTVBSUV9MRU5fTUFTSykgJmd0OyZn dDsgTUxYNV9NUFJRX0xFTl9TSElGVDs8YnI+DQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IE1MWDVfQVNTRVJUKChpbnQpbGVuICZndDs9IChy eHEtJmd0O2NyY19wcmVzZW50ICZsdDsmbHQ7IDIpKTs8YnI+DQotLSA8YnI+DQoyLjM2LjE8bzpw PjwvbzpwPjwvcD4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvYm9k eT4NCjwvaHRtbD4NCg== --_000_DM5PR1201MB2555A6873379EE12DAB3BC61CD429DM5PR1201MB2555_--