From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web11.1117.1585352587286550963 for ; Fri, 27 Mar 2020 16:43:07 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: jiewen.yao@intel.com) IronPort-SDR: Y7/kyFyLuFh+rAer4YeNloM/k7VlrGiPq/dbF+ZHovZ2wPC0krNbJd6pUM2BoDU11wFoXECB9r momKjw/zCdcw== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Mar 2020 16:43:06 -0700 IronPort-SDR: kMuQ4l1l5ZLLQbzBHY83az1IaDxK08X/HKTxmZobYsUg36jQ+o4omRpkhNb3qWuDU3USjI2/CQ z/OxdYJQBFgg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,314,1580803200"; d="scan'208";a="358636052" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by fmsmga001.fm.intel.com with ESMTP; 27 Mar 2020 16:43:06 -0700 Received: from fmsmsx606.amr.corp.intel.com (10.18.126.86) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.439.0; Fri, 27 Mar 2020 16:43:06 -0700 Received: from fmsmsx606.amr.corp.intel.com (10.18.126.86) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Fri, 27 Mar 2020 16:43:05 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Fri, 27 Mar 2020 16:43:05 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.50]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.137]) with mapi id 14.03.0439.000; Sat, 28 Mar 2020 07:43:03 +0800 From: "Yao, Jiewen" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "Fu, Siyuan" , "Gao, Zhichao" CC: "Wang, Jian J" , "Lu, XiaoyuX" , Maciej Rabeda , "Wu, Jiaxin" Subject: Re: [edk2-devel] [PATCH 0/8] CryptoPkg: Retire the deprecate function Thread-Topic: [edk2-devel] [PATCH 0/8] CryptoPkg: Retire the deprecate function Thread-Index: AQHWA9r3vfbc0WLdPUSI70pQ90E/bahbNjmAgACIDrD//31yAIAAhwdggABbpICAAPEZQA== Date: Fri, 27 Mar 2020 23:43:02 +0000 Message-ID: <74D8A39837DF1E4DA445A8C0B3885C503F9A3800@shsmsx102.ccr.corp.intel.com> References: <20200327015629.2588-1-zhichao.gao@intel.com> <74D8A39837DF1E4DA445A8C0B3885C503F9A0490@shsmsx102.ccr.corp.intel.com> <74D8A39837DF1E4DA445A8C0B3885C503F9A08EF@shsmsx102.ccr.corp.intel.com> In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: jiewen.yao@intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIE1pa2UuDQpJIHVuZGVyc3RhbmQgdGhlICpwcml2YXRlIHByb3RvY29sKiBub3cuIEkg dGhpbmsgaXQgaXMgT0sgdG8gcHV0IENyeXB0b1Byb3RvY29sIGludG8gUHJpdmF0ZSBkaXIgdG8g c2V2ZXIgdGhhdCBwdXJwb3NlLg0KQW5kIGZvciBwcml2YXRlIEFQSSwgSSBkb27igJl0IGhhdmUg Y29uY2VybiBvbiB0aGUgZGF0YSBzdHJ1Y3R1cmUsIHNpbmNlIGl0IGlzIGludmlzaWJsZS4NCg0K U2l5dWFuIHByb3ZpZGVkIGJlbG93IHVzYWdlIGFuZCBjb25jZXJuOg0KIlRoZSBnb2FsIHRvIHBy b3ZpZGUgYSBkcml2ZXIgdmVyc2lvbiBvZiBjcnlwdG8gc2VydmljZSBpcyB0byBzdXBwb3J0IG1v ZHVsaXphdGlvbg0KRlcgdXBkYXRlLCB3aGljaCBtZWFucyB0aGUgY3J5cHRvIGRyaXZlciBtYXkg Tk9UIGJlIHVwZGF0ZWQgdG9nZXRoZXIgd2l0aA0KaXRzIGNvbnN1bWVyLiBBIHBsYXRmb3JtIG1h eSBjaG9vc2UgdG8gdXBkYXRlIHRoZSBjcnlwdG8gc2VydmljZSBkcml2ZXIgdG8gYQ0KbmV3IHZl cnNpb24gd2l0aCB0aGlzIHBhdGNoLCB0aGVuIGFsbCB0aGUgQmFzZUNyeXB0b0xpYiBjb25zdW1l cnMgd2lsbCBiZSBtZXNzZWQuIg0KDQpUaGlzIHVzYWdlIG1pZ2h0IGJlY29tZSBhIHByb2JsZW0s IHdoZW4gd2Ugd2FudCB0byBkZXByZWNhdGUgYW4gQVBJIGFuZCBrZWVwIGJpbmFyeSBjb21wYXRp YmlsaXR5IGF0IHNhbWUgdGltZS4NCihUbyBiZSBzcGVjaWZpYywgSSBhbSBub3Qgd29ycmllZCBh Ym91dCBzb3VyY2UgY29tcGF0aWJpbGl0eSwgYmVjYXVzZSB3ZSBjYW4gdXBkYXRlIGJvdGggcHJv ZHVjZXIgYW5kIGNvbnN1bWVyLg0KSSBhbSBub3Qgd29ycmllZCBhYm91dCBhZGRpbmcgQVBJLCBi ZWNhdXNlIHRoZXJlIHdpbGwgYmUgbm8gaXNzdWUgb24gYXBwZW5kaW5nIGEgZnVuY3Rpb24gYXQg dGhlIGVuZC4pDQoNClRha2UgYmVsb3cgYXMgYW4gZXhhbXBsZToNCkZpcm13YXJlIFZlcnNpb24g MTAwIHVzZXMgQ3J5cHRvIFZlcnNpb24gMTAwLg0KV2Ugd2FudCB0byBkZXByZWNhdGUgYSBwcml2 YXRlIEFQSSBhbmQgY2hhbmdlIHRvIGEgbmV3IG9uZS4gU28sIHdlIHVwZ3JhZGUgQ3J5cHRvIHRv IFZlcnNpb24gMTAxIGFuZCB1cGRhdGUgRmlybXdhcmUgdG8gVmVyc2lvbiAxMDEuDQpPZiBjb3Vy c2UsIHdlIG5lZWQgY2hhbmdlICphbGwgb3RoZXIgY29uc3VtZXJzKiBhbmQgcmVidWlsZCBldmVy eXRoaW5nIG1ha2Ugc3VyZSBpdCB3b3JrcyBjb3JyZWN0bHkuDQpIb3dldmVyLCBpdCBpcyBoYXJk IHRvIHN1cHBvcnQgdGhpcyBpbiAibW9kdWxpemF0aW9uIEZXIHVwZGF0ZSIsIGJlY2F1c2Ugd2Ug aGF2ZSBubyBjaGFuY2UgdG8gdXBkYXRlIHRoZSBiaW5hcnkgb2YgZmlybXdhcmUgdmVyc2lvbiAx MDAuDQoNCklmIHdlIGhhdmUgdG8ga2VlcCAqcGVybWFuZW50IGJpbmFyeSBjb21wYXRpYmlsaXR5 KiwgdGhlbiB3ZSBjYW5ub3QgZGVwcmVjYXRlIGFueSBvbGQgQVBJLCBqdXN0IGJlY2F1c2UgdGhh dCB3aWxsIGJyZWFrIG9sZCBjb25zdW1lci4NClRoYXQgYnJpbmdzIG11Y2ggdmFsaWRhdGlvbiBi dXJkZW4sIGJlY2F1c2UgeW91IGhhdmUgdG8gdGVzdCBldmVyeSB1cGRhdGUgaW4gbWFzdGVyIHdp dGggb2xkIGJpbmFyaWVzLCBiZXNpZGVzIHRoZSBsYXRlc3QgYmluYXJpZXMuDQpUaGF0IGFsc28g YnJpbmdzIG1haW50ZW5hbmNlIGJ1cmRlbiBmb3IgdGhlIHVudXNlZCBvbGQgQVBJLiBUaGUgb25s eSBjb25zdW1lciBpcyBpbiB0aGUgb2xkIGJpbmFyeSBhbmQgaW52aXNpYmxlLiANCkkgZG9u4oCZ dCBiZWxpZXZlIHRoYXQgaXMgd2hhdCB3ZSB3YW50Lg0KDQpNb2R1bGl6YXRpb24gRlcgdXBkYXRl IGlzIGdvb2QgZmVhdHVyZS4gQW5kIHdlIGNhbiBoYXZlIGRpZmZlcmVudCBzdHJhdGVneSBmb3Ig dGhhdCBiZXNpZGVzIGtlZXBpbmcgcGVybWFuZW50IGJpbmFyeSBjb21wYXRpYmlsaXR5Lg0KMSkg TW9kdWxpemF0aW9uIEZXIHVwZGF0ZSBjYW4gYmUgbGltaXRlZCBhIHJhbmdlIG9mIHZlcnNpb24u IEF0IHNvbWUgcG9pbnQsIHlvdSBoYXZlIHRvIHVwZGF0ZSB0aGUgd2hvbGUgRlcsIGJlY2F1c2Ug dGhlcmUgYXJlIHRvbyBtYW55IGNoYW5nZXMgb3IgaW5jb21wYXRpYmxlIGJpbmFyeSBjaGFuZ2Vz LiBUaGUgY2FkZW5jZSBvZiBmdWxsIHVwZGF0ZSBjYW4gYmUgbG9uZ2VyIHRoYW4gdGhlIG9uZSBv ZiBwYXJ0aWFsIHVwZGF0ZS4gRm9yIGV4YW1wbGUsIExpbnV4IG9yIHdpbmRvd3MgYXJlIG1ha2lu ZyBpbmNvbXBhdGlibGUgY2hhbmdlIGluIG1ham9yIHZlcnNpb24gYW5kIG9ubHkga2VlcCBjb21w YXRpYmlsaXR5IGluIG1pbm9yIHZlcnNpb24uDQoyKSBBIHByb2plY3QgY2FuIGJyYW5jaCB0aGUg cHJvZHVjdGlvbiBsYXVuY2ggZmlybXdhcmUsIGFuZCBvbmx5IGtlZXAgYmluYXJ5IGNvbXBhdGli aWxpdHkgYW5kIHN1cHBvcnQgdGhlIG1vZHVsaXphdGlvbiBGVyB1cGRhdGUgd2l0aGluIHRoaXMg YnJhbmNoLiBBcyBzdWNoLCB0aGUgYmlnIHVwZGF0ZSBpbiBtYXN0ZXIgd29uJ3QgaW1wYWN0IHRo aXMgYnJhbmNoLiBJZiBhIHByb2R1Y3Rpb24gbWF5IGNob29zZSB0byByZXN5bmMgdG8gbWFzdGVy LCBhdCB0aGF0IHRpbWUgYSBmdWxsIGZpcm13YXJlIHVwZGF0ZSBpcyByZXF1aXJlZC4gSSBndWVz cyBtb3N0IHBlb3BsZSBhcmUgdXNpbmcgdGhpcyB3YXkgaW4gYSByZWFsIHByb2R1Y3Rpb24uDQoN ClRob3VnaHQ/DQoNClRoYW5rIHlvdQ0KWWFvIEppZXdlbg0KDQoNCj4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gRnJvbTogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlA aW50ZWwuY29tPg0KPiBTZW50OiBTYXR1cmRheSwgTWFyY2ggMjgsIDIwMjAgMTI6MzggQU0NCj4g VG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBZYW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5j b20+OyBGdSwgU2l5dWFuDQo+IDxzaXl1YW4uZnVAaW50ZWwuY29tPjsgR2FvLCBaaGljaGFvIDx6 aGljaGFvLmdhb0BpbnRlbC5jb20+OyBLaW5uZXksDQo+IE1pY2hhZWwgRCA8bWljaGFlbC5kLmtp bm5leUBpbnRlbC5jb20+DQo+IENjOiBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNv bT47IEx1LCBYaWFveXVYIDx4aWFveXV4Lmx1QGludGVsLmNvbT47DQo+IE1hY2llaiBSYWJlZGEg PG1hY2llai5yYWJlZGFAbGludXguaW50ZWwuY29tPjsgV3UsIEppYXhpbg0KPiA8amlheGluLnd1 QGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggMC84XSBDcnlw dG9Qa2c6IFJldGlyZSB0aGUgZGVwcmVjYXRlIGZ1bmN0aW9uDQo+IA0KPiBKaWV3ZW4sDQo+IA0K PiBUaGUgcHVycG9zZSBvZiBwcml2YXRlIGluY2x1ZGVzIGlzIHRvIGtlZXAgbW9kdWxlcy9saWIN Cj4gaW4gKm90aGVyKiBwYWNrYWdlcyBmcm9tIHVzaW5nIGludGVyZmFjZXMgdGhhdCBhcmUgdGhl DQo+IHBhY2thZ2Ugd2l0aCB0aGUgcHJpdmF0ZSBpbnRlcmZhY2UgZG9lcyBub3Qgd2FudCBvdGhl cg0KPiBwYWNrYWdlcyB0byB1c2UgYW5kIGRvZXMgbm90IHdhbnQgdG8gaGF2ZSB0byBjb29yZGlu YXRlDQo+IHdpdGggb3RoZXIgcGFja2FnZXMgaWYgdGhhdCBwYWNrYWdlIG93bmVyIGRlY2lkZXMg dG8NCj4gbWFrZSBjaGFuZ2VzIHRvIHRob3NlIHByaXZhdGUgaW50ZXJmYWNlcy4NCj4gDQo+IEZv ciBtb2R1bGVzL2xpYnMgd2l0aGluIHBhY2thZ2UgdGhhdCBkbyB1c2UgcHJpdmF0ZQ0KPiBpbmNs dWRlcywgdGhlIHBhY2thZ2Ugb3duZXIgZ2V0cyB0byBkZWNpZGUgaG93IHRvDQo+IG1haW50YWlu IHRoZSBpbnRlcmZhY2VzIGluIHRoZSBwcml2YXRlIGluY2x1ZGVzIHRvDQo+IHN1cHBvcnQgdGhv c2UgbW9kdWxlcy9saWJzLg0KPiANCj4gRm9yIGV4YW1wbGUsIHRoZSBDcnlwdG9Qa2cgaGFzIG1v ZHVsZXMgdGhhdCBhcmUNCj4gaW50ZW5kZWQgdG8gYmUgdXNlZCBhcyBwcmUtYnVpbHQgYmluYXJp ZXMsIHNvIHRoZQ0KPiBDcnlwdG9Qa2cgb3duZXIgbmVlZHMgdG8gbWFrZSBzdXJlIHRoZSBtYWlu dGVuYW5jZQ0KPiBvZiB0aGUgcHJpdmF0ZSBpbmNsdWRlcyBzdXBwb3J0cyBib3RoIHRoZSBzb3Vy Y2UgYW5kDQo+IGJpbmFyeSB1c2UgY2FzZXMuDQo+IA0KPiBUaGUgcHJpdmF0ZSBQcm90b2NvbC9Q UEkgaW50ZXJmYWNlcyBpbiB0aGUgQ3J5cHRvUGtnDQo+IHdlcmUgZGVzaWduZWQgdG8gc3VwcG9y dCBmdXR1cmUgZXhwYW5zaW9uLiAgVGhlIGZpcnN0DQo+IEFQSSBpbiB0aGUgUHJvdG9jb2wvUFBJ IGlzIEdldFZlcnNpb24oKS4gIFRoZSB2ZXJzaW9uDQo+IHZhbHVlIHJldHVybmVkIGNhbiBiZSB1 c2VkIHRvIGhhdmUgZGlmZmVyZW50IGxheW91dHMNCj4gb2YgZmllbGRzIGluIHRoZSBQcm90b2Nv bC9QUEkuICBJbiBvcmRlciB0byBzdXBwb3J0DQo+IGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBB UElzIGFyZSBhZGRlZCB0byB0aGUgZW5kDQo+IG9mIHRoZSBQcm90b2NvbC9QUEkgc3RydWN0dXJl IGFzIHRoZSB2ZXJzaW9uIHZhbHVlDQo+IGlzIGluY3JlYXNlZC4gIFlvdSB3aWxsIG5vdGljZSB0 aGF0IHRoZXJlIGlzIGFuIFg1MDkNCj4gc2VydmljZSB0aGF0IHdhcyBhZGRlZCBmdXJ0aGVyIGRv d24gdGhhbiB0aGUgaW5pdGlhbA0KPiBncm91cGluZy4gIFRoaXMgaXMganVzdCBhbiBleGFtcGxl IG9mIGhvdyB0aGUgQ3J5cHRvUGtnDQo+IGlzIG1haW50YWluaW5nIGEgcHJpdmF0ZSBpbnRlcmZh Y2UgZm9yIGJpbmFyeSB1c2UgY2FzZXMuDQo+IE90aGVyIHBhY2thZ2VzIG1heSBjaG9vc2UgYWx0 ZXJuYXRlIHRlY2huaXF1ZXMuDQo+IA0KPiBUaGFua3MsDQo+IA0KPiBNaWtlDQo+IA0KPiA+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8g PGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbg0KPiA+IEJlaGFsZiBPZiBZYW8sIEppZXdlbg0KPiA+ IFNlbnQ6IFRodXJzZGF5LCBNYXJjaCAyNiwgMjAyMCA5OjU5IFBNDQo+ID4gVG86IEZ1LCBTaXl1 YW4gPHNpeXVhbi5mdUBpbnRlbC5jb20+Ow0KPiA+IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBHYW8s IFpoaWNoYW8NCj4gPiA8emhpY2hhby5nYW9AaW50ZWwuY29tPg0KPiA+IENjOiBXYW5nLCBKaWFu IEogPGppYW4uai53YW5nQGludGVsLmNvbT47IEx1LCBYaWFveXVYDQo+ID4gPHhpYW95dXgubHVA aW50ZWwuY29tPjsgTWFjaWVqIFJhYmVkYQ0KPiA+IDxtYWNpZWoucmFiZWRhQGxpbnV4LmludGVs LmNvbT47IFd1LCBKaWF4aW4NCj4gPiA8amlheGluLnd1QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0 OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCAwLzhdIENyeXB0b1BrZzogUmV0aXJlDQo+ID4gdGhl IGRlcHJlY2F0ZSBmdW5jdGlvbg0KPiA+DQo+ID4gVGhhbmtzIFNpeXVuLg0KPiA+IEkgdGhpbmsg cHJvYmFibHkgd2UgbmVlZCBkaXNjdXNzIHRoaXMgbW9yZS4NCj4gPg0KPiA+IDEpIEFib3V0IHBy aXZhdGUgdi5zLiBwdWJsaWMuDQo+ID4NCj4gPiBUaGUgYmVuZWZpdCBmb3IgcHJpdmF0ZSBpbmNs dWRlIGlzIHRvIGlzb2xhdGUgZXh0ZXJuYWwNCj4gPiBpbnRlcmZhY2UgYW5kIGludGVybmFsIGlu dGVyZmFjZS4NCj4gPiBBIHBhY2thZ2UgY2FuIGtlZXAgdXBkYXRpbmcgaXRzIHByaXZhdGUgaW50 ZXJmYWNlIHdpdGhvdXQNCj4gPiBpbXBhY3QgYW55IG90aGVyIHBhY2thZ2VzLg0KPiA+IEhvd2V2 ZXIsIGluIHRoaXMgY2FzZSwgYSBwcml2YXRlIGludGVyZmFjZSB1cGRhdGUgd2lsbA0KPiA+IGJy aW5nIGJpbmFyeSBjb21wYXRpYmlsaXR5IGlzc3VlIHdpdGggb3RoZXIgcGFja2FnZS4NCj4gPiBJ IGFtIG5vdCBzdXJlIGl0IGlzIGFjY2VwdGFibGUgb3Igbm90Lg0KPiA+DQo+ID4gTWlrZQ0KPiA+ IERvIHlvdSBoYXZlIGFueSBjb21tZW50PyBJcyB0aGF0IHRoZSBkZXNpZ24gZ29hbCBvZg0KPiA+ IHByaXZhdGUgaW50ZXJmYWNlIC0ganVzdCBrZWVwIHNvdXJjZSBjb2RlIGNvbXBhdGliaWxpdHks DQo+ID4gYnV0IG5vdCBiaW5hcnkgY29tcGF0aWJsaXR5Pw0KPiA+DQo+ID4gMikgQWJvdXQgdGhl IHByb3RvY29sIGl0c2VsZi4NCj4gPg0KPiA+IE9uZSBjb25jZXJuIEkgaGF2ZSBpcyB0aGF0IHdl ICpoYXJkY29kZSogdGhlIGFsZ29yaXRobSBpbg0KPiA+IHByb3RvY29sLg0KPiA+DQo+ID4gV2Ug a2VlcHMgYWRkaW5nIG5ldyBhbGdvcml0aG0gYW5kIHJlbW92aW5nIG9sZCBvbmUuIFRoYXQNCj4g PiBtZWFucyB0aGlzIHByb3RvY29sIGludGVyZmFjZSBpcyB1bnN0YWJsZS4NCj4gPg0KPiA+IFRv ZGF5LCB3ZSBoYXZlIGRlZmluZWQgU0hBMiBzZXQsIGFuZCBkZXByZWNhdGluZyBTSEExIGFuZA0K PiA+IG9sZGVyIG9uZS4gVG9tb3Jyb3cgd2UgbWF5IG5lZWQgYWRkIFNIQTMgc2V0Lg0KPiA+IFRv ZGF5LCB3ZSBoYXZlIFJTQVBLQ1MxXzE1LiBUb21vcnJvdyB3ZSB3aWxsIGhhdmUgUlNBUFNTLg0K PiA+IFNvbWUgb3RoZXIgbmV3IHNldCBvZiBhbGdvcml0aG1zIG1pZ2h0IGJlIGFkZGVkIGxhdGVy LA0KPiA+IHN1Y2ggYXMgQUVBRCwgR01BQy4NCj4gPg0KPiA+IEZvciBhIHByb3RvY29sIGRlZmlu aXRpb24sIEkgdGhpbmsgd2UgbmVlZCAqYWJzdHJhY3QgdGhlDQo+ID4gYWN0aW9uKiwgYnV0IG5v dCAqYWxnb3JpdGhtKi4NCj4gPiBPbmUgZ29vZCBleGFtcGxlIGlzIHRoZSBVRUZJIEhBU0gyIFBy b3RvY29sLg0KPiA+IGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9ibG9iL21hc3Rl ci9NZGVQa2cvSW5jbA0KPiA+IHVkZS9Qcm90b2NvbC9IYXNoMi5oDQo+ID4gSXQganVzdCB0ZWxs cyB5b3UgZG8gdGhlIGhhc2guIFlvdSBtYXkgYWRkIG5ldyBhbGdvcml0aG0NCj4gPiBHVUlELg0K PiA+DQo+ID4gQW5vdGhlciBnb29kIGV4YW1wbGUgaXMgaW5zaWRlIG9mIG9wZW5zc2wuIE5vdyBp dCBpcw0KPiA+IHVzaW5nIEVWUCBzdHlsZSBjaXBoZXIgYWxnby4NCj4gPiBGb3IgZXhhbXBsZSwN Cj4gPiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9kb2NzL21hbjEuMS4xL21hbjMvRVZQX0VuY3J5 cHRJbmkNCj4gPiB0X2V4Lmh0bWwNCj4gPiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9kb2NzL21h bjEuMS4wL21hbjMvRVZQX0NJUEhFUl9DVFgNCj4gPiBfY3RybC5odG1sDQo+ID4gVGhlIGNpcGhl ciBpdHNlbGYgaXMgaW5wdXQgYXMgcGFyYW1ldGVyLg0KPiA+DQo+ID4gVGhlIGJlbmVmaXQgaXMg dGhhdCwgaWYgd2Ugd2FudCB0byBkZXByZWNhdGUgYW4NCj4gPiBhbGdvcml0aG0sIHRoZSBpbnRl cmZhY2UgY2FuIGJlIHVuY2hhbmdlZC4NCj4gPiBKdXN0IHRoZSBpbnRlcm5hbCBpbXBsZW1lbnRh dGlvbiBjYW4gYmUgY2hhbmdlZC4NCj4gPiBUaGUgY3VycmVudCBQQ0QgbWVjaGFuaXNtIGNhbiBz dGlsbCBiZSBhcHBsaWVkIHRvDQo+ID4gaW50ZXJuYWwgaW1wbGVtZW50YXRpb24uDQo+ID4NCj4g PiBDYW4gd2UgZ2V0IGEgY2hhbmNlIHRvIHJldmlzaXQvcmVkZXNpZ24gdGhlIHByb3RvY29sIEFQ SSwNCj4gPiB3aGVuIHdlIG1vdmUgdG8gcHVibGljIGluY2x1ZGU/DQo+ID4NCj4gPiBUaGFuayB5 b3UNCj4gPiBZYW8gSmlld2VuDQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+ID4gPiBGcm9tOiBGdSwgU2l5dWFuIDxzaXl1YW4uZnVAaW50ZWwuY29tPg0KPiA+ID4gU2Vu dDogRnJpZGF5LCBNYXJjaCAyNywgMjAyMCAxMTowNyBBTQ0KPiA+ID4gVG86IFlhbywgSmlld2Vu IDxqaWV3ZW4ueWFvQGludGVsLmNvbT47DQo+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdhbywg WmhpY2hhbw0KPiA+ID4gPHpoaWNoYW8uZ2FvQGludGVsLmNvbT4NCj4gPiA+IENjOiBXYW5nLCBK aWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT47IEx1LCBYaWFveXVYDQo+ID4gPHhpYW95dXgu bHVAaW50ZWwuY29tPjsNCj4gPiA+IE1hY2llaiBSYWJlZGEgPG1hY2llai5yYWJlZGFAbGludXgu aW50ZWwuY29tPjsgV3UsDQo+ID4gSmlheGluDQo+ID4gPiA8amlheGluLnd1QGludGVsLmNvbT4N Cj4gPiA+IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIDAvOF0gQ3J5cHRvUGtnOiBS ZXRpcmUNCj4gPiB0aGUgZGVwcmVjYXRlIGZ1bmN0aW9uDQo+ID4gPg0KPiA+ID4gSGksIEppZXdl bg0KPiA+ID4NCj4gPiA+IEFsdGhvdWdoIHRoZSBwcm90b2NvbCBpcyBwcml2YXRlLCBhIGNvcnJl c3BvbmRpbmcNCj4gPiBCYXNlQ3J5cHRvTGliIGluc3RhbmNlIGlzDQo+ID4gPiBub3QgcHJpdmF0 ZSwgbGlrZSBQZWlDcnlwdExpYi5pbmYsIFJ1bnRpbWVDcnlwdExpYiwNCj4gPiBldGMuIFRoZXNl IGxpYnJhcnkgaW5zdGFuY2VzDQo+ID4gPiB3aWxsIGJlIHN0YXRpYyBsaW5rZWQgdG8gdGhlIGNv bnN1bWVyIGRyaXZlciwgZm9yDQo+ID4gZXhhbXBsZSBhbiBpU0NTSSBuZXR3b3JrIGRyaXZlci4N Cj4gPiA+IFNvIGFjdHVhbGx5IGl0J3Mgbm90IGEgInByaXZhdGUiIGNoYW5nZSBpbnNpZGUNCj4g PiBDcnlwdG9Qa2cuDQo+ID4gPg0KPiA+ID4gVGhlIGdvYWwgdG8gcHJvdmlkZSBhIGRyaXZlciB2 ZXJzaW9uIG9mIGNyeXB0byBzZXJ2aWNlDQo+ID4gaXMgdG8gc3VwcG9ydCBtb2R1bGl6YXRpb24N Cj4gPiA+IEZXIHVwZGF0ZSwgd2hpY2ggbWVhbnMgdGhlIGNyeXB0byBkcml2ZXIgbWF5IE5PVCBi ZQ0KPiA+IHVwZGF0ZWQgdG9nZXRoZXIgd2l0aA0KPiA+ID4gaXRzIGNvbnN1bWVyLiBBIHBsYXRm b3JtIG1heSBjaG9vc2UgdG8gdXBkYXRlIHRoZQ0KPiA+IGNyeXB0byBzZXJ2aWNlIGRyaXZlciB0 byBhDQo+ID4gPiBuZXcgdmVyc2lvbiB3aXRoIHRoaXMgcGF0Y2gsIHRoZW4gYWxsIHRoZSBCYXNl Q3J5cHRvTGliDQo+ID4gY29uc3VtZXJzIHdpbGwgYmUNCj4gPiA+IG1lc3NlZC4NCj4gPiA+DQo+ ID4gPiBCZXN0IFJlZ2FyZHMNCj4gPiA+IFNpeXVhbg0KPiA+ID4NCj4gPiA+ID4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gRnJvbTogWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9A aW50ZWwuY29tPg0KPiA+ID4gPiBTZW50OiAyMDIw5bm0M+aciDI35pelIDEwOjU4DQo+ID4gPiA+ IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgRnUsIFNpeXVhbg0KPiA+IDxzaXl1YW4uZnVAaW50 ZWwuY29tPjsgR2FvLCBaaGljaGFvDQo+ID4gPiA+IDx6aGljaGFvLmdhb0BpbnRlbC5jb20+DQo+ ID4gPiA+IENjOiBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT47IEx1LCBYaWFv eXVYDQo+ID4gPiA8eGlhb3l1eC5sdUBpbnRlbC5jb20+Ow0KPiA+ID4gPiBNYWNpZWogUmFiZWRh IDxtYWNpZWoucmFiZWRhQGxpbnV4LmludGVsLmNvbT47IFd1LA0KPiA+IEppYXhpbg0KPiA+ID4g PiA8amlheGluLnd1QGludGVsLmNvbT4NCj4gPiA+ID4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVs XSBbUEFUQ0ggMC84XSBDcnlwdG9Qa2c6DQo+ID4gUmV0aXJlIHRoZSBkZXByZWNhdGUNCj4gPiA+ IGZ1bmN0aW9uDQo+ID4gPiA+DQo+ID4gPiA+IEVES0lJX0NSWVBUT19QUk9UT0NPTCBpcyAqcHJp dmF0ZSouDQo+ID4gPiA+DQo+ID4gPg0KPiA+IGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUv ZWRrMi9ibG9iL21hc3Rlci9DcnlwdG9Qa2cvUA0KPiA+IHJpdmF0ZS9Qcm90b2NvbC9DDQo+ID4g PiA+IHJ5cHRvLmgNCj4gPiA+ID4NCj4gPiA+ID4gV2h5IHdlIGNhbm5vdCBjaGFuZ2U/DQo+ID4g PiA+DQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gPiA+ID4gPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91 cHMuaW8+DQo+ID4gT24gQmVoYWxmIE9mIFNpeXVhbiwNCj4gPiA+IEZ1DQo+ID4gPiA+ID4gU2Vu dDogRnJpZGF5LCBNYXJjaCAyNywgMjAyMCAxMDo0NyBBTQ0KPiA+ID4gPiA+IFRvOiBHYW8sIFpo aWNoYW8gPHpoaWNoYW8uZ2FvQGludGVsLmNvbT47DQo+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW8N Cj4gPiA+ID4gPiBDYzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBMdSwN Cj4gPiBYaWFveXVYDQo+ID4gPiA+IDx4aWFveXV4Lmx1QGludGVsLmNvbT47DQo+ID4gPiA+ID4g TWFjaWVqIFJhYmVkYSA8bWFjaWVqLnJhYmVkYUBsaW51eC5pbnRlbC5jb20+OyBXdSwNCj4gPiBK aWF4aW4NCj4gPiA+ID4gPiA8amlheGluLnd1QGludGVsLmNvbT4NCj4gPiA+ID4gPiBTdWJqZWN0 OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCAwLzhdIENyeXB0b1BrZzoNCj4gPiBSZXRpcmUgdGhl IGRlcHJlY2F0ZQ0KPiA+ID4gPiBmdW5jdGlvbg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gSGksIFpo aWNoYW8NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IFdlIHNob3VsZCBuZXZlciBtb3ZlL2RlbGV0ZSBh IG1lbWJlciBmaWVsZCBvZiBhDQo+ID4gcHJldmlvdXMgZGVmaW5lZCBwcm90b2NvbA0KPiA+ID4g PiA+IEludGVyZmFjZS4gSW5zdGVhZCwgdGhlc2UgcHJvdG9jb2wgQVBJcyBzaGFsbCBiZQ0KPiA+ IGtlcHQgYW5kIHJldHVybiBhbiBlcnJvciBjb2RlDQo+ID4gPiA+ID4gSWYgdGhlIGZ1bmN0aW9u IGlzIHJldGlyZWQuIE90aGVyd2lzZSB0aGUgY29uc3VtZXINCj4gPiBkcml2ZXIgbWF5IGNhbGwg aW50byBhbg0KPiA+ID4gPiA+IEluY29ycmVjdCBmdW5jdGlvbiBpZiBpdCdzIGJ1aWxkIHdpdGgg ZGlmZmVyZW50DQo+ID4gY29kZWJhc2UvUENEIHNldHRpbmdzIHdpdGggdGhlDQo+ID4gPiA+ID4g Q3J5cHRvIFBFSS9EWEUvU01NIGRyaXZlci4NCj4gPiA+ID4gPiBUaGlzIGNvbW1lbnQgYXBwbGll cyB0byBhbGwgdGhlDQo+ID4gRURLSUlfQ1JZUFRPX1BST1RPQ09MIHJlbGF0ZWQgY2hhbmdlcw0K PiA+ID4gaW4NCj4gPiA+ID4gPiB5b3VyIHBhdGNoIHNldC4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ IEJlc3QgUmVnYXJkcw0KPiA+ID4gPiA+IFNpeXVhbg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiA+ID4gRnJvbTogR2FvLCBaaGljaGFv IDx6aGljaGFvLmdhb0BpbnRlbC5jb20+DQo+ID4gPiA+ID4gPiBTZW50OiAyMDIw5bm0M+aciDI3 5pelIDk6NTYNCj4gPiA+ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+ID4gPiA+ ID4gQ2M6IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgTHUsDQo+ID4gWGlh b3l1WA0KPiA+ID4gPiA+IDx4aWFveXV4Lmx1QGludGVsLmNvbT47DQo+ID4gPiA+ID4gPiBNYWNp ZWogUmFiZWRhIDxtYWNpZWoucmFiZWRhQGxpbnV4LmludGVsLmNvbT47DQo+ID4gV3UsIEppYXhp bg0KPiA+ID4gPiA+ID4gPGppYXhpbi53dUBpbnRlbC5jb20+OyBGdSwgU2l5dWFuDQo+ID4gPHNp eXVhbi5mdUBpbnRlbC5jb20+DQo+ID4gPiA+ID4gPiBTdWJqZWN0OiBbUEFUQ0ggMC84XSBDcnlw dG9Qa2c6IFJldGlyZSB0aGUNCj4gPiBkZXByZWNhdGUgZnVuY3Rpb24NCj4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiBSRUY6DQo+ID4gaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3df YnVnLmNnaT9pZD0xNjgyDQo+ID4gPiA+ID4gPiBSRUY6DQo+ID4gaHR0cHM6Ly9idWd6aWxsYS50 aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0xODk4DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gTUQ0LCBBUjQsIFRkZXMsIEFlcyBFY2IgbW9kZSwgTUQ1IGFuZCBTSEExIGlzIG5vdA0KPiA+ IHNlY3VyZSBhbnkgbG9uZ2VyLg0KPiA+ID4gPiA+ID4gVGhleSBhcmUgYWxsIGRlcHJlY2F0ZWQu IEVkazIgd291bGQgbm90IHN1cHBvcnQNCj4gPiB0aGVtIGFueSBsb25nZXIuDQo+ID4gPiA+ID4g PiBTbyByZW1vdmUgdGhlbS4NCj4gPiA+ID4gPiA+IEJ1dCB1ZWZpIHNwZWMgd2FudCB0byBrZWVw IE1ENSBhbmQgU0hBMSBmb3INCj4gPiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4NCj4gPiA+ID4g PiA+IFNvIGFkZCB0d28gcGNkcyB0byBjb250cm9sIHRoZSBNRDUgYW5kIFNIQTENCj4gPiBlbmFi bGVtZW50LiBTZXQgdGhlIHBjZHMNCj4gPiA+ID4gPiA+IGRlZmF1bHQgdmFsdWUgdG8gZmFsc2Ug dG8gaW5kaWNhdGUgdGhleSBhcmUNCj4gPiBkZXByZWNhdGVkLg0KPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+IE5ldFdvcmtQa2cncyBpU0NTSSBkcml2ZXIgd291bGQgY29uc3VtZSB0aGUgTUQ1DQo+ ID4gZnVuY3Rpb24sIHNvIGNoYW5nZQ0KPiA+ID4gPiA+ID4gdGhlIG1kNSBwY2QgdG8gVFVSRSB3 aGVuIGlTQ1NJIGlzIGVuYWJsZWQuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gQ2M6IEppYW4g SiBXYW5nIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+ID4gPiA+ID4gPiBDYzogWGlhb3l1IEx1 IDx4aWFveXV4Lmx1QGludGVsLmNvbT4NCj4gPiA+ID4gPiA+IENjOiBNYWNpZWogUmFiZWRhIDxt YWNpZWoucmFiZWRhQGxpbnV4LmludGVsLmNvbT4NCj4gPiA+ID4gPiA+IENjOiBKaWF4aW4gV3Ug PGppYXhpbi53dUBpbnRlbC5jb20+DQo+ID4gPiA+ID4gPiBDYzogU2l5dWFuIEZ1IDxzaXl1YW4u ZnVAaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogWmhpY2hhbyBHYW8NCj4g PiA8emhpY2hhby5nYW9AaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFpoaWNo YW8gR2FvICg4KToNCj4gPiA+ID4gPiA+ICAgQ3J5cHRvUGtnL0Jhc2VDcnB5dExpYjogUmV0aXJl IE1ENCBhbGdvcml0aG0NCj4gPiA+ID4gPiA+ICAgQ3J5cHRvUGtnL0Jhc2VDcnlwdExpYjogUmV0 aXJlIEFSQzQgYWxnb3JpdGhtDQo+ID4gPiA+ID4gPiAgIENyeXB0b1BrZy9CYXNlQ3J5cHRMaWI6 IFJldGlyZSB0aGUgVGRlcw0KPiA+IGFsZ29yaXRobQ0KPiA+ID4gPiA+ID4gICBDcnlwdG9Qa2cv QmFzZUNyeXB0TGliOiBSZXRpcmUgQWVzIEVjYiBtb2RlDQo+ID4gYWxnb3JpdGhtDQo+ID4gPiA+ ID4gPiAgIENyeXB0b1BrZy9kZWM6IEFkZCBwY2RzIHRvIGF2b2lkIGJ1aWxkaW5nIHRoZQ0KPiA+ IGRlcHJlY2F0ZWQgZnVuY3Rpb24NCj4gPiA+ID4gPiA+ICAgTmV0V29ya1BrZy9QY2QuaW5jOiBF bmFibGUgdGhlIE1ENSBmb3IgaVNDU0kNCj4gPiA+ID4gPiA+ICAgQ3J5cHRvL0Jhc2VDcnlwdExp YjogVXNpbmcgcGNkIHRvIGNvbnRyb2wgTUQ1DQo+ID4gZW5hYmxlbWVudA0KPiA+ID4gPiA+ID4g ICBDcnlwdG9Qa2cvQmFzZUNyeXB0TGliOiBVc2UgUGNkIHRvIGNvbnRyb2wgdGhlDQo+ID4gU0hB MSBlbmFibGVtZW50DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gIENyeXB0b1BrZy9DcnlwdG9Q a2cuZGVjICAgICAgICAgICAgICAgICAgICAgICB8DQo+ID4gMTEgKw0KPiA+ID4gPiA+ID4gIENy eXB0b1BrZy9DcnlwdG9Qa2cudW5pICAgICAgICAgICAgICAgICAgICAgICB8DQo+ID4gMTEgKw0K PiA+ID4gPiA+ID4gIENyeXB0b1BrZy9Ecml2ZXIvQ3J5cHRvLmMgICAgICAgICAgICAgICAgICAg ICB8DQo+ID4gNjM0ICstLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4gPiA+ID4gIENyeXB0b1BrZy9J bmNsdWRlL0xpYnJhcnkvQmFzZUNyeXB0TGliLmggICAgICB8DQo+ID4gNTQ4IC0tLS0tLS0tLS0t LS0tLQ0KPiA+ID4gPiA+ID4gIC4uLi9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9CYXNlQ3J5cHRMaWIu aW5mICAgICB8DQo+ID4gOSArLQ0KPiA+ID4gPiA+ID4gIC4uLi9MaWJyYXJ5L0Jhc2VDcnlwdExp Yi9DaXBoZXIvQ3J5cHRBZXMuYyAgICB8DQo+ID4gMTE0IC0tLS0NCj4gPiA+ID4gPiA+ICAuLi4v QmFzZUNyeXB0TGliL0NpcGhlci9DcnlwdEFlc051bGwuYyAgICAgICAgfA0KPiA+IDUyIC0tDQo+ ID4gPiA+ID4gPiAgLi4uL0xpYnJhcnkvQmFzZUNyeXB0TGliL0NpcGhlci9DcnlwdEFyYzQuYyAg IHwNCj4gPiAyMDUgLS0tLS0tDQo+ID4gPiA+ID4gPiAgLi4uL0Jhc2VDcnlwdExpYi9DaXBoZXIv Q3J5cHRBcmM0TnVsbC5jICAgICAgIHwNCj4gPiAxMjQgLS0tLQ0KPiA+ID4gPiA+ID4gIC4uLi9M aWJyYXJ5L0Jhc2VDcnlwdExpYi9DaXBoZXIvQ3J5cHRUZGVzLmMgICB8DQo+ID4gMzY0IC0tLS0t LS0tLS0NCj4gPiA+ID4gPiA+ICAuLi4vQmFzZUNyeXB0TGliL0NpcGhlci9DcnlwdFRkZXNOdWxs LmMgICAgICAgfA0KPiA+IDE2MCAtLS0tLQ0KPiA+ID4gPiA+ID4gIC4uLi9MaWJyYXJ5L0Jhc2VD cnlwdExpYi9IYXNoL0NyeXB0TWQ0LmMgICAgICB8DQo+ID4gMjIzIC0tLS0tLQ0KPiA+ID4gPiA+ ID4gIC4uLi9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9IYXNoL0NyeXB0TWQ0TnVsbC5jICB8DQo+ID4g MTQzIC0tLS0NCj4gPiA+ID4gPiA+ICAuLi4vTGlicmFyeS9CYXNlQ3J5cHRMaWIvSGFzaC9Dcnlw dE1kNS5jICAgICAgfA0KPiA+IDUgKy0NCj4gPiA+ID4gPiA+ICAuLi4vTGlicmFyeS9CYXNlQ3J5 cHRMaWIvSG1hYy9DcnlwdEhtYWNNZDUuYyAgfA0KPiA+IDMgKw0KPiA+ID4gPiA+ID4gIC4uLi9C YXNlQ3J5cHRMaWIvSG1hYy9DcnlwdEhtYWNNZDVOdWxsLmMgICAgICB8DQo+ID4gMyArDQo+ID4g PiA+ID4gPiAgLi4uL0xpYnJhcnkvQmFzZUNyeXB0TGliL0htYWMvQ3J5cHRIbWFjU2hhMS5jIHwN Cj4gPiAzICsNCj4gPiA+ID4gPiA+ICAuLi4vQmFzZUNyeXB0TGliL0htYWMvQ3J5cHRIbWFjU2hh MU51bGwuYyAgICAgfA0KPiA+IDMgKw0KPiA+ID4gPiA+ID4gIC4uLi9MaWJyYXJ5L0Jhc2VDcnlw dExpYi9QZWlDcnlwdExpYi5pbmYgICAgICB8DQo+ID4gMTMgKy0NCj4gPiA+ID4gPiA+ICAuLi4v QmFzZUNyeXB0TGliL1BrL0NyeXB0UGtjczVQYmtkZjIuYyAgICAgICAgfA0KPiA+IDMgKw0KPiA+ ID4gPiA+ID4gIC4uLi9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9Qay9DcnlwdFJzYUJhc2ljLmMgICB8 DQo+ID4gNSArDQo+ID4gPiA+ID4gPiAgLi4uL0xpYnJhcnkvQmFzZUNyeXB0TGliL1BrL0NyeXB0 UnNhRXh0LmMgICAgIHwNCj4gPiA1ICsNCj4gPiA+ID4gPiA+ICAuLi4vTGlicmFyeS9CYXNlQ3J5 cHRMaWIvUnVudGltZUNyeXB0TGliLmluZiAgfA0KPiA+IDEzICstDQo+ID4gPiA+ID4gPiAgLi4u L0xpYnJhcnkvQmFzZUNyeXB0TGliL1NtbUNyeXB0TGliLmluZiAgICAgIHwNCj4gPiAxMyArLQ0K PiA+ID4gPiA+ID4gIC4uLi9CYXNlQ3J5cHRMaWJOdWxsL0Jhc2VDcnlwdExpYk51bGwuaW5mICAg ICB8DQo+ID4gMyAtDQo+ID4gPiA+ID4gPiAgLi4uL0Jhc2VDcnlwdExpYk51bGwvQ2lwaGVyL0Ny eXB0QWVzTnVsbC5jICAgIHwNCj4gPiA1NCArLQ0KPiA+ID4gPiA+ID4gIC4uLi9CYXNlQ3J5cHRM aWJOdWxsL0NpcGhlci9DcnlwdEFyYzROdWxsLmMgICB8DQo+ID4gMTI0IC0tLS0NCj4gPiA+ID4g PiA+ICAuLi4vQmFzZUNyeXB0TGliTnVsbC9DaXBoZXIvQ3J5cHRUZGVzTnVsbC5jICAgfA0KPiA+ IDE2MCAtLS0tLQ0KPiA+ID4gPiA+ID4gIC4uLi9CYXNlQ3J5cHRMaWJOdWxsL0hhc2gvQ3J5cHRN ZDROdWxsLmMgICAgICB8DQo+ID4gMTQzIC0tLS0NCj4gPiA+ID4gPiA+ICAuLi4vQmFzZUNyeXB0 TGliTnVsbC9IYXNoL0NyeXB0TWQ1TnVsbC5jICAgICAgfA0KPiA+IDMgKw0KPiA+ID4gPiA+ID4g IC4uLi9CYXNlQ3J5cHRMaWJOdWxsL0htYWMvQ3J5cHRIbWFjTWQ1TnVsbC5jICB8DQo+ID4gMyAr DQo+ID4gPiA+ID4gPiAgLi4uL0Jhc2VDcnlwdExpYk51bGwvSG1hYy9DcnlwdEhtYWNTaGExTnVs bC5jIHwNCj4gPiA0ICstDQo+ID4gPiA+ID4gPiAgLi4uL0Jhc2VDcnlwdExpYk9uUHJvdG9jb2xQ cGkvQ3J5cHRMaWIuYyAgICAgIHwNCj4gPiA2MDQgKy0tLS0tLS0tLS0tLS0tLS0NCj4gPiA+ID4g PiA+ICAuLi4vTGlicmFyeS9CYXNlSGFzaEFwaUxpYi9CYXNlSGFzaEFwaUxpYi5jICAgfA0KPiA+ IDEyICsNCj4gPiA+ID4gPiA+ICAuLi4vTGlicmFyeS9CYXNlSGFzaEFwaUxpYi9CYXNlSGFzaEFw aUxpYi5pbmYgfA0KPiA+IDEgKw0KPiA+ID4gPiA+ID4gIENyeXB0b1BrZy9Qcml2YXRlL1Byb3Rv Y29sL0NyeXB0by5oICAgICAgICAgICB8DQo+ID4gNTgzICstLS0tLS0tLS0tLS0tLS0NCj4gPiA+ ID4gPiA+ICBOZXR3b3JrUGtnL05ldHdvcmtQY2RzLmRzYy5pbmMgICAgICAgICAgICAgICAgfA0K PiA+IDUgKy0NCj4gPiA+ID4gPiA+ICAzNyBmaWxlcyBjaGFuZ2VkLCAxNDUgaW5zZXJ0aW9ucygr KSwgNDIyMQ0KPiA+IGRlbGV0aW9ucygtKQ0KPiA+ID4gPiA+ID4gIGRlbGV0ZSBtb2RlIDEwMDY0 NA0KPiA+IENyeXB0b1BrZy9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9DaXBoZXIvQ3J5cHRBcmM0LmMN Cj4gPiA+ID4gPiA+ICBkZWxldGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gQ3J5cHRvUGtnL0xpYnJh cnkvQmFzZUNyeXB0TGliL0NpcGhlci9DcnlwdEFyYzROdWxsLmMNCj4gPiA+ID4gPiA+ICBkZWxl dGUgbW9kZSAxMDA2NDQNCj4gPiBDcnlwdG9Qa2cvTGlicmFyeS9CYXNlQ3J5cHRMaWIvQ2lwaGVy L0NyeXB0VGRlcy5jDQo+ID4gPiA+ID4gPiAgZGVsZXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+IENy eXB0b1BrZy9MaWJyYXJ5L0Jhc2VDcnlwdExpYi9DaXBoZXIvQ3J5cHRUZGVzTnVsbC5jDQo+ID4g PiA+ID4gPiAgZGVsZXRlIG1vZGUgMTAwNjQ0DQo+ID4gQ3J5cHRvUGtnL0xpYnJhcnkvQmFzZUNy eXB0TGliL0hhc2gvQ3J5cHRNZDQuYw0KPiA+ID4gPiA+ID4gIGRlbGV0ZSBtb2RlIDEwMDY0NA0K PiA+ID4gQ3J5cHRvUGtnL0xpYnJhcnkvQmFzZUNyeXB0TGliL0hhc2gvQ3J5cHRNZDROdWxsLmMN Cj4gPiA+ID4gPiA+ICBkZWxldGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gPiA+DQo+ID4gQ3J5cHRv UGtnL0xpYnJhcnkvQmFzZUNyeXB0TGliTnVsbC9DaXBoZXIvQ3J5cHRBcmM0TnVsbC5jDQo+ID4g PiA+ID4gPiAgZGVsZXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+ID4gPg0KPiA+IENyeXB0b1BrZy9M aWJyYXJ5L0Jhc2VDcnlwdExpYk51bGwvQ2lwaGVyL0NyeXB0VGRlc051bGwuYw0KPiA+ID4gPiA+ ID4gIGRlbGV0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gPiA+DQo+ID4gQ3J5cHRvUGtnL0xpYnJhcnkv QmFzZUNyeXB0TGliTnVsbC9IYXNoL0NyeXB0TWQ0TnVsbC5jDQo+ID4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gLS0NCj4gPiA+ID4gPiA+IDIuMjEuMC53aW5kb3dzLjENCj4gPiA+ID4gPg0KPiA+ID4g PiA+DQo+ID4gPiA+ID4NCj4gPg0KPiA+DQo+ID4gDQoNCg==