From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id yeDVK4YNoGp/BzcAWB0awg (envelope-from ) for ; Tue, 08 Sep 2026 09:28:38 -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=Zrl3ria7; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id AAB481E09E; Tue, 08 Sep 2026 09:28:38 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-6.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 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 935341E091 for ; Tue, 08 Sep 2026 09:28:35 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 29EA64BA2E22 for ; Tue, 8 Sep 2026 13:28:35 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 29EA64BA2E22 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=Zrl3ria7 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) by sourceware.org (Postfix) with ESMTPS id DD4894BA2E22 for ; Tue, 8 Sep 2026 13:28:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DD4894BA2E22 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 DD4894BA2E22 Authentication-Results: sourceware.org; arc=fail smtp.remote-ip=192.198.163.12 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1788874086; cv=fail; b=IXw6R+pD8hzevocXn5Js//sgYg+avIYyqv+NirkLmDJZqnNQXndf8EjvJ44wpy/ZzPuA2F/WqRDogMqDSLAdZ7PVbj2KWcfPDZLKyKp4y4SejCa83WKxy+M54CNmkkJC7D/+zRiAI8ZEPOHJk7ccAj9skVqsuzRcz0ZtdgckL/o= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1788874086; c=relaxed/simple; bh=P/zESQEBovkM1C3Cza7L+E9MhfVbpith9dDjcOsMu3E=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=kwzqb3NWaAWyDdxD6NXi9p7PQMDm39qEbY4s/ybJPs8N72zFfO8Bnrr+uNegy+eY99C3JJRuPZIJ93DtnvB1WPVpfUfTnY0ve1SPsDAnf8elOrXbGHKmakJ3b9PRwF3GwLinG/Xjgchu8bdEoEn95xRF4j6pdaD/g8QAzNFc+MU= 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=Zrl3ria7 DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DD4894BA2E22 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1788874086; x=1820410086; h=from:to:subject:date:message-id:references:in-reply-to: mime-version:content-transfer-encoding; bh=P/zESQEBovkM1C3Cza7L+E9MhfVbpith9dDjcOsMu3E=; b=Zrl3ria7THAE3MHb2kgHS3DBAyYD2hbTJTPEOBc+SclGU+UDaC3t0JhK fwlix3cBvayVmf2MgIkc2/w493KV3vanvBC2zL97TTDN91HJsB1S0yiIN 6b/PWS4/iONFA9eZGtU8QpmZycWgXg3b8jRgxfCy0LtutLdNYjyAUw0XZ bjEp9d7ldpFunuwUapFrtQpPIIzrd/A69ie/VUATJTSr444SVQ+Vk6r/q Eo9yYeBGqKKu8EwYSA2wYBsDNaZCQ2k7P5dSwD77bdq0n45REPg6vUBum e2leNw6563jtwxbJ4l4k5fJTNR64HEGQS5j0Mi9YUe/a5cPEs08GWF7Wd w==; X-CSE-ConnectionGUID: 6d1NEZaeQaOlWdnz305gbw== X-CSE-MsgGUID: ay3dl0nzSFSW1yYQK9wi5w== X-IronPort-AV: E=McAfee;i="6800,10657,11899"; a="93096193" X-IronPort-AV: E=Sophos;i="6.25,269,1779174000"; d="scan'208";a="93096193" Received: from orviesa010.jf.intel.com ([10.64.159.150]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Sep 2026 06:28:04 -0700 X-CSE-ConnectionGUID: Va4kjLJ+SV2elS6p6CdSEA== X-CSE-MsgGUID: ME1FC3ZaTcCC78Hf2EgNug== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.25,269,1779174000"; d="scan'208";a="269669660" Received: from orsmsx902.amr.corp.intel.com ([10.22.229.24]) by orviesa010.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Sep 2026 06:28:05 -0700 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) by ORSMSX902.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.46; Tue, 8 Sep 2026 06:28:04 -0700 Received: from ORSEDG901.ED.cps.intel.com (10.7.248.11) 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.46 via Frontend Transport; Tue, 8 Sep 2026 06:28:04 -0700 Received: from BL0PR03CU003.outbound.protection.outlook.com (52.101.53.43) by edgegateway.intel.com (134.134.137.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.46; Tue, 8 Sep 2026 06:28:03 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Q0pPfO69PZBAotrsGl5KGh3Ha/eJTkGxrPopz8BW9YlcjqG1lOSLjn0iSzrwxQn0Omau14bH+AR69CmK8qN4YgtVRdIccSpvm/+gy4NKb/GXACvhE7fNrgBk7J5oJg0jaF5RLG8mytZgFVpss5QAIxBL5xrU7YKdqnlUvZ9xVemEK4VS9VGuavhZJ1BBp4dV3iZk23XhLdaKqMXOEDKRkkVgRKclCd65SfC1nxEmkzZlTNDCDoYNW18cCDFodq8GoNANDokTKNekJAhd/jMGxrLnSdZ47f61Yl6XYDUXloBI7lDiihA/3+a28TDsLcTIefY9suKTRZm2h10CDZhR5w== 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=VIugRR5e0YI+zVwGYI4KHWY9aOZUNnboESQZUG8f1Wk=; b=vBxY5rhih9kQ9ncmdUJ8HdgLWTi6QpMFtTwMjcVp9Dx/Oa45ceuNOaOOYE/mk4MomYdJUGcQbKjSJpCacV5rVl234Wr9jeJcjaJVfUPBoP3CdDNin7ehUNicA6xJPVLde9fAD1vWRPoLgZqbxNshDV/w2Fs+Ibq6nL4Z6SWogzBwj8ev01MrVVVfHX9VZhmd/lXr0D4BESdvpNPAXAdc94Kf8D0zbO3gKraIaKiZKloY/mgbkDrkZwBtBDNYVhX4/0AVXxu1Df8aEUIhhkN4YlOdhXDqMZEpnK5vrVGR8rJr9lN+vS7a7x+bg3kAdVrJ1/rrlhxLRYQzXgdT48/RQQ== 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 DSM1PF4FC338516.namprd11.prod.outlook.com (2603:10b6:f:fc02::147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.6; Tue, 8 Sep 2026 13:28:02 +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.0382.014; Tue, 8 Sep 2026 13:28:02 +0000 From: "Joos, Christina" To: Andrew Burgess , "gdb-patches@sourceware.org" Subject: RE: [PATCH 1/2] gdb: Enable OS generated corefiles on systems with Intel AMX support. Thread-Topic: [PATCH 1/2] gdb: Enable OS generated corefiles on systems with Intel AMX support. Thread-Index: AQHdPrB9IsZE0kxDfkq0djNBpnw8xLbEmnqg Date: Tue, 8 Sep 2026 13:28:02 +0000 Message-ID: References: <20260904100648.1705702-1-christina.joos@intel.com> <20260904100648.1705702-2-christina.joos@intel.com> <87tso1qsuh.fsf@redhat.com> In-Reply-To: <87tso1qsuh.fsf@redhat.com> 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=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN7PR11MB7638:EE_|DSM1PF4FC338516:EE_ x-ms-office365-filtering-correlation-id: a3b4d1d6-45e5-4560-83fb-08df0dad01fa x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|376014|23010399003|13003099007|38070700021|6133799003|3023799007|10067099003|4143699003|56012099006|11063799006|22082099003|18002099003; x-microsoft-antispam-message-info: pQzE3Fr49TTIvj38uAeEPeZiJCxse9hO3DA/dlwve631W/25WdcvZdZ9z16dAOS1+5OMUkcRvWvb8/tqFwPo8gI9ZnqWoO1feHxmfjTWiV3tPrrRA6NtyDUC2XKQuaGoH/SPv6nCKXh86rcycwI1Z8giWKa6ZwMNp1woQb+f2b3a8Wxjn+irWHGD/7DAA2VLB9rDyVi3lyFMI692KMVZE/TbtFKQvMY9+D0XgB7HycTf3cXjm7JFmPiCNB5KpwUy6L7DeE/JyhcuqTcMcPucusigGJB5ovVF88boJ+d2gTRfNtyh8O4vTijGjDp1USkoi3vTPxaRoymEwh1Rldnx0YA4+jhTEewRD3QgorwQKCmdhVz8d/gvQLW1Sc+L8rOyb0iI6yj6xgbImABqegFpE1oF9IJvY3DFZQdxSJT3KNoUmDbneciL6XceMJwuuvJIAcdWAG9K8urtsEJfTL9JBwpTnj0JGdZc1X507/bf+M/AnLvNHUfQDuHpwWWtWLImFXxsiAnOUY8tb8F99J6/ugQKWXRoMEMT29stGvKtFg3YqVftdvVuDu4i3g4zvnHYLDSpt5Oe8okK/3EcfspMmxvq/pQv0G28ZG3PkZF2+iYKkDsgvn2MJHloUTi5BTvjl1q7ypsHhGJ7ffHnUlo+432Czp5JMIihxJ1mi+BP8nk= 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)(1800799024)(366016)(376014)(23010399003)(13003099007)(38070700021)(6133799003)(3023799007)(10067099003)(4143699003)(56012099006)(11063799006)(22082099003)(18002099003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cFBTSHEvejZxWHZwN1FtdWpNdzRua3RyYTBQTWNHeUZaMG1GRnJicU52dkV6?= =?utf-8?B?VDVCUUxzQld3Z29TazdyNU5GdWEvM2h2NmlNRmdKaEc0eThHRTZ3SjB2dEx5?= =?utf-8?B?a0MrN1dNb1VCQkEzUUM4Y29QSVovZ2c0bFRrdlVveHlna2h1YjRJY01mbDNx?= =?utf-8?B?MC9Yd1ZWVHl5WU5iUW9mWURRbVU2UUZBSGRobkdOTG1yeWkveE1GaTR6b0pn?= =?utf-8?B?S0hqVVhKc0lGOUlVQUt6V3FEY0I1MmdRYlBOWXc5LzUvQzhKVTBaOWNQQmRE?= =?utf-8?B?TDhhNFZ6aTNDb2NaeStVcHZvK2pQaU9EVDA3b2hUK25ZVGdxT3BmSW9EMjIv?= =?utf-8?B?MWhYSFljaG5YaUIxV0dUMmpmZEs4RjdYY3ZnMWhaYVl0T0NwaEsxT3JRM2VY?= =?utf-8?B?UzdseFkycXhnemdkYkdPcDhIYjNKajI3alcrZzVZQ1dCSmQrcVBubW9PcnBj?= =?utf-8?B?Znc0ZUdpMmZJYjRLb2o2STRENTZpWmpyQjdNaHdLREppT1lDZ3lPMmNrWGlR?= =?utf-8?B?Snc1cmRmSGdxZjVTenQ3cTF2VUM3cUdKejlBcXVYaHppRVJCa3JtNXFPQ3hU?= =?utf-8?B?d2VvU0JIeHZBRmpKZEVZeXo1YXBJWDZQZmtlY1JNVklXZHB0TDBkYVlZa09J?= =?utf-8?B?TWdUV1NFT2dsdXdndGt5S1BEUUVuekRKYjRNT0x0a3p0Q3l3QnhDWEJDdkVq?= =?utf-8?B?R2Nkc2tkRGlLN3Q3M2NyWlJ4enFVS2pqVGdVem90R1dJa3NMSHhUQzl2Titk?= =?utf-8?B?Tnl5RGRNY3F6K2EzWnlockpBYTAwdTJGTy9zVElVdDArU0FOWFBIN2VJbTVy?= =?utf-8?B?NTVBeXh4aDF6TGNEZHFmaFJhOUdCUWRmUmFhU3dzWFpXT0NEQ2Z3N0RWWmNi?= =?utf-8?B?Y1Y1ZWZHb3UyY2ZXNkxHck5tTElVSDE4alVoNnBUVmczd1JjWFdkUTF1OWt5?= =?utf-8?B?YWE0dEN1L1JrR0s5UE1PazlTemtsNkIxNnhIbDJhV1lPWTQ3R2p4N1FDd1BY?= =?utf-8?B?OFJIbnI3THBzQzZ5MmJ1YkxldG4wMU5KNVNlYkhld09DOURUaHdZbk5rVXRM?= =?utf-8?B?UktHby9GWndMY2FWdFhuSkNjTjFoTERBcDdEakczZUFuUVgzSm9jS0QyRDFJ?= =?utf-8?B?OGQ0ZFYvWHR0S2xXY1Z5V2hLMHZIWnduZVYxRFdqcEg0d25jQmEwZkhNRk9w?= =?utf-8?B?dkFSWGpHajRnYkdOZ1BjMk1kd1M5QjQ5UTZ5OG04L3BlU0V0SkNUVUZxdk5D?= =?utf-8?B?YjBDcUZzcStGcU9UR05IaWhJUGRaY2JPNkxyZStXVDAvOTFqbVI0Mm11R0VE?= =?utf-8?B?Z04zRTJMOVFhVWQzVHFmbkFOempLVWdMVnBmTjlWam5ydWtERTJ3Q2pTek1V?= =?utf-8?B?LzNQS2VEd0VYbnY3ZkEzSVJGclpzZUp5YXIyS2xnMmduOEJvRCtudnlSRGVR?= =?utf-8?B?b3ovNlIrUForZWpCY2l4ajZSOFF6Tk9QWmZ1R2JCNUMvR1ovcWFMOWdpLy8z?= =?utf-8?B?S2FPd0hmWmJSV1oxMWR6OUxJSm80SXdBVEtheVQ0aWorcWY1RnpmL2YxM3JM?= =?utf-8?B?NzFWaG5LK2tiOGdReDRNK3BOSE5JOUhGV3dYbXhVTGI3emhaQVJTTmk0T2ta?= =?utf-8?B?SVFQeUJuSkd3VnVYK0FzNnoyN2JJRXFHaWlPd0N3VWs3clRYQlZjSXdESGZn?= =?utf-8?B?Zll1YjlVRnd0ZWVzTGc3UktCOHQvZHFGTVYzdnBhZVMyTFptZCtCUlpBTnZn?= =?utf-8?B?TnpIdDUyb2RpbVZ3cEdJazR6UDhHVTVEa2cySmtBZzBaS2ZvUk5IR04xZDVh?= =?utf-8?B?elBybDRwMEIxRkFUbFNJUHRNV3VCd1h1NDlwMVlWdFNlM3F3NUJzdGNYeldI?= =?utf-8?B?QTE3U1NtZzZyM3J0akwrT1lYaHRrZzAyYlJWemNBSnpvRmthUFR0TTZPTUNO?= =?utf-8?B?cGx3U2xSb1pUTjdVck82NDhYaVowL0ZMT3hIS25LRkJlVHVkNjYvdVVIMXBK?= =?utf-8?B?MTNJWE5tcWNFOXcrSUw0UjRFNnk5OHc2Nlkxb25yZTgzRW5mQmFzdERmenhU?= =?utf-8?B?a3p5MlF2VUF0K0s5dDBxci9kd3BOcTFsV3YwNDl4TTRwUUZUN2FKamZIbThu?= =?utf-8?B?a1RhbGNPYmpSdzFicnUySjlkbit3SkVlSW5GcThrSG9FZnRvUlZWM0d4RHdk?= =?utf-8?B?M3VUUWhXdkJPK0d0c1dnSEdhWVJKM0paMkpUYm9LMkFGdVdiZVBHbUNoWFNB?= =?utf-8?B?Rk94amJXWGFDbzdoUEFvR3AyRHErTDQ3MU9OSUVNRFY4R3cvOTc1MmpBb0Ny?= =?utf-8?B?M1NqZ0Jqb2FxS1NKdEVwd05MOCs4ajUvNi9CandaL2pFV3AwRUhyZz09?= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: ySHZ8o/qrIxMiY9EvxdD076WsocrzBOMAU9Ocr1CaZKvQDkckD/WY5qWwxh6HatzHJoH/tB1psjtBCZThv4beaEp6VNrT/mxp0+nKCoe26Qzlpn8uXyu18/iZT7IxBtbm74SGkQ6lxI7j9x03FUh5CdKXngfcSPpm9vj6lIC8csOyb/C0F2+fKvXjONGxrb5kAQ02b4oiME9qbLt+rbc2TiZxXW8hkXkpZKI0/Xu9jAlQ0cDb9nOhQr+/WOWzF2fzq8bEUjU1lEKwNhHDLL37dVwxRgdySUTHIFUyK/qin7zc7s2zgZ+QUpCuuGqYh3bdI/A5ARgXo8NvZc41yhmJQ== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN7PR11MB7638.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a3b4d1d6-45e5-4560-83fb-08df0dad01fa X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Sep 2026 13:28:02.3398 (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: O/br5HDPaUu3yABbiKuFVVAU/Ta9fIlq9DqUITeviJI5CpyF/kal4POlBJ1uscuNkCXCGXLrZ5uXHZZ5F7DY6t6i66EIhGLLI56yJGSdi+Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DSM1PF4FC338516 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 SGkgQW5kcmV3LA0KDQpUaGFua3MgYSBsb3QgZm9yIHlvdXIgcXVpY2sgZmVlZGJhY2suIFBsZWFz ZSBmaW5kIG15IGNvbW1lbnRzIG9uIHlvdXIgZmVlZGJhY2sgYmVsb3cuDQpGb3IgdGhlIHRlc3Qg YW5kIHRoZSBQS1JVIHJlZ2lzdGVyIGlzc3VlLCBJIHN0aWxsIGhhdmUgc29tZSBvcGVucyBvbiB3 aGljaCBJIHdvdWxkIGFwcHJlY2lhdGUgeW91ciBmZWVkYmFjayBiZWZvcmUgSSBzZW5kIGEgdjIu DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQW5kcmV3IEJ1cmdlc3Mg PGFidXJnZXNzQHJlZGhhdC5jb20+DQo+IFNlbnQ6IE1vbnRhZywgNy4gU2VwdGVtYmVyIDIwMjYg MTI6MDYNCj4gVG86IEpvb3MsIENocmlzdGluYSA8Y2hyaXN0aW5hLmpvb3NAaW50ZWwuY29tPjsg Z2RiLXBhdGNoZXNAc291cmNld2FyZS5vcmcNCj4gU3ViamVjdDogUmU6IFtQQVRDSCAxLzJdIGdk YjogRW5hYmxlIE9TIGdlbmVyYXRlZCBjb3JlZmlsZXMgb24gc3lzdGVtcyB3aXRoDQo+IEludGVs IEFNWCBzdXBwb3J0Lg0KPiANCj4gDQo+IFRoYW5rcyBmb3IgYWRkcmVzc2luZyB0aGlzIGlzc3Vl LiAgSSBoYXZlIHNvbWUgc3R5bGUgaXNzdWVzLCBhbmQgb25lIGRlZXBlcg0KPiB0aG91Z2ggYWJv dXQgdGhlIHRlc3QsIHNlZSBiZWxvdy4NCj4gDQo+IENocmlzdGluYSBKb29zIDxjaHJpc3RpbmEu am9vc0BpbnRlbC5jb20+IHdyaXRlczoNCj4gDQo+ID4gVGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhl IGlzc3VlIGRlc2NyaWJlZCBpbg0KPiA+IGh0dHBzOi8vc291cmNld2FyZS5vcmcvYnVnemlsbGEv c2hvd19idWcuY2dpP2lkPTM0NTYxLg0KPiANCj4gQnVncyBzaG91bGQgYmUgbGlua2VkIHVzaW5n IGEgbGluZSBhdCB0aGUgZW5kIG9mIHRoZSBjb21taXQgbWVzc2FnZSAoc2VlDQo+IGdkYi9NQUlO VEFJTkVSUykgbGlrZToNCj4gDQo+ICAgQnVnOiBodHRwczovL3NvdXJjZXdhcmUub3JnL2J1Z3pp bGxhL3Nob3dfYnVnLmNnaT9pZD0zNDU2MQ0KPiANCj4gR2l2ZW4gdGhlIGxpbmsgYWx3YXlzIGdl dHMgYWRkZWQgYXQgdGhlIGVuZCBsaWtlIHRoaXMsIGluIHRoZSBjb21taXQgbWVzc2FnZQ0KPiBi b2R5IHlvdSBjYW4ganVzdCB3cml0ZToNCj4gDQo+ICAgVGhpcyBwYXRjaCBhZGRyZXNzZXMgdGhl IGlzc3VlIGRlc2NyaWJlZCBpbiBQUiBnZGIvMzQ1NjEuICBPbiBzeXN0ZW1zDQo+ICAgd2l0aCBJ bnRlbCBBTVggc3VwcG9ydCB0aGUgLi4uLiBldGMgLi4uDQoNCkFoIEkgc2VlLCBJIHdhcyBub3Qg YXdhcmUgb2YgdGhpcyBndWlkZWxpbmUuIFRoYW5rcyENCg0KPiBhbnlvbmUgd2hvIHdhbnRzIGEg ZGlyZWN0IGxpbmsgdG8gdGhlIGJ1ZyBjYW4gZmluZCBpdCBpbiB0aGUgJ0J1ZzogJw0KPiBsaW5l IGF0IHRoZSBlbmQgb2YgdGhlIGNvbW1pdCBtZXNzYWdlLg0KPiANCj4gPg0KPiA+IE9uIFN5c3Rl bXMgd2l0aCBJbnRlbCBBTVggc3VwcG9ydCB0aGUgeHNhdmUgc2l6ZSBpcyAxMTAwOC4gVGhpcyB4 c2F2ZQ0KPiANCj4gbG93ZXIgY2FzZSAncycgb24gJ1N5c3RlbXMnIHBsZWFzZS4NCg0KWWVzLCB3 aWxsIGZpeC4NCg0KPiA+IHNpemUgaXMgbm90IGhhbmRsZWQgYnkgZ2RiL2kzODctdGRlcC5jOmkz ODdfZ3Vlc3NfeHNhdmVfbGF5b3V0IGFuZCBpcw0KPiA+IGNhdXNpbmcgcHJvYmxlbXMgZm9yIGNv cmVmaWxlcyBnZW5lcmF0ZWQgYnkgdGhlIGxpbnV4IGtlcm5lbC4NCj4gPg0KPiA+IH5+fg0KPiA+ ICQgZ2RiDQo+ID4gR05VIGdkYiAoR0RCKSAxOS4wLjUwLjIwMjYwODE0LWdpdA0KPiA+IENvcHly aWdodCAoQykgMjAyNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCj4gPiBbLi4uXQ0K PiA+IChnZGIpIGNvcmUgY29yZV9tYWluX1NFR1YNCj4gPiBbTmV3IExXUCAyMTYyODgwIChpZCAx KV0NCj4gPiBbLi4uXQ0KPiA+IENvcmUgd2FzIGdlbmVyYXRlZCBieSBgLi9tYWluJy4NCj4gPiBQ cm9ncmFtIHRlcm1pbmF0ZWQgd2l0aCBzaWduYWwgU0lHU0VHViwgU2VnbWVudGF0aW9uIGZhdWx0 Lg0KPiA+IDQgICAgICAgICAqcG9pbnRlciA9IDM7DQo+ID4gKGdkYikgcCAkeW1tMA0KPiA+ICQx ID0gdm9pZA0KPiA+IH5+fg0KPiA+DQo+ID4gV2Ugc2hvdWxkIGJlIGFibGUgdG8gcHJpbnQgdGhl IHJlZ2lzdGVyICR5bW0wIChvciBhbnkgb3RoZXIgcmVnaXN0ZXINCj4gPiBiZWxvbmdpbmcgdG8g YSBmZWF0dXJlIGhpZ2hlciB0aGFuIFNTRSkuDQo+ID4NCj4gPiBGb3IgYSBsaXZlIGRlYnVnIHNl c3Npb24gd2UgY2FuIHByaW50IGl0Og0KPiA+IH5+fg0KPiA+IFJlYWRpbmcgc3ltYm9scyBmcm9t IG1haW4uLi4NCj4gPiAoZ2RiKSBzdGFydA0KPiA+IFRlbXBvcmFyeSBicmVha3BvaW50IDEgYXQg MHgxMTMxOiBmaWxlIG1haW4uYywgbGluZSAzLg0KPiA+IFN0YXJ0aW5nIHByb2dyYW06IC90bXAv bWFpbg0KPiA+IFtUaHJlYWQgZGVidWdnaW5nIHVzaW5nIGxpYnRocmVhZF9kYiBlbmFibGVkXSBV c2luZyBob3N0IGxpYnRocmVhZF9kYg0KPiA+IGxpYnJhcnkgIi9saWIveDg2XzY0LWxpbnV4LWdu dS9saWJ0aHJlYWRfZGIuc28uMSIuDQo+ID4NCj4gPiBUZW1wb3JhcnkgYnJlYWtwb2ludCAxLCBt YWluICgpIGF0IG1haW4uYzozDQo+ID4gMyAgICAgICAgIGludCAqcG9pbnRlciA9IDA7DQo+ID4g KGdkYikgcCAkeW1tMA0KPiA+ICQxID0ge3YxNl9iZmxvYXQxNiA9IHswLCAyLjM0MmUtMzgsIDAg PHJlcGVhdHMgMTQgdGltZXM+fSwgdjE2X2hhbGYgPSB7MCwNCj4gMS41MTk5ZS0wNSwgMCA8cmVw ZWF0cyAxNCB0aW1lcz59LCB2OF9mbG9hdCA9IHsNCj4gPiAgICAgMi4zNDE4MDUxNWUtMzgsIDAs IDAsIDAsIDAsIDAsIDAsIDB9LCB2NF9kb3VibGUgPSB7OC4yNTY2NjY5NzIyOTIyNDNlLQ0KPiAz MTcsIDAsIDAsIDB9LCB2MzJfaW50OCA9IHswLCAwLCAtMSwNCj4gPiAgICAgMCA8cmVwZWF0cyAy OSB0aW1lcz59LCB2MTZfaW50MTYgPSB7MCwgMjU1LCAwIDxyZXBlYXRzIDE0IHRpbWVzPn0sIHY4 X2ludDMyDQo+ID0gezE2NzExNjgwLCAwLCAwLCAwLCAwLCAwLCAwLCAwfSwgdjRfaW50NjQgPSB7 DQo+ID4gICAgIDE2NzExNjgwLCAwLCAwLCAwfSwgdjJfaW50MTI4ID0gezE2NzExNjgwLCAwfX0g Wy4uLl0gfn5+DQo+ID4NCj4gPiBOb3RlLCB0aGF0IHRoaXMgaXMgbm90IHJlcHJvZHVjaWJsZSBm b3IgY29yZWZpbGVzIGdlbmVyYXRlZCBieSB0aGUNCj4gPiBnY29yZQ0KPiANCj4gRHJvcCB0aGUg Y29tbWEgYWZ0ZXIgJ05vdGUnLg0KPiANCj4gPiBjb21tYW5kLCBzaW5jZSBpbiBzdWNoIGNvcmVm aWxlcyB0aGUgR0RCIHRhcmdldCBkZXNjcmlwdGlvbiBpcw0KPiA+IGF2YWlsYWJsZSBhbmQgZ2Ri L2kzODctdGRlcC5jOmkzODdfZmFsbGJhY2tfeHNhdmVfbGF5b3V0IGNvbmZpZ3VyZXMNCj4gPiB0 aGUgeHNhdmVfbGF5b3V0IGJhc2VkIG9uIHhjcjAgZGVyaXZlZCBmcm9tIHRoZSB0YXJnZXQgZGVz Y3JpcHRpb24uDQo+ID4NCj4gPiBUaGlzIHBhdGNoIGZpeGVzIHRoaXMgaXNzdWUgYnkgaGFuZGxp bmcgdGhlIG5ldyB4c2F2ZSBzaXplIGluDQo+ID4gaTM4N19ndWVzc194c2F2ZV9sYXlvdXQuICBJ dCBpcyBuZWNlc3NhcnkgZXZlbiB0aG91Z2ggR0RCIGRvZXMgbm90DQo+ID4gc3VwcG9ydCBBTVgg eWV0LCBzaW5jZSB3ZSBzdGlsbCBwYXNzIHRoZSBmdWxsIHhzYXZlX3NpemUgKDExMDA4KQ0KPiA+ IGV4dHJhY3RlZCBmcm9tIHRoZSBjb3JlZmlsZSB0byBpMzg3X2d1ZXNzX3hzYXZlX2xheW91dC4N Cj4gPiBUaGUgcGF0Y2ggZG9lcyBub3QgZml4IGkzODdfZmFsbGJhY2tfeHNhdmVfbGF5b3V0IHRv IGNvbmZpZ3VyZSB0aGUgbmV3DQo+ID4geHNhdmUgc2l6ZS4gIENvbmZpZ3VyaW5nIHNpemVvZl94 c2F2ZSB0byAyNjk2IGlzIGZpbmUgYXQgdGhpcyBwb2ludCwNCj4gPiBzaW5jZSB0cnVuY2F0aW5n IHRvIDI2OTYgZHJvcHMgb25seSB0aGUgcGFydHMgR0RCIGRvZXNuJ3QgbW9kZWwgeWV0Lg0KPiA+ DQo+ID4gQXMgYSBxdWljayBzb2x1dGlvbiBmb3IgdGhlIHVwY29taW5nIHJlbGVhc2UgYW5kIENQ VXMgc3VwcG9ydGluZyBJbnRlbA0KPiA+IEFNWCB0aGlzIHBhdGNoIHNob3VsZCBiZSBzdWZmaWNp ZW50Lg0KPiA+DQo+ID4gVGVzdGluZzoNCj4gPg0KPiA+IEkgbm90aWNlZCB0aGF0IHdlIGRvbid0 IGhhdmUgdGVzdHMgZm9yIGNvcmVmaWxlcyBmb3IgdGhlIGZlYXR1cmVzIEFWWCwNCj4gPiBBVlg1 MTIgYW5kIFBLUlUgaW4gdGhlIEdEQiB0ZXN0c3VpdGUuICBTbyB0aGlzIGNvbW1pdCBhZGRzIGNv cmVmaWxlDQo+ID4gdGVzdHMgZm9yIEFWWCwgQVZYNTEyIGFuZCBQS1JVIHJlZ2lzdGVycy4NCj4g Pg0KPiA+IEl0IGZ1cnRoZXIgZml4ZXMgdGhlIHRlc3RzIGdkYi5iYXNlL2NvcmVkdW1wLWZpbHRl ci5leHAgYW5kDQo+ID4gZ2RiLmFyY2gvaTM4Ni10bHMtcmVncy5leHAgb24gc3lzdGVtcyB3aXRo IEludGVsIEFNWCBzdXBwb3J0Lg0KPiA+IFdpdGggbXkgcGF0Y2ggdGhlIHdhcm5pbmcNCj4gPiAi d2FybmluZzogVW5leHBlY3RlZCBzaXplIG9mIHNlY3Rpb24gYC5yZWcteHN0YXRlLzEzNzM3ODYn IGluIGNvcmUgZmlsZS5eTSINCj4gPiBkaXNhcHBlYXJzIGFuZCB0aGUgdGVzdHMgYXJlIHBhc3Np bmcgYWdhaW4uDQo+IA0KPiBDYW4geW91IGNsZWFuIHVwIHRoZSBeTSBhcnRlZmFjdCBwbGVhc2Uu DQo+IA0KPiBBbHNvLCBhcyB5b3UncmUgdG91Y2hpbmcgdGhlIGNvbW1pdCBtZXNzYWdlIGFueXdh eSwgSSB0aGluayB0aGlzIHdvdWxkIGJlDQo+IGJldHRlciB3cml0dGVuIGFzOg0KPiANCj4gICBB cyBhIHJlc3VsdCBvZiB0aGlzIHBhdGNoLCB0aGUgd2FybmluZzoNCj4gDQo+ICAgICB3YXJuaW5n OiBVbmV4cGVjdGVkIHNpemUgb2Ygc2VjdGlvbiBgLnJlZy14c3RhdGUvMTM3Mzc4NicgaW4gY29y ZSBmaWxlLg0KPiANCj4gICB3aGljaCB3YXMgY2F1c2luZyBmYWlsdXJlIGluIGdkYi5iYXNlL2Nv cmVkdW1wLWZpbHRlci5leHAgYW5kDQo+ICAgZ2RiLmFyY2gvaTM4Ni10bHMtcmVncy5leHAgb24g QU1YIHN5c3RlbXMgZGlzYXBwZWFycywgdGhlc2UgdGVzdHMgbm93DQo+ICAgcGFzcy4NCg0KWWVz LCB3aWxsIGZpeC4NCg0KPiANCj4gDQo+ID4gLS0tDQo+ID4gIGdkYi9pMzg3LXRkZXAuYyAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDkgKysrLQ0KPiA+ICBnZGIvdGVzdHN1aXRlL2dkYi5hcmNo L2kzODYtYXZ4LmMgICAgICB8ICA2ICsrKw0KPiA+ICBnZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2kz ODYtYXZ4LmV4cCAgICB8IDYxICsrKysrKysrKysrKysrKysrKysrKystLS0tDQo+ID4gIGdkYi90 ZXN0c3VpdGUvZ2RiLmFyY2gvaTM4Ni1hdng1MTIuYyAgIHwgIDYgKysrDQo+ID4gIGdkYi90ZXN0 c3VpdGUvZ2RiLmFyY2gvaTM4Ni1hdng1MTIuZXhwIHwgNTYgKysrKysrKysrKysrKysrKysrKysr KysNCj4gPiAgZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LXBrcnUuYyAgICAgfCAgNiArKysN Cj4gPiAgZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LXBrcnUuZXhwICAgfCAzOSArKysrKysr KysrKysrKysrDQo+ID4gIDcgZmlsZXMgY2hhbmdlZCwgMTczIGluc2VydGlvbnMoKyksIDEwIGRl bGV0aW9ucygtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2dkYi9pMzg3LXRkZXAuYyBiL2dkYi9p Mzg3LXRkZXAuYyBpbmRleA0KPiA+IGYyMmE1ZTAyYmJiLi4xOTQyOTUzNjUzNyAxMDA2NDQNCj4g PiAtLS0gYS9nZGIvaTM4Ny10ZGVwLmMNCj4gPiArKysgYi9nZGIvaTM4Ny10ZGVwLmMNCj4gPiBA QCAtOTE4LDkgKzkxOCwxNCBAQCBib29sDQo+ID4gIGkzODdfZ3Vlc3NfeHNhdmVfbGF5b3V0ICh1 aW50NjRfdCB4Y3IwLCBzaXplX3QgeHNhdmVfc2l6ZSwNCj4gPiAgCQkJIHg4Nl94c2F2ZV9sYXlv dXQgJmxheW91dCkNCj4gPiAgew0KPiA+IC0gIGlmIChIQVNfUEtSVSAoeGNyMCkgJiYgeHNhdmVf c2l6ZSA9PSAyNjk2KQ0KPiA+ICsgIGlmIChIQVNfUEtSVSAoeGNyMCkgJiYgKHhzYXZlX3NpemUg PT0gMjY5NiB8fCB4c2F2ZV9zaXplID09IDExMDA4KSkNCj4gPiAgICAgIHsNCj4gPiAtICAgICAg LyogSW50ZWwgQ1BVcyBzdXBwb3J0aW5nIFBLUlUuICAqLw0KPiA+ICsgICAgICAvKiBJbnRlbCBD UFVzIHN1cHBvcnRpbmcgUEtSVS4NCj4gPiArCSBOb3RlIHRoYXQgaW4gdGhpcyBjYXNlIDIgcG9z c2libGUgeHNhdmVfc2l6ZXMgaGF2ZSB0byBiZSBoYW5kbGVkLA0KPiANCj4gVGhlICdOb3RlJyBo ZXJlIGlzIG5vdCByZWFsbHkgbmVlZGVkLiAgVGhlIGNvbW1lbnQgaXMgYnkgZGVmaW5pdGlvbiBh IG5vdGUuICBBbHNvLA0KPiB2YXJpYWJsZXMgc2hvdWxkIGJlIGNhcGl0YWxpc2VkLCBvciBhdm9p ZCB1c2luZyB0aGUgdmFyaWFibGUgbmFtZSBtYXliZSwgbGlrZToNCj4NCj4gICBJbiB0aGlzIGNh c2UgdHdvIHBvc3NpYmxlIFhTQVZFX1NJWkUgdmFsdWVzIGhhdmUgdG8gYmUgaGFuZGxlZC4gIEFz DQo+ICAgR0RCIGRvZXMgbm90IHlldCBzdXBwb3J0IEludGVsIEFNWCBhbmQgQ1BVcyB0aGF0IHN1 cHBvcnQgdGhpcyBmZWF0dXJlDQo+ICAgd2lsbCBoYXZlIGEgZGlmZmVyZW50IFhTQVZFX1NJWkUg KDExMDA4KS4gIElmIHdlIGRvbid0IGhhbmRsZSB0aGlzDQo+ICAgc2l6ZSB0aGVuIHdlIHdpbGwg bm90IGJlIGFibGUgdG8gaGFuZGxlIGFueSB4c2F2ZSByZWdpc3RlcnMgZnJvbSBPUw0KPiAgIGdl bmVyYXRlZCBjb3JlIGZpbGVzIG9uIEFNWCBzeXN0ZW1zLg0KDQpZZXMsIHlvdXIgdmVyc2lvbiBz b3VuZHMgbXVjaCBiZXR0ZXIsIHRoYW5rcyBmb3IgdGhpcyBzdWdnZXN0aW9uLg0KDQo+ID4gKwkg c2luY2UgR0RCIGRvZXMgbm90IHN1cHBvcnQgSW50ZWwgQU1YIHlldCBhbmQgQ1BVcyB0aGF0IHN1 cHBvcnQNCj4gPiArCSB0aGlzIGZlYXR1cmUgc3RpbGwgaGF2ZSBhIGRpZmZlcmVudCB4c2F2ZSBz aXplICh4c2F2ZV9zaXplID09IDExMDA4KS4NCj4gPiArCSBPdGhlcndpc2UsIHdlIGFyZSBub3Qg YWJsZSB0byByZWFkIHhzYXZlIHJlZ2lzdGVycyBpbiBPUyBnZW5lcmF0ZWQNCj4gPiArCSBjb3Jl ZmlsZXMuICAqLw0KPiA+ICAgICAgICBsYXlvdXQuYXZ4X29mZnNldCA9IDU3NjsNCj4gPiAgICAg ICAgbGF5b3V0Lmtfb2Zmc2V0ID0gMTA4ODsNCj4gPiAgICAgICAgbGF5b3V0LnptbV9oX29mZnNl dCA9IDExNTI7DQo+ID4gZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLmFyY2gvaTM4Ni1h dnguYw0KPiA+IGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2eC5jDQo+ID4gaW5kZXgg YjZjZDg5ZTViZWEuLjdlZGNhYmNlYzhjIDEwMDY0NA0KPiA+IC0tLSBhL2dkYi90ZXN0c3VpdGUv Z2RiLmFyY2gvaTM4Ni1hdnguYw0KPiA+ICsrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmFyY2gvaTM4 Ni1hdnguYw0KPiA+IEBAIC0xOCwxMSArMTgsMTQgQEANCj4gPiAgICAgYWxvbmcgd2l0aCB0aGlz IHByb2dyYW0uICBJZiBub3QsIHNlZQ0KPiA+IDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMv Pi4gICovDQo+ID4NCj4gPiAgI2luY2x1ZGUgPHN0ZGlvLmg+DQo+ID4gKyNpbmNsdWRlIDxzdGRs aWIuaD4NCj4gPiAgI2luY2x1ZGUgIm5hdC94ODYtY3B1aWQuaCINCj4gPg0KPiA+ICAvKiBBbGln biBzdWZmaWNpZW50IHRvIGJlIGFibGUgdG8gdXNlIHZtb3ZhcHMuICAqLyAgI2RlZmluZSBBTElH TiAzMg0KPiA+DQo+ID4gK3ZvbGF0aWxlIGludCBzaG91bGRfZHVtcF9jb3JlX3AgPSAxOw0KPiA+ ICsNCj4gPiAgdHlwZWRlZiBzdHJ1Y3Qgew0KPiA+ICAgIF9BbGlnbmFzIChBTElHTikgZmxvYXQg Zls4XTsNCj4gPiAgfSB2OHNmX3Q7DQo+ID4gQEAgLTg3LDYgKzkwLDkgQEAgbWFpbiAoaW50IGFy Z2MsIGNoYXIgKiphcmd2KQ0KPiA+DQo+ID4gICAgYXNtICgibm9wIik7IC8qIGZpcnN0IGJyZWFr cG9pbnQgaGVyZSAqLw0KPiA+DQo+ID4gKyAgaWYgKHNob3VsZF9kdW1wX2NvcmVfcCkgLyogQ3Jh c2ggZm9yIE9TIGNvcmVmaWxlLiAqLw0KPiA+ICsgICAgYWJvcnQgKCk7DQo+IA0KPiBXZSBzaG91 bGQgc3RpbGwgZm9sbG93IEdEQi9HTlUgc3R5bGUgYXMgbXVjaCBhcyBwb3NzaWJsZSBpbiB0ZXN0 cywgd2hpY2gNCj4gbWVhbnMgYXZvaWRpbmcgdHJhaWxpbmcgY29tbWVudHMuICBQbGVhc2UgbW92 ZSB0aGUgY29tbWVudCBhYm92ZSB0aGUgYGlmYA0KPiBsaW5lLiAgVGhlIGV4Y2VwdGlvbiBpbiB0 ZXN0cyBpcyB3aGVuIHdlIHVzZSBhIGNvbW1lbnQgdG8gdGFnIGEgbGluZSBvbiB3aGljaA0KPiB3 ZSB3aXNoIHRvIHBsYWNlIGEgYnJlYWtwb2ludCwgZS5nLiB0aGUgJ2ZpcnN0IGJyZWFrcG9pbnQg aGVyZScgbGluZSBhYm92ZS4NCg0KWWVzLCB3aWxsIGZpeC4NCg0KPiBJIGFsc28gd29uZGVyIGlm IHVzaW5nIGBhYm9ydCgpYCBoZXJlIGlzIHRoZSByaWdodCBhcHByb2FjaC4NCj4gDQo+IFlvdSB3 YW50IHRvIGNoZWNrIHRoZSByZWdpc3RlciB2YWx1ZXMgaW4gdGhlIGdlbmVyYXRlZCBjb3JlIGZp bGUsIG5vdCBqdXN0IEMgbGV2ZWwNCj4gdmFyaWFibGVzLiAgTWFraW5nIGEgZnVuY3Rpb24gY2Fs bCBydW5zIHRoZSByaXNrIHRoYXQgdGhlIGNhbGxlZSBtaWdodCB0b3VjaCBzb21lDQo+IG9yIGFs bCBvZiB0aGVzZSByZWdpc3RlcnMuICBJIGd1ZXNzIGl0J3MgdW5saWtlbHkgZm9yIHNvbWV0aGlu ZyBhcyBzaW1wbGUgYXMgYWJvcnQoKSwNCj4gYnV0IEkgd29uZGVyIG1heWJlLCBpZiB0aGF0J3Mg d2hhdCdzIGNhdXNpbmcgdGhlIHByb2JsZW0geW91ciBzZWNvbmQgcGF0Y2ggaXMNCj4gYWRkcmVz c2luZz8NCj4gDQo+IE1heWJlIGl0IHdvdWxkIGJlIGJldHRlciB0byB0cmlnZ2VyIHRoZSBjb3Jl IGZpbGUgYnkgcmVhZGluZyBmcm9tIGFkZHJlc3MgemVybz8NCj4gV2UgaGF2ZSBhIHRlc3RzdWl0 ZSBwcm9jIGBpc19hZGRyZXNzX3plcm9fcmVhZGFibGVgIHdoaWNoIGNhbiBiZSB1c2VkIHRvIGdh dGUNCj4gc3VjaCBhIHRlc3QuICBJIHRoaW5rIGl0IG1pZ2h0IGJlIHdvcnRoIHRlc3RpbmcgdGhp cyBvbiB0aGUgcHJvYmxlbWF0aWMgbWFjaGluZXMNCj4geW91IG1lbnRpb24gaW4gdGhlIHNlY29u ZCBwYXRjaCB0byBzZWUgaWYgdGhpcyBmaXhlcyB0aGUgaXNzdWUuDQoNCkkndmUgdGVzdGVkIGl0 IGFuZCBpdCBkb2VzIG5vdCBmaXggdGhlIHByb2JsZW0sIGJ1dCBJIHN0aWxsIHRoaW5rIHlvdXIg Y29tbWVudCBtYWtlcyBhDQpsb3Qgb2Ygc2Vuc2Ugd2hlbiByZWFkaW5nIHJlZ2lzdGVycy4gSSdk IGdlbmVyYXRlIHRoZSBjb3JlZmlsZSBhcyBmb2xsb3dzOg0KDQorICAgICAgLyogQ3Jhc2ggZm9y IE9TIGNvcmVmaWxlLiAqLw0KKyAgICAgIGlmIChzaG91bGRfZHVtcF9jb3JlX3ApDQorICAgICAg IHsNCisgICAgICAgICAvKiBHZW5lcmF0ZSBTSUdTRUdWIHRvIGNyYXNoLiAgKi8NCisgICAgICAg ICAqKHZvbGF0aWxlIGludCAqKSAwOw0KKyAgICAgICB9DQoNCkRvZXMgdGhhdCBsb29rIGJldHRl cj8NCg0KSSBhbSBzdGlsbCB0cnlpbmcgdG8gY2xhcmlmeSB0aGUgYWN0dWFsIHJlYXNvbiwgYnV0 IEkgY2Fubm90IHByb21pc2UgSSB3aWxsIG1ha2UgdGhpcyB1bnRpbCBGcmlkYXkuDQpHaXZlbiB0 aGF0IHRoaXMgaXNzdWUgaXMgdW5yZWxhdGVkIHRvIHRoZSBvcmlnaW5hbCBpc3N1ZSwgSSdkIGhv cGUgdGhhdCB0aGlzIGlzIG5vdCBhIGJsb2NrZXIgZm9yIHRoZSB1cGNvbWluZyByZWxlYXNlLg0K DQpBdCB0aGUgc2FtZSB0aW1lLCBJIHdvbmRlciBpZiBpdCB3b3VsZCBiZSBiZXR0ZXIgdG8gc2lt cGx5IGxldCB0aGUgdGVzdCBmYWlsLCBpbnN0ZWFkIG9mIGhhdmluZyBhIHNlY29uZCBwYXRjaC4N CklmIHRoaXMgaXNzdWUgaXMgZml4ZWQgYXQgc29tZSBwb2ludCwgd2Ugd29uJ3QgaGF2ZSB0byB0 b3VjaCB0aGUgdGVzdCBhZ2Fpbi4NCk9UT0ggSSBkb24ndCBsaWtlIGludHJvZHVjaW5nIG5ldyBm YWlscyBpbiB0aGUgR0RCIHRlc3RzdWl0ZS4NCg0KPiANCj4gPiArDQo+ID4gICAgYXNtICgNCj4g PiAgICAgICAgICJ2bW92YXBzICUleW1tMCwgMCglMClcblx0Ig0KPiA+ICAgICAgICAgInZtb3Zh cHMgJSV5bW0xLCAzMiglMClcblx0Ig0KPiA+IGRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dk Yi5hcmNoL2kzODYtYXZ4LmV4cA0KPiA+IGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2 eC5leHANCj4gPiBpbmRleCAxYTc4NmVlOGE1MS4uMTc0MDA0NTQyN2EgMTAwNjQ0DQo+ID4gLS0t IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2eC5leHANCj4gPiArKysgYi9nZGIvdGVz dHN1aXRlL2dkYi5hcmNoL2kzODYtYXZ4LmV4cA0KPiA+IEBAIC00MiwxMiArNDIsMjYgQEAgaWYg eyBbZ2RiX2NvbXBpbGUgIiR7c3JjZGlyfS8ke3N1YmRpcn0vJHtzcmNmaWxlfSINCj4gIiR7Ymlu ZmlsZX0iIGV4ZWN1dGFibGUgXA0KPiA+ICAgICAgcmV0dXJuDQo+ID4gIH0NCj4gPg0KPiA+ICsj IENoZWNrIHJlYWRpbmcgcmVnaXN0ZXJzIGFmdGVyIHRoZSBmaXJzdCBicmVha3BvaW50IGZvciB5 bW0gaW50OCBhbmQNCj4gPiArIyBmbG9hdCB0eXBlcy4NCj4gPiArcHJvYyB0ZXN0X3JlZ3NfZmly c3RfYnAge30gew0KPiA+ICsgICAgZm9yIHsgc2V0IHIgMCB9IHsgJHIgPCAkOjpucl9yZWdzIH0g eyBpbmNyIHIgfSB7DQo+ID4gKwlnZGJfdGVzdCAicHJpbnQgXCR5bW0kci52OF9mbG9hdCIgXA0K PiA+ICsJICAgICIuLiA9IFxceyRyLCAkci4xMjUsICRyLjI1LCAkci4zNzUsICRyLjUsICRyLjYy NSwgJHIuNzUsICRyLjg3NVxcfS4qIiBcDQo+ID4gKwkgICAgImNoZWNrIGZsb2F0IGNvbnRlbnRz IG9mICV5bW0kciINCj4gPiArCWdkYl90ZXN0ICJwcmludCBcJHltbSRyLnYzMl9pbnQ4IiBcDQo+ ID4gKwkgICAgIi4uID0gXFx7KC0/JHs6OmRlY2ltYWx9LCApezMxfS0/JHs6OmRlY2ltYWx9XFx9 LioiIFwNCj4gPiArCSAgICAiY2hlY2sgaW50OCBjb250ZW50cyBvZiAleW1tJHIiDQo+ID4gKyAg ICB9DQo+ID4gK30NCj4gPiAgY2xlYW5fcmVzdGFydCAkezo6dGVzdGZpbGV9DQo+IA0KPiBBZGQg YSBibGFuayBsaW5lIGJlZm9yZSB0aGUgY2xlYW5fcmVzdGFydCBsaW5lIHBsZWFzZS4NCg0KWWVz LCB3aWxsIGZpeC4NCg0KPiA+DQo+ID4gIGlmIHshW3J1bnRvX21haW5dfSB7DQo+ID4gICAgICBy ZXR1cm4NCj4gPiAgfQ0KPiA+DQo+ID4gK2dkYl90ZXN0X25vX291dHB1dCAic2V0IHNob3VsZF9k dW1wX2NvcmVfcD0wIg0KPiA+ICsNCj4gPiAgZ2RiX3Rlc3QgImJyZWFrIFtnZGJfZ2V0X2xpbmVf bnVtYmVyICJmaXJzdCBicmVha3BvaW50IGhlcmUiXSIgXA0KPiA+ICAJICJCcmVha3BvaW50IC4q IGF0IC4qaTM4Ni1hdnguYy4qIiBcDQo+ID4gIAkgInNldCBmaXJzdCBicmVha3BvaW50IGluIG1h aW4iDQo+ID4gQEAgLTU5LDE0ICs3Myw3IEBAIGlmIHtbaXNfYW1kNjRfcmVnc190YXJnZXRdfSB7 DQo+ID4gICAgICBzZXQgbnJfcmVncyA4DQo+ID4gIH0NCj4gPg0KPiA+IC1mb3IgeyBzZXQgciAw IH0geyAkciA8ICRucl9yZWdzIH0geyBpbmNyIHIgfSB7DQo+ID4gLSAgICBnZGJfdGVzdCAicHJp bnQgXCR5bW0kci52OF9mbG9hdCIgXA0KPiA+IC0JIi4uID0gXFx7JHIsICRyLjEyNSwgJHIuMjUs ICRyLjM3NSwgJHIuNSwgJHIuNjI1LCAkci43NSwgJHIuODc1XFx9LioiIFwNCj4gPiAtCSJjaGVj ayBmbG9hdCBjb250ZW50cyBvZiAleW1tJHIiDQo+ID4gLSAgICBnZGJfdGVzdCAicHJpbnQgXCR5 bW0kci52MzJfaW50OCIgXA0KPiA+IC0JIi4uID0gXFx7KC0/JHs6OmRlY2ltYWx9LCApezMxfS0/ JHs6OmRlY2ltYWx9XFx9LioiIFwNCj4gPiAtCSJjaGVjayBpbnQ4IGNvbnRlbnRzIG9mICV5bW0k ciINCj4gPiAtfQ0KPiA+ICt0ZXN0X3JlZ3NfZmlyc3RfYnANCj4gPg0KPiA+ICBmb3IgeyBzZXQg ciAwIH0geyAkciA8ICRucl9yZWdzIH0geyBpbmNyIHIgfSB7DQo+ID4gICAgICBnZGJfdGVzdCAi c2V0IHZhciBcJHltbSRyLnY4X2Zsb2F0XFswXF0gPSAkciArIDEwIiAiIiAic2V0ICV5bW0kciIN Cj4gPiBAQCAtMTAwLDkgKzEwNyw0NyBAQCB3aXRoX3Rlc3RfcHJlZml4ICJmb3JjZS1kaXNhYmxl IHhtbCBkZXNjcmlwdGlvbnMiIHsNCj4gPiAgCSAgICByZXR1cm4NCj4gPiAgCX0NCj4gPg0KPiA+ ICsJZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgc2hvdWxkX2R1bXBfY29yZV9wPTAiDQo+ID4gKw0K PiA+ICAJIyBXaXRoIHFYZmVyOmZlYXR1cmVzOnJlYWQgZGlzYWJsZWQsIHdlIHdvbid0IGtub3cg YW55dGhpbmcNCj4gPiAgCSMgYWJvdXQgWU1NIHJlZ2lzdGVycy4NCj4gPiAgCWdkYl90ZXN0ICJw cmludCBcJHltbTAiICIgPSB2b2lkIg0KPiA+ICAJZ2RiX3Rlc3QgInByaW50IFwkeG1tMCIgInY0 X2Zsb2F0LioiDQo+ID4gICAgICB9DQo+ID4gIH0NCj4gPiArDQo+ID4gKyMgUmVzdGFydCBnZGIs IGxvYWQgdGhlIGNvcmVmaWxlIGdlbmVyYXRlZCBieSBnY29yZSBvciB0aGUgT1MgIyBhbmQNCj4g PiArY2hlY2sgcmVhZGluZyByZWdpc3RlcnMgZnJvbSB0aGUgY29yZWZpbGUuDQo+ID4gK3Byb2Mg dGVzdF9jb3JlZmlsZSB7Y29yZV9maWxlbmFtZX0gew0KPiA+ICsgICAgY2xlYW5fcmVzdGFydCAk Ojp0ZXN0ZmlsZQ0KPiA+ICsNCj4gPiArICAgIGdkYl90ZXN0ICJjb3JlICRjb3JlX2ZpbGVuYW1l IiAiQ29yZSB3YXMgZ2VuZXJhdGVkIGJ5IC4qIiBcDQo+ID4gKwkibG9hZCBjb3JlZmlsZSINCj4g PiArDQo+ID4gKyAgICB0ZXN0X3JlZ3NfZmlyc3RfYnANCj4gPiArfQ0KPiA+ICsNCj4gPiArd2l0 aF90ZXN0X3ByZWZpeCAiT1MgZ2VuZXJhdGVkIGNvcmVmaWxlIiB7DQo+ID4gKyAgICBzZXQgY29y ZWZpbGUgW2NvcmVfZmluZCAkYmluZmlsZV0NCj4gPiArICAgIGlmIHsgJGNvcmVmaWxlIGVxICIi IH0gew0KPiA+ICsJdW5zdXBwb3J0ZWQgInVuYWJsZSB0byBnZW5lcmF0ZSBjb3JlIGZpbGUiDQo+ ID4gKyAgICB9IGVsc2Ugew0KPiA+ICsJdGVzdF9jb3JlZmlsZSAkY29yZWZpbGUNCj4gPiArICAg IH0NCj4gPiArfQ0KPiA+ICsNCj4gPiArd2l0aF90ZXN0X3ByZWZpeCAiZ2NvcmUgY29yZWZpbGUi IHsNCj4gPiArICAgIGNsZWFuX3Jlc3RhcnQgJHs6OnRlc3RmaWxlfQ0KPiA+ICsgICAgaWYgeyAh W3J1bnRvX21haW5dIH0gew0KPiA+ICsJcmV0dXJuDQo+ID4gKyAgICB9DQo+ID4gKw0KPiA+ICsg ICAgc2V0IGxpbmUgW2dkYl9nZXRfbGluZV9udW1iZXIgImZpcnN0IGJyZWFrcG9pbnQgaGVyZSJd DQo+ID4gKyAgICBnZGJfYnJlYWtwb2ludCAkbGluZQ0KPiA+ICsgICAgZ2RiX2NvbnRpbnVlX3Rv X2JyZWFrcG9pbnQgImZpcnN0IGJyZWFrcG9pbnQgaGVyZSIgIi4qJHNyY2ZpbGU6JGxpbmUuKiIN Cj4gPiArDQo+ID4gKyAgICBzZXQgZ2NvcmVmaWxlICRiaW5maWxlLmdjb3JlDQo+ID4gKyAgICBp ZiB7IFtnZGJfZ2NvcmVfY21kICRnY29yZWZpbGUgInNhdmUgYSBjb3JlZmlsZSJdIH0gew0KPiA+ ICsJdGVzdF9jb3JlZmlsZSAkZ2NvcmVmaWxlDQo+ID4gKyAgICB9DQo+ID4gK30NCj4gPiBkaWZm IC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2eDUxMi5jDQo+ID4gYi9nZGIv dGVzdHN1aXRlL2dkYi5hcmNoL2kzODYtYXZ4NTEyLmMNCj4gPiBpbmRleCBiMWUwMjNjZTRkNC4u ZDkzNWZhYjUwYmMgMTAwNjQ0DQo+ID4gLS0tIGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2 LWF2eDUxMi5jDQo+ID4gKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2eDUxMi5j DQo+ID4gQEAgLTE3LDggKzE3LDExIEBADQo+ID4gICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZl ZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQo+ID4gICAgIGFsb25n IHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUNCj4gPiA8aHR0cDovL3d3dy5nbnUub3Jn L2xpY2Vuc2VzLz4uICAqLw0KPiA+DQo+ID4gKyNpbmNsdWRlIDxzdGRsaWIuaD4NCj4gPiAgI2lu Y2x1ZGUgIng4Ni1jcHVpZC5oIg0KPiA+DQo+ID4gK3ZvbGF0aWxlIGludCBzaG91bGRfZHVtcF9j b3JlX3AgPSAxOw0KPiA+ICsNCj4gPiAgdHlwZWRlZiBzdHJ1Y3QNCj4gPiAgew0KPiA+ICAgIGRv dWJsZSBmWzhdOw0KPiA+IEBAIC0yMzMsNiArMjM2LDkgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIg Kiphcmd2KQ0KPiA+ICAgICAgICBtb3ZlX3ptbV9kYXRhX3RvX3JlZyAoKTsNCj4gPiAgICAgICAg YXNtICgibm9wIik7IC8qIHRoaXJkIGJyZWFrcG9pbnQgaGVyZSAgKi8NCj4gPg0KPiA+ICsgICAg ICBpZiAoc2hvdWxkX2R1bXBfY29yZV9wKSAvKiBDcmFzaCBmb3IgT1MgY29yZWZpbGUuICovDQo+ ID4gKwlhYm9ydCAoKTsNCj4gDQo+IFRyYWlsaW5nIGNvbW1lbnQgYWdhaW4uDQoNCldpbGwgZml4 Lg0KDQo+ID4gKw0KPiA+ICAgICAgICAvKiBUZXN0IHNjcmlwdCBpbmNyZW1lbnRlZCB2YWx1ZXMs DQo+ID4gIAkgbW92ZSBiYWNrIHRvIGFycmF5IGFuZCBjaGVjayB2YWx1ZXMuICAqLw0KPiA+ICAg ICAgICBtb3ZlX3ptbV9kYXRhX3RvX21lbW9yeSAoKTsNCj4gPiBkaWZmIC0tZ2l0IGEvZ2RiL3Rl c3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2eDUxMi5leHANCj4gPiBiL2dkYi90ZXN0c3VpdGUvZ2Ri LmFyY2gvaTM4Ni1hdng1MTIuZXhwDQo+ID4gaW5kZXggYzc5NTYzMzY2ZGMuLjY5ODRjMjI4MGU5 IDEwMDY0NA0KPiA+IC0tLSBhL2dkYi90ZXN0c3VpdGUvZ2RiLmFyY2gvaTM4Ni1hdng1MTIuZXhw DQo+ID4gKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYXJjaC9pMzg2LWF2eDUxMi5leHANCj4gPiBA QCAtMzUsNiArMzUsOCBAQCBpZiB7IVtydW50b19tYWluXX0gew0KPiA+ICAgICAgcmV0dXJuDQo+ ID4gIH0NCj4gPg0KPiA+ICtnZGJfdGVzdF9ub19vdXRwdXQgInNldCBzaG91bGRfZHVtcF9jb3Jl X3A9MCINCj4gPiArDQo+ID4gIHNldCBzdXBwb3J0c19hdng1MTIgMA0KPiA+DQo+ID4gIHNldCB0 ZXN0ICJwcm9iZSBBVlg1MTIgc3VwcG9ydCINCj4gPiBAQCAtMTgxLDMgKzE4Myw1NyBAQCBnZGJf dGVzdCAicHJpbnQgXCR6bW0wLnYxNl9pbnQzMiIgIj0gey0xLCAtMSwgLTEsIC0NCj4gMSwgMCA8 cmVwZWF0cyAxMiB0aW1lcz59Ig0KPiA+ICBpZiB7ICRucl9yZWdzID49IDE2IH0gew0KPiA+ICAg ICAgZ2RiX3Rlc3QgInByaW50IFwkem1tMTYudjE2X2ludDMyIiAiPSB7LTEgPHJlcGVhdHMgMTYg dGltZXM+fSINCj4gPiAgfQ0KPiA+ICsNCj4gPiArIyBUZXN0IHJlYWRpbmcgayBhbmQgem1tIHJl Z2lzdGVycyBhbmQgZm9yIGRvdWJsZSBhbmQgaW50MTYgdHlwZXMuDQo+ID4gK3Byb2MgdGVzdF9y ZWdzX2NvcmVmaWxlIHt9IHsNCj4gPiArICAgIGZvciB7IHNldCByIDEgfSB7ICRyIDwgOCB9IHsg aW5jciByIH0gew0KPiA+ICsJZ2RiX3Rlc3QgInByaW50L3ggXCRrJHIiIFwNCj4gPiArCSAgICAi Li4gPSAweFtmb3JtYXQgJXggJHJdMltmb3JtYXQgJXggJHJdMSIgXA0KPiA+ICsJICAgICJjaGVj ayBjb250ZW50cyBvZiAlayRyIg0KPiA+ICsgICAgfQ0KPiA+ICsNCj4gPiArICAgIGZvciB7IHNl dCByIDAgfSB7ICRyIDwgJDo6bnJfcmVncyB9IHsgaW5jciByIH0gew0KPiA+ICsJZ2RiX3Rlc3Qg InByaW50IFwkem1tJHIudjhfZG91YmxlIiBcDQo+ID4gKwkgICAgIi4uID0gXFx7JHIsICRyLjEy NSwgJHIuMjUsICRyLjM3NSwgJHIuNSwgJHIuNjI1LCAkci43NSwgJHIuODc1XFx9LioiIFwNCj4g PiArCSAgICAiY2hlY2sgZG91YmxlIGNvbnRlbnRzIG9mICV6bW0kciINCj4gPiArCWdkYl90ZXN0 ICJwcmludCBcJHptbSRyLnYzMl9pbnQxNiIgXA0KPiA+ICsJICAgICIuLiA9IFxceygtPyR7Ojpk ZWNpbWFsfSwgKXszMX0tPyR7OjpkZWNpbWFsfVxcfS4qIiBcDQo+ID4gKwkgICAgImNoZWNrIGlu dDE2IGNvbnRlbnRzIG9mICV6bW0kciINCj4gPiArICAgIH0NCj4gPiArfQ0KPiA+ICsNCj4gPiAr IyBSZXN0YXJ0IGdkYiwgbG9hZCB0aGUgY29yZWZpbGUgZ2VuZXJhdGVkIGJ5IGdjb3JlIG9yIHRo ZSBPUyAjIGFuZA0KPiA+ICtjaGVjayByZWFkaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBjb3JlZmls ZS4NCj4gPiArcHJvYyB0ZXN0X2NvcmVmaWxlIHtjb3JlX2ZpbGVuYW1lfSB7DQo+ID4gKyAgICBj bGVhbl9yZXN0YXJ0ICQ6OnRlc3RmaWxlDQo+ID4gKw0KPiA+ICsgICAgZ2RiX3Rlc3QgImNvcmUg JGNvcmVfZmlsZW5hbWUiICJDb3JlIHdhcyBnZW5lcmF0ZWQgYnkgLioiIFwNCj4gPiArCSJsb2Fk IGNvcmVmaWxlIg0KPiA+ICsNCj4gPiArICAgIHRlc3RfcmVnc19jb3JlZmlsZQ0KPiA+ICt9DQo+ ID4gKw0KPiA+ICt3aXRoX3Rlc3RfcHJlZml4ICJPUyBnZW5lcmF0ZWQgY29yZWZpbGUiIHsNCj4g PiArICAgIHNldCBjb3JlZmlsZSBbY29yZV9maW5kICRiaW5maWxlXQ0KPiA+ICsgICAgaWYgeyAk Y29yZWZpbGUgZXEgIiIgfSB7DQo+ID4gKwl1bnN1cHBvcnRlZCAidW5hYmxlIHRvIGdlbmVyYXRl IGNvcmUgZmlsZSINCj4gPiArICAgIH0gZWxzZSB7DQo+ID4gKwl0ZXN0X2NvcmVmaWxlICRjb3Jl ZmlsZQ0KPiA+ICsgICAgfQ0KPiA+ICt9DQo+ID4gKw0KPiA+ICt3aXRoX3Rlc3RfcHJlZml4ICJn Y29yZSBjb3JlZmlsZSIgew0KPiA+ICsgICAgY2xlYW5fcmVzdGFydCAkezo6dGVzdGZpbGV9DQo+ ID4gKyAgICBpZiB7ICFbcnVudG9fbWFpbl0gfSB7DQo+ID4gKwlyZXR1cm4NCj4gPiArICAgIH0N Cj4gPiArDQo+ID4gKyAgICBzZXQgbGluZSBbZ2RiX2dldF9saW5lX251bWJlciAidGhpcmQgYnJl YWtwb2ludCBoZXJlIl0NCj4gPiArICAgIGdkYl9icmVha3BvaW50ICRsaW5lDQo+ID4gKyAgICBn ZGJfY29udGludWVfdG9fYnJlYWtwb2ludCAidGhpcmQgYnJlYWtwb2ludCBoZXJlIiAiLiokc3Jj ZmlsZTokbGluZS4qIg0KPiA+ICsNCj4gPiArICAgIHNldCBnY29yZWZpbGUgJGJpbmZpbGUuZ2Nv cmUNCj4gPiArICAgIGlmIHsgW2dkYl9nY29yZV9jbWQgJGdjb3JlZmlsZSAic2F2ZSBhIGNvcmVm aWxlIl0gfSB7DQo+ID4gKwl0ZXN0X2NvcmVmaWxlICRnY29yZWZpbGUNCj4gPiArICAgIH0NCj4g PiArfQ0KPiA+IGRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2kzODYtcGtydS5j DQo+ID4gYi9nZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2kzODYtcGtydS5jDQo+ID4gaW5kZXggOTU2 MWQxZTkyM2EuLmUzMTZjYTkwYmJhIDEwMDY0NA0KPiA+IC0tLSBhL2dkYi90ZXN0c3VpdGUvZ2Ri LmFyY2gvaTM4Ni1wa3J1LmMNCj4gPiArKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5hcmNoL2kzODYt cGtydS5jDQo+ID4gQEAgLTE4LDEyICsxOCwxNSBAQA0KPiA+ICAgICBhbG9uZyB3aXRoIHRoaXMg cHJvZ3JhbS4gIElmIG5vdCwgc2VlDQo+ID4gPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+ LiAgKi8NCj4gPg0KPiA+ICAjaW5jbHVkZSA8c3RkZGVmLmg+DQo+ID4gKyNpbmNsdWRlIDxzdGRs aWIuaD4NCj4gPiAgI2luY2x1ZGUgIng4Ni1jcHVpZC5oIg0KPiA+DQo+ID4gICNpZm5kZWYgTk9J TkxJTkUNCj4gPiAgI2RlZmluZSBOT0lOTElORSBfX2F0dHJpYnV0ZV9fICgobm9pbmxpbmUpKSAg I2VuZGlmDQo+ID4NCj4gPiArdm9sYXRpbGUgaW50IHNob3VsZF9kdW1wX2NvcmVfcCA9IDE7DQo+ ID4gKw0KPiA+ICB1bnNpZ25lZCBpbnQgaGF2ZV9wa3J1ICh2b2lkKSBOT0lOTElORTsNCj4gPg0K PiA+ICBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcNCj4gPiBAQCAtODMsNiArODYsOSBAQCBt YWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpDQo+ID4gICAgICAgIHdycGtydSAod3JfdmFsdWUp Ow0KPiA+ICAgICAgICBhc20gKCJub3Bcblx0Iik7CS8qIGJyZWFrIGhlcmUgMS4gICovDQo+ID4N Cj4gPiArICAgICAgaWYgKHNob3VsZF9kdW1wX2NvcmVfcCkgLyogQ3Jhc2ggZm9yIE9TIGNvcmVm aWxlLiAqLw0KPiA+ICsJYWJvcnQgKCk7DQo+IA0KPiBUcmFpbGluZyBjb21tZW50IGFnYWluLg0K DQpXaWxsIGZpeCENCg0KS2luZCBSZWdhcmRzLA0KQ2hyaXN0aW5hDQpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fDQpJbnRlbCBEZXV0c2NobGFuZCBHbWJIIA0KDQpSZWdp c3RlcmVkIEFkZHJlc3M6IERvcm5hY2hlciBTdHJhc3NlIDEsIDg1NjIyIEZlbGRraXJjaGVuLCBH ZXJtYW55IA0KDQpUZWw6ICs0OSAoODkpIDk5MTQzLTAgDQoNCnd3dy5pbnRlbC5kZSANCg0KTWFu YWdpbmcgRGlyZWN0b3JzOiBDYW5kaWNlIE1vb3JlLCBKZWZmcmV5IFNjaG5laWRlcm1hbiwgUmFt YWNoYW5kcmFuIFNpdGFyYW1hbg0KDQpDaGFpcnBlcnNvbiBvZiB0aGUgU3VwZXJ2aXNvcnkgQm9h cmQ6IFNvbmphIFBpZXJlcg0KDQpSZWdpc3RlcmVkIFNlYXQ6IE11bmljaCBDb21tZXJjaWFsIFJl Z2lzdGVyIEI6IEFtdHNnZXJpY2h0IE11bmljaCBIUkIgMTg2OTI4DQoNClRoaXMgZS1tYWlsIGFu ZCBhbnkgYXR0YWNobWVudHMgbWF5IGNvbnRhaW4gY29uZmlkZW50aWFsIG1hdGVyaWFsIGZvcg0K dGhlIHNvbGUgdXNlIG9mIHRoZSBpbnRlbmRlZCByZWNpcGllbnQocykuIEFueSByZXZpZXcgb3Ig ZGlzdHJpYnV0aW9uDQpieSBvdGhlcnMgaXMgc3RyaWN0bHkgcHJvaGliaXRlZC4gSWYgeW91IGFy ZSBub3QgdGhlIGludGVuZGVkDQpyZWNpcGllbnQsIHBsZWFzZSBjb250YWN0IHRoZSBzZW5kZXIg YW5kIGRlbGV0ZSBhbGwgY29waWVzLgo=