From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web12.2037.1665448608420747732 for ; Mon, 10 Oct 2022 17:36:48 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=ZSWvgz8B; spf=pass (domain: intel.com, ip: 192.55.52.43, mailfrom: jiewen.yao@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1665448608; x=1696984608; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=vNFCwF/0w/ZZjBfwiMdesj3PeX4MWiUqMdgJGw9r/v4=; b=ZSWvgz8BaMaDqpDs0KFvc9tdOg2PLt12aW2FPMcMzCROnD4i/iD+PpJb iDq1ADzSz+jbO7eoAyqTpzhIp+GiNQIuXiosa994s0LdDtW7yuaBU4dLq Ycl9Evez8gv3nQy3swF0LezgImYZ/0CAwI5RUYU5Dc3aDCZtRJ+gOACPs J4CNUb1SKoLBAgX+8Iw6cRdlfP62C6nL4ulzlpyRfkhl0Ioy5QLJGZRlH GAF8MS0OQOQs3yLluDCWB/s8mYwcJW1O1G9gO2oD+R6W0EntOlHgkkwmU 74NluHNuf+lY6PwTGUXj8OPB6PclUwPDLEmJVyLalx/UkyPVxqd/PkQYS A==; X-IronPort-AV: E=McAfee;i="6500,9779,10496"; a="390677139" X-IronPort-AV: E=Sophos;i="5.95,173,1661842800"; d="scan'208";a="390677139" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Oct 2022 17:36:30 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10496"; a="689014709" X-IronPort-AV: E=Sophos;i="5.95,173,1661842800"; d="scan'208";a="689014709" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga008.fm.intel.com with ESMTP; 10 Oct 2022 17:36:30 -0700 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 10 Oct 2022 17:36:29 -0700 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 10 Oct 2022 17:36:29 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Mon, 10 Oct 2022 17:36:29 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.173) 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.2375.31; Mon, 10 Oct 2022 17:36:29 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=l7C/jp/gBNHRQzeSgVY4KR9fCvW+urq/1xThrrpHOi6HWdySQxruFo7LyxBJoY8/9XQ6fUzS3yiw7AkFyMxLDmuqs9/pWdazEU9c/BiW/2seW9+noirCeO/TJ+zVWDprjUbxCCbVi8KFmMbWjA6pgqix/R3GvkDtyDd9zXUlSArklgQjpUrlqA++PjAjlTShtNSgJjbL84eKf3zD/z2mfmzB6ISBU46g4/LLLK8wkLHomer955vlHJ7X5tj2cVad6NknSm3NZ+KrWDZD5zpRSM+11sVgzKatFYE9wWD12c77mKsNO60xlwu7de9DgS2Dy4CtwaG0P6miMJZYZiNh3w== 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=vNFCwF/0w/ZZjBfwiMdesj3PeX4MWiUqMdgJGw9r/v4=; b=Be9d9XnBE7VbjD97VnKE2WNrk0/kA4eeOTwJXYLM1tW31EvO1V4vIEuYVo23MfK70OaqK9KhAtwm0YvM44H0lRNtDF30nzmZbeFeSt71F0jBeI4/h9Tsu+mKXqj4fPdsqq9Ig1farW/IUGmDDr2u0hKMi6RBriwM775EK3LXiIr73rkoqmfVfTZBA3xfK12jQtyBwuNIeAgAyKEZkwqLR7d8F0IEAV9bbeq8NQrcio4qwgMvbvT/vCrAjcrnupzwWW9TaMebJlpuvSiWd8QXZThrlGgYk/Hn74nPB3pbtY65xP8Rzd4T1sEK8UKF33MwohKzTAh+IPF86ACy4B51wg== 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 MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by BN9PR11MB5418.namprd11.prod.outlook.com (2603:10b6:408:11f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5709.15; Tue, 11 Oct 2022 00:36:22 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::76b0:750c:a322:5acf]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::76b0:750c:a322:5acf%6]) with mapi id 15.20.5709.015; Tue, 11 Oct 2022 00:36:21 +0000 From: "Yao, Jiewen" To: Sean Brogan , "devel@edk2.groups.io" , "Zhang, Qi1" CC: "Wang, Jian J" , "Lu, Xiaoyu1" , "Jiang, Guomin" Subject: Re: [edk2-devel] [PATCH V2 0/4] CryptoPkg: add more X509 functions. Thread-Topic: [edk2-devel] [PATCH V2 0/4] CryptoPkg: add more X509 functions. Thread-Index: AQHY3JwGCmIxAN+VVkKk4pgOrzJWSa4IHZ4AgAA3bRA= Date: Tue, 11 Oct 2022 00:36:21 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.500.17 dlp-product: dlpe-windows dlp-reaction: no-action 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: MW4PR11MB5872:EE_|BN9PR11MB5418:EE_ x-ms-office365-filtering-correlation-id: dd15d7cc-1dc2-4630-15f1-08daab209ed1 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: P2TRyF527fSXRnEgWlxVxhQ7hoEVTjEahpoKgODnlJuDJV9grxwtJUMU6V/3SVUHXttTIPCrK/1J1DWroMf4w1hTKzmKxNNOjX2phHX6jsH4ZMSerWO+8PW1nKxMbtYSJGp8V2z2m98RHWBS4pyeIntu1FeWdXKoq2tYS9TA8O17rBbsQXoec5Oclv/qdY2/DGSQBFVmfxZxDL6TmqmE5h25Y5DFMqYIGT3kHWgYSYv50PZK1zeYj4fpRSwgocaeZOvmF5TtepzdoX9gspb/7UPmgkoCh4m2EPppEq+E0i/ldUxuhyNGS/+rj415p8+yaZ61Bh5cv+AkSisy6nfgKTe7GyeE2Ts4lVyyAckvj5ot3Nehsr5fsqwTBqRqcw+aBKj95b0FXK4JoHmPzrbkGS3r9CYeyUNlCoXrRDp1qeb/J5lUC+2o/RSuhUmfzQ8ilwHRgPkgoGAe5FdjU4zPzJlP/k8JAs/KJ29sVujq46e3GQ/MKUl57TCcaJ/gjRZ5F3+aEveprQg/Pf4diactEG9pEgf9aaiSf3wUsg6peD2YCMW5ZbFfimGrv/FwsmDlCXN+YIapeFSPkSBEhcmTmlWo/s2TwurD11coYGPgK++s8rjas4FNIS/mFPFjl/lvTJ5M0bbBK5Vl8BBu/6u706u2hncT+zetgcCWC7xFiD0LaiJATGMdn34R0QEqttq+j3VdIiiHPqoWWQnXVupr01zfeWLcICxfKWWh8gRBREfOpkhMKdeLrVt2FPEyMVTPaBbeBP1V5HFLCrlmW5XSNMD9Lnrm29/Y+UPwqAzO3iqxCpafxBez7OYh7+YnwAbvxbM0iP7uTSvAVc0Lip0zXg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5872.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(136003)(346002)(376002)(39860400002)(396003)(366004)(451199015)(55016003)(316002)(107886003)(7696005)(71200400001)(6506007)(8676002)(38100700002)(966005)(478600001)(66476007)(76116006)(64756008)(2906002)(5660300002)(53546011)(4326008)(66556008)(66446008)(66946007)(122000001)(86362001)(52536014)(8936002)(41300700001)(38070700005)(19627235002)(82960400001)(6636002)(33656002)(54906003)(110136005)(186003)(83380400001)(9686003)(26005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SjU1YjdVSW15bmdWUlYybVNJWUR5VllVejFHUEtTUEUwdjBTOVhMZE1Ncmp2?= =?utf-8?B?OWt3N1QrdzF1ZCttZm5SY0hXdDBnQWxmQlFzMTJPWWI2R2lSL1RmTGhlN04x?= =?utf-8?B?WjZ1RlJxSUpKNzdGWEtvVS9NOVdENmVDQTlGNHF6MFkvMk9tKzc5NWFJc2ZM?= =?utf-8?B?SU8xWCs2TlAvejNMVVJDVFcyeFVlVVpuUEpqbkZWVXBLU1RuaStFT3VHMnFZ?= =?utf-8?B?YkpLaVc2QUFTNTU2M2RMNU9JTnpNdjBaMW4xb1p3U3BGOE1NTDNxMktLZzhH?= =?utf-8?B?R1JLNmtJeFRyajhrTVYwOHJrckNIMkt0NWhJRFE3Q2RnMSsyeUI4UHlGSmNq?= =?utf-8?B?MTNCY3BRNURsbzJ4YnNwcXgxUnU5WTV5QjJ6L2ZTbWZDUjI1NVUrNjhXY0JS?= =?utf-8?B?NUZ4UDRvZTduVWNxWDRmWEJ3ZjRoY25BQUpEbjFSL1g0M0twS3V2ejM4cTVh?= =?utf-8?B?ZVdMbjFIU29hWDQ5QzhqUzF4Q1lNK3RLUFZGRGFYTGt0Q21JdVVkS0c2U3ox?= =?utf-8?B?TFpJSHE5SkNjOGVhS2NRdFVCTkNOS3A4UUZRL214K2toWlFRSmdpaktZMk9m?= =?utf-8?B?UXd1dXhlRDIwbWYyTFVPZDZkWmIwbXlRck9xeUd4cWtSRDVqdi9iaTh6WDhp?= =?utf-8?B?Zm9MYnVZeTA3THRmczM1TXRaLzA5VEliZG41eE93a2l6dUhDTEVhcDFKTEhD?= =?utf-8?B?MFFML2E4SkZSeGxmdmk0Z1dTeFVVZlpPVzh3elF1ZEh4T0RySkpEZjRYaGIz?= =?utf-8?B?czQwNDIrQy9zQXAwOVhzNVJzQ1MwbTBPaVBTcm03bFpQUEhIaENWUUF1NlVv?= =?utf-8?B?YktDbENic05SejBqc29sOEVXcE02QVB3UkxHT1B1THNiUE5uT1loTk55VVJt?= =?utf-8?B?TUhoQXEvYy9iR1pPd1ZLMVJpcFRmN0pWMEQvZzJJOG1VUkJaMWNnSDBaYXRv?= =?utf-8?B?Z0hsK1M5bUdQNVpjK2pnV2NYZGRCUXJLWDhabzk2NkE1L2FsbnUrOWxmZHVs?= =?utf-8?B?ejNBUk5DaGIxUjUzMjVyNkpHTjFMUmJpbitUT25RdDhzNjZxSW11ODBQZHM2?= =?utf-8?B?TkRTSmdLc0FoZlZQd0hOYTJZcGVXSkRXdnREQjZKQWJVOFBWRFRxM2ptaXAw?= =?utf-8?B?Qmx5SW9MeGtIZDdQZFVISllFREZQSHl4YmV5cHdheThDZ2xvSURZWUdwK2h5?= =?utf-8?B?YkNiWnc2aUpQMUdwRlpZMGhYSUxiaUhpM2J3L1VtQVN5YUVDUi9reUluSTkr?= =?utf-8?B?SHR3L1JZQTA5dDNLQ2ZJTnV2Z3NLZW1rbk9JYURaWm5MWXJxZ09DYnJLWkJy?= =?utf-8?B?WW42VDlWbTRVT3pVbGJBNVFCbWxqK096OWNKY0Yva3N1LzlRRHMyRXBGRWxV?= =?utf-8?B?Y2NFRmRLQ0xTYXYwN0dxL1BieUF3WHNTTW8zcWtCek4rdHpBOE5OcmpKdGpF?= =?utf-8?B?L2habFVhQktBT3Y4ektONW1iWlFJVUx0cEk3dWlvN1hvTFdzV0JleVhrZGxT?= =?utf-8?B?VkR4ek41WDR5ZlFnYkQ3WmpJV0NvVHo3OU9kcmZTU2RCeWgvWVJQRy9GbWN5?= =?utf-8?B?T0RPMnVKSTlxOU5Kb2tva0FkcGN5MHNBYWpGbUZXZnVWY0ZNV1BhVEs4ZXVI?= =?utf-8?B?MU9YMVFrVlJ5NWhYa1F4V2N6WW9URjFEYVJWdnRUU0NnWWxrR0g2N3loSGxq?= =?utf-8?B?d3h1Q2NNMzFmcXJCYkxGRGhRQld5NzlRMnc5WUk3YStncXpSa2RhNURvZG5B?= =?utf-8?B?ZTJTOS9TcUl5NWZtaXZlQW9uR1Z3RWhvYnZIUWFGMjM2b1RTd2VHc21qSDkx?= =?utf-8?B?OHY5YnUvYmtnUVdqZWdjcTVSemdNZWx6SWFNR2xMdGJDMnBha3FrL1ZBSTRF?= =?utf-8?B?SE1FZ2RWZXhyRDlBcmhPQ3Z6S0JUQXEwc2U2aW5aMnlnRnY1UlN6Ym9ST1J6?= =?utf-8?B?ckNINFlTYmJpdTE5cFN5Nk9LNEUzKy9qRFdWUU84Y1JzRWw5SjZ6c0JrNDN4?= =?utf-8?B?aXo4Vk5OUXJXNkVzbUFUcU5naG9RNGdaY2N6S2U2RW9kNjM4MHgvU2c1RW9q?= =?utf-8?B?TWJnM1RzZ2pNbTZ0SnpJTGRzd2R4ZGNPRmZjdm1NSlNsczN0VGdSUk1jQ3lu?= =?utf-8?Q?vCd54lBwUvRHINC3NsFW5HG7K?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5872.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: dd15d7cc-1dc2-4630-15f1-08daab209ed1 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Oct 2022 00:36:21.7840 (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: xRjniVhhKbXQj2Mip4n0cEp/ECvrLig+9hu34ehucqvMOKT/NdKf6pjRBni5sykpW2l91Rz+RAi9aHYNHWxdVQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR11MB5418 Return-Path: jiewen.yao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SEkgU2Vhbg0KWW91IGFyZSByaWdodCB0aGF0IHRoZSBwdXJwb3NlIGlzIE5PVCB0byBleHBvc2Ug KmFsbCogQVBJcy4gT3VyIHB1cnBvc2UgaXMgc3RpbGwgdG8gZXhwb3J0ICpuZWNlc3NhcnkqIEFQ SXMgb25seS4NCg0KVGhpcyBYLjUwOSBpcyBmb3IgU1BETSBzdXBwb3J0LiAoaHR0cHM6Ly93d3cu ZG10Zi5vcmcvZHNwL0RTUDAyNzQpLiBUaGUgQklPUyBtYXkgbmVlZCBjb2xsZWN0IHRoZSBkZXZp Y2UgaWRlbnRpdHkgKGNlcnRpZmljYXRlKSBhbmQgdmFsaWRhdGUgdGhlIGludGVncml0eSBvZiB0 aGUgY2VydGlmaWNhdGUgY2hhaW4uDQoNCkFzIHN1Y2gsIHRoZSBCSU9TIHdpbGwgY2hlY2sgdGhl IGRldmljZSBjZXJ0aWZpY2F0ZSBiYXNlZCB1cG9uIHRoZSBkZWZpbml0aW9uIGluIFNQRE0gc3Bl Y2lmaWNhdGlvbi4NCkZvciBleGFtcGxlLCBTUERNIDEuMi4xIChodHRwczovL3d3dy5kbXRmLm9y Zy9zaXRlcy9kZWZhdWx0L2ZpbGVzL3N0YW5kYXJkcy9kb2N1bWVudHMvRFNQMDI3NF8xLjIuMS5w ZGYpIC0gMTAuOC4yIFNQRE0gY2VydGlmaWNhdGUgcmVxdWlyZW1lbnRzIGFuZCByZWNvbW1lbmRh dGlvbnMsIFRhYmxlIDMzIOKAlCBSZXF1aXJlZCBmaWVsZHMsIFRhYmxlIDM0IOKAlCBPcHRpb25h bCBmaWVsZHMuDQoNCg0KVG8gc3VtbWFyaXplIG91ciByZWNlbnQgY2hhbmdlOg0KMSkgRUNDIGlu IE9wZW5zc2xMaWIgaXMgdG8gc3VwcG9ydCBtb3JlIFRMUyBjaXBoZXIgc3VpdGUNCjIpIEVDQyAo RUMtREgpLCBCaWdOdW1iZXIgYW5kIFRMUyBuZXcgQVBJcyBpbiBCYXNlQ3J5cHRvTGliIGFyZSB0 byBzdXBwb3J0IFdQQTMNCjMpIFNIQS0zODQgKEhNQUMvSEtERiksIEVDRFNBLCBBRUFEIChBRVMt R0NNKSBhbmQgWC41MDkgbmV3IEFQSXMgaW4gQmFzZUNyeXB0b0xpYiBhcmUgZm9yIFNQRE0uDQoN CkFsbCBmdW5jdGlvbnMgYXJlIGFzc29jaWF0ZWQgd2l0aCBQQ0QgZmFtaWx5IGJpdC4gRm9yIG9s ZCBwbGF0Zm9ybSwgaWYgdGhpcyBuZXcgZmVhdHVyZSBpcyBub3QgcmVxdWlyZWQsIHRoZXkgY2Fu IGp1c3QgYmUgdHVybmVkIG9mZi4NCldlIGFsc28gZXZhbHVhdGVkIHRvIGltcGxlbWVudCBzYW1l IEFQSSB3aXRoIG90aGVyIGNyeXB0byBsaWIsIHN1Y2ggYXMgbWJlZHRscy4gSXQgaXMgYWxzbyBm ZWFzaWJsZS4gQXMgc3VjaCwgdGhvc2UgQVBJcyBhcmUgb3BlbnNzbC1hZ25vc3RpYy4NCg0KVGhh bmsgeW91DQpZYW8gSmlld2VuDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJv bTogU2VhbiBCcm9nYW4gPHNwYnJvZ2FuQG91dGxvb2suY29tPg0KPiBTZW50OiBUdWVzZGF5LCBP Y3RvYmVyIDExLCAyMDIyIDU6MDEgQU0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBaaGFu ZywgUWkxIDxxaTEuemhhbmdAaW50ZWwuY29tPg0KPiBDYzogWWFvLCBKaWV3ZW4gPGppZXdlbi55 YW9AaW50ZWwuY29tPjsgV2FuZywgSmlhbiBKDQo+IDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBM dSwgWGlhb3l1MSA8eGlhb3l1MS5sdUBpbnRlbC5jb20+OyBKaWFuZywNCj4gR3VvbWluIDxndW9t aW4uamlhbmdAaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCBW MiAwLzRdIENyeXB0b1BrZzogYWRkIG1vcmUgWDUwOQ0KPiBmdW5jdGlvbnMuDQo+IA0KPiBDYW4g eW91IHByb3ZpZGUgc29tZSBjb250ZXh0IGFzIHRvIHdoeSB3ZSBuZWVkIHRvIG1ha2UgYWxsIHRo ZXNlIHg1MDkNCj4gZnVuY3Rpb25zIGV4dGVybmFsPw0KPiANCj4gQmFzZUNyeXB0TGliIHdhcyBp bnRlbmRlZCB0byBzaW1wbGlmeSBjcnlwdG8gdXNhZ2UgYW5kIG5vdCBiZSBhIGZ1bGwNCj4gZmVh dHVyZWQgY3J5cHRvIGxpYnJhcnkgaW50ZXJmYWNlLg0KPiANCj4gQXQgc29tZSBwb2ludCB3ZSBt aWdodCBhcyB3ZWxsIGp1c3Qgb3BlbiB1cCB0aGUgb3BlbnNzbCBleHBvcnQgdGFibGUgYW5kDQo+ IHdyYXAgdGhhdCBpbiBhIGR5bmFtaWNhbGx5IGdlbmVyYXRlZCBwcm90b2NvbC9wcGkuDQo+IA0K PiBJZiB0aGlzIGlzIGludGVuZGVkIHRvIG1ha2UgYW4gRWRrMiBjcnlwdG8gbGlicmFyeSBhcGkg dGhhdCBpcw0KPiBpbXBsZW1lbnRhdGlvbiBhZ25vc3RpYyBidXQgZnVsbCBmZWF0dXJlZCB0aGVu IG1heWJlIHlvdSBjb3VsZCBkbyBhcyBUbHMNCj4gZGlkIHdoaWNoIHdhcyBjcmVhdGUgeW91ciBv d24gdXNhZ2Ugc3BlY2lmaWMgQVBJL3dyYXBwZXIuIFRoZW4gQ3J5cHRvUGtnDQo+IEFQSSBzdXJm YWNlIHdpbGwgaW5jcmVhc2UgYnV0IGl0IGRvZXNuJ3QgaGF2ZSB0byBhbGwgYmUgaW4gb25lDQo+ IG1vbm9saXRoaWMgbGlicmFyeS4NCj4gDQo+IA0KPiBUaGFua3MNCj4gDQo+IFNlYW4NCj4gDQo+ IA0KPiANCj4gDQo+IE9uIDEwLzEwLzIwMjIgNDozMiBBTSwgUWkgWmhhbmcgd3JvdGU6DQo+ID4g UkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTQwODIN Cj4gPg0KPiA+IFRoaXMgcGF0Y2ggc2VyaWFsIGlzIHRvIGFkZCBtb3JlIENyeXB0b1g1MDkgZnVu Y3Rpb25zLg0KPiA+DQo+ID4gVGVzdGVkIGJ5Og0KPiA+IDEuIGh0dHBzOi8vZ2l0aHViLmNvbS90 aWFub2NvcmUvZWRrMi1zdGFnaW5nL3RyZWUvRGV2aWNlU2VjdXJpdHkuDQo+ID4gMi4gVW5pdCB0 ZXN0OiBDcnlwdG9Qa2cvVGVzdC9Vbml0VGVzdC9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9YNTA5VGVz dHMuYw0KPiA+DQo+ID4gUmV2aWV3IFBSOiBodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL2Vk azIvcHVsbC8zMzgwLg0KPiA+DQo+ID4gVjIgY2hhbmdlOiByZW5hbWUgWDUwOVNldERhdGVUaW1l KCkgdG8gWDUwOUZvcm1hdERhdGVUaW1lKCkuDQo+ID4NCj4gPiBDYzogSmlld2VuIFlhbyA8amll d2VuLnlhb0BpbnRlbC5jb20+DQo+ID4gQ2M6IEppYW4gSiBXYW5nIDxqaWFuLmoud2FuZ0BpbnRl bC5jb20+DQo+ID4gQ2M6IFhpYW95dSBMdSA8eGlhb3l1MS5sdUBpbnRlbC5jb20+DQo+ID4gQ2M6 IEd1b21pbiBKaWFuZyA8Z3VvbWluLmppYW5nQGludGVsLmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5 OiBRaSBaaGFuZyA8cWkxLnpoYW5nQGludGVsLmNvbT4NCj4gPg0KPiA+IFFpIFpoYW5nICg0KToN Cj4gPiAgICBDcnlwdG9Qa2c6IGFkZCBuZXcgWDUwOSBmdW5jdGlvbiBkZWZpbml0aW9uLg0KPiA+ ICAgIENyeXB0b1BrZzogYWRkIG5ldyBYNTA5IGZ1bmN0aW9uLg0KPiA+ICAgIENyeXB0b1BrZzog YWRkIG5ldyBYNTA5IGZ1bmN0aW9uIHRvIENyeXB0byBTZXJ2aWNlLg0KPiA+ICAgIENyeXB0b1Br ZzogYWRkIFVuaXQgVGVzdCBmb3IgWDUwOSBuZXcgZnVuY3Rpb24uDQo+ID4NCj4gPiAgIENyeXB0 b1BrZy9Ecml2ZXIvQ3J5cHRvLmMgICAgICAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrLQ0K PiA+ICAgQ3J5cHRvUGtnL0luY2x1ZGUvTGlicmFyeS9CYXNlQ3J5cHRMaWIuaCAgICAgIHwgIDM3 NCArKysrKysNCj4gPiAgIC4uLi9QY2QvUGNkQ3J5cHRvU2VydmljZUZhbWlseUVuYWJsZS5oICAg ICAgICB8ICAgMzQgKy0NCj4gPiAgIENyeXB0b1BrZy9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9Qay9D cnlwdFg1MDkuYyB8IDEwMzYNCj4gKysrKysrKysrKysrKysrKysNCj4gPiAgIC4uLi9MaWJyYXJ5 L0Jhc2VDcnlwdExpYi9Qay9DcnlwdFg1MDlOdWxsLmMgICB8ICA0MjkgKysrKysrKw0KPiA+ICAg Li4uL0Jhc2VDcnlwdExpYk51bGwvUGsvQ3J5cHRYNTA5TnVsbC5jICAgICAgIHwgIDQyOSArKysr KysrDQo+ID4gICAuLi4vQmFzZUNyeXB0TGliT25Qcm90b2NvbFBwaS9DcnlwdExpYi5jICAgICAg fCAgNDE1ICsrKysrKysNCj4gPiAgIENyeXB0b1BrZy9Qcml2YXRlL1Byb3RvY29sL0NyeXB0by5o ICAgICAgICAgICB8ICAzOTAgKysrKysrKw0KPiA+ICAgLi4uL0Jhc2VDcnlwdExpYi9CYXNlQ3J5 cHRMaWJVbml0VGVzdHMuYyAgICAgIHwgICAgMSArDQo+ID4gICAuLi4vTGlicmFyeS9CYXNlQ3J5 cHRMaWIvVGVzdEJhc2VDcnlwdExpYi5oICAgfCAgICA0ICsNCj4gPiAgIC4uLi9CYXNlQ3J5cHRM aWIvVGVzdEJhc2VDcnlwdExpYkhvc3QuaW5mICAgICB8ICAgIDEgKw0KPiA+ICAgLi4uL0Jhc2VD cnlwdExpYi9UZXN0QmFzZUNyeXB0TGliU2hlbGwuaW5mICAgIHwgICAgMSArDQo+ID4gICAuLi4v VW5pdFRlc3QvTGlicmFyeS9CYXNlQ3J5cHRMaWIvWDUwOVRlc3RzLmMgfCAgNjMxICsrKysrKysr KysNCj4gPiAgIDEzIGZpbGVzIGNoYW5nZWQsIDQxNjYgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRp b25zKC0pDQo+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gQ3J5cHRvUGtnL1Rlc3QvVW5pdFRl c3QvTGlicmFyeS9CYXNlQ3J5cHRMaWIvWDUwOVRlc3RzLmMNCj4gPg0K