From mboxrd@z Thu Jan 1 00:00:00 1970 From: Artem Mygaiev Subject: Re: [PATCH 00/12] xen/arm: Add support to build with clang Date: Thu, 25 Apr 2019 03:31:58 +0000 Message-ID: <4d65df155cd984d9c0cdfbcc0b4c0a7bfeea24b0.camel@epam.com> References: <20190327184531.30986-1-julien.grall@arm.com> <970b4dcfb4e3c04bc9502c7656caa61d2f8c0677.camel@epam.com> <8210e96d-c7cd-384e-3277-21fdbfc32105@arm.com> <34d8cf3f-e262-e3ab-b9e3-3c0dcbd75e37@arm.com> <92811c0c44411ab28eefce1aa7028bf0c426ea80.camel@epam.com> <91a841b7-424a-79a3-b551-15587bf92ed3@arm.com> <18f9d557324a69437cd062aeced21e6b4759a968.camel@epam.com> <57804820901cc5e0f70e2710130814cd29432cfc.camel@epam.com> <92771f39-6dc3-ddcc-9e94-1466c028a03d@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hJV7F-0007QF-PE for xen-devel@lists.xenproject.org; Thu, 25 Apr 2019 03:32:06 +0000 In-Reply-To: <92771f39-6dc3-ddcc-9e94-1466c028a03d@arm.com> Content-Language: en-US Content-ID: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: "sstabellini@kernel.org" , "roger.pau@citrix.com" , "julien.grall@arm.com" Cc: "tamas@tklengyel.com" , "wei.liu2@citrix.com" , "rcojocaru@bitdefender.com" , "konrad.wilk@oracle.com" , "George.Dunlap@eu.citrix.com" , "andrew.cooper3@citrix.com" , "ian.jackson@eu.citrix.com" , "tim@xen.org" , Oleksandr Tyshchenko , "jbeulich@suse.com" , "xen-devel@lists.xenproject.org" , Andrii Anisov List-Id: xen-devel@lists.xenproject.org SGVsbG8gSnVsaWVuDQoNCk9uIFdlZCwgMjAxOS0wNC0yNCBhdCAyMjowNyArMDEwMCwgSnVsaWVu IEdyYWxsIHdyb3RlOg0KPiBIaSBBcnRlbSwNCj4gDQo+IE9uIDQvMjMvMTkgMjozOSBQTSwgQXJ0 ZW0gTXlnYWlldiB3cm90ZToNCj4gPiBIZWxsbyBKdWxpZW4sIFJvZ2VyDQo+ID4gDQo+ID4gT24g VGh1LCAyMDE5LTA0LTE4IGF0IDE5OjMzICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+ID4g PiAoKyBSb2dlcikNCj4gPiA+IA0KPiA+ID4gT24gMTgvMDQvMjAxOSAxMjoxNSwgQXJ0ZW0gTXln YWlldiB3cm90ZToNCj4gPiA+ID4gSGkgSnVsaWVuDQo+ID4gPiA+IA0KPiA+ID4gPiBPbiBUaHUs IDIwMTktMDQtMTggYXQgMTE6NDMgKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gPiA+ID4g PiBPbiAxOC8wNC8yMDE5IDEwOjE1LCBBcnRlbSBNeWdhaWV2IHdyb3RlOg0KPiA+ID4gPiA+ID4g SGVsbG8gSnVsaWVuLCBTdGVmYW5vDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gSGkgQXJ0ZW0sDQo+ ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiBPbiBXZWQsIDIwMTktMDQtMTcgYXQgMTA6NDIgKzAxMDAs IEp1bGllbiBHcmFsbCB3cm90ZToNCj4gPiA+ID4gPiA+ID4gSGksDQo+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiBPbiAxNi8wNC8yMDE5IDIzOjQzLCBTdGVmYW5vIFN0YWJlbGxpbmkgd3Jv dGU6DQo+ID4gPiA+ID4gPiA+ID4gT24gRnJpLCAyOSBNYXIgMjAxOSwgSnVsaWVuIEdyYWxsIHdy b3RlOg0KPiA+ID4gPiA+ID4gPiA+ID4gT24gMjgvMDMvMjAxOSAxMToyNywgQXJ0ZW0gTXlnYWll diB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4gSGkgSnVsaWVuLA0KPiA+ID4gPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiBIaSBBcnRlbSwNCj4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ ID4gPiA+ID4gPiA+ID4gPiBPbiBXZWQsIDIwMTktMDMtMjcgYXQgMTg6NDUgKzAwMDAsIEp1bGll biBHcmFsbA0KPiA+ID4gPiA+ID4gPiA+ID4gPiB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiBIaSBhbGwsDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g VGhpcyBzZXJpZXMgYWRkcyBzdXBwb3J0IHRvIGJ1aWxkIFhlbiBBcm0gd2l0aA0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IGNsYW5nLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IFRoaXMgc2VyaWVzIHdh cw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHRlc3RlZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHdp dGggY2xhbmcgOC4wLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+IE5vdGUgdGhhdCBJIG9ubHkgZGlkIGJ1aWxkIGZvciBhcm02NC4gSSBzdGlsbA0KPiA+ID4g PiA+ID4gPiA+ID4gPiA+IG5lZWQgdG8NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBsb29rIGF0IHRo ZSBhcm0zMg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGJ1aWxkLg0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gSSB3b25kZXIg aWYgeW91IGhhdmUgdGltZSB0byB0cnkgdGhlIHNlcmllcyB3aXRoDQo+ID4gPiA+ID4gPiA+ID4g PiA+IEFybQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBDb21waWxlciA2PyBJIGFtDQo+ID4gPiA+ID4g PiA+ID4gPiA+IGFza2luZyBiZWNhdXNlIEFGQUlLIGl0IGlzIGJhc2VkIG9uIGNsYW5nL2xsdm0g WzFdDQo+ID4gPiA+ID4gPiA+ID4gPiA+IGFuZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiB0aGVyZSdz IGENCj4gPiA+ID4gPiA+ID4gPiA+ID4gc2FmZXR5LWNvbXBsaWFudCB2ZXJzaW9uIG9mIGl0IGNl cnRpZmllZCBieSBUVVYNCj4gPiA+ID4gPiA+ID4gPiA+ID4gWzJdLiBJDQo+ID4gPiA+ID4gPiA+ ID4gPiA+IGRvbid0IGhhdmUgYQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBsaWNlbnNlIHlldCBzbyBj YW5ub3QgdHJ5IGl0IG15c2VsZiBidXQgbWF5YmUgeW91DQo+ID4gPiA+ID4gPiA+ID4gPiA+IGhh dmUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gYWNjZXNzLg0KPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4g PiA+ID4gPiA+ID4gPiBJIGdhdmUgYSBxdWljayB0cnkgdG8gdGhlIEFybSBDb21waWxlci4gSSBo YWQgdG8gaGFjaw0KPiA+ID4gPiA+ID4gPiA+ID4gYQ0KPiA+ID4gPiA+ID4gPiA+ID4gYml0DQo+ ID4gPiA+ID4gPiA+ID4gPiBjb25maWcvU3RkR05VLm1rDQo+ID4gPiA+ID4gPiA+ID4gPiB0byBw YXNzIGFybWNsYW5nIGFuZCB0aGUgYXBwcm9wcmlhdGUgdGFyZ2V0IG9wdGlvbi4NCj4gPiA+ID4g PiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gSSBhbHNvIGhhZCBhIGxpbmtpbmcgaXNzdWUg YXQgdGhlIGVuZCB3aGVyZQ0KPiA+ID4gPiA+ID4gPiA+ID4gX18yc25wcmludGYNCj4gPiA+ID4g PiA+ID4gPiA+IHdhcw0KPiA+ID4gPiA+ID4gPiA+ID4gbm90IGZvdW5kLiBJdA0KPiA+ID4gPiA+ ID4gPiA+ID4gc2VlbXMgdGhlIGNvbXBpbGVyIHJlcGxhY2Ugc25wcmludGYgd2l0aCBfXzJzbnBy aW50ZiwNCj4gPiA+ID4gPiA+ID4gPiA+IEkNCj4gPiA+ID4gPiA+ID4gPiA+IGhhdmVuJ3QgZmln dXJlZCBvdXQNCj4gPiA+ID4gPiA+ID4gPiA+IHdoeSB5ZXQuDQo+ID4gPiA+ID4gPiA+ID4gDQo+ ID4gPiA+ID4gPiA+ID4gQnV0IGFmdGVyIHRoZXNlIGNoYW5nZXMsIGRvZXMgaXQgd29yaz8NCj4g PiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IEkgaGF2ZW4ndCB0cmllZCB0byBmaXggdGhlIGxp bmtpbmcgaXNzdWVzLiBJIG9ubHkgZ2F2ZSBhDQo+ID4gPiA+ID4gPiA+IHF1aWNrDQo+ID4gPiA+ ID4gPiA+IHRyeSBiZWNhdXNlIEFydGVtDQo+ID4gPiA+ID4gPiA+IGFza2VkLiBJIGhhdmUgbm8g cGxhbiBhdCB0aGUgbW9tZW50IHRvIGdvIGZ1cnRoZXIgdGhhbg0KPiA+ID4gPiA+ID4gPiB0aGF0 DQo+ID4gPiA+ID4gPiA+IGZvcg0KPiA+ID4gPiA+ID4gPiBub3cuDQo+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiBQYXRjaGVzIGFyZSB3ZWxjb21lZCB0byBhZGQgc3VwcG9ydCBmb3IgYXJt Y2xhbmcuDQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiBJIGhhdmUg aW1wbGVtZW50ZWQgYSBidW5jaCBvZiBIQUNLcyBbMV0gc28gY2FuIGJ1aWxkIFhlbg0KPiA+ID4g PiA+ID4gbWFzdGVyDQo+ID4gPiA+ID4gPiB3aXRoDQo+ID4gPiA+ID4gPiBhcm1jbGFuZyA2LjEy LiBOb3QgZXZlbiAic21va2UiLXRlc3RlZCwganVzdCB0cnlpbmcgdG8NCj4gPiA+ID4gPiA+IGlk ZW50aWZ5DQo+ID4gPiA+ID4gPiBtaXNzaW5nDQo+ID4gPiA+ID4gPiBwYXJhbWV0ZXJzIGFuZCBw cm9wZXIgbGlua2VyIGNvbmZpZ3VyYXRpb24uDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gVGhhbmsg eW91IGZvciBsb29raW5nIGF0IGl0LiBTb21lIGNvbW1lbnRzIGJlbG93Lg0KPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gTm90IHlldCBmaXhlZCBzZWN0aW9uIHBsYWNlbWVudCwgbG90cyBvZiB3YXJu aW5ncyBmcm9tDQo+ID4gPiA+ID4gPiBsaW5rZXINCj4gPiA+ID4gPiA+IGxpa2U6DQo+ID4gPiA+ ID4gPiBXYXJuaW5nOiBMNjE3MFc6IE1hcHBpbmcgc3ltYm9sICM0MCAnJHguMjAnIGluDQo+ID4g PiA+ID4gPiAuYWx0aW5zdHJfcmVwbGFjZW1lbnQobnMxNjU1MC5vOjQyKSBpZGVudGlmaWVzIGNv ZGUsIGJ1dCBpcw0KPiA+ID4gPiA+ID4gaW4NCj4gPiA+ID4gPiA+IGENCj4gPiA+ID4gPiA+IHNl Y3Rpb24gbm90IG1hcmtlZCBhcyBleGVjdXRhYmxlLg0KPiA+ID4gPiA+IA0KPiA+ID4gPiA+IElu c3RydWN0aW9uIGluIHRoZSBzZWN0aW9ucyAuYWx0aW5zdHJfcmVwbGFjZW1lbnQgYXJlIG5ldmVy DQo+ID4gPiA+ID4gbWVhbnQNCj4gPiA+ID4gPiB0bw0KPiA+ID4gPiA+IGJlIGV4ZWN1dGVkLg0K PiA+ID4gPiA+IA0KPiA+ID4gPiA+IEkgZ3Vlc3MgdGhpcyBpcyBjb21pbmcgZnJvbSBhcm1saW5r PyBBbnkgcGFydGljdWxhciByZWFzb24gdG8NCj4gPiA+ID4gPiB1c2UNCj4gPiA+ID4gPiBhcm1s aW5rIGFuZA0KPiA+ID4gPiA+IG5vdCBsZCBhcyB3ZSBkbyBvbiBjbGFuZz8NCj4gPiA+ID4gPiAN Cj4gPiA+ID4gDQo+ID4gPiA+IFllcywgYXJtbGluayBoYXMgYSAiU2FmZXR5LWNlcnRpZmllZCIg dmVyc2lvbiBvZiBpdCwgd2hpbGUgbGQNCj4gPiA+ID4gZG9lc24ndCwNCj4gPiA+ID4gdW5mb3J0 dW5hdGVseSA6KA0KPiA+ID4gDQo+ID4gPiBJIGFtIG5vdCBzdXJlIGlmIGFueW9uZSB0cmllZCB0 byBidWlsZCBYZW4gb3RoZXIgdGhhbiB3aXRoIGxkIHNvDQo+ID4gPiBmYXIuDQo+ID4gPiBJIGhh dmUNCj4gPiA+IENDZWQgUm9nZXIgd2hvIG1pZ2h0IGhhdmUgYSBjbHVlIHdoZXRoZXIgdGhlcmUg YXJlIG90aGVyIGJsb2NrZXIuDQo+ID4gPiANCj4gPiANCj4gPiBMb29raW5nIGZvcndhcmQgdG8g aGVhcmluZyBmcm9tIFJvZ2VyLg0KPiA+IA0KPiA+ID4gPiBUaG91Z2ggSSBtdXN0IG1lbnRpb24g dGhhdCBJIGRvIG5vdCBoYXZlIGFjY2VzcyB0byBzYWZldHktDQo+ID4gPiA+IGNlcnRpZmllZA0K PiA+ID4gPiB2ZXJzaW9uIG9mIGFybSBjb21waWxlciBzdWl0ZSwgaXQgaXMgbm90IHB1YmxpYy4g VGh1cyBjaGVja2luZw0KPiA+ID4gPiBvbmx5DQo+ID4gPiA+IGFnYWluc3QgdGhlIDMwLWRheSB0 cmlhbCB2ZXJzaW9uIG9mIEFSTSBEUyAyMDE5LTAgd2hpY2ggaXMNCj4gPiA+ID4gc2hpcHBlZA0K PiA+ID4gPiB3aXRoDQo+ID4gPiA+IGNvbXBpbGVyIDYuMTINCj4gPiA+IA0KPiA+ID4gQW55IHN0 ZXAgdG93YXJkcyBhcm1jbGFuZyBpcyBnb29kIDopLiBXZSBjYW4gbG9vayBhdCB0aGUgc2FmZXR5 LQ0KPiA+ID4gY2VydGlmaWVkDQo+ID4gPiB2ZXJzaW9uIGFmdGVyd2FyZHMuDQo+ID4gPiANCj4g PiA+IEkgZG9uJ3Qgc2VlbSB0byBiZSBhYmxlIHRvIGxpbmsgd2l0aCB0aGlzIHBhdGNoIG9uIDYu MTI6DQo+ID4gPiANCj4gPiA+IExvYWRpbmcgb2JqZWN0IGJ1aWx0X2luLm8uDQo+ID4gPiBFcnJv cjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4ubyBhcyBpdHMgYXR0cmlidXRl cw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+IHdpdGggdGhlIGltYWdlIGF0 dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3aXRoIFNvZnRWRlAuDQo+ID4g PiBFcnJvcjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4ubyBhcyBpdHMgYXR0 cmlidXRlcw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+IHdpdGggdGhlIGlt YWdlIGF0dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3aXRoIFNvZnRWRlAu DQo+ID4gPiBFcnJvcjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4ubyBhcyBp dHMgYXR0cmlidXRlcw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+IHdpdGgg dGhlIGltYWdlIGF0dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3aXRoIFNv ZnRWRlAuDQo+ID4gPiBFcnJvcjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4u byBhcyBpdHMgYXR0cmlidXRlcw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+ IHdpdGggdGhlIGltYWdlIGF0dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3 aXRoIFNvZnRWRlAuDQo+ID4gPiANCj4gPiA+IEkgYW0gdXNpbmcgdGhlIGZvbGxvd2luZyBjb21t YW5kIGxpbmUgdG8gYnVpbGQ6DQo+ID4gPiANCj4gPiA+IDQyc2g+IG1ha2UgQ1JPU1NfQ09NUElM RT1hYXJjaDY0LWxpbnV4LWdudS0gWEVOX1RBUkdFVF9BUkNIPWFybTY0DQo+ID4gPiBjbGFuZz15 DQo+ID4gPiBhcm1kcz15ICAtQyB+L3dvcmtzL3hlbi94ZW4gIFhFTl9DT05GSUdfRVhQRVJUPXkN Cj4gPiA+IA0KPiA+IA0KPiA+IEkgYW0gc3RpbGwgc3RydWdnbGluZyB3aXRoIGxpbmtlciBpbnRl cm5hbCBmYXVsdCwgbm90IHN1cmUgd2hhdA0KPiA+IGNoYW5nZWQNCj4gPiBpbiBteSBlbnZpcm9u bWVudCBzbyBpdCBzdGFydGVkIHRvIGZhaWwuDQo+ID4gDQo+ID4gPiA+ID4gPiBBbHNvIGFybWxp bmsgc29tZXRpbWVzIGZhaWxzIHdpdGggSW50ZXJuYWwgZmF1bHQ6DQo+ID4gPiA+ID4gPiBbMHhl ODFhNWE6NjEyMDAwMV0NCj4gPiA+ID4gPiANCj4gPiA+ID4gPiBEbyB5b3UgaGF2ZSBtb3JlIG91 dHB1dD8NCj4gPiA+ID4gDQo+ID4gPiA+IEp1c3Qgb3BlbmVkIGEgdGlja2V0IGluIEFybSBjb21t dW5pdHkgZm9ydW1zLCBzZWUgZGV0YWlscyB0aGVyZQ0KPiA+ID4gPiBpbmNsdWRpbmcgZnVsbCBi dWlsZCBsb2cgKGRvbnQgd2FudCB0byBzcGFtIG1sKQ0KPiA+ID4gPiBodHRwczovL2NvbW11bml0 eS5hcm0uY29tL2RldmVsb3Blci90b29scy1zb2Z0d2FyZS90b29scy9mL2FybS1jb21waWxlcnMt Zm9ydW0vMTI5ODkvbGlua2VyLWludGVybmFsLWZhdWx0LTB4ZTgxYTVhLTYxMjAwMDENCj4gPiA+ ID4gDQo+ID4gPiA+IA0KPiA+ID4gDQo+ID4gPiBUaGVyZSBhcmUgbm90aGluZyBpbnRlcmVzdGlu ZyBpbiBleGNlcHQgYSBmbG9vZCBvZiAiYXJtY2xhbmc6DQo+ID4gPiB3YXJuaW5nOiBZb3VyDQo+ ID4gPiBsaWNlbnNlIGZvciBmZWF0dXJlIGRzX3N1aXRlX2V2YWwgd2lsbCBleHBpcmUgaW4gMjkg ZGF5cyIuDQo+ID4gPiANCj4gPiA+IExldCBtZSBrbm93IGhvdyBpdCBnb2VzIGFuZCBJIGNhbiBo ZWxwIHRvIHJlc29sdmUgaXQuDQo+ID4gPiANCj4gPiANCj4gPiBUaGlzIGlzIGJlY2F1c2Ugb2Yg dGhlICJmcmVlIiBldmFsdWF0aW9uIGxpY2Vuc2UgSSBoYXZlLCBwcm9iYWJseQ0KPiA+IGNhbg0K PiA+IGJlIHNhZmVseSBpZ25vcmVkLg0KPiANCj4gSSBrbm93IDopLiBJIHdhcyBwb2ludGVkIG91 dCBob3cgdmVyYm9zZSBpdCB3YXMgY29tcGFyZSB0byB0aGUgbGFjaw0KPiBvZiANCj4gaW5mb3Jt YXRpb24gcmVnYXJkaW5nIHRoZSBpbnRlcm5hbCBmYXVsdC4NCj4gDQo+ID4gU28gZmFyIG5vIHJl YWN0aW9uIG9uIG15IGluaXRpYWwgcG9zdCBpbiBBcm0gQ29tbXVuaXR5Lg0KPiA+IA0KPiA+IFBs YXlpbmcgd2l0aCBsaW5rZXIgb3B0aW9ucyBJIGZvdW5kIHRoYXQgdGhlIGVycm9yIGlzIGNhdXNl ZCBieSB0aGUNCj4gPiB1c2UNCj4gPiBvZiAicGFydGlhbCBsaW5raW5nIG1vZGVsIiB3aGljaCBp cyBlbmFibGVkIGJ5IC0tcGFydGlhbCB0aGF0DQo+ID4gY29ycmVzcG9uZCB0byAtciBpbiBYZW4g TWFrZWZpbGVzLCB3aGljaCBpcyBub3QgZG9jdW1lbnRlZCBidXQgaGFzDQo+ID4gc2ltaWxhciBl ZmZlY3QuDQo+IA0KPiBEbyB5b3UgbWVhbiB0aGUgIkludGVybmFsIEZhdWx0Ij8NCj4gDQoNClll cy4NCg0KQnV0IEkga2luZGEgc29ydGVkIHRoaXMgaXNzdWUgb3V0LiBUaGF0IHdhcyBhIGR1bWIg bWlzdGFrZSAtIHdoaWxlDQp3b3JraW5nIEkgaGF2ZSBtb3ZlZCB0byBhIGRpZmZlcmVudCBjb2Rl IHRyZWUgdGhhdCBJIHVzZWQgdG8gY2hlY2sgZ2Nvdg0Kc28gaXQgaGFkIENPTkZJR19DT1ZFUkFH RSBlbmFibGVkLiBJIGdvdCByaWQgb2YgbGlua2VyIGludGVybmFsIGZhdWx0DQphZnRlciBkaXNh YmxpbmcgaXQgKHRob3VnaCBzdGlsbCBub3QgY2xlYXIgd2h5IHRoaXMgbGVkIHRvIGxpbmtlcg0K ZmFpbGluZyB3aXRoIC1yKQ0KDQpOb3cgSSBhbSBnZXR0aW5nIHRoZSBzYW1lIGxpbmtlciBlcnJv ciB5b3UgbWVudGlvbmVkLiBXaWxsIGNvbnRpbnVlDQp3b3JraW5nIG9uIHRoaXMgYWZ0ZXIgaG9s aWRheXMsIHN1c3BlY3QgdGhhdCBhcm1saW5rIG1pc3NpbmcgcHJvcGVyDQpjb25maWd1cmF0aW9u IGFuZCBwcm9iYWJseSBzZWN0aW9uIHBsYWNlbWVudC4NCg0KPiA+ID4gPiA+ID4gWzFdIERpZmYg YmVsb3cganVzdCBmb3IgcmVmZXJlbmNlIHdpdGggeGVuIG1hc3RlciArDQo+ID4gPiA+ID4gPiBK dWxpZW4ncw0KPiA+ID4gPiA+ID4gY2xhbmcNCj4gPiA+ID4gPiA+IHBhdGNoIHNlcmllcyBhcHBs aWVkDQo+ID4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gZGlmZiAtLWdp dCBhL0NvbmZpZy5tayBiL0NvbmZpZy5taw0KPiA+ID4gPiA+ID4gaW5kZXggNDE3MDM5ZDdmNi4u MGZjODQyOTNmOSAxMDA2NDQNCj4gPiA+ID4gPiA+IC0tLSBhL0NvbmZpZy5taw0KPiA+ID4gPiA+ ID4gKysrIGIvQ29uZmlnLm1rDQo+ID4gPiA+ID4gPiBAQCAtMjIxLDcgKzIyMSw5IEBAIENGTEFH UyArPSAtV2FsbCAtV3N0cmljdC1wcm90b3R5cGVzDQo+ID4gPiA+ID4gPiAgICAgDQo+ID4gPiA+ ID4gPiAgICAgJChjYWxsIGNjLW9wdGlvbi1hZGQsSE9TVENGTEFHUyxIT1NUQ0MsLVdkZWNsYXJh dGlvbi1PVyANCj4gPiA+ID4gPiA+IGFmdA0KPiA+ID4gPiA+ID4gc3RhdGVtZW50KQ0KPiA+ID4g PiA+ID4gICAgICQoY2FsbCBjYy1vcHRpb24tYWRkLENGTEFHUyxDQywtV2RlY2xhcmF0aW9uLWFm dGVyLQ0KPiA+ID4gPiA+ID4gc3RhdGVtZW50KQ0KPiA+ID4gPiA+ID4gK2lmbmVxICgkKGFybWRz KSx5KQ0KPiA+ID4gPiA+ID4gICAgICQoY2FsbCBjYy1vcHRpb24tYWRkLENGTEFHUyxDQywtV25v LXVudXNlZC1idXQtc2V0LQ0KPiA+ID4gPiA+ID4gdmFyaWFibGUpDQo+ID4gPiA+ID4gDQo+ID4g PiA+ID4gSSBkaWRuJ3QgbmVlZCB0aGlzIG9uIEFybSBDb21waWxlciA2LjExLiBDYW4geW91IHBy b3ZpZGUgdGhlDQo+ID4gPiA+ID4gbGlzdA0KPiA+ID4gPiA+IG9mDQo+ID4gPiA+ID4gZXJyb3Ig eW91DQo+ID4gPiA+ID4gZ2V0IGhlcmU/DQo+ID4gPiA+IA0KPiA+ID4gPiBlcnJvcjogdW5rbm93 biB3YXJuaW5nIG9wdGlvbiAnLVduby11bnVzZWQtYnV0LXNldC12YXJpYWJsZSc7DQo+ID4gPiA+ IGRpZA0KPiA+ID4gPiB5b3UNCj4gPiA+ID4gbWVhbiAnLVduby11bnVzZWQtY29uc3QtdmFyaWFi bGUnPyBbLVdlcnJvciwtV3Vua25vd24td2FybmluZy0NCj4gPiA+ID4gb3B0aW9uXQ0KPiA+ID4g DQo+ID4gPiBCdXQgY2Mtb3B0aW9uLWFkZCBzaG91bGQgb25seSBhZGQgdGhlIGZsYWcgaWYgaXQg aXMgc3VwcG9ydGVkIGJ5DQo+ID4gPiB0aGUNCj4gPiA+IGNvbXBpbGVyLg0KPiA+ID4gU28gaXQg aXMgbm90IHN1cHBvcnRlZCwgaG93IGNvbWUgdGhpcyBvcHRpb24gaXMgYWN0dWFsbHkgdXNlZCB0 bw0KPiA+ID4gY29tcGlsZT8NCj4gPiA+IA0KPiA+IA0KPiA+IEJlY2F1c2UgdGhlIGlkZWEgb2Yg c3VwcG9ydGVkIG9wdGlvbiBkZXRlY3Rpb24gcmVseSBvbiB0aGUgZmFjdA0KPiA+IHRoYXQNCj4g PiBjb21waWxlciB3aWxsIHRocm93IGFuIGVycm9yIG9yIHdhcm5pbmcgd2hlbiBtYWtlZmlsZSB0 cnkgYW5kIHVzZQ0KPiA+IHRoZQ0KPiA+IG9wdGlvbiBiZWluZyB0ZXN0ZWQsIGJ1dCBhcm1jbGFu ZyBkb2VzIG5vdCBldmVuIHRyeSB0byBjaGVjayB0aGF0DQo+ID4gYW5kDQo+ID4gZmFpbGluZyB3 aXRoDQo+ID4gICAgYXJtY2xhbmc6IGZhdGFsIGVycm9yOiBubyB0YXJnZXQgYXJjaGl0ZWN0dXJl IGdpdmVuOyB1c2UgLS0NCj4gPiB0YXJnZXQ9YXJtLWFybS1ub25lLWVhYmkgb3IgLS10YXJnZXQ9 YWFyY2g2NC1hcm0tbm9uZS1lYWJpDQo+ID4gYW5kIHRodXMgY2Mtb3B0aW9uLWFkZCBkb2VzIG5v dCBkZXRlY3QgdW5zdXBwb3J0ZWQgb3B0aW9ucw0KPiANCj4gSSB0aGluayBkZWZpbmluZyBDQyBh cyBiZWxvdyBzaG91bGQgZG8gdGhlIHRyaWNrOg0KPiANCj4gQ0MgOj0gYXJtY2xhbmcgLS10YXJn ZXQ9YWFyY2g2NC1hcm0tbm9uZS1lYWJpDQo+IA0KDQpBZ3JlZQ0KDQo+ID4gPiA+ID4gPiArZW5k aWYNCj4gPiA+ID4gPiA+ICAgICAkKGNhbGwgY2Mtb3B0aW9uLWFkZCxDRkxBR1MsQ0MsLVduby11 bnVzZWQtbG9jYWwtDQo+ID4gPiA+ID4gPiB0eXBlZGVmcykNCj4gPiA+ID4gPiA+ICAgICANCj4g PiA+ID4gPiA+ICAgICBMREZMQUdTICs9ICQoZm9yZWFjaCBpLCAkKEVYVFJBX0xJQiksIC1MJChp KSkNCj4gPiA+ID4gPiA+IEBAIC0yMzQsOSArMjM2LDE1IEBAIGVuZGlmDQo+ID4gPiA+ID4gPiAg ICAgQVBQRU5EX0xERkxBR1MgKz0gJChmb3JlYWNoIGksICQoQVBQRU5EX0xJQiksIC1MJChpKSkN Cj4gPiA+ID4gPiA+ICAgICBBUFBFTkRfQ0ZMQUdTICs9ICQoZm9yZWFjaCBpLCAkKEFQUEVORF9J TkNMVURFUyksDQo+ID4gPiA+ID4gPiAtSSQoaSkpDQo+ID4gPiA+ID4gPiAgICAgDQo+ID4gPiA+ ID4gPiAtRU1CRURERURfRVhUUkFfQ0ZMQUdTIDo9IC1ub3BpZSAtZm5vLXN0YWNrLXByb3RlY3Rv ciAtZm5vLQ0KPiA+ID4gPiA+ID4gc3RhY2stDQo+ID4gPiA+ID4gPiBwcm90ZWN0b3ItYWxsDQo+ ID4gPiA+ID4gPiArRU1CRURERURfRVhUUkFfQ0ZMQUdTIDo9IC1mbm8tc3RhY2stcHJvdGVjdG9y IC1mbm8tc3RhY2stDQo+ID4gPiA+ID4gPiBwcm90ZWN0b3ItYWxsDQo+ID4gPiA+ID4gPiAgICAg RU1CRURERURfRVhUUkFfQ0ZMQUdTICs9IC1mbm8tZXhjZXB0aW9ucw0KPiA+ID4gPiA+ID4gICAg IA0KPiA+ID4gPiA+ID4gK2lmZXEgKCQoYXJtZHMpLHkpDQo+ID4gPiA+ID4gPiArRU1CRURERURf RVhUUkFfQ0ZMQUdTICs9IC1mbm8tcm9waSAtZm5vLXJ3cGkNCj4gPiA+ID4gPiANCj4gPiA+ID4g PiBXaHkgZG8geW91IG5lZWQgdGhpcz8gSXMgaXQgYmVjYXVzZSBhcm1saW5rIGRvZXMgbm90IHN1 cHBvcnQNCj4gPiA+ID4gPiAtbm9waWU/DQo+ID4gPiA+IA0KPiA+ID4gPiBZZXMuIHJvcGkvcndw aSBhcmUgYWNjb3JkaW5nIHRvIEFybSBDb21waWxlciA2LjEyIHJlZmVyZW5jZQ0KPiA+ID4gPiBn dWlkZSwNCj4gPiA+ID4gc2VlDQo+ID4gPiA+IFsxMDAwNjdfMDYxMl8wMF9lbiAxLTU0XSBhbmQg WzEwMDA2N18wNjEyXzAwX2VuIDEtNTZdDQo+ID4gPiANCj4gPiA+IEhtbW0sIGJ1dCB0aGUgZG9j cyBzYXlzOg0KPiA+ID4gDQo+ID4gPiAiVGhpcyBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCBpbiBB QXJjaDY0IHN0YXRlIi4gU28gaXMgdGhhdCBhDQo+ID4gPiByZWFsbHkNCj4gPiA+IGdvb2QNCj4g PiA+IHJlcGxhY2VtZW50Pw0KPiA+ID4gDQo+ID4gDQo+ID4gWW91J3JlIHJpZ2h0LCByZWFkaW5n IGZ1cnRoZXIgaW4gdGhlIGRvY3VtZW50IHRoaXMgZG9lcyBub3Qgc2VlbSB0bw0KPiA+IGJlDQo+ ID4gYSB2YWxpZCByZXBsYWNlbWVudC4gTW9yZW92ZXIsIGl0IHNlZW1zIHRoYXQgd2UgZG9udCBu ZWVkIHRoaXMNCj4gPiBvcHRpb24NCj4gPiB3aXRoIGFybWNsYW5nIC0gYnkgZGVmYXVsdCBpdCBk b2VzIG5vdCBnZW5lcmF0ZSBwb3NpdGlvbi0NCj4gPiBpbmRlcGVuZGVudA0KPiA+IGNvZGUNCj4g DQo+IEFzIHRoaXMgYWx3YXlzIGJlZW4gdGhlIGNhc2U/IEkga25vdyB0aGF0IGZvciBHQ0MgaXQg ZGVwZW5kcyBvbiB0aGUNCj4gb24gDQo+IGRpc3Ryby92ZXJzaW9uIG9mIHRoZSBjb21waWxlci4N Cg0KSSB3aWxsIGNoZWNrIGhvdyBhcm1jbGFuZyBpbXBsZW1lbnRzIHRoaXMgbGF0ZXIgb24uDQoN Cj4gDQo+ID4gPiBbLi4uXQ0KPiA+ID4gDQo+ID4gPiA+ID4gWW91IHdvdWxkIHN0aWxsIG5lZWQg LS10YXJnZXQ9Li4uLiBidXQgdGhhdCdzIHNob3VsZCBkZXBlbmQNCj4gPiA+ID4gPiBvbg0KPiA+ ID4gPiA+ICRDUk9TU19DT01QSUxFDQo+ID4gPiA+ID4gKG9yIGFueSBvdGhlciBuYW1lIHdlIGRl Y2lkZSkuDQo+ID4gPiA+IA0KPiA+ID4gPiBZb3UncmUgcmlnaHQsIEkgZm9yZ290IHRvIG1lbnRp b24gLSBoYXZlIG5vdCB5ZXQgYnVpbHQgZm9yDQo+ID4gPiA+IEFybTMyIHNvDQo+ID4gPiA+IHRo aXMgaXMgbm90IGNoZWNrZWQuIEJ1dCwgYWNjb3JkaW5nIHRvIG1hbnVhbDoNCj4gPiA+ID4gDQo+ ID4gPiA+IEZvciB0YXJnZXRzIGluIEFBcmNoMzIgc3RhdGUgKC0tdGFyZ2V0PWFybS1hcm0tbm9u ZS1lYWJpKSwNCj4gPiA+ID4gdGhlcmUgaXMNCj4gPiA+ID4gbm8NCj4gPiA+ID4gZGVmYXVsdC4g WW91IG11c3Qgc3BlY2lmeSBlaXRoZXIgLW1hcmNoICh0byB0YXJnZXQgYW4NCj4gPiA+ID4gYXJj aGl0ZWN0dXJlKQ0KPiA+ID4gPiBvcg0KPiA+ID4gPiAtbWNwdSAodG8gdGFyZ2V0IGEgcHJvY2Vz c29yKQ0KPiA+ID4gDQo+ID4gPiBXZSBhY3R1YWxseSBwYXNzIC1tY3B1PWNvcnRleC1hMTUgaW4g YXJjaC9hcm0vUnVsZXMubWsgKEkgYWRtaXQNCj4gPiA+IHRoYXQNCj4gPiA+IGNvcnRleC1hMTUN Cj4gPiA+IGlzIHByb2JhYmx5IG5vdCB0aGUgbW9zdCBzdWl0YWJsZSkuIElmIHNvbWUgb3B0aW9u cyBzaG91bGQNCj4gPiA+IGFwcGxpZWQgdG8NCj4gPiA+IHRoZSB0b29scw0KPiA+ID4gYXMgd2Vs bCwgdGhlbiB3ZSBuZWVkIHRvIG1pZ3JhdGVkIHRoZW0gdG8gY29uZmlnL2FybTMyLm1rLg0KPiA+ IA0KPiA+IFllcywgSSBkbyBub3QgdGhpbmsgd2Ugc2hhbGwgc3BlY2lmeSB0aGUgcGFydGljdWxh ciBDUFUsIGJldHRlciB0bw0KPiA+IGhhdmUNCj4gPiBsb3dlc3Qgc3VwcG9ydGVkIGFyY2hpdGVj dHVyZSBkZWZpbmVkLg0KPiANCj4gSSB2YWd1ZWx5IHJlbWVtYmVyZWQgdG8gdHJ5IHRvIHJlcGxh Y2UgY29ydGV4LWExNSB3aXRoIHNvbWV0aGluZyBlbHNlDQo+IGluIA0KPiB0aGUgcGFzdC4gSUlS QywgdGhlIHByb2JsZW0gd2FzIGFybXY3LWEgZG9lcyBub3QgbmVjZXNzYXJpbHkgaW5jbHVkZSAN Cj4gdmlydCBleHRlbnNpb24uDQo+IA0KPiBUcnlpbmcgYWdhaW4gdG9kYXkgd2l0aCAtbWFyY2g9 YXJtdjctYSBpbnN0ZWFkIG9mIC1tY3B1PWNvcnRleC1hMTUsDQo+IEkgDQo+IGNhbiBzZWUgYnVp bGQgZXJyb3Igd2hlbiB1c2luZyBMaW5hcm8gR0NDIDYuMS0yMDE2LjgwOg0KPiANCj4ge3N0YW5k YXJkIGlucHV0fTogQXNzZW1ibGVyIG1lc3NhZ2VzOg0KPiB7c3RhbmRhcmQgaW5wdXR9OjI4NTog RXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0DQo+IGBzbWMgDQo+ICMw JyBpbiBBUk0gbW9kZQ0KPiB7c3RhbmRhcmQgaW5wdXR9OjQyOTogRXJyb3I6IHNlbGVjdGVkIHBy b2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0DQo+IGBzbWMgDQo+ICMwJyBpbiBBUk0gbW9kZQ0KPiB7 c3RhbmRhcmQgaW5wdXR9OjQ2MjogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBz dXBwb3J0DQo+IGBzbWMgDQo+ICMwJyBpbiBBUk0gbW9kZQ0KPiB7c3RhbmRhcmQgaW5wdXR9OjUz OTogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0DQo+IGBzbWMgDQo+ ICMwJyBpbiBBUk0gbW9kZQ0KPiAvaG9tZS9qdWxpZW5nL3dvcmtzL3hlbi94ZW4vUnVsZXMubWs6 MTk2OiByZWNpcGUgZm9yIHRhcmdldCANCj4gJ2NwdWVycmF0YS5vJyBmYWlsZWQNCj4gbWFrZVsz XTogKioqIFtjcHVlcnJhdGEub10gRXJyb3IgMQ0KPiANCj4gSSB0aGluayB0aGlzIG9uZSBpcyBz b2x2YWJsZSBieSBzcGVjaWZ5aW5nIHRoZSBzZWN1cmUgZXh0ZW5zaW9uLiBCdXQNCj4gaXQgDQo+ IG1pZ2h0IGJlIHBvc3NpYmxlIHRoZXJlIGFyZSBvdGhlciBpc3N1ZXMgd2l0aCBvbGRlciBjb21w aWxlciAoaS5lIDQuNg0KPiAmIGNvKS4NCj4gDQoNCkNvdWxkIGJlLiBXZSBtaWdodCBuZWVkIGRv IGRvIGF1dG9tYXRpYyBjaGVja3Mgd2l0aCBvbGQgY29tcGlsZXJzDQoNCj4gPiA+ID4gWzEwMDA2 N18wNjEyXzAwX2VuIHBhZ2UgMS04Ml0NCj4gPiA+ID4gDQo+ID4gPiA+ID4gPiArZWxzZQ0KPiA+ ID4gPiA+ID4gK0NGTEFHUyArPSAtbWFybSAjIC1tYXJjaD0gLW1jcHU9DQo+ID4gPiA+ID4gPiAg ICAgIyBVc2Ugb25seSBpZiBjYWxsaW5nICQoTEQpIGRpcmVjdGx5Lg0KPiA+ID4gPiA+ID4gICAg IExERkxBR1NfRElSRUNUICs9IC1FTA0KPiA+ID4gPiA+ID4gK2VuZGlmDQo+ID4gPiA+ID4gPiAg ICAgDQo+ID4gPiA+ID4gPiAgICAgSU9FTVVfQ1BVX0FSQ0ggPz0gYXJtDQo+ID4gPiA+ID4gPiBk aWZmIC0tZ2l0IGEvY29uZmlnL2FybTY0Lm1rIGIvY29uZmlnL2FybTY0Lm1rDQo+ID4gPiA+ID4g PiBpbmRleCBhYTQ1NzcyYjYxLi40NmIyMDNkMzg0IDEwMDY0NA0KPiA+ID4gPiA+ID4gLS0tIGEv Y29uZmlnL2FybTY0Lm1rDQo+ID4gPiA+ID4gPiArKysgYi9jb25maWcvYXJtNjQubWsNCj4gPiA+ ID4gPiA+IEBAIC00LDEwICs0LDE0IEBAIENPTkZJR19BUk1fJChYRU5fT1MpIDo9IHkNCj4gPiA+ ID4gPiA+ICAgICANCj4gPiA+ID4gPiA+ICAgICBDT05GSUdfWEVOX0lOU1RBTExfU1VGRklYIDo9 DQo+ID4gPiA+ID4gPiAgICAgDQo+ID4gPiA+ID4gPiAraWZlcSAoJChhcm1kcykseSkNCj4gPiA+ ID4gPiA+ICsjIFZFIG5lZWRlZA0KPiA+ID4gPiA+ID4gK0NGTEFHUyArPSAtLXRhcmdldD1hYXJj aDY0LWFybS1ub25lLWVhYmkgLW1hcmNoPWFybXY4LjEtDQo+ID4gPiA+ID4gPiBhK25vZnArbm9z aW1kDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gU2FtZSByZW1hcmsgZm9yIC0tdGFyZ2V0Lg0KPiA+ ID4gPiA+IEFsc28sIC1tYXJjaD1hcm12OC4xIGxvb2tzIHdyb25nIHRvIG1lIGJlY2F1c2UgdGhp cyBtYXkNCj4gPiA+ID4gPiBnZW5lcmF0ZQ0KPiA+ID4gPiA+IGNvZGUNCj4gPiA+ID4gPiB0aGF0 IHdpbGwNCj4gPiA+ID4gPiBub3Qgd29yayBvbiBhcm12OC4wIHBsYXRmb3JtLg0KPiA+ID4gPiA+ IA0KPiA+ID4gPiANCj4gPiA+ID4gSWYgSSBkb24ndCBzcGVjaWZ5IC1tYXJjaCB0aGlzIHdheSwg aXQgd2lsbCBidWlsdDoNCj4gPiA+ID4gICAgMSkgd2l0aG91dCBzb21lIHJlZ2lzdGVycywgZS5n LiBUVExCMF9FTDIgc3VwcG9ydCAoYnVpbGQNCj4gPiA+ID4gZmFpbHMpDQo+ID4gPiANCj4gPiA+ IEkgZ3Vlc3MgeW91IG1lYW4gVFRCUjBfRUwyIGhlcmUuDQo+ID4gPiANCj4gPiA+IFhlbiBpcyBm dWxseSBBcm12OC4wIGNvbXBsaWFudC4gU28gaWYgeW91IGNhbid0IGNvbXBpbGUgWGVuIHdpdGgN Cj4gPiA+IC1tYXJjaD1hcm12OC1hDQo+ID4gPiB0aGVuIHRoaXMgbmVlZHMgdG8gYmUgaW52ZXN0 aWdhdGVkIGFuZCBiZSByZXBvcnRlZC4NCj4gPiA+IA0KPiA+ID4gTG9va2luZyBhdCB0aGUgZXJy b3IgdGhyb3duOg0KPiA+ID4gDQo+ID4gPiBhcm02NC9oZWFkLlM6Mzk5OjEzOiBlcnJvcjogZXhw ZWN0ZWQgd3JpdGFibGUgc3lzdGVtIHJlZ2lzdGVyIG9yDQo+ID4gPiBwc3RhdGUNCj4gPiA+ICAg ICAgICAgICBtc3IgVFRCUjBfRUwyLCB4NA0KPiA+ID4gDQo+ID4gPiBUaGlzIGlzIGxpa2VseSBh IGNvbXBpbGVyIGJ1Zy4NCj4gPiA+IA0KPiA+IA0KPiA+IEFjdHVhbGx5IEkgZG8gbm90IGtub3cg d2hhdCBpcyB0aGUgcHJvcGVyIHdheSB0byByZXBvcnQgc3VjaCBpc3N1ZXMNCj4gPiBhbmQNCj4g PiBnZXQgdGhlbSBmaXhlZC4gTXkgcG9zdCBvbiBBUk0gZm9ydW0gcmVnYXJkaW5nIGxpbmtlciBm YWlsdWUgaGFzIG5vDQo+ID4gY29tbWVudHMvcmVhY3Rpb25zLCB3aGljaCBtZWFucyBpdCBtYXkg bm90IGJlIHRoZSBiZXN0IHdheSBmb3INCj4gPiByZXBvcnRpbmcuIFdvdWxkIGl0IGJlIHBvc3Np YmxlIGZvciB5b3UgdG8gY2hlY2sgaWYgd2UgY2FuIGdldCBzb21lDQo+ID4gYXR0ZW50aW9uIGZy b20gQVJNIENvbXBpbGVyIGZvbGtzPw0KPiANCj4gSSB3aWxsIGhhdmUgYSBjaGF0IGFuZCBsZXQg eW91IGtub3cuDQo+IA0KPiA+ID4gPiAgICAyKSB3aXRoIHZmcCBhbmQgc2ltZCBlbmFibGVkIChs aW5raW5nIGZhaWxzKQ0KPiA+ID4gPiANCj4gPiA+ID4gQWNjb3JkaW5nIHRvIEFybSBjb21waWxl ciBtYW51YWw6DQo+ID4gPiA+IC0tLQ0KPiA+ID4gPiBGb3IgdGFyZ2V0cyBpbiBBQXJjaDY0IHN0 YXRlICgtLXRhcmdldD1hYXJjaDY0LWFybS1ub25lLWVhYmkpLA0KPiA+ID4gPiB1bmxlc3MNCj4g PiA+ID4geW91IHRhcmdldCBhIHBhcnRpY3VsYXIgcHJvY2Vzc29yIHVzaW5nIC1tY3B1IG9yIGEg cGFydGljdWxhcg0KPiA+ID4gPiBhcmNoaXRlY3R1cmUgdXNpbmcgLW1hcmNoLCB0aGUgY29tcGls ZXIgZGVmYXVsdHMgdG8NCj4gPiA+ID4gLW1hcmNoPWFybXY4LWEsDQo+ID4gPiA+IGdlbmVyYXRp bmcgZ2VuZXJpYyBjb2RlIGZvciBBcm12OOKAkUEgaW4gQUFyY2g2NCBzdGF0ZS4NCj4gPiA+ID4g WzEwMDA2N18wNjEyXzAwX2VuIHBhZ2UgMS04Ml0NCj4gPiA+ID4gLS0tDQo+ID4gPiA+IFlvdSBj YW4gcHJldmVudCB0aGUgdXNlIG9mIGZsb2F0aW5nLXBvaW50IGluc3RydWN0aW9ucyBvcg0KPiA+ ID4gPiBmbG9hdGluZy0NCj4gPiA+ID4gcG9pbnQgcmVnaXN0ZXJzIGZvciB0YXJnZXRzIGluIEFB cmNoNjQgc3RhdGUgd2l0aCB0aGUNCj4gPiA+ID4gLW1jcHU9bmFtZStub2ZwK25vc2ltZCBvcHRp b24uIFN1YnNlcXVlbnQgdXNlIG9mIGZsb2F0aW5nLXBvaW50DQo+ID4gPiA+IGRhdGENCj4gPiA+ ID4gdHlwZXMgaW4gdGhpcyBtb2RlIGlzIHVuc3VwcG9ydGVkLg0KPiA+ID4gPiBbMTAwMDY3XzA2 MTJfMDBfZW4gcGFnZSAxLTkzXQ0KPiA+ID4gPiAtLS0NCj4gPiA+IA0KPiA+ID4gSSBhc3N1bWUg dGhhdCAtbWdlbmVyYWwtcmVncy1vbmx5IGRvZXMgbm90IHdvcmsgaW4geW91ciBjYXNlPw0KPiA+ IA0KPiA+IE5vcGUgOlwNCj4gDQo+IEl0IHdvdWxkIGJlIGludGVyZXN0aW5nIHRvIGtub3cgd2hl dGhlciAtbWFyY2g9YXJtdjgtYS4uLiB3b3JrcyBvbg0KPiBhbGwgDQo+IEdDQyB2ZXJzaW9uIHdl IHN1cHBvcnQuDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiANCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1h bi9saXN0aW5mby94ZW4tZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5729DC10F03 for ; Thu, 25 Apr 2019 03:32:25 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 12422214AE for ; Thu, 25 Apr 2019 03:32:25 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=epam.com header.i=@epam.com header.b="XgUKr+ir" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 12422214AE Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=epam.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hJV7H-0007QM-9N; Thu, 25 Apr 2019 03:32:07 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hJV7F-0007QF-PE for xen-devel@lists.xenproject.org; Thu, 25 Apr 2019 03:32:06 +0000 X-Inumbo-ID: b01a86e8-670a-11e9-92d7-bc764e045a96 Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown [2a01:111:f400:fe05::615]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id b01a86e8-670a-11e9-92d7-bc764e045a96; Thu, 25 Apr 2019 03:32:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7orQ6JIDK0fCJ9BjaumhWWXRQWyt65gP+8PBN+vw6tk=; b=XgUKr+irRM2ugNv2i5dJJXL/Q7tFkmHgWtVuUUTTI49hbKs0bBgX7XERXVnGEecSIe2hJ6WLJVoXJTgY/eVwMO/R3KCodYs9aMoSxytPQzHgucfr227STmuKZzF/nwYrgjG/+3yYsVFFgIgvll7ZkkYFEV2/Yoaph7gINzfEZm7hyG7XWCchY67dzUfnGUlzc3LezbtNjbSt853y7PzHsj5hkTQm1h28m46FgcGG1pN9u3bmQg8j4VaSntmu2orx67hVcfD5u4ZEKInTB8Np1BHYWF58GE0hCFyb8x1+0tb+CWF6RufyWEnnRPHulEjrXZlsyeZHVVFWx/iLfNew8g== Received: from DB6PR03MB2968.eurprd03.prod.outlook.com (10.165.162.21) by DB6PR03MB2983.eurprd03.prod.outlook.com (10.165.162.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1835.12; Thu, 25 Apr 2019 03:31:58 +0000 Received: from DB6PR03MB2968.eurprd03.prod.outlook.com ([fe80::5179:59a:22eb:c6f3]) by DB6PR03MB2968.eurprd03.prod.outlook.com ([fe80::5179:59a:22eb:c6f3%7]) with mapi id 15.20.1835.010; Thu, 25 Apr 2019 03:31:58 +0000 From: Artem Mygaiev To: "sstabellini@kernel.org" , "roger.pau@citrix.com" , "julien.grall@arm.com" Thread-Topic: [PATCH 00/12] xen/arm: Add support to build with clang Thread-Index: AQHU5M1JOMPdtELhVUe6/vVXmu7jXKYg6LsAgAF9wACAHRusAIAAuAUAgAGKnYCAABjJgIAACMGAgAB6ZYCAB4m5AIACD1UAgABre4A= Date: Thu, 25 Apr 2019 03:31:58 +0000 Message-ID: <4d65df155cd984d9c0cdfbcc0b4c0a7bfeea24b0.camel@epam.com> References: <20190327184531.30986-1-julien.grall@arm.com> <970b4dcfb4e3c04bc9502c7656caa61d2f8c0677.camel@epam.com> <8210e96d-c7cd-384e-3277-21fdbfc32105@arm.com> <34d8cf3f-e262-e3ab-b9e3-3c0dcbd75e37@arm.com> <92811c0c44411ab28eefce1aa7028bf0c426ea80.camel@epam.com> <91a841b7-424a-79a3-b551-15587bf92ed3@arm.com> <18f9d557324a69437cd062aeced21e6b4759a968.camel@epam.com> <57804820901cc5e0f70e2710130814cd29432cfc.camel@epam.com> <92771f39-6dc3-ddcc-9e94-1466c028a03d@arm.com> In-Reply-To: <92771f39-6dc3-ddcc-9e94-1466c028a03d@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Artem_Mygaiev@epam.com; x-originating-ip: [217.76.202.68] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 345806c9-0209-4b7b-34c6-08d6c92e9276 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(2017052603328)(7193020); SRVR:DB6PR03MB2983; x-ms-traffictypediagnostic: DB6PR03MB2983: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: x-forefront-prvs: 0018A2705B x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(136003)(366004)(346002)(376002)(396003)(189003)(199004)(54094003)(53754006)(478600001)(966005)(6512007)(53936002)(7416002)(6306002)(53946003)(68736007)(36756003)(72206003)(6116002)(3846002)(8936002)(2906002)(8676002)(81156014)(81166006)(7736002)(305945005)(256004)(14444005)(2501003)(6246003)(25786009)(5660300002)(6436002)(54906003)(110136005)(6506007)(6486002)(53546011)(30864003)(76176011)(86362001)(4326008)(66066001)(80792005)(102836004)(97736004)(93886005)(26005)(186003)(2201001)(229853002)(2616005)(91956017)(476003)(73956011)(486006)(118296001)(99286004)(76116006)(66446008)(64756008)(66476007)(71190400001)(71200400001)(66946007)(14454004)(316002)(446003)(66556008)(11346002); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR03MB2983; H:DB6PR03MB2968.eurprd03.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: epam.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: NtGjQqQ2O8U7TtxsRVDCRFAjB+y/sGVrdE3yr8nEWDD19dO1TFH2+ytC1qaUsoFW0BpBN/mrnE8ljmoZV14mo5kIrS1uxNEDjvAqR3CZqlU9yhu79BI0/dYZ+XS3H1UD+WsVFohTrxfu8libyvSlpynDZ35YUdBsmVLoGDjye/HYX5ngHVrTNdVZV4ljPV7YDkJNWZzZG2kuiIGa8JCHbcBPm2PT9WNVFra3eJTaZroO6eJdXMu6KdeMVmauoXY1+JOmv+dM84ZB/DzOP5bxq1V5iIZKzxXvSPQA1fePnhcubVSXhaFcQjoZ1aih2XtKnEobV+EMewKMMZM9eqBJJ6LL18e+xEtYbks4oV4vPi4KY4YQqOmwMnsloMva9Pzl1W9LDBqsmSqdk1G2a8IqOMZcnR25a6s1lS1JnOswdqw= Content-ID: MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-Network-Message-Id: 345806c9-0209-4b7b-34c6-08d6c92e9276 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2019 03:31:58.0631 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR03MB2983 Subject: Re: [Xen-devel] [PATCH 00/12] xen/arm: Add support to build with clang X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: "tamas@tklengyel.com" , "wei.liu2@citrix.com" , "rcojocaru@bitdefender.com" , "konrad.wilk@oracle.com" , "George.Dunlap@eu.citrix.com" , "andrew.cooper3@citrix.com" , "ian.jackson@eu.citrix.com" , "tim@xen.org" , Oleksandr Tyshchenko , "jbeulich@suse.com" , "xen-devel@lists.xenproject.org" , Andrii Anisov Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Message-ID: <20190425033158.vsjA_B9M5p6S999vxG2xkbBxi4nQFxvNGiza6EKcTxU@z> SGVsbG8gSnVsaWVuDQoNCk9uIFdlZCwgMjAxOS0wNC0yNCBhdCAyMjowNyArMDEwMCwgSnVsaWVu IEdyYWxsIHdyb3RlOg0KPiBIaSBBcnRlbSwNCj4gDQo+IE9uIDQvMjMvMTkgMjozOSBQTSwgQXJ0 ZW0gTXlnYWlldiB3cm90ZToNCj4gPiBIZWxsbyBKdWxpZW4sIFJvZ2VyDQo+ID4gDQo+ID4gT24g VGh1LCAyMDE5LTA0LTE4IGF0IDE5OjMzICswMTAwLCBKdWxpZW4gR3JhbGwgd3JvdGU6DQo+ID4g PiAoKyBSb2dlcikNCj4gPiA+IA0KPiA+ID4gT24gMTgvMDQvMjAxOSAxMjoxNSwgQXJ0ZW0gTXln YWlldiB3cm90ZToNCj4gPiA+ID4gSGkgSnVsaWVuDQo+ID4gPiA+IA0KPiA+ID4gPiBPbiBUaHUs IDIwMTktMDQtMTggYXQgMTE6NDMgKzAxMDAsIEp1bGllbiBHcmFsbCB3cm90ZToNCj4gPiA+ID4g PiBPbiAxOC8wNC8yMDE5IDEwOjE1LCBBcnRlbSBNeWdhaWV2IHdyb3RlOg0KPiA+ID4gPiA+ID4g SGVsbG8gSnVsaWVuLCBTdGVmYW5vDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gSGkgQXJ0ZW0sDQo+ ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiBPbiBXZWQsIDIwMTktMDQtMTcgYXQgMTA6NDIgKzAxMDAs IEp1bGllbiBHcmFsbCB3cm90ZToNCj4gPiA+ID4gPiA+ID4gSGksDQo+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiBPbiAxNi8wNC8yMDE5IDIzOjQzLCBTdGVmYW5vIFN0YWJlbGxpbmkgd3Jv dGU6DQo+ID4gPiA+ID4gPiA+ID4gT24gRnJpLCAyOSBNYXIgMjAxOSwgSnVsaWVuIEdyYWxsIHdy b3RlOg0KPiA+ID4gPiA+ID4gPiA+ID4gT24gMjgvMDMvMjAxOSAxMToyNywgQXJ0ZW0gTXlnYWll diB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4gSGkgSnVsaWVuLA0KPiA+ID4gPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiBIaSBBcnRlbSwNCj4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ ID4gPiA+ID4gPiA+ID4gPiBPbiBXZWQsIDIwMTktMDMtMjcgYXQgMTg6NDUgKzAwMDAsIEp1bGll biBHcmFsbA0KPiA+ID4gPiA+ID4gPiA+ID4gPiB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPiA+ID4g PiBIaSBhbGwsDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gPiA+ID4g VGhpcyBzZXJpZXMgYWRkcyBzdXBwb3J0IHRvIGJ1aWxkIFhlbiBBcm0gd2l0aA0KPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IGNsYW5nLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IFRoaXMgc2VyaWVzIHdh cw0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHRlc3RlZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHdp dGggY2xhbmcgOC4wLg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+IE5vdGUgdGhhdCBJIG9ubHkgZGlkIGJ1aWxkIGZvciBhcm02NC4gSSBzdGlsbA0KPiA+ID4g PiA+ID4gPiA+ID4gPiA+IG5lZWQgdG8NCj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBsb29rIGF0IHRo ZSBhcm0zMg0KPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGJ1aWxkLg0KPiA+ID4gPiA+ID4gPiA+ID4g PiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gPiA+ID4gSSB3b25kZXIg aWYgeW91IGhhdmUgdGltZSB0byB0cnkgdGhlIHNlcmllcyB3aXRoDQo+ID4gPiA+ID4gPiA+ID4g PiA+IEFybQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBDb21waWxlciA2PyBJIGFtDQo+ID4gPiA+ID4g PiA+ID4gPiA+IGFza2luZyBiZWNhdXNlIEFGQUlLIGl0IGlzIGJhc2VkIG9uIGNsYW5nL2xsdm0g WzFdDQo+ID4gPiA+ID4gPiA+ID4gPiA+IGFuZA0KPiA+ID4gPiA+ID4gPiA+ID4gPiB0aGVyZSdz IGENCj4gPiA+ID4gPiA+ID4gPiA+ID4gc2FmZXR5LWNvbXBsaWFudCB2ZXJzaW9uIG9mIGl0IGNl cnRpZmllZCBieSBUVVYNCj4gPiA+ID4gPiA+ID4gPiA+ID4gWzJdLiBJDQo+ID4gPiA+ID4gPiA+ ID4gPiA+IGRvbid0IGhhdmUgYQ0KPiA+ID4gPiA+ID4gPiA+ID4gPiBsaWNlbnNlIHlldCBzbyBj YW5ub3QgdHJ5IGl0IG15c2VsZiBidXQgbWF5YmUgeW91DQo+ID4gPiA+ID4gPiA+ID4gPiA+IGhh dmUNCj4gPiA+ID4gPiA+ID4gPiA+ID4gYWNjZXNzLg0KPiA+ID4gPiA+ID4gPiA+ID4gDQo+ID4g PiA+ID4gPiA+ID4gPiBJIGdhdmUgYSBxdWljayB0cnkgdG8gdGhlIEFybSBDb21waWxlci4gSSBo YWQgdG8gaGFjaw0KPiA+ID4gPiA+ID4gPiA+ID4gYQ0KPiA+ID4gPiA+ID4gPiA+ID4gYml0DQo+ ID4gPiA+ID4gPiA+ID4gPiBjb25maWcvU3RkR05VLm1rDQo+ID4gPiA+ID4gPiA+ID4gPiB0byBw YXNzIGFybWNsYW5nIGFuZCB0aGUgYXBwcm9wcmlhdGUgdGFyZ2V0IG9wdGlvbi4NCj4gPiA+ID4g PiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+ID4gSSBhbHNvIGhhZCBhIGxpbmtpbmcgaXNzdWUg YXQgdGhlIGVuZCB3aGVyZQ0KPiA+ID4gPiA+ID4gPiA+ID4gX18yc25wcmludGYNCj4gPiA+ID4g PiA+ID4gPiA+IHdhcw0KPiA+ID4gPiA+ID4gPiA+ID4gbm90IGZvdW5kLiBJdA0KPiA+ID4gPiA+ ID4gPiA+ID4gc2VlbXMgdGhlIGNvbXBpbGVyIHJlcGxhY2Ugc25wcmludGYgd2l0aCBfXzJzbnBy aW50ZiwNCj4gPiA+ID4gPiA+ID4gPiA+IEkNCj4gPiA+ID4gPiA+ID4gPiA+IGhhdmVuJ3QgZmln dXJlZCBvdXQNCj4gPiA+ID4gPiA+ID4gPiA+IHdoeSB5ZXQuDQo+ID4gPiA+ID4gPiA+ID4gDQo+ ID4gPiA+ID4gPiA+ID4gQnV0IGFmdGVyIHRoZXNlIGNoYW5nZXMsIGRvZXMgaXQgd29yaz8NCj4g PiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IEkgaGF2ZW4ndCB0cmllZCB0byBmaXggdGhlIGxp bmtpbmcgaXNzdWVzLiBJIG9ubHkgZ2F2ZSBhDQo+ID4gPiA+ID4gPiA+IHF1aWNrDQo+ID4gPiA+ ID4gPiA+IHRyeSBiZWNhdXNlIEFydGVtDQo+ID4gPiA+ID4gPiA+IGFza2VkLiBJIGhhdmUgbm8g cGxhbiBhdCB0aGUgbW9tZW50IHRvIGdvIGZ1cnRoZXIgdGhhbg0KPiA+ID4gPiA+ID4gPiB0aGF0 DQo+ID4gPiA+ID4gPiA+IGZvcg0KPiA+ID4gPiA+ID4gPiBub3cuDQo+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiBQYXRjaGVzIGFyZSB3ZWxjb21lZCB0byBhZGQgc3VwcG9ydCBmb3IgYXJt Y2xhbmcuDQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiBJIGhhdmUg aW1wbGVtZW50ZWQgYSBidW5jaCBvZiBIQUNLcyBbMV0gc28gY2FuIGJ1aWxkIFhlbg0KPiA+ID4g PiA+ID4gbWFzdGVyDQo+ID4gPiA+ID4gPiB3aXRoDQo+ID4gPiA+ID4gPiBhcm1jbGFuZyA2LjEy LiBOb3QgZXZlbiAic21va2UiLXRlc3RlZCwganVzdCB0cnlpbmcgdG8NCj4gPiA+ID4gPiA+IGlk ZW50aWZ5DQo+ID4gPiA+ID4gPiBtaXNzaW5nDQo+ID4gPiA+ID4gPiBwYXJhbWV0ZXJzIGFuZCBw cm9wZXIgbGlua2VyIGNvbmZpZ3VyYXRpb24uDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gVGhhbmsg eW91IGZvciBsb29raW5nIGF0IGl0LiBTb21lIGNvbW1lbnRzIGJlbG93Lg0KPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gTm90IHlldCBmaXhlZCBzZWN0aW9uIHBsYWNlbWVudCwgbG90cyBvZiB3YXJu aW5ncyBmcm9tDQo+ID4gPiA+ID4gPiBsaW5rZXINCj4gPiA+ID4gPiA+IGxpa2U6DQo+ID4gPiA+ ID4gPiBXYXJuaW5nOiBMNjE3MFc6IE1hcHBpbmcgc3ltYm9sICM0MCAnJHguMjAnIGluDQo+ID4g PiA+ID4gPiAuYWx0aW5zdHJfcmVwbGFjZW1lbnQobnMxNjU1MC5vOjQyKSBpZGVudGlmaWVzIGNv ZGUsIGJ1dCBpcw0KPiA+ID4gPiA+ID4gaW4NCj4gPiA+ID4gPiA+IGENCj4gPiA+ID4gPiA+IHNl Y3Rpb24gbm90IG1hcmtlZCBhcyBleGVjdXRhYmxlLg0KPiA+ID4gPiA+IA0KPiA+ID4gPiA+IElu c3RydWN0aW9uIGluIHRoZSBzZWN0aW9ucyAuYWx0aW5zdHJfcmVwbGFjZW1lbnQgYXJlIG5ldmVy DQo+ID4gPiA+ID4gbWVhbnQNCj4gPiA+ID4gPiB0bw0KPiA+ID4gPiA+IGJlIGV4ZWN1dGVkLg0K PiA+ID4gPiA+IA0KPiA+ID4gPiA+IEkgZ3Vlc3MgdGhpcyBpcyBjb21pbmcgZnJvbSBhcm1saW5r PyBBbnkgcGFydGljdWxhciByZWFzb24gdG8NCj4gPiA+ID4gPiB1c2UNCj4gPiA+ID4gPiBhcm1s aW5rIGFuZA0KPiA+ID4gPiA+IG5vdCBsZCBhcyB3ZSBkbyBvbiBjbGFuZz8NCj4gPiA+ID4gPiAN Cj4gPiA+ID4gDQo+ID4gPiA+IFllcywgYXJtbGluayBoYXMgYSAiU2FmZXR5LWNlcnRpZmllZCIg dmVyc2lvbiBvZiBpdCwgd2hpbGUgbGQNCj4gPiA+ID4gZG9lc24ndCwNCj4gPiA+ID4gdW5mb3J0 dW5hdGVseSA6KA0KPiA+ID4gDQo+ID4gPiBJIGFtIG5vdCBzdXJlIGlmIGFueW9uZSB0cmllZCB0 byBidWlsZCBYZW4gb3RoZXIgdGhhbiB3aXRoIGxkIHNvDQo+ID4gPiBmYXIuDQo+ID4gPiBJIGhh dmUNCj4gPiA+IENDZWQgUm9nZXIgd2hvIG1pZ2h0IGhhdmUgYSBjbHVlIHdoZXRoZXIgdGhlcmUg YXJlIG90aGVyIGJsb2NrZXIuDQo+ID4gPiANCj4gPiANCj4gPiBMb29raW5nIGZvcndhcmQgdG8g aGVhcmluZyBmcm9tIFJvZ2VyLg0KPiA+IA0KPiA+ID4gPiBUaG91Z2ggSSBtdXN0IG1lbnRpb24g dGhhdCBJIGRvIG5vdCBoYXZlIGFjY2VzcyB0byBzYWZldHktDQo+ID4gPiA+IGNlcnRpZmllZA0K PiA+ID4gPiB2ZXJzaW9uIG9mIGFybSBjb21waWxlciBzdWl0ZSwgaXQgaXMgbm90IHB1YmxpYy4g VGh1cyBjaGVja2luZw0KPiA+ID4gPiBvbmx5DQo+ID4gPiA+IGFnYWluc3QgdGhlIDMwLWRheSB0 cmlhbCB2ZXJzaW9uIG9mIEFSTSBEUyAyMDE5LTAgd2hpY2ggaXMNCj4gPiA+ID4gc2hpcHBlZA0K PiA+ID4gPiB3aXRoDQo+ID4gPiA+IGNvbXBpbGVyIDYuMTINCj4gPiA+IA0KPiA+ID4gQW55IHN0 ZXAgdG93YXJkcyBhcm1jbGFuZyBpcyBnb29kIDopLiBXZSBjYW4gbG9vayBhdCB0aGUgc2FmZXR5 LQ0KPiA+ID4gY2VydGlmaWVkDQo+ID4gPiB2ZXJzaW9uIGFmdGVyd2FyZHMuDQo+ID4gPiANCj4g PiA+IEkgZG9uJ3Qgc2VlbSB0byBiZSBhYmxlIHRvIGxpbmsgd2l0aCB0aGlzIHBhdGNoIG9uIDYu MTI6DQo+ID4gPiANCj4gPiA+IExvYWRpbmcgb2JqZWN0IGJ1aWx0X2luLm8uDQo+ID4gPiBFcnJv cjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4ubyBhcyBpdHMgYXR0cmlidXRl cw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+IHdpdGggdGhlIGltYWdlIGF0 dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3aXRoIFNvZnRWRlAuDQo+ID4g PiBFcnJvcjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4ubyBhcyBpdHMgYXR0 cmlidXRlcw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+IHdpdGggdGhlIGlt YWdlIGF0dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3aXRoIFNvZnRWRlAu DQo+ID4gPiBFcnJvcjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4ubyBhcyBp dHMgYXR0cmlidXRlcw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+IHdpdGgg dGhlIGltYWdlIGF0dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3aXRoIFNv ZnRWRlAuDQo+ID4gPiBFcnJvcjogTDYyNDJFOiBDYW5ub3QgbGluayBvYmplY3QgYnVpbHRfaW4u byBhcyBpdHMgYXR0cmlidXRlcw0KPiA+ID4gYXJlDQo+ID4gPiBpbmNvbXBhdGlibGUNCj4gPiA+ IHdpdGggdGhlIGltYWdlIGF0dHJpYnV0ZXMuDQo+ID4gPiAgICAgIC4uLiBBNjQgY2xhc2hlcyB3 aXRoIFNvZnRWRlAuDQo+ID4gPiANCj4gPiA+IEkgYW0gdXNpbmcgdGhlIGZvbGxvd2luZyBjb21t YW5kIGxpbmUgdG8gYnVpbGQ6DQo+ID4gPiANCj4gPiA+IDQyc2g+IG1ha2UgQ1JPU1NfQ09NUElM RT1hYXJjaDY0LWxpbnV4LWdudS0gWEVOX1RBUkdFVF9BUkNIPWFybTY0DQo+ID4gPiBjbGFuZz15 DQo+ID4gPiBhcm1kcz15ICAtQyB+L3dvcmtzL3hlbi94ZW4gIFhFTl9DT05GSUdfRVhQRVJUPXkN Cj4gPiA+IA0KPiA+IA0KPiA+IEkgYW0gc3RpbGwgc3RydWdnbGluZyB3aXRoIGxpbmtlciBpbnRl cm5hbCBmYXVsdCwgbm90IHN1cmUgd2hhdA0KPiA+IGNoYW5nZWQNCj4gPiBpbiBteSBlbnZpcm9u bWVudCBzbyBpdCBzdGFydGVkIHRvIGZhaWwuDQo+ID4gDQo+ID4gPiA+ID4gPiBBbHNvIGFybWxp bmsgc29tZXRpbWVzIGZhaWxzIHdpdGggSW50ZXJuYWwgZmF1bHQ6DQo+ID4gPiA+ID4gPiBbMHhl ODFhNWE6NjEyMDAwMV0NCj4gPiA+ID4gPiANCj4gPiA+ID4gPiBEbyB5b3UgaGF2ZSBtb3JlIG91 dHB1dD8NCj4gPiA+ID4gDQo+ID4gPiA+IEp1c3Qgb3BlbmVkIGEgdGlja2V0IGluIEFybSBjb21t dW5pdHkgZm9ydW1zLCBzZWUgZGV0YWlscyB0aGVyZQ0KPiA+ID4gPiBpbmNsdWRpbmcgZnVsbCBi dWlsZCBsb2cgKGRvbnQgd2FudCB0byBzcGFtIG1sKQ0KPiA+ID4gPiBodHRwczovL2NvbW11bml0 eS5hcm0uY29tL2RldmVsb3Blci90b29scy1zb2Z0d2FyZS90b29scy9mL2FybS1jb21waWxlcnMt Zm9ydW0vMTI5ODkvbGlua2VyLWludGVybmFsLWZhdWx0LTB4ZTgxYTVhLTYxMjAwMDENCj4gPiA+ ID4gDQo+ID4gPiA+IA0KPiA+ID4gDQo+ID4gPiBUaGVyZSBhcmUgbm90aGluZyBpbnRlcmVzdGlu ZyBpbiBleGNlcHQgYSBmbG9vZCBvZiAiYXJtY2xhbmc6DQo+ID4gPiB3YXJuaW5nOiBZb3VyDQo+ ID4gPiBsaWNlbnNlIGZvciBmZWF0dXJlIGRzX3N1aXRlX2V2YWwgd2lsbCBleHBpcmUgaW4gMjkg ZGF5cyIuDQo+ID4gPiANCj4gPiA+IExldCBtZSBrbm93IGhvdyBpdCBnb2VzIGFuZCBJIGNhbiBo ZWxwIHRvIHJlc29sdmUgaXQuDQo+ID4gPiANCj4gPiANCj4gPiBUaGlzIGlzIGJlY2F1c2Ugb2Yg dGhlICJmcmVlIiBldmFsdWF0aW9uIGxpY2Vuc2UgSSBoYXZlLCBwcm9iYWJseQ0KPiA+IGNhbg0K PiA+IGJlIHNhZmVseSBpZ25vcmVkLg0KPiANCj4gSSBrbm93IDopLiBJIHdhcyBwb2ludGVkIG91 dCBob3cgdmVyYm9zZSBpdCB3YXMgY29tcGFyZSB0byB0aGUgbGFjaw0KPiBvZiANCj4gaW5mb3Jt YXRpb24gcmVnYXJkaW5nIHRoZSBpbnRlcm5hbCBmYXVsdC4NCj4gDQo+ID4gU28gZmFyIG5vIHJl YWN0aW9uIG9uIG15IGluaXRpYWwgcG9zdCBpbiBBcm0gQ29tbXVuaXR5Lg0KPiA+IA0KPiA+IFBs YXlpbmcgd2l0aCBsaW5rZXIgb3B0aW9ucyBJIGZvdW5kIHRoYXQgdGhlIGVycm9yIGlzIGNhdXNl ZCBieSB0aGUNCj4gPiB1c2UNCj4gPiBvZiAicGFydGlhbCBsaW5raW5nIG1vZGVsIiB3aGljaCBp cyBlbmFibGVkIGJ5IC0tcGFydGlhbCB0aGF0DQo+ID4gY29ycmVzcG9uZCB0byAtciBpbiBYZW4g TWFrZWZpbGVzLCB3aGljaCBpcyBub3QgZG9jdW1lbnRlZCBidXQgaGFzDQo+ID4gc2ltaWxhciBl ZmZlY3QuDQo+IA0KPiBEbyB5b3UgbWVhbiB0aGUgIkludGVybmFsIEZhdWx0Ij8NCj4gDQoNClll cy4NCg0KQnV0IEkga2luZGEgc29ydGVkIHRoaXMgaXNzdWUgb3V0LiBUaGF0IHdhcyBhIGR1bWIg bWlzdGFrZSAtIHdoaWxlDQp3b3JraW5nIEkgaGF2ZSBtb3ZlZCB0byBhIGRpZmZlcmVudCBjb2Rl IHRyZWUgdGhhdCBJIHVzZWQgdG8gY2hlY2sgZ2Nvdg0Kc28gaXQgaGFkIENPTkZJR19DT1ZFUkFH RSBlbmFibGVkLiBJIGdvdCByaWQgb2YgbGlua2VyIGludGVybmFsIGZhdWx0DQphZnRlciBkaXNh YmxpbmcgaXQgKHRob3VnaCBzdGlsbCBub3QgY2xlYXIgd2h5IHRoaXMgbGVkIHRvIGxpbmtlcg0K ZmFpbGluZyB3aXRoIC1yKQ0KDQpOb3cgSSBhbSBnZXR0aW5nIHRoZSBzYW1lIGxpbmtlciBlcnJv ciB5b3UgbWVudGlvbmVkLiBXaWxsIGNvbnRpbnVlDQp3b3JraW5nIG9uIHRoaXMgYWZ0ZXIgaG9s aWRheXMsIHN1c3BlY3QgdGhhdCBhcm1saW5rIG1pc3NpbmcgcHJvcGVyDQpjb25maWd1cmF0aW9u IGFuZCBwcm9iYWJseSBzZWN0aW9uIHBsYWNlbWVudC4NCg0KPiA+ID4gPiA+ID4gWzFdIERpZmYg YmVsb3cganVzdCBmb3IgcmVmZXJlbmNlIHdpdGggeGVuIG1hc3RlciArDQo+ID4gPiA+ID4gPiBK dWxpZW4ncw0KPiA+ID4gPiA+ID4gY2xhbmcNCj4gPiA+ID4gPiA+IHBhdGNoIHNlcmllcyBhcHBs aWVkDQo+ID4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gZGlmZiAtLWdp dCBhL0NvbmZpZy5tayBiL0NvbmZpZy5taw0KPiA+ID4gPiA+ID4gaW5kZXggNDE3MDM5ZDdmNi4u MGZjODQyOTNmOSAxMDA2NDQNCj4gPiA+ID4gPiA+IC0tLSBhL0NvbmZpZy5taw0KPiA+ID4gPiA+ ID4gKysrIGIvQ29uZmlnLm1rDQo+ID4gPiA+ID4gPiBAQCAtMjIxLDcgKzIyMSw5IEBAIENGTEFH UyArPSAtV2FsbCAtV3N0cmljdC1wcm90b3R5cGVzDQo+ID4gPiA+ID4gPiAgICAgDQo+ID4gPiA+ ID4gPiAgICAgJChjYWxsIGNjLW9wdGlvbi1hZGQsSE9TVENGTEFHUyxIT1NUQ0MsLVdkZWNsYXJh dGlvbi1PVyANCj4gPiA+ID4gPiA+IGFmdA0KPiA+ID4gPiA+ID4gc3RhdGVtZW50KQ0KPiA+ID4g PiA+ID4gICAgICQoY2FsbCBjYy1vcHRpb24tYWRkLENGTEFHUyxDQywtV2RlY2xhcmF0aW9uLWFm dGVyLQ0KPiA+ID4gPiA+ID4gc3RhdGVtZW50KQ0KPiA+ID4gPiA+ID4gK2lmbmVxICgkKGFybWRz KSx5KQ0KPiA+ID4gPiA+ID4gICAgICQoY2FsbCBjYy1vcHRpb24tYWRkLENGTEFHUyxDQywtV25v LXVudXNlZC1idXQtc2V0LQ0KPiA+ID4gPiA+ID4gdmFyaWFibGUpDQo+ID4gPiA+ID4gDQo+ID4g PiA+ID4gSSBkaWRuJ3QgbmVlZCB0aGlzIG9uIEFybSBDb21waWxlciA2LjExLiBDYW4geW91IHBy b3ZpZGUgdGhlDQo+ID4gPiA+ID4gbGlzdA0KPiA+ID4gPiA+IG9mDQo+ID4gPiA+ID4gZXJyb3Ig eW91DQo+ID4gPiA+ID4gZ2V0IGhlcmU/DQo+ID4gPiA+IA0KPiA+ID4gPiBlcnJvcjogdW5rbm93 biB3YXJuaW5nIG9wdGlvbiAnLVduby11bnVzZWQtYnV0LXNldC12YXJpYWJsZSc7DQo+ID4gPiA+ IGRpZA0KPiA+ID4gPiB5b3UNCj4gPiA+ID4gbWVhbiAnLVduby11bnVzZWQtY29uc3QtdmFyaWFi bGUnPyBbLVdlcnJvciwtV3Vua25vd24td2FybmluZy0NCj4gPiA+ID4gb3B0aW9uXQ0KPiA+ID4g DQo+ID4gPiBCdXQgY2Mtb3B0aW9uLWFkZCBzaG91bGQgb25seSBhZGQgdGhlIGZsYWcgaWYgaXQg aXMgc3VwcG9ydGVkIGJ5DQo+ID4gPiB0aGUNCj4gPiA+IGNvbXBpbGVyLg0KPiA+ID4gU28gaXQg aXMgbm90IHN1cHBvcnRlZCwgaG93IGNvbWUgdGhpcyBvcHRpb24gaXMgYWN0dWFsbHkgdXNlZCB0 bw0KPiA+ID4gY29tcGlsZT8NCj4gPiA+IA0KPiA+IA0KPiA+IEJlY2F1c2UgdGhlIGlkZWEgb2Yg c3VwcG9ydGVkIG9wdGlvbiBkZXRlY3Rpb24gcmVseSBvbiB0aGUgZmFjdA0KPiA+IHRoYXQNCj4g PiBjb21waWxlciB3aWxsIHRocm93IGFuIGVycm9yIG9yIHdhcm5pbmcgd2hlbiBtYWtlZmlsZSB0 cnkgYW5kIHVzZQ0KPiA+IHRoZQ0KPiA+IG9wdGlvbiBiZWluZyB0ZXN0ZWQsIGJ1dCBhcm1jbGFu ZyBkb2VzIG5vdCBldmVuIHRyeSB0byBjaGVjayB0aGF0DQo+ID4gYW5kDQo+ID4gZmFpbGluZyB3 aXRoDQo+ID4gICAgYXJtY2xhbmc6IGZhdGFsIGVycm9yOiBubyB0YXJnZXQgYXJjaGl0ZWN0dXJl IGdpdmVuOyB1c2UgLS0NCj4gPiB0YXJnZXQ9YXJtLWFybS1ub25lLWVhYmkgb3IgLS10YXJnZXQ9 YWFyY2g2NC1hcm0tbm9uZS1lYWJpDQo+ID4gYW5kIHRodXMgY2Mtb3B0aW9uLWFkZCBkb2VzIG5v dCBkZXRlY3QgdW5zdXBwb3J0ZWQgb3B0aW9ucw0KPiANCj4gSSB0aGluayBkZWZpbmluZyBDQyBh cyBiZWxvdyBzaG91bGQgZG8gdGhlIHRyaWNrOg0KPiANCj4gQ0MgOj0gYXJtY2xhbmcgLS10YXJn ZXQ9YWFyY2g2NC1hcm0tbm9uZS1lYWJpDQo+IA0KDQpBZ3JlZQ0KDQo+ID4gPiA+ID4gPiArZW5k aWYNCj4gPiA+ID4gPiA+ICAgICAkKGNhbGwgY2Mtb3B0aW9uLWFkZCxDRkxBR1MsQ0MsLVduby11 bnVzZWQtbG9jYWwtDQo+ID4gPiA+ID4gPiB0eXBlZGVmcykNCj4gPiA+ID4gPiA+ICAgICANCj4g PiA+ID4gPiA+ICAgICBMREZMQUdTICs9ICQoZm9yZWFjaCBpLCAkKEVYVFJBX0xJQiksIC1MJChp KSkNCj4gPiA+ID4gPiA+IEBAIC0yMzQsOSArMjM2LDE1IEBAIGVuZGlmDQo+ID4gPiA+ID4gPiAg ICAgQVBQRU5EX0xERkxBR1MgKz0gJChmb3JlYWNoIGksICQoQVBQRU5EX0xJQiksIC1MJChpKSkN Cj4gPiA+ID4gPiA+ICAgICBBUFBFTkRfQ0ZMQUdTICs9ICQoZm9yZWFjaCBpLCAkKEFQUEVORF9J TkNMVURFUyksDQo+ID4gPiA+ID4gPiAtSSQoaSkpDQo+ID4gPiA+ID4gPiAgICAgDQo+ID4gPiA+ ID4gPiAtRU1CRURERURfRVhUUkFfQ0ZMQUdTIDo9IC1ub3BpZSAtZm5vLXN0YWNrLXByb3RlY3Rv ciAtZm5vLQ0KPiA+ID4gPiA+ID4gc3RhY2stDQo+ID4gPiA+ID4gPiBwcm90ZWN0b3ItYWxsDQo+ ID4gPiA+ID4gPiArRU1CRURERURfRVhUUkFfQ0ZMQUdTIDo9IC1mbm8tc3RhY2stcHJvdGVjdG9y IC1mbm8tc3RhY2stDQo+ID4gPiA+ID4gPiBwcm90ZWN0b3ItYWxsDQo+ID4gPiA+ID4gPiAgICAg RU1CRURERURfRVhUUkFfQ0ZMQUdTICs9IC1mbm8tZXhjZXB0aW9ucw0KPiA+ID4gPiA+ID4gICAg IA0KPiA+ID4gPiA+ID4gK2lmZXEgKCQoYXJtZHMpLHkpDQo+ID4gPiA+ID4gPiArRU1CRURERURf RVhUUkFfQ0ZMQUdTICs9IC1mbm8tcm9waSAtZm5vLXJ3cGkNCj4gPiA+ID4gPiANCj4gPiA+ID4g PiBXaHkgZG8geW91IG5lZWQgdGhpcz8gSXMgaXQgYmVjYXVzZSBhcm1saW5rIGRvZXMgbm90IHN1 cHBvcnQNCj4gPiA+ID4gPiAtbm9waWU/DQo+ID4gPiA+IA0KPiA+ID4gPiBZZXMuIHJvcGkvcndw aSBhcmUgYWNjb3JkaW5nIHRvIEFybSBDb21waWxlciA2LjEyIHJlZmVyZW5jZQ0KPiA+ID4gPiBn dWlkZSwNCj4gPiA+ID4gc2VlDQo+ID4gPiA+IFsxMDAwNjdfMDYxMl8wMF9lbiAxLTU0XSBhbmQg WzEwMDA2N18wNjEyXzAwX2VuIDEtNTZdDQo+ID4gPiANCj4gPiA+IEhtbW0sIGJ1dCB0aGUgZG9j cyBzYXlzOg0KPiA+ID4gDQo+ID4gPiAiVGhpcyBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCBpbiBB QXJjaDY0IHN0YXRlIi4gU28gaXMgdGhhdCBhDQo+ID4gPiByZWFsbHkNCj4gPiA+IGdvb2QNCj4g PiA+IHJlcGxhY2VtZW50Pw0KPiA+ID4gDQo+ID4gDQo+ID4gWW91J3JlIHJpZ2h0LCByZWFkaW5n IGZ1cnRoZXIgaW4gdGhlIGRvY3VtZW50IHRoaXMgZG9lcyBub3Qgc2VlbSB0bw0KPiA+IGJlDQo+ ID4gYSB2YWxpZCByZXBsYWNlbWVudC4gTW9yZW92ZXIsIGl0IHNlZW1zIHRoYXQgd2UgZG9udCBu ZWVkIHRoaXMNCj4gPiBvcHRpb24NCj4gPiB3aXRoIGFybWNsYW5nIC0gYnkgZGVmYXVsdCBpdCBk b2VzIG5vdCBnZW5lcmF0ZSBwb3NpdGlvbi0NCj4gPiBpbmRlcGVuZGVudA0KPiA+IGNvZGUNCj4g DQo+IEFzIHRoaXMgYWx3YXlzIGJlZW4gdGhlIGNhc2U/IEkga25vdyB0aGF0IGZvciBHQ0MgaXQg ZGVwZW5kcyBvbiB0aGUNCj4gb24gDQo+IGRpc3Ryby92ZXJzaW9uIG9mIHRoZSBjb21waWxlci4N Cg0KSSB3aWxsIGNoZWNrIGhvdyBhcm1jbGFuZyBpbXBsZW1lbnRzIHRoaXMgbGF0ZXIgb24uDQoN Cj4gDQo+ID4gPiBbLi4uXQ0KPiA+ID4gDQo+ID4gPiA+ID4gWW91IHdvdWxkIHN0aWxsIG5lZWQg LS10YXJnZXQ9Li4uLiBidXQgdGhhdCdzIHNob3VsZCBkZXBlbmQNCj4gPiA+ID4gPiBvbg0KPiA+ ID4gPiA+ICRDUk9TU19DT01QSUxFDQo+ID4gPiA+ID4gKG9yIGFueSBvdGhlciBuYW1lIHdlIGRl Y2lkZSkuDQo+ID4gPiA+IA0KPiA+ID4gPiBZb3UncmUgcmlnaHQsIEkgZm9yZ290IHRvIG1lbnRp b24gLSBoYXZlIG5vdCB5ZXQgYnVpbHQgZm9yDQo+ID4gPiA+IEFybTMyIHNvDQo+ID4gPiA+IHRo aXMgaXMgbm90IGNoZWNrZWQuIEJ1dCwgYWNjb3JkaW5nIHRvIG1hbnVhbDoNCj4gPiA+ID4gDQo+ ID4gPiA+IEZvciB0YXJnZXRzIGluIEFBcmNoMzIgc3RhdGUgKC0tdGFyZ2V0PWFybS1hcm0tbm9u ZS1lYWJpKSwNCj4gPiA+ID4gdGhlcmUgaXMNCj4gPiA+ID4gbm8NCj4gPiA+ID4gZGVmYXVsdC4g WW91IG11c3Qgc3BlY2lmeSBlaXRoZXIgLW1hcmNoICh0byB0YXJnZXQgYW4NCj4gPiA+ID4gYXJj aGl0ZWN0dXJlKQ0KPiA+ID4gPiBvcg0KPiA+ID4gPiAtbWNwdSAodG8gdGFyZ2V0IGEgcHJvY2Vz c29yKQ0KPiA+ID4gDQo+ID4gPiBXZSBhY3R1YWxseSBwYXNzIC1tY3B1PWNvcnRleC1hMTUgaW4g YXJjaC9hcm0vUnVsZXMubWsgKEkgYWRtaXQNCj4gPiA+IHRoYXQNCj4gPiA+IGNvcnRleC1hMTUN Cj4gPiA+IGlzIHByb2JhYmx5IG5vdCB0aGUgbW9zdCBzdWl0YWJsZSkuIElmIHNvbWUgb3B0aW9u cyBzaG91bGQNCj4gPiA+IGFwcGxpZWQgdG8NCj4gPiA+IHRoZSB0b29scw0KPiA+ID4gYXMgd2Vs bCwgdGhlbiB3ZSBuZWVkIHRvIG1pZ3JhdGVkIHRoZW0gdG8gY29uZmlnL2FybTMyLm1rLg0KPiA+ IA0KPiA+IFllcywgSSBkbyBub3QgdGhpbmsgd2Ugc2hhbGwgc3BlY2lmeSB0aGUgcGFydGljdWxh ciBDUFUsIGJldHRlciB0bw0KPiA+IGhhdmUNCj4gPiBsb3dlc3Qgc3VwcG9ydGVkIGFyY2hpdGVj dHVyZSBkZWZpbmVkLg0KPiANCj4gSSB2YWd1ZWx5IHJlbWVtYmVyZWQgdG8gdHJ5IHRvIHJlcGxh Y2UgY29ydGV4LWExNSB3aXRoIHNvbWV0aGluZyBlbHNlDQo+IGluIA0KPiB0aGUgcGFzdC4gSUlS QywgdGhlIHByb2JsZW0gd2FzIGFybXY3LWEgZG9lcyBub3QgbmVjZXNzYXJpbHkgaW5jbHVkZSAN Cj4gdmlydCBleHRlbnNpb24uDQo+IA0KPiBUcnlpbmcgYWdhaW4gdG9kYXkgd2l0aCAtbWFyY2g9 YXJtdjctYSBpbnN0ZWFkIG9mIC1tY3B1PWNvcnRleC1hMTUsDQo+IEkgDQo+IGNhbiBzZWUgYnVp bGQgZXJyb3Igd2hlbiB1c2luZyBMaW5hcm8gR0NDIDYuMS0yMDE2LjgwOg0KPiANCj4ge3N0YW5k YXJkIGlucHV0fTogQXNzZW1ibGVyIG1lc3NhZ2VzOg0KPiB7c3RhbmRhcmQgaW5wdXR9OjI4NTog RXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0DQo+IGBzbWMgDQo+ICMw JyBpbiBBUk0gbW9kZQ0KPiB7c3RhbmRhcmQgaW5wdXR9OjQyOTogRXJyb3I6IHNlbGVjdGVkIHBy b2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0DQo+IGBzbWMgDQo+ICMwJyBpbiBBUk0gbW9kZQ0KPiB7 c3RhbmRhcmQgaW5wdXR9OjQ2MjogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBz dXBwb3J0DQo+IGBzbWMgDQo+ICMwJyBpbiBBUk0gbW9kZQ0KPiB7c3RhbmRhcmQgaW5wdXR9OjUz OTogRXJyb3I6IHNlbGVjdGVkIHByb2Nlc3NvciBkb2VzIG5vdCBzdXBwb3J0DQo+IGBzbWMgDQo+ ICMwJyBpbiBBUk0gbW9kZQ0KPiAvaG9tZS9qdWxpZW5nL3dvcmtzL3hlbi94ZW4vUnVsZXMubWs6 MTk2OiByZWNpcGUgZm9yIHRhcmdldCANCj4gJ2NwdWVycmF0YS5vJyBmYWlsZWQNCj4gbWFrZVsz XTogKioqIFtjcHVlcnJhdGEub10gRXJyb3IgMQ0KPiANCj4gSSB0aGluayB0aGlzIG9uZSBpcyBz b2x2YWJsZSBieSBzcGVjaWZ5aW5nIHRoZSBzZWN1cmUgZXh0ZW5zaW9uLiBCdXQNCj4gaXQgDQo+ IG1pZ2h0IGJlIHBvc3NpYmxlIHRoZXJlIGFyZSBvdGhlciBpc3N1ZXMgd2l0aCBvbGRlciBjb21w aWxlciAoaS5lIDQuNg0KPiAmIGNvKS4NCj4gDQoNCkNvdWxkIGJlLiBXZSBtaWdodCBuZWVkIGRv IGRvIGF1dG9tYXRpYyBjaGVja3Mgd2l0aCBvbGQgY29tcGlsZXJzDQoNCj4gPiA+ID4gWzEwMDA2 N18wNjEyXzAwX2VuIHBhZ2UgMS04Ml0NCj4gPiA+ID4gDQo+ID4gPiA+ID4gPiArZWxzZQ0KPiA+ ID4gPiA+ID4gK0NGTEFHUyArPSAtbWFybSAjIC1tYXJjaD0gLW1jcHU9DQo+ID4gPiA+ID4gPiAg ICAgIyBVc2Ugb25seSBpZiBjYWxsaW5nICQoTEQpIGRpcmVjdGx5Lg0KPiA+ID4gPiA+ID4gICAg IExERkxBR1NfRElSRUNUICs9IC1FTA0KPiA+ID4gPiA+ID4gK2VuZGlmDQo+ID4gPiA+ID4gPiAg ICAgDQo+ID4gPiA+ID4gPiAgICAgSU9FTVVfQ1BVX0FSQ0ggPz0gYXJtDQo+ID4gPiA+ID4gPiBk aWZmIC0tZ2l0IGEvY29uZmlnL2FybTY0Lm1rIGIvY29uZmlnL2FybTY0Lm1rDQo+ID4gPiA+ID4g PiBpbmRleCBhYTQ1NzcyYjYxLi40NmIyMDNkMzg0IDEwMDY0NA0KPiA+ID4gPiA+ID4gLS0tIGEv Y29uZmlnL2FybTY0Lm1rDQo+ID4gPiA+ID4gPiArKysgYi9jb25maWcvYXJtNjQubWsNCj4gPiA+ ID4gPiA+IEBAIC00LDEwICs0LDE0IEBAIENPTkZJR19BUk1fJChYRU5fT1MpIDo9IHkNCj4gPiA+ ID4gPiA+ICAgICANCj4gPiA+ID4gPiA+ICAgICBDT05GSUdfWEVOX0lOU1RBTExfU1VGRklYIDo9 DQo+ID4gPiA+ID4gPiAgICAgDQo+ID4gPiA+ID4gPiAraWZlcSAoJChhcm1kcykseSkNCj4gPiA+ ID4gPiA+ICsjIFZFIG5lZWRlZA0KPiA+ID4gPiA+ID4gK0NGTEFHUyArPSAtLXRhcmdldD1hYXJj aDY0LWFybS1ub25lLWVhYmkgLW1hcmNoPWFybXY4LjEtDQo+ID4gPiA+ID4gPiBhK25vZnArbm9z aW1kDQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gU2FtZSByZW1hcmsgZm9yIC0tdGFyZ2V0Lg0KPiA+ ID4gPiA+IEFsc28sIC1tYXJjaD1hcm12OC4xIGxvb2tzIHdyb25nIHRvIG1lIGJlY2F1c2UgdGhp cyBtYXkNCj4gPiA+ID4gPiBnZW5lcmF0ZQ0KPiA+ID4gPiA+IGNvZGUNCj4gPiA+ID4gPiB0aGF0 IHdpbGwNCj4gPiA+ID4gPiBub3Qgd29yayBvbiBhcm12OC4wIHBsYXRmb3JtLg0KPiA+ID4gPiA+ IA0KPiA+ID4gPiANCj4gPiA+ID4gSWYgSSBkb24ndCBzcGVjaWZ5IC1tYXJjaCB0aGlzIHdheSwg aXQgd2lsbCBidWlsdDoNCj4gPiA+ID4gICAgMSkgd2l0aG91dCBzb21lIHJlZ2lzdGVycywgZS5n LiBUVExCMF9FTDIgc3VwcG9ydCAoYnVpbGQNCj4gPiA+ID4gZmFpbHMpDQo+ID4gPiANCj4gPiA+ IEkgZ3Vlc3MgeW91IG1lYW4gVFRCUjBfRUwyIGhlcmUuDQo+ID4gPiANCj4gPiA+IFhlbiBpcyBm dWxseSBBcm12OC4wIGNvbXBsaWFudC4gU28gaWYgeW91IGNhbid0IGNvbXBpbGUgWGVuIHdpdGgN Cj4gPiA+IC1tYXJjaD1hcm12OC1hDQo+ID4gPiB0aGVuIHRoaXMgbmVlZHMgdG8gYmUgaW52ZXN0 aWdhdGVkIGFuZCBiZSByZXBvcnRlZC4NCj4gPiA+IA0KPiA+ID4gTG9va2luZyBhdCB0aGUgZXJy b3IgdGhyb3duOg0KPiA+ID4gDQo+ID4gPiBhcm02NC9oZWFkLlM6Mzk5OjEzOiBlcnJvcjogZXhw ZWN0ZWQgd3JpdGFibGUgc3lzdGVtIHJlZ2lzdGVyIG9yDQo+ID4gPiBwc3RhdGUNCj4gPiA+ICAg ICAgICAgICBtc3IgVFRCUjBfRUwyLCB4NA0KPiA+ID4gDQo+ID4gPiBUaGlzIGlzIGxpa2VseSBh IGNvbXBpbGVyIGJ1Zy4NCj4gPiA+IA0KPiA+IA0KPiA+IEFjdHVhbGx5IEkgZG8gbm90IGtub3cg d2hhdCBpcyB0aGUgcHJvcGVyIHdheSB0byByZXBvcnQgc3VjaCBpc3N1ZXMNCj4gPiBhbmQNCj4g PiBnZXQgdGhlbSBmaXhlZC4gTXkgcG9zdCBvbiBBUk0gZm9ydW0gcmVnYXJkaW5nIGxpbmtlciBm YWlsdWUgaGFzIG5vDQo+ID4gY29tbWVudHMvcmVhY3Rpb25zLCB3aGljaCBtZWFucyBpdCBtYXkg bm90IGJlIHRoZSBiZXN0IHdheSBmb3INCj4gPiByZXBvcnRpbmcuIFdvdWxkIGl0IGJlIHBvc3Np YmxlIGZvciB5b3UgdG8gY2hlY2sgaWYgd2UgY2FuIGdldCBzb21lDQo+ID4gYXR0ZW50aW9uIGZy b20gQVJNIENvbXBpbGVyIGZvbGtzPw0KPiANCj4gSSB3aWxsIGhhdmUgYSBjaGF0IGFuZCBsZXQg eW91IGtub3cuDQo+IA0KPiA+ID4gPiAgICAyKSB3aXRoIHZmcCBhbmQgc2ltZCBlbmFibGVkIChs aW5raW5nIGZhaWxzKQ0KPiA+ID4gPiANCj4gPiA+ID4gQWNjb3JkaW5nIHRvIEFybSBjb21waWxl ciBtYW51YWw6DQo+ID4gPiA+IC0tLQ0KPiA+ID4gPiBGb3IgdGFyZ2V0cyBpbiBBQXJjaDY0IHN0 YXRlICgtLXRhcmdldD1hYXJjaDY0LWFybS1ub25lLWVhYmkpLA0KPiA+ID4gPiB1bmxlc3MNCj4g PiA+ID4geW91IHRhcmdldCBhIHBhcnRpY3VsYXIgcHJvY2Vzc29yIHVzaW5nIC1tY3B1IG9yIGEg cGFydGljdWxhcg0KPiA+ID4gPiBhcmNoaXRlY3R1cmUgdXNpbmcgLW1hcmNoLCB0aGUgY29tcGls ZXIgZGVmYXVsdHMgdG8NCj4gPiA+ID4gLW1hcmNoPWFybXY4LWEsDQo+ID4gPiA+IGdlbmVyYXRp bmcgZ2VuZXJpYyBjb2RlIGZvciBBcm12OOKAkUEgaW4gQUFyY2g2NCBzdGF0ZS4NCj4gPiA+ID4g WzEwMDA2N18wNjEyXzAwX2VuIHBhZ2UgMS04Ml0NCj4gPiA+ID4gLS0tDQo+ID4gPiA+IFlvdSBj YW4gcHJldmVudCB0aGUgdXNlIG9mIGZsb2F0aW5nLXBvaW50IGluc3RydWN0aW9ucyBvcg0KPiA+ ID4gPiBmbG9hdGluZy0NCj4gPiA+ID4gcG9pbnQgcmVnaXN0ZXJzIGZvciB0YXJnZXRzIGluIEFB cmNoNjQgc3RhdGUgd2l0aCB0aGUNCj4gPiA+ID4gLW1jcHU9bmFtZStub2ZwK25vc2ltZCBvcHRp b24uIFN1YnNlcXVlbnQgdXNlIG9mIGZsb2F0aW5nLXBvaW50DQo+ID4gPiA+IGRhdGENCj4gPiA+ ID4gdHlwZXMgaW4gdGhpcyBtb2RlIGlzIHVuc3VwcG9ydGVkLg0KPiA+ID4gPiBbMTAwMDY3XzA2 MTJfMDBfZW4gcGFnZSAxLTkzXQ0KPiA+ID4gPiAtLS0NCj4gPiA+IA0KPiA+ID4gSSBhc3N1bWUg dGhhdCAtbWdlbmVyYWwtcmVncy1vbmx5IGRvZXMgbm90IHdvcmsgaW4geW91ciBjYXNlPw0KPiA+ IA0KPiA+IE5vcGUgOlwNCj4gDQo+IEl0IHdvdWxkIGJlIGludGVyZXN0aW5nIHRvIGtub3cgd2hl dGhlciAtbWFyY2g9YXJtdjgtYS4uLiB3b3JrcyBvbg0KPiBhbGwgDQo+IEdDQyB2ZXJzaW9uIHdl IHN1cHBvcnQuDQo+IA0KPiBDaGVlcnMsDQo+IA0KPiANCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVs QGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1h bi9saXN0aW5mby94ZW4tZGV2ZWw=