From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id 7OnGB+n4oGpUADkAWB0awg (envelope-from ) for ; Wed, 09 Sep 2026 02:12:57 -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=QIaycYk5; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 06EEF1E09E; Wed, 09 Sep 2026 02:12:57 -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 ADC081E091 for ; Wed, 09 Sep 2026 02:12:54 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id DC1454BA9002 for ; Wed, 9 Sep 2026 06:12:47 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DC1454BA9002 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=QIaycYk5 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.15]) by sourceware.org (Postfix) with ESMTPS id 858A54BA79B9 for ; Wed, 9 Sep 2026 06:12:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 858A54BA79B9 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 858A54BA79B9 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=1788934337; cv=fail; b=xra8uYz9iVql5EIkp04XK9mvFpHCD9iS+rvwfIaqWx620gE15f4s+CCqF2kDwRBUmrH4NrbGZJLKz5RpRRkLD1E0dq6P4KQeoY7lSNrCgegrzW7SxiOhTE3sphPLXvvZDU96AO7tClv4ZIsDS67qtUbdJ6z68MWaBobyCb/eJeI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1788934337; c=relaxed/simple; bh=5pxH3i7+ZzHbq/8+7sli87L23oyYyLHaBpSItPS3gD4=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=HxhQua/O4L/dcHhCH2uBSE+0tYdXl02IYgjwSLhDGEjHmyPGiEJzSGJ5oh8qbRQyZZG3dzctKQfQLqPge+P/U8BThFe41MTmMvZqiDeukBUqPb8OHZF1VFnXUk1sD6BkV8izVzfk+EejL0tx7L/Xvhrz35ckek8NyHuY6WVYHyI= 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=QIaycYk5 DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 858A54BA79B9 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1788934337; x=1820470337; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version:content-transfer-encoding; bh=5pxH3i7+ZzHbq/8+7sli87L23oyYyLHaBpSItPS3gD4=; b=QIaycYk51SDo00dhnLtJpPvCqH1mNuBGbBJQPOuDIY0pUwKRhYFWOOzD dqgnBDiJpzXGZ6K4CrI6D5zdrLCfemkHfPp/hfkPK2S2cewyeXDHGFLFP dNah3bTMy0EVP4bKwBqFUP7DYevcaxkfYBSDStkPHcZugAGqm0g1zqR8M X/mBrIgJ/IlJhMKQ+5NLwapW/J7GEnL4iXWX0PDgHq7SCrLHdk0UGi4MD bZOWotvTyTAwU9UuL16CSSasIRN6LHabd1WIZadTzqCEeaJTxBAVwxCVO 5YZtXbgahQ0wC1YVGlYegA1uoq7kNPt/JrOof9Dq6JcbZeeqBJcBreiT1 Q==; X-CSE-ConnectionGUID: ibbXaZl3SSCk5dibv7EPiA== X-CSE-MsgGUID: OVHtImZ8SUGR0AuSbwNzgw== X-IronPort-AV: E=McAfee;i="6800,10657,11900"; a="89473248" X-IronPort-AV: E=Sophos;i="6.25,270,1779174000"; d="scan'208";a="89473248" Received: from orviesa003.jf.intel.com ([10.64.159.143]) by fmvoesa109.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Sep 2026 23:12:15 -0700 X-CSE-ConnectionGUID: JIfkDfjUSLKAvyUjASYSTQ== X-CSE-MsgGUID: J21jR9jQQs62HhHQTAplHQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.25,270,1779174000"; d="scan'208";a="274753583" Received: from orsmsx902.amr.corp.intel.com ([10.22.229.24]) by orviesa003.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Sep 2026 23:12:15 -0700 Received: from ORSMSX903.amr.corp.intel.com (10.22.229.25) 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 23:12:14 -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.46 via Frontend Transport; Tue, 8 Sep 2026 23:12:14 -0700 Received: from DM5PR21CU001.outbound.protection.outlook.com (52.101.62.20) 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.46; Tue, 8 Sep 2026 23:12:13 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Wga76PENEJNo8Fxw5Uvj67ErhpqP9wUsQ/ypERs3M/FO9R1zBGRNYib/L0hqEiN50yPKGCZmSy28AiTE8KJu35jfUtb6dQqqyIBaJzwVkoxCcnXAq2vmF24AkXHZ7ugRb4zo2iPdyJc7PYN+oShwWKE836iBZUDqOSnPMZc6QkTMACxyg4+XMiBkt5wYnqN9K/HYSYBMOXnG5octzJx7WNcFz5D7pRu3tvSb01YKMh59GV27Z4lRJ5x19R/KvfX5TKfPvRdxJJalrA6UczjsnL5rn6wDWi59+5wfYQcCC+8oOgVOWyIktjF3d8r9CMabeGVb7sxKjJxhVzQ30oFEqg== 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=q5yjlCnqmA7/U8WPBisIUU7fJHBdpFY6bTfsXLnBiEk=; b=XdelkAuTPgzm35KyfRItrkxwLwqDoGAe2BNRuYXz/wx/69NRliVcOe6uxX70uQBNqkt0SY95nsLyw8ZT4761BqpNbyjjIqm6wWzKgfleQ/T/9C5ACjYP82Q9KpL6lngA6x5Nb39XGK1jLNeHMlkJUmr8O/OXzvOFfw8SaIKQOF05IDUO+BkitBIBCHwVEJkcvwxdj0ONT16eVDoZctRSD9fGMkcq9Uug6by0Cdwf+ldT24tKfR4ZMCzPHGcBHhS7tQhxhQNUEnSHSdrRnravAMqOmHxmkELM/0J6hXK9Akgk3SxVQxovqM+YMu9/MBGP6dylUogTD1/hopWYVOdVig== 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 DM8PR11MB5749.namprd11.prod.outlook.com (2603:10b6:8:10::15) by SA0PR11MB4670.namprd11.prod.outlook.com (2603:10b6:806:9a::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.6; Wed, 9 Sep 2026 06:12:06 +0000 Received: from DM8PR11MB5749.namprd11.prod.outlook.com ([fe80::3085:48ed:687d:e6b6]) by DM8PR11MB5749.namprd11.prod.outlook.com ([fe80::3085:48ed:687d:e6b6%6]) with mapi id 15.21.0406.005; Wed, 9 Sep 2026 06:12:06 +0000 From: "Metzger, Markus T" To: "gdb-patches@sourceware.org" CC: Guinevere Larsen Subject: [PING][PATCH v2] gdb: fix breakpoints on inline functions qualified with source file name Thread-Topic: [PING][PATCH v2] gdb: fix breakpoints on inline functions qualified with source file name Thread-Index: AQHdKwoA/cf2GvVe00eb/tg0HATYv7adk7aAgChaewA= Date: Wed, 9 Sep 2026 06:12:06 +0000 Message-ID: References: <20260813095614.3662164-1-markus.t.metzger@intel.com> <12dc314a-8ab4-4a26-871e-c7c62675f689@redhat.com> In-Reply-To: <12dc314a-8ab4-4a26-871e-c7c62675f689@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: DM8PR11MB5749:EE_|SA0PR11MB4670:EE_ x-ms-office365-filtering-correlation-id: aa0645b4-5d93-4a79-4df8-08df0e394659 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|4143699003|11063799006|5023799004|56012099006|38070700021|10067099003|13003099007|6133799003|22082099003|18002099003; x-microsoft-antispam-message-info: ZiD+jB3vtQa60xSiO/uYx/3dj6E9FbEYVTKhmRtnorC+bRJ9Zb70CgbItpdYm0Uj5Ee5a9he85EDYocDpyf1Bx8O56qTMeFbzXOu8dZRaec6NwZYftP4s7Q+3J6DLihpujtCRdBsguKf7XCkOE4r2lctycnaTOoRebOGS+2cj39o6XR4N4XMPJx+FD0oYY5ODgiNtsdBgy4gObNUwph4UBPVveUUtI6N9Q14BS6jSS4KI76AHE5U0Ihrel0tj/z7j7r7TRq4roK12GwKRlxBcc0fsts0pKe/k74LdOuiG68gZFHBrx+3NMB6yRWz2wgsJhPNMYm/62Jh5AwYgpQbFruPzL3A4hRElKtXi0PieLwW6a8nxOBTvkcQLTQN0ONJPB1MW8lHwFnvTyQYhb4beEHNLlCaNofKn7ZZGpLyBZKW0DdBx5lRmIVIopWaXSYdZ5fDYDauNn1f0DxL5JYcLVViTKij+iUVhYGRhQLuWlcpo5PhErpR7RTqiUmWyMs6Gg5MexEMl0IpXuNNewfqCd08/v2WNey9BxShsVgsw76KOqMIx3jN2C1MeNCvii065e0X3qSYoXf2zebY1yu/b9/bbWs/S/Sii1GL+6eLGhXpnG+m9p5EkOQI3apqm9N0Dv9TJevjA3kK1tUMvs3w1Y18+gaSE0zlj8ZJbugVCDOMcyLLTAp/Ztx8Do3hn7LWArmv5QMYM5r7Pg1fFTy/LgTN3c1OTtNFJGqhQ9+Oesc= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM8PR11MB5749.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(4143699003)(11063799006)(5023799004)(56012099006)(38070700021)(10067099003)(13003099007)(6133799003)(22082099003)(18002099003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VHVtbURtT3FmVVR3OWxxZ3FrYmpsU1lRSHBwSUlVWEd4VklRcXhabHgwUzFZ?= =?utf-8?B?aUtXL0NzMWZjOFZEU2Yvc3J0OGRwdjhCYWx0Y045SWVmYzBDV2xNaW80ZEdj?= =?utf-8?B?T2I0allHbmh1aTVUMnFaR1F4bUp2aWdFRDBLYzBiRDIzdEtvVmRNcWp0UFlo?= =?utf-8?B?ZzNXMDlrcW5YSXBiSm1VZXl1azBKcmgzNE03aFo3eDk2NktHSmRYWTl5b1JX?= =?utf-8?B?aWZRNUJSbmYzRW5hZTVjSmZHTXoySjBCRFVkU24zdWVGZDEzbExENURiNWdj?= =?utf-8?B?Mm5sdGFJZ3AyZDFHMG1sUEJrVGVSZVpLNWZFVDd6TGhIaG5xYVZvRlN4aW5T?= =?utf-8?B?T3FiL0cvREhkb2Z3SUhvRDF2Y0M4RnRmOGZ3MWFiVzVsaU1SaElxS2E2c2pj?= =?utf-8?B?NGlveWhOZnBlSmhMeW9kSHNsVVIyL1RWdWRJZ1ZOUUpOZThodEZKTURKdGJy?= =?utf-8?B?MEpnMVlnRFdubHJ1d1dTMHpCUmk3TnJtd005MUo4dFcwSk02eThqRzlIUWQ5?= =?utf-8?B?QXVIUnhzUlFrSDh6MlBTYm1PU1ZKQ1VqWjc4RmhsSW96QSs0RVU3MDBiNmhT?= =?utf-8?B?OHV6VTMvcEFzbEk3MlRaKzNoMUhDRnNsVHFXV2JIS21uQTVxdkNxNjl4MzA3?= =?utf-8?B?ek5jVXJOOEw4TXlFOXNZWW1WNldCRkJkUUs1T2pnRC93MGloeDd0QzZaR25a?= =?utf-8?B?MDBBTmtEd2U4UTNzeHpTclVzZlI0V1AvSUljZElRTEJ5WnNiQ1lxT2RMK2Vk?= =?utf-8?B?VzBkZk0zVXVEdHVRZzZ5MFhDZ0E0NmVWYlpOeURJSjBvWjB5SGw2VXhSd2lj?= =?utf-8?B?VER6b0ljdTVpZWRtbE5rNkcyQ2NLbk1ZKzlkK09xYnhqbEg4blN2V3M0cHAr?= =?utf-8?B?WTlRQ3ZXVTNndVArZTVxcy9Ib1NoUGY1Q3RoQ3laT3l0c1FYeG1IL01wYkFz?= =?utf-8?B?aW8zSlZQbEhnUGlJQXRFdDBjdnpKSWd1RjM3QlJJLzhETVR1MUVUU1A2bk1M?= =?utf-8?B?UnRHb3hZanNWMHV6UUcyc0t5RW50bEphTkw1ZCtNRVRxV0NnMFFtSlpMS1RQ?= =?utf-8?B?czZSeXc2d0EvT2pQRUNmSjdCV1AxbkxiZDF1ZGl5azdHcDJFblVwRDZ6czJ4?= =?utf-8?B?bklDanFPMDVkZFV3UXpPYy9sRTVWRTFlZmlrRXd0ZDY3d1Nna2lyQVJYNHpL?= =?utf-8?B?VlRxU1NaaFFXSHJ0eDRCekw0S0ozVzRCcjYxeHBubm05TVJmZHBEaFZubng5?= =?utf-8?B?aXJJQXo4WHZmSGk3VDErV0ZuamZURlhmU0c1Z0pHZDdBUGM0aHh5Q2w4OVd4?= =?utf-8?B?Z2FEVFNlOGJUNXdQdVBTZ2Y0UmF2cERSeVN3eEJoNDFRQndIUHd5bk5jZmJK?= =?utf-8?B?YmdlaVFjTzBQZ1ZQZHNMR3hhSm4zZnhSMHBkTHh2S0lpeUx6dUJkc2Y2YTNr?= =?utf-8?B?VjNmZGdSTFRzVk5YNVVqM0NOUlV5a29wZ2x0TnVyMitWLzZoZXlXQ1RaczBC?= =?utf-8?B?RjU5QTlDb3NpMDVBeEhiODZUQngremhtQWhPSGk5UklFT1JNTlhTSjdSYTli?= =?utf-8?B?RnpzdGxFM1RoRDBOVFUyeFFYQkpYaE1heGpxY21lWGN2SkZ0U01DODNNQzY5?= =?utf-8?B?cWRIU3BXMHB6YjBxc3owOExQc2I1Q1M2cjBQT2wzM2N1NEhkZTA5U2pLdDFs?= =?utf-8?B?Uis3WFFYSDRMUDljR1BFOExCa3ovMHRvcUtINGZsYlNSdEQwaDRkTHZBVU03?= =?utf-8?B?dTFMWXZvNG8yQXFRSVJFWGV1QkNqcXlLdWlZUE1nK29lSXdXK1gyQWI3V3lz?= =?utf-8?B?RG9CZEJWT3hMekd6a0NJdVcxN3JpYnMvUTFqSVIyT0VoTHN6VjhJa1BsYlF6?= =?utf-8?B?czBjcDRsYkdGb0NRYWlieDlxcXRjSS85cVdBd1psTlh6NUdyNXpsQjUybHFw?= =?utf-8?B?TWpjdzVJMkJUSUdUdHRyM0NwT3NNVmpOU2hub3FyR1ZSUU41NXFnL1RzMVpy?= =?utf-8?B?dXRhVTgwL0Zld1N2emozdTBZUERPY1JpTmxZSklxY3gvcVZBd1VCQ0swbGsz?= =?utf-8?B?bFg4eTN1cUtkVm5FS3QvTm9qZ0kyd1VlTG9KWWlyMUFEbVI3eDZmaitybWl1?= =?utf-8?B?SlNxWmRrcHJhZHZiVE15Y2lTdmZCQitCbVUvalJKNk1zQ3dEd21UOThYRnYy?= =?utf-8?B?VCtsWlJZR0RPRk1vK010Nk0rUFlXTjlkeVBaUUlpbkpKYnlIV29hSHRBOWtt?= =?utf-8?B?RlZHcExPUU13N0E0MXJRTHJPVnYxUGdvbHBxQ0M4YmJYaldOQklBcStCZkF6?= =?utf-8?B?VDlTOER1eS9GREYzRlA1S0dSL3FkODMwcFJTOS9QaEwyZ3hqbWZIUT09?= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-Exchange-RoutingPolicyChecked: REu2+WsfNnXMNRBzARCFyUNvrgDYZUkPtJUHyLysGqoqctd/q1FRyoj1AVrRUnpZiXbCdI2Bge5mO/cNEtvPQjGqswpJUzAM+8k7ATMhv4YchKyG0fmaBVCrg9qDmv0W1W63uz8LeuWYS1fbzAruAD2D9qWZeC30q2oTHLs3Uk2fZuDhCQRPK2Y98pYYxx/yK9HO+mG1+ujImxe8IifWFfSO+boqpY+Rs0jgJFQevcKVX4H3fNhBbT1xcwb7+NdtxQEtkxZG6f2jhOXV0OkUSFic6Enh9WOSvSmnyIiotD/luvpBN5k6X3DOPLERYD10QLutNpKvUFy+3TT287NfsA== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8PR11MB5749.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa0645b4-5d93-4a79-4df8-08df0e394659 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2026 06:12:06.5896 (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: uVBfcMO0EmZLH022Dr3HMlGOHqgKLQIbuTbmhrTnh3ov/ek85EDqGKzCSF2VZbwinWjMkbFyiQMVR4bZLD3/ivPLnHfm7dIlRQ/lnsDGvPI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR11MB4670 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 VGhhbmtzLCBHdWluZXZlcmUuDQoNCktpbmRseSBwaW5naW5nIGZvciBhbiBhcHByb3ZhbCByZXZp ZXcuDQoNCk1hcmt1cy4NCg0KPi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+RnJvbTogR3Vp bmV2ZXJlIExhcnNlbiA8Z3VpbmV2ZXJlQHJlZGhhdC5jb20+DQo+U2VudDogRnJpZGF5LCBBdWd1 c3QgMTQsIDIwMjYgMzo1OCBQTQ0KPlRvOiBNZXR6Z2VyLCBNYXJrdXMgVCA8bWFya3VzLnQubWV0 emdlckBpbnRlbC5jb20+OyBnZGItDQo+cGF0Y2hlc0Bzb3VyY2V3YXJlLm9yZw0KPlN1YmplY3Q6 IFJlOiBbUEFUQ0ggdjJdIGdkYjogZml4IGJyZWFrcG9pbnRzIG9uIGlubGluZSBmdW5jdGlvbnMg cXVhbGlmaWVkIHdpdGgNCj5zb3VyY2UgZmlsZSBuYW1lDQo+DQo+T24gOC8xMy8yNiA2OjU2IEFN LCBNYXJrdXMgTWV0emdlciB3cm90ZToNCj4+IE9uICdicmVhayBmb28uW2hjXTpmb28nLCBHREIg b25seSBzZWFyY2hlcyB0aGUgc3ltYm9scyBvZiBmb28uW2hjXSBvbiBmaWxlDQo+PiBzY29wZS4g IElmIGZvbyBoYXMgYmVlbiBpbmxpbmVkLCBHREIgd291bGQgbm90IGZpbmQgaXQuDQo+Pg0KPj4g T24gJ2JyZWFrIGZvbycsIGhvd2V2ZXIsIEdEQiBhbHNvIHNlYXJjaGVzIGxvY2FsIGJsb2NrcyBm b3IgaW5saW5lDQo+PiBmdW5jdGlvbiBzeW1ib2xzIGluIGl0ZXJhdGVfb3Zlcl9hbGxfbWF0Y2hp bmdfc3ltdGFicygpLCB3aGljaCBpcyBjYWxsZWQNCj4+IGluZGlyZWN0bHkgZnJvbSBhZGRfbWF0 Y2hpbmdfc3ltYm9sc190b19pbmZvKCkuDQo+Pg0KPj4gQWRkIHRoYXQgZnVuY3Rpb25hbGl0eSB0 byBhZGRfbWF0Y2hpbmdfc3ltYm9sc190b19pbmZvKCkgaW4gY2FzZSBpdCBpcw0KPj4gY2FsbGVk IHdpdGggYSBsaXN0IG9mIGZpbGUgc3ltdGFicyB0byBzZWFyY2guDQo+Pg0KPj4gQWxzbyBhZGQg aXRlcmF0ZV9vdmVyX2xvY2FsX2Jsb2NrcygpIGFzIGhlbHBlciBmdW5jdGlvbiBzaW1pbGFyIHRv DQo+PiBpdGVyYXRlX292ZXJfZmlsZV9ibG9ja3MoKS4NCj4+IC0tLQ0KPg0KPkhpIE1hcmt1cyEN Cj4NCj5JIGxvb2tlZCBvdmVyIHRoaXMgYW5kIGFsbCBteSBxdWVzdGlvbnMgaGF2ZSBiZWVuIHNv bHZlZC4NCj4NCj5SZXZpZXdlZC1CeTogR3VpbmV2ZXJlIExhcnNlbiA8Z3VpbmV2ZXJlQHJlZGhh dC5jb20+DQo+DQo+LS0NCj5DaGVlcnMsDQo+R3VpbmV2ZXJlIExhcnNlbg0KPml0L2l0cw0KPnNo ZS9oZXIgKGRlcHJlY2F0ZWQpDQo+DQo+PiAgIGdkYi9saW5lc3BlYy5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCA1MSArKysrKysrKysrKysrKysrLS0tLS0tLS0NCj4+ICAgZ2RiL3Rlc3Rz dWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmMgICB8IDMzICsrKysrKysrKysrKysrKw0KPj4g ICBnZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2JyZWFrLWlubGluZTIuZXhwIHwgMzAgKysrKysrKysr KysrKysNCj4+ICAgZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmggICB8IDI4 ICsrKysrKysrKysrKysNCj4+ICAgNCBmaWxlcyBjaGFuZ2VkLCAxMjYgaW5zZXJ0aW9ucygrKSwg MTYgZGVsZXRpb25zKC0pDQo+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBnZGIvdGVzdHN1aXRlL2dk Yi5iYXNlL2JyZWFrLWlubGluZTIuYw0KPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgZ2RiL3Rlc3Rz dWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmV4cA0KPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQg Z2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmgNCj4+DQo+PiBkaWZmIC0tZ2l0 IGEvZ2RiL2xpbmVzcGVjLmMgYi9nZGIvbGluZXNwZWMuYw0KPj4gaW5kZXggYjY1MDViYTI4M2Qu Ljk5NTk2OTBiNTdiIDEwMDY0NA0KPj4gLS0tIGEvZ2RiL2xpbmVzcGVjLmMNCj4+ICsrKyBiL2dk Yi9saW5lc3BlYy5jDQo+PiBAQCAtMzYzLDYgKzM2MywxMSBAQCBzdGF0aWMgdm9pZCBpdGVyYXRl X292ZXJfZmlsZV9ibG9ja3MNCj4+ICAgICAgZG9tYWluX3NlYXJjaF9mbGFncyBkb21haW4sDQo+ PiAgICAgIGZvcl9lYWNoX3N5bWJvbF9jYWxsYmFja19mdHlwZSBjYWxsYmFjayk7DQo+Pg0KPj4g K3N0YXRpYyB2b2lkIGl0ZXJhdGVfb3Zlcl9sb2NhbF9ibG9ja3MNCj4+ICsgIChjb25zdCBzeW10 YWIgKnN5bXRhYiwgY29uc3QgbGFuZ3VhZ2VfZGVmbiAqbGFuZ3VhZ2UsDQo+PiArICAgY29uc3Qg bG9va3VwX25hbWVfaW5mbyAmbmFtZSwgZG9tYWluX3NlYXJjaF9mbGFncyBkb21haW4sDQo+PiAr ICAgZm9yX2VhY2hfc3ltYm9sX2NhbGxiYWNrX2Z0eXBlIGNhbGxiYWNrKTsNCj4+ICsNCj4+ICAg c3RhdGljIHZvaWQgaW5pdGlhbGl6ZV9kZWZhdWx0cyAoc3RydWN0IHN5bXRhYiAqKmRlZmF1bHRf c3ltdGFiLA0KPj4gICAJCQkJIGludCAqZGVmYXVsdF9saW5lKTsNCj4+DQo+PiBAQCAtMTE0Nywy MyArMTE1MiwxNCBAQCBpdGVyYXRlX292ZXJfYWxsX21hdGNoaW5nX3N5bXRhYnMNCj4+DQo+PiAg IAkgICAgICBpZiAoaW5jbHVkZV9pbmxpbmUpDQo+PiAgIAkJew0KPj4gLQkJICBjb25zdCBzdHJ1 Y3QgYmxvY2sgKmJsb2NrOw0KPj4gLQkJICBpbnQgaTsNCj4+IC0JCSAgY29uc3QgYmxvY2t2ZWN0 b3IgKmJ2ID0gc3ltdGFiLT5jb21wdW5pdCAoKS5ibG9ja3ZlY3RvciAoKTsNCj4+IC0NCj4+IC0J CSAgZm9yIChpID0gRklSU1RfTE9DQUxfQkxPQ0s7IGkgPCBidi0+bnVtX2Jsb2NrcyAoKTsgaSsr KQ0KPj4gKwkJICBhdXRvIGNhbGxiYWNrX2lubGluZWQgPSBbJl0gKGJsb2NrX3N5bWJvbCAqYnN5 bSkNCj4+ICAgCQkgICAgew0KPj4gLQkJICAgICAgYmxvY2sgPSBidi0+YmxvY2sgKGkpOw0KPj4g LQkJICAgICAgc3RhdGUtPmxhbmd1YWdlLT5mb3JfZWFjaF9zeW1ib2wNCj4+IC0JCQkoYmxvY2ss IGxvb2t1cF9uYW1lLCBkb21haW4sDQo+PiAtCQkJIFsmXSAoYmxvY2tfc3ltYm9sICpic3ltKQ0K Pj4gLQkJCSB7DQo+PiAtCQkJICAgLyogUmVzdHJpY3QgY2FsbHMgdG8gQ0FMTEJBQ0sgdG8gc3lt Ym9scw0KPj4gLQkJCSAgICAgIHJlcHJlc2VudGluZyBpbmxpbmUgc3ltYm9scyBvbmx5LiAgKi8N Cj4+IC0JCQkgICBpZiAoYnN5bS0+c3ltYm9sLT5pc19pbmxpbmVkICgpKQ0KPj4gLQkJCSAgICAg Y2FsbGJhY2sgKGJzeW0pOw0KPj4gLQkJCSB9KTsNCj4+IC0JCSAgICB9DQo+PiArCQkgICAgICBp ZiAoYnN5bS0+c3ltYm9sLT5pc19pbmxpbmVkICgpKQ0KPj4gKwkJCWNhbGxiYWNrIChic3ltKTsN Cj4+ICsJCSAgICB9Ow0KPj4gKwkJICAgIGl0ZXJhdGVfb3Zlcl9sb2NhbF9ibG9ja3MgKHN5bXRh Yiwgc3RhdGUtPmxhbmd1YWdlLA0KPj4gKwkJCQkJICAgICAgIGxvb2t1cF9uYW1lLCBkb21haW4s DQo+PiArCQkJCQkgICAgICAgY2FsbGJhY2tfaW5saW5lZCk7DQo+PiAgIAkJfQ0KPj4NCj4+ICAg CSAgICAgIHJldHVybiBpdGVyYXRpb25fc3RhdHVzOjprZWVwX2dvaW5nOw0KPj4gQEAgLTEyMDMs NiArMTE5OSwyMiBAQCBpdGVyYXRlX292ZXJfZmlsZV9ibG9ja3MNCj4+ICAgICAgIGN1cnJlbnRf bGFuZ3VhZ2UtPmZvcl9lYWNoX3N5bWJvbCAoYmxvY2ssIG5hbWUsIGRvbWFpbiwgY2FsbGJhY2sp Ow0KPj4gICB9DQo+Pg0KPj4gKy8qIEl0ZXJhdGUgb3ZlciBsb2NhbCBibG9ja3MuICAqLw0KPj4g Kw0KPj4gK3N0YXRpYyB2b2lkDQo+PiAraXRlcmF0ZV9vdmVyX2xvY2FsX2Jsb2Nrcw0KPj4gKyAg KGNvbnN0IHN5bXRhYiAqc3ltdGFiLCBjb25zdCBsYW5ndWFnZV9kZWZuICpsYW5ndWFnZSwNCj4+ ICsgICBjb25zdCBsb29rdXBfbmFtZV9pbmZvICZuYW1lLCBkb21haW5fc2VhcmNoX2ZsYWdzIGRv bWFpbiwNCj4+ICsgICBmb3JfZWFjaF9zeW1ib2xfY2FsbGJhY2tfZnR5cGUgY2FsbGJhY2spDQo+ PiArew0KPj4gKyAgY29uc3QgYmxvY2t2ZWN0b3IgKmJ2ID0gc3ltdGFiLT5jb21wdW5pdCAoKS5i bG9ja3ZlY3RvciAoKTsNCj4+ICsgIGZvciAoaW50IGkgPSBGSVJTVF9MT0NBTF9CTE9DSzsgaSA8 IGJ2LT5udW1fYmxvY2tzICgpOyBpKyspDQo+PiArICAgIHsNCj4+ICsgICAgICBjb25zdCBzdHJ1 Y3QgYmxvY2sgKmJsb2NrID0gYnYtPmJsb2NrIChpKTsNCj4+ICsgICAgICBsYW5ndWFnZS0+Zm9y X2VhY2hfc3ltYm9sIChibG9jaywgbmFtZSwgZG9tYWluLCBjYWxsYmFjayk7DQo+PiArICAgIH0N Cj4+ICt9DQo+PiArDQo+PiAgIC8qIEEgaGVscGVyIGZvciBmaW5kX21ldGhvZC4gIFRoaXMgZmlu ZHMgYWxsIG1ldGhvZHMgaW4gdHlwZSBUIG9mDQo+PiAgICAgIGxhbmd1YWdlIFRfTEFORyB3aGlj aCBtYXRjaCBOQU1FLiAgSXQgYWRkcyBtYXRjaGluZyBzeW1ib2wgbmFtZXMgdG8NCj4+ICAgICAg UkVTVUxUX05BTUVTLCBhbmQgYWRkcyBUJ3MgZGlyZWN0IHN1cGVyY2xhc3NlcyB0byBTVVBFUkNM QVNTRVMuICAqLw0KPj4gQEAgLTQyNTMsNiArNDI2NSwxMSBAQCBhZGRfbWF0Y2hpbmdfc3ltYm9s c190b19pbmZvIChjb25zdCBjaGFyDQo+Km5hbWUsDQo+PiAgICAgICB7DQo+PiAgICAgICAgIGlu Zm8tPmFkZF9zeW1ib2wgKGJzeW0pOw0KPj4gICAgICAgfTsNCj4+ICsgIGF1dG8gYWRkX2lubGlu ZWRfc3ltYm9sID0gWyZdIChibG9ja19zeW1ib2wgKmJzeW0pDQo+PiArICAgIHsNCj4+ICsgICAg ICBpZiAoYnN5bS0+c3ltYm9sLT5pc19pbmxpbmVkICgpKQ0KPj4gKwlpbmZvLT5hZGRfc3ltYm9s IChic3ltKTsNCj4+ICsgICAgfTsNCj4+DQo+PiAgICAgZm9yIChjb25zdCBhdXRvICZlbHQgOiBp bmZvLT5maWxlX3N5bXRhYnMpDQo+PiAgICAgICB7DQo+PiBAQCAtNDI3NSw2ICs0MjkyLDggQEAg YWRkX21hdGNoaW5nX3N5bWJvbHNfdG9faW5mbyAoY29uc3QgY2hhcg0KPipuYW1lLA0KPj4gICAJ ICBnZGJfYXNzZXJ0ICghZWx0X3BzcGFjZS0+ZXhlY3V0aW5nX3N0YXJ0dXApOw0KPj4gICAJICBz ZXRfY3VycmVudF9wcm9ncmFtX3NwYWNlIChlbHRfcHNwYWNlKTsNCj4+ICAgCSAgaXRlcmF0ZV9v dmVyX2ZpbGVfYmxvY2tzIChlbHQsIGxvb2t1cF9uYW1lLCBTRUFSQ0hfVkZULA0KPmFkZF9zeW1i b2wpOw0KPj4gKwkgIGl0ZXJhdGVfb3Zlcl9sb2NhbF9ibG9ja3MgKGVsdCwgaW5mby0+c3RhdGUt Pmxhbmd1YWdlLCBsb29rdXBfbmFtZSwNCj4+ICsJCQkJICAgICBTRUFSQ0hfVkZULCBhZGRfaW5s aW5lZF9zeW1ib2wpOw0KPj4NCj4+ICAgCSAgLyogSWYgbm8gbmV3IHN5bWJvbHMgd2VyZSBmb3Vu ZCBpbiB0aGlzIGl0ZXJhdGlvbiBhbmQgdGhpcyBzeW10YWINCj4+ICAgCSAgICAgaXMgaW4gYXNz ZW1ibGVyLCB3ZSBtaWdodCBhY3R1YWxseSBiZSBsb29raW5nIGZvciBhIGxhYmVsIGZvcg0KPj4g ZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvYnJlYWstaW5saW5lMi5jDQo+Yi9n ZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2JyZWFrLWlubGluZTIuYw0KPj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4+IGluZGV4IDAwMDAwMDAwMDAwLi43OTdhYjA3ZGEzMQ0KPj4gLS0tIC9kZXYvbnVs bA0KPj4gKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmMNCj4+IEBA IC0wLDAgKzEsMzMgQEANCj4+ICsvKiBUaGlzIHRlc3RjYXNlIGlzIHBhcnQgb2YgR0RCLCB0aGUg R05VIGRlYnVnZ2VyLg0KPj4gKw0KPj4gKyAgIENvcHlyaWdodCAyMDI2IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLg0KPj4gKw0KPj4gKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3 YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQo+PiArICAgaXQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNo ZWQgYnkNCj4+ICsgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvcg0KPj4gKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uDQo+PiArDQo+PiArICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQo+PiArICAgYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCj4+ICsgICBNRVJD SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl DQo+PiArICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCj4+ ICsNCj4+ICsgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZQ0KPj4gKyAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYg bm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8NCj4+ICsNCj4+ICsj aW5jbHVkZSAiYnJlYWstaW5saW5lMi5oIg0KPj4gKw0KPj4gK3N0YXRpYyBpbnQNCj4+ICt0ZXN0 ICh2b2lkKQ0KPj4gK3sNCj4+ICsgIGludCBmID0gZm9vICgpOw0KPj4gKyAgaW50IGIgPSBiYXIg KCk7DQo+PiArICByZXR1cm4gZiArIGI7DQo+PiArfQ0KPj4gKw0KPj4gK2ludA0KPj4gK21haW4g KHZvaWQpDQo+PiArew0KPj4gKyAvKiBEb24ndCBtYWtlIGJyZWFrcG9pbnRzIG9uIGZvbyBhbmQg bWFpbiBiaW5kIHRvIHRoZSBzYW1lIGFkZHJlc3MuICovDQo+PiArICByZXR1cm4gdGVzdCAoKTsN Cj4+ICt9DQo+PiBkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1pbmxp bmUyLmV4cA0KPmIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmV4cA0KPj4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4+IGluZGV4IDAwMDAwMDAwMDAwLi5iMTBjZGVjZTExOA0K Pj4gLS0tIC9kZXYvbnVsbA0KPj4gKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1p bmxpbmUyLmV4cA0KPj4gQEAgLTAsMCArMSwzMCBAQA0KPj4gKyMgICBDb3B5cmlnaHQgKEMpIDIw MjYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuDQo+PiArIw0KPj4gKyMgVGhpcyBwcm9n cmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2Rp ZnkNCj4+ICsjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo+PiArIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u OyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcg0KPj4gKyMgKGF0IHlvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCj4+ICsjDQo+PiArIyBUaGlzIHByb2dyYW0gaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCj4+ICsjIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m DQo+PiArIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP U0UuICBTZWUgdGhlDQo+PiArIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk ZXRhaWxzLg0KPj4gKyMNCj4+ICsjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQo+PiArIyBhbG9uZyB3aXRoIHRoaXMgcHJv Z3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4NCj4+ICsN Cj4+ICtzdGFuZGFyZF90ZXN0ZmlsZQ0KPj4gKw0KPj4gK2lmIHtbcHJlcGFyZV9mb3JfdGVzdGlu ZyAiZmFpbGVkIHRvIHByZXBhcmUiICIkdGVzdGZpbGUiICIkc3JjZmlsZSJdfSB7DQo+PiArICAg IHJldHVybg0KPj4gK30NCj4+ICsNCj4+ICtpZiB7IVtydW50b19tYWluXX0gew0KPj4gKyAgICBy ZXR1cm4NCj4+ICt9DQo+PiArDQo+PiArZ2RiX2JyZWFrcG9pbnQgIiR0ZXN0ZmlsZS5oOmZvbyIg LW1lc3NhZ2UgLWFsbG93LXBlbmRpbmcNCj4+ICtnZGJfYnJlYWtwb2ludCBiYXIgLW1lc3NhZ2Ug LWFsbG93LXBlbmRpbmcNCj4+ICsNCj4+ICtnZGJfY29udGludWVfdG9fYnJlYWtwb2ludCAiZm9v IiAiLipmb28uZW50cnkuKiINCj4+ICtnZGJfY29udGludWVfdG9fYnJlYWtwb2ludCAiYmFyIiAi LipiYXIuZW50cnkuKiINCj4+IGRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2Jy ZWFrLWlubGluZTIuaA0KPmIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9icmVhay1pbmxpbmUyLmgN Cj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+PiBpbmRleCAwMDAwMDAwMDAwMC4uZTYwZDA1NGU4 NWINCj4+IC0tLSAvZGV2L251bGwNCj4+ICsrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvYnJl YWstaW5saW5lMi5oDQo+PiBAQCAtMCwwICsxLDI4IEBADQo+PiArLyogVGhpcyB0ZXN0Y2FzZSBp cyBwYXJ0IG9mIEdEQiwgdGhlIEdOVSBkZWJ1Z2dlci4NCj4+ICsNCj4+ICsgICBDb3B5cmlnaHQg MjAyNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCj4+ICsNCj4+ICsgICBUaGlzIHBy b2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1v ZGlmeQ0KPj4gKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo+PiArICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3INCj4+ICsgICAoYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KPj4gKw0KPj4gKyAgIFRoaXMgcHJvZ3JhbSBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KPj4gKyAg IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mDQo+PiArICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFLiAgU2VlIHRoZQ0KPj4gKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv ciBtb3JlIGRldGFpbHMuDQo+PiArDQo+PiArICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg Y29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCj4+ICsgICBhbG9uZyB3aXRo IHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMv Pi4gICovDQo+PiArDQo+PiArc3RhdGljIGlubGluZSBpbnQgX19hdHRyaWJ1dGVfXygoYWx3YXlz X2lubGluZSkpDQo+PiArZm9vICh2b2lkKSAvKiBmb28uZW50cnkgKi8NCj4+ICt7IC8qIGZvby5l bnRyeSAqLw0KPj4gKyAgcmV0dXJuIDQyOyAvKiBmb28uZW50cnkgKi8NCj4+ICt9DQo+PiArDQo+ PiArc3RhdGljIGlubGluZSBpbnQgX19hdHRyaWJ1dGVfXygoYWx3YXlzX2lubGluZSkpDQo+PiAr YmFyICh2b2lkKSAvKiBiYXIuZW50cnkgKi8NCj4+ICt7IC8qIGJhci5lbnRyeSAqLw0KPj4gKyAg cmV0dXJuIDQyOyAvKiBiYXIuZW50cnkgKi8NCj4+ICt9DQoNCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18NCkludGVsIERldXRzY2hsYW5kIEdtYkggDQoNClJlZ2lzdGVy ZWQgQWRkcmVzczogRG9ybmFjaGVyIFN0cmFzc2UgMSwgODU2MjIgRmVsZGtpcmNoZW4sIEdlcm1h bnkgDQoNClRlbDogKzQ5ICg4OSkgOTkxNDMtMCANCg0Kd3d3LmludGVsLmRlIA0KDQpNYW5hZ2lu ZyBEaXJlY3RvcnM6IENhbmRpY2UgTW9vcmUsIEplZmZyZXkgU2NobmVpZGVybWFuLCBSYW1hY2hh bmRyYW4gU2l0YXJhbWFuDQoNCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29yeSBCb2FyZDog U29uamEgUGllcmVyDQoNClJlZ2lzdGVyZWQgU2VhdDogTXVuaWNoIENvbW1lcmNpYWwgUmVnaXN0 ZXIgQjogQW10c2dlcmljaHQgTXVuaWNoIEhSQiAxODY5MjgNCg0KVGhpcyBlLW1haWwgYW5kIGFu eSBhdHRhY2htZW50cyBtYXkgY29udGFpbiBjb25maWRlbnRpYWwgbWF0ZXJpYWwgZm9yDQp0aGUg c29sZSB1c2Ugb2YgdGhlIGludGVuZGVkIHJlY2lwaWVudChzKS4gQW55IHJldmlldyBvciBkaXN0 cmlidXRpb24NCmJ5IG90aGVycyBpcyBzdHJpY3RseSBwcm9oaWJpdGVkLiBJZiB5b3UgYXJlIG5v dCB0aGUgaW50ZW5kZWQNCnJlY2lwaWVudCwgcGxlYXNlIGNvbnRhY3QgdGhlIHNlbmRlciBhbmQg ZGVsZXRlIGFsbCBjb3BpZXMuCg==