From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915: expose a fixed brightness range to userspace Date: Thu, 20 Nov 2014 10:57:34 +0200 Message-ID: <87tx1us0zl.fsf@intel.com> References: <1415737838-9640-1-git-send-email-ullysses.a.eoff@intel.com> <20141118092239.53d5a429@jbarnes-hsw> <8B5BDC21C48FAF4CA5D7E3FE1A63A90870904E10@ORSMSX111.amr.corp.intel.com> <8B5BDC21C48FAF4CA5D7E3FE1A63A908709057DF@ORSMSX111.amr.corp.intel.com> <87389ftvon.fsf@intel.com> <8B5BDC21C48FAF4CA5D7E3FE1A63A90870905C1F@ORSMSX111.amr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id C66F06E0D6 for ; Thu, 20 Nov 2014 00:57:32 -0800 (PST) In-Reply-To: <8B5BDC21C48FAF4CA5D7E3FE1A63A90870905C1F@ORSMSX111.amr.corp.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Eoff, Ullysses A" , =?utf-8?Q?St=C3=A9pha?= =?utf-8?Q?ne?= Marchesin Cc: "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAxOSBOb3YgMjAxNCwgIkVvZmYsIFVsbHlzc2VzIEEiIDx1bGx5c3Nlcy5hLmVvZmZA aW50ZWwuY29tPiB3cm90ZToKPiBKYW5pLAo+Cj4gRmlyc3Qgb2YgYWxsLCB0aGFuayB5b3UgZm9y IHlvdXIgZXhwbGFuYXRpb24uICBJIHdhcyB1bmF3YXJlIG9mIHRoZQo+IG1vdGl2YXRpb25zIGJl aGluZCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbi4gIFlvdSBhcmUgZXhhY3RseQo+IHJpZ2h0 IHRoYXQgdGhlIHdob2xlIHJlYXNvbiBmb3IgYWxsIHRoaXMgaXMgdGhhdCB1c2Vyc3BhY2UgaXMg ZXhwZWN0aW5nCj4gYWN0dWFsX2JyaWdodG5lc3MgdG8gYWx3YXlzIG1hdGNoIHRoZSBicmlnaHRu ZXNzIGl0IHNldC4KPgo+IEkgd291bGQgbGlrZSB0byBwb2ludCBvdXQgdGhhdCBJIG5ldmVyIG1l YW50IHRvIHN1Z2dlc3QgdGhlcmUgd2FzIGEKPiAiZnVuY3Rpb25hbCIgYnVnIGluIHRoZSBkcml2 ZXIuICBBbmQgbXkgbW90aXZhdGlvbnMgd2VyZSBtb3JlIGFib3V0Cj4gdGVzdGFiaWxpdHkgdmlh IHN5c2ZzIHRoYW4gYW55dGhpbmcgZWxzZSBhbmQgdGhlIGFzc3VtcHRpb24gdGhhdCBicmlnaHRu ZXNzCj4gd2FzIHN1cHBvc2VkIHRvIGFsd2F5cyBlcXVhbCBhY3R1YWxfYnJpZ2h0bmVzcy4gIEkg cmVhbGx5IHNob3VsZCBoYXZlCj4gYmVlbiBtb3JlIGV4cGxpY2l0IGluIHBvaW50aW5nIHRoaXMg b3V0IG11Y2ggc29vbmVyIGlmIGl0IHdhc24ndCBjbGVhci4KCk1heWJlIHlvdSBtaXNzZWQgaXQs IGJ1dCB3ZSBkaWQgaGF2ZSBhIHJlcG9ydGVkIGJ1ZyBbMV0gd2hpY2ggd2FzIGZpeGVkCihvciB3 b3JrZWQgYXJvdW5kKSBieSB5b3VyCgpjb21taXQgNjczZTdiYmRiMzkyMGI2MmNmYzZjNzEwYmVh NjI2YjBhOWIwZjQzYQpBdXRob3I6IFUuIEFydGllIEVvZmYgPHVsbHlzc2VzLmEuZW9mZkBpbnRl bC5jb20+CkRhdGU6ICAgTW9uIFNlcCAyOSAxNTo0OTozMiAyMDE0IC0wNzAwCgogICAgZHJtL2k5 MTU6IGludGVsX2JhY2tsaWdodCBzY2FsZSgpIG1hdGggV0EKCmFuZCB0aGVyZSB3YXMgdGhlIHNh bWUgZGlzY3Vzc2lvbiBhYm91dCBzY2FsaW5nIHByb2JsZW1zIGFzIGhlcmUuIEl0J3MgYQpyZWFs IGlzc3VlLCBubyBuZWVkIGZvciByZWdyZXRzIG9uIHlvdXIgcGFydC4KClsxXSBodHRwczovL2J1 Z3ppbGxhLmtlcm5lbC5vcmcvc2hvd19idWcuY2dpP2lkPTg1ODYxCgo+IFRoYW5rcyBmb3IgcHJv dmlkaW5nIGEgbGluayB0byB0aGUgZG9jdW1lbnRhdGlvbi4uLiBJIHdpc2ggSSBoYWQgYmVlbgo+ IG1vcmUgZGlsaWdlbnQgaW4gbG9va2luZyBmb3IgdGhpcyBpbiB0aGUgZmlyc3QgcGxhY2UuICBJ J20gYWx3YXlzIG1vcmUKPiBpbmNsaW5lZCB0byBkZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbi4g IEFuZCBpbiBsaWdodCBvZiBpdCwgSSBzdGFuZAo+IGNvcnJlY3RlZC4KPgo+IEFsdGhvdWdoIHlv dXIgbmV3IHBhdGNoIHdvdWxkIGxpa2VseSB3b3JrLCBJIGRvbid0IHRoaW5rIGl0J3MgbmVjZXNz YXJ5Cj4gYW55bW9yZSB0byBtYWtlIGJyaWdodG5lc3M9PWFjdHVhbF9icmlnaHRuZXNzIGFsd2F5 cyBob2xkIHRydWU7IHNpbmNlCj4gdGVzdGluZyBmb3IgdGhhdCBpcyB0aGUgaW5jb3JyZWN0IHRo aW5nIHRvIGRvIGluIHRoZSBmaXJzdCBwbGFjZSAoYmFzZWQgb24KPiB0aGUgZG9jdW1lbnRhdGlv bikuICBOb25ldGhlbGVzcywgdGVzdGluZyBicmlnaHRuZXNzIGZyb20gdXNlcnNwYWNlIHdpbGwK PiBqdXN0IGhhdmUgdG8gZ2V0IGEgbGl0dGxlIG1vcmUgY3JlYXRpdmUuCgpJIGRvbid0IHRoaW5r IHRoZXJlJ3MgYW55dGhpbmcgcmVhbGx5IGhvcnJpYmx5IHdyb25nIHdpdGggdGhlIHBhdGNoLCBz bwpJJ20gc3RhcnRpbmcgdG8gdGhpbmsgbWF5YmUgd2Ugc2hvdWxkIGp1c3QgYXBwbHkgaXQuIEkg YXNzdW1lIGl0IHdvdWxkCmhlbHAgeW91ciBzY2VuYXJpbyB0b28uIElmIHRoZXJlJ3Mgc3RpbGwg dXNlcnNwYWNlIG91dCB0aGVyZSB0aGF0IG1ha2VzCnRoZSBhc3N1bXB0aW9uIGFueXdheSwgYW5k IGZhaWxzIGJlY2F1c2Ugb2YgaXQsIHdlIG1heSBub3QgZXZlbiBoYXZlIGEKY2hvaWNlLgoKVGhv dWdodHM/Cgo+IEFwb2xvZ2llcyBmb3IgYWxsIHRoZSBub2lzZS4uLiBub3cgSSdsbCBnbyBtYWtl IHNvbWUgZWxzZXdoZXJlLiA7KQoKT2gsIG5ldmVyIG1pbmQgYWJvdXQgdGhhdC4KCgpCUiwKSmFu aS4KCj4KPiBVLiBBcnRpZQo+Cj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+IEZyb206 IEphbmkgTmlrdWxhIFttYWlsdG86amFuaS5uaWt1bGFAbGludXguaW50ZWwuY29tXQo+PiBTZW50 OiBXZWRuZXNkYXksIE5vdmVtYmVyIDE5LCAyMDE0IDEyOjU3IEFNCj4+IFRvOiBFb2ZmLCBVbGx5 c3NlcyBBOyBTdMOpcGhhbmUgTWFyY2hlc2luCj4+IENjOiBKZXNzZSBCYXJuZXM7IGludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPj4gU3ViamVjdDogUkU6IFtJbnRlbC1nZnhdIFtQQVRD SF0gZHJtL2k5MTU6IGV4cG9zZSBhIGZpeGVkIGJyaWdodG5lc3MgcmFuZ2UgdG8gdXNlcnNwYWNl Cj4+IAo+PiBPbiBXZWQsIDE5IE5vdiAyMDE0LCAiRW9mZiwgVWxseXNzZXMgQSIgPHVsbHlzc2Vz LmEuZW9mZkBpbnRlbC5jb20+IHdyb3RlOgo+PiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0t LQo+PiA+PiBGcm9tOiBTdMOpcGhhbmUgTWFyY2hlc2luIFttYWlsdG86c3RlcGhhbmUubWFyY2hl c2luQGdtYWlsLmNvbV0KPj4gPj4gU2VudDogVHVlc2RheSwgTm92ZW1iZXIgMTgsIDIwMTQgMzo1 MyBQTQo+PiA+PiBUbzogRW9mZiwgVWxseXNzZXMgQQo+PiA+PiBDYzogSmFuaSBOaWt1bGE7IEpl c3NlIEJhcm5lczsgaW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+PiA+PiBTdWJqZWN0 OiBSZTogW0ludGVsLWdmeF0gW1BBVENIXSBkcm0vaTkxNTogZXhwb3NlIGEgZml4ZWQgYnJpZ2h0 bmVzcyByYW5nZSB0byB1c2Vyc3BhY2UKPj4gPj4KPj4gPj4gT24gVHVlLCBOb3YgMTgsIDIwMTQg YXQgMzoxOCBQTSwgRW9mZiwgVWxseXNzZXMgQQo+PiA+PiA8dWxseXNzZXMuYS5lb2ZmQGludGVs LmNvbT4gd3JvdGU6Cj4+ID4+ID4gVGhhbmtzIEplc3NlIGZvciB0aGUgYWNrLgo+PiA+PiA+Cj4+ ID4+ID4gVW5mb3J0dW5hdGVseSBJIGp1c3QgbGVhcm5lZCBmcm9tIFN0w6lwaGFuZSB0aGF0IHRo ZXJlCj4+ID4+ID4gYXJlIGNlcnRhaW4gZGV2aWNlcyB3aGljaCBvbmx5IHN1cHBvcnQgMjU2IGxl dmVscywgc28gdGhpcwo+PiA+PiA+IHBhdGNoIHdvdWxkIGRvIHVzIG5vIGdvb2QgYXQgc29sdmlu ZyB0aGUgcmVhbCBpc3N1ZSBmb3IKPj4gPj4gPiBzdWNoIGRldmljZXMuCj4+ID4+ID4KPj4gPj4g PiBXaHkgY2FuJ3Qgd2UganVzdCB1c2UgYSBkeW5hbWljIDE6MSBtYXBwaW5nIGFzIHdhcwo+PiA+ PiA+IHN1Z2dlc3RlZCBiZWZvcmU/ICBJIHdvdWxkIHZvdGUgZm9yIHRoYXQgaW5zdGVhZC4KPj4g Pj4gPgo+PiA+Pgo+PiA+PiBSaWdodCwgZnJvbSBteSAoY29uc3VtZXIncykgcGVyc3BlY3RpdmUs IGEgMToxIG1hcHBpbmcgaXMgc2ltcGxlci4gQnV0Cj4+ID4+IHRoZSBjb25mdXNpbmcgcGFydCBm b3IgbWUgaXMgdGhhdCAoYXMgZmFyIGFzIEkgY2FuIHNlZSkgdGhlIGN1cnJlbnQKPj4gPj4gbWFw cGluZyBzaG91bGQgYmUgMToxIChiZWNhdXNlIHRoZSB1c2VyIGFuZCBodyByYW5nZXMgYXJlIHRo ZSBzYW1lKSwKPj4gPj4gZXZlbiB0aG91Z2ggaXQgZ29lcyB0aHJvdWdoIHRoZSBzY2FsZSBsb2dp Yy4gSXMgdGhlIHNjYWxlKCkgZnVuY3Rpb24KPj4gPj4gbWF5YmUgbm90IHRoZSBpZGVudGl0eT8g SWYgaXQgaXNuJ3QsIG1heWJlIHdlIGp1c3QgbmVlZCB0byBtYWtlIGl0Cj4+ID4+IHNvLi4uCj4+ ID4+Cj4+ID4KPj4gPiBZZXMsIGlmIHRoZSB1c2VyIGFuZCBodyByYW5nZXMgYXJlIHRoZSBzYW1l LCB0aGVuIHRoZXJlIHdpbGwgYmUgYQo+PiA+IDE6MSBtYXBwaW5nLCBjdXJyZW50bHksIGFuZCBu byBpc3N1ZS4gIEl0J3MgdGhlIG90aGVyIGNhc2Ugd2hlcmUKPj4gPiB0aGUgaHcgcmFuZ2UgaXMg c21hbGxlciB0aGFuIHRoZSB1c2VyIHJhbmdlIHdlIGVuZCB1cCB3aXRoCj4+ID4gYnJpZ2h0bmVz cyAhPSBhY3R1YWxfYnJpZ2h0bmVzcyBpbiBzeXNmcy4gIFRoZSBzY2FsZSBsb2dpYyByb3VuZHMK Pj4gPiBpbnRvIGRpc2NyZXRlIHZhbHVlcyBvZiB0aGUgcmFuZ2VzIHdoZXJlIG11bHRpcGxlIHVz ZXIgdmFsdWVzIGNhbgo+PiA+IHNjYWxlIHRvIHRoZSBzYW1lIGh3IHZhbHVlIGluIHRoaXMgY2Fz ZS4gIFJpZ2h0IG5vdywgdXNlciByYW5nZSBpcwo+PiA+IFswLi5tYXggaHddIGFuZCBodyByYW5n ZSBpcyBbbWluX2h3Li5tYXhfaHddLiAgSWYgbWluX2h3ID4gMCwKPj4gPiB0aGVuIHdlIGVuY291 bnRlciB0aGUgcHJvYmxlbS4gIFRoZSBwcm9wb3NhbCBpcyB0byBzZXQgdGhlIHVzZXIKPj4gPiBy YW5nZSB0byBbMC4uKGh3X21heCAtIGh3X21pbildLgo+PiAKPj4gU29tZSB0aGluZ3MgdG8gY29u c2lkZXIuCj4+IAo+PiBIYXZlIHlvdSBoZWFyZCBvZiBhbnkgcmVxdWlyZW1lbnRzIHRvIHN1cHBv cnQgY2hhbmdpbmcgYmFja2xpZ2h0IFBXTQo+PiBmcmVxdWVuY3kgcnVuIHRpbWU/IFdlIGN1cnJl bnRseSBkb24ndCBzdXBwb3J0IGl0LCBhbmQgaXQgd291bGQgcmVxdWlyZQo+PiBhIGZpeGVkIHJh bmdlLiBUaGUgYmFja2xpZ2h0IGNsYXNzIGludGVyZmFjZSBkb2VzIG5vdCBzdXBwb3J0IGNoYW5n aW5nCj4+IG1heCBicmlnaHRuZXNzIG9uIHRoZSBmbHkuIFN1cmUsIHdlIGNhbiBpbXBsZW1lbnQg dGhpcyBsYXRlciBpZgo+PiByZXF1aXJlZCwgYnV0IHdlIG5vdyBoYXZlIG1vc3Qgb2Ygd2hhdCdz IG5lZWRlZCBmb3IgdGhpcyBpbiBwbGFjZS4KPj4gCj4+IFRoZSBsdW1pbmFuY2Ugb2YgdGhlIGJh Y2tsaWdodCBpcyBub3QgYSBsaW5lYXIgZnVuY3Rpb24gb2YgdGhlCj4+IGJyaWdodG5lc3MgdmFs dWUgc2V0LiBDdXJyZW50bHkgYSBzaW5nbGUgYnJpZ2h0bmVzcyBzdGVwIGhhcyBhIGRpZmZlcmVu dAo+PiBsdW1pbmFuY2UgY2hhbmdlIGRlcGVuZGluZyBvbiB0aGUgYWJzb2x1dGUgdmFsdWUuIFRo ZXJlJ3MgYmVlbiB0YWxrCj4+IGFib3V0IGxldHRpbmcgdXNlcnNwYWNlIGZpeCB0aGlzLCBidXQg SSdtIG5vdCBjb252aW5jZWQgdGhlIHVzZXJzcGFjZQo+PiBoYXMgYW55IGNoYW5jZSBvZiBhYnN0 cmFjdGluZyB0aGUgcGxldGhvcmEgb2YgaGFyZHdhcmUgb3V0IHRoZXJlLiBBcyBpdAo+PiBoYXBw ZW5zLCB0aGUgQUNQSSBvcHJlZ2lvbiB0aGUgZHJpdmVyIGhhcyBhY2Nlc3MgdG8sIGRvZXMgaGF2 ZSBhIGxvb2t1cAo+PiB0YWJsZSBmb3IgdGhpcy4gV2UgY291bGQgZml4IHRoaXMgaW4gdGhlIGRy aXZlciwgYnV0IG5vdCBpZiB3ZSBjb21taXQgdG8KPj4gaGF2aW5nIDE6MSBtYXBwaW5nLgo+PiAK Pj4gQW5vdGhlciB0aGluZyB0byBjb25zaWRlciBpcyB0aGF0IHRoZSBtYXggdmFsdWUgd2UgY3Vy cmVudGx5IGV4cG9zZSBpcwo+PiBxdWl0ZSBtZWFuaW5nbGVzcyB0byB0aGUgdXNlcnNwYWNlLiBJ IHF1ZXN0aW9uIHRoZSBwb2ludCBvZiBleHBvc2luZyBhCj4+IHJhbmdlIG9mLCBzYXksIDAuLjEw MDAwIHdoZW4gaW4gcmVhbGl0eSB5b3UnbGwgb25seSBnZXQgbWF5YmUgMTAwCj4+IGRpc3RpbmN0 IGxldmVscyBvZiBicmlnaHRuZXNzLCBkZXBlbmRpbmcgb24gdGhlIGJhY2tsaWdodCBmcmVxdWVu Y3kuCj4+IAo+PiBBbiBpbnRlcmVzdGluZyBhbmQgcGVyaGFwcyBjb3VudGVyIGludHVpdGl2ZSBk ZXRhaWwsIHRoZSBoaWdoZXIgdGhlIFBXTQo+PiBmcmVxdWVuY3ksIGkuZS4gdGhlIGhpZ2hlciB0 aGUgZXhwb3NlZCBtYXgsIHRoZSBmZXdlciB1c2VyCj4+IGRpc3Rpbmd1aXNoYWJsZSBsZXZlbHMg eW91IGNhbiBhY3R1YWxseSBnZXQgZnJvbSB0aGUgYmFja2xpZ2h0LiBUaGlzIGlzCj4+IGR1ZSB0 byB0aGUgcmlzZSBhbmQgZmFsbCB0aW1lcyBpbiB0aGUgYmFja2xpZ2h0IGZvbGxvd2luZyB0aGUg UFdNCj4+IHNpZ25hbC4KPj4gCj4+IEZpbmFsbHksIGl0IHNlZW1zIHRvIG1lIHRoZSBwcm9ibGVt IHdpdGggdGhlIHNjYWxpbmcgYm9pbHMgZG93biB0bwo+PiB1c2Vyc3BhY2UgZXhwZWN0aW5nIGFj dHVhbF9icmlnaHRuZXNzIHRvIGFsd2F5cyBtYXRjaCB0aGUgYnJpZ2h0bmVzcyBpdAo+PiBzZXQu IFRoYXQncyB0aGUgdmFsdWUgcmVhZCBiYWNrIGZyb20gdGhlIGhhcmR3YXJlLiBUaGUgQUJJIGV4 cGxpY2l0bHkKPj4gc2F5cyB0aGUgYnJpZ2h0bmVzcyBzdG9yZWQgaW4gdGhlIGRyaXZlciBtYXkg bm90IGJlIHRoZSBhY3R1YWwKPj4gYnJpZ2h0bmVzcyBbMV0uIEkgZG9uJ3QgdGhpbmsgdGhlcmUg YXJlIGd1YXJhbnRlZXMgdGhhdCBhbGwgaGFyZHdhcmUKPj4gd291bGQgb3IgY291bGQgbWFpbnRh aW4gdGhlIHByZWNpc2lvbiBlaXRoZXIuIEkgdGhpbmsgdGhhdCdzIGJyb2tlbiBpbgo+PiB1c2Vy c3BhY2UsIGJ1dCB3ZSdyZSBub3Qgc3VwcG9zZWQgdG8gc2F5IHN1Y2ggdGhpbmdzLgo+PiAKPj4g U29vLi4uIGhlcmUncyBhbiBhdHRlbXB0IHRvIGJlIGNvbnN0cnVjdGl2ZSBhZnRlciBhbGwgdGhl IHdoaW5pbmcKPj4gYWJvdmUuIDspIEhvdyBhYm91dCB0aGlzIHRvIGFsd2F5cyByZXR1cm4gdGhl IHNhbWUgdmFsdWUgaWYgdGhlIGFjdHVhbAo+PiBicmlnaHRuZXNzIGR1dHkgY3ljbGUgaW4gdGhl IGhhcmR3YXJlIGhhcyBub3QgY2hhbmdlZD8gVG90YWxseSB1bnRlc3RlZCwKPj4gb2YgY291cnNl Lgo+PiAKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BhbmVsLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wYW5lbC5jCj4+IGluZGV4IDRkNjM4MzliZDli NC4uODY3ODQ2N2Q1ZDgzIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wYW5lbC5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BhbmVsLmMKPj4g QEAgLTEwMjQsNyArMTAyNCwxMiBAQCBzdGF0aWMgaW50IGludGVsX2JhY2tsaWdodF9kZXZpY2Vf Z2V0X2JyaWdodG5lc3Moc3RydWN0IGJhY2tsaWdodF9kZXZpY2UgKmJkKQo+PiAgCWRybV9tb2Rl c2V0X2xvY2soJmRldi0+bW9kZV9jb25maWcuY29ubmVjdGlvbl9tdXRleCwgTlVMTCk7Cj4+IAo+ PiAgCWh3X2xldmVsID0gaW50ZWxfcGFuZWxfZ2V0X2JhY2tsaWdodChjb25uZWN0b3IpOwo+PiAt CXJldCA9IHNjYWxlX2h3X3RvX3VzZXIoY29ubmVjdG9yLCBod19sZXZlbCwgYmQtPnByb3BzLm1h eF9icmlnaHRuZXNzKTsKPj4gKwlpZiAoaHdfbGV2ZWwgPT0gc2NhbGVfdXNlcl90b19odyhjb25u ZWN0b3IsIGJkLT5wcm9wcy5icmlnaHRuZXNzLAo+PiArCQkJCQkgYmQtPnByb3BzLm1heF9icmln aHRuZXNzKSkKPj4gKwkJcmV0ID0gYmQtPnByb3BzLmJyaWdodG5lc3M7Cj4+ICsJZWxzZQo+PiAr CQlyZXQgPSBzY2FsZV9od190b191c2VyKGNvbm5lY3RvciwgaHdfbGV2ZWwsCj4+ICsJCQkJICAg ICAgIGJkLT5wcm9wcy5tYXhfYnJpZ2h0bmVzcyk7Cj4+IAo+PiAgCWRybV9tb2Rlc2V0X3VubG9j aygmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0aW9uX211dGV4KTsKPj4gIAlpbnRlbF9ydW50aW1l X3BtX3B1dChkZXZfcHJpdik7Cj4+IAo+PiAKPj4gQlIsCj4+IEphbmkuCj4+IAo+PiAKPj4gCj4+ IFsxXSBodHRwOi8vZ2l0Lmtlcm5lbC5vcmcvY2dpdC9saW51eC9rZXJuZWwvZ2l0L3RvcnZhbGRz L2xpbnV4LmdpdC90cmVlL0RvY3VtZW50YXRpb24vQUJJL3N0YWJsZS9zeXNmcy1jbGFzcy1iYWNr bGlnaHQKPj4gCj4+IAo+PiAtLQo+PiBKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVj aG5vbG9neSBDZW50ZXIKCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5v bG9neSBDZW50ZXIKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK