From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id +cWgI3J+z2or1wgAWB0awg (envelope-from ) for ; Wed, 14 Oct 2026 09:06:58 -0400 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=XPQtEcGP; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 728461E051; Wed, 14 Oct 2026 09:06:58 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 54EEC1E04E for ; Wed, 14 Oct 2026 09:06:56 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id DDCB74BA23E1 for ; Wed, 14 Oct 2026 13:06:55 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DDCB74BA23E1 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=XPQtEcGP Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.15]) by sourceware.org (Postfix) with ESMTPS id 482824BA2E08 for ; Wed, 14 Oct 2026 13:06:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 482824BA2E08 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 482824BA2E08 Authentication-Results: sourceware.org; arc=fail smtp.remote-ip=192.198.163.15 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1791983180; cv=fail; b=bS7mHp6NGEyJqnoRoQMxQarv9IQ4erBlAMewWD0eE9WCnimwkwTk1KkDA6r/0nXCWJrfG4R98Tkn/lINh9efRrPpuBumZXL0ocUdz8/vqfXHkht8ofkA2fPZ5XmTDaR/N/aNx6xv00JAsT9X+SCa7KokeFyXEVLDW1LFMxlKaIo= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1791983180; c=relaxed/simple; bh=cEQo97pPvsTM9t3ptsrUN8raXUQxI2NHKFZUqEbZscc=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=hs8EetyTCeNavHb/HyTN+MhRLFHbVoSOH2kwHc/1NrQFsWjo2uWZLsMJ7skm8f0t26yhNIQMG6f4UROhCLxDPKiWuieAk/jbGHqVY9zYB7w5/g0NstzHDUzMmQj8f4oTE42lbr1cKPrQJks5Po54F8XD4N24WJpyloIQ7T/hdDU= ARC-Authentication-Results: i=2; sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=XPQtEcGP DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 482824BA2E08 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1791983181; x=1823519181; h=from:to:subject:date:message-id:references:in-reply-to: mime-version:content-transfer-encoding; bh=cEQo97pPvsTM9t3ptsrUN8raXUQxI2NHKFZUqEbZscc=; b=XPQtEcGPZK4924pC3JaIneguITDGjVn6MBPn7I0MM517OSa6ZK+koScu wPyImmhlQoU4eQh27wMzNTcEoIIiXUQt/oPXgmcdcRXg2HXumkUND8uiH IiWndXqxBNDUVRXKllZ0FUfg+nBmIgRrVJjycxeUc1Wjua+rkx5ZADGIA gK2TMtNVLD9Dv6+iUIjVpdtaT/9mn3e7SCfQArmPCjNBaG+TsaxiwR163 rwQUG+cnDclISd1ComplI4pIgenvw/erh4BYn2cJNpoAN5fMxq9B+catx ml2lbzqZ1v43OQpo+KabBiK2Mc8MrJf2NBadbnpxHcuagDQpOSaUWmsu8 g==; X-CSE-ConnectionGUID: 1Y5URiJUSRikP7CsmOCyHw== X-CSE-MsgGUID: KmcLIqNfQq6g2VKIgrCt3A== X-IronPort-AV: E=McAfee;i="6800,10657,11934"; a="735849" X-IronPort-AV: E=Sophos;i="6.27,157,1787036400"; d="scan'208";a="735849" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by fmvoesa109.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Oct 2026 06:06:15 -0700 X-CSE-ConnectionGUID: Ix8dyttwQWaF/AcaFMUqUw== X-CSE-MsgGUID: JeJo9J3PQ1ygqTvFuJ8n0Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.27,157,1787036400"; d="scan'208";a="1342516" Received: from orsmsx901.amr.corp.intel.com ([10.22.229.23]) by orviesa009.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Oct 2026 06:06:15 -0700 Received: from ORSMSX903.amr.corp.intel.com (10.22.229.25) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.49; Wed, 14 Oct 2026 06:06:13 -0700 Received: from ORSEDG902.ED.cps.intel.com (10.7.248.12) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.49 via Frontend Transport; Wed, 14 Oct 2026 06:06:13 -0700 Received: from SA9PR02CU001.outbound.protection.outlook.com (40.93.196.1) by edgegateway.intel.com (134.134.137.112) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.49; Wed, 14 Oct 2026 06:06:13 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GyXRtq4v2ny8xmbH6iHLW2zSKSKcHQM5Q4mL+fecht/iqUWkjPwsGaku6HMfC2x42jwL9lBn2J5z1kdG5E1/VcHSJXN6uypzEZcANWzV7p6CUuS1RQByJ6+YlowEJitXba+uRojyfpyrHLczx3SfhLQ4KDMV9k2SwPwYb+vKN7j3V84ceV514nNdOnCCxVz+ciPXa22nfF8Q/5VZTJezitCFcLUVUy6Zotgtz5yFFzqZBNbx0qZSI8fzpzjdTeVZsvA6FYFQNdj6ioM+EegEhFrk0/4M+iqBM+77Yf2M6H8UskC/hAGgX8i+XTt3ZqzlHm7E+8IB8Ws2VihX+N4qnw== 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=2P1Gn5hq8ARUQRTFe2Hqsi9JVjlcGImmhmT68VNxvzw=; b=ushm7Vqc7EbIipTPiHGzlUcxq4XVfkRtBiZrfVxTZK6UJZyxEQjySqKonH2YcmnSkBt9qTtbL4/HupcRp5RmNk9CaFSNOhj80b25VD4GSrpe/jgcdudONxvWlNj+p561vGokY1krkfJ/oOUaAXsIO6mDKo+MdqIdtBYTHJCdackS8f9+G5RX0dFnzp3C2wHVCu9Cyp3emDRwtUQvDYvbXsgCINizti66DughkBa4AP+j+QfnJQCzIfSCwfIH31Xx2S9FFyF1Rf1HDuELaRD4aoaqiVGmMcwFHsNxBrz+w67bYfceX5EEQiQ3nUnerKCR6US8AwecM+0L80fJoJOYDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from SN7PR11MB7638.namprd11.prod.outlook.com (2603:10b6:806:34b::22) by LV0PR11MB340236.namprd11.prod.outlook.com (2603:10b6:408:3ee::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.522.13; Wed, 14 Oct 2026 13:06:10 +0000 Received: from SN7PR11MB7638.namprd11.prod.outlook.com ([fe80::7a35:98d:f02c:b011]) by SN7PR11MB7638.namprd11.prod.outlook.com ([fe80::7a35:98d:f02c:b011%4]) with mapi id 15.21.0496.021; Wed, 14 Oct 2026 13:06:09 +0000 From: "Joos, Christina" To: Hannes Domani , "gdb-patches@sourceware.org" , "Rohr, Stephan" Subject: RE: [PATCH v4 8/9] Windows gdb: Implement AVX-512 register support Thread-Topic: [PATCH v4 8/9] Windows gdb: Implement AVX-512 register support Thread-Index: AQHdUO5/hSbhHa7AzEG4cWQLJuhIaLbu5yVggAZuPICAB6PW8A== Date: Wed, 14 Oct 2026 13:06:09 +0000 Message-ID: References: <20260930151403.774660-1-ssbssa@yahoo.de> <20260930151403.774660-8-ssbssa@yahoo.de> <950756046.1724680.1791556611653@mail.yahoo.com> In-Reply-To: <950756046.1724680.1791556611653@mail.yahoo.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN7PR11MB7638:EE_|LV0PR11MB340236:EE_ x-ms-office365-filtering-correlation-id: ca6aa26e-9fa6-404b-3c44-08df29f3ea95 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|376014|1800799024|23010399003|6133799003|18002099003|22082099003|10067099003|11063799006|4143699003|261009223027099003|38070700021|56012099006; x-microsoft-antispam-message-info: UaFXKpjPdQAq/9jOq7vPihKWr7EuSKh3TpVBOscWCBOQrEE3Tzl3tl+pxMWFcPP6cx6E0Hryw61zkf7dLaZ6jDwtVnZjW1n6Iovl9SpkeOa/tW13joP2JbHv4j2vJ4pO4Njp4kU2yD1JttALijggz7vgGDbI049gqjMBXziPf9S44FmpmfiPwQOQnd6MsZXLz9cT6zBoi46/aUEeskxDnNJmSc1pHCpX3Dxy4mdJjM3HSNYULMxoqsJJ/qFuqIrTxx78jL+3zC3Aa/c5xPEQi8U4XvXFwCrWSlp9soMvl/LOZrgKyfp7dLnDsC6253S1fJwkGjtXIXU9l6QRfwv7PrLxVqrTiQxkqsIzXhbvbqEHWbZBCLXXHR7DZDYXqAk0WTZC14499XIp4bfrPTFj/VvPzVc3PdNGv3u3G/SxqsHmnftzI9OpoMOijOPbd+mhHCQjVr0ac0OsrMayK/VUvzBU/tXhR6PjqMBD0ffPH1fxnmdIqKG0tsxAObH9Y2c/8F47+LjgRoyqvrKYmlbvsPnd2cT8em8SAYME8BWoTQGEB90thUohVymIY/muL24M7bvUrTblNYGCnMy7iXIbCZFdLIyJuih945x6yx5hIR5y+UEWweKat/VsRn+8kB/wD4aVyS3KD1nNP22X2LHTX1pbAdDUdC9nlB21bcYmYjcMSozdYGvegqZt8koCSCAg x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN7PR11MB7638.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(23010399003)(6133799003)(18002099003)(22082099003)(10067099003)(11063799006)(4143699003)(261009223027099003)(38070700021)(56012099006); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dHJOZGd5ZWY4Q0dTYmtIZzRwN25QbWd4SlllZjdBNk9YQ2FuYWVyamlMU3lW?= =?utf-8?B?eVBLSDgxSkEzOVRMK1hQQncrdlY4VWpFQnlIU1JlYlFjZU4wQTFiaXI2cXky?= =?utf-8?B?M3lMYlZWeGZqRFEzakk1RXdiZkk3bFJnWDB2d3lNeERoMW4rYTdqS3R6Wk5L?= =?utf-8?B?aHBHekNPRUYxK3VXY2tuQkZhNXh1Y1hTUGxBQkZCK01Pb3hiRDBydnd1UzlC?= =?utf-8?B?Y21TUjUrV2NVbE1FQ0JGZ1FLMEl0V3FsK2tzVmxBb1E5WlFwaUt0MTZWcWF1?= =?utf-8?B?UVFNdTVOSzZQekhvUHlNVjR0VHI0enNONi80OXdNYVE5ZGZvK3hPcjY5KzJS?= =?utf-8?B?cTVOY0FTUTJGZ2MxU2JXbTFQU1hGRXJMTHlvRUQyRmNhRkVaU3FZMmZqYlI2?= =?utf-8?B?bVc1TndVcEgzU2hVaE9ZRFBTcnY2SXJxUk1UcWh0Nm9rT1MrdjBNNnI3UHNp?= =?utf-8?B?aXZ5WmtJTUN3U29HczFGMHVSbDgzdkxXYUZsR0VSWHNPQXlDY21PenFYUnNL?= =?utf-8?B?SDJUSGNPblV0V3lXa09OYmoxZ3VZZFdYRzBjVkJtSUE3ZEJiRjhWR3dYSGdr?= =?utf-8?B?ZzdyN2ZidDhVNkJZeXFNUkxwSU9DbHMycWVBTDBYeU4yNmY0Yzc1ZGZwS09h?= =?utf-8?B?VWVTMHBwWGtsb2lhcWxubUM3ZFhNY3RyR1c4Nk82L2owcVoyTXcremVTY3Y4?= =?utf-8?B?cXlJWDVpa0lEeDE1TmkzS3ArTXhCWHBJZTZpeHhaaHgvK0gvcWJYZmNPNW9J?= =?utf-8?B?dDRCYzNsVnlSb3owNmYyYk43dkNSU3ZZWFZ4aE85OWNWaUJObi9ZRmRlQUtM?= =?utf-8?B?L1lDelo3Y29JTWpWOUd4azJtSDNHcTdtVlR1bG9Sa3hRU3RaZjI4RGxBdGdt?= =?utf-8?B?SlJyK0dJRklUTjR0YzZDdlR5WCtSais4WGdlYUNFdGU5bFRGUllDOU9kZEJV?= =?utf-8?B?aDcrK00vL04rejA3NUsraTZLWW8zZ2pPYXlwQjdVNnEwTDRjWWdhOGVZM0dw?= =?utf-8?B?M3p4WTZsZktXWHpoc01YazdNRXgrUzRieVEreWNxalJ1QVczVEkyZjc4TElT?= =?utf-8?B?c3NHSU5VYytHeEcyamVQeWUra0JVZnprNWtHMkdqU0ptTXBPOHBaR21nY1I0?= =?utf-8?B?cS9TeDM4eVRWV25Cd0Eva3F5d3VUa0kxY2ZhUU5OYVVGM3FvdVNDUlJBejVu?= =?utf-8?B?RDhyMkhrU3hSczhEVzRhSnkyMVRrblRJYVMzKzY5RW1kb1lGNGVZaXhqeWpT?= =?utf-8?B?NHE1a2g4TjdFU3Vhb1ZUcXo1dlpMQjRiT2Y1Um9TcVRNNlEya2haZ3NGdW5F?= =?utf-8?B?TDB4aG5UVnVMRHpsMWZWd1Z6cmQ3U2dnQmFJYS9ZTkhGQVdZcTlsSkNQakJL?= =?utf-8?B?TWxJZUhKcCt5bUJmbVRkSDBEcXpRcFo1RlpkbmMzZ2pjZXNPcXlMdXhEaTlt?= =?utf-8?B?a0V0aFgxTng2dFJZaHpiWlRsZEFZc3Y5ZkhZVVptRVlKV0d6RzZYcXhzQU9N?= =?utf-8?B?NFZ4UzN0TUo5cWpMNUpZQTNzTlVONzJGcGRsU2x6TjhCZi80cWlOTVZYNnhB?= =?utf-8?B?UUkwVzd2Mkxnc3ArcmErUlB0TENJeVRWS0JOTXZvSFduSTNpYXozKzdjZ1Ur?= =?utf-8?B?eFFpSkRNM1A4bVdReExRSWQrNmFUaTAzeC9NM25JeWgzQ29wRUFodXJwUlZZ?= =?utf-8?B?U3VvNzZZRDVhcXFzS1JGU3lVNVNuZlB3U01Tbms3Rk5EZFNMckFzbW9VRk4w?= =?utf-8?B?UEs0d1AwUEJlVjVTUmN6UDc0QkdjUUVYM0hUY0hlU3B6dHJ1Vjl2REoySm9N?= =?utf-8?B?MTVnYmZWa1FqVU5tZkp6Uis4T2luNnE2R2h5QXp5UGVxcGR4Zk5MT0VuNHZV?= =?utf-8?B?L0pKNzNOWENtbmZCYlUrZzQ4QUdDMnMvRlpTdG9EOHliMUl2OWNnZEpidUYy?= =?utf-8?B?Y0pEbHBwbFJFOXV0d1c1RlMveThvcnZJZFVTa0l0VVV5SCtKeTh6cCtBdS9L?= =?utf-8?B?cHVoNTdRZThPY0dCa0tBUG9TSXhKSURZS25FU3k4Ti9JR2lJckgxN2tOM2pH?= =?utf-8?B?eUZZWVFQVEpmRWttQysya2o5U08rblBqbnBMcWtsWVYxZStxazJCaUlPbCsx?= =?utf-8?B?TnByWGpSaDA5TXh4aHBTS3RLaXJPKzZrR3JFczdDR05kNHFnZlFLb1pBcTRL?= =?utf-8?B?aVRlcURUUlZZZFF6WXhyTWZZbFlOM0h3U1IrcTVTVlliZFNWT3d0eTJHM1ZG?= =?utf-8?B?aXV1cUpwUWUxdXdKYUM2YlgvQkx3WW8xVWMyZ0o4Ri9TTThIVTloRkhDUEZu?= =?utf-8?B?QTBKL3RVK0VCdUxqVWxmd0FpK083NUdaRmJFa0hLVlNQNVBOcHF3dz09?= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: zVqASn5EbrCQ/C6GomvEX9H9HZyRyYdTFnnixP00k1faksX8IqypGv5kOCINRIxFQ5hTUbB3nKLv7zgK3YXwMcYXf4+kJ/9lWAp4b3feoLFMNpPqosTAnkC3+rRjZWcZzq1ad4vEoXgdBLoDNTIO9FMF12ai2t2cSyEubcmk5BXNJ2fkpDtPYFcArf/qA/E9FNt9jni7VW+OQuafwCna0Fs+RJkoclOFj1JC0IK4rbqYWolmA6nRXLJ18tt/5Gpd/z1a1SNnUmiuc0HS0TQxjM204lx1Mz/QzURgZKjcTZINNXPU44vNtmRe+qf1UWdN5/y0oNSi+VZkYHtjJXCOlw== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN7PR11MB7638.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ca6aa26e-9fa6-404b-3c44-08df29f3ea95 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Oct 2026 13:06:09.8870 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: UBR4fDYzeKkBXc7eB32+Q4x6HJipJOKtC1R2iVDQGUEM2QaRvWelPwT40BFsbSgE1ix8q9lW/VUvLMWKTeX14ABgxzlnEpwaPuGfIqsQR+I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV0PR11MB340236 X-OriginatorOrg: intel.com Content-Transfer-Encoding: base64 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBIYW5uZXMgRG9tYW5pIDxzc2Jz c2FAeWFob28uZGU+DQo+IFNlbnQ6IEZyZWl0YWcsIDkuIE9rdG9iZXIgMjAyNiAxNjozNw0KPiBU bzogZ2RiLXBhdGNoZXNAc291cmNld2FyZS5vcmc7IFJvaHIsIFN0ZXBoYW4gPHN0ZXBoYW4ucm9o ckBpbnRlbC5jb20+DQo+IENjOiBKb29zLCBDaHJpc3RpbmEgPGNocmlzdGluYS5qb29zQGludGVs LmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2NCA4LzldIFdpbmRvd3MgZ2RiOiBJbXBsZW1l bnQgQVZYLTUxMiByZWdpc3RlciBzdXBwb3J0DQo+IA0KPiAgQW0gTW9udGFnLCA1LiBPa3RvYmVy IDIwMjYgdW0gMTY6MDk6MTkgTUVTWiBoYXQgUm9ociwgU3RlcGhhbg0KPiA8c3RlcGhhbi5yb2hy QGludGVsLmNvbT4gRm9sZ2VuZGVzIGdlc2NocmllYmVuOg0KPiANCj4gPiBIaSBIYW5ucywNCj4g Pg0KPiA+IGFsc28gaGVyZSwgc29tZSBtaW5vciBmaW5kaW5ncyBiZWxvdy4NCj4gPg0KPiA+IFRo YW5rcw0KPiA+IFN0ZXBoYW4NCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPiA+IEZyb206IEhhbm5lcyBEb21hbmkgPHNzYnNzYUB5YWhvby5kZT4NCj4gPiA+IFNlbnQ6 IFdlZG5lc2RheSwgMzAgU2VwdGVtYmVyIDIwMjYgMTc6MTINCj4gPiA+IFRvOiBnZGItcGF0Y2hl c0Bzb3VyY2V3YXJlLm9yZw0KPiA+ID4gU3ViamVjdDogW1BBVENIIHY0IDgvOV0gV2luZG93cyBn ZGI6IEltcGxlbWVudCBBVlgtNTEyIHJlZ2lzdGVyDQo+ID4gPiBzdXBwb3J0DQo+ID4gPg0KPiA+ ID4gU2ltaWxhciB0byBjb21taXQgMDFmOWY4MDhlMmU4NjE4N2M5NWU3Y2ZmNGFlYjAxNGE0MjFh NTNjZSBmb3INCj4gPiA+IExpbnV4LA0KPiA+DQo+ID4gTWF5YmUgbmFtZSB0aGUgY29tbWl0IHRp dGxlIGluc3RlYWQgb2YgdGhlIGhhc2guIE5vdCBzdXJlIHdoYXQgaXMgYmVzdA0KPiA+IHByYWN0 aWNlIGZvciB0aGlzLg0KPiANCj4gVGhpcyBwYXJ0IHdhcyBzdWdnZXN0ZWQgdG8gbWUgaW4gYW5v dGhlciByZXZpZXcsIHNvIG1heWJlIEkgc2hvdWxkIGp1c3QgYWRkDQo+IGJvdGggY29tbWl0IGhh c2ggYW5kIHRpdGxlLg0KPiANCj4gDQo+ID4gPiB0aGlzIHBhdGNoIGFkZHMgc3VwcG9ydCBmb3Ig dGhlIEludGVsIEFWWC01MTIgcmVnaXN0ZXJzIGZvciAzMiBhbmQNCj4gPiA+IDY0LWJpdCBtb2Rl IG9uIFdpbmRvd3MuDQo+ID4gPiBJdCBlbmFibGVzIGFjY2Vzc2luZyByZWdpc3RlcnMgJHltbTAg LSAkeW1tMzEsICR6bW0wIC0gJHptbTMxLCBhbmQNCj4gPiA+ICRrMCAtICRrNyB3aGVyZSB0aGV5 IGFyZSBhdmFpbGFibGUuDQo+ID4gPg0KPiA+DQo+ID4gV291bGRuJ3Qgd2Ugd2FudCB0byBtZW50 aW9uICJJdCBlbmFibGVzIGFjY2Vzc2luZyByZWdpc3RlcnMNCj4gPiAkeW1tMTYgLSAkeW1tMzEg Wy4uXSIgaW5zdGVhZD8NCj4gDQo+IE9rLg0KPiANCj4gDQo+ID4gPiBBZnRlciB0aGlzIHBhdGNo IGdkYi5hcmNoL2kzODYtYXZ4NTEyLmV4cCBwYXNzZXMgb24gd2luZG93cy4NCj4gPiA+IC0tLQ0K PiA+ID4gdjM6DQo+ID4gPiAtIG1lcmdlZCBnZGIrZ2Ric2VydmVyIHBhcnRzLCBhbmQgc3BsaXQg YWdhaW4gQVZYL0FWWC01MTIgcGFydHMNCj4gPiA+IHY0Og0KPiA+ID4gLSBBZGQgcmVmZXJlbmNl IHRvIGVxdWl2YWxlbnQgTGludXggY29tbWl0IGluIGNvbW1pdCBtZXNzYWdlDQo+ID4gPiAtIEFk ZCBjaGVjayBmb3IgZW5hYmxlZCB4c3RhdGVfZmVhdHVyZXMgaW4gZ2V0X2NvbnRleHRfcmVnX3B0 ciBvZg0KPiA+ID4geDg2LXdpbmRvd3MtbmF0LmMNCj4gPiA+IC0gQ2hhbmdlZCBhbGwgTlVMTCB0 byBudWxscHRyDQo+ID4gPiAtLS0NCj4gPiA+IGdkYi9ORVdTIHwgNCArKystDQo+ID4gPiBnZGIv bmF0L3dpbmRvd3MtbmF0LmMgfCA0ICsrLS0NCj4gPiA+IGdkYi94ODYtd2luZG93cy1uYXQuYyB8 IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiA+IGdkYnNlcnZlci93aW4z Mi1pMzg2LWxvdy5jYyB8IDQ4DQo+ID4gPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystDQo+ID4gPiA0IGZpbGVzIGNoYW5nZWQsIDkyIGluc2VydGlvbnMoKyksIDQgZGVsZXRp b25zKC0pDQo+ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBhL2dkYi9ORVdTIGIvZ2RiL05FV1MNCj4g PiA+IGluZGV4IGRhNGJjODExYzNhLi43MDRlNmE3YzhiYSAxMDA2NDQNCj4gPiA+IC0tLSBhL2dk Yi9ORVdTDQo+ID4gPiArKysgYi9nZGIvTkVXUw0KPiA+ID4gQEAgLTE5NSw3ICsxOTUsOSBAQCBp bmZvIGxvY2Fscw0KPiA+ID4gVGhlIHMzOTAgNjQtYml0IHRhcmdldCAoczM5MHgtKikgcmVtYWlu cyBzdXBwb3J0ZWQuDQo+ID4gPg0KPiA+ID4gKiBTdXBwb3J0IGZvciBJbnRlbCBBVlggcmVnaXN0 ZXJzIG9uIFdpbmRvd3MuDQo+ID4gPiAtIFN1cHBvcnQgZGlzcGxheWluZyBhbmQgbW9kaWZ5aW5n IEludGVsIEFWWCByZWdpc3RlcnMgJHltbTAgLSAkeW1tMTUuDQo+ID4gPiArIFN1cHBvcnQgZGlz cGxheWluZyBhbmQgbW9kaWZ5aW5nIEludGVsIEFWWCByZWdpc3RlcnMgJHltbTAgLSAkeW1tMzEu DQo+ID4NCj4gPiBBVlggaXMgbGltaXRlZCB0byAkeW1tMCAtICR5bW0xNS4gTWF5YmUgYWRkIGFu b3RoZXIgYnVsbGV0ICJTdXBwb3J0DQo+ID4gZm9yIEludGVsIEFWWC01MTIgcmVnaXN0ZXJzIG9u IFdpbmRvd3MuIiBhbmQgbGlzdCB3aGF0J3MgaW50cm9kdWNlZCBpbg0KPiA+IHRoaXMgcGF0Y2gu DQo+IA0KPiBPay4NCj4gDQo+IA0KPiA+ID4gKyBTdXBwb3J0IGRpc3BsYXlpbmcgYW5kIG1vZGlm eWluZyBJbnRlbCBBVlgtNTEyIHJlZ2lzdGVycyAkem1tMCAtDQo+ID4gPiArICR6bW0zMSBhbmQg JGswIC0gJGs3Lg0KPiA+ID4NCj4gPiA+ICogQ29uZmlndXJlIGNoYW5nZXMNCj4gPiA+DQo+ID4g PiBkaWZmIC0tZ2l0IGEvZ2RiL25hdC93aW5kb3dzLW5hdC5jIGIvZ2RiL25hdC93aW5kb3dzLW5h dC5jIGluZGV4DQo+ID4gPiBjZDNjODI3YTVkNS4uMzk0MDQ2NWQwNmIgMTAwNjQ0DQo+ID4gPiAt LS0gYS9nZGIvbmF0L3dpbmRvd3MtbmF0LmMNCj4gPiA+ICsrKyBiL2dkYi9uYXQvd2luZG93cy1u YXQuYw0KPiA+ID4gQEAgLTI5MCw3ICsyOTAsNyBAQCB3aW5kb3dzX3RocmVhZF9pbmZvOjp6ZXJv X3hzdGF0ZV9mZWF0dXJlcyAoKSBpZg0KPiA+ID4gKHplcm9lZF9mZWF0dXJlcyA9PSAwKSByZXR1 cm47DQo+ID4gPg0KPiA+ID4gLSBmb3IgKGludCBmID0gWDg2X1hTVEFURV9BVlhfSUQ7IGYgPD0g WDg2X1hTVEFURV9BVlhfSUQ7IGYrKykNCj4gPiA+ICsgZm9yIChpbnQgZiA9IFg4Nl9YU1RBVEVf QVZYX0lEOyBmIDw9IFg4Nl9YU1RBVEVfWk1NX0lEOyBmKyspDQo+ID4gPiB7DQo+ID4gPiBEV09S RDY0IGZsYWcgPSAxVUxMIDw8IGY7DQo+ID4gPiBpZiAoKHplcm9lZF9mZWF0dXJlcyAmIGZsYWcp ICE9IDApDQo+ID4gPiBAQCAtMTM3Myw3ICsxMzczLDcgQEAgaW5pdGlhbGl6ZV9sb2FkYWJsZSAo KSB7DQo+ID4gPiAvKiBBdmFpbGFibGUgWFN0YXRlIGZlYXR1cmVzIG1hc2tlZCB3aXRoIGltcGxl bWVudGVkIGZlYXR1cmVzLiAqLw0KPiA+ID4geHN0YXRlX2ZlYXR1cmVzID0gKEdldEVuYWJsZWRY U3RhdGVGZWF0dXJlcyAoKQ0KPiA+ID4gLSAmIFg4Nl9YU1RBVEVfQVZYX01BU0spOw0KPiA+ID4g KyAmIFg4Nl9YU1RBVEVfQVZYX0FWWDUxMl9NQVNLKTsNCj4gPg0KPiA+IEkgdGhpbmsgaXQgbWFr ZXMgc2Vuc2UgdG8gYWRkIGEgY2hlY2sgdGhhdCBiaXRzIFg4Nl9YU1RBVEVfSywNCj4gWDg2X1hT VEFURV9aTU1fSA0KPiA+IGFuZCBYODZfWFNUQVRFX1pNTSBhcmUgYWxsIHNldC4geDg2LXhzdGF0 ZS5oIGV4cGxpY2l0bHkgbWVudGlvbnMNCj4gPiAiQVZYIDUxMiBhZGRzIHRocmVlIGZlYXR1cmUg Yml0cy4gQWxsIHRocmVlIG11c3QgYmUgZW5hYmxlZC4iLiBJIGtub3cgdGhpcyBpcyBhDQo+ID4g dGhlb3JldGljYWwgZXhhbXBsZSBidXQgaXQgZG9lc24ndCBodXJ0LCBlLmcuLA0KPiA+DQo+ID4g aWYgKCh4c3RhdGVfZmVhdHVyZXMgJiBYODZfWFNUQVRFX0FWWDUxMikgIT0gWDg2X1hTVEFURV9B Vlg1MTIpDQo+ID4geHN0YXRlX2ZlYXR1cmVzICY9IH5YODZfWFNUQVRFX0FWWDUxMjsNCj4gDQo+ IEkgZG9uJ3QgcmVhbGx5IGdldCB0aGUgd2h5LCBidXQgb2suDQo+IA0KPiANCj4gPiA+IC8qIFRo ZSBleHRlbmRlZCBYU3RhdGUgZnVuY3Rpb25zIGFyZSBvbmx5IG5lZWRlZCBpZiB0aGUgYXZhaWxh YmxlDQo+ID4gPiBmZWF0dXJlcyBleGNlZWQgU1NFLiAqLw0KPiA+ID4gaWYgKCh4c3RhdGVfZmVh dHVyZXMgJiB+WDg2X1hTVEFURV9TU0VfTUFTSykgPT0gMCkNCj4gPiA+IGRpZmYgLS1naXQgYS9n ZGIveDg2LXdpbmRvd3MtbmF0LmMgYi9nZGIveDg2LXdpbmRvd3MtbmF0LmMNCj4gPiA+IGluZGV4 IDFlNDRhNDUxNzFjLi5hZmM3MWI0ZWY2MSAxMDA2NDQNCj4gPiA+IC0tLSBhL2dkYi94ODYtd2lu ZG93cy1uYXQuYw0KPiA+ID4gKysrIGIvZ2RiL3g4Ni13aW5kb3dzLW5hdC5jDQo+ID4gPiBAQCAt Mjc1LDYgKzI3NSw0NiBAQCBnZXRfY29udGV4dF9yZWdfcHRyIChDb250ZXh0ICpjb250ZXh0LCBp bnQgciwNCj4gPiA+IGkzODZfZ2RiYXJjaF90ZGVwICp0ZGVwKQ0KPiA+ID4gKGNvbnRleHQsIFg4 Nl9YU1RBVEVfQVZYX0lELCBudWxscHRyKTsNCj4gPiA+IGNvbnRleHRfb2Zmc2V0ICs9IDE2ICog KHIgLSBJMzg3X1lNTTBIX1JFR05VTSAodGRlcCkpOw0KPiA+ID4gfQ0KPiA+ID4gKyBlbHNlIGlm ICgoeHN0YXRlX2ZlYXR1cmVzICYgWDg2X1hTVEFURV9aTU1fSCkgIT0gMA0KPiA+ID4gKyAmJiBJ Mzg3X1pNTTBIX1JFR05VTSAodGRlcCkgPiAwICYmIHIgPj0NCj4gPiA+IEkzODdfWk1NMEhfUkVH TlVNICh0ZGVwKQ0KPiA+ID4gKyAmJiByIDwgSTM4N19aTU0xNkhfUkVHTlVNICh0ZGVwKSAmJiBy IDwNCj4gPiA+IEkzODdfWk1NRU5ESF9SRUdOVU0gKHRkZXApKQ0KPiA+ID4gKyB7DQo+ID4gPiAr IGNvbnRleHRfb2Zmc2V0ID0gKGNoYXIgKikgbG9jYXRlX3hzdGF0ZV9mZWF0dXJlDQo+ID4gPiAr IChjb250ZXh0LCBYODZfWFNUQVRFX1pNTV9IX0lELCBudWxscHRyKTsNCj4gPiA+ICsgY29udGV4 dF9vZmZzZXQgKz0gMzIgKiAociAtIEkzODdfWk1NMEhfUkVHTlVNICh0ZGVwKSk7DQo+ID4gPiAr IH0NCj4gPiA+ICsgZWxzZSBpZiAoKHhzdGF0ZV9mZWF0dXJlcyAmIFg4Nl9YU1RBVEVfWk1NKSAh PSAwDQo+ID4gPiArICYmIEkzODdfWk1NMEhfUkVHTlVNICh0ZGVwKSA+IDAgJiYgciA+PQ0KPiA+ ID4gSTM4N19aTU0xNkhfUkVHTlVNICh0ZGVwKQ0KPiA+ID4gKyAmJiByIDwgSTM4N19aTU1FTkRI X1JFR05VTSAodGRlcCkpDQo+ID4gPiArIHsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgPSAoY2hh ciAqKSBsb2NhdGVfeHN0YXRlX2ZlYXR1cmUNCj4gPiA+ICsgKGNvbnRleHQsIFg4Nl9YU1RBVEVf Wk1NX0lELCBudWxscHRyKTsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgKz0gMzIgKyA2NCAqIChy IC0gSTM4N19aTU0xNkhfUkVHTlVNICh0ZGVwKSk7DQo+ID4gPiArIH0NCj4gPiA+ICsgZWxzZSBp ZiAoKHhzdGF0ZV9mZWF0dXJlcyAmIFg4Nl9YU1RBVEVfSykgIT0gMA0KPiA+ID4gKyAmJiBJMzg3 X0swX1JFR05VTSAodGRlcCkgPiAwICYmIHIgPj0gSTM4N19LMF9SRUdOVU0gKHRkZXApDQo+ID4g PiArICYmIHIgPCBJMzg3X0tFTkRfUkVHTlVNICh0ZGVwKSkNCj4gPiA+ICsgew0KPiA+ID4gKyBj b250ZXh0X29mZnNldCA9IChjaGFyICopIGxvY2F0ZV94c3RhdGVfZmVhdHVyZQ0KPiA+ID4gKyAo Y29udGV4dCwgWDg2X1hTVEFURV9LX0lELCBudWxscHRyKTsNCj4gPiA+ICsgY29udGV4dF9vZmZz ZXQgKz0gOCAqIChyIC0gSTM4N19LMF9SRUdOVU0gKHRkZXApKTsNCj4gPiA+ICsgfQ0KPiA+ID4g KyBlbHNlIGlmICgoeHN0YXRlX2ZlYXR1cmVzICYgWDg2X1hTVEFURV9aTU0pICE9IDANCj4gPiA+ ICsgJiYgSTM4N19ZTU0xNkhfUkVHTlVNICh0ZGVwKSA+IDAgJiYgciA+PQ0KPiA+ID4gSTM4N19Z TU0xNkhfUkVHTlVNICh0ZGVwKQ0KPiA+ID4gKyAmJiByIDwgSTM4N19ZTU1IX0FWWDUxMl9FTkRf UkVHTlVNICh0ZGVwKSkNCj4gPiA+ICsgew0KPiA+ID4gKyBjb250ZXh0X29mZnNldCA9IChjaGFy ICopIGxvY2F0ZV94c3RhdGVfZmVhdHVyZQ0KPiA+ID4gKyAoY29udGV4dCwgWDg2X1hTVEFURV9a TU1fSUQsIG51bGxwdHIpOw0KPiA+ID4gKyBjb250ZXh0X29mZnNldCArPSAxNiArIDY0ICogKHIg LSBJMzg3X1lNTTE2SF9SRUdOVU0gKHRkZXApKTsNCj4gPiA+ICsgfQ0KPiA+ID4gKyBlbHNlIGlm ICgoeHN0YXRlX2ZlYXR1cmVzICYgWDg2X1hTVEFURV9aTU0pICE9IDANCj4gPiA+ICsgJiYgSTM4 N19YTU0xNl9SRUdOVU0gKHRkZXApID4gMCAmJiByID49DQo+ID4gPiBJMzg3X1hNTTE2X1JFR05V TSAodGRlcCkNCj4gPiA+ICsgJiYgciA8IEkzODdfWE1NX0FWWDUxMl9FTkRfUkVHTlVNICh0ZGVw KSkNCj4gPiA+ICsgew0KPiA+ID4gKyBjb250ZXh0X29mZnNldCA9IChjaGFyICopIGxvY2F0ZV94 c3RhdGVfZmVhdHVyZQ0KPiA+ID4gKyAoY29udGV4dCwgWDg2X1hTVEFURV9aTU1fSUQsIG51bGxw dHIpOw0KPiA+ID4gKyBjb250ZXh0X29mZnNldCArPSA2NCAqIChyIC0gSTM4N19YTU0xNl9SRUdO VU0gKHRkZXApKTsNCj4gPiA+ICsgfQ0KPiA+ID4gZWxzZQ0KPiA+ID4gZ2RiX2Fzc2VydF9ub3Rf cmVhY2hlZCAoImludmFsaWQgcmVnaXN0ZXIgbnVtYmVyICVkIiwgcik7DQo+ID4gPg0KPiA+ID4g ZGlmZiAtLWdpdCBhL2dkYnNlcnZlci93aW4zMi1pMzg2LWxvdy5jYyBiL2dkYnNlcnZlci93aW4z Mi1pMzg2LWxvdy5jYw0KPiA+ID4gaW5kZXggMWE0NWIxNWUwY2YuLjhjNjI3ODdhMzFiIDEwMDY0 NA0KPiA+ID4gLS0tIGEvZ2Ric2VydmVyL3dpbjMyLWkzODYtbG93LmNjDQo+ID4gPiArKysgYi9n ZGJzZXJ2ZXIvd2luMzItaTM4Ni1sb3cuY2MNCj4gPiA+IEBAIC01MTUsOCArNTE1LDExIEBAIGdl dF9jb250ZXh0X3JlZ19wdHIgKENvbnRleHQgKmNvbnRleHQsIGludCByLA0KPiBjb25zdA0KPiA+ ID4gdGFyZ2V0X2Rlc2MgKnRkZXNjKQ0KPiA+ID4gYW1kNjQgPSBmYWxzZTsNCj4gPiA+IH0NCj4g PiA+DQo+ID4gPiAtIGludCB5bW0waF9yZWdudW07DQo+ID4gPiArIGludCB5bW0waF9yZWdudW0s IHptbTBoX3JlZ251bSwgazBfcmVnbnVtOw0KPiA+ID4gKyBpbnQgeG1tMTZfcmVnbnVtLCB5bW0x NmhfcmVnbnVtLCB6bW0xNmhfcmVnbnVtOw0KPiA+ID4gY29uc3QgaW50IG51bV94bW1fcmVnaXN0 ZXJzID0gYW1kNjQgPyAxNiA6IDg7DQo+ID4gPiArIGNvbnN0IGludCBudW1fem1tX2hpZ2hfcmVn aXN0ZXJzID0gYW1kNjQgPyAxNiA6IDA7DQo+ID4gPiArIGNvbnN0IGludCBudW1fYXZ4NTEyX2tf cmVnaXN0ZXJzID0gODsNCj4gPiA+DQo+ID4gPiBjaGFyICpjb250ZXh0X29mZnNldDsNCj4gPiA+ IGlmIChyIDwgbWFwcGluZ3NfY291bnQpDQo+ID4gPiBAQCAtNTI5LDYgKzUzMiw0OSBAQCBnZXRf Y29udGV4dF9yZWdfcHRyIChDb250ZXh0ICpjb250ZXh0LCBpbnQgciwNCj4gY29uc3QNCj4gPiA+ IHRhcmdldF9kZXNjICp0ZGVzYykNCj4gPiA+IChjb250ZXh0LCBYODZfWFNUQVRFX0FWWF9JRCwg bnVsbHB0cik7DQo+ID4gPiBjb250ZXh0X29mZnNldCArPSAxNiAqIChyIC0geW1tMGhfcmVnbnVt KTsNCj4gPiA+IH0NCj4gPiA+ICsgZWxzZSBpZiAoKHhzdGF0ZV9mZWF0dXJlcyAmIFg4Nl9YU1RB VEVfWk1NX0gpICE9IDANCj4gPiA+ICsgJiYgciA+PSAoem1tMGhfcmVnbnVtID0gZmluZF9yZWdu byAodGRlc2MsICJ6bW0waCIpKQ0KPiA+ID4gKyAmJiByIDwgem1tMGhfcmVnbnVtICsgbnVtX3ht bV9yZWdpc3RlcnMpDQo+ID4gPiArIHsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgPSAoY2hhciAq KSBsb2NhdGVfeHN0YXRlX2ZlYXR1cmUNCj4gPiA+ICsgKGNvbnRleHQsIFg4Nl9YU1RBVEVfWk1N X0hfSUQsIG51bGxwdHIpOw0KPiA+ID4gKyBjb250ZXh0X29mZnNldCArPSAzMiAqIChyIC0gem1t MGhfcmVnbnVtKTsNCj4gPiA+ICsgfQ0KPiA+ID4gKyBlbHNlIGlmICgoeHN0YXRlX2ZlYXR1cmVz ICYgWDg2X1hTVEFURV9aTU0pICE9IDANCj4gPiA+ICsgJiYgbnVtX3ptbV9oaWdoX3JlZ2lzdGVy cyAhPSAwDQo+ID4gPiArICYmIHIgPj0gKHptbTE2aF9yZWdudW0gPSBmaW5kX3JlZ25vICh0ZGVz YywgInptbTE2aCIpKQ0KPiA+ID4gKyAmJiByIDwgem1tMTZoX3JlZ251bSArIG51bV96bW1faGln aF9yZWdpc3RlcnMpDQo+ID4gPiArIHsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgPSAoY2hhciAq KSBsb2NhdGVfeHN0YXRlX2ZlYXR1cmUNCj4gPiA+ICsgKGNvbnRleHQsIFg4Nl9YU1RBVEVfWk1N X0lELCBudWxscHRyKTsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgKz0gMzIgKyA2NCAqIChyIC0g em1tMTZoX3JlZ251bSk7DQo+ID4gPiArIH0NCj4gPiA+ICsgZWxzZSBpZiAoKHhzdGF0ZV9mZWF0 dXJlcyAmIFg4Nl9YU1RBVEVfSykgIT0gMA0KPiA+ID4gKyAmJiByID49IChrMF9yZWdudW0gPSBm aW5kX3JlZ25vICh0ZGVzYywgImswIikpDQo+ID4gPiArICYmIHIgPCBrMF9yZWdudW0gKyBudW1f YXZ4NTEyX2tfcmVnaXN0ZXJzKQ0KPiA+ID4gKyB7DQo+ID4gPiArIGNvbnRleHRfb2Zmc2V0ID0g KGNoYXIgKikgbG9jYXRlX3hzdGF0ZV9mZWF0dXJlDQo+ID4gPiArIChjb250ZXh0LCBYODZfWFNU QVRFX0tfSUQsIG51bGxwdHIpOw0KPiA+ID4gKyBjb250ZXh0X29mZnNldCArPSA4ICogKHIgLSBr MF9yZWdudW0pOw0KPiA+ID4gKyB9DQo+ID4gPiArIGVsc2UgaWYgKCh4c3RhdGVfZmVhdHVyZXMg JiBYODZfWFNUQVRFX1pNTSkgIT0gMA0KPiA+ID4gKyAmJiBudW1fem1tX2hpZ2hfcmVnaXN0ZXJz ICE9IDANCj4gPiA+ICsgJiYgciA+PSAoeW1tMTZoX3JlZ251bSA9IGZpbmRfcmVnbm8gKHRkZXNj LCAieW1tMTZoIikpDQo+ID4gPiArICYmIHIgPCB5bW0xNmhfcmVnbnVtICsgbnVtX3ptbV9oaWdo X3JlZ2lzdGVycykNCj4gPiA+ICsgew0KPiA+ID4gKyBjb250ZXh0X29mZnNldCA9IChjaGFyICop IGxvY2F0ZV94c3RhdGVfZmVhdHVyZQ0KPiA+ID4gKyAoY29udGV4dCwgWDg2X1hTVEFURV9aTU1f SUQsIG51bGxwdHIpOw0KPiA+ID4gKyBjb250ZXh0X29mZnNldCArPSAxNiArIDY0ICogKHIgLSB5 bW0xNmhfcmVnbnVtKTsNCj4gPiA+ICsgfQ0KPiA+ID4gKyBlbHNlIGlmICgoeHN0YXRlX2ZlYXR1 cmVzICYgWDg2X1hTVEFURV9aTU0pICE9IDANCj4gPiA+ICsgJiYgbnVtX3ptbV9oaWdoX3JlZ2lz dGVycyAhPSAwDQo+ID4gPiArICYmIHIgPj0gKHhtbTE2X3JlZ251bSA9IGZpbmRfcmVnbm8gKHRk ZXNjLCAieG1tMTYiKSkNCj4gPiA+ICsgJiYgciA8IHhtbTE2X3JlZ251bSArIG51bV96bW1faGln aF9yZWdpc3RlcnMpDQo+ID4gPiArIHsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgPSAoY2hhciAq KSBsb2NhdGVfeHN0YXRlX2ZlYXR1cmUNCj4gPiA+ICsgKGNvbnRleHQsIFg4Nl9YU1RBVEVfWk1N X0lELCBudWxscHRyKTsNCj4gPiA+ICsgY29udGV4dF9vZmZzZXQgKz0gNjQgKiAociAtIHhtbTE2 X3JlZ251bSk7DQo+ID4gPiArIH0NCj4gPiA+IGVsc2UNCj4gPiA+IGdkYl9hc3NlcnRfbm90X3Jl YWNoZWQgKCJpbnZhbGlkIHJlZ2lzdGVyIG51bWJlciAlZCIsIHIpOw0KPiA+ID4NCj4gPiA+IC0t DQo+ID4gPiAyLjU1LjANCg0KSSBhZ3JlZSB3aXRoIGFsbCB0aGUgY29tbWVudHMgU3RlcGhhbiBo YXMgbWFkZSBoZXJlLiBJIGRvbid0IGhhdmUgYW55IGFkZGl0aW9uYWwgcmVtYXJrcywNCmV4Y2Vw dCBmb3IgdGhlIHBvaW50IGFib3V0IGxvY2F0ZV94c3RhdGVfZmVhdHVyZSwgd2hpY2ggaXMgcmVs ZXZhbnQgdG8gdGhlIEFWWCBwYXRjaCBhcyB3ZWxsDQphbmQgaGFuZGxlZCBpbiBhIGRpZmZlcmVu dCB0aHJlYWQuDQoNClJlZ2FyZHMsDQpDaHJpc3RpbmENCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18NCkludGVsIERldXRzY2hsYW5kIEdtYkggDQoNClJlZ2lzdGVyZWQg QWRkcmVzczogRG9ybmFjaGVyIFN0cmFzc2UgMSwgODU2MjIgRmVsZGtpcmNoZW4sIEdlcm1hbnkg DQoNClRlbDogKzQ5ICg4OSkgOTkxNDMtMCANCg0Kd3d3LmludGVsLmRlIA0KDQpNYW5hZ2luZyBE aXJlY3RvcnM6IENhbmRpY2UgTW9vcmUsIEplZmZyZXkgU2NobmVpZGVybWFuLCBSYW1hY2hhbmRy YW4gU2l0YXJhbWFuDQoNCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29yeSBCb2FyZDogU29u amEgUGllcmVyDQoNClJlZ2lzdGVyZWQgU2VhdDogTXVuaWNoIENvbW1lcmNpYWwgUmVnaXN0ZXIg QjogQW10c2dlcmljaHQgTXVuaWNoIEhSQiAxODY5MjgNCg0KVGhpcyBlLW1haWwgYW5kIGFueSBh dHRhY2htZW50cyBtYXkgY29udGFpbiBjb25maWRlbnRpYWwgbWF0ZXJpYWwgZm9yDQp0aGUgc29s ZSB1c2Ugb2YgdGhlIGludGVuZGVkIHJlY2lwaWVudChzKS4gQW55IHJldmlldyBvciBkaXN0cmli dXRpb24NCmJ5IG90aGVycyBpcyBzdHJpY3RseSBwcm9oaWJpdGVkLiBJZiB5b3UgYXJlIG5vdCB0 aGUgaW50ZW5kZWQNCnJlY2lwaWVudCwgcGxlYXNlIGNvbnRhY3QgdGhlIHNlbmRlciBhbmQgZGVs ZXRlIGFsbCBjb3BpZXMuCg==