From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: xiaoyux.lu@intel.com) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by groups.io with SMTP; Tue, 14 May 2019 08:52:17 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 May 2019 08:52:16 -0700 X-ExtLoop1: 1 Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga004.fm.intel.com with ESMTP; 14 May 2019 08:52:16 -0700 Received: from fmsmsx115.amr.corp.intel.com (10.18.116.19) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 14 May 2019 08:52:16 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by fmsmsx115.amr.corp.intel.com (10.18.116.19) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 14 May 2019 08:52:16 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.129]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.33]) with mapi id 14.03.0415.000; Tue, 14 May 2019 23:52:14 +0800 From: "Xiaoyu lu" To: "devel@edk2.groups.io" , "lersek@redhat.com" CC: Gary Lin , "Wang, Jian J" , "Ye, Ting" Subject: Re: [edk2-devel] [PATCH v3 0/6] CryptoPkg: Upgrade OpenSSL to 1.1.1b Thread-Topic: [edk2-devel] [PATCH v3 0/6] CryptoPkg: Upgrade OpenSSL to 1.1.1b Thread-Index: AQHVCY9yElnKq46NqE6YdGh/uj1aeaZo6ciAgAEVzICAAJm0UA== Date: Tue, 14 May 2019 15:52:14 +0000 Message-ID: References: <1557753912-30122-1-git-send-email-xiaoyux.lu@intel.com> <74aa9307-b97a-75c2-71d0-b41c111dfe15@redhat.com> In-Reply-To: <74aa9307-b97a-75c2-71d0-b41c111dfe15@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.600.7 dlp-reaction: no-action x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiY2U1NzBhNDktYjE2NS00YjE5LTg1MGUtNzZiMTZkYzgyNjBkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiYjREV3ZHeFFcL0MydWl1OWZzOVNsYXlVcGtUbThKMDFSbDRTcWxiU2szRDlOd2pCZVV1TWdEckhyZTFcL2dPWDRPIn0= x-ctpclassification: CTP_NT x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: xiaoyux.lu@intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmsgeW91LCBMYXN6bG8uDQoNCkkgYW0gdmVyeSBhcHByZWNpYXRlIHRvIHlvdSBmb3IgYmVp bmcgc28gcGF0aWVudCB3aXRoIG1lIC4NCg0KKDEpIEkgY2xlYW5lZCB0aGUgYXV0aG9yZWQgbmFt ZS4NCg0KKDIpIENyeXB0b1BrZy9MaWJyYXJ5L0luY2x1ZGUvb3BlbnNzbC9vcGVuc3NsY29uZi5o IFRoaXMgZmlsZSBpcyBMRiBmaWxlLCBJdCBjb3B5IGZyb20gb3BlbnNzbCwgSSB0aGluayBpdCBz aG91bGQgbm90IGJlIG1vZGlmaWVkLg0KDQogICBQdXNoZWQgbXkgcHJpdmF0ZSByZXBvc2l0b3J5 IHRvIGh0dHBzOi8vZ2l0aHViLmNvbS94aWFveXV4bHUvZWRrMi9jb21taXRzL2J6XzEwODlfcGF0 Y2hfdjQNCiAgIEkgaGF2ZSBub3QgZmluaXNoZWQgeWV0LiBXaGVuIEkgZmluaXNoIGl0LCBJIHdp bGwgcHVzaCB2NCBwYXRjaGVzDQoNCigzKSBUaGFuayB5b3UgZm9yIGV4cGxhaW5pbmcgdGhpcyBj bGVhcmx5LiBJIGNoYW5nZWQgaXQgYmFjayBhbmQgYWRkZWQgYSBwYXRjaC4NCg0KKDQpIE5vdyBJ IGtub3cgSSBzaG91bGQgdGFrZSBSLWIgdGFncyBpbnRvIGNvbW1pdCBtZXNzYWdlIGFuZCB0aGUg bWVhbmluZyB0byBtb2RpZnkgJ1ItYiB0YWdzIHBhdGNoJy4NCiAgIElmIEkgbW9kaWZ5IGl0LCBz aG91bGQgcmVmZXIgdG8gUi1iIHRhZ3Mgb3duZXIncyBvcGluaW9uLiBJIGFwb2xvZ2l6ZSBmb3Ig bW9kaWZ5IHlvdXIgUi1iIHRhZ3MgcGF0Y2ggd2hpY2ggbWFrZXMgeW91IGZlZWwgYmFkLg0KDQoo NSkgR290IGl0LiANCg0KSSB0aGluayBpdCBpcyB2ZXJ5IHVzZWZ1bCBmb3IgbWUuIA0KWypdIGh0 dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvdGlhbm9jb3JlLmdpdGh1Yi5pby93aWtpL0xhc3ps bydzLXVua2VtcHQtZ2l0LWd1aWRlLWZvci1lZGsyLWNvbnRyaWJ1dG9ycy1hbmQtbWFpbnRhaW5l cnMNClRoYW5rIHlvdSBhZ2Fpbi4NCg0KWGlhb3l1Lg0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gW21haWx0bzpkZXZlbEBlZGsyLmdyb3Vw cy5pb10gT24gQmVoYWxmIE9mIExhc3psbyBFcnNlaw0KU2VudDogVHVlc2RheSwgTWF5IDE0LCAy MDE5IDc6NTkgUE0NClRvOiBMdSwgWGlhb3l1WCA8eGlhb3l1eC5sdUBpbnRlbC5jb20+DQpDYzog ZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdhcnkgTGluIDxnbGluQHN1c2UuY29tPjsgV2FuZywgSmlh biBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBZZSwgVGluZyA8dGluZy55ZUBpbnRlbC5jb20+ DQpTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2MyAwLzZdIENyeXB0b1BrZzogVXBn cmFkZSBPcGVuU1NMIHRvIDEuMS4xYg0KDQpPbiAwNS8xMy8xOSAyMToyNCwgTGFzemxvIEVyc2Vr IHdyb3RlOg0KPiBPbiAwNS8xMy8xOSAxNToyNSwgWGlhb3l1IGx1IHdyb3RlOg0KPj4gKDEpIENy eXB0b1BrZy9PcGVuc3NsTGliOiBNb2RpZnkgcHJvY2Vzc19maWxlcy5wbCBmb3IgIHVwZ3JhZGlu Zw0KPj4gICBPcGVuU1NMIE9wZW5TU0wgb25seSBzdXBwb3J0IHNlZWRpbmcgTk9ORSBmb3IgVUVG SShyYW5kX3VuaXguYyBsaW5lDQo+PiAgIDkzKS4gU28gYWRkIC0td2l0aC1yYW5kLXNlZWQ9bm9u ZSB0byBwcm9jZXNzX2ZpbGVzLnBsLg0KPj4NCj4+ICgyKSBDcnlwdG9Qa2cvT3BlbnNzbExpYjog RXhjbHVkZSB1bm5lY2Vzc2FyeSBmaWxlcyBpbiANCj4+IHByb2Nlc3NfZmlsZXMucGwNCj4+ICAg V2hlbiBydW5uaW5nIHByb2Nlc3NfZmlsZXMucHkgdG8gY29uZmlndXJlIE9wZW5TU0wsIHdlIGNh biBleGNsdWRlDQo+PiAgIHNvbWUgdW5uZWNlc3NhcnkgZmlsZXMuIFRoaXMgY2FuIHJlZHVjZSBw b3J0aW5nIHRpbWUsIGNvbXBpbGluZw0KPj4gICB0aW1lIGFuZCBsaWJyYXJ5IHNpemUuDQo+Pg0K Pj4gKDMpIENyeXB0b1BrZy9JbnRyaW5zaWNMaWI6IEZpeCBwb3NzaWJsZSB1bnJlc29sdmVkICBl eHRlcm5hbCBzeW1ib2wgDQo+PiBpc3N1ZQ0KPj4NCj4+ICg0KSBDcnlwdG9Qa2cvT3BlbnNzbExp YjogUHJlcGFyZSBmb3IgdXBncmFkaW5nIE9wZW5TU0wNCj4+ICAgRGlzYWJsZSB3YXJuaW5nIGZv ciBidWlsZGluZyBPcGVuU1NMXzFfMV8xYg0KPj4NCj4+ICg1KSBDcnlwdG9Qa2c6IFVwZ3JhZGUg T3BlblNTTCB0byAxLjEuMWINCj4+ICAgVXBkYXRlIE9wZW5TU0wgc3VibW9kdWxlIHRvIE9wZW5T U0xfMV8xXzFiDQo+PiAgIE9wZW5TU0xfMV8xXzFiKDUwZWFhYzlmMzMzNzY2NzI1OWRlNzI1NDUx ZjIwMWU3ODQ1OTk2ODcpDQo+Pg0KPj4gICBPcGVuU1NMIGRvZXNuJ3QgaW1wbGVtZW50IHNvbWUg cmFuZF9wb29sIGZ1bmN0aW9uIGZvciBVRUZJLg0KPj4gICBVc2UgRUZJX1JOR19QUk9UT0NPTCB0 byBnZW5lcmF0ZSByYW5kb20gZm9yIGVudHJvcHkuDQo+PiAgIElmIEVGSV9STkdfUFJPVE9DT0wg aXMgbm90IGF2YWxpYWJsZSwgZmFsbCBiYWNrIHRvIHBlcmZvcm1hbmNlDQo+PiAgIGNvdW50ZXIs IGJ1dCB3ZSBub3Qgc3VyZSBhYm91dCB0aGUgYW1vdW50IG9mIHJhbmRvbW5lc3MgaXQNCj4+ICAg cHJvdmlkZXMuDQo+Pg0KPj4gKDYpIENyeXB0b1BrZy9CYXNlQ3J5cHRMaWI6IE1ha2UgSE1BQ19D VFggc2l6ZSBiYWNrd2FyZCAgY29tcGF0aWJsZQ0KPj4NCj4+ICAgTm90ZTogV2lsbCBiZSByZW1v dmUgbmV4dCB1cGRhdGUuDQo+PiAgIFJlZjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3Jn L3Nob3dfYnVnLmNnaT9pZD0xNzkyDQo+PiAgIFJlZjogaHR0cHM6Ly9naXRodWIuY29tL29wZW5z c2wvb3BlbnNzbC9wdWxsLzQzMzgNCj4+DQo+Pg0KPj4gQ2M6IEppYW4gSiBXYW5nIDxqaWFuLmou d2FuZ0BpbnRlbC5jb20+DQo+PiBDYzogVGluZyBZZSA8dGluZy55ZUBpbnRlbC5jb20+DQo+DQo+ IEknbSB3aXRoZHJhd2luZyBmcm9tIHJldmlld2luZyBvciB0ZXN0aW5nIHRoaXMgc2VyaWVzLg0K DQpUbyBiZSBjbGVhciwgdGhlIHJlYXNvbiBJIGFiYW5kb25lZCByZXZpZXdpbmcgLyB0ZXN0aW5n IHRoaXMgc2VyaWVzIGlzIG5vdCBkdWUgdG8gdGhlIHVzZSBvZiBUaW1lckxpYiBhcyBlbnRyb3B5 IHNvdXJjZSwgaW4gcGF0Y2ggIzUuIEkgYWRkcmVzc2VkIHRoYXQgc2VwYXJhdGVseSwgc3RhdGlu ZyB0aGF0IEkgd291bGRuJ3QgcmV2aWV3IHBhdGNoICM1LCBvbmx5IHJlZ3Jlc3Npb24tdGVzdCBp dC4NCg0KVGhlIHJlYXNvbiBJIGludGVuZCB0byBsZWF2ZSB1cGNvbWluZyByZXZpZXdzICYgdGVz dGluZyBvZiB0aGlzIHNlcmllcyBhcyBhIHdob2xlIHRvIG90aGVycyBpcyB0aGF0IEkndmUgZm91 bmQgYSBudW1iZXIgb2YgbWlzdGFrZXMgaW4gcmVsYXRpb24gdG8gdGhlIGRldmVsb3BtZW50IHdv cmtmbG93LiBBbmQsIGl0J3MgZXhoYXVzdGluZyBmb3IgbWUgdG8gcmVwZWF0IGFsbCB0aGUgc2Ft ZSBndWlkZWxpbmVzLCB3aGVuIEkgaGFkIGRvY3VtZW50ZWQgdGhlbSBpbiB0aGUgd2lraSBbKl0u DQoNCkF0IHRoZSBzYW1lIHRpbWUsIEkgcmVhbGl6ZSB0aGF0IGl0IG1heSBiZSBkaWZmaWN1bHQg Zm9yIGEgbmV3IGVkazIgY29udHJpYnV0b3IgdG8gYWRoZXJlIHRvIGV2ZXJ5dGhpbmcgZGVzY3Jp YmVkIGluIFsqXSAtLSBlc3BlY2lhbGx5IGdpdmVuIHRoYXQgWypdIGlzIG5vdCBhbiBvZmZpY2lh bCBlZGsyIGRvY3VtZW50LCBqdXN0IHNvbWV0aGluZyB0aGF0IEkgcGVyc29uYWxseSBkaXN0aWxs ZWQgZnJvbSBleHBlcmllbmNlLg0KDQpJbiBvdGhlciB3b3JkcywgbXkgaW5zaXN0aW5nIG9uIFsq XSBpbiBtYW55IHJlcGVhdGVkIGVtYWlscyBpcyBleGhhdXN0aW5nIGZvciBib3RoIG5ldyBjb250 cmlidXRvcnMsIGFuZCBteXNlbGYgYXMgYSByZXZpZXdlci4gV2hpY2ggaXMgd2h5IEkgdGhvdWdo dCBJJ2Qgc2F2ZSB1cyBib3RoIHNvbWUgYnVzeXdvcmssIGJ5IHdpdGhkcmF3aW5nIGZyb20gdGhp cyBzZXJpZXMuDQoNCklmIHlvdSdkIGxpa2UgbWUgdG8gbG9vayBvdmVyIHRoaXMgc2VyaWVzIGFn YWluLCB0aGVuIGEgdjQgd2lsbCBiZSBuZWNlc3NhcnksIGp1c3QgaW4gb3JkZXIgdG8gcmVtZWR5 IHRoZSBmb2xsb3dpbmcgd29ya2Zsb3ctbGV2ZWwgcHJvYmxlbXMuIChBZnRlcndhcmRzLCBhIHY1 IG1heSBiZSBuZWNlc3NhcnkgZm9yIGZ1cnRoZXIgdGVjaG5pY2FsDQpmaXhlcy4pDQoNCigxKSBT b21lIG9mIHlvdXIgcGF0Y2hlcyBhcmUgYXV0aG9yZWQgYnkgIlhpYW95dSBMdSIsIHNvbWUgb3Ro ZXJzIGJ5DQogICAgIlhpYW95dSBsdSIgKGxvd2VyIGNhc2UpLiBUaGlzIG1lc3NlcyB1cCB0aGUg c2hvcnRsb2cgaW4gdGhlIGJsdXJiDQogICAgKGFuZCBvdGhlciBzdGF0aXN0aWNzIGNvbGxlY3Rl ZCBmcm9tIHRoZSBnaXQgbG9nKTsgeW91IGFyZQ0KICAgIHJlcHJlc2VudGVkIGFzIHR3byBkaWZm ZXJlbnQgcGVvcGxlLg0KDQogICAgUGxlYXNlIHBpY2sgKm9uZSogZW1haWwgYWRkcmVzcyAobmFt ZSBpbmNsdWRlZCksIGFuZCBzdGljayB3aXRoDQogICAgdGhhdC4gUmViYXNlIHRoZSBzZXJpZXMs IGFuZCB1c2UNCg0KICAgICAgZ2l0IGNvbW1pdCAtLWFtZW5kIC0tYXV0aG9yPS4uLg0KDQogICAg Zm9yIGZpeGluZyB1cCB0aGUgYXV0aG9yc2hpcCBvbiB0aGUgcGF0Y2hlcyB0aGF0IG5lZWQgaXQu DQoNCiAgICBNYWtlIHN1cmUgeW91ciBTaWduZWQtb2ZmLWJ5IGZvbGxvd3Mgc3VpdCBpbiB0aGUg Y29tbWl0IG1lc3NhZ2VzLg0KDQooMikgVGhlIHNlcmllcyBpcyBoYXJkIHRvIGFwcGx5IGZvciBs b2NhbCB0ZXN0aW5nLCB3aXRoICJnaXQgYW0iLCBkdWUgdG8NCiAgICBwYXRjaCAjNSBtb2RpZnlp bmcgYm90aCBDUkxGIGFuZCBMRiBmaWxlcy4gVGhhdCdzIG5vdCBuZWNlc3NhcmlseSBhDQogICAg cHJvYmxlbSB3aXRoIHRoZSBwYXRjaCBpdHNlbGYsIGJ1dCB0aGUgbm9ybSBoYXMgYmVlbiwgZm9y DQogICAgbm9uLXRyaXZpYWwgcGF0Y2ggc2VyaWVzLCB0byBwdXNoIGEgdG9waWMgYnJhbmNoIHRv IGEgcGVyc29uYWwgcmVwbywNCiAgICBhbmQgdG8gcmVmZXJlbmNlIHRoYXQgcmVwbyAmIGJyYW5j aCBpbiB0aGUgYmx1cmIuIEl0IHBlcm1pdHMgZWFzeQ0KICAgIGZldGNoaW5nIGFuZCBlYXN5IGNv bW1lbnRpbmcgYm90aC4NCg0KICAgIFRoaXMgd2Fzbid0IGRvbmUgaW4gdjIsIGFuZCBJIHN0cnVn Z2xlZCB3aXRoICJnaXQgYW0iLiBJdCBoYXNuJ3QNCiAgICBiZWVuIGRvbmUgaW4gdjMgZWl0aGVy LiBQbGVhc2UgZG8gaXQgaW4gdjQgYW5kIGZ1cnRoZXIgdmVyc2lvbnMuDQoNCigzKSBJbiBteSBy ZXZpZXcgb2YgdGhlIHYxIHNlcmllcywgSSByZXF1ZXN0ZWQgdGhhdCB0aGUgQ0NfRkxBR1MNCiAg ICBjaGFuZ2VzLCBmb3IgdGhlICJPcGVuc3NsTGliLmluZiIgYW5kICJPcGVuc3NsTGliQ3J5cHRv LmluZiIgZmlsZXMsDQogICAgYmUgaXNvbGF0ZWQgdG8gdGhlaXIgb3duIHN0YW5kYWxvbmUgcGF0 Y2guIEluIHYyLCB0aGlzIHdhcyBuaWNlbHkNCiAgICBhZGRyZXNzZWQgaW4gcGF0Y2ggIzQsIGFu ZCBJIGdhdmUgbXkgUi1iLiBJbiB2MyBob3dldmVyLCB5b3UNCiAgICBzcXVhc2hlZCBhIHRvdGFs bHkgdW5yZWxhdGVkIC0tIGJ1dCBhdCB0aGUgc2VyaWVzIGxldmVsLCBuZWNlc3NhcnkNCiAgICAt LSBjaGFuZ2UgaW50byB0aGUgc2FtZSBwYXRjaCAobmFtZWx5ICJzeXMvc3lzY2FsbC5oIikuIFdo aWxlIHRoYXQNCiAgICBpbXByb3ZlZCB0aGUgZW5kIHJlc3VsdCBvZiB0aGUgc2VyaWVzIGZvciBz dXJlLCBpdCAqbmVnYXRlZCogdGhlIHYyDQogICAgaW1wcm92ZW1lbnQgaW4gdGhlIHNwZWNpZmlj IHBhdGNoLg0KDQogICAgSW4gbXkgdjIgcmV2aWV3LCB0aGlzIHdhcyBob3cgSSBhc2tlZCBmb3Ig InN5cy9zeXNjYWxsLmgiOg0KDQogICAgICAgIFNvIHBsZWFzZSBpbmNsdWRlIGEgcGF0Y2ggaW4g dGhlIHYzIHNlcmllcyB0aGF0IGFkZHMNCiAgICAgICAgIkNyeXB0b1BrZy9MaWJyYXJ5L0luY2x1 ZGUvc3lzL3N5c2NhbGwuaCIgbGlrZSBzdWdnZXN0ZWQgYWJvdmUuDQoNCiAgICAqU2VwYXJhdGUg cGF0Y2gqLg0KDQogICAgSWYgeW91IGRpc2FncmVlIHdpdGggbXkgcmVxdWVzdCwgdGhhdCdzIDEw MCUgcGFydCBvZiB0aGUgcHJvY2VzcywNCiAgICBidXQgdGhlbiBwbGVhc2UgcmVzcG9uZCB1bmRl ciB0aGUgcmVxdWVzdCwgcmF0aGVyIHRoYW4gZHVtcGluZyBhbg0KICAgIGVudGlyZSBuZXcgdmVy c2lvbiBvZiB0aGUgc2VyaWVzIG9uIG1lIHRoYXQgZG9lcyBub3QgY29tcGx5IHdpdGggbXkNCiAg ICByZXF1ZXN0Lg0KDQooNCkgSW4gdmVyc2lvbiAzLCB5b3UgZmFpbGVkIHRvIHBpY2sgdXAgbXkg UmV2aWV3ZWQtYnkgdGFncyB0aGF0IEkgaGFkDQogICAgZ2l2ZW4gZm9yIHYyIDEvNiBhbmQgdjIg Ni82Lg0KDQogICAgSW4gbW9yZSB0ZWNobmljYWwgdGVybXMsIHRoaXMgbWVhbnMgdGhhdCB5b3Ug c2hvdWxkIGhhdmUgcnVuICJnaXQNCiAgICByZWJhc2UgLWkiLCBzZWxlY3RlZCB0aGUgInJld29y ZCIgYWN0aW9uIGZvciBwYXRjaGVzIHYyIDEvNiBhbmQgdjINCiAgICA2LzYsIGFuZCBhcHBlbmRl ZCAtLSB1c2luZyB0aGUgY2xpcGJvYXJkIC0tIG15IFItYiB0YWdzLCBmcm9tIG15DQogICAgcmV2 aWV3IGVtYWlscywgdG8gdGhlIGNvbW1pdCBtZXNzYWdlcy4NCg0KICAgIFRoaXMgaXMgZG9jdW1l bnRlZCBpbiBkZXRhaWwsIGluIFsqXSAoY29udHJpYnV0b3Igc3RlcCAyOCkuDQoNCiAgICAoUmVm ZXJyaW5nIHRvIHRoZSBwcmV2aW91cyBidWxsZXQsIHlvdSBhbHNvIGZhaWxlZCB0byBwaWNrIHVw IG15IFItYg0KICAgIGZvciBwYXRjaCB2MiA0LzYuIEhvd2V2ZXIsIHVsdGltYXRlbHksIHRoYXQg d2FzIHRoZSBjb3JyZWN0IGFjdGlvbg0KICAgIGZvciB0aGF0IHBhdGNoLCBnaXZlbiB0aGF0IHlv dSBtb2RpZmllZCB0aGUgcGF0Y2ggaW4gdjMuIElmIGEgcGF0Y2gNCiAgICBpcyBtb2RpZmllZCBz aWduaWZpY2FudGx5IGluIGEgcmV2aXNpb24sIHRoZW4gcmV2aWV3IHRhZ3MgZ2FybmVyZWQNCiAg ICBlYXJsaWVyIHNob3VsZCBiZSBkcm9wcGVkLCBzbyB0aGF0IHJldmlld2VycyBjaGVjayB0aGUg cGF0Y2ggYWdhaW4uKQ0KDQooNSkgSmlhbiBoYWQgc29tZSBxdWVzdGlvbnMgc3RpbGwgb3BlbiB1 bmRlciB2MiA1LzYsIHdoZW4geW91IHBvc3RlZCB2My4NCiAgICBUaGUgcXVlc3Rpb25zIHdlcmUg YWRkcmVzc2VkIHRvIG1lLiBTb21ldGltZXMgSSBjYW5ub3QgYW5zd2VyIG9uIHRoZQ0KICAgIG5l eHQgZGF5LCBhbmQgeWVzLCB0aGVyZSB3YXMgYSB3ZWVrZW5kIHRvLg0KDQogICAgSWYgeW91IHRo aW5rIGEgcmV2aWV3ZXIgbWlzc2VkIHNvbWV0aGluZywgcGxlYXNlIHdhaXQgb25lIG9yIHR3bw0K ICAgIGJ1c2luZXNzIGRheXMsIGFuZCBwaW5nIHRoZW0gb2ZmLWxpc3Qgb3Igb24tbGlzdCwgYmVm b3JlIHNlbmRpbmcgdGhlDQogICAgbmV4dCB2ZXJzaW9uLg0KDQogICAgSWYgdGhlcmUgaXNuJ3Qg ZW5vdWdoIHRpbWUgbGVmdCB0byBjYXRjaCB0aGUgdXBjb21pbmcgc3RhYmxlIHRhZw0KICAgIHdp dGggdGhpcyB3b3JrLCB0aGVuIHdlIHNob3VsZCBwb3N0cG9uZSB0aGlzIHdvcmsgdG8gdGhlIG5l eHQgc3RhYmxlDQogICAgdGFnLg0KDQpbKl0gaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS90 aWFub2NvcmUuZ2l0aHViLmlvL3dpa2kvTGFzemxvJ3MtdW5rZW1wdC1naXQtZ3VpZGUtZm9yLWVk azItY29udHJpYnV0b3JzLWFuZC1tYWludGFpbmVycw0KDQpUaGFua3MNCkxhc3psbw0KDQoNCg0K