From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20631.outbound.protection.outlook.com [IPv6:2a01:111:f403:2009::631]) by sourceware.org (Postfix) with ESMTPS id 870E73858CDB for ; Fri, 16 Aug 2024 15:36:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 870E73858CDB Authentication-Results: sourceware.org; dmarc=fail (p=reject dis=none) header.from=nvidia.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=nvidia.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 870E73858CDB Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2009::631 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1723822599; cv=pass; b=oO87ItDf1HOmQqeE3hHDye/jSeT8Vg9Wvt8S9Xz1A+N2SEDSBQySoenY4PTbqKYDHd+/TmVtGLQEwezuUu9R6lny3r3J3i3ryx1wdQprmFS4Oo3snGRDylNho0+lM2MG5UAdvZnoDXVGGqpU0QihDi/fM9m5FcBsveQLSmhZ+mI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1723822599; c=relaxed/simple; bh=7T3hl3879PebhxfoVB0Bb2UKVNo04xo8oZJqHvUcIQ0=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=YGo6IoBfpPEOZIEf0k6x7qlNPYEn8aDpB2wEyBXAfiLHwxzpnQkbI+4NYdAGLhOBvt99wLFNC0DQntIbE5HWdfFtgkNs1DpzUj0Aew01W1dYgc5YIKiN8k+GK96tTwYNoEzq2p43iZruOiq+EFQI7Wu7Q27R5CTSIY3t/qNilkA= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=H45y8SBJ2o0KuLdGFQn/pddcF7VKckqwJ1igNIv2BYWr9KThTiKSro0LI5alqGIQV8atyOQGZS+H+Ttefjba32OEL4n6fyYZi/l3P0HOuU+1p1oDh+UWl4gjQP5mhMKQiHT5jRf12evv15xW2tTjZrSyUmYc1y81q/L617dW+mB49RlhdE9pz7iUHUfpy2hpDJW6YsKDkYipPQsCbWs10mujhTuVEJneT60iqFPdgE65ZAFCX7XU1W5ufWV0Bbj3F8cL6UU3b49xU/wAmKiVqfey+2cOq0BP8ZQykY9LYXWAHOGbbGV1DlNmtYip6RVccBHJ0TZn9NqyGdLcega1IA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=7T3hl3879PebhxfoVB0Bb2UKVNo04xo8oZJqHvUcIQ0=; b=bqr02av5l7/QQLeVnAK4fUrvEXlRRSj2jjLWkJRBpA+6fnX9KhVl8n4bzCnLzJFmy04nGZAs3VwkNNDgNvxv+wQ3unWw2mkRFvZXPq1uY3Xv37onBnPDYdvEKA0R2EWGW0O60BYB8u02lOqArmg4z0C+2sfqIQ6zahPhp4GeDXNuuTbn3QRhEzR444RPyExb4bI/I3V8ejFZtxxqoXgLpd0EqIO84jZCvwaQ3jcRu/5stv8gnDY7ajMJnYRwe2uXF2SBsYq6nl3sdxEBei37GlciELvvvvJoGAdnL0nk4JOHrDcOygsILEwOpZXJ0tBIK29nqPCwM3NBKXnoWAEkfQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7T3hl3879PebhxfoVB0Bb2UKVNo04xo8oZJqHvUcIQ0=; b=EEkqyxAxhmlB2UOoWJnJUH0nvMaYCBv+vdLefXhMnxFV6BHq0/mqA7CuSVtbth/Lime46X68xYg60LVVYXx636xsVRXRTGA0QtfmDvKLClP3UEZk2zBtx93glPO+SoGnreJXcWKCosyjdOHiqVNHaxoh/shoH5UrA5MSRa7UABvkkklaDTFRjnH9omJn9IhXHMvlKMpbMiRkBvNjvI+6nGtXohhMKNVMoNafOjZK/RrqlMp+Rtf1joZv6Zzg3Gd/L6nZarqMN4+3fhDELDRimIBcTPOLVXLuYE97vYbJga8FNaHLWdiVsq22RcXcIZ17dCQFwjRt7/S3r9RvfK7KRg== Received: from IA1PR12MB9031.namprd12.prod.outlook.com (2603:10b6:208:3f9::19) by DM4PR12MB5770.namprd12.prod.outlook.com (2603:10b6:8:61::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7875.19; Fri, 16 Aug 2024 15:36:30 +0000 Received: from IA1PR12MB9031.namprd12.prod.outlook.com ([fe80::1fb7:5076:77b5:559c]) by IA1PR12MB9031.namprd12.prod.outlook.com ([fe80::1fb7:5076:77b5:559c%3]) with mapi id 15.20.7875.019; Fri, 16 Aug 2024 15:36:29 +0000 From: Prathamesh Kulkarni To: Richard Biener , Thomas Schwinge CC: Andrew Pinski , "gcc-patches@gcc.gnu.org" , Jakub Jelinek Subject: RE: [nvptx] Pass -m32/-m64 to host_compiler if it has multilib support Thread-Topic: [nvptx] Pass -m32/-m64 to host_compiler if it has multilib support Thread-Index: Adrpjl/INOEJ85hEQVG2vAYH4ni3zAACvyaAAAvPTAAAsA6l8ABD0aUAAAGvF4AAk6i2YA== Date: Fri, 16 Aug 2024 15:36:29 +0000 Message-ID: References: <874j7ojugd.fsf@euler.schwinge.ddns.net> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: IA1PR12MB9031:EE_|DM4PR12MB5770:EE_ x-ms-office365-filtering-correlation-id: f824f374-01fc-44f9-5299-08dcbe0932ea x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|1800799024|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?NHRzbnBaMis1c0xlbmFlVDFRaS9acTJEVEJUOEpuS1NXUXo0bm9jQ3ZDMUtS?= =?utf-8?B?ci9JVU56ZUl0SU91YzVCMEZUcVpmcUJWVURCMWlYbVZSMmR4OElRLytDL21u?= =?utf-8?B?d3VSNnRyRHZTOVdJajRGRUx3N1dNL1B6THFFVlg4ZGtBSmFUaS9SRXRrVzUx?= =?utf-8?B?R1lhb3BMa1VFKzlXb0dIOCtxQXhGME9RSlZWWmVYZGV5M21ubEUrRWxadVQv?= =?utf-8?B?VWZBY09YeUhXNGpqWVNjVUcyYk1WMllqWDBCeEFaNGk2Rlhpb29YRnl0OFNU?= =?utf-8?B?SFQ2UXJ3b2RqZys1QTJ0TkpvUENBaERIV0YzMUVwendHKzlxUWJ4c0cyL0Rv?= =?utf-8?B?b29wejJGSjN4bWVxemZQcUgrdlFPcDdqM1FiRDM2bGlhS2F6NDFoaEVwMWkx?= =?utf-8?B?b0UrbzJ0cGRTS1lCUDJsT2wwSmRWWWtFTTAyMDR2SUMzMHNqTHBWZGNqdjN2?= =?utf-8?B?MzVQZTA5a2g3aDR6bUdpNWwxTjh5eDdXUHIyRmtqQ3ZLTGRpbmNxUHpEZ0Nv?= =?utf-8?B?ek14aFdoSTBEdEE2QXYxMG11UXI1Zk4yQU54aTdGakROMUl2ZXF5MFdseUUx?= =?utf-8?B?elpLWjRGb1NvWFB1YVZsTHk4cXFpdkFabjFhMEd4bE5uYXZPMHQva1lpWC9L?= =?utf-8?B?NGR6YXVzaDFBVk5TcW9iMzAxcUJuUEZsK2dlQ01kdFVjMkhUMzd4Yjk4ZDNy?= =?utf-8?B?WDlGQUJqcmdPYWI3ZUllY0NyM1ZGS2NWUkRPTXNheFIzRXlwam9QRU4vbUNE?= =?utf-8?B?VjU5MFZYc2VtWHBCT2ZoK0IySmlHU1daV2RuTG9GTUZQNDlPWUhiWGwrKzhj?= =?utf-8?B?Z2ttckVCVU9ZVmxvWFNSTklsWk0vQ25Od2VLcFJwekRySW4weFJRdk1nQWRz?= =?utf-8?B?RUxUODJSVy9UbFpEMnAvRFVpMzRhWDJSb2REb1k4ODZHcUxZdDhNMzJrbUVt?= =?utf-8?B?V3ZOamlMR1VFTjJXVDkyN0JBdEt1VHc2ZC80d2RaRkQxYzV1S3hFeGhKTVRz?= =?utf-8?B?OHoxYUdhUWxxRS93RWFpQURhc2JldVZDZmJVcSthdTAvZ1ZnQUNOeFU5UjNR?= =?utf-8?B?Yk5maWlmNVFxTTNPcmQ4QWFLRmlTemVHM0RYT09FU3pQd1Z2L1hTMTY5Wlcv?= =?utf-8?B?MFdWR1FDdHVIQytYRkhuOTdSVHIxTWZTbkhGVEFjYXA1bjF1ZUhjUmNYdkxQ?= =?utf-8?B?anVRd3JPS2lONDUvZnNsYXVvcmlMM0Vaby9EcjM5Z0twdVpJNzVvdjhyd1Ns?= =?utf-8?B?NmV3TFVlSU9la0xLaThJcEwvNWM0Q0xHYnduU0wrYkxjc29xam91NVl5eEpt?= =?utf-8?B?cW5IUUYwVEtFZWZDczZXM0NBc1JpRkJtSU4wYldSTlF2eHE4Qk9ucW5hUjdy?= =?utf-8?B?ay94a2FOTVEzaFp3SXdIL2lTQ3kyN1F6ZkM2V0tOeTY5Z0VGYWI5enQ5NFpo?= =?utf-8?B?MG9SNjJ2MlhBdklyU0VkLzlpTWxvN2lTSWlqYktEa2ZMNjhHcEI2d2NnTTll?= =?utf-8?B?RzNGZFhRMVBUZ1FCSlAyY1hNcDNsSVpVb0FXOHNCM203Q3JLMEUyZWNCYW8w?= =?utf-8?B?cTFJWFQvZjY3ODE4SjJwdVQxWkRvSEtPc0hNbndla0U5SUlEeDdxWWtPb21v?= =?utf-8?B?MU4vVHNDKzJ1OCtzQnkyeTZlSmFGOUxVTVVNYUF0eDFqWXZnOTVNYmZuMkt5?= =?utf-8?B?NWxHU1ZVWVp3SVRkamlwNEloZWl3dER0ZUhJMzFobkVwTDAyZnNyZHk2M25T?= =?utf-8?B?YXA3WU1kVk81eWVrV3VYZHQyZ0RJUmVlMFo2Mld2SHBxTE04RG5uNjNyeHFx?= =?utf-8?B?OCtvOVhrTFJMalBmcmwxQUU1bldmODNwVzRTLzVVdld3SmpzUGxVdmZkZXlw?= =?utf-8?B?OTFxT0tNLzJhRXIvYmVFSDVLbi9SMmxxL2MyM2tuNDJSaWc9PQ==?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:IA1PR12MB9031.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?QkhpZXB1OWdMVy9aYm9UbGNNMHdud1A2U1lscW5zVEtpQXY2d2JLaGIzVDNw?= =?utf-8?B?Q2JhaG03UCtGUU1RMmFZVTlpY3c3L0FJdWRPeTBtUEd5U3BEU3ovN2c2OXNr?= =?utf-8?B?emVrVnVUd0lqOG1INFFjVUladFpmUmNSL2M2dkZzQTNFbTlQc1JCbjlMd0h0?= =?utf-8?B?c3ZlSmpudkU5YWNjT2RtWVN1RjA3bk1peWxKc3ZlU2o4MS9MdEp3UldyODhk?= =?utf-8?B?UHVmSVAxUnFYQW5WSGlyN2dkQ1R0WktYajdmSFJHcERldmVFWG42amZrRE1S?= =?utf-8?B?MHdqd1laR2Fva0VqdVdNTXJYbXg4VlBaMjFDaVNNZmFDeTdLeDI4dlZMeFNV?= =?utf-8?B?RWF1TktMaEZ4Mm5tL3l4cU1PLzJpZUd4cnozaE9mM2dSTWIyUmhXd0I2dGkw?= =?utf-8?B?eEJaRUVGb1J3ZWNiUHNHbzdheWNmd3kyUlo1U3JuYS9yaGRMOTBvTHhmbzB4?= =?utf-8?B?K21lNEcxSVpNU2wzMEdRUG1GYUNKR3RKVXM0T0NuekNCUVVscHZsUDdvd08w?= =?utf-8?B?MS9vZCs2dEY2NmVTRWhMa1lPbGRpM3JFL2xiNDlSdFkwNEhLWEJXamhIMmZL?= =?utf-8?B?eU9zNnZ0RTNmM3E3TXdHVlp0NUppVWRvZFQwbHd4a0pWOVFzWldmNk0yclVD?= =?utf-8?B?MlJHRm5RSnB5ZU9xRWhKUThoUkxyQWxvWjVCUVRQK25qcDgrWXViU2Q2UUhk?= =?utf-8?B?TkZiWVNZSjdaZjRBQkxMcHphYllEb2w3YXRGZEFBc2xKb1RsRzRrVDA1SSth?= =?utf-8?B?ejBSMlRHblBwbTl4WHRJTlc3OFB6YWkzY0d3WlRJemx2WURHL0IyMXFXaHRK?= =?utf-8?B?cmd4K0s4cU9nOC9OdlBqVHI0eld6dWlRclI2TU5XckhLLytmQWlJU2pHdkpr?= =?utf-8?B?WlNhVGRVajY3dnMvVVV6NGZXdDBPdC93SWxzbFBabzZpQjlFLzBkMDR4Y0FX?= =?utf-8?B?YTlPNW1GbTdtYUphRkMrenBNNDg0czZBOUFnVkxyR2dRWTQxYTNpU3AxNllM?= =?utf-8?B?TndkSXB5cFU4Ymsyc25GRU5GSTRId21QcFRMeUJSWW03Z0ZPVzNaTU5GU21m?= =?utf-8?B?cHdQU1dqWDdTNXZoOFlCbnd2K0VxczNnVkh5V1hCQlpKVER5NUs4SGdlWWdK?= =?utf-8?B?UXRmT3JIVFJxUStJVVRMdHpjdmlXTGJ0c0J0WW53T3pKa1ppNkFDOUpqdnM2?= =?utf-8?B?ZHBJREtYeDAvc0s5cTcvWElaVTVmT2ZoL0VqL3lxdkNiODlML2VoaHg3VHlE?= =?utf-8?B?eHg5UzVQRXNDMEFWWjdpY3R4Z21MMUJ5ajREaHdTVCtFNklnbVU1ZHJ0R3VQ?= =?utf-8?B?d21oQngxM2JVK1lrTEZQSVZDV1hLYU1LRkRlK0hhb3dwd1UrTWVHMHhZZVAr?= =?utf-8?B?bWdQTEJodHdFejVMS0s0R2luRC9UcGY3R05nQkRkUDlMNVQyNWl4SzZtdWor?= =?utf-8?B?TWxrVWt6c3R2L1k0REpxU1NidWpRdXhEenlwYWJlRGR1NW52VVYycEZIN2Ni?= =?utf-8?B?clFXVGRDM1dzRXZ3RXdNVDFseTdnc1dHZ3lUdWtVR3gzZ01PbTlReTQ3Vkht?= =?utf-8?B?VE1odmtqZ2RacVN3Mlo5TVA0SEZFRlBSOXJrNDREOXJpa3pHNlN1SUZ4ZWdo?= =?utf-8?B?OXhpU0Fadk5uSG9WMHlaOG1PbWxzV0huS2xqRDRZWlYwcGhWN296dERqMG1W?= =?utf-8?B?bHZYZ1dtVXBPSktuOEFycHlia2R6NUdsaTlmMXFYWmk0QzBSdEJIVFA5aG1J?= =?utf-8?B?a1h6Tk9KeWJQYi8rMUM0YnpjdjlVSWZYVGRoQ2E5UkhVR05iczk5d2hxN2xh?= =?utf-8?B?cFFWZmNJdDA3UW5SYnN3MVBXRDIxSlZudk1RQUV0ZU9JU0UremlqcXpIcXZs?= =?utf-8?B?K2dHYzdRZTBlR1h0bHdCaElGclErOTVtbTJaZ3NLWkk2a05Pb1pMMjJHMmtx?= =?utf-8?B?UmZXckhtZTVsWGxOOG5EcWVkeUtCcnpraUZ6WTQvbWdPaTJ3ZUtmSE0rYjgz?= =?utf-8?B?VG8xQjZmT2Fsbm1vM1RLb3ZWYWx6M1EyVnZjbkFqd3VkamF1TXI1RnNoUHFy?= =?utf-8?B?RDhpYXNjZGpXdFdYd09YTlJheFl6WDdjbzRWaTRnOVRlVE4zM2l4UGFtdXZW?= =?utf-8?Q?raJDBZA1PwvmD1p8HEZ28o+9B?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: IA1PR12MB9031.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f824f374-01fc-44f9-5299-08dcbe0932ea X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Aug 2024 15:36:29.7942 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: +qNdfnXechStmLxwUrS7+DzpqEWpod8u5YiueaFYzCOu8Q1Ke8u92HA1kglF/NwsFQeUPfs3Go/aqW1zKWtSiw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5770 X-Spam-Status: No, score=-10.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,GIT_PATCH_0,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogUmljaGFyZCBCaWVuZXIg PHJndWVudGhlckBzdXNlLmRlPg0KPiBTZW50OiBUdWVzZGF5LCBBdWd1c3QgMTMsIDIwMjQgMTA6 MDYgUE0NCj4gVG86IFRob21hcyBTY2h3aW5nZSA8dHNjaHdpbmdlQGJheWxpYnJlLmNvbT4NCj4g Q2M6IFByYXRoYW1lc2ggS3Vsa2FybmkgPHByYXRoYW1lc2hrQG52aWRpYS5jb20+OyBBbmRyZXcg UGluc2tpDQo+IDxwaW5za2lhQGdtYWlsLmNvbT47IGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnOyBK YWt1YiBKZWxpbmVrDQo+IDxqYWt1YkByZWRoYXQuY29tPg0KPiBTdWJqZWN0OiBSZTogW252cHR4 XSBQYXNzIC1tMzIvLW02NCB0byBob3N0X2NvbXBpbGVyIGlmIGl0IGhhcw0KPiBtdWx0aWxpYiBz dXBwb3J0DQo+IA0KPiBFeHRlcm5hbCBlbWFpbDogVXNlIGNhdXRpb24gb3BlbmluZyBsaW5rcyBv ciBhdHRhY2htZW50cw0KPiANCj4gDQo+ID4gQW0gMTMuMDguMjAyNCB1bSAxNzo0OCBzY2hyaWVi IFRob21hcyBTY2h3aW5nZQ0KPiA8dHNjaHdpbmdlQGJheWxpYnJlLmNvbT46DQo+ID4NCj4gPiDv u79IaSBQcmF0aGFtZXNoIQ0KPiA+DQo+ID4gT24gMjAyNC0wOC0xMlQwNzo1MDowNyswMDAwLCBQ cmF0aGFtZXNoIEt1bGthcm5pDQo+IDxwcmF0aGFtZXNoa0BudmlkaWEuY29tPiB3cm90ZToNCj4g Pj4+IEZyb206IFRob21hcyBTY2h3aW5nZSA8dHNjaHdpbmdlQGJheWxpYnJlLmNvbT4NCj4gPj4+ IFNlbnQ6IEZyaWRheSwgQXVndXN0IDksIDIwMjQgMTI6NTUgQU0NCj4gPg0KPiA+Pj4gT24gMjAy NC0wOC0wOFQwNjo0NjoyNS0wNzAwLCBBbmRyZXcgUGluc2tpIDxwaW5za2lhQGdtYWlsLmNvbT4N Cj4gd3JvdGU6DQo+ID4+Pj4gT24gVGh1LCBBdWcgOCwgMjAyNCBhdCA2OjEx4oCvQU0gUHJhdGhh bWVzaCBLdWxrYXJuaQ0KPiA+Pj4+IDxwcmF0aGFtZXNoa0BudmlkaWEuY29tPiB3cm90ZToNCj4g Pj4+Pj4gQWZ0ZXIgZGlmZmVyaW5nIE5VTV9QT0xZX0lOVF9DT0VGRlMgZml4IGZvciBBQXJjaDY0 L252cHR4DQo+ID4+PiBvZmZsb2FkaW5nLCB0aGUgZm9sbG93aW5nIG1pbmltYWwgdGVzdDoNCj4g Pj4+DQo+ID4+PiBGaXJzdCwgdGhhbmtzIGZvciB5b3VyIHdvcmsgb24gZW5hYmxpbmcgdGhpcyEg IEkgd2lsbCBzYXkgdGhhdCBJDQo+IGhhZA0KPiA+Pj4gdGhlIHBsYW4gdG8gcmUtZW5nYWdlIHdp dGggTnZpZGlhIHRvIGhpcmUgdXMgKGFzIGluaXRpYWwNCj4gPj4+IGltcGxlbWVudG9ycyBvZiBH Q0MvbnZwdHggb2ZmbG9hZGluZykgdG8gbWFrZSBBQXJjaDY0L252cHR4DQo+ID4+PiBvZmZsb2Fk aW5nIHdvcmssIGJ1dCBub3cgdGhhdCBOdmlkaWEgaGFzIGl0cyBvd24gR0NDIHRlYW0sIHRoYXQn cw0KPiA+Pj4gZ3JlYXQgdGhhdCB5b3UncmUgYWJsZSB0byB3b3JrIG9uIHRoaXMgeW91cnNlbGYh ICA6LSkNCj4gPj4+DQo+ID4+PiBQbGVhc2UgQ0MgbWUgZm9yIEdDQy9udnB0eCBpc3N1ZXMgZm9y IChhdCBsZWFzdCBwb3RlbnRpYWxseS4uLikNCj4gPj4+IGZhc3RlciByZXNwb25zZSB0aW1lcy4N Cj4gPj4gVGhhbmtzLCB3aWxsIGRvIPCfmIoNCj4gPg0KPiA+IEhlaCwgc28gbXVjaCBmb3IgInBv dGVudGlhbGx5IjogSSdtIG5vdCBhYmxlIHRvIHNwZW5kIGEgbG90IG9mIHRpbWUNCj4gb24NCj4g PiB0aGlzIHJpZ2h0IG5vdywgYXMgSSBzaGFsbCBzb29uIGJlIG91dCBvZiBvZmZpY2UuICBRdWlj a2x5Og0KPiA+DQo+ID4+Pj4+IGNvbXBpbGVkIHdpdGggLWZvcGVubXAgLWZvZmZsb2FkPW52cHR4 LW5vbmUgbm93IGZhaWxzIHdpdGg6DQo+ID4+Pj4+IGdjYzogZXJyb3I6IHVucmVjb2duaXplZCBj b21tYW5kLWxpbmUgb3B0aW9uICctbTY0Jw0KPiA+Pj4+PiBudnB0eCBta29mZmxvYWQ6IGZhdGFs IGVycm9yOiAuLi9pbnN0YWxsL2Jpbi9nY2MgcmV0dXJuZWQgMSBleGl0DQo+ID4+PiBzdGF0dXMg Y29tcGlsYXRpb24gdGVybWluYXRlZC4NCj4gPj4+DQo+ID4+PiBIZWguICBZZWFoLi4uDQo+ID4+ Pg0KPiA+Pj4+PiBBcyBtZW50aW9uZWQgaW4gUkZDIGVtYWlsLCB0aGlzIGhhcHBlbnMgYmVjYXVz ZQ0KPiA+Pj4+PiBudnB0eC9ta29mZmxvYWQuY2M6Y29tcGlsZV9uYXRpdmUgcGFzc2VzIC1tNjQv LW0zMiB0byBob3N0DQo+ID4+Pj4+IGNvbXBpbGVyDQo+ID4+PiBkZXBlbmRpbmcgb24gd2hldGhl ciBvZmZsb2FkX2FiaSBpcyBPRkZMT0FEX0FCSV9MUDY0IG9yDQo+ID4+PiBPRkZMT0FEX0FCSV9J TFAzMiwgYW5kIGFhcmNoNjQgYmFja2VuZCBkb2Vzbid0IHJlY29nbml6ZSB0aGVzZQ0KPiA+Pj4g b3B0aW9ucy4NCj4gPg0KPiA+Pj4gU28sIG15IGlkZWEgaXM6IGluc3RlYWQgb2YgdGhlIGN1cnJl bnQgc3RyYXRlZ3kgdGhhdCB0aGUgaG9zdA0KPiA+Pj4gJ1RBUkdFVF9PRkZMT0FEX09QVElPTlMn IHN5bnRoZXNpemVzICctZm9mZmxvYWQtYWJpPWxwNjQnIGV0Yy4sDQo+ID4+PiB3aGljaCB0aGUg J21rb2ZmbG9hZCdzIHRoZW4gaW50ZXJwcmV0IGFuZCByZS1zeW50aGVzaXplICctbTY0Jw0KPiBl dGMuDQo+ID4+PiAtLSBob3cgYWJvdXQgd2UgaW5zdGVhZCBkaXJlY3RseSB0ZWxsIHRoZSAnbWtv ZmZsb2FkJ3MgdGhlDQo+IHJlbGV2YW50DQo+ID4+PiBBQkkgb3B0aW9ucz8gIFRoYXQgaXMsICdU QVJHRVRfT0ZGTE9BRF9PUFRJT05TJyBpbnN0ZWFkDQo+IHN5bnRoZXNpemVzDQo+ID4+PiAnLSBm b2ZmbG9hZC1hYmk9LW02NCcNCj4gPj4+IGV0Yy4sIHdoaWNoIHRoZSAnbWtvZmZsb2FkJ3MgY2Fu IHRoZW4gcmVhZGlseSB1c2UuICBDb3VsZCB5b3UNCj4gcGxlYXNlDQo+ID4+PiBnaXZlIHRoYXQg YSB0cnksIGFuZC9vciBkb2VzIGFueW9uZSBzZWUgYW55IGlzc3VlcyB3aXRoIHRoYXQNCj4gYXBw cm9hY2g/DQo+ID4+Pg0KPiA+Pj4gQW5kIHVzZSBzb21ldGhpbmcgbGlrZSAnLWZvZmZsb2FkLWFi aT1kaXNhYmxlJyB0byByZXBsYWNlIHRoZQ0KPiBjdXJyZW50Og0KPiA+Pj4NCj4gPj4+ICAgIC8q IFBSIGxpYmdvbXAvNjUwOTk6IEN1cnJlbnRseSwgd2Ugb25seSBzdXBwb3J0IG9mZmxvYWRpbmcg aW4NCj4gNjQtDQo+ID4+PiBiaXQNCj4gPj4+ICAgICAgIGNvbmZpZ3VyYXRpb25zLiAgKi8NCj4g Pj4+ICAgIGlmIChvZmZsb2FkX2FiaSA9PSBPRkZMT0FEX0FCSV9MUDY0KQ0KPiA+Pj4gICAgICB7 DQo+ID4+Pg0KPiA+Pj4gKEFzIGRpc2N1c3NlZCBiZWZvcmUsIHRoaXMgc2hvdWxkIGJlIGRvbmUg ZGlmZmVyZW50bHkgYWx0b2dldGhlciwNCj4gPj4+IGJ1dCB0aGF0J3MgZm9yIGFub3RoZXIgZGF5 LikNCj4gPj4gU29ycnksIEkgZG9uJ3QgcXVpdGUgZm9sbG93LiBDdXJyZW50bHkgd2UgZW5hYmxl IG9mZmxvYWRpbmcgaWYNCj4gPj4gb2ZmbG9hZF9hYmkgPT0gT0ZGTE9BRF9BQklfTFA2NCwgd2hp Y2ggaXMgc3ludGhlc2l6ZWQgZnJvbQ0KPiA+PiAtZm9mZmxvYWQtYWJpPWxwNjQuIElmIHdlIGNo YW5nZSAtZm9mZmxvYWQtYWJpIHRvIGluc3RlYWQgc3BlY2lmeQ0KPiA+PiBob3N0LXNwZWNpZmlj IEFCSSBvcHRzLCBJIGd1ZXNzIG1rb2ZmbG9hZCB3aWxsIHN0aWxsIG5lZWQgdG8NCj4gc29tZWhv dw0KPiA+PiBmaWd1cmUgb3V0IHdoaWNoIEFCSSBpcyB1c2VkLCBzbyBpdCBjYW4gZGlzYWJsZSBv ZmZsb2FkaW5nIGZvciAzMi0NCj4gYml0DQo+ID4+ID8gSSBzdXBwb3NlIHdlIGNvdWxkIGFkanVz dCBUQVJHRVRfT0ZGTE9BRF9PUFRJT05TIGZvciBlYWNoIGhvc3QgdG8NCj4gcGFzcyAtZm9mZmxv YWQtYWJpPWRpc2FibGUgaWYgVEFSR0VUX0lMUDMyIGlzIHNldCBhbmQgb2ZmbG9hZCB0YXJnZXQN Cj4gaXMgbnZwdHgsIGJ1dCBub3Qgc3VyZSBpZiB0aGF0J2QgYmUgY29ycmVjdCA/DQo+ID4NCj4g PiBCYXNpY2FsbHksIHllcy4gIE15IGlkZWEgd2FzIHRoYXQgYWxsICdUQVJHRVRfT0ZGTE9BRF9P UFRJT05TJw0KPiA+IGltcGxlbWVudGF0aW9ucyByZXR1cm4gZWl0aGVyIHRoZSBjb3JyZWN0IGhv c3QgZmxhZ3MgdG8gYmUgdXNlZCBieQ0KPiB0aGUNCj4gPiAnbWtvZmZsb2FkJ3MgKHRoZSBjYXNl IHRoYXQgb2ZmbG9hZGluZyBpcyBzdXBwb3J0ZWQgZm9yIHRoZSBjdXJyZW50DQo+ID4gaG9zdCBm bGFncy9BQkkgY29uZmlndXJhdGlvbiksIG9yIG90aGVyd2lzZSByZXR1cm4gJy1mb2ZmbG9hZC0N Cj4gYWJpPWRpc2FibGUnLg0KPiA+IEZvciBleGFtcGxlICh1bnRlc3RlZCk6DQo+ID4NCj4gPj4g Y2hhciAqDQo+ID4+IGl4ODZfb2ZmbG9hZF9vcHRpb25zICh2b2lkKQ0KPiA+PiB7DQo+ID4+ICAg aWYgKFRBUkdFVF9MUDY0KQ0KPiA+PiAtICAgIHJldHVybiB4c3RyZHVwICgiLWZvZmZsb2FkLWFi aT1scDY0Iik7DQo+ID4+ICsgICAgcmV0dXJuIHhzdHJkdXAgKCItZm9mZmxvYWQtYWJpPS1tNjQi KTsNCj4gPj4gLSAgcmV0dXJuIHhzdHJkdXAgKCItZm9mZmxvYWQtYWJpPWlscDMyIik7DQo+ID4+ ICsgIHJldHVybiB4c3RyZHVwICgiLWZvZmZsb2FkLWFiaT1kaXNhYmxlIik7DQo+ID4+IH0NCj4g Pg0KPiA+IFRoYXQgaXMsIG9ubHkgZm9yICdUQVJHRVRfTFA2NCcgb2ZmbG9hZGluZyBpcyBzdXBw b3J0ZWQsIGFuZCB2aWENCj4gPiAnLWZvZmZsb2FkLWFiaT0tbTY0JyB0aGUgJ21rb2ZmbG9hZCdz IGtub3cgdGhhdCB0aGV5IG5lZWQgdG8gc3BlY2lmeQ0KPiA+ICctbTY0Jy4gIEZvciBvdGhlciBo b3N0IGZsYWdzL0FCSSBjb25maWd1cmF0aW9uLCB0aGUgJ21rb2ZmbG9hZCdzDQo+IHNlZQ0KPiA+ ICctZm9mZmxvYWQtYWJpPWRpc2FibGUnIGFuZCB0aHVzIGRpc2FibGUgb2ZmbG9hZCBjb2RlIGdl bmVyYXRpb24NCj4gPiAocmVwbGFjaW5nIHRoZSBjdXJyZW50ICdpZiAob2ZmbG9hZF9hYmkgPT0g T0ZGTE9BRF9BQklfTFA2NCknIGluDQo+ID4gJ21rb2ZmbG9hZCcpLg0KPiA+DQo+ID4+IEluIHRo ZSBhdHRhY2hlZCBwYXRjaA0KPiA+DQo+ID4gWWVzLCB0aGF0J3MgZ29pbmcgaW4gdGhlIHJpZ2h0 IGRpcmVjdGlvbiwgdGhhbmtzIQ0KPiA+DQo+ID4+IEkgYWRkZWQgYW5vdGhlciBvcHRpb24gLWZv ZmZsb2FkLWFiaS1ob3N0LW9wdHMgdG8gc3BlY2lmeSBob3N0IGFiaQ0KPiA+PiBvcHRzLCBhbmQg bGVhdmUgLWZvZmZsb2FkLWFiaSB0byBzcGVjaWZ5IGlmIEFCSSBpcyAzMi82NCBiaXQgd2hpY2gN Cj4gPj4gbWtvZmZsb2FkIGNhbiB1c2UgdG8gZW5hYmxlL2Rpc2FibGUgb2ZmbG9hZGluZyAoYXMg YmVmb3JlKS4NCj4gPg0KPiA+IEknbSBub3Qgc3VyZSBob3dldmVyLCBpZiB0aGlzIGFkZGl0aW9u YWwgb3B0aW9uIGlzIHJlYWxseSBuZWNlc3Nhcnk/DQpXZWxsLCBteSBjb25jZXJuIHdhcyBpZiB0 aGF0J2QgY2hhbmdlIHRoZSBiZWhhdmlvciBmb3IgVEFSR0VUX0lMUDMyID8NCklJVUMsIGN1cnJl bnRseSBmb3IgLWZvZmZsb2FkLWFiaT1pbHAzMiwgbWtvZmZsb2FkIHdpbGwgY3JlYXRlIGVtcHR5 IEMgZmlsZQ0KZm9yIHB0eF9jZmlsZV9uYW1lIChpbnN0ZWFkIG9mIG11bmdlZCBwdHggYXNzZW1i bHkgc2luY2Ugb2ZmbG9hZGluZyB3aWxsIGJlIGRpc2FibGVkKSwNCmFuZCBwYXNzIHRoYXQgdG8g aG9zdCBjb21waWxlciB3aXRoIC1tMzIgb3B0aW9uIChpbiBjb21waWxlX25hdGl2ZSkuDQoNCklm IHdlIGNoYW5nZSAtZm9mZmxvYWQtYWJpIHRvIHNwZWNpZnkgQUJJIGhvc3Qgb3B0cywgYW5kIHBh c3MgLWZvZmZsb2FkLWFiaT1kaXNhYmxlIA0KZm9yIFRBUkdFVF9JTFAzMiBpbiBUQVJHRVRfT0ZG TE9BRF9PUFRJT05TLCBta29mZmxvYWQgd2lsbCBubyBsb25nZXIgYmUgYWJsZSB0bw0KcGFzcyAz Mi1iaXQgQUJJIG9wdHMgdG8gaG9zdCBjb21waWxlciwgd2hpY2ggbWF5IHJlc3VsdCBpbiBsaW5r ZXIgZXJyb3IgKGFyY2ggbWlzbWF0Y2g/KQ0KaWYgdGhlIGhvc3Qgb2JqZWN0IGZpbGVzIGFyZSAz Mi1iaXQgQUJJIGFuZCB4bnZwdHgtbm9uZS5vIGlzIDY0LWJpdCAoYXNzdW1pbmcgdGhlIGhvc3QN CmNvbXBpbGVyIGlzIGNvbmZpZ3VyZWQgdG8gZ2VuZXJhdGUgNjQtYml0IGNvZGUtZ2VuIGJ5IGRl ZmF1bHQpID8NCg0KU28sIEkgdGhvdWdodCB0byBhZGQgYW5vdGhlciBvcHRpb24gLWZvZmZsb2Fk LWFiaS1ob3N0LW9wdHMgdG8gcGFzcyBob3N0LXNwZWNpZmljIEFCSSBvcHRzLA0KYW5kIGtlZXAg LWZvZmZsb2FkLWFiaSBhcy1pcyB0byBpbmZlciBBQkkgdHlwZSBmb3IgZW5hYmxpbmcvZGlzYWJs aW5nIG9mZmxvYWRpbmcuDQo+ID4NCj4gPiBJbiBjYXNlIHdlJ3JlIG5vdCBoYXBweSB0byByZS1w dXJwb3NlIHRoZSBmbGFnIG5hbWUNCj4gPiAnLWZvZmZsb2FkLWFiaT1bLi4uXScsIHdlIGNvdWxk IGFsc28gcmVuYW1lIHRoYXQgb25lIHRvDQo+ID4gJy1mb2ZmbG9hZC1hYmktaG9zdC1vcHRzPVsu Li5dJzsgdGhlIGZvcm1lciBpcyBub3QgdXNlci1leHBvc2VkLCBzbw0KPiB3ZQ0KPiA+IG1heSBj aGFuZ2UgaXQgYXMgbmVjZXNzYXJ5LiAgKE9yLCBpbiBvdGhlciB3b3JkcywgZ28gd2l0aCB5b3Vy DQo+ID4gcHJvcG9zZWQgJy1mb2ZmbG9hZC1hYmktaG9zdC1vcHRzPVsuLi5dJywgYnV0IGFsc28g cmVtb3ZlDQo+ID4gJy1mb2ZmbG9hZC1hYmk9Wy4uLl0nIGF0IHRoZSBzYW1lIHRpbWUuKQ0KPiA+ DQo+ID4NCj4gPiBJJ2xsIGJlIGFibGUgdG8gc3BlbmQgbW9yZSB0aW1lIG9uIHRoaXMgaW4gdHdv IHdlZWtzLg0KPiANCj4gU2luY2Ugd2UgZG8gbm90IHN1cHBvcnQgMzIgLT4gNjQgYml0IG9mZmxv YWQgd291bGRu4oCZdCB0aGUgbW9zdA0KPiBwcmFnbWF0aWMgZml4IGJlIHRvIHJlY29nbml6ZSAt bTY0IGluIHRoZSBudnB0eCBiYWNrZW5kIChhbmQgaWdub3JlDQo+IGl0KT8NCkkgdGhpbmsgbnZw dHggYWxyZWFkeSBzdXBwb3J0cyBtNjQgYW5kIGlnbm9yZXMgaXQuDQpGcm9tIG52cHR4Lm9wdDoN Cg0KbTY0DQpUYXJnZXQgUmVqZWN0TmVnYXRpdmUgTWFzayhBQkk2NCkNCklnbm9yZWQsIGJ1dCBw cmVzZXJ2ZWQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuICBPbmx5IDY0LWJpdCBBQkkgaXMN CnN1cHBvcnRlZC4NCg0KVGhhbmtzLA0KUHJhdGhhbWVzaA0KPiANCj4gUmljaGFyZA0KPiANCj4g DQo+ID4NCj4gPiBHcsO8w59lDQo+ID4gVGhvbWFzDQo+ID4NCj4gPg0KPiA+PiBbbnZwdHhdIFBh c3MgaG9zdCBzcGVjaWZpYyBBQkkgb3B0cyBmcm9tIG1rb2ZmbG9hZC4NCj4gPj4NCj4gPj4gVGhl IHBhdGNoIGFkZHMgYW4gb3B0aW9uIC1mb2ZmbG9hZC1hYmktaG9zdC1vcHRzLCB3aGljaCBpcyBz ZXQgYnkNCj4gPj4gaG9zdCBpbiBUQVJHRVRfT0ZGTE9BRF9PUFRJT05TLCBhbmQgbWtvZmZsb2Fk IHRoZW4gcGFzc2VzIGl0J3MNCj4gdmFsdWUNCj4gPj4gdG8gaG9zdF9jb21waWxlci4NCj4gPj4N Cj4gPj4gZ2NjL0NoYW5nZUxvZzoNCj4gPj4gICAgKiBjb21tb24ub3B0IChmb2ZmbG9hZC1hYmkt aG9zdC1vcHRzKTogTmV3IG9wdGlvbi4NCj4gPj4gICAgKiBjb25maWcvYWFyY2g2NC9hYXJjaDY0 LmNjIChhYXJjaDY0X29mZmxvYWRfb3B0aW9ucyk6IFNldA0KPiA+PiAgICAtZm9mZmxvYWQtYWJp LWhvc3Qtb3B0cy4NCj4gPj4gICAgKiBjb25maWcvaTM4Ni9pMzg2LW9wdHMuY2MgKGl4ODZfb2Zm bG9hZF9vcHRpb25zKTogTGlrZXdpc2UuDQo+ID4+ICAgICogY29uZmlnL3JzNjAwMC9yczYwMDAu Y2MgKHJzNjAwMF9vZmZsb2FkX29wdGlvbnMpOiBMaWtld2lzZS4NCj4gPj4gICAgKiBjb25maWcv bnZwdHgvbWtvZmZsb2FkLmNjIChob3N0X2FiaV9vcHRzKTogRGVmaW5lLg0KPiA+PiAgICAoY29t cGlsZV9uYXRpdmUpOiBBcHBlbmQgaG9zdF9hYmlfb3B0cyB0byBhcmd2X29ic3RhY2suDQo+ID4+ ICAgIChtYWluKTogSGFuZGxlIG9wdGlvbiAtZm9mZmxvYWQtYWJpLWhvc3Qtb3B0cy4NCj4gPj4g ICAgKiBsdG8td3JhcHBlci5jYyAoYXBwZW5kX2NvbXBpbGVyX29wdGlvbnMpOiBIYW5kbGUNCj4g Pj4gICAgLWZvZmZsb2FkLWFiaS1ob3N0LW9wdHMuDQo+ID4+ICAgICogb3B0cy5jYyAoY29tbW9u X2hhbmRsZV9vcHRpb24pOiBMaWtld2lzZS4NCj4gPj4NCj4gPj4gU2lnbmVkLW9mZi1ieTogUHJh dGhhbWVzaCBLdWxrYXJuaSA8cHJhdGhhbWVzaGtAbnZpZGlhLmNvbT4NCj4gPj4NCj4gPj4gZGlm ZiAtLWdpdCBhL2djYy9jb21tb24ub3B0IGIvZ2NjL2NvbW1vbi5vcHQgaW5kZXgNCj4gPj4gZWEz OWY4N2FlNzEuLmQxYTllZmI5NTEzIDEwMDY0NA0KPiA+PiAtLS0gYS9nY2MvY29tbW9uLm9wdA0K PiA+PiArKysgYi9nY2MvY29tbW9uLm9wdA0KPiA+PiBAQCAtMjM2MSw2ICsyMzYxLDEwIEBAIEVu dW0ob2ZmbG9hZF9hYmkpIFN0cmluZyhpbHAzMikNCj4gPj4gVmFsdWUoT0ZGTE9BRF9BQklfSUxQ MzIpIEVudW1WYWx1ZQ0KPiA+PiBFbnVtKG9mZmxvYWRfYWJpKSBTdHJpbmcobHA2NCkgVmFsdWUo T0ZGTE9BRF9BQklfTFA2NCkNCj4gPj4NCj4gPj4gK2ZvZmZsb2FkLWFiaS1ob3N0LW9wdHM9DQo+ ID4+ICtDb21tb24gRHJpdmVyIEpvaW5lZCBNaXNzaW5nQXJnRXJyb3Iob3B0aW9uIG9yIG9wdGlv bj1hYmkgbWlzc2luZw0KPiA+PiArYWZ0ZXIgJXFzKSAtZm9mZmxvYWQtYWJpLWhvc3Qtb3B0cz08 b3B0aW9ucz49PGFiaT4gU3BlY2lmeSBob3N0DQo+IGFiaSBvcHRpb25zLg0KPiA+PiArDQo+ID4+ IGZvbWl0LWZyYW1lLXBvaW50ZXINCj4gPj4gQ29tbW9uIFZhcihmbGFnX29taXRfZnJhbWVfcG9p bnRlcikgT3B0aW1pemF0aW9uIFdoZW4gcG9zc2libGUgZG8NCj4gbm90DQo+ID4+IGdlbmVyYXRl IHN0YWNrIGZyYW1lcy4NCj4gPj4gZGlmZiAtLWdpdCBhL2djYy9jb25maWcvYWFyY2g2NC9hYXJj aDY0LmNjDQo+ID4+IGIvZ2NjL2NvbmZpZy9hYXJjaDY0L2FhcmNoNjQuY2MgaW5kZXggMmFjNWEy MmM4NDguLjc0MThjYjFmYjY5DQo+IDEwMDY0NA0KPiA+PiAtLS0gYS9nY2MvY29uZmlnL2FhcmNo NjQvYWFyY2g2NC5jYw0KPiA+PiArKysgYi9nY2MvY29uZmlnL2FhcmNoNjQvYWFyY2g2NC5jYw0K PiA+PiBAQCAtMTg5OTksOSArMTg5OTksOSBAQCBzdGF0aWMgY2hhciAqIGFhcmNoNjRfb2ZmbG9h ZF9vcHRpb25zDQo+ICh2b2lkKQ0KPiA+PiB7DQo+ID4+ICAgaWYgKFRBUkdFVF9JTFAzMikNCj4g Pj4gLSAgICByZXR1cm4geHN0cmR1cCAoIi1mb2ZmbG9hZC1hYmk9aWxwMzIiKTsNCj4gPj4gKyAg ICByZXR1cm4geHN0cmR1cCAoIi1mb2ZmbG9hZC1hYmk9aWxwMzINCj4gPj4gKyAtZm9mZmxvYWQt YWJpLWhvc3Qtb3B0cz0tbWFiaT1pbHAzMiIpOw0KPiA+PiAgIGVsc2UNCj4gPj4gLSAgICByZXR1 cm4geHN0cmR1cCAoIi1mb2ZmbG9hZC1hYmk9bHA2NCIpOw0KPiA+PiArICAgIHJldHVybiB4c3Ry ZHVwICgiLWZvZmZsb2FkLWFiaT1scDY0DQo+ID4+ICsgLWZvZmZsb2FkLWFiaS1ob3N0LW9wdHM9 LW1hYmk9bHA2NCIpOw0KPiA+PiB9DQo+ID4+DQo+ID4+IHN0YXRpYyBzdHJ1Y3QgbWFjaGluZV9m dW5jdGlvbiAqDQo+ID4+IGRpZmYgLS1naXQgYS9nY2MvY29uZmlnL2kzODYvaTM4Ni1vcHRpb25z LmNjDQo+ID4+IGIvZ2NjL2NvbmZpZy9pMzg2L2kzODYtb3B0aW9ucy5jYyBpbmRleCAxYzhmNzgz NWFmMi4uYmQ5NjA2NzRlNWQNCj4gPj4gMTAwNjQ0DQo+ID4+IC0tLSBhL2djYy9jb25maWcvaTM4 Ni9pMzg2LW9wdGlvbnMuY2MNCj4gPj4gKysrIGIvZ2NjL2NvbmZpZy9pMzg2L2kzODYtb3B0aW9u cy5jYw0KPiA+PiBAQCAtMzY2OSw4ICszNjY5LDggQEAgY2hhciAqDQo+ID4+IGl4ODZfb2ZmbG9h ZF9vcHRpb25zICh2b2lkKQ0KPiA+PiB7DQo+ID4+ICAgaWYgKFRBUkdFVF9MUDY0KQ0KPiA+PiAt ICAgIHJldHVybiB4c3RyZHVwICgiLWZvZmZsb2FkLWFiaT1scDY0Iik7DQo+ID4+IC0gIHJldHVy biB4c3RyZHVwICgiLWZvZmZsb2FkLWFiaT1pbHAzMiIpOw0KPiA+PiArICAgIHJldHVybiB4c3Ry ZHVwICgiLWZvZmZsb2FkLWFiaT1scDY0DQo+ID4+ICsgLWZvZmZsb2FkLWFiaS1ob3N0LW9wdHM9 LW02NCIpOyAgcmV0dXJuIHhzdHJkdXANCj4gPj4gKyAoIi1mb2ZmbG9hZC1hYmk9aWxwMzIgLWZv ZmZsb2FkLWFiaS1ob3N0LW9wdHM9LW0zMiIpOw0KPiA+PiB9DQo+ID4+DQo+ID4+IC8qIEhhbmRs ZSAiY2RlY2wiLCAic3RkY2FsbCIsICJmYXN0Y2FsbCIsICJyZWdwYXJtIiwgInRoaXNjYWxsIiwN Cj4gZGlmZg0KPiA+PiAtLWdpdCBhL2djYy9jb25maWcvbnZwdHgvbWtvZmZsb2FkLmNjDQo+IGIv Z2NjL2NvbmZpZy9udnB0eC9ta29mZmxvYWQuY2MNCj4gPj4gaW5kZXggNTAzYjFhYmNlZmQuLmQ1 Y2EyMzg2NjQxIDEwMDY0NA0KPiA+PiAtLS0gYS9nY2MvY29uZmlnL252cHR4L21rb2ZmbG9hZC5j Yw0KPiA+PiArKysgYi9nY2MvY29uZmlnL252cHR4L21rb2ZmbG9hZC5jYw0KPiA+PiBAQCAtNjEs NiArNjEsNyBAQCBzdGF0aWMgY29uc3QgY2hhciAqb21wX3JlcXVpcmVzX2ZpbGU7IHN0YXRpYw0K PiBjb25zdA0KPiA+PiBjaGFyICpwdHhfZHVtcGJhc2U7DQo+ID4+DQo+ID4+IGVudW0gb2ZmbG9h ZF9hYmkgb2ZmbG9hZF9hYmkgPSBPRkZMT0FEX0FCSV9VTlNFVDsNCj4gPj4gK2NvbnN0IGNoYXIg Kmhvc3RfYWJpX29wdHMgPSBOVUxMOw0KPiA+Pg0KPiA+PiAvKiBEZWxldGUgdGVtcGZpbGVzLiAg Ki8NCj4gPj4NCj4gPj4gQEAgLTYwNywxNyArNjA4LDkgQEAgY29tcGlsZV9uYXRpdmUgKGNvbnN0 IGNoYXIgKmluZmlsZSwgY29uc3QgY2hhcg0KPiAqb3V0ZmlsZSwgY29uc3QgY2hhciAqY29tcGls ZXIsDQo+ID4+ICAgb2JzdGFja19wdHJfZ3JvdyAoJmFyZ3Zfb2JzdGFjaywgcHR4X2R1bXBiYXNl KTsNCj4gPj4gICBvYnN0YWNrX3B0cl9ncm93ICgmYXJndl9vYnN0YWNrLCAiLWR1bXBiYXNlLWV4 dCIpOw0KPiA+PiAgIG9ic3RhY2tfcHRyX2dyb3cgKCZhcmd2X29ic3RhY2ssICIuYyIpOw0KPiA+ PiAtICBzd2l0Y2ggKG9mZmxvYWRfYWJpKQ0KPiA+PiAtICAgIHsNCj4gPj4gLSAgICBjYXNlIE9G RkxPQURfQUJJX0xQNjQ6DQo+ID4+IC0gICAgICBvYnN0YWNrX3B0cl9ncm93ICgmYXJndl9vYnN0 YWNrLCAiLW02NCIpOw0KPiA+PiAtICAgICAgYnJlYWs7DQo+ID4+IC0gICAgY2FzZSBPRkZMT0FE X0FCSV9JTFAzMjoNCj4gPj4gLSAgICAgIG9ic3RhY2tfcHRyX2dyb3cgKCZhcmd2X29ic3RhY2ss ICItbTMyIik7DQo+ID4+IC0gICAgICBicmVhazsNCj4gPj4gLSAgICBkZWZhdWx0Og0KPiA+PiAt ICAgICAgZ2NjX3VucmVhY2hhYmxlICgpOw0KPiA+PiAtICAgIH0NCj4gPj4gKyAgaWYgKCFob3N0 X2FiaV9vcHRzKQ0KPiA+PiArICAgIGZhdGFsX2Vycm9yIChpbnB1dF9sb2NhdGlvbiwgIi1mb2Zm bG9hZC1hYmktaG9zdC1vcHRzIG5vdA0KPiA+PiArIHNwZWNpZmllZC4iKTsgIG9ic3RhY2tfcHRy X2dyb3cgKCZhcmd2X29ic3RhY2ssIGhvc3RfYWJpX29wdHMpOw0KPiA+PiAgIG9ic3RhY2tfcHRy X2dyb3cgKCZhcmd2X29ic3RhY2ssIGluZmlsZSk7DQo+ID4+ICAgb2JzdGFja19wdHJfZ3JvdyAo JmFyZ3Zfb2JzdGFjaywgIi1jIik7DQo+ID4+ICAgb2JzdGFja19wdHJfZ3JvdyAoJmFyZ3Zfb2Jz dGFjaywgIi1vIik7IEBAIC03MjEsNiArNzE0LDggQEAgbWFpbg0KPiA+PiAoaW50IGFyZ2MsIGNo YXIgKiphcmd2KQ0KPiA+PiAgICAgICAgICAgICAidW5yZWNvZ25pemFibGUgYXJndW1lbnQgb2Yg b3B0aW9uICIgU1RSKTsNCj4gPj4gICAgfQ0KPiA+PiAjdW5kZWYgU1RSDQo+ID4+ICsgICAgICBl bHNlIGlmIChzdGFydHN3aXRoIChhcmd2W2ldLCAiLWZvZmZsb2FkLWFiaS1ob3N0LW9wdHM9Iikp DQo+ID4+ICsgICAgaG9zdF9hYmlfb3B0cyA9IGFyZ3ZbaV0gKyBzdHJsZW4gKCItZm9mZmxvYWQt YWJpLWhvc3Qtb3B0cz0iKTsNCj4gPj4gICAgICAgZWxzZSBpZiAoc3RyY21wIChhcmd2W2ldLCAi LWZvcGVubXAiKSA9PSAwKQ0KPiA+PiAgICBmb3Blbm1wID0gdHJ1ZTsNCj4gPj4gICAgICAgZWxz ZSBpZiAoc3RyY21wIChhcmd2W2ldLCAiLWZvcGVuYWNjIikgPT0gMCkgZGlmZiAtLWdpdA0KPiA+ PiBhL2djYy9jb25maWcvcnM2MDAwL3JzNjAwMC5jYyBiL2djYy9jb25maWcvcnM2MDAwL3JzNjAw MC5jYyBpbmRleA0KPiA+PiAwYmNjNmEyZDBhYi4uZGVjZGY0OWExZjUgMTAwNjQ0DQo+ID4+IC0t LSBhL2djYy9jb25maWcvcnM2MDAwL3JzNjAwMC5jYw0KPiA+PiArKysgYi9nY2MvY29uZmlnL3Jz NjAwMC9yczYwMDAuY2MNCj4gPj4gQEAgLTE3MzMzLDkgKzE3MzMzLDkgQEAgc3RhdGljIGNoYXIg KiByczYwMDBfb2ZmbG9hZF9vcHRpb25zICh2b2lkKQ0KPiB7DQo+ID4+ICAgaWYgKFRBUkdFVF82 NEJJVCkNCj4gPj4gLSAgICByZXR1cm4geHN0cmR1cCAoIi1mb2ZmbG9hZC1hYmk9bHA2NCIpOw0K PiA+PiArICAgIHJldHVybiB4c3RyZHVwICgiLWZvZmZsb2FkLWFiaT1scDY0DQo+ID4+ICsgLWZv ZmZsb2FkLWFiaS1ob3N0LW9wdHM9LW02NCIpOw0KPiA+PiAgIGVsc2UNCj4gPj4gLSAgICByZXR1 cm4geHN0cmR1cCAoIi1mb2ZmbG9hZC1hYmk9aWxwMzIiKTsNCj4gPj4gKyAgICByZXR1cm4geHN0 cmR1cCAoIi1mb2ZmbG9hZC1hYmk9aWxwMzINCj4gPj4gKyAtZm9mZmxvYWQtYWJpLWhvc3Qtb3B0 cz0tbTMyIik7DQo+ID4+IH0NCj4gPj4NCj4gPj4NCj4gPj4gZGlmZiAtLWdpdCBhL2djYy9sdG8t d3JhcHBlci5jYyBiL2djYy9sdG8td3JhcHBlci5jYyBpbmRleA0KPiA+PiA2YmZjOTY1OTBhNS4u MWVjYzQ5OTdlNWEgMTAwNjQ0DQo+ID4+IC0tLSBhL2djYy9sdG8td3JhcHBlci5jYw0KPiA+PiAr KysgYi9nY2MvbHRvLXdyYXBwZXIuY2MNCj4gPj4gQEAgLTc0NSw2ICs3NDUsNyBAQCBhcHBlbmRf Y29tcGlsZXJfb3B0aW9ucyAob2JzdGFjayAqYXJndl9vYnN0YWNrLA0KPiB2ZWM8Y2xfZGVjb2Rl ZF9vcHRpb24+IG9wdHMpDQo+ID4+ICAgIGNhc2UgT1BUX2ZvcGVuYWNjOg0KPiA+PiAgICBjYXNl IE9QVF9mb3BlbmFjY19kaW1fOg0KPiA+PiAgICBjYXNlIE9QVF9mb2ZmbG9hZF9hYmlfOg0KPiA+ PiArICAgIGNhc2UgT1BUX2ZvZmZsb2FkX2FiaV9ob3N0X29wdHNfOg0KPiA+PiAgICBjYXNlIE9Q VF9mY2ZfcHJvdGVjdGlvbl86DQo+ID4+ICAgIGNhc2UgT1BUX2Zhc3luY2hyb25vdXNfdW53aW5k X3RhYmxlczoNCj4gPj4gICAgY2FzZSBPUFRfZnVud2luZF90YWJsZXM6DQo+ID4+IGRpZmYgLS1n aXQgYS9nY2Mvb3B0cy5jYyBiL2djYy9vcHRzLmNjIGluZGV4DQo+IDBiN2IxMzdjMzc2Li43OTEx ODIzN2NlNA0KPiA+PiAxMDA2NDQNCj4gPj4gLS0tIGEvZ2NjL29wdHMuY2MNCj4gPj4gKysrIGIv Z2NjL29wdHMuY2MNCj4gPj4gQEAgLTMwNjksNiArMzA2OSw3IEBAIGNvbW1vbl9oYW5kbGVfb3B0 aW9uIChzdHJ1Y3QgZ2NjX29wdGlvbnMNCj4gKm9wdHMsDQo+ID4+ICAgICAgIGJyZWFrOw0KPiA+ Pg0KPiA+PiAgICAgY2FzZSBPUFRfZm9mZmxvYWRfYWJpXzoNCj4gPj4gKyAgICBjYXNlIE9QVF9m b2ZmbG9hZF9hYmlfaG9zdF9vcHRzXzoNCj4gPj4gI2lmZGVmIEFDQ0VMX0NPTVBJTEVSDQo+ID4+ ICAgICAgIC8qIEhhbmRsZWQgaW4gdGhlICdta29mZmxvYWQncy4gICovICNlbHNlDQo=