From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web10.13068.1587915161326728034 for ; Sun, 26 Apr 2020 08:32:41 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=r9H2ba1M; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: liming.gao@intel.com) IronPort-SDR: 3ZAae0nKYGzM8vxEyq8ViB7rgLoVuwrYtn0KSGl9FhHj3QKa5/4agkKDD9loxN5MXf1O1/6yNB EBaUDjh2rAqQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2020 08:32:40 -0700 IronPort-SDR: uqBnOKKJ84cJRtiPAPAiNdueONiadMU8I0ueqhmng731nIl8sHBvZp2eN7ausDytlc8fY55bLk EitwO/iKsYPQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,320,1583222400"; d="scan'208";a="292185831" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga002.fm.intel.com with ESMTP; 26 Apr 2020 08:32:39 -0700 Received: from fmsmsx123.amr.corp.intel.com (10.18.125.38) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sun, 26 Apr 2020 08:32:39 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx123.amr.corp.intel.com (10.18.125.38) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sun, 26 Apr 2020 08:32:39 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.43) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Sun, 26 Apr 2020 08:32:39 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JrIheHjxBDKchsUwAot7t2IHQKoJJJIXtXDTCod2JlwZiFuQIh/ed70IIUzN4aZdSjPmpzNDgciVpKHy8xu4ZQj26A9bKwezPEcLBLoA5ma08xfcP7I3qNt7TB4Q8PvbGO13RAfsqo32/yb4yn2ajWVI6Y/96sNV67fDWAlQ4a9VTtZyIcjtGMBnBf8RoQctBLCCHMGgOQva4CwLQ8f2GTURoLDWhZ7J2VQ9ggzxfX3Ahtwxx+AcDoew2PWrZ8ZPGbGLcrnXtgmjV11wiEt8rHjfwg+bbRT/nhEzQ/o70XhMjbtpYVB1SM3vUAOPmu+J9c4JfuD3XQFwCHvIzAYg3g== 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=mtpb4Rp3IenJfwr8uKuv6LPKC7EjC3ty/1fepxI3PeM=; b=kwhhoJKuQF9DGjD7YOfzyyrNznp/nDwiR+qT13+Tj/s2fhYn0ghSzPKsX90BhHGiqkEkGYfOZX/AoDlWgo+9ExYcieggVzGTuXCMXZ8s6eCWo9Z3R2sZPYnIUUEZ86K/CR59K6FSt4dopdTfwmnkG7EnJT4V+2WbXYlNF83KtDCfr3viZ/0JhtSycoWT1FEAUQnISpJQgezoXdWeqQ53mBbSWCgkrHjNQnbUHHRzSeoVwdkMInCxCaqru0uASi136BlPROmaRwvF81kqL5LYjpT7m8oW6BKnfhQ8YWfO4Op5l3ylyPRoP6CaF2uGoK4Ghn7rtL68oCT/jjt7YLUQBA== 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=mtpb4Rp3IenJfwr8uKuv6LPKC7EjC3ty/1fepxI3PeM=; b=r9H2ba1Mu2nQoJtqBTevzArJYeSuvKWfh3WtIr/5UY2V4YpJNxW9aV5WqfrI6bfmvWMXhM6lWFMP1HjQ4o0VwGCzJSGH2Tyl/WPO90LzLg8x+PtDzZZfX5G2bkCxPKbM3ZSqUhs+eNq18ssZqPfTlk3H4uZzO9JaGxM/psgYqO0= Received: from BN6PR11MB3972.namprd11.prod.outlook.com (2603:10b6:405:7f::11) by BN6PR11MB1460.namprd11.prod.outlook.com (2603:10b6:405:b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2937.22; Sun, 26 Apr 2020 15:32:36 +0000 Received: from BN6PR11MB3972.namprd11.prod.outlook.com ([fe80::4dcc:bc5c:def:9ae9]) by BN6PR11MB3972.namprd11.prod.outlook.com ([fe80::4dcc:bc5c:def:9ae9%5]) with mapi id 15.20.2937.020; Sun, 26 Apr 2020 15:32:35 +0000 From: "Liming Gao" To: "Jiang, Guomin" , "devel@edk2.groups.io" , "Ni, Ray" , "Kinney, Michael D" , "ard.biesheuvel@linaro.org" CC: "lersek@redhat.com" , "macarl@microsoft.com" Subject: Re: [edk2-devel] [PATCH] CryptoPkg/FltUsedLib: Add FltUsedLib for float. Thread-Topic: [edk2-devel] [PATCH] CryptoPkg/FltUsedLib: Add FltUsedLib for float. Thread-Index: AQHWBnCdYpcDyCiHYkuPNd9aHjmKtahg+RYAgAAoAACAAAPHgIAA+7QAgAAgDACAAQ3WgIAApm0AgBQyHQCAABynoIANyA8wgAAm0ACAAAksAIAAHMxAgAGHLQCAA9KqwA== Date: Sun, 26 Apr 2020 15:32:35 +0000 Message-ID: References: <03f18a49-6bd6-e753-e1bf-7e061d13f200@redhat.com> <14537.1585603662366515487@groups.io> <276d435b-4d94-0899-9710-1584d7baeb3c@redhat.com> <734D49CCEBEEF84792F5B80ED585239D5C4FC746@SHSMSX104.ccr.corp.intel.com> <16059D94172527B2.17445@groups.io> <734D49CCEBEEF84792F5B80ED585239D5C5099F3@SHSMSX104.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: spf=none (sender IP is ) smtp.mailfrom=liming.gao@intel.com; x-originating-ip: [134.191.221.97] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 0553b8f1-968c-4bf8-eb79-08d7e9f70bc2 x-ms-traffictypediagnostic: BN6PR11MB1460: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4941; x-forefront-prvs: 03853D523D x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN6PR11MB3972.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(39860400002)(396003)(346002)(366004)(376002)(136003)(9686003)(55016002)(8676002)(186003)(8936002)(2906002)(81156014)(66476007)(66556008)(64756008)(66446008)(478600001)(66946007)(76116006)(26005)(52536014)(54906003)(45080400002)(110136005)(316002)(7696005)(5660300002)(53546011)(6506007)(966005)(19627235002)(33656002)(86362001)(71200400001)(4326008)(30864003);DIR:OUT;SFP:1102; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: f0XNp39IlNFrNlisgfy2RwqcAwtav/pP61B8pU98Yy87Vww9aRTch+s+sEibzeuV0aKrPRQrSUyDLhL7Bbw2mKpjfmxRDCug4KSuS9nzxj2T+i83MM9XCWsUBlq4zTDYwY+u6+DFu76U3kg2WvtrF07ZnB8E5WdquRtykwlp4s3WatlJxBCb9ySkUgERLQbmvWHyNfpXG7heijaX3lrTCCqZq9qof6MhElvTR+OC4Gl6oF/hUrYrS/5Fi5GHwdVqnxKdEIgpu5mKs3fZHT80mdC+5Tg1uB3SdNU6/cj6/qRZPQxc5JWiUAUnByEf/emm9BiYD1piLbIRUEYeo1lDvoDZEPwRkFDK54sQ8+KtF+MNHLrSiO7hHuouDhttxLZHSr+bPNzvhbSczGJncriP2nh9sqzLUF6rg2VnAyt9IuoDwl5FvOqs/w8R0c0D3qavytbn/ORdZti5tbESEo1h8NBokXRWHrCr4PMfGnTi9spIXSmFkxAv6CO2ySEC49qs7+NCkhOzDqdQBvvxpBoApg== x-ms-exchange-antispam-messagedata: HLEc++FYVJYGnEjnrbdxaKS8C4T9vRMTnxxCVJv2Wp6/Jze2pEBQeaDCjqp8lE7Af9rSHLzeBVh4IBrMQkEiC4sRLV93Ng39XTAO7jz0Vx2QJgQqEyW91MRWTnm5OQ7j2qRPLVHos69Jca/M0e2nRWHb5wH6kHKhTizLEFBS2SL0xK8OOcZ+a2WIpDh2VTFWc8bkgBT4je9bQoVbWzNTzXG0qayoKh7rjbps/7e28ts6u23CRtekkHMJYastLOjFC+Im7AwAO0l4RSn2H34/F16IfiwD9NkX4VFEGW2pn7JV0BSWL0U/F1g0D+BZ0BVBITF50o5wSRT9/0yAtSxMWJ2wb+6U7xtzAatTyQ0SEt8g5yoxSuwPUT8PpgL01/A/Ki5+6Db3r5KYUFwwURtM/ZQbIQOeDOQsI2a8j6tca2L3Ajj+9EsvN0Gfo0iI8+bkyeyO+8P/MtOEl+lJd5mUS3L3ZaB9raH4y6qKVNTfVXMJOTqPzb4duMcuiSY3nuSFcKe3GWx1N1hb1nDPZLhYIZ26nK8Yi2BoS1uFG1AG8UJOBhuDji3aXgQEBSYgVodMBf7eItxIObh9pkmOnCOO7fSsWWi5IZ+0dEgRJdk8awxyJM6HVuluWjBY0Tr7FgoUd1p96Mm5cjHgL8AXxz0XayyTvOTAA4mpj6+ZtCo4hrHWKKVTixAMe3wBJCxNvcSTW7dE52fQt1MNz7U1ydxB6SfbRKtGjXXuqyiqsPvuzf7YU26FbUlao0JJVPdl2WQeXBTCOo2HrJ/DUBc8PDCHrxJZY4+h4uGQoswADYxz1Cc= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 0553b8f1-968c-4bf8-eb79-08d7e9f70bc2 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Apr 2020 15:32:35.8283 (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: zxZWC/scLbtpTVugcFZLFK+yRrR0g+d+Gv22jWcyzWuYPKXtFppOs7sYnD7q7pFRR7dUswviYDHloYgg6JClTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR11MB1460 Return-Path: liming.gao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 R3VvbWluOg0KICBUaGUgc2l6ZSBpbXBhY3QgaXMgc21hbGwuIFRoaXMgc29sdXRpb24gdGhhdCBt b3ZlcyBfZmx0dXNlZCB0byBCYXNlTGliIGlzIE9LIHRvIG1lLiANCg0KVGhhbmtzDQpMaW1pbmcN Cj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSmlhbmcsIEd1b21pbiA8Z3Vv bWluLmppYW5nQGludGVsLmNvbT4NCj4gU2VudDogRnJpZGF5LCBBcHJpbCAyNCwgMjAyMCAxOjA4 IFBNDQo+IFRvOiBHYW8sIExpbWluZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBkZXZlbEBlZGsy Lmdyb3Vwcy5pbzsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBE DQo+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IGFyZC5iaWVzaGV1dmVsQGxpbmFyby5v cmcNCj4gQ2M6IGxlcnNla0ByZWRoYXQuY29tOyBtYWNhcmxAbWljcm9zb2Z0LmNvbQ0KPiBTdWJq ZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSF0gQ3J5cHRvUGtnL0ZsdFVzZWRMaWI6IEFkZCBG bHRVc2VkTGliIGZvciBmbG9hdC4NCj4gDQo+IEkgaGF2ZSBjb21wYXJlIHRoZSBJbWFnZSBkaWZm ZXJlbnQsIHRoZSBhcmUgdHdvIGltYWdlIHNpemUgd2lsbCBiZSBhZmZlY3QgYmVmb3JlIGFuZCBh ZnRlciBtb3ZlIF9mbHR1c2VkIHRvIEJhc2VMaWIuDQo+IA0KPiBPbmUgaXMgVGNnUGVpLCBhbm90 aGVyIGlzIFNlY3VyaXR5U3R1YkR4ZSwgdGhlIGRldGFpbCBhcyBiZWxvdyB0YWJsZQ0KPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgVGNnUGVpICAgICAgICAgICAgICAgICAgICB8IFNl Y3VyaXR5U3R1YkR4ZQ0KPiBCZWZvcmUgbW92ZTogICAgICAgMjI2ODgoZGVjaW1hbCkgICB8ICAg MzA2MjQoZGVjaW1hbCkNCj4gQWZ0ZXIgbW92ZSAgICAgICAgICAgMjI2NTYoZGVjaW1hbCkgICB8 ICAgMzA1OTIoZGVjaW1hbCkNCj4gDQo+IFRoZSBzaXplIG9mIHJlZHVjYXRpb24gaXMgMzIgb3Ig MHgyMCBieXRlcw0KPiBUaG9zZSBjb21wb25lbnQgaXMgbG9jYXRlZCB0aGUgYm91bmRhcnksIHNv IGl0IHdpbGwgb2NjdXB5IG1vcmUgc2l6ZSB0byBtZWV0IHRoZSBhbGlnbm1lbnQuDQo+IA0KPiBB bm90aGVyIHF1ZXN0aW9uIGlzIHRoYXQgc29tZSBjb21wb25lbnQgd2lsbCBmYWlsIGluIENJIHJl c3VsdCB3aGVuIG1vdmUgX2ZsdHVzZWQgdG8gQmFzZUxpYi4NCj4gSSBhbSBjaGVja2luZyBpdC4N Cj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBHYW8sIExpbWlu ZyA8bGltaW5nLmdhb0BpbnRlbC5jb20+DQo+ID4gU2VudDogVGh1cnNkYXksIEFwcmlsIDIzLCAy MDIwIDE6NDkgUE0NCj4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEppYW5nLCBHdW9taW4g PGd1b21pbi5qaWFuZ0BpbnRlbC5jb20+OyBOaSwgUmF5DQo+ID4gPHJheS5uaUBpbnRlbC5jb20+ OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+Ow0KPiA+IGFy ZC5iaWVzaGV1dmVsQGxpbmFyby5vcmcNCj4gPiBDYzogbGVyc2VrQHJlZGhhdC5jb207IG1hY2Fy bEBtaWNyb3NvZnQuY29tDQo+ID4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIENy eXB0b1BrZy9GbHRVc2VkTGliOiBBZGQgRmx0VXNlZExpYiBmb3INCj4gPiBmbG9hdC4NCj4gPg0K PiA+IEd1b21pbjoNCj4gPiAgIFlvdSBjYW4gY291bnQgdGhlIHNpemUgb2YgYWxsIGdlbmVyYXRl ZCBFRkkgaW1hZ2VzIGZvciBJQTMyIGFuZCBYNjQsIHRoZW4NCj4gPiBjb21wYXJlIHRoZW0gYmV0 d2VlbiB0d28gYnVpbGRzLiBUaGlzIGNoYW5nZSBzaG91bGQgaW1wYWN0IEVGSSBpbWFnZQ0KPiA+ IG9ubHkuIEJhc2VkIG9uIHRoaXMgZGF0YSwgd2UgY2FuIGtub3cgdGhlIGltYWdlIHNpemUgaW1w YWN0Lg0KPiA+DQo+ID4gVGhhbmtzDQo+ID4gTGltaW5nDQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIu Z3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4gPiBHdW9taW4NCj4gPiA+IEppYW5nDQo+ID4gPiBT ZW50OiBUaHVyc2RheSwgQXByaWwgMjMsIDIwMjAgMTI6MDQgUE0NCj4gPiA+IFRvOiBOaSwgUmF5 IDxyYXkubmlAaW50ZWwuY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtpbm5leSwgTWljaGFl bA0KPiA+ID4gRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBhcmQuYmllc2hldXZlbEBs aW5hcm8ub3JnDQo+ID4gPiBDYzogbGVyc2VrQHJlZGhhdC5jb207IG1hY2FybEBtaWNyb3NvZnQu Y29tDQo+ID4gPiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gQ3J5cHRvUGtnL0Zs dFVzZWRMaWI6IEFkZCBGbHRVc2VkTGliDQo+ID4gZm9yIGZsb2F0Lg0KPiA+ID4NCj4gPiA+IEkg Z3Vlc3MgdGhlIGtleSBwb2ludCBpcyAvR0wgb3B0aW9uLiBJbnRyaW5zaWNMaWIgb21pdCB0aGUg L0dMIG9wdGlvbg0KPiA+ID4gdG8gYXZvaWQgdGhlIGJ1aWxkIGVycm9yLCBidXQgaXQgYWJhbmRv biB0aGUgb3B0aW1pemF0aW9uIG1lYW53aGlsZS4NCj4gPiA+IEkgd2lsbCBkbyBhIHRlc3Q6IGNy ZWF0ZSBhIHNpbXBsZXN0IGFwcGxpY2F0aW9uIGFuZCBqdXN0IGRlcGVuZA0KPiA+ID4gSW50cmlu c2ljTGliIGFuZCBhZGQgL0dMIG9wdGlvbiB0byBjb21wYXJlIHRoZSBkaWZmZXJlbnQgd2l0aCBh bmQgd2l0aG91dA0KPiA+IC9HTC4NCj4gPiA+DQo+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+ID4gPiA+IEZyb206IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20+DQo+ID4gPiA+ IFNlbnQ6IFRodXJzZGF5LCBBcHJpbCAyMywgMjAyMCAxMTozMiBBTQ0KPiA+ID4gPiBUbzogSmlh bmcsIEd1b21pbiA8Z3VvbWluLmppYW5nQGludGVsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlv Ow0KPiA+ID4gPiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+ Ow0KPiA+ID4gPiBhcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnDQo+ID4gPiA+IENjOiBsZXJzZWtA cmVkaGF0LmNvbTsgbWFjYXJsQG1pY3Jvc29mdC5jb20NCj4gPiA+ID4gU3ViamVjdDogUkU6IFtl ZGsyLWRldmVsXSBbUEFUQ0hdIENyeXB0b1BrZy9GbHRVc2VkTGliOiBBZGQNCj4gPiA+ID4gRmx0 VXNlZExpYiBmb3IgZmxvYXQuDQo+ID4gPiA+DQo+ID4gPiA+IEd1b21pbiwNCj4gPiA+ID4gQ2Fu IHlvdSBpbnZlc3RpZ2F0ZSB3aHkgbW92aW5nIF9mbHR1c2VkIGZyb20gQ3J5cHRvUGtnL0ludHJp bnNpY0xpYg0KPiA+ID4gPiB0byBNZGVQa2cvQmFzZUxpYiBzYXZlcyBzaXplPw0KPiA+ID4gPg0K PiA+ID4gPiBUaGFua3MsDQo+ID4gPiA+IFJheQ0KPiA+ID4gPg0KPiA+ID4gPiA+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+ID4gRnJvbTogSmlhbmcsIEd1b21pbiA8Z3VvbWlu LmppYW5nQGludGVsLmNvbT4NCj4gPiA+ID4gPiBTZW50OiBUaHVyc2RheSwgQXByaWwgMjMsIDIw MjAgOTozNCBBTQ0KPiA+ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgSmlhbmcsIEd1 b21pbiA8Z3VvbWluLmppYW5nQGludGVsLmNvbT47DQo+ID4gPiA+ID4gTmksIFJheSA8cmF5Lm5p QGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+ID4gPiA+ID4gPG1pY2hhZWwuZC5raW5u ZXlAaW50ZWwuY29tPjsgYXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZw0KPiA+ID4gPiA+IENjOiBs ZXJzZWtAcmVkaGF0LmNvbTsgbWFjYXJsQG1pY3Jvc29mdC5jb20NCj4gPiA+ID4gPiBTdWJqZWN0 OiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSF0gQ3J5cHRvUGtnL0ZsdFVzZWRMaWI6IEFkZA0KPiA+ ID4gPiA+IEZsdFVzZWRMaWINCj4gPiA+ID4gZm9yIGZsb2F0Lg0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gVGhlIHNpemUgY29tcGFyYXRpb24gYmV0d2VlbiB3aXRoIF9mbHR1c2VkIGFuZCB3aXRob3V0 IF9mbHR1c2VkLA0KPiA+ID4gPiA+IHVzZQ0KPiA+ID4gPiBPdm1mUGtnWDY0IGFzIGJ1aWxkIHRh cmdldA0KPiA+ID4gPiA+IE92bWZYNjQgIEVGSV9GVl9UQUtFTl9TSVpFICB8ICAgV2l0aG91dCBf Zmx0dXNlZCAgICAgICB8IFdpdGggX2ZsdHVzZWQNCj4gPiA+ID4gPiBEWEVGViAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDB4NDZiYmUwICAgICAgICAgICAg ICAgICAgICAgfCAweDQ2YmJjMA0KPiA+ID4gPiA+IEZWTUFJTl9DT01QQUNUICAgICAgICAgICAg ICAgICAgICAgfCAgMHgxMmM4YTAgICAgICAgICAgICAgICAgICAgICAgfCAweDEyYzdmMA0KPiA+ ID4gPiA+IFBFSUZWICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDB4NGNhZTggICAgICAgICAgICAgICAgICAgICAgICAgfCAweDRjYTY4DQo+ID4gPiA+ID4g RnJvbSB0aGUgcmVzdWx0LCBpdCB3aWxsIG9jY3VweSBsZXNzIHNpemUgcmF0aGVyIHRoYW4gbW9y ZSBzaXplLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQ29kZSBDaGFuZ2UgYXMgYmVsb3cgYW5kIGJ1 aWxkIGNvbW1hbmQgaXMgYGBgYnVpbGQgLXANCj4gPiA+ID4gPiBPdm1mUGtnL092bWZQa2dYNjQg LWIgREVCVUcgLXQgVlMyMDE5IC1hIFg2NCAtDQo+ID4gRFRQTV9FTkFCTEU9VFJVRWBgYA0KPiA+ ID4gPiA+DQo+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL0NyeXB0b1BrZy9MaWJyYXJ5L0ludHJpbnNp Y0xpYi9NZW1vcnlJbnRyaW5zaWNzLmMNCj4gPiA+ID4gPiBiL0NyeXB0b1BrZy9MaWJyYXJ5L0lu dHJpbnNpY0xpYi9NZW1vcnlJbnRyaW5zaWNzLmMNCj4gPiA+ID4gPiBpbmRleCA5NGZlMzQxYmVj Li5jNDEzNjkxNmQwIDEwMDY0NA0KPiA+ID4gPiA+IC0tLSBhL0NyeXB0b1BrZy9MaWJyYXJ5L0lu dHJpbnNpY0xpYi9NZW1vcnlJbnRyaW5zaWNzLmMNCj4gPiA+ID4gPiArKysgYi9DcnlwdG9Qa2cv TGlicmFyeS9JbnRyaW5zaWNMaWIvTWVtb3J5SW50cmluc2ljcy5jDQo+ID4gPiA+ID4gQEAgLTIs NyArMiw3IEBADQo+ID4gPiA+ID4gICAgSW50cmluc2ljIE1lbW9yeSBSb3V0aW5lcyBXcmFwcGVy IEltcGxlbWVudGF0aW9uIGZvciBPcGVuU1NMLQ0KPiA+IGJhc2VkDQo+ID4gPiA+ID4gICAgQ3J5 cHRvZ3JhcGhpYyBMaWJyYXJ5Lg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLUNvcHlyaWdodCAoYykg MjAxMCAtIDIwMTksIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzDQo+ID4gPiA+ID4gcmVz ZXJ2ZWQuPEJSPg0KPiA+ID4gPiA+ICtDb3B5cmlnaHQgKGMpIDIwMTAgLSAyMDIwLCBJbnRlbCBD b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0KPiA+ID4gPiA+ICtyZXNlcnZlZC48QlI+DQo+ID4gPiA+ ID4gIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+ID4gPiA+ ID4NCj4gPiA+ID4gPiAgKiovDQo+ID4gPiA+ID4gQEAgLTEzLDE2ICsxMyw2IEBAIFNQRFgtTGlj ZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+ID4gPiA+ID4NCj4gPiA+ID4g PiAgdHlwZWRlZiBVSU5UTiAgc2l6ZV90Ow0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gLSNpZiBkZWZp bmVkKF9fR05VQ19fKSB8fCBkZWZpbmVkKF9fY2xhbmdfXykNCj4gPiA+ID4gPiAtICAjZGVmaW5l IEdMT0JBTF9VU0VEIF9fYXR0cmlidXRlX18oKHVzZWQpKSAtI2Vsc2UNCj4gPiA+ID4gPiAtICAj ZGVmaW5lIEdMT0JBTF9VU0VEDQo+ID4gPiA+ID4gLSNlbmRpZg0KPiA+ID4gPiA+IC0NCj4gPiA+ ID4gPiAtLyogT3BlblNTTCB3aWxsIHVzZSBmbG9hdGluZyBwb2ludCBzdXBwb3J0LCBhbmQgQyBj b21waWxlcg0KPiA+ID4gPiA+IHByb2R1Y2VzIHRoZQ0KPiA+ID4gPiBfZmx0dXNlZA0KPiA+ID4g PiA+IC0gICBzeW1ib2wgYnkgZGVmYXVsdC4gU2ltcGx5IGRlZmluZSB0aGlzIHN5bWJvbCBoZXJl IHRvIHNhdGlzZnkgdGhlIGxpbmtlci4NCj4gPiAqLw0KPiA+ID4gPiA+IC1pbnQgIEdMT0JBTF9V U0VEIF9mbHR1c2VkID0gMTsNCj4gPiA+ID4gPiAtDQo+ID4gPiA+ID4gIC8qIFNldHMgYnVmZmVy cyB0byBhIHNwZWNpZmllZCBjaGFyYWN0ZXIgKi8gIHZvaWQgKiBtZW1zZXQgKHZvaWQNCj4gPiA+ ID4gPiAqZGVzdCwgaW50IGNoLCBzaXplX3QgY291bnQpICB7IGRpZmYgLS1naXQNCj4gPiA+ID4g PiBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5pbmYNCj4gPiA+ID4gPiBiL01kZVBr Zy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5pbmYNCj4gPiA+ID4gPiBpbmRleCAzNTg2YmViMGFi Li5iYWIzMWMwN2M3IDEwMDY0NA0KPiA+ID4gPiA+IC0tLSBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VM aWIvQmFzZUxpYi5pbmYNCj4gPiA+ID4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0Jh c2VMaWIuaW5mDQo+ID4gPiA+ID4gQEAgLTEsNyArMSw3IEBADQo+ID4gPiA+ID4gICMjIEBmaWxl DQo+ID4gPiA+ID4gICMgIEJhc2UgTGlicmFyeSBpbXBsZW1lbnRhdGlvbi4NCj4gPiA+ID4gPiAg Iw0KPiA+ID4gPiA+IC0jICBDb3B5cmlnaHQgKGMpIDIwMDcgLSAyMDE5LCBJbnRlbCBDb3Jwb3Jh dGlvbi4gQWxsIHJpZ2h0cw0KPiA+ID4gPiA+IHJlc2VydmVkLjxCUj4NCj4gPiA+ID4gPiArIyAg Q29weXJpZ2h0IChjKSAyMDA3IC0gMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMN Cj4gPiA+ID4gPiArcmVzZXJ2ZWQuPEJSPg0KPiA+ID4gPiA+ICAjICBQb3J0aW9ucyBjb3B5cmln aHQgKGMpIDIwMDggLSAyMDA5LCBBcHBsZSBJbmMuIEFsbCByaWdodHMNCj4gPiA+ID4gPiByZXNl cnZlZC48QlI+ICAjICBQb3J0aW9ucyBjb3B5cmlnaHQgKGMpIDIwMTEgLSAyMDEzLCBBUk0gTHRk LiBBbGwNCj4gPiA+ID4gPiByaWdodHMgcmVzZXJ2ZWQuPEJSPiAgIyBAQCAtNjAsNiArNjAsNyBA QA0KPiA+ID4gPiA+ICAgIFN0cmluZy5jDQo+ID4gPiA+ID4gICAgRmlsZVBhdGhzLmMNCj4gPiA+ ID4gPiAgICBCYXNlTGliSW50ZXJuYWxzLmgNCj4gPiA+ID4gPiArICBGbHRVc2VkLmMgICAgICAg ICAgICAgICB8IE1TRlQNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICBbU291cmNlcy5JYTMyXQ0KPiA+ ID4gPiA+ICAgIElhMzIvV3JpdGVUci5uYXNtDQo+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL01kZVBr Zy9MaWJyYXJ5L0Jhc2VMaWIvRmx0VXNlZC5jDQo+ID4gPiA+ID4gYi9NZGVQa2cvTGlicmFyeS9C YXNlTGliL0ZsdFVzZWQuYw0KPiA+ID4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+ ID4gaW5kZXggMDAwMDAwMDAwMC4uYzA2NTU5NDI2Ng0KPiA+ID4gPiA+IC0tLSAvZGV2L251bGwN Cj4gPiA+ID4gPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0ZsdFVzZWQuYw0KPiA+ID4g PiA+IEBAIC0wLDAgKzEsMTQgQEANCj4gPiA+ID4gPiArLyoqIEBmaWxlDQo+ID4gPiA+ID4gKyAg RGVjbGFyZSBfZmx0dXNlZCBzeW1ib2wgZm9yIE1TVkMNCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4g KyAgTVNWQyBuZWVkIHRoaXMgc3ltYm9sIGZvciBmbG9hdCwgYW5kZCBpdCBoZXJlIHRvIGZlZWQg TVNWQy4gaXQNCj4gPiA+ID4gPiArIG1heSByZW1vdmUgIGlmIE1TVkMgbm90IG5lZWQgaXQgYW55 IG1vcmUuDQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgIENvcHlyaWdodCAoYykgMjAyMCAtIDIw MjAsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzDQo+ID4gPiA+ID4gK3Jlc2VydmVkLjxC Uj4NCj4gPiA+ID4gPiArICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBh dGVudCAqKi8NCj4gPiA+ID4gPiArDQo+ID4gPiA+ID4gKy8vDQo+ID4gPiA+ID4gKy8vIEp1c3Qg Zm9yIE1TVkMgZmxvYXQNCj4gPiA+ID4gPiArLy8NCj4gPiA+ID4gPiAraW50IF9mbHR1c2VkID0g MHgxOw0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiA+ID4gPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBz LmlvPiBPbiBCZWhhbGYgT2YNCj4gPiA+ID4gPiA+IEd1b21pbiBKaWFuZw0KPiA+ID4gPiA+ID4g U2VudDogVHVlc2RheSwgQXByaWwgMTQsIDIwMjAgMzowMSBQTQ0KPiA+ID4gPiA+ID4gVG86IGRl dmVsQGVkazIuZ3JvdXBzLmlvOyBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgS2lubmV5LA0K PiA+ID4gPiA+ID4gTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47DQo+ID4g PiA+ID4gPiBhcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnDQo+ID4gPiA+ID4gPiBDYzogbGVyc2Vr QHJlZGhhdC5jb207IG1hY2FybEBtaWNyb3NvZnQuY29tDQo+ID4gPiA+ID4gPiBTdWJqZWN0OiBS ZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gQ3J5cHRvUGtnL0ZsdFVzZWRMaWI6IEFkZA0KPiA+ID4g PiA+ID4gRmx0VXNlZExpYiBmb3IgZmxvYXQuDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gU3Vt bWFyaXplIGN1cnJlbnQgc3RhdHVzOg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFByb2JsZW0g U3RhdGVtZW50Og0KPiA+ID4gPiA+ID4gT3BlbnNzbCByZXF1aXJlIF9mbHR1c2VkIHRvIGJlIGRl ZmluZWQgYXMgYSBjb25zdGFudCBhbnl3aGVyZQ0KPiA+ID4gPiA+ID4gZmxvYXRpbmcgcG9pbnQg aXMgdXNlZC4NCj4gPiA+ID4gPiA+IEl0IG1heSB1c2UgZmxvYXQgb3V0IG9mIGVkazIgdHJlZSBh bmQgbmVlZCBfZmx0dXNlZCwgZm9yDQo+ID4gPiA+ID4gPiBleGFtcGxlLCBNaWNyb3NvZnTigJlz IE9uU2NyZWVuS2V5Ym9hcmQgYW5kIFVpVG9vbEtpdC4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g PiBDdXJyZW50IFByb3Bvc2FsIGFzIGJlbG93Og0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFBy b3Bvc2FsIDE6IEFkZCBGbHRVc2VkLmMgaW50byBleGlzdCBsaWJyYXJ5DQo+ID4gPiA+ID4gPiBE ZXRhaWw6IEFkZCBGbHRVc2VkLmMgaW50byBFbnRyeVBvaW50TGliKFBFSU0sIERYRSkuDQo+ID4g PiA+ID4gPiBSZWNvbW1lbmQ6IEFyZCBCaWVzaGV1dmVsIDxhcmQuYmllc2hldXZlbEBsaW5hcm8u b3JnPg0KPiA+ID4gPiA+ID4gQXBwcm92ZTogTGFzemxvIEVyc2VrIGxlcnNla0ByZWRoYXQuY29t DQo+ID4gPiA+ID4gPiBOZXR1YWw6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlA aW50ZWwuY29tPg0KPiA+ID4gPiA+ID4gQmVuZWZpdDogRG9lc27igJl0IG5lZWQgbW9kaWZ5IGV2 ZXJ5IC5kc2MgZGVzY3JpcHRpb24gZmlsZS4NCj4gPiA+ID4gPiA+IERlZmVjdGlvbjogSSB0ZXN0 IHRoYXQgaXQgd2lsbCBmYWlsIGJlY2F1c2Ugb2YgL0dMIG9wdGlvbiwgdGhlDQo+ID4gPiA+ID4g PiBlcnJvciBzaG93IGZhdGFsIGVycm9yIExOSzEyMzc6IGR1cmluZyBjb2RlIGdlbmVyYXRpb24s IGNvbXBpbGVyDQo+ID4gPiA+ID4gPiBpbnRyb2R1Y2VkIHJlZmVyZW5jZSB0byBzeW1ib2wgJ19m bHR1c2VkJyBkZWZpbmVkIGluIG1vZHVsZQ0KPiA+ID4gPiA+ID4gJ1VlZmlBcHBsaWNhdGlvbkVu dHJ5UG9pbnQubGliKEZsdFVzZWQub2JqKScgY29tcGlsZWQgd2l0aCAvR0wNCj4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiBQcm9wb3NhbCAyOiBEZWZpbmUgTlVMTCBsaWJyYXJ5DQo+ID4gPiA+ID4g PiBSZWNvbW1lbmQ6IE1pY2hhZWwgRCBLaW5uZXkgbWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20N Cj4gPiA+ID4gPiA+IE9wcG9zZTogU2VhbiBzZWFuLmJyb2dhbj1taWNyb3NvZnQuY29tQGdyb3Vw cy5pbyAsIEFyZA0KPiA+ID4gPiA+ID4gQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAbGluYXJv Lm9yZz4NCj4gPiA+ID4gPiA+IEJlbmVmaXQ6IEkgdGVzdCBpdCBhbmQgcHJvdmUgdGhhdCBpdCBp cyBleGVjdXRhYmxlLg0KPiA+ID4gPiA+ID4gRGVmZWN0aW9uOiBJdCBpcyByZXF1aXJlZCB0aGF0 IG1vZGlmeSBldmVyeSBkZXNjcmlwdGlvbiBmaWxlLg0KPiA+ID4gPiA+ID4gRGVmZWN0aW9uOiBJ dCBuZWVkIGJlIHZlcnkgY2FyZWZ1bCB0aGF0IGl0IHNob3VsZCBvbmx5IGFwcGx5DQo+ID4gPiA+ ID4gPiBzb21lIG1vZHVsZSB0eXBlKFBFSU0sIERYRV9EUklWRVIsIFVFRklfQVBQTElDQVRJT04p IHJhdGhlcg0KPiA+IHRoYW4gYWxsLg0KPiA+ID4gPiA+ID4gRGVmZWN0aW9uOiBCdWlsZCBicmVh ayB1cC4NCj4gPiA+ID4gPiA+IEFjdGlvbiBSZXF1aXJlZDogTmVlZCBldmFsdWF0ZSB0aGUgYWZm ZWN0aW9uIG9uIHNpemUuDQo+ID4gPiA+ID4gPiBDb25zaWRlcmF0aW9uOiBBZGQgUENEIHRvIGNv bnRyb2wgdGhlIGZlYXR1cmUNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBQcm9wb3NhbCAzOiBE ZWZpbmUgRmx0VXNlZExpYg0KPiA+ID4gPiA+ID4gRGV0YWlsOiBEZWZpbmUgRmx0VXNlZExpYiBh bmQgYWRkIGRlcGVuZGVuY2UNCj4gPiA+ID4gPiA+IE9wcG9zZTogQXJkIEJpZXNoZXV2ZWwgPGFy ZC5iaWVzaGV1dmVsQGxpbmFyby5vcmc+DQo+ID4gPiA+ID4gPiBCZW5lZml0OiBEb2VzbuKAmXQg bmVlZCBjYXJlIHRoYXQgd2hpY2ggbW9kdWxlIHdpbGwgdXNlIGl0LCB3ZQ0KPiA+ID4gPiA+ID4g d2lsbCBleHBsaWNpdGx5IHBvaW50IGl0IGluIGNvbXBvbmVudCBmaWxlLg0KPiA+ID4gPiA+ID4g RGVmZWN0aW9uOiBNb3JlIGNvbXBsZXgsIEl0IGlzIHJlcXVpcmVkIHRoYXQgbW9kaWZ5IGV2ZXJ5 DQo+ID4gPiA+ID4gPiBkZXNjcmlwdGlvbiBmaWxlIGFuZCBtb2RpZnkgY29tcG9uZW50IG1lYW53 aGlsZS4NCj4gPiA+ID4gPiA+IERlZmVjdGlvbjogQnVpbGQgYnJlYWt1cA0KPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+IFRoYW5rcw0KPiA+ID4gPiA+ID4gZ3VvbWluDQo+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiA+ID4gPiBGcm9t OiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBP Zg0KPiA+ID4gPiA+ID4gPiBOaSwNCj4gPiA+ID4gPiA+IFJheQ0KPiA+ID4gPiA+ID4gPiBTZW50 OiBUdWVzZGF5LCBBcHJpbCAxNCwgMjAyMCAxOjAzIFBNDQo+ID4gPiA+ID4gPiA+IFRvOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPiA+ID4gPiA+ID4gPG1pY2hh ZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgYXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZzsNCj4gPiA+ ID4gPiA+ID4gS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0K PiA+ID4gPiA+ID4gPiBDYzogbGVyc2VrQHJlZGhhdC5jb207IG1hY2FybEBtaWNyb3NvZnQuY29t DQo+ID4gPiA+ID4gPiA+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIXSBDcnlwdG9Q a2cvRmx0VXNlZExpYjogQWRkDQo+ID4gPiA+ID4gPiA+IEZsdFVzZWRMaWIgZm9yIGZsb2F0Lg0K PiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBVRUZJIHNwZWMgYWxsb3dzIHVzaW5nIGZsb2F0 IG9wZXJhdGlvbiBzbyBhc2tpbmcgbW9kdWxlDQo+ID4gPiA+ID4gPiA+IGRldmVsb3BlcnMgYXZv aWQgdXNpbmcgZmxvYXQgbWF5IG5vdCBtYWtlIHNlbnNlLiBFdmVuDQo+ID4gPiA+ID4gPiA+IFVl ZmlDcHVQa2dcTGlicmFyeVxCYXNlVWVmaUNwdUxpYlwNCj4gPiA+ID4gPiA+ID4gcHJvdmlkZXMg cm91dGluZSB0byBpbml0aWFsaXplIGZsb2F0IHN1cHBvcnQgZm9yIFg4Ni4NCj4gPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+ID4gR2l2ZW4gQVJNIGFscmVhZHkgdXNlcyBOVUxMIGxpYnJhcnkgY2xh c3MgbWVjaGFuaXNtIHRvIHN1cHBseQ0KPiA+ID4gPiA+ID4gPiB0aGUgY29tcGlsZXIgc3R1Yiwg SSBwcmVmZXIgWDg2IGFsaWducyB0byB0aGUgQVJNIHN0eWxlLg0KPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiBUaGUgb25seSB1bnN1cmUgdGhpbmcgaXMgdGhlIHNpemUgaW1wYWN0IHdoZW4g YSBtb2R1bGUgaXMgbm90DQo+ID4gPiA+ID4gPiA+IHVzaW5nIGZsb2F0LiBXZSBleHBlY3QgdGhl cmUgaXMgbm8gc2l6ZSBpbXBhY3Qgd2hlbiBhIG1vZHVsZQ0KPiA+ID4gPiA+ID4gPiBpcyBub3QN Cj4gPiA+ID4gdXNpbmcgZmxvYXQuDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IFRoYW5r cywNCj4gPiA+ID4gPiA+ID4gUmF5DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+ID4gPiBGcm9tOiBkZXZlbEBlZGsy Lmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZg0KPiA+ID4gPiA+ID4g PiA+IE9mDQo+ID4gPiA+ID4gPiA+IE1pY2hhZWwNCj4gPiA+ID4gPiA+ID4gPiBEIEtpbm5leQ0K PiA+ID4gPiA+ID4gPiA+IFNlbnQ6IFRodXJzZGF5LCBBcHJpbCAyLCAyMDIwIDEyOjM4IEFNDQo+ ID4gPiA+ID4gPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBhcmQuYmllc2hldXZlbEBs aW5hcm8ub3JnOyBLaW5uZXksDQo+ID4gPiA+ID4gPiA+ID4gTWljaGFlbCBEIDxtaWNoYWVsLmQu a2lubmV5QGludGVsLmNvbT4NCj4gPiA+ID4gPiA+ID4gPiBDYzogbGVyc2VrQHJlZGhhdC5jb207 IG1hY2FybEBtaWNyb3NvZnQuY29tDQo+ID4gPiA+ID4gPiA+ID4gU3ViamVjdDogUmU6IFtlZGsy LWRldmVsXSBbUEFUQ0hdIENyeXB0b1BrZy9GbHRVc2VkTGliOiBBZGQNCj4gPiA+ID4gPiA+ID4g PiBGbHRVc2VkTGliIGZvciBmbG9hdC4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ IEhpIEFyZCwNCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IEkgdGhpbmsgYWRkaW5n IGEgZGVwZW5kZW5jeSBpbiB0aGUgbW9kdWxlIGVudHJ5IHBvaW50IGxpYnMNCj4gPiA+ID4gPiA+ ID4gPiBpcyBhbHNvIGdvb2Qgd2F5IHRvIGd1YXJhbnRlZSBhbiBpbnRyaW5zaWMgbGliIGlzIGF2 YWlsYWJsZS4NCj4gPiA+ID4gPiA+ID4gPiBJIGFncmVlIHRoYXQgaXQgY2FuIHByb3ZpZGUgbW9k dWxlIHR5cGUgYW5kIGFyY2ggc3BlY2lmaWMNCj4gPiA+ID4gPiA+ID4gPiBtYXBwaW5ncy4gIFRo ZSBOVUxMIGxpYiBpbnN0YW5jZSBjYW4gZG8gdGhlIHNhbWUgaWYgdGhlIE5VTEwNCj4gPiA+ID4g PiA+ID4gPiBpbnN0YW5jZSBpcyBsaXN0ZWQgaW4gdGhlIG1vZHVsZS9hcmNoIHNwZWNpZmljIGxp YnJhcnkNCj4gPiA+ID4gPiA+ID4gPiBjbGFzc2VzIHNlY3Rpb25zLiBhIGZldyBleGFtcGxlIHNl Y3Rpb24gbmFtZXMuDQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiBbTGlicmFyeUNs YXNzZXMuQVJNLlBFSU0sIExpYnJhcnlDbGFzc2VzLkFBUkNINjQuUEVJTV0NCj4gPiA+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gPiA+IFtMaWJyYXJ5Q2xhc3Nlcy5JQTMyLlVFRklfRFJJVkVSXQ0K PiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gW0xpYnJhcnlDbGFzc2VzLlg2NC5EWEVf RFJJVkVSXQ0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gU28gZWl0aGVyIHdheSwg dGhlIERTQyBmaWxlcyBuZWVkIHRvIHByb3ZpZGUgdGhlIGxpYnJhcnkgbWFwcGluZy4NCj4gPiA+ ID4gPiA+ID4gPiBUaGUgb25seSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlc2UNCj4gPiA+ID4gPiA+ ID4gPiAyIGFwcHJvYWNoZXMgaXMgdGhhdCBhZGRpbmcgYSBkZXBlbmRlbmN5IHRvIHRoZSBtb2R1 bGUgZW50cnkNCj4gPiA+ID4gPiA+ID4gPiBwb2ludCBsaWJzIHVzZXMgYSBmb3JtYWxseSBkZWZp bmVkIGxpYnJhcnkgY2xhc3MgbmFtZSBmb3INCj4gPiA+ID4gPiA+ID4gPiB0aGUgaW50cmluc2lj IGZ1bmN0aW9ucyB2cy4NCj4gPiA+ID4gPiA+ID4gPiB0aGUgdW4tbmFtZWQgTlVMTCBsaWJyYXJ5 IGluc3RhbmNlLiAgQSBmb3JtYWxseSBkZWZpbmVkDQo+ID4gPiA+ID4gPiA+ID4gbGlicmFyeSBj bGFzcyBuYW1lIGlzIGJldHRlciBzdXBwb3J0ZWQgZm9yIHRoaW5ncyBsaWtlIHVuaXQNCj4gPiA+ ID4gPiA+ID4gPiB0ZXN0cyBmcm9tIHRoZSBVbml0VGVzdEZyYW1ld29ya1BrZy4NCj4gPiA+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IFRoZSBmbHR1c2VkIGlzc3VlIHdvdWxkIG5vdCBnbyBh d2F5IG9mIHdlIHJlbW92ZWQgdGhlIGZsb2F0DQo+ID4gPiA+ID4gPiA+ID4gdXNhZ2UgZm9yIE9w ZW5TU0wuICBPbmUgb3IgbW9yZSBvdGhlciBsaWJzIG9yIHRoZSBtb2R1bGUNCj4gPiA+ID4gPiA+ ID4gPiBjb3VsZCB1c2UgZmxvYXQvZG91YmxlIHR5cGVzIGFuZCB0aGlzIGlzc3VlIHdvdWxkIHBv cCB1cA0KPiA+ID4gPiA+ID4gPiA+IGFnYWluLiAgSSBkbyBhZ3JlZSBpdCB3b3VsZCBiZSBjbGVh bmVyIGlmIHdlIGNvdWxkIHVzZQ0KPiA+ID4gPiA+ID4gPiA+IE9wZW5TU0wgd2l0aG91dCBmbG9h dGluZw0KPiA+ID4gPiBwb2ludC4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IEkg dGhpbmsgYWRkaW5nIGFuIGludHJpbnNpYyBsaWIgZm9yIElBMzIvWDY0IGZvciBWUzIweHgNCj4g PiA+ID4gPiA+ID4gPiBnZW5lcmF0aW9uIG9mIGludHJpbnNpYyBmdW5jdGlvbnMgd291bGQgYWRk cmVzcyBmbHR1c2VkIGFuZA0KPiA+ID4gPiA+ID4gPiA+IG90aGVyIGNvbW1vbiBDIGltcGxlbWVu dGF0aW9uIHN0eWxlcyB0aGF0IGdlbmVyYXRlIGludHJpbnNpYw0KPiA+ID4gPiA+ID4gPiA+IGZ1 bmN0aW9ucyAoZS5nLiA2NC1iaXQgaW50IG1hdGggb24gMzItYml0LCBzdHJ1Y3R1cmUNCj4gPiA+ ID4gPiA+ID4gPiB2YXJpYWJsZSBhc3NpZ25tZW50cywgYW5kIGxvb3BzIHRoYXQgZmlsbCBhIGJ1 ZmZlciB3aXRoIGENCj4gPiA+ID4gPiA+ID4gPiBjb25zdCB2YWx1ZSkgYnkgVlMyMHh4IGNvbXBp bGVycy4gIEFuIGludHJpbnNpYyBsaWIgZm9yIEdDQw0KPiA+ID4gPiA+ID4gPiA+IHdvdWxkIGFs c28gaGVscCB3aXRoIHRoZXNlIHNhbWUgY29tbW9uIEMgaW1wbGVtZW50YXRpb24NCj4gPiA+ID4g PiA+ID4gPiBzdHlsZXMgdGhhdCBnZW5lcmF0ZSBpbnRyaW5zaWMNCj4gPiA+ID4gZnVuY3Rpb25z Lg0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gTWlrZQ0KPiA+ID4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiA+ ID4gPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlv PiBPbg0KPiA+ID4gPiA+ID4gPiA+ID4gQmVoYWxmIE9mDQo+ID4gPiA+ID4gPiBBcmQNCj4gPiA+ ID4gPiA+ID4gPiA+IEJpZXNoZXV2ZWwNCj4gPiA+ID4gPiA+ID4gPiA+IFNlbnQ6IFR1ZXNkYXks IE1hcmNoIDMxLCAyMDIwIDExOjQzIFBNDQo+ID4gPiA+ID4gPiA+ID4gPiBUbzogS2lubmV5LCBN aWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4gPiA+ID4g Q2M6IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBsZXJzZWtAcmVkaGF0LmNvbTsNCj4gPiA+ID4gPiA+ ID4gPiA+IG1hY2FybEBtaWNyb3NvZnQuY29tDQo+ID4gPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBS ZTogW2VkazItZGV2ZWxdIFtQQVRDSF0gQ3J5cHRvUGtnL0ZsdFVzZWRMaWI6DQo+ID4gPiA+ID4g PiA+ID4gPiBBZGQgRmx0VXNlZExpYiBmb3IgZmxvYXQuDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+ID4gT24gVHVlLCAzMSBNYXIgMjAyMCBhdCAxNjozNiwgS2lubmV5LCBNaWNo YWVsIEQNCj4gPiA+ID4gPiA+ID4gPiA+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4gd3Jv dGU6DQo+ID4gPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gPiA+IEFSTSBhbmQgQUFS Q0g2NCBoYXZlIGEgY29tcGlsZXIgaW50cmluc2ljIGxpYiB0aGF0IGlzDQo+ID4gPiA+ID4gPiA+ ID4gPiBsaW5rZWQgYWdhaW5zdCBhbGwgbW9kdWxlcy4NCj4gPiA+ID4gPiA+ID4gPiA+ID4NCj4g PiA+ID4gPiA+ID4gPiA+ID4gW0xpYnJhcnlDbGFzc2VzLkFSTSwgTGlicmFyeUNsYXNzZXMuQUFS Q0g2NF0NCj4gPiA+ID4gPiA+ID4gPiA+ID4gICAjDQo+ID4gPiA+ID4gPiA+ID4gPiA+ICAgIyBJ dCBpcyBub3QgcG9zc2libGUgdG8gcHJldmVudCBBUk0gY29tcGlsZXIgY2FsbHMgdG8NCj4gPiA+ ID4gPiA+ID4gPiA+IGdlbmVyaWMgaW50cmluc2ljIGZ1bmN0aW9ucy4NCj4gPiA+ID4gPiA+ID4g PiA+ID4gICAjIFRoaXMgbGlicmFyeSBwcm92aWRlcyB0aGUgaW5zdHJpbnNpYyBmdW5jdGlvbnMN Cj4gPiA+ID4gPiA+ID4gPiA+IGdlbmVyYXRlZCBieSBhIGdpdmVuIGNvbXBpbGVyLg0KPiA+ID4g PiA+ID4gPiA+ID4gPiAgICMgW0xpYnJhcnlDbGFzc2VzLkFSTV0gYW5kIE5VTEwgbWVhbiBsaW5r IHRoaXMNCj4gPiA+ID4gPiA+ID4gPiA+IGxpYnJhcnkgaW50byBhbGwgQVJNIGltYWdlcy4NCj4g PiA+ID4gPiA+ID4gPiA+ID4gICAjDQo+ID4gPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ ID4gPiBOVUxMfEFybVBrZy9MaWJyYXJ5L0NvbXBpbGVySW50cmluc2ljc0xpYi9Db21waWxlcklu dHJpbnMNCj4gPiA+ID4gPiA+ID4gPiA+IGljc0xpYi5pbmYNCj4gPiA+ID4gPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+ID4gPiA+ID4gQ2FuIHdlIHVzZSB0aGlzIHNhbWUgdGVjaG5pcXVlIGZvciBJ QTMyL1g2NCBWUyBidWlsZHM/DQo+ID4gPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gPiA+ID4gSW4gbXkgb3BpbmlvbiwgaGF2aW5nIHRoZXNlIGludHJpbnNp Y3MgbGlicmFyaWVzIGFkZGVkIHZpYQ0KPiA+ID4gPiA+ID4gPiA+ID4gTlVMTCBsaWJyYXJ5IGNs YXNzIHJlc29sdXRpb24gd2FzIGEgbWlzdGFrZSB0byBiZWdpbiB3aXRoLg0KPiA+ID4gPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+IEV2ZXJ5IGNvbXBvbmVudCB0aGF0IHdlIGJ1aWxkIGlu Y29ycG9yYXRlcyBzb21lIGtpbmQgb2YNCj4gPiA+ID4gPiA+ID4gPiA+IHN0YXJ0dXAgY29kZSBs aWJyYXJ5IHRoYXQgZGVmaW5lcyB0aGUgX01vZHVsZUVudHJ5UG9pbnQNCj4gPiA+ID4gPiA+ID4g PiA+IHN5bWJvbCwgYW5kIGl0IHdvdWxkIGJlIG11Y2ggYmV0dGVyIHRvIG1ha2UgdGhvc2UNCj4g PiA+ID4gPiA+ID4gPiA+IGxpYnJhcmllcyBpbmNsdWRlIGFuIEludHJpbnNpY3NMaWJyYXJ5IGRl cGVuZGVuY3kgdGhhdCBjYW4NCj4gPiA+ID4gPiA+ID4gPiA+IGJlIHNhdGlzZmllZCBieSBhcmNo IHNwZWNpZmljIHZlcnNpb25zIHRoYXQgYWxzbw0KPiA+ID4gPiA+ID4gPiA+ID4gZW5jYXBzdWxh dGUgdGhlIHRvb2xjaGFpbiBkZXBlbmRlbmNpZXMgKHN1Y2ggYXMgdGhpcw0KPiA+ID4gPiA+ID4g PiA+ID4gX2ZsdHVzZWQgc3ltYm9sLCBvciBtZW1jcHkvbWVtc2V0DQo+ID4gPiA+IG9uIEFSTS9H Q0MpLg0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+IE9uIGFub3RoZXIgbm90 ZSwgaXQgaXMgc3RpbGwgZGVlcGx5IGRpc2FwcG9pbnRpbmcgdGhhdCB3ZQ0KPiA+ID4gPiA+ID4g PiA+ID4gbmVlZCB0byBqdW1wIHRocm91Z2ggYWxsIG9mIHRoZXNlIGhvb3BzIGJlY2F1c2UgdGhl ICpvbmx5Kg0KPiA+ID4gPiA+ID4gPiA+ID4gc2luZ2xlIHVzZSBvZiBmbG9hdGluZyBwb2ludCBp biBPcGVuU1NMIGlzIHRoZSBlbnRyb3B5DQo+ID4gPiA+ID4gPiA+ID4gPiBlc3RpbWF0ZSBvZiBh biBSTkcsIHdoaWNoIGlzIGluIHRoZSByYW5nZSBvZiAwLi4xMDIzIHRvIGJlZ2luDQo+ID4gd2l0 aCBbSUlSQykuDQo+ID4gPiA+ID4gPiA+ID4gPiBSZW1lbWJlciB0aGF0IHdlIGFsc28gaGF2ZSBh IHNvZnRmbG9hdCBzdWJtb2R1bGUgZm9yDQo+ID4gPiA+ID4gPiA+ID4gPiAzMi1iaXQgQVJNLCBm b3IgdGhlIHNhbWUgc3R1cGlkIHJlYXNvbi4gSWYgd2UgY291bGQgc3RvcA0KPiA+ID4gPiA+ID4g PiA+ID4gcHVsbGluZyBpbiB0aGF0IHBhcnQgb2YgdGhlIGNvZGUgKG9yIHJlcGxhY2UgaXQgd2l0 aCBhbg0KPiA+ID4gPiA+ID4gPiA+ID4gVUlOVDE2IHdoZW4gYnVpbGRpbmcgZm9yIHRoZSBVRUZJ IHRhcmdldCksIHRoZSB3aG9sZQ0KPiA+ID4gPiA+ID4gPiA+ID4gZmxvYXRpbmcgcG9pbnQgaXNz dWUgd291bGQgbW9zdGx5IGdvIGF3YXkgQUZBSUNULg0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+DQo+ID4g PiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4g PiA+DQo+ID4gPg0KPiA+ID4gDQoNCg==