From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH v2 01/10] drm/i915: Initialize Color Manager Date: Fri, 5 Jun 2015 18:00:44 -0700 Message-ID: <20150606010044.GF1099@intel.com> References: <1433425361-17864-1-git-send-email-Kausal.Malladi@intel.com> <1433425361-17864-2-git-send-email-Kausal.Malladi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1433425361-17864-2-git-send-email-Kausal.Malladi@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Kausal Malladi Cc: annie.j.matheson@intel.com, dhanya.p.r@intel.com, dri-devel@lists.freedesktop.org, vijay.a.purushothaman@intel.com, jesse.barnes@intel.com, daniel.vetter@intel.com, intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBKdW4gMDQsIDIwMTUgYXQgMDc6MTI6MzJQTSArMDUzMCwgS2F1c2FsIE1hbGxhZGkg d3JvdGU6Cj4gRnJvbTogS2F1c2FsIE1hbGxhZGkgPEthdXNhbC5NYWxsYWRpQGludGVsLmNvbT4K PiAKPiBDb2xvciBNYW5hZ2VyIGlzIGFuIGV4dGVuc2lvbiBpbiBpOTE1IGRyaXZlciB0byBoYW5k bGUgY29sb3IgY29ycmVjdGlvbgo+IGFuZCBlbmhhbmNlbWVudHMgYWNyb3NzIHZhcmlvdXMgSW50 ZWwgcGxhdGZvcm1zLgo+IAo+IFRoaXMgcGF0Y2ggaW5pdGlhbGl6ZXMgY29sb3IgbWFuYWdlciBm cmFtZXdvcmsgYnkgOgo+IDEuIEFkZGluZyB0d28gbmV3IGZpbGVzLCBpbnRlbF9jb2xvcl9tYW5h Z2VyKC5jLy5oKQo+IDIuIEludHJvZHVjaW5nIG5ldyBwb2ludGVycyBpbiBEUk0gbW9kZV9jb25m aWcgc3RydWN0dXJlIHRvCj4gICAgY2FycnkgQ1NDIGFuZCBHYW1tYSBjb2xvciBjb3JyZWN0aW9u IHByb3BlcnRpZXMuCj4gMy4gQ3JlYXRpbmcgdGhlc2UgRFJNIHByb3BlcnRpZXMgaW4gQ29sb3Ig TWFuYWdlciBpbml0aWFsaXphdGlvbgo+ICAgIHNlcXVlbmNlLgo+IAo+IHYyOiBBZGRyZXNzaW5n IFNvbmlrYSdzIHJldmlldyBjb21tZW50Lgo+IDEuIE1hZGUgaW50ZWxfY29sb3JfbWFuYWdlcl9p bml0IHZvaWQKPiAyLiBNb3ZlZCBpbml0IGFmdGVyIE5VTV9QSVBFUyBjaGVjawo+IAo+IFNpZ25l ZC1vZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KPiBT aWduZWQtb2ZmLWJ5OiBLYXVzYWwgTWFsbGFkaSA8S2F1c2FsLk1hbGxhZGlAaW50ZWwuY29tPgo+ IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZSAgICAgICAgICAgICAgfCAgMyAr Kwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvcl9tYW5hZ2VyLmMgfCA0OCArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf Y29sb3JfbWFuYWdlci5oIHwgMzIgKysrKysrKysrKysrKysrKysrKysKPiAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jICAgICAgIHwgIDMgKysKPiAgaW5jbHVkZS9kcm0vZHJt X2NydGMuaCAgICAgICAgICAgICAgICAgICAgIHwgIDQgKysrCj4gIDUgZmlsZXMgY2hhbmdlZCwg OTAgaW5zZXJ0aW9ucygrKQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfY29sb3JfbWFuYWdlci5jCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9jb2xvcl9tYW5hZ2VyLmgKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZQo+ IGluZGV4IGI3ZGRmNDguLmM2MmQwNDggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvTWFrZWZpbGUKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZQo+IEBAIC04 OSw2ICs4OSw5IEBAIGk5MTUteSArPSBpOTE1X3ZncHUubwo+ICAjIGxlZ2FjeSBob3Jyb3JzCj4g IGk5MTUteSArPSBpOTE1X2RtYS5vCj4gIAo+ICsjIENvbG9yIE1hbmFnZW1lbnQKPiAraTkxNS15 ICs9IGludGVsX2NvbG9yX21hbmFnZXIubwo+ICsKPiAgb2JqLSQoQ09ORklHX0RSTV9JOTE1KSAg Kz0gaTkxNS5vCj4gIAo+ICBDRkxBR1NfaTkxNV90cmFjZV9wb2ludHMubyA6PSAtSSQoc3JjKQo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvcl9tYW5hZ2VyLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvcl9tYW5hZ2VyLmMKPiBuZXcgZmlsZSBt b2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAuLmY3ZTIzODAKPiAtLS0gL2Rldi9udWxsCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3JfbWFuYWdlci5jCj4gQEAgLTAsMCAr MSw0OCBAQAo+ICsvKgo+ICsgKiBDb3B5cmlnaHQgwqkgMjAxNSBJbnRlbCBDb3Jwb3JhdGlvbgo+ ICsgKgo+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwg dG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQo+ICsgKiBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5k IGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLAo+ICsgKiB0 byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0 aG91dCBsaW1pdGF0aW9uCj4gKyAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1l cmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAo+ICsgKiBhbmQvb3Igc2VsbCBj b3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUK PiArICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xs b3dpbmcgY29uZGl0aW9uczoKPiArICoKPiArICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Ug YW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgKGluY2x1ZGluZyB0aGUgbmV4dAo+ICsgKiBwYXJh Z3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9y dGlvbnMgb2YgdGhlCj4gKyAqIFNvZnR3YXJlLgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMg UFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBP Ugo+ICsgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5U SUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKPiArICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV UlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMCj4gKyAqIFRIRSBB VVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1B R0VTIE9SIE9USEVSCj4gKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09O VFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCj4gKyAqIEZST00sIE9VVCBPRiBPUiBJ TiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElO R1MKPiArICogSU4gVEhFIFNPRlRXQVJFLgo+ICsgKgo+ICsgKiBBdXRob3JzOgo+ICsgKiBTaGFz aGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5jb20+Cj4gKyAqIEthdXNhbCBNYWxs YWRpIDxLYXVzYWwuTWFsbGFkaUBpbnRlbC5jb20+Cj4gKyAqLwo+ICsKPiArI2luY2x1ZGUgImlu dGVsX2NvbG9yX21hbmFnZXIuaCIKPiArCj4gK3ZvaWQgaW50ZWxfY29sb3JfbWFuYWdlcl9pbml0 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gK3sKPiArCXN0cnVjdCBkcm1fbW9kZV9jb25maWcg KmNvbmZpZyA9ICZkZXYtPm1vZGVfY29uZmlnOwo+ICsKPiArCS8qIENyZWF0ZSBHYW1tYSBhbmQg Q1NDIHByb3BlcnRpZXMgKi8KPiArCWNvbmZpZy0+Z2FtbWFfcHJvcGVydHkgPSBkcm1fcHJvcGVy dHlfY3JlYXRlKGRldiwKPiArCQlEUk1fTU9ERV9QUk9QX0JMT0IsICJnYW1tYV9wcm9wZXJ0eSIs IDApOwo+ICsJaWYgKCFjb25maWctPmdhbW1hX3Byb3BlcnR5KQo+ICsJCURSTV9FUlJPUigiR2Ft bWEgcHJvcGVydHkgY3JlYXRpb24gZmFpbGVkXG4iKTsKPiArCWVsc2UKPiArCQlEUk1fREVCVUdf RFJJVkVSKCJDcmVhdGVkIEdhbW1hIHByb3BlcnR5XG4iKTsKPiArCj4gKwljb25maWctPmNzY19w cm9wZXJ0eSA9IGRybV9wcm9wZXJ0eV9jcmVhdGUoZGV2LAo+ICsJCQlEUk1fTU9ERV9QUk9QX0JM T0IsICJjc2NfcHJvcGVydHkiLCAwKTsKPiArCWlmICghY29uZmlnLT5jc2NfcHJvcGVydHkpCj4g KwkJRFJNX0VSUk9SKCJDU0MgcHJvcGVydHkgY3JlYXRpb24gZmFpbGVkXG4iKTsKPiArCWVsc2UK PiArCQlEUk1fREVCVUdfRFJJVkVSKCJDcmVhdGVkIENTQyBwcm9wZXJ0eVxuIik7Cj4gK30KPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3JfbWFuYWdlci5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3JfbWFuYWdlci5oCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwLi4xNTRiZjE2Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yX21hbmFnZXIuaAo+IEBAIC0wLDAgKzEs MzIgQEAKPiArLyoKPiArICogQ29weXJpZ2h0IMKpIDIwMTUgSW50ZWwgQ29ycG9yYXRpb24KPiAr ICoKPiArICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRv IGFueSBwZXJzb24gb2J0YWluaW5nIGEKPiArICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBh c3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwKPiArICogdG8g ZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhv dXQgbGltaXRhdGlvbgo+ICsgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJn ZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKPiArICogYW5kL29yIHNlbGwgY29w aWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlCj4g KyAqIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93 aW5nIGNvbmRpdGlvbnM6Cj4gKyAqCj4gKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFu ZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIChpbmNsdWRpbmcgdGhlIG5leHQKPiArICogcGFyYWdy YXBoKSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRp b25zIG9mIHRoZQo+ICsgKiBTb2Z0d2FyZS4KPiArICoKPiArICogVEhFIFNPRlRXQVJFIElTIFBS T1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IK PiArICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElF UyBPRiBNRVJDSEFOVEFCSUxJVFksCj4gKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ T1NFIEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAo+ICsgKiBUSEUgQVVU SE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdF UyBPUiBPVEhFUgo+ICsgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRS QUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwo+ICsgKiBGUk9NLCBPVVQgT0YgT1IgSU4g Q09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdT Cj4gKyAqIElOIFRIRSBTT0ZUV0FSRS4KPiArICoKPiArICogQXV0aG9yczoKPiArICogU2hhc2hh bmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+ICsgKiBLYXVzYWwgTWFsbGFk aSA8S2F1c2FsLk1hbGxhZGlAaW50ZWwuY29tPgo+ICsgKi8KPiArCj4gKyNpbmNsdWRlIDxkcm0v ZHJtUC5oPgo+ICsjaW5jbHVkZSA8ZHJtL2RybV9jcnRjX2hlbHBlci5oPgo+ICsKPiArLyogR2Vu ZXJpYyBGdW5jdGlvbiBwcm90b3R5cGVzICovCj4gK3ZvaWQgaW50ZWxfY29sb3JfbWFuYWdlcl9p bml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwoKV2hpbGUgSSBwZXJzb25hbGx5IGRvbid0IG1p bmQgY3JlYXRpbmcgYSBuZXcgaGVhZGVyIGZvciBwcm90b3R5cGVzLCBtb3N0Cm9mIG91ciBvdGhl ciBLTVMtcmVsYXRlZCBzdHVmZiBqdXN0IGdldHMgdGhyb3duIGluIGludGVsX2Rydi5oIHVuZGVy IGEKY29tbWVudCBsaWtlICIvKiBpbnRlbF9mb29iYXIuYyAqLyIgc28gdGhpcyBpcyBhIGxpdHRs ZSBpbmNvbnNpc3RlbnQuCk1heWJlIHdlIHNob3VsZCBrZWVwIHRoZXNlIHByb3RvdHlwZXMgdGhl cmUgYXMgd2VsbCBzaW5jZSB0aGF0J3MgdGhlCmZpbGUgbW9zdCBkZXZlbG9wZXJzIGFyZSBnb2lu ZyB0byBsb29rIGZvciB0aGVzZSBpbiBvdXQgb2YgaGFiaXQ/CgoKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCj4gaW5kZXggMDY3YjFkZS4uMjMyMmRlZSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtNDQsNiArNDQsNyBAQAo+ICAjaW5jbHVkZSA8 ZHJtL2RybV9wbGFuZV9oZWxwZXIuaD4KPiAgI2luY2x1ZGUgPGRybS9kcm1fcmVjdC5oPgo+ICAj aW5jbHVkZSA8bGludXgvZG1hX3JlbWFwcGluZy5oPgo+ICsjaW5jbHVkZSAiaW50ZWxfY29sb3Jf bWFuYWdlci5oIgo+ICAKPiAgLyogUHJpbWFyeSBwbGFuZSBmb3JtYXRzIGZvciBnZW4gPD0gMyAq Lwo+ICBzdGF0aWMgY29uc3QgdWludDMyX3QgaTh4eF9wcmltYXJ5X2Zvcm1hdHNbXSA9IHsKPiBA QCAtMTQ2NzMsNiArMTQ2NzQsOCBAQCB2b2lkIGludGVsX21vZGVzZXRfaW5pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQo+ICAJaWYgKElOVEVMX0lORk8oZGV2KS0+bnVtX3BpcGVzID09IDApCj4g IAkJcmV0dXJuOwo+ICAKPiArCWludGVsX2NvbG9yX21hbmFnZXJfaW5pdChkZXYpOwo+ICsKPiAg CWludGVsX2luaXRfZGlzcGxheShkZXYpOwo+ICAJaW50ZWxfaW5pdF9hdWRpbyhkZXYpOwo+ICAK PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaCBiL2luY2x1ZGUvZHJtL2RybV9j cnRjLmgKPiBpbmRleCAzYjRkOGE0Li4yYTc1ZDdkIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJt L2RybV9jcnRjLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCj4gQEAgLTExNzYsNiAr MTE3NiwxMCBAQCBzdHJ1Y3QgZHJtX21vZGVfY29uZmlnIHsKPiAgCXN0cnVjdCBkcm1fcHJvcGVy dHkgKnN1Z2dlc3RlZF94X3Byb3BlcnR5Owo+ICAJc3RydWN0IGRybV9wcm9wZXJ0eSAqc3VnZ2Vz dGVkX3lfcHJvcGVydHk7Cj4gIAo+ICsJLyogQ29sb3IgTWFuYWdlbWVudCBQcm9wZXJ0aWVzICov Cj4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpnYW1tYV9wcm9wZXJ0eTsKPiArCXN0cnVjdCBkcm1f cHJvcGVydHkgKmNzY19wcm9wZXJ0eTsKPiArCgpJIG5vdGljZSB5b3UncmUgYWRkaW5nIHRoZXNl IHRvIGEgY29yZSBEUk0gc3RydWN0dXJlOyBpcyB0aGUgZXhwZWN0YXRpb24KdGhhdCBvdGhlciBk cml2ZXJzIHdpbGwgd2FudCB0byByZS11c2UgdGhlc2UgcHJvcGVydGllcyBmb3IgdGhlaXIgb3du CmNvbG9yIGNvcnJlY3Rpb24gZnVuY3Rpb25hbGl0eT8KCklmIHRoZSBhbnN3ZXIgaXMgeWVzLCB5 b3UnbGwgZGVmaW5pdGVseSBuZWVkIHRvIGFkZCBkb2N1bWVudGF0aW9uIGZvcgp0aGUgcHJvcGVy dHkgdG8gRG9jdW1lbnRhdGlvbi9Eb2NCb29rL2RybS50bXBsIHdoaWNoIHdpbGwgZ2V0IGNvbXBp bGVkCmludG8gZG9jdW1lbnRhdGlvbiBsaWtlIHlvdSBzZWUgYXQKaHR0cDovL3Blb3BsZS5mcmVl ZGVza3RvcC5vcmcvfmRhbnZldC9kcm0vZHJtLWttcy1wcm9wZXJ0aWVzLmh0bWwjaWRwNTk1NjMx MjAKKGFjdHVhbGx5IHlvdSdsbCB3YW50IHRvIGFkZCB0aGF0IGRvY3VtZW50YXRpb24gZXZlbiBp ZiBpdCdzIGFuCmk5MTUtc3BlY2lmaWMgcHJvcGVydHksIGJ1dCBpdCdzIGVzcGVjaWFsbHkgaW1w b3J0YW50IGZvciBhbnl0aGluZyB3ZQpleHBlY3QgdG8gYmUgcmV1c2FibGUgYnkgb3RoZXIgZHJp dmVycykuCgpJZiB0aGUgYW5zd2VyIGlzIG5vLCBhbmQgeW91IGV4cGVjdCB0aGlzIHRvIGJlIGk5 MTUtc3BlY2lmaWMgZm9yIHRoZQpmb3Jlc2VlYWJsZSBmdXR1cmUsIHRoZW4gc3Rhc2hpbmcgdGhl IHByb3BlcnR5IGluIGRldl9wcml2IG1pZ2h0IGJlIGEKYmV0dGVyIGNob2ljZSB0byBhdm9pZCBn cm93aW5nIHRoZSBkcml2ZXItaW5kZXBlbmRlbnQgc3RydWN0dXJlcy4KCgpNYXR0Cgo+ICAJLyog ZHVtYiBpb2N0bCBwYXJhbWV0ZXJzICovCj4gIAl1aW50MzJfdCBwcmVmZXJyZWRfZGVwdGgsIHBy ZWZlcl9zaGFkb3c7Cj4gIAo+IC0tIAo+IDIuNC4yCj4gCgotLSAKTWF0dCBSb3BlcgpHcmFwaGlj cyBTb2Z0d2FyZSBFbmdpbmVlcgpJb1RHIFBsYXRmb3JtIEVuYWJsaW5nICYgRGV2ZWxvcG1lbnQK SW50ZWwgQ29ycG9yYXRpb24KKDkxNikgMzU2LTI3OTUKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngK