From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id A97627803CE for ; Thu, 8 Feb 2024 16:40:25 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=c7QHtjaruPHEDCpd3SqAYJlfcQrDEYeD7+KnHsJIH0M=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1707410424; v=1; b=u92pPwbD1K9mbwo5Zaa/3eSUBlgVyFNLLjiceDU6/EQoKkFzTcD8+4GKDhcTU0X0VIFrzoZE z/K45Qr3TKHcDnPaXyrAycpaIV4LvZagmQ00/tJkX81m3iqT+lPmtcXdwn/SF5qtaPDIVhgYK7O 4jbBTmVxMeEgB9cKIN3YPFk0= X-Received: by 127.0.0.2 with SMTP id 9jSlYY7687511xPfbB59FbUK; Thu, 08 Feb 2024 08:40:24 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.13]) by mx.groups.io with SMTP id smtpd.web10.24.1707410423637891545 for ; Thu, 08 Feb 2024 08:40:23 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10978"; a="4239583" X-IronPort-AV: E=Sophos;i="6.05,254,1701158400"; d="scan'208";a="4239583" X-Received: from orviesa006.jf.intel.com ([10.64.159.146]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Feb 2024 08:40:21 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.05,254,1701158400"; d="scan'208";a="2043312" X-Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orviesa006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 08 Feb 2024 08:40:21 -0800 X-Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 8 Feb 2024 08:40:20 -0800 X-Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 8 Feb 2024 08:40:19 -0800 X-Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Thu, 8 Feb 2024 08:40:19 -0800 X-Received: from NAM04-BN8-obe.outbound.protection.outlook.com (104.47.74.41) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Thu, 8 Feb 2024 08:40:19 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=D8S2zLoNct2MWbS80BslAX/YQYAuP6MDkJFpYKQxOX7iBafAn/208rRn1GW+B1M19qsu5O0Jlurh5T2ksuC5b1im/bZ/7KAYwrBF0Oi9ek3Q7XyxGb2mslpxAG99zy9qwlOytekItUoS9Icts1xJijUc0ocU/y7b6OcelVBZ+n/sFIEFql4/To9NvSKyfeew4ZRo1F2a9Uq3UWLkXlDtqo530VQSALRygvyT2kEn5VOEsYme4peGYYq69pZgP6uCTWBwynqsQbJU2KR7YYlVNKSYp6cwdTVSbnqe9U1HjcQSYyO+gTMyVNQWU8KHwIve5oQYqEg9CLgmuv8yh5hXSg== 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=I3ZSqgXs+MTwyTDRv22cYQzTtCH+mnokuAoEXxo1ChE=; b=AnfHfY585/oUwFoynNFspOL5tH9LytxwV4pQkmSHtk3AILGHr89bFCAi9uHrQYK4BNquOJ4mezXRKYPpG8xtlY+OpNrkcNF6ecZL10RlgXqcPeJxbQpL6NVpmatL8sHkWDMZBq7eBRG8i3kbiO2jhdcxLKAmoqs4AcTAOknNEEKWfVZ13eSSl5hVT+SqlurXQBX+k6Vb61XeQxnGRGIDgflxCNFxcywqJplcVNZzB3A0Se6c3X7A8+axJJ2WHcfvDiGVpAN70DmUP7iORVJxx1qtQLSZsY4sAv0Hp44X6u/60EXjk78F5CF9ulYFtXrHXoE8qfLUaB3+QbxvsO74Zg== 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 X-Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by PH0PR11MB4984.namprd11.prod.outlook.com (2603:10b6:510:34::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.38; Thu, 8 Feb 2024 16:40:15 +0000 X-Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::7e42:1633:d0a6:9c00]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::7e42:1633:d0a6:9c00%6]) with mapi id 15.20.7249.037; Thu, 8 Feb 2024 16:40:15 +0000 From: "Michael D Kinney" To: Laszlo Ersek , edk2-devel-groups-io CC: Abdul Lateef Attar , Abner Chang , "Warkentin, Andrei" , Andrew Fish , Ard Biesheuvel , "S, Ashraf Ali" , Bibo Mao , "Feng, Bob C" , "West, Catharine" , Chao Li , "Chiu, Chasel" , "Duggapu, Chinni B" , Duke Zhai , "Aktas, Erdem" , Eric Xing , "Gerd Hoffmann" , "Guo, Gua" , "Dong, Guo" , Igniculus Fu , "Lu, James" , "Yao, Jiewen" , Kelly Steele , Ken Yao , Leif Lindholm , Liming Gao , "Michael Roth" , "Xu, Min M" , "Desimone, Nathaniel L" , Paul Grimes , "Kumar, Rahul R" , "Ni, Ray" , Rebecca Cran , "Chaganty, Rangasai V" , Sami Mujawar , "Rhodes, Sean" , "Zeng, Star" , Sunil V L , "Mohapatra, Susovan" , "Kuo, Ted" , Tom Lendacky , USER0FISH , Xianglai li , "Chen, Christine" , caiyuqing379 , dahogn , meng-cz , "Kinney, Michael D" Subject: Re: [edk2-devel] BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC modules Thread-Topic: BaseTools/AutoGen: declare ProcessLibraryConstructorList() for SEC modules Thread-Index: AQHaWV/AwufHRKoDvkWfLsH1Bpf3OrD+EydQgADx6wCAAaJcYA== Date: Thu, 8 Feb 2024 16:40:15 +0000 Message-ID: References: <36593e23-d3e8-b71a-808d-ef94260b5fd0@redhat.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO1PR11MB4929:EE_|PH0PR11MB4984:EE_ x-ms-office365-filtering-correlation-id: d29cb038-765f-4d93-ca5f-08dc28c4a09c x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: SwVYdzKH4pTS35IorAbtI/iYtEpSF1hry4CVaEZiflVNoYOkfVz9n7/3oBpbsQ7Wi7ZVNXmuJxoqj3yC1aqQSKoDRQigN95LZfkM/Ytc1AREER03oEBr0CilfQZSvVbnsoSplIwzhfBio8OSgqpiQPRzie0Y+pB7ljW1EGzPDMV5amBua9saMz/Moha+G7gJdCCxA2A+yrWVN9UqCAGKvJpHeG+oPD6OnJNmVglDkjWq+ng02K2wKr8JtZ93xIqZyTU37WZ9myneCaksqRgAANvMmTrTD+Wti5Q7iHleY8OzMtfudBXo2RQ7Se25C6ZLuW2tgvHoXPDTYG8r0JHPz+I8MSCaS4tkrG6fNnPwjDd+aqNAsiqSxB9mk4n+5F4jt9qBFVKvk622tXiPPb5dyoGmNzEt0mpeoBmf1hF+bgpP1hSvVTCIDUVY3A1HkLwB5OLfB3eitS4nKD+1OJWY9ceG14hDJ5sc7V2smjySTjfSKxZFI5skyaUyGqfg0uNrT0o1VOF/qzdjDqtSGoLO7vxeShYjTF1AOZEOIeol2IfMM0yklv2MlkOLwurcfEgurO1Tx2PW2+56crAvunAUa6rpF2C1xggi7TAdLEYRiVU= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?U0hlZmxMWk5mdmZPWjc5dW9JK09ka05Eb254NkxsbzBncUNMVUdiTElUYWFK?= =?utf-8?B?WkdjMTFnOTN0ZVkxNVZkR0tRRzhoRkFuWFdpUWdKZkRRZ1M1VFFLZmN3OVBV?= =?utf-8?B?SmRFVDc1bEV4ZGs2SjdmVk9YQ1l5d041VTczaStOVEFkQ1UyMjFxU3Fka0tW?= =?utf-8?B?UERIWmphYnZFQXdqTzhWbXYvRlA2N2NCRXZKSXViaUpIdmpoOGUyLzZlOVFR?= =?utf-8?B?STduOTNSYnlEblhDcllXYkZxMmpZKzg3UHMvSGdzZmxVTXFuRzJHbnpYRm9j?= =?utf-8?B?WnJDZkNJM3VzcWRWWmdFV1BrSVRXV2ZtRnZJcTQyRWQ1V2pocTdSNmVYMmJS?= =?utf-8?B?d21GQXdZZFF4YTdkLzE3RHIvLzF0NWZHVTFrL3FGY0dMYkVoUWk5VGpUUXVC?= =?utf-8?B?ekNUaTRNQ293VmtmWDNtdUM1RTUxZ0o5c0dHWFFLYVIxYzFTalVySlFYTU9X?= =?utf-8?B?d0hCZWI5T0dja3hOakRIRzkwZ0kydURpclRHMUhvR2swczB3UGduRE1SbjIw?= =?utf-8?B?TDd6N2ZodGk3OTNydTBZTksxbTlFRThPejdXZWlUZFNUTUNPdGlaM2NBOUNL?= =?utf-8?B?R0NCTUJPM0hFMS9RTFh4VmlYOXpHZlprZm1BR0RxT3c1Qmx6ZGg4UmVKM1Jx?= =?utf-8?B?QWttdWFiV1dvdzJNT1B6TnAyaUR5UDhwUFl5MFgrT0tMa1B4QlFSTnZQZEtM?= =?utf-8?B?MjZVVFZLUERpNCtPa2RTV1psQ1ByQWpSak9hZGc5R01BUytSR2o4Wml3NFdG?= =?utf-8?B?ekFBd0l4ZGF1UFRCcTJnaCtiU010R0FualE1OStuWFQwTWFFYXBVR211WDFE?= =?utf-8?B?NzdndEc4Ukw4NHpHQSt3c2Mzc3NjdWkwYzFWLzR5ZlFTbnBNSkUrUnRBOWxt?= =?utf-8?B?OEoxM3JaeHAxeVhxa0duTkpIUkNWTDI2c1d2OEwzczFFbUVvb2h1anVNQlpO?= =?utf-8?B?UDl5RnRQbjhDdHZRQmlpQzAyY1c4WDhkUjJmUUtHcWVWOG5pYTNYc3NSNGx3?= =?utf-8?B?Q0poaXZLajd1V2p2VDdLL09PMEo3S3RoeUlzT3NlODBRSjEvUTdCZWxhZDBn?= =?utf-8?B?NFdyelBlQVdPTHJJOU5xMnpJVlY1TUMxSHNFTjA5SmNnR3F4S0U5WEhzMjJu?= =?utf-8?B?WjExVkpYRjhJMldsWURsK01OQ25pQ2ptOGlHaktXaDcyUXVpL1lmQ2JvM3BP?= =?utf-8?B?WVFTdW1KaDE2ZnIwSGlwM2tXTnBWWWtxWGo0eHg2WVFYVVpaeGJoc011VW53?= =?utf-8?B?M011WGhITW9EUDhiRzQyMnQ5a2k3NlNWcUlZRjJ4Vmg0MDhoMlFEQzBQUlA4?= =?utf-8?B?eXdqSHRBR2pwYS8rWkNvanF1ZStTTEduSGd6bWlES0RGZE1ubUxEQytKREZB?= =?utf-8?B?MG54YW9BNWpnWVlNSkFPZzMvQXdBWFVlSGdNblFxSnhsUzV5QmNlTGFYT2Uy?= =?utf-8?B?TmR2REowaHVOdHpXVCtsYm1BYTNDNGlqRWtiWi9TRzVTTGRKZG1aUFQxRFg0?= =?utf-8?B?WERnOHFIa3JGME0vUHAwOXZVOUtqQTJBbW8yYjEzUEtaTlRIYW03ZjRRN1RG?= =?utf-8?B?b0JwTUJxQ2xBcVlBeko2eFd6MzVjQ1M4dkIxUjZqcFErQmJqd2tiN3Ztb0RR?= =?utf-8?B?Ukg1dURzSFdNN1dmRDdOQkhCbW5SeUkrY0ozRWk2YURQZ0lkemdOMk8vYndE?= =?utf-8?B?Wk04UGVoU0MrWndZMEhYdjI2SmdFMlVVVlZPU3VnV3M3ZTdldThjRDRyblY3?= =?utf-8?B?Z1NoblJpc28wbm5BMlZNTWhZMDVhRXcwbW02Zkczd3Y1RWd1RGl0alduNWpU?= =?utf-8?B?QWpDWkVScFdIMkhSRW52eUk4Z2w5dXh0cEhLcDlKZXlOaGdJdnhlUTI4RlRF?= =?utf-8?B?TFNXVTBIK2RzVmloNTNUbnlhY3lDWnZrUjM4WWJubmVPUHUxUHZOTkpXb21u?= =?utf-8?B?ZnpIaWlmT1J5LzZWTVE0ZHNaMnpRLzBpbk1YNzR2MVFPc3d4ZVRUSWJoRmFO?= =?utf-8?B?a1ZHQVF3N3A2Y2RtaTZ6UVUzS2VybWZhNHhlTWE0UnN2S290ekwwd09yeEhD?= =?utf-8?B?MnRxV0FhRXUzSnUwUUI3ejhSQkNMc0p3Wkh4dm51NnI0S3RMK0ZyTUxqQ09p?= =?utf-8?B?TmNPdFlsbUFXTXhRR2JxVG5Ram5FQitKQWdQM3JVSkxYSWhNemdXY0gzc1A1?= =?utf-8?B?YkE9PQ==?= 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: d29cb038-765f-4d93-ca5f-08dc28c4a09c X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Feb 2024 16:40:15.2974 (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: DKSe40JzhFtJjeuABrJGp3SKO0JTrzvXxPUZXmxnJMXOhMfYf5Up1ytaoMqpsV6nHIrm+Js/D7clSSDjK8D//vZjDgkbhRh78wTzZ/EIfxI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4984 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,michael.d.kinney@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: DLXTyyX9yTjRJ9b52hO2DKgAx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=u92pPwbD; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io SGkgTGFzemxvLA0KDQpJIG5lZWQgdG8gcmV2aWV3IHRoZSBwcm9wb3NlZCBCYXNlVG9vbHMvQXV0 b0dlbiBjaGFuZ2UgdG8gc2VlIHdoYXQgb3B0aW9ucw0KYXJlIGF2YWlsYWJsZSBmb3IgY29tcGF0 aWJpbGl0eS4NCg0KTXkgbWFpbiBjb25jZXJuIGlzIGRvd25zdHJlYW0gY29uc3VtZXJzIHRoYXQg bWF5IGJyZWFrIGltbWVkaWF0ZWx5IHdpdGgNCmEgY2hhbmdlIGxpa2UgdGhpcyBhbmQgd2UgbmVl ZCBhIHdheSBmb3IgdGhlbSB0byBiZSBpbmZvcm1lZCBhbmQgaGF2ZQ0KdGltZSB0byB1cGRhdGUg dGhlaXIgY29tcG9uZW50cyBqdXN0IGxpa2UgeW91IG91dGxpbmUgYSBzZXF1ZW5jZSB0byB1cGRh dGUNCnRoZSBlZGsyIHJlcG8gY29tcG9uZW50cy4NCg0KVGhhbmtzLA0KDQpNaWtlDQoNCj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVk aGF0LmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBGZWJydWFyeSA3LCAyMDI0IDc6NDAgQU0NCj4g VG86IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IGVkazIt ZGV2ZWwtZ3JvdXBzLQ0KPiBpbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+DQo+IENjOiBBYmR1bCBM YXRlZWYgQXR0YXIgPGFiZGF0dGFyQGFtZC5jb20+OyBBYm5lciBDaGFuZw0KPiA8YWJuZXIuY2hh bmdAYW1kLmNvbT47IFdhcmtlbnRpbiwgQW5kcmVpIDxhbmRyZWkud2Fya2VudGluQGludGVsLmNv bT47DQo+IEFuZHJldyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA8 YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz47IFMsIEFzaHJhZiBBbGkgPGFzaHJhZi5hbGkuc0Bp bnRlbC5jb20+Ow0KPiBCaWJvIE1hbyA8bWFvYmlib0Bsb29uZ3Nvbi5jbj47IEZlbmcsIEJvYiBD IDxib2IuYy5mZW5nQGludGVsLmNvbT47DQo+IFdlc3QsIENhdGhhcmluZSA8Y2F0aGFyaW5lLndl c3RAaW50ZWwuY29tPjsgQ2hhbyBMaQ0KPiA8bGljaGFvQGxvb25nc29uLmNuPjsgQ2hpdSwgQ2hh c2VsIDxjaGFzZWwuY2hpdUBpbnRlbC5jb20+OyBEdWdnYXB1LA0KPiBDaGlubmkgQiA8Y2hpbm5p LmIuZHVnZ2FwdUBpbnRlbC5jb20+OyBEdWtlIFpoYWkgPGR1a2UuemhhaUBhbWQuY29tPjsNCj4g QWt0YXMsIEVyZGVtIDxlcmRlbWFrdGFzQGdvb2dsZS5jb20+OyBFcmljIFhpbmcgPGVyaWMueGlu Z0BhbWQuY29tPjsNCj4gR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20+OyBHdW8sIEd1 YSA8Z3VhLmd1b0BpbnRlbC5jb20+OyBEb25nLA0KPiBHdW8gPGd1by5kb25nQGludGVsLmNvbT47 IElnbmljdWx1cyBGdSA8aWduaWN1bHVzLmZ1QGFtZC5jb20+OyBMdSwNCj4gSmFtZXMgPGphbWVz Lmx1QGludGVsLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IEtlbGx5 DQo+IFN0ZWVsZSA8a2VsbHkuc3RlZWxlQGludGVsLmNvbT47IEtlbiBZYW8gPGtlbi55YW9AYW1k LmNvbT47IExlaWYNCj4gTGluZGhvbG0gPHF1aWNfbGxpbmRob2xAcXVpY2luYy5jb20+OyBMaW1p bmcgR2FvDQo+IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBNaWNoYWVsIFJvdGggPG1pY2hh ZWwucm90aEBhbWQuY29tPjsgWHUsDQo+IE1pbiBNIDxtaW4ubS54dUBpbnRlbC5jb20+OyBEZXNp bW9uZSwgTmF0aGFuaWVsIEwNCj4gPG5hdGhhbmllbC5sLmRlc2ltb25lQGludGVsLmNvbT47IFBh dWwgR3JpbWVzIDxwYXVsLmdyaW1lc0BhbWQuY29tPjsNCj4gS3VtYXIsIFJhaHVsIFIgPHJhaHVs LnIua3VtYXJAaW50ZWwuY29tPjsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47DQo+IFJlYmVj Y2EgQ3JhbiA8cmViZWNjYUBic2Rpby5jb20+OyBDaGFnYW50eSwgUmFuZ2FzYWkgVg0KPiA8cmFu Z2FzYWkudi5jaGFnYW50eUBpbnRlbC5jb20+OyBTYW1pIE11amF3YXIgPHNhbWkubXVqYXdhckBh cm0uY29tPjsNCj4gUmhvZGVzLCBTZWFuIDxzZWFuQHN0YXJsYWJzLnN5c3RlbXM+OyBaZW5nLCBT dGFyIDxzdGFyLnplbmdAaW50ZWwuY29tPjsNCj4gU3VuaWwgViBMIDxzdW5pbHZsQHZlbnRhbmFt aWNyby5jb20+OyBNb2hhcGF0cmEsIFN1c292YW4NCj4gPHN1c292YW4ubW9oYXBhdHJhQGludGVs LmNvbT47IEt1bywgVGVkIDx0ZWQua3VvQGludGVsLmNvbT47IFRvbQ0KPiBMZW5kYWNreSA8dGhv bWFzLmxlbmRhY2t5QGFtZC5jb20+OyBVU0VSMEZJU0ggPGxpYmluZzEyMDJAb3V0bG9vay5jb20+ Ow0KPiBYaWFuZ2xhaSBsaSA8bGl4aWFuZ2xhaUBsb29uZ3Nvbi5jbj47IENoZW4sIENocmlzdGlu ZQ0KPiA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+OyBjYWl5dXFpbmczNzkgPGNhaXl1cWluZ19oekBv dXRsb29rLmNvbT47IGRhaG9nbg0KPiA8ZGFob2duQGhvdG1haWwuY29tPjsgbWVuZy1jeiA8bWVu Z2N6MTEyNkBnbWFpbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBCYXNlVG9vbHMvQXV0b0dlbjogZGVj bGFyZSBQcm9jZXNzTGlicmFyeUNvbnN0cnVjdG9yTGlzdCgpDQo+IGZvciBTRUMgbW9kdWxlcw0K PiANCj4gT24gMi83LzI0IDAyOjE2LCBLaW5uZXksIE1pY2hhZWwgRCB3cm90ZToNCj4gPiBIaSBM YXN6bG8sDQo+ID4NCj4gPiBUaGUgbWFpbiBpc3N1ZSBpcyB0aGF0IGEgbm9uLWJhY2t3YXJkcyBj b21wYXRpYmxlIGNoYW5nZSBpcyBiZWluZw0KPiA+IHByb3Bvc2VkIHRvIEJhc2VUb29scy4NCj4g Pg0KPiA+IEluIG9yZGVyIGZvciB0aGlzIHRvIHdvcmssIEJhc2VUb29scyBuZWVkcyB0byBzdXBw b3J0IGJvdGggdGhlDQo+ID4gb2xkIHN0eWxlIGFuZCBuZXcgc3R5bGUgU0VDIGF1dG9nZW4uDQo+ ID4NCj4gPiBUaGUgZ3VhcmFudGVlIG9mIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGlzIHNvbWV0 aGluZyB0aGF0IGlzDQo+IHJlcXVpcmVkDQo+ID4gZm9yIEJhc2VUb29scy4gIFNpbWlsYXIgdG8g Y29uc3RyYWlucyBvbiBjb21waWxlcnMvbGlua2Vycy4gIE5ldw0KPiBmZWF0dXJlcw0KPiA+IGNh biBiZSBhZGRlZCwgYnV0IHRoZSBvbGQgYmVoYXZpb3IgaGFzIHRvIGFsd2F5cyBiZSBzdXBwb3J0 ZWQuDQo+IFJlbW92aW5nDQo+ID4gb2xkIGJlaGF2aW9yIHRha2VzIGEgdmVyeSBsb25nIHRpbWUu DQo+IA0KPiBUaGlzIGNoYW5nZSBjb25zaXN0cyBvZiB0aHJlZSBwYXJ0czoNCj4gDQo+ICgxKSBn ZW5lcmF0ZSB0aGUgU0VDIFByb2Nlc3NMaWJyYXJ5Q29uc3RydWN0b3JMaXN0KCkgZGVjbGFyYXRp b24gaW4NCj4gIkF1dG9HZW4uaCINCj4gDQo+ICgyKSBpbiB0aG9zZSBtb2R1bGVzIHRoYXQgZGVj bGFyZSBTRUMgUHJvY2Vzc0xpYnJhcnlDb25zdHJ1Y3Rvckxpc3QoKQ0KPiB0aGVtc2VsdmVzICpw cm9wZXJseSosIHJlbW92ZSB0aGUgKG5vdyBzdXBlcmZsdW91cywgYnV0IGNlcnRhaW5seSAqbm90 DQo+IGNvbmZsaWN0aW5nKikgbWFudWFsIGRlY2xhcmF0aW9ucw0KPiANCj4gKDMpIGluIHRob3Nl IG1vZHVsZXMgdGhhdCBkZWNsYXJlIFNFQyBQcm9jZXNzTGlicmFyeUNvbnN0cnVjdG9yTGlzdCgp DQo+IHRoZW1zZWx2ZXMgKmluY29ycmVjdGx5KiwgZWl0aGVyIG1hbnVhbGx5LCBvciBieSB3YXkg b2YgaW5jbHVkaW5nDQo+IDxMaWJyYXJ5L1BlaW1FbnRyeVBvaW50Lmg+LCByZW1vdmUgdGhlICpu b3ctY29uZmxpY3RpbmcqIG1hbnVhbA0KPiBkZWNsYXJhdGlvbnMgLyBpbmNsdXNpb25zLg0KPiAN Cj4gRm9yIG1vZHVsZXMgdGhhdCBmYWxsIGluIGNhdGVnb3J5ICgyKSwgdGhlIEF1dG9HZW4gY2hh bmdlICgxKSBpcw0KPiBjb21wYXRpYmxlLiBUaGUgQXV0b0dlbiBjaGFuZ2UgKDEpIGlzIGluY29t cGF0aWJsZSBvbmx5IHdpdGggbW9kdWxlcw0KPiB0aGF0IGZhbGwgaW50byBjYXRlZ29yeSAoMykg LS0gdGhhdCBpcywgd2l0aCBtb2R1bGVzIHRoYXQgYWxyZWFkeQ0KPiBkZWNsYXJlIFNFQyBQcm9j ZXNzTGlicmFyeUNvbnN0cnVjdG9yTGlzdCgpIGluY29ycmVjdGx5Lg0KPiANCj4gSW4gb3RoZXIg d29yZHMsIHRoZSBjb21wYXRpYmlsaXR5IHdlJ3JlIHRhbGtpbmcgYWJvdXQgaGVyZSBpcyAqYnVn DQo+IGNvbXBhdGliaWxpdHkqLg0KPiANCj4gSWYgYnVnIGNvbXBhdCBpcyBhIGdvYWwsIHRoZW4g dGhlIEF1dG9HZW4gcGF0Y2ggY2Fubm90IGJlIG1lcmdlZCBhdA0KPiBhbGwuDQo+IA0KPiBJZiBi dWcgY29tcGF0IGlzIG5vdCBhIGdvYWwsIHRoZW46DQo+IA0KPiAoYSkgdGhlIEF1dG9HZW4gY2hh bmdlIGNvdWxkIGJlIC8gc2hvdWxkIGJlIG1lcmdlZCBpbnRvIHRoZSBzZXBhcmF0ZQ0KPiBCYXNl VG9vbHMgcmVwb3NpdG9yeSBhdCBmaXJzdCwNCj4gDQo+IChiKSBmb3IgZWRrMiwgSSBzaG91bGQg cmV3b3JrIHRoaXMgc2VyaWVzIHN1Y2ggdGhhdDoNCj4gDQo+IC0gbW9kdWxlcyBmcm9tIGNhdGVn b3J5ICgzKSBiZSBicm91Z2h0IHRvIGNhdGVnb3J5ICgyKSBhdCBmaXJzdCAoaS5lLiwNCj4gcmVw bGFjaW5nIHRoZSBib2d1cyBjYWxscyAvIG1hbnVhbCBkZWNsYXJhdGlvbnMgd2l0aCBwcm9wZXIg Y2FsbHMgLw0KPiBtYW51YWwgZGVjbGFyYXRpb25zKSwNCj4gDQo+IC0gdGhlIGVkazItYmFzZXRv b2xzIGRlcGVuZGVuY3kgaW4gInBpcC1yZXF1aXJlbWVudHMudHh0IiBiZSBidW1wZWQNCj4gZnJv bQ0KPiAwLjEuNDggdG8gdGhlIG5ldyB2ZXJzaW9uLA0KPiANCj4gLSBmaW5hbGx5LCB0aGUgbWFu dWFsIChidXQgb3RoZXJ3aXNlLCBub3ctY29ycmVjdCkgZGVjbGFyYXRpb25zIGluIHRoZQ0KPiBt b2R1bGVzIG9mIGNhdGVnb3J5ICgyKSBiZSBlbGltaW5hdGVkLg0KPiANCj4gVGhlcmVmb3JlLCBt eSBxdWVzdGlvbiBpczogZG8gd2UgaW50ZW5kIHRvIHByZXNlcnZlIGJ1ZyBjb21wYXRpYmlsaXR5 Pw0KPiANCj4gVGhhbmtzIQ0KPiBMYXN6bG8NCj4gDQo+IA0KPiANCj4gPg0KPiA+IE1pa2UNCj4g Pg0KPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBMYXN6bG8gRXJz ZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiA+PiBTZW50OiBUdWVzZGF5LCBGZWJydWFyeSA2LCAy MDI0IDQ6NTEgUE0NCj4gPj4gVG86IGVkazItZGV2ZWwtZ3JvdXBzLWlvIDxkZXZlbEBlZGsyLmdy b3Vwcy5pbz4NCj4gPj4gQ2M6IEFiZHVsIExhdGVlZiBBdHRhciA8YWJkYXR0YXJAYW1kLmNvbT47 IEFibmVyIENoYW5nDQo+ID4+IDxhYm5lci5jaGFuZ0BhbWQuY29tPjsgV2Fya2VudGluLCBBbmRy ZWkNCj4gPGFuZHJlaS53YXJrZW50aW5AaW50ZWwuY29tPjsNCj4gPj4gQW5kcmV3IEZpc2ggPGFm aXNoQGFwcGxlLmNvbT47IEFyZCBCaWVzaGV1dmVsDQo+ID4+IDxhcmRiK3RpYW5vY29yZUBrZXJu ZWwub3JnPjsgUywgQXNocmFmIEFsaSA8YXNocmFmLmFsaS5zQGludGVsLmNvbT47DQo+ID4+IEJp Ym8gTWFvIDxtYW9iaWJvQGxvb25nc29uLmNuPjsgRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50 ZWwuY29tPjsNCj4gPj4gV2VzdCwgQ2F0aGFyaW5lIDxjYXRoYXJpbmUud2VzdEBpbnRlbC5jb20+ OyBDaGFvIExpDQo+ID4+IDxsaWNoYW9AbG9vbmdzb24uY24+OyBDaGl1LCBDaGFzZWwgPGNoYXNl bC5jaGl1QGludGVsLmNvbT47IER1Z2dhcHUsDQo+ID4+IENoaW5uaSBCIDxjaGlubmkuYi5kdWdn YXB1QGludGVsLmNvbT47IER1a2UgWmhhaQ0KPiA8ZHVrZS56aGFpQGFtZC5jb20+Ow0KPiA+PiBB a3RhcywgRXJkZW0gPGVyZGVtYWt0YXNAZ29vZ2xlLmNvbT47IEVyaWMgWGluZyA8ZXJpYy54aW5n QGFtZC5jb20+Ow0KPiA+PiBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxAcmVkaGF0LmNvbT47IEd1bywg R3VhIDxndWEuZ3VvQGludGVsLmNvbT47DQo+IERvbmcsDQo+ID4+IEd1byA8Z3VvLmRvbmdAaW50 ZWwuY29tPjsgSWduaWN1bHVzIEZ1IDxpZ25pY3VsdXMuZnVAYW1kLmNvbT47IEx1LA0KPiA+PiBK YW1lcyA8amFtZXMubHVAaW50ZWwuY29tPjsgWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwu Y29tPjsNCj4gS2VsbHkNCj4gPj4gU3RlZWxlIDxrZWxseS5zdGVlbGVAaW50ZWwuY29tPjsgS2Vu IFlhbyA8a2VuLnlhb0BhbWQuY29tPjsgTGVpZg0KPiA+PiBMaW5kaG9sbSA8cXVpY19sbGluZGhv bEBxdWljaW5jLmNvbT47IExpbWluZyBHYW8NCj4gPj4gPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5j bj47IEtpbm5leSwgTWljaGFlbCBEDQo+ID4+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47 IE1pY2hhZWwgUm90aCA8bWljaGFlbC5yb3RoQGFtZC5jb20+Ow0KPiBYdSwNCj4gPj4gTWluIE0g PG1pbi5tLnh1QGludGVsLmNvbT47IERlc2ltb25lLCBOYXRoYW5pZWwgTA0KPiA+PiA8bmF0aGFu aWVsLmwuZGVzaW1vbmVAaW50ZWwuY29tPjsgUGF1bCBHcmltZXMgPHBhdWwuZ3JpbWVzQGFtZC5j b20+Ow0KPiA+PiBLdW1hciwgUmFodWwgUiA8cmFodWwuci5rdW1hckBpbnRlbC5jb20+OyBOaSwg UmF5DQo+IDxyYXkubmlAaW50ZWwuY29tPjsNCj4gPj4gUmViZWNjYSBDcmFuIDxyZWJlY2NhQGJz ZGlvLmNvbT47IENoYWdhbnR5LCBSYW5nYXNhaSBWDQo+ID4+IDxyYW5nYXNhaS52LmNoYWdhbnR5 QGludGVsLmNvbT47IFNhbWkgTXVqYXdhcg0KPiA8c2FtaS5tdWphd2FyQGFybS5jb20+Ow0KPiA+ PiBSaG9kZXMsIFNlYW4gPHNlYW5Ac3RhcmxhYnMuc3lzdGVtcz47IFplbmcsIFN0YXINCj4gPHN0 YXIuemVuZ0BpbnRlbC5jb20+Ow0KPiA+PiBTdW5pbCBWIEwgPHN1bmlsdmxAdmVudGFuYW1pY3Jv LmNvbT47IE1vaGFwYXRyYSwgU3Vzb3Zhbg0KPiA+PiA8c3Vzb3Zhbi5tb2hhcGF0cmFAaW50ZWwu Y29tPjsgS3VvLCBUZWQgPHRlZC5rdW9AaW50ZWwuY29tPjsgVG9tDQo+ID4+IExlbmRhY2t5IDx0 aG9tYXMubGVuZGFja3lAYW1kLmNvbT47IFVTRVIwRklTSA0KPiA8bGliaW5nMTIwMkBvdXRsb29r LmNvbT47DQo+ID4+IFhpYW5nbGFpIGxpIDxsaXhpYW5nbGFpQGxvb25nc29uLmNuPjsgQ2hlbiwg Q2hyaXN0aW5lDQo+ID4+IDx5dXdlaS5jaGVuQGludGVsLmNvbT47IGNhaXl1cWluZzM3OSA8Y2Fp eXVxaW5nX2h6QG91dGxvb2suY29tPjsNCj4gZGFob2duDQo+ID4+IDxkYWhvZ25AaG90bWFpbC5j b20+OyBtZW5nLWN6IDxtZW5nY3oxMTI2QGdtYWlsLmNvbT4NCj4gPj4gU3ViamVjdDogQmFzZVRv b2xzL0F1dG9HZW46IGRlY2xhcmUgUHJvY2Vzc0xpYnJhcnlDb25zdHJ1Y3Rvckxpc3QoKQ0KPiBm b3INCj4gPj4gU0VDIG1vZHVsZXMNCj4gPj4NCj4gPj4gQnVnemlsbGFzOg0KPiA+PiAtIGh0dHBz Oi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkwDQo+ID4+IC0gaHR0 cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD05OTENCj4gPj4NCj4g Pj4gUGVyc29uYWwgYnVpbGQ6DQo+ID4+IC0gaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9l ZGsyL3B1bGwvNTM1NA0KPiA+Pg0KPiA+PiBJJ2xsIGZvbGxvdyB1cCB3aXRoIHR3byBzZXJpZXMs IGluIHJlc3BvbnNlIHRvIHRoaXMgbWVzc2FnZS4gT25lIG9mDQo+ID4+IHRob3NlIHNldHMgbWFr ZXMgQXV0b0dlbiBkZWNsYXJlIFByb2Nlc3NMaWJyYXJ5Q29uc3RydWN0b3JMaXN0KCkgZm9yDQo+ ID4+IFNFQw0KPiA+PiBtb2R1bGVzIChhcyBMaW1pbmcgc3VnZ2VzdGVkKSwgYW5kIGNsZWFucyB1 cCB0aGUgYnVnZ3kgb3INCj4gc3VwZXJmbHVvdXMNCj4gPj4gbWFudWFsIGRlY2xhcmF0aW9ucyBp biBlZGsyLiBUaGUgb3RoZXIgc2V0IGNsZWFucyB1cCBlZGsyLXBsYXRmb3Jtcw0KPiA+PiBzaW1p bGFybHkuIFRoZSBlZGsyIHNldCBpcyBpbnRlbmRlZCB0byBiZSBiaXNlY3RhYmxlLiBUaGUgZWRr Mi0NCj4gPj4gcGxhdGZvcm1zDQo+ID4+IHNldCBjYW4ndCBiZSBsaWtlIHRoYXQgKHNlcGFyYXRl IHJlcG8gYW55d2F5KS4gSSBidWlsZC10ZXN0ZWQNCj4gPj4gZXZlcnl0aGluZw0KPiA+PiB0aGF0 IEkgY291bGQsIGJ1dCB0aGUgY292ZXJhZ2UgaXMgbm90IGNvbXBsZXRlIGluIGVkazItcGxhdGZv cm1zLg0KPiA+Pg0KPiA+PiBOb3RlIHRoYXQgdGhlIHBlcnNvbmFsIGJ1aWxkIChQUiM1MzU0KSBm YWlsZWQuIFRoZSByZWFzb24gaXMgdGhhdCBDSQ0KPiA+PiB1c2VzIGFuIG91dC1vZi10cmVlIEJh c2VUb29scyBpbnN0YWxsYXRpb24gLyBwYWNrYWdlICh2ZXJzaW9uIDAuMS40OA0KPiBhdA0KPiA+ PiB0aGUgbW9tZW50KS4gVGhpcyBqdXN0IGdvZXMgb24gdG8gc2hvdyB3aHkgaXQncyBhIGJhZCBp ZGVhIHRvDQo+IGRldmVsb3ANCj4gPj4gQmFzZVRvb2xzIGluIHNlcGFyYXRpb24gZnJvbSBlZGsy OiBldmVuIHRob3VnaCB0aGUgZWRrMiBzZXJpZXMgKmlzKg0KPiA+PiBmdWxseSBiaXNlY3RhYmxl LCBpdCdzIGltcG9zc2libGUgdG8gZ2V0IGl0IHRocm91Z2ggQ0kgKGJlY2F1c2UgQ0kNCj4gPj4g aWdub3JlcyB0aGUgQmFzZVRvb2xzIHVwZGF0ZSBpbnNpZGUgdGhlIHNlcmllcyk7IGFuZCBpZiB3 ZSBnZXQgdGhlDQo+ID4+IGNlbnRyYWwgQmFzZVRvb2xzIHBhdGNoIGZyb20gdGhlIGVkazIgc2Vy aWVzIGludG8gInRoYXQgb3RoZXIiDQo+ID4+IChzZXBhcmF0ZSkgcHJvamVjdCAqZmlyc3QqLCB0 aGVuIHRoZSBzZXJpZXMgd2lsbCBub3QgYmUgYmlzZWN0YWJsZQ0KPiBhbnkNCj4gPj4gbG9uZ2Vy IChiZWNhdXNlIHRoZSBCYXNlVG9vbHMvQXV0b0dlbiB1cGRhdGUgYXQgdGhlIGZyb250LCB3aXRo b3V0DQo+ID4+IGZ1cnRoZXIgcGF0Y2hlcyBpbiB0aGUgc2VyaWVzIGFwcGxpZWQsIHdpbGwgdHJp Z2dlciBidWlsZCBlcnJvcnMpLg0KPiA+Pg0KPiA+PiBMYXN6bG8NCj4gPg0KDQoNCgotPS09LT0t PS09LT0tPS09LT0tPS09LQpHcm91cHMuaW8gTGlua3M6IFlvdSByZWNlaXZlIGFsbCBtZXNzYWdl cyBzZW50IHRvIHRoaXMgZ3JvdXAuClZpZXcvUmVwbHkgT25saW5lICgjMTE1MjcwKTogaHR0cHM6 Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvMTE1MjcwCk11dGUgVGhpcyBUb3BpYzog aHR0cHM6Ly9ncm91cHMuaW8vbXQvMTA0MjEwNTI0Lzc2ODYxNzYKR3JvdXAgT3duZXI6IGRldmVs K293bmVyQGVkazIuZ3JvdXBzLmlvClVuc3Vic2NyaWJlOiBodHRwczovL2VkazIuZ3JvdXBzLmlv L2cvZGV2ZWwvdW5zdWIgW3JlYmVjY2FAb3BlbmZ3LmlvXQotPS09LT0tPS09LT0tPS09LT0tPS09 LQoKDQo=