From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.3 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,HTTPS_HTTP_MISMATCH, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,MIME_HTML_MOSTLY, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D55CBC433B4 for ; Wed, 28 Apr 2021 07:25:42 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 54FB161001 for ; Wed, 28 Apr 2021 07:25:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 54FB161001 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=amd.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=amd-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 933786EAAF; Wed, 28 Apr 2021 07:25:41 +0000 (UTC) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2057.outbound.protection.outlook.com [40.107.236.57]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7DCB26EAAF for ; Wed, 28 Apr 2021 07:25:39 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nMSE4K+yc13Tj6lUvhfrk+vhMeelZhgvXO1MjDhBawR3Q6la59JthUXxOTn9AA81fsCyDBE/tEKUfdNibETpExghk9QJ1tl7nMSSJURa46QT3KTw+NFMI+s/G/LIIVbu/oHPALVgXjMvXyS2xY+Zj49lRO44uXQeNl0An9bxJBVpY+dg5X5D2pKNO4QVz6ueKlguyoTKfbRg4JcEeT6cNC3MAZjnpTGNhhyo8NKLvn+/ChuOdAr6SP9GE0LR4rcYecAa+E8SR3HRjFzO54wVbHgjv6zmWHydjyAo/u5dI+3BuXlcyluIY4sdkk3raczxmM6aF2akt7CUc+xX0bJ8qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FNaVFh3p1tD+cflYELwOmi1l8erH4he8aAwf9JXOj2k=; b=IFVqUAuUyhzWaUGQpwV+u9h0zllcvp3xO4C5/wSK5qfSaSUGs5RjeurdSDZPgRMknaHvfSZ/0CB9boDJp5VhZP43F0d+GeJSnZEe2jeFA10KyOyTZ476GbxD31HjFNyWOXMmUc3JxKwkJ57CIzLec78YGZzVmfVQfY0J6Vpufo7+z3t5kx2H7AP/MJLdtwDLfC0SYmS8agp+qqdcJlnsG6PhiRvqWQlBHnBTx4Fo3A+4PKqLVA9BYIQiVyaMHrDThNpVD5Ni1yKilXomihoRGkglKOnw2VtvK/YgPpBavyeozv+/O/qgYDeWFBm09D/ffGN9AH5tX+YQBk8Xcu+CWw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FNaVFh3p1tD+cflYELwOmi1l8erH4he8aAwf9JXOj2k=; b=K6k3GK5exey99a2YSvAMKRk7eaFDzLN5FHczYCnvrisciRhJLr2PveXTJmSiHAo55keQEugv6rHxmAU1Yz8tiwxo/YXhX00+G67N7Vtvhz0q/KxkwO0AxNy69P0R7ShYWWgcxKBja4CCgdVzCfgqcjOurqaYHHp40txW0pYdi60= Received: from BYAPR12MB2840.namprd12.prod.outlook.com (2603:10b6:a03:62::32) by BYAPR12MB3512.namprd12.prod.outlook.com (2603:10b6:a03:134::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.26; Wed, 28 Apr 2021 07:25:35 +0000 Received: from BYAPR12MB2840.namprd12.prod.outlook.com ([fe80::7c65:7181:6d1d:8616]) by BYAPR12MB2840.namprd12.prod.outlook.com ([fe80::7c65:7181:6d1d:8616%7]) with mapi id 15.20.4065.027; Wed, 28 Apr 2021 07:25:35 +0000 From: "Nieto, David M" To: =?utf-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= , "Gu, JiaWei (Will)" , "amd-gfx@lists.freedesktop.org" Subject: Re: [PATCH] drm/amdgpu: Add vbios info ioctl interface Thread-Topic: [PATCH] drm/amdgpu: Add vbios info ioctl interface Thread-Index: AQHXNyAZxU02AtWA5k2SdU2Ic9ArhqrAgz4AgAACZoCAAAKEgIAA50OAgAehugCAAH0wgP//jWwA Date: Wed, 28 Apr 2021 07:25:35 +0000 Message-ID: References: <20210422023448.24689-1-Jiawei.Gu@amd.com> <84a7de3b-b6a1-2acf-247a-0c93e84db09b@gmail.com> <0C1CB3BD-37DD-4F05-9E6E-2DED8A6CD44B@amd.com> <27103289-b51a-8e4b-ad09-0169829efeb0@gmail.com> In-Reply-To: <27103289-b51a-8e4b-ad09-0169829efeb0@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/10.10.1b.201012 authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=amd.com; x-originating-ip: [165.204.53.104] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 235e4678-701a-45d3-900d-08d90a16d0a3 x-ms-traffictypediagnostic: BYAPR12MB3512: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: CPoC7Q7lj91Q0qkwHER+GnEoQr6oHYv+X62qIGZ06s8FfJE2t8nFtNxqOgyx7thVYhzhmKQq7TWbnsInZ09lKrbbwBLS/oaGkYoAm8pZ2w1W0ueLPBgil7pbeE7xG2cTJ9WlLL3+ip5wvWkacbEyTlHAtryvML80CKxADFk8ifoDEABcv7jJ1IrFPhSKwhSNxsM08KTIe/BBVblxi8h8b06LrsyHj5rM5mBU+lBZPXR/VQ2JugyA8qX4lzgYMQOFIKooTMpZPZ4ar/Mu8Cp3F6KxkKAcvQfg0NMk/Oj4kpIESyrYEbNC9LD8ZM15pPbXE1zWK0oEp5zw2sWuA0hq5Q5B+TE+iO20ryP9CgHRVMC74cLUyjcyfzUTz63fITcjSCOWPT263QvyIGwweJVM9cBPb3eK/a4DaqsUwm6T9UIT8qQd/L4NJUlLjkyzImWmwPLekntCD2XikC/CxgzNfxUWOA58pT5wt44HROxE3u5zFBUTjCiwikxLbk0uBQPTdzwxcxXLdz+oad0BX1i3RHxDegN/gQJ6lmzTu0gvJKii7geCaJI1x2zhF1aL0xQs2rjSBZE+wI9/ov9FVXIUlWkL2r1kXB8fp0GIsxJKtDcnh9rSS02EoPYIQXdMSdIqVUxzD2nGbDE4xNwN0xKzAC/TRpBE8BCmfQnGMesOI7oEYw5Qh0MC6hvJOiZwMoNu/q2UMDk+c/64tnamN1xXFA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR12MB2840.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(376002)(346002)(39860400002)(366004)(396003)(136003)(36756003)(38100700002)(86362001)(5660300002)(478600001)(966005)(30864003)(4326008)(122000001)(71200400001)(6512007)(110136005)(316002)(8936002)(54906003)(66574015)(26005)(186003)(2906002)(53546011)(2616005)(6486002)(83380400001)(6506007)(66446008)(66556008)(64756008)(166002)(76116006)(8676002)(66946007)(33656002)(66476007)(45980500001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?MTNjTWUvbEFoUUdhR1VDVVQyYTkrb041Q2J0cmd4NlRTQ1g5U3RobFZZZC9B?= =?utf-8?B?YVh6SmNxMEdUYmZ2SkF6SCtBWUVNTjdTS2xINmVOclhiUWd3Q0R6SStRWDd6?= =?utf-8?B?MFFOYkl2NFhFbEsyZFE3RzZpa2wrL1E0ZnpGbzBUaHpYYjZrbVViZ2VhOCt6?= =?utf-8?B?VVZLRmxNZHdJZUV5QVVhN0FzSmVIUGNzazFZNUVQU0JCaG0wcDFwaGh3Z2tO?= =?utf-8?B?Z3lJaTZseHUzcHBHa29UTzVLM2JObGw5WVR4QlJjTktBak5ZMU5Vb0VPZjR0?= =?utf-8?B?TkYwQmZPU00wVHZ2Sm4rRGpPWWJ2d0k3dWloN3QrNGZwYk1mMzJ1S1E1aS8v?= =?utf-8?B?YU95QjJvRkdiUGdaY3VhNVk0M3hyZ2pUbDhtd2pXdjI5eGhwamxxd2o4RVJL?= =?utf-8?B?ejhqUHlOU3pSczZZZTBpSHBweXVXcC9hQXc3b05PZUtXWEtGYjYzbEkxcDBH?= =?utf-8?B?a0NvbE5WRHBYZXNOdENpRVAyVGliaEREb1d4S2xEQWd4VnZhYU93R3ZnL0FH?= =?utf-8?B?MGZocC80b1NtQzFFOXJmblErK3BtQVVYUm5iWTJ6OWhSODRjTkdlM0F5YzF4?= =?utf-8?B?SVBiRmJNV3JZSEpHSG0xQmxKeEdXQWZFYXJwRWkwZGYvWCtKSllNUXBSY3dy?= =?utf-8?B?UldGSGswKy8yeUFpSUVzMHdMeXFuTCtvcGMxUlRiOERwREg5c0RHSkp3cldY?= =?utf-8?B?REhCNm5nbnU5VjhOVU8wQUR6NW84K2RzQ3FUdDgxRHJrelFEb1ovSGNzNXIr?= =?utf-8?B?cUFkU3FuUGwvWUxFYy9iMjVLS3hTSllxU0g4MVd1VC8vSU5ZQjRxbVlxYWlU?= =?utf-8?B?T0xDZzc5RFZqLzY4WkhtZzg4ZDduWWxzYlhHUmZVcm5iMUR1eGRYbTVxTTRY?= =?utf-8?B?alBucG93MnBMUUc0UUtnd2FIOWdzT21wZzg1bThaMU9hTE5iMW8xODBwa3pz?= =?utf-8?B?SmwyMU1JNGFJZHJJZk1KdGMzcmFaMkEwclFSaE1Zcys3dzY2aU9LeGVRc2Rw?= =?utf-8?B?cE9BS1A1NTcvT1BJWFMrOE1WQkhwMDVkSCt6UmtmRUhSelE0bDZIakZ5T21E?= =?utf-8?B?amZwTzdpdWxTQXlCZW9QRkNQRFhaenNRd2VqdDBSL3Y4bUt3UFBkQWFKM0VV?= =?utf-8?B?MGRtdFZ6UDM2ZUJGQWg4WXF1akw5STNXOEhMTFVab2RlejA3cVF0QmgxYk5v?= =?utf-8?B?aUhVNjFBc2FwZk90S2laaVU1eWtPOTdKYTNNUVJIdXBnN3k4aUE5UXJhTjRo?= =?utf-8?B?azNwMDlVMHFuYnAwc1dxb0JDdDNFcGE1WmJZQVdQTnFjRUE1VzFxNEVLSGc2?= =?utf-8?B?SnQ0RExHMEd3cnZCWmZDc3hQOVp0czQ5VUxUS1Uwd3dzejdJTHBtR3l6bkE2?= =?utf-8?B?WnZXazArZlhIU2U3VlF1a2VFa2FxNlY3ejhzNDNDUnMvNno0bTVrK2pJTFhu?= =?utf-8?B?bXhEcWJGU3JtVUpWU0lPTTZOeDVmTFowdXp6UFRtOU94cW5UZ3d6MUpRMjA0?= =?utf-8?B?aGlkMzFrcUs0NE5tVGJKNGpMZTlHM1NNWXVNMUp1aDZmOTBzdGlmc0ZqNm8z?= =?utf-8?B?MzdUdnNjQWRmaTlYL2FLT1ZrUDhpNTZ0ckd0M2Z1bFg1MWg4Mnp5SmRqd1Uy?= =?utf-8?B?MUdyNS9WWVNidFJORUN2WTM0Y1d2UlgrMXQ0d2VMVWZkOEFxOGFlMjh4cVFo?= =?utf-8?B?WUJoSGM0d0gwV1BqTWltaStDdkxZOFBOTFJlcTFjNTlMZi9HNnAxUzFjejBO?= =?utf-8?B?YUF5WDN2MWRLbDVvcEZTKzBjY0VXL0ZYMHhaUE5nMU5LWllPWmZDWXZTcGpI?= =?utf-8?B?YytNSFozdnpMc1hoRjJYZz09?= MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR12MB2840.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 235e4678-701a-45d3-900d-08d90a16d0a3 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Apr 2021 07:25:35.3962 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 3/FJbbyZim/aXVlXIDR0Bw8gOtcF6MQ5IO8VVojRjRhOaELrCqyIEisPhZZ0q96I X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR12MB3512 X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Deucher, Alexander" , "StDenis, Tom" Content-Type: multipart/mixed; boundary="===============1354788086==" Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" --===============1354788086== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_E87E8A3B7BDE4286A71D3E242D30A1C7amdcom_" --_000_E87E8A3B7BDE4286A71D3E242D30A1C7amdcom_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SSB0aGluayB0aGlzIGNoYW5nZSBtYXkgYmUgb3J0aG9nb25hbCB0byB0aGF0LiBIZXJlIHdlIHdh bnQgdG8gcHJvdmlkZSBhIHdheSBmb3IgdGhlIHVzZXIgYXBwbGljYXRpb24gdG8gZ2V0IHRoZSBW QklPUyBpbmZvcm1hdGlvbiB3aXRob3V0IGhhdmluZyB0byBwYXJzZSB0aGUgYmluYXJ54oCmDQoN CkFuZCBJIGFncmVlIHRoYXQgd2Ugc2hvdWxkIG5vdCBoYXZlIHN0cm9uZyBkZXBlbmRlbmNpZXMg dW5sZXNzIHRoZSBlbmNvdW50ZXIgYnVnZ3kgVkJJT1Mgb24gdGhlIGZpZWxkLCBidXQgSSBzdGls bCB0aGluayBpdCBpcyB1c2VmdWwgZm9yIHRoZSB1c2VyIHRvIGJlIGFibGUgdG8gZGlzcGxheSBp biBhIHNpbXBsZSB3YXkgdGhlIFZCSU9TIHZlcnNpb24gaW4gdGhlaXIgc3lzdGVtIGlmIHRoZXkg aGFwcGVuIHRvIGVuY291bnRlciBhbiBpc3N1ZS4NCg0KUmVnYXJkcywNCkRhdmlkDQoNCkZyb206 IENocmlzdGlhbiBLw7ZuaWcgPGNrb2VuaWcubGVpY2h0enVtZXJrZW5AZ21haWwuY29tPg0KRGF0 ZTogV2VkbmVzZGF5LCBBcHJpbCAyOCwgMjAyMSBhdCAxMjoxNSBBTQ0KVG86ICJOaWV0bywgRGF2 aWQgTSIgPERhdmlkLk5pZXRvQGFtZC5jb20+LCAiR3UsIEppYVdlaSAoV2lsbCkiIDxKaWFXZWku R3VAYW1kLmNvbT4sICJhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZyIgPGFtZC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnPg0KQ2M6ICJEZXVjaGVyLCBBbGV4YW5kZXIiIDxBbGV4YW5kZXIu RGV1Y2hlckBhbWQuY29tPiwgIlN0RGVuaXMsIFRvbSIgPFRvbS5TdERlbmlzQGFtZC5jb20+DQpT dWJqZWN0OiBSZTogW1BBVENIXSBkcm0vYW1kZ3B1OiBBZGQgdmJpb3MgaW5mbyBpb2N0bCBpbnRl cmZhY2UNCg0KV2VsbCBkaXNwbGF5aW5nIHRoZSBWQklPUyBpbmZvcm1hdGlvbiBhbG9uZyB3aXRo IHRoZSBvdGhlciBmaXJtd2FyZSBpbiB1c2Vyc3BhY2UgaXMgY2VydGFpbmx5IHVzZWZ1bC4NCg0K V2Ugc2hvdWxkIGp1c3QgYXZvaWQgbWFraW5nIHN0cm9uZyBkZXBlbmRlbmNpZXMgb24gdGhhdC4N Cg0KRmlybXdhcmUgYW5kIFZCSU9TIG11c3QgYWx3YXlzIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUg YW5kIHRoZSBkcml2ZXIgbXVzdCBhbHdheXMgd29yayB3aXRoIGFueSByZWxlYXNlZCBmaXJtd2Fy ZSBhbmQgVkJJT1MgY29tYmluYXRpb24uDQoNCldoYXQgd2UgY2FuIGRvIGlzIHRvIGRpc3BsYXkg YSB3YXJuaW5nIHdoZW4gd2UgZGV0ZWN0IGFuZC9vciBvbGQvYnVnZ3kgZmlybXdhcmUuDQoNClJl Z2FyZHMsDQpDaHJpc3RpYW4uDQpBbSAyOC4wNC4yMSB1bSAwODo0NyBzY2hyaWViIE5pZXRvLCBE YXZpZCBNOg0KQmVzaWRlcyBzeXN0ZW0gbWFuYWdlbWVudCwgaXQgcHJvdmlkZXMgcGFyc2VhYmxl IGRldGFpbHMgb24gdGhlIFZCSU9TIHZlcnNpb24gYW5kIGluZm9ybWF0aW9uLiBUaGlzIGlzIHVz ZWZ1bCByZW5kZXJlciBpbmZvcm1hdGlvbiBhcyB0aGUgR1BVIGJlaGF2aW9yIGRlcGVuZHMgbm90 IG9ubHkgb24gdGhlIGRyaXZlciB2ZXJzaW9uIGJ1dCBhbHNvIG9uIHRoZSBmaXJtd2FyZXMgcnVu bmluZyBvbiB0aGUgR1BVLg0KDQpUaGUgQU1ER1BVX0lORk8gaW9jdGwgY29udGFpbnMgYSBtZXRo b2QgdG8gZ2V0IHRoZSB2ZXJzaW9ucyBvZiB0aGUgdWNvZGUgZm9yIGFsbCB0aGUgSVBzLCBidXQg Zm9yIFZCSU9TLCBvbmx5IGEgd2F5IHRvIGR1bXAgdGhlIGVudGlyZSBpbWFnZSBpcyBwcm92aWRl ZC4gV2hpbGUgaXQgSXMgcG9zc2libGUgdG8gaW1wbGVtZW50IHRoZSB3aG9sZSBsb2dpYyBvZiBW QklPUyBwYXJzaW5nIG9uIHVzZXJzcGFjZSwgaXQgcmVxdWlyZXMgdGhlIGFwcGxpY2F0aW9uIHRv IGhhdmUgZGV0YWlscyBvbiB0aGUgaGVhZGVyIGFuZCB0YWJsZSBmb3JtYXRzIHRvIHBhcnNlIHRo ZSBkYXRhLiBNb3Jlb3ZlciB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGUgZm9ybWF0IGFu ZCBoZWFkZXIgbG9jYXRpb25zIHdpbGwgcmVtYWluIGNvbnN0YW50IGFjcm9zcyBBU0lDIGdlbmVy YXRpb25zLCBzbyB0aGUgbWFpbnRhaW5hbmNlIGNvc3QgYW5kIGNvbXBsZXhpdHkgc2VlbXMgdW5y ZWFzb25hYmxlLg0KDQpQcm92aWRpbmcgYSBzaW1wbGUsIGFuZCBzdGFibGUgaW50ZXJmYWNlIHRv IHRoZSBhcHBsaWNhdGlvbiBzZWVtcyB0byB1cyBsaWtlIGEgc2Vuc2libGUgY2hvaWNlLg0KDQpU aGFua3MsDQpEYXZpZA0KDQpGcm9tOiBhbWQtZ2Z4IDxhbWQtZ2Z4LWJvdW5jZXNAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnPjxtYWlsdG86YW1kLWdmeC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9wLm9y Zz4gb24gYmVoYWxmIG9mICJHdSwgSmlhV2VpIChXaWxsKSIgPEppYVdlaS5HdUBhbWQuY29tPjxt YWlsdG86SmlhV2VpLkd1QGFtZC5jb20+DQpEYXRlOiBUaHVyc2RheSwgQXByaWwgMjIsIDIwMjEg YXQgODoyNSBQTQ0KVG86IENocmlzdGlhbiBLw7ZuaWcgPGNrb2VuaWcubGVpY2h0enVtZXJrZW5A Z21haWwuY29tPjxtYWlsdG86Y2tvZW5pZy5sZWljaHR6dW1lcmtlbkBnbWFpbC5jb20+LCAiYW1k LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmciPG1haWx0bzphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZz4gPGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnPjxtYWlsdG86YW1kLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmc+DQpDYzogIkRldWNoZXIsIEFsZXhhbmRlciIgPEFsZXhhbmRl ci5EZXVjaGVyQGFtZC5jb20+PG1haWx0bzpBbGV4YW5kZXIuRGV1Y2hlckBhbWQuY29tPiwgIlN0 RGVuaXMsIFRvbSIgPFRvbS5TdERlbmlzQGFtZC5jb20+PG1haWx0bzpUb20uU3REZW5pc0BhbWQu Y29tPiwgIk5pZXRvLCBEYXZpZCBNIiA8RGF2aWQuTmlldG9AYW1kLmNvbT48bWFpbHRvOkRhdmlk Lk5pZXRvQGFtZC5jb20+DQpTdWJqZWN0OiBSRTogW1BBVENIXSBkcm0vYW1kZ3B1OiBBZGQgdmJp b3MgaW5mbyBpb2N0bCBpbnRlcmZhY2UNCg0KDQpbQU1EIE9mZmljaWFsIFVzZSBPbmx5IC0gSW50 ZXJuYWwgRGlzdHJpYnV0aW9uIE9ubHldDQoNCkhpIENocmlzdGlhbiwNCkl0IHdpbGwgYmUgdXNl ZCBieSBhIHVzZXIgc3BhY2UgU01JLWxpYiBmb3IgR1BVIHN0YXR1cyBxdWVyeS4NCg0KSGkgRGF2 aWQsIHBsZWFzZSBmZWVsIGZyZWUgdG8gY29ycmVjdCBteSBzdGF0ZW1lbnQgc2luY2UgSeKAmW0g bm90IHN1cmUgSSBoYXZlIGEgdmlldyBvZiB3aG9sZSBwaWN0dXJlLg0KDQpUaGFua3MsDQpKaWF3 ZWkNCg0KRnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2tvZW5pZy5sZWljaHR6dW1lcmtlbkBnbWFp bC5jb20+PG1haWx0bzpja29lbmlnLmxlaWNodHp1bWVya2VuQGdtYWlsLmNvbT4NClNlbnQ6IFRo dXJzZGF5LCBBcHJpbCAyMiwgMjAyMSA5OjI3IFBNDQpUbzogR3UsIEppYVdlaSAoV2lsbCkgPEpp YVdlaS5HdUBhbWQuY29tPjxtYWlsdG86SmlhV2VpLkd1QGFtZC5jb20+OyBhbWQtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZzxtYWlsdG86YW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmc+DQpD YzogRGV1Y2hlciwgQWxleGFuZGVyIDxBbGV4YW5kZXIuRGV1Y2hlckBhbWQuY29tPjxtYWlsdG86 QWxleGFuZGVyLkRldWNoZXJAYW1kLmNvbT47IFN0RGVuaXMsIFRvbSA8VG9tLlN0RGVuaXNAYW1k LmNvbT48bWFpbHRvOlRvbS5TdERlbmlzQGFtZC5jb20+DQpTdWJqZWN0OiBSZTogW1BBVENIXSBk cm0vYW1kZ3B1OiBBZGQgdmJpb3MgaW5mbyBpb2N0bCBpbnRlcmZhY2UNCg0KSXMgdGhhdCB1c2Vm dWwgdG8gVnVsa2FuL09wZW5HTC9vdGhlciBjbGllbnRzIGluIGFueSB3YXk/DQoNCkNocmlzdGlh bi4NCkFtIDIyLjA0LjIxIHVtIDE1OjE4IHNjaHJpZWIgR3UsIEppYVdlaSAoV2lsbCk6DQoNCg0K DQpDQyBUb20uDQoNCg0KDQpPbiBBcHIgMjIsIDIwMjEsIGF0IDIxOjA5LCBHdSwgSmlhV2VpIChX aWxsKSA8SmlhV2VpLkd1QGFtZC5jb20+PG1haWx0bzpKaWFXZWkuR3VAYW1kLmNvbT4gd3JvdGU6 DQoNCg0KDQo8W3YyXVt1bXJdYWRkLXZiaW9zLWluZm8tcXVlcnkucGF0Y2g+DQoNClVNUiBwYXRj aCB3aGljaCBjYWxscyB0aGlzIG5ldyBJT0NUTCBhdHRhY2hlZC4NCg0KDQoNCkJlc3QgcmVnYXJk cywNCg0KSmlhd2VpDQoNCg0KDQpPbiBBcHIgMjIsIDIwMjEsIGF0IDEwOjM0LCBKaWF3ZWkgR3Ug PEppYVdlaS5HdUBhbWQuY29tPjxtYWlsdG86SmlhV2VpLkd1QGFtZC5jb20+IHdyb3RlOg0KDQoN Cg0KQWRkIEFNREdQVV9JTkZPX1ZCSU9TX0lORk8gc3VicXVlcnkgaWQgZm9yIGRldGFpbGVkIHZi aW9zIGluZm8uDQoNCg0KDQpTaWduZWQtb2ZmLWJ5OiBKaWF3ZWkgR3UgPEppYXdlaS5HdUBhbWQu Y29tPjxtYWlsdG86Smlhd2VpLkd1QGFtZC5jb20+DQoNCi0tLQ0KDQpkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfa21zLmMgICAgfCAgMTkgKysrDQoNCmRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2F0b20uYyAgICAgICAgICB8IDE1OCArKysrKysrKysrKysrKysrKysrKysNCg0K ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oICAgICAgICAgIHwgIDExICsrDQoNCmRy aXZlcnMvZ3B1L2RybS9hbWQvaW5jbHVkZS9hdG9tZmlybXdhcmUuaCB8ICAxNiArKy0NCg0KaW5j bHVkZS91YXBpL2RybS9hbWRncHVfZHJtLmggICAgICAgICAgICAgIHwgIDE1ICsrDQoNCjUgZmls ZXMgY2hhbmdlZCwgMjEzIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pDQoNCg0KDQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2ttcy5jIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2ttcy5jDQoNCmluZGV4IDM5ZWU4OGQyOWNjYS4u YTIwYjAxNmIwNWFiIDEwMDY0NA0KDQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfa21zLmMNCg0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2tt cy5jDQoNCkBAIC04NjEsNiArODYxLDI1IEBAIGludCBhbWRncHVfaW5mb19pb2N0bChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHApDQoNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbigoc2l6ZV90KXNpemUsIChz aXplX3QpKGJpb3Nfc2l6ZSAtIGJpb3Nfb2Zmc2V0KSkpDQoNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgPyAtRUZBVUxUIDogMDsNCg0KICAgICAgICAgICAgIH0NCg0KKyAgICAg ICAgICAgIGNhc2UgQU1ER1BVX0lORk9fVkJJT1NfSU5GTzogew0KDQorICAgICAgICAgICAgICAg ICAgIHN0cnVjdCBkcm1fYW1kZ3B1X2luZm9fdmJpb3MgdmJpb3NfaW5mbyA9IHt9Ow0KDQorICAg ICAgICAgICAgICAgICAgIHN0cnVjdCBhdG9tX2NvbnRleHQgKmF0b21fY29udGV4dDsNCg0KKw0K DQorICAgICAgICAgICAgICAgICAgIGF0b21fY29udGV4dCA9IGFkZXYtPm1vZGVfaW5mby5hdG9t X2NvbnRleHQ7DQoNCisgICAgICAgICAgICAgICAgIG1lbWNweSh2Ymlvc19pbmZvLm5hbWUsIGF0 b21fY29udGV4dC0+bmFtZSwgc2l6ZW9mKGF0b21fY29udGV4dC0+bmFtZSkpOw0KDQorICAgICAg ICAgICAgICAgICB2Ymlvc19pbmZvLmRiZGYgPSBQQ0lfREVWSUQoYWRldi0+cGRldi0+YnVzLT5u dW1iZXIsIGFkZXYtPnBkZXYtPmRldmZuKTsNCg0KKyAgICAgICAgICAgICAgICAgbWVtY3B5KHZi aW9zX2luZm8udmJpb3NfcG4sIGF0b21fY29udGV4dC0+dmJpb3NfcG4sIHNpemVvZihhdG9tX2Nv bnRleHQtPnZiaW9zX3BuKSk7DQoNCisgICAgICAgICAgICAgICAgIHZiaW9zX2luZm8udmVyc2lv biA9IGF0b21fY29udGV4dC0+dmVyc2lvbjsNCg0KKyAgICAgICAgICAgICAgICAgbWVtY3B5KHZi aW9zX2luZm8uZGF0ZSwgYXRvbV9jb250ZXh0LT5kYXRlLCBzaXplb2YoYXRvbV9jb250ZXh0LT5k YXRlKSk7DQoNCisgICAgICAgICAgICAgICAgIG1lbWNweSh2Ymlvc19pbmZvLnNlcmlhbCwgYWRl di0+c2VyaWFsLCBzaXplb2YoYWRldi0+c2VyaWFsKSk7DQoNCisgICAgICAgICAgICAgICAgIHZi aW9zX2luZm8uZGV2X2lkID0gYWRldi0+cGRldi0+ZGV2aWNlOw0KDQorICAgICAgICAgICAgICAg ICB2Ymlvc19pbmZvLnJldl9pZCA9IGFkZXYtPnBkZXYtPnJldmlzaW9uOw0KDQorICAgICAgICAg ICAgICAgICB2Ymlvc19pbmZvLnN1Yl9kZXZfaWQgPSBhdG9tX2NvbnRleHQtPnN1Yl9kZXZfaWQ7 DQoNCisgICAgICAgICAgICAgICAgIHZiaW9zX2luZm8uc3ViX3ZlZF9pZCA9IGF0b21fY29udGV4 dC0+c3ViX3ZlZF9pZDsNCg0KKw0KDQorICAgICAgICAgICAgICAgICAgIHJldHVybiBjb3B5X3Rv X3VzZXIob3V0LCAmdmJpb3NfaW5mbywNCg0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBtaW4oKHNpemVfdClzaXplLCBzaXplb2YodmJpb3NfaW5mbykpKSA/IC1FRkFVTFQgOiAw Ow0KDQorICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgZGVmYXVsdDoNCg0KICAgICAgICAg ICAgICAgICAgRFJNX0RFQlVHX0tNUygiSW52YWxpZCByZXF1ZXN0ICVkXG4iLA0KDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW5mby0+dmJpb3NfaW5mby50eXBlKTsNCg0KZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2F0b20uYyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2F0b20uYw0KDQppbmRleCAzZGNiOGIzMmY0OGIuLjBlMmYwZWExM2I0MCAxMDA2 NDQNCg0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5jDQoNCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2F0b20uYw0KDQpAQCAtMzEsNiArMzEsNyBAQA0KDQoN Cg0KI2RlZmluZSBBVE9NX0RFQlVHDQoNCg0KDQorI2luY2x1ZGUgImF0b21maXJtd2FyZS5oIg0K DQojaW5jbHVkZSAiYXRvbS5oIg0KDQojaW5jbHVkZSAiYXRvbS1uYW1lcy5oIg0KDQojaW5jbHVk ZSAiYXRvbS1iaXRzLmgiDQoNCkBAIC0xMjk5LDEyICsxMzAwLDE1MyBAQCBzdGF0aWMgdm9pZCBh dG9tX2luZGV4X2lpbyhzdHJ1Y3QgYXRvbV9jb250ZXh0ICpjdHgsIGludCBiYXNlKQ0KDQogICAg IH0NCg0KfQ0KDQoNCg0KK3N0YXRpYyB2b2lkIGF0b21fZ2V0X3ZiaW9zX25hbWUoc3RydWN0IGF0 b21fY29udGV4dCAqY3R4KQ0KDQorew0KDQorICAgIHVuc2lnbmVkIGNoYXIgKnBfcm9tOw0KDQor ICAgIHVuc2lnbmVkIGNoYXIgc3RyX251bTsNCg0KKyAgICB1bnNpZ25lZCBzaG9ydCBvZmZfdG9f dmJpb3Nfc3RyOw0KDQorICAgIHVuc2lnbmVkIGNoYXIgKmNfcHRyOw0KDQorICAgIGludCBuYW1l X3NpemU7DQoNCisgICAgaW50IGk7DQoNCisNCg0KKyAgICBjb25zdCBjaGFyICpuYSA9ICItLU4v QS0tIjsNCg0KKyAgICBjaGFyICpiYWNrOw0KDQorDQoNCisgICAgcF9yb20gPSBjdHgtPmJpb3M7 DQoNCisNCg0KKyAgICBzdHJfbnVtID0gKihwX3JvbSArIE9GRlNFVF9UT19HRVRfQVRPTUJJT1Nf TlVNQkVSX09GX1NUUklOR1MpOw0KDQorICAgIGlmIChzdHJfbnVtICE9IDApIHsNCg0KKyAgICAg ICAgICAgIG9mZl90b192Ymlvc19zdHIgPQ0KDQorICAgICAgICAgICAgICAgICAgICoodW5zaWdu ZWQgc2hvcnQgKikocF9yb20gKyBPRkZTRVRfVE9fR0VUX0FUT01CSU9TX1NUUklOR19TVEFSVCk7 DQoNCisNCg0KKyAgICAgICAgICAgIGNfcHRyID0gKHVuc2lnbmVkIGNoYXIgKikocF9yb20gKyBv ZmZfdG9fdmJpb3Nfc3RyKTsNCg0KKyAgICB9IGVsc2Ugew0KDQorICAgICAgICAgICAgLyogZG8g bm90IGtub3cgd2hlcmUgdG8gZmluZCBuYW1lICovDQoNCisgICAgICAgICAgICBtZW1jcHkoY3R4 LT5uYW1lLCBuYSwgNyk7DQoNCisgICAgICAgICAgICBjdHgtPm5hbWVbN10gPSAwOw0KDQorICAg ICAgICAgICAgcmV0dXJuOw0KDQorICAgIH0NCg0KKw0KDQorICAgIC8qDQoNCisgICAgICogc2tp cCB0aGUgYXRvbWJpb3Mgc3RyaW5ncywgdXN1YWxseSA0DQoNCisgICAgICogMXN0IGlzIFAvTiwg Mm5kIGlzIEFTSUMsIDNyZCBpcyBQQ0kgdHlwZSwgNHRoIGlzIE1lbW9yeSB0eXBlDQoNCisgICAg ICovDQoNCisgICAgZm9yIChpID0gMDsgaSA8IHN0cl9udW07IGkrKykgew0KDQorICAgICAgICAg ICAgd2hpbGUgKCpjX3B0ciAhPSAwKQ0KDQorICAgICAgICAgICAgICAgICAgIGNfcHRyKys7DQoN CisgICAgICAgICAgICBjX3B0cisrOw0KDQorICAgIH0NCg0KKw0KDQorICAgIC8qIHNraXAgdGhl IGZvbGxvd2luZyAyIGNoYXJzOiAweDBEIDB4MEEgKi8NCg0KKyAgICBjX3B0ciArPSAyOw0KDQor DQoNCisgICAgbmFtZV9zaXplID0gc3RybmxlbihjX3B0ciwgU1RSTEVOX0xPTkcgLSAxKTsNCg0K KyAgICBtZW1jcHkoY3R4LT5uYW1lLCBjX3B0ciwgbmFtZV9zaXplKTsNCg0KKyAgICBiYWNrID0g Y3R4LT5uYW1lICsgbmFtZV9zaXplOw0KDQorICAgIHdoaWxlICgoKi0tYmFjaykgPT0gJyAnKQ0K DQorICAgICAgICAgICAgOw0KDQorICAgICooYmFjayArIDEpID0gJ1wwJzsNCg0KK30NCg0KKw0K DQorc3RhdGljIHZvaWQgYXRvbV9nZXRfdmJpb3NfZGF0ZShzdHJ1Y3QgYXRvbV9jb250ZXh0ICpj dHgpDQoNCit7DQoNCisgICAgdW5zaWduZWQgY2hhciAqcF9yb207DQoNCisgICAgdW5zaWduZWQg Y2hhciAqZGF0ZV9pbl9yb207DQoNCisNCg0KKyAgICBwX3JvbSA9IGN0eC0+YmlvczsNCg0KKw0K DQorICAgIGRhdGVfaW5fcm9tID0gcF9yb20gKyBPRkZTRVRfVE9fVkJJT1NfREFURTsNCg0KKw0K DQorICAgIGN0eC0+ZGF0ZVswXSA9ICcyJzsNCg0KKyAgICBjdHgtPmRhdGVbMV0gPSAnMCc7DQoN CisgICAgY3R4LT5kYXRlWzJdID0gZGF0ZV9pbl9yb21bNl07DQoNCisgICAgY3R4LT5kYXRlWzNd ID0gZGF0ZV9pbl9yb21bN107DQoNCisgICAgY3R4LT5kYXRlWzRdID0gJy8nOw0KDQorICAgIGN0 eC0+ZGF0ZVs1XSA9IGRhdGVfaW5fcm9tWzBdOw0KDQorICAgIGN0eC0+ZGF0ZVs2XSA9IGRhdGVf aW5fcm9tWzFdOw0KDQorICAgIGN0eC0+ZGF0ZVs3XSA9ICcvJzsNCg0KKyAgICBjdHgtPmRhdGVb OF0gPSBkYXRlX2luX3JvbVszXTsNCg0KKyAgICBjdHgtPmRhdGVbOV0gPSBkYXRlX2luX3JvbVs0 XTsNCg0KKyAgICBjdHgtPmRhdGVbMTBdID0gJyAnOw0KDQorICAgIGN0eC0+ZGF0ZVsxMV0gPSBk YXRlX2luX3JvbVs5XTsNCg0KKyAgICBjdHgtPmRhdGVbMTJdID0gZGF0ZV9pbl9yb21bMTBdOw0K DQorICAgIGN0eC0+ZGF0ZVsxM10gPSBkYXRlX2luX3JvbVsxMV07DQoNCisgICAgY3R4LT5kYXRl WzE0XSA9IGRhdGVfaW5fcm9tWzEyXTsNCg0KKyAgICBjdHgtPmRhdGVbMTVdID0gZGF0ZV9pbl9y b21bMTNdOw0KDQorICAgIGN0eC0+ZGF0ZVsxNl0gPSAnXDAnOw0KDQorfQ0KDQorDQoNCitzdGF0 aWMgdW5zaWduZWQgY2hhciAqYXRvbV9maW5kX3N0cl9pbl9yb20oc3RydWN0IGF0b21fY29udGV4 dCAqY3R4LCBjaGFyICpzdHIsIGludCBzdGFydCwNCg0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBpbnQgZW5kLCBpbnQgbWF4bGVuKQ0KDQorew0KDQorICAgIHVuc2lnbmVk IGxvbmcgc3RyX29mZjsNCg0KKyAgICB1bnNpZ25lZCBjaGFyICpwX3JvbTsNCg0KKyAgICB1bnNp Z25lZCBzaG9ydCBzdHJfbGVuOw0KDQorDQoNCisgICAgc3RyX29mZiA9IDA7DQoNCisgICAgc3Ry X2xlbiA9IHN0cm5sZW4oc3RyLCBtYXhsZW4pOw0KDQorICAgIHBfcm9tID0gY3R4LT5iaW9zOw0K DQorDQoNCisgICAgZm9yICg7IHN0YXJ0IDw9IGVuZDsgKytzdGFydCkgew0KDQorICAgICAgICAg ICAgZm9yIChzdHJfb2ZmID0gMDsgc3RyX29mZiA8IHN0cl9sZW47ICsrc3RyX29mZikgew0KDQor ICAgICAgICAgICAgICAgICAgIGlmIChzdHJbc3RyX29mZl0gIT0gKihwX3JvbSArIHN0YXJ0ICsg c3RyX29mZikpDQoNCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCg0KKyAgICAgICAg ICAgIH0NCg0KKw0KDQorICAgICAgICAgICAgaWYgKHN0cl9vZmYgPT0gc3RyX2xlbiB8fCBzdHJb c3RyX29mZl0gPT0gMCkNCg0KKyAgICAgICAgICAgICAgICAgICByZXR1cm4gcF9yb20gKyBzdGFy dDsNCg0KKyAgICB9DQoNCisgICAgcmV0dXJuIE5VTEw7DQoNCit9DQoNCisNCg0KK3N0YXRpYyB2 b2lkIGF0b21fZ2V0X3ZiaW9zX3BuKHN0cnVjdCBhdG9tX2NvbnRleHQgKmN0eCkNCg0KK3sNCg0K KyAgICB1bnNpZ25lZCBjaGFyICpwX3JvbTsNCg0KKyAgICB1bnNpZ25lZCBzaG9ydCBvZmZfdG9f dmJpb3Nfc3RyOw0KDQorICAgIHVuc2lnbmVkIGNoYXIgKnZiaW9zX3N0cjsNCg0KKyAgICBpbnQg Y291bnQ7DQoNCisNCg0KKyAgICBvZmZfdG9fdmJpb3Nfc3RyID0gMDsNCg0KKyAgICBwX3JvbSA9 IGN0eC0+YmlvczsNCg0KKw0KDQorICAgIGlmICgqKHBfcm9tICsgT0ZGU0VUX1RPX0dFVF9BVE9N QklPU19OVU1CRVJfT0ZfU1RSSU5HUykgIT0gMCkgew0KDQorICAgICAgICAgICAgb2ZmX3RvX3Zi aW9zX3N0ciA9DQoNCisgICAgICAgICAgICAgICAgICAgKih1bnNpZ25lZCBzaG9ydCAqKShwX3Jv bSArIE9GRlNFVF9UT19HRVRfQVRPTUJJT1NfU1RSSU5HX1NUQVJUKTsNCg0KKw0KDQorICAgICAg ICAgICAgdmJpb3Nfc3RyID0gKHVuc2lnbmVkIGNoYXIgKikocF9yb20gKyBvZmZfdG9fdmJpb3Nf c3RyKTsNCg0KKyAgICB9IGVsc2Ugew0KDQorICAgICAgICAgICAgdmJpb3Nfc3RyID0gcF9yb20g KyBPRkZTRVRfVE9fVkJJT1NfUEFSVF9OVU1CRVI7DQoNCisgICAgfQ0KDQorDQoNCisgICAgaWYg KCp2Ymlvc19zdHIgPT0gMCkgew0KDQorICAgICAgICAgICAgdmJpb3Nfc3RyID0gYXRvbV9maW5k X3N0cl9pbl9yb20oY3R4LCBCSU9TX0FUT01fUFJFRklYLCAzLCAxMDI0LCA2NCk7DQoNCisgICAg ICAgICAgICBpZiAodmJpb3Nfc3RyID09IE5VTEwpDQoNCisgICAgICAgICAgICAgICAgICAgdmJp b3Nfc3RyICs9IHNpemVvZihCSU9TX0FUT01fUFJFRklYKSAtIDE7DQoNCisgICAgfQ0KDQorICAg IGlmICh2Ymlvc19zdHIgIT0gTlVMTCAmJiAqdmJpb3Nfc3RyID09IDApDQoNCisgICAgICAgICAg ICB2Ymlvc19zdHIrKzsNCg0KKw0KDQorICAgIGlmICh2Ymlvc19zdHIgIT0gTlVMTCkgew0KDQor ICAgICAgICAgICAgY291bnQgPSAwOw0KDQorICAgICAgICAgICAgd2hpbGUgKChjb3VudCA8IEJJ T1NfU1RSSU5HX0xFTkdUSCkgJiYgdmJpb3Nfc3RyW2NvdW50XSA+PSAnICcgJiYNCg0KKyAgICAg ICAgICAgICAgICAgICB2Ymlvc19zdHJbY291bnRdIDw9ICd6Jykgew0KDQorICAgICAgICAgICAg ICAgICBjdHgtPnZiaW9zX3BuW2NvdW50XSA9IHZiaW9zX3N0cltjb3VudF07DQoNCisgICAgICAg ICAgICAgICAgICAgY291bnQrKzsNCg0KKyAgICAgICAgICAgIH0NCg0KKw0KDQorICAgICAgICAg ICAgY3R4LT52Ymlvc19wbltjb3VudF0gPSAwOw0KDQorICAgIH0NCg0KK30NCg0KKw0KDQpzdHJ1 Y3QgYXRvbV9jb250ZXh0ICphbWRncHVfYXRvbV9wYXJzZShzdHJ1Y3QgY2FyZF9pbmZvICpjYXJk LCB2b2lkICpiaW9zKQ0KDQp7DQoNCiAgICAgaW50IGJhc2U7DQoNCiAgICAgc3RydWN0IGF0b21f Y29udGV4dCAqY3R4ID0NCg0KICAgICAgICAga3phbGxvYyhzaXplb2Yoc3RydWN0IGF0b21fY29u dGV4dCksIEdGUF9LRVJORUwpOw0KDQogICAgIGNoYXIgKnN0cjsNCg0KKyAgICBzdHJ1Y3QgX0FU T01fUk9NX0hFQURFUiAqYXRvbV9yb21faGVhZGVyOw0KDQorICAgIHN0cnVjdCBfQVRPTV9NQVNU RVJfREFUQV9UQUJMRSAqbWFzdGVyX3RhYmxlOw0KDQorICAgIHN0cnVjdCBfQVRPTV9GSVJNV0FS RV9JTkZPICphdG9tX2Z3X2luZm87DQoNCiAgICAgdTE2IGlkeDsNCg0KDQoNCiAgICAgaWYgKCFj dHgpDQoNCkBAIC0xMzUzLDYgKzE0OTUsMjIgQEAgc3RydWN0IGF0b21fY29udGV4dCAqYW1kZ3B1 X2F0b21fcGFyc2Uoc3RydWN0IGNhcmRfaW5mbyAqY2FyZCwgdm9pZCAqYmlvcykNCg0KICAgICAg ICAgIHN0cmxjcHkoY3R4LT52Ymlvc192ZXJzaW9uLCBzdHIsIHNpemVvZihjdHgtPnZiaW9zX3Zl cnNpb24pKTsNCg0KICAgICB9DQoNCg0KDQorICAgIGF0b21fcm9tX2hlYWRlciA9IChzdHJ1Y3Qg X0FUT01fUk9NX0hFQURFUiAqKUNTVFIoYmFzZSk7DQoNCisgICAgY3R4LT5zdWJfZGV2X2lkID0g YXRvbV9yb21faGVhZGVyLT51c1N1YnN5c3RlbVZlbmRvcklEOw0KDQorICAgIGN0eC0+c3ViX3Zl ZF9pZCA9IGF0b21fcm9tX2hlYWRlci0+dXNTdWJzeXN0ZW1JRDsNCg0KKyAgICBpZiAoYXRvbV9y b21faGVhZGVyLT51c01hc3RlckRhdGFUYWJsZU9mZnNldCAhPSAwKSB7DQoNCisgICAgICAgICAg ICBtYXN0ZXJfdGFibGUgPSAoc3RydWN0IF9BVE9NX01BU1RFUl9EQVRBX1RBQkxFICopDQoNCisg ICAgICAgICAgICAgICAgICAgIENTVFIoYXRvbV9yb21faGVhZGVyLT51c01hc3RlckRhdGFUYWJs ZU9mZnNldCk7DQoNCisgICAgICAgICAgICBpZiAobWFzdGVyX3RhYmxlLT5MaXN0T2ZEYXRhVGFi bGVzLkZpcm13YXJlSW5mbyAhPSAwKSB7DQoNCisgICAgICAgICAgICAgICAgICAgYXRvbV9md19p bmZvID0gKHN0cnVjdCBfQVRPTV9GSVJNV0FSRV9JTkZPICopDQoNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICBDU1RSKG1hc3Rlcl90YWJsZS0+TGlzdE9mRGF0YVRhYmxlcy5GaXJtd2FyZUlu Zm8pOw0KDQorICAgICAgICAgICAgICAgICAgIGN0eC0+dmVyc2lvbiA9IGF0b21fZndfaW5mby0+ dWxGaXJtd2FyZVJldmlzaW9uOw0KDQorICAgICAgICAgICAgfQ0KDQorICAgIH0NCg0KKw0KDQor ICAgIGF0b21fZ2V0X3ZiaW9zX25hbWUoY3R4KTsNCg0KKyAgICBhdG9tX2dldF92Ymlvc19wbihj dHgpOw0KDQorICAgIGF0b21fZ2V0X3ZiaW9zX2RhdGUoY3R4KTsNCg0KDQoNCiAgICAgcmV0dXJu IGN0eDsNCg0KfQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRv bS5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oDQoNCmluZGV4IGQyNzk3NTlj YWI0Ny4uYzcyOWY3Y2ViYTRmIDEwMDY0NA0KDQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hdG9tLmgNCg0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oDQoN CkBAIC0xMTIsNiArMTEyLDEwIEBAIHN0cnVjdCBkcm1fZGV2aWNlOw0KDQojZGVmaW5lIEFUT01f SU9fU1lTSU8gICAgICAgICAgICAgIDINCg0KI2RlZmluZSBBVE9NX0lPX0lJTyAgICAgICAgIDB4 ODANCg0KDQoNCisjZGVmaW5lIFNUUkxFTl9OT1JNQUwgICAgICAgICAgICAgMzINCg0KKyNkZWZp bmUgU1RSTEVOX0xPTkcgICAgICAgIDY0DQoNCisjZGVmaW5lIFNUUkxFTl9WRVJZTE9ORyAgICAg ICAgICAgMjU0DQoNCisNCg0Kc3RydWN0IGNhcmRfaW5mbyB7DQoNCiAgICAgc3RydWN0IGRybV9k ZXZpY2UgKmRldjsNCg0KICAgICB2b2lkICgqIHJlZ193cml0ZSkoc3RydWN0IGNhcmRfaW5mbyAq LCB1aW50MzJfdCwgdWludDMyX3QpOyAgIC8qICBmaWxsZWQgYnkgZHJpdmVyICovDQoNCkBAIC0x NDAsNiArMTQ0LDEzIEBAIHN0cnVjdCBhdG9tX2NvbnRleHQgew0KDQogICAgIHVpbnQzMl90ICpz Y3JhdGNoOw0KDQogICAgIGludCBzY3JhdGNoX3NpemVfYnl0ZXM7DQoNCiAgICAgY2hhciB2Ymlv c192ZXJzaW9uWzIwXTsNCg0KKw0KDQorICAgIHVpbnQ4X3QgbmFtZVtTVFJMRU5fTE9OR107DQoN CisgICAgdWludDhfdCB2Ymlvc19wbltTVFJMRU5fTE9OR107DQoNCisgICAgdWludDMyX3QgdmVy c2lvbjsNCg0KKyAgICB1aW50OF90IGRhdGVbU1RSTEVOX05PUk1BTF07DQoNCisgICAgdWludDMy X3Qgc3ViX2Rldl9pZDsNCg0KKyAgICB1aW50MzJfdCBzdWJfdmVkX2lkOw0KDQp9Ow0KDQoNCg0K ZXh0ZXJuIGludCBhbWRncHVfYXRvbV9kZWJ1ZzsNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvaW5jbHVkZS9hdG9tZmlybXdhcmUuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvaW5j bHVkZS9hdG9tZmlybXdhcmUuaA0KDQppbmRleCBjNzdlZDM4YzIwZmIuLjNhOGU0MDQwOTliMCAx MDA2NDQNCg0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9pbmNsdWRlL2F0b21maXJtd2FyZS5o DQoNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvaW5jbHVkZS9hdG9tZmlybXdhcmUuaA0KDQpA QCAtMTk3LDYgKzE5Nyw4IEBAIGVudW0gYXRvbV9kcF92c19wcmVlbXBoX2RlZnsNCg0KIERQX1ZT X0xFVkVMMF9QUkVFTVBIX0xFVkVMMyA9IDB4MTgsDQoNCn07DQoNCg0KDQorI2RlZmluZSBCSU9T X0FUT01fUFJFRklYICAgIkFUT01CSU9TIg0KDQorI2RlZmluZSBCSU9TX1NUUklOR19MRU5HVEgg NDMNCg0KDQoNCi8qDQoNCmVudW0gYXRvbV9zdHJpbmdfZGVmew0KDQpAQCAtMjA5LDEyICsyMTEs MTQgQEAgYXRvbV9iaW9zX3N0cmluZyAgICAgICAgICA9ICJBVE9NIg0KDQojcHJhZ21hIHBhY2so MSkgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEJJT1MgZGF0YSBtdXN0IHVzZSBieXRlIGFs aWdtZW50Ki8NCg0KDQoNCmVudW0gYXRvbWJpb3NfaW1hZ2Vfb2Zmc2V0ew0KDQotT0ZGU0VUX1RP X0FUT01fUk9NX0hFQURFUl9QT0lOVEVSICAgICAgICAgID0weDAwMDAwMDQ4LA0KDQotT0ZGU0VU X1RPX0FUT01fUk9NX0lNQUdFX1NJWkUgICAgICAgICAgICAgID0weDAwMDAwMDAyLA0KDQotT0ZG U0VUX1RPX0FUT01CSU9TX0FTSUNfQlVTX01FTV9UWVBFICAgICAgID0weDk0LA0KDQotTUFYU0la RV9PRl9BVE9NQklPU19BU0lDX0JVU19NRU1fVFlQRSAgICAgID0yMCwgIC8qaW5jbHVkaW5nIHRo ZSB0ZXJtaW5hdG9yIDB4MCEqLw0KDQotT0ZGU0VUX1RPX0dFVF9BVE9NQklPU19OVU1CRVJfT0Zf U1RSSU5HUyAgID0weDJmLA0KDQotT0ZGU0VUX1RPX0dFVF9BVE9NQklPU19TVFJJTkdfU1RBUlQg ICAgICAgID0weDZlLA0KDQorICBPRkZTRVRfVE9fQVRPTV9ST01fSEVBREVSX1BPSU5URVIgICAg ICAgICAgPSAweDAwMDAwMDQ4LA0KDQorICBPRkZTRVRfVE9fQVRPTV9ST01fSU1BR0VfU0laRSAg ICAgICAgICAgICAgPSAweDAwMDAwMDAyLA0KDQorICBPRkZTRVRfVE9fQVRPTUJJT1NfQVNJQ19C VVNfTUVNX1RZUEUgICAgICAgPSAweDk0LA0KDQorICBNQVhTSVpFX09GX0FUT01CSU9TX0FTSUNf QlVTX01FTV9UWVBFICAgICAgPSAyMCwgIC8qaW5jbHVkaW5nIHRoZSB0ZXJtaW5hdG9yIDB4MCEq Lw0KDQorICBPRkZTRVRfVE9fR0VUX0FUT01CSU9TX05VTUJFUl9PRl9TVFJJTkdTICAgPSAweDJm LA0KDQorICBPRkZTRVRfVE9fR0VUX0FUT01CSU9TX1NUUklOR19TVEFSVCAgICAgICAgPSAweDZl LA0KDQorICBPRkZTRVRfVE9fVkJJT1NfUEFSVF9OVU1CRVIgICAgICAgICAgICAgICAgPSAweDgw LA0KDQorICBPRkZTRVRfVE9fVkJJT1NfREFURSAgICAgICAgICAgICAgICAgICAgICAgPSAweDUw LA0KDQp9Ow0KDQoNCg0KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCg0KZGlmZiAtLWdpdCBhL2luY2x1 ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9hbWRncHVfZHJtLmgN Cg0KaW5kZXggOGI4MzJmNzQ1OGYyLi43Nzk4MDQ0NWQ0ODYgMTAwNjQ0DQoNCi0tLSBhL2luY2x1 ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oDQoNCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1 X2RybS5oDQoNCkBAIC03NTgsNiArNzU4LDggQEAgc3RydWN0IGRybV9hbWRncHVfY3NfY2h1bmtf ZGF0YSB7DQoNCiAgICAgI2RlZmluZSBBTURHUFVfSU5GT19WQklPU19TSVpFICAgICAgICAgICAg IDB4MQ0KDQogICAgIC8qIFN1YnF1ZXJ5IGlkOiBRdWVyeSB2YmlvcyBpbWFnZSAqLw0KDQogICAg ICNkZWZpbmUgQU1ER1BVX0lORk9fVkJJT1NfSU1BR0UgICAgICAgICAgICAweDINCg0KKyAgICAv KiBTdWJxdWVyeSBpZDogUXVlcnkgdmJpb3MgaW5mbyAqLw0KDQorICAgICNkZWZpbmUgQU1ER1BV X0lORk9fVkJJT1NfSU5GTyAgICAgICAgICAgICAweDMNCg0KLyogUXVlcnkgVVZEIGhhbmRsZXMg Ki8NCg0KI2RlZmluZSBBTURHUFVfSU5GT19OVU1fSEFORExFUyAgICAgICAgICAgICAgICAgICAg MHgxQw0KDQovKiBRdWVyeSBzZW5zb3IgcmVsYXRlZCBpbmZvcm1hdGlvbiAqLw0KDQpAQCAtOTUx LDYgKzk1MywxOSBAQCBzdHJ1Y3QgZHJtX2FtZGdwdV9pbmZvX2Zpcm13YXJlIHsNCg0KICAgICBf X3UzMiBmZWF0dXJlOw0KDQp9Ow0KDQoNCg0KK3N0cnVjdCBkcm1fYW1kZ3B1X2luZm9fdmJpb3Mg ew0KDQorICAgIF9fdTggbmFtZVs2NF07DQoNCisgICAgX191MzIgZGJkZjsNCg0KKyAgICBfX3U4 IHZiaW9zX3BuWzY0XTsNCg0KKyAgICBfX3UzMiB2ZXJzaW9uOw0KDQorICAgIF9fdTggZGF0ZVsz Ml07DQoNCisgICAgX191OCBzZXJpYWxbMTZdOw0KDQorICAgIF9fdTMyIGRldl9pZDsNCg0KKyAg ICBfX3UzMiByZXZfaWQ7DQoNCisgICAgX191MzIgc3ViX2Rldl9pZDsNCg0KKyAgICBfX3UzMiBz dWJfdmVkX2lkOw0KDQorfTsNCg0KKw0KDQojZGVmaW5lIEFNREdQVV9WUkFNX1RZUEVfVU5LTk9X TiAwDQoNCiNkZWZpbmUgQU1ER1BVX1ZSQU1fVFlQRV9HRERSMSAxDQoNCiNkZWZpbmUgQU1ER1BV X1ZSQU1fVFlQRV9ERFIyICAyDQoNCi0tDQoNCjIuMTcuMQ0KDQoNCg0KDQoNCg0KDQoNCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQoNCmFtZC1nZnggbWFp bGluZyBsaXN0DQoNCmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnPG1haWx0bzphbWQtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZz4NCg0KaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4PGh0dHBzOi8vbmFtMTEuc2FmZWxpbmtzLnByb3RlY3Rp b24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRmxpc3RzLmZyZWVkZXNrdG9wLm9yZyUy Rm1haWxtYW4lMkZsaXN0aW5mbyUyRmFtZC1nZngmZGF0YT0wNCU3QzAxJTdDRGF2aWQuTmlldG8l NDBhbWQuY29tJTdDMDNhMjRiNmQ1N2I0NDQ3NzYyMWUwOGQ5MGExNTZmMjMlN0MzZGQ4OTYxZmU0 ODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3NTUxOTA5NDU0NjY3MzcwJTdDVW5r bm93biU3Q1RXRnBiR1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxD SkJUaUk2SWsxaGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzEwMDAmc2RhdGE9ajlhNjFlRVFza3k5R1Vn UCUyRnJHTXNicmVRbHVVQ25qUnlGWldSRzVuYSUyRmslM0QmcmVzZXJ2ZWQ9MD4NCg0KDQoNCg== --_000_E87E8A3B7BDE4286A71D3E242D30A1C7amdcom_ Content-Type: text/html; charset="utf-8" Content-ID: <3D7FDC94AD726C4FBFF4009875F4EB59@namprd12.prod.outlook.com> Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIiB4 bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIiB4bWxuczptPSJo dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiIHhtbG5zPSJo dHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVp dj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPG1l dGEgbmFtZT0iR2VuZXJhdG9yIiBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxNSAoZmlsdGVyZWQg bWVkaXVtKSI+DQo8c3R5bGU+PCEtLQ0KLyogRm9udCBEZWZpbml0aW9ucyAqLw0KQGZvbnQtZmFj ZQ0KCXtmb250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2 IDMgMiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToy IDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNvbnNvbGFz Ow0KCXBhbm9zZS0xOjIgMTEgNiA5IDIgMiA0IDMgMiA0O30NCi8qIFN0eWxlIERlZmluaXRpb25z ICovDQpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsDQoJe21hcmdpbjow aW47DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1m YW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0K CXttc28tc3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246 dW5kZXJsaW5lO30NCmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28t c3R5bGUtcHJpb3JpdHk6OTk7DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRl cmxpbmU7fQ0KcHJlDQoJe21zby1zdHlsZS1wcmlvcml0eTo5OTsNCgltc28tc3R5bGUtbGluazoi SFRNTCBQcmVmb3JtYXR0ZWQgQ2hhciI7DQoJbWFyZ2luOjBpbjsNCgltYXJnaW4tYm90dG9tOi4w MDAxcHQ7DQoJZm9udC1zaXplOjEwLjBwdDsNCglmb250LWZhbWlseToiQ291cmllciBOZXciO30N CnAubXNvbm9ybWFsMCwgbGkubXNvbm9ybWFsMCwgZGl2Lm1zb25vcm1hbDANCgl7bXNvLXN0eWxl LW5hbWU6bXNvbm9ybWFsOw0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRvOw0KCW1hcmdpbi1yaWdo dDowaW47DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFyZ2luLWxlZnQ6MGluOw0K CWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7fQ0K c3Bhbi5IVE1MUHJlZm9ybWF0dGVkQ2hhcg0KCXttc28tc3R5bGUtbmFtZToiSFRNTCBQcmVmb3Jt YXR0ZWQgQ2hhciI7DQoJbXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCW1zby1zdHlsZS1saW5rOiJI VE1MIFByZWZvcm1hdHRlZCI7DQoJZm9udC1mYW1pbHk6Q29uc29sYXM7fQ0KcC5tc2lwaGVhZGVy NGQxMTE0MTgsIGxpLm1zaXBoZWFkZXI0ZDExMTQxOCwgZGl2Lm1zaXBoZWFkZXI0ZDExMTQxOA0K CXttc28tc3R5bGUtbmFtZTptc2lwaGVhZGVyNGQxMTE0MTg7DQoJbXNvLW1hcmdpbi10b3AtYWx0 OmF1dG87DQoJbWFyZ2luLXJpZ2h0OjBpbjsNCgltc28tbWFyZ2luLWJvdHRvbS1hbHQ6YXV0bzsN CgltYXJnaW4tbGVmdDowaW47DQoJZm9udC1zaXplOjExLjBwdDsNCglmb250LWZhbWlseToiQ2Fs aWJyaSIsc2Fucy1zZXJpZjt9DQpzcGFuLkVtYWlsU3R5bGUyMQ0KCXttc28tc3R5bGUtdHlwZTpw ZXJzb25hbDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsNCgljb2xvcjp3aW5k b3d0ZXh0O30NCnNwYW4uRW1haWxTdHlsZTIyDQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsOw0K CWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0K c3Bhbi5FbWFpbFN0eWxlMjMNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9u dC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJY29sb3I6d2luZG93dGV4dDt9DQouTXNv Q2hwRGVmYXVsdA0KCXttc28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsNCglmb250LXNpemU6MTAu MHB0O30NCkBwYWdlIFdvcmRTZWN0aW9uMQ0KCXtzaXplOjguNWluIDExLjBpbjsNCgltYXJnaW46 MS4waW4gMS4waW4gMS4waW4gMS4waW47fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRT ZWN0aW9uMTt9DQotLT48L3N0eWxlPg0KPC9oZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMiIGxpbms9 ImJsdWUiIHZsaW5rPSJwdXJwbGUiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiPkkgdGhpbmsgdGhpcyBjaGFuZ2UgbWF5IGJlIG9ydGhvZ29uYWwgdG8g dGhhdC4gSGVyZSB3ZSB3YW50IHRvIHByb3ZpZGUgYSB3YXkgZm9yIHRoZSB1c2VyIGFwcGxpY2F0 aW9uIHRvIGdldCB0aGUgVkJJT1MgaW5mb3JtYXRpb24gd2l0aG91dCBoYXZpbmcgdG8gcGFyc2Ug dGhlIGJpbmFyeeKApg0KPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpw PiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFuZCBJIGFncmVlIHRoYXQg d2Ugc2hvdWxkIG5vdCBoYXZlIHN0cm9uZyBkZXBlbmRlbmNpZXMgdW5sZXNzIHRoZSBlbmNvdW50 ZXIgYnVnZ3kgVkJJT1Mgb24gdGhlIGZpZWxkLCBidXQgSSBzdGlsbCB0aGluayBpdCBpcyB1c2Vm dWwgZm9yIHRoZSB1c2VyIHRvIGJlIGFibGUgdG8gZGlzcGxheSBpbiBhIHNpbXBsZSB3YXkgdGhl IFZCSU9TIHZlcnNpb24gaW4gdGhlaXIgc3lzdGVtIGlmIHRoZXkgaGFwcGVuIHRvDQogZW5jb3Vu dGVyIGFuIGlzc3VlLjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4m bmJzcDs8L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5SZWdhcmRzLDxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+RGF2aWQ8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5v bmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAw aW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4w cHQ7Y29sb3I6YmxhY2siPkZyb206IDwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox Mi4wcHQ7Y29sb3I6YmxhY2siPkNocmlzdGlhbiBLw7ZuaWcgJmx0O2Nrb2VuaWcubGVpY2h0enVt ZXJrZW5AZ21haWwuY29tJmd0Ozxicj4NCjxiPkRhdGU6IDwvYj5XZWRuZXNkYXksIEFwcmlsIDI4 LCAyMDIxIGF0IDEyOjE1IEFNPGJyPg0KPGI+VG86IDwvYj4mcXVvdDtOaWV0bywgRGF2aWQgTSZx dW90OyAmbHQ7RGF2aWQuTmlldG9AYW1kLmNvbSZndDssICZxdW90O0d1LCBKaWFXZWkgKFdpbGwp JnF1b3Q7ICZsdDtKaWFXZWkuR3VAYW1kLmNvbSZndDssICZxdW90O2FtZC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnJnF1b3Q7ICZsdDthbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZyZndDs8 YnI+DQo8Yj5DYzogPC9iPiZxdW90O0RldWNoZXIsIEFsZXhhbmRlciZxdW90OyAmbHQ7QWxleGFu ZGVyLkRldWNoZXJAYW1kLmNvbSZndDssICZxdW90O1N0RGVuaXMsIFRvbSZxdW90OyAmbHQ7VG9t LlN0RGVuaXNAYW1kLmNvbSZndDs8YnI+DQo8Yj5TdWJqZWN0OiA8L2I+UmU6IFtQQVRDSF0gZHJt L2FtZGdwdTogQWRkIHZiaW9zIGluZm8gaW9jdGwgaW50ZXJmYWNlPG86cD48L286cD48L3NwYW4+ PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286 cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9t OjEyLjBwdCI+V2VsbCBkaXNwbGF5aW5nIHRoZSBWQklPUyBpbmZvcm1hdGlvbiBhbG9uZyB3aXRo IHRoZSBvdGhlciBmaXJtd2FyZSBpbiB1c2Vyc3BhY2UgaXMgY2VydGFpbmx5IHVzZWZ1bC48YnI+ DQo8YnI+DQpXZSBzaG91bGQganVzdCBhdm9pZCBtYWtpbmcgc3Ryb25nIGRlcGVuZGVuY2llcyBv biB0aGF0Ljxicj4NCjxicj4NCkZpcm13YXJlIGFuZCBWQklPUyBtdXN0IGFsd2F5cyBiZSBiYWNr d2FyZCBjb21wYXRpYmxlIGFuZCB0aGUgZHJpdmVyIG11c3QgYWx3YXlzIHdvcmsgd2l0aCBhbnkg cmVsZWFzZWQgZmlybXdhcmUgYW5kIFZCSU9TIGNvbWJpbmF0aW9uLjxicj4NCjxicj4NCldoYXQg d2UgY2FuIGRvIGlzIHRvIGRpc3BsYXkgYSB3YXJuaW5nIHdoZW4gd2UgZGV0ZWN0IGFuZC9vciBv bGQvYnVnZ3kgZmlybXdhcmUuPGJyPg0KPGJyPg0KUmVnYXJkcyw8YnI+DQpDaHJpc3RpYW4uPG86 cD48L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+QW0gMjguMDQuMjEgdW0g MDg6NDcgc2NocmllYiBOaWV0bywgRGF2aWQgTTo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGJs b2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBwdCI+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIj5CZXNpZGVzIHN5c3RlbSBtYW5hZ2VtZW50LCBpdCBwcm92aWRl cyBwYXJzZWFibGUgZGV0YWlscyBvbiB0aGUgVkJJT1MgdmVyc2lvbiBhbmQgaW5mb3JtYXRpb24u IFRoaXMgaXMgdXNlZnVsIHJlbmRlcmVyIGluZm9ybWF0aW9uIGFzIHRoZSBHUFUgYmVoYXZpb3Ig ZGVwZW5kcyBub3Qgb25seSBvbiB0aGUgZHJpdmVyIHZlcnNpb24gYnV0IGFsc28gb24gdGhlIGZp cm13YXJlcyBydW5uaW5nIG9uIHRoZSBHUFUuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlRoZSBB TURHUFVfSU5GTyBpb2N0bCBjb250YWlucyBhIG1ldGhvZCB0byBnZXQgdGhlIHZlcnNpb25zIG9m IHRoZSB1Y29kZSBmb3IgYWxsIHRoZSBJUHMsIGJ1dCBmb3IgVkJJT1MsIG9ubHkgYSB3YXkgdG8g ZHVtcCB0aGUgZW50aXJlIGltYWdlIGlzIHByb3ZpZGVkLiBXaGlsZSBpdCBJcyBwb3NzaWJsZSB0 byBpbXBsZW1lbnQgdGhlIHdob2xlIGxvZ2ljIG9mIFZCSU9TIHBhcnNpbmcgb24gdXNlcnNwYWNl LCBpdA0KIHJlcXVpcmVzIHRoZSBhcHBsaWNhdGlvbiB0byBoYXZlIGRldGFpbHMgb24gdGhlIGhl YWRlciBhbmQgdGFibGUgZm9ybWF0cyB0byBwYXJzZSB0aGUgZGF0YS4gTW9yZW92ZXIgdGhlcmUg aXMgbm8gZ3VhcmFudGVlIHRoYXQgdGhlIGZvcm1hdCBhbmQgaGVhZGVyIGxvY2F0aW9ucyB3aWxs IHJlbWFpbiBjb25zdGFudCBhY3Jvc3MgQVNJQyBnZW5lcmF0aW9ucywgc28gdGhlIG1haW50YWlu YW5jZSBjb3N0IGFuZCBjb21wbGV4aXR5IHNlZW1zIHVucmVhc29uYWJsZS48bzpwPjwvbzpwPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCI+UHJvdmlkaW5nIGEgc2ltcGxlLCBhbmQgc3RhYmxlIGludGVyZmFjZSB0byB0 aGUgYXBwbGljYXRpb24gc2VlbXMgdG8gdXMgbGlrZSBhIHNlbnNpYmxlIGNob2ljZS48bzpwPjwv bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+VGhhbmtzLDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+RGF2aWQ8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxv OnA+PC9vOnA+PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAj QjVDNERGIDEuMHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+PGI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQ7Y29sb3I6YmxhY2siPkZyb206 IDwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi4wcHQ7Y29sb3I6YmxhY2siPmFt ZC1nZngNCjxhIGhyZWY9Im1haWx0bzphbWQtZ2Z4LWJvdW5jZXNAbGlzdHMuZnJlZWRlc2t0b3Au b3JnIj4mbHQ7YW1kLWdmeC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9wLm9yZyZndDs8L2E+IG9u IGJlaGFsZiBvZiAmcXVvdDtHdSwgSmlhV2VpIChXaWxsKSZxdW90Ow0KPGEgaHJlZj0ibWFpbHRv OkppYVdlaS5HdUBhbWQuY29tIj4mbHQ7SmlhV2VpLkd1QGFtZC5jb20mZ3Q7PC9hPjxicj4NCjxi PkRhdGU6IDwvYj5UaHVyc2RheSwgQXByaWwgMjIsIDIwMjEgYXQgODoyNSBQTTxicj4NCjxiPlRv OiA8L2I+Q2hyaXN0aWFuIEvDtm5pZyA8YSBocmVmPSJtYWlsdG86Y2tvZW5pZy5sZWljaHR6dW1l cmtlbkBnbWFpbC5jb20iPiZsdDtja29lbmlnLmxlaWNodHp1bWVya2VuQGdtYWlsLmNvbSZndDs8 L2E+LA0KPGEgaHJlZj0ibWFpbHRvOmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnIj4mcXVv dDthbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZyZxdW90OzwvYT4NCjxhIGhyZWY9Im1haWx0 bzphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZyI+Jmx0O2FtZC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnJmd0OzwvYT48YnI+DQo8Yj5DYzogPC9iPiZxdW90O0RldWNoZXIsIEFsZXhhbmRl ciZxdW90OyA8YSBocmVmPSJtYWlsdG86QWxleGFuZGVyLkRldWNoZXJAYW1kLmNvbSI+Jmx0O0Fs ZXhhbmRlci5EZXVjaGVyQGFtZC5jb20mZ3Q7PC9hPiwgJnF1b3Q7U3REZW5pcywgVG9tJnF1b3Q7 DQo8YSBocmVmPSJtYWlsdG86VG9tLlN0RGVuaXNAYW1kLmNvbSI+Jmx0O1RvbS5TdERlbmlzQGFt ZC5jb20mZ3Q7PC9hPiwgJnF1b3Q7TmlldG8sIERhdmlkIE0mcXVvdDsgPGEgaHJlZj0ibWFpbHRv OkRhdmlkLk5pZXRvQGFtZC5jb20iPg0KJmx0O0RhdmlkLk5pZXRvQGFtZC5jb20mZ3Q7PC9hPjxi cj4NCjxiPlN1YmplY3Q6IDwvYj5SRTogW1BBVENIXSBkcm0vYW1kZ3B1OiBBZGQgdmJpb3MgaW5m byBpb2N0bCBpbnRlcmZhY2U8L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPHAgY2xh c3M9Im1zaXBoZWFkZXI0ZDExMTQxOCIgc3R5bGU9Im1hcmdpbjowaW47bWFyZ2luLWJvdHRvbTou MDAwMXB0Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7QXJpYWwmcXVvdDssc2Fucy1z ZXJpZjtjb2xvcjojMDA3OEQ3Ij5bQU1EIE9mZmljaWFsIFVzZSBPbmx5IC0gSW50ZXJuYWwgRGlz dHJpYnV0aW9uIE9ubHldPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h bCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IaSBDaHJpc3Rp YW4sPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JdCB3aWxsIGJlIHVzZWQg YnkgYSB1c2VyIHNwYWNlIFNNSS1saWIgZm9yIEdQVSBzdGF0dXMgcXVlcnkuPG86cD48L286cD48 L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPkhpIERhdmlkLCBwbGVhc2UgZmVlbCBmcmVlIHRvIGNvcnJlY3QgbXkgc3Rh dGVtZW50IHNpbmNlIEnigJltIG5vdCBzdXJlIEkgaGF2ZSBhIHZpZXcgb2Ygd2hvbGUgcGljdHVy ZS48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+VGhhbmtzLDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh c3M9Ik1zb05vcm1hbCI+Smlhd2VpPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs Ij4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTti b3JkZXItdG9wOnNvbGlkICNFMUUxRTEgMS4wcHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+ DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48Yj5Gcm9tOjwvYj4gQ2hyaXN0aWFuIEvDtm5pZyA8YSBo cmVmPSJtYWlsdG86Y2tvZW5pZy5sZWljaHR6dW1lcmtlbkBnbWFpbC5jb20iPg0KJmx0O2Nrb2Vu aWcubGVpY2h0enVtZXJrZW5AZ21haWwuY29tJmd0OzwvYT4gPGJyPg0KPGI+U2VudDo8L2I+IFRo dXJzZGF5LCBBcHJpbCAyMiwgMjAyMSA5OjI3IFBNPGJyPg0KPGI+VG86PC9iPiBHdSwgSmlhV2Vp IChXaWxsKSA8YSBocmVmPSJtYWlsdG86SmlhV2VpLkd1QGFtZC5jb20iPiZsdDtKaWFXZWkuR3VA YW1kLmNvbSZndDs8L2E+Ow0KPGEgaHJlZj0ibWFpbHRvOmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnIj5hbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZzwvYT48YnI+DQo8Yj5DYzo8L2I+ IERldWNoZXIsIEFsZXhhbmRlciA8YSBocmVmPSJtYWlsdG86QWxleGFuZGVyLkRldWNoZXJAYW1k LmNvbSI+Jmx0O0FsZXhhbmRlci5EZXVjaGVyQGFtZC5jb20mZ3Q7PC9hPjsgU3REZW5pcywgVG9t DQo8YSBocmVmPSJtYWlsdG86VG9tLlN0RGVuaXNAYW1kLmNvbSI+Jmx0O1RvbS5TdERlbmlzQGFt ZC5jb20mZ3Q7PC9hPjxicj4NCjxiPlN1YmplY3Q6PC9iPiBSZTogW1BBVENIXSBkcm0vYW1kZ3B1 OiBBZGQgdmJpb3MgaW5mbyBpb2N0bCBpbnRlcmZhY2U8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0K PC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+SXMgdGhhdCB1c2Vm dWwgdG8gVnVsa2FuL09wZW5HTC9vdGhlciBjbGllbnRzIGluIGFueSB3YXk/PGJyPg0KPGJyPg0K Q2hyaXN0aWFuLjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFt IDIyLjA0LjIxIHVtIDE1OjE4IHNjaHJpZWIgR3UsIEppYVdlaSAoV2lsbCk6PG86cD48L286cD48 L3A+DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1i b3R0b206NS4wcHQiPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5DQyBUb20u PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxibG9ja3F1 b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0b206NS4wcHQiPg0KPHByZT5P biBBcHIgMjIsIDIwMjEsIGF0IDIxOjA5LCBHdSwgSmlhV2VpIChXaWxsKSA8YSBocmVmPSJtYWls dG86SmlhV2VpLkd1QGFtZC5jb20iPiZsdDtKaWFXZWkuR3VAYW1kLmNvbSZndDs8L2E+IHdyb3Rl OjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZs dDtbdjJdW3Vtcl1hZGQtdmJpb3MtaW5mby1xdWVyeS5wYXRjaCZndDs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT5VTVIgcGF0Y2ggd2hpY2ggY2FsbHMgdGhpcyBuZXcgSU9DVEwgYXR0YWNoZWQuPG86 cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+QmVzdCBy ZWdhcmRzLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkppYXdlaTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRv cDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxwcmU+T24gQXByIDIyLCAyMDIxLCBhdCAx MDozNCwgSmlhd2VpIEd1IDxhIGhyZWY9Im1haWx0bzpKaWFXZWkuR3VAYW1kLmNvbSI+Jmx0O0pp YVdlaS5HdUBhbWQuY29tJmd0OzwvYT4gd3JvdGU6PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5i c3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+QWRkIEFNREdQVV9JTkZPX1ZCSU9TX0lORk8gc3Vi cXVlcnkgaWQgZm9yIGRldGFpbGVkIHZiaW9zIGluZm8uPG86cD48L286cD48L3ByZT4NCjxwcmU+ Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+U2lnbmVkLW9mZi1ieTogSmlhd2VpIEd1IDxh IGhyZWY9Im1haWx0bzpKaWF3ZWkuR3VAYW1kLmNvbSI+Jmx0O0ppYXdlaS5HdUBhbWQuY29tJmd0 OzwvYT48bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4tLS08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMmbmJzcDsmbmJzcDsmbmJzcDsg fCZuYnNwOyAxOSArKys8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hdG9tLmMmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgfCAxNTggKysrKysrKysrKysrKysrKysrKysrPG86cD48L286cD48L3ByZT4N CjxwcmU+ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHwmbmJzcDsgMTEgKys8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT5kcml2ZXJzL2dwdS9kcm0vYW1kL2luY2x1ZGUvYXRvbWZpcm13YXJl LmggfCZuYnNwOyAxNiArKy08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5pbmNsdWRlL3VhcGkvZHJt L2FtZGdwdV9kcm0uaCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7IDE1ICsrPG86cD48L286 cD48L3ByZT4NCjxwcmU+NSBmaWxlcyBjaGFuZ2VkLCAyMTMgaW5zZXJ0aW9ucygrKSwgNiBkZWxl dGlvbnMoLSk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT5kaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2ttcy5j IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2ttcy5jPG86cD48L286cD48L3By ZT4NCjxwcmU+aW5kZXggMzllZTg4ZDI5Y2NhLi5hMjBiMDE2YjA1YWIgMTAwNjQ0PG86cD48L286 cD48L3ByZT4NCjxwcmU+LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2tt cy5jPG86cD48L286cD48L3ByZT4NCjxwcmU+KysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X2ttcy5jPG86cD48L286cD48L3ByZT4NCjxwcmU+QEAgLTg2MSw2ICs4NjEsMjUg QEAgaW50IGFtZGdwdV9pbmZvX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRh dGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlscCk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IG1pbigoc2l6ZV90 KXNpemUsIChzaXplX3QpKGJpb3Nfc2l6ZSAtIGJpb3Nfb2Zmc2V0KSkpPG86cD48L286cD48L3By ZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID8gLUVGQVVMVCA6IDA7 PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNhc2UgQU1ER1BVX0lORk9fVkJJT1NfSU5GTzogezxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgc3RydWN0IGRybV9hbWRncHVfaW5mb192YmlvcyB2Ymlvc19pbmZvID0ge307 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBzdHJ1Y3QgYXRvbV9jb250ZXh0ICphdG9tX2NvbnRleHQ7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgYXRvbV9jb250ZXh0ID0g YWRldi0mZ3Q7bW9kZV9pbmZvLmF0b21fY29udGV4dDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBtZW1jcHkodmJpb3NfaW5mby5uYW1l LCBhdG9tX2NvbnRleHQtJmd0O25hbWUsIHNpemVvZihhdG9tX2NvbnRleHQtJmd0O25hbWUpKTs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyB2Ymlvc19pbmZvLmRiZGYgPSBQQ0lfREVWSUQoYWRldi0mZ3Q7cGRldi0mZ3Q7YnVzLSZndDtu dW1iZXIsIGFkZXYtJmd0O3BkZXYtJmd0O2RldmZuKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBtZW1jcHkodmJpb3NfaW5mby52Ymlv c19wbiwgYXRvbV9jb250ZXh0LSZndDt2Ymlvc19wbiwgc2l6ZW9mKGF0b21fY29udGV4dC0mZ3Q7 dmJpb3NfcG4pKTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyB2Ymlvc19pbmZvLnZlcnNpb24gPSBhdG9tX2NvbnRleHQtJmd0O3ZlcnNp b247PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsgbWVtY3B5KHZiaW9zX2luZm8uZGF0ZSwgYXRvbV9jb250ZXh0LSZndDtkYXRlLCBzaXpl b2YoYXRvbV9jb250ZXh0LSZndDtkYXRlKSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbWVtY3B5KHZiaW9zX2luZm8uc2VyaWFsLCBh ZGV2LSZndDtzZXJpYWwsIHNpemVvZihhZGV2LSZndDtzZXJpYWwpKTs8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB2Ymlvc19pbmZvLmRl dl9pZCA9IGFkZXYtJmd0O3BkZXYtJmd0O2RldmljZTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB2Ymlvc19pbmZvLnJldl9pZCA9IGFk ZXYtJmd0O3BkZXYtJmd0O3JldmlzaW9uOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHZiaW9zX2luZm8uc3ViX2Rldl9pZCA9IGF0b21f Y29udGV4dC0mZ3Q7c3ViX2Rldl9pZDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB2Ymlvc19pbmZvLnN1Yl92ZWRfaWQgPSBhdG9tX2Nv bnRleHQtJmd0O3N1Yl92ZWRfaWQ7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgcmV0dXJuIGNvcHlfdG9fdXNlcihvdXQsICZhbXA7dmJpb3NfaW5mbyw8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IG1pbigoc2l6ZV90 KXNpemUsIHNpemVvZih2Ymlvc19pbmZvKSkpID8gLUVGQVVMVCA6IDA7PG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IGRlZmF1bHQ6PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyBEUk1fREVCVUdfS01TKCZxdW90O0ludmFsaWQgcmVxdWVzdCAl ZFxuJnF1b3Q7LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpbmZvLSZndDt2Ymlvc19pbmZvLnR5cGUpOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hdG9tLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hdG9tLmM8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT5pbmRleCAzZGNiOGIzMmY0OGIuLjBlMmYwZWExM2I0MCAxMDA2NDQ8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4tLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hdG9tLmM8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h dG9tLmM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5AQCAtMzEsNiArMzEsNyBAQDxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiNkZWZpbmUgQVRPTV9E RUJVRzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PisjaW5jbHVkZSAmcXVvdDthdG9tZmlybXdhcmUuaCZxdW90OzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPiNpbmNsdWRlICZxdW90O2F0b20uaCZxdW90OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiNp bmNsdWRlICZxdW90O2F0b20tbmFtZXMuaCZxdW90OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiNp bmNsdWRlICZxdW90O2F0b20tYml0cy5oJnF1b3Q7PG86cD48L286cD48L3ByZT4NCjxwcmU+QEAg LTEyOTksMTIgKzEzMDAsMTUzIEBAIHN0YXRpYyB2b2lkIGF0b21faW5kZXhfaWlvKHN0cnVjdCBh dG9tX2NvbnRleHQgKmN0eCwgaW50IGJhc2UpPG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT59PG86cD48L286cD48 L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+K3N0YXRpYyB2b2lkIGF0 b21fZ2V0X3ZiaW9zX25hbWUoc3RydWN0IGF0b21fY29udGV4dCAqY3R4KTxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB1 bnNpZ25lZCBjaGFyICpwX3JvbTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7IHVuc2lnbmVkIGNoYXIgc3RyX251bTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7Jm5ic3A7Jm5ic3A7IHVuc2lnbmVkIHNob3J0IG9mZl90b192Ymlvc19zdHI7PG86cD48L286 cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB1bnNpZ25lZCBjaGFyICpjX3B0cjs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGludCBuYW1lX3NpemU7 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBpbnQgaTs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyBjb25zdCBjaGFyICpuYSA9ICZxdW90Oy0tTi9BLS0mcXVvdDs7PG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjaGFyICpiYWNrOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHBfcm9t ID0gY3R4LSZndDtiaW9zOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cl9udW0gPSAqKHBfcm9tICsgT0ZGU0VUX1RP X0dFVF9BVE9NQklPU19OVU1CRVJfT0ZfU1RSSU5HUyk7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoc3RyX251bSAhPSAwKSB7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBvZmZfdG9fdmJpb3Nfc3RyID08bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICoo dW5zaWduZWQgc2hvcnQgKikocF9yb20gKyBPRkZTRVRfVE9fR0VUX0FUT01CSU9TX1NUUklOR19T VEFSVCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgY19wdHIgPSAodW5zaWduZWQgY2hhciAqKShwX3JvbSArIG9mZl90b192Ymlvc19z dHIpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgfSBlbHNlIHs8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IC8qIGRvIG5vdCBrbm93IHdoZXJlIHRv IGZpbmQgbmFtZSAqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgbWVtY3B5KGN0 eC0mZ3Q7bmFtZSwgbmEsIDcpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgY3R4 LSZndDtuYW1lWzddID0gMDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVy bjs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNw OyAvKjxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKiBz a2lwIHRoZSBhdG9tYmlvcyBzdHJpbmdzLCB1c3VhbGx5IDQ8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICogMXN0IGlzIFAvTiwgMm5kIGlzIEFTSUMsIDNy ZCBpcyBQQ0kgdHlwZSwgNHRoIGlzIE1lbW9yeSB0eXBlPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsmbmJzcDsmbmJzcDsgZm9yIChpID0gMDsgaSAmbHQ7IHN0cl9udW07IGkrKykgezxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgd2hpbGUgKCpjX3B0ciAhPSAwKTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgY19wdHIrKzs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNfcHRy Kys7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB9PG86cD48L286 cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJz cDsgLyogc2tpcCB0aGUgZm9sbG93aW5nIDIgY2hhcnM6IDB4MEQgMHgwQSAqLzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY19wdHIgKz0gMjs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBu YW1lX3NpemUgPSBzdHJubGVuKGNfcHRyLCBTVFJMRU5fTE9ORyAtIDEpOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgbWVtY3B5KGN0eC0mZ3Q7bmFtZSwgY19wdHIs IG5hbWVfc2l6ZSk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBi YWNrID0gY3R4LSZndDtuYW1lICsgbmFtZV9zaXplOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsmbmJzcDsmbmJzcDsgd2hpbGUgKCgqLS1iYWNrKSA9PSAnICcpPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyA7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNw OyZuYnNwOyAqKGJhY2sgKyAxKSA9ICdcMCc7PG86cD48L286cD48L3ByZT4NCjxwcmU+K308bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+K3N0YXRpYyB2b2lk IGF0b21fZ2V0X3ZiaW9zX2RhdGUoc3RydWN0IGF0b21fY29udGV4dCAqY3R4KTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNw OyB1bnNpZ25lZCBjaGFyICpwX3JvbTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IHVuc2lnbmVkIGNoYXIgKmRhdGVfaW5fcm9tOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHBfcm9tID0g Y3R4LSZndDtiaW9zOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGRhdGVfaW5fcm9tID0gcF9yb20gKyBPRkZTRVRfVE9f VkJJT1NfREFURTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjdHgtJmd0O2RhdGVbMF0gPSAnMic7PG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjdHgtJmd0O2RhdGVbMV0gPSAnMCc7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjdHgtJmd0O2RhdGVbMl0g PSBkYXRlX2luX3JvbVs2XTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7IGN0eC0mZ3Q7ZGF0ZVszXSA9IGRhdGVfaW5fcm9tWzddOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY3R4LSZndDtkYXRlWzRdID0gJy8nOzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY3R4LSZndDtkYXRlWzVdID0gZGF0ZV9p bl9yb21bMF07PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjdHgt Jmd0O2RhdGVbNl0gPSBkYXRlX2luX3JvbVsxXTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7Jm5ic3A7Jm5ic3A7IGN0eC0mZ3Q7ZGF0ZVs3XSA9ICcvJzs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGN0eC0mZ3Q7ZGF0ZVs4XSA9IGRhdGVfaW5fcm9tWzNd OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY3R4LSZndDtkYXRl WzldID0gZGF0ZV9pbl9yb21bNF07PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNw OyZuYnNwOyBjdHgtJmd0O2RhdGVbMTBdID0gJyAnOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPism bmJzcDsmbmJzcDsmbmJzcDsgY3R4LSZndDtkYXRlWzExXSA9IGRhdGVfaW5fcm9tWzldOzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY3R4LSZndDtkYXRlWzEyXSA9 IGRhdGVfaW5fcm9tWzEwXTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5i c3A7IGN0eC0mZ3Q7ZGF0ZVsxM10gPSBkYXRlX2luX3JvbVsxMV07PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBjdHgtJmd0O2RhdGVbMTRdID0gZGF0ZV9pbl9yb21b MTJdOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgY3R4LSZndDtk YXRlWzE1XSA9IGRhdGVfaW5fcm9tWzEzXTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7IGN0eC0mZ3Q7ZGF0ZVsxNl0gPSAnXDAnOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPit9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitz dGF0aWMgdW5zaWduZWQgY2hhciAqYXRvbV9maW5kX3N0cl9pbl9yb20oc3RydWN0IGF0b21fY29u dGV4dCAqY3R4LCBjaGFyICpzdHIsIGludCBzdGFydCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyBpbnQgZW5kLCBpbnQgbWF4 bGVuKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZu YnNwOyZuYnNwOyZuYnNwOyB1bnNpZ25lZCBsb25nIHN0cl9vZmY7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB1bnNpZ25lZCBjaGFyICpwX3JvbTs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHVuc2lnbmVkIHNob3J0IHN0cl9sZW47 PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsm bmJzcDsmbmJzcDsgc3RyX29mZiA9IDA7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZu YnNwOyZuYnNwOyBzdHJfbGVuID0gc3RybmxlbihzdHIsIG1heGxlbik7PG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBwX3JvbSA9IGN0eC0mZ3Q7Ymlvczs8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyBmb3IgKDsgc3RhcnQgJmx0Oz0gZW5kOyArK3N0YXJ0KSB7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBmb3IgKHN0cl9vZmYgPSAwOyBzdHJfb2ZmICZsdDsgc3RyX2xlbjsg KytzdHJfb2ZmKSB7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAoc3RyW3N0cl9vZmZdICE9ICoocF9y b20gKyBzdGFydCArIHN0cl9vZmYpKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IGJyZWFrOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlm IChzdHJfb2ZmID09IHN0cl9sZW4gfHwgc3RyW3N0cl9vZmZdID09IDApPG86cD48L286cD48L3By ZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyByZXR1cm4gcF9yb20gKyBzdGFydDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7 IHJldHVybiBOVUxMOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPit9PG86cD48L286cD48L3ByZT4N CjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPitzdGF0aWMgdm9pZCBhdG9tX2dldF92Ymlv c19wbihzdHJ1Y3QgYXRvbV9jb250ZXh0ICpjdHgpPG86cD48L286cD48L3ByZT4NCjxwcmU+K3s8 bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHVuc2lnbmVkIGNoYXIg KnBfcm9tOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgdW5zaWdu ZWQgc2hvcnQgb2ZmX3RvX3ZiaW9zX3N0cjs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7IHVuc2lnbmVkIGNoYXIgKnZiaW9zX3N0cjs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGludCBjb3VudDs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBvZmZfdG9fdmJp b3Nfc3RyID0gMDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHBf cm9tID0gY3R4LSZndDtiaW9zOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGlmICgqKHBfcm9tICsgT0ZGU0VUX1RPX0dF VF9BVE9NQklPU19OVU1CRVJfT0ZfU1RSSU5HUykgIT0gMCkgezxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgb2ZmX3RvX3ZiaW9zX3N0ciA9PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAqKHVu c2lnbmVkIHNob3J0ICopKHBfcm9tICsgT0ZGU0VUX1RPX0dFVF9BVE9NQklPU19TVFJJTkdfU1RB UlQpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IHZiaW9zX3N0ciA9ICh1bnNpZ25lZCBjaGFyICopKHBfcm9tICsgb2ZmX3RvX3ZiaW9z X3N0cik7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB9IGVsc2Ug ezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdmJpb3Nfc3RyID0gcF9yb20gKyBP RkZTRVRfVE9fVkJJT1NfUEFSVF9OVU1CRVI7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNw OyZuYnNwOyZuYnNwOyB9PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgaWYgKCp2Ymlvc19zdHIgPT0gMCkgezxvOnA+PC9v OnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdmJpb3Nfc3RyID0gYXRvbV9maW5kX3N0cl9pbl9y b20oY3R4LCBCSU9TX0FUT01fUFJFRklYLCAzLCAxMDI0LCA2NCk7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBpZiAodmJpb3Nfc3RyID09IE5VTEwpPG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyB2Ymlvc19zdHIgKz0gc2l6ZW9mKEJJT1NfQVRPTV9QUkVGSVgpIC0gMTs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4r Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmICh2Ymlvc19zdHIgIT0gTlVMTCAmYW1wOyZhbXA7ICp2Ymlv c19zdHIgPT0gMCk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHZiaW9zX3N0cisr OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7 Jm5ic3A7Jm5ic3A7IGlmICh2Ymlvc19zdHIgIT0gTlVMTCkgezxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgY291bnQgPSAwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgd2hpbGUgKChjb3VudCAmbHQ7IEJJT1NfU1RSSU5HX0xFTkdUSCkgJmFtcDsmYW1wOyB2Ymlv c19zdHJbY291bnRdICZndDs9ICcgJyAmYW1wOyZhbXA7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdmJpb3Nfc3Ry W2NvdW50XSAmbHQ7PSAneicpIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBjdHgtJmd0O3ZiaW9zX3BuW2NvdW50XSA9IHZiaW9zX3N0 cltjb3VudF07PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBjb3VudCsrOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IGN0eC0mZ3Q7dmJpb3NfcG5bY291bnRdID0gMDs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rfTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5zdHJ1 Y3QgYXRvbV9jb250ZXh0ICphbWRncHVfYXRvbV9wYXJzZShzdHJ1Y3QgY2FyZF9pbmZvICpjYXJk LCB2b2lkICpiaW9zKTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPns8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgaW50IGJhc2U7PG86cD48L286cD48L3ByZT4N CjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBhdG9tX2NvbnRleHQgKmN0eCA9 PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZu YnNwOyZuYnNwOyBremFsbG9jKHNpemVvZihzdHJ1Y3QgYXRvbV9jb250ZXh0KSwgR0ZQX0tFUk5F TCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNoYXIg KnN0cjs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBf QVRPTV9ST01fSEVBREVSICphdG9tX3JvbV9oZWFkZXI7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyBzdHJ1Y3QgX0FUT01fTUFTVEVSX0RBVEFfVEFCTEUgKm1hc3Rl cl90YWJsZTs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVj dCBfQVRPTV9GSVJNV0FSRV9JTkZPICphdG9tX2Z3X2luZm87PG86cD48L286cD48L3ByZT4NCjxw cmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHUxNiBpZHg7PG86cD48L286cD48L3ByZT4NCjxw cmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IGlmICghY3R4KTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkBAIC0xMzUzLDYgKzE0OTUsMjIgQEAg c3RydWN0IGF0b21fY29udGV4dCAqYW1kZ3B1X2F0b21fcGFyc2Uoc3RydWN0IGNhcmRfaW5mbyAq Y2FyZCwgdm9pZCAqYmlvcyk8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cmxjcHkoY3R4LSZndDt2Ymlvc192 ZXJzaW9uLCBzdHIsIHNpemVvZihjdHgtJmd0O3ZiaW9zX3ZlcnNpb24pKTs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgYXRv bV9yb21faGVhZGVyID0gKHN0cnVjdCBfQVRPTV9ST01fSEVBREVSICopQ1NUUihiYXNlKTs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGN0eC0mZ3Q7c3ViX2Rldl9p ZCA9IGF0b21fcm9tX2hlYWRlci0mZ3Q7dXNTdWJzeXN0ZW1WZW5kb3JJRDs8bzpwPjwvbzpwPjwv cHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IGN0eC0mZ3Q7c3ViX3ZlZF9pZCA9IGF0b21f cm9tX2hlYWRlci0mZ3Q7dXNTdWJzeXN0ZW1JRDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5i c3A7Jm5ic3A7Jm5ic3A7IGlmIChhdG9tX3JvbV9oZWFkZXItJmd0O3VzTWFzdGVyRGF0YVRhYmxl T2Zmc2V0ICE9IDApIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IG1hc3Rlcl90 YWJsZSA9IChzdHJ1Y3QgX0FUT01fTUFTVEVSX0RBVEFfVEFCTEUgKik8bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IENTVFIoYXRvbV9yb21faGVhZGVyLSZndDt1c01hc3RlckRhdGFUYWJsZU9mZnNl dCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBpZiAobWFzdGVyX3RhYmxlLSZn dDtMaXN0T2ZEYXRhVGFibGVzLkZpcm13YXJlSW5mbyAhPSAwKSB7PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyBhdG9tX2Z3X2luZm8gPSAoc3RydWN0IF9BVE9NX0ZJUk1XQVJFX0lORk8gKik8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IENTVFIobWFzdGVyX3RhYmxlLSZndDtMaXN0T2ZEYXRhVGFibGVzLkZpcm13YXJlSW5mbyk7PG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBjdHgtJmd0O3ZlcnNpb24gPSBhdG9tX2Z3X2luZm8tJmd0O3VsRmly bXdhcmVSZXZpc2lvbjs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IH08bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rPG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBhdG9tX2dl dF92Ymlvc19uYW1lKGN0eCk7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZu YnNwOyBhdG9tX2dldF92Ymlvc19wbihjdHgpOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJz cDsmbmJzcDsmbmJzcDsgYXRvbV9nZXRfdmJpb3NfZGF0ZShjdHgpOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyByZXR1cm4gY3R4OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPn08bzpwPjwvbzpwPjwvcHJl Pg0KPHByZT5kaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oPG86cD48L286cD48L3ByZT4NCjxwcmU+ aW5kZXggZDI3OTc1OWNhYjQ3Li5jNzI5ZjdjZWJhNGYgMTAwNjQ0PG86cD48L286cD48L3ByZT4N CjxwcmU+LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oPG86cD48L286cD48 L3ByZT4NCjxwcmU+KysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5oPG86cD48 L286cD48L3ByZT4NCjxwcmU+QEAgLTExMiw2ICsxMTIsMTAgQEAgc3RydWN0IGRybV9kZXZpY2U7 PG86cD48L286cD48L3ByZT4NCjxwcmU+I2RlZmluZSBBVE9NX0lPX1NZU0lPJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7IDI8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4jZGVmaW5lIEFUT01fSU9fSUlPJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDB4ODA8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBT VFJMRU5fTk9STUFMJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDMyPG86cD48L286cD48L3ByZT4NCjxwcmU+KyNk ZWZpbmUgU1RSTEVOX0xPTkcmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgNjQ8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rI2RlZmluZSBTVFJMRU5fVkVSWUxPTkcmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg MjU0PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPnN0cnVj dCBjYXJkX2luZm8gezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2OzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyB2b2lkICgqIHJlZ193cml0ZSkoc3RydWN0IGNhcmRfaW5mbyAq LCB1aW50MzJfdCwgdWludDMyX3QpOyZuYnNwOyZuYnNwOyAvKiZuYnNwOyBmaWxsZWQgYnkgZHJp dmVyICovPG86cD48L286cD48L3ByZT4NCjxwcmU+QEAgLTE0MCw2ICsxNDQsMTMgQEAgc3RydWN0 IGF0b21fY29udGV4dCB7PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IHVpbnQzMl90ICpzY3JhdGNoOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyBpbnQgc2NyYXRjaF9zaXplX2J5dGVzOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBjaGFyIHZiaW9zX3ZlcnNpb25bMjBdOzxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPis8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5i c3A7Jm5ic3A7IHVpbnQ4X3QgbmFtZVtTVFJMRU5fTE9OR107PG86cD48L286cD48L3ByZT4NCjxw cmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB1aW50OF90IHZiaW9zX3BuW1NUUkxFTl9MT05HXTs8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IHVpbnQzMl90IHZlcnNpb247 PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyB1aW50OF90IGRhdGVb U1RSTEVOX05PUk1BTF07PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNw OyB1aW50MzJfdCBzdWJfZGV2X2lkOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsmbmJz cDsmbmJzcDsgdWludDMyX3Qgc3ViX3ZlZF9pZDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT59Ozxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPmV4dGVy biBpbnQgYW1kZ3B1X2F0b21fZGVidWc7PG86cD48L286cD48L3ByZT4NCjxwcmU+ZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvaW5jbHVkZS9hdG9tZmlybXdhcmUuaCBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvaW5jbHVkZS9hdG9tZmlybXdhcmUuaDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PmluZGV4IGM3N2VkMzhjMjBmYi4uM2E4ZTQwNDA5OWIwIDEwMDY0NDxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvaW5jbHVkZS9hdG9tZmlybXdhcmUuaDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvaW5jbHVkZS9h dG9tZmlybXdhcmUuaDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkBAIC0xOTcsNiArMTk3LDggQEAg ZW51bSBhdG9tX2RwX3ZzX3ByZWVtcGhfZGVmezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiBEUF9W U19MRVZFTDBfUFJFRU1QSF9MRVZFTDMgPSAweDE4LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPn07 PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+KyNk ZWZpbmUgQklPU19BVE9NX1BSRUZJWCZuYnNwOyZuYnNwOyAmcXVvdDtBVE9NQklPUyZxdW90Ozxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisjZGVmaW5lIEJJT1NfU1RSSU5HX0xFTkdUSCA0MzxvOnA+ PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi8qPG86cD48 L286cD48L3ByZT4NCjxwcmU+ZW51bSBhdG9tX3N0cmluZ19kZWZ7PG86cD48L286cD48L3ByZT4N CjxwcmU+QEAgLTIwOSwxMiArMjExLDE0IEBAIGF0b21fYmlvc19zdHJpbmcmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSAmcXVvdDtBVE9NJnF1 b3Q7PG86cD48L286cD48L3ByZT4NCjxwcmU+I3ByYWdtYSBwYWNrKDEpJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOy8qIEJJT1MgZGF0YSBtdXN0IHVzZSBieXRlIGFsaWdtZW50 Ki88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5l bnVtIGF0b21iaW9zX2ltYWdlX29mZnNldHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4tT0ZGU0VU X1RPX0FUT01fUk9NX0hFQURFUl9QT0lOVEVSJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0weDAwMDAwMDQ4LDxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPi1PRkZTRVRfVE9fQVRPTV9ST01fSU1BR0VfU0laRSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9 MHgwMDAwMDAwMiw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4tT0ZGU0VUX1RPX0FUT01CSU9TX0FT SUNfQlVTX01FTV9UWVBFJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0weDk0 LDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPi1NQVhTSVpFX09GX0FUT01CSU9TX0FTSUNfQlVTX01F TV9UWVBFJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0yMCwmbmJzcDsgLyppbmNsdWRp bmcgdGhlIHRlcm1pbmF0b3IgMHgwISovPG86cD48L286cD48L3ByZT4NCjxwcmU+LU9GRlNFVF9U T19HRVRfQVRPTUJJT1NfTlVNQkVSX09GX1NUUklOR1MmbmJzcDsmbmJzcDsgPTB4MmYsPG86cD48 L286cD48L3ByZT4NCjxwcmU+LU9GRlNFVF9UT19HRVRfQVRPTUJJT1NfU1RSSU5HX1NUQVJUJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0weDZlLDxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPismbmJzcDsgT0ZGU0VUX1RPX0FUT01fUk9NX0hFQURFUl9QT0lOVEVSJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gMHgw MDAwMDA0OCw8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7IE9GRlNFVF9UT19BVE9NX1JP TV9JTUFHRV9TSVpFJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gMHgwMDAwMDAwMiw8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7IE9GRlNFVF9UT19BVE9NQklPU19BU0lDX0JVU19NRU1fVFlQ RSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IDB4OTQsPG86cD48L286cD48 L3ByZT4NCjxwcmU+KyZuYnNwOyBNQVhTSVpFX09GX0FUT01CSU9TX0FTSUNfQlVTX01FTV9UWVBF Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ID0gMjAsJm5ic3A7IC8qaW5jbHVkaW5nIHRo ZSB0ZXJtaW5hdG9yIDB4MCEqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPismbmJzcDsgT0ZGU0VU X1RPX0dFVF9BVE9NQklPU19OVU1CRVJfT0ZfU1RSSU5HUyZuYnNwOyZuYnNwOyA9IDB4MmYsPG86 cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBPRkZTRVRfVE9fR0VUX0FUT01CSU9TX1NUUklO R19TVEFSVCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA9IDB4NmUs PG86cD48L286cD48L3ByZT4NCjxwcmU+KyZuYnNwOyBPRkZTRVRfVE9fVkJJT1NfUEFSVF9OVU1C RVImbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPSAweDgwLDxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsgT0ZGU0VUX1RPX1ZCSU9TX0RBVEUmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsg PSAweDUwLDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPn07PG86cD48L286cD48L3ByZT4NCjxwcmU+ Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxwcmU+LyoqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiombmJzcDsm bmJzcDsgPG86cD48L286cD48L3ByZT4NCjxwcmU+ZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9k cm0vYW1kZ3B1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9hbWRncHVfZHJtLmg8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT5pbmRleCA4YjgzMmY3NDU4ZjIuLjc3OTgwNDQ1ZDQ4NiAxMDA2NDQ8bzpw PjwvbzpwPjwvcHJlPg0KPHByZT4tLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2FtZGdwdV9kcm0uaDxv OnA+PC9vOnA+PC9wcmU+DQo8cHJlPisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5o PG86cD48L286cD48L3ByZT4NCjxwcmU+QEAgLTc1OCw2ICs3NTgsOCBAQCBzdHJ1Y3QgZHJtX2Ft ZGdwdV9jc19jaHVua19kYXRhIHs8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4mbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgI2RlZmluZSBBTURHUFVfSU5GT19WQklPU19TSVpFJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IDB4MTxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAvKiBT dWJxdWVyeSBpZDogUXVlcnkgdmJpb3MgaW1hZ2UgKi88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4m bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgI2RlZmluZSBBTURHUFVfSU5GT19WQklPU19JTUFHRSZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyAweDI8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IC8q IFN1YnF1ZXJ5IGlkOiBRdWVyeSB2YmlvcyBpbmZvICovPG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyAjZGVmaW5lIEFNREdQVV9JTkZPX1ZCSU9TX0lORk8mbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgMHgzPG86cD48L286cD48L3ByZT4NCjxwcmU+LyogUXVlcnkgVVZEIGhhbmRsZXMg Ki88bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4jZGVmaW5lIEFNREdQVV9JTkZPX05VTV9IQU5ETEVT Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IDB4MUM8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4vKiBRdWVyeSBzZW5zb3IgcmVsYXRlZCBpbmZv cm1hdGlvbiAqLzxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPkBAIC05NTEsNiArOTUzLDE5IEBAIHN0 cnVjdCBkcm1fYW1kZ3B1X2luZm9fZmlybXdhcmUgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBfX3UzMiBmZWF0dXJlOzxvOnA+PC9vOnA+PC9wcmU+DQo8 cHJlPn07PG86cD48L286cD48L3ByZT4NCjxwcmU+Jm5ic3A7PG86cD48L286cD48L3ByZT4NCjxw cmU+K3N0cnVjdCBkcm1fYW1kZ3B1X2luZm9fdmJpb3MgezxvOnA+PC9vOnA+PC9wcmU+DQo8cHJl PismbmJzcDsmbmJzcDsmbmJzcDsgX191OCBuYW1lWzY0XTs8bzpwPjwvbzpwPjwvcHJlPg0KPHBy ZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IF9fdTMyIGRiZGY7PG86cD48L286cD48L3ByZT4NCjxwcmU+ KyZuYnNwOyZuYnNwOyZuYnNwOyBfX3U4IHZiaW9zX3BuWzY0XTs8bzpwPjwvbzpwPjwvcHJlPg0K PHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IF9fdTMyIHZlcnNpb247PG86cD48L286cD48L3ByZT4N CjxwcmU+KyZuYnNwOyZuYnNwOyZuYnNwOyBfX3U4IGRhdGVbMzJdOzxvOnA+PC9vOnA+PC9wcmU+ DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgX191OCBzZXJpYWxbMTZdOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgX191MzIgZGV2X2lkOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgX191MzIgcmV2X2lkOzxvOnA+PC9vOnA+PC9w cmU+DQo8cHJlPismbmJzcDsmbmJzcDsmbmJzcDsgX191MzIgc3ViX2Rldl9pZDs8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4rJm5ic3A7Jm5ic3A7Jm5ic3A7IF9fdTMyIHN1Yl92ZWRfaWQ7PG86cD48 L286cD48L3ByZT4NCjxwcmU+K307PG86cD48L286cD48L3ByZT4NCjxwcmU+KzxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPiNkZWZpbmUgQU1ER1BVX1ZSQU1fVFlQRV9VTktOT1dOIDA8bzpwPjwvbzpw PjwvcHJlPg0KPHByZT4jZGVmaW5lIEFNREdQVV9WUkFNX1RZUEVfR0REUjEgMTxvOnA+PC9vOnA+ PC9wcmU+DQo8cHJlPiNkZWZpbmUgQU1ER1BVX1ZSQU1fVFlQRV9ERFIyJm5ic3A7IDI8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4tLSA8bzpwPjwvbzpwPjwvcHJlPg0KPHByZT4yLjE3LjE8bzpwPjwv bzpwPjwvcHJlPg0KPHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0K PHByZT4mbmJzcDs8bzpwPjwvbzpwPjwvcHJlPg0KPC9ibG9ja3F1b3RlPg0KPHByZT4mbmJzcDs8 bzpwPjwvbzpwPjwvcHJlPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0 b206MTIuMHB0Ij4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwcmU+X19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX188bzpwPjwvbzpwPjwvcHJlPg0KPHByZT5hbWQt Z2Z4IG1haWxpbmcgbGlzdDxvOnA+PC9vOnA+PC9wcmU+DQo8cHJlPjxhIGhyZWY9Im1haWx0bzph bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZyI+YW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmc8L2E+PG86cD48L286cD48L3ByZT4NCjxwcmU+PGEgaHJlZj0iaHR0cHM6Ly9uYW0xMS5zYWZl bGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGbGlzdHMuZnJl ZWRlc2t0b3Aub3JnJTJGbWFpbG1hbiUyRmxpc3RpbmZvJTJGYW1kLWdmeCZhbXA7ZGF0YT0wNCU3 QzAxJTdDRGF2aWQuTmlldG8lNDBhbWQuY29tJTdDMDNhMjRiNmQ1N2I0NDQ3NzYyMWUwOGQ5MGEx NTZmMjMlN0MzZGQ4OTYxZmU0ODg0ZTYwOGUxMWE4MmQ5OTRlMTgzZCU3QzAlN0MwJTdDNjM3NTUx OTA5NDU0NjY3MzcwJTdDVW5rbm93biU3Q1RXRnBiR1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFp TENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsxaGFXd2lMQ0pYVkNJNk1uMCUzRCU3QzEwMDAmYW1w O3NkYXRhPWo5YTYxZUVRc2t5OUdVZ1AlMkZyR01zYnJlUWx1VUNualJ5RlpXUkc1bmElMkZrJTNE JmFtcDtyZXNlcnZlZD0wIj5odHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2FtZC1nZng8L2E+PG86cD48L286cD48L3ByZT4NCjwvYmxvY2txdW90ZT4NCjxwIGNs YXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPC9ibG9ja3F1b3RlPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+PGJyPg0KPGJyPg0KPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwv Ym9keT4NCjwvaHRtbD4NCg== --_000_E87E8A3B7BDE4286A71D3E242D30A1C7amdcom_-- --===============1354788086== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx --===============1354788086==--