From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Paul Subject: Re: [PATCH v2] drm/i915: Keep AUX block running when disabling DPMS for MST Date: Wed, 04 Apr 2018 16:11:08 -0400 Message-ID: <1522872668.5025.6.camel@redhat.com> References: <20180402212142.19841-1-lyude@redhat.com> <20180402212617.21247-1-lyude@redhat.com> <20180404153429.GE5453@intel.com> <1522867061.12403.6.camel@redhat.com> <20180404185313.GG5453@intel.com> <1522868412.12403.13.camel@redhat.com> <20180404193555.GI5453@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180404193555.GI5453@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Ville =?ISO-8859-1?Q?Syrj=E4l=E4?= Cc: dri-devel@lists.freedesktop.org, David Airlie , intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Dhinakaran Pandiyan , Rodrigo Vivi , stable@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAyMDE4LTA0LTA0IGF0IDIyOjM1ICswMzAwLCBWaWxsZSBTeXJqw6Rsw6Qgd3JvdGU6 Cj4gT24gV2VkLCBBcHIgMDQsIDIwMTggYXQgMDM6MDA6MTJQTSAtMDQwMCwgTHl1ZGUgUGF1bCB3 cm90ZToKPiA+IE9uIFdlZCwgMjAxOC0wNC0wNCBhdCAyMTo1MyArMDMwMCwgVmlsbGUgU3lyasOk bMOkIHdyb3RlOgo+ID4gPiBPbiBXZWQsIEFwciAwNCwgMjAxOCBhdCAwMjozNzo0MVBNIC0wNDAw LCBMeXVkZSBQYXVsIHdyb3RlOgo+ID4gPiA+IE9uIFdlZCwgMjAxOC0wNC0wNCBhdCAxODozNCAr MDMwMCwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+ID4gPiA+ID4gT24gTW9uLCBBcHIgMDIsIDIw MTggYXQgMDU6MjY6MTZQTSAtMDQwMCwgTHl1ZGUgUGF1bCB3cm90ZToKPiA+ID4gPiA+ID4gV2hp bGUgZW5hYmxpbmcvZGlzYWJsaW5nIERQTVMgYmVmb3JlIGxpbmsgdHJhaW5pbmcgd2l0aCBNU1Qg aHVicwo+ID4gPiA+ID4gPiBpcwo+ID4gPiA+ID4gPiBwZXJmZWN0bHkgdmFsaWQ7IHVuZm9ydHVu YXRlbHkgZGlzYWJsaW5nIERQTVMgcmVzdWx0cyBpbiBzb21lCj4gPiA+ID4gPiA+IGRldmljZXMK PiA+ID4gPiA+ID4gZGlzYWJsaW5nIHRoZWlyIEFVWCBDSCBibG9jayBhcyB3ZWxsLiBGb3IgU1NU IHRoaXMgaXNuJ3QgYXMgbXVjaAo+ID4gPiA+ID4gPiBvZiBhCj4gPiA+ID4gPiA+IHByb2JsZW0s IGJ1dCBmb3IgTVNUIHdlIG5lZWQgdG8gYmUgYWJsZSB0byBjb250aW51ZSBoYW5kbGluZyBhdXgK PiA+ID4gPiA+ID4gdHJhbnNhY3Rpb25zIGV2ZW4gd2hlbiBub25lIG9mIHRoZSBzaW5rcyBhcmUg dHVybmVkIG9uIHNpbmNlIGl0J3MKPiA+ID4gPiA+ID4gcG9zc2libGUgZm9yIHVzIHRvIGhhdmUg YSBzaW5nbGUgYXRvbWljIGNvbW1pdCB3aGljaCByZXN1bHRzIGluCj4gPiA+ID4gPiA+IGRpc2Fi bGluZyBlYWNoIGRvd25zdHJlYW0gc2luaywgZm9sbG93ZWQgYnkgc3Vic2VxdWVudGx5IHJlLQo+ ID4gPiA+ID4gPiBlbmFibGluZwo+ID4gPiA+ID4gPiBlYWNoIHNpbmsuCj4gPiA+ID4gPiA+IAo+ ID4gPiA+ID4gPiBJZiB3ZSBkb24ndCBkbyB0aGlzLCB3ZSdsbCBlbmQgdXAgc3RhbGxpbmcgYW55 IHBlbmRpbmcgRVNJCj4gPiA+ID4gPiA+IGludGVycnVwdHMKPiA+ID4gPiA+ID4gZnJvbSB0aGUg c2luayBmb3IgdXAgdG8gMW1zLiBVbmZvcnR1bmF0ZWx5LCBkcm9wcGluZyBFU0lzIGR1cmluZwo+ ID4gPiA+ID4gPiB0aGlzCj4gPiA+ID4gPiA+IHRpbWVzcGFuIG1ha2VzIGl0IHNvIHRoYXQgbGlu ayBmYWxsYmFjayByZXRyYWluaW5nIGZvciBNU1QgKHdoaWNoCj4gPiA+ID4gPiA+IEkKPiA+ID4g PiA+ID4gd2lsbAo+ID4gPiA+ID4gPiBiZSBzdWJtaXR0aW5nIHRvIHRoZSBNTCBzaG9ydGx5KSBm YWlscyBkdWUgdG8gdGhlIGNoYW5uZWwgRVEKPiA+ID4gPiA+ID4gZmFpbHVyZQo+ID4gPiA+ID4g PiBpbnRlcnJ1cHRzIHBvdGVudGlhbGx5IGdldHRpbmcgZHJvcHBlZC4gQWRkaXRpb25hbGx5LCB3 aGVuCj4gPiA+ID4gPiA+IHBlcmZvcm1pbmcKPiA+ID4gPiA+ID4gYQo+ID4gPiA+ID4gPiBtb2Rl c2V0IHRoYXQgYnJpbmdzIHRoZSBodWIgc3RhdHVzJ3MgbGluayBzdGF0dXMgZnJvbSBiYWQgLT4g Z29vZAo+ID4gPiA+ID4gPiBoYXZpbmcKPiA+ID4gPiA+ID4gRVNJcyBkaXNhYmxlZCBmb3IgdGhh dCBsb25nIGNhdXNlcyB1cyB0byBtaXNzIHRoZSBodWIncyByZXNwb25zZQo+ID4gPiA+ID4gPiB0 byB1cwo+ID4gPiA+ID4gPiB0cnlpbmcgdG8gc3RhcnQgbGluayB0cmFpbmluZyBhcyB3ZWxsLgo+ ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gU2luY2UgYW55IHNpbmsgd2l0aCBNU1QgaXMgZ29pbmcg dG8gc3VwcG9ydCBEaXNwbGF5UG9ydCAxLjIKPiA+ID4gPiA+ID4gYW55d2F5LAo+ID4gPiA+ID4g PiBzYXZlCj4gPiA+ID4gPiA+IHVzIHRoZSBoYXNzbGUgb2YgdHJ5aW5nIHRvIHdhaXQgdW50aWwg dGhlIHNpbmsgY29tZXMgYmFjayB1cCBhbmQKPiA+ID4gPiA+ID4ganVzdAo+ID4gPiA+ID4gPiBu ZXZlciBzaHV0IHRoZSBhdXggYmxvY2sgZG93bi4KPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IENo YW5nZXMgc2luY2UgdjI6Cj4gPiA+ID4gPiA+ICAtIEZpeCBwYXRjaCBuYW1lLCBubyBmdW5jdGlv bmFsIGNoYW5nZXMKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEx5dWRl IFBhdWwgPGx5dWRlQHJlZGhhdC5jb20+Cj4gPiA+ID4gPiA+IENjOiBMYXVyYSBBYmJvdHQgPGxh YmJvdHRAcmVkaGF0LmNvbT4KPiA+ID4gPiA+ID4gQ2M6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRo aW5ha2FyYW4ucGFuZGl5YW5AaW50ZWwuY29tPgo+ID4gPiA+ID4gPiBDYzogVmlsbGUgU3lyasOk bMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiA+ID4gPiA+ID4gQ2M6IHN0YWJs ZUB2Z2VyLmtlcm5lbC5vcmcKPiA+ID4gPiA+ID4gRml4ZXM6IGFkMjYwYWIzMmE0ZDkgKCJkcm0v aTkxNS9kcDogV3JpdGUgdG8gU0VUX1BPV0VSIGRwY2QgdG8KPiA+ID4gPiA+ID4gZW5hYmxlCj4g PiA+ID4gPiA+IE1TVAo+ID4gPiA+ID4gPiBodWIuIikKPiA+ID4gPiA+ID4gLS0tCj4gPiA+ID4g PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIHwgNiArKysrLS0KPiA+ID4gPiA+ ID4gIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gPiA+ ID4gPiA+IAo+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHAuYwo+ID4gPiA+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+ ID4gPiA+ID4gaW5kZXggNjJmODJjNDI5OGFjLi4wNDc5YzM3Nzk4MWIgMTAwNjQ0Cj4gPiA+ID4g PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+ID4gPiA+ID4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ID4gPiA+ID4gPiBAQCAtMjU4OSwx MSArMjU4OSwxMyBAQCB2b2lkIGludGVsX2RwX3NpbmtfZHBtcyhzdHJ1Y3QgaW50ZWxfZHAKPiA+ ID4gPiA+ID4gKmludGVsX2RwLAo+ID4gPiA+ID4gPiBpbnQgbW9kZSkKPiA+ID4gPiA+ID4gIAkJ cmV0dXJuOwo+ID4gPiA+ID4gPiAgCj4gPiA+ID4gPiA+ICAJaWYgKG1vZGUgIT0gRFJNX01PREVf RFBNU19PTikgewo+ID4gPiA+ID4gPiArCQl1bnNpZ25lZCBjaGFyIGRhdGEgPSBpbnRlbF9kcC0+ aXNfbXN0ID8KPiA+ID4gPiA+ID4gKwkJCURQX1NFVF9QT1dFUl9EM19BVVhfT04gOiBEUF9TRVRf UE9XRVJfRDM7Cj4gPiA+ID4gPiAKPiA+ID4gPiA+IFRoaXMgc21lbGxzIGxpa2UgYSB3b3JrYXJv dW5kIGZvciBhbiBhY3R1YWwgYnVnIHNvbWV3aGVyZS4gV2h5Cj4gPiA+ID4gPiBleGFjdGx5Cj4g PiA+ID4gPiBpcyB0aGUgc2xvd2VyIHdha2V1cCBvciB0aGUgQVVYIGJsb2NrIGEgcHJvYmxlbSBm b3IgTVNUIGJ1dCBub3QgZm9yCj4gPiA+ID4gPiBTU1QKPiA+ID4gPiA+IHdoZW4gdGhlIGxpbmsg dHJhaW5pbmcgaXMgZXhhY3RseSB0aGUgc2FtZSBmb3IgU1NUIGFuZCBNU1Q/Cj4gPiA+ID4gCj4g PiA+ID4gSSBhY3R1YWxseSB0aG91Z2h0IGFib3V0IHRoaXMgYnV0IEkgc3RpbGwgdGhpbmsgdGhp cyBpcyB0aGUKPiA+ID4gPiBhcHByb3ByaWF0ZQo+ID4gPiA+IGZpeC4KPiA+ID4gPiBTbzsgdGhl IHJlYWwgcmVhc29uIGZvciB0aGUgd2FrZXVwIG5vdCBiZWluZyBhIHByb2JsZW0gd2l0aCBTU1Qg aXMKPiA+ID4gPiB0aGF0Cj4gPiA+ID4gZm9yCj4gPiA+ID4gRFBNUyBvbiB3aXRoIFNTVCwgd2Ug YWN0dWFsbHkgZG8gYSB3YWl0IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBodWIgaXMKPiA+ID4gPiBy ZWFkeQo+ID4gPiA+IGJlZm9yZSBjb250aW51aW5nLiBBbmQgeWVzOiBJJ20gZmFpcmx5IHN1cmUg U1NUIGRvZXMgYWN0dWFsbHkgaGF2ZQo+ID4gPiA+IGFyb3VuZAo+ID4gPiA+IHRoZQo+ID4gPiA+ IHNhbWUgd2FrZXVwIHRpbWUgdGhhdCBNU1QgZG9lcywgYnV0IHdpdGggdGhlIHdhaXQgd2UgZG8g aXQgZG9lc24ndAo+ID4gPiA+IHJlYWxsaHkKPiA+ID4gPiBtYWtlIGEgZGlmZmVyZW5jZS4gV2l0 aCBNU1QsIHdlIGNvdWxkIGRvIHRoaXMgYnV0IHRoZXJlJ3MgYSBmZXcKPiA+ID4gPiByZWFzb25z IEkKPiA+ID4gPiBkb24ndCB0aGluayB3ZSBzaG91bGQ6Cj4gPiA+ID4gICogV2UgZG9uJ3QgbmVl ZCB0by4gRDNfQVVYX09OIGlzIGEgcGFydCBvZiB0aGUgMS4yIHNwZWMsIHNvIGFueSBodWIKPiA+ ID4gPiB0aGF0Cj4gPiA+ID4gaGFzCj4gPiA+ID4gICAgTVNUIGlzIGdvaW5nIHRvIGJlIGd1YXJh bnRlZWQgdG8gaGF2ZSB0aGlzLgo+ID4gPiA+ICAqIFR1cm5pbmcgb2ZmIHRoZSBhdXggYmxvY2sg bWVhbnMgdGhhdCB0aGVyZSdzIGEgaGlnaCBjaGFuY2Ugd2UncmUKPiA+ID4gPiBnb2luZwo+ID4g PiA+IHRvCj4gPiA+ID4gICAgbWlzcyBFU0lzIGZyb20gc2lua3MKPiA+ID4gCj4gPiA+IEFuZCBo b3cgZXhhY3RseSBkbyB3ZSBsb3NlIGlycXM/IFRoZSBodWIvd2hhdGV2ZXIgdGhyb3dzIHRoZSB1 cCByZXEgbXNncwo+ID4gPiBhd2F5IGlmIHdlIGRvbid0IHJlYWQgdGhlbSB3aXRoaW4gc29tZSBy ZWFsbHkgc2hvcnQgdGltZT8KPiA+IAo+ID4gT2gtYWRkaXRpb25hbGx5IEkgZGlkIGZvcmdldCB0 byBtZW50aW9uIHRoYXQgaSBoYXZlIGFjdHVhbGx5IHdpdG5lc3NlZCB0aGUKPiA+IGNoYW5uZWwg ZXEgZmFpbHVyZXMgaW4gdGhlIEVTSSBnZXR0aW5nIGRyb3BwZWQgd2l0aG91dCB0aGlzIHBhdGNo Lgo+IAo+IE5vdCBzdXJlIHdoYXQgdGhhdCBtZWFucy4gSSBkb24ndCB0aGluayB0aGVyZSBpcyBh bnkgc2lkZWJhbmQgbWVzc2FnaW5nCj4gaW52b2x2ZWQgaW4gbGluayB0cmFpbmluZyBzbyBub3Qg c3VyZSB3aGF0IGlzIGRyb3BwZWQgaW4gdGhpcyBjYXNlLiBUaGUKPiBsaW5rIHN0YXR1cy9ldGMu IGFyZSBqdXN0IHBvbGxlZCBkaXJlY3RseSBieSB0aGUgdXBzdHJlYW0gZGV2aWNlLgpubywgbm8g bm9ub25vbm8gdGhleSBhcmUgbm90IGFsd2F5cyB3aXRoIE1TVC4gbWRuYXZhcmUgaXMgcmlnaHQg cmVnYXJkaW5nIHRoZQpjaGFubmVsIEVRIG9jY2FzaW9uYWxseSBiZWluZyB0aGUgb25seSBpbmRp Y2F0b3IgdGhhdCB0aGVyZSdzIHNvbWV0aGluZyB3cm9uZwp3aXRoIHRoZSBsaW5rIHRyYWluaW5n LiBJJ3ZlIHNlZW4gdGhpcyB3aXRoIG15IGNhbGRpZ2l0IHRzMyB3aXRoIHRoZSBtc3QgaHViCmhv b2tlZCB1cCB0byBpdC4gSSdtIG5vdCBlbnRpcmVseSBzdXJlIHdoeSwgYnV0IG15IGd1ZXNzIHdv dWxkIGJlIHRoYXQgdGhlcmUncwphIGRpc3BsYXlwb3J0IHJlcGVhdGVyIHNvbWV3aGVyZSBpbiB0 aGUgVFMzIHRoYXQncyBub3QgYW4gbXN0IGJyYW5jaCBkZXZpY2UuCkknZCB0aGluayBjaGFuY2Vz IGFyZSB0aGF0IGZyb20gdGhlIHNvdXJjZSdzIHBlcnNwZWN0aXZlLCB3ZSBtaWdodCBiZSBkb2lu ZwpsaW5rIHRyYWluaW5nIHdpdGggdGhhdCBpbnN0ZWFkIG9mIHRoZSBhY3R1YWwgaHViLCB3aGlj aCBtZWFucyB0aGF0IGlmIGxpbmsKdHJhaW5pbmcgYmV0d2VlbiB0aGUgaHViIGFuZCBzYWlkIHJl cGVhdGVyIGZhaWxlZCB0aGUgb25seSB3YXkgaXQgd291bGQgYmUKcmVwb3J0ZWQgd291bGQgYmUg dGhyb3VnaCB0aGUgY2hhbm5lbCBlcSBiZWNhdXNlIGl0J3MgZGV0ZWN0ZWQgYnkgdGhlIE1TVCBo dWIuCgpUaGVyZSdzIHNvbWUgb3RoZXIgYmVoYXZpb3IgcmVnYXJkaW5nIHRoaXMgdGhhdCBtYWtl cyBtZSBhIGxpdHRsZSBtb3JlIHN1cmUgb2YKdGhpcy4gSSd2ZSBnb3QgYW4gb2xkIERlbGwgUDI0 MTVRYiBtb25pdG9yIHdpdGggTVNUIG9uIGl0IHRoYXQgYWN0dWFsbHkgZG9lcwptYW5hZ2UgdG8g dHJhaW4gYXQgdGhlIGZ1bGwgNS40IEdCaXQvcyBvbiB0aGUgY2FsZGlnaXQgVFMzIHdpdGhvdXQg bmVlZGluZwpmYWxsYmFjayByZXRyYWluaW5nLiBLZWVwIGluIG1pbmQsIHRoaXMgbW9uaXRvciBp cyBraW5kIG9mIGluZmFtb3VzIGFjcm9zcyBvdXIKb2ZmaWNlIGZvciBoYXZpbmcgYSBsb3Qgb2Yg cHJvYmFibHktYWdhaW5zdC1zcGVjIE1TVCBidWdzIHRoYXQgZG9uJ3QgcmVhbGx5CmhhcHBlbiBv biBvdGhlciBkZXZpY2VzLiBUaGF0IGJlaW5nIHNhaWQsIGl0IHRyYWlucyBhbmQgZG9lc24ndCBl dmVyIHRocm93CmNoYW5uZWwgRVEgZmFpbGVkIG5vdGlmaWNhdGlvbnMuIEJ1dCB1bmxpa2UgdGhl IEVWR0EgTVNUIGh1YiBJIGhhdmUgd2hpY2ggZG9lcwp0aHJvdyB0aGUgRVEgZmFpbGVkIG5vdGlm aWNhdGlvbnMsIHRoZSBzY3JlZW4gZmxpY2tlcnMgc28gb2Z0ZW4gaXQncyByZWFsbHkKZGlmZmlj dWx0IGZvciBtZSB0byBiZWxpZXZlIGl0J3MgYWN0dWFsbHkgbGluayB0cmFpbmVkIHByb3Blcmx5 LiBUaGlzIGlzCm1haW5seSB3aGVyZSBteSB0aGVvcnkgb2YgbGluayBzdGF0dXMgcHJvYmxlbXMg dGhhdCBhcmVuJ3QgYWN0dWFsbHkgdmlzaWJsZSB0bwp0aGUgc291cmNlIGNvbWVzIGluLCBiZWNh dXNlIGlmIHRoYXQncyB0aGUgY2FzZSB0aGVuIHRoZSBtb3N0IGxpa2VseQpleHBsYW5hdGlvbiBp cyB0aGF0IHRoZSBwcm9ibGVtYXRpYyBQMjQxNVFiIG5ldmVyIHNlbmRzIGNoYW5uZWwgRVEgZmFp bHVyZXMKYmVjYXVzZSBpdCdzIGZpcm13YXJlIGp1c3QgaXNuJ3Qgc21hcnQgZW5vdWdoIHRvIG1v bml0b3IgdGhlIHN5bWJvbCBmYWlsdXJlCnJhdGUgYW5kIGRldGVjdCB0aGF0IGxpbmsgcmV0cmFp bmluZyBpcyByZXF1aXJlZC4KPiAKPiA+IE1lYW5pbmcgaWYKPiA+IHdlIG1pc3MgdGhlbSwgdGhl cmUncyBhIGNoYW5jZSB0aGUgaHViIG1heSBqdXN0IG5vdCBjaG9vc2UgdG8gc2VuZCB0aGVtCj4g PiBhZ2Fpbgo+ID4gZm9yIHdoYXRldmVyIHJlYXNvbi4KPiA+ID4gCj4gPiA+ID4gICogSXQncyBm YXN0ZXIgdG8ga2VlcCB0aGUgYXV4IGJsb2NrIG9uIGFueXdheQo+ID4gPiA+IAo+ID4gPiA+IAo+ ID4gPiA+ID4gCj4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4gIAkJaWYgKGRvd25zdHJlYW1faHBk X25lZWRzX2QwKGludGVsX2RwKSkKPiA+ID4gPiA+ID4gIAkJCXJldHVybjsKPiA+ID4gPiA+ID4g IAo+ID4gPiA+ID4gPiAtCQlyZXQgPSBkcm1fZHBfZHBjZF93cml0ZWIoJmludGVsX2RwLT5hdXgs Cj4gPiA+ID4gPiA+IERQX1NFVF9QT1dFUiwKPiA+ID4gPiA+ID4gLQkJCQkJIERQX1NFVF9QT1dF Ul9EMyk7Cj4gPiA+ID4gPiA+ICsJCXJldCA9IGRybV9kcF9kcGNkX3dyaXRlYigmaW50ZWxfZHAt PmF1eCwKPiA+ID4gPiA+ID4gRFBfU0VUX1BPV0VSLAo+ID4gPiA+ID4gPiBkYXRhKTsKPiA+ID4g PiA+ID4gIAl9IGVsc2Ugewo+ID4gPiA+ID4gPiAgCQlzdHJ1Y3QgaW50ZWxfbHNwY29uICpsc3Bj b24gPQo+ID4gPiA+ID4gPiBkcF90b19sc3Bjb24oaW50ZWxfZHApOwo+ID4gPiA+ID4gPiAgCj4g PiA+ID4gPiA+IC0tIAo+ID4gPiA+ID4gPiAyLjE0LjMKPiA+ID4gPiA+IAo+ID4gPiA+ID4gCj4g PiA+ID4gCj4gPiA+ID4gLS0gCj4gPiA+ID4gQ2hlZXJzLAo+ID4gPiA+IAlMeXVkZSBQYXVsCj4g PiA+IAo+ID4gPiAKPiA+IAo+ID4gLS0gCj4gPiBDaGVlcnMsCj4gPiAJTHl1ZGUgUGF1bAo+IAo+ IAotLSAKQ2hlZXJzLAoJTHl1ZGUgUGF1bApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwK