From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx.groups.io with SMTP id smtpd.web08.6137.1615280728684795106 for ; Tue, 09 Mar 2021 01:05:28 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=C23fiuBn; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: ray.ni@intel.com) IronPort-SDR: kO/qjEBmJ+dEH2qL8EgOA0ORkmQDw+57ojftPYJzHNhsdr+jNrfdIEPLYNSF/ZedSUrGKllbWo BrcelnboLaDA== X-IronPort-AV: E=McAfee;i="6000,8403,9917"; a="207967971" X-IronPort-AV: E=Sophos;i="5.81,234,1610438400"; d="scan'208";a="207967971" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Mar 2021 01:05:25 -0800 IronPort-SDR: WTE4jh1zK9c0sg5Jiu0Y8ynSGIEQkPTiwc/OIjf1lw0WFvTolbuU+WSjLr9Wh6t35JtEm05Qxz 9DSVHXfs/gzg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,234,1610438400"; d="scan'208";a="437832893" Received: from fmsmsx604.amr.corp.intel.com ([10.18.126.84]) by FMSMGA003.fm.intel.com with ESMTP; 09 Mar 2021 01:05:25 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 9 Mar 2021 01:05:25 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 9 Mar 2021 01:05:24 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Tue, 9 Mar 2021 01:05:24 -0800 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.177) 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.2106.2; Tue, 9 Mar 2021 01:05:21 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dBjV/XOVrVxIYH0vzXt8ZJV9KS09I7GTMAwcN5M4bXglDpZR5xLSyj9skvYwBRuAfoseVtGOe7d5M9LIa6qn/ZFj29lQ5JXOlZkMNLwYUWn3z15oJYkSDNs714g7ptVhSyhKItJqX3HaGhydgg2YkqycYqLjAvCM69cAH72BwzeBeV72mAHFC87+ApEWnSmw7stpGVhOLgfZ5r8YGBMGZl+fPlEeix4BgHmQbcm2Leu8/0q2O91pYCUE5am8TCzUHFJx8+E7mjZXBMkoNXAlOmOTwncRvyPyVYCrR8xYiU5Ccp7rjr4/kMzaKv3PKQWV9YQh4YVh1YnoWzhcZ0mRdw== 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-SenderADCheck; bh=bBMRNW67sd406rKrITzHNSSRaQr71Nm3dSStwTdUug8=; b=XheJguDO3Trm1uYidm4DUavx4e/O0RGP3i72RbqY4qvEm+xuaNZQ5ktRA6JdRVwXGKU1dz67JUeCSE38GKD3OB4scAJpDgB5r6bbe6zWraION9GUMnfFsprlfvC9c0S9U4DJb6qsKmrTgwNhV4EtoD7r7yT58bb8kcRTSUhXtlwk7/sFE5iOfXgYBYee0JE2SRCGpyl2YQARF5h7wMCvOSN42QAeLbhxR3v6ZOy/OBr5QMV22mMPMMD+2SPP2yYNZgwA5muFaIraLNVK0+p1W8Jr/5tfzLPVXgWXSSBsr+4vU2ThKrE3gpgD95l+sf6J3k6nDAx+7zKiHz2ebYp4jw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bBMRNW67sd406rKrITzHNSSRaQr71Nm3dSStwTdUug8=; b=C23fiuBnF+VqAS0NMu0sKmtONVEJhWSlEjdYonTCw3OXWFn5t1YlWa3QrfvS6G5mMLIiaRTYhGgF2ebWNCOOtRrHPTL4SDemlmjPtls3Ihi7mo1IKouMOzw77bHqfIkBpnp2VZ7I8PHnPRByzwfP0PXYjlKBJKAF3+0fCnFIdqM= Received: from CO1PR11MB4930.namprd11.prod.outlook.com (2603:10b6:303:9b::11) by CO1PR11MB5044.namprd11.prod.outlook.com (2603:10b6:303:92::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3912.19; Tue, 9 Mar 2021 09:05:21 +0000 Received: from CO1PR11MB4930.namprd11.prod.outlook.com ([fe80::8d64:91ed:c259:e95]) by CO1PR11MB4930.namprd11.prod.outlook.com ([fe80::8d64:91ed:c259:e95%7]) with mapi id 15.20.3912.028; Tue, 9 Mar 2021 09:05:21 +0000 From: "Ni, Ray" To: "Dong, Guo" , Patrick Rudolph CC: "devel@edk2.groups.io" , "Chaganty, Rangasai V" , "Bi, Dandan" , "Zeng, Star" , "Gao, Zhichao" , "You, Benjamin" , "philipp.deppenwiese@9elements.com" , "Ma, Maurice" Subject: Re: [edk2-devel] [PATCH - resend] MdeModulePkg/Universal/SmbiosDxe: Scan for existing tables Thread-Topic: [edk2-devel] [PATCH - resend] MdeModulePkg/Universal/SmbiosDxe: Scan for existing tables Thread-Index: AQHXDqfJQ3mfUuaKHUOh0HlWMv2zCqpx0qnwgAAhD4CAABaHkIAAhMOAgABghSCACHhDUA== Date: Tue, 9 Mar 2021 09:05:21 +0000 Message-ID: References: <20210301143221.2775162-1-patrick.rudolph@9elements.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-reaction: no-action dlp-product: dlpe-windows authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.217] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3a2a1322-7aba-4da4-7ee2-08d8e2da77ba x-ms-traffictypediagnostic: CO1PR11MB5044: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7691; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8ulGKa0PgcTRE1EdCsyO2GCpPvry8eFPgMAE/plTYz/wgYenEOh2GJgAOcY+h/sELFu3bFEo5Y97GZZNxGi9fnVMGvHJHHbFy7Bng+avoxpgiws6ws9kLTVdi7HE062QW5wd2qQkBH1bibvB8+SSDg/OCYvurcfewhv/nY2pnr+/ysfYTEfjvfePzg4yrUbp1/qYvPJ1dBGmqeHiuYZC0ZioG/G+MkC4PFSI6D0k3lWtRv1jayhnCMlWTWqFd7vt5AAwK11Ox/qNaeR995aRCYnkmfdOdkylLHPNFsnZYrfKfqGM+5k0pdaG79yp2wpqc1LP9ZblkfO481eEqJKAD3lA7I13rRxCG3MCpRzmCYb2mPM/pOdGQMy6qRqgjGM7PMWvDAiMLEstrUsHKF8+19mJG+PlTGWncCqAun+TMLllXE45RCFQn1ZfMXLo64K3ocfr7Wta7a6/eOHaicPqiJ4bkBCEZDw/6zdL/SMmswAbGWIEKEJQX729+Q88zXZUKk2ClLnFGOG7erqNwgBbWqYmLv/GLPHdT6/rYSl5yD4K6lLPEZOBJnHsYEHVB0MwWCz1v6Li81a5iVaRzLgv6g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4930.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(346002)(366004)(136003)(396003)(39860400002)(478600001)(52536014)(316002)(71200400001)(7696005)(5660300002)(9686003)(33656002)(64756008)(19627235002)(26005)(8936002)(83380400001)(186003)(110136005)(54906003)(66476007)(66446008)(107886003)(4326008)(66946007)(86362001)(76116006)(2906002)(66556008)(6506007)(53546011)(55016002)(8676002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?bS9FempNbEU5UXlzdGdtcER5b0VxU2w1U3Zyeldybmg1Ky9FMGlWVmF1ZXBa?= =?utf-8?B?SC93ZUV5WFY3dWtrWUF0akc2VUZxRDdFbWRLVE5qS3B6c3BCa0JkQ0g3eCt3?= =?utf-8?B?L3JQU2Z4QmRXU3lreTVGMUh2bUJlQlAzMUt6aEI4enFXSU44VW96ZGhuM2pL?= =?utf-8?B?dllOQk53dnlNbzVvdy84L3pPVzZFWlhJajNoekVPWjBWWFhPeEdIVzNsZmxJ?= =?utf-8?B?d0tRYzZRbmZNZjVnb0ZJd0NIOHoyNWxZZndkY3M1K2RUSDNCZU9PV3NONnlV?= =?utf-8?B?cENlS2dJZFBsbzE4OFdJWEluTEplUkJUYUh0TEJGMnNYK0NkVWo2b2Iwc1hE?= =?utf-8?B?eFdLT2JNMGE3TGptbDRYNGJsV2dOOC9IdUp5R0szTVZBUXpGYWdGSWt1NGxT?= =?utf-8?B?SldnQVdGS1NZUUIwNXYrSGw5alI1c1FvekZsNmRBelU3TUpSU2VEM0FIZkE4?= =?utf-8?B?VVZPcUs0N081VGFLdEpremJucFZqL3FqbjNoWkJsdXNvS1hjQUtnSFVLTitw?= =?utf-8?B?T0ExbnRIcTRYZ2xVZUdobEJueE1xeEcvVUNwbkVMeVpkeU9hYS9ZRk9URjlQ?= =?utf-8?B?M21DR1E0dVpWcy8wNGtuTngvL0t2b0VsRnY2ektjTGQ3dE5iNmNqOE05Qkpu?= =?utf-8?B?WUdmdysyY1BtQXdNZEtpd1RJeHovTDVYSlQ3dXJJeE1mbGd1ZEZZK3FJbnYw?= =?utf-8?B?NFFXMzVxU1huS1ZnOHBtOTFkODNVUGpqSnRsclpnb1lIVzV3OEFiYVoyaHQz?= =?utf-8?B?dGNOYTl4Y2VkeDV6OUUveXRHMVNqSTMvMkNSYlJwLzdJcGMyVFUzTTZCUmp3?= =?utf-8?B?Z0N1dGQ4aXJOL05DdUhhRExtT0Y2YnJ0QnFvUkNwaGJ4OHB2NjB1UWxHM0lO?= =?utf-8?B?d1BxbTk2eklZVk1BeWFHcUlkRCtJS3grdWVuR2ZoalNWRm5DNjhjUW1IcVhS?= =?utf-8?B?UWNlOWg4KzJ4RFliTFR1RjdZNC92czlTbWlKaE0vL211QlUzbGlKSlVXVGQ2?= =?utf-8?B?R3RFOEdZWDRPdWFMcjlIekU0TzRQeDZ0NUZzYS91eEEyc04raEdaWk1Td3hY?= =?utf-8?B?THd2WFBmekhuS29LajlwTWJoSENIOWJKMGZZSldmdFFRbHVaSTkrbkR1OU5C?= =?utf-8?B?UlpEMjNnQngyK0k4bXc4MXI4cVRqVEhkU1l2ejBBV3VHOXhpSW9nSXlIZWNx?= =?utf-8?B?aW9zV1B5UTdYRWwwVG5reHhBZEdNY3dKWStTSW1uVFBlZmxsSXhmUHpPd3VQ?= =?utf-8?B?L3hPWWY5WjA5ak1Ucktqa3F5dzJpT2lpYjRQK2J2MU5qeGs0N09yN2tCR3Nt?= =?utf-8?B?SEJaUmhRUTdGUXEyd040T0JkYlBSODFLQkVHV1dLNlpIOFZJMUwrMDdRM0xu?= =?utf-8?B?WDdPWjNHK1ZJaTNjSzZZeDlFTFRuUHluZ2FrOXVwKzREZjhCQzdxT2ZOVWdq?= =?utf-8?B?VU1DVXd0R25FaFNUbmgzWTlxcm5DSU5WT2wwVVF0Q3J4WG4wQnl4bkFqQ3Zq?= =?utf-8?B?OWJjU0NBTkJpOTJnQmFwbmxMQzliYUlXZHJHalpSUElwTnJUTFpvR3ZWaSsw?= =?utf-8?B?TlM5S3Y0a2ZSb1FMYURFbXRqc3UzdkVCK3c1M3hFQmFlaUowOHhHUDBZMjlE?= =?utf-8?B?NlhWMnUvMGhYQzZUUFFudmNRK0VLZUJ6cEMrZ0JwUDVQSHplaldvcy9saTd5?= =?utf-8?B?ZkJYNkdOWG5YUzBST0VMaVFHYTU4cnVUMjFvV2xybTE5L0FSQUJJbjdUbUps?= =?utf-8?Q?nWbno6HluTutMKBKn8+HU9pa+QPdzikqbP2mO/j?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4930.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a2a1322-7aba-4da4-7ee2-08d8e2da77ba X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Mar 2021 09:05:21.0999 (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: Y2tbj3UgTNwKP5KZd3Wt9Nfiut741y6VmVWGJqSTDMjBdB71fLc6PJLGnCE7RL/dKuldGJAr/ZJGNGAnkaZgIA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5044 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UGF0cmljaywNCkNhbiB5b3UgcGxlYXNlIHNlbmQgb3V0IGEgbmV3IHBhdGNoIHdoaWNoIG1vZGlm aWVzIFNtYmlvc0R4ZSB0byBjb25zdW1lIC4uLj8NCjEuIEEgc2luZ2xlIGdFZmlTbWJpb3MzVGFi bGVHdWlkIEhPQiB3aGljaCBjb250YWlucyB0aGUgd2hvbGUgU01CSU9TIHRhYmxlIChzdGFydGlu ZyB3aXRoIFNNQklPU19UQUJMRV8zXzBfRU5UUllfUE9JTlQpLCBvcg0KMi4gQSBzaW5nbGUgZ0Vm aVNtYmlvc1RhYmxlR3VpZCBIT0Igd2hpY2ggY29udGFpbnMgdGhlIHdob2xlIFNNQklPUyB0YWJs ZSAoc3RhcnRpbmcgd2l0aCBTTUJJT1NfVEFCTEVfRU5UUllfUE9JTlQpLg0KDQpUaGUgY29kZSBj aGFuZ2UgdGhhdCBjb25zdW1lcyBtdWx0aXBsZSBnRWRraWlTbWJpb3NTdHJ1Y3R1cmVHdWlkIEhP QnMgd2hpY2ggY29udGFpbnMgYW4gaW5kaXZpZHVhbCBTTUJJT1Mgc3RydWN0dXJlIChzdGFydGlu ZyB3aXRoIFNNQklPU19TVFJVQ1RVUkUpIGNhbiBiZSBkb25lIGxhdGVyLg0KDQpUaGFua3MsDQpS YXkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBOaSwgUmF5DQo+IFNl bnQ6IFRodXJzZGF5LCBNYXJjaCA0LCAyMDIxIDk6MDMgQU0NCj4gVG86IERvbmcsIEd1byA8Z3Vv LmRvbmdAaW50ZWwuY29tPjsgUGF0cmljayBSdWRvbHBoIDxwYXRyaWNrLnJ1ZG9scGhAOWVsZW1l bnRzLmNvbT4NCj4gQ2M6IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBDaGFnYW50eSwgUmFuZ2FzYWkg ViA8cmFuZ2FzYWkudi5jaGFnYW50eUBpbnRlbC5jb20+OyBCaSwgRGFuZGFuIDxkYW5kYW4uYmlA aW50ZWwuY29tPjsgWmVuZywNCj4gU3RhciA8c3Rhci56ZW5nQGludGVsLmNvbT47IEdhbywgWmhp Y2hhbyA8emhpY2hhby5nYW9AaW50ZWwuY29tPjsgWW91LCBCZW5qYW1pbiA8YmVuamFtaW4ueW91 QGludGVsLmNvbT47DQo+IHBoaWxpcHAuZGVwcGVud2llc2VAOWVsZW1lbnRzLmNvbTsgTWEsIE1h dXJpY2UgPG1hdXJpY2UubWFAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxd IFtQQVRDSCAtIHJlc2VuZF0gTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TbWJpb3NEeGU6IFNjYW4g Zm9yIGV4aXN0aW5nIHRhYmxlcw0KPiANCj4gVG8gYmUgc3BlY2lmaWMsIHRoZSByZWFzb25zIEkg bGlrZSB0byB1c2UgbXVsdGlwbGUgSE9CcyBlYWNoIGNvbnRhaW5pbmcgYSBTTUJJT1Mgc3RydWN0 dXJlIGFyZToNCj4gMS4gQSB3ZWxsIG1vZHVsYXJpemVkIGJvb3Rsb2FkZXIgbWF5IGhhdmUgb25l IG1vZHVsZSBwcm9kdWNpbmcgdHlwZSA0IHN0cnVjdHVyZSwgYW5vdGhlciBtb2R1bGUgcHJvZHVj aW5nIHR5cGUgMTkgc3RydWN0dXJlLg0KPiAyLiBUcnkgdG8gdGhpbmsgYWJvdXQgd2hhdCB0aGUg b3B0aW1hbCBkZXNpZ24gY291bGQgYmUgcmVnYXJkaW5nIHRoZSB1bml2ZXJzYWwgcGF5bG9hZCBz cGVjDQo+IChodHRwczovL3VuaXZlcnNhbHBheWxvYWQuZ2l0aHViLmlvL2RvY3VtZW50YXRpb24v c3BlYy9zcGVjLmh0bWwpLiAoVGhlIHNwZWMgaXMgbm90IHdpZGVseSBhY2NlcHRlZCBhbmQganVz dCBhbiBSRkMuKQ0KPiANCj4gVGhlcmUgYXJlIHR3byBzdHlsZSBvZiBjb25zdW1lciBjb2RlOg0K PiBBLiBTbWJpb3NEeGUgY29uc3VtZXMgYSBHdWlkIEhPQiB3aGljaCBjb250YWlucyBhIGZ1bGwg U01CSU9TIHRhYmxlLg0KPiBCLiBTbWJpb3NEeGUgY29uc3VtZXMgbXVsdGlwbGUgR3VpZCBIT0Jz IGVhY2ggY29udGFpbnMgYSBTTUJJT1Mgc3RydWN0dXJlLg0KPiANCj4gVGhlcmUgYXJlIHR3byBv cHRpb25zIG9mIGltcGxlbWVudGF0aW9uczoNCj4gMS4gU3VwcG9ydCBzdHlsZSBBIGZvciBjb3Jl Ym9vdCBhbmQgZXh0ZW5kIHRvIHN0eWxlIEIgZm9yIG1vcmUgYm9vdGxvYWRlcnMuDQo+IDIuIFN1 cHBvcnQgc3R5bGUgQiBvbmx5LiBQYXlsb2FkRW50cnkgYnJlYWtzIHRoZSBjb3JlYm9vdCBTTUJJ T1MgdGFibGUgdG8gbXVsdGlwbGUgR3VpZCBIT0JzIGVhY2ggY29udGFpbnMgYSBTTUJJT1Mgc3Ry dWN0dXJlLg0KPiANCj4gRWl0aGVyIG9wdGlvbiB3b3JrcyBmb3IgbWUgdGhvdWdoIEkgd2lsbCBi ZSBtb3JlIGNvbWZvcnRhYmxlIGlmIGNob29zaW5nIDIuIPCfmIoNCj4gDQo+IFRoYW5rcywNCj4g UmF5DQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogRG9uZywg R3VvIDxndW8uZG9uZ0BpbnRlbC5jb20+DQo+ID4gU2VudDogVGh1cnNkYXksIE1hcmNoIDQsIDIw MjEgMTo1NCBBTQ0KPiA+IFRvOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgUGF0cmljayBS dWRvbHBoIDxwYXRyaWNrLnJ1ZG9scGhAOWVsZW1lbnRzLmNvbT4NCj4gPiBDYzogZGV2ZWxAZWRr Mi5ncm91cHMuaW87IENoYWdhbnR5LCBSYW5nYXNhaSBWIDxyYW5nYXNhaS52LmNoYWdhbnR5QGlu dGVsLmNvbT47IEJpLCBEYW5kYW4gPGRhbmRhbi5iaUBpbnRlbC5jb20+OyBaZW5nLA0KPiA+IFN0 YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+OyBHYW8sIFpoaWNoYW8gPHpoaWNoYW8uZ2FvQGludGVs LmNvbT47IFlvdSwgQmVuamFtaW4gPGJlbmphbWluLnlvdUBpbnRlbC5jb20+Ow0KPiA+IHBoaWxp cHAuZGVwcGVud2llc2VAOWVsZW1lbnRzLmNvbTsgTWEsIE1hdXJpY2UgPG1hdXJpY2UubWFAaW50 ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIC0gcmVzZW5kXSBN ZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1NtYmlvc0R4ZTogU2NhbiBmb3IgZXhpc3RpbmcgdGFibGVz DQo+ID4NCj4gPg0KPiA+IGhpIFJheSwNCj4gPg0KPiA+IEp1c3Qgc2F3IHRoZSBkaXNjdXNzaW9u IG9uIHRoaXMgcGF0Y2guDQo+ID4gQm90aCBjb3JlYm9vdCBhbmQgU0JMIHdvdWxkIGJ1aWxkIHRo ZSB3aG9sZSBTTUJJT1MgdGFibGUgYW5kIHJlcG9ydCBpdCB0byBwYXlsb2Fkcy4NCj4gPg0KPiA+ IEZvciBVRUZJIHBheWxvYWQsIEkgdGhpbmsgaXQgaXMgbm90IG5lY2Vzc2FyeSB0byBsZXQgb3Ro ZXIgZHJpdmVyIChCbFN1cHBvcnREeGUpIHRvIHNwbGl0IHRoZSB3aG9sZSBTTUJJT1MgdGFibGUg aW50byByZWNvcmRzLg0KPiA+IEkgd291bGQgcHJlZmVyIFNNQklPUyBEWEUgZGl2ZXIgY291bGQg c3VwcG9ydCB0aGUgd2hvbGUgU01CSU9TIHRhYmxlIGZyb20gUEVJL2Jvb3Rsb2FkZXIuDQo+ID4g QnV0IGl0IGlzIGFsc28gcG9zc2libGUgdG8gc3VwcG9ydCBpbmRpdmlkdWFsIHJlY29yZHMgaWYg cmVxdWlyZWQgYnkgY2hlY2tpbmcgQW5jaG9yU3RyaW5nIHRvIGtub3cgaWYgaXQgaXMgd2hvbGUg dGFibGUuDQo+ID4NCj4gPiBUaGFua3MsDQo+ID4gR3VvDQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPg0K PiA+ID4gU2VudDogV2VkbmVzZGF5LCBNYXJjaCAzLCAyMDIxIDM6MDQgQU0NCj4gPiA+IFRvOiBQ YXRyaWNrIFJ1ZG9scGggPHBhdHJpY2sucnVkb2xwaEA5ZWxlbWVudHMuY29tPg0KPiA+ID4gQ2M6 IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBDaGFnYW50eSwgUmFuZ2FzYWkgVg0KPiA+ID4gPHJhbmdh c2FpLnYuY2hhZ2FudHlAaW50ZWwuY29tPjsgQmksIERhbmRhbiA8ZGFuZGFuLmJpQGludGVsLmNv bT47IFplbmcsDQo+ID4gPiBTdGFyIDxzdGFyLnplbmdAaW50ZWwuY29tPjsgR2FvLCBaaGljaGFv IDx6aGljaGFvLmdhb0BpbnRlbC5jb20+OyBZb3UsDQo+ID4gPiBCZW5qYW1pbiA8YmVuamFtaW4u eW91QGludGVsLmNvbT47DQo+ID4gPiBwaGlsaXBwLmRlcHBlbndpZXNlQDllbGVtZW50cy5jb207 IE1hLCBNYXVyaWNlDQo+ID4gPiA8bWF1cmljZS5tYUBpbnRlbC5jb20+OyBEb25nLCBHdW8gPGd1 by5kb25nQGludGVsLmNvbT4NCj4gPiA+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENI IC0gcmVzZW5kXQ0KPiA+ID4gTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TbWJpb3NEeGU6IFNjYW4g Zm9yIGV4aXN0aW5nIHRhYmxlcw0KPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gSGkgUmF5LA0KPiA+ ID4gPiB0aGFua3MgZm9yIHlvdXIgZmVlZGJhY2suDQo+ID4gPiA+DQo+ID4gPiA+IEN1cnJlbnRs eSBhIHNpbmdsZSBIT0IgY29udGFpbmluZyBhbGwgdGhlIFNNQklPUyB0YWJsZSBpcyBleHBvcnRl ZCBieQ0KPiA+ID4gPiBjb3JlYm9vdC4NCj4gPiA+ID4gQXMgY29yZWJvb3QgZG9lc24ndCBzdXBw b3J0IG11bHRpcGxlIEhPQnMgd2l0aCB0aGUgc2FtZSBJRCwgIzIgaXNuJ3QgYQ0KPiA+ID4gPiBz b2x1dGlvbi4NCj4gPiA+DQo+ID4gPiBIaSBQYXRyaWNrLA0KPiA+ID4gSSBjaGVja2VkIHRoZSBj b2RlIGluIGRlZXAuDQo+ID4gPiBUaGUgSE9CIGlzIG5vdCBjcmVhdGVkIGJ5IGNvcmVib290LiBJ dCdzIHRoZSBQYXlsb2FkRW50cnkgdGhhdCBjcmVhdGVzIHRoZQ0KPiA+ID4gSE9CLg0KPiA+ID4g Q2FuIHdlIHVwZGF0ZSBQYXlsb2FkRW50cnkgdG8gY3JlYXRlIG11bHRpcGxlIEhPQnM/DQo+ID4g Pg0KPiA+ID4gR3VvLA0KPiA+ID4gQW55IGNvbW1lbnRzPw0KPiA+ID4NCj4gPiA+IFRoZSByZWFz b24gSSBsaWtlIHRoaXMgYXBwcm9hY2ggaXMgaXQgZG9lc24ndCByZXF1aXJlIHRoZSBvdGhlciBi b290bG9hZGVycyB0bw0KPiA+ID4gd3JpdGUNCj4gPiA+IGEgU01CSU9TIGRyaXZlciB0aGF0IG1l cmdlcyBhbGwgU01CSU9TIHN0cnVjdHVyZXMgdG9nZXRoZXIgaW50byBvbmUgdGFibGUuDQo+ID4g Pg0KPiA+ID4gVGhhbmtzLA0KPiA+ID4gUmF5DQo=