Received: by 2002:a05:7412:a9a2:b0:e2:908c:2ebd with SMTP id o34csp1332921rdh; Fri, 27 Oct 2023 10:56:19 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFIzU6dYund2YUMRW/8YHdfEUpmucKt86+9Py/JgeRRuPeyIgvPLdoAFVVxoIV/lPI4+IAl X-Received: by 2002:a54:4e99:0:b0:3b2:e461:bcfc with SMTP id c25-20020a544e99000000b003b2e461bcfcmr3396449oiy.20.1698429378749; Fri, 27 Oct 2023 10:56:18 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1698429378; cv=pass; d=google.com; s=arc-20160816; b=g9Yfa9PKPWcxUtOceWEsuZ374mf3LKeSUGYVqRJVjN808uFSzHNT5MPmqdIFqXX8hD SHwKZRk3CNEK6WVOqjYFyL8+4JjzrENVaBnCMEyOtLk7RwiRaS1D5hQenyyCFP7sSwZw +sguAlVb0YX24F/JxsypiavvCl1oG2fbt0AryDMnNal9IeNaWiSNML0Z6bdeVZUpeMjA +oLLFFlauL7TOgRLPg8GdMK+LhN+6vAzG2IHQChV/fjGT+2ObVT1cXa5tZJNvUirgH+d 2zBIjC2QC/n3QP3fgE4CZCdmNIjiAc6hfbf5D/OeSwjUMR030ZCDGd9HxqnnVIF7g8QM NuyA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :msip_labels:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=GpfMzHQdapt8QuNqSdtUaKpMbvqXtkTWl21MYN3t31A=; fh=HzUE5IFGljTpnDnc6sHXu1uvReqdu0dulFAE0Ti/Vhs=; b=BHK5wObJkSGe8/moRRHnUYa89j/uV3Ddr/W1kn6UQPKIBGGjj9l5KVS443mhOfxrVG HTw8fnkCluXg0q5/yzYTe/hELEBUJWHB6fmVSz+VSjNNisADubAwpOweTWxhu6NSBxb/ dua6yVzPcQTEISqURRJzmKkwC8qiUQOCgB75UlzC52rIMDWdl1xza4nsYMIQxVHfz1JG 6+ZKZuW92xYv9adEcyeZpRzb2OKo/XmNEW3ZN1Nn/ROCz1AdPFrJSzJ5AObUIQ1KbNUg e4SKcFMXPgSJ5GZQ9/P40LUIaZ+txs6m/v3ysi+ynY7yD5qPOnMExjG3ONezn3omdexc bJHQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=h8VLFrxr; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id m75-20020a25d44e000000b00d9ab66e0935si3722707ybf.476.2023.10.27.10.56.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Oct 2023 10:56:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=h8VLFrxr; arc=pass (i=1 spf=pass spfdomain=amd.com dkim=pass dkdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 547A68077FA1; Fri, 27 Oct 2023 10:56:14 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232549AbjJ0Rz5 (ORCPT + 99 others); Fri, 27 Oct 2023 13:55:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40318 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232585AbjJ0Rz4 (ORCPT ); Fri, 27 Oct 2023 13:55:56 -0400 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2067.outbound.protection.outlook.com [40.107.94.67]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 148781B8 for ; Fri, 27 Oct 2023 10:55:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W1MOtqdhKSKN/xKSO04rN2CD/4Rrjh/L//BIxnAfydsXMijaOXSaeb66/oqF7csZaucno/CM3MQcMC4sBUzgm14gkW1/87aWBbEnGwqwF8tdPrC7dNgxly1BvJXU0Zt2xQOIuvOuBIzbkswvEgtqDysSrlriRwMhIbtuR/EGjCWtiET0embQD9FaWsbkbiavRNvHWWtIuXeLsJ9ECyLjwTDEK6GmvyzOcIh9XaN7YAcD2nkgB7BClfrNb8vS27uLZFY6xYHH/FlFbSC9QAQ1IAcRbVxO13XBV3SyLxC5gVRUXJlYFCR3Uthy9cZbbihp5L2nePPXMt00r0A0FWxvYQ== 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=GpfMzHQdapt8QuNqSdtUaKpMbvqXtkTWl21MYN3t31A=; b=fI9uC8HmpTuN8xmxd1+07gCXHqB4CirJ+W7d0eqlcfvsiiZulgRSPCXeC2WVfz31WeTR1ZFZUFI2ORpuMnlWVG8GXdWeap33AH+Ndm1I7rkjA7MnonxWAEq6dMFZmZ+8dYM9+iLjKATyK87Se/4tCgtXpuMV+1zAlstpHVQG4FgQq0qOVn2aaqe8LnvHYL5Efgh14OFnpf0CDF6ykDLFtjUsf/K+jScqC7y6FD0HBQymUJobjjf9g1fF5FW63jcvu4TGyIrDlQdewETK84FmAaw211NV3WD6gOxSoWuFufeCHSqavfTmyuVufb1zj6bSNkh618TVMrBtrmtG30QSGA== 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=GpfMzHQdapt8QuNqSdtUaKpMbvqXtkTWl21MYN3t31A=; b=h8VLFrxrj1ONg96T1TeSVTqe31dsa+fnI3a7NcHjsCAw5jO20pPtitYFbnxxBqQJ5vxBq9NhbtDovSi/wq+qAvvRFGNBgqEqZfqUflSnt7PTaCNnRLMojFawGMJP7qMcg1A93YJix/3Qk6rYbG4Ed2yNYGF7Ib4MUAstFMpXbsA= Received: from BL1PR12MB5144.namprd12.prod.outlook.com (2603:10b6:208:316::6) by DM6PR12MB4188.namprd12.prod.outlook.com (2603:10b6:5:215::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Fri, 27 Oct 2023 17:55:48 +0000 Received: from BL1PR12MB5144.namprd12.prod.outlook.com ([fe80::f081:16c7:9129:c010]) by BL1PR12MB5144.namprd12.prod.outlook.com ([fe80::f081:16c7:9129:c010%3]) with mapi id 15.20.6933.024; Fri, 27 Oct 2023 17:55:47 +0000 From: "Deucher, Alexander" To: =?utf-8?B?Sm9zw6kgUGVra2FyaW5lbg==?= , "Koenig, Christian" , "Pan, Xinhui" , "skhan@linuxfoundation.org" CC: "airlied@gmail.com" , "daniel@ffwll.ch" , "amd-gfx@lists.freedesktop.org" , "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , "linux-kernel-mentees@lists.linuxfoundation.org" Subject: RE: [PATCH] drm/radeon: replace 1-element arrays with flexible-array members Thread-Topic: [PATCH] drm/radeon: replace 1-element arrays with flexible-array members Thread-Index: AQHaCPbp2Jz2TqihhUyYLr2dT5DOQbBd6YYw Date: Fri, 27 Oct 2023 17:55:45 +0000 Message-ID: References: <20231027165841.71810-1-jose.pekkarinen@foxhound.fi> In-Reply-To: <20231027165841.71810-1-jose.pekkarinen@foxhound.fi> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_ActionId=37415929-3ea5-459d-999a-df02d528a6e7;MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_ContentBits=0;MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_Enabled=true;MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_Method=Privileged;MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_Name=Public-AIP 2.0;MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_SetDate=2023-10-27T17:48:10Z;MSIP_Label_d4243a53-6221-4f75-8154-e4b33a5707a1_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR12MB5144:EE_|DM6PR12MB4188:EE_ x-ms-office365-filtering-correlation-id: e08ef21f-ddb5-4804-19bd-08dbd715f1d3 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kX+u/wOfyUhyWmQkfrCw9/Gu6ZnYn0pZjPwa7cecKnnyDF9FXtFTrnQHKS+CINHBy/mo/zOsddVC3ptfRsbkefsA4VaGKKtgxefZaDKzHblxE0Nn4dFvaLZELBuDSvZD/7f2/ZxSXspTGqL55tE9/IXGlDPo9pkAGjB4tk/OmsZlkTPZHQMZVNk8Hc2yB5cKZaAUblfD0db7wsdLJNrPkfoDUCqCMDlzQc4HiPtywoi1LOoas3CSV4y7h3n2FE5t92QNnp0sC7qrIUSDODd9XVdzBMshe5BGkfAiFOzKWSgP3GFsaOHPrfz4XmCfd+msoJWE+LwjF4L5GR0o2qFzlkioutUPbeUhPvNQDz+rTFne7MiRAyx2RQAb4c9HCjzd1yGmSGAblLzAcPZzXnZP1w50zwjeh2nyScrnU7khomAo5HrBJUEyAF+68A0U43+60/Z0xzIZ8d8Jl8xeBY1g03zS1DJRDI1Yz8oYr0TuwgJ0NOmdeALROcyKW2mCJIRZKPuqN13aHm/J1oLzmQM3j9fiMtXAZTCKABvwjwKMMf2ioXD3MuoIsdimcBSTi7q4z4PGSpPAX2mV1KJ9ftG6gLXgV0Xg8F0hhvMXQFlkWUi5CYTIcSreDqYCHZuhT/EoQcaWRMW1W7AG2sMrD8F7OuasTyLn92/NTxAtVQYS67E= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR12MB5144.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(366004)(346002)(376002)(136003)(230922051799003)(230273577357003)(230173577357003)(64100799003)(451199024)(1800799009)(186009)(52536014)(38070700009)(122000001)(38100700002)(7696005)(6506007)(19627235002)(8676002)(53546011)(478600001)(66946007)(9686003)(66446008)(316002)(64756008)(4326008)(76116006)(66556008)(54906003)(66476007)(8936002)(2906002)(30864003)(110136005)(41300700001)(83380400001)(71200400001)(26005)(5660300002)(55016003)(86362001)(33656002)(21314003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UHBUSTBjKzJPWnBzOTYzaVhTVXJ0a2wwVlBTVUluTXVXUmMrNmJqcGNwYnFW?= =?utf-8?B?QzZkT3p0R1JBbjg0UGJBQW0zVlFYMFR2UmdQQmhZak9CNm0rYmdwWEgzYWpJ?= =?utf-8?B?TkZ3RTdIMlpFTDJLVVMrNTdrK2RlbHduYW4yT254c2RXVENoVFl2RVFhMUNI?= =?utf-8?B?eWNadnVHMDZvN0ZvU05wazZhMVBlQk02ZlR2cEFmYkpUVnI1YzR2aUNpU0Nn?= =?utf-8?B?Q2dCZ0tYczJ6eVhORVg4VXluM2NMRzVTQ0owZ3JGaHVZdGNxenJTc2NMb25J?= =?utf-8?B?am5NQXZUQktkdjIvVnNXTUFHMFB2RUV3UkllZmRTMi9nWHgzQ2EvWlZqTVRa?= =?utf-8?B?MFRSK3YvUHQ4SVVqVGRLTnNuOXptYlVmeS9QYklSQ3NXR0M2bUVSTWUxZ05l?= =?utf-8?B?MFBxT2E1b3RXTno2OTNPREJGdm5iUW9SN2dybjJjN3FVMjArQVlYVUVuYXA1?= =?utf-8?B?Z2xuUjU3ZG1wbzBWc1Vzc1g5VlY0SVRncVBycVk5djhmL05xY3RNZ3gyU3Fs?= =?utf-8?B?UnNQbDMwaWR0V3VDQnZoT2dFU3RqSWFWWU42ZC85MEVoNmRqeXVBbGttZHBq?= =?utf-8?B?Rzl6ZzZYN014aThCMTZkWVAvMEw5eml0WVREcUxIQlRVZ09CTmNrT2Y2eFg5?= =?utf-8?B?Y3Q4N3ZDajVpV21mdHFYZmZwNnQrQVRKTGtvTndvNVBDdnR5d2gzL3dLMzg3?= =?utf-8?B?YWZKK01RMjRuOUNtV1hqTHEyMis2K3M5Vkg0cE5OdTFYK1o3eWxrM1d4MTRL?= =?utf-8?B?WDF5TnZaVjB0c1g0RE90d0lzVm5FZ2RabGxvWEk3ejJTdWtiNWhlYUZFQnZW?= =?utf-8?B?WGllOUtXVHc2WGplRGIxUmZkZmpFck4rT1F0aGY4QWtIVFo0Z1BIdlo2Nzh1?= =?utf-8?B?ZUhJMDBKSmtrc0ZaZFBKLyt6MEVwTDdEVS96amx0TGZNMzg5MURremVzODVv?= =?utf-8?B?ZmxZRVMxc1dDcU5EazFDOWxDZ2xYYlhaZXp4bDMreFMxTmlSbWhZQjAyNHk3?= =?utf-8?B?QmxwZjV5Wk9WeVpUdi95YmR1aHYwVzczT2JOMndBa1BoSWVqWDNoQm1SS2FC?= =?utf-8?B?dm9LZnl6bEJYTFBZbjRyeXBQVWJlamJXZkJnZDhCbzE2TWo3eTErV2NXa3p2?= =?utf-8?B?MTBEMG0vZ0VaUFZGcU5yWlpWd2U2N0gydHNhZGxHSDd1dkcvanlVL2J5Q1Ft?= =?utf-8?B?NlBiMXZQelRxcW9jcVdhTnQvY2o5cGpFUUJlWHI5eDJSOFNjL0tEOXN5c3FR?= =?utf-8?B?aVlVdVQxUTNSaEo3OCtyWUxTdmhvU0VXRGlpTXVuOVErNDd6cC9zdlU5V2Zi?= =?utf-8?B?OHNRTy8zc1VZQWkwQzBmZmVUQlQ1VnovL2szUStRdXovSlF2NWhQTVNTY0pQ?= =?utf-8?B?bjNzS0dVNzdQNFRzNDk3bjI2dGV2Q1ZyaDdQaVZXVUMzZ1ZBcFNqeWtMckdp?= =?utf-8?B?YWJOU0t6aDFDTENTZmF2Smtxd1drY0FFRkVOV0htai9yalpDazJrZWRXK0Vi?= =?utf-8?B?ZVkvM0R2a0FWYVpTVnRiazRtTldEYVM5TzhSRFA0TEdWYklram0wM0psTlBG?= =?utf-8?B?eHBnckpRKy9QQysyR1UwK1BweHlKU3daM2lpUjNOTDNIejE2bnVaWlhuOTVW?= =?utf-8?B?Vm9kNWw3bHRCaEpORDJCZFE2T3J5NkRiMGNMc0VDQzhJMGVldW95S3hBSVA2?= =?utf-8?B?bXNpTHBNeHZPdXUzZ0llNUxNY0w5UldSUng4cHQ4VXpNSS9mUzZaRDBaR3Ja?= =?utf-8?B?UitNd253QWwzY2VwenIwWmFGN2d5TzhYV3c3MXNYK3VPdERZaHFxOStubVVX?= =?utf-8?B?bG1ZVTdNVUdEOUUvZGVaeUZzUWE1aExBYVFHd3VUWHZmaStkZm1lYmNkLzMw?= =?utf-8?B?ODdqWDRMREovd0FMNXl1Um5ScWpyZHc0dCsvQXM2SFhQaTk4QlhCenhwNWRm?= =?utf-8?B?eTB6Z0VheEpLMHppc2VCTG02WHMrVVEvd1NPT0x0N1dmZTNhd052S1FPdXFt?= =?utf-8?B?UnBnSFR4NTVWQW91ZHNMMGxraGtvWHlMZTFvZlZVM3hLRStqUVRqaFU2cEV5?= =?utf-8?B?em91R3JjMWc3ZWd2ZkY4MzJScnIzTHNIM0pjbGhGVHRwMFZyZkFLRC9DN0hH?= =?utf-8?Q?NX9A=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR12MB5144.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e08ef21f-ddb5-4804-19bd-08dbd715f1d3 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Oct 2023 17:55:45.4034 (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: kTeRfePj0Gs0ECNIceN8FF3z2DySyHs7fGC2cG1OtZ/tU3eZu0/MFDhBI/5IL0g+ssFuxCrVvF4HLretY+ahrA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4188 X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Fri, 27 Oct 2023 10:56:14 -0700 (PDT) W1B1YmxpY10NCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBKb3PDqSBQ ZWtrYXJpbmVuIDxqb3NlLnBla2thcmluZW5AZm94aG91bmQuZmk+DQo+IFNlbnQ6IEZyaWRheSwg T2N0b2JlciAyNywgMjAyMyAxMjo1OSBQTQ0KPiBUbzogRGV1Y2hlciwgQWxleGFuZGVyIDxBbGV4 YW5kZXIuRGV1Y2hlckBhbWQuY29tPjsgS29lbmlnLCBDaHJpc3RpYW4NCj4gPENocmlzdGlhbi5L b2VuaWdAYW1kLmNvbT47IFBhbiwgWGluaHVpIDxYaW5odWkuUGFuQGFtZC5jb20+Ow0KPiBza2hh bkBsaW51eGZvdW5kYXRpb24ub3JnDQo+IENjOiBKb3PDqSBQZWtrYXJpbmVuIDxqb3NlLnBla2th cmluZW5AZm94aG91bmQuZmk+OyBhaXJsaWVkQGdtYWlsLmNvbTsNCj4gZGFuaWVsQGZmd2xsLmNo OyBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZzsgZHJpLQ0KPiBkZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmc7IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7IGxpbnV4LWtlcm5lbC0N Cj4gbWVudGVlc0BsaXN0cy5saW51eGZvdW5kYXRpb24ub3JnDQo+IFN1YmplY3Q6IFtQQVRDSF0g ZHJtL3JhZGVvbjogcmVwbGFjZSAxLWVsZW1lbnQgYXJyYXlzIHdpdGggZmxleGlibGUtYXJyYXkN Cj4gbWVtYmVycw0KPg0KPiBSZXBvcnRlZCBieSBjb2NjaW5lbGxlLCB0aGUgZm9sbG93aW5nIHBh dGNoIHdpbGwgbW92ZSB0aGUgZm9sbG93aW5nIDEgZWxlbWVudA0KPiBhcnJheXMgdG8gZmxleGli bGUgYXJyYXlzLg0KPg0KPiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zLmg6NTUyMzoz Mi00ODogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5IG1lbWJlciBpbnN0ZWFkDQo+ICho dHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9wcm9jZXNzL2RlcHJlY2F0ZWQu aHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFycmF5cykNCj4gZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjU1NDU6MzItNDg6IFdBUk5JTkcgdXNlIGZsZXhpYmxl LQ0KPiBhcnJheSBtZW1iZXIgaW5zdGVhZA0KPiAoaHR0cHM6Ly93d3cua2VybmVsLm9yZy9kb2Mv aHRtbC9sYXRlc3QvcHJvY2Vzcy9kZXByZWNhdGVkLmh0bWwjemVyby0NCj4gbGVuZ3RoLWFuZC1v bmUtZWxlbWVudC1hcnJheXMpDQo+IGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vYXRvbWJpb3MuaDo1 NDYxOjM0LTQ0OiBXQVJOSU5HIHVzZSBmbGV4aWJsZS0NCj4gYXJyYXkgbWVtYmVyIGluc3RlYWQN Cj4gKGh0dHBzOi8vd3d3Lmtlcm5lbC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVj YXRlZC5odG1sI3plcm8tDQo+IGxlbmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2 ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zLmg6NDQ0NzozMC00MDogV0FSTklORyB1c2UgZmxl eGlibGUtDQo+IGFycmF5IG1lbWJlciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3Jn L2RvYy9odG1sL2xhdGVzdC9wcm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgt YW5kLW9uZS1lbGVtZW50LWFycmF5cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlv cy5oOjQyMzY6MzAtNDE6IFdBUk5JTkcgdXNlIGZsZXhpYmxlLQ0KPiBhcnJheSBtZW1iZXIgaW5z dGVhZA0KPiAoaHR0cHM6Ly93d3cua2VybmVsLm9yZy9kb2MvaHRtbC9sYXRlc3QvcHJvY2Vzcy9k ZXByZWNhdGVkLmh0bWwjemVyby0NCj4gbGVuZ3RoLWFuZC1vbmUtZWxlbWVudC1hcnJheXMpDQo+ IGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vYXRvbWJpb3MuaDo3MDQ0OjI0LTM3OiBXQVJOSU5HIHVz ZSBmbGV4aWJsZS0NCj4gYXJyYXkgbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3Lmtlcm5l bC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8tDQo+IGxl bmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0 b21iaW9zLmg6NzA1NDoyNC0zNzogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5IG1lbWJl ciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9wcm9j ZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFycmF5 cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjcwOTU6MjgtNDU6IFdBUk5J TkcgdXNlIGZsZXhpYmxlLQ0KPiBhcnJheSBtZW1iZXIgaW5zdGVhZA0KPiAoaHR0cHM6Ly93d3cu a2VybmVsLm9yZy9kb2MvaHRtbC9sYXRlc3QvcHJvY2Vzcy9kZXByZWNhdGVkLmh0bWwjemVyby0N Cj4gbGVuZ3RoLWFuZC1vbmUtZWxlbWVudC1hcnJheXMpDQo+IGRyaXZlcnMvZ3B1L2RybS9yYWRl b24vYXRvbWJpb3MuaDo3NTUzOjgtMTc6IFdBUk5JTkcgdXNlIGZsZXhpYmxlLWFycmF5DQo+IG1l bWJlciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9w cm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFy cmF5cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjc1NTk6OC0xNzogV0FS TklORyB1c2UgZmxleGlibGUtYXJyYXkNCj4gbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3 Lmtlcm5lbC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8t DQo+IGxlbmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL2F0b21iaW9zLmg6Mzg5NjoyNy0zNzogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5 IG1lbWJlciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVz dC9wcm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50 LWFycmF5cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjU0NDM6MTYtMjU6 IFdBUk5JTkcgdXNlIGZsZXhpYmxlLQ0KPiBhcnJheSBtZW1iZXIgaW5zdGVhZA0KPiAoaHR0cHM6 Ly93d3cua2VybmVsLm9yZy9kb2MvaHRtbC9sYXRlc3QvcHJvY2Vzcy9kZXByZWNhdGVkLmh0bWwj emVyby0NCj4gbGVuZ3RoLWFuZC1vbmUtZWxlbWVudC1hcnJheXMpDQo+IGRyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vYXRvbWJpb3MuaDo1NDU0OjM0LTQzOiBXQVJOSU5HIHVzZSBmbGV4aWJsZS0NCj4g YXJyYXkgbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3Lmtlcm5lbC5vcmcvZG9jL2h0bWwv bGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8tDQo+IGxlbmd0aC1hbmQtb25lLWVs ZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zLmg6NDYwMzoy MS0zMjogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5IG1lbWJlciBpbnN0ZWFkDQo+ICho dHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9wcm9jZXNzL2RlcHJlY2F0ZWQu aHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFycmF5cykNCj4gZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjYyOTk6MzItNDQ6IFdBUk5JTkcgdXNlIGZsZXhpYmxl LQ0KPiBhcnJheSBtZW1iZXIgaW5zdGVhZA0KPiAoaHR0cHM6Ly93d3cua2VybmVsLm9yZy9kb2Mv aHRtbC9sYXRlc3QvcHJvY2Vzcy9kZXByZWNhdGVkLmh0bWwjemVyby0NCj4gbGVuZ3RoLWFuZC1v bmUtZWxlbWVudC1hcnJheXMpDQo+IGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vYXRvbWJpb3MuaDo0 NjI4OjMyLTQ2OiBXQVJOSU5HIHVzZSBmbGV4aWJsZS0NCj4gYXJyYXkgbWVtYmVyIGluc3RlYWQN Cj4gKGh0dHBzOi8vd3d3Lmtlcm5lbC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVj YXRlZC5odG1sI3plcm8tDQo+IGxlbmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2 ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zLmg6NjI4NToyOS0zOTogV0FSTklORyB1c2UgZmxl eGlibGUtDQo+IGFycmF5IG1lbWJlciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3Jn L2RvYy9odG1sL2xhdGVzdC9wcm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgt YW5kLW9uZS1lbGVtZW50LWFycmF5cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlv cy5oOjQyOTY6MzAtMzY6IFdBUk5JTkcgdXNlIGZsZXhpYmxlLQ0KPiBhcnJheSBtZW1iZXIgaW5z dGVhZA0KPiAoaHR0cHM6Ly93d3cua2VybmVsLm9yZy9kb2MvaHRtbC9sYXRlc3QvcHJvY2Vzcy9k ZXByZWNhdGVkLmh0bWwjemVyby0NCj4gbGVuZ3RoLWFuZC1vbmUtZWxlbWVudC1hcnJheXMpDQo+ IGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vYXRvbWJpb3MuaDo0NzU2OjI4LTM2OiBXQVJOSU5HIHVz ZSBmbGV4aWJsZS0NCj4gYXJyYXkgbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3Lmtlcm5l bC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8tDQo+IGxl bmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0 b21iaW9zLmg6NDA2NDoyMi0zNTogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5IG1lbWJl ciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9wcm9j ZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFycmF5 cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjczMjc6OS0yNDogV0FSTklO RyB1c2UgZmxleGlibGUtYXJyYXkNCj4gbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3Lmtl cm5lbC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8tDQo+ IGxlbmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9u L2F0b21iaW9zLmg6NzMzMjozMi01MzogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5IG1l bWJlciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9w cm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFy cmF5cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjYwMzA6OC0xNzogV0FS TklORyB1c2UgZmxleGlibGUtYXJyYXkNCj4gbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3 Lmtlcm5lbC5vcmcvZG9jL2h0bWwvbGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8t DQo+IGxlbmd0aC1hbmQtb25lLWVsZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFk ZW9uL2F0b21iaW9zLmg6NzM2MjoyNi00MTogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5 IG1lbWJlciBpbnN0ZWFkDQo+IChodHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVz dC9wcm9jZXNzL2RlcHJlY2F0ZWQuaHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50 LWFycmF5cykNCj4gZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oOjczNjk6MjktNDQ6 IFdBUk5JTkcgdXNlIGZsZXhpYmxlLQ0KPiBhcnJheSBtZW1iZXIgaW5zdGVhZA0KPiAoaHR0cHM6 Ly93d3cua2VybmVsLm9yZy9kb2MvaHRtbC9sYXRlc3QvcHJvY2Vzcy9kZXByZWNhdGVkLmh0bWwj emVyby0NCj4gbGVuZ3RoLWFuZC1vbmUtZWxlbWVudC1hcnJheXMpDQo+IGRyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vYXRvbWJpb3MuaDo3MzQ5OjI0LTMyOiBXQVJOSU5HIHVzZSBmbGV4aWJsZS0NCj4g YXJyYXkgbWVtYmVyIGluc3RlYWQNCj4gKGh0dHBzOi8vd3d3Lmtlcm5lbC5vcmcvZG9jL2h0bWwv bGF0ZXN0L3Byb2Nlc3MvZGVwcmVjYXRlZC5odG1sI3plcm8tDQo+IGxlbmd0aC1hbmQtb25lLWVs ZW1lbnQtYXJyYXlzKQ0KPiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9zLmg6NzM1NToy Ny0zNTogV0FSTklORyB1c2UgZmxleGlibGUtDQo+IGFycmF5IG1lbWJlciBpbnN0ZWFkDQo+ICho dHRwczovL3d3dy5rZXJuZWwub3JnL2RvYy9odG1sL2xhdGVzdC9wcm9jZXNzL2RlcHJlY2F0ZWQu aHRtbCN6ZXJvLQ0KPiBsZW5ndGgtYW5kLW9uZS1lbGVtZW50LWFycmF5cykNCj4NCj4gU2lnbmVk LW9mZi1ieTogSm9zw6kgUGVra2FyaW5lbiA8am9zZS5wZWtrYXJpbmVuQGZveGhvdW5kLmZpPg0K DQpQbGVhc2UgdmVyaWZ5IHRoYXQgY2hhbmdpbmcgdGhlc2UgdG8gdmFyaWFibGUgc2l6ZWQgYXJy YXlzIGRvZXMgbm90IGJyZWFrIGFueSBjYWxjdWxhdGlvbnMgYmFzZWQgb24gdGhlIG9sZCBzaXpl IGluIHRoZSBkcml2ZXIuICBNb3JlIGJlbG93Lg0KDQo+IC0tLQ0KPiAgZHJpdmVycy9ncHUvZHJt L3JhZGVvbi9hdG9tYmlvcy5oIHwgNTQgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQ0K PiAgMSBmaWxlIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQ0KPg0K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oDQo+IGIvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oDQo+IGluZGV4IDhhNjYyMWYxZTgyYy4uN2Zh MTYwNmJlOTJjIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b21iaW9z LmgNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tYmlvcy5oDQo+IEBAIC0zODkz LDcgKzM4OTMsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQVRPTV9HUElPX1BJTl9BU1NJR05NRU5UDQo+ IHR5cGVkZWYgc3RydWN0IF9BVE9NX0dQSU9fUElOX0xVVCAgew0KPiAgICBBVE9NX0NPTU1PTl9U QUJMRV9IRUFERVIgIHNIZWFkZXI7DQo+IC0gIEFUT01fR1BJT19QSU5fQVNTSUdOTUVOVCAgIGFz R1BJT19QaW5bMV07DQo+ICsgIEFUT01fR1BJT19QSU5fQVNTSUdOTUVOVCAgIGFzR1BJT19QaW5b XTsNCj4gIH1BVE9NX0dQSU9fUElOX0xVVDsNCj4NCj4NCj4gLyoqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KPiAqKioqKioq KioqLw0KPiBAQCAtNDA2MSw3ICs0MDYxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QNCj4gX0FUT01fU1JD X0RTVF9UQUJMRV9GT1JfT05FX09CSkVDVCAgICAgICAgIC8vdXNTcmNEc3RUYWJsZU9mZnNldA0K PiAgICBVQ0hBUiAgICAgICAgICAgICAgIHVjTnVtYmVyT2ZTcmM7DQo+ICAgIFVTSE9SVCAgICAg ICAgICAgICAgdXNTcmNPYmplY3RJRFsxXTsNCj4gICAgVUNIQVIgICAgICAgICAgICAgICB1Y051 bWJlck9mRHN0Ow0KPiAtICBVU0hPUlQgICAgICAgICAgICAgIHVzRHN0T2JqZWN0SURbMV07DQo+ ICsgIFVTSE9SVCAgICAgICAgICAgICAgdXNEc3RPYmplY3RJRFtdOw0KPiAgfUFUT01fU1JDX0RT VF9UQUJMRV9GT1JfT05FX09CSkVDVDsNCj4NCj4NCj4gQEAgLTQyMzMsNyArNDIzMyw3IEBAIHR5 cGVkZWYgc3RydWN0DQo+IF9BVE9NX0NPTk5FQ1RPUl9ERVZJQ0VfVEFHX1JFQ09SRA0KPiAgICBB VE9NX0NPTU1PTl9SRUNPUkRfSEVBREVSICAgc2hlYWRlcjsNCj4gICAgVUNIQVIgICAgICAgICAg ICAgICAgICAgICAgIHVjTnVtYmVyT2ZEZXZpY2U7DQo+ICAgIFVDSEFSICAgICAgICAgICAgICAg ICAgICAgICB1Y1Jlc2VydmVkOw0KPiAtICBBVE9NX0NPTk5FQ1RPUl9ERVZJQ0VfVEFHICAgYXNE ZXZpY2VUYWdbMV07ICAgICAgICAgLy9UaGlzIElkIGlzIHNhbWUgYXMNCj4gIkFUT01fREVWSUNF X1hYWF9TVVBQT1JUIiwgMSBpcyBvbmx5IGZvciBhbGxvY2F0aW9uDQo+ICsgIEFUT01fQ09OTkVD VE9SX0RFVklDRV9UQUcgICBhc0RldmljZVRhZ1tdOyAgICAgICAgICAvL1RoaXMgSWQgaXMgc2Ft ZSBhcw0KPiAiQVRPTV9ERVZJQ0VfWFhYX1NVUFBPUlQiLCAxIGlzIG9ubHkgZm9yIGFsbG9jYXRp b24NCj4gIH1BVE9NX0NPTk5FQ1RPUl9ERVZJQ0VfVEFHX1JFQ09SRDsNCj4NCj4NCj4gQEAgLTQy OTMsNyArNDI5Myw3IEBAIHR5cGVkZWYgc3RydWN0DQo+IF9BVE9NX09CSkVDVF9HUElPX0NOVExf UkVDT1JEDQo+ICAgIEFUT01fQ09NTU9OX1JFQ09SRF9IRUFERVIgICBzaGVhZGVyOw0KPiAgICBV Q0hBUiAgICAgICAgICAgICAgICAgICAgICAgdWNGbGFnczsgICAgICAgICAgICAgICAgLy8gRnV0 dXJlIGV4cG5hZGliaWxpdHkNCj4gICAgVUNIQVIgICAgICAgICAgICAgICAgICAgICAgIHVjTnVt YmVyT2ZQaW5zOyAgICAgICAgIC8vIE51bWJlciBvZiBHUElPIHBpbnMgdXNlZCB0bw0KPiBjb250 cm9sIHRoZSBvYmplY3QNCj4gLSAgQVRPTV9HUElPX1BJTl9DT05UUk9MX1BBSVIgIGFzR3Bpb1sx XTsgICAgICAgICAgICAgIC8vIHRoZSByZWFsIGdwaW8gcGluIHBhaXINCj4gZGV0ZXJtaW5lZCBi eSBudW1iZXIgb2YgcGlucyB1Y051bWJlck9mUGlucw0KPiArICBBVE9NX0dQSU9fUElOX0NPTlRS T0xfUEFJUiAgYXNHcGlvW107ICAgICAgICAgICAgICAgLy8gdGhlIHJlYWwgZ3BpbyBwaW4gcGFp cg0KPiBkZXRlcm1pbmVkIGJ5IG51bWJlciBvZiBwaW5zIHVjTnVtYmVyT2ZQaW5zDQo+ICB9QVRP TV9PQkpFQ1RfR1BJT19DTlRMX1JFQ09SRDsNCj4NCj4gIC8vRGVmaW5pdGlvbnMgZm9yIEdQSU8g cGluIHN0YXRlDQo+IEBAIC00NDQ0LDcgKzQ0NDQsNyBAQCB0eXBlZGVmIHN0cnVjdA0KPiBfQVRP TV9CUkFDS0VUX0xBWU9VVF9SRUNPUkQNCj4gICAgVUNIQVIgICAgICAgICAgICAgICAgICAgICAg IHVjV2lkdGg7DQo+ICAgIFVDSEFSICAgICAgICAgICAgICAgICAgICAgICB1Y0Nvbm5OdW07DQo+ ICAgIFVDSEFSICAgICAgICAgICAgICAgICAgICAgICB1Y1Jlc2VydmVkOw0KPiAtICBBVE9NX0NP Tk5FQ1RPUl9MQVlPVVRfSU5GTyAgYXNDb25uSW5mb1sxXTsNCj4gKyAgQVRPTV9DT05ORUNUT1Jf TEFZT1VUX0lORk8gIGFzQ29ubkluZm9bXTsNCj4gIH1BVE9NX0JSQUNLRVRfTEFZT1VUX1JFQ09S RDsNCj4NCj4NCj4gLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKg0KPiAqKioqKioqKioqLw0KPiBAQCAtNDYwMCw3ICs0NjAw LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgIF9BVE9NX0kyQ19WT0xUQUdFX09CSkVDVF9WMw0KPiAgICAg VUNIQVIgICAgdWNWb2x0YWdlQ29udHJvbEFkZHJlc3M7DQo+ICAgICBVQ0hBUiAgICB1Y1ZvbHRh Z2VDb250cm9sT2Zmc2V0Ow0KPiAgICAgVUxPTkcgICAgdWxSZXNlcnZlZDsNCj4gLSAgIFZPTFRB R0VfTFVUX0VOVFJZIGFzVm9sSTJjTHV0WzFdOyAgICAgICAgLy8gZW5kIHdpdGggMHhmZg0KPiAr ICAgVk9MVEFHRV9MVVRfRU5UUlkgYXNWb2xJMmNMdXRbXTsgICAgICAgICAvLyBlbmQgd2l0aCAw eGZmDQo+ICB9QVRPTV9JMkNfVk9MVEFHRV9PQkpFQ1RfVjM7DQo+DQo+ICAvLyBBVE9NX0kyQ19W T0xUQUdFX09CSkVDVF9WMy51Y1ZvbHRhZ2VDb250cm9sRmxhZw0KPiBAQCAtNDYyNSw3ICs0NjI1 LDcgQEAgdHlwZWRlZiBzdHJ1Y3QNCj4gX0FUT01fTEVBS0FHRV9WT0xUQUdFX09CSkVDVF9WMw0K PiAgICAgVUNIQVIgICAgdWNMZWFrYWdlRW50cnlOdW07ICAgICAgICAgICAvLyBpbmRpY2F0ZSB0 aGUgZW50cnkgbnVtYmVyIG9mDQo+IExlYWthZ2VJZC9Wb2x0YWdlIEx1dCB0YWJsZQ0KPiAgICAg VUNIQVIgICAgdWNSZXNlcnZlZFsyXTsNCj4gICAgIFVMT05HICAgIHVsTWF4Vm9sdGFnZUxldmVs Ow0KPiAtICAgTEVBS0FHRV9WT0xUQUdFX0xVVF9FTlRSWV9WMiBhc0xlYWthZ2VJZEx1dFsxXTsN Cj4gKyAgIExFQUtBR0VfVk9MVEFHRV9MVVRfRU5UUllfVjIgYXNMZWFrYWdlSWRMdXRbXTsNCj4g IH1BVE9NX0xFQUtBR0VfVk9MVEFHRV9PQkpFQ1RfVjM7DQo+DQo+DQo+IEBAIC00NzUzLDcgKzQ3 NTMsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQVRPTV9QT1dFUl9TT1VSQ0VfSU5GTyAgew0KPiAgICAg ICAgICAgICAgIEFUT01fQ09NTU9OX1RBQkxFX0hFQURFUiAgICAgICAgICAgICAgICBhc0hlYWRl cjsNCj4gICAgICAgICAgICAgICBVQ0hBUg0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGFzUHdyYmVoYXZlWzE2XTsNCj4gLSAgICAgICAgICAgICBBVE9NX1BPV0VSX1NP VVJDRV9PQkpFQ1QgICAgICAgICAgICAgICAgYXNQd3JPYmpbMV07DQo+ICsgICAgICAgICAgICAg QVRPTV9QT1dFUl9TT1VSQ0VfT0JKRUNUICAgICAgICAgICAgICAgIGFzUHdyT2JqW107DQo+ICB9 QVRPTV9QT1dFUl9TT1VSQ0VfSU5GTzsNCj4NCj4NCj4gQEAgLTU0NDAsNyArNTQ0MCw3IEBAIHR5 cGVkZWYgc3RydWN0IF9BVE9NX0ZVU0lPTl9TWVNURU1fSU5GT19WMg0KPiB0eXBlZGVmIHN0cnVj dCBfQVRPTV9JMkNfREFUQV9SRUNPUkQgIHsNCj4gICAgVUNIQVIgICAgICAgICB1Y051bmJlck9m Qnl0ZXM7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vSW5k aWNhdGVzIGhvdyBtYW55DQo+IGJ5dGVzIFNXIG5lZWRzIHRvIHdyaXRlIHRvIHRoZSBleHRlcm5h bCBBU0lDIGZvciBvbmUgYmxvY2ssIGJlc2lkZXMgdG8gIlN0YXJ0Ig0KPiBhbmQgIlN0b3AiDQo+ IC0gIFVDSEFSICAgICAgICAgdWNJMkNEYXRhWzFdOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAvL0kyQyBkYXRhIGluIGJ5dGVzLA0KPiBzaG91bGQgYmUg bGVzcyB0aGFuIDE2IGJ5dGVzIHVzdWFsbHkNCj4gKyAgVUNIQVIgICAgICAgICB1Y0kyQ0RhdGFb XTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vSTJD IGRhdGEgaW4gYnl0ZXMsIHNob3VsZA0KPiBiZSBsZXNzIHRoYW4gMTYgYnl0ZXMgdXN1YWxseQ0K PiAgfUFUT01fSTJDX0RBVEFfUkVDT1JEOw0KPg0KPg0KPiBAQCAtNTQ1MSwxNCArNTQ1MSwxNCBA QCB0eXBlZGVmIHN0cnVjdA0KPiBfQVRPTV9JMkNfREVWSUNFX1NFVFVQX0lORk8NCj4gICAgVUNI QVIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVjU1NDaGlwSUQ7ICAgICAg ICAgICAgIC8vU1MgY2hpcCBiZWluZyB1c2VkDQo+ICAgIFVDSEFSICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB1Y1NTQ2hpcFNsYXZlQWRkcjsgICAgICAvL1NsYXZlIEFkZHJl c3MgdG8NCj4gc2V0IHVwIHRoaXMgU1MgY2hpcA0KPiAgICBVQ0hBUiAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVjTnVtT2ZJMkNEYXRhUmVjb3JkczsgIC8vbnVtYmVyIG9mIGRhdGEgYmxvY2sN Cj4gLSAgQVRPTV9JMkNfREFUQV9SRUNPUkQgICAgICAgICAgICBhc0kyQ0RhdGFbMV07DQo+ICsg IEFUT01fSTJDX0RBVEFfUkVDT1JEICAgICAgICAgICAgYXNJMkNEYXRhW107DQo+ICB9QVRPTV9J MkNfREVWSUNFX1NFVFVQX0lORk87DQo+DQo+DQo+IC8vPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gPT09PT09PT09PT09 PT09PT09PT09PT09PQ0KPiAgdHlwZWRlZiBzdHJ1Y3QgIF9BVE9NX0FTSUNfTVZERF9JTkZPDQo+ ICB7DQo+ICAgIEFUT01fQ09NTU9OX1RBQkxFX0hFQURFUiAgICAgICAgIHNIZWFkZXI7DQo+IC0g IEFUT01fSTJDX0RFVklDRV9TRVRVUF9JTkZPICAgICAgYXNJMkNTZXR1cFsxXTsNCj4gKyAgQVRP TV9JMkNfREVWSUNFX1NFVFVQX0lORk8gICAgICBhc0kyQ1NldHVwW107DQo+ICB9QVRPTV9BU0lD X01WRERfSU5GTzsNCj4NCj4NCj4gLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiA9PT09PT09PT09PT09PT09PT09PT09 PT09DQo+IEBAIC01NTIwLDcgKzU1MjAsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQVRPTV9BU0lDX0lO VEVSTkFMX1NTX0lORk8NCj4gdHlwZWRlZiBzdHJ1Y3QgX0FUT01fQVNJQ19JTlRFUk5BTF9TU19J TkZPX1YyICB7DQo+ICAgIEFUT01fQ09NTU9OX1RBQkxFX0hFQURFUiAgICAgICAgIHNIZWFkZXI7 DQo+IC0gIEFUT01fQVNJQ19TU19BU1NJR05NRU5UX1YyICAgICAgICAgICBhc1NwcmVhZFNwZWN0 cnVtWzFdOw0KPiAvL3RoaXMgaXMgcG9pbnQgb25seS4NCj4gKyAgQVRPTV9BU0lDX1NTX0FTU0lH Tk1FTlRfVjIgICAgICAgICAgIGFzU3ByZWFkU3BlY3RydW1bXTsNCj4gLy90aGlzIGlzIHBvaW50 IG9ubHkuDQo+ICB9QVRPTV9BU0lDX0lOVEVSTkFMX1NTX0lORk9fVjI7DQo+DQo+ICB0eXBlZGVm IHN0cnVjdCBfQVRPTV9BU0lDX1NTX0FTU0lHTk1FTlRfVjMgQEAgLTU1NDIsNyArNTU0Miw3IEBA DQo+IHR5cGVkZWYgc3RydWN0IF9BVE9NX0FTSUNfU1NfQVNTSUdOTUVOVF9WMyAgdHlwZWRlZiBz dHJ1Y3QNCj4gX0FUT01fQVNJQ19JTlRFUk5BTF9TU19JTkZPX1YzICB7DQo+ICAgIEFUT01fQ09N TU9OX1RBQkxFX0hFQURFUiAgICAgICAgIHNIZWFkZXI7DQo+IC0gIEFUT01fQVNJQ19TU19BU1NJ R05NRU5UX1YzICAgICAgICAgICBhc1NwcmVhZFNwZWN0cnVtWzFdOw0KPiAvL3RoaXMgaXMgcG9p bnRlciBvbmx5Lg0KPiArICBBVE9NX0FTSUNfU1NfQVNTSUdOTUVOVF9WMyAgICAgICAgICAgYXNT cHJlYWRTcGVjdHJ1bVtdOw0KPiAvL3RoaXMgaXMgcG9pbnRlciBvbmx5Lg0KPiAgfUFUT01fQVNJ Q19JTlRFUk5BTF9TU19JTkZPX1YzOw0KPg0KPg0KPiBAQCAtNjAyNyw3ICs2MDI3LDcgQEAgdHlw ZWRlZiBzdHJ1Y3QgX0VOQUJMRV9TQ0FMRVJfUEFSQU1FVEVSUw0KPiAgICBVQ0hBUiB1Y1NjYWxl cjsgICAgICAgICAgICAvLyBBVE9NX1NDQUxFUjEsIEFUT01fU0NBTEVSMg0KPiAgICBVQ0hBUiB1 Y0VuYWJsZTsgICAgICAgICAgICAvLyBBVE9NX1NDQUxFUl9ESVNBQkxFIG9yDQo+IEFUT01fU0NB TEVSX0NFTlRFUiBvciBBVE9NX1NDQUxFUl9FWFBBTlNJT04NCj4gICAgVUNIQVIgdWNUVlN0YW5k YXJkOyAgICAgICAgLy8NCj4gLSAgVUNIQVIgdWNQYWRkaW5nWzFdOw0KPiArICBVQ0hBUiB1Y1Bh ZGRpbmdbXTsNCg0KVGhpcyBtYXkgYWN0dWFsbHkgYmUgYSAxIGVsZW1lbnQgYXJyYXkuICBJdOKA mXMganVzdCBwYWRkaW5nIGF0IHRoZSBlbmQgb2YgdGhlIHRhYmxlLg0KDQo+ICB9RU5BQkxFX1ND QUxFUl9QQVJBTUVURVJTOw0KPiAgI2RlZmluZSBFTkFCTEVfU0NBTEVSX1BTX0FMTE9DQVRJT04g RU5BQkxFX1NDQUxFUl9QQVJBTUVURVJTDQo+DQo+IEBAIC02MjgyLDcgKzYyODIsNyBAQCB0eXBl ZGVmIHVuaW9uDQo+IF9BVE9NX01FTU9SWV9TRVRUSU5HX0lEX0NPTkZJR19BQ0NFU1MNCj4NCj4g IHR5cGVkZWYgc3RydWN0IF9BVE9NX01FTU9SWV9TRVRUSU5HX0RBVEFfQkxPQ0t7DQo+ICAgICAg IEFUT01fTUVNT1JZX1NFVFRJTkdfSURfQ09ORklHX0FDQ0VTUw0KPiAgICAgICB1bE1lbW9yeUlE Ow0KPiAtICAgICBVTE9ORw0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGF1bE1lbURhdGFbMV07DQo+ICsgICAgIFVMT05HDQo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYXVsTWVtRGF0YVtdOw0KPiAgfUFUT01fTUVNT1JZX1NFVFRJTkdfREFUQV9CTE9DSzsN Cj4NCj4NCj4gQEAgLTYyOTYsNyArNjI5Niw3IEBAIHR5cGVkZWYgc3RydWN0IF9BVE9NX0lOSVRf UkVHX0JMT0NLew0KPiAgICAgICBVU0hPUlQNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVzUmVnSW5kZXhUYmxTaXplOw0KPg0KPiAgICAgICAgICAgICAg ICAgICAgICAgLy9zaXplIG9mIGFzUmVnSW5kZXhCdWYNCj4gICAgICAgVVNIT1JUDQo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c1JlZ0RhdGFCbGtTaXpl Ow0KPg0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3NpemUgb2YNCj4gQVRPTV9N RU1PUllfU0VUVElOR19EQVRBX0JMT0NLDQo+ICAgICAgIEFUT01fSU5JVF9SRUdfSU5ERVhfRk9S TUFUDQo+ICAgICAgIGFzUmVnSW5kZXhCdWZbMV07DQo+IC0gICAgIEFUT01fTUVNT1JZX1NFVFRJ TkdfREFUQV9CTE9DSyAgYXNSZWdEYXRhQnVmWzFdOw0KPiArICAgICBBVE9NX01FTU9SWV9TRVRU SU5HX0RBVEFfQkxPQ0sgIGFzUmVnRGF0YUJ1ZltdOw0KPiAgfUFUT01fSU5JVF9SRUdfQkxPQ0s7 DQo+DQoNClRoaXMgb25lIG5lZWRzIHNwZWNpYWwgaGFuZGxpbmcgYXMgeW91IGhhdmUgbXVsdGlw bGUgdmFyaWFibGUgc2l6ZWQgYXJyYXlzLg0KDQo+ICAjZGVmaW5lIEVORF9PRl9SRUdfSU5ERVhf QkxPQ0sgIDB4MGZmZmYgQEAgLTcwNDEsNyArNzA0MSw3IEBADQo+IHR5cGVkZWYgc3RydWN0IF9B VE9NX0RJU1BfT1VUX0lORk8NCj4gICAgICAgVVNIT1JUIHB0clRyYW5zbWl0dGVySW5mbzsNCj4g ICAgICAgVVNIT1JUIHB0ckVuY29kZXJJbmZvOw0KPiAgICAgICBBU0lDX1RSQU5TTUlUVEVSX0lO Rk8gIGFzVHJhbnNtaXR0ZXJJbmZvWzFdOw0KPiAtICAgICBBU0lDX0VOQ09ERVJfSU5GTyAgICAg IGFzRW5jb2RlckluZm9bMV07DQo+ICsgICAgIEFTSUNfRU5DT0RFUl9JTkZPICAgICAgYXNFbmNv ZGVySW5mb1tdOw0KDQpTYW1lIGhlcmUuDQoNCj4gIH1BVE9NX0RJU1BfT1VUX0lORk87DQo+DQo+ ICB0eXBlZGVmIHN0cnVjdCBfQVRPTV9ESVNQX09VVF9JTkZPX1YyDQo+IEBAIC03MDUxLDcgKzcw NTEsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQVRPTV9ESVNQX09VVF9JTkZPX1YyDQo+ICAgICAgIFVT SE9SVCBwdHJFbmNvZGVySW5mbzsNCj4gICAgVVNIT1JUIHB0ck1haW5DYWxsUGFyc2VyRmFyOyAg ICAgICAgICAgICAgICAgIC8vIGRpcmVjdCBhZGRyZXNzIG9mIG1haW4gcGFyc2VyIGNhbGwNCj4g aW4gVkJJT1MgYmluYXJ5Lg0KPiAgICAgICBBU0lDX1RSQU5TTUlUVEVSX0lORk8gIGFzVHJhbnNt aXR0ZXJJbmZvWzFdOw0KPiAtICAgICBBU0lDX0VOQ09ERVJfSU5GTyAgICAgIGFzRW5jb2Rlcklu Zm9bMV07DQo+ICsgICAgIEFTSUNfRU5DT0RFUl9JTkZPICAgICAgYXNFbmNvZGVySW5mb1tdOw0K DQpTYW1lIGhlcmUuDQoNCj4gIH1BVE9NX0RJU1BfT1VUX0lORk9fVjI7DQo+DQo+DQo+IEBAIC03 MDkyLDcgKzcwOTIsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQVRPTV9ESVNQX09VVF9JTkZPX1YzDQo+ ICAgIFVDSEFSICB1Y0NvcmVSZWZDbGtTb3VyY2U7ICAgICAgICAgICAgICAgICAgICAvLyB2YWx1 ZSBvZiBDT1JFX1JFRl9DTEtfU09VUkNFDQo+ICAgIFVDSEFSICB1Y0Rpc3BDYXBzOw0KPiAgICBV Q0hBUiAgdWNSZXNlcnZlZFsyXTsNCj4gLSAgQVNJQ19UUkFOU01JVFRFUl9JTkZPX1YyICBhc1Ry YW5zbWl0dGVySW5mb1sxXTsgICAgIC8vIGZvciBhbGxpZ21lbnQgb25seQ0KPiArICBBU0lDX1RS QU5TTUlUVEVSX0lORk9fVjIgIGFzVHJhbnNtaXR0ZXJJbmZvW107ICAgICAgLy8gZm9yIGFsbGln bWVudCBvbmx5DQo+ICB9QVRPTV9ESVNQX09VVF9JTkZPX1YzOw0KPg0KPiAgLy91Y0Rpc3BDYXBz DQo+IEBAIC03MzI0LDEyICs3MzI0LDEyIEBAIHR5cGVkZWYgc3RydWN0DQo+IF9DTE9DS19DT05E SVRJT05fU0VUVElOR19FTlRSWXsNCj4gICAgVVNIT1JUIHVzTWF4Q2xvY2tGcmVxOw0KPiAgICBV Q0hBUiAgdWNFbmNvZGVNb2RlOw0KPiAgICBVQ0hBUiAgdWNQaHlTZWw7DQo+IC0gIFVMT05HICB1 bEFuYWxvZ1NldHRpbmdbMV07DQo+ICsgIFVMT05HICB1bEFuYWxvZ1NldHRpbmdbXTsNCj4gIH1D TE9DS19DT05ESVRJT05fU0VUVElOR19FTlRSWTsNCj4NCj4gIHR5cGVkZWYgc3RydWN0IF9DTE9D S19DT05ESVRJT05fU0VUVElOR19JTkZPew0KPiAgICBVU0hPUlQgdXNFbnRyeVNpemU7DQo+IC0g IENMT0NLX0NPTkRJVElPTl9TRVRUSU5HX0VOVFJZIGFzQ2xrQ29uZFNldHRpbmdFbnRyeVsxXTsN Cj4gKyAgQ0xPQ0tfQ09ORElUSU9OX1NFVFRJTkdfRU5UUlkgYXNDbGtDb25kU2V0dGluZ0VudHJ5 W107DQo+ICB9Q0xPQ0tfQ09ORElUSU9OX1NFVFRJTkdfSU5GTzsNCj4NCj4gIHR5cGVkZWYgc3Ry dWN0IF9QSFlfQ09ORElUSU9OX1JFR19WQUx7DQo+IEBAIC03MzQ2LDI3ICs3MzQ2LDI3IEBAIHR5 cGVkZWYgc3RydWN0IF9QSFlfQ09ORElUSU9OX1JFR19WQUxfVjJ7DQo+IHR5cGVkZWYgc3RydWN0 IF9QSFlfQ09ORElUSU9OX1JFR19JTkZPew0KPiAgICBVU0hPUlQgdXNSZWdJbmRleDsNCj4gICAg VVNIT1JUIHVzU2l6ZTsNCj4gLSAgUEhZX0NPTkRJVElPTl9SRUdfVkFMIGFzUmVnVmFsWzFdOw0K PiArICBQSFlfQ09ORElUSU9OX1JFR19WQUwgYXNSZWdWYWxbXTsNCj4gIH1QSFlfQ09ORElUSU9O X1JFR19JTkZPOw0KPg0KPiAgdHlwZWRlZiBzdHJ1Y3QgX1BIWV9DT05ESVRJT05fUkVHX0lORk9f VjJ7DQo+ICAgIFVTSE9SVCB1c1JlZ0luZGV4Ow0KPiAgICBVU0hPUlQgdXNTaXplOw0KPiAtICBQ SFlfQ09ORElUSU9OX1JFR19WQUxfVjIgYXNSZWdWYWxbMV07DQo+ICsgIFBIWV9DT05ESVRJT05f UkVHX1ZBTF9WMiBhc1JlZ1ZhbFtdOw0KPiAgfVBIWV9DT05ESVRJT05fUkVHX0lORk9fVjI7DQo+ DQo+ICB0eXBlZGVmIHN0cnVjdCBfUEhZX0FOQUxPR19TRVRUSU5HX0lORk97DQo+ICAgIFVDSEFS ICB1Y0VuY29kZU1vZGU7DQo+ICAgIFVDSEFSICB1Y1BoeVNlbDsNCj4gICAgVVNIT1JUIHVzU2l6 ZTsNCj4gLSAgUEhZX0NPTkRJVElPTl9SRUdfSU5GTyAgYXNBbmFsb2dTZXR0aW5nWzFdOw0KPiAr ICBQSFlfQ09ORElUSU9OX1JFR19JTkZPICBhc0FuYWxvZ1NldHRpbmdbXTsNCj4gIH1QSFlfQU5B TE9HX1NFVFRJTkdfSU5GTzsNCj4NCj4gIHR5cGVkZWYgc3RydWN0IF9QSFlfQU5BTE9HX1NFVFRJ TkdfSU5GT19WMnsNCj4gICAgVUNIQVIgIHVjRW5jb2RlTW9kZTsNCj4gICAgVUNIQVIgIHVjUGh5 U2VsOw0KPiAgICBVU0hPUlQgdXNTaXplOw0KPiAtICBQSFlfQ09ORElUSU9OX1JFR19JTkZPX1Yy ICBhc0FuYWxvZ1NldHRpbmdbMV07DQo+ICsgIFBIWV9DT05ESVRJT05fUkVHX0lORk9fVjIgIGFz QW5hbG9nU2V0dGluZ1tdOw0KPiAgfVBIWV9BTkFMT0dfU0VUVElOR19JTkZPX1YyOw0KPg0KPiAg dHlwZWRlZiBzdHJ1Y3QgX0dGWF9IQVZFU1RJTkdfUEFSQU1FVEVSUyB7IEBAIC03NTUwLDEzICs3 NTUwLDEzDQo+IEBAIHR5cGVkZWYgc3RydWN0IF9BVE9NX1RNRFNfSU5GTyAgdHlwZWRlZiBzdHJ1 Y3QNCj4gX0FUT01fRU5DT0RFUl9BTkFMT0dfQVRUUklCVVRFICB7DQo+ICAgIFVDSEFSIHVjVFZT dGFuZGFyZDsgICAgIC8vU2FtZSBhcyBUViBzdGFuZGFyZHMgZGVmaW5lZCBhYm92ZSwNCj4gLSAg VUNIQVIgdWNQYWRkaW5nWzFdOw0KPiArICBVQ0hBUiB1Y1BhZGRpbmdbXTsNCg0KVGhpcyBtYXkg YWN0dWFsbHkgYmUgYSAxIGVsZW1lbnQgYXJyYXkuICBJdOKAmXMganVzdCBwYWRkaW5nIGF0IHRo ZSBlbmQgb2YgdGhlIHRhYmxlLg0KDQo+ICB9QVRPTV9FTkNPREVSX0FOQUxPR19BVFRSSUJVVEU7 DQo+DQo+ICB0eXBlZGVmIHN0cnVjdCBfQVRPTV9FTkNPREVSX0RJR0lUQUxfQVRUUklCVVRFICB7 DQo+ICAgIFVDSEFSIHVjQXR0cmlidXRlOyAgICAgIC8vU2FtZSBhcyBvdGhlciBkaWdpdGFsIGVu Y29kZXIgYXR0cmlidXRlcyBkZWZpbmVkDQo+IGFib3ZlDQo+IC0gIFVDSEFSIHVjUGFkZGluZ1sx XTsNCj4gKyAgVUNIQVIgdWNQYWRkaW5nW107DQoNClNhbWUgaGVyZS4NCg0KQWxleA0KDQo+ICB9 QVRPTV9FTkNPREVSX0RJR0lUQUxfQVRUUklCVVRFOw0KPg0KPiAgdHlwZWRlZiB1bmlvbiBfQVRP TV9FTkNPREVSX0FUVFJJQlVURQ0KPiAtLQ0KPiAyLjM5LjINCg0K