From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2 3/6] drm/i915: Pass crtc_state to ips toggle functions Date: Thu, 9 Nov 2017 20:17:18 +0200 Message-ID: <20171109181718.GZ10981@intel.com> References: <20171109162458.50681-1-maarten.lankhorst@linux.intel.com> <20171109162458.50681-3-maarten.lankhorst@linux.intel.com> <20171109170957.GV10981@intel.com> <20171109175106.GY10981@intel.com> <5dd42608-8c3c-c208-f47d-d5a605e8f432@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 123DC6E963 for ; Thu, 9 Nov 2017 18:17:23 +0000 (UTC) Content-Disposition: inline In-Reply-To: <5dd42608-8c3c-c208-f47d-d5a605e8f432@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBOb3YgMDksIDIwMTcgYXQgMDY6NTY6MzZQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gT3AgMDktMTEtMTcgb20gMTg6NTEgc2NocmVlZiBWaWxsZSBTeXJqw6Rsw6Q6 Cj4gPiBPbiBUaHUsIE5vdiAwOSwgMjAxNyBhdCAwNjozMTowMlBNICswMTAwLCBNYWFydGVuIExh bmtob3JzdCB3cm90ZToKPiA+PiBPcCAwOS0xMS0xNyBvbSAxODowOSBzY2hyZWVmIFZpbGxlIFN5 cmrDpGzDpDoKPiA+Pj4gT24gVGh1LCBOb3YgMDksIDIwMTcgYXQgMDU6MjQ6NTVQTSArMDEwMCwg TWFhcnRlbiBMYW5raG9yc3Qgd3JvdGU6Cj4gPj4+PiBTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExh bmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+ID4+Pj4gLS0tCj4g Pj4+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYyAgIHwgIDQgKystLQo+ID4+ Pj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDI0ICsrKysrKysrKysr KystLS0tLS0tLS0tLQo+ID4+Pj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgICAg ICB8ICA2ICsrKy0tLQo+ID4+Pj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAg ICB8ICA0ICsrLS0KPiA+Pj4+ICA0IGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDE4 IGRlbGV0aW9ucygtKQo+ID4+Pj4KPiA+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9jb2xvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYwo+ ID4+Pj4gaW5kZXggYjgzMTViY2E4NTJiLi5jNjM3M2ZlYmY2MTcgMTAwNjQ0Cj4gPj4+PiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCj4gPj4+PiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9jb2xvci5jCj4gPj4+PiBAQCAtMzcwLDcgKzM3MCw3IEBAIHN0 YXRpYyB2b2lkIGhhc3dlbGxfbG9hZF9sdXRzKHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZSkKPiA+Pj4+ICAJICovCj4gPj4+PiAgCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSAmJiBp bnRlbF9jcnRjX3N0YXRlLT5pcHNfZW5hYmxlZCAmJgo+ID4+Pj4gIAkgICAgKGludGVsX2NydGNf c3RhdGUtPmdhbW1hX21vZGUgPT0gR0FNTUFfTU9ERV9NT0RFX1NQTElUKSkgewo+ID4+Pj4gLQkJ aHN3X2Rpc2FibGVfaXBzKGludGVsX2NydGMpOwo+ID4+Pj4gKwkJaHN3X2Rpc2FibGVfaXBzKGlu dGVsX2NydGMsIGludGVsX2NydGNfc3RhdGUpOwo+ID4+PiBJIHdvdWxkIHN1Z2dlc3Qgc2ltcGxp ZnlpbmcgbW9yZSBhbmQgcGFzc2luZyBvbmx5IHRoZSBzdGF0ZS4KPiA+Pj4gVGhlIGNhbGxlZSBj YW4gYWx3YXlzIGRpZyBvdXQgdGhlIGNydGMgaWYgaXQgbmVlZHMgaXQuCj4gPj4+Cj4gPj4+PiAg CQlyZWVuYWJsZV9pcHMgPSB0cnVlOwo+ID4+Pj4gIAl9Cj4gPj4+PiAgCj4gPj4+PiBAQCAtMzgw LDcgKzM4MCw3IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfbG9hZF9sdXRzKHN0cnVjdCBkcm1fY3J0 Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiA+Pj4+ICAJaTl4eF9sb2FkX2x1dHMoY3J0Y19zdGF0ZSk7 Cj4gPj4+PiAgCj4gPj4+PiAgCWlmIChyZWVuYWJsZV9pcHMpCj4gPj4+PiAtCQloc3dfZW5hYmxl X2lwcyhpbnRlbF9jcnRjKTsKPiA+Pj4+ICsJCWhzd19lbmFibGVfaXBzKGludGVsX2NydGMsIGlu dGVsX2NydGNfc3RhdGUpOwo+ID4+Pj4gIH0KPiA+Pj4+ICAKPiA+Pj4+ICBzdGF0aWMgdm9pZCBi ZHdfbG9hZF9kZWdhbW1hX2x1dChzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlKQo+ID4+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID4+Pj4gaW5kZXggZjU5MzNiMDcxOWM5 Li4xM2IzNzJlNGYwNmUgMTAwNjQ0Cj4gPj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMKPiA+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYwo+ID4+Pj4gQEAgLTQ4MzIsMTIgKzQ4MzIsMTIgQEAgc3RhdGljIHZvaWQgaXJvbmxh a2VfcGZpdF9lbmFibGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCj4gPj4+PiAgCX0KPiA+Pj4+ ICB9Cj4gPj4+PiAgCj4gPj4+PiAtdm9pZCBoc3dfZW5hYmxlX2lwcyhzdHJ1Y3QgaW50ZWxfY3J0 YyAqY3J0YykKPiA+Pj4+ICt2b2lkIGhzd19lbmFibGVfaXBzKHN0cnVjdCBpbnRlbF9jcnRjICpj cnRjLCBjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiA+Pj4+ICB7 Cj4gPj4+PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNlLmRldjsKPiA+Pj4+ ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ID4+ Pj4gIAo+ID4+Pj4gLQlpZiAoIWNydGMtPmNvbmZpZy0+aXBzX2VuYWJsZWQpCj4gPj4+PiArCWlm ICghY3J0Y19zdGF0ZS0+aXBzX2VuYWJsZWQpCj4gPj4+PiAgCQlyZXR1cm47Cj4gPj4+PiAgCj4g Pj4+PiAgCS8qCj4gPj4+PiBAQCAtNDg3MSwxMiArNDg3MSwxMiBAQCB2b2lkIGhzd19lbmFibGVf aXBzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ID4+Pj4gIAl9Cj4gPj4+PiAgfQo+ID4+Pj4g IAo+ID4+Pj4gLXZvaWQgaHN3X2Rpc2FibGVfaXBzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ ID4+Pj4gK3ZvaWQgaHN3X2Rpc2FibGVfaXBzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLCBjb25z dCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiA+Pj4+ICB7Cj4gPj4+PiAg CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNlLmRldjsKPiA+Pj4+ICAJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ID4+Pj4gIAo+ID4+ Pj4gLQlpZiAoIWNydGMtPmNvbmZpZy0+aXBzX2VuYWJsZWQpCj4gPj4+PiArCWlmICghY3J0Y19z dGF0ZS0+aXBzX2VuYWJsZWQpCj4gPj4+PiAgCQlyZXR1cm47Cj4gPj4+PiAgCj4gPj4+PiAgCWFz c2VydF9wbGFuZV9lbmFibGVkKGRldl9wcml2LCBjcnRjLT5wbGFuZSk7Cj4gPj4+IEhtbS4gQ29u ZnVzaWVkLiBPaCByaWdodCwgbXkgcGxhbmUgYXNzZXJ0IGNsZWFudXAgZGlkbid0IG1hbmFnZSB0 byBnbyBpbiB5ZXQgOlAKPiA+Pj4KPiA+Pj4+IEBAIC00OTI0LDcgKzQ5MjQsOCBAQCBzdGF0aWMg dm9pZCBpbnRlbF9jcnRjX2RwbXNfb3ZlcmxheV9kaXNhYmxlKHN0cnVjdCBpbnRlbF9jcnRjICpp bnRlbF9jcnRjKQo+ID4+Pj4gICAqIGNvbXBsZXRlbHkgaGlkZSB0aGUgcHJpbWFyeSBwbGFuZS4K PiA+Pj4+ICAgKi8KPiA+Pj4+ICBzdGF0aWMgdm9pZAo+ID4+Pj4gLWludGVsX3Bvc3RfZW5hYmxl X3ByaW1hcnkoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ID4+Pj4gK2ludGVsX3Bvc3RfZW5hYmxl X3ByaW1hcnkoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4+Pj4gKwkJCSAgY29uc3Qgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKm5ld19jcnRjX3N0YXRlKQo+ID4+Pj4gIHsKPiA+Pj4+ICAJc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKPiA+Pj4+ICAJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ID4+Pj4gQEAgLTQ5MzcsNyArNDkz OCw3IEBAIGludGVsX3Bvc3RfZW5hYmxlX3ByaW1hcnkoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ ID4+Pj4gIAkgKiB3aGVuIGdvaW5nIGZyb20gcHJpbWFyeSBvbmx5IHRvIHNwcml0ZSBvbmx5IGFu ZCB2aWNlCj4gPj4+PiAgCSAqIHZlcnNhLgo+ID4+Pj4gIAkgKi8KPiA+Pj4+IC0JaHN3X2VuYWJs ZV9pcHMoaW50ZWxfY3J0Yyk7Cj4gPj4+PiArCWhzd19lbmFibGVfaXBzKGludGVsX2NydGMsIG5l d19jcnRjX3N0YXRlKTsKPiA+Pj4+ICAKPiA+Pj4+ICAJLyoKPiA+Pj4+ICAJICogR2VuMiByZXBv cnRzIHBpcGUgdW5kZXJydW5zIHdoZW5ldmVyIGFsbCBwbGFuZXMgYXJlIGRpc2FibGVkLgo+ID4+ Pj4gQEAgLTQ5NTYsNyArNDk1Nyw4IEBAIGludGVsX3Bvc3RfZW5hYmxlX3ByaW1hcnkoc3RydWN0 IGRybV9jcnRjICpjcnRjKQo+ID4+Pj4gIAo+ID4+Pj4gIC8qIEZJWE1FIG1vdmUgYWxsIHRoaXMg dG8gcHJlX3BsYW5lX3VwZGF0ZSgpIHdpdGggcHJvcGVyIHN0YXRlIHRyYWNraW5nICovCj4gPj4+ PiAgc3RhdGljIHZvaWQKPiA+Pj4+IC1pbnRlbF9wcmVfZGlzYWJsZV9wcmltYXJ5KHN0cnVjdCBk cm1fY3J0YyAqY3J0YykKPiA+Pj4+ICtpbnRlbF9wcmVfZGlzYWJsZV9wcmltYXJ5KHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKPiA+Pj4+ICsJCQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpvbGRfY3J0Y19zdGF0ZSkKPiA+Pj4+ICB7Cj4gPj4+PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBjcnRjLT5kZXY7Cj4gPj4+PiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoZGV2KTsKPiA+Pj4+IEBAIC00OTc4LDcgKzQ5ODAsNyBAQCBpbnRlbF9wcmVf ZGlzYWJsZV9wcmltYXJ5KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiA+Pj4+ICAJICogd2hlbiBn b2luZyBmcm9tIHByaW1hcnkgb25seSB0byBzcHJpdGUgb25seSBhbmQgdmljZQo+ID4+Pj4gIAkg KiB2ZXJzYS4KPiA+Pj4+ICAJICovCj4gPj4+PiAtCWhzd19kaXNhYmxlX2lwcyhpbnRlbF9jcnRj KTsKPiA+Pj4+ICsJaHN3X2Rpc2FibGVfaXBzKGludGVsX2NydGMsIG9sZF9jcnRjX3N0YXRlKTsK PiA+Pj4+ICB9Cj4gPj4+PiAgCj4gPj4+PiAgLyogRklYTUUgZ2V0IHJpZCBvZiB0aGlzIGFuZCB1 c2UgcHJlX3BsYW5lX3VwZGF0ZSAqLwo+ID4+Pj4gQEAgLTQ5OTAsNyArNDk5Miw3IEBAIGludGVs X3ByZV9kaXNhYmxlX3ByaW1hcnlfbm9hdG9taWMoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ID4+ Pj4gIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7 Cj4gPj4+PiAgCWludCBwaXBlID0gaW50ZWxfY3J0Yy0+cGlwZTsKPiA+Pj4+ICAKPiA+Pj4+IC0J aW50ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeShjcnRjKTsKPiA+Pj4+ICsJaW50ZWxfcHJlX2Rpc2Fi bGVfcHJpbWFyeShjcnRjLCB0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKSk7Cj4gPj4+ PiAgCj4gPj4+PiAgCS8qCj4gPj4+PiAgCSAqIFZibGFuayB0aW1lIHVwZGF0ZXMgZnJvbSB0aGUg c2hhZG93IHRvIGxpdmUgcGxhbmUgY29udHJvbCByZWdpc3Rlcgo+ID4+Pj4gQEAgLTUwMzQsNyAr NTAzNiw3IEBAIHN0YXRpYyB2b2lkIGludGVsX3Bvc3RfcGxhbmVfdXBkYXRlKHN0cnVjdCBpbnRl bF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSkKPiA+Pj4+ICAJCWlmIChwcmltYXJ5X3N0YXRl LT5iYXNlLnZpc2libGUgJiYKPiA+Pj4+ICAJCSAgICAobmVlZHNfbW9kZXNldCgmcGlwZV9jb25m aWctPmJhc2UpIHx8Cj4gPj4+PiAgCQkgICAgICFvbGRfcHJpbWFyeV9zdGF0ZS0+YmFzZS52aXNp YmxlKSkKPiA+Pj4+IC0JCQlpbnRlbF9wb3N0X2VuYWJsZV9wcmltYXJ5KCZjcnRjLT5iYXNlKTsK PiA+Pj4+ICsJCQlpbnRlbF9wb3N0X2VuYWJsZV9wcmltYXJ5KCZjcnRjLT5iYXNlLCBwaXBlX2Nv bmZpZyk7Cj4gPj4+PiAgCX0KPiA+Pj4+ICB9Cj4gPj4+PiAgCj4gPj4+PiBAQCAtNTA2Myw3ICs1 MDY1LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUsCj4gPj4+PiAgCj4gPj4+PiAgCQlpZiAob2xkX3By aW1hcnlfc3RhdGUtPmJhc2UudmlzaWJsZSAmJgo+ID4+Pj4gIAkJICAgIChtb2Rlc2V0IHx8ICFw cmltYXJ5X3N0YXRlLT5iYXNlLnZpc2libGUpKQo+ID4+Pj4gLQkJCWludGVsX3ByZV9kaXNhYmxl X3ByaW1hcnkoJmNydGMtPmJhc2UpOwo+ID4+Pj4gKwkJCWludGVsX3ByZV9kaXNhYmxlX3ByaW1h cnkoJmNydGMtPmJhc2UsIG9sZF9jcnRjX3N0YXRlKTsKPiA+Pj4+ICAJfQo+ID4+Pj4gIAo+ID4+ Pj4gIAkvKgo+ID4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gPj4+PiBpbmRleCBjZGRkOTZi MjQ4NzguLjgyYzMzZDljZDQ2NiAxMDA2NDQKPiA+Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RwLmMKPiA+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw LmMKPiA+Pj4+IEBAIC0zOTQ3LDcgKzM5NDcsNyBAQCBzdGF0aWMgaW50IGludGVsX2RwX3Npbmtf Y3JjX3N0b3Aoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiA+Pj4+ICAJfQo+ID4+Pj4gIAo+ ID4+Pj4gICBvdXQ6Cj4gPj4+PiAtCWhzd19lbmFibGVfaXBzKGludGVsX2NydGMpOwo+ID4+Pj4g Kwloc3dfZW5hYmxlX2lwcyhpbnRlbF9jcnRjLCB0b19pbnRlbF9jcnRjX3N0YXRlKGludGVsX2Ny dGMtPmJhc2Uuc3RhdGUpKTsKPiA+Pj4gY3J0Yy0+Y29uZmlnIHdvdWxkIHNlZW0gbGlrZSB0aGUg c2xpZ2h0bHkgbW9yZSBjb3JyZWN0IHRoaW5nIHRvIHBhc3MKPiA+Pj4gaGVyZS4gSXQncyBhbHNv IGVhc2llciB0byBncmVwIGZvciB3aGVuIHNvbWVvbmUgc2V0cyBvdXQgdG8gZml4IHRoaXMKPiA+ Pj4gbWVzcyBwcm9wZXJseS4KPiA+PiBDb25zaWRlcmVkIGl0LCBidXQgb3VyIGNydGMtPmNvbmZp ZyB1c2FnZSBpcyBhIG1lc3MuIEknZCByYXRoZXIgZ2V0IHJpZCBvZiB0aGUgaW50ZWxfZHBfc2lu a19jcmMgY29kZSB0YmguIDovCj4gPiBJJ2QgcmF0aGVyIG5vdCBzcHJlYWQgbW9yZSAtPnN0YXRl IHVzZXMgd2hlbiBJIGp1c3QgcmVjZW50bHkKPiA+IG1hbmFnZWQgdG8gY2xlYW4gb3V0IG1hbnkg b2YgdGhlbS4gV2Ugc3RpbGwgaGF2ZSBzb21lIGxlZnQgZm9yCj4gPiBzdXJlLCBidXQgYWRkaW5n IG1vcmUgc2VlbXMgbGlrZSBnb2luZyBiYWNrd2FyZHMuCj4gPgo+IE1heWJlIGV4cG9ydCBoc3df cGlwZV9BX2NyY193YSA/CgpZZWFoLCBJIHN1cHBvc2UgdGhhdCB3b3VsZCB0aGUgcHJvcGVyIGZp eC4gSSBkaWRuJ3QgYWN0dWFsbHkgYm90aGVyCnRoaW5raW5nIGFib3V0IGl0IHRoYXQgZmFyIHdo ZW4gSSB3YXMgbGFzdCBsb29raW5nIGF0IHRoaXMuIEkgZ3Vlc3MgdGhlCm9ubHkgZG93bnNpZGUg aXMgdGhhdCB3ZSdkIGFsc28gZ2V0IHRoZSBwYW5lbCBmaXR0ZXIgdGhpbmcgd2hpY2ggd2UKZG9u J3QgcmVhbGx5IG5lZWQgaGVyZS4gQnV0IG5vdCBzdXJlIGFueW9uZSB3b3VsZCBhY3R1YWxseSBu b3RpY2UuCgpMb29rcyBsaWtlIHRoZSBsb2NraW5nIHdvdWxkIGhhdmUgdG8gYmUgcmV3b3JrZWQg dGhvdWdoLgppOTE1X3NpbmtfY3JjKCkgc3RpbGwgdXNlcyBkcm1fbW9kZXNldF9sb2NrX2FsbCgp LgoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==