From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.31; helo=mga06.intel.com; envelope-from=steven.shi@intel.com; receiver=edk2-devel@lists.01.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id CD4E22095E529 for ; Mon, 25 Sep 2017 20:11:14 -0700 (PDT) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga104.jf.intel.com with ESMTP; 25 Sep 2017 20:14:25 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.42,438,1500966000"; d="scan'208";a="139406398" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga002.jf.intel.com with ESMTP; 25 Sep 2017 20:14:25 -0700 Received: from fmsmsx158.amr.corp.intel.com (10.18.116.75) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 25 Sep 2017 20:14:25 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx158.amr.corp.intel.com (10.18.116.75) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 25 Sep 2017 20:14:25 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.175]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.213]) with mapi id 14.03.0319.002; Tue, 26 Sep 2017 11:14:23 +0800 From: "Shi, Steven" To: "Marvin.Haeuser@outlook.com" , "edk2-devel@lists.01.org" CC: Laszlo Ersek , "Gao, Liming" Thread-Topic: [edk2] [PATCH] BaseTools/Conf: Support LLVM39 and LLVM40 in CLANG38 toolchain Thread-Index: AQHTG92/fRSUj7FeDkKS3dkWPBcMNaKY3hEAgCfZ4ACABABCgIAANkSAgAAdKYCAACpsgIABekjQ Date: Tue, 26 Sep 2017 03:14:23 +0000 Message-ID: <06C8AB66E78EE34A949939824ABE2B313B5982EE@shsmsx102.ccr.corp.intel.com> References: <20170823070107.38848-1-steven.shi@intel.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14D7815F7@shsmsx102.ccr.corp.intel.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E15CC86@SHSMSX152.ccr.corp.intel.com> <741cbf78-704b-b5f7-b49f-7e58b9231488@redhat.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E15D03E@SHSMSX152.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH] BaseTools/Conf: Support LLVM39 and LLVM40 in CLANG38 toolchain X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Sep 2017 03:11:15 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QmVzaWRlcyB0aGUgR2V0QmVzdExhbmd1YWdlKCkgLCB0aGVyZSBhcmUgc2V2ZXJhbCBvdGhlciBs aWIgZnVuY3Rpb25zIGhhdmUgdGhlIHNhbWUgcHJvYmxlbSB3aGljaCBhcmUgbGlzdGVkIGluIGF0 dGFjaG1lbnQgaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL2F0dGFjaG1lbnQuY2dpP2lk PTk3IG9mIHRoZSBCdWc0MTAuIFRoZXNlIGZ1bmN0aW9ucyBjYW4gYWxzbyBjYXVzZSB0aGUgYnVp bGQgZmFpbHMgd2l0aCBDTEFORzM4IGluIG15IHNpZGUgd2l0aCBjbGFuZyB2ZXJzaW9uIDQuMCBv ciBjbGFuZyA1LjAuDQoNCkknbSBPSyB0byBlbmFibGUgdGhlIC1XdmFyYXJncyBhZ2FpbiBpZiB3 ZSB0aGluayB0aGVzZSBsaWIgQUJJIHVwZGF0ZXMgYXJlIGFjY2VwdGFibGUuDQoNClN0ZXZlbiBT aGkNCkludGVsXFNTR1xTVE9cVUVGSSBGaXJtd2FyZQ0KDQpUZWw6ICs4NiAwMjEtNjExNjY1MjIN CmlOZXQ6IDgyMS02NTIyDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTog ZWRrMi1kZXZlbCBbbWFpbHRvOmVkazItZGV2ZWwtYm91bmNlc0BsaXN0cy4wMS5vcmddIE9uIEJl aGFsZiBPZg0KPiBNYXJ2aW4gSD91c2VyDQo+IFNlbnQ6IE1vbmRheSwgU2VwdGVtYmVyIDI1LCAy MDE3IDg6MzAgUE0NCj4gVG86IGVkazItZGV2ZWxAbGlzdHMuMDEub3JnDQo+IENjOiBMYXN6bG8g RXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwu Y29tPg0KPiBTdWJqZWN0OiBSZTogW2VkazJdIFtQQVRDSF0gQmFzZVRvb2xzL0NvbmY6IFN1cHBv cnQgTExWTTM5IGFuZCBMTFZNNDAgaW4NCj4gQ0xBTkczOCB0b29sY2hhaW4NCj4gDQo+IEhleSBM aW1pbmcgYW5kIExhc3psbywNCj4gDQo+IFRoYW5rcyBmb3IgeW91ciBhbnN3ZXJzIQ0KPiANCj4g SSByYXRoZXIgdGhvdWdodCBvZiB0aGlzIChJIGRpZG4ndCBjaGVjayB3aGV0aGVyIExhbmd1YWdl MSBzaG91bGQgYmUgQ09OU1QsDQo+IGJ1dCBkb2Vzbid0IG1hdHRlciBmb3Igbm93KToNCj4gDQo+ IENIQVI4ICoNCj4gRUZJQVBJDQo+IEdldEJlc3RMYW5ndWFnZSAoDQo+ICAgSU4gQ09OU1QgQ0hB UjggICpTdXBwb3J0ZWRMYW5ndWFnZXMsDQo+ICAgSU4gQk9PTEVBTiAgICAgICAgICBJc282MzlM YW5ndWFnZSwNCj4gICBJTiBDSEFSOCAgICAgICAgICAgICAgICpMYW5ndWFnZTEsDQo+ICAgLi4u DQo+ICAgKTsNCj4gDQo+IFRoaXMgd291bGQgYmUgY29tcGF0aWJsZSB3aXRoIGFsbCBleGlzdGlu ZyBjb2RlIGJlY2F1c2UgdGhlIFZBIGxpc3Qgc29sZWx5DQo+IGNvbnNpc3RzIG9mIENIQVI4IHBv aW50ZXJzLg0KPiBUaGUgb25seSBkaWZmZXJlbmNlIHdvdWxkIGJlIHRoYXQgb25lIGNhbm5vdCBw YXNzIGp1c3QgTlVMTCBhZnRlcg0KPiBJc282MzlMYW5ndWFnZSwgYnV0IHRoaXMgc2NlbmFyaW8g bWFrZXMgbm8gc2Vuc2UgYW55d2F5Lg0KPiBPbmUgd291bGQganVzdCB1c2UgTGFuZ2F1Z2UxIG9u IHRoZSBmaXJzdCBpdGVyYXRpb24gYW5kLCBhcyBwYXJ0IG9mIGEgZG8tDQo+IHdoaWxlLWxvb3As IGFzc2lnbiB0aGUgVkEgYXJncyB2aWEgVkFfQVJHKCkuDQo+IA0KPiBCZXN0IHJlZ2FyZHMsDQo+ IE1hcnZpbi4NCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBH YW8sIExpbWluZyBbbWFpbHRvOmxpbWluZy5nYW9AaW50ZWwuY29tXQ0KPiA+IFNlbnQ6IE1vbmRh eSwgU2VwdGVtYmVyIDI1LCAyMDE3IDExOjU4IEFNDQo+ID4gVG86IExhc3psbyBFcnNlayA8bGVy c2VrQHJlZGhhdC5jb20+OyBNYXJ2aW4gSD91c2VyDQo+ID4gPE1hcnZpbi5IYWV1c2VyQG91dGxv b2suY29tPjsgZWRrMi1kZXZlbEBsaXN0cy4wMS5vcmcNCj4gPiBTdWJqZWN0OiBSRTogW2VkazJd IFtQQVRDSF0gQmFzZVRvb2xzL0NvbmY6IFN1cHBvcnQgTExWTTM5IGFuZCBMTFZNNDANCj4gaW4N Cj4gPiBDTEFORzM4IHRvb2xjaGFpbg0KPiA+DQo+ID4gTGFzemxvOg0KPiA+ICAgVGhpcyBpcyBh IGJldHRlciB3YXkuIFRoZSBidWcNCj4gPiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcv c2hvd19idWcuY2dpP2lkPTQxMCBvbmx5IGxpc3RzDQo+ID4gR2V0QmVzdExhbmd1YWdlKCkgQVBJ LiBJIGFtIG5vdCBzdXJlIHdoZXRoZXIgdGhleSBhcmUgc2ltaWxhciBjYXNlcyBpbg0KPiBlZGsy Lg0KPiA+IElmIGhhdmUsIHdlIGhhZCBiZXR0ZXIgZml4IHRoZW0gdG9nZXRoZXIuDQo+ID4NCj4g PiBUaGFua3MNCj4gPiBMaW1pbmcNCj4gPiA+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g PiA+RnJvbTogTGFzemxvIEVyc2VrIFttYWlsdG86bGVyc2VrQHJlZGhhdC5jb21dDQo+ID4gPlNl bnQ6IE1vbmRheSwgU2VwdGVtYmVyIDI1LCAyMDE3IDQ6MTMgUE0NCj4gPiA+VG86IEdhbywgTGlt aW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IE1hcnZpbiBIw6R1c2VyDQo+ID4gPjxNYXJ2aW4u SGFldXNlckBvdXRsb29rLmNvbT47IGVkazItZGV2ZWxAbGlzdHMuMDEub3JnDQo+ID4gPlN1Ympl Y3Q6IFJlOiBbZWRrMl0gW1BBVENIXSBCYXNlVG9vbHMvQ29uZjogU3VwcG9ydCBMTFZNMzkgYW5k DQo+IExMVk00MA0KPiA+ID5pbg0KPiA+ID5DTEFORzM4IHRvb2xjaGFpbg0KPiA+ID4NCj4gPiA+ T24gMDkvMjUvMTcgMDY6NTksIEdhbywgTGltaW5nIHdyb3RlOg0KPiA+ID4+IE1hcnZpbjoNCj4g PiA+PiAgIE15IGNvbmNlcm4gaXMgdGhhdCB0aGUgZml4IGlzIGFuIGluY29tcGF0aWJsZSBjaGFu Z2UuIEl0IHJlcXVpcmVzDQo+ID4gPj4gdG8gbW9kaWZ5DQo+ID4gPmxpYnJhcnkgQVBJLiBJbiBm YWN0LCB0aGlzIGlzIGFuIHVuZGVmaW5lZCBiZWhhdmlvci4gQnV0LCBjdXJyZW50DQo+ID4gPmNv bXBpbGVyIChWUywgR0NDIGFuZCBDbGFuZykgbWFrZXMgaXQgd29yay4gIFNvLCBJIHByZWZlciB0 byBrZWVwIHRoZQ0KPiA+ID5jb2RlIGFzLWlzLCBhbmQgZGlzYWJsZSB0aGlzIHdhcm5pbmcgZmly c3QuIElmIHlvdSBmaW5kIGFueSByZWFsIGlzc3VlLA0KPiA+ID53ZSBjYW4gcmV0dXJuIGJhY2sg YW5kIGZpZ3VyZSBvdXQgdGhlIHNvbHV0aW9uLg0KPiA+ID4NCj4gPiA+SSB0aGluayB3ZSBjYW4g ZHJhdyBhIHBhcmFsbGVsIGhlcmUgdG8gR2V0VmFyaWFibGUoKSBhbmQgR2V0VmFyaWFibGUyKCku DQo+ID4gPkdldFZhcmlhYmxlKCkgaXMgbm93IHVuYXZhaWxhYmxlIGlmDQo+ID4gRElTQUJMRV9O RVdfREVQUkVDQVRFRF9JTlRFUkZBQ0VTDQo+ID4gPmlzIGRlZmluZWQuDQo+ID4gPg0KPiA+ID5J IHRoaW5rIHRoZSByaWdodCBzb2x1dGlvbiB3b3VsZCBiZSB0bw0KPiA+ID4tIGludHJvZHVjZSBH ZXRCZXN0TGFuZ3VhZ2UyKCksDQo+ID4gPi0gbWlncmF0ZSBhbGwgdGhlIGN1cnJlbnQgY2FsbCBz aXRlcyB0byBHZXRCZXN0TGFuZ3VhZ2UyKCkgLS0gSSBjb3VudGVkDQo+ID4gPiAgMTgsIGFuZCB0 aGUgdXBkYXRlcyBzaG91bGQgYmUgZWFzeSAtLSwNCj4gPiA+LSBhbmQgdGhlbiBtYWtlIEdldFZh cmlhYmxlKCkgY29uZGl0aW9uYWwgb24NCj4gPiA+ICBub3QtRElTQUJMRV9ORVdfREVQUkVDQVRF RF9JTlRFUkZBQ0VTLg0KPiA+ID4NCj4gPiA+DQo+ID4gPkNIQVI4ICoNCj4gPiA+RUZJQVBJDQo+ ID4gPkdldEJlc3RMYW5ndWFnZTIgKA0KPiA+ID4gIElOIENPTlNUIENIQVI4ICAqU3VwcG9ydGVk TGFuZ3VhZ2VzLA0KPiA+ID4gIElOIElOVE4gICAgICAgICBJc282MzlMYW5ndWFnZSwNCj4gPiA+ ICAuLi4NCj4gPiA+ICApOw0KPiA+ID4NCj4gPiA+SSBkb24ndCBmZWVsIHN0cm9uZ2x5IGFib3V0 IHRoaXMgcXVlc3Rpb24sIEkganVzdCB0aGluayB0ZWNobmljYWxseQ0KPiA+ID50aGlzIHdvdWxk IGJlIGJlc3QuIENMQU5HIHdhcm5pbmdzIGFyZSB2YWx1YWJsZS4NCj4gPiA+DQo+ID4gPlRoYW5r cw0KPiA+ID5MYXN6bG8NCj4gPiA+DQo+ID4gPj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+ID4gPj4+IEZyb206IGVkazItZGV2ZWwgW21haWx0bzplZGsyLWRldmVsLWJvdW5jZXNAbGlz dHMuMDEub3JnXSBPbiBCZWhhbGYNCj4gPiA+Pj4gT2YgTWFydmluIEg/dXNlcg0KPiA+ID4+PiBT ZW50OiBGcmlkYXksIFNlcHRlbWJlciAyMiwgMjAxNyAxMTo1MyBQTQ0KPiA+ID4+PiBUbzogZWRr Mi1kZXZlbEBsaXN0cy4wMS5vcmcNCj4gPiA+Pj4gQ2M6IEdhbywgTGltaW5nIDxsaW1pbmcuZ2Fv QGludGVsLmNvbT4NCj4gPiA+Pj4gU3ViamVjdDogUmU6IFtlZGsyXSBbUEFUQ0hdIEJhc2VUb29s cy9Db25mOiBTdXBwb3J0IExMVk0zOSBhbmQNCj4gPiA+Pj4gTExWTTQwDQo+ID4gPmluDQo+ID4g Pj4+IENMQU5HMzggdG9vbGNoYWluDQo+ID4gPj4+DQo+ID4gPj4+IEhleSwNCj4gPiA+Pj4NCj4g PiA+Pj4gSSBqdXN0IG5vdGljZWQgdGhpcyBwYXRjaCBhcyBpdCByZWNlbnRseSBoYXMgYmVlbiBw dXNoZWQuIEkgZm91bmQNCj4gPiA+Pj4gdGhpcyBoYXMNCj4gPiA+YmVlbiBhDQo+ID4gPj4+IHJl YWN0aW9uIHRvIGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9 NDEwDQo+ID4gPj4+IFRob3VnaCBhcyBDbGFuZyBjb3JyZWN0bHkgZGV0ZWN0ZWQsIHRoaXMgaXMg VW5kZWZpbmVkIEJlaGF2aW9yIHBlcg0KPiA+ID4+PiB0aGUgQyBzcGVjaWZpY2F0aW9uLCBzbyB3 aHkgd2FzIHRoZSB3YXJuaW5nIGhpZGRlbj8NCj4gPiA+Pj4gSW4gY29udGV4dCBvZiB0aGUgaXNz dWUgaW4gVWVmaUxpYiwgcHJvdmlkaW5nIHRoZSBmaXJzdCBlbGVtZW50IG9mDQo+ID4gPj4+IHRo ZSBWQSBsaXN0DQo+ID4gPmFzIGENCj4gPiA+Pj4gcHJvdG90eXBlZCBhcmd1bWVudCwgd291bGQg aGF2ZSBzb2x2ZWQgdGhlIGlzc3VlIHdpdGhvdXQgVUIuDQo+ID4gPj4+DQo+ID4gPj4+IERvIHlv dSB3aXNoIHN1Y2ggYSBwYXRjaD8NCj4gPiA+Pj4NCj4gPiA+Pj4gVGhhbmtzLA0KPiA+ID4+PiBN YXJ2aW4uDQo+ID4gPj4+DQo+ID4gPj4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ ID4+Pj4gRnJvbTogZWRrMi1kZXZlbCBbbWFpbHRvOmVkazItZGV2ZWwtYm91bmNlc0BsaXN0cy4w MS5vcmddIE9uDQo+IEJlaGFsZg0KPiA+ID4+Pj4gT2YgR2FvLCBMaW1pbmcNCj4gPiA+Pj4+IFNl bnQ6IE1vbmRheSwgQXVndXN0IDI4LCAyMDE3IDk6MTkgQU0NCj4gPiA+Pj4+IFRvOiBTaGksIFN0 ZXZlbiA8c3RldmVuLnNoaUBpbnRlbC5jb20+OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+ ID4+Pj4gU3ViamVjdDogUmU6IFtlZGsyXSBbUEFUQ0hdIEJhc2VUb29scy9Db25mOiBTdXBwb3J0 IExMVk0zOSBhbmQNCj4gPiA+TExWTTQwDQo+ID4gPj4+IGluDQo+ID4gPj4+PiBDTEFORzM4IHRv b2xjaGFpbg0KPiA+ID4+Pj4NCj4gPiA+Pj4+IFJldmlld2VkLWJ5OiBMaW1pbmcgR2FvIDxsaW1p bmcuZ2FvQGludGVsLmNvbT4NCj4gPiA+Pj4+DQo+ID4gPj4+Pj4gLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCj4gPiA+Pj4+PiBGcm9tOiBTaGksIFN0ZXZlbg0KPiA+ID4+Pj4+IFNlbnQ6IFdl ZG5lc2RheSwgQXVndXN0IDIzLCAyMDE3IDM6MDEgUE0NCj4gPiA+Pj4+PiBUbzogZWRrMi1kZXZl bEBsaXN0cy4wMS5vcmc7IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPiA+ Pj4+PiBDYzogWmh1LCBZb25naG9uZyA8eW9uZ2hvbmcuemh1QGludGVsLmNvbT47IFNoaSwgU3Rl dmVuDQo+ID4gPj4+Pj4gPHN0ZXZlbi5zaGlAaW50ZWwuY29tPg0KPiA+ID4+Pj4+IFN1YmplY3Q6 IFtQQVRDSF0gQmFzZVRvb2xzL0NvbmY6IFN1cHBvcnQgTExWTTM5IGFuZCBMTFZNNDAgaW4NCj4g PiA+Pj4gQ0xBTkczOA0KPiA+ID4+Pj4+IHRvb2xjaGFpbg0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4g RnJvbTogIlNoaSwgU3RldmVuIiA8c3RldmVuLnNoaUBpbnRlbC5jb20+DQo+ID4gPj4+Pj4NCj4g PiA+Pj4+PiBBZGQgTExWTTM5IGFuZCBMTFZNNDAgc3VwcG9ydCBpbiBDTEFORzM4IHRvb2xjaGFp bg0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gQ29udHJpYnV0ZWQtdW5kZXI6IFRpYW5vQ29yZSBDb250 cmlidXRpb24gQWdyZWVtZW50IDEuMA0KPiA+ID4+Pj4+IFNpZ25lZC1vZmYtYnk6IFN0ZXZlbiBT aGkgPHN0ZXZlbi5zaGlAaW50ZWwuY29tPg0KPiA+ID4+Pj4+IC0tLQ0KPiA+ID4+Pj4+IEJhc2VU b29scy9Db25mL3Rvb2xzX2RlZi50ZW1wbGF0ZSB8IDUgKysrLS0NCj4gPiA+Pj4+PiAxIGZpbGUg Y2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQ0KPiA+ID4+Pj4+DQo+ID4g Pj4+Pj4gZGlmZiAtLWdpdCBhL0Jhc2VUb29scy9Db25mL3Rvb2xzX2RlZi50ZW1wbGF0ZQ0KPiA+ ID4+Pj4+IGIvQmFzZVRvb2xzL0NvbmYvdG9vbHNfZGVmLnRlbXBsYXRlDQo+ID4gPj4+Pj4gaW5k ZXggMWZhM2NhMy4uMmY4MzM0MSAxMDA3NTUNCj4gPiA+Pj4+PiAtLS0gYS9CYXNlVG9vbHMvQ29u Zi90b29sc19kZWYudGVtcGxhdGUNCj4gPiA+Pj4+PiArKysgYi9CYXNlVG9vbHMvQ29uZi90b29s c19kZWYudGVtcGxhdGUNCj4gPiA+Pj4+PiBAQCAtMzgwLDcgKzM4MCw4IEBAIERFRklORSBTT1VS Q0VSWV9DWUdXSU5fVE9PTFMgPQ0KPiA+ID4+Pj4gL2N5Z2RyaXZlL2MvUHJvZ3JhbQ0KPiA+ID4+ Pj4+IEZpbGVzL0NvZGVTb3VyY2VyeS9Tb3VyY2VyeSBHDQo+ID4gPj4+Pj4gIyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBJbnRlbChyKSBBQ1BJIENvbXBpbGVyIGZyb20NCj4gPiA+Pj4+ PiAjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0dHBzOi8vYWNwaWNhLm9yZy9kb3du bG9hZHMNCj4gPiA+Pj4+PiAjICAgQ0xBTkczOCAgLUxpbnV4LSAgUmVxdWlyZXM6DQo+ID4gPj4+ Pj4gLSMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsYW5nIHYzLjggb3IgbGF0ZXIsIExM Vk1nb2xkIHBsdWdpbiBhbmQgR05VDQo+IGJpbnV0aWxzDQo+ID4gPjIuMjYNCj4gPiA+Pj4+PiB0 YXJnZXRpbmcgeDg2XzY0LWxpbnV4LWdudQ0KPiA+ID4+Pj4+ICsjICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBDbGFuZyB2My44LCBMTFZNZ29sZCBwbHVnaW4gYW5kIEdOVSBiaW51dGlscw0K PiAyLjI2DQo+ID4gPj4+PiB0YXJnZXRpbmcNCj4gPiA+Pj4+PiB4ODZfNjQtbGludXgtZ251DQo+ ID4gPj4+Pj4gKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsYW5nIHYzLjkgb3IgbGF0 ZXIsIExMVk1nb2xkIHBsdWdpbiBhbmQgR05VDQo+IGJpbnV0aWxzDQo+ID4gPjIuMjgNCj4gPiA+ Pj4+PiB0YXJnZXRpbmcgeDg2XzY0LWxpbnV4LWdudQ0KPiA+ID4+Pj4+ICMgICAgICAgICAgICAg ICAgICAgICAgICBPcHRpb25hbDoNCj4gPiA+Pj4+PiAjICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBSZXF1aXJlZCB0byBidWlsZCBwbGF0Zm9ybXMgb3IgQUNQSSB0YWJsZXM6DQo+ID4gPj4+ Pj4gIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRlbChyKSBBQ1BJIENvbXBpbGVy IGZyb20NCj4gPiA+Pj4+PiBAQCAtNTUxMiw3ICs1NTEzLDcgQEAgREVGSU5FIENMQU5HMzhfWDY0 X1BSRUZJWCAgICAgICAgICAgPQ0KPiA+ID4+Pj4+IEVOVihDTEFORzM4X0JJTikNCj4gPiA+Pj4+ PiBERUZJTkUgQ0xBTkczOF9JQTMyX1RBUkdFVCAgICAgICAgICA9IC10YXJnZXQgaTY4Ni1wYy1s aW51eC1nbnUNCj4gPiA+Pj4+PiBERUZJTkUgQ0xBTkczOF9YNjRfVEFSR0VUICAgICAgICAgICA9 IC10YXJnZXQgeDg2XzY0LXBjLWxpbnV4LWdudQ0KPiA+ID4+Pj4+DQo+ID4gPj4+Pj4gLURFRklO RSBDTEFORzM4X0FMTF9DQ19GTEFHUyAgICAgICAgID0gREVGKEdDQzQ0X0FMTF9DQ19GTEFHUykN Cj4gPiAtDQo+ID4gPj4+IFduby0NCj4gPiA+Pj4+PiBlbXB0eS1ib2R5IC1mbm8tc3RhY2stcHJv dGVjdG9yIC1tbXMtYml0ZmllbGRzIC1Xbm8tYWRkcmVzcyAtDQo+ID4gV25vLQ0KPiA+ID4+PiBz aGlmdC0NCj4gPiA+Pj4+PiBuZWdhdGl2ZS12YWx1ZSAtV25vLXBhcmVudGhlc2VzLWVxdWFsaXR5 IC1Xbm8tdW5rbm93bi1wcmFnbWFzDQo+ID4gLQ0KPiA+ID4+Pj4gV25vLQ0KPiA+ID4+Pj4+IHRh dXRvbG9naWNhbC1jb25zdGFudC1vdXQtb2YtcmFuZ2UtY29tcGFyZQ0KPiA+ID4+Pj4+IC1Xbm8t aW5jb21wYXRpYmxlLWxpYnJhcnktIHJlZGVjbGFyYXRpb24NCj4gPiA+Pj4+PiAtZm5vLWFzeW5j aHJvbm91cy11bndpbmQtdGFibGVzIC1tbm8tc3NlIC1tbm8tbW14IC0NCj4gPiA+Pj4+IG1zb2Z0 LQ0KPiA+ID4+Pj4+IGZsb2F0IC1tbm8taW1wbGljaXQtZmxvYXQgIC1mdHJhcC0NCj4gPiA+Pj4+ PiBmdW5jdGlvbj11bmRlZmluZWRfYmVoYXZpb3JfaGFzX2JlZW5fb3B0aW1pemVkX2F3YXlfYnlf Y2xhbmcNCj4gPiAtDQo+ID4gPj4+Pj4gZnVuc2lnbmVkLWNoYXIgLWZuby1tcy1leHRlbnNpb25z IC1Xbm8tbnVsbC1kZXJlZmVyZW5jZSAtV25vLQ0KPiA+ID4+Pj4+IHRhdXRvbG9naWNhbC1jb21w YXJlIC1Xbm8tdW5rbm93bi13YXJuaW5nLW9wdGlvbg0KPiA+ID4+Pj4+ICtERUZJTkUgQ0xBTkcz OF9BTExfQ0NfRkxBR1MgICAgICAgICA9DQo+IERFRihHQ0M0NF9BTExfQ0NfRkxBR1MpDQo+ID4g LQ0KPiA+ID4+Pj4gV25vLQ0KPiA+ID4+Pj4+IGVtcHR5LWJvZHkgLWZuby1zdGFjay1wcm90ZWN0 b3IgLW1tcy1iaXRmaWVsZHMgLVduby1hZGRyZXNzIC0NCj4gPiBXbm8tDQo+ID4gPj4+IHNoaWZ0 LQ0KPiA+ID4+Pj4+IG5lZ2F0aXZlLXZhbHVlIC1Xbm8tcGFyZW50aGVzZXMtZXF1YWxpdHkgLVdu by11bmtub3duLXByYWdtYXMNCj4gPiAtDQo+ID4gPj4+PiBXbm8tDQo+ID4gPj4+Pj4gdGF1dG9s b2dpY2FsLWNvbnN0YW50LW91dC1vZi1yYW5nZS1jb21wYXJlDQo+ID4gPj4+Pj4gLVduby1pbmNv bXBhdGlibGUtbGlicmFyeS0gcmVkZWNsYXJhdGlvbg0KPiA+ID4+Pj4+IC1mbm8tYXN5bmNocm9u b3VzLXVud2luZC10YWJsZXMgLW1uby1zc2UgLW1uby1tbXggLQ0KPiA+ID4+Pj4gbXNvZnQtDQo+ ID4gPj4+Pj4gZmxvYXQgLW1uby1pbXBsaWNpdC1mbG9hdCAgLWZ0cmFwLQ0KPiA+ID4+Pj4+IGZ1 bmN0aW9uPXVuZGVmaW5lZF9iZWhhdmlvcl9oYXNfYmVlbl9vcHRpbWl6ZWRfYXdheV9ieV9jbGFu Zw0KPiA+IC0NCj4gPiA+Pj4+PiBmdW5zaWduZWQtY2hhciAtZm5vLW1zLWV4dGVuc2lvbnMgLVdu by1udWxsLWRlcmVmZXJlbmNlIC1Xbm8tDQo+ID4gPj4+Pj4gdGF1dG9sb2dpY2FsLWNvbXBhcmUg LVduby11bmtub3duLXdhcm5pbmctb3B0aW9uIC1Xbm8tdmFyYXJncw0KPiA+ID4+Pj4+DQo+ID4g Pj4+Pj4gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQo+ID4gPj4+Pj4gIyBDTEFORzM4IElB MzIgZGVmaW5pdGlvbnMNCj4gPiA+Pj4+PiAtLQ0KPiA+ID4+Pj4+IDIuNy40DQo+ID4gPj4+Pg0K PiA+ID4+Pj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18N Cj4gPiA+Pj4+IGVkazItZGV2ZWwgbWFpbGluZyBsaXN0DQo+ID4gPj4+PiBlZGsyLWRldmVsQGxp c3RzLjAxLm9yZw0KPiA+ID4+Pj4gaHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5m by9lZGsyLWRldmVsDQo+ID4gPj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fDQo+ID4gPj4+IGVkazItZGV2ZWwgbWFpbGluZyBsaXN0DQo+ID4gPj4+IGVk azItZGV2ZWxAbGlzdHMuMDEub3JnDQo+ID4gPj4+IGh0dHBzOi8vbGlzdHMuMDEub3JnL21haWxt YW4vbGlzdGluZm8vZWRrMi1kZXZlbA0KPiA+ID4+IF9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fDQo+ID4gPj4gZWRrMi1kZXZlbCBtYWlsaW5nIGxpc3QNCj4g PiA+PiBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiA+ID4+IGh0dHBzOi8vbGlzdHMuMDEub3Jn L21haWxtYW4vbGlzdGluZm8vZWRrMi1kZXZlbA0KPiA+ID4+DQo+IA0KPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiBlZGsyLWRldmVsIG1haWxpbmcg bGlzdA0KPiBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiBodHRwczovL2xpc3RzLjAxLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2VkazItZGV2ZWwNCg==