From mboxrd@z Thu Jan 1 00:00:00 1970 From: Russell King - ARM Linux Subject: Re: [PATCH 2/4] drm/i2c: tda998x: Remove obsolete drm_connector_register() call Date: Mon, 31 Oct 2016 00:09:23 +0000 Message-ID: <20161031000923.GP1041@n2100.armlinux.org.uk> References: <4828869.OnBdjrTFoD@avalon> <20161019093521.GP1041@n2100.armlinux.org.uk> <1862550.NH79htsjIC@avalon> <20161020091504.GW1041@n2100.armlinux.org.uk> <7ff9cdf7-ee12-c844-ed3d-d956fdcc6c97@codeaurora.org> <20161021210439.6e74ed2609b93513db3b78ba@free.fr> <20161022095536.GG1041@n2100.armlinux.org.uk> <20161024065304.GY20761@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from pandora.armlinux.org.uk (pandora.armlinux.org.uk [IPv6:2001:4d48:ad52:3201:214:fdff:fe10:1be6]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9BA406E142 for ; Mon, 31 Oct 2016 00:09:37 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20161024065304.GY20761@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: khilman@baylibre.com, Jyri Sarha , bgolaszewski@baylibre.com, tomi.valkeinen@ti.com, dri-devel@lists.freedesktop.org, Laurent Pinchart List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBPY3QgMjQsIDIwMTYgYXQgMDg6NTM6MDRBTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBNb24sIE9jdCAyNCwgMjAxNiBhdCAxMTo1ODowMEFNICswNTMwLCBBcmNoaXQg VGFuZWphIHdyb3RlOgo+ID4gT24gMTAvMjIvMjAxNiAwMzoyNSBQTSwgUnVzc2VsbCBLaW5nIC0g QVJNIExpbnV4IHdyb3RlOgo+ID4gPiBMb29raW5nIGF0IGRybV9icmlkZ2VfZGlzYWJsZSgpIGFu ZCBkcm1fYnJpZGdlX2VuYWJsZSgpLCB0aGUgY29udHJvbAo+ID4gPiBtb2RlbCBhcHBlYXJzIHRv IGJlOgo+ID4gPiAKPiA+ID4gCWNydGMgLT4gZW5jb2RlciAtPiBjb25uZWN0b3IKPiA+ID4gICAg ICAgICAgICAgICAgICBgLT4gYnJpZGdlCj4gPiA+IAkJICAgICBgLT4gYnJpZGdlCj4gPiA+IAkJ ICAgICAgICAgYC0+IGJyaWRnZQo+ID4gPiAKPiA+ID4gQnJpZGdlcyBhcmUgYWx3YXlzIGF0dGFj aGVkIHRvIGFuIGVuY29kZXIsIGFuZCB0aGVyZSBjYW4gYmUgbXVsdGlwbGUKPiA+ID4gYnJpZGdl cyBhdHRhY2hlZCB0byBvbmUgZW5jb2Rlci4gIEJyaWRnZXMgY2FuJ3QgYmUgYXR0YWNoZWQgdG8g dGhlCj4gPiA+IGNvbm5lY3Rvci4KPiAKPiBJbiBoZWxwZXJzIGNvbm5lY3RvcnMgYXJlIG5vLW9w IG9iamVjdHMuIFdlIF9uZXZlcl8gY2FsbCBhbnkgY29ubmVjdG9yCj4gY2FsbGJhY2tzIHdoZW4g ZG9pbmcgYSBtb2Rlc2V0LiBDb25uZWN0b3JzIGFyZSBvbmx5IHVzZWQgdG8gcHJvYmUgb3V0cHV0 Cj4gc3RhdGUsIGFuZCBhcyB0aGUgdXNlcnNwYWNlLXZpc2lzYmxlIGVuZHBvaW50IHJlcHJlc2Vu dGF0aW9uLiBIZW5jZSB0aGUKPiByZWFsIGdyYXBoIGlzCj4gCj4gY3J0YyAtPiBlbmNvZGVyIFsg LT4gYnJpZGdlIFsgLT4gYnJpZGdlIFsuLi5dXV0gLT4gY29ubmVjdG9yCj4gCj4gd2l0aCB0aGUg bGFzdCBicmlkZ2Ugb3duaW5nIHRoZSBjb25uZWN0b3IuIEFuZCB0aGF0IGxhc3QgYnJpZGdlIHBy b2JhYmx5Cj4gbmVlZHMgdG8gc3RvcmUgYSBwb2ludGVyIHRvIGl0cyBjb25uZWN0b3IocykuCgpU aGF0IG1vZGVsIGNhbid0IHdvcmsgZm9yIFREQTk5OHggaWYgdGhlIFREQTk5OHggaXMgZm9sbG93 ZWQgYnkKYW5vdGhlciAiYnJpZGdlIiAoZWcsIHRvIGNvbnZlcnQgdGhlIFRETVMgc2lnbmFscyB0 byBzb21ldGhpbmcgZWxzZSkKdW5sZXNzIHRoZXJlJ3Mgc29tZSB3YXkgdG8gdGVsbCBhIGJyaWRn ZSB0aGF0IGl0IGlzbid0IHRoZSBsYXN0IGluCnRoZSBjaGFpbi4KCkhvd2V2ZXIsIG15IGdyYXBo IGlzIGFjY3VyYXRlIGFzIGl0J3MgcmVmbGVjdGluZyB0aGUgc29mdHdhcmUKbW9kZWxsaW5nIC0g aXQgcmVmbGVjdHMgaG93IHRoZSB2YXJpb3VzIG9iamVjdHMgYXJlIGJvdW5kIHRvZ2V0aGVyIGlu CkRSTS4gIFRoZSBEUk0gZW5jb2RlciBoYXMgcG9pbnRlcnMgdG8gdGhlIERSTSBicmlkZ2UsIHdo aWNoIGhhcyBhCnBvaW50ZXIgdG8gdGhlIG5leHQgRFJNIGJyaWRnZS4gIFRoZSBEUk0gY29ubmVj dG9yIGRvZXNuJ3QgaGF2ZSBhbnkKcG9pbnRlcnMgdG8gdGhlIGNvbm5lY3Rvciwgb25seSB0byB0 aGUgRFJNIGVuY29kZXIuICBTbywgRFJNIGJyaWRnZXMKYXJlIGNoaWxkcyBvZiB0aGUgZW5jb2Rl ciwgYW5kIHRoZSBlbmNvZGVyIChhbmQgYXR0YWNoZWQgZW5jb2RlcgpicmlkZ2UgY2hhaW4pIGNh biBiZSBzZWxlY3RlZCBieSB0aGUgRFJNIGNvbm5lY3Rvci4KCkhvd2V2ZXIsIHlvdSBhcmUgY29y cmVjdCB0aGF0IGZvciBkaWZmZXJlbnQgInRhc2tzIiBsaWtlIG1vZGUgc2V0dGluZywKb3Igb3V0 cHV0IHByb2JpbmcsIHRoZSByZXByZXNlbnRhdGlvbiBpcyBzb21ld2hhdCBkaWZmZXJlbnQgLSB0 aGF0J3MKbm90IHJlYWxseSB3aGF0IEkgd2FzIHRhbGtpbmcgYWJvdXQgdGhvdWdoLCBhbmQgSSBj ZXJ0YWlubHkgd2FzIG5vdAp0YWxraW5nIGFib3V0IHRoZSB1c2Vyc3BhY2UgcmVwcmVzZW50YXRp b24uCgpXaGF0IEknbSAxMDAlIGNvbmNlcm5lZCBhYm91dCBpcyBob3cgdGhpcyBzdHVmZiBsb29r cyBpbiBrZXJuZWwgc3BhY2UKYW5kIHdoYXQgdGhlIGRyaXZlcihzKSBzaG91bGQgbG9vayBsaWtl LgoKPiA+ID4gU28sIGluIHRoZSBjYXNlIG9mIFREQTk5OHgsIHdlIGVuZCB1cCB3aXRoIHRoZSBU REE5OTh4IHByb3ZpZGluZyBhCj4gPiA+IGNvbm5lY3RvciwgYmVjYXVzZSBpdCBoYXMgY29ubmVj dG9yIGZ1bmN0aW9uYWxpdHksIGFuZCBwcm92aWRpbmcgYQo+ID4gPiBicmlkZ2UuICBUaGUgZW5j b2RlciBpcyBsZWZ0IHRvIHRoZSBLTVMgZHJpdmVyLCB3aGljaCBhZGRzIGFkZGl0aW9uYWwKPiA+ ID4gY29tcGxleGl0eSAoMTAwKyBsaW5lcykgdG8gZWFjaCBhbmQgZXZlcnkgS01TIGRyaXZlciwg cmVxdWlyaW5nIHRoZQo+ID4gPiBLTVMgZHJpdmVyIHRvIGhhdmUgbXVjaCBtb3JlIGtub3dsZWRn ZSBvZiB3aGF0J3MgYXR0YWNoZWQgdG8gdGhlCj4gPiA+ICJDUlRDIiwgc28gaXQgY2FuIGNyZWF0 ZSB0aGVzZSBlbmNvZGVycyBpdHNlbGYuICBJIHN0aWxsIHRoaW5rIHRoaXMKPiA+ID4gaXMgYSBi YWNrd2FyZHMgc3RlcCAtIG1heWJlIG9uZSBzdGVwIGZvcndhcmRzLCB0d28gYmFja3dhcmRzLgo+ IAo+IFdlJ3ZlIHN0dWJiZWQgb3V0IGV2ZXJ5dGhpbmcgdGhhdCdzIGluIGFuIGVuY29kZXIsIHlv dSBkZWZpbml0ZWx5IGRvbid0Cj4gbmVlZCBodW5kcmVkcyBvZiBsaW5lcyB0byB3cml0ZSBvbmUg YW55IG1vcmUuIElmIHRoZXJlJ3Mgc3RpbGwgYSBjYWxsYmFjawo+IGxlZnQgYXJvdW5kIGRybV9l bmNvZGVyIHdoaWNoIGhhcyBub3QgeWV0IHN1aXRhYmxlIGRlZmF1bHQgaGFuZGxpbmcsIHRoZW4K PiB0aGF0J3MgYSBidWcuCgpTb3JyeSwgYnV0IEkgZG8gbmVlZCBleGFjdGx5IHdoYXQgSSd2ZSB3 cml0dGVuIGFib3ZlLCBJIGNhbiB0YWxrIHJhdGhlcgpkZWZpbml0aXZlbHkgYmVjYXVzZSBJJ3Zl IGFjdHVhbGx5IGdvdCB0aGUgY29kZSBpbiBmcm9udCBvZiBtZS4gIE1vc3Qgb2YKdGhlIGFkZGl0 aW9uYWwgbGluZXMgaXMgZHVlIHRvIHRoZSBjb21wbGV4aXR5IGFkZGVkIHRvIHRoZSBLTVMgZHJp dmVyIHRvCmxvY2F0ZSAoYWN0dWFsbHkgZm9yIGEgdGhpcmQgdGltZSkgYWxsIHRoZSBjb21wb25l bnRzIGluIHRoZSBzeXN0ZW0sCnNwZWNpZmljYWxseSBwYXJzaW5nIHRoZSBEVCB0cmVlIHRvIGZp bmQgdGhlICJlbmNvZGVycyIgKG9yIHJhdGhlciB0aGUKVERBOTk4eCBpbiB0aGlzIGNhc2UpLCBj cmVhdGluZyB0aGUgRFJNIGVuY29kZXIgb2JqZWN0cywgYW5kIGJpbmRpbmcgdGhlClREQTk5OHgg YnJpZGdlLgoKSGVyZSdzIHRoZSBfZXhhY3RfIGRpZmZzdGF0IGZvciB0aGUgaGFja3kgY29udmVy c2lvbiBzbyBmYXIgKGluY2x1ZGluZwpzb21ldGhpbmcgbGlrZSB0aGUgMTAgcGF0Y2hlcyBJIHBv c3RlZCBsYXN0IHdlZWtlbmQsIHdoaWNoIGhhdmVuJ3QgaGFkCmFueSBjb21tZW50cyB5ZXQpOgoK IGRyaXZlcnMvZ3B1L2RybS9hcm1hZGEvYXJtYWRhX2Rydi5jIHwgMTI1ICsrKysrCiBkcml2ZXJz L2dwdS9kcm0vaTJjL3RkYTk5OHhfZHJ2LmMgICB8IDkwNCArKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNTYwIGluc2VydGlvbnMoKyksIDQ2OSBk ZWxldGlvbnMoLSkKClRoZSBhY3R1YWwgYnJpZGdlIGNvbnZlcnNpb24gb24gaXRzIG93biBpczoK CiBkcml2ZXJzL2dwdS9kcm0vYXJtYWRhL2FybWFkYV9kcnYuYyB8IDEyNSArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jICAg fCAxMzkgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5n ZWQsIDE4MCBpbnNlcnRpb25zKCspLCA4NCBkZWxldGlvbnMoLSkKCj4gTm90ZTogT25seSBhcHBs aWVzIHRvIGF0b21pYyB0aG91Z2gsIEknbSBub3QgZ29pbmcgdG8gYm90aGVyIHdpdGggb2xkCj4g bGVnYWN5IGNydGMgaGVscGVycy4gSSBndWVzcyBhcm1hZGEgbmVlZHMgdG8gc3dpdGNoIHRvIGF0 b21pYywgb3RoZXJ3aXNlCj4gZW5jb2RlcnMgYXJlIGluZGVlZCBhIGJpdCBhIHBhaW4uCgpUaGF0 J3Mgbm90IGdvaW5nIHRvIGhhcHBlbiAtIGFuZCB5b3Uga25vdyBleGFjdGx5IHdoeSB0aGF0J3Mg bm90IGdvaW5nCnRvIGhhcHBlbiAtIEkndmUgdHJpZWQgdG8gZG8gaXQgYW5kIGl0IGZhaWxlZCBt aXN0ZXJhYmx5IHdpdGggYWxsIHNvcnRzCm9mIHByb2JsZW1zLiAgVGhlIGlkZWEgdGhhdCBpdCBj YW4gYmUgZG9uZSBwaWVjZW1lYWwgYXMgcGVyIHlvdXIgZ3VpZGUKaXMgYSBmYWxhY3kgLSBpdCBj YW4ndCBiZS4gIFRoZXJlIGlzIG5vIHByb2dyZXNzaXZlIHdheSB0byBkbyBhCmNvbnZlcnNpb24u ICBJdCBzZWVtcyB0aGF0IEtNUyBkcml2ZXJzIG5lZWQgdG8gYmUgcmV3cml0dGVuIGZyb20Kc2Ny YXRjaCwgYW5kIHRoYXQgbWVhbnMgdGhlcmUgaXMgYSBoaWdoIHJpc2sgb2YgaW50cm9kdWNpbmcg bG90cyBvZgpuZXcgYnVncy4KCkknbSBqdXN0IG5vdCBwcmVwYXJlZCB0byBnbyB0aHJvdWdoIHRo YXQgLSBJJ2QgbXVjaCByYXRoZXIgaGF2ZSBhIHN0YWJsZQprZXJuZWwgZHJpdmVyIHRoYXQgYWN0 dWFsbHkgd29ya3MgdGhhbiBzcGVuZCB0aGUgbmV4dCBzaXggbW9udGhzIHJld3JpdGluZwphbmQg ZGVidWdnaW5nIHN0dWZmIGp1c3QgZm9yIHRoZSBsYXRlc3QgaWRlYXMgYWJvdXQgaG93IHN0dWZm IHNob3VsZCBiZQpkb25lLgoKX09SXyB0aGVyZSBjb3VsZCBiZSBtb3JlIGhlbHAgZnJvbSBEUk0g dG8gZWFzZSB0aGUgdHJhbnNpdGlvbiBwYWluIGZyb20Kbm9uLWF0b21pYyB0byBhdG9taWMgS01T IGRyaXZlcnMsIHNvIHRoYXQgaXQgY2FuIGJlIGRvbmUgaW4gYXBwcm9wcmlhdGVseQpzaXplZCBz dGVwcywgc28gdGhhdCB0aGUgZHJpdmVyIGNhbiBiZSBhZGVxdWF0ZWx5IHRlc3RlZCB0byBlbnN1 cmUgdGhhdAp0aGluZ3MgZG9uJ3QgdG90YWxseSBmYWxsIGFwYXJ0Li4uIHlvdSBrbm93LCBsaWtl IGlteC1kcm0gaGFzIGdvbmUgZnJvbQpiZWluZyBhIHN0YWJsZSBkcml2ZXIgdG8ga2VlcCBvbiBm YWxsaW5nIGFwYXJ0IG5vdyB0aGF0IGl0J3MgYmVlbgpjb252ZXJ0ZWQgdG8gYXRvbWljIG1vZGVz ZXQuCgo+IEltbyBlbmNvZGVycyBzaG91bGQgYmUgdGhhdCBwYXJ0IHdoaWNoIGlzIGJha2VkIGlu dG8geW91ciBjb3JlIGlwLiBJZgo+IHRoZXJlJ3Mgbm90aGluZywgdGhlbiB5b3UncmUgcGVyZmVj dGx5IGZpbmUgd2l0aCBhIG5vLW9wIGVuY29kZXIuCgpGcm9tIG15IHBvaW50IG9mIHZpZXcsIHRo ZSBUREE5OTh4IF9pc18gYW4gZW5jb2RlciAtIGl0IHRha2VzIFJHQiBhbmQKc3luYyBzaWduYWxz LCBhbmQgZW5jb2RlcyB0aGVtIGludG8gdGhlIFRETVMgZm9ybWF0IGZvciBEVkkgb3IgSERNSS4K SSBndWVzcyB3aGF0IEkgY2FsbCBhbiBlbmNvZGVyIGlzIG5vdCB3aGF0IERSTSBjYWxscyBhbiBl bmNvZGVyIHRob3VnaC4KCldoYXQncyBpbiB0aGUgRG92ZSBpcyBlZmZlY3RpdmVseSBhIHBhaXIg b2YgQ1JUQ3MsIHNvbWUgbXV4ZXMsIGEgc2V0IG9mClZHQSBEQUNzIGFuZCBhIHBhcmFsbGVsIFJH QiBidXMgd2l0aCBwaXhlbCBjbG9jayBhbmQgc3luYyBzaWduYWxzLgpBcGFydCBmcm9tIHRoZSBW R0EgREFDcyAod2hpY2ggYXJlbid0IHVzZWQgaW4gdGhlIFREQTk5OHggcGF0aCkgaXQncwpwcmV0 dHkgaGFyZCB0byBpbWFnaW5lIHdoYXQgcGllY2Ugb2YgaGFyZHdhcmUgY291bGQgYmUgY2FsbGVk IGFuCmVuY29kZXIuCgpTbyB3aGF0IGRvZXMgdGhlIERSTSBlbmNvZGVyIHJlcHJlc2VudCwgaGFy ZHdhcmUgd2lzZSBpbiB0aGlzIGNhc2U/CkFzIEkgc2F5LCBpbiBteSBtaW5kLCB0aGUgVERBOTk4 eCBfaXNfIHRoZSBlbmNvZGVyLgoKPiBNYXliZSB3ZQo+IGNvdWxkIGRvIGEgaGVscGVyIGZvciBj cmVhdGluZyB0aG9zZSwgaWYgdGhlIGZldyBsaW5lcyBhcmUgY29weXBhc3RlZCB0b28KPiBvZnRl bi4gVGhlbiBhbGwgdGhlIGV4dGVybmFsIElQIHNob3VsZCBiZSBicmlkZ2VzIChhbmQgY2hhaW5l ZCkuIEFuZCB3aXRoCj4gY2hhaW5zIGVpdGhlciB5b3UgbmVlZCBhbm90aGVyIGJyaWRnZSwgb3Ig eW91J3JlIHRoZSBsYXN0IGJyaWRnZSwgYW5kIHRoZW4KPiB5b3UncmUgc3VwcG9zZWQgdG8gcmVn aXN0ZXIgdGhlIGNvbm5lY3RvciBhcyB0aGUgZmluYWwgZW5kcG9pbnQuCgpMZXQgbWUgcmVwZWF0 OiB0aGUgIkRSTSBjb25uZWN0b3IiIGlzIHBhcnQgb2YgdGhlIFREQTk5OHggLSB0aGUgVERBOTk4 eApwcm92aWRlcyB0aGUgRURJRCByZWFkaW5nIGNhcGFiaWxpdGllcywgYW5kIHRoZSBjb25uZWN0 aW9uIGRldGVjdGlvbgpjYXBhYmlsaXRpZXMuICBJdCBhbHNvIHByb3ZpZGVzIHRoZSBDRUMgY29t bXVuaWNhdGlvbiBjYXBhYmlsaXRpZXMgYXMKd2VsbCwgYnV0IHRoYXQncyBub3QgdG9vIHJlbGV2 YW50IHRvIHRoaXMgZGlzY3Vzc2lvbiwgYXBhcnQgZnJvbQppbGx1c3RyYXRpbmcgdGhhdCBpdCdz IGFuIGFsbC1pbi1vbmUgc2luZ2xlIGNoaXAgc29sdXRpb24gdG8gcHJvdmlkaW5nCmEgZnVsbCBI RE1JIHNvdXJjZSBpbXBsZW1lbnRhdGlvbi4KClRoZSBUREE5OTh4IGlzIG5vdCBhIHN0YW5kLWFs b25lICJicmlkZ2UiIHdoaWNoIGp1c3QgX2VuY29kZXNfIGEgcGFyYWxsZWwKUkdCIGJ1cyB0byBU RE1TIHNpZ25hbHMsIGl0J3MgbXVjaCBtb3JlIHRoYW4gdGhhdC4gIFRoYXQncyB3aHkgSSdtIHNh eWluZwp3ZSBjYW4ndCBzZXBhcmF0ZSBvdXQgdGhlIGNvbm5lY3RvciBmdW5jdGlvbmFsaXR5IGZy b20gdGhlIGVuY29kZXIKZnVuY3Rpb25hbGl0eS4KCj4gPiBJIGRvIGFncmVlIHRoYXQgaXQncyBh IHN0ZXAgYmFja3dhcmQgdGhhdCB3ZSBub3cgaGF2ZSB0byBzZWFyY2ggZm9yCj4gPiBhIGNvcnJl c3BvbmRpbmcgYnJpZGdlLCB3aGljaCB3ZSBkaWRuJ3QgaGF2ZSB0byBkbyB3aGVuIHRoZSBjaGlw Cj4gPiB3YXMgcmVwcmVzZW50ZWQgYXMgYW4gZW5jb2Rlci4KPiAKPiBZb3UgY2FuIHN0aWxsIGRv IHRoZSBleGFjdCBzYW1lIHRoaW5nIHdpdGggYnJpZGdlcyBhcyB3aXRoIGVuY29kZXJzIHVzaW5n Cj4gdGhlIGNvbXBvbmVudCBmcmFtZXdvcmsuIFNob3VsZCBub3QgYmUgYSBzdGVwIGJhY2sgYXQg YWxsLgoKU29ycnksIG5vIHlvdSBjYW4ndCBhdCB0aGUgbW9tZW50LiAgQXMgSSd2ZSBhbHJlYWR5 IHNhaWQsIGdyZXAgZm9yCiJicmlkZ2VfbGlzdCIuICBSZWFkIHRoZSBjb2RlIGluIGRyaXZlcnMv Z3B1L2RybS9kcm1fYnJpZGdlLmMsIGFuZApub3RpY2UgdGhhdCB0aGVyZSdzIHR3byBwbGFjZXMg dGhhdCB0aGlzIGxpc3QgaXMgYWNjZXNzZWQ6CgoxLiBpbnNpZGUgZHJtX2JyaWRnZV9hZGQoKQoy LiBpbnNpZGUgb2ZfZHJtX2ZpbmRfYnJpZGdlKCkgd2hpY2ggaXMgb25seSBhdmFpbGFibGUgd2hl biBDT05GSUdfT0YKICAgaXMgZW5hYmxlZCwgYW5kIHJlcXVpcmVzIGEgRFQgc3RydWN0IGRldmlj ZV9ub2RlIHBvaW50ZXIgdG8gcGVyZm9ybQogICB0aGUgbG9va3VwLiAgc3RydWN0IGRldmljZV9u b2RlJ3MgZG8gbm90IGV4aXN0IHdpdGhvdXQgRFQuCgo+ID4gPiBUaGVyZSdzIGFub3RoZXIgaXNz dWUgd2l0aCBUREE5OTh4IC0gd2Ugbm93IGhhdmUgYXVkaW8gc3VwcG9ydCBpbgo+ID4gPiBUREE5 OTh4LCBhbmQgY29udmVydGluZyBUREE5OTh4IHRvIGJlIGEgRFJNIGJyaWRnZSBpbnRyb2R1Y2Vz IHNvbWUKPiA+ID4gZnVuZGFtZW50YWwgKGFuZCBhcyB5ZXQgdW5zb2x2ZWQpIHJhY2VzIGJldHdl ZW4gdGhlIEFTb0MgY29kZSBhbmQKPiA+ID4gdGhlIGF0dGFjaG1lbnQgb2YgdGhlIERSTSBicmlk Z2UgdG8gdGhlIERSTSBlbmNvZGVyLCBhbmQgdGhlIGRldGFjaG1lbnQKPiA+ID4gd2hlbiB0aGUg RFJNIGJyaWRnZS9jb25uZWN0b3IgZ2V0cyBjbGVhbmVkIHVwLiAgUmlnaHQgbm93LCB0aGVyZSdz IG5vCj4gPiA+IGJyaWRnZSBjYWxsYmFjayB3aGVuIHRoZSBlbmNvZGVyIG9yIGRybV9kZXZpY2Ug Z29lcyBhd2F5LCBzbyBkb2luZwo+ID4gPiBzdHVmZiBsaWtlOgo+ID4gPiAKPiA+ID4gc3RhdGlj IGludCB0ZGE5OTh4X2F1ZGlvX2dldF9lbGQoc3RydWN0IGRldmljZSAqZGV2LCB2b2lkICpkYXRh LAo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpidWYsIHNp emVfdCBsZW4pCj4gPiA+IHsKPiA+ID4gICAgICAgICBzdHJ1Y3QgdGRhOTk4eF9wcml2ICpwcml2 ID0gZGV2X2dldF9kcnZkYXRhKGRldik7Cj4gPiA+ICAgICAgICAgc3RydWN0IGRybV9tb2RlX2Nv bmZpZyAqY29uZmlnOwo+ID4gPiAgICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3I7Cj4gPiA+ICAgICAgICAgaW50IHJldCA9IC1FTk9ERVY7Cj4gPiA+IAo+ID4gPiAgICAgICAg IC8qIEZJWE1FOiBUaGlzIGlzIHJhY3kgKi8KPiA+ID4gICAgICAgICBpZiAoIXByaXYtPmJyaWRn ZS5lbmNvZGVyIHx8ICFwcml2LT5icmlkZ2UuZW5jb2Rlci0+ZGV2KQo+ID4gPiAgICAgICAgICAg ICAgICAgcmV0dXJuIHJldDsKPiA+ID4gCj4gPiA+ICAgICAgICAgY29uZmlnID0gJnByaXYtPmJy aWRnZS5lbmNvZGVyLT5kZXYtPm1vZGVfY29uZmlnOwo+ID4gPiAKPiA+ID4gICAgICAgICBtdXRl eF9sb2NrKCZjb25maWctPm11dGV4KTsKPiA+ID4gICAgICAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5 KGNvbm5lY3RvciwgJmNvbmZpZy0+Y29ubmVjdG9yX2xpc3QsIGhlYWQpIHsKPiA+ID4gICAgICAg ICAgICAgICAgIGlmIChwcml2LT5icmlkZ2UuZW5jb2RlciA9PSBjb25uZWN0b3ItPmVuY29kZXIp IHsKPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgbWVtY3B5KGJ1ZiwgY29ubmVjdG9yLT5l bGQsCj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4oc2l6ZW9mKGNvbm5l Y3Rvci0+ZWxkKSwgbGVuKSk7Cj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgIHJldCA9IDA7 Cj4gPiA+ICAgICAgICAgICAgICAgICB9Cj4gPiA+ICAgICAgICAgfQo+ID4gPiAgICAgICAgIG11 dGV4X3VubG9jaygmY29uZmlnLT5tdXRleCk7Cj4gPiA+IAo+ID4gPiBmZWVscyB2ZXJ5IHVuc2Fm ZSAtIG5vdGhpbmcgcmVhbGx5IGd1YXJhbnRlZXMgdGhlIHZhbGlkaXR5IG9mIHRoZQo+ID4gPiBw cml2LT5icmlkZ2UuZW5jb2RlciBvciBwcml2LT5icmlkZ2UuZW5jb2Rlci0+ZGV2IHBvaW50ZXJz LiAgVGhlCj4gPiA+IGNvbmZpZy0+bXV0ZXggbG9jayBkb2VzIG5vdGhpbmcgdG8gc29sdmUgdGhp cy4gIFRoZSBzYW1lIHByb2JsZW0KPiA+ID4gYWxzbyBleGlzdHMgaW4gdGRhOTk4eF9hdWRpb19o d19wYXJhbXMoKS4KPiA+IAo+ID4gTWF5YmUgd2UgY291bGQgZW5zdXJlIHRoYXQgdGhlIGJyaWRn ZSBhdHRhY2htZW50L2RldGFjaG1lbnQgaXMKPiA+IGNvbnRhaW5lZCB3aXRoaW4gZHJtX2VuY29k ZXJfaW5pdC9jbGVhbnVwIGZ1bmNzLCBzbyB0aGF0IHRoZWlyCj4gPiBsaWZlIGlzIHRpZWQgdG8g dGhlIGVuY29kZXIgZHJtX21vZGVfb2JqZWN0LiBJdCB3b3VsZG4ndCBiZSBhcwo+ID4gc3RyYWln aHRmb3J3YXJkLCBzaW5jZSB0aGUgZHJtX2JyaWRnZXMgY3JlYXRlIGNvbm5lY3RvcnMgdG9vLgo+ ID4gV2lsbCBsb29rIG1vcmUgaW50byB0aGlzLgo+IAo+IEkgZG9uJ3Qgc2VlIGFueSBpc3N1ZSB3 aXRoIHRoZSBhYm92ZSBhdCBhbGwuIE9yIHdlbGwsIGlmIHRoZXJlIGlzIG9uZQo+IHRoZXJlJ3Mg YSBsYXJnZXIgaXNzdWU6IFlvdSBjYW4ndCByZWFjaCB0aGlzIGNvZGUgaWYgeW91IHVucmVnaXN0 ZXIgeW91cgo+IGRyaXZlcidzIGludGVyZmFjZSBfYmVmb3JlXyB5b3UgdGVhciBkb3duIGFueXRo aW5nLiBUaGlzIGlzIGZpeGVkIGJ5Cj4gZ2V0dGluZyByaWQgb2YgdGhlIGxvYWQvdW5sb2FkIGNh bGxiYWNrcy4gQW5kIGZvciBhZGRpdGlvbmFsIGludGVyZmFjZXMKPiB0aGVyZSdzIG5ldyByZWdp c3Rlci91bnJlZ2lzdGVyIGNhbGxiYWNrcyBvbiBjb25uZWN0b3JzICh3aGljaCB0aGUgYnJpZGdl Cj4gYWxzbyBzaG91bGQgb3duKS4KClRoYXQncyBlYXN5IHRvIHNheSBpZiB5b3UncmUgaW50byB0 aGUgImxldHMgcmV3cml0ZSBldmVyeXRoaW5nIGFsbCBhdAp0aGUgc2FtZSB0aW1lIiBtZW50YWxp dHksIHdoaWNoIGZyb20geW91ciByZXNwb25zZSBJIHRoaW5rIHN1bXMgdXAKeW91ciBwb3NpdGlv biBvbiBldmVyeXRoaW5nIGZyb20gYXRvbWljIG1vZGUgc2V0IHRvIHRoaXMgcHJvYmxlbS4KClNv cnJ5LCBJIHJlYWxseSBoYXRlIHRoZSByZXdyaXRlIG1lbnRhbGl0eSwgdGhhdCdzIG5vdCBnb29k IHByb2dyYW1taW5nCnByYWN0aWNlLCBlc3BlY2lhbGx5IHdoZW4gZXhpc3RpbmcgaW1wbGVtZW50 YXRpb25zIHdvcmsuICBXaGF0J3MKaW5zdGVhZCByZXF1aXJlZCBhcmUgYSBzZXJpZXMgb2YgaW5j cmVtZW50YWwgc3RlcHMgdG8gZWZmZWN0IHRoZQpmdWxsIG91dGNvbWUsIGVzcGVjaWFsbHkgd2hl biBtdWx0aXBsZSBkcml2ZXJzIGFyZSBpbnZvbHZlZC4KCklmIHlvdSBsb29rIGF0IHRoZSBwcm9i bGVtcyBzdXJyb3VuZGluZyB0aGUgcmVtb3ZhbCBvZiB0aGUKZHJtX2Nvbm5lY3Rvcl9yZWdpc3Rl cigpIGZyb20gVERBOTk4eCwgeW91J2xsIHNlZSB3aHkgdGhpcyBpcyBpbXBvcnRhbnQ6Cml0J3Mg bm90IHRoZSBkcml2ZXJzIF93aXRoXyB0aGUgbWlkLWxheWVyIHRoYXQncyBhIHByb2JsZW0gaGVy ZSwgYnV0CnRob3NlIHdoaWNoIHdlcmUgY29udmVydGVkIHByZW1hdHVyZWx5LCBvciB3cml0dGVu IHdpdGhvdXQgdXNpbmcgdGhlCm1pZC1sYXllciB0aGF0IGFyZSBibG9ja2luZyB0aGUgcmVtb3Zh bCBvZiBkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKCkuCgpBbmQgdGhlIHJlbW92YWwgb2YgZHJtX2Nv bm5lY3Rvcl9yZWdpc3RlcigpIGZyb20gVERBOTk4eCBibG9ja3MgdGhlCnJlbW92YWwgb2YgdGhl IG1pZC1sYXllciBmcm9tIGFybWFkYSwgYmVjYXVzZSByZW1vdmluZyB0aGUgbWlkLWxheWVyCl9u b3dfIGNhdXNlcyB0aGUga2VybmVsIHRvIFdBUk4gLSBJIGtub3csIEkndmUgdHJpZWQgaXQgYWxy ZWFkeToKClsgICAgMS45MzM4NTRdIFdBUk5JTkc6IENQVTogMCBQSUQ6IDEzIGF0IC9ob21lL3Jt ay9naXQvbGludXgtY3Vib3gvbGliL2tvYmplY3QuYzoyNDQga29iamVjdF9hZGRfaW50ZXJuYWwr MHhmYy8weDJkOApbICAgIDEuOTQ0Mjg2XSBrb2JqZWN0X2FkZF9pbnRlcm5hbCBmYWlsZWQgZm9y IGNhcmQwLUhETUktQS0xIChlcnJvcjogLTIgcGFyZW50OiBjYXJkMCkKCkJ1dC4uLiB0aGUgbWlk LWxheWVyIGlzc3VlIHlvdSByYWlzZSBpcyBhIGNvbXBsZXRlIHJlZCBoZXJyaW5nLCB0aGUKcmFj ZSBoYXMgYWJzb2x1dGVseSBub3RoaW5nIHRvIGRvIHdpdGggdGhhdC4KCldoYXQgY2F1c2VzIHRo ZSByYWNlIGlzIHRoYXQgZHVyaW5nIHRoZSBLTVMgZHJpdmVyJ3MgcHJvYmluZywgd2UgZ2V0CnRv IHRoZSBwb2ludCB3aGVyZSB0ZGE5OTh4X2JpbmQoKSBpcyBjYWxsZWQuICBUaGlzIHJlZ2lzdGVy cyB0aGUKRFJNIGJyaWRnZSBzbyB0aGF0IHRoZSBLTVMgZHJpdmVyIGNhbiBsYXRlciBmaW5kIGFu ZCBhdHRhY2ggdG8gdGhlCmJyaWRnZS4KCkhvd2V2ZXIsIGp1c3QgYmVmb3JlIGNyZWF0aW5nIHRo ZSBEUk0gYnJpZGdlLCBpdCBhbHNvIGNyZWF0ZXMgYQpwbGF0Zm9ybSBkZXZpY2UgZm9yIHRoZSBh dWRpbyBjb2RlYyBzaWRlLiAgQXMgc29vbiBhcyB0aGF0IHBsYXRmb3JtCmRldmljZSBpcyByZWdp c3RlcmVkLCBBU29DIGlzIGZyZWUgdG8gYmluZCB0aGUgYXVkaW8gc3Vic3lzdGVtIGFuZAptYWtl IGl0IGF2YWlsYWJsZSB0byB1c2Vyc3BhY2UuCgpUaGlzIG1lYW5zIHRoYXQgYW55IG9mIHRoZSB0 ZGE5OTh4X2F1ZGlvXyogZnVuY3Rpb25zIGFyZSBhYmxlIHRvCmJlIGNhbGxlZCBmcm9tIHRoZSBw b2ludCB0aGF0IHRoaXMgcGxhdGZvcm0gZGV2aWNlIGlzIHJlZ2lzdGVyZWQuCgpBdCB0aGlzIHBv aW50LCBwcml2LT5icmlkZ2UuZW5jb2RlciB3aWxsIGJlIE5VTEwsIHdoaWNoIG1lYW5zIHRoYXQK c29tZSBvZiB0aGUgdGRhOTk4eF9hdWRpb18qIGZ1bmN0aW9ucyBzaG91bGQgZmFpbCBkdWUgdG8g dGhhdC4KCktNUyBkcml2ZXIgaW5pdGlhbGlzYXRpb24gY2FuIGNvbnRpbnVlLCB3cml0aW5nIHRo ZSB2YXJpb3VzIHBvaW50ZXJzLAphbmQgdGhhdCBoYXBwZW5zIHdpdGhvdXQgbG9ja2luZyAtIGJ1 dCBhdCB0aGF0IHN0YWdlLCBpdCBzaG91bGQgb25seQpiZSBnb2luZyBmcm9tIE5VTEwgcG9pbnRl cnMgdG8gbm9uLU5VTEwgcG9pbnRlcnMgcG9pbnRpbmcgYXQgdmFsaWQKbWVtb3J5LiAgSG93ZXZl ciwgdGhlcmUgYXJlIG5vIGJhcnJpZXJzIHRvIGVuc3VyZSB0aGF0IHRoZSB2YXJpb3VzCndyaXRl cyBvY2N1ciBpbiB0aGUgZXhwZWN0ZWQgb3JkZXIgKHdlJ3JlIHRhbGtpbmcgYWJvdXQgd3JpdGVz IGluIHRoZQpLTVMgZHJpdmVyIGJlaW5nIHZpc2libGUgdG8gcmVhZHMgaW4gdGhlIFREQTk5OHgg YXVkaW8gc2lkZSwgcG9zc2libHkKYnkgYW5vdGhlciBDUFUsIHNvIGxvY2tpbmcgaXNuJ3QgdGhl IGFuc3dlciAtIEkgY2FuJ3Qgc2VlIGFueSB3YXkgc3VjaAphIGxvY2sgY291bGQgYmUgc2hhcmVk IGJldHdlZW4gVERBOTk4eCBhbmQgdmFyaW91cyBLTVMgZHJpdmVycywgb3IKZXZlbiBzb21lIGdl bmVyaWMgZHVtbXkgRFJNIGVuY29kZXIgaGVscGVyLiAgQmFycmllcnMgbWF5IGJlIHRoZQphbnN3 ZXIsIHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgZW5jb2Rlci0+ZGV2IGlzIGFsd2F5cyB2YWxpZCBi ZWZvcmUKYnJpZGdlLT5lbmNvZGVyIGlzIHZhbGlkLikKCkhvd2V2ZXIsIHdlIG5lZWQgdG8gYWxz byBjb25zaWRlciB0aGUgaW5pdGlhbGlzYXRpb24gZmFpbHVyZSBhbmQKZXJyb3IgY2xlYW4gdXAg cGF0aHMsIGFzc3VtaW5nIHdlIGhhdmUgZ290IHRoaXMgZmFyIC0gYW5kIHRoYXQncwp3aGVyZSB0 aGUgd29ycnkgaXMuICBkcm1fZW5jb2Rlcl9jbGVhbnVwKCkgbWVtc2V0cyB0aGUgZW50aXJlCmVu Y29kZXIgdG8gemVyby4gIFNvLCBmcm9tIHRoZSBhYm92ZSwgYSBjb21waWxlciBpcyBwZXJmZWN0 bHkgYXQKbGliZXJ0eSB0byByZS1yZWFkIHRoZSBwcml2LT5icmlkZ2UuZW5jb2Rlci0+ZGV2IHBv aW50ZXIgYmV0d2Vlbgp0aGVzZSB0d28gc3RhdGVtZW50czoKCglpZiAoIXByaXYtPmJyaWRnZS5l bmNvZGVyIHx8ICFwcml2LT5icmlkZ2UuZW5jb2Rlci0+ZGV2KQoJCXJldHVybiByZXQ7CgoJY29u ZmlnID0gJnByaXYtPmJyaWRnZS5lbmNvZGVyLT5kZXYtPm1vZGVfY29uZmlnOwoKYW5kIGlmIHN1 Y2ggYSByZS1yZWFkIGNvLWluY2lkZXMgd2l0aCB0aGUgbWVtc2V0KCkgaW4KZHJtX2VuY29kZXJf Y2xlYW51cCgpIGJlY29taW5nIHZpc2libGUsIHRoaXMgaXMgYSBwb3NzaWJsZSBvb3BzCndhaXRp bmcgdG8gaGFwcGVuLgoKSXQgZ2V0cyB3b3JzZSBpZiB0aGUgS01TIGRyaXZlciBpcyByZXNwb25z aWJsZSBmb3IgZnJlZWluZyB0aGUgRFJNCmVuY29kZXIgdGhhdCBpdCBjcmVhdGVkIHRvIGF0dGFj aCB0byB0aGUgVERBOTk4eCAtIGlmIGl0IGZyZWVzIHRoYXQKbWVtb3J5IGJlZm9yZSB0ZGE5OTh4 X3VuYmluZCgpIGhhcyBiZWVuIGNhbGxlZCwgdGhlIGF1ZGlvIHN1YnN5c3RlbQp3aWxsIHN0aWxs IGJlIHZpc2libGUgdG8gdXNlcnNwYWNlLCBhbmQgY3JlYXRlcyBhIHBvdGVudGlhbAp1c2UtYWZ0 ZXItZnJlZS4KClNvLCBub25lIG9mIHRoaXMgaGFzIGFueXRoaW5nIHdoYXQgc28gZXZlciB0byBk byB3aXRoICJpcyB0aGUgS01TCmRyaXZlciBtaWQtbGF5ZXJlZCBvciBub3QiIC0gdGhpcyBwcm9i bGVtIGNhbiBleGlzdCBpcnJlc3BlY3RpdmUgb2YKd2hldGhlciBJIGhhdmUgYXJtYWRhIG1pZC1s YXllcmVkIG9yIGRlLW1pZC1sYXllcmVkLgoKTkIuIEl0IGRvZXNuJ3QgYWN0dWFsbHkgZXhpc3Qg d2l0aCBhcm1hZGEsIGJlY2F1c2UgYXJtYWRhIGlzIG5vdCB1c2VkCndpdGggdGhlIGF1ZGlvIHN0 dWZmIG9uIHRoZSBjdWJveCwgd2UgZmVlZCBTUERJRiB0byB0aGUgVERBOTk4eCBhbmQKbGV0IHRo ZSBUREE5OTh4IHNvcnQgaXRzZWxmIG91dCwgbm8gYXVkaW8gY29kZWMgaXMgcmVxdWlyZWQgdGhl cmUsCmJ1dCB0aGUgcG9pbnQgaXMgdGhhdCB0aGUgY29tcGxleGl0aWVzIGhlcmUgYXJlIHNwcmVh ZCBiZXR3ZWVuClREQTk5OHggYW5kIGFzc29jaWF0ZWQgS01TIGRyaXZlcnMgLSBib3RoIGhhdmUg dG8gYmUgZG9pbmcgdGhlCnJpZ2h0IHRoaW5ncyBmb3IgdGhlcmUgbm90IHRvIGJlIGFueSBzdWJ0 bGUgYnVncyBoZXJlLCBhbmQgdGhhdCBpcwphIHJlYWxseSBiYWQgbW9kZWwuICBBcyBJJ3ZlIGFs cmVhZHkgc2FpZCwgdGhlIHByb2JsZW0gZG9lcyBub3QKZXhpc3QgYXMgdGhlIGRyaXZlciBzdGFu ZHMgaW4gbWFpbmxpbmUgdG9kYXksIG9ubHkgb25jZSBpdCBpcwpjb252ZXJ0ZWQgdG8gZHJtIGJy aWRnZSwgYW5kIGl0J3MgcHVyZWx5IGRvd24gdG8gdGhlIHdheSB0aGUgYnJpZGdlCmNvZGUgd29y a3MuICBJdCBpcyBzb2x2YWJsZSwgcHJvdmlkZWQgdGhlIGNvbm5lY3RvciByZW1haW5zIHBhcnQg b2YKVERBOTk4eC4KClNvLCBsaWtlIGV2ZXJ5dGhpbmcsIHdlIG5lZWQgdG8gZ28gdGhyb3VnaCBh IHNlcmllcyBvZiBzdGVwcyB0byBtYWtlCnRoZXNlIGNoYW5nZXMsIGFuZCB0aGVzZSBzdGVwcyBu ZWVkIHRvIGhhcHBlbiBpbiB0aGUgcmlnaHQgb3JkZXIsCm5vdCBhcyBvbmUgaHVnZSBncmVhdCBi aWcgbGV0cy1jaGFuZ2UtZXZlcnl0aGluZy1hdC1vbmNlIGtpbmQgb2YKYXBwcm9hY2guCgpJdCdz IGVpdGhlciBnb2luZyB0byB0YWtlIHRpbWUsIGZlZWRpbmcgY2hhbmdlcyBpbnRvIHRoZSBrZXJu ZWwgc2xvd2x5LApvciBpdCdzIGdvaW5nIHRvIG5lZWQgYSBsb3Qgb2YgY28tb3BlcmF0aW9uIGJl dHdlZW4gZGlmZmVyZW50IGRldmljZQpkcml2ZXIgYXV0aG9ycywgYW5kIHNoYXJpbmcgb2Ygc3Rh YmxlIGNvbW1pdHMgYmV0d2VlbiBkaWZmZXJlbnQgZ2l0CnRyZWVzLgoKUmlnaHQgbm93LCB0aGUg ZHJtX2Nvbm5lY3Rvcl9yZWdpc3RlcigpIHRoaW5nIGlzIGJhc2ljYWxseSBibG9ja2luZwpldmVy eXRoaW5nLCBhbmQgdGhhdCBuZWVkcyB0byBiZSBoYW5kbGVkIGluIGEgd2F5IHRoYXQncyBhY2Nl cHRhYmxlIHRvCmFsbCBwYXJ0aWVzLiAgVGhlIGRybSBicmlkZ2UgY29udmVyc2lvbiBpcyBzb21l dGhpbmcgdGhhdCBjYW4gb25seQpoYXBwZW4gb25jZSBhbGwgdGhlIGR1Y2tzIGFyZSBwcm9wZXJs eSBhbGlnbmVkIC0gaW93LApkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKCkgZ29uZSwgYXVkaW8gcHJv YmxlbXMgc29sdmVkIChlZywgdmlhIHRoZQoxMCBwYXRjaCBzZXJpZXMpIGFuZCB3ZSBoYXZlIGEg d2F5IHRvIGNvbnZlcnQgVERBOTk4eCB0byBhIGJyaWRnZQp3aXRob3V0IHJlcXVpcmluZyBldmVy eSBLTVMgdXNlciBvZiBUREE5OTh4IHRvIHNpbXVsdGFuZW91c2x5IGdyb3cKaXRzIG93biBkcm0g ZW5jb2RlcnMuCgotLSAKUk1LJ3MgUGF0Y2ggc3lzdGVtOiBodHRwOi8vd3d3LmFybWxpbnV4Lm9y Zy51ay9kZXZlbG9wZXIvcGF0Y2hlcy8KRlRUQyBicm9hZGJhbmQgZm9yIDAuOG1pbGUgbGluZTog Y3VycmVudGx5IGF0IDkuNk1icHMgZG93biA0MDBrYnBzIHVwCmFjY29yZGluZyB0byBzcGVlZHRl c3QubmV0LgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpk cmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK