From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: MIME-Version: 1.0 References: <20200319163536.5669-1-a.fatoum@pengutronix.de> In-Reply-To: <20200319163536.5669-1-a.fatoum@pengutronix.de> From: Alex Vazquez Date: Tue, 31 Mar 2020 12:05:28 +0200 Message-ID: Subject: Re: [ptxdist] [PATCH v5] 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: Guillermo Rodriguez Garcia , Alexander Dahl , ptxdist@pengutronix.de, Michael Tretter SGksIGFsbCEKV2lsbCB0aGlzIGJlIG1lcmdlZCBmb3IgdGhlIG5ldyByZWxlYXNlIHB0eGRpc3Qt MjAyMC4wNC4wICA/CgpUaGFua3MhIQoKRWwganVlLiwgMTkgbWFyLiAyMDIwIGEgbGFzIDE3OjM1 LCBBaG1hZCBGYXRvdW0KKDxhLmZhdG91bUBwZW5ndXRyb25peC5kZT4pIGVzY3JpYmnDszoKPgo+ IFRydXN0ZWQgRmlybXdhcmUtQSAoVEYtQSkgaXMgYSByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24g b2Ygc2VjdXJlIHdvcmxkCj4gc29mdHdhcmUgZm9yIEFybSBBLVByb2ZpbGUgYXJjaGl0ZWN0dXJl cyAoQXJtdjgtQSBhbmQgQXJtdjctQSkuCj4KPiBUZXN0ZWQtYnk6IE1pY2hhZWwgVHJldHRlciA8 bS50cmV0dGVyQHBlbmd1dHJvbml4LmRlPgo+IFNpZ25lZC1vZmYtYnk6IFJvdXZlbiBDemVyd2lu c2tpIDxyb3V2ZW5AY3plcndpbnNraXMuZGU+Cj4gU2lnbmVkLW9mZi1ieTogQWhtYWQgRmF0b3Vt IDxhLmZhdG91bUBwZW5ndXRyb25peC5kZT4KPiAtLS0KPiB2NCAtPiB2NToKPiAgIC0gc2VsZWN0 IEhPU1RfRFRDIGJlY2F1c2Ugc29tZSBwbGF0Zm9ybXMgbGlrZSBzdG0zMm1wIHJlcXVpcmUgaXQK PiAgICAgKEFsZXhhbmRlciBEYWhsKQo+IHYzIC0+IHY0Ogo+ICAgLSBGaXhlZCBsaWNlbnNlIHN0 YXRlbWVudCAoUm9sYW5kLCBQaGlsaXBwKQo+ICAgLSBGaXhlZCB0eXBvIGluIEtjb25maWcgZGVz Y3JpcHRpb24gc3RyaW5nIChQaGlsaXBwKQo+ICAgLSBSZW1vdmUgY29tbWVudGVkIG91dCBURl9B X0RFQlVHIChQaGlsaXBwLCBtb2wpCj4gICAtIEFkZGVkIG5vbi1jb21tZW50ZWQgb3V0IFRGX0Ff UkVMQVNFIChteXNlbGYpCj4gICAtIEFkZGVkIE1pY2hhZWwgVHJldHRlcidzIFRlc3RlZC1ieQo+ IHYyIC0+IHYzOgo+ICAgLSBzb3J0ZWQgdmVyc2lvbiBhbmQgbWQ1IEtjb25maWcgb3B0aW9ucyB0 byB0b3AgKG1vbCkKPiAgIC0gQWRkZWQgdHJhaWxpbmcgc3BhY2VzIHRvIGFsaWduIGFycm93IGFm dGVyIG1haW4gcHJvbXB0IChtb2wpCj4gICAtIENoYW5nZWQgVEZfQV9WRVJTSU9OIGhlbHAgdGV4 dCB0byBpbmRpY2F0ZSB0aGF0IHRoZSB2ZXJzaW9uIGNhbiBiZSBhbnkKPiAgICAgZ2l0IGNvbW1p dHNoCj4gICAtIFJlbW92ZWQgZGVmYXVsdCB2YWx1ZSBmb3IgVEZfQV9BUlRJRkFDVFMgKG1vbCkK PiAgIC0gaW50ZWdyYXRlZCBURl9BX1ZFUlNJT04gaW50byBCVUlMRF9TVFJJTkcgb2YgcmVzdWx0 aW5nIGFydGlmYWN0cwo+ICAgICAoR3VpbGxlcm1vLCBtdHIpCj4gICAtIHVuY29uZGl0aW9uYWwg ZXJyb3IgaWYgVEZfQV9BUlRJRkFDVFMgaXMgZW1wdHkgaW5zdGVhZCBvZiB3YXJuaW5nIGxhdGVy IG9uCj4gICAgIChtb2wpCj4gICAtIHJlbW92ZWQgZGlwbGljYXRlIFByZXBhcmUgaGVhZGVyICht b2wpCj4gICAtIHJlc29ydGVkIG1ha2UgdmFyaWFibGUgZGVmaW5pdGlvbnMKPiAgIC0gYXZvaWQg dW5wb3J0YWJsZSBpbnN0YWxsIC0tdGFyZ2V0LWRpcmVjdG9yeSAoR3VpbGxlcm1vKQo+ICAgLSBk b2N1bWVudGVkIHN1cHBvcnQgZm9yIGdsb2JiaW5nIGluIFRGX0FfQVJUSUZBQ1RTCj4gICAtIGRv bid0IGdsb2IgZGVsZXRlIGluIElNQUdFRElSLCBpbnN0ZWFkIGV4cGFuZCB0aGUgZ2xvYiBpbiB0 aGUgYnVpbGQKPiAgICAgZGlyZWN0b3J5IGZpcnN0Cj4gdjEgLT4gdjI6Cj4gICAtIE1hZGUgVEZf QV9BUkNIX01BSk9SIGNvbmZpZ3VyYWJsZSB0byBzdXBwb3J0IDMyIGJpdCBBUk12OCAoR3VpbGxl cm1vKQo+ICAgLSBSZXBsYWNlcyBzdG0zMm1wLXNwZWNpZmljIFRGX0FfRFRCIHdpdGggVEZfQV9F WFRSQV9BUkdTIHRvIGNvbnRhaW4KPiAgICAgYWxsIGJvYXJkL3ZlbmRvciBzcGVjaWZpYyBvcHRp b25zCj4gICAtIHJlbW92ZWQgcmVmZXJlbmNlIHRvIG5vIGxvbmdlciBleGlzdGluZyBDUkVESVRT IGZpbGUKPiAgIC0gcmVtb3ZlZCBURl9BX01BS0VfT1BUIGNvbnRlbnRzIHRoYXQgYXJlIHNldCBl bHNld2hlcmUKPiAgIC0gcmVkdWNlZCB1c2VzIG9mICs9IGluIGZhdm9yIG9mIGRpcmVjdGx5IGFw cGVuZGluZyB0byB0aGUgc3RyaW5nCj4gICAtIGRlbGV0ZSBvbGQgYnVpbGQgZGlyZWN0b3J5IGlu IHByZXBhcmUgaW5zdGVhZCBvZiBjb21waWxlCj4gICAtIHVzZSBkZWZhdWx0IGNvbXBpbGUgc3Rh Z2UgKEd1aWxsZXJtbykKPiAgIC0gaW5zdGFsbCBhcnRpZmFjdHMgdG8gc3lzcm9vdCAvdXNyL2xp Yi9maXJtd2FyZSBpbiBpbnN0YWxsIHN0YWdlCj4gICAtIGluc3RhbGwgYXJ0aWZhY3RzIHRvIElN QUdFRElSIGluIHRhcmdldGluc3RhbGwKPiAgIC0gZml4IGNsZWFuIHN0YWdlIHRvIGRlbGV0ZSBw cm9wZXIgYXJ0aWZhY3RzCj4KPiBDYzogQWxlamFuZHJvIFZhenF1ZXogPGF2YXpxdWV6LmRldkBn bWFpbC5jb20+Cj4gQ2M6IEd1aWxsZXJtbyBSb2RyaWd1ZXogR2FyY2lhIDxndWlsbGUucm9kcmln dWV6QGdtYWlsLmNvbT4KPiBDYzogQWxleGFuZGVyIERhaGwgPHBvc3RAbGVzcG9ja3kuZGU+Cj4g LS0tCj4gIHBsYXRmb3Jtcy90Zi1hLmluIHwgMTQxICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKPiAgcnVsZXMvdGYtYS5tYWtlICAgfCAxMjIgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIDIgZmlsZXMgY2hhbmdlZCwgMjYzIGlu c2VydGlvbnMoKykKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHBsYXRmb3Jtcy90Zi1hLmluCj4gIGNy ZWF0ZSBtb2RlIDEwMDY0NCBydWxlcy90Zi1hLm1ha2UKPgo+IGRpZmYgLS1naXQgYS9wbGF0Zm9y bXMvdGYtYS5pbiBiL3BsYXRmb3Jtcy90Zi1hLmluCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBp bmRleCAwMDAwMDAwMDAwMDAuLmJhMDRmNDRiZTUyNgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9w bGF0Zm9ybXMvdGYtYS5pbgo+IEBAIC0wLDAgKzEsMTQxIEBACj4gKyMjIFNFQ1RJT049Ym9vdGxv YWRlcgo+ICsKPiArbWVudWNvbmZpZyBURl9BCj4gKyAgICAgICBzZWxlY3QgQk9PVExPQURFUgo+ ICsgICAgICAgc2VsZWN0IEhPU1RfRFRDCj4gKyAgICAgICBwcm9tcHQgIkFSTSBUcnVzdGVkIEZp cm13YXJlLUEgICAgICAgICIKPiArICAgICAgIGRlcGVuZHMgb24gQVJDSF9BUk0gfHwgQVJDSF9B Uk02NAo+ICsgICAgICAgYm9vbAo+ICsKPiAraWYgVEZfQQo+ICsKPiArY29uZmlnIFRGX0FfVkVS U0lPTgo+ICsgICAgICAgc3RyaW5nCj4gKyAgICAgICBkZWZhdWx0ICJ2Mi4yIgo+ICsgICAgICAg cHJvbXB0ICJURi1BIHZlcnNpb24iCj4gKyAgICAgICBoZWxwCj4gKyAgICAgICAgIEVudGVyIHRo ZSBURi1BIGdpdCBjb21taXQtaXNoIHlvdSB3YW50IHRvIGJ1aWxkLiBVc3VhbGx5IGEgdGFnZ2Vk Cj4gKyAgICAgICAgIHJlbGVhc2UgbGlrZSAidjIuMiIKPiArCj4gK2NvbmZpZyBURl9BX01ENQo+ ICsgICAgICAgc3RyaW5nCj4gKyAgICAgICBkZWZhdWx0ICJiYjMwMGU1YTYyYzkxMWUxODljODBk OTM1ZDQ5N2E0YiIKPiArICAgICAgIHByb21wdCAiVEYtQSBzb3VyY2UgbWQ1Igo+ICsKPiArY29u ZmlnIFRGX0FfQVJDSF9TVFJJTkcKPiArICAgICAgICBzdHJpbmcKPiArICAgICAgICBkZWZhdWx0 ICJhYXJjaDMyIiBpZiBBUkNIX0FSTQo+ICsgICAgICAgIGRlZmF1bHQgImFhcmNoNjQiIGlmIEFS Q0hfQVJNNjQKPiArCj4gK2Nob2ljZQo+ICsgICAgICAgcHJvbXB0ICJURi1BIEFyY2hpdGVjdHVy ZSIKPiArICAgICAgIGRlZmF1bHQgVEZfQV9BUk1fQVJDSF9NQUpPUl83IGlmIEFSQ0hfQVJNCj4g KyAgICAgICBkZWZhdWx0IFRGX0FfQVJNX0FSQ0hfTUFKT1JfOCBpZiBBUkNIX0FSTTY0Cj4gKyAg ICAgICBoZWxwCj4gKyAgICAgICAgIEFyY2hpdGVjdHVyZSB2ZXJzaW9uIG1ham9yIG51bWJlcgo+ ICsKPiArICAgICAgIGNvbmZpZyBURl9BX0FSTV9BUkNIX01BSk9SXzcKPiArICAgICAgICAgICAg ICAgZGVwZW5kcyBvbiBBUkNIX0FSTQo+ICsgICAgICAgICAgICAgICBwcm9tcHQgIkFSTXY3Igo+ ICsgICAgICAgICAgICAgICBib29sCj4gKwo+ICsgICAgICAgY29uZmlnIFRGX0FfQVJNX0FSQ0hf TUFKT1JfOF8zMl9CSVQKPiArICAgICAgICAgICAgICAgZGVwZW5kcyBvbiBBUkNIX0FSTQo+ICsg ICAgICAgICAgICAgICBwcm9tcHQgIkFSTXY4IDMyLWJpdCIKPiArICAgICAgICAgICAgICAgYm9v bAo+ICsKPiArICAgICAgIGNvbmZpZyBURl9BX0FSTV9BUkNIX01BSk9SXzgKPiArICAgICAgICAg ICAgICAgZGVwZW5kcyBvbiBBUkNIX0FSTTY0Cj4gKyAgICAgICAgICAgICAgIHByb21wdCAiQVJN djgiCj4gKyAgICAgICAgICAgICAgIGJvb2wKPiArCj4gK2VuZGNob2ljZQo+ICsKPiArY29uZmln IFRGX0FfQVJNX0FSQ0hfTUFKT1IKPiArICAgICAgICBpbnQKPiArICAgICAgICBkZWZhdWx0IDcg aWYgVEZfQV9BUk1fQVJDSF9NQUpPUl83Cj4gKyAgICAgICAgZGVmYXVsdCA4IGlmIFRGX0FfQVJN X0FSQ0hfTUFKT1JfOF8zMl9CSVQKPiArICAgICAgICBkZWZhdWx0IDggaWYgVEZfQV9BUk1fQVJD SF9NQUpPUl84Cj4gKwo+ICsKPiArY29uZmlnIFRGX0FfUExBVEZPUk0KPiArICAgICAgIHN0cmlu Zwo+ICsgICAgICAgcHJvbXB0ICJURi1BIHRhcmdldCBwbGF0Zm9ybSIKPiArICAgICAgIGhlbHAK PiArICAgICAgICAgVGhlIFRGLUEgdGFyZ2V0IHBsYXRmb3JtLgo+ICsKPiArY29uZmlnIFRGX0Ff QVJNX0FSQ0hfTUlOT1IKPiArICAgICAgIGRlcGVuZHMgb24gVEZfQV9BUk1fQVJDSF9NQUpPUl84 IHx8IFRGX0FfQVJNX0FSQ0hfTUFKT1JfOF8zMl9CSVQKPiArICAgICAgIGludAo+ICsgICAgICAg ZGVmYXVsdCAwCj4gKyAgICAgICBwcm9tcHQgIlRGLUEgdGFyZ2V0IEFSTXY4Lk1JTk9SIHZlcnNp b24iCj4gKyAgICAgICBoZWxwCj4gKyAgICAgICAgIFRoZSBtaW5vciB2ZXJzaW9uIG9mIHRoZSBB Uk12OCBhcmNoaXRlY3R1cmUgdGFyZ2V0ZWQuIERlZmF1bHRzIHRvIDAuCj4gKwo+ICtjb25maWcg VEZfQV9FWFRSQV9BUkdTCj4gKyAgICAgICBzdHJpbmcKPiArICAgICAgIHByb21wdCAiVEYtQSBl eHRyYSBidWlsZCBhcmd1bWVudHMiCj4gKyAgICAgICBoZWxwCj4gKyAgICAgICAgIEV4dHJhIHBs YXRmb3JtLXNwZWNpZmljIGJ1aWxkIGFyZ3VtZW50cyB0byBwYXNzIHRvIHRoZSBURi1BIGJ1aWxk Cj4gKyAgICAgICAgIHByb2Nlc3MsIGUuZy4gRFRCX0ZJTEVfTkFNRT0gZm9yIHRoZSBzdG0zMm1w MQo+ICsKPiArY29uZmlnIFRGX0FfQVJUSUZBQ1RTCj4gKyAgICAgICBzdHJpbmcKPiArICAgICAg IHByb21wdCAiVEYtQSBhcnRpZmFjdCBmaWxlIG5hbWVzIgo+ICsgICAgICAgaGVscAo+ICsgICAg ICAgICBBIHNwYWNlLXNlcGFyYXRlZCBsaXN0IG9mIGdsb2IgcGF0dGVybnMgb2YgYXJ0aWZhY3Rz IHRvIGNvcHkgZnJvbSB0aGUKPiArICAgICAgICAgYnVpbGQgZGlyZWN0b3J5Lgo+ICsgICAgICAg ICBBbGwgZmlsZSBuYW1lcyBhcmUgcmVsYXRpdmUgdG8gdGhlIGFwcHJvcHJpYXRlIFRGLUEgcGxh dGZvcm0gYnVpbGQKPiArICAgICAgICAgZGlyZWN0b3J5Lgo+ICsKPiArY29tbWVudCAiUGF5bG9h ZHMiCj4gKwo+ICtjaG9pY2UKPiArICAgICAgIHByb21wdCAiQkwzMiBQYXlsb2FkIgo+ICsgICAg ICAgZGVmYXVsdCBURl9BX0JMMzJfTk9ORQo+ICsgICAgICAgaGVscAo+ICsgICAgICAgICBwYXls b2FkIGZvciBCTDMyIChTZWN1cmUgV29ybGQgT1MpCj4gKwo+ICsgICAgICAgY29uZmlnIFRGX0Ff QkwzMl9OT05FCj4gKyAgICAgICAgICAgICAgIHByb21wdCAiTm9uZSIKPiArICAgICAgICAgICAg ICAgYm9vbAo+ICsKPiArICAgICAgIGNvbmZpZyBURl9BX0JMMzJfU1BfTUlOCj4gKyAgICAgICAg ICAgICAgIGRlcGVuZHMgb24gQVJDSF9BUk0KPiArICAgICAgICAgICAgICAgcHJvbXB0ICJzcF9t aW4iCj4gKyAgICAgICAgICAgICAgIGJvb2wKPiArCj4gKyAgICAgICBjb25maWcgVEZfQV9CTDMy X1RTUAo+ICsgICAgICAgICAgICAgICBkZXBlbmRzIG9uIEFSQ0hfQVJNNjQKPiArICAgICAgICAg ICAgICAgcHJvbXB0ICJUZXN0IFNlY3VyZSBQYXlsb2FkIgo+ICsgICAgICAgICAgICAgICBib29s Cj4gKwo+ICtlbmRjaG9pY2UKPiArCj4gK2lmIFRGX0FfQkwzMl9UU1AKPiArY2hvaWNlIFRGX0Ff QkwzMl9UU1BfUkFNX0xPQ0FUSU9OCj4gKyAgICAgICBwcm9tcHQgIlRTUCBsb2NhdGlvbiIKPiAr ICAgICAgIGRlZmF1bHQgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fVFNSQU0KPiArCj4gKyAg ICAgICBjb25maWcgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fVFNSQU0KPiArICAgICAgICAg ICAgICAgcHJvbXB0ICJUcnVzdGVkIFNSQU0iCj4gKyAgICAgICAgICAgICAgIGJvb2wKPiArCj4g KyAgICAgICBjb25maWcgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fVERSQU0KPiArICAgICAg ICAgICAgICAgcHJvbXB0ICJUcnVzdGVkIERSQU0gKGlmIGF2YWlsYWJsZSkiCj4gKyAgICAgICAg ICAgICAgIGJvb2wKPiArCj4gKyAgICAgICBjb25maWcgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJ T05fRFJBTQo+ICsgICAgICAgICAgICAgICBwcm9tcHQgIlNlY3VyZSBEUkFNIHJlZ2lvbiAoY29u ZmlndXJlZCBieSBUcnVzdFpvbmUgY29udHJvbGxlcikiCj4gKyAgICAgICAgICAgICAgIGJvb2wK PiArZW5kY2hvaWNlCj4gKwo+ICtjb25maWcgVEZfQV9CTDMyX1RTUF9SQU1fTE9DQVRJT05fU1RS SU5HCj4gKyAgICAgICAgc3RyaW5nCj4gKyAgICAgICAgZGVmYXVsdCAidHNyYW0iIGlmIFRGX0Ff QkwzMl9UU1BfUkFNX0xPQ0FUSU9OX1RTUkFNCj4gKyAgICAgICAgZGVmYXVsdCAidGRyYW0iIGlm IFRGX0FfQkwzMl9UU1BfUkFNX0xPQ0FUSU9OX1REUkFNCj4gKyAgICAgICAgZGVmYXVsdCAiZHJh bSIgIGlmIFRGX0FfQkwzMl9UU1BfUkFNX0xPQ0FUSU9OX0RSQU0KPiArCj4gK2VuZGlmCj4gKwo+ ICtlbmRpZgo+IGRpZmYgLS1naXQgYS9ydWxlcy90Zi1hLm1ha2UgYi9ydWxlcy90Zi1hLm1ha2UK PiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAwMC4uM2JhNWNhMjc1MDUw Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL3J1bGVzL3RmLWEubWFrZQo+IEBAIC0wLDAgKzEsMTIy IEBACj4gKyMgLSotbWFrZWZpbGUtKi0KPiArIwo+ICsjIENvcHlyaWdodCAoQykgMjAxOCBieSBS b3V2ZW4gQ3plcndpbnNraSA8ci5jemVyd2luc2tpQHBlbmd1dHJvbml4LmRlPgo+ICsjICAgICAg ICAgICAgICAgMjAxOSBieSBBaG1hZCBGYXRvdW0gPGEuZmF0b3VtQHBlbmd1dHJvbml4LmRlPgo+ ICsjCj4gKyMgRm9yIGZ1cnRoZXIgaW5mb3JtYXRpb24gYWJvdXQgdGhlIFBUWGRpc3QgcHJvamVj dCBhbmQgbGljZW5zZSBjb25kaXRpb25zCj4gKyMgc2VlIHRoZSBSRUFETUUgZmlsZS4KPiArIwo+ ICsKPiArIwo+ICsjIFdlIHByb3ZpZGUgdGhpcyBwYWNrYWdlCj4gKyMKPiArUEFDS0FHRVMtJChQ VFhDT05GX1RGX0EpICs9IHRmLWEKPiArCj4gKyMKPiArIyBQYXRocyBhbmQgbmFtZXMKPiArIwo+ ICtURl9BX1ZFUlNJT04gICA6PSAkKGNhbGwgcmVtb3ZlX3F1b3RlcywkKFBUWENPTkZfVEZfQV9W RVJTSU9OKSkKPiArVEZfQV9NRDUgICAgICAgOj0gJChjYWxsIHJlbW92ZV9xdW90ZXMsJChQVFhD T05GX1RGX0FfTUQ1KSkKPiArVEZfQSAgICAgICAgICAgOj0gdGYtYS0kKFRGX0FfVkVSU0lPTikK PiArVEZfQV9TVUZGSVggICAgOj0gdGFyLmd6Cj4gK1RGX0FfVVJMICAgICAgIDo9IGh0dHBzOi8v Z2l0LnRydXN0ZWRmaXJtd2FyZS5vcmcvVEYtQS90cnVzdGVkLWZpcm13YXJlLWEuZ2l0L3NuYXBz aG90LyQoVEZfQV9WRVJTSU9OKS4kKFRGX0FfU1VGRklYKQo+ICtURl9BX1NPVVJDRSAgICA6PSAk KFNSQ0RJUikvJChURl9BKS4kKFRGX0FfU1VGRklYKQo+ICtURl9BX0RJUiAgICAgICA6PSAkKEJV SUxERElSKS8kKFRGX0EpCj4gK1RGX0FfTElDRU5TRSAgICA6PSBCU0QtMy1DbGF1c2UgQU5EIEJT RC0yLUNsYXVzZSBcCj4gKyAgICAgICAgICAgICAgICAgIEFORCAoR1BMLTIuMC1vci1sYXRlciBP UiBCU0QtMi1DbGF1c2UpIFwKPiArICAgICAgICAgICAgICAgICAgQU5EIChOQ1NBIE9SIE1JVCkg XAo+ICsgICAgICAgICAgICAgICAgICBBTkQgWmxpYiBcCj4gKyAgICAgICAgICAgICAgICAgIEFO RCAoR1BMLTIuMC1vci1sYXRlciBPUiBCU0QtMy1DbGF1c2UpCj4gKwo+ICsjIC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KPiArIyBQcmVwYXJlCj4gKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICsKPiArVEZf QV9XUkFQUEVSX0JMQUNLTElTVCA6PSBcCj4gKyAgICAgICBUQVJHRVRfSEFSREVOX1JFTFJPIFwK PiArICAgICAgIFRBUkdFVF9IQVJERU5fQklORE5PVyBcCj4gKyAgICAgICBUQVJHRVRfSEFSREVO X1BJRSBcCj4gKyAgICAgICBUQVJHRVRfREVCVUcgXAo+ICsgICAgICAgVEFSR0VUX0JVSUxEX0lE Cj4gKwo+ICtURl9BX1JFTEVBU0UgOj0gMQo+ICsKPiArVEZfQV9QQVRIICAgICAgOj0gUEFUSD0k KENST1NTX1BBVEgpCj4gK1RGX0FfTUFLRV9PUFQgIDo9IFwKPiArICAgICAgIENST1NTX0NPTVBJ TEU9JChCT09UTE9BREVSX0NST1NTX0NPTVBJTEUpIFwKPiArICAgICAgIEhPU1RDQz0kKEhPU1RD QykgXAo+ICsgICAgICAgUExBVD0kKFBUWENPTkZfVEZfQV9QTEFURk9STSkgXAo+ICsgICAgICAg REVCVUc9JChpZiAkKGZpbHRlciAxLCQoVEZfQV9SRUxFQVNFKSksMCwxKSBcCj4gKyAgICAgICBB UkNIPSQoUFRYQ09ORl9URl9BX0FSQ0hfU1RSSU5HKSBcCj4gKyAgICAgICBBUk1fQVJDSF9NQUpP Uj0kKFBUWENPTkZfVEZfQV9BUk1fQVJDSF9NQUpPUikgXAo+ICsgICAgICAgQlVJTERfU1RSSU5H PSQoUFRYQ09ORl9URl9BX1ZFUlNJT04pIFwKPiArICAgICAgICQoY2FsbCByZW1vdmVfcXVvdGVz LCQoUFRYQ09ORl9URl9BX0VYVFJBX0FSR1MpKSBcCj4gKyAgICAgICBhbGwKPiArCj4gK2lmZGVm IFBUWENPTkZfVEZfQV9CTDMyX1RTUAo+ICtURl9BX01BS0VfT1BUICs9IEFSTV9UU1BfUkFNX0xP Q0FUSU9OPSQoUFRYQ09ORl9URl9BX0JMMzJfVFNQX1JBTV9MT0NBVElPTl9TVFJJTkcpCj4gK2Vu ZGlmCj4gK2lmZGVmIFBUWENPTkZfVEZfQV9BUk1fQVJDSF9NSU5PUgo+ICtURl9BX01BS0VfT1BU ICs9IEFSTV9BUkNIX01JTk9SPSQoUFRYQ09ORl9URl9BX0FSTV9BUkNIX01JTk9SKQo+ICtlbmRp Zgo+ICtpZmRlZiBQVFhDT05GX1RGX0FfQkwzMl9TUF9NSU4KPiArVEZfQV9NQUtFX09QVCArPSBB QVJDSDMyX1NQPXNwX21pbgo+ICtlbmRpZgo+ICsKPiAraWZkZWYgUFRYQ09ORl9URl9BCj4gK2lm ZXEgKCQoUFRYQ09ORl9URl9BX0FSVElGQUNUUyksKQo+ICskKGVycm9yIFRGX0FfQVJUSUZBQ1RT IGlzIGVtcHR5LiBub3RoaW5nIHRvIGluc3RhbGwuKQo+ICtlbmRpZgo+ICtlbmRpZgo+ICsKPiAr VEZfQV9DT05GX1RPT0wgOj0gTk8KPiArCj4gKyQoU1RBVEVESVIpL3RmLWEucHJlcGFyZToKPiAr ICAgICAgIEAkKGNhbGwgdGFyZ2V0aW5mbykKPiArICAgICAgIEBybSAtcmYgJChURl9BX0RJUikv YnVpbGQvCj4gKyAgICAgICBAJChjYWxsIHRvdWNoKQo+ICsKPiArIyAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCj4gKyMgQ29tcGlsZQo+ICsjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiArCj4gK1RGX0FfTUFL RV9FTlYgIDo9ICQoQ1JPU1NfRU5WKQo+ICsKPiArIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gKyMg SW5zdGFsbAo+ICsjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiArCj4gK1RGX0FfQlVJTERfT1VUUFVU X0RJUiA6PSAkKFRGX0FfRElSKS9idWlsZC8kKGNhbGwgcmVtb3ZlX3F1b3RlcywgXAo+ICsgICAg ICAgJChQVFhDT05GX1RGX0FfUExBVEZPUk0pKS8kKGlmICQoZmlsdGVyIDEsJChURl9BX1JFTEVB U0UpKSxyZWxlYXNlLGRlYnVnKQo+ICtURl9BX0FSVElGQUNUU19TUkMgPSAkKHdpbGRjYXJkICQo YWRkcHJlZml4ICQoVEZfQV9CVUlMRF9PVVRQVVRfRElSKS8sIFwKPiArICAgICAgICQoY2FsbCBy ZW1vdmVfcXVvdGVzLCQoUFRYQ09ORl9URl9BX0FSVElGQUNUUykpKSkKPiArVEZfQV9BUlRJRkFD VFNfREVTVCA9ICQoc3Vic3QgJChURl9BX0JVSUxEX09VVFBVVF9ESVIpLywsJChURl9BX0FSVElG QUNUU19TUkMpKQo+ICsKPiArJChTVEFURURJUikvdGYtYS5pbnN0YWxsOgo+ICsgICAgICAgQCQo Y2FsbCB0YXJnZXRpbmZvKQo+ICsgICAgICAgQCQoZm9yZWFjaCBhcnRpZmFjdCwgJChURl9BX0FS VElGQUNUU19TUkMpLCBcCj4gKyAgICAgICAgICAgICAgIGluc3RhbGwgLXYgLUQgLW0gNjQ0ICQo YXJ0aWZhY3QpIFwKPiArICAgICAgICAgICAgICAgJChURl9BX1BLR0RJUikvdXNyL2xpYi9maXJt d2FyZS8kKG5vdGRpciAkKGFydGlmYWN0KSkkKHB0eC9ubCkpCj4gKyAgICAgICBAJChjYWxsIHRv dWNoKQo+ICsKPiArIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gKyMgVGFyZ2V0LUluc3RhbGwKPiAr IyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gKwo+ICskKFNUQVRFRElSKS90Zi1hLnRhcmdldGluc3Rh bGw6Cj4gKyAgICAgICBAJChjYWxsIHRhcmdldGluZm8pCj4gKyAgICAgICBAJChmb3JlYWNoIGFy dGlmYWN0LCAkKFRGX0FfQVJUSUZBQ1RTX1NSQyksIFwKPiArICAgICAgICAgICAgICAgaW5zdGFs bCAtdiAtRCAtbSA2NDQgJChhcnRpZmFjdCkgXAo+ICsgICAgICAgICAgICAgICAkKElNQUdFRElS KS8kKG5vdGRpciAkKGFydGlmYWN0KSkkKHB0eC9ubCkpCj4gKyAgICAgICBAJChjYWxsIHRvdWNo KQo+ICsKPiArIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gKyMgQ2xlYW4KPiArIyAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCj4gKwo+ICskKFNUQVRFRElSKS90Zi1hLmNsZWFuOgo+ICsgICAgICAgQCQoY2Fs bCB0YXJnZXRpbmZvKQo+ICsgICAgICAgQHJtIC1mICQoYWRkcHJlZml4ICQoSU1BR0VESVIpLywg JChURl9BX0FSVElGQUNUU19ERVNUKSkKPiArICAgICAgIEAkKGNhbGwgY2xlYW5fcGtnLCBURl9B KQo+ICsKPiArIyB2aW06IHN5bnRheD1tYWtlCj4gLS0KPiAyLjI1LjEKPgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KcHR4ZGlzdCBtYWlsaW5nIGxpc3QK cHR4ZGlzdEBwZW5ndXRyb25peC5kZQo=