From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web11.19007.1685038944790998533 for ; Thu, 25 May 2023 11:22:26 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=FXUP+yCN; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685038944; x=1716574944; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=rxynv8f51cSR3XNhnhbQQNL+nmcvQ6Tq49iRmOI0h18=; b=FXUP+yCNFKv24MDd6EuRri5ODPbf2hkjFaKza3Te1jdqtrCBGnnP4Gmm g2cKhaZsYHSeQ0aQ1s3FOWp5jnniqCcq6caOEAWIOtvzuyWwYst2sTnzK GwclFCzEYj2wOJcVCcLJACgATlbKXy80AhlQq9mLw2Omszqd927LpHgMw Oy/VwLXRdqjrFa3HWpxpju3R+rRE3kJ/kbMSX6ly9h/Gl+6L757A6JFUR Mcx5B2lDD4NBTLkxRu+Vw/5oVP1WKcwg0oDcXktzTlvmnVMk2M+b2B+H2 PiaKu6TMaSPfT9LclFHJnNEfLNIDAKcSkCgmiahKL6WUPpFuDuFK63q6w g==; X-IronPort-AV: E=McAfee;i="6600,9927,10721"; a="334327435" X-IronPort-AV: E=Sophos;i="6.00,191,1681196400"; d="scan'208";a="334327435" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 May 2023 11:22:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10721"; a="794754752" X-IronPort-AV: E=Sophos;i="6.00,191,1681196400"; d="scan'208";a="794754752" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by FMSMGA003.fm.intel.com with ESMTP; 25 May 2023 11:22:24 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 25 May 2023 11:22:23 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Thu, 25 May 2023 11:22:23 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.176) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Thu, 25 May 2023 11:22:23 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZoMNFxeqDacqJ3qvaaZhHIr/0Bn8+YlucTS71PEkbzg4K020uu61RXmbpGjMDPtpzpyuXYkOZ0omwvNe78xfNtXEMIBLvi9B9pCZHD7Rsh8fupz4dOZiyv6i31+z/ajZbk5VPldTP84gs7IV1F9PMqKTsqHnKPhUEjK2IbUSt+qM5C7x0lMZmZVzepJKRXyUrdypoq31u0DzA1Sz1gJV4EBHbD7aNTWJwVNeErCx4EfBYjNLtOfzfLrHuICWbRJkMDtOXHCM2x8KYuSVaPqHlPeIX6EvoD9HA7fdLCKFwMDpp4UsHgV6Bcg5YLbjqHb0y0QnnZaAALEvQFPXHFekUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=rxynv8f51cSR3XNhnhbQQNL+nmcvQ6Tq49iRmOI0h18=; b=ftLbeobMvMq78o9ro1L04TNFEJlU/moMkiYCV0UuT+wGGLwTe1FZWCIFXweatx3mXl8DvdmM+qpyWMB/pqWjHxUog9lD8gPysBV5pfi0ko5ROkFsvIHenkeNPJKDBdr9WheIBTiiD/69goce/3S5BQGZbPMtkKssZWFc3lh5KOzwS9IYiBdM3SQgeDxLOUAY2GedxQ6t45cg3r8Y8rxQDDMHC9LYIQE/wFCGfZKHGq8CiDMsuD09UjiyMvJt+7/8r8bhodj0bqd0htv0PlFrMj4K7pHsQIsr116q5KkoSklwSS/gfc8DAp/CA0gVIFi7hfU1eQdnikWjjaVMwkDdOw== 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 CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by PH8PR11MB6928.namprd11.prod.outlook.com (2603:10b6:510:224::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.15; Thu, 25 May 2023 18:22:20 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::4752:67f2:9956:b277]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::4752:67f2:9956:b277%4]) with mapi id 15.20.6433.016; Thu, 25 May 2023 18:22:19 +0000 From: "Michael D Kinney" To: Pedro Falcato , Oliver Smith-Denny CC: "devel@edk2.groups.io" , "Pop, Aaron" , "Kinney, Michael D" Subject: Re: [edk2-devel] GoogleTest Compatibility with MdePkg's IndustyStandard header files Thread-Topic: [edk2-devel] GoogleTest Compatibility with MdePkg's IndustyStandard header files Thread-Index: AdmNCFzONb90exfORZ2x+UzGvNjL+wBauAkQAAHr8iAAArd2kAABKFGAAAUiotAAE59tgAAPMonQAAGPNoAAAJtrAAAAlhBw Date: Thu, 25 May 2023 18:22:19 +0000 Message-ID: References: In-Reply-To: Accept-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: CO1PR11MB4929:EE_|PH8PR11MB6928:EE_ x-ms-office365-filtering-correlation-id: 7bd8c968-2293-42a3-eb0e-08db5d4cfa2c x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qjT5rH76QQUtMCdcGUoV75xkWluTYAtZgo+qysQv/NTlf+9lZ0/bdDq/8MgafFnQmqvewM9P+7N7CHOV6U81olqiU8f4Z8NrnZ68If2i3Ia+2e7NcLZEfJ8YJ0sErnZwcCGoDYCAQcbaFrrPcgYUDaUonSWDsl0gtM0BWDFe4pTAZHJPwVSfzmyP4Zf16IBhxaGFe0Je/4ewU11o6xLZhkCm03P9voZKMo2xRWQXZ7sB+Kn4uQyu3wWSIIXRBVIFAut/Lb+pmMUbIBdVLlRdfxmylOLF3XwRGeyLTfdXz11Mv7PQWtQD/TWNB126mQMpwdIY8oZdNW6hsuAj8smq5ZZR0x5407QuF7hqxdeWIN4X3twWsvvxZSbVQytzGEcwSX/q3/aYWYpRmMpKAMp6V4x6unJMo5UDDeFhN9Rb148MxV3X6Rh6iEN2mpvzvdDPpzRKt37tT7akqpWMmauKax+RUXwThEaRYBPtdZRLWW4sC5c3oIVXep56QhC4C/lRN2ScPCjIg56oGph+AQGhH4FFKeuAJ69Se8yU8z8tK8n5NLBKqCIvmqT7jT1taGHUOOBxmim4qhcbxghxz79H7r8ax+WkGAZlcGZUxaXOXoOOY6P62jpiKTEUrTVJu27Z x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(39860400002)(346002)(366004)(396003)(376002)(451199021)(110136005)(54906003)(66556008)(64756008)(66946007)(66446008)(107886003)(66476007)(76116006)(4326008)(316002)(71200400001)(7696005)(478600001)(41300700001)(33656002)(8676002)(122000001)(8936002)(52536014)(82960400001)(5660300002)(38100700002)(38070700005)(86362001)(83380400001)(53546011)(26005)(186003)(2906002)(6506007)(9686003)(55016003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WjlMV0l5MDV0ZW9NMTdWVHRZN2E2NkgvcENLdTdZWGdLcEZtblE3dlN6M2o5?= =?utf-8?B?b3JRTFpOT3F5cmJ5bDJCQklMMHk4WWgrd1MwQ0dvcGVLVU8zN2x3SlZtZFRU?= =?utf-8?B?K0ZFY0ZaNnJrRjlDcERjcllRN1Mxc2JoUHpLbnh3V01hVHVaVW10R1FCL2h6?= =?utf-8?B?Q0tiZEp1MDB3QXVaZS9MaXVNTTBPcGVyc1hPN1VIOVUydjlMZ3Y3UmRITFFD?= =?utf-8?B?MjNMS05sUUVFS1Y0OUI1clhCbUhMcmwwdHRTT0RKMUU5RThjT0RQVlFlTGow?= =?utf-8?B?RGpPNExGSk9Qa2ZhSkxuSWxCYzZQK0NNTWFMdGZCOEI5S01sT0t2cTZ5NllH?= =?utf-8?B?V0JqQ0t4SGoyUVpBZU1kaGQ2dkM0bEF1QlVJbFJaVzJiUEhzN2lxYmMwaG5G?= =?utf-8?B?TEVmOHBNb0t0TktSWHpWaURLRlBvQmpKVW9TcGF0aDBTaVpUcVRjK2JMMFBw?= =?utf-8?B?ZW0ybk8yWjVKRkdSd3dGT3NnbXdhZ2dBbVdJQlNBNEEvemFkUFBpNDJPWjY0?= =?utf-8?B?WmtUUmQ2R2EzT3Y1VW1jcERJUVB3M3M4SGR3cnhIN1o1cXhpRVBRMlBLaFNB?= =?utf-8?B?VjNmQWZGMWlWQ0REYWVzZEh2d2lMQTNsTS9CRUd4YWZhZ01PYmh4aGRzOHFE?= =?utf-8?B?SUpCakYwZCs1T1NpOXNqUExna0JrZHdJMS9QNFp6UytlTCsyc3VaOGZnQU5T?= =?utf-8?B?YnQ0dzYvTVM5dWR4eFFzMjRiRHVGTkkwS3JCUHpYaVQxb3ZPWjNjMXJuc3Rv?= =?utf-8?B?V0pGbHZOQ2tYMEZ2WkZaQWpZR09sU1MvUFo1UjRXcUh1SUhEdFdNN3NyaDBK?= =?utf-8?B?Z2RzSHNWUGxPQ0FXbEorTVNOQ3EvR1J2ZmhqUFVzYitBZVY1MkxTN0hOZXQ5?= =?utf-8?B?RkZ6MFhUN2pVQW9sZXNybjZJNGt6Z3dkOGZCWXhiRXFPSlBOcHpheWF5c3Vt?= =?utf-8?B?d3dSM1VDNEpuK0Y5VWQydUs5QXdmK3BmMmlMa204UUtRUkxlVEw1akR2WlY4?= =?utf-8?B?alhabzg3T3NlQTNGb1NJQURFdzRmeDNuZFVNVDMzcXlObCtHQlhwUXRoanA0?= =?utf-8?B?aEJpR1ZMaW5XNmI1bGxvc0hjUDFKS3lNVGsxMkdqdkVGNUlrSW5xVll5WElM?= =?utf-8?B?WmRPNWtKYmRsWFlLL2NKNmsrTG8yaFdONDBvL3U1bU9VNWk4SDk0OHcyVTc1?= =?utf-8?B?emNBZmF6anIvZTVkODNXTEkrV0h4Yk5rS3FybTd5L2RZSi9qZGNRRjNHMGZs?= =?utf-8?B?cTVXZSs0STBVc2g0bGd1aCsrRmNVSlBoUk05dlN2ZjBUQVJmWE1EYkUxb0Z2?= =?utf-8?B?SnFoRmt1by9IRGx2S0hNUitmcGg2aHY5MWl3UXdSNGJzY0dkWUNINFVPNDhG?= =?utf-8?B?NlBiTTZJT0ZudHp0RldqeGRNMTZTT25leFZiMlRLOWV5T1dGRWFJZE44TFNm?= =?utf-8?B?cnY3S1cvVGE5blNmMGVUU2hrRHltTlVkcnVWeFc3Um1sTmo4Q3Uyamt6eG9v?= =?utf-8?B?RUIvdTAyT1lEVTVoWmxVRkN5Wi82c2RIWlNWU1dORWdobmVtYVlmVDZDWjR4?= =?utf-8?B?RGg5RHg1Ulk4UnVqNzJWUC94NVh4aEw3dXBDV1J3cHFtTHJJQmxQcVBBVGI0?= =?utf-8?B?NGRaVlZKZ1Z3U2tVUW5kM01haVRJZkw2VDFIdzRvQVNpYmNKRExqUkF3SUZn?= =?utf-8?B?bzduNXlmdTJuQVVsRWVsVjhUZ2RONmc4ZHpQV25JbmxVdkYwYXlPOW1GNWRa?= =?utf-8?B?Z29CUnZwQ1NVejQzbXdOVGpjbFVmaDFVeHQranNzVngvMG51biszc2lWVXdN?= =?utf-8?B?RXlLdnc5Y1lLMWZVQUd3TW9LQ1VsNm1xRHd3UE8wZVowQVZPZFVGK1p6dG1W?= =?utf-8?B?TVY5VzZGWlNIekg3UHIvRGZ5ODdMbndSMys1YllRY0xxSm1KV2gwWWlKd2Zi?= =?utf-8?B?K3ZHdVc4a0NmUk93akx4NStWRjAwNm5jbzFZZ1Z3YldxUHFjSzlnM2JDbStE?= =?utf-8?B?ODZtWlNLL1o5eGd5bVNjT2t0OCsxUk1aeWhDWjVraWZ2RWVLaUl3QUY0ZXVn?= =?utf-8?B?UkExT1JFQWNSMldXblMwTkx2YktXdW5RNVdWTThqa21DcEFEZW9pUEl4dkJo?= =?utf-8?B?VTBOUE8xdXc4NTNhbFlBeDJZdDRUYzI0VWdXU1JEUUI3NnJ1VkxBZTdVNTNT?= =?utf-8?B?dWc9PQ==?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7bd8c968-2293-42a3-eb0e-08db5d4cfa2c X-MS-Exchange-CrossTenant-originalarrivaltime: 25 May 2023 18:22:19.8751 (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: Ul39yDrYOzcsUwdl5Wuj/lvEKAVxcn+XOQzKbjckBWNiO5klZ0sPqB2apo5lSOlsQHcXfHsvgblNW0mesum4fw4uomTHYdrWcFuf6djNvR0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB6928 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UGVkcm8gYW5kIE9saXZlciwNCg0KWWVzLiAgUmVuYW1pbmcgdGhlIHN0cnVjdCBtZW1iZXJzIGlz IG15IHByZWZlcnJlZCBzb2x1dGlvbi4NClRoaXMgaXMgd2h5IEkgZGlkIG5vdCBzZW5kIHRoaXMg YXMgYSBjb2RlIHJldmlldyBhcyBhbiANCm9mZmljaWFsIGNoYW5nZSByZXF1ZXN0Lg0KDQpJdCB3 YXMganVzdCB0byBjb21wbGV0ZSB0aGUgc2V0IG9mIG9wdGlvbnMgdG8gY29uc2lkZXINCg0KKiBO byBjb2RlIGNoYW5nZXMuICBGaWd1cmUgb3V0IGNvbXBpbGVyIGZsYWdzIHRvIGFkZHJlc3MuDQog IFNUQVRVUzogTm8gY29tcGxldGUgc29sdXRpb24gZm91bmQgZm9yIGFsbCBjb21waWxlcnMuDQoq IFVzZSBDLVByZXByb2Nlc3NvciB0byByZW5hbWUga2V5d29yZHMuDQogIFNUQVRVUzogRnVuY3Rp b25hbCwgYnV0IHZlcnkgYmFkIHN0eWxlIGFuZCBoYXJkIHRvIHJlYWQNCiAgYW5kIG1haW50YWlu Lg0KKiBSZW5hbWUgQyBzdHJ1Y3R1cmUgZmllbGRzIHRoYXQgY29sbGlkZSB3aXRoIEMrKyBrZXl3 b3Jkcw0KICBTVEFUVVM6IEZ1bmN0aW9uYWwuICBNYXkgYnJlYWsgZG93bnN0cmVhbSBjb25zdW1l cnMgdGhhdA0KICBoYXZlIEZXIGNvZGUgdGhhdCByZWZlcmVuY2VzIHRob3NlIGZpZWxkcy4NCg0K VGhhbmtzLA0KDQpNaWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTog UGVkcm8gRmFsY2F0byA8cGVkcm8uZmFsY2F0b0BnbWFpbC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5 LCBNYXkgMjUsIDIwMjMgMTE6MDEgQU0NCj4gVG86IE9saXZlciBTbWl0aC1EZW5ueSA8b3NkZUBs aW51eC5taWNyb3NvZnQuY29tPg0KPiBDYzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtpbm5leSwg TWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47DQo+IFBvcCwgQWFyb24gPGFh cm9ucG9wQG1pY3Jvc29mdC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gR29vZ2xl VGVzdCBDb21wYXRpYmlsaXR5IHdpdGggTWRlUGtnJ3MNCj4gSW5kdXN0eVN0YW5kYXJkIGhlYWRl ciBmaWxlcw0KPiANCj4gT24gVGh1LCBNYXkgMjUsIDIwMjMgYXQgNjo0M+KAr1BNIE9saXZlciBT bWl0aC1EZW5ueQ0KPiA8b3NkZUBsaW51eC5taWNyb3NvZnQuY29tPiB3cm90ZToNCj4gPg0KPiA+ IEhpIE1pa2UsDQo+ID4NCj4gPiBUaGFua3MgZm9yIGxvb2tpbmcgZm9yIHNvbHV0aW9ucyBoZXJl LiBUaGlzIG9uZSBmZWVscyBsaWtlDQo+ID4gcXVpdGUgYSBiYWNrIGJlbmQsIEknbSBpbWFnaW5p bmcgcmVhZGluZyBjb2RlIGFuZCBjb21pbmcNCj4gPiBhY3Jvc3MgVHBtU3RydWN0LkNQTFVTUExV U19PUEVSQVRPUl9LRVlXT1JEIGFuZCBoYXZpbmcgdG8NCj4gPiBkaWcgYXJvdW5kIHF1aXRlIGEg bG90IHRvIHNlZSB3aGF0IGdvb2RuZXNzIGlzIGdvaW5nDQo+ID4gb24uIEJlY2F1c2Ugd2Ugd291 bGQgaGF2ZSB0byB1cGRhdGUgdGhlIEMgZmlsZXMsIHRvbywgcmlnaHQsDQo+IA0KPiBObywgdGhl IGlkZWEgaXMgdGhhdCBjdXJyZW50IEMgY29kZSBjYW4gdXNlIHRoZQ0KPiBhbHJlYWR5LWV4aXN0 aW5nLWFuZC1zdGFuZGFyZCAub3BlcmF0b3IgYW5kIC54b3IsIGFuZCBDKysgY2FuIHVzZQ0KPiAu b3BlcmF0b3JfIGFuZCAueG9yXyAob3IgdGhlIG1hY3JvcywgYWx0aG91Z2ggcGxlYXNlIG5vPyku DQo+IEJ1dCBteSBpZGVhIHdhcyB0byBsZWF2ZSB0aGlzIGFzIGEgVHBtLmggaGFjaywgbm90IGlu IEJhc2UuaCAobmV3DQo+IGhlYWRlcnMgYW5kIHN0cnVjdHMgc2hvdWxkIHRha2UgQysrIGludG8g YWNjb3VudCkuDQo+IA0KPiA+IGRlcGVuZGluZyBvbiB0aGUgdGVzdCAodGhlcmUgZXhpc3QgdGVz dHMgdGhhdCB3YW50IHRvIHRlc3QNCj4gPiBzdGF0aWMgZnVuY3Rpb25zIGFuZCBzbyBpbmNsdWRl IHRoZSBDIGZpbGUgaW4gdGhlIHVuaXQgdGVzdA0KPiA+IGZpbGUpLiBQZXJoYXBzIHRoYXQgaXMg YW4gYW50aS1wYXR0ZXJuIGFuZCBnb29nbGV0ZXN0IGhhcw0KPiANCj4gVGhpcyBpcyBhIGhhY2t5 IHNvbHV0aW9uLiBFaXRoZXIgd3JpdGUgdGhpbmdzIGluIEMrKywgb3IgZG9uJ3QgaW5jbHVkZQ0K PiAuYyBpbiAuY3BwLg0KPiBDIGNvZGUgaXMgbm90IEMrKyBjb2RlLiBUaGVyZSdzIGEgbG90IG9m IEMgY29kZSB0aGF0IGRvZXMgbm90IGFuZA0KPiBzaG91bGQgbm90IGNvbXBpbGUgaW4gQysrLg0K PiANCj4gU286DQo+IA0KPiAxKSBXcml0ZSB0aGUgYWN0dWFsIGZ1bmN0aW9uYWxpdHkgY29kZSBp biBDKysuIFRoaXMgaXMgbm90IHlldA0KPiBzdXBwb3J0ZWQgaW4gRURLMiAoSSdtIGEgcHJvcG9u ZW50IG9mIHRoaXMpDQo+IDIpIERvbid0IG1ha2UgdGhlIGZ1bmN0aW9ucyB5b3UncmUgdGVzdGlu ZyBzdGF0aWMsIG9yIG1ha2UgdGhlbQ0KPiBjb25kaXRpb25hbGx5IHN0YXRpYyBvbiBzb21ldGhp bmcNCj4gDQo+IE5vdGU6IEFkZGluZyBwcm9wZXIsIGFjdHVhbCBDKysgY29kZSB0byBFREsyIHJl cXVpcmVzIHNvbWUgY2FyZSwgYnV0DQo+IGNvdWxkIHJlc3VsdCBpbiBhY3R1YWwgZ29vZCBjaGFu Z2VzLiBJIGRvbid0IGtub3cgaG93IHdlbGwgdGhpcyB3b3VsZA0KPiBiZSByZWNlaXZlZCBieSB0 aGUgY29tbXVuaXR5IHRob3VnaC4NCj4gDQo+ID4gQnV0LCB0aGF0IGJlaW5nIHNhaWQsIHRoaXMg aXMgYW4gaXNzdWUgd2UgZmFjZSwgc28gcGVyaGFwcw0KPiA+IGl0IHdvdWxkIGJlIHNpbXBsZXIg dG8ganVzdCByZW5hbWUgdGhlIG1lbWJlcnMgdG8gbm90IGNvbmZsaWN0DQo+ID4gd2l0aCB0aGUg QysrIGtleXdvcmRzLCBhcyBwcmV2aW91c2x5IHN1Z2dlc3RlZCwgZXZlbiB0aG91Z2gNCj4gPiB0 aGlzIG1heSBkaWZmZXIgZnJvbSB0aGUgc3BlYywgYnV0IGl0IHdvdWxkIG1vcmUgYWxpZ24gd2l0 aA0KPiA+IEVES0lJJ3MgY29udmVudGlvbnMgKHNob3V0eSBjYXNlKSB3aGVyZSB0aGUgQysrIGtl eXdvcmRzIHNlZW0NCj4gPiB0byBiZSBsb3dlcmNhc2UuIFdpdGggdGhlIGJlbG93IHBhdGNoLCB3 ZSB3b3VsZCBhbHJlYWR5IGJlDQo+IA0KPiBJIHRoaW5rIGJyZWFraW5nIGFsbCBzb3J0cyBvZiB1 c2VycyBmb3IgdGhpcyBzb3J0IG9mICJzaWxseSIgcHJvYmxlbXMNCj4gaXMgbm90IGEgZ29vZCBv cHRpb24gaGVyZS4gVGhlcmUncyBubyBhY3R1YWwgbmVlZCBmb3IgdGhpcyBBVE0sIGFwYXJ0DQo+ IGZyb20gIldlIHdhbnQgdG8gdGVzdCB0aGlzIHNpbGx5IGNvZGUgaW4gdGhpcyBuZXcgR29vZ2xl IFRlc3QgbGlicmFyeQ0KPiB0aGF0IGp1c3QgYXBwZWFyZWQgdXBzdHJlYW0iLg0KPiANCj4gQnV0 IHRoZXNlIGFyZSBqdXN0IG15IDJjIG9mIGNvdXJzZS4NCj4gDQo+IC0tDQo+IFBlZHJvDQo=