From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Agner Date: Wed, 05 Apr 2017 11:20:43 -0700 Subject: [U-Boot] [PATCH 0/3] imx: bootaux elf firmware support In-Reply-To: <20170405171506.64c9ec8e@jawa> References: <20170329195827.6217-1-stefan@agner.ch> <20170403132024.514307fd@jawa> <0d0cd2362362fb2029e46821678f2f8b@agner.ch> <20170404102318.68ba4166@jawa> <20170405171506.64c9ec8e@jawa> Message-ID: <4b627baf53db77c1ef85a916e986e148@agner.ch> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="windows-1254" Content-Transfer-Encoding: base64 To: u-boot@lists.denx.de T24gMjAxNy0wNC0wNSAwODoxNSwgTHVrYXN6IE1hamV3c2tpIHdyb3RlOgo+IEhpIFN0ZWZhbiwK PiAKPj4gT24gMjAxNy0wNC0wNCAwMToyMywgTHVrYXN6IE1hamV3c2tpIHdyb3RlOgo+PiA+IEhp IFN0ZWZhbiwKPj4gPgo+PiA+PiBIaSBMdWthc3osCj4+ID4+Cj4+ID4+IE9uIDIwMTctMDQtMDMg MDQ6MjAsIEx1a2FzeiBNYWpld3NraSB3cm90ZToKPj4gPj4gPiBIaSBTdGVmYW4sCj4+ID4+ID4K Pj4gPj4gPiBUaGFua3MgZm9yIHlvdXIgcGF0Y2guIFBsZWFzZSBhbGxvdyBtZSB0byBzaGFyZSBz b21lIGlkZWFzIGZvcgo+PiA+PiA+IGltcHJvdmVtZW50cy4KPj4gPj4gPgo+PiA+PiA+PiBGcm9t OiBTdGVmYW4gQWduZXIgPHN0ZWZhbi5hZ25lckB0b3JhZGV4LmNvbT4KPj4gPj4gPj4KPj4gPj4g Pj4gVGhpcyBwYXRjaHNldCBlbmFibGVzIHRvIGJvb3QgZWxmIGJpbmFyaWVzIG9uIHNlY29uZGFy eSBDb3J0ZXgtTQo+PiA+PiA+PiBjbGFzcyBjb3JlcyBhdmFpbGFibGUgb24gaS5NWCA2U29sb1gv N1NvbG8vN0R1YWwuIFRoaXMgbWFrZXMKPj4gPj4gPj4gaGFuZGxpbmcgYW5kIGxvYWRpbmcgZmly bXdhcmVzIG11Y2ggbW9yZSBjb252aW5pZW50IHNpbmNlIGFsbAo+PiA+PiA+PiBpbmZvcm1hdGlv biB3aGVyZSB0aGUgZmlybXdhcmUgaGFzIHRvIGJlIGxvYWRlZCB0byBpcyBjb250YWluZWQKPj4g Pj4gPj4gaW4gdGhlIGVsZiBoZWFkZXJzLiBBIHR5cGljYWwgdXNhZ2UgbG9va3MgbGlrZSB0aGlz Ogo+PiA+PiA+Pgo+PiA+PiA+PiAgIENvbGlicmkgaU1YNyAjIHRmdHAgJHtsb2FkYWRkcn0gZmly bXdhcmUuZWxmICYmIGJvb3RhdXgKPj4gPj4gPj4gJHtsb2FkYWRkcn0gVXNpbmcgRkVDMCBkZXZp Y2UKPj4gPj4gPj4gICBURlRQIGZyb20gc2VydmVyIDE5Mi4xNjguMTAuMTsgb3VyIElQIGFkZHJl c3MgaXMgMTkyLjE2OC4xMC4yCj4+ID4+ID4+ICAgRmlsZW5hbWUgJ2Zpcm13YXJlLmVsZicuCj4+ ID4+ID4+ICAgTG9hZCBhZGRyZXNzOiAweDgwODAwMDAwCj4+ID4+ID4+ICAgTG9hZGluZzogIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPj4gPj4gPj4g ODguMyBLaUIgNS40IE1pQi9zCj4+ID4+ID4+ICAgZG9uZQo+PiA+PiA+PiAgIEJ5dGVzIHRyYW5z ZmVycmVkID0gOTA0MjQgKDE2MTM4IGhleCkKPj4gPj4gPj4gICAjIyBTdGFydGluZyBhdXhpbGlh cnkgY29yZSBhdCAweDFGRkY4MzExIC4uLgo+PiA+PiA+PiAgIENvbGlicmkgaU1YNyAjCj4+ID4+ ID4KPj4gPj4gPiBJIGNhbiBmaW5kIHNvbWUgb3RoZXIgcGxhdGZvcm1zIChub3Qgb25seSBJTVgp LCB3aGljaCB3b3VsZAo+PiA+PiA+IGJlbmVmaXQgZnJvbSB0aGlzIGNvZGUgLSB0aGUgZ2VuZXJp YyAnYm9vdGF1eCcgY29tbWFuZC4KPj4gPj4gPgo+PiA+PiA+IE9uZSBnb29kIGV4YW1wbGUgd291 bGQgdG8gYWxsb3cgbXVsdGlwbGUgYmluYXJpZXMgZm9yIGRpZmZlcmVudAo+PiA+PiA+IFNvQyBD b3JlcyAoZS5nLiAyeCBDb3J0ZXgtQTgpIHRvIGJlIGxvYWRlZCBhbmQgc3RhcnRlZCBieSB1LWJv b3QuCj4+ID4+ID4KPj4gPj4gPiBIZW5jZSwgSSdtIHdvbmRlcmluZyBpZiB5b3UgY291bGQgbWFr ZSB0aG9zZSBwYXRjaGVzIHVzYWJsZSBmb3IKPj4gPj4gPiBvdGhlciBwbGF0Zm9ybXMgYXMgd2Vs bD8KPj4gPj4KPj4gPj4gSSBkb24ndCB0aGluayB0aGF0IHRoaXMgaXMgYSBnb29kIGlkZWEuIGJv b3RhdXggaXMgbWVhbnQgZm9yCj4+ID4+IGF1eGlsaWFyeSBjb3Jlcywgd2hpY2ggb2Z0ZW4gdXNl IGEgZGlmZmVyZW50IGFyY2hpdGVjdHVyZSBhbmQgYXJlCj4+ID4+IG5vdCBjYWNoZSBjb2hlcmVu dCAoaGVuY2UgdGhlIGNhY2hlIGZsdXNoZXMpLgo+PiA+Cj4+ID4gSSBkbyByZW1lbWJlciwgdGhh dCBJIHNhdyBzaW1pbGFyICJ0aW55IiBwYXRjaCB0byBhZGQgImp1c3Qgb25lIgo+PiA+IGFkLWhv YyBjb21tYW5kIHRvIGRvIHRoZSBzYW1lIChjb25jZXB0dWFsbHkpIGZvciBUSSBTb0MgZmxvYXRp bmcgb24KPj4gPiB0aGUgdS1ib290IG1haWxpbmcgbGlzdC4KPj4gPgo+PiA+IFBsZWFzZSBjb3Jy ZWN0IG1lIGlmIEknbSB3cm9uZywgYnV0IGJvb3RhdXggaXMgSU1YIHNwZWNpZmljIGFuZCBkb2Vz Cj4+ID4gd29yaywgd2hpY2ggdmVyeSBsaWtlbHksIHdpbGwgYmUgYWxzbyByZXF1aXJlZCBieSBv dGhlciBTb0MgdmVuZG9ycwo+PiA+IChUSSdzIFNpdGFyYSBpcyBhbHNvIGVxdWlwcGVkIHdpdGgg Q29ydGV4LU00IGFuZCBQUlVTUykuCj4+Cj4+IGJvb3RhdXggaXMgY3VycmVudGx5IElNWCBzcGVj aWZpYywgYW5kIGl0cyBjdXJyZW50bHkgc3VwcG9ydGVkIGJpbmFyeQo+PiBmb3JtYXQgaXMgTS1j bGFzcyBzcGVjaWZpYy4KPj4KPj4gPgo+PiA+IFVuaWZpY2F0aW9uIG9mIHN1Y2ggZWZmb3J0IGNh biBzYXZlIHVzIGFsbCBhIGxvdCBvZiB0cm91YmxlIGluIGEKPj4gPiB2ZXJ5IG5lYXIgZnV0dXJl Lgo+Pgo+PiBJbiBPU1MsIHlvdSBkbyBub3QgZGV2ZWxvcCBmb3IgdGhlIGZ1dHVyZS4gSXQgZ2V0 cyBkZXZlbG9wZWQgd2hlbiBpdHMKPj4gaGVyZS4KPiAKPiBJIGNhbm5vdCBhZ3JlZSBoZXJlLiBX aGVuIHlvdSBwZXJjZWl2ZSB0aHJlYXQgdGhlbiB5b3UgcHJlcGFyZSBmb3IgaXQuCj4gCj4+Cj4+ ID4KPj4gPj4KPj4gPj4gT24gU01QIHN5c3RlbXMgdGhlIG1haW4gb3BlcmF0aW5nIHN5c3RlbSBu b3JtYWxseSBzdGFydHMgdGhlCj4+ID4+IHNlY29uZGFyeSBjb3JlLgo+PiA+Cj4+ID4gSSB0aGlu ayB0aGF0IHRoZXJlIGFyZSBzb21lIGNvbmNlcHR1YWwgc2ltaWxhcml0aWVzIGJldHdlZW4gbG9h ZGluZwo+PiA+IGNvZGUgdG8gU01QIGNvcmUgYW5kIENvcnRleCBNMy4gT2YgY291cnNlIHNvbWUg InR3ZWFrcyIgd291bGQgYmUKPj4gPiBuZWVkZWQuCj4+ID4KPj4KPj4gVGhlcmUgYXJlIGNvbmNl cHR1YWwgc2ltaWxhcml0aWVzIGJldHdlZW4gYSBjYXIgYW5kIGEgdHJ1Y2ssIHN0aWxsLAo+PiB0 aGV5IGFyZSBsaWtlbHkgbWFudWZhY3R1cmVkIGluIGEgZGlmZmVyZW50IGFzc2VtYmx5IGxpbmUs IHByb2JhYmx5Cj4+IGJ5IGEgZGlmZmVyZW50IHByb2R1Y2VyLgo+Pgo+PiBJIGd1ZXNzIGluIHRo ZSBlbmQgaXQgcmVhbGx5IGRlcGVuZHMgb24gd2hlcmUgeW91IGRyYXcgdGhlIGxpbmU6IFRoZXJl Cj4+IGFyZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIGxvYWRpbmcgY29kZSB3aGljaCB3aWxsIGdldCBl eGVjdXRlZCBieSB0aGUKPj4gcHJpbWFyeSBjb2RlLCBsb2FkaW5nIGNvZGUgdG8gZXhlY3V0ZSBl eHBsaWNpdGx5IG9uIGEgU01QIGNvcmUsIGFuZAo+PiBsb2FkaW5nIGNvZGUgdG8gZXhlY3V0ZSBv biBhIHJlbW90ZSBwcm9jZXNzb3IuCj4+Cj4+IFRoZSBmaXJzdCBjYXNlIGlzIGFscmVhZHkgd2Vs bCBzdXBwb3J0ZWQsIGFuZCB3ZSBuZWVkIHRvIGtlZXAgc3VwcG9ydAo+PiBiYWNrd2FyZCBjb21w YXRpYmlsaXR5Lgo+Pgo+PiBUaGUgc2Vjb25kIGNhc2UsIElNSE8sIGlzIGEgc29tZXdoYXQgc2ls bHkgY2FzZTogQSBTTVAgc3lzdGVtIHVzdWFsbHkKPj4gZ2V0cyBkcml2ZW4gYnkgYSBzaW5nbGUg T1MgaW1hZ2UsIGFuZCB0aGF0IE9TIG1ha2VzIHN1cmUgdG8gaW5pdGlhbGl6ZQo+PiB0aGUgY29y ZXMgKG1heWJlIHdpdGggdGhlIGhlbHAgb2YgZmlybXdhcmUsIHN1Y2ggYXMgdGhlIFBTQ0kgaW50 ZXJmYWNlCj4+IG9uIEFSTSkuIFRoZXJlIGlzIG5vIG5lZWQgZm9yIGEgYm9vdCBsb2FkZXIgY29t bWFuZCB0byBleGVjdXRlIGEgaW1hZ2UKPj4gb24gYSBzZWNvbmRhcnkgY29yZSBleHBsaWNpdGx5 Li4uCj4gCj4gSSBkbyB1bmRlcnN0YW5kIChhbmQgYWdyZWUpIHdpdGggeW91ciBwb2ludCB3aXRo IFNNUC4KPiAKPiBCdXQsIEkgZG8ga25vdyBhdCBsZWFzdCBvbmUgdXNlIGNhc2Ugd2hlbiBzb21l Ym9keSB3b3VsZCBsaWtlIHRvIHN0YXJ0Cj4gdHdvIGJpbmFyaWVzICh0aG9zZSBhcmUgYmFyZSBt ZXRhbCBwcm9ncmFtcywgdGFraW5nIGNhcmUgb2YgU29DIHNldHVwLAo+IElQQywgZXRjKS4KPiAK PiBBbmQgbWF5YmUgTGludXggd2l0aCBzb21lIEZQR0EgYmFzZWQgSVAgYmxvY2sgYWxyZWFkeSBj b25maWd1cmVkIGluCj4gdS1ib290Lgo+IAo+Pgo+PiBUaGUgdGhpcmQgY2FzZSBpcyBwcm9iYWJs eSBhIGNhc2Ugd2hlcmUgd2UgY291bGQgc3RhcnQgdGhpbmsgYWJvdXQKPj4gdW5pZmljYXRpb24g ZWZmb3J0cy4KPj4KPj4KPj4gPj4gT3RoZXJ3aXNlLCBpZiB5b3Ugd2FudCB0byBydW4gdGhlbSBz ZXBhcmF0ZWx5IHVzaW5nIFUtQm9vdCwKPj4gPj4gbWF5YmUgYSBuZXcgY29tbWFuZCBzdWNoIGFz IGJvb3RzbXAgd291bGQgYmUgbW9yZSBzdWl0ZWQuCj4+ID4KPj4gPiBIbW0gLSBJIGRvIHRoaW5r IHRoYXQgaXQgd291bGQgYmUgdG9vIG11Y2g6Cj4+ID4KPj4gPiAtIGJvb3RtIGZvciBnZW5lcmlj IHNpbmdsZSBjb3JlCj4+ID4gLSBib290YXV4IGZvciBJTVgKPj4gPiAtIGJvb3RzbXAgZm9yIFNN UCAob24gSU1YL1RJL1JLPykKPj4gPiAtIGJvb3Q/PyBmb3IgPz8KPj4KPj4gVGhlcmUgaXMgYXQg bGVhc3QgYWxzbyBib290eiBhbmQgYm9vdGVsZi4KPiAKPiBJIHdpbGwgcmVwbHkgdG8gdGhlIG90 aGVyIHRocmVhZCByZWdhcmRpbmcgYm9vdGVsZi4KPiAKPj4KPj4gPgo+PiA+IEkgd291bGQgbGlr ZSB0byBhdm9pZCBhZGRpbmcgbmV3IGNvbW1hbmRzIGZvciBkb2luZyBjb25jZXB0dWFsbHkgdGhl Cj4+ID4gc2FtZSB3b3JrLgo+PiA+Cj4+ID4gRXZlbiBiZXR0ZXIsIHdlIGNvdWxkIGV4dGVuZCBi b290bSB0byBzdXBwb3J0IHRoZSAibXVsdGkgYmluYXJ5Igo+PiA+IGNhc2UgdG9vLCBidXQgSU1I TyBpdCB3b3VsZCBiZSBhbHNvIGNvcnJlY3QgdG8gaGF2ZSAiYm9vdGF1eCIgdG8KPj4gPiBoYW5k bGUgZ2VuZXJpYyBiaW5hcmllcyBsb2FkaW5nLgo+PiA+Cj4+ID4+Cj4+ID4+ID4KPj4gPj4gPj4K Pj4gPj4gPj4gTm90ZSB0aGF0IHRoZSBib290YXV4IGNvbW1hbmQgcmV0cmlldmVkIHRoZSBlbnRy eSBwb2ludCAoUEMpCj4+ID4+ID4+IGZyb20gdGhlIGVsZiBiaW5hcnkuCj4+ID4+ID4KPj4gPj4g PiBDb3VsZCB5b3UgbWFrZSB0aGlzIGNvZGUgZmxleGlibGUgZW5vdWdoIHRvIGhhbmRsZSBub3Qg b25seSBlbGYKPj4gPj4gPiBiaW5hcmllcywgYnV0IGFsc28gb3RoZXIgZGF0YSAoZS5nLiBGUEdB IGJpdHN0cmVhbXMpPwo+PiA+Pgo+PiA+PiBUaGUgY29kZSBvZiBib290YXV4IGlzIHJhdGhlciBz bWFsbCwgSSBkb24ndCBzZWUgbXVjaCB2YWx1ZSBpbnRvCj4+ID4+IHN0dWZmIGJvb3QgY29kZSBm b3Igb3RoZXIgcGVyaXBoZXJhbHMgaW50byBpdC4KPj4gPgo+PiA+IEJ1dCBJJ20gbm90IGFza2lu ZyB0byB3cml0ZSBzdXBwb3J0IGZvciBvdGhlciB2ZW5kb3IncyBTb0MvdXNlCj4+ID4gY2FzZXMu Cj4+ID4KPj4gPiBJJ20ganVzdCB3b25kZXJpbmcgaWYgeW91IGNvdWxkIHdyaXRlIGdlbmVyaWMg Y29tbWFuZCAoZnJhbWV3b3JrKSB0bwo+PiA+IHN1cHBvcnQgdGhpcyB1c2UgY2FzZSBhbmQgYXMg YW4gZXhhbXBsZSBhZGQgc3VwcG9ydCBmb3IgeW91ciBJTVgncwo+PiA+IENvcnRleC1NMy80Lgo+ PiA+Cj4+Cj4+IFN1cmUsIG12IGFyY2gvYXJtL2lteC1jb21tb24vaW14X2Jvb3RhdXguYyBjbWQv LCB0aGVyZSBpcyB0aGUKPj4gZnJhbWV3b3JrIDotKQo+Pgo+PiBCdXQgdGhpcyBwcm9tb3RlcyB0 aGUgTSBjbGFzcyBzcGVjaWZpYyBiaW5hcnkgZm9ybWF0IHRvIGEgZ2VuZXJpYwo+PiBmb3JtYXQg c3VwcG9ydGVkIGZvciBhbGwgY29yZXMuCj4+Cj4+ID4gV2Ugd291bGQga2lsbCB0d28gYmlyZHMg d2l0aCBvbmUgc3RvbmUgLSBJTVggaXMgc3VwcG9ydGVkIGZyb20gdGhlCj4+ID4gdmVyeSBiZWdp bm5pbmcgYW5kIHdlIGRvIGhhdmUgZ2VuZXJpYyBjb2RlIHRvIGV4dGVuZCBpdCBieSBvdGhlcgo+ PiA+IHZlbmRvcnMuCj4+ID4KPj4gPj4gSSBkb24ndCBrbm93IGhvdyBGUEdBCj4+ID4+IGJpc3Ry ZWFtIGxvYWRpbmcgdHlwaWNhbGx5IHdvcmtzLCBidXQgSSBndWVzcyBpdCBpcyBxdWl0ZSBkaWZm ZXJlbnQKPj4gPj4gZnJvbSBsb2FkaW5nIGEgZmlybXdhcmUgaW50byBSQU0vU1JBTSBhbmQgZmx1 c2ggY2FjaGVzLi4uCj4+ID4KPj4gPiBGUEdBIHF1aXJrcyB3b3VsZCBiZSBoYW5kbGVkIGluIGFy Y2gvU29DIHNwZWNpZmljIGNvZGUuCj4+ID4KPj4gPj4KPj4gPj4gSSBhbSBub3QgYWdhaW5zdCBy ZXVzZSBhbmQgdW5pZmljYXRpb24sIEkganVzdCBmZWVsIHRoYXQgdGhpcyBpcwo+PiA+PiBub3Qg cmVhbGx5IGEgY2FzZSB3aGVyZSB3ZSBnYWluIG11Y2guCj4+ID4KPj4gPiBXaXRoIGdlbmVyaWMg ImJvb3RhdXgvYm9vdG0iIGNvbW1hbmQgd2UgY2FuIHBvaW50IG90aGVyIGRldmVsb3BlcnMKPj4g PiB3aG8gd291bGQgbGlrZSB0byBhZGQgc3VjaCBib290aW5nIGNvZGUgdG8gdGhlIGFscmVhZHkg YXZhaWxhYmxlCj4+ID4gZnJhbWV3b3JrLgo+PiA+Cj4+ID4gQWxzbywgd2Ugd291bGQgcHJldmVu dCBvdGhlciAiYWQtaG9jIiBjb21tYW5kcyBhZGRpbmcgdG8gdS1ib290Lgo+PiA+Cj4+Cj4+IEV4 dGVuZGluZyBib290bSBkb2VzIG5vdCBzZWVtIGxpa2UgYSBnb29kIGlkZWEuIGJvb3RtIGlzIGFs cmVhZHkKPj4gcmF0aGVyIGNvbXBsZXgsIG1ha2luZyBpdCBldmVuIG1vcmUgY29tcGxleCBieSBz dXBwb3J0aW5nIHRoZQo+PiBhdXhpbGlhcnkgY29yZSBjYXNlIHNlZW1zIHJlYWxseSBub3Qgd29y ayB3ZWxsLgo+Pgo+PiBBbHNvLCBib290bSBzdXBwb3J0cyBsb3RzIG9mIGZlYXR1cmVzIHdoaWNo IHlvdSBwcm9iYWJseSBuZXZlciB3b3VsZAo+PiB1c2Ugb3IgdGVzdCBvbiBhIHJlbW90ZSBjb3Jl IChlLmcuIGluaXRyYW1mcyBldGMuLi4pCj4+Cj4+ID4+Cj4+ID4+ID4KPj4gPj4gPiBNYXliZSBp dCB3b3VsZCBiZXR0ZXIgdG86Cj4+ID4+ID4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+PiA+ PiA+Cj4+ID4+ID4gRW1icmFjZSB0aG9zZSBiaW5hcmllcyBpbnRvIEZJVCBmaWxlICgqLml0Yik/ IEFuZCBhbGxvdyBtdWx0aXBsZQo+PiA+PiA+IGJpbmFyaWVzIGxvYWRpbmc/IEknbSB0aGlua2lu ZyBvZiB3b3JrIHNpbWlsYXIgdG8gb25lIGFscmVhZHkKPj4gPj4gPiBkaWQgYnkgQW5kcmUgUHJ6 eXdhcmEgZm9yIFNQTDoKPj4gPj4gPgo+PiA+PiA+ICJbUEFUQ0ggdjMgMDAvMTldIFNQTDogZXh0 ZW5kIEZJVCBsb2FkaW5nIHN1cHBvcnQiIHBvc3RlZCBvbgo+PiA+PiA+IDMxLjAzLjIwMTc/Cj4+ ID4+ID4KPj4gPj4gPiBJbiB0aGF0IHdheSB3ZSB3b3VsZCAib3BlbiIgbWFueSBuZXcgdXNlIGNh c2VzLCBhbmQgb3RoZXIKPj4gPj4gPiBwbGF0Zm9ybXMgKGUuZy4gRlBHQSdzLCBUSSwgZXRjKSBj b3VsZCBiZW5lZml0IGZyb20gaXQuCj4+ID4+ID4gT25lIHNvbGlkIHVzZSBjYXNlIGlzIHRvIGxv YWQgZGlmZmVyZW50IExpbnV4IGJpbmFyaWVzIChvci9hbmQKPj4gPj4gPiBiYXJlIG1ldGFsIHBy b2dyYW1zKSB0byBkaWZmZXJlbnQgU29DIGNvcmVzLgo+PiA+PiA+Cj4+ID4+ID4gVGhlICJtZXRh IGRhdGEiIChpLmUuIGxvYWQgYWRkcmVzcywgZGF0YSB0eXBlLCBkZXNjcmlwdGlvbiksCj4+ID4+ ID4gY291bGQgYmUgZXh0cmFjdGVkIGZyb20gdGhlIEZJVCBmb3JtYXQgKHRoZSBjb2RlIGlzIGFs cmVhZHkgaW4KPj4gPj4gPiB1LWJvb3QpLgo+PiA+PiA+Cj4+ID4+ID4gSU1ITywgdGhpcyBpcyB2 ZXJ5IGdlbmVyaWMgYXBwcm9hY2guCj4+ID4+Cj4+ID4+IEkgZGlkIHNvbWUgZXhwZXJpbWVudHMg d2l0aCB1c2luZyBGSVQgaW1hZ2VzIGZvciBhdXhpbGlhcnkgY29yZQo+PiA+PiBmaXJtd2FyZSwg aG93ZXZlciwgaXQgZGlkIG5vdCBhZGQgYSBsb3Qgb2YgYWR2YW50YWdlIG92ZXIgdXNpbmcKPj4g Pj4gZWxmOgo+PiA+PiBodHRwOi8vZ2l0LnRvcmFkZXguY29tL2NnaXQvdS1ib290LXRvcmFkZXgu Z2l0L2NvbW1pdC8/aD0yMDE1LjA0LXRvcmFkZXgtbmV4dCZpZD1kMWQ0MTZmMjcyZTg0MGU4MTM5 YWVjOTExZjg5YTcwZmU1NTIzZWIyCj4+ID4KPj4gPiBVbmZvcnR1bmF0ZWx5LCBub3QgYWxsIHVz ZSBjYXNlcyBhbGxvdyB1c2luZyBFTEYgZm9ybWF0LiBGSVQgZ2l2ZXMKPj4gPiBtb3JlIGZsZXhp YmlsaXR5Ogo+PiA+Cj4+ID4gLSAgLi9kb2MvUkVBRE1FLmRmdXRmdHAgLT4gZGlmZmVyZW50IGlt YWdlcyBsb2FkaW5nCj4+ID4KPj4gPiAtICBBbmRyZSdzIHBhdGNoIHRvIGxvYWQgbXVsdGlwbGUg YmluYXJpZXMgaW4gU1BMIC0gW1BBVENIIHYzIDAwLzE5XQo+PiA+ICAgU1BMOiBleHRlbmQgRklU IGxvYWRpbmcgc3VwcG9ydCIKPj4gPgo+Pgo+PiBBcmUgZmxleGlibGUsIGJ1dCB2ZXJ5IG11Y2gg VS1Cb290IHNwZWNpZmljLiBBbmQgbXVjaCBtb3JlIGNvbXBsZXggdG8KPj4gc3VwcG9ydC4KPj4K Pj4gPj4KPj4gPj4gRmlybXdhcmVzIGFyZSBhbHJlYWR5IGJ1aWx0IGFuZCBhdmFpbGFibGUgaW4g dGhlIGVsZiBmaWxlIGZvcm1hdC4KPj4gPj4gVGhlIExpbnV4IHJlbW90ZXByb2MgZnJhbWV3b3Jr LCB3aGljaCBpcyBtZWFudCB0byBoYW5kbGUgdGhpcyBraW5kCj4+ID4+IG9mIGNvcmVzIHRvbywg c3VwcG9ydHMgZWxmIGZpcm13YXJlIGxvYWRpbmcgdG9vLCBzbyBzdXBwb3J0aW5nIGVsZgo+PiA+ PiBpbiBVLUJvb3QgdG9vIGlzIGEgbmljZSBhbGlnbm1lbnQuIEFsc28gdXNpbmcgRklUIGFkZHMg YW4KPj4gPj4gYWRkaXRpb25hbCBzdGVwIHdoZW4gYnVpbGRpbmcgZmlybSB3YXJlcy4uLgo+PiA+ Cj4+ID4gQnV0IHRoaXMgaXMgYWxsIE9LLgo+PiA+Cj4+ID4gVGhlIEVMRiBiaW5hcnkgd291bGQg YmUgd3JhcHBlZCBpbiBGSVQgKHdpdGggZS5nLiAiZWxmIiBwcm9wZXJ0eSwKPj4gPiBldmVuIDEg dG8gMSBtYXBwaW5nKS4gVGhlbiB0aGUgJ2Jvb3RhdXgvYm9vdG0nIGNvdWxkIHBhcnNlIEVMRgo+ PiA+ICh3aGljaCBpcyBhbHNvIGdlbmVyaWMpLiBBbmQgdGhlbiBzb21lICJJTVggc3BlY2lmaWMi IChhcmNoL1NvQykKPj4gPiBjb2RlIHdvdWxkIGJlIGV4ZWN1dGVkLgo+PiA+Cj4+Cj4+IFNvIHdl IGdvIGZyb20gYSBuYWNrZWQgYmluYXJ5IGxvYWRlZCBkaXJlY3RseSB0byB0aGUgcGxhY2UgaXQg aGFzIGJlZW4KPj4gbGlua2VkIHRvLCB0byBhIGRvdWJsZSB3cmFwcGVkIGZpcm13YXJlIGZpbGUu Li4/Cj4gCj4gV2Ugd291bGQgaGF2ZSBlbGYgYmluYXJ5IGZpbGUgZW1iZWRkZWQgaW50byBGSVQg ZmlsZSwgdGhlc2Ugd291bGQgYnJpbmcKPiBmbGV4aWJpbGl0eS4KPiAKPiBGSVQgc3VwcG9ydCBp cyBpbiBwbGFjZSAodS1ib290L3NwbCkuIAo+IAo+IEluIHN1Y2ggYSB3YXkgeW91IGNhbiB1c2Ug YW55IGJpbmFyeSBpbiBhbnkgZm9ybWF0Lgo+IAo+IEJ1dCBJIG11c3QgYWRtaXQgdGhhdCB3ZSBh cmUgZ29pbmcgb2ZmLXRvcGljIGhlcmUuLi4uLgo+IAo+Pgo+PiBOb3Qgc3VyZSBpZiB1c2VyIHdp bGwgYXBwcmljaWF0ZSB0aGF0IGV4dHJhIHdvcmsgYW5kIGJvb3QgdGltZS4gQW5kCj4+IGRldmVs b3BlcnMgdGhlIGV4dHJhIGNvZGUuCj4+Cj4+IE1heWJlIGluIGEgcGVyZmVjdCB3b3JsZCB0aGF0 IGp1c3Qgd29ya3MsIGJlY2F1c2UgeW91IGtub3csIEZJVCBpcwo+PiBnZW5lcmljLCBhbmQgZWxm IGlzIGdlbmVyaWMuLi4gIEJ1dCB0aGF0IGlzIGp1c3Qgbm90IGhvdyBpdCB3b3JrcyBpbgo+PiBw cmFjdGljZS4gVGhlIGV4aXN0aW5nIEZJVCBjb2RlIGlzIHJhdGhlciBjb21wbGV4LCBzdXBwb3J0 cyBsb3RzIG9mCj4+IGNvcm5lciBjYXNlcy4gVGhlIGVsZiBjb2RlIHN1cHBvcnRzIGRpZmZlcmVu dCBoZWFkZXIgdHlwZXMuLi4gTG9hZGluZwo+PiB0aGUgZWxmIHNlY3Rpb25zICh3aGljaCB1c2Ug TTQgc3BlY2lmaWMgYWRkcmVzc2luZykgbmVlZHMgYWRkcmVzcwo+PiB0cmFuc2xhdGlvbiB0byBn ZXQgdG8gc3VpdGFibGUgaG9zdCBhZGRyZXNzZXMuLi4KPiAKPiBNYXliZSBJJ20gYW4gaWRlYWxp c3QgOi0pCj4gCj4gT25lIGFuYWxvZ3kgY29tZXMgdG8gbXkgbWluZCBiZXR3ZWVuIGxpbnV4IGFu ZCB1LWJvb3QuCj4gCj4gVGhlIHByb2xpZmVyYXRpb24gb2YgdS1ib290IGNvbW1hbmRzIGFuZCBs aW51eCBib2FyZCBmaWxlcy4gV2h5IExpbnV4Cj4gc3BlbmQgdHJlbWVuZG91cyByZXNvdXJjZXMg dG8gcmVtb3ZlIGJvYXJkIGZpbGVzIGFuZCBzd2l0Y2ggdG8gZGV2aWNlCj4gdHJlZT8KPiAKCkkg YXJndWUgdGhhdCBpcyB0aGUgcmlnaHQgd2F5IG9mIGRvaW5nIGl0OiBEbyBhZC1ob2Mgc29sdXRp b25zLCB3aGF0ZXZlcgptYWtlcyBzZW5zZSwgYW5kIG9uY2UgeW91IHVuZGVyc3RhbmQgdGhlIGZ1 bGwgYnJlYXRoIG9mIGRlc2lnbiBzcGFjZSBpdAppcyBtdWNoIGVhc2llciB0byBidWlsZCBhIHN1 aXRhYmxlIGZyYW1ld29yay4gQXQgdGhhdCBwb2ludCwgZG8gdGhlCnJlZmFjdG9yaW5nIGFuZCBi dWlsZCB0aGF0IHN1aXRhYmxlIGZyYW1ld29yay4KCklmIHlvdSBkZXNpZ24gYSBmcmFtZXdvcmsg d2l0aG91dCB0aGUgdW5kZXJzdGFuZGluZyBvZiB0aGUgd2hvbGUgZGVzaWduCnNwYWNlLCB5b3Ug d2lsbCBlbmQgdXAgd2l0aCBzb21ldGhpbmcgd2hpY2ggZG9lcyBub3Qgd29yayB3ZWxsIGFuZCBu ZWVkcwpsb3RzIG9mIHdvcmstYXJvdW5kcyBldGMuLi4KCk9mIGNvdXJzZSwgaXQgaXMgYSBiaXQg ZGlmZmVyZW50IHNpbmNlIGJvdGggZXhhbXBsZXMgaGF2ZSBvdXRzaWRlIGZhY2luZwppbXBhY3Qg KGNoYW5nZSB0byBkZXZpY2UgdHJlZSBhcyB3ZWxsIGFzIGNoYW5nZXMgdG8gVS1Cb290IGNvbW1h bmRzKS4KCi0tClN0ZWZhbgoKPj4KPj4gPgo+PiA+Pgo+PiA+Pgo+PiA+PiA+Cj4+ID4+ID4+IEFs c28gYWxsIHNlY3Rpb25zIGFyZSB0cmFuc2xhdGVkIHRvIEE3IGFkZHJlc3Nlcwo+PiA+PiA+PiBp biBvcmRlciB0byBwcm9wZXJseSBsb2FkIHRoZSBmaXJtd2FyZSBzZWN0aW9ucyBpbnRvIHRoZQo+ PiA+PiA+PiBhcHByb3ByaWF0ZSBsb2NhdGlvbnMuCj4+ID4+ID4KPj4gPj4gPiBUaGlzIHdvdWxk IHJlcXVpcmUgc29tZSB0aW55IGFyY2ggc3BlY2lmaWMgY29kZS4KPj4gPj4gPgo+PiA+Pgo+PiA+ PiBZZXMsIGJ1dCBpbiBteSByYXRoZXIgc21hbGwgcGF0Y2hzZXQgKDE2NCBhZGRpdGlvbmFsIGxp bmVzKSB0aGlzIGlzCj4+ID4+IGFjdHVhbGx5IGFsbW9zdCB0aGUgYnVsayBvZiBjaGFuZ2VzIDot KQo+PiA+Cj4+ID4gWWVzLCBJIGZ1bGx5IHVuZGVyc3RhbmQgeW91IDotKSAtIEkgZG8gcmVtZW1i ZXIgd2hlbiBJIHdhbnRlZCB0bwo+PiA+IGFkZCAzIGxpbmVzIChwb2xhcml0eSBpbnZlcnNpb24p IHRvIElNWCBQV00gc3Vic3lzdGVtIHNvbWUgdGltZQo+PiA+IGFnbyAuLi4gOi0pCj4+ID4KPj4K Pj4gSGVoZSwgeWVhaCB0aGF0IHdhcyBhIHJhdGhlciBsb25nIGVwaXNvZGUuCj4+Cj4+IEl0IHdh cyBhIGJpdCBkaWZmZXJlbnQsIHRob3VnaCwgdGhlIGNvcmUgZnJhbWV3b3JrIHdhcyBhbHJlYWR5 IHRoZXJlLAo+PiBpdCB3YXMgbW9zdGx5IGFib3V0IGFkb3B0aW5nIGEgcGFydGljdWxhciBkcml2 ZXIgdG8gdGhhdCBmcmFtZXdvcmsuCj4+IEJ1aWxkaW5nIGEgbmV3IGZyYW1ld29yayBpcyBhIGJp dCBtb3JlIGludm9sdmVkLi4uCj4+Cj4+IC0tCj4+IFN0ZWZhbgo+Pgo+PiA+IEJlc3QgcmVnYXJk cywKPj4gPiDFgXVrYXN6IE1hamV3c2tpCj4+ID4KPj4gPj4KPj4gPj4gLS0KPj4gPj4gU3RlZmFu Cj4+ID4+Cj4+ID4+ID4+IEFsc28gY2FjaGUgZmx1c2hlcyBpcyB0YWtlbiBjYXJlIG9mLCBzbyB0 aGF0IHRoZXJlIGlzIG5vCj4+ID4+ID4+IG1hbnVhbCBkY2FjaGUgZmx1c2ggbmVjZXNzYXJ5IGFu eW1vcmUuCj4+ID4+ID4+Cj4+ID4+ID4+IFRoZSBOWFAgRnJlZVJUT1MgQlNQIGFscmVhZHkgZ2Vu ZXJhdGVzIGVsZiBiaW5hcmllcyB3aGljaCBjYW4gYmUKPj4gPj4gPj4gZGlyZWN0bHkgdXNlZCB3 aXRoIHRoaXMgZWxmIGJpbmFyeSBzdXBwb3J0Lgo+PiA+PiA+Pgo+PiA+PiA+PiBUaGUgbGFzdCBw YXRjaCBhZGRzIGJvb3RhdXggc3VwcG9ydCBmb3IgVnlicmlkLgo+PiA+PiA+Pgo+PiA+PiA+Pgo+ PiA+PiA+PiBTdGVmYW4gQWduZXIgKDMpOgo+PiA+PiA+PiAgIGlteDogaW14LWNvbW1vbjogbW92 ZSBhdXggY29yZSBpbWFnZSBwYXJzaW5nIHRvIGNvbW1vbiBjb2RlCj4+ID4+ID4+ICAgaW14OiBp bXgtY29tbW9uOiBhZGQgZWxmIGZpcm13YXJlIHN1cHBvcnQKPj4gPj4gPj4gICBBUk06IHZmNjEw OiBhZGQgYXV4aWxpYXJ5IGNvcmUgYm9vdCBzdXBwb3J0Cj4+ID4+ID4+Cj4+ID4+ID4+ICBhcmNo L2FybS9jcHUvYXJtdjcvbXg2L3NvYy5jICAgICAgICAgICAgICAgIHwgIDMwICsrKysrLS0tCj4+ ID4+ID4+ICBhcmNoL2FybS9jcHUvYXJtdjcvbXg3L3NvYy5jICAgICAgICAgICAgICAgIHwgIDM0 ICsrKysrKy0tLQo+PiA+PiA+PiAgYXJjaC9hcm0vY3B1L2FybXY3L3ZmNjEwL2dlbmVyaWMuYyAg ICAgICAgICB8ICA0MiArKysrKysrKysrKwo+PiA+PiA+PiAgYXJjaC9hcm0vaW14LWNvbW1vbi9L Y29uZmlnICAgICAgICAgICAgICAgICB8ICAgMiArLQo+PiA+PiA+PiAgYXJjaC9hcm0vaW14LWNv bW1vbi9NYWtlZmlsZSAgICAgICAgICAgICAgICB8ICAgNCArLQo+PiA+PiA+PiAgYXJjaC9hcm0v aW14LWNvbW1vbi9pbXhfYm9vdGF1eC5jICAgICAgICAgICB8IDEwNQo+PiA+PiA+PiArKysrKysr KysrKysrKysrKysrKysrKy0tLS0tCj4+ID4+ID4+IGFyY2gvYXJtL2luY2x1ZGUvYXNtL2FyY2gt dmY2MTAvc3lzX3Byb3RvLmggfCAgIDggKysrCj4+ID4+ID4+IGFyY2gvYXJtL2luY2x1ZGUvYXNt L2lteC1jb21tb24vc3lzX3Byb3RvLmggfCAgIDYgKysKPj4gPj4gPj4gY29uZmlncy9jb2xpYnJp X3ZmX2RlZmNvbmZpZyAgICAgICAgICAgICAgICB8ICAgMSArIDkgZmlsZXMKPj4gPj4gPj4gY2hh bmdlZCwgMTk4IGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKSBjcmVhdGUgbW9kZSAxMDA2 NDQKPj4gPj4gPj4gYXJjaC9hcm0vaW5jbHVkZS9hc20vYXJjaC12ZjYxMC9zeXNfcHJvdG8uaAo+ PiA+PiA+Pgo+PiA+PiA+Cj4+ID4+ID4KPj4gPj4gPgo+PiA+PiA+Cj4+ID4+ID4gQmVzdCByZWdh cmRzLAo+PiA+PiA+Cj4+ID4+ID4gTHVrYXN6IE1hamV3c2tpCj4+ID4+ID4KPj4gPj4gPiAtLQo+ PiA+PiA+Cj4+ID4+ID4gREVOWCBTb2Z0d2FyZSBFbmdpbmVlcmluZyBHbWJILCAgICAgIE1hbmFn aW5nIERpcmVjdG9yOiBXb2xmZ2FuZwo+PiA+PiA+IERlbmsgSFJCIDE2NTIzNSBNdW5pY2gsIE9m ZmljZTogS2lyY2hlbnN0ci41LCBELTgyMTk0Cj4+ID4+ID4gR3JvZWJlbnplbGwsIEdlcm1hbnkg UGhvbmU6ICgrNDkpLTgxNDItNjY5ODktMTAgRmF4Ogo+PiA+PiA+ICgrNDkpLTgxNDItNjY5ODkt ODAgRW1haWw6IHdkIGF0IGRlbnguZGUKPj4gPgo+PiA+Cj4+ID4KPj4gPgo+PiA+IEJlc3QgcmVn YXJkcywKPj4gPgo+PiA+IEx1a2FzeiBNYWpld3NraQo+PiA+Cj4+ID4gLS0KPj4gPgo+PiA+IERF TlggU29mdHdhcmUgRW5naW5lZXJpbmcgR21iSCwgICAgICBNYW5hZ2luZyBEaXJlY3RvcjogV29s ZmdhbmcKPj4gPiBEZW5rIEhSQiAxNjUyMzUgTXVuaWNoLCBPZmZpY2U6IEtpcmNoZW5zdHIuNSwg RC04MjE5NCBHcm9lYmVuemVsbCwKPj4gPiBHZXJtYW55IFBob25lOiAoKzQ5KS04MTQyLTY2OTg5 LTEwIEZheDogKCs0OSktODE0Mi02Njk4OS04MCBFbWFpbDoKPj4gPiB3ZCBhdCBkZW54LmRlCj4g Cj4gCj4gCj4gCj4gQmVzdCByZWdhcmRzLAo+IAo+IEx1a2FzeiBNYWpld3NraQo+IAo+IC0tCj4g Cj4gREVOWCBTb2Z0d2FyZSBFbmdpbmVlcmluZyBHbWJILCAgICAgIE1hbmFnaW5nIERpcmVjdG9y OiBXb2xmZ2FuZyBEZW5rCj4gSFJCIDE2NTIzNSBNdW5pY2gsIE9mZmljZTogS2lyY2hlbnN0ci41 LCBELTgyMTk0IEdyb2ViZW56ZWxsLCBHZXJtYW55Cj4gUGhvbmU6ICgrNDkpLTgxNDItNjY5ODkt MTAgRmF4OiAoKzQ5KS04MTQyLTY2OTg5LTgwIEVtYWlsOiB3ZCBhdCBkZW54LmRlCg==