From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web12.31151.1652098360605465590 for ; Mon, 09 May 2022 05:12:40 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=A0l6G7Aa; spf=pass (domain: intel.com, ip: 134.134.136.20, 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=1652098360; x=1683634360; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=EheOeJtR6KgobLgzTK/E5ETD7mpMfpZWDeVCF8OuZfw=; b=A0l6G7Aa/PpfOuT9wYz66+OvY16TWeIsvBfyYe8dP6xAY05CnvPUKeEj uI1fM0+0N1fHAWMLPacS5vZCbTKtzZiDfTBgyckUDbQ4EMltmnv1CNYrN 5Ypt4C7UAStDzXyvSR3b5loI7Tha/2s+8lKXv9v6MXUszAvwQlr0hL9GP NFouZfjZOS+qmJsNLqhY8Ny0Xcq3jXoASUt7RkMkQv9A9pPieFDELtA0c 5gAspIGb14hGQkMSaPS0ig8yU5Rgk68sCMK9AuUgIjbEYWdiOW3g9P4Dz ZrT2eusD0LmgOz7yebTtWFMDJTyAfwE8bv1Bw9y3utJjlsyBVg+kVgQvR A==; X-IronPort-AV: E=McAfee;i="6400,9594,10341"; a="256565280" X-IronPort-AV: E=Sophos;i="5.91,211,1647327600"; d="scan'208";a="256565280" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 May 2022 05:12:38 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,211,1647327600"; d="scan'208";a="634004154" Received: from fmsmsx605.amr.corp.intel.com ([10.18.126.85]) by fmsmga004.fm.intel.com with ESMTP; 09 May 2022 05:12:37 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Mon, 9 May 2022 05:12:36 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.2308.27 via Frontend Transport; Mon, 9 May 2022 05:12:36 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.173) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Mon, 9 May 2022 05:12:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TaK/TuYAhza0krmSmDlEGHD51xsIw1zFptg/up88/PMHLqx++bWl4J5W+OZXBGM2ql5QC/g58jYXdTDg+8Gw6JKMHHgpiRF408fgrnY1fKgKOJXTX2BR0r9TvZA0MA3NhrfG4B0TIZgQlTQ6l6K9O9CZEoQSplPBdLWOvr2Mw/3RhByG6ZDLpOEqJ2ZTyfHHOQWe1gutHgB2F9AHOX+gQzd1e5Tn8zEpkA8qZuTU2S4mIYkZAGLGAnd+wZ5ShwWilR2A0PkHWkyGvKbC+GemPBa0jH1LfvynjVwLDP9KdbzUHsMqbdNkMRyQzszbZ1c9AMHWOapewjaDLmVNHR/vkg== 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=EheOeJtR6KgobLgzTK/E5ETD7mpMfpZWDeVCF8OuZfw=; b=WH8Oq/v6HF6TDcedPdbaxtpqNqsn19uFgYSzoPsQQQ/LwbhxTyJh7weSF9PnYmBbxhh9OHGJahLcu7qD4m+kNDP2EZaCgnpzUzQa7ZQ9ktNj09Wn/S3U16g5KIATm0UR/qCREUJANmOCsjCBL54MLac7V2lcXA6V8YZjCvqXhFpUnvrTHYEWkbNR6Z1idOPRmK+WKqDMx6H40L+f5ckoFA2uuhderAEeSQIDAMIF9X5zdLFCODXBivUiS+OF98qqHvhc7Ja0qCf6zRwpTbwZB/Xnhj3HRnrH9OEx8eQduuz5ZkngoLLKSju8qplgT8kDbOmFEPZlf/Sut7qunZ/Urg== 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 MWHPR1101MB2256.namprd11.prod.outlook.com (2603:10b6:301:57::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5227.22; Mon, 9 May 2022 12:12:00 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::d55d:28c1:bfab:3dd]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::d55d:28c1:bfab:3dd%5]) with mapi id 15.20.5227.023; Mon, 9 May 2022 12:12:00 +0000 From: "Yao, Jiewen" To: "devel@edk2.groups.io" , "Yao, Jiewen" , "James.Bottomley@HansenPartnership.com" , "kraxel@redhat.com" CC: Pawel Polawski , "Li, Yi1" , Oliver Steffen , "Wang, Jian J" , Ard Biesheuvel , "Jiang, Guomin" , "Lu, Xiaoyu1" , "Justen, Jordan L" Subject: Re: [edk2-devel] [PATCH 0/5] CryptoPkg/openssl: enable EC unconditionally. Thread-Topic: [edk2-devel] [PATCH 0/5] CryptoPkg/openssl: enable EC unconditionally. Thread-Index: AQHYXhBMFEKLC4OMd06GIdUF/28hw60Mc8XQgAN+MQCAABNFAIAFx4JQgACKFYCAAAF/gIAAGygAgAAFk4CAAADYMIAABYMg Date: Mon, 9 May 2022 12:12:00 +0000 Message-ID: References: <20220502103436.3274412-1-kraxel@redhat.com> <20220505080638.rmrw3f773rkw3ljl@sirius.home.kraxel.org> <20220505091536.llguh4dzozqtiiob@sirius.home.kraxel.org> <20220509094511.px6cl7jtjejr4y4x@sirius.home.kraxel.org> <20220509112744.msdph5d35ph24l4p@sirius.home.kraxel.org> <97444089e5113f5b5c5f538635ff1821f1c62cb2.camel@HansenPartnership.com> <16ED6E30C7B1AB9D.18911@groups.io> In-Reply-To: <16ED6E30C7B1AB9D.18911@groups.io> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.401.20 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-office365-filtering-correlation-id: aaacedcc-5244-4ae8-c53d-08da31b51ebb x-ms-traffictypediagnostic: MWHPR1101MB2256:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: VO8EqAzWUpQha3UOchP/1H3B96h8bi9moAu0NZbaGeM1UlYZZXD7Zu/TjsEnE0vF4DoelTypHOR0NCTc9dxZ76gb2805MlEk69Mrk8fke4nefqKlwFI8UuxW0xPjCLYZ4+0+7zU3X6XUKPw28CV7wO6IQekMoljQYiE8pOuJBDDO5WBzgfOE9wmaXGJM6V4lJkcwXcWR4LEFJAhoBI8zSlHNTi72tCdQu3miT1U/pOI8yx+q/RV3r9FBQGvjXfRVyb3t1wNvoP906LvzzyKvQ8l//nRnKMD1mLU0ssaxMKMkPoHaBzPE+VfiYwM6z1i13/AYjvWN1cAAETuFMD9dIbmWwWf6YAOnwkZvUuVUOZ66Bn04X4A5FQtFpLsACBUCnuB8mS7I2BIDB2E8u+sJkbJmO/k+ols2SwGpeECtAulhcSeIMeup/unidEnqEWVfYgK35rOJWm4S3BsjcEFPdTMI/4oeBdvPYdhz0Vkk218VOTV6RjgBewXvsYEF0We3wScIX8hG9jX4SpJ0ELOICj/5ywJwZG+xn3cGuHoY+fIeU1FdcMN5jhcM224xldEbHk2hVP9JpkItvScTpkIYZNZ70VypsWk8gNtxjdwSir4E9JO49Rc8i7PKe6j4wnnq3gP27PyF5i+DRzH6tdgTFp6odQsKdasB4ocmEGHSRRiOzl1nt7NbEuq4S5/gQV+KMT3pksY6k1gYzRRpxIAHxECMzc9xBww3pzULtEhpNkiS31rnJNJa0pJ1s/EVcLCqyN/btwukiKx8KlV8nr78NDW+m7W68pi5iAN1siNScNuv4ClX6WHA1wiLCji5UZnXSnk24MaNExIznxMYVmelNg== 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:(13230001)(366004)(9686003)(26005)(66946007)(86362001)(55016003)(110136005)(76116006)(54906003)(66556008)(64756008)(66446008)(8936002)(107886003)(71200400001)(66476007)(33656002)(83380400001)(4326008)(8676002)(5660300002)(6506007)(186003)(966005)(53546011)(316002)(508600001)(52536014)(122000001)(82960400001)(7696005)(38070700005)(38100700002)(2906002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RE5yQUxJNWtqRCtIS0V5Q3ppc0llYTJrVlMyMHZNTzNyN21DVTBjVEZtdzJm?= =?utf-8?B?UGtDOXhaT21tczdmTHZnM1YzZCt2V1U2Q1J1L1dnalc3ZHNCSk96TzFqT1dJ?= =?utf-8?B?cDh2VkJGK0xiTmhqNTZUK0YxWjNwMjhKVEZGWVBXSmR1SmwyWDQ1c29DSS9Y?= =?utf-8?B?Nmp0NWNMem9OeHZJWHVxMG91UDlJaDlPRW9KdGFlcnljcDVpRnRUY2NOcVZP?= =?utf-8?B?NHpXSzNGMWxaYUZYS2V6amRxSGNtbmExblgxSHRSQUpyVXdaU3l0eHpLQkFp?= =?utf-8?B?T3hucjFiODd2dncrUzFIZGxiM1k3MVQ2QXNOc0g5cFZHYXRIL2FqZUQzT3Vp?= =?utf-8?B?WU5oVDByN1IvTU1KR2FlWHZpWUdlVlpKMi9CR3VlTnNlblRCTTBGcjJ1WDVX?= =?utf-8?B?bGZSNHFzc3VrL040TnBWTk1QM2VnM0ZQbEFGNkdISUVQb3d6OG5nWTFKTUJl?= =?utf-8?B?VEMrL3QzYmxoeTZVRitZbUdzNEtlZ0RJVFlzL0FyclZ4c3hpdy9WWHd6c1JE?= =?utf-8?B?VmZySzM2Z01UWmJTeVF3SFh4TW9xZ2pieEVUTmNrUzVlUW5VczA2djJQSHFw?= =?utf-8?B?ZmFudHhjV1NoY3dtRHVYTWIwZXl1Z0hNdXFDSGhobjBlZzVuNmt5VjZHVkQ0?= =?utf-8?B?YTN2Y1pFZDlueWhVdmlMN0ptbnhyT2F2RlE4SXlDbncrb0haUjFLWGtzVnFl?= =?utf-8?B?d3JOVUNDUk96ZVNzK0RMdmIrKzk4WmQ3MjQva0h3SExJbVlVNXRuUUZjQ250?= =?utf-8?B?MXJzQTc1SmJCZC9YSnFJZWFlcEpLd0tSOHVFdTJ5c3lGOHRyaTZVOUdJUkh5?= =?utf-8?B?d1FrV2tRWnBYTitremhoaVBObERNdzE1eGcxTmgzWVRHUVg2UlEzU0lPWno5?= =?utf-8?B?a1I3RERPbDB4SUxGaTFYRzBYVjBESXYzVmpuMFpIZGtmaW96M0FFOEtzRVpW?= =?utf-8?B?UFArTWZUckdlM29mSjREWDFpdWFlcnh1cDREZ2JQZS9ldVlIZlJlL2FBSWV1?= =?utf-8?B?RmxKcU5PZUxKTkl4dldLZzQyZ3Z1UzF1MnpSSUM0bFZHalJRRnlITVhuY0c5?= =?utf-8?B?V09ESitPTENmRGtsZ3ZJay84VmlieEZ0MGxiVnpIclRjQ1gzU1dKVnBiUkJl?= =?utf-8?B?UmxUTDBuRGVWNVlGNHpOSXh3d043M1RKREVEWXE0dUxvd2l0bko5ZXhScENH?= =?utf-8?B?MlgxUGxTWm1ENGRGSmFqcThLbDZnRlJIMlBuRUtjRWErUE94cTA2S0ljeUFB?= =?utf-8?B?NmhHMEpBbjJGeTVGd0R0dUtVeGFQVU9iZGFTbE9aMm0vSUxQUTh1TUtrNjlC?= =?utf-8?B?aUJMZy9SeTUxMzlWSm42WnhYbUZqTHRJNkVOaXRWOGI2WDBOTWthZ05OY1M5?= =?utf-8?B?NSsxUHhNT1BNT3hOY3NIdHdaQmRqbU9ORldweXl6bkpLNXdxdmRpS09VQ20r?= =?utf-8?B?Sml2M0tkTnFGTHkzcFNJbGhXckliU2kzMUJDNUJHZUJKU0RFN1hyK2EydGZN?= =?utf-8?B?dmNONWZYaXFaV1VNc2FDSlVDemVWV2ZUSHEvY0VnRlZURzNzVk4vRjlCRStw?= =?utf-8?B?aG51QnAxVlhPcnBtTHpUMGl2Zjd6RmFyTDhCaEgrZHgrUjM5MG1xSnByUXJR?= =?utf-8?B?dGtRU1BmbFJwUmI0K2V0MkNyWXJHdG5wS21LWUZ4QXlhZmQvK01rTEZQRDJp?= =?utf-8?B?NXZZdnBBOXZreTRZUmFqUm1xYjNRa1czalRiNUQ2ZkROMmFKN3RKUHVyTnRp?= =?utf-8?B?aU5KQkpQRnlMV21zanUrS0w4d3NRNUpvQ2d1RWJ5dGJ0SVpDQ2UrZEsvazNW?= =?utf-8?B?MEJHOVFjeFNVVC9wM2ppeG1RVHNjaUpMaGlpVHc1T0FwTytUUmRXcG0wNGwx?= =?utf-8?B?cjVrcHg0WDJlWGdjVVJPREdCamxzV2JYd1JDTlZMOW5BYy9pWUtQdlpuMWpF?= =?utf-8?B?aHlPY2V6dGZYYWYxd1NjTG1GVG9sNWltVGxYdEtuV2JMUjEzQ1NHelkybUVv?= =?utf-8?B?NFZvNyt3RTlkdHlsUzB4c0dGYnJYYkR1dGN6N292bGk3d3B4YWY1R083SUYz?= =?utf-8?B?aEJZTWtJOWNBaWNTMVVJZU9aWFkxOW9vTE9VNkp2ZkxsWEk1RXgwY0ZFZFo1?= =?utf-8?B?WTh3RVJWS3Q4Sm42U0V4WTMwcWQvYmdtRDVxQnVaMmh6MzQzQkVpSFpCampu?= =?utf-8?B?SndZbzM0RHJ1RG4vb2hld25ralA5VFMza0o3dHJZQkJoanlSczU1RFE4Mldj?= =?utf-8?B?YzNiV0Vsd0VoS3JrdGdETEpaY3pwcHYxTkNDaG0rQ1B2WUlDM29NRmFOSGxX?= =?utf-8?B?M0gxb2xaQkh3L0VkdnM3Z0kra1hMbkg5NXl4RTBCMFZpUnFrQmhIUT09?= 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: aaacedcc-5244-4ae8-c53d-08da31b51ebb X-MS-Exchange-CrossTenant-originalarrivaltime: 09 May 2022 12:12:00.0654 (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: l5XCnIlI/7tf3XjFGsL+Sz3SRK65Nq0gEyTqCPRjr8RuN9Qi60vXC+NYIcIj5R4g8DYqPm3lqS5nJ9d/cE+GRg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1101MB2256 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 SSBhbSBub3Qgc3VyZSBob3cgZ29vZCB0aGUgb3BlbnNzbCBNQUNSTyBpcyBkZXNpZ25lZCB0byBy ZW1vdmUgdW5uZWNlc3NhcnkgY3J5cHRvLg0KDQpJIHRoaW5rIHdlIG1heSBzdWJtaXQgcGF0Y2gg dG8gb3BlbnNzbCB0byBhZGQgbW9yZSBjb25maWd1cmF0aW9uLCBpZiB0aGF0IGNhbiBoZWxwIHJl ZHVjZSBzaXplLg0KDQpUaGFuayB5b3UNCllhbyBKaWV3ZW4NCg0KDQo+IC0tLS0tT3JpZ2luYWwg TWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdy b3Vwcy5pbz4gT24gQmVoYWxmIE9mIFlhbywgSmlld2VuDQo+IFNlbnQ6IE1vbmRheSwgTWF5IDks IDIwMjIgODowMyBQTQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEphbWVzLkJvdHRvbWxl eUBIYW5zZW5QYXJ0bmVyc2hpcC5jb207DQo+IGtyYXhlbEByZWRoYXQuY29tDQo+IENjOiBQYXdl bCBQb2xhd3NraSA8cHBvbGF3c2tAcmVkaGF0LmNvbT47IExpLCBZaTEgPHlpMS5saUBpbnRlbC5j b20+OyBPbGl2ZXINCj4gU3RlZmZlbiA8b3N0ZWZmZW5AcmVkaGF0LmNvbT47IFdhbmcsIEppYW4g SiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgQXJkDQo+IEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9j b3JlQGtlcm5lbC5vcmc+OyBKaWFuZywgR3VvbWluDQo+IDxndW9taW4uamlhbmdAaW50ZWwuY29t PjsgTHUsIFhpYW95dTEgPHhpYW95dTEubHVAaW50ZWwuY29tPjsgSnVzdGVuLCBKb3JkYW4NCj4g TCA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVs XSBbUEFUQ0ggMC81XSBDcnlwdG9Qa2cvb3BlbnNzbDogZW5hYmxlIEVDDQo+IHVuY29uZGl0aW9u YWxseS4NCj4gDQo+IEl0IGlzIHBvc3NpYmxlIHRvIHN3aXRjaCB0byBvdGhlciBjcnlwdCBsaWIu DQo+IA0KPiBGb3IgZXhhbXBsZSwgdGhlICptYmVkdGxzKiB2ZXJzaW9uIFBPQyBjYW4gYmUgZm91 bmQgYXQNCj4gaHR0cHM6Ly9naXRodWIuY29tL2p5YW8xL2VkazIvdHJlZS9EZXZpY2VTZWN1cml0 eS9DcnlwdG9NYmVkVGxzUGtnDQo+IFRoZSBhZHZhbnRhZ2UgaXM6IHRoZSBzaXplIGlzIG11Y2gg c21hbGxlci4NCj4gVGhlIGRpc2FkdmFudGFnZSBpczogc29tZSByZXF1aXJlZCBmdW5jdGlvbnMg YXJlIG5vdCBhdmFpbGFibGUsIHN1Y2ggYXMgUEtDUzcuDQo+IA0KPiBUaGFuayB5b3UNCj4gWWFv IEppZXdlbg0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IGRl dmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEph bWVzDQo+ID4gQm90dG9tbGV5DQo+ID4gU2VudDogTW9uZGF5LCBNYXkgOSwgMjAyMiA3OjQ4IFBN DQo+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBrcmF4ZWxAcmVkaGF0LmNvbTsgWWFvLCBK aWV3ZW4NCj4gPiA8amlld2VuLnlhb0BpbnRlbC5jb20+DQo+ID4gQ2M6IFBhd2VsIFBvbGF3c2tp IDxwcG9sYXdza0ByZWRoYXQuY29tPjsgTGksIFlpMSA8eWkxLmxpQGludGVsLmNvbT47DQo+IE9s aXZlcg0KPiA+IFN0ZWZmZW4gPG9zdGVmZmVuQHJlZGhhdC5jb20+OyBXYW5nLCBKaWFuIEogPGpp YW4uai53YW5nQGludGVsLmNvbT47IEFyZA0KPiA+IEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3Jl QGtlcm5lbC5vcmc+OyBKaWFuZywgR3VvbWluDQo+ID4gPGd1b21pbi5qaWFuZ0BpbnRlbC5jb20+ OyBMdSwgWGlhb3l1MSA8eGlhb3l1MS5sdUBpbnRlbC5jb20+OyBKdXN0ZW4sDQo+IEpvcmRhbg0K PiA+IEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUmU6IFtlZGsy LWRldmVsXSBbUEFUQ0ggMC81XSBDcnlwdG9Qa2cvb3BlbnNzbDogZW5hYmxlIEVDDQo+ID4gdW5j b25kaXRpb25hbGx5Lg0KPiA+DQo+ID4gT24gTW9uLCAyMDIyLTA1LTA5IGF0IDEzOjI3ICswMjAw LCBHZXJkIEhvZmZtYW5uIHdyb3RlOg0KPiA+IFsuLi5dDQo+ID4gPiA+IDEpIFBsZWFzZSBrZWVw IHRoZSBnb29kIHdvcmsgdG8gZW5hYmxlIE9QRU5TU0wzLjAgaW4geW91ciBwZXJzb25hbA0KPiA+ ID4gPiBicmFuY2guDQo+ID4gPiA+IDIpIElmIHlvdSBoYXZlIHNvbWUgd2F5IHRvIGNvbnRyb2wg dGhlIHNpemUsIHRoZW4gZG8gaXQuIElmIHRoZXJlDQo+ID4gPiA+IGlzIG5vIG11Y2ggc2l6ZSBk aWZmZXJlbmNlIGJ5IGRlZmF1bHQsIHRoZW4geW91IGNhbiBzdWJtaXQgdG8gRURLSUkNCj4gPiA+ ID4gZGlyZWN0bHkuDQo+ID4gPg0KPiA+ID4gSSBzdXNwZWN0IEkgd291bGRuJ3QgZ2V0IGl0IGRv d24gdG8gMS4xLjEgbGV2ZWxzIGV2ZW4gaWYgSSBmaW5kIHNvbWUNCj4gPiA+IHdheXMgdG8gbWFr ZSBpdCBzbWFsbGVyIHRoYW4gaXQgaXMgaW4gbXkgYnJhbmNoIHRvZGF5LiAgVGhlIGNvZGUgZm9y DQo+ID4gPiB0aGUgbmV3ICJwcm92aWRlciIgY29uY2VwdCBzaW1wbHkgbmVlZHMgc3BhY2UgYW5k IEkgdGhpbmsgaXQgYWxzbw0KPiA+ID4gbWFrZXMgTFRPIG9wdGltaXphdGlvbiBsZXNzIGVmZmVj dGl2ZS4NCj4gPg0KPiA+IEhhdmluZyBqdXN0IGxvb2tlZCBpbnRvIGNvbnZlcnRpbmcgZW5naW5l IGNvZGUgdG8gcHJvdmlkZXIgY29kZSwgSQ0KPiA+IHdvdWxkIGNvbmN1ciB3aXRoIHRoaXMuICBU aGUgZGVzaWduIG9mIHByb3ZpZGVycywgd2l0aCB0aGVpciBtYW55IHRvDQo+ID4gbWFueSBmdW5j dGlvbmFsIG1hcHBpbmdzLCBzZWVtcyBkZXNpZ25lZCB0byBwcm9tb3RlIGNvZGUgYmxvYXQuDQo+ ID4NCj4gPiA+IE1heWJlIGNyZWF0aW5nIG91ciBvd24gY3J5cHRvIHByb3ZpZGVycyB3aGljaCBp bmNsdWRlIG9ubHkgdGhlDQo+ID4gPiBhbGdvcml0aG1zIGFjdHVhbGx5IG5lZWRlZCBieSBlZGsy IGdldHMgdGhlIHNpemUgZG93biBhIGJpdC4NCj4gPg0KPiA+IFdoYXQgYWJvdXQgc3dpdGNoaW5n IHRvIGEgZGlmZmVyZW50IGNyeXB0byBiYWNrZW5kPyAgU2luY2Ugd2UgZG9uJ3QNCj4gPiBleHBv c2UgYW55IG9wZW5zc2wgQVBJcyBhdCBhbGwgYW5kIHdlIHdyYXBwZXIgZXZlcnl0aGluZyB3ZSBk byBleHBvc2UsDQo+ID4gaXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHN3aXRjaCB0byBvbmUgb2Yg dGhlIG5vbi1vcGVuc3NsIChvciBmb3JrZWQNCj4gPiBmcm9tIG9wZW5zc2wpIHZhcmlhbnRzIHRo YXQgdmFsdWUgc2l6ZSwgbGlrZSBtYmVkdGxzIG9yIGJvcmluZ3NzbD8NCj4gPg0KPiA+IEphbWVz DQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+IA0KPiANCj4gDQo+IA0KPiANCg0K