From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: MIME-Version: 1.0 References: <20200210161550.22562-1-a.fatoum@pengutronix.de> <38d39d11-2cbc-998e-445c-268f1d94b066@pengutronix.de> In-Reply-To: <38d39d11-2cbc-998e-445c-268f1d94b066@pengutronix.de> From: Guillermo Rodriguez Garcia Date: Mon, 10 Feb 2020 17:50:19 +0100 Message-ID: Subject: Re: [ptxdist] [PATCH] tf-a: new package for ARM trusted firmware A List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: Ahmad Fatoum Cc: Alejandro Vazquez , ptxdist@pengutronix.de RWwgbHVuLiwgMTAgZmViLiAyMDIwIGEgbGFzIDE3OjMzLCBBaG1hZCBGYXRvdW0KKDxhLmZhdG91 bUBwZW5ndXRyb25peC5kZT4pIGVzY3JpYmnDszoKPgo+IEhlbGxvIEd1aWxsZXJtbywKPgo+IE9u IDIvMTAvMjAgNToyOSBQTSwgR3VpbGxlcm1vIFJvZHJpZ3VleiBHYXJjaWEgd3JvdGU6Cj4gPiBI ZWxsbywKPiA+Cj4gPiBFbCBsdW4uLCAxMCBmZWIuIDIwMjAgYSBsYXMgMTc6MTYsIEFobWFkIEZh dG91bQo+ID4gKDxhLmZhdG91bUBwZW5ndXRyb25peC5kZT4pIGVzY3JpYmnDszoKPiA+Pgo+ID4+ IFRydXN0ZWQgRmlybXdhcmUtQSAoVEYtQSkgaXMgYSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24g b2Ygc2VjdXJlIHdvcmxkCj4gPj4gc29mdHdhcmUgZm9yIEFybSBBLVByb2ZpbGUgYXJjaGl0ZWN0 dXJlcyAoQXJtdjgtQSBhbmQgQXJtdjctQSkuCj4gPj4KPiA+PiBDYzogQWxlamFuZHJvIFZhenF1 ZXogPGF2YXpxdWV6LmRldkBnbWFpbC5jb20+Cj4gPj4gU2lnbmVkLW9mZi1ieTogUm91dmVuIEN6 ZXJ3aW5za2kgPHJvdXZlbkBjemVyd2luc2tpcy5kZT4KPiA+PiBTaWduZWQtb2ZmLWJ5OiBBaG1h ZCBGYXRvdW0gPGEuZmF0b3VtQHBlbmd1dHJvbml4LmRlPgo+ID4+IC0tLQo+ID4+ICBwbGF0Zm9y bXMvdGYtYS5pbiB8IDExMyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKPiA+PiAgcnVsZXMvdGYtYS5tYWtlICAgfCAxMjMgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwo+ID4+ICAyIGZpbGVzIGNoYW5nZWQsIDIzNiBpbnNlcnRp b25zKCspCj4gPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBwbGF0Zm9ybXMvdGYtYS5pbgo+ID4+ICBj cmVhdGUgbW9kZSAxMDA2NDQgcnVsZXMvdGYtYS5tYWtlCj4gPj4KPiA+PiBkaWZmIC0tZ2l0IGEv cGxhdGZvcm1zL3RmLWEuaW4gYi9wbGF0Zm9ybXMvdGYtYS5pbgo+ID4+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0Cj4gPj4gaW5kZXggMDAwMDAwMDAwMDAwLi41YWE0Y2E0NzNjMzUKPiA+PiAtLS0gL2Rl di9udWxsCj4gPj4gKysrIGIvcGxhdGZvcm1zL3RmLWEuaW4KPiA+PiBAQCAtMCwwICsxLDExMyBA QAo+ID4+ICsjIyBTRUNUSU9OPWJvb3Rsb2FkZXIKPiA+PiArCj4gPj4gK21lbnVjb25maWcgVEZf QQo+ID4+ICsgICAgICAgc2VsZWN0IEJPT1RMT0FERVIKPiA+PiArICAgICAgIHByb21wdCAiQVJN IFRydXN0ZWQgRmlybXdhcmUtQSIKPiA+PiArICAgICAgIGRlcGVuZHMgb24gQVJDSF9BUk0gfHwg QVJDSF9BUk02NAo+ID4+ICsgICAgICAgYm9vbAo+ID4+ICsKPiA+PiAraWYgVEZfQQo+ID4+ICsK PiA+PiArY29uZmlnIFRGX0FfQVJDSF9TVFJJTkcKPiA+PiArICAgICAgICBzdHJpbmcKPiA+PiAr ICAgICAgICBkZWZhdWx0ICJhYXJjaDMyIiBpZiBBUkNIX0FSTQo+ID4+ICsgICAgICAgIGRlZmF1 bHQgImFhcmNoNjQiIGlmIEFSQ0hfQVJNNjQKPiA+PiArCj4gPj4gK2NvbmZpZyBURl9BX0FSTV9B UkNIX01BSk9SCj4gPj4gKyAgICAgICAgaW50Cj4gPj4gKyAgICAgICAgZGVmYXVsdCAiNyIgaWYg QVJDSF9BUk0KPiA+PiArICAgICAgICBkZWZhdWx0ICI4IiBpZiBBUkNIX0FSTTY0Cj4gPj4gKwo+ ID4+ICtjb25maWcgVEZfQV9WRVJTSU9OCj4gPj4gKyAgICAgICBzdHJpbmcKPiA+PiArICAgICAg IGRlZmF1bHQgInYyLjIiCj4gPj4gKyAgICAgICBwcm9tcHQgIlRGLUEgdmVyc2lvbiIKPiA+PiAr ICAgICAgIGhlbHAKPiA+PiArICAgICAgICAgRW50ZXIgdGhlIFRGLUEgdmVyc2lvbiB5b3Ugd2Fu dCB0byBidWlsZC4gVXNhbGx5IHNvbWV0aGluZyBsaWtlICJ2Mi4yIgo+ID4+ICsKPiA+PiArY29u ZmlnIFRGX0FfTUQ1Cj4gPj4gKyAgICAgICBzdHJpbmcKPiA+PiArICAgICAgIGRlZmF1bHQgImJi MzAwZTVhNjJjOTExZTE4OWM4MGQ5MzVkNDk3YTRiIgo+ID4+ICsgICAgICAgcHJvbXB0ICJURi1B IHNvdXJjZSBtZDUiCj4gPj4gKwo+ID4+ICtjb25maWcgVEZfQV9QTEFURk9STQo+ID4+ICsgICAg ICAgc3RyaW5nCj4gPj4gKyAgICAgICBwcm9tcHQgIlRGLUEgdGFyZ2V0IHBsYXRmb3JtIgo+ID4+ ICsgICAgICAgaGVscAo+ID4+ICsgICAgICAgICBUaGUgVEYtQSB0YXJnZXQgcGxhdGZvcm0uCj4g Pj4gKwo+ID4+ICtpZiBBUkNIX0FSTTY0Cj4gPj4gK2NvbmZpZyBURl9BX0FSTV9BUkNIX01JTk9S Cj4gPj4gKyAgICAgICBpbnQKPiA+PiArICAgICAgIGRlZmF1bHQgMAo+ID4+ICsgICAgICAgcHJv bXB0ICJURi1BIHRhcmdldCBBUk12OC5NSU5PUiB2ZXJzaW9uIgo+ID4+ICsgICAgICAgaGVscAo+ ID4+ICsgICAgICAgICBUaGUgbWlub3IgdmVyc2lvbiBvZiB0aGUgQVJNdjggYXJjaGl0ZWN0dXJl IHRhcmdldGVkLiBEZWZhdWx0cyB0byAwLgo+ID4+ICtlbmRpZgo+ID4+ICsKPiA+PiArY29uZmln IFRGX0FfRFRCCj4gPj4gKyAgICAgICBzdHJpbmcKPiA+PiArICAgICAgIHByb21wdCAiVEYtQSBE VEIgZmlsZSBuYW1lIgo+ID4+ICsgICAgICAgaGVscAo+ID4+ICsgICAgICAgICBEZXZpY2UgVHJl ZSBCaW5hcnkgZmlsZSBuYW1lCj4gPj4gKwo+ID4+ICtjb25maWcgVEZfQV9BUlRJRkFDVFMKPiA+ PiArICAgICAgIHN0cmluZwo+ID4+ICsgICAgICAgcHJvbXB0ICJURi1BIGFydGlmYWN0IGZpbGUg bmFtZXMiCj4gPj4gKyAgICAgICBkZWZhdWx0ICJibDIuYmluIgo+ID4+ICsgICAgICAgaGVscAo+ ID4+ICsgICAgICAgICBBIHNwYWNlLXNlcGFyYXRlZCBsaXN0IG9mIGFydGlmYWN0cyB0byBjb3B5 IHRvIHRoZSBpbWFnZSBkaXJlY3RvcnkuCj4gPj4gKyAgICAgICAgIEFsbCBmaWxlIG5hbWVzIGFy ZSByZWxhdGl2ZSB0byB0aGUgYXBwcm9wcmlhdGUgVEYtQSBwbGF0Zm9ybSBidWlsZAo+ID4+ICsg ICAgICAgICBkaXJlY3RvcnkuCj4gPj4gKwo+ID4+ICtjb21tZW50ICJQYXlsb2FkcyIKPiA+PiAr Cj4gPj4gK2Nob2ljZQo+ID4+ICsgICAgICAgcHJvbXB0ICJCTDMyIFBheWxvYWQiCj4gPj4gKyAg ICAgICBkZWZhdWx0IFRGX0FfQkwzMl9OT05FCj4gPj4gKyAgICAgICBoZWxwCj4gPj4gKyAgICAg ICAgIHBheWxvYWQgZm9yIEJMMzIgKFNlY3VyZSBXb3JsZCBPUykKPiA+PiArCj4gPj4gKyAgICAg ICBjb25maWcgVEZfQV9CTDMyX05PTkUKPiA+PiArICAgICAgICAgICAgICAgcHJvbXB0ICJOb25l Igo+ID4+ICsgICAgICAgICAgICAgICBib29sCj4gPj4gKwo+ID4+ICsgICAgICAgY29uZmlnIFRG X0FfQkwzMl9TUF9NSU4KPiA+PiArICAgICAgICAgICAgICAgZGVwZW5kcyBvbiBBUkNIX0FSTQo+ ID4+ICsgICAgICAgICAgICAgICBwcm9tcHQgInNwX21pbiIKPiA+PiArICAgICAgICAgICAgICAg Ym9vbAo+ID4+ICsKPiA+PiArICAgICAgIGNvbmZpZyBURl9BX0JMMzJfVFNQCj4gPj4gKyAgICAg ICAgICAgICAgIGRlcGVuZHMgb24gQVJDSF9BUk02NAo+ID4+ICsgICAgICAgICAgICAgICBwcm9t cHQgIlRlc3QgU2VjdXJlIFBheWxvYWQiCj4gPj4gKyAgICAgICAgICAgICAgIGJvb2wKPiA+PiAr Cj4gPj4gK2VuZGNob2ljZQo+ID4+ICsKPiA+PiAraWYgVEZfQV9CTDMyX1RTUAo+ID4+ICtjaG9p Y2UgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT04KPiA+PiArICAgICAgIHByb21wdCAiVFNQIGxv Y2F0aW9uIgo+ID4+ICsgICAgICAgZGVmYXVsdCBURl9BX0JMMzJfVFNQX1JBTV9MT0NBVElPTl9U U1JBTQo+ID4+ICsKPiA+PiArICAgICAgIGNvbmZpZyBURl9BX0JMMzJfVFNQX1JBTV9MT0NBVElP Tl9UU1JBTQo+ID4+ICsgICAgICAgICAgICAgICBwcm9tcHQgIlRydXN0ZWQgU1JBTSIKPiA+PiAr ICAgICAgICAgICAgICAgYm9vbAo+ID4+ICsKPiA+PiArICAgICAgIGNvbmZpZyBURl9BX0JMMzJf VFNQX1JBTV9MT0NBVElPTl9URFJBTQo+ID4+ICsgICAgICAgICAgICAgICBwcm9tcHQgIlRydXN0 ZWQgRFJBTSAoaWYgYXZhaWxhYmxlKSIKPiA+PiArICAgICAgICAgICAgICAgYm9vbAo+ID4+ICsK PiA+PiArICAgICAgIGNvbmZpZyBURl9BX0JMMzJfVFNQX1JBTV9MT0NBVElPTl9EUkFNCj4gPj4g KyAgICAgICAgICAgICAgIHByb21wdCAiU2VjdXJlIERSQU0gcmVnaW9uIChjb25maWd1cmVkIGJ5 IFRydXN0Wm9uZSBjb250cm9sbGVyKSIKPiA+PiArICAgICAgICAgICAgICAgYm9vbAo+ID4+ICtl bmRjaG9pY2UKPiA+PiArCj4gPj4gK2NvbmZpZyBURl9BX0JMMzJfVFNQX1JBTV9MT0NBVElPTl9T VFJJTkcKPiA+PiArICAgICAgICBzdHJpbmcKPiA+PiArICAgICAgICBkZWZhdWx0ICJ0c3JhbSIg aWYgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fVFNSQU0KPiA+PiArICAgICAgICBkZWZhdWx0 ICJ0ZHJhbSIgaWYgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fVERSQU0KPiA+PiArICAgICAg ICBkZWZhdWx0ICJkcmFtIiAgaWYgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fRFJBTQo+ID4+ ICsKPiA+PiArZW5kaWYKPiA+PiArCj4gPj4gK2VuZGlmCj4gPgo+ID4gSSBhbSBtaXNzaW5nIGhl cmUgYSB3YXkgdG8gcGFzcyBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgdG8gVEYtQSAoYXMgaW4KPiA+ IFRGQV9BRERJVElPTkFMX1BBUkFNRVRFUlMgaW4gQWxlamFuZHJvJ3MgdmVyc2lvbikgYXMgdGhl cmUgYXJlIG1hbnkKPiA+IG90aGVyIG9wdGlvbnMgKHNvbWUgb2Ygd2hpY2ggbWF5IGJlIHZlbmRv ciBzcGVjaWZpYykgdGhhdCBhcmUgbm90IGV4cGxpY2l0bHkKPiA+IGRlZmluZWQgaW4gdGhlIC5p biBmaWxlLgo+Cj4gSSBhbSBub3QgdG9vIGtlZW4gb24gc2lkZXN0ZXBwaW5nIHRoZSBLY29uZmln IGJ5IGFsbG93aW5nIGZyZWUgZm9ybQo+IGNvbW1hbmQgbGluZSBwYXJhbWV0ZXJzLi4gRG8gd2Ug ZG8gdGhpcyBmb3Igb3RoZXIgcnVsZXM/CgpJbiBtb3N0IGNhc2VzIEkgYWdyZWUgdGhhdCB0aGVy ZSBhcmUgYmV0dGVyIHdheXMsIGJ1dCBpbiBzb21lIGNhc2VzIGl0J3MKdGhlIGJlc3Qgb3B0aW9u LiBTZWUgZm9yIGV4YW1wbGUgdGhlICJleHRyYSBDRkxBR1MiICYgZnJpZW5kcyBpbiB0aGUKdG9v bGNoYWluIGNvbmZpZ3VyYXRpb24uCgpGb3IgVEYtQSB5b3UgbmVlZCBhIHdheSB0byBwYXNzIHZl bmRvci1zcGVjaWZpYyBwYXJhbWV0ZXJzLCBhcyB0aGVzZSBtYXkKYmUgZGlmZmVyZW50IGZvciBl YWNoIHBsYXRmb3JtLgoKVGhlIGJ1aWxkcm9vdCBydWxlIGZpbGVzIGFsc28gYWRkZWQgYW4gImFk ZGl0aW9uYWwgcGFyYW1ldGVycyIgdGhpbmcgZm9yIFRGLUEuClNlZTogaHR0cHM6Ly9naXQuYnVp bGRyb290Lm9yZy9idWlsZHJvb3QvdHJlZS9ib290L2FybS10cnVzdGVkLWZpcm13YXJlL0NvbmZp Zy5pbj9pZD05ZGJjOTM0MjE3ZTE3MDU3OGQ0Y2JmZGY1MjRiYzFiMzk4OGQwYjllI24xMDMKClRo YW5rcywKCkd1aWxsZXJtbwoKPgo+IEkgY2FuIGFkZCBpdCB0byB2MiB0aG91Z2guCj4KPiA+PiBk aWZmIC0tZ2l0IGEvcnVsZXMvdGYtYS5tYWtlIGIvcnVsZXMvdGYtYS5tYWtlCj4gPj4gbmV3IGZp bGUgbW9kZSAxMDA2NDQKPiA+PiBpbmRleCAwMDAwMDAwMDAwMDAuLjllZTU1NDQ3NjkyNwo+ID4+ IC0tLSAvZGV2L251bGwKPiA+PiArKysgYi9ydWxlcy90Zi1hLm1ha2UKPiA+PiBAQCAtMCwwICsx LDEyMyBAQAo+ID4+ICsjIC0qLW1ha2VmaWxlLSotCj4gPj4gKyMKPiA+PiArIyBDb3B5cmlnaHQg KEMpIDIwMTggYnkgUm91dmVuIEN6ZXJ3aW5za2kgPHIuY3plcndpbnNraUBwZW5ndXRyb25peC5k ZT4KPiA+PiArIyAgICAgICAgICAgICAgIDIwMTkgYnkgQWhtYWQgRmF0b3VtIDxhLmZhdG91bUBw ZW5ndXRyb25peC5kZT4KPiA+PiArIwo+ID4+ICsjIFNlZSBDUkVESVRTIGZvciBkZXRhaWxzIGFi b3V0IHdobyBoYXMgY29udHJpYnV0ZWQgdG8gdGhpcyBwcm9qZWN0Lgo+ID4+ICsjCj4gPj4gKyMg Rm9yIGZ1cnRoZXIgaW5mb3JtYXRpb24gYWJvdXQgdGhlIFBUWGRpc3QgcHJvamVjdCBhbmQgbGlj ZW5zZSBjb25kaXRpb25zCj4gPj4gKyMgc2VlIHRoZSBSRUFETUUgZmlsZS4KPiA+PiArIwo+ID4+ ICsKPiA+PiArIwo+ID4+ICsjIFdlIHByb3ZpZGUgdGhpcyBwYWNrYWdlCj4gPj4gKyMKPiA+PiAr UEFDS0FHRVMtJChQVFhDT05GX1RGX0EpICs9IHRmLWEKPiA+PiArCj4gPj4gKyMKPiA+PiArIyBQ YXRocyBhbmQgbmFtZXMKPiA+PiArIwo+ID4+ICtURl9BX1ZFUlNJT04gICA6PSAkKGNhbGwgcmVt b3ZlX3F1b3RlcywkKFBUWENPTkZfVEZfQV9WRVJTSU9OKSkKPiA+PiArVEZfQV9NRDUgICAgICAg Oj0gJChjYWxsIHJlbW92ZV9xdW90ZXMsJChQVFhDT05GX1RGX0FfTUQ1KSkKPiA+PiArVEZfQSAg ICAgICAgICAgOj0gdGYtYS0kKFRGX0FfVkVSU0lPTikKPiA+PiArVEZfQV9TVUZGSVggICAgOj0g dGFyLmd6Cj4gPj4gK1RGX0FfVVJMICAgICAgIDo9IGh0dHBzOi8vZ2l0LnRydXN0ZWRmaXJtd2Fy ZS5vcmcvVEYtQS90cnVzdGVkLWZpcm13YXJlLWEuZ2l0L3NuYXBzaG90LyQoVEZfQV9WRVJTSU9O KS4kKFRGX0FfU1VGRklYKQo+ID4+ICtURl9BX1NPVVJDRSAgICA6PSAkKFNSQ0RJUikvJChURl9B KS4kKFRGX0FfU1VGRklYKQo+ID4+ICtURl9BX0RJUiAgICAgICA6PSAkKEJVSUxERElSKS8kKFRG X0EpCj4gPj4gK1RGX0FfTElDRU5TRSAgICA6PSBCU0QtMy1DbGF1c2UKPiA+PiArCj4gPj4gKyMg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4+ICsjIFByZXBhcmUKPiA+PiArIyAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCj4gPj4gKwo+ID4+ICtURl9BX1dSQVBQRVJfQkxBQ0tMSVNUIDo9IFwKPiA+PiArICAg ICAgIFRBUkdFVF9IQVJERU5fUkVMUk8gXAo+ID4+ICsgICAgICAgVEFSR0VUX0hBUkRFTl9CSU5E Tk9XIFwKPiA+PiArICAgICAgIFRBUkdFVF9IQVJERU5fUElFIFwKPiA+PiArICAgICAgIFRBUkdF VF9ERUJVRyBcCj4gPj4gKyAgICAgICBUQVJHRVRfQlVJTERfSUQKPiA+PiArCj4gPj4gK1RGX0Ff UEFUSCAgICAgIDo9IFBBVEg9JChDUk9TU19QQVRIKQo+ID4+ICtURl9BX01BS0VfT1BUICA6PSBc Cj4gPj4gKyAgICAgICBWPSQoUFRYRElTVF9WRVJCT1NFKSBcCj4gPj4gKyAgICAgICBDUk9TU19D T01QSUxFPSQoQk9PVExPQURFUl9DUk9TU19DT01QSUxFKSBcCj4gPj4gKyAgICAgICBIT1NUQ0M9 JChIT1NUQ0MpCj4gPj4gK1RGX0FfQ09ORl9UT09MIDo9IE5PCj4gPj4gK1RGX0FfTUFLRV9FTlYg IDo9ICQoQ1JPU1NfRU5WKQo+ID4+ICsjIFRGX0FfREVCVUc9eWVzCj4gPj4gKwo+ID4+ICsKPiA+ PiArJChTVEFURURJUikvdGYtYS5wcmVwYXJlOgo+ID4+ICsgICAgICAgQCQoY2FsbCB0YXJnZXRp bmZvKQo+ID4+ICsgICAgICAgQCQoY2FsbCB0b3VjaCkKPiA+PiArCj4gPj4gKyMgLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQo+ID4+ICsjIENvbXBpbGUKPiA+PiArIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g Pj4gK1RGX0FfTUFLRV9PUFQgKz0gUExBVD0kKFBUWENPTkZfVEZfQV9QTEFURk9STSkKPiA+PiAr Cj4gPj4gK1RGX0FfTUFLRV9PUFQgKz0gREVCVUc9JChjYWxsIHB0eC9pZmRlZixURl9BX0RFQlVH LDEsMCkKPiA+PiArVEZfQV9CVUlMRF9PVVRQVVRfRElSIDo9ICQoY2FsbCBwdHgvaWZkZWYsVEZf QV9ERUJVRyxkZWJ1ZyxyZWxlYXNlKQo+ID4+ICsKPiA+PiArVEZfQV9NQUtFX09QVCArPSBBUkNI PSQoUFRYQ09ORl9URl9BX0FSQ0hfU1RSSU5HKQo+ID4+ICtURl9BX01BS0VfT1BUICs9IExPQURf SU1BR0VfVjI9MQo+ID4+ICtpZmRlZiBQVFhDT05GX1RGX0FfQkwzMl9UU1AKPiA+PiArVEZfQV9N QUtFX09QVCArPSBBUk1fVFNQX1JBTV9MT0NBVElPTj0kKFBUWENPTkZfVEZfQV9CTDMyX1RTUF9S QU1fTE9DQVRJT05fU1RSSU5HKQo+ID4+ICtlbmRpZgo+ID4+ICtURl9BX01BS0VfT1BUICs9IEFS TV9BUkNIX01BSk9SPSQoUFRYQ09ORl9URl9BX0FSTV9BUkNIX01BSk9SKQo+ID4+ICtpZmRlZiBQ VFhDT05GX1RGX0FfQVJNX0FSQ0hfTUlOT1IKPiA+PiArVEZfQV9NQUtFX09QVCArPSBBUk1fQVJD SF9NSU5PUj0kKFBUWENPTkZfVEZfQV9BUk1fQVJDSF9NSU5PUikKPiA+PiArZW5kaWYKPiA+PiAr Cj4gPj4gK2lmbmVxICgkKFBUWENPTkZfVEZfQV9EVEIpLCkKPiA+PiArVEZfQV9NQUtFX09QVCAr PSBEVEJfRklMRV9OQU1FPSQoUFRYQ09ORl9URl9BX0RUQikKPiA+PiArZW5kaWYKPiA+PiArCj4g Pj4gK2lmZGVmIFBUWENPTkZfVEZfQV9CTDMyX1NQX01JTgo+ID4+ICtURl9BX01BS0VfT1BUICs9 IEFBUkNIMzJfU1A9c3BfbWluCj4gPj4gK2VuZGlmCj4gPj4gKwo+ID4+ICtURl9BX01BS0VfT1BU ICs9IGFsbAo+ID4+ICsKPiA+PiArVEZfQV9BUlRJRkFDVFMgPSAkKGFkZHByZWZpeCAkKFRGX0Ff RElSKS9idWlsZC8kKFBUWENPTkZfVEZfQV9QTEFURk9STSkvJChURl9BX0JVSUxEX09VVFBVVF9E SVIpLywgXAo+ID4+ICsgICAgICAgJChjYWxsIHJlbW92ZV9xdW90ZXMsJChQVFhDT05GX1RGX0Ff QVJUSUZBQ1RTKSkpCj4gPj4gKwo+ID4+ICskKFNUQVRFRElSKS90Zi1hLmNvbXBpbGU6Cj4gPj4g KyAgICAgICBAJChjYWxsIHRhcmdldGluZm8pCj4gPj4gKyAgICAgICBAcm0gLXJmICQoVEZfQV9E SVIpL2J1aWxkLwo+ID4+ICsgICAgICAgQCQoY2FsbCB3b3JsZC9jb21waWxlLCBURl9BKQo+ID4+ ICsgICAgICAgQCQoY2FsbCB0b3VjaCkKPiA+PiArCj4gPj4gKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQo+ID4+ICsjIEluc3RhbGwKPiA+PiArIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gPj4gKwo+ID4+ ICskKFNUQVRFRElSKS90Zi1hLmluc3RhbGw6Cj4gPj4gKyAgICAgICBAJChjYWxsIHRhcmdldGlu Zm8pCj4gPj4gKwo+ID4+ICtpZmVxICgkKFRGX0FfQVJUSUZBQ1RTKSwpCj4gPj4gKyAgICAgICAk KHdhcm5pbmcgVEZfQV9BUlRJRkFDVFMgaXMgZW1wdHkuIG5vdGhpbmcgdG8gaW5zdGFsbC4pCj4g Pj4gK2Vsc2UKPiA+PiArICAgICAgIEBpbnN0YWxsIC1EIC1tNjQ0ICQoVEZfQV9BUlRJRkFDVFMp ICQoSU1BR0VESVIpCj4gPj4gK2VuZGlmCj4gPj4gKwo+ID4+ICsgICAgICAgQCQoY2FsbCB0b3Vj aCkKPiA+PiArCj4gPj4gKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4+ICsjIFRhcmdldC1JbnN0 YWxsCj4gPj4gKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4+ICsKPiA+PiArJChTVEFURURJUikv dGYtYS50YXJnZXRpbnN0YWxsOgo+ID4+ICsgICAgICAgQCQoY2FsbCB0YXJnZXRpbmZvKQo+ID4+ ICsgICAgICAgQCQoY2FsbCB0b3VjaCkKPiA+PiArCj4gPj4gKyMgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQo+ID4+ICsjIENsZWFuCj4gPj4gKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4+ICsKPiA+PiAr JChTVEFURURJUikvdGYtYS5jbGVhbjoKPiA+PiArICAgICAgIEAkKGNhbGwgdGFyZ2V0aW5mbykK PiA+PiArICAgICAgIEAkKGNhbGwgY2xlYW5fcGtnLCBURl9BKQo+ID4+ICsgICAgICAgQHJtIC1m ICQoSU1BR0VESVIpL2JsMS5iaW4gJChJTUFHRURJUikvZmlwLmJpbgo+ID4KPiA+IFRoaXMgc2hv dWxkIHByb2JhYmx5IHJlbW92ZSB3aGF0ZXZlciB3YXMgaW5zdGFsbGVkIGluIHRhcmdldGluc3Rh bGwKPiA+IChURl9BX0FSVElGQUNUUykKPiA+IGluc3RlYWQgb2YgImJsMS5iaW4iIGFuZCAiZmlw LmJpbiIuCj4KPiBUaGFua3MuIFdpbGwgYmUgZml4ZWQuCj4KPiA+Cj4gPiBHdWlsbGVybW8KPiA+ Cj4KPgo+IC0tCj4gUGVuZ3V0cm9uaXggZS5LLiAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKPiBTdGV1ZXJ3YWxkZXIgU3RyLiAyMSAgICAg ICAgICAgICAgICAgICAgICAgfCBodHRwczovL3d3dy5wZW5ndXRyb25peC5kZS8gfAo+IDMxMTM3 IEhpbGRlc2hlaW0sIEdlcm1hbnkgICAgICAgICAgICAgICAgICB8IFBob25lOiArNDktNTEyMS0y MDY5MTctMCAgICB8Cj4gQW10c2dlcmljaHQgSGlsZGVzaGVpbSwgSFJBIDI2ODYgICAgICAgICAg IHwgRmF4OiAgICs0OS01MTIxLTIwNjkxNy01NTU1IHwKCgoKLS0gCkd1aWxsZXJtbyBSb2RyaWd1 ZXogR2FyY2lhCmd1aWxsZS5yb2RyaWd1ZXpAZ21haWwuY29tCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwdHhkaXN0IG1haWxpbmcgbGlzdApwdHhkaXN0 QHBlbmd1dHJvbml4LmRlCg==